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 1CA6041B9D; Wed, 1 Feb 2023 10:00:39 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C2851406A2; Wed, 1 Feb 2023 10:00:38 +0100 (CET) Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2061.outbound.protection.outlook.com [40.107.212.61]) by mails.dpdk.org (Postfix) with ESMTP id B652E4021F for ; Wed, 1 Feb 2023 10:00:36 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZpGQoXFS7MEosCG2mvqVMCGeXpPR340jLKivQ89lrnpZWoX+H++qMMoXdEK1G8/BrbIpMz0N+O3r6QXmg+SMLHSyKK7y65EyoDEK3fqIHs7AM5GBHdSriPVSfmWdjoUDUHxgIV4EWYwCl+TS5DiWY2LPjQTt/teLDGTUrwkr63D6auc1i4Eytw8JkCM76DMjUF16EYmT3KaR5VIAq2dFRihZCVqJHBlwY5uF9Xm/tUEiHfChG0OWQT/eJpK+Yf4OBoqmEFrWwKETwWnqw89VoKdPeo9/YAxLdMeccj7R9wGsIxGXfjtNE/ETNii87iJ1BioT6DlF4saOQKDWRAXo3g== 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=r4T9ljB61HJQqc5J5OV6vvVTOPhJaEXhJIrCSeNFdcw=; b=NAUiTRrUuvJBmEU2vgutXd1ORacCX5UskQbHOFCz7706mSKDqV5xmwrH037DCZft3parz8H6l/ncYE6QWA83Dm83nv7M2DDICIOu/OnOEVv+4WOl7JKlcffoYx1XlynjwLoz92OWKc8nsN5DUgm8/bnwDWtyNgOZtgGp0rUAEyVdZavZfxIs3PphceMfVhXDkPtUMex6vrH4VuZ5Uo8E6RkDb6s2Emk078pYUzH+N/eXt7sl38v8MNUpczrJQfDUPisf7za8J0VSD5s+9T94oU8KKPcbqonoJXYq1IfnclSpcCLze9ZRDrKgsWblJw2MyOT7ZxNH+mQkasUOPxjxzg== 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=r4T9ljB61HJQqc5J5OV6vvVTOPhJaEXhJIrCSeNFdcw=; b=qkTceGM0jqYc4qhpkpzqLoMdeqms0pFqAHyhuUZKwfqVt4zqxNnNXw2BWrgZNs5zTTBlqDn/TV6LWQjP6fDPzD0j+wBwzZh+L+U6iQTysSTiDseZ1h6Pj7qITtfDUQq4K2zmDsvK2vuIZMg93/RJIZvRBpEc22HRyNcIYoWIC8l+ebkrdnWxP+c2BmHxUb8UNdtw+FLLxwdFT5tkUi1/h1n/URNOgHGLii86gfqAEJ03wKlBjVYb7+ao1pnS/MHgS7iuP6ImbukA9Oa5dRyxeRBdJdOXip5TfTUWUbHoTAjBe8NF9QfBOGlRjy3z1MveIuo09JVqch3J6fWP1mmtcQ== Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) by SN7PR12MB6790.namprd12.prod.outlook.com (2603:10b6:806:269::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.36; Wed, 1 Feb 2023 09:00:34 +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 09:00:34 +0000 From: Ori Kam To: Jerin Jacob , Andrew Rybchenko CC: Ivan Malov , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Ivan Malov , Ferruh Yigit , Nithin Kumar Dabilpuram , Aman Singh , Yuying Zhang , "dev@dpdk.org" , Hanumanth Reddy Pothula , Slava Ovsiienko , Jerin Jacob Kollanukkaran , "david.marchand@redhat.com" Subject: RE: [EXT] Re: [PATCH v5 2/2] app/testpmd: add command to process Rx metadata negotiation Thread-Topic: [EXT] Re: [PATCH v5 2/2] app/testpmd: add command to process Rx metadata negotiation Thread-Index: AQHZFOEIGhBlNsBst0uzC9xYHpwUva6uEtAAgAECroCAADlygIAAEKwAgAABQYCAAAvugIABVRSAgAEtXwCAAED1gIAAHgmAgABIZoCABl6pAIAAcVSAgAB3fACAABJKAIAAGyOAgAAAXVA= Date: Wed, 1 Feb 2023 09:00:34 +0000 Message-ID: References: <20221220200250.2413443-1-hpothula@marvell.com> <13375798.lhuNh5TYOU@thomas> <837604649.0ifERbkFSE@thomas> <7f3158cd-bdea-4771-6e74-280ddf838749@oktetlabs.ru> In-Reply-To: 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_|SN7PR12MB6790:EE_ x-ms-office365-filtering-correlation-id: e3a43dce-9ab6-4e8d-3364-08db0432c747 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: hleV1iIrbA3d2af+315FLR72R00qnWajtOiKKTJAi6EvMPDCfQkXW3lYvAefhBW+WeepEaE/XI1zOIUiFWTNxKCLjd0FwlS8IgxNFn37E3XDVx0gIzBuiu2Dam4rm/bRJjnt3rzpBDFoFHkjgrNKIreySWQQztsYVh/D/KaZrSkwmO6fkKtnM7cfIMvO+QqGvI9eV6V5TkufOHNu4lAcdzBQkGpHkaoaXR6iJqaIM6Old6cvhg4lntOZIuQk3PyzuqUNxGDwhuhE+Ku9KqvUx9OMi92RyDbestv3gDLgE5zRcunLyCVanfnO0gRgYgl5LQvwXesycbSX00QOVcfjdFrU3AqPbAFBw15EsvCU6Zw0rok4IYUF970uaNTNP92vbmHfy+wyPdNrzOnOCXgVR0ujnuNa+jvZVw1ciXSHA0Fvyf4mA4QMtxFMF40mOCMgN14huhssqtHUmurUAQi6NLkxKhw/savM7EwuAn8BoTNcJAXOaJYwXFQiYZrMhqBPS/ALZtiRoWCMiaixwQFY6LWci/3kAj4Oz+Kq8EKafaFGvVdlKdgL+H0yhnHSQNULZG2wfo3fjw4l5MrUSdWiH9vlFlcZcVg8RuTTdvVpYQJgppFBQy197A5JeqfCpXODoTfG3OJA+aB80eIVmeaa97QtaPbg7MjLrhd1u10Us2yBy8dmpqD2wog45/pWPylP8m9m7z5No2xlb902+5B0GQ== 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)(376002)(366004)(136003)(39860400002)(346002)(396003)(451199018)(76116006)(4326008)(41300700001)(64756008)(66476007)(66556008)(66446008)(33656002)(8676002)(8936002)(52536014)(316002)(110136005)(54906003)(66946007)(5660300002)(55016003)(7416002)(83380400001)(53546011)(71200400001)(7696005)(2906002)(26005)(478600001)(186003)(6506007)(9686003)(86362001)(38070700005)(38100700002)(122000001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dkpSTm5aZTVNZEtKa1NDN3dnSXE3WngrTS9INjlsYTEzZzJSMVhISHR5OW1E?= =?utf-8?B?SkI5UUhmOHhMNHJ6czBWUEp6WllzMVpZOStINktYVkpvUVN2N3MyNjFvUzRi?= =?utf-8?B?RGpDWlVJR3VoZjFlYnpCS2tMdFNCSlpwamxRTWNXRVhyS3A2WWtwSHg5Zi9T?= =?utf-8?B?RjlIbTFUeEJsRWVPVXl1T20wZkFleGxURWh2Tm9iRDFIYWZGUDZTcURzK0tz?= =?utf-8?B?MDkyM1NaYWNac0dWSVNUOU03US91WnI1Slg2K09RTTZ1TXRUOFVPOUlldU9y?= =?utf-8?B?aE8xWnNBV01XSDU5K29uRkxIRXVlaHMydGpQWUtVU3NzRFA4dy90RUt2Y2FJ?= =?utf-8?B?RWZtOG82M3pHLzJCUS9QVlBlK1djaVc2NFdOTFFjcWpjc2toWVJZYThKL2J6?= =?utf-8?B?MnlUb25tT1cweUtvRkV5WDFadUdYMjloSlUzd1BSSUYxb0pNUVAzbmhrMU5W?= =?utf-8?B?M2pkQ2JPY2dHSTlibG53bGxLOWdEemlYVGQ4MVpYU3VrTzdBZUYyWVN3dWd4?= =?utf-8?B?ZnVzWEJlOTdJRXErRU9yWXRVbmFFTnJlTE0wOWFjdm1TZDdJNG9iM1luM0x1?= =?utf-8?B?V0RlWXhkTUVMWlY1TXZaMlgycGVLUXcrbklLaU9wbmtyTDY4Y1JMSHJESTBZ?= =?utf-8?B?YjFzNndZTjFzcktoa0szQlU5c1JDRHVoZWRQNVREaDI1c1pqYXMvelk1K01Z?= =?utf-8?B?dzZBK3FQWUVNMTFMa1JwZndSbnQ0NFpReGNYV1hBcVhnTVo3WGkvbVgyR2VK?= =?utf-8?B?VXdLRjB3NlFsd3Fzbis2aG8vYi9oeXhzeDBqVE9IYVhCbnNrMGM0a1JzaHpM?= =?utf-8?B?c1hTZ1R1ZEdXZXdabS9RT1dRUExtaFFuK1lXWURQdTU1OUNiTDhzcXBHU3B3?= =?utf-8?B?a01pY1pOSlJVVzZraDdEZVU3eDgzNXpCYXh4Mit4VDlQWWJ1czZKSWhJS0VB?= =?utf-8?B?UDVEVjhGVndyWXVNZHh4eXRWMXZxRjh6QzFlTng0U2tSTFVpN2VUSEpBdzJ5?= =?utf-8?B?WHMxc25XMjlRTHducmxHLzlkSUlyTjVlVVNUY0tCb1B4eEkyd2cvc2ZRTGlV?= =?utf-8?B?MlNWaHNHSmFHTXBtZnZnd0ZaWFAzVm15NjBCbTBkZkhJcngyUDVVN04yVEJl?= =?utf-8?B?cnBPZ1hYZTFHNElTTkF6ajRLTUkxT2lIelExYTJYQklvQm5qT3FIMGdSNUNy?= =?utf-8?B?U3hQRnliaW9IU0hab2xRZ3Y2eUVEakg1aXNJQkp4K29KZ0U4QUp6b3QwVE44?= =?utf-8?B?Kzd0SEZmbXBFb0RBNHpSWGgweVlscVY4WWYyMWtWdSs1b2tNb2FEQnlqTVVQ?= =?utf-8?B?SUNkZEtEVFBJMmtEdXIyS3lpdzhISnloSVFSOW11NzBiSlljc2YweTNwSGJQ?= =?utf-8?B?SkNqUFFhbzYvUXpvYms3VWdPQ1dKaXBXMjNYdzVzcFBwRy9JOVBwaGRQb2JO?= =?utf-8?B?N1VpZUR3TkJiWCsrSEVvNFJWc1N2MmtrTG1TWEh6QVRqelljMHozTytLdGhN?= =?utf-8?B?Zm9qL0FTbUFPaExIdW00TFV4aHNkU0Exb0xaSkV1MkZhMy9FM2pQNmZnaU5R?= =?utf-8?B?cjVxdS9CbXU0UUZka3NrRndGd3luSWo5cTZ5RCsxZk9RREtBZXFNbE9STGlY?= =?utf-8?B?b1BCR2I5UlBBUDNGdktGSDJwUmw1ellrSmcrVFdUaVRvRXFhMXJhL2t5TzJW?= =?utf-8?B?bTJaYUpSWFdtRElVbzMwcnZTRVgxbTBFQkhXemIyNVFPSUFrZ2Z3dW82WkIr?= =?utf-8?B?UC8wa1hkUVRKdjJhcmRsYzlpZ21oazhGU0hjb2NRakhXbERvdTR1Y1gySU40?= =?utf-8?B?cG9kbGZ1eTVLc3N6L1NHVy9JeHByaDFFM2t6Tm56YXJwSmxOMmR6ZXk3bFYv?= =?utf-8?B?SGlHTnRSbSs5VW85UFM3anh3RlhVNXlnRXFIOGV0TWlHSXdjMENXTHcxSlRM?= =?utf-8?B?TTdoRFlvNWxMemllc2d0SENPNDI0VWZmSElpOThoSVBzd0FiVjkzVWp4T2t3?= =?utf-8?B?bHZzazNWVzV3aTIxVmFqMnNwdktkSUIvNFlRUTIvNFZ2ekhDa0s5WDU1aW5B?= =?utf-8?B?eU55WjNmNExOTWF1UGZKU0M3ZlNVZ1FDQTBBcEd1M2x4YjFjdk1kaENNbXV2?= =?utf-8?Q?7SvQLWqSk7HBH+0M3JSa5J/xW?= 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: e3a43dce-9ab6-4e8d-3364-08db0432c747 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Feb 2023 09:00:34.0640 (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: L8n1lSNZaTs6Bmj8toMPEZ01bbwof/98Mwp4YmuYwl1rhSsFwNqWd/pXT5qd2s0lyOH4mRKy432e1GpxVegguw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6790 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 SGkgYWxsLA0KDQpTb3JyeSBmb3IganVtcGluZyBpbiBsYXRlLA0KDQo+IC0tLS0tT3JpZ2luYWwg TWVzc2FnZS0tLS0tDQo+IEZyb206IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+ DQo+IFNlbnQ6IFdlZG5lc2RheSwgMSBGZWJydWFyeSAyMDIzIDEwOjUzDQo+IA0KPiBPbiBXZWQs IEZlYiAxLCAyMDIzIGF0IDEyOjQ2IFBNIEFuZHJldyBSeWJjaGVua28NCj4gPGFuZHJldy5yeWJj aGVua29Ab2t0ZXRsYWJzLnJ1PiB3cm90ZToNCj4gPg0KPiA+IE9uIDIvMS8yMyAwOToxMCwgSXZh biBNYWxvdiB3cm90ZToNCj4gPiA+IEhlbGxvIGV2ZXJ5b25lLA0KPiA+ID4NCj4gPiA+IFNpbmNl IG1ha2luZyBhdXRvbWF0aWMsIG9yIGltcGxpY2l0LCBvZmZsb2FkIGRlY2lzaW9ucyBkb2VzDQo+ ID4gPiBub3QgYmVsb25nIGluIHRlc3RwbWQgcmVzcG9uc2liaWxpdHkgZG9tYWluLCBpdCBzaG91 bGQgYmUNCj4gPiA+IHNhZmVyIHRvIGF2b2lkIGNhbGxpbmcgdGhlICJuZWdvdGlhdGUgbWV0YWRh dGEgZGVsaXZlcnkiDQo+ID4gPiBBUEkgd2l0aCBzb21lIGRlZmF1bHQgc2VsZWN0aW9uIHVubGVz cyB0aGUgdXNlciBhc2tzIHRvDQo+ID4gPiBkbyBzbyBleHBsaWNpdGx5LCB2aWEgaW50ZXJuYWwg Q0xJIG9yIGFwcCBvcHRpb25zLg0KPiA+ID4NCj4gPiA+IFdpdGggdGhhdCBpbiBtaW5kLCBwb3J0 IGNvbmZpZyA8cG9ydF9pZD4gLi4uIHNvdW5kcyBPSy4NCj4gPiA+DQo+ID4gPiBQTURzIHRoYXQg c3VwcG9ydCBmbG93IHByaW1pdGl2ZXMgd2hpY2ggY2FuIGdlbmVyYXRlIG1ldGFkYXRhDQo+ID4g PiBidXQsIGlmIGluIHN0YXJ0ZWQgc3RhdGUsIGNhbid0IGVuYWJsZSBpdHMgZGVsaXZlcnkgbWF5 IHBhc3MNCj4gPiA+IGFwcHJvcHJpYXRlIHJ0ZV9lcnJvciBtZXNzYWdlcyB0byB0aGUgdXNlciBz dWdnZXN0aW5nDQo+ID4gPiB0aGV5IGVuYWJsZSBkZWxpdmVyeSBvZiBzdWNoIG1ldGFkYXRhIGZy b20gTklDIHRvIFBNRA0KPiA+ID4gZmlyc3QuIFRoaXMgd2F5LCBpZiB0aGUgcGVyc29uIG9wZXJh dGluZyB0ZXN0cG1kDQo+ID4gPiBlbnRlcnMgYSBmbG93IGNyZWF0ZSBjb21tYW5kIGFuZCB0aGF0 IGZhaWxzLA0KPiA+ID4gdGhleSBjYW4gZmlndXJlIG91dCB0aGUgaW5jb25zaXN0ZW5jeSwgc3Rv cA0KPiA+ID4gdGhlIHBvcnQsIG5lZ290aWF0ZSwgc3RhcnQgYW5kIHRyeSBhZ2Fpbi4NCj4gPiA+ DQo+ID4gPiBBcyBmb3Igbm9uLWRlYnVnIGFwcGxpY2F0aW9ucywgdGhlaXIgZGV2ZWxvcGVycyBz aGFsbA0KPiA+ID4gYmUgcHJvcGVybHkgaW5mb3JtZWQgYWJvdXQgdGhlIHByb2JsZW0gb2YgZW5h YmxpbmcNCj4gPiA+IGRlbGl2ZXJ5IG9mIG1ldGFkYXRhIGZyb20gTklDIHRvIFBNRC4gVGhpcyB3 YXksDQo+ID4gPiB0aGV5IHdpbGwgaW52b2tlIHRoZSBuZWdvdGlhdGUgQVBJIGJ5IGRlZmF1bHQN Cj4gPiA+IGluIHRoZWlyIGFwcHMsIHdpdGggdGhlIGZlYXR1cmUgc2VsZWN0aW9uIChlZy4NCj4g PiA+IE1BUkspIGFzIHBlciBuYXR1cmUgb2YgdGhlIGFwcCdzIGJ1c2luZXNzLg0KPiA+ID4NCj4g PiA+IFRoaXMgQVBJIHNob3VsZCBpbmRlZWQgYmUgaGVscGZ1bCB0byBzb21lIFBNRHMgd2l0aA0K PiA+ID4gcmVnYXJkIHRvIGNvbGxlY3RpbmcgdXBmcm9udCBrbm93bGVkZ2UgbGlrZSB0aGlzLg0K PiA+ID4gQXQgdGhlIHNhbWUgdGltZSwgc2hvdWxkIGJlIGJlbmlnbiB0byB0aG9zZSBQTURzDQo+ ID4gPiB3aG8gZG8gbm90IG5lZWQgdGhpcyBrbm93bGVkZ2UgYW5kIGNhbiBlbmFibGUNCj4gPiA+ IGRlbGl2ZXJ5IG9mIG1ldGFkYXRhIHJpZ2h0IHdoZW4gaW5zZXJ0aW5nIHRoZQ0KPiA+ID4gZmxv dyBydWxlcy4gU28gSSBob3BlIHRoZSBBUEkgZG9lcyBub3QgY3JlYXRlDQo+ID4gPiB0b28gbXVj aCBkaXNjb21mb3J0IHRvIHZlbmRvcnMgbm90IG5lZWRpbmcgaXQuDQo+ID4gPg0KPiA+ID4gVGhh bmsgeW91Lg0KPiA+ID4NCj4gPiA+IE9uIFdlZCwgMSBGZWIgMjAyMywgVGhvbWFzIE1vbmphbG9u IHdyb3RlOg0KPiA+ID4NCj4gPiA+PiAzMS8wMS8yMDIzIDE3OjE3LCBKZXJpbiBKYWNvYjoNCj4g PiA+Pj4gT24gRnJpLCBKYW4gMjcsIDIwMjMgYXQgODozMSBQTSBUaG9tYXMgTW9uamFsb24NCj4g PHRob21hc0Btb25qYWxvbi5uZXQ+DQo+ID4gPj4+IHdyb3RlOg0KPiA+ID4+Pj4NCj4gPiA+Pj4+ IDI3LzAxLzIwMjMgMTE6NDIsIE5pdGhpbiBLdW1hciBEYWJpbHB1cmFtOg0KPiA+ID4+Pj4+IEZy b206IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5ldD4NCj4gPiA+Pj4+Pj4gMjcv MDEvMjAyMyAwNjowMiwgTml0aGluIEt1bWFyIERhYmlscHVyYW06DQo+ID4gPj4+Pj4+PiBGcm9t OiBUaG9tYXMgTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+DQo+ID4gPj4+Pj4+Pj4gRmVy cnVoIGlzIHByb3Bvc2luZyB0byBoYXZlIGEgY29tbWFuZCAicG9ydCBjb25maWcgPHBvcnRfaWQ+ DQo+IC4uLiINCj4gPiA+Pj4+Pj4+PiB0byBjb25maWd1cmUgdGhlIGZsYWdzIHRvIG5lZ290aWF0 ZS4NCj4gPiA+Pj4+Pj4+PiBBcmUgeW91IE9LIHdpdGggdGhpcyBhcHByb2FjaD8NCj4gPiA+Pj4+ Pj4+DQo+ID4gPj4+Pj4+PiBZZXMsIHdlIGFyZSBmaW5lIHRvIGhhdmUgc3VjaCBjb21tYW5kIHRv IGVuYWJsZSBhbmQgZGlzYWJsZSB0aGUNCj4gPiA+Pj4+Pj4+IGZlYXR1cmUNCj4gPiA+Pj4+Pj4+ IHdpdGggZGVmYXVsdCBiZWluZyBpdCBkaXNhYmxlZCBpZiBzdXBwb3J0ZWQgYnkgUE1ELg0KPiA+ ID4+Pj4+Pj4gSXMgZGVmYXVsdCBiZWluZyBkaXNhYmxlZCBmaW5lIGlmIHRoZSBmZWF0dXJlIGlz IHN1cHBvcnRlZCBieSBhDQo+ID4gPj4+Pj4+PiBQTUQgPw0KPiA+ID4+Pj4+Pg0KPiA+ID4+Pj4+ PiBJIHRoaW5rIHRoZSBkZWZhdWx0IHNob3VsZCBiZSBlbmFibGVkIGZvciBlYXNlIG9mIHVzZS4N Cj4gPiA+Pj4+Pg0KPiA+ID4+Pj4+IFNpbmNlIHRlc3RwbWQgaXMgdXNlZCBleHRlbnNpdmVseSBm b3IgYmVuY2htYXJraW5nIHB1cnBvc2VzLCB3ZQ0KPiA+ID4+Pj4+IHRob3VnaHQgaXQgc2hvdWxk IGhhdmUgbWluaW11bSBmZWF0dXJlcw0KPiA+ID4+Pj4+IGVuYWJsZWQgYnkgZGVmYXVsdC4gVGhl IGRlZmF1bHQgdGVzdHBtZCBkb2Vzbid0IGhhdmUgYW55IFJ4L1R4DQo+ID4gPj4+Pj4gb2ZmbG9h ZHMgZW5hYmxlZChleGNlcHQgZm9yIEZBU1QgRlJFRSksICBkZWZhdWx0DQo+ID4gPj4+Pj4gZndk IG1vZGUgYmVpbmcgImlvZndkIiBhbmQgdGhlIFJ4IG1ldGFkYXRhIGlzIG9ubHkgcmVmZXJlbmNl ZA0KPiB3aGVuDQo+ID4gPj4+Pj4gZHVtcGluZyBwYWNrZXRzLg0KPiA+ID4+Pj4+DQo+ID4gPj4+ Pj4NCj4gPiA+Pj4+Pj4gRG8gd2UgaGF2ZSBzaW1pbGFyIGZlYXR1cmVzIGRpc2FibGVzIGJ5IGRl ZmF1bHQ/DQo+ID4gPj4+Pj4+IEkgbWVhbiBkbyB3ZSBrbm93IGZlYXR1cmVzIGluIHRlc3RwbWQg d2hpY2ggcmVxdWlyZSBhICJkb3VibGUNCj4gPiA+Pj4+Pj4gZW5hYmxlbWVudCINCj4gPiA+Pj4+ Pj4gbGlrZSBvbmUgY29uZmlndXJhdGlvbiBjb21tYW5kICsgb25lIHJ0ZV9mbG93IHJ1bGU/DQo+ ID4gPj4+Pj4NCj4gPiA+Pj4+PiBTcGVjIGl0c2VsZiBpcyB0aGF0IHdheSBpLmUgIlJURV9GTE9X X1JVTEUgKw0KPiA+ID4+Pj4+IFJYX01FVEFEQVRBX05FR09USUFURShvbmNlKSINCj4gPiA+Pj4+ Pg0KPiA+ID4+Pj4+IElzbid0IGl0IGVub3VnaCBpZg0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gIzEg V2UgaGF2ZSBlbm91Z2ggcHJpbnQgd2hlbiBydGVfZmxvdyBpcyBiZWluZyBjcmVhdGUgd2l0aG91 dA0KPiA+ID4+Pj4+IG5lZ290aWF0aW9uIGRvbmUgYW5kIGFzayB1c2VyIHRvIGVuYWJsZSByeCBt ZXRhZGF0YSB1c2luZw0KPiA+ID4+Pj4+ICJwb3J0IGNvbmZpZyA8cG9ydF9pZD4uLi4iDQo+ID4g Pj4+Pj4gIzIgUHJvdmlkZSB0ZXN0cG1kIGFwcCBhcmcgdG8gZW5hYmxlIFJ4IG1ldGFkYXRhKGZv ciBleGFtcGxlICINCj4gPiA+Pj4+PiAtLXJ4LW1ldGFkYXRhIikgbGlrZSBvdGhlciBmZWF0dXJl cyB0byBhdm9pZCBjYWxsaW5nIGFub3RoZXINCj4gPiA+Pj4+PiBjb21tYW5kIGJlZm9yZSBydGUg ZmxvdyBjcmVhdGUuDQo+ID4gPj4+Pg0KPiA+ID4+Pj4gSSdtIG5vdCBzdXJlIHdoYXQgaXMgYmVz dC4NCj4gPiA+Pj4+IEkgd2lsbCBsZXQgb3RoZXJzIGRpc2N1c3MgdGhpcyBwYXJ0Lg0KPiA+ID4+ Pg0KPiA+ID4+PiBJTU8sIGVuYWJsaW5nIHNvbWV0aGluZyBhbHdheXMgZGVmZWF0IHRoZSBwdXJw b3NlIHRvIG5lZ290aWF0ZS4gSU1PLA0KPiA+ID4+PiBzb21lb25lIG5lZWRzIHRvIG5lZ290aWF0 ZQ0KPiA+ID4+PiBmb3IgYSBmZWF0dXJlIGlmIHRoZSBmZWF0dXJlIGlzIG5lZWRlZC4gSSB0aGlu aywgdGhlIGRvdWJsZSBlbmFibGVtZW50DQo+ID4gPj4+IGlzIHBhcnQgb2YgdGhlIHNwZWMgaXRz ZWxmLiBJbiBjYXNlLCBUaGUgUE1EDQo+ID4gPj4+IGRyaXZlcnMgd29uJ3QgbGlrZSBkb3VibGUg ZW5hYmxlbWVudCwgbm8gbmVlZCB0byBpbXBsZW1lbnQgdGhlIFBNRA0KPiA+ID4+PiBjYWxsYmFj ay4gVGhhdCB3YXksIHRoZXJlIGlzIG5vIGNoYW5nZSBpbiB0aGUgZXhpc3RpbmcgZmxvdy4NCj4g PiA+Pj4NCj4gPiA+Pj4gVGhlIHJlYXNvbiB3aHkgY254ayBkcml2ZXIgdGhvdWdodCBvZiBsZXZl cmFnaW5nIG5lZ290aWF0ZSgpIGZlYXR1cmUNCj4gPiA+Pj4gc28gdGhhdCBpdCBoZWxwcyBmb3Ig b3B0aW1pemF0aW9uLiBlLnMucA0KPiA+ID4+PiBmdW5jdGlvbiB0ZW1wbGF0ZSBmb3IgbXVsdGlw cm9jZXNzIGNhc2UgYXMgd2Uga25vdyB3aGF0IGZlYXR1cmVzDQo+ID4gPj4+IG5lZWRlZCBpbiBm YXN0cGF0aCB1cGZyb250Lg0KPiA+ID4+Pg0KPiA+ID4+PiBJZiB0aGVyZSBzdGlsbCBjb25jZXJu cyB3aXRoIHBhdGNoIHdlIGNhbiB0YWtlIHVwIHRoaXMgdG8gVEIgZGVjaWRlDQo+ID4gPj4+IG9u ZSB3YXkgb3IgYW5vdGhlciB0byBtYWtlIGZvcndhcmQgcHJvZ3Jlc3MuIExldCB1cyBrbm93Lg0K PiA+ID4+DQo+ID4gPj4gRmVycnVoLCBBbmRyZXcsIE9yaSwgSXZhbiwgd2hhdCBpcyB5b3VyIG9w aW5pb24/DQo+ID4gPj4gTGV0J3MgcHJvZ3Jlc3Mgd2l0aCB0aGlzIHBhdGNoIHRvIG1ha2UgaXQg aW4gLXJjMS4NCj4gPg0KPiA+IEFzIEkgdW5kZXJzdGFuZCBhbGwgYWdyZWVkIHRoYXQgd2UgbmVl ZCB0ZXN0cG1kIGNvbW1hbmQgdG8NCj4gPiBjb250cm9sIG5lZ290aWF0ZWQgUnggbWV0YWRhdGEu IE1heSBiZSBldmVuIGNvbW1hbmQtbGluZQ0KPiA+IG9wdGlvbiB3b3VsZCBiZSB1c2VmdWwuDQo+ ID4NCj4gPiBTbywgcmVtYWluaW5nIHF1ZXN0aW9uIGlzIHdoYXQgc2hvdWxkIGJlIHRoZSBkZWZh dWx0IHZhbHVlIGluDQo+ID4gdGVzdHBtZC4gTm90ZSB0aGF0IGl0IGlzIGp1c3QgdGVzdHBtZCBx dWVzdGlvbiBzaW5jZSBkZWZhdWx0DQo+ID4gdmFsdWUgaW4gYW4gYWJzdHJhY3QgYXBwbGljYXRp b24gaXMgbm90aGluZyBuZWdvdGlhdGVkDQo+ID4gKGlmIEknbSBub3QgbWlzdGFrZW4pLg0KPiA+ DQo+ID4gVGhlIGtleSBhZHZhbnRhYW4gZ2Ugb2YgdGhlIGN1cnJlbnQgYmVoYXZpb3VyIGlzIHRv IGF2b2lkDQo+ID4gImRvdWJsZS1lbmFibGluZyIgaW4gdGVzdHBtZC4gSXQgcHJlc2VydmVzIGJl aGF2aW91ciB3aGljaA0KPiA+IHdlIGhhZCBiZWZvcmUgYmVmb3JlIHRoZSBBUEkgYWRkaXRpb24u IEl0IGlzIGEgc3Ryb25nDQo+ID4gYXJndW1lbnQuIEJhc2ljYWxseSBpdCBwdXRzIHRoZSBmZWF0 dXJlIGludG8gdGhlIHNhbWUNCj4gPiBiYXNrZXQgYXMgRkFTVF9GUkVFIC0gbmVlZCBhbiBhY3Rp b24gdG8gcnVuIGZhc3Rlci4NCj4gDQo+IEkgdGhpbmssIHRoZXJlIGlzIGEgZGlzY29ubmVjdCBo ZXJlLiBGQVNUX0ZSRUUgaXMgZW5hYmxlZCBieSBkZWZhdWx0Lg0KPiBpLmUgV2UgZG9uJ3QgbmVl ZCBhbnkgc3BlY2lmaWMgYWN0aW9uIHRvIHJ1biBmYXN0ZXIuIFRvIGFsaWduIHdpdGggcGVyZm9y bWFuY2UNCj4gdGVzdCBhcHBsaWNhdGlvbiwgYnkgZGVmYXVsdCB0aGUgY29uZmlndXJhdGlvbiBz aG91bGQgYmUgcnVuIGZhc3Rlci4gVXNlcg0KPiBuZWVkcyB0byBnaXZlIGV4cGxpY2l0IGNvbmZp Z3VyYXRpb24gdG8gYWxsb3cgbW9yZSBvZmZsb2FkIG9yIHRoZSBvbmUgY2F1c2VzDQo+IHRoZSBt cHBzIGRyb3BzLiBJTU8sIFRoYXQgaXMgdGhlIHRoZW1lIGZvbGxvd2VkIGluIHRlc3RwbWQuDQo+ IA0KPiANCkkgYWdyZWUgd2l0aCBBbmRyZXcsIHRoZSBkZWZhdWx0IHNob3VsZCBzdGF5IHRoZSBz YW1lLCBhcyBub3csIFBNRCBtYXkgYWxyZWFkeSBpbXBsZW1lbnQNCmxvZ2ljIHRvIG9ubHkgZW5h YmxlIHRoZSBmZWF0dXJlIGlmIHRoZXJlIGlzIGEgZmxvdyBydWxlLg0KQ2hhbmdpbmcgdGhlIGRl ZmF1bHQgd2lsbCByZXN1bHQgaW4gYnJlYWtpbmcgYXBwbGljYXRpb25zLg0KDQpJIHdhbnQgdG8g c3VnZ2VzdCBuZXcgYXBwcm9hY2ggZm9yIHRoaXMgZmVhdHVyZSwgDQptYXliZSB3ZSBjYW4gdXNl IHRoZSBydGVfZmxvd19jb25maWd1cmUsIGFuZCBhZGQgYSBuZXcgYml0IHRoYXQgc2F5cyBpZiB0 aG9zZQ0KYWN0aW9ucyBhcmUgZ29pbmcgdG8gYmUgdXNlZC4NCldoYXQgZG8geW91IHRoaW5rPw0K DQoNCg0KPiA+IEkgc2VlIG5vIHByb2JsZW0gaW4gc3VjaCBhcHByb2FjaC4NCj4gPg0KPiA+IFRo ZSBrZXkgZGlzYWR2YW50YWdlIGlzIHRoZSBkaWZmZXJlbmNlIGluIHRlc3RwbWQgYW5kDQo+ID4g b3RoZXIgYXBwbGljYXRpb25zIGRlZmF1bHQgYmVoYXZpb3VyLg0KPiA+DQo+ID4gSSdkIGxvb2sg YXQgdGhlIGZlYXR1cmUgaW4gdGhlIGZvbGxvd2luZyB3YXk6DQo+ID4gaWYgYW4gYXBwbGljYXRp b24gdGhlb3JldGljYWxseSB3YW50cyB0byB1c2UNCj4gPiBVU0VSX0ZMQUcsIFVTRVJfTUFSSyBv ciBUVU5ORUxfSUQgaXQgbXVzdCBuZWdvdGlhdGUNCj4gPiBjb3JyZXNwb25kaW5nIFJ4IG1ldGFk YXRhIHRvIGVuc3VyZSB0aGF0IHRoZSBmZWF0dXJlIGlzDQo+ID4gYXZhaWxhYmxlIGFuZCBIVyBp cyBpbmZvcm1lZCB0aGF0IGFwcGxpY2F0aW9uIG1heSBuZWVkIGl0Lg0KPiA+IFNpbmNlIHRlc3Rw bWQgc3VwcG9ydHMgY29ycmVzcG9uZGluZyBmbG93IEFQSSBhY3Rpb25zIGFuZA0KPiA+IGZsb3cg dHVubmVscywgaXQgdHJpZXMgdG8gbmVnb3RpYXRlIGl0IGJ5IGRlZmF1bHQsIGJ1dCBkbw0KPiA+ IG5vdCBmYWlsIGlmIHRoZSBuZWdvdGlhdGlvbiBmYWlscy4NCj4gPg0KPiA+IFNvLCBJJ2Qgd291 bGQgdm90ZSB0byBrZWVwaW5nIHRoZSBkZWZhdWx0IHZhbHVlIGFzIGlzLg0KPiA+DQo=