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 BA2A332B2A8; Mon, 20 Mar 2023 18:21:25 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org BA2A332B2A8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1679325685; bh=3FmFDhuckI7LxBDOwA+Z2Z3wiVMf/miiM71bCyOTOdI=; 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=AmyG/Wuxn2lsajOethXCY8x8wDJrk1Sie4LVHlMPCCJ2nn597vT4J5436xmblsB0w 6VHZlXU06xdbZjQMP3GkrcsdNykAn2IyXLOnFwmurcs3H8dj3xJvq7dIHCYTw2Nhb3 Va9AMUHVqEfTHxLjE1PbIa4vwdMSXWPoMyOGKvdI= Received: from f426.i.mail.ru (f426.i.mail.ru [45.84.128.213]) (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 A8CEF32AED8 for ; Mon, 20 Mar 2023 18:21:24 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org A8CEF32AED8 Received: by f426.i.mail.ru with local (envelope-from ) id 1peHK5-0003nt-VJ; Mon, 20 Mar 2023 18:21:22 +0300 Received: by e.mail.ru with HTTP; Mon, 20 Mar 2023 18:21:21 +0300 To: =?UTF-8?B?U2VyZ2V5IEthcGx1bg==?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 X-SenderField-ReMsg: 16788968920463036309 X-SenderField-Remind: 0 Date: Mon, 20 Mar 2023 18:21:21 +0300 X-Priority: 3 (Normal) Message-ID: <1679325681.855562441@f426.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--57fA729E2a7a56305222983E09eF7e941679325681" In-Reply-To: <347ba509b444328b515dbf7463426401283bf217.1678895861.git.skaplun@tarantool.org> References: <347ba509b444328b515dbf7463426401283bf217.1678895861.git.skaplun@tarantool.org> X-7564579A: 78E4E2B564C1792B X-77F55803: 119C1F4DF6A9251C6E041ED1BDE47B19A6FD364EC4696B9DE247048BA430ED3F8FD872164937FA4CF309FABD751FAC0436CC07141807BF2DA519D6C7C135EB6424C452058460A5BD X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D340CB2836B823694498157812D5FD249F4A43582036BA192B1C3705EEBE9A51B631E0A8293355E8DEF1D7E09C32AA3244C662D12B8AF70C57545E9E6FFB55F0250B4DF56057A86259FFACE5A9C96DEB163 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS329fgu+/vnDhU2qf0ADCaU+h8Ti6gP65qg== X-Mailru-MI: 800 X-Mailru-Sender: 11C2EC085EDE56FA0B90E2F0BF9E5881444AE5EC62420F3C249C37B9F2C85393C6540213527A978C06CD02445D2D9C8FA2BFD6D8330F0C2D563E610FBBDBB4C842051EA7CBBFB509093DA5C00B83CE8412EB40C6FA10D71EFD657A8799238ED55FEEDEB644C299C0ED14614B50AE0675 X-Mras: OK Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_v1_luajit_3/5=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--57fA729E2a7a56305222983E09eF7e941679325681 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpIQpUaGFua3MgZm9yIHRoZSBwYXRjaCEKSXQsIGdlbmVyYWxseSwgTEdUTSwgYnV0IHdpdGgg Y29uY2VybnMgYWJvdXQgdGhlIHNraXBjb25kLWxpa2UKaW1wbGVtZW50YXRpb24sIEkgbWVudGlv bmVkIGluIHJldmlldyBmb3IgdGhlIHByZXZpb3VzIGNvbW1pdC4KLS0KQmVzdCByZWdhcmRzLApN YXhpbSBLb2tyeWFzaGtpbgrCoArCoCAKPtCh0YDQtdC00LAsIDE1INC80LDRgNGC0LAgMjAyMywg MTk6MTQgKzAzOjAwINC+0YIgU2VyZ2V5IEthcGx1biA8c2thcGx1bkB0YXJhbnRvb2wub3JnPjoK PsKgCj5UaGlzIGhlYWRlciBjb250YWlucyBnZW5lcmljIGluaXQgYW5kIGNsb3NlIGZvciB0ZXN0 cyBhbmQgaGVscGVycyBmb3IKPmxvYWRpbmcgYXV4aWxpYXJ5IEx1YSBzY3JpcHQgd2l0aCBmdW5j dGlvbnMgdG8gcnVuIGluc2lkZSBhIEMgdGVzdC4KPgo+SXQgd2lsbCBiZSBwcm9wZXJseSB1c2Vk IGluIHRoZSBuZXh0IGNvbW1pdC4KPgo+UGFydCBvZiB0YXJhbnRvb2wvdGFyYW50b29sIzc5MDAK Pi0tLQo+Cj5UaG9zZSBpbnRyb2R1Y2VkIHV0aWxzIG1hY3JvcyBhc3N1bWUgdGhhdCB3ZSBoYXZl IHRoZSB0YWJsZSBvbiB0aGUgdG9wCj5vZiB0aGUgTHVhIHN0YWNrLiBTbywgYWZ0ZXIgZWFjaCB0 ZXN0IHRoZSBzdGFjayBzaG91bGQgYmUgc3RheWVkCj4idW50b3VjaGVkIi4gQnV0IGlmIHdlIHB1 c2ggaGVscGVyIGZ1bmN0aW9uIG9yIHNvbWUgdmFsdWUgb2YgdGhlIEx1YQo+c3RhY2sgYW5kIHRo ZW0gYXNzZXJ0aW9uIGZhaWxzLCB3ZSBleGl0IGZyb20gZnVuY3Rpb24gd2l0aG91dCBzdGFjawo+ Y2xlYW5pbmcuIFNvIHdlIHNob3VsZCB0cnkgdG8gYXZvaWQgc3VjaCBzaXR1YXRpb24gd2hlbmV2 ZXIgYXBwcm9wcmlhdGUsCj5idXQgZG9uJ3QgYmUgZmFuYXRpY2FsIGF0IHRoaXMgcG9pbnQgLS0g aWYgc29tZSBhc3NlcnRpb24gZmFpbHMsIHdlIGFyZQo+aW4gdHJvdWJsZXMgYW55d2F5Lgo+Cj5E b24ndCB1c2UgX19GSUxFX18gaGVyZSwgYmVjYXVzZSBpdCBtYXkgY29udGFpbiByZWxhdGl2ZSBw YXRoIHRvIHRoZQo+ZmlsZSBkZXBlbmRpbmcgb24gQ01ha2UgdmVyc2lvbiBvciAtZm1hY3JvLXBy ZWZpeC1tYXA9IGZsYWcuCj4KPsKgdGVzdC90YXJhbnRvb2wtYy10ZXN0cy91dGlscy5oIHwgNjMg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+wqAxIGZpbGUgY2hhbmdlZCwgNjMg aW5zZXJ0aW9ucygrKQo+wqBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdC90YXJhbnRvb2wtYy10ZXN0 cy91dGlscy5oCj4KPmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC1jLXRlc3RzL3V0aWxzLmgg Yi90ZXN0L3RhcmFudG9vbC1jLXRlc3RzL3V0aWxzLmgKPm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj5p bmRleCAwMDAwMDAwMC4uY2Y2NjgwMDYKPi0tLSAvZGV2L251bGwKPisrKyBiL3Rlc3QvdGFyYW50 b29sLWMtdGVzdHMvdXRpbHMuaAo+QEAgLTAsMCArMSw2MyBAQAo+KyNpbmNsdWRlIDxsaW1pdHMu aD4KPisjaW5jbHVkZSA8c3RyaW5nLmg+Cj4rCj4rI2luY2x1ZGUgImxhdXhsaWIuaCIKPisjaW5j bHVkZSAibHVhLmgiCj4rI2luY2x1ZGUgImx1YWppdC5oIgo+KyNpbmNsdWRlICJsdWFsaWIuaCIK PisKPisjaW5jbHVkZSAidGVzdC5oIgo+Kwo+Ky8qIEdlbmVyaWMgaW5pdCBmb3Igb3VyIHRlc3Rz LiAqLwo+K3N0YXRpYyBsdWFfU3RhdGUgKnV0aWxzX2x1YV9pbml0KHZvaWQpCj4rewo+KyBsdWFf U3RhdGUgKkwgPSBsdWFMX25ld3N0YXRlKCk7Cj4rIGlmICghTCkKPisgYmFpbF9vdXQoIkNhbid0 IGluaXQgTHVhIHN0YXRlIik7Cj4rIC8qIFN0b3AgY29sbGVjdG9yIGR1cmluZyBsaWJyYXJ5IGlu aXRpYWxpemF0aW9uLiAqLwo+KyBsdWFfZ2MoTCwgTFVBX0dDU1RPUCwgMCk7Cj4rIGx1YUxfb3Bl bmxpYnMoTCk7Cj4rIGx1YV9nYyhMLCBMVUFfR0NSRVNUQVJULCAtMSk7Cj4rIHJldHVybiBMOwo+ K30KPisKPisvKiBHZW5lcmljIGNsb3NlIGZvciBvdXIgdGVzdHMuICovCj4rc3RhdGljIHZvaWQg dXRpbHNfbHVhX2Nsb3NlKGx1YV9TdGF0ZSAqTCkKPit7Cj4rIGx1YV9jbG9zZShMKTsKPit9Cj4r Cj4rLyoKPisgKiBMb2FkIHRoZSBwYWlyIHRvIHRoZSB0ZXN0IGZpbGUgPGZpbGVuYW1lLXNjcmlw dC5sdWE+Lgo+KyAqIEVhY2ggZmlsZSBzaG91bGQgcmV0dXJuIHRoZSB0YWJsZSB3aXRoIGZ1bmN0 aW9ucyAobmFtZWQgdGhlCj4rICogc2FtZSBhcyB0aGUgY29ycmVzcG9uZGluZyB1bml0IHRlc3Rz KSB0byBjYWxsIGluIHVuaXQgdGVzdHMuCj4rICogUHVzaCB0aGUgdGFibGUgd2l0aCB0aG9zZSBm dW5jdGlvbnMgb24gdGhlIEx1YSBzdGFjay4KPisgKi8KPisjZGVmaW5lIHV0aWxzX2xvYWRfYXV4 X3NjcmlwdChMKSBkbyB7IFwKPisgLyogXAo+KyAqIEZvcm1hdCBzY3JpcHQgbmFtZS4gXAo+KyAq IGBfX0FCU19GSUxFTkFNRV9fYCBpcyBzZXQgdmlhIENNYWtlLiBcCj4rICovIFwKPisgY2hhciBz Y3JpcHRbUEFUSF9NQVhdID0gX19BQlNfRklMRU5BTUVfXzsgXAo+KyBjaGFyICpmaWxlX3N1ZmZp eCA9IHN0cnN0cihzY3JpcHQsICIudGVzdC5jIik7IFwKPisgc3RyY3B5KGZpbGVfc3VmZml4LCAi LXNjcmlwdC5sdWEiKTsgXAo+KyBcCj4rIGlmIChsdWFMX2RvZmlsZSgoTCksIHNjcmlwdCkgIT0g TFVBX09LKSB7IFwKPisgdGVzdF9jb21tZW50KCJDYW4ndCBsb2FkICVzOiAnJXMnIiwgc2NyaXB0 LCBcCj4rIGx1YV90b3N0cmluZygoTCksIC0xKSk7IFwKPisgYmFpbF9vdXQoIkNhbid0IGxvYWQg YXV4aWxpYXJ5IHNjcmlwdCIpOyBcCj4rIH0gXAo+KyBcCj4rIGlmICghbHVhX2lzdGFibGUoKEwp LCAtMSkpIFwKPisgYmFpbF9vdXQoIlJldHVybmVkIHZhbHVlIGZyb20gc2NyaXB0IGlzIG5vdCBh IHRhYmxlIik7IFwKPit9IHdoaWxlICgwKQo+Kwo+Ky8qCj4rICogQWNjZXB0IGEgdGFibGUgb24g dG9wIG9mIHRoZSBMdWEgc3RhY2sgd2hpY2ggY29udGFpbmluZyB0aGUKPisgKiBmdW5jdGlvbiBu YW1lZCBhcyB0aGUgdW5pdCB0ZXN0IHdlIGN1cnJlbnRseSBleGVjdXRpbmcuCj4rICovCj4rI2Rl ZmluZSB1dGlsc19nZXRfYXV4X2xmdW5jKEwpIGRvIHsgXAo+KyBsdWFfZ2V0ZmllbGQoKEwpLCAt MSwgX19mdW5jX18pOyBcCj4rIGlmICghbHVhX2lzZnVuY3Rpb24oKEwpLCAtMSkpIFwKPisgYmFp bF9vdXQoIkNhbid0IGdldCBhdXhpbGlhcnkgdGVzdCBmdW5jdGlvbiIpOyBcCj4rfSB3aGlsZSAo MCkKPi0tCj4yLjM0LjEKwqA= ----ALT--57fA729E2a7a56305222983E09eF7e941679325681 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+SGkhPC9kaXY+PGRpdj5UaGFua3MgZm9yIHRoZSBwYXRjaCE8L2Rp dj48ZGl2Pkl0LCBnZW5lcmFsbHksIExHVE0sIGJ1dCB3aXRoIGNvbmNlcm5zIGFib3V0IHRoZSBz a2lwY29uZC1saWtlPGJyPmltcGxlbWVudGF0aW9uLCBJIG1lbnRpb25lZCBpbiByZXZpZXcgZm9y IHRoZSBwcmV2aW91cyBjb21taXQuPC9kaXY+PGRpdiBkYXRhLXNpZ25hdHVyZS13aWRnZXQ9ImNv bnRhaW5lciI+PGRpdiBkYXRhLXNpZ25hdHVyZS13aWRnZXQ9ImNvbnRlbnQiPjxkaXY+LS08YnI+ QmVzdCByZWdhcmRzLDwvZGl2PjxkaXY+TWF4aW0gS29rcnlhc2hraW48L2Rpdj48L2Rpdj48L2Rp dj48ZGl2PiZuYnNwOzwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGJsb2NrcXVvdGUgc3R5bGU9ImJv cmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGluZzowIDAgMCAx MHB4OyI+0KHRgNC10LTQsCwgMTUg0LzQsNGA0YLQsCAyMDIzLCAxOToxNCArMDM6MDAg0L7RgiBT ZXJnZXkgS2FwbHVuICZsdDtza2FwbHVuQHRhcmFudG9vbC5vcmcmZ3Q7Ojxicj4mbmJzcDs8ZGl2 IGlkPSIiPjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+PGRpdj48ZGl2IGlk PSJzdHlsZV8xNjc4ODk2ODkyMDQ2MzAzNjMwOV9CT0RZIj5UaGlzIGhlYWRlciBjb250YWlucyBn ZW5lcmljIGluaXQgYW5kIGNsb3NlIGZvciB0ZXN0cyBhbmQgaGVscGVycyBmb3I8YnI+bG9hZGlu ZyBhdXhpbGlhcnkgTHVhIHNjcmlwdCB3aXRoIGZ1bmN0aW9ucyB0byBydW4gaW5zaWRlIGEgQyB0 ZXN0Ljxicj48YnI+SXQgd2lsbCBiZSBwcm9wZXJseSB1c2VkIGluIHRoZSBuZXh0IGNvbW1pdC48 YnI+PGJyPlBhcnQgb2YgdGFyYW50b29sL3RhcmFudG9vbCM3OTAwPGJyPi0tLTxicj48YnI+VGhv c2UgaW50cm9kdWNlZCB1dGlscyBtYWNyb3MgYXNzdW1lIHRoYXQgd2UgaGF2ZSB0aGUgdGFibGUg b24gdGhlIHRvcDxicj5vZiB0aGUgTHVhIHN0YWNrLiBTbywgYWZ0ZXIgZWFjaCB0ZXN0IHRoZSBz dGFjayBzaG91bGQgYmUgc3RheWVkPGJyPiJ1bnRvdWNoZWQiLiBCdXQgaWYgd2UgcHVzaCBoZWxw ZXIgZnVuY3Rpb24gb3Igc29tZSB2YWx1ZSBvZiB0aGUgTHVhPGJyPnN0YWNrIGFuZCB0aGVtIGFz c2VydGlvbiBmYWlscywgd2UgZXhpdCBmcm9tIGZ1bmN0aW9uIHdpdGhvdXQgc3RhY2s8YnI+Y2xl YW5pbmcuIFNvIHdlIHNob3VsZCB0cnkgdG8gYXZvaWQgc3VjaCBzaXR1YXRpb24gd2hlbmV2ZXIg YXBwcm9wcmlhdGUsPGJyPmJ1dCBkb24ndCBiZSBmYW5hdGljYWwgYXQgdGhpcyBwb2ludCAtLSBp ZiBzb21lIGFzc2VydGlvbiBmYWlscywgd2UgYXJlPGJyPmluIHRyb3VibGVzIGFueXdheS48YnI+ PGJyPkRvbid0IHVzZSBfX0ZJTEVfXyBoZXJlLCBiZWNhdXNlIGl0IG1heSBjb250YWluIHJlbGF0 aXZlIHBhdGggdG8gdGhlPGJyPmZpbGUgZGVwZW5kaW5nIG9uIENNYWtlIHZlcnNpb24gb3IgLWZt YWNyby1wcmVmaXgtbWFwPSBmbGFnLjxicj48YnI+Jm5ic3A7dGVzdC90YXJhbnRvb2wtYy10ZXN0 cy91dGlscy5oIHwgNjMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKzxicj4mbmJz cDsxIGZpbGUgY2hhbmdlZCwgNjMgaW5zZXJ0aW9ucygrKTxicj4mbmJzcDtjcmVhdGUgbW9kZSAx MDA2NDQgdGVzdC90YXJhbnRvb2wtYy10ZXN0cy91dGlscy5oPGJyPjxicj5kaWZmIC0tZ2l0IGEv dGVzdC90YXJhbnRvb2wtYy10ZXN0cy91dGlscy5oIGIvdGVzdC90YXJhbnRvb2wtYy10ZXN0cy91 dGlscy5oPGJyPm5ldyBmaWxlIG1vZGUgMTAwNjQ0PGJyPmluZGV4IDAwMDAwMDAwLi5jZjY2ODAw Njxicj4tLS0gL2Rldi9udWxsPGJyPisrKyBiL3Rlc3QvdGFyYW50b29sLWMtdGVzdHMvdXRpbHMu aDxicj5AQCAtMCwwICsxLDYzIEBAPGJyPisjaW5jbHVkZSAmbHQ7bGltaXRzLmgmZ3Q7PGJyPisj aW5jbHVkZSAmbHQ7c3RyaW5nLmgmZ3Q7PGJyPis8YnI+KyNpbmNsdWRlICJsYXV4bGliLmgiPGJy PisjaW5jbHVkZSAibHVhLmgiPGJyPisjaW5jbHVkZSAibHVhaml0LmgiPGJyPisjaW5jbHVkZSAi bHVhbGliLmgiPGJyPis8YnI+KyNpbmNsdWRlICJ0ZXN0LmgiPGJyPis8YnI+Ky8qIEdlbmVyaWMg aW5pdCBmb3Igb3VyIHRlc3RzLiAqLzxicj4rc3RhdGljIGx1YV9TdGF0ZSAqdXRpbHNfbHVhX2lu aXQodm9pZCk8YnI+K3s8YnI+KyBsdWFfU3RhdGUgKkwgPSBsdWFMX25ld3N0YXRlKCk7PGJyPisg aWYgKCFMKTxicj4rIGJhaWxfb3V0KCJDYW4ndCBpbml0IEx1YSBzdGF0ZSIpOzxicj4rIC8qIFN0 b3AgY29sbGVjdG9yIGR1cmluZyBsaWJyYXJ5IGluaXRpYWxpemF0aW9uLiAqLzxicj4rIGx1YV9n YyhMLCBMVUFfR0NTVE9QLCAwKTs8YnI+KyBsdWFMX29wZW5saWJzKEwpOzxicj4rIGx1YV9nYyhM LCBMVUFfR0NSRVNUQVJULCAtMSk7PGJyPisgcmV0dXJuIEw7PGJyPit9PGJyPis8YnI+Ky8qIEdl bmVyaWMgY2xvc2UgZm9yIG91ciB0ZXN0cy4gKi88YnI+K3N0YXRpYyB2b2lkIHV0aWxzX2x1YV9j bG9zZShsdWFfU3RhdGUgKkwpPGJyPit7PGJyPisgbHVhX2Nsb3NlKEwpOzxicj4rfTxicj4rPGJy PisvKjxicj4rICogTG9hZCB0aGUgcGFpciB0byB0aGUgdGVzdCBmaWxlICZsdDtmaWxlbmFtZS1z Y3JpcHQubHVhJmd0Oy48YnI+KyAqIEVhY2ggZmlsZSBzaG91bGQgcmV0dXJuIHRoZSB0YWJsZSB3 aXRoIGZ1bmN0aW9ucyAobmFtZWQgdGhlPGJyPisgKiBzYW1lIGFzIHRoZSBjb3JyZXNwb25kaW5n IHVuaXQgdGVzdHMpIHRvIGNhbGwgaW4gdW5pdCB0ZXN0cy48YnI+KyAqIFB1c2ggdGhlIHRhYmxl IHdpdGggdGhvc2UgZnVuY3Rpb25zIG9uIHRoZSBMdWEgc3RhY2suPGJyPisgKi88YnI+KyNkZWZp bmUgdXRpbHNfbG9hZF9hdXhfc2NyaXB0KEwpIGRvIHsgXDxicj4rIC8qIFw8YnI+KyAqIEZvcm1h dCBzY3JpcHQgbmFtZS4gXDxicj4rICogYF9fQUJTX0ZJTEVOQU1FX19gIGlzIHNldCB2aWEgQ01h a2UuIFw8YnI+KyAqLyBcPGJyPisgY2hhciBzY3JpcHRbUEFUSF9NQVhdID0gX19BQlNfRklMRU5B TUVfXzsgXDxicj4rIGNoYXIgKmZpbGVfc3VmZml4ID0gc3Ryc3RyKHNjcmlwdCwgIi50ZXN0LmMi KTsgXDxicj4rIHN0cmNweShmaWxlX3N1ZmZpeCwgIi1zY3JpcHQubHVhIik7IFw8YnI+KyBcPGJy PisgaWYgKGx1YUxfZG9maWxlKChMKSwgc2NyaXB0KSAhPSBMVUFfT0spIHsgXDxicj4rIHRlc3Rf Y29tbWVudCgiQ2FuJ3QgbG9hZCAlczogJyVzJyIsIHNjcmlwdCwgXDxicj4rIGx1YV90b3N0cmlu ZygoTCksIC0xKSk7IFw8YnI+KyBiYWlsX291dCgiQ2FuJ3QgbG9hZCBhdXhpbGlhcnkgc2NyaXB0 Iik7IFw8YnI+KyB9IFw8YnI+KyBcPGJyPisgaWYgKCFsdWFfaXN0YWJsZSgoTCksIC0xKSkgXDxi cj4rIGJhaWxfb3V0KCJSZXR1cm5lZCB2YWx1ZSBmcm9tIHNjcmlwdCBpcyBub3QgYSB0YWJsZSIp OyBcPGJyPit9IHdoaWxlICgwKTxicj4rPGJyPisvKjxicj4rICogQWNjZXB0IGEgdGFibGUgb24g dG9wIG9mIHRoZSBMdWEgc3RhY2sgd2hpY2ggY29udGFpbmluZyB0aGU8YnI+KyAqIGZ1bmN0aW9u IG5hbWVkIGFzIHRoZSB1bml0IHRlc3Qgd2UgY3VycmVudGx5IGV4ZWN1dGluZy48YnI+KyAqLzxi cj4rI2RlZmluZSB1dGlsc19nZXRfYXV4X2xmdW5jKEwpIGRvIHsgXDxicj4rIGx1YV9nZXRmaWVs ZCgoTCksIC0xLCBfX2Z1bmNfXyk7IFw8YnI+KyBpZiAoIWx1YV9pc2Z1bmN0aW9uKChMKSwgLTEp KSBcPGJyPisgYmFpbF9vdXQoIkNhbid0IGdldCBhdXhpbGlhcnkgdGVzdCBmdW5jdGlvbiIpOyBc PGJyPit9IHdoaWxlICgwKTxicj4tLTxicj4yLjM0LjE8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48 L2Jsb2NrcXVvdGU+PGRpdj4mbmJzcDs8L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--57fA729E2a7a56305222983E09eF7e941679325681--