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 A52B842407; Wed, 18 Jan 2023 03:50:17 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4EFB04067E; Wed, 18 Jan 2023 03:50:17 +0100 (CET) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2056.outbound.protection.outlook.com [40.107.243.56]) by mails.dpdk.org (Postfix) with ESMTP id 63ED940151 for ; Wed, 18 Jan 2023 03:50:16 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KEAquoCHifhx0WvkU64k1vNMqgMOxsIJGwBJLU7wBEVJx1dOFEASlcmLPIPqwE3JKQvj1pUdOihElcotNHoeMKb0oh8KR8v855LQITuGSdeTMyWGCX70b4HxAzcJtvH0cBgUQtgVDqnP6fiXUnly++xqmPKsldGIPDjzFnIj0+4kv8z4JoL/sEM3g+BIuFM3MPNDj+yWi0GnXOmFw4GTxBLDBaGuaDVLin+nNgpFt06Dlg+Ua5wq5v/nou/uGlES9S6yUuNk9VZE4k7DdW84jafjxUaOLs5SU7oYK/Pu2zywElBxE+CXeErJFwlJ3GdLT13CZniYLa4gdBhWilYrkw== 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=g/M/Wrv/6vclOMMB56XplPufcpO+dm1ouEXeNm5Y3BM=; b=IxfXm2h6Nb55SSAF2woTUsiROcpEu4xQFBAhNO+GPSbmtpj3zRABfyQEU76elj9RWaOiyzmzxtYf4Pki4VFelPUm5ar8l3wb4xtOUrjocqfqAri4yksFHa41fpsIzQU2FkQBujzXXohuzUZGTk7ojjCKmZ9mFQ7jcsveMNuyT7MMnkKdeXxqv40SX+EmWJsrh1YwPkniodIYM9thhd/2GxJ1dqABiYSqCRqPHhPxvTWcBrP+0sP0GkGyo009R3SJTO6T73UKNnQZPV8Z0mbhMYawlhoN9178n1jELoavlITxSlpoUiMUJOiN8RwOa6SOxYJNjJD9kWh47AFyN+eYSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=g/M/Wrv/6vclOMMB56XplPufcpO+dm1ouEXeNm5Y3BM=; b=oXfJY15+J/8kv00Ujbm0mp8RmkyiURtPakroqjqDWkINa2MEKQPYap2h+UbJ3o0Tv+CtIp50PRk4JUrMvAWiFTfJL0PsGmYXD+CTJQ3fVasZ6uPMp3eLSJdmkaFbq9NQ99GUwMUGba8etCtCyE2GtR2e7taRJA+4O4UBGMaXjFgY++eqXVh1XymitilmWAU1zvg2RFvLOjl0PjfLJ3ks5rFqBSURIbi5cSTsegYYyCE6X4gqdwqn7UY/S/iN/r7hBrGg6EotvfwQ5IqVZtpeWtGj/mMQjIp1flHk/6kNVHdwDCJyZsoayXTpgemIWge7vH8ziSAo2FfjywDSdf9B8g== Received: from BN9PR12MB5273.namprd12.prod.outlook.com (2603:10b6:408:11e::22) by CH0PR12MB8532.namprd12.prod.outlook.com (2603:10b6:610:191::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.13; Wed, 18 Jan 2023 02:50:11 +0000 Received: from BN9PR12MB5273.namprd12.prod.outlook.com ([fe80::2296:10b9:2661:d795]) by BN9PR12MB5273.namprd12.prod.outlook.com ([fe80::2296:10b9:2661:d795%5]) with mapi id 15.20.5986.023; Wed, 18 Jan 2023 02:50:11 +0000 From: Rongwei Liu To: Ferruh Yigit , Matan Azrad , Slava Ovsiienko , Ori Kam , Aman Singh , Yuying Zhang , Andrew Rybchenko , Ivan Malov , "NBU-Contact-Thomas Monjalon (EXTERNAL)" CC: "dev@dpdk.org" , Raslan Darawsheh Subject: RE: [PATCH v7] ethdev: add special flags when creating async transfer table Thread-Topic: [PATCH v7] ethdev: add special flags when creating async transfer table Thread-Index: AQHY+CCrvOGvyt+zc0SCwGdhWlPLPa6jHGMAgAAeFICAAKK7oA== Date: Wed, 18 Jan 2023 02:50:11 +0000 Message-ID: References: <51e583ea-4446-fea5-af74-dfe75d37f05c@oktetlabs.ru> <20221114115946.1074787-1-rongweil@nvidia.com> <27c6183d-1fa5-a4d3-9d5a-081592e9ef5f@amd.com> In-Reply-To: <27c6183d-1fa5-a4d3-9d5a-081592e9ef5f@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BN9PR12MB5273:EE_|CH0PR12MB8532:EE_ x-ms-office365-filtering-correlation-id: 4cc847d3-11a8-4446-d7c0-08daf8feb7a9 x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: AbGwX2kptYWMgmgWa16hnarn1imK7pDVrOSrBg/uVcYAAdpXV80yItkxX0oPGd13JBQJR0n6Zu007E2czLDZ2ZvJbJ4M4LFRgMX8OmOIHlZPDHHo4QJuDz9+MZdPIpPp7xghLF0gszEmfxnKaoDMievgCJlF3crcoc2Z+KkoVNl9DSROR1imKpgrBnArG7i1cx45I2hf/GtmDJG8ixYvhf9waoe/HQBdPOoFmj7MfrNd+QDXvRUVvUkrrIyzt7eUaLQh39q+EgAgjNlTiy9gxSQxJ947NzGYgEdeV4wHJgsEuXWLD/pVe7wY31gYXBBHdpKkaPdsYjq1mYG4v0BO3+5oA5D5jBX/MRlbWDVzjvE3u+Q0d19ZDeKa7A0Diw4Caa1UnQkVSNOlqnMFpvvXKhWxA/XwuXfy2lYFeEvzm6TT/HLx+KP5620oZkzLZvgbJYoh9vJ1vgIe/dmLmbdp+qbIGvzP1KGPGLdVvWjHbcA50YtCtA5xWol3vGZ5dfhbpCjdZIYyVSkcyaHrG0F+eNinNr5bZjeY7O/+C0kYXj1mxM59l/RFYmpZxuSecfbZABWsArQt3upL22qDD5HogrlGgDVsRNZv8adhLCTdiRi/q86o24prcnWhoCIvbs0n0e1BEUCdAHZQWaKVVogmYpUYW4GIgJAHKoVfZQfBOTfwwl4nStsFWgnUoHuh5Wm3Lfo5A8h2avS71yFbUR9bdw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR12MB5273.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(366004)(396003)(346002)(136003)(376002)(39860400002)(451199015)(38100700002)(8936002)(86362001)(38070700005)(66946007)(66476007)(8676002)(66556008)(64756008)(66446008)(76116006)(55016003)(5660300002)(2906002)(52536014)(4326008)(83380400001)(122000001)(33656002)(110136005)(71200400001)(478600001)(54906003)(7696005)(316002)(41300700001)(9686003)(53546011)(6506007)(26005)(186003)(107886003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cDJHaVdYbXVQdVFNZ3RpTFRoUExzek83NlZvOGJUTDR3MDFvbHJkU1MwN0Q4?= =?utf-8?B?MndaTC9nbjVaZ1dUdi9HY25ONUE2L2NIYXFhaG1jNVJLNXlwMysvcEcwYXBN?= =?utf-8?B?NllHVk9iTldER2RPRndpeUpEWU96MSsybHdMZU5zMWVmVXZaY3BOallJQnE3?= =?utf-8?B?djdmUHAzZmpGSVVqeFdWMi9uNWNLMVUyR3R2RlNJNzFYWC93Tkw1b09MREJt?= =?utf-8?B?TWMzekZGQzMwNnVsVFl3RGFucGhRNzZyaFlSWmdlb2x6ZDMvMDluRXBWcUdC?= =?utf-8?B?YnpWS2RIc1h3L1RDTXJoY3R6Wm1wdWpWTEdGVGlHbk55ZUxKV05UUnNOdXRQ?= =?utf-8?B?NEJtU0xaYXg0TllIdWxiQStKMVNpNnpUTzRsKzZmQWVJZkU5UjEvNlNPNm10?= =?utf-8?B?dXBPY3F3WWNFMnRLQmNxeGtwZ0swZ29JVkR6di9MS1R4bzZsdG5QT1dxdWda?= =?utf-8?B?TEFoK2FlVWJZdEtzTEJ6ekhzMjAzUzhnTjJ4L0VsOFZyd0lzZVUxNnVPZUxR?= =?utf-8?B?UmgxNklvNmNGdmlPRHUxc1lxZ3pkZ05TcVZLRXdReVNCejM1RkJVRkJMTFhk?= =?utf-8?B?OWswVUFlaXd5OXQxcUxuUFJHOVFnR0V0SGxuSFZWVGtEVndFSkxock8zRVFv?= =?utf-8?B?cGRYbXRKYTc0MnIwUm5aa3R1VHJVOUZ1elREb0pmYXRjYmpxMSt1RXJEbHUz?= =?utf-8?B?NWhGMXhtNFFtNVlDTlpmNXoyYVFMNXo2V2F3YjNtaUlCQm9tcm9UeW1vdDFG?= =?utf-8?B?Ly9wdUtld3ovSU5RVkNIcU4raVI2UWczWjlrNkJQRWhFTWVweG9iWWN0dlpR?= =?utf-8?B?N0RhNVk1b2FZRm1FS3BHVXQ2bG9qVDRaam1WSEc1QXlZSGhOaEFDMlZyaFN1?= =?utf-8?B?WWUxZDlTZUZycXlCME5RWU5uYldMV1Y3bWlUWWJ6dU0wUUhOTCtMRXl4aG9J?= =?utf-8?B?ZVljc21tQjA3QXQ5RnZweVNxUzF4SFdLWWU2UEhzeEpHRXRDdWFrVVd3THFs?= =?utf-8?B?VTJGNTZRNVFpRENvam1UYkxRYXdERVlhNHA1VHhtdG93N2pKekJueTZ6dzJI?= =?utf-8?B?eGpNbTdrMjZoRGFXanJEci9vS3R2U0lZY3Y2RmFDVEtaRVh3RXVoWW5CbU9Z?= =?utf-8?B?NWtWTUJNQk1uUE5lc1FUWWFoaExxS0lwY3ZZemFMWFBZTVlzTmwya3pBRnFR?= =?utf-8?B?MnJkT051ZC94RTdkYVJ1YjNxaFNHTVBjVWt6VVRpSmRabGZNTnJNZWpoenFI?= =?utf-8?B?UVMrLzRTL0ZGQlQ2WElXRUdZeWV4OTU1d1VWU2tJWEE4NVBLYzNjY21EWjR2?= =?utf-8?B?aE9nSXc4TUY1NFpCOGdGVitIQlpkaWtLdlBxN2kvVlhKeUR1Nmg1eGRXUzZs?= =?utf-8?B?amRiakhsdm5WM0RXQWEwSzNRRGJyTTJrOTZMUzZua3hCRkFMeTlLT2pWN1dl?= =?utf-8?B?OXJ0UmVLSlhkNmV1TW5sYzZRQkVPS05Fa2l3NXFGNTRRbVdpL3dEUFZBYmxH?= =?utf-8?B?QllMQVJKS3h4bUlIMVVBcnFzSmh0Wmx2TzNaaXRlMGc2a05MY1QyUTVWZkp6?= =?utf-8?B?a0tLY2pVWFdOTDZpVEhWc0p5TzR0bjYrbld0YUUwZ1Y3UWZtRENmWVZvNUQy?= =?utf-8?B?OWU5Q0NOOUEvdVNKRlNBbVpQOE9hMStYeXEwdElWaERRMU5FSm1GakFBeEJG?= =?utf-8?B?T24yc1VOckpNNHZiNnd3NXBzWHJ6cGFUVVhxRUV0ZDNJTmNuK2ZDU1h6RVdw?= =?utf-8?B?aDh5SmdQUFlVbmhJYkFYSlNlTDdkcnVBTjd4ZmF1eDc3dXlEVXc1ZVJ6dG9w?= =?utf-8?B?Tkd3czY4NTA5QUpITFVPZy9zd1JUYVpqcUg0aVBERTB3UUFEd21XNGRhMTNU?= =?utf-8?B?Y1dpbllHVmVhbm5nUW5aTWJGczRONTdpTll1dEp6WGZpcjVQcm5CNDlHU1pn?= =?utf-8?B?aCtNZ1IvNEZnL3dCSnhNbGJYdy9xZEJJZGJiL1IzaXFpcVJhOW04a0dTQTUr?= =?utf-8?B?WUtKZHFiSlEwNkNacDIybjBVRTh5OTFYWElSWkJVK25ROXN0SUlkKzgyVU1q?= =?utf-8?B?V3VpOGJHUEJlTGt2cWVyWFZsMVUyVmZMR1VhOERQVERBR0NobVI0K2UwSkZh?= =?utf-8?Q?maJWBVZVCwAvkdAv6RGW078KK?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN9PR12MB5273.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4cc847d3-11a8-4446-d7c0-08daf8feb7a9 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jan 2023 02:50:11.2464 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: LxIS+Y719TpSvQsW6Grc2xYKSo08xpV5c5ph94XI4ZhWaTYoeqBRN/DoPdYaoRmPETpTZ5DcQkzrY2m0ajcXow== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB8532 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 SEkgRmVycnVoOg0KDQpCUg0KUm9uZ3dlaQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+DQo+IFNlbnQ6IFdl ZG5lc2RheSwgSmFudWFyeSAxOCwgMjAyMyAwMTowMg0KPiBUbzogUm9uZ3dlaSBMaXUgPHJvbmd3 ZWlsQG52aWRpYS5jb20+OyBNYXRhbiBBenJhZCA8bWF0YW5AbnZpZGlhLmNvbT47DQo+IFNsYXZh IE92c2lpZW5rbyA8dmlhY2hlc2xhdm9AbnZpZGlhLmNvbT47IE9yaSBLYW0gPG9yaWthQG52aWRp YS5jb20+Ow0KPiBBbWFuIFNpbmdoIDxhbWFuLmRlZXAuc2luZ2hAaW50ZWwuY29tPjsgWXV5aW5n IFpoYW5nDQo+IDx5dXlpbmcuemhhbmdAaW50ZWwuY29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA8 YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+OyBJdmFuIE1hbG92IDxpdmFuLm1hbG92QG9r dGV0bGFicy5ydT47DQo+IE5CVS1Db250YWN0LVRob21hcyBNb25qYWxvbiAoRVhURVJOQUwpIDx0 aG9tYXNAbW9uamFsb24ubmV0Pg0KPiBDYzogZGV2QGRwZGsub3JnOyBSYXNsYW4gRGFyYXdzaGVo IDxyYXNsYW5kQG52aWRpYS5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjddIGV0aGRldjog YWRkIHNwZWNpYWwgZmxhZ3Mgd2hlbiBjcmVhdGluZyBhc3luYyB0cmFuc2Zlcg0KPiB0YWJsZQ0K PiANCj4gRXh0ZXJuYWwgZW1haWw6IFVzZSBjYXV0aW9uIG9wZW5pbmcgbGlua3Mgb3IgYXR0YWNo bWVudHMNCj4gDQo+IA0KPiBPbiAxLzE3LzIwMjMgMzoxMyBQTSwgRmVycnVoIFlpZ2l0IHdyb3Rl Og0KPiA+IE9uIDExLzE0LzIwMjIgMTE6NTkgQU0sIFJvbmd3ZWkgTGl1IHdyb3RlOg0KPiA+PiBJ biBjYXNlIGZsb3cgcnVsZXMgbWF0Y2ggb25seSBvbmUga2luZCBvZiB0cmFmZmljIGluIGEgZmxv dyB0YWJsZSwNCj4gPj4gdGhlbiBvcHRpbWl6YXRpb24gY2FuIGJlIGRvbmUgdmlhIGFsbG9jYXRp b24gb2YgdGhpcyB0YWJsZS4NCj4gPj4gU3VjaCBvcHRpbWl6YXRpb24gaXMgcG9zc2libGUgb25s eSBpZiB0aGUgYXBwbGljYXRpb24gZ2l2ZXMgYSBoaW50DQo+ID4+IGFib3V0IGl0cyB1c2FnZSBv ZiB0aGUgdGFibGUgZHVyaW5nIGluaXRpYWwgY29uZmlndXJhdGlvbi4NCj4gPj4NCj4gPj4gVGhl IHRyYW5zZmVyIGRvbWFpbiBydWxlcyBtYXkgcHJvY2VzcyB0cmFmZmljIGZyb20gd2lyZSBvciB2 cG9ydCwNCj4gPj4gd2hpY2ggbWF5IGNvcnJlc3BvbmQgdG8gdHdvIGtpbmRzIG9mIHVuZGVybGF5 ZXIgcmVzb3VyY2VzLg0KPiA+PiBUaGF0J3Mgd2h5IHRoZSBmaXJzdCB0d28gaGludHMgaW50cm9k dWNlZCBpbiB0aGlzIHBhdGNoIGFyZSBhYm91dA0KPiA+PiB3aXJlIGFuZCB2cG9ydCB0cmFmZmlj IHNwZWNpYWxpemF0aW9uLg0KPiA+PiBXaXJlIG1lYW5zIHRyYWZmaWMgYXJyaXZlcyBmcm9tIHRo ZSB1cGxpbmsgcG9ydCB3aGlsZSB2cG9ydCBtZWFucw0KPiA+PiB0cmFmZmljIGluaXRpYXRlZCBm cm9tIFZGL1NGLg0KPiA+Pg0KPiA+PiBUaGVyZSBhcmUgdHdvIHBvc3NpYmxlIGFwcHJvYWNoZXMg Zm9yIHByb3ZpZGluZyB0aGUgaGludHMuDQo+ID4+IFVzaW5nIElQdjQgYXMgYW4gZXhhbXBsZToN Cj4gPj4gMS4gVXNlIHBhdHRlcm4gaXRlbSBpbiBib3RoIHRlbXBsYXRlIHRhYmxlIGFuZCBmbG93 IHJ1bGVzLg0KPiA+Pg0KPiA+PiAgICBwYXR0ZXJuX3RlbXBsYXRlOiBwYXR0ZXJuIEFOWV9WUE9S VCAvIGV0aCAvIGlwdjQgaXMgMS4xLjEuMSAvIGVuZA0KPiA+PiAgICBhc3luYyBmbG93IGNyZWF0 ZTogcGF0dGVybiBBTllfVlBPUlQgLyBldGggLyBpcHY0IGlzIDEuMS4xLjIgLyBlbmQNCj4gPj4N Cj4gPj4gICAgIkFOWV9WUE9SVCIgbmVlZHMgdG8gYmUgcHJlc2VudCBpbiBlYWNoIGZsb3cgcnVs ZSBldmVuIGlmIGl0J3MNCj4gPj4gICAganVzdCBhIGhpbnQuIE5vIHZhbHVlIHRvIG1hdGNoIGJl Y2F1c2UgbWF0Y2hpbmcgaXMgYWxyZWFkeSBkb25lIGJ5DQo+ID4+ICAgIElQdjQgaXRlbS4NCj4g Pj4NCj4gPj4gMi4gQWRkIHNwZWNpYWwgZmxhZ3MgaW50byB0YWJsZV9hdHRyLg0KPiA+Pg0KPiA+ PiAgICB0ZW1wbGF0ZV90YWJsZSAwIGNyZWF0ZSB0YWJsZV9pZCAwIGdyb3VwIDEgdHJhbnNmZXIg dnBvcnRfb3JpZw0KPiA+Pg0KPiA+PiBBcHByb2FjaCAxIG5lZWRzIHRvIHNwZWNpZnkgdGhlIHBh dHRlcm4gaW4gZWFjaCBmbG93IHJ1bGUgd2hpY2gNCj4gPj4gd2FzdGVzIG1lbW9yeSBhbmQgaXMg bm90IHVzZXIgZnJpZW5kbHkuDQo+ID4+IFRoaXMgcGF0Y2ggdGFrZXMgdGhlIDJuZCBhcHByb2Fj aCBhbmQgaW50cm9kdWNlcyBvbmUgbmV3IG1lbWJlcg0KPiA+PiAic3BlY2lhbGl6ZSIgaW50byBy dGVfZmxvd190YWJsZV9hdHRyIHRvIGluZGljYXRlIHBvc3NpYmxlIGZsb3cgdGFibGUNCj4gPj4g b3B0aW1pemF0aW9uLg0KPiA+Pg0KPiA+PiBCeSBkZWZhdWx0LCB0aGVyZSBpcyBubyBoaW50LCBz byB0aGUgYmVoYXZpb3Igb2YgdGhlIHRyYW5zZmVyIGRvbWFpbg0KPiA+PiBkb2Vzbid0IGNoYW5n ZS4NCj4gPj4gVGhlcmUgaXMgbm8gZ3VhcmFudGVlIHRoYXQgdGhlIGhpbnQgd2lsbCBiZSB1c2Vk IGJ5IHRoZSBQTUQuDQo+ID4+DQo+ID4+IFNpZ25lZC1vZmYtYnk6IFJvbmd3ZWkgTGl1IDxyb25n d2VpbEBudmlkaWEuY29tPg0KPiA+PiBBY2tlZC1ieTogT3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNv bT4NCj4gPg0KPiA+IEhpIEFuZHJldywgSXZhbiwNCj4gPg0KPiA+IERvIHlvdSBoYXZlIG9iamVj dGlvbi9jb21tZW50IHRvIGxhdGVzdCB2ZXJzaW9uLCBpZiBub3QgSSB3aWxsIHByb2NlZWQNCj4g PiB3aXRoIHBhdGNoPw0KPiA+DQo+IA0KPiBCVFcsIHRoZXJlIGlzIGFuIGltcGxlbWVudGF0aW9u IG9mIHRoaXMgZmxhZyBpbiBzb21lIGRyaXZlciwgcmlnaHQ/DQpZZXMsIE5WSURJQSBOSUMgaGFz IGFuIGltcGxlbWVudGF0aW9uIHJlYWR5LiAgIFdpbGwgcGFzcyB0aGUgbmV3IFJURSB0YWJsZSBh dHRyaWJ1dGUgdG8gUE1EIG9uY2UgQVBJIGFjY2VwdGVkLg0K