From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f140.i.mail.ru (f140.i.mail.ru [94.100.178.193]) (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 3E06346970E for ; Thu, 26 Dec 2019 00:06:53 +0300 (MSK) From: =?UTF-8?B?SWx5YSBLb3NhcmV2?= MIME-Version: 1.0 Date: Thu, 26 Dec 2019 00:06:51 +0300 Reply-To: =?UTF-8?B?SWx5YSBLb3NhcmV2?= Message-ID: <1577308011.424101308@f140.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--6nHRnCr966Dvt14k2zsFMA2BfJToPZsv1577308011" In-Reply-To: <20191225012935.psngzpcp7zasjvr3@tkn_work_nb> References: <20191223204833.9192-1-i.kosarev@tarantool.org> <20191225012935.psngzpcp7zasjvr3@tkn_work_nb> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_v4=5D_test=3A_fix_flaky_so?= =?utf-8?q?cket_test?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?QWxleGFuZGVyIFR1cmVua28=?= Cc: tarantool-patches@dev.tarantool.org, v.shpilevoy@tarantool.org ----ALT--6nHRnCr966Dvt14k2zsFMA2BfJToPZsv1577308011 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGkhCgpUaGFua3MgZm9yIHlvdXIgcmV2aWV3IQoKU2VudCB2NSBpbmNsdWRpbmcgYWxsIHByb3Bv c2VkIGVuaGFuY2VtZW50cy4KPtCh0YDQtdC00LAsIDI1INC00LXQutCw0LHRgNGPIDIwMTksIDQ6 MjkgKzAzOjAwINC+0YIgQWxleGFuZGVyIFR1cmVua28gPGFsZXhhbmRlci50dXJlbmtvQHRhcmFu dG9vbC5vcmc+Ogo+Cj5UaGFua3MgZm9yIHRoZSBwYXRjaCEKPgo+SSByZWFsbHkgYXBwcmVjaWF0 ZSB0aGUgd29yayBpbiBkaXJlY3Rpb24gdG93YXJkIHN0YWJsZSB0ZXN0cy4gVW5zdGFibGUKPkNJ IHNvbWV0aW1lcyBoaWRlcyByZWFsIHByb2JsZW1zLCBzbyBhY3R1YWxseSBpdCBpcyBkaXJlY3Rp b24gdG8gbWFrZQo+dGFyYW50b29sIGl0c2VsZiBtb3JlIHN0YWJsZS4KPgo+QWxsIGNoYW5nZXMg bG9vayBjb3JyZWN0LiBUaGVyZSBhcmUgcGxhY2VzIGhvd2V2ZXIgdGhhdCB3ZSBjYW4gcG9saXNo IGEKPmJpdC4gUGxlYXNlLCBjb25zaWRlciBteSBjb21tZW50cyBiZWxvdy4KPgo+SG93IEkgdGVz dGVkIGl0Ogo+Cj4kIChjZCB0ZXN0ICYmIC4vdGVzdC1ydW4ucHkgLWogMzAgLS1mb3JjZSAkKHll cyBhcHAvc29ja2V0IHwgaGVhZCAtbiAxMDAwKSkKPgo+T2JzZXJ2ZWQgdGhlIGZvbGxvd2luZyBm YWlsczoKPgo+Q2FzZSAxLgo+Cj5bMDA4XSBUZXN0IGZhaWxlZCEgUmVzdWx0IGNvbnRlbnQgbWlz bWF0Y2g6Cj5bMDA4XSAtLS0gYXBwL3NvY2tldC5yZXN1bHQJVHVlIERlYyAyNCAxNTo1NTo0MCAy MDE5Cj5bMDA4XSArKysgYXBwL3NvY2tldC5yZWplY3QJVHVlIERlYyAyNCAxNTo1NjoyNCAyMDE5 Cj5bMDA4XSBAQCAtMTM3MSw3ICsxMzcxLDcgQEAKPlswMDhdICAuLi4KPlswMDhdICBjbnQKPlsw MDhdICAtLS0KPlswMDhdIC0tIDIKPlswMDhdICstIDMKPlswMDhdICAuLi4KPlswMDhdICBjbGll bnQ6d3JpdGUoJ2hpJykKPlswMDhdICAtLS0KPgo+QW5vdGhlciBpbnN0YW5jZSBpcyBjb25uZWN0 ZWQgdG8gb3VyIHNlcnZlci4gSSBmb3VuZCB0aGF0IGl0IGlzCj5zb2NrZXQuY29ubmVjdCgpIGZy b20gJ2Nhc2U6IHNvY2tldCByZWNlaXZlIGluY29uc2lzdGVudCBiZWhhdmlvcicgKGFuZAo+dGhp cyBpcyB0aGUgcmVhc29uIG9mIGNhc2UgMyBiZWxvdykuIFRoZSBjb2RlIHRoZSB0aGUgZm9sbG93 aW5nOgo+Cj7CoHwgc3J2ID0gc29ja2V0LnRjcF9zZXJ2ZXIoJzAuMC4wLjAnLCAwLCBmbikKPsKg fCBzID0gc29ja2V0LmNvbm5lY3QoJ2xvY2FsaG9zdCcsIHNydjpuYW1lKCkucG9ydCkKPgo+bG9j YWxob3N0IG1heSBiZSByZXNvbHZlZCBpbnRvIDo6MSAoaXB2NikgYW5kIDEyNy4wLjAuMSAoaXB2 NCkuIExpbnV4Cj5hbGxvd3MgdG8gYmluZCB0aGUgc2FtZSBwb3J0IG51bWJlciBvbiBkaWZmZXJl bnQgYWRkcmVzc2VzLgo+Z2V0YWRkcmluZm8oKSBvbiBMaW51eCBnaXZlIGlwdjYgYWRkci9wb3J0 IGZpcnN0ICh1c3VhbGx5LCBkZXBlbmRzCj5vbiBzZXR0aW5ncykgYW5kIGlmIGFub3RoZXIgcHJv Y2VzcyBsaXN0ZW5zIG9uIDo6MSBvbiB0aGUgc2FtZSBwb3J0IGFzCj53ZSBib3VuZCBvbiBpcHY0 LCB3ZSdsbCBjb25uZWN0IHRvIHRoaXMgcHJvY2Vzcy4KPgo+VGhlIGNoYW5nZSB0aGF0IGVsaW1p bmF0ZXMgdGhlIGZhaWwgYWJvdmUgZm9yIG1lOgo+Cj5AQCAtOTc5LDcgKzk4Myw3IEBAIGNoYW4g PSBmaWJlci5jaGFubmVsKCkKPsKgY291bnRlciA9IDAKPsKgZm4gPSBmdW5jdGlvbihzKSBjb3Vu dGVyID0gMDsgd2hpbGUgdHJ1ZSBkbyBzOndyaXRlKCh0b3N0cmluZyhjb3VudGVyKSk6cmVwKGNo YW46Z2V0KCkpKTsgY291bnRlciA9IGNvdW50ZXIgKyAxIGVuZCBlbmQKPsKgc3J2ID0gc29ja2V0 LnRjcF9zZXJ2ZXIoJzAuMC4wLjAnLCAwLCBmbikKPi1zID0gc29ja2V0LmNvbm5lY3QoJ2xvY2Fs aG9zdCcsIHNydjpuYW1lKCkucG9ydCkKPitzID0gc29ja2V0LmNvbm5lY3QoJzEyNy4wLjAuMScs IHNydjpuYW1lKCkucG9ydCkKPsKgY2hhbjpwdXQoNSkKPsKgY2hhbjpwdXQoNSkKPsKgczpyZWNl aXZlKDUpCj4KPihDQ2VkIE1hcmlhIGFzIGF1dGhvciBvZiB0aGUgdGVzdCBjYXNlLikKPgo+SG93 ZXZlciBpdCBpcyBwb3NzaWJsZSB0aGF0IHRoZXJlIGFyZSBvdGhlciBzaW1pbGFyIGNhc2VzLiBJ IHN1Z2dlc3QgdG8KPnZlcmlmeSB0aGUgdGVzdCBhZ2FpbnN0IHRoZW0uIFBsZWFzZSwgYmV3YXJl IG9mIGNoYW5naW5nIG5lZ2F0aXZlIGNhc2VzCj4od2hlbiB3ZSBleHBlY3QgdGhhdCBhIHRpbWVv dXQgd2lsbCBvY2N1cik6IHNldHRpbmcgbGFyZ2UgdGltZW91dCBvbgo+dGhlbSB3b3VsZCBzaWdu aWZpY2FudGx5IGluY3JlYXNlIHRoZSB0ZXN0IHJ1biB0aW1lICh3ZSdsbCBhbHdheXMgd2FpdAo+ MTAwIHNlY29uZHMgYXQgdGhlIHBvaW50KS4KPgo+QlRXLCB3aHkgbm90IHRvIGxpc3RlbiBvbiAx MjcuMC4wLjEgcmF0aGVyIHRoZW4gb24gYWxsIGludGVyZmFjZXMKPigwLjAuMC4wKT8KPgo+QlRX LCB1bml4IHNvY2tldHMgbWF5IGhlbHAgdG8gZG9uJ3QgYm90aGVyIHdpdGggY2xhc2hlcyBvZiBk aWZmZXJlbnQKPmtpbmRzLgo+Cj4tLS0tCj4KPlswMThdIC0tLSBhcHAvc29ja2V0LnJlc3VsdAlU dWUgRGVjIDI0IDE1OjU4OjIwIDIwMTkKPlswMThdICsrKyBhcHAvc29ja2V0LnJlamVjdAlUdWUg RGVjIDI0IDE1OjU5OjI5IDIwMTkKPlswMThdIEBAIC0yODIyLDcgKzI4MjIsNyBAQAo+WzAxOF0g IC4uLgo+WzAxOF0gIGNsaWVudDpyZWFkKDEsIDUpID09ICcnCj5bMDE4XSAgLS0tCj5bMDE4XSAt LSB0cnVlCj5bMDE4XSArLSBmYWxzZQo+WzAxOF0gIC4uLgo+WzAxOF0gIHNlcnZlcjpjbG9zZSgp Cj5bMDE4XSAgLS0tCj4KPkkgcHJpbnRlZCBjbGllbnRfLmVycm5vLiBJdCBpcyAxMTAgKEVUSU1F RE9VVCkuIEl0IHNlZW1zIGl0IHdvcnRoIHRvCj5yZXBsYWNlIDUgd2l0aCBXQUlUX0NPTkRfVElN RSAob3IsIGFzIFRJTUVPVVQgYXMgSSBwcm9wb3NlZCB0byBuYW1lIGl0Cj5iZWxvdykuIE1heWJl IHRoZXJlIGFyZSBvdGhlciBzdWNoIHBsYWNlcy4KPgo+LS0tLQo+Cj5DYXNlIDMuCj4KPlRlc3Qg aHVuZyEgUmVzdWx0IGNvbnRlbnQgbWlzbWF0Y2g6Cj4tLS0gYXBwL3NvY2tldC5yZXN1bHQJV2Vk IERlYyAyNSAwMTowNDoyNiAyMDE5Cj4rKysgdmFyLzAwM19hcHAvc29ja2V0LnJlc3VsdAlXZWQg RGVjIDI1IDAxOjA1OjIyIDIwMTkKPkBAIC0yODU3LDM0ICsyODU3LDMgQEAKPsKgLS0tCj7CoC4u Lgo+wqBjaGFuOnB1dCg1KQo+LS0tLQo+LS0gdHJ1ZQo+LS4uLgo+LWNoYW46cHV0KDUpCj4tLS0t Cj4tLSB0cnVlCj4tLi4uCj4tczpyZWNlaXZlKDUpCj4tLS0tCj4tLSAnMDAwMDAnCj4tLi4uCj4t Y2hhbjpwdXQoNSkKPi0tLS0KPi0tIHRydWUKPi0uLi4KPi1zOnNldHRpbWVvdXQoMSkKPi0tLS0K Pi0tIDEKPi0uLi4KPi1zOnJlY2VpdmUoJyphJykKPi0tLS0KPi0tICcxMTExMTIyMjIyJwo+LS4u Lgo+LXM6Y2xvc2UoKQo+LS0tLQo+LS0gMQo+LS4uLgo+LXNydjpjbG9zZSgpCj4tLS0tCj4tLSB0 cnVlCj4tLi4uCj4KPkV4cGxhaW5lZCBhYm92ZSAoc2VlIGNhc2UgMSkuCj4KPi0tLS0KPgo+WzAx N10gLS0tIGFwcC9zb2NrZXQucmVzdWx0CVdlZCBEZWMgMjUgMDE6MTg6MjkgMjAxOQo+WzAxN10g KysrIGFwcC9zb2NrZXQucmVqZWN0CVdlZCBEZWMgMjUgMDE6MTk6MzAgMjAxOQo+WzAxN10gQEAg LTQwLDcgKzQwLDcgQEAKPlswMTddICAuLi4KPlswMTddICB0ZXN0X3J1bjpjbWQoInB1c2ggZmls dGVyICcoZXJyb3I6IC5idWlsdGluLy4qWy5dbHVhKTpbMC05XSsnIHRvICdcXDEnIikKPlswMTdd ICAtLS0KPlswMTddIC0tIHRydWUKPlswMTddICstIEhlbGxvLCB3b3JsZAo+Cj5JdCBzZWVtcyB3 ZSBjb25uZWN0ZWQgdG8gc29tZSBvZiBvdXIgc29ja2V0IHNlcnZlciByYXRoZXIgdGhlbiB0ZXN0 LXJ1bi4KPkxvb2tzIGxpa2UgdGhlIHNhbWUgaXB2NCAvIGlwdjYgcHJvYmxlbS4KPgo+QWZ0ZXIg dGhlIGZvbGxvd2luZyBwYXRjaCBmb3IgdGVzdC1ydW4gSSBkb24ndCBzZWUgaXQgYW55bW9yZSAo ZG9uJ3QKPnN1cmUgSSBtYWRlIGVub3VnaCBydW5zLCBob3dldmVyKToKPgo+ZGlmZiAtLWdpdCBh L2xpYi90ZXN0X3N1aXRlLnB5IGIvbGliL3Rlc3Rfc3VpdGUucHkKPmluZGV4IDg0Yjk5ZjQuLjBh MTM3YzMgMTAwNjQ0Cj4tLS0gYS9saWIvdGVzdF9zdWl0ZS5weQo+KysrIGIvbGliL3Rlc3Rfc3Vp dGUucHkKPkBAIC0xOTcsNyArMTk3LDcgQEAgY2xhc3MgVGVzdFN1aXRlOgo+wqDCoMKgwqDCoGRl ZiBzdGFydF9zZXJ2ZXIoc2VsZiwgc2VydmVyKToKPsKgwqDCoMKgwqDCoMKgwqDCoCMgY3JlYXRl IGluc3BlY3RvciBkYWVtb24gZm9yIGNsdXN0ZXIgdGVzdHMKPsKgwqDCoMKgwqDCoMKgwqDCoGlu c3BlY3RvciA9IFRhcmFudG9vbEluc3BlY3RvcigKPi0gICAgICAgICAgICAnbG9jYWxob3N0Jywg c2VydmVyLmluc3BlY3Rvcl9wb3J0Cj4rICAgICAgICAgICAgJzEyNy4wLjAuMScsIHNlcnZlci5p bnNwZWN0b3JfcG9ydAo+wqDCoMKgwqDCoMKgwqDCoMKgKQo+wqDCoMKgwqDCoMKgwqDCoMKgaW5z cGVjdG9yLnN0YXJ0KCkKPsKgwqDCoMKgwqDCoMKgwqDCoCMgZml4bWU6IHJlbW92ZSB0aGlzIHN0 cmluZyBpZiB3ZSBmaXggYWxsIGxlZ2FjeSB0ZXN0cwo+ZGlmZiAtLWdpdCBhL3Rlc3RfcnVuLmx1 YSBiL3Rlc3RfcnVuLmx1YQo+aW5kZXggZTM3YjU1OS4uZmMxYjgzMyAxMDA2NDQKPi0tLSBhL3Rl c3RfcnVuLmx1YQo+KysrIGIvdGVzdF9ydW4ubHVhCj5AQCAtNDU4LDcgKzQ1OCw3IEBAIGxvY2Fs IGluc3BlY3Rvcl9tZXRob2RzID0gewo+wqBsb2NhbCBmdW5jdGlvbiBpbnNwZWN0b3JfbmV3KGhv c3QsIHBvcnQpCj7CoMKgwqDCoMKgbG9jYWwgaW5zcGVjdG9yID0ge30KPsKgCj4tICAgIGluc3Bl Y3Rvci5ob3N0ID0gaG9zdCBvciAnbG9jYWxob3N0Jwo+KyAgICBpbnNwZWN0b3IuaG9zdCA9IGhv c3Qgb3IgJzEyNy4wLjAuMScKPsKgwqDCoMKgwqBpbnNwZWN0b3IucG9ydCA9IHBvcnQgb3IgdG9u dW1iZXIob3MuZ2V0ZW52KCdJTlNQRUNUT1InKSkKPsKgwqDCoMKgwqBpZiBpbnNwZWN0b3IucG9y dCA9PSBuaWwgdGhlbgo+wqDCoMKgwqDCoMKgwqDCoMKgZXJyb3IoJ0luc3BlY3RvciBub3Qgc3Rh cnRlZCcpCj4KPi0tLS0KPgo+T24gTW9uLCBEZWMgMjMsIDIwMTkgYXQgMTE6NDg6MzNQTSArMDMw MCwgSWx5YSBLb3NhcmV2IHdyb3RlOgo+PiBzb2NrZXQudGVzdCBoYWQgYSBudW1iZXIgb2YgZmxh a3kgcHJvYmxlbXM6Cj4+IC0gc29ja2V0IHJlYWRpbmVzcyBleHBlY3RhdGlvbgo+PiAtIHJhY2Ug Y29uZGl0aW9ucyBvbiBzb2NrZXQgc2h1dGRvd24gaW4gZW11bGF0aW9uIHRlc3QgY2FzZXMKPj4g LSBVRFAgZGF0YWdyYW1zIGxvc3NlcyBvbiBtYWMgb3MKPj4gLSBleGNlc3NpdmUgcmFuZG9tIHBv cnQgc2VhcmNoZXMKPj4gTm93IHRoZXkgYXJlIHNvbHZlZC4gU29ja2V0IHRlc3QgaXMgbm90IGZy YWdpbGUgYW55bW9yZS4KPj4gCj4+IENsb3NlcyAjNDQ1MSwgIzQ0MjYsICM0NDY5Cj4+IC0tLQo+ PiBCcmFuY2g6ICBodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC90cmVlL2ku a29zYXJldi9naC00NDI2LTQ0NTEtZml4LXNvY2tldC10ZXN0Cj4+IElzc3VlczogIGh0dHBzOi8v Z2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lzc3Vlcy80NDI2Cj4+ICBodHRwczovL2dp dGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDQ1MQo+PiAgaHR0cHM6Ly9naXRo dWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzQ0NjkKPj4gCj4+IENoYW5nZXMgaW4g djI6Cj4+IC0gcmVjb25zaWRlcmVkIHNvY2tldCByZWFkaW5lc3MgZXhwZWN0YXRpb24KPj4gLSBy ZWR1Y2VkIGNvbmRpdGlvbnMgd2FpdGluZyB0aW1lCj4+IAo+PiBDaGFuZ2VzIGluIHYzOgo+PiAt IHJlY29uc2lkZXJlZCBleHBlY3RhdGlvbnMgdG8gdW5pZnkgdGhlbQo+PiAtIHNpbXBsaWZpZWQg cmFuZG9taXphdGlvbgo+PiAKPj4gQ2hhbmdlcyBpbiB2NDoKPj4gLSBsZWZ0IGluZmluaXRlIHRp bWVvdXRzIGFsb25lCj4+IC0gd3JhcHBlZCBVRFAgZGF0YWdyYW1zIGF3YWl0aW5nIHdpdGggd2Fp dF9jb25kCj4KPlRoYXQncyBteSBiYWQuIEFzIEkgc2VlLCBvdGhlciBwYXJ0cyBvZiB0aGUgdGVz dCBmb2xsb3dzIHRoZSBmb2xsb3dpbmcKPnBhdHRlcm4gZm9yIHdhaXRpbmcgVURQIHBhY2tldHM6 Cj4KPsKgfCBzOnJlYWRhYmxlKFRJTUVPVVQpCj7CoHwgczpyZWN2KCkKPgo+dGVzdF9ydW46d2Fp dF9jb25kKCkgaXMgY29ycmVjdCBzb2x1dGlvbiB0b28sIGJ1dCA6cmVhZGFibGUoKSBsb29rcyBh Cj5iaXQgc2ltcGxlci4gQW55d2F5LCBsZXQncyB1c2Ugb25lIHRoYXQgeW91IGxpa2UgbW9yZS4K Pgo+KEl0IGlzIHRoZSBvbmx5IGNoYW5nZSBJIHByb3Bvc2UsIHdoaWNoIEkgZGlkbid0IHZlcmlm eS4pCj4KPj4gLSByZXBsYWNlZCBtYW51YWwgcG9ydCByYW5kb21pemF0aW9uIHdpdGggemVybyBi aW5kCj4KPk5pY2UgaWRlYSEKPgo+PiAtIHJlbW92ZWQgZXh0cmEgd2FpdF9jb25kIHdyYXBwZXJz Cj4+IAo+PiAgdGVzdC9hcHAvc29ja2V0LnJlc3VsdCAgIHwgMTA0ICsrKysrKysrKysrKysrKysr KysrKystLS0tLS0tLS0tLS0tLS0tLQo+PiAgdGVzdC9hcHAvc29ja2V0LnRlc3QubHVhIHwgIDk0 ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCj4+ICB0ZXN0L2FwcC9zdWl0ZS5p bmkgICAgICAgfCAgIDEgLQo+PiAgMyBmaWxlcyBjaGFuZ2VkLCAxMTQgaW5zZXJ0aW9ucygrKSwg ODUgZGVsZXRpb25zKC0pCj4KPj4gZGlmZiAtLWdpdCBhL3Rlc3QvYXBwL3NvY2tldC50ZXN0Lmx1 YSBiL3Rlc3QvYXBwL3NvY2tldC50ZXN0Lmx1YQo+PiBpbmRleCBjNzJkNDE3NjNmNC4uNGVkNmMw ZjI1ZjcgMTAwNjQ0Cj4+IC0tLSBhL3Rlc3QvYXBwL3NvY2tldC50ZXN0Lmx1YQo+PiArKysgYi90 ZXN0L2FwcC9zb2NrZXQudGVzdC5sdWEKPj4gQEAgLTEzLDcgKzEzLDcgQEAgZW52ID0gcmVxdWly ZSgndGVzdF9ydW4nKQo+PiAgdGVzdF9ydW4gPSBlbnYubmV3KCkKPj4gIHRlc3RfcnVuOmNtZCgi cHVzaCBmaWx0ZXIgJyhlcnJvcjogLmJ1aWx0aW4vLipbLl1sdWEpOlswLTldKycgdG8gJ1xcMSci KQo+PiAKPj4gLVdBSVRfQ09ORF9USU1FID0gMTAKPj4gK1dBSVRfQ09ORF9USU1FID0gMTAwCj4K Pk5pdDogSSB3b3VsZCBuYW1lIGl0IGp1c3QgVElNRU9VVCwgc2luY2UgaXQgaXMgbm90IG9ubHkg Zm9yCj50ZXN0X3J1bjp3YWl0X2NvbmQoKSBub3cuCj4KPj4gQEAgLTYxOSw4ICs2MDgsMTQgQEAg czpzZXR0aW1lb3V0KDEwMDUwMCkKPj4gIHJjaCwgd2NoID0gZmliZXIuY2hhbm5lbCgxKSwgZmli ZXIuY2hhbm5lbCgxKQo+PiAgc2MgPSBzb2NrZXQuY29ubmVjdChob3N0LCBwb3J0KQo+PiAgdGVz dF9ydW46Y21kKCJzZXRvcHQgZGVsaW1pdGVyICc7JyIpCj4+ICtzb2NrZXRfb3BlbmVkID0gdHJ1 ZQo+PiAgY2ZpYmVyID0gZmliZXIuY3JlYXRlKGZ1bmN0aW9uKHNjLCByY2gsIHdjaCkKPj4gLSAg ICB3aGlsZSBzYzpzZW5kKHdjaDpnZXQoKSkgYW5kIHJjaDpwdXQoc2M6cmVjZWl2ZSgiKmwiKSkg ZG8gZW5kCj4+ICsgICAgd2hpbGUgc29ja2V0X29wZW5lZCBkbwo+PiArICAgICAgICBzYzpzZW5k KHdjaDpnZXQoKSkKPj4gKyAgICAgICAgbG9jYWwgZGF0YSA9IHNjOnJlY2VpdmUoIipsIikKPj4g KyAgICAgICAgaWYgbm90IHNvY2tldF9vcGVuZWQgdGhlbiBzYzpjbG9zZSgpIGVuZAo+PiArICAg ICAgICByY2g6cHV0KGRhdGEpCj4+ICsgICAgZW5kCj4KPkkgd291bGQgdXNlIGV4aXN0aW5nIGNo YW5uZWwgdG8gc2lnbmFsIHRoZSBmaWJlciB0byBjbG9zZSB0aGUgc29ja2V0OiBpdAo+bG9va3Mg c2ltcGxlciB0aGVuIHVzaW5nIGEgY2hhbm5lbCBhbmQgYSB2YXJpYWJsZSBib3RoLiBQcm9wb3Nl ZCBkaWZmOgo+Cj5kaWZmIC0tZ2l0IGEvdGVzdC9hcHAvc29ja2V0LnRlc3QubHVhIGIvdGVzdC9h cHAvc29ja2V0LnRlc3QubHVhCj5pbmRleCA0ZWQ2YzBmMjUuLjBmZTIyNzA5YSAxMDA2NDQKPi0t LSBhL3Rlc3QvYXBwL3NvY2tldC50ZXN0Lmx1YQo+KysrIGIvdGVzdC9hcHAvc29ja2V0LnRlc3Qu bHVhCj5AQCAtNjA4LDEzICs2MDgsMTYgQEAgczpzZXR0aW1lb3V0KDEwMDUwMCkKPsKgcmNoLCB3 Y2ggPSBmaWJlci5jaGFubmVsKDEpLCBmaWJlci5jaGFubmVsKDEpCj7CoHNjID0gc29ja2V0LmNv bm5lY3QoaG9zdCwgcG9ydCkKPsKgdGVzdF9ydW46Y21kKCJzZXRvcHQgZGVsaW1pdGVyICc7JyIp Cj4tc29ja2V0X29wZW5lZCA9IHRydWUKPsKgY2ZpYmVyID0gZmliZXIuY3JlYXRlKGZ1bmN0aW9u KHNjLCByY2gsIHdjaCkKPi0gICAgd2hpbGUgc29ja2V0X29wZW5lZCBkbwo+LSAgICAgICAgc2M6 c2VuZCh3Y2g6Z2V0KCkpCj4tICAgICAgICBsb2NhbCBkYXRhID0gc2M6cmVjZWl2ZSgiKmwiKQo+ LSAgICAgICAgaWYgbm90IHNvY2tldF9vcGVuZWQgdGhlbiBzYzpjbG9zZSgpIGVuZAo+LSAgICAg ICAgcmNoOnB1dChkYXRhKQo+KyAgICB3aGlsZSB0cnVlIGRvCj4rICAgICAgICBsb2NhbCBvdXRn b2luZ19kYXRhID0gd2NoOmdldCgpCj4rICAgICAgICBpZiBvdXRnb2luZ19kYXRhID09IG5pbCB0 aGVuCj4rICAgICAgICAgICAgc2M6Y2xvc2UoKQo+KyAgICAgICAgICAgIGJyZWFrCj4rICAgICAg ICBlbmQKPisgICAgICAgIHNjOnNlbmQob3V0Z29pbmdfZGF0YSkKPisgICAgICAgIGxvY2FsIGlu Y29taW5nX2RhdGEgPSBzYzpyZWNlaXZlKCIqbCIpCj4rICAgICAgICByY2g6cHV0KGluY29taW5n X2RhdGEpCj7CoMKgwqDCoMKgZW5kCj7CoGVuZCwgc2MsIHJjaCwgd2NoKTsKPsKgdGVzdF9ydW46 Y21kKCJzZXRvcHQgZGVsaW1pdGVyICcnIik7Cj5AQCAtNjQ2LDkgKzY0OSwxMCBAQCByY2g6Z2V0 KCkKPsKgd2NoOnB1dCgiREFUQVxuIikKPsKgYzpyZWNlaXZlKDQpCj7CoGM6cmVjZWl2ZSgiKmwi KQo+LXNvY2tldF9vcGVuZWQgPSBmYWxzZQo+K3JjaDpnZXQoKQo+wqB3Y2g6cHV0KCJGdSIpCj7C oGM6c2VuZCgiMzU0IFBsZWFzZSB0eXBlIHlvdXIgbWVzc2FnZVxuIikKPit3Y2g6cHV0KG5pbCkg LS0gRU9GCj7CoGM6cmVjZWl2ZSgiKmwiLCAiTGluZTogIikKPsKgYzpyZWNlaXZlKCkKPsKgYzpy ZWNlaXZlKDEwKQo+Cj4+ICBlbmQsIHNjLCByY2gsIHdjaCk7Cj4+ICB0ZXN0X3J1bjpjbWQoInNl dG9wdCBkZWxpbWl0ZXIgJyciKTsKPj4gCj4+IEBAIC02NTEsOSArNjQ2LDkgQEAgcmNoOmdldCgp Cj4+ICB3Y2g6cHV0KCJEQVRBXG4iKQo+PiAgYzpyZWNlaXZlKDQpCj4+ICBjOnJlY2VpdmUoIips IikKPj4gK3NvY2tldF9vcGVuZWQgPSBmYWxzZQo+PiAgd2NoOnB1dCgiRnUiKQo+PiAgYzpzZW5k KCIzNTQgUGxlYXNlIHR5cGUgeW91ciBtZXNzYWdlXG4iKQo+PiAtc2M6Y2xvc2UoKQo+PiAgYzpy ZWNlaXZlKCIqbCIsICJMaW5lOiAiKQo+PiAgYzpyZWNlaXZlKCkKPj4gIGM6cmVjZWl2ZSgxMCkK Pgo+PiBAQCAtNzc4LDcgKzc3Myw5IEBAIGUgPT0gZXJybm8uRUFHQUlOIC0tIGV4cGVjdGVkIHRy dWUKPj4gCj4+ICAtLSBjYXNlOiByZWN2LCB6ZXJvIGRhdGFncmFtCj4+ICBzZW5kdG9femVybyhz ZW5kaW5nX3NvY2tldCwgJzEyNy4wLjAuMScsIHJlY2VpdmluZ19zb2NrZXRfcG9ydCkKPj4gLXJl Y2VpdmVkX21lc3NhZ2UgPSByZWNlaXZpbmdfc29ja2V0OnJlY3YoKQo+PiArcmVjZWl2ZWRfbWVz c2FnZSA9IHRlc3RfcnVuOndhaXRfY29uZChmdW5jdGlvbigpICAgICAgICBcCj4+ICsgICAgcmV0 dXJuIHJlY2VpdmluZ19zb2NrZXQ6cmVjdigpICAgICAgICAgICAgICAgICAgICAgIFwKPj4gK2Vu ZCwgV0FJVF9DT05EX1RJTUUpCj4KPlByb3Bvc2VkIHRvIHVzZSA6cmVhZGFibGUoKSAoc2VlIGFi b3ZlKS4KPgo+PiAtLS0gY2FzZTogc2lja2V0IHJlY2VpdmUgaW5jb25zaXN0ZW50IGJlaGF2aW9y Cj4+ICstLSBjYXNlOiBzb2NrZXQgcmVjZWl2ZSBpbmNvbnNpc3RlbnQgYmVoYXZpb3IKPj4gIGNo YW4gPSBmaWJlci5jaGFubmVsKCkKPj4gIGNvdW50ZXIgPSAwCj4+ICBmbiA9IGZ1bmN0aW9uKHMp IGNvdW50ZXIgPSAwOyB3aGlsZSB0cnVlIGRvIHM6d3JpdGUoKHRvc3RyaW5nKGNvdW50ZXIpKTpy ZXAoY2hhbjpnZXQoKSkpOyBjb3VudGVyID0gY291bnRlciArIDEgZW5kIGVuZAo+PiAtc3J2ID0g c29ja2V0LnRjcF9zZXJ2ZXIoJzAuMC4wLjAnLCA4ODg4LCBmbikKPj4gLXMgPSBzb2NrZXQuY29u bmVjdCgnbG9jYWxob3N0JywgODg4OCkKPj4gK3NydiA9IHNvY2tldC50Y3Bfc2VydmVyKCcwLjAu MC4wJywgMCwgZm4pCj4+ICtzID0gc29ja2V0LmNvbm5lY3QoJ2xvY2FsaG9zdCcsIHNydjpuYW1l KCkucG9ydCkKPgo+UHJvcG9zZWQgdG8gY29ubmVjdCB0byAxMjcuMC4wLjEgKHNlZSBhYm92ZSku Cj4KPj4gIGNoYW46cHV0KDUpCj4+ICBjaGFuOnB1dCg1KQo+PiAgczpyZWNlaXZlKDUpCgoKLS0g CklseWEgS29zYXJldgo= ----ALT--6nHRnCr966Dvt14k2zsFMA2BfJToPZsv1577308011 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIFRhaG9tYSwgVmVy ZGFuYSwgc2Fucy1zZXJpZjsiIGRhdGEtbWNlLXN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIFRh aG9tYSwgVmVyZGFuYSwgc2Fucy1zZXJpZjsiPkhpITwvc3Bhbj48YnIgc3R5bGU9ImZvbnQtZmFt aWx5OiBBcmlhbCwgVGFob21hLCBWZXJkYW5hLCBzYW5zLXNlcmlmOyIgZGF0YS1tY2Utc3R5bGU9 ImZvbnQtZmFtaWx5OiBBcmlhbCwgVGFob21hLCBWZXJkYW5hLCBzYW5zLXNlcmlmOyI+PGJyIHN0 eWxlPSJmb250LWZhbWlseTogQXJpYWwsIFRhaG9tYSwgVmVyZGFuYSwgc2Fucy1zZXJpZjsiIGRh dGEtbWNlLXN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIFRhaG9tYSwgVmVyZGFuYSwgc2Fucy1z ZXJpZjsiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIFRhaG9tYSwgVmVyZGFuYSwg c2Fucy1zZXJpZjsiIGRhdGEtbWNlLXN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIFRhaG9tYSwg VmVyZGFuYSwgc2Fucy1zZXJpZjsiPlRoYW5rcyBmb3IgeW91ciByZXZpZXchPGJyPjxicj48L3Nw YW4+PHAgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgVGFob21hLCBWZXJkYW5hLCBzYW5zLXNl cmlmOyIgZGF0YS1tY2Utc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgVGFob21hLCBWZXJkYW5h LCBzYW5zLXNlcmlmOyI+U2VudCB2NSBpbmNsdWRpbmcgYWxsIHByb3Bvc2VkIGVuaGFuY2VtZW50 cy48L3A+PGJyPjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdB NjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAwIDAgMTBweDsiPgoJ0KHRgNC10LTQsCwgMjUg0LTQ tdC60LDQsdGA0Y8gMjAxOSwgNDoyOSArMDM6MDAg0L7RgiBBbGV4YW5kZXIgVHVyZW5rbyAmbHQ7 YWxleGFuZGVyLnR1cmVua29AdGFyYW50b29sLm9yZyZndDs6PGJyPgoJPGJyPgoJPGRpdiBpZD0i Ij4KCgoKCgoKPGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNnIj4KCTxzdHlsZSB0 eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT4KIAk8ZGl2PgoJCQoJCQogICAgICAgICAgICA8ZGl2IGlk PSJzdHlsZV8xNTc3MjM3Mzc3MTYxMTk4ODcxMV9CT0RZIj5UaGFua3MgZm9yIHRoZSBwYXRjaCE8 YnI+Cjxicj4KSSByZWFsbHkgYXBwcmVjaWF0ZSB0aGUgd29yayBpbiBkaXJlY3Rpb24gdG93YXJk IHN0YWJsZSB0ZXN0cy4gVW5zdGFibGU8YnI+CkNJIHNvbWV0aW1lcyBoaWRlcyByZWFsIHByb2Js ZW1zLCBzbyBhY3R1YWxseSBpdCBpcyBkaXJlY3Rpb24gdG8gbWFrZTxicj4KdGFyYW50b29sIGl0 c2VsZiBtb3JlIHN0YWJsZS48YnI+Cjxicj4KQWxsIGNoYW5nZXMgbG9vayBjb3JyZWN0LiBUaGVy ZSBhcmUgcGxhY2VzIGhvd2V2ZXIgdGhhdCB3ZSBjYW4gcG9saXNoIGE8YnI+CmJpdC4gUGxlYXNl LCBjb25zaWRlciBteSBjb21tZW50cyBiZWxvdy48YnI+Cjxicj4KSG93IEkgdGVzdGVkIGl0Ojxi cj4KPGJyPgokIChjZCB0ZXN0ICZhbXA7JmFtcDsgLi90ZXN0LXJ1bi5weSAtaiAzMCAtLWZvcmNl ICQoeWVzIGFwcC9zb2NrZXQgfCBoZWFkIC1uIDEwMDApKTxicj4KPGJyPgpPYnNlcnZlZCB0aGUg Zm9sbG93aW5nIGZhaWxzOjxicj4KPGJyPgpDYXNlIDEuPGJyPgo8YnI+ClswMDhdIFRlc3QgZmFp bGVkISBSZXN1bHQgY29udGVudCBtaXNtYXRjaDo8YnI+ClswMDhdIC0tLSBhcHAvc29ja2V0LnJl c3VsdAlUdWUgRGVjIDI0IDE1OjU1OjQwIDIwMTk8YnI+ClswMDhdICsrKyBhcHAvc29ja2V0LnJl amVjdAlUdWUgRGVjIDI0IDE1OjU2OjI0IDIwMTk8YnI+ClswMDhdIEBAIC0xMzcxLDcgKzEzNzEs NyBAQDxicj4KWzAwOF0gIC4uLjxicj4KWzAwOF0gIGNudDxicj4KWzAwOF0gIC0tLTxicj4KWzAw OF0gLS0gMjxicj4KWzAwOF0gKy0gMzxicj4KWzAwOF0gIC4uLjxicj4KWzAwOF0gIGNsaWVudDp3 cml0ZSgnaGknKTxicj4KWzAwOF0gIC0tLTxicj4KPGJyPgpBbm90aGVyIGluc3RhbmNlIGlzIGNv bm5lY3RlZCB0byBvdXIgc2VydmVyLiBJIGZvdW5kIHRoYXQgaXQgaXM8YnI+CnNvY2tldC5jb25u ZWN0KCkgZnJvbSAnY2FzZTogc29ja2V0IHJlY2VpdmUgaW5jb25zaXN0ZW50IGJlaGF2aW9yJyAo YW5kPGJyPgp0aGlzIGlzIHRoZSByZWFzb24gb2YgY2FzZSAzIGJlbG93KS4gVGhlIGNvZGUgdGhl IHRoZSBmb2xsb3dpbmc6PGJyPgo8YnI+CiZuYnNwO3wgc3J2ID0gc29ja2V0LnRjcF9zZXJ2ZXIo JzAuMC4wLjAnLCAwLCBmbik8YnI+CiZuYnNwO3wgcyA9IHNvY2tldC5jb25uZWN0KCdsb2NhbGhv c3QnLCBzcnY6bmFtZSgpLnBvcnQpPGJyPgo8YnI+CmxvY2FsaG9zdCBtYXkgYmUgcmVzb2x2ZWQg aW50byA6OjEgKGlwdjYpIGFuZCAxMjcuMC4wLjEgKGlwdjQpLiBMaW51eDxicj4KYWxsb3dzIHRv IGJpbmQgdGhlIHNhbWUgcG9ydCBudW1iZXIgb24gZGlmZmVyZW50IGFkZHJlc3Nlcy48YnI+Cmdl dGFkZHJpbmZvKCkgb24gTGludXggZ2l2ZSBpcHY2IGFkZHIvcG9ydCBmaXJzdCAodXN1YWxseSwg ZGVwZW5kczxicj4Kb24gc2V0dGluZ3MpIGFuZCBpZiBhbm90aGVyIHByb2Nlc3MgbGlzdGVucyBv biA6OjEgb24gdGhlIHNhbWUgcG9ydCBhczxicj4Kd2UgYm91bmQgb24gaXB2NCwgd2UnbGwgY29u bmVjdCB0byB0aGlzIHByb2Nlc3MuPGJyPgo8YnI+ClRoZSBjaGFuZ2UgdGhhdCBlbGltaW5hdGVz IHRoZSBmYWlsIGFib3ZlIGZvciBtZTo8YnI+Cjxicj4KQEAgLTk3OSw3ICs5ODMsNyBAQCBjaGFu ID0gZmliZXIuY2hhbm5lbCgpPGJyPgombmJzcDtjb3VudGVyID0gMDxicj4KJm5ic3A7Zm4gPSBm dW5jdGlvbihzKSBjb3VudGVyID0gMDsgd2hpbGUgdHJ1ZSBkbyBzOndyaXRlKCh0b3N0cmluZyhj b3VudGVyKSk6cmVwKGNoYW46Z2V0KCkpKTsgY291bnRlciA9IGNvdW50ZXIgKyAxIGVuZCBlbmQ8 YnI+CiZuYnNwO3NydiA9IHNvY2tldC50Y3Bfc2VydmVyKCcwLjAuMC4wJywgMCwgZm4pPGJyPgot cyA9IHNvY2tldC5jb25uZWN0KCdsb2NhbGhvc3QnLCBzcnY6bmFtZSgpLnBvcnQpPGJyPgorcyA9 IHNvY2tldC5jb25uZWN0KCcxMjcuMC4wLjEnLCBzcnY6bmFtZSgpLnBvcnQpPGJyPgombmJzcDtj aGFuOnB1dCg1KTxicj4KJm5ic3A7Y2hhbjpwdXQoNSk8YnI+CiZuYnNwO3M6cmVjZWl2ZSg1KTxi cj4KPGJyPgooQ0NlZCBNYXJpYSBhcyBhdXRob3Igb2YgdGhlIHRlc3QgY2FzZS4pPGJyPgo8YnI+ Ckhvd2V2ZXIgaXQgaXMgcG9zc2libGUgdGhhdCB0aGVyZSBhcmUgb3RoZXIgc2ltaWxhciBjYXNl cy4gSSBzdWdnZXN0IHRvPGJyPgp2ZXJpZnkgdGhlIHRlc3QgYWdhaW5zdCB0aGVtLiBQbGVhc2Us IGJld2FyZSBvZiBjaGFuZ2luZyBuZWdhdGl2ZSBjYXNlczxicj4KKHdoZW4gd2UgZXhwZWN0IHRo YXQgYSB0aW1lb3V0IHdpbGwgb2NjdXIpOiBzZXR0aW5nIGxhcmdlIHRpbWVvdXQgb248YnI+CnRo ZW0gd291bGQgc2lnbmlmaWNhbnRseSBpbmNyZWFzZSB0aGUgdGVzdCBydW4gdGltZSAod2UnbGwg YWx3YXlzIHdhaXQ8YnI+CjEwMCBzZWNvbmRzIGF0IHRoZSBwb2ludCkuPGJyPgo8YnI+CkJUVywg d2h5IG5vdCB0byBsaXN0ZW4gb24gMTI3LjAuMC4xIHJhdGhlciB0aGVuIG9uIGFsbCBpbnRlcmZh Y2VzPGJyPgooMC4wLjAuMCk/PGJyPgo8YnI+CkJUVywgdW5peCBzb2NrZXRzIG1heSBoZWxwIHRv IGRvbid0IGJvdGhlciB3aXRoIGNsYXNoZXMgb2YgZGlmZmVyZW50PGJyPgpraW5kcy48YnI+Cjxi cj4KLS0tLTxicj4KPGJyPgpbMDE4XSAtLS0gYXBwL3NvY2tldC5yZXN1bHQJVHVlIERlYyAyNCAx NTo1ODoyMCAyMDE5PGJyPgpbMDE4XSArKysgYXBwL3NvY2tldC5yZWplY3QJVHVlIERlYyAyNCAx NTo1OToyOSAyMDE5PGJyPgpbMDE4XSBAQCAtMjgyMiw3ICsyODIyLDcgQEA8YnI+ClswMThdICAu Li48YnI+ClswMThdICBjbGllbnQ6cmVhZCgxLCA1KSA9PSAnJzxicj4KWzAxOF0gIC0tLTxicj4K WzAxOF0gLS0gdHJ1ZTxicj4KWzAxOF0gKy0gZmFsc2U8YnI+ClswMThdICAuLi48YnI+ClswMThd ICBzZXJ2ZXI6Y2xvc2UoKTxicj4KWzAxOF0gIC0tLTxicj4KPGJyPgpJIHByaW50ZWQgY2xpZW50 Xy5lcnJuby4gSXQgaXMgMTEwIChFVElNRURPVVQpLiBJdCBzZWVtcyBpdCB3b3J0aCB0bzxicj4K cmVwbGFjZSA1IHdpdGggV0FJVF9DT05EX1RJTUUgKG9yLCBhcyBUSU1FT1VUIGFzIEkgcHJvcG9z ZWQgdG8gbmFtZSBpdDxicj4KYmVsb3cpLiBNYXliZSB0aGVyZSBhcmUgb3RoZXIgc3VjaCBwbGFj ZXMuPGJyPgo8YnI+Ci0tLS08YnI+Cjxicj4KQ2FzZSAzLjxicj4KPGJyPgpUZXN0IGh1bmchIFJl c3VsdCBjb250ZW50IG1pc21hdGNoOjxicj4KLS0tIGFwcC9zb2NrZXQucmVzdWx0CVdlZCBEZWMg MjUgMDE6MDQ6MjYgMjAxOTxicj4KKysrIHZhci8wMDNfYXBwL3NvY2tldC5yZXN1bHQJV2VkIERl YyAyNSAwMTowNToyMiAyMDE5PGJyPgpAQCAtMjg1NywzNCArMjg1NywzIEBAPGJyPgombmJzcDst LS08YnI+CiZuYnNwOy4uLjxicj4KJm5ic3A7Y2hhbjpwdXQoNSk8YnI+Ci0tLS08YnI+Ci0tIHRy dWU8YnI+Ci0uLi48YnI+Ci1jaGFuOnB1dCg1KTxicj4KLS0tLTxicj4KLS0gdHJ1ZTxicj4KLS4u Ljxicj4KLXM6cmVjZWl2ZSg1KTxicj4KLS0tLTxicj4KLS0gJzAwMDAwJzxicj4KLS4uLjxicj4K LWNoYW46cHV0KDUpPGJyPgotLS0tPGJyPgotLSB0cnVlPGJyPgotLi4uPGJyPgotczpzZXR0aW1l b3V0KDEpPGJyPgotLS0tPGJyPgotLSAxPGJyPgotLi4uPGJyPgotczpyZWNlaXZlKCcqYScpPGJy PgotLS0tPGJyPgotLSAnMTExMTEyMjIyMic8YnI+Ci0uLi48YnI+Ci1zOmNsb3NlKCk8YnI+Ci0t LS08YnI+Ci0tIDE8YnI+Ci0uLi48YnI+Ci1zcnY6Y2xvc2UoKTxicj4KLS0tLTxicj4KLS0gdHJ1 ZTxicj4KLS4uLjxicj4KPGJyPgpFeHBsYWluZWQgYWJvdmUgKHNlZSBjYXNlIDEpLjxicj4KPGJy PgotLS0tPGJyPgo8YnI+ClswMTddIC0tLSBhcHAvc29ja2V0LnJlc3VsdAlXZWQgRGVjIDI1IDAx OjE4OjI5IDIwMTk8YnI+ClswMTddICsrKyBhcHAvc29ja2V0LnJlamVjdAlXZWQgRGVjIDI1IDAx OjE5OjMwIDIwMTk8YnI+ClswMTddIEBAIC00MCw3ICs0MCw3IEBAPGJyPgpbMDE3XSAgLi4uPGJy PgpbMDE3XSAgdGVzdF9ydW46Y21kKCJwdXNoIGZpbHRlciAnKGVycm9yOiAuYnVpbHRpbi8uKlsu XWx1YSk6WzAtOV0rJyB0byAnXFwxJyIpPGJyPgpbMDE3XSAgLS0tPGJyPgpbMDE3XSAtLSB0cnVl PGJyPgpbMDE3XSArLSBIZWxsbywgd29ybGQ8YnI+Cjxicj4KSXQgc2VlbXMgd2UgY29ubmVjdGVk IHRvIHNvbWUgb2Ygb3VyIHNvY2tldCBzZXJ2ZXIgcmF0aGVyIHRoZW4gdGVzdC1ydW4uPGJyPgpM b29rcyBsaWtlIHRoZSBzYW1lIGlwdjQgLyBpcHY2IHByb2JsZW0uPGJyPgo8YnI+CkFmdGVyIHRo ZSBmb2xsb3dpbmcgcGF0Y2ggZm9yIHRlc3QtcnVuIEkgZG9uJ3Qgc2VlIGl0IGFueW1vcmUgKGRv bid0PGJyPgpzdXJlIEkgbWFkZSBlbm91Z2ggcnVucywgaG93ZXZlcik6PGJyPgo8YnI+CmRpZmYg LS1naXQgYS9saWIvdGVzdF9zdWl0ZS5weSBiL2xpYi90ZXN0X3N1aXRlLnB5PGJyPgppbmRleCA4 NGI5OWY0Li4wYTEzN2MzIDEwMDY0NDxicj4KLS0tIGEvbGliL3Rlc3Rfc3VpdGUucHk8YnI+Cisr KyBiL2xpYi90ZXN0X3N1aXRlLnB5PGJyPgpAQCAtMTk3LDcgKzE5Nyw3IEBAIGNsYXNzIFRlc3RT dWl0ZTo8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2RlZiBzdGFydF9zZXJ2ZXIo c2VsZiwgc2VydmVyKTo8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyMgY3JlYXRlIGluc3BlY3RvciBkYWVtb24gZm9yIGNsdXN0ZXIgdGVz dHM8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwO2luc3BlY3RvciA9IFRhcmFudG9vbEluc3BlY3Rvcig8YnI+Ci0gICAgICAgICAgICAnbG9j YWxob3N0Jywgc2VydmVyLmluc3BlY3Rvcl9wb3J0PGJyPgorICAgICAgICAgICAgJzEyNy4wLjAu MScsIHNlcnZlci5pbnNwZWN0b3JfcG9ydDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7KTxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aW5zcGVjdG9yLnN0YXJ0KCk8YnI+CiZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyMgZml4bWU6 IHJlbW92ZSB0aGlzIHN0cmluZyBpZiB3ZSBmaXggYWxsIGxlZ2FjeSB0ZXN0czxicj4KZGlmZiAt LWdpdCBhL3Rlc3RfcnVuLmx1YSBiL3Rlc3RfcnVuLmx1YTxicj4KaW5kZXggZTM3YjU1OS4uZmMx YjgzMyAxMDA2NDQ8YnI+Ci0tLSBhL3Rlc3RfcnVuLmx1YTxicj4KKysrIGIvdGVzdF9ydW4ubHVh PGJyPgpAQCAtNDU4LDcgKzQ1OCw3IEBAIGxvY2FsIGluc3BlY3Rvcl9tZXRob2RzID0gezxicj4K Jm5ic3A7bG9jYWwgZnVuY3Rpb24gaW5zcGVjdG9yX25ldyhob3N0LCBwb3J0KTxicj4KJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7bG9jYWwgaW5zcGVjdG9yID0ge308YnI+CiZuYnNwOzxi cj4KLSAgICBpbnNwZWN0b3IuaG9zdCA9IGhvc3Qgb3IgJ2xvY2FsaG9zdCc8YnI+CisgICAgaW5z cGVjdG9yLmhvc3QgPSBob3N0IG9yICcxMjcuMC4wLjEnPGJyPgombmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDtpbnNwZWN0b3IucG9ydCA9IHBvcnQgb3IgdG9udW1iZXIob3MuZ2V0ZW52KCdJ TlNQRUNUT1InKSk8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2lmIGluc3BlY3Rv ci5wb3J0ID09IG5pbCB0aGVuPGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDtlcnJvcignSW5zcGVjdG9yIG5vdCBzdGFydGVkJyk8YnI+Cjxi cj4KLS0tLTxicj4KPGJyPgpPbiBNb24sIERlYyAyMywgMjAxOSBhdCAxMTo0ODozM1BNICswMzAw LCBJbHlhIEtvc2FyZXYgd3JvdGU6PGJyPgomZ3Q7IHNvY2tldC50ZXN0IGhhZCBhIG51bWJlciBv ZiBmbGFreSBwcm9ibGVtczo8YnI+CiZndDsgLSBzb2NrZXQgcmVhZGluZXNzIGV4cGVjdGF0aW9u PGJyPgomZ3Q7IC0gcmFjZSBjb25kaXRpb25zIG9uIHNvY2tldCBzaHV0ZG93biBpbiBlbXVsYXRp b24gdGVzdCBjYXNlczxicj4KJmd0OyAtIFVEUCBkYXRhZ3JhbXMgbG9zc2VzIG9uIG1hYyBvczxi cj4KJmd0OyAtIGV4Y2Vzc2l2ZSByYW5kb20gcG9ydCBzZWFyY2hlczxicj4KJmd0OyBOb3cgdGhl eSBhcmUgc29sdmVkLiBTb2NrZXQgdGVzdCBpcyBub3QgZnJhZ2lsZSBhbnltb3JlLjxicj4KJmd0 OyA8YnI+CiZndDsgQ2xvc2VzICM0NDUxLCAjNDQyNiwgIzQ0Njk8YnI+CiZndDsgLS0tPGJyPgom Z3Q7IEJyYW5jaDogPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRv b2wvdHJlZS9pLmtvc2FyZXYvZ2gtNDQyNi00NDUxLWZpeC1zb2NrZXQtdGVzdCIgdGFyZ2V0PSJf YmxhbmsiPmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL3RyZWUvaS5rb3Nh cmV2L2doLTQ0MjYtNDQ1MS1maXgtc29ja2V0LXRlc3Q8L2E+PGJyPgomZ3Q7IElzc3VlczogPGEg aHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzQ0MjYi IHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9p c3N1ZXMvNDQyNjwvYT48YnI+CiZndDsgICAgICAgICA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5j b20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDQ1MSIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBz Oi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lzc3Vlcy80NDUxPC9hPjxicj4KJmd0 OyAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29s L2lzc3Vlcy80NDY5IiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9v bC90YXJhbnRvb2wvaXNzdWVzLzQ0Njk8L2E+PGJyPgomZ3Q7IDxicj4KJmd0OyBDaGFuZ2VzIGlu IHYyOjxicj4KJmd0OyAtIHJlY29uc2lkZXJlZCBzb2NrZXQgcmVhZGluZXNzIGV4cGVjdGF0aW9u PGJyPgomZ3Q7IC0gcmVkdWNlZCBjb25kaXRpb25zIHdhaXRpbmcgdGltZTxicj4KJmd0OyA8YnI+ CiZndDsgQ2hhbmdlcyBpbiB2Mzo8YnI+CiZndDsgLSByZWNvbnNpZGVyZWQgZXhwZWN0YXRpb25z IHRvIHVuaWZ5IHRoZW08YnI+CiZndDsgLSBzaW1wbGlmaWVkIHJhbmRvbWl6YXRpb248YnI+CiZn dDsgPGJyPgomZ3Q7IENoYW5nZXMgaW4gdjQ6PGJyPgomZ3Q7IC0gbGVmdCBpbmZpbml0ZSB0aW1l b3V0cyBhbG9uZTxicj4KICAgIAomZ3Q7IC0gd3JhcHBlZCBVRFAgZGF0YWdyYW1zIGF3YWl0aW5n IHdpdGggd2FpdF9jb25kPGJyPgo8YnI+ClRoYXQncyBteSBiYWQuIEFzIEkgc2VlLCBvdGhlciBw YXJ0cyBvZiB0aGUgdGVzdCBmb2xsb3dzIHRoZSBmb2xsb3dpbmc8YnI+CnBhdHRlcm4gZm9yIHdh aXRpbmcgVURQIHBhY2tldHM6PGJyPgo8YnI+CiZuYnNwO3wgczpyZWFkYWJsZShUSU1FT1VUKTxi cj4KJm5ic3A7fCBzOnJlY3YoKTxicj4KPGJyPgp0ZXN0X3J1bjp3YWl0X2NvbmQoKSBpcyBjb3Jy ZWN0IHNvbHV0aW9uIHRvbywgYnV0IDpyZWFkYWJsZSgpIGxvb2tzIGE8YnI+CmJpdCBzaW1wbGVy LiBBbnl3YXksIGxldCdzIHVzZSBvbmUgdGhhdCB5b3UgbGlrZSBtb3JlLjxicj4KPGJyPgooSXQg aXMgdGhlIG9ubHkgY2hhbmdlIEkgcHJvcG9zZSwgd2hpY2ggSSBkaWRuJ3QgdmVyaWZ5Lik8YnI+ Cjxicj4KJmd0OyAtIHJlcGxhY2VkIG1hbnVhbCBwb3J0IHJhbmRvbWl6YXRpb24gd2l0aCB6ZXJv IGJpbmQ8YnI+Cjxicj4KTmljZSBpZGVhITxicj4KPGJyPgomZ3Q7IC0gcmVtb3ZlZCBleHRyYSB3 YWl0X2NvbmQgd3JhcHBlcnM8YnI+CiZndDsgPGJyPgomZ3Q7ICB0ZXN0L2FwcC9zb2NrZXQucmVz dWx0ICAgfCAxMDQgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tPGJyPgom Z3Q7ICB0ZXN0L2FwcC9zb2NrZXQudGVzdC5sdWEgfCAgOTQgKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS08YnI+CiZndDsgIHRlc3QvYXBwL3N1aXRlLmluaSAgICAgICB8ICAgMSAt PGJyPgomZ3Q7ICAzIGZpbGVzIGNoYW5nZWQsIDExNCBpbnNlcnRpb25zKCspLCA4NSBkZWxldGlv bnMoLSk8YnI+Cjxicj4KJmd0OyBkaWZmIC0tZ2l0IGEvdGVzdC9hcHAvc29ja2V0LnRlc3QubHVh IGIvdGVzdC9hcHAvc29ja2V0LnRlc3QubHVhPGJyPgomZ3Q7IGluZGV4IGM3MmQ0MTc2M2Y0Li40 ZWQ2YzBmMjVmNyAxMDA2NDQ8YnI+CiZndDsgLS0tIGEvdGVzdC9hcHAvc29ja2V0LnRlc3QubHVh PGJyPgomZ3Q7ICsrKyBiL3Rlc3QvYXBwL3NvY2tldC50ZXN0Lmx1YTxicj4KJmd0OyBAQCAtMTMs NyArMTMsNyBAQCBlbnYgPSByZXF1aXJlKCd0ZXN0X3J1bicpPGJyPgomZ3Q7ICB0ZXN0X3J1biA9 IGVudi5uZXcoKTxicj4KJmd0OyAgdGVzdF9ydW46Y21kKCJwdXNoIGZpbHRlciAnKGVycm9yOiAu YnVpbHRpbi8uKlsuXWx1YSk6WzAtOV0rJyB0byAnXFwxJyIpPGJyPgomZ3Q7ICA8YnI+CiZndDsg LVdBSVRfQ09ORF9USU1FID0gMTA8YnI+CiZndDsgK1dBSVRfQ09ORF9USU1FID0gMTAwPGJyPgo8 YnI+Ck5pdDogSSB3b3VsZCBuYW1lIGl0IGp1c3QgVElNRU9VVCwgc2luY2UgaXQgaXMgbm90IG9u bHkgZm9yPGJyPgp0ZXN0X3J1bjp3YWl0X2NvbmQoKSBub3cuPGJyPgo8YnI+CiZndDsgQEAgLTYx OSw4ICs2MDgsMTQgQEAgczpzZXR0aW1lb3V0KDEwMDUwMCk8YnI+CiZndDsgIHJjaCwgd2NoID0g ZmliZXIuY2hhbm5lbCgxKSwgZmliZXIuY2hhbm5lbCgxKTxicj4KJmd0OyAgc2MgPSBzb2NrZXQu Y29ubmVjdChob3N0LCBwb3J0KTxicj4KJmd0OyAgdGVzdF9ydW46Y21kKCJzZXRvcHQgZGVsaW1p dGVyICc7JyIpPGJyPgomZ3Q7ICtzb2NrZXRfb3BlbmVkID0gdHJ1ZTxicj4KJmd0OyAgY2ZpYmVy ID0gZmliZXIuY3JlYXRlKGZ1bmN0aW9uKHNjLCByY2gsIHdjaCk8YnI+CiZndDsgLSAgICB3aGls ZSBzYzpzZW5kKHdjaDpnZXQoKSkgYW5kIHJjaDpwdXQoc2M6cmVjZWl2ZSgiKmwiKSkgZG8gZW5k PGJyPgomZ3Q7ICsgICAgd2hpbGUgc29ja2V0X29wZW5lZCBkbzxicj4KJmd0OyArICAgICAgICBz YzpzZW5kKHdjaDpnZXQoKSk8YnI+CiZndDsgKyAgICAgICAgbG9jYWwgZGF0YSA9IHNjOnJlY2Vp dmUoIipsIik8YnI+CiZndDsgKyAgICAgICAgaWYgbm90IHNvY2tldF9vcGVuZWQgdGhlbiBzYzpj bG9zZSgpIGVuZDxicj4KJmd0OyArICAgICAgICByY2g6cHV0KGRhdGEpPGJyPgomZ3Q7ICsgICAg ZW5kPGJyPgo8YnI+Ckkgd291bGQgdXNlIGV4aXN0aW5nIGNoYW5uZWwgdG8gc2lnbmFsIHRoZSBm aWJlciB0byBjbG9zZSB0aGUgc29ja2V0OiBpdDxicj4KbG9va3Mgc2ltcGxlciB0aGVuIHVzaW5n IGEgY2hhbm5lbCBhbmQgYSB2YXJpYWJsZSBib3RoLiBQcm9wb3NlZCBkaWZmOjxicj4KPGJyPgpk aWZmIC0tZ2l0IGEvdGVzdC9hcHAvc29ja2V0LnRlc3QubHVhIGIvdGVzdC9hcHAvc29ja2V0LnRl c3QubHVhPGJyPgppbmRleCA0ZWQ2YzBmMjUuLjBmZTIyNzA5YSAxMDA2NDQ8YnI+Ci0tLSBhL3Rl c3QvYXBwL3NvY2tldC50ZXN0Lmx1YTxicj4KKysrIGIvdGVzdC9hcHAvc29ja2V0LnRlc3QubHVh PGJyPgpAQCAtNjA4LDEzICs2MDgsMTYgQEAgczpzZXR0aW1lb3V0KDEwMDUwMCk8YnI+CiZuYnNw O3JjaCwgd2NoID0gZmliZXIuY2hhbm5lbCgxKSwgZmliZXIuY2hhbm5lbCgxKTxicj4KJm5ic3A7 c2MgPSBzb2NrZXQuY29ubmVjdChob3N0LCBwb3J0KTxicj4KJm5ic3A7dGVzdF9ydW46Y21kKCJz ZXRvcHQgZGVsaW1pdGVyICc7JyIpPGJyPgotc29ja2V0X29wZW5lZCA9IHRydWU8YnI+CiZuYnNw O2NmaWJlciA9IGZpYmVyLmNyZWF0ZShmdW5jdGlvbihzYywgcmNoLCB3Y2gpPGJyPgotICAgIHdo aWxlIHNvY2tldF9vcGVuZWQgZG88YnI+Ci0gICAgICAgIHNjOnNlbmQod2NoOmdldCgpKTxicj4K LSAgICAgICAgbG9jYWwgZGF0YSA9IHNjOnJlY2VpdmUoIipsIik8YnI+Ci0gICAgICAgIGlmIG5v dCBzb2NrZXRfb3BlbmVkIHRoZW4gc2M6Y2xvc2UoKSBlbmQ8YnI+Ci0gICAgICAgIHJjaDpwdXQo ZGF0YSk8YnI+CisgICAgd2hpbGUgdHJ1ZSBkbzxicj4KKyAgICAgICAgbG9jYWwgb3V0Z29pbmdf ZGF0YSA9IHdjaDpnZXQoKTxicj4KKyAgICAgICAgaWYgb3V0Z29pbmdfZGF0YSA9PSBuaWwgdGhl bjxicj4KKyAgICAgICAgICAgIHNjOmNsb3NlKCk8YnI+CisgICAgICAgICAgICBicmVhazxicj4K KyAgICAgICAgZW5kPGJyPgorICAgICAgICBzYzpzZW5kKG91dGdvaW5nX2RhdGEpPGJyPgorICAg ICAgICBsb2NhbCBpbmNvbWluZ19kYXRhID0gc2M6cmVjZWl2ZSgiKmwiKTxicj4KKyAgICAgICAg cmNoOnB1dChpbmNvbWluZ19kYXRhKTxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 ZW5kPGJyPgombmJzcDtlbmQsIHNjLCByY2gsIHdjaCk7PGJyPgombmJzcDt0ZXN0X3J1bjpjbWQo InNldG9wdCBkZWxpbWl0ZXIgJyciKTs8YnI+CkBAIC02NDYsOSArNjQ5LDEwIEBAIHJjaDpnZXQo KTxicj4KJm5ic3A7d2NoOnB1dCgiREFUQVxuIik8YnI+CiZuYnNwO2M6cmVjZWl2ZSg0KTxicj4K Jm5ic3A7YzpyZWNlaXZlKCIqbCIpPGJyPgotc29ja2V0X29wZW5lZCA9IGZhbHNlPGJyPgorcmNo OmdldCgpPGJyPgombmJzcDt3Y2g6cHV0KCJGdSIpPGJyPgombmJzcDtjOnNlbmQoIjM1NCBQbGVh c2UgdHlwZSB5b3VyIG1lc3NhZ2VcbiIpPGJyPgord2NoOnB1dChuaWwpIC0tIEVPRjxicj4KJm5i c3A7YzpyZWNlaXZlKCIqbCIsICJMaW5lOiAiKTxicj4KJm5ic3A7YzpyZWNlaXZlKCk8YnI+CiZu YnNwO2M6cmVjZWl2ZSgxMCk8YnI+Cjxicj4KJmd0OyAgZW5kLCBzYywgcmNoLCB3Y2gpOzxicj4K Jmd0OyAgdGVzdF9ydW46Y21kKCJzZXRvcHQgZGVsaW1pdGVyICcnIik7PGJyPgomZ3Q7ICA8YnI+ CiZndDsgQEAgLTY1MSw5ICs2NDYsOSBAQCByY2g6Z2V0KCk8YnI+CiZndDsgIHdjaDpwdXQoIkRB VEFcbiIpPGJyPgomZ3Q7ICBjOnJlY2VpdmUoNCk8YnI+CiZndDsgIGM6cmVjZWl2ZSgiKmwiKTxi cj4KJmd0OyArc29ja2V0X29wZW5lZCA9IGZhbHNlPGJyPgomZ3Q7ICB3Y2g6cHV0KCJGdSIpPGJy PgomZ3Q7ICBjOnNlbmQoIjM1NCBQbGVhc2UgdHlwZSB5b3VyIG1lc3NhZ2VcbiIpPGJyPgomZ3Q7 IC1zYzpjbG9zZSgpPGJyPgomZ3Q7ICBjOnJlY2VpdmUoIipsIiwgIkxpbmU6ICIpPGJyPgomZ3Q7 ICBjOnJlY2VpdmUoKTxicj4KJmd0OyAgYzpyZWNlaXZlKDEwKTxicj4KPGJyPgomZ3Q7IEBAIC03 NzgsNyArNzczLDkgQEAgZSA9PSBlcnJuby5FQUdBSU4gLS0gZXhwZWN0ZWQgdHJ1ZTxicj4KJmd0 OyAgPGJyPgomZ3Q7ICAtLSBjYXNlOiByZWN2LCB6ZXJvIGRhdGFncmFtPGJyPgomZ3Q7ICBzZW5k dG9femVybyhzZW5kaW5nX3NvY2tldCwgJzEyNy4wLjAuMScsIHJlY2VpdmluZ19zb2NrZXRfcG9y dCk8YnI+CiZndDsgLXJlY2VpdmVkX21lc3NhZ2UgPSByZWNlaXZpbmdfc29ja2V0OnJlY3YoKTxi cj4KJmd0OyArcmVjZWl2ZWRfbWVzc2FnZSA9IHRlc3RfcnVuOndhaXRfY29uZChmdW5jdGlvbigp ICAgICAgICBcPGJyPgomZ3Q7ICsgICAgcmV0dXJuIHJlY2VpdmluZ19zb2NrZXQ6cmVjdigpICAg ICAgICAgICAgICAgICAgICAgIFw8YnI+CiZndDsgK2VuZCwgV0FJVF9DT05EX1RJTUUpPGJyPgo8 YnI+ClByb3Bvc2VkIHRvIHVzZSA6cmVhZGFibGUoKSAoc2VlIGFib3ZlKS48YnI+Cjxicj4KJmd0 OyAtLS0gY2FzZTogc2lja2V0IHJlY2VpdmUgaW5jb25zaXN0ZW50IGJlaGF2aW9yPGJyPgomZ3Q7 ICstLSBjYXNlOiBzb2NrZXQgcmVjZWl2ZSBpbmNvbnNpc3RlbnQgYmVoYXZpb3I8YnI+CiZndDsg IGNoYW4gPSBmaWJlci5jaGFubmVsKCk8YnI+CiZndDsgIGNvdW50ZXIgPSAwPGJyPgomZ3Q7ICBm biA9IGZ1bmN0aW9uKHMpIGNvdW50ZXIgPSAwOyB3aGlsZSB0cnVlIGRvIHM6d3JpdGUoKHRvc3Ry aW5nKGNvdW50ZXIpKTpyZXAoY2hhbjpnZXQoKSkpOyBjb3VudGVyID0gY291bnRlciArIDEgZW5k IGVuZDxicj4KJmd0OyAtc3J2ID0gc29ja2V0LnRjcF9zZXJ2ZXIoJzAuMC4wLjAnLCA4ODg4LCBm bik8YnI+CiZndDsgLXMgPSBzb2NrZXQuY29ubmVjdCgnbG9jYWxob3N0JywgODg4OCk8YnI+CiZn dDsgK3NydiA9IHNvY2tldC50Y3Bfc2VydmVyKCcwLjAuMC4wJywgMCwgZm4pPGJyPgomZ3Q7ICtz ID0gc29ja2V0LmNvbm5lY3QoJ2xvY2FsaG9zdCcsIHNydjpuYW1lKCkucG9ydCk8YnI+Cjxicj4K UHJvcG9zZWQgdG8gY29ubmVjdCB0byAxMjcuMC4wLjEgKHNlZSBhYm92ZSkuPGJyPgo8YnI+CiZn dDsgIGNoYW46cHV0KDUpPGJyPgomZ3Q7ICBjaGFuOnB1dCg1KTxicj4KJmd0OyAgczpyZWNlaXZl KDUpPGJyPgo8L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgCgkJCgk8L2Rpdj4KCgkKPC9kaXY+ CgoKPC9kaXY+CjwvYmxvY2txdW90ZT4KPGJyPgo8YnI+LS0gPGJyPklseWEgS29zYXJldjxicj48 L0JPRFk+PC9IVE1MPgo= ----ALT--6nHRnCr966Dvt14k2zsFMA2BfJToPZsv1577308011--