From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 6406 invoked from network); 25 Aug 2023 09:27:34 -0000 Received: from second.openwall.net (193.110.157.125) by inbox.vuxu.org with ESMTPUTF8; 25 Aug 2023 09:27:34 -0000 Received: (qmail 13512 invoked by uid 550); 25 Aug 2023 09:27:27 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 13477 invoked from network); 25 Aug 2023 09:27:26 -0000 X-Originating-IP: [113.200.148.30] Date: Fri, 25 Aug 2023 17:27:04 +0800 (GMT+08:00) X-CM-HeaderCharset: UTF-8 From: =?UTF-8?B?57+f5bCP5aif?= To: musl@lists.openwall.com X-Priority: 3 X-Mailer: Coremail Webmail Server Version 2023.1-cmXT5 build 20230523(b0518e05) Copyright (c) 2002-2023 www.mailtech.cn .loongson.cn In-Reply-To: <278c595b-10fb-2180-b634-6bbcbd5a2614@loongson.cn> References: <20230418093844.GP3630668@port70.net> <0fd19586-376c-14ec-a50b-8c561f9f82f2@loongson.cn> <72a1a5d1-6f57-9a12-7775-84e1ff2c1df2@loongson.cn> <64955faf-c213-34bf-c7e2-691064da51f9@loongson.cn> <968652d9-3780-0843-908e-f21bc93b6ee1@loongson.cn> <320c8444.bb9a.189c45903f8.Coremail.zhaixiaojuan@loongson.cn> <20230805154307.GS4163@brightrain.aerifal.cx> <20230813014109.GU4163@brightrain.aerifal.cx> <278c595b-10fb-2180-b634-6bbcbd5a2614@loongson.cn> Content-Transfer-Encoding: base64 X-CM-CTRLDATA: 2KPQq2Zvb3Rlcl90eHQ9NzUzMDo2MTI= Content-Type: text/plain; charset=UTF-8 MIME-Version: 1.0 Message-ID: <59741526.110de.18a2c04c5c0.Coremail.zhaixiaojuan@loongson.cn> X-Coremail-Locale: zh_CN X-CM-TRANSID:AQAAf8Cxmc3oc+hkmkljAA--.11068W X-CM-SenderInfo: p2kdx5xldry3tdq6z05rqj20fqof0/1tbiAQAODmToKjMERwABsW X-Coremail-Antispam: 1Uk129KBj93XoW3Gry8tw15KFyUGw15CFWxGrX_yoW3GryfpF WYka1qkr4DXr13A3s7K3WfXF4akaykGr1UJwn3JryUuFWY9F97tr1fKr4Y93s7ur4kCF1j vr4Ut34ruFs0yagCm3ZEXasCq-sJn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7KY7ZEXa sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU 0xBIdaVrnRJUUUBYb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2 IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_Gr0_Xr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI 0_Gr0_Cr1l84ACjcxK6I8E87Iv67AKxVW0oVCq3wA2z4x0Y4vEx4A2jsIEc7CjxVAFwI0_ GcCE3s1le2I262IYc4CY6c8Ij28IcVAaY2xG8wAqjxCEc2xF0cIa020Ex4CE44I27wAqx4 xG64xvF2IEw4CE5I8CrVC2j2WlYx0E2Ix0cI8IcVAFwI0_Jr0_Jr4lYx0Ex4A2jsIE14v2 6r1j6r4UMcvjeVCFs4IE7xkEbVWUJVW8JwACjcxG0xvY0x0EwIxGrwACY4xI67k04243AV AKzVAKj4xxM4xvF2IEb7IF0Fy26I8I3I1l42xK82IYc2Ij64vIr41l4I8I3I0E4IkC6x0Y z7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s026x8GjcxK67AKxVWUGVWUWwC2zV AF1VAY17CE14v26r1j6r15MIIYrxkI7VAKI48JMIIF0xvE2Ix0cI8IcVAFwI0_Jr0_JF4l IxAIcVC0I7IYx2IY6xkF7I0E14v26r1j6r4UMIIF0xvE42xK8VAvwI8IcIk0rVWUJVWUCw CI42IY6I8E87Iv67AKxVWUJVW8JwCI42IY6I8E87Iv6xkF7I0E14v26r1j6r4UMVCEFcxC 0VAYjxAxZFUvcSsGvfC2KfnxnUUI43ZEXa7IU8b18PUUUUU== Subject: Re: Re: [musl] add loongarch64 port v7. SGksCgpSZWdhcmRpbmcgdGhlIHF1ZXN0aW9ucyB5b3UgcG9pbnRlZCBvdXQsIFdlIGhhdmUgZXhw bGFpbmVkIHRoZQpyZWFzb25zIGZvciBtb2RpZmljYXRpb25zLiBEbyB5b3UgaGF2ZSBkaWZmZXJl bnQgc3VnZ2VzdGlvbnM/CkRvIHdlIG5lZWQgdG8gbWFrZSBmdXJ0aGVyIG1vZGlmaWNhdGlvbnMg d2l0aCBjZXJ0YWluIGlzc3Vlcz8KCkJlc3Qgd2lzaGVzLApYaWFvanVhbiBaaGFpCgoKPiAtLS0t LeWOn+Wni+mCruS7ti0tLS0tCj4g5Y+R5Lu25Lq6OiAiSG9uZ2xpYW5nIFdhbmciIDx3YW5naG9u Z2xpYW5nQGxvb25nc29uLmNuPgo+IOWPkemAgeaXtumXtDoyMDIzLTA4LTE1IDE3OjI0OjMwICjm mJ/mnJ/kuowpCj4g5pS25Lu25Lq6OiBtdXNsQGxpc3RzLm9wZW53YWxsLmNvbQo+IOS4u+mimDog UmU6IFttdXNsXSBhZGQgbG9vbmdhcmNoNjQgcG9ydCB2Ny4KPiAKPiAKPiAKPiDlnKggMjAyMy84 LzEzIOS4iuWNiDk6NDEsIFJpY2ggRmVsa2VyIOWGmemBkzoKPiA+IE9uIFNhdCwgQXVnIDA1LCAy MDIzIGF0IDExOjQzOjA4QU0gLTA0MDAsIFJpY2ggRmVsa2VyIHdyb3RlOgo+ID4+IE9uIFNhdCwg QXVnIDA1LCAyMDIzIGF0IDAyOjE4OjM1UE0gKzA4MDAsIOe/n+Wwj+WonyB3cm90ZToKPiA+Pj4g V2UgYXJlIGN1cnJlbnRseSB3b3JraW5nIG9uIGJyaW5naW5nIGxvb25nYXJjaCBzdXBwb3J0IHRv IHRoZSBhbHBpbmUKPiA+Pj4gY29tbXVuaXR5LiBBbHBpbmUgZGVwZW5kcyBvbiBtdXNsLCBhbmQg QWxwaW5lIGFuZCBpdHMgdXNlcnMgYXJlCj4gPj4+IHdhaXRpbmcgZm9yIG11c2wgdG8gc3VwcG9y dCBsb29uZ2FyY2guIFRoaXMgcGF0Y2ggc2VlbXMgdG8gYmUgYSBsb25nCj4gPj4+IHRpbWUgYWdv LCB3ZSBob3BlIHRvIGtub3cgdGhlIHJldmlldyBzdGF0dXMgb2YgdGhpcyBwYXRjaC4KPiA+Pgo+ ID4+IExhc3QgdGltZSBJIHNldCBvdXQgdG8gbG9vayBhdCBpdCwgSSBoaXQgdGhhdCB0aGUgZXhh Y3QgcGF0Y2ggSSBoYWQKPiA+PiBwcmV2aW91c2x5IHJldmlld2VkIGFuZCB0ZW50YXRpdmVseSBv a2F5ZWQgd2Fzbid0IHN0b3JlZCBhbnl3aGVyZQo+ID4+IHBlcm1hbmVudC4gSSByZWFsaXplIHRo aXMgaGFzIHRha2VuIHF1aXRlIGEgd2hpbGUsIGFuZCBub3cgdGhlcmUgaXMgYQo+ID4+IHBhdGNo IG9uIHRoZSBsaXN0LCBzbyB0aGlzIGNvbWluZyB3ZWVrIEkgd2lsbCBnbyBiYWNrIGFuZCByZXZp ZXcgdGhlCj4gPj4gZGlmZiBvZiB0aGF0IGFnYWluc3QgdGhlIHByZXZpb3VzIHBvc3RlZCB2ZXJz aW9uIGFuZCBtYWlsaW5nIGxpc3QKPiA+PiBjb21tZW50cy4gQXMgbG9uZyBhcyBldmVyeXRoaW5n IG1hdGNoZXMgdXAsIEkgZXhwZWN0IHRvIGNvbW1pdCBpdC4KPiA+Pgo+ID4+IFRoYW5rcyBmb3Ig Y2hlY2tpbmcgYmFjayBpbiBvbiB0aGlzLCBhbmQgc29ycnkgaXQncyB0YWtlbiBzbyBsb25nLgo+ ID4gCj4gPiBPSywgSSdtIGxvb2tpbmcgYXQgdGhpcyBub3cgYXMgdGhlIGRpZmZzIGJldHdlZW4g djUgYW5kIHY2ICh3aGljaCBJCj4gPiB0aGVvcmV0aWNhbGx5IHJldmlld2VkIGJlZm9yZSwgYnV0 IHRoZSBleGFjdCB2NiBJIGxvb2tlZCBhdCBkaWQgbm90Cj4gPiBleGlzdCBpbiBwZXJtYW5lbnQg Zm9ybSkgYW5kIGJldHdlZW4gdjYgYW5kIHY3Lgo+ID4gCj4gPiB2NS0+djY6Cj4gPiAKPiA+PiAt KyNkZWZpbmUgX19CWVRFX09SREVSIDEyMzQKPiA+PiArKyNkZWZpbmUgX19CWVRFX09SREVSICBf X0xJVFRMRV9FTkRJQU4KPiA+IAo+ID4gVGhpcyBpcyBncmF0dWl0b3VzLCBtaXNtYXRjaGVzIHdo YXQgaXMgZG9uZSBvbiBvdGhlciBhcmNocywgYW5kIGlzCj4gPiBsZXNzIHNhZmUuCj4gPgo+IFRo ZSBtb2RpZmljYXRpb24gaXMgYmFzZWQgb24gdGhlIGZvbGxvd2luZyByZXZpZXcgc3VnZ2VzdGlv bigKPiBXQU5HIFh1ZXJ1aSA8aUB4ZW4wbi5uYW1lPiByZXZpZXdlZCBpbgo+IGh0dHBzOi8vd3d3 Lm9wZW53YWxsLmNvbS9saXN0cy9tdXNsLzIwMjIvMTAvMTIvMSk6Cj4gCj4gYCNkZWZpbmUgX19C WVRFX09SREVSIF9fTElUVExFX0VORElBTmAgY291bGQgYmUgbW9yZSBjb25zaXN0ZW50Cj4gd2l0 aCBvdGhlciBhcmNoZXMuCj4gCj4gPj4gLStUWVBFREVGIHVuc2lnbmVkIG5saW5rX3Q7Cj4gPj4g KytUWVBFREVGIHVuc2lnbmVkIGludCBubGlua190Owo+ID4gCj4gPiBHcmF0dWl0b3VzIGFuZCBp biBvcHBvc2l0ZSBkaXJlY3Rpb24gb2YgY29kaW5nIHN0eWxlIHVzZWQgZWxzZXdoZXJlIGluCj4g PiBtdXNsLiBUaGVyZSBhcmUgYSBmZXcgb3RoZXIgaW5zdGFuY2VzIG9mIHRoaXMgdG9vLgo+ID4g Cj4gQmFzZWQgb24gdGhlIGZvbGxvd2luZyByZXZpZXcgcXVlc3Rpb24oV0FORyBYdWVydWkgPGlA eGVuMG4ubmFtZT4KPiByZXZpZXdlZCBpbiBodHRwczovL3d3dy5vcGVud2FsbC5jb20vbGlzdHMv bXVzbC8yMDIyLzEwLzEyLzEpOgo+IAo+IGB1bnNpZ25lZCBpbnRgPyBTYW1lIGZvciBvdGhlciBi YXJlIGB1bnNpZ25lZGAgdXNhZ2VzLgo+IAo+IEkgZml4ZWQgaXQgdG8gYSBleHBsaWNpdCBkZWZp bml0aW9uLgo+IAo+ID4+IC0rICAgICAgcmVnaXN0ZXIgdWludHB0cl90IHRwIF9fYXNtX18oInRw Iik7Cj4gPj4gLSsgICAgICBfX2FzbV9fICgiIiA6ICI9ciIgKHRwKSApOwo+ID4+ICsrICAgICAg dWludHB0cl90IHRwOwo+ID4+ICsrICAgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1vdmUgJTAs ICR0cCIgOiAiPXIiKHRwKSk7Cj4gPj4gICArICAgICAgcmV0dXJuIHRwOwo+ID4gCj4gPiBOb3Qg Y2xlYXIgd2hhdCB0aGUgbW90aXZhdGlvbiBpcyBoZXJlLiBJcyBpdCB3b3JraW5nIGFyb3VuZCBh IGNvbXBpbGVyCj4gPiBidWc/IFRoZSBvcmlnaW5hbCBmb3JtIHdhcyBtb3JlIG9wdGltYWwuCj4g PiAKPiBUaGUgbW9kaWZpY2F0aW9uIGlzIGJhc2VkIG9uIHRoZSBmb2xsb3dpbmcgcmV2aWV3IHN1 Z2dlc3Rpb24oCj4gV0FORyBYdWVydWkgPGlAeGVuMG4ubmFtZT4gcmV2aWV3ZWQgaW4KPiBodHRw czovL3d3dy5vcGVud2FsbC5jb20vbGlzdHMvbXVzbC8yMDIyLzEwLzEyLzEpOgo+IAo+IFdoaWxl IHRoZSBjdXJyZW50IGFwcHJvYWNoIHdvcmtzLCBpdCdzIGEgYml0IGZyYWdpbGUgWzFdLCBhbmQK PiB0aGUgc2ltcGxlIGFuZCBwbGFpbiByaXNjdiB2ZXJzaW9uIHdvcmtzIHRvbzoKPiAKPiB1aW50 cHRyX3QgdHA7Cj4gX19hc21fXyAoIm1vdmUgJTAsICR0cCIgOiAiPXIiKHRwKSk7Cj4gCj4gWzFd Omh0dHBzOi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9nY2MvTG9jYWwtUmVnaXN0ZXItVmFyaWFi bGVzLmh0bWwjTG9jYWwtUmVnaXN0ZXItVmFyaWFibGVzCj4gCj4gPj4gICArI2RlZmluZSBDUlRK TVAocGMsc3ApIF9fYXNtX18gX192b2xhdGlsZV9fKCBcCj4gPj4gLSsgICAgICAibW92ZSAkc3As JTEgOyBqciAlMCIgOiA6ICJyIihwYyksICJyIihzcCkgOiAibWVtb3J5IiApCj4gPj4gLSsKPiA+ PiAtKyNkZWZpbmUgR0VURlVOQ1NZTShmcCwgc3ltLCBnb3QpIF9fYXNtX18gKCBcCj4gPj4gLSsg ICAgICAiLmhpZGRlbiAiICNzeW0gIlxuIiBcCj4gPj4gLSsgICAgICAiLmFsaWduIDggXG4iIFwK PiA+PiAtKyAgICAgICIgICAgICAgbGEubG9jYWwgJHQxLCAiI3N5bSIgXG4iIFwKPiA+PiAtKyAg ICAgICIgICAgICAgbW92ZSAlMCwgJHQxIFxuIiBcCj4gPj4gLSsgICAgICA6ICI9ciIoKihmcCkp IDogOiAibWVtb3J5IiApCj4gPj4gKysgICAgICAibW92ZSAkc3AsICUxIDsganIgJTAiIDogOiAi ciIocGMpLCAiciIoc3ApIDogIm1lbW9yeSIgKQo+ID4gCj4gPiBOb3QgY2xlYXIgd2h5IHRoaXMg d2FzIGNoYW5nZWQuIEl0IHdhcyBuZXZlciBkaXNjdXNzZWQgYWZhaWsuIEl0IGxvb2tzCj4gPiBz b21ld2hhdCBkdWJpb3VzIHJlbW92aW5nIEdFVEZVTkNTWU0gYW5kIHVzaW5nIHRoZSBtYXliZS11 bnJlbGlhYmxlCj4gPiBkZWZhdWx0IGRlZmluaXRpb24uCj4gPiAKPiBCYXNlZCBvbiB0aGUgZm9s bG93aW5nIHJldmlldyBxdWVzdGlvbigKPiBXQU5HIFh1ZXJ1aSA8aUB4ZW4wbi5uYW1lPiByZXZp ZXdlZAo+IGluIGh0dHBzOi8vd3d3Lm9wZW53YWxsLmNvbS9saXN0cy9tdXNsLzIwMjIvMTAvMTIv MSk6Cj4gCj4gRG9lcyB0aGUgZ2VuZXJpYyB2ZXJzaW9uIHJlc2lkaW5nIGluIGxkc28vZGxzdGFy dC5jIG5vdCB3b3JrPwo+IAo+IEkgZm91bmQgdGhlIGNvZGUgbG9naWMgaXMgY29uc2lzdGVudCB3 aXRoIHRoZSBnZW5lcmljIHZlcnNpb24sIFNvCj4gSSByZW1vdmVkIHRoZSBkZWZpbml0aW9uIGhl cmUgYW5kIHJlcGxhY2VkIGl0IHdpdGggZ2VuZXJpYyB2ZXJzaW9uLgo+IAo+ID4gSXQgYWxzbyBs b29rcyBsaWtlIHY1LT52NiByZXdyb3RlIHNpZ3NldGptcC4KPiA+IAo+IEJhc2VkIG9uIHRoZSBm b2xsb3dpbmcgcmV2aWV3IHF1ZXN0aW9uKAo+IFdBTkcgWHVlcnVpIDxpQHhlbjBuLm5hbWU+IHJl dmlld2VkCj4gaW4gaHR0cHM6Ly93d3cub3BlbndhbGwuY29tL2xpc3RzL211c2wvMjAyMi8xMC8x Mi8xKToKPiAKPiBUaGlzIGlzIGNyYXp5IGNvbXBsaWNhdGVkIGNvbXBhcmVkIHRvIHRoZSByaXNj diBwb3J0LCB3aHkgaXMgdGhlIGp1Z2dsaW5nCj4gYmV0d2VlbiBhMC9hMSBhbmQgdDUvdDYgbmVj ZXNzYXJ5Pwo+IAo+IEkgb3B0aW1pemVkIHRoZSBjb2RlIGltcGxlbWVudGF0aW9ucy4KPiAKPiA+ IHY2LT52NzoKPiA+IAo+ID4gc2lnY29udGV4dC9tY29udGV4dF90IGNoYW5nZSBtb3N0bHkgbWFr ZXMgc2Vuc2UsIGJ1dCB0aGUKPiA+IG5hbWVzcGFjZS1zYWZlIGFuZCBmdWxsIG1jb250ZXh0X3Qg ZGlmZmVyIGluIHRoZWlyIHVzZSBvZiB0aGUgYWxpZ25lZAo+ID4gYXR0cmlidXRlIGFuZCBpdCdz IG5vdCBjbGVhciB0aGF0IHRoZSBhdHRyaWJ1dGUgaXMgbmVlZGVkIChzaW5jZSB0aGUKPiA+IG9m ZnNldCBpcyBuYXR1cmFsbHkgYWxpZ25lZCBhbmQgYW55IGluc3RhbmNlIG9mIHRoZSBvYmplY3Qg aXMgcHJvZHVjZWQKPiA+IGJ5IHRoZSBrZXJuZWwsIG5vdCBieSB1c2Vyc3BhY2UpLgo+ID4gCj4g Pj4gLSsgICAgICBsb25nICAgICAgICAgICAgICAgX191Y19wYWQ7Cj4gPiAKPiA+IFRoaXMgY2hh bmdlIHRvIHVjb250ZXh0X3QgYWN0dWFsbHkgbWFrZXMgdGhlIHN0cnVjdCBBQkktaW5jb21wYXRp YmxlCj4gPiBpbiB0aGUgbmFtZXNwYWNlLXNhZmUgdmVyc2lvbiB3aXRob3V0IHRoZSBhbGlnbm1l bnQgYXR0cmlidXRlLiBJSVJDIEkKPiA+IGV4cGxpY2l0bHkgcmVxdWVzdGVkIHRoZSBleHBsaWNp dCBwYWRkaW5nIGZpZWxkIHRvIGF2b2lkIHRoaXMga2luZCBvZgo+ID4gZm9vdGd1bi4gUmVtb3Zp bmcgaXQgZG9lcyBub3Qgc2VlbSBsaWtlIGEgZ29vZCBpZGVhLgo+ID4gCj4gSW5pdGlhbGx5LCB3 ZSBhZGQgX191Y19wYWQgdG8gZW5zdXJlIHVjX21jb250ZXh0IGlzIDE2IGJ5dGUgYWxpZ25tZW50 Lgo+IE5vdywgd2UgYWRkZWQgX19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18oMTYpKSkgdG8gCj4g dWNfbWNvbnRleHQuX19leHRjb250ZXh0W10sCj4gdGhpcyBjYW4gZW5zdXJlIHVjX21jb250ZXh0 IGlzIGFsc28gMTYgYnl0ZSBhbGlnbm1lbnQuIHNvIF9fdWNfcGFkIGlzIAo+IG5vdCB1c2VkLgo+ IAo+IFJlbW92ZSBfX3VjX3BhZCwgZnJvbSB0aGUgcG9pbnQgb2Ygc3RydWN0IGxheW91dCwgbXVz bCBhbmQga2VybmVsIGFyZQo+IGNvbnNpc3RlbnQuIG90aGVyd2lzZSwgSSB0aGluayBpdCBtYXkg YnJpbmcgYSBzZW5zZSBvZiBpbmNvbnNpc3RlbmN5Cj4gYmV0d2VlbiBrZXJuZWwgYW5kIG11c2wu IER1ZSB0byBMb29uZ2FyY2ggaXMgbm90IG1lcmdlZCBpbnRvIG11c2wgbm93LAo+IFJlbW92ZSBp dCBubyBjb21wYXRpYmlsaXR5IGlzc3Vlcy4KPiAKPiA+IEluIHN0YXQuaDoKPiA+IAo+ID4+IC0r ICAgICAgdW5zaWduZWQgbG9uZyBfX3BhZDsKPiA+PiArKyAgICAgIHVuc2lnbmVkIGxvbmcgX19w YWQxOwo+ID4gCj4gPiBUaGlzIGlzIGdyYXR1aXRvdXMgYW5kIG1ha2VzIHRoZSBkZWZpbml0aW9u IGdyYXR1aXRvdXNseSBtaXNtYXRjaCB3aGF0Cj4gPiB3aWxsIGJlY29tZSB0aGUgImdlbmVyaWMi IHZlcnNpb24gb2YgYml0cy9zdGF0LmguIFRoZXJlIGlzIG5vIGNvbnRyYWN0Cj4gPiBmb3IgYXBw bGljYXRpb25zIHRvIGJlIGFibGUgdG8gYWNjZXNzIHRoZXNlIHBhZGRpbmcgZmllbGRzIGJ5IG5h bWUsIHNvCj4gPiBubyBtb3RpdmF0aW9uIHRvIG1ha2UgdGhlaXIgbmFtZXMgbWF0Y2ggZ2xpYmMn cyBuYW1lcyBvciB0aGUga2VybmVsJ3MuCj4gPiAKPiBPSy4KPiAKPiA+IEluIGZlbnYuUzoKPiA+ IAo+ID4+ICsrI2lmZGVmIF9fY2xhbmdfXwo+ID4+ICsrI2RlZmluZSBGQ1NSICRmY3NyMAo+ID4+ ICsrI2Vsc2UKPiA+PiArKyNkZWZpbmUgRkNTUiAkcjAKPiA+PiArKyNlbmRpZgo+ID4gCj4gPiBJ dCdzIG5vdCBjbGVhciB0byBtZSB3aGF0J3MgZ29pbmcgb24gaGVyZS4gSXMgdGhlcmUgYSBjbGFu Zwo+ID4gaW5jb21wYXRpYmlsaXR5IGluIHRoZSBhc3NlbWJsZXIgbGFuZ3VhZ2UgeW91J3JlIHdv cmtpbmcgYXJvdW5kPyBPcgo+ID4gd2hhdD8gSWYgc28gdGhhdCBzZWVtcyBsaWtlIGEgdG9vbGlu ZyBidWcgdGhhdCBzaG91bGQgYmUgZml4ZWQuCj4gPiAKPiBUaGUgR05VIGFzc2VtYmxlciBjYW5u b3QgY29ycmVjdGx5IHJlY29nbml6ZSAkZmNzcjAsIGJ1dCB0aGUKPiBMTFZNIElBUyBkb2VzIG5v dCBoYXZlIHRoaXMgaXNzdWUsIHNvIG1ha2UgYSBkaXN0aW5jdGlvbi4KPiBUaGlzIGlzc3VlIGhh cyBiZWVuIGZpeGVkIGluIEdOVSBhc3NlbWJsZXIgMi40MS4gYnV0IGZvciBjb21wYXRpYmxlCj4g d2l0aCBHTlUgYXNzZW1ibGVyIDIuNDAgYW5kIGJlbG93LCAkcjAgbmVlZCByZXNlcnZlZC4KPiAK PiBUaGUgbGludXgga2VybmVsIGFsc28gaGFzIGEgc2ltaWxhciBkaXN0aW5jdGlvbjoKPiAKPiBj b21taXQgMzhiYjQ2Zjk0NTQ0YzUzODViYzM1YWEyYmZjNzc2ZGNmNTNhN2I1ZAo+IEF1dGhvcjog V0FORyBYdWVydWkgPGdpdEB4ZW4wbi5uYW1lPgo+IERhdGU6ICAgVGh1IEp1biAyOSAyMDo1ODo0 MyAyMDIzICswODAwCj4gCj4gICAgICBMb29uZ0FyY2g6IFByZXBhcmUgZm9yIGFzc2VtYmxlcnMg d2l0aCBwcm9wZXIgRkNTUiBjbGFzcyBzdXBwb3J0Cj4gCj4gICAgICBUaGUgR05VIGFzc2VtYmxl ciAoYXMgb2YgMi40MCkgbWlzLXRyZWF0cyBGQ1NSIG9wZXJhbmRzIGFzIEdQUnMsIGJ1dAo+ICAg ICAgdGhlIExMVk0gSUFTIGRvZXMgbm90LiBQcm9iZSBmb3IgdGhpcyBhbmQgcmVmZXIgdG8gRkNT UnMgYXMiJGZjc3JOTiIKPiAgICAgIGlmIHN1cHBvcnQgaXMgcHJlc2VudC4KPiAKPiAgICAgIFNp Z25lZC1vZmYtYnk6IFdBTkcgWHVlcnVpIDxnaXRAeGVuMG4ubmFtZT4KPiAgICAgIFNpZ25lZC1v ZmYtYnk6IEh1YWNhaSBDaGVuIDxjaGVuaHVhY2FpQGxvb25nc29uLmNuPgo+IAo+ID4gT3RoZXJ3 aXNlLCBldmVyeXRoaW5nIGxvb2tzIGFzIGV4cGVjdGVkLCBJIHRoaW5rLiBJJ20gb2theSB3aXRo IG1ha2luZwo+ID4gYW55IGZpeHVwcyBmb3IgbWVyZ2luZyByYXRoZXIgdGhhbiB0aHJvd2luZyB0 aGlzIGJhY2sgb24geW91ciB0ZWFtIGZvcgo+ID4gbW9yZSByZXZpc2lvbnMsIGJ1dCBjYW4geW91 IHBsZWFzZSBmb2xsb3cgdXAgYW5kIGNsYXJpZnkgdGhlIGFib3ZlPwo+ID4gCj4gPiBSaWNoCj4g PiAKDQoNCuacrOmCruS7tuWPiuWFtumZhOS7tuWQq+aciem+meiKr+S4reenkeeahOWVhuS4muen mOWvhuS/oeaBr++8jOS7hemZkOS6juWPkemAgee7meS4iumdouWcsOWdgOS4reWIl+WHuueahOS4 quS6uuaIlue+pOe7hOOAguemgeatouS7u+S9leWFtuS7luS6uuS7peS7u+S9leW9ouW8j+S9v+eU qO+8iOWMheaLrOS9huS4jemZkOS6juWFqOmDqOaIlumDqOWIhuWcsOazhOmcsuOAgeWkjeWItuaI luaVo+WPke+8ieacrOmCruS7tuWPiuWFtumZhOS7tuS4reeahOS/oeaBr+OAguWmguaenOaCqOmU meaUtuacrOmCruS7tu+8jOivt+aCqOeri+WNs+eUteivneaIlumCruS7tumAmuefpeWPkeS7tuS6 uuW5tuWIoOmZpOacrOmCruS7tuOAgiANClRoaXMgZW1haWwgYW5kIGl0cyBhdHRhY2htZW50cyBj b250YWluIGNvbmZpZGVudGlhbCBpbmZvcm1hdGlvbiBmcm9tIExvb25nc29uIFRlY2hub2xvZ3kg LCB3aGljaCBpcyBpbnRlbmRlZCBvbmx5IGZvciB0aGUgcGVyc29uIG9yIGVudGl0eSB3aG9zZSBh ZGRyZXNzIGlzIGxpc3RlZCBhYm92ZS4gQW55IHVzZSBvZiB0aGUgaW5mb3JtYXRpb24gY29udGFp bmVkIGhlcmVpbiBpbiBhbnkgd2F5IChpbmNsdWRpbmcsIGJ1dCBub3QgbGltaXRlZCB0bywgdG90 YWwgb3IgcGFydGlhbCBkaXNjbG9zdXJlLCByZXByb2R1Y3Rpb24gb3IgZGlzc2VtaW5hdGlvbikg YnkgcGVyc29ucyBvdGhlciB0aGFuIHRoZSBpbnRlbmRlZCByZWNpcGllbnQocykgaXMgcHJvaGli aXRlZC4gSWYgeW91IHJlY2VpdmUgdGhpcyBlbWFpbCBpbiBlcnJvciwgcGxlYXNlIG5vdGlmeSB0 aGUgc2VuZGVyIGJ5IHBob25lIG9yIGVtYWlsIGltbWVkaWF0ZWx5IGFuZCBkZWxldGUgaXQuIA==