From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: =?UTF-8?B?S29uc3RhbnRpbiBCZWx5YXZza2l5?= Subject: =?UTF-8?B?UmU6IFt0YXJhbnRvb2wtcGF0Y2hlc10gUmU6IFtQQVRDSF0gcmVwbGljYXRp?= =?UTF-8?B?b246IGF1dG9tYXRpYyBza2lwIGR1cGxpY2F0aW5nIHJvd3MgaW4gcmVwbGlj?= =?UTF-8?B?YXRpb24=?= MIME-Version: 1.0 Date: Fri, 13 Apr 2018 14:46:28 +0300 Reply-To: =?UTF-8?B?S29uc3RhbnRpbiBCZWx5YXZza2l5?= Message-ID: <1523619988.284799840@f105.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--halpJyVWobguWBcfQmbMYvloLTA9s8tC1523619988" In-Reply-To: <20180413082348.tlj3ejjis4hjrgo3@esperanza> References: <20180412110125.84663-1-k.belyavskiy@tarantool.org> <20180413082348.tlj3ejjis4hjrgo3@esperanza> To: tarantool-patches@freelists.org, =?UTF-8?B?VmxhZGltaXIgRGF2eWRvdg==?= , =?UTF-8?B?Z2Vvcmd5?= List-ID: ----ALT--halpJyVWobguWBcfQmbMYvloLTA9s8tC1523619988 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 UGxlYXNlIHRha2UgYSBsb29rIGF0IG5ld2VyIHZlcnNpb24uCgo+0J/Rj9GC0L3QuNGG0LAsIDEz INCw0L/RgNC10LvRjyAyMDE4LCAxMToyNCArMDM6MDAg0L7RgiBWbGFkaW1pciBEYXZ5ZG92IDx2 ZGF2eWRvdi5kZXZAZ21haWwuY29tPjoKPgo+T24gVGh1LCBBcHIgMTIsIDIwMTggYXQgMDI6MDE6 MjVQTSArMDMwMCwgS29uc3RhbnRpbiBCZWx5YXZza2l5IHdyb3RlOgo+PiB0aWNrZXQ6ICBodHRw czovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvMzI3MAo+PiBicmFuY2g6 ICBodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9jb21wYXJlL2doLTMyNzAt YWRkLXNraXAtY29uZmxpY3Qtcm93LW9wdGlvbgo+PiAKPj4gSW4gY2FzZSBvZiBhdHRlbXB0aW5n IHRvIGluc2VydCBhIGR1cGxpY2F0ZSBrZXksIGFuIGVycm9yIEVSX1RVUExFX0ZPVU5ECj4+IG9j Y3VyZWQsIHdoaWNoIGxlZCB0byBkaXNjb25uZWN0LiAKPj4gSW50cm9kdWNlIG5ldyBvZnRpb246 ICdzaWxlbnRfc2tpcF9jb25mbGljdF9yb3dzJywgaWYgc2V0LCB0aGVuIGVycm9yIG9mCj4+IHRo aXMgdHlwZSB3aWxsIGJlIGlnbm9yZWQuCj4+IAo+PiBDbG9zZXMgIzMyNzAKPj4gLS0tCj4+ICBz cmMvYm94L2FwcGxpZXIuY2MgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE1ICsrKy0KPj4g IHNyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YSAgICAgICAgICAgICAgICAgICAgfCAgIDMgKwo+PiAg dGVzdC9hcHAtdGFwL2luaXRfc2NyaXB0LnJlc3VsdCAgICAgICAgICAgICB8ICAzOSArKysrKy0t LS0KPj4gIHRlc3QvYm94L2FkbWluLnJlc3VsdCAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIg Kwo+PiAgdGVzdC9ib3gvY2ZnLnJlc3VsdCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCAr Cj4+ICB0ZXN0L3JlcGxpY2F0aW9uL3JlcGxpY2Ffc2tpcF9yb3cubHVhICAgICAgIHwgIDEwICsr Kwo+PiAgdGVzdC9yZXBsaWNhdGlvbi9za2lwX2NvbmZsaWN0X3Jvdy5yZXN1bHQgICB8IDEyOSAr KysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+ICB0ZXN0L3JlcGxpY2F0aW9uL3NraXBfY29u ZmxpY3Rfcm93LnRlc3QubHVhIHwgIDQ2ICsrKysrKysrKysKPj4gIDggZmlsZXMgY2hhbmdlZCwg MjI4IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IHRlc3QvcmVwbGljYXRpb24vcmVwbGljYV9za2lwX3Jvdy5sdWEKPj4gIGNyZWF0ZSBtb2RlIDEw MDY0NCB0ZXN0L3JlcGxpY2F0aW9uL3NraXBfY29uZmxpY3Rfcm93LnJlc3VsdAo+PiAgY3JlYXRl IG1vZGUgMTAwNjQ0IHRlc3QvcmVwbGljYXRpb24vc2tpcF9jb25mbGljdF9yb3cudGVzdC5sdWEK Pj4gCj4+IGRpZmYgLS1naXQgYS9zcmMvYm94L2FwcGxpZXIuY2MgYi9zcmMvYm94L2FwcGxpZXIu Y2MKPj4gaW5kZXggOWFhOTUxYzM0Li41ZWJlNjdlMjcgMTAwNjQ0Cj4+IC0tLSBhL3NyYy9ib3gv YXBwbGllci5jYwo+PiArKysgYi9zcmMvYm94L2FwcGxpZXIuY2MKPj4gQEAgLTQ3LDYgKzQ3LDcg QEAKPj4gICNpbmNsdWRlICJ4cm93X2lvLmgiCj4+ICAjaW5jbHVkZSAiZXJyb3IuaCIKPj4gICNp bmNsdWRlICJzZXNzaW9uLmgiCj4+ICsjaW5jbHVkZSAiY2ZnLmgiCj4+IAo+PiAgU1RSUyhhcHBs aWVyX3N0YXRlLCBhcHBsaWVyX1NUQVRFKTsKPj4gCj4+IEBAIC01MDUsNyArNTA2LDE5IEBAIGFw cGxpZXJfc3Vic2NyaWJlKHN0cnVjdCBhcHBsaWVyICphcHBsaWVyKQo+PiAgCQkJICovCj4+ICAJ CQl2Y2xvY2tfZm9sbG93KCZyZXBsaWNhc2V0LnZjbG9jaywgcm93LnJlcGxpY2FfaWQsCj4+ICAJ CQkJICAgICAgcm93Lmxzbik7Cj4+IC0JCQl4c3RyZWFtX3dyaXRlX3hjKGFwcGxpZXItPnN1YnNj cmliZV9zdHJlYW0sICZyb3cpOwo+PiArCQkJaWYgKHhzdHJlYW1fd3JpdGUoYXBwbGllci0+c3Vi c2NyaWJlX3N0cmVhbSwgJnJvdykgIT0gMCkgewo+PiArCQkJCXN0cnVjdCBlcnJvciAqZSA9IGRp YWdfbGFzdF9lcnJvcihkaWFnX2dldCgpKTsKPj4gKwkJCQkvKioKPj4gKwkJCQkgKiBTaWxlbnRs eSBza2lwIEVSX1RVUExFX0ZPVU5EIGVycm9yIGlmIHN1Y2gKPj4gKwkJCQkgKiBvcHRpb24gaXMg c2V0IGluIGNvbmZpZy4KPj4gKwkJCQkgKi8KPj4gKwkJCQlpZiAoZS0+dHlwZSA9PSAmdHlwZV9D bGllbnRFcnJvciAmJgo+PiArCQkJCSAgICBib3hfZXJyb3JfY29kZShlKSA9PSBFUl9UVVBMRV9G T1VORCAmJgo+Cj4+ICsJCQkJICAgIGNmZ19nZXRpKCJzaWxlbnRfc2tpcF9jb25mbGljdF9yb3dz IikpCj4KPmNmZ19nZXRpKCkgaXMgYSBoZWF2eSBvcGVyYXRpb24uIEkgdGhpbmsgeW91IHNob3Vs ZCBjYWNoZSB0aGUgdmFsdWUgb2YKPnRoaXMgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gQy4gCkkg aG9wZSBjb25mbGljdHMgd2lsbCBvY2N1cnMgcmF0aGVyIHJhcmUsIG92ZXItd2lzZSBzb21ldGhp bmcgZ29lcyB3cm9uZy4uClNvIGl0J3Mgbm90IGEgYmlnIG92ZXJraWxsLgo+Cj4+ICsJCQkJCWRp YWdfY2xlYXIoZGlhZ19nZXQoKSk7Cj4+ICsJCQkJZWxzZQo+PiArCQkJCQlkaWFnX3JhaXNlKCk7 Cj4+ICsJCQl9Cj4KPldoYXQgYWJvdXQgVVBEQVRFIG92ZXIgYSBub24tZXhpc3RlbnQga2V5IG9y IHZpbnlsIHRyYW5zYWN0aW9uIGNvbmZsaWN0Pwo+VGhvc2UgY2FuIGFsc28gaGFwcGVuIGR1ZSB0 byByZXBsaWNhdGlvbiBjb25mbGljdHMuIE1heSBiZSwgd2Ugc2hvdWxkCj5pZ25vcmUgYWxsIGVy cm9ycyBvZiB0eXBlIENsaWVudEVycm9yPwpObywgaW4gdGhpcyB0aWNrZXQgSSB3YW50IHRvIHNv bHZlIGEgY2VydGFpbiBwcm9ibGVtLCBsZXQncyBjb25zaWRlciBvdGhlciBjYXNlcyBpbiBzZXBh cmF0ZSB0aWNrZXQuCj4KPj4gIAkJfQo+PiAgCQlpZiAoYXBwbGllci0+c3RhdGUgPT0gQVBQTElF Ul9TWU5DIHx8Cj4+ICAJCSAgICBhcHBsaWVyLT5zdGF0ZSA9PSBBUFBMSUVSX0ZPTExPVykKPj4g ZGlmZiAtLWdpdCBhL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YSBiL3NyYy9ib3gvbHVhL2xvYWRf Y2ZnLmx1YQo+PiBpbmRleCA4OWZkNzc0NWUuLjM3MmYwMGYyNSAxMDA2NDQKPj4gLS0tIGEvc3Jj L2JveC9sdWEvbG9hZF9jZmcubHVhCj4+ICsrKyBiL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YQo+ PiBAQCAtNjIsNiArNjIsNyBAQCBsb2NhbCBkZWZhdWx0X2NmZyA9IHsKPj4gICAgICBmZWVkYmFj a19lbmFibGVkICAgICAgPSB0cnVlLAo+PiAgICAgIGZlZWRiYWNrX2hvc3QgICAgICAgICA9ICIg aHR0cHM6Ly9mZWVkYmFjay50YXJhbnRvb2wuaW8gIiwKPj4gICAgICBmZWVkYmFja19pbnRlcnZh bCAgICAgPSAzNjAwLAo+PiArICAgIHNpbGVudF9za2lwX2NvbmZsaWN0X3Jvd3MgPSBmYWxzZSwK Pgo+QWxsIHJlcGxpY2F0aW9uLXJlbGF0ZWQgb3B0aW9ucyBzaG91bGQgaGF2ZSByZXBsaWNhdGlv bl8gcHJlZml4Lgo+V2hhdCBhYm91dCByZXBsaWNhdGlvbl9pZ25vcmVfY29uZmxpY3RzPyAKUmVw bGFjZSB3aXRoICJyZXBsaWNhdGlvbl9za2lwX2NvbmZsaWN0IiAoZnJvbSB0aWNrZXQgTmFtZSkK Pj4gZGlmZiAtLWdpdCBhL3Rlc3QvcmVwbGljYXRpb24vc2tpcF9jb25mbGljdF9yb3cudGVzdC5s dWEgYi90ZXN0L3JlcGxpY2F0aW9uL3NraXBfY29uZmxpY3Rfcm93LnRlc3QubHVhCj4+IG5ldyBm aWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAwMC4uNWNmYmZmMzM5Cj4+IC0tLSAvZGV2 L251bGwKPj4gKysrIGIvdGVzdC9yZXBsaWNhdGlvbi9za2lwX2NvbmZsaWN0X3Jvdy50ZXN0Lmx1 YQo+PiBAQCAtMCwwICsxLDQ2IEBACj4+ICtlbnYgPSByZXF1aXJlKCd0ZXN0X3J1bicpCj4+ICt0 ZXN0X3J1biA9IGVudi5uZXcoKQo+PiArZW5naW5lID0gdGVzdF9ydW46Z2V0X2NmZygnZW5naW5l JykKPj4gKwo+PiArYm94LnNjaGVtYS51c2VyLmdyYW50KCdndWVzdCcsICdyZWFkLHdyaXRlLGV4 ZWN1dGUnLCAndW5pdmVyc2UnKQo+PiArYm94LnNjaGVtYS51c2VyLmdyYW50KCdndWVzdCcsICdy ZXBsaWNhdGlvbicpCj4+ICsKPj4gK3NwYWNlID0gYm94LnNjaGVtYS5zcGFjZS5jcmVhdGUoJ3Rl c3QnLCB7ZW5naW5lID0gZW5naW5lfSk7Cj4+ICtpbmRleCA9IGJveC5zcGFjZS50ZXN0OmNyZWF0 ZV9pbmRleCgncHJpbWFyeScpCj4+ICsKPj4gK3Rlc3RfcnVuOmNtZCgiY3JlYXRlIHNlcnZlciBy ZXBsaWNhIHdpdGggcnBsX21hc3Rlcj1kZWZhdWx0LCBzY3JpcHQ9J3JlcGxpY2F0aW9uL3JlcGxp Y2Ffc2tpcF9yb3cubHVhJyIpCj4KPkFGQUlVIHlvdSBkb24ndCBuZWVkIHRvIGFkZCBhIG5ldyBz Y3JpcHQgLSB5b3UgY2FuIHJldXNlIHJlcGxpY2EubHVhIGFuZAo+c2V0IHRoZSBuZXcgY29uZmln dXJhdGlvbiBvcHRpb24gYWZ0ZXIgYm9vdHN0cmFwLiAKWWVzLCB5b3UncmUgcmlnaHQsIHVwZGF0 ZWQgYW5kIHJlbW92ZSBuZXfCoHJlcGxpY2Ffc2tpcF9yb3cubHVhCj4KPj4gK3Rlc3RfcnVuOmNt ZCgic3RhcnQgc2VydmVyIHJlcGxpY2EiKQo+PiArCj4+ICtyZXBsID0gYm94LmNmZy5yZXBsaWNh dGlvbgo+PiArYm94LmNmZ3tyZXBsaWNhdGlvbiA9ICIifQo+PiArYm94LmluZm8uc3RhdHVzCj4K PkkgZG9uJ3QgdW5kZXJzdGFuZCB3aHkgeW91IHR1cm4gb2ZmIHJlcGxpY2F0aW9uIGhlcmUuIApG aXhlZCwgeW91IGFyZSByaWdodCwgaXQncyBub3QgbmVjZXNzYXJ5LCBzaW5jZSBpdCdzIG5vdCBh IG1lc2guCj4KPj4gKwo+PiArdGVzdF9ydW46Y21kKCJzd2l0Y2ggcmVwbGljYSIpCj4+ICtyZXBs ID0gYm94LmNmZy5yZXBsaWNhdGlvbgo+PiArYm94LmNmZ3tyZXBsaWNhdGlvbiA9ICIifQo+Cj4u Li4gYW5kIGhlcmUgClJlbW92ZWQKPgo+PiArYm94LnNwYWNlLnRlc3Q6aW5zZXJ0ezJ9Cj4+ICti b3guc3BhY2UudGVzdDppbnNlcnR7MX0KPj4gKwo+PiArdGVzdF9ydW46Y21kKCJzd2l0Y2ggZGVm YXVsdCIpCj4+ICtzcGFjZTppbnNlcnR7MX0KPj4gK3NwYWNlOnNlbGVjdHt9Cj4+ICtib3guY2Zn e3JlcGxpY2F0aW9uID0gcmVwbH0KPj4gK2JveC5pbmZvLnN0YXR1cwo+PiArCj4+ICt0ZXN0X3J1 bjpjbWQoInN3aXRjaCByZXBsaWNhIikKPj4gK2JveC5jZmd7cmVwbGljYXRpb24gPSByZXBsfQo+ PiArcmVxdWlyZSgnZmliZXInKS5zbGVlcCgwLjAxKQo+PiArYm94LmluZm8ucmVwbGljYXRpb25b MV0udXBzdHJlYW0ubWVzc2FnZQo+PiArYm94LmluZm8ucmVwbGljYXRpb25bMV0udXBzdHJlYW0u c3RhdHVzCj4+ICtib3guc3BhY2UudGVzdDpzZWxlY3R7fQo+PiArCj4+ICt0ZXN0X3J1bjpjbWQo InN3aXRjaCBkZWZhdWx0IikKPj4gK3NwYWNlOnNlbGVjdHt9Cj4+ICtib3guaW5mby5zdGF0dXMK Pj4gKwo+PiArLS0gY2xlYW51cAo+PiArdGVzdF9ydW46Y21kKCJzdG9wIHNlcnZlciByZXBsaWNh IikKPj4gK3Rlc3RfcnVuOmNtZCgiY2xlYW51cCBzZXJ2ZXIgcmVwbGljYSIpCj4+ICtib3guc3Bh Y2UudGVzdDpkcm9wKCkKPj4gK2JveC5zY2hlbWEudXNlci5yZXZva2UoJ2d1ZXN0JywgJ3JlcGxp Y2F0aW9uJykKPj4gK2JveC5zY2hlbWEudXNlci5yZXZva2UoJ2d1ZXN0JywgJ3JlYWQsd3JpdGUs ZXhlY3V0ZScsICd1bml2ZXJzZScpCj4KCgpCZXN0IHJlZ2FyZHMsCktvbnN0YW50aW4gQmVseWF2 c2tpeQprLmJlbHlhdnNraXlAdGFyYW50b29sLm9yZwo= ----ALT--halpJyVWobguWBcfQmbMYvloLTA9s8tC1523619988 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPlBsZWFzZSB0YWtlIGEgbG9vayBhdCBuZXdlciB2ZXJzaW9uLjxicj48YnI+ PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46 MTBweDsgcGFkZGluZzowIDAgMCAxMHB4OyI+CgnQn9GP0YLQvdC40YbQsCwgMTMg0LDQv9GA0LXQ u9GPIDIwMTgsIDExOjI0ICswMzowMCDQvtGCIFZsYWRpbWlyIERhdnlkb3YgJmx0O3ZkYXZ5ZG92 LmRldkBnbWFpbC5jb20mZ3Q7Ojxicj48YnI+PGRpdiBpZD0iIj48ZGl2IGNsYXNzPSJqcy1oZWxw ZXIganMtcmVhZG1zZy1tc2ciPjxkaXY+PGRpdiBpZD0ic3R5bGVfMTUyMzYwNzg0MjAwMDAwMDA2 MzNfQk9EWSI+T24gVGh1LCBBcHIgMTIsIDIwMTggYXQgMDI6MDE6MjVQTSArMDMwMCwgS29uc3Rh bnRpbiBCZWx5YXZza2l5IHdyb3RlOjxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJmd0OyB0aWNrZXQ6IDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFy YW50b29sL2lzc3Vlcy8zMjcwIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9naXRodWIuY29tL3Rh cmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzMyNzA8L2E+PGJyPgomZ3Q7IGJyYW5jaDogPGEgaHJl Zj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvY29tcGFyZS9naC0zMjcw LWFkZC1za2lwLWNvbmZsaWN0LXJvdy1vcHRpb24iIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dp dGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9jb21wYXJlL2doLTMyNzAtYWRkLXNraXAtY29u ZmxpY3Qtcm93LW9wdGlvbjwvYT48YnI+CiZndDsgPGJyPgomZ3Q7IEluIGNhc2Ugb2YgYXR0ZW1w dGluZyB0byBpbnNlcnQgYSBkdXBsaWNhdGUga2V5LCBhbiBlcnJvciBFUl9UVVBMRV9GT1VORDxi cj4KJmd0OyBvY2N1cmVkLCB3aGljaCBsZWQgdG8gZGlzY29ubmVjdC4gPGJyPgomZ3Q7IEludHJv ZHVjZSBuZXcgb2Z0aW9uOiAnc2lsZW50X3NraXBfY29uZmxpY3Rfcm93cycsIGlmIHNldCwgdGhl biBlcnJvciBvZjxicj4KJmd0OyB0aGlzIHR5cGUgd2lsbCBiZSBpZ25vcmVkLjxicj4KJmd0OyA8 YnI+CiZndDsgQ2xvc2VzICMzMjcwPGJyPgomZ3Q7IC0tLTxicj4KJmd0OyAgc3JjL2JveC9hcHBs aWVyLmNjICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNSArKystPGJyPgomZ3Q7ICBzcmMv Ym94L2x1YS9sb2FkX2NmZy5sdWEgICAgICAgICAgICAgICAgICAgIHwgICAzICs8YnI+CiZndDsg IHRlc3QvYXBwLXRhcC9pbml0X3NjcmlwdC5yZXN1bHQgICAgICAgICAgICAgfCAgMzkgKysrKyst LS0tPGJyPgomZ3Q7ICB0ZXN0L2JveC9hZG1pbi5yZXN1bHQgICAgICAgICAgICAgICAgICAgICAg IHwgICAyICs8YnI+CiZndDsgIHRlc3QvYm94L2NmZy5yZXN1bHQgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDQgKzxicj4KJmd0OyAgdGVzdC9yZXBsaWNhdGlvbi9yZXBsaWNhX3NraXBfcm93 Lmx1YSAgICAgICB8ICAxMCArKys8YnI+CiZndDsgIHRlc3QvcmVwbGljYXRpb24vc2tpcF9jb25m bGljdF9yb3cucmVzdWx0ICAgfCAxMjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKzxicj4K Jmd0OyAgdGVzdC9yZXBsaWNhdGlvbi9za2lwX2NvbmZsaWN0X3Jvdy50ZXN0Lmx1YSB8ICA0NiAr KysrKysrKysrPGJyPgomZ3Q7ICA4IGZpbGVzIGNoYW5nZWQsIDIyOCBpbnNlcnRpb25zKCspLCAy MCBkZWxldGlvbnMoLSk8YnI+CiZndDsgIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L3JlcGxpY2F0 aW9uL3JlcGxpY2Ffc2tpcF9yb3cubHVhPGJyPgomZ3Q7ICBjcmVhdGUgbW9kZSAxMDA2NDQgdGVz dC9yZXBsaWNhdGlvbi9za2lwX2NvbmZsaWN0X3Jvdy5yZXN1bHQ8YnI+CiZndDsgIGNyZWF0ZSBt b2RlIDEwMDY0NCB0ZXN0L3JlcGxpY2F0aW9uL3NraXBfY29uZmxpY3Rfcm93LnRlc3QubHVhPGJy PgomZ3Q7IDxicj4KJmd0OyBkaWZmIC0tZ2l0IGEvc3JjL2JveC9hcHBsaWVyLmNjIGIvc3JjL2Jv eC9hcHBsaWVyLmNjPGJyPgomZ3Q7IGluZGV4IDlhYTk1MWMzNC4uNWViZTY3ZTI3IDEwMDY0NDxi cj4KJmd0OyAtLS0gYS9zcmMvYm94L2FwcGxpZXIuY2M8YnI+CiZndDsgKysrIGIvc3JjL2JveC9h cHBsaWVyLmNjPGJyPgomZ3Q7IEBAIC00Nyw2ICs0Nyw3IEBAPGJyPgomZ3Q7ICAjaW5jbHVkZSAi eHJvd19pby5oIjxicj4KJmd0OyAgI2luY2x1ZGUgImVycm9yLmgiPGJyPgomZ3Q7ICAjaW5jbHVk ZSAic2Vzc2lvbi5oIjxicj4KJmd0OyArI2luY2x1ZGUgImNmZy5oIjxicj4KJmd0OyAgPGJyPgom Z3Q7ICBTVFJTKGFwcGxpZXJfc3RhdGUsIGFwcGxpZXJfU1RBVEUpOzxicj4KJmd0OyAgPGJyPgom Z3Q7IEBAIC01MDUsNyArNTA2LDE5IEBAIGFwcGxpZXJfc3Vic2NyaWJlKHN0cnVjdCBhcHBsaWVy ICphcHBsaWVyKTxicj4KJmd0OyAgCQkJICovPGJyPgomZ3Q7ICAJCQl2Y2xvY2tfZm9sbG93KCZh bXA7cmVwbGljYXNldC52Y2xvY2ssIHJvdy5yZXBsaWNhX2lkLDxicj4KJmd0OyAgCQkJCSAgICAg IHJvdy5sc24pOzxicj4KJmd0OyAtCQkJeHN0cmVhbV93cml0ZV94YyhhcHBsaWVyLSZndDtzdWJz Y3JpYmVfc3RyZWFtLCAmYW1wO3Jvdyk7PGJyPgomZ3Q7ICsJCQlpZiAoeHN0cmVhbV93cml0ZShh cHBsaWVyLSZndDtzdWJzY3JpYmVfc3RyZWFtLCAmYW1wO3JvdykgIT0gMCkgezxicj4KJmd0OyAr CQkJCXN0cnVjdCBlcnJvciAqZSA9IGRpYWdfbGFzdF9lcnJvcihkaWFnX2dldCgpKTs8YnI+CiZn dDsgKwkJCQkvKio8YnI+CiZndDsgKwkJCQkgKiBTaWxlbnRseSBza2lwIEVSX1RVUExFX0ZPVU5E IGVycm9yIGlmIHN1Y2g8YnI+CiZndDsgKwkJCQkgKiBvcHRpb24gaXMgc2V0IGluIGNvbmZpZy48 YnI+CiZndDsgKwkJCQkgKi88YnI+CiZndDsgKwkJCQlpZiAoZS0mZ3Q7dHlwZSA9PSAmYW1wO3R5 cGVfQ2xpZW50RXJyb3IgJmFtcDsmYW1wOzxicj4KJmd0OyArCQkJCSAgICBib3hfZXJyb3JfY29k ZShlKSA9PSBFUl9UVVBMRV9GT1VORCAmYW1wOyZhbXA7PGJyPjxicj4KJmd0OyArCQkJCSAgICBj ZmdfZ2V0aSgic2lsZW50X3NraXBfY29uZmxpY3Rfcm93cyIpKTxicj48YnI+CmNmZ19nZXRpKCkg aXMgYSBoZWF2eSBvcGVyYXRpb24uIEkgdGhpbmsgeW91IHNob3VsZCBjYWNoZSB0aGUgdmFsdWUg b2Y8YnI+CnRoaXMgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gQy48L2Rpdj48L2Rpdj48L2Rpdj48 L2Rpdj48L2Jsb2NrcXVvdGU+SSBob3BlIGNvbmZsaWN0cyB3aWxsIG9jY3VycyByYXRoZXIgcmFy ZSwgb3Zlci13aXNlIHNvbWV0aGluZyBnb2VzIHdyb25nLi48YnI+U28gaXQncyBub3QgYSBiaWcg b3ZlcmtpbGwuPGJyPjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4 NTdBNjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAwIDAgMTBweDsiPjxkaXYgaWQ9IiI+PGRpdiBj bGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNnIj48ZGl2PjxkaXYgaWQ9InN0eWxlXzE1MjM2 MDc4NDIwMDAwMDAwNjMzX0JPRFkiPjxicj4KJmd0OyArCQkJCQlkaWFnX2NsZWFyKGRpYWdfZ2V0 KCkpOzxicj4KJmd0OyArCQkJCWVsc2U8YnI+CiZndDsgKwkJCQkJZGlhZ19yYWlzZSgpOzxicj4K Jmd0OyArCQkJfTxicj48YnI+CldoYXQgYWJvdXQgVVBEQVRFIG92ZXIgYSBub24tZXhpc3RlbnQg a2V5IG9yIHZpbnlsIHRyYW5zYWN0aW9uIGNvbmZsaWN0Pzxicj4KVGhvc2UgY2FuIGFsc28gaGFw cGVuIGR1ZSB0byByZXBsaWNhdGlvbiBjb25mbGljdHMuIE1heSBiZSwgd2Ugc2hvdWxkPGJyPgpp Z25vcmUgYWxsIGVycm9ycyBvZiB0eXBlIENsaWVudEVycm9yPzxicj48L2Rpdj48L2Rpdj48L2Rp dj48L2Rpdj48L2Jsb2NrcXVvdGU+Tm8sIGluIHRoaXMgdGlja2V0IEkgd2FudCB0byBzb2x2ZSBh IGNlcnRhaW4gcHJvYmxlbSwgbGV0J3MgY29uc2lkZXIgb3RoZXIgY2FzZXMgaW4gc2VwYXJhdGUg dGlja2V0Ljxicj48YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICMwODU3 QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij48ZGl2IGlkPSIiPjxkaXYgY2xh c3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+PGRpdj48ZGl2IGlkPSJzdHlsZV8xNTIzNjA3 ODQyMDAwMDAwMDYzM19CT0RZIj48YnI+CiZndDsgIAkJfTxicj4KJmd0OyAgCQlpZiAoYXBwbGll ci0mZ3Q7c3RhdGUgPT0gQVBQTElFUl9TWU5DIHx8PGJyPgomZ3Q7ICAJCSAgICBhcHBsaWVyLSZn dDtzdGF0ZSA9PSBBUFBMSUVSX0ZPTExPVyk8YnI+CiZndDsgZGlmZiAtLWdpdCBhL3NyYy9ib3gv bHVhL2xvYWRfY2ZnLmx1YSBiL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YTxicj4KJmd0OyBpbmRl eCA4OWZkNzc0NWUuLjM3MmYwMGYyNSAxMDA2NDQ8YnI+CiZndDsgLS0tIGEvc3JjL2JveC9sdWEv bG9hZF9jZmcubHVhPGJyPgomZ3Q7ICsrKyBiL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YTxicj4K Jmd0OyBAQCAtNjIsNiArNjIsNyBAQCBsb2NhbCBkZWZhdWx0X2NmZyA9IHs8YnI+CiZndDsgICAg ICBmZWVkYmFja19lbmFibGVkICAgICAgPSB0cnVlLDxicj4KJmd0OyAgICAgIGZlZWRiYWNrX2hv c3QgICAgICAgICA9ICI8YSBocmVmPSJodHRwczovL2ZlZWRiYWNrLnRhcmFudG9vbC5pbyIgdGFy Z2V0PSJfYmxhbmsiPmh0dHBzOi8vZmVlZGJhY2sudGFyYW50b29sLmlvPC9hPiIsPGJyPgomZ3Q7 ICAgICAgZmVlZGJhY2tfaW50ZXJ2YWwgICAgID0gMzYwMCw8YnI+CiZndDsgKyAgICBzaWxlbnRf c2tpcF9jb25mbGljdF9yb3dzID0gZmFsc2UsPGJyPjxicj4KQWxsIHJlcGxpY2F0aW9uLXJlbGF0 ZWQgb3B0aW9ucyBzaG91bGQgaGF2ZSByZXBsaWNhdGlvbl8gcHJlZml4Ljxicj4KV2hhdCBhYm91 dCByZXBsaWNhdGlvbl9pZ25vcmVfY29uZmxpY3RzPzwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2Pjwv YmxvY2txdW90ZT5SZXBsYWNlIHdpdGggInJlcGxpY2F0aW9uX3NraXBfY29uZmxpY3QiIChmcm9t IHRpY2tldCBOYW1lKTxicj48YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNvbGlk ICMwODU3QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij48ZGl2IGlkPSIiPjxk aXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+PGRpdj48ZGl2IGlkPSJzdHlsZV8x NTIzNjA3ODQyMDAwMDAwMDYzM19CT0RZIj4KJmd0OyBkaWZmIC0tZ2l0IGEvdGVzdC9yZXBsaWNh dGlvbi9za2lwX2NvbmZsaWN0X3Jvdy50ZXN0Lmx1YSBiL3Rlc3QvcmVwbGljYXRpb24vc2tpcF9j b25mbGljdF9yb3cudGVzdC5sdWE8YnI+CiZndDsgbmV3IGZpbGUgbW9kZSAxMDA2NDQ8YnI+CiZn dDsgaW5kZXggMDAwMDAwMDAwLi41Y2ZiZmYzMzk8YnI+CiZndDsgLS0tIC9kZXYvbnVsbDxicj4K Jmd0OyArKysgYi90ZXN0L3JlcGxpY2F0aW9uL3NraXBfY29uZmxpY3Rfcm93LnRlc3QubHVhPGJy PgomZ3Q7IEBAIC0wLDAgKzEsNDYgQEA8YnI+CiZndDsgK2VudiA9IHJlcXVpcmUoJ3Rlc3RfcnVu Jyk8YnI+CiZndDsgK3Rlc3RfcnVuID0gZW52Lm5ldygpPGJyPgomZ3Q7ICtlbmdpbmUgPSB0ZXN0 X3J1bjpnZXRfY2ZnKCdlbmdpbmUnKTxicj4KJmd0OyArPGJyPgomZ3Q7ICtib3guc2NoZW1hLnVz ZXIuZ3JhbnQoJ2d1ZXN0JywgJ3JlYWQsd3JpdGUsZXhlY3V0ZScsICd1bml2ZXJzZScpPGJyPgom Z3Q7ICtib3guc2NoZW1hLnVzZXIuZ3JhbnQoJ2d1ZXN0JywgJ3JlcGxpY2F0aW9uJyk8YnI+CiZn dDsgKzxicj4KJmd0OyArc3BhY2UgPSBib3guc2NoZW1hLnNwYWNlLmNyZWF0ZSgndGVzdCcsIHtl bmdpbmUgPSBlbmdpbmV9KTs8YnI+CiZndDsgK2luZGV4ID0gYm94LnNwYWNlLnRlc3Q6Y3JlYXRl X2luZGV4KCdwcmltYXJ5Jyk8YnI+CiZndDsgKzxicj4KJmd0OyArdGVzdF9ydW46Y21kKCJjcmVh dGUgc2VydmVyIHJlcGxpY2Egd2l0aCBycGxfbWFzdGVyPWRlZmF1bHQsIHNjcmlwdD0ncmVwbGlj YXRpb24vcmVwbGljYV9za2lwX3Jvdy5sdWEnIik8YnI+PGJyPgpBRkFJVSB5b3UgZG9uJ3QgbmVl ZCB0byBhZGQgYSBuZXcgc2NyaXB0IC0geW91IGNhbiByZXVzZSByZXBsaWNhLmx1YSBhbmQ8YnI+ CnNldCB0aGUgbmV3IGNvbmZpZ3VyYXRpb24gb3B0aW9uIGFmdGVyIGJvb3RzdHJhcC48L2Rpdj48 L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+WWVzLCB5b3UncmUgcmlnaHQsIHVwZGF0ZWQg YW5kIHJlbW92ZSBuZXcmbmJzcDtyZXBsaWNhX3NraXBfcm93Lmx1YTxibG9ja3F1b3RlIHN0eWxl PSJib3JkZXItbGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAw IDAgMTBweDsiPjxkaXYgaWQ9IiI+PGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNn Ij48ZGl2PjxkaXYgaWQ9InN0eWxlXzE1MjM2MDc4NDIwMDAwMDAwNjMzX0JPRFkiPjxicj4KJmd0 OyArdGVzdF9ydW46Y21kKCJzdGFydCBzZXJ2ZXIgcmVwbGljYSIpPGJyPgomZ3Q7ICs8YnI+CiZn dDsgK3JlcGwgPSBib3guY2ZnLnJlcGxpY2F0aW9uPGJyPgomZ3Q7ICtib3guY2Zne3JlcGxpY2F0 aW9uID0gIiJ9PGJyPgomZ3Q7ICtib3guaW5mby5zdGF0dXM8YnI+PGJyPgpJIGRvbid0IHVuZGVy c3RhbmQgd2h5IHlvdSB0dXJuIG9mZiByZXBsaWNhdGlvbiBoZXJlLjwvZGl2PjwvZGl2PjwvZGl2 PjwvZGl2PjwvYmxvY2txdW90ZT5GaXhlZCwgeW91IGFyZSByaWdodCwgaXQncyBub3QgbmVjZXNz YXJ5LCBzaW5jZSBpdCdzIG5vdCBhIG1lc2guPGJyPjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXIt bGVmdDoxcHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAwIDAgMTBweDsi PjxkaXYgaWQ9IiI+PGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNnIj48ZGl2Pjxk aXYgaWQ9InN0eWxlXzE1MjM2MDc4NDIwMDAwMDAwNjMzX0JPRFkiPjxicj4KJmd0OyArPGJyPgom Z3Q7ICt0ZXN0X3J1bjpjbWQoInN3aXRjaCByZXBsaWNhIik8YnI+CiZndDsgK3JlcGwgPSBib3gu Y2ZnLnJlcGxpY2F0aW9uPGJyPgomZ3Q7ICtib3guY2Zne3JlcGxpY2F0aW9uID0gIiJ9PGJyPjxi cj4KLi4uIGFuZCBoZXJlPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPlJlbW92 ZWQ8YnI+PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBt YXJnaW46MTBweDsgcGFkZGluZzowIDAgMCAxMHB4OyI+PGRpdiBpZD0iIj48ZGl2IGNsYXNzPSJq cy1oZWxwZXIganMtcmVhZG1zZy1tc2ciPjxkaXY+PGRpdiBpZD0ic3R5bGVfMTUyMzYwNzg0MjAw MDAwMDA2MzNfQk9EWSI+PGJyPgomZ3Q7ICtib3guc3BhY2UudGVzdDppbnNlcnR7Mn08YnI+CiZn dDsgK2JveC5zcGFjZS50ZXN0Omluc2VydHsxfTxicj4KJmd0OyArPGJyPgomZ3Q7ICt0ZXN0X3J1 bjpjbWQoInN3aXRjaCBkZWZhdWx0Iik8YnI+CiZndDsgK3NwYWNlOmluc2VydHsxfTxicj4KJmd0 OyArc3BhY2U6c2VsZWN0e308YnI+CiZndDsgK2JveC5jZmd7cmVwbGljYXRpb24gPSByZXBsfTxi cj4KJmd0OyArYm94LmluZm8uc3RhdHVzPGJyPgomZ3Q7ICs8YnI+CiZndDsgK3Rlc3RfcnVuOmNt ZCgic3dpdGNoIHJlcGxpY2EiKTxicj4KJmd0OyArYm94LmNmZ3tyZXBsaWNhdGlvbiA9IHJlcGx9 PGJyPgomZ3Q7ICtyZXF1aXJlKCdmaWJlcicpLnNsZWVwKDAuMDEpPGJyPgomZ3Q7ICtib3guaW5m by5yZXBsaWNhdGlvblsxXS51cHN0cmVhbS5tZXNzYWdlPGJyPgomZ3Q7ICtib3guaW5mby5yZXBs aWNhdGlvblsxXS51cHN0cmVhbS5zdGF0dXM8YnI+CiZndDsgK2JveC5zcGFjZS50ZXN0OnNlbGVj dHt9PGJyPgomZ3Q7ICs8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgic3dpdGNoIGRlZmF1bHQiKTxi cj4KJmd0OyArc3BhY2U6c2VsZWN0e308YnI+CiZndDsgK2JveC5pbmZvLnN0YXR1czxicj4KJmd0 OyArPGJyPgomZ3Q7ICstLSBjbGVhbnVwPGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQoInN0b3Agc2Vy dmVyIHJlcGxpY2EiKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCJjbGVhbnVwIHNlcnZlciByZXBs aWNhIik8YnI+CiZndDsgK2JveC5zcGFjZS50ZXN0OmRyb3AoKTxicj4KJmd0OyArYm94LnNjaGVt YS51c2VyLnJldm9rZSgnZ3Vlc3QnLCAncmVwbGljYXRpb24nKTxicj4KJmd0OyArYm94LnNjaGVt YS51c2VyLnJldm9rZSgnZ3Vlc3QnLCAncmVhZCx3cml0ZSxleGVjdXRlJywgJ3VuaXZlcnNlJyk8 YnI+PGJyPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT4KPGJyPgo8YnI+QmVz dCByZWdhcmRzLDxicj5Lb25zdGFudGluIEJlbHlhdnNraXk8YnI+ay5iZWx5YXZza2l5QHRhcmFu dG9vbC5vcmc8YnI+PC9CT0RZPjwvSFRNTD4K ----ALT--halpJyVWobguWBcfQmbMYvloLTA9s8tC1523619988--