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 2FE6F589AFB; Thu, 3 Aug 2023 22:29:53 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 2FE6F589AFB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1691090993; bh=QfdNUx9SanOlmCzKV5X2mYJEDNRKPKToF+HGyBrgV08=; 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=FbPEyhdOvmaYmB5EK2RS67IBAsxdW2ViA6Lz8qlnv8BKOgfXEArYmAhxPin5toZmS /w8y1wvvAsUhr8g2InrMQU9yJFqeHTp2UMNW94z27If5VtB0XWg73fSi/hW5eJaw3f enO+03LBFV68PB+Ao2tUEhL2EMf/PoGEEv2ljY3I= Received: from f727.i.mail.ru (f727.i.mail.ru [45.84.129.98]) (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 D5264589AF6 for ; Thu, 3 Aug 2023 22:29:51 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org D5264589AF6 Received: by f727.i.mail.ru with local (envelope-from ) id 1qRe18-0001WO-9D; Thu, 03 Aug 2023 22:29:51 +0300 Received: by e.mail.ru with HTTP; Thu, 03 Aug 2023 22:29:50 +0300 To: =?UTF-8?B?U2VyZ2V5IEJyb25uaWtvdg==?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 X-SenderField-ReMsg: 16909666162107302460 X-SenderField-Remind: 0 Date: Thu, 03 Aug 2023 22:29:50 +0300 Message-ID: <1691090990.849284065@f148.i.mail.ru> X-Priority: 3 (Normal) Content-Type: multipart/alternative; boundary="--ALT--864d4B878450eEa46dD2E13c9C14c2De1691090990" In-Reply-To: References: X-4EC0790: 10 X-7564579A: 78E4E2B564C1792B X-77F55803: 119C1F4DF6A9251CF01119E910A4A68D96FC72611E3AC81ED0BF5190C53CD8668FD872164937FA4C6160B539D9AB3A554568A3F666B06E974725CEA1E008296B4FA9A3E9C4237953 X-7FA49CB5: 70AAF3C13DB70168C09775C1D3CA48CF9CDBD069623CF48AB2086D80B0504778CF19DD082D7633A0ACBFF42033827DA764CD17681C2FEB7A23F8577A6DFFEA7CFBFE1DE32F5B9EE6C4224003CC836476ABE134FDCE4E2725BFD28B28ED4578739E625A9149C048EE4B6963042765DA4B6CEA61CADDE926D9B287FD4696A6DC2FA8DF7F3B2552694A4E2F5AFA99E116B42401471946AA11AFACC50219273B5BD8C8F626AC60F7C5938F08D7030A58E5AD1A62830130A00468AEEEE3FBA3A834EE7353EFBB55337566F2C4C6B33C2F6F43FFE00DCBE7A580E6C18FFE4C76D54C94A471835C12D1D9774AD6D5ED66289B5278DA827A17800CE709B92020B71E24959FA2833FD35BB23D2EF20D2F80756B5F868A13BD56FB6657A471835C12D1D977725E5C173C3A84C3F5E532225D4D775B117882F4460429728AD0CFFFB425014E868A13BD56FB6657E2021AF6380DFAD1A18204E546F3947CB11811A4A51E3B096D1867E19FE1407978DA827A17800CE705056152E029236E2DBA43225CD8A89F83C798A30B85E16B57739F23D657EF2BB5C8C57E37DE458BEDA766A37F9254B7 X-C1DE0DAB: 0D63561A33F958A5B07A0D4DE7176E1AA6612B4EA4D02A0484EC25F66AE04F90F87CCE6106E1FC07E67D4AC08A07B9B0AD74539164518AE5CB5012B2E24CD356 X-C8649E89: 1C3962B70DF3F0ADE2815F1F17DA7190F22D334B9B612B432CCB5A6D6581D03D0776B5B2C279835F17BCBE6708A5A68D02015372BE9702A2D6FB121BE4CCFA1C20DB866A16C8333AD64BCC68A3DE349230C8F5E0550E8E165B32E9EC936B4C8C9B815B7972F6FBBEEA3B2AAF26D6B1BD1BFFCAC955FEEC66C7CEAA0681F5848F4C41F94D744909CED78ACA237E033A03E5771FB83DCB4455B2E44A6A118E769B33F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS329fgu+/vnDhbhn+RsgjHgsDf3WLIuR9gw== X-Mailru-MI: 10000000000400800 X-Mailru-Sender: 3486C3469AF023A8E23FB4C01BC07D5309DC9D01C94010AD5D3E2BC159D69180E0421C9FD134A22A06CD02445D2D9C8FA2BFD6D8330F0C2D563E610FBBDBB4C842051EA7CBBFB509093DA5C00B83CE8412EB40C6FA10D71EFD657A8799238ED55FEEDEB644C299C0ED14614B50AE0675 X-Mras: Ok X-Spam: undefined Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_2/5=5D=5Bv3=5D_codehealth?= =?utf-8?q?=3A_fix_typos?= 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: max.kokryashkin@gmail.com, tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" ----ALT--864d4B878450eEa46dD2E13c9C14c2De1691090990 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpLCBTZXJnZXkhClRoYW5rcyBmb3IgdGhlIHBhdGNoIQpMR1RNCi0tCkJlc3QgcmVnYXJkcywK TWF4aW0gS29rcnlhc2hraW4KwqAKwqAgCj7QodGA0LXQtNCwLCAyINCw0LLQs9GD0YHRgtCwIDIw MjMsIDExOjU2ICswMzowMCDQvtGCIFNlcmdleSBCcm9ubmlrb3YgdmlhIFRhcmFudG9vbC1wYXRj aGVzIDx0YXJhbnRvb2wtcGF0Y2hlc0BkZXYudGFyYW50b29sLm9yZz46Cj7CoAo+RnJvbTogU2Vy Z2V5IEJyb25uaWtvdiA8IHNlcmdleWJAdGFyYW50b29sLm9yZyA+Cj4KPkZpeCB0eXBvcyBmb3Vu ZCB3aXRoIGNvZGVzcGVsbCBpbiBmaWxlcyB3aXRoIG91ciBvd24gc291cmNlIGNvZGUuCj4tLS0K PsKgc3JjL2xqX3N5c3Byb2YuYyB8IDIgKy0KPsKgc3JjL2xqX3didWYuaCB8IDIgKy0KPsKgc3Jj L2x1YWppdC1nZGIucHkgfCA2ICsrKy0tLQo+wqBzcmMvbHVhaml0X2xsZGIucHkgfCA2ICsrKy0t LQo+wqB0ZXN0L0x1YUpJVC10ZXN0cy9zcmMvY3Rlc3QuYyB8IDIgKy0KPsKgdGVzdC90YXJhbnRv b2wtdGVzdHMvQ01ha2VMaXN0cy50eHQgfCAyICstCj7CoHRlc3QvdGFyYW50b29sLXRlc3RzL2Zp eC1lbWl0LXJtYS50ZXN0Lmx1YSB8IDIgKy0KPsKgdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNDE5 OS1nYzY0LWZ1c2UudGVzdC5sdWEgfCAyICstCj7CoC4uLi9naC02MDk2LWV4dGVybmFsLXVud2lu ZGluZy1vbi1hcm02NC50ZXN0Lmx1YSB8IDIgKy0KPsKgdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gt NjE2My1taW4tbWF4LnRlc3QubHVhIHwgMiArLQo+wqB0ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00 MTYteG9yLWJlZm9yZS1qY2MudGVzdC5sdWEgfCAyICstCj7CoC4uLi9sai00MjYtYXJtNjQtaW5j b3JyZWN0LWNoZWNrLWNsb3NlZC11di50ZXN0Lmx1YSB8IDIgKy0KPsKgLi4uL2xqLTUxMi1wcm9m aWxlci1ob29rLWZpbmFsaXplcnMudGVzdC5sdWEgfCA0ICsrLS0KPsKgdGVzdC90YXJhbnRvb2wt dGVzdHMvbGotNjAzLWVyci1zbmFwLXJlc3RvcmUudGVzdC5sdWEgfCAyICstCj7CoHRlc3QvdGFy YW50b29sLXRlc3RzL21pc2NsaWItbWVtcHJvZi1sYXBpLnRlc3QubHVhIHwgNiArKystLS0KPsKg dGVzdC90YXJhbnRvb2wtdGVzdHMvdGFwLmx1YSB8IDQgKystLQo+wqB0ZXN0L3RhcmFudG9vbC10 ZXN0cy91bml0LWppdC1wYXJzZS50ZXN0Lmx1YSB8IDIgKy0KPsKgdG9vbHMvbWVtcHJvZi9wYXJz ZS5sdWEgfCA0ICsrLS0KPsKgdG9vbHMvbWVtcHJvZi9wcm9jZXNzLmx1YSB8IDQgKystLQo+wqAx OSBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKPgo+ZGlm ZiAtLWdpdCBhL3NyYy9sal9zeXNwcm9mLmMgYi9zcmMvbGpfc3lzcHJvZi5jCj5pbmRleCAyZTll ZDliMy4uNzQ1ZWIxYTMgMTAwNjQ0Cj4tLS0gYS9zcmMvbGpfc3lzcHJvZi5jCj4rKysgYi9zcmMv bGpfc3lzcHJvZi5jCj5AQCAtNDg1LDcgKzQ4NSw3IEBAIGludCBsal9zeXNwcm9mX3N0b3AobHVh X1N0YXRlICpMKQo+wqDCoMKgaWYgKFNQU19IQUxUID09IHNwLT5zdGF0ZSkgewo+wqDCoMKgwqDC oGVycm5vID0gc3AtPnNhdmVkX2Vycm5vOwo+wqDCoMKgwqDCoHNwLT5zdGF0ZSA9IFNQU19JRExF Owo+LSAvKiB3YnVmIHdhcyB0ZXJtaW5hdGVkIHdoZW4gZXJyb3Igb2NjdXJlZC4gKi8KPisgLyog d2J1ZiB3YXMgdGVybWluYXRlZCB3aGVuIGVycm9yIG9jY3VycmVkLiAqLwo+wqDCoMKgwqDCoHJl dHVybiBQUk9GSUxFX0VSUklPOwo+wqDCoMKgfQo+wqAKPmRpZmYgLS1naXQgYS9zcmMvbGpfd2J1 Zi5oIGIvc3JjL2xqX3didWYuaAo+aW5kZXggOWVhYTVlNTEuLjMzZWM4NDYzIDEwMDY0NAo+LS0t IGEvc3JjL2xqX3didWYuaAo+KysrIGIvc3JjL2xqX3didWYuaAo+QEAgLTc1LDcgKzc1LDcgQEAg dm9pZCBsal93YnVmX2FkZG4oc3RydWN0IGxqX3didWYgKmJ1ZiwgY29uc3Qgdm9pZCAqc3JjLCBz aXplX3Qgbik7Cj7CoC8qIFdyaXRlIHN0cmluZyB0byB0aGUgYnVmZmVyLiAqLwo+wqB2b2lkIExK X0ZBU1RDQUxMIGxqX3didWZfYWRkc3RyaW5nKHN0cnVjdCBsal93YnVmICpidWYsIGNvbnN0IGNo YXIgKnMpOwo+wqAKPi0vKiBJbW1lZGlhdGx5IGZsdXNoIHRoZSBidWZmZXIuICovCj4rLyogSW1t ZWRpYXRlbHkgZmx1c2ggdGhlIGJ1ZmZlci4gKi8KPsKgdm9pZCBMSl9GQVNUQ0FMTCBsal93YnVm X2ZsdXNoKHN0cnVjdCBsal93YnVmICpidWYpOwo+wqAKPsKgLyogQ2hlY2sgZmxhZ3MuICovCj5k aWZmIC0tZ2l0IGEvc3JjL2x1YWppdC1nZGIucHkgYi9zcmMvbHVhaml0LWdkYi5weQo+aW5kZXgg OTZlZTIyODkuLmFmZGZlY2Q5IDEwMDY0NAo+LS0tIGEvc3JjL2x1YWppdC1nZGIucHkKPisrKyBi L3NyYy9sdWFqaXQtZ2RiLnB5Cj5AQCAtMjY4LDcgKzI2OCw3IEBAIGRlZiBzdHJkYXRhKG9iaik6 Cj7CoMKgwqDCoMKgdHJ5Ogo+wqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHN0cihjYXN0KCdjaGFy IConLCBjYXN0KCdHQ3N0ciAqJywgb2JqKSArIDEpKVtsZW4oUEFERElORyk6XQo+wqDCoMKgwqDC oGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6Cj4tIHJldHVybiAiPGx1YWppdC1nZGI6IGVycm9y IG9jY3VyZWQgd2hpbGUgcmVuZGVyaW5nIG5vbi1hc2NpaSBzbG90PiIKPisgcmV0dXJuICI8bHVh aml0LWdkYjogZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVuZGVyaW5nIG5vbi1hc2NpaSBzbG90PiIK PsKgCj7CoGRlZiBpdHlwZW1hcChvKToKPsKgwqDCoMKgwqBpZiBMSl82NCBhbmQgbm90IExKX0dD NjQ6Cj5AQCAtNjA2LDcgKzYwNiw3IEBAIGNsYXNzIExKRHVtcFRhYmxlKExKQmFzZSk6Cj7CoMKg wqDCoMKgJycnCj7CoGxqLXRhYiA8R0N0YWIgKj4KPsKgCj4tVGhlIGNvbW1hbmQgcmVjZWl2ZXMg YSBHQ3RhYiBhZHJlc3MgYW5kIGR1bXBzIHRoZSB0YWJsZSBjb250ZW50czoKPitUaGUgY29tbWFu ZCByZWNlaXZlcyBhIEdDdGFiIGFkZHJlc3MgYW5kIGR1bXBzIHRoZSB0YWJsZSBjb250ZW50czoK PsKgKiBNZXRhdGFibGUgYWRkcmVzcyB3aGV0aGVyIHRoZSBvbmUgaXMgc2V0Cj7CoCogQXJyYXkg cGFydCA8YXNpemU+IHNsb3RzOgo+wqDCoMKgPGFzbG90IHB0cj46IFs8aW5kZXg+XTogPHR2Pgo+ QEAgLTY3Nyw3ICs2NzcsNyBAQCBjb3JvdXRpbmUgZ3Vlc3Qgc3RhY2s6Cj7CoMKgwqDCoMKgKyBD UDogUHJvdGVjdGVkIEMgZnJhbWUKPsKgwqDCoMKgwqArIFBQOiBWTSBwZXJmb3JtcyBhIGNhbGwg YXMgYSByZXN1bHQgb2YgZXhlY3V0aW5pZyBwY2FsbCBvciB4cGNhbGwKPsKgCj4tSWYgTCBpcyBv bW1pdGVkIHRoZSBtYWluIGNvcm91dGluZSBpcyB1c2VkLgo+K0lmIEwgaXMgb21pdHRlZCB0aGUg bWFpbiBjb3JvdXRpbmUgaXMgdXNlZC4KPsKgwqDCoMKgwqAnJycKPsKgCj7CoMKgwqDCoMKgZGVm IGludm9rZShzZWxmLCBhcmcsIGZyb21fdHR5KToKPmRpZmYgLS1naXQgYS9zcmMvbHVhaml0X2xs ZGIucHkgYi9zcmMvbHVhaml0X2xsZGIucHkKPmluZGV4IDllZTEwMjY5Li40ZDdiZWY4MSAxMDA2 NDQKPi0tLSBhL3NyYy9sdWFqaXRfbGxkYi5weQo+KysrIGIvc3JjL2x1YWppdF9sbGRiLnB5Cj5A QCAtNDkwLDcgKzQ5MCw3IEBAIGRlZiBzdHJkYXRhKG9iaik6Cj7CoMKgwqDCoMKgwqDCoMKgwqBw dHIgPSBjYXN0KCdjaGFyIConLCBvYmogKyAxKQo+wqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHB0 ci5zdW1tYXJ5Cj7CoMKgwqDCoMKgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKPi0gcmV0dXJu ICI8bHVhaml0LWxsZGI6IGVycm9yIG9jY3VyZWQgd2hpbGUgcmVuZGVyaW5nIG5vbi1hc2NpaSBz bG90PiIKPisgcmV0dXJuICI8bHVhaml0LWxsZGI6IGVycm9yIG9jY3VycmVkIHdoaWxlIHJlbmRl cmluZyBub24tYXNjaWkgc2xvdD4iCj7CoAo+wqBkZWYgaXR5cGUobyk6Cj7CoMKgwqDCoMKgcmV0 dXJuIHRvdTMyKG8uaXQ2NCA+PiA0NykgaWYgTEpfR0M2NCBlbHNlIG8uaXQKPkBAIC05MDksNyAr OTA5LDcgQEAgY2xhc3MgTEpEdW1wVGFibGUoQ29tbWFuZCk6Cj7CoMKgwqDCoMKgJycnCj7CoGxq LXRhYiA8R0N0YWIgKj4KPsKgCj4tVGhlIGNvbW1hbmQgcmVjZWl2ZXMgYSBHQ3RhYiBhZHJlc3Mg YW5kIGR1bXBzIHRoZSB0YWJsZSBjb250ZW50czoKPitUaGUgY29tbWFuZCByZWNlaXZlcyBhIEdD dGFiIGFkZHJlc3MgYW5kIGR1bXBzIHRoZSB0YWJsZSBjb250ZW50czoKPsKgKiBNZXRhdGFibGUg YWRkcmVzcyB3aGV0aGVyIHRoZSBvbmUgaXMgc2V0Cj7CoCogQXJyYXkgcGFydCA8YXNpemU+IHNs b3RzOgo+wqDCoMKgPGFzbG90IHB0cj46IFs8aW5kZXg+XTogPHR2Pgo+QEAgLTk3OSw3ICs5Nzks NyBAQCBjb3JvdXRpbmUgZ3Vlc3Qgc3RhY2s6Cj7CoMKgwqDCoMKgKyBDUDogUHJvdGVjdGVkIEMg ZnJhbWUKPsKgwqDCoMKgwqArIFBQOiBWTSBwZXJmb3JtcyBhIGNhbGwgYXMgYSByZXN1bHQgb2Yg ZXhlY3V0aW5pZyBwY2FsbCBvciB4cGNhbGwKPsKgCj4tSWYgTCBpcyBvbW1pdGVkIHRoZSBtYWlu IGNvcm91dGluZSBpcyB1c2VkLgo+K0lmIEwgaXMgb21pdHRlZCB0aGUgbWFpbiBjb3JvdXRpbmUg aXMgdXNlZC4KPsKgwqDCoMKgwqAnJycKPsKgwqDCoMKgwqBkZWYgZXhlY3V0ZShzZWxmLCBkZWJ1 Z2dlciwgYXJncywgcmVzdWx0KToKPsKgwqDCoMKgwqDCoMKgwqDCoGwgPSBzZWxmLnBhcnNlKGFy Z3MpCj5kaWZmIC0tZ2l0IGEvdGVzdC9MdWFKSVQtdGVzdHMvc3JjL2N0ZXN0LmMgYi90ZXN0L0x1 YUpJVC10ZXN0cy9zcmMvY3Rlc3QuYwo+aW5kZXggZDI1NzU2N2IuLmU5OWYyMzA2IDEwMDY0NAo+ LS0tIGEvdGVzdC9MdWFKSVQtdGVzdHMvc3JjL2N0ZXN0LmMKPisrKyBiL3Rlc3QvTHVhSklULXRl c3RzL3NyYy9jdGVzdC5jCj5AQCAtMjM0LDcgKzIzNCw3IEBAIHN0YXRpYyBpbnQgY29zdGF0dXMo bHVhX1N0YXRlICpMLCBsdWFfU3RhdGUgKmNvKSB7Cj7CoMKgwqDCoMKgwqDCoGVsc2UKPsKgIHJl dHVybiBDT19TVVM7IC8qIGluaXRpYWwgc3RhdGUgKi8KPsKgwqDCoMKgwqB9Cj4tIGRlZmF1bHQ6 IC8qIHNvbWUgZXJyb3Igb2NjdXJlZCAqLwo+KyBkZWZhdWx0OiAvKiBzb21lIGVycm9yIG9jY3Vy cmVkICovCj7CoMKgwqDCoMKgwqDCoHJldHVybiBDT19ERUFEOwo+wqDCoMKgfQo+wqB9Cj5kaWZm IC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvQ01ha2VMaXN0cy50eHQgYi90ZXN0L3RhcmFu dG9vbC10ZXN0cy9DTWFrZUxpc3RzLnR4dAo+aW5kZXggNjIxOGY3NmEuLmYwYmY4ZWZiIDEwMDY0 NAo+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvQ01ha2VMaXN0cy50eHQKPisrKyBiL3Rlc3Qv dGFyYW50b29sLXRlc3RzL0NNYWtlTGlzdHMudHh0Cj5AQCAtMTMyLDcgKzEzMiw3IEBAIGVsc2Uo KQo+wqBlbmRpZigpCj7CoAo+wqAjIExVQV9DUEFUSCBhbmQgTERfTElCUkFSWV9QQVRIIHZhcmlh YmxlcyBhbmQgYWxzbyBURVNUTElCUyBsaXN0Cj4tIyB3aXRoIGRlcGVuZGVjaWVzIGFyZSBzZXQg aW4gc2NvcGUgb2YgQnVpbGRUZXN0TGliIG1hY3JvLgo+KyMgd2l0aCBkZXBlbmRlbmNpZXMgYXJl IHNldCBpbiBzY29wZSBvZiBCdWlsZFRlc3RMaWIgbWFjcm8uCj7CoGFkZF9jdXN0b21fdGFyZ2V0 KHRhcmFudG9vbC10ZXN0cwo+wqDCoMKgREVQRU5EUyAke0xVQUpJVF9URVNUX0JJTkFSWX0gJHtU RVNUTElCU30KPsKgKQo+ZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL2ZpeC1lbWl0 LXJtYS50ZXN0Lmx1YSBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2ZpeC1lbWl0LXJtYS50ZXN0Lmx1 YQo+aW5kZXggNDI4MDQ0NDcuLmNjOTdmZjRkIDEwMDY0NAo+LS0tIGEvdGVzdC90YXJhbnRvb2wt dGVzdHMvZml4LWVtaXQtcm1hLnRlc3QubHVhCj4rKysgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9m aXgtZW1pdC1ybWEudGVzdC5sdWEKPkBAIC00LDcgKzQsNyBAQCBsb2NhbCB0ZXN0ID0gdGFwLnRl c3QoJ2ZpeC1lbWl0LXJtYScpOnNraXBjb25kKHsKPsKgwqDCoFsnVGVzdCByZXF1aXJlcyBHQzY0 IG1vZGUgZW5hYmxlZCddID0gbm90IHJlcXVpcmUoJ2ZmaScpLmFiaSgnZ2M2NCcpLAo+wqB9KQo+ wqAKPi0tLSBOZWVkIHRvIHRlc3QgMiBjYXNlcyBvZiBgZW1pdF9ybWEoKWAgcGFydGljdWxhcnkg b24geDY0Ogo+Ky0tIE5lZWQgdG8gdGVzdCAyIGNhc2VzIG9mIGBlbWl0X3JtYSgpYCBwYXJ0aWN1 bGFybHkgb24geDY0Ogo+wqAtLSAqIGBJUl9MREVYUGAgd2l0aCBgZmxkYCBpbnN0cnVjdGlvbiBm b3IgbG9hZGluZyBjb25zdGFudAo+wqAtLSBudW1iZXIgYFRWYWx1ZWAgYnkgYWRkcmVzcy4KPsKg LS0gKiBgSVJfT0JBUmAgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBgdGVzdGAgaW5zdHJ1Y3Rpb24g b24KPmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC00MTk5LWdjNjQtZnVzZS50 ZXN0Lmx1YSBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2doLTQxOTktZ2M2NC1mdXNlLnRlc3QubHVh Cj5pbmRleCBjYTA1MGNmMC4uODc3Zjc4ODQgMTAwNjQ0Cj4tLS0gYS90ZXN0L3RhcmFudG9vbC10 ZXN0cy9naC00MTk5LWdjNjQtZnVzZS50ZXN0Lmx1YQo+KysrIGIvdGVzdC90YXJhbnRvb2wtdGVz dHMvZ2gtNDE5OS1nYzY0LWZ1c2UudGVzdC5sdWEKPkBAIC00NCw3ICs0NCw3IEBAIGZvciBuID0g MSwgMTAwIGRvCj7CoMKgwqDCoMKgwqDCoGZvciBpID0gMSwgNSBkbwo+wqDCoMKgwqDCoMKgwqDC oMKgLS0gVGhpcyBjb25zdGFudCBmdXNpb24gbGVhZHMgdG8gdGhlIHRlc3QgZmFpbHVyZS4KPsKg wqDCoMKgwqDCoMKgwqDCoGFbaV0gPSAwCj4tIC0tIFRoaXMgc3VtbSBpcyBub3QgbmVjZXNzYXJy eSBidXQgZGVjcmVhc2VzIHRoZSBhbW91bnQgb2YKPisgLS0gVGhpcyBzdW1tIGlzIG5vdCBuZWNl c3NhcnkgYnV0IGRlY3JlYXNlcyB0aGUgYW1vdW50IG9mCj7CoMKgwqDCoMKgwqDCoMKgwqAtLSBp dGVyYXRpb25zLgo+wqDCoMKgwqDCoMKgwqDCoMKgYVtpXSA9IGFbaV0gKyB4ICsgeQo+wqDCoMKg wqDCoMKgwqDCoMKgLS0gVXNlIGFsbCBGUFIgcmVnaXN0ZXJzIGFuZCBvbmUgdmFsdWUgZnJvbSB0 aGUgbWVtb3J5Cj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNjA5Ni1leHRl cm5hbC11bndpbmRpbmctb24tYXJtNjQudGVzdC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9n aC02MDk2LWV4dGVybmFsLXVud2luZGluZy1vbi1hcm02NC50ZXN0Lmx1YQo+aW5kZXggMDk3ZTc3 MWMuLjAwZjU4NjQyIDEwMDY0NAo+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNjA5Ni1l eHRlcm5hbC11bndpbmRpbmctb24tYXJtNjQudGVzdC5sdWEKPisrKyBiL3Rlc3QvdGFyYW50b29s LXRlc3RzL2doLTYwOTYtZXh0ZXJuYWwtdW53aW5kaW5nLW9uLWFybTY0LnRlc3QubHVhCj5AQCAt MSw2ICsxLDYgQEAKPsKgbG9jYWwgdGFwID0gcmVxdWlyZSgndGFwJykKPsKgCj4tLS0gVGVzdCBm aWxlIHRvIGNoZWNrIGNvcnJlY3RuZXMgb2YgZXh0ZXJuYWwgdW53aW5kaW5nCj4rLS0gVGVzdCBm aWxlIHRvIGNoZWNrIGNvcnJlY3RuZXNzIG9mIGV4dGVybmFsIHVud2luZGluZwo+wqAtLSBpbiBM dWFKSVQuCj7CoC0tIFNlZSBhbHNvICBodHRwczovL2dpdGh1Yi5jb20vTHVhSklUL0x1YUpJVC9p c3N1ZXMvNjk4ICwKPsKgLS0gIGh0dHBzOi8vZ2l0aHViLmNvbS9MdWFKSVQvTHVhSklUL3B1bGwv NzU3IC4KPmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC02MTYzLW1pbi1tYXgu dGVzdC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC02MTYzLW1pbi1tYXgudGVzdC5sdWEK PmluZGV4IDYzNDM3OTU1Li4zYjdhOGUwMyAxMDA2NDQKPi0tLSBhL3Rlc3QvdGFyYW50b29sLXRl c3RzL2doLTYxNjMtbWluLW1heC50ZXN0Lmx1YQo+KysrIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMv Z2gtNjE2My1taW4tbWF4LnRlc3QubHVhCj5AQCAtNTMsNyArNTMsNyBAQCBsb2NhbCB4ID0gMQo+ wqAKPsKgaml0Lm9wdC5zdGFydCgnaG90bG9vcD0xJykKPsKgCj4tLS0gWFhYOiBMb29waW5nIG92 ZXIgdGhlIG9wZXJhdGlvbnMgYW5kIHRoZWlyIGFyZ3VtZW50cyBicmVha2VzIHRoZQo+Ky0tIFhY WDogTG9vcGluZyBvdmVyIHRoZSBvcGVyYXRpb25zIGFuZCB0aGVpciBhcmd1bWVudHMgYnJlYWtz IHRoZQo+wqAtLSBzZW1hbnRpY3Mgb2Ygc29tZSBvcHRpbWl6YXRpb24gdGVzdHMgYmVsb3cuIFRo ZSBjYXNlcyBhcmUKPsKgLS0gY29weS1wYXN0ZWQgdG8gcHJlc2VydmUgb3B0aW1pemF0aW9uIHNl bWFudGljcy4KPsKgCj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNDE2LXhv ci1iZWZvcmUtamNjLnRlc3QubHVhIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNDE2LXhvci1i ZWZvcmUtamNjLnRlc3QubHVhCj5pbmRleCA2MDViYjkyYS4uZjcxYzllZTQgMTAwNjQ0Cj4tLS0g YS90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00MTYteG9yLWJlZm9yZS1qY2MudGVzdC5sdWEKPisr KyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTQxNi14b3ItYmVmb3JlLWpjYy50ZXN0Lmx1YQo+ QEAgLTQxLDcgKzQxLDcgQEAgbG9jYWwgdGVzdHhvciA9IGZmaS5sb2FkKCdsaWJ0ZXN0eG9yJykK PsKgLS0gcHJlc3N1cmUgYW5kIHNwZWNpZmljIHJlZ2lzdGVycyBhbGxvY2F0aW9ucy4KPsKgbG9j YWwgaGFuZGxlciA9IHNldG1ldGF0YWJsZSh7fSwgewo+wqDCoMKgX19uZXdpbmRleCA9IGZ1bmN0 aW9uICgpCj4tIC0tIDAgYW5kIG5pbCBhcmUgc3VnZ2VzdGVkIGFzIGRpZmZlcm50IGNvbnN0YW50 LXplcm8gdmFsdWVzCj4rIC0tIDAgYW5kIG5pbCBhcmUgc3VnZ2VzdGVkIGFzIGRpZmZlcmVudCBj b25zdGFudC16ZXJvIHZhbHVlcwo+wqDCoMKgwqDCoC0tIGZvciB0aGUgY2FsbCBhbmQgb2NjdXBp ZWQgZGlmZmVyZW50IHJlZ2lzdGVycy4KPsKgwqDCoMKgwqB0ZXN0eG9yLnRlc3RfeG9yX2Z1bmMo MCwgMCwgMCwgMCwgMCwgMCwgbmlsLCAwKQo+wqDCoMKgZW5kCj5kaWZmIC0tZ2l0IGEvdGVzdC90 YXJhbnRvb2wtdGVzdHMvbGotNDI2LWFybTY0LWluY29ycmVjdC1jaGVjay1jbG9zZWQtdXYudGVz dC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00MjYtYXJtNjQtaW5jb3JyZWN0LWNoZWNr LWNsb3NlZC11di50ZXN0Lmx1YQo+aW5kZXggYTY4OWVkNjAuLmVhMDFiYTA2IDEwMDY0NAo+LS0t IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNDI2LWFybTY0LWluY29ycmVjdC1jaGVjay1jbG9z ZWQtdXYudGVzdC5sdWEKPisrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTQyNi1hcm02NC1p bmNvcnJlY3QtY2hlY2stY2xvc2VkLXV2LnRlc3QubHVhCj5AQCAtMTQsNyArMTQsNyBAQCBkbwo+ wqDCoMKgLS0gVGhlIGZ1bmN0aW9uJ3MgcHJvdG90eXBlIGlzIGNyZWF0ZWQgd2l0aCB0aGUgZm9s bG93aW5nCj7CoMKgwqAtLSBjb25zdGFudHMgYXQgY2h1bmsgcGFyc2luZy4gQWZ0ZXIgYWRkaW5n IHRoaXMgY29uc3RhbnQgdG8KPsKgwqDCoC0tIHRoZSBmdW5jdGlvbidzIHByb3RvdHlwZSBpdCB3 aWxsIGJlIG1hcmtlZCBhcyBncmF5IGR1cmluZwo+LSAtLSBwcm9wb2dhdGUgcGhhc2UuCj4rIC0t IHByb3BhZ2F0ZSBwaGFzZS4KPsKgwqDCoGxvY2FsIGZ1bmN0aW9uIHVzZXRzKCkgdXYgPSAnJyBl bmQKPsKgwqDCoF9HLnVzZXRzID0gdXNldHMKPsKgZW5kCj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJh bnRvb2wtdGVzdHMvbGotNTEyLXByb2ZpbGVyLWhvb2stZmluYWxpemVycy50ZXN0Lmx1YSBiL3Rl c3QvdGFyYW50b29sLXRlc3RzL2xqLTUxMi1wcm9maWxlci1ob29rLWZpbmFsaXplcnMudGVzdC5s dWEKPmluZGV4IGEyODJhMTBmLi5mMDJiZDA1ZiAxMDA2NDQKPi0tLSBhL3Rlc3QvdGFyYW50b29s LXRlc3RzL2xqLTUxMi1wcm9maWxlci1ob29rLWZpbmFsaXplcnMudGVzdC5sdWEKPisrKyBiL3Rl c3QvdGFyYW50b29sLXRlc3RzL2xqLTUxMi1wcm9maWxlci1ob29rLWZpbmFsaXplcnMudGVzdC5s dWEKPkBAIC0yMCw5ICsyMCw5IEBAIGxvY2FsIGZpbmlzaCA9IG9zLmNsb2NrKCkKPsKgCj7CoHBy b2ZpbGUuc3RvcCgpCj7CoAo+LS0tIFhYWDogVGhlIGJ1ZyBpcyBvY2N1cmVkIGFzIHN0b3BwaW5n IG9mIGNhbGxiYWNrcyBpbnZvY2F0aW9uLAo+Ky0tIFhYWDogVGhlIGJ1ZyBpcyBvY2N1cnJlZCBh cyBzdG9wcGluZyBvZiBjYWxsYmFja3MgaW52b2NhdGlvbiwKPsKgLS0gd2hlbiBhIG5ldyB0aWNr IHN0cmlrZXMgaW5zaWRlIGBnY19jYWxsX2ZpbmFsaXplcigpYC4KPi0tLSBUaGUgYW1vdW50IG9m IHN1Y2Nlc3NmdWxsIGNhbGxiYWNrcyBpc24ndCBzdGFibGUgKDItMTUpLgo+Ky0tIFRoZSBhbW91 bnQgb2Ygc3VjY2Vzc2Z1bCBjYWxsYmFja3MgaXNuJ3Qgc3RhYmxlICgyLTE1KS4KPsKgLS0gU28s IGFzc3VtZSB0aGF0IGFtb3VudCBvZiBwcm9maWxpbmcgc2FtcGxlcyBzaG91bGQgYmUgYXQgbGVh c3QKPsKgLS0gbW9yZSB0aGFuIDAuNSBpbnRlcnZhbHMgb2YgdGltZSBkdXJpbmcgc2FtcGxpbmcu Cj7CoHRlc3Q6b2sobnNhbXBsZXMgPj0gMC41ICogKGZpbmlzaCAtIHN0YXJ0KSAqIDFlMyAvIElO VEVSVkFMLAo+ZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTYwMy1lcnItc25h cC1yZXN0b3JlLnRlc3QubHVhIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNjAzLWVyci1zbmFw LXJlc3RvcmUudGVzdC5sdWEKPmluZGV4IDc5MTEwN2JhLi45NmViZjkyYyAxMDA2NDQKPi0tLSBh L3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTYwMy1lcnItc25hcC1yZXN0b3JlLnRlc3QubHVhCj4r KysgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai02MDMtZXJyLXNuYXAtcmVzdG9yZS50ZXN0Lmx1 YQo+QEAgLTExLDcgKzExLDcgQEAgbG9jYWwgZnVuY3Rpb24gZG9fdGVzdCgpCj7CoMKgwqBsb2Nh bCByZWN1cnNpdmVfZgo+wqDCoMKgbG9jYWwgZnVuY3Rpb24gZXJyZnVuYygpCj7CoMKgwqDCoMKg eHBjYWxsKHJlY3Vyc2l2ZV9mLCBlcnJmdW5jKQo+LSAtLSBTaW5jZSB0aGlzIGVycm9yIGlzIG9j Y3VyZWQgb24gc25hcHNob3QgcmVzdG9yYXRpb24gYW5kIGNhbgo+KyAtLSBTaW5jZSB0aGlzIGVy cm9yIGlzIG9jY3VycmVkIG9uIHNuYXBzaG90IHJlc3RvcmF0aW9uIGFuZCBjYW4KPsKgwqDCoMKg wqAtLSBiZSBoYW5kbGVkIGJ5IGNvbXBpbGVyIGl0c2VsZiwgd2Ugc2hvdWxkbid0IGJvdGhlciBh IHVzZXIKPsKgwqDCoMKgwqAtLSB3aXRoIGl0Lgo+wqDCoMKgwqDCoGhhbmRsZXJfaXNfY2FsbGVk ID0gdHJ1ZQo+ZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL21pc2NsaWItbWVtcHJv Zi1sYXBpLnRlc3QubHVhIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMvbWlzY2xpYi1tZW1wcm9mLWxh cGkudGVzdC5sdWEKPmluZGV4IDNjYjVjOGJlLi4yMGNmZWYyMSAxMDA2NDQKPi0tLSBhL3Rlc3Qv dGFyYW50b29sLXRlc3RzL21pc2NsaWItbWVtcHJvZi1sYXBpLnRlc3QubHVhCj4rKysgYi90ZXN0 L3RhcmFudG9vbC10ZXN0cy9taXNjbGliLW1lbXByb2YtbGFwaS50ZXN0Lmx1YQo+QEAgLTUyLDEz ICs1MiwxMyBAQCBsb2NhbCBmdW5jdGlvbiBnZW5lcmF0ZV9vdXRwdXQoZmlsZW5hbWUsIHBheWxv YWQpCj7CoMKgwqBjb2xsZWN0Z2FyYmFnZSgpCj7CoAo+wqDCoMKgbG9jYWwgcmVzLCBlcnIgPSBt aXNjLm1lbXByb2Yuc3RhcnQoZmlsZW5hbWUpCj4tIC0tIFNob3VsZCBzdGFydCBzdWNjZXNmdWxs eS4KPisgLS0gU2hvdWxkIHN0YXJ0IHN1Y2Nlc3NmdWxseS4KPsKgwqDCoGFzc2VydChyZXMsIGVy cikKPsKgCj7CoMKgwqBwYXlsb2FkKCkKPsKgCj7CoMKgwqByZXMsIGVyciA9IG1pc2MubWVtcHJv Zi5zdG9wKCkKPi0gLS0gU2hvdWxkIHN0b3Agc3VjY2VzZnVsbHkuCj4rIC0tIFNob3VsZCBzdG9w IHN1Y2Nlc3NmdWxseS4KPsKgwqDCoGFzc2VydChyZXMsIGVycikKPsKgZW5kCj7CoAo+QEAgLTE4 OCw3ICsxODgsNyBAQCB0ZXN0OnRlc3QoIm91dHB1dCIsIGZ1bmN0aW9uKHN1YnRlc3QpCj7CoMKg wqAtLSBDaGVjayBhbGxvY2F0aW9uIHJlcG9ydHMuIFRoZSBzZWNvbmQgYXJndW1lbnQgaXMgYSBs aW5lCj7CoMKgwqAtLSBudW1iZXIgb2YgdGhlIGFsbG9jYXRpb24gZXZlbnQgaXRzZWxmLiBUaGUg dGhpcmQgaXMgYSBsaW5lCj7CoMKgwqAtLSBudW1iZXIgb2YgdGhlIGNvcnJlc3BvbmRpbmcgZnVu Y3Rpb24gZGVmaW5pdGlvbi4gVGhlIGxhc3QKPi0gLS0gb25lIGlzIHRoZSBudW1iZXIgb2YgYWxs b2NhdGlvbnMuIDEgZXZlbnQgLSBhbG9jYXRpb24gb2YKPisgLS0gb25lIGlzIHRoZSBudW1iZXIg b2YgYWxsb2NhdGlvbnMuIDEgZXZlbnQgLSBhbGxvY2F0aW9uIG9mCj7CoMKgwqAtLSB0YWJsZSBi eSBpdHNlbGYgKyAxIGFsbG9jYXRpb24gb2YgYXJyYXkgcGFydCBhcyBmYXIgaXQgaXMKPsKgwqDC oC0tIGJpZ2dlciB0aGFuIExKX01BWF9DT0xPU0laRSAoMTYpLgo+wqDCoMKgc3VidGVzdDpvayhj aGVja19hbGxvY19yZXBvcnQoYWxsb2MsIHsgbGluZSA9IDM3LCBsaW5lZGVmaW5lZCA9IDM1IH0s IDIpKQo+ZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL3RhcC5sdWEgYi90ZXN0L3Rh cmFudG9vbC10ZXN0cy90YXAubHVhCj5pbmRleCA4NTU5ZWU1Mi4uNTViN2RkNzIgMTAwNjQ0Cj4t LS0gYS90ZXN0L3RhcmFudG9vbC10ZXN0cy90YXAubHVhCj4rKysgYi90ZXN0L3RhcmFudG9vbC10 ZXN0cy90YXAubHVhCj5AQCAtMSw2ICsxLDYgQEAKPsKgLS0tIHRhcC5sdWEgaW50ZXJuYWwgZmls ZS4KPsKgLS0tCj4tLS0tIFRoZSBUZXN0IEFueXRoaW5nIFByb3RvY29sIHZlc2lvbiAxMyBwcm9k dWNlci4KPistLS0gVGhlIFRlc3QgQW55dGhpbmcgUHJvdG9jb2wgdmVyc2lvbiAxMyBwcm9kdWNl ci4KPsKgLS0tCj7CoAo+wqAtLSBJbml0aWFsaXplciBGRkkgZm9yIDxpc2NkYXRhPiBjaGVjay4K PkBAIC03OSw3ICs3OSw3IEBAIGxvY2FsIGZ1bmN0aW9uIG9rKHRlc3QsIGNvbmQsIG1lc3NhZ2Us IGV4dHJhKQo+wqDCoMKgaW8ud3JpdGUodGluZGVudCwgKCJsaW5lOlx0JXNcbiIpOmZvcm1hdCh0 cmFjZVsjdHJhY2VdLmxpbmUpKQo+wqDCoMKgZm9yIGZyYW1lbm8sIGZyYW1lIGluIGlwYWlycyh0 cmFjZSkgZG8KPsKgwqDCoMKgwqBpby53cml0ZSh0aW5kZW50LCAoImZyYW1lICMlZFxuIik6Zm9y bWF0KGZyYW1lbm8pKQo+LSAtLSBYWFg6IFVzZSAiaGFsZiBpbmRlbnQiIHRvIGR1bXAgPGZyYW1l PiBmaWVscy4KPisgLS0gWFhYOiBVc2UgImhhbGYgaW5kZW50IiB0byBkdW1wIDxmcmFtZT4gZmll bGRzLgo+wqDCoMKgwqDCoGxvY2FsIGZpbmRlbnQgPSBpbmRlbnQoMC41KSAuLiB0aW5kZW50Cj7C oMKgwqDCoMKgZm9yIGtleSwgdmFsdWUgaW4gcGFpcnMoZnJhbWUpIGRvCj7CoMKgwqDCoMKgwqDC oGlvLndyaXRlKGZpbmRlbnQsICgiJXM6XHQlc1xuIik6Zm9ybWF0KGtleSwgdmFsdWUpKQo+ZGlm ZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL3VuaXQtaml0LXBhcnNlLnRlc3QubHVhIGIv dGVzdC90YXJhbnRvb2wtdGVzdHMvdW5pdC1qaXQtcGFyc2UudGVzdC5sdWEKPmluZGV4IDJlNmEy MjI4Li5jMGU2OTljMiAxMDA2NDQKPi0tLSBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL3VuaXQtaml0 LXBhcnNlLnRlc3QubHVhCj4rKysgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy91bml0LWppdC1wYXJz ZS50ZXN0Lmx1YQo+QEAgLTM5LDcgKzM5LDcgQEAgbG9jYWwgbG9vcF90cmFjZSA9IHRyYWNlc1sx XQo+wqBmb3IgaXJudW0gPSAxLCBOX1RFU1RTIGRvCj7CoMKgwqBsb2NhbCBpcl9wYXR0ZXJuID0g ZXhwZWN0ZWRfaXJzW2lybnVtXQo+wqDCoMKgbG9jYWwgaXJyZWYgPSBsb29wX3RyYWNlOmhhc19p cihpcl9wYXR0ZXJuKQo+LSB0ZXN0Om9rKGlycmVmLCAnZmluZCBJUiByZWZlcm5jZSBieSBwYXR0 ZXJuOiAnIC4uIGlyX3BhdHRlcm4pCj4rIHRlc3Q6b2soaXJyZWYsICdmaW5kIElSIHJlZmVyZW5j ZSBieSBwYXR0ZXJuOiAnIC4uIGlyX3BhdHRlcm4pCj7CoGVuZAo+wqAKPsKgdGVzdDpkb25lKHRy dWUpCj5kaWZmIC0tZ2l0IGEvdG9vbHMvbWVtcHJvZi9wYXJzZS5sdWEgYi90b29scy9tZW1wcm9m L3BhcnNlLmx1YQo+aW5kZXggZDg2NTI2N2IuLjJjMDlkYjkwIDEwMDY0NAo+LS0tIGEvdG9vbHMv bWVtcHJvZi9wYXJzZS5sdWEKPisrKyBiL3Rvb2xzL21lbXByb2YvcGFyc2UubHVhCj5AQCAtNTIs MTQgKzUyLDE0IEBAIGxvY2FsIGZ1bmN0aW9uIGxpbmtfdG9fcHJldmlvdXMoaGVhcF9jaHVuaywg ZSwgbnNpemUpCj7CoMKgwqDCoMKgaWYgbm90IGUucHJpbWFyeVtoZWFwX2NodW5rWzJdXSB0aGVu Cj7CoMKgwqDCoMKgwqDCoGUucHJpbWFyeVtoZWFwX2NodW5rWzJdXSA9IHsKPsKgwqDCoMKgwqDC oMKgwqDCoGxvYyA9IGhlYXBfY2h1bmtbM10sCj4tIGFsbG9jZWQgPSAwLAo+KyBhbGxvY2F0ZWQg PSAwLAo+wqDCoMKgwqDCoMKgwqDCoMKgZnJlZWQgPSAwLAo+wqDCoMKgwqDCoMKgwqDCoMKgY291 bnQgPSAwLAo+wqDCoMKgwqDCoMKgwqB9Cj7CoMKgwqDCoMKgZW5kCj7CoMKgwqDCoMKgLS0gU2F2 ZSBpbmZvcm1hdGlvbiBhYm91dCBkZWx0YSBmb3IgbWVtb3J5IGhlYXAuCj7CoMKgwqDCoMKgbG9j YWwgbG9jYXRpb25fZGF0YSA9IGUucHJpbWFyeVtoZWFwX2NodW5rWzJdXQo+LSBsb2NhdGlvbl9k YXRhLmFsbG9jZWQgPSBsb2NhdGlvbl9kYXRhLmFsbG9jZWQgKyBuc2l6ZQo+KyBsb2NhdGlvbl9k YXRhLmFsbG9jYXRlZCA9IGxvY2F0aW9uX2RhdGEuYWxsb2NhdGVkICsgbnNpemUKPsKgwqDCoMKg wqBsb2NhdGlvbl9kYXRhLmZyZWVkID0gbG9jYXRpb25fZGF0YS5mcmVlZCArIGhlYXBfY2h1bmtb MV0KPsKgwqDCoMKgwqBsb2NhdGlvbl9kYXRhLmNvdW50ID0gbG9jYXRpb25fZGF0YS5jb3VudCAr IDEKPsKgwqDCoGVuZAo+ZGlmZiAtLWdpdCBhL3Rvb2xzL21lbXByb2YvcHJvY2Vzcy5sdWEgYi90 b29scy9tZW1wcm9mL3Byb2Nlc3MubHVhCj5pbmRleCAwYmNiOTY1Yi4uOWRjMjAyYWUgMTAwNjQ0 Cj4tLS0gYS90b29scy9tZW1wcm9mL3Byb2Nlc3MubHVhCj4rKysgYi90b29scy9tZW1wcm9mL3By b2Nlc3MubHVhCj5AQCAtMzksOCArMzksOCBAQCBmdW5jdGlvbiBNLmZvcm1faGVhcF9kZWx0YShl dmVudHMsIHN5bWJvbHMpCj7CoMKgwqDCoMKgwqDCoGZvciBfLCBoZWFwX2NodW5rIGluIHBhaXJz KGV2ZW50LnByaW1hcnkpIGRvCj7CoMKgwqDCoMKgwqDCoMKgwqBsb2NhbCBldl9saW5lID0gc3lt dGFiLmRlbWFuZ2xlKHN5bWJvbHMsIGhlYXBfY2h1bmsubG9jKQo+wqAKPi0gaWYgKGhlYXBfY2h1 bmsuYWxsb2NlZCA+IDApIHRoZW4KPi0gZGhlYXBbZXZfbGluZV0uZGJ5dGVzID0gZGhlYXBbZXZf bGluZV0uZGJ5dGVzICsgaGVhcF9jaHVuay5hbGxvY2VkCj4rIGlmIChoZWFwX2NodW5rLmFsbG9j YXRlZCA+IDApIHRoZW4KPisgZGhlYXBbZXZfbGluZV0uZGJ5dGVzID0gZGhlYXBbZXZfbGluZV0u ZGJ5dGVzICsgaGVhcF9jaHVuay5hbGxvY2F0ZWQKPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqBkaGVh cFtldl9saW5lXS5uYWxsb2MgPSBkaGVhcFtldl9saW5lXS5uYWxsb2MgKyBoZWFwX2NodW5rLmNv dW50Cj7CoMKgwqDCoMKgwqDCoMKgwqBlbmQKPsKgCj4tLQo+Mi4zNC4xCsKg ----ALT--864d4B878450eEa46dD2E13c9C14c2De1691090990 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+SGksIFNlcmdleSE8L2Rpdj48ZGl2PlRoYW5rcyBmb3IgdGhlIHBh dGNoITwvZGl2PjxkaXY+TEdUTTwvZGl2PjxkaXYgZGF0YS1zaWduYXR1cmUtd2lkZ2V0PSJjb250 YWluZXIiPjxkaXYgZGF0YS1zaWduYXR1cmUtd2lkZ2V0PSJjb250ZW50Ij48ZGl2Pi0tPGJyPkJl c3QgcmVnYXJkcyw8L2Rpdj48ZGl2Pk1heGltIEtva3J5YXNoa2luPC9kaXY+PC9kaXY+PC9kaXY+ PGRpdj4mbmJzcDs8L2Rpdj48ZGl2PiZuYnNwOzwvZGl2PjxibG9ja3F1b3RlIHN0eWxlPSJib3Jk ZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAwIDAgMTBw eDsiPtCh0YDQtdC00LAsIDIg0LDQstCz0YPRgdGC0LAgMjAyMywgMTE6NTYgKzAzOjAwINC+0YIg U2VyZ2V5IEJyb25uaWtvdiB2aWEgVGFyYW50b29sLXBhdGNoZXMgJmx0O3RhcmFudG9vbC1wYXRj aGVzQGRldi50YXJhbnRvb2wub3JnJmd0Ozo8YnI+Jm5ic3A7PGRpdiBpZD0iIj48ZGl2IGNsYXNz PSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ciPjxkaXY+PGRpdiBpZD0ic3R5bGVfMTY5MDk2NjYx NjIxMDczMDI0NjBfQk9EWSI+RnJvbTogU2VyZ2V5IEJyb25uaWtvdiAmbHQ7PGEgaHJlZj0iL2Nv bXBvc2U/VG89c2VyZ2V5YkB0YXJhbnRvb2wub3JnIj5zZXJnZXliQHRhcmFudG9vbC5vcmc8L2E+ Jmd0Ozxicj48YnI+Rml4IHR5cG9zIGZvdW5kIHdpdGggY29kZXNwZWxsIGluIGZpbGVzIHdpdGgg b3VyIG93biBzb3VyY2UgY29kZS48YnI+LS0tPGJyPiZuYnNwO3NyYy9sal9zeXNwcm9mLmMgfCAy ICstPGJyPiZuYnNwO3NyYy9sal93YnVmLmggfCAyICstPGJyPiZuYnNwO3NyYy9sdWFqaXQtZ2Ri LnB5IHwgNiArKystLS08YnI+Jm5ic3A7c3JjL2x1YWppdF9sbGRiLnB5IHwgNiArKystLS08YnI+ Jm5ic3A7dGVzdC9MdWFKSVQtdGVzdHMvc3JjL2N0ZXN0LmMgfCAyICstPGJyPiZuYnNwO3Rlc3Qv dGFyYW50b29sLXRlc3RzL0NNYWtlTGlzdHMudHh0IHwgMiArLTxicj4mbmJzcDt0ZXN0L3RhcmFu dG9vbC10ZXN0cy9maXgtZW1pdC1ybWEudGVzdC5sdWEgfCAyICstPGJyPiZuYnNwO3Rlc3QvdGFy YW50b29sLXRlc3RzL2doLTQxOTktZ2M2NC1mdXNlLnRlc3QubHVhIHwgMiArLTxicj4mbmJzcDsu Li4vZ2gtNjA5Ni1leHRlcm5hbC11bndpbmRpbmctb24tYXJtNjQudGVzdC5sdWEgfCAyICstPGJy PiZuYnNwO3Rlc3QvdGFyYW50b29sLXRlc3RzL2doLTYxNjMtbWluLW1heC50ZXN0Lmx1YSB8IDIg Ky08YnI+Jm5ic3A7dGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNDE2LXhvci1iZWZvcmUtamNjLnRl c3QubHVhIHwgMiArLTxicj4mbmJzcDsuLi4vbGotNDI2LWFybTY0LWluY29ycmVjdC1jaGVjay1j bG9zZWQtdXYudGVzdC5sdWEgfCAyICstPGJyPiZuYnNwOy4uLi9sai01MTItcHJvZmlsZXItaG9v ay1maW5hbGl6ZXJzLnRlc3QubHVhIHwgNCArKy0tPGJyPiZuYnNwO3Rlc3QvdGFyYW50b29sLXRl c3RzL2xqLTYwMy1lcnItc25hcC1yZXN0b3JlLnRlc3QubHVhIHwgMiArLTxicj4mbmJzcDt0ZXN0 L3RhcmFudG9vbC10ZXN0cy9taXNjbGliLW1lbXByb2YtbGFwaS50ZXN0Lmx1YSB8IDYgKysrLS0t PGJyPiZuYnNwO3Rlc3QvdGFyYW50b29sLXRlc3RzL3RhcC5sdWEgfCA0ICsrLS08YnI+Jm5ic3A7 dGVzdC90YXJhbnRvb2wtdGVzdHMvdW5pdC1qaXQtcGFyc2UudGVzdC5sdWEgfCAyICstPGJyPiZu YnNwO3Rvb2xzL21lbXByb2YvcGFyc2UubHVhIHwgNCArKy0tPGJyPiZuYnNwO3Rvb2xzL21lbXBy b2YvcHJvY2Vzcy5sdWEgfCA0ICsrLS08YnI+Jm5ic3A7MTkgZmlsZXMgY2hhbmdlZCwgMjkgaW5z ZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pPGJyPjxicj5kaWZmIC0tZ2l0IGEvc3JjL2xqX3N5 c3Byb2YuYyBiL3NyYy9sal9zeXNwcm9mLmM8YnI+aW5kZXggMmU5ZWQ5YjMuLjc0NWViMWEzIDEw MDY0NDxicj4tLS0gYS9zcmMvbGpfc3lzcHJvZi5jPGJyPisrKyBiL3NyYy9sal9zeXNwcm9mLmM8 YnI+QEAgLTQ4NSw3ICs0ODUsNyBAQCBpbnQgbGpfc3lzcHJvZl9zdG9wKGx1YV9TdGF0ZSAqTCk8 YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7aWYgKFNQU19IQUxUID09IHNwLSZndDtzdGF0ZSkgezxicj4m bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtlcnJubyA9IHNwLSZndDtzYXZlZF9lcnJubzs8 YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7c3AtJmd0O3N0YXRlID0gU1BTX0lETEU7 PGJyPi0gLyogd2J1ZiB3YXMgdGVybWluYXRlZCB3aGVuIGVycm9yIG9jY3VyZWQuICovPGJyPisg Lyogd2J1ZiB3YXMgdGVybWluYXRlZCB3aGVuIGVycm9yIG9jY3VycmVkLiAqLzxicj4mbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtyZXR1cm4gUFJPRklMRV9FUlJJTzs8YnI+Jm5ic3A7Jm5i c3A7Jm5ic3A7fTxicj4mbmJzcDs8YnI+ZGlmZiAtLWdpdCBhL3NyYy9sal93YnVmLmggYi9zcmMv bGpfd2J1Zi5oPGJyPmluZGV4IDllYWE1ZTUxLi4zM2VjODQ2MyAxMDA2NDQ8YnI+LS0tIGEvc3Jj L2xqX3didWYuaDxicj4rKysgYi9zcmMvbGpfd2J1Zi5oPGJyPkBAIC03NSw3ICs3NSw3IEBAIHZv aWQgbGpfd2J1Zl9hZGRuKHN0cnVjdCBsal93YnVmICpidWYsIGNvbnN0IHZvaWQgKnNyYywgc2l6 ZV90IG4pOzxicj4mbmJzcDsvKiBXcml0ZSBzdHJpbmcgdG8gdGhlIGJ1ZmZlci4gKi88YnI+Jm5i c3A7dm9pZCBMSl9GQVNUQ0FMTCBsal93YnVmX2FkZHN0cmluZyhzdHJ1Y3QgbGpfd2J1ZiAqYnVm LCBjb25zdCBjaGFyICpzKTs8YnI+Jm5ic3A7PGJyPi0vKiBJbW1lZGlhdGx5IGZsdXNoIHRoZSBi dWZmZXIuICovPGJyPisvKiBJbW1lZGlhdGVseSBmbHVzaCB0aGUgYnVmZmVyLiAqLzxicj4mbmJz cDt2b2lkIExKX0ZBU1RDQUxMIGxqX3didWZfZmx1c2goc3RydWN0IGxqX3didWYgKmJ1Zik7PGJy PiZuYnNwOzxicj4mbmJzcDsvKiBDaGVjayBmbGFncy4gKi88YnI+ZGlmZiAtLWdpdCBhL3NyYy9s dWFqaXQtZ2RiLnB5IGIvc3JjL2x1YWppdC1nZGIucHk8YnI+aW5kZXggOTZlZTIyODkuLmFmZGZl Y2Q5IDEwMDY0NDxicj4tLS0gYS9zcmMvbHVhaml0LWdkYi5weTxicj4rKysgYi9zcmMvbHVhaml0 LWdkYi5weTxicj5AQCAtMjY4LDcgKzI2OCw3IEBAIGRlZiBzdHJkYXRhKG9iaik6PGJyPiZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3RyeTo8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cmV0dXJuIHN0cihjYXN0KCdjaGFyIConLCBj YXN0KCdHQ3N0ciAqJywgb2JqKSArIDEpKVtsZW4oUEFERElORyk6XTxicj4mbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDtleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOjxicj4tIHJldHVybiAi Jmx0O2x1YWppdC1nZGI6IGVycm9yIG9jY3VyZWQgd2hpbGUgcmVuZGVyaW5nIG5vbi1hc2NpaSBz bG90Jmd0OyI8YnI+KyByZXR1cm4gIiZsdDtsdWFqaXQtZ2RiOiBlcnJvciBvY2N1cnJlZCB3aGls ZSByZW5kZXJpbmcgbm9uLWFzY2lpIHNsb3QmZ3Q7Ijxicj4mbmJzcDs8YnI+Jm5ic3A7ZGVmIGl0 eXBlbWFwKG8pOjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpZiBMSl82NCBhbmQg bm90IExKX0dDNjQ6PGJyPkBAIC02MDYsNyArNjA2LDcgQEAgY2xhc3MgTEpEdW1wVGFibGUoTEpC YXNlKTo8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7JycnPGJyPiZuYnNwO2xqLXRh YiAmbHQ7R0N0YWIgKiZndDs8YnI+Jm5ic3A7PGJyPi1UaGUgY29tbWFuZCByZWNlaXZlcyBhIEdD dGFiIGFkcmVzcyBhbmQgZHVtcHMgdGhlIHRhYmxlIGNvbnRlbnRzOjxicj4rVGhlIGNvbW1hbmQg cmVjZWl2ZXMgYSBHQ3RhYiBhZGRyZXNzIGFuZCBkdW1wcyB0aGUgdGFibGUgY29udGVudHM6PGJy PiZuYnNwOyogTWV0YXRhYmxlIGFkZHJlc3Mgd2hldGhlciB0aGUgb25lIGlzIHNldDxicj4mbmJz cDsqIEFycmF5IHBhcnQgJmx0O2FzaXplJmd0OyBzbG90czo8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jmx0O2FzbG90IHB0ciZndDs6IFsmbHQ7aW5kZXgmZ3Q7XTogJmx0O3R2Jmd0Ozxicj5AQCAtNjc3 LDcgKzY3Nyw3IEBAIGNvcm91dGluZSBndWVzdCBzdGFjazo8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7KyBDUDogUHJvdGVjdGVkIEMgZnJhbWU8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7KyBQUDogVk0gcGVyZm9ybXMgYSBjYWxsIGFzIGEgcmVzdWx0IG9mIGV4ZWN1 dGluaWcgcGNhbGwgb3IgeHBjYWxsPGJyPiZuYnNwOzxicj4tSWYgTCBpcyBvbW1pdGVkIHRoZSBt YWluIGNvcm91dGluZSBpcyB1c2VkLjxicj4rSWYgTCBpcyBvbWl0dGVkIHRoZSBtYWluIGNvcm91 dGluZSBpcyB1c2VkLjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsnJyc8YnI+Jm5i c3A7PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2RlZiBpbnZva2Uoc2VsZiwgYXJn LCBmcm9tX3R0eSk6PGJyPmRpZmYgLS1naXQgYS9zcmMvbHVhaml0X2xsZGIucHkgYi9zcmMvbHVh aml0X2xsZGIucHk8YnI+aW5kZXggOWVlMTAyNjkuLjRkN2JlZjgxIDEwMDY0NDxicj4tLS0gYS9z cmMvbHVhaml0X2xsZGIucHk8YnI+KysrIGIvc3JjL2x1YWppdF9sbGRiLnB5PGJyPkBAIC00OTAs NyArNDkwLDcgQEAgZGVmIHN0cmRhdGEob2JqKTo8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cHRyID0gY2FzdCgnY2hhciAqJywgb2JqICsg MSk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7cmV0dXJuIHB0ci5zdW1tYXJ5PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2V4 Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6PGJyPi0gcmV0dXJuICImbHQ7bHVhaml0LWxsZGI6IGVy cm9yIG9jY3VyZWQgd2hpbGUgcmVuZGVyaW5nIG5vbi1hc2NpaSBzbG90Jmd0OyI8YnI+KyByZXR1 cm4gIiZsdDtsdWFqaXQtbGxkYjogZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVuZGVyaW5nIG5vbi1h c2NpaSBzbG90Jmd0OyI8YnI+Jm5ic3A7PGJyPiZuYnNwO2RlZiBpdHlwZShvKTo8YnI+Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cmV0dXJuIHRvdTMyKG8uaXQ2NCAmZ3Q7Jmd0OyA0Nykg aWYgTEpfR0M2NCBlbHNlIG8uaXQ8YnI+QEAgLTkwOSw3ICs5MDksNyBAQCBjbGFzcyBMSkR1bXBU YWJsZShDb21tYW5kKTo8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7JycnPGJyPiZu YnNwO2xqLXRhYiAmbHQ7R0N0YWIgKiZndDs8YnI+Jm5ic3A7PGJyPi1UaGUgY29tbWFuZCByZWNl aXZlcyBhIEdDdGFiIGFkcmVzcyBhbmQgZHVtcHMgdGhlIHRhYmxlIGNvbnRlbnRzOjxicj4rVGhl IGNvbW1hbmQgcmVjZWl2ZXMgYSBHQ3RhYiBhZGRyZXNzIGFuZCBkdW1wcyB0aGUgdGFibGUgY29u dGVudHM6PGJyPiZuYnNwOyogTWV0YXRhYmxlIGFkZHJlc3Mgd2hldGhlciB0aGUgb25lIGlzIHNl dDxicj4mbmJzcDsqIEFycmF5IHBhcnQgJmx0O2FzaXplJmd0OyBzbG90czo8YnI+Jm5ic3A7Jm5i c3A7Jm5ic3A7Jmx0O2FzbG90IHB0ciZndDs6IFsmbHQ7aW5kZXgmZ3Q7XTogJmx0O3R2Jmd0Ozxi cj5AQCAtOTc5LDcgKzk3OSw3IEBAIGNvcm91dGluZSBndWVzdCBzdGFjazo8YnI+Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7KyBDUDogUHJvdGVjdGVkIEMgZnJhbWU8YnI+Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7KyBQUDogVk0gcGVyZm9ybXMgYSBjYWxsIGFzIGEgcmVzdWx0 IG9mIGV4ZWN1dGluaWcgcGNhbGwgb3IgeHBjYWxsPGJyPiZuYnNwOzxicj4tSWYgTCBpcyBvbW1p dGVkIHRoZSBtYWluIGNvcm91dGluZSBpcyB1c2VkLjxicj4rSWYgTCBpcyBvbWl0dGVkIHRoZSBt YWluIGNvcm91dGluZSBpcyB1c2VkLjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsn Jyc8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ZGVmIGV4ZWN1dGUoc2VsZiwgZGVi dWdnZXIsIGFyZ3MsIHJlc3VsdCk6PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO2wgPSBzZWxmLnBhcnNlKGFyZ3MpPGJyPmRpZmYgLS1naXQg YS90ZXN0L0x1YUpJVC10ZXN0cy9zcmMvY3Rlc3QuYyBiL3Rlc3QvTHVhSklULXRlc3RzL3NyYy9j dGVzdC5jPGJyPmluZGV4IGQyNTc1NjdiLi5lOTlmMjMwNiAxMDA2NDQ8YnI+LS0tIGEvdGVzdC9M dWFKSVQtdGVzdHMvc3JjL2N0ZXN0LmM8YnI+KysrIGIvdGVzdC9MdWFKSVQtdGVzdHMvc3JjL2N0 ZXN0LmM8YnI+QEAgLTIzNCw3ICsyMzQsNyBAQCBzdGF0aWMgaW50IGNvc3RhdHVzKGx1YV9TdGF0 ZSAqTCwgbHVhX1N0YXRlICpjbykgezxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDtlbHNlPGJyPiZuYnNwOyByZXR1cm4gQ09fU1VTOyAvKiBpbml0aWFsIHN0YXRl ICovPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO308YnI+LSBkZWZhdWx0OiAvKiBz b21lIGVycm9yIG9jY3VyZWQgKi88YnI+KyBkZWZhdWx0OiAvKiBzb21lIGVycm9yIG9jY3VycmVk ICovPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3JldHVybiBD T19ERUFEOzxicj4mbmJzcDsmbmJzcDsmbmJzcDt9PGJyPiZuYnNwO308YnI+ZGlmZiAtLWdpdCBh L3Rlc3QvdGFyYW50b29sLXRlc3RzL0NNYWtlTGlzdHMudHh0IGIvdGVzdC90YXJhbnRvb2wtdGVz dHMvQ01ha2VMaXN0cy50eHQ8YnI+aW5kZXggNjIxOGY3NmEuLmYwYmY4ZWZiIDEwMDY0NDxicj4t LS0gYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9DTWFrZUxpc3RzLnR4dDxicj4rKysgYi90ZXN0L3Rh cmFudG9vbC10ZXN0cy9DTWFrZUxpc3RzLnR4dDxicj5AQCAtMTMyLDcgKzEzMiw3IEBAIGVsc2Uo KTxicj4mbmJzcDtlbmRpZigpPGJyPiZuYnNwOzxicj4mbmJzcDsjIExVQV9DUEFUSCBhbmQgTERf TElCUkFSWV9QQVRIIHZhcmlhYmxlcyBhbmQgYWxzbyBURVNUTElCUyBsaXN0PGJyPi0jIHdpdGgg ZGVwZW5kZWNpZXMgYXJlIHNldCBpbiBzY29wZSBvZiBCdWlsZFRlc3RMaWIgbWFjcm8uPGJyPisj IHdpdGggZGVwZW5kZW5jaWVzIGFyZSBzZXQgaW4gc2NvcGUgb2YgQnVpbGRUZXN0TGliIG1hY3Jv Ljxicj4mbmJzcDthZGRfY3VzdG9tX3RhcmdldCh0YXJhbnRvb2wtdGVzdHM8YnI+Jm5ic3A7Jm5i c3A7Jm5ic3A7REVQRU5EUyAke0xVQUpJVF9URVNUX0JJTkFSWX0gJHtURVNUTElCU308YnI+Jm5i c3A7KTxicj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvZml4LWVtaXQtcm1hLnRl c3QubHVhIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMvZml4LWVtaXQtcm1hLnRlc3QubHVhPGJyPmlu ZGV4IDQyODA0NDQ3Li5jYzk3ZmY0ZCAxMDA2NDQ8YnI+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVz dHMvZml4LWVtaXQtcm1hLnRlc3QubHVhPGJyPisrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2Zp eC1lbWl0LXJtYS50ZXN0Lmx1YTxicj5AQCAtNCw3ICs0LDcgQEAgbG9jYWwgdGVzdCA9IHRhcC50 ZXN0KCdmaXgtZW1pdC1ybWEnKTpza2lwY29uZCh7PGJyPiZuYnNwOyZuYnNwOyZuYnNwO1snVGVz dCByZXF1aXJlcyBHQzY0IG1vZGUgZW5hYmxlZCddID0gbm90IHJlcXVpcmUoJ2ZmaScpLmFiaSgn Z2M2NCcpLDxicj4mbmJzcDt9KTxicj4mbmJzcDs8YnI+LS0tIE5lZWQgdG8gdGVzdCAyIGNhc2Vz IG9mIGBlbWl0X3JtYSgpYCBwYXJ0aWN1bGFyeSBvbiB4NjQ6PGJyPistLSBOZWVkIHRvIHRlc3Qg MiBjYXNlcyBvZiBgZW1pdF9ybWEoKWAgcGFydGljdWxhcmx5IG9uIHg2NDo8YnI+Jm5ic3A7LS0g KiBgSVJfTERFWFBgIHdpdGggYGZsZGAgaW5zdHJ1Y3Rpb24gZm9yIGxvYWRpbmcgY29uc3RhbnQ8 YnI+Jm5ic3A7LS0gbnVtYmVyIGBUVmFsdWVgIGJ5IGFkZHJlc3MuPGJyPiZuYnNwOy0tICogYElS X09CQVJgIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgYHRlc3RgIGluc3RydWN0aW9uIG9uPGJyPmRp ZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC00MTk5LWdjNjQtZnVzZS50ZXN0Lmx1 YSBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL2doLTQxOTktZ2M2NC1mdXNlLnRlc3QubHVhPGJyPmlu ZGV4IGNhMDUwY2YwLi44NzdmNzg4NCAxMDA2NDQ8YnI+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVz dHMvZ2gtNDE5OS1nYzY0LWZ1c2UudGVzdC5sdWE8YnI+KysrIGIvdGVzdC90YXJhbnRvb2wtdGVz dHMvZ2gtNDE5OS1nYzY0LWZ1c2UudGVzdC5sdWE8YnI+QEAgLTQ0LDcgKzQ0LDcgQEAgZm9yIG4g PSAxLCAxMDAgZG88YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Zm9yIGkgPSAxLCA1IGRvPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOy0tIFRoaXMgY29uc3RhbnQgZnVzaW9uIGxlYWRzIHRvIHRoZSB0ZXN0 IGZhaWx1cmUuPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwO2FbaV0gPSAwPGJyPi0gLS0gVGhpcyBzdW1tIGlzIG5vdCBuZWNlc3NhcnJ5IGJ1 dCBkZWNyZWFzZXMgdGhlIGFtb3VudCBvZjxicj4rIC0tIFRoaXMgc3VtbSBpcyBub3QgbmVjZXNz YXJ5IGJ1dCBkZWNyZWFzZXMgdGhlIGFtb3VudCBvZjxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDstLSBpdGVyYXRpb25zLjxicj4mbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDthW2ldID0gYVtp XSArIHggKyB5PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOy0tIFVzZSBhbGwgRlBSIHJlZ2lzdGVycyBhbmQgb25lIHZhbHVlIGZyb20gdGhl IG1lbW9yeTxicj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNjA5Ni1leHRl cm5hbC11bndpbmRpbmctb24tYXJtNjQudGVzdC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9n aC02MDk2LWV4dGVybmFsLXVud2luZGluZy1vbi1hcm02NC50ZXN0Lmx1YTxicj5pbmRleCAwOTdl NzcxYy4uMDBmNTg2NDIgMTAwNjQ0PGJyPi0tLSBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL2doLTYw OTYtZXh0ZXJuYWwtdW53aW5kaW5nLW9uLWFybTY0LnRlc3QubHVhPGJyPisrKyBiL3Rlc3QvdGFy YW50b29sLXRlc3RzL2doLTYwOTYtZXh0ZXJuYWwtdW53aW5kaW5nLW9uLWFybTY0LnRlc3QubHVh PGJyPkBAIC0xLDYgKzEsNiBAQDxicj4mbmJzcDtsb2NhbCB0YXAgPSByZXF1aXJlKCd0YXAnKTxi cj4mbmJzcDs8YnI+LS0tIFRlc3QgZmlsZSB0byBjaGVjayBjb3JyZWN0bmVzIG9mIGV4dGVybmFs IHVud2luZGluZzxicj4rLS0gVGVzdCBmaWxlIHRvIGNoZWNrIGNvcnJlY3RuZXNzIG9mIGV4dGVy bmFsIHVud2luZGluZzxicj4mbmJzcDstLSBpbiBMdWFKSVQuPGJyPiZuYnNwOy0tIFNlZSBhbHNv IDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9MdWFKSVQvTHVhSklUL2lzc3Vlcy82OTgiIHRh cmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vTHVhSklUL0x1YUpJVC9pc3N1ZXMvNjk4 PC9hPiw8YnI+Jm5ic3A7LS0gPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL0x1YUpJVC9MdWFK SVQvcHVsbC83NTciIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vTHVhSklUL0x1 YUpJVC9wdWxsLzc1NzwvYT4uPGJyPmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9n aC02MTYzLW1pbi1tYXgudGVzdC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC02MTYzLW1p bi1tYXgudGVzdC5sdWE8YnI+aW5kZXggNjM0Mzc5NTUuLjNiN2E4ZTAzIDEwMDY0NDxicj4tLS0g YS90ZXN0L3RhcmFudG9vbC10ZXN0cy9naC02MTYzLW1pbi1tYXgudGVzdC5sdWE8YnI+KysrIGIv dGVzdC90YXJhbnRvb2wtdGVzdHMvZ2gtNjE2My1taW4tbWF4LnRlc3QubHVhPGJyPkBAIC01Myw3 ICs1Myw3IEBAIGxvY2FsIHggPSAxPGJyPiZuYnNwOzxicj4mbmJzcDtqaXQub3B0LnN0YXJ0KCdo b3Rsb29wPTEnKTxicj4mbmJzcDs8YnI+LS0tIFhYWDogTG9vcGluZyBvdmVyIHRoZSBvcGVyYXRp b25zIGFuZCB0aGVpciBhcmd1bWVudHMgYnJlYWtlcyB0aGU8YnI+Ky0tIFhYWDogTG9vcGluZyBv dmVyIHRoZSBvcGVyYXRpb25zIGFuZCB0aGVpciBhcmd1bWVudHMgYnJlYWtzIHRoZTxicj4mbmJz cDstLSBzZW1hbnRpY3Mgb2Ygc29tZSBvcHRpbWl6YXRpb24gdGVzdHMgYmVsb3cuIFRoZSBjYXNl cyBhcmU8YnI+Jm5ic3A7LS0gY29weS1wYXN0ZWQgdG8gcHJlc2VydmUgb3B0aW1pemF0aW9uIHNl bWFudGljcy48YnI+Jm5ic3A7PGJyPmRpZmYgLS1naXQgYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9s ai00MTYteG9yLWJlZm9yZS1qY2MudGVzdC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00 MTYteG9yLWJlZm9yZS1qY2MudGVzdC5sdWE8YnI+aW5kZXggNjA1YmI5MmEuLmY3MWM5ZWU0IDEw MDY0NDxicj4tLS0gYS90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00MTYteG9yLWJlZm9yZS1qY2Mu dGVzdC5sdWE8YnI+KysrIGIvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNDE2LXhvci1iZWZvcmUt amNjLnRlc3QubHVhPGJyPkBAIC00MSw3ICs0MSw3IEBAIGxvY2FsIHRlc3R4b3IgPSBmZmkubG9h ZCgnbGlidGVzdHhvcicpPGJyPiZuYnNwOy0tIHByZXNzdXJlIGFuZCBzcGVjaWZpYyByZWdpc3Rl cnMgYWxsb2NhdGlvbnMuPGJyPiZuYnNwO2xvY2FsIGhhbmRsZXIgPSBzZXRtZXRhdGFibGUoe30s IHs8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7X19uZXdpbmRleCA9IGZ1bmN0aW9uICgpPGJyPi0gLS0g MCBhbmQgbmlsIGFyZSBzdWdnZXN0ZWQgYXMgZGlmZmVybnQgY29uc3RhbnQtemVybyB2YWx1ZXM8 YnI+KyAtLSAwIGFuZCBuaWwgYXJlIHN1Z2dlc3RlZCBhcyBkaWZmZXJlbnQgY29uc3RhbnQtemVy byB2YWx1ZXM8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LS0gZm9yIHRoZSBjYWxs IGFuZCBvY2N1cGllZCBkaWZmZXJlbnQgcmVnaXN0ZXJzLjxicj4mbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDt0ZXN0eG9yLnRlc3RfeG9yX2Z1bmMoMCwgMCwgMCwgMCwgMCwgMCwgbmlsLCAw KTxicj4mbmJzcDsmbmJzcDsmbmJzcDtlbmQ8YnI+ZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29s LXRlc3RzL2xqLTQyNi1hcm02NC1pbmNvcnJlY3QtY2hlY2stY2xvc2VkLXV2LnRlc3QubHVhIGIv dGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNDI2LWFybTY0LWluY29ycmVjdC1jaGVjay1jbG9zZWQt dXYudGVzdC5sdWE8YnI+aW5kZXggYTY4OWVkNjAuLmVhMDFiYTA2IDEwMDY0NDxicj4tLS0gYS90 ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00MjYtYXJtNjQtaW5jb3JyZWN0LWNoZWNrLWNsb3NlZC11 di50ZXN0Lmx1YTxicj4rKysgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai00MjYtYXJtNjQtaW5j b3JyZWN0LWNoZWNrLWNsb3NlZC11di50ZXN0Lmx1YTxicj5AQCAtMTQsNyArMTQsNyBAQCBkbzxi cj4mbmJzcDsmbmJzcDsmbmJzcDstLSBUaGUgZnVuY3Rpb24ncyBwcm90b3R5cGUgaXMgY3JlYXRl ZCB3aXRoIHRoZSBmb2xsb3dpbmc8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7LS0gY29uc3RhbnRzIGF0 IGNodW5rIHBhcnNpbmcuIEFmdGVyIGFkZGluZyB0aGlzIGNvbnN0YW50IHRvPGJyPiZuYnNwOyZu YnNwOyZuYnNwOy0tIHRoZSBmdW5jdGlvbidzIHByb3RvdHlwZSBpdCB3aWxsIGJlIG1hcmtlZCBh cyBncmF5IGR1cmluZzxicj4tIC0tIHByb3BvZ2F0ZSBwaGFzZS48YnI+KyAtLSBwcm9wYWdhdGUg cGhhc2UuPGJyPiZuYnNwOyZuYnNwOyZuYnNwO2xvY2FsIGZ1bmN0aW9uIHVzZXRzKCkgdXYgPSAn JyBlbmQ8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7X0cudXNldHMgPSB1c2V0czxicj4mbmJzcDtlbmQ8 YnI+ZGlmZiAtLWdpdCBhL3Rlc3QvdGFyYW50b29sLXRlc3RzL2xqLTUxMi1wcm9maWxlci1ob29r LWZpbmFsaXplcnMudGVzdC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai01MTItcHJvZmls ZXItaG9vay1maW5hbGl6ZXJzLnRlc3QubHVhPGJyPmluZGV4IGEyODJhMTBmLi5mMDJiZDA1ZiAx MDA2NDQ8YnI+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvbGotNTEyLXByb2ZpbGVyLWhvb2st ZmluYWxpemVycy50ZXN0Lmx1YTxicj4rKysgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9sai01MTIt cHJvZmlsZXItaG9vay1maW5hbGl6ZXJzLnRlc3QubHVhPGJyPkBAIC0yMCw5ICsyMCw5IEBAIGxv Y2FsIGZpbmlzaCA9IG9zLmNsb2NrKCk8YnI+Jm5ic3A7PGJyPiZuYnNwO3Byb2ZpbGUuc3RvcCgp PGJyPiZuYnNwOzxicj4tLS0gWFhYOiBUaGUgYnVnIGlzIG9jY3VyZWQgYXMgc3RvcHBpbmcgb2Yg Y2FsbGJhY2tzIGludm9jYXRpb24sPGJyPistLSBYWFg6IFRoZSBidWcgaXMgb2NjdXJyZWQgYXMg c3RvcHBpbmcgb2YgY2FsbGJhY2tzIGludm9jYXRpb24sPGJyPiZuYnNwOy0tIHdoZW4gYSBuZXcg dGljayBzdHJpa2VzIGluc2lkZSBgZ2NfY2FsbF9maW5hbGl6ZXIoKWAuPGJyPi0tLSBUaGUgYW1v dW50IG9mIHN1Y2Nlc3NmdWxsIGNhbGxiYWNrcyBpc24ndCBzdGFibGUgKDItMTUpLjxicj4rLS0g VGhlIGFtb3VudCBvZiBzdWNjZXNzZnVsIGNhbGxiYWNrcyBpc24ndCBzdGFibGUgKDItMTUpLjxi cj4mbmJzcDstLSBTbywgYXNzdW1lIHRoYXQgYW1vdW50IG9mIHByb2ZpbGluZyBzYW1wbGVzIHNo b3VsZCBiZSBhdCBsZWFzdDxicj4mbmJzcDstLSBtb3JlIHRoYW4gMC41IGludGVydmFscyBvZiB0 aW1lIGR1cmluZyBzYW1wbGluZy48YnI+Jm5ic3A7dGVzdDpvayhuc2FtcGxlcyAmZ3Q7PSAwLjUg KiAoZmluaXNoIC0gc3RhcnQpICogMWUzIC8gSU5URVJWQUwsPGJyPmRpZmYgLS1naXQgYS90ZXN0 L3RhcmFudG9vbC10ZXN0cy9sai02MDMtZXJyLXNuYXAtcmVzdG9yZS50ZXN0Lmx1YSBiL3Rlc3Qv dGFyYW50b29sLXRlc3RzL2xqLTYwMy1lcnItc25hcC1yZXN0b3JlLnRlc3QubHVhPGJyPmluZGV4 IDc5MTEwN2JhLi45NmViZjkyYyAxMDA2NDQ8YnI+LS0tIGEvdGVzdC90YXJhbnRvb2wtdGVzdHMv bGotNjAzLWVyci1zbmFwLXJlc3RvcmUudGVzdC5sdWE8YnI+KysrIGIvdGVzdC90YXJhbnRvb2wt dGVzdHMvbGotNjAzLWVyci1zbmFwLXJlc3RvcmUudGVzdC5sdWE8YnI+QEAgLTExLDcgKzExLDcg QEAgbG9jYWwgZnVuY3Rpb24gZG9fdGVzdCgpPGJyPiZuYnNwOyZuYnNwOyZuYnNwO2xvY2FsIHJl Y3Vyc2l2ZV9mPGJyPiZuYnNwOyZuYnNwOyZuYnNwO2xvY2FsIGZ1bmN0aW9uIGVycmZ1bmMoKTxi cj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt4cGNhbGwocmVjdXJzaXZlX2YsIGVycmZ1 bmMpPGJyPi0gLS0gU2luY2UgdGhpcyBlcnJvciBpcyBvY2N1cmVkIG9uIHNuYXBzaG90IHJlc3Rv cmF0aW9uIGFuZCBjYW48YnI+KyAtLSBTaW5jZSB0aGlzIGVycm9yIGlzIG9jY3VycmVkIG9uIHNu YXBzaG90IHJlc3RvcmF0aW9uIGFuZCBjYW48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7LS0gYmUgaGFuZGxlZCBieSBjb21waWxlciBpdHNlbGYsIHdlIHNob3VsZG4ndCBib3RoZXIg YSB1c2VyPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy0tIHdpdGggaXQuPGJyPiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2hhbmRsZXJfaXNfY2FsbGVkID0gdHJ1ZTxicj5k aWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvbWlzY2xpYi1tZW1wcm9mLWxhcGkudGVz dC5sdWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy9taXNjbGliLW1lbXByb2YtbGFwaS50ZXN0Lmx1 YTxicj5pbmRleCAzY2I1YzhiZS4uMjBjZmVmMjEgMTAwNjQ0PGJyPi0tLSBhL3Rlc3QvdGFyYW50 b29sLXRlc3RzL21pc2NsaWItbWVtcHJvZi1sYXBpLnRlc3QubHVhPGJyPisrKyBiL3Rlc3QvdGFy YW50b29sLXRlc3RzL21pc2NsaWItbWVtcHJvZi1sYXBpLnRlc3QubHVhPGJyPkBAIC01MiwxMyAr NTIsMTMgQEAgbG9jYWwgZnVuY3Rpb24gZ2VuZXJhdGVfb3V0cHV0KGZpbGVuYW1lLCBwYXlsb2Fk KTxicj4mbmJzcDsmbmJzcDsmbmJzcDtjb2xsZWN0Z2FyYmFnZSgpPGJyPiZuYnNwOzxicj4mbmJz cDsmbmJzcDsmbmJzcDtsb2NhbCByZXMsIGVyciA9IG1pc2MubWVtcHJvZi5zdGFydChmaWxlbmFt ZSk8YnI+LSAtLSBTaG91bGQgc3RhcnQgc3VjY2VzZnVsbHkuPGJyPisgLS0gU2hvdWxkIHN0YXJ0 IHN1Y2Nlc3NmdWxseS48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7YXNzZXJ0KHJlcywgZXJyKTxicj4m bmJzcDs8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7cGF5bG9hZCgpPGJyPiZuYnNwOzxicj4mbmJzcDsm bmJzcDsmbmJzcDtyZXMsIGVyciA9IG1pc2MubWVtcHJvZi5zdG9wKCk8YnI+LSAtLSBTaG91bGQg c3RvcCBzdWNjZXNmdWxseS48YnI+KyAtLSBTaG91bGQgc3RvcCBzdWNjZXNzZnVsbHkuPGJyPiZu YnNwOyZuYnNwOyZuYnNwO2Fzc2VydChyZXMsIGVycik8YnI+Jm5ic3A7ZW5kPGJyPiZuYnNwOzxi cj5AQCAtMTg4LDcgKzE4OCw3IEBAIHRlc3Q6dGVzdCgib3V0cHV0IiwgZnVuY3Rpb24oc3VidGVz dCk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7LS0gQ2hlY2sgYWxsb2NhdGlvbiByZXBvcnRzLiBUaGUg c2Vjb25kIGFyZ3VtZW50IGlzIGEgbGluZTxicj4mbmJzcDsmbmJzcDsmbmJzcDstLSBudW1iZXIg b2YgdGhlIGFsbG9jYXRpb24gZXZlbnQgaXRzZWxmLiBUaGUgdGhpcmQgaXMgYSBsaW5lPGJyPiZu YnNwOyZuYnNwOyZuYnNwOy0tIG51bWJlciBvZiB0aGUgY29ycmVzcG9uZGluZyBmdW5jdGlvbiBk ZWZpbml0aW9uLiBUaGUgbGFzdDxicj4tIC0tIG9uZSBpcyB0aGUgbnVtYmVyIG9mIGFsbG9jYXRp b25zLiAxIGV2ZW50IC0gYWxvY2F0aW9uIG9mPGJyPisgLS0gb25lIGlzIHRoZSBudW1iZXIgb2Yg YWxsb2NhdGlvbnMuIDEgZXZlbnQgLSBhbGxvY2F0aW9uIG9mPGJyPiZuYnNwOyZuYnNwOyZuYnNw Oy0tIHRhYmxlIGJ5IGl0c2VsZiArIDEgYWxsb2NhdGlvbiBvZiBhcnJheSBwYXJ0IGFzIGZhciBp dCBpczxicj4mbmJzcDsmbmJzcDsmbmJzcDstLSBiaWdnZXIgdGhhbiBMSl9NQVhfQ09MT1NJWkUg KDE2KS48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7c3VidGVzdDpvayhjaGVja19hbGxvY19yZXBvcnQo YWxsb2MsIHsgbGluZSA9IDM3LCBsaW5lZGVmaW5lZCA9IDM1IH0sIDIpKTxicj5kaWZmIC0tZ2l0 IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvdGFwLmx1YSBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL3Rh cC5sdWE8YnI+aW5kZXggODU1OWVlNTIuLjU1YjdkZDcyIDEwMDY0NDxicj4tLS0gYS90ZXN0L3Rh cmFudG9vbC10ZXN0cy90YXAubHVhPGJyPisrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL3RhcC5s dWE8YnI+QEAgLTEsNiArMSw2IEBAPGJyPiZuYnNwOy0tLSB0YXAubHVhIGludGVybmFsIGZpbGUu PGJyPiZuYnNwOy0tLTxicj4tLS0tIFRoZSBUZXN0IEFueXRoaW5nIFByb3RvY29sIHZlc2lvbiAx MyBwcm9kdWNlci48YnI+Ky0tLSBUaGUgVGVzdCBBbnl0aGluZyBQcm90b2NvbCB2ZXJzaW9uIDEz IHByb2R1Y2VyLjxicj4mbmJzcDstLS08YnI+Jm5ic3A7PGJyPiZuYnNwOy0tIEluaXRpYWxpemVy IEZGSSBmb3IgJmx0O2lzY2RhdGEmZ3Q7IGNoZWNrLjxicj5AQCAtNzksNyArNzksNyBAQCBsb2Nh bCBmdW5jdGlvbiBvayh0ZXN0LCBjb25kLCBtZXNzYWdlLCBleHRyYSk8YnI+Jm5ic3A7Jm5ic3A7 Jm5ic3A7aW8ud3JpdGUodGluZGVudCwgKCJsaW5lOlx0JXNcbiIpOmZvcm1hdCh0cmFjZVsjdHJh Y2VdLmxpbmUpKTxicj4mbmJzcDsmbmJzcDsmbmJzcDtmb3IgZnJhbWVubywgZnJhbWUgaW4gaXBh aXJzKHRyYWNlKSBkbzxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpby53cml0ZSh0 aW5kZW50LCAoImZyYW1lICMlZFxuIik6Zm9ybWF0KGZyYW1lbm8pKTxicj4tIC0tIFhYWDogVXNl ICJoYWxmIGluZGVudCIgdG8gZHVtcCAmbHQ7ZnJhbWUmZ3Q7IGZpZWxzLjxicj4rIC0tIFhYWDog VXNlICJoYWxmIGluZGVudCIgdG8gZHVtcCAmbHQ7ZnJhbWUmZ3Q7IGZpZWxkcy48YnI+Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7bG9jYWwgZmluZGVudCA9IGluZGVudCgwLjUpIC4uIHRp bmRlbnQ8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Zm9yIGtleSwgdmFsdWUgaW4g cGFpcnMoZnJhbWUpIGRvPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwO2lvLndyaXRlKGZpbmRlbnQsICgiJXM6XHQlc1xuIik6Zm9ybWF0KGtleSwgdmFsdWUpKTxi cj5kaWZmIC0tZ2l0IGEvdGVzdC90YXJhbnRvb2wtdGVzdHMvdW5pdC1qaXQtcGFyc2UudGVzdC5s dWEgYi90ZXN0L3RhcmFudG9vbC10ZXN0cy91bml0LWppdC1wYXJzZS50ZXN0Lmx1YTxicj5pbmRl eCAyZTZhMjIyOC4uYzBlNjk5YzIgMTAwNjQ0PGJyPi0tLSBhL3Rlc3QvdGFyYW50b29sLXRlc3Rz L3VuaXQtaml0LXBhcnNlLnRlc3QubHVhPGJyPisrKyBiL3Rlc3QvdGFyYW50b29sLXRlc3RzL3Vu aXQtaml0LXBhcnNlLnRlc3QubHVhPGJyPkBAIC0zOSw3ICszOSw3IEBAIGxvY2FsIGxvb3BfdHJh Y2UgPSB0cmFjZXNbMV08YnI+Jm5ic3A7Zm9yIGlybnVtID0gMSwgTl9URVNUUyBkbzxicj4mbmJz cDsmbmJzcDsmbmJzcDtsb2NhbCBpcl9wYXR0ZXJuID0gZXhwZWN0ZWRfaXJzW2lybnVtXTxicj4m bmJzcDsmbmJzcDsmbmJzcDtsb2NhbCBpcnJlZiA9IGxvb3BfdHJhY2U6aGFzX2lyKGlyX3BhdHRl cm4pPGJyPi0gdGVzdDpvayhpcnJlZiwgJ2ZpbmQgSVIgcmVmZXJuY2UgYnkgcGF0dGVybjogJyAu LiBpcl9wYXR0ZXJuKTxicj4rIHRlc3Q6b2soaXJyZWYsICdmaW5kIElSIHJlZmVyZW5jZSBieSBw YXR0ZXJuOiAnIC4uIGlyX3BhdHRlcm4pPGJyPiZuYnNwO2VuZDxicj4mbmJzcDs8YnI+Jm5ic3A7 dGVzdDpkb25lKHRydWUpPGJyPmRpZmYgLS1naXQgYS90b29scy9tZW1wcm9mL3BhcnNlLmx1YSBi L3Rvb2xzL21lbXByb2YvcGFyc2UubHVhPGJyPmluZGV4IGQ4NjUyNjdiLi4yYzA5ZGI5MCAxMDA2 NDQ8YnI+LS0tIGEvdG9vbHMvbWVtcHJvZi9wYXJzZS5sdWE8YnI+KysrIGIvdG9vbHMvbWVtcHJv Zi9wYXJzZS5sdWE8YnI+QEAgLTUyLDE0ICs1MiwxNCBAQCBsb2NhbCBmdW5jdGlvbiBsaW5rX3Rv X3ByZXZpb3VzKGhlYXBfY2h1bmssIGUsIG5zaXplKTxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDtpZiBub3QgZS5wcmltYXJ5W2hlYXBfY2h1bmtbMl1dIHRoZW48YnI+Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ZS5wcmltYXJ5W2hlYXBfY2h1bmtbMl1d ID0gezxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDtsb2MgPSBoZWFwX2NodW5rWzNdLDxicj4tIGFsbG9jZWQgPSAwLDxicj4rIGFsbG9jYXRl ZCA9IDAsPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwO2ZyZWVkID0gMCw8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Y291bnQgPSAwLDxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDt9PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2VuZDxi cj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDstLSBTYXZlIGluZm9ybWF0aW9uIGFib3V0 IGRlbHRhIGZvciBtZW1vcnkgaGVhcC48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 bG9jYWwgbG9jYXRpb25fZGF0YSA9IGUucHJpbWFyeVtoZWFwX2NodW5rWzJdXTxicj4tIGxvY2F0 aW9uX2RhdGEuYWxsb2NlZCA9IGxvY2F0aW9uX2RhdGEuYWxsb2NlZCArIG5zaXplPGJyPisgbG9j YXRpb25fZGF0YS5hbGxvY2F0ZWQgPSBsb2NhdGlvbl9kYXRhLmFsbG9jYXRlZCArIG5zaXplPGJy PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2xvY2F0aW9uX2RhdGEuZnJlZWQgPSBsb2Nh dGlvbl9kYXRhLmZyZWVkICsgaGVhcF9jaHVua1sxXTxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDtsb2NhdGlvbl9kYXRhLmNvdW50ID0gbG9jYXRpb25fZGF0YS5jb3VudCArIDE8YnI+ Jm5ic3A7Jm5ic3A7Jm5ic3A7ZW5kPGJyPmRpZmYgLS1naXQgYS90b29scy9tZW1wcm9mL3Byb2Nl c3MubHVhIGIvdG9vbHMvbWVtcHJvZi9wcm9jZXNzLmx1YTxicj5pbmRleCAwYmNiOTY1Yi4uOWRj MjAyYWUgMTAwNjQ0PGJyPi0tLSBhL3Rvb2xzL21lbXByb2YvcHJvY2Vzcy5sdWE8YnI+KysrIGIv dG9vbHMvbWVtcHJvZi9wcm9jZXNzLmx1YTxicj5AQCAtMzksOCArMzksOCBAQCBmdW5jdGlvbiBN LmZvcm1faGVhcF9kZWx0YShldmVudHMsIHN5bWJvbHMpPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO2ZvciBfLCBoZWFwX2NodW5rIGluIHBhaXJzKGV2ZW50LnBy aW1hcnkpIGRvPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwO2xvY2FsIGV2X2xpbmUgPSBzeW10YWIuZGVtYW5nbGUoc3ltYm9scywgaGVhcF9j aHVuay5sb2MpPGJyPiZuYnNwOzxicj4tIGlmIChoZWFwX2NodW5rLmFsbG9jZWQgJmd0OyAwKSB0 aGVuPGJyPi0gZGhlYXBbZXZfbGluZV0uZGJ5dGVzID0gZGhlYXBbZXZfbGluZV0uZGJ5dGVzICsg aGVhcF9jaHVuay5hbGxvY2VkPGJyPisgaWYgKGhlYXBfY2h1bmsuYWxsb2NhdGVkICZndDsgMCkg dGhlbjxicj4rIGRoZWFwW2V2X2xpbmVdLmRieXRlcyA9IGRoZWFwW2V2X2xpbmVdLmRieXRlcyAr IGhlYXBfY2h1bmsuYWxsb2NhdGVkPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2RoZWFwW2V2X2xpbmVdLm5hbGxvYyA9 IGRoZWFwW2V2X2xpbmVdLm5hbGxvYyArIGhlYXBfY2h1bmsuY291bnQ8YnI+Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ZW5kPGJyPiZuYnNwOzxi cj4tLTxicj4yLjM0LjE8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj4m bmJzcDs8L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--864d4B878450eEa46dD2E13c9C14c2De1691090990--