From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id AF368A055D; Mon, 1 Mar 2021 06:55:14 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2595B40684; Mon, 1 Mar 2021 06:55:14 +0100 (CET) Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40081.outbound.protection.outlook.com [40.107.4.81]) by mails.dpdk.org (Postfix) with ESMTP id 0E8C64014E for ; Mon, 1 Mar 2021 06:55:13 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U++1GxvNNgu0blC6hGaotwBkhjqFbA+x1UhkXV4svIw=; b=FR/+0jH4efSAuTRbi1+xLoHGu3orhjyqxWlWZsHmtgXTKyPfkaX8oykm0aDcQVKFtLp6ocM3zUOFPVAisUTKLnyJSANta+e6xXOr+AYZq9c6v2CIjCa9AqoqT6UypF2kSTKOhbZmhn+rHKmfUzT/urFUScy66errcrXMeP3fHbo= Received: from AM6PR05CA0018.eurprd05.prod.outlook.com (2603:10a6:20b:2e::31) by DBBPR08MB4521.eurprd08.prod.outlook.com (2603:10a6:10:cd::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3890.26; Mon, 1 Mar 2021 05:55:11 +0000 Received: from AM5EUR03FT029.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:2e:cafe::8d) by AM6PR05CA0018.outlook.office365.com (2603:10a6:20b:2e::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3890.19 via Frontend Transport; Mon, 1 Mar 2021 05:55:11 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT029.mail.protection.outlook.com (10.152.16.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3890.19 via Frontend Transport; Mon, 1 Mar 2021 05:55:11 +0000 Received: ("Tessian outbound 38eaf6505aed:v71"); Mon, 01 Mar 2021 05:55:10 +0000 X-CR-MTA-TID: 64aa7808 Received: from 638b22f6c957.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 0407EB5A-80E6-42A7-A921-8476193F618C.1; Mon, 01 Mar 2021 05:55:05 +0000 Received: from EUR02-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 638b22f6c957.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 01 Mar 2021 05:55:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iL+qCWYNhEo7BIVsbxnqNO9AXy61v32t902oE7vNSxHe8Fz7STfG4Ml/BuxXdrqBCNwQQY9zocJInWUGcUTMp+dyt7qguQ7LKlGZuC2efaU7PFvbm2SBYiyDrHQ7+G/Hor1Tvnu9df9OVw8mkgWRei0ZqSYJe21+o2oCCpnhHNMsZQ28aUBsPWOtYEpvHhke9szIuLElgEutGYSvcUpP3VV7XZgQ7tbN6S0p51KDmM6wjAlzz3f372JvdzRKjUzg5aDPK+xiG20bNt/nERM7mKP69bGq6z1pkasGU0yF/UqPRw7ewTrQVn80FeqXX2aNEvGzC43IMQFsSiolVSec8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U++1GxvNNgu0blC6hGaotwBkhjqFbA+x1UhkXV4svIw=; b=SZ9Yuzl7UB5LMEhzwpznc1MaXB61I6XTKT05813jAbVAEsY3ww+B3ykXZgrUzvA/G2QKtPuwdzDvt/JWezTVCAy1prweKOvbQbGWWAQkSVkhOskj/iDzDg6NjIdtA9KvzUQkse0js3XFpj4bRo71dLdau8VbfKjHxYeQXUXXKsJgZUgi6ctwfMAkUQb+A28aG6uYUeokHLbeMBLT1cJVrkgkjSZSOsQjEYs4cOUF0NAZDMXMv1uaPhzPEANngOL+WCA1VYkbx++wpy0obP0sbd6MzgahkT+u++1k+vQOpsAoQ/Ave6VdxxPDim2RfzBetSm0LoiLM7Xo36lV9Duo7g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U++1GxvNNgu0blC6hGaotwBkhjqFbA+x1UhkXV4svIw=; b=FR/+0jH4efSAuTRbi1+xLoHGu3orhjyqxWlWZsHmtgXTKyPfkaX8oykm0aDcQVKFtLp6ocM3zUOFPVAisUTKLnyJSANta+e6xXOr+AYZq9c6v2CIjCa9AqoqT6UypF2kSTKOhbZmhn+rHKmfUzT/urFUScy66errcrXMeP3fHbo= Received: from DBBPR08MB4411.eurprd08.prod.outlook.com (2603:10a6:10:cb::17) by DBAPR08MB5735.eurprd08.prod.outlook.com (2603:10a6:10:1a1::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3890.20; Mon, 1 Mar 2021 05:55:02 +0000 Received: from DBBPR08MB4411.eurprd08.prod.outlook.com ([fe80::19c2:8f5f:aabb:16fc]) by DBBPR08MB4411.eurprd08.prod.outlook.com ([fe80::19c2:8f5f:aabb:16fc%7]) with mapi id 15.20.3890.028; Mon, 1 Mar 2021 05:55:02 +0000 From: Feifei Wang To: Honnappa Nagarahalli , "hemant.agrawal@nxp.com" , "Nipun.gupta@nxp.com" , "jerinj@marvell.com" , "harry.van.haaren@intel.com" , "bruce.richardson@intel.com" , "dmitry.kozliuk@gmail.com" , "navasile@linux.microsoft.com" , "dmitrym@microsoft.com" , "pallavi.kadam@intel.com" , "thomas@monjalon.net" , "david.marchand@redhat.com" , "konstantin.ananyev@intel.com" CC: "dev@dpdk.org" , Ruifeng Wang , nd , nd Thread-Topic: [RFC 3/5] eal: lcore state FINISHED is not required Thread-Index: AQHXCvL6fsXhExvHBE+iVSlZJam1PKpofqqwgAAAyECAAGZ6YIAFj6Pg Date: Mon, 1 Mar 2021 05:55:02 +0000 Message-ID: References: <20210224212018.17576-1-honnappa.nagarahalli@arm.com> <20210224212018.17576-4-honnappa.nagarahalli@arm.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 6E14AE799FD50D4C98091D9C185E86FB.0 x-checkrecipientchecked: true Authentication-Results-Original: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [203.126.0.112] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: bce00744-6a00-41c7-5707-08d8dc769380 x-ms-traffictypediagnostic: DBAPR08MB5735:|DBBPR08MB4521: x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 7+5LLRYBRwq/EnuPkTrNHGt6NhDAKpL0PsbeqpJ5zfL+EORSTNlN+A7KGsUvgLjkCQQviu2ond/BwkDZudydu+Q5Zz2Byq2fal2d+F9iNDn0L0eepP0BN2whP8s2jAHET0kIgHPFlt3bd0qfuj+nfuISAcoBO7ua8mQGmvvhpLefzSzQYgJBCmYWj03Tsor/LE5un/T5D2AbqM81OPCY57ezeglY0iEhicP6RWHZ1aUGNUNzGpxl9lKYGxokrdD1m/9M2u9Q/kPJn6hvC0IAmVvQyNzAv91wo6ZoAYVq845jxjjTeLIDRKAYqValutqyKK7JX5Phi6R0ABV6bJ1ynGNMnOCtF9a2chuDc6K8+gowbLU8S7P0DGQEeB59J+CDVOlHEsx2GcglgoXO5OtutfC0dbksbRfEwXn/WpZXr/hd2VkmioLAyqTUIzhzz9RbUTPlhMmaXbaWbxuiXhkK60W1NWJLabnex1GZQ+RW5mU16ikhr6lgj8b95xTHkxKg6tJwwljj2CYBH5Ib7TfzAzuG0op63UCQHHvA6NSJOnysQbBVNegrS6MB9IG2cmNC X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBBPR08MB4411.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(376002)(396003)(39860400002)(366004)(136003)(346002)(71200400001)(921005)(83380400001)(224303003)(2906002)(186003)(6506007)(7696005)(30864003)(76116006)(316002)(9686003)(5660300002)(26005)(45080400002)(66946007)(54906003)(110136005)(66446008)(64756008)(33656002)(7416002)(66556008)(55016002)(478600001)(4326008)(66476007)(86362001)(52536014)(8936002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?NVhQbFBkUFBnMm5CQ1R1eDBPR1pYREgzN0p2OXhhLzQ5c25WOXpWNXg0R2s0?= =?utf-8?B?QjZKRXVVRzJoSFNmKytpR3NmdUlxRFlyNm1uYWFtT2xjTDBBU3U0Z0pFQmFa?= =?utf-8?B?TlQ1dUFBQ2oxYTMyV3dONGVPd1JqdC8wb1YyLys0dE5jcVh1Y0xkbnYybEU0?= =?utf-8?B?OUM5WjhDRC9wS2drZWhhOFI4THUwTTFXN003cTQ5UFB6aThDRk5IYjNMUU5Z?= =?utf-8?B?dFoyVU5NU0VIWmx4ZWtaNWYyRmFHa0xwTDBtQVI1R2R6MU1aS3JHNVMwREtP?= =?utf-8?B?QWx2UU85Sjh5aENlbDZPb3Z1ZGZyTGFxU1ZWcDRrWEFKRXpZdGFFRlNJVHZo?= =?utf-8?B?ZmFJaHp3M1R5QklJVENZTmRHdXJtN1M5VnA3TFdONlhBc2tBMkE3Ulczdy9s?= =?utf-8?B?ZytVU2ZTVVNiZE1wREwxaVQzVU1JMTdJMUpNWEhscjFTT3ZWb28wMUxGOHlZ?= =?utf-8?B?ZTFnZHcwdUs0RHFidHJLVkpIU25KWS91RkVlcWtIMGY0S3ErKzFWN1lzYkk0?= =?utf-8?B?UE42K2lydXFrS0g4V1JydVd2TnB3a2xSbGMzWTV6alJnQWlIM2xtYlg2WXVU?= =?utf-8?B?M21YcXYvNngrV3BsRGNHdFZRTHBUZlhzQVlSTUJneXM0QjRKei9rd0diUGRz?= =?utf-8?B?VllhczU2OTNySUE3amJxK2NYOUMxOGo1WTU0ZHpuZWlsMUxRUlo5QUJyYkZr?= =?utf-8?B?SEJCWGI2Zk03OElNdys3R2NiZWRRWVZ6dTFzTTFhN20rNWtLd092VE1kMUNu?= =?utf-8?B?Y3U4ZU5UZGhnb2o3eGx2YmxEcHZxNGJBbUsrcHdJZzNRWExHaEIrazJFcDk0?= =?utf-8?B?djNJbnM1clloU0p2TXpnaWFOUkdPcStmNW5ma3lPbXp3V25qVVJLUnFUclhM?= =?utf-8?B?M1hVc1orcnF6RWZpSU0vc1Y4bnVtbFh0c3dEMitYR1FRT2xPdFQ4YjBldHQv?= =?utf-8?B?SXNVUVFHQ2R0ZXFHQXBUOVlMVlJMd3RLTUthU1VwR0dZUFBzNGZBN0FrMHNZ?= =?utf-8?B?WFU0YTlkYWdOTXF5NnByclNNbjVUblJlNTVrQ0YxRjhJK0NRdERpV2MrTU9x?= =?utf-8?B?ejMwUHI4TVZjTTFEdXRycHp3cWdwV0hMbmI1di9xcDhCejY4c1pCbWRBSXdx?= =?utf-8?B?a1VKSXdhSWZuNTF2NjRqOGhBZzVBTFpvRHhLaVpuaTBDQjJyTk40TDkvVzV0?= =?utf-8?B?U1Q1cXYzUlhydFhzZmQ2eUJUV3JQdTVCTER3NGlXc2UzVk12K0dQQ0V3QXEy?= =?utf-8?B?c1p2SVZOVXJ5eld1WUFPUTFRNHp2bHpaeWEvYUovaVpCaDNMZjNmM0xCNmdr?= =?utf-8?B?Zllxd1RjNzRQUDNIanBSVWcxNHpBYkRTaWdZMEZ1TlZuS2tyNlVkMUNhWVFY?= =?utf-8?B?Qkt5Z3hYaWJFV2REb2pzUUsvajhwSFJPTmVsV0pmL1QycHgyblU5STJIazRq?= =?utf-8?B?RmVibFJUbmVaQStRWWdTVlVMN0oxa2lKVDJNNkdDRjN5cTNIUWNqRFk4Q0p2?= =?utf-8?B?SnBwUEhEbGZPWlIyUVg0bE5LRUFaV0toZXhxc2QyVnJoY1pCM3VhYncxS3pv?= =?utf-8?B?UmRmQkxya0M3ZXhmMlpUVWdsa1h6ZC9IelJOaDhyeFZRMW9HSEtibVFNbnUw?= =?utf-8?B?RWtBR05IT1hhK2RKV2UvaXFjdW5QZDQzNi9DZlhreHhyeG5NSDRUU0tBSGZB?= =?utf-8?B?UmpmNHp3aEt5a00yeHJrR250MitGRWxMN3VOWEFRWk5RQXZ2SEkwNWFMaHRU?= =?utf-8?Q?lujcPQjrAR0jYkAgP5jnnD1YdN80SCyiJbnIZfk?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5735 Original-Authentication-Results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT029.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: c5399421-4d2d-445a-343a-08d8dc768e25 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Y9uYnLHP14I14DLn2OjzRx4fEicBq4gK93LWPCJWJu8zuTn4Jfru19mAJph2nGu2ubb7fjPdqlkupO/wouRSzREp4EX/n5gCFt1a1NQI45ubFars/lfSSYc9/CKxtzQZWag4Guz/Ar9NRKR5LvYtwB5O3/rJYVBIa6V47VgiqKotf/2ELBQbiPvKqGmyPHtAGSD+dBP3nG4XXku4zebWI3k39OQsttWZQaEyNU4N+qJUYYcVtdw+MfWVxeJ7bIhKY+aq6iSMLk+bSmY7tzs4cqO+jLX7VdOy7EfK3srpLo5g/gZ6jvRbxf5dmePGRYq8oSeJLjqV/vYCMfwouKA9u9PrrbQ5ZSDB+BflNSsCMqTlepVMgGvpS/VVFFw9nXXdt9KGcam74n/hIhB/rqVa36P/88dEbL0MytywXefRzvYQLvN1Szbi2sDUf9bpPMwvFOm6VFMnE+q5vpzaHF1DoZT84iJepgyLrnlb8/RnXnE3oJDd4bw015cp5dczBBhk9RpxES6Xx/8tsSlZzf01JR6Ay8VTj+lG5Zr6Q+atmuWesTuIp0/Hde1m8B7xAsG9HTaPk84cSFzyxdNM5tAva3T5mpqmwoEV53tLnicf75D5XgtytzB6gGDYPR1DFElW3tWtjZoUfrqcPCbtlYcTTw5yxiAs9zAd5Th02Vr8Xho= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(4636009)(396003)(376002)(136003)(39860400002)(346002)(36840700001)(46966006)(26005)(186003)(5660300002)(30864003)(86362001)(52536014)(36860700001)(70586007)(70206006)(4326008)(9686003)(2906002)(55016002)(54906003)(47076005)(110136005)(316002)(45080400002)(8936002)(478600001)(356005)(336012)(83380400001)(82310400003)(81166007)(82740400003)(33656002)(6506007)(224303003)(7696005)(921005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Mar 2021 05:55:11.1328 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bce00744-6a00-41c7-5707-08d8dc769380 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM5EUR03FT029.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4521 Subject: [dpdk-dev] =?utf-8?b?5Zue5aSNOiBbUkZDIDMvNV0gZWFsOiBsY29yZSBz?= =?utf-8?q?tate_FINISHED_is_not_required?= X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" PiAtLS0tLemCruS7tuWOn+S7ti0tLS0tDQo+IOWPkeS7tuS6ujogSG9ubmFwcGEgTmFnYXJhaGFs bGkgPEhvbm5hcHBhLk5hZ2FyYWhhbGxpQGFybS5jb20+DQo+IOWPkemAgeaXtumXtDogMjAyMeW5 tDLmnIgyNuaXpSA3OjMzDQo+IOaUtuS7tuS6ujogRmVpZmVpIFdhbmcgPEZlaWZlaS5XYW5nMkBh cm0uY29tPjsgaGVtYW50LmFncmF3YWxAbnhwLmNvbTsNCj4gTmlwdW4uZ3VwdGFAbnhwLmNvbTsg amVyaW5qQG1hcnZlbGwuY29tOyBoYXJyeS52YW4uaGFhcmVuQGludGVsLmNvbTsNCj4gYnJ1Y2Uu cmljaGFyZHNvbkBpbnRlbC5jb207IGRtaXRyeS5rb3psaXVrQGdtYWlsLmNvbTsNCj4gbmF2YXNp bGVAbGludXgubWljcm9zb2Z0LmNvbTsgZG1pdHJ5bUBtaWNyb3NvZnQuY29tOw0KPiBwYWxsYXZp LmthZGFtQGludGVsLmNvbTsgdGhvbWFzQG1vbmphbG9uLm5ldDsNCj4gZGF2aWQubWFyY2hhbmRA cmVkaGF0LmNvbTsga29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbQ0KPiDmioTpgIE6IGRldkBk cGRrLm9yZzsgUnVpZmVuZyBXYW5nIDxSdWlmZW5nLldhbmdAYXJtLmNvbT47IG5kDQo+IDxuZEBh cm0uY29tPjsgbmQgPG5kQGFybS5jb20+DQo+IOS4u+mimDogUkU6IFtSRkMgMy81XSBlYWw6IGxj b3JlIHN0YXRlIEZJTklTSEVEIGlzIG5vdCByZXF1aXJlZA0KPiANCj4gK1Rob21hcywgRGF2aWQs IEtvbnN0YW50aW4gZm9yIGlucHV0DQo+IA0KPiA8c25pcD4NCj4gDQo+ID4gPiBTdWJqZWN0OiBb UkZDIDMvNV0gZWFsOiBsY29yZSBzdGF0ZSBGSU5JU0hFRCBpcyBub3QgcmVxdWlyZWQNCj4gPiA+ DQo+ID4gPiBGSU5JU0hFRCBzdGF0ZSBzZWVtcyB0byBiZSB1c2VkIHRvIGluZGljYXRlIHRoYXQg dGhlIHdvcmtlcidzIHVwZGF0ZQ0KPiA+ID4gb2YgdGhlICdzdGF0ZScgaXMgbm90IHZpc2libGUg dG8gb3RoZXIgdGhyZWFkcy4gVGhlcmUgc2VlbXMgdG8gYmUgbm8NCj4gPiA+IHJlcXVpcmVtZW50 IHRvIGhhdmUgc3VjaCBhIHN0YXRlLg0KPiA+DQo+ID4gSSBhbSBub3Qgc3VyZSAiRklOSVNIRUQi IGlzIG5lY2Vzc2FyeSB0byBiZSByZW1vdmVkLCBhbmQgSSBwcm9wb3NlDQo+ID4gc29tZSBvZiBt eSBwcm9maWxlcyBmb3IgZGlzY3Vzc2lvbi4NCj4gPiAgVGhlcmUgYXJlIHRocmVlIHN0YXRlcyBm b3IgbGNvcmUgbm93Og0KPiA+ICJXQUlUIjogaW5kaWNhdGUgbGNvcmUgY2FuIHN0YXJ0IHdvcmtp bmcNCj4gPiAiUlVOTklORyI6IGluZGljYXRlIGxjb3JlIGlzIHdvcmtpbmcNCj4gPiAiRklOSVNI RUQiOiBpbmRpY2F0ZSBsY29yZSBoYXMgZmluaXNoZWQgaXRzIHdvcmtpbmcgYW5kIHdhaXQgdG8g YmUNCj4gPiByZXNldA0KPiBJZiB5b3UgbG9vayBhdCB0aGUgZGVmaW5pdGlvbnMgb2YgIldBSVQi IGFuZCAiRklOSVNIRUQiIHN0YXRlcywgdGhleSBsb29rDQo+IHNpbWlsYXIsIGV4Y2VwdCBmb3Ig IndhaXQgdG8gYmUgcmVzZXQiIGluICJGSU5JU0hFRCIgc3RhdGUgLiBUaGUgY29kZSByZWFsbHkN Cj4gZG9lcyBub3QgZG8gYW55dGhpbmcgdG8gcmVzZXQgdGhlIGxjb3JlLiBJdCBqdXN0IGNoYW5n ZXMgdGhlIHN0YXRlIHRvICJXQUlUIi4NCj4gDQo+ID4NCj4gPiBGcm9tIHRoZSBkZXNjcmlwdGlv biBhYm92ZSwgd2UgY2FuIGZpbmQgIkZJTklTSEVEIiBpcyBkaWZmZXJlbnQgZnJvbQ0KPiA+ICJX QUlUIiwgaXQgY2FuIHNob3dzIHRoYXQgbGNvcmUgaGFzIGRvbmUgdGhlIHdvcmsgYW5kIGZpbmlz aGVkIGl0Lg0KPiA+IFRodXMsIGlmIHdlIHJlbW92ZSAiRklOSVNIRUQiLCBtYXliZSB3ZSB3aWxs IG5vdCBrbm93IHdoZXRoZXIgdGhlDQo+ID4gbGNvcmUgZmluaXNoZXMgaXRzIHdvcmsgb3IganVz dCBkb2Vzbid0IHN0YXJ0LCBiZWNhdXNlIHRoaXMgdHdvIHN0YXRlIGhhcyB0aGUNCj4gc2FtZSB0 YWcgIldBSVQiLg0KPiBMb29raW5nIGF0ICJlYWxfdGhyZWFkX2xvb3AiLCB0aGUgd29ya2VyIHRo cmVhZCBzZXRzIHRoZSBzdGF0ZSB0bw0KPiAiUlVOTklORyIgYmVmb3JlIHNlbmRpbmcgdGhlIGFj ayBiYWNrIHRvIG1haW4gY29yZS4gQWZ0ZXIgdGhhdCBpdCBpcw0KPiBndWFyYW50ZWVkIHRoYXQg dGhlIHdvcmtlciB3aWxsIHJ1biB0aGUgYXNzaWduZWQgZnVuY3Rpb24uIE9ubHkgY2FzZSB3aGVy ZSBpdA0KPiB3aWxsIG5vdCBydW4gdGhlIGFzc2lnbmVkIGZ1bmN0aW9uIGlzIHdoZW4gdGhlICd3 cml0ZScgc3lzY2FsbCBmYWlscywgaW4gd2hpY2gNCj4gY2FzZSBpdCByZXN1bHRzIGluIGEgcGFu aWMuDQo+IA0KDQpJIGFncmVlIHRoYXQgdGhlIHdvcmtlciBjYW4gYmUgZ3VhcmFudGVlZCB0byBy dW4gdGhlIGFzc2lnbmVkIGZ1bmN0aW9uLiANCkJ1dCBJIG1lYW5zIHRoYXQgd2UgY2Fubm90IGtu b3cgd2hlbiB0aGUgd29ya2VyIHN0YXJ0IG9yIHdoZW4gdGhlIHdvcmtlcg0KZmluaXNoZXMgaXRz IHdvcmtpbmcgaWYgIkZpbmlzaGVkIiBpcyByZW1vdmVkLiBQbGVhc2UgcmVmZXIgdG8gdGhlIGZv bGxvd2luZw0KRXhhbXBsZSBmb3IgZnVydGhlciBleHBsYW5hdGlvbi4NCg0KPiA+DQo+ID4gRnVy dGhlcm1vcmUsIGNvbnNpZGVyIHN1Y2ggYSBzY2VuYXJpbzoNCj4gPiBDb3JlIDEgbmVlZCB0byBt b25pdG9yIENvcmUgMiBzdGF0ZSwgaWYgQ29yZSAyIGZpbmlzaGVzIG9uZSB0YXNrLCBDb3JlDQo+ ID4gMSBjYW4gc3RhcnQgaXRzIHdvcmtpbmcuDQo+ID4gSG93ZXZlciwgaWYgdGhlcmUgaXMgb25s eSAgb25lIHRhZyAiV0FJVCIsIENvcmUgMSBtYXliZSAgc3RhcnQgaXRzDQo+ID4gd29yayBhdCB0 aGUgd3JvbmcgdGltZSwgd2hlbiBDb3JlIDIgc3RpbGwgZG9lcyBub3Qgc3RhcnQgaXRzIHRhc2sg YXQgc3RhdGUNCj4gIldBSVQiLg0KPiA+IFRoaXMgaXMganVzdCBteSBndWVzcywgYW5kIGF0IHBy ZXNlbnQsIHRoZXJlIGlzIG5vIHNpbWlsYXIgYXBwbGljYXRpb24NCj4gPiBzY2VuYXJpbyBpbiBk cGRrLg0KPiBUbyBiZSBhYmxlIHRvIGRvIHRoaXMgZWZmZWN0aXZlbHksIGNvcmUgMSBuZWVkcyB0 byBvYnNlcnZlIHRoZSBzdGF0ZSBjaGFuZ2UNCj4gZnJvbSBXQUlULT5SVU5OSU5HLT5GSU5JU0hF RC4gVGhpcyByZXF1aXJlcyB0aGF0IGNvcmUgMSBzaG91bGQgYmUgY2FsbGluZw0KPiBydGVfZWFs X3JlbW90ZV9sYXVuY2ggYW5kIHJ0ZV9lYWxfd2FpdF9sY29yZSBmdW5jdGlvbnMuIEl0IGlzIG5v dCBwb3NzaWJsZQ0KPiB0byBvYnNlcnZlIHRoaXMgc3RhdGUgdHJhbnNpdGlvbiBmcm9tIGEgM3Jk IGNvcmUgKGZvciBleDogYSB3b3JrZXIgbWlnaHQgZ28NCj4gZnJvbSBSVU5OSU5HLT5GSU5JU0hF RC0+V0FJVC0+UlVOTklORyB3aGljaCBhIDNyZCBjb3JlIG1pZ2h0IG5vdCBiZQ0KPiBhYmxlIHRv IG9ic2VydmUpLg0KDQpUaW1lIFNsb3QgICAgICAgICAgICAgICBDb3JlIDEgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvcmUgMiAgICAgICAgICAgICAgICAg ICAgICAgQ29yZSAz77yIbWFpbiBjb3Jl77yJDQogICAgICAxICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYWxf dGhyZWFkX2xvb3AgICAgIHJ0ZV9lYWxfcmVtb3RlX2xhdW5jaA0KICAgICAgMiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgV0FJVA0KICAgICAgMyAgICAgICBpZihydGVfZ2V0X2xjb3JlX3N0YXRl ID09RklOSVNIRUQpICAgICAgICAgIFJVTk5JTkcNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4NCiAgICAgIDQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0ZSBmDQog ICAgICA1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgRklOSVNIREVEIA0KICAgICAgNiAgICAgICAgICAg ICAgICAgICBkbyBzb21lIG9wZXJhdGlvbnMNCiAgICAgIDcgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRlX2VhbF93YWl0X2xjb3JlDQoNCkkg bWVhbnMgdGhhdCBDb3JlIDEgaXMgYW4gYWRkaXRpb25hbCB0aHJlYWQgd2hpY2ggb2JzZXJ2ZXMg Q29yZSAyLiBJdCBjYW4gdXNlIHJ0ZV9nZXRfbGNvcmVfc3RhdGUgQVBJIHRvDQprbm93IGNvcmUg MiBzdGF0ZS4gSG93ZXZlciwgSSBqdXN0IGZpbmQgInJ0ZV9nZXRfbGNvcmVfc3RhdGUiIEFQSSBv bmx5IGNhbiBiZSBjYWxsZWQgYnkgdGhlIG1haW4gY29yZS4gVGhpcw0KaXMgdGhlIHNhbWUgYXMg eW91IHNheSB0aGF0IHdvcmtlciBjYW4gbm90IGJlIG9ic2VydmVkIGJ5IGVhY2ggb3RoZXIuIA0K QXMgYSByZXN1bHQsIEkgYWdyZWUgd2l0aCB5b3UgdGhhdCAiRklOSVNIRUQiIHN0YXRlIGlzICBy ZWR1bmRhbnQgIGFuZCBpdCBjYW4gYmUgcmVtb3ZlZCBmcm9tIHRoaXMgY3VycmVudCBkcGRrIHZl cnNpb24uICANCg0KPiANCj4gPg0KPiA+IE9uIHRoZSBvdGhlciBoYW5kLCBpZiB3ZSBkZWNpZGUg dG8gcmVtb3ZlICJGSU5JU0hFRCIsIHBsZWFzZSBjb25zaWRlcg0KPiA+IHRoZSBmb2xsb3dpbmcg ZmlsZXM6DQo+ID4gMS4gbGliL2xpYnJ0ZV9lYWwvbGludXgvZWFsX3RocmVhZC5jOiBsaW5lIDMx DQo+ID4gICAgIGxpYi9saWJydGVfZWFsL3dpbmRvd3MvZWFsX3RocmVhZC5jOiBsaW5lIDIyDQo+ ID4gICAgIGxpYi9saWJydGVfZWFsL2ZyZWVic2QvZWFsX3RocmVhZC5jOiBsaW5lIDMxDQo+IEkg aGF2ZSBsb29rZWQgYXQgdGhlc2UgbGluZXMsIHRoZXkgZG8gbm90IGNhcHR1cmUgIndoeSIgRklO SVNIRUQgc3RhdGUgaXMNCj4gcmVxdWlyZWQuDQoNCkkgbWVhbiBpZiB3ZSBoYXZlIHJlbW92ZWQg IkZJTklTSEVEIiwgd2Ugc2hvdWxkIGNoYW5nZSB0aGUgZGVzY3JpcHRpb24gaGVyZSwgIkZJTklT SEVEIg0Kc2hvdWxkIGJlIHJlcGxhY2VkIGJ5ICJXQUlUIi4gDQoNCj4gDQo+ICAyLg0KPiA+IGxp Yi9saWJydGVfZWFsL2luY2x1ZGUvcnRlX2xhdW5jaC5oOiBsaW5lIDI0LCA0NCwgMTIxLCAxMjMs IDEzMSAzLg0KPiA+IGV4YW1wbGVzL2wyZndkLQ0KPiA+IGtlZXBhbGl2ZS9tYWluLmM6IGxpbmUg NTEwDQo+ID4gcnRlX2VhbF93YWl0X2xjb3JlKGlkX2NvcmUpIGNhbiBiZSByZW1vdmVkLiBCZWNh dXNlIHRoZSBjb3JlIHN0YXRlIGhhcw0KPiA+IGJlZW4gY2hlY2tlZCBhcyAiV0FJVCIsIHRoaXMg aXMgYSByZWR1bmRhbnQgb3BlcmF0aW9uDQo+ID4NCj4gPiBCZXN0IFJlZ2FyZHMNCj4gPiBGZWlm ZWkNCj4gPg0KPiA+ID4NCj4gPiA+IFNpZ25lZC1vZmYtYnk6IEhvbm5hcHBhIE5hZ2FyYWhhbGxp IDxob25uYXBwYS5uYWdhcmFoYWxsaUBhcm0uY29tPg0KPiA+ID4gUmV2aWV3ZWQtYnk6IE9sYSBM aWxqZWRhaGwgPG9sYS5saWxqZWRhaGxAYXJtLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gIGRyaXZl cnMvZXZlbnQvZHBhYTIvZHBhYTJfZXZlbnRkZXZfc2VsZnRlc3QuYyB8IDIgKy0NCj4gPiA+IGRy aXZlcnMvZXZlbnQvb2N0ZW9udHgvc3NvdmZfZXZkZXZfc2VsZnRlc3QuYyB8IDIgKy0NCj4gPiA+ ICBkcml2ZXJzL2V2ZW50L3N3L3N3X2V2ZGV2X3NlbGZ0ZXN0LmMgICAgICAgICAgfCA0ICsrLS0N Cj4gPiA+ICBleGFtcGxlcy9sMmZ3ZC1rZWVwYWxpdmUvbWFpbi5jICAgICAgICAgICAgICAgfCAy ICstDQo+ID4gPiAgbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9jb21tb25fbGF1bmNoLmMgICAg IHwgNyArKy0tLS0tDQo+ID4gPiAgbGliL2xpYnJ0ZV9lYWwvZnJlZWJzZC9lYWxfdGhyZWFkLmMg ICAgICAgICAgIHwgMiArLQ0KPiA+ID4gIGxpYi9saWJydGVfZWFsL2xpbnV4L2VhbF90aHJlYWQu YyAgICAgICAgICAgICB8IDggKy0tLS0tLS0NCj4gPiA+ICBsaWIvbGlicnRlX2VhbC93aW5kb3dz L2VhbF90aHJlYWQuYyAgICAgICAgICAgfCA4ICstLS0tLS0tDQo+ID4gPiAgOCBmaWxlcyBjaGFu Z2VkLCAxMCBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkNCj4gPiA+DQo+ID4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ldmVudC9kcGFhMi9kcGFhMl9ldmVudGRldl9zZWxmdGVzdC5jDQo+ ID4gPiBiL2RyaXZlcnMvZXZlbnQvZHBhYTIvZHBhYTJfZXZlbnRkZXZfc2VsZnRlc3QuYw0KPiA+ ID4gaW5kZXggY2Q3MzExYTk0Li5iYmJkMjA5NTEgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJz L2V2ZW50L2RwYWEyL2RwYWEyX2V2ZW50ZGV2X3NlbGZ0ZXN0LmMNCj4gPiA+ICsrKyBiL2RyaXZl cnMvZXZlbnQvZHBhYTIvZHBhYTJfZXZlbnRkZXZfc2VsZnRlc3QuYw0KPiA+ID4gQEAgLTQ2OCw3 ICs0NjgsNyBAQCB3YWl0X3dvcmtlcnNfdG9fam9pbihpbnQgbGNvcmUsIGNvbnN0DQo+ID4gPiBy dGVfYXRvbWljMzJfdA0KPiA+ID4gKmNvdW50KSAgUlRFX1NFVF9VU0VEKGNvdW50KTsNCj4gPiA+ DQo+ID4gPiAgcHJpbnRfY3ljbGVzID0gY3ljbGVzID0gcnRlX2dldF90aW1lcl9jeWNsZXMoKTsg LXdoaWxlDQo+ID4gPiAocnRlX2VhbF9nZXRfbGNvcmVfc3RhdGUobGNvcmUpICE9IEZJTklTSEVE KSB7DQo+ID4gPiArd2hpbGUgKHJ0ZV9lYWxfZ2V0X2xjb3JlX3N0YXRlKGxjb3JlKSAhPSBXQUlU KSB7DQo+ID4gPiAgdWludDY0X3QgbmV3X2N5Y2xlcyA9IHJ0ZV9nZXRfdGltZXJfY3ljbGVzKCk7 DQo+ID4gPg0KPiA+ID4gIGlmIChuZXdfY3ljbGVzIC0gcHJpbnRfY3ljbGVzID4gcnRlX2dldF90 aW1lcl9oeigpKSB7IGRpZmYgLS1naXQNCj4gPiA+IGEvZHJpdmVycy9ldmVudC9vY3Rlb250eC9z c292Zl9ldmRldl9zZWxmdGVzdC5jDQo+ID4gPiBiL2RyaXZlcnMvZXZlbnQvb2N0ZW9udHgvc3Nv dmZfZXZkZXZfc2VsZnRlc3QuYw0KPiA+ID4gaW5kZXggNTI4Zjk5ZGQ4Li5kN2IwZDIyMTEgMTAw NjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJzL2V2ZW50L29jdGVvbnR4L3Nzb3ZmX2V2ZGV2X3NlbGZ0 ZXN0LmMNCj4gPiA+ICsrKyBiL2RyaXZlcnMvZXZlbnQvb2N0ZW9udHgvc3NvdmZfZXZkZXZfc2Vs ZnRlc3QuYw0KPiA+ID4gQEAgLTU3OSw3ICs1NzksNyBAQCB3YWl0X3dvcmtlcnNfdG9fam9pbihp bnQgbGNvcmUsIGNvbnN0DQo+ID4gPiBydGVfYXRvbWljMzJfdA0KPiA+ID4gKmNvdW50KSAgUlRF X1NFVF9VU0VEKGNvdW50KTsNCj4gPiA+DQo+ID4gPiAgcHJpbnRfY3ljbGVzID0gY3ljbGVzID0g cnRlX2dldF90aW1lcl9jeWNsZXMoKTsgLXdoaWxlDQo+ID4gPiAocnRlX2VhbF9nZXRfbGNvcmVf c3RhdGUobGNvcmUpICE9IEZJTklTSEVEKSB7DQo+ID4gPiArd2hpbGUgKHJ0ZV9lYWxfZ2V0X2xj b3JlX3N0YXRlKGxjb3JlKSAhPSBXQUlUKSB7DQo+ID4gPiAgdWludDY0X3QgbmV3X2N5Y2xlcyA9 IHJ0ZV9nZXRfdGltZXJfY3ljbGVzKCk7DQo+ID4gPg0KPiA+ID4gIGlmIChuZXdfY3ljbGVzIC0g cHJpbnRfY3ljbGVzID4gcnRlX2dldF90aW1lcl9oeigpKSB7IGRpZmYgLS1naXQNCj4gPiA+IGEv ZHJpdmVycy9ldmVudC9zdy9zd19ldmRldl9zZWxmdGVzdC5jDQo+ID4gPiBiL2RyaXZlcnMvZXZl bnQvc3cvc3dfZXZkZXZfc2VsZnRlc3QuYw0KPiA+ID4gaW5kZXggZTRiZmIzYTBmLi43ODQ3YTg2 NDUgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJzL2V2ZW50L3N3L3N3X2V2ZGV2X3NlbGZ0ZXN0 LmMNCj4gPiA+ICsrKyBiL2RyaXZlcnMvZXZlbnQvc3cvc3dfZXZkZXZfc2VsZnRlc3QuYw0KPiA+ ID4gQEAgLTMxMzgsOCArMzEzOCw4IEBAIHdvcmtlcl9sb29wYmFjayhzdHJ1Y3QgdGVzdCAqdCwg dWludDhfdA0KPiA+ID4gZGlzYWJsZV9pbXBsaWNpdF9yZWxlYXNlKQ0KPiA+ID4gcnRlX2VhbF9y ZW1vdGVfbGF1bmNoKHdvcmtlcl9sb29wYmFja193b3JrZXJfZm4sIHQsIHdfbGNvcmUpOw0KPiA+ ID4NCj4gPiA+ICBwcmludF9jeWNsZXMgPSBjeWNsZXMgPSBydGVfZ2V0X3RpbWVyX2N5Y2xlcygp OyAtd2hpbGUNCj4gPiA+IChydGVfZWFsX2dldF9sY29yZV9zdGF0ZShwX2xjb3JlKSAhPSBGSU5J U0hFRCB8fA0KPiA+ID4gLXJ0ZV9lYWxfZ2V0X2xjb3JlX3N0YXRlKHdfbGNvcmUpICE9IEZJTklT SEVEKSB7DQo+ID4gPiArd2hpbGUgKHJ0ZV9lYWxfZ2V0X2xjb3JlX3N0YXRlKHBfbGNvcmUpICE9 IFdBSVQgfHwNCj4gPiA+ICtydGVfZWFsX2dldF9sY29yZV9zdGF0ZSh3X2xjb3JlKSAhPSBXQUlU KSB7DQo+ID4gPg0KPiA+ID4gIHJ0ZV9zZXJ2aWNlX3J1bl9pdGVyX29uX2FwcF9sY29yZSh0LT5z ZXJ2aWNlX2lkLCAxKTsNCj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZXhhbXBsZXMvbDJmd2Qt a2VlcGFsaXZlL21haW4uYyBiL2V4YW1wbGVzL2wyZndkLQ0KPiA+ID4ga2VlcGFsaXZlL21haW4u YyBpbmRleCBlNGMyYjI3OTMuLmRkNzc3YzQ2YSAxMDA2NDQNCj4gPiA+IC0tLSBhL2V4YW1wbGVz L2wyZndkLWtlZXBhbGl2ZS9tYWluLmMNCj4gPiA+ICsrKyBiL2V4YW1wbGVzL2wyZndkLWtlZXBh bGl2ZS9tYWluLmMNCj4gPiA+IEBAIC01MDYsNyArNTA2LDcgQEAgZGVhZF9jb3JlKF9fcnRlX3Vu dXNlZCB2b2lkICpwdHJfZGF0YSwgY29uc3QNCj4gaW50DQo+ID4gPiBpZF9jb3JlKSAgaWYgKHRl cm1pbmF0ZV9zaWduYWxfcmVjZWl2ZWQpICByZXR1cm47ICBwcmludGYoIkRlYWQgY29yZQ0KPiA+ ID4gJWkgLSByZXN0YXJ0aW5nLi5cbiIsIGlkX2NvcmUpOyAtaWYNCj4gPiA+IChydGVfZWFsX2dl dF9sY29yZV9zdGF0ZShpZF9jb3JlKSA9PSBGSU5JU0hFRCkgew0KPiA+ID4gK2lmIChydGVfZWFs X2dldF9sY29yZV9zdGF0ZShpZF9jb3JlKSA9PSBXQUlUKSB7DQo+ID4gPiAgcnRlX2VhbF93YWl0 X2xjb3JlKGlkX2NvcmUpOw0KPiA+ID4gIHJ0ZV9lYWxfcmVtb3RlX2xhdW5jaChsMmZ3ZF9sYXVu Y2hfb25lX2xjb3JlLCBOVUxMLCBpZF9jb3JlKTsgIH0NCj4gPiA+IGVsc2UgeyBkaWZmIC0tZ2l0 IGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9jb21tb25fbGF1bmNoLmMNCj4gPiA+IGIvbGli L2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9jb21tb25fbGF1bmNoLmMNCj4gPiA+IGluZGV4IDM0Zjg1 NGFkOC4uNzhmZDk0MDI2IDEwMDY0NA0KPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9u L2VhbF9jb21tb25fbGF1bmNoLmMNCj4gPiA+ICsrKyBiL2xpYi9saWJydGVfZWFsL2NvbW1vbi9l YWxfY29tbW9uX2xhdW5jaC5jDQo+ID4gPiBAQCAtMjYsMTQgKzI2LDExIEBAIHJ0ZV9lYWxfd2Fp dF9sY29yZSh1bnNpZ25lZCB3b3JrZXJfaWQpICBpZg0KPiA+ID4gKGxjb3JlX2NvbmZpZ1t3b3Jr ZXJfaWRdLnN0YXRlID09IFdBSVQpICByZXR1cm4gMDsNCj4gPiA+DQo+ID4gPiAtd2hpbGUgKGxj b3JlX2NvbmZpZ1t3b3JrZXJfaWRdLnN0YXRlICE9IFdBSVQgJiYNCj4gPiA+IC0gICAgICAgbGNv cmVfY29uZmlnW3dvcmtlcl9pZF0uc3RhdGUgIT0gRklOSVNIRUQpDQo+ID4gPiArd2hpbGUgKGxj b3JlX2NvbmZpZ1t3b3JrZXJfaWRdLnN0YXRlICE9IFdBSVQpDQo+ID4gPiAgcnRlX3BhdXNlKCk7 DQo+ID4gPg0KPiA+ID4gIHJ0ZV9ybWIoKTsNCj4gPiA+DQo+ID4gPiAtLyogd2UgYXJlIGluIGZp bmlzaGVkIHN0YXRlLCBnbyB0byB3YWl0IHN0YXRlICovIC0NCj4gPiA+IGxjb3JlX2NvbmZpZ1t3 b3JrZXJfaWRdLnN0YXRlID0gV0FJVDsgIHJldHVybg0KPiA+ID4gbGNvcmVfY29uZmlnW3dvcmtl cl9pZF0ucmV0OyAgfQ0KPiA+ID4NCj4gPiA+IEBAIC02Miw3ICs1OSw3IEBAIHJ0ZV9lYWxfbXBf cmVtb3RlX2xhdW5jaChpbnQgKCpmKSh2b2lkICopLCB2b2lkDQo+ID4gPiAqYXJnLA0KPiA+ID4N Cj4gPiA+ICBpZiAoY2FsbF9tYWluID09IENBTExfTUFJTikgew0KPiA+ID4gIGxjb3JlX2NvbmZp Z1ttYWluX2xjb3JlXS5yZXQgPSBmKGFyZyk7DQo+ID4gPiAtbGNvcmVfY29uZmlnW21haW5fbGNv cmVdLnN0YXRlID0gRklOSVNIRUQ7DQo+ID4gPiArbGNvcmVfY29uZmlnW21haW5fbGNvcmVdLnN0 YXRlID0gV0FJVDsNCj4gPiA+ICB9DQo+ID4gPg0KPiA+ID4gIHJldHVybiAwOw0KPiA+ID4gZGlm ZiAtLWdpdCBhL2xpYi9saWJydGVfZWFsL2ZyZWVic2QvZWFsX3RocmVhZC5jDQo+ID4gPiBiL2xp Yi9saWJydGVfZWFsL2ZyZWVic2QvZWFsX3RocmVhZC5jDQo+ID4gPiBpbmRleCAxN2I4ZjM5OTYu LjZkNmYxZTJmZCAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9saWJydGVfZWFsL2ZyZWVic2QvZWFs X3RocmVhZC5jDQo+ID4gPiArKysgYi9saWIvbGlicnRlX2VhbC9mcmVlYnNkL2VhbF90aHJlYWQu Yw0KPiA+ID4gQEAgLTE0MCw3ICsxNDAsNyBAQCBlYWxfdGhyZWFkX2xvb3AoX19ydGVfdW51c2Vk IHZvaWQgKmFyZykNCj4gPiA+IGxjb3JlX2NvbmZpZ1tsY29yZV9pZF0uZiA9IE5VTEw7ICBsY29y ZV9jb25maWdbbGNvcmVfaWRdLmFyZyA9IE5VTEw7DQo+ID4gPiBydGVfd21iKCk7IC1sY29yZV9j b25maWdbbGNvcmVfaWRdLnN0YXRlID0gRklOSVNIRUQ7DQo+ID4gPiArbGNvcmVfY29uZmlnW2xj b3JlX2lkXS5zdGF0ZSA9IFdBSVQ7DQo+ID4gPiAgfQ0KPiA+ID4NCj4gPiA+ICAvKiBuZXZlciBy ZWFjaGVkICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9lYWwvbGludXgvZWFsX3Ro cmVhZC5jDQo+ID4gPiBiL2xpYi9saWJydGVfZWFsL2xpbnV4L2VhbF90aHJlYWQuYw0KPiA+ID4g aW5kZXggYTBhMDA5MTA0Li43Yjk0NjNkZjMgMTAwNjQ0DQo+ID4gPiAtLS0gYS9saWIvbGlicnRl X2VhbC9saW51eC9lYWxfdGhyZWFkLmMNCj4gPiA+ICsrKyBiL2xpYi9saWJydGVfZWFsL2xpbnV4 L2VhbF90aHJlYWQuYw0KPiA+ID4gQEAgLTE0MSwxMyArMTQxLDcgQEAgZWFsX3RocmVhZF9sb29w KF9fcnRlX3VudXNlZCB2b2lkICphcmcpDQo+ID4gPiBsY29yZV9jb25maWdbbGNvcmVfaWRdLmFy ZyA9IE5VTEw7ICBydGVfd21iKCk7DQo+ID4gPg0KPiA+ID4gLS8qIHdoZW4gYSBzZXJ2aWNlIGNv cmUgcmV0dXJucywgaXQgc2hvdWxkIGdvIGRpcmVjdGx5IHRvIFdBSVQNCj4gPiA+IC0gKiBzdGF0 ZSwgYmVjYXVzZSB0aGUgYXBwbGljYXRpb24gd2lsbCBub3QgbGNvcmVfd2FpdCgpIGZvciBpdC4N Cj4gPiA+IC0gKi8NCj4gPiA+IC1pZiAobGNvcmVfY29uZmlnW2xjb3JlX2lkXS5jb3JlX3JvbGUg PT0gUk9MRV9TRVJWSUNFKSAtDQo+ID4gPiBsY29yZV9jb25maWdbbGNvcmVfaWRdLnN0YXRlID0g V0FJVDsgLWVsc2UNCj4gPiA+IC1sY29yZV9jb25maWdbbGNvcmVfaWRdLnN0YXRlID0gRklOSVNI RUQ7DQo+ID4gPiArbGNvcmVfY29uZmlnW2xjb3JlX2lkXS5zdGF0ZSA9IFdBSVQ7DQo+ID4gPiAg fQ0KPiA+ID4NCj4gPiA+ICAvKiBuZXZlciByZWFjaGVkICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEv bGliL2xpYnJ0ZV9lYWwvd2luZG93cy9lYWxfdGhyZWFkLmMNCj4gPiA+IGIvbGliL2xpYnJ0ZV9l YWwvd2luZG93cy9lYWxfdGhyZWFkLmMNCj4gPiA+IGluZGV4IDdhOTI3N2M1MS4uMzVkMDU5YTMw IDEwMDY0NA0KPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9lYWwvd2luZG93cy9lYWxfdGhyZWFkLmMN Cj4gPiA+ICsrKyBiL2xpYi9saWJydGVfZWFsL3dpbmRvd3MvZWFsX3RocmVhZC5jDQo+ID4gPiBA QCAtMTI1LDEzICsxMjUsNyBAQCBlYWxfdGhyZWFkX2xvb3Aodm9pZCAqYXJnIF9fcnRlX3VudXNl ZCkNCj4gPiA+IGxjb3JlX2NvbmZpZ1tsY29yZV9pZF0uYXJnID0gTlVMTDsgIHJ0ZV93bWIoKTsN Cj4gPiA+DQo+ID4gPiAtLyogd2hlbiBhIHNlcnZpY2UgY29yZSByZXR1cm5zLCBpdCBzaG91bGQg Z28gZGlyZWN0bHkgdG8gV0FJVA0KPiA+ID4gLSAqIHN0YXRlLCBiZWNhdXNlIHRoZSBhcHBsaWNh dGlvbiB3aWxsIG5vdCBsY29yZV93YWl0KCkgZm9yIGl0Lg0KPiA+ID4gLSAqLw0KPiA+ID4gLWlm IChsY29yZV9jb25maWdbbGNvcmVfaWRdLmNvcmVfcm9sZSA9PSBST0xFX1NFUlZJQ0UpIC0NCj4g PiA+IGxjb3JlX2NvbmZpZ1tsY29yZV9pZF0uc3RhdGUgPSBXQUlUOyAtZWxzZQ0KPiA+ID4gLWxj b3JlX2NvbmZpZ1tsY29yZV9pZF0uc3RhdGUgPSBGSU5JU0hFRDsNCj4gPiA+ICtsY29yZV9jb25m aWdbbGNvcmVfaWRdLnN0YXRlID0gV0FJVDsNCj4gPiA+ICB9DQo+ID4gPiAgfQ0KPiA+ID4NCj4g PiA+IC0tDQo+ID4gPiAyLjE3LjENCj4gPiA+DQoNCg==