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 93997A00C2; Thu, 21 Jul 2022 05:25:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1A34A40A87; Thu, 21 Jul 2022 05:25:24 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id D0F3940A7A for ; Thu, 21 Jul 2022 05:25:19 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1658373922; x=1689909922; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=3N/iahCITETD4Yetgp9uhxJhgajinhVNyl+u3LwD1n8=; b=O+IZ/QXxms76wd8022lykk1bg4svSvANPuwE9R8SPWU1mwsnOYGMS4D6 M3/LcVqZm3q0DJaY0Q0+Dy0Yut9WSlcySh7DJrdaIzQ6QoP6FnE/wntY8 D/Vg7XG5gFtJSh/ekhwpPGbMSwzdlflYTHb9nUKOEtJUnAIYsEbB3QvkY zMWLzWkp/R7iVrIWBXyo5Oa+nLhH0zCuOpZRBA3ndFduPQk+oZjaM3wGs fblwr0oqlrT7ToF+R2fc228ElmzqXICVLqUuxVRih6JTbjCgo74k57KiO 11Lp9m+t/650YkVC+yeASI11pr9LYTyL5f/inc8mTFNf9mWJ9DG6x9+8G w==; X-IronPort-AV: E=McAfee;i="6400,9594,10414"; a="312647650" X-IronPort-AV: E=Sophos;i="5.92,288,1650956400"; d="scan'208";a="312647650" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jul 2022 20:25:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,288,1650956400"; d="scan'208";a="844267513" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga006.fm.intel.com with ESMTP; 20 Jul 2022 20:25:06 -0700 Received: from fmsmsx605.amr.corp.intel.com (10.18.126.85) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.28; Wed, 20 Jul 2022 20:25:06 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.28 via Frontend Transport; Wed, 20 Jul 2022 20:25:06 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.171) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Wed, 20 Jul 2022 20:25:05 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EIMf42qGqKXb7PTCUglIdOkUhpSL5YgMitBS0ge+ERDzJkIpvP37Lcp333YCDFYSM3QBk1lN280A/yTOEbxGgOMPuf9LRZVENA9ltKbpMfEiy5Yk/vC9af7F33FZLkkqedQyL0C1opY8jyy9GAdCaQ73PHy6KauyePVhiHiu/nWmj3r+CFdb3gnfBmGZU4h7cyhahRyn7A6T8rYx2p1cZPmASao0k7/0Pe6FUMYCSloRfghDGF0i6PZv8gseEwVstB0WlVCSPxlz9GTgUaMgTaCyxptGC7/1Flf1wp+xNlL5FXpHjJI0Ks7uOg/umMwtDTPb9/LcFBOiMz6mkvnwHw== 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=3N/iahCITETD4Yetgp9uhxJhgajinhVNyl+u3LwD1n8=; b=c1il/LbijAbgIZYmYgWyHzuhW01M+2PFmZlJaSAAfsDqJHmqSW1b7XKNW2SgMX4TnFCrAssyXOMr45laoLDqnOLbwZZsgEt83QNGlSazhvE/DFq6xpRnNafCAMoo3ebMJ5I0+wNncMt31/KtZSua3sBp7bRQR21MYq1PazaiNYKQJ3IYlLLOzqUMyIQRPyimp3bnSfa/h/qApZkabH66BdJnayPeFTY5b2PlGDzo39A4rubGNW48/4TDs5nL2hVKNSW6zot19wfw3+sdaUCjvmhClEcwVyXcMO2uiCkreuZM7S9+pF6j9ehAB1bZugokug/Y2e/j1MvqjmXCUoo2Hg== 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 BN9PR11MB5513.namprd11.prod.outlook.com (2603:10b6:408:102::11) by MN2PR11MB3968.namprd11.prod.outlook.com (2603:10b6:208:151::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.12; Thu, 21 Jul 2022 03:24:58 +0000 Received: from BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::e0da:195a:2906:2c2]) by BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::e0da:195a:2906:2c2%9]) with mapi id 15.20.5458.018; Thu, 21 Jul 2022 03:24:58 +0000 From: "Ding, Xuan" To: Andrew Rybchenko CC: "dev@dpdk.org" , "stephen@networkplumber.org" , "Wang, YuanX" , "Ray Kinsella" , "Wu, WenxuanX" , "thomas@monjalon.net" , "Li, Xiaoyun" , "ferruh.yigit@xilinx.com" , "Singh, Aman Deep" , "Zhang, Yuying" , "Zhang, Qi Z" , "jerinjacobk@gmail.com" , "viacheslavo@nvidia.com" Subject: RE: [PATCH v9 2/4] ethdev: introduce protocol hdr based buffer split Thread-Topic: [PATCH v9 2/4] ethdev: introduce protocol hdr based buffer split Thread-Index: AQHYfxM4xb+F2+Bh1k6ZBMjgUj729a10uNuAgAilsPA= Date: Thu, 21 Jul 2022 03:24:58 +0000 Message-ID: References: <20220303060136.36427-1-xuan.ding@intel.com> <20220613102550.241759-1-wenxuanx.wu@intel.com> <20220613102550.241759-3-wenxuanx.wu@intel.com> <7f8f4017-c924-9533-0914-3792c32b5804@oktetlabs.ru> In-Reply-To: <7f8f4017-c924-9533-0914-3792c32b5804@oktetlabs.ru> Accept-Language: zh-CN, 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-office365-filtering-correlation-id: 1c05870a-b562-426a-79ef-08da6ac896d7 x-ms-traffictypediagnostic: MN2PR11MB3968:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 6TBPN/nsbMODErWIVfCo8zQp8QQz/tusYpGn1XO9zeL/O2GQ65uKFeZbzRFv/qlGU2R40JkzAqTjJ6fL2lQh0jZ9hNtysv1wDjtaMoAzTjsIEp1+qNlnZaQau7vIF10y5D/Tom11cQU3PuCyEubnbeINVoerVkSW5T9Cl+MJdaIjibPK3TYa2RCYL6WO64HXq11LrzlRbGTFz7LU46lj9k2WaOx8x0S/+mnfE2/CMaVO+9mB2Q21IaYWekefsjkNwczSWasYR5gtx+I0FESnV0WaXCgiRr/cZjMuxI4Utj1kW91kXayeBGmt85nCAmy1BFGUSol/U2G7AByDo2R0H6yVjidijxl+bSvjtta/HIQA+ncT5VksCc8HoxK745O5GmskL4XtxY00Qgy0AHR0MT7msot+ScBBVmVRk+/hlZB3IFZNALxnpvvT05BjOy7wb6vJeD1IKlMvEY4UQv7QOglz4A/Ij2Syz3XBndJ56sLbLL0ARN8O+KJd/1xfCaGsHOCzAjeZIlULYyp90PzQ7XWCPs8Hy1YSehdRQFtFPZOBjFUR2BRMyoxY3/YD3sTRmGwEOQ3zfq/8IXyNm/G3ItdYRaOTs34lZHVl5/Vmnar33GPjgg9p10B+co2LDQ98YEEkpLz3bvwPCwpklFQuAuarztHbjTfteKiULeBKitPPCFY42ndERdinTM0MzQLZZtg2MpC2j//QoBmlkVpUXk3Tg4hCIFZSV/y234flfuX8dPIw2XCOLmHqcWHV9XIU2/zuRMrE/f3kQ1H0z5GRyVRGP3JJEeiaOaPEuwBnjL0GHWsn9GG4wKo+lHjcIIC/ x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR11MB5513.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(396003)(136003)(366004)(376002)(346002)(39860400002)(5660300002)(66946007)(66556008)(8936002)(4326008)(76116006)(8676002)(64756008)(52536014)(66476007)(55016003)(66446008)(53546011)(33656002)(122000001)(2906002)(38100700002)(38070700005)(478600001)(82960400001)(71200400001)(186003)(83380400001)(6916009)(54906003)(86362001)(316002)(6506007)(7696005)(41300700001)(9686003)(26005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a2xGeW9BMXpyTjZjWDNWSkxQRTU2azlnLzJvcUtYMlI3UjhqQ1pFMUYzU0JM?= =?utf-8?B?WTdBdmZHTWliUExvdjR5TXNZZmthR0MyUlRobVNxT1QrWlNkRHFvMzgyQTBR?= =?utf-8?B?NTdOVlMxZWdPTkF0M1BROC9veHA3UzdOdjRGTk9rcmpaWkx5MVN4dFRSWVRZ?= =?utf-8?B?eDk2UFVqS2E5NjBLalNFWHhiRW1nd2JhWlRES0ovcnNSdUNkelJMMDJNMnRD?= =?utf-8?B?bTdhZkZzVVEvZnBzWm1kL3QrMWZWTnp4enJxeEVGRWM1SXdTZFBncGt1cytx?= =?utf-8?B?d0ZoTnRPWTEwbCtqTFRQTTA5Z2VLZ2ZlNmliRithYTA1VEZyL01JNnF3Rndk?= =?utf-8?B?SWFNcTQzQXNHeGhmTU93VUJVS0dyVUxJV3NNN0hDeEYyTUVCMzEzTkNIUHRu?= =?utf-8?B?Q0lOZDJnTGt3TjdYSDNpT2xUSGY5U1FDaWZMMVVqZkdHcmdORUMwTmN4R1FB?= =?utf-8?B?aVVkRzR2eDY5ZzVSQXVzNG9VYWwyTlNkOE5GeXRPSC9VeHFaTUs0OEZpcGto?= =?utf-8?B?S0s5VVl1UDZQWkJJT0djVkU3SkZxMkttUkYwLzFMSU1ka3pHREhzTllBWFNp?= =?utf-8?B?dE9Ta2o3bEtsaGcxVWdDS0dOaCtyLzJOZERxeG1YM2UxLzgyelN3Ny9jRVNN?= =?utf-8?B?Tm5XVExFZmRtQ2VseUJHVnkvYWdiTGorbVo1d3VDNTNGaWpTd0NYRkxhella?= =?utf-8?B?OUF3cVkzVW42RnoxRXl2WVhWZ0NJY0MzQWZ5M1FXU3NlQ1VQeHRQN1lpeUNx?= =?utf-8?B?aVlWeWZrdzNZS1RkTUJEZEFzN1UxdkF3SDZteWFaL29QeFdoaEUxaVVqcFN1?= =?utf-8?B?Q1YrcVVFbEI2NjVWdnVweGhLMHNCdmI2elNWUStKQk1yOGRiUytNbno3aXd3?= =?utf-8?B?UWZndkUzeEI1emdrWnI1Smltb3ZPWGpVQXMveW1MOXFhQ0w0dzE5ZFVqdGZP?= =?utf-8?B?TDVBRjErQ1dmOGFmRXEweHdVTnhPcVlueDVXblMwVnFveThFVytjdjdZM0Zk?= =?utf-8?B?L3ppbzAwVzBuWlhoNWtyQUNoTTZHaS8vVGNsbHhjemZvd2UwUUppVkw2NEZR?= =?utf-8?B?RDRwVjZvczBzVUc1VHRtY1FGMlJ1Wm1KK1VvWldFL2p6Tm9uZFJPeEVOdUoz?= =?utf-8?B?N2s4dkVaNlR5c3FDZFZkM3ZCbjRBbllFQ2RoaUlGcjYwRE54YjQ0U2toaWQ1?= =?utf-8?B?eTcvVFVuV1NDVzdYV2ZpVklFWEV2RXQxTzNyZTd3QjJSeWpIYk0wcDBteXp0?= =?utf-8?B?UzBFT082QWk5NlhhbjRnQ2l5YmkwZ2dhY2laZlZJT1ovU3l1bkFUM3ZNS0ZC?= =?utf-8?B?RUJpYy9BUTFieE5aS0kyVkFrbDU4WWJGakZ6VjRMV25ETmZmMWRaaHpxZ010?= =?utf-8?B?MUFndlVuTG1tUjhQQndNOHJBWC9kZDFRcytEZEpuMGFySG4xbW9KdGFlZnQv?= =?utf-8?B?Z2w5WHdNYmc1UlliOWxkZUFXVWlvQnpyNXZqMkZNR1VIVTZqdmN0NXMxT0k2?= =?utf-8?B?QWRHeTY0U0hvS01mM0JnZnllbjk4cXFKUkpKNVdvOGtVZEFIa0E4TGFqQ2Zt?= =?utf-8?B?azF3aE4vNS81ZC8xVFZHQnBrcUdLb1ZPZGx3ajFQRExDMnNkL3JpSWd4ZW5u?= =?utf-8?B?V2Q0N2x1NStsbCt3SDBQblJHMmRaeFpZOHFQVjh1dXp2SzdVcmpEZGFVbUZH?= =?utf-8?B?ZEJacUVEOFExQzV3SjVyRG9pMVZJbWxySExzUXMvWWo3dHJCNG90UDRWM2Ry?= =?utf-8?B?ajcxWnNuVk1rQmFGRHZYN1JoUkFRZi80amZZTHE1TWpFU2ZHY0pDS0xmZzFp?= =?utf-8?B?TURBbm1hRWk4T3M1Zy9GOXpDZmt2aXo3Q09GQkY5S2d0VklmRnJnSjhPZ202?= =?utf-8?B?a05vUmRleHhYbXR5aS9YRnorVEZyM2RhYkhoNHZVNkVIM3BKdkczb3ErNWhT?= =?utf-8?B?TFRhWmRKMzNjbDU1RzNsSStDQThkRDl3MFBNYTlIblVIMlRmN2NTZFlnbXBk?= =?utf-8?B?cGNmV1poRmRXUlozeXdhNXJDeEZUaTFBLytiQ3VMYUVDQWYvUW9ZVW9pbUZs?= =?utf-8?B?ck45bHUrT1BMQ1RkNktDZjdRUW1ud21XZXloVVNNSDJPSWR2Mi9qZ05kN3Y0?= =?utf-8?Q?OEyJpGHnliFEH7l6RyAYB8GmR?= 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: BN9PR11MB5513.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c05870a-b562-426a-79ef-08da6ac896d7 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jul 2022 03:24:58.2741 (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: ufoDlw+gbpMDs9A+fPQHM5WXbKOnu0wvk1UniqD6dzn8/kj34/VxLPIFUbJdWOME+GuHMwHW21CIq0IdTg/tFA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3968 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 SGkgQW5kcmV3LA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEFuZHJl dyBSeWJjaGVua28gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pg0KPiBTZW50OiAyMDIy 5bm0N+aciDjml6UgMjM6MDENCj4gVG86IFd1LCBXZW54dWFuWCA8d2VueHVhbngud3VAaW50ZWwu Y29tPjsgdGhvbWFzQG1vbmphbG9uLm5ldDsgTGksDQo+IFhpYW95dW4gPHhpYW95dW4ubGlAaW50 ZWwuY29tPjsgZmVycnVoLnlpZ2l0QHhpbGlueC5jb207IFNpbmdoLCBBbWFuIERlZXANCj4gPGFt YW4uZGVlcC5zaW5naEBpbnRlbC5jb20+OyBkZXZAZHBkay5vcmc7IFpoYW5nLCBZdXlpbmcNCj4g PHl1eWluZy56aGFuZ0BpbnRlbC5jb20+OyBaaGFuZywgUWkgWiA8cWkuei56aGFuZ0BpbnRlbC5j b20+Ow0KPiBqZXJpbmphY29ia0BnbWFpbC5jb20NCj4gQ2M6IHN0ZXBoZW5AbmV0d29ya3BsdW1i ZXIub3JnOyBEaW5nLCBYdWFuIDx4dWFuLmRpbmdAaW50ZWwuY29tPjsgV2FuZywNCj4gWXVhblgg PHl1YW54LndhbmdAaW50ZWwuY29tPjsgUmF5IEtpbnNlbGxhIDxtZHJAYXNocm9lLmV1Pg0KPiBT dWJqZWN0OiBSZTogW1BBVENIIHY5IDIvNF0gZXRoZGV2OiBpbnRyb2R1Y2UgcHJvdG9jb2wgaGRy IGJhc2VkIGJ1ZmZlciBzcGxpdA0KPiANCj4gT24gNi8xMy8yMiAxMzoyNSwgd2VueHVhbngud3VA aW50ZWwuY29tIHdyb3RlOg0KPiA+IEZyb206IFdlbnh1YW4gV3UgPHdlbnh1YW54Lnd1QGludGVs LmNvbT4NCj4gPg0KPiA+IEN1cnJlbnRseSwgUnggYnVmZmVyIHNwbGl0IHN1cHBvcnRzIGxlbmd0 aCBiYXNlZCBzcGxpdC4gV2l0aCBSeCBxdWV1ZQ0KPiA+IG9mZmxvYWQgUlRFX0VUSF9SWF9PRkZM T0FEX0JVRkZFUl9TUExJVCBlbmFibGVkIGFuZCBSeCBwYWNrZXQNCj4gc2VnbWVudA0KPiA+IGNv bmZpZ3VyZWQsIFBNRCB3aWxsIGJlIGFibGUgdG8gc3BsaXQgdGhlIHJlY2VpdmVkIHBhY2tldHMg aW50bw0KPiA+IG11bHRpcGxlIHNlZ21lbnRzLg0KPiA+DQo+ID4gSG93ZXZlciwgbGVuZ3RoIGJh c2VkIGJ1ZmZlciBzcGxpdCBpcyBub3Qgc3VpdGFibGUgZm9yIE5JQ3MgdGhhdCBkbw0KPiA+IHNw bGl0IGJhc2VkIG9uIHByb3RvY29sIGhlYWRlcnMuIEdpdmVuIGFuIGFyYml0cmFyaWx5IHZhcmlh YmxlIGxlbmd0aA0KPiA+IGluIFJ4IHBhY2tldCBzZWdtZW50LCBpdCBpcyBhbG1vc3QgaW1wb3Nz aWJsZSB0byBwYXNzIGEgZml4ZWQgcHJvdG9jb2wNCj4gPiBoZWFkZXIgdG8gZHJpdmVyLiBCZXNp ZGVzLCB0aGUgZXhpc3RlbmNlIG9mIHR1bm5lbGluZyByZXN1bHRzIGluIHRoZQ0KPiA+IGNvbXBv c2l0aW9uIG9mIGEgcGFja2V0IGlzIHZhcmlvdXMsIHdoaWNoIG1ha2VzIHRoZSBzaXR1YXRpb24g ZXZlbiB3b3JzZS4NCj4gPg0KPiA+IFRoaXMgcGF0Y2ggZXh0ZW5kcyBjdXJyZW50IGJ1ZmZlciBz cGxpdCB0byBzdXBwb3J0IHByb3RvY29sIGhlYWRlcg0KPiA+IGJhc2VkIGJ1ZmZlciBzcGxpdC4g QSBuZXcgcHJvdG9faGRyIGZpZWxkIGlzIGludHJvZHVjZWQgaW4gdGhlDQo+ID4gcmVzZXJ2ZWQg ZmllbGQgb2YgcnRlX2V0aF9yeHNlZ19zcGxpdCBzdHJ1Y3R1cmUgdG8gc3BlY2lmeSBwcm90b2Nv bA0KPiA+IGhlYWRlci4gVGhlIHByb3RvX2hkciBmaWVsZCBkZWZpbmVzIHRoZSBzcGxpdCBwb3Np dGlvbiBvZiBwYWNrZXQsDQo+ID4gc3BsaXR0aW5nIHdpbGwgYWx3YXlzIGhhcHBlbnMgYWZ0ZXIg dGhlIHByb3RvY29sIGhlYWRlciBkZWZpbmVkIGluIHRoZQ0KPiA+IFJ4IHBhY2tldCBzZWdtZW50 LiBXaGVuIFJ4IHF1ZXVlIG9mZmxvYWQNCj4gPiBSVEVfRVRIX1JYX09GRkxPQURfQlVGRkVSX1NQ TElUIGlzIGVuYWJsZWQgYW5kIGNvcnJlc3BvbmRpbmcgcHJvdG9jb2wNCj4gPiBoZWFkZXIgaXMg Y29uZmlndXJlZCwgZHJpdmVyIHdpbGwgc3BsaXQgdGhlIGluZ3Jlc3MgcGFja2V0cyBpbnRvIG11 bHRpcGxlDQo+IHNlZ21lbnRzLg0KPiA+DQo+ID4gc3RydWN0IHJ0ZV9ldGhfcnhzZWdfc3BsaXQg ew0KPiA+DQo+ID4gICAgICAgICAgc3RydWN0IHJ0ZV9tZW1wb29sICptcDsgLyogbWVtb3J5IHBv b2xzIHRvIGFsbG9jYXRlIHNlZ21lbnQgZnJvbSAqLw0KPiA+ICAgICAgICAgIHVpbnQxNl90IGxl bmd0aDsgLyogc2VnbWVudCBtYXhpbWFsIGRhdGEgbGVuZ3RoLA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uZmlndXJlcyAic3BsaXQgcG9pbnQiICovDQo+ID4gICAgICAgICAg dWludDE2X3Qgb2Zmc2V0OyAvKiBkYXRhIG9mZnNldCBmcm9tIGJlZ2lubmluZw0KPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgb2YgbWJ1ZiBkYXRhIGJ1ZmZlciAqLw0KPiA+ICAgICAg ICAgIHVpbnQzMl90IHByb3RvX2hkcjsgLyogaW5uZXIvb3V0ZXIgTDIvTDMvTDQgcHJvdG9jb2wg aGVhZGVyLA0KPiA+IAkJCSAgICAgICBjb25maWd1cmVzICJzcGxpdCBwb2ludCIgKi8NCj4gDQo+ IFRoZXJlIGlzIGEgYmlnIHByb2JsZW0gaGVyZSB0aGF0IHVzaW5nIFJURV9QVFlQRV8qIGRlZmlu ZXMgSSBjYW4ndCByZXF1ZXN0IHNwbGl0DQo+IGFmdGVyIGVpdGhlciBUQ1Agb3IgVURQIGhlYWRl ci4NCg0KU29ycnksIGZvciBzb21lIHJlYXNvbiBJIG1pc3NlZCB5b3VyIHJlcGx5Lg0KDQpDdXJy ZW50IFJURV9QVFlQRV8qIGxpc3QgYWxsIHRoZSB0dW5uZWwgYW5kIEwyL0wzL0w0IHByb3RvY29s IGhlYWRlcnMgKGJvdGggb3V0ZXIgYW5kIGlubmVyKS4NCkRvIHlvdSBtZWFuIHRoYXQgd2Ugc2hv dWxkIHN1cHBvcnQgaGlnaGVyIGxheWVyIHByb3RvY29scyBhZnRlciBMND8NCg0KSSB0aGluayB0 dW5uZWwgYW5kIEwyL0wzL0w0IHByb3RvY29sIGhlYWRlcnMgYXJlIGVub3VnaC4NCkluIERQREss IHdlIGRvbid0IHBhcnNlIGhpZ2hlciBsZXZlbCBwcm90b2NvbHMgYWZ0ZXIgTDQuDQpBbmQgdGhl IGhpZ2hlciBsYXllciBwcm90b2NvbHMgYXJlIHJpY2hlciwgd2UgY2FuJ3QgbGlzdCBhbGwgb2Yg dGhlbS4NCldoYXQgZG8geW91IHRoaW5rPw0KDQo+IA0KPiA+ICAgICAgfTsNCj4gPg0KPiA+IElm IGJvdGggaW5uZXIgYW5kIG91dGVyIEwyL0wzL0w0IGxldmVsIHByb3RvY29sIGhlYWRlciBzcGxp dCBjYW4gYmUNCj4gPiBzdXBwb3J0ZWQgYnkgYSBQTUQuIENvcnJlc3BvbmRpbmcgcHJvdG9jb2wg aGVhZGVyIGNhcGFiaWxpdHkgaXMNCj4gPiBSVEVfUFRZUEVfTDJfRVRIRVIsIFJURV9QVFlQRV9M M19JUFY0LCBSVEVfUFRZUEVfTDNfSVBWNiwNCj4gPiBSVEVfUFRZUEVfTDRfVENQLCBSVEVfUFRZ UEVfTDRfVURQLCBSVEVfUFRZUEVfTDRfU0NUUCwNCj4gPiBSVEVfUFRZUEVfSU5ORVJfTDJfRVRI RVIsIFJURV9QVFlQRV9JTk5FUl9MM19JUFY0LA0KPiA+IFJURV9QVFlQRV9JTk5FUl9MM19JUFY2 LCBSVEVfUFRZUEVfSU5ORVJfTDRfVENQLA0KPiBSVEVfUFRZUEVfSU5ORVJfTDRfVURQLCBSVEVf UFRZUEVfSU5ORVJfTDRfU0NUUC4NCj4gDQo+IEkgdGhpbmsgdGhlcmUgaXMgbm8gcG9pbnQgdG8g bGlzdCBhYm92ZSBkZWZpbmVzIGhlcmUgaWYgaXQgaXMgbm90IHRoZSBvbmx5IHN1cHBvcnRlZA0K PiBkZWZpbmVzLg0KDQpZZXMsIHNpbmNlIHdlIHVzZSBhIEFQSSB0byByZXR1cm4gdGhlIHByb3Rv Y29sIGhlYWRlciBkcml2ZXIgc3VwcG9ydGVkIHRvIHNwbGl0LA0KdGhlcmUgaXMgbm8gbmVlZCB0 byBsaXN0IHRoZSBpbmNvbXBsZXRlIFJURV9QVFlQRSogaGVyZS4gUGxlYXNlIHNlZSBuZXh0IHZl cnNpb24uDQoNCj4gDQo+ID4NCj4gPiBGb3IgZXhhbXBsZSwgbGV0J3Mgc3VwcG9zZSB3ZSBjb25m aWd1cmVkIHRoZSBSeCBxdWV1ZSB3aXRoIHRoZQ0KPiA+IGZvbGxvd2luZyBzZWdtZW50czoNCj4g PiAgICAgIHNlZzAgLSBwb29sMCwgcHJvdG9faGRyMD1SVEVfUFRZUEVfTDNfSVBWNCwgb2ZmMD0y Qg0KPiA+ICAgICAgc2VnMSAtIHBvb2wxLCBwcm90b19oZHIxPVJURV9QVFlQRV9MNF9VRFAsIG9m ZjE9MTI4Qg0KPiA+ICAgICAgc2VnMiAtIHBvb2wyLCBvZmYxPTBCDQo+ID4NCj4gPiBUaGUgcGFj a2V0IGNvbnNpc3RzIG9mIE1BQ19JUFY0X1VEUF9QQVlMT0FEIHdpbGwgYmUgc3BsaXQgbGlrZQ0K PiA+IGZvbGxvd2luZzoNCj4gPiAgICAgIHNlZzAgLSBpcHY0IGhlYWRlciBAIFJURV9QS1RNQlVG X0hFQURST09NICsgMiBpbiBtYnVmIGZyb20gcG9vbDANCj4gPiAgICAgIHNlZzEgLSB1ZHAgaGVh ZGVyIEAgMTI4IGluIG1idWYgZnJvbSBwb29sMQ0KPiA+ICAgICAgc2VnMiAtIHBheWxvYWQgQCAw IGluIG1idWYgZnJvbSBwb29sMg0KPiANCj4gU29ycnksIGJ1dCBJIHN0aWxsIHNlZSBubyBkZWZp bml0aW9uIHdoYXQgc2hvdWxkIGhhcHBlbiB3aXRoLCBmb3IgZXhhbXBsZSwgQVJQDQo+IHBhY2tl dCB3aXRoIGFib3ZlIGNvbmZpZy4NCg0KVGhhbmtzLCBiZWNhdXNlIHRoZSBmb2xsb3dpbmcgcmVw bHkgd2FzIG5vdCBhbnN3ZXJlZCBpbiB2OCwgDQp0aGUgZGVmaW5pdGlvbiBoYXMgbm90IGJlZW4g YWRkZWQgaW4gdjkgeWV0Lg0KDQoiDQpPdXIgTklDIG9ubHkgc3VwcG9ydHMgdG8gc3BsaXQgdGhl IHBhY2tldHMgaW50byB0d28gc2VnbWVudHMsDQpzbyB0aGVyZSB3aWxsIGJlIGFuIGV4YWN0IG1h dGNoIGZvciB0aGUgb25seSBvbmUgcHJvdG9jb2wgaGVhZGVyIGNvbmZpZ3VyZWQuIEJhY2sgdG8g dGhpcw0KcXVlc3Rpb24sIGZvciB0aGUgc2V0IG9mIHByb3RvX2hkcnMgY29uZmlndXJlZCwgaXQg Y2FuIGhhdmUgdHdvIGJlaGF2aW9yczoNCjEuIFRoZSBhZ2dyZXNzaXZlIHdheSBpcyB0byBzcGxp dCBvbiBsb25nZXN0IG1hdGNoIHlvdSBtZW50aW9uZWQsIEUuZy4gd2UgY29uZmlndXJlIHNwbGl0 DQpvbiBFVEgtSVBWNC1UQ1AsIHdoZW4gcmVjZWl2ZXMgRVRILUlQVjQtVURQIG9yIEVUSC1JUFY2 LCBpdCBjYW4gYWxzbyBzcGxpdCBvbiBFVEgtSVBWNA0Kb3IgRVRILg0KMi4gQSBtb3JlIGNvbnNl cnZhdGl2ZSB3YXkgaXMgdG8gc3BsaXQgb25seSB3aGVuIHRoZSBwYWNrZXRzIG1lZXQgdGhlIGFs bCBwcm90b2NvbCBoZWFkZXJzDQppbiB0aGUgUnggcGFja2V0IHNlZ21lbnQuIEluIHRoZSBhYm92 ZSBzaXR1YXRpb24sIGl0IHdpbGwgbm90IGRvIHNwbGl0IGZvciBFVEgtSVBWNC1VRFANCmFuZCBF VEgtSVBWNi4NCg0KSSBwcmVmZXIgdGhlIHNlY29uZCBiZWhhdmlvciwgYmVjYXVzZSB0aGUgc3Bs aXQgaXMgdXN1YWxseSBmb3IgdGhlIGlubmVyIG1vc3QgaGVhZGVyIGFuZA0KcGF5bG9hZCwgaWYg aXQgZG9lcyBub3QgbWVldCwgdGhlIHJlc3Qgb2YgdGhlIGhlYWRlcnMgaGF2ZSBubyBhY3R1YWwg dmFsdWUuDQoiDQoNCkhvcGUgdG8gZ2V0IHlvdXIgaW5zaWdodHMuDQpBbmQgd2Ugd2lsbCB1cGRh dGUgdGhlIGRvYyB0byBkZWZpbmUgdGhlIGJlaGF2aW9yIGluIG5leHQgdmVyc2lvbi4NCg0KPiAN Cj4gPg0KPiA+IE5vdyBidWZmZXIgc3BsaXQgY2FuIGJlIGNvbmZpZ3VyZWQgaW4gdHdvIG1vZGVz LiBGb3IgbGVuZ3RoIGJhc2VkDQo+ID4gYnVmZmVyIHNwbGl0LCB0aGUgbXAsIGxlbmd0aCwgb2Zm c2V0IGZpZWxkIGluIFJ4IHBhY2tldCBzZWdtZW50IHNob3VsZA0KPiA+IGJlIGNvbmZpZ3VyZWQs IHdoaWxlIHRoZSBwcm90b19oZHIgZmllbGQgc2hvdWxkIG5vdCBiZSBjb25maWd1cmVkLg0KPiA+ IEZvciBwcm90b2NvbCBoZWFkZXIgYmFzZWQgYnVmZmVyIHNwbGl0LCB0aGUgbXAsIG9mZnNldCwg cHJvdG9faGRyDQo+ID4gZmllbGQgaW4gUnggcGFja2V0IHNlZ21lbnQgc2hvdWxkIGJlIGNvbmZp Z3VyZWQsIHdoaWxlIHRoZSBsZW5ndGgNCj4gPiBmaWVsZCBzaG91bGQgbm90IGJlIGNvbmZpZ3Vy ZWQuDQo+ID4NCj4gPiBUaGUgc3BsaXQgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB1bmRlcmx5aW5n IGRyaXZlciBpcyByZXBvcnRlZCBpbiB0aGUNCj4gPiBydGVfZXRoX2Rldl9pbmZvLT5yeF9zZWdf Y2FwYSBmaWVsZC4gVGhlIG1lbW9yeSBhdHRyaWJ1dGVzIGZvciB0aGUNCj4gPiBzcGxpdCBwYXJ0 cyBtYXkgZGlmZmVyIGVpdGhlciwgZHBkayBtZW1vcnkgYW5kIGV4dGVybmFsIG1lbW9yeSwgcmVz cGVjdGl2ZWx5Lg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogWHVhbiBEaW5nIDx4dWFuLmRpbmdA aW50ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFdlbnh1YW4gV3UgPHdlbnh1YW54Lnd1QGlu dGVsLmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBZdWFuIFdhbmcgPHl1YW54LndhbmdAaW50ZWwu Y29tPg0KPiA+IFJldmlld2VkLWJ5OiBRaSBaaGFuZyA8cWkuei56aGFuZ0BpbnRlbC5jb20+DQo+ ID4gQWNrZWQtYnk6IFJheSBLaW5zZWxsYSA8bWRyQGFzaHJvZS5ldT4NCj4gPiAtLS0NCj4gPiAg IGxpYi9ldGhkZXYvcnRlX2V0aGRldi5jIHwgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0NCj4gPiAgIGxpYi9ldGhkZXYvcnRlX2V0aGRldi5oIHwgMTQgKysrKysrKysrKysrKy0N Cj4gPiAgIDIgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkN Cj4gDQo+IERvIHdlIG5lZWQgYSBkZWRpY2F0ZWQgZmVhdHVyZSBpbiBkb2MvZ3VpZGVzL25pY3Mv ZmVhdHVyZXMucnN0Pw0KPiBPciBzaG91bGQgYmUganVzdCB1cGRhdGUgYnVmZmVyIHNwbGl0IHRv IHJlZmVyIHRvIGEgbmV3IHN1cHBvcnRlZCBoZWFkZXIgc3BsaXQgQVBJDQo+IGFuZCBjYWxsYmFj az8NCj4gDQo+IEFsc28gdGhlIGZlYXR1cmUgZGVmaW5pdGVseSBkZXNlcnZlcyBlbnRyeSBpbiB0 aGUgcmVsZWFzZSBub3Rlcy4NCiANClJlZ2FyZGluZyB0aGUgbmV3bHkgaW50cm9kdWNlZCBwcm90 b2NvbCBiYXNlZCBidWZmZXIgc3BsaXQsIGl0IGlzIGRlZmluaXRlbHkgd29ydGggYSBkb2MgdXBk YXRlLg0KVGhlIHJlYXNvbiB3aHkgd2UgZGlkbid0IGRvIGl0IGJlZm9yZSBpcyBiZWNhdXNlIGl0 IGlzIHVuZGVyIGRpc2N1c3Npb24uDQoNCkJlZm9yZSB3ZSBzZW5kIGEgbmV3IHZlcnNpb24sIHdl IHdpbGwgcHV0IG1vcmUgZWZmb3J0cyB0byBjbGVhbiBjdXJyZW50IHBhdGNoIHRvIG1ha2UNCmRv YyBtb3JlIGNvbXByZWhlbnNpdmUgYW5kIGVhc2llciB0byB1bmRlcnN0YW5kLg0KDQpUaGFua3Ms DQpYdWFuDQoNCj4gDQo+IFtzbmlwXQ0K