From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web11.8035.1603457094418335364 for ; Fri, 23 Oct 2020 05:44:54 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=O49VIBth; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: hao.a.wu@intel.com) IronPort-SDR: FV3SHtVSTaFM8yK0MArodhLTES7qrHqF9Ol4yb7vjrKnUyHwSmPomkVBnnXWZDfoYr8QVsL2ko nrrKRL0HC+1g== X-IronPort-AV: E=McAfee;i="6000,8403,9782"; a="229303307" X-IronPort-AV: E=Sophos;i="5.77,408,1596524400"; d="scan'208";a="229303307" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Oct 2020 05:44:48 -0700 IronPort-SDR: kAXRYpZ74o+6LEixAItYPQvscXJ+tcgOjYAmg12WS2mlzR9gH1LeCNVaFO4vdLVsbf+GQLILsD /QswMeycOfVw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,408,1596524400"; d="scan'208";a="349188558" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga004.fm.intel.com with ESMTP; 23 Oct 2020 05:44:46 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Fri, 23 Oct 2020 05:44:46 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Fri, 23 Oct 2020 05:44:46 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.174) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Fri, 23 Oct 2020 05:44:45 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aVERlytqn1Sv9sVzGhThZhkTx0zTgMohR6l7C/AbwKtsCqPyokwVtfMVFsuejRIUgy1buLjq2TILEtWEKaOZGoBbtw+1Qr45pWWqFmJKdTcZvxYgHRR/Bink98Tok2e0Hmcq371rkwKV61RqMPi8br6RxL+XtYm4jwac2HiFZgPH0XdgK10LZIyyPKHuS0v5mihr9elM5FpgS9LMJu2kNVS1c2Dym2W9KXD/g7HHyf0jAxIDhmtLQAPchzT5MSTdcJDYaaWegKvzdoAR0cCkgpAqIKuUIbQy9ipECGkcVb1sZfSWsb1VG7wq64r4ktKhYNFbZjwyNZJc7VqSuM+8aA== 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=ShyV51TnJem8mD6ulO27dUo+N2omHFbePkrLrkrwH5o=; b=ldq27hV1DRwBFfp+CydIrY2HfZi+dh0IUf7KEMSIvzsFmSFqVlAvdxWlA0XZKvpV6zvh/LFu5O/kV1GOXHexfedhNpnlWffycMRVnuAF2CRvXvVs9zYLaMoDJbu8wU3EiQx3isrN3K/aq9s77VtK3/Dp5wYiruldeRAvFqytIptebFM7uExGNWsIOlfm7mxanuMuTC6yJ1majk++AP2jZmJBqFD/yUfiIoaI5SJo5CJcduDqzMGQo/maJPEc2+M1141b/fh2Mz/1OnEXMZcmn1upWprIm9zljodYrG1oYAF5xy7RVV8qMAWoiJ0o0gACYBWVLpvF/Hrz/XivBkcn2A== 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=ShyV51TnJem8mD6ulO27dUo+N2omHFbePkrLrkrwH5o=; b=O49VIBthqiWrgea5wW9nsWUYxd4pay/W4nD6iG4HVHP15Z1XHY+gDMI93VLTymCXn/LWsistTWja+pd7nb4auMgYqLChX2/DKibv+5TKXC26c1X/0kcWruuNMpYTobgr2jYbjyqh5un9GVaemFMtG56TufOmwy74KGMbzG55W34= Received: from BN8PR11MB3666.namprd11.prod.outlook.com (2603:10b6:408:8c::19) by BN6PR1101MB2099.namprd11.prod.outlook.com (2603:10b6:405:57::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3477.20; Fri, 23 Oct 2020 12:44:44 +0000 Received: from BN8PR11MB3666.namprd11.prod.outlook.com ([fe80::c123:faac:1da3:f807]) by BN8PR11MB3666.namprd11.prod.outlook.com ([fe80::c123:faac:1da3:f807%5]) with mapi id 15.20.3477.028; Fri, 23 Oct 2020 12:44:44 +0000 From: "Wu, Hao A" To: Jon Hunter , "Luo, Heng" , "devel@edk2.groups.io" , "jbrasen@nvidia.com" CC: "Ni, Ray" Subject: Re: [Patch V4] MdeModulePkg/XhciDxe: Error handle for USB slot initialization failure Thread-Topic: [Patch V4] MdeModulePkg/XhciDxe: Error handle for USB slot initialization failure Thread-Index: AQHWqNzNbZrJG2y2g0Cdw6qUODc26amkfPUwgAB09QCAADA2kA== Date: Fri, 23 Oct 2020 12:44:44 +0000 Message-ID: References: <20201023012611.4808-1-heng.luo@intel.com> <0aa621c2-e20d-67a0-e2b8-2ef205410f7d@nvidia.com> In-Reply-To: <0aa621c2-e20d-67a0-e2b8-2ef205410f7d@nvidia.com> Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: nvidia.com; dkim=none (message not signed) header.d=none;nvidia.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.218] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e0cd7ad1-ea92-4e4b-017e-08d877516b28 x-ms-traffictypediagnostic: BN6PR1101MB2099: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TmujUR+Vc73s6iA8f2ICzutijap3plPun85gdR6ESdnplrGZtoLiNYysc1ll7KRirzsgqvSZqVp5hmK81u+WPXjnjhmEn35aBbolO1KohNHfbnn9HbIin77RJgNeEi3CX9jG564v+HV8MI9xuY2wP/visdzugnF8QvjuoN7jd76yBldZ9hi9MxTicfHoXw+bwQsvCoSvFrq5NE0ecnk01KZOj+8jho/voKXrIYQZeC257vX5m+UmVIyL++Ztq5Yt/3/1RnKBmvRDFuQQuumWfE9VoB/klmLWMKESHZaCCtsnSEgXpa2Tr3BlOEJmU1uZuTZFW/aDi2SxA41HppRvOaYDRey/ZWntkhJxH9BNe+MSONTI29ZnoRlYWHgTJY9KV/k4Sb9irfoVYi983uxGkA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN8PR11MB3666.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(376002)(396003)(39860400002)(366004)(136003)(478600001)(33656002)(6506007)(66476007)(66556008)(107886003)(186003)(8936002)(71200400001)(4326008)(53546011)(26005)(66446008)(64756008)(76116006)(19627235002)(7696005)(66946007)(83380400001)(110136005)(9686003)(8676002)(966005)(316002)(55016002)(45080400002)(2906002)(5660300002)(52536014)(86362001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: RKXOeLp7c3LA4mGXju/8SiYrDZgPKo5H7IqswMgM4NVc2BlUdJX6mZ/E3OqY8qAz1CICPpNcji0cDwp9/nIWHL6OQgii/KzC2VrsV/l/EupKVHA+ECmEbgQ8p8NCXwfeCPLMK4gcFTjtf45WfGfPOjM+DDCuMmhtNwwBWyQu4or5HrHmbGoZ4+zisTDP8GDYs6LPzJkkEYhSDBcp1qJdPH1t5ltjyu7gzsGMN1HwSNqbf7IE2cFsdDGlm79qi3Vx5/DvkBbWI0wRa3t/Nhn90/joXL/wGJQ+Y18zr5aX8e07CKkULepEo15lrCIhOO3HFCsdh+Rg2IoySyn0RUgZTEIfXp6erEkssX02hmKVj9ofhySwiBqRK9+9BHeNLdYfYJeUQWvM2BOJjTHmlxNGjp7at9XFe+u9BdjRfjhoY+Tw40HzJp7Ebq97OBX+E/Gr4W5ugK1GOFvwA2fNW30ighjjCQlv6J11vN3JCPxS8Z954sZKlPCYnPDIK1J79phRaOquNdKeIBzSAopiVCvgjQOSNgpVdxP987RPqm2jeLIgvgHAuictk0pUCSo6VWltT8anMBsFn84rpLj/fPCPg/zkud1N4ENDqDpsRtkfNH0KuPHgGPqj80lRa/ptn+aAX5glWuM5L1yNtgYyOBv7ww== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN8PR11MB3666.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e0cd7ad1-ea92-4e4b-017e-08d877516b28 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2020 12:44:44.5026 (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: 4fV4fRdLjsBk/dI+kYYvSDizsFU9DCja0VKb3xYONxmDnM2UwAxvtsVXXARuSM3d9Uw2eR5Ilk9/A8G8lNh3WQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1101MB2099 Return-Path: hao.a.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGVsbG8gSm9uLA0KDQpUaGFua3MgZm9yIHRoZSB0ZXN0aW5nIGVmZm9ydC4NCklmIHlvdSBwYXRj aCBpcyBub3QgdXJnZW50LCBjb3VsZCB5b3UgaG9sZCB5b3VyIHYyIHBhdGNoIHVudGlsIEkgbWVy Z2UgSGVuZydzDQpwYXRjaCBpbnRvIHRoZSBjb2RlYmFzZT8NCg0KSSB3aWxsIGRvIGl0IGVhcmx5 IG5leHQgd2VlayBhbmQgd2lsbCBpbmZvcm0geW91IGFzIHNvb24gYXMgaXQgaXMgZG9uZS4NCkRv ZXMgaXQgc291bmQgZ29vZCB0byB5b3U/IFNvcnJ5IGZvciB0aGUgaW5jb252ZW5pZW5jZS4NCg0K QmVzdCBSZWdhcmRzLA0KSGFvIFd1DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g RnJvbTogSm9uIEh1bnRlciA8am9uYXRoYW5oQG52aWRpYS5jb20+DQo+IFNlbnQ6IEZyaWRheSwg T2N0b2JlciAyMywgMjAyMCA1OjUwIFBNDQo+IFRvOiBXdSwgSGFvIEEgPGhhby5hLnd1QGludGVs LmNvbT47IEx1bywgSGVuZyA8aGVuZy5sdW9AaW50ZWwuY29tPjsNCj4gZGV2ZWxAZWRrMi5ncm91 cHMuaW87IGpicmFzZW5AbnZpZGlhLmNvbQ0KPiBDYzogTmksIFJheSA8cmF5Lm5pQGludGVsLmNv bT4NCj4gU3ViamVjdDogUmU6IFtQYXRjaCBWNF0gTWRlTW9kdWxlUGtnL1hoY2lEeGU6IEVycm9y IGhhbmRsZSBmb3IgVVNCIHNsb3QNCj4gaW5pdGlhbGl6YXRpb24gZmFpbHVyZQ0KPiANCj4gSGkg SGFvLA0KPiANCj4gVGhhbmtzLiBZZXMgdGhpcyB3b3JrcyB3aXRoIG15IHBhdGNoLiBJIHdpbGwg c2VuZCBvdXQgYSBWMiBmb3IgbXkgcGF0Y2ggc2hvcnRseS4NCj4gRm9yIHRoaXMgcGF0Y2ggeW91 IGNhbiBhZGQgbXkgLi4uDQo+IA0KPiBUZXN0ZWQtYnk6IEpvbiBIdW50ZXIgPGpvbmF0aGFuaEBu dmlkaWEuY29tPg0KPiBSZXZpZXdlZC1ieTogSm9uIEh1bnRlciA8am9uYXRoYW5oQG52aWRpYS5j b20+DQo+IA0KPiBDaGVlcnMNCj4gSm9uDQo+IA0KPiBPbiAyMy8xMC8yMDIwIDAzOjUyLCBXdSwg SGFvIEEgd3JvdGU6DQo+ID4gSGVsbG8gSm9uLA0KPiA+DQo+ID4gQ291bGQgeW91IGhlbHAgdG8g Y2hlY2sgb2YgdGhpcyB2ZXJzaW9uIHdpbGwgY28td29yayB3aXRoIHlvdXIgcGF0Y2g/DQo+ID4g VGhhbmtzIGluIGFkdmFuY2UuDQo+ID4NCj4gPiBCZXN0IFJlZ2FyZHMsDQo+ID4gSGFvIFd1DQo+ ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogTHVvLCBIZW5n IDxoZW5nLmx1b0BpbnRlbC5jb20+DQo+ID4+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciAyMywgMjAy MCA5OjI2IEFNDQo+ID4+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+PiBDYzogTmksIFJh eSA8cmF5Lm5pQGludGVsLmNvbT47IFd1LCBIYW8gQSA8aGFvLmEud3VAaW50ZWwuY29tPg0KPiA+ PiBTdWJqZWN0OiBbUGF0Y2ggVjRdIE1kZU1vZHVsZVBrZy9YaGNpRHhlOiBFcnJvciBoYW5kbGUg Zm9yIFVTQiBzbG90DQo+ID4+IGluaXRpYWxpemF0aW9uIGZhaWx1cmUNCj4gPj4NCj4gPj4gUkVG OiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTMwMDcNCj4g Pj4NCj4gPj4gQ3VycmVudGx5IFVzYkRldkNvbnRleHQgaXMgbm90IGNsZWFuZWQgdXAgaWYgVVNC IHNsb3QgaW5pdGlhbGl6YXRpb24NCj4gPj4gaXMgZmFpbGVkLCB0aGUgd3JvbmcgY29udGV4dCBk YXRhIHdpbGwgYWZmZWN0IG5leHQgVVNCIGRldmljZXMgYW5kDQo+ID4+IHRoZSBVU0IgZGV2aWNl cyBjYW4gbm90IGJlIGVudW1lcmF0ZWQuDQo+ID4+IE5lZWQgdG8gZGlzYWJsZSBzbG90IGlmIFVT QiBzbG90IGluaXRpYWxpemF0aW9uIGlzIGZhaWxlZC4NCj4gPj4NCj4gPj4gQmVsb3cgdGVzdCBj YXNlcyBhcmUgcGFzc2VkIG9uIFVwWHRyZW1lOg0KPiA+PiBhLiBVU0IgMy4wIHRodW1iIGRyaXZl cyBjYW4gYmUgcmVjb2duaXplZCBpbiBVRUZJIHNoZWxsIGIuIFNVVCBjYW4NCj4gPj4gYm9vdCB0 byBQdXBweWxpbnV4ICBmcm9tIFVTQjMuMCBtYXNzIHN0b3JhZ2UsICB0aGUgc3RvcmFnZSBjYW4g YmUNCj4gPj4gcmVjb2duaXplZCBpbiBsaW51eCBjLiBQbHVnIGluIGEgVVNCICBrZXlib2FyZCAo aG90IHBsdWcpIGFuZA0KPiA+PiBlbnVtZXJhdGlvbiBpcyBPSyAgaW4gVUVGSSBzaGVsbCBhbmQg bGludXggZC4gUGx1ZyBpbiBhIFVTQiBtb3VzZShob3QNCj4gPj4gcGx1ZykgYW5kIGVudW1lcmF0 aW9uIGlzIE9LIGluIGxpbnV4Lg0KPiA+Pg0KPiA+PiBDYzogUmF5IE5pIDxyYXkubmlAaW50ZWwu Y29tPg0KPiA+PiBDYzogSGFvIEEgV3UgPGhhby5hLnd1QGludGVsLmNvbT4NCj4gPj4gU2lnbmVk LW9mZi1ieTogSGVuZyBMdW8gPGhlbmcubHVvQGludGVsLmNvbT4NCj4gPj4gLS0tDQo+ID4+ICBN ZGVNb2R1bGVQa2cvQnVzL1BjaS9YaGNpRHhlL1hoY2lTY2hlZC5jIHwgOSArKysrKysrKy0NCj4g Pj4gIDEgZmlsZSBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCj4gPj4N Cj4gPj4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9CdXMvUGNpL1hoY2lEeGUvWGhjaVNjaGVk LmMNCj4gPj4gYi9NZGVNb2R1bGVQa2cvQnVzL1BjaS9YaGNpRHhlL1hoY2lTY2hlZC5jDQo+ID4+ IGluZGV4IDljYjExNTM2M2MuLjAwZTljYzYzZDYgMTAwNjQ0DQo+ID4+IC0tLSBhL01kZU1vZHVs ZVBrZy9CdXMvUGNpL1hoY2lEeGUvWGhjaVNjaGVkLmMNCj4gPj4gKysrIGIvTWRlTW9kdWxlUGtn L0J1cy9QY2kvWGhjaUR4ZS9YaGNpU2NoZWQuYw0KPiA+PiBAQCAtMiw3ICsyLDcgQEANCj4gPj4g ICAgIFhIQ0kgdHJhbnNmZXIgc2NoZWR1bGluZyByb3V0aW5lcy4gLUNvcHlyaWdodCAoYykgMjAx MSAtIDIwMTgsDQo+ID4+IEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxC Uj4rQ29weXJpZ2h0IChjKSAyMDExIC0NCj4gPj4gMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFs bCByaWdodHMgcmVzZXJ2ZWQuPEJSPiBDb3B5cmlnaHQgKGMpDQo+ID4+IE1pY3Jvc29mdCBDb3Jw b3JhdGlvbi48QlI+IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOg0KPiA+PiBCU0QtMi1DbGF1c2Ut UGF0ZW50IEBAIC0yMjc5LDYNCj4gPj4gKzIyNzksOSBAQCBYaGNJbml0aWFsaXplRGV2aWNlU2xv dCAoDQo+ID4+ICAgICAgRGV2aWNlQWRkcmVzcyA9IChVSU5UOCkgKChERVZJQ0VfQ09OVEVYVCAq KSBPdXRwdXRDb250ZXh0KS0NCj4gPj4+IFNsb3QuRGV2aWNlQWRkcmVzczsgICAgIERFQlVHICgo RUZJX0RfSU5GTywgIiAgICBBZGRyZXNzICVkIGFzc2lnbmVkDQo+ID4+IHN1Y2Nlc3NmdWxseVxu IiwgRGV2aWNlQWRkcmVzcykpOyAgICAgWGhjLQ0KPiA+Pj4gVXNiRGV2Q29udGV4dFtTbG90SWRd LlhoY2lEZXZBZGRyID0gRGV2aWNlQWRkcmVzczsrICB9IGVsc2UgeysgICAgREVCVUcNCj4gPj4g KChERUJVR19JTkZPLCAiICAgIEFkZHJlc3MgJWQgYXNzaWduZWQgdW5zdWNjZXNzZnVsbHlcbiIp KTsrDQo+ID4+IFhoY0Rpc2FibGVTbG90Q21kIChYaGMsIFNsb3RJZCk7ICAgfSAgICByZXR1cm4g U3RhdHVzO0BAIC0yNDg5LDcgKzI0OTIsMTENCj4gQEANCj4gPj4gWGhjSW5pdGlhbGl6ZURldmlj ZVNsb3Q2NCAoDQo+ID4+ICAgICAgRGV2aWNlQWRkcmVzcyA9IChVSU5UOCkgKChERVZJQ0VfQ09O VEVYVF82NCAqKSBPdXRwdXRDb250ZXh0KS0NCj4gPj4+IFNsb3QuRGV2aWNlQWRkcmVzczsgICAg IERFQlVHICgoRUZJX0RfSU5GTywgIiAgICBBZGRyZXNzICVkIGFzc2lnbmVkDQo+ID4+IHN1Y2Nl c3NmdWxseVxuIiwgRGV2aWNlQWRkcmVzcykpOyAgICAgWGhjLQ0KPiA+Pj4gVXNiRGV2Q29udGV4 dFtTbG90SWRdLlhoY2lEZXZBZGRyID0gRGV2aWNlQWRkcmVzczsrICB9IGVsc2UgeysgICAgREVC VUcNCj4gPj4gKChERUJVR19JTkZPLCAiICAgIEFkZHJlc3MgJWQgYXNzaWduZWQgdW5zdWNjZXNz ZnVsbHlcbiIpKTsrDQo+ID4+IFhoY0Rpc2FibGVTbG90Q21kNjQgKFhoYywgU2xvdElkKTsgICB9 KyAgIHJldHVybiBTdGF0dXM7IH0gLS0NCj4gPj4gMi4yNC4wLndpbmRvd3MuMg0KPiA+DQo+IA0K PiAtLQ0KPiBudnB1YmxpYw0K