From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: marc.w.chen@intel.com) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by groups.io with SMTP; Wed, 14 Aug 2019 02:53:52 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Aug 2019 02:53:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,384,1559545200"; d="scan'208";a="327989709" Received: from pgsmsx103.gar.corp.intel.com ([10.221.44.82]) by orsmga004.jf.intel.com with ESMTP; 14 Aug 2019 02:53:49 -0700 Received: from pgsmsx108.gar.corp.intel.com ([169.254.8.125]) by PGSMSX103.gar.corp.intel.com ([169.254.2.25]) with mapi id 14.03.0439.000; Wed, 14 Aug 2019 17:53:48 +0800 From: "Marc W Chen" To: "Gao, Liming" , "devel@edk2.groups.io" , "lersek@redhat.com" , "Ni, Ray" 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: AQHVRcW+GtoEOJCyfEeiP4XpSc+qX6bl/g2wgAABaiCAAAEfIP//jrCAgAADE4CAAQvmAIAGudOAgAAUJYCAAfdxAIAD40QAgACGQzCABRe0AIABm1CA Date: Wed, 14 Aug 2019 09:53:48 +0000 Message-ID: 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: <4A89E2EF3DFEDB4C8BFDE51014F606A14E4CFDDA@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZGU1YWM3MGEtMmJiMC00Nzg3LWJkZTQtMjY3YjZjMDdhYThjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoic2pTY0lkYXVtRk9PWWFuWnd5T1NUZ3UzK1B4MitTaDZVMW52ZU5YTkNaYlkyWnZnV1wvTytoM3lSUWN3RWxZN0cifQ== x-originating-ip: [172.30.20.205] MIME-Version: 1.0 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIExpbWluZyBmb3IgcHVzaGluZyB0aGUgY29kZS4NCg0KQ2FuIHdlIGhhdmUgYSBjb25j bHVzaW9uIGZvciB0aGUgU21tQWNjZXNzLmggcmVtb3ZhbCBmcm9tIE1kZU1vZHVsZVBrZz8gV2hv IGNhbiBtYWtlIHRoZSBkZWNpc2lvbj8gT3IgZG8gd2UgbmVlZCBhbnkgZnVydGhlciBkaXNjdXNz aW9uPw0KDQpUaGFua3MsDQpNYXJjDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g RnJvbTogR2FvLCBMaW1pbmcNCj4gU2VudDogVHVlc2RheSwgQXVndXN0IDEzLCAyMDE5IDU6MjAg UE0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBHYW8sIExpbWluZyA8bGltaW5nLmdhb0Bp bnRlbC5jb20+OyBDaGVuLCBNYXJjDQo+IFcgPG1hcmMudy5jaGVuQGludGVsLmNvbT47IGxlcnNl a0ByZWRoYXQuY29tOyBOaSwgUmF5DQo+IDxyYXkubmlAaW50ZWwuY29tPg0KPiBDYzogS2lubmV5 LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTog W2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnOiBBZGQgTW1BY2Nlc3MgYW5kIE1tQ29udHJvbA0K PiBkZWZpbml0aW9uLg0KPiANCj4gUHVzaCBANmYzM2Y3YTI2MjMxNGFmMzVlMmI5OWM4NDllMDg5 MjhlYTQ5YWE1NQ0KPiANCj4gPi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID5Gcm9tOiBk ZXZlbEBlZGsyLmdyb3Vwcy5pbyBbbWFpbHRvOmRldmVsQGVkazIuZ3JvdXBzLmlvXSBPbiBCZWhh bGYgT2YNCj4gPkxpbWluZyBHYW8NCj4gPlNlbnQ6IFNhdHVyZGF5LCBBdWd1c3QgMTAsIDIwMTkg MTE6MzQgQU0NCj4gPlRvOiBDaGVuLCBNYXJjIFcgPG1hcmMudy5jaGVuQGludGVsLmNvbT47IGRl dmVsQGVkazIuZ3JvdXBzLmlvOw0KPiA+bGVyc2VrQHJlZGhhdC5jb207IE5pLCBSYXkgPHJheS5u aUBpbnRlbC5jb20+DQo+ID5DYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlA aW50ZWwuY29tPg0KPiA+U3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBrZzog QWRkIE1tQWNjZXNzIGFuZCBNbUNvbnRyb2wNCj4gPmRlZmluaXRpb24uDQo+ID4NCj4gPkkgYWdy ZWUuIFRoZSBwYXRjaCB0byBhZGQgdGhlbSBpbiBNZGVQa2cgaXMgY2xlYXIuIEkgd2lsbCBwdXNo IGl0IG5leHQgTW9uZGF5Lg0KPiA+DQo+ID5UaGFua3MNCj4gPkxpbWluZw0KPiA+PiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBDaGVuLCBNYXJjIFcNCj4gPj4gU2VudDog U2F0dXJkYXksIEF1Z3VzdCAxMCwgMjAxOSAxMTozMyBBTQ0KPiA+PiBUbzogZGV2ZWxAZWRrMi5n cm91cHMuaW87IGxlcnNla0ByZWRoYXQuY29tOyBOaSwgUmF5DQo+IDxyYXkubmlAaW50ZWwuY29t PjsNCj4gPkdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPj4gQ2M6IEtpbm5l eSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPj4gU3ViamVjdDog UkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBrZzogQWRkIE1tQWNjZXNzIGFuZA0KPiBNbUNv bnRyb2wNCj4gPmRlZmluaXRpb24uDQo+ID4+DQo+ID4+IEhpIExpbWluZw0KPiA+Pg0KPiA+PiBT aW5jZSB0aGUgU21tQWNjZXNzLmggb2YgTWRlTW9kdWxlUGtnIHJlbW92YWwgaXMgc3RpbGwgdW5k ZXIgZGlzY3Vzc2lvbiwNCj4gPmNhbiB3ZSBwdXNoIHRoZSBNbUFjY2Vzcy5oIGFuZCBNbUNvbnRy b2wuaCB0byBNZGVQa2cNCj4gPj4gZmlyc3Q/IEkgaGF2ZSBvdGhlciB0YXNrcyBwZW5kaW5nIGJ5 IHRoaXMuDQo+ID4+IFdlIGNhbiBrZWVwIGRpc2N1c3NpbmcgdGhlIFNtbUFjY2VzcyBhZnRlciBw dXNoIHRoZSBjb2RlLg0KPiA+Pg0KPiA+PiBUaGFua3MsDQo+ID4+IE1hcmMNCj4gPj4NCj4gPj4g PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiA+IEZyb206IGRldmVsQGVkazIuZ3Jv dXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mDQo+IExhc3psbw0KPiA+ PiA+IEVyc2VrDQo+ID4+ID4gU2VudDogVGh1cnNkYXksIEF1Z3VzdCA4LCAyMDE5IDEyOjExIEFN DQo+ID4+ID4gVG86IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20+OyBDaGVuLCBNYXJjIFcNCj4g PG1hcmMudy5jaGVuQGludGVsLmNvbT47DQo+ID4+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdh bywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPj4gPiBDYzogS2lubmV5LCBNaWNo YWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+PiA+IFN1YmplY3Q6IFJlOiBb ZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2c6IEFkZCBNbUFjY2VzcyBhbmQNCj4gPk1tQ29udHJv bA0KPiA+PiA+IGRlZmluaXRpb24uDQo+ID4+ID4NCj4gPj4gPiBPbiAwOC8wNi8xOSAxMjowOCwg TmksIFJheSB3cm90ZToNCj4gPj4gPiA+IExhc3psbywNCj4gPj4gPiA+IERvIHlvdSB3YW50IHRv IGF2b2lkIHRvdWNoaW5nIHRoZSBPdm1mUGtnIGR1ZSB0aGUgZmlsZSByZW1vdmFsIGluDQo+ID4+ ID4gTWRlTW9kdWxlUGtnPw0KPiA+PiA+DQo+ID4+ID4gTXkgbWFpbiBwcm9ibGVtIHdpdGggdGhp cyAqc3BlY2lmaWMqIHVwZGF0ZSBwcm9wb3NhbCBpcyB0aGF0IHRoZQ0KPiA+PiA+IGlkZW50aWZp ZXJzICh0eXBlIG5hbWVzIGFuZCBzdWNoKSB0aGF0IHdvdWxkIGJlIHN1YmplY3QgdG8gcmVtb3Zh bCB3ZXJlDQo+ID4+ID4gcHVibGljbHkgc3BlY2lmaWVkIGluIGVhcmxpZXIgUEkgc3BlYyByZWxl YXNlcy4NCj4gPj4gPg0KPiA+PiA+IEkgZG9uJ3Qgc3VnZ2VzdCB0aGF0IHdlIG1haW50YWluIHR3 byBwYXJhbGxlbCBzZXRzIG9mIHR5cGVkZWZzIGFuZCBzdWNoDQo+ID4+ID4gaW4gZWRrMi4gSXQn cyBmaW5lIHRvIGtlZXAgdGhlIG5ldyAiTU0iIG5vbWVuY2xhdHVyZSB0aGUgbWFpbiBvbmUuIEJ1 dA0KPiA+PiA+IHdlIHNob3VsZCBrZWVwIHRoZSAiU01NIiBzZXQgb2YgdGVybXMgdG9vLCBhcyBh IHRoaW4gd3JhcHBlciwgaWYgdGhhdCdzDQo+ID4+ID4gdGVjaG5pY2FsbHkgZmVhc2libGUuDQo+ ID4+ID4NCj4gPj4gPiBJZiB3ZSByZW1vdmUgIlNNTSIsIHRoYXQgd2lsbCBub3Qgb25seSBhZmZl Y3QgT3ZtZlBrZyB1bnBsZWFzYW50bHksIGJ1dA0KPiA+PiA+IGEgYnVuY2ggb2Ygb3RoZXIsIG91 dC1vZi10cmVlIGNvZGUuIEFuZCB0aGUgcmVhc29uIEkgc3VkZGVubHkgY2FyZQ0KPiBhYm91dA0K PiA+PiA+IG91dC1vZi10cmVlIGNvZGUgaXMgdGhhdCBzdWNoIGNvZGUgd2FzIHdyaXR0ZW4gYWdh aW5zdCBhIHB1YmxpYyBpbmR1c3RyeQ0KPiA+PiA+IHNwZWMgKD0gZWFybGllciB2ZXJzaW9ucyBv ZiB0aGUgUEkgc3BlYykuDQo+ID4+ID4NCj4gPj4gPiBJIGRvbid0IHRoaW5rIHRoYXQgdGhlIHNp bXBsaWNpdHkgdGhhdCB3b3VsZCBjb21lIGZyb20gcmVtb3ZpbmcgIlNNTSINCj4gPj4gPiBhbHRv Z2V0aGVyLCBpcyB3ZWxsLWJhbGFuY2VkIGFnYWluc3QgdGhlIHBhaW4gdGhhdCBpdCB3b3VsZCBj YXVzZSBmb3INCj4gPj4gPiBwbGF0Zm9ybXMuDQo+ID4+ID4NCj4gPj4gPiBFYXJsaWVyIHRoaXMg d2FzIHNvbHZlZCBpbiB0aGUgZm9sbG93aW5nIGNvbW1pdHM6DQo+ID4+ID4gLSAwN2M2YTQ3ZTcw YmEgKCJNZGVQa2c6IEFkZCBuZXcgZGVmaW5pdGlvbnMgZm9yIE1hbmFnZW1lbnQNCj4gTW9kZS4i LA0KPiA+PiA+IDIwMTctMDgtMjkpDQo+ID4+ID4gLSAyZjIwOGU1OWU0YjkgKCJNZGVQa2c6IFJl ZmVyZW5jZSBuZXcgZGVmaW5pdGlvbnMgZm9yIE1hbmFnZW1lbnQNCj4gPj4gPiBNb2RlLiIsIDIw MTctMDgtMjkpDQo+ID4+ID4NCj4gPj4gPiBUaGFua3MNCj4gPj4gPiBMYXN6bG8NCj4gPj4gPg0K PiA+PiA+ID4gSSBwcmVmZXIgdG8gcmVtb3ZlIHRoZSBmaWxlcyBpbiBNZGVNb2R1bGVQa2cgdG8g YXZvaWQgZnV0dXJlDQo+IGNvbmZ1c2lvbi4NCj4gPj4gPiA+DQo+ID4+ID4gPiBUaGFua3MsDQo+ ID4+ID4gPiBSYXkNCj4gPj4gPiA+DQo+ID4+ID4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gPj4gPiA+PiBGcm9tOiBDaGVuLCBNYXJjIFcNCj4gPj4gPiA+PiBTZW50OiBUdWVzZGF5 LCBBdWd1c3QgNiwgMjAxOSA0OjU3IFBNDQo+ID4+ID4gPj4gVG86IGRldmVsQGVkazIuZ3JvdXBz LmlvOyBsZXJzZWtAcmVkaGF0LmNvbTsgTmksIFJheQ0KPiA+PiA+IDxyYXkubmlAaW50ZWwuY29t PjsNCj4gPj4gPiA+PiBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+DQo+ID4+ID4g Pj4gQ2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4g Pj4gPiA+PiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnOiBBZGQgTW1B Y2Nlc3MgYW5kDQo+ID4+ID4gTW1Db250cm9sDQo+ID4+ID4gPj4gZGVmaW5pdGlvbi4NCj4gPj4g PiA+Pg0KPiA+PiA+ID4+IEhpIExpbWluZyBhbmQgUmF5DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiBE byB5b3UgYWxzbyBhZ3JlZT8NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IFRoYW5rcywNCj4gPj4gPiA+ PiBNYXJjDQo+ID4+ID4gPj4NCj4gPj4gPiA+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPj4gPiA+Pj4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBz LmlvPiBPbiBCZWhhbGYgT2YNCj4gPj4gPiBMYXN6bG8NCj4gPj4gPiA+Pj4gRXJzZWsNCj4gPj4g PiA+Pj4gU2VudDogRnJpZGF5LCBBdWd1c3QgMiwgMjAxOSAxMDoxNCBBTQ0KPiA+PiA+ID4+PiBU bzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IENoZW4sIE1hcmMgVw0KPiA8bWFyYy53LmNoZW5AaW50 ZWwuY29tPjsNCj4gPk5pLA0KPiA+PiA+ID4+PiBSYXkgPHJheS5uaUBpbnRlbC5jb20+OyBHYW8s IExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+DQo+ID4+ID4gPj4+IENjOiBLaW5uZXksIE1p Y2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4+ID4gPj4+IFN1YmplY3Q6 IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2c6IEFkZCBNbUFjY2VzcyBhbmQNCj4gPj4g PiA+PiBNbUNvbnRyb2wNCj4gPj4gPiA+Pj4gZGVmaW5pdGlvbi4NCj4gPj4gPiA+Pj4NCj4gPj4g PiA+Pj4gT24gMDgvMDEvMTkgMTI6MTUsIE1hcmMgVyBDaGVuIHdyb3RlOg0KPiA+PiA+ID4+Pj4g WWVzLCBteSBwdXJwb3NlIGlzIHRvIGF2b2lkIHBsYXRmb3JtIGNvZGUgdXBkYXRlIGlmIHRoZSBw YWNrYWdlIGlzDQo+ID4+ID4gPj4+PiBhbGxvd2VkDQo+ID4+ID4gPj4+IHRvIHVzZSBNZGVNb2R1 bGVQa2cgbGlrZSBPdm1mUGtnLg0KPiA+PiA+ID4+Pj4gRm9yIHRob3NlIHBhY2thZ2VzIHRoYXQg Y2Fubm90IGRlcGVuZCBvbiBNZGVNb2R1bGVQa2cgbXVzdA0KPiA+PiA+IGNoYW5nZQ0KPiA+PiA+ ID4+IHRvDQo+ID4+ID4gPj4+IHVzZSBuZXcgZGVmaW5pdGlvbi4NCj4gPj4gPiA+Pj4NCj4gPj4g PiA+Pj4gQWdyZWVkLg0KPiA+PiA+ID4+Pg0KPiA+PiA+ID4+PiBUaGFua3MhDQo+ID4+ID4gPj4+ IExhc3psbw0KPiA+PiA+ID4+Pg0KPiA+PiA+ID4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+ID4+ID4gPj4+Pj4gRnJvbTogTmksIFJheQ0KPiA+PiA+ID4+Pj4+IFNlbnQ6IFRodXJz ZGF5LCBBdWd1c3QgMSwgMjAxOSA2OjA0IFBNDQo+ID4+ID4gPj4+Pj4gVG86IENoZW4sIE1hcmMg VyA8bWFyYy53LmNoZW5AaW50ZWwuY29tPjsgR2FvLCBMaW1pbmcNCj4gPj4gPiA+Pj4+PiA8bGlt aW5nLmdhb0BpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+PiA+ID4+Pj4+IENj OiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4+ID4g Pj4+Pj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBrZzogQWRkIE1tQWNj ZXNzIGFuZA0KPiA+PiA+ID4+PiBNbUNvbnRyb2wNCj4gPj4gPiA+Pj4+PiBkZWZpbml0aW9uLg0K PiA+PiA+ID4+Pj4+DQo+ID4+ID4gPj4+Pj4gTWFyYywNCj4gPj4gPiA+Pj4+PiBJcyB0aGUgcHVy cG9zZSB0byBhdm9pZCBwbGF0Zm9ybSBjb2RlIHVwZGF0ZSB3aXRoIHRoZSB3cmFwcGVyDQo+ID4+ ID4gPj4+Pj4gaGVhZGVyDQo+ID4+ID4gPj4+IGZpbGUgaW4NCj4gPj4gPiA+Pj4+PiBNZGVNb2R1 bGVQa2c/DQo+ID4+ID4gPj4+Pj4gQ2VydGFpbiBwbGF0Zm9ybXMgdGhleSBtYXkgcmVxdWlyZSB0 byBub3QgZGVwZW5kIG9uDQo+ID5NZGVNb2R1bGVQa2cNCj4gPj4gPiA+Pj4+PiBidXQganVzdCBk ZXBlbmQgb24gTWRlUGtnLg0KPiA+PiA+ID4+Pj4+IEhhdmluZyBTbW1BY2Nlc3MuaCBpbiBNZGVN b2R1bGVQa2cgZG9lc24ndCBoZWxwLg0KPiA+PiA+ID4+Pj4+DQo+ID4+ID4gPj4+Pj4gSXQgYWxz byBicmluZyBjb25mdXNpbmcuDQo+ID4+ID4gPj4+Pj4NCj4gPj4gPiA+Pj4+PiBUaGFua3MsDQo+ ID4+ID4gPj4+Pj4gUmF5DQo+ID4+ID4gPj4+Pj4NCj4gPj4gPiA+Pj4+Pj4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gPj4gPiA+Pj4+Pj4gRnJvbTogQ2hlbiwgTWFyYyBXDQo+ID4+ID4g Pj4+Pj4+IFNlbnQ6IFRodXJzZGF5LCBBdWd1c3QgMSwgMjAxOSA0OjUzIFBNDQo+ID4+ID4gPj4+ Pj4+IFRvOiBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdy b3Vwcy5pbw0KPiA+PiA+ID4+Pj4+PiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5r aW5uZXlAaW50ZWwuY29tPjsgTmksIFJheQ0KPiA+PiA+ID4+Pj4+PiA8cmF5Lm5pQGludGVsLmNv bT4NCj4gPj4gPiA+Pj4+Pj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZVBr ZzogQWRkIE1tQWNjZXNzIGFuZA0KPiA+PiA+ID4+PiBNbUNvbnRyb2wNCj4gPj4gPiA+Pj4+Pj4g ZGVmaW5pdGlvbi4NCj4gPj4gPiA+Pj4+Pj4NCj4gPj4gPiA+Pj4+Pj4gSGkgTGltaW5nDQo+ID4+ ID4gPj4+Pj4+DQo+ID4+ID4gPj4+Pj4+IEFub3RoZXIgdGhvdWdodCwgZG8geW91IHRoaW5rIGl0 IGlzIG9rIHRvIGtlZXAgU21tQWNjZXNzLmggaW4NCj4gPj4gPiA+Pj4+Pj4gTWRlTW9kdWxlUGtn PyBXZSBjYW4gdXNlICNkZWZpbmUgYW5kIHR5cGVkZWYgdG8gY29udmVydA0KPiA+PiA+ID4+IE1t QWNjZXNzDQo+ID4+ID4gPj4+IHRvDQo+ID4+ID4gPj4+Pj4+IFNtbUFjY2VzcywganVzdCBsaWtl IGN1cnJlbnQgU21tQWNjZXNzIFByb3RvY29sIGluIE1kZVBrZy4NCj4gPj4gPiA+Pj4+Pj4NCj4g Pj4gPiA+Pj4+Pj4gVGhhbmtzLA0KPiA+PiA+ID4+Pj4+PiBNYXJjDQo+ID4+ID4gPj4+Pj4+DQo+ ID4+ID4gPj4+Pj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiA+ID4+Pj4+Pj4g RnJvbTogQ2hlbiwgTWFyYyBXDQo+ID4+ID4gPj4+Pj4+PiBTZW50OiBUaHVyc2RheSwgQXVndXN0 IDEsIDIwMTkgNDo0OCBQTQ0KPiA+PiA+ID4+Pj4+Pj4gVG86IEdhbywgTGltaW5nIDxsaW1pbmcu Z2FvQGludGVsLmNvbT47DQo+IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4+ID4gPj4+Pj4+PiBD YzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTmksIFJh eQ0KPiA+PiA+ID4+Pj4+Pj4gPHJheS5uaUBpbnRlbC5jb20+DQo+ID4+ID4gPj4+Pj4+PiBTdWJq ZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnOiBBZGQgTW1BY2Nlc3MgYW5kDQo+ ID4+ID4gPj4+Pj4+IE1tQ29udHJvbA0KPiA+PiA+ID4+Pj4+Pj4gZGVmaW5pdGlvbi4NCj4gPj4g PiA+Pj4+Pj4+DQo+ID4+ID4gPj4+Pj4+PiBIaSBMaW1pbmcNCj4gPj4gPiA+Pj4+Pj4+DQo+ID4+ ID4gPj4+Pj4+PiBTaW5jZSB0aGVyZSBhcmUgbXVsdGlwbGUgcGFja2FnZXMgYXJlIHN0aWxsIHVz aW5nIFNtbUFjY2Vzcy5oLA0KPiA+d2UNCj4gPj4gPiA+Pj4+Pj4+IG5lZWQgdG8gY2hhbmdlIGFs bCBwYWNrYWdlcyB0byB1c2UgTW1BY2Nlc3MuaCBpbnN0ZWFkIG9mDQo+ID4+ID4gPj4+Pj4+PiBT bW1BY2Nlc3MuaCBmaXJzdCwgdGhlbiBjbGVhbiB1cCBTbW1BY2Nlc3MuaCBmcm9tDQo+ID4+ID4g TWRlTW9kdWxlUGtnDQo+ID4+ID4gPj4gd2lsbCBiZSB0aGUgbGFzdCBzdGVwLg0KPiA+PiA+ID4+ Pj4+Pj4gQmVsb3cgYXJlIHRoZSBwYWNrYWdlcyB0aGF0IGhhcyAiaW5jbHVkZSA8UHBpL1NtbUFj Y2Vzcy5oPiINCj4gPmZvcg0KPiA+PiA+ID4+Pj4+Pj4geW91ciByZWZlcmVuY2UuDQo+ID4+ID4g Pj4+Pj4+PiAqCUVkazIgcmVwbzoNCj4gPj4gPiA+Pj4+Pj4+IG8JTWRlTW9kdWxlUGtnDQo+ID4+ ID4gPj4+Pj4+PiBvCU92bWZQa2cNCj4gPj4gPiA+Pj4+Pj4+IG8JVWVmaUNwdVBrZw0KPiA+PiA+ ID4+Pj4+Pj4gKglFZGsyUGxhdGZvcm0gcmVwbzoNCj4gPj4gPiA+Pj4+Pj4+IG8JTWluUGxhdGZv cm1Qa2cNCj4gPj4gPiA+Pj4+Pj4+IG8JUXVhcmtTb2NQa2cNCj4gPj4gPiA+Pj4+Pj4+DQo+ID4+ ID4gPj4+Pj4+PiBUaGFua3MsDQo+ID4+ID4gPj4+Pj4+PiBNYXJjDQo+ID4+ID4gPj4+Pj4+Pg0K PiA+PiA+ID4+Pj4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+ID4gPj4+Pj4+ Pj4gRnJvbTogR2FvLCBMaW1pbmcNCj4gPj4gPiA+Pj4+Pj4+PiBTZW50OiBUaHVyc2RheSwgQXVn dXN0IDEsIDIwMTkgNDo0MiBQTQ0KPiA+PiA+ID4+Pj4+Pj4+IFRvOiBkZXZlbEBlZGsyLmdyb3Vw cy5pbzsgQ2hlbiwgTWFyYyBXDQo+ID4+ID4gPG1hcmMudy5jaGVuQGludGVsLmNvbT4NCj4gPj4g PiA+Pj4+Pj4+PiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwu Y29tPjsgTmksIFJheQ0KPiA+PiA+ID4+Pj4+Pj4+IDxyYXkubmlAaW50ZWwuY29tPg0KPiA+PiA+ ID4+Pj4+Pj4+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2c6IEFkZCBN bUFjY2Vzcw0KPiA+YW5kDQo+ID4+ID4gPj4+Pj4+IE1tQ29udHJvbA0KPiA+PiA+ID4+Pj4+Pj4+ IGRlZmluaXRpb24uDQo+ID4+ID4gPj4+Pj4+Pj4NCj4gPj4gPiA+Pj4+Pj4+PiBNYXJjOg0KPiA+ PiA+ID4+Pj4+Pj4+ICAgVGhlIGNoYW5nZSBpcyBnb29kLiBSZXZpZXdlZC1ieTogTGltaW5nIEdh bw0KPiA+PiA+ID4+PiA8bGltaW5nLmdhb0BpbnRlbC5jb20+DQo+ID4+ID4gPj4+Pj4+Pj4NCj4g Pj4gPiA+Pj4+Pj4+PiAgIEJlc2lkZXMsIEkgc2VlIEJaIGFsc28gbWVudGlvbiB0byByZW1vdmUg dGhlIG9uZSBpbg0KPiA+PiA+ID4+IE1kZU1vZHVsZVBrZy4NCj4gPj4gPiA+Pj4+Pj4+PiBIYXZl IHlvdSB0aGUgZm9sbG93aW5nIHBhdGNoZXMgZm9yIHRoZSBjaGFuZ2UgaW4NCj4gPk1kZU1vZHVs ZVBrZz8NCj4gPj4gPiA+Pj4+Pj4+Pg0KPiA+PiA+ID4+Pj4+Pj4+IFRoYW5rcw0KPiA+PiA+ID4+ Pj4+Pj4+IExpbWluZw0KPiA+PiA+ID4+Pj4+Pj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiA+PiA+ID4+Pj4+Pj4+PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyBbbWFpbHRvOmRl dmVsQGVkazIuZ3JvdXBzLmlvXQ0KPiA+T24NCj4gPj4gPiA+Pj4+PiBCZWhhbGYNCj4gPj4gPiA+ Pj4+Pj4+Pj4gT2YgTWFyYyBXIENoZW4NCj4gPj4gPiA+Pj4+Pj4+Pj4gU2VudDogTW9uZGF5LCBK dWx5IDI5LCAyMDE5IDEyOjI2IFBNDQo+ID4+ID4gPj4+Pj4+Pj4+IFRvOiBkZXZlbEBlZGsyLmdy b3Vwcy5pbw0KPiA+PiA+ID4+Pj4+Pj4+PiBDYzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwu ZC5raW5uZXlAaW50ZWwuY29tPjsgR2FvLA0KPiA+PiA+IExpbWluZw0KPiA+PiA+ID4+Pj4+Pj4+ PiA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPg0KPiA+ PiA+ID4+Pj4+Pj4+PiBTdWJqZWN0OiBbZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2c6IEFkZCBN bUFjY2VzcyBhbmQNCj4gPj4gPiA+Pj4+PiBNbUNvbnRyb2wNCj4gPj4gPiA+Pj4+Pj4+Pj4gZGVm aW5pdGlvbi4NCj4gPj4gPiA+Pj4+Pj4+Pj4NCj4gPj4gPiA+Pj4+Pj4+Pj4gRUZJIE1tQWNjZXNz IGFuZCBNbUNvbnRyb2wgUFBJcyBhcmUgZGVmaW5lZCBpbiB0aGUgUEkgMS41DQo+ID4+ID4gPj4+ Pj4+IHNwZWNpZmljYXRpb24uDQo+ID4+ID4gPj4+Pj4+Pj4+DQo+ID4+ID4gPj4+Pj4+Pj4+IENj OiBNaWNoYWVsIEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPj4gPiA+ Pj4+Pj4+Pj4gQ2M6IExpbWluZyBHYW8gPGxpbWluZy5nYW9AaW50ZWwuY29tPg0KPiA+PiA+ID4+ Pj4+Pj4+PiBDYzogUmF5IE5pIDxyYXkubmlAaW50ZWwuY29tPg0KPiA+PiA+ID4+Pj4+Pj4+PiBS ZWY6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMw0K PiA+PiA+ID4+Pj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBNYXJjIFcgQ2hlbiA8bWFyYy53LmNoZW5A aW50ZWwuY29tPg0KPiA+PiA+ID4+Pj4+Pj4+PiAtLS0NCj4gPj4gPiA+Pj4+Pj4+Pj4gTWRlUGtn L0luY2x1ZGUvUHBpL01tQWNjZXNzLmggIHwgMTU1DQo+ID4+ID4gPj4+Pj4+Pj4+ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4+ID4gPj4+Pj4+Pj4+IE1kZVBr Zy9JbmNsdWRlL1BwaS9NbUNvbnRyb2wuaCB8ICA5MA0KPiA+PiA+ID4+Pj4+PiArKysrKysrKysr KysrKysrKysrKysrKysNCj4gPj4gPiA+Pj4+Pj4+Pj4gTWRlUGtnL01kZVBrZy5kZWMgICAgICAg ICAgICAgIHwgICA2ICsrDQo+ID4+ID4gPj4+Pj4+Pj4+IDMgZmlsZXMgY2hhbmdlZCwgMjUxIGlu c2VydGlvbnMoKykgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4+ID4gPj4+Pj4+Pj4+IE1kZVBrZy9J bmNsdWRlL1BwaS9NbUFjY2Vzcy5oIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+PiA+ID4+Pj4+Pj4+ PiBNZGVQa2cvSW5jbHVkZS9QcGkvTW1Db250cm9sLmgNCj4gPj4gPiA+Pj4+Pj4+Pj4NCj4gPj4g PiA+Pj4+Pj4+Pj4gZGlmZiAtLWdpdCBhL01kZVBrZy9JbmNsdWRlL1BwaS9NbUFjY2Vzcy5oDQo+ ID4+ID4gPj4+Pj4+Pj4+IGIvTWRlUGtnL0luY2x1ZGUvUHBpL01tQWNjZXNzLmggbmV3IGZpbGUg bW9kZSAxMDA2NDQNCj4gPj4gPiBpbmRleA0KPiA+PiA+ID4+Pj4+Pj4+PiAwMDAwMDAwMDAwLi42 MzZlNzI4OGEwDQo+ID4+ID4gPj4+Pj4+Pj4+IC0tLSAvZGV2L251bGwNCj4gPj4gPiA+Pj4+Pj4+ Pj4gKysrIGIvTWRlUGtnL0luY2x1ZGUvUHBpL01tQWNjZXNzLmgNCj4gPj4gPiA+Pj4+Pj4+Pj4g QEAgLTAsMCArMSwxNTUgQEANCj4gPj4gPiA+Pj4+Pj4+Pj4gKy8qKiBAZmlsZQ0KPiA+PiA+ID4+ Pj4+Pj4+PiArICBFRkkgTU0gQWNjZXNzIFBQSSBkZWZpbml0aW9uLg0KPiA+PiA+ID4+Pj4+Pj4+ PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgUFBJIGlzIHVzZWQgdG8gY29udHJvbCB0aGUg dmlzaWJpbGl0eSBvZiB0aGUgTU1SQU0gb24NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyB0aGUNCj4gPj4g PiA+Pj4+Pj4gcGxhdGZvcm0uDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoZSBFRklfUEVJX01NX0FD Q0VTU19QUEkgYWJzdHJhY3RzIHRoZSBsb2NhdGlvbiBhbmQNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyBj aGFyYWN0ZXJpc3RpY3MNCj4gPj4gPiA+Pj4+Pj4+IG9mDQo+ID4+ID4gPj4+Pj4+Pj4+IE1NUkFN LiBUaGUNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgcHJpbmNpcGFsIGZ1bmN0aW9uYWxpdHkgZm91bmQg aW4gdGhlIG1lbW9yeSBjb250cm9sbGVyDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgaW5jbHVkZXMgdGhl DQo+ID4+ID4gPj4+Pj4+Pj4gZm9sbG93aW5nOg0KPiA+PiA+ID4+Pj4+Pj4+PiArICAtIEV4cG9z aW5nIHRoZSBNTVJBTSB0byBhbGwgbm9uLU1NIGFnZW50cywgb3IgdGhlDQo+ID4ib3BlbiINCj4g Pj4gPiA+Pj4+Pj4+Pj4gKyBzdGF0ZQ0KPiA+PiA+ID4+Pj4+Pj4+PiArICAtIFNocm91ZGluZyB0 aGUgTU1SQU0gdG8gYWxsIGJ1dCB0aGUgTU0gYWdlbnRzLCBvciB0aGUNCj4gPj4gPiA+PiAiY2xv c2VkIg0KPiA+PiA+ID4+Pj4+Pj4+PiArIHN0YXRlDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIC0gUHJl c2VydmluZyB0aGUgc3lzdGVtIGludGVncml0eSwgb3IgImxvY2tpbmciIHRoZSBNTVJBTSwNCj4g Pj4gPiA+Pj4+Pj4+Pj4gKyBzdWNoIHRoYXQNCj4gPj4gPiA+Pj4+Pj4+IHRoZQ0KPiA+PiA+ID4+ Pj4+Pj4+PiBzZXR0aW5ncyBjYW5ub3QgYmUNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgICBwZXJ0dXJi ZWQgYnkgZWl0aGVyIGJvb3Qgc2VydmljZSBvciBydW50aW1lIGFnZW50cw0KPiA+PiA+ID4+Pj4+ Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIENvcHlyaWdodCAoYykgMjAxOSwgSW50ZWwgQ29y cG9yYXRpb24uIEFsbCByaWdodHMNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyByZXNlcnZlZC48QlI+DQo+ ID4+ID4gPj4+Pj4+Pj4+ICsgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2Ut UGF0ZW50DQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhciBSZXZp c2lvbiBSZWZlcmVuY2U6DQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgUFBJIGlzIGludHJvZHVj ZWQgaW4gUEkgVmVyc2lvbiAxLjUuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+ Pj4gKyoqLw0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsjaWZuZGVmIF9N TV9BQ0NFU1NfUFBJX0hfDQo+ID4+ID4gPj4+Pj4+Pj4+ICsjZGVmaW5lIF9NTV9BQ0NFU1NfUFBJ X0hfDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyNkZWZpbmUgRUZJX1BF SV9NTV9BQ0NFU1NfUFBJX0dVSUQgXA0KPiA+PiA+ID4+Pj4+Pj4+PiArICB7IDB4MjY4ZjMzYTks IDB4Y2NjZCwgMHg0OGJlLCB7IDB4ODgsIDB4MTcsIDB4ODYsIDB4NSwgMHgzYSwNCj4gPj4gPiA+ Pj4+Pj4+Pj4gKzB4YzMsIDB4MmUsDQo+ID4+ID4gPj4+Pj4+Pj4+IDB4ZDYgfX0NCj4gPj4gPiA+ Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArdHlwZWRlZiBzdHJ1Y3QgX0VGSV9QRUlfTU1f QUNDRVNTX1BQSQ0KPiA+PiA+ID4+IEVGSV9QRUlfTU1fQUNDRVNTX1BQSTsNCj4gPj4gPiA+Pj4+ Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArLyoqDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIE9wZW5z IHRoZSBNTVJBTSBhcmVhIHRvIGJlIGFjY2Vzc2libGUgYnkgYSBQRUlNLg0KPiA+PiA+ID4+Pj4+ Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgZnVuY3Rpb24gIm9wZW5zIiBNTVJBTSBz byB0aGF0IGl0IGlzIHZpc2libGUgd2hpbGUNCj4gbm90DQo+ID4+ID4gPj4+Pj4+Pj4+ICsgaW5z aWRlIG9mDQo+ID4+ID4gPj4+Pj4+PiBNTS4NCj4gPj4gPiA+Pj4+Pj4+Pj4gVGhlIGZ1bmN0aW9u IHNob3VsZA0KPiA+PiA+ID4+Pj4+Pj4+PiArICByZXR1cm4gRUZJX1VOU1VQUE9SVEVEIGlmIHRo ZSBoYXJkd2FyZSBkb2VzIG5vdA0KPiA+c3VwcG9ydA0KPiA+PiA+ID4+Pj4+Pj4+PiArIGhpZGlu ZyBvZg0KPiA+PiA+ID4+Pj4+Pj4+PiBNTVJBTS4gVGhlIGZ1bmN0aW9uDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgIHNob3VsZCByZXR1cm4gRUZJX0RFVklDRV9FUlJPUiBpZiB0aGUgTU1SQU0NCj4gPj4g PiBjb25maWd1cmF0aW9uDQo+ID4+ID4gPj4gaXMNCj4gPj4gPiA+Pj4+Pj4gbG9ja2VkLg0KPiA+ PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVpU2VydmljZXMg ICAgICAgICAgICBBbiBpbmRpcmVjdCBwb2ludGVyIHRvIHRoZSBQRUkNCj4gPj4gPiBTZXJ2aWNl cw0KPiA+PiA+ID4+Pj4+PiBUYWJsZQ0KPiA+PiA+ID4+Pj4+Pj4+PiBwdWJsaXNoZWQgYnkgdGhl IFBFSSBGb3VuZGF0aW9uLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFyYW0gIFRoaXMgICAgICAg ICAgICAgICAgICAgVGhlIEVGSV9QRUlfTU1fQUNDRVNTX1BQSQ0KPiA+aW5zdGFuY2UuDQo+ID4+ ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgRGVzY3JpcHRvckluZGV4ICAgICAgICBUaGUgcmVnaW9u IG9mIE1NUkFNIHRvDQo+ID5PcGVuLg0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgICAgICBUaGUgb3BlcmF0aW9uIHdhcyBz dWNjZXNzZnVsLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9VTlNVUFBPUlRFRCAg ICAgICAgVGhlIHN5c3RlbSBkb2VzIG5vdA0KPiA+c3VwcG9ydA0KPiA+PiA+ID4+Pj4+IG9wZW5p bmcNCj4gPj4gPiA+Pj4+Pj4+PiBhbmQNCj4gPj4gPiA+Pj4+Pj4+Pj4gY2xvc2luZyBvZiBNTVJB TS4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHJldHZhbCBFRklfREVWSUNFX0VSUk9SICAgICAgIE1N UkFNIGNhbm5vdCBiZQ0KPiBvcGVuZWQsDQo+ID4+ID4gPj4+Pj4gcGVyaGFwcw0KPiA+PiA+ID4+ Pj4+Pj4+PiBiZWNhdXNlIGl0IGlzIGxvY2tlZC4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ ID4+Pj4+Pj4+PiArKiovDQo+ID4+ID4gPj4+Pj4+Pj4+ICt0eXBlZGVmDQo+ID4+ID4gPj4+Pj4+ Pj4+ICtFRklfU1RBVFVTDQo+ID4+ID4gPj4+Pj4+Pj4+ICsoRUZJQVBJICpFRklfUEVJX01NX09Q RU4pKA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX1NFUlZJQ0VTICAgICAgICAgICAg ICAgICoqUGVpU2VydmljZXMsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIEVGSV9QRUlfTU1fQUND RVNTX1BQSSAgICAgICAgICAgKlRoaXMsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIFVJTlROICAg ICAgICAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRvckluZGV4DQo+ID4+ID4gPj4+Pj4+Pj4+ ICsgICk7DQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKy8qKg0KPiA+PiA+ ID4+Pj4+Pj4+PiArICBJbmhpYml0cyBhY2Nlc3MgdG8gdGhlIE1NUkFNLg0KPiA+PiA+ID4+Pj4+ Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgZnVuY3Rpb24gImNsb3NlcyIgTU1SQU0g c28gdGhhdCBpdCBpcyBub3QgdmlzaWJsZQ0KPiB3aGlsZQ0KPiA+PiA+ID4+Pj4+Pj4+PiArIG91 dHNpZGUgb2YNCj4gPj4gPiA+Pj4+Pj4+PiBNTS4NCj4gPj4gPiA+Pj4+Pj4+Pj4gVGhlIGZ1bmN0 aW9uIHNob3VsZA0KPiA+PiA+ID4+Pj4+Pj4+PiArICByZXR1cm4gRUZJX1VOU1VQUE9SVEVEIGlm IHRoZSBoYXJkd2FyZSBkb2VzIG5vdA0KPiA+c3VwcG9ydA0KPiA+PiA+ID4+Pj4+Pj4+PiArIGhp ZGluZyBvZg0KPiA+PiA+ID4+Pj4+Pj4+PiBNTVJBTS4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ PiA+ID4+Pj4+Pj4+PiArICBAcGFyYW0gIFBlaVNlcnZpY2VzICAgICAgICAgICAgQW4gaW5kaXJl Y3QgcG9pbnRlciB0byB0aGUgUEVJDQo+ID4+ID4gU2VydmljZXMNCj4gPj4gPiA+Pj4+Pj4gVGFi bGUNCj4gPj4gPiA+Pj4+Pj4+Pj4gcHVibGlzaGVkIGJ5IHRoZSBQRUkgRm91bmRhdGlvbi4NCj4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBUaGlzICAgICAgICAgICAgICAgICAgIFRoZSBFRklf UEVJX01NX0FDQ0VTU19QUEkNCj4gPmluc3RhbmNlLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFy YW0gIERlc2NyaXB0b3JJbmRleCAgICAgICAgVGhlIHJlZ2lvbiBvZiBNTVJBTSB0bw0KPiA+Q2xv c2UuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHJldHZhbCBFRklf U1VDQ0VTUyAgICAgICAgICAgIFRoZSBvcGVyYXRpb24gd2FzIHN1Y2Nlc3NmdWwuDQo+ID4+ID4g Pj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX1VOU1VQUE9SVEVEICAgICAgICBUaGUgc3lzdGVtIGRv ZXMgbm90DQo+ID5zdXBwb3J0DQo+ID4+ID4gPj4+Pj4gb3BlbmluZw0KPiA+PiA+ID4+Pj4+Pj4+ IGFuZA0KPiA+PiA+ID4+Pj4+Pj4+PiBjbG9zaW5nIG9mIE1NUkFNLg0KPiA+PiA+ID4+Pj4+Pj4+ PiArICBAcmV0dmFsIEVGSV9ERVZJQ0VfRVJST1IgICAgICAgTU1SQU0gY2Fubm90IGJlIGNsb3Nl ZC4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4+ID4gPj4+ Pj4+Pj4+ICt0eXBlZGVmDQo+ID4+ID4gPj4+Pj4+Pj4+ICtFRklfU1RBVFVTDQo+ID4+ID4gPj4+ Pj4+Pj4+ICsoRUZJQVBJICpFRklfUEVJX01NX0NMT1NFKSgNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAg SU4gRUZJX1BFSV9TRVJWSUNFUyAgICAgICAgICAgICAgICAqKlBlaVNlcnZpY2VzLA0KPiA+PiA+ ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX01NX0FDQ0VTU19QUEkgICAgICAgICAgICpUaGlzLA0K PiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgICAgIERl c2NyaXB0b3JJbmRleA0KPiA+PiA+ID4+Pj4+Pj4+PiArICApOw0KPiA+PiA+ID4+Pj4+Pj4+PiAr DQo+ID4+ID4gPj4+Pj4+Pj4+ICsvKioNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgVGhpcyBmdW5jdGlv biBwcm9oaWJpdHMgYWNjZXNzIHRvIHRoZSBNTVJBTSByZWdpb24uIFRoaXMNCj4gPj4gPiA+Pj4+ Pj4+Pj4gK2Z1bmN0aW9uIGlzDQo+ID4+ID4gPj4+Pj4+Pj4gdXN1YWxseQ0KPiA+PiA+ID4+Pj4+ Pj4+PiBpbXBsZW1lbnRlZCBzdWNoDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIHRoYXQgaXQgaXMgYSB3 cml0ZS1vbmNlIG9wZXJhdGlvbi4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+ PiArICBAcGFyYW0gIFBlaVNlcnZpY2VzICAgICAgICAgICAgQW4gaW5kaXJlY3QgcG9pbnRlciB0 byB0aGUgUEVJDQo+ID4+ID4gU2VydmljZXMNCj4gPj4gPiA+Pj4+Pj4gVGFibGUNCj4gPj4gPiA+ Pj4+Pj4+Pj4gcHVibGlzaGVkIGJ5IHRoZSBQRUkgRm91bmRhdGlvbi4NCj4gPj4gPiA+Pj4+Pj4+ Pj4gKyAgQHBhcmFtICBUaGlzICAgICAgICAgICAgICAgICAgIFRoZSBFRklfUEVJX01NX0FDQ0VT U19QUEkNCj4gPmluc3RhbmNlLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFyYW0gIERlc2NyaXB0 b3JJbmRleCAgICAgICAgVGhlIHJlZ2lvbiBvZiBNTVJBTSB0bw0KPiA+TG9jay4NCj4gPj4gPiA+ Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAg ICAgICAgVGhlIG9wZXJhdGlvbiB3YXMgc3VjY2Vzc2Z1bC4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAg QHJldHZhbCBFRklfVU5TVVBQT1JURUQgICAgICAgIFRoZSBzeXN0ZW0gZG9lcyBub3QNCj4gPnN1 cHBvcnQNCj4gPj4gPiA+Pj4+PiBvcGVuaW5nDQo+ID4+ID4gPj4+Pj4+Pj4gYW5kDQo+ID4+ID4g Pj4+Pj4+Pj4+IGNsb3Npbmcgb2YgTU1SQU0uDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+ Pj4+Pj4+Pj4gKyoqLw0KPiA+PiA+ID4+Pj4+Pj4+PiArdHlwZWRlZg0KPiA+PiA+ID4+Pj4+Pj4+ PiArRUZJX1NUQVRVUw0KPiA+PiA+ID4+Pj4+Pj4+PiArKEVGSUFQSSAqRUZJX1BFSV9NTV9MT0NL KSgNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgSU4gRUZJX1BFSV9TRVJWSUNFUyAgICAgICAgICAgICAg ICAqKlBlaVNlcnZpY2VzLA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX01NX0FDQ0VT U19QUEkgICAgICAgICAgICpUaGlzLA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBVSU5UTiAgICAg ICAgICAgICAgICAgICAgICAgICAgIERlc2NyaXB0b3JJbmRleA0KPiA+PiA+ID4+Pj4+Pj4+PiAr ICApOw0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsvKioNCj4gPj4gPiA+ Pj4+Pj4+Pj4gKyAgUXVlcmllcyB0aGUgbWVtb3J5IGNvbnRyb2xsZXIgZm9yIHRoZSBwb3NzaWJs ZSByZWdpb25zDQo+IHRoYXQNCj4gPj4gPiA+Pj4+Pj4+Pj4gK3dpbGwgc3VwcG9ydA0KPiA+PiA+ ID4+Pj4+Pj4+PiBNTVJBTS4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiAr ICBUaGlzIGZ1bmN0aW9uIGRlc2NyaWJlcyB0aGUgTU1SQU0gcmVnaW9ucy4NCj4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgVGhpcyBkYXRhIHN0cnVjdHVyZSBmb3JtcyB0aGUgY29udHJhY3QgYmV0d2VlbiB0 aGUNCj4gPj4gPiA+PiBNTV9BQ0NFU1MNCj4gPj4gPiA+Pj4+PiBhbmQNCj4gPj4gPiA+Pj4+Pj4+ Pj4gTU1fSVBMIGRyaXZlcnMuIFRoZXJlIGlzIGFuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIGFtYmln dWl0eSB3aGVuIGFueSBNTVJBTSByZWdpb24gaXMgcmVtYXBwZWQuIEZvcg0KPiA+PiA+IGV4YW1w bGUsDQo+ID4+ID4gPj4gb24NCj4gPj4gPiA+Pj4+Pj4+IHNvbWUNCj4gPj4gPiA+Pj4+Pj4+Pj4g Y2hpcHNldHMsIHNvbWUgTU1SQU0NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgcmVnaW9ucyBjYW4gYmUg aW5pdGlhbGl6ZWQgYXQgb25lIHBoeXNpY2FsIGFkZHJlc3MgYnV0IGlzDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgbGF0ZXIgYWNjZXNzZWQgYXQNCj4gPj4gPiA+Pj4+Pj4+Pj4gYW5vdGhlciBwcm9jZXNz b3IgYWRkcmVzcy4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgVGhlcmUgaXMgY3VycmVudGx5IG5vIHdh eSBmb3IgdGhlIE1NIElQTCBkcml2ZXIgdG8ga25vdw0KPiA+dGhhdA0KPiA+PiA+ID4+Pj4+Pj4+ PiArIGl0IG11c3QgdXNlDQo+ID4+ID4gPj4+Pj4+Pj4+IHR3byBkaWZmZXJlbnQgYWRkcmVzc2Vz DQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIGRlcGVuZGluZyBvbiB3aGF0IGl0IGlzIHRyeWluZyB0byBk by4gQXMgYSByZXN1bHQsIGluaXRpYWwNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyBjb25maWd1cmF0aW9u IGFuZA0KPiA+PiA+ID4+Pj4+Pj4+PiBsb2FkaW5nIGNhbiB1c2UgdGhlDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgIHBoeXNpY2FsIGFkZHJlc3MgUGh5c2ljYWxTdGFydCB3aGlsZSBNTVJBTSBpcyBvcGVu Lg0KPiA+PiA+IEhvd2V2ZXIsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgb25jZQ0KPiA+PiA+ID4+Pj4+ Pj4gdGhlDQo+ID4+ID4gPj4+Pj4+Pj4+IHJlZ2lvbiBoYXMgYmVlbg0KPiA+PiA+ID4+Pj4+Pj4+ PiArICBjbG9zZWQgYW5kIG5lZWRzIHRvIGJlIGFjY2Vzc2VkIGJ5IGFnZW50cyBpbiBNTSwgdGhl DQo+ID4+ID4gPj4+Pj4+Pj4+ICsgQ3B1U3RhcnQgYWRkcmVzcw0KPiA+PiA+ID4+Pj4+Pj4+PiBt dXN0IGJlIHVzZWQuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgUFBJIHB1Ymxpc2hlcyB0aGUg YXZhaWxhYmxlIG1lbW9yeSB0aGF0IHRoZSBjaGlwc2V0DQo+ID5jYW4NCj4gPj4gPiA+Pj4+Pj4+ Pj4gKyBzaHJvdWQgZm9yDQo+ID4+ID4gPj4+Pj4+Pj4gdGhlDQo+ID4+ID4gPj4+Pj4+Pj4+IHVz ZSBvZiBpbnN0YWxsaW5nIGNvZGUuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIFRoZXNlIHJlZ2lvbnMg c2VydmUgdGhlIGR1YWwgcHVycG9zZSBvZiBkZXNjcmliaW5nIHdoaWNoDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgcmVnaW9ucyBoYXZlDQo+ID4+ID4gPj4+Pj4+Pj4+IGJlZW4gb3BlbiwgY2xvc2VkLCBv ciBsb2NrZWQuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEluIGFkZGl0aW9uLCB0aGVzZSByZWdpb25z IG1heSBpbmNsdWRlIG92ZXJsYXBwaW5nDQo+IG1lbW9yeQ0KPiA+PiA+ID4+Pj4+Pj4+PiArIHJh bmdlcywNCj4gPj4gPiA+Pj4+Pj4+Pj4gZGVwZW5kaW5nIG9uIHRoZSBjaGlwc2V0DQo+ID4+ID4g Pj4+Pj4+Pj4+ICsgIGltcGxlbWVudGF0aW9uLiBUaGUgbGF0dGVyIG1pZ2h0IGluY2x1ZGUgYSBj aGlwc2V0IHRoYXQNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyBzdXBwb3J0cyBULVNFRywNCj4gPj4gPiA+ Pj4+Pj4+Pj4gd2hlcmUgbWVtb3J5IG5lYXIgdGhlIHRvcA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBv ZiB0aGUgcGh5c2ljYWwgRFJBTSBjYW4gYmUgYWxsb2NhdGVkIGZvciBNTVJBTSB0b28uDQo+ID4+ ID4gPj4+Pj4+Pj4+ICsgIFRoZSBrZXkgdGhpbmcgdG8gbm90ZSBpcyB0aGF0IHRoZSByZWdpb25z IHRoYXQgYXJlIGRlc2NyaWJlZA0KPiA+PiA+ID4+Pj4+Pj4+PiArIGJ5IHRoZSBQUEkNCj4gPj4g PiA+Pj4+Pj4+IGFyZQ0KPiA+PiA+ID4+Pj4+Pj4+IGENCj4gPj4gPiA+Pj4+Pj4+Pj4gc3Vic2V0 IG9mIHRoZSBjYXBhYmlsaXRpZXMNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgb2YgdGhlIGhhcmR3YXJl Lg0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVpU2Vy dmljZXMgICAgICAgICAgICBBbiBpbmRpcmVjdCBwb2ludGVyIHRvIHRoZSBQRUkNCj4gPj4gPiBT ZXJ2aWNlcw0KPiA+PiA+ID4+Pj4+PiBUYWJsZQ0KPiA+PiA+ID4+Pj4+Pj4+PiBwdWJsaXNoZWQg YnkgdGhlIFBFSSBGb3VuZGF0aW9uLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcGFyYW0gIFRoaXMg ICAgICAgICAgICAgICAgICAgVGhlIEVGSV9QRUlfTU1fQUNDRVNTX1BQSQ0KPiA+aW5zdGFuY2Uu DQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgTW1yYW1NYXBTaXplICAgICAgICAgICBBIHBv aW50ZXIgdG8gdGhlIHNpemUsIGluDQo+ID5ieXRlcywNCj4gPj4gPiBvZg0KPiA+PiA+ID4+Pj4+ IHRoZQ0KPiA+PiA+ID4+Pj4+Pj4+PiBNbXJhbU1lbW9yeU1hcCBidWZmZXIuIE9uIGlucHV0LCB0 aGlzIHZhbHVlIGlzDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0aGUgc2l6ZSBvZiB0aGUgYnVmZmVyIHRoYXQNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyBp cyBhbGxvY2F0ZWQgYnkgdGhlIGNhbGxlci4gT24NCj4gPj4gPiA+Pj4+Pj4+Pj4gb3V0cHV0LCBp dCBpcyB0aGUgc2l6ZSBvZiB0aGUNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGJ1ZmZlciB0aGF0IHdhcyByZXR1cm5lZCBieQ0KPiA+PiA+ID4+Pj4+ Pj4+PiArIHRoZSBmaXJtd2FyZSBpZiB0aGUgYnVmZmVyDQo+ID4+ID4gPj4+Pj4+Pj4gd2FzDQo+ ID4+ID4gPj4+Pj4+Pj4+IGxhcmdlIGVub3VnaCwgb3IsIGlmIHRoZQ0KPiA+PiA+ID4+Pj4+Pj4+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyIHdhcyB0b28gc21hbGws IHRoZQ0KPiA+PiA+ID4+Pj4+Pj4+PiArIHNpemUgb2YgdGhlIGJ1ZmZlciB0aGF0IGlzDQo+ID4+ ID4gPj4+Pj4+Pj4gbmVlZGVkIHRvDQo+ID4+ID4gPj4+Pj4+Pj4+IGNvbnRhaW4gdGhlIG1hcC4N Cj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtIE1tcmFtTWFwICAgICAgICAgICAgICAgIEEgcG9p bnRlciB0byB0aGUgYnVmZmVyIGluDQo+ID53aGljaA0KPiA+PiA+ID4+Pj4+PiBmaXJtd2FyZQ0K PiA+PiA+ID4+Pj4+Pj4+PiBwbGFjZXMgdGhlIGN1cnJlbnQgbWVtb3J5IG1hcC4gVGhlIG1hcCBp cw0KPiA+PiA+ID4+Pj4+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW4g YXJyYXkgb2YNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyBFRklfTU1SQU1fREVTQ1JJUFRPUnMNCj4gPj4g PiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9TVUNDRVNTICAg ICAgICAgICAgVGhlIGNoaXBzZXQgc3VwcG9ydGVkIHRoZQ0KPiBnaXZlbg0KPiA+PiA+ID4+Pj4+ IHJlc291cmNlLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9CVUZGRVJfVE9PX1NN QUxMICAgVGhlIE1tcmFtTWFwDQo+ID4+ID4gcGFyYW1ldGVyDQo+ID4+ID4gPj4+IHdhcw0KPiA+ PiA+ID4+Pj4+PiB0b28NCj4gPj4gPiA+Pj4+Pj4+Pj4gc21hbGwuIFRoZSBjdXJyZW50DQo+ID4+ ID4gPj4+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIgc2l6 ZSBuZWVkZWQgdG8gaG9sZA0KPiA+PiA+ID4+Pj4+Pj4+PiArIHRoZSBtZW1vcnkgbWFwIGlzDQo+ ID4+ID4gPj4+Pj4+PiByZXR1cm5lZA0KPiA+PiA+ID4+Pj4+Pj4+IGluDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNbXJhbU1hcFNpemUuDQo+ID4+ ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyoqLw0KPiA+PiA+ID4+Pj4+Pj4+PiAr dHlwZWRlZg0KPiA+PiA+ID4+Pj4+Pj4+PiArRUZJX1NUQVRVUw0KPiA+PiA+ID4+Pj4+Pj4+PiAr KEVGSUFQSSAqRUZJX1BFSV9NTV9DQVBBQklMSVRJRVMpKA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBJ TiBFRklfUEVJX1NFUlZJQ0VTICAgICAgICAgICAgICAgICoqUGVpU2VydmljZXMsDQo+ID4+ID4g Pj4+Pj4+Pj4+ICsgIElOIEVGSV9QRUlfTU1fQUNDRVNTX1BQSSAgICAgICAgICAgKlRoaXMsDQo+ ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIE9VVCBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgKk1t cmFtTWFwU2l6ZSwNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgSU4gT1VUIEVGSV9NTVJBTV9ERVNDUklQ VE9SICAgICAgICAqTW1yYW1NYXANCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgKTsNCj4gPj4gPiA+Pj4+ Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArLy8vDQo+ID4+ID4gPj4+Pj4+Pj4+ICsvLy8gIEVG SSBNTSBBY2Nlc3MgUFBJIGlzIHVzZWQgdG8gY29udHJvbCB0aGUgdmlzaWJpbGl0eSBvZg0KPiA+ PiA+ID4+Pj4+Pj4+PiArdGhlIE1NUkFNIG9uDQo+ID4+ID4gPj4+Pj4+Pj4gdGhlDQo+ID4+ID4g Pj4+Pj4+Pj4+IHBsYXRmb3JtLg0KPiA+PiA+ID4+Pj4+Pj4+PiArLy8vICBJdCBhYnN0cmFjdHMg dGhlIGxvY2F0aW9uIGFuZCBjaGFyYWN0ZXJpc3RpY3Mgb2YgTU1SQU0uDQo+ID4+ID4gPj4+Pj4+ Pj4+ICtUaGUgcGxhdGZvcm0NCj4gPj4gPiA+Pj4+Pj4+Pj4gc2hvdWxkIHJlcG9ydA0KPiA+PiA+ ID4+Pj4+Pj4+PiArLy8vICBhbGwgTU1SQU0gdmlhIEVGSV9QRUlfTU1fQUNDRVNTX1BQSS4gVGhl DQo+ID5leHBlY3RhdGlvbg0KPiA+PiA+IGlzDQo+ID4+ID4gPj4+IHRoYXQNCj4gPj4gPiA+Pj4+ Pj4+Pj4gK3RoZQ0KPiA+PiA+ID4+Pj4+Pj4+PiBub3J0aCBicmlkZ2Ugb3INCj4gPj4gPiA+Pj4+ Pj4+Pj4gKy8vLyAgbWVtb3J5IGNvbnRyb2xsZXIgd291bGQgcHVibGlzaCB0aGlzIFBQSS4NCj4g Pj4gPiA+Pj4+Pj4+Pj4gKy8vLw0KPiA+PiA+ID4+Pj4+Pj4+PiArc3RydWN0IF9FRklfUEVJX01N X0FDQ0VTU19QUEkgew0KPiA+PiA+ID4+Pj4+Pj4+PiArICBFRklfUEVJX01NX09QRU4gICAgICAg ICAgT3BlbjsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgRUZJX1BFSV9NTV9DTE9TRSAgICAgICAgIENs b3NlOw0KPiA+PiA+ID4+Pj4+Pj4+PiArICBFRklfUEVJX01NX0xPQ0sgICAgICAgICAgTG9jazsN Cj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgRUZJX1BFSV9NTV9DQVBBQklMSVRJRVMgIEdldENhcGFiaWxp dGllczsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQk9PTEVBTiAgICAgICAgICAgICAgICAgIExvY2tT dGF0ZTsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQk9PTEVBTiAgICAgICAgICAgICAgICAgIE9wZW5T dGF0ZTsNCj4gPj4gPiA+Pj4+Pj4+Pj4gK307DQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+ Pj4+Pj4+Pj4gK2V4dGVybiBFRklfR1VJRCBnRWZpUGVpTW1BY2Nlc3NQcGlHdWlkOw0KPiA+PiA+ ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsjZW5kaWYNCj4gPj4gPiA+Pj4+Pj4+Pj4g ZGlmZiAtLWdpdCBhL01kZVBrZy9JbmNsdWRlL1BwaS9NbUNvbnRyb2wuaA0KPiA+PiA+ID4+Pj4+ Pj4+PiBiL01kZVBrZy9JbmNsdWRlL1BwaS9NbUNvbnRyb2wuaCBuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KPiA+PiA+IGluZGV4DQo+ID4+ID4gPj4+Pj4+Pj4+IDAwMDAwMDAwMDAuLjk4M2VkOTVjZDUN Cj4gPj4gPiA+Pj4+Pj4+Pj4gLS0tIC9kZXYvbnVsbA0KPiA+PiA+ID4+Pj4+Pj4+PiArKysgYi9N ZGVQa2cvSW5jbHVkZS9QcGkvTW1Db250cm9sLmgNCj4gPj4gPiA+Pj4+Pj4+Pj4gQEAgLTAsMCAr MSw5MCBAQA0KPiA+PiA+ID4+Pj4+Pj4+PiArLyoqIEBmaWxlDQo+ID4+ID4gPj4+Pj4+Pj4+ICsg IEVGSSBNTSBDb250cm9sIFBQSSBkZWZpbml0aW9uLg0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ ID4gPj4+Pj4+Pj4+ICsgIFRoaXMgUFBJIGlzIHVzZWQgaW5pdGlhdGUgc3luY2hyb25vdXMgTU1J IGFjdGl2YXRpb25zLiBUaGlzDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgUFBJIGNvdWxkIGJlDQo+ID4+ ID4gPj4+Pj4+Pj4+IHB1Ymxpc2hlZCBieSBhIHByb2Nlc3Nvcg0KPiA+PiA+ID4+Pj4+Pj4+PiAr ICBkcml2ZXIgdG8gYWJzdHJhY3QgdGhlIE1NSSBJUEkgb3IgYSBkcml2ZXIgd2hpY2ggYWJzdHJh Y3RzDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgdGhlIEFTSUMgdGhhdA0KPiA+PiA+ID4+Pj4+Pj4gaXMN Cj4gPj4gPiA+Pj4+Pj4+Pj4gc3VwcG9ydGluZyB0aGUgQVBNIHBvcnQuDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgIEJlY2F1c2Ugb2YgdGhlIHBvc3NpYmlsaXR5IG9mIHBlcmZvcm1pbmcgTU1JIElQSQ0K PiA+PiA+ID4+Pj4+Pj4+PiArIHRyYW5zYWN0aW9ucywgdGhlIGFiaWxpdHkNCj4gPj4gPiA+Pj4+ Pj4+PiB0bw0KPiA+PiA+ID4+Pj4+Pj4+PiBnZW5lcmF0ZSB0aGlzIGV2ZW50DQo+ID4+ID4gPj4+ Pj4+Pj4+ICsgIGZyb20gYSBwbGF0Zm9ybSBjaGlwc2V0IGFnZW50IGlzIGFuIG9wdGlvbmFsIGNh cGFiaWxpdHkgZm9yDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgYm90aA0KPiA+PiA+ID4+Pj4+Pj4+PiAr IElBLTMyDQo+ID4+ID4gPj4+Pj4+PiBhbmQNCj4gPj4gPiA+Pj4+Pj4+Pj4geDY0LWJhc2VkIHN5 c3RlbXMuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQ29weXJpZ2h0 IChjKSAyMDE5LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiA+PiA+ID4+Pj4+Pj4+ PiArIHJlc2VydmVkLjxCUj4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+ Pj4+Pj4+PiArICBAcGFyIFJldmlzaW9uIFJlZmVyZW5jZToNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAg VGhpcyBQUEkgaXMgaW50cm9kdWNlZCBpbiBQSSBWZXJzaW9uIDEuNS4NCj4gPj4gPiA+Pj4+Pj4+ Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArKiovDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+ Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArI2lmbmRlZiBfTU1fQ09OVFJPTF9QUElfSF8N Cj4gPj4gPiA+Pj4+Pj4+Pj4gKyNkZWZpbmUgX01NX0NPTlRST0xfUFBJX0hfDQo+ID4+ID4gPj4+ Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyNkZWZpbmUgRUZJX1BFSV9NTV9DT05UUk9MX1BQ SV9HVUlEIFwNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgeyAweDYxYzY4NzAyLCAweDRkN2UsIDB4NGY0 MywgMHg4ZCwgMHhlZiwgMHhhNywgMHg0MywgMHg1LA0KPiA+PiA+ID4+Pj4+Pj4+PiArMHhjZSwg MHg3NCwNCj4gPj4gPiA+Pj4+Pj4+PiAweGM1IH0NCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ ID4+Pj4+Pj4+PiArdHlwZWRlZiBzdHJ1Y3QgX0VGSV9QRUlfTU1fQ09OVFJPTF9QUEkNCj4gPj4g PiA+Pj4+Pj4gRUZJX1BFSV9NTV9DT05UUk9MX1BQSTsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+ PiA+ID4+Pj4+Pj4+PiArLyoqDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEludm9rZXMgUFBJIGFjdGl2 YXRpb24gZnJvbSB0aGUgUEkgUEVJIGVudmlyb25tZW50Lg0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVpU2VydmljZXMgICAgICAgICAgIEFuIGluZGly ZWN0IHBvaW50ZXIgdG8gdGhlIFBFSQ0KPiA+PiA+IFNlcnZpY2VzDQo+ID4+ID4gPj4+Pj4gVGFi bGUNCj4gPj4gPiA+Pj4+Pj4+Pj4gcHVibGlzaGVkIGJ5IHRoZSBQRUkgRm91bmRhdGlvbi4NCj4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBUaGlzICAgICAgICAgICAgICAgICAgVGhlIFBFSV9N TV9DT05UUk9MX1BQSQ0KPiBpbnN0YW5jZS4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHBhcmFtICBB cmd1bWVudEJ1ZmZlciAgICAgICAgVGhlIHZhbHVlIHBhc3NlZCB0byB0aGUNCj4gTU1JDQo+ID4+ ID4gPj4+IGhhbmRsZXIuDQo+ID4+ID4gPj4+Pj4+PiBUaGlzDQo+ID4+ID4gPj4+Pj4+Pj4+IHZh bHVlIGNvcnJlc3BvbmRzIHRvIHRoZQ0KPiA+PiA+ID4+Pj4+Pj4+PiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTd01taUlucHV0VmFsdWUgaW4gdGhlDQo+ID4+ID4gPj4+Pj4+Pj4+ ICsgUmVnaXN0ZXJDb250ZXh0IHBhcmFtZXRlcg0KPiA+PiA+ID4+Pj4+Pj4gZm9yDQo+ID4+ID4g Pj4+Pj4+Pj4gdGhlDQo+ID4+ID4gPj4+Pj4+Pj4+IFJlZ2lzdGVyKCkNCj4gPj4gPiA+Pj4+Pj4+ Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gaW4gdGhlDQo+ID4+ ID4gPj4+Pj4+Pj4+ICsgRUZJX01NX1NXX0RJU1BBVENIX1BST1RPQ09MDQo+ID4+ID4gPj4+Pj4+ PiBhbmQNCj4gPj4gPiA+Pj4+Pj4+PiBpbg0KPiA+PiA+ID4+Pj4+Pj4+PiB0aGUgQ29udGV4dCBw YXJhbWV0ZXINCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaW4gdGhlIGNhbGwgdG8gdGhlIERpc3BhdGNoRnVuY3Rpb24NCj4gPj4gPiA+Pj4+Pj4+Pj4g KyAgQHBhcmFtICBBcmd1bWVudEJ1ZmZlclNpemUgICAgVGhlIHNpemUgb2YgdGhlIGRhdGENCj4g cGFzc2VkDQo+ID5pbg0KPiA+PiA+ID4+Pj4+Pj4+PiBBcmd1bWVudEJ1ZmZlciBvciBOVUxMIGlm IEFyZ3VtZW50QnVmZmVyIGlzIE5VTEwuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgUGVy aW9kaWMgICAgICAgICAgICAgIEFuIG9wdGlvbmFsIG1lY2hhbmlzbSB0bw0KPiA+cGVyaW9kaWNh bGx5DQo+ID4+ID4gPj4+Pj4gcmVwZWF0DQo+ID4+ID4gPj4+Pj4+Pj4+IGFjdGl2YXRpb24uDQo+ ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgQWN0aXZhdGlvbkludGVydmFsICAgIEFuIG9wdGlv bmFsIHBhcmFtZXRlciB0bw0KPiA+cmVwZWF0DQo+ID4+ID4gYXQNCj4gPj4gPiA+Pj4+PiB0aGlz DQo+ID4+ID4gPj4+Pj4+Pj4gcGVyaW9kDQo+ID4+ID4gPj4+Pj4+Pj4+IG9uZQ0KPiA+PiA+ID4+ Pj4+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lIG9yLCBpZiB0aGUg UGVyaW9kaWMgQm9vbGVhbiBpcyBzZXQsDQo+ID4+ID4gcGVyaW9kaWNhbGx5Lg0KPiA+PiA+ID4+ Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAg ICAgIFRoZSBNTUkgaGFzIGJlZW4gZW5nZW5kZXJlZC4NCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgQHJl dHZhbCBFRklfREVWSUNFX0VSUk9SICAgICAgVGhlIHRpbWluZyBpcyB1bnN1cHBvcnRlZC4NCj4g Pj4gPiA+Pj4+Pj4+Pj4gKyAgQHJldHZhbCBFRklfSU5WQUxJRF9QQVJBTUVURVIgVGhlIGFjdGl2 YXRpb24gcGVyaW9kIGlzDQo+ID4+ID4gPj4+Pj4+IHVuc3VwcG9ydGVkLg0KPiA+PiA+ID4+Pj4+ Pj4+PiArICBAcmV0dmFsIEVGSV9OT1RfU1RBUlRFRCAgICAgICBUaGUgTU0gYmFzZSBzZXJ2aWNl IGhhcw0KPiBub3QNCj4gPj4gPiA+PiBiZWVuDQo+ID4+ID4gPj4+Pj4+Pj4gaW5pdGlhbGl6ZWQu DQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyoqLw0KPiA+PiA+ID4+Pj4+ Pj4+PiArdHlwZWRlZg0KPiA+PiA+ID4+Pj4+Pj4+PiArRUZJX1NUQVRVUw0KPiA+PiA+ID4+Pj4+ Pj4+PiArKEVGSUFQSSAqRUZJX1BFSV9NTV9BQ1RJVkFURSkgKA0KPiA+PiA+ID4+Pj4+Pj4+PiAr ICBJTiBFRklfUEVJX1NFUlZJQ0VTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKlBl aVNlcnZpY2VzLA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX01NX0NPTlRST0xfUFBJ ICAgICAgICAgICAgICAgICAgICAgICAgICAqIFRoaXMsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIElO IE9VVCBJTlQ4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpBcmd1bWVu dEJ1ZmZlcg0KPiA+T1BUSU9OQUwsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIE9VVCBVSU5UTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpBcmd1bWVudEJ1ZmZlclNpemUN Cj4gPj4gPiA+Pj4gT1BUSU9OQUwsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIElOIEJPT0xFQU4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcmlvZGljIE9QVElPTkFMLA0K PiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBBY3RpdmF0aW9uSW50ZXJ2YWwNCj4gT1BUSU9OQUwNCj4gPj4gPiA+Pj4+ Pj4+Pj4gKyAgKTsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+Pj4+Pj4+PiArLyoqDQo+ ID4+ID4gPj4+Pj4+Pj4+ICsgIENsZWFycyBhbnkgc3lzdGVtIHN0YXRlIHRoYXQgd2FzIGNyZWF0 ZWQgaW4gcmVzcG9uc2UgdG8NCj4gdGhlDQo+ID4+ID4gPj4+IFRyaWdnZXIoKQ0KPiA+PiA+ID4+ Pj4+PiBjYWxsLg0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJh bSAgUGVpU2VydmljZXMgICAgICAgICAgIEdlbmVyYWwgcHVycG9zZSBzZXJ2aWNlcw0KPiA+YXZh aWxhYmxlDQo+ID4+ID4gdG8NCj4gPj4gPiA+Pj4+PiBldmVyeQ0KPiA+PiA+ID4+Pj4+Pj4+IFBF SU0uDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBwYXJhbSAgVGhpcyAgICAgICAgICAgICAgICAgIFRo ZSBQRUlfTU1fQ09OVFJPTF9QUEkNCj4gaW5zdGFuY2UuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEBw YXJhbSAgUGVyaW9kaWMgICAgICAgICAgICAgIE9wdGlvbmFsIHBhcmFtZXRlciB0byByZXBlYXQg YXQNCj4gPnRoaXMNCj4gPj4gPiA+Pj4+PiBwZXJpb2QNCj4gPj4gPiA+Pj4+Pj4+IG9uZQ0KPiA+ PiA+ID4+Pj4+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lIG9yLCBp ZiB0aGUgUGVyaW9kaWMgQm9vbGVhbiBpcyBzZXQsDQo+ID4+ID4gcGVyaW9kaWNhbGx5Lg0KPiA+ PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsgIEByZXR2YWwgRUZJX1NVQ0NFU1Mg ICAgICAgICAgIFRoZSBNTUkgaGFzIGJlZW4gZW5nZW5kZXJlZC4NCj4gPj4gPiA+Pj4+Pj4+Pj4g KyAgQHJldHZhbCBFRklfREVWSUNFX0VSUk9SICAgICAgVGhlIHNvdXJjZSBjb3VsZCBub3QgYmUN Cj4gPj4gPiBjbGVhcmVkLg0KPiA+PiA+ID4+Pj4+Pj4+PiArICBAcmV0dmFsIEVGSV9JTlZBTElE X1BBUkFNRVRFUiBUaGUgc2VydmljZSBkaWQgbm90DQo+ID5zdXBwb3J0DQo+ID4+ID4gPj4+Pj4+ Pj4+ICsgdGhlDQo+ID4+ID4gPj4+Pj4+Pj4gUGVyaW9kaWMNCj4gPj4gPiA+Pj4+Pj4+Pj4gaW5w dXQgYXJndW1lbnQuDQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyoqLw0K PiA+PiA+ID4+Pj4+Pj4+PiArdHlwZWRlZg0KPiA+PiA+ID4+Pj4+Pj4+PiArRUZJX1NUQVRVUw0K PiA+PiA+ID4+Pj4+Pj4+PiArKEVGSUFQSSAqUEVJX01NX0RFQUNUSVZBVEUpICgNCj4gPj4gPiA+ Pj4+Pj4+Pj4gKyAgSU4gRUZJX1BFSV9TRVJWSUNFUyAgICAgICAgICAgICAgICAgICAgICAqKlBl aVNlcnZpY2VzLA0KPiA+PiA+ID4+Pj4+Pj4+PiArICBJTiBFRklfUEVJX01NX0NPTlRST0xfUFBJ ICAgICAgICAgICAgICAgICogVGhpcywNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgSU4gQk9PTEVBTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZXJpb2RpYyBPUFRJT05BTA0KPiA+PiA+ID4+ Pj4+Pj4+PiArICApOw0KPiA+PiA+ID4+Pj4+Pj4+PiArDQo+ID4+ID4gPj4+Pj4+Pj4+ICsvLy8N Cj4gPj4gPiA+Pj4+Pj4+Pj4gKy8vLyAgVGhlIEVGSV9QRUlfTU1fQ09OVFJPTF9QUEkgaXMgcHJv ZHVjZWQgYnkgYSBQRUlNLg0KPiA+SXQNCj4gPj4gPiA+Pj4+Pj4gcHJvdmlkZXMNCj4gPj4gPiA+ Pj4+Pj4+IGFuDQo+ID4+ID4gPj4+Pj4+Pj4+IGFic3RyYWN0aW9uIG9mIHRoZQ0KPiA+PiA+ID4+ Pj4+Pj4+PiArLy8vICBwbGF0Zm9ybSBoYXJkd2FyZSB0aGF0IGdlbmVyYXRlcyBhbiBNTUkuIFRo ZXJlIGFyZQ0KPiA+b2Z0ZW4NCj4gPj4gPiA+Pj4+Pj4+Pj4gK0kvTyBwb3J0cw0KPiA+PiA+ID4+ Pj4+Pj4+PiB0aGF0LCB3aGVuIGFjY2Vzc2VkLCB3aWxsDQo+ID4+ID4gPj4+Pj4+Pj4+ICsvLy8g IGdlbmVyYXRlIHRoZSBNTUkuIEFsc28sIHRoZSBoYXJkd2FyZSBvcHRpb25hbGx5DQo+ID5zdXBw b3J0cw0KPiA+PiA+ID4+Pj4+Pj4+PiArdGhlDQo+ID4+ID4gPj4+Pj4+PiBwZXJpb2RpYw0KPiA+ PiA+ID4+Pj4+Pj4+PiBnZW5lcmF0aW9uIG9mIHRoZXNlIHNpZ25hbHMuDQo+ID4+ID4gPj4+Pj4+ Pj4+ICsvLy8NCj4gPj4gPiA+Pj4+Pj4+Pj4gK3N0cnVjdCBfUEVJX01NX0NPTlRST0xfUFBJIHsN Cj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgUEVJX01NX0FDVElWQVRFICAgIFRyaWdnZXI7DQo+ID4+ID4g Pj4+Pj4+Pj4+ICsgIFBFSV9NTV9ERUFDVElWQVRFICBDbGVhcjsNCj4gPj4gPiA+Pj4+Pj4+Pj4g K307DQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gK2V4dGVybiBFRklfR1VJ RCBnRWZpUGVpTW1Db250cm9sUHBpR3VpZDsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKw0KPiA+PiA+ID4+ Pj4+Pj4+PiArI2VuZGlmDQo+ID4+ID4gPj4+Pj4+Pj4+IGRpZmYgLS1naXQgYS9NZGVQa2cvTWRl UGtnLmRlYyBiL01kZVBrZy9NZGVQa2cuZGVjDQo+ID5pbmRleA0KPiA+PiA+ID4+Pj4+Pj4+PiBi MzgyZWZkNTc4Li4zNGUwZjM5Mzk1IDEwMDY0NA0KPiA+PiA+ID4+Pj4+Pj4+PiAtLS0gYS9NZGVQ a2cvTWRlUGtnLmRlYw0KPiA+PiA+ID4+Pj4+Pj4+PiArKysgYi9NZGVQa2cvTWRlUGtnLmRlYw0K PiA+PiA+ID4+Pj4+Pj4+PiBAQCAtOTI1LDYgKzkyNSwxMiBAQA0KPiA+PiA+ID4+Pj4+Pj4+PiAg ICMjIEluY2x1ZGUvUHBpL1NlY0hvYkRhdGEuaA0KPiA+PiA+ID4+Pj4+Pj4+PiAgIGdFZmlTZWNI b2JEYXRhUHBpR3VpZCA9IHsgMHgzZWJkYWYyMCwgMHg2NjY3LCAweDQwZDgsDQo+ID57MHhiNCwN Cj4gPj4gPiA+Pj4+Pj4+Pj4gMHhlZSwNCj4gPj4gPiA+Pj4+Pj4+IDB4ZjUsDQo+ID4+ID4gPj4+ Pj4+Pj4+IDB4OTksIDB4OWEsIDB4YzEsIDB4YjcsIDB4MWYgfSB9DQo+ID4+ID4gPj4+Pj4+Pj4+ DQo+ID4+ID4gPj4+Pj4+Pj4+ICsgICMjIEluY2x1ZGUvUHBpL01tQWNjZXNzLmgNCj4gPj4gPiA+ Pj4+Pj4+Pj4gKyAgZ0VmaVBlaU1tQWNjZXNzUHBpR3VpZCAgICAgICAgICA9ICB7IDB4MjY4ZjMz YTksIDB4Y2NjZCwNCj4gPjB4NDhiZSwNCj4gPj4gPiA+Pj4+PiB7IDB4ODgsDQo+ID4+ID4gPj4+ Pj4+Pj4gMHgxNywNCj4gPj4gPiA+Pj4+Pj4+Pj4gMHg4NiwgMHg1LCAweDNhLCAweGMzLCAweDJl LCAweGQ2IH19DQo+ID4+ID4gPj4+Pj4+Pj4+ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgIyMgSW5j bHVkZS9QcGkvTW1Db250cm9sLmgNCj4gPj4gPiA+Pj4+Pj4+Pj4gKyAgZ0VmaVBlaU1tQ29udHJv bFBwaUd1aWQgICAgICAgICA9ICB7IDB4NjFjNjg3MDIsIDB4NGQ3ZSwNCj4gPjB4NGY0MywNCj4g Pj4gPiA+Pj4+PiB7IDB4OGQsDQo+ID4+ID4gPj4+Pj4+Pj4gMHhlZiwNCj4gPj4gPiA+Pj4+Pj4+ Pj4gMHhhNywgMHg0MywgMHg1LCAweGNlLCAweDc0LCAweGM1IH19DQo+ID4+ID4gPj4+Pj4+Pj4+ ICsNCj4gPj4gPiA+Pj4+Pj4+Pj4gICAjDQo+ID4+ID4gPj4+Pj4+Pj4+ICAgIyBQUElzIGRlZmlu ZWQgaW4gUEkgMS43Lg0KPiA+PiA+ID4+Pj4+Pj4+PiAgICMNCj4gPj4gPiA+Pj4+Pj4+Pj4gLS0N Cj4gPj4gPiA+Pj4+Pj4+Pj4gMi4xNi4yLndpbmRvd3MuMQ0KPiA+PiA+ID4+Pj4+Pj4+Pg0KPiA+ PiA+ID4+Pj4+Pj4+Pg0KPiA+PiA+ID4+Pj4+Pj4+Pg0KPiA+PiA+ID4+Pj4NCj4gPj4gPiA+Pj4+ DQo+ID4+ID4gPj4+Pg0KPiA+PiA+ID4+Pj4NCj4gPj4gPiA+Pj4NCj4gPj4gPiA+Pj4NCj4gPj4g PiA+Pj4NCj4gPj4gPiA+DQo+ID4+ID4NCj4gPj4gPg0KPiA+PiA+DQo+ID4NCj4gPg0KPiA+DQoN Cg==