From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from sgoci-sdnproxy-4.icoremail.net (sgoci-sdnproxy-4.icoremail.net [129.150.39.64]) by sourceware.org (Postfix) with ESMTP id 214543858D28 for ; Mon, 28 Aug 2023 08:04:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 214543858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=eswincomputing.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=eswincomputing.com Received: from E0001797DT (unknown [112.46.135.130]) by app2 (Coremail) with SMTP id EggMCgB3vZMXVexkhfNBAA--.24673S2; Mon, 28 Aug 2023 16:04:41 +0800 (CST) Date: Mon, 28 Aug 2023 16:04:41 +0800 From: "Fei Gao" To: "Kito Cheng" , jeffreyalaw Cc: gcc-patches , "Palmer Dabbelt" , Sinan , jiawei Subject: Re: Re: [PATCH 1/4][V4][RISC-V] support cm.push cm.pop cm.popret in zcmp References: <20230607055215.29332-1-gaofei@eswincomputing.com>, <20230607055215.29332-2-gaofei@eswincomputing.com>, , , <20230820185347870694172@eswincomputing.com> X-Priority: 3 X-GUID: DA615623-BB8C-4EEB-A456-BC3980E3AF05 X-Has-Attach: no X-Mailer: Foxmail 7.2.15.80[cn] Mime-Version: 1.0 Message-ID: <2023082816043905881314@eswincomputing.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-CM-TRANSID:EggMCgB3vZMXVexkhfNBAA--.24673S2 X-Coremail-Antispam: 1UD129KBjvJXoWxtrWDWFWrKFW7GF1DZFW5Jrb_yoW3Cw1xpa yktFy5AFyrWrn7W3WrKr1fJry3Jr1UWw18Zr1UXF15Jr4DXFW2gr4UXw4qgrZrJFs5Xr17 Cr1fGr9xZ34UJFUanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUU9Ib7Iv0xC_tr1lb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I2 0VC2zVCF04k26cxKx2IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rw A2F7IY1VAKz4vEj48ve4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_tr0E3s1l84ACjcxK6xII jxv20xvEc7CjxVAFwI0_Gr1j6F4UJwA2z4x0Y4vEx4A2jsIE14v26rxl6s0DM28EF7xvwV C2z280aVCY1x0267AKxVW0oVCq3wAS0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC 0VAKzVAqx4xG6I80ewAv7VC0I7IYx2IY67AKxVWUJVWUGwAv7VC2z280aVAFwI0_Gr0_Cr 1lOx8S6xCaFVCjc4AY6r1j6r4UM4x0Y48IcxkI7VAKI48JM4xvF2IEb7IF0Fy264kE64k0 F24lc2xSY4AK67AK6r43MxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY6r1j6r4UMI 8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF67AK xVWUAVWUtwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1xMIIF0xvE2Ix0cI 8IcVCY1x0267AKxVWUJVW8JwCI42IY6xAIw20EY4v20xvaj40_Jr0_JF4lIxAIcVC2z280 aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVW8JVW8Jr1l6VACY4xI67k04243Ab IYCTnIWIevJa73UjIFyTuYvjxUIl1vDUUUU X-CM-SenderInfo: xjdrwv3l6h245lqf0zpsxwx03jof0z/ X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,BODY_8BITS,KAM_DMARC_STATUS,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP,WEIRD_PORT 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: SGkgS2l0byAmIEplZmYKCkEgbmV3IHNlcmllcyBmb3IgemNtcChodHRwczovL3BhdGNod29yay5z b3VyY2V3YXJlLm9yZy9wcm9qZWN0L2djYy9saXN0Lz9zZXJpZXM9MjM5MjkpIHRvOgoxLiBzb2x2 ZSB0aGUgMiBpc3N1ZXMgS2l0byBjYXRjaGVkCjIuIHJlYmFzZQoKVGhlIG5ldyBzZXJpZXMgd291 bGQgYmUgYSByZXBsYWNlbWVudCBvZiB0aGUgZm9sbG93aW5nOgpodHRwczovL3BhdGNod29yay5z b3VyY2V3YXJlLm9yZy9wcm9qZWN0L2djYy9saXN0Lz9zZXJpZXM9MjE1NzcKaHR0cHM6Ly9wYXRj aHdvcmsuc291cmNld2FyZS5vcmcvcHJvamVjdC9nY2MvcGF0Y2gvMjAyMzA2MDcwNTUyMTUuMjkz MzItMi1nYW9mZWlAZXN3aW5jb21wdXRpbmcuY29tLwoKVGhlIHJlc3Qgb2YgemNtcCBwYXRjaGVz IHdpbGwgYmUgc2VuZCBvdXQgYWZ0ZXIgdGhlIG5ld8Kgc2VyaWVzIGFjY2VwdGVkIHRvIGF2b2lk IHJlYmFzZSBhZ2FpbiBhbiBhZ2Fpbi4KCkJSLMKgCkZlaQoKCk9uIDIwMjMtMDgtMjDCoDE4OjUz IMKgRmVpIEdhbyA8Z2FvZmVpQGVzd2luY29tcHV0aW5nLmNvbT4gd3JvdGU6Cj4KPgo+SGkgS2l0 bwo+Cj5UaGlzIGlzc3VlIGlzIGR1ZSB0byB6Y21wIGFuZCBzaHJpbmstd3JhcC1zZXBhcmF0ZSBj b25mbGljdCwKPndoaWNoIGhhcyBiZWVuIGFkZHJlc3NlZCBieSBhbiB1bmRlci1yZXZpZXcgcGF0 Y2guCj5bUEFUQ0ggMC8yXSByZXNvbHZlIGNvbmZpbGN0IGJldHdlZW4gUklTQy1WIHpjbXAgYW5k IHNocmluay13cmFwLXNlcGFyYXRlCj5odHRwczovL3BhdGNod29yay5zb3VyY2V3YXJlLm9yZy9w cm9qZWN0L2djYy9saXN0Lz9zZXJpZXM9MjE1NzcKPmh0dHBzOi8vd3d3Lm1haWwtYXJjaGl2ZS5j b20vZ2NjLXBhdGNoZXNAZ2NjLmdudS5vcmcvbXNnMzExNDg3Lmh0bWwKPgo+SSdtIG1ha2luZyDC oFtQQVRDSCAxLzRdW1Y1XVtSSVNDLVZdIHN1cHBvcnQgY20ucHVzaCBjbS5wb3AgY20ucG9wcmV0 IGluIHpjbXAgZm9yIHRoZSAxc3QgaXNzdWUgeW91IGNhdGNoZWQuCj5QbGVhc2UgbGV0IG1lIGtu b3cgaWYgeW91IHdhbnQgbWUgdG8gbWVyZ2XCoAo+aHR0cHM6Ly93d3cubWFpbC1hcmNoaXZlLmNv bS9nY2MtcGF0Y2hlc0BnY2MuZ251Lm9yZy9tc2czMTE0ODYuaHRtbAo+aW50b8KgW1BBVENIIDEv NF1bVjVdW1JJU0MtVl0uIAo+Cj5CUizCoAo+RmVpCj5PbiAyMDIzLTA4LTE2wqAxNjozOCDCoEtp dG8gQ2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29tPiB3cm90ZToKPj4KPj5Bbm90aGVyIGZhaWwg Y2FzZSBmb3IgQ0ZJOgo+Pgo+PiQgcmlzY3Y2NC11bmtub3duLWVsZi1nY2MgX211bGhjMy5pCj4+ LW1hcmNoPXJ2NjRpbWFmZF96aWNzcl96aWZlbmNlaV96Y2FfemNtcCAtbWFiaT1scDY0ZCAtZ8Kg IC1PMsKgIC1vCj4+X211bGhjMy5zCj4+Cj4+dHlwZWRlZiBmbG9hdCBhIF9fYXR0cmlidXRlX18o KG1vZGUoSEYpKSk7Cj4+YiwgYzsKPj5mKCkgewo+PiBhIGEsIGQsIGUgPSBhICsgZDsKPj4gaWYg KGcoKSAmJiBlKQo+PsKgwqAgYyA9IGI7Cj4+fQo+Pgo+Pgo+PjB4MTBlNTA4YSBtYXliZV9yZWNv cmRfdHJhY2Vfc3RhcnQKPj7CoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xj aGFpbi10cnVuay9nY2MvZ2NjL2R3YXJmMmNmaS5jYzoyNTg0Cj4+MHgxMGU1OGZiIHNjYW5fdHJh Y2UKPj7CoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVuay9n Y2MvZ2NjL2R3YXJmMmNmaS5jYzoyNzg0Cj4+MHgxMGU1ZmFiIGNyZWF0ZV9jZmlfbm90ZXMKPj7C oMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVuay9nY2MvZ2Nj L2R3YXJmMmNmaS5jYzoyOTM4Cj4+MHgxMGU2ZWU0IGV4ZWN1dGVfZHdhcmYyX2ZyYW1lCj4+wqDC oMKgwqDCoMKgIC4uLy4uLy4uLy4uL3Jpc2N2LWdudS10b29sY2hhaW4tdHJ1bmsvZ2NjL2djYy9k d2FyZjJjZmkuY2M6MzMwOQo+PjB4MTBlN2M1YSBleGVjdXRlCj4+wqDCoMKgwqDCoMKgIC4uLy4u Ly4uLy4uL3Jpc2N2LWdudS10b29sY2hhaW4tdHJ1bmsvZ2NjL2djYy9kd2FyZjJjZmkuY2M6Mzc5 Nwo+Pgo+Pk9uIFdlZCwgQXVnIDE2LCAyMDIzIGF0IDQ6MzPigK9QTSBLaXRvIENoZW5nIDxraXRv LmNoZW5nQGdtYWlsLmNvbT4gd3JvdGU6Cj4+Pgo+Pj4gSGkgRmVpOgo+Pj4KPj4+IFRyaWVkIHRv IHVzZSBKaWF3ZWkncyBwYXRjaCB0byB0ZXN0IHRoaXMgcGF0Y2ggYW5kIGZvdW5kIHNvbWUgaXNz dWU6Cj4+Pgo+Pj4KPj4+ID4gQEAgLTU0MzAsMTMgKzU2MzIsMTUgQEAgcmlzY3ZfZXhwYW5kX3By b2xvZ3VlICh2b2lkKQo+Pj4gPsKgwqDCoCAvKiBTYXZlIHRoZSByZWdpc3RlcnMuwqAgKi8KPj4+ ID7CoMKgwqAgaWYgKChmcmFtZS0+bWFzayB8IGZyYW1lLT5mbWFzaykgIT0gMCkKPj4+ID7CoMKg wqDCoMKgIHsKPj4+ID4gLcKgwqDCoMKgwqAgSE9TVF9XSURFX0lOVCBzdGVwMSA9IHJpc2N2X2Zp cnN0X3N0YWNrX3N0ZXAgKGZyYW1lLCByZW1haW5pbmdfc2l6ZSk7Cj4+PiA+IC0KPj4+ID4gLcKg wqDCoMKgwqAgaW5zbiA9IGdlbl9hZGQzX2luc24gKHN0YWNrX3BvaW50ZXJfcnR4LAo+Pj4gPiAt wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdGFj a19wb2ludGVyX3J0eCwKPj4+ID4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgR0VOX0lOVCAoLXN0ZXAxKSk7Cj4+PiA+IC3CoMKgwqDCoMKgIFJU WF9GUkFNRV9SRUxBVEVEX1AgKGVtaXRfaW5zbiAoaW5zbikpID0gMTsKPj4+ID4gLcKgwqDCoMKg wqAgcmVtYWluaW5nX3NpemUgLT0gc3RlcDE7Cj4+PiA+ICvCoMKgwqDCoMKgIGlmIChrbm93bl9n dCAocmVtYWluaW5nX3NpemUsIGZyYW1lLT5mcmFtZV9wb2ludGVyX29mZnNldCkpCj4+PiA+ICvC oMKgwqDCoMKgwqDCoCB7Cj4+PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgSE9TVF9XSURFX0lOVCBz dGVwMSA9IHJpc2N2X2ZpcnN0X3N0YWNrX3N0ZXAgKGZyYW1lLCByZW1haW5pbmdfc2l6ZSk7Cj4+ PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgcmVtYWluaW5nX3NpemUgLT0gc3RlcDE7Cj4+PiA+ICvC oMKgwqDCoMKgwqDCoMKgwqAgaW5zbiA9IGdlbl9hZGQzX2luc24gKHN0YWNrX3BvaW50ZXJfcnR4 LAo+Pj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgc3RhY2tfcG9pbnRlcl9ydHgsCj4+PiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBHRU5fSU5UICgt c3RlcDEpKTsKPj4+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCBSVFhfRlJBTUVfUkVMQVRFRF9QIChl bWl0X2luc24gKGluc24pKSA9IDE7Cj4+PiA+ICvCoMKgwqDCoMKgwqDCoCB9Cj4+PiA+wqDCoMKg wqDCoMKgwqAgcmlzY3ZfZm9yX2VhY2hfc2F2ZWRfcmVnIChyZW1haW5pbmdfc2l6ZSwgcmlzY3Zf c2F2ZV9yZWcsIGZhbHNlLCBmYWxzZSk7Cj4+PiA+wqDCoMKgwqDCoCB9Cj4+PiA+Cj4+Pgo+Pj4g SSBoaXQgc29tZSBpc3N1ZSBoZXJlIGR1cmluZyBidWlsZGluZyBsaWJnY2MsIEkgdXNlCj4+PiBy aXNjdi1nbnUtdG9vbGNoYWluIHdpdGggLS13aXRoLWFyY2g9cnY2NGd6Y2FfemNtcAo+Pj4KPj4+ IEFuZCB0aGUgZXJyb3IgbWVzc2FnZSBpczoKPj4+Cj4+PiBJbiBmaWxlIGluY2x1ZGVkIGZyb20K Pj4+IC4uLy4uLy4uLy4uLy4uL3Jpc2N2LWdudS10b29sY2hhaW4tdHJ1bmsvZ2NjL2xpYmdjYy91 bndpbmQtZHcyLmM6MTQ3MToKPj4+IC4uLy4uLy4uLy4uLy4uL3Jpc2N2LWdudS10b29sY2hhaW4t dHJ1bmsvZ2NjL2xpYmdjYy91bndpbmQuaW5jOiBJbgo+Pj4gZnVuY3Rpb24gJ19VbndpbmRfQmFj a3RyYWNlJzoKPj4+IC4uLy4uLy4uLy4uLy4uL3Jpc2N2LWdudS10b29sY2hhaW4tdHJ1bmsvZ2Nj L2xpYmdjYy91bndpbmQuaW5jOjMzMDoxOgo+Pj4gaW50ZXJuYWwgY29tcGlsZXIgZXJyb3I6IGlu IGdlbl9yZWdfcnR4LCBhdCBlbWl0LXJ0bC5jYzoxMTc2Cj4+PsKgIDMzMCB8IH0KPj4+wqDCoMKg wqDCoCB8IF4KPj4+IDB4ODM3NTNhIGdlbl9yZWdfcnR4KG1hY2hpbmVfbW9kZSkKPj4+wqDCoMKg wqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVuay9nY2MvZ2NjL2Vt aXQtcnRsLmNjOjExNzYKPj4+IDB4ZjU1NjZmIG1heWJlX2xlZ2l0aW1pemVfb3BlcmFuZAo+Pj7C oMKgwqDCoMKgwqDCoCAuLi8uLi8uLi8uLi9yaXNjdi1nbnUtdG9vbGNoYWluLXRydW5rL2djYy9n Y2Mvb3B0YWJzLmNjOjgwNDcKPj4+IDB4ZjU1NjZmIG1heWJlX2xlZ2l0aW1pemVfb3BlcmFuZHMo aW5zbl9jb2RlLCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkCj4+PiBpbnQsIGV4cGFuZF9vcGVyYW5k KikKPj4+wqDCoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVu ay9nY2MvZ2NjL29wdGFicy5jYzo4MTkxCj4+PiAweGY1MTFkOSBtYXliZV9nZW5faW5zbihpbnNu X2NvZGUsIHVuc2lnbmVkIGludCwgZXhwYW5kX29wZXJhbmQqKQo+Pj7CoMKgwqDCoMKgwqDCoCAu Li8uLi8uLi8uLi9yaXNjdi1nbnUtdG9vbGNoYWluLXRydW5rL2djYy9nY2Mvb3B0YWJzLmNjOjgy MTAKPj4+IDB4ZjU4NTM5IGV4cGFuZF9iaW5vcF9kaXJlY3RseQo+Pj7CoMKgwqDCoMKgwqDCoCAu Li8uLi8uLi8uLi9yaXNjdi1nbnUtdG9vbGNoYWluLXRydW5rL2djYy9nY2Mvb3B0YWJzLmNjOjE0 NTIKPj4+IDB4ZjU2NjY2IGV4cGFuZF9iaW5vcChtYWNoaW5lX21vZGUsIG9wdGFiX3RhZywgcnR4 X2RlZiosIHJ0eF9kZWYqLAo+Pj4gcnR4X2RlZiosIGludCwgb3B0YWJfbWV0aG9kcykKPj4+wqDC oMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVuay9nY2MvZ2Nj L29wdGFicy5jYzoxNTM5Cj4+PiAweGNiZmRkMCBmb3JjZV9vcGVyYW5kKHJ0eF9kZWYqLCBydHhf ZGVmKikKPj4+wqDCoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10 cnVuay9nY2MvZ2NjL2V4cHIuY2M6ODIzMQo+Pj4gMHhjOGZjYTEgZm9yY2VfcmVnKG1hY2hpbmVf bW9kZSwgcnR4X2RlZiopCj4+PsKgwqDCoMKgwqDCoMKgIC4uLy4uLy4uLy4uL3Jpc2N2LWdudS10 b29sY2hhaW4tdHJ1bmsvZ2NjL2djYy9leHBsb3cuY2M6Njg3Cj4+PiAweDE0NGI4Y2QgcmlzY3Zf Zm9yY2VfdGVtcG9yYXJ5Cj4+PsKgwqDCoMKgwqDCoMKgIC4uLy4uLy4uLy4uL3Jpc2N2LWdudS10 b29sY2hhaW4tdHJ1bmsvZ2NjL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2M6MTUzMQo+Pj4gMHgx NDRiOGNkIHJpc2N2X2ZvcmNlX2FkZHJlc3MKPj4+wqDCoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4v cmlzY3YtZ251LXRvb2xjaGFpbi10cnVuay9nY2MvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYzox NTI4Cj4+PiAweDE0NGI4Y2QgcmlzY3ZfbGVnaXRpbWl6ZV9tb3ZlKG1hY2hpbmVfbW9kZSwgcnR4 X2RlZiosIHJ0eF9kZWYqKQo+Pj7CoMKgwqDCoMKgwqDCoCAuLi8uLi8uLi8uLi9yaXNjdi1nbnUt dG9vbGNoYWluLXRydW5rL2djYy9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjOjIzODcKPj4+IDB4 MWFmMDYzZSBnZW5fbW92ZGYocnR4X2RlZiosIHJ0eF9kZWYqKQo+Pj7CoMKgwqDCoMKgwqDCoCAu Li8uLi8uLi8uLi9yaXNjdi1nbnUtdG9vbGNoYWluLXRydW5rL2djYy9nY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2Lm1kOjIxMDcKPj4+IDB4Y2JhNTAzIHJ0eF9pbnNuKiBpbnNuX2dlbl9mbjo6b3BlcmF0 b3IoKTxydHhfZGVmKiwKPj4+IHJ0eF9kZWYqPihydHhfZGVmKiwgcnR4X2RlZiopIGNvbnN0Cj4+ PsKgwqDCoMKgwqDCoMKgIC4uLy4uLy4uLy4uL3Jpc2N2LWdudS10b29sY2hhaW4tdHJ1bmsvZ2Nj L2djYy9yZWNvZy5oOjQxMQo+Pj4gMHhjYmE1MDMgZW1pdF9tb3ZlX2luc25fMShydHhfZGVmKiwg cnR4X2RlZiopCj4+PsKgwqDCoMKgwqDCoMKgIC4uLy4uLy4uLy4uL3Jpc2N2LWdudS10b29sY2hh aW4tdHJ1bmsvZ2NjL2djYy9leHByLmNjOjQxNjQKPj4+IDB4MTQzZDZjNCByaXNjdl9lbWl0X21v dmUocnR4X2RlZiosIHJ0eF9kZWYqKQo+Pj7CoMKgwqDCoMKgwqDCoCAuLi8uLi8uLi8uLi9yaXNj di1nbnUtdG9vbGNoYWluLXRydW5rL2djYy9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjOjE0ODYK Pj4+IDB4MTQzZDZjNCByaXNjdl9zYXZlX3JlZwo+Pj7CoMKgwqDCoMKgwqDCoCAuLi8uLi8uLi8u Li9yaXNjdi1nbnUtdG9vbGNoYWluLXRydW5rL2djYy9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNj OjU3MTUKPj4+IDB4MTQzZTJiOSByaXNjdl9mb3JfZWFjaF9zYXZlZF9yZWcKPj4+wqDCoMKgwqDC oMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVuay9nY2MvZ2NjL2NvbmZp Zy9yaXNjdi9yaXNjdi5jYzo1OTA0Cj4+PiAweDE0NDgwZDAgcmlzY3ZfZXhwYW5kX3Byb2xvZ3Vl KCkKPj4+wqDCoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFpbi10cnVu ay9nY2MvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYzo2MTU2Cj4+PiAweDFhZjU3ZmIgZ2VuX3By b2xvZ3VlKCkKPj4+wqDCoMKgwqDCoMKgwqAgLi4vLi4vLi4vLi4vcmlzY3YtZ251LXRvb2xjaGFp bi10cnVuay9nY2MvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5tZDoyODE2Cj4+PiAweDE0M2M3NDYg dGFyZ2V0X2dlbl9wcm9sb2d1ZQo+Pj7CoMKgwqDCoMKgwqDCoCAuLi8uLi8uLi8uLi9yaXNjdi1n bnUtdG9vbGNoYWluLXRydW5rL2djYy9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2Lm1kOjMzMDIKPj4+ Cj4+Pgo+Pj4gUmVkdWNlZCBjYXNlOgo+Pj4KPj4+ICQgcmlzY3Y2NC11bmtub3duLWVsZi1nY2Mg LW1hcmNoPXJ2NjRpbWFmZF96aWNzcl96aWZlbmNlaV96Y2FfemNtcAo+Pj4gLW1hYmk9bHA2NGTC oCB1bndpbmQtZHcyLmkgLU9zCj4+Pgo+Pj4gdHlwZWRlZiBzdHJ1Y3Qgewo+Pj7CoCBzdHJ1Y3Qg ewo+Pj7CoMKgwqAgc3RydWN0IHsKPj4+wqDCoMKgwqDCoCBzdHJ1Y3Qgewo+Pj7CoMKgwqDCoMKg wqDCoCBsb25nIGEKPj4+wqDCoMKgwqDCoCB9Cj4+PsKgwqDCoCB9IGFbMTI5XQo+Pj7CoCB9Cj4+ PiB9IGI7Cj4+PiBzdHJ1Y3QgYyB7Cj4+PsKgIHZvaWQgKmFbMTI5XQo+Pj4gfSBkKCkgewo+Pj7C oCBzdHJ1Y3QgYyBhOwo+Pj7CoCBfX2J1aWx0aW5fdW53aW5kX2luaXQoKTsKPj4+wqAgYiBlOwo+ Pj7CoCBmKGEsICZlKTsKPj4+IH0=