From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbgau2.qq.com (smtpbgau2.qq.com [54.206.34.216]) by sourceware.org (Postfix) with ESMTPS id 629B73855889 for ; Tue, 30 May 2023 07:45:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 629B73855889 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai X-QQ-mid: bizesmtp73t1685432732ti23qwoh Received: from LAPTOP-EPITNQBU ( [58.60.1.20]) by bizesmtp.qq.com (ESMTP) with id ; Tue, 30 May 2023 15:45:30 +0800 (CST) X-QQ-SSF: 01400000000000F0R000000A0000000 X-QQ-FEAT: W+onFc5Tw4MrG5mlW8c0OWp7ej+FwI7H47firS+BbUf4DUBw4d/dZUtTFuXE3 PsEYFr50JuOVH/IMudIzpZZjeokaSTiS7VUOAkZ4rlPkiX2ujkbgtSii3SzfNorDkD/D7O/ 3fHPne7BQInPAigNC1tt76ab+DMIW6JktHQncJnphnvClvWygn6x4HwLKYykvn0+QF/vSlV ZE9CNJUL3Qa8paSyNkGCDHxOYSnHhFspIlGQUWhMC9r0odApqYXfk8Rbk8JsM4PG5jA47aC 55E2XmJw3585+7eZgP/GjfPorQTAPzGGNb3iypw/qdionwR5NnpdGjNGIKX6SO7YsvSLJHn +JtjC5tjwc9mxuMFEctyPWkssykIUcDaZkLBICXJFwXI46LhTdF+ERq4Tea+EZu4NtFmZwv jF5xOxkOAG/++kFea3dX+j0v2L58S7Vs X-QQ-GoodBg: 2 X-BIZMAIL-ID: 15480639765379333424 Date: Tue, 30 May 2023 15:45:31 +0800 From: "juzhe.zhong@rivai.ai" To: "Richard Biener" , Kito.cheng Cc: gcc-patches , palmer , kito.cheng , jeffreyalaw , "Robin Dapp" , pan2.li Subject: Re: Re: [PATCH] RISC-V: Basic VLS code gen for RISC-V References: <20230530060621.31449-1-kito.cheng@sifive.com>, X-Priority: 3 X-GUID: 66568743-7328-4FD3-9C8D-252CFE0355DD X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: <87B2E2DEA59DF7D1+20230530154530505119343@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart408165145753_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-8.7 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,RCVD_IN_SORBS_WEB,SPF_HELO_PASS,SPF_PASS,TXREP,T_KAM_HTML_FONT_INVALID,T_SCC_BODY_TEXT_LINE,URIBL_BLACK autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. ------=_001_NextPart408165145753_=---- Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 SGksIFJpY2hpLg0KDQo+PiBidXQgaWRlYWxseSB0aGUgdXNlciB3b3VsZCBi ZSBhYmxlIHRvIHNwZWNpZnkgLW1ydnYtc2l6ZT0zMiBmb3IgYW4NCj4+IGlt cGxlbWVudGF0aW9uIHdpdGggMzIgYnl0ZSB2ZWN0b3JzIGFuZCB0aGVuIHZl Y3RvciBsb3dlcmluZyB3b3VsZCBtYWtlIHVzZQ0KPj4gb2YgdmVjdG9ycyB1 cCB0byAzMiBieXRlcz8NCg0KQWN0dWFsbHksIHdlIGRvbid0IHdhbnQgdG8g c3BlY2lmeSAtbXJ2di1zaXplID0gMzIgdG8gZW5hYmxlIHZlY3Rvcml6YXRp b24gb24gR05VIHZlY3RvcnMuDQpZb3UgY2FuIHRha2UgYSBsb29rIHRoaXMg ZXhhbXBsZToNCmh0dHBzOi8vZ29kYm9sdC5vcmcvei8zallxb004NGggDQoN CkdDQyBuZWVkIHRvIHNwZWNpZnkgdGhlIG1ydnYgc2l6ZSB0byBlbmFibGUg R05VIHZlY3RvcnMgYW5kIHRoZSBjb2RlZ2VuIG9ubHkgY2FuIHJ1biBvbiBD UFUgd2l0aCB2ZWN0b3ItbGVuZ3RoID0gMTI4Yml0Lg0KSG93ZXZlciwgTExW TSBkb2Vzbid0IG5lZWQgdG8gc3BlY2lmeSB0aGUgdmVjdG9yIGxlbmd0aCwg YW5kIHRoZSBjb2RlZ2VuIGNhbiBydW4gb24gYW55IENQVSB3aXRoIFJWViAg dmVjdG9yLWxlbmd0aCA+PSAxMjggYml0cy4NCg0KVGhpcyBpcyB3aGF0IHRo aXMgcGF0Y2ggd2FudCB0byBkby4NCg0KVGhhbmtzLg0KDQoNCmp1emhlLnpo b25nQHJpdmFpLmFpDQogDQpGcm9tOiBSaWNoYXJkIEJpZW5lcg0KRGF0ZTog MjAyMy0wNS0zMCAxNToxMw0KVG86IEtpdG8gQ2hlbmcNCkNDOiBnY2MtcGF0 Y2hlczsgcGFsbWVyOyBraXRvLmNoZW5nOyBqdXpoZS56aG9uZzsgamVmZnJl eWFsYXc7IHJkYXBwLmdjYzsgcGFuMi5saQ0KU3ViamVjdDogUmU6IFtQQVRD SF0gUklTQy1WOiBCYXNpYyBWTFMgY29kZSBnZW4gZm9yIFJJU0MtVg0KT24g VHVlLCBNYXkgMzAsIDIwMjMgYXQgODowN+KAr0FNIEtpdG8gQ2hlbmcgdmlh IEdjYy1wYXRjaGVzDQo8Z2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc+IHdyb3Rl Og0KPg0KPiBHTlUgdmVjdG9yIGV4dGVuc2lvbnMgaXMgd2lkbHkgdXNlZCBh cm91bmQgdGhpcyB3b3JsZCwgYW5kIHRoaXMgcGF0Y2gNCj4gZW5hYmxlIHRo YXQgd2l0aCBSSVNDLVYgdmVjdG9yIGV4dGVuc2lvbnMsIHRoaXMgY2FuIGhl bHAgcGVvcGxlDQo+IGxldmVyYWdlIGV4aXN0aW5nIGNvZGUgYmFzZSB3aXRo IFJWViwgYW5kIGFsc28gY2FuIHdyaXRlIHZlY3RvciBwcm9ncmFtcyBpbiBh DQo+IGZhbWlsaWFyIHdheS4NCj4NCj4gVGhlIGlkZWEgb2YgVkxTIGNvZGUg Z2VuIHN1cHBvcnQgaXMgZW11bGF0ZSBWTFMgb3BlcmF0aW9uIGJ5IFZMQSBv cGVyYXRpb24gd2l0aA0KPiBzcGVjaWZpYyBsZW5ndGguDQogDQpJbiB0aGUg cGF0Y2ggeW91IGFkZGVkIGZpeGVkIDE2IGJ5dGVzIHZlY3RvciBtb2Rlcywg Y29ycmVjdD8gIEkndmUNCm5ldmVyIGxvb2tlZCBhdA0KaG93IEFSTSBkZWFs cyB3aXRoIHRoZSBHTlUgdmVjdG9yIGV4dGVuc2lvbnMgYnV0IEkgc3VwcG9z ZSB0aGV5IGdldCBtYXBwZWQNCnRvIE5FT04gYW5kIG5vdCBTVkUgc28gYmFz aWNhbGx5IGJlaGF2ZSB0aGUgc2FtZSB3YXkgaGVyZS4NCiANCkJ1dCBJIGRv IHdvbmRlciBhYm91dCB0aGUgZWZmaWNpZW5jeSBmb3IgUlZWIHdoZXJlIHRo ZXJlIGRvZXNuJ3QgZXhpc3QgYQ0KY29tcGxlbWVudGFyeSBmaXhlZC1sZW5n dGggSVNBLiAgU2hvdWxkbid0IHZlY3RvciBsb3dlcmluZw0KKHRyZWUtdmVj dC1nZW5lcmljLmNjKQ0KYmUgZW5oYW5jZWQgdG8gc3VwcG9ydCBsb3dlcmlu ZyBmaXhlZC1sZW5ndGggdmVjdG9ycyB0byB2YXJpYWJsZSBsZW5ndGggb25l cw0Kd2l0aCAodmFyaWFibGUpIGZpeGVkIGxlbmd0aCBpbnN0ZWFkPyAgRnJv bSB5b3VyIHBhdGNoIEkgc2Vjb25kLWd1ZXNzIHRoZSBSVlYNCnNwZWNpZmlj YXRpb24gcmVxdWlyZXMgMTYgYnl0ZSB2ZWN0b3JzIHRvIGJlIGF2YWlsYWJs ZSAob3Igd2lsbCB5b3VyDQpwYXRjaCBzcGxpdCB0aGUNCmluc25zPykgYnV0 IGlkZWFsbHkgdGhlIHVzZXIgd291bGQgYmUgYWJsZSB0byBzcGVjaWZ5IC1t cnZ2LXNpemU9MzIgZm9yIGFuDQppbXBsZW1lbnRhdGlvbiB3aXRoIDMyIGJ5 dGUgdmVjdG9ycyBhbmQgdGhlbiB2ZWN0b3IgbG93ZXJpbmcgd291bGQgbWFr ZSB1c2UNCm9mIHZlY3RvcnMgdXAgdG8gMzIgYnl0ZXM/DQogDQpBbHNvIHZl Y3RvciBsb3dlcmluZyB3aWxsIHNwbGl0IHNtYWxsZXIgdmVjdG9ycyBub3Qg ZXF1YWwgdG8gdGhlIGZpeGVkIHNpemUgdG8NCnNjYWxhcnMgdW5sZXNzIHlv dSBhZGQgYWxsIGZpeGVkIGxlbmd0aCBtb2RlcyBzbWFsbGVyIHRoYW4gMTYg Ynl0ZXMgYXMgd2VsbC4NCiANCj4gS2V5IGRlc2lnbiBwb2ludCBpcyB3ZSBk ZWZlciB0aGUgbW9kZSBjb252ZXJzaW9uIChGcm9tIFZMUyB0byBWTEEgbW9k ZSkgYWZ0ZXINCj4gcmVnaXN0ZXIgYWxsb2NhdGlvbiwgaXQgY29tZSB3aXRo IHNldmVyYWwgYWR2YW50YWdlczoNCj4gLSBWTFMgcGF0dGVybiBpcyBtdWNo IGZyaWVuZGx5IGZvciBtb3N0IG9wdGltaXphdGlvbiBwYXNzIGxpa2UgY29t YmluZS4NCj4gLSBSZWdpc3RlciBhbGxvY2F0b3IgY2FuIHNwaWxsL3Jlc3Rv cmUgZXhhY3Qgc2l6ZSBvZiBWTFMgdHlwZSBpbnN0ZWFkIG9mDQo+ICAgd2hv bGUgcmVnaXN0ZXIuDQo+DQo+IFRoaXMgaXMgY29tcGF0aWJsZSB3aXRoIFZM QSB2ZWN0b3JpemF0aW9uLg0KPg0KPiBPbmx5IHN1cHBvcnQgbW92ZSBhbmQg YmluYXJ5IHBhcnQgb2Ygb3BlcmF0aW9uIHBhdHRlcm5zLg0KPg0KPiBnY2Mv Q2hhbmdlTG9nOg0KPg0KPiAgICAgICAgICogY29uZmlnL3Jpc2N2L3Jpc2N2 LW1vZGVzLmRlZjogSW50cm9kdWNlIFZMUyBtb2Rlcy4NCj4gICAgICAgICAq IGNvbmZpZy9yaXNjdi9yaXNjdi1wcm90b3MuaCAocmlzY3ZfdmVjdG9yOjpt aW5pbWFsX3Zsc19tb2RlKTogTmV3Lg0KPiAgICAgICAgIChyaXNjdl92ZWN0 b3I6OnZsc19pbnNuX2V4cGFuZGVyKTogTmV3Lg0KPiAgICAgICAgIChyaXNj dl92ZWN0b3I6OnZsc19tb2RlX3ApOiBOZXcuDQo+ICAgICAgICAgKiBjb25m aWcvcmlzY3YvcmlzY3Ytdi5jYyAocmlzY3ZfdmVjdG9yOjptaW5pbWFsX3Zs c19tb2RlKTogTmV3Lg0KPiAgICAgICAgIChyaXNjdl92ZWN0b3I6OnZsc19t b2RlX3ApOiBOZXcuDQo+ICAgICAgICAgKHJpc2N2X3ZlY3Rvcjo6dmxzX2lu c25fZXhwYW5kZXIpOiBOZXcuDQo+ICAgICAgICAgKHJpc2N2X3ZlY3Rvcjo6 dXBkYXRlX3Zsc19tb2RlKTogTmV3Lg0KPiAgICAgICAgICogY29uZmlnL3Jp c2N2L3Jpc2N2LmNjIChyaXNjdl92X2V4dF9tb2RlX3ApOiBOZXcuDQo+ICAg ICAgICAgKHJpc2N2X3ZfYWRqdXN0X251bml0cyk6IEhhbmRsZSBWTFMgdHlw ZS4NCj4gICAgICAgICAocmlzY3ZfaGFyZF9yZWdub19ucmVncyk6IERpdHRv Lg0KPiAgICAgICAgIChyaXNjdl9oYXJkX3JlZ25vX21vZGVfb2spOiBEaXR0 by4NCj4gICAgICAgICAocmlzY3ZfcmVnbW9kZV9uYXR1cmFsX3NpemUpOiBE aXR0by4NCj4gICAgICAgICAqIGNvbmZpZy9yaXNjdi92ZWN0b3ItaXRlcmF0 b3JzLm1kIChWTFMpOiBOZXcuDQo+ICAgICAgICAgKFZNKTogSGFuZGxlIFZM UyB0eXBlLg0KPiAgICAgICAgICh2ZWwpOiBEaXR0by4NCj4gICAgICAgICAq IGNvbmZpZy9yaXNjdi92ZWN0b3IubWQ6IEluY2x1ZGUgdmVjdG9yLXZscy5t ZC4NCj4gICAgICAgICAqIGNvbmZpZy9yaXNjdi92ZWN0b3ItdmxzLm1kOiBO ZXcgZmlsZS4NCj4NCj4gZ2NjL3Rlc3RzdWl0ZS9DaGFuZ2VMb2c6DQo+DQo+ ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9ydnYuZXhwOiBBZGQg dmxzIGZvbGRlci4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2 L3Zscy9iaW5vcC10ZW1wbGF0ZS5oOiBOZXcgdGVzdC4NCj4gICAgICAgICAq IGdjYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9iaW5vcC12LmM6IE5ldyB0ZXN0 Lg0KPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL2Jpbm9w LXp2ZTMyeC5jOiBOZXcgdGVzdC4NCj4gICAgICAgICAqIGdjYy50YXJnZXQv cmlzY3YvcnZ2L3Zscy9iaW5vcC16dmU2NHguYzogTmV3IHRlc3QuDQo+ICAg ICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS10ZW1wbGF0 ZS5oOiBOZXcgdGVzdC4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3Yv cnZ2L3Zscy9tb3ZlLXYuYzogTmV3IHRlc3QuDQo+ICAgICAgICAgKiBnY2Mu dGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS16dmUzMnguYzogTmV3IHRlc3Qu DQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS16 dmU2NHguYzogTmV3IHRlc3QuDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jp c2N2L3J2di92bHMvbG9hZC1zdG9yZS10ZW1wbGF0ZS5oOiBOZXcgdGVzdC4N Cj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9sb2FkLXN0 b3JlLXYuYzogTmV3IHRlc3QuDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jp c2N2L3J2di92bHMvbG9hZC1zdG9yZS16dmUzMnguYzogTmV3IHRlc3QuDQo+ ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbG9hZC1zdG9y ZS16dmU2NHguYzogTmV3IHRlc3QuDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0 L3Jpc2N2L3J2di92bHMvdmxzLXR5cGVzLmg6IE5ldyB0ZXN0Lg0KPiAtLS0N Cj4gIGdjYy9jb25maWcvcmlzY3YvcmlzY3YtbW9kZXMuZGVmICAgICAgICAg ICAgICB8ICAzICsNCj4gIGdjYy9jb25maWcvcmlzY3YvcmlzY3YtcHJvdG9z LmggICAgICAgICAgICAgICB8ICA0ICsrDQo+ICBnY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2LXYuY2MgICAgICAgICAgICAgICAgICAgfCA2NyArKysrKysrKysr KysrKysrKysrDQo+ICBnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjICAgICAg ICAgICAgICAgICAgICAgfCAyNyArKysrKysrLQ0KPiAgZ2NjL2NvbmZpZy9y aXNjdi92ZWN0b3ItaXRlcmF0b3JzLm1kICAgICAgICAgIHwgIDYgKysNCj4g IGdjYy9jb25maWcvcmlzY3YvdmVjdG9yLXZscy5tZCAgICAgICAgICAgICAg ICB8IDY0ICsrKysrKysrKysrKysrKysrKw0KPiAgZ2NjL2NvbmZpZy9yaXNj di92ZWN0b3IubWQgICAgICAgICAgICAgICAgICAgIHwgIDIgKw0KPiAgZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9ydnYuZXhwICAgIHwg IDQgKysNCj4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvYmlub3At dGVtcGxhdGUuaCB8IDE4ICsrKysrDQo+ICAuLi4vZ2NjLnRhcmdldC9yaXNj di9ydnYvdmxzL2Jpbm9wLXYuYyAgICAgICAgfCAxOCArKysrKw0KPiAgLi4u L2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9iaW5vcC16dmUzMnguYyAgIHwg MTggKysrKysNCj4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvYmlu b3AtenZlNjR4LmMgICB8IDE4ICsrKysrDQo+ICAuLi4vcmlzY3YvcnZ2L3Zs cy9sb2FkLXN0b3JlLXRlbXBsYXRlLmggICAgICAgfCAgOCArKysNCj4gIC4u Li9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbG9hZC1zdG9yZS12LmMgICB8 IDE3ICsrKysrDQo+ICAuLi4vcmlzY3YvcnZ2L3Zscy9sb2FkLXN0b3JlLXp2 ZTMyeC5jICAgICAgICAgfCAxNyArKysrKw0KPiAgLi4uL3Jpc2N2L3J2di92 bHMvbG9hZC1zdG9yZS16dmU2NHguYyAgICAgICAgIHwgMTcgKysrKysNCj4g IC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS10ZW1wbGF0ZS5o ICB8IDEzICsrKysNCj4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMv bW92ZS12LmMgICAgICAgICB8IDEwICsrKw0KPiAgLi4uL2djYy50YXJnZXQv cmlzY3YvcnZ2L3Zscy9tb3ZlLXp2ZTMyeC5jICAgIHwgMTAgKysrDQo+ICAu Li4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL21vdmUtenZlNjR4LmMgICAg fCAxMCArKysNCj4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvdmxz LXR5cGVzLmggICAgICB8IDQyICsrKysrKysrKysrKw0KPiAgMjEgZmlsZXMg Y2hhbmdlZCwgMzkxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pDQo+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3It dmxzLm1kDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvYmlub3AtdGVtcGxhdGUuaA0KPiAg Y3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvdmxzL2Jpbm9wLXYuYw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL2Jpbm9w LXp2ZTMyeC5jDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvYmlub3AtenZlNjR4LmMNCj4g IGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L3Zscy9sb2FkLXN0b3JlLXRlbXBsYXRlLmgNCj4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L3Zscy9sb2FkLXN0b3JlLXYuYw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL2xvYWQt c3RvcmUtenZlMzJ4LmMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9sb2FkLXN0b3JlLXp2 ZTY0eC5jDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS10ZW1wbGF0ZS5oDQo+ICBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di92bHMvbW92ZS12LmMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9tb3ZlLXp2 ZTMyeC5jDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS16dmU2NHguYw0KPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvdmxzL3Zscy10eXBlcy5oDQo+DQo+IGRpZmYgLS1naXQgYS9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LW1vZGVzLmRlZiBiL2djYy9jb25maWcvcmlz Y3YvcmlzY3YtbW9kZXMuZGVmDQo+IGluZGV4IDE5YTRmOWZiM2RiLi5mODk3 ZTU2MDY2NyAxMDA2NDQNCj4gLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNj di1tb2Rlcy5kZWYNCj4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1t b2Rlcy5kZWYNCj4gQEAgLTMxOCw2ICszMTgsOSBAQCBSVlZfVFVQTEVfUEFS VElBTF9NT0RFUyAoNikNCj4gIFJWVl9UVVBMRV9QQVJUSUFMX01PREVTICg3 KQ0KPiAgUlZWX1RVUExFX1BBUlRJQUxfTU9ERVMgKDgpDQo+DQo+ICsvKiBW TFMgbW9kZXMuICAqLw0KPiArVkVDVE9SX01PREVTIChJTlQsIDE2KTsgICAg ICAgLyogVjE2UUkgVjhISSBWNFNJIFYyREkgKi8NCj4gKw0KPiAgLyogVE9E TzogQWNjb3JkaW5nIHRvIFJJU0MtViAnVicgSVNBIHNwZWMsIHRoZSBtYXhp bXVuIHZlY3RvciBsZW5ndGggY2FuDQo+ICAgICBiZSA2NTUzNiBmb3IgYSBz aW5nbGUgdmVjdG9yIHJlZ2lzdGVyIHdoaWNoIG1lYW5zIHRoZSB2ZWN0b3Ig bW9kZSBpbg0KPiAgICAgR0NDIGNhbiBiZSBtYXhpbXVtID0gNjU1MzYgKiA4 IGJpdHMgKExNVUw9OCkuDQo+IGRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jp c2N2L3Jpc2N2LXByb3Rvcy5oIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1w cm90b3MuaA0KPiBpbmRleCAwNDYyZjk2YzhkNS4uNTZmNzE0YmJmYjUgMTAw NjQ0DQo+IC0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtcHJvdG9zLmgN Cj4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1wcm90b3MuaA0KPiBA QCAtMjYxLDYgKzI2MSwxMCBAQCBlbnVtIGZybV9maWVsZF9lbnVtDQo+ICBv cHRfbWFjaGluZV9tb2RlIHZlY3Rvcml6ZV9yZWxhdGVkX21vZGUgKG1hY2hp bmVfbW9kZSwgc2NhbGFyX21vZGUsDQo+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcG9seV91aW50NjQpOw0KPiAgdW5zaWdu ZWQgaW50IGF1dG92ZWN0b3JpemVfdmVjdG9yX21vZGVzICh2ZWM8bWFjaGlu ZV9tb2RlPiAqLCBib29sKTsNCj4gK21hY2hpbmVfbW9kZSBtaW5pbWFsX3Zs YV9tb2RlIChtYWNoaW5lX21vZGUpOw0KPiArdm9pZA0KPiArdmxzX2luc25f ZXhwYW5kZXIgKHVuc2lnbmVkLCBpbnQsIHJ0eCAqLCBtYWNoaW5lX21vZGUs IG1hY2hpbmVfbW9kZSk7DQo+ICtib29sIHZsc19tb2RlX3AgKG1hY2hpbmVf bW9kZSk7DQo+ICB9DQo+DQo+ICAvKiBXZSBjbGFzc2lmeSBidWlsdGluIHR5 cGVzIGludG8gdHdvIGNsYXNzZXM6DQo+IGRpZmYgLS1naXQgYS9nY2MvY29u ZmlnL3Jpc2N2L3Jpc2N2LXYuY2MgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2 LXYuY2MNCj4gaW5kZXggYTU3MTViYjQ2NmMuLmY5ZmI4Y2Q5YmU0IDEwMDY0 NA0KPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXYuY2MNCj4gKysr IGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12LmNjDQo+IEBAIC0xNjk3LDQg KzE2OTcsNzEgQEAgZXhwYW5kX3Zjb25kIChydHggKm9wcykNCj4gICAgICBn ZW5fdmNvbmRfbWFzayAoZGF0YV9tb2RlLCBkYXRhX21vZGUsIG9wc1swXSwg b3BzWzFdLCBvcHNbMl0sIG1hc2spKTsNCj4gIH0NCj4NCj4gKy8qIFJldHVy biB0aGUgbWluaW1hbCBjb250YWluYWJsZSBWTEEgbW9kZSBmb3IgTU9ERS4g ICovDQo+ICsNCj4gK21hY2hpbmVfbW9kZQ0KPiArbWluaW1hbF92bGFfbW9k ZSAobWFjaGluZV9tb2RlIG1vZGUpDQo+ICt7DQo+ICsgIGdjY19hc3NlcnQg KEdFVF9NT0RFX05VTklUUyAobW9kZSkuaXNfY29uc3RhbnQgKCkpOw0KPiAr ICB1bnNpZ25lZCB0eXBlX3NpemUgPSBHRVRfTU9ERV9OVU5JVFMgKG1vZGUp LnRvX2NvbnN0YW50ICgpOw0KPiArICBwb2x5X3VpbnQ2NCBudW5pdHMgPSB0 eXBlX3NpemUgKiBwb2x5X3VpbnQ2NCAoMSwgMSk7DQo+ICsgIG9wdF9tYWNo aW5lX21vZGUgdmxhX21vZGUgPSBnZXRfdmVjdG9yX21vZGUgKEdFVF9NT0RF X0lOTkVSIChtb2RlKSwgbnVuaXRzKTsNCj4gKyAgcmV0dXJuIHZsYV9tb2Rl LmVsc2Vfdm9pZCAoKTsNCj4gK30NCj4gKw0KPiArLyogUmV0dXJuIHRydWUg aWYgTU9ERSBpcyB0cnVlIFZMUyBtb2RlLiAgKi8NCj4gKw0KPiArYm9vbA0K PiArdmxzX21vZGVfcCAobWFjaGluZV9tb2RlIG1vZGUpDQo+ICt7DQo+ICsg IHN3aXRjaCAobW9kZSkNCj4gKyAgICB7DQo+ICsgICAgY2FzZSBFX1Y0U0lt b2RlOg0KPiArICAgIGNhc2UgRV9WMkRJbW9kZToNCj4gKyAgICBjYXNlIEVf VjhISW1vZGU6DQo+ICsgICAgY2FzZSBFX1YxNlFJbW9kZToNCj4gKyAgICAg IHJldHVybiB0cnVlOw0KPiArICAgIGRlZmF1bHQ6DQo+ICsgICAgICByZXR1 cm4gZmFsc2U7DQo+ICsgICAgfQ0KPiArfQ0KPiArDQo+ICsvKiBDb252ZXJ0 IGFsbCBPUEVSQU5EUyB0byBWTEFfTU9ERS4gICovDQo+ICsNCj4gK3N0YXRp YyB2b2lkDQo+ICt1cGRhdGVfdmxzX21vZGUgKG1hY2hpbmVfbW9kZSB2bGFf bW9kZSwgdW5zaWduZWQgbl9vcGVyYW5kcywgcnR4ICpvcGVyYW5kcykNCj4g K3sNCj4gKyAgdW5zaWduZWQgaTsNCj4gKyAgZm9yIChpID0gMDsgaSA8IG5f b3BlcmFuZHM7ICsraSkNCj4gKyAgICB7DQo+ICsgICAgICBzd2l0Y2ggKEdF VF9DT0RFIChvcGVyYW5kc1tpXSkpDQo+ICsgICAgICAgew0KPiArICAgICAg IGNhc2UgUkVHOg0KPiArICAgICAgICAgb3BlcmFuZHNbaV0gPSBnZW5fcnR4 X1JFRyAodmxhX21vZGUsIFJFR05PIChvcGVyYW5kc1tpXSkpOw0KPiArICAg ICAgICAgYnJlYWs7DQo+ICsgICAgICAgY2FzZSBNRU06DQo+ICsgICAgICAg ICBvcGVyYW5kc1tpXSA9IGNoYW5nZV9hZGRyZXNzIChvcGVyYW5kc1tpXSwg dmxhX21vZGUsIE5VTExfUlRYKTsNCj4gKyAgICAgICAgIGJyZWFrOw0KPiAr ICAgICAgIGRlZmF1bHQ6DQo+ICsgICAgICAgICBnY2NfdW5yZWFjaGFibGUg KCk7DQo+ICsgICAgICAgfQ0KPiArICAgIH0NCj4gK30NCj4gKw0KPiArLyog RXhwYW5kIFZMUyBvcGVyYXRpb24gdG8gVkxBIHBhdHRlcm4uICAqLw0KPiAr DQo+ICt2b2lkDQo+ICt2bHNfaW5zbl9leHBhbmRlciAodW5zaWduZWQgaWNv ZGUsIGludCBvcF9udW0sIHJ0eCAqb3BlcmFuZHMsDQo+ICsgICAgICAgICAg ICAgICAgICBtYWNoaW5lX21vZGUgdmxzX21vZGUsIG1hY2hpbmVfbW9kZSB2 bGFfbW9kZSkNCj4gK3sNCj4gKyAgdXBkYXRlX3Zsc19tb2RlICh2bGFfbW9k ZSwgLyogbl9vcGVyYW5kcyAqLyBvcF9udW0sIG9wZXJhbmRzKTsNCj4gKw0K PiArICBwb2x5X3VpbnQxNiBudW5pdCA9IEdFVF9NT0RFX05VTklUUyAodmxz X21vZGUpOw0KPiArDQo+ICsgIGdjY19hc3NlcnQgKG51bml0LmlzX2NvbnN0 YW50ICgpKTsNCj4gKw0KPiArICByaXNjdl92ZWN0b3I6OmVtaXRfbm9udmxt YXhfaW5zbiAoaWNvZGUsIG9wX251bSwgb3BlcmFuZHMsDQo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFTl9JTlQgKG51bml0LnRv X2NvbnN0YW50ICgpKSk7DQo+ICt9DQo+ICsNCj4gIH0gLy8gbmFtZXNwYWNl IHJpc2N2X3ZlY3Rvcg0KPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi5jYyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2MNCj4gaW5k ZXggMzk1NGZjMDdhOGIuLjJlMTRmMmUwZDUzIDEwMDY0NA0KPiAtLS0gYS9n Y2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjDQo+ICsrKyBiL2djYy9jb25maWcv cmlzY3YvcmlzY3YuY2MNCj4gQEAgLTEwMzQsNyArMTAzNCw4IEBAIHJpc2N2 X3ZfZXh0X3R1cGxlX21vZGVfcCAobWFjaGluZV9tb2RlIG1vZGUpDQo+ICBz dGF0aWMgYm9vbA0KPiAgcmlzY3Zfdl9leHRfbW9kZV9wIChtYWNoaW5lX21v ZGUgbW9kZSkNCj4gIHsNCj4gLSAgcmV0dXJuIHJpc2N2X3ZfZXh0X3ZlY3Rv cl9tb2RlX3AgKG1vZGUpIHx8IHJpc2N2X3ZfZXh0X3R1cGxlX21vZGVfcCAo bW9kZSk7DQo+ICsgIHJldHVybiByaXNjdl92X2V4dF92ZWN0b3JfbW9kZV9w IChtb2RlKSB8fCByaXNjdl92X2V4dF90dXBsZV9tb2RlX3AgKG1vZGUpDQo+ ICsgICAgICAgIHx8IHJpc2N2X3ZlY3Rvcjo6dmxzX21vZGVfcCAobW9kZSk7 DQo+ICB9DQo+DQo+ICAvKiBDYWxsIGZyb20gQURKVVNUX05VTklUUyBpbiBy aXNjdi1tb2Rlcy5kZWYuIFJldHVybiB0aGUgY29ycmVjdA0KPiBAQCAtMTA0 Myw3ICsxMDQ0LDcgQEAgcmlzY3Zfdl9leHRfbW9kZV9wIChtYWNoaW5lX21v ZGUgbW9kZSkNCj4gIHBvbHlfaW50NjQNCj4gIHJpc2N2X3ZfYWRqdXN0X251 bml0cyAobWFjaGluZV9tb2RlIG1vZGUsIGludCBzY2FsZSkNCj4gIHsNCj4g LSAgaWYgKHJpc2N2X3ZfZXh0X21vZGVfcCAobW9kZSkpDQo+ICsgIGlmIChy aXNjdl92X2V4dF9tb2RlX3AgKG1vZGUpICYmICFyaXNjdl92ZWN0b3I6OnZs c19tb2RlX3AgKG1vZGUpKQ0KPiAgICAgIHJldHVybiByaXNjdl92ZWN0b3Jf Y2h1bmtzICogc2NhbGU7DQo+ICAgIHJldHVybiBzY2FsZTsNCj4gIH0NCj4g QEAgLTYwNTksNiArNjA2MCwyMiBAQCByaXNjdl9yZWdpc3Rlcl9tb3ZlX2Nv c3QgKG1hY2hpbmVfbW9kZSBtb2RlLA0KPiAgc3RhdGljIHVuc2lnbmVkIGlu dA0KPiAgcmlzY3ZfaGFyZF9yZWdub19ucmVncyAodW5zaWduZWQgaW50IHJl Z25vLCBtYWNoaW5lX21vZGUgbW9kZSkNCj4gIHsNCj4gKyAgaWYgKHJpc2N2 X3ZlY3Rvcjo6dmxzX21vZGVfcCAobW9kZSkpDQo+ICsgICAgew0KPiArICAg ICAgaWYgKFRBUkdFVF9NSU5fVkxFTikNCj4gKyAgICAgICB7DQo+ICsgICAg ICAgICB1bnNpZ25lZCBtaW5fYnl0ZV9wZXJfdmVjdG9yX3JlZ2lzdGVyID0g VEFSR0VUX01JTl9WTEVOIC8gODsNCj4gKyAgICAgICAgIHVuc2lnbmVkIG1v ZGVfc2l6ZSA9IEdFVF9NT0RFX1NJWkUgKG1vZGUpLnRvX2NvbnN0YW50ICgp Ow0KPiArDQo+ICsgICAgICAgICBpZiAobWluX2J5dGVfcGVyX3ZlY3Rvcl9y ZWdpc3RlciA+PSBtb2RlX3NpemUpDQo+ICsgICAgICAgICAgIHJldHVybiAx Ow0KPiArDQo+ICsgICAgICAgICByZXR1cm4gbW9kZV9zaXplIC8gbWluX2J5 dGVfcGVyX3ZlY3Rvcl9yZWdpc3RlcjsNCj4gKyAgICAgICB9DQo+ICsgICAg ICBlbHNlDQo+ICsgICAgICAgcmV0dXJuIDE7DQo+ICsgICAgfQ0KPiArDQo+ ICAgIGlmIChyaXNjdl92X2V4dF92ZWN0b3JfbW9kZV9wIChtb2RlKSkNCj4g ICAgICB7DQo+ICAgICAgICAvKiBIYW5kbGUgZnJhY3Rpb25hbCBMTVVMLCBp dCBvbmx5IG9jY3VweSBwYXJ0IG9mIHZlY3RvciByZWdpc3RlciBidXQNCj4g QEAgLTYxNDgsNiArNjE2NSwxMCBAQCByaXNjdl9oYXJkX3JlZ25vX21vZGVf b2sgKHVuc2lnbmVkIGludCByZWdubywgbWFjaGluZV9tb2RlIG1vZGUpDQo+ ICAgICAgICAgIGJ1dCBmb3IgbWFzayB2ZWN0b3IgcmVnaXN0ZXIsIHJlZ2lz dGVyIG51bWJlcnMgY2FuIGJlIGFueSBudW1iZXIuICovDQo+ICAgICAgICBp bnQgbG11bCA9IDE7DQo+ICAgICAgICBtYWNoaW5lX21vZGUgcnZ2X21vZGUg PSBtb2RlOw0KPiArDQo+ICsgICAgICBpZiAocmlzY3ZfdmVjdG9yOjp2bHNf bW9kZV9wIChtb2RlKSkNCj4gKyAgICAgICBydnZfbW9kZSA9IHJpc2N2X3Zl Y3Rvcjo6bWluaW1hbF92bGFfbW9kZSAobW9kZSk7DQo+ICsNCj4gICAgICAg IGlmIChyaXNjdl92X2V4dF90dXBsZV9tb2RlX3AgKHJ2dl9tb2RlKSkNCj4g ICAgICAgICBydnZfbW9kZSA9IHJpc2N2X3ZlY3Rvcjo6Z2V0X3N1YnBhcnRf bW9kZSAocnZ2X21vZGUpOw0KPiAgICAgICAgcG9seV9pbnQ2NCBzaXplID0g R0VUX01PREVfU0laRSAocnZ2X21vZGUpOw0KPiBAQCAtNzIyMyw2ICs3MjQ0 LDggQEAgcmlzY3ZfdmVjdG9yX2FsaWdubWVudCAoY29uc3RfdHJlZSB0eXBl KQ0KPiAgcG9seV91aW50NjQNCj4gIHJpc2N2X3JlZ21vZGVfbmF0dXJhbF9z aXplIChtYWNoaW5lX21vZGUgbW9kZSkNCj4gIHsNCj4gKyAgaWYgKHJpc2N2 X3ZlY3Rvcjo6dmxzX21vZGVfcCAobW9kZSkpDQo+ICsgICAgcmV0dXJuIEdF VF9NT0RFX1NJWkUgKG1vZGUpOw0KPiAgICAvKiBUaGUgbmF0dXJhbCBzaXpl IGZvciBSVlYgZGF0YSBtb2RlcyBpcyBvbmUgUlZWIGRhdGEgdmVjdG9yLA0K PiAgICAgICBhbmQgc2ltaWxhcmx5IGZvciBwcmVkaWNhdGVzLiAgV2UgY2Fu J3QgaW5kZXBlbmRlbnRseSBtb2RpZnkNCj4gICAgICAgYW55dGhpbmcgc21h bGxlciB0aGFuIHRoYXQuICAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZp Zy9yaXNjdi92ZWN0b3ItaXRlcmF0b3JzLm1kIGIvZ2NjL2NvbmZpZy9yaXNj di92ZWN0b3ItaXRlcmF0b3JzLm1kDQo+IGluZGV4IDcwZmI1YjgwYjFiLi42 NTBmMjY1MWM3ZCAxMDA2NDQNCj4gLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi92 ZWN0b3ItaXRlcmF0b3JzLm1kDQo+ICsrKyBiL2djYy9jb25maWcvcmlzY3Yv dmVjdG9yLWl0ZXJhdG9ycy5tZA0KPiBAQCAtODQsNiArODQsMTAgQEAgKGRl ZmluZV9jX2VudW0gInVuc3BlYyIgWw0KPiAgICBVTlNQRUNfTU9ESUZZX1ZM DQo+ICBdKQ0KPg0KPiArKGRlZmluZV9tb2RlX2l0ZXJhdG9yIFZMUyBbDQo+ ICsgIFYyREkgVjRTSSBWOEhJIFYxNlFJDQo+ICtdKQ0KPiArDQo+ICAoZGVm aW5lX21vZGVfaXRlcmF0b3IgViBbDQo+ICAgIChWTngxUUkgIlRBUkdFVF9N SU5fVkxFTiA8IDEyOCIpIFZOeDJRSSBWTng0UUkgVk54OFFJIFZOeDE2UUkg Vk54MzJRSSAoVk54NjRRSSAiVEFSR0VUX01JTl9WTEVOID4gMzIiKSAoVk54 MTI4UUkgIlRBUkdFVF9NSU5fVkxFTiA+PSAxMjgiKQ0KPiAgICAoVk54MUhJ ICJUQVJHRVRfTUlOX1ZMRU4gPCAxMjgiKSBWTngySEkgVk54NEhJIFZOeDhI SSBWTngxNkhJIChWTngzMkhJICJUQVJHRVRfTUlOX1ZMRU4gPiAzMiIpIChW Tng2NEhJICJUQVJHRVRfTUlOX1ZMRU4gPj0gMTI4IikNCj4gQEAgLTk3Niw2 ICs5ODAsNyBAQCAoZGVmaW5lX21vZGVfYXR0ciBWTSBbDQo+ICAgIChWTngy eDRERiAiVk54NEJJIikgKFZOeDN4NERGICJWTng0QkkiKSAoVk54NHg0REYg IlZOeDRCSSIpDQo+ICAgIChWTngyeDJERiAiVk54MkJJIikgKFZOeDN4MkRG ICJWTngyQkkiKSAoVk54NHgyREYgIlZOeDJCSSIpIChWTng1eDJERiAiVk54 MkJJIikgKFZOeDZ4MkRGICJWTngyQkkiKSAoVk54N3gyREYgIlZOeDJCSSIp IChWTng4eDJERiAiVk54MkJJIikNCj4gICAgKFZOeDJ4MURGICJWTngxQkki KSAoVk54M3gxREYgIlZOeDFCSSIpIChWTng0eDFERiAiVk54MUJJIikgKFZO eDV4MURGICJWTngxQkkiKSAoVk54NngxREYgIlZOeDFCSSIpIChWTng3eDFE RiAiVk54MUJJIikgKFZOeDh4MURGICJWTngxQkkiKQ0KPiArICAoVjJESSAi VjJCSSIpIChWNFNJICJWNEJJIikgKFY4SEkgIlY4QkkiKSAoVjE2UUkgIlYx NkJJIikNCj4gIF0pDQo+DQo+ICAoZGVmaW5lX21vZGVfYXR0ciB2bSBbDQo+ IEBAIC0xMDAzLDYgKzEwMDgsNyBAQCAoZGVmaW5lX21vZGVfYXR0ciB2ZWwg Ww0KPiAgICAoVk54MURJICJkaSIpIChWTngyREkgImRpIikgKFZOeDRESSAi ZGkiKSAoVk54OERJICJkaSIpIChWTngxNkRJICJkaSIpDQo+ICAgIChWTngx U0YgInNmIikgKFZOeDJTRiAic2YiKSAoVk54NFNGICJzZiIpIChWTng4U0Yg InNmIikgKFZOeDE2U0YgInNmIikgKFZOeDMyU0YgInNmIikNCj4gICAgKFZO eDFERiAiZGYiKSAoVk54MkRGICJkZiIpIChWTng0REYgImRmIikgKFZOeDhE RiAiZGYiKSAoVk54MTZERiAiZGYiKQ0KPiArICAoVjJESSAiZGkiKSAoVjRT SSAic2kiKSAoVjhISSAiaGkiKSAoVjE2UUkgInFpIikNCj4gIF0pDQo+DQo+ ICAoZGVmaW5lX21vZGVfYXR0ciBWU1VCRUwgWw0KPiBkaWZmIC0tZ2l0IGEv Z2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItdmxzLm1kIGIvZ2NjL2NvbmZpZy9y aXNjdi92ZWN0b3ItdmxzLm1kDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ IGluZGV4IDAwMDAwMDAwMDAwLi5hZjdlN2E2YzcyNg0KPiAtLS0gL2Rldi9u dWxsDQo+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvdmVjdG9yLXZscy5tZA0K PiBAQCAtMCwwICsxLDY0IEBADQo+ICs7OyBNYWNoaW5lIGRlc2NyaXB0aW9u IGZvciB2ZWN0b3IgbGVuZ3RoIHNwZWNpZmljIHR5cGUgb3BlcmF0aW9uIHdp dGgNCj4gKzs7IFJJU0MtViAnVicgRXh0ZW5zaW9uIGZvciBHTlUgY29tcGls ZXIuDQo+ICs7OyBDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuDQo+ICsNCj4gKzs7IFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdDQy4NCj4gKw0KPiArOzsgR0NDIGlzIGZyZWUgc29mdHdhcmU7IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCj4gKzs7IGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo+ICs7OyB0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzLCBvciAoYXQgeW91ciBv cHRpb24pDQo+ICs7OyBhbnkgbGF0ZXIgdmVyc2lvbi4NCj4gKw0KPiArOzsg R0NDIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsDQo+ICs7OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KPiArOzsgTUVS Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ T1NFLiAgU2VlIHRoZQ0KPiArOzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4NCj4gKw0KPiArOzsgWW91IHNob3VsZCBo YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UNCj4gKzs7IGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUg Q09QWUlORzMuICBJZiBub3Qgc2VlDQo+ICs7OyA8aHR0cDovL3d3dy5nbnUu b3JnL2xpY2Vuc2VzLz4uDQo+ICsNCj4gKyhkZWZpbmVfZXhwYW5kICJtb3Y8 bW9kZT4iDQo+ICsgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZMUyAwICJub25p bW1lZGlhdGVfb3BlcmFuZCIpDQo+ICsgICAgICAgKG1hdGNoX29wZXJhbmQ6 VkxTIDEgInZlY3Rvcl9tb3ZlX29wZXJhbmQiKSldDQo+ICsgICJUQVJHRVRf VkVDVE9SIg0KPiArew0KPiArICAvLyBUT0RPOiBPbmx5IGFsbG93IHJlZ2lz dGVyIGFuZCBtZW1vcnkgbm93LCB3ZSBzaG91bGQgYWxsb3cgbGVnYWwNCj4g KyAgLy8gICAgICAgdmVjdG9yX2NvbnN0IHRvby4NCj4gKyAgaWYgKE1FTV9Q IChvcGVyYW5kc1swXSkgJiYgTUVNX1AgKG9wZXJhbmRzWzFdKSkNCj4gKyAg ICBvcGVyYW5kc1sxXSA9IGZvcmNlX3JlZyAoR0VUX01PREUob3BlcmFuZHNb MV0pLCBvcGVyYW5kc1sxXSk7DQo+ICt9KQ0KPiArDQo+ICsoZGVmaW5lX2lu c25fYW5kX3NwbGl0ICIqbW92PG1vZGU+Ig0KPiArICBbKHNldCAobWF0Y2hf b3BlcmFuZDpWTFMgMCAibm9uaW1tZWRpYXRlX29wZXJhbmQiICI9dnIsdnIs IG0sdnIiKQ0KPiArICAgICAgIChtYXRjaF9vcGVyYW5kOlZMUyAxICJ2ZWN0 b3JfbW92ZV9vcGVyYW5kIiAgIiB2ciwgbSx2cix2aSIpKV0NCj4gKyAgIlRB UkdFVF9WRUNUT1IgJiYNCj4gKyAgIChyZWdpc3Rlcl9vcGVyYW5kIChvcGVy YW5kc1swXSwgPE1PREU+bW9kZSkNCj4gKyAgICB8fCByZWdpc3Rlcl9vcGVy YW5kIChvcGVyYW5kc1sxXSwgPE1PREU+bW9kZSkpIg0KPiArICAiIyINCj4g KyAgInJlbG9hZF9jb21wbGV0ZWQiDQo+ICsgIFsoY29uc3RfaW50IDApXQ0K PiArew0KPiArICBtYWNoaW5lX21vZGUgdmxhX21vZGUgPSByaXNjdl92ZWN0 b3I6Om1pbmltYWxfdmxhX21vZGUgKDxNT0RFPm1vZGUpOw0KPiArICByaXNj dl92ZWN0b3I6OnZsc19pbnNuX2V4cGFuZGVyICgNCj4gKyAgICBjb2RlX2Zv cl9wcmVkX21vdiAodmxhX21vZGUpLCByaXNjdl92ZWN0b3I6OlJWVl9VTk9Q LCBvcGVyYW5kcywNCj4gKyAgICA8TU9ERT5tb2RlLCB2bGFfbW9kZSk7DQo+ ICsgIERPTkU7DQo+ICt9KQ0KPiArDQo+ICsoZGVmaW5lX2luc25fYW5kX3Nw bGl0ICI8b3B0YWI+PG1vZGU+MyINCj4gKyAgWyhzZXQgKG1hdGNoX29wZXJh bmQ6VkxTIDAgInJlZ2lzdGVyX29wZXJhbmQiICI9dnIiKQ0KPiArICAgICAg IChhbnlfaW50X2Jpbm9wX25vX3NoaWZ0OlZMUw0KPiArICAgICAgICAgKG1h dGNoX29wZXJhbmQ6VkxTIDEgInJlZ2lzdGVyX29wZXJhbmQiICJ2ciIpDQo+ ICsgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWTFMgMiAicmVnaXN0ZXJfb3Bl cmFuZCIgInZyIikpKV0NCj4gKyAgIlRBUkdFVF9WRUNUT1IiDQo+ICsgICIj Ig0KPiArICAicmVsb2FkX2NvbXBsZXRlZCINCj4gKyAgWyhjb25zdF9pbnQg MCldDQo+ICt7DQo+ICsgIG1hY2hpbmVfbW9kZSB2bGFfbW9kZSA9IHJpc2N2 X3ZlY3Rvcjo6bWluaW1hbF92bGFfbW9kZSAoPE1PREU+bW9kZSk7DQo+ICsg IHJpc2N2X3ZlY3Rvcjo6dmxzX2luc25fZXhwYW5kZXIgKA0KPiArICAgIGNv ZGVfZm9yX3ByZWQgKDxDT0RFPiwgdmxhX21vZGUpLCByaXNjdl92ZWN0b3I6 OlJWVl9CSU5PUCwNCj4gKyAgICBvcGVyYW5kcywgPE1PREU+bW9kZSwgdmxh X21vZGUpOw0KPiArICBET05FOw0KPiArfSkNCj4gZGlmZiAtLWdpdCBhL2dj Yy9jb25maWcvcmlzY3YvdmVjdG9yLm1kIGIvZ2NjL2NvbmZpZy9yaXNjdi92 ZWN0b3IubWQNCj4gaW5kZXggY2Q2OTZkYTVkODkuLmUzZmQwODA3YjIyIDEw MDY0NA0KPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci5tZA0KPiAr KysgYi9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci5tZA0KPiBAQCAtMjUsNiAr MjUsNyBAQA0KPiAgOzsgLSBJbnRyaW5zaWNzIChodHRwczovL2dpdGh1Yi5j b20vcmlzY3YvcnZ2LWludHJpbnNpYy1kb2MpDQo+ICA7OyAtIEF1dG8tdmVj dG9yaXphdGlvbiAoYXV0b3ZlYy5tZCkNCj4gIDs7IC0gQ29tYmluZSBvcHRp bWl6YXRpb24gKFRCRCkNCj4gKzs7IC0gVkxTIHBhdHRlcm5zICh2ZWN0b3It dmxzLm1kKQ0KPg0KPiAgKGluY2x1ZGUgInZlY3Rvci1pdGVyYXRvcnMubWQi KQ0KPg0KPiBAQCAtODQwNywzICs4NDA4LDQgQEAgKGRlZmluZV9zcGxpdA0K PiAgKQ0KPg0KPiAgKGluY2x1ZGUgImF1dG92ZWMubWQiKQ0KPiArKGluY2x1 ZGUgInZlY3Rvci12bHMubWQiKQ0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9ydnYuZXhwIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9ydnYuZXhwDQo+IGluZGV4IGJm MDM1NzBiOWNjLi5mNmM1NmE2M2FkYSAxMDA2NDQNCj4gLS0tIGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9ydnYuZXhwDQo+ICsrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvcnZ2LmV4cA0K PiBAQCAtNzcsNSArNzcsOSBAQCBmb3JlYWNoIG9wICRBVVRPVkVDX1RFU1Rf T1BUUyB7DQo+ICBkZy1ydW50ZXN0IFtsc29ydCBbZ2xvYiAtbm9jb21wbGFp biAkc3JjZGlyLyRzdWJkaXIvYXV0b3ZlYy92bHMtdmxtYXgvKi5cW2NTXF1d XSBcDQo+ICAgICAgICAgIi1zdGQ9Yzk5IC1PMyAtZnRyZWUtdmVjdG9yaXpl IC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNlPWZpeGVkLXZsbWF4 IiAkQ0ZMQUdTDQo+DQo+ICsjIFZMUyB0ZXN0DQo+ICtnY2MtZGctcnVudGVz dCBbbHNvcnQgW2dsb2IgLW5vY29tcGxhaW4gJHNyY2Rpci8kc3ViZGlyL3Zs cy8qLlxbY1NcXV1dIFwNCj4gKyAgICAgICAiIiAkQ0ZMQUdTDQo+ICsNCj4g ICMgQWxsIGRvbmUuDQo+ICBkZy1maW5pc2gNCj4gZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL2Jpbm9wLXRl bXBsYXRlLmggYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L3Zscy9iaW5vcC10ZW1wbGF0ZS5oDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQo+IGluZGV4IDAwMDAwMDAwMDAwLi4wMTE0YzEyNDY0Ng0KPiAtLS0gL2Rl di9udWxsDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvdmxzL2Jpbm9wLXRlbXBsYXRlLmgNCj4gQEAgLTAsMCArMSwxOCBA QA0KPiArI2luY2x1ZGUgInZscy10eXBlcy5oIg0KPiArI2RlZmluZSBfX0JJ Tk9QKE5BTUUsIE9QLCBWTFNfVFlQRSwgU0NBTEFSX1RZUEUpICAgICAgICAg ICAgICAgXA0KPiArdm9pZCBiaW5vcF8jI05BTUUjI1ZMU19UWVBFICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICAoVkxTX1RZ UEUgKnNyYzEsIFZMU19UWVBFICpzcmMyLCBWTFNfVFlQRSAqZHN0KSAgICAg ICAgICAgICAgXA0KPiAreyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICAgICpk c3QgPSAqc3JjMSBPUCAqc3JjMjsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXA0KPiArfQ0KPiArDQo+ICsjZGVmaW5lIEJJTk9QKFZM U19UWVBFLCBTQ0FMQVJfVFlQRSkgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQo+ICtfX0JJTk9QIChBREQsICssIFZMU19UWVBFLCBTQ0FMQVJfVFlQ RSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gK19fQklO T1AgKE1VTCwgKiwgVkxTX1RZUEUsIFNDQUxBUl9UWVBFKSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXA0KPiArX19CSU5PUCAoRElWLCAvLCBW TFNfVFlQRSwgU0NBTEFSX1RZUEUpICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ICtfX0JJTk9QIChNT0QsICUsIFZMU19UWVBFLCBTQ0FM QVJfVFlQRSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4g K19fQklOT1AgKEFORCwgJiwgVkxTX1RZUEUsIFNDQUxBUl9UWVBFKSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArX19CSU5PUCAoSU9S LCB8LCBWTFNfVFlQRSwgU0NBTEFSX1RZUEUpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ICtfX0JJTk9QIChYT1IsIF4sIFZMU19UWVBF LCBTQ0FMQVJfVFlQRSkNCj4gKw0KPiArRk9SX0VBQ0hfVkxTX1RZUEUoQklO T1ApDQo+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L3Zscy9iaW5vcC12LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L3Zscy9iaW5vcC12LmMNCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLjc4YzFhMTljZmJmDQo+ IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di92bHMvYmlub3Atdi5jDQo+IEBAIC0wLDAgKzEsMTgg QEANCj4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ICsvKiB7IGRnLWFk ZGl0aW9uYWwtb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3YgLW1hYmk9bHA2NCIg fSAqLw0KPiArDQo+ICsjaW5jbHVkZSAiYmlub3AtdGVtcGxhdGUuaCINCj4g Kw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZs aVxzK3plcm8sMTYsZTgsbTF9IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZsaVxzK3plcm8sOCxlMTYsbTF9IH0g fSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0 aXZsaVxzK3plcm8sNCxlMzIsbTF9IH0gfSAqLw0KPiArLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZsaVxzK3plcm8sMixlNjQsbTF9 IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2YWRkXC52dn0gOH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzIHt2bXVsXC52dn0gOH0gfSAqLw0KPiArLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2ZGl2XC52dn0g NH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2ZGl2dVwudnZ9IDQgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsg c2Nhbi1hc3NlbWJsZXItdGltZXMge3ZyZW1cLnZ2fSA0fSB9ICovDQo+ICsv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZyZW11XC52 dn0gNCB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dmFuZFwudnZ9IDh9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dm9yXC52dn0gOCB9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnhvclwu dnZ9IDh9IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvdmxzL2Jpbm9wLXp2ZTMyeC5jIGIvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvYmlub3AtenZlMzJ4 LmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAw MDAuLmJjYTU2YmEzMmE1DQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvYmlub3AtenZl MzJ4LmMNCj4gQEAgLTAsMCArMSwxOCBAQA0KPiArLyogeyBkZy1kbyBjb21w aWxlIH0gKi8NCj4gKy8qIHsgZGctYWRkaXRpb25hbC1vcHRpb25zICItbWFy Y2g9cnYzMmdjX3p2ZTMyeCAtbWFiaT1pbHAzMiIgfSAqLw0KPiArDQo+ICsj aW5jbHVkZSAiYmlub3AtdGVtcGxhdGUuaCINCj4gKw0KPiArLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZsaVxzK3plcm8sMTYsZTgs bTR9IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy IHt2c2V0aXZsaVxzK3plcm8sOCxlMTYsbTR9IH0gfSAqLw0KPiArLyogeyBk Zy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZsaVxzK3plcm8sNCxl MzIsbTR9IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLW5vdCB7dnNldGl2bGlccyt6ZXJvLDIsZTY0LG00fSB9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmFkZFwu dnZ9IDZ9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dm11bFwudnZ9IDZ9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmRpdlwudnZ9IDN9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmRpdnVc LnZ2fSAzIH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzIHt2cmVtXC52dn0gM30gfSAqLw0KPiArLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2cmVtdVwudnZ9IDMgfSB9ICov DQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zh bmRcLnZ2fSA2fSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3Nl bWJsZXItdGltZXMge3ZvclwudnZ9IDYgfSB9ICovDQo+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Z4b3JcLnZ2fSA2fSB9ICov DQo+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L3Zscy9iaW5vcC16dmU2NHguYyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvdmxzL2Jpbm9wLXp2ZTY0eC5jDQo+IG5ldyBm aWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAwLi40NWRjYWQx MmE5Mw0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL2Jpbm9wLXp2ZTY0eC5jDQo+IEBA IC0wLDAgKzEsMTggQEANCj4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ ICsvKiB7IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLW1hcmNoPXJ2MzJnY196 dmU2NHggLW1hYmk9aWxwMzIiIH0gKi8NCj4gKw0KPiArI2luY2x1ZGUgImJp bm9wLXRlbXBsYXRlLmgiDQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDE2LGU4LG0yfSB9IH0gKi8N Cj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlc cyt6ZXJvLDgsZTE2LG0yfSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBz Y2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDQsZTMyLG0yfSB9IH0g Ki8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2 bGlccyt6ZXJvLDIsZTY0LG0yfSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmFkZFwudnZ9IDh9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dm11bFwu dnZ9IDh9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dmRpdlwudnZ9IDR9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmRpdnVcLnZ2fSA0IH0gfSAqLw0K PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2cmVt XC52dn0gNH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzIHt2cmVtdVwudnZ9IDQgfSB9ICovDQo+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZhbmRcLnZ2fSA4fSB9ICov DQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zv clwudnZ9IDggfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3Nl bWJsZXItdGltZXMge3Z4b3JcLnZ2fSA4fSB9ICovDQo+IGRpZmYgLS1naXQg YS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9sb2Fk LXN0b3JlLXRlbXBsYXRlLmggYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L3Zscy9sb2FkLXN0b3JlLXRlbXBsYXRlLmgNCj4gbmV3IGZp bGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLjllYTBjN2Ni NWRjDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbG9hZC1zdG9yZS10ZW1wbGF0ZS5o DQo+IEBAIC0wLDAgKzEsOCBAQA0KPiArI2luY2x1ZGUgInZscy10eXBlcy5o Ig0KPiArI2RlZmluZSBMT0FEX1NUT1JFKFZMU19UWVBFLCBTQ0FMQVJfVFlQ RSkgICAgICAgICAgICAgICAgICAgICAgXA0KPiArdm9pZCBsb2FkX3N0b3Jl XyMjVkxTX1RZUEUgKFZMU19UWVBFICpzcmMsIFZMU19UWVBFICpkc3QpICAg ICAgXA0KPiAreyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICAgICpkc3QgPSAq c3JjOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXA0KPiArfQ0KPiArDQo+ICtGT1JfRUFDSF9WTFNfVFlQRShMT0FE X1NUT1JFKQ0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di92bHMvbG9hZC1zdG9yZS12LmMgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9sb2FkLXN0b3JlLXYuYw0K PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwMC4u YjhhZGNlYTcwZDYNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9sb2FkLXN0b3JlLXYu Yw0KPiBAQCAtMCwwICsxLDE3IEBADQo+ICsvKiB7IGRnLWRvIGNvbXBpbGUg fSAqLw0KPiArLyogeyBkZy1hZGRpdGlvbmFsLW9wdGlvbnMgIi1tYXJjaD1y djY0Z2N2IC1tYWJpPWxwNjQiIH0gKi8NCj4gKw0KPiArI2luY2x1ZGUgImxv YWQtc3RvcmUtdGVtcGxhdGUuaCINCj4gKw0KPiArLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZsaVxzK3plcm8sMTYsZTgsbTF9IH0g fSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0 aXZsaVxzK3plcm8sOCxlMTYsbTF9IH0gfSAqLw0KPiArLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyIHt2c2V0aXZsaVxzK3plcm8sNCxlMzIsbTF9 IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyIHt2 c2V0aXZsaVxzK3plcm8sMixlNjQsbTF9IH0gfSAqLw0KPiArLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2bGU4XC52fSAyIH0gfSAq Lw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 bGUxNlwudn0gMiB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7dmxlMzJcLnZ9IDIgfSB9ICovDQo+ICsvKiB7IGRn LWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZsZTY0XC52fSAyIH0g fSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz IHt2c2U4XC52fSAyIH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyLXRpbWVzIHt2c2UxNlwudn0gMiB9IH0gKi8NCj4gKy8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNlMzJcLnZ9IDIg fSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMge3ZzZTY0XC52fSAyIH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbG9hZC1zdG9yZS16 dmUzMnguYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv dmxzL2xvYWQtc3RvcmUtenZlMzJ4LmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLmVmMzQyNmQwMGExDQo+IC0tLSAv ZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di92bHMvbG9hZC1zdG9yZS16dmUzMnguYw0KPiBAQCAtMCwwICsx LDE3IEBADQo+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiArLyogeyBk Zy1hZGRpdGlvbmFsLW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2NfenZlMzJ4IC1t YWJpPWlscDMyIiB9ICovDQo+ICsNCj4gKyNpbmNsdWRlICJsb2FkLXN0b3Jl LXRlbXBsYXRlLmgiDQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDE2LGU4LG00fSB9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6 ZXJvLDgsZTE2LG00fSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDQsZTMyLG00fSB9IH0gKi8N Cj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge3ZzZXRp dmxpXHMremVybywyLGU2NCxtNH0gfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZsZThcLnZ9IDIgfSB9ICovDQo+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZsZTE2 XC52fSAyIH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzIHt2bGUzMlwudn0gMiB9IH0gKi8NCj4gKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge3ZsZTY0XC52fSB9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNlOFwu dn0gMiB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dnNlMTZcLnZ9IDIgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZTMyXC52fSAyIH0gfSAqLw0K PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCB7dnNlNjRc LnZ9IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di92bHMvbG9hZC1zdG9yZS16dmU2NHguYyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL2xvYWQtc3Rv cmUtenZlNjR4LmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXgg MDAwMDAwMDAwMDAuLmUwMzIyMGQ4OWY4DQo+IC0tLSAvZGV2L251bGwNCj4g KysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMv bG9hZC1zdG9yZS16dmU2NHguYw0KPiBAQCAtMCwwICsxLDE3IEBADQo+ICsv KiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiArLyogeyBkZy1hZGRpdGlvbmFs LW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2NfenZlNjR4IC1tYWJpPWlscDMyIiB9 ICovDQo+ICsNCj4gKyNpbmNsdWRlICJsb2FkLXN0b3JlLXRlbXBsYXRlLmgi DQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNl dGl2bGlccyt6ZXJvLDE2LGU4LG0yfSB9IH0gKi8NCj4gKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDgsZTE2LG0y fSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7 dnNldGl2bGlccyt6ZXJvLDQsZTMyLG0yfSB9IH0gKi8NCj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDIsZTY0 LG0yfSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dmxlOFwudn0gMiB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmxlMTZcLnZ9IDIgfSB9ICovDQo+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZsZTMy XC52fSAyIH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzIHt2bGU2NFwudn0gMiB9IH0gKi8NCj4gKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNlOFwudn0gMiB9IH0gKi8N Cj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNl MTZcLnZ9IDIgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3Nl bWJsZXItdGltZXMge3ZzZTMyXC52fSAyIH0gfSAqLw0KPiArLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2U2NFwudn0gMiB9IH0g Ki8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvdmxzL21vdmUtdGVtcGxhdGUuaCBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL21vdmUtdGVtcGxhdGUuaA0KPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwMC4uZTMy OGE0MjIwNGMNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zscy9tb3ZlLXRlbXBsYXRlLmgN Cj4gQEAgLTAsMCArMSwxMyBAQA0KPiArI2luY2x1ZGUgInZscy10eXBlcy5o Ig0KPiArDQo+ICsjZGVmaW5lIE1PVkUoVkxTX1RZUEUsIFNDQUxBUl9UWVBF KSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICt2b2lkIG1vdmVf IyNWTFNfVFlQRSAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwNCj4gK3sgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4g KyAgICByZWdpc3RlciBWTFNfVFlQRSBzcmMjI1ZMU19UWVBFIF9fYXNtX18g KCJ2MCIpOyAgICAgICAgICAgIFwNCj4gKyAgICByZWdpc3RlciBWTFNfVFlQ RSBkc3QjI1ZMU19UWVBFIF9fYXNtX18gKCJ2OCIpOyAgICAgICAgICAgIFwN Cj4gKyAgICBfX2FzbV9fIHZvbGF0aWxlICgiI2RlZiIgOiAiPXZyIihzcmMj I1ZMU19UWVBFKSk7ICAgICAgICAgIFwNCj4gKyAgICBkc3QjI1ZMU19UWVBF ID0gc3JjIyNWTFNfVFlQRTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwNCj4gKyAgICBfX2FzbV9fIHZvbGF0aWxlICgiI3VzZSIgOiA6ICJ2ciIo ZHN0IyNWTFNfVFlQRSkpOyAgICAgICAgIFwNCj4gK30NCj4gKw0KPiArRk9S X0VBQ0hfVkxTX1RZUEUoTU9WRSkNCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL21vdmUtdi5jIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS12LmMN Cj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAu LjkxYzg5ZGYwOThlDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92bHMvbW92ZS12LmMNCj4g QEAgLTAsMCArMSwxMCBAQA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8N Cj4gKy8qIHsgZGctYWRkaXRpb25hbC1vcHRpb25zICItbWFyY2g9cnY2NGdj diAtbWFiaT1scDY0IiB9ICovDQo+ICsNCj4gKyNpbmNsdWRlICJtb3ZlLXRl bXBsYXRlLmgiDQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt YmxlciB7dnNldGl2bGlccyt6ZXJvLDE2LGU4LG0xfSB9IH0gKi8NCj4gKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJv LDgsZTE2LG0xfSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDQsZTMyLG0xfSB9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6 ZXJvLDIsZTY0LG0xfSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dm12XC52XC52fSA4IH0gfSAqLw0KPiBkaWZm IC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92 bHMvbW92ZS16dmUzMnguYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvdmxzL21vdmUtenZlMzJ4LmMNCj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLjE3NTk4NmVkZjE1DQo+IC0t LSAvZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di92bHMvbW92ZS16dmUzMnguYw0KPiBAQCAtMCwwICsxLDEw IEBADQo+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiArLyogeyBkZy1h ZGRpdGlvbmFsLW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2NfenZlMzJ4IC1tYWJp PWlscDMyIiB9ICovDQo+ICsNCj4gKyNpbmNsdWRlICJtb3ZlLXRlbXBsYXRl LmgiDQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7 dnNldGl2bGlccyt6ZXJvLDE2LGU4LG00fSB9IH0gKi8NCj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlciB7dnNldGl2bGlccyt6ZXJvLDgsZTE2 LG00fSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ciB7dnNldGl2bGlccyt6ZXJvLDQsZTMyLG00fSB9IH0gKi8NCj4gKy8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge3ZzZXRpdmxpXHMremVy bywyLGU2NCxtNH0gfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMge3Ztdlwudlwudn0gNiB9IH0gKi8NCj4gZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxz L21vdmUtenZlNjR4LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L3Zscy9tb3ZlLXp2ZTY0eC5jDQo+IG5ldyBmaWxlIG1vZGUgMTAw NjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAwLi4yZTU3NGIxZjNlZQ0KPiAtLS0g L2Rldi9udWxsDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvdmxzL21vdmUtenZlNjR4LmMNCj4gQEAgLTAsMCArMSwxMCBA QA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gKy8qIHsgZGctYWRk aXRpb25hbC1vcHRpb25zICItbWFyY2g9cnYzMmdjX3p2ZTY0eCAtbWFiaT1p bHAzMiIgfSAqLw0KPiArDQo+ICsjaW5jbHVkZSAibW92ZS10ZW1wbGF0ZS5o Ig0KPiArDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIge3Zz ZXRpdmxpXHMremVybywxNixlOCxtMn0gfSB9ICovDQo+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXIge3ZzZXRpdmxpXHMremVybyw4LGUxNixt Mn0gfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIg e3ZzZXRpdmxpXHMremVybyw0LGUzMixtMn0gfSB9ICovDQo+ICsvKiB7IGRn LWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIge3ZzZXRpdmxpXHMremVybywyLGU2 NCxtMn0gfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItdGltZXMge3Ztdlwudlwudn0gOCB9IH0gKi8NCj4gZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdmxzL3Zscy10 eXBlcy5oIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92 bHMvdmxzLXR5cGVzLmgNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5k ZXggMDAwMDAwMDAwMDAuLjMwMjgyM2I1ODNmDQo+IC0tLSAvZGV2L251bGwN Cj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92 bHMvdmxzLXR5cGVzLmgNCj4gQEAgLTAsMCArMSw0MiBAQA0KPiArI2lmbmRl ZiBfX1ZMU19UWVBFX0gNCj4gKyNkZWZpbmUgX19WTFNfVFlQRV9IDQo+ICsj aW5jbHVkZSA8c3RkaW50LWdjYy5oPg0KPiArDQo+ICt0eXBlZGVmICBpbnQ4 X3QgaW50OHgxNl90IF9fYXR0cmlidXRlX18gKCh2ZWN0b3Jfc2l6ZSAoMTYp KSk7DQo+ICt0eXBlZGVmIGludDE2X3QgaW50MTZ4OF90IF9fYXR0cmlidXRl X18gKCh2ZWN0b3Jfc2l6ZSAoMTYpKSk7DQo+ICt0eXBlZGVmIGludDMyX3Qg aW50MzJ4NF90IF9fYXR0cmlidXRlX18gKCh2ZWN0b3Jfc2l6ZSAoMTYpKSk7 DQo+ICt0eXBlZGVmIGludDY0X3QgaW50NjR4Ml90IF9fYXR0cmlidXRlX18g KCh2ZWN0b3Jfc2l6ZSAoMTYpKSk7DQo+ICsNCj4gK3R5cGVkZWYgIHVpbnQ4 X3QgdWludDh4MTZfdCBfX2F0dHJpYnV0ZV9fICgodmVjdG9yX3NpemUgKDE2 KSkpOw0KPiArdHlwZWRlZiB1aW50MTZfdCB1aW50MTZ4OF90IF9fYXR0cmli dXRlX18gKCh2ZWN0b3Jfc2l6ZSAoMTYpKSk7DQo+ICt0eXBlZGVmIHVpbnQz Ml90IHVpbnQzMng0X3QgX19hdHRyaWJ1dGVfXyAoKHZlY3Rvcl9zaXplICgx NikpKTsNCj4gK3R5cGVkZWYgdWludDY0X3QgdWludDY0eDJfdCBfX2F0dHJp YnV0ZV9fICgodmVjdG9yX3NpemUgKDE2KSkpOw0KPiArDQo+ICsNCj4gKyNp ZiBfX3Jpc2N2X3ZfZWxlbiA9PSAzMg0KPiArDQo+ICsjZGVmaW5lIEZPUl9F QUNIX1ZMU19UWVBFKEZVTkMpIFwNCj4gKyAgICBGVU5DIChpbnQ4eDE2X3Qs IGludDhfdCkgXA0KPiArICAgIEZVTkMgKGludDE2eDhfdCwgaW50MTZfdCkg XA0KPiArICAgIEZVTkMgKGludDMyeDRfdCwgaW50MzJfdCkgXA0KPiArICAg IEZVTkMgKHVpbnQ4eDE2X3QsIHVpbnQ4X3QpIFwNCj4gKyAgICBGVU5DICh1 aW50MTZ4OF90LCB1aW50MTZfdCkgXA0KPiArICAgIEZVTkMgKHVpbnQzMng0 X3QsIHVpbnQzMl90KQ0KPiArDQo+ICsjZWxpZiBfX3Jpc2N2X3ZfZWxlbiA9 PSA2NA0KPiArDQo+ICsjZGVmaW5lIEZPUl9FQUNIX1ZMU19UWVBFKEZVTkMp IFwNCj4gKyAgICBGVU5DIChpbnQ4eDE2X3QsIGludDhfdCkgXA0KPiArICAg IEZVTkMgKGludDE2eDhfdCwgaW50MTZfdCkgXA0KPiArICAgIEZVTkMgKGlu dDMyeDRfdCwgaW50MzJfdCkgXA0KPiArICAgIEZVTkMgKGludDY0eDJfdCwg aW50NjRfdCkgXA0KPiArICAgIEZVTkMgKHVpbnQ4eDE2X3QsIHVpbnQ4X3Qp IFwNCj4gKyAgICBGVU5DICh1aW50MTZ4OF90LCB1aW50MTZfdCkgXA0KPiAr ICAgIEZVTkMgKHVpbnQzMng0X3QsIHVpbnQzMl90KSBcDQo+ICsgICAgRlVO QyAodWludDY0eDJfdCwgdWludDY0X3QpDQo+ICsNCj4gKyNlbHNlDQo+ICsj ZXJyb3IgInp2ZSogb3IgdiBleHRlbnNpb24gaXMgcmVxdWlyZWQuIg0KPiAr I2VuZGlmDQo+ICsNCj4gKyNlbmRpZg0KPiAtLQ0KPiAyLjQwLjENCj4NCiAN Cg== ------=_001_NextPart408165145753_=------