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 B91C5A034C; Mon, 24 Oct 2022 15:23:20 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AD89442B92; Mon, 24 Oct 2022 15:23:20 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 7E48E42B95 for ; Mon, 24 Oct 2022 15:23:18 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666617798; x=1698153798; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=xFzQt/Za+FMbfjDpWxy6AJxRlcOd/bIFVTV4laHZRak=; b=A4Gr28pnYvnOsQQH6UveodEpt73uDz1uQ9ccsf/Zk7S6RpHj5oPsIKZM aw0bcxm5EyXcu1+a0uau0jbGdql+WC3Fbzdpm8UMLCoVdAXPwlXrPSXai HG68DvakeL7bARX811q39qbj4JpPaSNCRlKRfgK5Qitx3wGBXOKJj3ez/ PeyUtwY89cD0p+7jPHEfh7qwCiVNVwcSf1jLO9Mjlz075wHZF2rAEYAaI 0vmUG7w1okFu6RtkMPOBSC1yyWtA6WMZ232QHDgudhOP9V6CcpbOt5UAO y+toxZwVB7Jx+selsTdWGZtT5spsnchTjPLDouatpIeeWODZ/tCwKvYAo Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10510"; a="308507313" X-IronPort-AV: E=Sophos;i="5.95,209,1661842800"; d="scan'208";a="308507313" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Oct 2022 06:23:17 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10510"; a="756567171" X-IronPort-AV: E=Sophos;i="5.95,209,1661842800"; d="scan'208";a="756567171" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga004.jf.intel.com with ESMTP; 24 Oct 2022 06:23:17 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 24 Oct 2022 06:23:16 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 24 Oct 2022 06:23:16 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Mon, 24 Oct 2022 06:23:16 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Mon, 24 Oct 2022 06:23:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fo68CpsoZ2dgxHojbAtAWdj/sJccXB+4BbSOsWK/G9FXOMeNBX8AI+cLzCZ9ENKfnQGG1uRB4NOSKY7+g3ORjrW+NXHWpIOZBJkgxJMtG6rMyFkElrJYoURlI+a4S3lo3Ydxj9ywy4+B77jVbGqrcnywe3tdTUi3EzfhJRNDKQI2XdhFYR+IMnk3JHlwD7rHDTFNYWpQ96jY2VGjT6CJm++b67YeEDjTpAfJ9FbRe1zRE/deW4PKnHN67jSMounSdXWKnourJa0QkG5wqX3oU8f5xLiRCPbnnuMoV/xNpsty1PWsL/E7UjRbiro6jG1QP9MPzLStlQdfPzJEHKyYTw== 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=xFzQt/Za+FMbfjDpWxy6AJxRlcOd/bIFVTV4laHZRak=; b=jIpBcbkuUVkkmu38jOTlLAmaqAN/GxhCk6OOlRBc821fL1/TK9KP23gNTjY1P74c6TEq+JshPTCyPbBSd1BUES7SQqPFTGc52BD8j+gPM5LxDMlx7/eBOIRf0A7KVwrGAfAV27xx8vOV1eJ0zewpjJT69RIIZoeeisAc/8iO1ZQNy5P0H9I46LGDbeIq+ePfajYt2QN5twYG/m+729F5nlXXULUBtIg01P09NUlTUcChT4NUxE+mJLJhfrEgZNdmEYkV2FvOPXxjSSkJ7DjOOf3xXyCINDZlqM1+/LY69RR6kZT3xYdbZ1rePOxFLfQmh1/P87uft0gJsaD/6RkN7g== 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 DM6PR11MB3723.namprd11.prod.outlook.com (2603:10b6:5:13f::25) by IA0PR11MB7211.namprd11.prod.outlook.com (2603:10b6:208:43f::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.21; Mon, 24 Oct 2022 13:23:14 +0000 Received: from DM6PR11MB3723.namprd11.prod.outlook.com ([fe80::126d:f905:c1d6:dcb9]) by DM6PR11MB3723.namprd11.prod.outlook.com ([fe80::126d:f905:c1d6:dcb9%5]) with mapi id 15.20.5723.033; Mon, 24 Oct 2022 13:23:14 +0000 From: "Guo, Junfeng" To: Ferruh Yigit , "Zhang, Qi Z" , "Wu, Jingjing" , "Xing, Beilei" CC: "dev@dpdk.org" , "Li, Xiaoyun" , "awogbemila@google.com" , "Richardson, Bruce" , "hemant.agrawal@nxp.com" , "stephen@networkplumber.org" , "Xia, Chenbo" , "Zhang, Helin" , "Wang, Haiyue" Subject: RE: [PATCH v7 1/8] net/gve/base: introduce base code Thread-Topic: [PATCH v7 1/8] net/gve/base: introduce base code Thread-Index: AQHY5S52DhYcafJFEk62O9w7ShNHCK4YmmkAgARfIPCAAGghAIAAJIFQ Date: Mon, 24 Oct 2022 13:23:13 +0000 Message-ID: References: <20221020103656.1068036-1-junfeng.guo@intel.com> <20221021091928.2674471-1-junfeng.guo@intel.com> <20221021091928.2674471-2-junfeng.guo@intel.com> <23dad7c2-dbb5-afb4-2797-6ebf3303454d@amd.com> <33d4a26e-65fb-f44a-6dc6-62605de66268@amd.com> In-Reply-To: <33d4a26e-65fb-f44a-6dc6-62605de66268@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 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: DM6PR11MB3723:EE_|IA0PR11MB7211:EE_ x-ms-office365-filtering-correlation-id: df5d12d4-c082-42a0-2359-08dab5c2e78c x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PdlYEBGk4LT6QG+xVvfjiaBREzEgJh9T7l0Z2lN9telHw4SZlZbWUxWwIdWbIhbsBBkroxkoqRoeB/S1YdyHS4Lgbjm+Wv/EfgDX1uj324jIKy+loDlaOEFcakCSw8p/BOx5AXO/bvVDSocmSpgjwBVnwH6qiKH0vRNilSmnRWCvoV0qpsARempOqKQY83YSoPZAKwJS3dOt7Wk8lQYXY+ZNwYHEGv32bvI8ng6M1Vj15xLLkdxlQ1joDHSC11WkpkfrHiOet+zFEgwCMHGoCQvJfQD0IoxWywbZoaf2/oE2bN26MgISlwQ0RYdJn7TSD9IrL3pU27d/B7raNSXQ7KbahKtD8elLjVYt/kLCMh/oLbshmY01i5mE7Fh2AccIwhfZ61Kw/peJlg3FLG3Ciub2Y+gDDX+U9ENdv6zlAxEJHRLKdOJVKfQZjja3Tv0gy9QpeVraffGuKnF67FnRwGWg2pPfE2YW79DnMxfqDbcvanNw0V8oPKKdD05b1L/y5tJH/YNcFMiS0l2qYjOb1RxXmiBfucto4wr4Y3T9EIjsti+uyC9mmYxhIsW+W/JH0hZHwG7HtgCwWHTm3TU1G8td1yci6d2FLAsKsTnXCeSeBW3YJ0d/3Z046gfQZDThrxIsfygopBEG/X5sLfAOPIjW0XQtt+T7CUG96zYReCylQEavLJtHZLlpKxUAmy9lpJW5E/i4RmNW4iBTS3p+h+H9i324ATf6qFfwN5B0AqVXZUWtWhIcOZfdInfyQze9304PnLx7OPVUdL4a/YcuCVHCU+GvhBfRL9gUaQ5PJ18= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB3723.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(39860400002)(396003)(136003)(346002)(376002)(366004)(451199015)(76116006)(2906002)(122000001)(38100700002)(66946007)(5660300002)(4326008)(33656002)(6636002)(82960400001)(41300700001)(64756008)(110136005)(71200400001)(55016003)(316002)(7696005)(54906003)(8676002)(66556008)(66446008)(66476007)(86362001)(38070700005)(9686003)(6506007)(8936002)(83380400001)(26005)(52536014)(53546011)(107886003)(966005)(186003)(478600001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WlZTczh6Q3RqdEs4M08ybGRwQm1zYk9JZjc4a1NMNjFYcXhFcVExY2ZaSGlw?= =?utf-8?B?Tm5Td2NtNjFOTlhjM3A0QUY2ajJ1NEpQS3JxOE1LUTR5QW5pbHE4S1o4NmtQ?= =?utf-8?B?RmNiQlNlZlRadnl6aG1WdU9ldXliSFlBRUVORkRMck1FbjZWaVpZR3dFNUhm?= =?utf-8?B?ekpzY0ZGbktnRzVBakdudXFqSEFnb2s1ajlCMHRJOHNCUllLN0Y3eW5qK3NS?= =?utf-8?B?dGNrZ0Zya0dlVnF0aFRsRElMZUdBZFJrTktJa3I0cFR3OTFVK01aU1FmVnNa?= =?utf-8?B?Z3VEMlhSdU9ycGxwQzhtVkVvQjJwek9KUFNpT2pqQnhSMHE2TlNLbEMrcnpU?= =?utf-8?B?T1cvYzNDWnpra0pJVlhhS1I2bWt0Syt1QUJwSXVZQ0taTTErQWhyRUVaWVph?= =?utf-8?B?UmhhUS8yS05ZWmdCOWZvbi9DT2JNSUhjeVFFZ0hjZnZlVC8vMVRUdlVTa3lO?= =?utf-8?B?QlZwWG1qZXJNenNxeXJNTEVRdEc4YWlBcXJEV1RyTXVvV2lGaTZLZWZGSVZX?= =?utf-8?B?cmd0YzVuTXk1N21PRGc5RWNHUmxjem5XTm50SnErS3dLMVFSZnBFREI5MHdl?= =?utf-8?B?TndWV3I2b3YzQzhLUENzeHpLLzNMeUN1Y3I3QWZvbW51MFlrSWhHbG1aNXJo?= =?utf-8?B?a3AxT2x2Ymd6TFJ4bnY3akpvaTZhVzZKd1dLdndmNzgvY1c1a0N0dHUyalho?= =?utf-8?B?YnM1b1JndEk4ODJNSldhK1FxQWhSM3lWSG5YYWFOa3N6MGc0L2FaRnZWaHdB?= =?utf-8?B?Rkg4T2xaUW1LeWg0YWpWUVZTRVovV0wxWVZvZEwzVC8wTFZxdC90eEV1cnF6?= =?utf-8?B?YnVhY090d3o3SXdoM2JnWlB5Q2J0YjZXZFFEUDdUcnZBRWhzNk5lc1g3ajBP?= =?utf-8?B?bzNzRkc1UXVEM1ZFOWNYTUtRS29xV2lKYmxXZ2l1NFBpeUo5dEsyT2x2Uzgw?= =?utf-8?B?Q0JyOWplVzlTTmc2OHJ0OUpZUVhMQytwVzlnMEpueXJIM1h4clRUZWk0b00x?= =?utf-8?B?ZmhjMkZocWFGaGZ6NkpERS9XdXJmNGZUeVJDc3lvS3EvSHpmTkJvTXk0L0ND?= =?utf-8?B?eWd4dS9kU0s3dCtabW1vQy9CcXBZSzdSd01ZdDhRSDRlVzRqMG5KN0IwRWdh?= =?utf-8?B?M29taHlWNWlXeHIvc3RSY2JZZFA5aFlvZE4ra0hJTEoxQmhMRFoyV3BSZGtp?= =?utf-8?B?L0VCYUdvRzdBeG04RzFlTWtSRmN0b0FXeXZHTzA2aDB6ckNTWEdXMEs3NXcz?= =?utf-8?B?OHlvSzNGODc0eTdvaVprb3RqZ0xIOGE3UGxtOWMzK05waHVHcjZ3cUhwNVFs?= =?utf-8?B?MnRPZEZybWVXMVhrRkZ6WTllNUlVOVZXb1l6K29CVlUvK01yZE1DTzBwSEhn?= =?utf-8?B?VWJnNWF4TmNScy9aWkpRdnBBWWhKUkVzRlFkTENkTmR3MGttRDl4ZVlWWWEz?= =?utf-8?B?Zk1pYWp6bW5OL3NuVVpiVVlwUnZ3QVUwYktTRXpESkhQTEdycnd4L2o4UGt6?= =?utf-8?B?MVFMMTV3VHNEL09malhmWG1YcDhjZ2hjQjIxOENCLzQ1OGRyMnUrbm9IMjVj?= =?utf-8?B?YUp2RC9adEhEek8velRlNDNrR1RBT2tjTTMvSks3YkEvREEwRG13S0swQXhT?= =?utf-8?B?MmQ3TlM4eFRFK0JPQUM3VEFqV3BSczRwd3l1TUZqYmwwYmxHY3JnUVFWTFpJ?= =?utf-8?B?WFFYMVN2cjJmOGJzcWJHdzRRZGdsVHZrM0plRlErMlNINWNLUEhPQnd5WElK?= =?utf-8?B?Y1pZNmwvQTRFUGVSQ2hvVmdud0pGMUJ4cnFFUlRZd0VNK2VJN0I0L2NpVSti?= =?utf-8?B?U0lwdkhzRG1HZkxJR3hTMFdBUmJHZ1pqZjNzQnhFSEtuNmVVVzRmTnI0MlZP?= =?utf-8?B?emtJWENYSEVQeDlhcmR3S0E2UzdGelg3RGRkNHdGVU5EeWlXTWtTN0UwTGJT?= =?utf-8?B?U3VzanM4TENSeWR1a3diN0pIaSs4TEJ3NDFyWVJYaWhVUTBBRndrNHp1elo4?= =?utf-8?B?bkl6T00zL1pZZ09VSUo0cXU3Qks2aW02N0x6bEVCWGRZbkNDdE8yYjVuanM2?= =?utf-8?B?VVh2bkY0UXZSMjdBWjhJdk4rYm1BdStDamM1WFUwLzFiR2pLaUw2eVFWNGlO?= =?utf-8?Q?zWvi/ilru+cTBhzzKYy6QtdXF?= 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: DM6PR11MB3723.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: df5d12d4-c082-42a0-2359-08dab5c2e78c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Oct 2022 13:23:13.9194 (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: csdnT0XbBZ9MZ4BBMtcRxMdnTL9jA6u8lP4f1uJJLwUmsPVPzd+6bNXdZ2RJCg9hwllvUcqt3KGmCQz1Srb7+Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR11MB7211 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRmVycnVoIFlpZ2l0IDxm ZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gU2VudDogTW9uZGF5LCBPY3RvYmVyIDI0LCAyMDIyIDE4 OjQ4DQo+IFRvOiBHdW8sIEp1bmZlbmcgPGp1bmZlbmcuZ3VvQGludGVsLmNvbT47IFpoYW5nLCBR aSBaDQo+IDxxaS56LnpoYW5nQGludGVsLmNvbT47IFd1LCBKaW5namluZyA8amluZ2ppbmcud3VA aW50ZWwuY29tPjsgWGluZywNCj4gQmVpbGVpIDxiZWlsZWkueGluZ0BpbnRlbC5jb20+DQo+IENj OiBkZXZAZHBkay5vcmc7IExpLCBYaWFveXVuIDx4aWFveXVuLmxpQGludGVsLmNvbT47DQo+IGF3 b2diZW1pbGFAZ29vZ2xlLmNvbTsgUmljaGFyZHNvbiwgQnJ1Y2UNCj4gPGJydWNlLnJpY2hhcmRz b25AaW50ZWwuY29tPjsgaGVtYW50LmFncmF3YWxAbnhwLmNvbTsNCj4gc3RlcGhlbkBuZXR3b3Jr cGx1bWJlci5vcmc7IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47DQo+IFpoYW5n LCBIZWxpbiA8aGVsaW4uemhhbmdAaW50ZWwuY29tPjsgV2FuZywgSGFpeXVlDQo+IDxoYWl5dWUu d2FuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjcgMS84XSBuZXQvZ3ZlL2Jh c2U6IGludHJvZHVjZSBiYXNlIGNvZGUNCj4gDQo+IE9uIDEwLzI0LzIwMjIgNjowNCBBTSwgR3Vv LCBKdW5mZW5nIHdyb3RlOg0KPiA+DQo+ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gPj4gRnJvbTogRmVycnVoIFlpZ2l0IDxmZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gPj4g U2VudDogRnJpZGF5LCBPY3RvYmVyIDIxLCAyMDIyIDE3OjQ5DQo+ID4+IFRvOiBHdW8sIEp1bmZl bmcgPGp1bmZlbmcuZ3VvQGludGVsLmNvbT47IFpoYW5nLCBRaSBaDQo+ID4+IDxxaS56LnpoYW5n QGludGVsLmNvbT47IFd1LCBKaW5namluZyA8amluZ2ppbmcud3VAaW50ZWwuY29tPjsgWGluZywN Cj4gPj4gQmVpbGVpIDxiZWlsZWkueGluZ0BpbnRlbC5jb20+DQo+ID4+IENjOiBkZXZAZHBkay5v cmc7IExpLCBYaWFveXVuIDx4aWFveXVuLmxpQGludGVsLmNvbT47DQo+ID4+IGF3b2diZW1pbGFA Z29vZ2xlLmNvbTsgUmljaGFyZHNvbiwgQnJ1Y2UNCj4gPj4gPGJydWNlLnJpY2hhcmRzb25AaW50 ZWwuY29tPjsgaGVtYW50LmFncmF3YWxAbnhwLmNvbTsNCj4gPj4gc3RlcGhlbkBuZXR3b3JrcGx1 bWJlci5vcmc7IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47DQo+ID4+IFpoYW5n LCBIZWxpbiA8aGVsaW4uemhhbmdAaW50ZWwuY29tPjsgV2FuZywgSGFpeXVlDQo+ID4+IDxoYWl5 dWUud2FuZ0BpbnRlbC5jb20+DQo+ID4+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjcgMS84XSBuZXQv Z3ZlL2Jhc2U6IGludHJvZHVjZSBiYXNlIGNvZGUNCj4gPj4NCj4gPj4gT24gMTAvMjEvMjAyMiAx MDoxOSBBTSwgSnVuZmVuZyBHdW8gd3JvdGU6DQo+ID4+PiBUaGUgZm9sbG93aW5nIGJhc2UgY29k ZSBpcyBiYXNlZCBvbiBHb29nbGUgVmlydHVhbCBFdGhlcm5ldCAoZ3ZlKQ0KPiA+Pj4gZHJpdmVy IHYxLjMuMCB1bmRlciBNSVQgbGljZW5zZS4NCj4gPj4+IC0gZ3ZlX2FkbWlucS5jDQo+ID4+PiAt IGd2ZV9hZG1pbnEuaA0KPiA+Pj4gLSBndmVfZGVzYy5oDQo+ID4+PiAtIGd2ZV9kZXNjX2Rxby5o DQo+ID4+PiAtIGd2ZV9yZWdpc3Rlci5oDQo+ID4+PiAtIGd2ZS5oDQo+ID4+Pg0KPiA+Pj4gVGhl IG9yaWdpbmFsIGNvZGUgaXMgaW46DQo+ID4+PiBodHRwczovL2dpdGh1Yi5jb20vR29vZ2xlQ2xv dWRQbGF0Zm9ybS9jb21wdXRlLXZpcnR1YWwtZXRoZXJuZXQtDQo+ID4+IGxpbnV4L1wNCj4gPj4+ IHRyZWUvdjEuMy4wL2dvb2dsZS9ndmUNCj4gPj4+DQo+ID4+PiBOb3RlIHRoYXQgdGhlc2UgY29k ZSBhcmUgbm90IEludGVsIGZpbGVzIGFuZCB0aGV5IGNvbWUgZnJvbSB0aGUNCj4ga2VybmVsDQo+ ID4+PiBjb21tdW5pdHkuIFRoZSBiYXNlIGNvZGUgdGhlcmUgaGFzIHRoZSBzdGF0ZW1lbnQgb2YN Cj4gPj4+IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiAoR1BMLTIuMCBPUiBNSVQpLiBIZXJlIHdl IGp1c3QgZm9sbG93IHRoZQ0KPiA+Pj4gcmVxdWlyZWQgTUlUIGxpY2Vuc2UgYXMgYW4gZXhjZXB0 aW9uIHRvIERQREsuDQo+ID4+Pg0KPiA+Pj4gU2lnbmVkLW9mZi1ieTogWGlhb3l1biBMaSA8eGlh b3l1bi5saUBpbnRlbC5jb20+DQo+ID4+PiBTaWduZWQtb2ZmLWJ5OiBIYWl5dWUgV2FuZyA8aGFp eXVlLndhbmdAaW50ZWwuY29tPg0KPiA+Pj4gU2lnbmVkLW9mZi1ieTogSnVuZmVuZyBHdW8gPGp1 bmZlbmcuZ3VvQGludGVsLmNvbT4NCj4gPj4NCj4gPj4gPC4uLj4NCj4gPj4NCj4gPj4+ICtzdGF0 aWMgYm9vbCBndmVfYWRtaW5xX3dhaXRfZm9yX2NtZChzdHJ1Y3QgZ3ZlX3ByaXYgKnByaXYsIHUz Mg0KPiA+PiBwcm9kX2NudCkNCj4gPj4+ICt7DQo+ID4+PiArCWludCBpOw0KPiA+Pj4gKw0KPiA+ Pj4gKwlmb3IgKGkgPSAwOyBpIDwgR1ZFX01BWF9BRE1JTlFfRVZFTlRfQ09VTlRFUl9DSEVDSzsg aSsrKQ0KPiA+PiB7DQo+ID4+PiArCQlpZiAoaW9yZWFkMzJiZSgmcHJpdi0+cmVnX2JhcjAtPmFk bWlucV9ldmVudF9jb3VudGVyKQ0KPiA+Pj4gKwkJICAgID09IHByb2RfY250KQ0KPiA+Pg0KPiA+ PiBbY29weS9wYXN0ZSBmcm9tIHByZXZpb3VzIHZlcnNpb25dDQo+ID4+DQo+ID4+IFN5bnRheCwg d2h5IG5vdCBtb3ZlIHNlY29uZCBoYWxmIG9mIHRoZSBlcXVhdGlvbiBpbiBhYm92ZSBsaW5lPw0K PiA+PiBVbmxlc3MgdGhpcyBpcyBjb21pbmcgZnJvbSBnb29nbGUgY29kZSBhbmQgdXBkYXRpbmcg aXQgYnJpbmdzDQo+ID4+IG1haW50YW5hbmNlIGNvc3QuDQo+ID4NCj4gPiBZZXMsIHRoaXMgZnVu Y3Rpb24gaXMganVzdCBjb21pbmcgZnJvbSBnb29nbGUgY29kZSB3aXRob3V0IGNoYW5nZXMuDQo+ ID4gU28gaXQgd291bGQgYmUgYmV0dGVyIHRvIGtlZXAgdGhpcyB1bmNoYW5nZWQuIFRoYW5rcyEN Cj4gPg0KPiANCj4gYWNrDQoNClRoYW5rcyBmb3IgeW91ciByZXZpZXchDQoNCg==