From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50053.outbound.protection.outlook.com [40.107.5.53]) by dpdk.org (Postfix) with ESMTP id 7E9AB1B5BF; Wed, 10 Oct 2018 21:26:57 +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=cFFenkohFh1PWRPOb7xwAUk1n+tX6fesqmvxUUk3Ga0=; b=MAT3p1BH9dCPpx0Bwn1OIFpvTfLv3nwg3Spbk88fIO+DnnK161/v6wGcHgfU0egKuuZDVUJmR6lDfPKGOMyYjb19X5QMsrnSRwf5mrgNauk2KOhWgNOq/GDzDLO55Wn6MlIo4CaGWLi1KKkZ83FsjrodYi1JOkcDcFBJQDTWxzs= Received: from AM6PR08MB3672.eurprd08.prod.outlook.com (20.177.115.29) by AM6PR08MB3240.eurprd08.prod.outlook.com (52.135.164.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1207.28; Wed, 10 Oct 2018 19:26:55 +0000 Received: from AM6PR08MB3672.eurprd08.prod.outlook.com ([fe80::f423:e46a:a03c:e928]) by AM6PR08MB3672.eurprd08.prod.outlook.com ([fe80::f423:e46a:a03c:e928%2]) with mapi id 15.20.1185.027; Wed, 10 Oct 2018 19:26:55 +0000 From: Honnappa Nagarahalli To: "Gavin Hu (Arm Technology China)" , Jerin Jacob CC: Ola Liljedahl , "dev@dpdk.org" , "Ananyev, Konstantin" , Steve Capper , nd , "stable@dpdk.org" Thread-Topic: [PATCH v3 1/3] ring: read tail using atomic load Thread-Index: AQHUXIR8HYDms5kGFkyaw4kWx/U6y6UQgHYAgAAF34CAACPDgIAAFyZAgAAhgYCAABBDgIAAHR2ggAAHygCAAADd8IAAA8GAgAC6c4CAAMoBgIAAizEAgAEX/gCAAJzqgIAANqSAgAAKnoCAAAcsgIAAAjqAgAAEe4CAAtuyAIAA2PzA Date: Wed, 10 Oct 2018 19:26:55 +0000 Message-ID: References: <60055965-A7C8-4E9F-8668-0AE1DCE57515@arm.com> <20181006074126.GA16715@jerin> <20181007040243.GA1850@jerin> <7A156041-23EC-4CCB-B129-3607AF34A992@arm.com> <20181008060629.GA5228@jerin> <063A95EC-CFC1-42F7-B864-DFB9C6718AC8@arm.com> <20181008100004.GB11081@jerin> <20181008104944.GD11081@jerin> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Honnappa.Nagarahalli@arm.com; x-originating-ip: [217.140.111.135] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM6PR08MB3240; 6:aQMOFNUvwamvBGYMsLSreH17wZBQ6F7QIgjTdEijv8n93ZElNgJMMTsqcBnBLcnQYQT9JWfZdx7V4HrUCWNinPibjd7JzWV8zMQRsP4MTjEWkT4rq6Pj0sRBpSMC8J9/s69Vn62z0fsMi1hcReX5sS2H3qFGle2mEXw6ijeWQMQYOjvTLcvo+UuAdNIDmMHtrc6osevvg+0AP/Mnyrb55PWq1jFCIWsQAeWoRjTuTji38mSme790YNDITux/EyRMZzp8OQpltQy1K79ye1nuwqMnTNTWkou2DqeJIPQn6n59svACZbHaegxNFOZuUq2jzSGcqGG+IZOYEDbaRfbGrtJ6p3ZVBwki2Urlpe2aM+1TB4Lx8tqu1XkI0mPWGWtFEELR15zgm+TPYKD4b07Wm4A/qlGQ2+sXDQKxOwtlB2nd9jOTwObDcgJmdtnc9PCzlIgk7iSDOdUY0MlhlobF7w==; 5:h6SKOdNEEchqVqSbVXjjyxhz/oo6+0ma4/+LewcrcnDLKTq7jEhq8OXRtL7xgi3+GUK1Oh/ii8wU5OupXjQ9nKvejJstC5GmGY1jilPdHPqTI3rwsEruaf/60afSczngkZ/SuR2BTuOK7h5b2I5kG3UT2+Uf7FXU0V/wcqGsaJ4=; 7:hb2yYFV8197cjuqdirkUPMD4XSgh6JHPMcUgITbwv8Vu/8ACVCZSgHyaG60NxuAbqcUrCIqfsCJPSolSqaaVFiWXM3EJKeeb8/sRNB3Bq+tL49zINdY9B/QgeHf/iJrVWtnY88S39/TgDm7qMsGy2TlhM1CUGRLgfnTee+VCl7zgcvIRJlOXzl5vO+nPokUqYbpoSIrYXMdp1CMOGR93mUyWgRsXIj7e2riVKAd9angsvmdxUwbeT6tMqObLeFfc x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-ms-office365-filtering-correlation-id: dd73251b-d07a-4f7b-c892-08d62ee65727 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:AM6PR08MB3240; x-ms-traffictypediagnostic: AM6PR08MB3240: nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917)(228905959029699); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231355)(944501410)(52105095)(93006095)(93001095)(10201501046)(6055026)(149066)(150057)(6041310)(20161123564045)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(201708071742011)(7699051)(76991055); SRVR:AM6PR08MB3240; BCL:0; PCL:0; RULEID:; SRVR:AM6PR08MB3240; x-forefront-prvs: 08213D42D3 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(366004)(346002)(376002)(136003)(39860400002)(51234002)(13464003)(199004)(189003)(316002)(2900100001)(71200400001)(76176011)(53936002)(81156014)(71190400001)(8676002)(81166006)(86362001)(53546011)(97736004)(6436002)(6306002)(93886005)(105586002)(9686003)(106356001)(7696005)(8936002)(55016002)(6506007)(72206003)(25786009)(446003)(476003)(11346002)(486006)(5660300001)(4326008)(68736007)(14454004)(256004)(966005)(66066001)(5250100002)(99286004)(6116002)(33656002)(478600001)(7736002)(305945005)(6246003)(186003)(110136005)(2906002)(54906003)(26005)(74316002)(102836004)(3846002)(229853002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR08MB3240; H:AM6PR08MB3672.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: Dxgk34A6jpKfmKLdJcWhKjEFdoor6QZYmWuNrEXrA23EMyXDV2SBUHe1WRUOrpJ7OvPR0rUaFefnBzY6g0e5GiLTK2mGsTLXuAvVSDMjvLc0GGcn/vHCKO3V0Hi95iQk79IzKB6GX8sWsu9K7nC07Zl9lTsKN0dkcMHw3LIeHX6k062K3xJj5AS3WPX+Er45/tsZYc8o9L1RuA5xFIA1IQ4lyj9nPlZEKlJTY9Si603P+PyFNUCkfuvTDAJvueQWXbEFW+5QxgBgB2jUbjE9cpv9KFycZvAmtVRL3McNT5//rrBxtkOjxHPM0OdFIsrjWFoAAeiBJOV6E3zA/v77IKRQxn59UV2Kuhav7BKOuBk= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: dd73251b-d07a-4f7b-c892-08d62ee65727 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Oct 2018 19:26:55.8147 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3240 Subject: Re: [dpdk-dev] [PATCH v3 1/3] ring: read tail using atomic load 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: Wed, 10 Oct 2018 19:26:57 -0000 PiANCj4gSGkgSmVyaW4sDQo+IA0KPiBGb2xsb3dpbmcgdGhlIGd1aWRlIHRvIHVzZSB0aGUgUE1V IGNvdW50ZXJzKEtPIGluc2VydGVkIGFuZCBEUERLDQo+IHJlY29tcGlsZWQpLCB0aGUgbnVtYmVy cyBpbmNyZWFzZWQgMTArIGZvbGRzKGJpZ2dlciBudW1iZXJzIGhlcmUgbWVhbg0KPiBtb3JlIHBy ZWNpc2U/KSwgaXMgdGhpcyB2YWxpZCBhbmQgZXhwZWN0ZWQ/DQpUaGlzIGlzIGNvcnJlY3QsIGJp ZyBudW1iZXJzIG1lYW4sIG1vcmUgcHJlY2lzZS9ncmFudWxhciByZXN1bHRzLg0KDQo+IE5vIHNp Z25pZmljYW50IGRpZmZlcmVuY2Ugd2FzIHNlZW4uDQpUaGlzIGlzIHdoYXQgd2UgYXJlIGludGVy ZXN0ZWQgaW4uIERvIHlvdSBoYXZlIGFueSBiZWZvcmUgYW5kIGFmdGVyIHRoaXMgY2hhbmdlIG51 bWJlcnM/DQoNCj4gDQo+IGdhdmluQG5ldC1hcm0tdGh1bmRlcngyOn4vY29tbXVuaXR5L2RwZGsk IHN1ZG8gLi90ZXN0L3Rlc3QvdGVzdCAtbCAxNi0NCj4gMTksNDQtNDcsNzItNzUsMTAwLTEwMyAt biA0IC0tc29ja2V0LW1lbT0xMDI0ICAtLSAtaQ0KPiBSVEU+PnJpbmdfcGVyZl9hdXRvdGVzdCAo IzEgcnVuIHcvbyB0aGUgcGF0Y2gpDQo+ICMjIyBUZXN0aW5nIHNpbmdsZSBlbGVtZW50IGFuZCBi dXJzdCBlbnEvZGVxICMjIyBTUC9TQyBzaW5nbGUNCj4gZW5xL2RlcXVldWU6IDEwMyBNUC9NQyBz aW5nbGUgZW5xL2RlcXVldWU6IDEzMCBTUC9TQyBidXJzdA0KPiBlbnEvZGVxdWV1ZSAoc2l6ZTog OCk6IDE4IE1QL01DIGJ1cnN0IGVucS9kZXF1ZXVlIChzaXplOiA4KTogMjEgU1AvU0MNCj4gYnVy c3QgZW5xL2RlcXVldWUgKHNpemU6IDMyKTogNyBNUC9NQyBidXJzdCBlbnEvZGVxdWV1ZSAoc2l6 ZTogMzIpOiA4DQo+IA0KPiAjIyMgVGVzdGluZyBlbXB0eSBkZXF1ZXVlICMjIw0KPiBTQyBlbXB0 eSBkZXF1ZXVlOiAzLjAwDQo+IE1DIGVtcHR5IGRlcXVldWU6IDMuMDANCj4gDQo+ICMjIyBUZXN0 aW5nIHVzaW5nIGEgc2luZ2xlIGxjb3JlICMjIw0KPiBTUC9TQyBidWxrIGVucS9kZXF1ZXVlIChz aXplOiA4KTogMTcuNDgNCj4gTVAvTUMgYnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6IDIxLjc3 DQo+IFNQL1NDIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDMyKTogNy4zOQ0KPiBNUC9NQyBidWxr IGVucS9kZXF1ZXVlIChzaXplOiAzMik6IDguNTINCj4gDQo+ICMjIyBUZXN0aW5nIHVzaW5nIHR3 byBoeXBlcnRocmVhZHMgIyMjDQo+IFNQL1NDIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDgpOiAz MS4zMg0KPiBNUC9NQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiA4KTogMzguNTINCj4gU1AvU0Mg YnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogMzIpOiAxMy4zOSBNUC9NQyBidWxrIGVucS9kZXF1ZXVl IChzaXplOg0KPiAzMik6IDE0LjE1DQo+IA0KPiAjIyMgVGVzdGluZyB1c2luZyB0d28gcGh5c2lj YWwgY29yZXMgIyMjIFNQL1NDIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDgpOg0KPiA3NS4wMCBN UC9NQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiA4KTogMTQxLjk3IFNQL1NDIGJ1bGsgZW5xL2Rl cXVldWUNCj4gKHNpemU6IDMyKTogMjMuODUgTVAvTUMgYnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTog MzIpOiAzNi4xMyBUZXN0IE9LDQo+IFJURT4+cmluZ19wZXJmX2F1dG90ZXN0ICgjMiBydW4gdy9v IHRoZSBwYXRjaCkNCj4gIyMjIFRlc3Rpbmcgc2luZ2xlIGVsZW1lbnQgYW5kIGJ1cnN0IGVucS9k ZXEgIyMjIFNQL1NDIHNpbmdsZQ0KPiBlbnEvZGVxdWV1ZTogMTAzIE1QL01DIHNpbmdsZSBlbnEv ZGVxdWV1ZTogMTMwIFNQL1NDIGJ1cnN0DQo+IGVucS9kZXF1ZXVlIChzaXplOiA4KTogMTggTVAv TUMgYnVyc3QgZW5xL2RlcXVldWUgKHNpemU6IDgpOiAyMSBTUC9TQw0KPiBidXJzdCBlbnEvZGVx dWV1ZSAoc2l6ZTogMzIpOiA3IE1QL01DIGJ1cnN0IGVucS9kZXF1ZXVlIChzaXplOiAzMik6IDgN Cj4gDQo+ICMjIyBUZXN0aW5nIGVtcHR5IGRlcXVldWUgIyMjDQo+IFNDIGVtcHR5IGRlcXVldWU6 IDMuMDANCj4gTUMgZW1wdHkgZGVxdWV1ZTogMy4wMA0KPiANCj4gIyMjIFRlc3RpbmcgdXNpbmcg YSBzaW5nbGUgbGNvcmUgIyMjDQo+IFNQL1NDIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDgpOiAx Ny40OA0KPiBNUC9NQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiA4KTogMjEuNzcNCj4gU1AvU0Mg YnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogMzIpOiA3LjM4DQo+IE1QL01DIGJ1bGsgZW5xL2RlcXVl dWUgKHNpemU6IDMyKTogOC41Mg0KPiANCj4gIyMjIFRlc3RpbmcgdXNpbmcgdHdvIGh5cGVydGhy ZWFkcyAjIyMNCj4gU1AvU0MgYnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6IDMxLjMxDQo+IE1Q L01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDgpOiAzOC41Mg0KPiBTUC9TQyBidWxrIGVucS9k ZXF1ZXVlIChzaXplOiAzMik6IDEzLjMzIE1QL01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6DQo+ IDMyKTogMTQuMTYNCj4gDQo+ICMjIyBUZXN0aW5nIHVzaW5nIHR3byBwaHlzaWNhbCBjb3JlcyAj IyMgU1AvU0MgYnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6DQo+IDc1Ljc0IE1QL01DIGJ1bGsg ZW5xL2RlcXVldWUgKHNpemU6IDgpOiAxNDcuMzMgU1AvU0MgYnVsayBlbnEvZGVxdWV1ZQ0KPiAo c2l6ZTogMzIpOiAyNC43OSBNUC9NQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiAzMik6IDQwLjA5 IFRlc3QgT0sNCj4gDQo+IFJURT4+cmluZ19wZXJmX2F1dG90ZXN0ICgjMSBydW4gdy8gdGhlIHBh dGNoKQ0KPiAjIyMgVGVzdGluZyBzaW5nbGUgZWxlbWVudCBhbmQgYnVyc3QgZW5xL2RlcSAjIyMg U1AvU0Mgc2luZ2xlDQo+IGVucS9kZXF1ZXVlOiAxMDMgTVAvTUMgc2luZ2xlIGVucS9kZXF1ZXVl OiAxMjkgU1AvU0MgYnVyc3QNCj4gZW5xL2RlcXVldWUgKHNpemU6IDgpOiAxOCBNUC9NQyBidXJz dCBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6IDIyIFNQL1NDDQo+IGJ1cnN0IGVucS9kZXF1ZXVlIChz aXplOiAzMik6IDcgTVAvTUMgYnVyc3QgZW5xL2RlcXVldWUgKHNpemU6IDMyKTogOA0KPiANCj4g IyMjIFRlc3RpbmcgZW1wdHkgZGVxdWV1ZSAjIyMNCj4gU0MgZW1wdHkgZGVxdWV1ZTogMy4wMA0K PiBNQyBlbXB0eSBkZXF1ZXVlOiA0LjAwDQo+IA0KPiAjIyMgVGVzdGluZyB1c2luZyBhIHNpbmds ZSBsY29yZSAjIyMNCj4gU1AvU0MgYnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6IDE3Ljg5DQo+ IE1QL01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDgpOiAyMS43Nw0KPiBTUC9TQyBidWxrIGVu cS9kZXF1ZXVlIChzaXplOiAzMik6IDcuNTANCj4gTVAvTUMgYnVsayBlbnEvZGVxdWV1ZSAoc2l6 ZTogMzIpOiA4LjUyDQo+IA0KPiAjIyMgVGVzdGluZyB1c2luZyB0d28gaHlwZXJ0aHJlYWRzICMj Iw0KPiBTUC9TQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiA4KTogMzEuMjQNCj4gTVAvTUMgYnVs ayBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6IDM4LjE0DQo+IFNQL1NDIGJ1bGsgZW5xL2RlcXVldWUg KHNpemU6IDMyKTogMTMuMjQgTVAvTUMgYnVsayBlbnEvZGVxdWV1ZSAoc2l6ZToNCj4gMzIpOiAx NC42OQ0KPiANCj4gIyMjIFRlc3RpbmcgdXNpbmcgdHdvIHBoeXNpY2FsIGNvcmVzICMjIyBTUC9T QyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiA4KToNCj4gNzQuNjMgTVAvTUMgYnVsayBlbnEvZGVx dWV1ZSAoc2l6ZTogOCk6IDEzNy42MSBTUC9TQyBidWxrIGVucS9kZXF1ZXVlDQo+IChzaXplOiAz Mik6IDI0LjgyIE1QL01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDMyKTogMzYuNjQgVGVzdCBP Sw0KPiBSVEU+PnJpbmdfcGVyZl9hdXRvdGVzdCAoIzEgcnVuIHcvIHRoZSBwYXRjaCkNCj4gIyMj IFRlc3Rpbmcgc2luZ2xlIGVsZW1lbnQgYW5kIGJ1cnN0IGVucS9kZXEgIyMjIFNQL1NDIHNpbmds ZQ0KPiBlbnEvZGVxdWV1ZTogMTAzIE1QL01DIHNpbmdsZSBlbnEvZGVxdWV1ZTogMTI5IFNQL1ND IGJ1cnN0DQo+IGVucS9kZXF1ZXVlIChzaXplOiA4KTogMTggTVAvTUMgYnVyc3QgZW5xL2RlcXVl dWUgKHNpemU6IDgpOiAyMiBTUC9TQw0KPiBidXJzdCBlbnEvZGVxdWV1ZSAoc2l6ZTogMzIpOiA3 IE1QL01DIGJ1cnN0IGVucS9kZXF1ZXVlIChzaXplOiAzMik6IDgNCj4gDQo+ICMjIyBUZXN0aW5n IGVtcHR5IGRlcXVldWUgIyMjDQo+IFNDIGVtcHR5IGRlcXVldWU6IDMuMDANCj4gTUMgZW1wdHkg ZGVxdWV1ZTogNC4wMA0KPiANCj4gIyMjIFRlc3RpbmcgdXNpbmcgYSBzaW5nbGUgbGNvcmUgIyMj DQo+IFNQL1NDIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDgpOiAxNy44OQ0KPiBNUC9NQyBidWxr IGVucS9kZXF1ZXVlIChzaXplOiA4KTogMjEuNzcNCj4gU1AvU0MgYnVsayBlbnEvZGVxdWV1ZSAo c2l6ZTogMzIpOiA3LjUwDQo+IE1QL01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6IDMyKTogOC41 Mg0KPiANCj4gIyMjIFRlc3RpbmcgdXNpbmcgdHdvIGh5cGVydGhyZWFkcyAjIyMNCj4gU1AvU0Mg YnVsayBlbnEvZGVxdWV1ZSAoc2l6ZTogOCk6IDMxLjUzDQo+IE1QL01DIGJ1bGsgZW5xL2RlcXVl dWUgKHNpemU6IDgpOiAzOC41OQ0KPiBTUC9TQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiAzMik6 IDEzLjI0IE1QL01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6DQo+IDMyKTogMTQuNjkNCj4gDQo+ ICMjIyBUZXN0aW5nIHVzaW5nIHR3byBwaHlzaWNhbCBjb3JlcyAjIyMgU1AvU0MgYnVsayBlbnEv ZGVxdWV1ZSAoc2l6ZTogOCk6DQo+IDc1LjYwIE1QL01DIGJ1bGsgZW5xL2RlcXVldWUgKHNpemU6 IDgpOiAxNDkuMTQgU1AvU0MgYnVsayBlbnEvZGVxdWV1ZQ0KPiAoc2l6ZTogMzIpOiAyNS4xMyBN UC9NQyBidWxrIGVucS9kZXF1ZXVlIChzaXplOiAzMik6IDQwLjYwIFRlc3QgT0sNCj4gDQo+IA0K PiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogSmVyaW4gSmFjb2IgPGpl cmluLmphY29iQGNhdml1bW5ldHdvcmtzLmNvbT4NCj4gPiBTZW50OiBNb25kYXksIE9jdG9iZXIg OCwgMjAxOCA2OjUwIFBNDQo+ID4gVG86IEdhdmluIEh1IChBcm0gVGVjaG5vbG9neSBDaGluYSkg PEdhdmluLkh1QGFybS5jb20+DQo+ID4gQ2M6IE9sYSBMaWxqZWRhaGwgPE9sYS5MaWxqZWRhaGxA YXJtLmNvbT47IGRldkBkcGRrLm9yZzsgSG9ubmFwcGENCj4gPiBOYWdhcmFoYWxsaSA8SG9ubmFw cGEuTmFnYXJhaGFsbGlAYXJtLmNvbT47IEFuYW55ZXYsIEtvbnN0YW50aW4NCj4gPiA8a29uc3Rh bnRpbi5hbmFueWV2QGludGVsLmNvbT47IFN0ZXZlIENhcHBlcg0KPiA8U3RldmUuQ2FwcGVyQGFy bS5jb20+Ow0KPiA+IG5kIDxuZEBhcm0uY29tPjsgc3RhYmxlQGRwZGsub3JnDQo+ID4gU3ViamVj dDogUmU6IFtQQVRDSCB2MyAxLzNdIHJpbmc6IHJlYWQgdGFpbCB1c2luZyBhdG9taWMgbG9hZA0K PiA+DQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+IERhdGU6IE1vbiwgOCBP Y3QgMjAxOCAxMDozMzo0MyArMDAwMA0KPiA+ID4gRnJvbTogIkdhdmluIEh1IChBcm0gVGVjaG5v bG9neSBDaGluYSkiIDxHYXZpbi5IdUBhcm0uY29tPg0KPiA+ID4gVG86IE9sYSBMaWxqZWRhaGwg PE9sYS5MaWxqZWRhaGxAYXJtLmNvbT4sIEplcmluIEphY29iDQo+ID4gPiA8amVyaW4uamFjb2JA Y2F2aXVtbmV0d29ya3MuY29tPg0KPiA+ID4gQ0M6ICJkZXZAZHBkay5vcmciIDxkZXZAZHBkay5v cmc+LCBIb25uYXBwYSBOYWdhcmFoYWxsaQ0KPiA+ID4gPEhvbm5hcHBhLk5hZ2FyYWhhbGxpQGFy bS5jb20+LCAiQW5hbnlldiwgS29uc3RhbnRpbiINCj4gPiA+ICA8a29uc3RhbnRpbi5hbmFueWV2 QGludGVsLmNvbT4sIFN0ZXZlIENhcHBlcg0KPiA+IDxTdGV2ZS5DYXBwZXJAYXJtLmNvbT4sDQo+ ID4gPiBuZCAgPG5kQGFybS5jb20+LCAic3RhYmxlQGRwZGsub3JnIiA8c3RhYmxlQGRwZGsub3Jn Pg0KPiA+ID4gU3ViamVjdDogUkU6IFtQQVRDSCB2MyAxLzNdIHJpbmc6IHJlYWQgdGFpbCB1c2lu ZyBhdG9taWMgbG9hZA0KPiA+ID4NCj4gPiA+DQo+ID4gPiBJIGRpZCBiZW5jaG1hcmtpbmcgdy9v IGFuZCB3LyB0aGUgcGF0Y2gsIGl0IGRpZCBub3Qgc2hvdyBhbnkNCj4gPiA+IG5vdGljZWFibGUN Cj4gPiBkaWZmZXJlbmNlcyBpbiB0ZXJtcyBvZiBsYXRlbmN5Lg0KPiA+ID4gSGVyZSBpcyB0aGUg ZnVsbCBsb2coIDMgcnVucyB3L28gdGhlIHBhdGNoIGFuZCAyIHJ1bnMgdy8gdGhlIHBhdGNoKS4N Cj4gPiA+DQo+ID4gPiBzdWRvIC4vdGVzdC90ZXN0L3Rlc3QgLWwgMTYtMTksNDQtNDcsNzItNzUs MTAwLTEwMyAtbiA0DQo+ID4gPiAtLXNvY2tldC1tZW09MTAyNCAgLS0gLWkNCj4gPg0KPiA+IFRo ZXNlIGNvdW50ZXJzIGFyZSBydW5uaW5nIGF0IDEwME1Iei4gVXNlIFBNVSBjb3VudGVycyB0byBn ZXQgbW9yZQ0KPiA+IGFjY3VyYXRlIHJlc3VsdHMuDQo+ID4NCj4gPiBodHRwczovL2RvYy5kcGRr Lm9yZy9ndWlkZXMvcHJvZ19ndWlkZS9wcm9maWxlX2FwcC5odG1sDQo+ID4gU2VlOiA1NS4yLiBQ cm9maWxpbmcgb24gQVJNNjQNCj4gPg0K