From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f470.i.mail.ru (f470.i.mail.ru [185.5.136.247]) (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 1D5FC431780 for ; Sun, 23 Aug 2020 15:53:33 +0300 (MSK) From: =?UTF-8?B?U2VyZ2UgUGV0cmVua28=?= MIME-Version: 1.0 Date: Sun, 23 Aug 2020 15:53:32 +0300 Reply-To: =?UTF-8?B?U2VyZ2UgUGV0cmVua28=?= Message-ID: <1598187212.879211088@f470.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--633937fA55D032831f74816bBd72E8181598187212" In-Reply-To: <46c58e05328a4b9e85d6837fe922e308bd120ad4.1598049870.git.v.shpilevoy@tarantool.org> References: <46c58e05328a4b9e85d6837fe922e308bd120ad4.1598049870.git.v.shpilevoy@tarantool.org> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_1/1=5D_box=3A_introduce_sp?= =?utf-8?b?YWNlOmFsdGVyKCk=?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?VmxhZGlzbGF2IFNocGlsZXZveQ==?= Cc: tarantool-patches@dev.tarantool.org ----ALT--633937fA55D032831f74816bBd72E8181598187212 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpIcKgVGhhbmtzIGZvciB0aGUgcGF0Y2ghCsKgIAo+0KHRg9Cx0LHQvtGC0LAsIDIyINCw0LLQ s9GD0YHRgtCwIDIwMjAsIDE6NDYgKzAzOjAwINC+0YIgVmxhZGlzbGF2IFNocGlsZXZveSA8di5z aHBpbGV2b3lAdGFyYW50b29sLm9yZz46Cj7CoAo+VGhlcmUgd2FzIG5vIHdheSB0byBjaGFuZ2Ug Y2VydGFpbiBzcGFjZSBwYXJhbWV0ZXJzIHdpdGhvdXQgaXRzCj5yZWNyZWF0aW9uIG9yIG1hbnVh bCB1cGRhdGUgb2YgaW50ZXJuYWwgc3lzdGVtIHNwYWNlIF9zcGFjZS4gRXZlbgo+aWYgc29tZSBv ZiB0aGVtIHdlcmUgbGVnYWwgdG8gdXBkYXRlOiBmaWVsZF9jb3VudCwgb3duZXIsIGZsYWcgb2YK PmJlaW5nIHRlbXBvcmFyeSwgaXNfc3luYyBmbGFnLgo+Cj5UaGUgcGF0Y2ggaW50cm9kdWNlcyBm dW5jdGlvbiBzcGFjZTphbHRlcigpLCB3aGljaCBhY2NlcHRzIGEKPnN1YnNldCBvZiBwYXJhbWV0 ZXJzIGZyb20gYm94LnNjaGVtYS5zcGFjZS5jcmVhdGUgd2hpY2ggYXJlCj5tdXRhYmxlLCBhbmQg J25hbWUnIHBhcmFtZXRlci4gVGhlcmUgaXMgYSBtZXRob2Qgc3BhY2U6cmVuYW1lKCksCj5idXQg c3RpbGwgdGhlIHBhcmFtZXRlciBpcyBhZGRlZCB0byBzcGFjZTphbHRlcigpIHRvbywgdG8gYmUK PmNvbnNpc3RlbnQgd2l0aCBpbmRleDphbHRlcigpLCB3aGljaCBhbHNvIGFjY2VwdHMgYSBuZXcg bmFtZS4KPgo+Q2xvc2VzICM1MTU1Cj4KPkBUYXJhbnRvb2xCb3QgZG9jdW1lbnQKPlRpdGxlOiBO ZXcgZnVuY3Rpb24gc3BhY2U6YWx0ZXIob3B0aW9ucykKPgo+U3BhY2Ugb2JqZWN0cyBpbiBMdWEg KHN0b3JlZCBpbiBgYm94LnNwYWNlYCB0YWJsZSkgbm93IGhhdmUgYSBuZXcKPm1ldGhvZDogYHNw YWNlOmFsdGVyKG9wdGlvbnMpYC4KPgo+VGhlIG1ldGhvZCBhY2NlcHRzIGEgdGFibGUgd2l0aCBw YXJhbWV0ZXJzIGBmaWVsZF9jb3VudGAsIGB1c2VyYCwKPmBmb3JtYXRgLCBgdGVtcG9yYXJ5YCwg YGlzX3N5bmNgLCBhbmQgYG5hbWVgLiBBbGwgcGFyYW1ldGVycyBoYXZlCj50aGUgc2FtZSBtZWFu aW5nIGFzIGluIGBib3guc2NoZW1hLnNwYWNlLmNyZWF0ZShuYW1lLCBvcHRpb25zKWAuCj4KPk5v dGUsIGBuYW1lYCBwYXJhbWV0ZXIgaW4gYGJveC5zY2hlbWEuc3BhY2UuY3JlYXRlYCBpcyBzZXBh cmF0ZWQKPmZyb20gYG9wdGlvbnNgIHRhYmxlLiBJdCBpcyBub3Qgc28gaW4gYHNwYWNlOmFsdGVy KG9wdGlvbnMpYCAtCj5oZXJlIGFsbCBwYXJhbWV0ZXJzIGFyZSBzcGVjaWZpZWQgaW4gdGhlIGBv cHRpb25zYCB0YWJsZS4KPgo+VGhlIGZ1bmN0aW9uIGRvZXMgbm90IHJldHVybiBhbnl0aGluZyBp biBjYXNlIG9mIHN1Y2Nlc3MsIGFuZAo+dGhyb3dzIGFuIGVycm9yIHdoZW4gZmFpbHMuCj4KPkZy b20gJ1N5bmNocm9ub3VzIHJlcGxpY2F0aW9uJyBwYWdlLCBmcm9tICdMaW1pdGF0aW9ucyBhbmQg a25vd24KPnByb2JsZW1zJyBpdCBpcyBuZWNlc3NhcnkgdG8gZGVsZXRlIHRoZSBub3RlIGFib3V0 ICJubyB3YXkgdG8KPmVuYWJsZSBzeW5jaHJvbm91cyByZXBsaWNhdGlvbiBmb3IgZXhpc3Rpbmcg c3BhY2VzIi4gSW5zdGVhZCBpdAo+aXMgbmVjZXNzYXJ5IHRvIHNheSwgdGhhdCBpdCBjYW4gYmUg ZW5hYmxlZCB1c2luZwo+YHNwYWNlOmFsdGVyKHtpc19zeW5jID0gdHJ1ZX0pYC4gQW5kIGNhbiBi ZSBkaXNhYmxlZCBieSBzZXR0aW5nCj5gaXNfc3luYyA9IGZhbHNlYC4KPmh0dHBzOi8vd3d3LnRh cmFudG9vbC5pby9lbi9kb2MvMi41L2Jvb2svcmVwbGljYXRpb24vcmVwbF9zeW5jLyNsaW1pdGF0 aW9ucy1hbmQta25vd24tcHJvYmxlbXMKPgo+VGhlIGZ1bmN0aW9uIHdpbGwgYXBwZWFyIGluID49 IDIuNS4yLgo+LS0tCj5CcmFuY2g6ICBodHRwOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50 b29sL3RyZWUvZ2Vyb2xkMTAzL2doLTUxNTUtc3BhY2UtYWx0ZXIKPklzc3VlOiAgaHR0cHM6Ly9n aXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzUxNTUKPgo+QENoYW5nZUxvZwo+ KiBOZXcgZnVuY3Rpb24gYHNwYWNlOmFsdGVyKG9wdGlvbnMpYCB0byBjaGFuZ2Ugc29tZSBzcGFj ZSBzZXR0aW5ncyB3aXRob3V0IHJlY3JlYXRpb24gbm9yIHRvdWNoaW5nIGBfc3BhY2VgIHNwYWNl Lgo+Cj7CoHNyYy9ib3gvbHVhL3NjaGVtYS5sdWEgfCA2MyArKysrKysrCj7CoHRlc3QvYm94L2Fs dGVyLnJlc3VsdCB8IDM3OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Cj7CoHRlc3QvYm94L2FsdGVyLnRlc3QubHVhIHwgMTQyICsrKysrKysrKysrKysrKwo+wqAzIGZp bGVzIGNoYW5nZWQsIDU4MyBpbnNlcnRpb25zKCspCj4KPmRpZmYgLS1naXQgYS9zcmMvYm94L2x1 YS9zY2hlbWEubHVhIGIvc3JjL2JveC9sdWEvc2NoZW1hLmx1YQo+aW5kZXggM2MzZmEzZWY4Li43 ZmUxZWE3YTIgMTAwNjQ0Cj4tLS0gYS9zcmMvYm94L2x1YS9zY2hlbWEubHVhCj4rKysgYi9zcmMv Ym94L2x1YS9zY2hlbWEubHVhCj5AQCAtNTM5LDYgKzUzOSw2NCBAQCBib3guc2NoZW1hLnNwYWNl LnJlbmFtZSA9IGZ1bmN0aW9uKHNwYWNlX2lkLCBzcGFjZV9uYW1lKQo+wqDCoMKgwqDCoF9zcGFj ZTp1cGRhdGUoc3BhY2VfaWQsIHt7Ij0iLCAzLCBzcGFjZV9uYW1lfX0pCj7CoGVuZAo+wqAKPits b2NhbCBhbHRlcl9zcGFjZV90ZW1wbGF0ZSA9IHsKPisgZmllbGRfY291bnQgPSAnbnVtYmVyJywK PisgdXNlciA9ICdzdHJpbmcsIG51bWJlcicsCj4rIGZvcm1hdCA9ICd0YWJsZScsCj4rIHRlbXBv cmFyeSA9ICdib29sZWFuJywKPisgaXNfc3luYyA9ICdib29sZWFuJywKPisgbmFtZSA9ICdzdHJp bmcnLAo+K30KPisKPitib3guc2NoZW1hLnNwYWNlLmFsdGVyID0gZnVuY3Rpb24oc3BhY2VfaWQs IG9wdGlvbnMpCj4rIGxvY2FsIHNwYWNlID0gYm94LnNwYWNlW3NwYWNlX2lkXQo+KyBpZiBub3Qg c3BhY2UgdGhlbgo+KyBib3guZXJyb3IoYm94LmVycm9yLk5PX1NVQ0hfU1BBQ0UsICcjJy4udG9z dHJpbmcoc3BhY2VfaWQpKQo+KyBlbmQKPisgY2hlY2tfcGFyYW1fdGFibGUob3B0aW9ucywgYWx0 ZXJfc3BhY2VfdGVtcGxhdGUpCj4rCj4rIGxvY2FsIF9zcGFjZSA9IGJveC5zcGFjZS5fc3BhY2UK PisgbG9jYWwgdHVwbGUgPSBfc3BhY2U6Z2V0KHtzcGFjZS5pZH0pCj4rIGFzc2VydCh0dXBsZSB+ PSBuaWwpCj4rCj4rIGxvY2FsIG93bmVyCj4rIGlmIG9wdGlvbnMudXNlciB0aGVuCj4rIG93bmVy ID0gdXNlcl9vcl9yb2xlX3Jlc29sdmUob3B0aW9ucy51c2VyKQo+KyBpZiBub3Qgb3duZXIgdGhl bgo+KyBib3guZXJyb3IoYm94LmVycm9yLk5PX1NVQ0hfVVNFUiwgb3B0aW9ucy51c2VyKQo+KyBl bmQKPisgZWxzZQo+KyBvd25lciA9IHR1cGxlLm93bmVyCj4rIGVuZAo+Kwo+KyBsb2NhbCBuYW1l ID0gb3B0aW9ucy5uYW1lIG9yIHR1cGxlLm5hbWUKPisgbG9jYWwgZmllbGRfY291bnQgPSBvcHRp b25zLmZpZWxkX2NvdW50IG9yIHR1cGxlLmZpZWxkX2NvdW50Cj4rIGxvY2FsIGZsYWdzID0gdHVw bGUuZmxhZ3MKPisKPisgaWYgb3B0aW9ucy50ZW1wb3Jhcnkgfj0gbmlsIHRoZW4KPisgZmxhZ3Mu dGVtcG9yYXJ5ID0gb3B0aW9ucy50ZW1wb3JhcnkKPisgZW5kCj4rCj4rIGlmIG9wdGlvbnMuaXNf c3luYyB+PSBuaWwgdGhlbgo+KyBmbGFncy5pc19zeW5jID0gb3B0aW9ucy5pc19zeW5jCj4rIGVu ZAo+Kwo+KyBsb2NhbCBmb3JtYXQKPisgaWYgb3B0aW9ucy5mb3JtYXQgfj0gbmlsIHRoZW4KPisg Zm9ybWF0ID0gdXBkYXRlX2Zvcm1hdChvcHRpb25zLmZvcm1hdCkKPisgZWxzZQo+KyBmb3JtYXQg PSB0dXBsZS5mb3JtYXQKPisgZW5kCj4rCj4rIHR1cGxlID0gdHVwbGU6dG90YWJsZSgpCj4rIHR1 cGxlWzJdID0gb3duZXIKPisgdHVwbGVbM10gPSBuYW1lCj4rIHR1cGxlWzVdID0gZmllbGRfY291 bnQKPisgdHVwbGVbNl0gPSBmbGFncwo+KyB0dXBsZVs3XSA9IGZvcm1hdAo+KyBfc3BhY2U6cmVw bGFjZSh0dXBsZSkKPitlbmQKPisKPsKgYm94LnNjaGVtYS5pbmRleCA9IHt9Cj7CoAo+wqBsb2Nh bCBmdW5jdGlvbiB1cGRhdGVfaW5kZXhfcGFydHNfMV82XzAocGFydHMpCj5AQCAtMTcxOCw2ICsx Nzc2LDExIEBAIHNwYWNlX210LnJlbmFtZSA9IGZ1bmN0aW9uKHNwYWNlLCBuYW1lKQo+wqDCoMKg wqDCoGNoZWNrX3NwYWNlX2V4aXN0cyhzcGFjZSkKPsKgwqDCoMKgwqByZXR1cm4gYm94LnNjaGVt YS5zcGFjZS5yZW5hbWUoc3BhY2UuaWQsIG5hbWUpCj7CoGVuZAo+K3NwYWNlX210LmFsdGVyID0g ZnVuY3Rpb24oc3BhY2UsIG9wdGlvbnMpCj4rIGNoZWNrX3NwYWNlX2FyZyhzcGFjZSwgJ2FsdGVy JykKPisgY2hlY2tfc3BhY2VfZXhpc3RzKHNwYWNlKQo+KyByZXR1cm4gYm94LnNjaGVtYS5zcGFj ZS5hbHRlcihzcGFjZS5pZCwgb3B0aW9ucykKPitlbmQKPsKgc3BhY2VfbXQuY3JlYXRlX2luZGV4 ID0gZnVuY3Rpb24oc3BhY2UsIG5hbWUsIG9wdGlvbnMpCj7CoMKgwqDCoMKgY2hlY2tfc3BhY2Vf YXJnKHNwYWNlLCAnY3JlYXRlX2luZGV4JykKPsKgwqDCoMKgwqBjaGVja19zcGFjZV9leGlzdHMo c3BhY2UpCj5kaWZmIC0tZ2l0IGEvdGVzdC9ib3gvYWx0ZXIucmVzdWx0IGIvdGVzdC9ib3gvYWx0 ZXIucmVzdWx0Cj5pbmRleCBmMTUwZmFhYzEuLjIzN2MyZDhhYSAxMDA2NDQKPi0tLSBhL3Rlc3Qv Ym94L2FsdGVyLnJlc3VsdAo+KysrIGIvdGVzdC9ib3gvYWx0ZXIucmVzdWx0Cj5AQCAtMTE4MSwz ICsxMTgxLDM4MSBAQCBzOmRyb3AoKQo+wqBib3guaW50ZXJuYWwuY29sbGF0aW9uLmRyb3AoJ3Rl c3QnKQo+wqAtLS0KPsKgLi4uCj4rLS0KPistLSBnaC01MTU1OiBzcGFjZTphbHRlcigpLCBhZGRl ZCBpbiBvcmRlciB0byBtYWtlIGl0IHBvc3NpYmxlIHRvIHR1cm4gb24vb2ZmCj4rLS0gaXNfc3lu YywgYnV0IGl0IGlzIGhhbmR5IGZvciBvdGhlciBvcHRpb25zIHRvby4KPistLQo+K3MgPSBib3gu c2NoZW1hLmNyZWF0ZV9zcGFjZSgndGVzdCcpCj4rLS0tCj4rLi4uCj4rcGsgPSBzOmNyZWF0ZV9p bmRleCgncGsnKQo+Ky0tLQo+Ky4uLgo+Ky0tIEJhZCB1c2FnZS4KPitzOmFsdGVyKHt1bmtub3du ID0gdHJ1ZX0pCj4rLS0tCj4rLSBlcnJvcjogSWxsZWdhbCBwYXJhbWV0ZXJzLCB1bmV4cGVjdGVk IG9wdGlvbiAndW5rbm93bicKPisuLi4KPitvaywgZXJyID0gcGNhbGwocy5hbHRlciwge30pCj4r LS0tCj4rLi4uCj4rYXNzZXJ0KGVycjptYXRjaCgiVXNlIHNwYWNlOmFsdGVyIikgfj0gbmlsKQo+ Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+Ky0tIEFsdGVyIGZpZWxkX2NvdW50Lgo+K3M6cmVwbGFjZXsx fQo+Ky0tLQo+Ky0gWzFdCj4rLi4uCj4rLS0gQ2FuJ3QgdXBkYXRlIG9uIG5vbi1lbXB0eSBzcGFj ZS4KPitzOmFsdGVyKHtmaWVsZF9jb3VudCA9IDJ9KQo+Ky0tLQo+Ky0gZXJyb3I6IFR1cGxlIGZp ZWxkIGNvdW50IDEgZG9lcyBub3QgbWF0Y2ggc3BhY2UgZmllbGQgY291bnQgMgo+Ky4uLgo+K3M6 ZGVsZXRlezF9Cj4rLS0tCj4rLSBbMV0KPisuLi4KPistLSBDYW4gdXBkYXRlIG9uIGVtcHR5IHNw YWNlLgo+K3M6YWx0ZXIoe2ZpZWxkX2NvdW50ID0gMn0pCj4rLS0tCj4rLi4uCj4rczpyZXBsYWNl ezF9Cj4rLS0tCj4rLSBlcnJvcjogVHVwbGUgZmllbGQgY291bnQgMSBkb2VzIG5vdCBtYXRjaCBz cGFjZSBmaWVsZCBjb3VudCAyCj4rLi4uCj4rczpyZXBsYWNlezEsIDF9Cj4rLS0tCj4rLSBbMSwg MV0KPisuLi4KPistLSBXaGVuIG5vdCBzcGVjaWZpZWQgb3IgbmlsIC0gaWdub3JlZC4KPitzOmFs dGVyKHtmaWVsZF9jb3VudCA9IG5pbH0pCj4rLS0tCj4rLi4uCj4rczpyZXBsYWNlezJ9Cj4rLS0t Cj4rLSBlcnJvcjogVHVwbGUgZmllbGQgY291bnQgMSBkb2VzIG5vdCBtYXRjaCBzcGFjZSBmaWVs ZCBjb3VudCAyCj4rLi4uCj4rczpyZXBsYWNlezIsIDJ9Cj4rLS0tCj4rLSBbMiwgMl0KPisuLi4K PistLSBTZXQgdG8gMCBkcm9wcyB0aGUgcmVzdHJpY3Rpb24uCj4rczphbHRlcih7ZmllbGRfY291 bnQgPSAwfSkKPistLS0KPisuLi4KPitzOnRydW5jYXRlKCkKPistLS0KPisuLi4KPitzOnJlcGxh Y2V7MX0KPistLS0KPistIFsxXQo+Ky4uLgo+K3M6ZGVsZXRlezF9Cj4rLS0tCj4rLSBbMV0KPisu Li4KPistLSBJbnZhbGlkIHZhbHVlcy4KPitzOmFsdGVyKHtmaWVsZF9jb3VudCA9IGJveC5OVUxM fSkKPistLS0KPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFyYW1ldGVy ICdmaWVsZF9jb3VudCcgc2hvdWxkIGJlIG9mIHR5cGUgbnVtYmVyCj4rLi4uCj4rczphbHRlcih7 ZmllbGRfY291bnQgPSAnc3RyaW5nJ30pCj4rLS0tCj4rLSBlcnJvcjogSWxsZWdhbCBwYXJhbWV0 ZXJzLCBvcHRpb25zIHBhcmFtZXRlciAnZmllbGRfY291bnQnIHNob3VsZCBiZSBvZiB0eXBlIG51 bWJlcgo+Ky4uLgo+Ky0tIEFsdGVyIG93bmVyLgo+K293bmVyMSA9IGJveC5zcGFjZS5fc3BhY2U6 Z2V0e3MuaWR9Lm93bmVyCj4rLS0tCj4rLi4uCj4rYm94LnNjaGVtYS51c2VyLmNyZWF0ZSgndGVz dCcpCj4rLS0tCj4rLi4uCj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVkIG9yIG5pbCAtIGlnbm9yZWQu Cj4rczphbHRlcih7dXNlciA9IG5pbH0pCj4rLS0tCj4rLi4uCj4rb3duZXIyID0gYm94LnNwYWNl Ll9zcGFjZTpnZXR7cy5pZH0ub3duZXIKPistLS0KPisuLi4KPithc3NlcnQob3duZXIyID09IG93 bmVyMSkKPistLS0KPistIHRydWUKPisuLi4KPitzOmFsdGVyKHt1c2VyID0gJ3Rlc3QnfSkKPist LS0KPisuLi4KPitvd25lcjIgPSBib3guc3BhY2UuX3NwYWNlOmdldHtzLmlkfS5vd25lcgo+Ky0t LQo+Ky4uLgo+K2Fzc2VydChvd25lcjIgfj0gb3duZXIxKQo+Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+ K3M6YWx0ZXIoe3VzZXIgPSBvd25lcjF9KQo+Ky0tLQo+Ky4uLgo+K293bmVyMiA9IGJveC5zcGFj ZS5fc3BhY2U6Z2V0e3MuaWR9Lm93bmVyCj4rLS0tCj4rLi4uCj4rYXNzZXJ0KG93bmVyMiA9PSBv d25lcjEpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rYm94LnNjaGVtYS51c2VyLmRyb3AoJ3Rlc3Qn KQo+Ky0tLQo+Ky4uLgo+Ky0tIEludmFsaWQgdmFsdWVzLgo+K3M6YWx0ZXIoe3VzZXIgPSBib3gu TlVMTH0pCj4rLS0tCj4rLSBlcnJvcjogJ0lsbGVnYWwgcGFyYW1ldGVycywgb3B0aW9ucyBwYXJh bWV0ZXIgJyd1c2VyJycgc2hvdWxkIGJlIG9uZSBvZiB0eXBlczogc3RyaW5nLAo+KyBudW1iZXIn Cj4rLi4uCj4rczphbHRlcih7dXNlciA9IHRydWV9KQo+Ky0tLQo+Ky0gZXJyb3I6ICdJbGxlZ2Fs IHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFyYW1ldGVyICcndXNlcicnIHNob3VsZCBiZSBvbmUgb2Yg dHlwZXM6IHN0cmluZywKPisgbnVtYmVyJwo+Ky4uLgo+K3M6YWx0ZXIoe3VzZXIgPSAnbm90X2V4 aXN0aW5nJ30pCj4rLS0tCj4rLSBlcnJvcjogVXNlciAnbm90X2V4aXN0aW5nJyBpcyBub3QgZm91 bmQKPisuLi4KPistLSBBbHRlciBmb3JtYXQuCj4rZm9ybWF0ID0ge3tuYW1lID0gJ2ZpZWxkMScs IHR5cGUgPSAndW5zaWduZWQnfX0KPistLS0KPisuLi4KPitzOmFsdGVyKHtmb3JtYXQgPSBmb3Jt YXR9KQo+Ky0tLQo+Ky4uLgo+K3M6Zm9ybWF0KCkKPistLS0KPistIFt7J25hbWUnOiAnZmllbGQx JywgJ3R5cGUnOiAndW5zaWduZWQnfV0KPisuLi4KPistLSBXaGVuIG5vdCBzcGVjaWZpZWQgb3Ig bmlsIC0gaWdub3JlZC4KPitzOmFsdGVyKHtmb3JtYXQgPSBuaWx9KQo+Ky0tLQo+Ky4uLgo+K3M6 Zm9ybWF0KCkKPistLS0KPistIFt7J25hbWUnOiAnZmllbGQxJywgJ3R5cGUnOiAndW5zaWduZWQn fV0KPisuLi4KPit0ID0gczpyZXBsYWNlezF9Cj4rLS0tCj4rLi4uCj4rYXNzZXJ0KHQuZmllbGQx ID09IDEpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rczphbHRlcih7Zm9ybWF0ID0ge319KQo+Ky0t LQo+Ky4uLgo+K2Fzc2VydCh0LmZpZWxkMSA9PSBuaWwpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4r czpkZWxldGV7MX0KPistLS0KPistIFsxXQo+Ky4uLgo+Ky0tIEludmFsaWQgdmFsdWVzLgo+K3M6 YWx0ZXIoe2Zvcm1hdCA9IGJveC5OVUxMfSkKPistLS0KPistIGVycm9yOiBJbGxlZ2FsIHBhcmFt ZXRlcnMsIG9wdGlvbnMgcGFyYW1ldGVyICdmb3JtYXQnIHNob3VsZCBiZSBvZiB0eXBlIHRhYmxl Cj4rLi4uCj4rczphbHRlcih7Zm9ybWF0ID0gdHJ1ZX0pCj4rLS0tCj4rLSBlcnJvcjogSWxsZWdh bCBwYXJhbWV0ZXJzLCBvcHRpb25zIHBhcmFtZXRlciAnZm9ybWF0JyBzaG91bGQgYmUgb2YgdHlw ZSB0YWJsZQo+Ky4uLgo+K3M6YWx0ZXIoe2Zvcm1hdCA9IHt7ezEsIDIsIDMsIDR9fX19KQo+Ky0t LQo+Ky0gZXJyb3I6ICdJbGxlZ2FsIHBhcmFtZXRlcnMsIGZvcm1hdFsxXTogbmFtZSAoc3RyaW5n KSBpcyBleHBlY3RlZCcKPisuLi4KPistLQo+Ky0tIEFsdGVyIHRlbXBvcmFyeS4KPistLQo+K3M6 YWx0ZXIoe3RlbXBvcmFyeSA9IHRydWV9KQo+Ky0tLQo+Ky4uLgo+K2Fzc2VydChzLnRlbXBvcmFy eSkKPistLS0KPistIHRydWUKPisuLi4KPistLSBXaGVuIG5vdCBzcGVjaWZpZWQgb3IgbmlsIC0g aWdub3JlZC4KPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSBuaWx9KQo+Ky0tLQo+Ky4uLgo+K2Fzc2Vy dChzLnRlbXBvcmFyeSkKPistLS0KPistIHRydWUKPisuLi4KPitzOmFsdGVyKHt0ZW1wb3Jhcnkg PSBmYWxzZX0pCj4rLS0tCj4rLi4uCj4rYXNzZXJ0KG5vdCBzLnRlbXBvcmFyeSkKPistLS0KPist IHRydWUKPisuLi4KPistLSBFbnN1cmUgYWJzZW5jZSBpcyBub3QgdHJlYXRlZCBsaWtlICd0cnVl Jy4KPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSBuaWx9KQo+Ky0tLQo+Ky4uLgo+K2Fzc2VydChub3Qg cy50ZW1wb3JhcnkpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rLS0gSW52YWxpZCB2YWx1ZXMuCj4r czphbHRlcih7dGVtcG9yYXJ5ID0gYm94Lk5VTEx9KQo+Ky0tLQo+Ky0gZXJyb3I6IElsbGVnYWwg cGFyYW1ldGVycywgb3B0aW9ucyBwYXJhbWV0ZXIgJ3RlbXBvcmFyeScgc2hvdWxkIGJlIG9mIHR5 cGUgYm9vbGVhbgo+Ky4uLgo+K3M6YWx0ZXIoe3RlbXBvcmFyeSA9IDEwMH0pCj4rLS0tCj4rLSBl cnJvcjogSWxsZWdhbCBwYXJhbWV0ZXJzLCBvcHRpb25zIHBhcmFtZXRlciAndGVtcG9yYXJ5JyBz aG91bGQgYmUgb2YgdHlwZSBib29sZWFuCj4rLi4uCj4rLS0KPistLSBBbHRlciBpc19zeW5jLgo+ Ky0tCj4rb2xkX3N5bmNocm9fcXVvcnVtID0gYm94LmNmZy5yZXBsaWNhdGlvbl9zeW5jaHJvX3F1 b3J1bQo+Ky0tLQo+Ky4uLgo+K29sZF9zeW5jaHJvX3RpbWVvdXQgPSBib3guY2ZnLnJlcGxpY2F0 aW9uX3N5bmNocm9fdGltZW91dAo+Ky0tLQo+Ky4uLgo+K2JveC5jZmd7IFwKPisgcmVwbGljYXRp b25fc3luY2hyb19xdW9ydW0gPSAyLCBcCj4rIHJlcGxpY2F0aW9uX3N5bmNocm9fdGltZW91dCA9 IDAuMDAxLCBcCj4rfQo+Ky0tLQo+Ky4uLgo+K3M6YWx0ZXIoe2lzX3N5bmMgPSB0cnVlfSkKPist LS0KPisuLi4KPithc3NlcnQocy5pc19zeW5jKQo+Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+K3M6cmVw bGFjZXsxfQo+Ky0tLQo+Ky0gZXJyb3I6IFF1b3J1bSBjb2xsZWN0aW9uIGZvciBhIHN5bmNocm9u b3VzIHRyYW5zYWN0aW9uIGlzIHRpbWVkIG91dAo+Ky4uLgo+Ky0tIFdoZW4gbm90IHNwZWNpZmll ZCBvciBuaWwgLSBpZ25vcmVkLgo+K3M6YWx0ZXIoe2lzX3N5bmMgPSBuaWx9KQo+Ky0tLQo+Ky4u Lgo+K2Fzc2VydChzLmlzX3N5bmMpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rczphbHRlcih7aXNf c3luYyA9IGZhbHNlfSkKPistLS0KPisuLi4KPithc3NlcnQobm90IHMuaXNfc3luYykKPistLS0K PistIHRydWUKPisuLi4KPistLSBFbnN1cmUgYWJzZW5jZSBpcyBub3QgdHJlYXRlZCBsaWtlICd0 cnVlJy4KPitzOmFsdGVyKHtpc19zeW5jID0gbmlsfSkKPistLS0KPisuLi4KPithc3NlcnQobm90 IHMuaXNfc3luYykKPistLS0KPistIHRydWUKPisuLi4KPistLSBJbnZhbGlkIHZhbHVlcy4KPitz OmFsdGVyKHtpc19zeW5jID0gYm94Lk5VTEx9KQo+Ky0tLQo+Ky0gZXJyb3I6IElsbGVnYWwgcGFy YW1ldGVycywgb3B0aW9ucyBwYXJhbWV0ZXIgJ2lzX3N5bmMnIHNob3VsZCBiZSBvZiB0eXBlIGJv b2xlYW4KPisuLi4KPitzOmFsdGVyKHtpc19zeW5jID0gMTAwfSkKPistLS0KPistIGVycm9yOiBJ bGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFyYW1ldGVyICdpc19zeW5jJyBzaG91bGQgYmUg b2YgdHlwZSBib29sZWFuCj4rLi4uCj4rczpyZXBsYWNlezF9Cj4rLS0tCj4rLSBbMV0KPisuLi4K PitzOmRlbGV0ZXsxfQo+Ky0tLQo+Ky0gWzFdCj4rLi4uCj4rYm94LmNmZ3sgXAo+KyByZXBsaWNh dGlvbl9zeW5jaHJvX3F1b3J1bSA9IG9sZF9zeW5jaHJvX3F1b3J1bSwgXAo+KyByZXBsaWNhdGlv bl9zeW5jaHJvX3RpbWVvdXQgPSBvbGRfc3luY2hyb190aW1lb3V0LCBcCj4rfQo+Ky0tLQo+Ky4u Lgo+Ky0tIEFsdGVyIG5hbWUuCj4rczphbHRlcih7bmFtZSA9ICd0ZXN0Mid9KQo+Ky0tLQo+Ky4u Lgo+K2Fzc2VydChib3guc3BhY2UudGVzdDIgfj0gbmlsKQo+Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+ K2Fzc2VydChib3guc3BhY2UudGVzdCA9PSBuaWwpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rYXNz ZXJ0KHMubmFtZSA9PSAndGVzdDInKQo+Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+Ky0tIFdoZW4gbm90 IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVkLgo+K3M6YWx0ZXIoe25hbWUgPSBuaWx9KQo+Ky0t LQo+Ky4uLgo+K2Fzc2VydChib3guc3BhY2UudGVzdDIgfj0gbmlsKQo+Ky0tLQo+Ky0gdHJ1ZQo+ Ky4uLgo+K2Fzc2VydChib3guc3BhY2UudGVzdCA9PSBuaWwpCj4rLS0tCj4rLSB0cnVlCj4rLi4u Cj4rYXNzZXJ0KHMubmFtZSA9PSAndGVzdDInKQo+Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+K3M6YWx0 ZXIoe25hbWUgPSAnX3NwYWNlJ30pCj4rLS0tCj4rLSBlcnJvcjogRHVwbGljYXRlIGtleSBleGlz dHMgaW4gdW5pcXVlIGluZGV4ICduYW1lJyBpbiBzcGFjZSAnX3NwYWNlJwo+Ky4uLgo+K3M6YWx0 ZXIoe25hbWUgPSAndGVzdCd9KQo+Ky0tLQo+Ky4uLgo+K2Fzc2VydChib3guc3BhY2UudGVzdCB+ PSBuaWwpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0MiA9PSBu aWwpCj4rLS0tCj4rLSB0cnVlCj4rLi4uCj4rYXNzZXJ0KHMubmFtZSA9PSAndGVzdCcpCj4rLS0t Cj4rLSB0cnVlCj4rLi4uCj4rLS0gSW52YWxpZCB2YWx1ZXMuCj4rczphbHRlcih7bmFtZSA9IGJv eC5OVUxMfSkKPistLS0KPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFy YW1ldGVyICduYW1lJyBzaG91bGQgYmUgb2YgdHlwZSBzdHJpbmcKPisuLi4KPitzOmFsdGVyKHtu YW1lID0gMTAwfSkKPistLS0KPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMg cGFyYW1ldGVyICduYW1lJyBzaG91bGQgYmUgb2YgdHlwZSBzdHJpbmcKPisuLi4KPitzOmRyb3Ao KQo+Ky0tLQo+Ky4uLgo+K3M6YWx0ZXIoe30pCj4rLS0tCj4rLSBlcnJvcjogU3BhY2UgJ3Rlc3Qn IGRvZXMgbm90IGV4aXN0Cj4rLi4uCj4rb2ssIGVyciA9IHBjYWxsKGJveC5zY2hlbWEuc3BhY2Uu YWx0ZXIsIHMuaWQsIHt9KQo+Ky0tLQo+Ky4uLgo+K2Fzc2VydChlcnI6bWF0Y2goJ2RvZXMgbm90 IGV4aXN0Jykgfj0gbmlsKQo+Ky0tLQo+Ky0gdHJ1ZQo+Ky4uLgo+ZGlmZiAtLWdpdCBhL3Rlc3Qv Ym94L2FsdGVyLnRlc3QubHVhIGIvdGVzdC9ib3gvYWx0ZXIudGVzdC5sdWEKPmluZGV4IDNjYjBj NGY4NC4uYWJkMDhlMmZhIDEwMDY0NAo+LS0tIGEvdGVzdC9ib3gvYWx0ZXIudGVzdC5sdWEKPisr KyBiL3Rlc3QvYm94L2FsdGVyLnRlc3QubHVhCj5AQCAtNDc4LDMgKzQ3OCwxNDUgQEAgdmFsaWRh dGVfaW5kZXhlcygpCj7CoAo+wqBzOmRyb3AoKQo+wqBib3guaW50ZXJuYWwuY29sbGF0aW9uLmRy b3AoJ3Rlc3QnKQo+Kwo+Ky0tCj4rLS0gZ2gtNTE1NTogc3BhY2U6YWx0ZXIoKSwgYWRkZWQgaW4g b3JkZXIgdG8gbWFrZSBpdCBwb3NzaWJsZSB0byB0dXJuIG9uL29mZgo+Ky0tIGlzX3N5bmMsIGJ1 dCBpdCBpcyBoYW5keSBmb3Igb3RoZXIgb3B0aW9ucyB0b28uCj4rLS0KPitzID0gYm94LnNjaGVt YS5jcmVhdGVfc3BhY2UoJ3Rlc3QnKQo+K3BrID0gczpjcmVhdGVfaW5kZXgoJ3BrJykKPisKPist LSBCYWQgdXNhZ2UuCj4rczphbHRlcih7dW5rbm93biA9IHRydWV9KQo+K29rLCBlcnIgPSBwY2Fs bChzLmFsdGVyLCB7fSkKPithc3NlcnQoZXJyOm1hdGNoKCJVc2Ugc3BhY2U6YWx0ZXIiKSB+PSBu aWwpCj4rCj4rLS0gQWx0ZXIgZmllbGRfY291bnQuCj4rczpyZXBsYWNlezF9Cj4rLS0gQ2FuJ3Qg dXBkYXRlIG9uIG5vbi1lbXB0eSBzcGFjZS4KPitzOmFsdGVyKHtmaWVsZF9jb3VudCA9IDJ9KQo+ K3M6ZGVsZXRlezF9Cj4rLS0gQ2FuIHVwZGF0ZSBvbiBlbXB0eSBzcGFjZS4KPitzOmFsdGVyKHtm aWVsZF9jb3VudCA9IDJ9KQo+K3M6cmVwbGFjZXsxfQo+K3M6cmVwbGFjZXsxLCAxfQo+Ky0tIFdo ZW4gbm90IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVkLgo+K3M6YWx0ZXIoe2ZpZWxkX2NvdW50 ID0gbmlsfSkKPitzOnJlcGxhY2V7Mn0KPitzOnJlcGxhY2V7MiwgMn0KPistLSBTZXQgdG8gMCBk cm9wcyB0aGUgcmVzdHJpY3Rpb24uCj4rczphbHRlcih7ZmllbGRfY291bnQgPSAwfSkKPitzOnRy dW5jYXRlKCkKPitzOnJlcGxhY2V7MX0KPitzOmRlbGV0ZXsxfQo+Ky0tIEludmFsaWQgdmFsdWVz Lgo+K3M6YWx0ZXIoe2ZpZWxkX2NvdW50ID0gYm94Lk5VTEx9KQo+K3M6YWx0ZXIoe2ZpZWxkX2Nv dW50ID0gJ3N0cmluZyd9KQo+Kwo+Ky0tIEFsdGVyIG93bmVyLgo+K293bmVyMSA9IGJveC5zcGFj ZS5fc3BhY2U6Z2V0e3MuaWR9Lm93bmVyCj4rYm94LnNjaGVtYS51c2VyLmNyZWF0ZSgndGVzdCcp Cj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVkIG9yIG5pbCAtIGlnbm9yZWQuCj4rczphbHRlcih7dXNl ciA9IG5pbH0pCj4rb3duZXIyID0gYm94LnNwYWNlLl9zcGFjZTpnZXR7cy5pZH0ub3duZXIKPith c3NlcnQob3duZXIyID09IG93bmVyMSkKPitzOmFsdGVyKHt1c2VyID0gJ3Rlc3QnfSkKPitvd25l cjIgPSBib3guc3BhY2UuX3NwYWNlOmdldHtzLmlkfS5vd25lcgo+K2Fzc2VydChvd25lcjIgfj0g b3duZXIxKQo+K3M6YWx0ZXIoe3VzZXIgPSBvd25lcjF9KQo+K293bmVyMiA9IGJveC5zcGFjZS5f c3BhY2U6Z2V0e3MuaWR9Lm93bmVyCj4rYXNzZXJ0KG93bmVyMiA9PSBvd25lcjEpCj4rYm94LnNj aGVtYS51c2VyLmRyb3AoJ3Rlc3QnKQo+Ky0tIEludmFsaWQgdmFsdWVzLgo+K3M6YWx0ZXIoe3Vz ZXIgPSBib3guTlVMTH0pCj4rczphbHRlcih7dXNlciA9IHRydWV9KQo+K3M6YWx0ZXIoe3VzZXIg PSAnbm90X2V4aXN0aW5nJ30pCj4rCj4rLS0gQWx0ZXIgZm9ybWF0Lgo+K2Zvcm1hdCA9IHt7bmFt ZSA9ICdmaWVsZDEnLCB0eXBlID0gJ3Vuc2lnbmVkJ319Cj4rczphbHRlcih7Zm9ybWF0ID0gZm9y bWF0fSkKPitzOmZvcm1hdCgpCj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVkIG9yIG5pbCAtIGlnbm9y ZWQuCj4rczphbHRlcih7Zm9ybWF0ID0gbmlsfSkKPitzOmZvcm1hdCgpCj4rdCA9IHM6cmVwbGFj ZXsxfQo+K2Fzc2VydCh0LmZpZWxkMSA9PSAxKQo+K3M6YWx0ZXIoe2Zvcm1hdCA9IHt9fSkKPith c3NlcnQodC5maWVsZDEgPT0gbmlsKQo+K3M6ZGVsZXRlezF9Cj4rLS0gSW52YWxpZCB2YWx1ZXMu Cj4rczphbHRlcih7Zm9ybWF0ID0gYm94Lk5VTEx9KQo+K3M6YWx0ZXIoe2Zvcm1hdCA9IHRydWV9 KQo+K3M6YWx0ZXIoe2Zvcm1hdCA9IHt7ezEsIDIsIDMsIDR9fX19KQo+Kwo+Ky0tCj4rLS0gQWx0 ZXIgdGVtcG9yYXJ5Lgo+Ky0tCj4rczphbHRlcih7dGVtcG9yYXJ5ID0gdHJ1ZX0pCj4rYXNzZXJ0 KHMudGVtcG9yYXJ5KQo+Ky0tIFdoZW4gbm90IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVkLgo+ K3M6YWx0ZXIoe3RlbXBvcmFyeSA9IG5pbH0pCj4rYXNzZXJ0KHMudGVtcG9yYXJ5KQo+K3M6YWx0 ZXIoe3RlbXBvcmFyeSA9IGZhbHNlfSkKPithc3NlcnQobm90IHMudGVtcG9yYXJ5KQo+Ky0tIEVu c3VyZSBhYnNlbmNlIGlzIG5vdCB0cmVhdGVkIGxpa2UgJ3RydWUnLgo+K3M6YWx0ZXIoe3RlbXBv cmFyeSA9IG5pbH0pCj4rYXNzZXJ0KG5vdCBzLnRlbXBvcmFyeSkKPistLSBJbnZhbGlkIHZhbHVl cy4KPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSBib3guTlVMTH0pCj4rczphbHRlcih7dGVtcG9yYXJ5 ID0gMTAwfSkKPisKPistLQo+Ky0tIEFsdGVyIGlzX3N5bmMuCj4rLS0KPitvbGRfc3luY2hyb19x dW9ydW0gPSBib3guY2ZnLnJlcGxpY2F0aW9uX3N5bmNocm9fcXVvcnVtCj4rb2xkX3N5bmNocm9f dGltZW91dCA9IGJveC5jZmcucmVwbGljYXRpb25fc3luY2hyb190aW1lb3V0Cj4rYm94LmNmZ3sg XAo+KyByZXBsaWNhdGlvbl9zeW5jaHJvX3F1b3J1bSA9IDIsIFwKPisgcmVwbGljYXRpb25fc3lu Y2hyb190aW1lb3V0ID0gMC4wMDEsIFwKPit9Cj4rczphbHRlcih7aXNfc3luYyA9IHRydWV9KQo+ K2Fzc2VydChzLmlzX3N5bmMpCj4rczpyZXBsYWNlezF9Cj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVk IG9yIG5pbCAtIGlnbm9yZWQuCj4rczphbHRlcih7aXNfc3luYyA9IG5pbH0pCj4rYXNzZXJ0KHMu aXNfc3luYykKPitzOmFsdGVyKHtpc19zeW5jID0gZmFsc2V9KQo+K2Fzc2VydChub3Qgcy5pc19z eW5jKQo+Ky0tIEVuc3VyZSBhYnNlbmNlIGlzIG5vdCB0cmVhdGVkIGxpa2UgJ3RydWUnLgo+K3M6 YWx0ZXIoe2lzX3N5bmMgPSBuaWx9KQo+K2Fzc2VydChub3Qgcy5pc19zeW5jKQo+Ky0tIEludmFs aWQgdmFsdWVzLgo+K3M6YWx0ZXIoe2lzX3N5bmMgPSBib3guTlVMTH0pCj4rczphbHRlcih7aXNf c3luYyA9IDEwMH0pCj4rczpyZXBsYWNlezF9Cj4rczpkZWxldGV7MX0KPitib3guY2ZneyBcCj4r IHJlcGxpY2F0aW9uX3N5bmNocm9fcXVvcnVtID0gb2xkX3N5bmNocm9fcXVvcnVtLCBcCj4rIHJl cGxpY2F0aW9uX3N5bmNocm9fdGltZW91dCA9IG9sZF9zeW5jaHJvX3RpbWVvdXQsIFwKPit9Cj4r Cj4rLS0gQWx0ZXIgbmFtZS4KPitzOmFsdGVyKHtuYW1lID0gJ3Rlc3QyJ30pCj4rYXNzZXJ0KGJv eC5zcGFjZS50ZXN0MiB+PSBuaWwpCj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0ID09IG5pbCkKPith c3NlcnQocy5uYW1lID09ICd0ZXN0MicpCj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVkIG9yIG5pbCAt IGlnbm9yZWQuCj4rczphbHRlcih7bmFtZSA9IG5pbH0pCj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0 MiB+PSBuaWwpCj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0ID09IG5pbCkKPithc3NlcnQocy5uYW1l ID09ICd0ZXN0MicpCj4rczphbHRlcih7bmFtZSA9ICdfc3BhY2UnfSkKPitzOmFsdGVyKHtuYW1l ID0gJ3Rlc3QnfSkKPithc3NlcnQoYm94LnNwYWNlLnRlc3Qgfj0gbmlsKQo+K2Fzc2VydChib3gu c3BhY2UudGVzdDIgPT0gbmlsKQo+K2Fzc2VydChzLm5hbWUgPT0gJ3Rlc3QnKQo+Ky0tIEludmFs aWQgdmFsdWVzLgo+K3M6YWx0ZXIoe25hbWUgPSBib3guTlVMTH0pCj4rczphbHRlcih7bmFtZSA9 IDEwMH0pCj4rCj4rczpkcm9wKCkKPisKPitzOmFsdGVyKHt9KQo+K29rLCBlcnIgPSBwY2FsbChi b3guc2NoZW1hLnNwYWNlLmFsdGVyLCBzLmlkLCB7fSkKPithc3NlcnQoZXJyOm1hdGNoKCdkb2Vz IG5vdCBleGlzdCcpIH49IG5pbCkKPi0tCj4yLjIxLjEgKEFwcGxlIEdpdC0xMjIuMykKwqAKwqAK TEdUTS4KLS0KU2VyZ2XCoFBldHJlbmtv ----ALT--633937fA55D032831f74816bBd72E8181598187212 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+SGkhJm5ic3A7VGhhbmtzIGZvciB0aGUgcGF0Y2ghPC9kaXY+PGRp dj4mbmJzcDs8L2Rpdj48YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICMw ODU3QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij7QodGD0LHQsdC+0YLQsCwg MjIg0LDQstCz0YPRgdGC0LAgMjAyMCwgMTo0NiArMDM6MDAg0L7RgiBWbGFkaXNsYXYgU2hwaWxl dm95ICZsdDt2LnNocGlsZXZveUB0YXJhbnRvb2wub3JnJmd0Ozo8YnI+Jm5ic3A7PGRpdiBpZD0i Ij48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ciPjxzdHlsZSB0eXBlPSJ0ZXh0 L2NzcyI+PC9zdHlsZT48ZGl2PjxkaXYgaWQ9InN0eWxlXzE1OTgwNDk5NjQwMjk3NTYwMzkwX0JP RFkiPlRoZXJlIHdhcyBubyB3YXkgdG8gY2hhbmdlIGNlcnRhaW4gc3BhY2UgcGFyYW1ldGVycyB3 aXRob3V0IGl0czxicj5yZWNyZWF0aW9uIG9yIG1hbnVhbCB1cGRhdGUgb2YgaW50ZXJuYWwgc3lz dGVtIHNwYWNlIF9zcGFjZS4gRXZlbjxicj5pZiBzb21lIG9mIHRoZW0gd2VyZSBsZWdhbCB0byB1 cGRhdGU6IGZpZWxkX2NvdW50LCBvd25lciwgZmxhZyBvZjxicj5iZWluZyB0ZW1wb3JhcnksIGlz X3N5bmMgZmxhZy48YnI+PGJyPlRoZSBwYXRjaCBpbnRyb2R1Y2VzIGZ1bmN0aW9uIHNwYWNlOmFs dGVyKCksIHdoaWNoIGFjY2VwdHMgYTxicj5zdWJzZXQgb2YgcGFyYW1ldGVycyBmcm9tIGJveC5z Y2hlbWEuc3BhY2UuY3JlYXRlIHdoaWNoIGFyZTxicj5tdXRhYmxlLCBhbmQgJ25hbWUnIHBhcmFt ZXRlci4gVGhlcmUgaXMgYSBtZXRob2Qgc3BhY2U6cmVuYW1lKCksPGJyPmJ1dCBzdGlsbCB0aGUg cGFyYW1ldGVyIGlzIGFkZGVkIHRvIHNwYWNlOmFsdGVyKCkgdG9vLCB0byBiZTxicj5jb25zaXN0 ZW50IHdpdGggaW5kZXg6YWx0ZXIoKSwgd2hpY2ggYWxzbyBhY2NlcHRzIGEgbmV3IG5hbWUuPGJy Pjxicj5DbG9zZXMgIzUxNTU8YnI+PGJyPkBUYXJhbnRvb2xCb3QgZG9jdW1lbnQ8YnI+VGl0bGU6 IE5ldyBmdW5jdGlvbiBzcGFjZTphbHRlcihvcHRpb25zKTxicj48YnI+U3BhY2Ugb2JqZWN0cyBp biBMdWEgKHN0b3JlZCBpbiBgYm94LnNwYWNlYCB0YWJsZSkgbm93IGhhdmUgYSBuZXc8YnI+bWV0 aG9kOiBgc3BhY2U6YWx0ZXIob3B0aW9ucylgLjxicj48YnI+VGhlIG1ldGhvZCBhY2NlcHRzIGEg dGFibGUgd2l0aCBwYXJhbWV0ZXJzIGBmaWVsZF9jb3VudGAsIGB1c2VyYCw8YnI+YGZvcm1hdGAs IGB0ZW1wb3JhcnlgLCBgaXNfc3luY2AsIGFuZCBgbmFtZWAuIEFsbCBwYXJhbWV0ZXJzIGhhdmU8 YnI+dGhlIHNhbWUgbWVhbmluZyBhcyBpbiBgYm94LnNjaGVtYS5zcGFjZS5jcmVhdGUobmFtZSwg b3B0aW9ucylgLjxicj48YnI+Tm90ZSwgYG5hbWVgIHBhcmFtZXRlciBpbiBgYm94LnNjaGVtYS5z cGFjZS5jcmVhdGVgIGlzIHNlcGFyYXRlZDxicj5mcm9tIGBvcHRpb25zYCB0YWJsZS4gSXQgaXMg bm90IHNvIGluIGBzcGFjZTphbHRlcihvcHRpb25zKWAgLTxicj5oZXJlIGFsbCBwYXJhbWV0ZXJz IGFyZSBzcGVjaWZpZWQgaW4gdGhlIGBvcHRpb25zYCB0YWJsZS48YnI+PGJyPlRoZSBmdW5jdGlv biBkb2VzIG5vdCByZXR1cm4gYW55dGhpbmcgaW4gY2FzZSBvZiBzdWNjZXNzLCBhbmQ8YnI+dGhy b3dzIGFuIGVycm9yIHdoZW4gZmFpbHMuPGJyPjxicj5Gcm9tICdTeW5jaHJvbm91cyByZXBsaWNh dGlvbicgcGFnZSwgZnJvbSAnTGltaXRhdGlvbnMgYW5kIGtub3duPGJyPnByb2JsZW1zJyBpdCBp cyBuZWNlc3NhcnkgdG8gZGVsZXRlIHRoZSBub3RlIGFib3V0ICJubyB3YXkgdG88YnI+ZW5hYmxl IHN5bmNocm9ub3VzIHJlcGxpY2F0aW9uIGZvciBleGlzdGluZyBzcGFjZXMiLiBJbnN0ZWFkIGl0 PGJyPmlzIG5lY2Vzc2FyeSB0byBzYXksIHRoYXQgaXQgY2FuIGJlIGVuYWJsZWQgdXNpbmc8YnI+ YHNwYWNlOmFsdGVyKHtpc19zeW5jID0gdHJ1ZX0pYC4gQW5kIGNhbiBiZSBkaXNhYmxlZCBieSBz ZXR0aW5nPGJyPmBpc19zeW5jID0gZmFsc2VgLjxicj48YSBocmVmPSJodHRwczovL3d3dy50YXJh bnRvb2wuaW8vZW4vZG9jLzIuNS9ib29rL3JlcGxpY2F0aW9uL3JlcGxfc3luYy8jbGltaXRhdGlv bnMtYW5kLWtub3duLXByb2JsZW1zIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly93d3cudGFyYW50 b29sLmlvL2VuL2RvYy8yLjUvYm9vay9yZXBsaWNhdGlvbi9yZXBsX3N5bmMvI2xpbWl0YXRpb25z LWFuZC1rbm93bi1wcm9ibGVtczwvYT48YnI+PGJyPlRoZSBmdW5jdGlvbiB3aWxsIGFwcGVhciBp biAmZ3Q7PSAyLjUuMi48YnI+LS0tPGJyPkJyYW5jaDogPGEgaHJlZj0iaHR0cDovL2dpdGh1Yi5j b20vdGFyYW50b29sL3RhcmFudG9vbC90cmVlL2dlcm9sZDEwMy9naC01MTU1LXNwYWNlLWFsdGVy IiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC90 cmVlL2dlcm9sZDEwMy9naC01MTU1LXNwYWNlLWFsdGVyPC9hPjxicj5Jc3N1ZTogPGEgaHJlZj0i aHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzUxNTUiIHRhcmdl dD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMv NTE1NTwvYT48YnI+PGJyPkBDaGFuZ2VMb2c8YnI+KiBOZXcgZnVuY3Rpb24gYHNwYWNlOmFsdGVy KG9wdGlvbnMpYCB0byBjaGFuZ2Ugc29tZSBzcGFjZSBzZXR0aW5ncyB3aXRob3V0IHJlY3JlYXRp b24gbm9yIHRvdWNoaW5nIGBfc3BhY2VgIHNwYWNlLjxicj48YnI+Jm5ic3A7c3JjL2JveC9sdWEv c2NoZW1hLmx1YSB8IDYzICsrKysrKys8YnI+Jm5ic3A7dGVzdC9ib3gvYWx0ZXIucmVzdWx0IHwg Mzc4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKys8YnI+Jm5ic3A7dGVz dC9ib3gvYWx0ZXIudGVzdC5sdWEgfCAxNDIgKysrKysrKysrKysrKysrPGJyPiZuYnNwOzMgZmls ZXMgY2hhbmdlZCwgNTgzIGluc2VydGlvbnMoKyk8YnI+PGJyPmRpZmYgLS1naXQgYS9zcmMvYm94 L2x1YS9zY2hlbWEubHVhIGIvc3JjL2JveC9sdWEvc2NoZW1hLmx1YTxicj5pbmRleCAzYzNmYTNl ZjguLjdmZTFlYTdhMiAxMDA2NDQ8YnI+LS0tIGEvc3JjL2JveC9sdWEvc2NoZW1hLmx1YTxicj4r KysgYi9zcmMvYm94L2x1YS9zY2hlbWEubHVhPGJyPkBAIC01MzksNiArNTM5LDY0IEBAIGJveC5z Y2hlbWEuc3BhY2UucmVuYW1lID0gZnVuY3Rpb24oc3BhY2VfaWQsIHNwYWNlX25hbWUpPGJyPiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO19zcGFjZTp1cGRhdGUoc3BhY2VfaWQsIHt7Ij0i LCAzLCBzcGFjZV9uYW1lfX0pPGJyPiZuYnNwO2VuZDxicj4mbmJzcDs8YnI+K2xvY2FsIGFsdGVy X3NwYWNlX3RlbXBsYXRlID0gezxicj4rIGZpZWxkX2NvdW50ID0gJ251bWJlcicsPGJyPisgdXNl ciA9ICdzdHJpbmcsIG51bWJlcicsPGJyPisgZm9ybWF0ID0gJ3RhYmxlJyw8YnI+KyB0ZW1wb3Jh cnkgPSAnYm9vbGVhbicsPGJyPisgaXNfc3luYyA9ICdib29sZWFuJyw8YnI+KyBuYW1lID0gJ3N0 cmluZycsPGJyPit9PGJyPis8YnI+K2JveC5zY2hlbWEuc3BhY2UuYWx0ZXIgPSBmdW5jdGlvbihz cGFjZV9pZCwgb3B0aW9ucyk8YnI+KyBsb2NhbCBzcGFjZSA9IGJveC5zcGFjZVtzcGFjZV9pZF08 YnI+KyBpZiBub3Qgc3BhY2UgdGhlbjxicj4rIGJveC5lcnJvcihib3guZXJyb3IuTk9fU1VDSF9T UEFDRSwgJyMnLi50b3N0cmluZyhzcGFjZV9pZCkpPGJyPisgZW5kPGJyPisgY2hlY2tfcGFyYW1f dGFibGUob3B0aW9ucywgYWx0ZXJfc3BhY2VfdGVtcGxhdGUpPGJyPis8YnI+KyBsb2NhbCBfc3Bh Y2UgPSBib3guc3BhY2UuX3NwYWNlPGJyPisgbG9jYWwgdHVwbGUgPSBfc3BhY2U6Z2V0KHtzcGFj ZS5pZH0pPGJyPisgYXNzZXJ0KHR1cGxlIH49IG5pbCk8YnI+Kzxicj4rIGxvY2FsIG93bmVyPGJy PisgaWYgb3B0aW9ucy51c2VyIHRoZW48YnI+KyBvd25lciA9IHVzZXJfb3Jfcm9sZV9yZXNvbHZl KG9wdGlvbnMudXNlcik8YnI+KyBpZiBub3Qgb3duZXIgdGhlbjxicj4rIGJveC5lcnJvcihib3gu ZXJyb3IuTk9fU1VDSF9VU0VSLCBvcHRpb25zLnVzZXIpPGJyPisgZW5kPGJyPisgZWxzZTxicj4r IG93bmVyID0gdHVwbGUub3duZXI8YnI+KyBlbmQ8YnI+Kzxicj4rIGxvY2FsIG5hbWUgPSBvcHRp b25zLm5hbWUgb3IgdHVwbGUubmFtZTxicj4rIGxvY2FsIGZpZWxkX2NvdW50ID0gb3B0aW9ucy5m aWVsZF9jb3VudCBvciB0dXBsZS5maWVsZF9jb3VudDxicj4rIGxvY2FsIGZsYWdzID0gdHVwbGUu ZmxhZ3M8YnI+Kzxicj4rIGlmIG9wdGlvbnMudGVtcG9yYXJ5IH49IG5pbCB0aGVuPGJyPisgZmxh Z3MudGVtcG9yYXJ5ID0gb3B0aW9ucy50ZW1wb3Jhcnk8YnI+KyBlbmQ8YnI+Kzxicj4rIGlmIG9w dGlvbnMuaXNfc3luYyB+PSBuaWwgdGhlbjxicj4rIGZsYWdzLmlzX3N5bmMgPSBvcHRpb25zLmlz X3N5bmM8YnI+KyBlbmQ8YnI+Kzxicj4rIGxvY2FsIGZvcm1hdDxicj4rIGlmIG9wdGlvbnMuZm9y bWF0IH49IG5pbCB0aGVuPGJyPisgZm9ybWF0ID0gdXBkYXRlX2Zvcm1hdChvcHRpb25zLmZvcm1h dCk8YnI+KyBlbHNlPGJyPisgZm9ybWF0ID0gdHVwbGUuZm9ybWF0PGJyPisgZW5kPGJyPis8YnI+ KyB0dXBsZSA9IHR1cGxlOnRvdGFibGUoKTxicj4rIHR1cGxlWzJdID0gb3duZXI8YnI+KyB0dXBs ZVszXSA9IG5hbWU8YnI+KyB0dXBsZVs1XSA9IGZpZWxkX2NvdW50PGJyPisgdHVwbGVbNl0gPSBm bGFnczxicj4rIHR1cGxlWzddID0gZm9ybWF0PGJyPisgX3NwYWNlOnJlcGxhY2UodHVwbGUpPGJy PitlbmQ8YnI+Kzxicj4mbmJzcDtib3guc2NoZW1hLmluZGV4ID0ge308YnI+Jm5ic3A7PGJyPiZu YnNwO2xvY2FsIGZ1bmN0aW9uIHVwZGF0ZV9pbmRleF9wYXJ0c18xXzZfMChwYXJ0cyk8YnI+QEAg LTE3MTgsNiArMTc3NiwxMSBAQCBzcGFjZV9tdC5yZW5hbWUgPSBmdW5jdGlvbihzcGFjZSwgbmFt ZSk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Y2hlY2tfc3BhY2VfZXhpc3RzKHNw YWNlKTxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtyZXR1cm4gYm94LnNjaGVtYS5z cGFjZS5yZW5hbWUoc3BhY2UuaWQsIG5hbWUpPGJyPiZuYnNwO2VuZDxicj4rc3BhY2VfbXQuYWx0 ZXIgPSBmdW5jdGlvbihzcGFjZSwgb3B0aW9ucyk8YnI+KyBjaGVja19zcGFjZV9hcmcoc3BhY2Us ICdhbHRlcicpPGJyPisgY2hlY2tfc3BhY2VfZXhpc3RzKHNwYWNlKTxicj4rIHJldHVybiBib3gu c2NoZW1hLnNwYWNlLmFsdGVyKHNwYWNlLmlkLCBvcHRpb25zKTxicj4rZW5kPGJyPiZuYnNwO3Nw YWNlX210LmNyZWF0ZV9pbmRleCA9IGZ1bmN0aW9uKHNwYWNlLCBuYW1lLCBvcHRpb25zKTxicj4m bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtjaGVja19zcGFjZV9hcmcoc3BhY2UsICdjcmVh dGVfaW5kZXgnKTxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtjaGVja19zcGFjZV9l eGlzdHMoc3BhY2UpPGJyPmRpZmYgLS1naXQgYS90ZXN0L2JveC9hbHRlci5yZXN1bHQgYi90ZXN0 L2JveC9hbHRlci5yZXN1bHQ8YnI+aW5kZXggZjE1MGZhYWMxLi4yMzdjMmQ4YWEgMTAwNjQ0PGJy Pi0tLSBhL3Rlc3QvYm94L2FsdGVyLnJlc3VsdDxicj4rKysgYi90ZXN0L2JveC9hbHRlci5yZXN1 bHQ8YnI+QEAgLTExODEsMyArMTE4MSwzODEgQEAgczpkcm9wKCk8YnI+Jm5ic3A7Ym94LmludGVy bmFsLmNvbGxhdGlvbi5kcm9wKCd0ZXN0Jyk8YnI+Jm5ic3A7LS0tPGJyPiZuYnNwOy4uLjxicj4r LS08YnI+Ky0tIGdoLTUxNTU6IHNwYWNlOmFsdGVyKCksIGFkZGVkIGluIG9yZGVyIHRvIG1ha2Ug aXQgcG9zc2libGUgdG8gdHVybiBvbi9vZmY8YnI+Ky0tIGlzX3N5bmMsIGJ1dCBpdCBpcyBoYW5k eSBmb3Igb3RoZXIgb3B0aW9ucyB0b28uPGJyPistLTxicj4rcyA9IGJveC5zY2hlbWEuY3JlYXRl X3NwYWNlKCd0ZXN0Jyk8YnI+Ky0tLTxicj4rLi4uPGJyPitwayA9IHM6Y3JlYXRlX2luZGV4KCdw aycpPGJyPistLS08YnI+Ky4uLjxicj4rLS0gQmFkIHVzYWdlLjxicj4rczphbHRlcih7dW5rbm93 biA9IHRydWV9KTxicj4rLS0tPGJyPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRlcnMsIHVuZXhw ZWN0ZWQgb3B0aW9uICd1bmtub3duJzxicj4rLi4uPGJyPitvaywgZXJyID0gcGNhbGwocy5hbHRl ciwge30pPGJyPistLS08YnI+Ky4uLjxicj4rYXNzZXJ0KGVycjptYXRjaCgiVXNlIHNwYWNlOmFs dGVyIikgfj0gbmlsKTxicj4rLS0tPGJyPistIHRydWU8YnI+Ky4uLjxicj4rLS0gQWx0ZXIgZmll bGRfY291bnQuPGJyPitzOnJlcGxhY2V7MX08YnI+Ky0tLTxicj4rLSBbMV08YnI+Ky4uLjxicj4r LS0gQ2FuJ3QgdXBkYXRlIG9uIG5vbi1lbXB0eSBzcGFjZS48YnI+K3M6YWx0ZXIoe2ZpZWxkX2Nv dW50ID0gMn0pPGJyPistLS08YnI+Ky0gZXJyb3I6IFR1cGxlIGZpZWxkIGNvdW50IDEgZG9lcyBu b3QgbWF0Y2ggc3BhY2UgZmllbGQgY291bnQgMjxicj4rLi4uPGJyPitzOmRlbGV0ZXsxfTxicj4r LS0tPGJyPistIFsxXTxicj4rLi4uPGJyPistLSBDYW4gdXBkYXRlIG9uIGVtcHR5IHNwYWNlLjxi cj4rczphbHRlcih7ZmllbGRfY291bnQgPSAyfSk8YnI+Ky0tLTxicj4rLi4uPGJyPitzOnJlcGxh Y2V7MX08YnI+Ky0tLTxicj4rLSBlcnJvcjogVHVwbGUgZmllbGQgY291bnQgMSBkb2VzIG5vdCBt YXRjaCBzcGFjZSBmaWVsZCBjb3VudCAyPGJyPisuLi48YnI+K3M6cmVwbGFjZXsxLCAxfTxicj4r LS0tPGJyPistIFsxLCAxXTxicj4rLi4uPGJyPistLSBXaGVuIG5vdCBzcGVjaWZpZWQgb3Igbmls IC0gaWdub3JlZC48YnI+K3M6YWx0ZXIoe2ZpZWxkX2NvdW50ID0gbmlsfSk8YnI+Ky0tLTxicj4r Li4uPGJyPitzOnJlcGxhY2V7Mn08YnI+Ky0tLTxicj4rLSBlcnJvcjogVHVwbGUgZmllbGQgY291 bnQgMSBkb2VzIG5vdCBtYXRjaCBzcGFjZSBmaWVsZCBjb3VudCAyPGJyPisuLi48YnI+K3M6cmVw bGFjZXsyLCAyfTxicj4rLS0tPGJyPistIFsyLCAyXTxicj4rLi4uPGJyPistLSBTZXQgdG8gMCBk cm9wcyB0aGUgcmVzdHJpY3Rpb24uPGJyPitzOmFsdGVyKHtmaWVsZF9jb3VudCA9IDB9KTxicj4r LS0tPGJyPisuLi48YnI+K3M6dHJ1bmNhdGUoKTxicj4rLS0tPGJyPisuLi48YnI+K3M6cmVwbGFj ZXsxfTxicj4rLS0tPGJyPistIFsxXTxicj4rLi4uPGJyPitzOmRlbGV0ZXsxfTxicj4rLS0tPGJy PistIFsxXTxicj4rLi4uPGJyPistLSBJbnZhbGlkIHZhbHVlcy48YnI+K3M6YWx0ZXIoe2ZpZWxk X2NvdW50ID0gYm94Lk5VTEx9KTxicj4rLS0tPGJyPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRl cnMsIG9wdGlvbnMgcGFyYW1ldGVyICdmaWVsZF9jb3VudCcgc2hvdWxkIGJlIG9mIHR5cGUgbnVt YmVyPGJyPisuLi48YnI+K3M6YWx0ZXIoe2ZpZWxkX2NvdW50ID0gJ3N0cmluZyd9KTxicj4rLS0t PGJyPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFyYW1ldGVyICdmaWVs ZF9jb3VudCcgc2hvdWxkIGJlIG9mIHR5cGUgbnVtYmVyPGJyPisuLi48YnI+Ky0tIEFsdGVyIG93 bmVyLjxicj4rb3duZXIxID0gYm94LnNwYWNlLl9zcGFjZTpnZXR7cy5pZH0ub3duZXI8YnI+Ky0t LTxicj4rLi4uPGJyPitib3guc2NoZW1hLnVzZXIuY3JlYXRlKCd0ZXN0Jyk8YnI+Ky0tLTxicj4r Li4uPGJyPistLSBXaGVuIG5vdCBzcGVjaWZpZWQgb3IgbmlsIC0gaWdub3JlZC48YnI+K3M6YWx0 ZXIoe3VzZXIgPSBuaWx9KTxicj4rLS0tPGJyPisuLi48YnI+K293bmVyMiA9IGJveC5zcGFjZS5f c3BhY2U6Z2V0e3MuaWR9Lm93bmVyPGJyPistLS08YnI+Ky4uLjxicj4rYXNzZXJ0KG93bmVyMiA9 PSBvd25lcjEpPGJyPistLS08YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPitzOmFsdGVyKHt1c2VyID0g J3Rlc3QnfSk8YnI+Ky0tLTxicj4rLi4uPGJyPitvd25lcjIgPSBib3guc3BhY2UuX3NwYWNlOmdl dHtzLmlkfS5vd25lcjxicj4rLS0tPGJyPisuLi48YnI+K2Fzc2VydChvd25lcjIgfj0gb3duZXIx KTxicj4rLS0tPGJyPistIHRydWU8YnI+Ky4uLjxicj4rczphbHRlcih7dXNlciA9IG93bmVyMX0p PGJyPistLS08YnI+Ky4uLjxicj4rb3duZXIyID0gYm94LnNwYWNlLl9zcGFjZTpnZXR7cy5pZH0u b3duZXI8YnI+Ky0tLTxicj4rLi4uPGJyPithc3NlcnQob3duZXIyID09IG93bmVyMSk8YnI+Ky0t LTxicj4rLSB0cnVlPGJyPisuLi48YnI+K2JveC5zY2hlbWEudXNlci5kcm9wKCd0ZXN0Jyk8YnI+ Ky0tLTxicj4rLi4uPGJyPistLSBJbnZhbGlkIHZhbHVlcy48YnI+K3M6YWx0ZXIoe3VzZXIgPSBi b3guTlVMTH0pPGJyPistLS08YnI+Ky0gZXJyb3I6ICdJbGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlv bnMgcGFyYW1ldGVyICcndXNlcicnIHNob3VsZCBiZSBvbmUgb2YgdHlwZXM6IHN0cmluZyw8YnI+ KyBudW1iZXInPGJyPisuLi48YnI+K3M6YWx0ZXIoe3VzZXIgPSB0cnVlfSk8YnI+Ky0tLTxicj4r LSBlcnJvcjogJ0lsbGVnYWwgcGFyYW1ldGVycywgb3B0aW9ucyBwYXJhbWV0ZXIgJyd1c2VyJycg c2hvdWxkIGJlIG9uZSBvZiB0eXBlczogc3RyaW5nLDxicj4rIG51bWJlcic8YnI+Ky4uLjxicj4r czphbHRlcih7dXNlciA9ICdub3RfZXhpc3RpbmcnfSk8YnI+Ky0tLTxicj4rLSBlcnJvcjogVXNl ciAnbm90X2V4aXN0aW5nJyBpcyBub3QgZm91bmQ8YnI+Ky4uLjxicj4rLS0gQWx0ZXIgZm9ybWF0 Ljxicj4rZm9ybWF0ID0ge3tuYW1lID0gJ2ZpZWxkMScsIHR5cGUgPSAndW5zaWduZWQnfX08YnI+ Ky0tLTxicj4rLi4uPGJyPitzOmFsdGVyKHtmb3JtYXQgPSBmb3JtYXR9KTxicj4rLS0tPGJyPisu Li48YnI+K3M6Zm9ybWF0KCk8YnI+Ky0tLTxicj4rLSBbeyduYW1lJzogJ2ZpZWxkMScsICd0eXBl JzogJ3Vuc2lnbmVkJ31dPGJyPisuLi48YnI+Ky0tIFdoZW4gbm90IHNwZWNpZmllZCBvciBuaWwg LSBpZ25vcmVkLjxicj4rczphbHRlcih7Zm9ybWF0ID0gbmlsfSk8YnI+Ky0tLTxicj4rLi4uPGJy PitzOmZvcm1hdCgpPGJyPistLS08YnI+Ky0gW3snbmFtZSc6ICdmaWVsZDEnLCAndHlwZSc6ICd1 bnNpZ25lZCd9XTxicj4rLi4uPGJyPit0ID0gczpyZXBsYWNlezF9PGJyPistLS08YnI+Ky4uLjxi cj4rYXNzZXJ0KHQuZmllbGQxID09IDEpPGJyPistLS08YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPitz OmFsdGVyKHtmb3JtYXQgPSB7fX0pPGJyPistLS08YnI+Ky4uLjxicj4rYXNzZXJ0KHQuZmllbGQx ID09IG5pbCk8YnI+Ky0tLTxicj4rLSB0cnVlPGJyPisuLi48YnI+K3M6ZGVsZXRlezF9PGJyPist LS08YnI+Ky0gWzFdPGJyPisuLi48YnI+Ky0tIEludmFsaWQgdmFsdWVzLjxicj4rczphbHRlcih7 Zm9ybWF0ID0gYm94Lk5VTEx9KTxicj4rLS0tPGJyPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRl cnMsIG9wdGlvbnMgcGFyYW1ldGVyICdmb3JtYXQnIHNob3VsZCBiZSBvZiB0eXBlIHRhYmxlPGJy PisuLi48YnI+K3M6YWx0ZXIoe2Zvcm1hdCA9IHRydWV9KTxicj4rLS0tPGJyPistIGVycm9yOiBJ bGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFyYW1ldGVyICdmb3JtYXQnIHNob3VsZCBiZSBv ZiB0eXBlIHRhYmxlPGJyPisuLi48YnI+K3M6YWx0ZXIoe2Zvcm1hdCA9IHt7ezEsIDIsIDMsIDR9 fX19KTxicj4rLS0tPGJyPistIGVycm9yOiAnSWxsZWdhbCBwYXJhbWV0ZXJzLCBmb3JtYXRbMV06 IG5hbWUgKHN0cmluZykgaXMgZXhwZWN0ZWQnPGJyPisuLi48YnI+Ky0tPGJyPistLSBBbHRlciB0 ZW1wb3JhcnkuPGJyPistLTxicj4rczphbHRlcih7dGVtcG9yYXJ5ID0gdHJ1ZX0pPGJyPistLS08 YnI+Ky4uLjxicj4rYXNzZXJ0KHMudGVtcG9yYXJ5KTxicj4rLS0tPGJyPistIHRydWU8YnI+Ky4u Ljxicj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVkIG9yIG5pbCAtIGlnbm9yZWQuPGJyPitzOmFsdGVy KHt0ZW1wb3JhcnkgPSBuaWx9KTxicj4rLS0tPGJyPisuLi48YnI+K2Fzc2VydChzLnRlbXBvcmFy eSk8YnI+Ky0tLTxicj4rLSB0cnVlPGJyPisuLi48YnI+K3M6YWx0ZXIoe3RlbXBvcmFyeSA9IGZh bHNlfSk8YnI+Ky0tLTxicj4rLi4uPGJyPithc3NlcnQobm90IHMudGVtcG9yYXJ5KTxicj4rLS0t PGJyPistIHRydWU8YnI+Ky4uLjxicj4rLS0gRW5zdXJlIGFic2VuY2UgaXMgbm90IHRyZWF0ZWQg bGlrZSAndHJ1ZScuPGJyPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSBuaWx9KTxicj4rLS0tPGJyPisu Li48YnI+K2Fzc2VydChub3Qgcy50ZW1wb3JhcnkpPGJyPistLS08YnI+Ky0gdHJ1ZTxicj4rLi4u PGJyPistLSBJbnZhbGlkIHZhbHVlcy48YnI+K3M6YWx0ZXIoe3RlbXBvcmFyeSA9IGJveC5OVUxM fSk8YnI+Ky0tLTxicj4rLSBlcnJvcjogSWxsZWdhbCBwYXJhbWV0ZXJzLCBvcHRpb25zIHBhcmFt ZXRlciAndGVtcG9yYXJ5JyBzaG91bGQgYmUgb2YgdHlwZSBib29sZWFuPGJyPisuLi48YnI+K3M6 YWx0ZXIoe3RlbXBvcmFyeSA9IDEwMH0pPGJyPistLS08YnI+Ky0gZXJyb3I6IElsbGVnYWwgcGFy YW1ldGVycywgb3B0aW9ucyBwYXJhbWV0ZXIgJ3RlbXBvcmFyeScgc2hvdWxkIGJlIG9mIHR5cGUg Ym9vbGVhbjxicj4rLi4uPGJyPistLTxicj4rLS0gQWx0ZXIgaXNfc3luYy48YnI+Ky0tPGJyPitv bGRfc3luY2hyb19xdW9ydW0gPSBib3guY2ZnLnJlcGxpY2F0aW9uX3N5bmNocm9fcXVvcnVtPGJy PistLS08YnI+Ky4uLjxicj4rb2xkX3N5bmNocm9fdGltZW91dCA9IGJveC5jZmcucmVwbGljYXRp b25fc3luY2hyb190aW1lb3V0PGJyPistLS08YnI+Ky4uLjxicj4rYm94LmNmZ3sgXDxicj4rIHJl cGxpY2F0aW9uX3N5bmNocm9fcXVvcnVtID0gMiwgXDxicj4rIHJlcGxpY2F0aW9uX3N5bmNocm9f dGltZW91dCA9IDAuMDAxLCBcPGJyPit9PGJyPistLS08YnI+Ky4uLjxicj4rczphbHRlcih7aXNf c3luYyA9IHRydWV9KTxicj4rLS0tPGJyPisuLi48YnI+K2Fzc2VydChzLmlzX3N5bmMpPGJyPist LS08YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPitzOnJlcGxhY2V7MX08YnI+Ky0tLTxicj4rLSBlcnJv cjogUXVvcnVtIGNvbGxlY3Rpb24gZm9yIGEgc3luY2hyb25vdXMgdHJhbnNhY3Rpb24gaXMgdGlt ZWQgb3V0PGJyPisuLi48YnI+Ky0tIFdoZW4gbm90IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVk Ljxicj4rczphbHRlcih7aXNfc3luYyA9IG5pbH0pPGJyPistLS08YnI+Ky4uLjxicj4rYXNzZXJ0 KHMuaXNfc3luYyk8YnI+Ky0tLTxicj4rLSB0cnVlPGJyPisuLi48YnI+K3M6YWx0ZXIoe2lzX3N5 bmMgPSBmYWxzZX0pPGJyPistLS08YnI+Ky4uLjxicj4rYXNzZXJ0KG5vdCBzLmlzX3N5bmMpPGJy PistLS08YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPistLSBFbnN1cmUgYWJzZW5jZSBpcyBub3QgdHJl YXRlZCBsaWtlICd0cnVlJy48YnI+K3M6YWx0ZXIoe2lzX3N5bmMgPSBuaWx9KTxicj4rLS0tPGJy PisuLi48YnI+K2Fzc2VydChub3Qgcy5pc19zeW5jKTxicj4rLS0tPGJyPistIHRydWU8YnI+Ky4u Ljxicj4rLS0gSW52YWxpZCB2YWx1ZXMuPGJyPitzOmFsdGVyKHtpc19zeW5jID0gYm94Lk5VTEx9 KTxicj4rLS0tPGJyPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRlcnMsIG9wdGlvbnMgcGFyYW1l dGVyICdpc19zeW5jJyBzaG91bGQgYmUgb2YgdHlwZSBib29sZWFuPGJyPisuLi48YnI+K3M6YWx0 ZXIoe2lzX3N5bmMgPSAxMDB9KTxicj4rLS0tPGJyPistIGVycm9yOiBJbGxlZ2FsIHBhcmFtZXRl cnMsIG9wdGlvbnMgcGFyYW1ldGVyICdpc19zeW5jJyBzaG91bGQgYmUgb2YgdHlwZSBib29sZWFu PGJyPisuLi48YnI+K3M6cmVwbGFjZXsxfTxicj4rLS0tPGJyPistIFsxXTxicj4rLi4uPGJyPitz OmRlbGV0ZXsxfTxicj4rLS0tPGJyPistIFsxXTxicj4rLi4uPGJyPitib3guY2ZneyBcPGJyPisg cmVwbGljYXRpb25fc3luY2hyb19xdW9ydW0gPSBvbGRfc3luY2hyb19xdW9ydW0sIFw8YnI+KyBy ZXBsaWNhdGlvbl9zeW5jaHJvX3RpbWVvdXQgPSBvbGRfc3luY2hyb190aW1lb3V0LCBcPGJyPit9 PGJyPistLS08YnI+Ky4uLjxicj4rLS0gQWx0ZXIgbmFtZS48YnI+K3M6YWx0ZXIoe25hbWUgPSAn dGVzdDInfSk8YnI+Ky0tLTxicj4rLi4uPGJyPithc3NlcnQoYm94LnNwYWNlLnRlc3QyIH49IG5p bCk8YnI+Ky0tLTxicj4rLSB0cnVlPGJyPisuLi48YnI+K2Fzc2VydChib3guc3BhY2UudGVzdCA9 PSBuaWwpPGJyPistLS08YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPithc3NlcnQocy5uYW1lID09ICd0 ZXN0MicpPGJyPistLS08YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPistLSBXaGVuIG5vdCBzcGVjaWZp ZWQgb3IgbmlsIC0gaWdub3JlZC48YnI+K3M6YWx0ZXIoe25hbWUgPSBuaWx9KTxicj4rLS0tPGJy PisuLi48YnI+K2Fzc2VydChib3guc3BhY2UudGVzdDIgfj0gbmlsKTxicj4rLS0tPGJyPistIHRy dWU8YnI+Ky4uLjxicj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0ID09IG5pbCk8YnI+Ky0tLTxicj4r LSB0cnVlPGJyPisuLi48YnI+K2Fzc2VydChzLm5hbWUgPT0gJ3Rlc3QyJyk8YnI+Ky0tLTxicj4r LSB0cnVlPGJyPisuLi48YnI+K3M6YWx0ZXIoe25hbWUgPSAnX3NwYWNlJ30pPGJyPistLS08YnI+ Ky0gZXJyb3I6IER1cGxpY2F0ZSBrZXkgZXhpc3RzIGluIHVuaXF1ZSBpbmRleCAnbmFtZScgaW4g c3BhY2UgJ19zcGFjZSc8YnI+Ky4uLjxicj4rczphbHRlcih7bmFtZSA9ICd0ZXN0J30pPGJyPist LS08YnI+Ky4uLjxicj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0IH49IG5pbCk8YnI+Ky0tLTxicj4r LSB0cnVlPGJyPisuLi48YnI+K2Fzc2VydChib3guc3BhY2UudGVzdDIgPT0gbmlsKTxicj4rLS0t PGJyPistIHRydWU8YnI+Ky4uLjxicj4rYXNzZXJ0KHMubmFtZSA9PSAndGVzdCcpPGJyPistLS08 YnI+Ky0gdHJ1ZTxicj4rLi4uPGJyPistLSBJbnZhbGlkIHZhbHVlcy48YnI+K3M6YWx0ZXIoe25h bWUgPSBib3guTlVMTH0pPGJyPistLS08YnI+Ky0gZXJyb3I6IElsbGVnYWwgcGFyYW1ldGVycywg b3B0aW9ucyBwYXJhbWV0ZXIgJ25hbWUnIHNob3VsZCBiZSBvZiB0eXBlIHN0cmluZzxicj4rLi4u PGJyPitzOmFsdGVyKHtuYW1lID0gMTAwfSk8YnI+Ky0tLTxicj4rLSBlcnJvcjogSWxsZWdhbCBw YXJhbWV0ZXJzLCBvcHRpb25zIHBhcmFtZXRlciAnbmFtZScgc2hvdWxkIGJlIG9mIHR5cGUgc3Ry aW5nPGJyPisuLi48YnI+K3M6ZHJvcCgpPGJyPistLS08YnI+Ky4uLjxicj4rczphbHRlcih7fSk8 YnI+Ky0tLTxicj4rLSBlcnJvcjogU3BhY2UgJ3Rlc3QnIGRvZXMgbm90IGV4aXN0PGJyPisuLi48 YnI+K29rLCBlcnIgPSBwY2FsbChib3guc2NoZW1hLnNwYWNlLmFsdGVyLCBzLmlkLCB7fSk8YnI+ Ky0tLTxicj4rLi4uPGJyPithc3NlcnQoZXJyOm1hdGNoKCdkb2VzIG5vdCBleGlzdCcpIH49IG5p bCk8YnI+Ky0tLTxicj4rLSB0cnVlPGJyPisuLi48YnI+ZGlmZiAtLWdpdCBhL3Rlc3QvYm94L2Fs dGVyLnRlc3QubHVhIGIvdGVzdC9ib3gvYWx0ZXIudGVzdC5sdWE8YnI+aW5kZXggM2NiMGM0Zjg0 Li5hYmQwOGUyZmEgMTAwNjQ0PGJyPi0tLSBhL3Rlc3QvYm94L2FsdGVyLnRlc3QubHVhPGJyPisr KyBiL3Rlc3QvYm94L2FsdGVyLnRlc3QubHVhPGJyPkBAIC00NzgsMyArNDc4LDE0NSBAQCB2YWxp ZGF0ZV9pbmRleGVzKCk8YnI+Jm5ic3A7PGJyPiZuYnNwO3M6ZHJvcCgpPGJyPiZuYnNwO2JveC5p bnRlcm5hbC5jb2xsYXRpb24uZHJvcCgndGVzdCcpPGJyPis8YnI+Ky0tPGJyPistLSBnaC01MTU1 OiBzcGFjZTphbHRlcigpLCBhZGRlZCBpbiBvcmRlciB0byBtYWtlIGl0IHBvc3NpYmxlIHRvIHR1 cm4gb24vb2ZmPGJyPistLSBpc19zeW5jLCBidXQgaXQgaXMgaGFuZHkgZm9yIG90aGVyIG9wdGlv bnMgdG9vLjxicj4rLS08YnI+K3MgPSBib3guc2NoZW1hLmNyZWF0ZV9zcGFjZSgndGVzdCcpPGJy PitwayA9IHM6Y3JlYXRlX2luZGV4KCdwaycpPGJyPis8YnI+Ky0tIEJhZCB1c2FnZS48YnI+K3M6 YWx0ZXIoe3Vua25vd24gPSB0cnVlfSk8YnI+K29rLCBlcnIgPSBwY2FsbChzLmFsdGVyLCB7fSk8 YnI+K2Fzc2VydChlcnI6bWF0Y2goIlVzZSBzcGFjZTphbHRlciIpIH49IG5pbCk8YnI+Kzxicj4r LS0gQWx0ZXIgZmllbGRfY291bnQuPGJyPitzOnJlcGxhY2V7MX08YnI+Ky0tIENhbid0IHVwZGF0 ZSBvbiBub24tZW1wdHkgc3BhY2UuPGJyPitzOmFsdGVyKHtmaWVsZF9jb3VudCA9IDJ9KTxicj4r czpkZWxldGV7MX08YnI+Ky0tIENhbiB1cGRhdGUgb24gZW1wdHkgc3BhY2UuPGJyPitzOmFsdGVy KHtmaWVsZF9jb3VudCA9IDJ9KTxicj4rczpyZXBsYWNlezF9PGJyPitzOnJlcGxhY2V7MSwgMX08 YnI+Ky0tIFdoZW4gbm90IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVkLjxicj4rczphbHRlcih7 ZmllbGRfY291bnQgPSBuaWx9KTxicj4rczpyZXBsYWNlezJ9PGJyPitzOnJlcGxhY2V7MiwgMn08 YnI+Ky0tIFNldCB0byAwIGRyb3BzIHRoZSByZXN0cmljdGlvbi48YnI+K3M6YWx0ZXIoe2ZpZWxk X2NvdW50ID0gMH0pPGJyPitzOnRydW5jYXRlKCk8YnI+K3M6cmVwbGFjZXsxfTxicj4rczpkZWxl dGV7MX08YnI+Ky0tIEludmFsaWQgdmFsdWVzLjxicj4rczphbHRlcih7ZmllbGRfY291bnQgPSBi b3guTlVMTH0pPGJyPitzOmFsdGVyKHtmaWVsZF9jb3VudCA9ICdzdHJpbmcnfSk8YnI+Kzxicj4r LS0gQWx0ZXIgb3duZXIuPGJyPitvd25lcjEgPSBib3guc3BhY2UuX3NwYWNlOmdldHtzLmlkfS5v d25lcjxicj4rYm94LnNjaGVtYS51c2VyLmNyZWF0ZSgndGVzdCcpPGJyPistLSBXaGVuIG5vdCBz cGVjaWZpZWQgb3IgbmlsIC0gaWdub3JlZC48YnI+K3M6YWx0ZXIoe3VzZXIgPSBuaWx9KTxicj4r b3duZXIyID0gYm94LnNwYWNlLl9zcGFjZTpnZXR7cy5pZH0ub3duZXI8YnI+K2Fzc2VydChvd25l cjIgPT0gb3duZXIxKTxicj4rczphbHRlcih7dXNlciA9ICd0ZXN0J30pPGJyPitvd25lcjIgPSBi b3guc3BhY2UuX3NwYWNlOmdldHtzLmlkfS5vd25lcjxicj4rYXNzZXJ0KG93bmVyMiB+PSBvd25l cjEpPGJyPitzOmFsdGVyKHt1c2VyID0gb3duZXIxfSk8YnI+K293bmVyMiA9IGJveC5zcGFjZS5f c3BhY2U6Z2V0e3MuaWR9Lm93bmVyPGJyPithc3NlcnQob3duZXIyID09IG93bmVyMSk8YnI+K2Jv eC5zY2hlbWEudXNlci5kcm9wKCd0ZXN0Jyk8YnI+Ky0tIEludmFsaWQgdmFsdWVzLjxicj4rczph bHRlcih7dXNlciA9IGJveC5OVUxMfSk8YnI+K3M6YWx0ZXIoe3VzZXIgPSB0cnVlfSk8YnI+K3M6 YWx0ZXIoe3VzZXIgPSAnbm90X2V4aXN0aW5nJ30pPGJyPis8YnI+Ky0tIEFsdGVyIGZvcm1hdC48 YnI+K2Zvcm1hdCA9IHt7bmFtZSA9ICdmaWVsZDEnLCB0eXBlID0gJ3Vuc2lnbmVkJ319PGJyPitz OmFsdGVyKHtmb3JtYXQgPSBmb3JtYXR9KTxicj4rczpmb3JtYXQoKTxicj4rLS0gV2hlbiBub3Qg c3BlY2lmaWVkIG9yIG5pbCAtIGlnbm9yZWQuPGJyPitzOmFsdGVyKHtmb3JtYXQgPSBuaWx9KTxi cj4rczpmb3JtYXQoKTxicj4rdCA9IHM6cmVwbGFjZXsxfTxicj4rYXNzZXJ0KHQuZmllbGQxID09 IDEpPGJyPitzOmFsdGVyKHtmb3JtYXQgPSB7fX0pPGJyPithc3NlcnQodC5maWVsZDEgPT0gbmls KTxicj4rczpkZWxldGV7MX08YnI+Ky0tIEludmFsaWQgdmFsdWVzLjxicj4rczphbHRlcih7Zm9y bWF0ID0gYm94Lk5VTEx9KTxicj4rczphbHRlcih7Zm9ybWF0ID0gdHJ1ZX0pPGJyPitzOmFsdGVy KHtmb3JtYXQgPSB7e3sxLCAyLCAzLCA0fX19fSk8YnI+Kzxicj4rLS08YnI+Ky0tIEFsdGVyIHRl bXBvcmFyeS48YnI+Ky0tPGJyPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSB0cnVlfSk8YnI+K2Fzc2Vy dChzLnRlbXBvcmFyeSk8YnI+Ky0tIFdoZW4gbm90IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVk Ljxicj4rczphbHRlcih7dGVtcG9yYXJ5ID0gbmlsfSk8YnI+K2Fzc2VydChzLnRlbXBvcmFyeSk8 YnI+K3M6YWx0ZXIoe3RlbXBvcmFyeSA9IGZhbHNlfSk8YnI+K2Fzc2VydChub3Qgcy50ZW1wb3Jh cnkpPGJyPistLSBFbnN1cmUgYWJzZW5jZSBpcyBub3QgdHJlYXRlZCBsaWtlICd0cnVlJy48YnI+ K3M6YWx0ZXIoe3RlbXBvcmFyeSA9IG5pbH0pPGJyPithc3NlcnQobm90IHMudGVtcG9yYXJ5KTxi cj4rLS0gSW52YWxpZCB2YWx1ZXMuPGJyPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSBib3guTlVMTH0p PGJyPitzOmFsdGVyKHt0ZW1wb3JhcnkgPSAxMDB9KTxicj4rPGJyPistLTxicj4rLS0gQWx0ZXIg aXNfc3luYy48YnI+Ky0tPGJyPitvbGRfc3luY2hyb19xdW9ydW0gPSBib3guY2ZnLnJlcGxpY2F0 aW9uX3N5bmNocm9fcXVvcnVtPGJyPitvbGRfc3luY2hyb190aW1lb3V0ID0gYm94LmNmZy5yZXBs aWNhdGlvbl9zeW5jaHJvX3RpbWVvdXQ8YnI+K2JveC5jZmd7IFw8YnI+KyByZXBsaWNhdGlvbl9z eW5jaHJvX3F1b3J1bSA9IDIsIFw8YnI+KyByZXBsaWNhdGlvbl9zeW5jaHJvX3RpbWVvdXQgPSAw LjAwMSwgXDxicj4rfTxicj4rczphbHRlcih7aXNfc3luYyA9IHRydWV9KTxicj4rYXNzZXJ0KHMu aXNfc3luYyk8YnI+K3M6cmVwbGFjZXsxfTxicj4rLS0gV2hlbiBub3Qgc3BlY2lmaWVkIG9yIG5p bCAtIGlnbm9yZWQuPGJyPitzOmFsdGVyKHtpc19zeW5jID0gbmlsfSk8YnI+K2Fzc2VydChzLmlz X3N5bmMpPGJyPitzOmFsdGVyKHtpc19zeW5jID0gZmFsc2V9KTxicj4rYXNzZXJ0KG5vdCBzLmlz X3N5bmMpPGJyPistLSBFbnN1cmUgYWJzZW5jZSBpcyBub3QgdHJlYXRlZCBsaWtlICd0cnVlJy48 YnI+K3M6YWx0ZXIoe2lzX3N5bmMgPSBuaWx9KTxicj4rYXNzZXJ0KG5vdCBzLmlzX3N5bmMpPGJy PistLSBJbnZhbGlkIHZhbHVlcy48YnI+K3M6YWx0ZXIoe2lzX3N5bmMgPSBib3guTlVMTH0pPGJy PitzOmFsdGVyKHtpc19zeW5jID0gMTAwfSk8YnI+K3M6cmVwbGFjZXsxfTxicj4rczpkZWxldGV7 MX08YnI+K2JveC5jZmd7IFw8YnI+KyByZXBsaWNhdGlvbl9zeW5jaHJvX3F1b3J1bSA9IG9sZF9z eW5jaHJvX3F1b3J1bSwgXDxicj4rIHJlcGxpY2F0aW9uX3N5bmNocm9fdGltZW91dCA9IG9sZF9z eW5jaHJvX3RpbWVvdXQsIFw8YnI+K308YnI+Kzxicj4rLS0gQWx0ZXIgbmFtZS48YnI+K3M6YWx0 ZXIoe25hbWUgPSAndGVzdDInfSk8YnI+K2Fzc2VydChib3guc3BhY2UudGVzdDIgfj0gbmlsKTxi cj4rYXNzZXJ0KGJveC5zcGFjZS50ZXN0ID09IG5pbCk8YnI+K2Fzc2VydChzLm5hbWUgPT0gJ3Rl c3QyJyk8YnI+Ky0tIFdoZW4gbm90IHNwZWNpZmllZCBvciBuaWwgLSBpZ25vcmVkLjxicj4rczph bHRlcih7bmFtZSA9IG5pbH0pPGJyPithc3NlcnQoYm94LnNwYWNlLnRlc3QyIH49IG5pbCk8YnI+ K2Fzc2VydChib3guc3BhY2UudGVzdCA9PSBuaWwpPGJyPithc3NlcnQocy5uYW1lID09ICd0ZXN0 MicpPGJyPitzOmFsdGVyKHtuYW1lID0gJ19zcGFjZSd9KTxicj4rczphbHRlcih7bmFtZSA9ICd0 ZXN0J30pPGJyPithc3NlcnQoYm94LnNwYWNlLnRlc3Qgfj0gbmlsKTxicj4rYXNzZXJ0KGJveC5z cGFjZS50ZXN0MiA9PSBuaWwpPGJyPithc3NlcnQocy5uYW1lID09ICd0ZXN0Jyk8YnI+Ky0tIElu dmFsaWQgdmFsdWVzLjxicj4rczphbHRlcih7bmFtZSA9IGJveC5OVUxMfSk8YnI+K3M6YWx0ZXIo e25hbWUgPSAxMDB9KTxicj4rPGJyPitzOmRyb3AoKTxicj4rPGJyPitzOmFsdGVyKHt9KTxicj4r b2ssIGVyciA9IHBjYWxsKGJveC5zY2hlbWEuc3BhY2UuYWx0ZXIsIHMuaWQsIHt9KTxicj4rYXNz ZXJ0KGVycjptYXRjaCgnZG9lcyBub3QgZXhpc3QnKSB+PSBuaWwpPGJyPi0tPGJyPjIuMjEuMSAo QXBwbGUgR2l0LTEyMi4zKTwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2 PiZuYnNwOzwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGRpdj5MR1RNLjwvZGl2PjxkaXY+LS08YnI+ U2VyZ2UmbmJzcDtQZXRyZW5rbzwvZGl2PjwvQk9EWT48L0hUTUw+Cg== ----ALT--633937fA55D032831f74816bBd72E8181598187212--