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 E9A04438CB; Mon, 15 Jan 2024 09:14:25 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D5CEE40647; Mon, 15 Jan 2024 09:14:25 +0100 (CET) Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on2073.outbound.protection.outlook.com [40.107.102.73]) by mails.dpdk.org (Postfix) with ESMTP id 8814C40633 for ; Mon, 15 Jan 2024 09:14:24 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LTPNZUiDqDomOGUbgDK9BqMwFBwjhd3UL0oC7WfNuvnL9KurED9hV/Pr2cEnZ7iCASyYOLPg2f0/upboSTvLpzqL20LhwNWuyOJyBnVbOMj/tEBpvLIDrfmREM8w3ij7ddI+bbu3xKERh+wlXUAHaWTj+z1ckP/rGmh6N5jQZXX8NVVKyXzLPLy37Ar1NbkVzTQw15R1Pq2kGoKaIh9Z1PaMRwUGElxVIjJpQfwcWsMeFgOhGEX6aC/VADrZrYCSBXdYvnfNymT9e+QRguKqrEs+gcZ9b5wGuBUWMHGlKmTVw0GEgxl9Vsedt5z+xZQEb9o0QA4hMqnjak74uSRW6w== 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=shy3DyHok+4ZZ96Pf2yb0AUDnLWbGUJzJZpuW4COcU4=; b=bMJcrO3xfjuSH5OaObkLN4rN3PU4TCLYA1XgQPcC/Jn/V1EvZtOl7TrExq1/TKgaeZfcJPO+VIN9mNxqEBIqzlGtVtwsZYhGpPajScE7wfbGp48lGcMutSaGQsnmb/TybID198FU7RZSiCqwwDKSSlQ683TgNGpR/Toimtc/C+gdb11UEU4tbcPHw6AbtjgzPUnSaSn93Twtc/x8hXWo6/bHLcbM4wd80BXIvLq9DTH28zLLCrWdQx4wpM0EEXVN9wZBMDlU9yN1GjwoBitzGPKjY+TBMy3R32314C/iD7ZJR2F3HRLnLSG2weMj7q++PYNrj8Y3vOUeGJCLXKbhuQ== 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=shy3DyHok+4ZZ96Pf2yb0AUDnLWbGUJzJZpuW4COcU4=; b=uEVOJXyye07aG3fI91Vs+5v6n9v8Jf1LCBlF8zCwA38pbUD6HkiXN7LZr4dAiO3CXzgck82tMQAHE1eLByBw2rkdyHdim1DqgKtK84loIf9fsr3b+leY+GIuso5R2mwm8RnBJe8OBjih9iRCxE94Qjgpgvj+XgOlYENmzF3O4N5nzJHfUp/nEAavRrcP+rgiolS28MVeQqWBpvdRmMHtz+iulQlSR6HGY83EDLrDb7fQzhwQGW48QjIIughODqXAzG9/Cwd9d31Xxy/LlTqIrReevDdEXHJIatJj+lDTbr1UmHkcNwb1w2rN7ZMRfO9z2RkXC8iDTz1xznnU4D+xuQ== Received: from CO6PR12MB5396.namprd12.prod.outlook.com (2603:10b6:303:139::8) by DS0PR12MB9446.namprd12.prod.outlook.com (2603:10b6:8:192::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.23; Mon, 15 Jan 2024 08:14:22 +0000 Received: from CO6PR12MB5396.namprd12.prod.outlook.com ([fe80::df56:6290:5b5a:e018]) by CO6PR12MB5396.namprd12.prod.outlook.com ([fe80::df56:6290:5b5a:e018%6]) with mapi id 15.20.7181.022; Mon, 15 Jan 2024 08:14:21 +0000 From: Suanming Mou To: Andrew Rybchenko , Ori Kam , Aman Singh , Yuying Zhang , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Ferruh Yigit CC: "dev@dpdk.org" Subject: RE: [PATCH v2 2/3] ethdev: add compare item Thread-Topic: [PATCH v2 2/3] ethdev: add compare item Thread-Index: AQHaMhuSLfBFwFhcOEqDklcz5cAqprDV+Z6AgAS3GFA= Date: Mon, 15 Jan 2024 08:14:21 +0000 Message-ID: References: <20231214031227.363911-1-suanmingm@nvidia.com> <20231219013337.531548-1-suanmingm@nvidia.com> <20231219013337.531548-3-suanmingm@nvidia.com> <61e8a66c-7456-4975-ab29-87f4c48c21ce@oktetlabs.ru> In-Reply-To: <61e8a66c-7456-4975-ab29-87f4c48c21ce@oktetlabs.ru> 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: CO6PR12MB5396:EE_|DS0PR12MB9446:EE_ x-ms-office365-filtering-correlation-id: a04a4b2f-4234-45d7-3e57-08dc15a1faae 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: ABQ9OpJYk0E9s3QX/a+01vOq3HZxtMQ9iMYcfBstmD6JmOR5sEbYmhfIje+z1hnw82fM0pAkkKuhxf+3sVGIp1Fd9aNQzizrMI449BB5qew0HIpqM8QK64D/vQSMeZlyf9YCnyQr8JfShGUtp8G2KooFUwCpnKMRMzAYgNcUKi7ffQ/2pyoNDNOssPxnwy+Z7N3H5FERJGvjMzyiJT+sr/sasJDoKty9UihviFCzvwGRXmFLzIvXX/7xgU4Gwe+CKx3LhAC4EnC4yTEUW1vb9eOWxA6i5Oa2nk8anc+kS2vcd1s4SCpGOIeK/jPVkDTWpmGp9u6pQrCd3i1yIxx3OQ0yZvkOonQ3CsChVqyb4HRPpyqgVLgqsbbI5zhPV960uTSomRFRoP0S6gjsEZQ4KKmYrQcKWuguhxfkbYS+1lQD4Ijrf7gRYraOTx/fcNVm/C0kGFNZLXvNzGoA5bscJAYo1mkyvyIoIT10ld6Kd+itjxRPJek/rqWr6SYzGYxJdvr15hPgkhG0/DhUER0p5pdc+FPv2Ijgaxd4/61oGA/H6ZlWK59ibr2i071rXkkKNBAF7EgvUixBxMIVISzLJWj1KtgwLEaODjjGKbiyyxVsdUafvYERHcGU1H4EZsowntSG5Dip1ylxf1nu75+mCvi+boXHZwn5XUaIa6mFeyA= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CO6PR12MB5396.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(39860400002)(136003)(376002)(366004)(346002)(396003)(230273577357003)(230173577357003)(230922051799003)(64100799003)(1800799012)(186009)(451199024)(5660300002)(478600001)(2906002)(8936002)(4326008)(8676002)(52536014)(53546011)(7696005)(71200400001)(6506007)(9686003)(64756008)(316002)(66446008)(66476007)(66556008)(76116006)(110136005)(66946007)(41300700001)(122000001)(38070700009)(38100700002)(33656002)(86362001)(55016003)(26005)(83380400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SDNld0gzWVJYSGhjTDYwODh5M3VZT2QzSUJZV3VmN2VuRlV1c25HeWRHNFE5?= =?utf-8?B?Lzk1YTZ5OEVLVWRCR3VhTmhxRVQ2OWxIYzZ1MUxBUUM3SVpnS0NaL2x1Ym80?= =?utf-8?B?cVljMC90NEE1eHpDZGdsMDRVcTcwZ0JSZ0F2Y1hzbVo5N1pocHB0UGJITXQv?= =?utf-8?B?TnBJTk9ZSEg3RFk2ODZOQzBpMmM1ZEdQV0xqZVo0WWx1WHM2Z05NZWpDWUdH?= =?utf-8?B?VWZaSG4xVXZ3dUcrZEFqNzJUdzlNbXA5eHFDT1VONkQ5U1VUOEdYekFDN1Q4?= =?utf-8?B?RnZ0ZzZsQ09sS1dZQTg5aGtnN0hWZlFRaGhWQk1LNVpqYjV1UUZRa1VWOVNN?= =?utf-8?B?U1lsaWdadk8wRlMxNjAyUWpZNHdzZjh0NGlTamhnS1p6czRaRWVEVHFXWVNv?= =?utf-8?B?L3pSelFiU09aWFpBbGdMYVdRUDhFMXNkNktDN3RSVEZ3MGV4MEdMNEVaZXA4?= =?utf-8?B?Mnk1ejR5N0Y4SGlRbFVmUXIvaDRHUTVOdGZDZCs1bmlSbmtXVWptNktYcTlD?= =?utf-8?B?Ym5XekM1ckdMRzZlUHpLYWNCSlRGV2ZrZ1RLcGhSblovVmMvR1BLbzVEcVB3?= =?utf-8?B?cU0yOExpTFlLWmFBUC8reHhDZmtWNVBDTEJES3dCbzkvWUgwV204M3I0NEs1?= =?utf-8?B?QmV4eXgwSVVKalphZTI4c1UwQVJXZ1UrWFdjVE1SeHdZTkE4MzJic0pHQ3hF?= =?utf-8?B?dG1oSWF6eW91clI5SmtUZDAyN3FOb0lzL0ROU0dUSituVTR2Q0ZKRVJ0Kytn?= =?utf-8?B?d1hlSHNtY29zNm8zZGdoZWY1bnZrNzZURUZyM0RwOERUQkhBbklzNExjbVhH?= =?utf-8?B?WTRsdTZmbzZMbXhFWWFOOFYrUWo5eW5LSVJ3MXhUVUpudnVnOVo0bzRUK1VX?= =?utf-8?B?ZzNyRndSUnQ4YXBsZ0xzMVhhbnRZa3ZRTTRKakVUYm1VNE9IblF1dFF6eFBu?= =?utf-8?B?WS9XbkRnMithYzB3ZzdEY0hScllXdWZBSThJbEx4N3ZmeldmVjhjZ3B6WW5w?= =?utf-8?B?dFczUlNtaHpvVWhhSUdtSVdUUXZ0TGY3cSt0TVVPcUVMQld5SGxFQVp0bmRm?= =?utf-8?B?SC9ZUUltZzVVT1FRNWdOblgxemVlRE5sUHQrd3hsbitRRThWanA0Zy9GSVRP?= =?utf-8?B?dXI0NXBlb1FhVjFVb1U2SGdpSVhMYjRSbFQ0RDFEWGlaR1NUSkxSeXpiQzVP?= =?utf-8?B?VkpXN2FaWXhxL05HNFRWc3FFZmJIRTBNazNvNTJCSFpyRktIYmVCV3I1QWU0?= =?utf-8?B?SDJTWFJVUElzTWpjS3NLTW5wMysxLzdPQnZpRjI5VUZNZFpsdU1tVHdwcUpF?= =?utf-8?B?NlNPZHl3c0NOMDlCdU0yTTY0TjVkTUUxL1RleEF0Z0MxOUZxMGJqS1d3ZC9x?= =?utf-8?B?T0d6aGFuUGJFdEZLK0R1V1o1cmtqVnpHcGRqQmZ4RlpFY21HY0ZLaTlENjl6?= =?utf-8?B?VVZFSmNRT091YXJHSFRnc0JzdkQ0dE9raXB0RHc2M3ovbDdVZFFkUGozbjh6?= =?utf-8?B?cTlkU2N3UlpjdDVTS1VjeG5oSVJnWmpTdFhYMXpqVGJhZStrMjE3VXNVQ25W?= =?utf-8?B?K2VaZEVXS2JGZzgzekZsTGdLUkxnUnZBU1FRaEllcGtpZFFiRzhqLzNpUGxw?= =?utf-8?B?VVF1OTRhQ0djdVVyZTIzUDhiWitvLytFU3BXL0VkM1N6TzI4ZzNjNjZaNThJ?= =?utf-8?B?eGxES1hVUTNRQlo3MFhKaDFyeVk5UjBQMmE2YkVvUTh4dDBENWhhbHhDU2dr?= =?utf-8?B?WEJWY2w3eERNZEdVMHlXSDBWTGZocUc2WTR3aHFuSXR1VFVXL01Wajl5aE1o?= =?utf-8?B?UUZLOFJwZDlHSnZGVUtkYTk2Z1d0VEtSR2MrZkNlSGtpMmNGZVFyWTVVeVd0?= =?utf-8?B?RGJsUzlCY254RWZQUTRYMUZnRzN0eXBqWVF0azVrSlJkYmdNdkRPTWpJZFZi?= =?utf-8?B?UUpucktUZ3dRQ3pBVTlmbDluK0tteUczTzNndFI1ZVJZUVEzS0NucDkyTEVr?= =?utf-8?B?aDF6NDZYUW9EUGIzWU9FTndmRjVyOUxNVk1YdFI1TEhJdGt2NnRNZm96NkRo?= =?utf-8?B?bWVBWWEyRU93K3IwcXM2eGpnS3Mxa0t0blZ5Z1BXM0FOUU1KMjRkWjlubExE?= =?utf-8?Q?jsU7rWQqtb0VeVvPoJvJgF+o+?= 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: CO6PR12MB5396.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a04a4b2f-4234-45d7-3e57-08dc15a1faae X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jan 2024 08:14:21.9225 (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: 6p784HJhu/DBrNYX9U9dVNhNIpv/huAB5TliQ8oGIDkspC0SKzPhnktDVHjzq8PPO60LHDq3wmfUVfbQK4orXQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB9446 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 SGksDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQW5kcmV3IFJ5YmNo ZW5rbyA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+DQo+IFNlbnQ6IEZyaWRheSwgSmFu dWFyeSAxMiwgMjAyNCA0OjExIFBNDQo+IFRvOiBTdWFubWluZyBNb3UgPHN1YW5taW5nbUBudmlk aWEuY29tPjsgT3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47DQo+IEFtYW4gU2luZ2ggPGFtYW4u ZGVlcC5zaW5naEBpbnRlbC5jb20+OyBZdXlpbmcgWmhhbmcNCj4gPHl1eWluZy56aGFuZ0BpbnRl bC5jb20+OyBOQlUtQ29udGFjdC1UaG9tYXMgTW9uamFsb24gKEVYVEVSTkFMKQ0KPiA8dGhvbWFz QG1vbmphbG9uLm5ldD47IEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+DQo+IENj OiBkZXZAZHBkay5vcmcNCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2MiAyLzNdIGV0aGRldjogYWRk IGNvbXBhcmUgaXRlbQ0KPiANCj4gT24gMTIvMTkvMjMgMDQ6MzMsIFN1YW5taW5nIE1vdSB3cm90 ZToNCj4gPiBUaGUgbmV3IGl0ZW0gdHlwZSBpcyBhZGRlZCBmb3IgdGhlIGNhc2UgdXNlciB3YW50 cyB0byBtYXRjaCB0cmFmZmljDQo+ID4gYmFzZWQgb24gcGFja2V0IGZpZWxkIGNvbXBhcmUgcmVz dWx0IHdpdGggb3RoZXIgZmllbGRzIG9yIGltbWVkaWF0ZQ0KPiA+IHZhbHVlLg0KPiA+DQo+ID4g ZS5nLiB0YWtlIGFkdmFudGFnZSB0aGUgY29tcGFyZSBpdGVtIHVzZXIgd2lsbCBiZSBhYmxlIHRv IGFjY3VtdWxhdGUgYQ0KPiA+IElQdjQvVENQIHBhY2tldCdzIFRDUCBkYXRhX29mZnNldCBhbmQg SVB2NCBJSEwgZmllbGQgdG8gYSB0YWcNCj4gPiByZWdpc3RlciwgdGhlbiBjb21wYXJlIHRoZSB0 YWcgcmVnaXN0ZXIgd2l0aCBJUHY0IGhlYWRlciB0b3RhbCBsZW5ndGgNCj4gPiB0byB1bmRlcnN0 YW5kIHRoZSBwYWNrZXQgaGFzIHBheWxvYWQgb3Igbm90Lg0KPiA+DQo+ID4gVGhlIHN1cHBvcnRl ZCBvcGVyYXRpb25zIGNhbiBiZSBhcyBiZWxvdzoNCj4gPiAgIC0gUlRFX0ZMT1dfSVRFTV9DT01Q QVJFX0VRIChlcXVhbCkNCj4gPiAgIC0gUlRFX0ZMT1dfSVRFTV9DT01QQVJFX05FIChub3QgZXF1 YWwpDQo+ID4gICAtIFJURV9GTE9XX0lURU1fQ09NUEFSRV9MVCAobGVzcyB0aGFuKQ0KPiA+ICAg LSBSVEVfRkxPV19JVEVNX0NPTVBBUkVfTEUgKGxlc3MgdGhhbiBvciBlcXVhbCkNCj4gPiAgIC0g UlRFX0ZMT1dfSVRFTV9DT01QQVJFX0dUIChncmVhdCB0aGFuKQ0KPiA+ICAgLSBSVEVfRkxPV19J VEVNX0NPTVBBUkVfR0UgKGdyZWF0IHRoYW4gb3IgZXF1YWwpDQo+ID4NCj4gPiBTaWduZWQtb2Zm LWJ5OiBTdWFubWluZyBNb3UgPHN1YW5taW5nbUBudmlkaWEuY29tPg0KPiANCj4gSnVzdCBvbmUg bml0IGJlbG93LCBhbnl3YXkNCj4gQWNrZWQtYnk6IEFuZHJldyBSeWJjaGVua28gPGFuZHJldy5y eWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pg0KPiANCj4gSSBkaXNsaWtlIHRoYXQgbWFueSBsaW5lIG9m IGNvZGUgYXJlIG1vdmVkLCBidXQgaXQgbG9va3MgbGlrZSBpdCBpcyBiZXR0ZXIgdGhhbiBrZWVw aW5nDQo+IHRoZW0gaW4gcGxhY2UgYW5kIGJyZWFrIG9yZGVyIGluIHRoZSBmaWxlLg0KDQpUaGVz ZSBvbmx5IGNoYW5nZSBvbmNlIGJ1dCB3aWxsIGtlZXAgdGhlIGZpbGUgYmUgY2xlYW4gZm9yIHRo ZSBjb21pbmcgZGF5cy4NCkFueXdheSwgaWYgdGhlcmUgYXJlIG90aGVycyBzdWdnZXN0IHRoYXQg YXMgd2VsbCwgSSB3aWxsIGNoYW5nZS4gVGhhbmtzLg0KDQo+IA0KPiA+IGRpZmYgLS1naXQgYS9k b2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0DQo+ID4gYi9kb2MvZ3Vp ZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0DQo+ID4gaW5kZXggNDQ3ZTI4ZTY5 NC4uMjIwYjM5NjI5NSAxMDA2NDQNCj4gPiAtLS0gYS9kb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3Vn L3Rlc3RwbWRfZnVuY3MucnN0DQo+ID4gKysrIGIvZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90 ZXN0cG1kX2Z1bmNzLnJzdA0KPiA+IEBAIC0zODQxLDYgKzM4NDEsMTIgQEAgVGhpcyBzZWN0aW9u IGxpc3RzIHN1cHBvcnRlZCBwYXR0ZXJuIGl0ZW1zIGFuZCB0aGVpcg0KPiBhdHRyaWJ1dGVzLCBp ZiBhbnkuDQo+ID4NCj4gPiAgICAgICAgICAgLSBgYHBhY2tldF90eXBlIHt1bnNpZ25lZH1gYDog cGFja2V0IHR5cGUuDQo+ID4NCj4gPiArLSBgYGNvbXBhcmVgYDogbWF0Y2ggdGhlIGNvbXBhcmlz b24gcmVzdWx0IGJldHdlZW4gcGFja2V0IGZpZWxkcyBvciB2YWx1ZS4NCj4gPiArDQo+ID4gKyAg ICAgICAgLSBgYG9wIHtzdHJpbmd9YGA6IGNvbXBhcmlzb24gb3BlcmF0aW9uIHR5cGUuDQo+ID4g KyAgICAgICAgLSBgYGFfdHlwZSB7c3RyaW5nfWBgOiBjb21wYXJlZCBmaWVsZC4NCj4gPiArICAg ICAgICAtIGBgYl90eXBlIHtzdHJpbmd9YGA6IGNvbXBhcmF0b3IgZmllbGQuDQo+ID4gKyAgICAg ICAgLSBgYHdpZHRoIHt1bnNpZ25lZH1gYDogY29tcGFyaXNvbiB3aWR0aC4NCj4gDQo+IE1pc3Np bmcgb25lIG1vcmUgZW1wdHkgbGluZSBiZWZvcmUgdGhlIG5leHQgc2VjdGlvbi4NCg0KVGhhbmtz LCB3aWxsIHVwZGF0ZS4NCg0KPiANCj4gPg0KPiA+ICAgQWN0aW9ucyBsaXN0DQo+ID4gICBeXl5e Xl5eXl5eXl4NCj4gDQo+IFtzbmlwXQ0KDQo=