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 5276B70301; Thu, 16 Feb 2023 00:43:19 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 5276B70301 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1676497399; bh=gyT5NQ/53fQnrhtdEJyjY7Kd6+aUfqkkPKL3oJMFX3Q=; 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=w3oC4m2xfNS/srHsGojnkgk12OT7ap4+B5q4jTsq7aFi+c88YFzLxUQkkkDiPNp1/ s0Wm3illa99RxlsOqjpwacSAmbYQxXy7CfFjgQ2sG3tsIIiR6eAP8wVThDRNn9Wgrv /5izfKJai6AS32uRay7q/3c1rF5C1e8vqAD0qKBE= Received: from f714.i.mail.ru (f714.i.mail.ru [45.84.129.81]) (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 0B90770301 for ; Thu, 16 Feb 2023 00:43:18 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 0B90770301 Received: by f714.i.mail.ru with local (envelope-from ) id 1pSPYa-0006Np-2w; Thu, 16 Feb 2023 00:43:16 +0300 Received: by e.mail.ru with HTTP; Thu, 16 Feb 2023 00:43:15 +0300 To: =?UTF-8?B?SWdvciBNdW5raW4=?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 X-SenderField-ReMsg: 16763078100681782174 X-SenderField-Remind: 0 Date: Thu, 16 Feb 2023 00:43:15 +0300 X-Priority: 3 (Normal) Message-ID: <1676497395.939233553@f714.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--1aCcDcDacEaBE1005E27768D702e7Fe61676497395" In-Reply-To: <73073fb24db65f59c8629f4f377faa9e52cb54af.1676304797.git.imun@tarantool.org> References: <73073fb24db65f59c8629f4f377faa9e52cb54af.1676304797.git.imun@tarantool.org> X-4EC0790: 10 X-7564579A: 646B95376F6C166E X-77F55803: 119C1F4DF6A9251CFF236A0FB8BD43C9AC3893CBF3A293DC1F8D744ED80822038FD872164937FA4C85081D55A188EB39691D6974886BF911C51AC9106908AF3A2F204956CF860771 X-7FA49CB5: 70AAF3C13DB7016878DA827A17800CE796422ED6AFBC41A8D82A6BABE6F325ACACBFF42033827DA7BCF491FFA38154B613377AFFFEAFD269176DF2183F8FC7C0A8883CB087864CACC2099A533E45F2D0395957E7521B51C2CFCAF695D4D8E9FCEA1F7E6F0F101C6778DA827A17800CE7A8883CB087864CAC8F08D7030A58E5AD1A62830130A00468AEEEE3FBA3A834EE7353EFBB55337566CA35551357EC780A49C6D9B9DDA1DCEBDD46F59171CAAFB6A471835C12D1D9774AD6D5ED66289B5278DA827A17800CE701A0D9A81BD61A6B9FA2833FD35BB23D2EF20D2F80756B5F868A13BD56FB6657A471835C12D1D977725E5C173C3A84C32B25D9E4C92BC8AC117882F4460429728AD0CFFFB425014E868A13BD56FB6657E2021AF6380DFAD1A18204E546F3947CB11811A4A51E3B096D1867E19FE1407959CC434672EE6371089D37D7C0E48F6C8AA50765F7900637BC468E7E89D8C5D6EFF80C71ABB335746BA297DBC24807EABDAD6C7F3747799A X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D34EC58E35A639A24714DC9CDDF53C235BE753F7AB8EC85CCDEC562FB021B85D1197D6B6139F816927E1D7E09C32AA3244CF4F648B42E26A742FC2193F0D7410F89E8FBBEFAE1C4874CFACE5A9C96DEB163 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS329fgu+/vnDh/Fm+NMUyxsi8I5+AJL3sTQ== X-Mailru-MI: 400800 X-Mailru-Sender: 395D9C0959CB44AE46C1BABA4682E631E29B15C8B2C6A4F8B1FA817A3F14D55355AF14B0020224B557BE63593B17739F29380EAE0A631D0EC1769CFB044623F8E747D2BC1AD30F011E60DA90B68B1748BB83A8C3DAEBA78A61AAEF30F77CACB9EAB4BC95F72C04283CDA0F3B3F5B9367 X-Mras: Ok X-Spam: undefined Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_luajit_3/7=5D_test=3A_sto?= =?utf-8?q?p_using_utils=2Eselfrun_in_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--1aCcDcDacEaBE1005E27768D702e7Fe61676497395 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpLCBJZ29yIQpMR1RNLCBleGNlcHQgZm9yIGEgZmV3IG5pdHMgYmVsb3cuCsKgCsKgCj7CoAo+ PlVuZm9ydHVuYXRlbHksIDx1dGlscy5zZWxmcnVuPiBpcyB0b28gY29tcGxleCB0byBiZSBtYWlu dGFpbmVkLCBzbyB0aGUKPj5jb3JyZXNwb25kaW5nIHRlc3RzIGFyZSBzcGxpdCBpbnRvIHR3byBm aWxlczogdGhlIHRlc3QgaXRzZWxmIGFuZCB0aGUKPj5zY3JpcHQgdG8gYmUgcnVuIGJ5IHRoZSB0 ZXN0LiBBcyBhIHJlc3VsdCBvZiB0aGUgcGF0Y2ggPHV0aWxzLm1ha2VjbWQ+Cj4+aGVscGVyIGlz IGludHJvZHVjZWQ6IGl0IGluaGVyaXRzIHNvbWUgYXBwcm9hY2hlcyBmcm9tIDx1dGlscy5zZWxm cnVuPiwKPj5idXQgaXQncyBjb25zaWRlcmVkIGZvciBtb3JlIGdlbmVyYWwgdXNlLgo+Pgo+PlJl bGF0ZXMgdG8gdGFyYW50b29sL3RhcmFudG9vbCM4MjUyCj4+Cj4+U2lnbmVkLW9mZi1ieTogSWdv ciBNdW5raW4gPCBpbXVuQHRhcmFudG9vbC5vcmcgPgo+Pi0tLQo+PsKgLi4uL2doLTQ0MjctZmZp LXNhbmR3aWNoLnRlc3QubHVhIHwgNjkgKysrKysrKystLS0tLS0tLS0tLQo+PsKgLi4uL2doLTQ0 MjctZmZpLXNhbmR3aWNoL3NjcmlwdC5sdWEgfCAyNSArKysrKysrCj4+wqAuLi4vbGotMzUxLXBy aW50LXRvc3RyaW5nLW51bWJlci50ZXN0Lmx1YSB8IDM0ICsrKy0tLS0tLQo+PsKgLi4uL2xqLTM1 MS1wcmludC10b3N0cmluZy1udW1iZXIvc2NyaXB0Lmx1YSB8IDkgKysrCj4+wqAuLi4vbGotNTg2 LWRlYnVnLW5vbi1zdHJpbmctZXJyb3IudGVzdC5sdWEgfCAyICstCj4+wqAuLi4vbGotZmx1c2gt b24tdHJhY2UudGVzdC5sdWEgfCA2OCArKysrKysrKy0tLS0tLS0tLS0KPj7CoC4uLi9sai1mbHVz aC1vbi10cmFjZS9zY3JpcHQubHVhIHwgMjMgKysrKysrKwo+PsKgdGVzdC90YXJhbnRvb2wtdGVz dHMvdXRpbHMubHVhIHwgNjYgKysrKystLS0tLS0tLS0tLS0tCj4+wqA4IGZpbGVzIGNoYW5nZWQs IDE0OCBpbnNlcnRpb25zKCspLCAxNDggZGVsZXRpb25zKC0pCj4+wqBjcmVhdGUgbW9kZSAxMDA2 NDQgdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNDQyNy1mZmktc2FuZHdpY2gvc2NyaXB0Lmx1YQo+ PsKgY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvdGFyYW50b29sLXRlc3RzL2xqLTM1MS1wcmludC10 b3N0cmluZy1udW1iZXIvc2NyaXB0Lmx1YQo+PsKgY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvdGFy YW50b29sLXRlc3RzL2xqLWZsdXNoLW9uLXRyYWNlL3NjcmlwdC5sdWEKPj4KPj5kaWZmIC0tZ2l0 IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNDQyNy1mZmktc2FuZHdpY2gudGVzdC5sdWEgYi90 ZXN0L3RhcmFudG9vbC10ZXN0cy9naC00NDI3LWZmaS1zYW5kd2ljaC50ZXN0Lmx1YQo+PmluZGV4 IGRkMDIxMzBjLi5mNDc5NWRiMCAxMDA2NDQKPj4tLS0gYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9n aC00NDI3LWZmaS1zYW5kd2ljaC50ZXN0Lmx1YQo+PisrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3Rz L2doLTQ0MjctZmZpLXNhbmR3aWNoLnRlc3QubHVhCj4+QEAgLTMsNTIgKzMsNDMgQEAgbG9jYWwg dXRpbHMgPSByZXF1aXJlKCd1dGlscycpCj48c25pcHBlZD4KPj4rIC0tIFRPRE86IExlYXZlIGFu b3RoZXIgdG94aWMgY29tbWVudCByZWdhcmRpbmcgU0lQIG9uIG1hY09TLgo+VGhhdCBjb21tZW50 IGlzIHVubmVjZXNzYXJ5LiBIZXJlIGFuZCBiZWxvdy4KPsKgCj48c25pcHBlZD4KPj4KPj5kaWZm IC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvdXRpbHMubHVhIGIvdGVzdC90YXJhbnRvb2wt dGVzdHMvdXRpbHMubHVhCj4+aW5kZXggZWIxMWQ0MGQuLjQxYTdjMjJhIDEwMDY0NAo+Pi0tLSBh L3Rlc3QvdGFyYW50b29sLXRlc3RzL3V0aWxzLmx1YQo+PisrKyBiL3Rlc3QvdGFyYW50b29sLXRl c3RzL3V0aWxzLmx1YQo+PkBAIC0xLDcgKzEsNiBAQAo+PsKgbG9jYWwgTSA9IHt9Cj4+wqAKPj7C oGxvY2FsIGZmaSA9IHJlcXVpcmUoJ2ZmaScpCj4+LWxvY2FsIHRhcCA9IHJlcXVpcmUoJ3RhcCcp Cj4+wqBsb2NhbCBiYyA9IHJlcXVpcmUoJ2ppdC5iYycpCj4+wqBsb2NhbCBiaXQgPSByZXF1aXJl KCdiaXQnKQo+PsKgCj4+QEAgLTQ0LDU1ICs0MywyOCBAQCBmdW5jdGlvbiBNLmx1YWNtZChhcmdz KQo+PsKgwqDCoHJldHVybiB0YWJsZS5jb25jYXQoYXJncywgJyAnLCBpZHggKyAxLCAtMSkKPj7C oGVuZAo+PsKgCj4+LWxvY2FsIGZ1bmN0aW9uIHVuc2hpZnRlbnYodmFyaWFibGUsIHZhbHVlLCBz ZXApCj4+LSBsb2NhbCBlbnZ2YXIgPSBvcy5nZXRlbnYodmFyaWFibGUpCj4+LSByZXR1cm4gKCcl cz0iJXMlcyInKTpmb3JtYXQodmFyaWFibGUsIHZhbHVlLAo+Pi0gZW52dmFyIGFuZCAoJyVzJXMn KTpmb3JtYXQoc2VwLCBlbnZ2YXIpIG9yICcnKQo+Pitsb2NhbCBmdW5jdGlvbiBtYWtlZW52KHRh YmVudikKPj4rIGlmIHRhYmVudiA9PSBuaWwgdGhlbiByZXR1cm4gJycgZW5kCj4+KyBsb2NhbCBm bGF0ZW52ID0ge30KPj4rIGZvciB2YXIsIHZhbHVlIGluIHBhaXJzKHRhYmVudikgZG8KPj4rIHRh YmxlLmluc2VydChmbGF0ZW52LCAoJyVzPSVzJyk6Zm9ybWF0KHZhciwgdmFsdWUpKQo+PisgZW5k Cj4+KyByZXR1cm4gdGFibGUuY29uY2F0KGZsYXRlbnYsICcgJykKPj7CoGVuZAo+PsKgCj4+LWZ1 bmN0aW9uIE0uc2VsZnJ1bihhcmcsIGNoZWNrcykKPj4tIC0tIElmIFRFU1RfU0VMRlJVTiBpcyBz ZXQsIGl0IG1lYW5zIHRoZSB0ZXN0IGhhcyBiZWVuIHJ1biB2aWEKPj4tIC0tIDxpby5wb3Blbj4s IHNvIGp1c3QgcmV0dXJuIGZyb20gdGhpcyByb3V0aW5lIGFuZCBwcm9jZWVkCj4+LSAtLSB0aGUg ZXhlY3V0aW9uIHRvIHRoZSB0ZXN0IHBheWxvYWQsIC4uLgo+Pi0gaWYgb3MuZ2V0ZW52KCdURVNU X1NFTEZSVU4nKSB0aGVuIHJldHVybiBlbmQKPj4tCj4+LSAtLSAuLi4gb3RoZXJ3aXNlIGluaXRp YWxpemUgPHRhcD4sIHNldHVwIHRlc3RpbmcgZW52aXJvbm1lbnQKPj4tIC0tIGFuZCBydW4gdGhp cyBjaHVuayB2aWEgPGlvLnBvcGVuPiBmb3IgZWFjaCBjYXNlIGluIDxjaGVja3M+Lgo+Pi0gLS0g WFhYOiBUaGUgZnVuY3Rpb24gZG9lc24ndCByZXR1cm4gYmFjayBmcm9tIHRoaXMgbW9tZW50LiBJ dAo+Pi0gLS0gY2hlY2tzIHdoZXRoZXIgYWxsIGFzc2VydGlvbnMgYXJlIGZpbmUgYW5kIGV4aXRz Lgo+Pi0KPj4tIGxvY2FsIHRlc3QgPSB0YXAudGVzdChhcmdbMF06bWF0Y2goJy8/KC4rKSUudGVz dCUubHVhJykpCj4+LQo+Pi0gdGVzdDpwbGFuKCNjaGVja3MpCj4+LQo+Pi0gbG9jYWwgbGliZXh0 ID0gcGFja2FnZS5jcGF0aDptYXRjaCgnPy4oJWErKTsnKQo+Pi0gbG9jYWwgdmFycyA9IHsKPj4r ZnVuY3Rpb24gTS5tYWtlY21kKGFyZywgb3B0cykKPj4rIHJldHVybiBzZXRtZXRhdGFibGUoewo+ PsKgwqDCoMKgwqBMVUFCSU4gPSBNLmx1YWNtZChhcmcpLAo+Pi0gU0NSSVBUID0gYXJnWzBdLAo+ Pi0gUEFUSCA9IGFyZ1swXTpnc3ViKCclLnRlc3QlLmx1YScsICcnKSwKPj4tIFNVRkZJWCA9IGxp YmV4dCwKPj4tIEVOViA9IHRhYmxlLmNvbmNhdCh7Cj4+LSB1bnNoaWZ0ZW52KCdMVUFfUEFUSCcs ICc8UEFUSD4vPy5sdWEnLCAnOycpLAo+Pi0gdW5zaGlmdGVudignTFVBX0NQQVRIJywgJzxQQVRI Pi8/LjxTVUZGSVg+JywgJzsnKSwKPj4tIHVuc2hpZnRlbnYoKGxpYmV4dCA9PSAnZHlsaWInIGFu ZCAnRFlMRCcgb3IgJ0xEJykgLi4gJ19MSUJSQVJZX1BBVEgnLAo+Pi0gJzxQQVRIPicsICc6Jyks Cj4+LSAnVEVTVF9TRUxGUlVOPTEnLAo+Pi0gfSwgJyAnKSwKPj4tIH0KPj4tCj4+LSBsb2NhbCBj bWQgPSBzdHJpbmcuZ3N1YignPEVOVj4gPExVQUJJTj4gMj4mMSA8U0NSSVBUPicsICclPCgldysp PicsIHZhcnMpCj4+LQo+Pi0gZm9yIF8sIGNoIGluIHBhaXJzKGNoZWNrcykgZG8KPj4tIGxvY2Fs IHRlc3RmID0gdGVzdFtjaC50ZXN0XQo+Pi0gYXNzZXJ0KHRlc3RmLCAoInRhcCBkb2Vzbid0IHBy b3ZpZGUgdGVzdC4lcyBmdW5jdGlvbiIpOmZvcm1hdChjaC50ZXN0KSkKPj4tIGxvY2FsIHByb2Mg PSBpby5wb3BlbigoY21kIC4uICgnICVzJyk6cmVwKCNjaC5hcmcpKTpmb3JtYXQodW5wYWNrKGNo LmFyZykpKQo+Pi0gbG9jYWwgcmVzID0gcHJvYzpyZWFkKCcqYWxsJyk6Z3N1YignXiVzKycsICcn KTpnc3ViKCclcyskJywgJycpCj4+LSAtLSBYWFg6IGV4cGxpY2l0bHkgcGFzcyA8dGVzdD4gYXMg YW4gYXJndW1lbnQgdG8gPHRlc3RmPgo+Pi0gLS0gdG8gZW11bGF0ZSB0ZXN0OmlzKC4uLiksIHRl c3Q6bGlrZSguLi4pLCBldGMuCj4+LSB0ZXN0Zih0ZXN0LCByZXMsIGNoLnJlcywgY2gubXNnKQo+ Pi0gZW5kCj4+LQo+Pi0gb3MuZXhpdCh0ZXN0OmNoZWNrKCkgYW5kIDAgb3IgMSkKPj4rIFNDUklQ VCA9IG9wdHMgYW5kIG9wdHMuc2NyaXB0IG9yIGFyZ1swXTpnc3ViKCclLnRlc3QlLmx1YSQnLCAn L3NjcmlwdC5sdWEnKSwKPj4rIEVOViA9IG9wdHMgYW5kIG1ha2VlbnYob3B0cy5lbnYpIG9yICcn LAo+PisgUkVESVJFQ1QgPSBvcHRzIGFuZCBvcHRzLnJlZGlyZWN0IG9yICcnLAo+PisgfSwgewo+ PisgX19jYWxsID0gZnVuY3Rpb24oc2VsZiwgLi4uKQo+PisgbG9jYWwgY21kID0gKCc8RU5WPiA8 TFVBQklOPiA8UkVESVJFQ1Q+IDxTQ1JJUFQ+Jyk6Z3N1YignJTwoJXcrKT4nLCBzZWxmKQo+Pisg Li4gKCcgJXMnKTpyZXAoc2VsZWN0KCcjJywgLi4uKSk6Zm9ybWF0KC4uLikKPj4rIHJldHVybiBp by5wb3BlbihjbWQpOnJlYWQoJyphbGwnKTpnc3ViKCdeJXMrJywgJycpOmdzdWIoJyVzKyQnLCAn JykKPj4rIGVuZAo+PisgfSkKPlRoYXQgcGFydCBpcyBiYXJlbHkgcmVhZGFibGUsIHNvIEkgdGhp bmsgeW91wqBzaG91bGQgZWl0aGVywqBkcm9wCj5hIGNvbW1lbnQgd2l0aCBleHBsYW5hdGlvbizC oG9yIHJld3JpdGUgaXQgaW4gYSBtb3JlIHJlYWRhYmxlIHdheS4KPj7CoGVuZAo+PsKgCj4+wqBm dW5jdGlvbiBNLnNraXBjb25kKGNvbmRpdGlvbiwgbWVzc2FnZSkKPj4tLQo+PjIuMzAuMgo+LS0K PkJlc3QgcmVnYXJkcywKPk1heGltIEtva3J5YXNoa2luCj7CoA== ----ALT--1aCcDcDacEaBE1005E27768D702e7Fe61676497395 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+SGksIElnb3IhPC9kaXY+PGRpdj5MR1RNLCBleGNlcHQgZm9yIGEg ZmV3IG5pdHMgYmVsb3cuPC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2PiZuYnNwOzwvZGl2Pjxi bG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEw cHg7IHBhZGRpbmc6MCAwIDAgMTBweDsiPjxkaXY+Jm5ic3A7PGJsb2NrcXVvdGUgc3R5bGU9ImJv cmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGluZzowIDAgMCAx MHB4OyI+PGRpdiBpZD0iIj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ciPjxk aXY+PGRpdiBpZD0ic3R5bGVfMTY3NjMwNzgxMDA2ODE3ODIxNzRfQk9EWSI+VW5mb3J0dW5hdGVs eSwgJmx0O3V0aWxzLnNlbGZydW4mZ3Q7IGlzIHRvbyBjb21wbGV4IHRvIGJlIG1haW50YWluZWQs IHNvIHRoZTxicj5jb3JyZXNwb25kaW5nIHRlc3RzIGFyZSBzcGxpdCBpbnRvIHR3byBmaWxlczog dGhlIHRlc3QgaXRzZWxmIGFuZCB0aGU8YnI+c2NyaXB0IHRvIGJlIHJ1biBieSB0aGUgdGVzdC4g QXMgYSByZXN1bHQgb2YgdGhlIHBhdGNoICZsdDt1dGlscy5tYWtlY21kJmd0Ozxicj5oZWxwZXIg aXMgaW50cm9kdWNlZDogaXQgaW5oZXJpdHMgc29tZSBhcHByb2FjaGVzIGZyb20gJmx0O3V0aWxz LnNlbGZydW4mZ3Q7LDxicj5idXQgaXQncyBjb25zaWRlcmVkIGZvciBtb3JlIGdlbmVyYWwgdXNl Ljxicj48YnI+UmVsYXRlcyB0byB0YXJhbnRvb2wvdGFyYW50b29sIzgyNTI8YnI+PGJyPlNpZ25l ZC1vZmYtYnk6IElnb3IgTXVua2luICZsdDs8YSBocmVmPSIvY29tcG9zZT9Ubz1pbXVuQHRhcmFu dG9vbC5vcmciPmltdW5AdGFyYW50b29sLm9yZzwvYT4mZ3Q7PGJyPi0tLTxicj4mbmJzcDsuLi4v Z2gtNDQyNy1mZmktc2FuZHdpY2gudGVzdC5sdWEgfCA2OSArKysrKysrKy0tLS0tLS0tLS0tPGJy PiZuYnNwOy4uLi9naC00NDI3LWZmaS1zYW5kd2ljaC9zY3JpcHQubHVhIHwgMjUgKysrKysrKzxi cj4mbmJzcDsuLi4vbGotMzUxLXByaW50LXRvc3RyaW5nLW51bWJlci50ZXN0Lmx1YSB8IDM0ICsr Ky0tLS0tLTxicj4mbmJzcDsuLi4vbGotMzUxLXByaW50LXRvc3RyaW5nLW51bWJlci9zY3JpcHQu bHVhIHwgOSArKys8YnI+Jm5ic3A7Li4uL2xqLTU4Ni1kZWJ1Zy1ub24tc3RyaW5nLWVycm9yLnRl c3QubHVhIHwgMiArLTxicj4mbmJzcDsuLi4vbGotZmx1c2gtb24tdHJhY2UudGVzdC5sdWEgfCA2 OCArKysrKysrKy0tLS0tLS0tLS08YnI+Jm5ic3A7Li4uL2xqLWZsdXNoLW9uLXRyYWNlL3Njcmlw dC5sdWEgfCAyMyArKysrKysrPGJyPiZuYnNwO3Rlc3QvdGFyYW50b29sLXRlc3RzL3V0aWxzLmx1 YSB8IDY2ICsrKysrLS0tLS0tLS0tLS0tLTxicj4mbmJzcDs4IGZpbGVzIGNoYW5nZWQsIDE0OCBp bnNlcnRpb25zKCspLCAxNDggZGVsZXRpb25zKC0pPGJyPiZuYnNwO2NyZWF0ZSBtb2RlIDEwMDY0 NCB0ZXN0L3RhcmFudG9vbC10ZXN0cy9naC00NDI3LWZmaS1zYW5kd2ljaC9zY3JpcHQubHVhPGJy PiZuYnNwO2NyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L3RhcmFudG9vbC10ZXN0cy9sai0zNTEtcHJp bnQtdG9zdHJpbmctbnVtYmVyL3NjcmlwdC5sdWE8YnI+Jm5ic3A7Y3JlYXRlIG1vZGUgMTAwNjQ0 IHRlc3QvdGFyYW50b29sLXRlc3RzL2xqLWZsdXNoLW9uLXRyYWNlL3NjcmlwdC5sdWE8YnI+PGJy PmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC00NDI3LWZmaS1zYW5kd2ljaC50 ZXN0Lmx1YSBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2doLTQ0MjctZmZpLXNhbmR3aWNoLnRlc3Qu bHVhPGJyPmluZGV4IGRkMDIxMzBjLi5mNDc5NWRiMCAxMDA2NDQ8YnI+LS0tIGEvdGVzdC90YXJh bnRvb2wtdGVzdHMvZ2gtNDQyNy1mZmktc2FuZHdpY2gudGVzdC5sdWE8YnI+KysrIGIvdGVzdC90 YXJhbnRvb2wtdGVzdHMvZ2gtNDQyNy1mZmktc2FuZHdpY2gudGVzdC5sdWE8YnI+QEAgLTMsNTIg KzMsNDMgQEAgbG9jYWwgdXRpbHMgPSByZXF1aXJlKCd1dGlscycpPC9kaXY+PC9kaXY+PC9kaXY+ PC9kaXY+PC9ibG9ja3F1b3RlPjxkaXY+Jmx0O3NuaXBwZWQmZ3Q7PC9kaXY+PGJsb2NrcXVvdGUg c3R5bGU9ImJvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGlu ZzowIDAgMCAxMHB4OyI+PGRpdj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ci PjxkaXY+PGRpdj4rIC0tIFRPRE86IExlYXZlIGFub3RoZXIgdG94aWMgY29tbWVudCByZWdhcmRp bmcgU0lQIG9uIG1hY09TLjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2 PlRoYXQgY29tbWVudCBpcyB1bm5lY2Vzc2FyeS4gSGVyZSBhbmQgYmVsb3cuPC9kaXY+PGRpdj4m bmJzcDs8L2Rpdj48ZGl2PiZsdDtzbmlwcGVkJmd0OzwvZGl2PjxibG9ja3F1b3RlIHN0eWxlPSJi b3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAwIDAg MTBweDsiPjxkaXY+PGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNnIj48ZGl2Pjxk aXY+PGJyPmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy91dGlscy5sdWEgYi90ZXN0 L3RhcmFudG9vbC10ZXN0cy91dGlscy5sdWE8YnI+aW5kZXggZWIxMWQ0MGQuLjQxYTdjMjJhIDEw MDY0NDxicj4tLS0gYS90ZXN0L3RhcmFudG9vbC10ZXN0cy91dGlscy5sdWE8YnI+KysrIGIvdGVz dC90YXJhbnRvb2wtdGVzdHMvdXRpbHMubHVhPGJyPkBAIC0xLDcgKzEsNiBAQDxicj4mbmJzcDts b2NhbCBNID0ge308YnI+Jm5ic3A7PGJyPiZuYnNwO2xvY2FsIGZmaSA9IHJlcXVpcmUoJ2ZmaScp PGJyPi1sb2NhbCB0YXAgPSByZXF1aXJlKCd0YXAnKTxicj4mbmJzcDtsb2NhbCBiYyA9IHJlcXVp cmUoJ2ppdC5iYycpPGJyPiZuYnNwO2xvY2FsIGJpdCA9IHJlcXVpcmUoJ2JpdCcpPGJyPiZuYnNw Ozxicj5AQCAtNDQsNTUgKzQzLDI4IEBAIGZ1bmN0aW9uIE0ubHVhY21kKGFyZ3MpPGJyPiZuYnNw OyZuYnNwOyZuYnNwO3JldHVybiB0YWJsZS5jb25jYXQoYXJncywgJyAnLCBpZHggKyAxLCAtMSk8 YnI+Jm5ic3A7ZW5kPGJyPiZuYnNwOzxicj4tbG9jYWwgZnVuY3Rpb24gdW5zaGlmdGVudih2YXJp YWJsZSwgdmFsdWUsIHNlcCk8YnI+LSBsb2NhbCBlbnZ2YXIgPSBvcy5nZXRlbnYodmFyaWFibGUp PGJyPi0gcmV0dXJuICgnJXM9IiVzJXMiJyk6Zm9ybWF0KHZhcmlhYmxlLCB2YWx1ZSw8YnI+LSBl bnZ2YXIgYW5kICgnJXMlcycpOmZvcm1hdChzZXAsIGVudnZhcikgb3IgJycpPGJyPitsb2NhbCBm dW5jdGlvbiBtYWtlZW52KHRhYmVudik8YnI+KyBpZiB0YWJlbnYgPT0gbmlsIHRoZW4gcmV0dXJu ICcnIGVuZDxicj4rIGxvY2FsIGZsYXRlbnYgPSB7fTxicj4rIGZvciB2YXIsIHZhbHVlIGluIHBh aXJzKHRhYmVudikgZG88YnI+KyB0YWJsZS5pbnNlcnQoZmxhdGVudiwgKCclcz0lcycpOmZvcm1h dCh2YXIsIHZhbHVlKSk8YnI+KyBlbmQ8YnI+KyByZXR1cm4gdGFibGUuY29uY2F0KGZsYXRlbnYs ICcgJyk8YnI+Jm5ic3A7ZW5kPGJyPiZuYnNwOzxicj4tZnVuY3Rpb24gTS5zZWxmcnVuKGFyZywg Y2hlY2tzKTxicj4tIC0tIElmIFRFU1RfU0VMRlJVTiBpcyBzZXQsIGl0IG1lYW5zIHRoZSB0ZXN0 IGhhcyBiZWVuIHJ1biB2aWE8YnI+LSAtLSAmbHQ7aW8ucG9wZW4mZ3Q7LCBzbyBqdXN0IHJldHVy biBmcm9tIHRoaXMgcm91dGluZSBhbmQgcHJvY2VlZDxicj4tIC0tIHRoZSBleGVjdXRpb24gdG8g dGhlIHRlc3QgcGF5bG9hZCwgLi4uPGJyPi0gaWYgb3MuZ2V0ZW52KCdURVNUX1NFTEZSVU4nKSB0 aGVuIHJldHVybiBlbmQ8YnI+LTxicj4tIC0tIC4uLiBvdGhlcndpc2UgaW5pdGlhbGl6ZSAmbHQ7 dGFwJmd0Oywgc2V0dXAgdGVzdGluZyBlbnZpcm9ubWVudDxicj4tIC0tIGFuZCBydW4gdGhpcyBj aHVuayB2aWEgJmx0O2lvLnBvcGVuJmd0OyBmb3IgZWFjaCBjYXNlIGluICZsdDtjaGVja3MmZ3Q7 Ljxicj4tIC0tIFhYWDogVGhlIGZ1bmN0aW9uIGRvZXNuJ3QgcmV0dXJuIGJhY2sgZnJvbSB0aGlz IG1vbWVudC4gSXQ8YnI+LSAtLSBjaGVja3Mgd2hldGhlciBhbGwgYXNzZXJ0aW9ucyBhcmUgZmlu ZSBhbmQgZXhpdHMuPGJyPi08YnI+LSBsb2NhbCB0ZXN0ID0gdGFwLnRlc3QoYXJnWzBdOm1hdGNo KCcvPyguKyklLnRlc3QlLmx1YScpKTxicj4tPGJyPi0gdGVzdDpwbGFuKCNjaGVja3MpPGJyPi08 YnI+LSBsb2NhbCBsaWJleHQgPSBwYWNrYWdlLmNwYXRoOm1hdGNoKCc/LiglYSspOycpPGJyPi0g bG9jYWwgdmFycyA9IHs8YnI+K2Z1bmN0aW9uIE0ubWFrZWNtZChhcmcsIG9wdHMpPGJyPisgcmV0 dXJuIHNldG1ldGF0YWJsZSh7PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0xVQUJJ TiA9IE0ubHVhY21kKGFyZyksPGJyPi0gU0NSSVBUID0gYXJnWzBdLDxicj4tIFBBVEggPSBhcmdb MF06Z3N1YignJS50ZXN0JS5sdWEnLCAnJyksPGJyPi0gU1VGRklYID0gbGliZXh0LDxicj4tIEVO ViA9IHRhYmxlLmNvbmNhdCh7PGJyPi0gdW5zaGlmdGVudignTFVBX1BBVEgnLCAnJmx0O1BBVEgm Z3Q7Lz8ubHVhJywgJzsnKSw8YnI+LSB1bnNoaWZ0ZW52KCdMVUFfQ1BBVEgnLCAnJmx0O1BBVEgm Z3Q7Lz8uJmx0O1NVRkZJWCZndDsnLCAnOycpLDxicj4tIHVuc2hpZnRlbnYoKGxpYmV4dCA9PSAn ZHlsaWInIGFuZCAnRFlMRCcgb3IgJ0xEJykgLi4gJ19MSUJSQVJZX1BBVEgnLDxicj4tICcmbHQ7 UEFUSCZndDsnLCAnOicpLDxicj4tICdURVNUX1NFTEZSVU49MScsPGJyPi0gfSwgJyAnKSw8YnI+ LSB9PGJyPi08YnI+LSBsb2NhbCBjbWQgPSBzdHJpbmcuZ3N1YignJmx0O0VOViZndDsgJmx0O0xV QUJJTiZndDsgMiZndDsmYW1wOzEgJmx0O1NDUklQVCZndDsnLCAnJSZsdDsoJXcrKSZndDsnLCB2 YXJzKTxicj4tPGJyPi0gZm9yIF8sIGNoIGluIHBhaXJzKGNoZWNrcykgZG88YnI+LSBsb2NhbCB0 ZXN0ZiA9IHRlc3RbY2gudGVzdF08YnI+LSBhc3NlcnQodGVzdGYsICgidGFwIGRvZXNuJ3QgcHJv dmlkZSB0ZXN0LiVzIGZ1bmN0aW9uIik6Zm9ybWF0KGNoLnRlc3QpKTxicj4tIGxvY2FsIHByb2Mg PSBpby5wb3BlbigoY21kIC4uICgnICVzJyk6cmVwKCNjaC5hcmcpKTpmb3JtYXQodW5wYWNrKGNo LmFyZykpKTxicj4tIGxvY2FsIHJlcyA9IHByb2M6cmVhZCgnKmFsbCcpOmdzdWIoJ14lcysnLCAn Jyk6Z3N1YignJXMrJCcsICcnKTxicj4tIC0tIFhYWDogZXhwbGljaXRseSBwYXNzICZsdDt0ZXN0 Jmd0OyBhcyBhbiBhcmd1bWVudCB0byAmbHQ7dGVzdGYmZ3Q7PGJyPi0gLS0gdG8gZW11bGF0ZSB0 ZXN0OmlzKC4uLiksIHRlc3Q6bGlrZSguLi4pLCBldGMuPGJyPi0gdGVzdGYodGVzdCwgcmVzLCBj aC5yZXMsIGNoLm1zZyk8YnI+LSBlbmQ8YnI+LTxicj4tIG9zLmV4aXQodGVzdDpjaGVjaygpIGFu ZCAwIG9yIDEpPGJyPisgU0NSSVBUID0gb3B0cyBhbmQgb3B0cy5zY3JpcHQgb3IgYXJnWzBdOmdz dWIoJyUudGVzdCUubHVhJCcsICcvc2NyaXB0Lmx1YScpLDxicj4rIEVOViA9IG9wdHMgYW5kIG1h a2VlbnYob3B0cy5lbnYpIG9yICcnLDxicj4rIFJFRElSRUNUID0gb3B0cyBhbmQgb3B0cy5yZWRp cmVjdCBvciAnJyw8YnI+KyB9LCB7PGJyPisgX19jYWxsID0gZnVuY3Rpb24oc2VsZiwgLi4uKTwv ZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48YmxvY2txdW90ZSBzdHlsZT0iYm9y ZGVyLWxlZnQ6MXB4IHNvbGlkICMwODU3QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEw cHg7Ij48ZGl2PjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+PGRpdj48ZGl2 PisgbG9jYWwgY21kID0gKCcmbHQ7RU5WJmd0OyAmbHQ7TFVBQklOJmd0OyAmbHQ7UkVESVJFQ1Qm Z3Q7ICZsdDtTQ1JJUFQmZ3Q7Jyk6Z3N1YignJSZsdDsoJXcrKSZndDsnLCBzZWxmKTxicj4rIC4u ICgnICVzJyk6cmVwKHNlbGVjdCgnIycsIC4uLikpOmZvcm1hdCguLi4pPGJyPisgcmV0dXJuIGlv LnBvcGVuKGNtZCk6cmVhZCgnKmFsbCcpOmdzdWIoJ14lcysnLCAnJyk6Z3N1YignJXMrJCcsICcn KTxicj4rIGVuZDxicj4rIH0pPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjxk aXY+VGhhdCBwYXJ0IGlzIGJhcmVseSByZWFkYWJsZSwgc28gSSB0aGluayB5b3UmbmJzcDtzaG91 bGQgZWl0aGVyJm5ic3A7ZHJvcDwvZGl2PjxkaXY+YSBjb21tZW50IHdpdGggZXhwbGFuYXRpb24s Jm5ic3A7b3IgcmV3cml0ZSBpdCBpbiBhIG1vcmUgcmVhZGFibGUgd2F5LjwvZGl2PjxibG9ja3F1 b3RlIHN0eWxlPSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEwcHg7IHBh ZGRpbmc6MCAwIDAgMTBweDsiPjxkaXY+PGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ct bXNnIj48ZGl2PjxkaXY+Jm5ic3A7ZW5kPGJyPiZuYnNwOzxicj4mbmJzcDtmdW5jdGlvbiBNLnNr aXBjb25kKGNvbmRpdGlvbiwgbWVzc2FnZSk8YnI+LS08YnI+Mi4zMC4yPC9kaXY+PC9kaXY+PC9k aXY+PC9kaXY+PC9ibG9ja3F1b3RlPjxkaXY+PGRpdj4tLTxicj5CZXN0IHJlZ2FyZHMsPC9kaXY+ PGRpdj5NYXhpbSBLb2tyeWFzaGtpbjwvZGl2PjwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PC9kaXY+ PC9ibG9ja3F1b3RlPjwvQk9EWT48L0hUTUw+Cg== ----ALT--1aCcDcDacEaBE1005E27768D702e7Fe61676497395--