From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id A8C3F818CF for ; Wed, 28 Dec 2016 06:56:20 -0800 (PST) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga101.jf.intel.com with ESMTP; 28 Dec 2016 06:56:19 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,422,1477983600"; d="scan'208";a="44042160" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga004.jf.intel.com with ESMTP; 28 Dec 2016 06:56:20 -0800 Received: from fmsmsx101.amr.corp.intel.com (10.18.124.199) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 28 Dec 2016 06:56:20 -0800 Received: from fmsmsx103.amr.corp.intel.com ([169.254.2.47]) by fmsmsx101.amr.corp.intel.com ([169.254.1.198]) with mapi id 14.03.0248.002; Wed, 28 Dec 2016 06:56:19 -0800 From: "Carsey, Jaben" To: GN Keshava , "edk2-devel@lists.01.org" CC: "Carsey, Jaben" Thread-Topic: [edk2] LocateHandle for gEfiShellProtocolGuid is failing in my application Thread-Index: AQHSW1xqp2i/R8U88kW9Um+C39/gDKESuezQgAGDA4CAAAjHAP//65aggAFCDQCABwdoQIAA1ueAgAArfcA= Date: Wed, 28 Dec 2016 14:56:19 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZGZmNDNmOGMtYzU2MS00NWMzLThmNjMtYTZlODY0MjdiOGZkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6InNpVTZcL05FNTErUDZ2RlwvTDRQRWl2VUtkMndGd2Z2akZPSDR5Y21RcTR3ST0ifQ== x-ctpclassification: CTP_IC x-originating-ip: [10.1.200.108] MIME-Version: 1.0 Subject: Re: LocateHandle for gEfiShellProtocolGuid is failing in my application X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Dec 2016 14:56:20 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U2hlbGxCaW5Qa2cgc2hvdWxkIGJlIHRoZSByaWdodCBsb2NhdGlvbiB0byBnZXQgYSBVRUZJIFNo ZWxsIGZyb20gKGZvciB0aGUgcmVjb3JkIHRoZSBFZGtTaGVsbEJpblBrZyB3b3VsZCBiZSB0aGUg b2xkIHZlcnNpb24pLg0KDQpJZiB5b3UgZG8gInZlciAtcyIgdGhlIG91cnB1dCB3aWxsIHByb3Zp ZGUgYWRkaXRpb25hbCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzaGVsbCBpdHNlbGYu DQoNCkhhdmUgeW91IHVwZGF0ZWQgeW91ciBnaXQgdmVyc2lvbiByZWNlbnRseT8NCg0KLUphYmVu DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZWRrMi1kZXZlbCBbbWFp bHRvOmVkazItZGV2ZWwtYm91bmNlc0BsaXN0cy4wMS5vcmddIE9uIEJlaGFsZiBPZg0KPiBHTiBL ZXNoYXZhDQo+IFNlbnQ6IFR1ZXNkYXksIERlY2VtYmVyIDI3LCAyMDE2IDg6MTYgUE0NCj4gVG86 IENhcnNleSwgSmFiZW4gPGphYmVuLmNhcnNleUBpbnRlbC5jb20+OyBlZGsyLWRldmVsQGxpc3Rz LjAxLm9yZw0KPiBTdWJqZWN0OiBSZTogW2VkazJdIExvY2F0ZUhhbmRsZSBmb3IgZ0VmaVNoZWxs UHJvdG9jb2xHdWlkIGlzIGZhaWxpbmcgaW4gbXkNCj4gYXBwbGljYXRpb24NCj4gSW1wb3J0YW5j ZTogSGlnaA0KPiANCj4gVGhhbmtzIGEgbG90IGZvciB0aGUgaGVscCwgSmFiZW4uDQo+IA0KPiAq Pj5NYXliZSBpdCBpcyBFREsgU2hlbGwgYW5kIG5vdCBVRUZJIFNoZWxsPyoNCj4gSG93IEkgY2Fu IHVuZGVyc3RhbmQgaWYgaXQgaXMgRURLIHNoZWxsIG9yIFVFRkkgc2hlbGw/DQo+IChJJ20gdXNp bmcgKlVFRkkgeDg2IFNoZWxsICpvciAqTWluU2hlbGwgKmZyb20NCj4gZWZpXE15V29ya1NwYWNl XFNoZWxsQmluUGtnXA0KPiBkaXJlY3RvcnkpLiBJcyBpdCBPSyB0byB1c2UgdGhpcz8NCj4gSXMg aXQgcG9zc2libGUgZm9yIHlvdSB0byBnaXZlIG1lIGFuIFVFRkkgc2hlbGwgYmluYXJ5IGZvciB4 ODYgKEludGVsIGk1DQo+IDM0NzApLCBzbyB0aGF0IEkgY2FuIHRyeSBpdCByaWdodCBhd2F5Pw0K PiANCj4gKj4+SSB3b25kZXIgaWYgdGhlIGZpcm13YXJlIHN1cHBsaWVyIGlzIHVzaW5nIGFuIG9s ZGVyIHZlcnNpb24gb2YgdGhlIHNoZWxsDQo+IGJpbmFyeT8qDQo+IEZvciBJbnRlbCBpNSAzNDcw LCBob3cgdG8gY2hlY2sgd2hhdCBpcyB0aGUgZmlybXdhcmUgdmVyc2lvbj8NCj4gDQo+IFRoYW5r cyBhZ2Fpbi4NCj4gUmVnYXJkcywNCj4gS2VzaGF2YSBHTg0KPiANCj4gT24gV2VkLCAyOCBEZWMg MjAxNiBhdCAwNDo1OCBDYXJzZXksIEphYmVuIDxqYWJlbi5jYXJzZXlAaW50ZWwuY29tPg0KPiB3 cm90ZToNCj4gDQo+ID4gSSB3b25kZXIgaWYgdGhlIGZpcm13YXJlIHN1cHBsaWVyIGlzIHVzaW5n IGFuIG9sZGVyIHZlcnNpb24gb2YgdGhlIHNoZWxsDQo+ID4gYmluYXJ5PyAgTWF5YmUgaXQgaXMg RURLIFNoZWxsIGFuZCBub3QgVUVGSSBTaGVsbD8gIEkgYW0gdW5zdXJlIGhvdyB0byBmaXgNCj4g PiB0aGUgaXNzdWUuDQo+ID4NCj4gPiAtSmFiZW4NCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gPiA+IEZyb206IGVkazItZGV2ZWwgW21haWx0bzplZGsyLWRldmVsLWJv dW5jZXNAbGlzdHMuMDEub3JnXSBPbiBCZWhhbGYgT2YNCj4gPiA+IEdOIEtlc2hhdmENCj4gPiA+ IFNlbnQ6IFRodXJzZGF5LCBEZWNlbWJlciAyMiwgMjAxNiA4OjA3IFBNDQo+ID4gPiBUbzogQ2Fy c2V5LCBKYWJlbiA8amFiZW4uY2Fyc2V5QGludGVsLmNvbT47IGVkazItZGV2ZWxAbGlzdHMuMDEu b3JnDQo+ID4gPiBTdWJqZWN0OiBSZTogW2VkazJdIExvY2F0ZUhhbmRsZSBmb3IgZ0VmaVNoZWxs UHJvdG9jb2xHdWlkIGlzIGZhaWxpbmcgaW4NCj4gPiBteQ0KPiA+ID4gYXBwbGljYXRpb24NCj4g PiA+IEltcG9ydGFuY2U6IEhpZ2gNCj4gPiA+DQo+ID4gPiBIaSBKYWJlbiwNCj4gPiA+DQo+ID4g PiBWZXJzaW9uIGlzIDIuMzEuLi4gUmV2aXNpb24gaXMgNC42NTMNCj4gPiA+DQo+ID4gPiBUaGFu a3MuDQo+ID4gPiBSZWdhcmRzLA0KPiA+ID4gS2VzaGF2YQ0KPiA+ID4NCj4gPiA+IE9uIFRodSwg MjIgRGVjIDIwMTYgYXQgMjI6MjYgQ2Fyc2V5LCBKYWJlbiA8amFiZW4uY2Fyc2V5QGludGVsLmNv bT4NCj4gPiB3cm90ZToNCj4gPiA+DQo+ID4gPiA+IFRoYXQgZnVuY3Rpb24gaXMgbm90IGluIHRo ZSBzaGVsbCBsaWJyYXJ5Lg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBMb2Nh dGVIYW5kbGUgd291bGQgYmUgdXNlZnVsIGlzIHlvdSB3YW50ZWQgdG8gZmluZCB0aGUgaW1hZ2Ug aGFuZGxlDQo+IGZvcg0KPiA+ID4gPiB0aGUgc2hlbGwgYmluYXJ5IHdoZXJlYXMgTG9jYWV0UHJv dG9jb2wgd291bGQgYmUganVzdCBnZXR0aW5nIGENCj4gPiBwb2ludGVyIHRvDQo+ID4gPiA+IHRo ZSBwcm90b2NvbC4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gV2hpY2ggdmVy c2lvbiBvZiB0aGUgVUVGSSBTaGVsbCBhcmUgeW91IHVzaW5nPyAgKHdoYXQgZG9lcyDigJx2ZXLi gJ0NCj4gPiBjb21tYW5kDQo+ID4gPiA+IHNheSkNCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4N Cj4gPiA+ID4gLUphYmVuDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ICpGcm9t OiogR04gS2VzaGF2YSBbbWFpbHRvOmtlc2hhdmEuZ25AZ21haWwuY29tXQ0KPiA+ID4gPiAqU2Vu dDoqIFRodXJzZGF5LCBEZWNlbWJlciAyMiwgMjAxNiAyOjA3IEFNDQo+ID4gPiA+ICpUbzoqIENh cnNleSwgSmFiZW4gPGphYmVuLmNhcnNleUBpbnRlbC5jb20+OyBlZGsyLQ0KPiBkZXZlbEBsaXN0 cy4wMS5vcmcNCj4gPiA+ID4gKlN1YmplY3Q6KiBSZTogW2VkazJdIExvY2F0ZUhhbmRsZSBmb3Ig Z0VmaVNoZWxsUHJvdG9jb2xHdWlkIGlzIGZhaWxpbmcNCj4gPiA+ID4gaW4gbXkgYXBwbGljYXRp b24NCj4gPiA+ID4gKkltcG9ydGFuY2U6KiBIaWdoDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ DQo+ID4gPiA+IEhpIEphYmVuIGFuZCBBbmRyZXcsIFRoYW5rcyBmb3IgdGhlIHJlcGxpZXMuIEhl cmUncyBhIHNtYWxsIHVwZGF0ZS4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4g SSB0cmllZCB1c2luZyAqTG9jYXRlUHJvdG9jb2wqLCBhbmQgSSBnZXQgIipTdGF0dXMgTm90IEZv dW5kKiIgKCVyDQo+ID4gd291bGQNCj4gPiA+ID4gcHJpbnQgIlN0YXR1cyBOb3QgRm91bmQiKS4N Cj4gPiA+ID4NCj4gPiA+ID4gSSdtIGdldHRpbmcgdGhlIHNhbWUgZXJyb3Igc3RhdHVzIGZvciAq TG9jYXRlSGFuZGxlICp0b28uIEknbSB1c2luZw0KPiA+ID4gPiAqQnVmZmVyU2l6ZT0wKiBhbmQg KkJ1ZmZlcj1OVUxMKiBmb3IgZ2V0dGluZyB0aGUgQnVmZmVyU2l6ZS4NCj4gPiA+ID4NCj4gPiA+ ID4gV2hhdCB0aGlzIHdvdWxkIG1lYW4/IElzIHRoZXJlIGFueSBzcGVjaWZpYyByZXF1aXJlbWVu dCBteQ0KPiBhcHBsaWNhdGlvbg0KPiA+ID4gPiBzaG91bGQgbWVldCwgdG8gdXNlIFNoZWxsUHJv dG9jb2w/IE9yLCBhcyBJIG1lbnRpb25lZCBpbiBwcmV2aW91cw0KPiA+IG1haWwsIEkNCj4gPiA+ ID4gd2FudCB0byB1c2UgR2V0TWFwRnJvbURldmljZVBhdGggZnVuY3Rpb24uIElzIHRoZXJlIGFu eSBhbHRlcm5hdGUNCj4gd2F5DQo+ID4gPiB0byBkbw0KPiA+ID4gPiBpdD8NCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gVGhhbmtzIGZvciB5b3VyIGhlbHAuDQo+ID4gPiA+DQo+ ID4gPiA+IFJlZ2FyZHMsDQo+ID4gPiA+DQo+ID4gPiA+IEtlc2hhdmENCj4gPiA+ID4NCj4gPiA+ ID4NCj4gPiA+ID4NCj4gPiA+ID4gT24gVGh1LCAyMiBEZWMgMjAxNiBhdCAxNTowMSBHTiBLZXNo YXZhIDxrZXNoYXZhLmduQGdtYWlsLmNvbT4NCj4gd3JvdGU6DQo+ID4gPiA+DQo+ID4gPiA+IEhp IEphYmVuLA0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiAqPj4gSXMgdGhlcmUg YSByZWFzb24gdGhhdCB5b3UgYXJlIG5vdCB1c2luZyBTaGVsbExpYiB0byBmYWNpbGl0YXRlDQo+ ID4geW91cg0KPiA+ID4gPiBhcHAgZnVuY3Rpb25hbGl0eT8gIFRoYXQgbGlicmFyeSBtYWtlcyBs b3RzIG9mIHRoaW5ncyBhIGxvdCBlYXNpZXIuKg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0K PiA+ID4gPiBJIHdhbnQgdG8gdXNlIEVGSV9TSEVMTF9QUk9UT0NPTC0+KkdldE1hcEZyb21EZXZp Y2VQYXRoKiBpbiBteQ0KPiA+ID4gYXBwLiBJcw0KPiA+ID4gPiB0aGVyZSBhbnkgd2F5IHRvIHVz ZSBpdCB1c2luZyBTaGVsbExpYiA/DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ ICo+PiBXaHkgZG8geW91IHVzZSBMb2NhdGVIYW5kbGUgYW5kIG5vdCBMb2NhdGVQcm90b2NvbD8q DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IEdvdCBMb2NhdGVIYW5kbGUgaW4g bXkgcmVmZXJlbmNlLiBJIHdvdWxkIGxpa2UgdG8ga25vdyBtb3JlIGFib3V0DQo+ID4gPiA+IGRp ZmZlcmVuY2UgYW5kIHVzYWdlIG9mIHRoZXNlIGluIGRpZmZlcmVudCBzY2VuYXJpby4NCj4gPiA+ ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gKj4+IEFyZSB5b3UgcnVubmluZyB0aGUgVUVG SSBTaGVsbCBhbmQgdGhlbiB5b3VyIGFwcGxpY2F0aW9uPyoNCj4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID4gWWVzLiBJJ20gcnVubmluZyBteSBhcHBsaWNhdGlvbiBmcm9tIFVFRkkg c2hlbGwgYXMgOg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiAqZnMxOlw+IE15 QXBwLmV4ZSBBcmcxIEFyZzIqDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IFRo YW5rcyBmb3IgdGhlIGhlbHAuLg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBS ZWdhcmRzLA0KPiA+ID4gPg0KPiA+ID4gPiBLZXNoYXZhDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4g PiA+DQo+ID4gPiA+IE9uIFRodSwgMjIgRGVjIDIwMTYgYXQgMDA6MDYgQ2Fyc2V5LCBKYWJlbiA8 amFiZW4uY2Fyc2V5QGludGVsLmNvbT4NCj4gPiA+IHdyb3RlOg0KPiA+ID4gPg0KPiA+ID4gPiBI aSBLZXNoYXZhLA0KPiA+ID4gPg0KPiA+ID4gPiBmZXcgcXVlc3Rpb25zOg0KPiA+ID4gPiBJcyB0 aGVyZSBhIHJlYXNvbiB0aGF0IHlvdSBhcmUgbm90IHVzaW5nIFNoZWxsTGliIHRvIGZhY2lsaXRh dGUgeW91cg0KPiA+IGFwcA0KPiA+ID4gPiBmdW5jdGlvbmFsaXR5PyAgVGhhdCBsaWJyYXJ5IG1h a2VzIGxvdHMgb2YgdGhpbmdzIGEgbG90IGVhc2llci4NCj4gPiA+ID4gV2h5IGRvIHlvdSB1c2Ug TG9jYXRlSGFuZGxlIGFuZCBub3QgTG9jYXRlUHJvdG9jb2w/DQo+ID4gPiA+IEFyZSB5b3Ugc3Vy ZSBhYm91dCB0aGF0IHJldHVybiBjb2RlPyAgVXN1YWxseSBtb3N0LXNpZy1iaXQgaXMgc2V0IGZv cg0KPiA+ID4gPiBlcnJvciByZXR1cm5zLg0KPiA+ID4gPg0KPiA+ID4gPiBEb2VzIHRoZSBmb2xs b3dpbmcgc25pcHBldCBvZiBjb2RlIGZpbmQgYSB2YWxpZCBpbnN0YW5jZT8NCj4gPiA+ID4NCj4g PiA+ID4gICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2woDQo+ID4gPiA+ICAgICAgICZn RWZpU2hlbGxQcm90b2NvbEd1aWQsDQo+ID4gPiA+ICAgICAgIE5VTEwsDQo+ID4gPiA+ICAgICAg IChWT0lEICoqKSZnRWZpU2hlbGxQcm90b2NvbA0KPiA+ID4gPiAgICAgICk7DQo+ID4gPiA+ICAg ICBpZiAoRUZJX0VSUk9SKFN0YXR1cykpIHsNCj4gPiA+ID4gICAgICAgZ0VmaVNoZWxsUHJvdG9j b2wgPSBOVUxMOw0KPiA+ID4gPiAgICAgfQ0KPiA+ID4gPg0KPiA+ID4gPiBBcmUgeW91IHJ1bm5p bmcgdGhlIFVFRkkgU2hlbGwgYW5kIHRoZW4geW91ciBhcHBsaWNhdGlvbj8NCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID4gLUphYmVuDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ DQo+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiBGcm9tOiBl ZGsyLWRldmVsIFttYWlsdG86ZWRrMi1kZXZlbC1ib3VuY2VzQGxpc3RzLjAxLm9yZ10gT24NCj4g QmVoYWxmDQo+ID4gT2YNCj4gPiA+ID4gPiBHTiBLZXNoYXZhDQo+ID4gPiA+ID4gU2VudDogVHVl c2RheSwgRGVjZW1iZXIgMjAsIDIwMTYgMTE6MzIgUE0NCj4gPiA+ID4gPiBUbzogZWRrMi1kZXZl bEBsaXN0cy4wMS5vcmcNCj4gPiA+ID4gPiBTdWJqZWN0OiBbZWRrMl0gTG9jYXRlSGFuZGxlIGZv ciBnRWZpU2hlbGxQcm90b2NvbEd1aWQgaXMgZmFpbGluZyBpbg0KPiA+IG15DQo+ID4gPiA+ID4g YXBwbGljYXRpb24NCj4gPiA+ID4gPiBJbXBvcnRhbmNlOiBIaWdoDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiBIaSwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEknbSBkZXZlbG9waW5nIGEgc2hlbGwgYXBw bGljYXRpb24uIEEgY2FsbCB0byBMb2NhdGVIYW5kbGUgZm9yDQo+ID4gPiA+ID4gZ0VmaVNoZWxs UHJvdG9jb2xHdWlkIGlzIGZhaWxpbmcgd2l0aCBTdGF0dXMgMHgwRS4NCj4gPiA+ID4gPg0KPiA+ ID4gPiA+IEJlbG93IGlzIG15IGNvZGUuIFBsZWFzZSBsZXQgbWUga25vdyB3aGF0IEknbSBkb2lu ZyB3cm9uZy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IFN0YXR1cyA9IGdCUy0+TG9jYXRlSGFuZGxl KEJ5UHJvdG9jb2wsICZnRWZpU2hlbGxQcm90b2NvbEd1aWQsDQo+IE5VTEwsDQo+ID4gPiA+ID4g JkJ1ZmZlclNpemUsIEJ1ZmZlcik7IC8vIEdldCBCdWZmZXJTaXplDQo+ID4gPiA+ID4gaWYgKEVG SV9FUlJPUihTdGF0dXMpKQ0KPiA+ID4gPiA+IFByaW50KEwiTG9jYXRlSGFuZGxlIFN0YXR1cyAw eCV4XG4iLFN0YXR1cyk7DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBTdGF0dXMgPSBnQlMtPkFsbG9j YXRlUG9vbChFZmlCb290U2VydmljZXNEYXRhLCBCdWZmZXJTaXplLA0KPiA+ID4gPiA+ICh2b2lk KiopJkJ1ZmZlcik7DQo+ID4gPiA+ID4gaWYgKEVGSV9FUlJPUihTdGF0dXMpKQ0KPiA+ID4gPiA+ IFByaW50KEwiQWxsb2NhdGVQb29sIFN0YXR1cyAweCV4XG4iLFN0YXR1cyk7DQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiBTdGF0dXMgPSBnQlMtPkxvY2F0ZUhhbmRsZShCeVByb3RvY29sLCAmZ0VmaVNo ZWxsUHJvdG9jb2xHdWlkLA0KPiBOVUxMLA0KPiA+ID4gPiA+ICZCdWZmZXJTaXplLCBCdWZmZXIp Ow0KPiA+ID4gPiA+IGlmIChFRklfRVJST1IoU3RhdHVzKSkNCj4gPiA+ID4gPiBQcmludChMIkxv Y2F0ZUhhbmRsZSBTdGF0dXMgMHgleFxuIixTdGF0dXMpOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4g QWxsIGNhbGxzIGZhaWxpbmcgd2l0aCBTdGF0dXMgYmVpbmcgMHgwRS4gUGxlYXNlIGhlbHAgbWUg dG8gc29sdmUNCj4gPiB0aGlzLg0KPiA+ID4gPiBJcw0KPiA+ID4gPiA+IHRoZXJlIGFueSBzcGVj aWFsIHJlcXVpcmVtZW50IGZvciB1c2luZyB0aGlzIHByb3RvY29sPw0KPiA+ID4gPiA+DQo+ID4g PiA+ID4gVGhhbmtzLg0KPiA+ID4gPiA+IFJlZ2FyZHMsDQo+ID4gPiA+ID4gS2VzaGF2YQ0KPiA+ ID4gPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+ ID4gPiA+ID4gZWRrMi1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gPiA+ID4gPiBlZGsyLWRldmVsQGxp c3RzLjAxLm9yZw0KPiA+ID4gPiA+IGh0dHBzOi8vbGlzdHMuMDEub3JnL21haWxtYW4vbGlzdGlu Zm8vZWRrMi1kZXZlbA0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gPiA+IGVkazItZGV2ZWwgbWFpbGluZyBs aXN0DQo+ID4gPiBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+ID4gaHR0cHM6Ly9saXN0cy4w MS5vcmcvbWFpbG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQo+ID4NCj4gX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gZWRrMi1kZXZlbCBtYWlsaW5nIGxp c3QNCj4gZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmcNCj4gaHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFp bG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQo=