From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbgsg1.qq.com (smtpbgsg1.qq.com [54.254.200.92]) by sourceware.org (Postfix) with ESMTPS id 260CE3858D1E for ; Wed, 8 Nov 2023 06:33:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 260CE3858D1E Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 260CE3858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=54.254.200.92 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699425188; cv=none; b=JiYqacQYz48YjXfjsSyKhKTNB4YCpnxCOy6uW/ZymNQirPrZMmwYzc53oRVS6JIU85Zplt93PwlqZTi1KIfbPJoYjNnJpbSGTaUF/wvrIq3PE28/Um5wTbKiXIZCK431Cm8IsvbWxa2SK+R5sBFQm8HRIHAU6pIiMSzpkaCgcyU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699425188; c=relaxed/simple; bh=NJGOLVodACznuFmb3XS90Sc9gS8vtRETi3aQZaLKLBo=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=Dyu5g59ymI3QTqPYczuI4KQzlqdzb299lwyWUrIg/35ren0wVv9a/ugIk6qLXjqRm4gQzHE7a9ambL6vlIWoZQms5so3R7mrHsuYQS5ZlzNOlYEqb+7rwk2FgU+9xnlxCt/+NGT9bRm9B640ekI5iqJ4h1YtNJ0MkWLFKR1VlVU= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp64t1699425176tiv24lcu Received: from LAPTOP-EPITNQBU ( [121.35.180.247]) by bizesmtp.qq.com (ESMTP) with id ; Wed, 08 Nov 2023 14:32:54 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: UJd4nZbM1CcH9VmzxClkr+ZHiE5RZ9z79Ptn31begQhMqcmau9ysekwzagaTo xFjNFqbEGiBgm+Jwacv04hwhbVmnB3Rm6BmGwmnj3J2hvIVZ0uE9lWxNKrLddeiKkph8X65 jRYlEQ8dVxzPNgPhzIwOEPeMa3R0nVifcPzkpXJDGiBUaFnIHr3ScryMQGR06T5XhUPrCNK 5tPkCHNUFBh/Zr+su+iItIjN1XJnK7dcB8A0pTLgGVZVYV8BanoJHhuqdoyIVe8F2shavVm o7FsU3NLNzu20H8CuIvg8a7jpracdmQJ43PXXMe7Ztte5WPxe3/nXwom1EBTyuIUs4IaVwV dG7NoE2uP+oavnhPoM+2/wP0yE47nfCdYhmridOB1BaqtJAnmjKjZUZLrquSUtsrQFtxNwk oLI85SDVfpbql6RMsR2Vu6Hr6t7GxD5z53URawLv+gQ= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 18302480674523105254 Date: Wed, 8 Nov 2023 14:32:54 +0800 From: "juzhe.zhong@rivai.ai" To: kito.cheng Cc: gcc-patches , Kito.cheng , jeffreyalaw , "Robin Dapp" Subject: Re: Re: [PATCH] RISC-V: Normalize user vsetvl intrinsics[PR112092] References: <20231108061035.3975866-1-juzhe.zhong@rivai.ai>, X-Priority: 3 X-GUID: 196E8C5E-58D1-49B7-A71F-A7A037E6AC15 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: <4455E700467F9EEF+2023110814325435125916@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart254033228622_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-7.3 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,LIKELY_SPAM_BODY,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SCC_10_SHORT_WORD_LINES,SCC_20_SHORT_WORD_LINES,SCC_35_SHORT_WORD_LINES,SCC_5_SHORT_WORD_LINES,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE 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_NextPart254033228622_=---- Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 TW9yZSBkZXRhaWxzOg0KDQpiYiAxICAgYmIgMg0KICBcICAgIC8NCiAgIGJi IDMNCg0KVlNFVFZMIFBBU1MgY2FuIG9ubHkgZG8gVlNFVFZMIGRlbWFuZCBm dXNpb24sIGZ1c2UgZGVtYW5kIGZyb20gYmIgMyB0byBiYiAxLCBhbmQgZnVz ZSBkZW1hbmQgZnJvbSBiYiAzIHRvIGJiMi4NCldlIGFyZSBub3QgYWJsZSB0 byByZW1vdmUgYmxvY2sgYmIgMSBhbmQgYmIgMiBhbmQgY3JlYXRlIG5ldyBi YiA0IHRvIGhvbGQgdGhlIHZzZXR2bCBpZiBiYiAxIGFuZCBiYiAyIGhhcyB0 aGUgc2FtZSB2c2V0dmw6DQoNCmJiIDQgKG5ldyBibG9jaykNCiAgfA0KYmIg Mw0KDQpJIGRvbid0IHRoaW5rIHdlIHNob3VsZCBkbyB0aGlzIG9uIFZTRVRW TCBQQVNTLg0KDQoNCmp1emhlLnpob25nQHJpdmFpLmFpDQogDQpGcm9tOiBL aXRvIENoZW5nDQpEYXRlOiAyMDIzLTExLTA4IDE0OjE2DQpUbzogSnV6aGUt WmhvbmcNCkNDOiBnY2MtcGF0Y2hlczsga2l0by5jaGVuZzsgamVmZnJleWFs YXc7IHJkYXBwLmdjYw0KU3ViamVjdDogUmU6IFtQQVRDSF0gUklTQy1WOiBO b3JtYWxpemUgdXNlciB2c2V0dmwgaW50cmluc2ljc1tQUjExMjA5Ml0NCkkg dGhvdWdodCB2c2V0dmxpIGluc2VydGlvbiB3aWxsIHRyeSB0byBtZXJnZSB0 aGVtIGludG8gb25lIGZvciB0aG9zZQ0KY2FzZXM/IENvdWxkIHlvdSBleHBs YWluIGZldyBtb3JlIHJlYXNvbnMgd2h5IHRoZXkgYXJlIG5vdCBmdXNlZCBu b3c/DQpOb3QgYW4gb2JqZWN0aW9uIHNpbmNlIEkgY291bGQgaW1hZ2Vpbmcg dGhhdCB3b3VsZCBiZSBlYXNpZXIgdG8NCnByb2Nlc3MsIGp1c3Qgd29uZGVy aW5nIHdoeS4NCiANCk9uIFdlZCwgTm92IDgsIDIwMjMgYXQgMjoxMeKAr1BN IEp1emhlLVpob25nIDxqdXpoZS56aG9uZ0ByaXZhaS5haT4gd3JvdGU6DQo+ DQo+IFNpbmNlIG91ciB1c2VyIHZzZXR2bCBpbnRyaW5zaWNzIGFyZSBkZWZp bmVkIGFzIGp1c3QgY2FsY3VsYXRlIHRoZSBWTCBvdXRwdXQNCj4gd2hpY2gg aXMgdGhlIG51bWJlciBvZiB0aGUgZWxlbWVudHMgdG8gYmUgcHJvY2Vzc2Vk LiBTdWNoIGludHJpbnNpY3MgZG8gbm90DQo+IGhhdmUgYW55IHNpZGUgZWZm ZWN0cy4gIFdlIHNob3VsZCBub3JtYWxpemUgdGhlbSB3aGVuIHRoZXkgaGF2 ZSBzYW1lIHJhdGlvLg0KPg0KPiBFLmcgX19yaXNjdl92c2V0dmxfZThtZjgg cmVzdWx0IGlzIHNhbWUgYXMgX19yaXNjdl92c2V0dmxfZTY0bTEuDQo+DQo+ IE5vcm1hbGl6ZSB0aGVtIGNhbiBhbGxvdyB1cyBoYXZlIGJldHRlciBjb2Rl Z2VuLg0KPiBDb25zaWRlciB0aGlzIGZvbGxvd2luZyBleGFtcGxlOg0KPg0K PiAjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+DQo+IHZvaWQgZm9vKGlu dDMyX3QgKmluMSwgaW50MzJfdCAqaW4yLCBpbnQzMl90ICppbjMsIGludDMy X3QgKm91dCwgc2l6ZV90IG4sIGludCBjb25kLCBpbnQgYXZsKSB7DQo+DQo+ ICAgc2l6ZV90IHZsOw0KPiAgIGlmIChjb25kKQ0KPiAgICAgdmwgPSBfX3Jp c2N2X3ZzZXR2bF9lMzJtMShhdmwpOw0KPiAgIGVsc2UNCj4gICAgIHZsID0g X19yaXNjdl92c2V0dmxfZTE2bWYyKGF2bCk7DQo+ICAgZm9yIChzaXplX3Qg aSA9IDA7IGkgPCBuOyBpICs9IDEpIHsNCj4gICAgIHZpbnQzMm0xX3QgYSA9 IF9fcmlzY3ZfdmxlMzJfdl9pMzJtMShpbjEsIHZsKTsNCj4gICAgIHZpbnQz Mm0xX3QgYiA9IF9fcmlzY3ZfdmxlMzJfdl9pMzJtMV90dShhLCBpbjIsIHZs KTsNCj4gICAgIHZpbnQzMm0xX3QgYyA9IF9fcmlzY3ZfdmxlMzJfdl9pMzJt MV90dShiLCBpbjMsIHZsKTsNCj4gICAgIF9fcmlzY3ZfdnNlMzJfdl9pMzJt MShvdXQsIGMsIHZsKTsNCj4gICB9DQo+IH0NCj4NCj4gQmVmb3JlIHRoaXMg cGF0Y2g6DQo+DQo+IGZvbzoNCj4gICAgICAgICBiZXEgICAgIGE1LHplcm8s LkwyDQo+ICAgICAgICAgdnNldHZsaSBhNixhNixlMzIsbTEsdHUsbWENCj4g LkwzOg0KPiAgICAgICAgIGxpICAgICAgYTUsMA0KPiAgICAgICAgIGJlcSAg ICAgYTQsemVybywuTDkNCj4gLkw0Og0KPiAgICAgICAgIHZsZTMyLnYgdjEs MChhMCkNCj4gICAgICAgICBhZGRpICAgIGE1LGE1LDENCj4gICAgICAgICB2 bGUzMi52IHYxLDAoYTEpDQo+ICAgICAgICAgdmxlMzIudiB2MSwwKGEyKQ0K PiAgICAgICAgIHZzZTMyLnYgdjEsMChhMykNCj4gICAgICAgICBibmUgICAg IGE0LGE1LC5MNA0KPiAuTDk6DQo+ICAgICAgICAgcmV0DQo+IC5MMjoNCj4g ICAgICAgICB2c2V0dmxpIHplcm8sYTYsZTMyLG0xLHR1LG1hDQo+ICAgICAg ICAgaiAgICAgICAuTDMNCj4NCj4gQWZ0ZXIgdGhpcyBwYXRjaDoNCj4NCj4g Zm9vOg0KPiAgICAgICAgIGxpICAgICAgYTUsMA0KPiAgICAgICAgIHZzZXR2 bGkgemVybyxhNixlMzIsbTEsdHUsbWENCj4gICAgICAgICBiZXEgICAgIGE0 LHplcm8sLkw5DQo+IC5MNDoNCj4gICAgICAgICB2bGUzMi52IHYxLDAoYTAp DQo+ICAgICAgICAgYWRkaSAgICBhNSxhNSwxDQo+ICAgICAgICAgdmxlMzIu diB2MSwwKGExKQ0KPiAgICAgICAgIHZsZTMyLnYgdjEsMChhMikNCj4gICAg ICAgICB2c2UzMi52IHYxLDAoYTMpDQo+ICAgICAgICAgYm5lICAgICBhNCxh NSwuTDQNCj4gLkw5Og0KPiAgICAgICAgIHJldA0KPg0KPiAgICAgICAgIFBS IHRhcmdldC8xMTIwOTINCj4NCj4gZ2NjL0NoYW5nZUxvZzoNCj4NCj4gICAg ICAgICAqIGNvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtYmFz ZXMuY2M6IE5vcm1hbGl6ZSB0aGUgdnNldHZscy4NCj4NCj4gZ2NjL3Rlc3Rz dWl0ZS9DaGFuZ2VMb2c6DQo+DQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jp c2N2L3J2di92c2V0dmwvcHIxMDk3NDMtMS5jOiBBZGFwdCB0ZXN0Lg0KPiAg ICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ByMTA5NzQz LTMuYzogRGl0dG8uDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2 di92c2V0dmwvdnNldHZsLTExLmM6IERpdHRvLg0KPiAgICAgICAgICogZ2Nj LnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bC0xNS5jOiBEaXR0by4N Cj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0 dmwtMjIuYzogRGl0dG8uDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2 L3J2di92c2V0dmwvdnNldHZsbWF4LTEzLmM6IERpdHRvLg0KPiAgICAgICAg ICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1heC0xNS5j OiBEaXR0by4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L3Zz ZXR2bC92c2V0dmxtYXgtNS5jOiBEaXR0by4NCj4gICAgICAgICAqIGdjYy50 YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgtNy5jOiBEaXR0by4N Cj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0 dmxtYXgtOC5jOiBEaXR0by4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlz Y3YvcnZ2L3ZzZXR2bC9wcjExMjA5Mi0xLmM6IE5ldyB0ZXN0Lg0KPiAgICAg ICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ByMTEyMDkyLTIu YzogTmV3IHRlc3QuDQo+DQo+IC0tLQ0KPiAgLi4uL3Jpc2N2L3Jpc2N2LXZl Y3Rvci1idWlsdGlucy1iYXNlcy5jYyAgICAgIHwgMjQgKysrKysrKysrKysr Ky0tLS0tDQo+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3By MTA5NzQzLTEuYyAgfCAgMiArLQ0KPiAgLi4uL2djYy50YXJnZXQvcmlzY3Yv cnZ2L3ZzZXR2bC9wcjEwOTc0My0zLmMgIHwgIDMgKy0tDQo+ICAuLi4vZ2Nj LnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ByMTEyMDkyLTEuYyAgfCAyNSAr KysrKysrKysrKysrKysrKysrDQo+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9y dnYvdnNldHZsL3ByMTEyMDkyLTIuYyAgfCAyNSArKysrKysrKysrKysrKysr KysrDQo+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2 bC0xMS5jICAgfCAgMiArLQ0KPiAgLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2 L3ZzZXR2bC92c2V0dmwtMTUuYyAgIHwgIDIgKy0NCj4gIC4uLi9nY2MudGFy Z2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsLTIyLmMgICB8ICAyICstDQo+ ICAuLi4vcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgtMTMuYyAgICAgICAg ICAgfCAgNCArLS0NCj4gIC4uLi9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1h eC0xNS5jICAgICAgICAgICB8ICA2ICsrLS0tDQo+ICAuLi4vZ2NjLnRhcmdl dC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1heC01LmMgfCAgNCArLS0NCj4g IC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsbWF4LTcu YyB8ICAyICstDQo+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZs L3ZzZXR2bG1heC04LmMgfCAgNCArLS0NCj4gIDEzIGZpbGVzIGNoYW5nZWQs IDgzIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQ0KPiAgY3JlYXRl IG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvdnNldHZsL3ByMTEyMDkyLTEuYw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3By MTEyMDkyLTIuYw0KPg0KPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtYmFzZXMuY2MgYi9nY2MvY29uZmln L3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1iYXNlcy5jYw0KPiBpbmRl eCAwMjk4Yjc5ODdhMS4uZDcwNDY4NTQyZWUgMTAwNjQ0DQo+IC0tLSBhL2dj Yy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmNj DQo+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0 aW5zLWJhc2VzLmNjDQo+IEBAIC0xMzEsMTkgKzEzMSwzMSBAQCBwdWJsaWM6 DQo+DQo+ICAgICAgdHJlZSB0eXBlID0gYnVpbHRpbl90eXBlc1tlLnR5cGUu aW5kZXhdLnZlY3RvcjsNCj4gICAgICBtYWNoaW5lX21vZGUgbW9kZSA9IFRZ UEVfTU9ERSAodHlwZSk7DQo+IC0gICAgbWFjaGluZV9tb2RlIGlubmVyX21v ZGUgPSBHRVRfTU9ERV9JTk5FUiAobW9kZSk7DQo+ICsgICAgLyogTm9ybWFs aXplIHNhbWUgUkFUTyAoU0VXL0xNVUwpIGludG8gc2FtZSB2c2V0dmwgaW5z dHJ1Y3Rpb24uDQo+ICsNCj4gKyAgICAgICAgLSBlOCxtZjgvZTE2LG1mNC9l MzIsbWYyL2U2NCxtMSAtLT4gZThtZjgNCj4gKyAgICAgICAgLSBlOCxtZjQv ZTE2LG1mMi9lMzIsbTEvZTY0LG0yICAtLT4gZThtZjQNCj4gKyAgICAgICAg LSBlOCxtZjIvZTE2LG0xL2UzMixtMi9lNjQsbTQgICAtLT4gZThtZjINCj4g KyAgICAgICAgLSBlOCxtMS9lMTYsbTIvZTMyLG00L2U2NCxtOCAgICAtLT4g ZThtMQ0KPiArICAgICAgICAtIGU4LG0yL2UxNixtNC9lMzIsbTggICAgICAg ICAgIC0tPiBlOG0yDQo+ICsgICAgICAgIC0gZTgsbTQvZTE2LG04ICAgICAg ICAgICAgICAgICAgLS0+IGU4bTQNCj4gKyAgICAgICAgLSBlOCxtOCAgICAg ICAgICAgICAgICAgICAgICAgICAtLT4gZThtOA0KPiArICAgICovDQo+ICAg ICAgLyogU0VXLiAgKi8NCj4gLSAgICBlLmFkZF9pbnB1dF9vcGVyYW5kIChQ bW9kZSwNCj4gLSAgICAgICAgICAgICAgICAgICAgICAgIGdlbl9pbnRfbW9k ZSAoR0VUX01PREVfQklUU0laRSAoaW5uZXJfbW9kZSksIFBtb2RlKSk7DQo+ ICsgICAgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1vZGUsIGdlbl9pbnRfbW9k ZSAoOCwgUG1vZGUpKTsNCj4NCj4gICAgICAvKiBMTVVMLiAgKi8NCj4gLSAg ICBlLmFkZF9pbnB1dF9vcGVyYW5kIChQbW9kZSwgZ2VuX2ludF9tb2RlIChn ZXRfdmxtdWwgKG1vZGUpLCBQbW9kZSkpOw0KPiArICAgIG1hY2hpbmVfbW9k ZSBlOF9tb2RlDQo+ICsgICAgICA9IGdldF92ZWN0b3JfbW9kZSAoUUltb2Rl LCBHRVRfTU9ERV9OVU5JVFMgKG1vZGUpKS5yZXF1aXJlICgpOw0KPiArICAg IGUuYWRkX2lucHV0X29wZXJhbmQgKFBtb2RlLCBnZW5faW50X21vZGUgKGdl dF92bG11bCAoZThfbW9kZSksIFBtb2RlKSk7DQo+DQo+ICAgICAgLyogVEFJ TF9BTlkuICAqLw0KPiAtICAgIGUuYWRkX2lucHV0X29wZXJhbmQgKFBtb2Rl LCBnZW5faW50X21vZGUgKGdldF9wcmVmZXJfdGFpbF9wb2xpY3kgKCksIFBt b2RlKSk7DQo+ICsgICAgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1vZGUsDQo+ ICsgICAgICAgICAgICAgICAgICAgICAgICBnZW5faW50X21vZGUgKGdldF9w cmVmZXJfdGFpbF9wb2xpY3kgKCksIFBtb2RlKSk7DQo+DQo+ICAgICAgLyog TUFTS19BTlkuICAqLw0KPiAtICAgIGUuYWRkX2lucHV0X29wZXJhbmQgKFBt b2RlLCBnZW5faW50X21vZGUgKGdldF9wcmVmZXJfbWFza19wb2xpY3kgKCks IFBtb2RlKSk7DQo+ICsgICAgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1vZGUs DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICBnZW5faW50X21vZGUgKGdl dF9wcmVmZXJfbWFza19wb2xpY3kgKCksIFBtb2RlKSk7DQo+ICAgICAgcmV0 dXJuIGUuZ2VuZXJhdGVfaW5zbiAoY29kZV9mb3JfdnNldHZsX25vX3NpZGVf ZWZmZWN0cyAoUG1vZGUpKTsNCj4gICAgfQ0KPiAgfTsNCj4gZGlmZiAtLWdp dCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZs L3ByMTA5NzQzLTEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvdnNldHZsL3ByMTA5NzQzLTEuYw0KPiBpbmRleCBmMzAyNzVjODI4 MC4uZTkyNzgyOWMxNTEgMTAwNjQ0DQo+IC0tLSBhL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ByMTA5NzQzLTEuYw0KPiAr KysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2 bC9wcjEwOTc0My0xLmMNCj4gQEAgLTIyLDUgKzIyLDUgQEAgdm9pZCBmIChp bnQzMl90ICogYSwgaW50MzJfdCAqIGIsIGludCBuKQ0KPiAgICAgICAgfQ0K PiAgfQ0KPg0KPiAtLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c2V0dmxpXHMrW2EteDAtOV0rLFxzKlthLXgwLTldKyxccyplMzIs XHMqbTEsXHMqdFthdV0sXHMqbVthdV19IDIgeyB0YXJnZXQgeyBuby1vcHRz ICItTzAiIG5vLW9wdHMgIi1PMSIgbm8tb3B0cyAiLU9zIiBuby1vcHRzICIt T3oiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9 IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c2V0dmxpXHMrW2EteDAtOV0rLFxzKlthLXgwLTldK30gMiB7IHRh cmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLU8xIiBuby1vcHRzICIt T3MiIG5vLW9wdHMgIi1PeiIgbm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5y b2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+ICAvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGl9IDIgeyB0YXJnZXQgeyBuby1v cHRzICItTzAiIG5vLW9wdHMgIi1PMSIgbm8tb3B0cyAiLU9zIiBuby1vcHRz ICItT3oiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIg fSB9IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvcHIxMDk3NDMtMy5jIGIvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvcHIxMDk3NDMt My5jDQo+IGluZGV4IDVkYmM4NzFlZDEyLi45ODYzMGExY2EwMiAxMDA2NDQN Cj4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92 c2V0dmwvcHIxMDk3NDMtMy5jDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ByMTA5NzQzLTMuYw0KPiBAQCAt MjIsNyArMjIsNiBAQCB2b2lkIGYgKGludDMyX3QgKiBhLCBpbnQzMl90ICog YiwgaW50IG4pDQo+ICAgICAgICB9DQo+ICB9DQo+DQo+IC0vKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14MC05 XSssXHMqW2EteDAtOV0rLFxzKmU4LFxzKm1mMixccyp0W2F1XSxccyptW2F1 XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLU8xIiBu by1vcHRzICItT3MiIG5vLW9wdHMgIi1PeiIgbm8tb3B0cyAiLWciIG5vLW9w dHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+IC0vKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14MC05 XSssXHMqW2EteDAtOV0rLFxzKmUzMixccyptMSxccyp0W2F1XSxccyptW2F1 XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLU8xIiBu by1vcHRzICItT3MiIG5vLW9wdHMgIi1PeiIgbm8tb3B0cyAiLWciIG5vLW9w dHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14MC05 XSssXHMqW2EteDAtOV0rfSAyIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBu by1vcHRzICItTzEiIG5vLW9wdHMgIi1PcyIgbm8tb3B0cyAiLU96IiBuby1v cHRzICItZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8N Cj4gIC8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNl dHZsaVxzK3plcm8sXHMqW2EteDAtOV0rLFxzKmUzMixccyptMSxccyp0W2F1 XSxccyptW2F1XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0 cyAiLU8xIiBuby1vcHRzICItT3MiIG5vLW9wdHMgIi1PeiIgbm8tb3B0cyAi LWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+ICAv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGl9 IDMgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5vLW9wdHMgIi1PMSIgbm8t b3B0cyAiLU9zIiBuby1vcHRzICItT3oiIG5vLW9wdHMgIi1nIiBuby1vcHRz ICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvcHIx MTIwOTItMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di92c2V0dmwvcHIxMTIwOTItMS5jDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQo+IGluZGV4IDAwMDAwMDAwMDAwLi44NTdhYjBjZDFlNg0KPiAtLS0gL2Rl di9udWxsDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvdnNldHZsL3ByMTEyMDkyLTEuYw0KPiBAQCAtMCwwICsxLDI1IEBA DQo+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiArLyogeyBkZy1vcHRp b25zICItbWFyY2g9cnYzMmdjdiAtbWFiaT1pbHAzMiAtZm5vLXNjaGVkdWxl LWluc25zIC1mbm8tc2NoZWR1bGUtaW5zbnMyIiB9ICovDQo+ICsNCj4gKyNp bmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gKw0KPiArdm9pZCBmb28oaW50 MzJfdCAqaW4xLCBpbnQzMl90ICppbjIsIGludDMyX3QgKmluMywgaW50MzJf dCAqb3V0LCBzaXplX3QgbiwgaW50IGNvbmQsIGludCBhdmwpIHsNCj4gKw0K PiArICBzaXplX3Qgdmw7DQo+ICsgIGlmIChjb25kID09IDEpDQo+ICsgICAg dmwgPSBfX3Jpc2N2X3ZzZXR2bF9lMzJtMShhdmwpOw0KPiArICBlbHNlIGlm IChjb25kID09IDIpDQo+ICsgICAgdmwgPSBfX3Jpc2N2X3ZzZXR2bF9lOG1m NChhdmwpOw0KPiArICBlbHNlIGlmIChjb25kID09IDIpDQo+ICsgICAgdmwg PSBfX3Jpc2N2X3ZzZXR2bF9lMTZtZjIoYXZsKTsNCj4gKyAgZWxzZQ0KPiAr ICAgIHZsID0gX19yaXNjdl92c2V0dmxfZTY0bTIoYXZsKTsNCj4gKyAgZm9y IChzaXplX3QgaSA9IDA7IGkgPCBuOyBpICs9IDEpIHsNCj4gKyAgICB2aW50 MzJtMV90IGEgPSBfX3Jpc2N2X3ZsZTMyX3ZfaTMybTEoaW4xLCB2bCk7DQo+ ICsgICAgdmludDMybTFfdCBiID0gX19yaXNjdl92bGUzMl92X2kzMm0xX3R1 KGEsIGluMiwgdmwpOw0KPiArICAgIHZpbnQzMm0xX3QgYyA9IF9fcmlzY3Zf dmxlMzJfdl9pMzJtMV90dShiLCBpbjMsIHZsKTsNCj4gKyAgICBfX3Jpc2N2 X3ZzZTMyX3ZfaTMybTEob3V0LCBjLCB2bCk7DQo+ICsgIH0NCj4gK30NCj4g Kw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2V0dmxpfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICIt T3MiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9 IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di92c2V0dmwvcHIxMTIwOTItMi5jIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvcHIxMTIwOTItMi5j DQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAw Li4yYjA4NDRmZjk3Nw0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ByMTEyMDky LTIuYw0KPiBAQCAtMCwwICsxLDI1IEBADQo+ICsvKiB7IGRnLWRvIGNvbXBp bGUgfSAqLw0KPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnYzMmdjdiAt bWFiaT1pbHAzMiAtZm5vLXNjaGVkdWxlLWluc25zIC1mbm8tc2NoZWR1bGUt aW5zbnMyIiB9ICovDQo+ICsNCj4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3Iu aCINCj4gKw0KPiArdm9pZCBmb28oaW50MzJfdCAqaW4xLCBpbnQzMl90ICpp bjIsIGludDMyX3QgKmluMywgaW50MzJfdCAqb3V0LCBzaXplX3QgbiwgaW50 IGNvbmQpIHsNCj4gKw0KPiArICBzaXplX3Qgdmw7DQo+ICsgIGlmIChjb25k ID09IDEpDQo+ICsgICAgdmwgPSBfX3Jpc2N2X3ZzZXR2bG1heF9lMzJtMSgp Ow0KPiArICBlbHNlIGlmIChjb25kID09IDIpDQo+ICsgICAgdmwgPSBfX3Jp c2N2X3ZzZXR2bG1heF9lOG1mNCgpOw0KPiArICBlbHNlIGlmIChjb25kID09 IDIpDQo+ICsgICAgdmwgPSBfX3Jpc2N2X3ZzZXR2bG1heF9lMTZtZjIoKTsN Cj4gKyAgZWxzZQ0KPiArICAgIHZsID0gX19yaXNjdl92c2V0dmxtYXhfZTY0 bTIoKTsNCj4gKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBuOyBpICs9IDEp IHsNCj4gKyAgICB2aW50MzJtMV90IGEgPSBfX3Jpc2N2X3ZsZTMyX3ZfaTMy bTEoaW4xLCB2bCk7DQo+ICsgICAgdmludDMybTFfdCBiID0gX19yaXNjdl92 bGUzMl92X2kzMm0xX3R1KGEsIGluMiwgdmwpOw0KPiArICAgIHZpbnQzMm0x X3QgYyA9IF9fcmlzY3ZfdmxlMzJfdl9pMzJtMV90dShiLCBpbjMsIHZsKTsN Cj4gKyAgICBfX3Jpc2N2X3ZzZTMyX3ZfaTMybTEob3V0LCBjLCB2bCk7DQo+ ICsgIH0NCj4gK30NCj4gKw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNz ZW1ibGVyLXRpbWVzIHt2c2V0dmxpfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAi LU8wIiBuby1vcHRzICItT3MiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVu cm9sbC1sb29wcyIgfSB9IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsLTEx LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2 bC92c2V0dmwtMTEuYw0KPiBpbmRleCA4OTM2ZDNiZTZhNy4uYjY2NWJiODRl YjcgMTAwNjQ0DQo+IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvdnNldHZsL3ZzZXR2bC0xMS5jDQo+ICsrKyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bC0xMS5j DQo+IEBAIC0xOCw0ICsxOCw0IEBAIHZvaWQgZm9vKGludDMyX3QgKmluMSwg aW50MzJfdCAqaW4yLCBpbnQzMl90ICppbjMsIGludDMyX3QgKm91dCwgc2l6 ZV90IG4sIGludCBjDQo+ICAgIH0NCj4gIH0NCj4NCj4gLS8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaX0gMiB7IHRhcmdl dCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLU9zIiBuby1vcHRzICItZyIg bm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gKy8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaX0gMSB7 IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLU9zIiBuby1vcHRz ICItZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4g ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvdnNldHZsL3ZzZXR2bC0xNS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsLTE1LmMNCj4gaW5kZXggYzY3 N2E4MWQ3MDYuLmExOTU0ZTdhMDlhIDEwMDY0NA0KPiAtLS0gYS9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmwtMTUu Yw0KPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L3ZzZXR2bC92c2V0dmwtMTUuYw0KPiBAQCAtMTgsNSArMTgsNSBAQCB2b2lk IGZvbyhpbnQzMl90ICppbjEsIGludDMyX3QgKmluMiwgaW50MzJfdCAqaW4z LCBpbnQzMl90ICpvdXQsIHNpemVfdCBuLCBpbnQgYw0KPiAgICB9DQo+ICB9 DQo+DQo+IC0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzZXR2bGl9IDMgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5vLW9wdHMg Ii1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAqLw0KPiAr LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxp fSAzIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICItT3MiIG5v LW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAq Lw0KPiAgLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtz cmxpXHMrW2EteDAtOV0rLFxzKlthLXgwLTldKyxccyo0fSAxIHsgdGFyZ2V0 IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICItZyIgbm8tb3B0cyAiLWZ1bnJv bGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bC0yMi5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwv dnNldHZsLTIyLmMNCj4gaW5kZXggMTAzZjQyMzhjNzYuLjk4ZGY0MzFiY2Vk IDEwMDY0NA0KPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L3ZzZXR2bC92c2V0dmwtMjIuYw0KPiArKysgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmwtMjIuYw0K PiBAQCAtMTgsNCArMTgsNCBAQCB2b2lkIGYoaW50OF90ICpiYXNlLCBpbnQ4 X3QgKm91dCwgc2l6ZV90IHZsLCBzaXplX3QgbSwgc2l6ZV90IGspIHsNCj4N Cj4gIC8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7c2xs aVxzK1thLXgwLTldKyxccypbYS14MC05XSssXHMqNH0gMSB7IHRhcmdldCB7 IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xs LWxvb3BzIiB9IH0gfSB9ICovDQo+ICAvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMge3ZzZXR2bGl9IDIgeyB0YXJnZXQgeyBuby1vcHRz ICItTzAiIG5vLW9wdHMgIi1PcyIgbm8tb3B0cyAiLU96IiBuby1vcHRzICIt ZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gLS8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxz K3plcm8sXHMqW2EteDAtOV0rLFxzKmU4LFxzKm1mOCxccyp0W2F1XSxccypt W2F1XX0gMiB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLWci IG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+ICsvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccyt6 ZXJvLFxzKlthLXgwLTldKyxccyplOCxccyptZjgsXHMqdFthdV0sXHMqbVth dV19IDIgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5vLW9wdHMgIi1PcyIg bm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9 ICovDQo+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgtMTMuYyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1heC0xMy5j DQo+IGluZGV4IDFiOTJjYjg3NmNjLi4wMTYwZDczMmZjMyAxMDA2NDQNCj4g LS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0 dmwvdnNldHZsbWF4LTEzLmMNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsbWF4LTEzLmMNCj4gQEAg LTIyLDYgKzIyLDYgQEAgdm9pZCBmb28oaW50MzJfdCAqaW4xLCBpbnQzMl90 ICppbjIsIGludDMyX3QgKmluMywgaW50MzJfdCAqb3V0LCBzaXplX3Qgbiwg aW50IGMNCj4gIH0NCj4NCj4gIC8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyB7dnNldHZsaVxzK3plcm8sXHMqW2EteDAtOV0rLFxzKmUz MixccyptMSxccyp0dSxccyptW2F1XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMg Ii1PMCIgbm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9 IH0gfSB9ICovDQo+IC0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIt dGltZXMge3ZzZXR2bGlccytbYS14MC05XSssXHMqemVybyxccyplMzIsXHMq bTEsXHMqdFthdV0sXHMqbVthdV19IDEgeyB0YXJnZXQgeyBuby1vcHRzICIt TzAiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9 IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c2V0dmxpXHMrW2EteDAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbWY0 LFxzKnRbYXVdLFxzKm1bYXVdfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8w IiBuby1vcHRzICItZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9 IH0gKi8NCj4gIC8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1l cyB7dnNldHZsaVxzK1thLXgwLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mOCxc cyp0W2F1XSxccyptW2F1XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIg bm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9 ICovDQo+IC0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzZXR2bGl9IDMgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5vLW9wdHMg Ii1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAqLw0KPiBc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUNCj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaX0gMyB7IHRhcmdldCB7 IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xs LWxvb3BzIiB9IH0gfSB9ICovDQo+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgtMTUu YyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZs L3ZzZXR2bG1heC0xNS5jDQo+IGluZGV4IDc5YTZmMjcxOTk3Li5hODQ5NzIx MDQ3MyAxMDA2NDQNCj4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsbWF4LTE1LmMNCj4gKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZs bWF4LTE1LmMNCj4gQEAgLTE4LDYgKzE4LDYgQEAgdm9pZCBmb28oaW50MzJf dCAqaW4xLCBpbnQzMl90ICppbjIsIGludDMyX3QgKmluMywgaW50MzJfdCAq b3V0LCBzaXplX3QgbiwgaW50IGMNCj4gICAgfQ0KPiAgfQ0KPg0KPiAtLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMr W2EteDAtOV0rLFxzKnplcm8sXHMqZTMyLFxzKm0xLFxzKnRbYXVdLFxzKm1b YXVdfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICItZyIg bm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gLS8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaX0gMyB7 IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLWciIG5vLW9wdHMg Ii1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+IC0vKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3NsbGlccytbYS14MC05XSssXHMq W2EteDAtOV0rLFxzKjV9IDEgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5v LW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAq Lw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2V0dmxpXHMrW2EteDAtOV0rLFxzKnplcm8sXHMqZTMyLFxzKm0xLFxzKnRb YXVdLFxzKm1bYXVdfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1v cHRzICItT3MiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29w cyIgfSB9IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzIHt2c2V0dmxpfSAzIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8w IiBuby1vcHRzICItT3MiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9s bC1sb29wcyIgfSB9IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyLXRpbWVzIHtzbGxpXHMrW2EteDAtOV0rLFxzKlthLXgwLTld Kyxccyo1fSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICIt T3MiIG5vLW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9 IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsbWF4LTUuYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1heC01 LmMNCj4gaW5kZXggMGEzYTVhM2QyZDcuLjBlNmIxNGVlM2U5IDEwMDY0NA0K PiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3Zz ZXR2bC92c2V0dmxtYXgtNS5jDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1heC01LmMNCj4gQEAg LTE3LDUgKzE3LDUgQEAgdm9pZCBmb28odm9pZCAqaW4xLCB2b2lkICppbjIs IHZvaWQgKmluMywgdm9pZCAqb3V0LCBzaXplX3Qgbikgew0KPiAgICB9DQo+ ICB9DQo+DQo+IC0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMge3ZzZXR2bGlccytbYS14MC05XSssXHMqemVybyxccyplMzIsXHMqbTEs XHMqdHUsXHMqbVthdV19IDEgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5v LW9wdHMgIi1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAq Lw0KPiAtLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2V0dmxpfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICIt ZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxz K1thLXgwLTldKyxccyp6ZXJvLFxzKmUzMixccyptMSxccyp0dSxccyptW2F1 XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLU8xIiBu by1vcHRzICItZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0g Ki8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dnNldHZsaX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAi LU8xIiBuby1vcHRzICItZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0g fSB9IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvdnNldHZsL3ZzZXR2bG1heC03LmMgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgt Ny5jDQo+IGluZGV4IDBlZTA0ZWUwNGM5Li4xNWU5OTUzNzQ2MiAxMDA2NDQN Cj4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92 c2V0dmwvdnNldHZsbWF4LTcuYw0KPiArKysgYi9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgtNy5jDQo+IEBA IC0xNyw3ICsxNyw3IEBAIHZvaWQgZm9vKHZvaWQgKmluMSwgdm9pZCAqaW4y LCB2b2lkICppbjMsIHZvaWQgKm91dCwgc2l6ZV90IG4pIHsNCj4gICAgfQ0K PiAgfQ0KPg0KPiAtLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c2V0dmxpXHMrW2EteDAtOV0rLFxzKnplcm8sXHMqZTE2LFxzKm0x LFxzKnRbYXVdLFxzKm1bYXVdfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8w IiBuby1vcHRzICItZyIgbm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9 IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1l cyB7dnNldHZsaVxzK1thLXgwLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mMixc cyp0W2F1XSxccyptW2F1XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIg bm8tb3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9 ICovDQo+ICAvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzZXR2bGlccytbYS14MC05XSssXHMqemVybyxccyplOCxccyptMSxccyp0 W2F1XSxccyptW2F1XX0gMSB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8t b3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICov DQo+ICAvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zz ZXR2bGlccyt6ZXJvLFxzKlthLXgwLTldKyxccyplMzIsXHMqbTEsXHMqdHUs XHMqbVthdV19IDEgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5vLW9wdHMg Ii1nIiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAqLw0KPiAg LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxp XHMremVybyxccypbYS14MC05XSssXHMqZTgsXHMqbWYyLFxzKnR1LFxzKm1b YXVdfSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICItZyIg bm8tb3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvdnNl dHZsL3ZzZXR2bG1heC04LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L3ZzZXR2bC92c2V0dmxtYXgtOC5jDQo+IGluZGV4IGEwMzM1 YTM0NjQ1Li5jYWEyMTAzZGE1ZCAxMDA2NDQNCj4gLS0tIGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di92c2V0dmwvdnNldHZsbWF4LTgu Yw0KPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L3ZzZXR2bC92c2V0dmxtYXgtOC5jDQo+IEBAIC0xOCw1ICsxOCw1IEBAIHZv aWQgZm9vKGludDMyX3QgKmluMSwgaW50MzJfdCAqaW4yLCBpbnQzMl90ICpp bjMsIGludDMyX3QgKm91dCwgc2l6ZV90IG4sIGludCBjDQo+ICAgIH0NCj4g IH0NCj4NCj4gLS8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1l cyB7dnNldHZsaVxzK1thLXgwLTldKyxccyp6ZXJvLFxzKmUzMixccyptMSxc cyp0dSxccyptW2F1XX0gMiB7IHRhcmdldCB7IG5vLW9wdHMgIi1PMCIgbm8t b3B0cyAiLWciIG5vLW9wdHMgIi1mdW5yb2xsLWxvb3BzIiB9IH0gfSB9ICov DQo+IC0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zz ZXR2bGl9IDIgeyB0YXJnZXQgeyBuby1vcHRzICItTzAiIG5vLW9wdHMgIi1n IiBuby1vcHRzICItZnVucm9sbC1sb29wcyIgfSB9IH0gfSAqLw0KPiArLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMr W2EteDAtOV0rLFxzKnplcm8sXHMqZTMyLFxzKm0xLFxzKnR1LFxzKm1bYXVd fSAxIHsgdGFyZ2V0IHsgbm8tb3B0cyAiLU8wIiBuby1vcHRzICItZyIgbm8t b3B0cyAiLWZ1bnJvbGwtbG9vcHMiIH0gfSB9IH0gKi8NCj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaX0gMSB7IHRh cmdldCB7IG5vLW9wdHMgIi1PMCIgbm8tb3B0cyAiLWciIG5vLW9wdHMgIi1m dW5yb2xsLWxvb3BzIiB9IH0gfSB9ICovDQo+IC0tDQo+IDIuMzYuMw0KPg0K IA0K ------=_001_NextPart254033228622_=------