From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 1E3C2440030; Fri, 19 May 2023 14:58:28 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 1E3C2440030 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1684497508; bh=iKq1LObIMsujvoXL8mEOauduxtr33QOyzibiQiYSPao=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=ZmBqUrkNi8kpqqQgnmBsSGCWdbZRp6VSYZ0rV6OerDl8rYU0j7f1h9ACGIsffll3k 2Tc97NJ6/n8G+hgO/c4+JM5uqO9T2zouajiXn5XLijkGmDrJXIF5H9DpqWhqrp0nqQ 7NlYXTBq5/UZU8cVhKrmkYgSIcMZysuVd8kV5Y3I= Received: from f752.i.mail.ru (f752.i.mail.ru [45.84.129.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id BC86443F59C for ; Fri, 19 May 2023 14:58:27 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org BC86443F59C Received: by f752.i.mail.ru with local (envelope-from ) id 1pzykb-00083s-LZ; Fri, 19 May 2023 14:58:26 +0300 Received: by e.mail.ru with HTTP; Fri, 19 May 2023 14:58:25 +0300 To: =?UTF-8?B?U2VyZ2V5IEthcGx1bg==?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 X-SenderField-ReMsg: 16844429431933668568 X-SenderField-Remind: 0 Date: Fri, 19 May 2023 14:58:25 +0300 X-Priority: 3 (Normal) Message-ID: <1684497505.831218025@f752.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--e4Db3775c25FB9e4f163c7EcC4f531E11684497505" In-Reply-To: References: X-7564579A: 646B95376F6C166E X-77F55803: 119C1F4DF6A9251C86B22F0DBD26B6BB3032769314A79B40856C827F5118592C8FD872164937FA4C7E55EEC7C560840FA295FC5827A24433C29BFCB60BC6A8BDD57F9C2D03124DB2 X-C1DE0DAB: 0D63561A33F958A588A4205DDD7925669C168F8815C583904E1C1EC5FEE4A626F87CCE6106E1FC07E67D4AC08A07B9B0CE135D2742255B35CB5012B2E24CD356 X-C8649E89: 1C3962B70DF3F0AD5177F0B940C8B66ECE892A7B2722663E91682638B966EB3F662256BEEFA9527FF43258CDC98CDEAA71B7049B5E036B0BD0F01E2930BDA3E5D51899ECA6EB8B788FBC4C30FF3C8CEC37FD76D11AF80A0DC93D68ED9C7DA52BF9726962D6DFCE39EA455F16B58544A2F7A5749D7A90E508 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS329fgu+/vnDhV096stkuV0FFxFKmZfRF8g== X-Mailru-MI: 800 X-Mailru-Sender: 11C2EC085EDE56FA38FD4C59F7EFE407290EFE96D39B475BBF5B55C9F578922B47060FC4524FA23206CD02445D2D9C8FA2BFD6D8330F0C2D563E610FBBDBB4C842051EA7CBBFB509093DA5C00B83CE8412EB40C6FA10D71EFD657A8799238ED55FEEDEB644C299C0ED14614B50AE0675 X-Mras: OK Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_v2_luajit_3/6=5D_test=3A_?= =?utf-8?q?introduce_utils=2Eh_helper_for_C_tests?= X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Maxim Kokryashkin via Tarantool-patches Reply-To: =?UTF-8?B?TWF4aW0gS29rcnlhc2hraW4=?= Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" ----ALT--e4Db3775c25FB9e4f163c7EcC4f531E11684497505 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpLCBTZXJnZXkhClRoYW5rcyBmb3IgdGhlIHBhdGNoIQpQbGVhc2UgY29uc2lkZXIgYSBmZXcg Y29tbWVudHMgYmVsb3cuCj7CoAo+PlRoaXMgaGVhZGVyIGNvbnRhaW5zIGdlbmVyaWMgaW5pdCBh bmQgY2xvc2UgZm9yIHRlc3RzIGFuZCBoZWxwZXJzIGZvcgo+PmxvYWRpbmcgYXV4aWxpYXJ5IEx1 YSBzY3JpcHQgd2l0aCBmdW5jdGlvbnMgdG8gcnVuIGluc2lkZSBhIEMgdGVzdC4KPj4KPj5JdCB3 aWxsIGJlIHByb3Blcmx5IHVzZWQgaW4gdGhlIG5leHQgY29tbWl0Lgo+Pgo+PlBhcnQgb2YgdGFy YW50b29sL3RhcmFudG9vbCM3OTAwCj4+LS0tCj4+wqB0ZXN0L3RhcmFudG9vbC1jLXRlc3RzL3V0 aWxzLmggfCA2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+wqAxIGZpbGUg Y2hhbmdlZCwgNjMgaW5zZXJ0aW9ucygrKQo+PsKgY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvdGFy YW50b29sLWMtdGVzdHMvdXRpbHMuaAo+Pgo+PmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC1j LXRlc3RzL3V0aWxzLmggYi90ZXN0L3RhcmFudG9vbC1jLXRlc3RzL3V0aWxzLmgKPj5uZXcgZmls ZSBtb2RlIDEwMDY0NAo+PmluZGV4IDAwMDAwMDAwLi5jZjY2ODAwNgo+Pi0tLSAvZGV2L251bGwK Pj4rKysgYi90ZXN0L3RhcmFudG9vbC1jLXRlc3RzL3V0aWxzLmgKPj5AQCAtMCwwICsxLDYzIEBA Cj4+KyNpbmNsdWRlIDxsaW1pdHMuaD4KPj4rI2luY2x1ZGUgPHN0cmluZy5oPgo+PisKPj4rI2lu Y2x1ZGUgImxhdXhsaWIuaCIKPj4rI2luY2x1ZGUgImx1YS5oIgo+PisjaW5jbHVkZSAibHVhaml0 LmgiCj4+KyNpbmNsdWRlICJsdWFsaWIuaCIKPj4rCj4+KyNpbmNsdWRlICJ0ZXN0LmgiCj4+Kwo+ PisvKiBHZW5lcmljIGluaXQgZm9yIG91ciB0ZXN0cy4gKi8KPj4rc3RhdGljIGx1YV9TdGF0ZSAq dXRpbHNfbHVhX2luaXQodm9pZCkKPj4rewo+PisgbHVhX1N0YXRlICpMID0gbHVhTF9uZXdzdGF0 ZSgpOwo+PisgaWYgKCFMKQo+PisgYmFpbF9vdXQoIkNhbid0IGluaXQgTHVhIHN0YXRlIik7Cj4+ KyAvKiBTdG9wIGNvbGxlY3RvciBkdXJpbmcgbGlicmFyeSBpbml0aWFsaXphdGlvbi4gKi8KPj4r IGx1YV9nYyhMLCBMVUFfR0NTVE9QLCAwKTsKPj4rIGx1YUxfb3BlbmxpYnMoTCk7Cj4+KyBsdWFf Z2MoTCwgTFVBX0dDUkVTVEFSVCwgLTEpOwo+PisgcmV0dXJuIEw7Cj4+K30KPj4rCj4+Ky8qIEdl bmVyaWMgY2xvc2UgZm9yIG91ciB0ZXN0cy4gKi8KPj4rc3RhdGljIHZvaWQgdXRpbHNfbHVhX2Ns b3NlKGx1YV9TdGF0ZSAqTCkKPj4rewo+PisgbHVhX2Nsb3NlKEwpOwo+Pit9Cj5EbyB3ZSBfX3Jl YWxseV9fIG5lZWQgdGhpcyBmdW5jdGlvbj8pCj4+Kwo+PisvKgo+PisgKiBMb2FkIHRoZSBwYWly IHRvIHRoZSB0ZXN0IGZpbGUgPGZpbGVuYW1lLXNjcmlwdC5sdWE+Lgo+PisgKiBFYWNoIGZpbGUg c2hvdWxkIHJldHVybiB0aGUgdGFibGUgd2l0aCBmdW5jdGlvbnMgKG5hbWVkIHRoZQo+PisgKiBz YW1lIGFzIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQgdGVzdHMpIHRvIGNhbGwgaW4gdW5pdCB0ZXN0 cy4KPj4rICogUHVzaCB0aGUgdGFibGUgd2l0aCB0aG9zZSBmdW5jdGlvbnMgb24gdGhlIEx1YSBz dGFjay4KPj4rICovCj4+KyNkZWZpbmUgdXRpbHNfbG9hZF9hdXhfc2NyaXB0KEwpIGRvIHsgXAo+ PisgLyogXAo+PisgKiBGb3JtYXQgc2NyaXB0IG5hbWUuIFwKPj4rICogYF9fQUJTX0ZJTEVOQU1F X19gIGlzIHNldCB2aWEgQ01ha2UuIFwKPj4rICovIFwKPj4rIGNoYXIgc2NyaXB0W1BBVEhfTUFY XSA9IF9fQUJTX0ZJTEVOQU1FX187IFwKPj4rIGNoYXIgKmZpbGVfc3VmZml4ID0gc3Ryc3RyKHNj cmlwdCwgIi50ZXN0LmMiKTsgXAo+VGhlIGBzdHJzdHJgIGZ1bmN0aW9uIGlzIG5vdCBzYWZlLCB1 c2UgYHN0cm5zdHJgIGluc3RlYWQuCj5BbHNvLCBtYXliZSBpdCBpcyBiZXR0ZXIgdG8gdXNlIHRo ZSBgc3RycnN0cmAgdmFyaWF0aW9uLAo+YmVjYXVzZSBpdCBzZWFyY2hlcyBmcm9tIHRoZSBlbmQu IEl0IGVsZW1pbmF0ZXMgaXNzdWVzCj5pbiBjYXNlIG9mIGEgZmlsZSB3aXRoIC50ZXN0LmMgc29t ZXdoZXJlIGVsc2UgaW4gdGhlIG5hbWUuCj4+KyBzdHJjcHkoZmlsZV9zdWZmaXgsICItc2NyaXB0 Lmx1YSIpOyBcCj5TYW1lIGFwcGxpZXMgaGVyZS4KPj4rIFwKPj4rIGlmIChsdWFMX2RvZmlsZSgo TCksIHNjcmlwdCkgIT0gTFVBX09LKSB7IFwKPj4rIHRlc3RfY29tbWVudCgiQ2FuJ3QgbG9hZCAl czogJyVzJyIsIHNjcmlwdCwgXAo+PisgbHVhX3Rvc3RyaW5nKChMKSwgLTEpKTsgXAo+PisgYmFp bF9vdXQoIkNhbid0IGxvYWQgYXV4aWxpYXJ5IHNjcmlwdCIpOyBcCj4+KyB9IFwKPj4rIFwKPj4r IGlmICghbHVhX2lzdGFibGUoKEwpLCAtMSkpIFwKPj4rIGJhaWxfb3V0KCJSZXR1cm5lZCB2YWx1 ZSBmcm9tIHNjcmlwdCBpcyBub3QgYSB0YWJsZSIpOyBcCj4+K30gd2hpbGUgKDApCj4+Kwo+Pisv Kgo+PisgKiBBY2NlcHQgYSB0YWJsZSBvbiB0b3Agb2YgdGhlIEx1YSBzdGFjayB3aGljaCBjb250 YWluaW5nIHRoZQo+PisgKiBmdW5jdGlvbiBuYW1lZCBhcyB0aGUgdW5pdCB0ZXN0IHdlIGN1cnJl bnRseSBleGVjdXRpbmcuCj4+KyAqLwo+PisjZGVmaW5lIHV0aWxzX2dldF9hdXhfbGZ1bmMoTCkg ZG8geyBcCj4+KyBsdWFfZ2V0ZmllbGQoKEwpLCAtMSwgX19mdW5jX18pOyBcCj4+KyBpZiAoIWx1 YV9pc2Z1bmN0aW9uKChMKSwgLTEpKSBcCj4+KyBiYWlsX291dCgiQ2FuJ3QgZ2V0IGF1eGlsaWFy eSB0ZXN0IGZ1bmN0aW9uIik7IFwKPj4rfSB3aGlsZSAoMCkKPj4tLQo+PjIuMzQuMQo+wqAKPi0t Cj5CZXN0IHJlZ2FyZHMsCj5NYXhpbSBLb2tyeWFzaGtpbgo+wqA= ----ALT--e4Db3775c25FB9e4f163c7EcC4f531E11684497505 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+SGksIFNlcmdleSE8L2Rpdj48ZGl2PlRoYW5rcyBmb3IgdGhlIHBh dGNoITwvZGl2PjxkaXY+UGxlYXNlIGNvbnNpZGVyIGEgZmV3IGNvbW1lbnRzIGJlbG93LjwvZGl2 PjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2lu OjEwcHg7IHBhZGRpbmc6MCAwIDAgMTBweDsiPjxkaXY+Jm5ic3A7PGJsb2NrcXVvdGUgc3R5bGU9 ImJvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGluZzowIDAg MCAxMHB4OyI+PGRpdiBpZD0iIj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ci PjxkaXY+PGRpdiBpZD0ic3R5bGVfMTY4NDQ0Mjk0MzE5MzM2Njg1NjhfQk9EWSI+VGhpcyBoZWFk ZXIgY29udGFpbnMgZ2VuZXJpYyBpbml0IGFuZCBjbG9zZSBmb3IgdGVzdHMgYW5kIGhlbHBlcnMg Zm9yPGJyPmxvYWRpbmcgYXV4aWxpYXJ5IEx1YSBzY3JpcHQgd2l0aCBmdW5jdGlvbnMgdG8gcnVu IGluc2lkZSBhIEMgdGVzdC48YnI+PGJyPkl0IHdpbGwgYmUgcHJvcGVybHkgdXNlZCBpbiB0aGUg bmV4dCBjb21taXQuPGJyPjxicj5QYXJ0IG9mIHRhcmFudG9vbC90YXJhbnRvb2wjNzkwMDxicj4t LS08YnI+Jm5ic3A7dGVzdC90YXJhbnRvb2wtYy10ZXN0cy91dGlscy5oIHwgNjMgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKzxicj4mbmJzcDsxIGZpbGUgY2hhbmdlZCwgNjMgaW5z ZXJ0aW9ucygrKTxicj4mbmJzcDtjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdC90YXJhbnRvb2wtYy10 ZXN0cy91dGlscy5oPGJyPjxicj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtYy10ZXN0cy91 dGlscy5oIGIvdGVzdC90YXJhbnRvb2wtYy10ZXN0cy91dGlscy5oPGJyPm5ldyBmaWxlIG1vZGUg MTAwNjQ0PGJyPmluZGV4IDAwMDAwMDAwLi5jZjY2ODAwNjxicj4tLS0gL2Rldi9udWxsPGJyPisr KyBiL3Rlc3QvdGFyYW50b29sLWMtdGVzdHMvdXRpbHMuaDxicj5AQCAtMCwwICsxLDYzIEBAPGJy PisjaW5jbHVkZSAmbHQ7bGltaXRzLmgmZ3Q7PGJyPisjaW5jbHVkZSAmbHQ7c3RyaW5nLmgmZ3Q7 PGJyPis8YnI+KyNpbmNsdWRlICJsYXV4bGliLmgiPGJyPisjaW5jbHVkZSAibHVhLmgiPGJyPisj aW5jbHVkZSAibHVhaml0LmgiPGJyPisjaW5jbHVkZSAibHVhbGliLmgiPGJyPis8YnI+KyNpbmNs dWRlICJ0ZXN0LmgiPGJyPis8YnI+Ky8qIEdlbmVyaWMgaW5pdCBmb3Igb3VyIHRlc3RzLiAqLzxi cj4rc3RhdGljIGx1YV9TdGF0ZSAqdXRpbHNfbHVhX2luaXQodm9pZCk8YnI+K3s8YnI+KyBsdWFf U3RhdGUgKkwgPSBsdWFMX25ld3N0YXRlKCk7PGJyPisgaWYgKCFMKTxicj4rIGJhaWxfb3V0KCJD YW4ndCBpbml0IEx1YSBzdGF0ZSIpOzxicj4rIC8qIFN0b3AgY29sbGVjdG9yIGR1cmluZyBsaWJy YXJ5IGluaXRpYWxpemF0aW9uLiAqLzxicj4rIGx1YV9nYyhMLCBMVUFfR0NTVE9QLCAwKTs8YnI+ KyBsdWFMX29wZW5saWJzKEwpOzxicj4rIGx1YV9nYyhMLCBMVUFfR0NSRVNUQVJULCAtMSk7PGJy PisgcmV0dXJuIEw7PGJyPit9PGJyPis8YnI+Ky8qIEdlbmVyaWMgY2xvc2UgZm9yIG91ciB0ZXN0 cy4gKi88YnI+K3N0YXRpYyB2b2lkIHV0aWxzX2x1YV9jbG9zZShsdWFfU3RhdGUgKkwpPGJyPit7 PGJyPisgbHVhX2Nsb3NlKEwpOzxicj4rfTwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2tx dW90ZT48ZGl2PkRvIHdlIF9fcmVhbGx5X18gbmVlZCB0aGlzIGZ1bmN0aW9uPyk8L2Rpdj48Ymxv Y2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICMwODU3QTY7IG1hcmdpbjoxMHB4 OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij48ZGl2PjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFk bXNnLW1zZyI+PGRpdj48ZGl2Pis8YnI+Ky8qPGJyPisgKiBMb2FkIHRoZSBwYWlyIHRvIHRoZSB0 ZXN0IGZpbGUgJmx0O2ZpbGVuYW1lLXNjcmlwdC5sdWEmZ3Q7Ljxicj4rICogRWFjaCBmaWxlIHNo b3VsZCByZXR1cm4gdGhlIHRhYmxlIHdpdGggZnVuY3Rpb25zIChuYW1lZCB0aGU8YnI+KyAqIHNh bWUgYXMgdGhlIGNvcnJlc3BvbmRpbmcgdW5pdCB0ZXN0cykgdG8gY2FsbCBpbiB1bml0IHRlc3Rz Ljxicj4rICogUHVzaCB0aGUgdGFibGUgd2l0aCB0aG9zZSBmdW5jdGlvbnMgb24gdGhlIEx1YSBz dGFjay48YnI+KyAqLzxicj4rI2RlZmluZSB1dGlsc19sb2FkX2F1eF9zY3JpcHQoTCkgZG8geyBc PGJyPisgLyogXDxicj4rICogRm9ybWF0IHNjcmlwdCBuYW1lLiBcPGJyPisgKiBgX19BQlNfRklM RU5BTUVfX2AgaXMgc2V0IHZpYSBDTWFrZS4gXDxicj4rICovIFw8YnI+KyBjaGFyIHNjcmlwdFtQ QVRIX01BWF0gPSBfX0FCU19GSUxFTkFNRV9fOyBcPGJyPisgY2hhciAqZmlsZV9zdWZmaXggPSBz dHJzdHIoc2NyaXB0LCAiLnRlc3QuYyIpOyBcPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9j a3F1b3RlPjxkaXY+VGhlIGBzdHJzdHJgIGZ1bmN0aW9uIGlzIG5vdCBzYWZlLCB1c2UgYHN0cm5z dHJgIGluc3RlYWQuPC9kaXY+PGRpdj5BbHNvLCBtYXliZSBpdCBpcyBiZXR0ZXIgdG8gdXNlIHRo ZSBgc3RycnN0cmAgdmFyaWF0aW9uLDwvZGl2PjxkaXY+YmVjYXVzZSBpdCBzZWFyY2hlcyBmcm9t IHRoZSBlbmQuIEl0IGVsZW1pbmF0ZXMgaXNzdWVzPC9kaXY+PGRpdj5pbiBjYXNlIG9mIGEgZmls ZSB3aXRoIC50ZXN0LmMgc29tZXdoZXJlIGVsc2UgaW4gdGhlIG5hbWUuPC9kaXY+PGJsb2NrcXVv dGUgc3R5bGU9ImJvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFk ZGluZzowIDAgMCAxMHB4OyI+PGRpdj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1t c2ciPjxkaXY+PGRpdj4rIHN0cmNweShmaWxlX3N1ZmZpeCwgIi1zY3JpcHQubHVhIik7IFw8L2Rp dj48L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj5TYW1lIGFwcGxpZXMgaGVyZS48 L2Rpdj48YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICMwODU3QTY7IG1h cmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij48ZGl2PjxkaXYgY2xhc3M9ImpzLWhlbHBl ciBqcy1yZWFkbXNnLW1zZyI+PGRpdj48ZGl2PisgXDxicj4rIGlmIChsdWFMX2RvZmlsZSgoTCks IHNjcmlwdCkgIT0gTFVBX09LKSB7IFw8YnI+KyB0ZXN0X2NvbW1lbnQoIkNhbid0IGxvYWQgJXM6 ICclcyciLCBzY3JpcHQsIFw8YnI+KyBsdWFfdG9zdHJpbmcoKEwpLCAtMSkpOyBcPGJyPisgYmFp bF9vdXQoIkNhbid0IGxvYWQgYXV4aWxpYXJ5IHNjcmlwdCIpOyBcPGJyPisgfSBcPGJyPisgXDxi cj4rIGlmICghbHVhX2lzdGFibGUoKEwpLCAtMSkpIFw8YnI+KyBiYWlsX291dCgiUmV0dXJuZWQg dmFsdWUgZnJvbSBzY3JpcHQgaXMgbm90IGEgdGFibGUiKTsgXDxicj4rfSB3aGlsZSAoMCk8YnI+ Kzxicj4rLyo8YnI+KyAqIEFjY2VwdCBhIHRhYmxlIG9uIHRvcCBvZiB0aGUgTHVhIHN0YWNrIHdo aWNoIGNvbnRhaW5pbmcgdGhlPGJyPisgKiBmdW5jdGlvbiBuYW1lZCBhcyB0aGUgdW5pdCB0ZXN0 IHdlIGN1cnJlbnRseSBleGVjdXRpbmcuPGJyPisgKi88YnI+KyNkZWZpbmUgdXRpbHNfZ2V0X2F1 eF9sZnVuYyhMKSBkbyB7IFw8YnI+KyBsdWFfZ2V0ZmllbGQoKEwpLCAtMSwgX19mdW5jX18pOyBc PGJyPisgaWYgKCFsdWFfaXNmdW5jdGlvbigoTCksIC0xKSkgXDxicj4rIGJhaWxfb3V0KCJDYW4n dCBnZXQgYXV4aWxpYXJ5IHRlc3QgZnVuY3Rpb24iKTsgXDxicj4rfSB3aGlsZSAoMCk8YnI+LS08 YnI+Mi4zNC4xPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjxkaXY+Jm5ic3A7 PC9kaXY+PGRpdj48ZGl2Pi0tPGJyPkJlc3QgcmVnYXJkcyw8L2Rpdj48ZGl2Pk1heGltIEtva3J5 YXNoa2luPC9kaXY+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PC9C T0RZPjwvSFRNTD4K ----ALT--e4Db3775c25FB9e4f163c7EcC4f531E11684497505--