From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id AC88CD111A8 for ; Thu, 27 Nov 2025 22:29:20 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 236EC10E8C9; Thu, 27 Nov 2025 22:29:20 +0000 (UTC) Received: from outboundhk.mxmail.xiaomi.com (outboundhk.mxmail.xiaomi.com [207.226.244.123]) by gabe.freedesktop.org (Postfix) with ESMTP id 2530810E7E0 for ; Thu, 27 Nov 2025 15:43:26 +0000 (UTC) X-CSE-ConnectionGUID: BmMOuA+UTWWpRPxCHyk/RQ== X-CSE-MsgGUID: bDA2XslpRFyv/6jHl0xjcA== X-IronPort-AV: E=Sophos;i="6.20,231,1758556800"; d="scan'208,217";a="159667044" From: =?utf-8?B?6auY57+U?= To: =?utf-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= , Xiang Gao , "sumit.semwal@linaro.org" , "rostedt@goodmis.org" , "mhiramat@kernel.org" CC: "linux-media@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , "mathieu.desnoyers@efficios.com" , "dhowells@redhat.com" , "kuba@kernel.org" , "brauner@kernel.org" , "akpm@linux-foundation.org" , "linux-trace-kernel@vger.kernel.org" Subject: =?utf-8?B?562U5aSNOiDnrZTlpI06IOetlOWkjTogW0V4dGVybmFsIE1haWxdUmU6IFtQ?= =?utf-8?B?QVRDSCB2M10gZG1hLWJ1ZjogYWRkIHNvbWUgdHJhY2Vwb2ludHMgdG8gZGVi?= =?utf-8?Q?ug.?= Thread-Topic: =?utf-8?B?562U5aSNOiDnrZTlpI06IFtFeHRlcm5hbCBNYWlsXVJlOiBbUEFUQ0ggdjNd?= =?utf-8?Q?_dma-buf:_add_some_tracepoints_to_debug.?= Thread-Index: AQHcX4MbemeZEW6EdE2tNIPvABpDi7UGVVo5//+0IwCAAI0zvP//jJ2AgACGolU= Date: Thu, 27 Nov 2025 15:43:25 +0000 Message-ID: <36e7f7eb41a04d688b231978ca4ac533@xiaomi.com> References: <20251127004352.376307-1-gxxa03070307@gmail.com> <0f970282-e439-4036-bded-68fb8733d1f0@amd.com> <76293b63568547e98efd7c0644ad7a49@xiaomi.com>, In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.237.8.164] Content-Type: multipart/alternative; boundary="_000_36e7f7eb41a04d688b231978ca4ac533xiaomicom_" MIME-Version: 1.0 X-Mailman-Approved-At: Thu, 27 Nov 2025 22:29:19 +0000 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" --_000_36e7f7eb41a04d688b231978ca4ac533xiaomicom_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 PiBZZWFoIGV4cG9ydGluZyB0aGUgdHJhY2Vwb2ludCBpcyBjbGVhcmx5IG5vdCB0aGUgY29ycmVj dCBhcHByb2FjaC4NCj4gU2VlIHRoaXMgaXMgbm90IHVzZWQgaW4gYSBkcml2ZXIgbW9kdWxlLCBi dXQgdGhlIGNvcmUga2VybmVsLiBFeHBvcnRpbmcgdGhlIHN5bWJvbCB3b3VsZCBtYWtlIG9ubHkg c2Vuc2UgaWYgZHJpdmVycyB3YW50IHRvIGFjY2VzcyBpdCwgYnV0IGF0IGxlYXN0IGZvciB1cHN0 cmVhbSB0aGF0IGlzIG5vdCB0aGUgY2FzZS4NCj4gU28gcGxlYXNlIGp1c3QgZHJvcCB0aGF0Lg0K DQpvay4NCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCuWPkeS7tuS6ujogQ2hy aXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPg0K5Y+R6YCB5pe26Ze0OiAy MDI15bm0MTHmnIgyN+aXpSAyMzo0MDo1NQ0K5pS25Lu25Lq6OiDpq5jnv5Q7IFhpYW5nIEdhbzsg c3VtaXQuc2Vtd2FsQGxpbmFyby5vcmc7IHJvc3RlZHRAZ29vZG1pcy5vcmc7IG1oaXJhbWF0QGtl cm5lbC5vcmcNCuaKhOmAgTogbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3JnOyBkcmktZGV2ZWxA bGlzdHMuZnJlZWRlc2t0b3Aub3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOyBtYXRo aWV1LmRlc25veWVyc0BlZmZpY2lvcy5jb207IGRob3dlbGxzQHJlZGhhdC5jb207IGt1YmFAa2Vy bmVsLm9yZzsgYnJhdW5lckBrZXJuZWwub3JnOyBha3BtQGxpbnV4LWZvdW5kYXRpb24ub3JnOyBs aW51eC10cmFjZS1rZXJuZWxAdmdlci5rZXJuZWwub3JnDQrkuLvpopg6IFJlOiDnrZTlpI06IOet lOWkjTogW0V4dGVybmFsIE1haWxdUmU6IFtQQVRDSCB2M10gZG1hLWJ1ZjogYWRkIHNvbWUgdHJh Y2Vwb2ludHMgdG8gZGVidWcuDQoNClvlpJbpg6jpgq7ku7ZdIOatpOmCruS7tuadpea6kOS6juWw j+exs+WFrOWPuOWklumDqO+8jOivt+iwqOaFjuWkhOeQhuOAguiLpeWvuemCruS7tuWuieWFqOaA p+WtmOeWke+8jOivt+WwhumCruS7tui9rOWPkee7mW1pc2VjQHhpYW9taS5jb23ov5vooYzlj43p pogNCg0KT24gMTEvMjcvMjUgMTY6MzUsIOmrmOe/lCB3cm90ZToNCj4+IEh1aT8gV2h5IHdvdWxk IHlvdSBhZGQgdGhvc2Ugc3ltYm9scyB0byBhbnkgd2hpdGVsaXN0Pw0KPg0KPiBUaGlzIGlzIHRo ZSBtZWNoYW5pc20gb2YgYW5kcm9pZCBna2kuIFRvIHVzZSBhIHRyYWNlcG9pbnQgaW4gdGhlIGRy aXZlciBtb2R1bGUsIHR3byBwb2ludHMgYXJlIHJlcXVpcmVkIGZvciBhIHN1Y2Nlc3NmdWwgY29t cGlsYXRpb246DQo+IDEsIGV4cG9ydCB0cmFjZXBpbnQNCj4gMiwgYWRkIHRyYWNlcG9pbnQgdG8g YW5kcm9pZCB3aGl0ZWxpc3QuDQo+DQo+IEJ1dCB3aXRob3V0IGV4cG9ydGluZyB0cmFjZXBvaW50 LCBJIGNhbiBhbHNvIHVzZSB0cmFjZXBvaW50X3Byb2JlX3JlZ2lzdGVyIHRvIHNvbHZlIGl0Lg0K DQpZZWFoIGV4cG9ydGluZyB0aGUgdHJhY2Vwb2ludCBpcyBjbGVhcmx5IG5vdCB0aGUgY29ycmVj dCBhcHByb2FjaC4NCg0KU2VlIHRoaXMgaXMgbm90IHVzZWQgaW4gYSBkcml2ZXIgbW9kdWxlLCBi dXQgdGhlIGNvcmUga2VybmVsLiBFeHBvcnRpbmcgdGhlIHN5bWJvbCB3b3VsZCBtYWtlIG9ubHkg c2Vuc2UgaWYgZHJpdmVycyB3YW50IHRvIGFjY2VzcyBpdCwgYnV0IGF0IGxlYXN0IGZvciB1cHN0 cmVhbSB0aGF0IGlzIG5vdCB0aGUgY2FzZS4NCg0KU28gcGxlYXNlIGp1c3QgZHJvcCB0aGF0Lg0K DQpSZWdhcmRzLA0KQ2hyaXN0aWFuLg0KDQo+DQo+DQo+PiBUaGUgcmVmY250IGlzIG1hbmlwdWxh dGVkIG91dHNpZGUgb2YgdGhlIERNQS1idWYgY29kZSBieSB0aGUgZmlsZXN5c3RlbSBsYXllci4N Cj4+IEFzIGZhciBhcyBJIGNhbiBzZWUgaXQgaXMgbWVhbmluZ2xlc3MgaGVyZS4NCj4gb2suDQo+ DQo+DQo+DQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAq5Y+R5Lu25Lq6OiogQ2hyaXN0aWFu IEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPg0KPiAq5Y+R6YCB5pe26Ze0OiogMjAy NeW5tDEx5pyIMjfml6UgMjI6MDg6MzINCj4gKuaUtuS7tuS6ujoqIOmrmOe/lDsgWGlhbmcgR2Fv OyBzdW1pdC5zZW13YWxAbGluYXJvLm9yZzsgcm9zdGVkdEBnb29kbWlzLm9yZzsgbWhpcmFtYXRA a2VybmVsLm9yZw0KPiAq5oqE6YCBOiogbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3JnOyBkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3Jn OyBtYXRoaWV1LmRlc25veWVyc0BlZmZpY2lvcy5jb207IGRob3dlbGxzQHJlZGhhdC5jb207IGt1 YmFAa2VybmVsLm9yZzsgYnJhdW5lckBrZXJuZWwub3JnOyBha3BtQGxpbnV4LWZvdW5kYXRpb24u b3JnOyBsaW51eC10cmFjZS1rZXJuZWxAdmdlci5rZXJuZWwub3JnDQo+ICrkuLvpopg6KiBSZTog 562U5aSNOiBbRXh0ZXJuYWwgTWFpbF1SZTogW1BBVENIIHYzXSBkbWEtYnVmOiBhZGQgc29tZSB0 cmFjZXBvaW50cyB0byBkZWJ1Zy4NCj4NCj4gW+WklumDqOmCruS7tl0g5q2k6YKu5Lu25p2l5rqQ 5LqO5bCP57Gz5YWs5Y+45aSW6YOo77yM6K+36LCo5oWO5aSE55CG44CC6Iul5a+56YKu5Lu25a6J 5YWo5oCn5a2Y55aR77yM6K+35bCG6YKu5Lu26L2s5Y+R57uZbWlzZWNAeGlhb21pLmNvbei/m+ih jOWPjemmiA0KPg0KPiBPbiAxMS8yNy8yNSAxNTowNSwg6auY57+UIHdyb3RlOg0KPj4+IEV4cG9y dGluZyB0aGUgdHJhY2Vwb2ludHMgaXMgdW5lY2Vzc2FyeSBhcyBmYXIgYXMgSSBjYW4gc2VlDQo+ Pg0KPj4gYW5kcm9pZCBtdXN0IGV4cG9ydCBzeW1ib2xzIGJlZm9yZSBhZGRpbmcgYSB3aGl0ZWxp c3QuDQo+DQo+IEh1aT8gV2h5IHdvdWxkIHlvdSBhZGQgdGhvc2Ugc3ltYm9scyB0byBhbnkgd2hp dGVsaXN0Pw0KPg0KPj4NCj4+DQo+Pj4gSSBjYW4ndCBjb21lIHVwIHdpdGggYSByZWFzb24gd2h5 IHdlIHNob3VsZCBoYXZlIHRoZSBmaWxlIHJlZmNvdW50IGluIHRoZSB0cmFjZSBsb2dzLg0KPj4+ IFNhbWUgZm9yIG1vc3Qgb3RoZXIgcGxhY2VzLg0KPj4gSSBjYW4gZGlyZWN0bHkgb2JzZXJ2ZSBo b3cgcmVmY250IGlzIGNoYW5naW5nLiAgVGhlbiBpdCBjYW4gYmUga25vd24gd2hlcmUgdGhlIGRt YWJ1ZiB3YXMgZmluYWxseSByZWxlYXNlZC4NCj4NCj4gVGhlIHJlZmNudCBpcyBtYW5pcHVsYXRl ZCBvdXRzaWRlIG9mIHRoZSBETUEtYnVmIGNvZGUgYnkgdGhlIGZpbGVzeXN0ZW0gbGF5ZXIuDQo+ DQo+IEFzIGZhciBhcyBJIGNhbiBzZWUgaXQgaXMgbWVhbmluZ2xlc3MgaGVyZS4NCj4NCj4gUmVn YXJkcywNCj4gQ2hyaXN0aWFuLg0KPg0KPj4NCj4+DQo+Pj4gUHJpbnQgdGhlIGRldl9uYW1lIGxh c3QsIGl0J3MgdGhlIGV4dGVybmFsIGRldmljZSB3aGljaCBhdHRhY2hlcyB0byB0aGUgRE1BLWJ1 Zi4NCj4+IG9rLg0KPj4NCj4+DQo+Pj4gQWRkaXRpb25hbCB0byB0aGF0IGl0IHdvdWxkIGJlIG5p Y2UgdG8ga25vdyBpZiB0aGUgYXR0YWNobWVudCBpcyBkeW5hbWljIG9yIG5vdC4NCj4+IG9rLg0K Pj4NCj4+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4gKuWPkeS7tuS6ujoqIENocmlzdGlhbiBL w7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4NCj4+ICrlj5HpgIHml7bpl7Q6KiAyMDI1 5bm0MTHmnIgyN+aXpSAxNzo0OTowOQ0KPj4gKuaUtuS7tuS6ujoqIFhpYW5nIEdhbzsgc3VtaXQu c2Vtd2FsQGxpbmFyby5vcmc7IHJvc3RlZHRAZ29vZG1pcy5vcmc7IG1oaXJhbWF0QGtlcm5lbC5v cmcNCj4+ICrmioTpgIE6KiBsaW51eC1tZWRpYUB2Z2VyLmtlcm5lbC5vcmc7IGRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmc7IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7IG1hdGhp ZXUuZGVzbm95ZXJzQGVmZmljaW9zLmNvbTsgZGhvd2VsbHNAcmVkaGF0LmNvbTsga3ViYUBrZXJu ZWwub3JnOyBicmF1bmVyQGtlcm5lbC5vcmc7IGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc7IGxp bnV4LXRyYWNlLWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7IOmrmOe/lA0KPj4gKuS4u+mimDoqIFtF eHRlcm5hbCBNYWlsXVJlOiBbUEFUQ0ggdjNdIGRtYS1idWY6IGFkZCBzb21lIHRyYWNlcG9pbnRz IHRvIGRlYnVnLg0KPj4NCj4+IFvlpJbpg6jpgq7ku7ZdIOatpOmCruS7tuadpea6kOS6juWwj+ex s+WFrOWPuOWklumDqO+8jOivt+iwqOaFjuWkhOeQhuOAguiLpeWvuemCruS7tuWuieWFqOaAp+Wt mOeWke+8jOivt+WwhumCruS7tui9rOWPkee7mW1pc2VjQHhpYW9taS5jb23ov5vooYzlj43ppogN Cj4+DQo+PiBPbiAxMS8yNy8yNSAwMTo0MywgWGlhbmcgR2FvIHdyb3RlOg0KPj4+IEZyb206IGdh b3hpYW5nMTcgPGdhb3hpYW5nMTdAeGlhb21pLmNvbT4NCj4+Pg0KPj4+IEkgd2FudCB0byB0cmFj ayB0aGUgc3RhdHVzIG9mIGRtYWJ1ZiBpbiByZWFsIHRpbWUgaW4gdGhlIHByb2R1Y3Rpb24gZW52 aXJvbm1lbnQuDQo+Pj4gQnV0IG5vdyB3ZSBjYW4gb25seSBjaGVjayBpdCBieSB0cmF2ZXJzaW5n IHRoZSBmZCBpbiB0aGUgcHJvY2VzcyBvciBkbWFidWZfbGlzdC4NCj4+Pg0KPj4+IEZvciBleGFt cGxlOg0KPj4+ICAgIGJpbmRlcjoyOTYyXzItMjk2MiAgICBbMDA1XSAuLi4xLiAgIDIwOC40NTM5 NDA6IGRtYV9idWZfZXhwb3J0OiBleHBfbmFtZT1xY29tLHN5c3RlbSBuYW1lPShudWxsKSBzaXpl PTI4NjcyIGlubz0yNTgwIGZfcmVmY250PTINCj4+PiAgICBiaW5kZXI6Mjk2Ml8yLTI5NjIgICAg WzAwNV0gLi4uMS4gICAyMDguNDUzOTQzOiBkbWFfYnVmX2ZkOiBleHBfbmFtZT1xY29tLHN5c3Rl bSBuYW1lPShudWxsKSBzaXplPTI4NjcyIGlubz0yNTgwIGZkPTkgZl9yZWZjbnQ9Mg0KPj4+ICAg IGJpbmRlcjoyOTYyXzItMjk2MiAgICBbMDA1XSAuLi4xLiAgIDIwOC40NTM5Nzc6IGRtYV9idWZf bW1hcF9pbnRlcm5hbDogZXhwX25hbWU9cWNvbSxzeXN0ZW0gbmFtZT1xY29tLHN5c3RlbSBzaXpl PTI4NjcyIGlubz0yNTgwIGZfcmVmY250PTQNCj4+PiAgICAgIGt3b3JrZXIvNToyLTE5NCAgICAg WzAwNV0gLi4uMS4gICAyMDguNDYwNTgwOiBkbWFfYnVmX3B1dDogZXhwX25hbWU9cWNvbSxzeXN0 ZW0gbmFtZT1hYiBwaWQgWzgxNzZdIHNpemU9Mjg2NzIgaW5vPTI1ODAgZl9yZWZjbnQ9Mw0KPj4+ ICAgICBSZW5kZXJUaHJlYWQtMTEzMDUgICBbMDA3XSAuLi4xLiAgIDIwOC41OTkwOTQ6IGRtYV9i dWZfZ2V0OiBleHBfbmFtZT1xY29tLHN5c3RlbSBuYW1lPWFiIHBpZCBbODE3Nl0gc2l6ZT0yMTcw ODggaW5vPTI1NzkgZmQ9MTExNCBmX3JlZmNudD03DQo+Pj4gICAgIFJlbmRlclRocmVhZC0xMTMw NSAgIFswMDddIC4uLjEuICAgMjA4LjU5OTA5ODogZG1hX2J1Zl9hdHRhY2g6IGRldl9uYW1lPWtn c2wtM2QwIGV4cF9uYW1lPXFjb20sc3lzdGVtIG5hbWU9YWIgcGlkIFs4MTc2XSBzaXplPTIxNzA4 OCBpbm89MjU3OSBmX3JlZmNudD03DQo+Pj4gICAgICAgICAgICA8Li4uPi0xNCAgICAgIFswMDFd IC4uLjEuICAgMjA4LjcyNjM1OTogZG1hX2J1Zl9kZXRhY2g6IGRldl9uYW1lPWtnc2wtM2QwIGV4 cF9uYW1lPXFjb20sc3lzdGVtIG5hbWU9YWIgcGlkIFszMzE3XSBzaXplPTIxNzA4OCBpbm89MjU4 MSBmX3JlZmNudD0zDQo+Pj4NCj4+PiBTaWduZWQtb2ZmLWJ5OiBYaWFuZyBHYW8gPGdhb3hpYW5n MTdAeGlhb21pLmNvbT4NCj4+PiAtLS0NCj4+PiAgZHJpdmVycy9kbWEtYnVmL2RtYS1idWYuYyAg ICAgIHwgIDU3ICsrKysrKysrKystDQo+Pj4gIGluY2x1ZGUvdHJhY2UvZXZlbnRzL2RtYV9idWYu aCB8IDE2NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4+PiAgMiBmaWxlcyBj aGFuZ2VkLCAyMjIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPj4+ICBjcmVhdGUgbW9k ZSAxMDA2NDQgaW5jbHVkZS90cmFjZS9ldmVudHMvZG1hX2J1Zi5oDQo+Pj4NCj4+PiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9kbWEtYnVmL2RtYS1idWYuYyBiL2RyaXZlcnMvZG1hLWJ1Zi9kbWEtYnVm LmMNCj4+PiBpbmRleCAyYmNmOWNlY2E5OTcuLjdjZWY4MTZkZGNhYyAxMDA2NDQNCj4+PiAtLS0g YS9kcml2ZXJzL2RtYS1idWYvZG1hLWJ1Zi5jDQo+Pj4gKysrIGIvZHJpdmVycy9kbWEtYnVmL2Rt YS1idWYuYw0KPj4+IEBAIC0zNSw2ICszNSwxOCBAQA0KPj4+DQo+Pj4gICNpbmNsdWRlICJkbWEt YnVmLXN5c2ZzLXN0YXRzLmgiDQo+Pj4NCj4+PiArI2RlZmluZSBDUkVBVEVfVFJBQ0VfUE9JTlRT DQo+Pj4gKyNpbmNsdWRlIDx0cmFjZS9ldmVudHMvZG1hX2J1Zi5oPg0KPj4+ICsNCj4+PiArRVhQ T1JUX1RSQUNFUE9JTlRfU1lNQk9MKGRtYV9idWZfZXhwb3J0KTsNCj4+PiArRVhQT1JUX1RSQUNF UE9JTlRfU1lNQk9MKGRtYV9idWZfbW1hcF9pbnRlcm5hbCk7DQo+Pj4gK0VYUE9SVF9UUkFDRVBP SU5UX1NZTUJPTChkbWFfYnVmX21tYXApOw0KPj4+ICtFWFBPUlRfVFJBQ0VQT0lOVF9TWU1CT0wo ZG1hX2J1Zl9wdXQpOw0KPj4+ICtFWFBPUlRfVFJBQ0VQT0lOVF9TWU1CT0woZG1hX2J1Zl9hdHRh Y2gpOw0KPj4+ICtFWFBPUlRfVFJBQ0VQT0lOVF9TWU1CT0woZG1hX2J1Zl9kZXRhY2gpOw0KPj4+ ICtFWFBPUlRfVFJBQ0VQT0lOVF9TWU1CT0woZG1hX2J1Zl9mZCk7DQo+Pj4gK0VYUE9SVF9UUkFD RVBPSU5UX1NZTUJPTChkbWFfYnVmX2dldCk7DQo+Pg0KPj4gRXhwb3J0aW5nIHRoZSB0cmFjZXBv aW50cyBpcyB1bmVjZXNzYXJ5IGFzIGZhciBhcyBJIGNhbiBzZWUNCj4+DQo+Pj4gKw0KPj4+ICBz dGF0aWMgaW5saW5lIGludCBpc19kbWFfYnVmX2ZpbGUoc3RydWN0IGZpbGUgKik7DQo+Pj4NCj4+ PiAgc3RhdGljIERFRklORV9NVVRFWChkbWFidWZfbGlzdF9tdXRleCk7DQo+Pj4gQEAgLTIyMCw2 ICsyMzIsMTEgQEAgc3RhdGljIGludCBkbWFfYnVmX21tYXBfaW50ZXJuYWwoc3RydWN0IGZpbGUg KmZpbGUsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKQ0KPj4+ICAgICAgICAgICBkbWFidWYt PnNpemUgPj4gUEFHRV9TSElGVCkNCj4+PiAgICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOw0K Pj4+DQo+Pj4gKyAgICAgaWYgKHRyYWNlX2RtYV9idWZfbW1hcF9pbnRlcm5hbF9lbmFibGVkKCkp IHsNCj4+PiArICAgICAgICAgICAgIGd1YXJkKHNwaW5sb2NrKSgmZG1hYnVmLT5uYW1lX2xvY2sp Ow0KPj4+ICsgICAgICAgICAgICAgdHJhY2VfZG1hX2J1Zl9tbWFwX2ludGVybmFsKGRtYWJ1Zik7 DQo+Pj4gKyAgICAgfQ0KPj4+ICsNCj4+PiAgICAgICByZXR1cm4gZG1hYnVmLT5vcHMtPm1tYXAo ZG1hYnVmLCB2bWEpOw0KPj4+ICB9DQo+Pj4NCj4+PiBAQCAtNzQ1LDYgKzc2MiwxMSBAQCBzdHJ1 Y3QgZG1hX2J1ZiAqZG1hX2J1Zl9leHBvcnQoY29uc3Qgc3RydWN0IGRtYV9idWZfZXhwb3J0X2lu Zm8gKmV4cF9pbmZvKQ0KPj4+DQo+Pj4gICAgICAgX19kbWFfYnVmX2xpc3RfYWRkKGRtYWJ1Zik7 DQo+Pj4NCj4+PiArICAgICBpZiAodHJhY2VfZG1hX2J1Zl9leHBvcnRfZW5hYmxlZCgpKSB7DQo+ Pj4gKyAgICAgICAgICAgICBndWFyZChzcGlubG9jaykoJmRtYWJ1Zi0+bmFtZV9sb2NrKTsNCj4+ PiArICAgICAgICAgICAgIHRyYWNlX2RtYV9idWZfZXhwb3J0KGRtYWJ1Zik7DQo+Pj4gKyAgICAg fQ0KPj4+ICsNCj4+PiAgICAgICByZXR1cm4gZG1hYnVmOw0KPj4+DQo+Pj4gIGVycl9kbWFidWY6 DQo+Pj4gQEAgLTc3OSw2ICs4MDEsMTEgQEAgaW50IGRtYV9idWZfZmQoc3RydWN0IGRtYV9idWYg KmRtYWJ1ZiwgaW50IGZsYWdzKQ0KPj4+DQo+Pj4gICAgICAgZmRfaW5zdGFsbChmZCwgZG1hYnVm LT5maWxlKTsNCj4+Pg0KPj4+ICsgICAgIGlmICh0cmFjZV9kbWFfYnVmX2ZkX2VuYWJsZWQoKSkg ew0KPj4+ICsgICAgICAgICAgICAgZ3VhcmQoc3BpbmxvY2spKCZkbWFidWYtPm5hbWVfbG9jayk7 DQo+Pj4gKyAgICAgICAgICAgICB0cmFjZV9kbWFfYnVmX2ZkKGRtYWJ1ZiwgZmQpOw0KPj4+ICsg ICAgIH0NCj4+PiArDQo+Pj4gICAgICAgcmV0dXJuIGZkOw0KPj4+ICB9DQo+Pj4gIEVYUE9SVF9T WU1CT0xfTlNfR1BMKGRtYV9idWZfZmQsICJETUFfQlVGIik7DQo+Pj4gQEAgLTc5NCw2ICs4MjEs NyBAQCBFWFBPUlRfU1lNQk9MX05TX0dQTChkbWFfYnVmX2ZkLCAiRE1BX0JVRiIpOw0KPj4+ICBz dHJ1Y3QgZG1hX2J1ZiAqZG1hX2J1Zl9nZXQoaW50IGZkKQ0KPj4+ICB7DQo+Pj4gICAgICAgc3Ry dWN0IGZpbGUgKmZpbGU7DQo+Pj4gKyAgICAgc3RydWN0IGRtYV9idWYgKmRtYWJ1ZjsNCj4+Pg0K Pj4+ICAgICAgIGZpbGUgPSBmZ2V0KGZkKTsNCj4+Pg0KPj4+IEBAIC04MDUsNyArODMzLDE0IEBA IHN0cnVjdCBkbWFfYnVmICpkbWFfYnVmX2dldChpbnQgZmQpDQo+Pj4gICAgICAgICAgICAgICBy ZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsNCj4+PiAgICAgICB9DQo+Pj4NCj4+PiAtICAgICByZXR1 cm4gZmlsZS0+cHJpdmF0ZV9kYXRhOw0KPj4+ICsgICAgIGRtYWJ1ZiA9IGZpbGUtPnByaXZhdGVf ZGF0YTsNCj4+PiArDQo+Pj4gKyAgICAgaWYgKHRyYWNlX2RtYV9idWZfZ2V0X2VuYWJsZWQoKSkg ew0KPj4+ICsgICAgICAgICAgICAgZ3VhcmQoc3BpbmxvY2spKCZkbWFidWYtPm5hbWVfbG9jayk7 DQo+Pj4gKyAgICAgICAgICAgICB0cmFjZV9kbWFfYnVmX2dldChkbWFidWYsIGZkKTsNCj4+PiAr ICAgICB9DQo+Pj4gKw0KPj4+ICsgICAgIHJldHVybiBkbWFidWY7DQo+Pj4gIH0NCj4+PiAgRVhQ T1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9nZXQsICJETUFfQlVGIik7DQo+Pj4NCj4+PiBAQCAt ODI1LDYgKzg2MCwxMSBAQCB2b2lkIGRtYV9idWZfcHV0KHN0cnVjdCBkbWFfYnVmICpkbWFidWYp DQo+Pj4gICAgICAgICAgICAgICByZXR1cm47DQo+Pj4NCj4+PiAgICAgICBmcHV0KGRtYWJ1Zi0+ ZmlsZSk7DQo+Pj4gKw0KPj4+ICsgICAgIGlmICh0cmFjZV9kbWFfYnVmX3B1dF9lbmFibGVkKCkp IHsNCj4+PiArICAgICAgICAgICAgIGd1YXJkKHNwaW5sb2NrKSgmZG1hYnVmLT5uYW1lX2xvY2sp Ow0KPj4+ICsgICAgICAgICAgICAgdHJhY2VfZG1hX2J1Zl9wdXQoZG1hYnVmKTsNCj4+PiArICAg ICB9DQo+Pj4gIH0NCj4+PiAgRVhQT1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9wdXQsICJETUFf QlVGIik7DQo+Pj4NCj4+PiBAQCAtOTk4LDYgKzEwMzgsMTEgQEAgRVhQT1JUX1NZTUJPTF9OU19H UEwoZG1hX2J1Zl9keW5hbWljX2F0dGFjaCwgIkRNQV9CVUYiKTsNCj4+PiAgc3RydWN0IGRtYV9i dWZfYXR0YWNobWVudCAqZG1hX2J1Zl9hdHRhY2goc3RydWN0IGRtYV9idWYgKmRtYWJ1ZiwNCj4+ PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRldmljZSAq ZGV2KQ0KPj4+ICB7DQo+Pj4gKyAgICAgaWYgKHRyYWNlX2RtYV9idWZfYXR0YWNoX2VuYWJsZWQo KSkgew0KPj4+ICsgICAgICAgICAgICAgZ3VhcmQoc3BpbmxvY2spKCZkbWFidWYtPm5hbWVfbG9j ayk7DQo+Pj4gKyAgICAgICAgICAgICB0cmFjZV9kbWFfYnVmX2F0dGFjaChkbWFidWYsIGRldik7 DQo+Pj4gKyAgICAgfQ0KPj4+ICsNCj4+PiAgICAgICByZXR1cm4gZG1hX2J1Zl9keW5hbWljX2F0 dGFjaChkbWFidWYsIGRldiwgTlVMTCwgTlVMTCk7DQo+Pj4gIH0NCj4+PiAgRVhQT1JUX1NZTUJP TF9OU19HUEwoZG1hX2J1Zl9hdHRhY2gsICJETUFfQlVGIik7DQo+Pj4gQEAgLTEwMjMsNiArMTA2 OCwxMSBAQCB2b2lkIGRtYV9idWZfZGV0YWNoKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsIHN0cnVj dCBkbWFfYnVmX2F0dGFjaG1lbnQgKmF0dGFjaCkNCj4+PiAgICAgICBpZiAoZG1hYnVmLT5vcHMt PmRldGFjaCkNCj4+PiAgICAgICAgICAgICAgIGRtYWJ1Zi0+b3BzLT5kZXRhY2goZG1hYnVmLCBh dHRhY2gpOw0KPj4+DQo+Pj4gKyAgICAgaWYgKHRyYWNlX2RtYV9idWZfZGV0YWNoX2VuYWJsZWQo KSkgew0KPj4+ICsgICAgICAgICAgICAgZ3VhcmQoc3BpbmxvY2spKCZkbWFidWYtPm5hbWVfbG9j ayk7DQo+Pj4gKyAgICAgICAgICAgICB0cmFjZV9kbWFfYnVmX2RldGFjaChkbWFidWYsIGF0dGFj aC0+ZGV2KTsNCj4+PiArICAgICB9DQo+Pj4gKw0KPj4+ICAgICAgIGtmcmVlKGF0dGFjaCk7DQo+ Pj4gIH0NCj4+PiAgRVhQT1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9kZXRhY2gsICJETUFfQlVG Iik7DQo+Pj4gQEAgLTE0ODgsNiArMTUzOCwxMSBAQCBpbnQgZG1hX2J1Zl9tbWFwKHN0cnVjdCBk bWFfYnVmICpkbWFidWYsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLA0KPj4+ICAgICAgIHZt YV9zZXRfZmlsZSh2bWEsIGRtYWJ1Zi0+ZmlsZSk7DQo+Pj4gICAgICAgdm1hLT52bV9wZ29mZiA9 IHBnb2ZmOw0KPj4+DQo+Pj4gKyAgICAgaWYgKHRyYWNlX2RtYV9idWZfbW1hcF9lbmFibGVkKCkp IHsNCj4+PiArICAgICAgICAgICAgIGd1YXJkKHNwaW5sb2NrKSgmZG1hYnVmLT5uYW1lX2xvY2sp Ow0KPj4+ICsgICAgICAgICAgICAgdHJhY2VfZG1hX2J1Zl9tbWFwKGRtYWJ1Zik7DQo+Pj4gKyAg ICAgfQ0KPj4+ICsNCj4+PiAgICAgICByZXR1cm4gZG1hYnVmLT5vcHMtPm1tYXAoZG1hYnVmLCB2 bWEpOw0KPj4+ICB9DQo+Pj4gIEVYUE9SVF9TWU1CT0xfTlNfR1BMKGRtYV9idWZfbW1hcCwgIkRN QV9CVUYiKTsNCj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS90cmFjZS9ldmVudHMvZG1hX2J1Zi5o IGIvaW5jbHVkZS90cmFjZS9ldmVudHMvZG1hX2J1Zi5oDQo+Pj4gbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCj4+PiBpbmRleCAwMDAwMDAwMDAwMDAuLmZlOWRhODliYWNkMA0KPj4+IC0tLSAvZGV2L251 bGwNCj4+PiArKysgYi9pbmNsdWRlL3RyYWNlL2V2ZW50cy9kbWFfYnVmLmgNCj4+PiBAQCAtMCww ICsxLDE2NiBAQA0KPj4+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAqLw0K Pj4+ICsjdW5kZWYgVFJBQ0VfU1lTVEVNDQo+Pj4gKyNkZWZpbmUgVFJBQ0VfU1lTVEVNIGRtYV9i dWYNCj4+PiArDQo+Pj4gKyNpZiAhZGVmaW5lZChfVFJBQ0VfRE1BX0JVRl9IKSB8fCBkZWZpbmVk KFRSQUNFX0hFQURFUl9NVUxUSV9SRUFEKQ0KPj4+ICsjZGVmaW5lIF9UUkFDRV9ETUFfQlVGX0gN Cj4+PiArDQo+Pj4gKyNpbmNsdWRlIDxsaW51eC9kbWEtYnVmLmg+DQo+Pj4gKyNpbmNsdWRlIDxs aW51eC90cmFjZXBvaW50Lmg+DQo+Pj4gKw0KPj4+ICtERUNMQVJFX0VWRU5UX0NMQVNTKGRtYV9i dWYsDQo+Pj4gKw0KPj4+ICsgICAgIFRQX1BST1RPKHN0cnVjdCBkbWFfYnVmICpkbWFidWYpLA0K Pj4+ICsNCj4+PiArICAgICBUUF9BUkdTKGRtYWJ1ZiksDQo+Pj4gKw0KPj4+ICsgICAgIFRQX1NU UlVDVF9fZW50cnkoDQo+Pj4gKyAgICAgICAgICAgICBfX3N0cmluZyhleHBfbmFtZSwgZG1hYnVm LT5leHBfbmFtZSkNCj4+PiArICAgICAgICAgICAgIF9fc3RyaW5nKG5hbWUsIGRtYWJ1Zi0+bmFt ZSkNCj4+PiArICAgICAgICAgICAgIF9fZmllbGQoc2l6ZV90LCBzaXplKQ0KPj4+ICsgICAgICAg ICAgICAgX19maWVsZChpbm9fdCwgaW5vKQ0KPj4+ICsgICAgICAgICAgICAgX19maWVsZChsb25n LCBmX3JlZmNudCkNCj4+PiArICAgICApLA0KPj4+ICsNCj4+PiArICAgICBUUF9mYXN0X2Fzc2ln bigNCj4+PiArICAgICAgICAgICAgIF9fYXNzaWduX3N0cihleHBfbmFtZSk7DQo+Pj4gKyAgICAg ICAgICAgICBfX2Fzc2lnbl9zdHIobmFtZSk7DQo+Pj4gKyAgICAgICAgICAgICBfX2VudHJ5LT5z aXplID0gZG1hYnVmLT5zaXplOw0KPj4+ICsgICAgICAgICAgICAgX19lbnRyeS0+aW5vID0gZG1h YnVmLT5maWxlLT5mX2lub2RlLT5pX2lubzsNCj4+PiArICAgICAgICAgICAgIF9fZW50cnktPmZf cmVmY250ID0gZmlsZV9jb3VudChkbWFidWYtPmZpbGUpOw0KPj4+ICsgICAgICksDQo+Pj4gKw0K Pj4+ICsgICAgIFRQX3ByaW50aygiZXhwX25hbWU9JXMgbmFtZT0lcyBzaXplPSV6dSBpbm89JWx1 IGZfcmVmY250PSVsZCIsDQo+Pj4gKyAgICAgICAgICAgICAgIF9fZ2V0X3N0cihleHBfbmFtZSks DQo+Pj4gKyAgICAgICAgICAgICAgIF9fZ2V0X3N0cihuYW1lKSwNCj4+PiArICAgICAgICAgICAg ICAgX19lbnRyeS0+c2l6ZSwNCj4+PiArICAgICAgICAgICAgICAgX19lbnRyeS0+aW5vLA0KPj4+ ICsgICAgICAgICAgICAgICBfX2VudHJ5LT5mX3JlZmNudCkNCj4+DQo+PiBJIGNhbid0IGNvbWUg dXAgd2l0aCBhIHJlYXNvbiB3aHkgd2Ugc2hvdWxkIGhhdmUgdGhlIGZpbGUgcmVmY291bnQgaW4g dGhlIHRyYWNlIGxvZ3MuDQo+Pg0KPj4gU2FtZSBmb3IgbW9zdCBvdGhlciBwbGFjZXMuDQo+Pg0K Pj4+ICspOw0KPj4+ICsNCj4+PiArREVDTEFSRV9FVkVOVF9DTEFTUyhkbWFfYnVmX2F0dGFjaF9k ZXYsDQo+Pj4gKw0KPj4+ICsgICAgIFRQX1BST1RPKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsIHN0 cnVjdCBkZXZpY2UgKmRldiksDQo+Pj4gKw0KPj4+ICsgICAgIFRQX0FSR1MoZG1hYnVmLCBkZXYp LA0KPj4+ICsNCj4+PiArICAgICBUUF9TVFJVQ1RfX2VudHJ5KA0KPj4+ICsgICAgICAgICAgICAg X19zdHJpbmcoZG5hbWUsIGRldl9uYW1lKGRldikpDQo+Pj4gKyAgICAgICAgICAgICBfX3N0cmlu ZyhleHBfbmFtZSwgZG1hYnVmLT5leHBfbmFtZSkNCj4+PiArICAgICAgICAgICAgIF9fc3RyaW5n KG5hbWUsIGRtYWJ1Zi0+bmFtZSkNCj4+PiArICAgICAgICAgICAgIF9fZmllbGQoc2l6ZV90LCBz aXplKQ0KPj4+ICsgICAgICAgICAgICAgX19maWVsZChpbm9fdCwgaW5vKQ0KPj4+ICsgICAgICAg ICAgICAgX19maWVsZChsb25nLCBmX3JlZmNudCkNCj4+PiArICAgICApLA0KPj4+ICsNCj4+PiAr ICAgICBUUF9mYXN0X2Fzc2lnbigNCj4+PiArICAgICAgICAgICAgIF9fYXNzaWduX3N0cihkbmFt ZSk7DQo+Pj4gKyAgICAgICAgICAgICBfX2Fzc2lnbl9zdHIoZXhwX25hbWUpOw0KPj4+ICsgICAg ICAgICAgICAgX19hc3NpZ25fc3RyKG5hbWUpOw0KPj4+ICsgICAgICAgICAgICAgX19lbnRyeS0+ c2l6ZSA9IGRtYWJ1Zi0+c2l6ZTsNCj4+PiArICAgICAgICAgICAgIF9fZW50cnktPmlubyA9IGRt YWJ1Zi0+ZmlsZS0+Zl9pbm9kZS0+aV9pbm87DQo+Pj4gKyAgICAgICAgICAgICBfX2VudHJ5LT5m X3JlZmNudCA9IGZpbGVfY291bnQoZG1hYnVmLT5maWxlKTsNCj4+PiArICAgICApLA0KPj4+ICsN Cj4+PiArICAgICBUUF9wcmludGsoImRldl9uYW1lPSVzIGV4cF9uYW1lPSVzIG5hbWU9JXMgc2l6 ZT0lenUgaW5vPSVsdSBmX3JlZmNudD0lbGQiLA0KPj4+ICsgICAgICAgICAgICAgICBfX2dldF9z dHIoZG5hbWUpLA0KPj4+ICsgICAgICAgICAgICAgICBfX2dldF9zdHIoZXhwX25hbWUpLA0KPj4+ ICsgICAgICAgICAgICAgICBfX2dldF9zdHIobmFtZSksDQo+Pj4gKyAgICAgICAgICAgICAgIF9f ZW50cnktPnNpemUsDQo+Pj4gKyAgICAgICAgICAgICAgIF9fZW50cnktPmlubywNCj4+PiArICAg ICAgICAgICAgICAgX19lbnRyeS0+Zl9yZWZjbnQpDQo+Pg0KPj4gUHJpbnQgdGhlIGRldl9uYW1l IGxhc3QsIGl0J3MgdGhlIGV4dGVybmFsIGRldmljZSB3aGljaCBhdHRhY2hlcyB0byB0aGUgRE1B LWJ1Zi4NCj4+DQo+PiBBZGRpdGlvbmFsIHRvIHRoYXQgaXQgd291bGQgYmUgbmljZSB0byBrbm93 IGlmIHRoZSBhdHRhY2htZW50IGlzIGR5bmFtaWMgb3Igbm90Lg0KPj4NCj4+IFJlZ2FyZHMsDQo+ PiBDaHJpc3RpYW4uDQo+Pg0KPj4+ICspOw0KPj4+ICsNCj4+PiArREVDTEFSRV9FVkVOVF9DTEFT UyhkbWFfYnVmX2ZkLA0KPj4+ICsNCj4+PiArICAgICBUUF9QUk9UTyhzdHJ1Y3QgZG1hX2J1ZiAq ZG1hYnVmLCBpbnQgZmQpLA0KPj4+ICsNCj4+PiArICAgICBUUF9BUkdTKGRtYWJ1ZiwgZmQpLA0K Pj4+ICsNCj4+PiArICAgICBUUF9TVFJVQ1RfX2VudHJ5KA0KPj4+ICsgICAgICAgICAgICAgX19z dHJpbmcoZXhwX25hbWUsIGRtYWJ1Zi0+ZXhwX25hbWUpDQo+Pj4gKyAgICAgICAgICAgICBfX3N0 cmluZyhuYW1lLCBkbWFidWYtPm5hbWUpDQo+Pj4gKyAgICAgICAgICAgICBfX2ZpZWxkKHNpemVf dCwgc2l6ZSkNCj4+PiArICAgICAgICAgICAgIF9fZmllbGQoaW5vX3QsIGlubykNCj4+PiArICAg ICAgICAgICAgIF9fZmllbGQoaW50LCBmZCkNCj4+PiArICAgICAgICAgICAgIF9fZmllbGQobG9u ZywgZl9yZWZjbnQpDQo+Pj4gKyAgICAgKSwNCj4+PiArDQo+Pj4gKyAgICAgVFBfZmFzdF9hc3Np Z24oDQo+Pj4gKyAgICAgICAgICAgICBfX2Fzc2lnbl9zdHIoZXhwX25hbWUpOw0KPj4+ICsgICAg ICAgICAgICAgX19hc3NpZ25fc3RyKG5hbWUpOw0KPj4+ICsgICAgICAgICAgICAgX19lbnRyeS0+ c2l6ZSA9IGRtYWJ1Zi0+c2l6ZTsNCj4+PiArICAgICAgICAgICAgIF9fZW50cnktPmlubyA9IGRt YWJ1Zi0+ZmlsZS0+Zl9pbm9kZS0+aV9pbm87DQo+Pj4gKyAgICAgICAgICAgICBfX2VudHJ5LT5m ZCA9IGZkOw0KPj4+ICsgICAgICAgICAgICAgX19lbnRyeS0+Zl9yZWZjbnQgPSBmaWxlX2NvdW50 KGRtYWJ1Zi0+ZmlsZSk7DQo+Pj4gKyAgICAgKSwNCj4+PiArDQo+Pj4gKyAgICAgVFBfcHJpbnRr KCJleHBfbmFtZT0lcyBuYW1lPSVzIHNpemU9JXp1IGlubz0lbHUgZmQ9JWQgZl9yZWZjbnQ9JWxk IiwNCj4+PiArICAgICAgICAgICAgICAgX19nZXRfc3RyKGV4cF9uYW1lKSwNCj4+PiArICAgICAg ICAgICAgICAgX19nZXRfc3RyKG5hbWUpLA0KPj4+ICsgICAgICAgICAgICAgICBfX2VudHJ5LT5z aXplLA0KPj4+ICsgICAgICAgICAgICAgICBfX2VudHJ5LT5pbm8sDQo+Pj4gKyAgICAgICAgICAg ICAgIF9fZW50cnktPmZkLA0KPj4+ICsgICAgICAgICAgICAgICBfX2VudHJ5LT5mX3JlZmNudCkN Cj4+PiArKTsNCj4+PiArDQo+Pj4gK0RFRklORV9FVkVOVChkbWFfYnVmLCBkbWFfYnVmX2V4cG9y dCwNCj4+PiArDQo+Pj4gKyAgICAgVFBfUFJPVE8oc3RydWN0IGRtYV9idWYgKmRtYWJ1ZiksDQo+ Pj4gKw0KPj4+ICsgICAgIFRQX0FSR1MoZG1hYnVmKQ0KPj4+ICspOw0KPj4+ICsNCj4+PiArREVG SU5FX0VWRU5UKGRtYV9idWYsIGRtYV9idWZfbW1hcF9pbnRlcm5hbCwNCj4+PiArDQo+Pj4gKyAg ICAgVFBfUFJPVE8oc3RydWN0IGRtYV9idWYgKmRtYWJ1ZiksDQo+Pj4gKw0KPj4+ICsgICAgIFRQ X0FSR1MoZG1hYnVmKQ0KPj4+ICspOw0KPj4+ICsNCj4+PiArREVGSU5FX0VWRU5UKGRtYV9idWYs IGRtYV9idWZfbW1hcCwNCj4+PiArDQo+Pj4gKyAgICAgVFBfUFJPVE8oc3RydWN0IGRtYV9idWYg KmRtYWJ1ZiksDQo+Pj4gKw0KPj4+ICsgICAgIFRQX0FSR1MoZG1hYnVmKQ0KPj4+ICspOw0KPj4+ ICsNCj4+PiArREVGSU5FX0VWRU5UKGRtYV9idWYsIGRtYV9idWZfcHV0LA0KPj4+ICsNCj4+PiAr ICAgICBUUF9QUk9UTyhzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmKSwNCj4+PiArDQo+Pj4gKyAgICAg VFBfQVJHUyhkbWFidWYpDQo+Pj4gKyk7DQo+Pj4gKw0KPj4+ICtERUZJTkVfRVZFTlQoZG1hX2J1 Zl9hdHRhY2hfZGV2LCBkbWFfYnVmX2F0dGFjaCwNCj4+PiArDQo+Pj4gKyAgICAgVFBfUFJPVE8o c3RydWN0IGRtYV9idWYgKmRtYWJ1Ziwgc3RydWN0IGRldmljZSAqZGV2KSwNCj4+PiArDQo+Pj4g KyAgICAgVFBfQVJHUyhkbWFidWYsIGRldikNCj4+PiArKTsNCj4+PiArDQo+Pj4gK0RFRklORV9F VkVOVChkbWFfYnVmX2F0dGFjaF9kZXYsIGRtYV9idWZfZGV0YWNoLA0KPj4+ICsNCj4+PiArICAg ICBUUF9QUk9UTyhzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmLCBzdHJ1Y3QgZGV2aWNlICpkZXYpLA0K Pj4+ICsNCj4+PiArICAgICBUUF9BUkdTKGRtYWJ1ZiwgZGV2KQ0KPj4+ICspOw0KPj4+ICsNCj4+ PiArREVGSU5FX0VWRU5UKGRtYV9idWZfZmQsIGRtYV9idWZfZmQsDQo+Pj4gKw0KPj4+ICsgICAg IFRQX1BST1RPKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsIGludCBmZCksDQo+Pj4gKw0KPj4+ICsg ICAgIFRQX0FSR1MoZG1hYnVmLCBmZCkNCj4+PiArKTsNCj4+PiArDQo+Pj4gK0RFRklORV9FVkVO VChkbWFfYnVmX2ZkLCBkbWFfYnVmX2dldCwNCj4+PiArDQo+Pj4gKyAgICAgVFBfUFJPVE8oc3Ry dWN0IGRtYV9idWYgKmRtYWJ1ZiwgaW50IGZkKSwNCj4+PiArDQo+Pj4gKyAgICAgVFBfQVJHUyhk bWFidWYsIGZkKQ0KPj4+ICspOw0KPj4+ICsNCj4+PiArI2VuZGlmIC8qIF9UUkFDRV9ETUFfQlVG X0ggKi8NCj4+PiArDQo+Pj4gKy8qIFRoaXMgcGFydCBtdXN0IGJlIG91dHNpZGUgcHJvdGVjdGlv biAqLw0KPj4+ICsjaW5jbHVkZSA8dHJhY2UvZGVmaW5lX3RyYWNlLmg+DQo+Pg0KPg0KDQo= --_000_36e7f7eb41a04d688b231978ca4ac533xiaomicom_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29udGVu dD0iTWljcm9zb2Z0IEV4Y2hhbmdlIFNlcnZlciI+DQo8IS0tIGNvbnZlcnRlZCBmcm9tIHRleHQg LS0+PHN0eWxlPjwhLS0gLkVtYWlsUXVvdGUgeyBtYXJnaW4tbGVmdDogMXB0OyBwYWRkaW5nLWxl ZnQ6IDRwdDsgYm9yZGVyLWxlZnQ6ICM4MDAwMDAgMnB4IHNvbGlkOyB9IC0tPjwvc3R5bGU+DQo8 L2hlYWQ+DQo8Ym9keT4NCjxtZXRhIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+ DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiIHN0eWxlPSIiPg0KPCEtLQ0KcA0KCXttYXJnaW4tdG9w OjA7DQoJbWFyZ2luLWJvdHRvbTowfQ0KLS0+DQo8L3N0eWxlPg0KPGRpdiBkaXI9Imx0ciI+DQo8 ZGl2IGlkPSJ4X2RpdnRhZ2RlZmF1bHR3cmFwcGVyIiBkaXI9Imx0ciIgc3R5bGU9ImZvbnQtc2l6 ZToxMnB0OyBjb2xvcjojMDAwMDAwOyBmb250LWZhbWlseTpDYWxpYnJpLEhlbHZldGljYSxzYW5z LXNlcmlmIj4NCjxwPjxzcGFuIHN0eWxlPSJjb2xvcjpyZ2IoMzMsMzMsMzMpOyBmb250LWZhbWls eTomcXVvdDtNaWNyb3NvZnQgWWFIZWkgVUkmcXVvdDssJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1 b3Q7LOW+rui9r+mbhem7kSxTaW1TdW4s5a6L5L2TLHNhbnMtc2VyaWYsc2VyaWYsRW1vamlGb250 OyBmb250LXNpemU6MTMuMzMzM3B4Ij4mZ3Q7Jm5ic3A7WWVhaCBleHBvcnRpbmcgdGhlIHRyYWNl cG9pbnQgaXMgY2xlYXJseSBub3QgdGhlIGNvcnJlY3QgYXBwcm9hY2guPC9zcGFuPjxiciBzdHls ZT0iY29sb3I6cmdiKDMzLDMzLDMzKTsgZm9udC1mYW1pbHk6JnF1b3Q7TWljcm9zb2Z0IFlhSGVp IFVJJnF1b3Q7LCZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90Oyzlvq7ova/pm4Xpu5EsU2ltU3Vu LOWui+S9kyxzYW5zLXNlcmlmLHNlcmlmLEVtb2ppRm9udDsgZm9udC1zaXplOjEzLjMzMzNweCI+ DQo8c3BhbiBzdHlsZT0iY29sb3I6cmdiKDMzLDMzLDMzKTsgZm9udC1mYW1pbHk6JnF1b3Q7TWlj cm9zb2Z0IFlhSGVpIFVJJnF1b3Q7LCZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90Oyzlvq7ova/p m4Xpu5EsU2ltU3VuLOWui+S9kyxzYW5zLXNlcmlmLHNlcmlmLEVtb2ppRm9udDsgZm9udC1zaXpl OjEzLjMzMzNweCI+Jmd0OyZuYnNwO1NlZSB0aGlzIGlzIG5vdCB1c2VkIGluIGEgZHJpdmVyIG1v ZHVsZSwgYnV0IHRoZSBjb3JlIGtlcm5lbC4gRXhwb3J0aW5nIHRoZSBzeW1ib2wgd291bGQgbWFr ZSBvbmx5IHNlbnNlIGlmDQogZHJpdmVycyB3YW50IHRvIGFjY2VzcyBpdCwgYnV0IGF0IGxlYXN0 IGZvciB1cHN0cmVhbSB0aGF0IGlzIG5vdCB0aGUgY2FzZS48L3NwYW4+PGJyIHN0eWxlPSJjb2xv cjpyZ2IoMzMsMzMsMzMpOyBmb250LWZhbWlseTomcXVvdDtNaWNyb3NvZnQgWWFIZWkgVUkmcXVv dDssJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7LOW+rui9r+mbhem7kSxTaW1TdW4s5a6L5L2T LHNhbnMtc2VyaWYsc2VyaWYsRW1vamlGb250OyBmb250LXNpemU6MTMuMzMzM3B4Ij4NCjxzcGFu IHN0eWxlPSJjb2xvcjpyZ2IoMzMsMzMsMzMpOyBmb250LWZhbWlseTomcXVvdDtNaWNyb3NvZnQg WWFIZWkgVUkmcXVvdDssJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7LOW+rui9r+mbhem7kSxT aW1TdW4s5a6L5L2TLHNhbnMtc2VyaWYsc2VyaWYsRW1vamlGb250OyBmb250LXNpemU6MTMuMzMz M3B4Ij4mZ3Q7Jm5ic3A7U28gcGxlYXNlIGp1c3QgZHJvcCB0aGF0Ljwvc3Bhbj48YnI+DQo8L3A+ DQo8cD48c3BhbiBzdHlsZT0iY29sb3I6cmdiKDMzLDMzLDMzKTsgZm9udC1mYW1pbHk6JnF1b3Q7 TWljcm9zb2Z0IFlhSGVpIFVJJnF1b3Q7LCZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90Oyzlvq7o va/pm4Xpu5EsU2ltU3VuLOWui+S9kyxzYW5zLXNlcmlmLHNlcmlmLEVtb2ppRm9udDsgZm9udC1z aXplOjEzLjMzMzNweCI+b2suPC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGhyIHRhYmluZGV4PSItMSIg c3R5bGU9ImRpc3BsYXk6aW5saW5lLWJsb2NrOyB3aWR0aDo5OCUiPg0KPGRpdiBpZD0ieF9kaXZS cGx5RndkTXNnIiBkaXI9Imx0ciI+PGZvbnQgZmFjZT0iQ2FsaWJyaSwgc2Fucy1zZXJpZiIgY29s b3I9IiMwMDAwMDAiIHN0eWxlPSJmb250LXNpemU6MTFwdCI+PGI+5Y+R5Lu25Lq6OjwvYj4gQ2hy aXN0aWFuIEvDtm5pZyAmbHQ7Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tJmd0Ozxicj4NCjxiPuWP kemAgeaXtumXtDo8L2I+IDIwMjXlubQxMeaciDI35pelIDIzOjQwOjU1PGJyPg0KPGI+5pS25Lu2 5Lq6OjwvYj4g6auY57+UOyBYaWFuZyBHYW87IHN1bWl0LnNlbXdhbEBsaW5hcm8ub3JnOyByb3N0 ZWR0QGdvb2RtaXMub3JnOyBtaGlyYW1hdEBrZXJuZWwub3JnPGJyPg0KPGI+5oqE6YCBOjwvYj4g bGludXgtbWVkaWFAdmdlci5rZXJuZWwub3JnOyBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOyBtYXRoaWV1LmRlc25veWVyc0BlZmZp Y2lvcy5jb207IGRob3dlbGxzQHJlZGhhdC5jb207IGt1YmFAa2VybmVsLm9yZzsgYnJhdW5lckBr ZXJuZWwub3JnOyBha3BtQGxpbnV4LWZvdW5kYXRpb24ub3JnOyBsaW51eC10cmFjZS1rZXJuZWxA dmdlci5rZXJuZWwub3JnPGJyPg0KPGI+5Li76aKYOjwvYj4gUmU6IOetlOWkjTog562U5aSNOiBb RXh0ZXJuYWwgTWFpbF1SZTogW1BBVENIIHYzXSBkbWEtYnVmOiBhZGQgc29tZSB0cmFjZXBvaW50 cyB0byBkZWJ1Zy48L2ZvbnQ+DQo8ZGl2PiZuYnNwOzwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjxm b250IHNpemU9IjIiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTBwdDsiPg0KPGRpdiBjbGFzcz0i UGxhaW5UZXh0Ij5b5aSW6YOo6YKu5Lu2XSDmraTpgq7ku7bmnaXmupDkuo7lsI/nsbPlhazlj7jl pJbpg6jvvIzor7fosKjmhY7lpITnkIbjgILoi6Xlr7npgq7ku7blronlhajmgKflrZjnlpHvvIzo r7flsIbpgq7ku7bovazlj5Hnu5ltaXNlY0B4aWFvbWkuY29t6L+b6KGM5Y+N6aaIPGJyPg0KPGJy Pg0KT24gMTEvMjcvMjUgMTY6MzUsIOmrmOe/lCB3cm90ZTo8YnI+DQomZ3Q7Jmd0OyZuYnNwO0h1 aT8gV2h5IHdvdWxkIHlvdSBhZGQgdGhvc2Ugc3ltYm9scyB0byBhbnkgd2hpdGVsaXN0Pzxicj4N CiZndDs8YnI+DQomZ3Q7IFRoaXMgaXMgdGhlIG1lY2hhbmlzbSBvZiBhbmRyb2lkIGdraS4gVG8g dXNlIGEgdHJhY2Vwb2ludCBpbiB0aGUgZHJpdmVyIG1vZHVsZSwgdHdvIHBvaW50cyBhcmUgcmVx dWlyZWQgZm9yIGEgc3VjY2Vzc2Z1bCBjb21waWxhdGlvbjo8YnI+DQomZ3Q7IDEsIGV4cG9ydCB0 cmFjZXBpbnQ8YnI+DQomZ3Q7IDIsIGFkZCB0cmFjZXBvaW50IHRvIGFuZHJvaWQgd2hpdGVsaXN0 Ljxicj4NCiZndDs8YnI+DQomZ3Q7IEJ1dCB3aXRob3V0IGV4cG9ydGluZyB0cmFjZXBvaW50LCBJ IGNhbiBhbHNvIHVzZSB0cmFjZXBvaW50X3Byb2JlX3JlZ2lzdGVyIHRvIHNvbHZlIGl0Ljxicj4N Cjxicj4NClllYWggZXhwb3J0aW5nIHRoZSB0cmFjZXBvaW50IGlzIGNsZWFybHkgbm90IHRoZSBj b3JyZWN0IGFwcHJvYWNoLjxicj4NCjxicj4NClNlZSB0aGlzIGlzIG5vdCB1c2VkIGluIGEgZHJp dmVyIG1vZHVsZSwgYnV0IHRoZSBjb3JlIGtlcm5lbC4gRXhwb3J0aW5nIHRoZSBzeW1ib2wgd291 bGQgbWFrZSBvbmx5IHNlbnNlIGlmIGRyaXZlcnMgd2FudCB0byBhY2Nlc3MgaXQsIGJ1dCBhdCBs ZWFzdCBmb3IgdXBzdHJlYW0gdGhhdCBpcyBub3QgdGhlIGNhc2UuPGJyPg0KPGJyPg0KU28gcGxl YXNlIGp1c3QgZHJvcCB0aGF0Ljxicj4NCjxicj4NClJlZ2FyZHMsPGJyPg0KQ2hyaXN0aWFuLjxi cj4NCjxicj4NCiZndDs8YnI+DQomZ3Q7PGJyPg0KJmd0OyZndDsmbmJzcDtUaGUgcmVmY250IGlz IG1hbmlwdWxhdGVkIG91dHNpZGUgb2YgdGhlIERNQS1idWYgY29kZSBieSB0aGUgZmlsZXN5c3Rl bSBsYXllci48YnI+DQomZ3Q7Jmd0OyZuYnNwO0FzIGZhciBhcyBJIGNhbiBzZWUgaXQgaXMgbWVh bmluZ2xlc3MgaGVyZS48YnI+DQomZ3Q7IG9rLjxicj4NCiZndDs8YnI+DQomZ3Q7PGJyPg0KJmd0 Ozxicj4NCiZndDsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPGJyPg0KJmd0OyAq5Y+R5Lu25Lq6Oiog Q2hyaXN0aWFuIEvDtm5pZyAmbHQ7Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tJmd0Ozxicj4NCiZn dDsgKuWPkemAgeaXtumXtDoqIDIwMjXlubQxMeaciDI35pelIDIyOjA4OjMyPGJyPg0KJmd0OyAq 5pS25Lu25Lq6Oiog6auY57+UOyBYaWFuZyBHYW87IHN1bWl0LnNlbXdhbEBsaW5hcm8ub3JnOyBy b3N0ZWR0QGdvb2RtaXMub3JnOyBtaGlyYW1hdEBrZXJuZWwub3JnPGJyPg0KJmd0OyAq5oqE6YCB OiogbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3JnOyBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOyBtYXRoaWV1LmRlc25veWVyc0Bl ZmZpY2lvcy5jb207IGRob3dlbGxzQHJlZGhhdC5jb207IGt1YmFAa2VybmVsLm9yZzsgYnJhdW5l ckBrZXJuZWwub3JnOyBha3BtQGxpbnV4LWZvdW5kYXRpb24ub3JnOyBsaW51eC10cmFjZS1rZXJu ZWxAdmdlci5rZXJuZWwub3JnPGJyPg0KJmd0OyAq5Li76aKYOiogUmU6IOetlOWkjTogW0V4dGVy bmFsIE1haWxdUmU6IFtQQVRDSCB2M10gZG1hLWJ1ZjogYWRkIHNvbWUgdHJhY2Vwb2ludHMgdG8g ZGVidWcuPGJyPg0KJmd0Ozxicj4NCiZndDsgW+WklumDqOmCruS7tl0g5q2k6YKu5Lu25p2l5rqQ 5LqO5bCP57Gz5YWs5Y+45aSW6YOo77yM6K+36LCo5oWO5aSE55CG44CC6Iul5a+56YKu5Lu25a6J 5YWo5oCn5a2Y55aR77yM6K+35bCG6YKu5Lu26L2s5Y+R57uZbWlzZWNAeGlhb21pLmNvbei/m+ih jOWPjemmiDxicj4NCiZndDs8YnI+DQomZ3Q7IE9uIDExLzI3LzI1IDE1OjA1LCDpq5jnv5Qgd3Jv dGU6PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7RXhwb3J0aW5nIHRoZSB0cmFjZXBvaW50cyBpcyB1 bmVjZXNzYXJ5IGFzIGZhciBhcyBJIGNhbiBzZWU8YnI+DQomZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7 IGFuZHJvaWQgbXVzdCBleHBvcnQgc3ltYm9scyBiZWZvcmUgYWRkaW5nIGEgd2hpdGVsaXN0Ljxi cj4NCiZndDs8YnI+DQomZ3Q7IEh1aT8gV2h5IHdvdWxkIHlvdSBhZGQgdGhvc2Ugc3ltYm9scyB0 byBhbnkgd2hpdGVsaXN0Pzxicj4NCiZndDs8YnI+DQomZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7PGJy Pg0KJmd0OyZndDsmZ3Q7Jm5ic3A7SSBjYW4ndCBjb21lIHVwIHdpdGggYSByZWFzb24gd2h5IHdl IHNob3VsZCBoYXZlIHRoZSBmaWxlIHJlZmNvdW50IGluIHRoZSB0cmFjZSBsb2dzLjxicj4NCiZn dDsmZ3Q7Jmd0OyZuYnNwO1NhbWUgZm9yIG1vc3Qgb3RoZXIgcGxhY2VzLjxicj4NCiZndDsmZ3Q7 IEkgY2FuIGRpcmVjdGx5IG9ic2VydmUgaG93IHJlZmNudCBpcyBjaGFuZ2luZy4mbmJzcDsgVGhl biBpdCBjYW4gYmUga25vd24gd2hlcmUgdGhlIGRtYWJ1ZiB3YXMgZmluYWxseSByZWxlYXNlZC48 YnI+DQomZ3Q7PGJyPg0KJmd0OyBUaGUgcmVmY250IGlzIG1hbmlwdWxhdGVkIG91dHNpZGUgb2Yg dGhlIERNQS1idWYgY29kZSBieSB0aGUgZmlsZXN5c3RlbSBsYXllci48YnI+DQomZ3Q7PGJyPg0K Jmd0OyBBcyBmYXIgYXMgSSBjYW4gc2VlIGl0IGlzIG1lYW5pbmdsZXNzIGhlcmUuPGJyPg0KJmd0 Ozxicj4NCiZndDsgUmVnYXJkcyw8YnI+DQomZ3Q7IENocmlzdGlhbi48YnI+DQomZ3Q7PGJyPg0K Jmd0OyZndDs8YnI+DQomZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwO1ByaW50IHRoZSBk ZXZfbmFtZSBsYXN0LCBpdCdzIHRoZSBleHRlcm5hbCBkZXZpY2Ugd2hpY2ggYXR0YWNoZXMgdG8g dGhlIERNQS1idWYuPGJyPg0KJmd0OyZndDsgb2suPGJyPg0KJmd0OyZndDs8YnI+DQomZ3Q7Jmd0 Ozxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwO0FkZGl0aW9uYWwgdG8gdGhhdCBpdCB3b3VsZCBiZSBu aWNlIHRvIGtub3cgaWYgdGhlIGF0dGFjaG1lbnQgaXMgZHluYW1pYyBvciBub3QuPGJyPg0KJmd0 OyZndDsgb2suPGJyPg0KJmd0OyZndDs8YnI+DQomZ3Q7Jmd0OyAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS08YnI+DQomZ3Q7Jmd0OyAq5Y+R5Lu25Lq6OiogQ2hyaXN0aWFuIEvDtm5pZyAmbHQ7Y2hyaXN0 aWFuLmtvZW5pZ0BhbWQuY29tJmd0Ozxicj4NCiZndDsmZ3Q7ICrlj5HpgIHml7bpl7Q6KiAyMDI1 5bm0MTHmnIgyN+aXpSAxNzo0OTowOTxicj4NCiZndDsmZ3Q7ICrmlLbku7bkuro6KiBYaWFuZyBH YW87IHN1bWl0LnNlbXdhbEBsaW5hcm8ub3JnOyByb3N0ZWR0QGdvb2RtaXMub3JnOyBtaGlyYW1h dEBrZXJuZWwub3JnPGJyPg0KJmd0OyZndDsgKuaKhOmAgToqIGxpbnV4LW1lZGlhQHZnZXIua2Vy bmVsLm9yZzsgZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZzsgbGludXgta2VybmVsQHZn ZXIua2VybmVsLm9yZzsgbWF0aGlldS5kZXNub3llcnNAZWZmaWNpb3MuY29tOyBkaG93ZWxsc0By ZWRoYXQuY29tOyBrdWJhQGtlcm5lbC5vcmc7IGJyYXVuZXJAa2VybmVsLm9yZzsgYWtwbUBsaW51 eC1mb3VuZGF0aW9uLm9yZzsgbGludXgtdHJhY2Uta2VybmVsQHZnZXIua2VybmVsLm9yZzsg6auY 57+UPGJyPg0KJmd0OyZndDsgKuS4u+mimDoqIFtFeHRlcm5hbCBNYWlsXVJlOiBbUEFUQ0ggdjNd IGRtYS1idWY6IGFkZCBzb21lIHRyYWNlcG9pbnRzIHRvIGRlYnVnLjxicj4NCiZndDsmZ3Q7PGJy Pg0KJmd0OyZndDsgW+WklumDqOmCruS7tl0g5q2k6YKu5Lu25p2l5rqQ5LqO5bCP57Gz5YWs5Y+4 5aSW6YOo77yM6K+36LCo5oWO5aSE55CG44CC6Iul5a+56YKu5Lu25a6J5YWo5oCn5a2Y55aR77yM 6K+35bCG6YKu5Lu26L2s5Y+R57uZbWlzZWNAeGlhb21pLmNvbei/m+ihjOWPjemmiDxicj4NCiZn dDsmZ3Q7PGJyPg0KJmd0OyZndDsgT24gMTEvMjcvMjUgMDE6NDMsIFhpYW5nIEdhbyB3cm90ZTo8 YnI+DQomZ3Q7Jmd0OyZndDsgRnJvbTogZ2FveGlhbmcxNyAmbHQ7Z2FveGlhbmcxN0B4aWFvbWku Y29tJmd0Ozxicj4NCiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyBJIHdhbnQgdG8gdHJh Y2sgdGhlIHN0YXR1cyBvZiBkbWFidWYgaW4gcmVhbCB0aW1lIGluIHRoZSBwcm9kdWN0aW9uIGVu dmlyb25tZW50Ljxicj4NCiZndDsmZ3Q7Jmd0OyBCdXQgbm93IHdlIGNhbiBvbmx5IGNoZWNrIGl0 IGJ5IHRyYXZlcnNpbmcgdGhlIGZkIGluIHRoZSBwcm9jZXNzIG9yIGRtYWJ1Zl9saXN0Ljxicj4N CiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyBGb3IgZXhhbXBsZTo8YnI+DQomZ3Q7Jmd0 OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsgYmluZGVyOjI5NjJfMi0yOTYyJm5ic3A7Jm5ic3A7Jm5i c3A7IFswMDVdIC4uLjEuJm5ic3A7Jm5ic3A7IDIwOC40NTM5NDA6IGRtYV9idWZfZXhwb3J0OiBl eHBfbmFtZT1xY29tLHN5c3RlbSBuYW1lPShudWxsKSBzaXplPTI4NjcyIGlubz0yNTgwIGZfcmVm Y250PTI8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsgYmluZGVyOjI5NjJfMi0y OTYyJm5ic3A7Jm5ic3A7Jm5ic3A7IFswMDVdIC4uLjEuJm5ic3A7Jm5ic3A7IDIwOC40NTM5NDM6 IGRtYV9idWZfZmQ6IGV4cF9uYW1lPXFjb20sc3lzdGVtIG5hbWU9KG51bGwpIHNpemU9Mjg2NzIg aW5vPTI1ODAgZmQ9OSBmX3JlZmNudD0yPGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5i c3A7IGJpbmRlcjoyOTYyXzItMjk2MiZuYnNwOyZuYnNwOyZuYnNwOyBbMDA1XSAuLi4xLiZuYnNw OyZuYnNwOyAyMDguNDUzOTc3OiBkbWFfYnVmX21tYXBfaW50ZXJuYWw6IGV4cF9uYW1lPXFjb20s c3lzdGVtIG5hbWU9cWNvbSxzeXN0ZW0gc2l6ZT0yODY3MiBpbm89MjU4MCBmX3JlZmNudD00PGJy Pg0KJmd0OyZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGt3b3JrZXIvNToy LTE5NCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBbMDA1XSAuLi4xLiZuYnNwOyZuYnNwOyAyMDgu NDYwNTgwOiBkbWFfYnVmX3B1dDogZXhwX25hbWU9cWNvbSxzeXN0ZW0gbmFtZT1hYiBwaWQgWzgx NzZdIHNpemU9Mjg2NzIgaW5vPTI1ODAgZl9yZWZjbnQ9Mzxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBSZW5kZXJUaHJlYWQtMTEzMDUmbmJzcDsmbmJzcDsgWzAwN10g Li4uMS4mbmJzcDsmbmJzcDsgMjA4LjU5OTA5NDogZG1hX2J1Zl9nZXQ6IGV4cF9uYW1lPXFjb20s c3lzdGVtIG5hbWU9YWIgcGlkIFs4MTc2XSBzaXplPTIxNzA4OCBpbm89MjU3OSBmZD0xMTE0IGZf cmVmY250PTc8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgUmVuZGVy VGhyZWFkLTExMzA1Jm5ic3A7Jm5ic3A7IFswMDddIC4uLjEuJm5ic3A7Jm5ic3A7IDIwOC41OTkw OTg6IGRtYV9idWZfYXR0YWNoOiBkZXZfbmFtZT1rZ3NsLTNkMCBleHBfbmFtZT1xY29tLHN5c3Rl bSBuYW1lPWFiIHBpZCBbODE3Nl0gc2l6ZT0yMTcwODggaW5vPTI1NzkgZl9yZWZjbnQ9Nzxicj4N CiZndDsmZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbHQ7Li4uJmd0Oy0xNCZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyBbMDAxXSAuLi4xLiZuYnNwOyZuYnNwOyAyMDguNzI2MzU5OiBkbWFfYnVmX2Rl dGFjaDogZGV2X25hbWU9a2dzbC0zZDAgZXhwX25hbWU9cWNvbSxzeXN0ZW0gbmFtZT1hYiBwaWQg WzMzMTddIHNpemU9MjE3MDg4IGlubz0yNTgxIGZfcmVmY250PTM8YnI+DQomZ3Q7Jmd0OyZndDs8 YnI+DQomZ3Q7Jmd0OyZndDsgU2lnbmVkLW9mZi1ieTogWGlhbmcgR2FvICZsdDtnYW94aWFuZzE3 QHhpYW9taS5jb20mZ3Q7PGJyPg0KJmd0OyZndDsmZ3Q7IC0tLTxicj4NCiZndDsmZ3Q7Jmd0OyZu YnNwOyBkcml2ZXJzL2RtYS1idWYvZG1hLWJ1Zi5jJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IHwmbmJzcDsgNTcgJiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYj NDM7JiM0MzstPGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7IGluY2x1ZGUvdHJhY2UvZXZlbnRzL2Rt YV9idWYuaCB8IDE2NiAmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0 MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7 JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYj NDM7JiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsgMiBmaWxlcyBjaGFuZ2VkLCAyMjIgaW5z ZXJ0aW9ucygmIzQzOyksIDEgZGVsZXRpb24oLSk8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsgY3Jl YXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdHJhY2UvZXZlbnRzL2RtYV9idWYuaDxicj4NCiZndDsm Z3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyBkaWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEtYnVmL2Rt YS1idWYuYyBiL2RyaXZlcnMvZG1hLWJ1Zi9kbWEtYnVmLmM8YnI+DQomZ3Q7Jmd0OyZndDsgaW5k ZXggMmJjZjljZWNhOTk3Li43Y2VmODE2ZGRjYWMgMTAwNjQ0PGJyPg0KJmd0OyZndDsmZ3Q7IC0t LSBhL2RyaXZlcnMvZG1hLWJ1Zi9kbWEtYnVmLmM8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmIzQz OyYjNDM7IGIvZHJpdmVycy9kbWEtYnVmL2RtYS1idWYuYzxicj4NCiZndDsmZ3Q7Jmd0OyBAQCAt MzUsNiAmIzQzOzM1LDE4IEBAPGJyPg0KJmd0OyZndDsmZ3Q7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5i c3A7ICNpbmNsdWRlICZxdW90O2RtYS1idWYtc3lzZnMtc3RhdHMuaCZxdW90Ozxicj4NCiZndDsm Z3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyNkZWZpbmUgQ1JFQVRFX1RSQUNFX1BPSU5U Uzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyNpbmNsdWRlICZsdDt0cmFjZS9ldmVudHMvZG1hX2J1 Zi5oJmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzO0VY UE9SVF9UUkFDRVBPSU5UX1NZTUJPTChkbWFfYnVmX2V4cG9ydCk7PGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7RVhQT1JUX1RSQUNFUE9JTlRfU1lNQk9MKGRtYV9idWZfbW1hcF9pbnRlcm5hbCk7PGJy Pg0KJmd0OyZndDsmZ3Q7ICYjNDM7RVhQT1JUX1RSQUNFUE9JTlRfU1lNQk9MKGRtYV9idWZfbW1h cCk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7RVhQT1JUX1RSQUNFUE9JTlRfU1lNQk9MKGRtYV9i dWZfcHV0KTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MztFWFBPUlRfVFJBQ0VQT0lOVF9TWU1CT0wo ZG1hX2J1Zl9hdHRhY2gpOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzO0VYUE9SVF9UUkFDRVBPSU5U X1NZTUJPTChkbWFfYnVmX2RldGFjaCk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7RVhQT1JUX1RS QUNFUE9JTlRfU1lNQk9MKGRtYV9idWZfZmQpOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzO0VYUE9S VF9UUkFDRVBPSU5UX1NZTUJPTChkbWFfYnVmX2dldCk7PGJyPg0KJmd0OyZndDs8YnI+DQomZ3Q7 Jmd0OyBFeHBvcnRpbmcgdGhlIHRyYWNlcG9pbnRzIGlzIHVuZWNlc3NhcnkgYXMgZmFyIGFzIEkg Y2FuIHNlZTxicj4NCiZndDsmZ3Q7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZn dDsmZ3Q7Jm5ic3A7IHN0YXRpYyBpbmxpbmUgaW50IGlzX2RtYV9idWZfZmlsZShzdHJ1Y3QgZmls ZSAqKTs8YnI+DQomZ3Q7Jmd0OyZndDs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsgc3RhdGljIERF RklORV9NVVRFWChkbWFidWZfbGlzdF9tdXRleCk7PGJyPg0KJmd0OyZndDsmZ3Q7IEBAIC0yMjAs NiAmIzQzOzIzMiwxMSBAQCBzdGF0aWMgaW50IGRtYV9idWZfbW1hcF9pbnRlcm5hbChzdHJ1Y3Qg ZmlsZSAqZmlsZSwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEpPGJyPg0KJmd0OyZndDsmZ3Q7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IGRtYWJ1Zi0mZ3Q7c2l6ZSAmZ3Q7Jmd0OyBQQUdFX1NISUZUKTxicj4NCiZndDsmZ3Q7Jmd0 OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gLUVJTlZBTDs8YnI+DQomZ3Q7Jmd0 OyZndDs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYg KHRyYWNlX2RtYV9idWZfbW1hcF9pbnRlcm5hbF9lbmFibGVkKCkpIHs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZ3VhcmQoc3BpbmxvY2spKCZhbXA7ZG1hYnVmLSZndDtu YW1lX2xvY2spOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0cmFjZV9k bWFfYnVmX21tYXBfaW50ZXJuYWwoZG1hYnVmKTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsm Z3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gZG1hYnVm LSZndDtvcHMtJmd0O21tYXAoZG1hYnVmLCB2bWEpOzxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyB9 PGJyPg0KJmd0OyZndDsmZ3Q7PGJyPg0KJmd0OyZndDsmZ3Q7IEBAIC03NDUsNiAmIzQzOzc2Miwx MSBAQCBzdHJ1Y3QgZG1hX2J1ZiAqZG1hX2J1Zl9leHBvcnQoY29uc3Qgc3RydWN0IGRtYV9idWZf ZXhwb3J0X2luZm8gKmV4cF9pbmZvKTxicj4NCiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0 OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2RtYV9idWZfbGlzdF9hZGQo ZG1hYnVmKTs8YnI+DQomZ3Q7Jmd0OyZndDs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsgaWYgKHRyYWNlX2RtYV9idWZfZXhwb3J0X2VuYWJsZWQoKSkgezxi cj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBndWFyZChzcGlubG9jaykoJmFt cDtkbWFidWYtJmd0O25hbWVfbG9jayk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IHRyYWNlX2RtYV9idWZfZXhwb3J0KGRtYWJ1Zik7PGJyPg0KJmd0OyZndDsmZ3Q7ICYj NDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+ DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJu IGRtYWJ1Zjs8YnI+DQomZ3Q7Jmd0OyZndDs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsgZXJyX2Rt YWJ1Zjo8YnI+DQomZ3Q7Jmd0OyZndDsgQEAgLTc3OSw2ICYjNDM7ODAxLDExIEBAIGludCBkbWFf YnVmX2ZkKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsIGludCBmbGFncyk8YnI+DQomZ3Q7Jmd0OyZn dDs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg ZmRfaW5zdGFsbChmZCwgZG1hYnVmLSZndDtmaWxlKTs8YnI+DQomZ3Q7Jmd0OyZndDs8YnI+DQom Z3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKHRyYWNlX2RtYV9i dWZfZmRfZW5hYmxlZCgpKSB7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IGd1YXJkKHNwaW5sb2NrKSgmYW1wO2RtYWJ1Zi0mZ3Q7bmFtZV9sb2NrKTs8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdHJhY2VfZG1hX2J1Zl9mZChkbWFidWYsIGZkKTs8 YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4NCiZn dDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyByZXR1cm4gZmQ7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7IH08YnI+DQom Z3Q7Jmd0OyZndDsmbmJzcDsgRVhQT1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9mZCwgJnF1b3Q7 RE1BX0JVRiZxdW90Oyk7PGJyPg0KJmd0OyZndDsmZ3Q7IEBAIC03OTQsNiAmIzQzOzgyMSw3IEBA IEVYUE9SVF9TWU1CT0xfTlNfR1BMKGRtYV9idWZfZmQsICZxdW90O0RNQV9CVUYmcXVvdDspOzxi cj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyBzdHJ1Y3QgZG1hX2J1ZiAqZG1hX2J1Zl9nZXQoaW50IGZk KTxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyB7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBmaWxlICpmaWxlOzxicj4NCiZndDsmZ3Q7 Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVm Ozxicj4NCiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBmaWxlID0gZmdldChmZCk7PGJyPg0KJmd0OyZndDsmZ3Q7PGJyPg0K Jmd0OyZndDsmZ3Q7IEBAIC04MDUsNyAmIzQzOzgzMywxNCBAQCBzdHJ1Y3QgZG1hX2J1ZiAqZG1h X2J1Zl9nZXQoaW50IGZkKTxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyByZXR1cm4gRVJSX1BUUigtRUlOVkFMKTs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4NCiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsm Z3Q7Jmd0OyAtJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBmaWxlLSZndDtwcml2YXRl X2RhdGE7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGRt YWJ1ZiA9IGZpbGUtJmd0O3ByaXZhdGVfZGF0YTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+ DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKHRyYWNlX2Rt YV9idWZfZ2V0X2VuYWJsZWQoKSkgezxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyBndWFyZChzcGlubG9jaykoJmFtcDtkbWFidWYtJmd0O25hbWVfbG9jayk7PGJyPg0KJmd0 OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHRyYWNlX2RtYV9idWZfZ2V0KGRtYWJ1Ziwg ZmQpOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9PGJy Pg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IHJldHVybiBkbWFidWY7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7IH08YnI+ DQomZ3Q7Jmd0OyZndDsmbmJzcDsgRVhQT1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9nZXQsICZx dW90O0RNQV9CVUYmcXVvdDspOzxicj4NCiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyBA QCAtODI1LDYgJiM0Mzs4NjAsMTEgQEAgdm9pZCBkbWFfYnVmX3B1dChzdHJ1Y3QgZG1hX2J1ZiAq ZG1hYnVmKTxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1 cm47PGJyPg0KJmd0OyZndDsmZ3Q7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IGZwdXQoZG1hYnVmLSZndDtmaWxlKTs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg aWYgKHRyYWNlX2RtYV9idWZfcHV0X2VuYWJsZWQoKSkgezxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQz OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBndWFyZChzcGlubG9jaykoJmFtcDtkbWFidWYtJmd0O25hbWVfbG9j ayk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHRyYWNlX2RtYV9idWZf cHV0KGRtYWJ1Zik7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IH08YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsgfTxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyBF WFBPUlRfU1lNQk9MX05TX0dQTChkbWFfYnVmX3B1dCwgJnF1b3Q7RE1BX0JVRiZxdW90Oyk7PGJy Pg0KJmd0OyZndDsmZ3Q7PGJyPg0KJmd0OyZndDsmZ3Q7IEBAIC05OTgsNiAmIzQzOzEwMzgsMTEg QEAgRVhQT1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9keW5hbWljX2F0dGFjaCwgJnF1b3Q7RE1B X0JVRiZxdW90Oyk7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7IHN0cnVjdCBkbWFfYnVmX2F0dGFj aG1lbnQgKmRtYV9idWZfYXR0YWNoKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsPGJyPg0KJmd0OyZn dDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBkZXZpY2UgKmRldik8YnI+DQomZ3Q7Jmd0OyZndDsm bmJzcDsgezxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBp ZiAodHJhY2VfZG1hX2J1Zl9hdHRhY2hfZW5hYmxlZCgpKSB7PGJyPg0KJmd0OyZndDsmZ3Q7ICYj NDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IGd1YXJkKHNwaW5sb2NrKSgmYW1wO2RtYWJ1Zi0mZ3Q7bmFtZV9s b2NrKTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdHJhY2VfZG1hX2J1 Zl9hdHRhY2goZG1hYnVmLCBkZXYpOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyB9PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBkbWFfYnVmX2R5bmFt aWNfYXR0YWNoKGRtYWJ1ZiwgZGV2LCBOVUxMLCBOVUxMKTs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJz cDsgfTxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyBFWFBPUlRfU1lNQk9MX05TX0dQTChkbWFfYnVm X2F0dGFjaCwgJnF1b3Q7RE1BX0JVRiZxdW90Oyk7PGJyPg0KJmd0OyZndDsmZ3Q7IEBAIC0xMDIz LDYgJiM0MzsxMDY4LDExIEBAIHZvaWQgZG1hX2J1Zl9kZXRhY2goc3RydWN0IGRtYV9idWYgKmRt YWJ1Ziwgc3RydWN0IGRtYV9idWZfYXR0YWNobWVudCAqYXR0YWNoKTxicj4NCiZndDsmZ3Q7Jmd0 OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoZG1hYnVmLSZndDtvcHMt Jmd0O2RldGFjaCk8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg ZG1hYnVmLSZndDtvcHMtJmd0O2RldGFjaChkbWFidWYsIGF0dGFjaCk7PGJyPg0KJmd0OyZndDsm Z3Q7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmICh0 cmFjZV9kbWFfYnVmX2RldGFjaF9lbmFibGVkKCkpIHs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgZ3VhcmQoc3BpbmxvY2spKCZhbXA7ZG1hYnVmLSZndDtuYW1lX2xvY2sp Ozxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0cmFjZV9kbWFfYnVmX2Rl dGFjaChkbWFidWYsIGF0dGFjaC0mZ3Q7ZGV2KTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsm Z3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBrZnJlZShhdHRhY2gp Ozxicj4NCiZndDsmZ3Q7Jmd0OyZuYnNwOyB9PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7IEVYUE9S VF9TWU1CT0xfTlNfR1BMKGRtYV9idWZfZGV0YWNoLCAmcXVvdDtETUFfQlVGJnF1b3Q7KTs8YnI+ DQomZ3Q7Jmd0OyZndDsgQEAgLTE0ODgsNiAmIzQzOzE1MzgsMTEgQEAgaW50IGRtYV9idWZfbW1h cChzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSw8YnI+ DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdm1hX3Nl dF9maWxlKHZtYSwgZG1hYnVmLSZndDtmaWxlKTs8YnI+DQomZ3Q7Jmd0OyZndDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdm1hLSZndDt2bV9wZ29mZiA9IHBnb2ZmOzxicj4N CiZndDsmZ3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyBpZiAodHJhY2VfZG1hX2J1Zl9tbWFwX2VuYWJsZWQoKSkgezxicj4NCiZndDsmZ3Q7Jmd0 OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBndWFyZChzcGlubG9jaykoJmFtcDtkbWFidWYtJmd0O25h bWVfbG9jayk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHRyYWNlX2Rt YV9idWZfbW1hcChkbWFidWYpOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyB9PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBkbWFidWYtJmd0O29wcy0m Z3Q7bW1hcChkbWFidWYsIHZtYSk7PGJyPg0KJmd0OyZndDsmZ3Q7Jm5ic3A7IH08YnI+DQomZ3Q7 Jmd0OyZndDsmbmJzcDsgRVhQT1JUX1NZTUJPTF9OU19HUEwoZG1hX2J1Zl9tbWFwLCAmcXVvdDtE TUFfQlVGJnF1b3Q7KTs8YnI+DQomZ3Q7Jmd0OyZndDsgZGlmZiAtLWdpdCBhL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL2RtYV9idWYuaCBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzL2RtYV9idWYuaDxicj4N CiZndDsmZ3Q7Jmd0OyBuZXcgZmlsZSBtb2RlIDEwMDY0NDxicj4NCiZndDsmZ3Q7Jmd0OyBpbmRl eCAwMDAwMDAwMDAwMDAuLmZlOWRhODliYWNkMDxicj4NCiZndDsmZ3Q7Jmd0OyAtLS0gL2Rldi9u dWxsPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7JiM0MzsmIzQzOyBiL2luY2x1ZGUvdHJhY2UvZXZl bnRzL2RtYV9idWYuaDxicj4NCiZndDsmZ3Q7Jmd0OyBAQCAtMCwwICYjNDM7MSwxNjYgQEA8YnI+ DQomZ3Q7Jmd0OyZndDsgJiM0MzsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAq Lzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyN1bmRlZiBUUkFDRV9TWVNURU08YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0MzsjZGVmaW5lIFRSQUNFX1NZU1RFTSBkbWFfYnVmPGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7I2lmICFkZWZpbmVkKF9UUkFDRV9ETUFfQlVG X0gpIHx8IGRlZmluZWQoVFJBQ0VfSEVBREVSX01VTFRJX1JFQUQpPGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7I2RlZmluZSBfVFJBQ0VfRE1BX0JVRl9IPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJy Pg0KJmd0OyZndDsmZ3Q7ICYjNDM7I2luY2x1ZGUgJmx0O2xpbnV4L2RtYS1idWYuaCZndDs8YnI+ DQomZ3Q7Jmd0OyZndDsgJiM0MzsjaW5jbHVkZSAmbHQ7bGludXgvdHJhY2Vwb2ludC5oJmd0Ozxi cj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzO0RFQ0xBUkVfRVZF TlRfQ0xBU1MoZG1hX2J1Ziw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVFBfUFJPVE8oc3RydWN0IGRtYV9idWYg KmRtYWJ1ZiksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRQX0FSR1MoZG1hYnVmKSw8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg VFBfU1RSVUNUX19lbnRyeSg8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg X19zdHJpbmcoZXhwX25hbWUsIGRtYWJ1Zi0mZ3Q7ZXhwX25hbWUpPGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fc3RyaW5nKG5hbWUsIGRtYWJ1Zi0mZ3Q7bmFtZSk8YnI+ DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19maWVsZChzaXplX3QsIHNpemUp PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fZmllbGQoaW5vX3QsIGlu byk8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19maWVsZChsb25nLCBm X3JlZmNudCk8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg KSw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsgVFBfZmFzdF9hc3NpZ24oPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IF9fYXNzaWduX3N0cihleHBfbmFtZSk7PGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fYXNzaWduX3N0cihuYW1lKTs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7c2l6ZSA9IGRtYWJ1Zi0mZ3Q7c2l6 ZTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7aW5v ID0gZG1hYnVmLSZndDtmaWxlLSZndDtmX2lub2RlLSZndDtpX2lubzs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7Zl9yZWZjbnQgPSBmaWxlX2NvdW50 KGRtYWJ1Zi0mZ3Q7ZmlsZSk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7ICksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYj NDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRQX3ByaW50aygmcXVvdDtleHBfbmFtZT0lcyBu YW1lPSVzIHNpemU9JXp1IGlubz0lbHUgZl9yZWZjbnQ9JWxkJnF1b3Q7LDxicj4NCiZndDsmZ3Q7 Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dldF9zdHIoZXhwX25hbWUp LDxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dl dF9zdHIobmFtZSksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IF9fZW50cnktJmd0O3NpemUsPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fZW50cnktJmd0O2lubyw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0 MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7Zl9yZWZjbnQpPGJyPg0K Jmd0OyZndDs8YnI+DQomZ3Q7Jmd0OyBJIGNhbid0IGNvbWUgdXAgd2l0aCBhIHJlYXNvbiB3aHkg d2Ugc2hvdWxkIGhhdmUgdGhlIGZpbGUgcmVmY291bnQgaW4gdGhlIHRyYWNlIGxvZ3MuPGJyPg0K Jmd0OyZndDs8YnI+DQomZ3Q7Jmd0OyBTYW1lIGZvciBtb3N0IG90aGVyIHBsYWNlcy48YnI+DQom Z3Q7Jmd0Ozxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7 PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7REVDTEFSRV9FVkVOVF9DTEFTUyhkbWFfYnVmX2F0dGFj aF9kZXYsPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRQX1BST1RPKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsIHN0 cnVjdCBkZXZpY2UgKmRldiksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsm Z3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRQX0FSR1MoZG1hYnVmLCBkZXYpLDxi cj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyBUUF9TVFJVQ1RfX2VudHJ5KDxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyBfX3N0cmluZyhkbmFtZSwgZGV2X25hbWUoZGV2KSk8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19zdHJpbmcoZXhwX25hbWUsIGRtYWJ1Zi0mZ3Q7 ZXhwX25hbWUpPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fc3RyaW5n KG5hbWUsIGRtYWJ1Zi0mZ3Q7bmFtZSk8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsgX19maWVsZChzaXplX3QsIHNpemUpPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IF9fZmllbGQoaW5vX3QsIGlubyk8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgX19maWVsZChsb25nLCBmX3JlZmNudCk8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0 MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKSw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+ DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVFBfZmFzdF9hc3Np Z24oPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fYXNzaWduX3N0cihk bmFtZSk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fYXNzaWduX3N0 cihleHBfbmFtZSk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fYXNz aWduX3N0cihuYW1lKTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19l bnRyeS0mZ3Q7c2l6ZSA9IGRtYWJ1Zi0mZ3Q7c2l6ZTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7aW5vID0gZG1hYnVmLSZndDtmaWxlLSZndDtmX2lu b2RlLSZndDtpX2lubzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19l bnRyeS0mZ3Q7Zl9yZWZjbnQgPSBmaWxlX2NvdW50KGRtYWJ1Zi0mZ3Q7ZmlsZSk7PGJyPg0KJmd0 OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICksPGJyPg0KJmd0OyZndDsm Z3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IFRQX3ByaW50aygmcXVvdDtkZXZfbmFtZT0lcyBleHBfbmFtZT0lcyBuYW1lPSVzIHNpemU9JXp1 IGlubz0lbHUgZl9yZWZjbnQ9JWxkJnF1b3Q7LDxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dldF9zdHIoZG5hbWUpLDxicj4NCiZndDsmZ3Q7Jmd0 OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dldF9zdHIoZXhwX25hbWUpLDxi cj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dldF9z dHIobmFtZSksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IF9fZW50cnktJmd0O3NpemUsPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IF9fZW50cnktJmd0O2lubyw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7Zl9yZWZjbnQpPGJyPg0KJmd0 OyZndDs8YnI+DQomZ3Q7Jmd0OyBQcmludCB0aGUgZGV2X25hbWUgbGFzdCwgaXQncyB0aGUgZXh0 ZXJuYWwgZGV2aWNlIHdoaWNoIGF0dGFjaGVzIHRvIHRoZSBETUEtYnVmLjxicj4NCiZndDsmZ3Q7 PGJyPg0KJmd0OyZndDsgQWRkaXRpb25hbCB0byB0aGF0IGl0IHdvdWxkIGJlIG5pY2UgdG8ga25v dyBpZiB0aGUgYXR0YWNobWVudCBpcyBkeW5hbWljIG9yIG5vdC48YnI+DQomZ3Q7Jmd0Ozxicj4N CiZndDsmZ3Q7IFJlZ2FyZHMsPGJyPg0KJmd0OyZndDsgQ2hyaXN0aWFuLjxicj4NCiZndDsmZ3Q7 PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7KTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQom Z3Q7Jmd0OyZndDsgJiM0MztERUNMQVJFX0VWRU5UX0NMQVNTKGRtYV9idWZfZmQsPGJyPg0KJmd0 OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IFRQX1BST1RPKHN0cnVjdCBkbWFfYnVmICpkbWFidWYsIGludCBmZCksPGJyPg0KJmd0 OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IFRQX0FSR1MoZG1hYnVmLCBmZCksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0K Jmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRQX1NUUlVDVF9fZW50 cnkoPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fc3RyaW5nKGV4cF9u YW1lLCBkbWFidWYtJmd0O2V4cF9uYW1lKTxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBfX3N0cmluZyhuYW1lLCBkbWFidWYtJmd0O25hbWUpPGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fZmllbGQoc2l6ZV90LCBzaXplKTxicj4NCiZndDsmZ3Q7 Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2ZpZWxkKGlub190LCBpbm8pPGJyPg0KJmd0OyZn dDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fZmllbGQoaW50LCBmZCk8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19maWVsZChsb25nLCBmX3JlZmNudCk8YnI+DQom Z3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKSw8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgVFBfZmFzdF9hc3NpZ24oPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IF9fYXNzaWduX3N0cihleHBfbmFtZSk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IF9fYXNzaWduX3N0cihuYW1lKTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgX19lbnRyeS0mZ3Q7c2l6ZSA9IGRtYWJ1Zi0mZ3Q7c2l6ZTs8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7aW5vID0gZG1hYnVmLSZndDtm aWxlLSZndDtmX2lub2RlLSZndDtpX2lubzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgX19lbnRyeS0mZ3Q7ZmQgPSBmZDs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7Zl9yZWZjbnQgPSBmaWxlX2NvdW50KGRtYWJ1Zi0mZ3Q7 ZmlsZSk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICks PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IFRQX3ByaW50aygmcXVvdDtleHBfbmFtZT0lcyBuYW1lPSVzIHNpemU9 JXp1IGlubz0lbHUgZmQ9JWQgZl9yZWZjbnQ9JWxkJnF1b3Q7LDxicj4NCiZndDsmZ3Q7Jmd0OyAm IzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dldF9zdHIoZXhwX25hbWUpLDxicj4N CiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2dldF9zdHIo bmFtZSksPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IF9fZW50cnktJmd0O3NpemUsPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IF9fZW50cnktJmd0O2lubyw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgX19lbnRyeS0mZ3Q7ZmQsPGJyPg0KJmd0OyZndDsmZ3Q7 ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF9fZW50cnktJmd0O2ZfcmVmY250KTxi cj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0 OyZndDsmZ3Q7ICYjNDM7REVGSU5FX0VWRU5UKGRtYV9idWYsIGRtYV9idWZfZXhwb3J0LDxicj4N CiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyBUUF9QUk9UTyhzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmKSw8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgVFBfQVJHUyhkbWFidWYpPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7KTs8YnI+DQomZ3Q7Jmd0 OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MztERUZJTkVfRVZFTlQoZG1hX2J1Ziwg ZG1hX2J1Zl9tbWFwX2ludGVybmFsLDxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsm Z3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBUUF9QUk9UTyhzdHJ1Y3QgZG1h X2J1ZiAqZG1hYnVmKSw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsg JiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVFBfQVJHUyhkbWFidWYpPGJyPg0KJmd0OyZn dDsmZ3Q7ICYjNDM7KTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsg JiM0MztERUZJTkVfRVZFTlQoZG1hX2J1ZiwgZG1hX2J1Zl9tbWFwLDxicj4NCiZndDsmZ3Q7Jmd0 OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBU UF9QUk9UTyhzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmKSw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8 YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVFBfQVJHUyhk bWFidWYpPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7KTs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8 YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MztERUZJTkVfRVZFTlQoZG1hX2J1ZiwgZG1hX2J1Zl9wdXQs PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IFRQX1BST1RPKHN0cnVjdCBkbWFfYnVmICpkbWFidWYpLDxicj4NCiZn dDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBUUF9BUkdTKGRtYWJ1Zik8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzspOzxicj4NCiZn dDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzO0RFRklORV9FVkVOVChkbWFf YnVmX2F0dGFjaF9kZXYsIGRtYV9idWZfYXR0YWNoLDxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxi cj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBUUF9QUk9UTyhz dHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmLCBzdHJ1Y3QgZGV2aWNlICpkZXYpLDxicj4NCiZndDsmZ3Q7 Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyBUUF9BUkdTKGRtYWJ1ZiwgZGV2KTxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyk7PGJyPg0KJmd0 OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7REVGSU5FX0VWRU5UKGRtYV9i dWZfYXR0YWNoX2RldiwgZG1hX2J1Zl9kZXRhY2gsPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJy Pg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFRQX1BST1RPKHN0 cnVjdCBkbWFfYnVmICpkbWFidWYsIHN0cnVjdCBkZXZpY2UgKmRldiksPGJyPg0KJmd0OyZndDsm Z3Q7ICYjNDM7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IFRQX0FSR1MoZG1hYnVmLCBkZXYpPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7KTs8YnI+DQomZ3Q7 Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MztERUZJTkVfRVZFTlQoZG1hX2J1 Zl9mZCwgZG1hX2J1Zl9mZCw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVFBfUFJPVE8oc3RydWN0IGRtYV9idWYg KmRtYWJ1ZiwgaW50IGZkKSw8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZn dDsgJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgVFBfQVJHUyhkbWFidWYsIGZkKTxicj4N CiZndDsmZ3Q7Jmd0OyAmIzQzOyk7PGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7PGJyPg0KJmd0OyZn dDsmZ3Q7ICYjNDM7REVGSU5FX0VWRU5UKGRtYV9idWZfZmQsIGRtYV9idWZfZ2V0LDxicj4NCiZn dDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBUUF9QUk9UTyhzdHJ1Y3QgZG1hX2J1ZiAqZG1hYnVmLCBpbnQgZmQpLDxicj4NCiZn dDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBUUF9BUkdTKGRtYWJ1ZiwgZmQpPGJyPg0KJmd0OyZndDsmZ3Q7ICYjNDM7KTs8YnI+ DQomZ3Q7Jmd0OyZndDsgJiM0Mzs8YnI+DQomZ3Q7Jmd0OyZndDsgJiM0MzsjZW5kaWYgLyogX1RS QUNFX0RNQV9CVUZfSCAqLzxicj4NCiZndDsmZ3Q7Jmd0OyAmIzQzOzxicj4NCiZndDsmZ3Q7Jmd0 OyAmIzQzOy8qIFRoaXMgcGFydCBtdXN0IGJlIG91dHNpZGUgcHJvdGVjdGlvbiAqLzxicj4NCiZn dDsmZ3Q7Jmd0OyAmIzQzOyNpbmNsdWRlICZsdDt0cmFjZS9kZWZpbmVfdHJhY2UuaCZndDs8YnI+ DQomZ3Q7Jmd0Ozxicj4NCiZndDs8YnI+DQo8YnI+DQo8L2Rpdj4NCjwvc3Bhbj48L2ZvbnQ+DQo8 L2JvZHk+DQo8L2h0bWw+DQo= --_000_36e7f7eb41a04d688b231978ca4ac533xiaomicom_--