From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20075.outbound.protection.outlook.com [40.107.2.75]) by sourceware.org (Postfix) with ESMTPS id 7C0583857C53 for ; Mon, 10 Aug 2020 08:49:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 7C0583857C53 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=Alan.Hayward@arm.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ip6SfyT5sdhwOx96V4NbUR3g+L+UXced0FXnx0wXI9I=; b=zQxK8kVqzG2Ex8ikp7zZ/OH8tV5BpVYMogF5Q1KFb3+gpZknxLnD5X6Yynf2Ls8KuE6RMui/WMLikWmTYw7qLpE11dJodLVRYZN7xH5ukOR9T6ZH6b0nDDxJ4ZUy7gXdsnVxixkr3qVrhB522n7kxbkfvaDG82n5QNYSmjmG0UY= Received: from AM7PR04CA0022.eurprd04.prod.outlook.com (2603:10a6:20b:110::32) by AM6PR08MB3285.eurprd08.prod.outlook.com (2603:10a6:209:4b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3261.16; Mon, 10 Aug 2020 08:49:17 +0000 Received: from AM5EUR03FT038.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:110:cafe::9a) by AM7PR04CA0022.outlook.office365.com (2603:10a6:20b:110::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3261.15 via Frontend Transport; Mon, 10 Aug 2020 08:49:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; sourceware.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; sourceware.org; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT038.mail.protection.outlook.com (10.152.17.118) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3261.16 via Frontend Transport; Mon, 10 Aug 2020 08:49:17 +0000 Received: ("Tessian outbound e8cdb8c6f386:v64"); Mon, 10 Aug 2020 08:49:17 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: b4e591e5a1a63f8b X-CR-MTA-TID: 64aa7808 Received: from 945ae56eb5f1.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 7C562E48-6493-4E98-8795-285302BE95F1.1; Mon, 10 Aug 2020 08:49:11 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 945ae56eb5f1.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 10 Aug 2020 08:49:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K2m6yIi954MbOMdXyMQtA4dI67ptex4cyFhibGYKaJiKdO8/axUyFd6MXGHy4Qe1SuHIVylDHuGQ9RP6cCXsTpG+Irf/yQeUKy7wlZv7ofMm5owkn1ezX9KodGbnmsogaDkir9RW5fkqk3xYVjGq1OZS4iUpvjN0XwXxwa6GGutOLcOHCHGW1r+jxG7KEHGALjGvIHSzo5iD0K6oOt7Ed4JPa9EBiqC86vacAYVLnBzGpxpPXS5oIiq+LljScnZv8Y7LxEQFVm4hoL3yeeIeJmQA+5OCEx4JD71Fa/XPcvLi+RvvP6qHB02nF5DrY0K2lvpD+F9CFWRDAlgmSKbxIQ== 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=ip6SfyT5sdhwOx96V4NbUR3g+L+UXced0FXnx0wXI9I=; b=mnGgGCp940iX+rzPoDCUhpPWcJMOJT4JCBOGQqunBav98jwrl2V6sro+BHnPz85d/S1L2bUz7SJckzzokynXtofmJkdsCJqQhnSb7Jqb/bfaUIEvRyAgekVNdbqQof6UFifKGExRWVaRMuBYMzNmRLXGRfqXsTyMlgF4YtbbKHvt0amqDjGcm4PnNqR4Xncx1noYRiZmym7EtJS1SUfdvY1GI3elV8wo+7QYs8EJP77O7+nvchkTENWakgRKIgo9zQM0ApNCM+cHANL4OsGo1ach/xE1bTagMkU6P8lAUvlzzmr3KJhALQ9ZKoPWalImXG9gahZjjAaYLkTxijW+IQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ip6SfyT5sdhwOx96V4NbUR3g+L+UXced0FXnx0wXI9I=; b=zQxK8kVqzG2Ex8ikp7zZ/OH8tV5BpVYMogF5Q1KFb3+gpZknxLnD5X6Yynf2Ls8KuE6RMui/WMLikWmTYw7qLpE11dJodLVRYZN7xH5ukOR9T6ZH6b0nDDxJ4ZUy7gXdsnVxixkr3qVrhB522n7kxbkfvaDG82n5QNYSmjmG0UY= Received: from AM6PR08MB3957.eurprd08.prod.outlook.com (2603:10a6:20b:a2::14) by AM5PR0801MB2097.eurprd08.prod.outlook.com (2603:10a6:203:4c::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3261.19; Mon, 10 Aug 2020 08:49:08 +0000 Received: from AM6PR08MB3957.eurprd08.prod.outlook.com ([fe80::95d8:11b:827f:a517]) by AM6PR08MB3957.eurprd08.prod.outlook.com ([fe80::95d8:11b:827f:a517%4]) with mapi id 15.20.3261.024; Mon, 10 Aug 2020 08:49:08 +0000 From: Alan Hayward To: Luis Machado CC: gdb-patches , nd Subject: Re: [PATCH] [AArch64] Improve prologue handling (and fix PR26310) Thread-Topic: [PATCH] [AArch64] Improve prologue handling (and fix PR26310) Thread-Index: AQHWbBtdX/SYK2F3c0iautOIOqvZ8qkxDgCA Date: Mon, 10 Aug 2020 08:49:08 +0000 Message-ID: References: <20200806175920.8037-1-luis.machado@linaro.org> In-Reply-To: <20200806175920.8037-1-luis.machado@linaro.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3608.80.23.2.2) Authentication-Results-Original: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; x-originating-ip: [82.23.123.38] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 4f288a86-caa8-44df-71d9-08d83d0a4437 x-ms-traffictypediagnostic: AM5PR0801MB2097:|AM6PR08MB3285: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: qRSPm9YRc8cHFfKasxmwkQzFvhASs8bgyRlmIoirrJu/xUF2SBaGVKgB4luICrJ0Z+Iu0RQiB7bTyM+i2/sdxIrZT4lbtFxU9e7J8e2gCsc9WeMsXSm94vXLk7137lo8JRnWeTdbS8MZvFdCo2mGAY1lUTC9Cf9kXCFJ+GnTII/3ypaIN9d7stuLdSQzX8MnEG2d+ttX00jHAUUIDectK585Q6n6eQbnqjI8XXaqvrBQLbtn6gqvV8/VHSGqpDQvVvSaOC1FbzNCM9jgUDDbZO/yf+I4ivof3VqsenPS6Lijkh08iW0WU6T9iGa/nq8NyVZMT9MtDuuQG03Lf/vMzQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM6PR08MB3957.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(136003)(376002)(346002)(39860400002)(396003)(366004)(66556008)(66446008)(66946007)(66476007)(91956017)(76116006)(64756008)(5660300002)(83380400001)(2906002)(71200400001)(36756003)(478600001)(54906003)(6486002)(6916009)(2616005)(186003)(86362001)(33656002)(4326008)(26005)(6506007)(53546011)(8676002)(316002)(6512007)(8936002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: uZxtxdbMcvkTirs1kUQQ1PUp+kmLf24/4REbG0yh3j0rwH4045rRxV6XclRrk1WxElNH3A9vwuEv8V88umlg5hwnnanv9GLX3W8JjANRINBDG4HV85m68/NKEgs4pijyihdL43Lu+xJWVe0dxEZle+ODAZqy8d5mhukcGp5SifJCUhPWGEZRYg/dPJ0jbRMGKLHEm+/vj7YtLIOAyR3uOy0TtEY++IReWr1WGUP0VjBL1Ku2amCHM9DdjOW+dT4Zc70zkfbNLYGBrxMfe2GE7JQevfInm1FWpOm74Lxk54HdWxGTdKIMkF7vFn0hIqBvAY5yUs1kUb0+mYc8w/zZDCvHt3Sscrz0zdrs7C3plSKZTigDpawXb33YhYlMXgkMFe3vTzRslppPB80c5xIbqNQX6Rlpf6RJTrInuN3kK0vLzR++a5CdAP+hiNUD+7WUNMEInjsWO1YiECCveVFZZdk94bIee/Yt6+QM6yRZDA68/hredhUrrnU/psgWmpJphaDvS/oVfSYlHqLecz3LdHO2Ovq/XldU5nLFhfZ0xpjZAJN5eCe9/OtkJW9Ap9yO+U7QiP/Mdn+aniFys1zByUBPuIiptmr8J9RNem8hqGjXoHjSCh43FtDAsdGlLcjogvyElNDsec7hes+8Yq9pgQ== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <996364308CD45C48BBBAC365AD4848FB@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0801MB2097 Original-Authentication-Results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT038.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 70114ef5-c0d5-4a32-bedf-08d83d0a3ef0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lvPMzshAfb+s8JtLvQ6L+f+AVqI1ZLhqtMKNJCWlJjfqiwBzAQ07e7lvnP6dtzxSjkscT1MM9FHKPemuJ5VWnR4v6ZN/2kPsseJ/eUmXJx+vsbszuGfYxxZSZPl6yRRJiE/seOZ0Ta+lwzlhJ1U5S3nfS+CoCp1UNo8zZW4dMRVHBFsloTRsfnHLWXnkaTgE3AEfLdqY2B1YvWgAGFBgAhrZkwLGpZv2zCbTAwWaEINbuZT4E7XJ91DTVIJcV4wQJc3xgwToiWAz8QV9JHeyR6m0Y0VAIbWMsHOTCINFPFBNa1cK6To8ueN44wz2t4SUns2nQ2/tJL9q9lsOKBodk+8J5qEgsf75Fv871BfduzhEaN+XkPrxNRrhFUBbMm2CCGUV8fNTWvxsGrWeoRCZmw== X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFTY:; SFS:(4636009)(136003)(376002)(39860400002)(346002)(396003)(46966005)(82740400003)(47076004)(6512007)(8936002)(86362001)(186003)(6486002)(8676002)(36906005)(2906002)(70586007)(70206006)(82310400002)(5660300002)(33656002)(356005)(81166007)(83380400001)(36756003)(6862004)(478600001)(26005)(6506007)(53546011)(4326008)(2616005)(336012)(316002)(54906003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Aug 2020 08:49:17.5668 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4f288a86-caa8-44df-71d9-08d83d0a4437 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM5EUR03FT038.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3285 X-Spam-Status: No, score=-14.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Aug 2020 08:49:23 -0000 DQoNCj4gT24gNiBBdWcgMjAyMCwgYXQgMTg6NTksIEx1aXMgTWFjaGFkbyA8bHVpcy5tYWNoYWRv QGxpbmFyby5vcmc+IHdyb3RlOg0KPiANCj4gSSBpbml0aWFsbHkgbm90aWNlZCB0aGUgcHJvYmxl bSB3aXRoIHRoZSBhZGRpdGlvbiBvZg0KPiBnZGIuZHdhcmYyL2R3Mi1saW5lLW51bWJlci16ZXJv LmV4cC4gIFRoZSBmb2xsb3dpbmcgZmFpbHVyZXMgc2hvd2VkIHVwOg0KPiANCj4gRkFJTDogZ2Ri LmR3YXJmMi9kdzItbGluZS1udW1iZXItemVyby5leHA6IGNvbnRpbnVlIHRvIGJyZWFrcG9pbnQ6 IGJhcjENCj4gRkFJTDogZ2RiLmR3YXJmMi9kdzItbGluZS1udW1iZXItemVyby5leHA6IGJhcjEs IDFzdCBuZXh0DQo+IEZBSUw6IGdkYi5kd2FyZjIvZHcyLWxpbmUtbnVtYmVyLXplcm8uZXhwOiBi YXIxLCAybmQgbmV4dA0KPiBGQUlMOiBnZGIuZHdhcmYyL2R3Mi1saW5lLW51bWJlci16ZXJvLmV4 cDogY29udGludWUgdG8gYnJlYWtwb2ludDogYmFyMg0KPiBGQUlMOiBnZGIuZHdhcmYyL2R3Mi1s aW5lLW51bWJlci16ZXJvLmV4cDogYmFyMiwgMXN0IG5leHQNCj4gRkFJTDogZ2RiLmR3YXJmMi9k dzItbGluZS1udW1iZXItemVyby5leHA6IGJhcjIsIDJuZCBuZXh0DQo+IA0KPiBUaGV5IGhhcHBl biBiZWNhdXNlIEFBcmNoNjQncyBwcm9sb2d1ZSBhbmFseXplciBza2lwcyB0b28gbWFueSBpbnN0 cnVjdGlvbnMNCj4gYW5kIGVuZHMgdXAgaW5kaWNhdGluZyBhIHN0b3BwaW5nIHBvaW50IGZ1cnRo ZXIgaW50byB1c2VyIGNvZGUuDQo+IA0KPiBEdW1wIG9mIGFzc2VtYmxlciBjb2RlIGZvciBmdW5j dGlvbiBiYXIxOg0KPiAgIDB4MDAwMDAwMDAwMDAwMDZmOCA8KzA+OglzdHAJeDI5LCB4MzAsIFtz cCwgIy0xNl0hDQo+ICAgMHgwMDAwMDAwMDAwMDAwNmZjIDwrND46CW1vdgl4MjksIHNwDQo+ICAg MHgwMDAwMDAwMDAwMDAwNzAwIDwrOD46CW1vdgl3MCwgIzB4MSAgICAgICAgICAgICAgICAgICAJ Ly8gIzENCj4gICAweDAwMDAwMDAwMDAwMDA3MDQgPCsxMj46CWJsCTB4NmU0IDxmb28+DQo+ICAg MHgwMDAwMDAwMDAwMDAwNzA4IDwrMTY+Ogltb3YJdzAsICMweDIgICAgICAgICAgICAgICAgICAg CS8vICMyDQo+IA0KPiBXZSBzaG91bGQndmUgc3RvcHBlZCBhdCAweDcwMCwgYnV0IHRoZSBhbmFs eXplciBhY3R1YWxseSBza2lwcw0KPiB0aGF0IGluc3RydWN0aW9uIGFuZCBzdG9wcyBhdCAweDcw NC4gIFRoZW4gR0RCIGVuZHMgdXAgYWRqdXN0aW5nDQo+IHRoZSBhZGRyZXNzIGZ1cnRoZXIsIGFu ZCBwdXNoZXMgdGhlIHN0b3BwaW5nIHBvaW50IHRvIDB4NzA4IGJhc2VkIG9uIHRoZQ0KPiBTQUwg aW5mb3JtYXRpb24uDQo+IA0KPiBJJ20gbm90IHN1cmUgaWYgdGhpcyBhZGp1c3RtZW50IHRvIDB4 NzA4IGlzIGNvcnJlY3QgdGhvdWdoLCBhcyBpdCBlbmRzIHVwDQo+IHNraXBwaW5nIHBhc3QgYSBi cmFuY2guIEJ1dCBJJ20gbGVhdmluZyB0aGF0IGFzaWRlIGZvciBub3cuDQo+IA0KPiBPbmUgb3Ro ZXIgY29tcGxpY2F0aW5nIGZhY3RvciBpcyB0aGF0IEdDQyBzZWVtcyB0byBiZSBob2lzdGluZyB1 cCBpbnN0cnVjdGlvbnMNCj4gZnJvbSB1c2VyIGNvZGUsIG1peGluZyB0aGVtIHVwIHdpdGggcHJv bG9ndWUgaW5zdHJ1Y3Rpb25zLg0KDQpTYWRseSBJIGRvbuKAmXQgdGhpbmsgdGhlcmUgaXMgYW55 dGhpbmcgcHJldmVudGluZyBHQ0MgZG9pbmcgbW9yZSBvZiB0aGlzIGluIHRoZQ0KZnV0dXJlLiBG cm9tIHdoYXQgSSByZW1lbWJlciBvZiBHQ0MsIHRoZXJl4oCZcyBubyBleHBsaWNpdCBydWxlcyBp biB0aGUgY29kZQ0Kc3RvcHBpbmcgdGhlIHByb2xvZ3VlIGFuZCB0aGUgbWFpbiBib2R5IG1peGlu Zy4gSXQganVzdCBuZXZlciByZWFsbHkgbWl4ZXMNCmJlY2F1c2UgYWxtb3N0IGFsbCB0aGUgdGlt ZSB0aGVyZeKAmXMgbm8gcmVhbCBiZW5lZml0IG9mIGhvaXN0aW5nIGNvZGUgdGhhdCBoaWdoLg0K DQpJIHN1c3BlY3QgdGhlcmUgd2lsbCBiZSBtb3JlIGZpeGVzIHRvIHRoaXMgYXJlYSBhcyBHQ0Mg KGFuZCBsbHZtISkgZ2V0IG1vcmUNCnRyaWNrc3kgd2l0aCB0aGVpciBvcHRpbWlzYXRpb25zIGlu IHRoZSBmdXR1cmUuIE15IGNvbmNlcm4gaXMgdGhhdCB3ZeKAmWxsIGdldA0KdG8gYSBwb2ludCB3 aGVyZSBpdOKAmWxsIGJlIGFtYmlndW91cyBvbiB3aGVyZSBHREIgbmVlZHMgdG8gc3RvcC4gSWRl YWxseSBhIGJ1Zw0KY291bGQgYmUgcmFpc2VkIGFnYWluc3QgR0NDLCBidXQgaXTigJlkIHJlcXVp cmUgY2FyZWZ1bCB3b3JkaW5nIGFuZCBJIGRvdWJ0IGl04oCZZA0KZXZlciBnZXQgbG9va2VkIGF0 Lg0KDQo+IA0KPiBUaGUgZm9sbG93aW5nIHBhdGNoIGFkanVzdHMgdGhlIGhldXJpc3RpY3MgYSBs aXR0bGUgYml0LCBhbmQgdHJhY2tzIHdoZW4gdGhlDQo+IFNQIGFuZCBGUCBnZXQgdXNlZC4gIElm IHdlIG5vdGljZSBhbiBpbnN0cnVjdGlvbiB0aGF0IGlzIG5vdCBzdXBwb3NlZCB0byBiZQ0KPiBp biB0aGUgcHJvbG9ndWUsIGFuZCB0aGlzIGhhcHBlbnMgKmFmdGVyKiBTUC9GUCBhZGp1c3RtZW50 cyBhbmQgc2F2aW5nIG9mDQo+IHJlZ2lzdGVycywgd2Ugc3RvcCB0aGUgYW5hbHlzaXMuDQo+IA0K PiBUaGlzIG1lYW5zLCBmb3IgUFIyNjMxMCwgdGhhdCB3ZSB3aWxsIG5vdyBzdG9wIGF0IDB4NzAw Lg0KDQpPaywgdGhhdCBzZWVtcyByZWFzb25hYmxlLg0KDQpNeSBvdGhlciBjb25jZXJuIGlzIHRo ZSBwcm9sb2d1ZSBhbmFseXNlciBpcyBqdXN0IGdvaW5nIHRvIGdyb3cgaW4gc2l6ZS9jb21wbGV4 aXR5LA0KYnV0IEkgY2Fu4oCZdCBzZWUgYSB3YXkgYXJvdW5kIHRoYXQuDQoNCg0KPiANCj4gSSd2 ZSBhbHNvIGFkZGVkIGEgZmV3IG1vcmUgdW5pdCB0ZXN0cyB0byBtYWtlIHN1cmUgdGhlIHVwZGF0 ZWQgYmVoYXZpb3IgaXMNCj4gdmFsaWRhdGVkLg0KPiANCj4gZ2RiL0NoYW5nZUxvZzoNCj4gDQo+ IFlZWVktTU0tREQgIEx1aXMgTWFjaGFkbyAgPGx1aXMubWFjaGFkb0BsaW5hcm8ub3JnPg0KPiAN Cj4gCVBSIGdkYi8yNjMxMA0KPiANCj4gCSogYWFyY2g2NC10ZGVwLmMgKGFhcmNoNjRfYW5hbHl6 ZV9wcm9sb2d1ZSk6IFRyYWNrIHVzZSBvZiBTUC9GUCBhbmQNCj4gCWFjdCBhY2NvcmRpbmdseS4N Cj4gCShhYXJjaDY0X2FuYWx5emVfcHJvbG9ndWVfdGVzdCk6IEFkZCBtb3JlIHVuaXQgdGVzdHMg dG8gZXhlcmNpc2UNCj4gCW1vdnovc3RyL3N0dXIvc3RwIHNraXBwaW5nIGJlaGF2aW9yLg0KPiAt LS0NCj4gZ2RiL2FhcmNoNjQtdGRlcC5jIHwgMTM0ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKw0KPiAxIGZpbGUgY2hhbmdlZCwgMTM0IGluc2VydGlvbnMoKykN Cj4gDQo+IGRpZmYgLS1naXQgYS9nZGIvYWFyY2g2NC10ZGVwLmMgYi9nZGIvYWFyY2g2NC10ZGVw LmMNCj4gaW5kZXggNWU3ZDBkMGI4Ni4uNDViMmI0MjdjMiAxMDA2NDQNCj4gLS0tIGEvZ2RiL2Fh cmNoNjQtdGRlcC5jDQo+ICsrKyBiL2dkYi9hYXJjaDY0LXRkZXAuYw0KPiBAQCAtMjg3LDYgKzI4 NywxMiBAQCBhYXJjaDY0X2FuYWx5emVfcHJvbG9ndWUgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNo LA0KPiB7DQo+ICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXJfZm9yX2NvZGUgPSBnZGJhcmNo X2J5dGVfb3JkZXJfZm9yX2NvZGUgKGdkYmFyY2gpOw0KPiAgIGludCBpOw0KPiArDQo+ICsgIC8q IFdoZXRoZXIgdGhlIHN0YWNrIGhhcyBiZWVuIHNldC4gIFRoaXMgc2hvdWxkIGJlIHRydWUgd2hl biB3ZSBub3RpY2UgYSBTUA0KPiArICAgICB0byBGUCBtb3ZlIG9yIGlmIHdlIGFyZSB1c2luZyB0 aGUgU1AgYXMgdGhlIGJhc2UgcmVnaXN0ZXIgZm9yIHN0b3JpbmcNCj4gKyAgICAgZGF0YSwgaW4g Y2FzZSB0aGUgRlAgaXMgb21taXR0ZWQuICAqLw0KPiArICBib29sIHNlZW5fc3RhY2tfc2V0ID0g ZmFsc2U7DQo+ICsNCj4gICAvKiBUcmFjayBYIHJlZ2lzdGVycyBhbmQgRCByZWdpc3RlcnMgaW4g cHJvbG9ndWUuICAqLw0KPiAgIHB2X3QgcmVnc1tBQVJDSDY0X1hfUkVHSVNURVJfQ09VTlQgKyBB QVJDSDY0X0RfUkVHSVNURVJfQ09VTlRdOw0KPiANCj4gQEAgLTMyNiw2ICszMzIsMTAgQEAgYWFy Y2g2NF9hbmFseXplX3Byb2xvZ3VlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwNCj4gCSAgICAg IHJlZ3NbcmRdID0gcHZfYWRkX2NvbnN0YW50IChyZWdzW3JuXSwNCj4gCQkJCQkgIC1pbnN0Lm9w ZXJhbmRzWzJdLmltbS52YWx1ZSk7DQo+IAkgICAgfQ0KPiArDQo+ICsJICAvKiBEaWQgd2UgbW92 ZSBTUCB0byBGUD8gICovDQo+ICsJICBpZiAocm4gPT0gQUFSQ0g2NF9TUF9SRUdOVU0gJiYgcmQg PT0gQUFSQ0g2NF9GUF9SRUdOVU0pDQo+ICsJICAgIHNlZW5fc3RhY2tfc2V0ID0gdHJ1ZTsNCj4g CX0NCj4gICAgICAgZWxzZSBpZiAoaW5zdC5vcGNvZGUtPmljbGFzcyA9PSBwY3JlbGFkZHINCj4g CSAgICAgICAmJiBpbnN0Lm9wZXJhbmRzWzFdLnR5cGUgPT0gQUFSQ0g2NF9PUE5EX0FERFJfQURS UCkNCj4gQEAgLTM1OCw2ICszNjgsMTIgQEAgYWFyY2g2NF9hbmFseXplX3Byb2xvZ3VlIChzdHJ1 Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwNCj4gICAgICAgZWxzZSBpZiAoaW5zdC5vcGNvZGUtPm9wID09 IE9QX01PVlopDQo+IAl7DQo+IAkgIGdkYl9hc3NlcnQgKGluc3Qub3BlcmFuZHNbMF0udHlwZSA9 PSBBQVJDSDY0X09QTkRfUmQpOw0KPiArDQo+ICsJICAvKiBJZiB0aGlzIHNob3dzIHVwIGJlZm9y ZSB3ZSBzZXQgdGhlIHN0YWNrLCBrZWVwIGdvaW5nLiAgT3RoZXJ3aXNlDQo+ICsJICAgICBzdG9w IHRoZSBhbmFseXNpcy4gICovDQo+ICsJICBpZiAoc2Vlbl9zdGFja19zZXQpDQo+ICsJICAgIGJy ZWFrOw0KPiArDQo+IAkgIHJlZ3NbaW5zdC5vcGVyYW5kc1swXS5yZWcucmVnbm9dID0gcHZfdW5r bm93biAoKTsNCj4gCX0NCj4gICAgICAgZWxzZSBpZiAoaW5zdC5vcGNvZGUtPmljbGFzcyA9PSBs b2dfc2hpZnQNCj4gQEAgLTM5OSw2ICs0MTUsMTAgQEAgYWFyY2g2NF9hbmFseXplX3Byb2xvZ3Vl IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwNCj4gCSAgc3RhY2suc3RvcmUNCj4gCSAgICAocHZf YWRkX2NvbnN0YW50IChyZWdzW3JuXSwgaW5zdC5vcGVyYW5kc1sxXS5hZGRyLm9mZnNldC5pbW0p LA0KPiAJICAgICBzaXplLCByZWdzW3J0XSk7DQo+ICsNCj4gKwkgIC8qIEFyZSB3ZSBzdG9yaW5n IHdpdGggU1AgYXMgYSBiYXNlPyAgKi8NCj4gKwkgIGlmIChybiA9PSBBQVJDSDY0X1NQX1JFR05V TSkNCj4gKwkgICAgc2Vlbl9zdGFja19zZXQgPSB0cnVlOw0KPiAJfQ0KPiAgICAgICBlbHNlIGlm ICgoaW5zdC5vcGNvZGUtPmljbGFzcyA9PSBsZHN0cGFpcl9vZmYNCj4gCQl8fCAoaW5zdC5vcGNv ZGUtPmljbGFzcyA9PSBsZHN0cGFpcl9pbmRleGVkDQo+IEBAIC00NDIsNiArNDYyLDEwIEBAIGFh cmNoNjRfYW5hbHl6ZV9wcm9sb2d1ZSAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsDQo+IAkgIGlm IChpbnN0Lm9wZXJhbmRzWzJdLmFkZHIud3JpdGViYWNrKQ0KPiAJICAgIHJlZ3Nbcm5dID0gcHZf YWRkX2NvbnN0YW50IChyZWdzW3JuXSwgaW1tKTsNCj4gDQo+ICsJICAvKiBJZ25vcmUgdGhlIGlu c3RydWN0aW9uIHRoYXQgYWxsb2NhdGVzIHN0YWNrIHNwYWNlIGFuZCBzZXRzDQo+ICsJICAgICB0 aGUgU1AuICAqLw0KPiArCSAgaWYgKHJuID09IEFBUkNINjRfU1BfUkVHTlVNICYmICFpbnN0Lm9w ZXJhbmRzWzJdLmFkZHIud3JpdGViYWNrKQ0KPiArCSAgICBzZWVuX3N0YWNrX3NldCA9IHRydWU7 DQo+IAl9DQo+ICAgICAgIGVsc2UgaWYgKChpbnN0Lm9wY29kZS0+aWNsYXNzID09IGxkc3RfaW1t OSAvKiBTaWduZWQgaW1tZWRpYXRlLiAgKi8NCj4gCQl8fCAoaW5zdC5vcGNvZGUtPmljbGFzcyA9 PSBsZHN0X3BvcyAvKiBVbnNpZ25lZCBpbW1lZGlhdGUuICAqLw0KPiBAQCAtNDY0LDYgKzQ4OCwx MCBAQCBhYXJjaDY0X2FuYWx5emVfcHJvbG9ndWUgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLA0K PiAJICBzdGFjay5zdG9yZSAocHZfYWRkX2NvbnN0YW50IChyZWdzW3JuXSwgaW1tKSwgc2l6ZSwg cmVnc1tydF0pOw0KPiAJICBpZiAoaW5zdC5vcGVyYW5kc1sxXS5hZGRyLndyaXRlYmFjaykNCj4g CSAgICByZWdzW3JuXSA9IHB2X2FkZF9jb25zdGFudCAocmVnc1tybl0sIGltbSk7DQo+ICsNCj4g KwkgIC8qIEFyZSB3ZSBzdG9yaW5nIHdpdGggU1AgYXMgYSBiYXNlPyAgKi8NCj4gKwkgIGlmIChy biA9PSBBQVJDSDY0X1NQX1JFR05VTSkNCj4gKwkgICAgc2Vlbl9zdGFja19zZXQgPSB0cnVlOw0K PiAJfQ0KPiAgICAgICBlbHNlIGlmIChpbnN0Lm9wY29kZS0+aWNsYXNzID09IHRlc3RicmFuY2gp DQo+IAl7DQo+IEBAIC02OTAsNiArNzE4LDExMiBAQCBhYXJjaDY0X2FuYWx5emVfcHJvbG9ndWVf dGVzdCAodm9pZCkNCj4gICAgICAgfQ0KPiAgIH0NCj4gDQo+ICsgIC8qIFRlc3QgaGFuZGxpbmcg b2YgbW92eiBiZWZvcmUgc2V0dGluZyB0aGUgZnJhbWUgcG9pbnRlci4gICovDQo+ICsgIHsNCj4g KyAgICBzdGF0aWMgY29uc3QgdWludDMyX3QgaW5zbnNbXSA9IHsNCj4gKyAgICAgIDB4YTliZjdi ZmQsIC8qIHN0cCAgICAgeDI5LCB4MzAsIFtzcCwgIy0xNl0hICovDQo+ICsgICAgICAweDUyODAw MDIwLCAvKiBtb3YgICAgIHcwLCAjMHgxICovDQo+ICsgICAgICAweDkxMDAwM2ZkLCAvKiBtb3Yg ICAgIHgyOSwgc3AgKi8NCj4gKyAgICAgIDB4NTI4MDAwYTIsIC8qIG1vdiAgICAgdzIsICMweDUg Ki8NCg0KQ2FuIHlvdSBhZGQgYSBjb21tZW50IGVpdGhlciBoZXJlIC4uLg0KDQo+ICsgICAgICAw eDk3ZmZmZmY4LCAvKiBibCAgICAgIDZlNCAqLw0KPiArICAgIH07DQo+ICsNCj4gKyAgICBpbnN0 cnVjdGlvbl9yZWFkZXJfdGVzdCByZWFkZXIgKGluc25zKTsNCj4gKw0KPiArICAgIHRyYWRfZnJh bWVfcmVzZXRfc2F2ZWRfcmVncyAoZ2RiYXJjaCwgY2FjaGUuc2F2ZWRfcmVncyk7DQo+ICsgICAg Q09SRV9BRERSIGVuZCA9IGFhcmNoNjRfYW5hbHl6ZV9wcm9sb2d1ZSAoZ2RiYXJjaCwgMCwgMTI4 LCAmY2FjaGUsIHJlYWRlcik7DQo+ICsNCj4gKyAgICBTRUxGX0NIRUNLIChlbmQgPT0gKDQgLSAx KSAqIDQpOw0KDQouLi4gb3IgaGVyZSB0byBtYWtlIGl0IGNsZWFyIHdoaWNoIGluc3RydWN0aW9u IHlvdSBleHBlY3QgZW5kIHRvIGJlIG9uLg0KDQpMaWtld2lzZSBmb3IgdGhlIG90aGVycyBiZWxv dy4NCg0KDQpPdGhlcndpc2UsIGV2ZXJ5dGhpbmcgZWxzZSBsb29rcyBnb29kLg0KDQoNCj4gKyAg ICBTRUxGX0NIRUNLIChjYWNoZS5mcmFtZXJlZyA9PSBBQVJDSDY0X0ZQX1JFR05VTSk7DQo+ICsg ICAgU0VMRl9DSEVDSyAoY2FjaGUuZnJhbWVzaXplID09IDE2KTsNCj4gKyAgfQ0KPiArDQo+ICsg IC8qIFRlc3QgaGFuZGxpbmcgb2YgbW92ei9zdHAgd2hlbiB1c2luZyB0aGUgc3RhY2sgcG9pbnRl ciBhcyBmcmFtZQ0KPiArICAgICBwb2ludGVyLiAgKi8NCj4gKyAgew0KPiArICAgIHN0YXRpYyBj b25zdCB1aW50MzJfdCBpbnNuc1tdID0gew0KPiArICAgICAgMHhhOWJjN2JmZCwgLyogc3RwICAg ICB4MjksIHgzMCwgW3NwLCAjLTY0XSEgKi8NCj4gKyAgICAgIDB4NTI4MDAwMjAsIC8qIG1vdiAg ICAgdzAsICMweDEgKi8NCj4gKyAgICAgIDB4MjkwMjA3ZTAsIC8qIHN0cCAgICAgdzAsIHcxLCBb c3AsICMxNl0gKi8NCj4gKyAgICAgIDB4YTkwMThmZTIsIC8qIHN0cCAgICAgeDIsIHgzLCBbc3As ICMyNF0gKi8NCj4gKyAgICAgIDB4NTI4MDAwYTIsIC8qIG1vdiAgICAgdzIsICMweDUgKi8NCj4g KyAgICAgIDB4OTdmZmZmZjgsIC8qIGJsICAgICAgNmU0ICovDQo+ICsgICAgfTsNCj4gKw0KPiAr ICAgIGluc3RydWN0aW9uX3JlYWRlcl90ZXN0IHJlYWRlciAoaW5zbnMpOw0KPiArDQo+ICsgICAg dHJhZF9mcmFtZV9yZXNldF9zYXZlZF9yZWdzIChnZGJhcmNoLCBjYWNoZS5zYXZlZF9yZWdzKTsN Cj4gKyAgICBDT1JFX0FERFIgZW5kID0gYWFyY2g2NF9hbmFseXplX3Byb2xvZ3VlIChnZGJhcmNo LCAwLCAxMjgsICZjYWNoZSwgcmVhZGVyKTsNCj4gKw0KPiArICAgIFNFTEZfQ0hFQ0sgKGVuZCA9 PSAoNSAtIDEpICogNCk7DQo+ICsgICAgU0VMRl9DSEVDSyAoY2FjaGUuZnJhbWVyZWcgPT0gQUFS Q0g2NF9TUF9SRUdOVU0pOw0KPiArICAgIFNFTEZfQ0hFQ0sgKGNhY2hlLmZyYW1lc2l6ZSA9PSA2 NCk7DQo+ICsgIH0NCj4gKw0KPiArICAvKiBUZXN0IGhhbmRsaW5nIG9mIG1vdnovc3RyIHdoZW4g dXNpbmcgdGhlIHN0YWNrIHBvaW50ZXIgYXMgZnJhbWUNCj4gKyAgICAgcG9pbnRlciAgKi8NCj4g KyAgew0KPiArICAgIHN0YXRpYyBjb25zdCB1aW50MzJfdCBpbnNuc1tdID0gew0KPiArICAgICAg MHhhOWJjN2JmZCwgLyogc3RwICAgICB4MjksIHgzMCwgW3NwLCAjLTY0XSEgKi8NCj4gKyAgICAg IDB4NTI4MDAwMjAsIC8qIG1vdiAgICAgdzAsICMweDEgKi8NCj4gKyAgICAgIDB4YjkwMDJiZTQs IC8qIHN0ciAgICAgdzQsIFtzcCwgIzQwXSAqLw0KPiArICAgICAgMHhmOTAwMWJlNSwgLyogc3Ry ICAgICB4NSwgW3NwLCAjNDhdICovDQo+ICsgICAgICAweDUyODAwMGEyLCAvKiBtb3YgICAgIHcy LCAjMHg1ICovDQo+ICsgICAgICAweDk3ZmZmZmY4LCAvKiBibCAgICAgIDZlNCAqLw0KPiArICAg IH07DQo+ICsNCj4gKyAgICBpbnN0cnVjdGlvbl9yZWFkZXJfdGVzdCByZWFkZXIgKGluc25zKTsN Cj4gKw0KPiArICAgIHRyYWRfZnJhbWVfcmVzZXRfc2F2ZWRfcmVncyAoZ2RiYXJjaCwgY2FjaGUu c2F2ZWRfcmVncyk7DQo+ICsgICAgQ09SRV9BRERSIGVuZCA9IGFhcmNoNjRfYW5hbHl6ZV9wcm9s b2d1ZSAoZ2RiYXJjaCwgMCwgMTI4LCAmY2FjaGUsIHJlYWRlcik7DQo+ICsNCj4gKyAgICBTRUxG X0NIRUNLIChlbmQgPT0gKDUgLSAxKSAqIDQpOw0KPiArICAgIFNFTEZfQ0hFQ0sgKGNhY2hlLmZy YW1lcmVnID09IEFBUkNINjRfU1BfUkVHTlVNKTsNCj4gKyAgICBTRUxGX0NIRUNLIChjYWNoZS5m cmFtZXNpemUgPT0gNjQpOw0KPiArICB9DQo+ICsNCj4gKyAgLyogVGVzdCBoYW5kbGluZyBvZiBt b3Z6L3N0dXIgd2hlbiB1c2luZyB0aGUgc3RhY2sgcG9pbnRlciBhcyBmcmFtZQ0KPiArICAgICBw b2ludGVyLiAgKi8NCj4gKyAgew0KPiArICAgIHN0YXRpYyBjb25zdCB1aW50MzJfdCBpbnNuc1td ID0gew0KPiArICAgICAgMHhhOWJjN2JmZCwgLyogc3RwICAgICB4MjksIHgzMCwgW3NwLCAjLTY0 XSEgKi8NCj4gKyAgICAgIDB4NTI4MDAwMjAsIC8qIG1vdiAgICAgdzAsICMweDEgKi8NCj4gKyAg ICAgIDB4YjgwMzQzZTYsIC8qIHN0dXIgICAgdzYsIFtzcCwgIzUyXSAqLw0KPiArICAgICAgMHhm ODAzODNlNywgLyogc3R1ciAgICB4NywgW3NwLCAjNTZdICovDQo+ICsgICAgICAweDUyODAwMGEy LCAvKiBtb3YgICAgIHcyLCAjMHg1ICovDQo+ICsgICAgICAweDk3ZmZmZmY4LCAvKiBibCAgICAg IDZlNCAqLw0KPiArICAgIH07DQo+ICsNCj4gKyAgICBpbnN0cnVjdGlvbl9yZWFkZXJfdGVzdCBy ZWFkZXIgKGluc25zKTsNCj4gKw0KPiArICAgIHRyYWRfZnJhbWVfcmVzZXRfc2F2ZWRfcmVncyAo Z2RiYXJjaCwgY2FjaGUuc2F2ZWRfcmVncyk7DQo+ICsgICAgQ09SRV9BRERSIGVuZCA9IGFhcmNo NjRfYW5hbHl6ZV9wcm9sb2d1ZSAoZ2RiYXJjaCwgMCwgMTI4LCAmY2FjaGUsIHJlYWRlcik7DQo+ ICsNCj4gKyAgICBTRUxGX0NIRUNLIChlbmQgPT0gKDUgLSAxKSAqIDQpOw0KPiArICAgIFNFTEZf Q0hFQ0sgKGNhY2hlLmZyYW1lcmVnID09IEFBUkNINjRfU1BfUkVHTlVNKTsNCj4gKyAgICBTRUxG X0NIRUNLIChjYWNoZS5mcmFtZXNpemUgPT0gNjQpOw0KPiArICB9DQo+ICsNCj4gKyAgLyogVGVz dCBoYW5kbGluZyBvZiBtb3Z6IHdoZW4gdGhlcmUgaXMgbm8gZnJhbWUgcG9pbnRlciBzZXQgb3Ig bm8gc3RhY2sNCj4gKyAgICAgcG9pbnRlciB1c2VkLiAgKi8NCj4gKyAgew0KPiArICAgIHN0YXRp YyBjb25zdCB1aW50MzJfdCBpbnNuc1tdID0gew0KPiArICAgICAgMHhhOWJmN2JmZCwgLyogc3Rw ICAgICB4MjksIHgzMCwgW3NwLCAjLTE2XSEgKi8NCj4gKyAgICAgIDB4NTI4MDAwMjAsIC8qIG1v diAgICAgdzAsICMweDEgKi8NCj4gKyAgICAgIDB4NTI4MDAwYTIsIC8qIG1vdiAgICAgdzIsICMw eDUgKi8NCj4gKyAgICAgIDB4OTdmZmZmZjgsIC8qIGJsICAgICAgNmU0ICovDQo+ICsgICAgfTsN Cj4gKw0KPiArICAgIGluc3RydWN0aW9uX3JlYWRlcl90ZXN0IHJlYWRlciAoaW5zbnMpOw0KPiAr DQo+ICsgICAgdHJhZF9mcmFtZV9yZXNldF9zYXZlZF9yZWdzIChnZGJhcmNoLCBjYWNoZS5zYXZl ZF9yZWdzKTsNCj4gKyAgICBDT1JFX0FERFIgZW5kID0gYWFyY2g2NF9hbmFseXplX3Byb2xvZ3Vl IChnZGJhcmNoLCAwLCAxMjgsICZjYWNoZSwgcmVhZGVyKTsNCj4gKw0KPiArICAgIFNFTEZfQ0hF Q0sgKGVuZCA9PSAoNCAtIDEpICogNCk7DQo+ICsgICAgU0VMRl9DSEVDSyAoY2FjaGUuZnJhbWVy ZWcgPT0gQUFSQ0g2NF9TUF9SRUdOVU0pOw0KPiArICAgIFNFTEZfQ0hFQ0sgKGNhY2hlLmZyYW1l c2l6ZSA9PSAxNik7DQo+ICsgIH0NCj4gKw0KPiAgIC8qIFRlc3QgYSBwcm9sb2d1ZSBpbiB3aGlj aCB0aGVyZSBpcyBhIHJldHVybiBhZGRyZXNzIHNpZ25pbmcgaW5zdHJ1Y3Rpb24uICAqLw0KPiAg IGlmICh0ZGVwLT5oYXNfcGF1dGggKCkpDQo+ICAgICB7DQo+IC0tIA0KPiAyLjE3LjENCj4gDQoN Cg==