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 72889A034C; Sun, 7 Aug 2022 09:01:22 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 196B540A7F; Sun, 7 Aug 2022 09:01:22 +0200 (CEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2046.outbound.protection.outlook.com [40.107.220.46]) by mails.dpdk.org (Postfix) with ESMTP id 64F2D4014F for ; Sun, 7 Aug 2022 09:01:21 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LbhdIRUwL4CCQxHL+urdtmUndtxNeM01ltmslNVLed7Xu38MYNNOdErI+IHpY87hcLV3yGnyRgd5y2RzC3abUtBwxDUu7dkQIgGA0437uzHi3vTMhD8sNRWA0JqxdcU8OWG4yOgcEFxksCsK8L4an+yHhYuuM/dMl5FgO+tBMbkL9Dktec+w/3K1RPAEGrQ4vl08cP2bJ/upTw6GwPfMtUDxt4xq2KlVU9OvmEotsj4xCyjp8PKBKFs8ZBnK0+CivVdV04nHqY7P2Ygtddy1jJyro795bCaWID9OklbnXecPJvWQMGxJWrvc2S1QxB2EzOGSi1Ho9urKdl9BLhZf4g== 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=7uSDMugBn9EAED42xu8cIyAJ4d3rmXeCpD305kFi1jA=; b=G/JHTwYnbIqUhcJKa1zwCQLYMhEcS3RCGQeFtfbvYPE/s7QYxifnb04flnhFXWfz02ixLVF2Ug27WZG+DMUQsu4c+u3qzgzD4qHDCX51Rsu2UFk0WMuK1eKfpCZEHIgBlTjQoALLZkqoN6EJBPlN1cOHQJjxVchOkQnPcqvvJTsancZmjHKZWOlpDbikAms+IiL3YLM3gvzIFL/avYWqvcEL+YzEcRaP98633PwJq/stTUEv3TdBR4l2HzgQBIG600HDRVAoxO3isW++OA8VIFg98KPern9Dw9KP+qcb1nesYXtTjHM53GsP9ytGbTbDlKfJw3QJ8OY2L+qrNeIDqg== 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=7uSDMugBn9EAED42xu8cIyAJ4d3rmXeCpD305kFi1jA=; b=Y1SiCdoBMzxeFNgwP33aTMmYb9+9qAMJdmKtWfZV+bcIAbj5vRdGt4fx3PQek/g+JH5Ybd6cGq+W+13RaHHMDWb6jua0Uk9ZaxuTdIn3nWm5i1upHB8whxzEnUDGrrtfu+z6k4byq0DEZq6KF3lU0xnJsUdm07Lca5CbgX/elysjVfJfMh/P2VSTdF+pAXkhOIqErp0jNkukW33zFJ1SblDRRU7G1F9130dhxKk/uS3RN9vw1RDcqgbvPGGMD0feXTsEmM1mCwonDnaovO1vXHNdSqx5Xf8ncL3pmRoaOpLHoqJpmGv1vOsAJDstKTiaZRb4hfEvTtn/XSrRYZm3bQ== Received: from DM6PR12MB4811.namprd12.prod.outlook.com (2603:10b6:5:1fb::13) by DS7PR12MB6165.namprd12.prod.outlook.com (2603:10b6:8:9a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.22; Sun, 7 Aug 2022 07:01:16 +0000 Received: from DM6PR12MB4811.namprd12.prod.outlook.com ([fe80::b9c0:2783:c392:ff9b]) by DM6PR12MB4811.namprd12.prod.outlook.com ([fe80::b9c0:2783:c392:ff9b%4]) with mapi id 15.20.5504.017; Sun, 7 Aug 2022 07:01:16 +0000 From: Eli Britstein To: "Singh, Aman Deep" , "dev@dpdk.org" CC: Slava Ovsiienko , Ori Kam , Asaf Penso , Matan Azrad , Gaetan Rivet , Nir Anteby , Yuying Zhang , Ferruh Yigit , Andrew Rybchenko , "NBU-Contact-Thomas Monjalon (EXTERNAL)" Subject: RE: [dpdk-dev] [RFC] testpmd: support user-id attribute Thread-Topic: [dpdk-dev] [RFC] testpmd: support user-id attribute Thread-Index: AQHYj3+NJzVf/CvuA06XRuYjzGRp662GQbmAgA21yoCADz+FoA== Date: Sun, 7 Aug 2022 07:01:16 +0000 Message-ID: References: <20220704082433.3698761-1-elibr@nvidia.com> <5103963.6fTUFtlzNn@thomas> <08d889e2-da69-eaf4-ab5b-62ff19bdb28a@intel.com> In-Reply-To: <08d889e2-da69-eaf4-ab5b-62ff19bdb28a@intel.com> 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-office365-filtering-correlation-id: f9b702f6-01a2-4342-6b80-08da78429f49 x-ms-traffictypediagnostic: DS7PR12MB6165:EE_ 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: Wo9AmbVRDHnI+o0jWJdnxkX4qszKhhU/KDU3BBOIcRqs5YleLLTt+mVzzHQDv2K9Che/U+j1sb7GFgB8Bz1PBWdqPaVVPPnzJl5mnUvRDgm2eqodp/XoKo2LCkQMn00e7tcWoHb+SOCuhyONRa1cldNHoZNRjgL1BteJrugreC19YL5DTjeodlCPg5T2Tc1RR/tyPWc1jIgQcC36veTuAPFpU6dYLrpt8ZuTJivCbSRWiVSTTW6OGY+KQ9onWH0DL5pRIR9ybtNPqLeYc3EqH39ACPt7QuRq4RC374Baz6fZqLXjgqZxowTPplwSCZTDufWok5y1oX9DGpIVVcB0hEEceWuDZoAyjv6xu/Ck2mElihAwjcZi1pO1cF7oyGh1qw22r9dBsmICTL07P43R1BWEzEKsD1NbMWgq95QgeRKcwxaNV7jDrXJ7mEeY6+qi/6bLpsdm15JR5KEqnQdlx4LDgYk3dYk4BAamxbZfok87fwk2ugCws6h69B1kgxanoO+8MuNEAVtnCrU/hXZ7fj5MDtk2zOpI85n9CZKU3nVwPVAeGaGpEctm2IG+gIO114pIq+U+H6txG+JP6hQyWv/Rpk+RIgwPsEtVkI3ddfdPPubbWt/At+O6wrxJFsPBatsJPJECGEML5kX1eD9553utmBnLI7IPjy4deNbWYV1UB4S9eFOr5pj6Poiato8pIE3mmuHnkWPFkUbAl/LxVRf8BRqcztGFTIEaVzBMRt4Y2wHvWDIRta6RugdyY0ynr1SIw9L78777OU6XUjf20lediJpPAQ/P2Qe4XvzF6fYFG6XBLFgPqFttFCGniCiW x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR12MB4811.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(39860400002)(376002)(396003)(346002)(366004)(136003)(41300700001)(122000001)(55016003)(5660300002)(76116006)(52536014)(33656002)(478600001)(8936002)(83380400001)(86362001)(6506007)(9686003)(186003)(2906002)(7696005)(38070700005)(316002)(38100700002)(66946007)(66476007)(66446008)(66556008)(8676002)(64756008)(110136005)(4326008)(54906003)(71200400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VUF3NGk1TTc3RjhrRkhPcGI1VGVYTFh4cTA5MW1oZmc0c0JnRW9nV3RGMmZH?= =?utf-8?B?aDV3cGs2YnpLNHpoNHJUdHROdWpnck9FL0YrRzJjT1kvUDgreWMyWFVvVC9z?= =?utf-8?B?bFR5ME1DRXdWbW1kYVhDTnZMVE5wTTMzWkcyeG0xejlpVnJZdjhQMUxNaW5D?= =?utf-8?B?MjN1MUE4b3o2WENTaTNXdWhmRXdybjYvVmhOVXM4NHVOUnFLMHRxWHArS2k5?= =?utf-8?B?aUFZa2FhRlZhRFNjZkRxQkQzVzRRRndxQ2t1RmV6RExSM1pBYmNUTXk4QTRV?= =?utf-8?B?ZVQrNnBDOElpSnFyczBhZTU1RUdtbGFoVGhFa0QvblYxZ1NaTDA2MGEwYUVW?= =?utf-8?B?KzlmaWV4aE9sVllLb2U2VzdNV1dUemhDL1FiZG1aY1pQdGNUNVRkMkpoWVFB?= =?utf-8?B?azhRYmVFaUdCeDZSdTQ1cnlKa1hFcDVMV05wMmdmTDRhZW1temFpdUNiQkhq?= =?utf-8?B?UG9lNWh5L3Z0ZHdPVU9hZzRlMFcvbjJrczQxbTgrd05FMkM2UTdJTWx0aWxW?= =?utf-8?B?WklqbU9hMlZqLzNWRXhReERmVkNCWHpsMmYwZjVpZFJkYkFFYzMwVEdpOHNU?= =?utf-8?B?M2ViWFJXOVZUVEh6cVZybi9UdDgva3ZSM1k5azRUNVNEcTB0bi9sclFnYllr?= =?utf-8?B?VE1IRHBraFl2VmJsTUtwdzJFZlBZV1EzOUIzR1hmbnJjaHh3MDZ4TW81N0NG?= =?utf-8?B?K21WRTJnczF1VEQ5b2grOXhZbHFSZWJVdzdadndNZTFiQm1SSW9JV1F2QnhE?= =?utf-8?B?c1dnRXlseG80ZWdNV0JOVVNrOTJ2YllCaW9DZ0JvTmlpSE9oc2FrcnVrUS9n?= =?utf-8?B?dW1sZEQ5dlRvazVQR0x1WTRvVU1kZWs2VjhEdDZCT1oyem5TdWVnMW1ZMmxQ?= =?utf-8?B?Qms0QWVxbWVxSWFmU3hTdXNzcEx3c09mWFI5anczaDJUa0lQY2JyUnZDb2M5?= =?utf-8?B?bDBpbUY2WVd0YWxUOHE1cGkyaEZRWVAvSklhcWpwa1Z0bHBjU0ZIaksrZDJ0?= =?utf-8?B?Y01nczY3UEpDbnBSMUxGQ2ViOUVSeERIdUZVcUpxNmJvQjFrK0NrckFBS0Uw?= =?utf-8?B?QkNTSWVkWDhCWHVVREdrd2lQcVZjZytjNytrcFFCWU9ZNWdMakozRWsxdHNz?= =?utf-8?B?RFJPMHVDZkI3alhheG0vMmtlc2krTHQ3TEh5TCs0ZWxCM0Z1Yit1OGhXQUJQ?= =?utf-8?B?RWhPd2JGSmJMOGg1YUpDQXp0STNzbUpuRWhkNXp3a0lQdm9RWE5paDlzc0hN?= =?utf-8?B?L29rODNMTnFham1WaVBQV1l0b1VVcTBuVm9obXV6eFpMQkpIckxPVGFaWEgr?= =?utf-8?B?S295SHZuYUZPMjJmR0w3SUtma2prV1QxcVZqVXE2OEZ6Z0VYQXVWcTM5c2JK?= =?utf-8?B?UXVySVFmYWQ1bE03aWFEcEtFT1dIcm56VUU2c0tKbDZScFdtOGdLdWcyZ1dr?= =?utf-8?B?eWF6SVEwdTZEaFVwRy9DRWYvakx3Mnl5dEIxaXdMYVY3V1VmSEVvaFVKVEc3?= =?utf-8?B?dG5RVXVaTWVSU3ZvVzhTWW5Bb2tLa2s4SnU4U1ZOTi9VV3NzOTd4amJTbDlp?= =?utf-8?B?dG95WjJwWkJCc3M3aC8reVU5WndITHV2bTZLdm9oN1dMQTVnbC9RS3o1bnZ6?= =?utf-8?B?MXNFMUY4S3YvbFR2RXhZbUl0ZmxCTGZyL2xraDczSnI4OUFPWGx0WHNGTVNR?= =?utf-8?B?dnRndGduOXREazN2eWpBa3oySUxHUmt0bXRHTDdyRm5jeVBjcXlPUU10aE5F?= =?utf-8?B?c09SLzU0VU82UzRvelg2cXg1cy9KOEFiVnFyeTdIQWNpZUplZFVaTkhQSW9u?= =?utf-8?B?NW5LMzVVZU5aUlZ2WFFUMTNneUpUYXJYTHFsaHZiUUZCU0VnankrOENiZHJm?= =?utf-8?B?YkdYRTFQM3pqNUFzbFJSQUdLZnJaY3QreEtkQStBc3JycVRXUVJNWWwwT0pm?= =?utf-8?B?TngzN0tOdnMrN255cXQrdXh0YThaVVdheHl5TGJKbkNMN2hwUmt6a3hucXBJ?= =?utf-8?B?RDYyL0F3aUhlVmRCby9wdkRFcm1SSUlPUUhVSExBRDlGV1JHbDZLaHlWNjZs?= =?utf-8?B?M1c4R3Qxdlp6VGYrR3JBM0lPQzBpbEJNSUV5dCt5ekVZc3UvU0xRUkZXNmtQ?= =?utf-8?B?WWl1OFM1UW1QVWtPcjVSTnNBUHlleU5ZaGRHWG55SE81WjBLUUpNbkxSYW1C?= =?utf-8?Q?3wSmB7PTeQQcIBwqoEAojEU=3D?= 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: DM6PR12MB4811.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f9b702f6-01a2-4342-6b80-08da78429f49 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Aug 2022 07:01:16.1753 (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: B1jjcF/2k2iSfgFbvwN7H3KRSyemb/UC9tLj3If7vb0uiKOejetPrN/IPqwXiWdz5lMhZMTnJmeyQMNyM5jPBQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB6165 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 SGkgQW1hbiwNCg0KTm8sIHRoZSBncm91cCBhdHRyaWJ1dGUgaGFzIGl0cyBvd24gbWVhbmluZywg c28gaXQgY2Fubm90IGJlIHVzZWQgZm9yIHRoaXMgcHVycG9zZSwgdW5sZXNzIEkgbWlzdW5kZXJz dG9vZCB5b3VyIG1lYW5pbmcuDQoNClRoYW5rcywNCkVsaQ0KDQo+LS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCj5Gcm9tOiBTaW5naCwgQW1hbiBEZWVwIDxhbWFuLmRlZXAuc2luZ2hAaW50ZWwu Y29tPg0KPlNlbnQ6IFRodXJzZGF5LCBKdWx5IDI4LCAyMDIyIDU6MDcgUE0NCj5UbzogZGV2QGRw ZGsub3JnOyBFbGkgQnJpdHN0ZWluIDxlbGlickBudmlkaWEuY29tPg0KPkNjOiBTbGF2YSBPdnNp aWVua28gPHZpYWNoZXNsYXZvQG52aWRpYS5jb20+OyBPcmkgS2FtIDxvcmlrYUBudmlkaWEuY29t PjsNCj5Bc2FmIFBlbnNvIDxhc2FmcEBudmlkaWEuY29tPjsgTWF0YW4gQXpyYWQgPG1hdGFuQG52 aWRpYS5jb20+OyBHYWV0YW4NCj5SaXZldCA8Z2FldGFuckBudmlkaWEuY29tPjsgTmlyIEFudGVi eSA8bmFudGVieUBudmlkaWEuY29tPjsgWXV5aW5nDQo+WmhhbmcgPHl1eWluZy56aGFuZ0BpbnRl bC5jb20+OyBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEB4aWxpbnguY29tPjsNCj5BbmRyZXcg UnliY2hlbmtvIDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IE5CVS1Db250YWN0LQ0K PlRob21hcyBNb25qYWxvbiAoRVhURVJOQUwpIDx0aG9tYXNAbW9uamFsb24ubmV0Pg0KPlN1Ympl Y3Q6IFJlOiBbZHBkay1kZXZdIFtSRkNdIHRlc3RwbWQ6IHN1cHBvcnQgdXNlci1pZCBhdHRyaWJ1 dGUNCj4NCj5FeHRlcm5hbCBlbWFpbDogVXNlIGNhdXRpb24gb3BlbmluZyBsaW5rcyBvciBhdHRh Y2htZW50cw0KPg0KPg0KPkhpIEVsaSwNCj4NCj5JbiBSVEUgZmxvdyB0aGVyZSBpcyBzdXBwb3J0 IGZvciBncm91cF9pZCBhdHRyaWJ1dGUodTMyKS4NCj5TaW1pbGFyIHRvIHRoZSBleGFtcGxlIHlv dSBnYXZlLQ0KPg0KPnRlc3RwbWQ+IGZsb3cgY3JlYXRlIDAgZ3JvdXAgMHgxMjM0IGluZ3Jlc3Mg cGF0dGVybiBldGggLyBlbmQgYWN0aW9ucw0KPmNvdW50IC8gZHJvcCAvIGVuZA0KPg0KPlBsZWFz ZSBjaGVjayBpZiBpdCBmaXRzIHRoZSByZXF1aXJlbWVudC4NCj4NCj5SZWdhcmRzDQo+QW1hbg0K Pg0KPg0KPk9uIDcvMjAvMjAyMiAyOjE0IEFNLCBUaG9tYXMgTW9uamFsb24gd3JvdGU6DQo+PiAr Q2MgZXRoZGV2IGFuZCB0ZXN0cG1kIG1haW50YWluZXJzDQo+Pg0KPj4gQW55IGZlZWRiYWNrIGFi b3V0IHRoaXMgbmVlZCBhbmQgc29sdXRpb24/DQo+Pg0KPj4NCj4+IDA0LzA3LzIwMjIgMTA6MjQs IEVsaSBCcml0c3RlaW46DQo+Pj4gVXBvbiBjcmVhdGlvbiBvZiBhIGZsb3csIHRlc3RwbWQgYXNz aWducyBpdCBhIGZsb3cgSUQuIExhdGVyLCB0aGUNCj4+PiBmbG93IElEIGlzIHVzZWQgZm9yIGZs b3cgb3BlcmF0aW9ucyAocXVlcnksIGRlc3Ryb3ksIGR1bXApLg0KPj4+DQo+Pj4gVGhlIHRlc3Rw bWQgYXBwbGljYXRpb24gYWxsb3dzIHRvIG1hbmFnZSBmbG93IHJ1bGVzIHdpdGggaXRzIElEcy4N Cj4+PiBUaGUgZmxvdyBJRCBpcyBrbm93biBvbmx5IHdoZW4gdGhlIGZsb3cgaXMgY3JlYXRlZC4N Cj4+PiBJbiBvcmRlciB0byBwcmVwYXJlIGEgY29tcGxldGUgc2VxdWVuY2Ugb2YgdGVzdHBtZCBj b21tYW5kcyB0bw0KPj4+IGNvcHkvcGFzdGUsIHRoZSBmbG93IElEcyBtdXN0IGJlIHByZWRpY3Rh YmxlLg0KPj4+DQo+Pj4gVGhlIGlkZWEgYnJvdWdodCBoZXJlIGlzIHRvIGFsbG93IHByb3ZpZGlu ZyBzb21lIHVzZXItZGVmaW5lZCBJRCwNCj4+PiBjaG9zZW4gaW4gYWR2YW5jZSBvZiB0aGUgZWZm ZWN0aXZlIGZsb3cgY3JlYXRpb24uDQo+Pj4NCj4+Pg0KPj4+IEV4YW1wbGU6DQo+Pj4NCj4+PiB0 ZXN0cG1kPiBmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgdXNlcl9pZCAweDEyMzQgcGF0dGVybiBldGgg LyBlbmQNCj4+PiB0ZXN0cG1kPiBhY3Rpb25zDQo+Pj4gY291bnQgLyBkcm9wIC8gZW5kDQo+Pj4g RmxvdyBydWxlICMwIGNyZWF0ZWQsIHVzZXItaWQgMHgxMjM0DQo+Pj4NCj4+PiB0ZXN0cG1kPiBm bG93IGRlc3Ryb3kgMCB1c2VyX2lkIHJ1bGUgMHgxMjM0DQo+Pj4gRmxvdyBydWxlICMwIGRlc3Ry b3llZCwgdXNlci1pZCAweDEyMzQgSGVyZSwgInVzZXJfaWQiIGlzIGEgZmxhZyB0aGF0DQo+Pj4g c2lnbmlmaWVzIHRoZSAicnVsZSIgSUQgaXMgdGhlIHVzZXItaWQuDQo+Pj4NCj4+PiBUaGUgbW90 aXZhdGlvbiBpcyBmcm9tIE9WUy4gT1ZTIGR1bXBzIGl0cyAicnRlX2Zsb3dfY3JlYXRlIiBjYWxs cyB0bw0KPj4+IHRoZSBsb2cgaW4gdGVzdHBtZCBjb21tYW5kcyBzeW50YXguIEFzIHRoZSBmbG93 IElEIHRlc3RwbWQgd291bGQNCj4+PiBhc3NpZ24gaXMgdW5rd29uLCBpdCBjYW5ub3QgbG9nIHZh bGlkICJmbG93IGRlc3Ryb3kiIGNvbW1hbmRzLg0KPj4+DQo+Pj4gV2l0aCB0aGUgZW5oYW5jZW1l bnQgZGVzY3JpYmVkIGFib3ZlLCB2YWxpZCB0ZXN0cG1kIGNvbW1hbmRzIGNhbiBiZQ0KPj4+IGNy ZWF0ZWQgaW4gYSBsb2cgdG8gY29weS9wYXN0ZSB0byB0ZXN0cG1kLg0KPj4+IFRoZSBhcHBsaWNh dGlvbidzIGZsb3dzIHNlcXVlbmNlIGNhbiB0aGVuIGJlIHBsYXllZCBiYWNrIGluIHRlc3RwbWQs DQo+Pj4gdG8gZW5hYmxlIGVuaGFuY2VkIGRwZGsgZGVidWcgY2FwYWJpbGl0aWVzIG9mIHRoZSBh cHBsaWNhdGlvbnMncw0KPj4+IGZsb3dzIGluIGEgY29udHJvbGxlZCBlbnZpcm9ubWVudCBvZiB0 ZXN0cG1kIHJhdGhlciB0aGFuIGEgZHluYW1pYywNCj4+PiBtb3JlIGRpZmZpY3VsdCB0byBkZWJ1 ZyBlbnZpcm9ubWVudCBvZiB0aGUgYXBwbGljYXRpb24uDQo+Pg0KPj4NCj4+DQo+Pg0KDQo=