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 12A8D42A47; Wed, 3 May 2023 07:45:12 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 504E542BDA; Wed, 3 May 2023 07:45:11 +0200 (CEST) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2055.outbound.protection.outlook.com [40.107.22.55]) by mails.dpdk.org (Postfix) with ESMTP id C87DD410FC; Wed, 3 May 2023 07:45:08 +0200 (CEST) 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=/HIj+c7KoSalWe0Zxu9xydXT9GFWNg99i6v14WOdCQo=; b=5wSzJ0YpwyH76yS0fdTaw4awLs/TUrgiJyx7BMvVWcuD3XoeFn38csYXMiB9GyQ95fmDUwtBpdfwbWRq6ALlUQn1U8HvhLWK3yiDKsw/INLsT3R1zOq8RBLwL8a1UTUe+udn50TRxrhrmBUC7JyD3tIqOHZGN8cpVrkN6yLUwuk= Received: from DB6PR0301CA0070.eurprd03.prod.outlook.com (2603:10a6:6:30::17) by DU0PR08MB9873.eurprd08.prod.outlook.com (2603:10a6:10:421::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.30; Wed, 3 May 2023 05:45:04 +0000 Received: from DBAEUR03FT024.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:30:cafe::ff) by DB6PR0301CA0070.outlook.office365.com (2603:10a6:6:30::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.22 via Frontend Transport; Wed, 3 May 2023 05:45:04 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;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; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT024.mail.protection.outlook.com (100.127.142.163) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.20 via Frontend Transport; Wed, 3 May 2023 05:45:04 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Wed, 03 May 2023 05:45:04 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 4fb72de14ea7c186 X-CR-MTA-TID: 64aa7808 Received: from fde5fc94977b.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2072BA97-C022-4A0B-9DAE-220CBDF6F18E.1; Wed, 03 May 2023 05:44:57 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id fde5fc94977b.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 03 May 2023 05:44:57 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jOxaurbqvgkK+9ehJZJHJI0FZFnwb7YLpt5sioQkM3G74zthCuilybN005usOzrCp1B6Psz7FtL+LHURz7xttByVILT6UXOkO9CQ/XpEZ/trk9ObovMiNx2m7nqTBNSYVNv816ppiZnNSxsM1GoMd64b9geUgBUvR2ZZDFzRC7vU+OGLk/+A4cuk+RQh/9mvSVCZWTWOquvGDVsgOP3QyY102Zk42rNC8CrDPSH0Cp72GosiYrCFghUJY4/74YbeZ1z25M3+DEVM7MMTdQHHeSmXwdrLMz0TARI8QRVAc/Db+rSIhIr4aTS0eWuDhZ85qZvx6dl80H7FrUIjRbG58g== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/HIj+c7KoSalWe0Zxu9xydXT9GFWNg99i6v14WOdCQo=; b=U+UbYgE3N0coCSq3fcLr/ZqU3C2kUNzbkjQG0NMSSMh6aj2hOR0bGJZ7dIMeITtk4L5oAiZgwCzmwGIzjEQYTBWpR0mCgPMd6krY6fW0U5BcN+3K2al7vuW8ET/FN4saV2ZqnJmVO0x5Bbp2/lL0zMzTGmTDme1RMJ8b5BmZGioDq8k7Xn+rAosksd+IWUheizNI5fr+6RQ9iE+7Wj9OWx+CuBuGauVsQy6VVWP2yHkTH0Vr3XgRNrMoFH/g9ipQixKgyz9tImnAPq1TGD+3RXpydTIbgo6ek3MJnyFJ+/aTH7EaKLdWr0SMh0pvtyM9+1UmKxbHdgAI41gu0Qpa6w== 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=/HIj+c7KoSalWe0Zxu9xydXT9GFWNg99i6v14WOdCQo=; b=5wSzJ0YpwyH76yS0fdTaw4awLs/TUrgiJyx7BMvVWcuD3XoeFn38csYXMiB9GyQ95fmDUwtBpdfwbWRq6ALlUQn1U8HvhLWK3yiDKsw/INLsT3R1zOq8RBLwL8a1UTUe+udn50TRxrhrmBUC7JyD3tIqOHZGN8cpVrkN6yLUwuk= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by DB3PR08MB8938.eurprd08.prod.outlook.com (2603:10a6:10:43f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.31; Wed, 3 May 2023 05:44:54 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::621c:838a:cb11:19b7]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::621c:838a:cb11:19b7%7]) with mapi id 15.20.6363.021; Wed, 3 May 2023 05:44:54 +0000 From: Honnappa Nagarahalli To: Konstantin Ananyev , "wangyunjian@huawei.com" CC: "dev@dpdk.org" , "luyicai@huawei.com" , "stable@dpdk.org" , nd , nd Subject: RE: [dpdk-dev] [PATCH v2] ring: fix use after free in ring release Thread-Topic: [dpdk-dev] [PATCH v2] ring: fix use after free in ring release Thread-Index: AQHZfCj9RL7eOo8QCkK2B+7jhfTaTK9FxyuQgAHV7YCAAGcWEA== Date: Wed, 3 May 2023 05:44:54 +0000 Message-ID: References: <1e024be7-14a7-1997-43a2-2d2571fc984d@yandex.ru> <6215f9c3-db40-a0c1-edc6-d859f2920609@yandex.ru> In-Reply-To: <6215f9c3-db40-a0c1-edc6-d859f2920609@yandex.ru> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 99988A8E63CF3742B142CF659C1888C5.0 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DBAPR08MB5814:EE_|DB3PR08MB8938:EE_|DBAEUR03FT024:EE_|DU0PR08MB9873:EE_ X-MS-Office365-Filtering-Correlation-Id: 1543d7a1-55fa-464c-3e7f-08db4b998b79 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: dBey6+Ab/Ip+v6eDV7T2NdXge3it45fk4+WUT8SXsUO2vJv4mUwXWwpMjuGHmKQYwGpOUhfi5mziNY/SntoImNiM5++pbsvYbb2gmX9nVJzPcECnh46HT2XEI7xjMiTFPpgS2ldy+VMu4b0F4xV9+dwFe31hP2FwsLTyr+Z5Bdum8Lob/cD/6vByzaN+JIZFbGfz80fqmAArzYdhGH/vfGdG9KMDcWeXDDnPp9dSfVXZPTw+RD1BWaUXVqLWxF0tocB+/A8GYc/CVoAA+8k3B2GH8x+ydDGCV009DcYBwmUWWRE7PiZZKJKCCRs0wFmspcTgoRf2o3xFGDulXIl35Owwtlr/Qdbl2Y/PA/bbNBJnXxAtR0cOkPb1UXdvQpefv3WbyVDepVRTyeiTH8rPxls70zpt25xTgWfwJMj2iU1wl6ez0Fp4R5mPusOl29JlN7wryYCvmtFDX83MjZMvfFg20rfwUfTcPd0L7U6kfBCxd4FFePc4H4uviwR2ckrQGnJp1SG5oI/0Bt6lJAxwtKURLJg8Ta3FFJLURxM8z7GzqqpVUFzq88tUcbeylKn1BqsO1+kyTaplVhRHtyNMpuHbck3R2tZ4hjDyGdndmJe9HmCJ2B8u/qYsZXsYpjt0 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(376002)(346002)(396003)(136003)(366004)(39860400002)(451199021)(478600001)(316002)(71200400001)(4326008)(64756008)(66946007)(66556008)(66446008)(76116006)(41300700001)(7696005)(66476007)(83380400001)(54906003)(52536014)(8936002)(8676002)(5660300002)(110136005)(2906002)(26005)(6506007)(186003)(55016003)(9686003)(33656002)(38070700005)(38100700002)(122000001)(86362001); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB8938 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 1e6d9d42-60cc-40e5-755a-08db4b998565 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ICtEjGgz7TftkiyA0t4Dhm0LeRTaWQtPdt+tQXcMcXtg3fiDZCF9E6QdRBxglksWcDgmyLza4kkqYMe1IlvjQ2s2ycfj2N2J9xJ0h3yJujYCsxKx05Eof7h6JBBDJY+dlA5h6wN4c/JMTHHrRbjWjaX4lqcTtLYDT+WeQIQN+lHQOsB5A0BHJ7hqOI4M6uQqwvPVfsS1H1k1j3tKK4g8MjxVQhbylJmpgKW2mjrPdmd3enubQ973NfYBoTEfjUHPPOtHOhNxQTKqpZe/tAyVy0xNov33G99jWk9Pintg4iDgUDjqZl3hCBFdko0NPCIVaK5Ahym8rTBcsJ1gkjYzWeKq1iXFfw+eZ6jfTgG4N9n5dz/Y1aiUFxNDG390iqMFy2qkKwSbJacV28pkiwKPFsJgqqr4gY+BVPeA2nWEn6791JwaGC8fLFgxQTwkUxxZZZOGldiDsL5KmD4Ye+PGKTOs+BgM9atdceuLK50fbfYQgXWAht+5eZOsN+5BDRrj/F8IZv3bm3/GWVFknMJkvnqdN8Uep4SgHXqQdnNKFjegD/od3/1FQ5+qSm4VtA1aXZEIsBWl0rGZOwXzU0Zbm9WSDuaRisSGjaSIRTKQHYVXKsUtIJ8sXjG0JdIaK0n49R7KPb8HohZSDVDyYEZT2DOULPmjI0W7UCaeSzY5gXCD24EAGDBRTh8qJDGsytUnEqPM8BrFI7KYbE3UPU9VCtvIBHrprPT/y631Lluk4sB8QuM6rFLVOYYyQvPejNhYfRgWeIMNtSwlZPa3uyxb0w== 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:(13230028)(4636009)(39860400002)(136003)(396003)(346002)(376002)(451199021)(40470700004)(46966006)(36840700001)(82310400005)(4326008)(9686003)(6506007)(316002)(40460700003)(40480700001)(55016003)(8936002)(8676002)(33656002)(34020700004)(450100002)(86362001)(5660300002)(52536014)(54906003)(110136005)(478600001)(70206006)(336012)(36860700001)(83380400001)(47076005)(26005)(70586007)(41300700001)(2906002)(356005)(81166007)(186003)(82740400003)(7696005)(23180200003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 May 2023 05:45:04.4959 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1543d7a1-55fa-464c-3e7f-08db4b998b79 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: DBAEUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9873 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 PHNuaXA+DQoNCj4gPj4NCj4gPj4NCj4gPj4NCj4gPj4+IEFmdGVyIHRoZSBtZW16b25lIGlzIGZy ZWVkLCBpdCBpcyBub3QgcmVtb3ZlZCBmcm9tIHRoZSAncnRlX3JpbmdfdGFpbHEnLg0KPiA+Pj4g SWYgcnRlX3JpbmdfbG9va3VwIGlzIGNhbGxlZCBhdCB0aGlzIHRpbWUsIGl0IHdpbGwgY2F1c2Ug YQ0KPiA+Pj4gdXNlLWFmdGVyLWZyZWUgcHJvYmxlbS4gVGhpcyBjaGFuZ2UgcHJldmVudHMgdGhh dCBmcm9tIGhhcHBlbmluZy4NCj4gPj4+DQo+ID4+PiBGaXhlczogNGUzMjEwMWY5YjAxICgicmlu Zzogc3VwcG9ydCBmcmVlaW5nIikNCj4gPj4+IENjOiBzdGFibGVAZHBkay5vcmcNCj4gPj4+DQo+ ID4+PiBTdWdnZXN0ZWQtYnk6IEhvbm5hcHBhIE5hZ2FyYWhhbGxpIDxob25uYXBwYS5uYWdhcmFo YWxsaUBhcm0uY29tPg0KPiA+Pj4gU2lnbmVkLW9mZi1ieTogWXVuamlhbiBXYW5nIDx3YW5neXVu amlhbkBodWF3ZWkuY29tPg0KPiA+Pj4gLS0tDQo+ID4+PiB2MjogdXBkYXRlIGNvZGUgc3VnZ2Vz dGVkIGJ5IEhvbm5hcHBhIE5hZ2FyYWhhbGxpDQo+ID4+PiAtLS0NCj4gPj4+ICAgbGliL3Jpbmcv cnRlX3JpbmcuYyB8IDggKysrLS0tLS0NCj4gPj4+ICAgMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0 aW9ucygrKSwgNSBkZWxldGlvbnMoLSkNCj4gPj4+DQo+ID4+PiBkaWZmIC0tZ2l0IGEvbGliL3Jp bmcvcnRlX3JpbmcuYyBiL2xpYi9yaW5nL3J0ZV9yaW5nLmMgaW5kZXgNCj4gPj4+IDhlZDQ1NTA0 M2QuLjI3NTUzMjNiOGEgMTAwNjQ0DQo+ID4+PiAtLS0gYS9saWIvcmluZy9ydGVfcmluZy5jDQo+ ID4+PiArKysgYi9saWIvcmluZy9ydGVfcmluZy5jDQo+ID4+PiBAQCAtMzMzLDExICszMzMsNiBA QCBydGVfcmluZ19mcmVlKHN0cnVjdCBydGVfcmluZyAqcikNCj4gPj4+ICAgCQlyZXR1cm47DQo+ ID4+PiAgIAl9DQo+ID4+Pg0KPiA+Pj4gLQlpZiAocnRlX21lbXpvbmVfZnJlZShyLT5tZW16b25l KSAhPSAwKSB7DQo+ID4+PiAtCQlSVEVfTE9HKEVSUiwgUklORywgIkNhbm5vdCBmcmVlIG1lbW9y eVxuIik7DQo+ID4+PiAtCQlyZXR1cm47DQo+ID4+PiAtCX0NCj4gPj4+IC0NCj4gPj4+ICAgCXJp bmdfbGlzdCA9IFJURV9UQUlMUV9DQVNUKHJ0ZV9yaW5nX3RhaWxxLmhlYWQsIHJ0ZV9yaW5nX2xp c3QpOw0KPiA+Pj4gICAJcnRlX21jZmdfdGFpbHFfd3JpdGVfbG9jaygpOw0KPiA+Pj4NCj4gPj4+ IEBAIC0zNTQsNiArMzQ5LDkgQEAgcnRlX3JpbmdfZnJlZShzdHJ1Y3QgcnRlX3JpbmcgKnIpDQo+ ID4+Pg0KPiA+Pj4gICAJVEFJTFFfUkVNT1ZFKHJpbmdfbGlzdCwgdGUsIG5leHQpOw0KPiA+Pj4N Cj4gPj4+ICsJaWYgKHJ0ZV9tZW16b25lX2ZyZWUoci0+bWVtem9uZSkgIT0gMCkNCj4gPj4+ICsJ CVJURV9MT0coRVJSLCBSSU5HLCAiQ2Fubm90IGZyZWUgbWVtb3J5XG4iKTsNCj4gPj4+ICsNCj4g Pj4NCj4gPj4gSSBuaXQ6IEkgdGhpbmsgaXQgaXMgYSBiaXQgYmV0dGVyIHRvIGZpcnN0IHJlbGVh c2UgdGhlIGxvY2sgYW5kIHRoZW4NCj4gPj4gZnJlZSB0aGUgbWVtem9uZS4NCj4gPiBJIHRoaW5r IGJvdGggb2Ygb3VyIHN1Z2dlc3Rpb25zIGFyZSBjb250cmFkaWN0b3J5LiBBbnkgcmVhc29uIHdo eSB5b3Ugd2FudA0KPiB0byBmcmVlIG91dHNpZGUgdGhlIGxvY2tlZCByZWdpb24/DQo+IA0KPiAN Cj4gRG9uJ3Qga25vdyB3aGF0IHlvdSBtZWFuIGJ5ICdib3RoIHN1Z2dlc3Rpb25zJyBoZXJlLg0K SSB3cm90ZSAnYm90aCBvZiBvdXIgc3VnZ2VzdGlvbnMnLiBFc3NlbnRpYWxseSwgaW4gdjEsIGZy ZWVpbmcgdGhlIG1lbXpvbmUgd2FzIG91dHNpZGUgb2YgdGhlIGxvY2suIEkgc3VnZ2VzdGVkIHRv IG1vdmUgaXQgaW5zaWRlIGFuZCB5b3UgYXJlIHN1Z2dlc3RpbmcgdG8gbW92ZSBpdCBpbnNpZGUu DQoNCj4gSSB0aGluayBJIGdhdmUgb25seSBvbmUgLSBtb3ZlIG1lbXpvbmVfZnJlZSgpIGFmdGVy IHRhaWxxX3dyaXRlX3VubG9jaygpLg0KPiBUbyBiZSBtb3JlIHByZWNpc2U6DQo+IDEpIHJ0ZV9t Y2ZnX3RhaWxxX3dyaXRlX2xvY2soKTsNCj4gLi4uDQo+IDIpIFRBSUxRX1JFTU9WRSguLi4pOw0K PiAzKSBydGVfbWNmZ190YWlscV93cml0ZV91bmxvY2soKTsNCj4gNCkgcnRlX21lbXpvbmVfZnJl ZShyLT5tZW16b25lKTsNCj4gDQo+IEFzIEkgcmVtZW1iZXIsIG1lbXpvbmVzIGFyZSBwcm90ZWN0 ZWQgYnkgdGhlaXIgb3duIGxvY2sgKG1sb2NrKSwgc28gd2UNCj4gZG9uJ3QgbmVlZCB0byBob2xk IHFsb2NrIHRvIGZyZWUgYSBtZW16b25lLCBhZnRlciByaW5nIHdhcyBhbHJlYWR5IHJlbW92ZWQN Cj4gZnJvbSB0aGUgcmluZ19saXN0Lg0KPiANCj4gPg0KPiA+IEkgdGhvdWdodCwgc2luY2UgaXQg YmVsb25ncyB0byB0aGUgcmluZyBiZWluZyBmcmVlZCwgaXQgbWFrZXMgc2Vuc2UgdG8gZnJlZSBp dA0KPiB3aGlsZSBob2xkaW5nIHRoZSBsb2NrIHRvIGF2b2lkIGFueSByYWNlIGNvbmRpdGlvbnMg KHRob3VnaCwgSSBoYXZlIG5vdA0KPiBjaGVja2VkIHdoYXQgdGhvc2UgYXJlKS4NCj4gDQo+IA0K PiBBcyBJIHVuZGVyc3RhbmQsIGl0IGlzIG9rIHdpdGggY3VycmVudCBkZXNpZ24gdG8gZ3JhYiBt bG9jayB3aGlsZSBob2xkaW5nIHFsb2NrLg0KPiBTbywgdGhlcmUgaXMgbm90aGluZyB3cm9uZyB3 aXRoIGN1cnJlbnQgcGF0Y2gsIEkganVzdCB0aGluayB0aGF0IGluIHRoYXQgY2FzZSBpdCBpcw0K PiBleGNlc3NpdmUsIGFuZCBjYW4gYmUgc2FmZWx5IGF2b2lkZWQuDQo+IA0KPiA+DQo+ID4+IEFw YXJ0IGZyb20gdGhhdCwgTEdUTS4NCj4gPj4gQWNrZWQtYnk6IEtvbnN0YW50aW4gQW5hbnlldiA8 a29uc3RhbnRpbi52LmFuYW55ZXZAeWFuZGV4LnJ1Pg0KPiA+Pg0KPiA+Pj4gICAJcnRlX21jZmdf dGFpbHFfd3JpdGVfdW5sb2NrKCk7DQo+ID4+Pg0KPiA+Pj4gICAJcnRlX2ZyZWUodGUpOw0KPiA+ Pj4gLS0NCj4gPj4+IDIuMzMuMA0KPiA+Pg0KPiA+DQoNCg==