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 4E5426ECCD; Wed, 29 Jul 2026 18:50:38 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 4E5426ECCD DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1785340238; bh=ULHoFORg9Y33VTKlUtCPJ9UCGHURQoeawc5Qys6dkCU=; 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=aU2iV7onBnxUuLLNCdUKNxQyHXOTMz7cGYKFu4vvUQEvYj4werOIkY0U602LwVKgi BUjqxEDuZvES0/yDq0WGOMjyHuBTlEzxdKlOpX+KjqyRx3JM+yLSIM/Nh3J1IfZRhQ tRzEtbsaT6MFUqWfUECHHH2pTN/EQn5hKckAchq0= Received: from send153.i.mail.ru (send153.i.mail.ru [89.221.237.248]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 664D46ECCD for ; Wed, 29 Jul 2026 18:50:36 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 664D46ECCD Received: by exim-f-7989bf9c75-xcc4d with local (envelope-from ) id 1wp6Xv-00000000COb-2GXy; Wed, 29 Jul 2026 18:50:36 +0300 Received: by e.mail.ru with HTTP; Wed, 29 Jul 2026 18:50:15 +0300 To: =?UTF-8?B?U2VyZ2V5IEthcGx1bg==?= MIME-Version: 1.0 X-Priority: 3 (Normal) X-Mailer: Mail.Ru Mailer 1.0 X-Senderfield-Remsg: 17853146660752376701 X-Senderfield-Remind: 0 Date: Wed, 29 Jul 2026 18:50:15 +0300 Message-Id: <1785340215.228993685@f745.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--b0949221a8Ffb128332af80A45105d681785340215" In-Reply-To: References: <20260720125943.2531443-1-skaplun@tarantool.org> <1785254942.146802378@f510.i.mail.ru> X-Mailru-Src: fe X-4EC0790: 10 X-7564579A: B8F34718100C35BD X-77F55803: 119C1F4DF6A9251C3ED3C6BF6FFA701F50D405059D80C27B16A5943AFE9142C98FD872164937FA4C5B1E46A3991D49EF3DE06ABAFEAF670513DA0CE02869ECEAF550639745339575F9A1BFFC5DE7340A X-7FA49CB5: 70AAF3C13DB70168C09775C1D3CA48CF7A73AF43EF6596A2B2086D80B0504778CF19DD082D7633A0587C8798DFFB2F5764CD17681C2FEB7A176DF2183F8FC7C0C538A0BD2B15DBABC4224003CC836476C9E997A74171F0B4BFD28B28ED4578739E625A9149C048EE91ADC097FE2C3A080B8ADF238913687CB287FD4696A6DC2FA8DF7F3B2552694A4E2F5AFA99E116B42401471946AA11AFA417C69337E82CC2BCF491FFA38154B6B5C8C57E37DE458B543C44CD4AFD0029C6CDE5D1141D2B1CBB5B9C58846935C455408A667E7F57466D722C1723053C0AAE737B26184AA19F8941B15DA834481FA18204E546F3947C9E541A154B51D14BF6B57BC7E64490618DEB871D839B7333395957E7521B51C2DFABB839C843B9C08941B15DA834481F8AA50765F7900637E992CA9783196CA2389733CBF5DBD5E9B5C8C57E37DE458B9E9CE733340B9D5F3BBE47FD9DD3FB595F5C1EE8F4F765FC72CEEB2601E22B093A03B725D353964B0B7D0EA88DDEDAC722CA9DD8327EE4930A3850AC1BE2E7351D6A3D1828C120DEC4224003CC83647689D4C264860C145E X-C1DE0DAB: 0D63561A33F958A5354F4FE656E9B7ED5002B1117B3ED6962E8337BB6C389EF7715D9AB585B0EB04823CB91A9FED034534781492E4B8EEADB1D70E2111C441FFBDAD6C7F3747799A X-C8649E89: 1C3962B70DF3F0AD73CAD6646DEDE191543584D22441D852AB70F9BE574AE9C625B6776AC983F447FC0B9F89525902EE6F57B2FD27647F25E66C117BDB76D659CBD51FAC5887177BC50BB731DFF5DF1B2679C5AA315EACD7B98C9173A289D59C980ECE9DBFB46C05B8341EE9D5BE9A0A1CFD5D8FD7C94036944F272239AB8662A7D55C238FFCD2BF6536EB022892E5344C41F94D744909CEEF9E35A692215F79327F81E6EEE0AEB67A0F9F91F029B6AF33F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu53w8ahmwBjZKM/YPHZyZHvz5uv+WouB9+Od3uM/CLT152eL7j4ZacoUSF0MSa0v5VBmEtSutdC50BIKdL3VIRlkt/X9Gr7QWYXucPUinHATAeHXorM+S1NQOd7Dfgh+EySa44TLi7FD+o+pADVlploy0= X-Mailru-MI: 20000000010000000000400800 X-Mailru-Sender: 67F79B6D769303DDF42BF8E8391677BCB61CFC17D637796C3DE06ABAFEAF670513DA0CE02869ECEAF09F6A69C4E46FA053795A90D59AB0669E2A4D2ACEEDC1CDFDD19BE592D491F27730E7C25FFAFF432A114EDA040D8818F01FF9DF31C397A372D6B4FCE48DF648AE208404248635DF X-Mras: Ok X-Spam: undefined Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_luajit=5D_FFI=3A_Shrink_c?= =?utf-8?q?ontainer_of_packed_bitfield=2E?= 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: Evgeniy Temirgaleev via Tarantool-patches Reply-To: =?UTF-8?B?RXZnZW5peSBUZW1pcmdhbGVldg==?= Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" ----ALT--b0949221a8Ffb128332af80A45105d681785340215 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGksIFNlcmdleSEKUGxlYXNlLCBjb25zaWRlciB0aGUgaWRlYSBhYm91dCBtYXJraW5nIHRoZSB0 ZXN0cyB3aXRoIHNwZWNpYWwgYnVpbGQgb3B0aW9ucy4KCj4gCj4gRnJvbTogU2VyZ2V5IEthcGx1 biA8c2thcGx1bkB0YXJhbnRvb2wub3JnPgo+IFRvOiBFdmdlbml5IFRlbWlyZ2FsZWV2IDxlLnRl bWlyZ2FsZWV2QHRhcmFudG9vbC5vcmc+Cj4gQ2M6IHRhcmFudG9vbC1wYXRjaGVzQGRldi50YXJh bnRvb2wub3JnLCBTZXJnZXkgQnJvbm5pa292IDxzZXJnZXliQHRhcmFudG9vbC5vcmcKPiA+Cj4g RGF0ZTogV2VkbmVzZGF5LCBKdWx5IDI5LCAyMDI2IDExOjQ0IEFNICswMzowMAo+IEhpLCBFdmdl bml5IQo+IFRoYW5rcyBmb3IgdGhlIHJldmlldyEKPiBQbGVhc2UsIHNlZSBteSBhbnN3ZXJzIGJl bG93Lgo+IAo+IE9uIDI4LjA3LjI2LCBFdmdlbml5IFRlbWlyZ2FsZWV2IHdyb3RlOgo+ID4gSGks IFNlcmdleSEgVGhhbmtzIGZvciB0aGUgcGF0Y2ghCj4gPgo+ID4gTEdUTSBhZnRlciB1cGRhdGlu ZyB0aGUgdGVzdC4gSSB0cmllZCB0aGUgdGVzdCBhbmQgaXQgcGFzc2VkIHdpdGhvdXQgdGhlCj4g Zml4Lgo+IAo+IFlvdSBuZWVkIHRvIGJ1aWxkIEx1YUpJVCB3aXRoIEFTQU4gc3VwcG9ydCwgc2Vl IHRoZSBjb21tZW50IGJlbG93Lgo+IAoKSSB0aGlua3MgaXQgd2lsbCBiZSBiZXR0ZXIgdG8gaW5j bHVkZSBzdWNoIGluZm9ybWF0aW9uIHRvwqB0aGUgdGVzdOKAmXMgY29kZSBpbiBhIHNvbWUgd2F5 LgpGb3IgZXhhbXBsZSwgd2UgY2FuIGFkZCBjb21tZW50cyB0byB0aGUgY29kZSwgd2hpY2ggd2Ug ZXhwZWN0IHRvIGZhaWwgd2l0aCBBU0FOIGNoZWNrcy4gQWxzbywgd2UgY2FuIGFkZMKgbWFyayB0 byB0aGXCoGNvcnJlc3BvbmRpbmcgdGVzdCBjb25kaXRpb24gbWVzc2FnZXMgd2l0aMKg4oCYQVNB TuKAmSB0byByZWZsZWN0IHRoaXMgaW4gdGhlIHRlc3QgcmVwb3J0cy4KCj4gCj4gCj4gPHNuaXBw ZWQ+Cj4gCj4gVGhlIHRlc3QgZmFpbHMgaWYgcnVuIHVuZGVyIEFTQU4uIEJ1aWxkIEx1YUpJVCB3 aXRoIGl0cyBzdXBwb3J0IGxpa2UgdGhlCj4gZm9sbG93aW5nOgo+IAo+IHwgY21ha2UgLURMVUFK SVRfRU5BQkxFX0dDNjQ9T04gLURMVUFKSVRfVVNFX1NZU01BTExPQz1PTgo+IC1ETFVBSklUX1VT RV9BU0FOPU9OIC1ETFVBSklUX1VTRV9VQlNBTj1PTiAtRENNQUtFX0JVSUxEX1RZUEU9RGVidWcK PiAtRExVQV9VU0VfQVNTRVJUPU9OIC1ETFVBX1VTRV9BUElDSEVDSz1PTiAuICYmIG1ha2UgLWoK PiAKPiBCdXQgSSBsaWtlIHRoZSBpZGVhIHRvIGNoZWNrIG1lbW9yeSBsYXlvdXQgb2YgdGhlIGdp dmVuIHN0cnVjdHVyZS4gU2VlCj4gdGhlIGl0ZXJhdGl2ZSBwYXRjaCBiZWxvdzoKPiAKPiA9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Cj4gZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTE0NTEtZmZpLXBh Y2tlZC1iaXRmaWVsZC50ZXN0Lmx1YQo+IGIvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotMTQ1MS1m ZmktcGFja2VkLWJpdGZpZWxkLnRlc3QubHVhCj4gaW5kZXggMDdlNTNmNzYuLjc2NDgzYjBkIDEw MDY0NAo+IC0tLSBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTE0NTEtZmZpLXBhY2tlZC1iaXRm aWVsZC50ZXN0Lmx1YQo+ICsrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTE0NTEtZmZpLXBh Y2tlZC1iaXRmaWVsZC50ZXN0Lmx1YQo+IEBAIC0xMCwxMyArMTAsMjEgQEAgbG9jYWwgZmZpID0g cmVxdWlyZSgnZmZpJykKPiAKPiBmZmkuY2RlZltbCj4gI3ByYWdtYSBwYWNrKHB1c2gsIDIpCj4g Kwo+IHR5cGVkZWYgc3RydWN0IHsKPiB1bnNpZ25lZCBpbnQgYml0ZmllbGQ6MTsKPiB9IHBhY2tl ZF9zdHJ1Y3Q7Cj4gKwo+ICt0eXBlZGVmIHN0cnVjdCB7Cj4gKyB1bnNpZ25lZCBpbnQgYml0Zmll bGQwOjE7Cj4gKyB1bnNpZ25lZCBpbnQgYml0ZmllbGQxNToxNTsKPiArIHVuc2lnbmVkIGludCBi aXRmaWVsZDE2OjE7Cj4gK30gcGFja2VkX3N0cnVjdDI7Cj4gKwo+ICNwcmFnbWEgcGFjayhwb3Ap Cj4gXV0KPiAKPiAtdGVzdDpwbGFuKDIpCj4gK3Rlc3Q6cGxhbig1KQo+IAo+IGxvY2FsIHBhY2tl ZCA9IGZmaS5uZXcoJ3BhY2tlZF9zdHJ1Y3QnKQo+IAo+IEBAIC0yNSw0ICszMywxMCBAQCB0ZXN0 OmlzKHBhY2tlZC5iaXRmaWVsZCwgMCwgJ2NvcnJlY3QgMC1pbml0aWFsaXphdGlvbicpCj4gCj4g Cgp0ZXN0OmlzKHBhY2tlZC5iaXRmaWVsZCwgMCwgJ0FTQU46wqBjb3JyZWN0IDAtaW5pdGlhbGl6 YXRpb24nKSAtLcKgQVNBTjogaGVhcCBvdmVyZmxvdyBvbiByZWFkCgo+IAo+IHBhY2tlZC5iaXRm aWVsZCA9IDEKPiAKCj4gCj4gdGVzdDppcyhwYWNrZWQuYml0ZmllbGQsIDEsICdiaXRmaWVsZCBz ZXQgY29ycmVjdGx5JykKPiAKCnBhY2tlZC5iaXRmaWVsZCA9IDHCoC0tIEFTQU46IGhlYXAgb3Zl cmZsb3cgb24gd3JpdGUKdGVzdDppcyhwYWNrZWQuYml0ZmllbGQsIDEsICdBU0FOOsKgYml0Zmll bGQgc2V0IGNvcnJlY3RseScpCgo+IAo+IAo+ICstLSBDaGVjayBjb3JyZWN0IHN0cnVjdHVyZSBs YXlvdXQuCj4gK2xvY2FsIGJ5dGVvZmZzZXQsIGJpdHBvcywgYml0c2l6ZSA9IGZmaS5vZmZzZXRv ZigncGFja2VkX3N0cnVjdDInLAo+ICdiaXRmaWVsZDE2JykKPiArdGVzdDppcyhieXRlb2Zmc2V0 LCAyLCAnYnl0ZW9mZnNldCBpcyBjb3JyZWN0JykKPiArdGVzdDppcyhiaXRwb3MsIDAsICdiaXRw b3MgaXMgY29ycmVjdCcpCj4gK3Rlc3Q6aXMoYml0c2l6ZSwgMSwgJ2JpdHNpemUgaXMgY29ycmVj dCcpCj4gKwo+IHRlc3Q6ZG9uZSh0cnVlKQo+ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPiAKPiBCcmFuY2ggaXMgZm9y Y2UtcHVzaGVkLgo+ID4KPiA+IC0tCj4gPiBCZXN0IHJlZ2FyZHMsCj4gPiBFdmdlbml5IFRlbWly Z2FsZWV2Cj4gPgo+ID4gPgo+IAo+IDxzbmlwcGVkPgo+IAo+ID4gPiBiL3Rlc3QvdGFyYW50b29s LXRlc3RzL2xqLTE0NTEtZmZpLXBhY2tlZC1iaXRmaWVsZC50ZXN0Lmx1YQo+ID4gPiBuZXcgZmls ZSBtb2RlIDEwMDY0NAo+ID4gPiBpbmRleCAwMDAwMDAwMC4uMDdlNTNmNzYKPiA+ID4gLS0tIC9k ZXYvbnVsbAo+ID4gPiArKysgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai0xNDUxLWZmaS1wYWNr ZWQtYml0ZmllbGQudGVzdC5sdWEKPiA+ID4gQEAgLTAsMCArMSwyOCBAQAo+ID4gPiArbG9jYWwg dGFwID0gcmVxdWlyZSgndGFwJykKPiA+ID4gKwo+ID4gPiArLS0gVGVzdCBmaWxlIHRvIGRlbW9u c3RyYXRlIEx1YUpJVCdzIGluY29ycmVjdCBiZWhhdmlvdXIgb2YgdGhlCj4gPiA+ICstLSBgI3By YWdtYWAgcGFjayBkaXJlY3RpdmUgZm9yIGJpdGZpZWxkcyBpbiBzdHJ1Y3R1cmVzLgo+ID4gPiAr LS0gU2VlIGFsc286IGh0dHBzOi8vZ2l0aHViLmNvbS9MdWFKSVQvTHVhSklUL2lzc3Vlcy8xNDUx Lgo+ID4gPiArCj4gPiA+ICtsb2NhbCB0ZXN0ID0gdGFwLnRlc3QoJ2xqLTE0NTEtZmZpLXBhY2tl ZC1iaXRmaWVsZCcpCj4gPiA+ICsKPiA+ID4gK2xvY2FsIGZmaSA9IHJlcXVpcmUoJ2ZmaScpCj4g PiA+ICsKPiA+ID4gK2ZmaS5jZGVmW1sKPiA+ID4gKyNwcmFnbWEgcGFjayhwdXNoLCAyKQo+ID4g PiArdHlwZWRlZiBzdHJ1Y3Qgewo+ID4gPiArIHVuc2lnbmVkIGludCBiaXRmaWVsZDoxOwo+ID4g PiArfSBwYWNrZWRfc3RydWN0Owo+ID4gPiArI3ByYWdtYSBwYWNrKHBvcCkKPiA+ID4gK11dCj4g PiA+ICsKPiA+ID4gK3Rlc3Q6cGxhbigyKQo+ID4gPiArCj4gPiA+ICtsb2NhbCBwYWNrZWQgPSBm ZmkubmV3KCdwYWNrZWRfc3RydWN0JykKPiA+ID4gKwo+ID4gPiArdGVzdDppcyhwYWNrZWQuYml0 ZmllbGQsIDAsICdjb3JyZWN0IDAtaW5pdGlhbGl6YXRpb24nKQo+ID4gPiArCj4gPiA+ICtwYWNr ZWQuYml0ZmllbGQgPSAxCj4gPiA+ICt0ZXN0OmlzKHBhY2tlZC5iaXRmaWVsZCwgMSwgJ2JpdGZp ZWxkIHNldCBjb3JyZWN0bHknKQo+ID4gPiArCj4gPiA+ICt0ZXN0OmRvbmUodHJ1ZSkKPiA+ID4g LS0KPiA+ID4gMi41NS4wCj4gPiA+Cj4gCj4gLS0KPiBCZXN0IHJlZ2FyZHMsCj4gU2VyZ2V5IEth cGx1bgo+IAoKLS0KQmVzdCByZWdhcmRzLApFdmdlbml5IFRlbWlyZ2FsZWV2 ----ALT--b0949221a8Ffb128332af80A45105d681785340215 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXYgY2xhc3M9ImNsLTY5a2NwOWd4NXQiPjxkaXY+SGksIFNlcmdleSE8 L2Rpdj5QbGVhc2UsIGNvbnNpZGVyIHRoZSBpZGVhIGFib3V0IG1hcmtpbmcgdGhlIHRlc3RzIHdp dGggc3BlY2lhbCBidWlsZCBvcHRpb25zLjxkaXYgY2xhc3M9Im1haWwtcXVvdGUtY29sbGFwc2Ui PjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjttYXJnaW46 MTBweDtwYWRkaW5nOjAgMCAwIDEwcHgiPjxzcGFuPkZyb206IFNlcmdleSBLYXBsdW4gJmx0Ozxh IGhyZWY9Im1haWx0bzpza2FwbHVuQHRhcmFudG9vbC5vcmciPnNrYXBsdW5AdGFyYW50b29sLm9y ZzwvYT4mZ3Q7PGJyPlRvOiBFdmdlbml5IFRlbWlyZ2FsZWV2ICZsdDs8YSBocmVmPSJtYWlsdG86 ZS50ZW1pcmdhbGVldkB0YXJhbnRvb2wub3JnIj5lLnRlbWlyZ2FsZWV2QHRhcmFudG9vbC5vcmc8 L2E+Jmd0Ozxicj5DYzogdGFyYW50b29sLXBhdGNoZXNAZGV2LnRhcmFudG9vbC5vcmcsIFNlcmdl eSBCcm9ubmlrb3YgJmx0OzxhIGhyZWY9Im1haWx0bzpzZXJnZXliQHRhcmFudG9vbC5vcmciPnNl cmdleWJAdGFyYW50b29sLm9yZzwvYT4mZ3Q7PGJyPkRhdGU6IFdlZG5lc2RheSwgSnVseSAyOSwg MjAyNiAxMTo0NCBBTSArMDM6MDA8L3NwYW4+PGJyPiZuYnNwOzxkaXY+PGRpdiBpZD0iIj48ZGl2 IGNsYXNzPSJjbC0zNm9mMmJkbXJjIj48ZGl2IGNsYXNzPSJqcy1oZWxwZXJfbXJfY3NzX2F0dHIg anMtcmVhZG1zZy1tc2dfbXJfY3NzX2F0dHIiPjxkaXYgaWQ9InN0eWxlXzE3ODUzMTQ2NjYwNzUy Mzc2NzAxX21yX2Nzc19hdHRyIj48ZGl2IGlkPSJzdHlsZV8xNzg1MzE0NjY2MDc1MjM3NjcwMV9C T0RZX21yX2Nzc19hdHRyIj5IaSwgRXZnZW5peSE8YnI+VGhhbmtzIGZvciB0aGUgcmV2aWV3ITxi cj5QbGVhc2UsIHNlZSBteSBhbnN3ZXJzIGJlbG93Ljxicj48YnI+T24gMjguMDcuMjYsIEV2Z2Vu aXkgVGVtaXJnYWxlZXYgd3JvdGU6PGJyPiZndDsgSGksIFNlcmdleSEgVGhhbmtzIGZvciB0aGUg cGF0Y2ghPGJyPiZndDs8YnI+Jmd0OyBMR1RNIGFmdGVyIHVwZGF0aW5nIHRoZSB0ZXN0LiBJIHRy aWVkIHRoZSB0ZXN0IGFuZCBpdCBwYXNzZWQgd2l0aG91dCB0aGUgZml4Ljxicj48YnI+WW91IG5l ZWQgdG8gYnVpbGQgTHVhSklUIHdpdGggQVNBTiBzdXBwb3J0LCBzZWUgdGhlIGNvbW1lbnQgYmVs b3cuPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2 PjwvZGl2PjxkaXY+SSB0aGlua3MgaXQgd2lsbCBiZSBiZXR0ZXIgdG8gaW5jbHVkZSBzdWNoIGlu Zm9ybWF0aW9uIHRvJm5ic3A7dGhlIHRlc3TigJlzIGNvZGUgaW4gYSBzb21lIHdheS48L2Rpdj48 ZGl2PjxkaXY+Rm9yIGV4YW1wbGUsIHdlIGNhbiBhZGQgY29tbWVudHMgdG8gdGhlIGNvZGUsIHdo aWNoIHdlIGV4cGVjdCB0byBmYWlsIHdpdGggQVNBTiBjaGVja3MuIEFsc28sIHdlIGNhbiBhZGQm bmJzcDttYXJrIHRvIHRoZSZuYnNwO2NvcnJlc3BvbmRpbmcgdGVzdCBjb25kaXRpb24gbWVzc2Fn ZXMgd2l0aCZuYnNwO+KAmEFTQU7igJkgdG8gcmVmbGVjdCB0aGlzIGluIHRoZSB0ZXN0IHJlcG9y dHMuPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY2wtNjlrY3A5Z3g1dCI+PGRpdiBjbGFzcz0ibWFp bC1xdW90ZS1jb2xsYXBzZSI+PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlci1sZWZ0OjFweCBzb2xp ZCAjMDg1N0E2O21hcmdpbjoxMHB4O3BhZGRpbmc6MCAwIDAgMTBweCI+PGRpdj48ZGl2PjxkaXYg Y2xhc3M9ImNsLTM2b2YyYmRtcmMiPjxkaXYgY2xhc3M9ImpzLWhlbHBlcl9tcl9jc3NfYXR0ciBq cy1yZWFkbXNnLW1zZ19tcl9jc3NfYXR0ciI+PGRpdj48ZGl2Pjxicj4mbHQ7c25pcHBlZCZndDs8 YnI+PGJyPlRoZSB0ZXN0IGZhaWxzIGlmIHJ1biB1bmRlciBBU0FOLiBCdWlsZCBMdWFKSVQgd2l0 aCBpdHMgc3VwcG9ydCBsaWtlIHRoZTxicj5mb2xsb3dpbmc6PGJyPjxicj58IGNtYWtlIC1ETFVB SklUX0VOQUJMRV9HQzY0PU9OIC1ETFVBSklUX1VTRV9TWVNNQUxMT0M9T04gLURMVUFKSVRfVVNF X0FTQU49T04gLURMVUFKSVRfVVNFX1VCU0FOPU9OIC1EQ01BS0VfQlVJTERfVFlQRT1EZWJ1ZyAt RExVQV9VU0VfQVNTRVJUPU9OIC1ETFVBX1VTRV9BUElDSEVDSz1PTiAuICZhbXA7JmFtcDsgbWFr ZSAtajxicj48YnI+QnV0IEkgbGlrZSB0aGUgaWRlYSB0byBjaGVjayBtZW1vcnkgbGF5b3V0IG9m IHRoZSBnaXZlbiBzdHJ1Y3R1cmUuIFNlZTxicj50aGUgaXRlcmF0aXZlIHBhdGNoIGJlbG93Ojxi cj48YnI+PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PTxicj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGot MTQ1MS1mZmktcGFja2VkLWJpdGZpZWxkLnRlc3QubHVhIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMv bGotMTQ1MS1mZmktcGFja2VkLWJpdGZpZWxkLnRlc3QubHVhPGJyPmluZGV4IDA3ZTUzZjc2Li43 NjQ4M2IwZCAxMDA2NDQ8YnI+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotMTQ1MS1mZmkt cGFja2VkLWJpdGZpZWxkLnRlc3QubHVhPGJyPisrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xq LTE0NTEtZmZpLXBhY2tlZC1iaXRmaWVsZC50ZXN0Lmx1YTxicj5AQCAtMTAsMTMgKzEwLDIxIEBA IGxvY2FsIGZmaSA9IHJlcXVpcmUoJ2ZmaScpPGJyPjxicj5mZmkuY2RlZltbPGJyPiNwcmFnbWEg cGFjayhwdXNoLCAyKTxicj4rPGJyPnR5cGVkZWYgc3RydWN0IHs8YnI+dW5zaWduZWQgaW50IGJp dGZpZWxkOjE7PGJyPn0gcGFja2VkX3N0cnVjdDs8YnI+Kzxicj4rdHlwZWRlZiBzdHJ1Y3Qgezxi cj4rIHVuc2lnbmVkIGludCBiaXRmaWVsZDA6MTs8YnI+KyB1bnNpZ25lZCBpbnQgYml0ZmllbGQx NToxNTs8YnI+KyB1bnNpZ25lZCBpbnQgYml0ZmllbGQxNjoxOzxicj4rfSBwYWNrZWRfc3RydWN0 Mjs8YnI+Kzxicj4jcHJhZ21hIHBhY2socG9wKTxicj5dXTxicj48YnI+LXRlc3Q6cGxhbigyKTxi cj4rdGVzdDpwbGFuKDUpPGJyPjxicj5sb2NhbCBwYWNrZWQgPSBmZmkubmV3KCdwYWNrZWRfc3Ry dWN0Jyk8YnI+PGJyPkBAIC0yNSw0ICszMywxMCBAQCB0ZXN0OmlzKHBhY2tlZC5iaXRmaWVsZCwg MCwgJ2NvcnJlY3QgMC1pbml0aWFsaXphdGlvbicpPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9k aXY+PC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjxkaXY+dGVzdDppcyhwYWNrZWQuYml0 ZmllbGQsIDAsICdBU0FOOiZuYnNwO2NvcnJlY3QgMC1pbml0aWFsaXphdGlvbicpIC0tJm5ic3A7 QVNBTjogaGVhcCBvdmVyZmxvdyBvbiByZWFkPC9kaXY+PGRpdiBjbGFzcz0iY2wtNjlrY3A5Z3g1 dCI+PGRpdiBjbGFzcz0ibWFpbC1xdW90ZS1jb2xsYXBzZSI+PGJsb2NrcXVvdGUgc3R5bGU9ImJv cmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2O21hcmdpbjoxMHB4O3BhZGRpbmc6MCAwIDAgMTBw eCI+PGRpdj48ZGl2PjxkaXYgY2xhc3M9ImNsLTM2b2YyYmRtcmMiPjxkaXYgY2xhc3M9ImpzLWhl bHBlcl9tcl9jc3NfYXR0ciBqcy1yZWFkbXNnLW1zZ19tcl9jc3NfYXR0ciI+PGRpdj48ZGl2PnBh Y2tlZC5iaXRmaWVsZCA9IDE8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Js b2NrcXVvdGU+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY2wtNjlrY3A5Z3g1dCI+PGRpdiBjbGFz cz0ibWFpbC1xdW90ZS1jb2xsYXBzZSI+PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlci1sZWZ0OjFw eCBzb2xpZCAjMDg1N0E2O21hcmdpbjoxMHB4O3BhZGRpbmc6MCAwIDAgMTBweCI+PGRpdj48ZGl2 PjxkaXYgY2xhc3M9ImNsLTM2b2YyYmRtcmMiPjxkaXYgY2xhc3M9ImpzLWhlbHBlcl9tcl9jc3Nf YXR0ciBqcy1yZWFkbXNnLW1zZ19tcl9jc3NfYXR0ciI+PGRpdj48ZGl2PnRlc3Q6aXMocGFja2Vk LmJpdGZpZWxkLCAxLCAnYml0ZmllbGQgc2V0IGNvcnJlY3RseScpPC9kaXY+PC9kaXY+PC9kaXY+ PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjxkaXY+cGFja2VkLmJp dGZpZWxkID0gMSZuYnNwOy0tIEFTQU46IGhlYXAgb3ZlcmZsb3cgb24gd3JpdGU8L2Rpdj48ZGl2 PnRlc3Q6aXMocGFja2VkLmJpdGZpZWxkLCAxLCAnQVNBTjombmJzcDtiaXRmaWVsZCBzZXQgY29y cmVjdGx5Jyk8L2Rpdj48ZGl2IGNsYXNzPSJjbC02OWtjcDlneDV0Ij48ZGl2IGNsYXNzPSJtYWls LXF1b3RlLWNvbGxhcHNlIj48YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlk ICMwODU3QTY7bWFyZ2luOjEwcHg7cGFkZGluZzowIDAgMCAxMHB4Ij48ZGl2PjxkaXY+PGRpdiBj bGFzcz0iY2wtMzZvZjJiZG1yYyI+PGRpdiBjbGFzcz0ianMtaGVscGVyX21yX2Nzc19hdHRyIGpz LXJlYWRtc2ctbXNnX21yX2Nzc19hdHRyIj48ZGl2PjxkaXY+PGJyPistLSBDaGVjayBjb3JyZWN0 IHN0cnVjdHVyZSBsYXlvdXQuPGJyPitsb2NhbCBieXRlb2Zmc2V0LCBiaXRwb3MsIGJpdHNpemUg PSBmZmkub2Zmc2V0b2YoJ3BhY2tlZF9zdHJ1Y3QyJywgJ2JpdGZpZWxkMTYnKTxicj4rdGVzdDpp cyhieXRlb2Zmc2V0LCAyLCAnYnl0ZW9mZnNldCBpcyBjb3JyZWN0Jyk8YnI+K3Rlc3Q6aXMoYml0 cG9zLCAwLCAnYml0cG9zIGlzIGNvcnJlY3QnKTxicj4rdGVzdDppcyhiaXRzaXplLCAxLCAnYml0 c2l6ZSBpcyBjb3JyZWN0Jyk8YnI+Kzxicj50ZXN0OmRvbmUodHJ1ZSk8YnI+PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PTxi cj48YnI+QnJhbmNoIGlzIGZvcmNlLXB1c2hlZC48YnI+Jmd0Ozxicj4mZ3Q7IC0tPGJyPiZndDsg QmVzdCByZWdhcmRzLDxicj4mZ3Q7IEV2Z2VuaXkgVGVtaXJnYWxlZXY8YnI+Jmd0Ozxicj4mZ3Q7 ICZndDs8YnI+PGJyPiZsdDtzbmlwcGVkJmd0Ozxicj48YnI+Jmd0OyAmZ3Q7IGIvdGVzdC90YXJh bnRvb2wtdGVzdHMvbGotMTQ1MS1mZmktcGFja2VkLWJpdGZpZWxkLnRlc3QubHVhPGJyPiZndDsg Jmd0OyBuZXcgZmlsZSBtb2RlIDEwMDY0NDxicj4mZ3Q7ICZndDsgaW5kZXggMDAwMDAwMDAuLjA3 ZTUzZjc2PGJyPiZndDsgJmd0OyAtLS0gL2Rldi9udWxsPGJyPiZndDsgJmd0OyArKysgYi90ZXN0 L3RhcmFudG9vbC10ZXN0cy9sai0xNDUxLWZmaS1wYWNrZWQtYml0ZmllbGQudGVzdC5sdWE8YnI+ Jmd0OyAmZ3Q7IEBAIC0wLDAgKzEsMjggQEA8YnI+Jmd0OyAmZ3Q7ICtsb2NhbCB0YXAgPSByZXF1 aXJlKCd0YXAnKTxicj4mZ3Q7ICZndDsgKzxicj4mZ3Q7ICZndDsgKy0tIFRlc3QgZmlsZSB0byBk ZW1vbnN0cmF0ZSBMdWFKSVQncyBpbmNvcnJlY3QgYmVoYXZpb3VyIG9mIHRoZTxicj4mZ3Q7ICZn dDsgKy0tIGAjcHJhZ21hYCBwYWNrIGRpcmVjdGl2ZSBmb3IgYml0ZmllbGRzIGluIHN0cnVjdHVy ZXMuPGJyPiZndDsgJmd0OyArLS0gU2VlIGFsc286IDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNv bS9MdWFKSVQvTHVhSklUL2lzc3Vlcy8xNDUxIj5odHRwczovL2dpdGh1Yi5jb20vTHVhSklUL0x1 YUpJVC9pc3N1ZXMvMTQ1MTwvYT4uPGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyArbG9jYWwg dGVzdCA9IHRhcC50ZXN0KCdsai0xNDUxLWZmaS1wYWNrZWQtYml0ZmllbGQnKTxicj4mZ3Q7ICZn dDsgKzxicj4mZ3Q7ICZndDsgK2xvY2FsIGZmaSA9IHJlcXVpcmUoJ2ZmaScpPGJyPiZndDsgJmd0 OyArPGJyPiZndDsgJmd0OyArZmZpLmNkZWZbWzxicj4mZ3Q7ICZndDsgKyNwcmFnbWEgcGFjayhw dXNoLCAyKTxicj4mZ3Q7ICZndDsgK3R5cGVkZWYgc3RydWN0IHs8YnI+Jmd0OyAmZ3Q7ICsgdW5z aWduZWQgaW50IGJpdGZpZWxkOjE7PGJyPiZndDsgJmd0OyArfSBwYWNrZWRfc3RydWN0Ozxicj4m Z3Q7ICZndDsgKyNwcmFnbWEgcGFjayhwb3ApPGJyPiZndDsgJmd0OyArXV08YnI+Jmd0OyAmZ3Q7 ICs8YnI+Jmd0OyAmZ3Q7ICt0ZXN0OnBsYW4oMik8YnI+Jmd0OyAmZ3Q7ICs8YnI+Jmd0OyAmZ3Q7 ICtsb2NhbCBwYWNrZWQgPSBmZmkubmV3KCdwYWNrZWRfc3RydWN0Jyk8YnI+Jmd0OyAmZ3Q7ICs8 YnI+Jmd0OyAmZ3Q7ICt0ZXN0OmlzKHBhY2tlZC5iaXRmaWVsZCwgMCwgJ2NvcnJlY3QgMC1pbml0 aWFsaXphdGlvbicpPGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyArcGFja2VkLmJpdGZpZWxk ID0gMTxicj4mZ3Q7ICZndDsgK3Rlc3Q6aXMocGFja2VkLmJpdGZpZWxkLCAxLCAnYml0ZmllbGQg c2V0IGNvcnJlY3RseScpPGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyArdGVzdDpkb25lKHRy dWUpPGJyPiZndDsgJmd0OyAtLTxicj4mZ3Q7ICZndDsgMi41NS4wPGJyPiZndDsgJmd0Ozxicj48 YnI+LS08YnI+QmVzdCByZWdhcmRzLDxicj5TZXJnZXkgS2FwbHVuPC9kaXY+PC9kaXY+PC9kaXY+ PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjxkaXY+PGRpdj4tLTxi cj5CZXN0IHJlZ2FyZHMsPC9kaXY+PGRpdj5Fdmdlbml5IFRlbWlyZ2FsZWV2PC9kaXY+PC9kaXY+ PC9CT0RZPjwvSFRNTD4K ----ALT--b0949221a8Ffb128332af80A45105d681785340215--