From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30045.outbound.protection.outlook.com [40.107.3.45]) by dpdk.org (Postfix) with ESMTP id 95BFB23D for ; Mon, 8 Oct 2018 10:25:31 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=r22VORviymUUS783U5pfIoaQsdLHdBODV+sKWp2fpMc=; b=CZOmNiI5fVa3xMVJO8HYQ8aiwKBd5SwHlpdlZR/eG8bCPSyDmKYd1M03ZqWbwYAjUH3HkWtef2lEb0ZFV3LtDaZgBunqMsFy5b0zkdiHqzrQNakgcPx+ymN5bBsrkxzZymUyjhYnoUtSpzPxw5Eberw4ZnYPRrMzZVqCBP1+7fo= Received: from HE1PR0801MB2076.eurprd08.prod.outlook.com (10.168.95.140) by HE1PR0801MB1771.eurprd08.prod.outlook.com (10.168.150.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1207.26; Mon, 8 Oct 2018 08:25:29 +0000 Received: from HE1PR0801MB2076.eurprd08.prod.outlook.com ([fe80::c84:eee7:43bf:9f20]) by HE1PR0801MB2076.eurprd08.prod.outlook.com ([fe80::c84:eee7:43bf:9f20%11]) with mapi id 15.20.1207.024; Mon, 8 Oct 2018 08:25:28 +0000 From: Ola Liljedahl To: Jerin Jacob CC: Jan Viktorin , "Gavin Hu (Arm Technology China)" , "dev@dpdk.org" , "thomas@monjalon.net" Thread-Topic: [dpdk-dev] [PATCH] eal/armv7: add support for rte pause Thread-Index: AQHUXgd0GlWt2KfT30iykkMJUtbnJqUUaYQAgAB6ZoCAAEJ9gA== Date: Mon, 8 Oct 2018 08:25:28 +0000 Message-ID: References: <20181007063127.27960-1-jerin.jacob@caviumnetworks.com> <20181008062728.GA12197@jerin> In-Reply-To: <20181008062728.GA12197@jerin> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/10.11.0.180909 authentication-results: spf=none (sender IP is ) smtp.mailfrom=Ola.Liljedahl@arm.com; x-originating-ip: [217.140.96.140] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; HE1PR0801MB1771; 6:GKLFkZR3bu5KQAxVNKiZy1NdND4VvCra6D74534FDQcVvOWCWpXZ7I5FTasRf3jfHAhwdwB03UfSC+f6dek88CKe4qBexMlV2kTZizKKgbjGSpYEDJhjdwx6mKxBXH0T+IhdXd3QdEGR2fJW6vSZLHQe29G9116jIFdiwqTFpMWwUPGVTaJwsxVAdjYFOmPC1RcSIqJ9sCukX2T/rl6nqYeTMjGUtQlDjb5VnhFSePyrdJha4oX1tn250A2nu/IMGV2QoFLfV6frUCzxNHM0HnVrqlE28xHwejPOIXBrO9dVq/uZQgdeO8Z2583ngzZ+urayuLDSmoU/EMnWsoOEiR+hAyW/aBUmj4HkCyYVFZjRyWNFkwCELBx9+aYubxXIv7sfS48ltIaafCv6HZMWal3nupzvbLY3kxZEtlC6qglPRJ1u3OcR/uvAzBFDjwAaNiktPXJMaQRoIudE3t6QXg==; 5:zusl75tQTSnk1kg0eXqpdkeqwZOwXIgKt0yS7VjcVHODqOQxC5v1OCoiengmaulj7Bel7tIhu+giOrPCz6RhEcZKbjHPqsmbznRNL49XNiNdDJRaDqRUENV5LeZbWOS0gg6YHjCLA71BrM1ufJxKLrNx2lU1DY0FQB2Z14SBGnc=; 7:BG3K7BX/vh45v8FVymAoa+t2WWPdgZsGUiQZuMPWs4DFlL0HI8VWk34Sh2atesYT8zjfkOQko5x3X1LHXcAwPbTklnj+2DBlGxkbWALGwGyp2ccPmOlmG87WBmqZiYFJiKvGO5AjSQBtAc0CpBUOtNtRUcuBGxrdEHQ4C3OcfV+ZQb8pj3Nh8348NNRqzc3YOc49JAB+7RneyB6YzsCwkz0aui4qcA+Y8+7OPhgOyyKZiqXVCQYmjwvm6rfyGmDC x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-ms-office365-filtering-correlation-id: 65f52532-a98d-48fa-ded5-08d62cf79afc x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:HE1PR0801MB1771; x-ms-traffictypediagnostic: HE1PR0801MB1771: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(183786458502308)(22074186197030)(180628864354917); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231355)(944501410)(4982022)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(149066)(150057)(6041310)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123562045)(201708071742011)(7699051); SRVR:HE1PR0801MB1771; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1771; x-forefront-prvs: 081904387B x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(376002)(136003)(39860400002)(366004)(396003)(199004)(189003)(40434004)(13464003)(99286004)(66066001)(6246003)(14454004)(72206003)(305945005)(6916009)(97736004)(316002)(54906003)(5250100002)(966005)(6306002)(58126008)(33656002)(2906002)(53936002)(2900100001)(6512007)(7736002)(25786009)(106356001)(105586002)(45080400002)(6116002)(2616005)(3846002)(68736007)(486006)(5660300001)(8936002)(6486002)(478600001)(4326008)(26005)(19627235002)(14444005)(5024004)(82746002)(81166006)(8676002)(81156014)(256004)(86362001)(6506007)(6436002)(53546011)(575784001)(102836004)(186003)(83716004)(71190400001)(71200400001)(76176011)(446003)(476003)(11346002)(229853002)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1771; H:HE1PR0801MB2076.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: ILUb41XrxtEVqBXoqkK/A2N7VSGQc4QR4DJn4dTyAabVEc/MVScOh6uLB/AWOu3XGiaC+9nZdUwfVE/9JeQ/CE5JDGKZ0PW4DRYgoBhIR+1cqCZ4gXDqqdpOx7OuHYDdoF9TBlkLV8Qr/zA1X3Krkx1j3qnx4CNB/k3joEosC/t8nss59/Ld7aOaQ10nQzc0utc2RBFbcC9JIC1/hxYJGq8obEn0GMdT3yqS4ShNW07RRf/LVCfLfioMBCCbcqnWb5Hj2daMje8/vd6vY1Bmd3r6BUBEoT+EKiLf1pdmWhwcFXNe325LiNplnCh7pcNAFLz8TqxuxDxqg7IYMsdeZ0APxOtkmGz2euk87ZIM5X0= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: <9445C69D46DA6A47885716B10DAF1B8B@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: 65f52532-a98d-48fa-ded5-08d62cf79afc X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Oct 2018 08:25:28.6219 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1771 Subject: Re: [dpdk-dev] [PATCH] eal/armv7: add support for rte pause 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: , X-List-Received-Date: Mon, 08 Oct 2018 08:25:31 -0000 DQoNCu+7v09uIDA4LzEwLzIwMTgsIDA4OjI3LCAiSmVyaW4gSmFjb2IiIDxqZXJpbi5qYWNvYkBj YXZpdW1uZXR3b3Jrcy5jb20+IHdyb3RlOg0KDQogICAgLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCiAgICA+IERhdGU6IFN1biwgNyBPY3QgMjAxOCAyMTowOToyNSArMDAwMA0KICAgID4gRnJv bTogT2xhIExpbGplZGFobCA8T2xhLkxpbGplZGFobEBhcm0uY29tPg0KICAgID4gVG86IEplcmlu IEphY29iIDxqZXJpbi5qYWNvYkBjYXZpdW1uZXR3b3Jrcy5jb20+LCBKYW4gVmlrdG9yaW4NCiAg ICA+ICA8dmlrdG9yaW5AcmVoaXZldGVjaC5jb20+LCAiR2F2aW4gSHUgKEFybSBUZWNobm9sb2d5 IENoaW5hKSINCiAgICA+ICA8R2F2aW4uSHVAYXJtLmNvbT4NCiAgICA+IENDOiAiZGV2QGRwZGsu b3JnIiA8ZGV2QGRwZGsub3JnPiwgInRob21hc0Btb25qYWxvbi5uZXQiDQogICAgPiAgPHRob21h c0Btb25qYWxvbi5uZXQ+DQogICAgPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0hdIGVh bC9hcm12NzogYWRkIHN1cHBvcnQgZm9yIHJ0ZSBwYXVzZQ0KICAgID4gdXNlci1hZ2VudDogTWlj cm9zb2Z0LU1hY091dGxvb2svMTAuMTEuMC4xODA5MDkNCiAgICA+DQogICAgPiBFeHRlcm5hbCBF bWFpbA0KICAgID4NCiAgICA+IE9uIDA3LzEwLzIwMTgsIDA4OjMyLCAiSmVyaW4gSmFjb2IiIDxq ZXJpbi5qYWNvYkBjYXZpdW1uZXR3b3Jrcy5jb20+IHdyb3RlOg0KICAgID4NCiAgICA+ICAgICBB ZGQgc3VwcG9ydCBmb3IgcnRlX3BhdXNlKCkgaW1wbGVtZW50YXRpb24gZm9yIGFybXY3Lg0KICAg ID4NCiAgICA+ICAgICBTaWduZWQtb2ZmLWJ5OiBKZXJpbiBKYWNvYiA8amVyaW4uamFjb2JAY2F2 aXVtbmV0d29ya3MuY29tPg0KICAgID4gICAgIC0tLQ0KICAgID4NCiAgICA+ICAgICBUaGUgcmVm ZXJlbmNlIGltcGxlbWVudGF0aW9uIGZvciBMaW51eCdzIGNwdV9yZWxheCgpIGZvciBhcm12NyBp cyBhdA0KICAgID4gICAgIGh0dHBzOi8vZWxpeGlyLmJvb3RsaW4uY29tL2xpbnV4L2xhdGVzdC9z b3VyY2UvYXJjaC9hcm0vaW5jbHVkZS9hc20vcHJvY2Vzc29yLmgjTDEwMA0KICAgID4NCiAgICA+ ICAgICAtLS0NCiAgICA+ICAgICAgbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2luY2x1ZGUvYXJjaC9h cm0vcnRlX3BhdXNlXzMyLmggfCA0ICsrKy0NCiAgICA+ICAgICAgMSBmaWxlIGNoYW5nZWQsIDMg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KICAgID4NCiAgICA+ICAgICBkaWZmIC0tZ2l0 IGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2luY2x1ZGUvYXJjaC9hcm0vcnRlX3BhdXNlXzMyLmgg Yi9saWIvbGlicnRlX2VhbC9jb21tb24vaW5jbHVkZS9hcmNoL2FybS9ydGVfcGF1c2VfMzIuaA0K ICAgID4gICAgIGluZGV4IGQ0NzY4YzdhOS4uOWI4NTZlMGNmIDEwMDY0NA0KICAgID4gICAgIC0t LSBhL2xpYi9saWJydGVfZWFsL2NvbW1vbi9pbmNsdWRlL2FyY2gvYXJtL3J0ZV9wYXVzZV8zMi5o DQogICAgPiAgICAgKysrIGIvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2luY2x1ZGUvYXJjaC9hcm0v cnRlX3BhdXNlXzMyLmgNCiAgICA+ICAgICBAQCAtOSwxMSArOSwxMyBAQA0KICAgID4gICAgICBl eHRlcm4gIkMiIHsNCiAgICA+ICAgICAgI2VuZGlmDQogICAgPg0KICAgID4gICAgIC0jaW5jbHVk ZSA8cnRlX2NvbW1vbi5oPg0KICAgID4gICAgICsjaW5jbHVkZSA8cnRlX2F0b21pYy5oPg0KICAg ID4gICAgICsNCiAgICA+ICAgICAgI2luY2x1ZGUgImdlbmVyaWMvcnRlX3BhdXNlLmgiDQogICAg Pg0KICAgID4gICAgICBzdGF0aWMgaW5saW5lIHZvaWQgcnRlX3BhdXNlKHZvaWQpDQogICAgPiAg ICAgIHsNCiAgICA+ICAgICArcnRlX2NvbXBpbGVyX2JhcnJpZXIoKTsNCiAgICA+IFRoZSBjb21w aWxlciBiYXJyaWVyIGlzIG5vdCBtYW5kYXRlZCBieSB0aGUgRFBESyBkb2N1bWVudGF0aW9uIGZv ciBydGVfcGF1c2UoKToNCiAgICA+IGh0dHA6Ly9kb2MuZHBkay5vcmcvYXBpL3J0ZV9fcGF1c2Vf OGguaHRtbA0KDQogICAgV2UgY2FuIGFkZCB0aGF0IGV4cGxpY2l0bHkgaWYgcmVxdWlyZWQgdG8g aW5saW5lIHdpdGggb3RoZXIgYXJjaC4gSnVzdCBsaWtlDQogICAgTGludXgga2VybmVsJ3MgY3B1 X3JlbGF4KCkNCkkgdGhpbmsgdGhlIGRvY3VtZW50YXRpb24gc2hvdWxkIHNwZWNpZnkgdGhpcyBj b21waWxlciBiYXJyaWVyIGlmIGl0IGlzIG5lZWRlZCBmb3IgY29ycmVjdCBiZWhhdmlvdXIuDQoN Cg0KICAgID4NCiAgICA+IFlvdSBoYXZlIHRvIGdvIGFsbCB0aGUgd2F5IHRvIHRoZSBzb3VyY2Ug YW5kIEdDQyBkb2N1bWVudGF0aW9uIHRvIGRpc2NvdmVyIHRoYXQgZm9yIEdDQywgcnRlX3BhdXNl IGNhbGxzIF9tbV9wYXVzZSgpIHdoaWNoIGluIHR1cm4gaXMgaW1wbGVtZW50ZWQgdXNpbmcgX19i dWlsdGluX2lhMzJfcGF1c2UoKS4NCiAgICA+IGh0dHBzOi8vZ2NjLmdudS5vcmcvb25saW5lZG9j cy9nY2MtNC45LjIvZ2NjL1g4Ni1CdWlsdC1pbi1GdW5jdGlvbnMuaHRtbA0KICAgID4gdm9pZCBf X2J1aWx0aW5faWEzMl9wYXVzZSAodm9pZCkNCiAgICA+IEdlbmVyYXRlcyB0aGUgcGF1c2UgbWFj aGluZSBpbnN0cnVjdGlvbiB3aXRoIGEgY29tcGlsZXIgbWVtb3J5IGJhcnJpZXIuDQoNCiAgICBZ ZXMuIElNTywgaXQgbWFrZXMgc2Vuc2UgdG8gaGF2ZSBjb21waWxlciBtZW1vcnkgYmFycmllciB0 byBtYWtlIHN1cmUgaXQNCiAgICB3YWl0cyBzZW1hbnRpY2FsbHkgYXQgbGVhc3QgV1JUIGN1cnJl bnQgcnRlX3BhdXNlKCkgdXNhZ2UuDQpDdXJyZW50ICpub24tQzExKiB1c2FnZS4gQnV0IG1vcmUg YW5kIG1vcmUgY29kZSBpbiBEUERLIHVzZXMgdGhlIEMxMSBtZW1vcnkgbW9kZWwuDQoNCg0KICAg ID4NCiAgICA+IElmIHlvdSBhcmUgdXNpbmcgQzExIGF0b21pYyBvcGVyYXRpb25zIGUuZy4gZm9y IHBvbGxpbmcgYSBsb2NhdGlvbiwgdGhlIGF0b21pYyBvcGVyYXRpb25zIHdpbGwgYmUgYWJsZSB0 byBwcm92aWRlIHRoZSByZXF1aXJlZCBzZW1hbnRpY3MgKGUuZy4gZG9uJ3QgbWVyZ2UgYXRvbWlj IGxvYWRzIGZyb20gZGlmZmVyZW50IGl0ZXJhdGlvbnMgb2YgYSBsb29wLCBvcHRpb25hbGx5IHBy b3ZpZGUgYWNxdWlyZSBhbmQvb3IgcmVsZWFzZSAob3Igc3Ryb25nZXIpIG9yZGVyaW5nLiBBIGNv bXBpbGVyIGJhcnJpZXIgaGVyZSBpbnRlcmZlcmVzIHdpdGggdGhlIChwb3NzaWJseSB3ZWFrZXIp IGJhcnJpZXJzIGZyb20gdGhlIGF0b21pYyBvcGVyYXRpb25zLiBXZSBjb3VsZCB1c2UgYSBDMTEt dmVyc2lvbiBvZiBydGVfcGF1c2UoKSB0aGF0IGRvZXNuJ3QgaGF2ZSB0aGUgY29tcGlsZXIgYmFy cmllci4gQnV0IGFjdHVhbGx5LCB3ZSB3YW50IHN1cHBvcnQgZm9yIFdGRSwgeDg2IGFsc28gaGFz IHNvbWV0aGluZyBzaW1pbGFyIG5vdywgTU9OSVRPUi9NV0FJVA0KDQogICAgSWYgaXQgaXMgV0ZF IHRoZW4gd2hvIHdpbGwgd2FrZSB1cCBmcm9tIHRoZSBwb3dlciBzYXZpbmcgc3RhdGUuIFNFViBm cm9tIHRoZQ0KICAgIG90aGVyIHRocmVhZD8NClNFVi9XRkUgaXMgdGhlIEFSTXY3IHdheSBvZiB3 YWl0aW5nIGZvciBldmVudCBidXQgdGhlIHdha2luZyB1cCBpcyB2ZXJ5IGNydWRlIChTRVYgYnJv YWRjYXN0cyBhbiBldmVudCB0byAqYWxsKiBjb3JlcykuIEFSTXY4IGludHJvZHVjZXMgYSBuZXcg d2F5IHdoZXJlIHRoZSB3YWl0aW5nIHRocmVhZCB1c2VzIFNFVkwvV0ZFL0xEWFIvV0ZFIHRvIHdh aXQgZm9yIGEgc3BlY2lmaWMgbG9jYXRpb24gKGluIHByYWN0aWNlIGNhY2hlIGxpbmUpIHRvIGJl IHVwZGF0ZWQgYW5kIHdoaWNoZXZlciB0aHJlYWQgd3JpdGVzIHRoZSBsb2NhdGlvbiB3aWxsIGF1 dG9tYXRpY2FsbHkgbm90aWZ5IGFueSB3YWl0ZXJzIChubyBTRVYgbmVlZGVkKS4gU2VlIGNvZGUg ZXhhbXBsZSBpbiBvdGhlciBlbWFpbCB0aHJlYWQuDQoNCg0KICAgIFdoYXQgd291bGQgYmUgYSBD MTEgdmVyc2lvbiBvZiBydGVfcGF1c2UoKT8NCkEgZnVuY3Rpb24gdGhhdCBzdGFsbHMgdGhlIENQ VSBmb3Igc29tZSB0ZW4ocykgb2YgY3ljbGVzLiBObyBpbXBsaWNpdCBvciBleHBsaWNpdCAoY29t cGlsZXIpIGJhcnJpZXJzLiBFLmcuIElTQiBvbiBBUk0gd2hpY2ggLSB1bmxpbmsgTk9QIC0gYWN0 dWFsbHkgc3RhbGxzIHRoZSBwaXBlbGluZSBmb3IgMTAtMjAgY3ljbGVzIChidXQgSVNCIHdpbGwg YWxzbyBoYXZlIEhXIGJhcnJpZXIgc2VtYW50aWNzKS4gQnV0IGFzIEkgd3JvdGUgYWJvdmUsIHVz aW5nIFdGRSB3b3VsZCBiZSBiZXR0ZXIgKGF0IGxlYXN0IGhhcyBiZWVuIGJldHRlciBpbiB0aGUg aW50ZXJuYWwgYmVuY2htYXJrcyBJIGhhdmUgZG9uZS9zZWVuKS4gTXVjaCBiZXR0ZXIgdG8gZm9j dXMgb3VyIGVmZm9ydHMgb24gaG93IHRvIG1ha2UgdXNlIG9mIFdGRSBmb3IgQzExIGNvZGUuDQoN Cg0KICAgID4NCiAgICA+IC0tIE9sYQ0KICAgID4NCiAgICA+DQogICAgPiAgICAgIH0NCiAgICA+ DQogICAgPiAgICAgICNpZmRlZiBfX2NwbHVzcGx1cw0KICAgID4gICAgIC0tDQogICAgPiAgICAg Mi4xOS4wDQogICAgPg0KICAgID4NCiAgICA+DQogICAgPiBJTVBPUlRBTlQgTk9USUNFOiBUaGUg Y29udGVudHMgb2YgdGhpcyBlbWFpbCBhbmQgYW55IGF0dGFjaG1lbnRzIGFyZSBjb25maWRlbnRp YWwgYW5kIG1heSBhbHNvIGJlIHByaXZpbGVnZWQuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRl ZCByZWNpcGllbnQsIHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBpbW1lZGlhdGVseSBhbmQgZG8g bm90IGRpc2Nsb3NlIHRoZSBjb250ZW50cyB0byBhbnkgb3RoZXIgcGVyc29uLCB1c2UgaXQgZm9y IGFueSBwdXJwb3NlLCBvciBzdG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVk aXVtLiBUaGFuayB5b3UuDQoNCg0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRo aXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxz byBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBw bGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0 aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwg b3Igc3RvcmUgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhhbmsgeW91 Lg0K