From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from zg8tmja2lje4os4yms4ymjma.icoremail.net (zg8tmja2lje4os4yms4ymjma.icoremail.net [206.189.21.223]) by sourceware.org (Postfix) with ESMTP id 65C243858CD1 for ; Thu, 21 Dec 2023 01:16:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 65C243858CD1 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 65C243858CD1 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=206.189.21.223 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703121377; cv=none; b=bfOhze761P4Mg1bjs7ciHlludHldUeUgKf+gHEp17NdiJ3wJ3fddYcUnz1YvRJi8qcbUmKwKK/5pN3j5e5LZYaqbHSMZY7IhRAQxHns02BZOVQwjVHf6IKLbGAEt890ZfSFEsKKTylb4ejs9Q9XpZnwSeYaJ9pbSEOFGfJlEOrU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703121377; c=relaxed/simple; bh=NwR2CWxCsBQQrVYOYw4Y23tdGvvKG804ukaCmBJndVU=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=AcGXQHcKUhrJX548y91rqtK/xFrfKSHEwe9OP9YP3aFMjJFynHQl7qLmj6NSqEGYCP1o9WR21yxsF8+jZ/G/bAZlXXVIYbdWse/55rlsAmvZPktBa70t29fgLstAKXEfVL1fok4gq4CDqaUcJfrNIyWSpYUj+n7KC/KKpRzfBe0= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from E0002168DT (unknown [123.157.250.130]) by app1 (Coremail) with SMTP id TAJkCgCnMv1_kYNllHcCAA--.2870S2; Thu, 21 Dec 2023 09:14:40 +0800 (CST) Date: Thu, 21 Dec 2023 09:16:08 +0800 From: "Xiao Zeng" To: "Jeff Johnston" Cc: "newlib@sourceware.org" , "palmer@rivosinc.com" , jeffreyalaw , "Torbjorn SVENSSON" Subject: Re: Re: [PATCH] newlib: libc: Improved the readability of strpbrk with minor optimization References: <20231220061054.35685-1-zengxiao@eswincomputing.com>, X-Priority: 3 X-GUID: 5F3BB4AB-5442-4181-BB3D-C26B91DF018A X-Has-Attach: no X-Mailer: Foxmail 7.2.15.80[cn] Mime-Version: 1.0 Message-ID: <202312210916074865474@eswincomputing.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-CM-TRANSID:TAJkCgCnMv1_kYNllHcCAA--.2870S2 X-Coremail-Antispam: 1UD129KBjvJXoW3GF1fXF4rtry5GF1kGr1fXrb_yoW7ury3pr 1fJr13GrW8Jry8Jr17Jr1jqryUJr1UA3WUJr1UJF18Jr1UAF1jqw1DXr10gry5JrW8Xr4U Xr1UJr1Yvr13Jw7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUQvb7Iv0xC_Cr1lb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I2 0VC2zVCF04k26cxKx2IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rw A2F7IY1VAKz4vEj48ve4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_Ar0_tr1l84ACjcxK6xII jxv20xvEc7CjxVAFwI0_Gr1j6F4UJwA2z4x0Y4vEx4A2jsIE14v26F4UJVW0owA2z4x0Y4 vEx4A2jsIEc7CjxVAFwI0_GcCE3s1lnx0E6VACY4xI67k04243AVACY4xI67k04243AVAK zVAKj4xI6x02cVCv0xWle2I262IYc4CY6c8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I 8CrVC2j2WlYx0E2Ix0cI8IcVAFwI0_Jw0_WrylYx0Ec7CjxVAajcxG14v26r1j6r4UMcIj 6I8E87Iv67AKxVW8Jr0_Cr1UMcvjeVCFs4IE7xkEbVWUJVW8JwACjcxG0xvY0x0EwIxGrw ACY4xI67k04243AVAKzVAKj4xxMxkIecxEwVAFwVWkMxAIw28IcxkI7VAKI48JMxC20s02 6xCaFVCjc4AY6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_Jr I_JrWlx4CE17CEb7AF67AKxVWUAVWUtwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v2 6r1j6r1xMIIF0xvE2Ix0cI8IcVCY1x0267AKxVWUJVW8JwCI42IY6xAIw20EY4v20xvaj4 0_Jr0_JF4lIxAIcVC2z280aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVWUJVW8 JwCE64xvF2IEb7IF0Fy7YxBIdaVFxhVjvjDU0xZFpf9x07UBxRDUUUUU= X-CM-SenderInfo: p2hqw5xldrqvxvzl0uprps33xlqjhudrp/ X-Spam-Status: No, score=-10.4 required=5.0 tests=BAYES_00,BODY_8BITS,GIT_PATCH_0,KAM_ASCII_DIVIDERS,KAM_DMARC_STATUS,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,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: MjAyMy0xMi0yMSAwNjo0OCDCoEplZmYgSm9obnN0b24gPGpqb2huc3RuQHJlZGhhdC5jb20+IHdy b3RlOgo+CsKgCj5Vbmxlc3MgSSBhbSBtaXNzaW5nIHNvbWV0aGluZywgSSB0aGluayB0aGUgY29k ZSBjb3VsZCBiZSBtYWRlIGV2ZW4gc2ltcGxlcgo+dG8gcmV0dXJuIHRoZSBwb2ludGVyIHdoZW4g Zm91bmQgYW5kIHJldHVybiBOVUxMIG90aGVyd2lzZS4gClllcywgeW91IGhhdmUgZm91bmQgYSBt b3JlIGVmZmljaWVudCBtZXRob2QuCkFmdGVyIG15IHRlc3RpbmcsIGZld2VyIGFzc2VtYmx5IGlu c3RydWN0aW9ucyB3ZXJlIGdlbmVyYXRlZC4gVGhpcyBpcyByZWFsbHkgZXhjaXRpbmcuCgpYaWFv J3MgcGF0Y2g6Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQpsaWJjX2Etc3RycGJyay5vOiDCoCDCoCBmaWxlIGZvcm1hdCBlbGY2NC1saXR0 bGVyaXNjdgoKCkRpc2Fzc2VtYmx5IG9mIHNlY3Rpb24gLnRleHQ6CgowMDAwMDAwMDAwMDAwMDAw IDxzdHJwYnJrPjoKwqAgwqAwOiDCoCAwMDA1NDY4MyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGxi dSDCoCDCoCBhMywwKGEwKQoKMDAwMDAwMDAwMDAwMDAwNCA8LkxWTDE+OgrCoCDCoDQ6IMKgIDA0 MDY4MDYzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgYmVxeiDCoCDCoGEzLDQ0IDwuTDEwPgrCoCDC oDg6IMKgIDAwMDVjNjAzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgbGJ1IMKgIMKgIGEyLDAoYTEp CsKgIMKgYzogwqAgMDQwNjAwNjMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBiZXF6IMKgIMKgYTIs NGMgPC5MMTQ+CgowMDAwMDAwMDAwMDAwMDEwIDwuTDU+OgrCoCAxMDogwqAgMDAwNTg3OTMgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqBtdiDCoCDCoCDCoGE1LGExCsKgIDE0OiDCoCAwMDA2MDcxMyDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoG12IMKgIMKgIMKgYTQsYTIKwqAgMTg6IMKgIDAwYzAwMDZm IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgaiDCoCDCoCDCoCAyNCA8Lkw0PgoKMDAwMDAwMDAwMDAw MDAxYyA8LkwxNz46CsKgIDFjOiDCoCAwMDA3YzcwMyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGxi dSDCoCDCoCBhNCwwKGE1KQrCoCAyMDogwqAgMDAwNzA4NjMgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqBiZXF6IMKgIMKgYTQsMzAgPC5MMTY+CgowMDAwMDAwMDAwMDAwMDI0IDwuTDQ+OgrCoCAyNDog wqAgMDAxNzg3OTMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBhZGRpIMKgIMKgYTUsYTUsMQoKMDAw MDAwMDAwMDAwMDAyOCA8LkxWTDU+OgrCoCAyODogwqAgZmVlNjlhZTMgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqBibmUgwqAgwqAgYTMsYTQsMWMgPC5MMTc+CgowMDAwMDAwMDAwMDAwMDJjIDwuTDE+ OgrCoCAyYzogwqAgMDAwMDgwNjcgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqByZXQKCjAwMDAwMDAw MDAwMDAwMzAgPC5MMTY+OgrCoCAzMDogwqAgMDAxNTQ2ODMgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqBsYnUgwqAgwqAgYTMsMShhMCkKwqAgMzQ6IMKgIDAwMTUwNTEzIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgYWRkaSDCoCDCoGEwLGEwLDEKCjAwMDAwMDAwMDAwMDAwMzggPC5MVkw4PjoKwqAgMzg6 IMKgIGZjMDY5Y2UzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgYm5leiDCoCDCoGEzLDEwIDwuTDU+ CgowMDAwMDAwMDAwMDAwMDNjIDwuTDY+OgrCoCAzYzogwqAgMDAwN2M3ODMgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqBsYnUgwqAgwqAgYTUsMChhNSkKCjAwMDAwMDAwMDAwMDAwNDAgPC5MVkw5PjoK wqAgNDA6IMKgIGZlMDc5NmUzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgYm5leiDCoCDCoGE1LDJj IDwuTDE+CgowMDAwMDAwMDAwMDAwMDQ0IDwuTDEwPjoKwqAgNDQ6IMKgIDAwMDAwNTEzIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgbGkgwqAgwqAgwqBhMCwwCgowMDAwMDAwMDAwMDAwMDQ4IDwuTFZM MTE+OgrCoCA0ODogwqAgMDAwMDgwNjcgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqByZXQKCjAwMDAw MDAwMDAwMDAwNGMgPC5MMTQ+OgrCoCA0YzogwqAgMDAxNTQ2ODMgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqBsYnUgwqAgwqAgYTMsMShhMCkKwqAgNTA6IMKgIDAwMTUwNTEzIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgYWRkaSDCoCDCoGEwLGEwLDEKwqAgNTQ6IMKgIGZlMDY5Y2UzIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgYm5leiDCoCDCoGEzLDRjIDwuTDE0PgrCoCA1ODogwqAgMDAwNTg3OTMgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqBtdiDCoCDCoCDCoGE1LGExCsKgIDVjOiDCoCBmZTFmZjA2ZiDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoGogwqAgwqAgwqAgM2MgPC5MNj4KLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpKZWZmJ3MgcGF0Y2gK LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CmxpYmNfYS1zdHJwYnJrLm86IMKgIMKgIGZpbGUgZm9ybWF0IGVsZjY0LWxpdHRsZXJpc2N2CgoK RGlzYXNzZW1ibHkgb2Ygc2VjdGlvbiAudGV4dDoKCjAwMDAwMDAwMDAwMDAwMDAgPHN0cnBicms+ OgrCoCDCoDA6IMKgIDAwMDU0NjgzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgbGJ1IMKgIMKgIGEz LDAoYTApCsKgIMKgNDogwqAgMDIwNjhjNjMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBiZXF6IMKg IMKgYTMsM2MgPC5MOD4KwqAgwqA4OiDCoCAwMDA1YzYwMyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oGxidSDCoCDCoCBhMiwwKGExKQrCoCDCoGM6IMKgIDAyMDYwYzYzIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgYmVxeiDCoCDCoGEyLDQ0IDwuTDEyPgoKMDAwMDAwMDAwMDAwMDAxMCA8Lkw1PjoKwqAg MTA6IMKgIDAwMDU4NzkzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgbXYgwqAgwqAgwqBhNSxhMQrC oCAxNDogwqAgMDAwNjA3MTMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBtdiDCoCDCoCDCoGE0LGEy CsKgIDE4OiDCoCAwMGMwMDA2ZiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGogwqAgwqAgwqAgMjQg PC5MND4KCjAwMDAwMDAwMDAwMDAwMWMgPC5MMTU+OgrCoCAxYzogwqAgMDAwN2M3MDMgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqBsYnUgwqAgwqAgYTQsMChhNSkKwqAgMjA6IMKgIDAwMDcwODYzIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgYmVxeiDCoCDCoGE0LDMwIDwuTDE0PgoKMDAwMDAwMDAwMDAw MDAyNCA8Lkw0PjoKwqAgMjQ6IMKgIDAwMTc4NzkzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgYWRk aSDCoCDCoGE1LGE1LDEKCjAwMDAwMDAwMDAwMDAwMjggPC5MVkw0PjoKwqAgMjg6IMKgIGZlZDcx YWUzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgYm5lIMKgIMKgIGE0LGEzLDFjIDwuTDE1PgrCoCAy YzogwqAgMDAwMDgwNjcgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqByZXQKCjAwMDAwMDAwMDAwMDAw MzAgPC5MMTQ+OgrCoCAzMDogwqAgMDAxNTQ2ODMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBsYnUg wqAgwqAgYTMsMShhMCkKwqAgMzQ6IMKgIDAwMTUwNTEzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg YWRkaSDCoCDCoGEwLGEwLDEKCjAwMDAwMDAwMDAwMDAwMzggPC5MVkw2PjoKwqAgMzg6IMKgIGZj MDY5Y2UzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgYm5leiDCoCDCoGEzLDEwIDwuTDU+CgowMDAw MDAwMDAwMDAwMDNjIDwuTDg+OgrCoCAzYzogwqAgMDAwMDA1MTMgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqBsaSDCoCDCoCDCoGEwLDAKCjAwMDAwMDAwMDAwMDAwNDAgPC5MVkw3PjoKwqAgNDA6IMKg IDAwMDA4MDY3IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgcmV0CgowMDAwMDAwMDAwMDAwMDQ0IDwu TDEyPjoKwqAgNDQ6IMKgIDAwMTU0NjgzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgbGJ1IMKgIMKg IGEzLDEoYTApCsKgIDQ4OiDCoCAwMDE1MDUxMyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGFkZGkg wqAgwqBhMCxhMCwxCsKgIDRjOiDCoCBmZTA2OWNlMyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGJu ZXogwqAgwqBhMyw0NCA8LkwxMj4KwqAgNTA6IMKgIGZlZGZmMDZmIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgaiDCoCDCoCDCoCAzYyA8Lkw4PgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQWZ0ZXIgY2FyZWZ1bCBjb21wYXJpc29uLCBpdCB3 YXMgZm91bmQgdGhhdCB0aGVyZSBhcmUgZmV3ZXIgYXNzZW1ibHkKaW5zdHJ1Y3Rpb25zIGFmdGVy IHRoZSBKZWZmJ3MgcGF0Y2guCgo+Cj5pbmRleCA3NzRkYjFlLi5kOTg0NzQ1IDEwMDY0NAo+LS0t IGEvbmV3bGliL2xpYmMvc3RyaW5nL3N0cnBicmsuYwo+KysrIGIvbmV3bGliL2xpYmMvc3RyaW5n L3N0cnBicmsuYwo+QEAgLTI5LDIzICsyOSwxNiBAQCBzdHJwYnJrIChjb25zdCBjaGFyICpzMSwK PsKgwqDCoMKgwqDCoMKgIGNvbnN0IGNoYXIgKnMyKQo+IHsKPsKgwqAgY29uc3QgY2hhciAqYyA9 IHMyOwo+LcKgIGlmICghKnMxKQo+LcKgwqDCoCByZXR1cm4gKGNoYXIgKikgTlVMTDsKPgo+wqDC oCB3aGlsZSAoKnMxKQo+wqDCoMKgwqAgewo+wqDCoMKgwqDCoMKgIGZvciAoYyA9IHMyOyAqYzsg YysrKQo+wqDCoMKgwqDCoMKgwqAgewo+wqDCoMKgwqDCoMKgwqDCoMKgIGlmICgqczEgPT0gKmMp Cj4twqDCoMKgwqDCoMKgwqDCoMKgwqAgYnJlYWs7Cj4rwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0 dXJuIChjaGFyICopIHMxOwo+wqDCoMKgwqDCoMKgwqAgfQo+LcKgwqDCoMKgwqAgaWYgKCpjKQo+ LcKgwqDCoMKgwqDCoCBicmVhazsKPsKgwqDCoMKgwqDCoCBzMSsrOwo+wqDCoMKgwqAgfQo+Cj4t wqAgaWYgKCpjID09ICdcMCcpCj4twqDCoMKgIHMxID0gTlVMTDsKPi0KPi3CoCByZXR1cm4gKGNo YXIgKikgczE7Cj4rwqAgcmV0dXJuIChjaGFyICopIE5VTEw7Cj4gfQo+Cj5PbiBXZWQsIERlYyAy MCwgMjAyMyBhdCAxOjEy4oCvQU0gWGlhbyBaZW5nIDx6ZW5neGlhb0Blc3dpbmNvbXB1dGluZy5j b20+Cj53cm90ZToKPgo+PiBTaWduZWQtb2ZmLWJ5OiBYaWFvIFplbmcgPHplbmd4aWFvQGVzd2lu Y29tcHV0aW5nLmNvbT4KPj4gLS0tCj4+wqAgbmV3bGliL2xpYmMvc3RyaW5nL3N0cnBicmsuYyB8 IDUgKystLS0KPj7CoCAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvbmV3bGliL2xpYmMvc3RyaW5nL3N0cnBicmsuYyBiL25l d2xpYi9saWJjL3N0cmluZy9zdHJwYnJrLmMKPj4gaW5kZXggNzc0ZGIxZTZkLi45NWU4OWMyMGMg MTAwNjQ0Cj4+IC0tLSBhL25ld2xpYi9saWJjL3N0cmluZy9zdHJwYnJrLmMKPj4gKysrIGIvbmV3 bGliL2xpYmMvc3RyaW5nL3N0cnBicmsuYwo+PiBAQCAtMzcsMTUgKzM3LDE0IEBAIHN0cnBicmsg KGNvbnN0IGNoYXIgKnMxLAo+PsKgwqDCoMKgwqDCoMKgIGZvciAoYyA9IHMyOyAqYzsgYysrKQo+ PsKgwqDCoMKgwqDCoMKgwqAgewo+PsKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmICgqczEgPT0gKmMp Cj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsKPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg IGdvdG8gZW5kOwo+PsKgwqDCoMKgwqDCoMKgwqAgfQo+PiAtwqDCoMKgwqDCoCBpZiAoKmMpCj4+ IC3CoMKgwqDCoMKgwqAgYnJlYWs7Cj4+wqDCoMKgwqDCoMKgwqAgczErKzsKPj7CoMKgwqDCoMKg IH0KPj4KPj7CoMKgwqAgaWYgKCpjID09ICdcMCcpCj4+wqDCoMKgwqDCoCBzMSA9IE5VTEw7Cj4+ Cj4+ICtlbmQ6Cj4+wqDCoMKgIHJldHVybiAoY2hhciAqKSBzMTsKPj7CoCB9Cj4+IC0tCj4+IDIu MTcuMQo+Pgo+PgrCoApUaGFua3MKWGlhbyBaZW5nCgo=