From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 88DB4A0528; Thu, 9 Jul 2020 17:05:41 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 653681D665; Thu, 9 Jul 2020 17:05:40 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id AD5C31D658 for ; Thu, 9 Jul 2020 17:05:38 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 069EtfdH005763; Thu, 9 Jul 2020 08:05:37 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=NGd+wzr3B7A/nEJFZVsOfKDdDImTBpMlBwHWThjvxnM=; b=txObppbDUjmSTgzdbq9MotbklUWwTd/ZiKLwCtLwlaYWAx9Yt0FgvJlO4sctLGG+L1Mh GN6+1vuSkDYwsjE8xbDjy3JFc+Mea+mQ8SoTwMYV1wcN0Nat2vAcSJjKDobgiaILinIy pK574nh6keZWB9igaPj0JSfXq0D7Qe4Afz8JEDze/TGUDNKLKlc0ZPksbL0YE/kZuoYY ibEcQZ/O/Aofl10z0DgOcVBjGs2DuHC06epyY0rfmn2sVKlfAkFIeioigY7vJeybyuT5 iY09/76T6WDB7DyXaklXpxUkmEFOPKObS2GamVN+sE90vZLU8bPhaWl5nqYyfhR8OVR4 zA== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0b-0016f401.pphosted.com with ESMTP id 325jyv40un-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 09 Jul 2020 08:05:37 -0700 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 9 Jul 2020 08:05:35 -0700 Received: from SC-EXCH04.marvell.com (10.93.176.84) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 9 Jul 2020 08:05:35 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.43) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Thu, 9 Jul 2020 08:05:35 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nB9QZUh69X4Eyf5rtzE5lkp9BG4HBkKLtGetYp8Vbx/12mzDJWOJxSt8DNctUBwsJmIZrdoI95vIoPn9aBKasAy3U6SPVSM2cbBuIPsI4C0BifFcEpoSsp+tISQWevpi9isjK1abVY0rM/B7nW7Bl+HPLGdc6eNmxUN2BWhhQzglI5vDlzWjwEmSLeFZ/g6BP6WsHt4rBevdgV6GDQL+ltXuTVSYAutxqBVzMl2oXb0wfzNvw+0TlHxySxkNNa/wfAIPdNdmcUuD0kLMT6EMBukvreIqy3qnkN4DX+r337QK1gpjqhZsT/woi0GQeDBlW4ElRBwEKYvO7AVqkYrMJQ== 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=NGd+wzr3B7A/nEJFZVsOfKDdDImTBpMlBwHWThjvxnM=; b=oHph47V4hJkkPaJDM1aDGlA86LmPUJMub11n2NKYufPKH1fyjQTuWMOOhIWILvE7pidkE2dI26G0QhduTuzLq91LRwJuP9Kr0Rzy5kQ7dJHsENWhMSCVImVyKHxAYZmI8//NqK4f1FkcELK8uv0fzZyJk0v2IXET8B6/D3fAYp3jRNGnzODZO5VufBEfmL9J52r151kJvs7JZuF90vdwiaATOAzV2mZ320F6KKF0Yoi+vNhv+NaolrNJAQpkTErDrWX7mpuNh3y5oyzYC9350z4Ni2pWdvG14QqifvQOC/qzoKk9YNlk1DQgL8vpq4VXDnRXsvpWU+lnFb08CEZ7CQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NGd+wzr3B7A/nEJFZVsOfKDdDImTBpMlBwHWThjvxnM=; b=C11n/2NOUmeFuzO9omKKKsePEuUrVqS0nlArls7hlDNgRzTfG2Y7ok03Ghn4vihJCn7FlOnU0NbxDsTsRHVDcz5QYWRpFxTIR4DyPDk4+pu/qgCI+XN1lC3WPftDOxEOWQ3GRde/A6CcbwTpTvqcDn5aTakJ9T0JQiX9qxC+s1A= Received: from DM6PR18MB3388.namprd18.prod.outlook.com (2603:10b6:5:1cc::13) by DM6PR18MB3476.namprd18.prod.outlook.com (2603:10b6:5:2aa::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3174.21; Thu, 9 Jul 2020 15:05:34 +0000 Received: from DM6PR18MB3388.namprd18.prod.outlook.com ([fe80::899d:e413:e711:f2f9]) by DM6PR18MB3388.namprd18.prod.outlook.com ([fe80::899d:e413:e711:f2f9%6]) with mapi id 15.20.3174.022; Thu, 9 Jul 2020 15:05:34 +0000 From: Manish Chopra To: Jerin Jacob , Gaetan Rivet CC: Jerin Jacob Kollanukkaran , Ferruh Yigit , dpdk-dev , Igor Russkikh , Rasesh Mody , GR-Everest-DPDK-Dev Thread-Topic: [EXT] Re: [PATCH 1/6] net/qede: define PCI config space specific osals Thread-Index: AQHWPpYvhJcx0eM+ukm9vx5qD6qza6jqblCAgBUQlrA= Date: Thu, 9 Jul 2020 15:05:33 +0000 Message-ID: References: <20200609194207.24328-1-manishc@marvell.com> <20200609194207.24328-2-manishc@marvell.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=marvell.com; x-originating-ip: [2405:205:1408:2452:e428:963e:720d:322a] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bbaf6bd1-1225-4143-9f44-08d82419879b x-ms-traffictypediagnostic: DM6PR18MB3476: 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: TQB4uXhod5POT3FCGhj+1RX7W9kF2x9azILdMBdpiWNdXgXcm4nhbbsZA2hcyTGIhtDUJJB9jdo58OW/dwc7XjYQCgnW9UQ7xnLovZjLMIapHOyyQD3SVdZEmzevcUKS1IbnW8U0+gcWLdSpUiRU1VulqndD2RzIm+sxYrp0YUS9sLoXIZcM91MNWq1UGGBsTgxe4bABbtU4j8rMttafMb2H89yK6Iu8okyA9LePpuuTg06MUCiYIcp4MHgXxUmBIN0sqaZj7vGD98TbtHWj97Lsdxm7CSF5OrWxNVf78ANiUZEWbmeRKRSsNdjOKjI42PaYDLqSFYnFXN2E84drvg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR18MB3388.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(366004)(136003)(346002)(39860400002)(376002)(396003)(66476007)(66446008)(64756008)(66556008)(76116006)(8936002)(2906002)(66946007)(71200400001)(107886003)(8676002)(6506007)(53546011)(110136005)(316002)(478600001)(54906003)(86362001)(55016002)(52536014)(7696005)(5660300002)(9686003)(33656002)(83380400001)(186003)(4326008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: 9rFwBfkk7zX0a1sz7XHUL7iIHVYnMOYWyAugs4yq+TjTN4Dx4dRvmTCoNDo2mjVLPljufAo6uqIHN992r7tFvhhx6wNY+nvgd73UMdxJw7rPqpHI9cBCOThkapLUFZvcNHQYgkcwreLzko3cETz2n3If7kQRO9wDPQ3sDBew9c1NiuAsT9g5RBlQn+o3eM1DM0X1tXnLAvR7Ydi5SCDzXTUjCIBEhP6DP7FfH7PtvqaG0e0hzi1UXMOWxMqSH2cOs+YXcWoqznJvfSywzDt6v+8hwOf2TImD1rwdtUVyAm1nduZf0ZQ6/b9eLQcJEO/DQvAhb3bOgsy8ZJ0ZY3K1mn0TdA1x+q7qLplCgcokSnWuUfRWBCmUScVCJJb/g8KauhsVTQiwczSQ+zV9IgOQkKOsbuFBM8jWBGrEKEtDKh5fpLQrDqUYvG0uvl5Vnu2E6tfjZRqh665CunT7xlzPBwf8vAk+oWnOM+SH8qRD+BetUmxqWesAbkN1Ry4NkV9Z14/EBWJRNMA6BnElpcNLSJc8Kb/kM3DDpq8oyHqKB0qPYhXHQA69VITj4V4B3/sX 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: DM6PR18MB3388.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bbaf6bd1-1225-4143-9f44-08d82419879b X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Jul 2020 15:05:33.9411 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ZKNvNhVmwVbQxenzuDhbHJehVt4VBFB2KpVwqNcg76RGt9ceBqQUVW/vVM/YGS3hMIvP0ybm2ikH69XI46bB3g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR18MB3476 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-07-09_08:2020-07-09, 2020-07-09 signatures=0 Subject: Re: [dpdk-dev] [EXT] Re: [PATCH 1/6] net/qede: define PCI config space specific osals X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBKZXJpbiBKYWNvYiA8amVyaW5q YWNvYmtAZ21haWwuY29tPg0KPiBTZW50OiBGcmlkYXksIEp1bmUgMjYsIDIwMjAgMTA6MjQgQU0N Cj4gVG86IE1hbmlzaCBDaG9wcmEgPG1hbmlzaGNAbWFydmVsbC5jb20+OyBHYWV0YW4gUml2ZXQN Cj4gPGdyaXZlQHUyNTYubmV0Pg0KPiBDYzogSmVyaW4gSmFjb2IgS29sbGFudWtrYXJhbiA8amVy aW5qQG1hcnZlbGwuY29tPjsgRmVycnVoIFlpZ2l0DQo+IDxmZXJydWgueWlnaXRAaW50ZWwuY29t PjsgZHBkay1kZXYgPGRldkBkcGRrLm9yZz47IElnb3IgUnVzc2tpa2gNCj4gPGlydXNza2lraEBt YXJ2ZWxsLmNvbT47IFJhc2VzaCBNb2R5IDxybW9keUBtYXJ2ZWxsLmNvbT47IEdSLUV2ZXJlc3Qt DQo+IERQREstRGV2IDxHUi1FdmVyZXN0LURQREstRGV2QG1hcnZlbGwuY29tPg0KPiBTdWJqZWN0 OiBbRVhUXSBSZTogW1BBVENIIDEvNl0gbmV0L3FlZGU6IGRlZmluZSBQQ0kgY29uZmlnIHNwYWNl IHNwZWNpZmljDQo+IG9zYWxzDQo+IA0KPiBFeHRlcm5hbCBFbWFpbA0KPiANCj4gLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KPiBPbiBXZWQsIEp1biAxMCwgMjAyMCBhdCAxOjEzIEFNIE1hbmlzaCBDaG9wcmEgPG1h bmlzaGNAbWFydmVsbC5jb20+DQo+IHdyb3RlOg0KPiA+DQo+ID4gVGhpcyBwYXRjaCBkZWZpbmVz IHZhcmlvdXMgUENJIGNvbmZpZyBzcGFjZSBhY2Nlc3MgQVBJcyBpbiBvcmRlciB0bw0KPiA+IHJl YWQgYW5kIGZpbmQgSU9WIHNwZWNpZmljIFBDSSBjYXBhYmlsaXRpZXMuDQo+ID4NCj4gPiBXaXRo IHRoZXNlIGRlZmluaXRpb25zIGltcGxlbWVudGVkLCBpdCBlbmFibGVzIHRoZSBiYXNlIGRyaXZl ciB0byBkbw0KPiA+IFNSLUlPViBzcGVjaWZpYyBpbml0aWFsaXphdGlvbiBhbmQgSFcgc3BlY2lm aWMgY29uZmlndXJhdGlvbiByZXF1aXJlZA0KPiA+IGZyb20gUEYtUE1EIGRyaXZlciBpbnN0YW5j ZS4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IE1hbmlzaCBDaG9wcmEgPG1hbmlzaGNAbWFydmVs bC5jb20+DQo+ID4gU2lnbmVkLW9mZi1ieTogSWdvciBSdXNza2lraCA8aXJ1c3NraWtoQG1hcnZl bGwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFJhc2VzaCBNb2R5IDxybW9keUBtYXJ2ZWxsLmNv bT4NCj4gPiAtLS0NCj4gPiArDQo+ID4gK2ludCBvc2FsX3BjaV9maW5kX25leHRfZXh0X2NhcGFi aWxpdHkoc3RydWN0IHJ0ZV9wY2lfZGV2aWNlICpkZXYsDQo+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgY2FwKQ0KPiANCj4gDQo+ICsgR2FldGFuIChQQ0kgbWFp bnRhaW5lcikNCj4gDQo+IE1hbmlzaCwNCj4gSXQgbXVzdCBiZSBhIGNhbmRpZGF0ZSBmb3IgYSBn ZW5lcmljIFBDSSBBUEkgYXMgaXQgaXMgbm90aGluZyB0byBkbyB3aXRoIHFlZGUuDQo+IFBsZWFz ZSBtb3ZlIHRvIGNvbW1vbiBQQ0kgY29kZSBpZiBzdWNoIEFQSSBpcyBub3QgYWxyZWFkeSBwcmVz ZW50Lg0KPiANCj4gDQo+ID4gK3sNCj4gPiArICAgICAgIGludCBwb3MgPSBQQ0lfQ0ZHX1NQQUNF X1NJWkU7DQo+ID4gKyAgICAgICB1aW50MzJfdCBoZWFkZXI7DQo+ID4gKyAgICAgICBpbnQgdHRs Ow0KPiA+ICsNCj4gPiArICAgICAgIC8qIG1pbmltdW0gOCBieXRlcyBwZXIgY2FwYWJpbGl0eSAq Lw0KPiA+ICsgICAgICAgdHRsID0gKFBDSV9DRkdfU1BBQ0VfRVhQX1NJWkUgLSBQQ0lfQ0ZHX1NQ QUNFX1NJWkUpIC8gODsNCj4gPiArDQo+ID4gKyAgICAgICBpZiAocnRlX3BjaV9yZWFkX2NvbmZp ZyhkZXYsICZoZWFkZXIsIDQsIHBvcykgPCAwKQ0KPiA+ICsgICAgICAgICAgICAgICByZXR1cm4g LTE7DQo+ID4gKw0KPiA+ICsgICAgICAgLyoNCj4gPiArICAgICAgICAqIElmIHdlIGhhdmUgbm8g Y2FwYWJpbGl0aWVzLCB0aGlzIGlzIGluZGljYXRlZCBieSBjYXAgSUQsDQo+ID4gKyAgICAgICAg KiBjYXAgdmVyc2lvbiBhbmQgbmV4dCBwb2ludGVyIGFsbCBiZWluZyAwLg0KPiA+ICsgICAgICAg ICovDQo+ID4gKyAgICAgICBpZiAoaGVhZGVyID09IDApDQo+ID4gKyAgICAgICAgICAgICAgIHJl dHVybiAwOw0KPiA+ICsNCj4gPiArICAgICAgIHdoaWxlICh0dGwtLSA+IDApIHsNCj4gPiArICAg ICAgICAgICAgICAgaWYgKFBDSV9FWFRfQ0FQX0lEKGhlYWRlcikgPT0gY2FwKQ0KPiA+ICsgICAg ICAgICAgICAgICAgICAgICAgIHJldHVybiBwb3M7DQo+ID4gKw0KPiA+ICsgICAgICAgICAgICAg ICBwb3MgPSBQQ0lfRVhUX0NBUF9ORVhUKGhlYWRlcik7DQo+ID4gKw0KPiA+ICsgICAgICAgICAg ICAgICBpZiAocG9zIDwgUENJX0NGR19TUEFDRV9TSVpFKQ0KPiA+ICsgICAgICAgICAgICAgICAg ICAgICAgIGJyZWFrOw0KPiA+ICsNCj4gPiArICAgICAgICAgICAgICAgaWYgKHJ0ZV9wY2lfcmVh ZF9jb25maWcoZGV2LCAmaGVhZGVyLCA0LCBwb3MpIDwgMCkNCj4gPiArICAgICAgICAgICAgICAg ICAgICAgICByZXR1cm4gLTE7DQo+ID4gKyAgICAgICB9DQo+ID4gKw0KPiA+ICsgICAgICAgcmV0 dXJuIDA7DQo+ID4gK30NCj4gPg0KPiANCj4gPg0KPiA+ICsjZGVmaW5lIFBDSUNGR19WRU5ET1Jf SURfT0ZGU0VUIDB4MDANCj4gPiArI2RlZmluZSBQQ0lDRkdfREVWSUNFX0lEX09GRlNFVCAweDAy DQo+ID4gKyNkZWZpbmUgUENJX0NGR19TUEFDRV9TSVpFIDI1Ng0KPiA+ICsjZGVmaW5lIFBDSV9F WFBfREVWQ1RMIDB4MDAwOA0KPiA+ICsjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEKGhlYWRlcikgKGlu dCkoKGhlYWRlcikgJiAweDAwMDBmZmZmKSAjZGVmaW5lDQo+ID4gK1BDSV9FWFRfQ0FQX05FWFQo aGVhZGVyKSAoKChoZWFkZXIpID4+IDIwKSAmIDB4ZmZjKSAjZGVmaW5lDQo+ID4gK1BDSV9DRkdf U1BBQ0VfRVhQX1NJWkUgNDA5Ng0KPiA+ICsNCj4gPiArI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTCAw eDA4IC8qIFNSLUlPViBDb250cm9sICovICNkZWZpbmUNCj4gPiArUENJX1NSSU9WX1RPVEFMX1ZG IDB4MGUgLyogVG90YWwgVkZzICovICNkZWZpbmUgUENJX1NSSU9WX0lOSVRJQUxfVkYNCj4gPiAr MHgwYyAvKiBJbml0aWFsIFZGcyAqLyAjZGVmaW5lIFBDSV9TUklPVl9OVU1fVkYgMHgxMCAvKiBO dW1iZXIgb2YgVkZzDQo+ID4gKyovICNkZWZpbmUgUENJX1NSSU9WX1ZGX09GRlNFVCAweDE0IC8q IEZpcnN0IFZGIE9mZnNldCAqLyAjZGVmaW5lDQo+ID4gK1BDSV9TUklPVl9WRl9TVFJJREUgMHgx NiAvKiBGb2xsb3dpbmcgVkYgU3RyaWRlICovICNkZWZpbmUNCj4gPiArUENJX1NSSU9WX1ZGX0RJ RCAweDFhICNkZWZpbmUgUENJX1NSSU9WX1NVUF9QR1NJWkUgMHgxYyAjZGVmaW5lDQo+ID4gK1BD SV9TUklPVl9DQVAgMHgwNCAjZGVmaW5lIFBDSV9TUklPVl9GVU5DX0xJTksgMHgxMiAjZGVmaW5l DQo+ID4gK1BDSV9FWFRfQ0FQX0lEX1NSSU9WIDB4MTANCj4gDQo+IERvbnQgREVGSU5FIFBDSV8g c3ltYm9scyBpbiBkcml2ZXJzLCBJdCBtYXkgY29uZmxpY3Qgd2l0aCBvdGhlciBQQ0kNCj4gZGVm aW5pdGlvbnMgaW4gdGhlIGZ1dHVyZS4NCj4gUGxlYXNlIG1vdmUgR0VORVJJQyBQQ0lfIHN5bWJv bHMgdG8gdGhlIGdlbmVyaWMgUENJIGxheWVyLg0KPiANCj4gDQo+IA0KDQpIaSBKZXJpbi9HYWV0 YW4sDQoNCldoaWNoIGdlbmVyaWMgUENJIGNvZGUvZmlsZXMgdGhlc2UgZGVmaW5lcy9BUEkgc2hv dWxkIGJlIGFkZGVkIHRvID8gKGxpYi9saWJydGVfcGNpL3J0ZV9wY2kuW2N8aF0pID8NCkp1c3Qg RllJLCBub3RlIHRoYXQgaXQgY2FuJ3QgYmUgZG9uZSB3aXRob3V0IGNsZWFuaW5nIHVwIG90aGVy IHZlbmRvcnMsIGFzIEkgY2FuIHNlZSB0aGF0IHZhcmlvdXMgb3RoZXIgdmVuZG9ycyBoYXZlIGFs c28NCmRlZmluZWQgdGhpcyBmdW5jdGlvbiB0byBmaW5kIHBjaSBleHRlbmRlZCBjYXAgYW5kIHNv bWUgb2YgdGhlc2UgUENJXyogbWFjcm8gZGVmaW5lcyBhcyB3ZWxsIGluIHRoZWlyIHJlc3BlY3Rp dmUgZHJpdmVycy4NCg0KVGhhbmtzLA0KTWFuaXNoDQo=