From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [218.249.47.111] (helo=mailgw02.mediatek.com) by merlin.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1WT6nk-0008Qd-BC for linux-mtd@lists.infradead.org; Thu, 27 Mar 2014 09:40:46 +0000 From: =?utf-8?B?S3VuIENoZW4gKOmZiOaYhik=?= To: Marc Kleine-Budde , "artem.bityutskiy@linux.intel.com" Subject: =?utf-8?B?562U5aSNOiDnrZTlpI06IFtQQVRDSCA2LzZdIHNlbGludXg6IGRvIG5vdCBj?= =?utf-8?Q?onfuse_lockdep?= Date: Thu, 27 Mar 2014 09:40:01 +0000 Message-ID: References: <1392375054-7090-1-git-send-email-mkl@pengutronix.de> <1392375054-7090-6-git-send-email-mkl@pengutronix.de> <1392385262.12215.88.camel@sauron.fi.intel.com> <52FE1ED9.9000800@pengutronix.de> <52FF3D3F.7040201@pengutronix.de> In-Reply-To: <52FF3D3F.7040201@pengutronix.de> Content-Language: zh-CN Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Cc: =?utf-8?B?TGluZ2VyIExlZSAo5p2O55WM6YuSKQ==?= , linux-mtd List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , RGVhciBNYXJjDQoNClRoZSBkZWFkIGxvY2sgd2FybmluZyBpc3N1ZSB3ZSBhbHJlYWR5IGZpeC4N CkJ1dCB0ZXN0IHRoaXMgc2VjdXJpdHkuKiB4YXR0ciBwYXRjaCwgd2UgZm91bmQgdGhpcyBwcm9i bGVtOg0KQWZ0ZXIgZW5hYmxlIFNFTElOVVgNCklmIHdlIGNhbGwgZ2V0eGF0dHIoIi9zeXN0ZW0v YmluL3Rlc3QiLCBYQVRUUl9OQU1FX1NFTElOVVgsIE5VTEwsIDApLCB0aGUgcmV0dXJuIHZhbHVl IGlzIGxhcmdlIHRoYW4gMDsNCkJ1dCBpZiB3ZSBjYWxsIGdldHhhdHRyKCIvc3lzdGVtL2Jpbi90 ZXN0IiwgWEFUVFJfTkFNRV9DQVBTLCBOVUxMLCAwKSwgaXQgd2lsbCBoYXMgZXJybm8gd2l0aCBF Tk9EQVRBDQpJdCBzZWVtcyBsaWtlIG5vdCBzdXBwb3J0IHNlY3VyaXR5LmNhcGFiaWxpdHk/DQoN ClRoYW5rcw0KQmVzdCByZWdhcmRzLg0KDQotIEt1biBDaGVuICjpmYjmmIYpDQoNCg0KLS0tLS3p gq7ku7bljp/ku7YtLS0tLQ0K5Y+R5Lu25Lq6OiBNYXJjIEtsZWluZS1CdWRkZSBbbWFpbHRvOm1r bEBwZW5ndXRyb25peC5kZV0gDQrlj5HpgIHml7bpl7Q6IDIwMTTlubQy5pyIMTXml6UgMTg6MTEN CuaUtuS7tuS6ujogS3VuIENoZW4gKOmZiOaYhik7IGFydGVtLmJpdHl1dHNraXlAbGludXguaW50 ZWwuY29tDQrmioTpgIE6IExpbmdlciBMZWUgKOadjueVjOmLkik7IGxpbnV4LW10ZA0K5Li76aKY OiBSZTog562U5aSNOiBbUEFUQ0ggNi82XSBzZWxpbnV4OiBkbyBub3QgY29uZnVzZSBsb2NrZGVw DQoNCk9uIDAyLzE1LzIwMTQgMDc6NTUgQU0sIEt1biBDaGVuICjpmYjmmIYpIHdyb3RlOg0KPiBJ biBvdXIgcGxhdGZvcm0sIHdlIGFwcGx5IHRoZSB4YXR0ciBwYXRjaCBhbmQgZ2V0IHRoaXMgbG9j ayB3YXJuaW5nIA0KPiB3aGljaCBzYW1lIGFzIHlvdSBkZXNjcmliZWQgaW4gDQo+IGh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL3BpcGVybWFpbC9saW51eC1tdGQvMjAxMy1GZWJydWFyeS8wNDU4 MTguaHQNCj4gbWwNCj4NCj4gRG9lcyB0aGlzIGxvY2sgd2FybmluZyBhbHJlYWR5IGhhcyBwYXRj aCBub3c/DQoNClRha2luZyB0aGlzIGRpc2N1c3Npb24gdG8gdGhlIGxpbnV4LW10ZCBsaXN0LiBI YXZlIHlvdSBhcHBsaWVkIHRoZSB3aG9sZSBzZXJpZXMgSSd2ZSBzZW5kIHlvdT8gTG9vayBhdCB0 aGUgZW5kIG9mIHRoaXMgbWFpbCBmb3IgdGhlIHBhdGNoLg0KDQpNYXJjDQo+IA0KPiBPdXIgbG9j ayB3YXJuaW5nIG1lc3NhZ2U6DQo+IA0KPiBbICAgMTguMDY5Nzk2XS0oMSlbMTppbml0XS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gWyAg IDE4LjA3MDY5N10tKDEpWzE6aW5pdF1pbml0LzEgaXMgdHJ5aW5nIHRvIGFjcXVpcmUgbG9jazoN Cj4gWyAgIDE4LjA3MTM1OF0tKDEpWzE6aW5pdF0gKCZzYi0+c190eXBlLT5pX211dGV4X2tleSM3 KXsrLisuLi59LCBhdDogWzxjMDJhNmRkND5dIHViaWZzX2luaXRfc2VjdXJpdHkrMHgzNC8weDZj DQo+IFsgICAxOC4wNzI1ODNdLSgxKVsxOmluaXRdDQo+IFsgICAxOC4wNzI1ODddLSgxKVsxOmlu aXRdYnV0IHRhc2sgaXMgYWxyZWFkeSBob2xkaW5nIGxvY2s6DQo+IFsgICAxOC4wNzM1NDhdLSgx KVsxOmluaXRdICgmdWktPnVpX211dGV4KXsrLisuLi59LCBhdDogWzxjMDI3YTg5ND5dIHViaWZz X21rZGlyKzB4YjQvMHgyMjQNCj4gWyAgIDE4LjA3NDU1N10tKDEpWzE6aW5pdF0NCj4gWyAgIDE4 LjA3NDU2MV0tKDEpWzE6aW5pdF13aGljaCBsb2NrIGFscmVhZHkgZGVwZW5kcyBvbiB0aGUgbmV3 IGxvY2suDQo+IFsgICAxOC4wNzQ1NjddLSgxKVsxOmluaXRdDQo+IFsgICAxOC4wNzU5MzVdLSgx KVsxOmluaXRdDQo+IFsgICAxOC4wNzU5MzldLSgxKVsxOmluaXRddGhlIGV4aXN0aW5nIGRlcGVu ZGVuY3kgY2hhaW4gKGluIHJldmVyc2Ugb3JkZXIpIGlzOg0KPiBbICAgMTguMDc3MTA3XS0oMSlb MTppbml0XQ0KPiBbICAgMTguMDc3MTExXS0oMSlbMTppbml0XS0+ICMxICgmdWktPnVpX211dGV4 KXsrLisuLi59Og0KPiBbICAgMTguMDc4MDM5XS0oMSlbMTppbml0XSAgICAgICBbPGMwMGQyYjEw Pl0gX19sb2NrX2FjcXVpcmUrMHgxNTE4LzB4MWIxYw0KPiBbICAgMTguMDc4ODYzXS0oMSlbMTpp bml0XSAgICAgICBbPGMwMGQzNmI4Pl0gbG9ja19hY3F1aXJlKzB4YWMvMHgxNGMNCj4gWyAgIDE4 LjA3OTYzNF0tKDEpWzE6aW5pdF0gICAgICAgWzxjMDgzNjkyOD5dIG11dGV4X2xvY2tfbmVzdGVk KzB4NmMvMHg1NjANCj4gWyAgIDE4LjA4MDQ1OF0tKDEpWzE6aW5pdF0gICAgICAgWzxjMDI3N2Rl ND5dIHViaWZzX3NldGF0dHIrMHhmOC8weDQwOA0KPiBbICAgMTguMDgxMjM4XS0oMSlbMTppbml0 XSAgICAgICBbPGMwMTljOTRjPl0gbm90aWZ5X2NoYW5nZSsweDFmYy8weDMxYw0KPiBbICAgMTgu MDgyMDMwXS0oMSlbMTppbml0XSAgICAgICBbPGMwMTdmMWRjPl0gY2htb2RfY29tbW9uKzB4NzAv MHg5MA0KPiBbICAgMTguMDgyNzg5XS0oMSlbMTppbml0XSAgICAgICBbPGMwMTdmZGFjPl0gc3lz X2ZjaG1vZGF0KzB4M2MvMHg1NA0KPiBbICAgMTguMDgzNTQ5XS0oMSlbMTppbml0XSAgICAgICBb PGMwMTdmZGVjPl0gc3lzX2NobW9kKzB4MjgvMHgyYw0KPiBbICAgMTguMDg0Mjc1XS0oMSlbMTpp bml0XSAgICAgICBbPGMwMDBlNDgwPl0gcmV0X2Zhc3Rfc3lzY2FsbCsweDAvMHg0MA0KPiBbICAg MTguMDg1MDY4XS0oMSlbMTppbml0XQ0KPiBbICAgMTguMDg1MDcyXS0oMSlbMTppbml0XS0+ICMw ICgmc2ItPnNfdHlwZS0+aV9tdXRleF9rZXkjNyl7Ky4rLi4ufToNCj4gWyAgIDE4LjA4NjE0MV0t KDEpWzE6aW5pdF0gICAgICAgWzxjMDgyYjNhOD5dIHByaW50X2NpcmN1bGFyX2J1ZysweDY4LzB4 MmM0DQo+IFsgICAxOC4wODY5NzZdLSgxKVsxOmluaXRdICAgICAgIFs8YzAwZDJiYWM+XSBfX2xv Y2tfYWNxdWlyZSsweDE1YjQvMHgxYjFjDQo+IFsgICAxOC4wODc4MDBdLSgxKVsxOmluaXRdICAg ICAgIFs8YzAwZDM2Yjg+XSBsb2NrX2FjcXVpcmUrMHhhYy8weDE0Yw0KPiBbICAgMTguMDg4NTcx XS0oMSlbMTppbml0XSAgICAgICBbPGMwODM2OTI4Pl0gbXV0ZXhfbG9ja19uZXN0ZWQrMHg2Yy8w eDU2MA0KPiBbICAgMTguMDg5Mzk1XS0oMSlbMTppbml0XSAgICAgICBbPGMwMmE2ZGQ0Pl0gdWJp ZnNfaW5pdF9zZWN1cml0eSsweDM0LzB4NmMNCj4gWyAgIDE4LjA5MDIzMF0tKDEpWzE6aW5pdF0g ICAgICAgWzxjMDI3YTkzMD5dIHViaWZzX21rZGlyKzB4MTUwLzB4MjI0DQo+IFsgICAxOC4wOTEw MDBdLSgxKVsxOmluaXRdICAgICAgIFs8YzAxOGQxMjg+XSB2ZnNfbWtkaXIrMHhjOC8weDE0NA0K PiBbICAgMTguMDkxNzM3XS0oMSlbMTppbml0XSAgICAgICBbPGMwMTkxMzMwPl0gc3lzX21rZGly YXQrMHhiOC8weGM4DQo+IFsgICAxOC4wOTI0ODZdLSgxKVsxOmluaXRdICAgICAgIFs8YzAxOTEz Njg+XSBzeXNfbWtkaXIrMHgyOC8weDJjDQo+IFsgICAxOC4wOTMyMTNdLSgxKVsxOmluaXRdICAg ICAgIFs8YzAwMGU0ODA+XSByZXRfZmFzdF9zeXNjYWxsKzB4MC8weDQwDQo+IFsgICAxOC4wOTQw MDVdLSgxKVsxOmluaXRdDQo+IFsgICAxOC4wOTQwMDldLSgxKVsxOmluaXRdb3RoZXIgaW5mbyB0 aGF0IG1pZ2h0IGhlbHAgdXMgZGVidWcgdGhpczoNCj4gWyAgIDE4LjA5NDAxNV0tKDEpWzE6aW5p dF0NCj4gWyAgIDE4LjA5NTM2Ml0tKDEpWzE6aW5pdF0gUG9zc2libGUgdW5zYWZlIGxvY2tpbmcg c2NlbmFyaW86DQo+IFsgICAxOC4wOTUzNjddLSgxKVsxOmluaXRdDQo+IFsgICAxOC4wOTYzMzhd LSgxKVsxOmluaXRdICAgICAgIENQVTAgICAgICAgICAgICAgICAgICAgIENQVTENCj4gWyAgIDE4 LjA5NzAyMV0tKDEpWzE6aW5pdF0gICAgICAgLS0tLSAgICAgICAgICAgICAgICAgICAgLS0tLQ0K PiBbICAgMTguMDk3NzA0XS0oMSlbMTppbml0XSAgbG9jaygmdWktPnVpX211dGV4KTsNCj4gWyAg IDE4LjA5ODI0N10tKDEpWzE6aW5pdF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9j aygmc2ItPnNfdHlwZS0+aV9tdXRleF9rZXkjNyk7DQo+IFsgICAxOC4wOTkyNDRdLSgxKVsxOmlu aXRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2soJnVpLT51aV9tdXRleCk7DQo+ IFsgICAxOC4xMDAxMDFdLSgxKVsxOmluaXRdICBsb2NrKCZzYi0+c190eXBlLT5pX211dGV4X2tl eSM3KTsNCj4gWyAgIDE4LjEwMDc4NF0tKDEpWzE6aW5pdF0NCj4gWyAgIDE4LjEwMDc4OV0tKDEp WzE6aW5pdF0gKioqIERFQURMT0NLICoqKg0KPiBbICAgMTguMTAwNzk0XS0oMSlbMTppbml0XQ0K PiBbICAgMTguMTAxODgyXS0oMSlbMTppbml0XVtDYXV0aW9uIV0gaW5pdC8xIGlzIHJ1bmFibGUg c3RhdGUNCj4gWyAgIDE4LjEwMjU1NV0tKDEpWzE6aW5pdF0yIGxvY2tzIGhlbGQgYnkgaW5pdC8x Og0KPiBbICAgMTguMTAzMTA2XS0oMSlbMTppbml0XSAjMDogICgmdHlwZS0+aV9tdXRleF9kaXJf a2V5IzMvMSl7Ky4rLisufSwgYXQ6IFs8YzAxOGZkN2M+XSBrZXJuX3BhdGhfY3JlYXRlKzB4NzQv MHhmYw0KPiBbICAgMTguMTA0MzUzXS0oMSlbMTppbml0XSAjMTogICgmdWktPnVpX211dGV4KXsr LisuLi59LCBhdDogWzxjMDI3YTg5ND5dIHViaWZzX21rZGlyKzB4YjQvMHgyMjQNCj4gWyAgIDE4 LjEwNTQxNl0tKDEpWzE6aW5pdF0NCj4gWyAgIDE4LjEwNTQyMF0tKDEpWzE6aW5pdF1zdGFjayBi YWNrdHJhY2U6DQo+IFsgICAxOC4xMDYxOTZdLSgxKVsxOmluaXRdQmFja3RyYWNlOiANCj4gWyAg IDE4LjEwNjYzM10tKDEpWzE6aW5pdF1bPGMwMDEyODQ4Pl0gKGR1bXBfYmFja3RyYWNlKzB4MC8w eDExNCkgZnJvbSBbPGMwODJhMThjPl0gKGR1bXBfc3RhY2srMHgyMC8weDI0KQ0KPiBbICAgMTgu MTA3ODAyXS0oMSlbMTppbml0XSByNjpjMGU4ZTI0NCByNTpjMGU4ZTEzNCByNDpjMGU4ZTI0NCBy MzoyNzFhZTk1Zg0KPiBbICAgMTguMTA4NjM2XS0oMSlbMTppbml0XVs8YzA4MmExNmM+XSAoZHVt cF9zdGFjaysweDAvMHgyNCkgZnJvbSBbPGMwODJiNWI0Pl0gKHByaW50X2NpcmN1bGFyX2J1Zysw eDI3NC8weDJjNCkNCj4gWyAgIDE4LjEwOTg3MV0tKDEpWzE6aW5pdF1bPGMwODJiMzQwPl0gKHBy aW50X2NpcmN1bGFyX2J1ZysweDAvMHgyYzQpIGZyb20gWzxjMDBkMmJhYz5dIChfX2xvY2tfYWNx dWlyZSsweDE1YjQvMHgxYjFjKQ0KPiBbICAgMTguMTExMTgzXS0oMSlbMTppbml0XVs8YzAwZDE1 Zjg+XSAoX19sb2NrX2FjcXVpcmUrMHgwLzB4MWIxYykgZnJvbSBbPGMwMGQzNmI4Pl0gKGxvY2tf YWNxdWlyZSsweGFjLzB4MTRjKQ0KPiBbICAgMTguMTEyNDA4XS0oMSlbMTppbml0XVs8YzAwZDM2 MGM+XSAobG9ja19hY3F1aXJlKzB4MC8weDE0YykgZnJvbSBbPGMwODM2OTI4Pl0gKG11dGV4X2xv Y2tfbmVzdGVkKzB4NmMvMHg1NjApDQo+IFsgICAxOC4xMTM2NTVdLSgxKVsxOmluaXRdWzxjMDgz NjhiYz5dIChtdXRleF9sb2NrX25lc3RlZCsweDAvMHg1NjApIGZyb20gWzxjMDJhNmRkND5dICh1 Ymlmc19pbml0X3NlY3VyaXR5KzB4MzQvMHg2YykNCj4gWyAgIDE4LjExNDk2Nl0tKDEpWzE6aW5p dF1bPGMwMmE2ZGEwPl0gKHViaWZzX2luaXRfc2VjdXJpdHkrMHgwLzB4NmMpIGZyb20gWzxjMDI3 YTkzMD5dICh1Ymlmc19ta2RpcisweDE1MC8weDIyNCkNCj4gWyAgIDE4LjExNjIxMV0tKDEpWzE6 aW5pdF0gcjc6ZGNmMTIwMDAgcjY6ZGMxZWRiMTAgcjU6ZGY4NjFlZjQgcjQ6ZGJmZTFiMTANCj4g WyAgIDE4LjExNzA0Nl0tKDEpWzE6aW5pdF1bPGMwMjdhN2UwPl0gKHViaWZzX21rZGlyKzB4MC8w eDIyNCkgZnJvbSBbPGMwMThkMTI4Pl0gKHZmc19ta2RpcisweGM4LzB4MTQ0KQ0KPiBbICAgMTgu MTE4MTkyXS0oMSlbMTppbml0XVs8YzAxOGQwNjA+XSAodmZzX21rZGlyKzB4MC8weDE0NCkgZnJv bSBbPGMwMTkxMzMwPl0gKHN5c19ta2RpcmF0KzB4YjgvMHhjOCkNCj4gWyAgIDE4LjExOTMxN10t KDEpWzE6aW5pdF0gcjg6YzAwMGU3MDQgcjc6MDAwMDAwMjcgcjY6MDAwMDAxZjggcjU6MDAwMDAw MDAgcjQ6ZGJmZTQxNTANCj4gWyAgIDE4LjEyMDI4M10tKDEpWzE6aW5pdF1bPGMwMTkxMjc4Pl0g KHN5c19ta2RpcmF0KzB4MC8weGM4KSBmcm9tIFs8YzAxOTEzNjg+XSAoc3lzX21rZGlyKzB4Mjgv MHgyYykNCj4gWyAgIDE4LjEyMTM5Nl0tKDEpWzE6aW5pdF0gcjY6MDAwMDAwMDUgcjU6MDAwNGY3 YzQgcjQ6MDAwMDAxZjgNCj4gWyAgIDE4LjEyMjEwMl0tKDEpWzE6aW5pdF1bPGMwMTkxMzQwPl0g KHN5c19ta2RpcisweDAvMHgyYykgZnJvbSBbPGMwMDBlNDgwPl0gKHJldF9mYXN0X3N5c2NhbGwr MHgwLzB4NDApDQo+IEJlc3QgcmVnYXJkcy4NCj4gDQo+IC0gS3VuIENoZW4gKOmZiOaYhikNCj4g DQo+IC0tLS0t6YKu5Lu25Y6f5Lu2LS0tLS0NCj4g5Y+R5Lu25Lq6OiBNYXJjIEtsZWluZS1CdWRk ZSBbbWFpbHRvOm1rbEBwZW5ndXRyb25peC5kZV0NCj4g5Y+R6YCB5pe26Ze0OiAyMDE05bm0Muac iDE05pelIDIxOjQ5DQo+IOaUtuS7tuS6ujogYXJ0ZW0uYml0eXV0c2tpeUBsaW51eC5pbnRlbC5j b20NCj4g5oqE6YCBOiBLdW4gQ2hlbiAo6ZmI5piGKQ0KPiDkuLvpopg6IFJlOiBbUEFUQ0ggNi82 XSBzZWxpbnV4OiBkbyBub3QgY29uZnVzZSBsb2NrZGVwDQo+IA0KPiBPbiAwMi8xNC8yMDE0IDAy OjQxIFBNLCBBcnRlbSBCaXR5dXRza2l5IHdyb3RlOg0KPj4gT24gRnJpLCAyMDE0LTAyLTE0IGF0 IDExOjUwICswMTAwLCBNYXJjIEtsZWluZS1CdWRkZSB3cm90ZToNCj4+PiBGcm9tOiBBcnRlbSBC aXR5dXRza2l5IDxhcnRlbS5iaXR5dXRza2l5QGxpbnV4LmludGVsLmNvbT4NCj4+Pg0KPj4+IFNl bGludXggaGFzIHBlci1pbm9kZSBtdXRleGVzIGNhbGxlZCAnaXNlYy0+bG9jaycsIGFuZCB0aGV5 IGFyZSANCj4+PiBpbml0aWFsaXplZCBpbiB0aGUgc2FtZSBwbGFjZSwgd2hpY2ggbWFrZXMgbG9j a2RlcCB0cmVhdCBhbGwgb2YgdGhlIA0KPj4+IHRoZW0gYXMgaWYgdGhleSB3ZXJlIGlkZW50aWNh bC4gSG93ZXZlciwgbG9ja2luZyBydWxlcyBtYXkgYmUgYSANCj4+PiBsaXR0bGUgYml0IGRpZmZl cmVudCBkZXBlbmRpbmcgb24gdGhlIGZpbGUtc3lzdGVtLCBzbyB3ZSBzaG91bGQgcHV0IA0KPj4+ IHRoZXNlIGxvY2tzIHRvIHNlcGFyYXRlIGNsYXNzZXMsIGp1c3QgbGlrZSB3ZSBkbyBmb3IgJ2lf bXV0ZXgnLg0KPj4+IE5hbWVseSwgd2Ugc2hvdWxkIHB1dCB0aGVtIHRvIHBlci1GUyB0eXBlIGNs YXNzZXMsIHdoaWNoIGlzIGV4YWN0bHkgd2hhdCB0aGlzIHBhdGNoIGRvZXMuDQo+Pj4NCj4+PiBU aGUgcHJvYmxlbSB0aGlzIHBhdGNoIGludGVuZHMgdG8gZml4IGlzIGEgc3RyYW5nZSBsb2NrZGVw IHdhcm5pbmcsIA0KPj4+IHdoaWNoIEksIGZyYW5rbHkgc3BlYWtpbmcsIGRvIG5vdCByZWFsbHkg dW5kZXJzdGFuZCwgYnV0IEkgYmVsaWV2ZSANCj4+PiB0aGUgcm9vdC1jYXVzZSBzaG91bGQgYmUg Zml4ZWQgYnkgdGhpcyBwYXRjaC4NCj4+DQo+PiBJIHdvbmRlciwgd2h5IHRoaXMgcGF0Y2ggaXMg bm90IGluIHVwc3RyZWFtPyBEb2VzIGl0IHdvcmssIEJUVz8gOi0pIA0KPj4gWW91IGNvdWxkIHRy eSB0byByZS1zZW5kIGl0IHRvIHNlbGludXggbWFpbnRhaW5lcnMuDQo+IA0KPiAkY3VzdG9tZXIg Y2hhbmdlcyBwcmlvcml0aWVzLCBubyB0aW1lIHRvIHRlc3QuIEJ1dCBJIGhvcGUgS3VuIENoZW4g Y2FuIHRha2Ugb3Zlci4NCj4gDQo+IE1hcmMNCj4gDQoNCkZyb20gMTAyNzBhNmI5ODk5NzkwZWFk NGNjOGQ0NGM0MWNjMWRjOWRjNTA4NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDENCkZyb206IEFy dGVtIEJpdHl1dHNraXkgPGFydGVtLmJpdHl1dHNraXlAbGludXguaW50ZWwuY29tPg0KRGF0ZTog VGh1LCAxNCBGZWIgMjAxMyAwOTowNzozNiArMDIwMA0KU3ViamVjdDogW1BBVENIXSBzZWxpbnV4 OiBkbyBub3QgY29uZnVzZSBsb2NrZGVwDQoNClNlbGludXggaGFzIHBlci1pbm9kZSBtdXRleGVz IGNhbGxlZCAnaXNlYy0+bG9jaycsIGFuZCB0aGV5IGFyZSBpbml0aWFsaXplZCBpbiB0aGUgc2Ft ZSBwbGFjZSwgd2hpY2ggbWFrZXMgbG9ja2RlcCB0cmVhdCBhbGwgb2YgdGhlIHRoZW0gYXMgaWYg dGhleSB3ZXJlIGlkZW50aWNhbC4gSG93ZXZlciwgbG9ja2luZyBydWxlcyBtYXkgYmUgYSBsaXR0 bGUgYml0IGRpZmZlcmVudCBkZXBlbmRpbmcgb24gdGhlIGZpbGUtc3lzdGVtLCBzbyB3ZSBzaG91 bGQgcHV0IHRoZXNlIGxvY2tzIHRvIHNlcGFyYXRlIGNsYXNzZXMsIGp1c3QgbGlrZSB3ZSBkbyBm b3IgJ2lfbXV0ZXgnLiBOYW1lbHksIHdlIHNob3VsZCBwdXQgdGhlbSB0byBwZXItRlMgdHlwZSBj bGFzc2VzLCB3aGljaCBpcyBleGFjdGx5IHdoYXQgdGhpcyBwYXRjaCBkb2VzLg0KDQpUaGUgcHJv YmxlbSB0aGlzIHBhdGNoIGludGVuZHMgdG8gZml4IGlzIGEgc3RyYW5nZSBsb2NrZGVwIHdhcm5p bmcsIHdoaWNoIEksIGZyYW5rbHkgc3BlYWtpbmcsIGRvIG5vdCByZWFsbHkgdW5kZXJzdGFuZCwg YnV0IEkgYmVsaWV2ZSB0aGUgcm9vdC1jYXVzZSBzaG91bGQgYmUgZml4ZWQgYnkgdGhpcyBwYXRj aC4NCg0KTG9vayBhdCB0aGUgc3RhY2t0cmFjZSAjNDogaGVyZSB3ZSBoYXZlICdkZWJ1Z2ZzX2Ny ZWF0ZV9kaXIoKScNCg0KWyAgICA1LjM5MDMxMl0gPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpbICAgIDUuMzk2NTAwXSBbIElORk86IHBvc3Np YmxlIGNpcmN1bGFyIGxvY2tpbmcgZGVwZW5kZW5jeSBkZXRlY3RlZCBdDQpbICAgIDUuNDAyNzgx XSAzLjguMC1yYzYtMDAwMDUtZzRmN2UzOWQgIzQ5IE5vdCB0YWludGVkDQpbICAgIDUuNDA3NzUw XSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQpbICAgIDUuNDE0MDMxXSBzeXN0ZW1kLzEgaXMgdHJ5aW5nIHRvIGFjcXVpcmUgbG9jazoNClsg ICAgNS40MTg2NTZdICAoJmMtPnRuY19tdXRleCl7Ky4rLi4ufSwgYXQ6IFs8YzAxNTUyZDA+XQ0K dWJpZnNfdG5jX2xvY2F0ZSsweDMwLzB4MTk4DQpbICAgIDUuNDI2MzQzXQ0KWyAgICA1LjQyNjM0 M10gYnV0IHRhc2sgaXMgYWxyZWFkeSBob2xkaW5nIGxvY2s6DQpbICAgIDUuNDMyMjE4XSAgKCZp c2VjLT5sb2NrKXsrLisuKy59LCBhdDogWzxjMDE4ZTI5OD5dDQppbm9kZV9kb2luaXRfd2l0aF9k ZW50cnkrMHg4Yy8weDU1Yw0KWyAgICA1LjQ0MDM3NV0NClsgICAgNS40NDAzNzVdIHdoaWNoIGxv Y2sgYWxyZWFkeSBkZXBlbmRzIG9uIHRoZSBuZXcgbG9jay4NClsgICAgNS40NDAzNzVdDQpbICAg IDUuNDQ4NTkzXQ0KWyAgICA1LjQ0ODU5M10gdGhlIGV4aXN0aW5nIGRlcGVuZGVuY3kgY2hhaW4g KGluIHJldmVyc2Ugb3JkZXIpIGlzOg0KWyAgICA1LjQ1NjA5M10NCi0+ICM0ICgmaXNlYy0+bG9j ayl7Ky4rLisufToNClsgICAgNS40NjAyNTBdICAgICAgICBbPGMwMDRlOGU4Pl0gbG9ja19hY3F1 aXJlKzB4NjQvMHg3OA0KWyAgICA1LjQ2NTQzN10gICAgICAgIFs8YzAzNTVkNWM+XSBtdXRleF9s b2NrX25lc3RlZCsweDVjLzB4MmVjDQpbICAgIDUuNDcxMTI1XSAgICAgICAgWzxjMDE4ZTI5OD5d IGlub2RlX2RvaW5pdF93aXRoX2RlbnRyeSsweDhjLzB4NTVjDQpbICAgIDUuNDc3NDM3XSAgICAg ICAgWzxjMDE4OWJkOD5dIHNlY3VyaXR5X2RfaW5zdGFudGlhdGUrMHgxYy8weDM0DQpbICAgIDUu NDgzNTAwXSAgICAgICAgWzxjMDE3YTYxND5dDQpkZWJ1Z2ZzX21rbm9kLnBhcnQuMTUuY29uc3Rw cm9wLjE4KzB4OTQvMHgxMjgNClsgICAgNS40OTA2NTZdICAgICAgICBbPGMwMTdhODU4Pl0gX19j cmVhdGVfZmlsZSsweDFiMC8weDI1Yw0KWyAgICA1LjQ5NjA5M10gICAgICAgIFs8YzAxN2E5OGM+ XSBkZWJ1Z2ZzX2NyZWF0ZV9kaXIrMHgxYy8weDI4DQpbICAgIDUuNTAxNzgxXSAgICAgICAgWzxj MDQ5MWNlOD5dIHBpbmN0cmxfaW5pdCsweDFjLzB4ZDANClsgICAgNS41MDY5NjhdICAgICAgICBb PGMwMDA4OTAwPl0gZG9fb25lX2luaXRjYWxsKzB4MTA4LzB4MTdjDQpbICAgIDUuNTEyNTkzXSAg ICAgICAgWzxjMDQ4Mzg1OD5dIGtlcm5lbF9pbml0X2ZyZWVhYmxlKzB4ZWMvMHgxYjQNClsgICAg NS41MTg1NjJdICAgICAgICBbPGMwMzRmMzk4Pl0ga2VybmVsX2luaXQrMHg4LzB4ZTQNClsgICAg NS41MjM1NjJdICAgICAgICBbPGMwMDA5NDQ4Pl0gcmV0X2Zyb21fZm9yaysweDE0LzB4MmMNClsg ICAgNS41Mjg4MTJdDQotPiAjMyAoJnNiLT5zX3R5cGUtPmlfbXV0ZXhfa2V5IzIpeysuKy4rLn06 DQpbICAgIDUuNTM0MzEyXSAgICAgICAgWzxjMDA0ZThlOD5dIGxvY2tfYWNxdWlyZSsweDY0LzB4 NzgNClsgICAgNS41Mzk0NjhdICAgICAgICBbPGMwMzU1ZDVjPl0gbXV0ZXhfbG9ja19uZXN0ZWQr MHg1Yy8weDJlYw0KWyAgICA1LjU0NTE4N10gICAgICAgIFs8YzAxN2E2Zjg+XSBfX2NyZWF0ZV9m aWxlKzB4NTAvMHgyNWMNClsgICAgNS41NTA1MzFdICAgICAgICBbPGMwMTdhOThjPl0gZGVidWdm c19jcmVhdGVfZGlyKzB4MWMvMHgyOA0KWyAgICA1LjU1NjIxOF0gICAgICAgIFs8YzAyNmNmYzQ+ XSBjbGtfZGVidWdfY3JlYXRlX3N1YnRyZWUrMHgxYy8weDEwOA0KWyAgICA1LjU2MjUwMF0gICAg ICAgIFs8YzA0OTViZmM+XSBjbGtfZGVidWdfaW5pdCsweDY4LzB4YzANClsgICAgNS41Njc4NzVd ICAgICAgICBbPGMwMDA4OTAwPl0gZG9fb25lX2luaXRjYWxsKzB4MTA4LzB4MTdjDQpbICAgIDUu NTczNDY4XSAgICAgICAgWzxjMDQ4Mzg1OD5dIGtlcm5lbF9pbml0X2ZyZWVhYmxlKzB4ZWMvMHgx YjQNClsgICAgNS41Nzk0MzddICAgICAgICBbPGMwMzRmMzk4Pl0ga2VybmVsX2luaXQrMHg4LzB4 ZTQNClsgICAgNS41ODQ0MzddICAgICAgICBbPGMwMDA5NDQ4Pl0gcmV0X2Zyb21fZm9yaysweDE0 LzB4MmMNClsgICAgNS41ODk2ODddDQotPiAjMiAocHJlcGFyZV9sb2NrKXsrLisuKy59Og0KWyAg ICA1LjU5MzkzN10gICAgICAgIFs8YzAwNGU4ZTg+XSBsb2NrX2FjcXVpcmUrMHg2NC8weDc4DQpb ICAgIDUuNTk5MTI1XSAgICAgICAgWzxjMDM1NWQ1Yz5dIG11dGV4X2xvY2tfbmVzdGVkKzB4NWMv MHgyZWMNClsgICAgNS42MDQ4MTJdICAgICAgICBbPGMwMjZkNDAwPl0gY2xrX3ByZXBhcmUrMHgx OC8weDM4DQpbICAgIDUuNjA5OTA2XSAgICAgICAgWzxjMDIzYTJmOD5dIF9fZ3BtaV9lbmFibGVf Y2xrKzB4MzAvMHhiMA0KWyAgICA1LjYxNTUzMV0gICAgICAgIFs8YzAyM2E3YmM+XSBncG1pX2Jl Z2luKzB4MTgvMHg1MzANClsgICAgNS42MjA2MjVdICAgICAgICBbPGMwMjM5MjQ0Pl0gZ3BtaV9z ZWxlY3RfY2hpcCsweDNjLzB4NTQNClsgICAgNS42MjYxNTZdICAgICAgICBbPGMwMjM0MWFjPl0g bmFuZF9kb19yZWFkX29wcysweDdjLzB4M2U0DQpbICAgIDUuNjMxNzUwXSAgICAgICAgWzxjMDIz NDgzYz5dIG5hbmRfcmVhZCsweDUwLzB4NzQNClsgICAgNS42MzY2NTZdICAgICAgICBbPGMwMjE5 OGU0Pl0gcGFydF9yZWFkKzB4NWMvMHhhNA0KWyAgICA1LjY0MTU5M10gICAgICAgIFs8YzAyMTc0 MDQ+XSBtdGRfcmVhZCsweDg0LzB4YjgNClsgICAgNS42NDY0MDZdICAgICAgICBbPGMwMjQ1MGNj Pl0gdWJpX2lvX3JlYWQrMHhhMC8weDJjMA0KWyAgICA1LjY1MTU5M10gICAgICAgIFs8YzAyNDI2 NDA+XSB1YmlfZWJhX3JlYWRfbGViKzB4MTkwLzB4NDI0DQpbICAgIDUuNjU3MjgxXSAgICAgICAg WzxjMDI0MWIxOD5dIHViaV9sZWJfcmVhZCsweGFjLzB4MTIwDQpbICAgIDUuNjYyNTYyXSAgICAg ICAgWzxjMDE1MDNlND5dIHViaWZzX2xlYl9yZWFkKzB4MjgvMHg4Yw0KWyAgICA1LjY2NzkwNl0g ICAgICAgIFs8YzAxNTFmNzQ+XSB1Ymlmc19yZWFkX25vZGUrMHg5OC8weDJhMA0KWyAgICA1LjY3 MzQzN10gICAgICAgIFs8YzAxNGU3ODA+XSB1Ymlmc19yZWFkX3NiX25vZGUrMHg1NC8weDc4DQpb ICAgIDUuNjc5MTI1XSAgICAgICAgWzxjMDE0ZjQ0ND5dIHViaWZzX3JlYWRfc3VwZXJibG9jaysw eGM2MC8weDE2M2MNClsgICAgNS42ODUzNDNdICAgICAgICBbPGMwMTRkNjRjPl0gdWJpZnNfbW91 bnQrMHg4MDAvMHgxNzFjDQpbICAgIDUuNjkwNjg3XSAgICAgICAgWzxjMDBiNTc0MD5dIG1vdW50 X2ZzKzB4NDQvMHgxODQNClsgICAgNS42OTU1OTNdICAgICAgICBbPGMwMGNkN2VjPl0gdmZzX2tl cm5fbW91bnQrMHg0Yy8weGMwDQpbICAgIDUuNzAwOTY4XSAgICAgICAgWzxjMDBjZjM5ND5dIGRv X21vdW50KzB4MThjLzB4OGQwDQpbICAgIDUuNzA1OTY4XSAgICAgICAgWzxjMDBjZmI1Yz5dIHN5 c19tb3VudCsweDg0LzB4YjgNClsgICAgNS43MTA4NzVdICAgICAgICBbPGMwNDgzYmM4Pl0gbW91 bnRfYmxvY2tfcm9vdCsweDExOC8weDI1OA0KWyAgICA1LjcxNjU2Ml0gICAgICAgIFs8YzA0ODNl YWM+XSBwcmVwYXJlX25hbWVzcGFjZSsweDhjLzB4MTdjDQpbICAgIDUuNzIyMjgxXSAgICAgICAg WzxjMDM0ZjM5OD5dIGtlcm5lbF9pbml0KzB4OC8weGU0DQpbICAgIDUuNzI3MjgxXSAgICAgICAg WzxjMDAwOTQ0OD5dIHJldF9mcm9tX2ZvcmsrMHgxNC8weDJjDQpbICAgIDUuNzMyNTMxXQ0KLT4g IzEgKCZsZS0+bXV0ZXgpeysrKysuLn06DQpbICAgIDUuNzM2NjI1XSAgICAgICAgWzxjMDA0ZThl OD5dIGxvY2tfYWNxdWlyZSsweDY0LzB4NzgNClsgICAgNS43NDE4MTJdICAgICAgICBbPGMwMzU2 NDY4Pl0gZG93bl9yZWFkKzB4NDAvMHg1NA0KWyAgICA1Ljc0NjcxOF0gICAgICAgIFs8YzAyNDI0 ZTQ+XSB1YmlfZWJhX3JlYWRfbGViKzB4MzQvMHg0MjQNClsgICAgNS43NTIzMTJdICAgICAgICBb PGMwMjQxYjE4Pl0gdWJpX2xlYl9yZWFkKzB4YWMvMHgxMjANClsgICAgNS43NTc1NjJdICAgICAg ICBbPGMwMTUwM2U0Pl0gdWJpZnNfbGViX3JlYWQrMHgyOC8weDhjDQpbICAgIDUuNzYyOTM3XSAg ICAgICAgWzxjMDE1MWY3ND5dIHViaWZzX3JlYWRfbm9kZSsweDk4LzB4MmEwDQpbICAgIDUuNzY4 NDM3XSAgICAgICAgWzxjMDE2ZWRjMD5dIHViaWZzX2xvYWRfem5vZGUrMHg4OC8weDU2MA0KWyAg ICA1Ljc3NDA2Ml0gICAgICAgIFs8YzAxNTUyNTQ+XSB1Ymlmc19sb29rdXBfbGV2ZWwwKzB4MTkw LzB4MWRjDQpbICAgIDUuNzgwMDMxXSAgICAgICAgWzxjMDE1NTJlND5dIHViaWZzX3RuY19sb2Nh dGUrMHg0NC8weDE5OA0KWyAgICA1Ljc4NTY1Nl0gICAgICAgIFs8YzAxNGM2MTQ+XSB1Ymlmc19p Z2V0KzB4NmMvMHg4YTQNClsgICAgNS43OTA3MThdICAgICAgICBbPGMwMTRkYTY0Pl0gdWJpZnNf bW91bnQrMHhjMTgvMHgxNzFjDQpbICAgIDUuNzk2MDkzXSAgICAgICAgWzxjMDBiNTc0MD5dIG1v dW50X2ZzKzB4NDQvMHgxODQNClsgICAgNS44MDEwMDBdICAgICAgICBbPGMwMGNkN2VjPl0gdmZz X2tlcm5fbW91bnQrMHg0Yy8weGMwDQpbICAgIDUuODA2MzQzXSAgICAgICAgWzxjMDBjZjM5ND5d IGRvX21vdW50KzB4MThjLzB4OGQwDQpbICAgIDUuODExMzQzXSAgICAgICAgWzxjMDBjZmI1Yz5d IHN5c19tb3VudCsweDg0LzB4YjgNClsgICAgNS44MTYyNTBdICAgICAgICBbPGMwNDgzYmM4Pl0g bW91bnRfYmxvY2tfcm9vdCsweDExOC8weDI1OA0KWyAgICA1LjgyMTk2OF0gICAgICAgIFs8YzA0 ODNlYWM+XSBwcmVwYXJlX25hbWVzcGFjZSsweDhjLzB4MTdjDQpbICAgIDUuODI3NjU2XSAgICAg ICAgWzxjMDM0ZjM5OD5dIGtlcm5lbF9pbml0KzB4OC8weGU0DQpbICAgIDUuODMyNjU2XSAgICAg ICAgWzxjMDAwOTQ0OD5dIHJldF9mcm9tX2ZvcmsrMHgxNC8weDJjDQpbICAgIDUuODM3OTA2XQ0K LT4gIzAgKCZjLT50bmNfbXV0ZXgpeysuKy4uLn06DQpbICAgIDUuODQyMjUwXSAgICAgICAgWzxj MDA0ZGU0OD5dIF9fbG9ja19hY3F1aXJlKzB4MTRlYy8weDFiMDgNClsgICAgNS44NDc5NjhdICAg ICAgICBbPGMwMDRlOGU4Pl0gbG9ja19hY3F1aXJlKzB4NjQvMHg3OA0KWyAgICA1Ljg1MzEyNV0g ICAgICAgIFs8YzAzNTVkNWM+XSBtdXRleF9sb2NrX25lc3RlZCsweDVjLzB4MmVjDQpbICAgIDUu ODU4ODEyXSAgICAgICAgWzxjMDE1NTJkMD5dIHViaWZzX3RuY19sb2NhdGUrMHgzMC8weDE5OA0K WyAgICA1Ljg2NDQzN10gICAgICAgIFs8YzAxNTVhNDg+XSB1Ymlmc190bmNfbG9va3VwX25tKzB4 MjgvMHgxNTANClsgICAgNS44NzAzMTJdICAgICAgICBbPGMwMTZmYzE4Pl0gdWJpZnNfZ2V0eGF0 dHIrMHhjMC8weDI1NA0KWyAgICA1Ljg3NTc1MF0gICAgICAgIFs8YzAxOGU0Njg+XSBpbm9kZV9k b2luaXRfd2l0aF9kZW50cnkrMHgyNWMvMHg1NWMNClsgICAgNS44ODIxMjVdICAgICAgICBbPGMw MThmMWE4Pl0gc2JfZmluaXNoX3NldF9vcHRzKzB4YTQvMHgyMWMNClsgICAgNS44ODc5MDZdICAg ICAgICBbPGMwMTkwNTVjPl0gc2VsaW51eF9zZXRfbW50X29wdHMrMHgyZWMvMHg0YjgNClsgICAg NS44OTM5NjhdICAgICAgICBbPGMwMTkwN2RjPl0gc3VwZXJibG9ja19kb2luaXQrMHhiNC8weGMw DQpbICAgIDUuODk5NTYyXSAgICAgICAgWzxjMDBiNTFmND5dIGl0ZXJhdGVfc3VwZXJzKzB4YjQv MHhkYw0KWyAgICA1LjkwNDkwNl0gICAgICAgIFs8YzAxYTAyZTg+XSBzZWN1cml0eV9sb2FkX3Bv bGljeSsweDI0OC8weDNjNA0KWyAgICA1LjkxMDk2OF0gICAgICAgIFs8YzAxOTQ5OTQ+XSBzZWxf d3JpdGVfbG9hZCsweDljLzB4NmEwDQpbICAgIDUuOTE2NDA2XSAgICAgICAgWzxjMDBiMjE0OD5d IHZmc193cml0ZSsweGEwLzB4MTdjDQpbICAgIDUuOTIxNDA2XSAgICAgICAgWzxjMDBiMjQ1MD5d IHN5c193cml0ZSsweDNjLzB4NzANClsgICAgNS45MjYzNDNdICAgICAgICBbPGMwMDA5M2EwPl0g cmV0X2Zhc3Rfc3lzY2FsbCsweDAvMHgzOA0KWyAgICA1LjkzMTc4MV0NClsgICAgNS45MzE3ODFd IG90aGVyIGluZm8gdGhhdCBtaWdodCBoZWxwIHVzIGRlYnVnIHRoaXM6DQpbICAgIDUuOTMxNzgx XQ0KWyAgICA1LjkzOTc4MV0gQ2hhaW4gZXhpc3RzIG9mOg0KICAmYy0+dG5jX211dGV4IC0tPiAm c2ItPnNfdHlwZS0+aV9tdXRleF9rZXkjMiAtLT4gJmlzZWMtPmxvY2sNClsgICAgNS45NDg1MDBd ICBQb3NzaWJsZSB1bnNhZmUgbG9ja2luZyBzY2VuYXJpbzoNClsgICAgNS45NDg1MDBdDQpbICAg IDUuOTU0NDM3XSAgICAgICAgQ1BVMCAgICAgICAgICAgICAgICAgICAgQ1BVMQ0KWyAgICA1Ljk1 ODk2OF0gICAgICAgIC0tLS0gICAgICAgICAgICAgICAgICAgIC0tLS0NClsgICAgNS45NjM1MDBd ICAgbG9jaygmaXNlYy0+bG9jayk7DQpbICAgIDUuOTY2NzgxXQ0KbG9jaygmc2ItPnNfdHlwZS0+ aV9tdXRleF9rZXkjMik7DQpbICAgIDUuOTczODQzXSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbG9jaygmaXNlYy0+bG9jayk7DQpbICAgIDUuOTc5NjI1XSAgIGxvY2soJmMtPnRuY19t dXRleCk7DQpbICAgIDUuOTgzMDYyXQ0KWyAgICA1Ljk4MzA2Ml0gICoqKiBERUFETE9DSyAqKioN ClsgICAgNS45ODMwNjJdDQpbICAgIDUuOTg5MDAwXSA0IGxvY2tzIGhlbGQgYnkgc3lzdGVtZC8x Og0KWyAgICA1Ljk5Mjc4MV0gICMwOiAgKHNlbF9tdXRleCl7Ky4rLisufSwgYXQ6IFs8YzAxOTQ5 MTg+XQ0Kc2VsX3dyaXRlX2xvYWQrMHgyMC8weDZhMA0KWyAgICA2LjAwMDM0M10gICMxOiAgKCZ0 eXBlLT5zX3Vtb3VudF9rZXkjMjYpey4rLisuLn0sIGF0OiBbPGMwMGI1MWQwPl0NCml0ZXJhdGVf c3VwZXJzKzB4OTAvMHhkYw0KWyAgICA2LjAwODk2OF0gICMyOiAgKCZzYnNlYy0+bG9jayl7Ky4r LisufSwgYXQ6IFs8YzAxOTAyZDQ+XQ0Kc2VsaW51eF9zZXRfbW50X29wdHMrMHg2NC8weDRiOA0K WyAgICA2LjAxNzM0M10gICMzOiAgKCZpc2VjLT5sb2NrKXsrLisuKy59LCBhdDogWzxjMDE4ZTI5 OD5dDQppbm9kZV9kb2luaXRfd2l0aF9kZW50cnkrMHg4Yy8weDU1Yw0KWyAgICA2LjAyNTkzN10N ClsgICAgNi4wMjU5MzddIHN0YWNrIGJhY2t0cmFjZToNClsgICAgNi4wMzAzNzVdIFs8YzAwMGQw ZjA+XSAodW53aW5kX2JhY2t0cmFjZSsweDAvMHhmMCkgZnJvbQ0KWzxjMDM1MWEyYz5dIChwcmlu dF9jaXJjdWxhcl9idWcrMHgyNWMvMHgyYTgpDQpbICAgIDYuMDM5ODQzXSBbPGMwMzUxYTJjPl0g KHByaW50X2NpcmN1bGFyX2J1ZysweDI1Yy8weDJhOCkgZnJvbQ0KWzxjMDA0ZGU0OD5dIChfX2xv Y2tfYWNxdWlyZSsweDE0ZWMvMHgxYjA4KQ0KWyAgICA2LjA0OTUzMV0gWzxjMDA0ZGU0OD5dIChf X2xvY2tfYWNxdWlyZSsweDE0ZWMvMHgxYjA4KSBmcm9tDQpbPGMwMDRlOGU4Pl0gKGxvY2tfYWNx dWlyZSsweDY0LzB4NzgpDQpbICAgIDYuMDU4NTMxXSBbPGMwMDRlOGU4Pl0gKGxvY2tfYWNxdWly ZSsweDY0LzB4NzgpIGZyb20gWzxjMDM1NWQ1Yz5dDQoobXV0ZXhfbG9ja19uZXN0ZWQrMHg1Yy8w eDJlYykNClsgICAgNi4wNjc1MzFdIFs8YzAzNTVkNWM+XSAobXV0ZXhfbG9ja19uZXN0ZWQrMHg1 Yy8weDJlYykgZnJvbQ0KWzxjMDE1NTJkMD5dICh1Ymlmc190bmNfbG9jYXRlKzB4MzAvMHgxOTgp DQpbICAgIDYuMDc2OTY4XSBbPGMwMTU1MmQwPl0gKHViaWZzX3RuY19sb2NhdGUrMHgzMC8weDE5 OCkgZnJvbQ0KWzxjMDE1NWE0OD5dICh1Ymlmc190bmNfbG9va3VwX25tKzB4MjgvMHgxNTApDQpb ICAgIDYuMDg2NTkzXSBbPGMwMTU1YTQ4Pl0gKHViaWZzX3RuY19sb29rdXBfbm0rMHgyOC8weDE1 MCkgZnJvbQ0KWzxjMDE2ZmMxOD5dICh1Ymlmc19nZXR4YXR0cisweGMwLzB4MjU0KQ0KWyAgICA2 LjA5NjAzMV0gWzxjMDE2ZmMxOD5dICh1Ymlmc19nZXR4YXR0cisweGMwLzB4MjU0KSBmcm9tDQpb PGMwMThlNDY4Pl0gKGlub2RlX2RvaW5pdF93aXRoX2RlbnRyeSsweDI1Yy8weDU1YykNClsgICAg Ni4xMDU5NjhdIFs8YzAxOGU0Njg+XSAoaW5vZGVfZG9pbml0X3dpdGhfZGVudHJ5KzB4MjVjLzB4 NTVjKSBmcm9tDQpbPGMwMThmMWE4Pl0gKHNiX2ZpbmlzaF9zZXRfb3B0cysweGE0LzB4MjFjKQ0K WyAgICA2LjExNjI4MV0gWzxjMDE4ZjFhOD5dIChzYl9maW5pc2hfc2V0X29wdHMrMHhhNC8weDIx YykgZnJvbQ0KWzxjMDE5MDU1Yz5dIChzZWxpbnV4X3NldF9tbnRfb3B0cysweDJlYy8weDRiOCkN ClsgICAgNi4xMjYyMThdIFs8YzAxOTA1NWM+XSAoc2VsaW51eF9zZXRfbW50X29wdHMrMHgyZWMv MHg0YjgpIGZyb20NCls8YzAxOTA3ZGM+XSAoc3VwZXJibG9ja19kb2luaXQrMHhiNC8weGMwKQ0K WyAgICA2LjEzNjAwMF0gWzxjMDE5MDdkYz5dIChzdXBlcmJsb2NrX2RvaW5pdCsweGI0LzB4YzAp IGZyb20NCls8YzAwYjUxZjQ+XSAoaXRlcmF0ZV9zdXBlcnMrMHhiNC8weGRjKQ0KWyAgICA2LjE0 NTA5M10gWzxjMDBiNTFmND5dIChpdGVyYXRlX3N1cGVycysweGI0LzB4ZGMpIGZyb20gWzxjMDFh MDJlOD5dDQooc2VjdXJpdHlfbG9hZF9wb2xpY3krMHgyNDgvMHgzYzQpDQpbICAgIDYuMTU0NjI1 XSBbPGMwMWEwMmU4Pl0gKHNlY3VyaXR5X2xvYWRfcG9saWN5KzB4MjQ4LzB4M2M0KSBmcm9tDQpb PGMwMTk0OTk0Pl0gKHNlbF93cml0ZV9sb2FkKzB4OWMvMHg2YTApDQpbICAgIDYuMTY0MjE4XSBb PGMwMTk0OTk0Pl0gKHNlbF93cml0ZV9sb2FkKzB4OWMvMHg2YTApIGZyb20NCls8YzAwYjIxNDg+ XSAodmZzX3dyaXRlKzB4YTAvMHgxN2MpDQpbICAgIDYuMTcyNzgxXSBbPGMwMGIyMTQ4Pl0gKHZm c193cml0ZSsweGEwLzB4MTdjKSBmcm9tIFs8YzAwYjI0NTA+XQ0KKHN5c193cml0ZSsweDNjLzB4 NzApDQpbICAgIDYuMTgwODQzXSBbPGMwMGIyNDUwPl0gKHN5c193cml0ZSsweDNjLzB4NzApIGZy b20gWzxjMDAwOTNhMD5dDQoocmV0X2Zhc3Rfc3lzY2FsbCsweDAvMHgzOCkNCg0KUmVwb3J0ZWQt Ynk6IE1hcmMgS2xlaW5lLUJ1ZGRlIDxta2xAcGVuZ3V0cm9uaXguZGU+DQpTaWduZWQtb2ZmLWJ5 OiBBcnRlbSBCaXR5dXRza2l5IDxhcnRlbS5iaXR5dXRza2l5QGxpbnV4LmludGVsLmNvbT4NClNp Z25lZC1vZmYtYnk6IE1hcmMgS2xlaW5lLUJ1ZGRlIDxta2xAcGVuZ3V0cm9uaXguZGU+DQotLS0N CiBpbmNsdWRlL2xpbnV4L2ZzLmggICAgICAgfCAxICsNCiBzZWN1cml0eS9zZWxpbnV4L2hvb2tz LmMgfCAyICsrDQogMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKykNCg0KZGlmZiAtLWdp dCBhL2luY2x1ZGUvbGludXgvZnMuaCBiL2luY2x1ZGUvbGludXgvZnMuaCBpbmRleCA2MDgyOTU2 Li45ZTgzY2E4IDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9saW51eC9mcy5oDQorKysgYi9pbmNsdWRl L2xpbnV4L2ZzLmgNCkBAIC0xODMyLDYgKzE4MzIsNyBAQCBzdHJ1Y3QgZmlsZV9zeXN0ZW1fdHlw ZSB7DQogCXN0cnVjdCBsb2NrX2NsYXNzX2tleSBpX2xvY2tfa2V5Ow0KIAlzdHJ1Y3QgbG9ja19j bGFzc19rZXkgaV9tdXRleF9rZXk7DQogCXN0cnVjdCBsb2NrX2NsYXNzX2tleSBpX211dGV4X2Rp cl9rZXk7DQorCXN0cnVjdCBsb2NrX2NsYXNzX2tleSBpX3NlY3VyaXR5X2xvY2tfa2V5Ow0KIH07 DQoNCiAjZGVmaW5lIE1PRFVMRV9BTElBU19GUyhOQU1FKSBNT0RVTEVfQUxJQVMoImZzLSIgTkFN RSkgZGlmZiAtLWdpdCBhL3NlY3VyaXR5L3NlbGludXgvaG9va3MuYyBiL3NlY3VyaXR5L3NlbGlu dXgvaG9va3MuYyBpbmRleCA0YjM0ODQ3Li5iYzBjMWZjIDEwMDY0NA0KLS0tIGEvc2VjdXJpdHkv c2VsaW51eC9ob29rcy5jDQorKysgYi9zZWN1cml0eS9zZWxpbnV4L2hvb2tzLmMNCkBAIC0yMjMs NiArMjIzLDggQEAgc3RhdGljIGludCBpbm9kZV9hbGxvY19zZWN1cml0eShzdHJ1Y3QgaW5vZGUg Kmlub2RlKQ0KIAkJcmV0dXJuIC1FTk9NRU07DQoNCiAJbXV0ZXhfaW5pdCgmaXNlYy0+bG9jayk7 DQorCWxvY2tkZXBfc2V0X2NsYXNzKCZpc2VjLT5sb2NrLA0KKwkJCSAgJmlub2RlLT5pX3NiLT5z X3R5cGUtPmlfc2VjdXJpdHlfbG9ja19rZXkpOw0KIAlJTklUX0xJU1RfSEVBRCgmaXNlYy0+bGlz dCk7DQogCWlzZWMtPmlub2RlID0gaW5vZGU7DQogCWlzZWMtPnNpZCA9IFNFQ0lOSVRTSURfVU5M QUJFTEVEOw0KLS0NCjEuOC41LjMNCg0KDQoNCg0KLS0gDQpQZW5ndXRyb25peCBlLksuICAgICAg ICAgICAgICAgICAgfCBNYXJjIEtsZWluZS1CdWRkZSAgICAgICAgICAgfA0KSW5kdXN0cmlhbCBM aW51eCBTb2x1dGlvbnMgICAgICAgIHwgUGhvbmU6ICs0OS0yMzEtMjgyNi05MjQgICAgIHwNClZl cnRyZXR1bmcgV2VzdC9Eb3J0bXVuZCAgICAgICAgICB8IEZheDogICArNDktNTEyMS0yMDY5MTct NTU1NSB8DQpBbXRzZ2VyaWNodCBIaWxkZXNoZWltLCBIUkEgMjY4NiAgfCBodHRwOi8vd3d3LnBl bmd1dHJvbml4LmRlICAgfA0KDQoNCioqKioqKioqKioqKiogRW1haWwgQ29uZmlkZW50aWFsaXR5 IE5vdGljZSAqKioqKioqKioqKioqKioqKioqKg0KVGhlIGluZm9ybWF0aW9uIGNvbnRhaW5lZCBp biB0aGlzIGUtbWFpbCBtZXNzYWdlIChpbmNsdWRpbmcgYW55IA0KYXR0YWNobWVudHMpIG1heSBi ZSBjb25maWRlbnRpYWwsIHByb3ByaWV0YXJ5LCBwcml2aWxlZ2VkLCBvciBvdGhlcndpc2UNCmV4 ZW1wdCBmcm9tIGRpc2Nsb3N1cmUgdW5kZXIgYXBwbGljYWJsZSBsYXdzLiBJdCBpcyBpbnRlbmRl ZCB0byBiZSANCmNvbnZleWVkIG9ubHkgdG8gdGhlIGRlc2lnbmF0ZWQgcmVjaXBpZW50KHMpLiBB bnkgdXNlLCBkaXNzZW1pbmF0aW9uLCANCmRpc3RyaWJ1dGlvbiwgcHJpbnRpbmcsIHJldGFpbmlu ZyBvciBjb3B5aW5nIG9mIHRoaXMgZS1tYWlsIChpbmNsdWRpbmcgaXRzIA0KYXR0YWNobWVudHMp IGJ5IHVuaW50ZW5kZWQgcmVjaXBpZW50KHMpIGlzIHN0cmljdGx5IHByb2hpYml0ZWQgYW5kIG1h eSANCmJlIHVubGF3ZnVsLiBJZiB5b3UgYXJlIG5vdCBhbiBpbnRlbmRlZCByZWNpcGllbnQgb2Yg dGhpcyBlLW1haWwsIG9yIGJlbGlldmUgDQp0aGF0IHlvdSBoYXZlIHJlY2VpdmVkIHRoaXMgZS1t YWlsIGluIGVycm9yLCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgDQppbW1lZGlhdGVseSAoYnkg cmVwbHlpbmcgdG8gdGhpcyBlLW1haWwpLCBkZWxldGUgYW55IGFuZCBhbGwgY29waWVzIG9mIA0K dGhpcyBlLW1haWwgKGluY2x1ZGluZyBhbnkgYXR0YWNobWVudHMpIGZyb20geW91ciBzeXN0ZW0s IGFuZCBkbyBub3QNCmRpc2Nsb3NlIHRoZSBjb250ZW50IG9mIHRoaXMgZS1tYWlsIHRvIGFueSBv dGhlciBwZXJzb24uIFRoYW5rIHlvdSENCg==