From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f463.i.mail.ru (f463.i.mail.ru [185.5.136.196]) (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 DA4E3469719 for ; Fri, 14 Feb 2020 22:57:20 +0300 (MSK) From: =?UTF-8?B?SWx5YSBLb3NhcmV2?= MIME-Version: 1.0 Date: Fri, 14 Feb 2020 22:57:19 +0300 Reply-To: =?UTF-8?B?SWx5YSBLb3NhcmV2?= Message-ID: <1581710239.998022788@f463.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--9e17A6e160e654b30631Ae29Dd23F3731581710239" In-Reply-To: <0b514379-806d-c66c-8c68-8780572f16ff@tarantool.org> References: <20200121114253.GH82780@tarantool.org> <0b514379-806d-c66c-8c68-8780572f16ff@tarantool.org> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_v3_2/2=5D_memtx=3A_allow_q?= =?utf-8?q?uota_overuse_for_truncation_and_deletion?= 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--9e17A6e160e654b30631Ae29Dd23F3731581710239 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 ClRoYW5rcyBmb3IgeW91ciByZXZpZXchCgpTZW50wqB0YXJhbnRvb2wvc21hbGwgcGF0Y2ggYW5k wqB2NCBvZiB0aGlzIHBhdGNoc2V0IGNvbnNpZGVyaW5nIHRoZQpkcmF3YmFja3MuIAo+0JLRgtC+ 0YDQvdC40LosIDIxINGP0L3QstCw0YDRjyAyMDIwLCAyMzo1OSArMDM6MDAg0L7RgiBWbGFkaXNs YXYgU2hwaWxldm95IDx2LnNocGlsZXZveUB0YXJhbnRvb2wub3JnPjoKPsKgCj5UaGFua3MgZm9y IHRoZSBwYXRjaCEKPgo+SSBhbnN3ZXIgc29tZSBvZiBOaWtpdGEncyBxdWVzdGlvbnMgYmVsb3cg YW5kCj5wcm92aWRlIG15IG93biByZXZpZXcgZnVydGhlci4KPgo+U2VlIDcgY29tbWVudHMgYmVs b3cuCj4KPk9uIDIxLzAxLzIwMjAgMTI6NDIsIE5pa2l0YSBQZXR0aWsgd3JvdGU6Cj4+IE9uIDIw IEphbiAyMToxMywgSWx5YSBLb3NhcmV2IHdyb3RlOgo+Pj4gZGlmZiAtLWdpdCBhL3NyYy9ib3gv Ym94LmNjIGIvc3JjL2JveC9ib3guY2MKPj4+IGluZGV4IDFiMmIyN2Q2MS4uNjc4YzlmZmUzIDEw MDY0NAo+Pj4gLS0tIGEvc3JjL2JveC9ib3guY2MKPj4+ICsrKyBiL3NyYy9ib3gvYm94LmNjCj4+ PiBAQCAtMTMyMSw5ICsxMzIxLDE0IEBAIHNwYWNlX3RydW5jYXRlKHN0cnVjdCBzcGFjZSAqc3Bh Y2UpCj4+PiBvcHNfYnVmX2VuZCA9IG1wX2VuY29kZV91aW50KG9wc19idWZfZW5kLCAxKTsKPj4+ IGFzc2VydChvcHNfYnVmX2VuZCA8IGJ1ZiArIGJ1Zl9zaXplKTsKPj4+Cj4+PiArIHN0cnVjdCBz cGFjZSAqdHJ1bmNhdGVfc3BhY2UgPSBzcGFjZV9jYWNoZV9maW5kX3hjKEJPWF9UUlVOQ0FURV9J RCk7Cj4+PiArIG1lbXR4X2VuZ2luZV9zZXRfcXVvdGFfc3RyaWN0bmVzcyh0cnVuY2F0ZV9zcGFj ZS0+ZW5naW5lLCBmYWxzZSk7Cj4+Cj4+IEkgd291bGRuJ3QgY2FsbCBpdCBzdHJpY3RuZXNzLiBJ biBmYWN0IHlvdSBzaW1wbHkgdHVybiBxdW90YSBvbi9vZmYuCj4+IFNvIEknZCBiZXR0ZXIgY2Fs bCBpdCBxdW90YV9lbmFibGUvZGlzYWJsZS4KPj4KPj4gTml0OiBwbGVhc2UgYWNjb21wYW55IHlv dXIgY29kZSB3aXRoIChhdCBsZWFzdCBicmllZikgY29tbWVudHMuCj4KPjEuIE9uL29mZiBzb3Vu ZHMgZ29vZC4KPgo+Pj4gKwo+Pj4gaWYgKGJveF91cHNlcnQoQk9YX1RSVU5DQVRFX0lELCAwLCB0 dXBsZV9idWYsIHR1cGxlX2J1Zl9lbmQsCj4+PiBvcHNfYnVmLCBvcHNfYnVmX2VuZCwgMCwgTlVM TCkgIT0gMCkKPj4+IGRpYWdfcmFpc2UoKTsKPj4KPj4gSWYgYm94X3Vwc2VydCgpIGZhaWxzLCBx dW90YSBpcyBub3QgcmUtZW5hYmxlZCwgaXNuJ3QgaXQ/Cj4KPjIuIFRoaXMgaXMgYSBidWcsIHll cy4gQnV0IG5vdCB0aGUgb25seSBvbmUuIFRoZSB1cHNlcnQgd2lsbCB3cml0ZQo+dG8gV0FMIGFu ZCB5aWVsZC4gRHVyaW5nIHRoYXQgeWllbGQgdGhlIHF1b3RhIGlzIHR1cm5lZCBvZmYuIEFuZAo+ YW55IG90aGVyIGZpYmVyIGNhbiBpbnRlcmZlcmUgYW5kIG92ZXJ1c2UgdGhlIHF1b3RhIGV2ZW4g bW9yZSB3aXRoCj5zb21ldGhpbmcgbm90IHJlbGF0ZWQgdG8gZGVsZXRlL3RydW5jYXRlLgo+Cj5U aGlzIGNhbiBiZSBmaXhlZCwgZm9yIGV4YW1wbGUsIGJ5IG1ha2luZyB0eG5fYmVnaW4oKSArIHF1 b3RhX29mZigpICsKPnVwc2VydCgpICsgcXVvdGFfb24oKSArIGNvbW1pdCgpLiBBbHNvIHdlIGNv dWxkIGp1c3Qgbm90IHRvdWNoIHRydW5jYXRlCj5hbmQgZml4IGRlbGV0ZSgpIG9ubHkuIERlbGV0 ZSgpIGNhbiBuZXZlciBsZWF2ZSB0aGUgcXVvdGEgb3ZlcnVzZWQsCj5iZWNhdXNlIGlzIG5vdCBz dG9yZWQgYW55d2hlcmUgaW4gbWVtdHguIFdoaWxlIHRydW5jYXRlIGlzIHN0b3JlZCBpbgo+X3Ry dW5jYXRlLiBBbmQgZGVsZXRlIHdvdWxkIGJlIHN1ZmZpY2llbnQsIGJlY2F1c2UgY2FuIGJlIHVz ZWQgdG8gZnJlZQo+dGhlIHF1b3RhIGVub3VnaCBzbyBhcyB0byBjYWxsIHRydW5jYXRlKCkvd2hh dGV2ZXIgZWxzZSB0aGUgdXNlciB3YW50ZWQuCj4KPj4+ICsKPj4+ICsgbWVtdHhfZW5naW5lX3Nl dF9xdW90YV9zdHJpY3RuZXNzKHRydW5jYXRlX3NwYWNlLT5lbmdpbmUsIHRydWUpOwo+Pj4gfQo+ Pj4KPj4+IGludAo+Pj4gZGlmZiAtLWdpdCBhL3NyYy9ib3gvbWVtdHhfZW5naW5lLmMgYi9zcmMv Ym94L21lbXR4X2VuZ2luZS5jCj4+PiBpbmRleCA0ZGE4MDgyNGEuLmMxOTIwNWQzNCAxMDA2NDQK Pj4+IC0tLSBhL3NyYy9ib3gvbWVtdHhfZW5naW5lLmMKPj4+ICsrKyBiL3NyYy9ib3gvbWVtdHhf ZW5naW5lLmMKPj4+IEBAIC0xMDkwLDYgKzEwOTAsMTUgQEAgbWVtdHhfZW5naW5lX3NldF9tZW1v cnkoc3RydWN0IG1lbXR4X2VuZ2luZSAqbWVtdHgsIHNpemVfdCBzaXplKQo+Pj4gcmV0dXJuIDA7 Cj4+PiB9Cj4+Pgo+Pj4gK3ZvaWQKPj4+ICttZW10eF9lbmdpbmVfc2V0X3F1b3RhX3N0cmljdG5l c3Moc3RydWN0IGVuZ2luZSAqZW5naW5lLCBib29sIHN0cmljdCkKPj4+ICt7Cj4+PiArIGlmIChz dHJuY21wKGVuZ2luZS0+bmFtZSwgIm1lbXR4IiwgNSkgIT0gMCkKPj4+ICsgcmV0dXJuOwo+Pgo+ PiBtZW10eF8gcHJlZml4IGluIHRoZSBuYW1lIG9mIHRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0 IGl0IGlzIGNhbGxlZAo+PiBvbmx5IGZvciBtZW10eCBlbmdpbmUuIE5vdGUgdGhhdCB0aGVyZSdz IG5vIHN1Y2ggY2hlY2tzIGluIG1lbXR4X2VuZ2luZQo+PiBpbnRlcmZhY2UgZnVuY3Rpb25zLgo+ Pgo+Pj4gKyBzdHJ1Y3QgbWVtdHhfZW5naW5lICptZW10eCA9IChzdHJ1Y3QgbWVtdHhfZW5naW5l ICopZW5naW5lOwo+Pj4gKyBxdW90YV9zZXRfc3RyaWN0bmVzcygmbWVtdHgtPnF1b3RhLCBzdHJp Y3QpOwo+Pgo+PiBXaGF0IGhhcHBlbnMgaWYgcXVvdGEgaXMgdHVybmVkIG9uIGJhY2ssIGJ1dCBp dCBzdGlsbCBleGNlZWRzIGxpbWl0Pwo+PiBJIGd1ZXNzIGl0IHdvdWxkIHR1cm4gb3V0IHRvIGJl IGluIGluY29uc2lzdGVudCBzdGF0ZSwgc2luY2UgaW4KPj4gbm9ybWFsIG9wZXJhdGlvbiBtb2Rl IHRoZXJlJ3Mgbm8gY2hhbmNlIG9mIGJlaW5nIGJleW9uZCB0aGUgbGltaXQuCj4KPjMuIFRoYXQg cHJvYmxlbSBpcyBub3Qgc29sdmFibGUuIFRoZXJlIGlzIGFsd2F5cyBhIGNoYW5jZSwgdGhhdCB0 cnVuY2F0ZQo+d29uJ3QgZnJlZSBhbnkgbWVtb3J5IChmb3IgZXhhbXBsZSwgdGhlIHRhcmdldCBz cGFjZSBjb3VsZCBiZSBlbXB0eQo+YWxyZWFkeSkuIElmLCBhZnRlciB0aGUgcXVvdGEgaXMgYmFj ayBvbiwgaXQgYXBwZWFycyB0byBiZSBvdmVydXNlZCwgbm90aGluZwo+Y2FuIGJlIGRvbmUgd2l0 aCBpdC4gSXQgd2lsbCBzdGF5IG92ZXJ1c2VkIHVudGlsIG1vcmUgZGVsZXRlL3RydW5jYXRlIHdp bGwgYmUKPmV4ZWN1dGVkIGFuZCBhY3R1YWxseSBkZWxldGUgc29tZXRoaW5nLCBvciB0aGUgdXNl ciB3aWxsIGluY3JlYXNlIG1lbXR4IG1lbW9yeS4KPgo+PiBjb21taXQgNDVkOWY0OTFmOTFkOTNj ODgzNWNhNzI1YzIzNGY3MTEzYzBkMmFhOAo+PiBBdXRob3I6IElseWEgS29zYXJldiA8IGkua29z YXJldkB0YXJhbnRvb2wub3JnID4KPj4gRGF0ZTogTW9uIEphbiAyMCAyMDoyMTozNyAyMDIwICsw MzAwCj4+Cj4+IG1lbXR4OiBhbGxvdyBxdW90YSBvdmVydXNlIGZvciB0cnVuY2F0aW9uIGFuZCBk ZWxldGlvbgo+Pgo+Pgo+PiBUcnlpbmcgdG8gcGVyZm9ybSBzcGFjZTp0cnVuY2F0ZSgpIGFuZCBz cGFjZTpkZWxldGUoKSB3aGlsZSByZWFjaGluZwo+PiBtZW10eF9tZW1vcnkgbGltaXQgd2UgY291 bGQgZXhwZXJpZW5jZSBzbGFiIGFsbG9jYXRvciBmYWlsdXJlLiBUaGlzCj4+IGJlaGF2aW9yIHNl ZW1zIHRvIGJlIHF1aXRlIHN1cnByaXNpbmcgZm9yIHVzZXJzLiBOb3cgd2UgYXJlIGFsbG93aW5n Cj4+IHRvIG92ZXJ1c2UgbWVtdHggcXVvdGEgaWYgbmVlZGVkIGZvciB0cnVuY2F0aW9uIG9yIGRl bGV0aW9uLCB1c2luZyBmbGFnCj4+IGluIHN0cnVjdCBxdW90YS4gQWZ0ZXIgcGVyZm9ybWluZyB0 cnVuY2F0aW9uIG9yIGRlbGV0aW9uIHdlIHJlc2V0IHRoZQo+PiBmbGFnIHNvIHRoYXQgcXVvdGEg Y2FuIGJlIG92ZXJ1c2VkIGFueSBtb3JlLgo+Pgo+PiBDbG9zZXMgIzM4MDcKPj4KPj4gZGlmZiAt LWdpdCBhL3NyYy9ib3gvYm94LmNjIGIvc3JjL2JveC9ib3guY2MKPj4gaW5kZXggMWIyYjI3ZDYx Li42NzhjOWZmZTMgMTAwNjQ0Cj4+IC0tLSBhL3NyYy9ib3gvYm94LmNjCj4+ICsrKyBiL3NyYy9i b3gvYm94LmNjCj4+IEBAIC0xMzIxLDkgKzEzMjEsMTQgQEAgc3BhY2VfdHJ1bmNhdGUoc3RydWN0 IHNwYWNlICpzcGFjZSkKPj4gb3BzX2J1Zl9lbmQgPSBtcF9lbmNvZGVfdWludChvcHNfYnVmX2Vu ZCwgMSk7Cj4+IGFzc2VydChvcHNfYnVmX2VuZCA8IGJ1ZiArIGJ1Zl9zaXplKTsKPj4KPj4gKyBz dHJ1Y3Qgc3BhY2UgKnRydW5jYXRlX3NwYWNlID0gc3BhY2VfY2FjaGVfZmluZF94YyhCT1hfVFJV TkNBVEVfSUQpOwo+PiArIG1lbXR4X2VuZ2luZV9zZXRfcXVvdGFfc3RyaWN0bmVzcyh0cnVuY2F0 ZV9zcGFjZS0+ZW5naW5lLCBmYWxzZSk7Cj4+ICsKPj4gaWYgKGJveF91cHNlcnQoQk9YX1RSVU5D QVRFX0lELCAwLCB0dXBsZV9idWYsIHR1cGxlX2J1Zl9lbmQsCj4+IG9wc19idWYsIG9wc19idWZf ZW5kLCAwLCBOVUxMKSAhPSAwKQo+PiBkaWFnX3JhaXNlKCk7Cj4+ICsKPj4gKyBtZW10eF9lbmdp bmVfc2V0X3F1b3RhX3N0cmljdG5lc3ModHJ1bmNhdGVfc3BhY2UtPmVuZ2luZSwgdHJ1ZSk7Cj4+ IH0KPgo+NC4gSU1PLCB3ZSBzaG91bGQgbm90IHRvdWNoIHF1b3RhIGF0IGFsbCB1bnRpbCB3ZSBz ZWUgYSBub3QgZW1wdHkgZGlhZwo+d2l0aCBPT00gZXJyb3IgdHlwZSBpbiBpdC4gQm90aCBoZXJl IGFuZCBpbiBkZWxldGUuIFRydW5jYXRlIGlzIG5vdAo+YSBmcmVxdWVudCBvcGVyYXRpb24gKGFs dGhvdWdoIGl0IG1heSBiZSBpbiBzb21lIHJhcmUgaW5zdGFsbGF0aW9ucyksCj5idXQgZGVsZXRl IHN1cmVseSBzaG91bGQgbm90IHRvdWNoIHF1b3RhIGVhY2ggdGltZS4KPgo+PiBpbnQKPj4gZGlm ZiAtLWdpdCBhL3NyYy9ib3gvbWVtdHhfZW5naW5lLmMgYi9zcmMvYm94L21lbXR4X2VuZ2luZS5j Cj4+IGluZGV4IDRkYTgwODI0YS4uYzE5MjA1ZDM0IDEwMDY0NAo+PiAtLS0gYS9zcmMvYm94L21l bXR4X2VuZ2luZS5jCj4+ICsrKyBiL3NyYy9ib3gvbWVtdHhfZW5naW5lLmMKPj4gQEAgLTEwOTAs NiArMTA5MCwxNSBAQCBtZW10eF9lbmdpbmVfc2V0X21lbW9yeShzdHJ1Y3QgbWVtdHhfZW5naW5l ICptZW10eCwgc2l6ZV90IHNpemUpCj4+IHJldHVybiAwOwo+PiB9Cj4+Cj4+ICt2b2lkCj4+ICtt ZW10eF9lbmdpbmVfc2V0X3F1b3RhX3N0cmljdG5lc3Moc3RydWN0IGVuZ2luZSAqZW5naW5lLCBi b29sIHN0cmljdCkKPj4gK3sKPj4gKyBpZiAoc3RybmNtcChlbmdpbmUtPm5hbWUsICJtZW10eCIs IDUpICE9IDApCj4+ICsgcmV0dXJuOwo+Cj41LiBUaGF0IGNoZWNrIHNob3VsZCBub3QgZXhpc3Qu IEl0IHNsb3dzIGRvd24gdGhlIGNhbGxlciwgYW5kCj5pbiB1cHBlciBjb2RlIHlvdSBhbHdheXMg a25vdyB3aGV0aGVyIHlvdSB3b3JrIHdpdGggbWVtdHggb3IKPm5vdC4gU28gaXQgbWFrZXMgbm8g c2Vuc2UgdG8gY2hlY2sgaXQgaGVyZS4gVHJ1bmNhdGUgaXMKPmFsd2F5cyBhYm91dCBpbnNlcnRp b24gaW50byBhIG1lbXR4IHNwYWNlLiBEZWxldGUgdG91Y2hlcyBxb3V0YQo+aW5zaWRlIG1lbXR4 X3NwYWNlIGltcGxlbWVudGF0aW9uLiBObyBjaGFuY2VzIHRoYXQgYSB2aW55bCBzcGFjZQo+d291 bGQgY2FsbCB0aGlzIGZ1bmN0aW9uLgo+Cj4+ICsgc3RydWN0IG1lbXR4X2VuZ2luZSAqbWVtdHgg PSAoc3RydWN0IG1lbXR4X2VuZ2luZSAqKWVuZ2luZTsKPj4gKyBxdW90YV9zZXRfc3RyaWN0bmVz cygmbWVtdHgtPnF1b3RhLCBzdHJpY3QpOwo+PiArfQo+PiArCj4+IHZvaWQKPj4gbWVtdHhfZW5n aW5lX3NldF9tYXhfdHVwbGVfc2l6ZShzdHJ1Y3QgbWVtdHhfZW5naW5lICptZW10eCwgc2l6ZV90 IG1heF9zaXplKQo+PiB7Cj4+IGRpZmYgLS1naXQgYS9zcmMvbGliL3NtYWxsIGIvc3JjL2xpYi9z bWFsbAo+PiBpbmRleCA1MGNiNzg3NDMuLmJkY2Q1NjlmOSAxNjAwMDAKPj4gLS0tIGEvc3JjL2xp Yi9zbWFsbAo+PiArKysgYi9zcmMvbGliL3NtYWxsCj4+IEBAIC0xICsxIEBACj4+IC1TdWJwcm9q ZWN0IGNvbW1pdCA1MGNiNzg3NDM4MGIyODZmM2IzNGM4MjI5OWNmNWViODhiMGQwMDU5Cj4+ICtT dWJwcm9qZWN0IGNvbW1pdCBiZGNkNTY5ZjllZDc1M2VmYjgwNWY3MDgwODljYTg2ZTI1MjBhNDRm Cj4KPjYuIFBsZWFzZSwgd3JpdGUgdGVzdHMuIFRoZXkgc2hvdWxkIGluY2x1ZGUgdGhlIGJ1ZyB0 ZXN0IGl0c2VsZiwgYW5kCj5jb21wbGV4IHRoaW5ncyBzdWNoIGFzIHF1b3RhIG92ZXJ1c2Uga2Vw dCBpbiBjYXNlIHRydW5jYXRlKCkgZGlkbid0Cj5mcmVlIGFueXRoaW5nLiBZb3UgY2FuIHVzZSBt ZW10eF9tZW1vcnkgcGFyYW1ldGVyIHRvIG1ha2UgaXQgc21hbGwKPmVub3VnaCBzbyBhcyB0aGUg dGVzdCB3b3VsZCBub3QgdGFrZSBtdWNoIHRpbWUuCj4KPjcuIFNlZW1zIGxpa2UgeW91IGNoYW5n ZWQgc29tZXRoaW5nIGluIHNtYWxsLy4gWW91IG5lZWQgdG8gc2VuZCBpdCBhcwo+YSBzZXBhcmF0 ZSBwYXRjaCB3aXRoIGl0cyBvd24gdGVzdHMsIGFuZCBhbGwuIArCoArCoAotLQpJbHlhIEtvc2Fy ZXYKwqA= ----ALT--9e17A6e160e654b30631Ae29Dd23F3731581710239 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+VGhhbmtzIGZvciB5b3VyIHJldmlldyE8YnI+PGJyPlNlbnQmbmJz cDt0YXJhbnRvb2wvc21hbGwgcGF0Y2ggYW5kJm5ic3A7djQgb2YgdGhpcyBwYXRjaHNldCBjb25z aWRlcmluZyB0aGU8YnI+ZHJhd2JhY2tzLjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDox cHggc29saWQgIzA4NTdBNjsgbWFyZ2luOjEwcHg7IHBhZGRpbmc6MCAwIDAgMTBweDsiPtCS0YLQ vtGA0L3QuNC6LCAyMSDRj9C90LLQsNGA0Y8gMjAyMCwgMjM6NTkgKzAzOjAwINC+0YIgVmxhZGlz bGF2IFNocGlsZXZveSAmbHQ7di5zaHBpbGV2b3lAdGFyYW50b29sLm9yZyZndDs6PGJyPiZuYnNw OzxkaXYgaWQ9IiI+PGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNnIj48c3R5bGUg dHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PGRpdj48ZGl2IGlkPSJzdHlsZV8xNTc5NjQwMzY5MTEy NjUxNzIxOV9CT0RZIj5UaGFua3MgZm9yIHRoZSBwYXRjaCE8YnI+PGJyPkkgYW5zd2VyIHNvbWUg b2YgTmlraXRhJ3MgcXVlc3Rpb25zIGJlbG93IGFuZDxicj5wcm92aWRlIG15IG93biByZXZpZXcg ZnVydGhlci48YnI+PGJyPlNlZSA3IGNvbW1lbnRzIGJlbG93Ljxicj48YnI+T24gMjEvMDEvMjAy MCAxMjo0MiwgTmlraXRhIFBldHRpayB3cm90ZTo8YnI+Jmd0OyBPbiAyMCBKYW4gMjE6MTMsIEls eWEgS29zYXJldiB3cm90ZTo8YnI+Jmd0OyZndDsgZGlmZiAtLWdpdCBhL3NyYy9ib3gvYm94LmNj IGIvc3JjL2JveC9ib3guY2M8YnI+Jmd0OyZndDsgaW5kZXggMWIyYjI3ZDYxLi42NzhjOWZmZTMg MTAwNjQ0PGJyPiZndDsmZ3Q7IC0tLSBhL3NyYy9ib3gvYm94LmNjPGJyPiZndDsmZ3Q7ICsrKyBi L3NyYy9ib3gvYm94LmNjPGJyPiZndDsmZ3Q7IEBAIC0xMzIxLDkgKzEzMjEsMTQgQEAgc3BhY2Vf dHJ1bmNhdGUoc3RydWN0IHNwYWNlICpzcGFjZSk8YnI+Jmd0OyZndDsgb3BzX2J1Zl9lbmQgPSBt cF9lbmNvZGVfdWludChvcHNfYnVmX2VuZCwgMSk7PGJyPiZndDsmZ3Q7IGFzc2VydChvcHNfYnVm X2VuZCAmbHQ7IGJ1ZiArIGJ1Zl9zaXplKTs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsgKyBzdHJ1 Y3Qgc3BhY2UgKnRydW5jYXRlX3NwYWNlID0gc3BhY2VfY2FjaGVfZmluZF94YyhCT1hfVFJVTkNB VEVfSUQpOzxicj4mZ3Q7Jmd0OyArIG1lbXR4X2VuZ2luZV9zZXRfcXVvdGFfc3RyaWN0bmVzcyh0 cnVuY2F0ZV9zcGFjZS0mZ3Q7ZW5naW5lLCBmYWxzZSk7PGJyPiZndDs8YnI+Jmd0OyBJIHdvdWxk bid0IGNhbGwgaXQgc3RyaWN0bmVzcy4gSW4gZmFjdCB5b3Ugc2ltcGx5IHR1cm4gcXVvdGEgb24v b2ZmLjxicj4mZ3Q7IFNvIEknZCBiZXR0ZXIgY2FsbCBpdCBxdW90YV9lbmFibGUvZGlzYWJsZS48 YnI+Jmd0Ozxicj4mZ3Q7IE5pdDogcGxlYXNlIGFjY29tcGFueSB5b3VyIGNvZGUgd2l0aCAoYXQg bGVhc3QgYnJpZWYpIGNvbW1lbnRzLjxicj48YnI+MS4gT24vb2ZmIHNvdW5kcyBnb29kLjxicj48 YnI+Jmd0OyZndDsgKzxicj4mZ3Q7Jmd0OyBpZiAoYm94X3Vwc2VydChCT1hfVFJVTkNBVEVfSUQs IDAsIHR1cGxlX2J1ZiwgdHVwbGVfYnVmX2VuZCw8YnI+Jmd0OyZndDsgb3BzX2J1Ziwgb3BzX2J1 Zl9lbmQsIDAsIE5VTEwpICE9IDApPGJyPiZndDsmZ3Q7IGRpYWdfcmFpc2UoKTs8YnI+Jmd0Ozxi cj4mZ3Q7IElmIGJveF91cHNlcnQoKSBmYWlscywgcXVvdGEgaXMgbm90IHJlLWVuYWJsZWQsIGlz bid0IGl0Pzxicj48YnI+Mi4gVGhpcyBpcyBhIGJ1ZywgeWVzLiBCdXQgbm90IHRoZSBvbmx5IG9u ZS4gVGhlIHVwc2VydCB3aWxsIHdyaXRlPGJyPnRvIFdBTCBhbmQgeWllbGQuIER1cmluZyB0aGF0 IHlpZWxkIHRoZSBxdW90YSBpcyB0dXJuZWQgb2ZmLiBBbmQ8YnI+YW55IG90aGVyIGZpYmVyIGNh biBpbnRlcmZlcmUgYW5kIG92ZXJ1c2UgdGhlIHF1b3RhIGV2ZW4gbW9yZSB3aXRoPGJyPnNvbWV0 aGluZyBub3QgcmVsYXRlZCB0byBkZWxldGUvdHJ1bmNhdGUuPGJyPjxicj5UaGlzIGNhbiBiZSBm aXhlZCwgZm9yIGV4YW1wbGUsIGJ5IG1ha2luZyB0eG5fYmVnaW4oKSArIHF1b3RhX29mZigpICs8 YnI+dXBzZXJ0KCkgKyBxdW90YV9vbigpICsgY29tbWl0KCkuIEFsc28gd2UgY291bGQganVzdCBu b3QgdG91Y2ggdHJ1bmNhdGU8YnI+YW5kIGZpeCBkZWxldGUoKSBvbmx5LiBEZWxldGUoKSBjYW4g bmV2ZXIgbGVhdmUgdGhlIHF1b3RhIG92ZXJ1c2VkLDxicj5iZWNhdXNlIGlzIG5vdCBzdG9yZWQg YW55d2hlcmUgaW4gbWVtdHguIFdoaWxlIHRydW5jYXRlIGlzIHN0b3JlZCBpbjxicj5fdHJ1bmNh dGUuIEFuZCBkZWxldGUgd291bGQgYmUgc3VmZmljaWVudCwgYmVjYXVzZSBjYW4gYmUgdXNlZCB0 byBmcmVlPGJyPnRoZSBxdW90YSBlbm91Z2ggc28gYXMgdG8gY2FsbCB0cnVuY2F0ZSgpL3doYXRl dmVyIGVsc2UgdGhlIHVzZXIgd2FudGVkLjxicj48YnI+Jmd0OyZndDsgKzxicj4mZ3Q7Jmd0OyAr IG1lbXR4X2VuZ2luZV9zZXRfcXVvdGFfc3RyaWN0bmVzcyh0cnVuY2F0ZV9zcGFjZS0mZ3Q7ZW5n aW5lLCB0cnVlKTs8YnI+Jmd0OyZndDsgfTxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyBpbnQ8YnI+ Jmd0OyZndDsgZGlmZiAtLWdpdCBhL3NyYy9ib3gvbWVtdHhfZW5naW5lLmMgYi9zcmMvYm94L21l bXR4X2VuZ2luZS5jPGJyPiZndDsmZ3Q7IGluZGV4IDRkYTgwODI0YS4uYzE5MjA1ZDM0IDEwMDY0 NDxicj4mZ3Q7Jmd0OyAtLS0gYS9zcmMvYm94L21lbXR4X2VuZ2luZS5jPGJyPiZndDsmZ3Q7ICsr KyBiL3NyYy9ib3gvbWVtdHhfZW5naW5lLmM8YnI+Jmd0OyZndDsgQEAgLTEwOTAsNiArMTA5MCwx NSBAQCBtZW10eF9lbmdpbmVfc2V0X21lbW9yeShzdHJ1Y3QgbWVtdHhfZW5naW5lICptZW10eCwg c2l6ZV90IHNpemUpPGJyPiZndDsmZ3Q7IHJldHVybiAwOzxicj4mZ3Q7Jmd0OyB9PGJyPiZndDsm Z3Q7PGJyPiZndDsmZ3Q7ICt2b2lkPGJyPiZndDsmZ3Q7ICttZW10eF9lbmdpbmVfc2V0X3F1b3Rh X3N0cmljdG5lc3Moc3RydWN0IGVuZ2luZSAqZW5naW5lLCBib29sIHN0cmljdCk8YnI+Jmd0OyZn dDsgK3s8YnI+Jmd0OyZndDsgKyBpZiAoc3RybmNtcChlbmdpbmUtJmd0O25hbWUsICJtZW10eCIs IDUpICE9IDApPGJyPiZndDsmZ3Q7ICsgcmV0dXJuOzxicj4mZ3Q7PGJyPiZndDsgbWVtdHhfIHBy ZWZpeCBpbiB0aGUgbmFtZSBvZiB0aGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBpcyBjYWxs ZWQ8YnI+Jmd0OyBvbmx5IGZvciBtZW10eCBlbmdpbmUuIE5vdGUgdGhhdCB0aGVyZSdzIG5vIHN1 Y2ggY2hlY2tzIGluIG1lbXR4X2VuZ2luZTxicj4mZ3Q7IGludGVyZmFjZSBmdW5jdGlvbnMuPGJy PiZndDs8YnI+Jmd0OyZndDsgKyBzdHJ1Y3QgbWVtdHhfZW5naW5lICptZW10eCA9IChzdHJ1Y3Qg bWVtdHhfZW5naW5lICopZW5naW5lOzxicj4mZ3Q7Jmd0OyArIHF1b3RhX3NldF9zdHJpY3RuZXNz KCZhbXA7bWVtdHgtJmd0O3F1b3RhLCBzdHJpY3QpOzxicj4mZ3Q7PGJyPiZndDsgV2hhdCBoYXBw ZW5zIGlmIHF1b3RhIGlzIHR1cm5lZCBvbiBiYWNrLCBidXQgaXQgc3RpbGwgZXhjZWVkcyBsaW1p dD88YnI+Jmd0OyBJIGd1ZXNzIGl0IHdvdWxkIHR1cm4gb3V0IHRvIGJlIGluIGluY29uc2lzdGVu dCBzdGF0ZSwgc2luY2UgaW48YnI+Jmd0OyBub3JtYWwgb3BlcmF0aW9uIG1vZGUgdGhlcmUncyBu byBjaGFuY2Ugb2YgYmVpbmcgYmV5b25kIHRoZSBsaW1pdC48YnI+PGJyPjMuIFRoYXQgcHJvYmxl bSBpcyBub3Qgc29sdmFibGUuIFRoZXJlIGlzIGFsd2F5cyBhIGNoYW5jZSwgdGhhdCB0cnVuY2F0 ZTxicj53b24ndCBmcmVlIGFueSBtZW1vcnkgKGZvciBleGFtcGxlLCB0aGUgdGFyZ2V0IHNwYWNl IGNvdWxkIGJlIGVtcHR5PGJyPmFscmVhZHkpLiBJZiwgYWZ0ZXIgdGhlIHF1b3RhIGlzIGJhY2sg b24sIGl0IGFwcGVhcnMgdG8gYmUgb3ZlcnVzZWQsIG5vdGhpbmc8YnI+Y2FuIGJlIGRvbmUgd2l0 aCBpdC4gSXQgd2lsbCBzdGF5IG92ZXJ1c2VkIHVudGlsIG1vcmUgZGVsZXRlL3RydW5jYXRlIHdp bGwgYmU8YnI+ZXhlY3V0ZWQgYW5kIGFjdHVhbGx5IGRlbGV0ZSBzb21ldGhpbmcsIG9yIHRoZSB1 c2VyIHdpbGwgaW5jcmVhc2UgbWVtdHggbWVtb3J5Ljxicj48YnI+Jmd0OyBjb21taXQgNDVkOWY0 OTFmOTFkOTNjODgzNWNhNzI1YzIzNGY3MTEzYzBkMmFhODxicj4mZ3Q7IEF1dGhvcjogSWx5YSBL b3NhcmV2ICZsdDs8YSBocmVmPSIvY29tcG9zZT9Ubz1pLmtvc2FyZXZAdGFyYW50b29sLm9yZyI+ aS5rb3NhcmV2QHRhcmFudG9vbC5vcmc8L2E+Jmd0Ozxicj4mZ3Q7IERhdGU6IE1vbiBKYW4gMjAg MjA6MjE6MzcgMjAyMCArMDMwMDxicj4mZ3Q7PGJyPiZndDsgbWVtdHg6IGFsbG93IHF1b3RhIG92 ZXJ1c2UgZm9yIHRydW5jYXRpb24gYW5kIGRlbGV0aW9uPGJyPiZndDs8YnI+Jmd0Ozxicj4mZ3Q7 IFRyeWluZyB0byBwZXJmb3JtIHNwYWNlOnRydW5jYXRlKCkgYW5kIHNwYWNlOmRlbGV0ZSgpIHdo aWxlIHJlYWNoaW5nPGJyPiZndDsgbWVtdHhfbWVtb3J5IGxpbWl0IHdlIGNvdWxkIGV4cGVyaWVu Y2Ugc2xhYiBhbGxvY2F0b3IgZmFpbHVyZS4gVGhpczxicj4mZ3Q7IGJlaGF2aW9yIHNlZW1zIHRv IGJlIHF1aXRlIHN1cnByaXNpbmcgZm9yIHVzZXJzLiBOb3cgd2UgYXJlIGFsbG93aW5nPGJyPiZn dDsgdG8gb3ZlcnVzZSBtZW10eCBxdW90YSBpZiBuZWVkZWQgZm9yIHRydW5jYXRpb24gb3IgZGVs ZXRpb24sIHVzaW5nIGZsYWc8YnI+Jmd0OyBpbiBzdHJ1Y3QgcXVvdGEuIEFmdGVyIHBlcmZvcm1p bmcgdHJ1bmNhdGlvbiBvciBkZWxldGlvbiB3ZSByZXNldCB0aGU8YnI+Jmd0OyBmbGFnIHNvIHRo YXQgcXVvdGEgY2FuIGJlIG92ZXJ1c2VkIGFueSBtb3JlLjxicj4mZ3Q7PGJyPiZndDsgQ2xvc2Vz ICMzODA3PGJyPiZndDs8YnI+Jmd0OyBkaWZmIC0tZ2l0IGEvc3JjL2JveC9ib3guY2MgYi9zcmMv Ym94L2JveC5jYzxicj4mZ3Q7IGluZGV4IDFiMmIyN2Q2MS4uNjc4YzlmZmUzIDEwMDY0NDxicj4m Z3Q7IC0tLSBhL3NyYy9ib3gvYm94LmNjPGJyPiZndDsgKysrIGIvc3JjL2JveC9ib3guY2M8YnI+ Jmd0OyBAQCAtMTMyMSw5ICsxMzIxLDE0IEBAIHNwYWNlX3RydW5jYXRlKHN0cnVjdCBzcGFjZSAq c3BhY2UpPGJyPiZndDsgb3BzX2J1Zl9lbmQgPSBtcF9lbmNvZGVfdWludChvcHNfYnVmX2VuZCwg MSk7PGJyPiZndDsgYXNzZXJ0KG9wc19idWZfZW5kICZsdDsgYnVmICsgYnVmX3NpemUpOzxicj4m Z3Q7PGJyPiZndDsgKyBzdHJ1Y3Qgc3BhY2UgKnRydW5jYXRlX3NwYWNlID0gc3BhY2VfY2FjaGVf ZmluZF94YyhCT1hfVFJVTkNBVEVfSUQpOzxicj4mZ3Q7ICsgbWVtdHhfZW5naW5lX3NldF9xdW90 YV9zdHJpY3RuZXNzKHRydW5jYXRlX3NwYWNlLSZndDtlbmdpbmUsIGZhbHNlKTs8YnI+Jmd0OyAr PGJyPiZndDsgaWYgKGJveF91cHNlcnQoQk9YX1RSVU5DQVRFX0lELCAwLCB0dXBsZV9idWYsIHR1 cGxlX2J1Zl9lbmQsPGJyPiZndDsgb3BzX2J1Ziwgb3BzX2J1Zl9lbmQsIDAsIE5VTEwpICE9IDAp PGJyPiZndDsgZGlhZ19yYWlzZSgpOzxicj4mZ3Q7ICs8YnI+Jmd0OyArIG1lbXR4X2VuZ2luZV9z ZXRfcXVvdGFfc3RyaWN0bmVzcyh0cnVuY2F0ZV9zcGFjZS0mZ3Q7ZW5naW5lLCB0cnVlKTs8YnI+ Jmd0OyB9PGJyPjxicj40LiBJTU8sIHdlIHNob3VsZCBub3QgdG91Y2ggcXVvdGEgYXQgYWxsIHVu dGlsIHdlIHNlZSBhIG5vdCBlbXB0eSBkaWFnPGJyPndpdGggT09NIGVycm9yIHR5cGUgaW4gaXQu IEJvdGggaGVyZSBhbmQgaW4gZGVsZXRlLiBUcnVuY2F0ZSBpcyBub3Q8YnI+YSBmcmVxdWVudCBv cGVyYXRpb24gKGFsdGhvdWdoIGl0IG1heSBiZSBpbiBzb21lIHJhcmUgaW5zdGFsbGF0aW9ucyks PGJyPmJ1dCBkZWxldGUgc3VyZWx5IHNob3VsZCBub3QgdG91Y2ggcXVvdGEgZWFjaCB0aW1lLjxi cj48YnI+Jmd0OyBpbnQ8YnI+Jmd0OyBkaWZmIC0tZ2l0IGEvc3JjL2JveC9tZW10eF9lbmdpbmUu YyBiL3NyYy9ib3gvbWVtdHhfZW5naW5lLmM8YnI+Jmd0OyBpbmRleCA0ZGE4MDgyNGEuLmMxOTIw NWQzNCAxMDA2NDQ8YnI+Jmd0OyAtLS0gYS9zcmMvYm94L21lbXR4X2VuZ2luZS5jPGJyPiZndDsg KysrIGIvc3JjL2JveC9tZW10eF9lbmdpbmUuYzxicj4mZ3Q7IEBAIC0xMDkwLDYgKzEwOTAsMTUg QEAgbWVtdHhfZW5naW5lX3NldF9tZW1vcnkoc3RydWN0IG1lbXR4X2VuZ2luZSAqbWVtdHgsIHNp emVfdCBzaXplKTxicj4mZ3Q7IHJldHVybiAwOzxicj4mZ3Q7IH08YnI+Jmd0Ozxicj4mZ3Q7ICt2 b2lkPGJyPiZndDsgK21lbXR4X2VuZ2luZV9zZXRfcXVvdGFfc3RyaWN0bmVzcyhzdHJ1Y3QgZW5n aW5lICplbmdpbmUsIGJvb2wgc3RyaWN0KTxicj4mZ3Q7ICt7PGJyPiZndDsgKyBpZiAoc3RybmNt cChlbmdpbmUtJmd0O25hbWUsICJtZW10eCIsIDUpICE9IDApPGJyPiZndDsgKyByZXR1cm47PGJy Pjxicj41LiBUaGF0IGNoZWNrIHNob3VsZCBub3QgZXhpc3QuIEl0IHNsb3dzIGRvd24gdGhlIGNh bGxlciwgYW5kPGJyPmluIHVwcGVyIGNvZGUgeW91IGFsd2F5cyBrbm93IHdoZXRoZXIgeW91IHdv cmsgd2l0aCBtZW10eCBvcjxicj5ub3QuIFNvIGl0IG1ha2VzIG5vIHNlbnNlIHRvIGNoZWNrIGl0 IGhlcmUuIFRydW5jYXRlIGlzPGJyPmFsd2F5cyBhYm91dCBpbnNlcnRpb24gaW50byBhIG1lbXR4 IHNwYWNlLiBEZWxldGUgdG91Y2hlcyBxb3V0YTxicj5pbnNpZGUgbWVtdHhfc3BhY2UgaW1wbGVt ZW50YXRpb24uIE5vIGNoYW5jZXMgdGhhdCBhIHZpbnlsIHNwYWNlPGJyPndvdWxkIGNhbGwgdGhp cyBmdW5jdGlvbi48YnI+PGJyPiZndDsgKyBzdHJ1Y3QgbWVtdHhfZW5naW5lICptZW10eCA9IChz dHJ1Y3QgbWVtdHhfZW5naW5lICopZW5naW5lOzxicj4mZ3Q7ICsgcXVvdGFfc2V0X3N0cmljdG5l c3MoJmFtcDttZW10eC0mZ3Q7cXVvdGEsIHN0cmljdCk7PGJyPiZndDsgK308YnI+Jmd0OyArPGJy PiZndDsgdm9pZDxicj4mZ3Q7IG1lbXR4X2VuZ2luZV9zZXRfbWF4X3R1cGxlX3NpemUoc3RydWN0 IG1lbXR4X2VuZ2luZSAqbWVtdHgsIHNpemVfdCBtYXhfc2l6ZSk8YnI+Jmd0OyB7PGJyPiZndDsg ZGlmZiAtLWdpdCBhL3NyYy9saWIvc21hbGwgYi9zcmMvbGliL3NtYWxsPGJyPiZndDsgaW5kZXgg NTBjYjc4NzQzLi5iZGNkNTY5ZjkgMTYwMDAwPGJyPiZndDsgLS0tIGEvc3JjL2xpYi9zbWFsbDxi cj4mZ3Q7ICsrKyBiL3NyYy9saWIvc21hbGw8YnI+Jmd0OyBAQCAtMSArMSBAQDxicj4mZ3Q7IC1T dWJwcm9qZWN0IGNvbW1pdCA1MGNiNzg3NDM4MGIyODZmM2IzNGM4MjI5OWNmNWViODhiMGQwMDU5 PGJyPiZndDsgK1N1YnByb2plY3QgY29tbWl0IGJkY2Q1NjlmOWVkNzUzZWZiODA1ZjcwODA4OWNh ODZlMjUyMGE0NGY8YnI+PGJyPjYuIFBsZWFzZSwgd3JpdGUgdGVzdHMuIFRoZXkgc2hvdWxkIGlu Y2x1ZGUgdGhlIGJ1ZyB0ZXN0IGl0c2VsZiwgYW5kPGJyPmNvbXBsZXggdGhpbmdzIHN1Y2ggYXMg cXVvdGEgb3ZlcnVzZSBrZXB0IGluIGNhc2UgdHJ1bmNhdGUoKSBkaWRuJ3Q8YnI+ZnJlZSBhbnl0 aGluZy4gWW91IGNhbiB1c2UgbWVtdHhfbWVtb3J5IHBhcmFtZXRlciB0byBtYWtlIGl0IHNtYWxs PGJyPmVub3VnaCBzbyBhcyB0aGUgdGVzdCB3b3VsZCBub3QgdGFrZSBtdWNoIHRpbWUuPGJyPjxi cj43LiBTZWVtcyBsaWtlIHlvdSBjaGFuZ2VkIHNvbWV0aGluZyBpbiBzbWFsbC8uIFlvdSBuZWVk IHRvIHNlbmQgaXQgYXM8YnI+YSBzZXBhcmF0ZSBwYXRjaCB3aXRoIGl0cyBvd24gdGVzdHMsIGFu ZCBhbGwuPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPiZuYnNwOzxkaXY+Jm5i c3A7PC9kaXY+PGRpdiBkYXRhLXNpZ25hdHVyZS13aWRnZXQ9ImNvbnRhaW5lciI+PGRpdiBkYXRh LXNpZ25hdHVyZS13aWRnZXQ9ImNvbnRlbnQiPjxkaXY+LS08YnI+SWx5YSBLb3NhcmV2PC9kaXY+ PC9kaXY+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--9e17A6e160e654b30631Ae29Dd23F3731581710239--