From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from azure-sdnproxy.icoremail.net (azure-sdnproxy.icoremail.net [20.231.56.155]) by sourceware.org (Postfix) with ESMTP id C902A3858D20 for ; Sat, 18 May 2024 02:59:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C902A3858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=eswincomputing.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=eswincomputing.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C902A3858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=20.231.56.155 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716001174; cv=none; b=wi/FN9bO+QNlLk4P+o4o0DgC5rqt1TjbucfCzNAydbWZdpLFwQQTO529YAqyRxEd0tVCPKLDqYTQZMpYmVaAqQh3WJSCV2ImPFnUiQ8GKcgee8ttsPrPuTU8LLQSD/5lOSZpmWkyg3IxUPiQhtLiEn+l5WLI88TyntMuCVGCPO4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716001174; c=relaxed/simple; bh=E0DUtNwflfWy1N8qyyYYfEEAk9lKycZ3Ug7e4eFh1Uc=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=QCO3++60k6Vk3thYNHizub2c0ijEX6b2omeZzNszkjEF+udDFppC7BMJ7wERwVzpa5LSLfGCSsIPSg30YtzBPZMjxa1/MsGfENXJvCiKFz6gBSLM2RtCNv6SpZ1X/0JWlb2VyfuSLpUGp7+getjqzDHtFDrk2zyznGv1lPnWCWk= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from E0002168DT (unknown [10.12.97.254]) by app1 (Coremail) with SMTP id TAJkCgD3iuIPGUhmn+8LAA--.9961S2; Sat, 18 May 2024 10:57:19 +0800 (CST) Date: Sat, 18 May 2024 10:59:20 +0800 From: "Xiao Zeng" To: kito.cheng Cc: gcc-patches , jeffreyalaw , research_trasio , palmer , zhengyu Subject: [COMMITTED] RISC-V: Modify _Bfloat16 to __bf16 References: <20240517081013.12611-1-zengxiao@eswincomputing.com>, X-Priority: 3 X-GUID: CB8ABC70-BD48-4DD3-B034-02A28196CC12 X-Has-Attach: no X-Mailer: Foxmail 7.2.19.158[cn] Mime-Version: 1.0 Message-ID: <202405181059197312082@eswincomputing.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-CM-TRANSID:TAJkCgD3iuIPGUhmn+8LAA--.9961S2 X-Coremail-Antispam: 1UD129KBjvJXoW3GF1Uur4rXFyDuFykuFW7Jwb_yoWfur1xp3 WkJryYkryrAF97Wr13tFyUJryjqr4xWw15Gw1UJFyxAw45JrWjgF1qgry2gF1UXFW8Xr1a kr429ay5Z3WxXrJanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUPGb7Iv0xC_tr1lb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I2 0VC2zVCF04k26cxKx2IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rw A2F7IY1VAKz4vEj48ve4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_Gr0_Xr1l84ACjcxK6xII jxv20xvEc7CjxVAFwI0_Gr0_Cr1l84ACjcxK6I8E87Iv67AKxVW0oVCq3wA2z4x0Y4vEx4 A2jsIEc7CjxVAFwI0_GcCE3s1lnx0E6VACY4xI67k04243AVACY4xI67k04243AVAKzVAK j4xI6x02cVCv0xWle2I262IYc4CY6c8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I8CrV C2j2WlYx0E2Ix0cI8IcVAFwI0_Jr0_Jr4lYx0Ex4A2jsIE14v26r1j6r4UMcvjeVCFs4IE 7xkEbVWUJVW8JwACjcxG0xvY0x0EwIxGrwACY4xI67k04243AVAKzVAKj4xxMxkIecxEwV Cm-wCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE7xkEbVWUJVW8JwC20s026c02F40E14v2 6r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E67AF67kF1VAFwI0_JF0_Jw1lIxkGc2 Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7CjxVAFwI0_ Jr0_Gr1lIxAIcVCF04k26cxKx2IYs7xG6r1j6r1xMIIF0xvEx4A2jsIE14v26r1j6r4UMI IF0xvEx4A2jsIEc7CjxVAFwI0_Jr0_Gr1l6VACY4xI67k04243AbIYCTnIWIevJa73UjIF yTuYvjxU5wZ2DUUUU X-CM-SenderInfo: p2hqw5xldrqvxvzl0uprps33xlqjhudrp/ X-Spam-Status: No, score=-10.1 required=5.0 tests=BAYES_00,BODY_8BITS,GIT_PATCH_0,KAM_DMARC_STATUS,KAM_NUMSUBJECT,KAM_SHORT,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS,TXREP,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: MjAyNC0wNS0xNyAxNjoxOcKgIEtpdG8gQ2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29tPiB3cm90 ZToKPgo+TEdUTSwgdGhhbmtzIGZvciBmaXhpbmcgdGhpcyA6KSAKMcKgUGFzc2VkIENJIHRlc3Rp bmc6CjxodHRwczovL3BhdGNod29yay5zb3VyY2V3YXJlLm9yZy9wcm9qZWN0L2djYy9wYXRjaC8y MDI0MDUxNzA4MTAxMy4xMjYxMS0xLXplbmd4aWFvQGVzd2luY29tcHV0aW5nLmNvbS8+CgoywqBw dXNoZWQgdG8gdHJ1bmsuCj4KPk9uIEZyaSwgTWF5IDE3LCAyMDI0IGF0IDQ6MDXigK9QTSBYaWFv IFplbmcgPHplbmd4aWFvQGVzd2luY29tcHV0aW5nLmNvbT4gd3JvdGU6Cj4+Cj4+IEFjY29yZGlu ZyB0byB0aGUgZGVzY3JpcHRpb24gaW46Cj4+IDxodHRwczovL2dpdGh1Yi5jb20vcmlzY3Ytbm9u LWlzYS9yaXNjdi1lbGYtcHNhYmktZG9jL3B1bGwvMzY3PiwKPj4gdGhlIHR5cGUgcmVwcmVzZW50 YXRpb24gc3ltYm9sIG9mIEJGMTYgaGFzIGJlZW4gY29ycmVjdGVkLgo+Pgo+PiBLaXRvIENoZW5n IHBvaW50ZWQgb3V0IHJlbGV2YW50IGluZm9ybWF0aW9uIGluIHRoZSBlbWFpbDoKPj4gPGh0dHBz Oi8vZ2NjLmdudS5vcmcvcGlwZXJtYWlsL2djYy1wYXRjaGVzLzIwMjQtTWF5LzY1MTg1MC5odG1s Pgo+Pgo+PiBnY2MvQ2hhbmdlTG9nOgo+Pgo+PsKgwqDCoMKgwqDCoMKgwqAgKiBjb25maWcvcmlz Y3YvcmlzY3YtYnVpbHRpbnMuY2MgKHJpc2N2X2luaXRfYnVpbHRpbl90eXBlcyk6Cj4+wqDCoMKg wqDCoMKgwqDCoCBNb2RpZnkgX0JmbG9hdDE2IHRvIF9fYmYxNi4KPj7CoMKgwqDCoMKgwqDCoMKg ICogY29uZmlnL3Jpc2N2L3Jpc2N2LmNjIChyaXNjdl9tYW5nbGVfdHlwZSk6IERpdHRvLgo+Pgo+ PiBnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoKPj4KPj7CoMKgwqDCoMKgwqDCoMKgICogZ2NjLnRh cmdldC9yaXNjdi9fQmZsb2F0MTYtbmFuYm94aW5nLmM6IE1vdmUgdG8uLi4KPj7CoMKgwqDCoMKg wqDCoMKgICogZ2NjLnRhcmdldC9yaXNjdi9fX2JmMTYtbmFuYm94aW5nLmM6IC4uLmhlcmUuCj4+ wqDCoMKgwqDCoMKgwqDCoCAqIGdjYy50YXJnZXQvcmlzY3YvYmYxNl9hcml0aG1ldGljLmM6IE1v ZGlmeSBfQmZsb2F0MTYgdG8gX19iZjE2Lgo+PsKgwqDCoMKgwqDCoMKgwqAgKiBnY2MudGFyZ2V0 L3Jpc2N2L2JmMTZfY2FsbC5jOiBEaXR0by4KPj7CoMKgwqDCoMKgwqDCoMKgICogZ2NjLnRhcmdl dC9yaXNjdi9iZjE2X2NvbXBhcmlzb24uYzogRGl0dG8uCj4+wqDCoMKgwqDCoMKgwqDCoCAqIGdj Yy50YXJnZXQvcmlzY3YvYmYxNl9mbG9hdF9saWJjYWxsX2NvbnZlcnQuYzogRGl0dG8uCj4+wqDC oMKgwqDCoMKgwqDCoCAqIGdjYy50YXJnZXQvcmlzY3YvYmYxNl9pbnRlZ2VyX2xpYmNhbGxfY29u dmVydC5jOiBEaXR0by4KPj4gLS0tCj4+wqAgZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1idWlsdGlu cy5jY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgNiArKystLS0KPj7C oCBnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCAyICstCj4+wqAgLi4uL3tfQmZsb2F0MTYtbmFu Ym94aW5nLmMgPT4gX19iZjE2LW5hbmJveGluZy5jfcKgwqDCoCB8IDEyICsrKysrKy0tLS0tLQo+ PsKgIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9iZjE2X2FyaXRobWV0aWMuY8KgwqDC oMKgIHzCoCA2ICsrKy0tLQo+PsKgIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9iZjE2 X2NhbGwuY8KgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA0ICsrLS0KPj7CoCBnY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvYmYxNl9jb21wYXJpc29uLmPCoMKgwqDCoCB8wqAgNiArKystLS0K Pj7CoCAuLi4vZ2NjLnRhcmdldC9yaXNjdi9iZjE2X2Zsb2F0X2xpYmNhbGxfY29udmVydC5jwqDC oMKgIHzCoCAyICstCj4+wqAgLi4uL2djYy50YXJnZXQvcmlzY3YvYmYxNl9pbnRlZ2VyX2xpYmNh bGxfY29udmVydC5jwqAgfMKgIDIgKy0KPj7CoCA4IGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlv bnMoKyksIDIwIGRlbGV0aW9ucygtKQo+PsKgIHJlbmFtZSBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3Yve19CZmxvYXQxNi1uYW5ib3hpbmcuYyA9PiBfX2JmMTYtbmFuYm94aW5nLmN9ICg4 MyUpCj4+Cj4+IGRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LWJ1aWx0aW5zLmNj IGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1idWlsdGlucy5jYwo+PiBpbmRleCA0YzA4ODM0Mjg4 YS4uZGM1NGUxYTU5YjUgMTAwNjQ0Cj4+IC0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtYnVp bHRpbnMuY2MKPj4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1idWlsdGlucy5jYwo+PiBA QCAtMjc1LDcgKzI3NSw3IEBAIHJpc2N2X2luaXRfYnVpbHRpbl90eXBlcyAodm9pZCkKPj7CoMKg wqDCoMKgIGxhbmdfaG9va3MudHlwZXMucmVnaXN0ZXJfYnVpbHRpbl90eXBlIChyaXNjdl9mbG9h dDE2X3R5cGVfbm9kZSwKPj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJfRmxvYXQx NiIpOwo+Pgo+PiAtwqAgLyogUHJvdmlkZSB0aGUgX0JmbG9hdDE2IHR5cGUgYW5kIGJmbG9hdDE2 X3R5cGVfbm9kZSBpZiBuZWVkZWQuwqAgKi8KPj4gK8KgIC8qIFByb3ZpZGUgdGhlIF9fYmYxNiB0 eXBlIGFuZCBiZmxvYXQxNl90eXBlX25vZGUgaWYgbmVlZGVkLsKgICovCj4+wqDCoMKgIGlmICgh YmZsb2F0MTZfdHlwZV9ub2RlKQo+PsKgwqDCoMKgwqAgewo+PsKgwqDCoMKgwqDCoMKgIHJpc2N2 X2JmbG9hdDE2X3R5cGVfbm9kZSA9IG1ha2Vfbm9kZSAoUkVBTF9UWVBFKTsKPj4gQEAgLTI4Niw5 ICsyODYsOSBAQCByaXNjdl9pbml0X2J1aWx0aW5fdHlwZXMgKHZvaWQpCj4+wqDCoMKgIGVsc2UK Pj7CoMKgwqDCoMKgIHJpc2N2X2JmbG9hdDE2X3R5cGVfbm9kZSA9IGJmbG9hdDE2X3R5cGVfbm9k ZTsKPj4KPj4gLcKgIGlmICghbWF5YmVfZ2V0X2lkZW50aWZpZXIgKCJfQmZsb2F0MTYiKSkKPj4g K8KgIGlmICghbWF5YmVfZ2V0X2lkZW50aWZpZXIgKCJfX2JmMTYiKSkKPj7CoMKgwqDCoMKgIGxh bmdfaG9va3MudHlwZXMucmVnaXN0ZXJfYnVpbHRpbl90eXBlIChyaXNjdl9iZmxvYXQxNl90eXBl X25vZGUsCj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIl9CZmxvYXQxNiIpOwo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJfX2JmMTYiKTsKPj7CoCB9Cj4+Cj4+wqAgLyog SW1wbGVtZW50IFRBUkdFVF9JTklUX0JVSUxUSU5TLsKgICovCj4+IGRpZmYgLS1naXQgYS9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LmNjIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYwo+PiBpbmRl eCA0MDY3NTA1MjcwZS4uY2YxNWExMmRlM2EgMTAwNjQ0Cj4+IC0tLSBhL2djYy9jb25maWcvcmlz Y3YvcmlzY3YuY2MKPj4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYwo+PiBAQCAtMTAy NjIsNyArMTAyNjIsNyBAQCByaXNjdl9hc2FuX3NoYWRvd19vZmZzZXQgKHZvaWQpCj4+wqAgc3Rh dGljIGNvbnN0IGNoYXIgKgo+PsKgIHJpc2N2X21hbmdsZV90eXBlIChjb25zdF90cmVlIHR5cGUp Cj4+wqAgewo+PiAtwqAgLyogSGFsZi1wcmVjaXNpb24gZmxvYXQsIF9GbG9hdDE2IGlzICJERjE2 XyIgYW5kIF9CZmxvYXQxNiBpcyAiREYxNmIiLsKgICovCj4+ICvCoCAvKiBIYWxmLXByZWNpc2lv biBmbG9hdCwgX0Zsb2F0MTYgaXMgIkRGMTZfIiBhbmQgX19iZjE2IGlzICJERjE2YiIuwqAgKi8K Pj7CoMKgwqAgaWYgKFNDQUxBUl9GTE9BVF9UWVBFX1AgKHR5cGUpICYmIFRZUEVfUFJFQ0lTSU9O ICh0eXBlKSA9PSAxNikKPj7CoMKgwqDCoMKgIHsKPj7CoMKgwqDCoMKgwqDCoCBpZiAoVFlQRV9N T0RFICh0eXBlKSA9PSBIRm1vZGUpCj4+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvX0JmbG9hdDE2LW5hbmJveGluZy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L19fYmYxNi1uYW5ib3hpbmcuYwo+PiBzaW1pbGFyaXR5IGluZGV4IDgzJQo+PiBy ZW5hbWUgZnJvbSBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvX0JmbG9hdDE2LW5hbmJv eGluZy5jCj4+IHJlbmFtZSB0byBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvX19iZjE2 LW5hbmJveGluZy5jCj4+IGluZGV4IDExYTczZDIyMjM0Li5hOWE1ODZjOThiOSAxMDA2NDQKPj4g LS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L19CZmxvYXQxNi1uYW5ib3hpbmcu Ywo+PiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvX19iZjE2LW5hbmJveGlu Zy5jCj4+IEBAIC0xLDE0ICsxLDE0IEBACj4+wqAgLyogeyBkZy1kbyBjb21waWxlIH0gKi8KPj7C oCAvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0aWZkIC1tYWJpPWxwNjRkIC1tY21vZGVsPW1l ZGxvdyAtTyIgfSAqLwo+Pgo+PiAtX0JmbG9hdDE2IGd2YXIgPSA5Ljg3NjU0Owo+PiArX19iZjE2 IGd2YXIgPSA5Ljg3NjU0Owo+PsKgIHVuaW9uIFUKPj7CoCB7Cj4+wqDCoMKgIHVuc2lnbmVkIHNo b3J0IGkxNjsKPj4gLcKgIF9CZmxvYXQxNiBmMTY7Cj4+ICvCoCBfX2JmMTYgZjE2Owo+PsKgIH07 Cj4+Cj4+IC1fQmZsb2F0MTYKPj4gK19fYmYxNgo+PsKgIHRlc3QxICh1bnNpZ25lZCBzaG9ydCBp bnB1dCkKPj7CoCB7Cj4+wqDCoMKgIHVuaW9uIFUgdG1wOwo+PiBAQCAtMTYsMTkgKzE2LDE5IEBA IHRlc3QxICh1bnNpZ25lZCBzaG9ydCBpbnB1dCkKPj7CoMKgwqAgcmV0dXJuIHRtcC5mMTY7Cj4+ wqAgfQo+Pgo+PiAtX0JmbG9hdDE2Cj4+ICtfX2JmMTYKPj7CoCB0ZXN0MiAoKQo+PsKgIHsKPj7C oMKgwqAgcmV0dXJuIDEuMjM0ZjsKPj7CoCB9Cj4+Cj4+IC1fQmZsb2F0MTYKPj4gK19fYmYxNgo+ PsKgIHRlc3QzICgpCj4+wqAgewo+PsKgwqDCoCByZXR1cm4gZ3ZhcjsKPj7CoCB9Cj4+Cj4+IC1f QmZsb2F0MTYKPj4gK19fYmYxNgo+PsKgIHRlc3QgKCkKPj7CoCB7Cj4+wqDCoMKgIHJldHVybiAw LjBmOwo+PiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZf YXJpdGhtZXRpYy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZfYXJpdGht ZXRpYy5jCj4+IGluZGV4IDllNDg1MDUxMjYwLi4xOTBjYzFkNTc0YSAxMDA2NDQKPj4gLS0tIGEv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZfYXJpdGhtZXRpYy5jCj4+ICsrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9iZjE2X2FyaXRobWV0aWMuYwo+PiBAQCAt NSw5ICs1LDkgQEAKPj7CoCAvKiAxKSBiZiAtPiBzZsKgwqDCoMKgwqDCoMKgwqDCoCAoY2FsbMKg wqDCoMKgwqAgX19leHRlbmRiZnNmMinCoCAqLwo+PsKgIC8qIDIpIHNmMSBbK3wtfCp8L10gc2Yy IChjYWxswqDCoMKgwqDCoCBfX1thZGR8c3VifG11bHxkaXZdc2YzKcKgICovCj4+wqAgLyogMykg c2YgLT4gYmbCoMKgwqDCoMKgwqDCoMKgwqAgKGNhbGzCoMKgwqDCoMKgIF9fdHJ1bmNzZmJmMinC oCAqLwo+PiAtZXh0ZXJuIF9CZmxvYXQxNiBiZjsKPj4gLWV4dGVybiBfQmZsb2F0MTYgYmYxOwo+ PiAtZXh0ZXJuIF9CZmxvYXQxNiBiZjI7Cj4+ICtleHRlcm4gX19iZjE2IGJmOwo+PiArZXh0ZXJu IF9fYmYxNiBiZjE7Cj4+ICtleHRlcm4gX19iZjE2IGJmMjsKPj4KPj7CoCB2b2lkIGJmX2FkZF9i ZiAoKSB7IGJmID0gYmYxICsgYmYyOyB9Cj4+Cj4+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvYmYxNl9jYWxsLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvYmYxNl9jYWxsLmMKPj4gaW5kZXggMjlmNjc3MTk5OTkuLjZhY2UxNDk0MzcwIDEwMDY0 NAo+PiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvYmYxNl9jYWxsLmMKPj4g KysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZfY2FsbC5jCj4+IEBAIC00 LDkgKzQsOSBAQAo+Pgo+PsKgIC8qIDEpIGJmIC0+IHNmIChjYWxswqDCoMKgwqDCoCBfX2V4dGVu ZGJmc2YyKcKgICovCj4+wqAgLyogMikgc2YgLT4gYmYgKGNhbGzCoMKgwqDCoMKgIF9fdHJ1bmNz ZmJmMinCoCAqLwo+PiAtX19hdHRyaWJ1dGVfXyAoKG5vaW5saW5lKSkgX0JmbG9hdDE2IGFkZCAo X0JmbG9hdDE2IGEsIF9CZmxvYXQxNiBiKSB7IHJldHVybiBhICsgYjsgfQo+PiArX19hdHRyaWJ1 dGVfXyAoKG5vaW5saW5lKSkgX19iZjE2IGFkZCAoX19iZjE2IGEsIF9fYmYxNiBiKSB7IHJldHVy biBhICsgYjsgfQo+Pgo+PiAtX0JmbG9hdDE2IHRlc3QoX0JmbG9hdDE2IGEsIF9CZmxvYXQxNiBi KSB7IHJldHVybiBhZGQgKGEsIGIpOyB9Cj4+ICtfX2JmMTYgdGVzdChfX2JmMTYgYSwgX19iZjE2 IGIpIHsgcmV0dXJuIGFkZCAoYSwgYik7IH0KPj4KPj7CoCAvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMgImNhbGxcdF9fZXh0ZW5kYmZzZjIiIDIgfSB9ICovCj4+wqAgLyogeyBk Zy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJjYWxsXHRfX3RydW5jc2ZiZjIiIDEgfSB9 ICovCj4+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvYmYxNl9j b21wYXJpc29uLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvYmYxNl9jb21wYXJp c29uLmMKPj4gaW5kZXggNjlkYjgwM2Y0MDMuLjJjMTNiOGEwYzlhIDEwMDY0NAo+PiAtLS0gYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvYmYxNl9jb21wYXJpc29uLmMKPj4gKysrIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZfY29tcGFyaXNvbi5jCj4+IEBAIC00 LDkgKzQsOSBAQAo+Pgo+PsKgIC8qIDEpIGJmIC0+IHNmwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoY2FsbMKgwqDCoMKgIF9fZXh0ZW5kYmZzZjIpwqAgKi8KPj7CoCAvKiAyKSBzZjEgWzx8 PD18Pnw+PXw9PV0gc2YyIChjYWxswqDCoMKgwqAgX19bbHR8bGV8Z3R8Z2V8ZXFdc2YyKcKgICov Cj4+IC1leHRlcm4gX0JmbG9hdDE2IGJmOwo+PiAtZXh0ZXJuIF9CZmxvYXQxNiBiZjE7Cj4+IC1l eHRlcm4gX0JmbG9hdDE2IGJmMjsKPj4gK2V4dGVybiBfX2JmMTYgYmY7Cj4+ICtleHRlcm4gX19i ZjE2IGJmMTsKPj4gK2V4dGVybiBfX2JmMTYgYmYyOwo+Pgo+PsKgIHZvaWQgYmZfbHRfYmYgKCkg eyBiZiA9IChiZjEgPCBiZjIpID8gYmYxIDogYmYyOyB9Cj4+Cj4+IGRpZmYgLS1naXQgYS9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvYmYxNl9mbG9hdF9saWJjYWxsX2NvbnZlcnQuYyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9iZjE2X2Zsb2F0X2xpYmNhbGxfY29udmVy dC5jCj4+IGluZGV4IGJhNmM2NDYwYmMyLi40MjNhMDcxZDFhNSAxMDA2NDQKPj4gLS0tIGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZfZmxvYXRfbGliY2FsbF9jb252ZXJ0LmMK Pj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L2JmMTZfZmxvYXRfbGliY2Fs bF9jb252ZXJ0LmMKPj4gQEAgLTE0LDcgKzE0LDcgQEAKPj7CoMKgICrCoMKgwqAgYmbCoMKgwqDC oMKgwqDCoMKgwqAgLT4gdGYgPT0gYmYgLT4gc2YgLT4gdGYgKGNhbGzCoMKgIF9fZXh0ZW5kYmZz ZjIgJiYgX19leHRlbmRzZnRmMikKPj7CoCAqLwo+Pgo+PiAtZXh0ZXJuwqDCoCBfQmZsb2F0MTYg YmY7Cj4+ICtleHRlcm7CoMKgIF9fYmYxNsKgwqDCoCBiZjsKPj7CoCBleHRlcm7CoMKgIF9GbG9h dDE2wqAgaGY7Cj4+wqAgZXh0ZXJuwqDCoMKgwqDCoCBmbG9hdMKgIHNmOwo+PsKgIGV4dGVybsKg wqDCoMKgwqAgZG91YmxlIGRmOwo+PiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L2JmMTZfaW50ZWdlcl9saWJjYWxsX2NvbnZlcnQuYyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9iZjE2X2ludGVnZXJfbGliY2FsbF9jb252ZXJ0LmMKPj4gaW5kZXgg YWQ3MTQyNTNhNGEuLjJjMzczMDJlMjk0IDEwMDY0NAo+PiAtLS0gYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvYmYxNl9pbnRlZ2VyX2xpYmNhbGxfY29udmVydC5jCj4+ICsrKyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9iZjE2X2ludGVnZXJfbGliY2FsbF9jb252ZXJ0 LmMKPj4gQEAgLTE2LDcgKzE2LDcgQEAKPj7CoMKgICrCoMKgwqAgYmbCoMKgwqDCoMKgwqDCoMKg wqAgLT4gdWRpL3V0acKgwqDCoMKgIChjYWxswqDCoCBfX2ZpeHVuc3NmW2R8dF1pKQo+PsKgICov Cj4+Cj4+IC1leHRlcm4gX0JmbG9hdDE2IGJmOwo+PiArZXh0ZXJuIF9fYmYxNiBiZjsKPj4KPj7C oCBleHRlcm7CoMKgIHNpZ25lZCBjaGFywqDCoMKgwqDCoMKgIHFpOwo+PsKgIGV4dGVybiB1bnNp Z25lZCBjaGFywqDCoMKgwqDCoCB1cWk7Cj4+IC0tCj4+IDIuMTcuMQo+PgpUaGFua3MKWGlhbyBa ZW5nCgo=