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 EF2AC41B9E; Wed, 1 Feb 2023 12:12:44 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DBD18406A2; Wed, 1 Feb 2023 12:12:44 +0100 (CET) Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on2058.outbound.protection.outlook.com [40.107.100.58]) by mails.dpdk.org (Postfix) with ESMTP id 7FEFB4021F for ; Wed, 1 Feb 2023 12:12:43 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gmiqurPfCDysMgO7P2cX47ZoCzr1IC4qKDPRMLeGM+ZiyWOSf6ZNrx3/P1U0gy/TqBuVg9N2aPnijnqeyFlqODFeDeWlo5LUYVOtLCpXXcQwT2Hk0AQ4DjbASwdIruv3sFwB6vGz5iC1Zk0gntbq/dEHYnNyVNz+euBdzmypksd+cWqzdsVNChfR52+uiTtviK+iJVA9IwYCz33RK/4xYzb/VeYKhFtMbj5/1PdTIsXf2dKkZramqx3xJ67fINaOuWxEu/3rWCa3b1zxi3s/ltUInmlEnZpkHGix8cf1+GZpQgtuAqsvkWdegpYZTW9AbibRFTm7eynM9l+2PiANqg== 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=ugFyVmrXTK/Vv+eelz6SpGGIbYw3DQHx1mfy5HIriy0=; b=cZwEVfC9aT8NPqwWbg5GPGy9h/Qom2ukN7HCC5zVUAE9+vdO//e2VLYmga0QOhJ6hAZ94f9OZybX9OuycNGougrsuHmSrZvdshu7ioJdN56N7Xbk7YG4fbAy7tvzp0j0i0hFAmcg/m3KqOOfZI8B/8ZvV2nSwMDAi3iP2ub2o5Ph4CvwgbE0UPJE7Lx6fiX+8bDzSI0eDwBrGdqgQooiSPks07myuByMHPa69teaYc/D+jZf/bsyShZuYE+RfnVHH/DU7ayQTNGUmp36mjM4feW4scq4YbvnvYUsA7cJGBgrQRlWt/ubvoQ26shZba8Z02xZTYCkQ5N62RUf4Bt87g== 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=ugFyVmrXTK/Vv+eelz6SpGGIbYw3DQHx1mfy5HIriy0=; b=Z7OOO8i5RCZecYD3yZ0icT36gQ7Aq70A0EVK3Ut/5kwmOH/a/gnzQYRtcPBcrr+Y8fT8Ds8cbudwIp3u4yedwhYL2lhEhZkIno5y5fKX3mhhpXPZ3N4CHlUfXJ76ncRWFhzJxR4r0VuRWeJjdIcxSRd9V6VIo1a47lU67+iSisFVM9T/ZvhZ37GN7oZ6sOCUt2ZvFp/ky/x292NFQAnqRvVzUi/WNLvrdUqoJL1ZlS8FdqJUYLDw2nRQKCiL2sXFjpX4hHyt9ZfYS0XzfTEN9vjAc2V+WWPqItrtuubOWbXbesTDy1aMnugCxyJnflmD+sr4RJjSr6CnUDfva5tyWQ== Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) by LV2PR12MB5895.namprd12.prod.outlook.com (2603:10b6:408:173::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.25; Wed, 1 Feb 2023 11:12:41 +0000 Received: from MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::6ba4:b9e8:d439:59e4]) by MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::6ba4:b9e8:d439:59e4%4]) with mapi id 15.20.6043.036; Wed, 1 Feb 2023 11:12:40 +0000 From: Ori Kam To: "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Ferruh Yigit , Andrew Rybchenko CC: Rongwei Liu , Matan Azrad , Slava Ovsiienko , Aman Singh , Yuying Zhang , "dev@dpdk.org" , Raslan Darawsheh , "jerinj@marvell.com" 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+CCnxfrW4n46cUa7l6ctLqznmK6kLK+AgACULoCAFZu1AIAAC4eAgAAARjA= Date: Wed, 1 Feb 2023 11:12:40 +0000 Message-ID: References: <51e583ea-4446-fea5-af74-dfe75d37f05c@oktetlabs.ru> <13070250.ZYm5mLc6kN@thomas> <1339e012-0e6a-81dc-70e7-a08c51a23725@oktetlabs.ru> <5879621.alqRGMn8q6@thomas> In-Reply-To: <5879621.alqRGMn8q6@thomas> Accept-Language: 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: MW2PR12MB4666:EE_|LV2PR12MB5895:EE_ x-ms-office365-filtering-correlation-id: fd1e542d-4e7a-4d53-c34a-08db04453bd1 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: 1YFcRmZ8N6A6lDIpqDZK28lny5CoUeERLPil0NDg4l/XKCFBmP+eMenpF4pkDJW1YTLVgsIVsoU12JqBlCzDhAPVHsdpL+MHzGzNa3EUbzIzoTwGxAAXHUomQVkZ6LOPyyDMno44/s96t9Da5ZvRgUInSPHhYxITq9UreDJki6qBSbjMNhrYK6p3g8Tghc8fpyRzLSAJA1SeQb5yxjWHqOKYg1T0sMv/Pel4Aso66HYarmAI8tBY97Zz3Kjc3CGquIdk3500+0vd3U8qZ5g9AArhF3mhm42CTllny4YaiXwAaR1UKzfVY91c2yQ2HHkoLrMMTNOiNy95ISjA66nD3NZM0iQuKkJfG0bTqoQgC2wMleJTFQRbo2epHbDn7PzYr9ENfnELN9YgRCpk9p5ojHEan83jPUoYp+am4tcAu9EDx073/qIYCi6FVmxzSNvIqGT2xuPJl6jL3L0sQL75OZbQtQDfKylUfDCuofmujL7sHpxdmUyLKSG4WUVH9x6ZeXx3GMqtN5PXBIwSwhGNFrap276C1ZirMhHV2Bq4L+1cq8gC6OI7kQIKmhyA5rCetLJEhJWeFCJuCaJDO90IFtZyrRdhSvTV01JgjS4aiVm1Dos5dWT4fsQwPXHSUke5wBudihlt7UB0SLwHtaFgC4eO0YtgilyohJ/b8NZwns4/tBeDHAEKlV8zQczKFLVbdk+e1j8yeBXFdm1j5hmixg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW2PR12MB4666.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(4636009)(136003)(346002)(366004)(39860400002)(376002)(396003)(451199018)(33656002)(7696005)(71200400001)(54906003)(110136005)(316002)(53546011)(6506007)(478600001)(5660300002)(2906002)(8936002)(66476007)(66446008)(64756008)(4326008)(66556008)(8676002)(66946007)(76116006)(52536014)(41300700001)(122000001)(38100700002)(38070700005)(55016003)(86362001)(26005)(9686003)(186003)(83380400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NWNkaVdxSm02eUJva3ZMekxnb3FDd1M0QWgyNjNqM0RBLzAvUXU3dVdCLzVM?= =?utf-8?B?WEs1OU1ldGt3L0dCU05ObDJ4UHVrZVlzQXZCZVhtVFUxWHY5aXMzQUgwRW5l?= =?utf-8?B?SnQycUFCMUdOSlhRY1lLWmdFR1YvMy9oSnNyeG5ldTJVWTRxNm1VSE1yanJp?= =?utf-8?B?dng5Sm1iMmZMdGxQM2tjQlRXMzdPNDh4U0pkR1MzMTE2NEthamcvZUxoc1V5?= =?utf-8?B?TFB4RC9KWDI3ckRZZW81cmZhME5BRktvTllhYkxtK0hkRHE1N3k5NUlPWkRZ?= =?utf-8?B?K3JjWCtLNGF1Zm13ZlBYcTd2VWIxZUh0UHhDNC9KaHRCN2Rybms5Qnp3L0d4?= =?utf-8?B?NmtuNVlycFZXaWFNMnFhQ0d1ZFpaOE9OTUxENlNhZW5aL3lZUXRJejZsWW5l?= =?utf-8?B?SUszY3hoKzEvY2U3Ym9pQnZZbHJXaUVGNVp4b1M3dkowNno2ZEd0amdKZXlK?= =?utf-8?B?R3FOSWcyRW1EQnFZT3ZZZWk3NzhKa1pHZTBVcjR5eFNUNTE1TkU0THZYT0Vv?= =?utf-8?B?VUF2OVVtV09acFhlL083NVYvSTJid0s3TFVjOG5hcDU2QmFwZnlVR0JiaFFH?= =?utf-8?B?NUlSOWs5SzBsWVBuNUx3SythYnFvQ2tEdGhUVER6eVRLdDd3M2lyVHBoTU5Q?= =?utf-8?B?enJtcHh5aTZnME5xbm1OZWRYbUhJQVF6WnoyUzA2K0s3L2V3K2FNZXk4VEhL?= =?utf-8?B?SUpib2ROTDF3emY4a2xWbXQyWENOVVJTd0Y2dkxEQTJFMUlyNklvQXZZdnQx?= =?utf-8?B?ZkphRmcrNmRxSEpsd0w4K0F4K0dUWTVCY3kzelJJTk4ycjVnRWhJaU5TWmJ6?= =?utf-8?B?aUtEK1FhU1RXa0pxTEphMzhkRGlGMEZYQXRGOWlqQk4rdUFqRFFONHhtdFpo?= =?utf-8?B?QXpERURta1dnQ1hqaktNVExHTDE0cDdCT1JhZWxhSTh0aWtaTEIwU3FJbEMx?= =?utf-8?B?MEVnOEtEY1lwTEExakpTKzZrcWJwZWI2M2hyelpuL3JoR1h4NmRTUDFZdWg3?= =?utf-8?B?UmRWdzNkWGpZL2o0RVpadzREbXFHNUdnbmZMVlkxbFgrVUw0RnlBWW9LR2tv?= =?utf-8?B?MDlNbEh1alFnaDQzZDRURmFXUkxJZklMTSs2dWJCNTZkRlQxWERNVE1HRXI2?= =?utf-8?B?TGlOWmU4K1RTSytJNFVvb0g3Rm1wWEc5NzgzS215VkhmMDJ0WDV2Wm1jVThR?= =?utf-8?B?ZVNGR1NZNnB3Um9KVjZYM3gzRXA2QTBrZk5VUXlUVW1LelFjdzVmUXovU3dw?= =?utf-8?B?UUZLTUovTXh2UXM0VjUzbkFaWnJUMnBycm8zcmZZSE9VOUIxSG9KMXMrZE9F?= =?utf-8?B?eTJNTnBnM0VSbE9sV0ZOdGxqWFFhMGF1ejhsUzRlRUtobHBSbGhpOW9hRjBU?= =?utf-8?B?MWJvdmhlcXdMVTBmWVRnQUlKekdmSks4Y3o1dlRSNkRsTVBnTm5nQk5rL0lu?= =?utf-8?B?dXpBU3lzYUdOWUNiV1hkSE9Sb1ZiZTJhNktVTEFVS0FHcUk1U2p3QjBCZG1Z?= =?utf-8?B?bXN6OFdGVEhxRHpZVTk1dVlIeEZnTUhSVlhmT3RqTExyeDAzOTV6YXpJb2x6?= =?utf-8?B?Wk5KdmVKbDZucUJ2NlNJOUdhV1NNSkxRR3QzcUJYMTlQWGhJYW9uQUR6R0or?= =?utf-8?B?enNqVGJVWFR3LzR3S0I0Ui81cEZCd0FoNGtLQ0t4Yng4b20vSGJZdzNkMTN2?= =?utf-8?B?clBlSWpjUktHblh6SE9FamZIQWxsSjJDUjV3UDFWSTNReGN3OGdDTHZTSlJL?= =?utf-8?B?SW5RL0lwODVYcnlQYVVVYzhuUkd4UUthWmp5VzYrU2VCM3FnWE43R2ZPejcz?= =?utf-8?B?MjNDYVJFRW9BalFZaXFOS2lUK3VCaUh6OUJ0Uy9jL29ZZFFsQzkrWDQ3aW8x?= =?utf-8?B?QmVLbnJJNkd3SjJXREIvT0pWQ3krcUxBdUI5WERZQitnVEs1YS8yaXZDTDI0?= =?utf-8?B?NjBXNnlsaGNKVHgwTHV6ZU16d3Q5dUdkK1dDdzk5ZW1BTGtLLzd6VU8vZVNi?= =?utf-8?B?T3AyWUNsYTRWZjFraCtzY0g0cUxlRUlSeUFCdjdTMHo4TDRoMW1iaGc2VVZU?= =?utf-8?B?Mm9Sb1hXUjg5Y3ZEMllYNjVQN2czMHlkSTJjamFCUU9oNmNxZjBHWlJyVGVz?= =?utf-8?Q?iBSQC/CT8Ple6Aga1d8hmL/nb?= 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: MW2PR12MB4666.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd1e542d-4e7a-4d53-c34a-08db04453bd1 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Feb 2023 11:12:40.5601 (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: q3OWtd1ZDgAxGEv71Vxi+/krNiA9G2Dve8GGgJihy16LkPPnYqo3lpljJjkJ31XnuifUkK/ntprXS41smC3McQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5895 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 SGkgDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogVGhvbWFzIE1vbmph bG9uIDx0aG9tYXNAbW9uamFsb24ubmV0Pg0KPiBTZW50OiBXZWRuZXNkYXksIDEgRmVicnVhcnkg MjAyMyAxMjo1OQ0KPiANCj4gMDEvMDIvMjAyMyAxMToxNywgQW5kcmV3IFJ5YmNoZW5rbzoNCj4g PiBPbiAxLzE4LzIzIDE5OjE4LCBUaG9tYXMgTW9uamFsb24gd3JvdGU6DQo+ID4gPiAxOC8wMS8y MDIzIDA4OjI4LCBBbmRyZXcgUnliY2hlbmtvOg0KPiA+ID4+IE9uIDExLzE0LzIyIDE0OjU5LCBS b25nd2VpIExpdSB3cm90ZToNCj4gPiA+Pj4gSW4gY2FzZSBmbG93IHJ1bGVzIG1hdGNoIG9ubHkg b25lIGtpbmQgb2YgdHJhZmZpYyBpbiBhIGZsb3cgdGFibGUsDQo+ID4gPj4+IHRoZW4gb3B0aW1p emF0aW9uIGNhbiBiZSBkb25lIHZpYSBhbGxvY2F0aW9uIG9mIHRoaXMgdGFibGUuDQo+ID4gPj4+ IFN1Y2ggb3B0aW1pemF0aW9uIGlzIHBvc3NpYmxlIG9ubHkgaWYgdGhlIGFwcGxpY2F0aW9uIGdp dmVzIGEgaGludA0KPiA+ID4+PiBhYm91dCBpdHMgdXNhZ2Ugb2YgdGhlIHRhYmxlIGR1cmluZyBp bml0aWFsIGNvbmZpZ3VyYXRpb24uDQo+ID4gPj4+DQo+ID4gPj4+IFRoZSB0cmFuc2ZlciBkb21h aW4gcnVsZXMgbWF5IHByb2Nlc3MgdHJhZmZpYyBmcm9tIHdpcmUgb3IgdnBvcnQsDQo+ID4gPj4+ IHdoaWNoIG1heSBjb3JyZXNwb25kIHRvIHR3byBraW5kcyBvZiB1bmRlcmxheWVyIHJlc291cmNl cy4NCj4gPiA+Pj4gVGhhdCdzIHdoeSB0aGUgZmlyc3QgdHdvIGhpbnRzIGludHJvZHVjZWQgaW4g dGhpcyBwYXRjaCBhcmUgYWJvdXQNCj4gPiA+Pj4gd2lyZSBhbmQgdnBvcnQgdHJhZmZpYyBzcGVj aWFsaXphdGlvbi4NCj4gPiA+Pj4gV2lyZSBtZWFucyB0cmFmZmljIGFycml2ZXMgZnJvbSB0aGUg dXBsaW5rIHBvcnQgd2hpbGUgdnBvcnQgbWVhbnMNCj4gPiA+Pj4gdHJhZmZpYyBpbml0aWF0ZWQg ZnJvbSBWRi9TRi4NCj4gPiA+Pj4NCj4gPiA+Pj4gVGhlcmUgYXJlIHR3byBwb3NzaWJsZSBhcHBy b2FjaGVzIGZvciBwcm92aWRpbmcgdGhlIGhpbnRzLg0KPiA+ID4+PiBVc2luZyBJUHY0IGFzIGFu IGV4YW1wbGU6DQo+ID4gPj4+IDEuIFVzZSBwYXR0ZXJuIGl0ZW0gaW4gYm90aCB0ZW1wbGF0ZSB0 YWJsZSBhbmQgZmxvdyBydWxlcy4NCj4gPiA+Pj4NCj4gPiA+Pj4gICAgICBwYXR0ZXJuX3RlbXBs YXRlOiBwYXR0ZXJuIEFOWV9WUE9SVCAvIGV0aCAvIGlwdjQgaXMgMS4xLjEuMSAvIGVuZA0KPiA+ ID4+PiAgICAgIGFzeW5jIGZsb3cgY3JlYXRlOiBwYXR0ZXJuIEFOWV9WUE9SVCAvIGV0aCAvIGlw djQgaXMgMS4xLjEuMiAvIGVuZA0KPiA+ID4+Pg0KPiA+ID4+PiAgICAgICJBTllfVlBPUlQiIG5l ZWRzIHRvIGJlIHByZXNlbnQgaW4gZWFjaCBmbG93IHJ1bGUgZXZlbiBpZiBpdCdzDQo+ID4gPj4+ ICAgICAganVzdCBhIGhpbnQuIE5vIHZhbHVlIHRvIG1hdGNoIGJlY2F1c2UgbWF0Y2hpbmcgaXMg YWxyZWFkeSBkb25lIGJ5DQo+ID4gPj4+ICAgICAgSVB2NCBpdGVtLg0KPiA+ID4+Pg0KPiA+ID4+ PiAyLiBBZGQgc3BlY2lhbCBmbGFncyBpbnRvIHRhYmxlX2F0dHIuDQo+ID4gPj4+DQo+ID4gPj4+ ICAgICAgdGVtcGxhdGVfdGFibGUgMCBjcmVhdGUgdGFibGVfaWQgMCBncm91cCAxIHRyYW5zZmVy IHZwb3J0X29yaWcNCj4gPiA+Pj4NCj4gPiA+Pj4gQXBwcm9hY2ggMSBuZWVkcyB0byBzcGVjaWZ5 IHRoZSBwYXR0ZXJuIGluIGVhY2ggZmxvdyBydWxlIHdoaWNoIHdhc3Rlcw0KPiA+ID4+PiBtZW1v cnkgYW5kIGlzIG5vdCB1c2VyIGZyaWVuZGx5Lg0KPiA+ID4+PiBUaGlzIHBhdGNoIHRha2VzIHRo ZSAybmQgYXBwcm9hY2ggYW5kIGludHJvZHVjZXMgb25lIG5ldyBtZW1iZXINCj4gPiA+Pj4gInNw ZWNpYWxpemUiIGludG8gcnRlX2Zsb3dfdGFibGVfYXR0ciB0byBpbmRpY2F0ZSBwb3NzaWJsZSBm bG93IHRhYmxlDQo+ID4gPj4+IG9wdGltaXphdGlvbi4NCj4gPiA+Pg0KPiA+ID4+IFRoZSBhYm92 ZSBkZXNjcmlwdGlvbiBpcyBtaXNsZWFkaW5nLiBJdCBhbHRlcm5hdGVzIG9wdGlvbnMgKDEpDQo+ ID4gPj4gYW5kICgyKSwgYnV0IGluIGZhY3QgKDIpIHJlcXVpcmVzICgxKSBhcyB3ZWxsLg0KPiA+ ID4NCj4gPiA+IFllcyB0aGUgYWJvdmUgZGVzY3JpcHRpb24gbWF5IGJlIG1pc2xlYWRpbmcNCj4g PiA+IGFuZCBpdCBzZWVtcyB5b3UgYXJlIG1pc2xlYWRlZCA6KQ0KPiA+DQo+ID4gSXQgaXMgbm90 IG15IGludGVudGlvbi4gSWYgaXQgaXMgb25seSBteSBwcm9ibGVtLCBJJ20gT0sgdG8NCj4gPiBz dGVwIGJhY2suDQo+IA0KPiBJdCdzIE9LIHRvIGV4cGxhaW4gYW5kIGNoZWNrIGV2ZXJ5dGhpbmcg aXMgT0ssIG5vIHdvcnJpZXMuDQo+IFRoYW5rcyBmb3IgcmV2aWV3aW5nLg0KPiANCj4gPiA+IEkg d2lsbCBleHBsYWluIGJlbG93IHdoeSB0aGUgb3B0aW9uICgyKSBkb2Vzbid0IHJlcXVpcmUgKDEp Lg0KPiA+ID4gSSB0aGluayB3ZSBzaG91bGQgYXBwbHkgdGhlIHNhbWUgZXhhbXBsZSB0byBib3Ro IGNhc2VzIHRvIG1ha2UgaXQgY2xlYXI6DQo+ID4gPg0KPiA+ID4gMS4gVXNlIHBhdHRlcm4gaXRl bSBpbiBib3RoIHRlbXBsYXRlIHRhYmxlIGFuZCBmbG93IHJ1bGVzOg0KPiA+ID4NCj4gPiA+ICAg ICB0ZW1wbGF0ZSB0YWJsZSAzID0gdHJhbnNmZXIgcGF0dGVybiBBTllfVlBPUlQgLyBldGggLyBp cHY0IHNyYyBpcw0KPiAyNTUuMjU1LjI1NS4yNTUgLyBlbmQNCj4gPiA+ICAgICBmbG93IHJ1bGUg PSB0ZW1wbGF0ZV90YWJsZSAzIHBhdHRlcm4gQU5ZX1ZQT1JUIC8gZXRoIC8gaXB2NCBzcmMgaXMN Cj4gMS4xLjEuMSAvIGVuZA0KPiA+ID4NCj4gPiA+ICAgICBUaGUgcGF0dGVybiB0ZW1wbGF0ZSAz IHdpbGwgYmUgdXNlZCBvbmx5IHRvIG1hdGNoIGZsb3dzIGNvbWluZyBmcm9tDQo+IHZwb3J0cy4N Cj4gPiA+ICAgICBBTllfVlBPUlQgbmVlZHMgdG8gYmUgcHJlc2VudCBpbiBlYWNoIGZsb3cgcnVs ZS4NCj4gPg0KPiA+IEl0IGxvb2tzIGxpa2UgSSBsb3N0IHNvbWV0aGluZyBoZXJlLiBXaHkgZG8g d2UgbmVlZCB0byBzcGVjaWZ5DQo+ID4gaXQgaW4gZWFjaCBmbG93IHJ1bGUgaWYgdGhlIG1hdGNo aW5nIGlzIGFscmVhZHkgZml4ZWQgaW4NCj4gPiB0ZW1wbGF0ZSB0YWJsZT8NCj4gDQo+IEkgdGhp bmsgdGhhdCdzIGhvdyB0ZW1wbGF0ZSB0YWJsZXMgYXJlIGRlc2lnbmVkLg0KPiBPcmksIHBsZWFz ZSBjb3VsZCB5b3UgcG9pbnQgdXMgdG8gdGhlIHJlbGV2YW50IGRvY3VtZW50YXRpb24/DQo+IA0K DQpUd28gdGhpbmdzOg0KMS4gd2UgZG9uJ3QgaGF2ZSBhdCB0aGlzIHBvaW50IGEgd2F5IGluIHRo ZSBydGVfZmxvdyB0ZW1wbGF0ZSB0YWJsZXMgYSB3YXkgdG8gc2V0IGEgZml4IG1hdGNoLg0KTWVh bmluZyB0byBzYXkgYWxsIHJ1bGVzIHNob3VsZCBtYXRjaCBpcCBzcmMgPSB4DQpXaGVuIHdlIGNy ZWF0ZSBhIHRlbXBsYXRlIHdlIGFyZSBqdXN0IHNheWluZyBvbiB3aGljaCBmaWVsZHMvaXRlbXMg d2Ugd2FudCB0byBtYXRjaA0Kbm90IHRoZSB2YWx1ZS4NClNvIGlmIGlwIHNyYyBpcyBtYXNrZWQg aXQgbWVhbiB0aGF0IHdlIHdpbGwgd2FudCB0byBtYXRjaCBvbiB0aGUgaXAgc3JjIGJ1dCBlYWNo IHJ1bGUNCndpbGwgc3BlY2lmeSB0aGUgZXhhY3QgdmFsdWUuDQpTaWRlIG5vdGUgSW4gdGhlIGFj dGlvbiB3ZSBkbyBoYXZlIGEgd2F5IHRvIHNldCBmaXhlZCBhY3Rpb24gZm9yIHRoaXMgdGVtcGxh dGUuDQoNCjIuIEkgdGhpbmsgaW4gdGhlIGFib3ZlIGV4YW1wbGUsIHRoZSBpZGVhIGlzIHRvIHNo b3cgdGhhdCB0aGUgc3JjIG1hcmtzIHRoZSBWTSAodnBvcnQpDQpUaGlzIGlzIHdoeSB3ZSBuZWVk IHRvIG1hdGNoIG9ubHkgb24gdHJhZmZpYyBjb21pbmcgZnJvbSBWTSBhbmQgbm90IHdpcmUNCnNp bmNlIGlmIHRoZSBzcmMgaXMgY29taW5nIGZyb20gdXBsaW5rIGl0IGRvZXNuJ3QgaGF2ZSBhbnl0 aGluZyB0byBkbyB3aXRoIHRoZSByZXF1ZXN0ZWQgcnVsZS4NCiANCj4gPiA+ICAgICBBTllfVlBP UlQgbWF0Y2hpbmcgaXMgcmVkdW5kYW50IHdpdGggSVAgc3JjIDEuMS4xLjEgYmVjYXVzZQ0KPiA+ ID4gICAgIHRoZSB1c2VyIGtub3dzIDEuMS4xLjEgaXMgdGhlIElQIG9mIGEgdnBvcnQuDQo+ID4N Cj4gPiBXaGF0IHNob3VsZCBoYXBwZW4gaWYgYSBwYWNrZXQgd2l0aCBzcmMgSVAgMS4xLjEuMSBj b21lcyBmcm9tDQo+ID4gdGhlIHdpcmU/IEFsbW9zdCBhbnl0aGluZyBjb3VsZCBjb21lIGZyb20g bmV0d29yay4NCj4gDQo+IEl0IGEgcGFja2V0IGNvbWVzIGZyb20gYSB3aXJlZCBwb3J0IEFORA0K PiB0aGUgUE1EIGRpZCBhbiBvcHRpbWl6YXRpb24gYmFzZWQgb24gdGhpcyBoaW50LA0KPiB0aGVu IHRoZSBwYWNrZXQgY291bGQgYmUgbm90IG1hdGNoZWQuDQoNClRoaXMgaXMgdGhlIGlkZWEgdGhl IHJ1bGUgd2lsbCBub3QgbWF0Y2ggb24gaXQuIFNlZSBteSBhYm92ZSBjb21tZW50Lg0KPiANCj4g PiA+IDIuIEFkZCBzcGVjaWFsaXphdGlvbiBmbGFnIGludG8gdGVtcGxhdGUgdGFibGUgYXR0cmli dXRlOg0KPiA+ID4NCj4gPiA+ICAgICB0ZW1wbGF0ZSB0YWJsZSAzID0gdHJhbnNmZXIgVlBPUlRf T1JJRyBwYXR0ZXJuIGV0aCAvIGlwdjQgc3JjIGlzDQo+IDI1NS4yNTUuMjU1LjI1NSAvIGVuZA0K PiA+ID4gICAgIGZsb3cgcnVsZSA9IHRlbXBsYXRlX3RhYmxlIDMgcGF0dGVybiBldGggLyBpcHY0 IHNyYyBpcyAxLjEuMS4xIC8gZW5kDQo+ID4gPg0KPiA+ID4gICAgIFRoZSBwYXR0ZXJuIHRlbXBs YXRlIDMgY2FuIGJlIHVzZWQgb25seSB0byBtYXRjaCBmbG93cyBjb21pbmcgZnJvbQ0KPiB2cG9y dHMuDQo+ID4NCj4gPiBJbiB0aGlzIGNhc2UgaXQgaXMgaW50ZXJlc3RpbmcgaG93IGl0IHdpbGwg YmVoYXZlIG9uOg0KPiA+IGEgTklDIHdoaWNoIGRvZXMgbm90IHN1cHBvcnQgVlBPUlRfT1JJRyBh bmQganVzdCBpZ25vcmVzIGl0DQo+IA0KPiBJZiB0aGUgaGludCBpcyBpZ25vcmVkLCBhbGwgcGFj a2V0cyB3aWxsIGhpdCB0aGUgcnVsZS4NCj4gDQorMQ0KPiA+IFZTDQo+ID4gYSBOSUMgd2hpY2gg c3VwcG9ydCBWUE9SVF9PUklHIGFuZCB0YWtlcyBpdCBpbnRvIGFjY291bnQuDQo+IA0KPiBJZiB0 aGUgaGludCBpcyB0YWtlbiBpbnRvIGFjY291bnQsDQo+IGl0IGlzIHBvc3NpYmxlIHRoYXQgd2ly ZSBwYWNrZXRzIGRvIG5vdCBoaXQgdGhpcyBydWxlLA0KPiBidXQgd2UgZG9uJ3QgcmVhbGx5IGtu b3csIGl0IGlzIGFuIGludGVybmFsIGRyaXZlciBvcHRpbWl6YXRpb24uDQo+IA0KPiANCj4gPiA+ PiAoMikgaXMgc2ltcGx5IGRvbmUgb24gZGlmZmVyZW50IGxldmVsIC0gbXVjaCBlYXJsaWVyLCBi ZWZvcmUNCj4gPiA+PiBmbG93IHJ1bGVzIGNyZWF0aW9uLiBTaW5jZSByZXNvdXJjZXMgYWxsb2Nh dGlvbiBpcyBhc3N1bWVkIHRvDQo+ID4gPj4gYmUgZG9uZSBvbiB0YWJsZSBjcmVhdGlvbiwgd2Ug bmVlZCB0byBrbm93IHRoZSBwdXJwb3NlIG9mIHRoZQ0KPiA+ID4+IHRhYmxlIGluIGFkdmFuY2Ug dG8gb3B0aW1pemUgcmVzb3VyY2VzIGFsbG9jYXRpb24uDQo+ID4gPg0KPiA+ID4gQWN0dWFsbHkg aW4gYm90aCBjYXNlcyB3ZSBnZXQgdGhlIGhpbnQgYXQgdGVtcGxhdGUgdGFibGUgY3JlYXRpb24u DQo+ID4gPiBCdXQgaW4gc29sdXRpb24gMiB3ZSBhcmUgbm90IGNyZWF0aW5nIGEgcmVkdW5kYW50 IHBhdHRlcm4gbWF0Y2hpbmcsDQo+ID4gPiBhbmQgd2UgZG9uJ3QgbmVlZCB0byBjaGVjayBpdCBp biBmbG93IHJ1bGVzLCBzbyBpdCBpcyBtb3JlIGVmZmljaWVudC4NCj4gPiA+DQo+ID4gPj4gU2lu Y2UgKDIpIGlzICpub3QgYSBtYXRjaGluZyBjcml0ZXJpYSosIGJ1dCBqdXN0IGEgaGludCwgKDEp DQo+ID4gPj4gZmxvdyBydWxlcyBtdXN0IGhhdmUgbWF0Y2hpbmcgY3JpdGVyaWEgYW55d2F5Lg0K PiA+ID4NCj4gPiA+IE5vIHdlIGRvbid0IG5lZWQgdGhlIG1hdGNoaW5nIGNyaXRlcmlhIEFOWV9W UE9SVCB3aXRoIHNvbHV0aW9uICgyKQ0KPiA+ID4gYmVjYXVzZSB3ZSBhcmUgYWxyZWFkeSBtYXRj aGluZyBvbiBhbiBJUCBzcmMgd2hpY2ggaXMgYSB2cG9ydC4NCj4gPiA+DQo+ID4gPj4+ICtUYWJs ZSBBdHRyaWJ1dGU6IFNwZWNpYWxpemUNCj4gPiA+Pj4gK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5e Xl5eXg0KPiA+ID4+PiArDQo+ID4gPj4+ICtBcHBsaWNhdGlvbiBjYW4gaGVscCBvcHRpbWl6aW5n IHVuZGVybGF5ZXIgcmVzb3VyY2VzIGFuZCBpbnNlcnRpb24NCj4gcmF0ZQ0KPiA+ID4+PiArYnkg c3BlY2lhbGl6aW5nIHRlbXBsYXRlIHRhYmxlLg0KPiA+ID4+PiArU3BlY2lhbGl6YXRpb24gaXMg ZG9uZSBieSBwcm92aWRpbmcgaGludHMNCj4gPiA+Pj4gK2luIHRoZSB0ZW1wbGF0ZSB0YWJsZSBh dHRyaWJ1dGUgYGBzcGVjaWFsaXplYGAuDQo+ID4gPj4+ICsNCj4gPiA+Pj4gK1RoaXMgYXR0cmli dXRlIGlzIG5vdCBtYW5kYXRvcnkgZm9yIGVhY2ggUE1EIHRvIGltcGxlbWVudC4NCj4gPiA+Pj4g K0lmIGEgaGludCBpcyBub3Qgc3VwcG9ydGVkLCBpdCB3aWxsIGJlIHNpbGVudGx5IGlnbm9yZWQs DQo+ID4gPj4+ICthbmQgbm8gc3BlY2lhbCBvcHRpbWl6YXRpb24gaXMgZG9uZS4NCj4gPiA+Pj4g Kw0KPiA+ID4+PiArSWYgYSB0YWJsZSBpcyBzcGVjaWFsaXplZCwgdGhlIGFwcGxpY2F0aW9uIHNo b3VsZCBtYWtlIHN1cmUgdGhlIHJ1bGVzDQo+ID4gPj4+ICtjb21wbHkgd2l0aCB0aGUgdGFibGUg YXR0cmlidXRlLg0KPiA+ID4+DQo+ID4gPj4gSWYgYSB0YWJsZSBpcyBzcGVjaWFsaXplZCwgdGhl IGFwcGxpY2F0aW9uIG11c3QgbWFrZSBzdXJlIHRoYXQNCj4gPiA+PiBhbGwgZmxvdyBydWxlcyBh ZGRlZCB0byB0aGUgdGFibGUgaGF2ZSBwYXR0ZXJuIHdoaWNoIGltcGxpZXMNCj4gPiA+PiBjb3Jy ZXNwb25kaW5nIG1hdGNoaW5nIGNyaXRlcmlhLiBGb3IgZXhhbXBsZSBpZiBhIHRhYmxlIGlzDQo+ ID4gPj4gc3BlY2lhbGl6ZWQgdG8gYmUgd2lyZS1vcmlnaW4gb25seSwgcGF0dGVybiBzaG91bGQg aGF2ZQ0KPiA+ID4+IHJlcHJlc2VudGVkIHBvcnQgaXRlbSB3aXRoIGV0aGRldiB3aGljaCBjb3Jy ZXNwb25kcyB0byBhDQo+ID4gPj4gcGh5c2ljYWwgcG9ydCAob3IgYW55IG90aGVyIGl0ZW0gd2hp Y2ggbWF0Y2hlcyBwYWNrZXRzDQo+ID4gPj4gY29taW5nIGZyb20gd2lyZSBvbmx5KS4NCj4gPiA+ DQo+ID4gPiBObyBuZWVkIG9mIGEgbWF0Y2hpbmcgY3JpdGVyaWEgc3RyaWN0bHkgbWFwcGluZyB0 aGUgaGludC4NCj4gPiA+IEhlcmUgdGhlIGhpbnQgaXMgU1BFQ0lBTElaRV9UUkFOU0ZFUl9WUE9S VF9PUklHDQo+ID4gPiBhbmQgdGhlIHJ1bGVzIGNhbiBtYXRjaCBvbiBhbiBJUCBzcmMgd2hpY2gg aXMgYXNzaWduZWQgdG8gYSB2cG9ydC4NCj4gPiA+IFNvIHRoZXJlIGlzIG5vIG5lZWQgdG8gc3Ry aWN0bHkgbWF0Y2ggdGhlIHZwb3J0IGl0c2VsZiBpbiB0aGUgcnVsZS4NCj4gPg0KPiA+IElmIHNv LCB0aGUgcHJvYmxlbSBpcyB0aGF0IHRoZSBzYW1lIHJ1bGVzIHdpbGwgYmVoYXZlIGluIGEgZGlm ZmVyZW50IHdheQ0KPiA+IG9uIGRpZmZlcmVudCBOSUNzLg0KPiANCj4gTm90IGV4YWN0bHkuDQo+ IElmIHRoZSBhc3N1bXB0aW9uIG1hZGUgYnkgdGhlIGFwcGxpY2F0aW9uIGlzIHdyb25nLA0KPiB5 ZXMgdGhlcmUgbWF5IGJlIHNvbWUgZGlmZmVyZW5jZXMgZm9yIHRoZSB1bmV4cGVjdGVkIHBhY2tl dHMuDQo+IEJ1dCBpdCB3b3VsZCBiZSBhIHVzZXIgbWlzdGFrZSBzb21ld2hlcmUuDQo+IA0KPiBJ biBnZW5lcmFsLCBhbiBhcHBsaWNhdGlvbiBzaG91bGQgaGF2ZSB0aGUgc2FtZSBmdW5jdGlvbmFs IHJlc3VsdCwNCj4gbm8gbWF0dGVyIHRoZSBoaW50IGlzIHVzZWQgb3Igbm90IGJ5IHRoZSBkcml2 ZXIuDQo+IA0KPiA+ID4gSG9wZSBpdCBtYWtlIHRoaW5rcyBjbGVhci4NCj4gPiA+IFdlIGNhbiBp bXByb3ZlIHRoZSBjb21taXQgbG9nIGFzIEkgd3JvdGUgYWJvdmUuDQo+IA0KPiANCg0K