From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=104.47.0.87; helo=eur01-he1-obe.outbound.protection.outlook.com; envelope-from=alexei.fedorov@arm.com; receiver=edk2-devel@lists.01.org Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0087.outbound.protection.outlook.com [104.47.0.87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 44FA3207E4E0A for ; Mon, 21 May 2018 03:10:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GStFWd4uucYJgAnQG8a9JK1eCy4zQKLLdAeRj3SuY9Q=; b=CLAMnpXlWVIw2VZRB2KxsCW2t+et7rs/ivdy3Mn99jFHYZbHvwGQexZ7r6++h45DM1liRC5wcP/OEL4m4IQ+Q/+8xnQgnhOE9X2X04ag92DYI672O6iv0nk3kywB4fqDxzKF8qUdspokzIeCJV7AIvN2KqTVwYK/uYBHNOUhPuY= Received: from DB6PR0801MB1766.eurprd08.prod.outlook.com (10.169.227.13) by DB6PR0801MB2006.eurprd08.prod.outlook.com (10.168.86.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Mon, 21 May 2018 10:09:56 +0000 Received: from DB6PR0801MB1766.eurprd08.prod.outlook.com ([fe80::156f:db4f:6657:8738]) by DB6PR0801MB1766.eurprd08.prod.outlook.com ([fe80::156f:db4f:6657:8738%18]) with mapi id 15.20.0776.015; Mon, 21 May 2018 10:09:56 +0000 From: Alexei Fedorov To: Ard Biesheuvel , Thomas Abraham CC: "edk2-devel@lists.01.org" , Leif Lindholm , Daniil Egranov Thread-Topic: [PATCH edk2-platforms v4 5/9] Platform/ARM/Sgi: add the initial set of acpi tables Thread-Index: AQHT8OMMb9VnGbrT/UW/5O6wwiECWaQ59ORQ Date: Mon, 21 May 2018 10:09:56 +0000 Message-ID: References: <1526891152-18739-1-git-send-email-thomas.abraham@arm.com> <1526891152-18739-6-git-send-email-thomas.abraham@arm.com> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Alexei.Fedorov@arm.com; x-originating-ip: [217.140.96.140] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB6PR0801MB2006; 7:kGtxYSNOMzmD2R/NrPdReFVUgYPdhwBEM5FUFEk6sT/Ase7tfpRz6KkG04rkuTdZveqgTkriv9slN4eycT4MfNuburMfnNMPaR3WYh2m7lL3UqpXp1MPCofGgfy9ugtLUXukJ8D7qGYtFQTzt04cqyK0nTKsG2Byl6iOCEmf3MltoQ9tSRo/vTE9EizUPErvwskT16DdAutk/DHY/IkOkw49nu5IfN2WxTVsLcOnHipf6vzlJC95WApS8Pm5nIr4 x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:DB6PR0801MB2006; x-ms-traffictypediagnostic: DB6PR0801MB2006: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917)(162533806227266); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(93006095)(93001095)(10201501046)(6055026)(149027)(150027)(6041310)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:DB6PR0801MB2006; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0801MB2006; x-forefront-prvs: 06793E740F x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(366004)(376002)(396003)(39380400002)(346002)(40434004)(13464003)(189003)(199004)(33656002)(5660300001)(55016002)(6436002)(68736007)(4326008)(478600001)(2900100001)(2906002)(9686003)(53946003)(16200700003)(6306002)(11346002)(3660700001)(3280700002)(486006)(575784001)(86362001)(97736004)(476003)(229853002)(6636002)(966005)(6246003)(53376002)(72206003)(446003)(53936002)(14454004)(6116002)(110136005)(5250100002)(66066001)(5890100001)(54906003)(16799955002)(8936002)(76176011)(7696005)(102836004)(6506007)(25786009)(59450400001)(305945005)(7736002)(81166006)(8676002)(74316002)(3846002)(53546011)(15188155005)(105586002)(81156014)(106356001)(316002)(26005)(186003)(99286004)(579004)(559001)(569006); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0801MB2006; H:DB6PR0801MB1766.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: 6mKsvZ3UEDPXlQ/kEKdM5ix6tgOdnsDTqL2gUYIr1sF/AYgm55/am9Omv4GOuK6yfW8D50Wj46C2bvwWc6Han02GP/gqXEi1ywA5gl/swx+FqR700LekgV4Y3yZxbxPjhlSCw6CAPuC9WTtWMDHpkv8wr6Da6su75EYWs5Qp0SW82uA+sxHKrvUF1rErsomN spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 862d1a5b-7e88-4568-eea3-08d5bf030115 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: 862d1a5b-7e88-4568-eea3-08d5bf030115 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 May 2018 10:09:56.6189 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB2006 Subject: Re: [PATCH edk2-platforms v4 5/9] Platform/ARM/Sgi: add the initial set of acpi tables X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 May 2018 10:10:03 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBBcmQgQmllc2hldXZlbCA8YXJk LmJpZXNoZXV2ZWxAbGluYXJvLm9yZz4NCj4gU2VudDogMjEgTWF5IDIwMTggMTA6MDcNCj4gVG86 IFRob21hcyBBYnJhaGFtIDx0aG9tYXMuYWJyYWhhbUBhcm0uY29tPjsgQWxleGVpIEZlZG9yb3YN Cj4gPEFsZXhlaS5GZWRvcm92QGFybS5jb20+DQo+IENjOiBlZGsyLWRldmVsQGxpc3RzLjAxLm9y ZzsgTGVpZiBMaW5kaG9sbSA8bGVpZi5saW5kaG9sbUBsaW5hcm8ub3JnPjsgRGFuaWlsDQo+IEVn cmFub3YgPERhbmlpbC5FZ3Jhbm92QGFybS5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggZWRr Mi1wbGF0Zm9ybXMgdjQgNS85XSBQbGF0Zm9ybS9BUk0vU2dpOiBhZGQgdGhlIGluaXRpYWwNCj4g c2V0IG9mIGFjcGkgdGFibGVzDQo+DQo+IE9uIDIxIE1heSAyMDE4IGF0IDEwOjI1LCBUaG9tYXMg QWJyYWhhbSA8dGhvbWFzLmFicmFoYW1AYXJtLmNvbT4NCj4gd3JvdGU6DQo+ID4gRnJvbTogRGFu aWlsIEVncmFub3YgPGRhbmlpbC5lZ3Jhbm92QGFybS5jb20+DQo+ID4NCj4gPiBBZGQgdGhlIGlu aXRpYWwgdmVyc2lvbiBvZiBBY3BpIHRhYmxlcyBmb3IgdGhlIFNHSS01NzUgcGxhdGZvcm0gd2hp Y2gNCj4gPiBpcyByZXF1aXJlZCB0byBib290IHRoZSBsaW51eCBrZXJuZWwgdXAgdG8gYSBidXN5 Ym94IHByb21wdC4NCj4gPg0KPg0KPiBQbGVhc2UgZHJvcCB0aGVzZSByZWZlcmVuY2VzIHRvIGxp bnV4IG9yIGJ1c3lib3guDQo+DQo+IElmIHRoaXMgY29sbGVjdGlvbiBvZiBBQ1BJIHRhYmxlcyBy ZXByZXNlbnRzIHNvbWUgc3BlY2lmaWVkIG1pbmltdW0gKFNCQlI/KSwgd2UNCj4gc2hvdWxkIG1l bnRpb24gdGhhdC4gSWYgYW55dGhpbmcgaXMgbWlzc2luZyBpbiB0aGF0IHJlc3BlY3QsIHBsZWFz ZSBhZGQgaXQgaW5zdGVhZC4NCj4NCj4gPiBDb250cmlidXRlZC11bmRlcjogVGlhbm9Db3JlIENv bnRyaWJ1dGlvbiBBZ3JlZW1lbnQgMS4xDQo+ID4gU2lnbmVkLW9mZi1ieTogRGFuaWlsIEVncmFu b3YgPGRhbmlpbC5lZ3Jhbm92QGFybS5jb20+DQo+ID4gU2lnbmVkLW9mZi1ieTogVGhvbWFzIEFi cmFoYW0gPHRob21hcy5hYnJhaGFtQGFybS5jb20+DQo+ID4gLS0tDQo+ID4gIC4uLi9BUk0vU2dp UGtnL0FjcGlUYWJsZXMvU2dpNTc1L0FjcGlUYWJsZXMuaW5mICAgIHwgIDUzICsrKysrKysNCj4g PiAgUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9EYmcyLmFzbGMgICAgfCAg OTAgKysrKysrKysrKysNCj4gPiAgUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3 NS9Ec2R0LmFzbCAgICAgfCAgOTkgKysrKysrKysrKysrDQo+ID4gIFBsYXRmb3JtL0FSTS9TZ2lQ a2cvQWNwaVRhYmxlcy9TZ2k1NzUvRmFkdC5hc2xjICAgIHwgIDg3ICsrKysrKysrKysrDQo+ID4g IFBsYXRmb3JtL0FSTS9TZ2lQa2cvQWNwaVRhYmxlcy9TZ2k1NzUvR3RkdC5hc2xjICAgIHwgMTIz ICsrKysrKysrKysrKysrKw0KPiA+ICBQbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dp NTc1L01hZHQuYXNsYyAgICB8IDE3Mw0KPiArKysrKysrKysrKysrKysrKysrKysNCj4gPiAgUGxh dGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9TcGNyLmFzbGMgICAgfCAgNzcgKysr KysrKysrDQo+ID4gIC4uLi9BUk0vU2dpUGtnL0RyaXZlcnMvUGxhdGZvcm1EeGUvUGxhdGZvcm1E eGUuYyAgIHwgICA3ICsNCj4gPiAgUGxhdGZvcm0vQVJNL1NnaVBrZy9JbmNsdWRlL1NnaUFjcGlI ZWFkZXIuaCAgICAgICAgfCAgNDEgKysrKysNCj4gPiAgOSBmaWxlcyBjaGFuZ2VkLCA3NTAgaW5z ZXJ0aW9ucygrKQ0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiBQbGF0Zm9ybS9BUk0vU2dp UGtnL0FjcGlUYWJsZXMvU2dpNTc1L0FjcGlUYWJsZXMuaW5mDQo+ID4gIGNyZWF0ZSBtb2RlIDEw MDY0NCBQbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L0RiZzIuYXNsYw0KPiA+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3 NS9Ec2R0LmFzbA0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgUGxhdGZvcm0vQVJNL1NnaVBrZy9B Y3BpVGFibGVzL1NnaTU3NS9GYWR0LmFzbGMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IFBsYXRm b3JtL0FSTS9TZ2lQa2cvQWNwaVRhYmxlcy9TZ2k1NzUvR3RkdC5hc2xjDQo+ID4gIGNyZWF0ZSBt b2RlIDEwMDY0NCBQbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L01hZHQuYXNs Yw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVz L1NnaTU3NS9TcGNyLmFzbGMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IFBsYXRmb3JtL0FSTS9T Z2lQa2cvSW5jbHVkZS9TZ2lBY3BpSGVhZGVyLmgNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9QbGF0 Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L0FjcGlUYWJsZXMuaW5mDQo+ID4gYi9Q bGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L0FjcGlUYWJsZXMuaW5mDQo+ID4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi4yYzliZDk4DQo+ID4gLS0t IC9kZXYvbnVsbA0KPiA+ICsrKyBiL1BsYXRmb3JtL0FSTS9TZ2lQa2cvQWNwaVRhYmxlcy9TZ2k1 NzUvQWNwaVRhYmxlcy5pbmYNCj4gPiBAQCAtMCwwICsxLDUzIEBADQo+ID4gKyMjIEBmaWxlDQo+ ID4gKyMgIEFDUEkgdGFibGUgZGF0YSBhbmQgQVNMIHNvdXJjZXMgcmVxdWlyZWQgdG8gYm9vdCB0 aGUgcGxhdGZvcm0uDQo+ID4gKyMNCj4gPiArIyAgQ29weXJpZ2h0IChjKSAyMDE4LCBBUk0gTHRk LiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiA+ICsjDQo+ID4gKyMgIFRoaXMgcHJvZ3JhbSBhbmQg dGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIGxpY2Vuc2VkIGFuZCBtYWRlDQo+ID4gK2F2 YWlsYWJsZSAjICB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEJTRCBMaWNl bnNlIHdoaWNoDQo+ID4gK2FjY29tcGFuaWVzIHRoaXMgIyAgZGlzdHJpYnV0aW9uLiAgVGhlIGZ1 bGwgdGV4dCBvZiB0aGUgbGljZW5zZSBtYXkNCj4gPiArYmUgZm91bmQgYXQgIyAgaHR0cDovL29w ZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL2JzZC1saWNlbnNlLnBocA0KPiA+ICsjDQo+ID4gKyMgIFRI RSBQUk9HUkFNIElTIERJU1RSSUJVVEVEIFVOREVSIFRIRSBCU0QgTElDRU5TRSBPTiBBTiAiQVMg SVMiDQo+ID4gK0JBU0lTLCAjICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05T IE9GIEFOWSBLSU5ELA0KPiBFSVRIRVIgRVhQUkVTUyBPUiBJTVBMSUVELg0KPiA+ICsjDQo+ID4g KyMjDQo+ID4gKw0KPiA+ICtbRGVmaW5lc10NCj4gPiArICBJTkZfVkVSU0lPTiAgICAgICAgICAg ICAgICAgICAgPSAweDAwMDEwMDFBDQo+ID4gKyAgQkFTRV9OQU1FICAgICAgICAgICAgICAgICAg ICAgID0gU2dpNTc1QWNwaVRhYmxlcw0KPiA+ICsgIEZJTEVfR1VJRCAgICAgICAgICAgICAgICAg ICAgICA9IGM3MTI3MTlhLTBhYWYtNDM4Yy05Y2RkLTM1YWI0ZDYwMjA3ZCAgIw0KPiBnU2dpNTc1 QWNwaVRhYmxlc2lGaWxlR3VpZA0KPiA+ICsgIE1PRFVMRV9UWVBFICAgICAgICAgICAgICAgICAg ICA9IFVTRVJfREVGSU5FRA0KPiA+ICsgIFZFUlNJT05fU1RSSU5HICAgICAgICAgICAgICAgICA9 IDEuMA0KPiA+ICsNCj4gPiArW1NvdXJjZXNdDQo+ID4gKyAgRGJnMi5hc2xjDQo+ID4gKyAgRHNk dC5hc2wNCj4gPiArICBGYWR0LmFzbGMNCj4gPiArICBHdGR0LmFzbGMNCj4gPiArICBNYWR0LmFz bGMNCj4gPiArICBTcGNyLmFzbGMNCj4gPiArDQo+ID4gK1tQYWNrYWdlc10NCj4gPiArICBBcm1Q a2cvQXJtUGtnLmRlYw0KPiA+ICsgIEFybVBsYXRmb3JtUGtnL0FybVBsYXRmb3JtUGtnLmRlYw0K PiA+ICsgIEVtYmVkZGVkUGtnL0VtYmVkZGVkUGtnLmRlYw0KPiA+ICsgIE1kZU1vZHVsZVBrZy9N ZGVNb2R1bGVQa2cuZGVjDQo+ID4gKyAgTWRlUGtnL01kZVBrZy5kZWMNCj4gPiArICBQbGF0Zm9y bS9BUk0vU2dpUGtnL1NnaVBsYXRmb3JtLmRlYw0KPiA+ICsgIFBsYXRmb3JtL0FSTS9WRXhwcmVz c1BrZy9Bcm1WRXhwcmVzc1BrZy5kZWMNCj4gPiArDQo+DQo+IERvIHlvdSByZWFsbHkgbmVlZCBh bGwgdGhlc2UgcGFja2FnZXM/DQo+DQo+ID4gK1tGaXhlZFBjZF0NCj4gPiArICBnQXJtUGxhdGZv cm1Ub2tlblNwYWNlR3VpZC5QY2RDb3JlQ291bnQNCj4gPiArICBnQXJtUGxhdGZvcm1Ub2tlblNw YWNlR3VpZC5QY2RDbHVzdGVyQ291bnQNCj4gPiArICBnQXJtVG9rZW5TcGFjZUd1aWQuUGNkQXJt QXJjaFRpbWVyU2VjSW50ck51bQ0KPiA+ICsgIGdBcm1Ub2tlblNwYWNlR3VpZC5QY2RBcm1BcmNo VGltZXJJbnRyTnVtDQo+ID4gKyAgZ0FybVRva2VuU3BhY2VHdWlkLlBjZEFybUFyY2hUaW1lckh5 cEludHJOdW0NCj4gPiArICBnQXJtVG9rZW5TcGFjZUd1aWQuUGNkQXJtQXJjaFRpbWVyVmlydElu dHJOdW0NCj4gPiArICBnQXJtVG9rZW5TcGFjZUd1aWQuUGNkR2ljRGlzdHJpYnV0b3JCYXNlDQo+ ID4gKyAgZ0FybVRva2VuU3BhY2VHdWlkLlBjZEdpY1JlZGlzdHJpYnV0b3JzQmFzZQ0KPiA+ICsN Cj4gPiArICBnQXJtVG9rZW5TcGFjZUd1aWQuUGNkR2VuZXJpY1dhdGNoZG9nQ29udHJvbEJhc2UN Cj4gPiArICBnQXJtVG9rZW5TcGFjZUd1aWQuUGNkR2VuZXJpY1dhdGNoZG9nUmVmcmVzaEJhc2UN Cj4gPiArICBnQXJtUGxhdGZvcm1Ub2tlblNwYWNlR3VpZC5QY2RTZXJpYWxEYmdSZWdpc3RlckJh c2UNCj4gPiArICBnQXJtUGxhdGZvcm1Ub2tlblNwYWNlR3VpZC5QTDAxMVVhcnRJbnRlcnJ1cHQN Cj4gPiBkaWZmIC0tZ2l0IGEvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9E YmcyLmFzbGMNCj4gPiBiL1BsYXRmb3JtL0FSTS9TZ2lQa2cvQWNwaVRhYmxlcy9TZ2k1NzUvRGJn Mi5hc2xjDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi5lZDY3 MWYzDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL1BsYXRmb3JtL0FSTS9TZ2lQa2cvQWNw aVRhYmxlcy9TZ2k1NzUvRGJnMi5hc2xjDQo+ID4gQEAgLTAsMCArMSw5MCBAQA0KPiA+ICsvKiog QGZpbGUNCj4gPiArKiAgRGVidWcgUG9ydCBUYWJsZSAyIChEQkcyKQ0KPiA+ICsqDQo+ID4gKyog IENvcHlyaWdodCAoYykgMjAxOCwgQVJNIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQo+ ID4gKyoNCj4gPiArKiAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFs cyBhcmUgbGljZW5zZWQgYW5kIG1hZGUNCj4gPiArYXZhaWxhYmxlDQo+ID4gKyogIHVuZGVyIHRo ZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgQlNEIExpY2Vuc2Ugd2hpY2gNCj4gPiArYWNj b21wYW5pZXMgdGhpcw0KPiA+ICsqICBkaXN0cmlidXRpb24uIFRoZSBmdWxsIHRleHQgb2YgdGhl IGxpY2Vuc2UgbWF5IGJlIGZvdW5kIGF0DQo+ID4gKyogIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9s aWNlbnNlcy9ic2QtbGljZW5zZS5waHANCj4gPiArKg0KPiA+ICsqICBUSEUgUFJPR1JBTSBJUyBE SVNUUklCVVRFRCBVTkRFUiBUSEUgQlNEIExJQ0VOU0UgT04gQU4gIkFTIElTIg0KPiA+ICtCQVNJ UywNCj4gPiArKiAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIFJFUFJFU0VOVEFUSU9OUyBPRiBBTlkg S0lORCwgRUlUSEVSDQo+IEVYUFJFU1MgT1IgSU1QTElFRC4NCj4gPiArKg0KPiA+ICsqKi8NCj4g PiArDQo+ID4gKyNpbmNsdWRlICJTZ2lBY3BpSGVhZGVyLmgiDQo+ID4gKyNpbmNsdWRlIDxMaWJy YXJ5L0FjcGlMaWIuaD4NCj4gPiArI2luY2x1ZGUgPEluZHVzdHJ5U3RhbmRhcmQvQWNwaTYxLmg+ DQo+ID4gKyNpbmNsdWRlIDxJbmR1c3RyeVN0YW5kYXJkL0RlYnVnUG9ydDJUYWJsZS5oPg0KPiA+ ICsNCj4gPiArI2RlZmluZSBTR0lfREJHMl9OVU1fREVCVUdfUE9SVFMgICAgICAgICAgIDENCj4g PiArI2RlZmluZSBTR0lfREJHMl9OVU1fR0FTICAgICAgICAgICAgICAgICAgIDENCj4gPiArI2Rl ZmluZSBTR0lfREJHMl9OU19TVFJfTEVOR1RIICAgICAgICAgICAgIDgNCj4gPiArI2RlZmluZSBT R0lfUEwwMTFfUkVHSVNURVJfU1BBQ0UgICAgICAgICAgIDB4MTAwMA0KPiA+ICsNCj4gPiArI2Rl ZmluZSBOQU1FX1NUUl9VQVJUMSAgICAgeydDJywgJ08nLCAnTScsICcxJywgJ1wwJywgJ1wwJywg J1wwJywgJ1wwJ30NCj4gPiArDQo+ID4gKyNwcmFnbWEgcGFjaygxKQ0KPiA+ICsNCj4gPiArdHlw ZWRlZiBzdHJ1Y3Qgew0KPiA+ICsgIEVGSV9BQ1BJX0RCRzJfREVCVUdfREVWSUNFX0lORk9STUFU SU9OX1NUUlVDVCBEYmcyRGV2aWNlOw0KPiA+ICsgIEVGSV9BQ1BJXzZfMV9HRU5FUklDX0FERFJF U1NfU1RSVUNUVVJFICAgICAgICBCYXNlQWRkcmVzc1JlZ2lzdGVyOw0KPiA+ICsgIFVJTlQzMiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzU2l6ZTsNCj4gPiAr ICBVSU5UOA0KPiBOYW1lU3BhY2VTdHJpbmdbU0dJX0RCRzJfTlNfU1RSX0xFTkdUSF07DQo+ID4g K30gREJHMl9ERUJVR19ERVZJQ0VfSU5GT1JNQVRJT047DQo+ID4gKw0KPiA+ICt0eXBlZGVmIHN0 cnVjdCB7DQo+ID4gKyAgRUZJX0FDUElfREVCVUdfUE9SVF8yX0RFU0NSSVBUSU9OX1RBQkxFICAg ICAgIERlc2NyaXB0aW9uOw0KPiA+ICsgIERCRzJfREVCVUdfREVWSUNFX0lORk9STUFUSU9ODQo+ IERiZzJEZXZpY2VJbmZvW1NHSV9EQkcyX05VTV9ERUJVR19QT1JUU107DQo+ID4gK30gREJHMl9U QUJMRTsNCj4gPiArDQo+ID4gKyNwcmFnbWEgcGFjaygpDQo+ID4gKw0KPiA+ICsjZGVmaW5lIERC RzJfREVCVUdfUE9SVF9EREkoTnVtUmVnLCBTdWJUeXBlLCBVYXJ0QmFzZSwNCj4gVWFydEFkZHJM ZW4sIFVhcnROYW1lU3RyKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4g PiArICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV9EQkcyX0RFQlVHX0RFVklDRV9JTkZPUk1BVElPTl9T VFJVQ1RfUkVWSVNJT04sDQo+IC8qIFVJTlQ4ICAgICBSZXZpc2lvbiAqLyAgICAgICAgICAgICAg ICAgICAgICAgIFwNCj4gPiArICAgIHNpemVvZiAoREJHMl9ERUJVR19ERVZJQ0VfSU5GT1JNQVRJ T04pLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBVSU5UMTYNCj4gTGVuZ3RoICovICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBOdW1SZWcsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogVUlOVDgNCj4gTnVtYmVy b2ZHZW5lcmljQWRkcmVzc1JlZ2lzdGVycyAqLyBcDQo+ID4gKyAgICBTR0lfREJHMl9OU19TVFJf TEVOR1RILCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogVUlOVDE2 DQo+IE5hbWVTcGFjZVN0cmluZ0xlbmd0aCAqLyAgICAgICAgICAgXA0KPiA+ICsgICAgT0ZGU0VU X09GIChEQkcyX0RFQlVHX0RFVklDRV9JTkZPUk1BVElPTiwgTmFtZVNwYWNlU3RyaW5nKSwNCj4g LyogVUlOVDE2ICAgIE5hbWVTcGFjZVN0cmluZ09mZnNldCAqLyAgICAgICAgICAgXA0KPiA+ICsg ICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8qIFVJTlQxNiAgICBPZW1EYXRhTGVuZ3RoICovDQo+IFwNCj4gPiArICAgIDAs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAvKiBVSU5UMTYgICAgT2VtRGF0YU9mZnNldCAqLw0KPiBcDQo+ID4gKyAgICBFRklfQUNQ SV9EQkcyX1BPUlRfVFlQRV9TRVJJQUwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LyogVUlOVDE2ICAgIFBvcnQNCj4gVHlwZSAqLyAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ ICsgICAgU3ViVHlwZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8qIFVJTlQxNiAgICBQb3J0IFN1YnR5cGUgKi8NCj4gXA0KPiA+ICsgICAg eyBFRklfQUNQSV9SRVNFUlZFRF9CWVRFLCBFRklfQUNQSV9SRVNFUlZFRF9CWVRFIH0sICAgICAg ICAgICAgIC8qIFVJTlQ4DQo+IFJlc2VydmVkWzJdICovICAgICAgICAgICAgICAgICAgICAgXA0K PiA+ICsgICAgT0ZGU0VUX09GIChEQkcyX0RFQlVHX0RFVklDRV9JTkZPUk1BVElPTiwgQmFzZUFk ZHJlc3NSZWdpc3RlciksDQo+IC8qIFVJTlQxNiAgICBCYXNlQWRkcmVzc1JlZ2lzdGVyIE9mZnNl dCAqLyAgICAgIFwNCj4gPiArICAgIE9GRlNFVF9PRiAoREJHMl9ERUJVR19ERVZJQ0VfSU5GT1JN QVRJT04sIEFkZHJlc3NTaXplKSAgICAgICAgICAvKg0KPiBVSU5UMTYgICAgQWRkcmVzc1NpemUg T2Zmc2V0ICovICAgICAgICAgICAgICBcDQo+ID4gKyAgfSwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgIEFSTV9HQVMzMiAoVWFy dEJhc2UpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKg0KPiBFRklfQUNQSV82XzFfR0VO RVJJQ19BRERSRVNTX1NUUlVDVFVSRSBCYXNlQWRkcmVzc1JlZ2lzdGVyICovIFwNCj4gPiArICBV YXJ0QWRkckxlbiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogVUlOVDMy ICBBZGRyZXNzU2l6ZSAqLw0KPiBcDQo+ID4gKyAgVWFydE5hbWVTdHIgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIC8qIFVJTlQ4DQo+IE5hbWVTcGFjZVN0cmluZ1tNQVhfREJH Ml9OQU1FX0xFTl0gKi8gICAgICAgICAgICAgICAgIFwNCj4gPiArfQ0KPiA+ICsNCj4gPiArU1RB VElDIERCRzJfVEFCTEUgRGJnMiA9IHsNCj4gPiArICB7DQo+ID4gKyAgICBBUk1fQUNQSV9IRUFE RVIgKA0KPiA+ICsgICAgICBFRklfQUNQSV82XzFfREVCVUdfUE9SVF8yX1RBQkxFX1NJR05BVFVS RSwNCj4gPiArICAgICAgREJHMl9UQUJMRSwNCj4gPiArICAgICAgRUZJX0FDUElfREJHMl9ERUJV R19ERVZJQ0VfSU5GT1JNQVRJT05fU1RSVUNUX1JFVklTSU9ODQo+ID4gKyAgICApLA0KPiA+ICsg ICAgT0ZGU0VUX09GIChEQkcyX1RBQkxFLCBEYmcyRGV2aWNlSW5mbyksDQo+ID4gKyAgICBTR0lf REJHMl9OVU1fREVCVUdfUE9SVFMNCj4gPiArICB9LA0KPiA+ICsgIHsNCj4gPiArICAgIC8vIEtl cm5lbCBEZWJ1ZyBQb3J0DQo+ID4gKyAgICBEQkcyX0RFQlVHX1BPUlRfRERJICgNCj4gPiArICAg ICAgU0dJX0RCRzJfTlVNX0dBUywNCj4gPiArICAgICAgRUZJX0FDUElfREJHMl9QT1JUX1NVQlRZ UEVfU0VSSUFMX0FSTV9TQlNBX0dFTkVSSUNfVUFSVCwNCj4gPiArICAgICAgRml4ZWRQY2RHZXQ2 NCAoUGNkU2VyaWFsRGJnUmVnaXN0ZXJCYXNlKSwNCj4gPiArICAgICAgU0dJX1BMMDExX1JFR0lT VEVSX1NQQUNFLA0KPiA+ICsgICAgICBOQU1FX1NUUl9VQVJUMQ0KPiA+ICsgICAgKSwNCj4gPiAr ICB9DQo+ID4gK307DQo+ID4gKw0KPiA+ICsvLw0KPiA+ICsvLyBSZWZlcmVuY2UgdGhlIHRhYmxl IGJlaW5nIGdlbmVyYXRlZCB0byBwcmV2ZW50IHRoZSBvcHRpbWl6ZXIgZnJvbQ0KPiA+ICtyZW1v dmluZyAvLyB0aGUgZGF0YSBzdHJ1Y3R1cmUgZnJvbSB0aGUgZXhlY3V0YWJsZSAvLw0KPiA+ICtW T0lEKiBDT05TVCBSZWZlcmVuY2VBY3BpVGFibGUgPSAmRGJnMjsNCj4gPiBkaWZmIC0tZ2l0IGEv UGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9Ec2R0LmFzbA0KPiA+IGIvUGxh dGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9Ec2R0LmFzbA0KPiA+IG5ldyBmaWxl IG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMC4uY2VlYWM1Zg0KPiA+IC0tLSAvZGV2L251 bGwNCj4gPiArKysgYi9QbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L0RzZHQu YXNsDQo+ID4gQEAgLTAsMCArMSw5OSBAQA0KPiA+ICsvKiogQGZpbGUNCj4gPiArKiAgRGlmZmVy ZW50aWF0ZWQgU3lzdGVtIERlc2NyaXB0aW9uIFRhYmxlIEZpZWxkcyAoRFNEVCkNCj4gPiArKg0K PiA+ICsqICBDb3B5cmlnaHQgKGMpIDIwMTgsIEFSTSBMdGQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu DQo+ID4gKyoNCj4gPiArKiAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVy aWFscyBhcmUgbGljZW5zZWQgYW5kIG1hZGUNCj4gPiArYXZhaWxhYmxlDQo+ID4gKyogIHVuZGVy IHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgQlNEIExpY2Vuc2Ugd2hpY2gNCj4gPiAr YWNjb21wYW5pZXMgdGhpcw0KPiA+ICsqICBkaXN0cmlidXRpb24uICBUaGUgZnVsbCB0ZXh0IG9m IHRoZSBsaWNlbnNlIG1heSBiZSBmb3VuZCBhdA0KPiA+ICsqICBodHRwOi8vb3BlbnNvdXJjZS5v cmcvbGljZW5zZXMvYnNkLWxpY2Vuc2UucGhwDQo+ID4gKyoNCj4gPiArKiAgVEhFIFBST0dSQU0g SVMgRElTVFJJQlVURUQgVU5ERVIgVEhFIEJTRCBMSUNFTlNFIE9OIEFOICJBUyBJUyINCj4gPiAr QkFTSVMsDQo+ID4gKyogIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBSRVNFTlRBVElPTlMgT0Yg QU5ZIEtJTkQsIEVJVEhFUg0KPiBFWFBSRVNTIE9SIElNUExJRUQuDQo+ID4gKyoNCj4gPiArKiov DQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAiU2dpUGxhdGZvcm0uaCINCj4gPiArI2luY2x1ZGUgIlNn aUFjcGlIZWFkZXIuaCINCj4gPiArDQo+ID4gK0RlZmluaXRpb25CbG9jaygiRHNkdFRhYmxlLmFt bCIsICJEU0RUIiwgMSwgIkFSTUxURCIsICJBUk0tU0dJNTc1IiwNCj4gPiArRUZJX0FDUElfQVJN X09FTV9SRVZJU0lPTikgew0KPiA+ICsgIFNjb3BlKF9TQikgew0KPiA+ICsNCj4gPiArICAgIERl dmljZShDUDAwKSB7IC8vIEE3NS0wOiBDbHVzdGVyIDAsIENwdSAwDQo+ID4gKyAgICAgIE5hbWUo X0hJRCwgIkFDUEkwMDA3IikNCj4gPiArICAgICAgTmFtZShfVUlELCAwKQ0KPiA+ICsgICAgICBO YW1lKF9TVEEsIDB4RikNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gKyAgICBEZXZpY2UoQ1AwMSkg eyAvLyBBNzUtMDogQ2x1c3RlciAwLCBDcHUgMQ0KPiA+ICsgICAgICBOYW1lKF9ISUQsICJBQ1BJ MDAwNyIpDQo+ID4gKyAgICAgIE5hbWUoX1VJRCwgMSkNCj4gPiArICAgICAgTmFtZShfU1RBLCAw eEYpDQo+ID4gKyAgICB9DQo+ID4gKw0KPiA+ICsgICAgRGV2aWNlKENQMDIpIHsgLy8gQTc1LTA6 IENsdXN0ZXIgMCwgQ3B1IDINCj4gPiArICAgICAgTmFtZShfSElELCAiQUNQSTAwMDciKQ0KPiA+ ICsgICAgICBOYW1lKF9VSUQsIDIpDQo+ID4gKyAgICAgIE5hbWUoX1NUQSwgMHhGKQ0KPiA+ICsg ICAgfQ0KPiA+ICsNCj4gPiArICAgIERldmljZShDUDAzKSB7IC8vIEE3NS0wOiBDbHVzdGVyIDAs IENwdSAzDQo+ID4gKyAgICAgIE5hbWUoX0hJRCwgIkFDUEkwMDA3IikNCj4gPiArICAgICAgTmFt ZShfVUlELCAzKQ0KPiA+ICsgICAgICBOYW1lKF9TVEEsIDB4RikNCj4gPiArICAgIH0NCj4gPiAr DQo+ID4gKyAgICBEZXZpY2UoQ1AwNCkgeyAvLyBBNzUtMDogQ2x1c3RlciAxLCBDcHUgMA0KPiA+ ICsgICAgICBOYW1lKF9ISUQsICJBQ1BJMDAwNyIpDQo+ID4gKyAgICAgIE5hbWUoX1VJRCwgNCkN Cj4gPiArICAgICAgTmFtZShfU1RBLCAweEYpDQo+ID4gKyAgICB9DQo+ID4gKw0KPiA+ICsgICAg RGV2aWNlKENQMDUpIHsgLy8gQTc1LTA6IENsdXN0ZXIgMSwgQ3B1IDENCj4gPiArICAgICAgTmFt ZShfSElELCAiQUNQSTAwMDciKQ0KPiA+ICsgICAgICBOYW1lKF9VSUQsIDUpDQo+ID4gKyAgICAg IE5hbWUoX1NUQSwgMHhGKQ0KPiA+ICsgICAgfQ0KPiA+ICsNCj4gPiArICAgIERldmljZShDUDA2 KSB7IC8vIEE3NS0wOiBDbHVzdGVyIDEsIENwdSAyDQo+ID4gKyAgICAgIE5hbWUoX0hJRCwgIkFD UEkwMDA3IikNCj4gPiArICAgICAgTmFtZShfVUlELCA2KQ0KPiA+ICsgICAgICBOYW1lKF9TVEEs IDB4RikNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gKyAgICBEZXZpY2UoQ1AwNykgeyAvLyBBNzUt MDogQ2x1c3RlciAxLCBDcHUgMw0KPiA+ICsgICAgICBOYW1lKF9ISUQsICJBQ1BJMDAwNyIpDQo+ ID4gKyAgICAgIE5hbWUoX1VJRCwgNykNCj4gPiArICAgICAgTmFtZShfU1RBLCAweEYpDQo+ID4g KyAgICB9DQo+ID4gKw0KPiA+ICsgICAgLy8gVUFSVCBQTDAxMQ0KPiA+ICsgICAgRGV2aWNlKENP TTApIHsNCj4gPiArICAgICAgTmFtZShfSElELCAiQVJNSDAwMTEiKQ0KPiA+ICsgICAgICBOYW1l KF9DSUQsICJBUk1IMDAxMSIpDQo+ID4gKyAgICAgIE5hbWUoX1VJRCwgWmVybykNCj4gPiArICAg ICAgTmFtZShfU1RBLCAweEYpDQo+ID4gKyAgICAgIE5hbWUoX0NSUywgUmVzb3VyY2VUZW1wbGF0 ZSgpIHsNCj4gPiArICAgICAgICBNZW1vcnkzMkZpeGVkKFJlYWRXcml0ZSwgMHg3RkY4MDAwMCwg MHgxMDAwKQ0KPiA+ICsgICAgICAgIEludGVycnVwdChSZXNvdXJjZUNvbnN1bWVyLCBMZXZlbCwg QWN0aXZlSGlnaCwgRXhjbHVzaXZlKSB7IDE0NyB9DQo+ID4gKyAgICAgIH0pDQo+ID4gKyAgICB9 DQo+ID4gKw0KPiA+ICsgICAgLy8gU01TQyA5MUMxMTENCj4gPiArICAgIERldmljZShFVEgwKSB7 DQo+ID4gKyAgICAgIE5hbWUoX0hJRCwgIkxOUk8wMDAzIikNCj4gPiArICAgICAgTmFtZShfVUlE LCBaZXJvKQ0KPiA+ICsgICAgICBOYW1lKF9TVEEsIDB4RikNCj4gPiArICAgICAgTmFtZShfQ1JT LCBSZXNvdXJjZVRlbXBsYXRlKCkgew0KPiA+ICsgICAgICAgICAgICBNZW1vcnkzMkZpeGVkKFJl YWRXcml0ZSwgMHgxODAwMDAwMCwgMHgxMDAwKQ0KPiA+ICsgICAgICAgICAgICBJbnRlcnJ1cHQo UmVzb3VyY2VDb25zdW1lciwgTGV2ZWwsIEFjdGl2ZUhpZ2gsIEV4Y2x1c2l2ZSkgeyAxMTEgfQ0K PiA+ICsgICAgICB9KQ0KPiA+ICsgICAgICBOYW1lKF9EU0QsIFBhY2thZ2UoKSB7DQo+ID4gKyAg ICAgICAgICAgICAgICAgVG9VVUlEKCJkYWZmZDgxNC02ZWJhLTRkOGMtOGE5MS1iYzliYmY0YWEz MDEiKSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgUGFja2FnZSgpIHsNCj4gPiArICAgICAg ICAgICAgICAgICAgICAgUGFja2FnZSgyKSB7InJlZy1pby13aWR0aCIsIDQgfSwNCj4gPiArICAg ICAgICAgICAgICAgICAgICB9DQo+ID4gKyAgICAgIH0pDQo+ID4gKyAgICB9DQo+ID4gKyAgfSAv LyBTY29wZShfU0IpDQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvUGxhdGZvcm0vQVJNL1NnaVBr Zy9BY3BpVGFibGVzL1NnaTU3NS9GYWR0LmFzbGMNCj4gPiBiL1BsYXRmb3JtL0FSTS9TZ2lQa2cv QWNwaVRhYmxlcy9TZ2k1NzUvRmFkdC5hc2xjDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4g PiBpbmRleCAwMDAwMDAwLi5lZDk2Mjk4DQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL1Bs YXRmb3JtL0FSTS9TZ2lQa2cvQWNwaVRhYmxlcy9TZ2k1NzUvRmFkdC5hc2xjDQo+ID4gQEAgLTAs MCArMSw4NyBAQA0KPiA+ICsvKiogQGZpbGUNCj4gPiArKiAgRml4ZWQgQUNQSSBEZXNjcmlwdGlv biBUYWJsZSAoRkFEVCkNCj4gPiArKg0KPiA+ICsqICBDb3B5cmlnaHQgKGMpIDIwMTgsIEFSTSBM aW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiA+ICsqDQo+ID4gKyogIFRoaXMgcHJvZ3Jh bSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIGxpY2Vuc2VkIGFuZCBtYWRlDQo+ ID4gK2F2YWlsYWJsZQ0KPiA+ICsqICB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2Yg dGhlIEJTRCBMaWNlbnNlIHdoaWNoDQo+ID4gK2FjY29tcGFuaWVzIHRoaXMNCj4gPiArKiAgZGlz dHJpYnV0aW9uLiAgVGhlIGZ1bGwgdGV4dCBvZiB0aGUgbGljZW5zZSBtYXkgYmUgZm91bmQgYXQN Cj4gPiArKiAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL2JzZC1saWNlbnNlLnBocA0K PiA+ICsqDQo+ID4gKyogIFRIRSBQUk9HUkFNIElTIERJU1RSSUJVVEVEIFVOREVSIFRIRSBCU0Qg TElDRU5TRSBPTiBBTiAiQVMgSVMiDQo+ID4gK0JBU0lTLA0KPiA+ICsqICBXSVRIT1VUIFdBUlJB TlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TIE9GIEFOWSBLSU5ELCBFSVRIRVINCj4gRVhQUkVTUyBP UiBJTVBMSUVELg0KPiA+ICsqDQo+ID4gKyoqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgIlNnaUFj cGlIZWFkZXIuaCINCj4gPiArI2luY2x1ZGUgPExpYnJhcnkvQWNwaUxpYi5oPg0KPiA+ICsjaW5j bHVkZSA8SW5kdXN0cnlTdGFuZGFyZC9BY3BpLmg+DQo+ID4gKw0KPiA+ICtTVEFUSUMgRUZJX0FD UElfNl8xX0ZJWEVEX0FDUElfREVTQ1JJUFRJT05fVEFCTEUgRmFkdCA9IHsNCj4gPiArICBBUk1f QUNQSV9IRUFERVIgKA0KPiA+ICsgICAgRUZJX0FDUElfNl8xX0ZJWEVEX0FDUElfREVTQ1JJUFRJ T05fVEFCTEVfU0lHTkFUVVJFLA0KPiA+ICsgICAgRUZJX0FDUElfNl8xX0ZJWEVEX0FDUElfREVT Q1JJUFRJT05fVEFCTEUsDQo+ID4gKyAgICBFRklfQUNQSV82XzFfRklYRURfQUNQSV9ERVNDUklQ VElPTl9UQUJMRV9SRVZJU0lPTg0KPiA+ICsgICksDQo+ID4gKyAgMCwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv LyBVSU5UMzIgICAgIEZpcm13YXJlQ3RybA0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlO VDMyICAgICBEc2R0DQo+ID4gKyAgRUZJX0FDUElfUkVTRVJWRURfQllURSwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UOA0KPiBSZXNlcnZl ZDANCj4gPiArICBFRklfQUNQSV82XzFfUE1fUFJPRklMRV9FTlRFUlBSSVNFX1NFUlZFUiwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vDQo+IFVJTlQ4ICAgICAgUHJlZmVycmVkUG1Q cm9maWxlDQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UMTYgICAgIFNjaUludA0KPiA+ ICsgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDMyICAgICBTbWlDbWQNCj4gPiArICAwLCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8vIFVJTlQ4ICAgICAgQWNwaUVuYWJsZQ0KPiA+ICsgIDAsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLy8gVUlOVDggICAgICBBY3BpRGlzYWJsZQ0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g VUlOVDggICAgICBTNEJpb3NSZXENCj4gPiArICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQ4ICAg ICAgUHN0YXRlQ250DQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UMzIgICAgIFBtMWFF dnRCbGsNCj4gPiArICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQzMiAgICAgUG0xYkV2dEJsaw0K PiA+ICsgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDMyICAgICBQbTFhQ250QmxrDQo+ID4gKyAg MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAvLyBVSU5UMzIgICAgIFBtMWJDbnRCbGsNCj4gPiArICAwLCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8vIFVJTlQzMiAgICAgUG0yQ250QmxrDQo+ID4gKyAgMCwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAvLyBVSU5UMzIgICAgIFBtVG1yQmxrDQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5U MzIgICAgIEdwZTBCbGsNCj4gPiArICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQzMiAgICAgR3Bl MUJsaw0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDggICAgICBQbTFFdnRMZW4NCj4g PiArICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQ4ICAgICAgUG0xQ250TGVuDQo+ID4gKyAgMCwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAvLyBVSU5UOCAgICAgIFBtMkNudExlbg0KPiA+ICsgIDAsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLy8gVUlOVDggICAgICBQbVRtckxlbg0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g VUlOVDggICAgICBHcGUwQmxrTGVuDQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UOCAg ICAgIEdwZTFCbGtMZW4NCj4gPiArICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQ4ICAgICAgR3Bl MUJhc2UNCj4gPiArICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQ4ICAgICAgQ3N0Q250DQo+ID4g KyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvLyBVSU5UMTYgICAgIFBMdmwyTGF0DQo+ID4gKyAgMCwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAvLyBVSU5UMTYgICAgIFBMdmwzTGF0DQo+ID4gKyAgMCwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAvLyBVSU5UMTYgICAgIEZsdXNoU2l6ZQ0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlO VDE2ICAgICBGbHVzaFN0cmlkZQ0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDggICAg ICBEdXR5T2Zmc2V0DQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UOCAgICAgIER1dHlX aWR0aA0KPiA+ICsgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDggICAgICBEYXlBbHJtDQo+ID4g KyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvLyBVSU5UOCAgICAgIE1vbkFscm0NCj4gPiArICAwLCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8vIFVJTlQ4ICAgICAgQ2VudHVyeQ0KPiA+ICsgIDAsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ly8gVUlOVDE2ICAgICBJYVBjQm9vdEFyY2gNCj4gPiArICAwLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJ TlQ4ICAgICAgUmVzZXJ2ZWQxDQo+ID4gKyAgRUZJX0FDUElfNl8xX0hXX1JFRFVDRURfQUNQSSB8 DQo+IEVGSV9BQ1BJXzZfMV9MT1dfUE9XRVJfUzBfSURMRV9DQVBBQkxFLCAgICAvLyBVSU5UMzIg ICAgIEZsYWdzDQo+ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFJlc2V0UmVn DQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UOCAgICAgIFJlc2V0VmFsdWUNCj4gPiAr ICBFRklfQUNQSV82XzFfQVJNX1BTQ0lfQ09NUExJQU5ULCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8vIFVJTlQxNg0KPiBBcm1Cb290QXJjaEZsYWdzDQo+ID4gKyAg RUZJX0FDUElfNl8xX0ZJWEVEX0FDUElfREVTQ1JJUFRJT05fVEFCTEVfTUlOT1JfUkVWSVNJT04s DQo+IC8vIFVJTlQ4ICAgICAgTWlub3JSZXZpc2lvbg0KPiA+ICsgIDAsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ly8gVUlOVDY0ICAgICBYRmlybXdhcmVDdHJsDQo+ID4gKyAgMCwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBV SU5UNjQgICAgIFhEc2R0DQo+ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFhQ bTFhRXZ0QmxrDQo+ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFhQbTFiRXZ0 QmxrDQo+ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFhQbTFhQ250QmxrDQo+ ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFhQbTFiQ250QmxrDQo+ID4gKyAg TlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFhQbTJDbnRCbGsNCj4gPiArICBOVUxMX0dB UywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8vIEdBUyAgICAgICAgWFBtVG1yQmxrDQo+ID4gKyAgTlVMTF9HQVMsICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAvLyBHQVMgICAgICAgIFhHcGUwQmxrDQo+ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMg ICAgICAgIFhHcGUxQmxrDQo+ID4gKyAgTlVMTF9HQVMsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBHQVMgICAgICAgIFNs ZWVwQ29udHJvbFJlZw0KPiA+ICsgIE5VTExfR0FTLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gR0FTICAgICAgICBTbGVl cFN0YXR1c1JlZw0KPiA+ICsgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDY0DQo+IEh5cGVydmlz b3JWZW5kb3JJZGVudGl0eTsNCj4gPiArfTsNCj4gPiArDQo+ID4gKy8vDQo+ID4gKy8vIFJlZmVy ZW5jZSB0aGUgdGFibGUgYmVpbmcgZ2VuZXJhdGVkIHRvIHByZXZlbnQgdGhlIG9wdGltaXplciBm cm9tDQo+ID4gK3JlbW92aW5nIHRoZSAvLyBkYXRhIHN0cnVjdHVyZSBmcm9tIHRoZSBleGVjdXRh YmxlIC8vDQo+ID4gK1ZPSUQqIENPTlNUIFJlZmVyZW5jZUFjcGlUYWJsZSA9ICZGYWR0Ow0KPiA+ IGRpZmYgLS1naXQgYS9QbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L0d0ZHQu YXNsYw0KPiA+IGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9HdGR0LmFz bGMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjg2MmE5NjAN Cj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFi bGVzL1NnaTU3NS9HdGR0LmFzbGMNCj4gPiBAQCAtMCwwICsxLDEyMyBAQA0KPiA+ICsvKiogQGZp bGUNCj4gPiArKiAgR2VuZXJpYyBUaW1lciBEZXNjcmlwdGlvbiBUYWJsZSAoR1REVCkNCj4gPiAr Kg0KPiA+ICsqICBDb3B5cmlnaHQgKGMpIDIwMTgsIEFSTSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJl c2VydmVkLg0KPiA+ICsqDQo+ID4gKyogIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWlu ZyBtYXRlcmlhbHMgYXJlIGxpY2Vuc2VkIGFuZCBtYWRlDQo+ID4gK2F2YWlsYWJsZQ0KPiA+ICsq ICB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEJTRCBMaWNlbnNlIHdoaWNo DQo+ID4gK2FjY29tcGFuaWVzIHRoaXMNCj4gPiArKiAgZGlzdHJpYnV0aW9uLiAgVGhlIGZ1bGwg dGV4dCBvZiB0aGUgbGljZW5zZSBtYXkgYmUgZm91bmQgYXQNCj4gPiArKiAgaHR0cDovL29wZW5z b3VyY2Uub3JnL2xpY2Vuc2VzL2JzZC1saWNlbnNlLnBocA0KPiA+ICsqDQo+ID4gKyogIFRIRSBQ Uk9HUkFNIElTIERJU1RSSUJVVEVEIFVOREVSIFRIRSBCU0QgTElDRU5TRSBPTiBBTiAiQVMgSVMi DQo+ID4gK0JBU0lTLA0KPiA+ICsqICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJ T05TIE9GIEFOWSBLSU5ELCBFSVRIRVINCj4gRVhQUkVTUyBPUiBJTVBMSUVELg0KPiA+ICsqDQo+ ID4gKyoqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgIlNnaUFjcGlIZWFkZXIuaCINCj4gPiArI2lu Y2x1ZGUgPExpYnJhcnkvQWNwaUxpYi5oPg0KPiA+ICsjaW5jbHVkZSA8TGlicmFyeS9QY2RMaWIu aD4NCj4gPiArI2luY2x1ZGUgPEluZHVzdHJ5U3RhbmRhcmQvQWNwaTYxLmg+DQo+ID4gKw0KPiA+ ICsjZGVmaW5lIFNHSV9QTEFURk9STV9XQVRDSERPR19DT1VOVCAgICAgICAyDQo+ID4gKyNkZWZp bmUgU0dJX1RJTUVSX0ZSQU1FU19DT1VOVCAgICAgICAgICAgIDINCj4gPiArDQo+ID4gKyNkZWZp bmUgU1lTVEVNX1RJTUVSX0JBU0VfQUREUkVTUyAgICAgICAgIDB4RkZGRkZGRkZGRkZGRkZGRg0K PiA+ICsjZGVmaW5lIEdURFRfR0xPQkFMX0ZMQUdTICAgICAgICAgICAgICAgICAwDQo+ID4gKyNk ZWZpbmUgR1REVF9HVElNRVJfRkxBR1MNCj4gRUZJX0FDUElfNl8wX0dURFRfVElNRVJfRkxBR19U SU1FUl9JTlRFUlJVUFRfUE9MQVJJVFkNCj4gPiArDQo+ID4gKyNkZWZpbmUgU0dJX0dUX0JMT0NL X0NUTF9CQVNFICAgICAgICAgICAgIDB4MkE4MTAwMDANCj4gPiArI2RlZmluZSBTR0lfR1RfQkxP Q0tfRlJBTUUxX0NUTF9CQVNFICAgICAgMHgyQTgyMDAwMA0KPiA+ICsjZGVmaW5lIFNHSV9HVF9C TE9DS19GUkFNRTFfQ1RMX0VMMF9CQVNFICAweEZGRkZGRkZGRkZGRkZGRkYNCj4gPiArI2RlZmlu ZSBTR0lfR1RfQkxPQ0tfRlJBTUUxX0dTSVYgICAgICAgICAgMHg1Qg0KPiA+ICsNCj4gPiArI2Rl ZmluZSBTR0lfR1RfQkxPQ0tfRlJBTUUwX0NUTF9CQVNFICAgICAgMHgyQTgzMDAwMA0KPiA+ICsj ZGVmaW5lIFNHSV9HVF9CTE9DS19GUkFNRTBfQ1RMX0VMMF9CQVNFICAweEZGRkZGRkZGRkZGRkZG RkYNCj4gPiArI2RlZmluZSBTR0lfR1RfQkxPQ0tfRlJBTUUwX0dTSVYgICAgICAgICAgMHg1Qw0K PiA+ICsNCj4NCj4gQWxleGVpLCBjb3VsZCB5b3UgY29tbWVudCBvbiB0aGlzIHBhcnQgYXMgd2Vs bCBwbGVhc2U/DQo+DQpZZXMsIHRoaXMgaXMgY29ycmVjdCBmb3IgU0dJIHBsYXRmb3JtLg0KDQpJ J3ZlIGFscmVhZHkgYXNrZWQgdGhlIHF1ZXN0aW9uIGFib3V0IFNHSV9QTEFURk9STV9XQVRDSERP R19DT1VOVCB1c2VkIGFzIGEgdG90YWwgbnVtYmVyIG9mDQogUGxhdGZvcm0gVGltZXIgU3RydWN0 dXJlcywgYnV0IHdpdGggbm8gU0JTQSBHZW5lcmljIFdhdGNoZG9nIGVudHJpZXMgZGVmaW5lZCBp biB0aGUgdGFibGUuDQoNCg0KPiA+ICsjZGVmaW5lIFNHSV9HVFhfVElNRVJfRkxBR1MgICAgICAg ICAgICAgICAwDQo+ID4gKyNkZWZpbmUgR1RYX1RJTUVSX1NFQ1VSRQ0KPiBFRklfQUNQSV82XzFf R1REVF9HVF9CTE9DS19DT01NT05fRkxBR19TRUNVUkVfVElNRVINCj4gPiArI2RlZmluZSBHVFhf VElNRVJfTk9OX1NFQ1VSRSAgICAgICAgICAgICAgMA0KPiA+ICsjZGVmaW5lIEdUWF9USU1FUl9T QVZFX0NPTlRFWFQNCj4gRUZJX0FDUElfNl8xX0dURFRfR1RfQkxPQ0tfQ09NTU9OX0ZMQUdfQUxX QVlTX09OX0NBUEFCSUxJVFkNCj4gPiArI2RlZmluZSBTR0lfR1RYX0NPTU1PTl9GTEFHU19TICAg ICAgICAgICAgKEdUWF9USU1FUl9TQVZFX0NPTlRFWFQgfA0KPiBHVFhfVElNRVJfU0VDVVJFKQ0K PiA+ICsjZGVmaW5lIFNHSV9HVFhfQ09NTU9OX0ZMQUdTX05TICAgICAgICAgICAoR1RYX1RJTUVS X1NBVkVfQ09OVEVYVCB8DQo+IEdUWF9USU1FUl9OT05fU0VDVVJFKQ0KPiA+ICsNCj4gPiArI3By YWdtYSBwYWNrICgxKQ0KPiA+ICsNCj4gPiArdHlwZWRlZiBzdHJ1Y3Qgew0KPiA+ICsgIEVGSV9B Q1BJXzZfMV9HRU5FUklDX1RJTUVSX0RFU0NSSVBUSU9OX1RBQkxFICAgIEd0ZHQ7DQo+ID4gKyAg RUZJX0FDUElfNl8xX0dURFRfR1RfQkxPQ0tfU1RSVUNUVVJFICAgICAgICAgICAgR3RCbG9jazsN Cj4gPiArICBFRklfQUNQSV82XzFfR1REVF9HVF9CTE9DS19USU1FUl9TVFJVQ1RVUkUNCj4gRnJh bWVzW1NHSV9USU1FUl9GUkFNRVNfQ09VTlRdOw0KPiA+ICt9IEVGSV9BQ1BJXzZfMV9HRU5FUklD X1RJTUVSX0RFU0NSSVBUSU9OX1RBQkxFUzsNCj4gPiArDQo+ID4gKyNwcmFnbWEgcGFjayAoKQ0K PiA+ICsNCj4gPiArU1RBVElDIEVGSV9BQ1BJXzZfMV9HRU5FUklDX1RJTUVSX0RFU0NSSVBUSU9O X1RBQkxFUyBHdGR0ID0gew0KPiA+ICsgIHsNCj4gPiArICAgIEFSTV9BQ1BJX0hFQURFUiAoDQo+ ID4gKyAgICAgIEVGSV9BQ1BJXzZfMV9HRU5FUklDX1RJTUVSX0RFU0NSSVBUSU9OX1RBQkxFX1NJ R05BVFVSRSwNCj4gPiArICAgICAgRUZJX0FDUElfNl8xX0dFTkVSSUNfVElNRVJfREVTQ1JJUFRJ T05fVEFCTEVTLA0KPiA+ICsgICAgICBFRklfQUNQSV82XzFfR0VORVJJQ19USU1FUl9ERVNDUklQ VElPTl9UQUJMRV9SRVZJU0lPTg0KPiA+ICsgICAgKSwNCj4gPiArICAgIFNZU1RFTV9USU1FUl9C QVNFX0FERFJFU1MsICAgICAgICAgICAgICAgICAgICAvLyBVSU5UNjQgIFBoeXNpY2FsQWRkcmVz cw0KPiA+ICsgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC8vIFVJTlQzMiAgUmVzZXJ2ZWQNCj4gPiArICAgIEZpeGVkUGNkR2V0MzIgKFBjZEFybUFyY2hU aW1lclNlY0ludHJOdW0pLCAgICAvLyBVSU5UMzINCj4gU2VjdXJlUEwxVGltZXJHU0lWDQo+ID4g KyAgICBHVERUX0dUSU1FUl9GTEFHUywgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlO VDMyICBTZWN1cmVQTDFUaW1lckZsYWdzDQo+ID4gKyAgICBGaXhlZFBjZEdldDMyIChQY2RBcm1B cmNoVGltZXJJbnRyTnVtKSwgICAgICAgLy8gVUlOVDMyDQo+IE5vblNlY3VyZVBMMVRpbWVyR1NJ Vg0KPiA+ICsgICAgR1REVF9HVElNRVJfRkxBR1MsICAgICAgICAgICAgICAgICAgICAgICAgICAg IC8vIFVJTlQzMiAgTm9uU2VjdXJlUEwxVGltZXJGbGFncw0KPiA+ICsgICAgRml4ZWRQY2RHZXQz MiAoUGNkQXJtQXJjaFRpbWVyVmlydEludHJOdW0pLCAgIC8vIFVJTlQzMg0KPiBWaXJ0dWFsVGlt ZXJHU0lWDQo+ID4gKyAgICBHVERUX0dUSU1FUl9GTEFHUywgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLy8gVUlOVDMyICBWaXJ0dWFsVGltZXJGbGFncw0KPiA+ICsgICAgRml4ZWRQY2RHZXQz MiAoUGNkQXJtQXJjaFRpbWVySHlwSW50ck51bSksICAgIC8vIFVJTlQzMg0KPiBOb25TZWN1cmVQ TDJUaW1lckdTSVYNCj4gPiArICAgIEdURFRfR1RJTUVSX0ZMQUdTLCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAvLyBVSU5UMzIgIE5vblNlY3VyZVBMMlRpbWVyRmxhZ3MNCj4gPiArICAgIDB4 RkZGRkZGRkZGRkZGRkZGRiwgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UNjQNCj4g Q250UmVhZEJhc2VQaHlzaWNhbEFkZHJlc3MNCj4gPiArICAgIFNHSV9QTEFURk9STV9XQVRDSERP R19DT1VOVCwgICAgICAgICAgICAgICAgICAvLyBVSU5UMzINCj4gUGxhdGZvcm1UaW1lckNvdW50 DQo+ID4gKyAgICBzaXplb2YgKEVGSV9BQ1BJXzZfMV9HRU5FUklDX1RJTUVSX0RFU0NSSVBUSU9O X1RBQkxFKSAvLyBVSU5UMzINCj4gPiArUGxhdGZyb21UaW1lck9mZnNldA0KPiA+ICsgIH0sDQo+ ID4gKyAgew0KPiA+ICsgICAgRUZJX0FDUElfNl8xX0dURFRfR1RfQkxPQ0ssICAgICAgICAgICAg ICAgICAgICAgICAgICAgLy8gVUlOVDggVHlwZQ0KPiA+ICsgICAgc2l6ZW9mKEVGSV9BQ1BJXzZf MV9HVERUX0dUX0JMT0NLX1NUUlVDVFVSRSkgKyAgICAgICAgLy8gVUlOVDE2DQo+IExlbmd0aA0K PiA+ICsgICAgc2l6ZW9mKEVGSV9BQ1BJXzZfMV9HVERUX0dUX0JMT0NLX1RJTUVSX1NUUlVDVFVS RSkgKg0KPiA+ICsgICAgU0dJX1RJTUVSX0ZSQU1FU19DT1VOVCwNCj4gPiArICAgIEVGSV9BQ1BJ X1JFU0VSVkVEX0JZVEUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQ4IFJl c2VydmVkDQo+ID4gKyAgICBTR0lfR1RfQkxPQ0tfQ1RMX0JBU0UsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAvLyBVSU5UNjQgQ250Q3RsQmFzZQ0KPiA+ICsgICAgU0dJX1RJTUVSX0ZS QU1FU19DT1VOVCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDMyDQo+IEdU QmxvY2tUaW1lckNvdW50DQo+ID4gKyAgICBzaXplb2YoRUZJX0FDUElfNl8xX0dURFRfR1RfQkxP Q0tfU1RSVUNUVVJFKSAgICAgICAgICAvLyBVSU5UMzINCj4gR1RCbG9ja1RpbWVyT2Zmc2V0DQo+ ID4gKyAgfSwNCj4gPiArICB7DQo+ID4gKyAgICB7DQo+ID4gKyAgICAgIDAsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVJTlQ4IEdURnJhbWVOdW1iZXINCj4gPiArICAg ICAgew0KPiA+ICsgICAgICAgIEVGSV9BQ1BJX1JFU0VSVkVEX0JZVEUsDQo+ID4gKyAgICAgICAg RUZJX0FDUElfUkVTRVJWRURfQllURSwNCj4gPiArICAgICAgICBFRklfQUNQSV9SRVNFUlZFRF9C WVRFDQo+ID4gKyAgICAgIH0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v IFVJTlQ4IFJlc2VydmVkWzNdDQo+ID4gKyAgICAgIFNHSV9HVF9CTE9DS19GUkFNRTBfQ1RMX0JB U0UsICAgICAgICAgIC8vIFVJTlQ2NCBDbnRCYXNlWA0KPiA+ICsgICAgICBTR0lfR1RfQkxPQ0tf RlJBTUUwX0NUTF9FTDBfQkFTRSwgICAgICAvLyBVSU5UNjQgQ250RUwwQmFzZVgNCj4gPiArICAg ICAgU0dJX0dUX0JMT0NLX0ZSQU1FMF9HU0lWLCAgICAgICAgICAgICAgLy8gVUlOVDMyIEdUeFBo eXNpY2FsVGltZXJHU0lWDQo+ID4gKyAgICAgIFNHSV9HVFhfVElNRVJfRkxBR1MsICAgICAgICAg ICAgICAgICAgIC8vIFVJTlQzMiBHVHhQaHlzaWNhbFRpbWVyRmxhZ3MNCj4gPiArICAgICAgMCwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDMyIEdUeFZpcnR1YWxU aW1lckdTSVYNCj4gPiArICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLy8gVUlOVDMyIEdUeFZpcnR1YWxUaW1lckZsYWdzDQo+ID4gKyAgICAgIFNHSV9HVFhfQ09N TU9OX0ZMQUdTX05TICAgICAgICAgICAgICAgIC8vIFVJTlQzMiBHVHhDb21tb25GbGFncw0KPiA+ ICsgICAgfSwNCj4gPiArICAgIHsNCj4gPiArICAgICAgMSwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgLy8gVUlOVDggR1RGcmFtZU51bWJlcg0KPiA+ICsgICAgICB7DQo+ID4g KyAgICAgICAgRUZJX0FDUElfUkVTRVJWRURfQllURSwNCj4gPiArICAgICAgICBFRklfQUNQSV9S RVNFUlZFRF9CWVRFLA0KPiA+ICsgICAgICAgIEVGSV9BQ1BJX1JFU0VSVkVEX0JZVEUNCj4gPiAr ICAgICAgfSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVUlOVDggUmVz ZXJ2ZWRbM10NCj4gPiArICAgICAgU0dJX0dUX0JMT0NLX0ZSQU1FMV9DVExfQkFTRSwgICAgICAg ICAgLy8gVUlOVDY0IENudEJhc2VYDQo+ID4gKyAgICAgIFNHSV9HVF9CTE9DS19GUkFNRTFfQ1RM X0VMMF9CQVNFLCAgICAgIC8vIFVJTlQ2NCBDbnRFTDBCYXNlWA0KPiA+ICsgICAgICBTR0lfR1Rf QkxPQ0tfRlJBTUUxX0dTSVYsICAgICAgICAgICAgICAvLyBVSU5UMzIgR1R4UGh5c2ljYWxUaW1l ckdTSVYNCj4gPiArICAgICAgU0dJX0dUWF9USU1FUl9GTEFHUywgICAgICAgICAgICAgICAgICAg Ly8gVUlOVDMyIEdUeFBoeXNpY2FsVGltZXJGbGFncw0KPiA+ICsgICAgICAwLCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5UMzIgR1R4VmlydHVhbFRpbWVyR1NJVg0K PiA+ICsgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVSU5U MzIgR1R4VmlydHVhbFRpbWVyRmxhZ3MNCj4gPiArICAgICAgU0dJX0dUWF9DT01NT05fRkxBR1Nf UyAgICAgICAgICAgICAgICAgLy8gVUlOVDMyIEdUeENvbW1vbkZsYWdzDQo+ID4gKyAgICB9DQo+ ID4gKyAgfSwNCj4gPiArfTsNCj4gPiArDQo+ID4gKy8vDQo+ID4gKy8vIFJlZmVyZW5jZSB0aGUg dGFibGUgYmVpbmcgZ2VuZXJhdGVkIHRvIHByZXZlbnQgdGhlIG9wdGltaXplciBmcm9tDQo+ID4g K3JlbW92aW5nIHRoZSAvLyBkYXRhIHN0cnVjdHVyZSBmcm9tIHRoZSBleGVjdXRhYmxlIC8vDQo+ ID4gK1ZPSUQqIENPTlNUIFJlZmVyZW5jZUFjcGlUYWJsZSA9ICZHdGR0Ow0KPiA+IGRpZmYgLS1n aXQgYS9QbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L01hZHQuYXNsYw0KPiA+ IGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9NYWR0LmFzbGMNCj4gPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjRmOTgxMjANCj4gPiAtLS0g L2Rldi9udWxsDQo+ID4gKysrIGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3 NS9NYWR0LmFzbGMNCj4gPiBAQCAtMCwwICsxLDE3MyBAQA0KPiA+ICsvKiogQGZpbGUNCj4gPiAr KiAgTXVsdGlwbGUgQVBJQyBEZXNjcmlwdGlvbiBUYWJsZSAoTUFEVCkNCj4gPiArKg0KPiA+ICsq ICBDb3B5cmlnaHQgKGMpIDIwMTgsIEFSTSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLg0K PiA+ICsqDQo+ID4gKyogIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlh bHMgYXJlIGxpY2Vuc2VkIGFuZCBtYWRlDQo+ID4gK2F2YWlsYWJsZQ0KPiA+ICsqICB1bmRlciB0 aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEJTRCBMaWNlbnNlIHdoaWNoDQo+ID4gK2Fj Y29tcGFuaWVzIHRoaXMNCj4gPiArKiAgZGlzdHJpYnV0aW9uLiAgVGhlIGZ1bGwgdGV4dCBvZiB0 aGUgbGljZW5zZSBtYXkgYmUgZm91bmQgYXQNCj4gPiArKiAgaHR0cDovL29wZW5zb3VyY2Uub3Jn L2xpY2Vuc2VzL2JzZC1saWNlbnNlLnBocA0KPiA+ICsqDQo+ID4gKyogIFRIRSBQUk9HUkFNIElT IERJU1RSSUJVVEVEIFVOREVSIFRIRSBCU0QgTElDRU5TRSBPTiBBTiAiQVMgSVMiDQo+ID4gK0JB U0lTLA0KPiA+ICsqICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TIE9GIEFO WSBLSU5ELCBFSVRIRVINCj4gRVhQUkVTUyBPUiBJTVBMSUVELg0KPiA+ICsqDQo+ID4gKyoqLw0K PiA+ICsNCj4gPiArI2luY2x1ZGUgIlNnaVBsYXRmb3JtLmgiDQo+ID4gKyNpbmNsdWRlICJTZ2lB Y3BpSGVhZGVyLmgiDQo+ID4gKyNpbmNsdWRlIDxMaWJyYXJ5L0FjcGlMaWIuaD4NCj4gPiArI2lu Y2x1ZGUgPExpYnJhcnkvQXJtTGliLmg+DQo+ID4gKyNpbmNsdWRlIDxMaWJyYXJ5L1BjZExpYi5o Pg0KPiA+ICsjaW5jbHVkZSA8SW5kdXN0cnlTdGFuZGFyZC9BY3BpLmg+DQo+ID4gKw0KPiA+ICsj ZGVmaW5lIENPUkVTICAgKEZpeGVkUGNkR2V0MzIgKFBjZENsdXN0ZXJDb3VudCkgKiBcDQo+ID4g KyAgICAgICAgICAgICAgICAgRml4ZWRQY2RHZXQzMiAoUGNkQ29yZUNvdW50KSkNCj4gPiArDQo+ ID4gKy8vIEVGSV9BQ1BJXzZfMV9HSUNfU1RSVUNUVVJFDQo+ID4gKyNkZWZpbmUgRUZJX0FDUElf Nl8xX0dJQ0NfU1RSVUNUVVJFX0lOSVQoR2ljSWQsIEFjcGlDcHVVaWQsIE1waWRyLA0KPiBGbGFn cywgICAgICBcDQo+ID4gKyAgUG11SXJxLCBHaWNCYXNlLCBHaWNWQmFzZSwgR2ljSEJhc2UsIEdz aXZJZCwgR2ljUkJhc2UsIEVmZmljaWVuY3kpICAgICAgICAgICBcDQo+ID4gKyAgeyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV82XzFfR0lDLCAgICAgICAgICAgICAgICAg ICAgIC8qIFR5cGUgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBzaXpl b2YgKEVGSV9BQ1BJXzZfMV9HSUNfU1RSVUNUVVJFKSwgIC8qIExlbmd0aCAqLyAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV9SRVNFUlZFRF9XT1JELCAgICAgICAg ICAgICAgIC8qIFJlc2VydmVkICovICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBH aWNJZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIENQVUludGVyZmFjZU51bWJl ciAqLyAgICAgICAgICAgICBcDQo+ID4gKyAgICBBY3BpQ3B1VWlkLCAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8qIEFjcGlQcm9jZXNzb3JVaWQgKi8gICAgICAgICAgICAgICBcDQo+ID4gKyAg ICBGbGFncywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEZsYWdzICovICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8qIFBhcmtpbmdQcm90b2NvbFZlcnNpb24gKi8gICAgICAgICBcDQo+ID4g KyAgICBQbXVJcnEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFBlcmZvcm1hbmNl SW50ZXJydXB0R3NpdiAqLyAgICAgICBcDQo+ID4gKyAgICAwLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIFBhcmtlZEFkZHJlc3MgKi8gICAgICAgICAgICAgICAgICBcDQo+ ID4gKyAgICBHaWNCYXNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFBoeXNpY2Fs QmFzZUFkZHJlc3MgKi8gICAgICAgICAgICBcDQo+ID4gKyAgICBHaWNWQmFzZSwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8qIEdJQ1YgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICBc DQo+ID4gKyAgICBHaWNIQmFzZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEdJQ0gg Ki8gICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBHc2l2SWQsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIC8qIFZHSUNNYWludGVuYW5jZUludGVycnVwdCAqLyAgICAg ICBcDQo+ID4gKyAgICBHaWNSQmFzZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEdJ Q1JCYXNlQWRkcmVzcyAqLyAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBNcGlkciwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE1QSURSICovICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgICBFZmZpY2llbmN5LCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q IFByb2Nlc3NvclBvd2VyRWZmaWNpZW5jeUNsYXNzICovICBcDQo+ID4gKyAgICB7ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgICAgIEVGSV9BQ1BJX1JFU0VSVkVEX0JZVEUsICAgICAgICAgICAg IC8qIFJlc2VydmVkMlswXSAqLyAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgIEVGSV9B Q1BJX1JFU0VSVkVEX0JZVEUsICAgICAgICAgICAgIC8qIFJlc2VydmVkMlsxXSAqLyAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgICAgIEVGSV9BQ1BJX1JFU0VSVkVEX0JZVEUgICAgICAgICAg ICAgIC8qIFJlc2VydmVkMlsyXSAqLyAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICB9ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgfQ0KPiA+ICsNCj4gPiArLy8gRUZJX0FDUElfNl8xX0dJ Q19ESVNUUklCVVRPUl9TVFJVQ1RVUkUNCj4gPiArI2RlZmluZSBFRklfQUNQSV82XzFfR0lDX0RJ U1RSSUJVVE9SX0lOSVQoR2ljRGlzdEh3SWQsIEdpY0Rpc3RCYXNlLA0KPiBcDQo+ID4gKyAgR2lj RGlzdFZlY3RvciwgR2ljVmVyc2lvbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAg ICBFRklfQUNQSV82XzFfR0lDRCwgICAgICAgICAgICAgICAgICAgIC8qIFR5cGUgKi8gICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBzaXplb2YgKEVGSV9BQ1BJXzZfMV9HSUNf RElTVFJJQlVUT1JfU1RSVUNUVVJFKSwgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4g KyAgICBFRklfQUNQSV9SRVNFUlZFRF9XT1JELCAgICAgICAgICAgICAgIC8qIFJlc2VydmVkMSAq LyAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBHaWNEaXN0SHdJZCwgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIEdpY0lkICovICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ ID4gKyAgICBHaWNEaXN0QmFzZSwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFBoeXNpY2Fs QmFzZUFkZHJlc3MgKi8gICAgICAgICAgICBcDQo+ID4gKyAgICBHaWNEaXN0VmVjdG9yLCAgICAg ICAgICAgICAgICAgICAgICAgIC8qIFN5c3RlbVZlY3RvckJhc2UgKi8gICAgICAgICAgICAgICBc DQo+ID4gKyAgICBHaWNWZXJzaW9uLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEdpY1Zl cnNpb24gKi8gICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICB7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQo+ID4gKyAgICAgIEVGSV9BQ1BJX1JFU0VSVkVEX0JZVEUsICAgICAgICAgICAgIC8qIFJl c2VydmVkMlswXSAqLyAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgIEVGSV9BQ1BJX1JF U0VSVkVEX0JZVEUsICAgICAgICAgICAgIC8qIFJlc2VydmVkMlsxXSAqLyAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgICAgIEVGSV9BQ1BJX1JFU0VSVkVEX0JZVEUsICAgICAgICAgICAgIC8q IFJlc2VydmVkMlsyXSAqLyAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICB9ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgfQ0KPiA+ICsNCj4gPiArLy8gRUZJX0FDUElfNl8xX0dJQ1JfU1RS VUNUVVJFDQo+ID4gKyNkZWZpbmUgRUZJX0FDUElfNl8xX0dJQ19SRURJU1RSSUJVVE9SX0lOSVQo UmVkaXNSZWdpb25BZGRyLA0KPiBSZWRpc0Rpc2NMZW5ndGgpICBcDQo+ID4gKyAgeyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV82XzFfR0lDUiwgICAgICAgICAgICAgICAg ICAgIC8qIFR5cGUgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBzaXpl b2YgKEVGSV9BQ1BJXzZfMV9HSUNSX1NUUlVDVFVSRSksIC8qIExlbmd0aCAqLyAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV9SRVNFUlZFRF9XT1JELCAgICAgICAg ICAgICAgIC8qIFJlc2VydmVkICovICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBS ZWRpc1JlZ2lvbkFkZHIsICAgICAgICAgICAgICAgICAgICAgIC8qIERpc2NvdmVyeVJhbmdlQmFz ZUFkZHJlc3MgKi8gICAgICBcDQo+ID4gKyAgICBSZWRpc0Rpc2NMZW5ndGggICAgICAgICAgICAg ICAgICAgICAgIC8qIERpc2NvdmVyeVJhbmdlTGVuZ3RoICovICAgICAgICAgICBcDQo+ID4gKyAg fQ0KPiA+ICsNCj4gPiArLy8gRUZJX0FDUElfNl8xX0dJQ19JVFNfU1RSVUNUVVJFDQo+ID4gKyNk ZWZpbmUgRUZJX0FDUElfNl8xX0dJQ19JVFNfSU5JVChHaWNJdHNJZCwgR2ljSXRzQmFzZSkgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgeyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4g KyAgICBFRklfQUNQSV82XzFfR0lDX0lUUywgICAgICAgICAgICAgICAgIC8qIFR5cGUgKi8gICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBzaXplb2YgKEVGSV9BQ1BJXzZfMV9H SUNfSVRTX1NUUlVDVFVSRSksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ ID4gKyAgICBFRklfQUNQSV9SRVNFUlZFRF9XT1JELCAgICAgICAgICAgICAgIC8qIFJlc2VydmVk ICovICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICBHaWNJdHNJZCwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8qIEdpY0l0c0lkICovICAgICAgICAgICAgICAgICAgICAgICBc DQo+ID4gKyAgICBHaWNJdHNCYXNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFBoeXNp Y2FsQmFzZUFkZHJlc3MgKi8gICAgICAgICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV9SRVNFUlZF RF9EV09SRCwgICAgICAgICAgICAgIC8qIERpc2NvdmVyeVJhbmdlTGVuZ3RoICovICAgICAgICAg ICBcDQo+ID4gKyAgfQ0KPiA+ICsNCj4gPiArLy8NCj4gPiArLy8gTXVsdGlwbGUgQVBJQyBEZXNj cmlwdGlvbiBUYWJsZQ0KPiA+ICsvLw0KPiA+ICsjcHJhZ21hIHBhY2sgKDEpDQo+ID4gKw0KPiA+ ICt0eXBlZGVmIHN0cnVjdCB7DQo+ID4gKyAgRUZJX0FDUElfNl8xX01VTFRJUExFX0FQSUNfREVT Q1JJUFRJT05fVEFCTEVfSEVBREVSICAgSGVhZGVyOw0KPiA+ICsgIEVGSV9BQ1BJXzZfMV9HSUNf U1RSVUNUVVJFICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdpY0ludGVyZmFjZXNbQ09SRVNd Ow0KPiA+ICsgIEVGSV9BQ1BJXzZfMV9HSUNfRElTVFJJQlVUT1JfU1RSVUNUVVJFICAgICAgICAg ICAgICAgIEdpY0Rpc3RyaWJ1dG9yOw0KPiA+ICsgIEVGSV9BQ1BJXzZfMV9HSUNSX1NUUlVDVFVS RSAgICAgICAgICAgICAgICAgICAgICAgICAgIEdpY1JlZGlzdHJpYnV0b3I7DQo+ID4gKyAgRUZJ X0FDUElfNl8xX0dJQ19JVFNfU1RSVUNUVVJFICAgICAgICAgICAgICAgICAgICAgICAgR2ljSXRz Ow0KPiA+ICt9IEVGSV9BQ1BJXzZfMV9NVUxUSVBMRV9BUElDX0RFU0NSSVBUSU9OX1RBQkxFOw0K PiA+ICsNCj4gPiArI3ByYWdtYSBwYWNrICgpDQo+ID4gKw0KPiA+ICtTVEFUSUMgRUZJX0FDUElf Nl8xX01VTFRJUExFX0FQSUNfREVTQ1JJUFRJT05fVEFCTEUgTWFkdCA9IHsNCj4gPiArICB7DQo+ ID4gKyAgICBBUk1fQUNQSV9IRUFERVIgKA0KPiA+ICsgICAgICBFRklfQUNQSV82XzFfTVVMVElQ TEVfQVBJQ19ERVNDUklQVElPTl9UQUJMRV9TSUdOQVRVUkUsDQo+ID4gKyAgICAgIEVGSV9BQ1BJ XzZfMV9NVUxUSVBMRV9BUElDX0RFU0NSSVBUSU9OX1RBQkxFLA0KPiA+ICsgICAgICBFRklfQUNQ SV82XzFfTVVMVElQTEVfQVBJQ19ERVNDUklQVElPTl9UQUJMRV9SRVZJU0lPTg0KPiA+ICsgICAg KSwNCj4gPiArICAgIC8vIE1BRFQgc3BlY2lmaWMgZmllbGRzDQo+ID4gKyAgICAwLCAvLyBMb2Nh bEFwaWNBZGRyZXNzDQo+ID4gKyAgICAwLCAvLyBGbGFncw0KPiA+ICsgIH0sDQo+ID4gKyAgew0K PiA+ICsgICAgLy8gRm9ybWF0OiBFRklfQUNQSV82XzFfR0lDQ19TVFJVQ1RVUkVfSU5JVChHaWNJ ZCwgQWNwaUNwdVVpZCwNCj4gTXBpZHIsIEZsYWdzLA0KPiA+ICsgICAgLy8gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQbXVJcnEsIEdpY0Jhc2UsIEdpY1ZCYXNlLA0K PiA+ICsgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHaWNI QmFzZSwgR3NpdklkLCBHaWNSQmFzZSwNCj4gPiArICAgIC8vICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgRWZmaWNpZW5jeSkNCj4gPiArICAgIC8vIE5vdGU6IFRoZSBH SUMgU3RydWN0dXJlIG9mIHRoZSBwcmltYXJ5IENQVSBtdXN0IGJlIHRoZSBmaXJzdCBlbnRyeQ0K PiA+ICsgICAgLy8gKHNlZSBub3RlIGluIDUuMi4xMi4xNCBHSUNDIFN0cnVjdHVyZSBvZiBBQ1BJ IHY2LjEpLg0KPiA+ICsgICAgRUZJX0FDUElfNl8xX0dJQ0NfU1RSVUNUVVJFX0lOSVQoIC8vIEE3 NS0wDQo+ID4gKyAgICAgIDAsIDAsIEdFVF9NUElEKDB4MCwgMHgwKSwgRUZJX0FDUElfNl8xX0dJ Q19FTkFCTEVELCAyMywNCj4gPiArICAgICAgRml4ZWRQY2RHZXQzMiAoUGNkR2ljRGlzdHJpYnV0 b3JCYXNlKSwNCj4gPiArICAgICAgMHgyYzAyMDAwMCwgMHgyYzAxMDAwMCwgMjUsIDAgLyogR2lj UkJhc2UgKi8sIDAgLyogRWZmaWNpZW5jeSAqLyksDQo+ID4gKyAgICBFRklfQUNQSV82XzFfR0lD Q19TVFJVQ1RVUkVfSU5JVCggLy8gQTc1LTENCj4gPiArICAgICAgMCwgMSwgR0VUX01QSUQoMHgw LCAweDEwMCksIEVGSV9BQ1BJXzZfMV9HSUNfRU5BQkxFRCwgMjMsDQo+ID4gKyAgICAgIEZpeGVk UGNkR2V0MzIgKFBjZEdpY0Rpc3RyaWJ1dG9yQmFzZSksDQo+ID4gKyAgICAgIDB4MmMwMjAwMDAs IDB4MmMwMTAwMDAsIDI1LCAwIC8qIEdpY1JCYXNlICovLCAwIC8qIEVmZmljaWVuY3kgKi8pLA0K PiA+ICsgICAgRUZJX0FDUElfNl8xX0dJQ0NfU1RSVUNUVVJFX0lOSVQoIC8vIEE3NS0yDQo+ID4g KyAgICAgIDAsIDIsIEdFVF9NUElEKDB4MCwgMHgyMDApLCBFRklfQUNQSV82XzFfR0lDX0VOQUJM RUQsIDIzLA0KPiA+ICsgICAgICBGaXhlZFBjZEdldDMyIChQY2RHaWNEaXN0cmlidXRvckJhc2Up LA0KPiA+ICsgICAgICAweDJjMDIwMDAwLCAweDJjMDEwMDAwLCAyNSwgMCAvKiBHaWNSQmFzZSAq LywgMCAvKiBFZmZpY2llbmN5ICovKSwNCj4gPiArICAgIEVGSV9BQ1BJXzZfMV9HSUNDX1NUUlVD VFVSRV9JTklUKCAvLyBBNzUtMw0KPiA+ICsgICAgICAwLCAzLCBHRVRfTVBJRCgweDAsIDB4MzAw KSwgRUZJX0FDUElfNl8xX0dJQ19FTkFCTEVELCAyMywNCj4gPiArICAgICAgRml4ZWRQY2RHZXQz MiAoUGNkR2ljRGlzdHJpYnV0b3JCYXNlKSwNCj4gPiArICAgICAgMHgyYzAyMDAwMCwgMHgyYzAx MDAwMCwgMjUsIDAgLyogR2ljUkJhc2UgKi8sIDAgLyogRWZmaWNpZW5jeQ0KPiA+ICsqLyksDQo+ ID4gKw0KPiA+ICsgICAgRUZJX0FDUElfNl8xX0dJQ0NfU1RSVUNUVVJFX0lOSVQoIC8vIEE3NS00 DQo+ID4gKyAgICAgIDAsIDQsIEdFVF9NUElEKDB4MTAwLCAweDAwKSwgRUZJX0FDUElfNl8xX0dJ Q19FTkFCTEVELCAyMywNCj4gPiArICAgICAgRml4ZWRQY2RHZXQzMiAoUGNkR2ljRGlzdHJpYnV0 b3JCYXNlKSwNCj4gPiArICAgICAgMHgyYzAyMDAwMCwgMHgyYzAxMDAwMCwgMjUsIDAgLyogR2lj UkJhc2UgKi8sIDAgLyogRWZmaWNpZW5jeSAqLyksDQo+ID4gKyAgICBFRklfQUNQSV82XzFfR0lD Q19TVFJVQ1RVUkVfSU5JVCggLy8gQTc1LTUNCj4gPiArICAgICAgMCwgNSwgR0VUX01QSUQoMHgx MDAsIDB4MTAwKSwgRUZJX0FDUElfNl8xX0dJQ19FTkFCTEVELCAyMywNCj4gPiArICAgICAgRml4 ZWRQY2RHZXQzMiAoUGNkR2ljRGlzdHJpYnV0b3JCYXNlKSwNCj4gPiArICAgICAgMHgyYzAyMDAw MCwgMHgyYzAxMDAwMCwgMjUsIDAgLyogR2ljUkJhc2UgKi8sIDAgLyogRWZmaWNpZW5jeSAqLyks DQo+ID4gKyAgICBFRklfQUNQSV82XzFfR0lDQ19TVFJVQ1RVUkVfSU5JVCggLy8gQTc1LTYNCj4g PiArICAgICAgMCwgNiwgR0VUX01QSUQoMHgxMDAsIDB4MjAwKSwgRUZJX0FDUElfNl8xX0dJQ19F TkFCTEVELCAyMywNCj4gPiArICAgICAgRml4ZWRQY2RHZXQzMiAoUGNkR2ljRGlzdHJpYnV0b3JC YXNlKSwNCj4gPiArICAgICAgMHgyYzAyMDAwMCwgMHgyYzAxMDAwMCwgMjUsIDAgLyogR2ljUkJh c2UgKi8sIDAgLyogRWZmaWNpZW5jeSAqLyksDQo+ID4gKyAgICBFRklfQUNQSV82XzFfR0lDQ19T VFJVQ1RVUkVfSU5JVCggLy8gQTc1LTcNCj4gPiArICAgICAgMCwgNywgR0VUX01QSUQoMHgxMDAs IDB4MzAwKSwgRUZJX0FDUElfNl8xX0dJQ19FTkFCTEVELCAyMywNCj4gPiArICAgICAgRml4ZWRQ Y2RHZXQzMiAoUGNkR2ljRGlzdHJpYnV0b3JCYXNlKSwNCj4gPiArICAgICAgMHgyYzAyMDAwMCwg MHgyYzAxMDAwMCwgMjUsIDAgLyogR2ljUkJhc2UgKi8sIDAgLyogRWZmaWNpZW5jeQ0KPiA+ICsq LyksDQo+ID4gKyAgfSwNCj4gPiArICAvLyBHSUMgRGlzdHJpYnV0b3IgRW50cnkNCj4gPiArICBF RklfQUNQSV82XzFfR0lDX0RJU1RSSUJVVE9SX0lOSVQoMCwgRml4ZWRQY2RHZXQzMg0KPiAoUGNk R2ljRGlzdHJpYnV0b3JCYXNlKSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMCwgMyksDQo+ID4gKyAgLy8gR0lDIFJlZGlzdHJpYnV0b3INCj4gPiArICBFRklfQUNQ SV82XzFfR0lDX1JFRElTVFJJQlVUT1JfSU5JVChGaXhlZFBjZEdldDMyDQo+IChQY2RHaWNSZWRp c3RyaWJ1dG9yc0Jhc2UpLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFNJWkVfMU1CKSwNCj4gPiArICAvLyBHSUMgSVRTDQo+ID4gKyAgRUZJX0FDUElfNl8xX0dJ Q19JVFNfSU5JVCgwLCAweDMwMDQwMDAwKSwgfTsNCj4gPiArDQo+ID4gKy8vDQo+ID4gKy8vIFJl ZmVyZW5jZSB0aGUgdGFibGUgYmVpbmcgZ2VuZXJhdGVkIHRvIHByZXZlbnQgdGhlIG9wdGltaXpl ciBmcm9tDQo+ID4gK3JlbW92aW5nIC8vIHRoZSBkYXRhIHN0cnVjdHVyZSBmcm9tIHRoZSBleGVj dXRhYmxlIC8vDQo+ID4gK1ZPSUQqIENPTlNUIFJlZmVyZW5jZUFjcGlUYWJsZSA9ICZNYWR0Ow0K PiA+IGRpZmYgLS1naXQgYS9QbGF0Zm9ybS9BUk0vU2dpUGtnL0FjcGlUYWJsZXMvU2dpNTc1L1Nw Y3IuYXNsYw0KPiA+IGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3BpVGFibGVzL1NnaTU3NS9TcGNy LmFzbGMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjEwZWFm MjcNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9BY3Bp VGFibGVzL1NnaTU3NS9TcGNyLmFzbGMNCj4gPiBAQCAtMCwwICsxLDc3IEBADQo+ID4gKy8qKiBA ZmlsZQ0KPiA+ICsqICBTZXJpYWwgUG9ydCBDb25zb2xlIFJlZGlyZWN0aW9uIFRhYmxlIChTUENS KQ0KPiA+ICsqDQo+ID4gKyogIENvcHlyaWdodCAoYykgMjAxOCwgQVJNIExpbWl0ZWQuIEFsbCBy aWdodHMgcmVzZXJ2ZWQuDQo+ID4gKyoNCj4gPiArKiAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNj b21wYW55aW5nIG1hdGVyaWFscyBhcmUgbGljZW5zZWQgYW5kIG1hZGUNCj4gPiArYXZhaWxhYmxl DQo+ID4gKyogIHVuZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgQlNEIExpY2Vu c2Ugd2hpY2gNCj4gPiArYWNjb21wYW5pZXMgdGhpcw0KPiA+ICsqICBkaXN0cmlidXRpb24uICBU aGUgZnVsbCB0ZXh0IG9mIHRoZSBsaWNlbnNlIG1heSBiZSBmb3VuZCBhdA0KPiA+ICsqICBodHRw Oi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvYnNkLWxpY2Vuc2UucGhwDQo+ID4gKyoNCj4gPiAr KiAgVEhFIFBST0dSQU0gSVMgRElTVFJJQlVURUQgVU5ERVIgVEhFIEJTRCBMSUNFTlNFIE9OIEFO ICJBUyBJUyINCj4gPiArQkFTSVMsDQo+ID4gKyogIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBS RVNFTlRBVElPTlMgT0YgQU5ZIEtJTkQsIEVJVEhFUg0KPiBFWFBSRVNTIE9SIElNUExJRUQuDQo+ ID4gKyoNCj4gPiArKiovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAiU2dpQWNwaUhlYWRlci5oIg0K PiA+ICsjaW5jbHVkZSA8TGlicmFyeS9BY3BpTGliLmg+DQo+ID4gKyNpbmNsdWRlIDxJbmR1c3Ry eVN0YW5kYXJkL0FjcGk2MS5oPg0KPiA+ICsjaW5jbHVkZSA8SW5kdXN0cnlTdGFuZGFyZC9TZXJp YWxQb3J0Q29uc29sZVJlZGlyZWN0aW9uVGFibGUuaD4NCj4gPiArDQo+ID4gK1NUQVRJQyBFRklf QUNQSV9TRVJJQUxfUE9SVF9DT05TT0xFX1JFRElSRUNUSU9OX1RBQkxFIFNwY3IgPSB7DQo+ID4g KyAgQVJNX0FDUElfSEVBREVSICgNCj4gPiArDQo+IEVGSV9BQ1BJXzZfMV9TRVJJQUxfUE9SVF9D T05TT0xFX1JFRElSRUNUSU9OX1RBQkxFX1NJR05BVFVSRSwNCj4gPiArICAgIEVGSV9BQ1BJX1NF UklBTF9QT1JUX0NPTlNPTEVfUkVESVJFQ1RJT05fVEFCTEUsDQo+ID4gKyAgICBFRklfQUNQSV9T RVJJQUxfUE9SVF9DT05TT0xFX1JFRElSRUNUSU9OX1RBQkxFX1JFVklTSU9ODQo+ID4gKyAgKSwN Cj4gPiArICAvLyBVSU5UOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW50ZXJm YWNlVHlwZTsNCj4gPiArDQo+IEVGSV9BQ1BJX1NFUklBTF9QT1JUX0NPTlNPTEVfUkVESVJFQ1RJ T05fVEFCTEVfSU5URVJGQUNFX1RZUEVfQVINCj4gTV9QTDAxMV9VQVJULA0KPiA+ICsgIC8vIFVJ TlQ4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXNlcnZlZDFbM107DQo+ID4g KyAgew0KPiA+ICsgICAgRUZJX0FDUElfUkVTRVJWRURfQllURSwNCj4gPiArICAgIEVGSV9BQ1BJ X1JFU0VSVkVEX0JZVEUsDQo+ID4gKyAgICBFRklfQUNQSV9SRVNFUlZFRF9CWVRFDQo+ID4gKyAg fSwNCj4gPiArICAvLyBFRklfQUNQSV81XzBfR0VORVJJQ19BRERSRVNTX1NUUlVDVFVSRSAgQmFz ZUFkZHJlc3M7DQo+ID4gKyAgQVJNX0dBUzMyICgweDdGRjgwMDAwKSwNCj4gPiArICAvLyBVSU5U OCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW50ZXJydXB0VHlwZTsNCj4gPiAr DQo+IEVGSV9BQ1BJX1NFUklBTF9QT1JUX0NPTlNPTEVfUkVESVJFQ1RJT05fVEFCTEVfSU5URVJS VVBUX1RZUEVfR0kNCj4gQywNCj4gPiArICAvLyBVSU5UOCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgSXJxOw0KPiA+ICsgIDAsDQo+ID4gKyAgLy8gVUlOVDMyICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEdsb2JhbFN5c3RlbUludGVycnVwdDsNCj4gPiArICBGaXhl ZFBjZEdldDMyIChQTDAxMVVhcnRJbnRlcnJ1cHQpLA0KPiA+ICsgIC8vIFVJTlQ4ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBCYXVkUmF0ZTsNCj4gPiArDQo+IEVGSV9BQ1BJX1NF UklBTF9QT1JUX0NPTlNPTEVfUkVESVJFQ1RJT05fVEFCTEVfQkFVRF9SQVRFXzExNTIwMCwNCj4g PiArICAvLyBVSU5UOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyaXR5Ow0K PiA+ICsNCj4gRUZJX0FDUElfU0VSSUFMX1BPUlRfQ09OU09MRV9SRURJUkVDVElPTl9UQUJMRV9Q QVJJVFlfTk9fUEFSSVRZLA0KPiA+ICsgIC8vIFVJTlQ4ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9wQml0czsNCj4gPiArICBFRklfQUNQSV9TRVJJQUxfUE9SVF9DT05TT0xF X1JFRElSRUNUSU9OX1RBQkxFX1NUT1BfQklUU18xLA0KPiA+ICsgIC8vIFVJTlQ4ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBGbG93Q29udHJvbDsNCj4gPiArICAwLA0KPiA+ICsg IC8vIFVJTlQ4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJtaW5hbFR5cGU7 DQo+ID4gKw0KPiBFRklfQUNQSV9TRVJJQUxfUE9SVF9DT05TT0xFX1JFRElSRUNUSU9OX1RBQkxF X1RFUk1JTkFMX1RZUEVfQU4NCj4gU0ksDQo+ID4gKyAgLy8gVUlOVDggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFJlc2VydmVkMjsNCj4gPiArICBFRklfQUNQSV9SRVNFUlZFRF9C WVRFLA0KPiA+ICsgIC8vIFVJTlQxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ Y2lEZXZpY2VJZDsNCj4gPiArICAweEZGRkYsDQo+ID4gKyAgLy8gVUlOVDE2ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFBjaVZlbmRvcklkOw0KPiA+ICsgIDB4RkZGRiwNCj4gPiAr ICAvLyBVSU5UOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGNpQnVzTnVtYmVy Ow0KPiA+ICsgIDB4MDAsDQo+ID4gKyAgLy8gVUlOVDggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFBjaURldmljZU51bWJlcjsNCj4gPiArICAweDAwLA0KPiA+ICsgIC8vIFVJTlQ4 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQY2lGdW5jdGlvbk51bWJlcjsNCj4g PiArICAweDAwLA0KPiA+ICsgIC8vIFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBQY2lGbGFnczsNCj4gPiArICAweDAwMDAwMDAwLA0KPiA+ICsgIC8vIFVJTlQ4ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQY2lTZWdtZW50Ow0KPiA+ICsgIDB4MDAsDQo+ ID4gKyAgLy8gVUlOVDMyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc2VydmVk MzsNCj4gPiArICBFRklfQUNQSV9SRVNFUlZFRF9EV09SRA0KPiA+ICt9Ow0KPiA+ICsNCj4gPiAr Ly8NCj4gPiArLy8gUmVmZXJlbmNlIHRoZSB0YWJsZSBiZWluZyBnZW5lcmF0ZWQgdG8gcHJldmVu dCB0aGUgb3B0aW1pemVyIGZyb20NCj4gPiArcmVtb3ZpbmcgdGhlIC8vIGRhdGEgc3RydWN0dXJl IGZyb20gdGhlIGV4ZWN1dGFibGUgLy8NCj4gPiArVk9JRCogQ09OU1QgUmVmZXJlbmNlQWNwaVRh YmxlID0gJlNwY3I7DQo+ID4gZGlmZiAtLWdpdCBhL1BsYXRmb3JtL0FSTS9TZ2lQa2cvRHJpdmVy cy9QbGF0Zm9ybUR4ZS9QbGF0Zm9ybUR4ZS5jDQo+ID4gYi9QbGF0Zm9ybS9BUk0vU2dpUGtnL0Ry aXZlcnMvUGxhdGZvcm1EeGUvUGxhdGZvcm1EeGUuYw0KPiA+IGluZGV4IGZiMWUzOTAuLjRjOTU2 ZjQgMTAwNjQ0DQo+ID4gLS0tIGEvUGxhdGZvcm0vQVJNL1NnaVBrZy9Ecml2ZXJzL1BsYXRmb3Jt RHhlL1BsYXRmb3JtRHhlLmMNCj4gPiArKysgYi9QbGF0Zm9ybS9BUk0vU2dpUGtnL0RyaXZlcnMv UGxhdGZvcm1EeGUvUGxhdGZvcm1EeGUuYw0KPiA+IEBAIC0xMiw2ICsxMiw3IEBADQo+ID4gICoN Cj4gPiAgKiovDQo+ID4NCj4gPiArI2luY2x1ZGUgPExpYnJhcnkvQWNwaUxpYi5oPg0KPiA+ICAj aW5jbHVkZSA8TGlicmFyeS9EZWJ1Z0xpYi5oPg0KPiA+DQo+ID4gIEVGSV9TVEFUVVMNCj4gPiBA QCAtMjgsNiArMjksMTIgQEAgQXJtU2dpUGtnRW50cnlQb2ludCAoICB7DQo+ID4gICAgRUZJX1NU QVRVUyAgICAgICAgICAgICAgU3RhdHVzOw0KPiA+DQo+ID4gKyAgU3RhdHVzID0gTG9jYXRlQW5k SW5zdGFsbEFjcGlGcm9tRnYgKCZnU2dpNTc1QWNwaVRhYmxlc2lGaWxlR3VpZCk7DQo+ID4gKyBp ZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ID4gKyAgICBERUJVRyAoKERFQlVHX0VSUk9SLCAi UGxhdGZvcm1EeGU6IEZhaWxlZCB0byBpbnN0YWxsIEFDUEkgdGFibGVzXG4iKSk7DQo+ID4gKyAg ICByZXR1cm4gU3RhdHVzOw0KPiA+ICsgIH0NCj4gPiArDQo+ID4gICAgLy8gSW5zdGFsbCBWaXJ0 aW8gQmxvY2sgSU8uDQo+ID4gICAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFZpcnRpb1N1cHBvcnRl ZCkgPT0gVFJVRSkgew0KPiA+ICAgICAgU3RhdHVzID0gSW5pdFZpcnRpb0Jsb2NrSW8gKEltYWdl SGFuZGxlKTsgZGlmZiAtLWdpdA0KPiA+IGEvUGxhdGZvcm0vQVJNL1NnaVBrZy9JbmNsdWRlL1Nn aUFjcGlIZWFkZXIuaA0KPiA+IGIvUGxhdGZvcm0vQVJNL1NnaVBrZy9JbmNsdWRlL1NnaUFjcGlI ZWFkZXIuaA0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMC4uODcw ZmZlOQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9QbGF0Zm9ybS9BUk0vU2dpUGtnL0lu Y2x1ZGUvU2dpQWNwaUhlYWRlci5oDQo+ID4gQEAgLTAsMCArMSw0MSBAQA0KPiA+ICsvKiogQGZp bGUNCj4gPiArKg0KPiA+ICsqICBDb3B5cmlnaHQgKGMpIDIwMTgsIEFSTSBMaW1pdGVkLiBBbGwg cmlnaHRzIHJlc2VydmVkLg0KPiA+ICsqDQo+ID4gKyogIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFj Y29tcGFueWluZyBtYXRlcmlhbHMgYXJlIGxpY2Vuc2VkIGFuZCBtYWRlDQo+ID4gK2F2YWlsYWJs ZQ0KPiA+ICsqICB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEJTRCBMaWNl bnNlIHdoaWNoDQo+ID4gK2FjY29tcGFuaWVzIHRoaXMNCj4gPiArKiAgZGlzdHJpYnV0aW9uLiBU aGUgZnVsbCB0ZXh0IG9mIHRoZSBsaWNlbnNlIG1heSBiZSBmb3VuZCBhdA0KPiA+ICsqICBodHRw Oi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvYnNkLWxpY2Vuc2UucGhwDQo+ID4gKyoNCj4gPiAr KiAgVEhFIFBST0dSQU0gSVMgRElTVFJJQlVURUQgVU5ERVIgVEhFIEJTRCBMSUNFTlNFIE9OIEFO ICJBUyBJUyINCj4gPiArQkFTSVMsDQo+ID4gKyogIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBS RVNFTlRBVElPTlMgT0YgQU5ZIEtJTkQsIEVJVEhFUg0KPiBFWFBSRVNTIE9SIElNUExJRUQuDQo+ ID4gKyoNCj4gPiArKiovDQo+ID4gKw0KPiA+ICsjaWZuZGVmIF9fU0dJX0FDUElfSEVBREVSX18N Cj4gPiArI2RlZmluZSBfX1NHSV9BQ1BJX0hFQURFUl9fDQo+ID4gKw0KPiA+ICsvLw0KPiA+ICsv LyBBQ1BJIHRhYmxlIGluZm9ybWF0aW9uIHVzZWQgdG8gaW5pdGlhbGl6ZSB0YWJsZXMuDQo+ID4g Ky8vDQo+ID4gKyNkZWZpbmUgRUZJX0FDUElfQVJNX09FTV9JRCAgICAgICAgICAgJ0EnLCdSJywn TScsJ0wnLCdUJywnRCcgICAvLyBPRU1JRCA2IGJ5dGVzDQo+IGxvbmcNCj4gPiArI2RlZmluZSBF RklfQUNQSV9BUk1fT0VNX1RBQkxFX0lEDQo+IFNJR05BVFVSRV82NCgnRScsJ04nLCdUJywnUCcs J0wnLCdBJywnVCcsJ0YnKSAvLyBPRU0gdGFibGUgaWQgOCBieXRlcyBsb25nDQo+ID4gKyNkZWZp bmUgRUZJX0FDUElfQVJNX09FTV9SRVZJU0lPTiAgICAgMHgyMDE0MDcyNw0KPiA+ICsjZGVmaW5l IEVGSV9BQ1BJX0FSTV9DUkVBVE9SX0lEICAgICAgIFNJR05BVFVSRV8zMignQScsJ1InLCdNJywn ICcpDQo+ID4gKyNkZWZpbmUgRUZJX0FDUElfQVJNX0NSRUFUT1JfUkVWSVNJT04gMHgwMDAwMDA5 OQ0KPiA+ICsNCj4gPiArLy8gQSBtYWNybyB0byBpbml0aWFsaXNlIHRoZSBjb21tb24gaGVhZGVy IHBhcnQgb2YgRUZJIEFDUEkgdGFibGVzIGFzDQo+ID4gK2RlZmluZWQgYnkgLy8gRUZJX0FDUElf REVTQ1JJUFRJT05fSEVBREVSIHN0cnVjdHVyZS4NCj4gPiArI2RlZmluZSBBUk1fQUNQSV9IRUFE RVIoU2lnbmF0dXJlLCBUeXBlLCBSZXZpc2lvbikgeyAgICAgICAgICAgICBcDQo+ID4gKyAgICBT aWduYXR1cmUsICAgICAgICAgICAgICAgICAgICAgIC8qIFVJTlQzMiAgU2lnbmF0dXJlICovICAg ICAgIFwNCj4gPiArICAgIHNpemVvZiAoVHlwZSksICAgICAgICAgICAgICAgICAgLyogVUlOVDMy ICBMZW5ndGggKi8gICAgICAgICAgXA0KPiA+ICsgICAgUmV2aXNpb24sICAgICAgICAgICAgICAg ICAgICAgICAvKiBVSU5UOCAgIFJldmlzaW9uICovICAgICAgICBcDQo+ID4gKyAgICAwLCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFVJTlQ4ICAgQ2hlY2tzdW0gKi8gICAgICAgIFwN Cj4gPiArICAgIHsgRUZJX0FDUElfQVJNX09FTV9JRCB9LCAgICAgICAgLyogVUlOVDggICBPZW1J ZFs2XSAqLyAgICAgICAgXA0KPiA+ICsgICAgRUZJX0FDUElfQVJNX09FTV9UQUJMRV9JRCwgICAg ICAvKiBVSU5UNjQgIE9lbVRhYmxlSWQgKi8gICAgICBcDQo+ID4gKyAgICBFRklfQUNQSV9BUk1f T0VNX1JFVklTSU9OLCAgICAgIC8qIFVJTlQzMiAgT2VtUmV2aXNpb24gKi8gICAgIFwNCj4gPiAr ICAgIEVGSV9BQ1BJX0FSTV9DUkVBVE9SX0lELCAgICAgICAgLyogVUlOVDMyICBDcmVhdG9ySWQg Ki8gICAgICAgXA0KPiA+ICsgICAgRUZJX0FDUElfQVJNX0NSRUFUT1JfUkVWSVNJT04gICAvKiBV SU5UMzIgIENyZWF0b3JSZXZpc2lvbiAqLyBcDQo+ID4gKyAgfQ0KPiA+ICsNCj4gPiArI2VuZGlm IC8qIF9fU0dJX0FDUElfSEVBREVSX18gKi8NCj4gPiAtLQ0KPiA+IDIuNy40DQo+ID4NCklNUE9S VEFOVCBOT1RJQ0U6IFRoZSBjb250ZW50cyBvZiB0aGlzIGVtYWlsIGFuZCBhbnkgYXR0YWNobWVu dHMgYXJlIGNvbmZpZGVudGlhbCBhbmQgbWF5IGFsc28gYmUgcHJpdmlsZWdlZC4gSWYgeW91IGFy ZSBub3QgdGhlIGludGVuZGVkIHJlY2lwaWVudCwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyIGlt bWVkaWF0ZWx5IGFuZCBkbyBub3QgZGlzY2xvc2UgdGhlIGNvbnRlbnRzIHRvIGFueSBvdGhlciBw ZXJzb24sIHVzZSBpdCBmb3IgYW55IHB1cnBvc2UsIG9yIHN0b3JlIG9yIGNvcHkgdGhlIGluZm9y bWF0aW9uIGluIGFueSBtZWRpdW0uIFRoYW5rIHlvdS4NCg==