From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.1299.1573609407184118156 for ; Tue, 12 Nov 2019 17:43:27 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=RHzqTIUO; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: kenji.chen@intel.com) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Nov 2019 17:43:26 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,298,1569308400"; d="scan'208,223";a="194516449" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga007.jf.intel.com with ESMTP; 12 Nov 2019 17:43:25 -0800 Received: from fmsmsx153.amr.corp.intel.com (10.18.125.6) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 12 Nov 2019 17:43:25 -0800 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by FMSMSX153.amr.corp.intel.com (10.18.125.6) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 12 Nov 2019 17:43:25 -0800 Received: from NAM05-DM3-obe.outbound.protection.outlook.com (104.47.49.56) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 12 Nov 2019 17:43:25 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JtLxiDCT73pNqTNZL2WJdjFZJSMxAElFza9HE00Y/oMEtLgouvkiTAj7F4OJfePf9TRkrUkNA4gE96m7fzZIU2bQl4HJcsrkX8Zmol7WEfJtGwNr8tkdTf+xBOGX84TWH23fvorwUUbfiLYLr7dLMp5U5FERP0sAJFtzM1Jjo60A9aDl8lKmdyLpd69NtWKFGKBxCvqdzXJnoNranMMxZDzdKKG/kfuNBW/dFkFhcbPz2OI3fij3M4IzO0MJfWWddBMf4l9SGlW/rnu+oCYU0GYxggQVUSAWUiyLTOJ6pW+CYCWpjrpYTVWNUznIRSjs15TFIBg9bjE+m96uyBERHg== 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=+hMGTZ9UY2kxPnTqccJYxTRl+qVlS7rgiSLu2/yikM4=; b=bf0+FCGcU9e6PVix7869+PCWLyrDBxeaoMtoQGn7ewT15BvgNfxkU5Jl6aVinqUh/b6nCO6kLh/mvpftI9ZA1VHuh8hU4z7sGzCQaFbJ9wACYehC8/qrNz9QuxPk8y746DlVOOBNgFJJlvisSEfVoZy7xb+9evgq5mdn5njfcBhD/iEfRKrWrniWcSPbRN/avxFGKyvhkKAv+0VHFMVbQ2OM6BXu4SXyTz5YL2bl/sPCVslYBMpnWvwEm4HzfsjkeysW671GVuAHygTkfHV7tgaKumKQNPp13U7NZTu3rZEu2/27Kld4JX9m3MZT58bToOXIGwOzT96n8KFglfszUQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+hMGTZ9UY2kxPnTqccJYxTRl+qVlS7rgiSLu2/yikM4=; b=RHzqTIUOWu0xjXmrhKFfcy7CaiwtYq2adZzE/uDKJfugmlUtMKNmZfrtbLdMc8JxB7jMu7C/uwCprnGFLpHqf1KenQ/rg4pO+/YxSto868KlhE1hrFNDnietp87Bx/SMGOpWnjPZaH/MUSl/u25GcX1/wIewTe9gR7rgrCcoybc= Received: from BN8PR11MB3746.namprd11.prod.outlook.com (20.178.221.23) by BN8PR11MB3843.namprd11.prod.outlook.com (20.178.220.29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2430.23; Wed, 13 Nov 2019 01:43:23 +0000 Received: from BN8PR11MB3746.namprd11.prod.outlook.com ([fe80::a0c8:57:fe2e:7fb]) by BN8PR11MB3746.namprd11.prod.outlook.com ([fe80::a0c8:57:fe2e:7fb%3]) with mapi id 15.20.2430.027; Wed, 13 Nov 2019 01:43:23 +0000 From: "Chen, Kenji" To: "Gao, Liming" , "Ke, VincentX" CC: "'devel@edk2.groups.io'" Subject: Re: [edk2-devel] [Bug 2321] Add FitGen feature to support uCode Capsule Update Thread-Topic: [edk2-devel] [Bug 2321] Add FitGen feature to support uCode Capsule Update Thread-Index: AQHVkrV/FDgsapZ33Ey5VJmOol4EpKeA/NtwgAa9FECAAAA+oIAAivIQgAAM6xCAAA/e8A== Date: Wed, 13 Nov 2019 01:43:22 +0000 Message-ID: References: <4A89E2EF3DFEDB4C8BFDE51014F606A14E53E843@SHSMSX104.ccr.corp.intel.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E53E84D@SHSMSX104.ccr.corp.intel.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E53EA4D@SHSMSX104.ccr.corp.intel.com> In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14E53EA4D@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: spf=none (sender IP is ) smtp.mailfrom=kenji.chen@intel.com; x-originating-ip: [192.55.79.111] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d1160f9a-90d6-4d15-0a51-08d767dadea3 x-ms-traffictypediagnostic: BN8PR11MB3843: x-ms-exchange-purlcount: 5 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2043; x-forefront-prvs: 0220D4B98D x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(366004)(346002)(39860400002)(136003)(396003)(376002)(13464003)(189003)(199004)(71200400001)(316002)(86362001)(45080400002)(71190400001)(6436002)(6116002)(102836004)(6636002)(25786009)(14444005)(99286004)(110136005)(256004)(3846002)(26005)(4326008)(7736002)(966005)(486006)(74316002)(81166006)(81156014)(6246003)(305945005)(8936002)(14454004)(8676002)(478600001)(2906002)(446003)(9686003)(52536014)(33656002)(66946007)(5660300002)(7696005)(66616009)(76176011)(229853002)(6306002)(11346002)(186003)(476003)(66476007)(64756008)(66066001)(53546011)(6506007)(66446008)(66556008)(76116006)(55016002)(15650500001);DIR:OUT;SFP:1102;SCL:1;SRVR:BN8PR11MB3843;H:BN8PR11MB3746.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: dYdOwEEqhnPE3LYbfxd9ZDeYpsDUbWchDN7DB6dpclLDoLoOMdoMwcdJnW2nSBbSS7hmKm9UMyqYQRvc4gJfowhjieULceUExL5W9UhscVMPTGXjABYHC/lzibtj8KbaXHZiz+/Ir+s0r95WBmlZvAGjUl3itEYVYO3jMuAh0g5eI/XWyfG4GcMvnkh4Z8ccq7NC4/novC87F9mAuFf8UJnp9QOQgv8YxqryisQraCDdlHixwjLIa/8Tr3l2aDav+xBKu6KK/O+CPu1Dj3qgh3j2SsimL7vdAucsDAkcGainzqsN5o28MsXpmHymn5+8tdzma6Jgb0gq3fhY0zJllhNbDXKzxzo4wi9/vfVIyD12WFMprfVP0C31h9IL/NrXtLSoQZ4AtDH7doErAIgTLgFj2yhcklUnZ4GoM+8tmQjI3/38dLpfk+DHYtYKZMFZWRZlLp+WGl9BpnwhB4BONbr/Y5slf98amV1QATh3gGk= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: d1160f9a-90d6-4d15-0a51-08d767dadea3 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Nov 2019 01:43:22.9584 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: G1mofKQE7A2W5fT1gjX7mkHh7cAkuebxXtffGjJt2fyjbcDsw4BC2Lzh2/eJgHBtbkfKp5LV23RDm3VnKrTYeQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR11MB3843 Return-Path: kenji.chen@intel.com X-OriginatorOrg: intel.com X-Groupsio-MsgNum: 50479 Content-Language: en-US Content-Type: multipart/mixed; boundary="_002_BN8PR11MB37465B8B54E4BD433F872DF882760BN8PR11MB3746namp_" --_002_BN8PR11MB37465B8B54E4BD433F872DF882760BN8PR11MB3746namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U3VyZS4gQWRkZWQgdGhlIGNvbW1lbnQgYW5kIGhlbHAgbWVzc2FnZS4gV2lsbCB1cGRhdGUgQlou DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBHYW8sIExpbWluZyA8bGltaW5n Lmdhb0BpbnRlbC5jb20+IA0KU2VudDogV2VkbmVzZGF5LCBOb3ZlbWJlciAxMywgMjAxOSA4OjQ4 IEFNDQpUbzogQ2hlbiwgS2VuamkgPGtlbmppLmNoZW5AaW50ZWwuY29tPjsgS2UsIFZpbmNlbnRY IDx2aW5jZW50eC5rZUBpbnRlbC5jb20+DQpDYzogJ2RldmVsQGVkazIuZ3JvdXBzLmlvJyA8ZGV2 ZWxAZWRrMi5ncm91cHMuaW8+DQpTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtCdWcgMjMyMV0g QWRkIEZpdEdlbiBmZWF0dXJlIHRvIHN1cHBvcnQgdUNvZGUgQ2Fwc3VsZSBVcGRhdGUNCg0KS2Vu amk6DQogIFRoaXMgcGF0Y2ggYWRkcyAtUyBvcHRpb24gZm9yIFNsb3RzaXplLiBQbGVhc2UgdXBk YXRlIEZpdEdlbiB0b29sIGhlbHAgbWVzc2FnZSB0byBsaXN0IHRoaXMgbmV3IG9wdGlvbi4gDQog IEFuZCwgeW91IGFsc28gbmVlZCB0byB1cGRhdGUgQlogaHR0cHM6Ly9idWd6aWxsYS50aWFub2Nv cmUub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzIxIGZvciB0aGlzIGNoYW5nZS4gDQogIEJhc2VkIG9u IGN1cnJlbnQgZGVzY3JpcHRpb24gaW4gQlosIEkgZG9uJ3Qga25vdyB3aHkgbmVlZCB0byBhZGQg LVMgb3B0aW9uLiAgDQoNClRoYW5rcw0KTGltaW5nDQo+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj5Gcm9tOiBDaGVuLCBLZW5qaQ0KPlNlbnQ6IFdlZG5lc2RheSwgTm92ZW1iZXIgMTMsIDIw MTkgODowMSBBTQ0KPlRvOiBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBLZSwg VmluY2VudFggDQo+PHZpbmNlbnR4LmtlQGludGVsLmNvbT4NCj5DYzogJ2RldmVsQGVkazIuZ3Jv dXBzLmlvJyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+DQo+U3ViamVjdDogUkU6IFtlZGsyLWRldmVs XSBbQnVnIDIzMjFdIEFkZCBGaXRHZW4gZmVhdHVyZSB0byBzdXBwb3J0IA0KPnVDb2RlIENhcHN1 bGUgVXBkYXRlDQo+DQo+VXBkYXRpbmcgdGhlIGNvcnJlY3Qgb25lLg0KPisgVmluY2VudCB0byBj b25maXJtIHRoZSBwYXRjaC4NCj4NCj5UaGFua3MsIEtlbmppLg0KPi0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tDQo+RnJvbTogR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPg0KPlNl bnQ6IFR1ZXNkYXksIE5vdmVtYmVyIDEyLCAyMDE5IDExOjQzIFBNDQo+VG86IENoZW4sIEtlbmpp IDxrZW5qaS5jaGVuQGludGVsLmNvbT4NCj5TdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtCdWcg MjMyMV0gQWRkIEZpdEdlbiBmZWF0dXJlIHRvIHN1cHBvcnQgDQo+dUNvZGUgQ2Fwc3VsZSBVcGRh dGUNCj4NCj5IZXJlIGlzIGVkazJwbGF0Zm9ybSBnaXQgcmVwbyANCj5odHRwczovL2dpdGh1Yi5j b20vdGlhbm9jb3JlL2VkazItcGxhdGZvcm1zDQo+DQo+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPj4gRnJvbTogR2FvLCBMaW1pbmcNCj4+IFNlbnQ6IFR1ZXNkYXksIE5vdmVtYmVyIDEy LCAyMDE5IDExOjQyIFBNDQo+PiBUbzogQ2hlbiwgS2VuamkgPGtlbmppLmNoZW5AaW50ZWwuY29t Pg0KPj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbQnVnIDIzMjFdIEFkZCBGaXRHZW4gZmVh dHVyZSB0byBzdXBwb3J0IA0KPj4gdUNvZGUNCj5DYXBzdWxlIFVwZGF0ZQ0KPj4NCj4+IENhbiB5 b3UgdXBkYXRlIHRoZSBwYXRjaCBiYXNlIG9uIGVkazItDQo+cGxhdGZvcm1zXFNpbGljb25cSW50 ZWxcVG9vbHNcRml0R2VuIHNvdXJjZT8NCj4+DQo+PiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+PiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5p bz4gT24gQmVoYWxmIE9mIA0KPj4gPiBDaGVuLA0KPktlbmppDQo+PiA+IFNlbnQ6IEZyaWRheSwg Tm92ZW1iZXIgOCwgMjAxOSA0OjQ5IFBNDQo+PiA+IFRvOiAnZGV2ZWxAZWRrMi5ncm91cHMuaW8n IDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4NCj4+ID4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBb QnVnIDIzMjFdIEFkZCBGaXRHZW4gZmVhdHVyZSB0byBzdXBwb3J0IA0KPj4gPiB1Q29kZQ0KPkNh cHN1bGUgVXBkYXRlDQo+PiA+DQo+PiA+IEhhdmluZyBwcm9ibGVtcyBpbiBnaXQgc2VuZC1lbWFp bC4gU2VuZCBpdCBieSBvdXRsb29rLg0KPj4gPg0KPj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPj4gPiBGcm9tOiBidWd6aWxsYS1kYWVtb25AYnVnemlsbGEudGlhbm9jb3JlLm9yZyA8 YnVnemlsbGEtDQo+ZGFlbW9uQGJ1Z3ppbGxhLnRpYW5vY29yZS5vcmc+DQo+PiA+IFNlbnQ6IE1v bmRheSwgTm92ZW1iZXIgNCwgMjAxOSAxMDoxNCBBTQ0KPj4gPiBUbzogQ2hlbiwgS2VuamkgPGtl bmppLmNoZW5AaW50ZWwuY29tPg0KPj4gPiBTdWJqZWN0OiBbQnVnIDIzMjFdIEFkZCBGaXRHZW4g ZmVhdHVyZSB0byBzdXBwb3J0IHVDb2RlIENhcHN1bGUgDQo+PiA+IFVwZGF0ZQ0KPj4gPg0KPj4g PiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjENCj4+ ID4NCj4+ID4gTGltaW5nIEdhbyA8bGltaW5nLmdhb0BpbnRlbC5jb20+IGNoYW5nZWQ6DQo+PiA+ DQo+PiA+ICAgICAgICAgICAgV2hhdCAgICB8UmVtb3ZlZCAgICAgICAgICAgICAgICAgICAgIHxB ZGRlZA0KPj4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+PiA+ICAgICAgICAgICAgICBTdGF0dXN8 VU5DT05GSVJNRUQgICAgICAgICAgICAgICAgIHxDT05GSVJNRUQNCj4+ID4gICAgICAgICAgICAg ICAgICBDQ3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgfGxpbWluZy5nYW9AaW50ZWwuY29t DQo+PiA+ICAgICAgICAgICAgQXNzaWduZWV8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20gIHxr ZW5qaS5jaGVuQGludGVsLmNvbQ0KPj4gPiAgICAgIEV2ZXIgY29uZmlybWVkfDAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8MQ0KPj4gPg0KPj4gPiAtLS0gQ29tbWVudCAjMSBmcm9tIExpbWlu ZyBHYW8gPGxpbWluZy5nYW9AaW50ZWwuY29tPiAtLS0gS2VuamkgaXMNCj53b3JraW5nIG9uIHRo ZSBwYXRjaC4NCj4+ID4NCj4+ID4gLS0NCj4+ID4gWW91IGFyZSByZWNlaXZpbmcgdGhpcyBtYWls IGJlY2F1c2U6DQo+PiA+IFlvdSBhcmUgdGhlIGFzc2lnbmVlIGZvciB0aGUgYnVnLg0KPj4gPiBZ b3UgcmVwb3J0ZWQgdGhlIGJ1Zy4NCj4+ID4NCj4+ID4gDQo+DQo+DQoNCg0K --_002_BN8PR11MB37465B8B54E4BD433F872DF882760BN8PR11MB3746namp_ Content-Type: application/octet-stream; name= "0001-FitGen-Add-FitGen-feature-to-support-uCode-Capsule-U_20191113.patch" Content-Description: 0001-FitGen-Add-FitGen-feature-to-support-uCode-Capsule-U_20191113.patch Content-Disposition: attachment; filename= "0001-FitGen-Add-FitGen-feature-to-support-uCode-Capsule-U_20191113.patch"; size=9272; creation-date="Wed, 13 Nov 2019 01:42:54 GMT"; modification-date="Wed, 13 Nov 2019 01:42:54 GMT" Content-Transfer-Encoding: base64 RnJvbSA3ZWI4ODZmZjEzYjUyZDcyNjg0N2U0YzI2YjFiNTJiNWI2MzlhYWRjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5qaSBDaGVuIDxrZW5qaS5jaGVuQGludGVsLmNvbT4KRGF0 ZTogVHVlLCA1IE5vdiAyMDE5IDExOjAxOjMyICswODAwClN1YmplY3Q6IFtQQVRDSF0gRml0R2Vu OiBBZGQgRml0R2VuIGZlYXR1cmUgdG8gc3VwcG9ydCB1Q29kZSBDYXBzdWxlIFVwZGF0ZQoKQWRk IHNsb3QgbW9kZSBoYW5kbGluZyB3aXRoIGEgaGVhZGVyIGFycmF5LgoKQ2hhbmdlLUlkOiBJY2Vl OTU1YThjYjQ0NTZjZWIyMzNlN2EwNjhmYTdkYjczMzQ2NDYyNgpTaWduZWQtb2ZmLWJ5OiBLZW5q aSBDaGVuIDxrZW5qaS5jaGVuQGludGVsLmNvbT4KLS0tCiBTaWxpY29uL0ludGVsL1Rvb2xzL0Zp dEdlbi9GaXRHZW4uYyB8IDk0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0K IDEgZmlsZSBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9TaWxpY29uL0ludGVsL1Rvb2xzL0ZpdEdlbi9GaXRHZW4uYyBiL1NpbGljb24vSW50 ZWwvVG9vbHMvRml0R2VuL0ZpdEdlbi5jCmluZGV4IGZhZjk4ODAwLi5kYzc2MGYwMiAxMDA2NDQK LS0tIGEvU2lsaWNvbi9JbnRlbC9Ub29scy9GaXRHZW4vRml0R2VuLmMKKysrIGIvU2lsaWNvbi9J bnRlbC9Ub29scy9GaXRHZW4vRml0R2VuLmMKQEAgLTMxNiw3ICszMTYsOCBAQCBSZXR1cm5zOgog ICAgICAgICAgICJcdFstTkFdXG4iDQogICAgICAgICAgICJcdFstQ0xFQVJdXG4iDQogICAgICAg ICAgICJcdFstSSA8Qmlvc0luZm9HdWlkPl1cbiINCi0gICAgICAgICAgIlx0Wy1TIDxTdGFydHVw QWNtQWRkcmVzcyBTdGFydHVwQWNtU2l6ZT58PFN0YXJ0dXBBY21HdWlkPl0gWy1WIDxTdGFydHVw QWNtVmVyc2lvbj5dXG4iDQorICAgICAgICAgICJcdFstUyA8TWljcm9jb2RlU2xvdFNpemU+XVxu Ig0KKyAgICAgICAgICAiXHRbLUEgPFN0YXJ0dXBBY21BZGRyZXNzIFN0YXJ0dXBBY21TaXplPnw8 U3RhcnR1cEFjbUd1aWQ+XSBbLVYgPFN0YXJ0dXBBY21WZXJzaW9uPl1cbiINCiAgICAgICAgICAg Ilx0Wy1CIDxCaW9zTW9kdWxlQWRkcmVzcyBCaW9zTW9kdWxlU2l6ZT5dIFstQiAuLi5dIFstViA8 Qmlvc01vZHVsZVZlcnNpb24+XVxuIg0KICAgICAgICAgICAiXHRbLU0gPE1pY3JvY29kZUFkZHJl c3MgTWljcm9jb2RlU2l6ZT5dIFstTSAuLi5dfFstVSA8TWljcm9jb2RlRnYgTWljcm9jb2RlQmFz ZT58PE1pY3JvY29kZVJlZ2lvbk9mZnNldCBNaWNyb2NvZGVSZWdpb25TaXplPnw8TWljcm9jb2Rl R3VpZD5dIFstViA8TWljcm9jb2RlVmVyc2lvbj5dXG4iDQogICAgICAgICAgICJcdFstTyBSZWNv cmRUeXBlIDxSZWNvcmREYXRhQWRkcmVzcyBSZWNvcmREYXRhU2l6ZT58PFJFU0VSVkUgUmVjb3Jk RGF0YVNpemU+fDxSZWNvcmREYXRhR3VpZD58PFJlY29yZEJpbkZpbGU+IFstViA8UmVjb3JkVmVy c2lvbj5dXSBbLU8gLi4uIFstViAuLi5dXVxuIg0KQEAgLTM0MCw2ICszNDEsNyBAQCBSZXR1cm5z OgogICBwcmludGYgKCJcdE1pY3JvY29kZVJlZ2lvbk9mZnNldCAgLSBPZmZzZXQgb2YgTWljcm9j b2RlIHJlZ2lvbiBpbiBpbnB1dCBGRCBpbWFnZS5cbiIpOw0KICAgcHJpbnRmICgiXHRNaWNyb2Nv ZGVSZWdpb25TaXplICAgIC0gU2l6ZSBvZiBNaWNyb2NvZGUgcmVnaW9uIGluIGlucHV0IEZEIGlt YWdlLlxuIik7DQogICBwcmludGYgKCJcdE1pY3JvY29kZUd1aWQgICAgICAgICAgLSBHdWlkIG9m IE1pY3JvY29kZSBNb2R1bGUuXG4iKTsNCisgIHByaW50ZiAoIlx0TWljcm9jb2RlU2xvdFNpemUg ICAgICAtIE9jY3VwaWVkIHJlZ2lvbiBzaXplIG9mIGVhY2ggTWljcm9jb2RlIGJpbmFyeS5cbiIp Ow0KICAgcHJpbnRmICgiXHQtTkEgICAgICAgICAgICAgICAgICAgIC0gTm8gMHg4MDAgYWxpZ25l ZCBNaWNyb2NvZGUgcmVxdWlyZW1lbnQuIE5vIC1OQSBtZWFucyBNaWNyb2NvZGUgaXMgMHg4MDAg YWxpZ25lZC5cbiIpOw0KICAgcHJpbnRmICgiXHRSZWNvcmRUeXBlICAgICAgICAgICAgIC0gRklU IGVudHJ5IHJlY29yZCB0eXBlLiBVc2VyIHNob3VsZCBlbnN1cmUgaXQgaXMgb3JkZXJlZC5cbiIp Ow0KICAgcHJpbnRmICgiXHRSZWNvcmREYXRhQWRkcmVzcyAgICAgIC0gRklUIGVudHJ5IHJlY29y ZCBkYXRhIGFkZHJlc3MuXG4iKTsNCkBAIC03NjUsNiArNzY3LDcgQEAgUmV0dXJuczoKIHsNCiAg IEVGSV9HVUlEICBHdWlkOw0KICAgSU5UTiAgICAgIEluZGV4Ow0KKyAgVUlOVE4gICAgIE1pY3Jv Y29kZUluZGV4Ow0KICAgVUlOVDggICAgICpGaWxlQnVmZmVyOw0KICAgVUlOVDMyICAgIEZpbGVT aXplOw0KICAgVUlOVDMyICAgIFR5cGU7DQpAQCAtNzc0LDggKzc3NywxMCBAQCBSZXR1cm5zOgog ICBVSU5UMzIgICAgTWljcm9jb2RlQmFzZTsNCiAgIFVJTlQzMiAgICBNaWNyb2NvZGVTaXplOw0K ICAgVUlOVDggICAgICpNaWNyb2NvZGVCdWZmZXI7DQorICBVSU5UOCAgICAgKk1pY3JvY29kZUJ1 ZmZlckVuZDsNCiAgIFVJTlQzMiAgICBNaWNyb2NvZGVSZWdpb25PZmZzZXQ7DQogICBVSU5UMzIg ICAgTWljcm9jb2RlUmVnaW9uU2l6ZTsNCisgIFVJTlQzMiAgICBTbG90U2l6ZTsNCiAgIFNUQVRV UyAgICBTdGF0dXM7DQogICBFRklfRklSTVdBUkVfVk9MVU1FX0hFQURFUiAgKkZ2SGVhZGVyOw0K ICAgVUlOVE4gICAgICAgICAgICAgICAgICAgICAgIEZpdEVudHJ5TnVtYmVyOw0KQEAgLTc4Myw2 ICs3ODgsNyBAQCBSZXR1cm5zOgogICBCSU9TX0lORk9fSEVBREVSICAgICAgICAgICAgKkJpb3NJ bmZvOw0KICAgQklPU19JTkZPX1NUUlVDVCAgICAgICAgICAgICpCaW9zSW5mb1N0cnVjdDsNCiAg IFVJTlROICAgICAgICAgICAgICAgICAgICAgICBCaW9zSW5mb0luZGV4Ow0KKyAgVUlOVDMyICAg ICAgICAgICAgICAgICAgICAgIEFsaWdubWVudEJ5dGU7DQogDQogICAvLw0KICAgLy8gSW5pdCBp bmRleA0KQEAgLTkwMCw3ICs5MDYsMjIgQEAgUmV0dXJuczoKICAgfQ0KIA0KICAgLy8NCi0gIC8v IDAuNSBCaW9zSW5mbw0KKyAgLy8gMC41IFNsb3RTaXplDQorICAvLw0KKyAgaWYgKChJbmRleCAr IDEgPj0gYXJnYykgfHwNCisgICAgICAoKHN0cmNtcCAoYXJndltJbmRleF0sICItUyIpICE9IDAp ICYmDQorICAgICAgIChzdHJjbXAgKGFyZ3ZbSW5kZXhdLCAiLXMiKSAhPSAwKSkgKSB7DQorICAg IC8vDQorICAgIC8vIEJ5cGFzcw0KKyAgICAvLw0KKyAgICBTbG90U2l6ZSA9IDA7DQorICB9IGVs c2Ugew0KKyAgICBTbG90U2l6ZSA9IHh0b2kgKGFyZ3ZbSW5kZXggKyAxXSk7DQorICAgIEluZGV4 ICs9IDI7DQorICB9DQorDQorICAvLw0KKyAgLy8gMC42IEJpb3NJbmZvDQogICAvLw0KICAgaWYg KChJbmRleCArIDEgPj0gYXJnYykgfHwNCiAgICAgICAoKHN0cmNtcCAoYXJndltJbmRleF0sICIt SSIpICE9IDApICYmDQpAQCAtOTk4LDYgKzEwMTksNyBAQCBSZXR1cm5zOgogDQogICAgICAgICAg ICAgTWljcm9jb2RlRmlsZUJ1ZmZlciA9IEZMQVNIX1RPX01FTU9SWSAoTWljcm9jb2RlUmVnaW9u T2Zmc2V0LCBGZEJ1ZmZlciwgRmRTaXplKTsNCiAgICAgICAgICAgICBNaWNyb2NvZGVGaWxlU2l6 ZSA9IE1pY3JvY29kZVJlZ2lvblNpemU7DQorICAgICAgICAgICAgTWljcm9jb2RlQnVmZmVyRW5k ID0gTWljcm9jb2RlRmlsZUJ1ZmZlciArIE1pY3JvY29kZUZpbGVTaXplOw0KICAgICAgICAgICAg IE1pY3JvY29kZUJhc2UgPSBNaWNyb2NvZGVSZWdpb25PZmZzZXQ7DQogDQogICAgICAgICAgICAg RnZIZWFkZXIgPSAoRUZJX0ZJUk1XQVJFX1ZPTFVNRV9IRUFERVIgKilNaWNyb2NvZGVGaWxlQnVm ZmVyOw0KQEAgLTEwMDcsMTMgKzEwMjksMjYgQEAgUmV0dXJuczoKICAgICAgICAgICAgIH0gZWxz ZSB7DQogICAgICAgICAgICAgICBNaWNyb2NvZGVCdWZmZXIgPSBNaWNyb2NvZGVGaWxlQnVmZmVy Ow0KICAgICAgICAgICAgIH0NCisNCisgICAgICAgICAgICBBbGlnbm1lbnRCeXRlID0gMTsNCisg ICAgICAgICAgICBBbGlnbm1lbnRCeXRlID0gQWxpZ25tZW50Qnl0ZSA8PCAoKEZ2SGVhZGVyLT5B dHRyaWJ1dGVzJjB4MDAwRjAwMDApID4+IDE2KTsNCisNCisgICAgICAgICAgICAvLy8NCisgICAg ICAgICAgICAvLy8gTWFrZSBNaWNyb2NvZGVCdWZmZXIgYWRkcmVzcyB0byBhbGlnbm1lbnQuDQor ICAgICAgICAgICAgLy8vDQorICAgICAgICAgICAgaWYgKChVSU5UMzIpTWljcm9jb2RlQnVmZmVy ICUgQWxpZ25tZW50Qnl0ZSAhPSAwKSB7DQorICAgICAgICAgICAgICBNaWNyb2NvZGVCdWZmZXIg PSAoVUlOVDggKikoKFVJTlQzMilNaWNyb2NvZGVCdWZmZXIgJn4oQWxpZ25tZW50Qnl0ZSAtIDEp KTsNCisgICAgICAgICAgICAgIE1pY3JvY29kZUJ1ZmZlciArPSBBbGlnbm1lbnRCeXRlOw0KKyAg ICAgICAgICAgIH0NCisNCiAgICAgICAgICAgICB3aGlsZSAoKFVJTlQzMikoTWljcm9jb2RlQnVm ZmVyIC0gTWljcm9jb2RlRmlsZUJ1ZmZlcikgPCBNaWNyb2NvZGVGaWxlU2l6ZSkgew0KLSAgICAg ICAgICAgICAgaWYgKCooVUlOVDMyICopKE1pY3JvY29kZUJ1ZmZlcikgIT0gMHgxKSB7IC8vIEhl YWRlclZlcnNpb24NCi0gICAgICAgICAgICAgICAgYnJlYWs7DQotICAgICAgICAgICAgICB9DQot ICAgICAgICAgICAgICBpZiAoKihVSU5UMzIgKikoTWljcm9jb2RlQnVmZmVyICsgMjApICE9IDB4 MSkgeyAvLyBMb2FkZXJWZXJzaW9uDQotICAgICAgICAgICAgICAgIGJyZWFrOw0KKyAgICAgICAg ICAgICAgaWYgKCooVUlOVDMyICopKE1pY3JvY29kZUJ1ZmZlcikgIT0gMHgxIHx8DQorICAgICAg ICAgICAgICAgICAgKihVSU5UMzIgKikoTWljcm9jb2RlQnVmZmVyICsgMjApICE9IDB4MQ0KKyAg ICAgICAgICAgICAgICAgKSB7IC8vIEhlYWRlclZlcnNpb24NCisgICAgICAgICAgICAgICAgTWlj cm9jb2RlQnVmZmVyICs9IDEwMjQ7DQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAg ICAgICAgICAgfQ0KKw0KICAgICAgICAgICAgICAgaWYgKCooVUlOVDMyICopKE1pY3JvY29kZUJ1 ZmZlciArIDI4KSA9PSAwKSB7IC8vIERhdGFTaXplDQogICAgICAgICAgICAgICAgIE1pY3JvY29k ZVNpemUgPSAyMDQ4Ow0KICAgICAgICAgICAgICAgfSBlbHNlIHsNCkBAIC0xMDM2LDEyICsxMDcx LDQxIEBAIFJldHVybnM6CiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgIGdGaXRUYWJs ZUNvbnRleHQuTWljcm9jb2RlW2dGaXRUYWJsZUNvbnRleHQuTWljcm9jb2RlTnVtYmVyXS5UeXBl ID0gRklUX1RBQkxFX1RZUEVfTUlDUk9DT0RFOw0KICAgICAgICAgICAgICAgZ0ZpdFRhYmxlQ29u dGV4dC5NaWNyb2NvZGVbZ0ZpdFRhYmxlQ29udGV4dC5NaWNyb2NvZGVOdW1iZXJdLkFkZHJlc3Mg PSBNaWNyb2NvZGVCYXNlICsgKChVSU5UMzIpIChVSU5UTikgTWljcm9jb2RlQnVmZmVyIC0gKFVJ TlQzMikgKFVJTlROKSBNaWNyb2NvZGVGaWxlQnVmZmVyKTsNCi0gICAgICAgICAgICAgIGdGaXRU YWJsZUNvbnRleHQuTWljcm9jb2RlW2dGaXRUYWJsZUNvbnRleHQuTWljcm9jb2RlTnVtYmVyXS5T aXplID0gTWljcm9jb2RlU2l6ZTsNCisgICAgICAgICAgICAgIC8vDQorICAgICAgICAgICAgICAv LyBObyBsb25nZXIgdXNlLg0KKyAgICAgICAgICAgICAgLy8NCisgICAgICAgICAgICAgIC8vZ0Zp dFRhYmxlQ29udGV4dC5NaWNyb2NvZGVbZ0ZpdFRhYmxlQ29udGV4dC5NaWNyb2NvZGVOdW1iZXJd LlNpemUgPSBNaWNyb2NvZGVTaXplOw0KICAgICAgICAgICAgICAgZ0ZpdFRhYmxlQ29udGV4dC5N aWNyb2NvZGVOdW1iZXIrKzsNCiAgICAgICAgICAgICAgIGdGaXRUYWJsZUNvbnRleHQuRml0RW50 cnlOdW1iZXIrKzsNCiANCiAgICAgICAgICAgICAgIE1pY3JvY29kZUJ1ZmZlciArPSBNaWNyb2Nv ZGVTaXplOw0KICAgICAgICAgICAgIH0NCisNCisgICAgICAgICAgICBpZiAoU2xvdFNpemUgIT0g MCkgew0KKyAgICAgICAgICAgICAgLy8vDQorICAgICAgICAgICAgICAvLy8gQ2hlY2sgd2hldGhl ciBlYWNoIHVDb2RlIGlzIGFsaWdubWVudCB3aXRoIFNsb3RTaXplIGJ5dGVzLg0KKyAgICAgICAg ICAgICAgLy8vDQorICAgICAgICAgICAgICBmb3IgKE1pY3JvY29kZUluZGV4ID0gMTsgTWljcm9j b2RlSW5kZXggPCAoSU5UTilnRml0VGFibGVDb250ZXh0Lk1pY3JvY29kZU51bWJlcjsgTWljcm9j b2RlSW5kZXgrKykgew0KKyAgICAgICAgICAgICAgICBpZiAoZ0ZpdFRhYmxlQ29udGV4dC5NaWNy b2NvZGVbTWljcm9jb2RlSW5kZXhdLkFkZHJlc3MgLSBnRml0VGFibGVDb250ZXh0Lk1pY3JvY29k ZVtNaWNyb2NvZGVJbmRleCAtIDFdLkFkZHJlc3MgIT0gU2xvdFNpemUpIHsNCisgICAgICAgICAg ICAgICAgICBwcmludGYgKCJ1Q29kZSBtdXN0IGJlIGZvbGxvdyBTbG90U2l6ZSglbHUpIGFsaWdu bWVudC5cbiIsIFNsb3RTaXplKTsNCisgICAgICAgICAgICAgICAgICBBU1NFUlQgKEZBTFNFKTsN CisgICAgICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgICAgfQ0KKw0KKyAgICAgICAgICAgICAg Ly8vDQorICAgICAgICAgICAgICAvLy8gQXNzdW1lIHRoZSBlbXB0eSBzcGFjZSBmb2xsb3dzIHRo ZSB1Q29kZSBhcnJheS4NCisgICAgICAgICAgICAgIC8vLw0KKyAgICAgICAgICAgICAgTWljcm9j b2RlQnVmZmVyID0gKFVJTlQ4ICopKGdGaXRUYWJsZUNvbnRleHQuTWljcm9jb2RlW2dGaXRUYWJs ZUNvbnRleHQuTWljcm9jb2RlTnVtYmVyIC0gMV0uQWRkcmVzcyAtIE1pY3JvY29kZUJhc2UgKyBN aWNyb2NvZGVGaWxlQnVmZmVyKTsNCisgICAgICAgICAgICAgIE1pY3JvY29kZUJ1ZmZlciArPSBT bG90U2l6ZTsNCisgICAgICAgICAgICAgIHdoaWxlIChNaWNyb2NvZGVCdWZmZXIgKyBTbG90U2l6 ZSA8PSBNaWNyb2NvZGVCdWZmZXJFbmQpIHsNCisgICAgICAgICAgICAgICAgZ0ZpdFRhYmxlQ29u dGV4dC5NaWNyb2NvZGVbZ0ZpdFRhYmxlQ29udGV4dC5NaWNyb2NvZGVOdW1iZXJdLlR5cGUgPSBG SVRfVEFCTEVfVFlQRV9NSUNST0NPREU7DQorICAgICAgICAgICAgICAgIGdGaXRUYWJsZUNvbnRl eHQuTWljcm9jb2RlW2dGaXRUYWJsZUNvbnRleHQuTWljcm9jb2RlTnVtYmVyXS5BZGRyZXNzID0g TWljcm9jb2RlQmFzZSArICgoVUlOVDMyKSAoVUlOVE4pIE1pY3JvY29kZUJ1ZmZlciAtIChVSU5U MzIpIChVSU5UTikgTWljcm9jb2RlRmlsZUJ1ZmZlcik7DQorICAgICAgICAgICAgICAgIGdGaXRU YWJsZUNvbnRleHQuTWljcm9jb2RlTnVtYmVyKys7DQorICAgICAgICAgICAgICAgIGdGaXRUYWJs ZUNvbnRleHQuRml0RW50cnlOdW1iZXIrKzsNCisNCisgICAgICAgICAgICAgICAgTWljcm9jb2Rl QnVmZmVyICs9IFNsb3RTaXplOw0KKyAgICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgIH0NCiAg ICAgICAgICAgfQ0KICAgICAgICAgICBicmVhazsNCiAgICAgICAgIGNhc2UgRklUX1RBQkxFX1RZ UEVfVFBNX1BPTElDWToNCkBAIC0xMDkxLDIwICsxMTU1LDIwIEBAIFJldHVybnM6CiAgIC8vDQog ICBkbyB7DQogICAgIGlmICgoSW5kZXggKyAxID49IGFyZ2MpIHx8DQotICAgICAgICAoKHN0cmNt cCAoYXJndltJbmRleF0sICItUyIpICE9IDApICYmDQotICAgICAgICAgKHN0cmNtcCAoYXJndltJ bmRleF0sICItcyIpICE9IDApKSApIHsNCisgICAgICAgICgoc3RyY21wIChhcmd2W0luZGV4XSwg Ii1BIikgIT0gMCkgJiYNCisgICAgICAgICAoc3RyY21wIChhcmd2W0luZGV4XSwgIi1hIikgIT0g MCkpICkgew0KICAgICAgIGlmIChCaW9zSW5mb0V4aXN0ICYmIChnRml0VGFibGVDb250ZXh0LlN0 YXJ0dXBBY20uVHlwZSA9PSBGSVRfVEFCTEVfVFlQRV9TVEFSVFVQX0FDTSkpIHsNCiAgICAgICAg IGJyZWFrOw0KICAgICAgIH0NCi0vLyAgICAgIEVycm9yIChOVUxMLCAwLCAwLCAiLVMgUGFyYW1l dGVyIGluY29ycmVjdCwgZXhwZWN0IC1TISIsIE5VTEwpOw0KKy8vICAgICAgRXJyb3IgKE5VTEws IDAsIDAsICItQSBQYXJhbWV0ZXIgaW5jb3JyZWN0LCBleHBlY3QgLUEhIiwgTlVMTCk7DQogLy8g ICAgICByZXR1cm4gMDsNCi0gICAgICBwcmludGYgKCItUyBub3QgZm91bmQuIFdBUk5JTkchXG4i KTsNCisgICAgICBwcmludGYgKCItQSBub3QgZm91bmQuIFdBUk5JTkchXG4iKTsNCiAgICAgICBi cmVhazsNCiAgICAgfQ0KICAgICBpZiAoSXNHdWlkRGF0YSAoYXJndltJbmRleCArIDFdLCAmR3Vp ZCkpIHsNCiAgICAgICBGaWxlQnVmZmVyID0gRmluZEZpbGVGcm9tRnZCeUd1aWQgKEZkQnVmZmVy LCBGZFNpemUsICZHdWlkLCAmRmlsZVNpemUpOw0KICAgICAgIGlmIChGaWxlQnVmZmVyID09IE5V TEwpIHsNCi0gICAgICAgIEVycm9yIChOVUxMLCAwLCAwLCAiLVMgUGFyYW1ldGVyIGluY29ycmVj dCwgR1VJRCBub3QgZm91bmQhIiwgIiVzIiwgYXJndltJbmRleCArIDFdKTsNCisgICAgICAgIEVy cm9yIChOVUxMLCAwLCAwLCAiLUEgUGFyYW1ldGVyIGluY29ycmVjdCwgR1VJRCBub3QgZm91bmQh IiwgIiVzIiwgYXJndltJbmRleCArIDFdKTsNCiAgICAgICAgIC8vIG5vdCBmb3VuZA0KICAgICAg ICAgcmV0dXJuIDA7DQogICAgICAgfQ0KQEAgLTExMTIsNyArMTE3Niw3IEBAIFJldHVybnM6CiAg ICAgICBJbmRleCArPSAyOw0KICAgICB9IGVsc2Ugew0KICAgICAgIGlmIChJbmRleCArIDIgPj0g YXJnYykgew0KLSAgICAgICAgRXJyb3IgKE5VTEwsIDAsIDAsICItUyBQYXJhbWV0ZXIgaW5jb3Jy ZWN0LCBleHBlY3QgQWRkcmVzcyBTaXplISIsIE5VTEwpOw0KKyAgICAgICAgRXJyb3IgKE5VTEws IDAsIDAsICItQSBQYXJhbWV0ZXIgaW5jb3JyZWN0LCBleHBlY3QgQWRkcmVzcyBTaXplISIsIE5V TEwpOw0KICAgICAgICAgcmV0dXJuIDA7DQogICAgICAgfQ0KICAgICAgIEZpbGVCdWZmZXIgPSAo VUlOVDggKikgKFVJTlROKSB4dG9pIChhcmd2W0luZGV4ICsgMV0pOw0KQEAgLTExMjAsNyArMTE4 NCw3IEBAIFJldHVybnM6CiAgICAgICBJbmRleCArPSAzOw0KICAgICB9DQogICAgIGlmIChnRml0 VGFibGVDb250ZXh0LlN0YXJ0dXBBY20uVHlwZSAhPSAwKSB7DQotICAgICAgRXJyb3IgKE5VTEws IDAsIDAsICItUyBQYXJhbWV0ZXIgaW5jb3JyZWN0LCBEdXBsaWNhdGVkIFN0YXJ0dXBBY20hIiwg TlVMTCk7DQorICAgICAgRXJyb3IgKE5VTEwsIDAsIDAsICItQSBQYXJhbWV0ZXIgaW5jb3JyZWN0 LCBEdXBsaWNhdGVkIFN0YXJ0dXBBY20hIiwgTlVMTCk7DQogICAgICAgcmV0dXJuIDA7DQogICAg IH0NCiAgICAgZ0ZpdFRhYmxlQ29udGV4dC5TdGFydHVwQWNtLlR5cGUgPSBGSVRfVEFCTEVfVFlQ RV9TVEFSVFVQX0FDTTsNCi0tIAoyLjE2LjIud2luZG93cy4xCgo= --_002_BN8PR11MB37465B8B54E4BD433F872DF882760BN8PR11MB3746namp_--