From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f144.i.mail.ru (f144.i.mail.ru [128.140.171.240]) (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 7F856469719 for ; Mon, 2 Mar 2020 20:18:34 +0300 (MSK) From: =?UTF-8?B?U2VyZ2UgUGV0cmVua28=?= MIME-Version: 1.0 Date: Mon, 02 Mar 2020 20:18:33 +0300 Reply-To: =?UTF-8?B?U2VyZ2UgUGV0cmVua28=?= Message-ID: <1583169513.32666235@f144.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--fC6eF343D92eaDaC6C9f86e8B7eAe9261583169513" In-Reply-To: <41560ae6-e2fb-1b7e-32d0-d596e73db8c5@tarantool.org> References: <20200228170130.81713-1-sergepetrenko@tarantool.org> <1582969950.401106116@f137.i.mail.ru> <41560ae6-e2fb-1b7e-32d0-d596e73db8c5@tarantool.org> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH=5D_replication=3A_fix_rebo?= =?utf-8?q?otstrap_in_case_the_instance_is_listed_in_box=2Ecfg=2Ereplicati?= =?utf-8?q?on?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?VmxhZGlzbGF2IFNocGlsZXZveQ==?= Cc: kirichenkoga@gmail.com, tarantool-patches@dev.tarantool.org ----ALT--fC6eF343D92eaDaC6C9f86e8B7eAe9261583169513 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CsKgIAo+0KHRg9Cx0LHQvtGC0LAsIDI5INGE0LXQstGA0LDQu9GPIDIwMjAsIDE3OjE5ICswMzow MCDQvtGCIFZsYWRpc2xhdiBTaHBpbGV2b3kgPHYuc2hwaWxldm95QHRhcmFudG9vbC5vcmc+Ogo+ wqAKPk9uIDI5LzAyLzIwMjAgMTA6NTIsIFNlcmdlIFBldHJlbmtvIHdyb3RlOgo+PiBIaSHCoAo+ Pgo+PiDQodGD0LHQsdC+0YLQsCwgMjkg0YTQtdCy0YDQsNC70Y8gMjAyMCwgMjo0MyArMDM6MDAg 0L7RgiBWbGFkaXNsYXYgU2hwaWxldm95IDwgdi5zaHBpbGV2b3lAdGFyYW50b29sLm9yZyA+Ogo+ PiDCoAo+PiBUaGFua3MgZm9yIHRoZSBwYXRjaCEKPj4KPj4gT24gMjgvMDIvMjAyMCAxODowMSwg U2VyZ2UgUGV0cmVua28gd3JvdGU6Cj4+ID4gV2hlbiBjaGVja2luZyB3aGV0ZXIgcmVqb2luIGlz IG5lZWRlZCwgcmVwbGljYSBsb29wcyB0aHJvdWdoIGFsbCB0aGUKPj4gPiBpbnN0YW5jZXMgaW4g Ym94LmNmZy5yZXBsaWNhdGlvbiwgd2hpY2ggbWFrZXMgaXQgYmVsaWV2ZSB0aGF0IHRoZXJlIGlz IGEKPj4gPiBtYXN0ZXIgaG9sZGluZyBmaWxlcywgbmVlZGVkIGJ5IGl0LCBzaW5jZSBpdCBhY2Nv dW50cyBpdHNlbGYganVzdCBsaWtlCj4+ID4gYWxsIG90aGVyIGluc3RhbmNlcy4KPj4gPiBTbyBt YWtlIHJlcGxpY2Egc2tpcCBpdHNlbGYgd2hlbiBmaW5kaW5nIGFuIGluc3RhbmNlIHdoaWNoIGhv bGRzIGZpbGVzCj4+ID4gbmVlZGVkIGJ5IGl0LCBhbmQgZGV0ZXJtaW5pbmcgd2hldGhlciByZWJv b3RzdHJhcCBpcyBuZWVkZWQuCj4+ID4KPj4gPiBXZSBhbHJlYWR5IGhhdmUgYSB3b3JraW5nIHRl c3QgZm9yIHRoZSBpc3N1ZSwgaXQgbWlzc2VkIHRoZSBpc3N1ZSBkdWUgdG8KPj4gPiByZXBsaWNh Lmx1YSByZXBsaWNhdGlvbiBzZXR0aW5ncy4gRml4IHJlcGxpY2EubHVhIHRvIG9wdGlvbmFsbHkg aW5jbHVkZQo+PiA+IGl0c2VsZiBpbiBib3guY2ZnLnJlcGxpY2F0aW9uLCBzbyB0aGF0IHRoZSBj b3JyZXNwb25kaW5nIHRlc3Qgd29ya3MKPj4gPiBjb3JyZWN0bHkuCj4+ID4KPj4gPiBDbG9zZXMg IzQ3NTkKPj4gPiAtLS0KPj4gPiAgaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRv b2wvaXNzdWVzLzQ3NTkKPj4gPiAgaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRv b2wvdHJlZS9zcC9naC00NzU5LXJlYm9vdHN0cmFwLWZpeAo+PiA+Cj4+ID4gQENoYW5nZUxvZwo+ PiA+IC0gZml4IHJlYm9vdHN0cmFwIHByb2NlZHVyZSBub3Qgd29ya2luZyBpbiBjYXNlIHJlcGxp Y2EgaXRzZWxmCj4+ID4gaXMgbGlzdGVkIGluIGBib3guY2ZnLnJlcGxpY2F0aW9uYAo+PiA+Cj4+ ID4gc3JjL2JveC9yZXBsaWNhdGlvbi5jYyB8IDEzICsrKysrKysrKysrKy0KPj4gPiB0ZXN0L3Jl cGxpY2F0aW9uL3JlcGxpY2EubHVhIHwgMTEgKysrKysrKysrKy0KPj4gPiB0ZXN0L3JlcGxpY2F0 aW9uL3JlcGxpY2FfcmVqb2luLnJlc3VsdCB8IDEyICsrKysrKy0tLS0tLQo+PiA+IHRlc3QvcmVw bGljYXRpb24vcmVwbGljYV9yZWpvaW4udGVzdC5sdWEgfCAxMiArKysrKystLS0tLS0KPj4gPiA0 IGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQo+PiA+Cj4+ ID4gZGlmZiAtLWdpdCBhL3NyYy9ib3gvcmVwbGljYXRpb24uY2MgYi9zcmMvYm94L3JlcGxpY2F0 aW9uLmNjCj4+ID4gaW5kZXggZTdiZmEyMmFiLi4wMWVkYzBmYjIgMTAwNjQ0Cj4+ID4gLS0tIGEv c3JjL2JveC9yZXBsaWNhdGlvbi5jYwo+PiA+ICsrKyBiL3NyYy9ib3gvcmVwbGljYXRpb24uY2MK Pj4gPiBAQCAtNzY4LDggKzc2OCwxOSBAQCByZXBsaWNhc2V0X25lZWRzX3Jlam9pbihzdHJ1Y3Qg cmVwbGljYSAqKm1hc3RlcikKPj4gPiBzdHJ1Y3QgcmVwbGljYSAqbGVhZGVyID0gTlVMTDsKPj4g PiByZXBsaWNhc2V0X2ZvcmVhY2gocmVwbGljYSkgewo+PiA+IHN0cnVjdCBhcHBsaWVyICphcHBs aWVyID0gcmVwbGljYS0+YXBwbGllcjsKPj4gPiAtIGlmIChhcHBsaWVyID09IE5VTEwpCj4+ID4g KyAvKgo+PiA+ICsgKiBUaGUgZnVuY3Rpb24gaXMgY2FsbGVkIHJpZ2h0IGFmdGVyCj4+ID4gKyAq IGJveF9zeW5jX3JlcGxpY2F0aW9uKCksIHdoaWNoIGluIHR1cm4gY2FsbHMKPj4gPiArICogcmVw bGljYXNldF9jb25uZWN0KCksIHdoaWNoIGVuc3VyZXMgdGhhdAo+PiA+ICsgKiBhcHBsaWVycyBh cmUgZWl0aGVyIHN0b3BwZWQgKEFQUExJRVIgT0ZGKSBvcgo+PiA+ICsgKiBjb25uZWN0ZWQuCj4+ ID4gKyAqIEFsc28gaWdub3JlIHNlbGYsIGFzIHNlbGYgYXBwbGllciBtaWdodCBub3QKPj4gPiAr ICogaGF2ZSBkaXNjb25uZWN0ZWQgeWV0Lgo+PiA+ICsgKi8KPj4gPiArIGlmIChhcHBsaWVyID09 IE5VTEwgfHwgYXBwbGllci0+c3RhdGUgPT0gQVBQTElFUl9PRkYgfHwKPj4gPiArIHR0X3V1aWRf aXNfZXF1YWwoJnJlcGxpY2EtPnV1aWQsICZJTlNUQU5DRV9VVUlEKSkKPj4gPiBjb250aW51ZTsK Pj4gPiArIGFzc2VydChhcHBsaWVyLT5zdGF0ZSA9PSBBUFBMSUVSX0NPTk5FQ1RFRCk7Cj4+ID4K Pj4KPj4gQ291bGQgeW91IHBsZWFzZSB1bmRlcnN0YW5kIG9uZSB0aGluZz8gQmVsb3cgSSBzZWUg dGhpczoKPj4KPj4gPiBjb25zdCBzdHJ1Y3QgYmFsbG90ICpiYWxsb3QgPSAmYXBwbGllci0+YmFs bG90Owo+PiA+IGlmICh2Y2xvY2tfY29tcGFyZSgmYmFsbG90LT5nY192Y2xvY2ssCj4+ID4gJnJl cGxpY2FzZXQudmNsb2NrKSA8PSAwKSB7Cj4+ID4gLyoKPj4gPiAqIFRoZXJlJ3MgYXQgbGVhc3Qg b25lIG1hc3RlciB0aGF0IHN0aWxsIHN0b3Jlcwo+PiA+ICogV0FMcyBuZWVkZWQgYnkgdGhpcyBp bnN0YW5jZS4gUHJvY2VlZCB0byBsb2NhbAo+PiA+ICogcmVjb3ZlcnkuCj4+ID4gKi8KPj4gPiBy ZXR1cm4gZmFsc2U7Cj4+ID4gfQo+Pgo+PiBRdWVzdGlvbiBpcyB3aHkgZG8gd2UgbmVlZCByZWJv b3RzdHJhcCBpZiBzb21lIHJlbW90ZSBub2RlJ3MKPj4gdmNsb2NrIGlzIGJpZ2dlciB0aGFuIG91 cnM/IEl0IGRvZXMgbm90IG1lYW4gYW55dGhpbmcuIEl0IGRvZXNuJ3QKPj4gc2F5IHdoZXRoZXIg dGhhdCByZW1vdGUgaW5zdGFuY2Ugc3RpbGwga2VlcHMgYW55IHhsb2dzLiBBbGwgaXQKPj4gdGVs bHMgaXMgdGhhdCB0aGUgcmVtb3RlIGluc3RhbmNlIGNvbW1pdHRlZCBzb21lIG1vcmUgZGF0YSBz aW5jZQo+PiBvdXIgcmVzdGFydC4KPj4KPj4gwqAKPj4gSW4gdGhlIHBpZWNlIGFib3ZlIHdlIGNo ZWNrIGZvciBtYXN0ZXLigJlzIGdjIHZjbG9jaywgd2hpY2ggaXMgdmNsb2NrIG9mIHRoZQo+PiBv bGRlc3QgV0FMIHRoZSBpbnN0YW5jZSBzdGlsbCBoYXMuIElmIG1hc3RlcuKAmXMgZ2MgdmNsb2Nr IGlzIGxlc3MgdGhhbiBvdXIgdmNsb2NrLAo+PiBubyByZWJvb3RzdHJhcCBpcyBuZWVkZWQuIE1h c3RlcuKAmWxsIGJlIGFibGUgdG8gc2VuZCB1cyBhbGwgdGhlIGZyZXNoIGRhdGEuCj4+IMKgTGF0 ZXIgd2UgY2hlY2sgd2hldGhlciBvdXIgdmNsb2NrIGlzIGdyZWF0ZXLCoG9yIGluY29tcGF0aWJs ZSB3aXRoIHRoZSByZW1vdGUKPj4gaW5zdGFuY2XigJlzIHZjbG9jay4gSWYgaXQgaXMsIHdlIGNh bm5vdCByZWJvb3RzdHJhcCBmcm9tIHRoZSBpbnN0YW5jZSwgc2luY2Ugd2UgaGF2ZQo+PiBzb21l IHJvd3MsIHRoYXQgdGhlIGluc3RhbmNlIGRvZXNu4oCZdCBoYXZlLgo+VGhhbmtzIGZvciB0aGUg ZXhwbGFuYXRpb24uIFRoZW4gSSB3b3VsZCBjaGFuZ2UgdGhlIGNvbW1lbnQgdG8gc2F5Cj5tb3Jl IGFib3V0IHRoZSBpc3N1ZS4gQ3VycmVudGx5IGl0IHNheXMgYWJvdXQgc2VsZiBvbmx5Cj4KPsKg wqDCoMKgIkFsc28gaWdub3JlIHNlbGYsIGFzIHNlbGYgYXBwbGllciBtaWdodCBub3QgaGF2ZSBk aXNjb25uZWN0ZWQgeWV0LiIKPgo+VGhpcyBkb2VzIG5vdCBsb29rIHJlbGF0ZWQgdG8gdGhlIGFj dHVhbCBwcm9ibGVtLCB0aGF0IHdlIGp1c3Qgc2hvdWxkCj5ub3QgbG9vayBhdCBvdXIgZ2MgdmNs b2NrLgrCoApPaywgSSBjaGFuZ2VkIHRoZSBjb21tZW50LiBUaGUgZGlmZiBpcyBiZWxvdy4KwqAK Pgo+QWxzbyB3aHkgZG8gd2UgbmVlZCAnYXBwbGllci0+c3RhdGUgPT0gQVBQTElFUl9PRkYnIGNo ZWNrPyBIb3cgaXMgaXQKPnJlbGF0ZWQgdG8gdGhlIGlzc3VlPyBJZiB0aGlzIGlzIGEgc2VwYXJh dGUgYnVnLCBpcyBpdCBwb3NzaWJsZSB0bwo+bWFrZSBpdCBhIHNlcGFyYXRlIHBhdGNoPwrCoApX ZSBuZWVkbuKAmXQgdGhpcyBjaGVjaywgYWZ0ZXIgYWxsLiByZXBsaWNhc2V0X3VwZGF0ZSgpIGF0 IHRoZSBlbmQgb2YgcmVwbGljYXNldF9jb25uZWN0KCkKZW5zdXJlcyB0aGF0IGFsbCB0aGUgcmVw bGljYXMgaW4gdGhlIHJlcGxpY2FzZXQgaGF2ZSBhcHBsaWVycyBpbiBzdGF0ZcKgQVBQTElFUl9D T05ORUNURUQuClRoYW5rcyBmb3IgcG9pbnRpbmcgdGhpcyBvdXQuCsKgCmRpZmYgLS1naXQgYS9z cmMvYm94L3JlcGxpY2F0aW9uLmNjIGIvc3JjL2JveC9yZXBsaWNhdGlvbi5jYwppbmRleCAwMWVk YzBmYjIuLjEzNDVmMTg5YiAxMDA2NDQKLS0tIGEvc3JjL2JveC9yZXBsaWNhdGlvbi5jYworKysg Yi9zcmMvYm94L3JlcGxpY2F0aW9uLmNjCkBAIC03NjksMTggKzc2OSwxMiBAQCByZXBsaWNhc2V0 X25lZWRzX3Jlam9pbihzdHJ1Y3QgcmVwbGljYSAqKm1hc3RlcikKwqAgcmVwbGljYXNldF9mb3Jl YWNoKHJlcGxpY2EpIHsKwqAgc3RydWN0IGFwcGxpZXIgKmFwcGxpZXIgPSByZXBsaWNhLT5hcHBs aWVyOwrCoCAvKgotICogVGhlIGZ1bmN0aW9uIGlzIGNhbGxlZCByaWdodCBhZnRlcgotICogYm94 X3N5bmNfcmVwbGljYXRpb24oKSwgd2hpY2ggaW4gdHVybiBjYWxscwotICogcmVwbGljYXNldF9j b25uZWN0KCksIHdoaWNoIGVuc3VyZXMgdGhhdAotICogYXBwbGllcnMgYXJlIGVpdGhlciBzdG9w cGVkIChBUFBMSUVSIE9GRikgb3IKLSAqIGNvbm5lY3RlZC4KLSAqIEFsc28gaWdub3JlIHNlbGYs IGFzIHNlbGYgYXBwbGllciBtaWdodCBub3QKLSAqIGhhdmUgZGlzY29ubmVjdGVkIHlldC4KKyAq IFNraXAgdGhlIGxvY2FsIGluc3RhbmNlLCB3ZSBzaG91bGRuJ3QgcGVyZm9ybSBhCisgKiBjaGVj ayBhZ2FpbnN0IG91ciBvd24gZ2MgdmNsb2NrLgrCoCAqLwotIGlmIChhcHBsaWVyID09IE5VTEwg fHwgYXBwbGllci0+c3RhdGUgPT0gQVBQTElFUl9PRkYgfHwKLSDCoCDCoCB0dF91dWlkX2lzX2Vx dWFsKCZyZXBsaWNhLT51dWlkLCAmSU5TVEFOQ0VfVVVJRCkpCisgaWYgKGFwcGxpZXIgPT0gTlVM TCB8fCB0dF91dWlkX2lzX2VxdWFsKCZyZXBsaWNhLT51dWlkLAorICZJTlNUQU5DRV9VVUlEKSkK wqAgY29udGludWU7Ci0gYXNzZXJ0KGFwcGxpZXItPnN0YXRlID09IEFQUExJRVJfQ09OTkVDVEVE KTsKwqAKwqAgY29uc3Qgc3RydWN0IGJhbGxvdCAqYmFsbG90ID0gJmFwcGxpZXItPmJhbGxvdDsK wqAKLS0KU2VyZ2XCoFBldHJlbmtvCsKg ----ALT--fC6eF343D92eaDaC6C9f86e8B7eAe9261583169513 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+Jm5ic3A7PC9kaXY+PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlci1s ZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGluZzowIDAgMCAxMHB4OyI+ 0KHRg9Cx0LHQvtGC0LAsIDI5INGE0LXQstGA0LDQu9GPIDIwMjAsIDE3OjE5ICswMzowMCDQvtGC IFZsYWRpc2xhdiBTaHBpbGV2b3kgJmx0O3Yuc2hwaWxldm95QHRhcmFudG9vbC5vcmcmZ3Q7Ojxi cj4mbmJzcDs8ZGl2IGlkPSIiPjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+ PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjxkaXY+PGRpdiBpZD0ic3R5bGVfMTU4Mjk4 NTk3NDExNzcwODAwODdfQk9EWSI+T24gMjkvMDIvMjAyMCAxMDo1MiwgU2VyZ2UgUGV0cmVua28g d3JvdGU6PGRpdiBjbGFzcz0ibWFpbC1xdW90ZS1jb2xsYXBzZSI+Jmd0OyBIaSEmbmJzcDs8YnI+ Jmd0Ozxicj4mZ3Q7INCh0YPQsdCx0L7RgtCwLCAyOSDRhNC10LLRgNCw0LvRjyAyMDIwLCAyOjQz ICswMzowMCDQvtGCIFZsYWRpc2xhdiBTaHBpbGV2b3kgJmx0OzxhIGhyZWY9Ii9jb21wb3NlP1Rv PXYuc2hwaWxldm95QHRhcmFudG9vbC5vcmciPnYuc2hwaWxldm95QHRhcmFudG9vbC5vcmc8L2E+ Jmd0Ozo8YnI+Jmd0OyAmbmJzcDs8YnI+Jmd0OyBUaGFua3MgZm9yIHRoZSBwYXRjaCE8YnI+Jmd0 Ozxicj4mZ3Q7IE9uIDI4LzAyLzIwMjAgMTg6MDEsIFNlcmdlIFBldHJlbmtvIHdyb3RlOjxicj4m Z3Q7ICZndDsgV2hlbiBjaGVja2luZyB3aGV0ZXIgcmVqb2luIGlzIG5lZWRlZCwgcmVwbGljYSBs b29wcyB0aHJvdWdoIGFsbCB0aGU8YnI+Jmd0OyAmZ3Q7IGluc3RhbmNlcyBpbiBib3guY2ZnLnJl cGxpY2F0aW9uLCB3aGljaCBtYWtlcyBpdCBiZWxpZXZlIHRoYXQgdGhlcmUgaXMgYTxicj4mZ3Q7 ICZndDsgbWFzdGVyIGhvbGRpbmcgZmlsZXMsIG5lZWRlZCBieSBpdCwgc2luY2UgaXQgYWNjb3Vu dHMgaXRzZWxmIGp1c3QgbGlrZTxicj4mZ3Q7ICZndDsgYWxsIG90aGVyIGluc3RhbmNlcy48YnI+ Jmd0OyAmZ3Q7IFNvIG1ha2UgcmVwbGljYSBza2lwIGl0c2VsZiB3aGVuIGZpbmRpbmcgYW4gaW5z dGFuY2Ugd2hpY2ggaG9sZHMgZmlsZXM8YnI+Jmd0OyAmZ3Q7IG5lZWRlZCBieSBpdCwgYW5kIGRl dGVybWluaW5nIHdoZXRoZXIgcmVib290c3RyYXAgaXMgbmVlZGVkLjxicj4mZ3Q7ICZndDs8YnI+ Jmd0OyAmZ3Q7IFdlIGFscmVhZHkgaGF2ZSBhIHdvcmtpbmcgdGVzdCBmb3IgdGhlIGlzc3VlLCBp dCBtaXNzZWQgdGhlIGlzc3VlIGR1ZSB0bzxicj4mZ3Q7ICZndDsgcmVwbGljYS5sdWEgcmVwbGlj YXRpb24gc2V0dGluZ3MuIEZpeCByZXBsaWNhLmx1YSB0byBvcHRpb25hbGx5IGluY2x1ZGU8YnI+ Jmd0OyAmZ3Q7IGl0c2VsZiBpbiBib3guY2ZnLnJlcGxpY2F0aW9uLCBzbyB0aGF0IHRoZSBjb3Jy ZXNwb25kaW5nIHRlc3Qgd29ya3M8YnI+Jmd0OyAmZ3Q7IGNvcnJlY3RseS48YnI+Jmd0OyAmZ3Q7 PGJyPiZndDsgJmd0OyBDbG9zZXMgIzQ3NTk8YnI+Jmd0OyAmZ3Q7IC0tLTxicj4mZ3Q7ICZndDsg PGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzQ3 NTkiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9v bC9pc3N1ZXMvNDc1OTwvYT48YnI+Jmd0OyAmZ3Q7IDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNv bS90YXJhbnRvb2wvdGFyYW50b29sL3RyZWUvc3AvZ2gtNDc1OS1yZWJvb3RzdHJhcC1maXgiIHRh cmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC90cmVl L3NwL2doLTQ3NTktcmVib290c3RyYXAtZml4PC9hPjxicj4mZ3Q7ICZndDs8YnI+Jmd0OyAmZ3Q7 IEBDaGFuZ2VMb2c8YnI+Jmd0OyAmZ3Q7IC0gZml4IHJlYm9vdHN0cmFwIHByb2NlZHVyZSBub3Qg d29ya2luZyBpbiBjYXNlIHJlcGxpY2EgaXRzZWxmPGJyPiZndDsgJmd0OyBpcyBsaXN0ZWQgaW4g YGJveC5jZmcucmVwbGljYXRpb25gPGJyPiZndDsgJmd0Ozxicj4mZ3Q7ICZndDsgc3JjL2JveC9y ZXBsaWNhdGlvbi5jYyB8IDEzICsrKysrKysrKysrKy08YnI+Jmd0OyAmZ3Q7IHRlc3QvcmVwbGlj YXRpb24vcmVwbGljYS5sdWEgfCAxMSArKysrKysrKysrLTxicj4mZ3Q7ICZndDsgdGVzdC9yZXBs aWNhdGlvbi9yZXBsaWNhX3Jlam9pbi5yZXN1bHQgfCAxMiArKysrKystLS0tLS08YnI+Jmd0OyAm Z3Q7IHRlc3QvcmVwbGljYXRpb24vcmVwbGljYV9yZWpvaW4udGVzdC5sdWEgfCAxMiArKysrKyst LS0tLS08YnI+Jmd0OyAmZ3Q7IDQgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMTQg ZGVsZXRpb25zKC0pPGJyPiZndDsgJmd0Ozxicj4mZ3Q7ICZndDsgZGlmZiAtLWdpdCBhL3NyYy9i b3gvcmVwbGljYXRpb24uY2MgYi9zcmMvYm94L3JlcGxpY2F0aW9uLmNjPGJyPiZndDsgJmd0OyBp bmRleCBlN2JmYTIyYWIuLjAxZWRjMGZiMiAxMDA2NDQ8YnI+Jmd0OyAmZ3Q7IC0tLSBhL3NyYy9i b3gvcmVwbGljYXRpb24uY2M8YnI+Jmd0OyAmZ3Q7ICsrKyBiL3NyYy9ib3gvcmVwbGljYXRpb24u Y2M8YnI+Jmd0OyAmZ3Q7IEBAIC03NjgsOCArNzY4LDE5IEBAIHJlcGxpY2FzZXRfbmVlZHNfcmVq b2luKHN0cnVjdCByZXBsaWNhICoqbWFzdGVyKTxicj4mZ3Q7ICZndDsgc3RydWN0IHJlcGxpY2Eg KmxlYWRlciA9IE5VTEw7PGJyPiZndDsgJmd0OyByZXBsaWNhc2V0X2ZvcmVhY2gocmVwbGljYSkg ezxicj4mZ3Q7ICZndDsgc3RydWN0IGFwcGxpZXIgKmFwcGxpZXIgPSByZXBsaWNhLSZndDthcHBs aWVyOzxicj4mZ3Q7ICZndDsgLSBpZiAoYXBwbGllciA9PSBOVUxMKTxicj4mZ3Q7ICZndDsgKyAv Kjxicj4mZ3Q7ICZndDsgKyAqIFRoZSBmdW5jdGlvbiBpcyBjYWxsZWQgcmlnaHQgYWZ0ZXI8YnI+ Jmd0OyAmZ3Q7ICsgKiBib3hfc3luY19yZXBsaWNhdGlvbigpLCB3aGljaCBpbiB0dXJuIGNhbGxz PGJyPiZndDsgJmd0OyArICogcmVwbGljYXNldF9jb25uZWN0KCksIHdoaWNoIGVuc3VyZXMgdGhh dDxicj4mZ3Q7ICZndDsgKyAqIGFwcGxpZXJzIGFyZSBlaXRoZXIgc3RvcHBlZCAoQVBQTElFUiBP RkYpIG9yPGJyPiZndDsgJmd0OyArICogY29ubmVjdGVkLjxicj4mZ3Q7ICZndDsgKyAqIEFsc28g aWdub3JlIHNlbGYsIGFzIHNlbGYgYXBwbGllciBtaWdodCBub3Q8YnI+Jmd0OyAmZ3Q7ICsgKiBo YXZlIGRpc2Nvbm5lY3RlZCB5ZXQuPGJyPiZndDsgJmd0OyArICovPGJyPiZndDsgJmd0OyArIGlm IChhcHBsaWVyID09IE5VTEwgfHwgYXBwbGllci0mZ3Q7c3RhdGUgPT0gQVBQTElFUl9PRkYgfHw8 YnI+Jmd0OyAmZ3Q7ICsgdHRfdXVpZF9pc19lcXVhbCgmYW1wO3JlcGxpY2EtJmd0O3V1aWQsICZh bXA7SU5TVEFOQ0VfVVVJRCkpPGJyPiZndDsgJmd0OyBjb250aW51ZTs8YnI+Jmd0OyAmZ3Q7ICsg YXNzZXJ0KGFwcGxpZXItJmd0O3N0YXRlID09IEFQUExJRVJfQ09OTkVDVEVEKTs8YnI+Jmd0OyAm Z3Q7PGJyPiZndDs8YnI+Jmd0OyBDb3VsZCB5b3UgcGxlYXNlIHVuZGVyc3RhbmQgb25lIHRoaW5n PyBCZWxvdyBJIHNlZSB0aGlzOjxicj4mZ3Q7PGJyPiZndDsgJmd0OyBjb25zdCBzdHJ1Y3QgYmFs bG90ICpiYWxsb3QgPSAmYW1wO2FwcGxpZXItJmd0O2JhbGxvdDs8YnI+Jmd0OyAmZ3Q7IGlmICh2 Y2xvY2tfY29tcGFyZSgmYW1wO2JhbGxvdC0mZ3Q7Z2NfdmNsb2NrLDxicj4mZ3Q7ICZndDsgJmFt cDtyZXBsaWNhc2V0LnZjbG9jaykgJmx0Oz0gMCkgezxicj4mZ3Q7ICZndDsgLyo8YnI+Jmd0OyAm Z3Q7ICogVGhlcmUncyBhdCBsZWFzdCBvbmUgbWFzdGVyIHRoYXQgc3RpbGwgc3RvcmVzPGJyPiZn dDsgJmd0OyAqIFdBTHMgbmVlZGVkIGJ5IHRoaXMgaW5zdGFuY2UuIFByb2NlZWQgdG8gbG9jYWw8 YnI+Jmd0OyAmZ3Q7ICogcmVjb3ZlcnkuPGJyPiZndDsgJmd0OyAqLzxicj4mZ3Q7ICZndDsgcmV0 dXJuIGZhbHNlOzxicj4mZ3Q7ICZndDsgfTxicj4mZ3Q7PGJyPiZndDsgUXVlc3Rpb24gaXMgd2h5 IGRvIHdlIG5lZWQgcmVib290c3RyYXAgaWYgc29tZSByZW1vdGUgbm9kZSdzPGJyPiZndDsgdmNs b2NrIGlzIGJpZ2dlciB0aGFuIG91cnM/IEl0IGRvZXMgbm90IG1lYW4gYW55dGhpbmcuIEl0IGRv ZXNuJ3Q8YnI+Jmd0OyBzYXkgd2hldGhlciB0aGF0IHJlbW90ZSBpbnN0YW5jZSBzdGlsbCBrZWVw cyBhbnkgeGxvZ3MuIEFsbCBpdDxicj4mZ3Q7IHRlbGxzIGlzIHRoYXQgdGhlIHJlbW90ZSBpbnN0 YW5jZSBjb21taXR0ZWQgc29tZSBtb3JlIGRhdGEgc2luY2U8YnI+Jmd0OyBvdXIgcmVzdGFydC48 YnI+Jmd0Ozxicj4mZ3Q7ICZuYnNwOzxicj4mZ3Q7IEluIHRoZSBwaWVjZSBhYm92ZSB3ZSBjaGVj ayBmb3IgbWFzdGVy4oCZcyBnYyB2Y2xvY2ssIHdoaWNoIGlzIHZjbG9jayBvZiB0aGU8YnI+Jmd0 OyBvbGRlc3QgV0FMIHRoZSBpbnN0YW5jZSBzdGlsbCBoYXMuIElmIG1hc3RlcuKAmXMgZ2MgdmNs b2NrIGlzIGxlc3MgdGhhbiBvdXIgdmNsb2NrLDxicj4mZ3Q7IG5vIHJlYm9vdHN0cmFwIGlzIG5l ZWRlZC4gTWFzdGVy4oCZbGwgYmUgYWJsZSB0byBzZW5kIHVzIGFsbCB0aGUgZnJlc2ggZGF0YS48 YnI+Jmd0OyAmbmJzcDtMYXRlciB3ZSBjaGVjayB3aGV0aGVyIG91ciB2Y2xvY2sgaXMgZ3JlYXRl ciZuYnNwO29yIGluY29tcGF0aWJsZSB3aXRoIHRoZSByZW1vdGU8YnI+Jmd0OyBpbnN0YW5jZeKA mXMgdmNsb2NrLiBJZiBpdCBpcywgd2UgY2Fubm90IHJlYm9vdHN0cmFwIGZyb20gdGhlIGluc3Rh bmNlLCBzaW5jZSB3ZSBoYXZlPGJyPiZndDsgc29tZSByb3dzLCB0aGF0IHRoZSBpbnN0YW5jZSBk b2VzbuKAmXQgaGF2ZS48L2Rpdj48YnI+VGhhbmtzIGZvciB0aGUgZXhwbGFuYXRpb24uIFRoZW4g SSB3b3VsZCBjaGFuZ2UgdGhlIGNvbW1lbnQgdG8gc2F5PGJyPm1vcmUgYWJvdXQgdGhlIGlzc3Vl LiBDdXJyZW50bHkgaXQgc2F5cyBhYm91dCBzZWxmIG9ubHk8YnI+PGJyPiZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyJBbHNvIGlnbm9yZSBzZWxmLCBhcyBzZWxmIGFwcGxpZXIgbWlnaHQgbm90IGhh dmUgZGlzY29ubmVjdGVkIHlldC4iPGJyPjxicj5UaGlzIGRvZXMgbm90IGxvb2sgcmVsYXRlZCB0 byB0aGUgYWN0dWFsIHByb2JsZW0sIHRoYXQgd2UganVzdCBzaG91bGQ8YnI+bm90IGxvb2sgYXQg b3VyIGdjIHZjbG9jay48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj4m bmJzcDs8L2Rpdj48ZGl2Pk9rLCBJIGNoYW5nZWQgdGhlIGNvbW1lbnQuIFRoZSBkaWZmIGlzIGJl bG93LjwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlci1sZWZ0 OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGluZzowIDAgMCAxMHB4OyI+PGRp dj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIganMtcmVhZG1zZy1tc2ciPjxkaXY+PGRpdj48YnI+QWxz byB3aHkgZG8gd2UgbmVlZCAnYXBwbGllci0mZ3Q7c3RhdGUgPT0gQVBQTElFUl9PRkYnIGNoZWNr PyBIb3cgaXMgaXQ8YnI+cmVsYXRlZCB0byB0aGUgaXNzdWU/IElmIHRoaXMgaXMgYSBzZXBhcmF0 ZSBidWcsIGlzIGl0IHBvc3NpYmxlIHRvPGJyPm1ha2UgaXQgYSBzZXBhcmF0ZSBwYXRjaD88L2Rp dj48L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2Pldl IG5lZWRu4oCZdCB0aGlzIGNoZWNrLCBhZnRlciBhbGwuIHJlcGxpY2FzZXRfdXBkYXRlKCkgYXQg dGhlIGVuZCBvZiByZXBsaWNhc2V0X2Nvbm5lY3QoKTwvZGl2PjxkaXY+ZW5zdXJlcyB0aGF0IGFs bCB0aGUgcmVwbGljYXMgaW4gdGhlIHJlcGxpY2FzZXQgaGF2ZSBhcHBsaWVycyBpbiBzdGF0ZSZu YnNwO0FQUExJRVJfQ09OTkVDVEVELjwvZGl2PjxkaXY+VGhhbmtzIGZvciBwb2ludGluZyB0aGlz IG91dC48L2Rpdj48ZGl2PiZuYnNwOzwvZGl2PjxkaXY+PHA+ZGlmZiAtLWdpdCBhL3NyYy9ib3gv cmVwbGljYXRpb24uY2MgYi9zcmMvYm94L3JlcGxpY2F0aW9uLmNjPC9wPjxwPmluZGV4IDAxZWRj MGZiMi4uMTM0NWYxODliIDEwMDY0NDwvcD48cD4tLS0gYS9zcmMvYm94L3JlcGxpY2F0aW9uLmNj PC9wPjxwPisrKyBiL3NyYy9ib3gvcmVwbGljYXRpb24uY2M8L3A+PHA+QEAgLTc2OSwxOCArNzY5 LDEyIEBAIHJlcGxpY2FzZXRfbmVlZHNfcmVqb2luKHN0cnVjdCByZXBsaWNhICoqbWFzdGVyKTwv cD48cD4mbmJzcDsgcmVwbGljYXNldF9mb3JlYWNoKHJlcGxpY2EpIHs8L3A+PHA+Jm5ic3A7IHN0 cnVjdCBhcHBsaWVyICphcHBsaWVyID0gcmVwbGljYS0mZ3Q7YXBwbGllcjs8L3A+PHA+Jm5ic3A7 IC8qPC9wPjxwPi0gKiBUaGUgZnVuY3Rpb24gaXMgY2FsbGVkIHJpZ2h0IGFmdGVyPC9wPjxwPi0g KiBib3hfc3luY19yZXBsaWNhdGlvbigpLCB3aGljaCBpbiB0dXJuIGNhbGxzPC9wPjxwPi0gKiBy ZXBsaWNhc2V0X2Nvbm5lY3QoKSwgd2hpY2ggZW5zdXJlcyB0aGF0PC9wPjxwPi0gKiBhcHBsaWVy cyBhcmUgZWl0aGVyIHN0b3BwZWQgKEFQUExJRVIgT0ZGKSBvcjwvcD48cD4tICogY29ubmVjdGVk LjwvcD48cD4tICogQWxzbyBpZ25vcmUgc2VsZiwgYXMgc2VsZiBhcHBsaWVyIG1pZ2h0IG5vdDwv cD48cD4tICogaGF2ZSBkaXNjb25uZWN0ZWQgeWV0LjwvcD48cD4rICogU2tpcCB0aGUgbG9jYWwg aW5zdGFuY2UsIHdlIHNob3VsZG4ndCBwZXJmb3JtIGE8L3A+PHA+KyAqIGNoZWNrIGFnYWluc3Qg b3VyIG93biBnYyB2Y2xvY2suPC9wPjxwPiZuYnNwOyAqLzwvcD48cD4tIGlmIChhcHBsaWVyID09 IE5VTEwgfHwgYXBwbGllci0mZ3Q7c3RhdGUgPT0gQVBQTElFUl9PRkYgfHw8L3A+PHA+LSAmbmJz cDsgJm5ic3A7IHR0X3V1aWRfaXNfZXF1YWwoJmFtcDtyZXBsaWNhLSZndDt1dWlkLCAmYW1wO0lO U1RBTkNFX1VVSUQpKTwvcD48cD4rIGlmIChhcHBsaWVyID09IE5VTEwgfHwgdHRfdXVpZF9pc19l cXVhbCgmYW1wO3JlcGxpY2EtJmd0O3V1aWQsPC9wPjxwPisgJmFtcDtJTlNUQU5DRV9VVUlEKSk8 L3A+PHA+Jm5ic3A7IGNvbnRpbnVlOzwvcD48cD4tIGFzc2VydChhcHBsaWVyLSZndDtzdGF0ZSA9 PSBBUFBMSUVSX0NPTk5FQ1RFRCk7PC9wPjxwPiZuYnNwOzwvcD48cD4mbmJzcDsgY29uc3Qgc3Ry dWN0IGJhbGxvdCAqYmFsbG90ID0gJmFtcDthcHBsaWVyLSZndDtiYWxsb3Q7PC9wPjwvZGl2Pjxk aXY+Jm5ic3A7PC9kaXY+PGRpdj4tLTxicj5TZXJnZSZuYnNwO1BldHJlbmtvPC9kaXY+PGRpdj4m bmJzcDs8L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--fC6eF343D92eaDaC6C9f86e8B7eAe9261583169513--