From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2D2FAC433F5 for ; Tue, 4 Oct 2022 15:01:21 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7A90E410FB; Tue, 4 Oct 2022 17:01:20 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id 4E811410FB for ; Tue, 4 Oct 2022 17:01:17 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1664895677; x=1696431677; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=qXdMO4cvIemcTxb0E5mPht4faBX1Cxa7ZMjtvf4IQ+M=; b=ERll1+sw+wNZ+aR57MtlutFLU9F1ONZc1vI6BxAe0mzzAgl/3Cmu30eN jQT+kDkXHFK7tS8j/d/yFdg2h57ryzkRq/OSksRlWN5PsBeYzjH8Pu3yK kku9bnFuLFMGExR8Up/ZitXsvHhO6p9DVa/FgsNAts9vZnw4meaPJEpFN NbQWZLGFHQd2nmqvZ5z4ZsFffqPUfDZpsQtdihMq7arBZ09Hv0nVvUyWS sM+ivunyap/gFO7X5pXgRsOC+KSHt9ARNOf01woixBP5XDAY1PJnLEA33 lGsP5X/3VmfJBM1wlGoY1mn6abO+gA/iIUeNQoPc7aBnfN4G+NhiT/MUZ A==; X-IronPort-AV: E=McAfee;i="6500,9779,10490"; a="301651915" X-IronPort-AV: E=Sophos;i="5.95,158,1661842800"; d="scan'208";a="301651915" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Oct 2022 08:01:12 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10490"; a="686572090" X-IronPort-AV: E=Sophos;i="5.95,158,1661842800"; d="scan'208";a="686572090" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga008.fm.intel.com with ESMTP; 04 Oct 2022 08:01:11 -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.2375.31; Tue, 4 Oct 2022 08:01:11 -0700 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) 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.2375.31; Tue, 4 Oct 2022 08:01:08 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx608.amr.corp.intel.com (10.22.229.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Tue, 4 Oct 2022 08:01:08 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.106) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Tue, 4 Oct 2022 08:01:08 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Wz8shRUVyn8+Z+noNHGg1XmUWMWmF9x8iHbJVEZ44WBZCbs8+7Io0FdC4nyR1S1uRRkM82aYFa0cS0QDjopXEsutwM3JugYlgiRNwFJ7Se+ttI4kd8MR9TSbw22PKEGjNjLZBKHL9OvoClxZ4RVlJ/DfAlQVzsuK+2Ll5EPgk9JShjs7ygQSkR0sZbtRu4ooXPtuVQ4qg4LtueXoitaQVgFWJNb8pa8G1WhUpBhKVnaNRkks4az6qwYrycRovwhadVvxpNQQNIv/v+DozaOPIGAgNIfXCSeY4Qrn9cgjPgG+hex1QuFaKFqNH9KXuB3nlS+Nh1tuEST0I0m7nZNkcA== 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=qXdMO4cvIemcTxb0E5mPht4faBX1Cxa7ZMjtvf4IQ+M=; b=f5XW3owxVH4SwEv18I+U2P4tNDuQGLCM82zH+Rtd9IFkdd59VSC5zZhcpcgye+Ibzydp+REmLOMHIm5c+KxaW6g3ubxDBUxVRYykPEfKN9s+MsFfSDS7UsHL+jKoafTyhNw0X2+kbjjVE3XiyvQdBTnDvZKwL/mAbrlSRn4st7sPDRt8J40q8OJkNDpm/R/C8DHyuKkQpO/CTthWZwS84JT5kXvmcN27brcjaUaeOrVyImdnQQIvt3uPS6iVniJcspOasTgsEOc696TabD/03Bg8MvRi8EAUgwgThv+QqU3lYN3sGbGnyDvMz6Ae5AckG2QXj8dOHczQu3smYXIdfQ== 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 PH7PR11MB6953.namprd11.prod.outlook.com (2603:10b6:510:204::6) by SA1PR11MB6733.namprd11.prod.outlook.com (2603:10b6:806:25c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5654.26; Tue, 4 Oct 2022 15:01:06 +0000 Received: from PH7PR11MB6953.namprd11.prod.outlook.com ([fe80::b4ae:1525:a457:6ad6]) by PH7PR11MB6953.namprd11.prod.outlook.com ([fe80::b4ae:1525:a457:6ad6%9]) with mapi id 15.20.5654.035; Tue, 4 Oct 2022 15:01:06 +0000 From: "Wang, YuanX" To: Andrew Rybchenko , "dev@dpdk.org" , Thomas Monjalon , Ferruh Yigit CC: "ferruh.yigit@xilinx.com" , "mdr@ashroe.eu" , "Li, Xiaoyun" , "Singh, Aman Deep" , "Zhang, Yuying" , "Zhang, Qi Z" , "Yang, Qiming" , "jerinjacobk@gmail.com" , "viacheslavo@nvidia.com" , "stephen@networkplumber.org" , "Ding, Xuan" , "hpothula@marvell.com" , "Tang, Yaqi" Subject: RE: [PATCH v7 2/4] ethdev: introduce protocol hdr based buffer split Thread-Topic: [PATCH v7 2/4] ethdev: introduce protocol hdr based buffer split Thread-Index: AQHY1ZhlXaioO8sLvUaSg1zago8hm638TX+AgAE3VjCAAGTuAIAAX1HA Date: Tue, 4 Oct 2022 15:01:06 +0000 Message-ID: References: <20220812181552.2908067-1-yuanx.wang@intel.com> <20221001210521.15955-1-yuanx.wang@intel.com> <20221001210521.15955-3-yuanx.wang@intel.com> <29eb4f17-30a1-fff8-7be4-0092dbd79f5c@oktetlabs.ru> <6420052f-5f21-2416-362a-f1a0527924d2@oktetlabs.ru> In-Reply-To: <6420052f-5f21-2416-362a-f1a0527924d2@oktetlabs.ru> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.500.17 dlp-reaction: no-action dlp-product: dlpe-windows 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: PH7PR11MB6953:EE_|SA1PR11MB6733:EE_ x-ms-office365-filtering-correlation-id: 40fb9374-e1b0-4c78-9ff8-08daa61943b5 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mz4hOUlf+HoJ5nSog7OmmjVHfUIYZuoyoyPWOVaXARpI8VZS5+9V2zNBPpwfV4BVKezOHjZ3rpbK0nH99X2KgD7zqPwfu1vJDpeEg5LWEoRJFxWf3t02qvQ6XUjgvun4/xe0u81Rhi2NndyFfhpH6Bf5G0P68azf2O1/WaChKAXvkTqohOOTv4/fVx0Hrc25XDWfuEGV6som0zCwUSKzE9TCZAeI3R6pbM2xEj+Z2n9UKkDSVSsgtio4fThamMenptnLUGj1WNM/OV4zBHoEtAOPNatD5Dp954l/I78KN1I2dmVdN3ckS0SMAGRtnrMhUb+khNgbBzHNk+tNxB0MRVQ0WEwT91SYK/x3snX/qut91Rw3z08d/0r9N8A/TWgNVrQgnQAUvyjdDeazZ5aMxbqXsMSkxVEf9gXhrhTIMa231QhnnpbXjQqxoZ+tCx4Z8n4FfxmMh6k/8Hw2THLGez1wBz4l5uiQhgIiX8Z8u7mIkuX7TjnXXEMjG3daZ/4izunBaSPBWvS67e2iW8vbhnMsmv0WBPJ/V7e5sD7lD5syOBbMbZ2nbonzGDhOg99ILa3nMDBNc00wijNB9jPwUwQvnquRuqub+nlD0v1+yYcXpVmG3MmnmGheqLaF9oepLrBlkPsz84MM472sv2+m6Ioez8LxdLyjzC5CRJZTf6SkbP71HFkzMtUkz0aSETNq7aFOCib5D3O8PlLH3+OhxXXK48KaPfINCFtMQJhhE98ZatE+yaE5KaVz/0A3fTOaWzGwqYCoPxeTMHEiwhV9vw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH7PR11MB6953.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(366004)(396003)(346002)(376002)(136003)(39860400002)(451199015)(86362001)(41300700001)(107886003)(110136005)(33656002)(316002)(54906003)(7416002)(186003)(2906002)(83380400001)(38070700005)(26005)(9686003)(6506007)(4326008)(8676002)(76116006)(7696005)(66946007)(66556008)(66476007)(66446008)(64756008)(53546011)(8936002)(122000001)(55016003)(52536014)(5660300002)(38100700002)(82960400001)(478600001)(71200400001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Q1ZISERGcHBFYnhPeWZ1NkhLOUlJcXVwR0o2dC9TODlQRnRsOVB2WTMvZmcz?= =?utf-8?B?RGtYbWF4VVdvOXk4R3ZXVlhtWTlCa0RkRVZGQ2Zqc082Z1gyNUxFL0V4am5Z?= =?utf-8?B?V2JiNU0zZFIvemNBSWllRThGeXlCeGlYeEh6ZzdITEN0dGVqWHVwdFpaQ0Qr?= =?utf-8?B?SmhPZlpJOG5WM2UrNHpTMnY3cW1NTU5haTBOcTZUWWZnUzMrTFZ1S1VGemNS?= =?utf-8?B?Rks5cVhBN3Q3Q3NmVTFMYzZiTk4xeUprK2RlKzRmdytmeVh0QVFYMzE3MFd5?= =?utf-8?B?aTZPTXQxYnRIV3hFcUxRcFBWOGZVL01IMmlNM0tOdHY0V3dpcGJ5R0RNNmZh?= =?utf-8?B?SXRNdUlCOFlaVEduNE9JNlRnWkZjdWdQL3hFUTJXYWtkNjhWdTRSbEhZY3Fz?= =?utf-8?B?VHhaYTUzTmVzQWdzU3NodzZUVXRxY3B1eDJQS2plRUd4QThRN2RuU29ZdHd1?= =?utf-8?B?TzBUUmgzQXJCeSt3YllFL2hKRzF1ZlFTVGZKc216SWYvbGhvOHhWeXhoeExD?= =?utf-8?B?SHVqM1ZROFZCU04wazdqYXQ0OExvNDUvZExGNXM3YTJoN1FURFZmL3orY3dK?= =?utf-8?B?aElza2tsQkxxUnRtc3RnUTlVd3Z5TlhzZjlKc3RkeVNVcFI0UEtGRi9XblBP?= =?utf-8?B?Sk1uSmxLcGJpSVo3UkgrRGFKVFM2UDRVUXZlOU9EQm1IMkU1Nlg0Qy96b3M4?= =?utf-8?B?ZGo5SE50dmVQbllldDFVaHNtMnZXcnFkSEJDUEFEb093UUtxTzFjOUs3OElE?= =?utf-8?B?MlZySUZDY051d0xuRGRaZXVqaFBrbEVnYnp6ZklDdkF3V0xmN0JHbE5pTzlP?= =?utf-8?B?NFcwUXhTNTZUS0ZvR2c1WkZZYktxY0JNcmc2clk3MXo0Qzlnd0xZMHQrMFpl?= =?utf-8?B?b29wNWJUUGJxNTBLcXlIcGYzYWV0anNVUUpTYjB4SmZENUs0TnpOK3JEdllm?= =?utf-8?B?MkRvWTAzWlFxQXhjK1MrajlmUVhlOFN3VDZkblcxQ0JYRVpFazRWOEI1OFd6?= =?utf-8?B?ZnBQenhpNHJKV1VUVHNSNllsNjJmZGNrZHh6YkJidkxETXk4RjhKa0tUODlI?= =?utf-8?B?VEs0eDNGaVRPOG1VcXRtUXZmWjRsKy9UeS9TY1BXeW10RjNuSWpEZzZ5ZDFi?= =?utf-8?B?cEJYSWEyT2xYRnlFaFZteDRPaFozd20xL3VScHpVL1hUUmtsMEtJTWd3Q1FO?= =?utf-8?B?aXFUTFBWaDBON0JVbmQwZ2ZaT1hvMzBPYmdqdjBrTTlEb3ZaODlHczRZRFRm?= =?utf-8?B?RU01T3NoUml2T1doQUQ0TUR5alVreWNjZS9Wc1RnY2RvNlV3SXR4R1p3RXhs?= =?utf-8?B?WTAvMVBoYjFDMVQ1SWdyUGQ5VEF4VVJiKzYyVEIrajVqaVAxVlJkTnFHRjlI?= =?utf-8?B?di9GL2VOZ0dMdS9tSnAyaVJXNjR5azdBNjRLQmtOSjdJYXVXVWJuaEVYcUY2?= =?utf-8?B?QXREWWs4SEJtTEZLelc0THc1RU1KYUNPbzFlcHZzazVvNHNHVTNVMjQ4TjYv?= =?utf-8?B?czlVOFpMYlA4UXllQmJkeSt2bUtjKy9mSjR2bFZHeWFCeVk1OXBRcDNKTmxH?= =?utf-8?B?aEFJMi9xc1lsUXdIdkIwS0EwZ1JSOEUyV1VuRVp1R0ZXUFZJUkhUSUFyWm9y?= =?utf-8?B?cHYxRDZHN01VUENndGpPaVIxcUVlMDNHbnJaalpuNDFzMk1td1JodnZvdFpB?= =?utf-8?B?aGhQRXdmdy9hdFRwR216ZWhYV28wSmVvaER0R2dOR2ZrTzR2SktrYjNFUzFh?= =?utf-8?B?bS8zQnlwbmtpaFI0UHdCV0RCcU8xZ01MNW5uRVpzVUM0RDFoRTJzL09CYytG?= =?utf-8?B?ZFp4WGxnOWlYSmh4YlBxVDB5MStuMXlTSjNRUURYL1Z3eWFCSmU0M0duejB3?= =?utf-8?B?U0hFL2gzZVZndGkvalcrTTNzcWJyWm9weU15MTFVUEV1TXoxMUNuOElKVFY5?= =?utf-8?B?U2pYb1BNYjFta243KzdCNmV0L1lqQTlHQzJaM0pjOTdScEQxb2pUKzZTQlJ2?= =?utf-8?B?MnFUUjA3NTZwdTRjTDkrVFM5aTZhS1p0Uys1OEl2Q283TVNBSjhXWmRJV1or?= =?utf-8?B?UDUvNzRXT2hKdVZQeVdubCtDeEloZlBhZzBYeXQ5RldvMTVYcU1rZWhMTGp0?= =?utf-8?Q?WHP1Nkys91AX1zh6rv6+VsVPn?= 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: PH7PR11MB6953.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 40fb9374-e1b0-4c78-9ff8-08daa61943b5 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Oct 2022 15:01:06.6091 (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: uutFH+2GuWk0zuyJsrGeZ38Q5Ojqf409t6mhD1fG0iC8XPkkCBpsxef8A2CXoZQ0NEAMbkvOHjatsvRhzE9ztw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB6733 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 dyBSeWJjaGVua28gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pg0KPiBTZW50OiBUdWVz ZGF5LCBPY3RvYmVyIDQsIDIwMjIgNDoyMyBQTQ0KPiBUbzogV2FuZywgWXVhblggPHl1YW54Lndh bmdAaW50ZWwuY29tPjsgZGV2QGRwZGsub3JnOyBUaG9tYXMNCj4gTW9uamFsb24gPHRob21hc0Bt b25qYWxvbi5uZXQ+OyBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBhbWQuY29tPg0KPiBDYzog ZmVycnVoLnlpZ2l0QHhpbGlueC5jb207IG1kckBhc2hyb2UuZXU7IExpLCBYaWFveXVuDQo+IDx4 aWFveXVuLmxpQGludGVsLmNvbT47IFNpbmdoLCBBbWFuIERlZXAgPGFtYW4uZGVlcC5zaW5naEBp bnRlbC5jb20+Ow0KPiBaaGFuZywgWXV5aW5nIDx5dXlpbmcuemhhbmdAaW50ZWwuY29tPjsgWmhh bmcsIFFpIFoNCj4gPHFpLnouemhhbmdAaW50ZWwuY29tPjsgWWFuZywgUWltaW5nIDxxaW1pbmcu eWFuZ0BpbnRlbC5jb20+Ow0KPiBqZXJpbmphY29ia0BnbWFpbC5jb207IHZpYWNoZXNsYXZvQG52 aWRpYS5jb207DQo+IHN0ZXBoZW5AbmV0d29ya3BsdW1iZXIub3JnOyBEaW5nLCBYdWFuIDx4dWFu LmRpbmdAaW50ZWwuY29tPjsNCj4gaHBvdGh1bGFAbWFydmVsbC5jb207IFRhbmcsIFlhcWkgPHlh cWkudGFuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjcgMi80XSBldGhkZXY6 IGludHJvZHVjZSBwcm90b2NvbCBoZHIgYmFzZWQgYnVmZmVyIHNwbGl0DQo+IA0KPiBPbiAxMC80 LzIyIDA1OjQ4LCBXYW5nLCBZdWFuWCB3cm90ZToNCj4gPiBIaSBBbmRyZXcsDQo+ID4NCj4gPj4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gT24gMTAvMi8yMiAwMDowNSwgWXVhbiBX YW5nIHdyb3RlOg0KPiA+Pj4gKw0KPiA+Pj4gKwkJCS8qIHNraXAgdGhlIHBheWxvYWQgKi8NCj4g Pj4NCj4gPj4gU29ycnksIGl0IGlzIGNvbmZ1c2luZy4gV2hhdCBkbyB5b3UgbWVhbiBoZXJlPw0K PiA+DQo+ID4gQmVjYXVzZSBzZXR0aW5nIG4gcHJvdG9faGRyIHdpbGwgZ2VuZXJhdGUgKG4rMSkg c2VnbWVudHMuIElmIHdlIHdhbnQgdG8NCj4gc3BsaXQgdGhlIHBhY2tldCBpbnRvIG4gc2VnbWVu dHMsIHdlIG9ubHkgbmVlZCB0byBjaGVjayB0aGUgZmlyc3QgKG4tMSkNCj4gcHJvdG9faGRyLg0K PiA+IEZvciBleGFtcGxlLCBmb3IgRVRILUlQVjQtVURQLVBBWUxPQUQsIGlmIHdlIHdhbnQgdG8g c3BsaXQgYWZ0ZXIgdGhlIFVEUA0KPiBoZWFkZXIsIHdlIG9ubHkgbmVlZCB0byBzZXQgYW5kIGNo ZWNrIHRoZSBVRFAgaGVhZGVyIGluIHRoZSBmaXJzdCBzZWdtZW50Lg0KPiA+DQo+ID4gTWF5YmUg bWFzayBpcyBub3QgYSBnb29kIHdheSwgc28gd2Ugd2lsbCB1c2UgaW5kZXggdG8gZmlsdGVyIG91 dCB0aGUgY2hlY2sNCj4gb2YgcHJvdG9faGRyIGluc2lkZSB0aGUgbGFzdCBzZWdtZW50Lg0KPiAN Cj4gSSBzZWUgeW91ciBwb2ludCBhbmQgdW5kZXJzdGFuZCB0aGUgcHJvYmxlbSBub3cuDQo+IFRo aW5raW5nIGEgYml0IG1vcmUgYWJvdXQgaXQgSSByZWFsaXplIHRoYXQgY29uc2lzdGVuY3kgY2hl Y2sgaGVyZSBzaG91bGQgYmUNCj4gbW9yZSBzb3BoaXN0aWNhdGVkLg0KPiBJdCBzaG91bGQgbm90 IGFsbG93Og0KPiAgIC0gc2VnMSAtIGxlbmd0aC1iYXNlZCwgc2VnMiAtIHByb3RvLWJhc2VkLCBz ZWczIC0gcGF5bG9hZA0KPiAgIC0gc2VnMSAtIHByb3RvLWJhc2VkLCBzZWcyIC0gbGVnbnRoLWJh c2VkLCBzZWczIC0gcHJvdG8tYmFzZWQsIHNlZzQgLSBwYXlsb2FkDQo+IEkuZS4gbm8gcHJvdG9j b2wtYmFzZWQgc3BsaXQgYWZ0ZXIgbGVuZ3RoLWJhc2VkLg0KPiBCdXQgc2hvdWxkIGFsbG93Og0K PiAgIC0gc2VnMSAtIHByb3RvLWJhc2VkLCBzZWcyIC0gbGVnbnRoLWJhc2VkLCBzZWczIC0gcGF5 bG9hZCBJLmUuIGxlbmd0aCBiYXNlZA0KPiBzcGxpdCBhZnRlciBwcm90b2NvbC1iYXNlZC4NCj4g DQo+IFRha2luZyB0aGUgbGFzdCBwb2ludCBhYm92ZSBpbnRvIGFjY291bnQsIHByb3RvX2hkciBp biB0aGUgbGFzdCBzZWdtZW50DQo+IHNob3VsZCBiZSAwIGxpa2UgaW4gbGVuZ3RoLWJhc2VkIHNw bGl0IChub3QgUlRFX1BUWVBFX0FMTF9NQVNLKS4NCg0KSnVzdCB0byBjb25maXJtLCBkbyB5b3Ug bWVhbiB0aGF0IHRoZSBwYXlsb2FkIGFzIGxhc3Qgc2VnbWVudCBzaG91bGQgYmUgdHJlYXRlZCBh cyBhIGxlbmd0aC1iYXNlZCBzcGxpdChwcm90b19oZHIgPT0gMCk/DQpJZiBzbywgZm9yIHRoaXMg cXVlc3Rpb24sICdjaGVjayB0aGF0IGRhdGFyb29tIGluIHRoZSBsYXN0IHNlZ21lbnQgbWVtcG9v bCBpcyBzdWZmaWNpZW50PiBmb3IgdXAgdG8gTVRVIHBhY2tldCBpZiBSeCBzY2F0dGVyIGlzIGRp c2FibGVkJw0KSXMgaXQgbm90IG5lY2Vzc2FyeSB0byBjb21wYXJlIE1UVSBzaXplIGFuZCBtYnVm X3NpemU/IEJlY2F1c2UgdGhlIGNoZWNrIGluIGxlbmd0aCBiYXNlZCBzcGxpdCBpcyBzdWZmaWNp ZW50LiBXZSB3aWxsIHNlbmQgdjggc29vbiB3aXRoIGFib3ZlIHRob3VnaHQsIHBsZWFzZSBoZWxw IHRvIGNoZWNrLg0KDQo+IA0KPiBJdCBpcyBhbiBpbnRlcmVzdGluZyBxdWVzdGlvbiBob3cgdG8g cmVxdWVzdDoNCj4gICAtIHNlZzEgLSBFVEgsIHNlZzIgLSBJUHY0LCBzZWczIC0gVURQLCBzZWc0 IC0gcGF5bG9hZCBTaG91bGQgd2UgcmVhbGx5IHJlcGVhdA0KPiBFVEggaW4gc2VnMi0+cHJvdG9f aGRyIGFuZA0KPiBzZWczLT5wcm90b19oZHIgaGVhZGVyIGFuZCBJUHY0IGluIHNlZzMtPnByb3Rv X2hkciBhZ2Fpbj8NCj4gSSB0ZW5kIHRvIHNheSBubyBzaW5jZSB3aGVuIHBhY2tldCBjb21lcyB0 byBzZWcyIGl0IGFscmVhZHkgaGFzIG5vIEVUSA0KPiBoZWFkZXIuDQo+IA0KPiBJZiBzbywgaG93 IHRvIGhhbmRsZSBjb25maWd1cmF0aW9uIHdoZW4gRVRIIGlzIHJlcGVhdCBpbiBzZWcyPw0KPiBG b3IgZXhhbXBsZSwNCj4gICAgLSBzZWcxIEVUSCtJUHY0K1VEUA0KPiAgICAtIHNlZzIgRVRIK0lQ djYrVURQDQo+ICAgIC0gc2VnMiAwDQo+IFNob3VsZCB3ZSBkZW55IGl0IG9yIHNob3VsZCB3ZSBk ZWZpbmUgYmVoYXZpb3VyIGxpa2UuDQo+IElmIGEgcGFja2V0IGRvZXMgbm90IG1hdGNoIHNlZ1gg cHJvdG9faGRyLCB0aGUgc2VnbWVudCBpcyBza2lwcGVkIGFuZA0KPiBzZWdYKzEgY29uc2lkZXJl ZC4NCj4gT2YgY291cnNlLCBub3QgYWxsIGRyaXZlcnMvSFcgc3VwcG9ydHMgaXQuIElmIHNvLCBz dWNoIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlDQo+IGp1c3QgZGlzY2FyZGVkIGJ5IHRoZSBkcml2 ZXIgaXRzZWxmLg0KDQpIZXJlIGEgcXVlc3Rpb24gdGhhdCBuZWVkcyB0byBiZSBjbGFyaWZpZWQs IHdoZXRoZXIgdGhlIHNlZ21lbnRzIGFyZSBzZXF1ZW50aWFsIG9yIGluZGVwZW5kZW50LiBJIHBy ZWZlciB0aGUgZm9ybWVyIGJlY2F1c2UgaXQncyBtb3JlIHJlYWRhYmxlLiBGdXJ0aGVybW9yZSwg aXQgY29uc2lzdHMgd2l0aCBsZW5ndGggYmFzZWQgc3BsaXQsIHdoaWNoIGFsc28gY29uZmlndXJl cyB0aGUgbGVuZ3RocyBzZXF1ZW50aWFsbHkuIEluIHRoaXMgY2FzZSwgdGhlIGZvbGxvd2luZyBz aXR1YXRpb24gZG9lcyBub3QgZXhpc3Q6DQotIHNlZzEgRVRIK0lQdjQrVURQDQotIHNlZzIgRVRI K0lQdjYrVURQDQotIHNlZzMgMA0KDQpGb3IgdGhlIGNhc2Ugb2YgcmVwZWF0aW5nIEVUSCwgc3Vj aCBhcyAtIHNlZzEgLSBFVEgsIHNlZzIgLSBJUHY0LCBzZWczIC0gVURQLCBzZWc0IC0gcGF5bG9h ZCwgYXMgeW91IHN1Z2dlc3RlZCwgd2UgY2FuIG9taXQgRVRIIGluIHRoZSBmb2xsb3dpbmcgc2Vn bWVudC4gYnV0IElQVjQtVURQIGFuZCBJUFY2LVVEUCBzdGlsbCBuZWVkICB0byBiZSBkaXN0aW5n dWlzaGVkLCBmb2xsb3cgb3VyIHByZXZpb3VzIGRpc2N1c3Npb24gKHVzZXIgd2FudHMgdG8gc3Bs aXQgYXQgSVBWNC1VRFAgcmF0aGVyIHRoYW4gSVBWNi1VRFAgYWx0aG91Z2ggZHJpdmVyIHN1cHBv cnRzIGJvdGgpLiBJbiB0aGlzIGNhc2UsIHNlZzEgLSBFVEgsIHNlZzIgLSBJUHY0LCBzZWczIC0g VURQLCBzZWc0IC0gcGF5bG9hZCwNCndlIHNldCBwcm90b19oZHIgd2l0aDoNCnNlZzEgcHJvdG9f aGRyMT1SVEVfUFRZUEVfTDJfRVRIRVINCnNlZzIgcHJvdG9faGRyMj1SVEVfUFRZUEVfTDNfSVBW NA0Kc2VnMyBwcm90b19oZHIzPVJURV9QVFlQRV9MM19JUFY0IHwgUlRFX1BUWVBFX0w0X1VEUA0K DQpUaGFua3MsDQpZdWFuDQoNCg==