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 09A1142FB8; Wed, 2 Aug 2023 18:18:38 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DDA1C42D0C; Wed, 2 Aug 2023 18:18:37 +0200 (CEST) Received: from mgamail.intel.com (unknown [134.134.136.20]) by mails.dpdk.org (Postfix) with ESMTP id 39A644021D; Wed, 2 Aug 2023 18:18:35 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1690993115; x=1722529115; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=Ne9GV8ZPhEziihi7AE/Sy2W8JB5LNkqEYtKKqmjask4=; b=n+RuwE0e79lO/vMB60VJ7LVdZK6m151+g+pCrvfURSj67So2sfq3fxuV CQWiIUY+G26XnHafDPkX001m7nh2M4cKXbkHv/cl2OdrPWvGNWApPqLwH +cu2LC30gwHDIKqVvMTQKhYcQSdicqbNSFuXOztOoRmzs0qa5RDkyZN+n YmWi5d7DPHmGdYeBlHK+vNqb+JCV87q3zjli29gFqMQSeaDSpOlO2pFOx qBtKHwvKCDDj5AjM50wEKVmHCtbklFBimz2m5z5iSwba6pT00GEMSM0uY rTGgPJ145NzVrOKNKo0d6mxEiiE9bcsN3frjQy8GZx2bjxDFif6+7jUUL A==; X-IronPort-AV: E=McAfee;i="6600,9927,10790"; a="359665785" X-IronPort-AV: E=Sophos;i="6.01,249,1684825200"; d="scan'208";a="359665785" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Aug 2023 09:15:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10790"; a="903007504" X-IronPort-AV: E=Sophos;i="6.01,249,1684825200"; d="scan'208";a="903007504" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga005.jf.intel.com with ESMTP; 02 Aug 2023 09:15:01 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) 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 09:15:01 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX612.amr.corp.intel.com (10.22.229.25) 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 09:15:00 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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 via Frontend Transport; Wed, 2 Aug 2023 09:15:00 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.109) by edgegateway.intel.com (134.134.137.103) 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 09:15:00 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NQNO/nPTaYzzBlDoNdzcrNvaB2tPfap5jHQ2vGPvgSGsFsaRLf9fMEy8FCcxHf/1+exa3UwkpDI0NBUGCYKTCiZXtylSHlzfo5iNnU3nv9edgsmezJD1PihDG6hfajLh1fq0qhF0IikOvEilwZ2rQAIzlvUUfRMXZOt68xa3lRBNxy1T9GHFlgbNmz9I8UCfnUHv2UfbK6b6k1dnDa/EGNbOXPu//AWDWfpWfmUT+fX9amJLJw3ExlJF6DLzNilTn3u4eSWtvlxypMGp8CwyfThnrMS9cvy1e62RBeShLu6vcPS7xS5rEHqcW/oxE7csSuRc91YnDOOAJknZpIZRIw== 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=Ne9GV8ZPhEziihi7AE/Sy2W8JB5LNkqEYtKKqmjask4=; b=WqA7lSZCMfEDyOUrQYoW32hOS1TbA+hedWDmhhK4xplkHCsjSQep/i3a1cN1b4YnJy7+3rCB/z21vrZztk2j/mbL3/x67pxXiIv7p0y96TMNK0nUS4vBkGAN3Jou7MUMHtOQDuKFVoML4BAk0/K3hXje4UUzPmBxftYMbN4TMw/WJedk0OCz0iz/f1jrdH/kGlWy8ZA2tWUNqyn/r0NzlHB3KZ7hpiV6++bdiGBGinIPbuOvovlyx6e3Q9BWXMgEIFFwgWgUN27QbNhyiFS36ixwi2D2s8tFyUmCMRbel/0w9Bp5iIP2gpMVAbzXoD+0b7iH5RITI6PRf3MH7clHig== 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 MN6PR11MB8103.namprd11.prod.outlook.com (2603:10b6:208:473::10) 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 16:14:58 +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 16:14:58 +0000 From: "Dumitrescu, Cristian" To: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , Jerin Jacob CC: "Zhang, Qi Z" , "thomas@monjalon.net" , "orika@nvidia.com" , "david.marchand@redhat.com" , "Richardson, Bruce" , "jerinj@marvell.com" , "ferruh.yigit@amd.com" , "techboard@dpdk.org" , "Mcnamara, John" , "Zhang, Helin" , "dev@dpdk.org" Subject: RE: [PATCH] ethdev: introduce generic flow item and action Thread-Topic: [PATCH] ethdev: introduce generic flow item and action Thread-Index: AQHZxSHaq6JEAAy13km0+kJQgl6M8q/WzPOAgAAKDYCAAAW8gIAAKMlQgAASn4CAAAtMkA== Date: Wed, 2 Aug 2023 16:14:57 +0000 Message-ID: References: <20230802173451.3151646-1-qi.z.zhang@intel.com> <98CBD80474FA8B44BF855DF32C47DC35D87AB8@smartserver.smartshare.dk> <98CBD80474FA8B44BF855DF32C47DC35D87AB9@smartserver.smartshare.dk> <98CBD80474FA8B44BF855DF32C47DC35D87ABF@smartserver.smartshare.dk> In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35D87ABF@smartserver.smartshare.dk> 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_|MN6PR11MB8103:EE_ x-ms-office365-filtering-correlation-id: d60a3ecf-7d58-4b2e-029b-08db93739dac x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jAdln7eK00yJjAlRt1S2sZ2Et0p2BIDQE5vZJv4HpN/4kcXtWRj2/axOXbUOBKkojSHnhWX/xYZY3aDrHi4BVgT/3OOrpr10LNRbJPOnECG59enXKCmAUdkIVBkjCvYp3gO12QqkFZCTvVZxorpRGs8ScbtAPw79xJedC7i03IszF/fCMk97tRoFsibSVsdm8JK5PCix5GVZtgbWUekhIlLgZls5olgnFQdW+4F4jpoXRxlFgf0V0wLMgJ+ek2Zdhgq84mq4EaEXieaV10oZ0MZ3CczGDRJQjQeztlbYG6zV7oG40ISC4u8abRUI0XRzpHznY0hpwpzVYCoVayWRgyNnqUxE0YkdKoGweCjpMlpStAwhIC7jgu8EmNTce+sLXq1aIcrIU2YfxSaIOZ4Jm7EwK9P2Z0apQSXTi1XzO6fB+k7EYrfja4wvpaxA3iGFRfSGHHxyJYxySKZ1Wl/q568iU4jLfjQtsKrUsavrnaignei4yhdSiGMlv6DsWOnVlos6NqNQR6U8A88Oee948u4YTjQA9OeVd3ePZJN5EzY4aHCwgo3C39Zne8ARQZZgYmxHrmyc5AihgzNBq+l0Bk5qzvOPBP5OjaFXDbcKmQlaqzz8ZjJYgBKU15TyXUUd9FYrSxGqNRx1VKT8cEdGu3jJh48G+jr9y+zMztEweIw= 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)(346002)(376002)(366004)(136003)(396003)(39860400002)(451199021)(45080400002)(478600001)(33656002)(86362001)(966005)(9686003)(71200400001)(7696005)(316002)(8676002)(8936002)(41300700001)(5660300002)(4326008)(66446008)(66556008)(66476007)(64756008)(52536014)(83380400001)(55016003)(54906003)(110136005)(76116006)(2906002)(38100700002)(66574015)(66946007)(26005)(38070700005)(122000001)(82960400001)(186003)(6506007)(53546011)(41533002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WGk5Ryt6cFc3YW16OUZZcy9kd0N3TlRaa2FHRk5VMW9wK1hxc1pDcGJyNVVH?= =?utf-8?B?WnFVRUdkYVZCdGNyaXlFODFlY0NXK3k4dVdWZFl1VDBpSGYycXFVcWhKWFU1?= =?utf-8?B?MXZLZEFCeFRXNUxRK3FhcStjajEzZGFtQkN3TVFXQ01DR21BY1AvaTFiWVVQ?= =?utf-8?B?djc5a01OTDFiZGpWYkViTE40OThNSEdKaGc3Y3NxZXdmdVBoSG16RnBiRWtK?= =?utf-8?B?bHhWL3FvU3VYRXlxU3FEc1czU05OM05Yenlvc21SS1NIVStmZEJQWHZxSFQz?= =?utf-8?B?bSs3WW12bDEyNzRWQkNGeDhmUnRsYVZDV3QxbmdROTliN3ZTeGpzdVIzVSt0?= =?utf-8?B?S2pjdEpBNmVtRDlRelloY0dBcVZTNkpIaWZNeTJZNEZTRlFXMS9Ld044aWtl?= =?utf-8?B?YnhaUTI3M1IwWlA5b2tBdjg0QUdlRlp4UUZvazVZMTI4RHFkc1M0NHRkWURm?= =?utf-8?B?NjZvTkxrTkl1Y2libWdpZVNVTFdMNFZudmdxc1FYa3VFaDFYZ3JmTzdHZDZ3?= =?utf-8?B?RC9URDZ1T3RRcVZUbWhxNGtEN1JqOWFTRXkrUmpmN0thREJJSlBGbS9rdFZV?= =?utf-8?B?VDRQQWErUlN5dy8rVE9QejVQNlZreDMydEo1VmpGK2NIUUprRE1FUngzRTZ5?= =?utf-8?B?Tks1djNOZnFrYUgyZVd5WitXWGhhS2UyZTJqQTcwdGNwcGc0UFpWM2pZelZK?= =?utf-8?B?MTVaWGxadEkzUVJjaHo3RlQ4djFOVGZ5Uy9xZWtlWW9JRTJvbzdXQ1JnbUFk?= =?utf-8?B?UlJ0M0gwQnFrWmc2bVI2eDZDMGNIQTBBbzJoSUF3eVRRVHJoRlNpMXI4eTdp?= =?utf-8?B?QU9sRWRMQVNNbEx1UmNQeHRsRlNseTAxZ0NacktqQ1UzS1NRV2wwakJ2M1FW?= =?utf-8?B?MllKNWZVU1NQMit4L21BbE1GdEZzTnBidkJneW5nR1dyVVZUNHAzOHo3azI2?= =?utf-8?B?NUxDSEpMUTJmclk0TmZxWTI5MFcxUFF5aTV3bkdFTGtwV3dPLzJPOWpzTi9K?= =?utf-8?B?M1Mrd3E2KzRJNGFBVjNuMWhPTHBPUDk2bmtyWXN6UlhFbHl1NVF3aTAxbTdG?= =?utf-8?B?RlNlRUwvcDZkL1NRclBiZE5wZDFDOXErSExVWTJlOXJTSUpCNnVMaERsb2RW?= =?utf-8?B?VnFSTlZRSk1mblZuZ1dScldKMGJKNlUxYTBBVzhHWVh4R2h2cmo5QnhUclcy?= =?utf-8?B?ZlMwblVxSGN0Z1haT0hYdDM1QTFqeEFRcVg5Y3NWVEJNYXFtcDBNdmVLZkFq?= =?utf-8?B?MmtKUzB4NHRuekxTQjA0Qmk3aEdkYXRuZWR1d3M2V2E4anI2a3RXYm1wSFFq?= =?utf-8?B?dXVnMWhWMTBISnRQcTBrL0U3WkpvZ1BjaTZSbEtETFN6Z0t0TjVOMDhMQzAz?= =?utf-8?B?OFEwVGFjZlJxeWl1WXdWY3gzM0hldkp4VWVqN0hNWG1kS0pOajQ0ZUxycWhX?= =?utf-8?B?MFduRk1sbUpMay9DMHFYcmxQT01JUTFiejhGUVFtS0c3eGhiK2xldHl5OXZP?= =?utf-8?B?Q1FabHMvTGt4N0RON2dPczNtWjFTQUtqQUk0ek00c1VkaEloSGdBNk1pUi9F?= =?utf-8?B?Njc1ZVVsT281UHJpaWdqZUcrdVd3dmM4bWJZRnJUa2MzNWo3V2RsZHJodVJr?= =?utf-8?B?M1dacGVWN3RHL3Urd1FvbDh2WFhvTG1DandyVFl2QmRmVEh3ZUo3LzFhVTJE?= =?utf-8?B?RWo0KzByNVZBUkhIOWRLNk1EY2xhZG5JT1RXcHhiNnVpYkJnMXZKZ0lvc1R1?= =?utf-8?B?clRlSVAzQzA3c3kyeEw2Zy9iclYyVHZzRkpoOFpXb3B6TXRrNWVuejI4RmZs?= =?utf-8?B?aE9jL3JCM1FYVkFKR3FUR2xReHZpRTlzTUJrWXBpeStlci83VVIrSDlaanpE?= =?utf-8?B?K0ZtTERlYUVxTjB6MUJkNFpmR2UxYU02SXZHbmIrQ05rMG50S0R5NVVDS2xi?= =?utf-8?B?dXNubUd1T1RUVlcxUUVQYTcwYWNLSEgyQndsTXlneVNYSWYrZm80WW0yZGs1?= =?utf-8?B?ME1LdDhWWTAzNHlGMWNOL0tGS0FwV2NQWjFoSDJyMUFKUHVoaVphamcvcnYv?= =?utf-8?B?Ym53dWJvdThZZVFiL0t1RjlLb05jY0dHR0JwU3UvMGNyVFliSDZiVzQ0bWFZ?= =?utf-8?B?dlNKVnI3cms5M3pjd2hjRDhxL1dvZ3U2blRBODY5ZHIxUEg2ZHhxU2hrSElU?= =?utf-8?B?dFE9PQ==?= 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: d60a3ecf-7d58-4b2e-029b-08db93739dac X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Aug 2023 16:14:57.8330 (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: 8M1p56QbpHISuIkTZmPxoehE5hlIdR7r4n8ka9XyuMNMB8yL+vk65Uh3Kjpkf63DxSDi8l+aa75HG+tuaGUOd8+549OIrvowdg2iu/L1Zpc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN6PR11MB8103 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTW9ydGVuIEJyw7hydXAg PG1iQHNtYXJ0c2hhcmVzeXN0ZW1zLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBBdWd1c3QgMiwg MjAyMyA0OjI1IFBNDQo+IFRvOiBEdW1pdHJlc2N1LCBDcmlzdGlhbiA8Y3Jpc3RpYW4uZHVtaXRy ZXNjdUBpbnRlbC5jb20+OyBKZXJpbiBKYWNvYg0KPiA8amVyaW5qYWNvYmtAZ21haWwuY29tPg0K PiBDYzogWmhhbmcsIFFpIFogPHFpLnouemhhbmdAaW50ZWwuY29tPjsgdGhvbWFzQG1vbmphbG9u Lm5ldDsNCj4gb3Jpa2FAbnZpZGlhLmNvbTsgZGF2aWQubWFyY2hhbmRAcmVkaGF0LmNvbTsgUmlj aGFyZHNvbiwgQnJ1Y2UNCj4gPGJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tPjsgamVyaW5qQG1h cnZlbGwuY29tOyBmZXJydWgueWlnaXRAYW1kLmNvbTsNCj4gdGVjaGJvYXJkQGRwZGsub3JnOyBN Y25hbWFyYSwgSm9obiA8am9obi5tY25hbWFyYUBpbnRlbC5jb20+OyBaaGFuZywNCj4gSGVsaW4g PGhlbGluLnpoYW5nQGludGVsLmNvbT47IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSRTogW1BB VENIXSBldGhkZXY6IGludHJvZHVjZSBnZW5lcmljIGZsb3cgaXRlbSBhbmQgYWN0aW9uDQo+IA0K PiA+IEZyb206IER1bWl0cmVzY3UsIENyaXN0aWFuIFttYWlsdG86Y3Jpc3RpYW4uZHVtaXRyZXNj dUBpbnRlbC5jb21dDQo+ID4gU2VudDogV2VkbmVzZGF5LCAyIEF1Z3VzdCAyMDIzIDE2LjA2DQo+ ID4NCj4gPiA+IEZyb206IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4g PiBTZW50OiBXZWRuZXNkYXksIEF1Z3VzdCAyLCAyMDIzIDEyOjIyIFBNDQo+ID4gPg0KPiA+ID4g T24gV2VkLCBBdWcgMiwgMjAyMyBhdCA0OjMx4oCvUE0gTW9ydGVuIEJyw7hydXANCj4gPiA+IDxt YkBzbWFydHNoYXJlc3lzdGVtcy5jb20+IHdyb3RlOg0KPiA+ID4gPg0KPiA+ID4gPiA+IEZyb206 IE1vcnRlbiBCcsO4cnVwIFttYWlsdG86bWJAc21hcnRzaGFyZXN5c3RlbXMuY29tXQ0KPiA+ID4g PiA+IFNlbnQ6IFdlZG5lc2RheSwgMiBBdWd1c3QgMjAyMyAxMi4yNQ0KPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiBGcm9tOiBRaSBaaGFuZyBbbWFpbHRvOnFpLnouemhhbmdAaW50ZWwuY29tXQ0KPiA+ ID4gPiA+ID4gU2VudDogV2VkbmVzZGF5LCAyIEF1Z3VzdCAyMDIzIDE5LjM1DQo+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gRnJvbTogQ3Jpc3RpYW4gRHVtaXRyZXNjdSA8Y3Jpc3RpYW4uZHVtaXRy ZXNjdUBpbnRlbC5jb20+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gRm9yIG5ldHdvcmsgZGV2 aWNlcyB0aGF0IGFyZSBwcm9ncmFtbWFibGUgdGhyb3VnaCBsYW5ndWFnZXMgc3VjaA0KPiBhcw0K PiA+ID4gPiA+ID4gdGhlIFA0IGxhbmd1YWdlLCB0aGVyZSBhcmUgbm8gcHJlLWRlZmluZWQgZmxv dyBpdGVtcyBhbmQgYWN0aW9ucy4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBUaGUgZm9ybWF0 IG9mIHRoZSBwcm90b2NvbCBoZWFkZXIgYW5kIG1ldGFkYXRhIGZpZWxkcyB0aGF0IGFyZSB1c2Vk DQo+IHRvDQo+ID4gPiA+ID4gPiBzcGVjaWZ5IHRoZSBmbG93IGl0ZW1zIHRoYXQgbWFrZSB1cCB0 aGUgZmxvdyBwYXR0ZXJuLCBhcyB3ZWxsIGFzIHRoZQ0KPiA+ID4gPiA+ID4gZmxvdyBhY3Rpb25z LCBhcmUgYWxsIGRlZmluZWQgYnkgdGhlIHByb2dyYW0sIHdpdGggYW4gaW5maW5pdHkgb2YNCj4g PiA+ID4gPiA+IHBvc3NpYmxlIGNvbWJpbmF0aW9ucywgYXMgb3Bwb3NlZCB0byBiZWluZyBzZWxl Y3RlZCBmcm9tIGEgZmluaXRlDQo+ID4gPiA+ID4gPiBwcmUtZGVmaW5lZCBsaXN0Lg0KPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+IEl0IGlzIHZpcnR1YWxseSBpbXBvc3NpYmxlIHRvIHByZS1kZWZp bmUgYWxsIHRoZSBmbG93IGl0ZW1zIGFuZCB0aGUNCj4gPiA+ID4gPiA+IGZsb3cgYWN0aW9ucyB0 aGF0IHByb2dyYW1zIG1pZ2h0IGV2ZXIgdXNlLCBhcyB0aGVzZSBhcmUgb25seSBsaW1pdGVkDQo+ ID4gPiA+ID4gPiBieSB0aGUgc2V0IG9mIEhXIHJlc291cmNlcyBhbmQgdGhlIHByb2dyYW0gZGV2 ZWxvcGVyJ3MNCj4gaW1hZ2luYXRpb24uDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gVG8gc3Vw cG9ydCB0aGUgcHJvZ3JhbW1hYmxlIG5ldHdvcmsgZGV2aWNlcywgd2UgYXJlIGludHJvZHVjaW5n Og0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICogQSBnZW5lcmljIGZsb3cgaXRlbTogVGhlIGZs b3cgaXRlbSBpcyBleHByZXNzZWQgYXMgYW4gYXJyYXkgb2YgYnl0ZXMNCj4gPiA+ID4gPiA+IG9m IGEgZ2l2ZW4gbGVuZ3RoLCB3aG9zZSBtZWFuaW5nIGlzIGRlZmluZWQgYnkgdGhlIHByb2dyYW0g bG9hZGVkDQo+IGJ5DQo+ID4gPiA+ID4gPiB0aGUgbmV0d29yayBkZXZpY2UuDQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiBUaGUgZmxvdyBpdGVtIGlzIG5vdCAiZ2VuZXJpYyIsIGl0IGlzICJvcGFxdWUi OiBPbmx5IHRoZSBhcHBsaWNhdGlvbg0KPiA+IGtub3dzDQo+ID4gPiA+ID4gd2hhdCB0aGlzIGZs b3cgaXRlbSBkb2VzLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gSSBoYXRlIHRoZSBjb25jZXB0IGZv ciB0d28gcmVhc29uczoNCj4gPiA+ID4gPiAxLiBUaGUgaW5hYmlsaXR5IGZvciBhcHBsaWNhdGlv bnMgdG8gZGV0ZWN0IHdoaWNoIGZsb3cgaXRlbXMgdGhlDQo+ID4gdW5kZXJseWluZw0KPiA+ID4g PiA+IGhhcmR3YXJlIHN1cHBvcnRzLg0KPiA+ID4gPiA+IDIuIFRoZSByaXNrIHRoYXQgdmVuZG9y cyB3aWxsIHVzZSB0aGlzIGluc3RlYWQgb2YgaW50cm9kdWNpbmcgbmV3IGZsb3cNCj4gPiBpdGVt DQo+ID4gPiA+ID4gdHlwZXMsIGF2YWlsYWJsZSBmb3IgYW55b25lIHRvIGltcGxlbWVudC4NCj4g PiA+ID4NCj4gPiA+ID4gQWZ0ZXIgZnVydGhlciBjb25zaWRlcmF0aW9uLCB0aGVyZSBtaWdodCBi ZSBhIG1pZGRsZSBncm91bmQuDQo+ID4gPiA+DQo+ID4gPiA+IENvbnNpZGVyIFZlbmRvci1TcGVj aWZpYyBhdHRyaWJ1dGVzIGZvciBESENQIGFuZCBSQURJVVMsIG9yIFNOTVANCj4gTUlCcy4uLg0K PiA+ID4gPg0KPiA+ID4gPiBBbnkgdmVuZG9yIGlzIGZyZWUgdG8gYWRkIGhpcyBvd24sIHByb3By aWV0YXJ5IHNwZWNpYWwtcHVycG9zZQ0KPiBhdHRyaWJ1dGVzLA0KPiA+ID4gd2l0aG91dCBnb2lu ZyB0aHJvdWdoIHRoZSBzdGFuZGFyZGl6YXRpb24gcHJvY2Vzcy4gKFRoaXMgaXMgdGhlIGtleQ0K PiA+IGNoYWxsZW5nZQ0KPiA+ID4gdGhpcyBwYXRjaCBzZWVtcyB0byBiZSBhaW1pbmcgYXQuKQ0K PiA+ID4gPg0KPiA+ID4gPiBUaGUgdmVuZG9yIG1pZ2h0IHB1Ymxpc2ggdGhlc2UgYXR0cmlidXRl cywgYW5kIG90aGVyIHZlbmRvcnMgbWF5DQo+ID4gPiBpbXBsZW1lbnQgdGhlbSB0b28uDQo+ID4g PiA+DQo+ID4gPiA+IEFuZCBpbiBvcmRlciB0byBwcmV2ZW50IGNvbGxpc2lvbnMsIHRoZSBWZW5k b3ItU3BlY2lmaWMgYXR0cmlidXRlcyBjb250YWluDQo+ID4gYQ0KPiA+ID4gZ2xvYmFsbHkgdW5p cXVlIHZlbmRvciBJRCwgc3VjaCBhcyB0aGUgUHJpdmF0ZSBFbnRlcnByaXNlIE51bWJlciBbMV0N Cj4gPiA+IG1hbmFnZWQgYnkgSUFOQS4NCj4gPiA+ID4NCj4gPiA+ID4gSWYgc2ltaWxhciBwcmlu Y2lwbGVzIGNhbiBiZSB3b3JrZWQgaW50byB0aGUgcGF0Y2gsIEkgY2FuIHN1cHBvcnQgaXQuDQo+ ID4gPg0KPiA+ID4gKzENCj4gPiA+DQo+ID4NCj4gPiBNb3J0ZW4sIEplcmluLA0KPiA+DQo+ID4g SSB0aGluayB0aGVyZSBpcyBhIGZ1bmRhbWVudGFsIG1pc3VuZGVyc3RhbmRpbmcgaGVyZTogd2Ug YXJlIG5vdCB0cnlpbmcgdG8NCj4gPiBwcm92aWRlIHN1cHBvcnQgZm9yIHNvbWUgbm9uLXN0YW5k YXJkIHZlbmRvci1zcGVjaWZpYyBmZWF0dXJlcyBoZXJlLiBXaGF0DQo+ID4gd2UgYXJlIHRyeWlu ZyB0byBkbyBpcyBhZGQgZ2VuZXJpYyBtdWx0aS12ZW5kb3Igc3VwcG9ydCBpbiBSVEVfRkxPVyBm b3INCj4gPiBQNCBwcm9ncmFtbWFibGUgbmV0d29yayBkZXZpY2VzLCB3aGljaCByZXF1aXJlcyBz dXBwb3J0aW5nIGZsb3cgaXRlbXMNCj4gPiBhbmQgYWN0aW9ucyB0aGF0IGFyZSBkZWZpbmVkIGRp cmVjdGx5IGJ5IHRoZSB1c2VyIHRocm91Z2ggdGhlaXIgUDQgcHJvZ3JhbXMNCj4gPiBhcyBvcHBv c2VkIHRvIGJlaW5nIHNlbGVjdGVkIGZyb20gYSBwcmUtZGVmaW5lZCBsaXN0Lg0KPiA+DQo+ID4g VGhlcmUgYXJlIGFuIGluZmluaXR5IG9mIGZsb3cgaXRlbXMgYW5kIGFjdGlvbnMgdGhhdCB0aGUg dXNlcnMgY2FuIGRlZmluZQ0KPiA+IHRocm91Z2gNCj4gPiB0aGVpciBQNCBwcm9ncmFtcywgYW5k IHRoZXkgY2Fubm90IGJlIHN1cHBvcnRlZCB3aXRoIGEgZmluaXRlIGxpc3Qgb2YNCj4gUlRFX0ZM T1cNCj4gPiBpdGVtcyBhbmQgYWN0aW9uczoNCj4gPg0KPiA+IDEvIFNvbWUgZmxvdyBpdGVtcyBt YXAgZGlyZWN0bHkgdG8gdGhlIElFVEYgZGVmaW5lZCBwcm90b2NvbHMsIHdoaWxlIHNvbWUNCj4g PiBvdGhlcnMgZG8gbm90LCBhbmQgb25seSB0aGUgdXNlciB3cml0aW5nIHRoZSBwcm9ncmFtIGtu b3dzIHRoZSBleGFjdA0KPiBhbnN3ZXI7DQo+ID4NCj4gPiAyLyBTb21lIGZsb3cgaXRlbXMgYXJl IHNpbXBseSBhcHBsaWNhdGlvbi1zcGVjaWZpYyAobm90IHZlbmRvciBzcGVjaWZpYykNCj4gPiBt ZXRhLWRhdGEgdGhhdCAoSSBob3BlIHdlIGFsbCBhY2NlcHQpIGlzIG91dHNpZGUgb2YgdGhlIHN0 YW5kYXJkaXphdGlvbg0KPiA+IHByb2Nlc3MuDQo+IA0KPiBTdWNoIGl0ZW1zIGNhbiB1c2UgYSBz cGVjaWFsICJyZXNlcnZlZCIgdmVuZG9yLWlkLg0KPiANCj4gPg0KPiA+IDMvIFNvbWUgZmxvdyBh Y3Rpb25zIG1hcCBkaXJlY3RseSB0byB0aGUgZXhpc3RpbmcgUlRFX0ZMT1cgYWN0aW9ucw0KPiAo ZXNwZWNpYWxseQ0KPiA+IHRoZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCBhY3Rpb25zIHN1Y2ggYXM6 IHBhY2tldCBkcm9wLCBwYWNrZXQgcmVkaXJlY3Rpb24gdG8NCj4gPiBhbg0KPiA+IG91dHB1dCBx dWV1ZSwgc29tZSBzcGVjaWZpYyBwYWNrZXQgbW9kaWZpY2F0aW9ucywgZXRjKSwgd2hpbGUgdGhl IHZhc3QNCj4gPiBtYWpvcml0eQ0KPiA+IG9mIHBvc3NpYmxlIGFjdGlvbnMgZG8gbm90Lg0KPiA+ DQo+ID4gQXJlIHlvdSBzYXlpbmcgdGhhdCB0aGUgUDQgcHJvZ3JhbW1hYmxlIG5ldHdvcmsgZGV2 aWNlcyBzaG91bGQgTk9UIGJlDQo+ID4gc3VwcG9ydGVkIGJ5IERQREsgYW5kIFJURV9GTE9XPw0K PiANCj4gTm8sIEkgZ2V0IHRoZSBuZWVkIGZvciB0aGlzLiBBbmQgSSB1bmRlcnN0YW5kIHRoYXQg c2luY2UgUDQgaXMgY29tcGlsZWQgdG8NCj4gaGFyZHdhcmUtc3BlY2lmaWMgYmluYXJ5IGJsb2Jz LCB0aGVyZSBpcyBhIG5lZWQgdG8gcHV0IHN1Y2ggYmxvYnMgaW50byBEUERLIGFzDQo+IGZsb3cg aXRlbXMgYW5kIGFjdGlvbnMsIGluc3RlYWQgb2YgdGhlICJ1bmNvbXBpbGVkIiBQNCBwcm9ncmFt Lg0KPiANCj4gSSBhbSBzdWdnZXN0aW5nIHRoYXQgaW5zdGVhZCBvZiBhZGRpbmcgYSBjb21wbGV0 ZWx5IG9wYXF1ZSBkYXRhIHR5cGU6DQo+IA0KPiBTdHJ1Y3QgaXRlbSB7DQo+IEludCBsZW47ICAg ICAgLy8gTGVuZ3RoIG9mIHZhbHVlIGluIGJ5dGVzLg0KPiBDaGFyIHZhbHVlW107IC8vIEFwcGxp Y2F0aW9uIHNwZWNpZmljIG1lYW5pbmcuDQo+IH07DQo+IA0KPiAuLi5hZGQgYSBzZW1pLW9wYXF1 ZSBkYXRhIHR5cGU6DQo+IA0KPiBTdHJ1Y3QgdGx2IHsNCj4gSW50IHR5cGU7ICAgICAvLyBWZW5k b3Igc3BlY2lmaWMgdHlwZS4NCj4gSW50IGxlbjsgICAgICAvLyBMZW5ndGggb2YgdmFsdWUgaW4g Ynl0ZXMuDQo+IENoYXIgdmFsdWVbXTsgLy8gKFZlbmRvciwgVHlwZSkgc3BlY2lmaWMgbWVhbmlu Zy4NCj4gfTsNCj4gDQo+IFN0cnVjdCBpdGVtIHsNCj4gSW50IHZlbmRvcjsgICAgICAgICAgLy8g VmVuZG9yIElELg0KPiBJbnQgbGVuOyAgICAgICAgICAgICAvLyBMZW5ndGggb2YgdmFsdWVzIGlu IGJ5dGVzLg0KPiBTdHJ1Y3QgdGx2IHZhbHVlc1tdOyAvLyBBcnJheSBvZiBUTFZzLg0KPiB9Ow0K PiANCj4gTGlrZSBSQURJVVMgVmVuZG9yLVNwZWNpZmljIGF0dHJpYnV0ZXM6DQo+IGh0dHBzOi8v ZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjMjEzOCNzZWN0aW9uLTUuMjYNCj4gDQo+ IFRoZW4gc29tZSAoVmVuZG9yLCBUeXBlKSBmaWVsZHMgY2FuIGJlIGRvY3VtZW50ZWQgKGFuZCB0 aHVzIGdlbmVyYWxseQ0KPiB1bmRlcnN0b29kIGJ5IERQREspLCBhbmQgc29tZSB1bmRvY3VtZW50 ZWQuDQo+IA0KPiBFLmcuIGxpa2UgTWljcm9zb2Z0IGRvY3VtZW50ZWQgc29tZSBvZiB0aGVpcnMg aW4gUkZDIDI1NDg6DQo+IGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZj MjU0OA0KPiANCj4gDQo+IEFub3RoZXIgYmVuZWZpdCBpcyB0aGF0IHRoZXNlIG5ldyAiVkVORE9S LVNQRUNJRklDIiBmbG93IHR5cGVzIGNhbiBiZQ0KPiByZXVzZWQgZm9yIG90aGVyIHB1cnBvc2Vz IHRoYW4gY29tcGlsZWQgUDQgcHJvZ3JhbXMuDQo+IA0KDQpIaSBNb3J0ZW4sDQoNCk5vdCBzdXJl IHdlIG1hbmFnZWQgdG8gbGV2ZWwgc2V0OiBJdCBsb29rcyB0byBtZSB5b3UgYXJlIHRyeWluZyB0 byBkZXNjcmliZQ0KYSB3YXkgdG8gcmVnaXN0ZXIgdmVuZG9yLXNwZWNpZmljIGZsb3cgaXRlbXMg YW5kIGFjdGlvbnMgaW4gYSBmcmllbmRsaWVyIHdheTsNCnlvdSBhcmUgYXNzdW1pbmcgdGhhdCB0 aGUgbWVhbmluZyBvZiB0aG9zZSBmbG93IGl0ZW1zIGFuZCBhY3Rpb25zIGlzIHdlbGwNCmtub3du IHRvIGFuZCBmdWxseSB1bmRlcnN0b29kIGJ5IHRoZSB2ZW5kb3IsIGNvcnJlY3Q/DQoNCkluIGZh Y3QsIHRoZSBrZXkgbWVzc2FnZSBJIGFtIHRyeWluZyB0byBnZXQgYWNyb3NzIGlzIHRoYXQgaW4g dGhlIFA0IGNhc2UgdGhlDQptZWFuaW5nIG9mIHRoZSBmbG93IGl0ZW1zIGFuZCBhY3Rpb25zIGlz IGNvbXBsZXRlbHkgdW5rbm93biB0byB0aGUgdmVuZG9yOw0KdGhleSBhcmUgb25seSBrbm93biB0 byB0aGUgdXNlciwgd2hvIGRlZmluZXMgdGhlbSB3aXRob3V0IGFueSBpbnZvbHZlbWVudA0KZnJv bSB0aGUgdmVuZG9yIHRocm91Z2ggdGhlIHVzZXItYXV0aG9yZWQgUDQgcHJvZ3JhbSAod2hpY2gg cmVwcmVzZW50cyB0aGUNCmRhdGEgcGF0aCBhcHBsaWNhdGlvbikuIEFuZCB0aGUgdXNlciBjYW4g Y2hhbmdlIHRoZSBQNCBwcm9ncmFtIGF0IGFueSB0aW1lLA0Kc2FtZSBhcyB5b3Ugd291bGQgY2hh bmdlIHRoZSBzb3VyY2UgY29kZSAmIHJlYnVpbGQgJiByZS1ydW4gIGEgQ1BVIGFwcC4NCg0KVGhl cmVmb3JlLCBhICJnZW5lcmljIiBjb250cm9sIHBhdGggYXBwbGljYXRpb24gKGdlbmVyaWMgaW4g dGhlIHNlbnNlIHRoYXQgaXQNCndvcmtzIHdpdGggYW55IFA0IHByb2dyYW0pIGNhbiBvbmx5IGhh bmRsZSB0aGUgZmxvdyBpdGVtcyBhbmQgYWN0aW9ucyBpbg0KYSBnZW5lcmljIHdheTogaXQga25v d3MgdGhlIHNldCBvZiBmbG93IGl0ZW1zIGFuZCBhY3Rpb25zIGFuZCB0aGVpciBkZXRhaWxzDQoo c3VjaCBhcyAgdGhlIHNpemUgb2YgZWFjaCBmbG93IGl0ZW0gb3IgdGhlIGFyZ3VtZW50cyBhbmQg Zm9ybWF0IG9mIGVhY2gNCmFjdGlvbiksIGJ1dCBpdCBkb2VzIG5vdCBrbm93LCBub3IgY2FyZSwg d2hldGhlciBhIGNlcnRhaW4gMzItYml0IGZsb3cgaXRlbQ0KaXMgdGhlIFJURV9GTE9XIElQdjQg YWRkcmVzcyBvciBub3QsIG9yIGEgY2VydGFpbiBhY3Rpb24gaXMgdGhlIFJURV9GTE9XDQoic2V0 IHBhY2tldCB0byBxdWV1ZSIgYWN0aW9uIG9yIG5vdC4NCg0KT3IgYW0gSSBtaXNzaW5nIHNvbWV0 aGluZyBpbiB3aGF0IHlvdSBhcmUgc2F5aW5nPyBNYXliZSB5b3VyIHBvaW50IGlzDQp0aGF0IGZv ciB0aGUgZ2VuZXJpYyBmbG93IGl0ZW0gYW5kIGFjdGlvbiB3ZSBzaG91bGQgc2ltcGx5IGFkZCBh IG51bWVyaWMgb3INCnN0cmluZy1iYXNlZCAidHlwZSIgZmllbGQgdG8gcHJvdmlkZSBhbiBpZGVu dGlmaWNhdGlvbi9kZXNjcmlwdGlvbj8gQWdhaW4sIHRoZQ0KdmVuZG9yIHdvdWxkIG5vdCBiZSBh YmxlIHRvIHBvcHVsYXRlIGl0IHdpdGggYW55dGhpbmcgbWVhbmluZ2Z1bCwgYXMgdGhlDQpmbG93 IGl0ZW0gJiBhY3Rpb24gY29tZSBmcm9tIHRoZSB1c2VyIHRyYW5zcGFyZW50bHkgdG8gdGhlIHZl bmRvci4NCg0KUmVnYXJkcywNCkNyaXN0aWFuDQoNCj4gPg0KPiA+ID4NCj4gPiA+ID4NCj4gPiA+ ID4gUHJlZmVyYWJseSwgdGhlcmUgc2hvdWxkIGFsc28gYmUgYSBtZWFucyBmb3IgYXBwbGljYXRp b25zIHRvIHF1ZXJ5IGlmDQo+ID4gc3BlY2lmaWMNCj4gPiA+IFZlbmRvci1TcGVjaWZpYyBmbG93 IGl0ZW1zIGFuZCBhY3Rpb25zIGFyZSBzdXBwb3J0ZWQgb3Igbm90Lg0KPiA+ID4gPg0KPiA+ID4g Pg0KPiA+ID4gPiBbMV06IGh0dHBzOi8vd3d3LmlhbmEub3JnL2Fzc2lnbm1lbnRzL2VudGVycHJp c2UtbnVtYmVycy8NCj4gPiA+ID4NCj4gPg0KPiA+IFJlZ2FyZHMsDQo+ID4gQ3Jpc3RpYW4NCg==