From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) (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 754AF81EAA for ; Tue, 22 Nov 2016 23:51:36 -0800 (PST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP; 22 Nov 2016 23:51:36 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,537,1473145200"; d="scan'208";a="789809713" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by FMSMGA003.fm.intel.com with ESMTP; 22 Nov 2016 23:51:35 -0800 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.248.2; Tue, 22 Nov 2016 23:51:35 -0800 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.239]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.239]) with mapi id 14.03.0248.002; Wed, 23 Nov 2016 15:51:33 +0800 From: "Gao, Liming" To: "Bi, Dandan" , "edk2-devel@lists.01.org" CC: "Dong, Eric" , "Yao, Jiewen" Thread-Topic: [patch] MdeModulePkg/DriverSample: Remove the password related codes Thread-Index: AQHSQJTJ6kduK4KghE23PKR0Sv/cX6DmO4Nw Date: Wed, 23 Nov 2016 07:51:33 +0000 Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14B4B8881@shsmsx102.ccr.corp.intel.com> References: <1479361077-48532-1-git-send-email-dandan.bi@intel.com> In-Reply-To: <1479361077-48532-1-git-send-email-dandan.bi@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [patch] MdeModulePkg/DriverSample: Remove the password related codes 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, 23 Nov 2016 07:51:36 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 RGFuZGFuOg0KICBQbGVhc2UgYWxzbyByZW1vdmUgUGFzc3dvcmRTdGF0ZSB1c2FnZSBpbiBNZGVN b2R1bGVQa2cvRHJpdmVyU2FtcGxlLiBJdCBpcyBub3QgdXNlZCBhbnkgbW9yZS4gDQoNCj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQmksIERhbmRhbg0KPiBTZW50OiBUaHVy c2RheSwgTm92ZW1iZXIgMTcsIDIwMTYgMTozOCBQTQ0KPiBUbzogZWRrMi1kZXZlbEBsaXN0cy4w MS5vcmcNCj4gQ2M6IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IERvbmcsIEVy aWMgPGVyaWMuZG9uZ0BpbnRlbC5jb20+Ow0KPiBZYW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRl bC5jb20+DQo+IFN1YmplY3Q6IFtwYXRjaF0gTWRlTW9kdWxlUGtnL0RyaXZlclNhbXBsZTogUmVt b3ZlIHRoZSBwYXNzd29yZA0KPiByZWxhdGVkIGNvZGVzDQo+IA0KPiBJbiBjdXJyZW50IERyaXZl clNhbXBsZUR4ZSwgdGhlIHNhbXBsZSBjb2RlIG9mIHBhc3N3b3JkIGlzDQo+IG5vdCBhIGdvb2Qg ZXhhbXBsZSwgc28gcmVtb3ZlIGl0IG5vdy4NCj4gDQo+IENjOiBMaW1pbmcgR2FvIDxsaW1pbmcu Z2FvQGludGVsLmNvbT4NCj4gQ2M6IEVyaWMgRG9uZyA8ZXJpYy5kb25nQGludGVsLmNvbT4NCj4g Q2M6IEppZXdlbiBZYW8gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPiBDb250cmlidXRlZC11bmRl cjogVGlhbm9Db3JlIENvbnRyaWJ1dGlvbiBBZ3JlZW1lbnQgMS4wDQo+IFNpZ25lZC1vZmYtYnk6 IERhbmRhbiBCaSA8ZGFuZGFuLmJpQGludGVsLmNvbT4NCj4gLS0tDQo+ICAuLi4vVW5pdmVyc2Fs L0RyaXZlclNhbXBsZUR4ZS9Ecml2ZXJTYW1wbGUuYyAgICAgICB8IDI2MSAtLS0tLS0tLS0tLS0t LS0tLS0tLS0NCj4gIC4uLi9Vbml2ZXJzYWwvRHJpdmVyU2FtcGxlRHhlL05WRGF0YVN0cnVjLmgg ICAgICAgIHwgICAyIC0NCj4gIE1kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvRHJpdmVyU2FtcGxlRHhl L1Zmci52ZnIgICAgIHwgIDIwIC0tDQo+ICAuLi4vVW5pdmVyc2FsL0RyaXZlclNhbXBsZUR4ZS9W ZnJTdHJpbmdzLnVuaSAgICAgICB8ICAgOCAtDQo+ICA0IGZpbGVzIGNoYW5nZWQsIDI5MSBkZWxl dGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL0RyaXZl clNhbXBsZUR4ZS9Ecml2ZXJTYW1wbGUuYw0KPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvRHJp dmVyU2FtcGxlRHhlL0RyaXZlclNhbXBsZS5jDQo+IGluZGV4IDNjNDk0ZTMuLmZkOGQwZGYgMTAw NjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvRHJpdmVyU2FtcGxlRHhlL0RyaXZl clNhbXBsZS5jDQo+ICsrKyBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvRHJpdmVyU2FtcGxlRHhl L0RyaXZlclNhbXBsZS5jDQo+IEBAIC0yNTksMjM3ICsyNTksMTAgQEAgSW50ZXJuYWxTdG9wTW9u aXRvcigNCj4gICAgICB9DQo+ICAgIH0NCj4gICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KPiAgfQ0K PiANCj4gLQ0KPiAtLyoqDQo+IC0gIEVuY29kZSB0aGUgcGFzc3dvcmQgdXNpbmcgYSBzaW1wbGUg YWxnb3JpdGhtLg0KPiAtDQo+IC0gIEBwYXJhbSBQYXNzd29yZCBUaGUgc3RyaW5nIHRvIGJlIGVu Y29kZWQuDQo+IC0gIEBwYXJhbSBNYXhTaXplICBUaGUgc2l6ZSBvZiB0aGUgc3RyaW5nLg0KPiAt DQo+IC0qKi8NCj4gLVZPSUQNCj4gLUVuY29kZVBhc3N3b3JkICgNCj4gLSAgSU4gIENIQVIxNiAg ICAgICAgICAgICAgICAgICAgICAqUGFzc3dvcmQsDQo+IC0gIElOICBVSU5UTiAgICAgICAgICAg ICAgICAgICAgICAgTWF4U2l6ZQ0KPiAtICApDQo+IC17DQo+IC0gIFVJTlROICAgSW5kZXg7DQo+ IC0gIFVJTlROICAgTG9vcDsNCj4gLSAgQ0hBUjE2ICAqQnVmZmVyOw0KPiAtICBDSEFSMTYgICpL ZXk7DQo+IC0NCj4gLSAgS2V5ICAgICA9IEwiTUFSMTA2NDg1NjciOw0KPiAtICBCdWZmZXIgID0g QWxsb2NhdGVaZXJvUG9vbCAoTWF4U2l6ZSk7DQo+IC0gIEFTU0VSVCAoQnVmZmVyICE9IE5VTEwp Ow0KPiAtDQo+IC0gIGZvciAoSW5kZXggPSAwOyBLZXlbSW5kZXhdICE9IDA7IEluZGV4KyspIHsN Cj4gLSAgICBmb3IgKExvb3AgPSAwOyBMb29wIDwgKFVJTlQ4KSAoTWF4U2l6ZSAvIDIpOyBMb29w KyspIHsNCj4gLSAgICAgIEJ1ZmZlcltMb29wXSA9IChDSEFSMTYpIChQYXNzd29yZFtMb29wXSBe IEtleVtJbmRleF0pOw0KPiAtICAgIH0NCj4gLSAgfQ0KPiAtDQo+IC0gIENvcHlNZW0gKFBhc3N3 b3JkLCBCdWZmZXIsIE1heFNpemUpOw0KPiAtDQo+IC0gIEZyZWVQb29sIChCdWZmZXIpOw0KPiAt ICByZXR1cm4gOw0KPiAtfQ0KPiAtDQo+IC0vKioNCj4gLSAgVmFsaWRhdGUgdGhlIHVzZXIncyBw YXNzd29yZC4NCj4gLQ0KPiAtICBAcGFyYW0gUHJpdmF0ZURhdGEgVGhpcyBkcml2ZXIncyBwcml2 YXRlIGNvbnRleHQgZGF0YS4NCj4gLSAgQHBhcmFtIFN0cmluZ0lkICAgIFRoZSB1c2VyJ3MgaW5w dXQuDQo+IC0NCj4gLSAgQHJldHZhbCBFRklfU1VDQ0VTUyAgIFRoZSB1c2VyJ3MgaW5wdXQgbWF0 Y2hlcyB0aGUgcGFzc3dvcmQuDQo+IC0gIEByZXR2YWwgRUZJX05PVF9SRUFEWSBUaGUgdXNlcidz IGlucHV0IGRvZXMgbm90IG1hdGNoIHRoZSBwYXNzd29yZC4NCj4gLSoqLw0KPiAtRUZJX1NUQVRV Uw0KPiAtVmFsaWRhdGVQYXNzd29yZCAoDQo+IC0gIElOICAgICAgIERSSVZFUl9TQU1QTEVfUFJJ VkFURV9EQVRBICAgICAgKlByaXZhdGVEYXRhLA0KPiAtICBJTiAgICAgICBFRklfU1RSSU5HX0lE ICAgICAgICAgICAgICAgICAgIFN0cmluZ0lkDQo+IC0gICkNCj4gLXsNCj4gLSAgRUZJX1NUQVRV UyAgICAgICAgICAgICAgICAgICAgICBTdGF0dXM7DQo+IC0gIFVJTlROICAgICAgICAgICAgICAg ICAgICAgICAgICAgSW5kZXg7DQo+IC0gIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAgICAg QnVmZmVyU2l6ZTsNCj4gLSAgVUlOVE4gICAgICAgICAgICAgICAgICAgICAgICAgICBQYXNzd29y ZE1heFNpemU7DQo+IC0gIENIQVIxNiAgICAgICAgICAgICAgICAgICAgICAgICAgKlBhc3N3b3Jk Ow0KPiAtICBDSEFSMTYgICAgICAgICAgICAgICAgICAgICAgICAgICpFbmNvZGVkUGFzc3dvcmQ7 DQo+IC0gIEJPT0xFQU4gICAgICAgICAgICAgICAgICAgICAgICAgT2xkUGFzc3dvcmQ7DQo+IC0N Cj4gLSAgLy8NCj4gLSAgLy8gR2V0IGVuY29kZWQgcGFzc3dvcmQgZmlyc3QNCj4gLSAgLy8NCj4g LSAgQnVmZmVyU2l6ZSA9IHNpemVvZiAoRFJJVkVSX1NBTVBMRV9DT05GSUdVUkFUSU9OKTsNCj4g LSAgU3RhdHVzID0gZ1JULT5HZXRWYXJpYWJsZSAoDQo+IC0gICAgICAgICAgICAgICAgICBWYXJp YWJsZU5hbWUsDQo+IC0gICAgICAgICAgICAgICAgICAmZ0RyaXZlclNhbXBsZUZvcm1TZXRHdWlk LA0KPiAtICAgICAgICAgICAgICAgICAgTlVMTCwNCj4gLSAgICAgICAgICAgICAgICAgICZCdWZm ZXJTaXplLA0KPiAtICAgICAgICAgICAgICAgICAgJlByaXZhdGVEYXRhLT5Db25maWd1cmF0aW9u DQo+IC0gICAgICAgICAgICAgICAgICApOw0KPiAtICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7 DQo+IC0gICAgLy8NCj4gLSAgICAvLyBPbGQgcGFzc3dvcmQgbm90IGV4aXN0LCBwcm9tcHQgZm9y IG5ldyBwYXNzd29yZA0KPiAtICAgIC8vDQo+IC0gICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KPiAt ICB9DQo+IC0NCj4gLSAgT2xkUGFzc3dvcmQgPSBGQUxTRTsNCj4gLSAgUGFzc3dvcmRNYXhTaXpl ID0gc2l6ZW9mIChQcml2YXRlRGF0YS0NCj4gPkNvbmZpZ3VyYXRpb24uV2hhdElzVGhlUGFzc3dv cmQyKTsNCj4gLSAgLy8NCj4gLSAgLy8gQ2hlY2sgd2hldGhlciB3ZSBoYXZlIGFueSBvbGQgcGFz c3dvcmQgc2V0DQo+IC0gIC8vDQo+IC0gIGZvciAoSW5kZXggPSAwOyBJbmRleCA8IFBhc3N3b3Jk TWF4U2l6ZSAvIHNpemVvZiAoVUlOVDE2KTsgSW5kZXgrKykgew0KPiAtICAgIGlmIChQcml2YXRl RGF0YS0+Q29uZmlndXJhdGlvbi5XaGF0SXNUaGVQYXNzd29yZDJbSW5kZXhdICE9IDApIHsNCj4g LSAgICAgIE9sZFBhc3N3b3JkID0gVFJVRTsNCj4gLSAgICAgIGJyZWFrOw0KPiAtICAgIH0NCj4g LSAgfQ0KPiAtICBpZiAoIU9sZFBhc3N3b3JkKSB7DQo+IC0gICAgLy8NCj4gLSAgICAvLyBPbGQg cGFzc3dvcmQgbm90IGV4aXN0LCByZXR1cm4gRUZJX1NVQ0NFU1MgdG8gcHJvbXB0IGZvciBuZXcN Cj4gcGFzc3dvcmQNCj4gLSAgICAvLw0KPiAtICAgIHJldHVybiBFRklfU1VDQ0VTUzsNCj4gLSAg fQ0KPiAtDQo+IC0gIC8vDQo+IC0gIC8vIEdldCB1c2VyIGlucHV0IHBhc3N3b3JkDQo+IC0gIC8v DQo+IC0gIFBhc3N3b3JkID0gSGlpR2V0U3RyaW5nIChQcml2YXRlRGF0YS0+SGlpSGFuZGxlWzBd LCBTdHJpbmdJZCwgTlVMTCk7DQo+IC0gIGlmIChQYXNzd29yZCA9PSBOVUxMKSB7DQo+IC0gICAg cmV0dXJuIEVGSV9OT1RfUkVBRFk7DQo+IC0gIH0NCj4gLSAgaWYgKFN0clNpemUgKFBhc3N3b3Jk KSA+IFBhc3N3b3JkTWF4U2l6ZSkgew0KPiAtICAgIEZyZWVQb29sIChQYXNzd29yZCk7DQo+IC0g ICAgcmV0dXJuIEVGSV9OT1RfUkVBRFk7DQo+IC0gIH0NCj4gLQ0KPiAtICAvLw0KPiAtICAvLyBW YWxpZGF0ZSBvbGQgcGFzc3dvcmQNCj4gLSAgLy8NCj4gLSAgRW5jb2RlZFBhc3N3b3JkID0gQWxs b2NhdGVaZXJvUG9vbCAoUGFzc3dvcmRNYXhTaXplKTsNCj4gLSAgQVNTRVJUIChFbmNvZGVkUGFz c3dvcmQgIT0gTlVMTCk7DQo+IC0gIFN0cm5DcHlTIChFbmNvZGVkUGFzc3dvcmQsIFBhc3N3b3Jk TWF4U2l6ZSAvIHNpemVvZiAoQ0hBUjE2KSwNCj4gUGFzc3dvcmQsIFN0ckxlbiAoUGFzc3dvcmQp KTsNCj4gLSAgRW5jb2RlUGFzc3dvcmQgKEVuY29kZWRQYXNzd29yZCwgU3RyTGVuIChFbmNvZGVk UGFzc3dvcmQpICogc2l6ZW9mDQo+IChDSEFSMTYpKTsNCj4gLSAgaWYgKENvbXBhcmVNZW0gKEVu Y29kZWRQYXNzd29yZCwgUHJpdmF0ZURhdGEtDQo+ID5Db25maWd1cmF0aW9uLldoYXRJc1RoZVBh c3N3b3JkMiwgUGFzc3dvcmRNYXhTaXplKSAhPSAwKSB7DQo+IC0gICAgLy8NCj4gLSAgICAvLyBP bGQgcGFzc3dvcmQgbWlzbWF0Y2gsIHJldHVybiBFRklfTk9UX1JFQURZIHRvIHByb21wdCBmb3Ig ZXJyb3INCj4gbWVzc2FnZQ0KPiAtICAgIC8vDQo+IC0gICAgU3RhdHVzID0gRUZJX05PVF9SRUFE WTsNCj4gLSAgfSBlbHNlIHsNCj4gLSAgICBTdGF0dXMgPSBFRklfU1VDQ0VTUzsNCj4gLSAgfQ0K PiAtDQo+IC0gIEZyZWVQb29sIChQYXNzd29yZCk7DQo+IC0gIEZyZWVQb29sIChFbmNvZGVkUGFz c3dvcmQpOw0KPiAtDQo+IC0gIHJldHVybiBTdGF0dXM7DQo+IC19DQo+IC0NCj4gLS8qKg0KPiAt ICBFbmNvZGUgdGhlIHBhc3N3b3JkIHVzaW5nIGEgc2ltcGxlIGFsZ29yaXRobS4NCj4gLQ0KPiAt ICBAcGFyYW0gUHJpdmF0ZURhdGEgVGhpcyBkcml2ZXIncyBwcml2YXRlIGNvbnRleHQgZGF0YS4N Cj4gLSAgQHBhcmFtIFN0cmluZ0lkICAgIFRoZSBwYXNzd29yZCBmcm9tIFVzZXIuDQo+IC0NCj4g LSAgQHJldHZhbCAgRUZJX1NVQ0VTUyBUaGUgb3BlcmF0aW9uIGlzIHN1Y2Nlc3NmdWwuDQo+IC0g IEByZXR1cm4gIE90aGVyIHZhbHVlIGlmIGdSVC0+U2V0VmFyaWFibGUgKCkgZmFpbHMuDQo+IC0N Cj4gLSoqLw0KPiAtRUZJX1NUQVRVUw0KPiAtU2V0UGFzc3dvcmQgKA0KPiAtICBJTiBEUklWRVJf U0FNUExFX1BSSVZBVEVfREFUQSAgICAgICpQcml2YXRlRGF0YSwNCj4gLSAgSU4gRUZJX1NUUklO R19JRCAgICAgICAgICAgICAgICAgICBTdHJpbmdJZA0KPiAtICApDQo+IC17DQo+IC0gIEVGSV9T VEFUVVMgICAgICAgICAgICAgICAgICAgICAgU3RhdHVzOw0KPiAtICBDSEFSMTYgICAgICAgICAg ICAgICAgICAgICAgICAgICpQYXNzd29yZDsNCj4gLSAgQ0hBUjE2ICAgICAgICAgICAgICAgICAg ICAgICAgICAqVGVtcFBhc3N3b3JkOw0KPiAtICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAg ICAgIFBhc3N3b3JkU2l6ZTsNCj4gLSAgRFJJVkVSX1NBTVBMRV9DT05GSUdVUkFUSU9OICAgICAq Q29uZmlndXJhdGlvbjsNCj4gLSAgVUlOVE4gICAgICAgICAgICAgICAgICAgICAgICAgICBCdWZm ZXJTaXplOw0KPiAtDQo+IC0gIC8vDQo+IC0gIC8vIEdldCBCdWZmZXIgU3RvcmFnZSBkYXRhIGZy b20gRUZJIHZhcmlhYmxlDQo+IC0gIC8vDQo+IC0gIEJ1ZmZlclNpemUgPSBzaXplb2YgKERSSVZF Ul9TQU1QTEVfQ09ORklHVVJBVElPTik7DQo+IC0gIFN0YXR1cyA9IGdSVC0+R2V0VmFyaWFibGUg KA0KPiAtICAgICAgICAgICAgICAgICAgVmFyaWFibGVOYW1lLA0KPiAtICAgICAgICAgICAgICAg ICAgJmdEcml2ZXJTYW1wbGVGb3JtU2V0R3VpZCwNCj4gLSAgICAgICAgICAgICAgICAgIE5VTEws DQo+IC0gICAgICAgICAgICAgICAgICAmQnVmZmVyU2l6ZSwNCj4gLSAgICAgICAgICAgICAgICAg ICZQcml2YXRlRGF0YS0+Q29uZmlndXJhdGlvbg0KPiAtICAgICAgICAgICAgICAgICAgKTsNCj4g LSAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiAtICAgIHJldHVybiBTdGF0dXM7DQo+IC0g IH0NCj4gLQ0KPiAtICAvLw0KPiAtICAvLyBHZXQgdXNlciBpbnB1dCBwYXNzd29yZA0KPiAtICAv Lw0KPiAtICBQYXNzd29yZCA9IFByaXZhdGVEYXRhLT5Db25maWd1cmF0aW9uLldoYXRJc1RoZVBh c3N3b3JkMjsNCj4gLSAgUGFzc3dvcmRTaXplID0gc2l6ZW9mIChQcml2YXRlRGF0YS0+Q29uZmln dXJhdGlvbi5XaGF0SXNUaGVQYXNzd29yZDIpOw0KPiAtICBaZXJvTWVtIChQYXNzd29yZCwgUGFz c3dvcmRTaXplKTsNCj4gLQ0KPiAtICBUZW1wUGFzc3dvcmQgPSBIaWlHZXRTdHJpbmcgKFByaXZh dGVEYXRhLT5IaWlIYW5kbGVbMF0sIFN0cmluZ0lkLCBOVUxMKTsNCj4gLSAgaWYgKFRlbXBQYXNz d29yZCA9PSBOVUxMKSB7DQo+IC0gICAgcmV0dXJuIEVGSV9OT1RfUkVBRFk7DQo+IC0gIH0NCj4g LSAgaWYgKFN0clNpemUgKFRlbXBQYXNzd29yZCkgPiBQYXNzd29yZFNpemUpIHsNCj4gLSAgICBG cmVlUG9vbCAoVGVtcFBhc3N3b3JkKTsNCj4gLSAgICByZXR1cm4gRUZJX05PVF9SRUFEWTsNCj4g LSAgfQ0KPiAtICBTdHJuQ3B5UyAoUGFzc3dvcmQsIFBhc3N3b3JkU2l6ZSAvIHNpemVvZiAoQ0hB UjE2KSwgVGVtcFBhc3N3b3JkLA0KPiBTdHJMZW4gKFRlbXBQYXNzd29yZCkpOw0KPiAtICBGcmVl UG9vbCAoVGVtcFBhc3N3b3JkKTsNCj4gLQ0KPiAtICAvLw0KPiAtICAvLyBSZXRyaWV2ZSB1bmNv bW1pdHRlZCBkYXRhIGZyb20gQnJvd3Nlcg0KPiAtICAvLw0KPiAtICBDb25maWd1cmF0aW9uID0g QWxsb2NhdGVaZXJvUG9vbCAoc2l6ZW9mDQo+IChEUklWRVJfU0FNUExFX0NPTkZJR1VSQVRJT04p KTsNCj4gLSAgQVNTRVJUIChDb25maWd1cmF0aW9uICE9IE5VTEwpOw0KPiAtICBpZiAoSGlpR2V0 QnJvd3NlckRhdGEgKCZnRHJpdmVyU2FtcGxlRm9ybVNldEd1aWQsIFZhcmlhYmxlTmFtZSwgc2l6 ZW9mDQo+IChEUklWRVJfU0FNUExFX0NPTkZJR1VSQVRJT04pLCAoVUlOVDggKikgQ29uZmlndXJh dGlvbikpIHsNCj4gLSAgICAvLw0KPiAtICAgIC8vIFVwZGF0ZSBwYXNzd29yZCdzIGNsZWFyIHRl eHQgaW4gdGhlIHNjcmVlbg0KPiAtICAgIC8vDQo+IC0gICAgQ29weU1lbSAoQ29uZmlndXJhdGlv bi0+UGFzc3dvcmRDbGVhclRleHQsIFBhc3N3b3JkLCBTdHJTaXplDQo+IChQYXNzd29yZCkpOw0K PiAtDQo+IC0gICAgLy8NCj4gLSAgICAvLyBVcGRhdGUgdW5jb21taXR0ZWQgZGF0YSBvZiBCcm93 c2VyDQo+IC0gICAgLy8NCj4gLSAgICBIaWlTZXRCcm93c2VyRGF0YSAoDQo+IC0gICAgICAgJmdE cml2ZXJTYW1wbGVGb3JtU2V0R3VpZCwNCj4gLSAgICAgICBWYXJpYWJsZU5hbWUsDQo+IC0gICAg ICAgc2l6ZW9mIChEUklWRVJfU0FNUExFX0NPTkZJR1VSQVRJT04pLA0KPiAtICAgICAgIChVSU5U OCAqKSBDb25maWd1cmF0aW9uLA0KPiAtICAgICAgIE5VTEwNCj4gLSAgICAgICApOw0KPiAtICB9 DQo+IC0NCj4gLSAgLy8NCj4gLSAgLy8gRnJlZSBDb25maWd1cmF0aW9uIEJ1ZmZlcg0KPiAtICAv Lw0KPiAtICBGcmVlUG9vbCAoQ29uZmlndXJhdGlvbik7DQo+IC0NCj4gLQ0KPiAtICAvLw0KPiAt ICAvLyBTZXQgcGFzc3dvcmQNCj4gLSAgLy8NCj4gLSAgRW5jb2RlUGFzc3dvcmQgKFBhc3N3b3Jk LCBTdHJMZW4gKFBhc3N3b3JkKSAqIDIpOw0KPiAtICBTdGF0dXMgPSBnUlQtPlNldFZhcmlhYmxl KA0KPiAtICAgICAgICAgICAgICAgICAgVmFyaWFibGVOYW1lLA0KPiAtICAgICAgICAgICAgICAg ICAgJmdEcml2ZXJTYW1wbGVGb3JtU2V0R3VpZCwNCj4gLSAgICAgICAgICAgICAgICAgIEVGSV9W QVJJQUJMRV9OT05fVk9MQVRJTEUgfA0KPiBFRklfVkFSSUFCTEVfQk9PVFNFUlZJQ0VfQUNDRVNT LA0KPiAtICAgICAgICAgICAgICAgICAgc2l6ZW9mIChEUklWRVJfU0FNUExFX0NPTkZJR1VSQVRJ T04pLA0KPiAtICAgICAgICAgICAgICAgICAgJlByaXZhdGVEYXRhLT5Db25maWd1cmF0aW9uDQo+ IC0gICAgICAgICAgICAgICAgICApOw0KPiAtICByZXR1cm4gU3RhdHVzOw0KPiAtfQ0KPiAtDQo+ ICAvKioNCj4gICBVcGRhdGUgbmFtZXMgb2YgTmFtZS9WYWx1ZSBzdG9yYWdlIHRvIGN1cnJlbnQg bGFuZ3VhZ2UuDQo+IA0KPiAgIEBwYXJhbSBQcml2YXRlRGF0YSAgIFBvaW50cyB0byB0aGUgZHJp dmVyIHByaXZhdGUgZGF0YS4NCj4gDQo+IEBAIC0xNzI2LDQ0ICsxNDk5LDEwIEBAIERyaXZlckNh bGxiYWNrICgNCj4gICAgICAgIEhpaUZyZWVPcENvZGVIYW5kbGUgKFN0YXJ0T3BDb2RlSGFuZGxl KTsNCj4gICAgICAgIEhpaUZyZWVPcENvZGVIYW5kbGUgKE9wdGlvbnNPcENvZGVIYW5kbGUpOw0K PiAgICAgICAgSGlpRnJlZU9wQ29kZUhhbmRsZSAoRW5kT3BDb2RlSGFuZGxlKTsNCj4gICAgICAg IGJyZWFrOw0KPiANCj4gLSAgICBjYXNlIDB4MjAwMDoNCj4gLSAgICAgIC8vDQo+IC0gICAgICAv LyBPbmx5IHVzZWQgdG8gdXBkYXRlIHRoZSBzdGF0ZS4NCj4gLSAgICAgIC8vDQo+IC0gICAgICBp ZiAoKFR5cGUgPT0gRUZJX0lGUl9UWVBFX1NUUklORykgJiYgKFZhbHVlLT5zdHJpbmcgPT0gMCkg JiYNCj4gLSAgICAgICAgKFByaXZhdGVEYXRhLT5QYXNzd29yZFN0YXRlID09IEJST1dTRVJfU1RB VEVfU0VUX1BBU1NXT1JEKSkgew0KPiAtICAgICAgICBQcml2YXRlRGF0YS0+UGFzc3dvcmRTdGF0 ZSA9DQo+IEJST1dTRVJfU1RBVEVfVkFMSURBVEVfUEFTU1dPUkQ7DQo+IC0gICAgICAgIHJldHVy biBFRklfSU5WQUxJRF9QQVJBTUVURVI7DQo+IC0gICAgICB9DQo+IC0NCj4gLSAgICAgIC8vDQo+ IC0gICAgICAvLyBXaGVuIHRyeSB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIHVzZXIgd2lsbCBiZSBj aGFubGxlZ2VkIHdpdGggb2xkDQo+IHBhc3N3b3JkLg0KPiAtICAgICAgLy8gVGhlIENhbGxiYWNr IGlzIHJlc3BvbnNpYmxlIGZvciB2YWxpZGF0aW5nIG9sZCBwYXNzd29yZCBpbnB1dCBieSB1c2Vy LA0KPiAtICAgICAgLy8gSWYgQ2FsbGJhY2sgcmV0dXJuIEVGSV9TVUNDRVNTLCBpdCBpbmRpY2F0 ZXMgdmFsaWRhdGlvbiBwYXNzLg0KPiAtICAgICAgLy8NCj4gLSAgICAgIHN3aXRjaCAoUHJpdmF0 ZURhdGEtPlBhc3N3b3JkU3RhdGUpIHsNCj4gLSAgICAgIGNhc2UgQlJPV1NFUl9TVEFURV9WQUxJ REFURV9QQVNTV09SRDoNCj4gLSAgICAgICAgU3RhdHVzID0gVmFsaWRhdGVQYXNzd29yZCAoUHJp dmF0ZURhdGEsIFZhbHVlLT5zdHJpbmcpOw0KPiAtICAgICAgICBpZiAoU3RhdHVzID09IEVGSV9T VUNDRVNTKSB7DQo+IC0gICAgICAgICAgUHJpdmF0ZURhdGEtPlBhc3N3b3JkU3RhdGUgPSBCUk9X U0VSX1NUQVRFX1NFVF9QQVNTV09SRDsNCj4gLSAgICAgICAgfQ0KPiAtICAgICAgICBicmVhazsN Cj4gLQ0KPiAtICAgICAgY2FzZSBCUk9XU0VSX1NUQVRFX1NFVF9QQVNTV09SRDoNCj4gLSAgICAg ICAgU3RhdHVzID0gU2V0UGFzc3dvcmQgKFByaXZhdGVEYXRhLCBWYWx1ZS0+c3RyaW5nKTsNCj4g LSAgICAgICAgUHJpdmF0ZURhdGEtPlBhc3N3b3JkU3RhdGUgPQ0KPiBCUk9XU0VSX1NUQVRFX1ZB TElEQVRFX1BBU1NXT1JEOw0KPiAtICAgICAgICBicmVhazsNCj4gLQ0KPiAtICAgICAgZGVmYXVs dDoNCj4gLSAgICAgICAgYnJlYWs7DQo+IC0gICAgICB9DQo+IC0NCj4gLSAgICAgIGJyZWFrOw0K PiAtDQo+ICAgICAgZGVmYXVsdDoNCj4gICAgICAgIGJyZWFrOw0KPiAgICAgIH0NCj4gICAgfQ0K PiAgICBicmVhazsNCj4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvRHJpdmVy U2FtcGxlRHhlL05WRGF0YVN0cnVjLmgNCj4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL0RyaXZl clNhbXBsZUR4ZS9OVkRhdGFTdHJ1Yy5oDQo+IGluZGV4IDNkZmFjY2EuLjE5NWNjOGEgMTAwNjQ0 DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvRHJpdmVyU2FtcGxlRHhlL05WRGF0YVN0 cnVjLmgNCj4gKysrIGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9Ecml2ZXJTYW1wbGVEeGUvTlZE YXRhU3RydWMuaA0KPiBAQCAtMzIsMTMgKzMyLDExIEBAIFJldmlzaW9uIEhpc3Rvcnk6DQo+IA0K PiAgI2RlZmluZSBDT05GSUdVUkFUSU9OX1ZBUlNUT1JFX0lEICAgIDB4MTIzNA0KPiANCj4gICNw cmFnbWEgcGFjaygxKQ0KPiAgdHlwZWRlZiBzdHJ1Y3Qgew0KPiAtICBVSU5UMTYgIFdoYXRJc1Ro ZVBhc3N3b3JkMlsyMF07DQo+ICAgIFVJTlQxNiAgTXlTdHJpbmdEYXRhWzQwXTsNCj4gLSAgVUlO VDE2ICBQYXNzd29yZENsZWFyVGV4dFsyMF07DQo+ICAgIFVJTlQxNiAgU29tZXRoaW5nSGlkZGVu Rm9ySHRtbDsNCj4gICAgVUlOVDggICBIb3dPbGRBcmVZb3VJblllYXJzTWFudWFsOw0KPiAgICBV SU5UMTYgIEhvd1RhbGxBcmVZb3VNYW51YWw7DQo+ICAgIFVJTlQ4ICAgSG93T2xkQXJlWW91SW5Z ZWFyczsNCj4gICAgVUlOVDE2ICBIb3dUYWxsQXJlWW91Ow0KPiBkaWZmIC0tZ2l0IGEvTWRlTW9k dWxlUGtnL1VuaXZlcnNhbC9Ecml2ZXJTYW1wbGVEeGUvVmZyLnZmcg0KPiBiL01kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvRHJpdmVyU2FtcGxlRHhlL1Zmci52ZnINCj4gaW5kZXggZmU5YTQ0OS4uNGJk YWY3NiAxMDA2NDQNCj4gLS0tIGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9Ecml2ZXJTYW1wbGVE eGUvVmZyLnZmcg0KPiArKysgYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL0RyaXZlclNhbXBsZUR4 ZS9WZnIudmZyDQo+IEBAIC00NTYsMzAgKzQ1NiwxMCBAQCBmb3Jtc2V0DQo+ICAgICAgICBkZWZh dWx0c3RvcmUgPSBNeU1hbnVmYWN0dXJlRGVmYXVsdCwNCj4gICAgICAgIHByb21wdCAgID0gU1RS SU5HX1RPS0VOKFNUUl9NQU5VRkFDVFVSRV9ERUZBVUxUX1BST01QVCksDQo+ICAgICAgICBoZWxw ICAgICA9IFNUUklOR19UT0tFTihTVFJfTUFOVUZBQ1RVUkVfREVGQVVMVF9IRUxQKSwNCj4gICAg ICBlbmRyZXNldGJ1dHRvbjsNCj4gDQo+IC0gICAgc3RyaW5nICAgIHZhcmlkICAgID0gTXlJZnJO VkRhdGEuUGFzc3dvcmRDbGVhclRleHQsDQo+IC0gICAgICAgICAgICAgIHByb21wdCAgID0gU1RS SU5HX1RPS0VOKFNUUl9NWV9TVFJJTkdfUFJPTVBUKSwNCj4gLSAgICAgICAgICAgICAgaGVscCAg ICAgPSBTVFJJTkdfVE9LRU4oU1RSX01ZX1NUUklOR19IRUxQKSwNCj4gLSAgICAgICAgICAgICAg bWluc2l6ZSAgPSA2LA0KPiAtICAgICAgICAgICAgICBtYXhzaXplICA9IDB4MTQsDQo+IC0gICAg ICAgICAgICAgIGRlZmF1bHQgID0gU1RSSU5HX1RPS0VOKFNUUl9NWV9TVFJJTkdfREVGQVVMVCks DQo+IC0gICAgZW5kc3RyaW5nOw0KPiAtDQo+IC0gICAgLy8NCj4gLSAgICAvLyBJbnRlcmFjdGl2 ZSBwYXNzd29yZCwgdmFsaWRhdGUgdmlhIENvbmZpZ0FjY2Vzcy5DYWxsYmFjaygpDQo+IC0gICAg Ly8NCj4gLSAgICBwYXNzd29yZCAgdmFyaWQgICAgPSBNeUlmck5WRGF0YS5XaGF0SXNUaGVQYXNz d29yZDIsDQo+IC0gICAgICAgICAgICAgIHByb21wdCAgID0gU1RSSU5HX1RPS0VOKFNUUl9QQVNT V09SRF9DQUxMQkFDS19QUk9NUFQpLA0KPiAtICAgICAgICAgICAgICBoZWxwICAgICA9IFNUUklO R19UT0tFTihTVFJfUEFTU1dPUkRfSEVMUCksDQo+IC0gICAgICAgICAgICAgIGZsYWdzICAgID0g SU5URVJBQ1RJVkUsDQo+IC0gICAgICAgICAgICAgIGtleSAgICAgID0gMHgyMDAwLA0KPiAtICAg ICAgICAgICAgICBtaW5zaXplICA9IDYsDQo+IC0gICAgICAgICAgICAgIG1heHNpemUgID0gMjAs DQo+IC0gICAgZW5kcGFzc3dvcmQ7DQo+IC0NCj4gICAgICAvLw0KPiAgICAgIC8vIFNhbXBsZSB1 c2UgY2FzZSBmb3IgSUZSIFNlY3VyaXR5IG9wLWNvZGUNCj4gICAgICAvLw0KPiAgICAgIGdyYXlv dXRpZiBOT1Qgc2VjdXJpdHkgKEVGSV9VU0VSX0lORk9fQUNDRVNTX1NFVFVQX0FETUlOX0dVSUQp Ow0KPiAgICAgICAgdGV4dA0KPiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9E cml2ZXJTYW1wbGVEeGUvVmZyU3RyaW5ncy51bmkNCj4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2Fs L0RyaXZlclNhbXBsZUR4ZS9WZnJTdHJpbmdzLnVuaQ0KPiBpbmRleCA4ZDQ0NDhjLi44ZDI0YTQ3 IDEwMDY0NA0KPiAtLS0gYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL0RyaXZlclNhbXBsZUR4ZS9W ZnJTdHJpbmdzLnVuaQ0KPiArKysgYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL0RyaXZlclNhbXBs ZUR4ZS9WZnJTdHJpbmdzLnVuaQ0KPiBAQCAtMTA5LDE2ICsxMDksMTIgQEANCj4gICNzdHJpbmcg U1RSX05VTUVSSUNfSEVMUDIgICAgICAgICAgICAgICNsYW5ndWFnZSBlbi1VUyAiVGhpcyBpcyB0 aGUgaGVscCBmb3INCj4gdGhvc2Ugd2hvIGFyZSB0b28gb2xkIHRvIHVuZGVyc3RhbmQgdGhlIHF1 ZXN0aW9uLiBBZGp1c3QgaG93IG9sZCB5b3UgYXJlDQo+IHN0ZXAgYnkgc3RlcC4gIFRoZSB2YWxp ZCByYW5nZSBpbiB0aGlzIGNhc2UgaXMgZnJvbSAwIHRvIDI0MyBpbiBzdGVwIG9mIDEuICBMZXQn cw0KPiBzZWUgaWYgeW91IGFjdHVhbGx5IHJlYWQgdGhpcyBoZWxwIGFuZCBmaWd1cmUgdGhhdCBv dXQuIg0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2xhbmd1YWdl IGZyLUZSICJUaGlzIGlzIHRoZSBoZWxwIGZvciB0aG9zZSB3aG8gYXJlIHRvbw0KPiBvbGQgdG8g dW5kZXJzdGFuZCB0aGUgcXVlc3Rpb24uIEFkanVzdCBob3cgb2xkIHlvdSBhcmUgc3RlcCBieSBz dGVwLiAgVGhlDQo+IHZhbGlkIHJhbmdlIGluIHRoaXMgY2FzZSBpcyBmcm9tIDAgdG8gMjQzIGlu IHN0ZXAgb2YgMS4gIExldCdzIHNlZSBpZiB5b3UgYWN0dWFsbHkNCj4gcmVhZCB0aGlzIGhlbHAg YW5kIGZpZ3VyZSB0aGF0IG91dC4iDQo+ICAjc3RyaW5nIFNUUl9OVU1FUklDX0hFTFAzICAgICAg ICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIlRoaXMgaXMgdGhlIGhlbHAgZm9yDQo+IHRob3NlIHdo byBhcmUgY3VyaW91cyBhYm91dCBib2R5IGhlaWdodC4gVHlwZSBob3cgdGFsbCB5b3UgYXJlIGlu IGEgbnVtZXJpYw0KPiB2YWx1ZS4gIFRoZSB2YWxpZCByYW5nZSBpbiB0aGlzIGNhc2UgaXMgZnJv bSAwIHRvIDE5MC4gIExldCdzIHNlZSBpZiB5b3UgYWN0dWFsbHkNCj4gcmVhZCB0aGlzIGhlbHAg YW5kIGZpZ3VyZSB0aGF0IG91dC4iDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAjbGFuZ3VhZ2UgZnItRlIgIsOJc3RhIGVzIGxhIGF5dWRhIHBhcmEgbG9zIHF1ZSBz ZWFuDQo+IGRlbWFzaWFkbyB2aWVqb3MgZW50ZW5kZXIgbGEgcHJlZ3VudGEuIFB1bHNlIGPDs21v IGVzIHZpZWpvIHVzdGVkIGVzdMOhIGVuDQo+IGHDsW9zLiINCj4gDQo+IC0jc3RyaW5nIFNUUl9Q QVNTV09SRF9DQUxMQkFDS19QUk9NUFQgICAjbGFuZ3VhZ2UgZW4tVVMgIlNldCB0aGUNCj4gc3lz dGVtIHBhc3N3b3JkIC0gSW50ZXJhY3RpdmUiDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAjbGFuZ3VhZ2UgZnItRlIgIkN1w6FsIGVzIGxhIHBhbGFicmEgbcOhZ2lj YT8gLSBJbnRlcmFjdGl2ZSINCj4gICNzdHJpbmcgU1RSX1BBU1NXT1JEX1BST01QVCAgICAgICAg ICAgICNsYW5ndWFnZSBlbi1VUyAiU2V0IHRoZSBzeXN0ZW0NCj4gcGFzc3dvcmQiDQo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjbGFuZ3VhZ2UgZnItRlIgIkN1w6Fs IGVzIGxhIHBhbGFicmEgbcOhZ2ljYT8iDQo+IC0jc3RyaW5nIFNUUl9QQVNTV09SRF9IRUxQICAg ICAgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIlRoaXMgaXMgYSBzeXN0ZW0NCj4gcGFzc3dvcmQg d2hpY2ggd2lsbCBsaWtlbHkgYmUgdXNlZCBieSB0aGUgQkRTIGFyY2hpdGVjdHVyZSBpbiBpdHMg cGxhdGZvcm0NCj4gcG9ydGlvbiBvZiB0aGUgY29kZS4gIFRoZXJlIGlzIGEgdmVyeSBzaW1wbGUg ZW5jcnlwdGlvbiBpbiB0aGlzIHNhbXBsZSBhbmQgdGhlDQo+IHBhc3N3b3JkIHdpbGwgYmUgc3Rv cmVkIGluIE5WUkFNIGluIGl0cyBlbmNyeXB0ZWQgZm9ybS4iDQo+IC0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAjbGFuZ3VhZ2UgZnItRlIgIkVzdG8gZXMgYW5hbGdvdXMg YSBtw60gcXVlIGxlIHByZWd1bnRhDQo+IGN1w6FsIGVzIHN1IHBhbGFicmEgZGUgcGFzby4iDQo+ ICAjc3RyaW5nIFNUUl9URVhUX1NFQ1JVSVRZX1RFU1RfVEVYVCAgICAjbGFuZ3VhZ2UgZW4tVVMg IkFjY2VzcyBvbmx5DQo+IHBlcm1pdHRlZCBmb3IgQWRtaW4iDQo+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAjbGFuZ3VhZ2UgZnItRlIgIkFjY2VzcyBvbmx5IHBlcm1p dHRlZCBmb3IgQWRtaW4iDQo+ICAjc3RyaW5nIFNUUl9URVhUX1NFQ1JVSVRZX1RFU1RfSEVMUCAg ICAjbGFuZ3VhZ2UgZW4tVVMgIklmIHRoaXMgbGFiZWwgaXMNCj4gbm90IGdyYXksIHRoZW4gY3Vy cmVudCB1c2VyIGhhcyBhZG1pbiBhY2Nlc3Mgc2V0dXAgcGVybWlzc2lvbi4gSWYgdGhpcyBsYWJl bCBpcw0KPiBncmF5LCB0aGVuIGN1cnJlbnQgdXNlciBoYXMgbm8gYWRtaW4gYWNjZXNzIHNldHVw IHBlcm1pc3Npb24uIg0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg I2xhbmd1YWdlIGZyLUZSICJJZiB0aGlzIGxhYmVsIGlzIG5vdCBncmF5LCB0aGVuIGN1cnJlbnQg dXNlcg0KPiBoYXMgYWRtaW4gYWNjZXNzIHNldHVwIHBlcm1pc3Npb24uIElmIHRoaXMgbGFiZWwg aXMgZ3JheSwgdGhlbiBjdXJyZW50IHVzZXIgaGFzDQo+IG5vIGFkbWluIGFjY2VzcyBzZXR1cCBw ZXJtaXNzaW9uLiINCj4gICNzdHJpbmcgU1RSX0dPVE9fRk9STTEgICAgICAgICAgICAgICAgICNs YW5ndWFnZSBlbi1VUyAiRW50ZXIgUGFnZSAxIg0KPiBAQCAtMTQ5LDE0ICsxNDUsMTAgQEANCj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNsYW5ndWFnZSBmci1GUiAi VXBkYXRlIHRoZSBkZXN0aW5hdGlvbiB0aHJvdWdoDQo+ICJjaGFuZ2luZyIgY2FsbCBiYWNrIHR5 cGUgd2hlbiB1c2VyIHNlbGVjdCBpdC4iDQo+ICAjc3RyaW5nIFNUUl9FUlJPUl9JTkNPTlNJU1RF TlQgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIlRoaXMgaXMgbXkNCj4gaW5jb25zaXN0ZW50IGVy cm9yIG1lc3NhZ2UiDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAj bGFuZ3VhZ2UgZnItRlIgIsOJc3RlIGVzIG1pIG1lbnNhamUgZGUgZXJyb3IgY29udHJhcmlvLiIN Cj4gICNzdHJpbmcgU1RSX0VSUk9SX1BPUFVQICAgICAgICAgICAgICAgICNsYW5ndWFnZSBlbi1V UyAiWW91IHR5cGVkIGluDQo+IHNvbWV0aGluZyBiYWQhIg0KPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgI2xhbmd1YWdlIGZyLUZSICJFc3RvIGVzIHVuIG1lbnNhamUg ZGUgZXJyb3IgZGVsDQo+IHBvcHVwLiINCj4gLSNzdHJpbmcgU1RSX01ZX1NUUklOR19QUk9NUFQg ICAgICAgICAgICNsYW5ndWFnZSBlbi1VUyAiUGFzc3dvcmQgeW91DQo+IHR5cGVkIGluIGlzIg0K PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2xhbmd1YWdlIGZyLUZS ICJQYXNzd29yZCB5b3UgdHlwZWQgaW4gaXMiDQo+IC0jc3RyaW5nIFNUUl9NWV9TVFJJTkdfSEVM UCAgICAgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIlRoaXMgaXMgbXkgc3RyaW5nDQo+IGhlbHAi DQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjbGFuZ3VhZ2UgZnIt RlIgIlRoaXMgaXMgbXkgc3RyaW5nIGhlbHAiDQo+ICAjc3RyaW5nIFNUUl9NWV9TVFJJTkdfREVG QVVMVCAgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIm15IHBhc3N3b3JkIg0KPiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2xhbmd1YWdlIGZyLUZSICJteSBwYXNzd29y ZCINCj4gICNzdHJpbmcgU1RSX01ZX1NUUklOR19QUk9NUFQyICAgICAgICAgICNsYW5ndWFnZSBl bi1VUyAiU3RyaW5nIC0NCj4gSW50ZXJhY3RpdmUiDQo+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAjbGFuZ3VhZ2UgZnItRlIgIlN0cmluZyAtIGludGVyYWN0aXZlIg0K PiAgI3N0cmluZyBTVFJfTVlfU1RSSU5HX0hFTFAyICAgICAgICAgICAgI2xhbmd1YWdlIGVuLVVT ICJUaGlzIGlzIG15IHN0cmluZw0KPiBoZWxwIC0gSW50ZXJhY3RpdmUiDQo+IC0tDQo+IDEuOS41 Lm1zeXNnaXQuMQ0KDQo=