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 180C3A0548; Fri, 2 Apr 2021 10:39:01 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8CBC7406B4; Fri, 2 Apr 2021 10:38:59 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id 5B0514013F; Fri, 2 Apr 2021 10:38:57 +0200 (CEST) IronPort-SDR: bGkAuAvWZVqsGezPmsLLs9hWT+B5lCE2OtdmqNmf1z7hkOh/mhe2ouucWxdWeEB3DSngMidomV +IwuTGl9ECww== X-IronPort-AV: E=McAfee;i="6000,8403,9941"; a="189165596" X-IronPort-AV: E=Sophos;i="5.81,299,1610438400"; d="scan'208";a="189165596" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Apr 2021 01:38:55 -0700 IronPort-SDR: /s42cXtpNwghuoKDLisaPDDMccHASrRlxHRSlceEFU0+0UMlQ8/uyrxZ6+qXkpPooXKDPtpoMR JvyJJovuqENw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,299,1610438400"; d="scan'208";a="596663326" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga005.jf.intel.com with ESMTP; 02 Apr 2021 01:38:55 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) 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.2106.2; Fri, 2 Apr 2021 01:38:55 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Fri, 2 Apr 2021 01:38:55 -0700 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (104.47.74.40) 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.2106.2; Fri, 2 Apr 2021 01:38:55 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JHRI4o5lyyLPme2o3nmZaDMHYVr3HQIIZwE9DCssm0uJ4hG2QtadYJ8cTwuUqrMSbAmBly7wzR9xJrSRcAS5DZgUFCig8hcSSrFpPjmr/wJqW7drpMpLjzSb8GaYow+1+KWQB6SbeIQ98TCAB9qcDGxHi07MXuzgzIZQ5rRNBT6iPJfhPbU12dbG4ybLbaAYd3MnA5ZYbmrBK2o0vB8m9pWII9rHHcWxErNV3VznSZ3dYfXiTEkQcUJNYMIjdEIg7Dvm9ro6SYKlM1XNtzKWeQ7Jqy9E2gdLZCrDJcejsqu8e7W5MwfI85d5EwaHzGb3HvCHkmVkJch5fS94vaW0yw== 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-SenderADCheck; bh=20FFXkdaH/n0ekLYnXkT3gWPMZVPYPyTOmHisz+vX60=; b=H0/K2GYaUj6L/UvTFn/lxCLHYLK0GuhAsUxlIYET2Gw2kDSbSe91FKDd+yQNuYVEqdrV4AHOWf1DkC7EirN22G5HbjzGihmtw2TsRB4klOpJT1sVIeMpOPVghPiQfypkbJUx+OOxX679S1HzigCiCcprlqQqZiTu/aONsV++T2pXJofjuEc/ysw4KMDSntEM+NigFxTy8DaoZoL2/jC1TOkRQ+dRXwwJzfCuggcC+tJrCzvHLeQBKAefCWB15t7fy8Ohe+2pGr3FKb7OkVXQ63y44pG7wQpzHjDc/rcq67WtjjKol7NFOAk2pc8VzADHcvk+J3xvfl/bn7Ax8G2n9w== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=20FFXkdaH/n0ekLYnXkT3gWPMZVPYPyTOmHisz+vX60=; b=Li0pRKtWFLnua5IUCW55uFsLMSEyMJU22AiGYy7Y1eNO+m45wwpf9pRVD9Sg9nvfSgDbEmhgoY1R0CE17hK703Yn5efiHuDUchABiAWj7vH3dwr3/DrFyVZiB+vDVFGH+MGEXab/ZjyZ9kZSq2ojdj+wSNyDAaDhOdloCIHHUpY= Received: from BN8PR11MB3795.namprd11.prod.outlook.com (2603:10b6:408:82::31) by BN6PR1101MB2114.namprd11.prod.outlook.com (2603:10b6:405:57::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Fri, 2 Apr 2021 08:38:52 +0000 Received: from BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::2dfc:3be2:c305:6346]) by BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::2dfc:3be2:c305:6346%6]) with mapi id 15.20.3999.029; Fri, 2 Apr 2021 08:38:52 +0000 From: "Wang, Xiao W" To: David Marchand CC: "Xia, Chenbo" , Maxime Coquelin , "Liu, Yong" , dev , "Ananyev, Konstantin" , "dpdk stable" , "yangyi01@inspur.com" Thread-Topic: [PATCH v3] vhost: add header check in dequeue offload Thread-Index: AQHXGvnjT89Yxd5Kl0mFrwprD5Ja7qqfqEsAgAFEVZA= Date: Fri, 2 Apr 2021 08:38:52 +0000 Message-ID: References: <20210311063827.55394-1-xiao.w.wang@intel.com> <20210317063109.135662-1-xiao.w.wang@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.5.1.3 dlp-product: dlpe-windows authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.55] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c537991f-618c-48e4-7338-08d8f5b2bea3 x-ms-traffictypediagnostic: BN6PR1101MB2114: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: rJF7C+uMOJHtZMQGNY3ON/GspxSw73de52tTPOi9+SUJNNB/vCpW15EDlLl2R09DceXJCLAmc6/LWa8FJ7vqanbJxJLW6mKlyKNJxAl0NxSP5N8z/g8v9BcltsixOxqbtkKZ4Fk4MfX+PeZbhHjGtpkJ2P5Jn8kuuw/LtXTmhQXHoZiHrDXjM69EKwMMuPWbn0gjDHnJlGOj2RC6YMYdzGwlbz3TSZnxfUcxtONcTZ+Ux83ESduFD/JlrKzjdvPYyIwsLfnYT1NhcAnX0SoMIQ0l3cM4CFSM6/AusZnxxhdqvUQVTzCNrhWsUOYd8z4GUDXfuOVh9JtgPNj4/S3Wlfq6WzTL2/QV90aka7lZt+aWN21kLp97ehjL9KdChnj4/0mOAGzd2ELADJcV0AKBjIsRyv6+lryLupVk2lW7ya0H/rfrljZ7AzIAjrlCOmYt+eFiPnjIjZMYyxjNP/8iMnMRaPsPMndVwWHZOXjlFHCQSuX1LFfrGq3q0Rdw8O+BaZa3BOmmOAHBQblKzh+Gcx9kCUPR5VrNnhH/IOMLdgFwND+A5UAhdApnO8G173zqkkeJYR4dg6TYtg+KbrRn1dmekPHm8a3MS8q1eOSsWEjP2nsc8n0FoYrdfvj2DJY+JMmi62NcHPitaws9MF4CfcJKHRUqTf2vIFQtR3xSXLEuYtFoO17D9bQVgELJxnlPL5uuEjQCX51sHG0u53Za6hxiyBeicOztMpUB2Rwjk5zwNValTV64iRNUsHoRYc2X x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN8PR11MB3795.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(396003)(39860400002)(366004)(136003)(376002)(346002)(66574015)(6506007)(53546011)(9686003)(8936002)(55016002)(86362001)(2906002)(38100700001)(66946007)(83380400001)(8676002)(7696005)(4326008)(478600001)(66556008)(66446008)(64756008)(66476007)(26005)(316002)(76116006)(52536014)(71200400001)(33656002)(186003)(966005)(5660300002)(6916009)(54906003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?Q1hTek1PbW9SdzRyd2dZZVlDS1gxclNucW9Mam1zZ3dVb1VGclR4aER5ckNu?= =?utf-8?B?NmZ0dGdrdVZpOGlNcktRMXR4ZE5qUjg1V2xFMVdPTVplMjlubWFVeTBweFAx?= =?utf-8?B?dXNtSmxOWEJWMmdNRmc2NXcxUnVVR3dRTGNNR0ZLRHFid05pUUp2LzNqc3VI?= =?utf-8?B?OFN6TmpQSDhsUVBvQlZDOGVQckdIZ1g3ZlRERk00VFAxdi8raUgvYWhValpF?= =?utf-8?B?cllPVWtrS2tta1FadWxDczgxckEzOURwTzZhdS9kaktGbEgzVFowSC81a1BO?= =?utf-8?B?WVhYK3NBeDBld3N1dFBJME5OaXNBdTBPM2JCU0Q2UDJQUTVKOFBiWHZSVTVx?= =?utf-8?B?T3daenRVOUp6S0NMUjN4ektMOEhPZFdsMHdYS3RMSFhhSWM4U2VqcDJmb2NU?= =?utf-8?B?U2RhY0dQekhvNER6SUJSdDZVVjB1UGs2Q0tsZCtreEdmVzVlTndRRnRyQm5R?= =?utf-8?B?WkJrcklyTFVZRkJGeHM3c0pPSXc2eVdIeHBYSU1COE1aUm9mNXZyV3h3NFkx?= =?utf-8?B?RW9ZWCtweDdzWllRNThFTm1XYmFFSitDTTBkZHI2YmJtZ0d1TjUyeXRpVTJG?= =?utf-8?B?em5mT1NOQWhrN3M5Q1NzNE1SbWU2djZXY0NqazI3NlYrTmhEdDdkRU5qVU1Z?= =?utf-8?B?d0hMQU4rZEI0cmZDdk5sTVFlcXhwV3gvamtlN3ZNQjBKWlNFcFZBa2xQc2Er?= =?utf-8?B?UlNzTFB6WDR3VEZGYnJMVmtUV3BKNW9qMWlNUm90dkZOdUR1UWhVMVFFMTZa?= =?utf-8?B?c2VOMDc0VkgwRmhzL0lvZ3A3U0pTQ2JiVlFFSldQUHNPZTk2QmhRVXcrdjg0?= =?utf-8?B?NWtUTC9UU2dsRm1aMElKbm5qQXo4dEFMNEN5K1lEME1CVUh6dXF4WUtQb3hK?= =?utf-8?B?V2Vjd3NpRTlJYWdvMkt5eFQ5SmhWOGlNY3g1MGJKbENEdTVYS09CRXY5YS9N?= =?utf-8?B?UTlEaFJMczlXa0lPRG9BWnkrY1ZFNm1FaExqMGloU3NXdnJIVzBONU41eHdv?= =?utf-8?B?am9UcDN4TzRycDRuaDdmbG1GMmRZaXk3U3RRK2s1M0xxUDhOUXlyY1JMRmM1?= =?utf-8?B?dFl0T2wwNFZ4YjF5QUpsdGFSRkR0eUNERUtRYTJRS2hRMjNWK05Ib2QxZjM5?= =?utf-8?B?SkNaM2dIazBsMGtFVUNUWDB5Z0NHcVJ2ZVBUZjIwQzdpZXdxc3NnM2RkZ0N1?= =?utf-8?B?NWtWYlZhUlduZnV4OWVLc3N5dmlBRnVpNzNZQlo0QVo2N3RNZGZRRExQc1Ru?= =?utf-8?B?SWd6R3RSdXBXbXExSHpyb2U0ZlIrVGpFRmRIZEpqclg0VDdjd0tmMlpSTkNI?= =?utf-8?B?WGhHdGFBOUZOVDhFNE4xR0VKdDNvTXYwQkIycGhxaFhvMDR6eGhCVXpybEtz?= =?utf-8?B?V2x6SUNpeE9xU1grWnhuczBQQnZFdHRKZk1EOEJneWJuRDkxNkJ2dVQ1VmY5?= =?utf-8?B?UzhvNzJzeFdER0xzNnYxeGRWaHBzYmJGN0JCM0x2MDk0UHJRWmw2MXhNVlRK?= =?utf-8?B?SjBVbDU1TkN0OGRnU1ZHblU4dU9NNzFZWFQzcGdCQkpBUWRzUUNhYjY0MkNx?= =?utf-8?B?djM1dStYUTNQOUdXU3NvRk5xNW9MLzdiTzRSRnZZbG9UYzEyT1RmZzRRemEz?= =?utf-8?B?QzRURWtkdTBoUnViVTlNanNqMThhVTcxenk5U0xDNTVBZ2dhWDhZL0xnSDVY?= =?utf-8?B?MDk4ajRQYUJIWS9jUmVIeitaa3ZYWnZpVlVtYWhnY0tmYXFWUng1d3pPRlRr?= =?utf-8?Q?RcMfwmRMwTOyFxxgqvzE+gLDG1QboADxUsZgR+N?= 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: BN8PR11MB3795.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c537991f-618c-48e4-7338-08d8f5b2bea3 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Apr 2021 08:38:52.3412 (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: H1dGV8CkdUituAtBwQoUicnpmXpbV+sVWK50LTNr+p/kEK3Ag374uRywTEK3civ7ojCgbu6DS35MaJnjKcWwIw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1101MB2114 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v3] vhost: add header check in dequeue offload 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 Sender: "dev" DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IERhdmlkIE1hcmNoYW5kIDxk YXZpZC5tYXJjaGFuZEByZWRoYXQuY29tPg0KPiBTZW50OiBUaHVyc2RheSwgQXByaWwgMSwgMjAy MSA4OjA0IFBNDQo+IFRvOiBXYW5nLCBYaWFvIFcgPHhpYW8udy53YW5nQGludGVsLmNvbT4NCj4g Q2M6IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47IE1heGltZSBDb3F1ZWxpbg0K PiA8bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20+OyBMaXUsIFlvbmcgPHlvbmcubGl1QGludGVs LmNvbT47IGRldg0KPiA8ZGV2QGRwZGsub3JnPjsgQW5hbnlldiwgS29uc3RhbnRpbiA8a29uc3Rh bnRpbi5hbmFueWV2QGludGVsLmNvbT47DQo+IGRwZGsgc3RhYmxlIDxzdGFibGVAZHBkay5vcmc+ DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjNdIHZob3N0OiBhZGQgaGVhZGVyIGNoZWNrIGluIGRl cXVldWUgb2ZmbG9hZA0KPiANCj4gT24gV2VkLCBNYXIgMTcsIDIwMjEgYXQgNzo1MCBBTSBYaWFv IFdhbmcgPHhpYW8udy53YW5nQGludGVsLmNvbT4NCj4gd3JvdGU6DQo+ID4NCj4gPiBXaGVuIHBh cnNpbmcgdGhlIHZpcnRpbyBuZXQgaGVhZGVyIGFuZCBwYWNrZXQgaGVhZGVyIGZvciBkZXF1ZXVl IG9mZmxvYWQsDQo+ID4gd2UgbmVlZCB0byBwZXJmb3JtIHNhbml0eSBjaGVjayBvbiB0aGUgcGFj a2V0IGhlYWRlciB0byBlbnN1cmU6DQo+ID4gICAtIE5vIG91dC1vZi1ib3VuZGFyeSBtZW1vcnkg YWNjZXNzLg0KPiA+ICAgLSBUaGUgcGFja2V0IGhlYWRlciBhbmQgdmlydGlvX25ldCBoZWFkZXIg YXJlIHZhbGlkIGFuZCBhbGlnbmVkLg0KPiA+DQo+ID4gRml4ZXM6IGQwY2Y5MTMwM2Q3MyAoInZo b3N0OiBhZGQgVHggb2ZmbG9hZCBjYXBhYmlsaXRpZXMiKQ0KPiA+IENjOiBzdGFibGVAZHBkay5v cmcNCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFhpYW8gV2FuZyA8eGlhby53LndhbmdAaW50ZWwu Y29tPg0KPiANCj4gSSBzcGVudCBzb21lIHRpbWUgZGlnZ2luZyBvbiB0aGlzIHRvcGljLg0KPiAN Cj4gQWZhaXUgdGhlIG9mZmxvYWQgQVBJLCB2aG9zdCBpcyBub3Qgc3VwcG9zZWQgdG8gcG9wdWxh dGUgdHggb2ZmbG9hZHMuDQo+IEkgd291bGQgZHJvcCB0aGlzIHdob2xlIHBhcnNlX2V0aGVybmV0 IGZ1bmN0aW9uIGFuZCByZXBsYWNlDQo+IHZob3N0X2RlcXVldWVfb2ZmbG9hZCB3aXRoIHdoYXQg dmlydGlvIGRvZXMgb24gdGhlIHJ4IHNpZGUuDQo+IA0KPiBQbGVhc2UgaGF2ZSBhIGxvb2sgYXQg dGhpcyBzZXJpZXMgKGVzcGVjaWFsbHkgdGhlIGxhc3QgcGF0Y2gpOg0KPiBodHRwOi8vcGF0Y2h3 b3JrLmRwZGsub3JnL3Byb2plY3QvZHBkay9saXN0Lz9zZXJpZXM9MTYwNTINCj4gDQo+IA0KPiBU aGFua3MuDQo+IA0KPiAtLQ0KPiBEYXZpZCBNYXJjaGFuZA0KDQorWWFuZyAsWWkgaW50byB0aGlz IGxvb3Agd2hvIG1heSBoYXZlIGNvbW1lbnRzIGVzcGVjaWFsbHkgZnJvbSBPVlMgcGVyc3BlY3Rp dmUgb24gQ0tTVU0vVFNPL1RTTyBpbiB0dW5uZWwvZXRjLi4NCg0KSSB0aGluayB0aGUgb3JpZ2lu YWwgdmhvc3QgaW1wbGVtZW50YXRpb24gaGVyZSBpcyB0byBoZWxwIHBhc3MgdmlydGlvJ3Mgb2Zm bG9hZCByZXF1ZXN0IG9udG8gdGhlIG5leHQgb3V0cHV0IHBvcnQsIGVpdGhlciBwaHlzaWNhbCBk ZXZpY2Ugb3IgYSB2aXJ0aW8gZGV2aWNlLg0KSWYgd2UgZ28gd2l0aCBzZXJpZXMgaHR0cDovL3Bh dGNod29yay5kcGRrLm9yZy9wcm9qZWN0L2RwZGsvbGlzdC8/c2VyaWVzPTE2MDUyLCB0aGVuIHZp cnR1YWwgc3dpdGNoIG5lZWQgdG8gZG8gYW4gZXh0cmEgdHJhbnNsYXRpb24gb24gdGhlIGZsYWdz Og0KZS5nLiBQS1RfUlhfTFJPIC0tPiBQS1RfVFhfVENQX1NFRy4gVGhlIHF1ZXN0aW9uIGlzIHRo YXQgYSBwYWNrZXQgbWFya2VkIHdpdGggUEtUX1JYX0xSTyBtYXkgY29tZSBmcm9tIGRpZmZlcmVu dCB0eXBlcyBvZiBwb3J0cyAobm9uLXZob3N0KSwgaG93IHZTd2l0Y2ggY2FuIHRlbGwgaWYgVFNP IHJlcXVlc3Qgc2hvdWxkIGJlIHNldCBmb3IgdGhpcyBwYWNrZXQgYXQgdHJhbnNtaXNzaW9uPw0K DQpJZiBJIHRoaW5rIGZyb20gYW4gZW5kcG9pbnQgYXBwJ3MgcGVyc3BlY3RpdmUsIEknbSBpbmNs aW5lZCB0byBhZ3JlZSB3aXRoIHlvdXIgc2VyaWVzLiBJZiBJIHRoaW5rIGZyb20gYSBzd2l0Y2gv cm91dGVyJ3MgcGVyc3BlY3RpdmUsIEknbSBpbmNsaW5lZCB0byBrZWVwIHRoZSBjdXJyZW50IGlt cGxlbWVudGF0aW9uLiBNYXliZSB3ZSBjYW4gYWRkIFBLVF9SWF9MNF9DS1NVTV9OT05FL1BLVF9S WF9MUk8gZmxhZ3MgaW50byB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiwgc2VlbXMgdGhpcyBt ZXRob2QgY2FuIGNvdmVyIGJvdGggc2NlbmFyaW9zLg0KDQpCUnMsDQpYaWFvDQoNCg0KDQo=