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 9767FA0C4E; Tue, 2 Nov 2021 08:50:54 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 849594069F; Tue, 2 Nov 2021 08:50:53 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id 34C014068F for ; Tue, 2 Nov 2021 08:50:52 +0100 (CET) X-IronPort-AV: E=McAfee;i="6200,9189,10155"; a="292042280" X-IronPort-AV: E=Sophos;i="5.87,202,1631602800"; d="scan'208";a="292042280" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2021 00:50:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,202,1631602800"; d="scan'208";a="496833452" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga007.fm.intel.com with ESMTP; 02 Nov 2021 00:50:50 -0700 Received: from fmsmsx606.amr.corp.intel.com (10.18.126.86) 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.2242.12; Tue, 2 Nov 2021 00:50:50 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Tue, 2 Nov 2021 00:50:50 -0700 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (104.47.74.48) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Tue, 2 Nov 2021 00:50:50 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cfaM42Y1qipO4P3gMDrpLQqp31xDTdovR03PXXIqYtMKTMZ/C2l7DJ71QQwPwP27k8KRecgwZHSMBmAo+dieseTfDef8o9sCOzLcM0LNUK557XiCFsmibKQImkOsoVvzmGevdB4ONVqxE2CqfY2q0Jnu2q4pK85Y9+kolFZ+78vsOx/mWAmcwKrRYiDgyo+t12BUWLyZmxrz/8rkDfuacfGSn+V0KV+NOoDydnpLxnoTx5K5l7XzqXxFVtzaun+mp+ZVjux2nwGtssDF8r1stuMN427M9rwOj3Xj7dXneX4VR3/T2ArQdxIIA7lyW+jtA7p3j9vPeaG3S0VBx4RIvQ== 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=jptZt+M7nYfkptB26W3MhZW1RWHvpJS/c2va3GD/vNY=; b=nuR2ulENpV2Gb0vNkXA7a4Jk7CR2XmfGaC9NXltKRX037YYzrX9aDlbd7wPM+mCW8Q5IiiAfVF9NHfkaiMaY3D0xxIzMeLcvksoN6uMOus81srUYhAhqyOIlLJ7xwt2m1xpsWKutQLDJKCXpg7K05mhVJ64WFYekh+ld+jRQSOwqIBlbzr/5OAAKnje5aoGdEHD8AmsyM6rMcJ/DsbsD9cpsx909bEOgZEiksZwdHn89m2mpLHGbBK9CTEwEJSaWZJJKRfFPvVc3jEJEebrNtJ5HJDfgx/TjpWd9e0DBbkPSqRY9doWuX1Ry5fVUBYWQdvl/PvZFLKstwrybcSnMow== 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=jptZt+M7nYfkptB26W3MhZW1RWHvpJS/c2va3GD/vNY=; b=IDzfl+UHdKS/zIdZ0+h1kUOFSclb2UanikEcj66Rrb3Zz4vybzrfcxmm5GapwrNpvxG93568POBPLhYc3XFx6dW+WidObcTm4ZvECsBQ0Ip7RIxvVNmqznpM0L1vI+yfp8X5pRaWWknUrTTNIGjz3U9E7LgLbhYvsfPRZzoez1E= Received: from SN6PR11MB3504.namprd11.prod.outlook.com (2603:10b6:805:d0::17) by SN6PR11MB3309.namprd11.prod.outlook.com (2603:10b6:805:bd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4649.15; Tue, 2 Nov 2021 07:50:49 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::94ce:97cd:1b5f:b511]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::94ce:97cd:1b5f:b511%7]) with mapi id 15.20.4649.020; Tue, 2 Nov 2021 07:50:48 +0000 From: "Xia, Chenbo" To: Vijay Kumar Srivastava , "dev@dpdk.org" CC: "maxime.coquelin@redhat.com" , "andrew.rybchenko@oktetlabs.ru" , "Praveen Kumar Jain" , Harpreet Singh Anand Thread-Topic: [PATCH v3 02/10] vdpa/sfc: add support for device initialization Thread-Index: AQHXzNQTF9om6BX320a+OK8fUxBDCKvuhieAgAFamACAAAErYA== Date: Tue, 2 Nov 2021 07:50:48 +0000 Message-ID: References: <20210706164418.32615-1-vsrivast@xilinx.com> <20211029144645.30295-1-vsrivast@xilinx.com> <20211029144645.30295-3-vsrivast@xilinx.com> In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: xilinx.com; dkim=none (message not signed) header.d=none;xilinx.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 62281470-c94b-431c-787e-08d99dd57c55 x-ms-traffictypediagnostic: SN6PR11MB3309: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6108; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GjpI+gWF+3ti4IoyVcQwMP5Zgu4WuLYlcPr+VhYaSNp+ZT/lHsll9X40yCqfQb/K8Z96AuNR5wpR9LaWh65yXORg+MwoltV3f/yrm/a5bGLWEqZZCyPqn/xNjRCG2mrhcFMmLesb3I9/FwE2mGYTfifI4KVdi3BlaiLIdmZhTPa7KhsverGMsEcSAY/nunQczsCI/dK3JqKJdjYu6FMt7UvcBMuF7altOXZFpQrY9qtMQID8Vk8cuTNDLkP0O/KMrX1sEigNq4tNbhZoozXPp5pKS21trtRFO6Ufi0pVws1qbvG9220588n4fAFX6BOp0slxoYFxf1byWGzJLtMh8/Tg9O8yK/usLD9+Smt3uc/eLy0G6IzKkFEkfMD9yK7w0L0Qau/n83nWkdtrVIkznF9UjhROWQjpAgrmok2Pp1Wee8fJJHXtp3oYVcmlcfndCb4KcBzhqYPYSMLShKp5L0Ekw4O8fteB2wQ46JEIy5AGCmgCLqmUoQFJLjHtxO5Zkixbv57IYVGeROpgbhYY0uKks3E2phR+jjt0avOas7rVpYU2A1B2i3Q5//XWf/r3duvo330g8iJ+gf4au6pH63mHZpJ8zWGFQHiWQ9T0qOjKcr2NDm3CoOsrdoHLYaw8IA1w+CRg0PjNNBzMOLCpPXnKOXnirK3GlhCQJvWszy4biw0F2oEWCYSHwgrOKQU3bWT8JTplWrybmrvMlreqNg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB3504.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(38070700005)(4326008)(33656002)(2906002)(7696005)(66556008)(76116006)(66446008)(64756008)(9686003)(66476007)(66946007)(71200400001)(86362001)(5660300002)(55016002)(8936002)(52536014)(8676002)(53546011)(6506007)(26005)(186003)(83380400001)(54906003)(82960400001)(38100700002)(508600001)(316002)(122000001)(110136005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?QXQvazU5dk1XV2lqQ0xTL3M2V1Y3MEkyZTNMdGozcisxNVVwVzdZcURCUEFt?= =?utf-8?B?N2pDY0NQNUFDUXQwcStNYmNoeUg1NnF6UFEyOGJMMGwwZkdZQjVvaHZhZW5U?= =?utf-8?B?eFcrUVBzL3VUMUJ2TFl3eDhuR3ZSOWRISUNJOExSdnpYN0drTVFDVE1UVnpV?= =?utf-8?B?ZElpMzBSNVh1Nkh6S2ZLMlVZNjJMeHBFbG1yODdPdTJHdngwQjQvNDNUZFFo?= =?utf-8?B?RFlnVzd6OXFUek8yNDFJR2ZLanpjVGs1Z0Y3UjJaeEpNMlpETERCUGNuUzhz?= =?utf-8?B?TmJ0L21JSjRnTTNoYXRhdWdZU281MXdlcnpsbno3UmNmWkN2NjVWU29xZFdK?= =?utf-8?B?WVhVVWUwVGkrNlpPV1FLYzB4NXRlR0lNNmxhckM3cWp1NUpreUlSRkVOUCtU?= =?utf-8?B?NWJSd1lvN2hiTjlKeEwyMTFieXlWK3hKdjJGNUR3K2VoZ0lsMUhXVDl0czky?= =?utf-8?B?blBNVFd4TjFibi9DQTQrQmhtYlZ0a3FWSU15T3pvU3I3RGdLS2x1V3JOSlBB?= =?utf-8?B?Y2FzcFZWajlYUjhZWjk3UW82ZlNzRlRlekQ5dVZmRUZnVmxUMktpUHlXb0g4?= =?utf-8?B?N0s5eUpIcjJTR1ZBeDhNbW1VMk1EN3NJdUlycXdvdllxUy8xckFhdTZtZWRV?= =?utf-8?B?cHhFbWJyNWRyUElwaW9LczhtZm03ckJBQ3FFQ2QvQnMyYk0xNTFGMVh5RGtv?= =?utf-8?B?UzMrSlhHdm15U0pnU1lWajdLK2dRRU5CWHdKTmlBek11a2V5S3RPdnNOdisr?= =?utf-8?B?RXFXT2g5angyYXVYWmQrK05oVVR5S2FiSmVmN01jcGdTd2lRRWVuMWpJRW43?= =?utf-8?B?WjdtdEphbXlqZFdENmVIVUJWMDRKNkFpeTh6ZlZtbmI2cmRYbk1TVUFYbGpi?= =?utf-8?B?SnVFY1g0eTh0NittYk42STZZRC9QZDU2bEsyUmkxU0ZTK0JpQTl5Y1h4RUFX?= =?utf-8?B?eGozYUFodDN6MmhuRHpPYm12bVBlSnN2am5wYU45MTYvUmNnc0E5aUN1ODNv?= =?utf-8?B?a3lVMDcyN1pKa2dWNkV1TFQ3Mk9udGw3eHJBeDlCMTFlaHN4VzVaVEpvRGt0?= =?utf-8?B?V2lkZXBZV0s5Tnl0c3p3MVI0S0Rqa3BJOGZNbkFmc0tXb0FGaHNJcVdOcExq?= =?utf-8?B?TWlJZEFqdE9wRURDV0FnbFJBdmlURnZlQnA0RVJGdGszTWFKRStnSXN3TXdW?= =?utf-8?B?MUxCeFE0d20vSGVidnAvN08yZzlmb3NJQWlMb0VkUTByZldUTFRvUWhmdHds?= =?utf-8?B?a3F3QUFWWXZrbTdYY3VjVHNHM3BoYk44YVFHa0RsYitEUXFGRTVEWTVEeERH?= =?utf-8?B?SjhUV3dMMXVqNHZmL3NIbW10cEFtNlBqMTcwd0pkM1hkdUNRdVlvelNWb0Rp?= =?utf-8?B?L1NFS1ltNGxDK0hTaGovR3ZzMm5VU20vU2RyeUVieFprRDl2NS9hN0s5N25M?= =?utf-8?B?dUd4M3ZQWFRhMHVtS3hubEFMeTlJWVlVZzJpaUJvWlQrVzAzaHRMU3QxTCtN?= =?utf-8?B?QktkYTUrMHFsdmlXclVqNnN5RjVhWERxZ3VGSDZ6bDdSQWZqRHhlTmpsYmxT?= =?utf-8?B?ZXBUblo3TVF3RGFMOEQ4VVFDODAzT0x0c3dHbHE0eEduMGRoTDNXeEU0MGRx?= =?utf-8?B?SWFZVlpabUtuVzJ6Q0xUcUgxTUZTVkFQNWdnczRoNXIvNTlzRzFWRDZMSGZw?= =?utf-8?B?dVRncmJwNmMvOS9qeldpdVdmTDZId2RPV3ZCdDNuS2haVVExMzBEU0RPVDJH?= =?utf-8?B?bjhMTElZU05oU3o4bkV4M2Ntb0EyUEJQL0pyOWVMbFJOczdXNnh1SlhuUmZQ?= =?utf-8?B?SWVKQ0xic0U0TEUyMC9mR3FZcUNwTHpFd2R1UWdRQjhNYmNKWmNZb015bDZp?= =?utf-8?B?KzRHSFBBcG9lY25pZEgwVFVXZzlCUG03Q3JjcWZEVmZIcWpvNS9XR1RVeGFz?= =?utf-8?B?OEZjOUNlSVJiTlEvZlBCaEVoRE9PQ1cxcnJEalJZOVRSTFVzV2V4eXpGWHFJ?= =?utf-8?B?bFRHcEJIYnl0ZkF0SjRBbEgzQ25GRzB2SS96MkNROU9zQ29JdWZTTWtpNWM4?= =?utf-8?B?U1M1VkxrbmQzajFOSDc2YTNpeUNJc1BSYXBPWUxVVkxVUHREYjB6WHVpZi9r?= =?utf-8?B?YW16bEJrS0RrVG9IVTgvYUJGWTIzNHFZRnkvTHorOTVrZEZBTVBob2RSVG5z?= =?utf-8?Q?aUx6DCcDbQycO66hzSUG4F8=3D?= 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: SN6PR11MB3504.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 62281470-c94b-431c-787e-08d99dd57c55 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Nov 2021 07:50:48.8337 (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: aEp7SE0Q9n7gxf94AJgUPxqxWqva5wqRBcfAxLT8XXukhsFF2f5SCoVYniW+KkV/x/Pcf+o3ej9I9lHY+1cuaQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3309 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v3 02/10] vdpa/sfc: add support for device initialization 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBWaWpheSBLdW1hciBTcml2YXN0 YXZhIDx2c3JpdmFzdEB4aWxpbnguY29tPg0KPiBTZW50OiBUdWVzZGF5LCBOb3ZlbWJlciAyLCAy MDIxIDM6NDMgUE0NCj4gVG86IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47IGRl dkBkcGRrLm9yZw0KPiBDYzogbWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb207IGFuZHJldy5yeWJj aGVua29Ab2t0ZXRsYWJzLnJ1OyBQcmF2ZWVuIEt1bWFyDQo+IEphaW4gPHByYXZlZW5qQHhpbGlu eC5jb20+OyBIYXJwcmVldCBTaW5naCBBbmFuZCA8aGFuYW5kQHhpbGlueC5jb20+DQo+IFN1Ympl Y3Q6IFJFOiBbUEFUQ0ggdjMgMDIvMTBdIHZkcGEvc2ZjOiBhZGQgc3VwcG9ydCBmb3IgZGV2aWNl IGluaXRpYWxpemF0aW9uDQo+IA0KPiBIaSBDaGVuYm8sDQo+IA0KPiA+LS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gPkZyb206IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4N Cj4gPlNlbnQ6IE1vbmRheSwgTm92ZW1iZXIgMSwgMjAyMSA1OjE5IFBNDQo+ID5UbzogVmlqYXkg S3VtYXIgU3JpdmFzdGF2YSA8dnNyaXZhc3RAeGlsaW54LmNvbT47IGRldkBkcGRrLm9yZw0KPiA+ Q2M6IG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tOyBhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFi cy5ydTsgVmlqYXkNCj4gPkt1bWFyIFNyaXZhc3RhdmEgPHZzcml2YXN0QHhpbGlueC5jb20+DQo+ ID5TdWJqZWN0OiBSRTogW1BBVENIIHYzIDAyLzEwXSB2ZHBhL3NmYzogYWRkIHN1cHBvcnQgZm9y IGRldmljZSBpbml0aWFsaXphdGlvbg0KPiA+DQo+ID5IaSBWaWpheSwNCj4gPg0KPiA+PiAtLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBWaWpheSBTcml2YXN0YXZhIDx2aWph eS5zcml2YXN0YXZhQHhpbGlueC5jb20+DQo+ID4+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciAyOSwg MjAyMSAxMDo0NyBQTQ0KPiA+PiBUbzogZGV2QGRwZGsub3JnDQo+ID4+IENjOiBtYXhpbWUuY29x dWVsaW5AcmVkaGF0LmNvbTsgWGlhLCBDaGVuYm8gPGNoZW5iby54aWFAaW50ZWwuY29tPjsNCj4g Pj4gYW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU7IFZpamF5IEt1bWFyIFNyaXZhc3RhdmEN Cj4gPj4gPHZzcml2YXN0QHhpbGlueC5jb20+DQo+ID4+IFN1YmplY3Q6IFtQQVRDSCB2MyAwMi8x MF0gdmRwYS9zZmM6IGFkZCBzdXBwb3J0IGZvciBkZXZpY2UNCj4gPj4gaW5pdGlhbGl6YXRpb24N Cj4gPj4NCj4gPj4gRnJvbTogVmlqYXkgS3VtYXIgU3JpdmFzdGF2YSA8dnNyaXZhc3RAeGlsaW54 LmNvbT4NCj4gPj4NCj4gPj4gQWRkIEhXIGluaXRpYWxpemF0aW9uIGFuZCB2RFBBIGRldmljZSBy ZWdpc3RyYXRpb24gc3VwcG9ydC4NCj4gPj4NCj4gPj4gU2lnbmVkLW9mZi1ieTogVmlqYXkgS3Vt YXIgU3JpdmFzdGF2YSA8dnNyaXZhc3RAeGlsaW54LmNvbT4NCj4gPj4gQWNrZWQtYnk6IEFuZHJl dyBSeWJjaGVua28gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pg0KPiA+PiAtLS0NCj4g W1NOSVBdDQo+ID4+ICtzZmNfdmRwYV9od19pbml0KHN0cnVjdCBzZmNfdmRwYV9hZGFwdGVyICpz dmEpIHsNCj4gPj4gKwllZnhfYmFyX3JlZ2lvbl90IG1lbV9lYnI7DQo+ID4+ICsJZWZ4X25pY190 ICplbnA7DQo+ID4+ICsJaW50IHJjOw0KPiA+PiArDQo+ID4+ICsJc2ZjX3ZkcGFfbG9nX2luaXQo c3ZhLCAiZW50cnkiKTsNCj4gPj4gKw0KPiA+PiArCXNmY192ZHBhX2xvZ19pbml0KHN2YSwgImdl dCBmYW1pbHkiKTsNCj4gPj4gKwlyYyA9IHNmY19lZnhfZmFtaWx5KHN2YS0+cGRldiwgJm1lbV9l YnIsICZzdmEtPmZhbWlseSk7DQo+ID4+ICsJaWYgKHJjICE9IDApDQo+ID4+ICsJCWdvdG8gZmFp bF9mYW1pbHk7DQo+ID4+ICsJc2ZjX3ZkcGFfbG9nX2luaXQoc3ZhLA0KPiA+PiArCQkJICAiZmFt aWx5IGlzICV1LCBtZW1iYXIgaXMgJXUsIg0KPiA+PiArCQkJICAiZnVuY3Rpb24gY29udHJvbCB3 aW5kb3cgb2Zmc2V0IGlzICUjIiBQUkl4NjQsDQo+ID4+ICsJCQkgIHN2YS0+ZmFtaWx5LCBtZW1f ZWJyLmVicl9pbmRleCwNCj4gPm1lbV9lYnIuZWJyX29mZnNldCk7DQo+ID4NCj4gPklmIGVicl9p ZHggaXMgaW50LCB0aGVuICV1IC0+ICVkLiBCdXQgaWYgaXQncyBhIGJhciBpbmRleCwgaXRzIHR5 cGUgc2hvdWxkIGJlDQo+ID51bnNpZ25lZCBpbnQgYW5kIHlvdSBzaG91bGQgY2hhbmdlIHRoZSBk ZWZpbml0aW9uIGluIHNmYyBjb21tb24gY29kZS4NCj4gWWVzLiBJdOKAmXMgQkFSIGluZGV4Lg0K PiBUaGFua3MgZm9yIHRoZSBjYXRjaC4gSSBhZ3JlZSB0aGF0IHVzYWdlIG9mICd1bnNpZ25lZCBp bnQnIGxvb2tzIGJldHRlcg0KPiBmb3IgQkFSIGluZGV4LCBob3dldmVyIGl0IHNob3VsZCByZXN1 bHQgaW4gbW9yZSBjaGFuZ2VzIGluIHNpbWlsYXINCj4gcGxhY2VzLiBJcyBpdCBPSyBpZiB3ZSB1 c2UgJWQgaGVyZSByaWdodCBub3cgdG8gYmUgY29uc2lzdGVudCB3aXRoDQo+IGN1cnJlbnQgdHlw ZSBhbmQgYWRkcmVzcyB0aGUgcmV2aWV3IG5vdGUgaW4gYSBmb2xsb3cgdXAgcGF0Y2hlcw0KPiBm b3IgY29tbW9uL3NmY19lZngsIG5ldC9zZmMgYW5kIHZkcGEvc2ZjPw0KDQpTdXJlLiBPayBmb3Ig bWUuDQoNCi9DaGVuYm8NCg0K