From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00087.outbound.protection.outlook.com [40.107.0.87]) by sourceware.org (Postfix) with ESMTPS id 6DAEE3858D28 for ; Fri, 12 Nov 2021 06:11:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6DAEE3858D28 Received: from AM6PR10CA0075.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:8c::16) by DU0PR08MB7487.eurprd08.prod.outlook.com (2603:10a6:10:357::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.11; Fri, 12 Nov 2021 06:11:10 +0000 Received: from AM5EUR03FT042.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:8c:cafe::91) by AM6PR10CA0075.outlook.office365.com (2603:10a6:209:8c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.15 via Frontend Transport; Fri, 12 Nov 2021 06:11:10 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;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 AM5EUR03FT042.mail.protection.outlook.com (10.152.17.168) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.20 via Frontend Transport; Fri, 12 Nov 2021 06:11:10 +0000 Received: ("Tessian outbound 8133f76bddb7:v109"); Fri, 12 Nov 2021 06:11:10 +0000 X-CR-MTA-TID: 64aa7808 Received: from 94448615350d.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id BB9091E8-50C6-4E25-8534-2A06196FFDE7.1; Fri, 12 Nov 2021 06:11:00 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 94448615350d.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 12 Nov 2021 06:11:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FzaPbntO/QQy4uCl7xPsoQyUB1JpZDxMavGkWPSTMVaIWt4vPkPxbVccGBYeAso1GEM4i2mG8AfTwYkXFkK8T8WBG9eGdpqPWfGizrsmJcUmTVmQ4OSyaDA+G/1fPPUwsUs9x78KvLiTumTj+EmtKhcxLexvkzhnJ5kaHpe8yM+sJOhEDPdHIFj++U5r9JjsBreHIrV1W5RBdxAXFJ1ykyy38MDiWpLcE5N6Ze3mgIBA9w3SH5k97KxQ47Zn3j0wgqm4WPIV8E96g8b0UtFZnhRha93jOQGzEGSMrZJ6aGtE/AjeJNfrWvCkIKN0bPbeAMLSd0GdlI73731MFTWq8Q== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yNBEynXWGvBwbQegHifadGB7q3LoPj5cjp7wp5fEtbw=; b=JF5ZlHa+hWCmK/zw6EnOC8Zn7yJWXvl9BgdTY15Xj2/vFTwQBUjdWDBRN2kPpkuiWDcp5Gklm9RVtrC28c2/cy4eYu+0D4ctIOEKCwF4PC8UgRA49pyFzMPtt5niLxtliw4SKTWD33U27W7KeVCtG0TecOEUYX4r3TbGCPC/notFgCQq3/9984aRbNVEesgNq8LojyVlyj2o2frLuSlGs7Rl3LQsNQcyqe0ihFewEDlbMTUfTlku86rDqAtgxLukRYwcVZ7dPoSRwjjqN1O4inq/NCHKeR39Di+20O47hcEZSqbBE1DRMSlXUs3NrX2oD07ctdb6DjJZ3lfq1CuvOw== 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 AM0PR08MB5316.eurprd08.prod.outlook.com (2603:10a6:208:185::14) by AM0PR08MB4306.eurprd08.prod.outlook.com (2603:10a6:208:139::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.25; Fri, 12 Nov 2021 06:10:57 +0000 Received: from AM0PR08MB5316.eurprd08.prod.outlook.com ([fe80::1096:1244:d709:fbee]) by AM0PR08MB5316.eurprd08.prod.outlook.com ([fe80::1096:1244:d709:fbee%3]) with mapi id 15.20.4690.019; Fri, 12 Nov 2021 06:10:57 +0000 From: Tamar Christina To: "binutils@sourceware.org" CC: Richard Earnshaw , nd , Marcus Shawcroft Subject: RE: [PATCH][Binutils]AArch64 Add support for AArch64 EFI (efi-*-aarch64). Thread-Topic: [PATCH][Binutils]AArch64 Add support for AArch64 EFI (efi-*-aarch64). Thread-Index: AQHXzLTcwhDj4vQ+102ePiFx1kdrpav1PuUAgAo/ohA= Date: Fri, 12 Nov 2021 06:10:57 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 8390BB54BA3F1448A95558E45055ACEC.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: 13ec3b73-97a0-4f14-9fbc-08d9a5a338e1 x-ms-traffictypediagnostic: AM0PR08MB4306:|DU0PR08MB7487: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:1303;OLM:1303; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: T/SkC1k8MRYBmFHNSZghQI50lVZ0S5mrBgy+1LADECgVwyy5kNnGY0Rivrf404q+URxM0SeOHQkgsrsY43g1Dtt9pqbiazT13nGuF8rRD7MI9ThzeMBPXIL8szFmVDA5NvKDuFUPLyOilJcCrI/3bZZCkLvPHb6bjRuX6DP+TjXEImOeeCcDbqULqkue/joSUbl2U5dgJVsBnfiYLurAO2YE/zrVkW1Io9epHZYWjeyLu5+187kU/5J7xvNGP9v8ePTh5VpkFMvRn2WcTTdaU3YLcshpjCwGh5VdWHcxghC+XjCx4wqN7Z9fxbAwLiiD20654uK9tUaXaGrekSOnX0cS3k5q/jw0j4mv0vVol7We00mqNp2mnsvFdtLG5Q+AyzuUlr3KnXC5ixpOXsNP+DCNW1xfQr3QGh6NxoJJTbZiy+BYXCXKdSz0x5gMfnfQ3XNWEcyIjLVtWpom8n1zSP2oO7zhD140Bjjo6Wpz69J6ilqPNP6dtofpNiyEe7fLQ8gQMsgXq4AKiIi8jiuNsVicRYbvrti99GYWs8ouNLq9pqk4HYzu3qxGNANmcvzJIObf6vijlNzbix6jqMyAfzSAkePkqCRVjWpA0ZF3FsfNb71uWM+jelk9QfzDjVHHot3JSNxCS0LbevgpOR+1eYwLF90E2NdQw9sEChuZpScG/ee7bCSCzmLUTR51ZN0rc0tw3IspvYXq9VyXMQ9TrQtns5hOadt24y9rGfPVMSTNjV2ziBkPWakWuuetmbD3mvXL//NwyK4Ja+fH1NDgfvB09dO7J7N8oWxdmHuzG/axG8HxN16H9SYXC7a5bn/J X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM0PR08MB5316.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(8936002)(55016002)(38070700005)(966005)(9686003)(38100700002)(2906002)(86362001)(83380400001)(66946007)(122000001)(4326008)(508600001)(5660300002)(6916009)(52536014)(45080400002)(186003)(71200400001)(4001150100001)(76116006)(7696005)(33656002)(66476007)(66556008)(30864003)(54906003)(64756008)(8676002)(26005)(6506007)(53546011)(316002)(66446008)(2004002)(559001)(579004); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4306 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT042.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 209056aa-991c-45e3-a77f-08d9a5a33121 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nZboIJ4GEIKSxGEcS2iyRk2ItHAq80v+MigPN7QnpvirFHAjVvdEA8PR45hGhRL93S922AzOS+PL/P4NnRuJEAuFKnrG7h4uLslL79/t9MdD4m+V043EsANEexJzDhngWDGqE2PHameR3+O7YGFF+Hn0dgy0DR4vHITy0aeHslmMSlZKAhvyg72Qj/B7aNmRboLYmHu8qGIwfddv1Yg1EwYag7hkyTKGq+61TgIncpzB4ksERk9xHff5rrQVxb8qeGytT9AUGZWeIURhFZEbV0mXFz6A1oZMBRoEiWd83LoNR2pMXbyNBcc15ccAdoY6yvK/hRiA3M56HiSqcUs3vJoEhu61RRuJj57UB1t3TKxtulZTFzK2Sh+gZGpTkyPNcLeUZBgthEoBX9pkjLWDpGeSQRrqwSAnvU9pywP4NRS6hDOMwcYORc2XMakc3Waq6SjRCcBqmLafx7V3r0ePAh/eRT3txIcOjM5MtCK/z7BHIr1+ZHRU3w8gJkSwUAlvgMalJ7lK7wu2AdpgDZ59zI0LfnMnC0+tD27HfB/3IteS0KTW93LqgEm8hqHhM4n9izfY5Rhg7kyfeVtu3mCi14G/vaGn5eQMr8tvhPmpJZgeCVSXtgHDtUKkQ/nhVtz7FZxksk6eXSahz1YJxPVT/tjhrMT4SdXxMlkr8RBMRYQJaWi6D06bZmfNUHfzJUrDUzgUtGU1vuOEr01g9h9XFN+/1TxvbETLzW43BRyHyCgcxLht8jELaYbNcnXAeSyLyEIK6N1zUcgGyBr+or3L2o/5KqgiC5NkCmUI1DsI8wsrsN+/lj2oVTQGgdn0Bouo 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)(46966006)(36840700001)(4001150100001)(6916009)(2906002)(6506007)(7696005)(316002)(8936002)(82310400003)(36860700001)(47076005)(53546011)(186003)(30864003)(54906003)(52536014)(83380400001)(4326008)(336012)(70206006)(9686003)(8676002)(5660300002)(33656002)(70586007)(508600001)(356005)(26005)(55016002)(45080400002)(81166007)(966005)(86362001)(2004002)(579004); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Nov 2021 06:11:10.1469 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 13ec3b73-97a0-4f14-9fbc-08d9a5a338e1 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: AM5EUR03FT042.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7487 X-Spam-Status: No, score=-13.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, KAM_ASCII_DIVIDERS, KAM_LOTSOFHASH, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Nov 2021 06:11:20 -0000 UGluZyB4Mg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEJpbnV0aWxz IDxiaW51dGlscy1ib3VuY2VzK3RhbWFyLmNocmlzdGluYT1hcm0uY29tQHNvdXJjZXdhcmUub3Jn Pg0KPiBPbiBCZWhhbGYgT2YgVGFtYXIgQ2hyaXN0aW5hIHZpYSBCaW51dGlscw0KPiBTZW50OiBG cmlkYXksIE5vdmVtYmVyIDUsIDIwMjEgNjo0MCBQTQ0KPiBUbzogYmludXRpbHNAc291cmNld2Fy ZS5vcmcNCj4gQ2M6IFJpY2hhcmQgRWFybnNoYXcgPFJpY2hhcmQuRWFybnNoYXdAYXJtLmNvbT47 IG5kIDxuZEBhcm0uY29tPjsNCj4gTWFyY3VzIFNoYXdjcm9mdCA8TWFyY3VzLlNoYXdjcm9mdEBh cm0uY29tPg0KPiBTdWJqZWN0OiBSRTogW1BBVENIXVtCaW51dGlsc11BQXJjaDY0IEFkZCBzdXBw b3J0IGZvciBBQXJjaDY0IEVGSSAoZWZpLSotDQo+IGFhcmNoNjQpLg0KPiANCj4gUGluZyAoYWRk aW5nIG1haWxpbmcgbGlzdCBiYWNrIGluKQ0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPiA+IEZyb206IEJpbnV0aWxzDQo+ID4gPGJpbnV0aWxzLWJvdW5jZXMrdGFtYXIuY2hy aXN0aW5hPWFybS5jb21Ac291cmNld2FyZS5vcmc+DQo+ID4gT24gQmVoYWxmIE9mIFRhbWFyIENo cmlzdGluYSB2aWEgQmludXRpbHMNCj4gPiBTZW50OiBGcmlkYXksIE9jdG9iZXIgMjksIDIwMjEg MTI6MDUgUE0NCj4gPiBUbzogYmludXRpbHNAc291cmNld2FyZS5vcmcNCj4gPiBDYzogUmljaGFy ZCBFYXJuc2hhdyA8UmljaGFyZC5FYXJuc2hhd0Bhcm0uY29tPjsgbmQgPG5kQGFybS5jb20+Ow0K PiA+IE1hcmN1cyBTaGF3Y3JvZnQgPE1hcmN1cy5TaGF3Y3JvZnRAYXJtLmNvbT4NCj4gPiBTdWJq ZWN0OiBbUEFUQ0hdW0JpbnV0aWxzXUFBcmNoNjQgQWRkIHN1cHBvcnQgZm9yIEFBcmNoNjQgRUZJ IChlZmktKi0NCj4gPiBhYXJjaDY0KS4NCj4gPg0KPiA+IEhpIEFsbCwNCj4gPg0KPiA+IFRoaXMg YWRkcyBzdXBwb3J0IGZvciBlZmktKi1hYXJjaDY0IGJ5IHZpcnR1ZSBvZiBhZGRpbmcgYSBuZXcg UEVJDQo+ID4gdGFyZ2V0IHBlaS0gYWFyY2g2NC1saXR0bGUuICBUaGlzIGlzIG5vdCBhIGZ1bGwg dGFyZ2V0IGFuZCBvbmx5IGV4aXN0cw0KPiA+IHRvIHN1cHBvcnQgRUZJIGF0IHRoaXMgdGltZS4N Cj4gPg0KPiA+IFRoaXMgbWVhbnMgdGhhdCB0aGlzIHRhcmdldCBkb2VzIG5vdCBzdXBwb3J0IHJl bG9jYXRpb24gcHJvY2Vzc2luZyBhbmQNCj4gPiBpcyBtb3N0bHkgYSBjb250YWluZXIgZm9ybWF0 LiAgVGhpcyBmb3JtYXQgaGFzIGJlZW4gYWRkZWQgdG8gZWxmIGJhc2VkDQo+ID4gYWFyY2g2NCB0 YXJnZXRzIHN1Y2ggdGhhdCBlZmkgaW1hZ2VzIGNhbiBiZSBtYWRlIG5hdGl2ZWx5IG9uIExpbnV4 Lg0KPiA+DQo+ID4gSG93ZXZlciB0aGlzIHRhcmdldCBpcyBub3QgdmFsaWQgZm9yIHVzZSB3aXRo IGdhcyBidXQgb25seSB3aXRoIG9iamNvcHkuDQo+ID4NCj4gPiBXaXRoIHRoZXNlIGNoYW5nZXMg dGhlIHJlc3VsdGluZyBmaWxlIGlzIHJlY29nbml6ZWQgYXMgYW4gZWZpIGltYWdlIGJ5DQo+ID4g dGhpcmQgcGFydHkgdG9vbHM6DQo+ID4NCj4gPiA+ICBwZWNsaSBpbmZvIGhlbGxvLmVmaQ0KPiA+ DQo+ID4gTWV0YWRhdGENCj4gPg0KPiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQo+ID4gPT09PT09PT09PT09PT09PT09PT09PQ0KPiA+ IE1ENTogICAgICAgICAgICA1OThjMzJhNzc4YjBmMGRlZWJlOTc3ZmVmODU3OGM0ZQ0KPiA+IFNI QTE6ICAgICAgICAgICA0NTgwMTIxZWRkNWNiNGRjNDBmNTFiMjhmMTcxZmQxNTI1MGRmODRjDQo+ ID4gU0hBMjU2Og0KPiA+IDMxNTRiZDdjZjQyNDMzZDFjOTU3ZjZiZjU1YTE3YWQ4YzU3ZWQ0MWIy OWRmMmQ0ODU3MDMzNDlmZDZmZjFkNWMNCj4gPiBJbXBoYXNoOg0KPiA+IFNpemU6ICAgICAgICAg ICA0NzU2MSBieXRlcw0KPiA+IFR5cGU6ICAgICAgICAgICBQRTMyKyBleGVjdXRhYmxlIChFRkkg YXBwbGljYXRpb24pIChzdHJpcHBlZCB0byBleHRlcm5hbCBQREIpLA0KPiBmb3INCj4gPiBNUyBX aW5kb3dzDQo+ID4gQ29tcGlsZSBUaW1lOiAgIDIwMjEtMTAtMjkgMDA6MDA6MDAgKFVUQyAtIDB4 MCAgICAgICApDQo+ID4gRW50cnkgcG9pbnQ6ICAgIDB4MjAwMCAoc2VjdGlvbiAudGV4dCkNCj4g Pg0KPiA+IFNlY3Rpb25zDQo+ID4NCj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiA+ID09PT09PT09PT09PT09PT09PT09PT0NCj4g PiBOYW1lICAgICAgUldYICBWaXJ0U2l6ZSAgIFZpcnRBZGRyICAgUmF3QWRkciAgIFJhd1NpemUg ICBFbnRyb3B5ICBtZDUNCj4gPiAudGV4dCAgICAgUi1YICAweDViYjAgICAgIDB4MjAwMCAgICAg MHg0MDAgICAgIDB4NWMwMCAgICAgIDYuMzkNCj4gPiA1NTFmYmMyNjQyNTZhM2YzODdkZThhODkx NTAwYWUwZA0KPiA+IC5yZWxvYyAgICBSLS0gIDB4YyAgICAgICAgMHg4MDAwICAgICAweDYwMDAg ICAgMHgyMDAgICAgICAgMC4wMg0KPiA+IDBjNDVmNmQ4MTJkMDc5ODIxYzFkNTRjMDlhYjg5ZTFk DQo+ID4gLmRhdGEgICAgIFJXLSAgMHgxZDg4ICAgICAweDkwMDAgICAgIDB4NjIwMCAgICAweDFl MDAgICAgICA0LjE4DQo+ID4gNWQxMTM3YzA5ZjAxMjg5ZGM2MmJmNzU0ZjcyOTBkYjMNCj4gPiAu ZHluYW1pYyAgUlctICAweGYwICAgICAgIDB4YjAwMCAgICAgMHg4MDAwICAgIDB4MjAwICAgICAg IDAuMzQNCj4gPiA1Yzk0ZWQzMjA2ZjA1YTI3N2U2ZjA0ZmJmMTMxZjEzMQ0KPiA+IC5yZWxhICAg ICBSLS0gIDB4ZTU4ICAgICAgMHhjMDAwICAgICAweDgyMDAgICAgMHgxMDAwICAgICAgMS44Nw0K PiA+IDhiNWM2YmMzMGYzYWNiN2NhN2JmMmU2Nzg5ZDY4NTE5DQo+ID4gLmR5bnN5bSAgIFItLSAg MHgxMzggICAgICAweGQwMDAgICAgIDB4OTIwMCAgICAweDIwMCAgICAgICAwLjk2DQo+ID4gYmRj ZjUxMDFkYTUxYWFkYzY2M2NhODg1OWY4ODEzOGMNCj4gPg0KPiA+DQo+ID4gSW1wb3J0cw0KPiA+ DQo+ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0NCj4gPiA9PT09PT09PT09PT09PT09PT09PT09DQo+ID4NCj4gPiBBbnkgbWFnaWMgbnVt YmVyIGlzIGJhc2VkIG9uIHRoZSBNaWNyb3NvZnQgUEUgc3BlY2lmaWNhdGlvbiBbMV0uDQo+ID4N Cj4gPiBbMV0gaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4tdXMvd2luZG93cy93aW4zMi9k ZWJ1Zy9wZS1mb3JtYXQNCj4gPg0KPiA+IGJ1aWxkIG9uIG5hdGl2ZSBoYXJkd2FyZSBhbmQgcmVn dGVzdGVkIG9uDQo+ID4gICBhYXJjaDY0LW5vbmUtZWxmLCBhYXJjaDY0LW5vbmUtZWxmICgzMiBi aXQgaG9zdCksDQo+ID4gICBhYXJjaDY0LW5vbmUtbGludXgtZ251LCBhYXJjaDY0LW5vbmUtbGlu dXgtZ251ICgzMiBiaXQgaG9zdCkNCj4gPg0KPiA+IENyb3NzLWNvbXBpbGVkIGFuZCByZWd0ZXN0 ZWQgb24NCj4gPiAgIGFhcmNoNjQtbm9uZS1saW51eC1nbnUsIGFhcmNoNjRfYmUtbm9uZS1saW51 eC1nbnUNCj4gPg0KPiA+IGFuZCBubyBpc3N1ZXMuDQo+ID4NCj4gPiBPayBmb3IgbWFzdGVyPw0K PiA+DQo+ID4gVGhhbmtzLA0KPiA+IFRhbWFyDQo+ID4NCj4gPiBiZmQvQ2hhbmdlTG9nOg0KPiA+ DQo+ID4gMjAyMS0xMC0yOSAgVGFtYXIgQ2hyaXN0aW5hICA8dGFtYXIuY2hyaXN0aW5hQGFybS5j b20+DQo+ID4NCj4gPiAJUFIgYmludXRpbHMvMjYyMDYNCj4gPiAJKiAuZ2l0aWdub3JlIChwZS1h YXJjaDY0aWdlbi5jKTogTmV3Lg0KPiA+IAkqIE1ha2VmaWxlLmFtIChwZWktYWFyY2g2NC5sbywg cGUtYWFyY2g2NGlnZW4ubG8sIHBlaS1hYXJjaDY0LmMsDQo+ID4gCXBlLWFhcmNoNjRpZ2VuLmMp OiBBZGQgc3VwcG9ydC4NCj4gPiAJKiBNYWtlZmlsZS5pbjogTGlrZXdpc2UuDQo+ID4gCSogYmZk LmMgKGJmZF9nZXRfc2lnbl9leHRlbmRfdm1hKTogQWRkIHBlaS1hYXJjaDY0LWxpdHRsZS4NCj4g PiAJKiBjb2ZmLWFhcmNoNjQuYzogTmV3IGZpbGUuDQo+ID4gCSogY29mZmNvZGUuaCAoY29mZl9z ZXRfYXJjaF9tYWNoX2hvb2ssIGNvZmZfc2V0X2ZsYWdzLA0KPiA+IAljb2ZmX3dyaXRlX29iamVj dF9jb250ZW50cykgQWRkIGFhcmNoNjQgKGFhcmNoNjRfcGVpX3ZlYykNCj4gc3VwcG9ydC4NCj4g PiAJKiBjb25maWcuYmZkOiBMaWtld2lzZS4NCj4gPiAJKiBjb25maWd1cmU6IExpa2V3aXNlLg0K PiA+IAkqIGNvbmZpZ3VyZS5hYzogTGlrZXdpc2UuDQo+ID4gCSogbGlicGVpLmggKEdFVF9PUFRI RFJfSU1BR0VfQkFTRSwgUFVUX09QVEhEUl9JTUFHRV9CQVNFLA0KPiA+IAlHRVRfT1BUSERSX1NJ WkVfT0ZfU1RBQ0tfUkVTRVJWRSwNCj4gPiBQVVRfT1BUSERSX1NJWkVfT0ZfU1RBQ0tfUkVTRVJW RSwNCj4gPiAJR0VUX09QVEhEUl9TSVpFX09GX1NUQUNLX0NPTU1JVCwNCj4gPiBQVVRfT1BUSERS X1NJWkVfT0ZfU1RBQ0tfQ09NTUlULA0KPiA+IAlHRVRfT1BUSERSX1NJWkVfT0ZfSEVBUF9SRVNF UlZFLA0KPiA+IFBVVF9PUFRIRFJfU0laRV9PRl9IRUFQX1JFU0VSVkUsDQo+ID4gCUdFVF9PUFRI RFJfU0laRV9PRl9IRUFQX0NPTU1JVCwNCj4gPiBQVVRfT1BUSERSX1NJWkVfT0ZfSEVBUF9DT01N SVQsDQo+ID4gCUdFVF9QREFUQV9FTlRSWSwNCj4gPiBfYmZkX3BlQUFyY2g2NF9iZmRfY29weV9w cml2YXRlX2JmZF9kYXRhX2NvbW1vbiwNCj4gPiAJX2JmZF9wZUFBcmNoNjRfYmZkX2NvcHlfcHJp dmF0ZV9zZWN0aW9uX2RhdGEsDQo+ID4gCV9iZmRfcGVBQXJjaDY0X2dldF9zeW1ib2xfaW5mbywN Cj4gPiBfYmZkX3BlQUFyY2g2NF9vbmx5X3N3YXBfZmlsZWhkcl9vdXQsDQo+ID4gCV9iZmRfcGVB QXJjaDY0X3ByaW50X3ByaXZhdGVfYmZkX2RhdGFfY29tbW9uLA0KPiA+IAlfYmZkX3BlQUFyY2g2 NGlfZmluYWxfbGlua19wb3N0c2NyaXB0LA0KPiA+IAlfYmZkX3BlQUFyY2g2NGlfb25seV9zd2Fw X2ZpbGVoZHJfb3V0LA0KPiA+IF9iZmRfcGVBQXJjaDY0aV9zd2FwX2FvdXRoZHJfaW4sDQo+ID4g CV9iZmRfcGVBQXJjaDY0aV9zd2FwX2FvdXRoZHJfb3V0LA0KPiA+IF9iZmRfcGVBQXJjaDY0aV9z d2FwX2F1eF9pbiwNCj4gPiAJX2JmZF9wZUFBcmNoNjRpX3N3YXBfYXV4X291dCwNCj4gPiBfYmZk X3BlQUFyY2g2NGlfc3dhcF9saW5lbm9faW4sDQo+ID4gCV9iZmRfcGVBQXJjaDY0aV9zd2FwX2xp bmVub19vdXQsDQo+ID4gX2JmZF9wZUFBcmNoNjRpX3N3YXBfc2NuaGRyX291dCwNCj4gPiAJX2Jm ZF9wZUFBcmNoNjRpX3N3YXBfc3ltX2luLCBfYmZkX3BlQUFyY2g2NGlfc3dhcF9zeW1fb3V0LA0K PiA+IAlfYmZkX3BlQUFyY2g2NGlfc3dhcF9kZWJ1Z2Rpcl9pbiwNCj4gPiBfYmZkX3BlQUFyY2g2 NGlfc3dhcF9kZWJ1Z2Rpcl9vdXQsDQo+ID4gCV9iZmRfcGVBQXJjaDY0aV93cml0ZV9jb2Rldmll d19yZWNvcmQsDQo+ID4gCV9iZmRfcGVBQXJjaDY0aV9zbHVycF9jb2Rldmlld19yZWNvcmQsDQo+ ID4gCV9iZmRfcGVBQXJjaDY0X3ByaW50X2NlX2NvbXByZXNzZWRfcGRhdGEpOiBOZXcuDQo+ID4g CSogcGVYWGlnZW4uYyAoX2JmZF9YWGlfc3dhcF9hb3V0aGRyX2luLA0KPiBfYmZkX1hYaV9zd2Fw X2FvdXRoZHJfb3V0LA0KPiA+IAlwZV9wcmludF9wZGF0YSwgX2JmZF9YWF9wcmludF9wcml2YXRl X2JmZF9kYXRhX2NvbW1vbiwNCj4gPiAJX2JmZF9YWF9iZmRfY29weV9wcml2YXRlX3NlY3Rpb25f ZGF0YSwNCj4gPiBfYmZkX1hYaV9maW5hbF9saW5rX3Bvc3RzY3JpcHQpOg0KPiA+IAlTdXBwb3J0 IENPRkZfV0lUSF9wZUFBcmNoNjQsDQo+ID4gCSogcGVpLWFhcmNoNjQuYzogTmV3IGZpbGUuDQo+ ID4gCSogcGVpY29kZS5oIChjb2ZmX3N3YXBfc2NuaGRyX2luLCBwZV9JTEZfYnVpbGRfYV9iZmQs DQo+ID4gcGVfSUxGX29iamVjdF9wKToNCj4gPiAJU3VwcG9ydCBDT0ZGX1dJVEhfcGVBQXJjaDY0 Lg0KPiA+IAkoanRhYik6IEFkZCBkdW1teSBlbnRyeSB0aGF0IHRyYXBzLg0KPiA+IAkqIHRhcmdl dHMuYyAoYWFyY2g2NF9wZWlfdmVjKTogTmV3Lg0KPiA+DQo+ID4gYmludXRpbHMvQ2hhbmdlTG9n Og0KPiA+DQo+ID4gMjAyMS0xMC0yOSAgVGFtYXIgQ2hyaXN0aW5hICA8dGFtYXIuY2hyaXN0aW5h QGFybS5jb20+DQo+ID4NCj4gPiAJUFIgYmludXRpbHMvMjYyMDYNCj4gPiAJKiBORVdTOiBBZGQg bmV3IHN1cHBvcnQuDQo+ID4gCSogb2JqY29weS5jIChjb252ZXJ0X2VmaV90YXJnZXQpOiBBZGQg ZWZpLSotYWFyY2g2NCBzdXBwb3J0Lg0KPiA+IAkqIHRlc3RzdWl0ZS9iaW51dGlscy1hbGwvYWFy Y2g2NC9wZWktYWFyY2g2NC1saXR0bGUuZDogTmV3IHRlc3QuDQo+ID4gCSogdGVzdHN1aXRlL2Jp bnV0aWxzLWFsbC9hYXJjaDY0L3BlaS1hYXJjaDY0LWxpdHRsZS5zOiBOZXcgdGVzdC4NCj4gPg0K PiA+IGluY2x1ZGUvQ2hhbmdlTG9nOg0KPiA+DQo+ID4gMjAyMS0xMC0yOSAgVGFtYXIgQ2hyaXN0 aW5hICA8dGFtYXIuY2hyaXN0aW5hQGFybS5jb20+DQo+ID4NCj4gPiAJUFIgYmludXRpbHMvMjYy MDYNCj4gPiAJKiBjb2ZmL2FhcmNoNjQuaDogTmV3IGZpbGUuDQo+ID4gCSogY29mZi9wZS5oIChJ TUFHRV9GSUxFX01BQ0hJTkVfQVJNNjQpOiBOZXcuDQo+ID4NCj4gPiAtLS0gaW5saW5lIGNvcHkg b2YgcGF0Y2ggLS0NCj4gPiBkaWZmIC0tZ2l0IGEvYmZkLy5naXRpZ25vcmUgYi9iZmQvLmdpdGln bm9yZSBpbmRleA0KPiA+DQo+IDBhNTUzMGQxMjhhNzIwNGQ0NjE5ZWE5ZTk1NDMwYWUzN2Q1MzJh ODEuLmQ0Zjc0MjMxMTFlNWJlNjAwOWFiYzY4NQ0KPiA+IDUzOWFmMGMyZTU4ZTkwNDUgMTAwNjQ0 DQo+ID4gLS0tIGEvYmZkLy5naXRpZ25vcmUNCj4gPiArKysgYi9iZmQvLmdpdGlnbm9yZQ0KPiA+ IEBAIC0xMCw2ICsxMCw3IEBADQo+ID4gIC9wZWlnZW4uYw0KPiA+ICAvcGVwaWdlbi5jDQo+ID4g IC9wZXg2NGlnZW4uYw0KPiA+ICsvcGUtYWFyY2g2NGlnZW4uYw0KPiA+ICAvc3RtcC1iZmQtaA0K PiA+ICAvdGFyZ21hdGNoLmgNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9iZmQvTWFrZWZpbGUuYW0g Yi9iZmQvTWFrZWZpbGUuYW0gaW5kZXgNCj4gPg0KPiAwOTcxNzdiYWU1YzM2YzczNGE1MDg4NGNh NjU1MGNkMzg4NzdiNGZhLi43Nzc3ZjczMzcwMmMwOWI0NDFiYzU5MWRhYQ0KPiA+IDViOGMzZDlh YjJhYmQ3IDEwMDY0NA0KPiA+IC0tLSBhL2JmZC9NYWtlZmlsZS5hbQ0KPiA+ICsrKyBiL2JmZC9N YWtlZmlsZS5hbQ0KPiA+IEBAIC01NzUsOCArNTc1LDEwIEBAIEJGRDY0X0JBQ0tFTkRTID0gXA0K PiA+ICAJcGUteDg2XzY0LmxvIFwNCj4gPiAgCXBlaS1pYTY0LmxvIFwNCj4gPiAgCXBlaS14ODZf NjQubG8gXA0KPiA+ICsJcGVpLWFhcmNoNjRsbyBcDQo+ID4gIAlwZXBpZ2VuLmxvIFwNCj4gPiAg CXBleDY0aWdlbi5sbyBcDQo+ID4gKwlwZS1hYXJjaDY0aWdlbi5sbyBcDQo+ID4gIAl2bXMtYWxw aGEubG8NCj4gPg0KPiA+ICBCRkQ2NF9CQUNLRU5EU19DRklMRVMgPSBcDQo+ID4gQEAgLTYxNSw2 ICs2MTcsNyBAQCBCRkQ2NF9CQUNLRU5EU19DRklMRVMgPSBcDQo+ID4gIAlwZS14ODZfNjQuYyBc DQo+ID4gIAlwZWktaWE2NC5jIFwNCj4gPiAgCXBlaS14ODZfNjQuYyBcDQo+ID4gKwlwZWktYWFy Y2g2NC5jIFwNCj4gPiAgCXZtcy1hbHBoYS5jDQo+ID4NCj4gPiAgT1BUSU9OQUxfQkFDS0VORFMg PSBcDQo+ID4gQEAgLTY3Myw3ICs2NzYsNyBAQCBCVUlMRF9DRklMRVMgPSBcDQo+ID4gIAllbGYz Mi1pYTY0LmMgZWxmNjQtaWE2NC5jIFwNCj4gPiAgCWVsZjMyLWxvb25nYXJjaC5jIGVsZjY0LWxv b25nYXJjaC5jIFwNCj4gPiAgCWVsZjMyLXJpc2N2LmMgZWxmNjQtcmlzY3YuYyBcDQo+ID4gLQlw ZWlnZW4uYyBwZXBpZ2VuLmMgcGV4NjRpZ2VuLmMNCj4gPiArCXBlaWdlbi5jIHBlcGlnZW4uYyBw ZXg2NGlnZW4uYyBwZS1hYXJjaDY0aWdlbi5jDQo+ID4NCj4gPiAgQ0ZJTEVTID0gJChTT1VSQ0Vf Q0ZJTEVTKSAkKEJVSUxEX0NGSUxFUykNCj4gPg0KPiA+IEBAIC04NzcsNiArODgwLDEwIEBAIHBl eDY0aWdlbi5jOiBwZVhYaWdlbi5jDQo+ID4gIAllY2hvICIjbGluZSAxIFwicGVYWGlnZW4uY1wi IiA+ICRADQo+ID4gIAkkKFNFRCkgLWUgcy9YWC9wZXg2NC9nIDwgJDwgPj4gJEANCj4gPg0KPiA+ ICtwZS1hYXJjaDY0aWdlbi5jOiBwZVhYaWdlbi5jDQo+ID4gKwllY2hvICIjbGluZSAxIFwicGVY WGlnZW4uY1wiIiA+ICRADQo+ID4gKwkkKFNFRCkgLWUgcy9YWC9wZUFBcmNoNjQvZyA8ICQ8ID4+ ICRADQo+ID4gKw0KPiA+ICBCRkRfSF9ERVBTPSAkKElOQ0RJUikvYW5zaWRlY2wuaCAkKElOQ0RJ Uikvc3ltY2F0LmgNCj4gPiAkKElOQ0RJUikvZGlhZ25vc3RpY3MuaCAgTE9DQUxfSF9ERVBTPSBs aWJiZmQuaCBzeXNkZXAuaCBjb25maWcuaA0KPiA+ICAkKEJGRDMyX0xJQlMpIFwNCj4gPiBkaWZm IC0tZ2l0IGEvYmZkL01ha2VmaWxlLmluIGIvYmZkL01ha2VmaWxlLmluIGluZGV4DQo+ID4NCj4g YTc2YjY1MzI0N2ZkNWI3ZDFmYzg5OTFhYzVmOGFkN2ZiYjVlYWJhMy4uYjI0MzE1MWZlYTM1MDAz MmM2Y2I5MGYxZWMNCj4gPiAxZjM1OWJkYmE1ODlmNSAxMDA2NDQNCj4gPiAtLS0gYS9iZmQvTWFr ZWZpbGUuaW4NCj4gPiArKysgYi9iZmQvTWFrZWZpbGUuaW4NCj4gPiBAQCAtMTAwMiw4ICsxMDAy LDEwIEBAIEJGRDY0X0JBQ0tFTkRTID0gXA0KPiA+ICAJcGUteDg2XzY0LmxvIFwNCj4gPiAgCXBl aS1pYTY0LmxvIFwNCj4gPiAgCXBlaS14ODZfNjQubG8gXA0KPiA+ICsJcGVpLWFhcmNoNjQubG8g XA0KPiA+ICAJcGVwaWdlbi5sbyBcDQo+ID4gIAlwZXg2NGlnZW4ubG8gXA0KPiA+ICsJcGUtYWFy Y2g2NGlnZW4ubG8gXA0KPiA+ICAJdm1zLWFscGhhLmxvDQo+ID4NCj4gPiAgQkZENjRfQkFDS0VO RFNfQ0ZJTEVTID0gXA0KPiA+IEBAIC0xMDQyLDYgKzEwNDQsNyBAQCBCRkQ2NF9CQUNLRU5EU19D RklMRVMgPSBcDQo+ID4gIAlwZS14ODZfNjQuYyBcDQo+ID4gIAlwZWktaWE2NC5jIFwNCj4gPiAg CXBlaS14ODZfNjQuYyBcDQo+ID4gKwlwZWktYWFyY2g2NC5jIFwNCj4gPiAgCXZtcy1hbHBoYS5j DQo+ID4NCj4gPiAgT1BUSU9OQUxfQkFDS0VORFMgPSBcDQo+ID4gQEAgLTEwOTksNyArMTEwMiw3 IEBAIEJVSUxEX0NGSUxFUyA9IFwNCj4gPiAgCWVsZjMyLWlhNjQuYyBlbGY2NC1pYTY0LmMgXA0K PiA+ICAJZWxmMzItbG9vbmdhcmNoLmMgZWxmNjQtbG9vbmdhcmNoLmMgXA0KPiA+ICAJZWxmMzIt cmlzY3YuYyBlbGY2NC1yaXNjdi5jIFwNCj4gPiAtCXBlaWdlbi5jIHBlcGlnZW4uYyBwZXg2NGln ZW4uYw0KPiA+ICsJcGVpZ2VuLmMgcGVwaWdlbi5jIHBleDY0aWdlbi5jIHBlLWFhcmNoNjRpZ2Vu LmMNCj4gPg0KPiA+ICBDRklMRVMgPSAkKFNPVVJDRV9DRklMRVMpICQoQlVJTERfQ0ZJTEVTKSAg U09VUkNFX0hGSUxFUyA9IFwgQEAgLQ0KPiA+IDE1NjIsOSArMTU2NSwxMSBAQCBkaXN0Y2xlYW4t Y29tcGlsZToNCj4gPiAgQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChE RVBESVIpL3BlaS0NCj4gPiBtY29yZS5QbG9AYW1fX3F1b3RlQCAgQEFNREVQX1RSVUVAQGFtX19p bmNsdWRlQA0KPiA+IEBhbV9fcXVvdGVALi8kKERFUERJUikvcGVpLSBzaC5QbG9AYW1fX3F1b3Rl QA0KPiA+IEBBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9w ZWktDQo+ID4geDg2XzY0LlBsb0BhbV9fcXVvdGVADQo+ID4gK0BBTURFUF9UUlVFQEBhbV9faW5j bHVkZUANCj4gPiArQGFtX19xdW90ZUAuLyQoREVQRElSKS9wZWktYWFyY2g2NC5QbG9AYW1fX3F1 b3RlQA0KPiA+ICBAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVADQo+ID4gQGFtX19xdW90ZUAuLyQo REVQRElSKS9wZWlnZW4uUGxvQGFtX19xdW90ZUANCj4gPiAgQEFNREVQX1RSVUVAQGFtX19pbmNs dWRlQA0KPiA+IEBhbV9fcXVvdGVALi8kKERFUERJUikvcGVwaWdlbi5QbG9AYW1fX3F1b3RlQA0K PiA+ICBAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVADQo+ID4gQGFtX19xdW90ZUAuLyQoREVQRElS KS9wZXg2NGlnZW4uUGxvQGFtX19xdW90ZUANCj4gPiArQEFNREVQX1RSVUVAQGFtX19pbmNsdWRl QA0KPiA+ICtAYW1fX3F1b3RlQC4vJChERVBESVIpL3BlLWFhcmNoNjRpZ2VuLlBsb0BhbV9fcXVv dGVADQo+ID4gIEBBTURFUF9UUlVFQEBhbV9faW5jbHVkZUANCj4gPiBAYW1fX3F1b3RlQC4vJChE RVBESVIpL3BsdWdpbi5QbG9AYW1fX3F1b3RlQA0KPiA+ICBAQU1ERVBfVFJVRUBAYW1fX2luY2x1 ZGVADQo+ID4gQGFtX19xdW90ZUAuLyQoREVQRElSKS9wcGNib290LlBsb0BhbV9fcXVvdGVADQo+ ID4gIEBBTURFUF9UUlVFQEBhbV9faW5jbHVkZUANCj4gPiBAYW1fX3F1b3RlQC4vJChERVBESVIp L3JlbG9jLlBsb0BhbV9fcXVvdGVADQo+ID4gQEAgLTIwMTAsNiArMjAxNSwxMSBAQCBwZXBpZ2Vu LmMgOiBwZVhYaWdlbi5jDQo+ID4gIHBleDY0aWdlbi5jOiBwZVhYaWdlbi5jDQo+ID4gIAllY2hv ICIjbGluZSAxIFwicGVYWGlnZW4uY1wiIiA+ICRADQo+ID4gIAkkKFNFRCkgLWUgcy9YWC9wZXg2 NC9nIDwgJDwgPj4gJEANCj4gPiArDQo+ID4gK3BlLWFhcmNoNjRpZ2VuLmM6IHBlWFhpZ2VuLmMN Cj4gPiArCWVjaG8gIiNsaW5lIDEgXCJwZVhYaWdlbi5jXCIiID4gJEANCj4gPiArCSQoU0VEKSAt ZSBzL1hYL3BlQUFyY2g2NC9nIDwgJDwgPj4gJEANCj4gPiArDQo+ID4gICQoQkZEMzJfTElCUykg XA0KPiA+ICAgJChCRkQ2NF9MSUJTKSBcDQo+ID4gICAkKEFMTF9NQUNISU5FUykgXA0KPiA+IGRp ZmYgLS1naXQgYS9iZmQvYmZkLmMgYi9iZmQvYmZkLmMNCj4gPiBpbmRleA0KPiA+DQo+IDQyMWY0 ZjE5ZmQ2MGRhZWZlMzhkZWQ2NDI0YjY3NzQ5YzMzY2RhMjEuLjVjMzc5N2RlMzA1MmI1NzE1YzZj YjIyMjU5DQo+ID4gOWRiZjViMmJkMmU4ZjkgMTAwNjQ0DQo+ID4gLS0tIGEvYmZkL2JmZC5jDQo+ ID4gKysrIGIvYmZkL2JmZC5jDQo+ID4gQEAgLTE3MzgsNiArMTczOCw3IEBAIGJmZF9nZXRfc2ln bl9leHRlbmRfdm1hIChiZmQgKmFiZmQpDQo+ID4gICAgICAgIHx8IHN0cmNtcCAobmFtZSwgInBl aS1pMzg2IikgPT0gMA0KPiA+ICAgICAgICB8fCBzdHJjbXAgKG5hbWUsICJwZS14ODYtNjQiKSA9 PSAwDQo+ID4gICAgICAgIHx8IHN0cmNtcCAobmFtZSwgInBlaS14ODYtNjQiKSA9PSAwDQo+ID4g KyAgICAgIHx8IHN0cmNtcCAobmFtZSwgInBlaS1hYXJjaDY0LWxpdHRsZSIpID09IDANCj4gPiAg ICAgICAgfHwgc3RyY21wIChuYW1lLCAicGUtYXJtLXdpbmNlLWxpdHRsZSIpID09IDANCj4gPiAg ICAgICAgfHwgc3RyY21wIChuYW1lLCAicGVpLWFybS13aW5jZS1saXR0bGUiKSA9PSAwDQo+ID4g ICAgICAgIHx8IHN0cmNtcCAobmFtZSwgImFpeGNvZmYtcnM2MDAwIikgPT0gMCBkaWZmIC0tZ2l0 DQo+ID4gYS9iZmQvY29mZi1hYXJjaDY0LmMgYi9iZmQvY29mZi1hYXJjaDY0LmMgbmV3IGZpbGUg bW9kZSAxMDA2NDQgaW5kZXgNCj4gPg0KPiAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwLi5hOWJjNDE3ZmFlOGI3YzM1M2YxMTI3Y2Y4ZQ0KPiA+IGMxNzk3ODA3OWQ0ZmYy DQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2JmZC9jb2ZmLWFhcmNoNjQuYw0KPiA+IEBA IC0wLDAgKzEsMTY2IEBADQo+ID4gKy8qIEJGRCBiYWNrLWVuZCBmb3IgQUFyY2g2NCBDT0ZGIGZp bGVzLg0KPiA+ICsgICBDb3B5cmlnaHQgKEMpIDIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuDQo+ID4gKw0KPiA+ICsgICBUaGlzIGZpbGUgaXMgcGFydCBvZiBCRkQsIHRoZSBCaW5h cnkgRmlsZSBEZXNjcmlwdG9yIGxpYnJhcnkuDQo+ID4gKw0KPiA+ICsgICBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0K PiA+ICsgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQ0KPiA+ICsgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u OyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcg0KPiA+ICsgICAoYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KPiA+ICsNCj4gPiArICAgVGhpcyBwcm9ncmFtIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQo+ID4gKyAg IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mDQo+ID4gKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4gIFNlZSB0aGUNCj4gPiArICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug Zm9yIG1vcmUgZGV0YWlscy4NCj4gPiArDQo+ID4gKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZl ZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQo+ID4gKyAgIGFsb25n IHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQo+ ID4gKyAgIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCAtIEZpZnRoIEZsb29y LCBCb3N0b24sDQo+ID4gKyAgIE1BIDAyMTEwLTEzMDEsIFVTQS4gICovDQo+ID4gKw0KPiA+ICsN Cj4gPiArI2lmbmRlZiBDT0ZGX1dJVEhfcGVBQXJjaDY0DQo+ID4gKyNkZWZpbmUgQ09GRl9XSVRI X3BlQUFyY2g2NA0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gKy8qIE5vdGUgd2UgaGF2ZSB0byBt YWtlIHN1cmUgbm90IHRvIGluY2x1ZGUgaGVhZGVycyB0d2ljZS4NCj4gPiArICAgTm90IGFsbCBo ZWFkZXJzIGFyZSB3cmFwcGVkIGluICNpZmRlZiBndWFyZHMsIHNvIHdlIGRlZmluZQ0KPiA+ICsg ICBQRUlfSEVBREVSUyB0byBwcmV2ZW50IGRvdWJsZSBpbmNsdWRpbmcgaGVyZS4gICovICNpZm5k ZWYNCj4gPiArUEVJX0hFQURFUlMgI2luY2x1ZGUgInN5c2RlcC5oIg0KPiA+ICsjaW5jbHVkZSAi YmZkLmgiDQo+ID4gKyNpbmNsdWRlICJsaWJiZmQuaCINCj4gPiArI2luY2x1ZGUgImNvZmYvYWFy Y2g2NC5oIg0KPiA+ICsjaW5jbHVkZSAiY29mZi9pbnRlcm5hbC5oIg0KPiA+ICsjaW5jbHVkZSAi Y29mZi9wZS5oIg0KPiA+ICsjaW5jbHVkZSAibGliY29mZi5oIg0KPiA+ICsjaW5jbHVkZSAibGli aWJlcnR5LmgiDQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArI2luY2x1ZGUgImxpYmNvZmYuaCIN Cj4gPiArDQo+ID4gKy8qIFRoZSBwYWdlIHNpemUgaXMgYSBndWVzcyBiYXNlZCBvbiBFTEYuICAq Lw0KPiA+ICsNCj4gPiArI2RlZmluZSBDT0ZGX1BBR0VfU0laRSAweDEwMDANCj4gPiArDQo+ID4g Ky8qIEFsbCB1c2VycyBvZiB0aGlzIGZpbGUgaGF2ZSBiZmRfb2N0ZXRzX3Blcl9ieXRlIChhYmZk LCBzZWMpID09IDEuDQo+ID4gKyovICNkZWZpbmUgT0NURVRTX1BFUl9CWVRFKEFCRkQsIFNFQykg MQ0KPiA+ICsNCj4gPiArI2lmbmRlZiBQQ1JFTE9GRlNFVA0KPiA+ICsjZGVmaW5lIFBDUkVMT0ZG U0VUIHRydWUNCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICsvKiBDdXJyZW50bHkgd2UgZG9uJ3Qg aGFuZGxlIGFueSByZWxvY2F0aW9ucy4gICovIHN0YXRpYw0KPiA+ICtyZWxvY19ob3d0b190eXBl IHBlX2FhcmNoNjRfc3RkX3JlbG9jX2hvd3RvW10gPQ0KPiA+ICsgIHsNCj4gPiArDQo+ID4gKyAg fTsNCj4gPiArDQo+ID4gKyNkZWZpbmUgQ09GRl9ERUZBVUxUX1NFQ1RJT05fQUxJR05NRU5UX1BP V0VSICAyDQo+ID4gKyNkZWZpbmUgQ09GRl9QQUdFX1NJWkUJCQkgICAgICAweDEwMDANCj4gPiAr DQo+ID4gKyNpZm5kZWYgTlVNX0VMRU0NCj4gPiArI2RlZmluZSBOVU1fRUxFTShhKSAoKHNpemVv ZiAoYSkpIC8gc2l6ZW9mICgoYSlbMF0pKSAjZW5kaWYNCj4gPiArDQo+ID4gKyNkZWZpbmUgTlVN X1JFTE9DUyBOVU1fRUxFTSAocGVfYWFyY2g2NF9zdGRfcmVsb2NfaG93dG8pDQo+ID4gKw0KPiA+ ICsjZGVmaW5lIFJUWVBFMkhPV1RPKGNhY2hlX3B0ciwgZHN0KSAgICAgICAgICAgICBcDQo+ID4g KyAgKGNhY2hlX3B0ciktPmhvd3RvID0gTlVMTA0KPiA+ICsNCj4gPiArI2lmbmRlZiBiZmRfcGVf cHJpbnRfcGRhdGENCj4gPiArI2RlZmluZSBiZmRfcGVfcHJpbnRfcGRhdGEgICAgICBOVUxMDQo+ ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArLyogUmV0dXJuIFRSVUUgaWYgdGhpcyByZWxvY2F0aW9u IHNob3VsZA0KPiA+ICsgICBhcHBlYXIgaW4gdGhlIG91dHB1dCAucmVsb2Mgc2VjdGlvbi4gICov DQo+ID4gKw0KPiA+ICtzdGF0aWMgYm9vbA0KPiA+ICtpbl9yZWxvY19wIChiZmQgKiBhYmZkIEFU VFJJQlVURV9VTlVTRUQsDQo+ID4gKyAgICAgICAgICAgIHJlbG9jX2hvd3RvX3R5cGUgKiBob3d0 bykgew0KPiA+ICsgIHJldHVybiAhaG93dG8tPnBjX3JlbGF0aXZlOw0KPiA+ICt9DQo+ID4gKw0K PiA+ICsjaW5jbHVkZSAiY29mZmNvZGUuaCINCj4gPiArDQo+ID4gKy8qIFRhcmdldCB2ZWN0b3Jz LiAgKi8NCj4gPiArY29uc3QgYmZkX3RhcmdldA0KPiA+ICsjaWZkZWYgVEFSR0VUX1NZTQ0KPiA+ ICsgIFRBUkdFVF9TWU0gPQ0KPiA+ICsjZWxzZQ0KPiA+ICsgIGFhcmNoNjRfcGVpX3ZlYyA9DQo+ ID4gKyNlbmRpZg0KPiA+ICt7DQo+ID4gKyNpZmRlZiBUQVJHRVRfTkFNRQ0KPiA+ICsgIFRBUkdF VF9OQU1FLA0KPiA+ICsjZWxzZQ0KPiA+ICsgInBlaS1hYXJjaDY0LWxpdHRsZSIsCQkJLyogTmFt ZS4gICovDQo+ID4gKyNlbmRpZg0KPiA+ICsgIGJmZF90YXJnZXRfY29mZl9mbGF2b3VyLA0KPiA+ ICsgIEJGRF9FTkRJQU5fTElUVExFLAkJLyogRGF0YSBieXRlIG9yZGVyIGlzIGxpdHRsZS4gICov DQo+ID4gKyAgQkZEX0VORElBTl9MSVRUTEUsCQkvKiBIZWFkZXIgYnl0ZSBvcmRlciBpcyBsaXR0 bGUuICAqLw0KPiA+ICsNCj4gPiArICAoSEFTX1JFTE9DIHwgRVhFQ19QCQkvKiBPYmplY3QgZmxh Z3MuICAqLw0KPiA+ICsgICB8IEhBU19MSU5FTk8gfCBIQVNfREVCVUcNCj4gPiArICAgfCBIQVNf U1lNUyB8IEhBU19MT0NBTFMgfCBXUF9URVhUIHwgRF9QQUdFRCB8IEJGRF9DT01QUkVTUyB8DQo+ ID4gKyBCRkRfREVDT01QUkVTUyksDQo+ID4gKw0KPiA+ICsgIChTRUNfSEFTX0NPTlRFTlRTIHwg U0VDX0FMTE9DIHwgU0VDX0xPQUQgfCBTRUNfUkVMT0MgLyogU2VjdGlvbg0KPiA+ICtmbGFncy4g ICovICNpZiBkZWZpbmVkKENPRkZfV0lUSF9QRSkNCj4gPiArICAgfCBTRUNfTElOS19PTkNFIHwg U0VDX0xJTktfRFVQTElDQVRFUyB8IFNFQ19SRUFET05MWSB8DQo+ID4gU0VDX0RFQlVHR0lORw0K PiA+ICsjZW5kaWYNCj4gPiArICAgfCBTRUNfQ09ERSB8IFNFQ19EQVRBIHwgU0VDX0VYQ0xVREUg KSwNCj4gPiArDQo+ID4gKyNpZmRlZiBUQVJHRVRfVU5ERVJTQ09SRQ0KPiA+ICsgIFRBUkdFVF9V TkRFUlNDT1JFLAkJLyogTGVhZGluZyB1bmRlcnNjb3JlLiAgKi8NCj4gPiArI2Vsc2UNCj4gPiAr ICAwLAkJCQkvKiBMZWFkaW5nIHVuZGVyc2NvcmUuICAqLw0KPiA+ICsjZW5kaWYNCj4gPiArICAn LycsCQkJCS8qIEFyX3BhZF9jaGFyLiAgKi8NCj4gPiArICAxNSwJCQkJLyogQXJfbWF4X25hbWVs ZW4uICAqLw0KPiA+ICsgIDAsCQkJCS8qIG1hdGNoIHByaW9yaXR5LiAgKi8NCj4gPiArICBUQVJH RVRfS0VFUF9VTlVTRURfU0VDVElPTl9TWU1CT0xTLCAvKiBrZWVwIHVudXNlZCBzZWN0aW9uDQo+ ID4gc3ltYm9scy4NCj4gPiArKi8NCj4gPiArDQo+ID4gKyAgICAgLyogRGF0YSBjb252ZXJzaW9u IGZ1bmN0aW9ucy4gICovDQo+ID4gKyAgICAgYmZkX2dldGw2NCwgYmZkX2dldGxfc2lnbmVkXzY0 LCBiZmRfcHV0bDY0LA0KPiA+ICsgICAgIGJmZF9nZXRsMzIsIGJmZF9nZXRsX3NpZ25lZF8zMiwg YmZkX3B1dGwzMiwNCj4gPiArICAgICBiZmRfZ2V0bDE2LCBiZmRfZ2V0bF9zaWduZWRfMTYsIGJm ZF9wdXRsMTYsIC8qIERhdGEuICAqLw0KPiA+ICsgICAgIC8qIEhlYWRlciBjb252ZXJzaW9uIGZ1 bmN0aW9ucy4gICovDQo+ID4gKyAgICAgYmZkX2dldGw2NCwgYmZkX2dldGxfc2lnbmVkXzY0LCBi ZmRfcHV0bDY0LA0KPiA+ICsgICAgIGJmZF9nZXRsMzIsIGJmZF9nZXRsX3NpZ25lZF8zMiwgYmZk X3B1dGwzMiwNCj4gPiArICAgICBiZmRfZ2V0bDE2LCBiZmRfZ2V0bF9zaWduZWRfMTYsIGJmZF9w dXRsMTYsIC8qIEhkcnMuICAqLw0KPiA+ICsNCj4gPiArICAvKiBOb3RlIHRoYXQgd2UgYWxsb3cg YW4gb2JqZWN0IGZpbGUgdG8gYmUgdHJlYXRlZCBhcyBhIGNvcmUgZmlsZSBhcyB3ZWxsLiAgKi8N Cj4gPiArICB7CQkJCS8qIGJmZF9jaGVja19mb3JtYXQuICAqLw0KPiA+ICsgICAgX2JmZF9kdW1t eV90YXJnZXQsDQo+ID4gKyAgICBjb2ZmX29iamVjdF9wLA0KPiA+ICsgICAgYmZkX2dlbmVyaWNf YXJjaGl2ZV9wLA0KPiA+ICsgICAgY29mZl9vYmplY3RfcA0KPiA+ICsgIH0sDQo+ID4gKyAgewkJ CQkvKiBiZmRfc2V0X2Zvcm1hdC4gICovDQo+ID4gKyAgICBfYmZkX2Jvb2xfYmZkX2ZhbHNlX2Vy cm9yLA0KPiA+ICsgICAgY29mZl9ta29iamVjdCwNCj4gPiArICAgIF9iZmRfZ2VuZXJpY19ta2Fy Y2hpdmUsDQo+ID4gKyAgICBfYmZkX2Jvb2xfYmZkX2ZhbHNlX2Vycm9yDQo+ID4gKyAgfSwNCj4g PiArICB7CQkJCS8qIGJmZF93cml0ZV9jb250ZW50cy4gICovDQo+ID4gKyAgICBfYmZkX2Jvb2xf YmZkX2ZhbHNlX2Vycm9yLA0KPiA+ICsgICAgY29mZl93cml0ZV9vYmplY3RfY29udGVudHMsDQo+ ID4gKyAgICBfYmZkX3dyaXRlX2FyY2hpdmVfY29udGVudHMsDQo+ID4gKyAgICBfYmZkX2Jvb2xf YmZkX2ZhbHNlX2Vycm9yDQo+ID4gKyAgfSwNCj4gPiArDQo+ID4gKyAgQkZEX0pVTVBfVEFCTEVf R0VORVJJQyAoY29mZiksDQo+ID4gKyAgQkZEX0pVTVBfVEFCTEVfQ09QWSAoY29mZiksDQo+ID4g KyAgQkZEX0pVTVBfVEFCTEVfQ09SRSAoX2JmZF9ub2NvcmUpLA0KPiA+ICsgIEJGRF9KVU1QX1RB QkxFX0FSQ0hJVkUgKF9iZmRfYXJjaGl2ZV9jb2ZmKSwNCj4gPiBCRkRfSlVNUF9UQUJMRV9TWU1C T0xTDQo+ID4gKyAoY29mZiksICBCRkRfSlVNUF9UQUJMRV9SRUxPQ1MgKGNvZmYpLCAgQkZEX0pV TVBfVEFCTEVfV1JJVEUNCj4gKGNvZmYpLA0KPiA+ICsgQkZEX0pVTVBfVEFCTEVfTElOSyAoY29m ZiksICBCRkRfSlVNUF9UQUJMRV9EWU5BTUlDDQo+ID4gKF9iZmRfbm9keW5hbWljKSwNCj4gPiAr DQo+ID4gKyAgTlVMTCwNCj4gPiArDQo+ID4gKyAgQ09GRl9TV0FQX1RBQkxFDQo+ID4gK307DQo+ ID4gZGlmZiAtLWdpdCBhL2JmZC9jb2ZmY29kZS5oIGIvYmZkL2NvZmZjb2RlLmggaW5kZXgNCj4g Pg0KPiA3OTY3Y2VkZjkxOGIwODZhMTI5YzFjOTE4YWY2NTIwYjI5YWIyMDM0Li44NjY4OGQzMWNk YjBhNDgwOWI3ZmMwMTA3OQ0KPiA+IGQxNmU4NzU3M2RkNTZmIDEwMDY0NA0KPiA+IC0tLSBhL2Jm ZC9jb2ZmY29kZS5oDQo+ID4gKysrIGIvYmZkL2NvZmZjb2RlLmgNCj4gPiBAQCAtMjIyMSw2ICsy MjIxLDEyIEBAIGNvZmZfc2V0X2FyY2hfbWFjaF9ob29rIChiZmQgKmFiZmQsIHZvaWQgKg0KPiA+ IGZpbGVoZHIpDQo+ID4gIAl9DQo+ID4gICAgICAgIGJyZWFrOw0KPiA+ICAjZW5kaWYNCj4gPiAr I2lmZGVmIEFBUkNINjRNQUdJQw0KPiA+ICsgICAgY2FzZSBBQVJDSDY0TUFHSUM6DQo+ID4gKyAg ICAgIGFyY2ggPSBiZmRfYXJjaF9hYXJjaDY0Ow0KPiA+ICsgICAgICBtYWNoaW5lID0gaW50ZXJu YWxfZi0+Zl9mbGFncyAmIEZfQUFSQ0g2NF9BUkNISVRFQ1RVUkVfTUFTSzsNCj4gPiArICAgICAg YnJlYWs7DQo+ID4gKyNlbmRpZg0KPiA+ICAjaWZkZWYgWjgwTUFHSUMNCj4gPiAgICAgIGNhc2Ug WjgwTUFHSUM6DQo+ID4gICAgICAgIGFyY2ggPSBiZmRfYXJjaF96ODA7DQo+ID4gQEAgLTI3Nzcs NiArMjc4MywxMiBAQCBjb2ZmX3NldF9mbGFncyAoYmZkICogYWJmZCwNCj4gPiAgICAgICAgcmV0 dXJuIHRydWU7DQo+ID4gICNlbmRpZg0KPiA+DQo+ID4gKyNpZmRlZiBBQVJDSDY0TUFHSUMNCj4g PiArICAgIGNhc2UgYmZkX2FyY2hfYWFyY2g2NDoNCj4gPiArICAgICAgKiBtYWdpY3AgPSBBQVJD SDY0TUFHSUM7DQo+ID4gKyAgICAgIHJldHVybiB0cnVlOw0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ ID4gICNpZmRlZiBBUk1NQUdJQw0KPiA+ICAgICAgY2FzZSBiZmRfYXJjaF9hcm06DQo+ID4gICNp ZmRlZiBBUk1fV0lOQ0UNCj4gPiBAQCAtMzg3Miw3ICszODg0LDcgQEAgY29mZl93cml0ZV9vYmpl Y3RfY29udGVudHMgKGJmZCAqIGFiZmQpDQo+ID4gICAgICBpbnRlcm5hbF9mLmZfZmxhZ3MgfD0g SU1BR0VfRklMRV9MQVJHRV9BRERSRVNTX0FXQVJFOyAgI2VuZGlmDQo+ID4NCj4gPiAtI2lmbmRl ZiBDT0ZGX1dJVEhfcGV4NjQNCj4gPiArI2lmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkgJiYg IWRlZmluZWQoQ09GRl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgI2lmZGVmIENPRkZfV0lUSF9QRQ0K PiA+ICAgIGludGVybmFsX2YuZl9mbGFncyB8PSBJTUFHRV9GSUxFXzMyQklUX01BQ0hJTkU7ICAj ZWxzZSBAQCAtMzkyMSw2DQo+ID4gKzM5MzMsMTEgQEAgY29mZl93cml0ZV9vYmplY3RfY29udGVu dHMgKGJmZCAqIGFiZmQpDQo+ID4gICAgICBpbnRlcm5hbF9hLm1hZ2ljID0gWk1BR0lDOw0KPiA+ ICAjZW5kaWYNCj4gPg0KPiA+ICsjaWYgZGVmaW5lZChBQVJDSDY0KQ0KPiA+ICsjZGVmaW5lIF9f QV9NQUdJQ19TRVRfXw0KPiA+ICsgICAgaW50ZXJuYWxfYS5tYWdpYyA9IFpNQUdJQzsNCj4gPiAr I2VuZGlmDQo+ID4gKw0KPiA+ICAjaWYgZGVmaW5lZCBNQ09SRV9QRQ0KPiA+ICAjZGVmaW5lIF9f QV9NQUdJQ19TRVRfXw0KPiA+ICAgICAgaW50ZXJuYWxfYS5tYWdpYyA9IElNQUdFX05UX09QVElP TkFMX0hEUl9NQUdJQzsgZGlmZiAtLWdpdA0KPiA+IGEvYmZkL2NvbmZpZy5iZmQgYi9iZmQvY29u ZmlnLmJmZCBpbmRleA0KPiA+DQo+IDNjZjMyMjcxMzMzNGNmZGVhZWJjNjcxZjQ4ZmQzMjE1NThh NGYyNzkuLjc3NjkxODI1M2VmMTExNDBkZjk0MDQyYjM3OQ0KPiA+IDc4OWU2ZjdiMWU1OTggMTAw NjQ0DQo+ID4gLS0tIGEvYmZkL2NvbmZpZy5iZmQNCj4gPiArKysgYi9iZmQvY29uZmlnLmJmZA0K PiA+IEBAIC0yNDgsNyArMjQ4LDcgQEAgY2FzZSAiJHt0YXJnfSIgaW4NCj4gPiAgICAgIDs7DQo+ ID4gICAgYWFyY2g2NC0qLWVsZiB8IGFhcmNoNjQtKi1ydGVtcyogfCBhYXJjaDY0LSotZ2Vub2Rl KikNCj4gPiAgICAgIHRhcmdfZGVmdmVjPWFhcmNoNjRfZWxmNjRfbGVfdmVjDQo+ID4gLSAgICB0 YXJnX3NlbHZlY3M9ImFhcmNoNjRfZWxmNjRfYmVfdmVjIGFhcmNoNjRfZWxmMzJfbGVfdmVjDQo+ ID4gYWFyY2g2NF9lbGYzMl9iZV92ZWMgYXJtX2VsZjMyX2xlX3ZlYyBhcm1fZWxmMzJfYmVfdmVj Ig0KPiA+ICsgICAgdGFyZ19zZWx2ZWNzPSJhYXJjaDY0X2VsZjY0X2JlX3ZlYyBhYXJjaDY0X2Vs ZjMyX2xlX3ZlYw0KPiA+IGFhcmNoNjRfZWxmMzJfYmVfdmVjIGFybV9lbGYzMl9sZV92ZWMgYXJt X2VsZjMyX2JlX3ZlYw0KPiA+IGFhcmNoNjRfcGVpX3ZlYyINCj4gPiAgICAgIHdhbnQ2ND10cnVl DQo+ID4gICAgICA7Ow0KPiA+ICAgIGFhcmNoNjRfYmUtKi1lbGYpDQo+ID4gQEAgLTI3OCw3ICsy NzgsNyBAQCBjYXNlICIke3Rhcmd9IiBpbg0KPiA+ICAgICAgOzsNCj4gPiAgICBhYXJjaDY0LSot bGludXgqIHwgYWFyY2g2NC0qLW5ldGJzZCopDQo+ID4gICAgICB0YXJnX2RlZnZlYz1hYXJjaDY0 X2VsZjY0X2xlX3ZlYw0KPiA+IC0gICAgdGFyZ19zZWx2ZWNzPSJhYXJjaDY0X2VsZjY0X2JlX3Zl YyBhYXJjaDY0X2VsZjMyX2xlX3ZlYw0KPiA+IGFhcmNoNjRfZWxmMzJfYmVfdmVjIGFybV9lbGYz Ml9sZV92ZWMgYXJtX2VsZjMyX2JlX3ZlYyINCj4gPiArICAgIHRhcmdfc2VsdmVjcz0iYWFyY2g2 NF9lbGY2NF9iZV92ZWMgYWFyY2g2NF9lbGYzMl9sZV92ZWMNCj4gPiBhYXJjaDY0X2VsZjMyX2Jl X3ZlYyBhcm1fZWxmMzJfbGVfdmVjIGFybV9lbGYzMl9iZV92ZWMNCj4gPiBhYXJjaDY0X3BlaV92 ZWMiDQo+ID4gICAgICB3YW50NjQ9dHJ1ZQ0KPiA+ICAgICAgOzsNCj4gPiAgICBhYXJjaDY0X2Jl LSotbGludXgqIHwgYWFyY2g2NF9iZS0qLW5ldGJzZCopIGRpZmYgLS1naXQNCj4gPiBhL2JmZC9j b25maWd1cmUgYi9iZmQvY29uZmlndXJlIGluZGV4DQo+ID4NCj4gNTg0NDllZThhNjA4ZTNmM2Fj MWQ0YWQzNzY5OTJkNDFmODdmNDA0ZS4uNTc0MWUwMzlhNGZlZDM4NmQ4MjZhZDQ5MQ0KPiA+IDBl MWZkMDI5YmQzN2YyMyAxMDA3NTUNCj4gPiAtLS0gYS9iZmQvY29uZmlndXJlDQo+ID4gKysrIGIv YmZkL2NvbmZpZ3VyZQ0KPiA+IEBAIC0xMzI1Nyw2ICsxMzI1Nyw3IEBAIGRvDQo+ID4gICAgICBh YXJjaDY0X2VsZjY0X2xlX3ZlYykJICAgdGI9IiR0YiBlbGY2NC1hYXJjaDY0LmxvIGVsZnh4LWFh cmNoNjQubG8NCj4gPiBlbGYtaWZ1bmMubG8gZWxmNjQubG8gJGVsZiI7IHRhcmdldF9zaXplPTY0 IDs7DQo+ID4gICAgICBhYXJjaDY0X2VsZjY0X2xlX2Nsb3VkYWJpX3ZlYykgdGI9IiR0YiBlbGY2 NC1hYXJjaDY0LmxvDQo+ID4gZWxmeHgtYWFyY2g2NC5sbyBlbGYtaWZ1bmMubG8gZWxmNjQubG8g JGVsZiI7IHRhcmdldF9zaXplPTY0IDs7DQo+ID4gICAgICBhYXJjaDY0X21hY2hfb192ZWMpCQkg dGI9IiR0YiBtYWNoLW8tYWFyY2g2NC5sbyI7DQo+ID4gdGFyZ2V0X3NpemU9NjQgOzsNCj4gPiAr ICAgIGFhcmNoNjRfcGVpX3ZlYykJCSB0Yj0iJHRiIHBlaS1hYXJjaDY0LmxvIHBlLWFhcmNoNjRp Z2VuLmxvDQo+ID4gJGNvZmYiOyB0YXJnZXRfc2l6ZT02NCA7Ow0KPiA+ICAgICAgYWxwaGFfZWNv ZmZfbGVfdmVjKQkJIHRiPSIkdGIgY29mZi1hbHBoYS5sbyBlY29mZi5sbyAkZWNvZmYiOw0KPiA+ IHRhcmdldF9zaXplPTY0IDs7DQo+ID4gICAgICBhbHBoYV9lbGY2NF92ZWMpCQkgdGI9IiR0YiBl bGY2NC1hbHBoYS5sbyBlbGY2NC5sbyAkZWxmIjsNCj4gPiB0YXJnZXRfc2l6ZT02NCA7Ow0KPiA+ ICAgICAgYWxwaGFfZWxmNjRfZmJzZF92ZWMpCSB0Yj0iJHRiIGVsZjY0LWFscGhhLmxvIGVsZjY0 LmxvICRlbGYiOw0KPiA+IHRhcmdldF9zaXplPTY0IDs7DQo+ID4gZGlmZiAtLWdpdCBhL2JmZC9j b25maWd1cmUuYWMgYi9iZmQvY29uZmlndXJlLmFjIGluZGV4DQo+ID4NCj4gNTBiYTM5MWZmZjM5 ODg3MTdhNzc2MDQ4OTUwOGVjMGQzODg0NTliNS4uMWZhZGZkN2Q5MWVkN2VhZDZiMDRiZTIxNw0K PiA+IDNkNmM1OTZmYjRhZjIyMSAxMDA2NDQNCj4gPiAtLS0gYS9iZmQvY29uZmlndXJlLmFjDQo+ ID4gKysrIGIvYmZkL2NvbmZpZ3VyZS5hYw0KPiA+IEBAIC00MzYsNiArNDM2LDcgQEAgZG8NCj4g PiAgICAgIGFhcmNoNjRfZWxmNjRfbGVfdmVjKQkgICB0Yj0iJHRiIGVsZjY0LWFhcmNoNjQubG8g ZWxmeHgtYWFyY2g2NC5sbw0KPiA+IGVsZi1pZnVuYy5sbyBlbGY2NC5sbyAkZWxmIjsgdGFyZ2V0 X3NpemU9NjQgOzsNCj4gPiAgICAgIGFhcmNoNjRfZWxmNjRfbGVfY2xvdWRhYmlfdmVjKSB0Yj0i JHRiIGVsZjY0LWFhcmNoNjQubG8NCj4gPiBlbGZ4eC1hYXJjaDY0LmxvIGVsZi1pZnVuYy5sbyBl bGY2NC5sbyAkZWxmIjsgdGFyZ2V0X3NpemU9NjQgOzsNCj4gPiAgICAgIGFhcmNoNjRfbWFjaF9v X3ZlYykJCSB0Yj0iJHRiIG1hY2gtby1hYXJjaDY0LmxvIjsNCj4gPiB0YXJnZXRfc2l6ZT02NCA7 Ow0KPiA+ICsgICAgYWFyY2g2NF9wZWlfdmVjKQkJIHRiPSIkdGIgcGVpLWFhcmNoNjQubG8gcGUt YWFyY2g2NGlnZW4ubG8NCj4gPiAkY29mZiI7IHRhcmdldF9zaXplPTY0IDs7DQo+ID4gICAgICBh bHBoYV9lY29mZl9sZV92ZWMpCQkgdGI9IiR0YiBjb2ZmLWFscGhhLmxvIGVjb2ZmLmxvICRlY29m ZiI7DQo+ID4gdGFyZ2V0X3NpemU9NjQgOzsNCj4gPiAgICAgIGFscGhhX2VsZjY0X3ZlYykJCSB0 Yj0iJHRiIGVsZjY0LWFscGhhLmxvIGVsZjY0LmxvICRlbGYiOw0KPiA+IHRhcmdldF9zaXplPTY0 IDs7DQo+ID4gICAgICBhbHBoYV9lbGY2NF9mYnNkX3ZlYykJIHRiPSIkdGIgZWxmNjQtYWxwaGEu bG8gZWxmNjQubG8gJGVsZiI7DQo+ID4gdGFyZ2V0X3NpemU9NjQgOzsNCj4gPiBkaWZmIC0tZ2l0 IGEvYmZkL2xpYnBlaS5oIGIvYmZkL2xpYnBlaS5oIGluZGV4DQo+ID4NCj4gNGRlMGM5ZmQwNDhh YzFkYzljZjZlNGNlMDA3NWJjOTVlNjEwY2JkNi4uMjY1ODllOGU1MjBmOGVlOWFiNzUyODIyZQ0K PiA+IDc2OTY0YThmMGUyOTc5YyAxMDA2NDQNCj4gPiAtLS0gYS9iZmQvbGlicGVpLmgNCj4gPiAr KysgYi9iZmQvbGlicGVpLmgNCj4gPiBAQCAtMjc1LDYgKzI3NSw0MSBAQA0KPiA+ICAjZGVmaW5l IF9iZmRfWFhpX3dyaXRlX2NvZGV2aWV3X3JlY29yZA0KPiA+IAlfYmZkX3BlcGlfd3JpdGVfY29k ZXZpZXdfcmVjb3JkDQo+ID4gICNkZWZpbmUgX2JmZF9YWGlfc2x1cnBfY29kZXZpZXdfcmVjb3Jk DQo+ID4gCV9iZmRfcGVwaV9zbHVycF9jb2Rldmlld19yZWNvcmQNCj4gPg0KPiA+ICsjZWxpZiBk ZWZpbmVkIENPRkZfV0lUSF9wZUFBcmNoNjQNCj4gPiArDQo+ID4gKyNkZWZpbmUgR0VUX09QVEhE Ul9JTUFHRV9CQVNFCQkgSF9HRVRfNjQNCj4gPiArI2RlZmluZSBQVVRfT1BUSERSX0lNQUdFX0JB U0UJCSBIX1BVVF82NA0KPiA+ICsjZGVmaW5lIEdFVF9PUFRIRFJfU0laRV9PRl9TVEFDS19SRVNF UlZFIEhfR0VUXzY0ICNkZWZpbmUNCj4gPiArUFVUX09QVEhEUl9TSVpFX09GX1NUQUNLX1JFU0VS VkUgSF9QVVRfNjQNCj4gPiArI2RlZmluZSBHRVRfT1BUSERSX1NJWkVfT0ZfU1RBQ0tfQ09NTUlU CSBIX0dFVF82NA0KPiA+ICsjZGVmaW5lIFBVVF9PUFRIRFJfU0laRV9PRl9TVEFDS19DT01NSVQJ IEhfUFVUXzY0DQo+ID4gKyNkZWZpbmUgR0VUX09QVEhEUl9TSVpFX09GX0hFQVBfUkVTRVJWRQkg SF9HRVRfNjQNCj4gPiArI2RlZmluZSBQVVRfT1BUSERSX1NJWkVfT0ZfSEVBUF9SRVNFUlZFCSBI X1BVVF82NA0KPiA+ICsjZGVmaW5lIEdFVF9PUFRIRFJfU0laRV9PRl9IRUFQX0NPTU1JVAkgSF9H RVRfNjQNCj4gPiArI2RlZmluZSBQVVRfT1BUSERSX1NJWkVfT0ZfSEVBUF9DT01NSVQJIEhfUFVU XzY0DQo+ID4gKyNkZWZpbmUgR0VUX1BEQVRBX0VOVFJZCQkJIGJmZF9nZXRfMzINCj4gPiArDQo+ ID4gKyNkZWZpbmUgX2JmZF9YWF9iZmRfY29weV9wcml2YXRlX2JmZF9kYXRhX2NvbW1vbg0KPiA+ IAlfYmZkX3BlQUFyY2g2NF9iZmRfY29weV9wcml2YXRlX2JmZF9kYXRhX2NvbW1vbg0KPiA+ICsj ZGVmaW5lIF9iZmRfWFhfYmZkX2NvcHlfcHJpdmF0ZV9zZWN0aW9uX2RhdGENCj4gPiAJX2JmZF9w ZUFBcmNoNjRfYmZkX2NvcHlfcHJpdmF0ZV9zZWN0aW9uX2RhdGENCj4gPiArI2RlZmluZSBfYmZk X1hYX2dldF9zeW1ib2xfaW5mbw0KPiA+IAlfYmZkX3BlQUFyY2g2NF9nZXRfc3ltYm9sX2luZm8N Cj4gPiArI2RlZmluZSBfYmZkX1hYX29ubHlfc3dhcF9maWxlaGRyX291dA0KPiA+IAlfYmZkX3Bl QUFyY2g2NF9vbmx5X3N3YXBfZmlsZWhkcl9vdXQNCj4gPiArI2RlZmluZSBfYmZkX1hYX3ByaW50 X3ByaXZhdGVfYmZkX2RhdGFfY29tbW9uDQo+ID4gCV9iZmRfcGVBQXJjaDY0X3ByaW50X3ByaXZh dGVfYmZkX2RhdGFfY29tbW9uDQo+ID4gKyNkZWZpbmUgX2JmZF9YWGlfZmluYWxfbGlua19wb3N0 c2NyaXB0DQo+ID4gCV9iZmRfcGVBQXJjaDY0aV9maW5hbF9saW5rX3Bvc3RzY3JpcHQNCj4gPiAr I2RlZmluZSBfYmZkX1hYaV9vbmx5X3N3YXBfZmlsZWhkcl9vdXQNCj4gPiAJX2JmZF9wZUFBcmNo NjRpX29ubHlfc3dhcF9maWxlaGRyX291dA0KPiA+ICsjZGVmaW5lIF9iZmRfWFhpX3N3YXBfYW91 dGhkcl9pbg0KPiA+IAlfYmZkX3BlQUFyY2g2NGlfc3dhcF9hb3V0aGRyX2luDQo+ID4gKyNkZWZp bmUgX2JmZF9YWGlfc3dhcF9hb3V0aGRyX291dA0KPiA+IAlfYmZkX3BlQUFyY2g2NGlfc3dhcF9h b3V0aGRyX291dA0KPiA+ICsjZGVmaW5lIF9iZmRfWFhpX3N3YXBfYXV4X2luDQo+ID4gCV9iZmRf cGVBQXJjaDY0aV9zd2FwX2F1eF9pbg0KPiA+ICsjZGVmaW5lIF9iZmRfWFhpX3N3YXBfYXV4X291 dA0KPiA+IAlfYmZkX3BlQUFyY2g2NGlfc3dhcF9hdXhfb3V0DQo+ID4gKyNkZWZpbmUgX2JmZF9Y WGlfc3dhcF9saW5lbm9faW4NCj4gPiAJX2JmZF9wZUFBcmNoNjRpX3N3YXBfbGluZW5vX2luDQo+ ID4gKyNkZWZpbmUgX2JmZF9YWGlfc3dhcF9saW5lbm9fb3V0DQo+ID4gCV9iZmRfcGVBQXJjaDY0 aV9zd2FwX2xpbmVub19vdXQNCj4gPiArI2RlZmluZSBfYmZkX1hYaV9zd2FwX3Njbmhkcl9vdXQN Cj4gPiAJX2JmZF9wZUFBcmNoNjRpX3N3YXBfc2NuaGRyX291dA0KPiA+ICsjZGVmaW5lIF9iZmRf WFhpX3N3YXBfc3ltX2luDQo+ID4gCV9iZmRfcGVBQXJjaDY0aV9zd2FwX3N5bV9pbg0KPiA+ICsj ZGVmaW5lIF9iZmRfWFhpX3N3YXBfc3ltX291dA0KPiA+IAlfYmZkX3BlQUFyY2g2NGlfc3dhcF9z eW1fb3V0DQo+ID4gKyNkZWZpbmUgX2JmZF9YWGlfc3dhcF9kZWJ1Z2Rpcl9pbg0KPiA+IAlfYmZk X3BlQUFyY2g2NGlfc3dhcF9kZWJ1Z2Rpcl9pbg0KPiA+ICsjZGVmaW5lIF9iZmRfWFhpX3N3YXBf ZGVidWdkaXJfb3V0DQo+ID4gCV9iZmRfcGVBQXJjaDY0aV9zd2FwX2RlYnVnZGlyX291dA0KPiA+ ICsjZGVmaW5lIF9iZmRfWFhpX3dyaXRlX2NvZGV2aWV3X3JlY29yZA0KPiA+IAlfYmZkX3BlQUFy Y2g2NGlfd3JpdGVfY29kZXZpZXdfcmVjb3JkDQo+ID4gKyNkZWZpbmUgX2JmZF9YWGlfc2x1cnBf Y29kZXZpZXdfcmVjb3JkDQo+ID4gCV9iZmRfcGVBQXJjaDY0aV9zbHVycF9jb2Rldmlld19yZWNv cmQNCj4gPiArDQo+ID4gICNlbHNlIC8qICFDT0ZGX1dJVEhfcGVwICovDQo+ID4NCj4gPiAgI2Rl ZmluZSBHRVRfT1BUSERSX0lNQUdFX0JBU0UgSF9HRVRfMzIgQEAgLTM2OSw1ICs0MDQsNiBAQA0K PiBib29sDQo+ID4gX2JmZF9YWF9iZmRfY29weV9wcml2YXRlX3NlY3Rpb25fZGF0YQ0KPiA+ICBi b29sIF9iZmRfcGVfcHJpbnRfY2VfY29tcHJlc3NlZF9wZGF0YSAoYmZkICosIHZvaWQgKik7ICBi b29sDQo+ID4gX2JmZF9wZTY0X3ByaW50X2NlX2NvbXByZXNzZWRfcGRhdGEgKGJmZCAqLCB2b2lk ICopOyAgYm9vbA0KPiA+IF9iZmRfcGV4NjRfcHJpbnRfY2VfY29tcHJlc3NlZF9wZGF0YSAoYmZk ICosIHZvaWQgKik7DQo+ID4gK2Jvb2wgX2JmZF9wZUFBcmNoNjRfcHJpbnRfY2VfY29tcHJlc3Nl ZF9wZGF0YSAoYmZkICosIHZvaWQgKik7DQo+ID4gIGJvb2wgX2JmZF9wZXBfcHJpbnRfY2VfY29t cHJlc3NlZF9wZGF0YSAoYmZkICosIHZvaWQgKik7DQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvYmZk L3BlWFhpZ2VuLmMgYi9iZmQvcGVYWGlnZW4uYyBpbmRleA0KPiA+DQo+IGM0MWMzMjk5Mjc3ODQ2 ODc1ZWU3ZWNhOWNhMDBlNTMwYjI2ODNkNjEuLjFiZmQ2Yzg5ZjE5NDNmZTBjZjQxNTUxMTFkDQo+ ID4gNTViNTExYmUzZGNjN2IgMTAwNjQ0DQo+ID4gLS0tIGEvYmZkL3BlWFhpZ2VuLmMNCj4gPiAr KysgYi9iZmQvcGVYWGlnZW4uYw0KPiA+IEBAIC02MCw4ICs2MCw5IEBADQo+ID4gICAgIG9uIHRo aXMgY29kZSBoYXMgYSBjaGFuY2Ugb2YgZ2V0dGluZyBzb21ldGhpbmcgYWNjb21wbGlzaGVkIHdp dGhvdXQNCj4gPiAgICAgd2FzdGluZyB0b28gbXVjaCB0aW1lLiAgKi8NCj4gPg0KPiA+IC0vKiBU aGlzIGV4cGFuZHMgaW50byBDT0ZGX1dJVEhfcGUsIENPRkZfV0lUSF9wZXAsIG9yDQo+ID4gQ09G Rl9XSVRIX3BleDY0DQo+ID4gLSAgIGRlcGVuZGluZyBvbiB3aGV0aGVyIHdlJ3JlIGNvbXBpbGlu ZyBmb3Igc3RyYWlnaHQgUEUgb3IgUEUrLiAgKi8NCj4gPiArLyogVGhpcyBleHBhbmRzIGludG8g Q09GRl9XSVRIX3BlLCBDT0ZGX1dJVEhfcGVwLA0KPiBDT0ZGX1dJVEhfcGV4NjQNCj4gPiBvcg0K PiA+ICsgICBDT0ZGX1dJVEhfcGVBQXJjaDY0IGRlcGVuZGluZyBvbiB3aGV0aGVyIHdlJ3JlIGNv bXBpbGluZyBmb3INCj4gPiBzdHJhaWdodA0KPiA+ICsgICBQRSBvciBQRSsuICAqLw0KPiA+ICAj ZGVmaW5lIENPRkZfV0lUSF9YWA0KPiA+DQo+ID4gICNpbmNsdWRlICJzeXNkZXAuaCINCj4gPiBA QCAtODMsNiArODQsOCBAQA0KPiA+ICAjIGluY2x1ZGUgImNvZmYveDg2XzY0LmgiDQo+ID4gICNl bGlmIGRlZmluZWQgQ09GRl9XSVRIX3BlcA0KPiA+ICAjIGluY2x1ZGUgImNvZmYvaWE2NC5oIg0K PiA+ICsjZWxpZiBkZWZpbmVkIENPRkZfV0lUSF9wZUFBcmNoNjQNCj4gPiArIyBpbmNsdWRlICJj b2ZmL2FhcmNoNjQuaCINCj4gPiAgI2Vsc2UNCj4gPiAgIyBpbmNsdWRlICJjb2ZmL2kzODYuaCIN Cj4gPiAgI2VuZGlmDQo+ID4gQEAgLTkyLDcgKzk1LDcgQEANCj4gPiAgI2luY2x1ZGUgImxpYnBl aS5oIg0KPiA+ICAjaW5jbHVkZSAic2FmZS1jdHlwZS5oIg0KPiA+DQo+ID4gLSNpZiBkZWZpbmVk IENPRkZfV0lUSF9wZXAgfHwgZGVmaW5lZCBDT0ZGX1dJVEhfcGV4NjQNCj4gPiArI2lmIGRlZmlu ZWQgQ09GRl9XSVRIX3BlcCB8fCBkZWZpbmVkIENPRkZfV0lUSF9wZXg2NCB8fCBkZWZpbmVkDQo+ ID4gK0NPRkZfV0lUSF9wZUFBcmNoNjQNCj4gPiAgIyB1bmRlZiBBT1VUU1oNCj4gPiAgIyBkZWZp bmUgQU9VVFNaCQlQRVBBT1VUU1oNCj4gPiAgIyBkZWZpbmUgUEVBT1VUSERSCVBFUEFPVVRIRFIN Cj4gPiBAQCAtNDY5LDcgKzQ3Miw3IEBAIF9iZmRfWFhpX3N3YXBfYW91dGhkcl9pbiAoYmZkICog YWJmZCwNCj4gPiAgICBhb3V0aGRyX2ludC0+dGV4dF9zdGFydCA9DQo+ID4gICAgICBHRVRfQU9V VEhEUl9URVhUX1NUQVJUIChhYmZkLCBhb3V0aGRyX2V4dC0+dGV4dF9zdGFydCk7DQo+ID4NCj4g PiAtI2lmICFkZWZpbmVkKENPRkZfV0lUSF9wZXApICYmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2 NCkNCj4gPiArI2lmICFkZWZpbmVkKENPRkZfV0lUSF9wZXApICYmICFkZWZpbmVkKENPRkZfV0lU SF9wZXg2NCkgJiYNCj4gPiArIWRlZmluZWQoQ09GRl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgICAv KiBQRTMyKyBkb2VzIG5vdCBoYXZlIGRhdGFfc3RhcnQgbWVtYmVyISAgKi8NCj4gPiAgICBhb3V0 aGRyX2ludC0+ZGF0YV9zdGFydCA9DQo+ID4gICAgICBHRVRfQU9VVEhEUl9EQVRBX1NUQVJUIChh YmZkLCBhb3V0aGRyX2V4dC0+ZGF0YV9zdGFydCk7IEBAIC0NCj4gPiA1NTUsNyArNTU4LDcgQEAg X2JmZF9YWGlfc3dhcF9hb3V0aGRyX2luIChiZmQgKiBhYmZkLA0KPiA+ICAgIGlmIChhb3V0aGRy X2ludC0+ZW50cnkpDQo+ID4gICAgICB7DQo+ID4gICAgICAgIGFvdXRoZHJfaW50LT5lbnRyeSAr PSBhLT5JbWFnZUJhc2U7IC0jaWYNCj4gPiAhZGVmaW5lZChDT0ZGX1dJVEhfcGVwKSAmJiAhZGVm aW5lZChDT0ZGX1dJVEhfcGV4NjQpDQo+ID4gKyNpZiAhZGVmaW5lZChDT0ZGX1dJVEhfcGVwKSAm JiAhZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpICYmDQo+ID4gKyFkZWZpbmVkKENPRkZfV0lUSF9w ZUFBcmNoNjQpDQo+ID4gICAgICAgIGFvdXRoZHJfaW50LT5lbnRyeSAmPSAweGZmZmZmZmZmOyAg I2VuZGlmDQo+ID4gICAgICB9DQo+ID4gQEAgLTU2MywxMiArNTY2LDEyIEBAIF9iZmRfWFhpX3N3 YXBfYW91dGhkcl9pbiAoYmZkICogYWJmZCwNCj4gPiAgICBpZiAoYW91dGhkcl9pbnQtPnRzaXpl KQ0KPiA+ICAgICAgew0KPiA+ICAgICAgICBhb3V0aGRyX2ludC0+dGV4dF9zdGFydCArPSBhLT5J bWFnZUJhc2U7IC0gI2lmDQo+ID4gIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRlZmluZWQo Q09GRl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRl ZmluZWQoQ09GRl9XSVRIX3BleDY0KSAmJg0KPiA+ICshZGVmaW5lZChDT0ZGX1dJVEhfcGVBQXJj aDY0KQ0KPiA+ICAgICAgICBhb3V0aGRyX2ludC0+dGV4dF9zdGFydCAmPSAweGZmZmZmZmZmOyAg I2VuZGlmDQo+ID4gICAgICB9DQo+ID4NCj4gPiAtI2lmICFkZWZpbmVkKENPRkZfV0lUSF9wZXAp ICYmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkNCj4gPiArI2lmICFkZWZpbmVkKENPRkZfV0lU SF9wZXApICYmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkgJiYNCj4gPiArIWRlZmluZWQoQ09G Rl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgICAvKiBQRTMyKyBkb2VzIG5vdCBoYXZlIGRhdGFfc3Rh cnQgbWVtYmVyISAgKi8NCj4gPiAgICBpZiAoYW91dGhkcl9pbnQtPmRzaXplKQ0KPiA+ICAgICAg ew0KPiA+IEBAIC02MjgsNyArNjMxLDcgQEAgX2JmZF9YWGlfc3dhcF9hb3V0aGRyX291dCAoYmZk ICogYWJmZCwgdm9pZCAqIGluLA0KPiA+IHZvaWQgKiBvdXQpDQo+ID4gICAgaWYgKGFvdXRoZHJf aW4tPnRzaXplKQ0KPiA+ICAgICAgew0KPiA+ICAgICAgICBhb3V0aGRyX2luLT50ZXh0X3N0YXJ0 IC09IGliOw0KPiA+IC0jaWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRlZmluZWQoQ09G Rl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRlZmlu ZWQoQ09GRl9XSVRIX3BleDY0KSAmJg0KPiA+ICshZGVmaW5lZChDT0ZGX1dJVEhfcGVBQXJjaDY0 KQ0KPiA+ICAgICAgICBhb3V0aGRyX2luLT50ZXh0X3N0YXJ0ICY9IDB4ZmZmZmZmZmY7ICAjZW5k aWYNCj4gPiAgICAgIH0NCj4gPiBAQCAtNjM2LDcgKzYzOSw3IEBAIF9iZmRfWFhpX3N3YXBfYW91 dGhkcl9vdXQgKGJmZCAqIGFiZmQsIHZvaWQgKiBpbiwNCj4gPiB2b2lkICogb3V0KQ0KPiA+ICAg IGlmIChhb3V0aGRyX2luLT5kc2l6ZSkNCj4gPiAgICAgIHsNCj4gPiAgICAgICAgYW91dGhkcl9p bi0+ZGF0YV9zdGFydCAtPSBpYjsNCj4gPiAtI2lmICFkZWZpbmVkKENPRkZfV0lUSF9wZXApICYm ICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkNCj4gPiArI2lmICFkZWZpbmVkKENPRkZfV0lUSF9w ZXApICYmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkgJiYNCj4gPiArIWRlZmluZWQoQ09GRl9X SVRIX3BlQUFyY2g2NCkNCj4gPiAgICAgICAgYW91dGhkcl9pbi0+ZGF0YV9zdGFydCAmPSAweGZm ZmZmZmZmOyAgI2VuZGlmDQo+ID4gICAgICB9DQo+ID4gQEAgLTY0NCw3ICs2NDcsNyBAQCBfYmZk X1hYaV9zd2FwX2FvdXRoZHJfb3V0IChiZmQgKiBhYmZkLCB2b2lkICogaW4sDQo+ID4gdm9pZCAq IG91dCkNCj4gPiAgICBpZiAoYW91dGhkcl9pbi0+ZW50cnkpDQo+ID4gICAgICB7DQo+ID4gICAg ICAgIGFvdXRoZHJfaW4tPmVudHJ5IC09IGliOw0KPiA+IC0jaWYgIWRlZmluZWQoQ09GRl9XSVRI X3BlcCkgJiYgIWRlZmluZWQoQ09GRl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmluZWQoQ09G Rl9XSVRIX3BlcCkgJiYgIWRlZmluZWQoQ09GRl9XSVRIX3BleDY0KSAmJg0KPiA+ICshZGVmaW5l ZChDT0ZGX1dJVEhfcGVBQXJjaDY0KQ0KPiA+ICAgICAgICBhb3V0aGRyX2luLT5lbnRyeSAmPSAw eGZmZmZmZmZmOyAgI2VuZGlmDQo+ID4gICAgICB9DQo+ID4gQEAgLTc0OCw3ICs3NTEsNyBAQCBf YmZkX1hYaV9zd2FwX2FvdXRoZHJfb3V0IChiZmQgKiBhYmZkLCB2b2lkICogaW4sDQo+ID4gdm9p ZCAqIG91dCkNCj4gPiAgICBQVVRfQU9VVEhEUl9URVhUX1NUQVJUIChhYmZkLCBhb3V0aGRyX2lu LT50ZXh0X3N0YXJ0LA0KPiA+ICAJCQkgIGFvdXRoZHJfb3V0LT5zdGFuZGFyZC50ZXh0X3N0YXJ0 KTsNCj4gPg0KPiA+IC0jaWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRlZmluZWQoQ09G Rl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRlZmlu ZWQoQ09GRl9XSVRIX3BleDY0KSAmJg0KPiA+ICshZGVmaW5lZChDT0ZGX1dJVEhfcGVBQXJjaDY0 KQ0KPiA+ICAgIC8qIFBFMzIrIGRvZXMgbm90IGhhdmUgZGF0YV9zdGFydCBtZW1iZXIhICAqLw0K PiA+ICAgIFBVVF9BT1VUSERSX0RBVEFfU1RBUlQgKGFiZmQsIGFvdXRoZHJfaW4tPmRhdGFfc3Rh cnQsDQo+ID4gIAkJCSAgYW91dGhkcl9vdXQtPnN0YW5kYXJkLmRhdGFfc3RhcnQpOw0KPiA+IEBA IC0xODAwLDcgKzE4MDMsNyBAQCBwZV9wcmludF9lZGF0YSAoYmZkICogYWJmZCwgdm9pZCAqIHZm aWxlKQ0KPiA+IHN0YXRpYyBib29sIHBlX3ByaW50X3BkYXRhIChiZmQgKiBhYmZkLCB2b2lkICog dmZpbGUpICB7IC0jaWYNCj4gPiBkZWZpbmVkKENPRkZfV0lUSF9wZXApICYmICFkZWZpbmVkKENP RkZfV0lUSF9wZXg2NCkNCj4gPiArI2lmIGRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgIWRlZmlu ZWQoQ09GRl9XSVRIX3BleDY0KSAmJg0KPiA+ICshZGVmaW5lZChDT0ZGX1dJVEhfcGVBQXJjaDY0 KQ0KPiA+ICAjIGRlZmluZSBQREFUQV9ST1dfU0laRQkoMyAqIDgpDQo+ID4gICNlbHNlDQo+ID4g ICMgZGVmaW5lIFBEQVRBX1JPV19TSVpFCSg1ICogNCkNCj4gPiBAQCAtMTgyNyw3ICsxODMwLDcg QEAgcGVfcHJpbnRfcGRhdGEgKGJmZCAqIGFiZmQsIHZvaWQgKiB2ZmlsZSkNCj4gPg0KPiA+ICAg IGZwcmludGYgKGZpbGUsDQo+ID4gIAkgICBfKCJcblRoZSBGdW5jdGlvbiBUYWJsZSAoaW50ZXJw cmV0ZWQgLnBkYXRhIHNlY3Rpb24NCj4gPiBjb250ZW50cylcbiIpKTsgLSNpZiBkZWZpbmVkKENP RkZfV0lUSF9wZXApICYmDQo+ID4gIWRlZmluZWQoQ09GRl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYg ZGVmaW5lZChDT0ZGX1dJVEhfcGVwKSAmJiAhZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpICYmDQo+ ID4gKyFkZWZpbmVkKENPRkZfV0lUSF9wZUFBcmNoNjQpDQo+ID4gICAgZnByaW50ZiAoZmlsZSwN Cj4gPiAgCSAgIF8oIiB2bWE6XHRcdFx0QmVnaW4gQWRkcmVzcyAgICBFbmQgQWRkcmVzcyAgICAg IFVud2luZCBJbmZvXG4iKSk7DQo+ID4gICNlbHNlDQo+ID4gQEAgLTE4NjQsNyArMTg2Nyw3IEBA IHBlX3ByaW50X3BkYXRhIChiZmQgKiBhYmZkLCB2b2lkICogdmZpbGUpDQo+ID4gICAgICAgIGJm ZF92bWEgZWhfaGFuZGxlcjsNCj4gPiAgICAgICAgYmZkX3ZtYSBlaF9kYXRhOw0KPiA+ICAgICAg ICBiZmRfdm1hIHByb2xvZ19lbmRfYWRkcjsNCj4gPiAtI2lmICFkZWZpbmVkKENPRkZfV0lUSF9w ZXApIHx8IGRlZmluZWQoQ09GRl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmluZWQoQ09GRl9X SVRIX3BlcCkgfHwgZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpIHx8DQo+ID4gK2RlZmluZWQoQ09G Rl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgICAgICAgaW50IGVtX2RhdGE7DQo+ID4gICNlbmRpZg0K PiA+DQo+ID4gQEAgLTE4ODIsNyArMTg4NSw3IEBAIHBlX3ByaW50X3BkYXRhIChiZmQgKiBhYmZk LCB2b2lkICogdmZpbGUpDQo+ID4gIAkvKiBXZSBhcmUgcHJvYmFibHkgaW50byB0aGUgcGFkZGlu ZyBvZiB0aGUgc2VjdGlvbiBub3cuICAqLw0KPiA+ICAJYnJlYWs7DQo+ID4NCj4gPiAtI2lmICFk ZWZpbmVkKENPRkZfV0lUSF9wZXApIHx8IGRlZmluZWQoQ09GRl9XSVRIX3BleDY0KQ0KPiA+ICsj aWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgfHwgZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpIHx8 DQo+ID4gK2RlZmluZWQoQ09GRl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgICAgICAgZW1fZGF0YSA9 ICgoZWhfaGFuZGxlciAmIDB4MSkgPDwgMikgfCAocHJvbG9nX2VuZF9hZGRyICYgMHgzKTsNCj4g I2VuZGlmDQo+ID4gICAgICAgIGVoX2hhbmRsZXIgJj0gfihiZmRfdm1hKSAweDM7DQo+ID4gQEAg LTE4OTMsNyArMTg5Niw3IEBAIHBlX3ByaW50X3BkYXRhIChiZmQgKiBhYmZkLCB2b2lkICogdmZp bGUpDQo+ID4gICAgICAgIGJmZF9mcHJpbnRmX3ZtYSAoYWJmZCwgZmlsZSwgYmVnaW5fYWRkcik7 IGZwdXRjICgnICcsIGZpbGUpOw0KPiA+ICAgICAgICBiZmRfZnByaW50Zl92bWEgKGFiZmQsIGZp bGUsIGVuZF9hZGRyKTsgZnB1dGMgKCcgJywgZmlsZSk7DQo+ID4gICAgICAgIGJmZF9mcHJpbnRm X3ZtYSAoYWJmZCwgZmlsZSwgZWhfaGFuZGxlcik7IC0jaWYNCj4gPiAhZGVmaW5lZChDT0ZGX1dJ VEhfcGVwKQ0KPiA+IHx8IGRlZmluZWQoQ09GRl9XSVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmlu ZWQoQ09GRl9XSVRIX3BlcCkgfHwgZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpIHx8DQo+ID4gK2Rl ZmluZWQoQ09GRl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgICAgICAgZnB1dGMgKCcgJywgZmlsZSk7 DQo+ID4gICAgICAgIGJmZF9mcHJpbnRmX3ZtYSAoYWJmZCwgZmlsZSwgZWhfZGF0YSk7IGZwdXRj ICgnICcsIGZpbGUpOw0KPiA+ICAgICAgICBiZmRfZnByaW50Zl92bWEgKGFiZmQsIGZpbGUsIHBy b2xvZ19lbmRfYWRkcik7IEBAIC0yNzg0LDcNCj4gPiArMjc4Nyw3IEBAIF9iZmRfWFhfcHJpbnRf cHJpdmF0ZV9iZmRfZGF0YV9jb21tb24gKGJmZCAqIGFiZmQsIHZvaWQNCj4gKiB2ZmlsZSkNCj4g PiAgICBiZmRfZnByaW50Zl92bWEgKGFiZmQsIGZpbGUsIGktPkFkZHJlc3NPZkVudHJ5UG9pbnQp Ow0KPiA+ICAgIGZwcmludGYgKGZpbGUsICJcbkJhc2VPZkNvZGVcdFx0Iik7DQo+ID4gICAgYmZk X2ZwcmludGZfdm1hIChhYmZkLCBmaWxlLCBpLT5CYXNlT2ZDb2RlKTsgLSAjaWYNCj4gPiAhZGVm aW5lZChDT0ZGX1dJVEhfcGVwKSAmJiAhZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpDQo+ID4gKyNp ZiAhZGVmaW5lZChDT0ZGX1dJVEhfcGVwKSAmJiAhZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpICYm DQo+ID4gKyFkZWZpbmVkKENPRkZfV0lUSF9wZUFBcmNoNjQpDQo+ID4gICAgLyogUEUzMisgZG9l cyBub3QgaGF2ZSBCYXNlT2ZEYXRhIG1lbWJlciEgICovDQo+ID4gICAgZnByaW50ZiAoZmlsZSwg IlxuQmFzZU9mRGF0YVx0XHQiKTsNCj4gPiAgICBiZmRfZnByaW50Zl92bWEgKGFiZmQsIGZpbGUs IGktPkJhc2VPZkRhdGEpOyBAQCAtMzA4NSw3ICszMDg4LDcgQEANCj4gPiBfYmZkX1hYX2dldF9z eW1ib2xfaW5mbyAoYmZkICogYWJmZCwgYXN5bWJvbCAqc3ltYm9sLCBzeW1ib2xfaW5mbw0KPiAq cmV0KQ0KPiA+ICAgIGNvZmZfZ2V0X3N5bWJvbF9pbmZvIChhYmZkLCBzeW1ib2wsIHJldCk7ICB9 DQo+ID4NCj4gPiAtI2lmICFkZWZpbmVkKENPRkZfV0lUSF9wZXApICYmIGRlZmluZWQoQ09GRl9X SVRIX3BleDY0KQ0KPiA+ICsjaWYgIWRlZmluZWQoQ09GRl9XSVRIX3BlcCkgJiYgZGVmaW5lZChD T0ZGX1dJVEhfcGV4NjQpICYmDQo+ID4gK2RlZmluZWQoQ09GRl9XSVRIX3BlQUFyY2g2NCkNCj4g PiAgc3RhdGljIGludA0KPiA+ICBzb3J0X3g2NF9wZGF0YSAoY29uc3Qgdm9pZCAqbCwgY29uc3Qg dm9pZCAqcikgIHsgQEAgLTQ1MDQsNyArNDUwNyw3DQo+ID4gQEAgX2JmZF9YWGlfZmluYWxfbGlu a19wb3N0c2NyaXB0IChiZmQgKiBhYmZkLCBzdHJ1Y3QgY29mZl9maW5hbF9saW5rX2luZm8NCj4g KnBmaW5mbykNCj4gPiAgCXRoZSBUTFMgZGF0YSBkaXJlY3RvcnkgY29uc2lzdHMgb2YgNCBwb2lu dGVycywgZm9sbG93ZWQNCj4gPiAgCWJ5IHR3byA0LWJ5dGUgaW50ZWdlci4gVGhpcyBpbXBsaWVz IHRoYXQgdGhlIHRvdGFsIHNpemUNCj4gPiAgCWlzIGRpZmZlcmVudCBmb3IgMzItYml0IGFuZCA2 NC1iaXQgZXhlY3V0YWJsZXMuICAqLyAtICNpZg0KPiA+ICFkZWZpbmVkKENPRkZfV0lUSF9wZXAp ICYmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkNCj4gPiArI2lmICFkZWZpbmVkKENPRkZfV0lU SF9wZXApICYmICFkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkgJiYNCj4gPiArIWRlZmluZWQoQ09G Rl9XSVRIX3BlQUFyY2g2NCkNCj4gPiAgICAgICAgcGVfZGF0YSAoYWJmZCktPnBlX29wdGhkci5E YXRhRGlyZWN0b3J5W1BFX1RMU19UQUJMRV0uU2l6ZSA9DQo+ID4gMHgxODsgI2Vsc2UNCj4gPiAg ICAgICAgcGVfZGF0YSAoYWJmZCktPnBlX29wdGhkci5EYXRhRGlyZWN0b3J5W1BFX1RMU19UQUJM RV0uU2l6ZSA9DQo+ID4gMHgyODsgQEAgLTQ1MTMsNyArNDUxNiw3IEBAIF9iZmRfWFhpX2ZpbmFs X2xpbmtfcG9zdHNjcmlwdCAoYmZkICoNCj4gPiBhYmZkLCBzdHJ1Y3QgY29mZl9maW5hbF9saW5r X2luZm8gKnBmaW5mbykNCj4gPg0KPiA+ICAvKiBJZiB0aGVyZSBpcyBhIC5wZGF0YSBzZWN0aW9u IGFuZCB3ZSBoYXZlIGxpbmtlZCBwZGF0YSBmaW5hbGx5LCB3ZQ0KPiA+ICAgICAgIG5lZWQgdG8g c29ydCB0aGUgZW50cmllcyBhc2NlbmRpbmcuICAqLyAtI2lmDQo+ID4gIWRlZmluZWQoQ09GRl9X SVRIX3BlcCkgJiYNCj4gPiBkZWZpbmVkKENPRkZfV0lUSF9wZXg2NCkNCj4gPiArI2lmICFkZWZp bmVkKENPRkZfV0lUSF9wZXApICYmIGRlZmluZWQoQ09GRl9XSVRIX3BleDY0KSAmJg0KPiA+ICtk ZWZpbmVkKENPRkZfV0lUSF9wZUFBcmNoNjQpDQo+ID4gICAgew0KPiA+ICAgICAgYXNlY3Rpb24g KnNlYyA9IGJmZF9nZXRfc2VjdGlvbl9ieV9uYW1lIChhYmZkLCAiLnBkYXRhIik7DQo+ID4NCj4g PiBkaWZmIC0tZ2l0IGEvYmZkL3BlaS1hYXJjaDY0LmMgYi9iZmQvcGVpLWFhcmNoNjQuYyBuZXcg ZmlsZSBtb2RlDQo+ID4gMTAwNjQ0IGluZGV4DQo+ID4NCj4gMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMC4uOTkzMjZkMTYxMjY1NTQwOGYxYjVjZWVhNw0KPiA+IGEwMTNl MTc2ODA4MzQ5OA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9iZmQvcGVpLWFhcmNoNjQu Yw0KPiA+IEBAIC0wLDAgKzEsNzUgQEANCj4gPiArLyogQkZEIGJhY2stZW5kIGZvciBBQXJjaDY0 IFBFIElNQUdFIENPRkYgZmlsZXMuDQo+ID4gKyAgIENvcHlyaWdodCAoQykgMjAyMSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCj4gPiArDQo+ID4gKyAgIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEJGRCwgdGhlIEJpbmFyeSBGaWxlIERlc2NyaXB0b3IgbGlicmFyeS4NCj4gPiArDQo+ID4g KyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp dCBhbmQvb3IgbW9kaWZ5DQo+ID4gKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo+ID4gKyAgIHRoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yDQo+ ID4gKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQo+ID4gKw0KPiA+ICsg ICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwNCj4gPiArICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YNCj4gPiArICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KPiA+ICsgICBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KPiA+ICsNCj4gPiArICAgWW91IHNo b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UNCj4gPiArICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhl IEZyZWUgU29mdHdhcmUNCj4gPiArICAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry ZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwNCj4gPiArICAgTUEgMDIxMTAtMTMwMSwgVVNBLiAg Ki8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJzeXNkZXAuaCINCj4gPiArI2luY2x1ZGUgImJmZC5o Ig0KPiA+ICsNCj4gPiArI2RlZmluZSBUQVJHRVRfU1lNCQlhYXJjaDY0X3BlaV92ZWMNCj4gPiAr I2RlZmluZSBUQVJHRVRfTkFNRQkJInBlaS1hYXJjaDY0LWxpdHRsZSINCj4gPiArI2RlZmluZSBU QVJHRVRfQVJDSElURUNUVVJFCWJmZF9hcmNoX2FhcmNoNjQNCj4gPiArI2RlZmluZSBUQVJHRVRf UEFHRVNJWkUJCTQwOTYNCj4gPiArI2RlZmluZSBUQVJHRVRfQklHX0VORElBTgkwDQo+ID4gKyNk ZWZpbmUgVEFSR0VUX0FSQ0hJVkUJCTANCj4gPiArI2RlZmluZSBUQVJHRVRfUFJJT1JJVFkJCTAN Cj4gPiArDQo+ID4gKyNkZWZpbmUgQ09GRl9JTUFHRV9XSVRIX1BFDQo+ID4gKy8qIFJlbmFtZSB0 aGUgYWJvdmUgaW50by4uICovDQo+ID4gKyNkZWZpbmUgQ09GRl9XSVRIX3BlQUFyY2g2NA0KPiA+ ICsjZGVmaW5lIENPRkZfV0lUSF9QRQ0KPiA+ICsjZGVmaW5lIFBDUkVMT0ZGU0VUCSAgIHRydWUN Cj4gPiArDQo+ID4gKy8qIExvbmcgc2VjdGlvbiBuYW1lcyBub3QgYWxsb3dlZCBpbiBleGVjdXRh YmxlIGltYWdlcywgb25seSBvYmplY3QNCj4gPiArZmlsZXMuICAqLyAjZGVmaW5lIENPRkZfTE9O R19TRUNUSU9OX05BTUVTIDANCj4gPiArDQo+ID4gKyNkZWZpbmUgQ09GRl9TRUNUSU9OX0FMSUdO TUVOVF9FTlRSSUVTIFwgew0KPiA+ICtDT0ZGX1NFQ1RJT05fTkFNRV9FWEFDVF9NQVRDSCAoIi5i c3MiKSwgXA0KPiA+ICsgIENPRkZfQUxJR05NRU5UX0ZJRUxEX0VNUFRZLCBDT0ZGX0FMSUdOTUVO VF9GSUVMRF9FTVBUWSwgMiB9LA0KPiBcDQo+ID4gew0KPiA+ICtDT0ZGX1NFQ1RJT05fTkFNRV9F WEFDVF9NQVRDSCAoIi5kYXRhIiksIFwNCj4gPiArICBDT0ZGX0FMSUdOTUVOVF9GSUVMRF9FTVBU WSwgQ09GRl9BTElHTk1FTlRfRklFTERfRU1QVFksIDIgfSwNCj4gXA0KPiA+IHsNCj4gPiArQ09G Rl9TRUNUSU9OX05BTUVfRVhBQ1RfTUFUQ0ggKCIucmRhdGEiKSwgXA0KPiA+ICsgIENPRkZfQUxJ R05NRU5UX0ZJRUxEX0VNUFRZLCBDT0ZGX0FMSUdOTUVOVF9GSUVMRF9FTVBUWSwgMiB9LA0KPiBc DQo+ID4gew0KPiA+ICtDT0ZGX1NFQ1RJT05fTkFNRV9FWEFDVF9NQVRDSCAoIi50ZXh0IiksIFwN Cj4gPiArICBDT0ZGX0FMSUdOTUVOVF9GSUVMRF9FTVBUWSwgQ09GRl9BTElHTk1FTlRfRklFTERf RU1QVFksIDIgfSwNCj4gXA0KPiA+IHsNCj4gPiArQ09GRl9TRUNUSU9OX05BTUVfUEFSVElBTF9N QVRDSCAoIi5pZGF0YSIpLCBcDQo+ID4gKyAgQ09GRl9BTElHTk1FTlRfRklFTERfRU1QVFksIENP RkZfQUxJR05NRU5UX0ZJRUxEX0VNUFRZLCAyIH0sDQo+IFwNCj4gPiB7DQo+ID4gK0NPRkZfU0VD VElPTl9OQU1FX0VYQUNUX01BVENIICgiLnBkYXRhIiksIFwNCj4gPiArICBDT0ZGX0FMSUdOTUVO VF9GSUVMRF9FTVBUWSwgQ09GRl9BTElHTk1FTlRfRklFTERfRU1QVFksIDIgfSwNCj4gXA0KPiA+ IHsNCj4gPiArQ09GRl9TRUNUSU9OX05BTUVfUEFSVElBTF9NQVRDSCAoIi5kZWJ1ZyIpLCBcDQo+ ID4gKyAgQ09GRl9BTElHTk1FTlRfRklFTERfRU1QVFksIENPRkZfQUxJR05NRU5UX0ZJRUxEX0VN UFRZLCAwIH0sDQo+IFwNCj4gPiB7DQo+ID4gK0NPRkZfU0VDVElPTl9OQU1FX1BBUlRJQUxfTUFU Q0ggKCIuZ251LmxpbmtvbmNlLndpLiIpLCBcDQo+ID4gKyAgQ09GRl9BTElHTk1FTlRfRklFTERf RU1QVFksIENPRkZfQUxJR05NRU5UX0ZJRUxEX0VNUFRZLCAwIH0NCj4gPiArDQo+ID4gKyNkZWZp bmUgUEVJX0hFQURFUlMNCj4gPiArI2luY2x1ZGUgInN5c2RlcC5oIg0KPiA+ICsjaW5jbHVkZSAi YmZkLmgiDQo+ID4gKyNpbmNsdWRlICJsaWJiZmQuaCINCj4gPiArI2luY2x1ZGUgImNvZmYvYWFy Y2g2NC5oIg0KPiA+ICsjaW5jbHVkZSAiY29mZi9pbnRlcm5hbC5oIg0KPiA+ICsjaW5jbHVkZSAi Y29mZi9wZS5oIg0KPiA+ICsjaW5jbHVkZSAibGliY29mZi5oIg0KPiA+ICsjaW5jbHVkZSAibGli cGVpLmgiDQo+ID4gKyNpbmNsdWRlICJsaWJpYmVydHkuaCINCj4gPiArDQo+ID4gKy8qIE1ha2Ug c3VyZSB3ZSdyZSBzZXR0aW5nIGEgNjQtYml0IGZvcm1hdC4gICovICN1bmRlZiBBT1VUU1oNCj4g PiArI2RlZmluZSBBT1VUU1ogICAgICAgICAgUEVQQU9VVFNaDQo+ID4gKyNkZWZpbmUgUEVBT1VU SERSICAgICAgIFBFUEFPVVRIRFINCj4gPiArDQo+ID4gKyNpbmNsdWRlICJjb2ZmLWFhcmNoNjQu YyINCj4gPiBkaWZmIC0tZ2l0IGEvYmZkL3BlaWNvZGUuaCBiL2JmZC9wZWljb2RlLmggaW5kZXgN Cj4gPg0KPiA0MTk1NTk3NWNkYzYyMWRmM2Y1MzE2NWE5MzRhMGQ5OTkxNDBmMDllLi4xZThlZDgw M2VkYzZlMjY5ZWI4NGMwODAwDQo+ID4gN2ViMGNlNTY4ZDc1YTE2IDEwMDY0NA0KPiA+IC0tLSBh L2JmZC9wZWljb2RlLmgNCj4gPiArKysgYi9iZmQvcGVpY29kZS5oDQo+ID4gQEAgLTIzMSw3ICsy MzEsNyBAQCBjb2ZmX3N3YXBfc2NuaGRyX2luIChiZmQgKiBhYmZkLCB2b2lkICogZXh0LCB2b2lk ICoNCj4gaW4pDQo+ID4gICAgICB7DQo+ID4gICAgICAgIHNjbmhkcl9pbnQtPnNfdmFkZHIgKz0g cGVfZGF0YSAoYWJmZCktPnBlX29wdGhkci5JbWFnZUJhc2U7DQo+ID4gICAgICAgIC8qIERvIG5v dCBjdXQgdXBwZXIgMzItYml0cyBmb3IgNjQtYml0IHZtYS4gICovIC0jaWZuZGVmDQo+ID4gQ09G Rl9XSVRIX3BleDY0DQo+ID4gKyNpZiAhZGVmaW5lZChDT0ZGX1dJVEhfcGV4NjQpICYmICFkZWZp bmVkKENPRkZfV0lUSF9wZUFBcmNoNjQpDQo+ID4gICAgICAgIHNjbmhkcl9pbnQtPnNfdmFkZHIg Jj0gMHhmZmZmZmZmZjsgICNlbmRpZg0KPiA+ICAgICAgfQ0KPiA+IEBAIC03MzgsNiArNzM4LDE2 IEBAIHN0YXRpYyBjb25zdCBqdW1wX3RhYmxlIGp0YWJbXSA9DQo+ID4gICAgfSwNCj4gPiAgI2Vu ZGlmDQo+ID4NCj4gPiArI2lmZGVmIEFBUkNINjRNQUdJQw0KPiA+ICsvKiBXZSBkb24ndCBjdXJy ZW50bHkgc3VwcG9ydCBqdW1waW5nIHRvIERMTHMsIHNvIGlmDQo+ID4gKyAgIHNvbWVvbmUgZG9l cyB0cnkgZW1pdCBhIHJ1bnRpbWUgdHJhcC4gIFRocm91Z2ggVURGICMwLiAgKi8NCj4gPiArICB7 IEFBUkNINjRNQUdJQywNCj4gPiArICAgIHsgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCB9LA0KPiA+ ICsgICAgNCwgMA0KPiA+ICsgIH0sDQo+ID4gKw0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gICNp ZmRlZiAgQVJNUEVNQUdJQw0KPiA+ICAgIHsgQVJNUEVNQUdJQywNCj4gPiAgICAgIHsgMHgwMCwg MHhjMCwgMHg5ZiwgMHhlNSwgMHgwMCwgMHhmMCwNCj4gPiBAQCAtOTEwLDcgKzkyMCw3IEBAIHBl X0lMRl9idWlsZF9hX2JmZCAoYmZkICoJICAgIGFiZmQsDQo+ID4gIAkvKiBTZWUgUFIgMjA5MDcg Zm9yIGEgcmVwcm9kdWNlci4gICovDQo+ID4gIAlnb3RvIGVycm9yX3JldHVybjsNCj4gPg0KPiA+ IC0jaWZkZWYgQ09GRl9XSVRIX3BleDY0DQo+ID4gKyNpZiBkZWZpbmVkKENPRkZfV0lUSF9wZXg2 NCkgfHwgZGVmaW5lZChDT0ZGX1dJVEhfcGVBQXJjaDY0KQ0KPiA+ICAgICAgICAoKHVuc2lnbmVk IGludCAqKSBpZDQtPmNvbnRlbnRzKVswXSA9IG9yZGluYWw7DQo+ID4gICAgICAgICgodW5zaWdu ZWQgaW50ICopIGlkNC0+Y29udGVudHMpWzFdID0gMHg4MDAwMDAwMDsNCj4gPiAgICAgICAgKCh1 bnNpZ25lZCBpbnQgKikgaWQ1LT5jb250ZW50cylbMF0gPSBvcmRpbmFsOyBAQCAtMTIwNiw2DQo+ ID4gKzEyMTYsMTIgQEAgcGVfSUxGX29iamVjdF9wIChiZmQgKiBhYmZkKSAgI2VuZGlmDQo+ID4g ICAgICAgIGJyZWFrOw0KPiA+DQo+ID4gKyAgICBjYXNlIElNQUdFX0ZJTEVfTUFDSElORV9BUk02 NDoNCj4gPiArI2lmZGVmIEFBUkNINjRNQUdJQw0KPiA+ICsgICAgICBtYWdpYyA9IEFBUkNINjRN QUdJQzsNCj4gPiArI2VuZGlmDQo+ID4gKyAgICAgIGJyZWFrOw0KPiA+ICsNCj4gPiAgICAgIGNh c2UgSU1BR0VfRklMRV9NQUNISU5FX1RIVU1COg0KPiA+ICAjaWZkZWYgVEhVTUJQRU1BR0lDDQo+ ID4gICAgICAgIHsNCj4gPiBkaWZmIC0tZ2l0IGEvYmZkL3RhcmdldHMuYyBiL2JmZC90YXJnZXRz LmMgaW5kZXgNCj4gPg0KPiA4ZjVhYmIxNzRlMmRmZWNhZDYyMDA4YjY4ZjM4MWQ4OWI0MjM1NzZk Li42NzJkYzJiYjFhNGQ1NjQzZjg0NTc3ZDgxDQo+ID4gZDRjOWNlYmMxNDQyOWQ5IDEwMDY0NA0K PiA+IC0tLSBhL2JmZC90YXJnZXRzLmMNCj4gPiArKysgYi9iZmQvdGFyZ2V0cy5jDQo+ID4gQEAg LTY3OSw2ICs2NzksNyBAQCBleHRlcm4gY29uc3QgYmZkX3RhcmdldA0KPiA+IGFhcmNoNjRfZWxm NjRfYmVfY2xvdWRhYmlfdmVjOyAgZXh0ZXJuIGNvbnN0IGJmZF90YXJnZXQNCj4gPiBhYXJjaDY0 X2VsZjY0X2xlX3ZlYzsgIGV4dGVybiBjb25zdCBiZmRfdGFyZ2V0DQo+ID4gYWFyY2g2NF9lbGY2 NF9sZV9jbG91ZGFiaV92ZWM7ICBleHRlcm4gY29uc3QgYmZkX3RhcmdldA0KPiA+IGFhcmNoNjRf bWFjaF9vX3ZlYzsNCj4gPiArZXh0ZXJuIGNvbnN0IGJmZF90YXJnZXQgYWFyY2g2NF9wZWlfdmVj Ow0KPiA+ICBleHRlcm4gY29uc3QgYmZkX3RhcmdldCBhbHBoYV9lY29mZl9sZV92ZWM7ICBleHRl cm4gY29uc3QgYmZkX3RhcmdldA0KPiA+IGFscGhhX2VsZjY0X3ZlYzsgIGV4dGVybiBjb25zdCBi ZmRfdGFyZ2V0IGFscGhhX2VsZjY0X2Zic2RfdmVjOyBAQA0KPiA+IC05OTMsNg0KPiA+ICs5OTQs NyBAQCBzdGF0aWMgY29uc3QgYmZkX3RhcmdldCAqIGNvbnN0IF9iZmRfdGFyZ2V0X3ZlY3Rvcltd ID0NCj4gPiAgCSZhYXJjaDY0X2VsZjY0X2xlX3ZlYywNCj4gPiAgCSZhYXJjaDY0X2VsZjY0X2xl X2Nsb3VkYWJpX3ZlYywNCj4gPiAgCSZhYXJjaDY0X21hY2hfb192ZWMsDQo+ID4gKwkmYWFyY2g2 NF9wZWlfdmVjLA0KPiA+ICAjZW5kaWYNCj4gPg0KPiA+ICAjaWZkZWYgQkZENjQNCj4gPiBkaWZm IC0tZ2l0IGEvYmludXRpbHMvTkVXUyBiL2JpbnV0aWxzL05FV1MgaW5kZXgNCj4gPg0KPiBlNjk3 N2I2NTBkYjZjNzBjY2U2ZWZlYmE0M2ZjZTc0MzU1MTkwOTllLi45OTQ1NDYzMzBmOTVjY2MzYjg1 OWZmYjE3Mw0KPiA+IDg4YjJjYzVlYzZhNjUzIDEwMDY0NA0KPiA+IC0tLSBhL2JpbnV0aWxzL05F V1MNCj4gPiArKysgYi9iaW51dGlscy9ORVdTDQo+ID4gQEAgLTIsNiArMiw5IEBADQo+ID4NCj4g PiAgKiBBZGQgc3VwcG9ydCBmb3IgdGhlIExvb25nQXJjaCBpbnN0cnVjdGlvbiBzZXQuDQo+ID4N Cj4gPiArKiBTdXBwb3J0IGZvciBlZmktYXBwLWFhcmNoNjQsIGVmaS1ydGRydi1hYXJjaDY0IGFu ZA0KPiA+ICtlZmktYnNkcnYtYWFyY2g2NCBoYXMgYmVlbg0KPiA+ICsgIGFkZGVkIHRvIG9iamNv cHkgaW4gb3JkZXIgdG8gZW5hYmxlIFVFRkkgZGV2ZWxvcG1lbnQgdXNpbmcgYmludXRpbHMuDQo+ ID4gKw0KPiA+ICBDaGFuZ2VzIGluIDIuMzc6DQo+ID4NCj4gPiAgKiBUaGUgcmVhZGVsZiB0b29s IGhhcyBhIG5ldyBjb21tYW5kIGxpbmUgb3B0aW9uIHdoaWNoIGNhbiBiZSB1c2VkIHRvDQo+ID4g c3BlY2lmeSBkaWZmIC0tZ2l0IGEvYmludXRpbHMvb2JqY29weS5jIGIvYmludXRpbHMvb2JqY29w eS5jIGluZGV4DQo+ID4NCj4gMGU3NDAwZmU0Y2I3MDQ2ZmE3MDRmMjA3ODE2NjE2ZTYyM2RlNjVh Zi4uNDU4YTZkOTZjY2NiZWIxNTRmOTVlNWJhNTQNCj4gPiA3MzRiOTU2ZDE0Zjg3OSAxMDA2NDQN Cj4gPiAtLS0gYS9iaW51dGlscy9vYmpjb3B5LmMNCj4gPiArKysgYi9iaW51dGlscy9vYmpjb3B5 LmMNCj4gPiBAQCAtNDk5Niw2ICs0OTk2LDEzIEBAIGNvbnZlcnRfZWZpX3RhcmdldCAoY2hhciAq ZWZpKQ0KPiA+ICAgICAgICAvKiBDaGFuZ2UgeDg2XzY0IHRvIHg4Ni02NC4gICovDQo+ID4gICAg ICAgIGVmaVs3XSA9ICctJzsNCj4gPiAgICAgIH0NCj4gPiArICBlbHNlIGlmIChzdHJjbXAgKGVm aSArIDQsICJhYXJjaDY0IikgPT0gMCkNCj4gPiArICAgIHsNCj4gPiArICAgICAgLyogQ2hhbmdl IGFhcmNoNjQgdG8gYWFyY2g2NC1saXR0bGUuICAqLw0KPiA+ICsgICAgICBlZmkgPSAoY2hhciAq KSB4cmVhbGxvYyAoZWZpLCBzdHJsZW4gKGVmaSkgKyA3KTsNCj4gPiArICAgICAgY2hhciAqdCA9 ICJhYXJjaDY0LWxpdHRsZSI7DQo+ID4gKyAgICAgIHN0cmNweSAoZWZpICsgNCwgdCk7DQo+ID4g KyAgICB9DQo+ID4gIH0NCj4gPg0KPiA+ICAvKiBBbGxvY2F0ZSBhbmQgcmV0dXJuIGEgcG9pbnRl ciB0byBhIHN0cnVjdCBzZWN0aW9uX2FkZCwNCj4gPiBpbml0aWFsaXppbmcgdGhlIGRpZmYgLS0g Z2l0DQo+ID4gYS9iaW51dGlscy90ZXN0c3VpdGUvYmludXRpbHMtYWxsL2FhcmNoNjQvcGVpLWFh cmNoNjQtbGl0dGxlLmQNCj4gPiBiL2JpbnV0aWxzL3Rlc3RzdWl0ZS9iaW51dGlscy1hbGwvYWFy Y2g2NC9wZWktYWFyY2g2NC1saXR0bGUuZA0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4g aW5kZXgNCj4gPg0KPiAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4w OTU3Yzk4NTM1OWMwNDlhZGI0ZjA4NWE5NA0KPiA+IGRkYzRmZjAzYzkxNzk0DQo+ID4gLS0tIC9k ZXYvbnVsbA0KPiA+ICsrKyBiL2JpbnV0aWxzL3Rlc3RzdWl0ZS9iaW51dGlscy1hbGwvYWFyY2g2 NC9wZWktYWFyY2g2NC1saXR0bGUuZA0KPiA+IEBAIC0wLDAgKzEsMTYgQEANCj4gPiArI3NraXA6 IGFhcmNoNjRfYmUtKi0qDQo+ID4gKyNsZDogLWUwDQo+ID4gKyNQUk9HOiBvYmpjb3B5DQo+ID4g KyNvYmpjb3B5OiAtaiAudGV4dCAtaiAuc2RhdGEgLWogLmRhdGEgLWogLmR5bmFtaWMgLWogLmR5 bnN5bSAtaiAucmVsDQo+ID4gKy1qIC5yZWxhIC1qIC5yZWwuKiAtaiAucmVsYS4qIC1qIC5yZWwq IC1qIC5yZWxhKiAtaiAucmVsb2MNCj4gPiArLS10YXJnZXQ9ZWZpLWFwcC1hYXJjaDY0DQo+ID4g KyNvYmpkdW1wOiAtaCAtZg0KPiA+ICsjbmFtZTogQ2hlY2sgaWYgZWZpIGFwcCBmb3JtYXQgaXMg cmVjb2duaXplZA0KPiA+ICsNCj4gPiArLio6ICAgICBmaWxlIGZvcm1hdCBwZWktYWFyY2g2NC1s aXR0bGUNCj4gPiArYXJjaGl0ZWN0dXJlOiBhYXJjaDY0LCBmbGFncyAweDAwMDAwMTMyOg0KPiA+ ICtFWEVDX1AsIEhBU19TWU1TLCBIQVNfTE9DQUxTLCBEX1BBR0VEIHN0YXJ0IGFkZHJlc3MNCj4g PiArMHgwMDAwMDAwMDAwMDAwMDAwDQo+ID4gKw0KPiA+ICtTZWN0aW9uczoNCj4gPiArSWR4IE5h bWUgICAgICAgICAgU2l6ZSAgICAgIFZNQSAgICAgICAgICAgICAgIExNQSAgICAgICAgICAgICAg IEZpbGUgb2ZmICBBbGduDQo+ID4gKyAgMCBcLnRleHQgICAgICAgICAwMDAwMDAzMCAgMDAwMDAw MDAwMDQwMDAwMCAgMDAwMDAwMDAwMDQwMDAwMCAgMDAwMDAyMDANCj4gPiAyXCpcKjINCj4gPiAr ICAgICAgICAgICAgICAgICAgQ09OVEVOVFMsIEFMTE9DLCBMT0FELCBSRUFET05MWSwgQ09ERQ0K PiA+IGRpZmYgLS1naXQNCj4gPiBhL2JpbnV0aWxzL3Rlc3RzdWl0ZS9iaW51dGlscy1hbGwvYWFy Y2g2NC9wZWktYWFyY2g2NC1saXR0bGUucw0KPiA+IGIvYmludXRpbHMvdGVzdHN1aXRlL2JpbnV0 aWxzLWFsbC9hYXJjaDY0L3BlaS1hYXJjaDY0LWxpdHRsZS5zDQo+ID4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gPiBpbmRleA0KPiA+DQo+IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAuLmRhZmM1ZmE0N2Y5NzEzYjU0MWE4ZDI1Mjc0DQo+ID4gOGY5NjIxYWZmY2U1ZmMN Cj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvYmludXRpbHMvdGVzdHN1aXRlL2JpbnV0aWxz LWFsbC9hYXJjaDY0L3BlaS1hYXJjaDY0LWxpdHRsZS5zDQo+ID4gQEAgLTAsMCArMSw0MiBAQA0K PiA+ICsJLmFyY2ggYXJtdjgtYQ0KPiA+ICsJLnRleHQNCj4gPiArCS5hbGlnbgkyDQo+ID4gKwku Z2xvYmFsCWZvbw0KPiA+ICsJLnR5cGUJZm9vLCAlZnVuY3Rpb24NCj4gPiArZm9vOg0KPiA+ICsu TEZCMDoNCj4gPiArCS5jZmlfc3RhcnRwcm9jDQo+ID4gKwlzdWIJc3AsIHNwLCAjMTYNCj4gPiAr CS5jZmlfZGVmX2NmYV9vZmZzZXQgMTYNCj4gPiArCXN0cgl3MCwgW3NwLCAxMl0NCj4gPiArCWxk cgl3MCwgW3NwLCAxMl0NCj4gPiArCW11bAl3MCwgdzAsIHcwDQo+ID4gKwlhZGQJc3AsIHNwLCAx Ng0KPiA+ICsJLmNmaV9kZWZfY2ZhX29mZnNldCAwDQo+ID4gKwlyZXQNCj4gPiArCS5jZmlfZW5k cHJvYw0KPiA+ICsuTEZFMDoNCj4gPiArCS5zaXplCWZvbywgLi1mb28NCj4gPiArCS5hbGlnbgky DQo+ID4gKwkuZ2xvYmFsCW1haW4NCj4gPiArCS50eXBlCW1haW4sICVmdW5jdGlvbg0KPiA+ICtt YWluOg0KPiA+ICsuTEZCMToNCj4gPiArCS5jZmlfc3RhcnRwcm9jDQo+ID4gKwlzdHAJeDI5LCB4 MzAsIFtzcCwgLTE2XSENCj4gPiArCS5jZmlfZGVmX2NmYV9vZmZzZXQgMTYNCj4gPiArCS5jZmlf b2Zmc2V0IDI5LCAtMTYNCj4gPiArCS5jZmlfb2Zmc2V0IDMwLCAtOA0KPiA+ICsJbW92CXgyOSwg c3ANCj4gPiArCW1vdgl3MCwgNQ0KPiA+ICsJYmwJZm9vDQo+ID4gKwlsZHAJeDI5LCB4MzAsIFtz cF0sIDE2DQo+ID4gKwkuY2ZpX3Jlc3RvcmUgMzANCj4gPiArCS5jZmlfcmVzdG9yZSAyOQ0KPiA+ ICsJLmNmaV9kZWZfY2ZhX29mZnNldCAwDQo+ID4gKwlyZXQNCj4gPiArCS5jZmlfZW5kcHJvYw0K PiA+ICsuTEZFMToNCj4gPiArCS5zaXplCW1haW4sIC4tbWFpbg0KPiA+ICsJLmlkZW50CSJHQ0M6 IChmc2YtdHJ1bmsuMjg3MCkgMTIuMC4wIDIwMjEwOTMwIChleHBlcmltZW50YWwpIg0KPiA+ICsJ LnNlY3Rpb24JLm5vdGUuR05VLXN0YWNrLCIiLEBwcm9nYml0cw0KPiA+IGRpZmYgLS1naXQgYS9p bmNsdWRlL2NvZmYvYWFyY2g2NC5oIGIvaW5jbHVkZS9jb2ZmL2FhcmNoNjQuaCBuZXcgZmlsZQ0K PiA+IG1vZGUNCj4gPiAxMDA2NDQgaW5kZXgNCj4gPg0KPiAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwLi4yYzIxZjBkNmNmZGFjNGNiMGRlYmJlZTYwDQo+ID4gMDMwMjI2 ZmE3MDEwNmQyDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2luY2x1ZGUvY29mZi9hYXJj aDY0LmgNCj4gPiBAQCAtMCwwICsxLDYzIEBADQo+ID4gKy8qIEFBcmNoNjQgQ09GRiBzdXBwb3J0 IGZvciBCRkQuDQo+ID4gKyAgIENvcHlyaWdodCAoQykgMjAyMSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIEluYy4NCj4gPiArDQo+ID4gKyAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEJGRCwgdGhl IEJpbmFyeSBGaWxlIERlc2NyaXB0b3IgbGlicmFyeS4NCj4gPiArDQo+ID4gKyAgIFRoaXMgcHJv Z3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9k aWZ5DQo+ID4gKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo+ID4gKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yDQo+ID4gKyAgIChhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQo+ID4gKw0KPiA+ICsgICBUaGlzIHByb2dy YW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCj4g PiArICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg d2FycmFudHkgb2YNCj4gPiArICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KPiA+ICsgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KPiA+ICsNCj4gPiArICAgWW91IHNob3VsZCBoYXZlIHJl Y2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCj4gPiArICAg YWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwNCj4gPiArICAgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGgg Rmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLg0KPiA+ICsgKi8NCj4gPiArDQo+ID4g KyNkZWZpbmUgQ09GRkFBUkNINjQgMQ0KPiA+ICsNCj4gPiArI2RlZmluZSBMX0xOTk9fU0laRSAy DQo+ID4gKyNkZWZpbmUgSU5DTFVERV9DT01EQVRfRklFTERTX0lOX0FVWEVOVCAjaW5jbHVkZQ0K PiAiY29mZi9leHRlcm5hbC5oIg0KPiA+ICsNCj4gPiArI2RlZmluZSBGX0FBUkNINjRfQVJDSElU RUNUVVJFX01BU0sJKDB4NDAwMCkNCj4gPiArDQo+ID4gKyNkZWZpbmUJQUFSQ0g2NE1BR0lDCTB4 YWE2NCAgLyogRnJvbSBNaWNyb3NvZnQNCj4gPiBzcGVjaWZpY2F0aW9uLiAqLw0KPiA+ICsNCj4g PiArI3VuZGVmICBCQURNQUcNCj4gPiArI2RlZmluZSBCQURNQUcoeCkgKCh4KS5mX21hZ2ljICE9 IEFBUkNINjRNQUdJQykNCj4gPiArI2RlZmluZSBBQVJDSDY0ICAgICAgICAgMSAgICAgICAgICAg ICAgICAgLyogQ3VzdG9taXplIGNvZmZjb2RlLmguICAqLw0KPiA+ICsNCj4gPiArI2RlZmluZSBJ TUFHRV9OVF9PUFRJT05BTF9IRFI2NF9NQUdJQyAgICAgIDB4MjBiDQo+ID4gKw0KPiA+ICsjZGVm aW5lIE9NQUdJQyAgICAgICAgICAwNDA0ICAgIC8qIE9iamVjdCBmaWxlcywgZWcgYXMgb3V0cHV0 LiAgKi8NCj4gPiArI2RlZmluZSBaTUFHSUMgICAgICAgICAgSU1BR0VfTlRfT1BUSU9OQUxfSERS NjRfTUFHSUMgICAgLyoNCj4gRGVtYW5kDQo+ID4gbG9hZCBmb3JtYXQsIGVnIG5vcm1hbCBsZCBv dXRwdXQgMHgxMGIuICAqLw0KPiA+ICsjZGVmaW5lIFNUTUFHSUMJCTA0MDEJLyogVGFyZ2V0IHNo bGliLiAgKi8NCj4gPiArI2RlZmluZSBTSE1BR0lDCQkwNDQzCS8qIEhvc3QgICBzaGxpYi4gICov DQo+ID4gKw0KPiA+ICsvKiBkZWZpbmUgc29tZSBOVCBkZWZhdWx0IHZhbHVlcyAqLw0KPiA+ICsv KiAgI2RlZmluZSBOVF9JTUFHRV9CQVNFICAgICAgICAweDQwMDAwMCBtb3ZlZCB0byBpbnRlcm5h bC5oICovDQo+ID4gKyNkZWZpbmUgTlRfU0VDVElPTl9BTElHTk1FTlQgMHgxMDAwDQo+ID4gKyNk ZWZpbmUgTlRfRklMRV9BTElHTk1FTlQgICAgMHgyMDANCj4gPiArI2RlZmluZSBOVF9ERUZfUkVT RVJWRSAgICAgICAweDEwMDAwMA0KPiA+ICsjZGVmaW5lIE5UX0RFRl9DT01NSVQgICAgICAgIDB4 MTAwMA0KPiA+ICsNCj4gPiArLyogV2UgdXNlIHRoZSAucmRhdGEgc2VjdGlvbiB0byBob2xkIHJl YWQgb25seSBkYXRhLiAgKi8NCj4gPiArI2RlZmluZSBfTElUCSIucmRhdGEiDQo+ID4gKw0KPiA+ ICsvKioqKioqKioqKioqKioqKioqKioqKiBSRUxPQ0FUSU9OIERJUkVDVElWRVMNCj4gPiAqKioq KioqKioqKioqKioqKioqKioqLw0KPiA+ICtzdHJ1Y3QgZXh0ZXJuYWxfcmVsb2Mgew0KPiA+ICsg IGNoYXIgcl92YWRkcls0XTsNCj4gPiArICBjaGFyIHJfc3ltbmR4WzRdOw0KPiA+ICsgIGNoYXIg cl90eXBlWzJdOw0KPiA+ICsgIGNoYXIgcl9vZmZzZXRbNF07DQo+ID4gK307DQo+ID4gKw0KPiA+ ICsjZGVmaW5lIFJFTE9DIHN0cnVjdCBleHRlcm5hbF9yZWxvYw0KPiA+ICsjZGVmaW5lIFJFTFNa IDE0DQo+ID4gKw0KPiA+ICsjZGVmaW5lIEFSTV9OT1RFX1NFQ1RJT04gIi5ub3RlIg0KPiA+IGRp ZmYgLS1naXQgYS9pbmNsdWRlL2NvZmYvcGUuaCBiL2luY2x1ZGUvY29mZi9wZS5oIGluZGV4DQo+ ID4NCj4gOWUxZWE0YjVhYTQ3YjgyNzhhMGU3YTg4ZmFkMmRiNWRkOGJjOWZjNS4uNTU4Y2YwZTFi ODZmMDA4ZjYxM2QxMDdiYw0KPiA+IDcyMzY4YjM4MTExNDNlZSAxMDA2NDQNCj4gPiAtLS0gYS9p bmNsdWRlL2NvZmYvcGUuaA0KPiA+ICsrKyBiL2luY2x1ZGUvY29mZi9wZS5oDQo+ID4gQEAgLTEz Nyw2ICsxMzcsNyBAQA0KPiA+ICAjZGVmaW5lIElNQUdFX0ZJTEVfTUFDSElORV9BTTMzICAgICAg ICAgICAgICAweDAxZDMNCj4gPiAgI2RlZmluZSBJTUFHRV9GSUxFX01BQ0hJTkVfQU1ENjQgICAg ICAgICAgICAgMHg4NjY0DQo+ID4gICNkZWZpbmUgSU1BR0VfRklMRV9NQUNISU5FX0FSTSAgICAg ICAgICAgICAgIDB4MDFjMA0KPiA+ICsjZGVmaW5lIElNQUdFX0ZJTEVfTUFDSElORV9BUk02NCAg ICAgICAgICAgICAweGFhNjQNCj4gPiAgI2RlZmluZSBJTUFHRV9GSUxFX01BQ0hJTkVfQVhQNjQN Cj4gPiBJTUFHRV9GSUxFX01BQ0hJTkVfQUxQSEE2NA0KPiA+ICAjZGVmaW5lIElNQUdFX0ZJTEVf TUFDSElORV9DRUUgICAgICAgICAgICAgICAweGMwZWUNCj4gPiAgI2RlZmluZSBJTUFHRV9GSUxF X01BQ0hJTkVfQ0VGICAgICAgICAgICAgICAgMHgwY2VmDQo+ID4NCj4gPg0KPiA+IC0tDQo=