From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbg154.qq.com (smtpbg154.qq.com [15.184.224.54]) by sourceware.org (Postfix) with ESMTPS id 65A1B3857716 for ; Tue, 11 Apr 2023 11:35:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 65A1B3857716 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: bizesmtp85t1681212942tr80jzkx Received: from LAPTOP-EPITNQBU ( [58.60.1.20]) by bizesmtp.qq.com (ESMTP) with id ; Tue, 11 Apr 2023 19:35:41 +0800 (CST) X-QQ-SSF: 01400000000000F0O000000A0000000 X-QQ-FEAT: k8Irs33ik7tzTP4cs2uBZEbDJKZb9PnLwAl2JfkuwTFj6K+R/VyR+AH99tXQu FmfeJFN3tEIH0VaeutL6TWpZfoNHu1oDqIg0dQtDICVrDnGEYQ8LH1dpXjBwpGNjBOhQSjI qjMTT/oJe0aiaOkeEiWpG302JQqUaBa5wFS5YWJowJZJQVxsITZrBdYM2LW5dCICORjNrgf 0LCa5jOm6l3Bb6MvHjYgvADQ+kMtCWZVGM1LY6BQliDOjTbqewTphVhjGB8ARQbQO5cGHJ5 JFaAr4tznneaI+jpjuoaWJ90sJMF7f7tevL4Ds3lObwjTffisqyqk42mrdTjKbE/GLNspI4 pzZ8gfMIe03HgrVX5ivFWUwBjU2ogIiGFVLfDLfAZ0md9p6B5Jg/Vp6cetNCb9ghCDYk7Fp h4ylpOZrLjlN9oBcfRGQEabf5BkHSaMW X-QQ-GoodBg: 2 X-BIZMAIL-ID: 7702586636821237210 Date: Tue, 11 Apr 2023 19:35:42 +0800 From: "juzhe.zhong@rivai.ai" To: "Richard Biener" Cc: jeffreyalaw , gcc-patches , kito.cheng , palmer Subject: Re: Re: [PATCH] RISC-V: Fix PR108279 References: <20230327065907.155807-1-juzhe.zhong@rivai.ai>, <7117f9e5-2a82-87d5-66e9-633d9f55cc2d@gmail.com>, <127758663DFFBC5C+2023040306404192617341@rivai.ai>, <7a8ef74e-6091-2ab9-7831-8fef2f8b8a63@gmail.com>, <25FF0653055C8F40+2023040521531356688620@rivai.ai>, , , X-Priority: 3 X-GUID: E38EF2B5-0B23-4A1B-8E33-75CBB3164665 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: <175085CE36628821+2023041119354188183416@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart017874446626_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvr:qybglogicsvr7 X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_NUMSUBJECT,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,RCVD_IN_SORBS_WEB,SCC_10_SHORT_WORD_LINES,SCC_5_SHORT_WORD_LINES,SPF_HELO_PASS,SPF_PASS,TXREP,T_KAM_HTML_FONT_INVALID autolearn=no 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_NextPart017874446626_=---- Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 T2gsIHNvcnJ5IGZvciBkaWRuJ3QgZXhwbGFpbiB0aGlzIGNsZWFybHkuDQpJ biB0aGlzIGV4YW1wbGUsIHRoZSAidmxlMzIiIHNob3VsZCBiZSB1c2luZyBz YW1lIFZMIGFzICJ2YWRkIiB0aGF0IEkgZGlkbid0IG1lbnRpb24uDQoNCkJ1 dCB3ZSBkbyBoYXZlIG90aGVyIGluc3RydWN0aW9ucyBkb2Vzbid0IGNhcmUg YWJvdXQgVkwgb3BlcmFuZC4gU28gbGV0IG1lIGV4cGxhaW4gbW9yZSBjbGVh cmx5Lg0KU2FtZSBleGFtcGxlIEkgcmVwZWF0ZWQgYWdhaW46DQpMb29wOg0K ew0KYmIgMDoNCnZzZXR2bCBWTCwgZTgsbWY4LFRBDQp2YWRkIChEZW1hbmQg U0VXID0gOCwgTE1VTCA9IE1GOCwgY2FuIGVpdGhlciBUVSBvciBUQSwgZGVt YW5kIFZMKQ0KYmIgMToNCnZzZXR2bCBWTCwgZTMyIG1mMixUVQ0KdmxlMzIg KERlbWFuZCBSQVRJTyAoU0VXL0xNVUwpID0gNjQsIHNvIGF2YWlsYWJsZSBb U0VXLCBMTVVMXSA9IFtlOCxtZjggb3IgZTE2LG1mNCBvciBlMzIsbWYyIG9y IGU2NCxtMV0sIGFuZCBkZW1hbmQgVFUsIGRlbWFuZCBWTCkNCn0NCkluIHRo aXMgZXhhbXBsZSwgd2hlbiB0aGUgIlZMIiBvZiB2YWRkIGlzIHRoZSBzYW1l IGFzICJWTCIgZm8gdmxlMzIsIHRoZW4gd2Ugc2hvdWxkIGRvIGlzIGdlbmVy YXRlIGEgbmV3IHZzZXR2bCAidnNldHZsIFZMLCBlMzIsbWYyLFRVIiBvdXRz aWRlIHRoZSBsb29wDQp0aGVuLCByZW1vdmUgdGhvc2UgMiB2c2V0dmwgaW5z aWRlIHRoZSBsb29wLg0KDQpBbm90aGVyIGV4YW1wbGUgaXMgdGhhdCB3ZSBk byBoYXZlIHNvbWUgcnZ2IGluc3RydWN0aW9ucyBkb2Vzbid0IGRlbWFuZCAi VkwiOg0KTG9vcDoNCnsNCmJiIDA6DQp2c2V0dmwgZTgsbTEsVEEgKGNhbiBi ZSBhbnkgVkwsIGNhbiBiZSBhbnkgTE1VTCkNCnZtdi54LnMgKERlbWFuZCBT RVcgPSA4LCBMTVVMIGRlZmF1bHQgdmFsdWUgPSAxIChIb3dldmVyLCBpdCdz IGF2YWlsYWJsZSBhbHNvIGZvciBhbGwgTE1VTCksIHRhaWwgcG9saWN0eSBj YW4gYmUgZWl0aGVyIFRVIG9yIFRBLCBkbyBub3QgZGVtYW5kIFZMKQ0KYmIg MToNCnZzZXR2bCBWTCwgZTMyIG1mMixUVQ0KdmxlMzIgKERlbWFuZCBSQVRJ TyAoU0VXL0xNVUwpID0gNjQsIHNvIGF2YWlsYWJsZSBbU0VXLCBMTVVMXSA9 IFtlOCxtZjggb3IgZTE2LG1mNCBvciBlMzIsbWYyIG9yIGU2NCxtMV0sIGFu ZCBkZW1hbmQgVFUsIGRlbWFuZCBWTCkNCn0NCg0KVGhlbiBpbiB0aGlzIGNh c2UsIHdlIHNob3VsZCBnZW5lcmF0ZSAidnNldHZsIFZMICh0aGlzIFZMIGlz IGZyb20gdmxlMzIudiksIGU4LCBtZjgsIFRVIG91dHNpZGUgdGhlIGxvb3As DQpBbmQgZWxpbWluYXRlIHRob3NlIDIgaW5zdHJ1Y3Rpb25zIGluc2lkZSB0 aGUgbG9vcC4NCg0KSG1tbSwgbWF5IG5vdCBiZSBlYXN5IHRvIHVuZGVyc3Rh bmQgc2luY2UgUlZWIGluc3RydWN0aW9ucyBoYXZlIHZhcmlvdXMgdnNldHZs IGNvbmZpZ3VyYXRpb24uIA0KDQpTb21lIGluc3RydWN0aW9ucyBsaWtlIHZs ZTMyLi4ubG9hZC9zdG9yZXMsIHRoZXkgZGVtYW5kIFJBVElPID0gU0VXL0xN VUwsIG1lYW5uaW5nIHRoZXkgZG9uJ3QgbmVlZCB0aGUgZXhhY3RseSB0aGUg U0VXIGFuZCBMTVVMIGp1c3Qgb25seSBTRVcvTE1VTCByYXRpbyB3aWxsIGJl IGVub3VnaC4NClNvbWUgaW5zdHJ1Y3Rpb25zIGxpa2UgdmFkZCwgdnN1Yiwu Li50aGV5IGRlbWFuZCBleGFjdGx5IFNFVyAmJiBMTVVMIHRvIGJlIGV4YWN0 IHZhbHVlLCB0aGUgU0VXL0xNVUwgcmF0aW8gaXMgbm90IGVub3VnaC4NClNv bWUgaW5zdHJ1Y3Rpb25zIGxpa2UgY29tcGFyaXNvbiBpbnN0cnVjdGlvbnMs IHRoZXkgZG9uJ3QgY2FyZSBhYm91dCB0YWlsIHBvbGljeS4uLi4NClNvbWUg aW5zdHJ1Y3Rpb25zIGxpa2Ugdm12LngucywgZG9lc24ndCBjYXJlIGFib3V0 IFZMLg0KLi4uLmV0Yy4NClF1aXRlIGNvbXBsaWNhdGVkLCBzbyB3ZSBoYXZl IGRlZmluZWQgc2V2ZXJhbCBmdXNpb24gcnVsZXMgaW4gVlNFVFZMIFBBU1Mu Li4uDQoNCg0KanV6aGUuemhvbmdAcml2YWkuYWkNCiANCkZyb206IFJpY2hh cmQgQmllbmVyDQpEYXRlOiAyMDIzLTA0LTExIDE5OjE5DQpUbzoganV6aGUu emhvbmdAcml2YWkuYWkNCkNDOiBqZWZmcmV5YWxhdzsgZ2NjLXBhdGNoZXM7 IGtpdG8uY2hlbmc7IHBhbG1lcg0KU3ViamVjdDogUmU6IFJlOiBbUEFUQ0hd IFJJU0MtVjogRml4IFBSMTA4Mjc5DQpPbiBUdWUsIEFwciAxMSwgMjAyMyBh dCAxMToxOeKAr0FNIGp1emhlLnpob25nQHJpdmFpLmFpDQo8anV6aGUuemhv bmdAcml2YWkuYWk+IHdyb3RlOg0KPg0KPiBObywgd2UgY2FuIG9ubHkgcGFz cyAiYXZhaWxhYmxlIiB0byBMQ00uDQo+IFBhc3NpbmcgImNvbXBhdGlibGUi IHRvIExDTSBjYW4gbm90IHdvcmsgZm9yIHVzLg0KPg0KPiBMQ00gY2FuIG9u bHkgaGVscCBmb3IgZWxpbWluYXRlIHZzZXR2bHMgY2FuIG5vdCBoZWxwIGZv ciBmdXNlIHZzZXR2bHMuDQo+DQo+IEZvciBleGFtcGxlOg0KPg0KPiBiYiAw Og0KPiB2c2V0dmwgZTgsbWY4DQo+IHZhZGQgKERlbWFuZCBTRVcgPSA4LCBM TVVMID0gTUY4KQ0KPiBiYiAxOg0KPiB2c2V0dmwgZTMyIG1mMg0KPiB2bGUz MiAoRGVtYW5kIFJBVElPIChTRVcvTE1VTCkgPSA2NCwgc28gYXZhaWxhYmxl IFtTRVcsIExNVUxdID0gW2U4LG1mOCBvciBlMTYsbWY0IG9yIGUzMixtZjIg b3IgZTY0LG0xXSkNCj4NCj4gSSB1c2UgTENNIHRvIGhhbmRsZSB0aGUgY2Fz ZSBhYm92ZSwgSSB0ZWxsIExDTSB0aGF0IHRoZSB2c2V0dmwgb2YgdmFkZCBp cyAiYXZhaWxhYmxlIiBmb3IgdGhlIGZvbGxvd2luZyAidmxlIiBpbnN0cnVj dGlvbi4NCj4gVGhlbiBMQ00gd2lsbCBsZXQgdXMgdG8gcmVtb3ZlICJ2c2V0 dmwgZTMybWYyIg0KPiBUaGlzIGlzIHdoYXQgSSBzYWlkICJhdmFpbGFibGUi IGNhc2UgdGhhdCBJIHVzZSBMQ00gdG8gaGFuZGxlLg0KPg0KPiBIb3dldmVy LCBMQ00gY2FuIG5vdCBoYW5kbGUgImNvbXBhdGlibGUiIGNhc2UuIEhlcmUg aXMgdGhlIGV4YW1wbGU6DQo+DQo+IExvb3A6DQo+IHsNCj4gYmIgMDoNCj4g dnNldHZsIGU4LG1mOCxUQQ0KPiB2YWRkIChEZW1hbmQgU0VXID0gOCwgTE1V TCA9IE1GOCwgY2FuIGVpdGhlciBUVSBvciBUQSkNCj4gYmIgMToNCj4gdnNl dHZsIGUzMiBtZjIsVFUNCj4gdmxlMzIgKERlbWFuZCBSQVRJTyAoU0VXL0xN VUwpID0gNjQsIHNvIGF2YWlsYWJsZSBbU0VXLCBMTVVMXSA9IFtlOCxtZjgg b3IgZTE2LG1mNCBvciBlMzIsbWYyIG9yIGU2NCxtMV0sIGFuZCBkZW1hbmQg VFUpDQo+IH0NCiANClNvIGZvciB0aGlzIGNhc2UgdGhlIHZsZTMyIGluc3Ry dWN0aW9uIGlzIHRoZSBvbmUgdGhhdCBhbHNvIHdvcmtzIHdpdGgNCm90aGVy IFZMLCB3aGljaCBtZWFucyB0aGUgdnNldHZsIGlzIHRvbyBzdHJpY3QuICBJ IGFncmVlDQppZiB0aGUgYWJvdmUgaXMgdGhlIGlucHV0IHRvIExDTSB0aGVu IGl0J3MgZGlmZmljdWx0IHRvIG1ha2UgaXQgd29yay4NCkJ1dCB0aGVuIG1h eWJlIGluaXRpYWwgcGxhY2VtZW50IHNob3VsZCBiZSBvbmx5DQpkb25lIGZv ciBzdHJpY3QgY2FzZXMuICBBbnl3YXkgLSBJJ20ganVzdCB0aHJvd2luZyBp biB3aWxkIGd1ZXNzZXMgaGVyZS4NCiANCj4gSXQncyBvYnZpb3VzIHRoYXQg bmVpdGhlciAidnNldHZsIGU4LG1mOCxUQSIgbm9yICJ2c2V0dmwgZTMyIG1m MixUVSIgYXJlIGF2YWlsYWJsZSBmb3IgYm90aCBpbnN0cnVjdGlvbnMgInZh ZGQiIGFuZCAidmxlIi4NCj4gVGhhdCdzIHdoeSB3ZSBuZWVkIFBoYXNlIDMg aW4gVlNFVFZMIFBBU1MuDQo+IEkgZG8gdGhlIGRlbWFuZCBmdXNpb24gZ2Vu ZXJhdGUgYSBuZXcgdnNldHZsIGluc3RydWN0aW9ucyAidnNldHZsIGU4LG1m OCxUVSIgd2hpY2ggaXMgYXZhaWxhYmxlIGZvciBib3RoIFJWViBpbnN0cnVj dGlvbnMgInZhZGQiIGFuZCAidmxlIiwNCj4gYW5kIHVwZGF0ZSB0aGUgZmly c3QgdnNldHZsICJ2c2V0dmwgZTgsbWY4LFRBIiB0byAgInZzZXR2bCBlOCxt ZjgsVFUiDQo+DQo+IFRoZW4sIEkgdGVsbCBMQ00gInZzZXR2bCBlOCxtZjgs VFUiIGlzIGF2YWlsYWJsZSBmb3IgYm90aCAidmFkZCIgYW5kICJ2bGUzMiIs IHNvIExDTSB3aWxsIGhvaXN0ICJ2c2V0dmwgZTgsbWY4LFRVIiBvdXRzaWRl IHRoZSBMT09QDQo+IGFuZCByZW1vdmUgYWxsIHZzZXR2bHMgaW5zaWRlIHRo ZSBsb29wLg0KPg0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xw0KPiBqdXpoZS56aG9uZ0ByaXZhaS5haQ0KPg0KPg0KPiBGcm9tOiBSaWNo YXJkIEJpZW5lcg0KPiBEYXRlOiAyMDIzLTA0LTExIDE2OjU1DQo+IFRvOiBq dXpoZS56aG9uZw0KPiBDQzogSmVmZiBMYXc7IGdjYy1wYXRjaGVzOyBraXRv LmNoZW5nOyBwYWxtZXINCj4gU3ViamVjdDogUmU6IFJlOiBbUEFUQ0hdIFJJ U0MtVjogRml4IFBSMTA4Mjc5DQo+IE9uIFdlZCwgQXByIDUsIDIwMjMgYXQg Mzo1M+KAr1BNIDxqdXpoZS56aG9uZ0ByaXZhaS5haT4gd3JvdGU6DQo+ID4N Cj4gPiA+PiBTbyBmdXNpb24gaW4gdGhpcyBjb250ZXh0IGlzIHJlYWxseSBh Ym91dCBpZGVudGlmeWluZyBjYXNlcyB3aGVyZSB0d28NCj4gPiA+PiBjb25m aWd1cmF0aW9uIHNldHRpbmdzIGFyZSBlcXVpdmFsZW50IGFuZCB5b3UgImZ1 c2UiIHRoZW0gdG9nZXRoZXIuDQo+ID4gPj4gUHJlc3VtYWJseSB0aGlzIGlz IG9ubHkgZ29pbmcgdG8gYmUgcG9zc2libGUgd2hlbiB0aGUgdmVjdG9yIGlu c25zIGFyZQ0KPiA+ID4+IGp1c3QgZG9pbmcgZGF0YSBtb3ZlbWVudCByYXRo ZXIgdGhhbiBhY3R1YWwgY29tcHV0YXRpb25zPw0KPiA+DQo+ID4gPj4gSWYg bXkgdW5kZXJzdGFuZGluZyBpcyBjb3JyZWN0LCBJIGNhbiBraW5kIG9mIHNl ZSB3aHkgeW91J3JlIGRvaW5nDQo+ID4gPj4gZnVzaW9uIGR1cmluZyBwaGFz ZSAzLiAgTXkgc2Vuc2UgaXMgdGhlcmUncyBhIGJldHRlciB3YXksIGJ1dCBJ J20gaGF2aW5nDQo+ID4gPj4gYSBiaXQgb2YgdHJvdWJsZSB3b3JraW5nIG91 dCB0aGUgZGV0YWlscyBvZiB3aGF0IHRoYXQgc2hvdWxkIGJlIHRvDQo+ID4g Pj4gbXlzZWxmLiAgSW4gYW55IGV2ZW50LCByZXZhbXBpbmcgcGFydHMgb2Yg dGhlIHZzZXR2bCBpbnNlcnRpb24gY29kZQ0KPiA+ID4+IGlzbid0IHRoZSBr aW5kIG9mIHRoaW5nIHdlIHNob3VsZCBiZSBkb2luZyBub3cuDQo+ID4NCj4g PiBUaGUgdnNldHZsIGRlbWFuZCBmdXNpb24gaGFwcGVucyBpcyBub3QgbmVj ZXNzYXJ5ICJlcXVpdmFsZW50IiwgaW5zdGVhZCwgd2UNCj4gPiBjYWxsIGl0 IHdlIHdpbGwgZG8gZGVtYW5kIGZ1c2lvbiB3aGVuIHRoZXkgYXJlICJjb21w YXRpYmxlIi4NCj4gPiBBbmQgdGhlIGZ1c2lvbiBjYW4gaGFwcGVuIGJldHdl ZW4gYW55IHZlY3RvciBpbnNucyBpbmNsdWRpbmcgZGF0YSBtb3ZlbWVudA0K PiA+IGFuZCBhY3R1YWwgY29tcHV0YXRpb25zLg0KPiA+DQo+ID4gV2hhdCBp cyAiY29tcGF0aWJsZSIgPz8gIFRoaXMgZGVmaW5pdGlvbiBpcyBhY2NvcmRp bmcgdG8gUlZWIElTQS4NCj4gPiBGb3IgZXhhbXBsZSAsIEZvciBhIHZhZGQu dnYgbmVlZCBhIHZzZXR2bCB6ZXJvLCA0LCBlMzIsbTEsdGEsbWEuDQo+ID4g YW5kIGEgdmxlLnYgbmVlZCBhIHZzZXR2bCB6ZXJvLDQsZTgsbWY0LHRhLG1h Lg0KPiA+DQo+ID4gQWNjb3JkaW5nIHRvIFJWViBJU0E6DQo+ID4gdmFkZC52 diBkZW1hbmQgU0VXID0gMzIsIExNVUwgPSBNMSwgQVZMID0gNA0KPiA+IHZs ZS52IGRlbWFuZCBSQVRJTyA9IFNFVy9MTVVMID0gMzIsIEFWTCA9IDQuDQo+ ID4gU28gYWZ0ZXIgZGVtYW5kIGZ1c2lvbiwgdGhlIGRlbWFuZCBiZWNvbWVz IFNFVyA9IDMyLCBMTVVMID0gTTEsIEFWTCA9IDQuDQo+ID4gU3VjaCB2c2V0 dmwgaW5zdHJ1Y3Rpb24gaXMgY29uZmlndXJlZCBhcyB0aGlzIGRlbWFuZCBm dXNpb24sIHdlIGNhbGwgaXQgImNvbXBhdGlibGUiDQo+ID4gc2luY2Ugd2Ug Y2FuIGZpbmQgYSBjb21tb24gdnNldHZsIFZML1ZUWVBFIHN0YXR1cyBmb3Ig Ym90aCB2YWRkLnZ2IGFuZCB2bGUudg0KPiA+DQo+ID4gSG93ZXZlciwgd2hh dCBjYXNlIGlzIG5vdCAiaW5jb21wYXRpYmxlIiwgc2FtZSBleGFtcGxlLCBp ZiB0aGUgdmFkZC52diBkZW1hbmQgU0VXID0gMzIuIExNVUwgPSBNRjIsDQo+ ID4gdGhlIHZhZGQudnYgaXMgaW5jb21wYXRpYmxlIHdpdGggdmxlLnYuIHNp bmNlIHdlIGNhbid0IGZpbmQgYSBjb21tb24gVkwvVlRZUEUgdnNldHZsIGlu c3RydWN0aW9uIGF2YWlsYWJsZQ0KPiA+IGZvciBib3RoIG9mIHRoZW0uDQo+ ID4NCj4gPiBXZSBoYXZlIGxvY2FsIGRlbWFuZCBmdXNpb24gd2hpY2ggaXMg UGhhc2UgMS4gTG9jYWwgZGVtYW5kIGZ1c2lvbiBpcyBkb2luZyB0aGUgZnVz aW9uIHdpdGhpbiBhIGJsb2NrDQo+ID4gQW5kIGFsc28gd2UgaGF2ZSBnbG9i YWwgZGVtYW5kIGZ1c2lvbiB3aGljaCBpcyBQaGFzZSAzLiBHbG9iYWwgZGVt YW5kIGZ1c2lvbiBpcyBkb2luZyBhY3Jvc3MgYmxvY2tzLg0KPiA+DQo+ID4g QWZ0ZXIgUGhhc2UgMSwgZWFjaCBibG9jayBoYXMgYSBzaW5nbGUgZGVtYW5k IGZ1c2lvbi4gUGhhc2UgMyBpcyBkb2luZyBnbG9iYWwgZGVtYW5kIGZ1c2lv biB0cnlpbmcgdG8NCj4gPiBmaW5kIHRoZSBjb21tb24gVkwvVlRZUEUgc3Rh dHVzIGF2YWlsYWJsZSBmb3IgYSBidW5jaCBvZiBibG9ja3MsIGFuZCBmdXNl IHRoZW0gaW50byBhIHNpbmdsZSB2c2V0dmwuDQo+ID4gU28gdGhhdCB3ZSBl bGltaW5hdGUgcmVkdW5kYW50IHZzZXR2bGkuDQo+ID4NCj4gPiBIZXJlIGlz IGEgZXhhbXBsZToNCj4gPg0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGJiIDA6ICDvvIh2bGUudiBkZW1hbmQgUkFUSU8gPSAz Mu+8iQ0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv ICAgICAgIFwNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmIg MSAgICAgIGJiIDINCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgIC8g ICAgICBcICAgICAvICAgICAgIFwNCj4gPiAgICAgICAgICAgICAgICAgIGJi IDMgICAgICAgYmIgNCAgLi4uLiAgICAgYmIgNQ0KPiA+ICAgICAgICAgICAg ICAgIHZhZGQgICAgICAgdm11bCAgICAgICAgICB2ZGl2DQo+ID4gICAgICAg ICAgICAgKGRlbWFuZCAgKGRlbWFuZCAgICAgIChkZW1hbmQNCj4gPiAgICAg ICAgICAgICAgc2V3ID0gOCwgICAgc2V3ID0gOCwgICAgICBzZXcgPSA4LA0K PiA+ICAgICAgICAgbG11bCA9IG1mNCkgIGxtdWwgPSBtZjQsICAgbG11bCA9 IG1mNCwNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhaWwgcG9s aWN5ID0gdHUpIG1hc2sgcG9saWN5ID0gbXUpDQo+ID4NCj4gPiBTbyBpbiB0 aGlzIGNhc2UsIHdlIHNob3VsZCBkbyB0aGUgZ2xvYmFsIGRlbWFuZCBmdXNp b24gZm9yIGJiIDAsIGJiMywgYmIgNCwgYmI1Lg0KPiA+IHNpbmNlIHRoZXkg YXJlIGNvbXBhdGlibGUgYWNjb3JkaW5nIHRvIFJWViBJU0EuDQo+ID4gVGhl IGZpbmFsIGRlbWFuZCBpbmZvIG9mIHZzZXR2bCBzaG91bGQgYmUgdnNldHZs IGU4LG1mNCx0dSxtdSBhbmQgcHV0IGl0DQo+ID4gaW4gdGhlIGJiMC4gVGhl biB3ZSBjYW4gYXZvaWQgdnNldHZsIGluIGJiIDMsIDQsIDUuDQo+DQo+IEp1 c3QgdG8gdGhyb3cgaW4gYSBjb21tZW50IGhlcmUgLSBJIHRoaW5rIHlvdSBz aG91bGQgcHJlc2VudCBMQ00gd2l0aA0KPiBzb21ldGhpbmcgaXQNCj4gY2Fu IGlkZW50aWZ5IGFzIHRoZSBzYW1lIGZvciBjb21wYXRpYmxlIHZzZXR2bCBh bmQgdGhlbiBpdCBzaG91bGQganVzdA0KPiB3b3JrPyAgT1RPSA0KPiBpZiAi Y29tcGF0aWJsZSIgaXMgbm90IHRyYW5zaXRpdmUgdGhhdCdzIG5vdCBwb3Nz aWJsZSAoYnV0IHRoZW4gSQ0KPiBjYW4ndCBxdWlja2x5IG1ha2UgdXANCj4g YW4gZXhhbXBsZSB3aGVyZSBpdCB3b3VsZG4ndCBiZSkuDQo+DQo+ID4gPj4g V2UgaGF2ZSBtb3JlIGZ1c2lvbiBydWxlcyBhY2NvcmRpbmcgdG8gUlZWIElT QS4gUGhhc2UgMyAoR2xvYmFsIGRlbWFuZCBmdXNpb24pIGlzDQo+ID4gPj4g cmVhbGx5IGltcG9ydGFudC4NCj4gPg0KPiA+ID4+IFRoYXQgd291bGQgc2Vl bSB0byBpbmRpY2F0ZSB0aGUgZnVuY3Rpb24gaXMgcG9vcmx5IG5hbWVkLiAg VW5sZXNzIHlvdSdyZQ0KPiA+ID4+IHVzaW5nICJlbXB0eSIgaGVyZSB0byBt ZWFuIHRoZSBzdGF0ZSBpcyB2YWxpZCBvciBkaXJ0eS4gIEVpdGhlciB3YXkg aXQNCj4gPiA+PiBzZWVtcyBsaWtlIHRoZSBmdW5jdGlvbiBuYW1lIG91Z2h0 IHRvIGJlIGltcHJvdmVkLg0KPiA+DQo+ID4gPj4gVGhlIGNvbW1lbnRzIHRh bGsgYWJvdXQgYmIxIGJlaW5nIGluc2lkZSBhIGxvb3AuICBOb3doZXJlIGRv IHlvdSBjaGVjaw0KPiA+ID4+IHRoYXQgYXMgZmFyIGFzIEkgY2FuIHRlbGwu DQo+ID4NCj4gPiA+PiBXaGVuIHRyeWluZyB0byB1bmRlcnN0YW5kIHdoYXQg dGhlIHBhdGNoIGlzIGdvaW5nIEkgcmFuIGFjcm9zcyB0aGlzIGNvbW1lbnQ6 DQo+ID4NCj4gPiA+PiAgIC8qIFRoZSBsb2NhbF9kZW0gdmVjdG9yIGluc25f aW5mbyBvZiB0aGUgYmxvY2suICAqLw0KPiA+ICA+PiAgIHZlY3Rvcl9pbnNu X2luZm8gbG9jYWxfZGVtOw0KPiA+DQo+ID4NCj4gPiA+PiBUaGF0IGNvbW1l bnQgcmVhbGx5IGRvZXNuJ3QgaW1wcm92ZSBhbnl0aGluZy4gICJsb2NhbF9k ZW0iIGlzIGNsZWFybHkNCj4gPiA+PiBzaG9ydC1oYW5kIGZvciBzb21ldGhp bmcgKGxvY2FsIGRlbWFuZD8pLCB3aGF0ZXZlciBpdCBpcywgbWFrZSBpdA0K PiA+ID4+IGNsZWFyZXIgaW4gdGhlIGNvbW1lbnQuDQo+ID4NCj4gPiBTb3Jy eSBmb3IgYmFkIGNvbW1lbnRzIGluIHRoZSBjb2Rlcy4gQ3VycmVudGx5LCBJ IGFtIHdvcmtpbmcgb24gdGhlIGZpcnN0IHBhdGNoDQo+ID4gb2YgYXV0by12 ZWN0b3JpemF0aW9uLiBBZnRlciBJIHNlbnQgdGhlIGZpcnN0IHBhdGNoIG9m IGF1dG8tdmVjdG9yaXphdGlvbiBmb3IgeW91IHRvDQo+ID4gcmV2aWV3LiBJ IHdvdWxkIGxpa2UgdG8gcmUtY2hlY2sgYWxsIHRoZSBjb21tZW50cyBhbmQg Y29kZSBzdHlsZSBvZiBWU0VUVkwgUEFTUy4NCj4gPiBBbmQgcmVmaW5lIHRo ZW0uDQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gPiBqdXpoZS56aG9uZ0ByaXZh aS5haQ0KPiA+DQo+ID4gRnJvbTogSmVmZiBMYXcNCj4gPiBEYXRlOiAyMDIz LTA0LTA1IDIxOjA1DQo+ID4gVG86IGp1emhlLnpob25nOyBnY2MtcGF0Y2hl cw0KPiA+IENDOiBraXRvLmNoZW5nOyBwYWxtZXINCj4gPiBTdWJqZWN0OiBS ZTogW1BBVENIXSBSSVNDLVY6IEZpeCBQUjEwODI3OQ0KPiA+DQo+ID4NCj4g PiBPbiA0LzIvMjMgMTY6NDAsIGp1emhlLnpob25nQHJpdmFpLmFpIHdyb3Rl Og0KPiA+ID4gVGhpcyBwb2ludCBpcyBzZWxldGVjdGVkIG5vdCBiZWNhdXNl IExDTSBidXQgYnkgUGhhc2UgMyAoVkwvVlRZUEUgZGVtYW5kDQo+ID4gPiBp bmZvIGJhY2t3YXJkIGZ1c2lvbiBhbmQgcHJvcG9nYXRpb24pIHdoaWNoDQo+ ID4gPiBpcyBJIGludHJvZHVjZWQgaW50byBWU0VUVkwgUEFTUyB0byBlbmhh bmNlIExDTSAmJiBpbXByb3ZlIHZzZXR2bA0KPiA+ID4gaW5zdHJ1Y3Rpb24g cGVyZm9ybWFuY2UuDQo+ID4gU28gZnVzaW9uIGluIHRoaXMgY29udGV4dCBp cyByZWFsbHkgYWJvdXQgaWRlbnRpZnlpbmcgY2FzZXMgd2hlcmUgdHdvDQo+ ID4gY29uZmlndXJhdGlvbiBzZXR0aW5ncyBhcmUgZXF1aXZhbGVudCBhbmQg eW91ICJmdXNlIiB0aGVtIHRvZ2V0aGVyLg0KPiA+IFByZXN1bWFibHkgdGhp cyBpcyBvbmx5IGdvaW5nIHRvIGJlIHBvc3NpYmxlIHdoZW4gdGhlIHZlY3Rv ciBpbnNucyBhcmUNCj4gPiBqdXN0IGRvaW5nIGRhdGEgbW92ZW1lbnQgcmF0 aGVyIHRoYW4gYWN0dWFsIGNvbXB1dGF0aW9ucz8NCj4gPg0KPiA+IElmIG15 IHVuZGVyc3RhbmRpbmcgaXMgY29ycmVjdCwgSSBjYW4ga2luZCBvZiBzZWUg d2h5IHlvdSdyZSBkb2luZw0KPiA+IGZ1c2lvbiBkdXJpbmcgcGhhc2UgMy4g IE15IHNlbnNlIGlzIHRoZXJlJ3MgYSBiZXR0ZXIgd2F5LCBidXQgSSdtIGhh dmluZw0KPiA+IGEgYml0IG9mIHRyb3VibGUgd29ya2luZyBvdXQgdGhlIGRl dGFpbHMgb2Ygd2hhdCB0aGF0IHNob3VsZCBiZSB0bw0KPiA+IG15c2VsZi4g IEluIGFueSBldmVudCwgcmV2YW1waW5nIHBhcnRzIG9mIHRoZSB2c2V0dmwg aW5zZXJ0aW9uIGNvZGUNCj4gPiBpc24ndCB0aGUga2luZCBvZiB0aGluZyB3 ZSBzaG91bGQgYmUgZG9pbmcgbm93Lg0KPiA+DQo+ID4NCj4gPiBXUlQgdGhl IGFjdHVhbCBwYXRjaC4gIFBsZWFzZSBwdXQgYSBmdW5jdGlvbiBjb21tZW50 IG9uIHRoZQ0KPiA+IGFsbF9lbXB0eV9wcmVkZWNlc3Nvcl9wIG1ldGhvZC4g U29tZXRoaW5nIGxpa2UgdGhpcyBwZXJoYXBzPw0KPiA+DQo+ID4gLyogUmV0 dXJuIFRSVUUgaWYgYWxsIHRoZSBwcmVkZWNlc3NvcnMgb2YgQ0ZHX0JCIGhh dmUgdnNldHZsDQo+ID4gICAgIHN0YXRlIHRoYXQgaXMgdmFsaWQgb3IgZGly dHksIEZBTFNFIG90aGVyd2lzZS4gICovDQo+ID4NCj4gPg0KPiA+IFRoYXQg d291bGQgc2VlbSB0byBpbmRpY2F0ZSB0aGUgZnVuY3Rpb24gaXMgcG9vcmx5 IG5hbWVkLiAgVW5sZXNzIHlvdSdyZQ0KPiA+IHVzaW5nICJlbXB0eSIgaGVy ZSB0byBtZWFuIHRoZSBzdGF0ZSBpcyB2YWxpZCBvciBkaXJ0eS4gIEVpdGhl ciB3YXkgaXQNCj4gPiBzZWVtcyBsaWtlIHRoZSBmdW5jdGlvbiBuYW1lIG91 Z2h0IHRvIGJlIGltcHJvdmVkLg0KPiA+DQo+ID4gVGhlIGNvbW1lbnRzIHRh bGsgYWJvdXQgYmIxIGJlaW5nIGluc2lkZSBhIGxvb3AuICBOb3doZXJlIGRv IHlvdSBjaGVjaw0KPiA+IHRoYXQgYXMgZmFyIGFzIEkgY2FuIHRlbGwuDQo+ ID4NCj4gPiBXaGVuIHRyeWluZyB0byB1bmRlcnN0YW5kIHdoYXQgdGhlIHBh dGNoIGlzIGdvaW5nIEkgcmFuIGFjcm9zcyB0aGlzIGNvbW1lbnQ6DQo+ID4N Cj4gPiAgIC8qIFRoZSBsb2NhbF9kZW0gdmVjdG9yIGluc25faW5mbyBvZiB0 aGUgYmxvY2suICAqLw0KPiA+ICAgIHZlY3Rvcl9pbnNuX2luZm8gbG9jYWxf ZGVtOw0KPiA+DQo+ID4NCj4gPiBUaGF0IGNvbW1lbnQgcmVhbGx5IGRvZXNu J3QgaW1wcm92ZSBhbnl0aGluZy4gICJsb2NhbF9kZW0iIGlzIGNsZWFybHkN Cj4gPiBzaG9ydC1oYW5kIGZvciBzb21ldGhpbmcgKGxvY2FsIGRlbWFuZD8p LCB3aGF0ZXZlciBpdCBpcywgbWFrZSBpdA0KPiA+IGNsZWFyZXIgaW4gdGhl IGNvbW1lbnQuDQo+ID4NCj4gPiBKZWZmDQo+ID4NCj4NCiANCg== ------=_001_NextPart017874446626_=------