From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (EUR05-AM6-obe.outbound.protection.outlook.com [40.107.22.61]) by mx.groups.io with SMTP id smtpd.web11.2423.1594069140393607431 for ; Mon, 06 Jul 2020 13:59:01 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@mellanox.com header.s=selector1 header.b=bwB7wbWw; spf=pass (domain: mellanox.com, ip: 40.107.22.61, mailfrom: lsun@mellanox.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a3BescZ1lkeM2PQswcp+tUFlsWl/tB6jNHhE7483OzAhaAkCK5wtWiQlHy4kVXwEW9Y5EdSSevCco3HckiMu5cLZxq9uDaKdP76Rdi58/m0lzPDdGZzZ3J8PjXkRNLKKGMyoF08Eli+b9oYHnnV89HdxQ4dkHSEIyeQtXSJrYAmWWwivoIrXIjNBKokH2kpVqkeJnfeDG3bMX+XXBGM+JG/s/tO9f+zGIQpvdcEc1SGFJqsQvZXJtjfKuAMptB+aVtkVfNzty1+SkjXGCkJ02+berQv4BA/c6nZ3JOSMs2HlMozE81FsIB6H7UOSC1BVIbC0/cVjvKocQZuKJ44Qsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J6gGyCpBaJNY/OG7hNL6Kd9WUSktpTwBCk1blD52rDM=; b=aDqF4SR3pr6P1DbV82oUsM7amTKOD8KbX/air/BwjwpftJ8FOnp58WA8j84IhehzRHxRfu9kWW8h6EWZ2U7n5sAs0Qg76l84OXSW9A2ToqIz21awjeapPNHRz8xvo3CmwCFig4RyL9o4tUqv6BqluOQPAmHTD36SsWxSMn/PgK/1WhasNPFRVMoqxLpFsDVXo627gGAHabvZ7hDgN7eyBeByY/xG56ODyPlIDgJFrVuUSm5KP4htrDyjuFiyNXpzPPLFXBWMHVmcIUpb2wUj3FIHCbCpPgLT+DN6vboSNZ+tUWw/oAyuFpvyilM+LWRWTOuSZeA5urOzsANVPdivLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J6gGyCpBaJNY/OG7hNL6Kd9WUSktpTwBCk1blD52rDM=; b=bwB7wbWwTtOs7+jv2QImOkatVBxuT2IfHNpvZhyTap1JwQm7NpCWNOBxefKcyEyYjEmNO9/9+wPI0/LuU4u/DbDcJ9rwa4TOHTfLGRum/nVCZpsomWN6b2KwW+QRiyHg8UmtEzcfCKkXpPiXLdvtblxoflny896jF7Fo3TmQiRM= Received: from DB6PR05MB3223.eurprd05.prod.outlook.com (2603:10a6:6:20::21) by DB7PR05MB4842.eurprd05.prod.outlook.com (2603:10a6:10:1d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.27; Mon, 6 Jul 2020 20:58:57 +0000 Received: from DB6PR05MB3223.eurprd05.prod.outlook.com ([fe80::3878:38d1:7487:f23a]) by DB6PR05MB3223.eurprd05.prod.outlook.com ([fe80::3878:38d1:7487:f23a%3]) with mapi id 15.20.3153.029; Mon, 6 Jul 2020 20:58:57 +0000 From: "Liming Sun" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "Jiang, Guomin" , "Xu, Wei6" , "Gao, Liming" CC: Sean Brogan Subject: Re: [edk2-devel] [PATCH] FmpDevicePkg: Enhance capsule verification with secure boot keys Thread-Topic: [edk2-devel] [PATCH] FmpDevicePkg: Enhance capsule verification with secure boot keys Thread-Index: AQHWRmHfzsoxRpvKo0Kc2JNYV1wdaaju+xgAgAGNuZCAAEu5AIAAVYtAgADN/ICAAOY3wIAAMvoAgAgIk7A= Date: Mon, 6 Jul 2020 20:58:56 +0000 Message-ID: References: <5b42e8e089fb961766c639b733284413ccf03272.1592587621.git.lsun@mellanox.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com; x-originating-ip: [173.76.169.242] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 96593132-ca09-4774-91c3-08d821ef6689 x-ms-traffictypediagnostic: DB7PR05MB4842: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5236; x-forefront-prvs: 04569283F9 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: C6rGlIL+G4PTp0pHMISCJTNO1a/PcvRD2XN/wRdxnkY7sB5vFFZIkMAOwzB7dArEK9kBL4z6M4U2kdX8oPKDAAjAFBnideTO5eSpsPXCdj7p9c50vf2pS1UAAtAdLiAFLauEVvVkIxz5QTcVC6qvoW3Ya5F5hQ+PWQMQIy/SMcF1VuprBOc9qiZcuPLuPZUBT1logB0cLLMvOYyYL8VuWAvGitLBm0zo+Sy2h5iT46NzkLhbiTjqkfNlBEuUYUxPZp77r0rPBmNuYF5GdBOKCkxp8YRoZ3U2UqQdJXJ03JtiTw55eoioJLpxvmEjY7uvc1GILF4aSIiVOt+XD9IZFTVcdxA+dVrb6l79zrsEP/IAi9ix2qWVv++97+L7n+rW+6rSOqJvpPhHQP1U8Y8RIA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB6PR05MB3223.eurprd05.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(396003)(376002)(366004)(136003)(346002)(39860400002)(8936002)(8676002)(19627235002)(110136005)(316002)(45080400002)(478600001)(86362001)(71200400001)(186003)(52536014)(26005)(6506007)(9686003)(2906002)(53546011)(5660300002)(7696005)(33656002)(76116006)(66946007)(4326008)(30864003)(83380400001)(66476007)(55016002)(66446008)(64756008)(66556008)(15650500001)(966005)(579004);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata: jW89etvkAZXDT0mFZpONH+wleQHGDKjBbCnH4gW1KMq7SL1GojWdq7jZZaYKbW4SHXJfndLVKXlmW8Kdh5HcvL7dWbZmHqnk8HGLOjnfGq1M6uZiwEBL9yH2w11b6hrLtmmgrgBTvk30WXzLeDnNTsUjR156SSA5ptEQGanI91NKQwfFUZ4fLc0F/qNct8p+Kvrrq6t6qNEa2UzTh3NvMKl/dJyDqL5F8zYEts/DHmpgfgCWWO50kli/cJkzTzbKkPS9CyeQ2i3X0MxeOLTCbdX85YVR78umEV9lDEScR3n38a715HvHAu8xWulqdOX9spyZMp5MavgAirL5iyzvhuNxbVOMxGcmDPxBHZuI67/eirOhNREsHaKkgwsz8RCZ0UIcv7uZKA0Jn0H0NtHEgHJJdqhg7XlpDO2uqZclVBleD5/d9EwJN74VxmR21XWsXIa8hlkwYZwTKy4bUeiIGfsvMpsEgUvuSVl5nOs63u/+KnKJYvcEhYO+tDsy1bNq x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB6PR05MB3223.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 96593132-ca09-4774-91c3-08d821ef6689 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Jul 2020 20:58:56.9599 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 00S/3mXl9jvTHEqGxRaEyrFoiWTiLcbojlTagNqUfw8JIviInrJzPGd4ZX1ZvTnecWojkg4FRH/FAmwVvW4qKA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR05MB4842 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIE1pY2hhZWwuIEJlbG93IGlzIHRoZSB1c2UgY2FzZToNCg0KLSBEZXZpY2UgdmVuZG9y IHByb3ZpZGVzIGRldmljZXMgd2l0aCBVRUZJIHByZWluc3RhbGxlZDsNCi0gQ3VzdG9tZXIgZ2V0 cyB0aGUgZGV2aWNlIGluIG5vbi1zZWN1cmUtYm9vdCBtb2RlIGJ5IGRlZmF1bHQsIGFuZCB3b3Vs ZCBsaWtlIHRvIGVucm9sbCB0aGUgc2VjdXJlIGJvb3Qga2V5cyB0aGVtc2VsdmVzIGluIHNvbWUg YXV0b21hdGljIHdheSAoc3VjaCBhcyB1c2luZyBjYXBzdWxlKS4gDQoNClBjZEZtcERldmljZVBr Y3M3Q2VydEJ1ZmZlclhkciBpcyBub3QgdXNlZCBmb3IgdHdvIHJlYXNvbnMgZm9yIHRoaXMgdXNl IGNhc2U6DQoxLiBTaW1wbGljaXR5LiBTbyB2ZW5kb3IgZG9lc24ndCBuZWVkIHRvIGJlIGludm9s dmVkIGluIHRoZSBrZXkgbWFuYWdlbWVudCwgYW5kIGN1c3RvbWVyIGNvdWxkIGNyZWF0ZSBhbmQg c2lnbiB0aGUgY2Fwc3VsZSB0aGVtc2VsdmVzLg0KMi4gU2VjdXJlIHJlYXNvbnMuIE9uY2UgY3Vz dG9tZXIgZnVsbHkgb3duIHRoZSBkZXZpY2UgYW5kIHB1dCBpdCBpbnRvIHNlY3VyZS1ib290IG1v ZGUsIGV2ZW4gdGhlIGNhcHN1bGUgZnJvbSB0aGUgZGV2aWNlIHZlbmRvciBjb3VsZG4ndCBiZSBh cHBsaWVkIHdpdGhvdXQgYmVpbmcgc2lnbmVkIGJ5IGN1c3RvbWVyLiAoVGhlIGhhcmRjb2RlZCBQ Y2RGbXBEZXZpY2VQa2NzN0NlcnRCdWZmZXJYZHIgY291bGRuJ3QgYWNoaWV2ZSB0aGlzIGdvYWwp Lg0KDQpUaGFua3MsDQpMaW1pbmcNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBG cm9tOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IFNl bnQ6IFdlZG5lc2RheSwgSnVseSAxLCAyMDIwIDE6NDMgUE0NCj4gVG86IGRldmVsQGVkazIuZ3Jv dXBzLmlvOyBMaW1pbmcgU3VuIDxsc3VuQG1lbGxhbm94LmNvbT47IEppYW5nLCBHdW9taW4gPGd1 b21pbi5qaWFuZ0BpbnRlbC5jb20+OyBYdSwgV2VpNg0KPiA8d2VpNi54dUBpbnRlbC5jb20+OyBH YW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWlj aGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBTZWFuIEJyb2dhbiA8c2Vhbi5icm9nYW5A bWljcm9zb2Z0LmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIEZtcERl dmljZVBrZzogRW5oYW5jZSBjYXBzdWxlIHZlcmlmaWNhdGlvbiB3aXRoIHNlY3VyZSBib290IGtl eXMNCj4gDQo+IExpbWluZyBTdW4sDQo+IA0KPiBDYW4geW91IGV4cGxhaW4gd2h5IHlvdSBjYW5u b3QgdXNlIFBjZEZtcERldmljZVBrY3M3Q2VydEJ1ZmZlclhkcg0KPiBmb3IgeW91ciB1c2UgY2Fz ZT8gIEkgd2FudCB0byB1bmRlcnN0YW5kIHRoZSB1c2UgY2FzZSB0byBzZWUgaWYNCj4gdGhhdCBm ZWF0dXJlIGNhbiBiZSBhcHBsaWVkIG9yIGlmIGEgbWlub3IgZW5oYW5jZW1lbnQgdG8gdGhpcw0K PiBmZWF0dXJlIGNhbiB3b3JrLg0KPiANCj4gVXNpbmcgdGhlIFVFRkkgU2VjdXJlIEJvb3QgREIg Zm9yIGFueXRoaW5nIG90aGVyIHRoYW4gYXV0aGVudGljYXRpb24NCj4gb2YgVUVGSSBib290IGxv YWRlcnMgaXMgbm90IHJlY29tbWVuZGVkLg0KPiANCj4gVGhhbmtzLA0KPiANCj4gTWlrZQ0KPiAN Cj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IGRldmVsQGVkazIuZ3Jv dXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24NCj4gPiBCZWhhbGYgT2YgTGltaW5nIFN1 bg0KPiA+IFNlbnQ6IFdlZG5lc2RheSwgSnVseSAxLCAyMDIwIDk6MjcgQU0NCj4gPiBUbzogSmlh bmcsIEd1b21pbiA8Z3VvbWluLmppYW5nQGludGVsLmNvbT47DQo+ID4gZGV2ZWxAZWRrMi5ncm91 cHMuaW87IFh1LCBXZWk2IDx3ZWk2Lnh1QGludGVsLmNvbT47IEdhbywNCj4gPiBMaW1pbmcgPGxp bWluZy5nYW9AaW50ZWwuY29tPjsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPiA8bWljaGFlbC5kLmtp bm5leUBpbnRlbC5jb20+DQo+ID4gQ2M6IFNlYW4gQnJvZ2FuIDxzZWFuLmJyb2dhbkBtaWNyb3Nv ZnQuY29tPg0KPiA+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBGbXBEZXZpY2VQ a2c6IEVuaGFuY2UNCj4gPiBjYXBzdWxlIHZlcmlmaWNhdGlvbiB3aXRoIHNlY3VyZSBib290IGtl eXMNCj4gPg0KPiA+ID4+IEJ1dCBpZiB5b3VyIGN1c3RvbWVyIGluZGVlZCB3YW50IGl0LCB5b3Ug Y2FuIGFkZCBpdA0KPiA+IHRvIHlvdXIgY3VzdG9taXphdGlvbiBjb2RlLg0KPiA+IFRoYW5rcy4g WWVzLCB0aGlzIGlzIGEgYmVoYXZpb3IgY3VzdG9tZXIgZXhwZWN0cy4gVGhpcw0KPiA+IGNoYW5n ZSBqdXN0IHRyaWVzIHRvIHByb3ZpZGUgYSBoYW5keSB3YXkgdG8gZW5yb2xsDQo+ID4gaW5pdGlh bCBrZXlzLg0KPiA+IFNvIHRoZSBpbml0aWFsIGtleXMgY291bGQgYmUgY2FycmllZCBpbiB0aGUg Y2Fwc3VsZQ0KPiA+IGl0c2VsZi4NCj4gPiBJdCBhbHNvIGhhcyAiUGNkRm1wRGV2aWNlQWxsb3dT ZWN1cmVCb290S2V5cyIgZGlzYWJsZWQNCj4gPiBieSBkZWZhdWx0LCBzbyBpdCBiZWhhdmVzIHRo ZSBzYW1lIGFzIGJlZm9yZS4NCj4gPg0KPiA+IFdlJ2xsIHRyeSB0byB1c2UgY3VzdG9taXphdGlv biBjb2RlIGluc3RlYWQgYXMNCj4gPiBzdWdnZXN0ZWQuDQo+ID4NCj4gPiBUaGFua3MsDQo+ID4g TGltaW5nDQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9t OiBKaWFuZywgR3VvbWluIDxndW9taW4uamlhbmdAaW50ZWwuY29tPg0KPiA+ID4gU2VudDogVHVl c2RheSwgSnVuZSAzMCwgMjAyMCA4OjU2IFBNDQo+ID4gPiBUbzogTGltaW5nIFN1biA8bHN1bkBt ZWxsYW5veC5jb20+Ow0KPiA+IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBYdSwgV2VpNiA8d2VpNi54 dUBpbnRlbC5jb20+OyBHYW8sDQo+ID4gTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47DQo+ ID4gPiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4g PiBDYzogU2VhbiBCcm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jvc29mdC5jb20+DQo+ID4gPiBTdWJq ZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSF0gRm1wRGV2aWNlUGtnOg0KPiA+IEVuaGFuY2Ug Y2Fwc3VsZSB2ZXJpZmljYXRpb24gd2l0aCBzZWN1cmUgYm9vdCBrZXlzDQo+ID4gPg0KPiA+ID4g SSB3YW50IHRvIGFzayB5b3VyIG9uZSBxdWVzdGlvbjogYXJlIHlvdSBzdXJlIHRoYXQNCj4gPiBl dmVyeSBtb3RoZXIgYm9hcmQgd2hpY2ggZGVsaXZlciB0byBjdXN0b21lciB3aWxsIGVuYWJsZQ0K PiA+IHRoZSBzZWN1cmUgYm9vdCBtb2RlPw0KPiA+ID4NCj4gPiA+IEkganVzdCBlbXBoYXNpemUg dGhhdCBJIHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlDQo+ID4gZGV2aWNlIGZpcm13YXJlIGNv bWUgZnJvbSB0aGUgZGV2aWNlIHZlbmRvci4NCj4gPiA+DQo+ID4gPiBUaGFua3MgZm9yIHlvdXIg ZWZmb3J0LCB0aGUgcGF0Y2ggaXMgZ29vZCwgSSBqdXN0DQo+ID4gdGhpbmsgaXQgaXMgbm90IHN1 aXRhYmxlIGZvciBjb21tb24gc29sdXRpb24uDQo+ID4gPg0KPiA+ID4gQnV0IGlmIHlvdXIgY3Vz dG9tZXIgaW5kZWVkIHdhbnQgaXQsIHlvdSBjYW4gYWRkIGl0IHRvDQo+ID4geW91ciBjdXN0b21p emF0aW9uIGNvZGUuDQo+ID4gPg0KPiA+ID4gVGhhbmtzDQo+ID4gPiBHdW9taW4NCj4gPiA+DQo+ ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+IEZyb206IExpbWluZyBT dW4gPGxzdW5AbWVsbGFub3guY29tPg0KPiA+ID4gPiBTZW50OiBUdWVzZGF5LCBKdW5lIDMwLCAy MDIwIDg6NDcgUE0NCj4gPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBKaWFuZywgR3Vv bWluDQo+ID4gPGd1b21pbi5qaWFuZ0BpbnRlbC5jb20+OyBYdSwNCj4gPiA+ID4gV2VpNiA8d2Vp Ni54dUBpbnRlbC5jb20+OyBHYW8sIExpbWluZw0KPiA+IDxsaW1pbmcuZ2FvQGludGVsLmNvbT47 IEtpbm5leSwNCj4gPiA+ID4gTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4N Cj4gPiA+ID4gQ2M6IFNlYW4gQnJvZ2FuIDxzZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPg0KPiA+ ID4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSF0gRm1wRGV2aWNlUGtnOg0KPiA+ IEVuaGFuY2UgY2Fwc3VsZQ0KPiA+ID4gPiB2ZXJpZmljYXRpb24gd2l0aCBzZWN1cmUgYm9vdCBr ZXlzDQo+ID4gPiA+DQo+ID4gPiA+IFRoYW5rcyBHdW9taW4uDQo+ID4gPiA+DQo+ID4gPiA+IEkg c3RpbGwgaGF2ZSBvbmUgcXVlc3Rpb24uIExldCdzIGFzc3VtZSB3ZSdyZSB0aGUNCj4gPiBkZXZp Y2UgdmVuZG9yIGFuZCB3ZSBsZXQNCj4gPiA+ID4gY3VzdG9tZXIgdG8gZW5yb2xsIHRoZWlyIGtl eXMuIE9uY2UgdGhlIGtleXMgYXJlDQo+ID4gZW5yb2xsZWQsIHRoZSBkZXZpY2Ugd2lsbCBiZQ0K PiA+ID4gPiBpbiBzZWN1cmUgYm9vdCBtb2RlLiBBcmUgeW91IHNheWluZyB0aGF0IHRoZSBlbmQN Cj4gPiB1c2VyIGNvdWxkICJoYXZlIHRoZSBhYmlsaXR5DQo+ID4gPiA+IHRvIGVucm9sbCB0aGVp ciBEQiB3aXRob3V0IHRvbyBtYW55IGVmZm9ydCIgZXZlbg0KPiA+IGFmdGVyIHRoZSBzZWN1cmUg Ym9vdCBoYXMNCj4gPiA+ID4gYmVlbiBlbmFibGVkIGFscmVhZHk/DQo+ID4gPiA+DQo+ID4gPiA+ IFBsZWFzZSBjb3JyZWN0IG1lIGlmIEkgbWlzdW5kZXJzdG9vZCBpdC4NCj4gPiA+ID4NCj4gPiA+ ID4gLSBMaW1pbmcNCj4gPiA+ID4NCj4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiA+ID4gPiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vw cy5pbz4NCj4gPiBPbiBCZWhhbGYgT2YNCj4gPiA+ID4gR3VvbWluDQo+ID4gPiA+ID4gSmlhbmcg dmlhIGdyb3Vwcy5pbw0KPiA+ID4gPiA+IFNlbnQ6IFR1ZXNkYXksIEp1bmUgMzAsIDIwMjAgMzoz MyBBTQ0KPiA+ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTGltaW5nIFN1bg0KPiA+ IDxsc3VuQG1lbGxhbm94LmNvbT47IFh1LCBXZWk2DQo+ID4gPiA+ID4gPHdlaTYueHVAaW50ZWwu Y29tPjsgR2FvLCBMaW1pbmcNCj4gPiA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBLaW5uZXksDQo+ ID4gPiA+ID4gTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+ID4g PiBDYzogU2VhbiBCcm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jvc29mdC5jb20+DQo+ID4gPiA+ID4g U3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIEZtcERldmljZVBrZzoNCj4gPiBFbmhh bmNlIGNhcHN1bGUNCj4gPiA+ID4gPiB2ZXJpZmljYXRpb24gd2l0aCBzZWN1cmUgYm9vdCBrZXlz DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBMaW1pbmcsDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBUaGUg ZW5kIHVzZXIgaGF2ZSB0aGUgYWJpbGl0eSB0byBlbnJvbGwgdGhlaXIgREINCj4gPiB3aXRob3V0 IHRvbyBtYW55IGVmZm9ydC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEFuZCBJIHRoaW5rIHNvbWUg ZW5kIHVzZXIgYWxzbyBoYXZlIHRoZSBhYmlsaXR5IHRvDQo+ID4gZ2V0IGluc2VjdXJlIGZpcm13 YXJlDQo+ID4gPiA+IHdoaWNoIG5vdCBmcm9tIHRoZSBkZXZpY2UgdmVuZG9yLg0KPiA+ID4gPiA+ DQo+ID4gPiA+ID4gSSBzdWdnZXN0IHRoYXQgdGVsbCB0aGUgZGV2aWNlIHZlbmRvciB0aGF0IGl0 IGlzDQo+ID4gY3JpdGljYWwgdGhhdCBzZXQgdGhlDQo+ID4gPiA+IFBjZEZtcERldmljZVBrY3M3 Q2VydEJ1ZmZlclhkciByYXRoZXIgdGhhbiBkZWNyZWFzZQ0KPiA+IHRoZSBzZWN1cml0eS4NCj4g PiA+ID4gPg0KPiA+ID4gPiA+IEJlc3QgUmVnYXJkcw0KPiA+ID4gPiA+IEd1b21pbg0KPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiA+ID4g RnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9u IEJlaGFsZiBPZg0KPiA+ID4gPiA+ID4gTGltaW5nIFN1bg0KPiA+ID4gPiA+ID4gU2VudDogVHVl c2RheSwgSnVuZSAzMCwgMjAyMCAxMTozMyBBTQ0KPiA+ID4gPiA+ID4gVG86IEppYW5nLCBHdW9t aW4gPGd1b21pbi5qaWFuZ0BpbnRlbC5jb20+Ow0KPiA+IGRldmVsQGVkazIuZ3JvdXBzLmlvOw0K PiA+ID4gPiA+ID4gWHUsDQo+ID4gPiA+ID4gPiBXZWk2IDx3ZWk2Lnh1QGludGVsLmNvbT47IEdh bywgTGltaW5nDQo+ID4gPGxpbWluZy5nYW9AaW50ZWwuY29tPjsNCj4gPiA+ID4gPiA+IEtpbm5l eSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+ID4gPiA+IENj OiBTZWFuIEJyb2dhbiA8c2Vhbi5icm9nYW5AbWljcm9zb2Z0LmNvbT4NCj4gPiA+ID4gPiA+IFN1 YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBGbXBEZXZpY2VQa2c6DQo+ID4gRW5oYW5j ZSBjYXBzdWxlDQo+ID4gPiA+ID4gPiB2ZXJpZmljYXRpb24gd2l0aCBzZWN1cmUgYm9vdCBrZXlz DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gVGhhbmtzIEd1b21pbiBmb3IgdGhlIGNvbW1lbnRz IQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IEJlbG93IGlzIHRoZSBtYWluIHNjZW5hcmlvIGZv ciB0aGUgcHJvcG9zZWQNCj4gPiBjaGFuZ2U6DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gLSBE ZXZpY2UgTWFudWZhY3R1cmVyIHByb3ZpZGVzIHRoZSBkZXZpY2VzIHdpdGgNCj4gPiBVRUZJIHBy ZWluc3RhbGxlZCBpbg0KPiA+ID4gPiA+ID4gbm9uLSBzZWN1cmUgc3RhdGUgYW5kIG5vIGhhcmQt Y29kZWQga2V5cyAoDQo+ID4gPiA+IFBjZEZtcERldmljZVBrY3M3Q2VydEJ1ZmZlclhkcikuDQo+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gLSBDdXN0b21lciAobm90IEVuZC1Vc2VyKSBlbnJvbGxz IHRoZWlyIG93biBrZXlzDQo+ID4gaW4gdHJ1c3RlZA0KPiA+ID4gPiA+ID4gZW52aXJvbm1lbnQg YmVmb3JlIGRlbGl2ZXJpbmcgdG8gRW5kIFVzZXIuDQo+ID4gPiA+ID4gPiBUaGlzIGNhcHN1bGUg YXBwcm9hY2ggY2FuIGJlIHVzZWQgZm9yIGxhcmdlDQo+ID4gZGVwbG95bWVudCB3aXRob3V0DQo+ ID4gPiA+ID4gPiBpbnZvbHZpbmcgYW55IHByaXZhdGUga2V5cy4NCj4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiBZZXMsIEkgZG8gYWdyZWUgdGhhdCBvbmNlIGl0J3MgZGVsaXZlcmVkIHRvIEVuZA0K PiA+IFVzZXIgaXQgd29uJ3QgYmUNCj4gPiA+ID4gPiA+IGNvbnNpZGVyZWQgc2VjdXJlLg0KPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFRoYW5rcywNCj4gPiA+ID4gPiA+IExpbWluZw0KPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4g PiA+ID4gRnJvbTogSmlhbmcsIEd1b21pbiA8Z3VvbWluLmppYW5nQGludGVsLmNvbT4NCj4gPiA+ ID4gPiA+ID4gU2VudDogU3VuZGF5LCBKdW5lIDI4LCAyMDIwIDExOjE4IFBNDQo+ID4gPiA+ID4g PiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTGltaW5nIFN1bg0KPiA+IDxsc3VuQG1lbGxh bm94LmNvbT47IFh1LCBXZWk2DQo+ID4gPiA+ID4gPiA+IDx3ZWk2Lnh1QGludGVsLmNvbT47IEdh bywgTGltaW5nDQo+ID4gPGxpbWluZy5nYW9AaW50ZWwuY29tPjsgS2lubmV5LA0KPiA+ID4gPiA+ ID4gPiBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4g PiBDYzogU2VhbiBCcm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jvc29mdC5jb20+DQo+ID4gPiA+ID4g PiA+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIXQ0KPiA+IEZtcERldmljZVBrZzog RW5oYW5jZSBjYXBzdWxlDQo+ID4gPiA+ID4gPiA+IHZlcmlmaWNhdGlvbiB3aXRoIHNlY3VyZSBi b290IGtleXMNCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gSSB0aGluayBpdCBoYXZlIHNv bWUgdnVsbmVyYWJpbGl0eSwgdGhlIGNhc2UNCj4gPiBhcyBiZWxvdy4NCj4gPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+ID4gMS4gVW50cnVzdGVkIEVuZCBVc2VyIGVucm9sbCB0aGUgbmV3IERCIGtl eSAtPg0KPiA+IHNpZ24gdGhlIHVudHJ1c3RlZA0KPiA+ID4gPiA+ID4gPiBkZXZpY2UgZmlybXdh cmUgLT4gZmxhc2ggdGhlIHVudHJ1c3RlZCBkZXZpY2UNCj4gPiBmaXJtd2FyZSAtPiB0aGUNCj4g PiA+ID4gPiA+ID4gc3lzdGVtIHdpbGwNCj4gPiA+ID4gPiA+IGJlY29tZSB1bnNhZmUuDQo+ID4g PiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IEkgdGhpbmsgdGhlIGVuZCB1c2VyIGlzIHVudHJ1c3Rl ZCBhbmQgd2UgbmVlZA0KPiA+IHRvIG1ha2Ugc3VyZSBvbmx5DQo+ID4gPiA+ID4gPiA+IGZldyBw ZXJzb24NCj4gPiA+ID4gPiA+IGNhbiBoYXZlIHRoZSBwcml2aWxlZ2UuDQo+ID4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiA+IEJlc3QgUmVnYXJkcw0KPiA+ID4gPiA+ID4gPiBHdW9taW4NCj4gPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ ID4gPiA+ID4gPiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gPGRldmVsQGVkazIu Z3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4gPiA+ID4gPiA+ID4gPiBMaW1pbmcgU3VuDQo+ID4g PiA+ID4gPiA+ID4gU2VudDogU2F0dXJkYXksIEp1bmUgMjAsIDIwMjAgMTo0OCBBTQ0KPiA+ID4g PiA+ID4gPiA+IFRvOiBYdSwgV2VpNiA8d2VpNi54dUBpbnRlbC5jb20+OyBHYW8sDQo+ID4gTGlt aW5nDQo+ID4gPiA+ID4gPiA+ID4gPGxpbWluZy5nYW9AaW50ZWwuY29tPjsgS2lubmV5LCBNaWNo YWVsIEQNCj4gPiA+ID4gPiA+ID4gPiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4g PiA+ID4gPiA+ID4gQ2M6IExpbWluZyBTdW4gPGxzdW5AbWVsbGFub3guY29tPjsNCj4gPiBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsgU2Vhbg0KPiA+ID4gPiA+ID4gPiA+IEJyb2dhbiA8c2Vhbi5icm9n YW5AbWljcm9zb2Z0LmNvbT4NCj4gPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBbZWRrMi1kZXZlbF0g W1BBVENIXSBGbXBEZXZpY2VQa2c6DQo+ID4gRW5oYW5jZSBjYXBzdWxlDQo+ID4gPiA+ID4gPiA+ ID4gdmVyaWZpY2F0aW9uIHdpdGggc2VjdXJlIGJvb3Qga2V5cw0KPiA+ID4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiA+ID4gVGhpcyBjb21taXQgZW5oYW5jZXMgdGhlIEZtcERldmljZVBrZw0KPiA+ IHBhY2thZ2UgdG8gb3B0aW9uYWxseQ0KPiA+ID4gPiA+ID4gPiA+IHZlcmlmeSBjYXBzdWxlIHdp dGggdGhlIHNlY3VyZSBib290IGtleXMNCj4gPiB3aGVuDQo+ID4gPiA+ID4gPiA+ID4gUGNkRm1w RGV2aWNlUGtjczdDZXJ0QnVmZmVyWGRyIGlzIG5vdCBzZXQNCj4gPiBhbmQgdGhlIG5ldyBQQ0QN Cj4gPiA+ID4gPiA+ID4gPiB2YXJpYWJsZSBQY2RGbXBEZXZpY2VBbGxvd1NlY3VyZUJvb3RLZXlz IGlzDQo+ID4gY29uZmlndXJlZC4gQmVsb3cgaXMNCj4gPiA+ID4gPiA+ID4gPiB0aGUgY2hlY2sN Cj4gPiA+ID4gPiA+IGxvZ2ljOg0KPiA+ID4gPiA+ID4gPiA+ICAgLSBQYXNzIGlmIHZlcmlmaWVk IHdpdGggUEsga2V5LCBvciBQSyBrZXkNCj4gPiBub3Qgc2V0IHlldDsNCj4gPiA+ID4gPiA+ID4g PiAgIC0gRGVueSBpZiB2ZXJpZmllZCB3aXRoIHRoZSBEQlgga2V5czsNCj4gPiA+ID4gPiA+ID4g PiAgIC0gVmVyaWZpZWQgaXQgYWdhaW5zdCB0aGUgREIga2V5czsNCj4gPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiA+IE9uZSBwdXJwb3NlIGZvciB0aGlzIGNoYW5nZSBpcyB0byBhdXRvLQ0K PiA+IGRlcGxveSB0aGUgVUVGSSBzZWN1cmUNCj4gPiA+ID4gPiA+ID4gPiBib290IGtleXMgd2l0 aCBVRUZJIGNhcHN1bGUuIEluaXRpYWxseSBpdCdzDQo+ID4gZG9uZSBpbiB0cnVzdGVkIGVudmly b25tZW50Lg0KPiA+ID4gPiA+ID4gPiA+IE9uY2Ugc2VjdXJlIGJvb3QgaXMgZW5hYmxlZCwgdGhl IHNhbWUga2V5cw0KPiA+IHdpbGwgYmUgdXNlZCB0bw0KPiA+ID4gPiA+ID4gPiA+IHZlcmlmeSB0 aGUgc2lnbmVkIGNhcHN1bGVzIGFzIHdlbGwgZm9yDQo+ID4gZnVydGhlciB1cGRhdGVzLg0KPiA+ ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogTGltaW5nIFN1bg0K PiA+IDxsc3VuQG1lbGxhbm94LmNvbT4NCj4gPiA+ID4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiA+ ID4gPiAgRm1wRGV2aWNlUGtnL0ZtcERldmljZVBrZy5kZWMgICAgIHwgICA2ICsrKw0KPiA+ID4g PiA+ID4gPiA+ICBGbXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZS5jICAgICAgfCAxMDkNCj4gPiA+ ID4gPiA+ID4gPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQ0KPiA+ID4g PiA+ID4gPiA+ICBGbXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZS5oICAgICAgfCAgIDEgKw0KPiA+ ID4gPiA+ID4gPiA+ICBGbXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZS5pbmYgICAgfCAgIDMgKysN Cj4gPiA+ID4gPiA+ID4gPiAgRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGVMaWIuaW5mIHwgICAx ICsNCj4gPiA+ID4gPiA+ID4gPiAgNSBmaWxlcyBjaGFuZ2VkLCAxMTcgaW5zZXJ0aW9ucygrKSwg Mw0KPiA+IGRlbGV0aW9ucygtKQ0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gZGlm ZiAtLWdpdCBhL0ZtcERldmljZVBrZy9GbXBEZXZpY2VQa2cuZGVjDQo+ID4gPiA+ID4gPiA+ID4g Yi9GbXBEZXZpY2VQa2cvRm1wRGV2aWNlUGtnLmRlYyBpbmRleA0KPiA+IGNhYjYzZjUuLjNhZWI4 OWMgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gLS0tIGEvRm1wRGV2aWNlUGtnL0ZtcERldmljZVBr Zy5kZWMNCj4gPiA+ID4gPiA+ID4gPiArKysgYi9GbXBEZXZpY2VQa2cvRm1wRGV2aWNlUGtnLmRl Yw0KPiA+ID4gPiA+ID4gPiA+IEBAIC0xMjYsNiArMTI2LDEyIEBADQo+ID4gPiA+ID4gPiA+ID4g ICAgIyBAUHJvbXB0IEZpcm13YXJlIERldmljZSBJbWFnZSBUeXBlIElEDQo+ID4gPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiBnRm1wRGV2aWNl UGtnVG9rZW5TcGFjZUd1aWQuUGNkRm1wRGV2aWNlSW1hZ2VUeXBlSWRHdWlkfA0KPiA+IHswfXxW T0lEDQo+ID4gPiA+ID4gPiA+ID4gKnwweDQwMDAwMDEwDQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+ID4gPiArICAjIyBUaGlzIG9wdGlvbiBpcyB1c2VkIHRvIHZlcmlmeSB0aGUNCj4gPiBj YXBzdWxlIHVzaW5nIHNlY3VyZQ0KPiA+ID4gPiA+ID4gPiA+ICsgYm9vdCBrZXlzIGlmIHRoZSAg Iw0KPiA+IFBjZEZtcERldmljZVBrY3M3Q2VydEJ1ZmZlclhkciBpcyBub3QNCj4gPiA+ID4gY29u ZmlndXJlZC4NCj4gPiA+ID4gPiA+ID4gPiArIEluIHN1Y2ggY2FzZSwgdGhlIGNoZWNrICAjIHdp bGwgcGFzcyBpZg0KPiA+IHNlY3VyZSBib290IGhhc24ndA0KPiA+ID4gPiA+ID4gPiA+ICsgYmVl biBlbmFibGVkDQo+ID4gPiA+ID4gPiB5ZXQuDQo+ID4gPiA+ID4gPiA+ID4gKyAgIyBAQSBmbGFn IHRvIHRlbGwgd2hldGhlciB0byB1c2Ugc2VjdXJlDQo+ID4gYm9vdCBrZXlzIHdoZW4NCj4gPiA+ ID4gPiA+ID4gPiBQY2RGbXBEZXZpY2VQa2NzN0NlcnRCdWZmZXJYZHIgaXMgbm90IHNldC4NCj4g PiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPg0KPiA+ID4gPg0KPiA+IGdGbXBEZXZpY2VQa2dUb2tlblNwYWNlR3VpZC5QY2RGbXBE ZXZpY2VBbGxvd1NlY3VyZUJvb3RLDQo+ID4gZXlzfDB4MHwNCj4gPiA+ID4gPiA+ID4gPiBVSU5U OHwNCj4gPiA+ID4gPiA+ID4gPiArIDB4NDAwMDAwMTINCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4g PiA+ID4gPiA+ID4gIFtQY2RzRml4ZWRBdEJ1aWxkLCBQY2RzUGF0Y2hhYmxlSW5Nb2R1bGUsDQo+ ID4gUGNkc0R5bmFtaWMsDQo+ID4gPiA+ID4gPiBQY2RzRHluYW1pY0V4XQ0KPiA+ID4gPiA+ID4g PiA+ICAgICMjIE9uZSBvciBtb3JlIFBLQ1M3IGNlcnRpZmljYXRlcyB1c2VkIHRvDQo+ID4gdmVy aWZ5IGEgZmlybXdhcmUNCj4gPiA+ID4gPiA+ID4gPiBkZXZpY2UNCj4gPiA+ID4gPiA+IGNhcHN1 bGUNCj4gPiA+ID4gPiA+ID4gPiAgICAjICB1cGRhdGUgaW1hZ2UuICBFbmNvZGVkIHVzaW5nIHRo ZQ0KPiA+IFZhcmlhYmxlLUxlbmd0aCBPcGFxdWUNCj4gPiA+ID4gPiA+ID4gPiBEYXRhIGZvcm1h dCBvZiBSRkMgZGlmZiAtLWdpdA0KPiA+IGEvRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGUuYw0K PiA+ID4gPiA+ID4gPiA+IGIvRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGUuYyBpbmRleA0KPiA+ IDU4ODQxNzcuLjZmODJhZWUgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gLS0tIGEvRm1wRGV2aWNl UGtnL0ZtcER4ZS9GbXBEeGUuYw0KPiA+ID4gPiA+ID4gPiA+ICsrKyBiL0ZtcERldmljZVBrZy9G bXBEeGUvRm1wRHhlLmMNCj4gPiA+ID4gPiA+ID4gPiBAQCAtNjgyLDYgKzY4MiwxMDIgQEAgR2V0 QWxsSGVhZGVyU2l6ZSAoDQo+ID4gPiA+ID4gPiA+ID4gICAgcmV0dXJuIENhbGN1bGF0ZWRTaXpl Ow0KPiA+ID4gPiA+ID4gPiA+ICB9DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiAr RUZJX1NUQVRVUw0KPiA+ID4gPiA+ID4gPiA+ICtDaGVja1RoZUltYWdlV2l0aFNlY3VyZUJvb3RW YXJpYWJsZSAoDQo+ID4gPiA+ID4gPiA+ID4gKyAgSU4gQ09OU1QgQ0hBUjE2ICAgICpOYW1lLA0K PiA+ID4gPiA+ID4gPiA+ICsgIElOIENPTlNUIEVGSV9HVUlEICAqR3VpZCwNCj4gPiA+ID4gPiA+ ID4gPiArICBJTiBDT05TVCBWT0lEICAgICAgKkltYWdlLA0KPiA+ID4gPiA+ID4gPiA+ICsgIElO IFVJTlROICAgICAgICAgICBJbWFnZVNpemUNCj4gPiA+ID4gPiA+ID4gPiArICApDQo+ID4gPiA+ ID4gPiA+ID4gK3sNCj4gPiA+ID4gPiA+ID4gPiArICBFRklfU1RBVFVTICAgICAgICAgIFN0YXR1 czsNCj4gPiA+ID4gPiA+ID4gPiArICBWT0lEICAgICAgICAgICAgICAgICpEYXRhOw0KPiA+ID4g PiA+ID4gPiA+ICsgIFVJTlROICAgICAgICAgICAgICAgTGVuZ3RoOw0KPiA+ID4gPiA+ID4gPiA+ ICsgIEVGSV9TSUdOQVRVUkVfTElTVCAgKkNlcnRMaXN0Ow0KPiA+ID4gPiA+ID4gPiA+ICsgIEVG SV9TSUdOQVRVUkVfREFUQSAgKkNlcnREYXRhOw0KPiA+ID4gPiA+ID4gPiA+ICsgIFVJTlROICAg ICAgICAgICAgICAgQ2VydENvdW50Ow0KPiA+ID4gPiA+ID4gPiA+ICsgIFVJTlROICAgICAgICAg ICAgICAgSW5kZXg7DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgIFN0YXR1 cyA9IEdldFZhcmlhYmxlMiAoTmFtZSwgR3VpZCwgJkRhdGEsDQo+ID4gJkxlbmd0aCk7ICBpZg0K PiA+ID4gPiA+ID4gPiA+ICsgKEVGSV9FUlJPUg0KPiA+ID4gPiA+ID4gPiA+ICsgKFN0YXR1cykp IHsNCj4gPiA+ID4gPiA+ID4gPiArICAgIHJldHVybiBFRklfTk9UX0ZPVU5EOw0KPiA+ID4gPiA+ ID4gPiA+ICsgIH0NCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4gKyAgQ2VydExp c3QgPSAoRUZJX1NJR05BVFVSRV9MSVNUICopIERhdGE7DQo+ID4gd2hpbGUgKChMZW5ndGggPiAw KQ0KPiA+ID4gPiA+ID4gPiA+ICsgJiYgKExlbmd0aCA+PSBDZXJ0TGlzdC0NCj4gPiA+U2lnbmF0 dXJlTGlzdFNpemUpKSB7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICBpZiAoQ29tcGFyZUd1aWQgKCZD ZXJ0TGlzdC0NCj4gPiA+U2lnbmF0dXJlVHlwZSwgJmdFZmlDZXJ0WDUwOUd1aWQpKQ0KPiA+ID4g PiB7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgIENlcnREYXRhICA9IChFRklfU0lHTkFUVVJFX0RB VEEgKikNCj4gPiAoKFVJTlQ4ICopIENlcnRMaXN0ICsNCj4gPiA+ID4gPiA+ID4gPiArICAgICAg ICBzaXplb2YgKEVGSV9TSUdOQVRVUkVfTElTVCkgKw0KPiA+IENlcnRMaXN0LT5TaWduYXR1cmVI ZWFkZXJTaXplKTsNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgQ2VydENvdW50ID0gKENlcnRMaXN0 LQ0KPiA+ID5TaWduYXR1cmVMaXN0U2l6ZSAtIHNpemVvZg0KPiA+ID4gPiA+ID4gPiA+ICsgKEVG SV9TSUdOQVRVUkVfTElTVCkNCj4gPiA+ID4gPiA+IC0NCj4gPiA+ID4gPiA+ID4gPiArICAgICAg ICBDZXJ0TGlzdC0+U2lnbmF0dXJlSGVhZGVyU2l6ZSkgLw0KPiA+ID4gPiA+ID4gPiA+ICsgQ2Vy dExpc3QtPlNpZ25hdHVyZVNpemU7DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ ICsgICAgICBmb3IgKEluZGV4ID0gMDsgSW5kZXggPCBDZXJ0Q291bnQ7DQo+ID4gSW5kZXgrKykg ew0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgIFN0YXR1cyA9IEF1dGhlbnRpY2F0ZUZtcEltYWdl ICgNCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4gKEVGSV9GSVJNV0FSRV9JTUFHRV9BVVRIRU5USUNB VElPTiAqKUltYWdlLA0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgSW1hZ2VT aXplLA0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgQ2VydERhdGEtPlNpZ25h dHVyZURhdGEsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICBDZXJ0TGlzdC0+ U2lnbmF0dXJlU2l6ZQ0KPiA+IC0gc2l6ZW9mIChFRklfR1VJRCkNCj4gPiA+ID4gPiA+ID4gPiAr ICAgICAgICAgICAgICAgICAgICk7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgaWYgKCFFRklf RVJST1IgKFN0YXR1cykpDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICBnb3RvIERvbmU7DQo+ ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgIENlcnREYXRhID0gKEVG SV9TSUdOQVRVUkVfREFUQSAqKQ0KPiA+ICgoVUlOVDggKikgQ2VydERhdGEgKw0KPiA+ID4gPiA+ ID4gPiA+ICsgQ2VydExpc3QtDQo+ID4gPiA+ID4gPiA+ID4gPlNpZ25hdHVyZVNpemUpOw0KPiA+ ID4gPiA+ID4gPiA+ICsgICAgICB9DQo+ID4gPiA+ID4gPiA+ID4gKyAgICB9DQo+ID4gPiA+ID4g PiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgICAgTGVuZ3RoIC09IENlcnRMaXN0LT5TaWduYXR1 cmVMaXN0U2l6ZTsNCj4gPiA+ID4gPiA+ID4gPiArICAgIENlcnRMaXN0ID0gKEVGSV9TSUdOQVRV UkVfTElTVCAqKQ0KPiA+ICgoVUlOVDggKikgQ2VydExpc3QgKw0KPiA+ID4gPiA+ID4gPiA+ICsg Q2VydExpc3QtPlNpZ25hdHVyZUxpc3RTaXplKTsgIH0NCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4g PiA+ID4gPiA+ID4gK0RvbmU6DQo+ID4gPiA+ID4gPiA+ID4gKyAgRnJlZVBvb2wgKERhdGEpOw0K PiA+ID4gPiA+ID4gPiA+ICsgIHJldHVybiBTdGF0dXM7DQo+ID4gPiA+ID4gPiA+ID4gK30NCj4g PiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4gK0VGSV9TVEFUVVMNCj4gPiA+ID4gPiA+ ID4gPiArQ2hlY2tUaGVJbWFnZVdpdGhTZWN1cmVCb290S2V5cyAoDQo+ID4gPiA+ID4gPiA+ID4g KyAgSU4gIENPTlNUIFZPSUQgICpJbWFnZSwNCj4gPiA+ID4gPiA+ID4gPiArICBJTiAgVUlOVE4g ICAgICAgSW1hZ2VTaXplDQo+ID4gPiA+ID4gPiA+ID4gKyAgKQ0KPiA+ID4gPiA+ID4gPiA+ICt7 DQo+ID4gPiA+ID4gPiA+ID4gKyAgRUZJX1NUQVRVUyAgU3RhdHVzOw0KPiA+ID4gPiA+ID4gPiA+ ICsNCj4gPiA+ID4gPiA+ID4gPiArICAvLyBQSyBjaGVjay4NCj4gPiA+ID4gPiA+ID4gPiArICBT dGF0dXMgPQ0KPiA+IENoZWNrVGhlSW1hZ2VXaXRoU2VjdXJlQm9vdFZhcmlhYmxlKA0KPiA+ID4g PiA+ID4gPiA+ICsgICAgICAgICAgICAgRUZJX1BMQVRGT1JNX0tFWV9OQU1FLA0KPiA+ID4gPiA+ ID4gPiA+ICsgICAgICAgICAgICAgJmdFZmlHbG9iYWxWYXJpYWJsZUd1aWQsDQo+ID4gPiA+ID4g PiA+ID4gKyAgICAgICAgICAgICBJbWFnZSwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAgICAg IEltYWdlU2l6ZQ0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgKTsNCj4gPiA+ID4gPiA+ ID4gPiArICBpZiAoIUVGSV9FUlJPUiAoU3RhdHVzKSB8fCBTdGF0dXMgPT0NCj4gPiBFRklfTk9U X0ZPVU5EKSB7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAvLyBSZXR1cm4gU1VDQ0VTUyBpZiB2ZXJp ZmllZCBieSBQSyBrZXkNCj4gPiBvciBQSyBrZXkgbm90IGNvbmZpZ3VyZWQuDQo+ID4gPiA+ID4g PiA+ID4gKyAgICBERUJVRyAoKERFQlVHX0lORk8sICJGbXBEeGU6IFZlcmlmaWVkDQo+ID4gY2Fw c3VsZSB3aXRoIFBLDQo+ID4gPiA+IGtleS5cbiIpKTsNCj4gPiA+ID4gPiA+ID4gPiArICAgIHJl dHVybiBFRklfU1VDQ0VTUzsNCj4gPiA+ID4gPiA+ID4gPiArICB9DQo+ID4gPiA+ID4gPiA+ID4g Kw0KPiA+ID4gPiA+ID4gPiA+ICsgIC8vIERCWCBjaGVjay4NCj4gPiA+ID4gPiA+ID4gPiArICBT dGF0dXMgPQ0KPiA+IENoZWNrVGhlSW1hZ2VXaXRoU2VjdXJlQm9vdFZhcmlhYmxlKA0KPiA+ID4g PiA+ID4gPiA+ICsgICAgICAgICAgICAgRUZJX0lNQUdFX1NFQ1VSSVRZX0RBVEFCQVNFMSwNCj4g PiA+ID4gPiA+ID4gPiArDQo+ID4gJmdFZmlJbWFnZVNlY3VyaXR5RGF0YWJhc2VHdWlkLA0KPiA+ ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgSW1hZ2UsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAg ICAgICAgICBJbWFnZVNpemUNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAgICAgICk7DQo+ID4g PiA+ID4gPiA+ID4gKyAgaWYgKCFFRklfRVJST1IgKFN0YXR1cykpIHsNCj4gPiA+ID4gPiA+ID4g PiArICAgIERFQlVHICgoREVCVUdfSU5GTywgIkZtcER4ZTogUmVqZWN0DQo+ID4gY2Fwc3VsZSB3 aXRoIERCWA0KPiA+ID4gPiBrZXkuXG4iKSk7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICByZXR1cm4g RUZJX1NFQ1VSSVRZX1ZJT0xBVElPTjsgIH0NCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4g PiA+ID4gKyAgLy8gREIgY2hlY2suDQo+ID4gPiA+ID4gPiA+ID4gKyAgREVCVUcgKChERUJVR19J TkZPLCAiRm1wRHhlOiBWZXJpZnkNCj4gPiBjYXBzdWxlIHdpdGggREINCj4gPiA+ID4gPiA+ID4g PiAra2V5LlxuIikpOw0KPiA+ID4gPiA+ID4gPiA+ICsgIFN0YXR1cyA9DQo+ID4gQ2hlY2tUaGVJ bWFnZVdpdGhTZWN1cmVCb290VmFyaWFibGUoDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAg ICBFRklfSU1BR0VfU0VDVVJJVFlfREFUQUJBU0UsDQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ICZn RWZpSW1hZ2VTZWN1cml0eURhdGFiYXNlR3VpZCwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAg ICAgIEltYWdlLA0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgSW1hZ2VTaXplDQo+ID4g PiA+ID4gPiA+ID4gKyAgICAgICAgICAgICApOw0KPiA+ID4gPiA+ID4gPiA+ICsgIHJldHVybiBT dGF0dXM7DQo+ID4gPiA+ID4gPiA+ID4gK30NCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4g PiA+ID4gIC8qKg0KPiA+ID4gPiA+ID4gPiA+ICAgIENoZWNrcyBpZiB0aGUgZmlybXdhcmUgaW1h Z2UgaXMgdmFsaWQgZm9yDQo+ID4gdGhlIGRldmljZS4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gPiA+IEBAIC03MjgsNiArODI0LDcgQEAgQ2hlY2tUaGVJbWFnZSAoDQo+ID4gPiA+ID4g PiA+ID4gICAgVUlOVDgNCj4gPiAqUHVibGljS2V5RGF0YVhkckVuZDsNCj4gPiA+ID4gPiA+ID4g PiAgICBFRklfRklSTVdBUkVfSU1BR0VfREVQDQo+ID4gKkRlcGVuZGVuY2llczsNCj4gPiA+ID4g PiA+ID4gPiAgICBVSU5UMzINCj4gPiBEZXBlbmRlbmNpZXNTaXplOw0KPiA+ID4gPiA+ID4gPiA+ ICsgIFVJTlQ4DQo+ID4gQWxsb3dTZWN1cmVCb290S2V5czsNCj4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+ICAgIFN0YXR1cyAgICAgICAgICAgPSBFRklfU1VDQ0VTUzsNCj4gPiA+ID4g PiA+ID4gPiAgICBSYXdTaXplICAgICAgICAgID0gMDsNCj4gPiA+ID4gPiA+ID4gPiBAQCAtNzgy LDkgKzg3OSwxNSBAQCBDaGVja1RoZUltYWdlICgNCj4gPiA+ID4gPiA+ID4gPiAgICBQdWJsaWNL ZXlEYXRhWGRyICAgID0gUGNkR2V0UHRyDQo+ID4gPiA+IChQY2RGbXBEZXZpY2VQa2NzN0NlcnRC dWZmZXJYZHIpOw0KPiA+ID4gPiA+ID4gPiA+ICAgIFB1YmxpY0tleURhdGFYZHJFbmQgPSBQdWJs aWNLZXlEYXRhWGRyICsNCj4gPiBQY2RHZXRTaXplDQo+ID4gPiA+ID4gPiA+ID4gKFBjZEZtcERl dmljZVBrY3M3Q2VydEJ1ZmZlclhkcik7DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4g PiAtICBpZiAoUHVibGljS2V5RGF0YVhkciA9PSBOVUxMIHx8DQo+ID4gKFB1YmxpY0tleURhdGFY ZHIgPT0NCj4gPiA+ID4gPiA+ID4gPiBQdWJsaWNLZXlEYXRhWGRyRW5kKSkgew0KPiA+ID4gPiA+ ID4gPiA+IC0gICAgREVCVUcgKChERUJVR19FUlJPUiwgIkZtcER4ZSglcyk6DQo+ID4gSW52YWxp ZCBjZXJ0aWZpY2F0ZSwgc2tpcHBpbmcNCj4gPiA+ID4gaXQuXG4iLA0KPiA+ID4gPiA+ID4gPiA+ IG1JbWFnZUlkTmFtZSkpOw0KPiA+ID4gPiA+ID4gPiA+IC0gICAgU3RhdHVzID0gRUZJX0FCT1JU RUQ7DQo+ID4gPiA+ID4gPiA+ID4gKyAgaWYgKFB1YmxpY0tleURhdGFYZHIgPT0gTlVMTCB8fA0K PiA+IChQdWJsaWNLZXlEYXRhWGRyRW5kIC0NCj4gPiA+ID4gPiA+ID4gPiArIFB1YmxpY0tleURh dGFYZHINCj4gPiA+ID4gPiA+ID4gPiA8IHNpemVvZiAoVUlOVDMyKSkpIHsNCj4gPiA+ID4gPiA+ ID4gPiArICAgIEFsbG93U2VjdXJlQm9vdEtleXMgPSBQY2RHZXQ4DQo+ID4gPiA+ID4gPiAoUGNk Rm1wRGV2aWNlQWxsb3dTZWN1cmVCb290S2V5cyk7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICBpZiAo QWxsb3dTZWN1cmVCb290S2V5cykgew0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICBERUJVRyAoKERF QlVHX0lORk8sICJGbXBEeGU6IFVzZQ0KPiA+IHNlY3VyZSBib290IGNlcnRzLlxuIikpOw0KPiA+ ID4gPiA+ID4gPiA+ICsgICAgICBTdGF0dXMgPQ0KPiA+IENoZWNrVGhlSW1hZ2VXaXRoU2VjdXJl Qm9vdEtleXMgKEltYWdlLA0KPiA+ID4gPiBJbWFnZVNpemUpOw0KPiA+ID4gPiA+ID4gPiA+ICsg ICAgfSBlbHNlIHsNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgREVCVUcgKChERUJVR19FUlJPUiwg IkZtcER4ZSglcyk6DQo+ID4gSW52YWxpZCBjZXJ0aWZpY2F0ZSwNCj4gPiA+ID4gPiA+ID4gPiAr IHNraXBwaW5nDQo+ID4gPiA+ID4gPiA+ID4gaXQuXG4iLCBtSW1hZ2VJZE5hbWUpKTsNCj4gPiA+ ID4gPiA+ID4gPiArICAgICAgU3RhdHVzID0gRUZJX0FCT1JURUQ7DQo+ID4gPiA+ID4gPiA+ID4g KyAgICB9DQo+ID4gPiA+ID4gPiA+ID4gICAgfSBlbHNlIHsNCj4gPiA+ID4gPiA+ID4gPiAgICAg IC8vDQo+ID4gPiA+ID4gPiA+ID4gICAgICAvLyBUcnkgZWFjaCBrZXkgZnJvbQ0KPiA+IFBjZEZt cERldmljZVBrY3M3Q2VydEJ1ZmZlclhkciBkaWZmDQo+ID4gPiA+ID4gPiA+ID4gLS1naXQgYS9G bXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZS5oDQo+ID4gPiA+ID4gPiA+ID4gYi9GbXBEZXZpY2VQ a2cvRm1wRHhlL0ZtcER4ZS5oDQo+ID4gPiA+ID4gPiBpbmRleA0KPiA+ID4gPiA+ID4gPiA+IDMw NzU0ZGUuLjcyYTZjZTYgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gLS0tIGEvRm1wRGV2aWNlUGtn L0ZtcER4ZS9GbXBEeGUuaA0KPiA+ID4gPiA+ID4gPiA+ICsrKyBiL0ZtcERldmljZVBrZy9GbXBE eGUvRm1wRHhlLmgNCj4gPiA+ID4gPiA+ID4gPiBAQCAtMzQsNiArMzQsNyBAQA0KPiA+ID4gPiA+ ID4gPiA+ICAjaW5jbHVkZSA8UHJvdG9jb2wvRmlybXdhcmVNYW5hZ2VtZW50Lmg+DQo+ID4gI2lu Y2x1ZGUNCj4gPiA+ID4gPiA+ID4gPiA8UHJvdG9jb2wvRmlybXdhcmVNYW5hZ2VtZW50UHJvZ3Jl c3MuaD4NCj4gPiA+ID4gPiA+ID4gPiAgI2luY2x1ZGUgPFByb3RvY29sL1ZhcmlhYmxlTG9jay5o Pg0KPiA+ID4gPiA+ID4gPiA+ICsjaW5jbHVkZSA8R3VpZC9JbWFnZUF1dGhlbnRpY2F0aW9uLmg+ DQo+ID4gPiA+ID4gPiA+ID4gICNpbmNsdWRlIDxHdWlkL1N5c3RlbVJlc291cmNlVGFibGUuaD4N Cj4gPiAjaW5jbHVkZQ0KPiA+ID4gPiA+ID4gPiA+IDxHdWlkL0V2ZW50R3JvdXAuaD4NCj4gPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9GbXBEZXZpY2VQa2cvRm1w RHhlL0ZtcER4ZS5pbmYNCj4gPiA+ID4gPiA+ID4gPiBiL0ZtcERldmljZVBrZy9GbXBEeGUvRm1w RHhlLmluZiBpbmRleA0KPiA+IGVlYjkwNGEuLjYwYjAyZDQNCj4gPiA+ID4gMTAwNjQ0DQo+ID4g PiA+ID4gPiA+ID4gLS0tIGEvRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGUuaW5mDQo+ID4gPiA+ ID4gPiA+ID4gKysrIGIvRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGUuaW5mDQo+ID4gPiA+ID4g PiA+ID4gQEAgLTU4LDYgKzU4LDggQEANCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ ICBbR3VpZHNdDQo+ID4gPiA+ID4gPiA+ID4gICAgZ0VmaUVuZE9mRHhlRXZlbnRHcm91cEd1aWQN Cj4gPiA+ID4gPiA+ID4gPiArICBnRWZpQ2VydFg1MDlHdWlkDQo+ID4gPiA+ID4gPiA+ID4gKyAg Z0VmaUltYWdlU2VjdXJpdHlEYXRhYmFzZUd1aWQNCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gPiA+ICBbUHJvdG9jb2xzXQ0KPiA+ID4gPiA+ID4gPiA+ICAgIGdFZGtpaVZhcmlhYmxlTG9j a1Byb3RvY29sR3VpZA0KPiA+ICMjIENPTlNVTUVTDQo+ID4gPiA+ID4gPiA+ID4gQEAgLTc0LDYg Kzc2LDcgQEANCj4gPiA+ID4gPiA+ID4gPg0KPiA+IGdGbXBEZXZpY2VQa2dUb2tlblNwYWNlR3Vp ZC5QY2RGbXBEZXZpY2VQa2NzN0NlcnRCdWZmZXJYDQo+ID4gZHINCj4gPiA+ID4gPiA+ID4gPiAj IyBDT05TVU1FUw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+DQo+ID4gZ0ZtcERldmljZVBrZ1Rv a2VuU3BhY2VHdWlkLlBjZEZtcERldmljZVRlc3RLZXlTaGEyNTZEaWcNCj4gPiBlc3QNCj4gPiA+ ID4gPiA+ID4gPiAjIyBDT05TVU1FUw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gZ0ZtcERldmljZVBr Z1Rva2VuU3BhY2VHdWlkLlBjZEZtcERldmljZUltYWdlVHlwZUlkR3VpZA0KPiA+ID4gPiA+ID4g PiA+ICMjIENPTlNVTUVTDQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPg0KPiA+IGdGbXBEZXZp Y2VQa2dUb2tlblNwYWNlR3VpZC5QY2RGbXBEZXZpY2VBbGxvd1NlY3VyZUJvb3RLDQo+ID4gZXlz DQo+ID4gPiA+ID4gPiA+ID4gIyMgQ09OU1VNRVMNCj4gPiA+ID4gPiA+ID4gPg0KPiA+IGdFZmlN ZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RUZXN0S2V5VXNlZA0KPiA+ID4gPiAjIw0KPiA+ ID4gPiA+ID4gPiA+IFNPTUVUSU1FU19QUk9EVUNFUw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiA+ID4gIFtEZXBleF0NCj4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0DQo+ID4gYS9GbXBE ZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZUxpYi5pbmYNCj4gPiA+ID4gPiA+ID4gPiBiL0ZtcERldmlj ZVBrZy9GbXBEeGUvRm1wRHhlTGliLmluZg0KPiA+ID4gPiA+ID4gPiA+IGluZGV4IDlhOTNiNWUu LjEzMDhjYWUgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gLS0tIGEvRm1wRGV2aWNlUGtnL0ZtcER4 ZS9GbXBEeGVMaWIuaW5mDQo+ID4gPiA+ID4gPiA+ID4gKysrIGIvRm1wRGV2aWNlUGtnL0ZtcER4 ZS9GbXBEeGVMaWIuaW5mDQo+ID4gPiA+ID4gPiA+ID4gQEAgLTc0LDYgKzc0LDcgQEANCj4gPiA+ ID4gPiA+ID4gPg0KPiA+IGdGbXBEZXZpY2VQa2dUb2tlblNwYWNlR3VpZC5QY2RGbXBEZXZpY2VQ a2NzN0NlcnRCdWZmZXJYDQo+ID4gZHINCj4gPiA+ID4gPiA+ID4gPiAjIyBDT05TVU1FUw0KPiA+ ID4gPiA+ID4gPiA+DQo+ID4gPiA+DQo+ID4gZ0ZtcERldmljZVBrZ1Rva2VuU3BhY2VHdWlkLlBj ZEZtcERldmljZVRlc3RLZXlTaGEyNTZEaWcNCj4gPiBlc3QNCj4gPiA+ID4gPiA+ID4gPiAjIyBD T05TVU1FUw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gZ0ZtcERldmljZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZEZtcERldmljZUltYWdlVHlwZUlkR3VpZA0KPiA+ID4gPiA+ID4gPiA+ICMjIENPTlNVTUVT DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPg0KPiA+IGdGbXBEZXZpY2VQa2dUb2tlblNwYWNl R3VpZC5QY2RGbXBEZXZpY2VBbGxvd1NlY3VyZUJvb3RLDQo+ID4gZXlzDQo+ID4gPiA+ID4gPiA+ ID4gIyMgQ09OU1VNRVMNCj4gPiA+ID4gPiA+ID4gPg0KPiA+IGdFZmlNZGVNb2R1bGVQa2dUb2tl blNwYWNlR3VpZC5QY2RUZXN0S2V5VXNlZA0KPiA+ID4gPiAjIw0KPiA+ID4gPiA+ID4gPiA+IFNP TUVUSU1FU19QUk9EVUNFUw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gIFtEZXBl eF0NCj4gPiA+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4gPiA+IDEuOC4zLjENCj4gPiA+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4N Cj4gPg0KPiA+DQo+ID4gDQoNCg==