From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 5D3B32EBFF for ; Thu, 22 Nov 2018 15:55:26 -0500 (EST) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1dJao92DS8lU for ; Thu, 22 Nov 2018 15:55:26 -0500 (EST) Received: from f398.i.mail.ru (f398.i.mail.ru [185.5.136.69]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 462C82EAF9 for ; Thu, 22 Nov 2018 15:55:25 -0500 (EST) From: =?UTF-8?B?0JzQtdGA0LPQtdC9INCY0LzQtdC10LI=?= Subject: [tarantool-patches] =?UTF-8?B?UmVbMl06IFt0YXJhbnRvb2wtcGF0Y2hlc10gUmU6IFtQQVRDSCAxLzNdIHNx?= =?UTF-8?B?bDogRVhQTEFJTiB0aHJvdWdoIG5ldC5ib3ggbGVhZHMgdG8gU0VHRkFVTFQ=?= MIME-Version: 1.0 Date: Thu, 22 Nov 2018 23:55:22 +0300 Message-ID: <1542920122.851013557@f398.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--PyMaP9bzyDpVSPaHv648tn6DpVpjUf2S1542920122" In-Reply-To: <6104171d-f355-733c-d01b-016127ec389a@tarantool.org> References: <6104171d-f355-733c-d01b-016127ec389a@tarantool.org> Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-subscribe: List-owner: List-post: List-archive: To: =?UTF-8?B?VmxhZGlzbGF2IFNocGlsZXZveQ==?= Cc: =?UTF-8?B?bi5wZXR0aWs=?= , tarantool-patches@freelists.org ----ALT--PyMaP9bzyDpVSPaHv648tn6DpVpjUf2S1542920122 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 QWZ0ZXIgZGlzY3Vzc2lvbiB3ZSBkZWNpZGVkIHRoYXQgdGhpcyBwYXRjaCB3aWxsIHNlcnZlIHVz CnBhcnQgb2YgcGF0Y2gtc2V0IHRoYXQgc2hvdWxkIGNsb3NlIG5ld2x5IGZpbGVkIGJ1ZzoKaHR0 cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzM4MzIKClRoZSBtYWlu IElkZWEgYmVoaW5kIHRoaXMgdGlja2V0IGlzIHRoYXQgYW55IHN0YXRlbWVudApzaG91bGQgcmV0 dXJuIGNvbHVtbiB0eXBlIGZvciB3aGVuIGl0IHJldHVybnMgY29sdW1uIG5hbWUuCkFuZCB0aGlz IHRpY2tldCBhbGxvdyB1cyB0byBmaW5kIGFuIGVycm9yIHdpdGhvdXQgZmFsbGluZwppbnRvIFNF R01FTlRBVElPTiBGQVVMVCBvciByZXR1cm5pbmcgbGVzcyBtZXRhZGF0YS4KCtCn0LXRgtCy0LXR gNCzLCAyMiDQvdC+0Y/QsdGA0Y8gMjAxOCwgMjE6MzEgKzAzOjAwINC+0YIgVmxhZGlzbGF2IFNo cGlsZXZveSA8di5zaHBpbGV2b3lAdGFyYW50b29sLm9yZz46Cj4KPkl0IHdhcyBqdXN0IGEgcXVl c3Rpb24sICJ3aHkgZGlkIHlvdSBkZWNpZGUgdG8gZG8gbm90Cj5zZW5kIHR5cGUiLiBJdCB3YXMg bm90IG5lY2Vzc2FyeSB0byBzdGFydCBzZW5kaW5nIFVOS05PV04uIEkKPnRoaW5rLCB0aGF0IHVu a25vd24gdHlwZSBzaG91bGQgYmUgc2VudCBuZXZlci4KPgo+T24gMjIvMTEvMjAxOCAyMTowOCwg SW1lZXYgTWVyZ2VuIHdyb3RlOgo+PiBIaSEgVGhhbmsgeW91IGZvciByZXZpZXchIERpZmYgYmV0 d2VlbiB2ZXJzaW9ucyBhbmQgbmV3IHBhdGNoCj4+IGJlbG93Lgo+PiAKPj4gT24gMTEvMTkvMTgg ODoyNyBQTSwgbi5wZXR0aWsgd3JvdGU6Cj4+IAo+Pj4+IEVYUExBSU4gZW52b2tlcyBTRUdNRU5U QVRJT04gRkFVTFQgd2hlbiBiZWluZyBleGVjdXRlZCB0aHJvdWdoCj4+PiBUeXBvOiBpbnZva2Vz Lgo+Pj4KPj4+PiBuZXQuYm94LiBJdCBoYXBwZW5zIGR1ZSB0byBjb2x1bW4gdHlwZSBvZiB0aGUg cmVzdWx0IG9mIHRoaXMKPj4+PiBmdW5jdGlvbiBiZWluZyBOVUxMLgo+Pj4gSeKAmXZlIGNoZWNr ZWQgYW5kIG5vdCBvbmx5IEVYUExBSU4gcmVzdWx0cywgYnV0IGFsc28gRVhQTEFJTiBRVUVSWSBQ TEFOLAo+Pj4gc2V2ZXJhbCBwcmFnbWFzIChmb3IgaW5zdGFuY2UsIHByYWdtYSB0YWJsZV9pbmZv KCkpIGV0Yy4gU28sIGluaXRpYWxseSBwcm9ibGVtCj4+PiB3YXMgbm90IG9ubHkgaW4gRVhQTEFJ TiBzdGF0ZW1lbnQuIFBsZWFzZSBleHBvc2VkIGNvbW1pdCBtZXNzYWdlIGFuZAo+Pj4gYWRkIHRl c3RzIG9uIG90aGVyIGNhc2VzLgo+Pj4KPj4+IEFsc28sIHdoeSBkaWQgeW91IGRlY2lkZSB0byBh dm9pZCBzZW5kaW5nIHR5cGUgYXQgYWxsLCBpbnN0ZWFkIG9mIHNlbmRpbmcKPj4+IFVOS05PV04g Zm9yIGV4YW1wbGU/Cj4+IAo+PiAqRGlmZiBiZXR3ZWVuIHZlcnNpb25zOioKPj4gCj4+IGRpZmYg LS1naXQgYS9zcmMvYm94L2V4ZWN1dGUuYyBiL3NyYy9ib3gvZXhlY3V0ZS5jCj4+IGluZGV4IDVi NzQ3Y2YuLmNkODA5ZjggMTAwNjQ0Cj4+IC0tLSBhL3NyYy9ib3gvZXhlY3V0ZS5jCj4+ICsrKyBi L3NyYy9ib3gvZXhlY3V0ZS5jCj4+IEBAIC01MjksNiArNTI5LDkgQEAgc3FsX2dldF9kZXNjcmlw dGlvbihzdHJ1Y3Qgc3FsaXRlM19zdG10ICpzdG10LCBzdHJ1Y3Qgb2J1ZiAqb3V0LAo+PiAgwqDC oMKgwqAgwqDCoMKgIHJldHVybiAtMTsKPj4gCj4+ICDCoMKgwqDCoCBmb3IgKGludCBpID0gMDsg aSA8IGNvbHVtbl9jb3VudDsgKytpKSB7Cj4+ICvCoMKgwqAgwqDCoMKgIHNpemVfdCBzaXplID0g bXBfc2l6ZW9mX21hcCgyKSArCj4+ICvCoMKgwqAgwqDCoMKgIMKgwqDCoCDCoMKgwqDCoMKgIG1w X3NpemVvZl91aW50KElQUk9UT19GSUVMRF9OQU1FKSArCj4+ICvCoMKgwqAgwqDCoMKgIMKgwqDC oCDCoMKgwqDCoMKgIG1wX3NpemVvZl91aW50KElQUk9UT19GSUVMRF9UWVBFKTsKPj4gIMKgwqDC oMKgIMKgwqDCoCBjb25zdCBjaGFyICpuYW1lID0gc3FsaXRlM19jb2x1bW5fbmFtZShzdG10LCBp KTsKPj4gIMKgwqDCoMKgIMKgwqDCoCBjb25zdCBjaGFyICp0eXBlID0gc3FsaXRlM19jb2x1bW5f ZGF0YXR5cGUoc3RtdCwgaSk7Cj4+ICDCoMKgwqDCoCDCoMKgwqAgLyoKPj4gQEAgLTUzNywyNyAr NTQwLDIwIEBAIHNxbF9nZXRfZGVzY3JpcHRpb24oc3RydWN0IHNxbGl0ZTNfc3RtdCAqc3RtdCwg c3RydWN0IG9idWYgKm91dCwKPj4gIMKgwqDCoMKgIMKgwqDCoCDCoCogY29sdW1uX25hbWUgc2lt cGx5IHJldHVybnMgdGhlbS4KPj4gIMKgwqDCoMKgIMKgwqDCoCDCoCovCj4+ICDCoMKgwqDCoCDC oMKgwqAgYXNzZXJ0KG5hbWUgIT0gTlVMTCk7Cj4+IC3CoMKgwqAgwqDCoMKgIHNpemVfdCBzaXpl ID0gbXBfc2l6ZW9mX3VpbnQoSVBST1RPX0ZJRUxEX05BTUUpICsKPj4gLcKgwqDCoCDCoMKgwqAg wqDCoMKgIMKgwqDCoMKgwqAgbXBfc2l6ZW9mX3N0cihzdHJsZW4obmFtZSkpOwo+PiAtwqDCoMKg IMKgwqDCoCBpZiAodHlwZSAhPSBOVUxMKSB7Cj4+IC3CoMKgwqAgwqDCoMKgIMKgwqDCoCBzaXpl ICs9IG1wX3NpemVvZl9tYXAoMikgKwo+PiAtwqDCoMKgIMKgwqDCoCDCoMKgwqAgwqDCoMKgIG1w X3NpemVvZl91aW50KElQUk9UT19GSUVMRF9UWVBFKSArCj4+IC3CoMKgwqAgwqDCoMKgIMKgwqDC oCDCoMKgwqAgbXBfc2l6ZW9mX3N0cihzdHJsZW4odHlwZSkpOwo+PiAtwqDCoMKgIMKgwqDCoCB9 IGVsc2Ugewo+PiAtwqDCoMKgIMKgwqDCoCDCoMKgwqAgc2l6ZSArPSBtcF9zaXplb2ZfbWFwKDEp Owo+PiAtwqDCoMKgIMKgwqDCoCB9Cj4+ICvCoMKgwqAgwqDCoMKgIGlmICh0eXBlID09IE5VTEwp Cj4+ICvCoMKgwqAgwqDCoMKgIMKgwqDCoCB0eXBlID0gIlVOS05PV04iOwo+PiArwqDCoMKgIMKg wqDCoCBzaXplICs9IG1wX3NpemVvZl9zdHIoc3RybGVuKG5hbWUpKTsKPj4gK8KgwqDCoCDCoMKg wqAgc2l6ZSArPSBtcF9zaXplb2Zfc3RyKHN0cmxlbih0eXBlKSk7Cj4+ICDCoMKgwqDCoCDCoMKg wqAgY2hhciAqcG9zID0gKGNoYXIgKikgb2J1Zl9hbGxvYyhvdXQsIHNpemUpOwo+PiAgwqDCoMKg wqAgwqDCoMKgIGlmIChwb3MgPT0gTlVMTCkgewo+PiAgwqDCoMKgwqAgwqDCoMKgIMKgwqDCoCBk aWFnX3NldChPdXRPZk1lbW9yeSwgc2l6ZSwgIm9idWZfYWxsb2MiLCAicG9zIik7Cj4+ICDCoMKg wqDCoCDCoMKgwqAgwqDCoMKgIHJldHVybiAtMTsKPj4gIMKgwqDCoMKgIMKgwqDCoCB9Cj4+IC3C oMKgwqAgwqDCoMKgIHBvcyA9IG1wX2VuY29kZV9tYXAocG9zLCAxICsgKHR5cGUgIT0gTlVMTCkp Owo+PiArwqDCoMKgIMKgwqDCoCBwb3MgPSBtcF9lbmNvZGVfbWFwKHBvcywgMik7Cj4+ICDCoMKg wqDCoCDCoMKgwqAgcG9zID0gbXBfZW5jb2RlX3VpbnQocG9zLCBJUFJPVE9fRklFTERfTkFNRSk7 Cj4+ICDCoMKgwqDCoCDCoMKgwqAgcG9zID0gbXBfZW5jb2RlX3N0cihwb3MsIG5hbWUsIHN0cmxl bihuYW1lKSk7Cj4+IC3CoMKgwqAgwqDCoMKgIGlmICh0eXBlICE9IE5VTEwpIHsKPj4gLcKgwqDC oCDCoMKgwqAgwqDCoMKgIHBvcyA9IG1wX2VuY29kZV91aW50KHBvcywgSVBST1RPX0ZJRUxEX1RZ UEUpOwo+PiAtwqDCoMKgIMKgwqDCoCDCoMKgwqAgcG9zID0gbXBfZW5jb2RlX3N0cihwb3MsIHR5 cGUsIHN0cmxlbih0eXBlKSk7Cj4+IC3CoMKgwqAgwqDCoMKgIH0KPj4gK8KgwqDCoCDCoMKgwqAg cG9zID0gbXBfZW5jb2RlX3VpbnQocG9zLCBJUFJPVE9fRklFTERfVFlQRSk7Cj4+ICvCoMKgwqAg wqDCoMKgIHBvcyA9IG1wX2VuY29kZV9zdHIocG9zLCB0eXBlLCBzdHJsZW4odHlwZSkpOwo+PiAg wqDCoMKgwqAgfQo+PiAgwqDCoMKgwqAgcmV0dXJuIDA7Cj4+ICDCoH0KPj4gZGlmZiAtLWdpdCBh L3NyYy9ib3gvbHVhL25ldF9ib3guYyBiL3NyYy9ib3gvbHVhL25ldF9ib3guYwo+PiBpbmRleCAz NDJjNmE3Li5jNzA2M2Q5IDEwMDY0NAo+PiAtLS0gYS9zcmMvYm94L2x1YS9uZXRfYm94LmMKPj4g KysrIGIvc3JjL2JveC9sdWEvbmV0X2JveC5jCj4+IEBAIC02NDQsNyArNjQ0LDggQEAgbmV0Ym94 X2RlY29kZV9tZXRhZGF0YShzdHJ1Y3QgbHVhX1N0YXRlICpMLCBjb25zdCBjaGFyICoqZGF0YSkK Pj4gIMKgwqDCoMKgIGx1YV9jcmVhdGV0YWJsZShMLCBjb3VudCwgMCk7Cj4+ICDCoMKgwqDCoCBm b3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewo+PiAgwqDCoMKgwqAgwqDCoMKg IHVpbnQzMl90IG1hcF9zaXplID0gbXBfZGVjb2RlX21hcChkYXRhKTsKPj4gLcKgwqDCoCDCoMKg wqAgYXNzZXJ0KG1hcF9zaXplID09IDEgfHwgbWFwX3NpemUgPT0gMik7Cj4+ICvCoMKgwqAgwqDC oMKgIGFzc2VydChtYXBfc2l6ZSA9PSAyKTsKPj4gK8KgwqDCoCDCoMKgwqAgKHZvaWQpIG1hcF9z aXplOwo+PiAgwqDCoMKgwqAgwqDCoMKgIHVpbnQzMl90IGtleSA9IG1wX2RlY29kZV91aW50KGRh dGEpOwo+PiAgwqDCoMKgwqAgwqDCoMKgIGFzc2VydChrZXkgPT0gSVBST1RPX0ZJRUxEX05BTUUp Owo+PiAgwqDCoMKgwqAgwqDCoMKgICh2b2lkKSBrZXk7Cj4+IEBAIC02NTMsMTMgKzY1NCwxMSBA QCBuZXRib3hfZGVjb2RlX21ldGFkYXRhKHN0cnVjdCBsdWFfU3RhdGUgKkwsIGNvbnN0IGNoYXIg KipkYXRhKQo+PiAgwqDCoMKgwqAgwqDCoMKgIGNvbnN0IGNoYXIgKnN0ciA9IG1wX2RlY29kZV9z dHIoZGF0YSwgJmxlbik7Cj4+ICDCoMKgwqDCoCDCoMKgwqAgbHVhX3B1c2hsc3RyaW5nKEwsIHN0 ciwgbGVuKTsKPj4gIMKgwqDCoMKgIMKgwqDCoCBsdWFfc2V0ZmllbGQoTCwgLTIsICJuYW1lIik7 Cj4+IC3CoMKgwqAgwqDCoMKgIGlmIChtYXBfc2l6ZSA9PSAyKSB7Cj4+IC3CoMKgwqAgwqDCoMKg IMKgwqDCoCBrZXkgPSBtcF9kZWNvZGVfdWludChkYXRhKTsKPj4gLcKgwqDCoCDCoMKgwqAgwqDC oMKgIGFzc2VydChrZXkgPT0gSVBST1RPX0ZJRUxEX1RZUEUpOwo+PiAtwqDCoMKgIMKgwqDCoCDC oMKgwqAgY29uc3QgY2hhciAqdHlwZSA9IG1wX2RlY29kZV9zdHIoZGF0YSwgJmxlbik7Cj4+IC3C oMKgwqAgwqDCoMKgIMKgwqDCoCBsdWFfcHVzaGxzdHJpbmcoTCwgdHlwZSwgbGVuKTsKPj4gLcKg wqDCoCDCoMKgwqAgwqDCoMKgIGx1YV9zZXRmaWVsZChMLCAtMiwgInR5cGUiKTsKPj4gLcKgwqDC oCDCoMKgwqAgfQo+PiArwqDCoMKgIMKgwqDCoCBrZXkgPSBtcF9kZWNvZGVfdWludChkYXRhKTsK Pj4gK8KgwqDCoCDCoMKgwqAgYXNzZXJ0KGtleSA9PSBJUFJPVE9fRklFTERfVFlQRSk7Cj4+ICvC oMKgwqAgwqDCoMKgIGNvbnN0IGNoYXIgKnR5cGUgPSBtcF9kZWNvZGVfc3RyKGRhdGEsICZsZW4p Owo+PiArwqDCoMKgIMKgwqDCoCBsdWFfcHVzaGxzdHJpbmcoTCwgdHlwZSwgbGVuKTsKPj4gK8Kg wqDCoCDCoMKgwqAgbHVhX3NldGZpZWxkKEwsIC0yLCAidHlwZSIpOwo+PiAgwqDCoMKgwqAgwqDC oMKgIGx1YV9yYXdzZXRpKEwsIC0yLCBpICsgMSk7Cj4+ICDCoMKgwqDCoCB9Cj4+ICDCoH0KPj4g ZGlmZiAtLWdpdCBhL3Rlc3Qvc3FsL2lwcm90by5yZXN1bHQgYi90ZXN0L3NxbC9pcHJvdG8ucmVz dWx0Cj4+IGluZGV4IDMxZTVkMmUuLmYyMjk0MjcgMTAwNjQ0Cj4+IC0tLSBhL3Rlc3Qvc3FsL2lw cm90by5yZXN1bHQKPj4gKysrIGIvdGVzdC9zcWwvaXByb3RvLnJlc3VsdAo+PiBAQCAtNzc0LDkg Kzc3NCw5IEBAIGNuOmNsb3NlKCkKPj4gIMKgLS0tCj4+ICDCoC4uLgo+PiAgwqAtLQo+PiAtLS0g RVhQTEFJTiBjb3VsZCBsZWFkIHRvIHNlZ2ZhdWx0IGJlY2F1c2UgaXQgZG9lcyBub3Qgc2VuZCBj b2x1bW4KPj4gLS0tIGRhdGEgdHlwZSwgYnV0IGxvb2tzIGxpa2UgRFFMLiBOZXRib3ggaGFkIGJl ZW4gdHJ5aW5nIHRvIGRlY29kZQo+PiAtLS0gdHlwZSBmb3IgYW55IERRTC4KPj4gKy0tIFNvbWUg Y29tbWFuZHMsIGUuZy4gRVhQTEFJTiwgY291bGQgbGVhZCB0byBzZWdmYXVsdCBiZWNhdXNlIGl0 Cj4+ICstLSBkb2VzIG5vdCBzZW5kIGNvbHVtbiBkYXRhIHR5cGUsIGJ1dCBsb29rcyBsaWtlIERR TC4gTmV0Ym94IGhhZAo+PiArLS0gYmVlbiB0cnlpbmcgdG8gZGVjb2RlIHR5cGUgZm9yIGFueSBE UUwuCj4+ICDCoC0tCj4+ICDCoGNuID0gcmVtb3RlLmNvbm5lY3QoYm94LmNmZy5saXN0ZW4pCj4+ ICDCoC0tLQo+PiBAQCAtNzg1LDYgKzc4NSwzMiBAQCBjbiA9IHJlbW90ZS5jb25uZWN0KGJveC5j ZmcubGlzdGVuKQo+PiAgwqBfID0gY246ZXhlY3V0ZSgiRVhQTEFJTiBTRUxFQ1QgMTsiKQo+PiAg wqAtLS0KPj4gIMKgLi4uCj4+ICstLSBTZWdtZW50YXRpb24gZmF1bHQgd2hlbiBQUkFHTUEgVEFC TEVfSU5GTygpIGV4ZWN1dGVkIHVzaW5nCj4+ICstLSBuZXQuYm94Lgo+PiArYm94LnNxbC5leGVj dXRlKCdDUkVBVEUgVEFCTEUgdGVzdCAoaWQgSU5UIFBSSU1BUlkgS0VZKScpCj4+ICstLS0KPj4g Ky4uLgo+PiArY246ZXhlY3V0ZSgiUFJBR01BIFRBQkxFX0lORk8odGVzdCk7IikKPj4gKy0tLQo+ PiArLSBtZXRhZGF0YToKPj4gK8KgIC0gbmFtZTogY2lkCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9X Tgo+PiArwqAgLSBuYW1lOiBuYW1lCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBu YW1lOiB0eXBlCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBuYW1lOiBub3RudWxs Cj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBuYW1lOiBkZmx0X3ZhbHVlCj4+ICvC oMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBuYW1lOiBwawo+PiArwqDCoMKgIHR5cGU6IFVO S05PV04KPj4gK8KgIHJvd3M6Cj4+ICvCoCAtIFswLCAnSUQnLCAnaW50ZWdlcicsIDEsIG51bGws IDFdCj4+ICsuLi4KPj4gK2JveC5zcWwuZXhlY3V0ZSgnRFJPUCBUQUJMRSB0ZXN0JykKPj4gKy0t LQo+PiArLi4uCj4+ICDCoGNuOmNsb3NlKCkKPj4gIMKgLS0tCj4+ICDCoC4uLgo+PiBkaWZmIC0t Z2l0IGEvdGVzdC9zcWwvaXByb3RvLnRlc3QubHVhIGIvdGVzdC9zcWwvaXByb3RvLnRlc3QubHVh Cj4+IGluZGV4IGEwZjBmMTUuLjliY2M3ZWYgMTAwNjQ0Cj4+IC0tLSBhL3Rlc3Qvc3FsL2lwcm90 by50ZXN0Lmx1YQo+PiArKysgYi90ZXN0L3NxbC9pcHJvdG8udGVzdC5sdWEKPj4gQEAgLTI0OCwx NSArMjQ4LDIxIEBAIGNuOmV4ZWN1dGUoJ2Ryb3AgdGFibGUgdGVzdCcpCj4+ICDCoGNuOmNsb3Nl KCkKPj4gCj4+ICDCoC0tCj4+IC0tLSBFWFBMQUlOIGNvdWxkIGxlYWQgdG8gc2VnZmF1bHQgYmVj YXVzZSBpdCBkb2VzIG5vdCBzZW5kIGNvbHVtbgo+PiAtLS0gZGF0YSB0eXBlLCBidXQgbG9va3Mg bGlrZSBEUUwuIE5ldGJveCBoYWQgYmVlbiB0cnlpbmcgdG8gZGVjb2RlCj4+IC0tLSB0eXBlIGZv ciBhbnkgRFFMLgo+PiArLS0gU29tZSBjb21tYW5kcywgZS5nLiBFWFBMQUlOLCBjb3VsZCBsZWFk IHRvIHNlZ2ZhdWx0IGJlY2F1c2UgaXQKPj4gKy0tIGRvZXMgbm90IHNlbmQgY29sdW1uIGRhdGEg dHlwZSwgYnV0IGxvb2tzIGxpa2UgRFFMLiBOZXRib3ggaGFkCj4+ICstLSBiZWVuIHRyeWluZyB0 byBkZWNvZGUgdHlwZSBmb3IgYW55IERRTC4KPj4gIMKgLS0KPj4gIMKgY24gPSByZW1vdGUuY29u bmVjdChib3guY2ZnLmxpc3RlbikKPj4gCj4+ICDCoC0tIFNlZ21lbnRhdGlvbiBmYXVsdCB3aGVu IEVYUExBSU4gZXhlY3V0ZWQgdXNpbmcgbmV0LmJveC4KPj4gIMKgXyA9IGNuOmV4ZWN1dGUoIkVY UExBSU4gU0VMRUNUIDE7IikKPj4gCj4+ICstLSBTZWdtZW50YXRpb24gZmF1bHQgd2hlbiBQUkFH TUEgVEFCTEVfSU5GTygpIGV4ZWN1dGVkIHVzaW5nCj4+ICstLSBuZXQuYm94Lgo+PiArYm94LnNx bC5leGVjdXRlKCdDUkVBVEUgVEFCTEUgdGVzdCAoaWQgSU5UIFBSSU1BUlkgS0VZKScpCj4+ICtj bjpleGVjdXRlKCJQUkFHTUEgVEFCTEVfSU5GTyh0ZXN0KTsiKQo+PiArYm94LnNxbC5leGVjdXRl KCdEUk9QIFRBQkxFIHRlc3QnKQo+PiArCj4+ICDCoGNuOmNsb3NlKCkKPj4gCj4+ICDCoGJveC5z Y2hlbWEudXNlci5yZXZva2UoJ2d1ZXN0JywgJ3JlYWQsd3JpdGUsZXhlY3V0ZScsICd1bml2ZXJz ZScpCj4+IAo+PiAKPj4gKk5ldyB2ZXJzaW9uOioKPj4gCj4+IGNvbW1pdCAyOWRkZTAzNjU5MjJi ZmNlYzBkMTU5YjM2YzY0NTQ4NTRhZGYzNGY3Cj4+IEF1dGhvcjogTWVyZ2VuIEltZWV2IDwgaW1l ZXZtYUBnbWFpbC5jb20gPgo+PiBEYXRlOsKgwqAgRnJpIE5vdiAxNiAxMzozNDo0NiAyMDE4ICsw MzAwCj4+IAo+PiAgwqDCoMKgIHNxbDogUHJpbnQgY29sdW1uIHR5cGUgZXZlbiBpZiBpdCBpcyBO VUxMCj4+IAo+PiAgwqDCoMKgIFNvbWUgY29tbWFuZHMsIGUuZy4gRVhQTEFJTiwgaW52b2tlcyBT RUdNRU5UQVRJT04gRkFVTFQgd2hlbiBiZWluZwo+PiAgwqDCoMKgIGV4ZWN1dGVkIHRocm91Z2gg bmV0LmJveC4gSXQgaGFwcGVucyBkdWUgdG8gY29sdW1uIHR5cGUgb2YgdGhlCj4+ICDCoMKgwqAg cmVzdWx0IG9mIHRoaXMgZnVuY3Rpb24gYmVpbmcgTlVMTC4gVGhpcyBwYXRjaCBhZGRzIGNoZWNr cyBmb3IKPj4gIMKgwqDCoCByZWNlaXZlZCBjb2x1bW4gdHlwZS4KPj4gCj4+IGRpZmYgLS1naXQg YS9zcmMvYm94L2V4ZWN1dGUuYyBiL3NyYy9ib3gvZXhlY3V0ZS5jCj4+IGluZGV4IGU0NTA0NDQu LmNkODA5ZjggMTAwNjQ0Cj4+IC0tLSBhL3NyYy9ib3gvZXhlY3V0ZS5jCj4+ICsrKyBiL3NyYy9i b3gvZXhlY3V0ZS5jCj4+IEBAIC01NDAsNiArNTQwLDggQEAgc3FsX2dldF9kZXNjcmlwdGlvbihz dHJ1Y3Qgc3FsaXRlM19zdG10ICpzdG10LCBzdHJ1Y3Qgb2J1ZiAqb3V0LAo+PiAgwqDCoMKgIMKg wqDCoCDCoCAqIGNvbHVtbl9uYW1lIHNpbXBseSByZXR1cm5zIHRoZW0uCj4+ICDCoMKgwqAgwqDC oMKgIMKgICovCj4+ICDCoMKgwqAgwqDCoMKgIMKgYXNzZXJ0KG5hbWUgIT0gTlVMTCk7Cj4+ICvC oMKgIMKgwqDCoCDCoGlmICh0eXBlID09IE5VTEwpCj4+ICvCoMKgIMKgwqDCoCDCoMKgwqAgwqB0 eXBlID0gIlVOS05PV04iOwo+PiAgwqDCoMKgIMKgwqDCoCDCoHNpemUgKz0gbXBfc2l6ZW9mX3N0 cihzdHJsZW4obmFtZSkpOwo+PiAgwqDCoMKgIMKgwqDCoCDCoHNpemUgKz0gbXBfc2l6ZW9mX3N0 cihzdHJsZW4odHlwZSkpOwo+PiAgwqDCoMKgIMKgwqDCoCDCoGNoYXIgKnBvcyA9IChjaGFyICop IG9idWZfYWxsb2Mob3V0LCBzaXplKTsKPj4gZGlmZiAtLWdpdCBhL3Rlc3Qvc3FsL2lwcm90by5y ZXN1bHQgYi90ZXN0L3NxbC9pcHJvdG8ucmVzdWx0Cj4+IGluZGV4IGQwNzdlZTguLmYyMjk0Mjcg MTAwNjQ0Cj4+IC0tLSBhL3Rlc3Qvc3FsL2lwcm90by5yZXN1bHQKPj4gKysrIGIvdGVzdC9zcWwv aXByb3RvLnJlc3VsdAo+PiBAQCAtNzczLDYgKzc3Myw0NyBAQCBjbjpleGVjdXRlKCdkcm9wIHRh YmxlIHRlc3QnKQo+PiAgwqBjbjpjbG9zZSgpCj4+ICDCoC0tLQo+PiAgwqAuLi4KPj4gKy0tCj4+ ICstLSBTb21lIGNvbW1hbmRzLCBlLmcuIEVYUExBSU4sIGNvdWxkIGxlYWQgdG8gc2VnZmF1bHQg YmVjYXVzZSBpdAo+PiArLS0gZG9lcyBub3Qgc2VuZCBjb2x1bW4gZGF0YSB0eXBlLCBidXQgbG9v a3MgbGlrZSBEUUwuIE5ldGJveCBoYWQKPj4gKy0tIGJlZW4gdHJ5aW5nIHRvIGRlY29kZSB0eXBl IGZvciBhbnkgRFFMLgo+PiArLS0KPj4gK2NuID0gcmVtb3RlLmNvbm5lY3QoYm94LmNmZy5saXN0 ZW4pCj4+ICstLS0KPj4gKy4uLgo+PiArLS0gU2VnbWVudGF0aW9uIGZhdWx0IHdoZW4gRVhQTEFJ TiBleGVjdXRlZCB1c2luZyBuZXQuYm94Lgo+PiArXyA9IGNuOmV4ZWN1dGUoIkVYUExBSU4gU0VM RUNUIDE7IikKPj4gKy0tLQo+PiArLi4uCj4+ICstLSBTZWdtZW50YXRpb24gZmF1bHQgd2hlbiBQ UkFHTUEgVEFCTEVfSU5GTygpIGV4ZWN1dGVkIHVzaW5nCj4+ICstLSBuZXQuYm94Lgo+PiArYm94 LnNxbC5leGVjdXRlKCdDUkVBVEUgVEFCTEUgdGVzdCAoaWQgSU5UIFBSSU1BUlkgS0VZKScpCj4+ ICstLS0KPj4gKy4uLgo+PiArY246ZXhlY3V0ZSgiUFJBR01BIFRBQkxFX0lORk8odGVzdCk7IikK Pj4gKy0tLQo+PiArLSBtZXRhZGF0YToKPj4gK8KgIC0gbmFtZTogY2lkCj4+ICvCoMKgwqAgdHlw ZTogVU5LTk9XTgo+PiArwqAgLSBuYW1lOiBuYW1lCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+ PiArwqAgLSBuYW1lOiB0eXBlCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBuYW1l OiBub3RudWxsCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBuYW1lOiBkZmx0X3Zh bHVlCj4+ICvCoMKgwqAgdHlwZTogVU5LTk9XTgo+PiArwqAgLSBuYW1lOiBwawo+PiArwqDCoMKg IHR5cGU6IFVOS05PV04KPj4gK8KgIHJvd3M6Cj4+ICvCoCAtIFswLCAnSUQnLCAnaW50ZWdlcics IDEsIG51bGwsIDFdCj4+ICsuLi4KPj4gK2JveC5zcWwuZXhlY3V0ZSgnRFJPUCBUQUJMRSB0ZXN0 JykKPj4gKy0tLQo+PiArLi4uCj4+ICtjbjpjbG9zZSgpCj4+ICstLS0KPj4gKy4uLgo+PiAgwqBi b3guc2NoZW1hLnVzZXIucmV2b2tlKCdndWVzdCcsICdyZWFkLHdyaXRlLGV4ZWN1dGUnLCAndW5p dmVyc2UnKQo+PiAgwqAtLS0KPj4gIMKgLi4uCj4+IGRpZmYgLS1naXQgYS90ZXN0L3NxbC9pcHJv dG8udGVzdC5sdWEgYi90ZXN0L3NxbC9pcHJvdG8udGVzdC5sdWEKPj4gaW5kZXggMTQ3MGVkYS4u OWJjYzdlZiAxMDA2NDQKPj4gLS0tIGEvdGVzdC9zcWwvaXByb3RvLnRlc3QubHVhCj4+ICsrKyBi L3Rlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YQo+PiBAQCAtMjQ3LDEwICsyNDcsMjcgQEAgY246ZXhl Y3V0ZSgnZHJvcCB0YWJsZSB0ZXN0JykKPj4gCj4+ICDCoGNuOmNsb3NlKCkKPj4gCj4+ICstLQo+ PiArLS0gU29tZSBjb21tYW5kcywgZS5nLiBFWFBMQUlOLCBjb3VsZCBsZWFkIHRvIHNlZ2ZhdWx0 IGJlY2F1c2UgaXQKPj4gKy0tIGRvZXMgbm90IHNlbmQgY29sdW1uIGRhdGEgdHlwZSwgYnV0IGxv b2tzIGxpa2UgRFFMLiBOZXRib3ggaGFkCj4+ICstLSBiZWVuIHRyeWluZyB0byBkZWNvZGUgdHlw ZSBmb3IgYW55IERRTC4KPj4gKy0tCj4+ICtjbiA9IHJlbW90ZS5jb25uZWN0KGJveC5jZmcubGlz dGVuKQo+PiArCj4+ICstLSBTZWdtZW50YXRpb24gZmF1bHQgd2hlbiBFWFBMQUlOIGV4ZWN1dGVk IHVzaW5nIG5ldC5ib3guCj4+ICtfID0gY246ZXhlY3V0ZSgiRVhQTEFJTiBTRUxFQ1QgMTsiKQo+ PiArCj4+ICstLSBTZWdtZW50YXRpb24gZmF1bHQgd2hlbiBQUkFHTUEgVEFCTEVfSU5GTygpIGV4 ZWN1dGVkIHVzaW5nCj4+ICstLSBuZXQuYm94Lgo+PiArYm94LnNxbC5leGVjdXRlKCdDUkVBVEUg VEFCTEUgdGVzdCAoaWQgSU5UIFBSSU1BUlkgS0VZKScpCj4+ICtjbjpleGVjdXRlKCJQUkFHTUEg VEFCTEVfSU5GTyh0ZXN0KTsiKQo+PiArYm94LnNxbC5leGVjdXRlKCdEUk9QIFRBQkxFIHRlc3Qn KQo+PiArCj4+ICtjbjpjbG9zZSgpCj4+ICsKPj4gIMKgYm94LnNjaGVtYS51c2VyLnJldm9rZSgn Z3Vlc3QnLCAncmVhZCx3cml0ZSxleGVjdXRlJywgJ3VuaXZlcnNlJykKPj4gIMKgYm94LnNjaGVt YS51c2VyLnJldm9rZSgnZ3Vlc3QnLCAnY3JlYXRlJywgJ3NwYWNlJykKPj4gIMKgc3BhY2UgPSBu aWwKPj4gCj4+ICDCoC0tIENsZWFudXAgeGxvZwo+PiAgwqBib3guc25hcHNob3QoKQo+PiAtCj4+ IAoKCi0tIDxici8+0JzQtdGA0LPQtdC9INCY0LzQtdC10LIK ----ALT--PyMaP9bzyDpVSPaHv648tn6DpVpjUf2S1542920122 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPkFmdGVyIGRpc2N1c3Npb24gd2UgZGVjaWRlZCB0aGF0IHRoaXMgcGF0Y2gg d2lsbCBzZXJ2ZSB1czxicj5wYXJ0IG9mIHBhdGNoLXNldCB0aGF0IHNob3VsZCBjbG9zZSBuZXds eSBmaWxlZCBidWc6PGJyPmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29sL2lz c3Vlcy8zODMyPGJyPjxicj5UaGUgbWFpbiBJZGVhIGJlaGluZCB0aGlzIHRpY2tldCBpcyB0aGF0 IGFueSBzdGF0ZW1lbnQ8YnI+c2hvdWxkIHJldHVybiBjb2x1bW4gdHlwZSBmb3Igd2hlbiBpdCBy ZXR1cm5zIGNvbHVtbiBuYW1lLjxicj5BbmQgdGhpcyB0aWNrZXQgYWxsb3cgdXMgdG8gZmluZCBh biBlcnJvciB3aXRob3V0IGZhbGxpbmc8YnI+aW50byBTRUdNRU5UQVRJT04gRkFVTFQgb3IgcmV0 dXJuaW5nIGxlc3MgbWV0YWRhdGEuPGJyPjxicj7Qp9C10YLQstC10YDQsywgMjIg0L3QvtGP0LHR gNGPIDIwMTgsIDIxOjMxICswMzowMCDQvtGCIFZsYWRpc2xhdiBTaHBpbGV2b3kgJmx0O3Yuc2hw aWxldm95QHRhcmFudG9vbC5vcmcmZ3Q7Ojxicj48YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxl ZnQ6MXB4IHNvbGlkICMwODU3QTY7IG1hcmdpbjoxMHB4OyBwYWRkaW5nOjAgMCAwIDEwcHg7Ij4K CTxicj4KCTxkaXYgaWQ9IiI+CgoKCgoKCjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNn LW1zZyI+Cgk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+CiAJPGRpdj4KCQk8YmFzZSB0 YXJnZXQ9Il9zZWxmIiBocmVmPSJodHRwczovL2UubWFpbC5ydS8iPgoJCQogICAgICAgICAgICA8 ZGl2IGlkPSJzdHlsZV8xNTQyOTExNDc5MDAwMDAwMDQ0MF9CT0RZIj5JdCB3YXMganVzdCBhIHF1 ZXN0aW9uLCAid2h5IGRpZCB5b3UgZGVjaWRlIHRvIGRvIG5vdDxicj4Kc2VuZCB0eXBlIi4gSXQg d2FzIG5vdCBuZWNlc3NhcnkgdG8gc3RhcnQgc2VuZGluZyBVTktOT1dOLiBJPGJyPgp0aGluaywg dGhhdCB1bmtub3duIHR5cGUgc2hvdWxkIGJlIHNlbnQgbmV2ZXIuPGJyPgo8YnI+Ck9uIDIyLzEx LzIwMTggMjE6MDgsIEltZWV2IE1lcmdlbiB3cm90ZTo8YnI+CiZndDsgSGkhIFRoYW5rIHlvdSBm b3IgcmV2aWV3ISBEaWZmIGJldHdlZW4gdmVyc2lvbnMgYW5kIG5ldyBwYXRjaDxicj4KJmd0OyBi ZWxvdy48YnI+CiZndDsgPGJyPgomZ3Q7IE9uIDExLzE5LzE4IDg6MjcgUE0sIG4ucGV0dGlrIHdy b3RlOjxicj4KJmd0OyA8YnI+CiZndDsmZ3Q7Jmd0OyBFWFBMQUlOIGVudm9rZXMgU0VHTUVOVEFU SU9OIEZBVUxUIHdoZW4gYmVpbmcgZXhlY3V0ZWQgdGhyb3VnaDxicj4KJmd0OyZndDsgVHlwbzog aW52b2tlcy48YnI+CiZndDsmZ3Q7PGJyPgomZ3Q7Jmd0OyZndDsgbmV0LmJveC4gSXQgaGFwcGVu cyBkdWUgdG8gY29sdW1uIHR5cGUgb2YgdGhlIHJlc3VsdCBvZiB0aGlzPGJyPgomZ3Q7Jmd0OyZn dDsgZnVuY3Rpb24gYmVpbmcgTlVMTC48YnI+CiZndDsmZ3Q7IEnigJl2ZSBjaGVja2VkIGFuZCBu b3Qgb25seSBFWFBMQUlOIHJlc3VsdHMsIGJ1dCBhbHNvIEVYUExBSU4gUVVFUlkgUExBTiw8YnI+ CiZndDsmZ3Q7IHNldmVyYWwgcHJhZ21hcyAoZm9yIGluc3RhbmNlLCBwcmFnbWEgdGFibGVfaW5m bygpKSBldGMuIFNvLCBpbml0aWFsbHkgcHJvYmxlbTxicj4KJmd0OyZndDsgd2FzIG5vdCBvbmx5 IGluIEVYUExBSU4gc3RhdGVtZW50LiBQbGVhc2UgZXhwb3NlZCBjb21taXQgbWVzc2FnZSBhbmQ8 YnI+CiZndDsmZ3Q7IGFkZCB0ZXN0cyBvbiBvdGhlciBjYXNlcy48YnI+CiZndDsmZ3Q7PGJyPgom Z3Q7Jmd0OyBBbHNvLCB3aHkgZGlkIHlvdSBkZWNpZGUgdG8gYXZvaWQgc2VuZGluZyB0eXBlIGF0 IGFsbCwgaW5zdGVhZCBvZiBzZW5kaW5nPGJyPgomZ3Q7Jmd0OyBVTktOT1dOIGZvciBleGFtcGxl Pzxicj4KJmd0OyA8YnI+CiZndDsgKkRpZmYgYmV0d2VlbiB2ZXJzaW9uczoqPGJyPgomZ3Q7IDxi cj4KJmd0OyBkaWZmIC0tZ2l0IGEvc3JjL2JveC9leGVjdXRlLmMgYi9zcmMvYm94L2V4ZWN1dGUu Yzxicj4KJmd0OyBpbmRleCA1Yjc0N2NmLi5jZDgwOWY4IDEwMDY0NDxicj4KJmd0OyAtLS0gYS9z cmMvYm94L2V4ZWN1dGUuYzxicj4KJmd0OyArKysgYi9zcmMvYm94L2V4ZWN1dGUuYzxicj4KJmd0 OyBAQCAtNTI5LDYgKzUyOSw5IEBAIHNxbF9nZXRfZGVzY3JpcHRpb24oc3RydWN0IHNxbGl0ZTNf c3RtdCAqc3RtdCwgc3RydWN0IG9idWYgKm91dCw8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIC0xOzxicj4KJmd0OyA8YnI+CiZndDsg ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBmb3IgKGludCBpID0gMDsgaSAmbHQ7IGNvbHVtbl9j b3VudDsgKytpKSB7PGJyPgomZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5i c3A7IHNpemVfdCBzaXplID0gbXBfc2l6ZW9mX21hcCgyKSArPGJyPgomZ3Q7ICsmbmJzcDsmbmJz cDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgbXBfc2l6ZW9mX3VpbnQoSVBST1RPX0ZJRUxEX05BTUUpICs8 YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5i c3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBtcF9zaXplb2ZfdWludChJ UFJPVE9fRklFTERfVFlQRSk7PGJyPgomZ3Q7ICAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5i c3A7Jm5ic3A7Jm5ic3A7IGNvbnN0IGNoYXIgKm5hbWUgPSBzcWxpdGUzX2NvbHVtbl9uYW1lKHN0 bXQsIGkpOzxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZu YnNwOyBjb25zdCBjaGFyICp0eXBlID0gc3FsaXRlM19jb2x1bW5fZGF0YXR5cGUoc3RtdCwgaSk7 PGJyPgomZ3Q7ICAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IC8q PGJyPgomZ3Q7IEBAIC01MzcsMjcgKzU0MCwyMCBAQCBzcWxfZ2V0X2Rlc2NyaXB0aW9uKHN0cnVj dCBzcWxpdGUzX3N0bXQgKnN0bXQsIHN0cnVjdCBvYnVmICpvdXQsPGJyPgomZ3Q7ICAmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyogY29sdW1uX25hbWUg c2ltcGx5IHJldHVybnMgdGhlbS48YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAm bmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Ki88YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgYXNzZXJ0KG5hbWUgIT0gTlVMTCk7PGJyPgomZ3Q7IC0m bmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IHNpemVfdCBzaXplID0gbXBfc2l6 ZW9mX3VpbnQoSVBST1RPX0ZJRUxEX05BTUUpICs8YnI+CiZndDsgLSZuYnNwOyZuYnNwOyZuYnNw OyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyBtcF9zaXplb2Zfc3RyKHN0cmxlbihuYW1lKSk7PGJyPgomZ3Q7IC0mbmJz cDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IGlmICh0eXBlICE9IE5VTEwpIHs8YnI+ CiZndDsgLSZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7 Jm5ic3A7IHNpemUgKz0gbXBfc2l6ZW9mX21hcCgyKSArPGJyPgomZ3Q7IC0mbmJzcDsmbmJzcDsm bmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsm bmJzcDsgbXBfc2l6ZW9mX3VpbnQoSVBST1RPX0ZJRUxEX1RZUEUpICs8YnI+CiZndDsgLSZuYnNw OyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNw OyZuYnNwOyZuYnNwOyBtcF9zaXplb2Zfc3RyKHN0cmxlbih0eXBlKSk7PGJyPgomZ3Q7IC0mbmJz cDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IH0gZWxzZSB7PGJyPgomZ3Q7IC0mbmJz cDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBzaXpl ICs9IG1wX3NpemVvZl9tYXAoMSk7PGJyPgomZ3Q7IC0mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7 Jm5ic3A7Jm5ic3A7IH08YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsm bmJzcDsgaWYgKHR5cGUgPT0gTlVMTCk8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJz cDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGUgPSAiVU5LTk9XTiI7PGJyPgom Z3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IHNpemUgKz0gbXBfc2l6 ZW9mX3N0cihzdHJsZW4obmFtZSkpOzxicj4KJmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNw OyZuYnNwOyZuYnNwOyBzaXplICs9IG1wX3NpemVvZl9zdHIoc3RybGVuKHR5cGUpKTs8YnI+CiZn dDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgY2hhciAqcG9z ID0gKGNoYXIgKikgb2J1Zl9hbGxvYyhvdXQsIHNpemUpOzxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBpZiAocG9zID09IE5VTEwpIHs8YnI+CiZn dDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5i c3A7Jm5ic3A7IGRpYWdfc2V0KE91dE9mTWVtb3J5LCBzaXplLCAib2J1Zl9hbGxvYyIsICJwb3Mi KTs8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsg Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiAtMTs8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4KJmd0OyAtJm5ic3A7Jm5ic3A7Jm5ic3A7 ICZuYnNwOyZuYnNwOyZuYnNwOyBwb3MgPSBtcF9lbmNvZGVfbWFwKHBvcywgMSArICh0eXBlICE9 IE5VTEwpKTs8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsg cG9zID0gbXBfZW5jb2RlX21hcChwb3MsIDIpOzxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBwb3MgPSBtcF9lbmNvZGVfdWludChwb3MsIElQUk9U T19GSUVMRF9OQU1FKTs8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsm bmJzcDsmbmJzcDsgcG9zID0gbXBfZW5jb2RlX3N0cihwb3MsIG5hbWUsIHN0cmxlbihuYW1lKSk7 PGJyPgomZ3Q7IC0mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IGlmICh0eXBl ICE9IE5VTEwpIHs8YnI+CiZndDsgLSZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJz cDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IHBvcyA9IG1wX2VuY29kZV91aW50KHBvcywgSVBST1RPX0ZJ RUxEX1RZUEUpOzxicj4KJmd0OyAtJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNw OyAmbmJzcDsmbmJzcDsmbmJzcDsgcG9zID0gbXBfZW5jb2RlX3N0cihwb3MsIHR5cGUsIHN0cmxl bih0eXBlKSk7PGJyPgomZ3Q7IC0mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7 IH08YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgcG9zID0g bXBfZW5jb2RlX3VpbnQocG9zLCBJUFJPVE9fRklFTERfVFlQRSk7PGJyPgomZ3Q7ICsmbmJzcDsm bmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IHBvcyA9IG1wX2VuY29kZV9zdHIocG9zLCB0 eXBlLCBzdHJsZW4odHlwZSkpOzxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08 YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gMDs8YnI+CiZndDsgICZu YnNwO308YnI+CiZndDsgZGlmZiAtLWdpdCBhL3NyYy9ib3gvbHVhL25ldF9ib3guYyBiL3NyYy9i b3gvbHVhL25ldF9ib3guYzxicj4KJmd0OyBpbmRleCAzNDJjNmE3Li5jNzA2M2Q5IDEwMDY0NDxi cj4KJmd0OyAtLS0gYS9zcmMvYm94L2x1YS9uZXRfYm94LmM8YnI+CiZndDsgKysrIGIvc3JjL2Jv eC9sdWEvbmV0X2JveC5jPGJyPgomZ3Q7IEBAIC02NDQsNyArNjQ0LDggQEAgbmV0Ym94X2RlY29k ZV9tZXRhZGF0YShzdHJ1Y3QgbHVhX1N0YXRlICpMLCBjb25zdCBjaGFyICoqZGF0YSk8YnI+CiZn dDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsdWFfY3JlYXRldGFibGUoTCwgY291bnQsIDAp Ozxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGZvciAodWludDMyX3QgaSA9IDA7 IGkgJmx0OyBjb3VudDsgKytpKSB7PGJyPgomZ3Q7ICAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg Jm5ic3A7Jm5ic3A7Jm5ic3A7IHVpbnQzMl90IG1hcF9zaXplID0gbXBfZGVjb2RlX21hcChkYXRh KTs8YnI+CiZndDsgLSZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgYXNzZXJ0 KG1hcF9zaXplID09IDEgfHwgbWFwX3NpemUgPT0gMik7PGJyPgomZ3Q7ICsmbmJzcDsmbmJzcDsm bmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IGFzc2VydChtYXBfc2l6ZSA9PSAyKTs8YnI+CiZndDsg KyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgKHZvaWQpIG1hcF9zaXplOzxi cj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyB1aW50 MzJfdCBrZXkgPSBtcF9kZWNvZGVfdWludChkYXRhKTs8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgYXNzZXJ0KGtleSA9PSBJUFJPVE9fRklFTERf TkFNRSk7PGJyPgomZ3Q7ICAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5i c3A7ICh2b2lkKSBrZXk7PGJyPgomZ3Q7IEBAIC02NTMsMTMgKzY1NCwxMSBAQCBuZXRib3hfZGVj b2RlX21ldGFkYXRhKHN0cnVjdCBsdWFfU3RhdGUgKkwsIGNvbnN0IGNoYXIgKipkYXRhKTxicj4K Jmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBjb25zdCBj aGFyICpzdHIgPSBtcF9kZWNvZGVfc3RyKGRhdGEsICZhbXA7bGVuKTs8YnI+CiZndDsgICZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgbHVhX3B1c2hsc3RyaW5nKEws IHN0ciwgbGVuKTs8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJz cDsmbmJzcDsgbHVhX3NldGZpZWxkKEwsIC0yLCAibmFtZSIpOzxicj4KJmd0OyAtJm5ic3A7Jm5i c3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBpZiAobWFwX3NpemUgPT0gMikgezxicj4KJmd0 OyAtJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJz cDsga2V5ID0gbXBfZGVjb2RlX3VpbnQoZGF0YSk7PGJyPgomZ3Q7IC0mbmJzcDsmbmJzcDsmbmJz cDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBhc3NlcnQoa2V5ID09IElQ Uk9UT19GSUVMRF9UWVBFKTs8YnI+CiZndDsgLSZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJz cDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IGNvbnN0IGNoYXIgKnR5cGUgPSBtcF9kZWNvZGVf c3RyKGRhdGEsICZhbXA7bGVuKTs8YnI+CiZndDsgLSZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsm bmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IGx1YV9wdXNobHN0cmluZyhMLCB0eXBlLCBs ZW4pOzxicj4KJmd0OyAtJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJz cDsmbmJzcDsmbmJzcDsgbHVhX3NldGZpZWxkKEwsIC0yLCAidHlwZSIpOzxicj4KJmd0OyAtJm5i c3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyB9PGJyPgomZ3Q7ICsmbmJzcDsmbmJz cDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IGtleSA9IG1wX2RlY29kZV91aW50KGRhdGEpOzxi cj4KJmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBhc3NlcnQoa2V5 ID09IElQUk9UT19GSUVMRF9UWVBFKTs8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJz cDsmbmJzcDsmbmJzcDsgY29uc3QgY2hhciAqdHlwZSA9IG1wX2RlY29kZV9zdHIoZGF0YSwgJmFt cDtsZW4pOzxicj4KJmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBs dWFfcHVzaGxzdHJpbmcoTCwgdHlwZSwgbGVuKTs8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNw OyAmbmJzcDsmbmJzcDsmbmJzcDsgbHVhX3NldGZpZWxkKEwsIC0yLCAidHlwZSIpOzxicj4KJmd0 OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyBsdWFfcmF3c2V0 aShMLCAtMiwgaSArIDEpOzxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08YnI+ CiZndDsgICZuYnNwO308YnI+CiZndDsgZGlmZiAtLWdpdCBhL3Rlc3Qvc3FsL2lwcm90by5yZXN1 bHQgYi90ZXN0L3NxbC9pcHJvdG8ucmVzdWx0PGJyPgomZ3Q7IGluZGV4IDMxZTVkMmUuLmYyMjk0 MjcgMTAwNjQ0PGJyPgomZ3Q7IC0tLSBhL3Rlc3Qvc3FsL2lwcm90by5yZXN1bHQ8YnI+CiZndDsg KysrIGIvdGVzdC9zcWwvaXByb3RvLnJlc3VsdDxicj4KJmd0OyBAQCAtNzc0LDkgKzc3NCw5IEBA IGNuOmNsb3NlKCk8YnI+CiZndDsgICZuYnNwOy0tLTxicj4KJmd0OyAgJm5ic3A7Li4uPGJyPgom Z3Q7ICAmbmJzcDstLTxicj4KJmd0OyAtLS0gRVhQTEFJTiBjb3VsZCBsZWFkIHRvIHNlZ2ZhdWx0 IGJlY2F1c2UgaXQgZG9lcyBub3Qgc2VuZCBjb2x1bW48YnI+CiZndDsgLS0tIGRhdGEgdHlwZSwg YnV0IGxvb2tzIGxpa2UgRFFMLiBOZXRib3ggaGFkIGJlZW4gdHJ5aW5nIHRvIGRlY29kZTxicj4K Jmd0OyAtLS0gdHlwZSBmb3IgYW55IERRTC48YnI+CiZndDsgKy0tIFNvbWUgY29tbWFuZHMsIGUu Zy4gRVhQTEFJTiwgY291bGQgbGVhZCB0byBzZWdmYXVsdCBiZWNhdXNlIGl0PGJyPgomZ3Q7ICst LSBkb2VzIG5vdCBzZW5kIGNvbHVtbiBkYXRhIHR5cGUsIGJ1dCBsb29rcyBsaWtlIERRTC4gTmV0 Ym94IGhhZDxicj4KJmd0OyArLS0gYmVlbiB0cnlpbmcgdG8gZGVjb2RlIHR5cGUgZm9yIGFueSBE UUwuPGJyPgomZ3Q7ICAmbmJzcDstLTxicj4KJmd0OyAgJm5ic3A7Y24gPSByZW1vdGUuY29ubmVj dChib3guY2ZnLmxpc3Rlbik8YnI+CiZndDsgICZuYnNwOy0tLTxicj4KJmd0OyBAQCAtNzg1LDYg Kzc4NSwzMiBAQCBjbiA9IHJlbW90ZS5jb25uZWN0KGJveC5jZmcubGlzdGVuKTxicj4KJmd0OyAg Jm5ic3A7XyA9IGNuOmV4ZWN1dGUoIkVYUExBSU4gU0VMRUNUIDE7Iik8YnI+CiZndDsgICZuYnNw Oy0tLTxicj4KJmd0OyAgJm5ic3A7Li4uPGJyPgomZ3Q7ICstLSBTZWdtZW50YXRpb24gZmF1bHQg d2hlbiBQUkFHTUEgVEFCTEVfSU5GTygpIGV4ZWN1dGVkIHVzaW5nPGJyPgomZ3Q7ICstLSBuZXQu Ym94Ljxicj4KJmd0OyArYm94LnNxbC5leGVjdXRlKCdDUkVBVEUgVEFCTEUgdGVzdCAoaWQgSU5U IFBSSU1BUlkgS0VZKScpPGJyPgomZ3Q7ICstLS08YnI+CiZndDsgKy4uLjxicj4KJmd0OyArY246 ZXhlY3V0ZSgiUFJBR01BIFRBQkxFX0lORk8odGVzdCk7Iik8YnI+CiZndDsgKy0tLTxicj4KJmd0 OyArLSBtZXRhZGF0YTo8YnI+CiZndDsgKyZuYnNwOyAtIG5hbWU6IGNpZDxicj4KJmd0OyArJm5i c3A7Jm5ic3A7Jm5ic3A7IHR5cGU6IFVOS05PV048YnI+CiZndDsgKyZuYnNwOyAtIG5hbWU6IG5h bWU8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlOiBVTktOT1dOPGJyPgomZ3Q7ICsm bmJzcDsgLSBuYW1lOiB0eXBlPGJyPgomZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZTogVU5L Tk9XTjxicj4KJmd0OyArJm5ic3A7IC0gbmFtZTogbm90bnVsbDxicj4KJmd0OyArJm5ic3A7Jm5i c3A7Jm5ic3A7IHR5cGU6IFVOS05PV048YnI+CiZndDsgKyZuYnNwOyAtIG5hbWU6IGRmbHRfdmFs dWU8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlOiBVTktOT1dOPGJyPgomZ3Q7ICsm bmJzcDsgLSBuYW1lOiBwazxicj4KJmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGU6IFVOS05P V048YnI+CiZndDsgKyZuYnNwOyByb3dzOjxicj4KJmd0OyArJm5ic3A7IC0gWzAsICdJRCcsICdp bnRlZ2VyJywgMSwgbnVsbCwgMV08YnI+CiZndDsgKy4uLjxicj4KJmd0OyArYm94LnNxbC5leGVj dXRlKCdEUk9QIFRBQkxFIHRlc3QnKTxicj4KJmd0OyArLS0tPGJyPgomZ3Q7ICsuLi48YnI+CiZn dDsgICZuYnNwO2NuOmNsb3NlKCk8YnI+CiZndDsgICZuYnNwOy0tLTxicj4KJmd0OyAgJm5ic3A7 Li4uPGJyPgomZ3Q7IGRpZmYgLS1naXQgYS90ZXN0L3NxbC9pcHJvdG8udGVzdC5sdWEgYi90ZXN0 L3NxbC9pcHJvdG8udGVzdC5sdWE8YnI+CiZndDsgaW5kZXggYTBmMGYxNS4uOWJjYzdlZiAxMDA2 NDQ8YnI+CiZndDsgLS0tIGEvdGVzdC9zcWwvaXByb3RvLnRlc3QubHVhPGJyPgomZ3Q7ICsrKyBi L3Rlc3Qvc3FsL2lwcm90by50ZXN0Lmx1YTxicj4KJmd0OyBAQCAtMjQ4LDE1ICsyNDgsMjEgQEAg Y246ZXhlY3V0ZSgnZHJvcCB0YWJsZSB0ZXN0Jyk8YnI+CiZndDsgICZuYnNwO2NuOmNsb3NlKCk8 YnI+CiZndDsgPGJyPgomZ3Q7ICAmbmJzcDstLTxicj4KJmd0OyAtLS0gRVhQTEFJTiBjb3VsZCBs ZWFkIHRvIHNlZ2ZhdWx0IGJlY2F1c2UgaXQgZG9lcyBub3Qgc2VuZCBjb2x1bW48YnI+CiZndDsg LS0tIGRhdGEgdHlwZSwgYnV0IGxvb2tzIGxpa2UgRFFMLiBOZXRib3ggaGFkIGJlZW4gdHJ5aW5n IHRvIGRlY29kZTxicj4KJmd0OyAtLS0gdHlwZSBmb3IgYW55IERRTC48YnI+CiZndDsgKy0tIFNv bWUgY29tbWFuZHMsIGUuZy4gRVhQTEFJTiwgY291bGQgbGVhZCB0byBzZWdmYXVsdCBiZWNhdXNl IGl0PGJyPgomZ3Q7ICstLSBkb2VzIG5vdCBzZW5kIGNvbHVtbiBkYXRhIHR5cGUsIGJ1dCBsb29r cyBsaWtlIERRTC4gTmV0Ym94IGhhZDxicj4KJmd0OyArLS0gYmVlbiB0cnlpbmcgdG8gZGVjb2Rl IHR5cGUgZm9yIGFueSBEUUwuPGJyPgomZ3Q7ICAmbmJzcDstLTxicj4KJmd0OyAgJm5ic3A7Y24g PSByZW1vdGUuY29ubmVjdChib3guY2ZnLmxpc3Rlbik8YnI+CiZndDsgPGJyPgomZ3Q7ICAmbmJz cDstLSBTZWdtZW50YXRpb24gZmF1bHQgd2hlbiBFWFBMQUlOIGV4ZWN1dGVkIHVzaW5nIG5ldC5i b3guPGJyPgomZ3Q7ICAmbmJzcDtfID0gY246ZXhlY3V0ZSgiRVhQTEFJTiBTRUxFQ1QgMTsiKTxi cj4KJmd0OyA8YnI+CiZndDsgKy0tIFNlZ21lbnRhdGlvbiBmYXVsdCB3aGVuIFBSQUdNQSBUQUJM RV9JTkZPKCkgZXhlY3V0ZWQgdXNpbmc8YnI+CiZndDsgKy0tIG5ldC5ib3guPGJyPgomZ3Q7ICti b3guc3FsLmV4ZWN1dGUoJ0NSRUFURSBUQUJMRSB0ZXN0IChpZCBJTlQgUFJJTUFSWSBLRVkpJyk8 YnI+CiZndDsgK2NuOmV4ZWN1dGUoIlBSQUdNQSBUQUJMRV9JTkZPKHRlc3QpOyIpPGJyPgomZ3Q7 ICtib3guc3FsLmV4ZWN1dGUoJ0RST1AgVEFCTEUgdGVzdCcpPGJyPgomZ3Q7ICs8YnI+CiZndDsg ICZuYnNwO2NuOmNsb3NlKCk8YnI+CiZndDsgPGJyPgomZ3Q7ICAmbmJzcDtib3guc2NoZW1hLnVz ZXIucmV2b2tlKCdndWVzdCcsICdyZWFkLHdyaXRlLGV4ZWN1dGUnLCAndW5pdmVyc2UnKTxicj4K Jmd0OyA8YnI+CiZndDsgPGJyPgomZ3Q7ICpOZXcgdmVyc2lvbjoqPGJyPgomZ3Q7IDxicj4KJmd0 OyBjb21taXQgMjlkZGUwMzY1OTIyYmZjZWMwZDE1OWIzNmM2NDU0ODU0YWRmMzRmNzxicj4KJmd0 OyBBdXRob3I6IE1lcmdlbiBJbWVldiAmbHQ7PGEgaHJlZj0ibWFpbHRvOmltZWV2bWFAZ21haWwu Y29tIj5pbWVldm1hQGdtYWlsLmNvbTwvYT4mZ3Q7PGJyPgomZ3Q7IERhdGU6Jm5ic3A7Jm5ic3A7 IEZyaSBOb3YgMTYgMTM6MzQ6NDYgMjAxOCArMDMwMDxicj4KJmd0OyA8YnI+CiZndDsgICZuYnNw OyZuYnNwOyZuYnNwOyBzcWw6IFByaW50IGNvbHVtbiB0eXBlIGV2ZW4gaWYgaXQgaXMgTlVMTDxi cj4KJmd0OyA8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyBTb21lIGNvbW1hbmRzLCBlLmcu IEVYUExBSU4sIGludm9rZXMgU0VHTUVOVEFUSU9OIEZBVUxUIHdoZW4gYmVpbmc8YnI+CiZndDsg ICZuYnNwOyZuYnNwOyZuYnNwOyBleGVjdXRlZCB0aHJvdWdoIG5ldC5ib3guIEl0IGhhcHBlbnMg ZHVlIHRvIGNvbHVtbiB0eXBlIG9mIHRoZTxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7IHJl c3VsdCBvZiB0aGlzIGZ1bmN0aW9uIGJlaW5nIE5VTEwuIFRoaXMgcGF0Y2ggYWRkcyBjaGVja3Mg Zm9yPGJyPgomZ3Q7ICAmbmJzcDsmbmJzcDsmbmJzcDsgcmVjZWl2ZWQgY29sdW1uIHR5cGUuPGJy PgomZ3Q7IDxicj4KJmd0OyBkaWZmIC0tZ2l0IGEvc3JjL2JveC9leGVjdXRlLmMgYi9zcmMvYm94 L2V4ZWN1dGUuYzxicj4KJmd0OyBpbmRleCBlNDUwNDQ0Li5jZDgwOWY4IDEwMDY0NDxicj4KJmd0 OyAtLS0gYS9zcmMvYm94L2V4ZWN1dGUuYzxicj4KJmd0OyArKysgYi9zcmMvYm94L2V4ZWN1dGUu Yzxicj4KJmd0OyBAQCAtNTQwLDYgKzU0MCw4IEBAIHNxbF9nZXRfZGVzY3JpcHRpb24oc3RydWN0 IHNxbGl0ZTNfc3RtdCAqc3RtdCwgc3RydWN0IG9idWYgKm91dCw8YnI+CiZndDsgICZuYnNwOyZu YnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7ICogY29sdW1uX25hbWUgc2ltcGx5 IHJldHVybnMgdGhlbS48YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsm bmJzcDsgJm5ic3A7ICovPGJyPgomZ3Q7ICAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7 Jm5ic3A7ICZuYnNwO2Fzc2VydChuYW1lICE9IE5VTEwpOzxicj4KJmd0OyArJm5ic3A7Jm5ic3A7 ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDtpZiAodHlwZSA9PSBOVUxMKTxicj4KJmd0OyArJm5i c3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7dHlw ZSA9ICJVTktOT1dOIjs8YnI+CiZndDsgICZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsm bmJzcDsgJm5ic3A7c2l6ZSArPSBtcF9zaXplb2Zfc3RyKHN0cmxlbihuYW1lKSk7PGJyPgomZ3Q7 ICAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO3NpemUgKz0gbXBf c2l6ZW9mX3N0cihzdHJsZW4odHlwZSkpOzxicj4KJmd0OyAgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZu YnNwOyZuYnNwOyZuYnNwOyAmbmJzcDtjaGFyICpwb3MgPSAoY2hhciAqKSBvYnVmX2FsbG9jKG91 dCwgc2l6ZSk7PGJyPgomZ3Q7IGRpZmYgLS1naXQgYS90ZXN0L3NxbC9pcHJvdG8ucmVzdWx0IGIv dGVzdC9zcWwvaXByb3RvLnJlc3VsdDxicj4KJmd0OyBpbmRleCBkMDc3ZWU4Li5mMjI5NDI3IDEw MDY0NDxicj4KJmd0OyAtLS0gYS90ZXN0L3NxbC9pcHJvdG8ucmVzdWx0PGJyPgomZ3Q7ICsrKyBi L3Rlc3Qvc3FsL2lwcm90by5yZXN1bHQ8YnI+CiZndDsgQEAgLTc3Myw2ICs3NzMsNDcgQEAgY246 ZXhlY3V0ZSgnZHJvcCB0YWJsZSB0ZXN0Jyk8YnI+CiZndDsgICZuYnNwO2NuOmNsb3NlKCk8YnI+ CiZndDsgICZuYnNwOy0tLTxicj4KJmd0OyAgJm5ic3A7Li4uPGJyPgomZ3Q7ICstLTxicj4KJmd0 OyArLS0gU29tZSBjb21tYW5kcywgZS5nLiBFWFBMQUlOLCBjb3VsZCBsZWFkIHRvIHNlZ2ZhdWx0 IGJlY2F1c2UgaXQ8YnI+CiZndDsgKy0tIGRvZXMgbm90IHNlbmQgY29sdW1uIGRhdGEgdHlwZSwg YnV0IGxvb2tzIGxpa2UgRFFMLiBOZXRib3ggaGFkPGJyPgomZ3Q7ICstLSBiZWVuIHRyeWluZyB0 byBkZWNvZGUgdHlwZSBmb3IgYW55IERRTC48YnI+CiZndDsgKy0tPGJyPgomZ3Q7ICtjbiA9IHJl bW90ZS5jb25uZWN0KGJveC5jZmcubGlzdGVuKTxicj4KJmd0OyArLS0tPGJyPgomZ3Q7ICsuLi48 YnI+CiZndDsgKy0tIFNlZ21lbnRhdGlvbiBmYXVsdCB3aGVuIEVYUExBSU4gZXhlY3V0ZWQgdXNp bmcgbmV0LmJveC48YnI+CiZndDsgK18gPSBjbjpleGVjdXRlKCJFWFBMQUlOIFNFTEVDVCAxOyIp PGJyPgomZ3Q7ICstLS08YnI+CiZndDsgKy4uLjxicj4KJmd0OyArLS0gU2VnbWVudGF0aW9uIGZh dWx0IHdoZW4gUFJBR01BIFRBQkxFX0lORk8oKSBleGVjdXRlZCB1c2luZzxicj4KJmd0OyArLS0g bmV0LmJveC48YnI+CiZndDsgK2JveC5zcWwuZXhlY3V0ZSgnQ1JFQVRFIFRBQkxFIHRlc3QgKGlk IElOVCBQUklNQVJZIEtFWSknKTxicj4KJmd0OyArLS0tPGJyPgomZ3Q7ICsuLi48YnI+CiZndDsg K2NuOmV4ZWN1dGUoIlBSQUdNQSBUQUJMRV9JTkZPKHRlc3QpOyIpPGJyPgomZ3Q7ICstLS08YnI+ CiZndDsgKy0gbWV0YWRhdGE6PGJyPgomZ3Q7ICsmbmJzcDsgLSBuYW1lOiBjaWQ8YnI+CiZndDsg KyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlOiBVTktOT1dOPGJyPgomZ3Q7ICsmbmJzcDsgLSBuYW1l OiBuYW1lPGJyPgomZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZTogVU5LTk9XTjxicj4KJmd0 OyArJm5ic3A7IC0gbmFtZTogdHlwZTxicj4KJmd0OyArJm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGU6 IFVOS05PV048YnI+CiZndDsgKyZuYnNwOyAtIG5hbWU6IG5vdG51bGw8YnI+CiZndDsgKyZuYnNw OyZuYnNwOyZuYnNwOyB0eXBlOiBVTktOT1dOPGJyPgomZ3Q7ICsmbmJzcDsgLSBuYW1lOiBkZmx0 X3ZhbHVlPGJyPgomZ3Q7ICsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZTogVU5LTk9XTjxicj4KJmd0 OyArJm5ic3A7IC0gbmFtZTogcGs8YnI+CiZndDsgKyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlOiBV TktOT1dOPGJyPgomZ3Q7ICsmbmJzcDsgcm93czo8YnI+CiZndDsgKyZuYnNwOyAtIFswLCAnSUQn LCAnaW50ZWdlcicsIDEsIG51bGwsIDFdPGJyPgomZ3Q7ICsuLi48YnI+CiZndDsgK2JveC5zcWwu ZXhlY3V0ZSgnRFJPUCBUQUJMRSB0ZXN0Jyk8YnI+CiZndDsgKy0tLTxicj4KJmd0OyArLi4uPGJy PgomZ3Q7ICtjbjpjbG9zZSgpPGJyPgomZ3Q7ICstLS08YnI+CiZndDsgKy4uLjxicj4KJmd0OyAg Jm5ic3A7Ym94LnNjaGVtYS51c2VyLnJldm9rZSgnZ3Vlc3QnLCAncmVhZCx3cml0ZSxleGVjdXRl JywgJ3VuaXZlcnNlJyk8YnI+CiZndDsgICZuYnNwOy0tLTxicj4KJmd0OyAgJm5ic3A7Li4uPGJy PgomZ3Q7IGRpZmYgLS1naXQgYS90ZXN0L3NxbC9pcHJvdG8udGVzdC5sdWEgYi90ZXN0L3NxbC9p cHJvdG8udGVzdC5sdWE8YnI+CiZndDsgaW5kZXggMTQ3MGVkYS4uOWJjYzdlZiAxMDA2NDQ8YnI+ CiZndDsgLS0tIGEvdGVzdC9zcWwvaXByb3RvLnRlc3QubHVhPGJyPgomZ3Q7ICsrKyBiL3Rlc3Qv c3FsL2lwcm90by50ZXN0Lmx1YTxicj4KJmd0OyBAQCAtMjQ3LDEwICsyNDcsMjcgQEAgY246ZXhl Y3V0ZSgnZHJvcCB0YWJsZSB0ZXN0Jyk8YnI+CiZndDsgPGJyPgomZ3Q7ICAmbmJzcDtjbjpjbG9z ZSgpPGJyPgomZ3Q7IDxicj4KJmd0OyArLS08YnI+CiZndDsgKy0tIFNvbWUgY29tbWFuZHMsIGUu Zy4gRVhQTEFJTiwgY291bGQgbGVhZCB0byBzZWdmYXVsdCBiZWNhdXNlIGl0PGJyPgomZ3Q7ICst LSBkb2VzIG5vdCBzZW5kIGNvbHVtbiBkYXRhIHR5cGUsIGJ1dCBsb29rcyBsaWtlIERRTC4gTmV0 Ym94IGhhZDxicj4KJmd0OyArLS0gYmVlbiB0cnlpbmcgdG8gZGVjb2RlIHR5cGUgZm9yIGFueSBE UUwuPGJyPgomZ3Q7ICstLTxicj4KJmd0OyArY24gPSByZW1vdGUuY29ubmVjdChib3guY2ZnLmxp c3Rlbik8YnI+CiZndDsgKzxicj4KJmd0OyArLS0gU2VnbWVudGF0aW9uIGZhdWx0IHdoZW4gRVhQ TEFJTiBleGVjdXRlZCB1c2luZyBuZXQuYm94Ljxicj4KJmd0OyArXyA9IGNuOmV4ZWN1dGUoIkVY UExBSU4gU0VMRUNUIDE7Iik8YnI+CiZndDsgKzxicj4KJmd0OyArLS0gU2VnbWVudGF0aW9uIGZh dWx0IHdoZW4gUFJBR01BIFRBQkxFX0lORk8oKSBleGVjdXRlZCB1c2luZzxicj4KJmd0OyArLS0g bmV0LmJveC48YnI+CiZndDsgK2JveC5zcWwuZXhlY3V0ZSgnQ1JFQVRFIFRBQkxFIHRlc3QgKGlk IElOVCBQUklNQVJZIEtFWSknKTxicj4KJmd0OyArY246ZXhlY3V0ZSgiUFJBR01BIFRBQkxFX0lO Rk8odGVzdCk7Iik8YnI+CiZndDsgK2JveC5zcWwuZXhlY3V0ZSgnRFJPUCBUQUJMRSB0ZXN0Jyk8 YnI+CiZndDsgKzxicj4KJmd0OyArY246Y2xvc2UoKTxicj4KJmd0OyArPGJyPgomZ3Q7ICAmbmJz cDtib3guc2NoZW1hLnVzZXIucmV2b2tlKCdndWVzdCcsICdyZWFkLHdyaXRlLGV4ZWN1dGUnLCAn dW5pdmVyc2UnKTxicj4KJmd0OyAgJm5ic3A7Ym94LnNjaGVtYS51c2VyLnJldm9rZSgnZ3Vlc3Qn LCAnY3JlYXRlJywgJ3NwYWNlJyk8YnI+CiZndDsgICZuYnNwO3NwYWNlID0gbmlsPGJyPgomZ3Q7 IDxicj4KJmd0OyAgJm5ic3A7LS0gQ2xlYW51cCB4bG9nPGJyPgomZ3Q7ICAmbmJzcDtib3guc25h cHNob3QoKTxicj4KJmd0OyAtPGJyPgomZ3Q7IDxicj4KPC9kaXY+CiAgICAgICAgICAgIAogICAg ICAgIAoJCTxiYXNlIHRhcmdldD0iX3NlbGYiIGhyZWY9Imh0dHBzOi8vZS5tYWlsLnJ1LyI+Cgk8 L2Rpdj4KCgkKPC9kaXY+CgoKPC9kaXY+CjwvYmxvY2txdW90ZT4KPGJyPgo8YnI+LS0gJmx0O2Jy LyZndDvQnNC10YDQs9C10L0g0JjQvNC10LXQsjxicj48L0JPRFk+PC9IVE1MPgo= ----ALT--PyMaP9bzyDpVSPaHv648tn6DpVpjUf2S1542920122--