From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 127292 invoked by alias); 21 Jan 2019 22:03:31 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 127258 invoked by uid 89); 21 Jan 2019 22:03:30 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.6 required=5.0 tests=BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LOTSOFHASH,KAM_SHORT,MIME_BASE64_BLANKS,SPF_PASS autolearn=ham version=3.3.2 spammy=located, knowledge, am X-HELO: sessmg23.ericsson.net Received: from sessmg23.ericsson.net (HELO sessmg23.ericsson.net) (193.180.251.45) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 21 Jan 2019 22:03:23 +0000 DKIM-Signature: v=1; a=rsa-sha256; d=ericsson.com; s=mailgw201801; c=relaxed/relaxed; q=dns/txt; i=@ericsson.com; t=1548108200; x=1550700200; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=ushJs1t9wRFfGQPMISmXfoiIrC4sRPwvKAx69Q2BOuA=; b=ME+Om6SwvrxVLtaWHkgYT3zAq1DPcubwm1tOB7FtX9/MqEOG+UFkX1FMShL/pShC UaUCvgz/D5jTLmHnpY+u35oH4PcOwSBBRJFq5tBXxFPOZsZkXuMHEiXj/47Ttwuv T97GxhfcwQtGwSfb0M6oSgrdOuYAHAGze5JXo5mrFDM=; Received: from ESESSMB502.ericsson.se (Unknown_Domain [153.88.183.120]) by sessmg23.ericsson.net (Symantec Mail Security) with SMTP id 62.ED.01583.8A1464C5; Mon, 21 Jan 2019 23:03:20 +0100 (CET) Received: from ESESBMR505.ericsson.se (153.88.183.201) by ESESSMB502.ericsson.se (153.88.183.190) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Mon, 21 Jan 2019 23:03:18 +0100 Received: from ESESSMB503.ericsson.se (153.88.183.164) by ESESBMR505.ericsson.se (153.88.183.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Mon, 21 Jan 2019 23:03:18 +0100 Received: from NAM02-CY1-obe.outbound.protection.outlook.com (153.88.183.157) by ESESSMB503.ericsson.se (153.88.183.164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3 via Frontend Transport; Mon, 21 Jan 2019 23:03:18 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ushJs1t9wRFfGQPMISmXfoiIrC4sRPwvKAx69Q2BOuA=; b=ADGp0Wy6qfpWa/4XZA68syzHtxtvzCOyUpsafTFRA8NBDnzkiBF6c1brZZGcfO94U9F6O17pPFnnFgqBFsC9gMf6AoH6OqiqCPX+f/PsfMDrGgb/KaZIdze/bH/9kP/UeF3PLj+Vnp2zuSbAjjWE9gyaa2gjy4NhZVavZElS0GU= Received: from BYAPR15MB2390.namprd15.prod.outlook.com (52.135.198.30) by BYAPR15MB2407.namprd15.prod.outlook.com (52.135.198.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1537.29; Mon, 21 Jan 2019 22:03:14 +0000 Received: from BYAPR15MB2390.namprd15.prod.outlook.com ([fe80::a4b4:ea6a:6321:191e]) by BYAPR15MB2390.namprd15.prod.outlook.com ([fe80::a4b4:ea6a:6321:191e%4]) with mapi id 15.20.1516.025; Mon, 21 Jan 2019 22:03:14 +0000 From: Simon Marchi To: Richard Bunt , "gdb-patches@sourceware.org" CC: nd Subject: Re: [PATCH] Fortran function calls with arguments Date: Mon, 21 Jan 2019 22:03:00 -0000 Message-ID: <5c0dbb06-7f07-5565-5bcd-813f764f5480@ericsson.com> References: <54c63938-aa98-b043-d6a7-b734699f6340@arm.com> In-Reply-To: <54c63938-aa98-b043-d6a7-b734699f6340@arm.com> authentication-results: spf=none (sender IP is ) smtp.mailfrom=simon.marchi@ericsson.com; received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Return-Path: simon.marchi@ericsson.com X-IsSubscribed: yes X-SW-Source: 2019-01/txt/msg00458.txt.bz2 T24gMjAxOS0wMS0yMSAxMDowNSBhLm0uLCBSaWNoYXJkIEJ1bnQgd3JvdGU6 DQo+IFByaW9yIHRvIHRoaXMgcGF0Y2gsIGNhbGxpbmcgZnVuY3Rpb25zIG9u IHRoZSBpbmZlcmlvciB3aXRoIGFyZ3VtZW50cyBhbmQNCj4gdGhlbiB1c2lu ZyB0aGVzZSBhcmd1bWVudHMgd2l0aGluIGEgZnVuY3Rpb24gcmVzdWx0ZWQg aW4gYW4gaW52YWxpZA0KPiBtZW1vcnkgYWNjZXNzLiBUaGlzIGlzIGJlY2F1 c2UgRm9ydHJhbiBhcmd1bWVudHMgYXJlIHR5cGljYWxseSBwYXNzZWQgYXMN Cj4gcG9pbnRlcnMgdG8gdmFsdWVzLg0KPiANCj4gSXQgaXMgcG9zc2libGUg dG8gY2FsbCBGb3J0cmFuIGZ1bmN0aW9ucywgYnV0IG1lbW9yeSBtdXN0IGJl IGFsbG9jYXRlZCBpbg0KPiB0aGUgaW5mZXJpb3IsIHNvIGEgcG9pbnRlciBj YW4gYmUgcGFzc2VkIHRvIHRoZSBmdW5jdGlvbiwgYW5kIHRoZQ0KPiBsYW5n dWFnZSBtdXN0IGJlIHNldCB0byBDIHRvIGVuYWJsZSBDLXN0eWxlIGNhc3Rp bmcuIFRoaXMgaXMgY3VtYmVyc29tZQ0KPiBhbmQgbm90IGEgcGxlYXNhbnQg ZGVidWcgZXhwZXJpZW5jZS4NCj4gDQo+IFRoaXMgcGF0Y2ggaW1wbGVtZW50 cyB0aGUgR05VIEZvcnRyYW4gYXJndW1lbnQgcGFzc2luZyBjb252ZW50aW9u cyB3aXRoDQo+IGNhdmVhdHMuIEZpcnN0bHksIGl0IGRvZXMgbm90IGhhbmRs ZSB0aGUgVkFMVUUgYXR0cmlidXRlIGFzIHRoZXJlIGlzDQo+IGluc3VmZmlj aWVudCBEV0FSRiBpbmZvcm1hdGlvbiB0byBkZXRlcm1pbmUgd2hlbiB0aGlz IGlzIHRoZSBjYXNlLg0KPiBTZWNvbmRseSwgZnVuY3Rpb25zIHdpdGggb3B0 aW9uYWwgcGFyYW1ldGVycyBjYW4gb25seSBiZSBjYWxsZWQgd2l0aCBhbGwN Cj4gcGFyYW1ldGVycyBwcmVzZW50LiBCb3RoIHRoZXNlIGNhc2VzIGFyZSBt YXJrZWQgYXMgS0ZBSUxTIGluIHRoZSB0ZXN0Lg0KPiANCj4gU2luY2UgdGhl IEdOVSBGb3J0cmFuIGFyZ3VtZW50IHBhc3NpbmcgY29udmVudGlvbiBoYXMg YmVlbiBpbXBsZW1lbnRlZCwNCj4gdGhlcmUgaXMgbm8gZ3VhcmFudGVlIHRo YXQgdGhpcyBwYXRjaCB3aWxsIHdvcmsgY29ycmVjdGx5LCBpbiBhbGwgY2Fz ZXMsDQo+IHdpdGggb3RoZXIgY29tcGlsZXJzLg0KPiANCj4gRGVzcGl0ZSB0 aGVzZSBsaW1pdGF0aW9ucywgdGhpcyBwYXRjaCBpbXByb3ZlcyB0aGUgZWFz ZSB3aXRoIHdoaWNoDQo+IGZ1bmN0aW9ucyBjYW4gYmUgY2FsbGVkIGluIG1h bnkgY2FzZXMsIHdpdGhvdXQgdGFraW5nIGF3YXkgdGhlIGV4aXN0aW5nDQo+ IGFwcHJvYWNoIG9mIGNhbGxpbmcgd2l0aCB0aGUgbGFuZ3VhZ2Ugc2V0IHRv IEMuDQo+IA0KPiBJdCBzaG91bGQgYmUgbm90ZWQgdGhhdCBidWdzIHdlcmUg Zm91bmQgd2l0aCBwcmludGluZyBjb21wbGV4IG51bWJlcnMNCj4gd2hpbGUg ZGV2ZWxvcGluZyB0aGlzIHBhdGNoLiBIb3dldmVyLCBmaXhpbmcgdGhpcyBp c3N1ZSB3YXMgY29uc2lkZXJlZA0KPiBvdXRzaWRlIHRoZSBzY29wZSBvZiB0 aGlzIHBhdGNoLiBUaGUgdGVzdCBjYXNlIGZvciBjYWxsaW5nIGZ1bmN0aW9u cyB3aXRoDQo+IGNvbXBsZXggbnVtYmVycyBzaG91bGQgcmVtYWluIGFzIGEg S0ZBSUwuDQo+IA0KPiBSZWdyZXNzaW9uIHRlc3RlZCBvbiB4ODZfNjQsIGFh cmNoNjQgYW5kIFBPV0VSOSB3aXRoIEdDQyA3LjMuMC4NCj4gUmVncmVzc2lv biB0ZXN0ZWQgd2l0aCBBZGEgb24geDg2XzY0Lg0KPiBSZWdyZXNzaW9uIHRl c3RlZCB3aXRoIG5hdGl2ZS1leHRlbmRlZC1nZGJzZXJ2ZXIgdGFyZ2V0IGJv YXJkLg0KDQpIaSBSaWNoYXJkLA0KDQpUaGFua3MgZm9yIHRoZSBwYXRjaC4g IEkgZG9uJ3Qga25vdyBGb3J0cmFuLCBzbyBJIGNhbid0IGFzc2VzcyB3aGV0 aGVyIHRoZQ0KYmVoYXZpb3IgeW91IGltcGxlbWVudCBpcyB0aGUgcmlnaHQg b25lLiAgSWYgb3RoZXIgbWFpbnRhaW5lcnMgaGF2ZSB0aGlzDQprbm93bGVk Z2UsIHRoZXkgYXJlIHdlbGNvbWUgdG8gY29tcGxlbWVudCB0aGlzIHJldmll dy4gIE90aGVyd2lzZSwgSSBhbQ0KcmVhZHkgdG8gdHJ1c3QgeW91IG9uIHRo YXQgbWF0dGVyLg0KDQpIZXJlIGFyZSBhIGZldyBtb3JlIGhpZ2ggbGV2ZWwg Y29tbWVudHMgaW4gdGhlIG1lYW4gdGltZS4NCg0KPiBnZGIvQ2hhbmdlTG9n Og0KPiAyMDE4LTEwLTI3ICBSaWNoYXJkIEJ1bnQgIDxyaWNoYXJkLmJ1bnRA YXJtLmNvbT4NCj4gCURpcmsgU2NodWJlcnQgIDxkaXJrLnNjaHViZXJ0QGFy bS5jb20+DQo+IAlDaHJpcyBKYW51YXJ5ICA8Y2hyaXMuamFudWFyeUBhcm0u Y29tPg0KPiANCj4gCSogZ2RiL2V2YWwuYyAoZXZhbHVhdGVfc3ViZXhwX3N0 YW5kYXJkKTogQ2FsbCBGb3J0cmFuIGFyZ3VtZW50DQo+IAl3cmFwcGluZyBs b2dpYy4NCj4gCSogZ2RiL2YtbGFuZy5jIChzdHJ1Y3QgdmFsdWUpOiBBIHZh bHVlIHdoaWNoIGNhbiBiZSBwYXNzZWQgaW50byBhDQo+IAlGb3J0cmFuIGZ1 bmN0aW9uIGNhbGwuDQo+IAkoZm9ydHJhbl9hcmd1bWVudF9jb252ZXJ0KTog V3JhcCBGb3J0cmFuIGFyZ3VtZW50cyBpbiBhIHBvaW50ZXINCj4gCXdoZXJl IGFwcHJvcHJpYXRlLg0KPiAJKHN0cnVjdCB0eXBlKTogVmFsdWUgcmVhZHkg Zm9yIGEgRm9ydHJhbiBmdW5jdGlvbiBjYWxsLg0KPiAJKGZvcnRyYW5fcHJl c2VydmVfYXJnX3BvaW50ZXIpOiBVbmRvIGNoZWNrX3R5cGVkZWYsIHRoZSBw b2ludGVyDQo+IAlpcyBuZWVkZWQuDQo+IAkqIGdkYi9mLWxhbmcuaCAoZm9y dHJhbl9hcmd1bWVudF9jb252ZXJ0KTogRGVjbGFyYXRpb24uDQo+IAkoZm9y dHJhbl9wcmVzZXJ2ZV9hcmdfcG9pbnRlcik6IERlY2xhcmF0aW9uLg0KPiAJ KiBnZGIvaW5mY2FsbC5jICh2YWx1ZV9hcmdfY29lcmNlKTogQ2FsbCBGb3J0 cmFuIGFyZ3VtZW50DQo+IAlsb2dpYy4NCg0KUmVtb3ZlIHRoZSBnZGIvIHBy ZWZpeGVzICh0aGUgZmlsZW5hbWVzIHNob3VsZCBiZSByZWxhdGl2ZSB0byB0 aGUgQ2hhbmdlTG9nDQpmaWxlIGl0c2VsZikuDQoNCj4gDQo+IGdkYi90ZXN0 c3VpdGUvQ2hhbmdlTG9nOg0KPiAyMDE4LTEwLTI3ICBSaWNoYXJkIEJ1bnQg IDxyaWNoYXJkLmJ1bnRAYXJtLmNvbT4NCj4gDQo+IAkqIGdkYi90ZXN0c3Vp dGUvZ2RiLmZvcnRyYW4vZnVuY3Rpb24tY2FsbHMuZXhwOiBOZXcgZmlsZS4N Cj4gCSogZ2RiL3Rlc3RzdWl0ZS9nZGIuZm9ydHJhbi9mdW5jdGlvbi1jYWxs cy5mOTA6IE5ldyB0ZXN0Lg0KDQpTYW1lIGhlcmUuDQoNCj4gLS0tDQo+ICBn ZGIvZXZhbC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAxMyArLQ0KPiAgZ2RiL2YtbGFuZy5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgNDggKysrKysrDQo+ICBnZGIvZi1sYW5nLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSArLQ0KPiAgZ2Ri L2luZmNhbGwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg IDUgKy0NCj4gIGdkYi90ZXN0c3VpdGUvZ2RiLmZvcnRyYW4vZnVuY3Rpb24t Y2FsbHMuZXhwIHwgMTA0ICsrKysrKysrKysrKw0KPiAgZ2RiL3Rlc3RzdWl0 ZS9nZGIuZm9ydHJhbi9mdW5jdGlvbi1jYWxscy5mOTAgfCAyNDIgKysrKysr KysrKysrKysrKysrKysrKysrKysrDQo+ICA2IGZpbGVzIGNoYW5nZWQsIDQx NCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQ0KPiAgY3JlYXRlIG1v ZGUgMTAwNjQ0IGdkYi90ZXN0c3VpdGUvZ2RiLmZvcnRyYW4vZnVuY3Rpb24t Y2FsbHMuZXhwDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2RiL3Rlc3RzdWl0 ZS9nZGIuZm9ydHJhbi9mdW5jdGlvbi1jYWxscy5mOTANCj4gDQo+IGRpZmYg LS1naXQgYS9nZGIvZXZhbC5jIGIvZ2RiL2V2YWwuYw0KPiBpbmRleCA0N2Qw OGE2NTZjMDIyOWFjZTVmMjAwNGY3M2VhYmIzMGM5MGE5NmE4Li4wODNlOTUz MWUxMDNiYTk5NTkxMGMyNmMxMmU0OTYxMDI0ZGFiM2I4IDEwMDY0NA0KPiAt LS0gYS9nZGIvZXZhbC5jDQo+ICsrKyBiL2dkYi9ldmFsLmMNCj4gQEAgLTE5 ODcsNyArMTk4NywxOCBAQCBldmFsdWF0ZV9zdWJleHBfc3RhbmRhcmQgKHN0 cnVjdCB0eXBlICpleHBlY3RfdHlwZSwNCj4gIAkgIGFyZ3ZlY1swXSA9IGFy ZzE7DQo+ICAJICB0ZW0gPSAxOw0KPiAgCSAgZm9yICg7IHRlbSA8PSBuYXJn czsgdGVtKyspDQo+IC0JICAgIGFyZ3ZlY1t0ZW1dID0gZXZhbHVhdGVfc3Vi ZXhwX3dpdGhfY29lcmNpb24gKGV4cCwgcG9zLCBub3NpZGUpOw0KPiArCSAg ICB7DQo+ICsJICAgICAgYXJndmVjW3RlbV0gPSBldmFsdWF0ZV9zdWJleHBf d2l0aF9jb2VyY2lvbiAoZXhwLCBwb3MsIG5vc2lkZSk7DQo+ICsJICAgICAg LyogQXJndW1lbnRzIGluIEZvcnRyYW4gYXJlIHBhc3NlZCBieSBhZGRyZXNz LiAgQ29lcmNlIHRoZQ0KPiArCQkgYXJndW1lbnRzIGhlcmUgcmF0aGVyIHRo YW4gaW4gdmFsdWVfYXJnX2NvZXJjZSBhcyBvdGhlcndpc2UNCj4gKwkJIHRo ZSBjYWxsIHRvIG1hbGxvYyB0byBwbGFjZSB0aGUgbm9uLWx2YWx1ZSBwYXJh bWV0ZXJzIGluDQo+ICsJCSB0YXJnZXQgbWVtb3J5IGlzIGhpdCBieSB0aGlz IEZvcnRyYW4gc3BlY2lmaWMgbG9naWMuICBUaGlzDQo+ICsJCSByZXN1bHRz IGluIG1hbGxvYyBiZWluZyBjYWxsZWQgd2l0aCBhIHBvaW50ZXIgdG8gYW4g aW50ZWdlcg0KPiArCQkgZm9sbG93ZWQgYnkgYW4gYXR0ZW1wdCB0byBtYWxs b2MgdGhlIGFyZ3VtZW50cyB0byBtYWxsb2MgaW4NCj4gKwkJIHRhcmdldCBt ZW1vcnkuICBJbmZpbml0ZSByZWN1cnNpb24gZW5zdWVzLiAgKi8NCj4gKwkg ICAgICBhcmd2ZWNbdGVtXSA9IGZvcnRyYW5fYXJndW1lbnRfY29udmVydCAo YXJndmVjW3RlbV0sDQo+ICsJCVRZUEVfRklFTERfQVJUSUZJQ0lBTCAodmFs dWVfdHlwZSAoYXJnMSksIHRlbS0xKSk7DQoNClNwYWNlcyBhcmUgdGhlIG1p bnVzIHNpZ24uDQoNCk5vcm1hbGx5LCB3aGVuIHdyYXBwaW5nIGFyZ3VtZW50 cywgdGhlIHdyYXBwZWQgb25lcyBzaG91bGQgYmUgYWxpZ25lZCB3aXRoIHRo ZQ0KZmlyc3Qgb25lIChhY2NvcmRpbmcgdG8gdGhlIEdOVSBzdHlsZSkuICBJ dCdzIGEgYml0IGhhcmQgaGVyZSBiZWNhdXNlIG9mIHRoZSBsZW5ndGgNCm9m IHRoZSBleHByZXNzaW9uIGFuZCB0aGUgZmFjdCB0aGF0IHdlIGFyZSBwcmV0 dHkgbmVzdGVkLiAgVG8gc29sdmUgaXQsIEkgd291bGQgZG86DQoNCiAgICAg ICAgICAgICAgYm9vbCBpc19hcnRpZmljYWwNCiAgICAgICAgICAgICAgICA9 IFRZUEVfRklFTERfQVJUSUZJQ0lBTCAodmFsdWVfdHlwZSAoYXJnMSksIHRl bSAtIDEpOw0KCSAgICAgIGFyZ3ZlY1t0ZW1dID0gZm9ydHJhbl9hcmd1bWVu dF9jb252ZXJ0IChhcmd2ZWNbdGVtXSwgaXNfYXJ0aWZpY2lhbCk7DQoNCj4g KwkgICAgfQ0KPiAgCSAgYXJndmVjW3RlbV0gPSAwOwkvKiBzaWduYWwgZW5k IG9mIGFyZ2xpc3QgKi8NCj4gIAkgIGlmIChub3NpZGUgPT0gRVZBTF9TS0lQ KQ0KPiAgCSAgICByZXR1cm4gZXZhbF9za2lwX3ZhbHVlIChleHApOw0KPiBk aWZmIC0tZ2l0IGEvZ2RiL2YtbGFuZy5jIGIvZ2RiL2YtbGFuZy5jDQo+IGlu ZGV4IDRmZjgyOGJhNzUzMDBhZTU2NjczMTNlNzRjZmI5ZmNhZmZhOWRmMmYu LjBjMzExOGE1MTFkNTViMjBjYjI4N2E5ZTY5ZmNjYjQ3NjU3OTM5MWMgMTAw NjQ0DQo+IC0tLSBhL2dkYi9mLWxhbmcuYw0KPiArKysgYi9nZGIvZi1sYW5n LmMNCj4gQEAgLTI3LDYgKzI3LDcgQEANCj4gICNpbmNsdWRlICJwYXJzZXIt ZGVmcy5oIg0KPiAgI2luY2x1ZGUgImxhbmd1YWdlLmgiDQo+ICAjaW5jbHVk ZSAidmFyb2JqLmgiDQo+ICsjaW5jbHVkZSAiZ2RiY29yZS5oIg0KPiAgI2lu Y2x1ZGUgImYtbGFuZy5oIg0KPiAgI2luY2x1ZGUgInZhbHByaW50LmgiDQo+ ICAjaW5jbHVkZSAidmFsdWUuaCINCj4gQEAgLTM3MSwzICszNzIsNTAgQEAg X2luaXRpYWxpemVfZl9sYW5ndWFnZSAodm9pZCkNCj4gIHsNCj4gICAgZl90 eXBlX2RhdGEgPSBnZGJhcmNoX2RhdGFfcmVnaXN0ZXJfcG9zdF9pbml0IChi dWlsZF9mb3J0cmFuX3R5cGVzKTsNCj4gIH0NCj4gKw0KPiArLyogRW5zdXJl cyB0aGF0IGZ1bmN0aW9uIGFyZ3VtZW50IFZBTFVFIGlzIGluIHRoZSBhcHBy b3ByaWF0ZSBmb3JtIHRvDQo+ICsgICBwYXNzIHRvIGEgRm9ydHJhbiBmdW5j dGlvbi4gIFJldHVybnMgYSBwb3NzaWJseSBuZXcgdmFsdWUgdGhhdCBzaG91 bGQNCj4gKyAgIGJlIHVzZWQgaW5zdGVhZCBvZiBWQUxVRS4NCj4gKw0KPiAr ICAgV2hlbiBJU19BUlRJRklDSUFMIGlzIHRydWUgdGhpcyBpbmRpY2F0ZXMg YW4gYXJ0aWZpY2lhbCBhcmd1bWVudCwNCj4gKyAgIGUuZy4gaGlkZGVuIHN0 cmluZyBsZW5ndGhzIHdoaWNoIHRoZSBHTlUgRm9ydHJhbiBhcmd1bWVudCBw YXNzaW5nDQo+ICsgICBjb252ZW50aW9uIHNwZWNpZmllcyBhcyBiZWluZyBw YXNzZWQgYnkgdmFsdWUuDQo+ICsNCj4gKyAgIFdoZW4gSVNfQVJUSUZJQ0lB TCBpcyBmYWxzZSwgdGhlIGFyZ3VtZW50IGlzIHBhc3NlZCBieSBwb2ludGVy LiAgSWYgdGhlDQo+ICsgICB2YWx1ZSBpcyBhbHJlYWR5IGluIHRhcmdldCBt ZW1vcnkgdGhlbiByZXR1cm4gYSB2YWx1ZSB0aGF0IGlzIGEgcG9pbnRlcg0K PiArICAgdG8gVkFMVUUuICBJZiBWQUxVRSBpcyBub3QgaW4gbWVtb3J5IChl LmcuIGFuIGludGVnZXIgbGl0ZXJhbCksIGFsbG9jYXRlDQo+ICsgICBzcGFj ZSBpbiB0aGUgdGFyZ2V0LCBjb3B5IFZBTFVFIGluLCBhbmQgcmV0dXJuIGEg cG9pbnRlciB0byB0aGUgaW4NCj4gKyAgIG1lbW9yeSBjb3B5LiAgKi8NCg0K UGxlYXNlIG1vdmUgdGhlIGNvbW1lbnQgdG8gZi1sYW5nLmgsIGFuZCBwdXQg dGhpcyBoZXJlOg0KDQovKiBTZWUgZi1sYW5nLmguICAqLw0KDQo+ICtzdHJ1 Y3QgdmFsdWUgKg0KPiArZm9ydHJhbl9hcmd1bWVudF9jb252ZXJ0IChzdHJ1 Y3QgdmFsdWUgKnZhbHVlLCBjb25zdCBib29sIGlzX2FydGlmaWNpYWwpDQo+ ICt7DQo+ICsgIGlmICghaXNfYXJ0aWZpY2lhbCkNCj4gKyAgICB7DQo+ICsg ICAgICBpZiAoVkFMVUVfTFZBTCAodmFsdWUpID09IG5vdF9sdmFsDQo+ICsJ ICB8fCBWQUxVRV9MVkFMICh2YWx1ZSkgPT0gbHZhbF9pbnRlcm5hbHZhcikN Cg0KSnVzdCB3b25kZXJpbmcsIGhhdmUgeW91IGNvbnNpZGVyZWQgYWxsIGx2 YWxfdHlwZXMgaGVyZT8gIElmIHlvdSB3ZXJlIHRvIHBhc3MNCmEgdmFyaWFi bGUgdGhhdCBpcyBpbiBhIHJlZ2lzdGVyIChsdmFsX3JlZ2lzdGVyKSBvciBj b21wb3NlZCBvZiBtdWx0aXBsZSBwaWVjZXMNCihsdmFsX2NvbXB1dGVkKSwg SSBndWVzcyB3ZSB3b3VsZCBuZWVkIHRvIGFsbG9jYXRlIHRoZW0gdG9vLiAg Tm90IHN1cmUgYWJvdXQgdGhlDQpvdGhlciBvbmVzLiAgSW4gZmFjdCwgZXZl cnl0aGluZyB0aGF0IGlzIG5vdCBsdmFsX21lbW9yeSB3b3VsZCBsaWtlbHkg aGl0IHRoaXMNCmFzc2VydCBpbiB2YWx1ZV9hZGRyOg0KDQogIGlmIChWQUxV RV9MVkFMIChhcmcxKSAhPSBsdmFsX21lbW9yeSkNCiAgICBlcnJvciAoXygi QXR0ZW1wdCB0byB0YWtlIGFkZHJlc3Mgb2YgdmFsdWUgbm90IGxvY2F0ZWQg aW4gbWVtb3J5LiIpKTsNCg0KU28gbWF5YmUgdGhpcyBzaG91bGQgYmUNCg0K ICAgIGlmIChWQUxVRV9MVkFMICh2YWx1ZSkgIT0gbHZhbF9tZW1vcnkpDQoN Cj8NCg0KPiArCXsNCj4gKwkgIHN0cnVjdCB2YWx1ZSAqdmFsID0gdmFsdWVf Y29weSAodmFsdWUpOw0KPiArCSAgY29uc3QgaW50IGxlbmd0aCA9IFRZUEVf TEVOR1RIICh2YWx1ZV90eXBlICh2YWwpKTsNCj4gKwkgIGNvbnN0IENPUkVf QUREUiBhZGRyDQo+ICsJICAgID0gdmFsdWVfYXNfbG9uZyAodmFsdWVfYWxs b2NhdGVfc3BhY2VfaW5faW5mZXJpb3IgKGxlbmd0aCkpOw0KPiArCSAgVkFM VUVfTFZBTCAodmFsKSA9IGx2YWxfbWVtb3J5Ow0KPiArCSAgc2V0X3ZhbHVl X2FkZHJlc3MgKHZhbCwgYWRkcik7DQo+ICsJICB3cml0ZV9tZW1vcnkgKGFk ZHIsIHZhbHVlX2NvbnRlbnRzICh2YWwpLCBsZW5ndGgpOw0KPiArCSAgcmV0 dXJuIHZhbHVlX2FkZHIgKHZhbCk7DQoNCj4gKwl9DQo+ICsgICAgICBlbHNl DQo+ICsJcmV0dXJuIHZhbHVlX2FkZHIgKHZhbHVlKTsNCj4gKyAgICB9DQo+ ICsgICAgcmV0dXJuIHZhbHVlOw0KPiArfQ0KPiArDQo+ICsvKiBBbGwgYXJn dW1lbnRzIGluIEZvcnRyYW4gYXJlIHBvaW50ZXJzLiAgSWYgaXQgaXMgYSBw b2ludGVyLCBwcmVzZXJ2ZSBpdCBzbw0KPiArICAgdGhhdCB0aGUgYWRkcmVz cyBpcyBwYXNzZWQgcmF0aGVyIHRoYW4gdGhlIHZhbHVlLiAgKi8NCg0KU2Ft ZSAobW92ZSBjb21tZW50IHRvIGYtbGFuZy5oKS4gIEFsc28sIGNhbiB5b3Ug ZGVzY3JpYmUgd2hhdCBBUkcgYW5kIFRZUEUgYXJlPw0KSG93IGFyZSB0aGV5 IHJlbGF0ZWQ/DQoNCj4gK3N0cnVjdCB0eXBlICoNCj4gK2ZvcnRyYW5fcHJl c2VydmVfYXJnX3BvaW50ZXIgKHN0cnVjdCB2YWx1ZSAqYXJnLA0KPiArCQkJ ICAgICAgc3RydWN0IHR5cGUgKnR5cGUpDQo+ICt7DQo+ICsgIGlmIChUWVBF X0NPREUgKHZhbHVlX3R5cGUgKGFyZykpID09IFRZUEVfQ09ERV9QVFIpDQo+ ICsgICAgcmV0dXJuIHZhbHVlX3R5cGUgKGFyZyk7DQo+ICsgIHJldHVybiB0 eXBlOw0KPiArfQ0KPiBkaWZmIC0tZ2l0IGEvZ2RiL2YtbGFuZy5oIGIvZ2Ri L2YtbGFuZy5oDQo+IGluZGV4IGNhYjA2Zjk4MDZkNGJlZDE1ZjczYjRjOGRh NzE3ZDFlZGUyYTdkNWYuLmJjY2YwODJkYWU0YzMwNmM1N2I0OWY2YTkxMzA2 ZmM3NmJhM2RlNTQgMTAwNjQ0DQo+IC0tLSBhL2dkYi9mLWxhbmcuaA0KPiAr KysgYi9nZGIvZi1sYW5nLmgNCj4gQEAgLTc4LDQgKzc4LDcgQEAgc3RydWN0 IGJ1aWx0aW5fZl90eXBlDQo+ICANCj4gIC8qIFJldHVybiB0aGUgRm9ydHJh biB0eXBlIHRhYmxlIGZvciB0aGUgc3BlY2lmaWVkIGFyY2hpdGVjdHVyZS4g ICovDQo+ICBleHRlcm4gY29uc3Qgc3RydWN0IGJ1aWx0aW5fZl90eXBlICpi dWlsdGluX2ZfdHlwZSAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gpOw0KPiAt DQo+ICtleHRlcm4gc3RydWN0IHZhbHVlICpmb3J0cmFuX2FyZ3VtZW50X2Nv bnZlcnQgKHN0cnVjdCB2YWx1ZSAqdmFsdWUsDQo+ICsJCQkJCSAgICAgICBj b25zdCBib29sIGlzX2FydGlmaWNpYWwpOw0KPiArZXh0ZXJuIHN0cnVjdCB0 eXBlICpmb3J0cmFuX3ByZXNlcnZlX2FyZ19wb2ludGVyIChzdHJ1Y3QgdmFs dWUgKmFyZywNCj4gKwkJCQkJCSAgc3RydWN0IHR5cGUgKnR5cGUpOw0KPiBk aWZmIC0tZ2l0IGEvZ2RiL2luZmNhbGwuYyBiL2dkYi9pbmZjYWxsLmMNCj4g aW5kZXggMTRiMGNiYzcxNjkwN2FjNzkwZmQ5YzRmZWU4OTE3MmZhMmEzMzAy MC4uMzY3MDQ4Yjc0MTE5MDA0ODY4NTVkZGFjNTk0OWFhNjU1ZWE3Nzg1MyAx MDA2NDQNCj4gLS0tIGEvZ2RiL2luZmNhbGwuYw0KPiArKysgYi9nZGIvaW5m Y2FsbC5jDQo+IEBAIC0zMyw2ICszMyw3IEBADQo+ICAjaW5jbHVkZSAiY29t bWFuZC5oIg0KPiAgI2luY2x1ZGUgImR1bW15LWZyYW1lLmgiDQo+ICAjaW5j bHVkZSAiYWRhLWxhbmcuaCINCj4gKyNpbmNsdWRlICJmLWxhbmcuaCINCj4g ICNpbmNsdWRlICJnZGJ0aHJlYWQuaCINCj4gICNpbmNsdWRlICJldmVudC10 b3AuaCINCj4gICNpbmNsdWRlICJvYnNlcnZhYmxlLmgiDQo+IEBAIC0xMjks NyArMTMwLDcgQEAgc2hvd191bndpbmRfb25fdGVybWluYXRpbmdfZXhjZXB0 aW9uX3AgKHN0cnVjdCB1aV9maWxlICpmaWxlLCBpbnQgZnJvbV90dHksDQo+ ICB9DQo+ICANCj4gIC8qIFBlcmZvcm0gdGhlIHN0YW5kYXJkIGNvZXJjaW9u cyB0aGF0IGFyZSBzcGVjaWZpZWQNCj4gLSAgIGZvciBhcmd1bWVudHMgdG8g YmUgcGFzc2VkIHRvIEMgb3IgQWRhIGZ1bmN0aW9ucy4NCj4gKyAgIGZvciBh cmd1bWVudHMgdG8gYmUgcGFzc2VkIHRvIEMsIEFkYSBvciBGb3J0cmFuIGZ1 bmN0aW9ucy4NCj4gIA0KPiAgICAgSWYgUEFSQU1fVFlQRSBpcyBub24tTlVM TCwgaXQgaXMgdGhlIGV4cGVjdGVkIHBhcmFtZXRlciB0eXBlLg0KPiAgICAg SVNfUFJPVE9UWVBFRCBpcyBub24temVybyBpZiB0aGUgZnVuY3Rpb24gZGVj bGFyYXRpb24gaXMgcHJvdG90eXBlZC4NCj4gQEAgLTE0OCw2ICsxNDksOCBA QCB2YWx1ZV9hcmdfY29lcmNlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwg c3RydWN0IHZhbHVlICphcmcsDQo+ICAgIC8qIFBlcmZvcm0gYW55IEFkYS1z cGVjaWZpYyBjb2VyY2lvbiBmaXJzdC4gICovDQo+ICAgIGlmIChjdXJyZW50 X2xhbmd1YWdlLT5sYV9sYW5ndWFnZSA9PSBsYW5ndWFnZV9hZGEpDQo+ICAg ICAgYXJnID0gYWRhX2NvbnZlcnRfYWN0dWFsIChhcmcsIHR5cGUpOw0KPiAr ICBlbHNlIGlmIChjdXJyZW50X2xhbmd1YWdlLT5sYV9sYW5ndWFnZSA9PSBs YW5ndWFnZV9mb3J0cmFuKQ0KPiArICAgIHR5cGUgPSBmb3J0cmFuX3ByZXNl cnZlX2FyZ19wb2ludGVyIChhcmcsIHR5cGUpOw0KDQpUaGUgY29tbWVudCBq dXN0IGFib3ZlIHdvdWxkIG5lZWQgdG8gYmUgdXBkYXRlZCB0byBtZW50aW9u IEZvcnRyYW4uDQoNCj4gIA0KPiAgICAvKiBGb3JjZSB0aGUgdmFsdWUgdG8g dGhlIHRhcmdldCBpZiB3ZSB3aWxsIG5lZWQgaXRzIGFkZHJlc3MuICBBdA0K PiAgICAgICB0aGlzIHBvaW50LCB3ZSBjb3VsZCBhbGxvY2F0ZSBhcmd1bWVu dHMgb24gdGhlIHN0YWNrIGluc3RlYWQgb2YNCj4gZGlmZiAtLWdpdCBhL2dk Yi90ZXN0c3VpdGUvZ2RiLmZvcnRyYW4vZnVuY3Rpb24tY2FsbHMuZXhwIGIv Z2RiL3Rlc3RzdWl0ZS9nZGIuZm9ydHJhbi9mdW5jdGlvbi1jYWxscy5leHAN Cj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTc1MzM2NjUxYjM5NDc1 MzRlNmExMTc2NmQ0ZmRjNWZhOWI4N2Q1ZA0KPiAtLS0gL2Rldi9udWxsDQo+ ICsrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmZvcnRyYW4vZnVuY3Rpb24tY2Fs bHMuZXhwDQo+IEBAIC0wLDAgKzEsMTA0IEBADQo+ICsjIENvcHlyaWdodCAy MDE5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLg0KPiArDQo+ICsj IFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQo+ICsjIGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5DQo+ICsjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247 IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yDQo+ICsjIChh dCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQo+ICsjDQo+ICsj IFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLA0KPiArIyBidXQgV0lUSE9VVCBBTlkgV0FS UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0K PiArIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV TEFSIFBVUlBPU0UuICBTZWUgdGhlDQo+ICsjIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQo+ICsjDQo+ICsjIFlvdSBz aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlDQo+ICsjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFt LiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+ IC4NCj4gKw0KPiArIyBFeGVyY2lzZSBwYXNzaW5nIGFuZCByZXR1cm5pbmcg YXJndW1lbnRzIGluIEZvcnRyYW4uIFRoaXMgdGVzdCBjYXNlDQo+ICsjIGlz IGJhc2VkIG9uIHRoZSBHTlUgRm9ydHJhbiBBcmd1bWVudCBwYXNzaW5nIGNv bnZlbnRpb25zLg0KPiArDQo+ICtpZiB7W3NraXBfZm9ydHJhbl90ZXN0c119 IHsgcmV0dXJuIC0xIH0NCj4gKw0KPiArc3RhbmRhcmRfdGVzdGZpbGUgIi5m OTAiDQo+ICsNCj4gK2lmIHtbcHJlcGFyZV9mb3JfdGVzdGluZyAke3Rlc3Rm aWxlfS5leHAgJHt0ZXN0ZmlsZX0gJHtzcmNmaWxlfSB7ZGVidWcgZjkwfV19 IHsNCj4gKyAgICByZXR1cm4gLTENCj4gK30NCj4gKw0KPiAraWYgeyFbcnVu dG8gW2dkYl9nZXRfbGluZV9udW1iZXIgInBvc3RfaW5pdCJdXX0gdGhlbiB7 DQo+ICsgICAgcGVycm9yICJjb3VsZG4ndCBydW4gdG8gYnJlYWtwb2ludCBw b3N0X2luaXQiDQo+ICsgICAgY29udGludWUNCj4gK30NCj4gKw0KPiArIyBV c2UgaW5zcGlyZWQgYnkgZ2RiLmJhc2UvY2FsbGZ1bmNzLmV4cC4NCj4gK2dk Yl90ZXN0X25vX291dHB1dCAic2V0IHVud2luZG9uc2lnbmFsIG9uIg0KPiAr DQo+ICsjIEJhc2VsaW5lOiBmdW5jdGlvbiBhbmQgc3Vicm91dGluZSBjYWxs IHdpdGggbm8gYXJndW1lbnRzLg0KPiArZ2RiX3Rlc3QgInAgbm9fYXJnKCki ICIgPSAuVFJVRS4iDQo+ICtnZGJfdGVzdF9ub19vdXRwdXQgImNhbGwgbm9f YXJnX3N1YnJvdXRpbmUoKSINCj4gKw0KPiArIyBBcmd1bWVudCBjbGFzczog bGl0ZXJhbCwgaW5mZXJpb3IgdmFyaWFibGUsIGNvbnZlbmllbmNlIHZhcmlh YmxlLA0KPiArIyBmdW5jdGlvbiBjYWxsIHJldHVybiB2YWx1ZSwgZnVuY3Rp b24uDQo+ICsjIFBhcmFncmFwaCAzOiBWYXJpYWJsZXMgYXJlIHBhc3NlZCBi eSByZWZlcmVuY2UuDQo+ICtnZGJfdGVzdCAicCBvbmVfYXJnKC5UUlVFLiki ICIgPSAuVFJVRS4iDQo+ICtnZGJfdGVzdCAicCBvbmVfYXJnKHVudHJ1ZSki ICIgPSAuRkFMU0UuIg0KPiArZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgXCR2 YXIgPSAuRkFMU0UuIg0KPiArZ2RiX3Rlc3QgInAgb25lX2FyZyhcJHZhciki ICIgPSAuRkFMU0UuIg0KPiArZ2RiX3Rlc3QgInAgb25lX2FyZyhvbmVfYXJn KC5UUlVFLikpIiAiID0gLlRSVUUuIg0KPiArZ2RiX3Rlc3QgInAgb25lX2Fy ZyhvbmVfYXJnKC5GQUxTRS4pKSIgIiA9IC5GQUxTRS4iDQo+ICtnZGJfdGVz dF9ub19vdXRwdXQgImNhbGwgcnVuKG5vX2FyZ19zdWJyb3V0aW5lKSINCj4g Kw0KPiArIyBSZXR1cm46IGNvbnN0YW50Lg0KPiArZ2RiX3Rlc3QgInAgcmV0 dXJuX2NvbnN0YW50KCkiICIgPSAxNyINCj4gKyMgUmV0dXJuIGRlcml2ZWQg dHlwZSBhbmQgY2FsbCBhIGZ1bmN0aW9uIGluIGEgbW9kdWxlLg0KPiArZ2Ri X3Rlc3QgInAgZGVyaXZlZF90eXBlc19hbmRfbW9kdWxlX2NhbGxzOjpidWls ZF9jYXJ0KDcsOCkiIFwNCj4gKwkgIiA9IFxcXCggeCA9IDcsIHkgPSA4IFxc XCkiDQo+ICsNCj4gKyMgVHdvIGhpZGRlbiBhcmd1bWVudHMuIDEuIHJldHVy bmVkIHN0cmluZyBhbmQgMi4gc3RyaW5nIGxlbmd0aC4NCj4gKyMgUGFyYWdy YXBoIDEuDQo+ICtnZGJfdGVzdCAicCByZXR1cm5fc3RyaW5nKHJldHVybmVk X3N0cmluZ19kZWJ1Z2dlciwgNDApIiAiIg0KPiArZ2RiX3Rlc3QgInAgcmV0 dXJuZWRfc3RyaW5nX2RlYnVnZ2VyIiAiJ3JldHVybmVkIGluIGhpZGRlbiBm aXJzdCBhcmd1bWVudCAgICAgICAnIg0KPiArDQo+ICsjIEFyZ3VtZW50IHR5 cGU6IHJlYWwoa2luZD00KSwgY29tcGxleCwgYXJyYXksIHBvaW50ZXIsIGRl cml2ZWQgdHlwZSwNCj4gKyMgZGVyaXZlZCB0eXBlIHdpdGggYWxsb2NhdGFi bGUsIG5lc3RlZCBkZXJpdmVkIHR5cGUuDQo+ICsjIFBhcmFncmFwaCA0OiBw b2ludGVyLg0KPiArZ2RiX3Rlc3QgInAgcG9pbnRlcl9mdW5jdGlvbihpbnRf cG9pbnRlcikiICIgPSA4NyINCj4gKyMgUGFyYWdyYXBoIDQ6IGFycmF5Lg0K PiArZ2RiX3Rlc3QgImNhbGwgYXJyYXlfZnVuY3Rpb24oaW50ZWdlcl9hcnJh eSkiICIgPSAxNyINCj4gK2dkYl90ZXN0ICJwIGRlcml2ZWRfdHlwZXNfYW5k X21vZHVsZV9jYWxsczo6cGFzc19jYXJ0KGMpIiBcDQo+ICsJICIgPSBcXFwo IHggPSAyLCB5ID0gNCBcXFwpIg0KPiArIyBBbGxvY2F0YWJsZSBlbGVtZW50 cyBpbiBhIGRlcml2ZWQgdHlwZS4gVGVjaG5pY2FsIHJlcG9ydCBJU08vSUVD IDE1NTgxLg0KPiArZ2RiX3Rlc3QgInAgZGVyaXZlZF90eXBlc19hbmRfbW9k dWxlX2NhbGxzOjpwYXNzX2NhcnRfbmQoY19uZCkiICIgPSA0Ig0KPiArZ2Ri X3Rlc3QgInAgZGVyaXZlZF90eXBlc19hbmRfbW9kdWxlX2NhbGxzOjpwYXNz X25lc3RlZF9jYXJ0KG5lc3RlZF9jKSIgXA0KPiArCSAgIj0gXFxcKCBkID0g XFxcKCB4ID0gMSwgeSA9IDIgXFxcKSwgeiA9IDMgXFxcKSINCj4gKyMgUmVz dWx0IHdpdGhpbiBzb21lIHRvbGVyYW5jZS4NCj4gK2dkYl90ZXN0ICJwIHJl YWw0X2FyZ3VtZW50KHJlYWw0KSIgIiA9IDMuJHtkZWNpbWFsfSINCj4gKw0K PiArIyBQcmludGluZyBjb21wbGV4IG51bWJlcnMgdGhyb3VnaCBHREIgZG9l c24ndCB3b3JrIGluIGdlbmVyYWwuDQo+ICsjIFBhcmFncmFwaCAyLg0KPiAr c2V0dXBfa2ZhaWwgImdkYi9OTk5OIiAqLSotKg0KPiArZ2RiX3Rlc3QgInAg Y29tcGxleF9hcmd1bWVudChmZnQpIiAiID0gKDIuJHtkZWNpbWFsfSwzLiR7 ZGVjaW1hbH0pIg0KPiArDQo+ICsjIEZ1bmN0aW9uIHdpdGggb3B0aW9uYWwg YXJndW1lbnRzLg0KPiArIyBQYXJhZ3JhcGggMTA6IE9wdGlvbiByZWZlcmVu Y2UgYXJndW1lbnRzLg0KPiArZ2RiX3Rlc3QgInAgc3VtX3NvbWUoMSwyLDMp IiAiID0gNiINCj4gKyMgVGhlcmUgaXMgY3VycmVudGx5IG5vIG1lY2hhbmlz bSB0byBjYWxsIGEgZnVuY3Rpb24gd2l0aG91dCBhbGwNCj4gKyMgb3B0aW9u YWwgcGFyYW1ldGVycyBwcmVzZW50Lg0KPiArc2V0dXBfa2ZhaWwgImdkYi9O Tk5OIiAqLSotKg0KPiArZ2RiX3Rlc3QgInAgc3VtX3NvbWUoMSwyKSIgIiA9 IDMiDQo+ICsNCj4gKyMgUGFyYWdyYXBoIDEwOiBvcHRpb25hbCB2YWx1ZSBh cmd1bWVudHMuIFRoZXJlIGlzIGluc3VmZmljaWVudCBEV0FSRg0KPiArIyBp bmZvcm1hdGlvbiB0byByZWxpYWJseSBtYWtlIHRoaXMgY2FzZSB3b3JrLg0K PiArc2V0dXBfa2ZhaWwgImdkYi9OTk5OIiAqLSotKg0KPiArZ2RiX3Rlc3Qg InAgb25lX2FyZ192YWx1ZSgxMCkiICIgPSAxMCINCj4gKw0KPiArIyBEV19B VF9hcnRpZmljaWFsIGZvcm1hbCBwYXJhbWV0ZXJzIG11c3QgYmUgcGFzc2Vk IG1hbnVhbGx5LiBUaGlzDQo+ICsjIGFzc2VydCB3aWxsIGZhaWwgaWYgdGhl IGxlbmd0aCBvZiB0aGUgc3RyaW5nIGlzIHdyYXBwZWQgaW4gYSBwb2ludGVy Lg0KPiArIyBQYXJhZ3JhcGggNzogQ2hhcmFjdGVyIHR5cGUuDQo+ICtnZGJf dGVzdCAicCBoaWRkZW5fc3RyaW5nX2xlbmd0aCgnYXJiaXRyYXJ5IHN0cmlu ZycsIDE2KSIgIiA9IDE2Ig0KPiArDQo+ICsjIFNldmVyYWwgYXJndW1lbnRz Lg0KPiArZ2RiX3Rlc3QgInAgc2V2ZXJhbF9hcmd1bWVudHMoMiwgMywgNSki ICIgPSAxMCINCj4gK2dkYl90ZXN0ICJwIG1peF9vZl9zY2FsYXJfYXJndW1l bnRzKDUsIC5UUlVFLiwgMy41KSIgIiA9IDkiDQo+ICsNCj4gKyMgQ2FsbGlu ZyBvdGhlciBmdW5jdGlvbnM6IFJlY3Vyc2l2ZSBjYWxsLg0KPiArZ2RiX3Rl c3QgInAgZmlib25hY2NpKDYpIiAiID0gOCINCg0KQ291bGQgeW91IGZpbGUg YnVncyBmb3IgdGhlIHZhcmlvdXMgc2V0dXBfa2ZhaWw/DQoNClRoYW5rcywN Cg0KU2ltb24NCg==