From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f540.i.mail.ru (f540.i.mail.ru [217.69.128.63]) (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 66E16469719 for ; Wed, 19 Feb 2020 19:37:34 +0300 (MSK) From: =?UTF-8?B?TWFyaWEgS2hheWRpY2g=?= MIME-Version: 1.0 Date: Wed, 19 Feb 2020 19:37:33 +0300 Reply-To: =?UTF-8?B?TWFyaWEgS2hheWRpY2g=?= Message-ID: <1582130253.193228635@f540.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--e5F3775a1f9c34E757C27E57f15C15e51582130253" In-Reply-To: References: <1581359737.397395198@f221.i.mail.ru> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH=5D_box=3A_sql_prepare_and_?= =?utf-8?q?execute_statistics_should_be_reflected_in_box=2Estat=28=29?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?VmxhZGlzbGF2IFNocGlsZXZveQ==?= Cc: =?UTF-8?B?dGFyYW50b29sLXBhdGNoZXM=?= ----ALT--e5F3775a1f9c34E757C27E57f15C15e51582130253 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 ClRoYW5rIHlvdSBmb3IgdGhlIHJldmlldyEKUHJvcG9zZWQgZml4ZXPCoGFyZSBkb25lLgrCoAot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCkNhbGxpbmcgcHJlcGFyZSBhbmQgZXhlY3V0ZSBkaWQgbm90IHVwZGF0ZSBj b3JyZXNwb25kaW5nIHJlcXVlc3Qgc3RhdGlzdGljcwppbiB0aGUgYm94LnN0YXQgdGFibGUuIFRo aXMgaGFwcGVuZWQgYmVjYXVzZSBtZXRob2RzIHRoYXQgY29sbGVjdCBzdGF0cyB3ZXJlCm5ldmVy IGNhbGxlZCB3aGVyZSB0aGV5IHNob3VsZCBoYXZlIGJlZW4uCsKgCkNsb3NlcyAjNDc1NgoKLS0t Cklzc3VlOgpodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDc1 NiDCoApCcmFuY2g6Cmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2NvbXBh cmUvZWxqYXNobS9naC00NzU2LWJveC1zdGF0LWV4ZWN1dGUtYW5kLXByZXBhcmUtbm90LXVwZGF0 ZWQgwqAKwqAKwqBzcmMvYm94L2V4ZWN1dGUuYyDCoCDCoCDCoCDCoHwgwqA0ICsrKysKwqB0ZXN0 L3NxbC9pcHJvdG8ucmVzdWx0IMKgIHwgMjggKysrKysrKysrKysrKysrKysrKysrKysrKysrKwrC oHRlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YSB8IDEyICsrKysrKysrKysrKwrCoDMgZmlsZXMgY2hh bmdlZCwgNDQgaW5zZXJ0aW9ucygrKQrCoApkaWZmIC0tZ2l0IGEvc3JjL2JveC9leGVjdXRlLmMg Yi9zcmMvYm94L2V4ZWN1dGUuYwppbmRleCBkYzhkY2U4MWMuLjNkYWEwOTIwNSAxMDA2NDQKLS0t IGEvc3JjL2JveC9leGVjdXRlLmMKKysrIGIvc3JjL2JveC9leGVjdXRlLmMKQEAgLTQ4LDYgKzQ4 LDcgQEAKwqAjaW5jbHVkZSAiYm94L2x1YS9leGVjdXRlLmgiCsKgI2luY2x1ZGUgImJveC9zcWxf c3RtdF9jYWNoZS5oIgrCoCNpbmNsdWRlICJzZXNzaW9uLmgiCisjaW5jbHVkZSAicm1lYW4uaCIK wqAKwqBjb25zdCBjaGFyICpzcWxfaW5mb19rZXlfc3Ryc1tdID0gewrCoMKgwqAgwqAicm93X2Nv dW50IiwKQEAgLTYwOCw2ICs2MDksNyBAQCBzcWxfcHJlcGFyZShjb25zdCBjaGFyICpzcWwsIGlu dCBsZW4sIHN0cnVjdCBwb3J0ICpwb3J0KQrCoHsKwqDCoMKgIMKgdWludDMyX3Qgc3RtdF9pZCA9 IHNxbF9zdG10X2NhbGN1bGF0ZV9pZChzcWwsIGxlbik7CsKgwqDCoCDCoHN0cnVjdCBzcWxfc3Rt dCAqc3RtdCA9IHNxbF9zdG10X2NhY2hlX2ZpbmQoc3RtdF9pZCk7CivCoMKgIMKgcm1lYW5fY29s bGVjdChybWVhbl9ib3gsIElQUk9UT19QUkVQQVJFLCAxKTsKwqDCoMKgIMKgaWYgKHN0bXQgPT0g TlVMTCkgewrCoMKgwqAgwqDCoMKgIMKgaWYgKHNxbF9zdG10X2NvbXBpbGUoc3FsLCBsZW4sIE5V TEwsICZzdG10LCBOVUxMKSAhPSAwKQrCoMKgwqAgwqDCoMKgIMKgwqDCoCDCoHJldHVybiAtMTsK QEAgLTY2OSw2ICs2NzEsNyBAQCBzdGF0aWMgaW5saW5lIGludArCoHNxbF9leGVjdXRlKHN0cnVj dCBzcWxfc3RtdCAqc3RtdCwgc3RydWN0IHBvcnQgKnBvcnQsIHN0cnVjdCByZWdpb24gKnJlZ2lv bikKwqB7CsKgwqDCoCDCoGludCByYywgY29sdW1uX2NvdW50ID0gc3FsX2NvbHVtbl9jb3VudChz dG10KTsKK8KgwqAgwqBybWVhbl9jb2xsZWN0KHJtZWFuX2JveCwgSVBST1RPX0VYRUNVVEUsIDEp OwrCoMKgwqAgwqBpZiAoY29sdW1uX2NvdW50ID4gMCkgewrCoMKgwqAgwqDCoMKgIMKgLyogRWl0 aGVyIFJPVyBvciBET05FIG9yIEVSUk9SLiAqLwrCoMKgwqAgwqDCoMKgIMKgd2hpbGUgKChyYyA9 IHNxbF9zdGVwKHN0bXQpKSA9PSBTUUxfUk9XKSB7CkBAIC03MzIsNiArNzM1LDcgQEAgc3FsX3By ZXBhcmVfYW5kX2V4ZWN1dGUoY29uc3QgY2hhciAqc3FsLCBpbnQgbGVuLCBjb25zdCBzdHJ1Y3Qg c3FsX2JpbmQgKmJpbmQsCsKgwqDCoCDCoGlmIChzcWxfc3RtdF9jb21waWxlKHNxbCwgbGVuLCBO VUxMLCAmc3RtdCwgTlVMTCkgIT0gMCkKwqDCoMKgIMKgwqDCoCDCoHJldHVybiAtMTsKwqDCoMKg IMKgYXNzZXJ0KHN0bXQgIT0gTlVMTCk7CivCoMKgIMKgcm1lYW5fY29sbGVjdChybWVhbl9ib3gs IElQUk9UT19FWEVDVVRFLCAxKTsKwqDCoMKgIMKgZW51bSBzcWxfc2VyaWFsaXphdGlvbl9mb3Jt YXQgZm9ybWF0ID0gc3FsX2NvbHVtbl9jb3VudChzdG10KSA+IDAgPwrCoMKgwqAgwqDCoMKgIMKg wqDCoCDCoMKgwqAgwqDCoMKgIMKgIMKgIERRTF9FWEVDVVRFIDogRE1MX0VYRUNVVEU7CsKgwqDC oCDCoHBvcnRfc3FsX2NyZWF0ZShwb3J0LCBzdG10LCBmb3JtYXQsIHRydWUpOwrCoApkaWZmIC0t Z2l0IGEvdGVzdC9zcWwvaXByb3RvLnJlc3VsdCBiL3Rlc3Qvc3FsL2lwcm90by5yZXN1bHQKaW5k ZXggN2RmMTFiMGJmLi5iNGEwNWU0ZjggMTAwNjQ0Ci0tLSBhL3Rlc3Qvc3FsL2lwcm90by5yZXN1 bHQKKysrIGIvdGVzdC9zcWwvaXByb3RvLnJlc3VsdApAQCAtNzg4LDYgKzc4OCwzNCBAQCBib3gu c2NoZW1hLnVzZXIucmV2b2tlKCdndWVzdCcsICdjcmVhdGUnLCAnc3BhY2UnKQrCoHNwYWNlID0g bmlsCsKgLS0tCsKgLi4uCistLQorLS0gZ2gtNDc1NjogUFJFUEFSRSBhbmQgRVhFQ1VURSBzdGF0 aXN0aWNzIHNob3VsZCBiZSBwcmVzZW50IGluIGJveC5zdGF0KCkKKy0tCitwID0gYm94LnN0YXQo KS5QUkVQQVJFLnRvdGFsCistLS0KKy4uLgorZSA9IGJveC5zdGF0KCkuRVhFQ1VURS50b3RhbAor LS0tCisuLi4KK3MgPSBib3gucHJlcGFyZShbWyBTRUxFQ1QgPzsgXV0pCistLS0KKy4uLgorczpl eGVjdXRlKHs0Mn0pCistLS0KKy0gbWV0YWRhdGE6CisgwqAtIG5hbWU6ICc/JworIMKgIMKgdHlw ZTogaW50ZWdlcgorIMKgcm93czoKKyDCoC0gWzQyXQorLi4uCitib3guc3RhdCgpLlBSRVBBUkUu dG90YWwgPT0gcCArIDEKKy0tLQorLSB0cnVlCisuLi4KK2JveC5zdGF0KCkuRVhFQ1VURS50b3Rh bCA9PSBlICsgMQorLS0tCistIHRydWUKKy4uLgrCoC0tIENsZWFudXAgeGxvZwrCoGJveC5zbmFw c2hvdCgpCsKgLS0tCsKgCmRpZmYgLS1naXQgYS90ZXN0L3NxbC9pcHJvdG8udGVzdC5sdWEgYi90 ZXN0L3NxbC9pcHJvdG8udGVzdC5sdWEKaW5kZXggNDAxOWZiN2E0Li4xNDE3YWEzMmIgMTAwNjQ0 Ci0tLSBhL3Rlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YQorKysgYi90ZXN0L3NxbC9pcHJvdG8udGVz dC5sdWEKQEAgLTI0Miw1ICsyNDIsMTcgQEAgYm94LnNjaGVtYS51c2VyLnJldm9rZSgnZ3Vlc3Qn LCAncmVhZCx3cml0ZSxleGVjdXRlJywgJ3VuaXZlcnNlJykKwqBib3guc2NoZW1hLnVzZXIucmV2 b2tlKCdndWVzdCcsICdjcmVhdGUnLCAnc3BhY2UnKQrCoHNwYWNlID0gbmlsCsKgCistLQorLS0g Z2gtNDc1NjogUFJFUEFSRSBhbmQgRVhFQ1VURSBzdGF0aXN0aWNzIHNob3VsZCBiZSBwcmVzZW50 IGluIGJveC5zdGF0KCkKKy0tCitwID0gYm94LnN0YXQoKS5QUkVQQVJFLnRvdGFsCitlID0gYm94 LnN0YXQoKS5FWEVDVVRFLnRvdGFsCisKK3MgPSBib3gucHJlcGFyZShbWyBTRUxFQ1QgPzsgXV0p CitzOmV4ZWN1dGUoezQyfSkKKworYm94LnN0YXQoKS5QUkVQQVJFLnRvdGFsID09IHAgKyAxCiti b3guc3RhdCgpLkVYRUNVVEUudG90YWwgPT0gZSArIDEKKwrCoC0tIENsZWFudXAgeGxvZwrCoGJv eC5zbmFwc2hvdCgpCi0twqAKMi4yNC4wIAo+0J/Rj9GC0L3QuNGG0LAsIDE0INGE0LXQstGA0LDQ u9GPIDIwMjAsIDA6NDQgKzAzOjAwINC+0YIgVmxhZGlzbGF2IFNocGlsZXZveSA8di5zaHBpbGV2 b3lAdGFyYW50b29sLm9yZz46Cj7CoAo+SGkhIFRoYW5rcyBmb3IgdGhlIHBhdGNoIQo+Cj5PbiAx MC8wMi8yMDIwIDE5OjM1LCBNYXJpYSBLaGF5ZGljaCB3cm90ZToKPj4gQ2FsbGluZyBwcmVwYXJl IGFuZCBleGVjdXRlIGRpZCBub3QgdXBkYXRlIGNvcnJlc3BvbmRpbmcgcmVxdWVzdCBzdGF0aXN0 aWNzCj4+IGluIHRoZSBib3guc3RhdCB0YWJsZS4gVGhpcyBoYXBwZW5lZCBiZWNhdXNlIG1ldGhv ZHMgdGhhdCBjb2xsZWN0IHN0YXRzIHdlcmUKPj4gbmV2ZXIgY2FsbGVkIHdoZXJlIHRoZXkgc2hv dWxkIGhhdmUgYmVlbi4KPj4gwqAKPj4gQ2xvc2VzICM0NzU2Cj4+Cj4+IC0tLQo+PiBJc3N1ZToK Pj4gIGh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lzc3Vlcy80NzU2Cj4+ IEJyYW5jaDoKPj4gIGh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2NvbXBh cmUvZWxqYXNobS9naC00NzU2LWJveC1zdGF0LWV4ZWN1dGUtYW5kLXByZXBhcmUtbm90LXVwZGF0 ZWQgPCBodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDc1NkJy YW5jaDpodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9jb21wYXJlL2VsamFz aG0vZ2gtNDc1Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1wcmVwYXJlLW5vdC11cGRhdGVkID4KPgo+ U29tZXRoaW5nIGlzIGJyb2tlbiB3aXRoIHRoZSBsaW5rcy4gV2hlbiBJIGNsaWNrIG9uIHRoZW0s IGFsbCB0aGUgbGlua3MgYXJlCj5wYXN0ZWQgaW50byB0aGUgYWRkcmVzcyBzdHJpbmcgb2YgbXkg YnJvd3NlciBjb25jYXRlbmF0ZWQuIEFuZCB0aGlzIGlzIHdoYXQKPkkgc2VlIGluIHRoZSBzb3Vy Y2U6Cj4KPmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2NvbXBhcmUvZWxq YXNobS9naC00NzU2LWJveC1zdGF0LWV4ZWN1dGUtYW5kLXByZXBhcmUtbm90LXVwZGF0ZWQgPCBo dHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDc1NkJyYW5jaDpo dHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9jb21wYXJlL2VsamFzaG0vZ2gt NDc1Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1wcmVwYXJlLW5vdC11cGRhdGVkID4KPgo+U28gZXZl cnl0aGluZyBpcyBhIG9uZSBodWdlIGxpbmUuIFRoaXMgZG9lcyBub3QgaGFwcGVuIHdpdGggb3Ro ZXIgZW1haWxzCj5hbmQgbGlua3MuCj4KPlNlZSAyIGNvbW1lbnRzIGJlbG93Lgo+Cj4+IMKgc3Jj L2JveC9leGVjdXRlLmMgwqAgwqAgwqAgwqAgfCDCoDQgKysrKwo+PiDCoHRlc3QvYm94LXRhcC9j ZmcudGVzdC5sdWEgfCAxNiArKysrKysrKysrKysrLS0tCj4+IMKgMiBmaWxlcyBjaGFuZ2VkLCAx NyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQo+PiBkaWZmIC0tZ2l0IGEvc3JjL2JveC9l eGVjdXRlLmMgYi9zcmMvYm94L2V4ZWN1dGUuYwo+PiBpbmRleCBkYzhkY2U4MWMuLmU3NzUwNTVi NCAxMDA2NDQKPj4gLS0tIGEvc3JjL2JveC9leGVjdXRlLmMKPj4gKysrIGIvc3JjL2JveC9leGVj dXRlLmMKPj4gQEAgLTczMiw2ICs3MzUsNyBAQCBzcWxfcHJlcGFyZV9hbmRfZXhlY3V0ZShjb25z dCBjaGFyICpzcWwsIGludCBsZW4sIGNvbnN0IHN0cnVjdCBzcWxfYmluZCAqYmluZCwKPj4gwqDC oMKgIMKgaWYgKHNxbF9zdG10X2NvbXBpbGUoc3FsLCBsZW4sIE5VTEwsICZzdG10LCBOVUxMKSAh PSAwKQo+PiDCoMKgwqAgwqDCoMKgIMKgcmV0dXJuIC0xOwo+PiDCoMKgwqAgwqBhc3NlcnQoc3Rt dCAhPSBOVUxMKTsKPj4gK8KgwqAgwqBybWVhbl9jb2xsZWN0KHJtZWFuX2JveCwgSVBST1RPX1BS RVBBUkUsIDEpOwo+Cj4xLiBOaWtpdGEgaXMgcmlnaHQsIHRoaXMgaXMgY2FsbGVkIHdoZW4gSVBS T1RPX0VYRUNVVEUgYXJyaXZlcy4gWW91IGNhbgo+c2VlIHRoYXQgaW4gaXByb3RvLmNjLiBUaGlz IGlzIGEgc2VwYXJhdGUgcXVlc3Rpb24sIHdoeSBkbyB3ZSBjb2xsZWN0Cj5JUFJPVE9fKiBzdGF0 aXN0aWNzIG91dCBvZiBpcHJvdG8uIEZvciBub3cgbGV0cyBqdXN0IHVzZSBJUFJPVE9fRVhFQ1VU RQo+aGVyZS4KPgo+PiDCoMKgwqAgwqBlbnVtIHNxbF9zZXJpYWxpemF0aW9uX2Zvcm1hdCBmb3Jt YXQgPSBzcWxfY29sdW1uX2NvdW50KHN0bXQpID4gMCA/Cj4+IMKgwqDCoCDCoMKgwqAgwqDCoMKg IMKgwqDCoCDCoMKgwqAgwqAgwqAgRFFMX0VYRUNVVEUgOiBETUxfRVhFQ1VURTsKPj4gwqDCoMKg IMKgcG9ydF9zcWxfY3JlYXRlKHBvcnQsIHN0bXQsIGZvcm1hdCwgdHJ1ZSk7Cj4+IGRpZmYgLS1n aXQgYS90ZXN0L2JveC10YXAvY2ZnLnRlc3QubHVhIGIvdGVzdC9ib3gtdGFwL2NmZy50ZXN0Lmx1 YQo+PiBpbmRleCBkNTI5NDQ3YmIuLmQzNjdhYWIwNyAxMDA3NTUKPj4gLS0tIGEvdGVzdC9ib3gt dGFwL2NmZy50ZXN0Lmx1YQo+PiArKysgYi90ZXN0L2JveC10YXAvY2ZnLnRlc3QubHVhCj4+IEBA IC02LDcgKzYsNyBAQCBsb2NhbCBzb2NrZXQgPSByZXF1aXJlKCdzb2NrZXQnKQo+PiDCoGxvY2Fs IGZpbyA9IHJlcXVpcmUoJ2ZpbycpCj4+IMKgbG9jYWwgdXVpZCA9IHJlcXVpcmUoJ3V1aWQnKQo+ PiDCoGxvY2FsIG1zZ3BhY2sgPSByZXF1aXJlKCdtc2dwYWNrJykKPj4gLXRlc3Q6cGxhbigxMDQp Cj4+ICt0ZXN0OnBsYW4oMTA2KQo+Cj4yLiBIZXJlIE5pa2l0YSBpcyBhbHNvIHJpZ2h0LiBUaGlz IGZpbGUgaXMgZm9yIGJveC5jZmcoKSBmdW5jdGlvbgo+dGVzdHMuIEZvciBpcHJvdG8gc3RhdGlz dGljcywgaW5kZWVkLCBzcWwvaXByb3RvLnRlc3QubHVhIHdvdWxkCj5maXQgd2VsbC4gCsKgCsKg Ci0tCk1hcmlhIEtoYXlkaWNoCsKg ----ALT--e5F3775a1f9c34E757C27E57f15C15e51582130253 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+PGRpdj5UaGFuayB5b3UgZm9yIHRoZSByZXZpZXchPC9kaXY+PGRp dj5Qcm9wb3NlZCBmaXhlcyZuYnNwO2FyZSBkb25lLjwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGhy PjxkaXY+PGRpdj5DYWxsaW5nIHByZXBhcmUgYW5kIGV4ZWN1dGUgZGlkIG5vdCB1cGRhdGUgY29y cmVzcG9uZGluZyByZXF1ZXN0IHN0YXRpc3RpY3M8YnI+aW4gdGhlIGJveC5zdGF0IHRhYmxlLiBU aGlzIGhhcHBlbmVkIGJlY2F1c2UgbWV0aG9kcyB0aGF0IGNvbGxlY3Qgc3RhdHMgd2VyZTxicj5u ZXZlciBjYWxsZWQgd2hlcmUgdGhleSBzaG91bGQgaGF2ZSBiZWVuLjwvZGl2PjxkaXY+Jm5ic3A7 PC9kaXY+PGRpdj5DbG9zZXMgIzQ3NTY8L2Rpdj48ZGl2Pjxicj4tLS08YnI+SXNzdWU6PGJyPjxh IGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lzc3Vlcy80NzU2 Ij5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDc1NjwvYT4m bmJzcDs8YnI+QnJhbmNoOjxicj48YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29s L3RhcmFudG9vbC9jb21wYXJlL2VsamFzaG0vZ2gtNDc1Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1w cmVwYXJlLW5vdC11cGRhdGVkIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9v bC9jb21wYXJlL2VsamFzaG0vZ2gtNDc1Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1wcmVwYXJlLW5v dC11cGRhdGVkPC9hPiZuYnNwOzwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGRpdj4mbmJzcDtzcmMv Ym94L2V4ZWN1dGUuYyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwOzQgKysrKzxi cj4mbmJzcDt0ZXN0L3NxbC9pcHJvdG8ucmVzdWx0ICZuYnNwOyB8IDI4ICsrKysrKysrKysrKysr KysrKysrKysrKysrKys8YnI+Jm5ic3A7dGVzdC9zcWwvaXByb3RvLnRlc3QubHVhIHwgMTIgKysr KysrKysrKysrPGJyPiZuYnNwOzMgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKTwvZGl2 PjxkaXY+Jm5ic3A7PC9kaXY+PGRpdj5kaWZmIC0tZ2l0IGEvc3JjL2JveC9leGVjdXRlLmMgYi9z cmMvYm94L2V4ZWN1dGUuYzxicj5pbmRleCBkYzhkY2U4MWMuLjNkYWEwOTIwNSAxMDA2NDQ8YnI+ LS0tIGEvc3JjL2JveC9leGVjdXRlLmM8YnI+KysrIGIvc3JjL2JveC9leGVjdXRlLmM8YnI+QEAg LTQ4LDYgKzQ4LDcgQEA8YnI+Jm5ic3A7I2luY2x1ZGUgImJveC9sdWEvZXhlY3V0ZS5oIjxicj4m bmJzcDsjaW5jbHVkZSAiYm94L3NxbF9zdG10X2NhY2hlLmgiPGJyPiZuYnNwOyNpbmNsdWRlICJz ZXNzaW9uLmgiPGJyPisjaW5jbHVkZSAicm1lYW4uaCI8YnI+Jm5ic3A7PGJyPiZuYnNwO2NvbnN0 IGNoYXIgKnNxbF9pbmZvX2tleV9zdHJzW10gPSB7PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyAmbmJz cDsicm93X2NvdW50Iiw8YnI+QEAgLTYwOCw2ICs2MDksNyBAQCBzcWxfcHJlcGFyZShjb25zdCBj aGFyICpzcWwsIGludCBsZW4sIHN0cnVjdCBwb3J0ICpwb3J0KTxicj4mbmJzcDt7PGJyPiZuYnNw OyZuYnNwOyZuYnNwOyAmbmJzcDt1aW50MzJfdCBzdG10X2lkID0gc3FsX3N0bXRfY2FsY3VsYXRl X2lkKHNxbCwgbGVuKTs8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO3N0cnVjdCBzcWxfc3Rt dCAqc3RtdCA9IHNxbF9zdG10X2NhY2hlX2ZpbmQoc3RtdF9pZCk7PGJyPismbmJzcDsmbmJzcDsg Jm5ic3A7cm1lYW5fY29sbGVjdChybWVhbl9ib3gsIElQUk9UT19QUkVQQVJFLCAxKTs8YnI+Jm5i c3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO2lmIChzdG10ID09IE5VTEwpIHs8YnI+Jm5ic3A7Jm5ic3A7 Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDtpZiAoc3FsX3N0bXRfY29tcGlsZShzcWws IGxlbiwgTlVMTCwgJmFtcDtzdG10LCBOVUxMKSAhPSAwKTxicj4mbmJzcDsmbmJzcDsmbmJzcDsg Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDtyZXR1cm4gLTE7PGJy PkBAIC02NjksNiArNjcxLDcgQEAgc3RhdGljIGlubGluZSBpbnQ8YnI+Jm5ic3A7c3FsX2V4ZWN1 dGUoc3RydWN0IHNxbF9zdG10ICpzdG10LCBzdHJ1Y3QgcG9ydCAqcG9ydCwgc3RydWN0IHJlZ2lv biAqcmVnaW9uKTxicj4mbmJzcDt7PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDtpbnQgcmMs IGNvbHVtbl9jb3VudCA9IHNxbF9jb2x1bW5fY291bnQoc3RtdCk7PGJyPismbmJzcDsmbmJzcDsg Jm5ic3A7cm1lYW5fY29sbGVjdChybWVhbl9ib3gsIElQUk9UT19FWEVDVVRFLCAxKTs8YnI+Jm5i c3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO2lmIChjb2x1bW5fY291bnQgJmd0OyAwKSB7PGJyPiZuYnNw OyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7LyogRWl0aGVyIFJPVyBvciBE T05FIG9yIEVSUk9SLiAqLzxicj4mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7 ICZuYnNwO3doaWxlICgocmMgPSBzcWxfc3RlcChzdG10KSkgPT0gU1FMX1JPVykgezxicj5AQCAt NzMyLDYgKzczNSw3IEBAIHNxbF9wcmVwYXJlX2FuZF9leGVjdXRlKGNvbnN0IGNoYXIgKnNxbCwg aW50IGxlbiwgY29uc3Qgc3RydWN0IHNxbF9iaW5kICpiaW5kLDxicj4mbmJzcDsmbmJzcDsmbmJz cDsgJm5ic3A7aWYgKHNxbF9zdG10X2NvbXBpbGUoc3FsLCBsZW4sIE5VTEwsICZhbXA7c3RtdCwg TlVMTCkgIT0gMCk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJz cDtyZXR1cm4gLTE7PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDthc3NlcnQoc3RtdCAhPSBO VUxMKTs8YnI+KyZuYnNwOyZuYnNwOyAmbmJzcDtybWVhbl9jb2xsZWN0KHJtZWFuX2JveCwgSVBS T1RPX0VYRUNVVEUsIDEpOzxicj4mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7ZW51bSBzcWxfc2Vy aWFsaXphdGlvbl9mb3JtYXQgZm9ybWF0ID0gc3FsX2NvbHVtbl9jb3VudChzdG10KSAmZ3Q7IDAg Pzxicj4mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZu YnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyAmbmJzcDsg RFFMX0VYRUNVVEUgOiBETUxfRVhFQ1VURTs8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO3Bv cnRfc3FsX2NyZWF0ZShwb3J0LCBzdG10LCBmb3JtYXQsIHRydWUpOzwvZGl2PjxkaXY+Jm5ic3A7 PC9kaXY+PGRpdj5kaWZmIC0tZ2l0IGEvdGVzdC9zcWwvaXByb3RvLnJlc3VsdCBiL3Rlc3Qvc3Fs L2lwcm90by5yZXN1bHQ8YnI+aW5kZXggN2RmMTFiMGJmLi5iNGEwNWU0ZjggMTAwNjQ0PGJyPi0t LSBhL3Rlc3Qvc3FsL2lwcm90by5yZXN1bHQ8YnI+KysrIGIvdGVzdC9zcWwvaXByb3RvLnJlc3Vs dDxicj5AQCAtNzg4LDYgKzc4OCwzNCBAQCBib3guc2NoZW1hLnVzZXIucmV2b2tlKCdndWVzdCcs ICdjcmVhdGUnLCAnc3BhY2UnKTxicj4mbmJzcDtzcGFjZSA9IG5pbDxicj4mbmJzcDstLS08YnI+ Jm5ic3A7Li4uPGJyPistLTxicj4rLS0gZ2gtNDc1NjogUFJFUEFSRSBhbmQgRVhFQ1VURSBzdGF0 aXN0aWNzIHNob3VsZCBiZSBwcmVzZW50IGluIGJveC5zdGF0KCk8YnI+Ky0tPGJyPitwID0gYm94 LnN0YXQoKS5QUkVQQVJFLnRvdGFsPGJyPistLS08YnI+Ky4uLjxicj4rZSA9IGJveC5zdGF0KCku RVhFQ1VURS50b3RhbDxicj4rLS0tPGJyPisuLi48YnI+K3MgPSBib3gucHJlcGFyZShbWyBTRUxF Q1QgPzsgXV0pPGJyPistLS08YnI+Ky4uLjxicj4rczpleGVjdXRlKHs0Mn0pPGJyPistLS08YnI+ Ky0gbWV0YWRhdGE6PGJyPisgJm5ic3A7LSBuYW1lOiAnPyc8YnI+KyAmbmJzcDsgJm5ic3A7dHlw ZTogaW50ZWdlcjxicj4rICZuYnNwO3Jvd3M6PGJyPisgJm5ic3A7LSBbNDJdPGJyPisuLi48YnI+ K2JveC5zdGF0KCkuUFJFUEFSRS50b3RhbCA9PSBwICsgMTxicj4rLS0tPGJyPistIHRydWU8YnI+ Ky4uLjxicj4rYm94LnN0YXQoKS5FWEVDVVRFLnRvdGFsID09IGUgKyAxPGJyPistLS08YnI+Ky0g dHJ1ZTxicj4rLi4uPGJyPiZuYnNwOy0tIENsZWFudXAgeGxvZzxicj4mbmJzcDtib3guc25hcHNo b3QoKTxicj4mbmJzcDstLS08L2Rpdj48ZGl2PiZuYnNwOzwvZGl2PjxkaXY+ZGlmZiAtLWdpdCBh L3Rlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YSBiL3Rlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YTxicj5p bmRleCA0MDE5ZmI3YTQuLjE0MTdhYTMyYiAxMDA2NDQ8YnI+LS0tIGEvdGVzdC9zcWwvaXByb3Rv LnRlc3QubHVhPGJyPisrKyBiL3Rlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YTxicj5AQCAtMjQyLDUg KzI0MiwxNyBAQCBib3guc2NoZW1hLnVzZXIucmV2b2tlKCdndWVzdCcsICdyZWFkLHdyaXRlLGV4 ZWN1dGUnLCAndW5pdmVyc2UnKTxicj4mbmJzcDtib3guc2NoZW1hLnVzZXIucmV2b2tlKCdndWVz dCcsICdjcmVhdGUnLCAnc3BhY2UnKTxicj4mbmJzcDtzcGFjZSA9IG5pbDxicj4mbmJzcDs8YnI+ Ky0tPGJyPistLSBnaC00NzU2OiBQUkVQQVJFIGFuZCBFWEVDVVRFIHN0YXRpc3RpY3Mgc2hvdWxk IGJlIHByZXNlbnQgaW4gYm94LnN0YXQoKTxicj4rLS08YnI+K3AgPSBib3guc3RhdCgpLlBSRVBB UkUudG90YWw8YnI+K2UgPSBib3guc3RhdCgpLkVYRUNVVEUudG90YWw8YnI+Kzxicj4rcyA9IGJv eC5wcmVwYXJlKFtbIFNFTEVDVCA/OyBdXSk8YnI+K3M6ZXhlY3V0ZSh7NDJ9KTxicj4rPGJyPiti b3guc3RhdCgpLlBSRVBBUkUudG90YWwgPT0gcCArIDE8YnI+K2JveC5zdGF0KCkuRVhFQ1VURS50 b3RhbCA9PSBlICsgMTxicj4rPGJyPiZuYnNwOy0tIENsZWFudXAgeGxvZzxicj4mbmJzcDtib3gu c25hcHNob3QoKTxicj4tLSZuYnNwOzxicj4yLjI0LjA8L2Rpdj48L2Rpdj48YmxvY2txdW90ZSBz dHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICMwODU3QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5n OjAgMCAwIDEwcHg7Ij7Qn9GP0YLQvdC40YbQsCwgMTQg0YTQtdCy0YDQsNC70Y8gMjAyMCwgMDo0 NCArMDM6MDAg0L7RgiBWbGFkaXNsYXYgU2hwaWxldm95ICZsdDt2LnNocGlsZXZveUB0YXJhbnRv b2wub3JnJmd0Ozo8YnI+Jm5ic3A7PGRpdiBpZD0iIj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMt cmVhZG1zZy1tc2ciPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48ZGl2PjxkaXYgaWQ9 InN0eWxlXzE1ODE2MzAyOTMwMDc0MzgzNzUwX0JPRFkiPkhpISBUaGFua3MgZm9yIHRoZSBwYXRj aCE8YnI+PGJyPk9uIDEwLzAyLzIwMjAgMTk6MzUsIE1hcmlhIEtoYXlkaWNoIHdyb3RlOjxicj4m Z3Q7IENhbGxpbmcgcHJlcGFyZSBhbmQgZXhlY3V0ZSBkaWQgbm90IHVwZGF0ZSBjb3JyZXNwb25k aW5nIHJlcXVlc3Qgc3RhdGlzdGljczxicj4mZ3Q7IGluIHRoZSBib3guc3RhdCB0YWJsZS4gVGhp cyBoYXBwZW5lZCBiZWNhdXNlIG1ldGhvZHMgdGhhdCBjb2xsZWN0IHN0YXRzIHdlcmU8YnI+Jmd0 OyBuZXZlciBjYWxsZWQgd2hlcmUgdGhleSBzaG91bGQgaGF2ZSBiZWVuLjxicj4mZ3Q7ICZuYnNw Ozxicj4mZ3Q7IENsb3NlcyAjNDc1Njxicj4mZ3Q7PGJyPiZndDsgLS0tPGJyPiZndDsgSXNzdWU6 PGJyPiZndDsgPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wv aXNzdWVzLzQ3NTYiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29s L3RhcmFudG9vbC9pc3N1ZXMvNDc1NjwvYT48YnI+Jmd0OyBCcmFuY2g6PGJyPiZndDsgPGEgaHJl Zj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvY29tcGFyZS9lbGphc2ht L2doLTQ3NTYtYm94LXN0YXQtZXhlY3V0ZS1hbmQtcHJlcGFyZS1ub3QtdXBkYXRlZCIgdGFyZ2V0 PSJfYmxhbmsiPmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2NvbXBhcmUv ZWxqYXNobS9naC00NzU2LWJveC1zdGF0LWV4ZWN1dGUtYW5kLXByZXBhcmUtbm90LXVwZGF0ZWQ8 L2E+ICZsdDs8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9p c3N1ZXMvNDc1NkJyYW5jaDpodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9j b21wYXJlL2VsamFzaG0vZ2gtNDc1Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1wcmVwYXJlLW5vdC11 cGRhdGVkIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJh bnRvb2wvaXNzdWVzLzQ3NTZCcmFuY2g6aHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJh bnRvb2wvY29tcGFyZS9lbGphc2htL2doLTQ3NTYtYm94LXN0YXQtZXhlY3V0ZS1hbmQtcHJlcGFy ZS1ub3QtdXBkYXRlZDwvYT4mZ3Q7PGJyPjxicj5Tb21ldGhpbmcgaXMgYnJva2VuIHdpdGggdGhl IGxpbmtzLiBXaGVuIEkgY2xpY2sgb24gdGhlbSwgYWxsIHRoZSBsaW5rcyBhcmU8YnI+cGFzdGVk IGludG8gdGhlIGFkZHJlc3Mgc3RyaW5nIG9mIG15IGJyb3dzZXIgY29uY2F0ZW5hdGVkLiBBbmQg dGhpcyBpcyB3aGF0PGJyPkkgc2VlIGluIHRoZSBzb3VyY2U6PGJyPjxicj48YSBocmVmPSJodHRw czovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9jb21wYXJlL2VsamFzaG0vZ2gtNDc1 Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1wcmVwYXJlLW5vdC11cGRhdGVkIiB0YXJnZXQ9Il9ibGFu ayI+aHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvY29tcGFyZS9lbGphc2ht L2doLTQ3NTYtYm94LXN0YXQtZXhlY3V0ZS1hbmQtcHJlcGFyZS1ub3QtdXBkYXRlZDwvYT4gJmx0 OzxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lzc3Vlcy80 NzU2QnJhbmNoOmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2NvbXBhcmUv ZWxqYXNobS9naC00NzU2LWJveC1zdGF0LWV4ZWN1dGUtYW5kLXByZXBhcmUtbm90LXVwZGF0ZWQi IHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9p c3N1ZXMvNDc1NkJyYW5jaDpodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9j b21wYXJlL2VsamFzaG0vZ2gtNDc1Ni1ib3gtc3RhdC1leGVjdXRlLWFuZC1wcmVwYXJlLW5vdC11 cGRhdGVkPC9hPiZndDs8YnI+PGJyPlNvIGV2ZXJ5dGhpbmcgaXMgYSBvbmUgaHVnZSBsaW5lLiBU aGlzIGRvZXMgbm90IGhhcHBlbiB3aXRoIG90aGVyIGVtYWlsczxicj5hbmQgbGlua3MuPGJyPjxi cj5TZWUgMiBjb21tZW50cyBiZWxvdy48YnI+PGJyPiZndDsgJm5ic3A7c3JjL2JveC9leGVjdXRl LmMgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7NCArKysrPGJyPiZndDsgJm5i c3A7dGVzdC9ib3gtdGFwL2NmZy50ZXN0Lmx1YSB8IDE2ICsrKysrKysrKysrKystLS08YnI+Jmd0 OyAmbmJzcDsyIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p PGJyPiZndDsgZGlmZiAtLWdpdCBhL3NyYy9ib3gvZXhlY3V0ZS5jIGIvc3JjL2JveC9leGVjdXRl LmM8YnI+Jmd0OyBpbmRleCBkYzhkY2U4MWMuLmU3NzUwNTViNCAxMDA2NDQ8YnI+Jmd0OyAtLS0g YS9zcmMvYm94L2V4ZWN1dGUuYzxicj4mZ3Q7ICsrKyBiL3NyYy9ib3gvZXhlY3V0ZS5jPGJyPiZn dDsgQEAgLTczMiw2ICs3MzUsNyBAQCBzcWxfcHJlcGFyZV9hbmRfZXhlY3V0ZShjb25zdCBjaGFy ICpzcWwsIGludCBsZW4sIGNvbnN0IHN0cnVjdCBzcWxfYmluZCAqYmluZCw8YnI+Jmd0OyAmbmJz cDsmbmJzcDsmbmJzcDsgJm5ic3A7aWYgKHNxbF9zdG10X2NvbXBpbGUoc3FsLCBsZW4sIE5VTEws ICZhbXA7c3RtdCwgTlVMTCkgIT0gMCk8YnI+Jmd0OyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7 Jm5ic3A7Jm5ic3A7ICZuYnNwO3JldHVybiAtMTs8YnI+Jmd0OyAmbmJzcDsmbmJzcDsmbmJzcDsg Jm5ic3A7YXNzZXJ0KHN0bXQgIT0gTlVMTCk7PGJyPiZndDsgKyZuYnNwOyZuYnNwOyAmbmJzcDty bWVhbl9jb2xsZWN0KHJtZWFuX2JveCwgSVBST1RPX1BSRVBBUkUsIDEpOzxicj48YnI+MS4gTmlr aXRhIGlzIHJpZ2h0LCB0aGlzIGlzIGNhbGxlZCB3aGVuIElQUk9UT19FWEVDVVRFIGFycml2ZXMu IFlvdSBjYW48YnI+c2VlIHRoYXQgaW4gaXByb3RvLmNjLiBUaGlzIGlzIGEgc2VwYXJhdGUgcXVl c3Rpb24sIHdoeSBkbyB3ZSBjb2xsZWN0PGJyPklQUk9UT18qIHN0YXRpc3RpY3Mgb3V0IG9mIGlw cm90by4gRm9yIG5vdyBsZXRzIGp1c3QgdXNlIElQUk9UT19FWEVDVVRFPGJyPmhlcmUuPGJyPjxi cj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDtlbnVtIHNxbF9zZXJpYWxpemF0aW9uX2Zv cm1hdCBmb3JtYXQgPSBzcWxfY29sdW1uX2NvdW50KHN0bXQpICZndDsgMCA/PGJyPiZndDsgJm5i c3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5i c3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsgJm5ic3A7IERRTF9FWEVD VVRFIDogRE1MX0VYRUNVVEU7PGJyPiZndDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO3BvcnRf c3FsX2NyZWF0ZShwb3J0LCBzdG10LCBmb3JtYXQsIHRydWUpOzxicj4mZ3Q7IGRpZmYgLS1naXQg YS90ZXN0L2JveC10YXAvY2ZnLnRlc3QubHVhIGIvdGVzdC9ib3gtdGFwL2NmZy50ZXN0Lmx1YTxi cj4mZ3Q7IGluZGV4IGQ1Mjk0NDdiYi4uZDM2N2FhYjA3IDEwMDc1NTxicj4mZ3Q7IC0tLSBhL3Rl c3QvYm94LXRhcC9jZmcudGVzdC5sdWE8YnI+Jmd0OyArKysgYi90ZXN0L2JveC10YXAvY2ZnLnRl c3QubHVhPGJyPiZndDsgQEAgLTYsNyArNiw3IEBAIGxvY2FsIHNvY2tldCA9IHJlcXVpcmUoJ3Nv Y2tldCcpPGJyPiZndDsgJm5ic3A7bG9jYWwgZmlvID0gcmVxdWlyZSgnZmlvJyk8YnI+Jmd0OyAm bmJzcDtsb2NhbCB1dWlkID0gcmVxdWlyZSgndXVpZCcpPGJyPiZndDsgJm5ic3A7bG9jYWwgbXNn cGFjayA9IHJlcXVpcmUoJ21zZ3BhY2snKTxicj4mZ3Q7IC10ZXN0OnBsYW4oMTA0KTxicj4mZ3Q7 ICt0ZXN0OnBsYW4oMTA2KTxicj48YnI+Mi4gSGVyZSBOaWtpdGEgaXMgYWxzbyByaWdodC4gVGhp cyBmaWxlIGlzIGZvciBib3guY2ZnKCkgZnVuY3Rpb248YnI+dGVzdHMuIEZvciBpcHJvdG8gc3Rh dGlzdGljcywgaW5kZWVkLCBzcWwvaXByb3RvLnRlc3QubHVhIHdvdWxkPGJyPmZpdCB3ZWxsLjwv ZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT4mbmJzcDs8ZGl2PiZuYnNwOzwvZGl2 PjxkaXYgZGF0YS1zaWduYXR1cmUtd2lkZ2V0PSJjb250YWluZXIiPjxkaXYgZGF0YS1zaWduYXR1 cmUtd2lkZ2V0PSJjb250ZW50Ij48ZGl2Pi0tPGJyPk1hcmlhIEtoYXlkaWNoPC9kaXY+PC9kaXY+ PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--e5F3775a1f9c34E757C27E57f15C15e51582130253--