From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10042.outbound.protection.outlook.com [40.107.1.42]) by sourceware.org (Postfix) with ESMTPS id 5C0BC3898033 for ; Thu, 24 Jun 2021 15:19:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5C0BC3898033 Received: from AM7PR04CA0015.eurprd04.prod.outlook.com (2603:10a6:20b:110::25) by AM0PR08MB3217.eurprd08.prod.outlook.com (2603:10a6:208:5e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.19; Thu, 24 Jun 2021 15:19:13 +0000 Received: from AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:110:cafe::99) by AM7PR04CA0015.outlook.office365.com (2603:10a6:20b:110::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18 via Frontend Transport; Thu, 24 Jun 2021 15:19:13 +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=pass 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 AM5EUR03FT024.mail.protection.outlook.com (10.152.16.175) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18 via Frontend Transport; Thu, 24 Jun 2021 15:19:12 +0000 Received: ("Tessian outbound 2df94acd389f:v96"); Thu, 24 Jun 2021 15:19:11 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 691995fe3d8221a8 X-CR-MTA-TID: 64aa7808 Received: from 0d10cb4c7054.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C29AF5B6-13FF-48C7-958A-384407542321.1; Thu, 24 Jun 2021 15:18:29 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0d10cb4c7054.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 24 Jun 2021 15:18:29 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R+RMRHKmwuaXR1ZiUamntjuXg1818Uiaj+c//h/gMpvpUSXllUovLinRjvgK9F1eAhFxzP4DHT0Y35YYSj09YzttiuNgXAgJYleTpGvJgHNG+cX6RkBzUWRQGnRilUAPgjb3oIAGMS18fvvyGQqNXx8IR0Uek0i9BIJSq/dnam8J6NR+eLbS6oz1pzd9P/9Hh5DJHsj4ywUCaJKJQL103sE7ljMZiMzh4Oyh8d4cqUBSMIm9xXge3uiU5q5kfD0/8Aj3gfmYeRU6D4/Qd2zjr0ERNgw12AsiAFGprWnbq38Vc93cHJ541uXlGDxO7bIxMHG0h31GSsLoo4qgQSokqg== 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=SCvJyhpJw6QTpjSWvWwjFHvSIURzLzrjSo1OZ/VOZ+0=; b=lLPRBPQdYaPMhH4Bv2BTTsT6TmRjgkf4ViM/fuMbioaw3Iu1stWPpIdCLcAkrroVDG21nbXa8DE6nKeXTx6fw4cPCSwW8J4i2qIqffJLKyWgA8sjolPHEVqSmiisu9KmvtzG2rojXxCtaKjPOc49Ke+QP/yjBgOEkvWqfrUQURXkU3GcKPW6FrtICx0Su50x7G6Bfv7Jn6MPiZRSUcV+uVQ76AzWOzJD1ExRO1c70IbwbsjaJCDM+onQNre11L3Uf1BJ0+ElrTg3O2o9o82nLm/SCmDpeegy5u9DOOwqCdA3guZ0poR5ltsXg9wtjjEK74TmnNQ/eZW3csOWXqAVuA== 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 Received: from AM6PR08MB3957.eurprd08.prod.outlook.com (2603:10a6:20b:a2::14) by AM6PR08MB4600.eurprd08.prod.outlook.com (2603:10a6:20b:84::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.19; Thu, 24 Jun 2021 15:18:26 +0000 Received: from AM6PR08MB3957.eurprd08.prod.outlook.com ([fe80::2ddf:ff23:4d65:c35]) by AM6PR08MB3957.eurprd08.prod.outlook.com ([fe80::2ddf:ff23:4d65:c35%7]) with mapi id 15.20.4242.023; Thu, 24 Jun 2021 15:18:26 +0000 From: Alan Hayward To: Luis Machado CC: "gdb-patches\\@sourceware.org" , Simon Marchi , "jhb@freebsd.org" , "david.spickett@linaro.org" , Catalin Marinas Subject: Re: [PATCH,v5][AArch64] MTE corefile support Thread-Topic: [PATCH,v5][AArch64] MTE corefile support Thread-Index: AQHXVw3u8p4jXheddkKwkmsJmFa2rasjVFmAgAAKYoCAAAuDgA== Date: Thu, 24 Jun 2021 15:18:26 +0000 Message-ID: References: <20210518202047.3492211-1-luis.machado@linaro.org> <20210601174519.4157316-1-luis.machado@linaro.org> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3654.100.0.2.22) 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.24.190.200] x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: f64f2593-56b5-436e-5507-08d937236c08 x-ms-traffictypediagnostic: AM6PR08MB4600:|AM0PR08MB3217: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:635;OLM:635; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 4lwqbAdxBCB6NRRJ0bTPoo6rCHatH7yGsEyUxP5OguXj1oQgXT/i+dXp2xjgYJxss01IObOmCJQ2gv6z6Qd7qtnk4GAg/8FPLwMjdI1w7oN0lYJvZZtHy4TydMG+h59czfxcTSVwDKazXwmVpiKrD+tHZGFlfQ8swMK4FPyowZrfakWkSnCuLoed/8r5jzlsulvYH0stWVzg/+NqJEArW1FLkDb7I8XhcgqeUW1fXqk8NhHCrEAT+8p2a5stdi52Ekq0e8QXzDleq5WW+6kPULmrBHKeNuRDU9l10lfjPYHyQ+fxdrEBrn7G1CWgnb0e+mSGZXWThpRz71ji1FIc5QttdOa477iUXz1JHuO42+AASDInhAjgl0OzKSuc2bu1wd5y6O+1TBcsJ+nw3lWTBXlxom6Jd6EK66J8UjcCNORvHvdqqOay0wU9DXhEZYgetkTFJ2DMPWRfSnb9QVyEnPWelfXiCyl9ETgVmkW6oFkuFbZr2w5D7yLLFsK0HACAco+rC1Cw82tE0eDOQosh0zv6vizPDPGgI3qtIP+CnYawQvThKhLFOsIBMZQIf6UKiw/Ri2PuQTrYs3s8Lj+ZPI6Je2+iXZ/aPx0XLtPwlZZUVxbHpIbQMrRsEW0WwzkW5WnKio3MqAIqgvTj0Ig4m4JgyIqEdw0/mqb1kW/oPEs= 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; SFS:(4636009)(376002)(136003)(346002)(366004)(396003)(39850400004)(122000001)(38100700002)(8676002)(478600001)(8936002)(54906003)(86362001)(316002)(71200400001)(2616005)(5660300002)(33656002)(6506007)(36756003)(186003)(26005)(66946007)(6486002)(76116006)(91956017)(66476007)(6512007)(66446008)(64756008)(66556008)(6916009)(2906002)(53546011)(4326008)(83380400001)(45980500001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cnBIbVZNdWMyRzJnS2ZIWW5FSkdqYjFVcEhnSHpjR0FmUlQ1VU5RZ2NPZEpu?= =?utf-8?B?dmoxMWV1OHBjV0VoeEZMd3BCQWM3SUZmcTlNY1VSKzM1bUx6NzczdFBBYVdm?= =?utf-8?B?M0lxVXhEK0xtRUlic2s5UCtCRUNRZjB3WFJPcmxuRnZXNXpXYWtXbkIzc0tB?= =?utf-8?B?Y0NQdU9KVytRRGV4TE5WNXlLWCtlc00vRHNiT1RYY2pvM0w0d3QzOTBTdWJz?= =?utf-8?B?czYrSGZ4M0tkbU1SRVRKVlFYOUwzK2J2dVhDd0d0RU53UExhRFQxdFhhRk1t?= =?utf-8?B?QnpyYXJTT0RhUzA2c3ZqN3ZTSnVXV3RGdHlTYlkyYmF4dVBKdFM1WHlVV20z?= =?utf-8?B?Mit5VjRDUmoyVXo3Yk96d2gwRHp3V2ZtZEdVS25EcVdkYkpUUEJzODhLc2gv?= =?utf-8?B?NW1FMk5GZmJyODZlNmw1dU9NcUFXUkJNcFpPMHVDRm56U2loMWIyMDBlaTVG?= =?utf-8?B?K0swOVRTMWlDa09WeXNIWitleS9lbERYNHhlb2hHMmh3TWtWTjRwVktCbzgx?= =?utf-8?B?YW9oR0U4NExMQmUxbHdxV2VIbGNzVmpSVTF2SVVQT0ptYmJ2NXVsVmJXdFZD?= =?utf-8?B?QkR5bUNNbGFEUlQwSVJEZy9vby9YUnVSc3ZhK0xLMnFnTmdyNlNaa1Q4UTdI?= =?utf-8?B?aHhvYXBITEcxS3pJQmo1UmlQQXRTZUcyV1dZY2IyVG5oWGFYZWtrYXVldFJz?= =?utf-8?B?UHNxcVV6ZUxqeFkweEswWGxzZWc0WHd2b2ZSVjhwQ04yT2xCSWxYYkN4RUFV?= =?utf-8?B?cnpXQ3V2S3h6TTBMemxlaC84MFNuaVpoeFg4cDUwa0JaemhzcmZ6QkhJMXZv?= =?utf-8?B?S3NDU1FQRXJFNXFUOFBIK1RwcUwyUjdZOXNmc3JmSkRhWTByL3lzK05mYldY?= =?utf-8?B?bERGSVdLeVJtSTVmQ204QUhZQWJsVmhyUU1mcm9YYkFyZzNKWENwVzNhcnFh?= =?utf-8?B?UEx1ZFdZc243b2FNZlRaejlLVmJYQU1jZnlPRWlaNXh3NUFRK1JCb1VBbzNT?= =?utf-8?B?Zmx1a010NWlYby96VEJ0UlRqZ0lpeFJPdGNXZ0RoeEdtMGlWUHZJaXI5N0JZ?= =?utf-8?B?K1BUMzBITUtaZDVKYVk0ekJkdU5nNnpHdXhxY2txUExOYkZ0aGtNbWlTT3Fr?= =?utf-8?B?MU9uS2x1bHFSRXhsQVhiYXNOdWFSZGJ3TFNFK1lvQTZJNXdETHo4aHgzUHBL?= =?utf-8?B?NFJ5R1RPdlp5Qno1dk1LUzU3K3N2TkdyR0V6dFVMQmNYN2dFQWlNNUR4eDcy?= =?utf-8?B?VHR3VWpYRVdQb0I5d0pvemM5TGJmR1lpZGpQL2lZeGQ2MENvR01LQ0xDOW5u?= =?utf-8?B?MVMvL1NwTjIwWG96WTdueDY2QjFrRVFxdmIvWEpkUHJQYXBZdC9kM0tQd2Ra?= =?utf-8?B?MVYrMk52RDJobzNFV1pvbyt5djcvNkNJcHNOVU5jVWJtcnRHSmlLSlAzbkRn?= =?utf-8?B?TVZ5UmdKa3NUNjBZYnlndTlkcWgyOTJNTis5WjZoaXEwaGRuNjRpbk5tNDBZ?= =?utf-8?B?ZHFBTnNuU2tkK3ZOdlRxNjJ1Rnp2K0NyQzF1b3YwcWU2ampnYjVDeEoxMGli?= =?utf-8?B?d2RPSTNlQ2FQTTJMY0tpTktQUlFjT3E5TDkxNnpuQUo1WWt4NSswM2I0T0Vz?= =?utf-8?B?RjJxbVlPYnRUR08rWjNqVjFPMkRhckV2VDdvOWNObTlMV3F0Y004RStaMUla?= =?utf-8?B?b3g0QXUwMVAvK3ZvNjJYejlIWnErMlV3NVhBM0lJTktLdTh0bjRUSzNNbXo3?= =?utf-8?Q?ykAJXQsQmJadhh7j049CyJ9aJtFWgf1wq7oF12J?= MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4600 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: AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 0b3b0c8f-fc3d-44ac-9ab2-08d93723506a X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: i+vPO6qK4MVz9NJE/yi0jha+ignq8ufpdjG9Ld4NCbnXXIybnaysVPZyo97vsenfVZZMEPtlBjPzncQ33proJ9qYawDF91nygdZajfU2KMuiJBBL2vK1WdVbMbIyEu0yOJw8MktaNlFxloE22+UF/V0TqUGQgPqbFM+OzPFPYEnu9xCfZV7M0Gwz/ztHBveDcoHmHp71hoU9uJl0sZpd8OVX9w0bTVLduhzhd2VtJdE+e4h9RIRHFsI3SwF6PoWmph5y4tLyQUuGJyQF1JQ0Q36Kfh7UjZdfAtaY7l7rHbHI8GJ0gJ6G+BQY1cytx3TESiAGpPKlX1bCXiEqasnvRno4+ldp5sBLPJc8gakJWGdG1nCb08DNcHGuvnZy0SNx3JqBDQnEe+8WCNlwKqt99582wsJDnKdx3Zt46NNYJMMTd1lCvv18Y40Dq/GgBdpQEWwBvE3PF4f4Lt6xbGfg7VBJxYtg5RPQf4tya3CV+0j79Jugzt1YjpKazFdnK1qOmsf6tD8HlOaFcEIzehjLnFGiqv9ULR7XIKSNHsTelkr9bkl1cW4IChFJg4GcRLkasRnZjGKNiUsN9yu1P1NYjeUN7HQO3GSObygyu8HskVUCVSAoQRUCwpWVQ28McqBYuOuJsIJN7u37u6f2P68+drPQm3Y/zyk7LBU5LztZkrU= 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; SFS:(4636009)(39850400004)(376002)(396003)(346002)(136003)(36840700001)(46966006)(8936002)(8676002)(316002)(45080400002)(6486002)(53546011)(30864003)(36756003)(33964004)(6506007)(26005)(186003)(478600001)(6862004)(54906003)(4326008)(5660300002)(6512007)(2906002)(82740400003)(356005)(81166007)(70586007)(82310400003)(83380400001)(70206006)(86362001)(33656002)(336012)(47076005)(2616005)(36860700001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jun 2021 15:19:12.4704 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f64f2593-56b5-436e-5507-08d937236c08 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: AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3217 X-Spam-Status: No, score=-14.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, HTML_MESSAGE, RCVD_IN_DNSWL_NONE, 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 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 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: Thu, 24 Jun 2021 15:19:20 -0000 DQoNCk9uIDI0IEp1biAyMDIxLCBhdCAxNTozNywgTHVpcyBNYWNoYWRvIDxsdWlzLm1hY2hhZG9A bGluYXJvLm9yZzxtYWlsdG86bHVpcy5tYWNoYWRvQGxpbmFyby5vcmc+PiB3cm90ZToNCg0KT24g Ni8yNC8yMSAxMTowMCBBTSwgQWxhbiBIYXl3YXJkIHdyb3RlOg0KT24gMSBKdW4gMjAyMSwgYXQg MTg6NDUsIEx1aXMgTWFjaGFkbyA8bHVpcy5tYWNoYWRvQGxpbmFyby5vcmc8bWFpbHRvOmx1aXMu bWFjaGFkb0BsaW5hcm8ub3JnPj4gd3JvdGU6DQoNClVwZGF0ZXMgb24gdjU6DQoNCi0gRml4ZWQg Zm9ybWF0IHdhcm5pbmcgb3V0cHV0Lg0KDQpVcGRhdGVzIG9uIHY0Og0KDQotIENhbGN1bGF0ZSBz aXplcyBiYXNlZCBvbiBpbmRpdmlkdWFsIHN0cnVjdCBmaWVsZCBzaXplcy4NCg0KVXBkYXRlcyBv biB2MzoNCg0KLSBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzLg0KLSBOZXcgZmlsZXMgZ2Ric3Vw cG9ydC9tZW10YWcuaCwgZ2RiL21lbXRhZy5oIGFuZCBnZGIvbWVtdGFnLmMuDQotIFVwZGF0ZWQg Y29kZSBkb2N1bWVudGF0aW9uLg0KLSBSZW1vdmVkIGNvZGUgZHVwbGljYXRpb24uDQoNClVwZGF0 ZXMgb24gdjI6DQoNCi0gUmV3b3JrZWQgY29yZV90YXJnZXQ6OmZldGNoX21lbXRhZ3MgdG8gaGFu ZGxlIGNhc2VzIHdoZXJlIGFkZHJlc3MgKyBsZW4gcnVucw0KIG92ZXIgdGhlIE5UX01FTVRBRyBu b3RlLg0KLSBUdXJuZWQgYSBmZXcgbWFnaWMgbnVtYmVycyBpbnRvIGNvbnN0YW50cy4gVGhlcmUg aXMgYW4gdW5mb3J0dW5hdGUgZHVwbGljYXRpb24NCiBvZiBhIGNvbnN0YW50IChOVF9NRU1UQUdf SEVBREVSX1NJWkUpLiBJdCBpcyBhIGdlbmVyaWMgY29uc3RhbnQsIGJ1dCB0aGVyZSBpcw0KIG5v IGZpbGUgZ2VuZXJpYyBlbm91Z2ggdGhhdCBnZXRzIGluY2x1ZGVkIGJ5IGJvdGggY29yZWxvdyBh bmQgbGludXgtdGRlcC4NCi0gTW9yZSBzYW5pdHkgY2hlY2tzIHRvIG1ha2Ugc3VyZSB0aGUgbm90 ZSBmb3JtYXQgaXMgY29ycmVjdC4NCi0gRG9jdW1lbnRlZCBhYXJjaDY0X2xpbnV4X2RlY29kZV9t ZW10YWdfbm90ZSBhIGxpdHRsZSBtb3JlLg0KDQotLS0NCg0KVGVhY2ggR0RCIGhvdyB0byBkdW1w IG1lbW9yeSB0YWdzIHdoZW4gdXNpbmcgdGhlIGdjb3JlIGNvbW1hbmQgYW5kIGhvdw0KdG8gcmVh ZCB0aGVtIGJhY2sgZnJvbSBhIGNvcmUgZmlsZSBnZW5lcmF0ZWQgdmlhIGdjb3JlIG9yIHRoZSBr ZXJuZWwuDQoNCkVhY2ggdGFnZ2VkIG1lbW9yeSByYW5nZSAobGlzdGVkIGluIC9wcm9jLzxwaWQ+ L3NtYXBzKSBnZXRzIGR1bXBlZCB0byBpdHMNCm93biBOVF9NRU1UQUcgbm90ZS4gQSBzZWN0aW9u IG5hbWVkICIubWVtdGFnIiBpcyBjcmVhdGVkIGZvciBlYWNoIG9mIHRob3NlDQp3aGVuIHJlYWRp bmcgdGhlIGNvcmUgZmlsZSBiYWNrLg0KDQpEdW1waW5nIG1lbW9yeSB0YWdzDQotDQoNCldoZW4g dXNpbmcgdGhlIGdjb3JlIGNvbW1hbmQgdG8gZHVtcCBhIGNvcmUgZmlsZSwgR0RCIHdpbGwgZ28g dGhyb3VnaCB0aGUgbWFwcw0KaW4gL3Byb2MvPHBpZD4vc21hcHMgbG9va2luZyBmb3IgdGFnZ2Vk IHJhbmdlcy4gRWFjaCBvZiB0aG9zZSBlbnRyaWVzIGdldHMNCnBhc3NlZCB0byBhbiBhcmNoLXNw ZWNpZmljIGdkYmFyY2ggaG9vayB0aGF0IGdlbmVyYXRlcyBhIHZlY3RvciBvZiBibG9icyBvZg0K bWVtb3J5IHRhZyBkYXRhIHRoYXQgYXJlIGJsaW5kbHkgcHV0IGludG8gYSBOVF9NRU1UQUcgbm90 ZS4NCg0KVGhlIHZlY3RvciBpcyB1c2VkIGJlY2F1c2Ugd2UgbWF5IGhhdmUsIGluIHRoZSBmdXR1 cmUsICBtdWx0aXBsZSB0YWcgdHlwZXMgZm9yDQphIHBhcnRpY3VsYXIgbWVtb3J5IHJhbmdlLg0K DQpFYWNoIG9mIHRoZSBOVF9NRU1UQUcgbm90ZXMgaGF2ZSBhIGdlbmVyaWMgaGVhZGVyIGFuZCBh IGFyY2gtc3BlY2lmaWMgaGVhZGVyLA0KbGlrZSBzbzoNCg0Kc3RydWN0IHRhZ19kdW1wX2hlYWRl cg0Kew0KIHVpbnQxNl90IGZvcm1hdDsgLy8gT25seSBOVF9NRU1UQUdfVFlQRV9BQVJDSF9NVEUg YXQgcHJlc2VudA0KIHVpbnQ2NF90IHN0YXJ0X3ZtYTsNCiB1aW50NjRfdCBlbmRfdm1hOw0KfTsN Cg0Kc3RydWN0IHRhZ19kdW1wX210ZQ0Kew0KIHVpbnQxNl90IGdyYW51bGVfYnl0ZV9zaXplOw0K IHVpbnQxNl90IHRhZ19iaXRfc2l6ZTsNCiB1aW50MTZfdCBfX3VudXNlZDsNCn07DQoNClRoZSBv bmx5IGJpdHMgbWVhbnQgdG8gYmUgZ2VuZXJpYyBhcmUgdGhlIHRhZ19kdW1wX2Zvcm1hdCwgc3Rh cnRfdm1hIGFuZA0KZW5kX3ZtYSBmaWVsZHMuDQoNClRoZSBmb3JtYXQtc3BlY2lmaWMgZGF0YSBp cyBzdXBwb3NlZCB0byBiZSBvcGFxdWUgYW5kIG9ubHkgdXNlZnVsIGZvciB0aGUNCmFyY2gtc3Bl Y2lmaWMgY29kZS4NCg0KV2UgY2FuIGV4dGVuZCB0aGUgZm9ybWF0IGluIHRoZSBmdXR1cmUgdG8g bWFrZSByb29tIGZvciBvdGhlciBtZW1vcnkgdGFnDQpsYXlvdXRzLg0KDQpSZWFkaW5nIG1lbW9y eSB0YWdzDQotDQoNCldoZW4gcmVhZGluZyBhIGNvcmUgZmlsZSB0aGF0IGNvbnRhaW5zIE5UX01F TVRBRyBlbnRyaWVzLCBHREIgd2lsbCB1c2UNCmEgZGlmZmVyZW50IGFwcHJvYWNoIHRvIGNoZWNr IGZvciB0YWdnZWQgbWVtb3J5IHJhbmdlLiBSYXRoZXIgdGhhbiBsb29raW5nDQphdCAvcHJvYy88 cGlkPi9zbWFwcywgaXQgd2lsbCBub3cgbG9vayBmb3IgIi5tZW10YWciIHNlY3Rpb25zIHdpdGgg dGhlIHJpZ2h0DQptZW1vcnkgcmFuZ2UuDQoNCldoZW4gcmVhZGluZyB0YWdzLCBHREIgd2lsbCBu b3cgdXNlIHRoZSBjb3JlIHRhcmdldCdzIGltcGxlbWVudGF0aW9uIG9mDQpmZXRjaF9tZW10YWdz IChzdG9yZV9tZW10YWdzIGRvZXNuJ3QgZXhpc3QgZm9yIGNvcmUgdGFyZ2V0cykuIFRoZW4gdGhl IGRhdGENCmlzIGZlZCBpbnRvIGFuIGFyY2gtc3BlY2lmaWMgaG9vayB0aGF0IHdpbGwgZGVjb2Rl IHRoZSBtZW1vcnkgdGFnIGZvcm1hdCBhbmQNCnJldHVybiBhIHZlY3RvciBvZiB0YWdzLg0KDQpJ J3ZlIGFkZGVkIGEgdGVzdCB0byBleGVyY2lzZSB3cml0aW5nIGFuZCByZWFkaW5nIG9mIG1lbW9y eSB0YWdzIGluIGNvcmUNCmZpbGVzLg0KDQpnZGIvQ2hhbmdlTG9nOg0KDQpZWVlZLU1NLUREICBM dWlzIE1hY2hhZG8gIDxsdWlzLm1hY2hhZG9AbGluYXJvLm9yZzxtYWlsdG86bHVpcy5tYWNoYWRv QGxpbmFyby5vcmc+Pg0KDQoqIE1ha2VmaWxlLmluIChDT01NT05fU0ZJTEVTKTogQWRkIG1lbXRh Zy5jLg0KKiBORVdTOiBNZW50aW9uIGNvcmUgZmlsZSBzdXBwb3J0IGZvciBtZW1vcnkgdGFnZ2lu Zy4NCiogYWFyY2g2NC1saW51eC10ZGVwLmM6IEluY2x1ZGUgZWxmL2NvbW1vbi5oLg0KSW5jbHVk ZSBnZGJzdXBwb3J0L21lbXRhZy5oLg0KKE1BWF9UQUdTX1RPX1RSQU5TRkVSKTogTmV3IGNvbnN0 YW50Lg0KKGFhcmNoNjRfbGludXhfY3JlYXRlX21lbXRhZ19ub3Rlc19mcm9tX3JhbmdlKTogTmV3 IGZ1bmN0aW9uLg0KKGFhcmNoNjRfbGludXhfZGVjb2RlX21lbXRhZ19ub3RlKTogTGlrZXdpc2Uu DQooYWFyY2g2NF9saW51eF9pbml0X2FiaSk6IFJlZ2lzdGVyIG5ldyBjb3JlIGZpbGUgaG9va3Mu DQooTlRfTUVNVEFHX1RPVEFMX0hFQURFUl9TSVpFKTogTmV3IGNvbnN0YW50Lg0KKiBhcmNoL2Fh cmNoNjQtbXRlLWxpbnV4LmggKHRhZ19kdW1wX210ZSk6IE5ldyBzdHJ1Y3QuDQooQUFSQ0g2NF9N VEVfVEFHX0JJVF9TSVpFKTogTmV3IGNvbnN0YW50Lg0KKiBjb3JlbG93LmM6IEluY2x1ZGUgZ2Ri c3VwcG9ydC9tZW10YWcuaCBhbmQgbWVtdGFnLmguDQooY29yZV90YXJnZXQpIDxzdXBwb3J0c19t ZW1vcnlfdGFnZ2luZywgZmV0Y2hfbWVtdGFncz46IE5ldw0KbWV0aG9kIG92ZXJyaWRlcy4NCiog Z2RiYXJjaC5jOiBSZWdlbmVyYXRlLg0KKiBnZGJhcmNoLmg6IExpa2V3aXNlLg0KKiBnZGJhcmNo LnNoIChjcmVhdGVfbWVtdGFnX25vdGVzX2Zyb21fcmFuZ2UpOiBOZXcgaG9vay4NCihkZWNvZGVf bWVtdGFnX25vdGUpOiBMaWtld2lzZS4NCiogbGludXgtdGRlcC5jOiBJbmNsdWRlIGdkYnN1cHBv cnQvbWVtdGFnLmggYW5kIG1lbXRhZy5oLg0KKGxpbnV4X2FkZHJlc3NfaW5fbWVtdGFnX3BhZ2Up OiBSZW5hbWVkIHRvLi4uDQoobGludXhfcHJvY2Vzc19hZGRyZXNzX2luX21lbXRhZ19wYWdlKTog Li4uIHRoaXMuDQoobGludXhfY29yZV9maWxlX2FkZHJlc3NfaW5fbWVtdGFnX3BhZ2UpOiBOZXcg ZnVuY3Rpb24uDQoobGludXhfYWRkcmVzc19pbl9tZW10YWdfcGFnZSk6IExpa2V3aXNlLg0KKGxp bnV4X21ha2VfbWVtdGFnX2NvcmVmaWxlX25vdGVzKTogTGlrZXdpc2UuDQoobGludXhfbWFrZV9j b3JlZmlsZV9ub3Rlcyk6IEhhbmRsZSBtZW1vcnkgdGFnIG5vdGVzLg0KKiBtZW10YWcuYzogTmV3 IGZpbGUuDQoqIG1lbXRhZy5oOiBOZXcgZmlsZS4NCg0KZ2RiL2RvYy9DaGFuZ2VMb2c6DQoNCllZ WVktTU0tREQgIEx1aXMgTWFjaGFkbyAgPGx1aXMubWFjaGFkb0BsaW5hcm8ub3JnPG1haWx0bzps dWlzLm1hY2hhZG9AbGluYXJvLm9yZz4+DQoNCiogZ2RiLnRleGluZm8gKEFBcmNoNjQgTWVtb3J5 IFRhZ2dpbmcgRXh0ZW5zaW9uKTogTWVudGlvbiBzdXBwb3J0DQpmb3IgbWVtb3J5IHRhZ2dpbmcg aW4gY29yZSBmaWxlcy4NCg0KZ2RiL3Rlc3RzdWl0ZS9DaGFuZ2VMb2c6DQoNCllZWVktTU0tREQg IEx1aXMgTWFjaGFkbyAgPGx1aXMubWFjaGFkb0BsaW5hcm8ub3JnPG1haWx0bzpsdWlzLm1hY2hh ZG9AbGluYXJvLm9yZz4+DQoNCiogZ2RiLmFyY2gvYWFyY2g2NC1tdGUtZ2NvcmUuYzogTmV3IGZp bGUuDQoqIGdkYi5hcmNoL2FhcmNoNjQtbXRlLWdjb3JlLmV4cDogTmV3IGZpbGUuDQoNCmdkYnN1 cHBvcnQvQ2hhbmdlTG9nOg0KDQpZWVlZLU1NLUREICBMdWlzIE1hY2hhZG8gIDxsdWlzLm1hY2hh ZG9AbGluYXJvLm9yZzxtYWlsdG86bHVpcy5tYWNoYWRvQGxpbmFyby5vcmc+Pg0KDQoqIG1lbXRh Zy5oOiBOZXcgZmlsZS4NCi0tLQ0KZ2RiL01ha2VmaWxlLmluICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKw0KZ2RiL05FV1MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDQgKw0KZ2RiL2FhcmNoNjQtbGludXgtdGRlcC5jICAgICAgICAgICAgICAgICAg ICAgfCAyMjEgKysrKysrKysrKysrKysrKysrKw0KZ2RiL2FyY2gvYWFyY2g2NC1tdGUtbGludXgu aCAgICAgICAgICAgICAgICAgfCAgMTcgKysNCmdkYi9jb3JlbG93LmMgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDYzICsrKysrKw0KZ2RiL2RvYy9nZGIudGV4aW5mbyAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDQgKw0KZ2RiL2dkYmFyY2guYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNjQgKysrKysrDQpnZGIvZ2RiYXJjaC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAxNiArKw0KZ2RiL2dkYmFyY2guc2ggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDYgKw0KZ2RiL2xpbnV4LXRkZXAuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgOTcgKysrKysrKy0NCmdkYi9tZW10YWcuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDg4ICsrKysrKysrDQpnZGIvbWVtdGFnLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICA0NiArKysrDQpnZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2Fh cmNoNjQtbXRlLWdjb3JlLmMgICB8ICA5MyArKysrKysrKw0KZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJj aC9hYXJjaDY0LW10ZS1nY29yZS5leHAgfCAxMTEgKysrKysrKysrKw0KZ2Ric3VwcG9ydC9tZW10 YWcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzkgKysrKw0KMTUgZmlsZXMgY2hhbmdl ZCwgODY3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pDQpjcmVhdGUgbW9kZSAxMDA2NDQg Z2RiL21lbXRhZy5jDQpjcmVhdGUgbW9kZSAxMDA2NDQgZ2RiL21lbXRhZy5oDQpjcmVhdGUgbW9k ZSAxMDA2NDQgZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9hYXJjaDY0LW10ZS1nY29yZS5jDQpjcmVh dGUgbW9kZSAxMDA2NDQgZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9hYXJjaDY0LW10ZS1nY29yZS5l eHANCmNyZWF0ZSBtb2RlIDEwMDY0NCBnZGJzdXBwb3J0L21lbXRhZy5oDQoNCk5vdGUgdGhlcmUg d2VyZSBhIGZldyBtaW5vciBtZXJnZSBjb25mbGljdHMsIG5vdGhpbmcgdG8gd29ycnkgYWJvdXQg dGhvdWdoLg0KDQpJJ2xsIGNoZWNrIGFnYWluIGFuZCB3aWxsIHJlZnJlc2ggdGhlIHBhdGNoLg0K DQpkaWZmIC0tZ2l0IGEvZ2RiL01ha2VmaWxlLmluIGIvZ2RiL01ha2VmaWxlLmluDQppbmRleCBm NjY0ZDk2NDUzNi4uMTJmYjNiMzkwYjEgMTAwNjQ0DQotLS0gYS9nZGIvTWFrZWZpbGUuaW4NCisr KyBiL2dkYi9NYWtlZmlsZS5pbg0KQEAgLTExMDAsNiArMTEwMCw3IEBAIENPTU1PTl9TRklMRVMg PSBcDQptZW1hdHRyLmMgXA0KbWVtb3J5LW1hcC5jIFwNCm1lbXJhbmdlLmMgXA0KKyBtZW10YWcu YyBcDQptaW5pZGVidWcuYyBcDQptaW5zeW1zLmMgXA0KbWlwc3JlYWQuYyBcDQpkaWZmIC0tZ2l0 IGEvZ2RiL05FV1MgYi9nZGIvTkVXUw0KaW5kZXggYWI2NzhhY2VjOGIuLjU4YjlmNzM5ZDRmIDEw MDY0NA0KLS0tIGEvZ2RiL05FV1MNCisrKyBiL2dkYi9ORVdTDQpAQCAtMyw2ICszLDEwIEBADQoN CioqKiBDaGFuZ2VzIHNpbmNlIEdEQiAxMA0KDQorKiBHREIgbm93IHN1cHBvcnRzIGR1bXBpbmcg bWVtb3J5IHRhZyBkYXRhIGZvciBBQXJjaDY0IE1URS4gIEl0IGFsc28gc3VwcG9ydHMNCisgIHJl YWRpbmcgbWVtb3J5IHRhZyBkYXRhIGZvciBBQXJjaDY0IE1URSBmcm9tIGNvcmUgZmlsZXMgZ2Vu ZXJhdGVkIGJ5DQorICB0aGUgZ2NvcmUgY29tbWFuZCBvciB0aGUgTGludXgga2VybmVsLg0KKw0K KiBHREIgbm93IHN1cHBvcnRzIGdlbmVyYWwgbWVtb3J5IHRhZ2dpbmcgZnVuY3Rpb25hbGl0eSBp ZiB0aGUgdW5kZXJseWluZw0KICBhcmNoaXRlY3R1cmUgc3VwcG9ydHMgdGhlIHByb3BlciBwcmlt aXRpdmVzIGFuZCBob29rcy4gIEN1cnJlbnRseSB0aGlzIGlzDQogIGVuYWJsZWQgb25seSBmb3Ig QUFyY2g2NCBNVEUuDQpkaWZmIC0tZ2l0IGEvZ2RiL2FhcmNoNjQtbGludXgtdGRlcC5jIGIvZ2Ri L2FhcmNoNjQtbGludXgtdGRlcC5jDQppbmRleCBlOTc2MWVkMjE4OS4uMDQ0OThmM2I2YzAgMTAw NjQ0DQotLS0gYS9nZGIvYWFyY2g2NC1saW51eC10ZGVwLmMNCisrKyBiL2dkYi9hYXJjaDY0LWxp bnV4LXRkZXAuYw0KQEAgLTUyLDYgKzUyLDkgQEANCiNpbmNsdWRlICJ2YWx1ZS5oIg0KDQojaW5j bHVkZSAiZ2Ric3VwcG9ydC9zZWxmdGVzdC5oIg0KKyNpbmNsdWRlICJnZGJzdXBwb3J0L21lbXRh Zy5oIg0KKw0KKyNpbmNsdWRlICJlbGYvY29tbW9uLmgiDQoNCi8qIFNpZ25hbCBmcmFtZSBoYW5k bGluZy4NCg0KQEAgLTE3NzksNiArMTc4MiwyMTMgQEAgYWFyY2g2NF9saW51eF9yZXBvcnRfc2ln bmFsX2luZm8gKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLA0KICAgIH0NCn0NCg0KKy8qIE1lbW9y eSB0YWcgbm90ZSBoZWFkZXIgc2l6ZS4gIEluY2x1ZGVzIGJvdGggdGhlIGdlbmVyaWMgYW5kIHRo ZQ0KKyAgIGFyY2gtc3BlY2lmaWMgcGFydHMuICAqLw0KKyNkZWZpbmUgTlRfTUVNVEFHX1RPVEFM X0hFQURFUl9TSVpFIChOVF9NRU1UQUdfR0VORVJJQ19IRUFERVJfU0laRSBcDQorICAgICAgKyBO VF9NRU1UQUdfTVRFX0hFQURFUl9TSVpFKQ0KKw0KKy8qIE1heGltdW0gbnVtYmVyIG9mIHRhZ3Mg dG8gcmVxdWVzdC4gICovDQorI2RlZmluZSBNQVhfVEFHU19UT19UUkFOU0ZFUiAxMDI0DQorDQor LyogQUFyY2g2NCBMaW51eCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYWFyY2g2NF9jcmVhdGVfbWVt dGFnX25vdGVzX2Zyb21fcmFuZ2UNCisgICBnZGJhcmNoIGhvb2suICBDcmVhdGUgY29yZSBmaWxl IG5vdGVzIGZvciBtZW1vcnkgdGFncy4gICovDQorDQorc3RhdGljIHN0ZDo6dmVjdG9yPGdkYjo6 Ynl0ZV92ZWN0b3I+DQorYWFyY2g2NF9saW51eF9jcmVhdGVfbWVtdGFnX25vdGVzX2Zyb21fcmFu Z2UgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLA0KKyAgICAgICBDT1JFX0FERFIgc3RhcnRfYWRk cmVzcywNCisgICAgICAgQ09SRV9BRERSIGVuZF9hZGRyZXNzKQ0KK3sNCisgIC8qIFdlIG9ubHkg aGFuZGxlIE1URSB0YWdzIGZvciBub3cuICAqLw0KKw0KKyAgLyogRmlndXJlIG91dCBob3cgbWFu eSB0YWdzIHdlIG5lZWQgdG8gc3RvcmUgaW4gdGhpcyBtZW1vcnkgcmFuZ2UuICAqLw0KKyAgc2l6 ZV90IGdyYW51bGVzID0gYWFyY2g2NF9tdGVfZ2V0X3RhZ19ncmFudWxlcyAoc3RhcnRfYWRkcmVz cywNCisgICBlbmRfYWRkcmVzcyAtIHN0YXJ0X2FkZHJlc3MsDQorICAgQUFSQ0g2NF9NVEVfR1JB TlVMRV9TSVpFKTsNCisNCisgIC8qIFZlY3RvciBvZiBtZW1vcnkgdGFnIG5vdGVzLiBBZGQgdGhl IE1URSBub3RlICh3ZSBvbmx5IGhhdmUgTVRFIHRhZ3MNCisgICAgIGF0IHRoZSBtb21lbnQpLiAg Ki8NCisgIHN0ZDo6dmVjdG9yPGdkYjo6Ynl0ZV92ZWN0b3I+IG5vdGVzICgxKTsNCisNCisgIC8q IElmIHRoZXJlIGFyZSBubyB0YWcgZ3JhbnVsZXMgdG8gZmV0Y2gsIGp1c3QgcmV0dXJuLiAgKi8N CisgIGlmIChncmFudWxlcyA9PSAwKQ0KKyAgICByZXR1cm4gbm90ZXM7DQorDQorICAvKiBBZGp1 c3QgdGhlIE1URSBub3RlIHNpemUgdG8gaG9sZCB0aGUgaGVhZGVyICsgdGFncy4gICovDQorICBu b3Rlc1swXS5yZXNpemUgKE5UX01FTVRBR19UT1RBTF9IRUFERVJfU0laRSArIGdyYW51bGVzKTsN ClNob3VsZCB0aGlzIGJlIE5UX01FTVRBR19UT1RBTF9IRUFERVJfU0laRSArIChncmFudWxlcyAq IEFBUkNINjRfTVRFX0dSQU5VTEVfU0laRSkNCkdldF9ncmFudWxlcyBoYXMgYWxyZWFkeSBkaXZp ZGVkIGJ5IHRoZSBncmFudWxlIHNpemUuDQoNCldlIGFyZSBzdG9yaW5nIDEgdGFnIHBlciBieXRl LiBTbyB0aGUgbnVtYmVyIG9mIGdyYW51bGVzIGlzIHRoZSBudW1iZXIgb2YgdGFncy4gSWYgd2Ug bXVsdGlwbHkgYnkgQUFSQ0g2NF9NVEVfR1JBTlVMRV9TSVpFLCB3ZSB3aWxsIGhhdmUgMTYgdGlt ZXMgbW9yZSB0YWdzLg0KDQpBaGgsIHJpZ2h0Lg0KKE9mIGNvdXJzZSAtIHRoaXMgc29ydCBvZiBi dWZmZXIgb3ZlcnJ1biBpcyBleGFjdGx5IHdoYXQgbXRlIHByZXZlbnRzIDopICkNCg0KDQorDQor ICBDT1JFX0FERFIgYWRkcmVzcyA9IHN0YXJ0X2FkZHJlc3M7DQorICAvKiBWZWN0b3Igb2YgdGFn cy4gICovDQorICBnZGI6OmJ5dGVfdmVjdG9yIHRhZ3M7DQorDQorICB3aGlsZSAoZ3JhbnVsZXMg PiAwKQ0KKyAgICB7DQorICAgICAgLyogVHJhbnNmZXIgdGFncyBpbiBjaHVua3MuICAqLw0KKyAg ICAgIGdkYjo6Ynl0ZV92ZWN0b3IgdGFnc19yZWFkOw0KKyAgICAgIHNpemVfdCB4ZmVyX2xlbg0K KyA9IChncmFudWxlcyA+PSBNQVhfVEFHU19UT19UUkFOU0ZFUik/DQorICAgTUFYX1RBR1NfVE9f VFJBTlNGRVIgKiBBQVJDSDY0X01URV9HUkFOVUxFX1NJWkUgOg0KKyAgIGdyYW51bGVzICogQUFS Q0g2NF9NVEVfR1JBTlVMRV9TSVpFOw0KKw0KKyAgICAgIGlmICghdGFyZ2V0X2ZldGNoX21lbXRh Z3MgKGFkZHJlc3MsIHhmZXJfbGVuLCB0YWdzX3JlYWQsDQorICBzdGF0aWNfY2FzdDxpbnQ+ICht ZW10YWdfdHlwZTo6YWxsb2NhdGlvbikpKQ0KKyB7DQorICAgd2FybmluZyAoXygiRmFpbGVkIHRv IHJlYWQgTVRFIHRhZ3MgZnJvbSBtZW1vcnkgcmFuZ2UgWyVzLCVzXS4iKSwNCisgICAgICBwaGV4 X256IChzdGFydF9hZGRyZXNzLCBzaXplb2YgKHN0YXJ0X2FkZHJlc3MpKSwNCisgICAgICBwaGV4 X256IChlbmRfYWRkcmVzcywgc2l6ZW9mIChlbmRfYWRkcmVzcykpKTsNCisgICBub3Rlcy5yZXNp emUgKDApOw0KSWYgeW91IGRvIHRoZSBvcmlnaW5hbCByZXNpemUgYWZ0ZXIgdGhlIHdoaWxlIGxv b3AsIHRoZW4gdGhlcmUgd291bGQgYmUgbm8gbmVlZCB0byByZXNpemUgaGVyZS4NCg0KSSdtIG5v dCBzdXJlIEkgdW5kZXJzdGFuZC4gV2hlcmUgZG8geW91IHN1Z2dlc3QgdGhlIHJlc2l6aW5nIHRv IGJlIHBsYWNlZD8NCg0KU28gc29tZXRoaW5nIGxpa2U6DQoNCnN0ZDo6dmVjdG9yPGdkYjo6Ynl0 ZV92ZWN0b3I+IG5vdGVzICgxKTsNCg0Kd2hpbGUgKGdyYW51bGVzID4gMCkNCnsNCi4uLg0KICBJ ZiAoIWZldGNoKCkpDQogICByZXR1cm4gbm90ZXMNCi4uLg0KfQ0KDQpub3Rlc1swXS5yZXNpemUg KE5UX01FTVRBR19UT1RBTF9IRUFERVJfU0laRSArIGFsbF9ncmFudWxlcyk7DQoNCk5vdyBJIHdy aXRlIGl0IG91dCwgeW914oCZbGwgbmVlZCB0byBrZWVwIGEgY29weSBvZiB0aGUgb3JpZ2luYWwg bnVtYmVyIG9mIGdyYW51bGVzLg0KR2l2ZW4gdGhpcyBpcyBvbmx5IGdvaW5nIHRvIGhhcHBlbiBv biBhIHJhcmUgZmFpbHVyZSwgdGhlbiBtYXliZSBpdHMgbm90IHdvcnRoIHRoZSBjaGFuZ2UuDQoN Cg0KT2ssIGhhcHB5IHdpdGggYWxsIHRob3NlIHRoZW4uDQpSZXN0IG9mIHRoZSBwYXRjaCBsb29r cyBnb29kIHRvIG1lIHRvby4NCg0KDQpBbGFuLg0KDQoNCg==