From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id C226221E8799E for ; Fri, 15 Sep 2017 00:06:07 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Sep 2017 00:09:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.42,396,1500966000"; d="scan'208";a="1195352447" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga001.fm.intel.com with ESMTP; 15 Sep 2017 00:08:34 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Fri, 15 Sep 2017 00:08:34 -0700 Received: from shsmsx151.ccr.corp.intel.com ([169.254.3.98]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.117]) with mapi id 14.03.0319.002; Fri, 15 Sep 2017 15:08:32 +0800 From: "Ni, Ruiyu" To: "Zeng, Star" , Paulo Alcantara , Laszlo Ersek CC: "edk2-devel@lists.01.org" , "Wu, Hao A" Thread-Topic: Functionality issues in UDF support Thread-Index: AdMt01KyZGagPN/kQv20rkBpZNwXqP//kZCA//93+OCAAJMqAP//c1IAgACaQ4D//3DWAP/+4Nrw Date: Fri, 15 Sep 2017 07:08:31 +0000 Message-ID: <734D49CCEBEEF84792F5B80ED585239D5BA4225C@SHSMSX151.ccr.corp.intel.com> References: <734D49CCEBEEF84792F5B80ED585239D5BA4206B@SHSMSX151.ccr.corp.intel.com> <081B7D33-9F33-40CE-B569-62CC8C204B56@zytor.com> <734D49CCEBEEF84792F5B80ED585239D5BA420DF@SHSMSX151.ccr.corp.intel.com> <734D49CCEBEEF84792F5B80ED585239D5BA4212E@SHSMSX151.ccr.corp.intel.com> <1C01A5C1-09DE-4747-BA65-4EB668D76094@zytor.com> <0C09AFA07DD0434D9E2A0C6AEB0483103B95A46C@SHSMSX151.ccr.corp.intel.com> In-Reply-To: <0C09AFA07DD0434D9E2A0C6AEB0483103B95A46C@SHSMSX151.ccr.corp.intel.com> Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: Functionality issues in UDF support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Sep 2017 07:06:07 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U3RhciwNCkVsdG9yaXRvIGZpbGUgc3lzdGVtIGFjY2VzcyBzaG91bGQgd29yay4NCkJ1dCBVREYg c3VwcG9ydCBtYXkgbm90IHdvcmsgYXMgZXhwZWN0ZWQgaWYgdGhlcmUgYXJlIG11bHRpcGxlDQp2 b2x1bWVzIGluIHRoZSBDRFJPTS4NCg0KVGhhbmtzL1JheQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tDQo+IEZyb206IFplbmcsIFN0YXINCj4gU2VudDogRnJpZGF5LCBTZXB0ZW1iZXIg MTUsIDIwMTcgMzowMSBQTQ0KPiBUbzogUGF1bG8gQWxjYW50YXJhIDxwY2FjanJAenl0b3IuY29t PjsgTmksIFJ1aXl1IDxydWl5dS5uaUBpbnRlbC5jb20+Ow0KPiBMYXN6bG8gRXJzZWsgPGxlcnNl a0ByZWRoYXQuY29tPg0KPiBDYzogZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmc7IFd1LCBIYW8gQSA8 aGFvLmEud3VAaW50ZWwuY29tPjsgWmVuZywgU3Rhcg0KPiA8c3Rhci56ZW5nQGludGVsLmNvbT4N Cj4gU3ViamVjdDogUkU6IEZ1bmN0aW9uYWxpdHkgaXNzdWVzIGluIFVERiBzdXBwb3J0DQo+IA0K PiBIb3cgc2VyaW91cyBpcyB0aGlzIGlzc3VlPw0KPiBPbmx5IGNhdXNpbmcgbW9yZSBCTEtzIGFy ZSBzaG93biwgYnV0IG5vdCBpbXBhY3RpbmcgRWx0b3JpdG8/IE9yIGltcGFjdGluZw0KPiBFbHRv cml0byBkZWZpbml0ZWx5Pw0KPiANCj4gDQo+IA0KPiBUaGFua3MsDQo+IFN0YXINCj4gLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogUGF1bG8gQWxjYW50YXJhIFttYWlsdG86cGNh Y2pyQHp5dG9yLmNvbV0NCj4gU2VudDogRnJpZGF5LCBTZXB0ZW1iZXIgMTUsIDIwMTcgMjoyNiBQ TQ0KPiBUbzogTmksIFJ1aXl1IDxydWl5dS5uaUBpbnRlbC5jb20+OyBMYXN6bG8gRXJzZWsgPGxl cnNla0ByZWRoYXQuY29tPg0KPiBDYzogZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmc7IFd1LCBIYW8g QSA8aGFvLmEud3VAaW50ZWwuY29tPjsgWmVuZywgU3Rhcg0KPiA8c3Rhci56ZW5nQGludGVsLmNv bT4NCj4gU3ViamVjdDogUkU6IEZ1bmN0aW9uYWxpdHkgaXNzdWVzIGluIFVERiBzdXBwb3J0DQo+ IA0KPiANCj4gDQo+IFJheSwNCj4gDQo+IE9uIFNlcHRlbWJlciAxNSwgMjAxNyAzOjAyOjExIEFN IEdNVC0wMzowMCwgIk5pLCBSdWl5dSINCj4gPHJ1aXl1Lm5pQGludGVsLmNvbT4gd3JvdGU6DQo+ ID5QYXVsbywNCj4gPldoZW4gd2lsbCB5b3UgY2hhbmdlIHRoZSBpbXBsZW1lbnRhdGlvbiB0byB0 aGlzIHdheT8NCj4gDQo+IFVuZm9ydHVuYXRlbHkgSSBjYW4ndCBwcm9taXNlIHlvdSB3aGVuIEkn ZCBiZSBkb2luZyB0aGlzIGJlY2F1c2UsIHlvdSBrbm93LA0KPiBJIGNhbiBvbmx5IHdvcmsgb24g dGhpcyBpbiBteSBmcmVlIHRpbWUgKHZlcnkgc2hvcnQsIEFUTSkuIFBlcmhhcHMgdGhpcw0KPiB3 ZWVrZW5kIC0gYnV0IHJlYWwgbGlmZSBhbHNvIGhhcHBlbnMgYW5kIEkgbWF5IGdldCBwcmVlbXB0 ZWQgYnkgc29tZXRoaW5nDQo+IGVsc2UuDQo+IA0KPiBQYXVsbw0KPiANCj4gPg0KPiA+DQo+ID5U aGFua3MvUmF5DQo+ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJv bTogUGF1bG8gQWxjYW50YXJhIFttYWlsdG86cGNhY2pyQHp5dG9yLmNvbV0NCj4gPj4gU2VudDog RnJpZGF5LCBTZXB0ZW1iZXIgMTUsIDIwMTcgMTozOCBQTQ0KPiA+PiBUbzogTmksIFJ1aXl1IDxy dWl5dS5uaUBpbnRlbC5jb20+OyBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiA+ PiBDYzogZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmc7IFd1LCBIYW8gQSA8aGFvLmEud3VAaW50ZWwu Y29tPjsgWmVuZywNCj4gPlN0YXINCj4gPj4gPHN0YXIuemVuZ0BpbnRlbC5jb20+DQo+ID4+IFN1 YmplY3Q6IFJFOiBGdW5jdGlvbmFsaXR5IGlzc3VlcyBpbiBVREYgc3VwcG9ydA0KPiA+Pg0KPiA+ Pg0KPiA+Pg0KPiA+PiBIaSwNCj4gPj4NCj4gPj4gT24gU2VwdGVtYmVyIDE1LCAyMDE3IDI6MDg6 MjggQU0gR01ULTAzOjAwLCAiTmksIFJ1aXl1Ig0KPiA+PiA8cnVpeXUubmlAaW50ZWwuY29tPiB3 cm90ZToNCj4gPj4gPkhpIFBhdWxvLA0KPiA+PiA+VGhlIHJlc3BvbnNpYmlsaXR5IG9mIFBhcnRp dGlvbkR4ZSBkcml2ZXIgaXMgdG8gcGFydGl0aW9uIHRoZQ0KPiA+cGh5c2ljYWwNCj4gPj4gPkJM SyAodGhlIGVudGlyZSBDRFJPTSkgaW50byBsb2dpY2FsIEJMS3MgKG9uZSBCTEsgZm9yIGVhY2gg dm9sdW1lKS4NCj4gPj4gPkl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBjcmVhdGUgYSBjaGlsZCBC TEsgaGFuZGxlIHdoaWNoIHN0aWxsDQo+ID5jb3ZlcnMNCj4gPj4gPnRoZSBlbnRpcmUgQ0RST00u DQo+ID4+ID5TbyBhcyBJIHN1Z2dlc3RlZCBpbiBiZWxvdywgUGFydGl0aW9uSW5zdGFsbFVkZkNo aWxkSGFuZGxlcygpIHNob3VsZA0KPiA+PiA+Y29udGFpbiBhIGZvci1sb29wIHRvIGl0ZXJhdGUg YWxsIHRoZSB2b2x1bWVzIGluIHRoZSBDRFJPTSwgYW5kDQo+ID5jcmVhdGUNCj4gPj4gPmNoaWxk IEJMSyBoYW5kbGUgZm9yIGVhY2ggdm9sdW1lcywgYnV0IHNraXBwaW5nIEVsdG9yaXRvIHZvbHVt ZS4NCj4gPj4NCj4gPj4gQWgsIG1ha2VzIHNlbnNlIHRvIG1lIG5vdy4gVGhhbmtzIGZvciBjbGFy aWZ5aW5nIGl0LiBTbyBJIGFncmVlIHdpdGgNCj4gPnlvdS4NCj4gPj4NCj4gPj4gSW4gd2hhdGV2 ZXIgeW91IGd1eXMgZGVjaWRlIHRvIGRvIHdpdGggaXQsIGNvdW50IG9uIG1lIHRvIGdpdmUgc29t ZQ0KPiA+aGVscC4NCj4gPj4NCj4gPj4gVGhhbmtzIQ0KPiA+PiBQYXVsbw0KPiA+Pg0KPiA+PiA+ DQo+ID4+ID5UaGFua3MvUmF5DQo+ID4+ID4NCj4gPj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCj4gPj4gPj4gRnJvbTogUGF1bG8gQWxjYW50YXJhIFttYWlsdG86cGNhY2pyQHp5dG9y LmNvbV0NCj4gPj4gPj4gU2VudDogRnJpZGF5LCBTZXB0ZW1iZXIgMTUsIDIwMTcgMTI6NTggUE0N Cj4gPj4gPj4gVG86IE5pLCBSdWl5dSA8cnVpeXUubmlAaW50ZWwuY29tPjsgTGFzemxvIEVyc2Vr DQo+ID48bGVyc2VrQHJlZGhhdC5jb20+DQo+ID4+ID4+IENjOiBlZGsyLWRldmVsQGxpc3RzLjAx Lm9yZzsgV3UsIEhhbyBBIDxoYW8uYS53dUBpbnRlbC5jb20+OyBaZW5nLA0KPiA+PiA+U3Rhcg0K PiA+PiA+PiA8c3Rhci56ZW5nQGludGVsLmNvbT4NCj4gPj4gPj4gU3ViamVjdDogUmU6IEZ1bmN0 aW9uYWxpdHkgaXNzdWVzIGluIFVERiBzdXBwb3J0DQo+ID4+ID4+DQo+ID4+ID4+DQo+ID4+ID4+ DQo+ID4+ID4+IEhpIFJheSwNCj4gPj4gPj4NCj4gPj4gPj4gT24gU2VwdGVtYmVyIDE1LCAyMDE3 IDEyOjMzOjA0IEFNIEdNVC0wMzowMCwgIk5pLCBSdWl5dSINCj4gPj4gPj4gPHJ1aXl1Lm5pQGlu dGVsLmNvbT4gd3JvdGU6DQo+ID4+ID4+ID5QYXVsbywNCj4gPj4gPj4gPkJlZm9yZSByYWlzaW5n IG15IHF1ZXN0aW9ucywgSSdkIGxpa2UgdG8gY29uZmlybSB0aGF0IGZvciBhDQo+ID5zaW5nbGUN Cj4gPj4gPj4gPkNEL0RWRCBpbiBVREYgZm9ybWF0LCB0aGVyZSBtaWdodCBiZSBtdWx0aXBsZSB2 b2x1bWVzLg0KPiA+PiA+PiA+T25lIG9mIHRoZSB2b2x1bWUgY291bGQgYmUgRWx0b3JpdG8gdHlw ZS4NCj4gPj4gPj4gPklmIG15IHVuZGVyc3RhbmRpbmcgaXMgY29ycmVjdCwgcGxlYXNlIGNvbnRp bnVlIHJlYWRpbmcgYmVsb3cuDQo+ID4+ID4+DQo+ID4+ID4+IFJpZ2h0Lg0KPiA+PiA+Pg0KPiA+ PiA+PiA+DQo+ID4+ID4+ID5XZSBmb3VuZCBiZWxvdyBtYXBwaW5nIHRhYmxlIHVzaW5nICJtYXAg LXIiIHNoZWxsIGNvbW1hbmQgaW4gYQ0KPiA+PiA+cGxhdGZvcm0NCj4gPj4gPj4gPndpdGggb25s eSBQYXJ0aXRpb25EeGUgY2hhbmdlIGFuZCB3aXRob3V0IFVkZkR4ZSBkcml2ZXIuDQo+ID4+ID4+ ID5JdCdzIGEgYnVnIHRoYXQgPEJMSzY+IGFuZCA8QkxLNy9GUzI+IGFyZSBjcmVhdGVkLiBBY3R1 YWxseSB0aGV5DQo+ID5hcmUNCj4gPj4gPj4gPmlkZW50aWNhbCB0byA8QkxLMz4gYW5kIDxCTEs0 L0ZTMT4uDQo+ID4+ID4+ID4NCj4gPj4gPj4gPi0tLSBNYXBwaW5nIHRhYmxlLS0tDQo+ID4+ID4+ ID4gICAgIEJMSzI6IEFsaWFzKHMpOg0KPiA+PiA+PiA+ICAgICAgICAgIFBjaVJvb3QoMHgwKS9Q Y2koMHgxRiwweDIpL1NhdGEoMHgwLDB4RkZGRiwweDApDQo+ID4+ID4+ID4NCj4gPj4gPj4gPiAg ICAgQkxLMzogQWxpYXMocyk6DQo+ID4+ID4+ID4NCj4gPlBjaVJvb3QoMHgwKS9QY2koMHgxRiww eDIpL1NhdGEoMHgwLDB4RkZGRiwweDApL0NEUk9NKDB4MCkNCj4gPj4gPj4gPiAgICAgIEZTMTog QWxpYXMocyk6Q0QxYTY1NTM1YTE6O0JMSzQ6DQo+ID4+ID4+ID4NCj4gPlBjaVJvb3QoMHgwKS9Q Y2koMHgxRiwweDIpL1NhdGEoMHgwLDB4RkZGRiwweDApL0NEUk9NKDB4MSkNCj4gPj4gPj4gPg0K PiA+PiA+PiA+ICAgICBCTEs1OiBBbGlhcyhzKToNCj4gPj4gPj4NCj4gPj5QY2lSb290KDB4MCkv UGNpKDB4MUYsMHgyKS9TYXRhKDB4MCwweEZGRkYsMHgwKS9WZW5NZWRpYShDNUJENEQ0Mi0NCj4g Pj4gPj4gMUE3Ni00OTk2LTg5NTYtNzNDREEzMjZDRDBBKQ0KPiA+PiA+PiA+ICAgICBCTEs2OiBB bGlhcyhzKToNCj4gPj4gPj4NCj4gPj5QY2lSb290KDB4MCkvUGNpKDB4MUYsMHgyKS9TYXRhKDB4 MCwweEZGRkYsMHgwKS9WZW5NZWRpYShDNUJENEQ0Mi0NCj4gPj4gPj4gMUE3Ni00OTk2LTg5NTYt NzNDREEzMjZDRDBBKS9DRFJPTSgweDApDQo+ID4+ID4+ID4gICAgICBGUzI6IEFsaWFzKHMpOkNE MWE2NTUzNWFiOjtCTEs3Og0KPiA+PiA+Pg0KPiA+PlBjaVJvb3QoMHgwKS9QY2koMHgxRiwweDIp L1NhdGEoMHgwLDB4RkZGRiwweDApL1Zlbk1lZGlhKEM1QkQ0RDQyLQ0KPiA+PiA+PiAxQTc2LQ0K PiA+PiA+PiA+NDk5Ni04OTU2LTczQ0RBMzI2Q0QwQSkvQ0RST00oMHgxKQ0KPiA+PiA+PiA+LS0t IEVuZCBvZiBtYXBwaW5nIHRhYmxlIC0tLQ0KPiA+PiA+PiA+DQo+ID4+ID4+ID5BZnRlciBpbnZl c3RpZ2F0aW9uLCBJIGZvdW5kIHRoZSBVREYgbG9naWMgaW4gUGFydGl0aW9uIGRyaXZlcg0KPiA+ PiA+ZG9lc24ndA0KPiA+PiA+PiA+dHJ1bHkgc2tpcCB0aGUgRWx0b3JpdG8gdm9sdW1lLg0KPiA+ PiA+PiA+VGhlIGNvZGUgZmxvdyBpcyBsaWtlIGJlbG93Og0KPiA+PiA+PiA+DQo+ID4+ID4+ID4g IDEuICA8QkxLMj4gaXMgY3JlYXRlZCBieSBTY3NpRGlza0R4ZSBkcml2ZXIuDQo+ID4+ID4+ID4g IDIuICBCeSBwYXNzaW5nIDxCTEsyPiB0byBQYXJ0aXRpb25EeGUgU3RhcnQoKQ0KPiA+PiA+PiA+ KiAgIDxCTEszPiBhbmQgPEJMSzQvRlMxPiBhcmUgY3JlYXRlZCBieSBQYXJ0aXRpb25EeGUgZHJp dmVyLCBieQ0KPiA+PiA+PiA+UGFydGl0aW9uSW5zdGFsbEVsVG9yaXRvQ2hpbGRIYW5kbGVzKCku DQo+ID4+ID4+ID4qICAgPEJMSzU+IGlzIGNyZWF0ZWQgYnkgUGFydGl0aW9uRHhlIGRyaXZlciwg YnkNCj4gPj4gPj4gPlBhcnRpdGlvbkluc3RhbGxVZGZDaGlsZEhhbmRsZXMoKS4NCj4gPj4gPj4g PiAgMy4gIEJ5IHBhc3NpbmcgPEJMSzU+IHRvIFBhcnRpdGlvbkR4ZSBTdGFydCgpDQo+ID4+ID4+ ID4qICAgPEJMSzY+IGFuZCA8QkxLNy9GUzI+IGFyZSBjcmVhdGVkIGJ5IFBhcnRpdGlvbkR4ZSBk cml2ZXIsIGJ5DQo+ID4+ID4+ID5QYXJ0aXRpb25JbnN0YWxsRWxUb3JpdG9DaGlsZEhhbmRsZXMo KS4NCj4gPj4gPj4gPg0KPiA+PiA+PiA+SSB0aGluayBzdGVwIDIuYSBpcyBub3QgY29ycmVjdCBp ZiBteSB1bmRlcnN0YW5kaW5nIHRvIFVERiBpcw0KPiA+PiA+Y29ycmVjdC4NCj4gPj4gPj4gPlRo ZSBQYXJ0aXRpb25JbnN0YWxsVWRmQ2hpbGRIYW5kbGVzKCkgc2hvdWxkIGl0ZXJhdGUgYWxsIHZv bHVtZXMNCj4gPmluDQo+ID4+ID50aGUNCj4gPj4gPj4gPm1lZGlhIGFuZCBjcmVhdGVzIHRoZSBj aGlsZCBCTEsgaGFuZGxlIGZvciBlYWNoIHZvbHVtZSwgYnV0DQo+ID5za2lwcGluZw0KPiA+PiA+ PiA+RWx0b3JpdG8gdm9sdW1lLg0KPiA+PiA+PiA+DQo+ID4+ID4+ID5JbnN0ZWFkLCB0aGUgY3Vy cmVudCBpbXBsZW1lbnRhdGlvbiBqdXN0IGNyZWF0ZXMgb25lIGNoaWxkIEJMSw0KPiA+PiA+aGFu ZGxlDQo+ID4+ID4+ID5mb3IgdGhlIGVudGlyZSBtZWRpYS4NCj4gPj4gPj4gPlRvIGF2b2lkIHJl Y2x1c2l2ZWx5IGNyZWF0aW5nICBjaGlsZCBCTEsgaGFuZGxlLCB0aGUNCj4gPj4gPj4gPlBhcnRp dGlvbkluc3RhbGxVZGZDaGlsZEhhbmRsZXMoKSBjb250YWlucyBhIGxvZ2ljIHRvIGRvIG5vdGhp bmcNCj4gPj4gPndoZW4NCj4gPj4gPj4gPnRoZSBoYW5kbGUgaXMgY3JlYXRlZCBieSBQYXJpdGl0 b25EeGUgZHJpdmVyLiBUaGUgbG9naWMgaXMgbm90DQo+ID4+ID5uZWVkZWQNCj4gPj4gPj4gPndo ZW4gdGhlIGltcGxlbWVudGF0aW9uIGZvbGxvd3MgbXkgc3VnZ2VzdGlvbiBhYm92ZS4NCj4gPj4g Pj4gPkR1ZSB0byB0aGlzLCBzdGVwIDMuYSBjcmVhdGVzIHRoZSBhZGRpdGlvbmFsIGJ1dCBzaG91 bGRuJ3QtZXhpc3QNCj4gPkJMSw0KPiA+PiA+PiA+aGFuZGxlcyA8QkxLNj4gYW5kIDxCTEs3L0ZT Mj4uDQo+ID4+ID4+ID4NCj4gPj4gPj4gPlVkZkR4ZSBkcml2ZXIgaXMgc3VwcG9zZWQgdG8gU3Rh cnQoKSBvbiBlYWNoIHZvbHVtZSBhbmQgcHJvZHVjZQ0KPiA+PiA+PiA+U2ltcGxlRmlsZVN5c3Rl bSBwcm90b2NvbC4NCj4gPj4gPj4NCj4gPj4gPj4gSXQgc2VlbXMgdGhhdCBQYXJ0aXRpb25JbnN0 YWxsVWRmQ2hpbGRIYW5kbGVzKCkgaW5kZWVkIHNraXBzIHRoZQ0KPiA+PiA+RWxUb3JpdG8NCj4g Pj4gPj4gcGFydGl0aW9ucyBvdGhlcndpc2UgeW91J2Qgc2VlIHRoZSAiLi4uL0NEUk9NKDB4MSkv VmVuTWVkaWEoKSIgYW5kDQo+ID4+ID4+ICIuLi4vQ0RST00oMHgwKS9WZW5NZWRpYSgpIiBkZXZp Y2UgcGF0aHMgKmFsc28qIGluIHRoZSBtYXBwaW5nDQo+ID4+ID5vdXRwdXQuDQo+ID4+ID4+DQo+ ID4+ID4+IElmIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHksIHRoZSBwcm9ibGVtIGlzIHRoYXQgd2hl biB3ZSBjcmVhdGUgYQ0KPiA+Y2hpbGQNCj4gPj4gPmhhbmRsZQ0KPiA+PiA+PiBmb3IgYW4gVURG IHZvbHVtZSwgUGFydGl0aW9uIGRyaXZlciB3aWxsIGV4ZWN1dGUgYWdhaW4sIHBhcnNlIHRoZQ0K PiA+PiA+bmV3bHkNCj4gPj4gPj4gY3JlYXRlZCBVREYgaGFuZGxlLCBmaW5kIGFnYWluIGFuIEVs VG9yaXRvIHBhcnRpdGlvbiBhbmQgdGhlbg0KPiA+aW5zdGFsbA0KPiA+PiA+YSBuZXcNCj4gPj4g Pj4gY2hpbGQgaGFuZGxlIChWZW5NZWRpYSgpL0NEUk9NKCkpDQo+ID4+ID4+DQo+ID4+ID4+IFNv LCB0aGUgbG9naWMgb2Ygc2tpcHBpbmcgb2YgRWxUb3JpdG8gcGFydGl0aW9ucyBpbg0KPiA+PiA+ PiBQYXJ0aXRpb25JbnN0YWxsVWRmQ2hpbGRIYW5kbGVzKCkgaXMgbm90IGVub3VnaC4gVW5mb3J0 dW5hdGVseSB3ZQ0KPiA+PiA+Y2FuJ3QNCj4gPj4gPj4gaGFuZGxlIFVERiBicmlkZ2UgZGlza3Mg KEVsVG9yaXRvICsgVURGKSBlbnRpcmVseSBpbg0KPiA+PiA+PiBQYXJ0aXRpb25JbnN0YWxsVWRm Q2hpbGRIYW5kbGVzKCkgLS0gd2Ugc2hvdWxkIHByb2JhYmx5IGFsc28gc2tpcA0KPiA+VURGDQo+ ID4+ID5kZXZpY2UNCj4gPj4gPj4gcGF0aHMgaW4gUGFydGl0aW9uSW5zdGFsbEVsVG9yaXRvQ2hp bGRIYW5kbGVzKCkuDQo+ID4+ID4+DQo+ID4+ID4+IERvZXMgaXQgbWFrZSBzZW5zZSB0byB5b3Us IFJheT8gVGhhbmtzIGZvciByYWlzaW5nIHRoaXMgdXAuDQo+ID4+ID4+DQo+ID4+ID4+IFBhdWxv DQo+ID4+ID4+DQo+ID4+ID4+ID4NCj4gPj4gPj4gPkRvIHlvdSBhZ3JlZSB3aXRoIG15IGFib3Zl IHN1Z2dlc3Rpb25zPw0KPiA+PiA+PiA+DQo+ID4+ID4+ID5MYXN6bG8sDQo+ID4+ID4+ID5JIHVu ZGVyc3Rvb2QgeW91ciBuZWVkcyBvZiB0aGlzIFVERiBzdXBwb3J0LiBCdXQgYXMgeW91IGNhbiBz ZWUNCj4gPj4gPnRoZXJlDQo+ID4+ID4+ID5hcmUgbWFueSBidWlsZCBmYWlsdXJlcyBhbmQgZXZl biBmdW5jdGlvbmFsaXR5IGlzc3VlcyBkdWUgdG8gdGhpcw0KPiA+PiA+PiA+c3VwcG9ydC4NCj4g Pj4gPj4gPkkgYW0gbm90IHN1cmUgaG93IHRoZSBvdGhlciBvcGVuIHNvdXJjZSBwcm9qZWN0IGhh bmRsZXMgc3VjaA0KPiA+Y2FzZXMuDQo+ID4+ID4+ID5CdXQgSSBhbSB0aGlua2luZyBtYXliZSB3 ZSBjb3VsZCBtb3ZlIHRoZSB3aG9sZSBVREYgc3VwcG9ydCB0bw0KPiA+PiA+PiA+ZWRrMi1zdGFn aW5nIGZpcnN0bHkgYW5kIG1vdmUgaXQgYmFjayBhZnRlciBhbGwgdGhlIGlzc3VlcyBhcmUNCj4g Pj4gPj4gPnJlc29sdmVkLg0KPiA+PiA+PiA+V2hhdCdzIHlvdXIgc3VnZ2VzdGlvbj8NCj4gPj4g Pj4gPg0KPiA+PiA+PiA+VGhhbmtzL1JheQ0KPiA+PiA+Pg0KPiA+PiA+PiAtLQ0KPiA+PiA+PiBT ZW50IGZyb20gbXkgQW5kcm9pZCBkZXZpY2Ugd2l0aCBLLTkgTWFpbC4gUGxlYXNlIGV4Y3VzZSBt eQ0KPiA+YnJldml0eS4NCj4gPj4NCj4gPj4gLS0NCj4gPj4gU2VudCBmcm9tIG15IEFuZHJvaWQg ZGV2aWNlIHdpdGggSy05IE1haWwuIFBsZWFzZSBleGN1c2UgbXkgYnJldml0eS4NCj4gDQo+IC0t DQo+IFNlbnQgZnJvbSBteSBBbmRyb2lkIGRldmljZSB3aXRoIEstOSBNYWlsLiBQbGVhc2UgZXhj dXNlIG15IGJyZXZpdHkuDQo=