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 4A01142F83; Wed, 2 Aug 2023 11:31:25 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2170640DDB; Wed, 2 Aug 2023 11:31:25 +0200 (CEST) Received: from mgamail.intel.com (unknown [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 5990C4021D; Wed, 2 Aug 2023 11:31:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1690968684; x=1722504684; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=lUizPcKB/XXayRnXS1DD/TGWcE65Flj2qpv0xq+3mjA=; b=SsIWGyOYO7pUW1bJq4XJQueSXdEUfjNs+uG+RQCaqkCJwqW4m7Z6+Frq +VY+5eUNHqfkopQfCuUFEwpNEbF030TF4pS4HwdmMUni8dhGnsUlVqo5g Cg0kU+ovyqxvYv9TSOiqUm2MkBxkYbtsVu4DqgPxaDGW8JBjl0st/iUFv 2U8DbCwL/6U3Leqkzbvqh/nWvFZp8t5aipQRAa4eJZtCyM1ixfLS9UW1O KxpGATHMRCPWKQAuXUgWfsCiw7r2V3BADAA4y1ZeCsTMg/0+wIYBNwXg7 HWoAfclYgFGgYDsB4An7TE11iKoIaBu8Ey9OT57RaZO3Y6qGVnazMiu9o w==; X-IronPort-AV: E=McAfee;i="6600,9927,10789"; a="372263445" X-IronPort-AV: E=Sophos;i="6.01,248,1684825200"; d="scan'208";a="372263445" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Aug 2023 02:31:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10789"; a="843067746" X-IronPort-AV: E=Sophos;i="6.01,248,1684825200"; d="scan'208";a="843067746" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga002.fm.intel.com with ESMTP; 02 Aug 2023 02:31:21 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 2 Aug 2023 02:31:21 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Wed, 2 Aug 2023 02:31:21 -0700 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (104.47.74.48) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Wed, 2 Aug 2023 02:31:20 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MSXqnbIjAenn25e2hna0qAXSrIFdTtNMr/DCl3sA4jQf6ZRw+1133EiFML0H+/5aL9F8GhB6mFMoLc5WWahmZSTRkQDiNMbDdMC1dIhLKCm94jKUuel3mPGb/4bi3eeFIjKsN+/HhRS00IMkjNLkpcpk9DfDuzmOYZ5azZQAqpWkiXX2hW5NleLiZVI7WDgx5Bt3UJ0T875434wyvCAgZJjX93Fr0os0taRZR8blYZ9BOHsyLKl9UtgxKVsioxzX3D3ivV1YDHTOzlgXnU0oYv+sfvRMQPurTADwGagNog2hgYW4VXmNetWW3fTfUjGcQcDv6NUCOM2oMOL498nEzQ== 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=lUizPcKB/XXayRnXS1DD/TGWcE65Flj2qpv0xq+3mjA=; b=CzbnavhQREZli5r10+o6xMvpsFfTS8AIakS2R0xlgNFqobnPLI2DNsoX+blkwpgNs/DZF4TV0lJFka3eyURWRfOt9CF0gwnAbomHbH9qHf4lo80q5t2BO/7YF5Em+u5ATlXL+8j2OEoclp2P6io+kreS3zBr3bLAUtHS/PPDNcglmntp/Q35yHW7pcBKCyaYx9pRfBGFP8K5afPxSvGjNscN8m22+5BYET0TFk5xg+2M6rssLwoIoDrsk2Q4KWWw6sm+gwYmB3EaS2uP67fkSnpGJWOzoCwmSokdGtITIb9DRmZikNMXmELyRKBn0HQNXIkVtaxAQe7kvqzrA2JyMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DS0PR11MB7442.namprd11.prod.outlook.com (2603:10b6:8:14d::22) by MW3PR11MB4649.namprd11.prod.outlook.com (2603:10b6:303:5b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.45; Wed, 2 Aug 2023 09:31:18 +0000 Received: from DS0PR11MB7442.namprd11.prod.outlook.com ([fe80::6550:103e:d4dd:9c39]) by DS0PR11MB7442.namprd11.prod.outlook.com ([fe80::6550:103e:d4dd:9c39%6]) with mapi id 15.20.6631.045; Wed, 2 Aug 2023 09:31:18 +0000 From: "Dumitrescu, Cristian" To: "Dumitrescu, Cristian" , Ori Kam , Jerin Jacob , "Zhang, Qi Z" CC: "NBU-Contact-Thomas Monjalon (EXTERNAL)" , "david.marchand@redhat.com" , "Richardson, Bruce" , "jerinj@marvell.com" , "ferruh.yigit@amd.com" , "Mcnamara, John" , "Zhang, Helin" , "techboard@dpdk.org" , "dev@dpdk.org" , Ivan Malov Subject: RE: [RFC] lib/ethdev: introduce table driven APIs Thread-Topic: [RFC] lib/ethdev: introduce table driven APIs Thread-Index: AQHZnNmPTyWRPafZMkSsLr2KygwP9K+Kou2AgACEjICAACq7AIAAEj6AgAAFFwCAABaOAIAAD4cAgABQaoCAAMebAIAEpxCAgACfDwCAAQxUgIAANkmAgABls4CALbZy8IAVwGqA Date: Wed, 2 Aug 2023 09:31:18 +0000 Message-ID: References: <20230612111539.462084-1-qi.z.zhang@intel.com> 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=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DS0PR11MB7442:EE_|MW3PR11MB4649:EE_ x-ms-office365-filtering-correlation-id: 5dbf8aba-189b-4d8d-e732-08db933b39df x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: L3sxMTJcv7wteoFDhI4rgwA1TM8S0DREw+3tKJLMFXBU9YIbZ/NWEV3uK6Q65OnWyqIH4S0DebLKjgXN2Z5nbC0f7GOZrcx0jLVj1DdQSPYl/CDJWC94oHSZmX1GHClUJ3Z6FxMTlOY9RKeDC0Nk1Qu+3XqKjyVA7z7k6dkLb1w6rL0Bx8M+/UVZArr7KtoB1OCiBl9wF2Z0rTXGsiOc1QtoSCIPDPIMKCYQboD173m1VfTjlG1IKSa88Iwpx0YBGFkkwPvIiZKLetvexj2/d5gdXVirJKDuaGYCiL1h54AdPUjc5PVmR0q9LKOd/Ly7MwlninVgQd0D9uLCM7q6ES2RAjVu3+6o8emtj+cEiOTGySqwoI/PMR3fXQlbba0jrrnPIDUH+61Ueg7EW2aiiE5bYSG28uT+2wvp6D6kmmYxrFc9ah3j6KM1bK/yNmOvyzUKlKjWrF3O4c2wlPuTMiLr722Px9/aSF6eshWpmntgBOGOm0WmlT9Kz+qx0ZTVQt7jw8LWbNhKmQEE26cj1tSBc6RabE8TW/QGlk6N15jd/vz6OLgXwTXE1my1rkqgJxnSOv3yASMpGTSZG0sX3fA+nrOF6L0l4xhBPExE2y0= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS0PR11MB7442.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(39860400002)(366004)(396003)(136003)(346002)(376002)(451199021)(83380400001)(71200400001)(122000001)(6506007)(53546011)(33656002)(26005)(186003)(38100700002)(110136005)(54906003)(82960400001)(7696005)(478600001)(966005)(9686003)(6636002)(4326008)(316002)(66946007)(66556008)(64756008)(76116006)(66446008)(66476007)(41300700001)(8936002)(52536014)(38070700005)(8676002)(55016003)(5660300002)(2906002)(86362001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MWhnZFFWNzVZYnFYREppcUJmaUxhOXdnZmlZbXlZdHo2cmJiRTF3SUJSeldj?= =?utf-8?B?dmx0bHVmblNyZVZUUVdDVFpqRlphZ1F1RTJmRlV3QWxWYTUvQk1yeVA4Vkxl?= =?utf-8?B?UjBHbFhrNzJYaXhWYnhvdFBkeFp6cndzTTBEeW9jMENNM2lJY2dXM0Q0c0Z1?= =?utf-8?B?YngrK2lLSDZsUGlsQjFyYStEdWVxSGZpMlpUMnY5Q3RaQ2NoMGxVdmRCVHdY?= =?utf-8?B?eTJOL3U5aEhYWXlsSStlT3FqWkIzK3o2RUxObmk5WHZuaEVvK0Q0YnlMYUdR?= =?utf-8?B?K2NJaEMwQVMxeThEdWJ2NEw1bzRieEdaaW5ZTWhIb2FYLzRVUXdqUCtEMm1x?= =?utf-8?B?MXZBSXNmWU1tYUMrbks1YnJwWWNoVklGS2c4RTcyU2xtdkVtY2thbW5FMU5p?= =?utf-8?B?SkUwLzdYZnhVaG9IbVNiR1R1ZmF3L1NaWEJzck8wWWlKbXhXc0dqK2ZrSUJ4?= =?utf-8?B?L0RyZXlJb3VpdEw0NDZmRmJOUHZ1a0IvdTdRY01seW5yZ0U3T1MrQWdtakFT?= =?utf-8?B?NjlMVWY1SStIak92RnZlT2RjQVdHcGtMS2oyZWhSaU10MURrT2FNaS9Vdith?= =?utf-8?B?RzV0dVBjSVhWTUprS3pXdDhhUFRhNmdTdzdLVTBEenNvYkkyZkZUR2JMTk9B?= =?utf-8?B?NW9DNm5lRm1SY1ZnRnIyZ1JCbXdHcTFxck9MdldubFdCaDRuRGphS25WRkpl?= =?utf-8?B?b0xMM2JXZTZQa2JXemsxTEZFVGNWbTJWb0pGUDA0VUhYNzFIRGZzOUFVb1Vx?= =?utf-8?B?Mkt2QmJmak5VNXlhT3UrQVBlbXVNWjlqaGZtUkVEdU9hMDVkNEVKcUhuU214?= =?utf-8?B?M0ZRaHBJbitocUNmVmNiNDJBWmpKQ05aSzRuMVZ5d01aY0VxdVJ6dWF0Lzdl?= =?utf-8?B?L3UyYklzTTJ4bC9zcXQvTnE0Wk1qVmNPb0dpcU53M3RXeUlMY2FxZkM1VFR2?= =?utf-8?B?SGhnUCtWcGtwQ2NPNnQyN2lub3VTZ3JmL2lDeUZ2TFpkMGVvMG4rRHY4K0Mr?= =?utf-8?B?bktXckFGSVVUR05zL0xCUlB5Sm56ZFJpL1ZqTm1xQWxiRE1TSHFOUnFGdUZk?= =?utf-8?B?S2ZvV1lRT3hQR1RHWlVxUElUUHZqejU5MkluaERxb2dHcUVOelZERjdUemFZ?= =?utf-8?B?eVp6K3NqRmhmRVQwNUdsY2QvbGxUMUYzU2lMeGZuRXM2UXlJTTF3OVZHbjly?= =?utf-8?B?ZkswQ0JDWlpoeVZzUFFBWStSclNsYnhKZHNtSEtPaDJRQVAyR04zZW9sVG05?= =?utf-8?B?VUhObklwVHBIV1ZEVUE3ZGFaaWZweHBjT2t2ZytPMWZsNE5mUVgxL2xXV2V2?= =?utf-8?B?ZkdKdFZpSlFRQ0dPMHY0SWl4K3Ivc1Y0aGoyY1Z2OTFKek9TVkx0cW4wL2NB?= =?utf-8?B?dXplTzRRNS83SFJoL2FHNktUTjMyQjh2L1JsR2dGdEtUTEMrbHdlM094dXdF?= =?utf-8?B?V09rc2pUQjRlQXl2YkYzc3R4ZWJpU2tvUmJpa0ZqVTlNRVcrZk5GTFFPd1c3?= =?utf-8?B?ZmZRS1d1dGZncWczTk5aTVROczBYM01GdVVjZ29NM2Y3RDRvbDNSY2Y1T20x?= =?utf-8?B?VXhwWDNZa0ZHUmdQOFFLaXJSOUxrbXJJZU5MRERnalN6VVdCZXJsSmpMRXov?= =?utf-8?B?Z3Uxd1RpV1pqNUpQSW9IazJubWZXOG1SZ0NMUEYyT0NEUmViaFhYMHY3b0Y0?= =?utf-8?B?Q2VyTkFnWThnQWYwTmNUZytWeE50WGk3NXI3cTJiVXVWZDZYNEE0WVNrVVZy?= =?utf-8?B?TWRacVVrRnVGaElhQTVMb2Z5andERDVPa2M3ZEQydlp6VHA2T3luU2ViU05r?= =?utf-8?B?NnB3VFcyS3E5b01qUUdtZWxjR2ZEdFhXQlFWOVRIZVhHa09SaTJZN0NZTE9B?= =?utf-8?B?cDhmMTBnMGYzV05VTFFkVFFaSFdMVTBFSHZwcXY2VGV2dHowWi9DQzZ4dUtM?= =?utf-8?B?QklDUkIyMEY1bW9UandyRmdMZG5rWjBBMHJaeU9YSjNPcnlzelRVa3M4a2l2?= =?utf-8?B?bXJabTREdzB6UGhEOXpGdWIreVg4UXhNbW5OY0JpMlNKRVJzT25DODZ2eHA1?= =?utf-8?B?MzVkUnJlelUyeWhJNmp1cnNQbHJ5bzhIQlFORlIvMWtaVnNLV2ZWOFIvc0p0?= =?utf-8?B?WUp2WUVuQUtNeVVtanc4c0FnQ2pjeU85b0YvUGtFR2dCWmZkT0E3QWhwbFVo?= =?utf-8?B?N0E9PQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB7442.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5dbf8aba-189b-4d8d-e732-08db933b39df X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Aug 2023 09:31:18.6105 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: c2fRRtU3C/rHrXHcW0bBk7isNQ/54dajkpLJuPjTP0rNUuNC8jPAFfgSQhRg7wp9acwMVzX1YWgvtQorIg1mRHG5BTFkSoc1TjWB6+ERteo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR11MB4649 X-OriginatorOrg: intel.com 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRHVtaXRyZXNjdSwgQ3Jp c3RpYW4gPGNyaXN0aWFuLmR1bWl0cmVzY3VAaW50ZWwuY29tPg0KPiBTZW50OiBXZWRuZXNkYXks IEp1bHkgMTksIDIwMjMgMjozOSBQTQ0KPiBUbzogT3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47 IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+Ow0KPiBaaGFuZywgUWkgWiA8cWku ei56aGFuZ0BpbnRlbC5jb20+DQo+IENjOiBOQlUtQ29udGFjdC1UaG9tYXMgTW9uamFsb24gKEVY VEVSTkFMKSA8dGhvbWFzQG1vbmphbG9uLm5ldD47DQo+IGRhdmlkLm1hcmNoYW5kQHJlZGhhdC5j b207IFJpY2hhcmRzb24sIEJydWNlDQo+IDxicnVjZS5yaWNoYXJkc29uQGludGVsLmNvbT47IGpl cmluakBtYXJ2ZWxsLmNvbTsgZmVycnVoLnlpZ2l0QGFtZC5jb207DQo+IE1jbmFtYXJhLCBKb2hu IDxqb2huLm1jbmFtYXJhQGludGVsLmNvbT47IFpoYW5nLCBIZWxpbg0KPiA8aGVsaW4uemhhbmdA aW50ZWwuY29tPjsgdGVjaGJvYXJkQGRwZGsub3JnOyBkZXZAZHBkay5vcmc7IEl2YW4gTWFsb3YN Cj4gPGl2YW4ubWFsb3ZAYXJrbmV0d29ya3MuYW0+DQo+IFN1YmplY3Q6IFJFOiBbUkZDXSBsaWIv ZXRoZGV2OiBpbnRyb2R1Y2UgdGFibGUgZHJpdmVuIEFQSXMNCj4gDQo+IEhpIGZvbGtzLA0KPiAN Cj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IE9yaSBLYW0gPG9yaWth QG52aWRpYS5jb20+DQo+ID4gU2VudDogVHVlc2RheSwgSnVuZSAyMCwgMjAyMyAxMjoxMSBQTQ0K PiA+IFRvOiBKZXJpbiBKYWNvYiA8amVyaW5qYWNvYmtAZ21haWwuY29tPjsgWmhhbmcsIFFpIFoN Cj4gPiA8cWkuei56aGFuZ0BpbnRlbC5jb20+DQo+ID4gQ2M6IER1bWl0cmVzY3UsIENyaXN0aWFu IDxjcmlzdGlhbi5kdW1pdHJlc2N1QGludGVsLmNvbT47IE5CVS1Db250YWN0LQ0KPiA+IFRob21h cyBNb25qYWxvbiAoRVhURVJOQUwpIDx0aG9tYXNAbW9uamFsb24ubmV0PjsNCj4gPiBkYXZpZC5t YXJjaGFuZEByZWRoYXQuY29tOyBSaWNoYXJkc29uLCBCcnVjZQ0KPiA+IDxicnVjZS5yaWNoYXJk c29uQGludGVsLmNvbT47IGplcmluakBtYXJ2ZWxsLmNvbTsNCj4gZmVycnVoLnlpZ2l0QGFtZC5j b207DQo+ID4gTWNuYW1hcmEsIEpvaG4gPGpvaG4ubWNuYW1hcmFAaW50ZWwuY29tPjsgWmhhbmcs IEhlbGluDQo+ID4gPGhlbGluLnpoYW5nQGludGVsLmNvbT47IHRlY2hib2FyZEBkcGRrLm9yZzsg ZGV2QGRwZGsub3JnOyBJdmFuDQo+IE1hbG92DQo+ID4gPGl2YW4ubWFsb3ZAYXJrbmV0d29ya3Mu YW0+DQo+ID4gU3ViamVjdDogUkU6IFtSRkNdIGxpYi9ldGhkZXY6IGludHJvZHVjZSB0YWJsZSBk cml2ZW4gQVBJcw0KPiA+DQo+IDxzbmlwPg0KPiANCj4gPiA+DQo+ID4gPiBZZXMuIFdlIG5lZWQg dG8gY2hhbmdlIHRoZSBiYWNrZW5kIGNvbXBpbGVyIHRvIHVuZGVyc3RhbmQgdGhlIHJ0ZV9mbG93 DQo+ID4gPiBtYXBwaW5nIHRvIHA0IHRvIGF2b2lkIGFueSB0cmFuc2xhdGlvbiBjb3N0Lg0KPiA+ ICsxDQo+ID4gSSB0aGluayB0aGUgaWRlYSBpcyB0aGF0IHRoZSBjb21wbGllciB3aWxsIGNvbnZl cnQgdG8gcnRlX2Zsb3cgYW5kIHN1cHBseQ0KPiBzb21lDQo+ID4gbWFwcGluZyBmaWxlIHNvIHdo ZW4gYXBwbGljYXRpb24gdXNlcyBzb21lIG5hbWUgaXQgd2lsbCBiZSB0cmFuc2xhdGVkIHRvDQo+ IHRoZQ0KPiA+IGNvcnJlY3QNCj4gPiBwcmVjb25maWd1cmVkIHJ0ZV9mbG93IGFjdGlvbg0KPiAN Cj4gU29ycnkgdG8gam9pbiBsYXRlIHRvIHRoaXMgdGhyZWFkLg0KPiANCj4gTGV0IG1lIHRyeSB0 byBjbGFyaWZ5IHRoZSByb2xlIG9mIHRoZSBQNCBjb21waWxlcjoNCj4gDQo+IDEuIFA0IGNvbXBp bGVyIGlzIGZvciB0aGUgZGF0YSBwYXRoIG9ubHksIHdoaWxlIHRoaXMgcHJvcG9zYWwgaXMgZm9y IGEgY29udHJvbA0KPiBwYXRoIEFQSS4NCj4gDQo+IDIuIFRoZSBQNCBwcm9ncmFtIHNpbXBseSBk ZWZpbmVzIHRoZSBkYXRhIHBhdGggcGlwZWxpbmUsIGkuZS4gdGhlIHRhYmxlDQo+IHRvcG9sb2d5 IHRoYXQNCj4gSXZhbiB3YXMgbWVudGlvbmluZy4gVGhlIFA0IGNvbXBpbGVyIHRha2VzIHRoaXMg UDQgcHJvZ3JhbSBhcyBpbnB1dCBhbmQNCj4gdHJhbnNsYXRlcw0KPiBpdCB0byBhIHNvcnQgb2Yg ZmlybXdhcmUgdGhhdCB0aGUgSFcgdW5kZXJzdGFuZHMgYW5kIGxvYWRzIHRvIGNyZWF0ZSB0aGF0 IGRhdGENCj4gcGF0aC4NCj4gDQo+IDMuIFRoZSBQNCBwcm9ncmFtIGRlZmluZXMgdGhlIGtleSBh bmQgYWN0aW9uIGZvcm1hdHMgZm9yIGVhY2ggdGFibGUsIGJ1dCBpdA0KPiBkb2VzIE5PVA0KPiBj b250YWluIHRoZSBzZXQgb2YgZW50cmllcyAoa2V5L2FjdGlvbiBwYWlycykgZm9yIGVhY2ggdGFi bGU7IHRoZSBhY3R1YWwgdGFibGUNCj4gZW50cmllcyBhcmUNCj4gcG9wdWxhdGVkIHBvc3QtaW5p dCBieSB0aGUgdXNlciB1c2luZyBhIGNvbnRyb2wgcGF0aCBBUEkgc3VjaCBhcyBSVEVfRkxPVyBv cg0KPiBvdGhlci4NCj4gDQo+IFNvIHdoYXQgUWkncyBwcm9wb3NhbCBpcyBhYm91dCBpcyBhIGNv bnRyb2wgcGF0aCBBUEkgdG8gcG9wdWxhdGUgdGhlIHRhYmxlcywgYW4NCj4gQVBJIHRoYXQNCj4g aXMgc2ltaWxhciB0byB0aGUgUlRFX0ZMT1cgQVBJLCBhbmQgbm90IGFib3V0IGEgZGF0YSBwYXRo IEFQSSB0byBkZWZpbmUgYQ0KPiB0b3BvbG9neSBvZg0KPiB0YWJsZXMgKHRoZSB0YWJsZSB0b3Bv bG9neSBpcyBlaXRoZXIgaGFyZGNvZGVkIGF0IEhXIGRlc2lnbiB0aW1lIG9yDQo+IGNvbmZpZ3Vy ZWQgaW4gSFcgYXQNCj4gaW5pdCB0aW1lIGJ5ICJmaXJtd2FyZSIgcHJvZHVjZWQgYnkgdGhlIFA0 IGNvbXBpbGVyIG91dCBvZiBhIFA0IHByb2dyYW0pLg0KPiANCj4gTWFrZXMgc2Vuc2U/DQo+IA0K PiBSZWdhcmRzLA0KPiBDcmlzdGlhbg0KDQpIaSBmb2xrcywNCg0KQmFzZWQgb24gY29tbXVuaXR5 IGZlZWRiYWNrLCB3ZSByZWFsaXplZCB0aGF0IGludHJvZHVjaW5nIGEgbmV3IGFuZCBzaWduaWZp Y2FudA0KQVBJIHRoYXQgb3ZlcmxhcHMgaW4gc2NvcGUgd2l0aCB0aGUgZXhpc3RpbmcgUlRFX0ZM T1cgQVBJIG1pZ2h0IG5vdCBiZSB0aGUgYmVzdA0KcGF0aCBmb3J3YXJkLg0KDQpUaGVyZWZvcmUs IHdlIGFyZSBub3cgbG9va2luZyBmb3Igd2F5cyB0byBzdXBwb3J0IG91ciBoYXJkd2FyZSBjYXBh YmlsaXRpZXMgd2l0aA0KbWluaW1hbCBleHRlbnNpb25zIHRvIHRoZSBSVEVfRkxPVyBBUEksIGhl bmNlIFFpIGFuZCBteXNlbGYganVzdCBzZW5kIHRoaXMNCm5ldyBwcm9wb3NhbDoNCmh0dHBzOi8v bWFpbHMuZHBkay5vcmcvYXJjaGl2ZXMvZGV2LzIwMjMtQXVndXN0LzI3MzcwMy5odG1sDQoNClBs ZWFzZSByZXZpZXcgdGhpcyBuZXcgUkZDIGFuZCBwcm92aWRlIHlvdXIgaW5wdXQuDQoNClRoYW5r cyBmb3IgdGhlIGZlZWRiYWNrIQ0KDQpSZWdhcmRzLA0KUWkgYW5kIENyaXN0aWFuDQo=