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 917556EC40; Mon, 16 Aug 2021 18:41:43 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 917556EC40 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1629128503; bh=4Syy0U+xexQianIjv7MzvtPPJdMZrUhZfpw3n2N2MXs=; 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=Xc4iJhgpw6Qx/pHowU/djHEj6K3GfWPon+kfVDT2HDjr50CRdArBaoC6yhwKyoFDF tkoWa3q2e8FuzueRsRqTa2wsPI5H1b5n+uRnbVKuNP4hlzc8QT8uNK2n1Ri3fhQu1G l2o4rJ2SaQI/lbg3LUl3dGw/B/Fl2GANlUCBhyCE= Received: from f338.i.mail.ru (f338.i.mail.ru [217.69.130.209]) (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 A4A546EC40 for ; Mon, 16 Aug 2021 18:41:42 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org A4A546EC40 Received: by f338.i.mail.ru with local (envelope-from ) id 1mFek8-0007b5-6O; Mon, 16 Aug 2021 18:41:40 +0300 Received: by e.mail.ru with HTTP; Mon, 16 Aug 2021 18:41:40 +0300 To: =?UTF-8?B?U2VyZ2UgUGV0cmVua28=?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 X-SenderField-ReMsg: 16291281721812517906 X-SenderField-Remind: 0 Date: Mon, 16 Aug 2021 18:41:40 +0300 X-Priority: 3 (Normal) Message-ID: <1629128500.838902794@f338.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--c15D21bEB57ccEc306daDe6502364E8c1629128500" In-Reply-To: <0aac4487-0928-e3ab-3ef4-8140e6cf3566@tarantool.org> References: <1629119031.480511653@f471.i.mail.ru> <0aac4487-0928-e3ab-3ef4-8140e6cf3566@tarantool.org> X-4EC0790: 10 X-7564579A: 78E4E2B564C1792B X-77F55803: 119C1F4DF6A9251C771EFB8797C310D110F53893027EB2B1C63C38B9F46FBE8B8FD872164937FA4C97B7994AA8840C50EDF8F7ED87D29CEC9783F9D5083C91ACAAFF41FD77EAF10F X-7FA49CB5: 70AAF3C13DB7016878DA827A17800CE7FE24E47D9D69AF52D82A6BABE6F325AC08BE7437D75B48FABCF491FFA38154B613377AFFFEAFD2697680F9384605B9039E448936ADEE6ED1C2099A533E45F2D0395957E7521B51C2CFCAF695D4D8E9FCEA1F7E6F0F101C6778DA827A17800CE7E8204D72912C702FEA1F7E6F0F101C6723150C8DA25C47586E58E00D9D99D84E1BDDB23E98D2D38BBCA57AF85F7723F2B3306DC5F94596AFE0E3C8429C560D01CC7F00164DA146DAFE8445B8C89999728AA50765F7900637F6B57BC7E64490618DEB871D839B7333395957E7521B51C2DFABB839C843B9C08941B15DA834481F8AA50765F7900637F3E38EE449E3E2AE389733CBF5DBD5E9B5C8C57E37DE458B9E9CE733340B9D5F3BBE47FD9DD3FB595F5C1EE8F4F765FC72CEEB2601E22B093A03B725D353964B0B7D0EA88DDEDAC722CA9DD8327EE4930A3850AC1BE2E735C8D5298E42E60C1FC4224003CC83647689D4C264860C145E X-B7AD71C0: AC4F5C86D027EB782CDD5689AFBDA7A213B5FB47DCBC3458834459D11680B505EE6F5337CDFC2E7C86EB5E6B7132AF1E X-C1DE0DAB: 0D63561A33F958A5A69840C967E5315BC0BC8998FE134C869B62D0BD02737C62BDC6A1CF3F042BAD6DF99611D93F60EFE37876E7723AB534DC48ACC2A39D04F89CDFB48F4795C241BDAD6C7F3747799A X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D345C110A855FC09999A44DAB48DC3D340D082DFF40F83351279B0B62B3A0FF8BC2682D993552BB6FF81D7E09C32AA3244C03F6D8B7ADA893A53CDE18E1AD49E99164EE5813BBCA3A9D927AC6DF5659F194 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS329fgu+/vnDhy6YkIksuMb4CSH0NPbadrA== X-Mailru-MI: 1000000400800 X-Mailru-Sender: 24334B9D57E797AC012CEC7657DD4967D676FBC8FD69E93F83B8C30A22072E03FDB454E155B7A9614BC9ACE2A7CE83F3EED9887F8798CCC7AE7931D2E6175A5E790E5FE25B55557E835FBBB6357370890F0815A61F0BE655D8DFC4EA1982AEEA6C18EFA0BB12DBB0 X-Mras: Ok X-Spam: undefined Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_v2_1/2=5D_lua=3A_introduc?= =?utf-8?q?e_table=2Eequals_method?= 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: =?utf-8?b?0JHQsNCx0LjQvSDQntC70LXQsyB2aWEgVGFyYW50b29sLXBhdGNoZXM=?= Reply-To: =?UTF-8?B?0JHQsNCx0LjQvSDQntC70LXQsw==?= Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" ----ALT--c15D21bEB57ccEc306daDe6502364E8c1629128500 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 Ck9rLiBUaGFua3MgZm9yIHlvdXIgY2hhbmdlcy4gRG9u4oCZdCBmb3JnZXQgdG8gY2hhbmdlbG9n IGVudHJ5IGFuZCBkb2Nib3QgcmVxdWVzdCBhbmQgTEdUTSB0aGVuLgoKwqAgCj7Qn9C+0L3QtdC0 0LXQu9GM0L3QuNC6LCAxNiDQsNCy0LPRg9GB0YLQsCAyMDIxLCAxODozNiArMDM6MDAg0L7RgiBT ZXJnZSBQZXRyZW5rbyA8c2VyZ2VwZXRyZW5rb0B0YXJhbnRvb2wub3JnPjoKPsKgCj4KPgo+MTYu MDguMjAyMSAxNjowMywg0JHQsNCx0LjQvSDQntC70LXQsyDQv9C40YjQtdGCOgo+PiBUaGFua3Mg Zm9yIHlvdXIgZml4ZXMuCj4+Cj4+INCf0L7QvdC10LTQtdC70YzQvdC40LosIDE2INCw0LLQs9GD 0YHRgtCwIDIwMjEsIDEwOjUzICswMzowMCDQvtGCIFNlcmdlIFBldHJlbmtvCj4+IDwgc2VyZ2Vw ZXRyZW5rb0B0YXJhbnRvb2wub3JnID46Cj4+Cj4+IFRoYW5rcyBmb3IgYSB0aG9yb3VnaCByZXZp ZXchCj4+Cj4+IEkndmUgZm9yY2UgcHVzaGVkIHRoZSBmb2xsb3dpbmcgZml4ZXM6Cj4+Cj4+ID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+Pgo+PiBkaWZmIC0t Z2l0IGEvc3JjL2x1YS90YWJsZS5sdWEgYi9zcmMvbHVhL3RhYmxlLmx1YQo+PiBpbmRleCAzZDVl NjllOTcuLmVkZDYwZDFiZSAxMDA2NDQKPj4gLS0tIGEvc3JjL2x1YS90YWJsZS5sdWEKPj4gKysr IGIvc3JjL2x1YS90YWJsZS5sdWEKPj4gQEAgLTY1LDggKzY1LDExIEBAIGxvY2FsIGZ1bmN0aW9u IHRhYmxlX2VxdWFscyhhLCBiKQo+PiDCoMKgwqDCoMKgIGlmIHR5cGUoYSkgfj0gJ3RhYmxlJyBv ciB0eXBlKGIpIH49ICd0YWJsZScgdGhlbgo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHR5 cGUoYSkgPT0gdHlwZShiKSBhbmQgYSA9PSBiCj4+IMKgwqDCoMKgwqAgZW5kCj4+IC3CoMKgwqAg bG9jYWwgbXQgPSBnZXRtZXRhdGFibGUoYSkKPj4gLcKgwqDCoCBpZiBtdCBhbmQgbXQuX19lcSB0 aGVuCj4+ICvCoMKgwqAgbG9jYWwgbXRhID0gZ2V0bWV0YXRhYmxlKGEpCj4+ICvCoMKgwqAgbG9j YWwgbXRiID0gZ2V0bWV0YXRhYmxlKGIpCj4+ICvCoMKgwqAgLS0gTGV0IEx1YSBkZWNpZGUgd2hh dCBzaG91bGQgaGFwcGVuIHdoZW4gYXQgbGVhc3Qgb25lIG9mIHRoZQo+PiB0YWJsZXMgaGFzIGEK Pj4gK8KgwqDCoCAtLSBtZXRhdGFibGUuCj4+ICvCoMKgwqAgaWYgbXRhIGFuZCBtdGEuX19lcSBv ciBtdGIgYW5kIG10Yi5fX2VxIHRoZW4KPj4KPj4gSeKAmW0gbm90IHN1cmUgdGhhdCBpdOKAmXMg Y29ycmVjdC4gSeKAmXZlIGFkZGVkIGEgcmVmZXJlbmNlIHRvIFNPCj4+ICggaHR0cHM6Ly9zdGFj a292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNjE5NDYxOTAvbHVhLWVxLW9uLXRhYmxlcy13aXRoLWRp ZmZlcmVudC1tZXRhdGFibGVzCj4+IDwgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlv bnMvNjE5NDYxOTAvbHVhLWVxLW9uLXRhYmxlcy13aXRoLWRpZmZlcmVudC1tZXRhdGFibGVzID4p Cj4+IGFuZCBpdCBzZWVtcyBjb25kaXRpb24gc2hvdWxkIGJlIGZvbGxvd2luZwo+PiBtdGEgYW5k IG10YS5fX2VxIGFuZCBtdGEgPT0gbXRiLiBPdGhlcndpc2UgdGFibGVzIGhhdmUgZGlmZmVyZW50 IF9fZXEKPj4gbWV0YW1hdGhvZHMgYW5kIHlvdSBzaG91bGQgY29tcGFyZSB0aGVpciBjb250ZW50 Lgo+PiBJ4oCZbSBub3Qgc3VyZSB0aGF0IG15IHByb3Bvc2FsIGlzIGNvbXBsZXRlbHkgY29ycmVj dCBhbmQgc3VnZ2VzdCB0byBhc2sKPj4gSWdvciBhYm91dCBpdC4KPgo+QWN0dWFsbHkgdGhlIHF1 ZXN0aW9uIHlvdSByZWZlciB0byBkZXNjcmliZXMgTHVhIDUuMywgd2hpbGUgTHVhSklUCj5zdXBw b3J0cyBMdWEgNS4xCj5UaGUgcnVsZXMgZm9yIEx1YSA1LjEgYXJlIGFzIGZvbGxvd3MgKHRha2Vu IGZyb20KPmh0dHBzOi8vd3d3Lmx1YS5vcmcvbWFudWFsLzUuMS9tYW51YWwuaHRtbCMyLjQgKToK Pgo+VXNlIHRoZSBfX2VxIG1ldGFtZXRob2Qgb25seSB3aGVuIGJvdGggb2JqZWN0cyBoYXZlIHRo ZSBzYW1lIG9uZS4KPgo+U28sIGluIG15IGNhc2UsIGlmIGF0IGxlYXN0IG9uZSBtZXRhbWV0aG9k IGlzIGRlZmluZWQsIHRyeSB0byB1c2UKPmNvbXBhcmlzb24gb3BlcmF0b3IuCj5JZiBib3RoIHRh YmxlcyBoYXZlIHRoZSBzYW1lIF9fZXEgbWV0YW1ldGhvZCwgTHVhIHdpbGwgY2FsbCBpdC4KPklm IHRoZSB0YWJsZXMgZG9uJ3Qgc2hhcmUgdGhlIHNhbWUgbWV0YW1ldGhvZCwgdGhleSB3aWxsIGJl IGNvbXBhcmVkIGxpa2UKPkx1YSBkb2VzIHVzdWFsbHk6IGJ5IHJlZmVyZW5jZS4gVGhlIHJlc3Vs dCB3aWxsIGJlIGZhbHNlIHRoZW4uCj4KPgo+SSd2ZSBhZGRlZCBvbmUgbW9yZSB0ZXN0IHRob3Vn aCwganVzdCBpbiBjYXNlOgo+Cj5kaWZmIC0tZ2l0IGEvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3Qu bHVhIGIvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhCj5pbmRleCBjN2EwNzVhYmEuLmFlNmZk ZmEyZCAxMDA3NTUKPi0tLSBhL3Rlc3QvYXBwLXRhcC90YWJsZS50ZXN0Lmx1YQo+KysrIGIvdGVz dC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhCj5AQCAtOCw3ICs4LDcgQEAgeWFtbC5jZmd7Cj7CoMKg wqDCoMKgIGVuY29kZV9pbnZhbGlkX2FzX25pbMKgID0gdHJ1ZSwKPsKgwqB9Cj7CoMKgbG9jYWwg dGVzdCA9IHJlcXVpcmUoJ3RhcCcpLnRlc3QoJ3RhYmxlJykKPi10ZXN0OnBsYW4oNDMpCj4rdGVz dDpwbGFuKDQ0KQo+Cj7CoMKgZG8gLS0gY2hlY2sgYmFzaWMgdGFibGUuY29weSAoZGVlcGNvcHkp Cj7CoMKgwqDCoMKgIGxvY2FsIGV4YW1wbGVfdGFibGUgPSB7Cj5AQCAtMjU4LDEyICsyNTgsMTUg QEAgZG8gLS0gY2hlY2sgdGFibGUuZXF1YWxzCj7CoMKgwqDCoMKgwqDCoMKgwqAgX19lcSA9IGZ1 bmN0aW9uKGEsIGIpIC0tIGx1YWNoZWNrOiBubyB1bnVzZWQgYXJncwo+wqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgcmV0dXJuIHRydWUKPsKgwqDCoMKgwqDCoMKgwqDCoCBlbmR9Cj4twqDCoMKg IGxvY2FsIHRibF9kID0gc2V0bWV0YXRhYmxlKHthPTE1fSwgbXQpCj4twqDCoMKgIGxvY2FsIHRi bF9lID0gc2V0bWV0YXRhYmxlKHtiPTIsIGM9M30sIG10KQo+K8KgwqDCoCBsb2NhbCB0YmxfZCA9 IHNldG1ldGF0YWJsZSh7YSA9IDE1fSwgbXQpCj4rwqDCoMKgIGxvY2FsIHRibF9lID0gc2V0bWV0 YXRhYmxlKHtiID0gMiwgYyA9IDN9LCBtdCkKPsKgwqDCoMKgwqAgdGVzdDpvayh0YWJsZS5lcXVh bHModGJsX2QsIHRibF9lKSwgInRhYmxlLmVxdWFscyByZXNwZWN0cyBfX2VxIikKPi3CoMKgwqAg dGVzdDppcyh0YWJsZS5lcXVhbHModGJsX2QsIHthPTE1fSksIGZhbHNlLAo+K8KgwqDCoCB0ZXN0 OmlzKHRhYmxlLmVxdWFscyh0YmxfZCwge2EgPSAxNX0pLCBmYWxzZSwKPsKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICJ0YWJsZS5lcXVhbHMgd2hlbiBtZXRhdGFibGVzIGRvbid0IG1hdGNoIikK Pi3CoMKgwqAgdGVzdDppcyh0YWJsZS5lcXVhbHMoe2E9MTV9LCB0YmxfZCksIGZhbHNlLAo+K8Kg wqDCoCB0ZXN0OmlzKHRhYmxlLmVxdWFscyh7YSA9IDE1fSwgdGJsX2QpLCBmYWxzZSwKPivCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICJ0YWJsZS5lcXVhbHMgd2hlbiBtZXRhdGFibGVzIGRvbid0IG1h dGNoIikKPivCoMKgwqAgbG9jYWwgdGJsX2YgPSBzZXRtZXRhdGFibGUoe2EgPSAxNX0sIHtfX2Vx ID0gZnVuY3Rpb24oKSByZXR1cm4gdHJ1ZQo+ZW5kfSkKPivCoMKgwqAgdGVzdDppcyh0YWJsZS5l cXVhbHModGJsX2QsIHRibF9mKSwgZmFsc2UsCj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAi dGFibGUuZXF1YWxzIHdoZW4gbWV0YXRhYmxlcyBkb24ndCBtYXRjaCIpCj7CoMKgZW5kCj4KPgo+ Cj4KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBhID09IGIKPj4gwqDCoMKgwqDCoCBlbmQK Pj4gwqDCoMKgwqDCoCBmb3IgaywgdiBpbiBwYWlycyhhKSBkbwo+PiBkaWZmIC0tZ2l0IGEvdGVz dC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhIGIvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhCj4+ IGluZGV4IGVjODE1OTNmMy4uMDI5YjkyM2ZiIDEwMDc1NQo+PiAtLS0gYS90ZXN0L2FwcC10YXAv dGFibGUudGVzdC5sdWEKPj4gKysrIGIvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhCj4+IEBA IC04LDcgKzgsNyBAQCB5YW1sLmNmZ3sKPj4gwqDCoMKgwqDCoCBlbmNvZGVfaW52YWxpZF9hc19u aWzCoCA9IHRydWUsCj4+IMKgwqB9Cj4+IMKgwqBsb2NhbCB0ZXN0ID0gcmVxdWlyZSgndGFwJyku dGVzdCgndGFibGUnKQo+PiAtdGVzdDpwbGFuKDQwKQo+PiArdGVzdDpwbGFuKDQzKQo+Pgo+PiDC oMKgZG8gLS0gY2hlY2sgYmFzaWMgdGFibGUuY29weSAoZGVlcGNvcHkpCj4+IMKgwqDCoMKgwqAg bG9jYWwgZXhhbXBsZV90YWJsZSA9IHsKPj4gQEAgLTI1NCw2ICsyNTQsMTQgQEAgZG8gLS0gY2hl Y2sgdGFibGUuZXF1YWxzCj4+IMKgwqDCoMKgwqAgdGVzdDpvayh0YWJsZS5lcXVhbHModGJsX2Es IHRibF9jKSwKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInRhYmxlLmVxdWFscyBmb3Ig c2hhbGxvdyBjb3BpZWQgdGFibGVzIGFmdGVyCj4+IG1vZGlmaWNhdGlvbiIpCj4+IMKgwqDCoMKg wqAgdGVzdDppcyh0YWJsZS5lcXVhbHModGJsX2EsIHRibF9iKSwgZmFsc2UsICJ0YWJsZS5lcXVh bHMgZG9lcyBhCj4+IGRlZXAgY2hlY2siKQo+PiArwqDCoMKgIGxvY2FsIG10ID0ge19fZXEgPSBm dW5jdGlvbihhLCBiKSByZXR1cm4gdHJ1ZSBlbmR9Cj4+ICvCoMKgwqAgbG9jYWwgdGJsX2QgPSBz ZXRtZXRhdGFibGUoe2E9MTV9LCBtdCkKPj4gK8KgwqDCoCBsb2NhbCB0YmxfZSA9IHNldG1ldGF0 YWJsZSh7Yj0yLCBjPTN9LCBtdCkKPj4gK8KgwqDCoCB0ZXN0Om9rKHRhYmxlLmVxdWFscyh0Ymxf ZCwgdGJsX2UpLCAidGFibGUuZXF1YWxzIHJlc3BlY3RzIF9fZXEiKQo+PiArwqDCoMKgIHRlc3Q6 aXModGFibGUuZXF1YWxzKHRibF9kLCB7YT0xNX0pLCBmYWxzZSwKPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgInRhYmxlLmVxdWFscyB3aGVuIG1ldGF0YWJsZXMgZG9uJ3QgbWF0Y2giKQo+PiAr wqDCoMKgIHRlc3Q6aXModGFibGUuZXF1YWxzKHthPTE1fSwgdGJsX2QpLCBmYWxzZSwKPj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqAgInRhYmxlLmVxdWFscyB3aGVuIG1ldGF0YWJsZXMgZG9uJ3Qg bWF0Y2giKQo+PiDCoMKgZW5kCj4+Cj4+IMKgwqBvcy5leGl0KHRlc3Q6Y2hlY2soKSA9PSB0cnVl IGFuZCAwIG9yIDEpCj4+Cj4+ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQo+Pgo+PiA+Cj4+ID4gT24gMTMuMDguMjAyMSAxMzoyMiwgU2VyZ2UgUGV0cmVua28g d3JvdGU6Cj4+ID4+Cj4+ID4+Cj4+ID4+IDEzLjA4LjIwMjEgMDg6MzAsIE9sZWcgQmFiaW4g0L/Q uNGI0LXRgjoKPj4gPj4+IFRoYW5rcyBmb3IgeW91ciBwYXRjaC4KPj4gPj4+Cj4+ID4+Pgo+PiA+ Pj4gSXQgc2VlbXMgaXQgd29ya3MgaW4gcXVpdGUgc3RyYW5nZSB3YXk6Cj4+ID4+Pgo+PiA+Pj4g YGBgCj4+ID4+Pgo+PiA+Pj4gdGFyYW50b29sPiB0YWJsZS5lcXVhbHMoe2EgPSBib3guTlVMTH0s IHt9KQo+PiA+Pj4gLS0tCj4+ID4+PiAtIHRydWUKPj4gPj4+IC4uLgo+PiA+Pj4KPj4gPj4+IHRh cmFudG9vbD4gdGFibGUuZXF1YWxzKHt9LCB7YSA9IGJveC5OVUxMfSkKPj4gPj4+IC0tLQo+PiA+ Pj4gLSBmYWxzZQo+PiA+Pj4gLi4uCj4+ID4+Pgo+PiA+Pj4gYGBgCj4+ID4+Pgo+PiA+Pj4KPj4g Pj4+IEkgY2FuIGNoYW5nZSBhcmd1bWVudHMgb3JkZXIgdG8gZ2V0IGRpZmZlcmVudCByZXN1bHQu IEV4cGVjdGVkCj4+IGZhbHNlCj4+ID4+PiBpbiBib3RoIGNhc2VzLgo+PiA+Pj4KPj4gPj4+IEZv ciB0YXAgaXQgd2FzIGNvbnNpZGVyZWQgYXMgYnVnZ3kgYmVoYXZpb3VyCj4+ID4+PiAgaHR0cHM6 Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzQxMjUKPj4gPCBodHRwczov L2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDEyNSA+Cj4+ID4+Pgo+PiA+ Pj4KPj4gPj4KPj4gPj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4+ID4+ Cj4+ID4+IEdvb2QgY2F0Y2ghIFRoYW5rcyEKPj4gPj4KPj4gPj4gQ2hlY2sgb3V0IHRoZSBkaWZm Ogo+PiA+Pgo+PiA+PiBkaWZmIC0tZ2l0IGEvc3JjL2x1YS90YWJsZS5sdWEgYi9zcmMvbHVhL3Rh YmxlLmx1YQo+PiA+PiBpbmRleCA1ZjM1YTMwZjYuLjNkNWU2OWU5NyAxMDA2NDQKPj4gPj4gLS0t IGEvc3JjL2x1YS90YWJsZS5sdWEKPj4gPj4gKysrIGIvc3JjL2x1YS90YWJsZS5sdWEKPj4gPj4g QEAgLTYzLDcgKzYzLDcgQEAgZW5kCj4+ID4+IMKgLS0gQHJldHVybiB0cnVlIHdoZW4gdGhlIHR3 byB0YWJsZXMgYXJlIGVxdWFsIChmYWxzZSBvdGhlcndpc2UpLgo+PiA+PiDCoGxvY2FsIGZ1bmN0 aW9uIHRhYmxlX2VxdWFscyhhLCBiKQo+PiA+PiDCoMKgwqDCoCBpZiB0eXBlKGEpIH49ICd0YWJs ZScgb3IgdHlwZShiKSB+PSAndGFibGUnIHRoZW4KPj4gPj4gLcKgwqDCoMKgwqDCoMKgIHJldHVy biBhID09IGIKPj4gPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiB0eXBlKGEpID09IHR5cGUoYikg YW5kIGEgPT0gYgo+PiA+PiDCoMKgwqDCoCBlbmQKPj4gPj4gwqDCoMKgwqAgbG9jYWwgbXQgPSBn ZXRtZXRhdGFibGUoYSkKPj4gPj4gwqDCoMKgwqAgaWYgbXQgYW5kIG10Ll9fZXEgdGhlbgo+PiA+ PiBkaWZmIC0tZ2l0IGEvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhCj4+IGIvdGVzdC9hcHAt dGFwL3RhYmxlLnRlc3QubHVhCj4+ID4+IGluZGV4IGEzYzlhYTEyMy4uZWM4MTU5M2YzIDEwMDc1 NQo+PiA+PiAtLS0gYS90ZXN0L2FwcC10YXAvdGFibGUudGVzdC5sdWEKPj4gPj4gKysrIGIvdGVz dC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhCj4+ID4+IEBAIC04LDcgKzgsNyBAQCB5YW1sLmNmZ3sK Pj4gPj4gwqDCoMKgwqAgZW5jb2RlX2ludmFsaWRfYXNfbmlswqAgPSB0cnVlLAo+PiA+PiDCoH0K Pj4gPj4gwqBsb2NhbCB0ZXN0ID0gcmVxdWlyZSgndGFwJykudGVzdCgndGFibGUnKQo+PiA+PiAt dGVzdDpwbGFuKDM4KQo+PiA+PiArdGVzdDpwbGFuKDQwKQo+PiA+Pgo+PiA+PiDCoGRvIC0tIGNo ZWNrIGJhc2ljIHRhYmxlLmNvcHkgKGRlZXBjb3B5KQo+PiA+PiDCoMKgwqDCoCBsb2NhbCBleGFt cGxlX3RhYmxlID0gewo+PiA+PiBAQCAtMjI3LDYgKzIyNywxMCBAQCBkbyAtLSBjaGVjayB0YWJs ZS5lcXVhbHMKPj4gPj4gwqDCoMKgwqAgdGVzdDpvayh0YWJsZS5lcXVhbHMoe30sIHt9KSwgInRh YmxlLmVxdWFscyBmb3IgZW1wdHkgdGFibGVzIikKPj4gPj4gwqDCoMKgwqAgdGVzdDppcyh0YWJs ZS5lcXVhbHMoe30sIHsxfSksIGZhbHNlLCAidGFibGUuZXF1YWxzIHdpdGggb25lCj4+ID4+IGVt cHR5IHRhYmxlIikKPj4gPj4gwqDCoMKgwqAgdGVzdDppcyh0YWJsZS5lcXVhbHMoezF9LCB7fSks IGZhbHNlLCAidGFibGUuZXF1YWxzIHdpdGggb25lCj4+ID4+IGVtcHR5IHRhYmxlIikKPj4gPj4g K8KgwqDCoCB0ZXN0OmlzKHRhYmxlLmVxdWFscyh7a2V5ID0gYm94Lk5VTEx9LCB7a2V5ID0gbmls fSksIGZhbHNlLAo+PiA+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAidGFibGUuZXF1YWxzIGZv ciBib3guTlVMTCBhbmQgbmlsIikKPj4gPj4gK8KgwqDCoCB0ZXN0OmlzKHRhYmxlLmVxdWFscyh7 a2V5ID0gbmlsfSwge2tleSA9IGJveC5OVUxMfSksIGZhbHNlLAo+PiA+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAidGFibGUuZXF1YWxzIGZvciBib3guTlVMTCBhbmQgbmlsIikKPj4gPj4gwqDC oMKgwqAgbG9jYWwgdGJsX2EgPSB7Cj4+ID4+IMKgwqDCoMKgwqDCoMKgwqAgZmlyc3QgPSB7Cj4+ ID4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAxLAo+PiA+Pgo+PiA+PiA9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KPj4gPj4+IE9uIDEzLjA4LjIwMjEgMDI6MzAsIFNlcmdl IFBldHJlbmtvIHZpYSBUYXJhbnRvb2wtcGF0Y2hlcyB3cm90ZToKPj4gPj4+PiBJbnRyb2R1Y2Ug dGFibGUuZXF1YWxzIGZvciBjb21wYXJpbmcgdGFibGVzLgo+PiA+Pj4+IFRoZSBtZXRob2QgcmVz cGVjdHMgX19lcSBtZXRhbWV0aG9kLCBpZiBwcm92aWRlZC4KPj4gPj4+Pgo+PiA+Pj4+IE5lZWRl ZC1mb3IgIzU4OTQKPj4gPj4+PiAtLS0KPj4gPj4+Pgo+PiA+Pgo+Pgo+PiAtLQo+PiBTZXJnZSBQ ZXRyZW5rbwo+Pgo+PiAtLQo+PiBPbGVnIEJhYmluCj4KPi0tCj5TZXJnZSBQZXRyZW5rbyAKwqAK wqAKLS0KT2xlZyBCYWJpbgrCoA== ----ALT--c15D21bEB57ccEc306daDe6502364E8c1629128500 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+T2suIFRoYW5rcyBmb3IgeW91ciBjaGFuZ2VzLiBEb27igJl0IGZv cmdldCB0byBjaGFuZ2Vsb2cgZW50cnkgYW5kIGRvY2JvdCByZXF1ZXN0IGFuZCBMR1RNIHRoZW4u PGJyPjxicj4mbmJzcDs8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICMw ODU3QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij7Qn9C+0L3QtdC00LXQu9GM 0L3QuNC6LCAxNiDQsNCy0LPRg9GB0YLQsCAyMDIxLCAxODozNiArMDM6MDAg0L7RgiBTZXJnZSBQ ZXRyZW5rbyAmbHQ7c2VyZ2VwZXRyZW5rb0B0YXJhbnRvb2wub3JnJmd0Ozo8YnI+Jm5ic3A7PGRp diBpZD0iIj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ciPjxkaXY+PGRpdiBp ZD0ic3R5bGVfMTYyOTEyODE3MjE4MTI1MTc5MDZfQk9EWSI+PGJyPjxicj4xNi4wOC4yMDIxIDE2 OjAzLCDQkdCw0LHQuNC9INCe0LvQtdCzINC/0LjRiNC10YI6PGJyPiZndDsgVGhhbmtzIGZvciB5 b3VyIGZpeGVzLjxicj4mZ3Q7PGJyPiZndDsg0J/QvtC90LXQtNC10LvRjNC90LjQuiwgMTYg0LDQ stCz0YPRgdGC0LAgMjAyMSwgMTA6NTMgKzAzOjAwINC+0YIgU2VyZ2UgUGV0cmVua288YnI+Jmd0 OyAmbHQ7PGEgaHJlZj0iL2NvbXBvc2U/VG89c2VyZ2VwZXRyZW5rb0B0YXJhbnRvb2wub3JnIj5z ZXJnZXBldHJlbmtvQHRhcmFudG9vbC5vcmc8L2E+Jmd0Ozo8YnI+Jmd0Ozxicj4mZ3Q7IFRoYW5r cyBmb3IgYSB0aG9yb3VnaCByZXZpZXchPGJyPiZndDs8YnI+Jmd0OyBJJ3ZlIGZvcmNlIHB1c2hl ZCB0aGUgZm9sbG93aW5nIGZpeGVzOjxicj4mZ3Q7PGJyPiZndDsgPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PGJyPiZndDs8YnI+Jmd0OyBkaWZmIC0tZ2l0IGEv c3JjL2x1YS90YWJsZS5sdWEgYi9zcmMvbHVhL3RhYmxlLmx1YTxicj4mZ3Q7IGluZGV4IDNkNWU2 OWU5Ny4uZWRkNjBkMWJlIDEwMDY0NDxicj4mZ3Q7IC0tLSBhL3NyYy9sdWEvdGFibGUubHVhPGJy PiZndDsgKysrIGIvc3JjL2x1YS90YWJsZS5sdWE8YnI+Jmd0OyBAQCAtNjUsOCArNjUsMTEgQEAg bG9jYWwgZnVuY3Rpb24gdGFibGVfZXF1YWxzKGEsIGIpPGJyPiZndDsgJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IGlmIHR5cGUoYSkgfj0gJ3RhYmxlJyBvciB0eXBlKGIpIH49ICd0YWJs ZScgdGhlbjxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyByZXR1cm4gdHlwZShhKSA9PSB0eXBlKGIpIGFuZCBhID09IGI8YnI+Jmd0 OyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZW5kPGJyPiZndDsgLSZuYnNwOyZuYnNw OyZuYnNwOyBsb2NhbCBtdCA9IGdldG1ldGF0YWJsZShhKTxicj4mZ3Q7IC0mbmJzcDsmbmJzcDsm bmJzcDsgaWYgbXQgYW5kIG10Ll9fZXEgdGhlbjxicj4mZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsg bG9jYWwgbXRhID0gZ2V0bWV0YXRhYmxlKGEpPGJyPiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyBs b2NhbCBtdGIgPSBnZXRtZXRhdGFibGUoYik8YnI+Jmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7IC0t IExldCBMdWEgZGVjaWRlIHdoYXQgc2hvdWxkIGhhcHBlbiB3aGVuIGF0IGxlYXN0IG9uZSBvZiB0 aGU8YnI+Jmd0OyB0YWJsZXMgaGFzIGE8YnI+Jmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7IC0tIG1l dGF0YWJsZS48YnI+Jmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIG10YSBhbmQgbXRhLl9fZXEg b3IgbXRiIGFuZCBtdGIuX19lcSB0aGVuPGJyPiZndDs8YnI+Jmd0OyBJ4oCZbSBub3Qgc3VyZSB0 aGF0IGl04oCZcyBjb3JyZWN0LiBJ4oCZdmUgYWRkZWQgYSByZWZlcmVuY2UgdG8gU088YnI+Jmd0 OyAoPGEgaHJlZj0iaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNjE5NDYxOTAv bHVhLWVxLW9uLXRhYmxlcy13aXRoLWRpZmZlcmVudC1tZXRhdGFibGVzIiB0YXJnZXQ9Il9ibGFu ayI+aHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNjE5NDYxOTAvbHVhLWVxLW9u LXRhYmxlcy13aXRoLWRpZmZlcmVudC1tZXRhdGFibGVzPC9hPjxicj4mZ3Q7ICZsdDs8YSBocmVm PSJodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy82MTk0NjE5MC9sdWEtZXEtb24t dGFibGVzLXdpdGgtZGlmZmVyZW50LW1ldGF0YWJsZXMiIHRhcmdldD0iX2JsYW5rIj5odHRwczov L3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy82MTk0NjE5MC9sdWEtZXEtb24tdGFibGVzLXdp dGgtZGlmZmVyZW50LW1ldGF0YWJsZXM8L2E+Jmd0Oyk8YnI+Jmd0OyBhbmQgaXQgc2VlbXMgY29u ZGl0aW9uIHNob3VsZCBiZSBmb2xsb3dpbmc8YnI+Jmd0OyBtdGEgYW5kIG10YS5fX2VxIGFuZCBt dGEgPT0gbXRiLiBPdGhlcndpc2UgdGFibGVzIGhhdmUgZGlmZmVyZW50IF9fZXE8YnI+Jmd0OyBt ZXRhbWF0aG9kcyBhbmQgeW91IHNob3VsZCBjb21wYXJlIHRoZWlyIGNvbnRlbnQuPGJyPiZndDsg SeKAmW0gbm90IHN1cmUgdGhhdCBteSBwcm9wb3NhbCBpcyBjb21wbGV0ZWx5IGNvcnJlY3QgYW5k IHN1Z2dlc3QgdG8gYXNrPGJyPiZndDsgSWdvciBhYm91dCBpdC48YnI+PGJyPkFjdHVhbGx5IHRo ZSBxdWVzdGlvbiB5b3UgcmVmZXIgdG8gZGVzY3JpYmVzIEx1YSA1LjMsIHdoaWxlIEx1YUpJVDxi cj5zdXBwb3J0cyBMdWEgNS4xPGJyPlRoZSBydWxlcyBmb3IgTHVhIDUuMSBhcmUgYXMgZm9sbG93 cyAodGFrZW4gZnJvbTxicj48YSBocmVmPSJodHRwczovL3d3dy5sdWEub3JnL21hbnVhbC81LjEv bWFudWFsLmh0bWwjMi40IiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly93d3cubHVhLm9yZy9tYW51 YWwvNS4xL21hbnVhbC5odG1sIzIuNDwvYT4pOjxicj48YnI+VXNlIHRoZSBfX2VxIG1ldGFtZXRo b2Qgb25seSB3aGVuIGJvdGggb2JqZWN0cyBoYXZlIHRoZSBzYW1lIG9uZS48YnI+PGJyPlNvLCBp biBteSBjYXNlLCBpZiBhdCBsZWFzdCBvbmUgbWV0YW1ldGhvZCBpcyBkZWZpbmVkLCB0cnkgdG8g dXNlPGJyPmNvbXBhcmlzb24gb3BlcmF0b3IuPGJyPklmIGJvdGggdGFibGVzIGhhdmUgdGhlIHNh bWUgX19lcSBtZXRhbWV0aG9kLCBMdWEgd2lsbCBjYWxsIGl0Ljxicj5JZiB0aGUgdGFibGVzIGRv bid0IHNoYXJlIHRoZSBzYW1lIG1ldGFtZXRob2QsIHRoZXkgd2lsbCBiZSBjb21wYXJlZCBsaWtl PGJyPkx1YSBkb2VzIHVzdWFsbHk6IGJ5IHJlZmVyZW5jZS4gVGhlIHJlc3VsdCB3aWxsIGJlIGZh bHNlIHRoZW4uPGJyPjxicj48YnI+SSd2ZSBhZGRlZCBvbmUgbW9yZSB0ZXN0IHRob3VnaCwganVz dCBpbiBjYXNlOjxicj48YnI+ZGlmZiAtLWdpdCBhL3Rlc3QvYXBwLXRhcC90YWJsZS50ZXN0Lmx1 YSBiL3Rlc3QvYXBwLXRhcC90YWJsZS50ZXN0Lmx1YTxicj5pbmRleCBjN2EwNzVhYmEuLmFlNmZk ZmEyZCAxMDA3NTU8YnI+LS0tIGEvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhPGJyPisrKyBi L3Rlc3QvYXBwLXRhcC90YWJsZS50ZXN0Lmx1YTxicj5AQCAtOCw3ICs4LDcgQEAgeWFtbC5jZmd7 PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBlbmNvZGVfaW52YWxpZF9hc19uaWwm bmJzcDsgPSB0cnVlLDxicj4mbmJzcDsmbmJzcDt9PGJyPiZuYnNwOyZuYnNwO2xvY2FsIHRlc3Qg PSByZXF1aXJlKCd0YXAnKS50ZXN0KCd0YWJsZScpPGJyPi10ZXN0OnBsYW4oNDMpPGJyPit0ZXN0 OnBsYW4oNDQpPGJyPjxicj4mbmJzcDsmbmJzcDtkbyAtLSBjaGVjayBiYXNpYyB0YWJsZS5jb3B5 IChkZWVwY29weSk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxvY2FsIGV4YW1w bGVfdGFibGUgPSB7PGJyPkBAIC0yNTgsMTIgKzI1OCwxNSBAQCBkbyAtLSBjaGVjayB0YWJsZS5l cXVhbHM8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IF9fZXEgPSBmdW5jdGlvbihhLCBiKSAtLSBsdWFjaGVjazogbm8gdW51c2VkIGFyZ3M8 YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiB0cnVlPGJyPiZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBlbmR9PGJyPi0mbmJzcDsmbmJz cDsmbmJzcDsgbG9jYWwgdGJsX2QgPSBzZXRtZXRhdGFibGUoe2E9MTV9LCBtdCk8YnI+LSZuYnNw OyZuYnNwOyZuYnNwOyBsb2NhbCB0YmxfZSA9IHNldG1ldGF0YWJsZSh7Yj0yLCBjPTN9LCBtdCk8 YnI+KyZuYnNwOyZuYnNwOyZuYnNwOyBsb2NhbCB0YmxfZCA9IHNldG1ldGF0YWJsZSh7YSA9IDE1 fSwgbXQpPGJyPismbmJzcDsmbmJzcDsmbmJzcDsgbG9jYWwgdGJsX2UgPSBzZXRtZXRhdGFibGUo e2IgPSAyLCBjID0gM30sIG10KTxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdGVz dDpvayh0YWJsZS5lcXVhbHModGJsX2QsIHRibF9lKSwgInRhYmxlLmVxdWFscyByZXNwZWN0cyBf X2VxIik8YnI+LSZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0OmlzKHRhYmxlLmVxdWFscyh0YmxfZCwg e2E9MTV9KSwgZmFsc2UsPGJyPismbmJzcDsmbmJzcDsmbmJzcDsgdGVzdDppcyh0YWJsZS5lcXVh bHModGJsX2QsIHthID0gMTV9KSwgZmFsc2UsPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAidGFi bGUuZXF1YWxzIHdoZW4gbWV0YXRhYmxlcyBkb24ndCBtYXRjaCIpPGJyPi0mbmJzcDsmbmJzcDsm bmJzcDsgdGVzdDppcyh0YWJsZS5lcXVhbHMoe2E9MTV9LCB0YmxfZCksIGZhbHNlLDxicj4rJm5i c3A7Jm5ic3A7Jm5ic3A7IHRlc3Q6aXModGFibGUuZXF1YWxzKHthID0gMTV9LCB0YmxfZCksIGZh bHNlLDxicj4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7ICJ0YWJsZS5lcXVhbHMgd2hlbiBtZXRhdGFibGVzIGRvbid0IG1h dGNoIik8YnI+KyZuYnNwOyZuYnNwOyZuYnNwOyBsb2NhbCB0YmxfZiA9IHNldG1ldGF0YWJsZSh7 YSA9IDE1fSwge19fZXEgPSBmdW5jdGlvbigpIHJldHVybiB0cnVlPGJyPmVuZH0pPGJyPismbmJz cDsmbmJzcDsmbmJzcDsgdGVzdDppcyh0YWJsZS5lcXVhbHModGJsX2QsIHRibF9mKSwgZmFsc2Us PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAidGFibGUuZXF1YWxzIHdoZW4gbWV0YXRhYmxlcyBk b24ndCBtYXRjaCIpPGJyPiZuYnNwOyZuYnNwO2VuZDxicj48YnI+PGJyPjxicj48YnI+Jmd0OyAm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0 dXJuIGEgPT0gYjxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBlbmQ8YnI+ Jmd0OyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZm9yIGssIHYgaW4gcGFpcnMoYSkg ZG88YnI+Jmd0OyBkaWZmIC0tZ2l0IGEvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhIGIvdGVz dC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhPGJyPiZndDsgaW5kZXggZWM4MTU5M2YzLi4wMjliOTIz ZmIgMTAwNzU1PGJyPiZndDsgLS0tIGEvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhPGJyPiZn dDsgKysrIGIvdGVzdC9hcHAtdGFwL3RhYmxlLnRlc3QubHVhPGJyPiZndDsgQEAgLTgsNyArOCw3 IEBAIHlhbWwuY2Znezxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBlbmNv ZGVfaW52YWxpZF9hc19uaWwmbmJzcDsgPSB0cnVlLDxicj4mZ3Q7ICZuYnNwOyZuYnNwO308YnI+ Jmd0OyAmbmJzcDsmbmJzcDtsb2NhbCB0ZXN0ID0gcmVxdWlyZSgndGFwJykudGVzdCgndGFibGUn KTxicj4mZ3Q7IC10ZXN0OnBsYW4oNDApPGJyPiZndDsgK3Rlc3Q6cGxhbig0Myk8YnI+Jmd0Ozxi cj4mZ3Q7ICZuYnNwOyZuYnNwO2RvIC0tIGNoZWNrIGJhc2ljIHRhYmxlLmNvcHkgKGRlZXBjb3B5 KTxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsb2NhbCBleGFtcGxlX3Rh YmxlID0gezxicj4mZ3Q7IEBAIC0yNTQsNiArMjU0LDE0IEBAIGRvIC0tIGNoZWNrIHRhYmxlLmVx dWFsczxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0Om9rKHRhYmxl LmVxdWFscyh0YmxfYSwgdGJsX2MpLDxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAidGFi bGUuZXF1YWxzIGZvciBzaGFsbG93IGNvcGllZCB0YWJsZXMgYWZ0ZXI8YnI+Jmd0OyBtb2RpZmlj YXRpb24iKTxicj4mZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0OmlzKHRh YmxlLmVxdWFscyh0YmxfYSwgdGJsX2IpLCBmYWxzZSwgInRhYmxlLmVxdWFscyBkb2VzIGE8YnI+ Jmd0OyBkZWVwIGNoZWNrIik8YnI+Jmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7IGxvY2FsIG10ID0g e19fZXEgPSBmdW5jdGlvbihhLCBiKSByZXR1cm4gdHJ1ZSBlbmR9PGJyPiZndDsgKyZuYnNwOyZu YnNwOyZuYnNwOyBsb2NhbCB0YmxfZCA9IHNldG1ldGF0YWJsZSh7YT0xNX0sIG10KTxicj4mZ3Q7 ICsmbmJzcDsmbmJzcDsmbmJzcDsgbG9jYWwgdGJsX2UgPSBzZXRtZXRhdGFibGUoe2I9MiwgYz0z fSwgbXQpPGJyPiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0Om9rKHRhYmxlLmVxdWFscyh0 YmxfZCwgdGJsX2UpLCAidGFibGUuZXF1YWxzIHJlc3BlY3RzIF9fZXEiKTxicj4mZ3Q7ICsmbmJz cDsmbmJzcDsmbmJzcDsgdGVzdDppcyh0YWJsZS5lcXVhbHModGJsX2QsIHthPTE1fSksIGZhbHNl LDxicj4mZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgInRhYmxlLmVxdWFscyB3aGVuIG1ldGF0YWJsZXMgZG9uJ3Qg bWF0Y2giKTxicj4mZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsgdGVzdDppcyh0YWJsZS5lcXVhbHMo e2E9MTV9LCB0YmxfZCksIGZhbHNlLDxicj4mZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgInRhYmxlLmVxdWFscyB3 aGVuIG1ldGF0YWJsZXMgZG9uJ3QgbWF0Y2giKTxicj4mZ3Q7ICZuYnNwOyZuYnNwO2VuZDxicj4m Z3Q7PGJyPiZndDsgJm5ic3A7Jm5ic3A7b3MuZXhpdCh0ZXN0OmNoZWNrKCkgPT0gdHJ1ZSBhbmQg MCBvciAxKTxicj4mZ3Q7PGJyPiZndDsgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PGJyPiZndDs8YnI+Jmd0OyAmZ3Q7PGJyPiZndDsgJmd0OyBPbiAxMy4wOC4y MDIxIDEzOjIyLCBTZXJnZSBQZXRyZW5rbyB3cm90ZTo8YnI+Jmd0OyAmZ3Q7Jmd0Ozxicj4mZ3Q7 ICZndDsmZ3Q7PGJyPiZndDsgJmd0OyZndDsgMTMuMDguMjAyMSAwODozMCwgT2xlZyBCYWJpbiDQ v9C40YjQtdGCOjxicj4mZ3Q7ICZndDsmZ3Q7Jmd0OyBUaGFua3MgZm9yIHlvdXIgcGF0Y2guPGJy PiZndDsgJmd0OyZndDsmZ3Q7PGJyPiZndDsgJmd0OyZndDsmZ3Q7PGJyPiZndDsgJmd0OyZndDsm Z3Q7IEl0IHNlZW1zIGl0IHdvcmtzIGluIHF1aXRlIHN0cmFuZ2Ugd2F5Ojxicj4mZ3Q7ICZndDsm Z3Q7Jmd0Ozxicj4mZ3Q7ICZndDsmZ3Q7Jmd0OyBgYGA8YnI+Jmd0OyAmZ3Q7Jmd0OyZndDs8YnI+ Jmd0OyAmZ3Q7Jmd0OyZndDsgdGFyYW50b29sJmd0OyB0YWJsZS5lcXVhbHMoe2EgPSBib3guTlVM TH0sIHt9KTxicj4mZ3Q7ICZndDsmZ3Q7Jmd0OyAtLS08YnI+Jmd0OyAmZ3Q7Jmd0OyZndDsgLSB0 cnVlPGJyPiZndDsgJmd0OyZndDsmZ3Q7IC4uLjxicj4mZ3Q7ICZndDsmZ3Q7Jmd0Ozxicj4mZ3Q7 ICZndDsmZ3Q7Jmd0OyB0YXJhbnRvb2wmZ3Q7IHRhYmxlLmVxdWFscyh7fSwge2EgPSBib3guTlVM TH0pPGJyPiZndDsgJmd0OyZndDsmZ3Q7IC0tLTxicj4mZ3Q7ICZndDsmZ3Q7Jmd0OyAtIGZhbHNl PGJyPiZndDsgJmd0OyZndDsmZ3Q7IC4uLjxicj4mZ3Q7ICZndDsmZ3Q7Jmd0Ozxicj4mZ3Q7ICZn dDsmZ3Q7Jmd0OyBgYGA8YnI+Jmd0OyAmZ3Q7Jmd0OyZndDs8YnI+Jmd0OyAmZ3Q7Jmd0OyZndDs8 YnI+Jmd0OyAmZ3Q7Jmd0OyZndDsgSSBjYW4gY2hhbmdlIGFyZ3VtZW50cyBvcmRlciB0byBnZXQg ZGlmZmVyZW50IHJlc3VsdC4gRXhwZWN0ZWQ8YnI+Jmd0OyBmYWxzZTxicj4mZ3Q7ICZndDsmZ3Q7 Jmd0OyBpbiBib3RoIGNhc2VzLjxicj4mZ3Q7ICZndDsmZ3Q7Jmd0Ozxicj4mZ3Q7ICZndDsmZ3Q7 Jmd0OyBGb3IgdGFwIGl0IHdhcyBjb25zaWRlcmVkIGFzIGJ1Z2d5IGJlaGF2aW91cjxicj4mZ3Q7 ICZndDsmZ3Q7Jmd0OyA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFu dG9vbC9pc3N1ZXMvNDEyNSIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vZ2l0aHViLmNvbS90YXJh bnRvb2wvdGFyYW50b29sL2lzc3Vlcy80MTI1PC9hPjxicj4mZ3Q7ICZsdDs8YSBocmVmPSJodHRw czovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDEyNSIgdGFyZ2V0PSJf YmxhbmsiPmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lzc3Vlcy80MTI1 PC9hPiZndDs8YnI+Jmd0OyAmZ3Q7Jmd0OyZndDs8YnI+Jmd0OyAmZ3Q7Jmd0OyZndDs8YnI+Jmd0 OyAmZ3Q7Jmd0Ozxicj4mZ3Q7ICZndDsmZ3Q7ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PTxicj4mZ3Q7ICZndDsmZ3Q7PGJyPiZndDsgJmd0OyZndDsgR29vZCBjYXRjaCEgVGhh bmtzITxicj4mZ3Q7ICZndDsmZ3Q7PGJyPiZndDsgJmd0OyZndDsgQ2hlY2sgb3V0IHRoZSBkaWZm Ojxicj4mZ3Q7ICZndDsmZ3Q7PGJyPiZndDsgJmd0OyZndDsgZGlmZiAtLWdpdCBhL3NyYy9sdWEv dGFibGUubHVhIGIvc3JjL2x1YS90YWJsZS5sdWE8YnI+Jmd0OyAmZ3Q7Jmd0OyBpbmRleCA1ZjM1 YTMwZjYuLjNkNWU2OWU5NyAxMDA2NDQ8YnI+Jmd0OyAmZ3Q7Jmd0OyAtLS0gYS9zcmMvbHVhL3Rh YmxlLmx1YTxicj4mZ3Q7ICZndDsmZ3Q7ICsrKyBiL3NyYy9sdWEvdGFibGUubHVhPGJyPiZndDsg Jmd0OyZndDsgQEAgLTYzLDcgKzYzLDcgQEAgZW5kPGJyPiZndDsgJmd0OyZndDsgJm5ic3A7LS0g QHJldHVybiB0cnVlIHdoZW4gdGhlIHR3byB0YWJsZXMgYXJlIGVxdWFsIChmYWxzZSBvdGhlcndp c2UpLjxicj4mZ3Q7ICZndDsmZ3Q7ICZuYnNwO2xvY2FsIGZ1bmN0aW9uIHRhYmxlX2VxdWFscyhh LCBiKTxicj4mZ3Q7ICZndDsmZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiB0eXBlKGEp IH49ICd0YWJsZScgb3IgdHlwZShiKSB+PSAndGFibGUnIHRoZW48YnI+Jmd0OyAmZ3Q7Jmd0OyAt Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBhID09IGI8 YnI+Jmd0OyAmZ3Q7Jmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IHJldHVybiB0eXBlKGEpID09IHR5cGUoYikgYW5kIGEgPT0gYjxicj4mZ3Q7ICZndDsmZ3Q7 ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBlbmQ8YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgbG9jYWwgbXQgPSBnZXRtZXRhdGFibGUoYSk8YnI+Jmd0OyAmZ3Q7Jmd0 OyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgbXQgYW5kIG10Ll9fZXEgdGhlbjxicj4mZ3Q7 ICZndDsmZ3Q7IGRpZmYgLS1naXQgYS90ZXN0L2FwcC10YXAvdGFibGUudGVzdC5sdWE8YnI+Jmd0 OyBiL3Rlc3QvYXBwLXRhcC90YWJsZS50ZXN0Lmx1YTxicj4mZ3Q7ICZndDsmZ3Q7IGluZGV4IGEz YzlhYTEyMy4uZWM4MTU5M2YzIDEwMDc1NTxicj4mZ3Q7ICZndDsmZ3Q7IC0tLSBhL3Rlc3QvYXBw LXRhcC90YWJsZS50ZXN0Lmx1YTxicj4mZ3Q7ICZndDsmZ3Q7ICsrKyBiL3Rlc3QvYXBwLXRhcC90 YWJsZS50ZXN0Lmx1YTxicj4mZ3Q7ICZndDsmZ3Q7IEBAIC04LDcgKzgsNyBAQCB5YW1sLmNmZ3s8 YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZW5jb2RlX2ludmFsaWRf YXNfbmlsJm5ic3A7ID0gdHJ1ZSw8YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDt9PGJyPiZndDsgJmd0 OyZndDsgJm5ic3A7bG9jYWwgdGVzdCA9IHJlcXVpcmUoJ3RhcCcpLnRlc3QoJ3RhYmxlJyk8YnI+ Jmd0OyAmZ3Q7Jmd0OyAtdGVzdDpwbGFuKDM4KTxicj4mZ3Q7ICZndDsmZ3Q7ICt0ZXN0OnBsYW4o NDApPGJyPiZndDsgJmd0OyZndDs8YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDtkbyAtLSBjaGVjayBi YXNpYyB0YWJsZS5jb3B5IChkZWVwY29weSk8YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgbG9jYWwgZXhhbXBsZV90YWJsZSA9IHs8YnI+Jmd0OyAmZ3Q7Jmd0OyBAQCAt MjI3LDYgKzIyNywxMCBAQCBkbyAtLSBjaGVjayB0YWJsZS5lcXVhbHM8YnI+Jmd0OyAmZ3Q7Jmd0 OyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdGVzdDpvayh0YWJsZS5lcXVhbHMoe30sIHt9KSwg InRhYmxlLmVxdWFscyBmb3IgZW1wdHkgdGFibGVzIik8YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsgdGVzdDppcyh0YWJsZS5lcXVhbHMoe30sIHsxfSksIGZhbHNlLCAi dGFibGUuZXF1YWxzIHdpdGggb25lPGJyPiZndDsgJmd0OyZndDsgZW1wdHkgdGFibGUiKTxicj4m Z3Q7ICZndDsmZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0OmlzKHRhYmxlLmVxdWFs cyh7MX0sIHt9KSwgZmFsc2UsICJ0YWJsZS5lcXVhbHMgd2l0aCBvbmU8YnI+Jmd0OyAmZ3Q7Jmd0 OyBlbXB0eSB0YWJsZSIpPGJyPiZndDsgJmd0OyZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0 OmlzKHRhYmxlLmVxdWFscyh7a2V5ID0gYm94Lk5VTEx9LCB7a2V5ID0gbmlsfSksIGZhbHNlLDxi cj4mZ3Q7ICZndDsmZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgInRhYmxlLmVxdWFscyBmb3IgYm94Lk5VTEwgYW5k IG5pbCIpPGJyPiZndDsgJmd0OyZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyB0ZXN0OmlzKHRhYmxl LmVxdWFscyh7a2V5ID0gbmlsfSwge2tleSA9IGJveC5OVUxMfSksIGZhbHNlLDxicj4mZ3Q7ICZn dDsmZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsgInRhYmxlLmVxdWFscyBmb3IgYm94Lk5VTEwgYW5kIG5pbCIpPGJy PiZndDsgJmd0OyZndDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxvY2FsIHRibF9hID0gezxi cj4mZ3Q7ICZndDsmZ3Q7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBmaXJzdCA9IHs8YnI+Jmd0OyAmZ3Q7Jmd0OyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgMSw8YnI+ Jmd0OyAmZ3Q7Jmd0Ozxicj4mZ3Q7ICZndDsmZ3Q7ID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PTxicj4mZ3Q7ICZndDsmZ3Q7Jmd0OyBPbiAxMy4wOC4yMDIxIDAyOjMwLCBTZXJn ZSBQZXRyZW5rbyB2aWEgVGFyYW50b29sLXBhdGNoZXMgd3JvdGU6PGJyPiZndDsgJmd0OyZndDsm Z3Q7Jmd0OyBJbnRyb2R1Y2UgdGFibGUuZXF1YWxzIGZvciBjb21wYXJpbmcgdGFibGVzLjxicj4m Z3Q7ICZndDsmZ3Q7Jmd0OyZndDsgVGhlIG1ldGhvZCByZXNwZWN0cyBfX2VxIG1ldGFtZXRob2Qs IGlmIHByb3ZpZGVkLjxicj4mZ3Q7ICZndDsmZ3Q7Jmd0OyZndDs8YnI+Jmd0OyAmZ3Q7Jmd0OyZn dDsmZ3Q7IE5lZWRlZC1mb3IgIzU4OTQ8YnI+Jmd0OyAmZ3Q7Jmd0OyZndDsmZ3Q7IC0tLTxicj4m Z3Q7ICZndDsmZ3Q7Jmd0OyZndDs8YnI+Jmd0OyAmZ3Q7Jmd0Ozxicj4mZ3Q7PGJyPiZndDsgLS08 YnI+Jmd0OyBTZXJnZSBQZXRyZW5rbzxicj4mZ3Q7PGJyPiZndDsgLS08YnI+Jmd0OyBPbGVnIEJh YmluPGJyPjxicj4tLTxicj5TZXJnZSBQZXRyZW5rbzwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2Pjwv YmxvY2txdW90ZT4mbmJzcDs8ZGl2PiZuYnNwOzwvZGl2PjxkaXYgZGF0YS1zaWduYXR1cmUtd2lk Z2V0PSJjb250YWluZXIiPjxkaXYgZGF0YS1zaWduYXR1cmUtd2lkZ2V0PSJjb250ZW50Ij48ZGl2 Pi0tPGJyPk9sZWcgQmFiaW48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2PiZuYnNwOzwvZGl2PjwvZGl2 PjwvQk9EWT48L0hUTUw+Cg== ----ALT--c15D21bEB57ccEc306daDe6502364E8c1629128500--