From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: ray.ni@intel.com) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by groups.io with SMTP; Sat, 17 Aug 2019 22:20:21 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Aug 2019 22:20:20 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,399,1559545200"; d="scan'208";a="177576245" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga008.fm.intel.com with ESMTP; 17 Aug 2019 22:20:20 -0700 Received: from fmsmsx151.amr.corp.intel.com (10.18.125.4) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sat, 17 Aug 2019 22:20:19 -0700 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by FMSMSX151.amr.corp.intel.com (10.18.125.4) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sat, 17 Aug 2019 22:20:18 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.112]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.250]) with mapi id 14.03.0439.000; Sun, 18 Aug 2019 13:20:16 +0800 From: "Ni, Ray" To: "Chen, Marc W" , "Gao, Liming" , "devel@edk2.groups.io" , "lersek@redhat.com" CC: "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH] MdePkg: Add MmAccess and MmControl definition. Thread-Topic: [edk2-devel] [PATCH] MdePkg: Add MmAccess and MmControl definition. Thread-Index: AQHVRcW8y5xmct2vzUm4pgTkW8tdYqbl/g2wgAABaiCAAAEfIP//jrCAgAADE4CAAQvmAIAGudOAgAAUJYCAAfdxAIAD40QAgACGQzCABRe0AIABFcsAgAaCwBA= Date: Sun, 18 Aug 2019 05:20:16 +0000 Message-ID: <734D49CCEBEEF84792F5B80ED585239D5C28926E@SHSMSX104.ccr.corp.intel.com> References: <20190729042556.17692-1-marc.w.chen@intel.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E4C7400@SHSMSX104.ccr.corp.intel.com> <734D49CCEBEEF84792F5B80ED585239D5C267BB4@SHSMSX104.ccr.corp.intel.com> <211b95ba-703d-4561-c2bc-891e02d0ec2b@redhat.com> <734D49CCEBEEF84792F5B80ED585239D5C27417F@SHSMSX104.ccr.corp.intel.com> <324c388e-b964-f2c9-3719-e47293649351@redhat.com> <15B9725390DC0000.29320@groups.io> <4A89E2EF3DFEDB4C8BFDE51014F606A14E4CFDDA@SHSMSX104.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZGU1YWM3MGEtMmJiMC00Nzg3LWJkZTQtMjY3YjZjMDdhYThjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoic2pTY0lkYXVtRk9PWWFuWnd5T1NUZ3UzK1B4MitTaDZVMW52ZU5YTkNaYlkyWnZnV1wvTytoM3lSUWN3RWxZN0cifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.600.7 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: ray.ni@intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SSBkb24ndCBoYXZlIHN0cm9uZyBwcmVmZXJlbmNlIG9uIHJlbW92aW5nIFNtbUFjY2Vzcy5oIGZy b20gTWRlTW9kdWxlUGtnLg0KSWYgcGVvcGxlIGV4Y2VwdCBtZSBhbGwgYWdyZWVkIHRvIGtlZXAg dGhhdCBoZWFkZXIgZmlsZSBmb3IgY29tcGF0aWJpbGl0eSwgSSBhbSBvay4NCg0KPiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBDaGVuLCBNYXJjIFcNCj4gU2VudDogV2VkbmVz ZGF5LCBBdWd1c3QgMTQsIDIwMTkgNTo1NCBQTQ0KPiBUbzogR2FvLCBMaW1pbmcgPGxpbWluZy5n YW9AaW50ZWwuY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW87IGxlcnNla0ByZWRoYXQuY29tOyBO aSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPg0KPiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hh ZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRD SF0gTWRlUGtnOiBBZGQgTW1BY2Nlc3MgYW5kIE1tQ29udHJvbCBkZWZpbml0aW9uLg0KPiANCj4g VGhhbmtzIExpbWluZyBmb3IgcHVzaGluZyB0aGUgY29kZS4NCj4gDQo+IENhbiB3ZSBoYXZlIGEg Y29uY2x1c2lvbiBmb3IgdGhlIFNtbUFjY2Vzcy5oIHJlbW92YWwgZnJvbSBNZGVNb2R1bGVQa2c/ IFdobyBjYW4gbWFrZSB0aGUgZGVjaXNpb24/IE9yIGRvIHdlIG5lZWQgYW55DQo+IGZ1cnRoZXIg ZGlzY3Vzc2lvbj8NCj4gDQo+IFRoYW5rcywNCj4gTWFyYw0KPiANCj4gPiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IEdhbywgTGltaW5nDQo+ID4gU2VudDogVHVlc2RheSwg QXVndXN0IDEzLCAyMDE5IDU6MjAgUE0NCj4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdh bywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IENoZW4sIE1hcmMNCj4gPiBXIDxtYXJj LncuY2hlbkBpbnRlbC5jb20+OyBsZXJzZWtAcmVkaGF0LmNvbTsgTmksIFJheQ0KPiA+IDxyYXku bmlAaW50ZWwuY29tPg0KPiA+IENjOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5l eUBpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBr ZzogQWRkIE1tQWNjZXNzIGFuZCBNbUNvbnRyb2wNCj4gPiBkZWZpbml0aW9uLg0KPiA+DQo+ID4g UHVzaCBANmYzM2Y3YTI2MjMxNGFmMzVlMmI5OWM4NDllMDg5MjhlYTQ5YWE1NQ0KPiA+DQo+ID4g Pi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPkZyb206IGRldmVsQGVkazIuZ3JvdXBz LmlvIFttYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMuaW9dIE9uIEJlaGFsZiBPZg0KPiA+ID5MaW1p bmcgR2FvDQo+ID4gPlNlbnQ6IFNhdHVyZGF5LCBBdWd1c3QgMTAsIDIwMTkgMTE6MzQgQU0NCj4g PiA+VG86IENoZW4sIE1hcmMgVyA8bWFyYy53LmNoZW5AaW50ZWwuY29tPjsgZGV2ZWxAZWRrMi5n cm91cHMuaW87DQo+ID4gPmxlcnNla0ByZWRoYXQuY29tOyBOaSwgUmF5IDxyYXkubmlAaW50ZWwu Y29tPg0KPiA+ID5DYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwu Y29tPg0KPiA+ID5TdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnOiBBZGQg TW1BY2Nlc3MgYW5kIE1tQ29udHJvbA0KPiA+ID5kZWZpbml0aW9uLg0KPiA+ID4NCj4gPiA+SSBh Z3JlZS4gVGhlIHBhdGNoIHRvIGFkZCB0aGVtIGluIE1kZVBrZyBpcyBjbGVhci4gSSB3aWxsIHB1 c2ggaXQgbmV4dCBNb25kYXkuDQo+ID4gPg0KPiA+ID5UaGFua3MNCj4gPiA+TGltaW5nDQo+ID4g Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+PiBGcm9tOiBDaGVuLCBNYXJjIFcN Cj4gPiA+PiBTZW50OiBTYXR1cmRheSwgQXVndXN0IDEwLCAyMDE5IDExOjMzIEFNDQo+ID4gPj4g VG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBsZXJzZWtAcmVkaGF0LmNvbTsgTmksIFJheQ0KPiA+ IDxyYXkubmlAaW50ZWwuY29tPjsNCj4gPiA+R2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwu Y29tPg0KPiA+ID4+IENjOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRl bC5jb20+DQo+ID4gPj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBrZzog QWRkIE1tQWNjZXNzIGFuZA0KPiA+IE1tQ29udHJvbA0KPiA+ID5kZWZpbml0aW9uLg0KPiA+ID4+ DQo+ID4gPj4gSGkgTGltaW5nDQo+ID4gPj4NCj4gPiA+PiBTaW5jZSB0aGUgU21tQWNjZXNzLmgg b2YgTWRlTW9kdWxlUGtnIHJlbW92YWwgaXMgc3RpbGwgdW5kZXIgZGlzY3Vzc2lvbiwNCj4gPiA+ Y2FuIHdlIHB1c2ggdGhlIE1tQWNjZXNzLmggYW5kIE1tQ29udHJvbC5oIHRvIE1kZVBrZw0KPiA+ ID4+IGZpcnN0PyBJIGhhdmUgb3RoZXIgdGFza3MgcGVuZGluZyBieSB0aGlzLg0KPiA+ID4+IFdl IGNhbiBrZWVwIGRpc2N1c3NpbmcgdGhlIFNtbUFjY2VzcyBhZnRlciBwdXNoIHRoZSBjb2RlLg0K PiA+ID4+DQo+ID4gPj4gVGhhbmtzLA0KPiA+ID4+IE1hcmMNCj4gPiA+Pg0KPiA+ID4+ID4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+PiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBz LmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mDQo+ID4gTGFzemxvDQo+ID4g Pj4gPiBFcnNlaw0KPiA+ID4+ID4gU2VudDogVGh1cnNkYXksIEF1Z3VzdCA4LCAyMDE5IDEyOjEx IEFNDQo+ID4gPj4gPiBUbzogTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47IENoZW4sIE1hcmMg Vw0KPiA+IDxtYXJjLncuY2hlbkBpbnRlbC5jb20+Ow0KPiA+ID4+ID4gZGV2ZWxAZWRrMi5ncm91 cHMuaW87IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPiA+PiA+IENjOiBL aW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4gPj4gPiBT dWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnOiBBZGQgTW1BY2Nlc3MgYW5k DQo+ID4gPk1tQ29udHJvbA0KPiA+ID4+ID4gZGVmaW5pdGlvbi4NCj4gPiA+PiA+DQo+ID4gPj4g PiBPbiAwOC8wNi8xOSAxMjowOCwgTmksIFJheSB3cm90ZToNCj4gPiA+PiA+ID4gTGFzemxvLA0K PiA+ID4+ID4gPiBEbyB5b3Ugd2FudCB0byBhdm9pZCB0b3VjaGluZyB0aGUgT3ZtZlBrZyBkdWUg dGhlIGZpbGUgcmVtb3ZhbCBpbg0KPiA+ID4+ID4gTWRlTW9kdWxlUGtnPw0KPiA+ID4+ID4NCj4g PiA+PiA+IE15IG1haW4gcHJvYmxlbSB3aXRoIHRoaXMgKnNwZWNpZmljKiB1cGRhdGUgcHJvcG9z YWwgaXMgdGhhdCB0aGUNCj4gPiA+PiA+IGlkZW50aWZpZXJzICh0eXBlIG5hbWVzIGFuZCBzdWNo KSB0aGF0IHdvdWxkIGJlIHN1YmplY3QgdG8gcmVtb3ZhbCB3ZXJlDQo+ID4gPj4gPiBwdWJsaWNs eSBzcGVjaWZpZWQgaW4gZWFybGllciBQSSBzcGVjIHJlbGVhc2VzLg0KPiA+ID4+ID4NCj4gPiA+ PiA+IEkgZG9uJ3Qgc3VnZ2VzdCB0aGF0IHdlIG1haW50YWluIHR3byBwYXJhbGxlbCBzZXRzIG9m IHR5cGVkZWZzIGFuZCBzdWNoDQo+ID4gPj4gPiBpbiBlZGsyLiBJdCdzIGZpbmUgdG8ga2VlcCB0 aGUgbmV3ICJNTSIgbm9tZW5jbGF0dXJlIHRoZSBtYWluIG9uZS4gQnV0DQo+ID4gPj4gPiB3ZSBz aG91bGQga2VlcCB0aGUgIlNNTSIgc2V0IG9mIHRlcm1zIHRvbywgYXMgYSB0aGluIHdyYXBwZXIs IGlmIHRoYXQncw0KPiA+ID4+ID4gdGVjaG5pY2FsbHkgZmVhc2libGUuDQo+ID4gPj4gPg0KPiA+ ID4+ID4gSWYgd2UgcmVtb3ZlICJTTU0iLCB0aGF0IHdpbGwgbm90IG9ubHkgYWZmZWN0IE92bWZQ a2cgdW5wbGVhc2FudGx5LCBidXQNCj4gPiA+PiA+IGEgYnVuY2ggb2Ygb3RoZXIsIG91dC1vZi10 cmVlIGNvZGUuIEFuZCB0aGUgcmVhc29uIEkgc3VkZGVubHkgY2FyZQ0KPiA+IGFib3V0DQo+ID4g Pj4gPiBvdXQtb2YtdHJlZSBjb2RlIGlzIHRoYXQgc3VjaCBjb2RlIHdhcyB3cml0dGVuIGFnYWlu c3QgYSBwdWJsaWMgaW5kdXN0cnkNCj4gPiA+PiA+IHNwZWMgKD0gZWFybGllciB2ZXJzaW9ucyBv ZiB0aGUgUEkgc3BlYykuDQo+ID4gPj4gPg0KPiA+ID4+ID4gSSBkb24ndCB0aGluayB0aGF0IHRo ZSBzaW1wbGljaXR5IHRoYXQgd291bGQgY29tZSBmcm9tIHJlbW92aW5nICJTTU0iDQo+ID4gPj4g PiBhbHRvZ2V0aGVyLCBpcyB3ZWxsLWJhbGFuY2VkIGFnYWluc3QgdGhlIHBhaW4gdGhhdCBpdCB3 b3VsZCBjYXVzZSBmb3INCj4gPiA+PiA+IHBsYXRmb3Jtcy4NCj4gPiA+PiA+DQo+ID4gPj4gPiBF YXJsaWVyIHRoaXMgd2FzIHNvbHZlZCBpbiB0aGUgZm9sbG93aW5nIGNvbW1pdHM6DQo+ID4gPj4g PiAtIDA3YzZhNDdlNzBiYSAoIk1kZVBrZzogQWRkIG5ldyBkZWZpbml0aW9ucyBmb3IgTWFuYWdl bWVudA0KPiA+IE1vZGUuIiwNCj4gPiA+PiA+IDIwMTctMDgtMjkpDQo+ID4gPj4gPiAtIDJmMjA4 ZTU5ZTRiOSAoIk1kZVBrZzogUmVmZXJlbmNlIG5ldyBkZWZpbml0aW9ucyBmb3IgTWFuYWdlbWVu dA0KPiA+ID4+ID4gTW9kZS4iLCAyMDE3LTA4LTI5KQ0KPiA+ID4+ID4NCj4gPiA+PiA+IFRoYW5r cw0KPiA+ID4+ID4gTGFzemxvDQo+ID4gPj4gPg0KPiA+ID4+ID4gPiBJIHByZWZlciB0byByZW1v dmUgdGhlIGZpbGVzIGluIE1kZU1vZHVsZVBrZyB0byBhdm9pZCBmdXR1cmUNCj4gPiBjb25mdXNp b24uDQo+ID4gPj4gPiA+DQo+ID4gPj4gPiA+IFRoYW5rcywNCj4gPiA+PiA+ID4gUmF5DQo+ID4g Pj4gPiA+DQo+ID4gPj4gPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4+ID4g Pj4gRnJvbTogQ2hlbiwgTWFyYyBXDQo+ID4gPj4gPiA+PiBTZW50OiBUdWVzZGF5LCBBdWd1c3Qg NiwgMjAxOSA0OjU3IFBNDQo+ID4gPj4gPiA+PiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IGxl cnNla0ByZWRoYXQuY29tOyBOaSwgUmF5DQo+ID4gPj4gPiA8cmF5Lm5pQGludGVsLmNvbT47DQo+ ID4gPj4gPiA+PiBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+DQo+ID4gPj4gPiA+ PiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ ID4+ID4gPj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBrZzogQWRkIE1t QWNjZXNzIGFuZA0KPiA+ID4+ID4gTW1Db250cm9sDQo+ID4gPj4gPiA+PiBkZWZpbml0aW9uLg0K PiA+ID4+ID4gPj4NCj4gPiA+PiA+ID4+IEhpIExpbWluZyBhbmQgUmF5DQo+ID4gPj4gPiA+Pg0K PiA+ID4+ID4gPj4gRG8geW91IGFsc28gYWdyZWU/DQo+ID4gPj4gPiA+Pg0KPiA+ID4+ID4gPj4g VGhhbmtzLA0KPiA+ID4+ID4gPj4gTWFyYw0KPiA+ID4+ID4gPj4NCj4gPiA+PiA+ID4+PiAtLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4+ID4gPj4+IEZyb206IGRldmVsQGVkazIuZ3Jv dXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mDQo+ID4gPj4gPiBMYXN6 bG8NCj4gPiA+PiA+ID4+PiBFcnNlaw0KPiA+ID4+ID4gPj4+IFNlbnQ6IEZyaWRheSwgQXVndXN0 IDIsIDIwMTkgMTA6MTQgQU0NCj4gPiA+PiA+ID4+PiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87 IENoZW4sIE1hcmMgVw0KPiA+IDxtYXJjLncuY2hlbkBpbnRlbC5jb20+Ow0KPiA+ID5OaSwNCj4g PiA+PiA+ID4+PiBSYXkgPHJheS5uaUBpbnRlbC5jb20+OyBHYW8sIExpbWluZyA8bGltaW5nLmdh b0BpbnRlbC5jb20+DQo+ID4gPj4gPiA+Pj4gQ2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVs LmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+PiA+ID4+PiBTdWJqZWN0OiBSZTogW2VkazItZGV2 ZWxdIFtQQVRDSF0gTWRlUGtnOiBBZGQgTW1BY2Nlc3MgYW5kDQo+ID4gPj4gPiA+PiBNbUNvbnRy b2wNCj4gPiA+PiA+ID4+PiBkZWZpbml0aW9uLg0KPiA+ID4+ID4gPj4+DQo+ID4gPj4gPiA+Pj4g T24gMDgvMDEvMTkgMTI6MTUsIE1hcmMgVyBDaGVuIHdyb3RlOg0KPiA+ID4+ID4gPj4+PiBZZXMs IG15IHB1cnBvc2UgaXMgdG8gYXZvaWQgcGxhdGZvcm0gY29kZSB1cGRhdGUgaWYgdGhlIHBhY2th Z2UgaXMNCj4gPiA+PiA+ID4+Pj4gYWxsb3dlZA0KPiA+ID4+ID4gPj4+IHRvIHVzZSBNZGVNb2R1 bGVQa2cgbGlrZSBPdm1mUGtnLg0KPiA+ID4+ID4gPj4+PiBGb3IgdGhvc2UgcGFja2FnZXMgdGhh dCBjYW5ub3QgZGVwZW5kIG9uIE1kZU1vZHVsZVBrZyBtdXN0DQo+ID4gPj4gPiBjaGFuZ2UNCj4g PiA+PiA+ID4+IHRvDQo+ID4gPj4gPiA+Pj4gdXNlIG5ldyBkZWZpbml0aW9uLg0KPiA+ID4+ID4g Pj4+DQo+ID4gPj4gPiA+Pj4gQWdyZWVkLg0KPiA+ID4+ID4gPj4+DQo+ID4gPj4gPiA+Pj4gVGhh bmtzIQ0KPiA+ID4+ID4gPj4+IExhc3psbw0KPiA+ID4+ID4gPj4+DQo+ID4gPj4gPiA+Pj4+PiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4+ID4gPj4+Pj4gRnJvbTogTmksIFJheQ0K PiA+ID4+ID4gPj4+Pj4gU2VudDogVGh1cnNkYXksIEF1Z3VzdCAxLCAyMDE5IDY6MDQgUE0NCj4g PiA+PiA+ID4+Pj4+IFRvOiBDaGVuLCBNYXJjIFcgPG1hcmMudy5jaGVuQGludGVsLmNvbT47IEdh bywgTGltaW5nDQo+ID4gPj4gPiA+Pj4+PiA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBkZXZlbEBl ZGsyLmdyb3Vwcy5pbw0KPiA+ID4+ID4gPj4+Pj4gQ2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNo YWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+PiA+ID4+Pj4+IFN1YmplY3Q6IFJFOiBbZWRr Mi1kZXZlbF0gW1BBVENIXSBNZGVQa2c6IEFkZCBNbUFjY2VzcyBhbmQNCj4gPiA+PiA+ID4+PiBN bUNvbnRyb2wNCj4gPiA+PiA+ID4+Pj4+IGRlZmluaXRpb24uDQo+ID4gPj4gPiA+Pj4+Pg0KPiA+ ID4+ID4gPj4+Pj4gTWFyYywNCj4gPiA+PiA+ID4+Pj4+IElzIHRoZSBwdXJwb3NlIHRvIGF2b2lk IHBsYXRmb3JtIGNvZGUgdXBkYXRlIHdpdGggdGhlIHdyYXBwZXINCj4gPiA+PiA+ID4+Pj4+IGhl YWRlcg0KPiA+ID4+ID4gPj4+IGZpbGUgaW4NCj4gPiA+PiA+ID4+Pj4+IE1kZU1vZHVsZVBrZz8N Cj4gPiA+PiA+ID4+Pj4+IENlcnRhaW4gcGxhdGZvcm1zIHRoZXkgbWF5IHJlcXVpcmUgdG8gbm90 IGRlcGVuZCBvbg0KPiA+ID5NZGVNb2R1bGVQa2cNCj4gPiA+PiA+ID4+Pj4+IGJ1dCBqdXN0IGRl cGVuZCBvbiBNZGVQa2cuDQo+ID4gPj4gPiA+Pj4+PiBIYXZpbmcgU21tQWNjZXNzLmggaW4gTWRl TW9kdWxlUGtnIGRvZXNuJ3QgaGVscC4NCj4gPiA+PiA+ID4+Pj4+DQo+ID4gPj4gPiA+Pj4+PiBJ dCBhbHNvIGJyaW5nIGNvbmZ1c2luZy4NCj4gPiA+PiA+ID4+Pj4+DQo+ID4gPj4gPiA+Pj4+PiBU aGFua3MsDQo+ID4gPj4gPiA+Pj4+PiBSYXkNCj4gPiA+PiA+ID4+Pj4+DQo+ID4gPj4gPiA+Pj4+ Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+PiA+ID4+Pj4+PiBGcm9tOiBDaGVu LCBNYXJjIFcNCj4gPiA+PiA+ID4+Pj4+PiBTZW50OiBUaHVyc2RheSwgQXVndXN0IDEsIDIwMTkg NDo1MyBQTQ0KPiA+ID4+ID4gPj4+Pj4+IFRvOiBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRl bC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+ID4+ID4gPj4+Pj4+IENjOiBLaW5uZXks IE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBOaSwgUmF5DQo+ID4gPj4g PiA+Pj4+Pj4gPHJheS5uaUBpbnRlbC5jb20+DQo+ID4gPj4gPiA+Pj4+Pj4gU3ViamVjdDogUkU6 IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBrZzogQWRkIE1tQWNjZXNzIGFuZA0KPiA+ID4+ID4g Pj4+IE1tQ29udHJvbA0KPiA+ID4+ID4gPj4+Pj4+IGRlZmluaXRpb24uDQo+ID4gPj4gPiA+Pj4+ Pj4NCj4gPiA+PiA+ID4+Pj4+PiBIaSBMaW1pbmcNCj4gPiA+PiA+ID4+Pj4+Pg0KPiA+ID4+ID4g Pj4+Pj4+IEFub3RoZXIgdGhvdWdodCwgZG8geW91IHRoaW5rIGl0IGlzIG9rIHRvIGtlZXAgU21t QWNjZXNzLmggaW4NCj4gPiA+PiA+ID4+Pj4+PiBNZGVNb2R1bGVQa2c/IFdlIGNhbiB1c2UgI2Rl ZmluZSBhbmQgdHlwZWRlZiB0byBjb252ZXJ0DQo+ID4gPj4gPiA+PiBNbUFjY2Vzcw0KPiA+ID4+ ID4gPj4+IHRvDQo+ID4gPj4gPiA+Pj4+Pj4gU21tQWNjZXNzLCBqdXN0IGxpa2UgY3VycmVudCBT bW1BY2Nlc3MgUHJvdG9jb2wgaW4gTWRlUGtnLg0KPiA+ID4+ID4gPj4+Pj4+DQo+ID4gPj4gPiA+ Pj4+Pj4gVGhhbmtzLA0KPiA+ID4+ID4gPj4+Pj4+IE1hcmMNCj4gPiA+PiA+ID4+Pj4+Pg0KPiA+ ID4+ID4gPj4+Pj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4+ID4gPj4+Pj4+ PiBGcm9tOiBDaGVuLCBNYXJjIFcNCj4gPiA+PiA+ID4+Pj4+Pj4gU2VudDogVGh1cnNkYXksIEF1 Z3VzdCAxLCAyMDE5IDQ6NDggUE0NCj4gPiA+PiA+ID4+Pj4+Pj4gVG86IEdhbywgTGltaW5nIDxs aW1pbmcuZ2FvQGludGVsLmNvbT47DQo+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA+PiA+ ID4+Pj4+Pj4gQ2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNv bT47IE5pLCBSYXkNCj4gPiA+PiA+ID4+Pj4+Pj4gPHJheS5uaUBpbnRlbC5jb20+DQo+ID4gPj4g PiA+Pj4+Pj4+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2c6IEFkZCBN bUFjY2VzcyBhbmQNCj4gPiA+PiA+ID4+Pj4+PiBNbUNvbnRyb2wNCj4gPiA+PiA+ID4+Pj4+Pj4g ZGVmaW5pdGlvbi4NCj4gPiA+PiA+ID4+Pj4+Pj4NCj4gPiA+PiA+ID4+Pj4+Pj4gSGkgTGltaW5n DQo+ID4gPj4gPiA+Pj4+Pj4+DQo+ID4gPj4gPiA+Pj4+Pj4+IFNpbmNlIHRoZXJlIGFyZSBtdWx0 aXBsZSBwYWNrYWdlcyBhcmUgc3RpbGwgdXNpbmcgU21tQWNjZXNzLmgsDQo+ID4gPndlDQo+ID4g Pj4gPiA+Pj4+Pj4+IG5lZWQgdG8gY2hhbmdlIGFsbCBwYWNrYWdlcyB0byB1c2UgTW1BY2Nlc3Mu aCBpbnN0ZWFkIG9mDQo+ID4gPj4gPiA+Pj4+Pj4+IFNtbUFjY2Vzcy5oIGZpcnN0LCB0aGVuIGNs ZWFuIHVwIFNtbUFjY2Vzcy5oIGZyb20NCj4gPiA+PiA+IE1kZU1vZHVsZVBrZw0KPiA+ID4+ID4g Pj4gd2lsbCBiZSB0aGUgbGFzdCBzdGVwLg0KPiA+ID4+ID4gPj4+Pj4+PiBCZWxvdyBhcmUgdGhl IHBhY2thZ2VzIHRoYXQgaGFzICJpbmNsdWRlIDxQcGkvU21tQWNjZXNzLmg+Ig0KPiA+ID5mb3IN Cj4gPiA+PiA+ID4+Pj4+Pj4geW91ciByZWZlcmVuY2UuDQo+ID4gPj4gPiA+Pj4+Pj4+ICoJRWRr MiByZXBvOg0KPiA+ID4+ID4gPj4+Pj4+PiBvCU1kZU1vZHVsZVBrZw0KPiA+ID4+ID4gPj4+Pj4+ PiBvCU92bWZQa2cNCj4gPiA+PiA+ID4+Pj4+Pj4gbwlVZWZpQ3B1UGtnDQo+ID4gPj4gPiA+Pj4+ Pj4+ICoJRWRrMlBsYXRmb3JtIHJlcG86DQo+ID4gPj4gPiA+Pj4+Pj4+IG8JTWluUGxhdGZvcm1Q a2cNCj4gPiA+PiA+ID4+Pj4+Pj4gbwlRdWFya1NvY1BrZw0KPiA+ID4+ID4gPj4+Pj4+Pg0KPiA+ ID4+ID4gPj4+Pj4+PiBUaGFua3MsDQo+ID4gPj4gPiA+Pj4+Pj4+IE1hcmMNCj4gPiA+PiA+ID4+ Pj4+Pj4NCj4gPiA+PiA+ID4+Pj4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4g Pj4gPiA+Pj4+Pj4+PiBGcm9tOiBHYW8sIExpbWluZw0KPiA+ID4+ID4gPj4+Pj4+Pj4gU2VudDog VGh1cnNkYXksIEF1Z3VzdCAxLCAyMDE5IDQ6NDIgUE0NCj4gPiA+PiA+ID4+Pj4+Pj4+IFRvOiBk ZXZlbEBlZGsyLmdyb3Vwcy5pbzsgQ2hlbiwgTWFyYyBXDQo+ID4gPj4gPiA8bWFyYy53LmNoZW5A aW50ZWwuY29tPg0KPiA+ID4+ID4gPj4+Pj4+Pj4gQ2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNo YWVsLmQua2lubmV5QGludGVsLmNvbT47IE5pLCBSYXkNCj4gPiA+PiA+ID4+Pj4+Pj4+IDxyYXku bmlAaW50ZWwuY29tPg0KPiA+ID4+ID4gPj4+Pj4+Pj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVs XSBbUEFUQ0hdIE1kZVBrZzogQWRkIE1tQWNjZXNzDQo+ID4gPmFuZA0KPiA+ID4+ID4gPj4+Pj4+ IE1tQ29udHJvbA0KPiA+ID4+ID4gPj4+Pj4+Pj4gZGVmaW5pdGlvbi4NCj4gPiA+PiA+ID4+Pj4+ Pj4+DQo+ID4gPj4gPiA+Pj4+Pj4+PiBNYXJjOg0KPiA+ID4+ID4gPj4+Pj4+Pj4gICBUaGUgY2hh bmdlIGlzIGdvb2QuIFJldmlld2VkLWJ5OiBMaW1pbmcgR2FvDQo+ID4gPj4gPiA+Pj4gPGxpbWlu Zy5nYW9AaW50ZWwuY29tPg0KPiA+ID4+ID4gPj4+Pj4+Pj4NCj4gPiA+PiA+ID4+Pj4+Pj4+ICAg QmVzaWRlcywgSSBzZWUgQlogYWxzbyBtZW50aW9uIHRvIHJlbW92ZSB0aGUgb25lIGluDQo+ID4g Pj4gPiA+PiBNZGVNb2R1bGVQa2cuDQo+ID4gPj4gPiA+Pj4+Pj4+PiBIYXZlIHlvdSB0aGUgZm9s bG93aW5nIHBhdGNoZXMgZm9yIHRoZSBjaGFuZ2UgaW4NCj4gPiA+TWRlTW9kdWxlUGtnPw0KPiA+ ID4+ID4gPj4+Pj4+Pj4NCj4gPiA+PiA+ID4+Pj4+Pj4+IFRoYW5rcw0KPiA+ID4+ID4gPj4+Pj4+ Pj4gTGltaW5nDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPiA+PiA+ID4+Pj4+Pj4+PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyBbbWFpbHRvOmRl dmVsQGVkazIuZ3JvdXBzLmlvXQ0KPiA+ID5Pbg0KPiA+ID4+ID4gPj4+Pj4gQmVoYWxmDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gT2YgTWFyYyBXIENoZW4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBTZW50OiBN b25kYXksIEp1bHkgMjksIDIwMTkgMTI6MjYgUE0NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBUbzogZGV2 ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBDYzogS2lubmV5LCBNaWNoYWVs IEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgR2FvLA0KPiA+ID4+ID4gTGltaW5nDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gPGxpbWluZy5nYW9AaW50ZWwuY29tPjsgTmksIFJheSA8cmF5Lm5p QGludGVsLmNvbT4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBTdWJqZWN0OiBbZWRrMi1kZXZlbF0gW1BB VENIXSBNZGVQa2c6IEFkZCBNbUFjY2VzcyBhbmQNCj4gPiA+PiA+ID4+Pj4+IE1tQ29udHJvbA0K PiA+ID4+ID4gPj4+Pj4+Pj4+IGRlZmluaXRpb24uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4NCj4gPiA+ PiA+ID4+Pj4+Pj4+PiBFRkkgTW1BY2Nlc3MgYW5kIE1tQ29udHJvbCBQUElzIGFyZSBkZWZpbmVk IGluIHRoZSBQSSAxLjUNCj4gPiA+PiA+ID4+Pj4+PiBzcGVjaWZpY2F0aW9uLg0KPiA+ID4+ID4g Pj4+Pj4+Pj4+DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hh ZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ID4+ID4gPj4+Pj4+Pj4+IENjOiBMaW1pbmcgR2Fv IDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBDYzogUmF5IE5pIDxy YXkubmlAaW50ZWwuY29tPg0KPiA+ID4+ID4gPj4+Pj4+Pj4+IFJlZjogaHR0cHM6Ly9idWd6aWxs YS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDIzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4g U2lnbmVkLW9mZi1ieTogTWFyYyBXIENoZW4gPG1hcmMudy5jaGVuQGludGVsLmNvbT4NCj4gPiA+ PiA+ID4+Pj4+Pj4+PiAtLS0NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBNZGVQa2cvSW5jbHVkZS9QcGkv TW1BY2Nlc3MuaCAgfCAxNTUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IE1kZVBrZy9JbmNsdWRl L1BwaS9NbUNvbnRyb2wuaCB8ICA5MA0KPiA+ID4+ID4gPj4+Pj4+ICsrKysrKysrKysrKysrKysr KysrKysrKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IE1kZVBrZy9NZGVQa2cuZGVjICAgICAgICAgICAg ICB8ICAgNiArKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IDMgZmlsZXMgY2hhbmdlZCwgMjUxIGluc2Vy dGlvbnMoKykgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gTWRlUGtnL0lu Y2x1ZGUvUHBpL01tQWNjZXNzLmggY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPj4gPiA+Pj4+Pj4+ Pj4gTWRlUGtnL0luY2x1ZGUvUHBpL01tQ29udHJvbC5oDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4NCj4g PiA+PiA+ID4+Pj4+Pj4+PiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0luY2x1ZGUvUHBpL01tQWNjZXNz LmgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBiL01kZVBrZy9JbmNsdWRlL1BwaS9NbUFjY2Vzcy5oIG5l dyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPj4gPiBpbmRleA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IDAw MDAwMDAwMDAuLjYzNmU3Mjg4YTANCj4gPiA+PiA+ID4+Pj4+Pj4+PiAtLS0gL2Rldi9udWxsDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gKysrIGIvTWRlUGtnL0luY2x1ZGUvUHBpL01tQWNjZXNzLmgNCj4g PiA+PiA+ID4+Pj4+Pj4+PiBAQCAtMCwwICsxLDE1NSBAQA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsv KiogQGZpbGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBFRkkgTU0gQWNjZXNzIFBQSSBkZWZpbml0 aW9uLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBUaGlzIFBQ SSBpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIHZpc2liaWxpdHkgb2YgdGhlIE1NUkFNIG9uDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKyB0aGUNCj4gPiA+PiA+ID4+Pj4+PiBwbGF0Zm9ybS4NCj4gPiA+PiA+ ID4+Pj4+Pj4+PiArICBUaGUgRUZJX1BFSV9NTV9BQ0NFU1NfUFBJIGFic3RyYWN0cyB0aGUgbG9j YXRpb24gYW5kDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBjaGFyYWN0ZXJpc3RpY3MNCj4gPiA+PiA+ ID4+Pj4+Pj4gb2YNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBNTVJBTS4gVGhlDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgcHJpbmNpcGFsIGZ1bmN0aW9uYWxpdHkgZm91bmQgaW4gdGhlIG1lbW9yeSBjb250 cm9sbGVyDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBpbmNsdWRlcyB0aGUNCj4gPiA+PiA+ID4+Pj4+ Pj4+IGZvbGxvd2luZzoNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICAtIEV4cG9zaW5nIHRoZSBNTVJB TSB0byBhbGwgbm9uLU1NIGFnZW50cywgb3IgdGhlDQo+ID4gPiJvcGVuIg0KPiA+ID4+ID4gPj4+ Pj4+Pj4+ICsgc3RhdGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICAtIFNocm91ZGluZyB0aGUgTU1S QU0gdG8gYWxsIGJ1dCB0aGUgTU0gYWdlbnRzLCBvciB0aGUNCj4gPiA+PiA+ID4+ICJjbG9zZWQi DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBzdGF0ZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIC0gUHJl c2VydmluZyB0aGUgc3lzdGVtIGludGVncml0eSwgb3IgImxvY2tpbmciIHRoZSBNTVJBTSwNCj4g PiA+PiA+ID4+Pj4+Pj4+PiArIHN1Y2ggdGhhdA0KPiA+ID4+ID4gPj4+Pj4+PiB0aGUNCj4gPiA+ PiA+ID4+Pj4+Pj4+PiBzZXR0aW5ncyBjYW5ub3QgYmUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICAg IHBlcnR1cmJlZCBieSBlaXRoZXIgYm9vdCBzZXJ2aWNlIG9yIHJ1bnRpbWUgYWdlbnRzDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIENvcHlyaWdodCAoYykgMjAx OSwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArIHJl c2VydmVkLjxCUj4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBTUERYLUxpY2Vuc2UtSWRlbnRpZmll cjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+ Pj4+Pj4+PiArICBAcGFyIFJldmlzaW9uIFJlZmVyZW5jZToNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr ICBUaGlzIFBQSSBpcyBpbnRyb2R1Y2VkIGluIFBJIFZlcnNpb24gMS41Lg0KPiA+ID4+ID4gPj4+ Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0K PiA+ID4+ID4gPj4+Pj4+Pj4+ICsjaWZuZGVmIF9NTV9BQ0NFU1NfUFBJX0hfDQo+ID4gPj4gPiA+ Pj4+Pj4+Pj4gKyNkZWZpbmUgX01NX0FDQ0VTU19QUElfSF8NCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyNkZWZpbmUgRUZJX1BFSV9NTV9BQ0NFU1NfUFBJX0dVSUQg XA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIHsgMHgyNjhmMzNhOSwgMHhjY2NkLCAweDQ4YmUsIHsg MHg4OCwgMHgxNywgMHg4NiwgMHg1LCAweDNhLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsweGMzLCAw eDJlLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IDB4ZDYgfX0NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gK3R5cGVkZWYgc3RydWN0IF9FRklfUEVJX01NX0FDQ0VTU19QUEkN Cj4gPiA+PiA+ID4+IEVGSV9QRUlfTU1fQUNDRVNTX1BQSTsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKy8qKg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIE9wZW5zIHRo ZSBNTVJBTSBhcmVhIHRvIGJlIGFjY2Vzc2libGUgYnkgYSBQRUlNLg0KPiA+ID4+ID4gPj4+Pj4+ Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBUaGlzIGZ1bmN0aW9uICJvcGVucyIgTU1SQU0g c28gdGhhdCBpdCBpcyB2aXNpYmxlIHdoaWxlDQo+ID4gbm90DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4g KyBpbnNpZGUgb2YNCj4gPiA+PiA+ID4+Pj4+Pj4gTU0uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gVGhl IGZ1bmN0aW9uIHNob3VsZA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIHJldHVybiBFRklfVU5TVVBQ T1JURUQgaWYgdGhlIGhhcmR3YXJlIGRvZXMgbm90DQo+ID4gPnN1cHBvcnQNCj4gPiA+PiA+ID4+ Pj4+Pj4+PiArIGhpZGluZyBvZg0KPiA+ID4+ID4gPj4+Pj4+Pj4+IE1NUkFNLiBUaGUgZnVuY3Rp b24NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBzaG91bGQgcmV0dXJuIEVGSV9ERVZJQ0VfRVJST1Ig aWYgdGhlIE1NUkFNDQo+ID4gPj4gPiBjb25maWd1cmF0aW9uDQo+ID4gPj4gPiA+PiBpcw0KPiA+ ID4+ID4gPj4+Pj4+IGxvY2tlZC4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgQHBhcmFtICBQZWlTZXJ2aWNlcyAgICAgICAgICAgIEFuIGluZGlyZWN0IHBvaW50 ZXIgdG8gdGhlIFBFSQ0KPiA+ID4+ID4gU2VydmljZXMNCj4gPiA+PiA+ID4+Pj4+PiBUYWJsZQ0K PiA+ID4+ID4gPj4+Pj4+Pj4+IHB1Ymxpc2hlZCBieSB0aGUgUEVJIEZvdW5kYXRpb24uDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBUaGlzICAgICAgICAgICAgICAgICAgIFRoZSBFRklf UEVJX01NX0FDQ0VTU19QUEkNCj4gPiA+aW5zdGFuY2UuDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAg QHBhcmFtICBEZXNjcmlwdG9ySW5kZXggICAgICAgIFRoZSByZWdpb24gb2YgTU1SQU0gdG8NCj4g PiA+T3Blbi4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHJl dHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgIFRoZSBvcGVyYXRpb24gd2FzIHN1Y2Nlc3NmdWwu DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHJldHZhbCBFRklfVU5TVVBQT1JURUQgICAgICAgIFRo ZSBzeXN0ZW0gZG9lcyBub3QNCj4gPiA+c3VwcG9ydA0KPiA+ID4+ID4gPj4+Pj4gb3BlbmluZw0K PiA+ID4+ID4gPj4+Pj4+Pj4gYW5kDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gY2xvc2luZyBvZiBNTVJB TS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9ERVZJQ0VfRVJST1IgICAgICAg TU1SQU0gY2Fubm90IGJlDQo+ID4gb3BlbmVkLA0KPiA+ID4+ID4gPj4+Pj4gcGVyaGFwcw0KPiA+ ID4+ID4gPj4+Pj4+Pj4+IGJlY2F1c2UgaXQgaXMgbG9ja2VkLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gK3R5cGVkZWYN Cj4gPiA+PiA+ID4+Pj4+Pj4+PiArRUZJX1NUQVRVUw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsoRUZJ QVBJICpFRklfUEVJX01NX09QRU4pKA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIEVGSV9QRUlf U0VSVklDRVMgICAgICAgICAgICAgICAgKipQZWlTZXJ2aWNlcywNCj4gPiA+PiA+ID4+Pj4+Pj4+ PiArICBJTiBFRklfUEVJX01NX0FDQ0VTU19QUEkgICAgICAgICAgICpUaGlzLA0KPiA+ID4+ID4g Pj4+Pj4+Pj4+ICsgIElOIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRv ckluZGV4DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgKTsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gKy8qKg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEluaGliaXRzIGFj Y2VzcyB0byB0aGUgTU1SQU0uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+ Pj4+ICsgIFRoaXMgZnVuY3Rpb24gImNsb3NlcyIgTU1SQU0gc28gdGhhdCBpdCBpcyBub3Qgdmlz aWJsZQ0KPiA+IHdoaWxlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBvdXRzaWRlIG9mDQo+ID4gPj4g PiA+Pj4+Pj4+PiBNTS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBUaGUgZnVuY3Rpb24gc2hvdWxkDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgcmV0dXJuIEVGSV9VTlNVUFBPUlRFRCBpZiB0aGUgaGFyZHdh cmUgZG9lcyBub3QNCj4gPiA+c3VwcG9ydA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgaGlkaW5nIG9m DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gTU1SQU0uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVpU2VydmljZXMgICAgICAgICAgICBBbiBpbmRpcmVj dCBwb2ludGVyIHRvIHRoZSBQRUkNCj4gPiA+PiA+IFNlcnZpY2VzDQo+ID4gPj4gPiA+Pj4+Pj4g VGFibGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBwdWJsaXNoZWQgYnkgdGhlIFBFSSBGb3VuZGF0aW9u Lg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgVGhpcyAgICAgICAgICAgICAgICAgICBU aGUgRUZJX1BFSV9NTV9BQ0NFU1NfUFBJDQo+ID4gPmluc3RhbmNlLg0KPiA+ID4+ID4gPj4+Pj4+ Pj4+ICsgIEBwYXJhbSAgRGVzY3JpcHRvckluZGV4ICAgICAgICBUaGUgcmVnaW9uIG9mIE1NUkFN IHRvDQo+ID4gPkNsb3NlLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+ PiArICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICAgVGhlIG9wZXJhdGlvbiB3YXMgc3Vj Y2Vzc2Z1bC4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9VTlNVUFBPUlRFRCAg ICAgICAgVGhlIHN5c3RlbSBkb2VzIG5vdA0KPiA+ID5zdXBwb3J0DQo+ID4gPj4gPiA+Pj4+PiBv cGVuaW5nDQo+ID4gPj4gPiA+Pj4+Pj4+PiBhbmQNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBjbG9zaW5n IG9mIE1NUkFNLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX0RFVklDRV9FUlJP UiAgICAgICBNTVJBTSBjYW5ub3QgYmUgY2xvc2VkLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4g PiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gK3R5cGVkZWYNCj4gPiA+ PiA+ID4+Pj4+Pj4+PiArRUZJX1NUQVRVUw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsoRUZJQVBJICpF RklfUEVJX01NX0NMT1NFKSgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX1NFUlZJ Q0VTICAgICAgICAgICAgICAgICoqUGVpU2VydmljZXMsDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAg SU4gRUZJX1BFSV9NTV9BQ0NFU1NfUFBJICAgICAgICAgICAqVGhpcywNCj4gPiA+PiA+ID4+Pj4+ Pj4+PiArICBJTiBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgICAgIERlc2NyaXB0b3JJbmRl eA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgICk7DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ ID4gPj4+Pj4+Pj4+ICsvKioNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBUaGlzIGZ1bmN0aW9uIHBy b2hpYml0cyBhY2Nlc3MgdG8gdGhlIE1NUkFNIHJlZ2lvbi4gVGhpcw0KPiA+ID4+ID4gPj4+Pj4+ Pj4+ICtmdW5jdGlvbiBpcw0KPiA+ID4+ID4gPj4+Pj4+Pj4gdXN1YWxseQ0KPiA+ID4+ID4gPj4+ Pj4+Pj4+IGltcGxlbWVudGVkIHN1Y2gNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICB0aGF0IGl0IGlz IGEgd3JpdGUtb25jZSBvcGVyYXRpb24uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4g Pj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVpU2VydmljZXMgICAgICAgICAgICBBbiBpbmRpcmVjdCBw b2ludGVyIHRvIHRoZSBQRUkNCj4gPiA+PiA+IFNlcnZpY2VzDQo+ID4gPj4gPiA+Pj4+Pj4gVGFi bGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBwdWJsaXNoZWQgYnkgdGhlIFBFSSBGb3VuZGF0aW9uLg0K PiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgVGhpcyAgICAgICAgICAgICAgICAgICBUaGUg RUZJX1BFSV9NTV9BQ0NFU1NfUFBJDQo+ID4gPmluc3RhbmNlLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICsgIEBwYXJhbSAgRGVzY3JpcHRvckluZGV4ICAgICAgICBUaGUgcmVnaW9uIG9mIE1NUkFNIHRv DQo+ID4gPkxvY2suDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsg IEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgICAgICBUaGUgb3BlcmF0aW9uIHdhcyBzdWNjZXNz ZnVsLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX1VOU1VQUE9SVEVEICAgICAg ICBUaGUgc3lzdGVtIGRvZXMgbm90DQo+ID4gPnN1cHBvcnQNCj4gPiA+PiA+ID4+Pj4+IG9wZW5p bmcNCj4gPiA+PiA+ID4+Pj4+Pj4+IGFuZA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IGNsb3Npbmcgb2Yg TU1SQU0uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsqKi8NCj4g PiA+PiA+ID4+Pj4+Pj4+PiArdHlwZWRlZg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICtFRklfU1RBVFVT DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyhFRklBUEkgKkVGSV9QRUlfTU1fTE9DSykoDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKyAgSU4gRUZJX1BFSV9TRVJWSUNFUyAgICAgICAgICAgICAgICAqKlBlaVNl cnZpY2VzLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIEVGSV9QRUlfTU1fQUNDRVNTX1BQSSAg ICAgICAgICAgKlRoaXMsDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgSU4gVUlOVE4gICAgICAgICAg ICAgICAgICAgICAgICAgICBEZXNjcmlwdG9ySW5kZXgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICAp Ow0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArLyoqDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKyAgUXVlcmllcyB0aGUgbWVtb3J5IGNvbnRyb2xsZXIgZm9yIHRoZSBwb3Nz aWJsZSByZWdpb25zDQo+ID4gdGhhdA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICt3aWxsIHN1cHBvcnQN Cj4gPiA+PiA+ID4+Pj4+Pj4+PiBNTVJBTS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKyAgVGhpcyBmdW5jdGlvbiBkZXNjcmliZXMgdGhlIE1NUkFNIHJlZ2lvbnMu DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgVGhpcyBkYXRhIHN0cnVjdHVyZSBmb3JtcyB0aGUgY29u dHJhY3QgYmV0d2VlbiB0aGUNCj4gPiA+PiA+ID4+IE1NX0FDQ0VTUw0KPiA+ID4+ID4gPj4+Pj4g YW5kDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gTU1fSVBMIGRyaXZlcnMuIFRoZXJlIGlzIGFuDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgYW1iaWd1aXR5IHdoZW4gYW55IE1NUkFNIHJlZ2lvbiBpcyByZW1h cHBlZC4gRm9yDQo+ID4gPj4gPiBleGFtcGxlLA0KPiA+ID4+ID4gPj4gb24NCj4gPiA+PiA+ID4+ Pj4+Pj4gc29tZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+IGNoaXBzZXRzLCBzb21lIE1NUkFNDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgcmVnaW9ucyBjYW4gYmUgaW5pdGlhbGl6ZWQgYXQgb25lIHBoeXNp Y2FsIGFkZHJlc3MgYnV0IGlzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBsYXRlciBhY2Nlc3NlZCBh dA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IGFub3RoZXIgcHJvY2Vzc29yIGFkZHJlc3MuDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKyAgVGhlcmUgaXMgY3VycmVudGx5IG5vIHdheSBmb3IgdGhlIE1NIElQTCBk cml2ZXIgdG8ga25vdw0KPiA+ID50aGF0DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBpdCBtdXN0IHVz ZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHR3byBkaWZmZXJlbnQgYWRkcmVzc2VzDQo+ID4gPj4gPiA+ Pj4+Pj4+Pj4gKyAgZGVwZW5kaW5nIG9uIHdoYXQgaXQgaXMgdHJ5aW5nIHRvIGRvLiBBcyBhIHJl c3VsdCwgaW5pdGlhbA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgY29uZmlndXJhdGlvbiBhbmQNCj4g PiA+PiA+ID4+Pj4+Pj4+PiBsb2FkaW5nIGNhbiB1c2UgdGhlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4g KyAgcGh5c2ljYWwgYWRkcmVzcyBQaHlzaWNhbFN0YXJ0IHdoaWxlIE1NUkFNIGlzIG9wZW4uDQo+ ID4gPj4gPiBIb3dldmVyLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgb25jZQ0KPiA+ID4+ID4gPj4+ Pj4+PiB0aGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiByZWdpb24gaGFzIGJlZW4NCj4gPiA+PiA+ID4+ Pj4+Pj4+PiArICBjbG9zZWQgYW5kIG5lZWRzIHRvIGJlIGFjY2Vzc2VkIGJ5IGFnZW50cyBpbiBN TSwgdGhlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBDcHVTdGFydCBhZGRyZXNzDQo+ID4gPj4gPiA+ Pj4+Pj4+Pj4gbXVzdCBiZSB1c2VkLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgUFBJIHB1 Ymxpc2hlcyB0aGUgYXZhaWxhYmxlIG1lbW9yeSB0aGF0IHRoZSBjaGlwc2V0DQo+ID4gPmNhbg0K PiA+ID4+ID4gPj4+Pj4+Pj4+ICsgc2hyb3VkIGZvcg0KPiA+ID4+ID4gPj4+Pj4+Pj4gdGhlDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gdXNlIG9mIGluc3RhbGxpbmcgY29kZS4NCj4gPiA+PiA+ID4+Pj4+ Pj4+PiArICBUaGVzZSByZWdpb25zIHNlcnZlIHRoZSBkdWFsIHB1cnBvc2Ugb2YgZGVzY3JpYmlu ZyB3aGljaA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgcmVnaW9ucyBoYXZlDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gYmVlbiBvcGVuLCBjbG9zZWQsIG9yIGxvY2tlZC4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr ICBJbiBhZGRpdGlvbiwgdGhlc2UgcmVnaW9ucyBtYXkgaW5jbHVkZSBvdmVybGFwcGluZw0KPiA+ IG1lbW9yeQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgcmFuZ2VzLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ IGRlcGVuZGluZyBvbiB0aGUgY2hpcHNldA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIGltcGxlbWVu dGF0aW9uLiBUaGUgbGF0dGVyIG1pZ2h0IGluY2x1ZGUgYSBjaGlwc2V0IHRoYXQNCj4gPiA+PiA+ ID4+Pj4+Pj4+PiArIHN1cHBvcnRzIFQtU0VHLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHdoZXJlIG1l bW9yeSBuZWFyIHRoZSB0b3ANCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBvZiB0aGUgcGh5c2ljYWwg RFJBTSBjYW4gYmUgYWxsb2NhdGVkIGZvciBNTVJBTSB0b28uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4g KyAgVGhlIGtleSB0aGluZyB0byBub3RlIGlzIHRoYXQgdGhlIHJlZ2lvbnMgdGhhdCBhcmUgZGVz Y3JpYmVkDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBieSB0aGUgUFBJDQo+ID4gPj4gPiA+Pj4+Pj4+ IGFyZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4gYQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHN1YnNldCBvZiB0 aGUgY2FwYWJpbGl0aWVzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgb2YgdGhlIGhhcmR3YXJlLg0K PiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFyYW0gIFBlaVNl cnZpY2VzICAgICAgICAgICAgQW4gaW5kaXJlY3QgcG9pbnRlciB0byB0aGUgUEVJDQo+ID4gPj4g PiBTZXJ2aWNlcw0KPiA+ID4+ID4gPj4+Pj4+IFRhYmxlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gcHVi bGlzaGVkIGJ5IHRoZSBQRUkgRm91bmRhdGlvbi4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFy YW0gIFRoaXMgICAgICAgICAgICAgICAgICAgVGhlIEVGSV9QRUlfTU1fQUNDRVNTX1BQSQ0KPiA+ ID5pbnN0YW5jZS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFyYW0gIE1tcmFtTWFwU2l6ZSAg ICAgICAgICAgQSBwb2ludGVyIHRvIHRoZSBzaXplLCBpbg0KPiA+ID5ieXRlcywNCj4gPiA+PiA+ IG9mDQo+ID4gPj4gPiA+Pj4+PiB0aGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBNbXJhbU1lbW9yeU1h cCBidWZmZXIuIE9uIGlucHV0LCB0aGlzIHZhbHVlIGlzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgdGhh dA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgaXMgYWxsb2NhdGVkIGJ5IHRoZSBjYWxsZXIuIE9uDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gb3V0cHV0LCBpdCBpcyB0aGUgc2l6ZSBvZiB0aGUNCj4gPiA+PiA+ ID4+Pj4+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyIHRoYXQg d2FzIHJldHVybmVkIGJ5DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyB0aGUgZmlybXdhcmUgaWYgdGhl IGJ1ZmZlcg0KPiA+ID4+ID4gPj4+Pj4+Pj4gd2FzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gbGFyZ2Ug ZW5vdWdoLCBvciwgaWYgdGhlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGJ1ZmZlciB3YXMgdG9vIHNtYWxsLCB0aGUNCj4gPiA+PiA+ID4+Pj4+ Pj4+PiArIHNpemUgb2YgdGhlIGJ1ZmZlciB0aGF0IGlzDQo+ID4gPj4gPiA+Pj4+Pj4+PiBuZWVk ZWQgdG8NCj4gPiA+PiA+ID4+Pj4+Pj4+PiBjb250YWluIHRoZSBtYXAuDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgQHBhcmFtIE1tcmFtTWFwICAgICAgICAgICAgICAgIEEgcG9pbnRlciB0byB0aGUg YnVmZmVyIGluDQo+ID4gPndoaWNoDQo+ID4gPj4gPiA+Pj4+Pj4gZmlybXdhcmUNCj4gPiA+PiA+ ID4+Pj4+Pj4+PiBwbGFjZXMgdGhlIGN1cnJlbnQgbWVtb3J5IG1hcC4gVGhlIG1hcCBpcw0KPiA+ ID4+ID4gPj4+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbiBhcnJh eSBvZg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgRUZJX01NUkFNX0RFU0NSSVBUT1JzDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX1NVQ0NFU1Mg ICAgICAgICAgICBUaGUgY2hpcHNldCBzdXBwb3J0ZWQgdGhlDQo+ID4gZ2l2ZW4NCj4gPiA+PiA+ ID4+Pj4+IHJlc291cmNlLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX0JVRkZF Ul9UT09fU01BTEwgICBUaGUgTW1yYW1NYXANCj4gPiA+PiA+IHBhcmFtZXRlcg0KPiA+ID4+ID4g Pj4+IHdhcw0KPiA+ID4+ID4gPj4+Pj4+IHRvbw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHNtYWxsLiBU aGUgY3VycmVudA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBidWZmZXIgc2l6ZSBuZWVkZWQgdG8gaG9sZA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsg dGhlIG1lbW9yeSBtYXAgaXMNCj4gPiA+PiA+ID4+Pj4+Pj4gcmV0dXJuZWQNCj4gPiA+PiA+ID4+ Pj4+Pj4+IGluDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE1tcmFtTWFwU2l6ZS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKyoqLw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICt0eXBlZGVmDQo+ID4gPj4gPiA+Pj4+Pj4+ Pj4gK0VGSV9TVEFUVVMNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArKEVGSUFQSSAqRUZJX1BFSV9NTV9D QVBBQklMSVRJRVMpKA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIEVGSV9QRUlfU0VSVklDRVMg ICAgICAgICAgICAgICAgKipQZWlTZXJ2aWNlcywNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBF RklfUEVJX01NX0FDQ0VTU19QUEkgICAgICAgICAgICpUaGlzLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICsgIElOIE9VVCBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgKk1tcmFtTWFwU2l6ZSwNCj4g PiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBPVVQgRUZJX01NUkFNX0RFU0NSSVBUT1IgICAgICAgICpN bXJhbU1hcA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgICk7DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0K PiA+ID4+ID4gPj4+Pj4+Pj4+ICsvLy8NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArLy8vICBFRkkgTU0g QWNjZXNzIFBQSSBpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIHZpc2liaWxpdHkgb2YNCj4gPiA+PiA+ ID4+Pj4+Pj4+PiArdGhlIE1NUkFNIG9uDQo+ID4gPj4gPiA+Pj4+Pj4+PiB0aGUNCj4gPiA+PiA+ ID4+Pj4+Pj4+PiBwbGF0Zm9ybS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArLy8vICBJdCBhYnN0cmFj dHMgdGhlIGxvY2F0aW9uIGFuZCBjaGFyYWN0ZXJpc3RpY3Mgb2YgTU1SQU0uDQo+ID4gPj4gPiA+ Pj4+Pj4+Pj4gK1RoZSBwbGF0Zm9ybQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHNob3VsZCByZXBvcnQN Cj4gPiA+PiA+ID4+Pj4+Pj4+PiArLy8vICBhbGwgTU1SQU0gdmlhIEVGSV9QRUlfTU1fQUNDRVNT X1BQSS4gVGhlDQo+ID4gPmV4cGVjdGF0aW9uDQo+ID4gPj4gPiBpcw0KPiA+ID4+ID4gPj4+IHRo YXQNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArdGhlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gbm9ydGggYnJp ZGdlIG9yDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKy8vLyAgbWVtb3J5IGNvbnRyb2xsZXIgd291bGQg cHVibGlzaCB0aGlzIFBQSS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArLy8vDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gK3N0cnVjdCBfRUZJX1BFSV9NTV9BQ0NFU1NfUFBJIHsNCj4gPiA+PiA+ID4+Pj4+Pj4+ PiArICBFRklfUEVJX01NX09QRU4gICAgICAgICAgT3BlbjsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr ICBFRklfUEVJX01NX0NMT1NFICAgICAgICAgQ2xvc2U7DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAg RUZJX1BFSV9NTV9MT0NLICAgICAgICAgIExvY2s7DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgRUZJ X1BFSV9NTV9DQVBBQklMSVRJRVMgIEdldENhcGFiaWxpdGllczsNCj4gPiA+PiA+ID4+Pj4+Pj4+ PiArICBCT09MRUFOICAgICAgICAgICAgICAgICAgTG9ja1N0YXRlOw0KPiA+ID4+ID4gPj4+Pj4+ Pj4+ICsgIEJPT0xFQU4gICAgICAgICAgICAgICAgICBPcGVuU3RhdGU7DQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gK307DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICtleHRl cm4gRUZJX0dVSUQgZ0VmaVBlaU1tQWNjZXNzUHBpR3VpZDsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyNlbmRpZg0KPiA+ID4+ID4gPj4+Pj4+Pj4+IGRpZmYgLS1n aXQgYS9NZGVQa2cvSW5jbHVkZS9QcGkvTW1Db250cm9sLmgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBi L01kZVBrZy9JbmNsdWRlL1BwaS9NbUNvbnRyb2wuaCBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ ID4+ID4gaW5kZXgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAwMDAwMDAwMDAwLi45ODNlZDk1Y2Q1DQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gLS0tIC9kZXYvbnVsbA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsrKyBi L01kZVBrZy9JbmNsdWRlL1BwaS9NbUNvbnRyb2wuaA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IEBAIC0w LDAgKzEsOTAgQEANCj4gPiA+PiA+ID4+Pj4+Pj4+PiArLyoqIEBmaWxlDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgRUZJIE1NIENvbnRyb2wgUFBJIGRlZmluaXRpb24uDQo+ID4gPj4gPiA+Pj4+Pj4+ Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgUFBJIGlzIHVzZWQgaW5pdGlhdGUgc3lu Y2hyb25vdXMgTU1JIGFjdGl2YXRpb25zLiBUaGlzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBQUEkg Y291bGQgYmUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBwdWJsaXNoZWQgYnkgYSBwcm9jZXNzb3INCj4g PiA+PiA+ID4+Pj4+Pj4+PiArICBkcml2ZXIgdG8gYWJzdHJhY3QgdGhlIE1NSSBJUEkgb3IgYSBk cml2ZXIgd2hpY2ggYWJzdHJhY3RzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyB0aGUgQVNJQyB0aGF0 DQo+ID4gPj4gPiA+Pj4+Pj4+IGlzDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gc3VwcG9ydGluZyB0aGUg QVBNIHBvcnQuDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQmVjYXVzZSBvZiB0aGUgcG9zc2liaWxp dHkgb2YgcGVyZm9ybWluZyBNTUkgSVBJDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyB0cmFuc2FjdGlv bnMsIHRoZSBhYmlsaXR5DQo+ID4gPj4gPiA+Pj4+Pj4+PiB0bw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ IGdlbmVyYXRlIHRoaXMgZXZlbnQNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBmcm9tIGEgcGxhdGZv cm0gY2hpcHNldCBhZ2VudCBpcyBhbiBvcHRpb25hbCBjYXBhYmlsaXR5IGZvcg0KPiA+ID4+ID4g Pj4+Pj4+Pj4+ICsgYm90aA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgSUEtMzINCj4gPiA+PiA+ID4+ Pj4+Pj4gYW5kDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4geDY0LWJhc2VkIHN5c3RlbXMuDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIENvcHlyaWdodCAoYykgMjAxOSwg SW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArIHJlc2Vy dmVkLjxCUj4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog QlNELTItQ2xhdXNlLVBhdGVudA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+ Pj4+PiArICBAcGFyIFJldmlzaW9uIFJlZmVyZW5jZToNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBU aGlzIFBQSSBpcyBpbnRyb2R1Y2VkIGluIFBJIFZlcnNpb24gMS41Lg0KPiA+ID4+ID4gPj4+Pj4+ Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArI2lmbmRlZiBfTU1fQ09OVFJP TF9QUElfSF8NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArI2RlZmluZSBfTU1fQ09OVFJPTF9QUElfSF8N Cj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyNkZWZpbmUgRUZJX1BF SV9NTV9DT05UUk9MX1BQSV9HVUlEIFwNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICB7IDB4NjFjNjg3 MDIsIDB4NGQ3ZSwgMHg0ZjQzLCAweDhkLCAweGVmLCAweGE3LCAweDQzLCAweDUsDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gKzB4Y2UsIDB4NzQsDQo+ID4gPj4gPiA+Pj4+Pj4+PiAweGM1IH0NCj4gPiA+ PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gK3R5cGVkZWYgc3RydWN0IF9FRklf UEVJX01NX0NPTlRST0xfUFBJDQo+ID4gPj4gPiA+Pj4+Pj4gRUZJX1BFSV9NTV9DT05UUk9MX1BQ STsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKy8qKg0KPiA+ID4+ ID4gPj4+Pj4+Pj4+ICsgIEludm9rZXMgUFBJIGFjdGl2YXRpb24gZnJvbSB0aGUgUEkgUEVJIGVu dmlyb25tZW50Lg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBA cGFyYW0gIFBlaVNlcnZpY2VzICAgICAgICAgICBBbiBpbmRpcmVjdCBwb2ludGVyIHRvIHRoZSBQ RUkNCj4gPiA+PiA+IFNlcnZpY2VzDQo+ID4gPj4gPiA+Pj4+PiBUYWJsZQ0KPiA+ID4+ID4gPj4+ Pj4+Pj4+IHB1Ymxpc2hlZCBieSB0aGUgUEVJIEZvdW5kYXRpb24uDQo+ID4gPj4gPiA+Pj4+Pj4+ Pj4gKyAgQHBhcmFtICBUaGlzICAgICAgICAgICAgICAgICAgVGhlIFBFSV9NTV9DT05UUk9MX1BQ SQ0KPiA+IGluc3RhbmNlLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgQXJndW1lbnRC dWZmZXIgICAgICAgIFRoZSB2YWx1ZSBwYXNzZWQgdG8gdGhlDQo+ID4gTU1JDQo+ID4gPj4gPiA+ Pj4gaGFuZGxlci4NCj4gPiA+PiA+ID4+Pj4+Pj4gVGhpcw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHZh bHVlIGNvcnJlc3BvbmRzIHRvIHRoZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN3TW1pSW5wdXRWYWx1ZSBpbiB0aGUNCj4gPiA+PiA+ID4+Pj4+ Pj4+PiArIFJlZ2lzdGVyQ29udGV4dCBwYXJhbWV0ZXINCj4gPiA+PiA+ID4+Pj4+Pj4gZm9yDQo+ ID4gPj4gPiA+Pj4+Pj4+PiB0aGUNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBSZWdpc3RlcigpDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24g aW4gdGhlDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyBFRklfTU1fU1dfRElTUEFUQ0hfUFJPVE9DT0wN Cj4gPiA+PiA+ID4+Pj4+Pj4gYW5kDQo+ID4gPj4gPiA+Pj4+Pj4+PiBpbg0KPiA+ID4+ID4gPj4+ Pj4+Pj4+IHRoZSBDb250ZXh0IHBhcmFtZXRlcg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGluIHRoZSBjYWxsIHRvIHRoZSBEaXNwYXRjaEZ1bmN0 aW9uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBBcmd1bWVudEJ1ZmZlclNpemUgICAg VGhlIHNpemUgb2YgdGhlIGRhdGENCj4gPiBwYXNzZWQNCj4gPiA+aW4NCj4gPiA+PiA+ID4+Pj4+ Pj4+PiBBcmd1bWVudEJ1ZmZlciBvciBOVUxMIGlmIEFyZ3VtZW50QnVmZmVyIGlzIE5VTEwuDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBQZXJpb2RpYyAgICAgICAgICAgICAgQW4gb3B0 aW9uYWwgbWVjaGFuaXNtIHRvDQo+ID4gPnBlcmlvZGljYWxseQ0KPiA+ID4+ID4gPj4+Pj4gcmVw ZWF0DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gYWN0aXZhdGlvbi4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiAr ICBAcGFyYW0gIEFjdGl2YXRpb25JbnRlcnZhbCAgICBBbiBvcHRpb25hbCBwYXJhbWV0ZXIgdG8N Cj4gPiA+cmVwZWF0DQo+ID4gPj4gPiBhdA0KPiA+ID4+ID4gPj4+Pj4gdGhpcw0KPiA+ID4+ID4g Pj4+Pj4+Pj4gcGVyaW9kDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gb25lDQo+ID4gPj4gPiA+Pj4+Pj4+ Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZSBvciwgaWYgdGhlIFBlcmlv ZGljIEJvb2xlYW4gaXMgc2V0LA0KPiA+ID4+ID4gcGVyaW9kaWNhbGx5Lg0KPiA+ID4+ID4gPj4+ Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAg ICAgICBUaGUgTU1JIGhhcyBiZWVuIGVuZ2VuZGVyZWQuDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAg QHJldHZhbCBFRklfREVWSUNFX0VSUk9SICAgICAgVGhlIHRpbWluZyBpcyB1bnN1cHBvcnRlZC4N Cj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9JTlZBTElEX1BBUkFNRVRFUiBUaGUg YWN0aXZhdGlvbiBwZXJpb2QgaXMNCj4gPiA+PiA+ID4+Pj4+PiB1bnN1cHBvcnRlZC4NCj4gPiA+ PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9OT1RfU1RBUlRFRCAgICAgICBUaGUgTU0gYmFz ZSBzZXJ2aWNlIGhhcw0KPiA+IG5vdA0KPiA+ID4+ID4gPj4gYmVlbg0KPiA+ID4+ID4gPj4+Pj4+ Pj4gaW5pdGlhbGl6ZWQuDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICsqKi8NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArdHlwZWRlZg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICtF RklfU1RBVFVTDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyhFRklBUEkgKkVGSV9QRUlfTU1fQUNUSVZB VEUpICgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX1NFUlZJQ0VTICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAqKlBlaVNlcnZpY2VzLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICsgIElOIEVGSV9QRUlfTU1fQ09OVFJPTF9QUEkgICAgICAgICAgICAgICAgICAgICAgICAgICog VGhpcywNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBPVVQgSU5UOCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAqQXJndW1lbnRCdWZmZXINCj4gPiA+T1BUSU9OQUwsDQo+ ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgSU4gT1VUIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKkFyZ3VtZW50QnVmZmVyU2l6ZQ0KPiA+ID4+ID4gPj4+IE9QVElPTkFM LA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIEJPT0xFQU4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFBlcmlvZGljIE9QVElPTkFMLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICsgIElOIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFj dGl2YXRpb25JbnRlcnZhbA0KPiA+IE9QVElPTkFMDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgKTsN Cj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKy8qKg0KPiA+ID4+ID4g Pj4+Pj4+Pj4+ICsgIENsZWFycyBhbnkgc3lzdGVtIHN0YXRlIHRoYXQgd2FzIGNyZWF0ZWQgaW4g cmVzcG9uc2UgdG8NCj4gPiB0aGUNCj4gPiA+PiA+ID4+PiBUcmlnZ2VyKCkNCj4gPiA+PiA+ID4+ Pj4+PiBjYWxsLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBA cGFyYW0gIFBlaVNlcnZpY2VzICAgICAgICAgICBHZW5lcmFsIHB1cnBvc2Ugc2VydmljZXMNCj4g PiA+YXZhaWxhYmxlDQo+ID4gPj4gPiB0bw0KPiA+ID4+ID4gPj4+Pj4gZXZlcnkNCj4gPiA+PiA+ ID4+Pj4+Pj4+IFBFSU0uDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBUaGlzICAgICAg ICAgICAgICAgICAgVGhlIFBFSV9NTV9DT05UUk9MX1BQSQ0KPiA+IGluc3RhbmNlLg0KPiA+ID4+ ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVyaW9kaWMgICAgICAgICAgICAgIE9wdGlvbmFsIHBh cmFtZXRlciB0byByZXBlYXQgYXQNCj4gPiA+dGhpcw0KPiA+ID4+ID4gPj4+Pj4gcGVyaW9kDQo+ ID4gPj4gPiA+Pj4+Pj4+IG9uZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHRpbWUgb3IsIGlmIHRoZSBQZXJpb2RpYyBCb29sZWFuIGlzIHNldCwN Cj4gPiA+PiA+IHBlcmlvZGljYWxseS4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+ Pj4+Pj4+Pj4gKyAgQHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgVGhlIE1NSSBoYXMgYmVl biBlbmdlbmRlcmVkLg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX0RFVklDRV9F UlJPUiAgICAgIFRoZSBzb3VyY2UgY291bGQgbm90IGJlDQo+ID4gPj4gPiBjbGVhcmVkLg0KPiA+ ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX0lOVkFMSURfUEFSQU1FVEVSIFRoZSBzZXJ2 aWNlIGRpZCBub3QNCj4gPiA+c3VwcG9ydA0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsgdGhlDQo+ID4g Pj4gPiA+Pj4+Pj4+PiBQZXJpb2RpYw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IGlucHV0IGFyZ3VtZW50 Lg0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4gPj4g PiA+Pj4+Pj4+Pj4gK3R5cGVkZWYNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArRUZJX1NUQVRVUw0KPiA+ ID4+ID4gPj4+Pj4+Pj4+ICsoRUZJQVBJICpQRUlfTU1fREVBQ1RJVkFURSkgKA0KPiA+ID4+ID4g Pj4+Pj4+Pj4+ICsgIElOIEVGSV9QRUlfU0VSVklDRVMgICAgICAgICAgICAgICAgICAgICAgKipQ ZWlTZXJ2aWNlcywNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX01NX0NPTlRST0xf UFBJICAgICAgICAgICAgICAgICogVGhpcywNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBCT09M RUFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcmlvZGljIE9QVElPTkFMDQo+ID4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgKTsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKy8vLw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsvLy8gIFRoZSBFRklfUEVJX01NX0NPTlRS T0xfUFBJIGlzIHByb2R1Y2VkIGJ5IGEgUEVJTS4NCj4gPiA+SXQNCj4gPiA+PiA+ID4+Pj4+PiBw cm92aWRlcw0KPiA+ID4+ID4gPj4+Pj4+PiBhbg0KPiA+ID4+ID4gPj4+Pj4+Pj4+IGFic3RyYWN0 aW9uIG9mIHRoZQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsvLy8gIHBsYXRmb3JtIGhhcmR3YXJlIHRo YXQgZ2VuZXJhdGVzIGFuIE1NSS4gVGhlcmUgYXJlDQo+ID4gPm9mdGVuDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gK0kvTyBwb3J0cw0KPiA+ID4+ID4gPj4+Pj4+Pj4+IHRoYXQsIHdoZW4gYWNjZXNzZWQs IHdpbGwNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArLy8vICBnZW5lcmF0ZSB0aGUgTU1JLiBBbHNvLCB0 aGUgaGFyZHdhcmUgb3B0aW9uYWxseQ0KPiA+ID5zdXBwb3J0cw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ ICt0aGUNCj4gPiA+PiA+ID4+Pj4+Pj4gcGVyaW9kaWMNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBnZW5l cmF0aW9uIG9mIHRoZXNlIHNpZ25hbHMuDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKy8vLw0KPiA+ID4+ ID4gPj4+Pj4+Pj4+ICtzdHJ1Y3QgX1BFSV9NTV9DT05UUk9MX1BQSSB7DQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgUEVJX01NX0FDVElWQVRFICAgIFRyaWdnZXI7DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4g KyAgUEVJX01NX0RFQUNUSVZBVEUgIENsZWFyOw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICt9Ow0KPiA+ ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArZXh0ZXJuIEVGSV9HVUlEIGdF ZmlQZWlNbUNvbnRyb2xQcGlHdWlkOw0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPiA+PiA+ID4+ Pj4+Pj4+PiArI2VuZGlmDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gZGlmZiAtLWdpdCBhL01kZVBrZy9N ZGVQa2cuZGVjIGIvTWRlUGtnL01kZVBrZy5kZWMNCj4gPiA+aW5kZXgNCj4gPiA+PiA+ID4+Pj4+ Pj4+PiBiMzgyZWZkNTc4Li4zNGUwZjM5Mzk1IDEwMDY0NA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IC0t LSBhL01kZVBrZy9NZGVQa2cuZGVjDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKysrIGIvTWRlUGtnL01k ZVBrZy5kZWMNCj4gPiA+PiA+ID4+Pj4+Pj4+PiBAQCAtOTI1LDYgKzkyNSwxMiBAQA0KPiA+ID4+ ID4gPj4+Pj4+Pj4+ICAgIyMgSW5jbHVkZS9QcGkvU2VjSG9iRGF0YS5oDQo+ID4gPj4gPiA+Pj4+ Pj4+Pj4gICBnRWZpU2VjSG9iRGF0YVBwaUd1aWQgPSB7IDB4M2ViZGFmMjAsIDB4NjY2NywgMHg0 MGQ4LA0KPiA+ID57MHhiNCwNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAweGVlLA0KPiA+ID4+ID4gPj4+ Pj4+PiAweGY1LA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IDB4OTksIDB4OWEsIDB4YzEsIDB4YjcsIDB4 MWYgfSB9DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICAjIyBJbmNs dWRlL1BwaS9NbUFjY2Vzcy5oDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgZ0VmaVBlaU1tQWNjZXNz UHBpR3VpZCAgICAgICAgICA9ICB7IDB4MjY4ZjMzYTksIDB4Y2NjZCwNCj4gPiA+MHg0OGJlLA0K PiA+ID4+ID4gPj4+Pj4geyAweDg4LA0KPiA+ID4+ID4gPj4+Pj4+Pj4gMHgxNywNCj4gPiA+PiA+ ID4+Pj4+Pj4+PiAweDg2LCAweDUsIDB4M2EsIDB4YzMsIDB4MmUsIDB4ZDYgfX0NCj4gPiA+PiA+ ID4+Pj4+Pj4+PiArDQo+ID4gPj4gPiA+Pj4+Pj4+Pj4gKyAgIyMgSW5jbHVkZS9QcGkvTW1Db250 cm9sLmgNCj4gPiA+PiA+ID4+Pj4+Pj4+PiArICBnRWZpUGVpTW1Db250cm9sUHBpR3VpZCAgICAg ICAgID0gIHsgMHg2MWM2ODcwMiwgMHg0ZDdlLA0KPiA+ID4weDRmNDMsDQo+ID4gPj4gPiA+Pj4+ PiB7IDB4OGQsDQo+ID4gPj4gPiA+Pj4+Pj4+PiAweGVmLA0KPiA+ID4+ID4gPj4+Pj4+Pj4+IDB4 YTcsIDB4NDMsIDB4NSwgMHhjZSwgMHg3NCwgMHhjNSB9fQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+ICsN Cj4gPiA+PiA+ID4+Pj4+Pj4+PiAgICMNCj4gPiA+PiA+ID4+Pj4+Pj4+PiAgICMgUFBJcyBkZWZp bmVkIGluIFBJIDEuNy4NCj4gPiA+PiA+ID4+Pj4+Pj4+PiAgICMNCj4gPiA+PiA+ID4+Pj4+Pj4+ PiAtLQ0KPiA+ID4+ID4gPj4+Pj4+Pj4+IDIuMTYuMi53aW5kb3dzLjENCj4gPiA+PiA+ID4+Pj4+ Pj4+Pg0KPiA+ID4+ID4gPj4+Pj4+Pj4+DQo+ID4gPj4gPiA+Pj4+Pj4+Pj4NCj4gPiA+PiA+ID4+ Pj4NCj4gPiA+PiA+ID4+Pj4NCj4gPiA+PiA+ID4+Pj4NCj4gPiA+PiA+ID4+Pj4NCj4gPiA+PiA+ ID4+Pg0KPiA+ID4+ID4gPj4+DQo+ID4gPj4gPiA+Pj4NCj4gPiA+PiA+ID4NCj4gPiA+PiA+DQo+ ID4gPj4gPg0KPiA+ID4+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4NCg0K