From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f332.i.mail.ru (f332.i.mail.ru [217.69.130.197]) (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 81BC84765E3 for ; Sun, 27 Dec 2020 18:37:27 +0300 (MSK) From: =?UTF-8?B?U2VyZ2V5IE9zdGFuZXZpY2g=?= MIME-Version: 1.0 Date: Sun, 27 Dec 2020 18:37:26 +0300 Reply-To: =?UTF-8?B?U2VyZ2V5IE9zdGFuZXZpY2g=?= Message-ID: <1609083446.457548824@f332.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--29077f71c1a941d1a13787c25d2f7bd51609083446" In-Reply-To: <20201227134231.GB14702@root> References: <20201227134231.GB14702@root> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH_luajit_v2_6/7=5D_misc=3A_a?= =?utf-8?q?dd_Lua_API_for_memory_profiler?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?U2VyZ2V5IEthcGx1bg==?= Cc: =?UTF-8?B?dGFyYW50b29sLXBhdGNoZXM=?= ----ALT--29077f71c1a941d1a13787c25d2f7bd51609083446 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkxHVE0KCkJlc3QgcmVnYXJkcywKU2VyZ29zwqAKClN1bmRheSwgMjcgRGVjZW1iZXIgMjAyMCwg MTY6NDMgKzAzMDAgZnJvbSBza2FwbHVuQHRhcmFudG9vbC5vcmcgIDxza2FwbHVuQHRhcmFudG9v bC5vcmc+Ogo+Cj5IaSEKPgo+VGhhbmtzIGZvciB0aGUgcmV2aWV3IQo+Cj5PbiAyNy4xMi4yMCwg U2VyZ2V5IE9zdGFuZXZpY2ggd3JvdGU6Cj4+IEhpIQo+PiAKPj4gVGhhbmtzIGZvciB0aGUgcGF0 Y2ghCj4+IAo+PiAyIG5pdHMgYmVsb3csIExHVE0gYWZ0ZXIgdGhlIGZpeC4KPj4gCj4+IFNlcmdv cwo+PiAKPj4gCj4+ID4gT24gMjUgRGVjIDIwMjAsIGF0IDE4OjI2LCBTZXJnZXkgS2FwbHVuIDwg c2thcGx1bkB0YXJhbnRvb2wub3JnID4gd3JvdGU6Cj4+ID4gCj4+ID4gVGhpcyBwYXRjaCBpbnRy b2R1Y2VzIEx1YSBBUEkgZm9yIEx1YUpJVCBtZW1vcnkgcHJvZmlsZXIgaW1wbGVtZW50ZWQgaW4K Pj4gPiB0aGUgc2NvcGUgb2YgdGhlIHByZXZpb3VzIHBhdGNoLgo+PiA+IAo+PiA+IFByb2ZpbGVy IHJldHVybnMgc29tZSB0cnVlIHZhbHVlIGlmIHN0YXJ0ZWQvc3RvcHBlZCBzdWNjZXNzZnVsbHks Cj4+ID4gcmV0dXJucyBuaWwgb24gZmFpbHVyZSAocGx1cyBhbiBlcnJvciBtZXNzYWdlIGFzIGEg c2Vjb25kIHJlc3VsdCBhbmQgYQo+PiA+IHN5c3RlbS1kZXBlbmRlbnQgZXJyb3IgY29kZSBhcyBh IHRoaXJkIHJlc3VsdCkuCj4+ID4gSWYgTHVhSklUIGJ1aWxkIHdpdGhvdXQgbWVtb3J5IHByb2Zp bGVyIGJvdGggcmV0dXJuIGBmYWxzZWAuCj4+ICAgICAgICAgICAgXl5eXl5eIHdhcyBidWlsdAo+ Cj5DaGFuZ2VkIHRvIGBpcyBidWlsZGAuCj4KPj4gPiAKPj4gPiA8bGpfZXJybXNnLmg+IGhhdmUg YWRqdXN0ZWQgd2l0aCB0d28gbmV3IGVycm9ycwo+PiA+IFBST0ZfSVNSVU5OSU5HL1BST0ZfTk9U UlVOTklORyByZXR1cm5lZCBpbiBjYXNlIHdoZW4gcHJvZmlsZXIgaGFzCj4+ID4gc3RhcnRlZC9z dG9wcGVkIGFscmVhZHkgY29ycmVzcG9uZGluZ2x5Lgo+PiA+IAo+PiA+IFBhcnQgb2YgdGFyYW50 b29sL3RhcmFudG9vbCM1NDQyCj4+ID4gLS0tCj4+ID4gCj4+ID4gQ2hhbmdlcyBpbiB2MjoKPj4g PiAgLSBBZGRlZCBwdXNoaW5nIG9mIGVycm5vIGZvciBFUlJfUFJPRiogYW5kIEVSUk1FTQo+PiA+ ICAtIEFkZGVkIGZvcmdvdHRlbiBhc3NlcnQuCj4+ID4gCj4+ID4gc3JjL01ha2VmaWxlLmRlcCB8 ICAgNSArLQo+PiA+IHNyYy9saWJfbWlzYy5jICAgfCAxNjcgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKPj4gPiBzcmMvbGpfZXJybXNnLmggIHwgICA2ICsr Cj4+ID4gMyBmaWxlcyBjaGFuZ2VkLCAxNzYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK Pj4gPiAKPj4gPiBkaWZmIC0tZ2l0IGEvc3JjL01ha2VmaWxlLmRlcCBiL3NyYy9NYWtlZmlsZS5k ZXAKPj4gPiBpbmRleCA4YWUxNGE1Li5jM2QwOTc3IDEwMDY0NAo+PiA+IC0tLSBhL3NyYy9NYWtl ZmlsZS5kZXAKPj4gPiArKysgYi9zcmMvTWFrZWZpbGUuZGVwCj4+ID4gQEAgLTI5LDggKzI5LDkg QEAgbGliX2ppdC5vOiBsaWJfaml0LmMgbHVhLmggbHVhY29uZi5oIGxhdXhsaWIuaCBsdWFsaWIu aCBsal9vYmouaCBsal9kZWYuaCBcCj4+ID4gIGxqX3ZtLmggbGpfdm1ldmVudC5oIGxqX2xpYi5o IGx1YWppdC5oIGxqX2xpYmRlZi5oCj4+ID4gbGliX21hdGgubzogbGliX21hdGguYyBsdWEuaCBs dWFjb25mLmggbGF1eGxpYi5oIGx1YWxpYi5oIGxqX29iai5oIFwKPj4gPiAgbGpfZGVmLmggbGpf YXJjaC5oIGxqX2xpYi5oIGxqX3ZtLmggbGpfbGliZGVmLmgKPj4gPiAtbGliX21pc2MubzogbGli X21pc2MuYyBsdWEuaCBsdWFjb25mLmggbG1pc2NsaWIuaCBsal9vYmouaCBsal9kZWYuaCBsal9h cmNoLmggXAo+PiA+IC0gbGpfc3RyLmggbGpfdGFiLmggbGpfbGliLmggbGpfbGliZGVmLmgKPj4g PiArbGliX21pc2MubzogbGliX21pc2MuYyBsdWEuaCBsdWFjb25mLmggbG1pc2NsaWIuaCBsYXV4 bGliLmggbGpfb2JqLmggXAo+PiA+ICsgbGpfZGVmLmggbGpfYXJjaC5oIGxqX3N0ci5oIGxqX3Rh Yi5oIGxqX2xpYi5oIGxqX2djLmggbGpfZXJyLmggXAo+PiA+ICsgbGpfZXJybXNnLmggbGpfbWVt cHJvZi5oIGxqX2xpYmRlZi5oCj4+ID4gbGliX29zLm86IGxpYl9vcy5jIGx1YS5oIGx1YWNvbmYu aCBsYXV4bGliLmggbHVhbGliLmggbGpfb2JqLmggbGpfZGVmLmggXAo+PiA+ICBsal9hcmNoLmgg bGpfZ2MuaCBsal9lcnIuaCBsal9lcnJtc2cuaCBsal9idWYuaCBsal9zdHIuaCBsal9saWIuaCBc Cj4+ID4gIGxqX2xpYmRlZi5oCj4+ID4gZGlmZiAtLWdpdCBhL3NyYy9saWJfbWlzYy5jIGIvc3Jj L2xpYl9taXNjLmMKPj4gPiBpbmRleCA2ZjdiOWE5Li4zNmZlMjlmIDEwMDY0NAo+PiA+IC0tLSBh L3NyYy9saWJfbWlzYy5jCj4+ID4gKysrIGIvc3JjL2xpYl9taXNjLmMKPj4gPiBAQCAtOCwxMyAr OCwyMSBAQAo+PiA+ICNkZWZpbmUgbGliX21pc2NfYwo+PiA+ICNkZWZpbmUgTFVBX0xJQgo+PiA+ IAo+PiA+ICsjaW5jbHVkZSA8c3RkaW8uaD4KPj4gPiArI2luY2x1ZGUgPGVycm5vLmg+Cj4+ID4g Kwo+PiA+ICNpbmNsdWRlICJsdWEuaCIKPj4gPiAjaW5jbHVkZSAibG1pc2NsaWIuaCIKPj4gPiAr I2luY2x1ZGUgImxhdXhsaWIuaCIKPj4gPiAKPj4gPiAjaW5jbHVkZSAibGpfb2JqLmgiCj4+ID4g I2luY2x1ZGUgImxqX3N0ci5oIgo+PiA+ICNpbmNsdWRlICJsal90YWIuaCIKPj4gPiAjaW5jbHVk ZSAibGpfbGliLmgiCj4+ID4gKyNpbmNsdWRlICJsal9nYy5oIgo+PiA+ICsjaW5jbHVkZSAibGpf ZXJyLmgiCj4+ID4gKwo+PiA+ICsjaW5jbHVkZSAibGpfbWVtcHJvZi5oIgo+PiA+IAo+PiA+IC8q IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSAqLwo+PiA+IAo+PiA+IEBAIC02Nyw4ICs3NSwxNjcgQEAgTEpMSUJf Q0YobWlzY19nZXRtZXRyaWNzKQo+PiA+IAo+PiA+ICNpbmNsdWRlICJsal9saWJkZWYuaCIKPj4g PiAKPj4gPiArLyogLS0tLS0gbWlzYy5tZW1wcm9mIG1vZHVsZSAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCj4+ID4gKwo+PiA+ICsjZGVmaW5lIExKTElC X01PRFVMRV9taXNjX21lbXByb2YKPj4gPiArCj4+ID4gKy8qCj4+ID4gKyoqIFllcCwgOE1iLiBU dW5lZCBpbiBvcmRlciBub3QgdG8gYm90aGVyIHRoZSBwbGF0Zm9ybSB3aXRoIHRvbyBvZnRlbiBm bHVzaGVzLgo+PiA+ICsqLwo+PiA+ICsjZGVmaW5lIFNUUkVBTV9CVUZGRVJfU0laRSAoOCAqIDEw MjQgKiAxMDI0KQo+PiA+ICsKPj4gPiArLyogU3RydWN0dXJlIGdpdmVuIGFzIGN0eCB0byBtZW1w cm9mIHdyaXRlciBhbmQgb25fc3RvcCBjYWxsYmFjay4gKi8KPj4gPiArc3RydWN0IG1lbXByb2Zf Y3R4IHsKPj4gPiArICAvKiBPdXRwdXQgZmlsZSBzdHJlYW0gZm9yIGRhdGEuICovCj4+ID4gKyAg RklMRSAqc3RyZWFtOwo+PiA+ICsgIC8qIFByb2ZpbGVkIGdsb2JhbF9TdGF0ZSBmb3IgbGpfbWVt X2ZyZWUgYXQgb25fc3RvcCBjYWxsYmFjay4gKi8KPj4gPiArICBnbG9iYWxfU3RhdGUgKmc7Cj4+ ID4gK307Cj4+ID4gKwo+PiA+ICtzdGF0aWMgTEpfQUlOTElORSB2b2lkIG1lbXByb2ZfY3R4X2Zy ZWUoc3RydWN0IG1lbXByb2ZfY3R4ICpjdHgsIHVpbnQ4X3QgKmJ1ZikKPj4gPiArewo+PiA+ICsg IGxqX21lbV9mcmVlKGN0eC0+ZywgYnVmLCBTVFJFQU1fQlVGRkVSX1NJWkUpOwo+PiA+ICsgIGxq X21lbV9mcmVlKGN0eC0+ZywgY3R4LCBzaXplb2YoKmN0eCkpOwo+PiA+ICt9Cj4+ID4gKwo+PiA+ ICsvKiBEZWZhdWx0IGJ1ZmZlciB3cml0ZXIgZnVuY3Rpb24uIEp1c3QgY2FsbCBmd3JpdGUgdG8g Y29ycmVzcG9uZGluZyBGSUxFLiAqLwo+PiA+ICtzdGF0aWMgc2l6ZV90IGJ1ZmZlcl93cml0ZXJf ZGVmYXVsdChjb25zdCB2b2lkICoqYnVmX2FkZHIsIHNpemVfdCBsZW4sCj4+ID4gKwkJCQkgICAg dm9pZCAqb3B0KQo+PiA+ICt7Cj4+ID4gKyAgRklMRSAqc3RyZWFtID0gKChzdHJ1Y3QgbWVtcHJv Zl9jdHggKilvcHQpLT5zdHJlYW07Cj4+ID4gKyAgY29uc3Qgdm9pZCAqIGNvbnN0IGJ1Zl9zdGFy dCA9ICpidWZfYWRkcjsKPj4gPiArICBjb25zdCB2b2lkICpkYXRhID0gKmJ1Zl9hZGRyOwo+PiA+ ICsgIHNpemVfdCB3cml0ZV90b3RhbCA9IDA7Cj4+ID4gKwo+PiA+ICsgIGx1YV9hc3NlcnQobGVu IDw9IFNUUkVBTV9CVUZGRVJfU0laRSk7Cj4+ID4gKwo+PiA+ICsgIGZvciAoOzspIHsKPj4gPiAr ICAgIGNvbnN0IHNpemVfdCB3cml0dGVuID0gZndyaXRlKGRhdGEsIDEsIGxlbiwgc3RyZWFtKTsK Pj4gPiArCj4+ID4gKyAgICBpZiAoTEpfVU5MSUtFTFkod3JpdHRlbiA9PSAwKSkgewo+PiA+ICsg ICAgICAvKiBSZS10cmllcyB3cml0ZSBpbiBjYXNlIG9mIEVJTlRSLiAqLwo+PiA+ICsgICAgICBp ZiAoZXJybm8gPT0gRUlOVFIpIHsKPj4gPiArCWVycm5vID0gMDsKPj4gPiArCWNvbnRpbnVlOwo+ PiA+ICsgICAgICB9Cj4+ID4gKyAgICAgIGJyZWFrOwo+PiA+ICsgICAgfQo+PiA+ICsKPj4gPiAr ICAgIHdyaXRlX3RvdGFsICs9IHdyaXR0ZW47Cj4+ID4gKwo+PiA+ICsgICAgaWYgKHdyaXRlX3Rv dGFsID09IGxlbikKPj4gPiArICAgICAgYnJlYWs7Cj4+ID4gKwo+PiA+ICsgICAgZGF0YSA9ICh1 aW50OF90ICopZGF0YSArIChwdHJkaWZmX3Qpd3JpdHRlbjsKPj4gCj4+IEFmdGVyIGluY29tcGxl dGUgd3JpdGUgeW914oCZbGwgcmV0dXJuIHRvIHRoZSBmd3JpdGUoKSBjYWxsIHdpdGgKPj4gZGF0 YSBwb2ludGVyIG1vdmVkLCBidXQgd2l0aCBsZW4gdW50b3VjaGVkIC0+IHlvdeKAmWxsIHJlYWQg YmV5b25kCj4+IHRoZSBidWZmZXIuCj4KPk9oISBJIGtlZXAgc3RlcHBpbmcgb24gdGhlIHNhbWUg cmFrZS4uLgo+VGhhbmsgeW91IHZlcnkgbXVjaCEgRml4ZWQhCj4KPlNlZSB0aGUgaXRlcmF0aXZl IHBhdGNoIGJlbG93LiBCcmFuY2ggaXMgZm9yY2UgcHVzaGVkLgo+Cj4+IAo+PiA+ICsgIH0KPj4g PiArICBsdWFfYXNzZXJ0KHdyaXRlX3RvdGFsIDw9IGxlbik7Cj4+ID4gKwo+PiA+ICsgICpidWZf YWRkciA9IGJ1Zl9zdGFydDsKPj4gPiArICByZXR1cm4gd3JpdGVfdG90YWw7Cj4+ID4gK30KPj4g PiArCj4+ID4gKy8qIERlZmF1bHQgb24gc3RvcCBjYWxsYmFjay4gSnVzdCBjbG9zZSBjb3JyZXNw b25kaW5nIHN0cmVhbS4gKi8KPj4gPiArc3RhdGljIGludCBvbl9zdG9wX2NiX2RlZmF1bHQodm9p ZCAqb3B0LCB1aW50OF90ICpidWYpCj4+ID4gK3sKPj4gPiArICBzdHJ1Y3QgbWVtcHJvZl9jdHgg KmN0eCA9IG9wdDsKPj4gPiArICBGSUxFICpzdHJlYW0gPSBjdHgtPnN0cmVhbTsKPj4gPiArICBt ZW1wcm9mX2N0eF9mcmVlKGN0eCwgYnVmKTsKPj4gPiArICByZXR1cm4gZmNsb3NlKHN0cmVhbSk7 Cj4+ID4gK30KPj4gPiArCj4+ID4gKy8qIGxvY2FsIHN0YXJ0ZWQsIGVyciwgZXJybm8gPSBtaXNj Lm1lbXByb2Yuc3RhcnQoZm5hbWUpICovCj4+ID4gK0xKTElCX0NGKG1pc2NfbWVtcHJvZl9zdGFy dCkKPj4gPiArewo+PiA+ICsgIHN0cnVjdCBsdWFfUHJvZl9vcHRpb25zIG9wdCA9IHswfTsKPj4g PiArICBzdHJ1Y3QgbWVtcHJvZl9jdHggKmN0eDsKPj4gPiArICBjb25zdCBjaGFyICpmbmFtZTsK Pj4gPiArICBpbnQgbWVtcHJvZl9zdGF0dXM7Cj4+ID4gKyAgaW50IHN0YXJ0ZWQ7Cj4+ID4gKwo+ PiA+ICsgIGZuYW1lID0gc3RyZGF0YShsal9saWJfY2hlY2tzdHIoTCwgMSkpOwo+PiA+ICsKPj4g PiArICBjdHggPSBsal9tZW1fbmV3KEwsIHNpemVvZigqY3R4KSk7Cj4+ID4gKyAgaWYgKGN0eCA9 PSBOVUxMKQo+PiA+ICsgICAgZ290byBlcnJtZW07Cj4+ID4gKwo+PiA+ICsgIG9wdC5jdHggPSBj dHg7Cj4+ID4gKyAgb3B0LndyaXRlciA9IGJ1ZmZlcl93cml0ZXJfZGVmYXVsdDsKPj4gPiArICBv cHQub25fc3RvcCA9IG9uX3N0b3BfY2JfZGVmYXVsdDsKPj4gPiArICBvcHQubGVuID0gU1RSRUFN X0JVRkZFUl9TSVpFOwo+PiA+ICsgIG9wdC5idWYgPSAodWludDhfdCAqKWxqX21lbV9uZXcoTCwg U1RSRUFNX0JVRkZFUl9TSVpFKTsKPj4gPiArICBpZiAoTlVMTCA9PSBvcHQuYnVmKSB7Cj4+ID4g KyAgICBsal9tZW1fZnJlZShHKEwpLCBjdHgsIHNpemVvZigqY3R4KSk7Cj4+ID4gKyAgICBnb3Rv IGVycm1lbTsKPj4gPiArICB9Cj4+ID4gKwo+PiA+ICsgIGN0eC0+ZyA9IEcoTCk7Cj4+ID4gKyAg Y3R4LT5zdHJlYW0gPSBmb3BlbihmbmFtZSwgIndiIik7Cj4+ID4gKwo+PiA+ICsgIGlmIChjdHgt PnN0cmVhbSA9PSBOVUxMKSB7Cj4+ID4gKyAgICBtZW1wcm9mX2N0eF9mcmVlKGN0eCwgb3B0LmJ1 Zik7Cj4+ID4gKyAgICByZXR1cm4gbHVhTF9maWxlcmVzdWx0KEwsIDAsIGZuYW1lKTsKPj4gPiAr ICB9Cj4+ID4gKwo+PiA+ICsgIG1lbXByb2Zfc3RhdHVzID0gbGpfbWVtcHJvZl9zdGFydChMLCAm b3B0KTsKPj4gPiArICBzdGFydGVkID0gbWVtcHJvZl9zdGF0dXMgPT0gUFJPRklMRV9TVUNDRVNT Owo+PiA+ICsKPj4gPiArICBpZiAoTEpfVU5MSUtFTFkoIXN0YXJ0ZWQpKSB7Cj4+ID4gKyAgICBm Y2xvc2UoY3R4LT5zdHJlYW0pOwo+PiA+ICsgICAgcmVtb3ZlKGZuYW1lKTsKPj4gPiArICAgIG1l bXByb2ZfY3R4X2ZyZWUoY3R4LCBvcHQuYnVmKTsKPj4gPiArICAgIHN3aXRjaCAobWVtcHJvZl9z dGF0dXMpIHsKPj4gPiArICAgIGNhc2UgUFJPRklMRV9FUlJSVU46Cj4+ID4gKyAgICAgIGx1YV9w dXNobmlsKEwpOwo+PiA+ICsgICAgICBsdWFfcHVzaHN0cmluZyhMLCBlcnIybXNnKExKX0VSUl9Q Uk9GX0lTUlVOTklORykpOwo+PiA+ICsgICAgICBsdWFfcHVzaGludGVnZXIoTCwgRUlOVkFMKTsK Pj4gPiArICAgICAgcmV0dXJuIDM7Cj4+ID4gKyAgICBjYXNlIFBST0ZJTEVfRVJSSU86Cj4+ID4g KyAgICAgIHJldHVybiBsdWFMX2ZpbGVyZXN1bHQoTCwgMCwgZm5hbWUpOwo+PiA+ICsgICAgZGVm YXVsdDoKPj4gPiArICAgICAgbHVhX2Fzc2VydCgwKTsKPj4gPiArICAgICAgYnJlYWs7Cj4+ID4g KyAgICB9Cj4+ID4gKyAgfQo+PiA+ICsgIGx1YV9wdXNoYm9vbGVhbihMLCBzdGFydGVkKTsKPj4g PiArCj4+ID4gKyAgcmV0dXJuIDE7Cj4+ID4gK2Vycm1lbToKPj4gPiArICBsdWFfcHVzaG5pbChM KTsKPj4gPiArICBsdWFfcHVzaHN0cmluZyhMLCBlcnIybXNnKExKX0VSUl9FUlJNRU0pKTsKPj4g PiArICBsdWFfcHVzaGludGVnZXIoTCwgRU5PTUVNKTsKPj4gPiArICByZXR1cm4gMzsKPj4gPiAr fQo+PiA+ICsKPj4gPiArLyogbG9jYWwgc3RvcHBlZCwgZXJyLCBlcnJubyA9IG1pc2MubWVtcHJv Zi5zdG9wKCkgKi8KPj4gPiArTEpMSUJfQ0YobWlzY19tZW1wcm9mX3N0b3ApCj4+ID4gK3sKPj4g PiArICBpbnQgc3RhdHVzID0gbGpfbWVtcHJvZl9zdG9wKCk7Cj4+ID4gKyAgaW50IHN0b3BwZWRf c3VjY2Vzc2Z1bGx5ID0gc3RhdHVzID09IFBST0ZJTEVfU1VDQ0VTUzsKPj4gPiArICBpZiAoIXN0 b3BwZWRfc3VjY2Vzc2Z1bGx5KSB7Cj4+ID4gKyAgICBzd2l0Y2ggKHN0YXR1cykgewo+PiA+ICsg ICAgY2FzZSBQUk9GSUxFX0VSUlJVTjoKPj4gPiArICAgICAgbHVhX3B1c2huaWwoTCk7Cj4+ID4g KyAgICAgIGx1YV9wdXNoc3RyaW5nKEwsIGVycjJtc2coTEpfRVJSX1BST0ZfTk9UUlVOTklORykp Owo+PiA+ICsgICAgICBsdWFfcHVzaGludGVnZXIoTCwgRUlOVkFMKTsKPj4gPiArICAgICAgcmV0 dXJuIDM7Cj4+ID4gKyAgICBjYXNlIFBST0ZJTEVfRVJSSU86Cj4+ID4gKyAgICAgIHJldHVybiBs dWFMX2ZpbGVyZXN1bHQoTCwgMCwgTlVMTCk7Cj4+ID4gKyAgICBkZWZhdWx0Ogo+PiA+ICsgICAg ICBsdWFfYXNzZXJ0KDApOwo+PiA+ICsgICAgICBicmVhazsKPj4gPiArICAgIH0KPj4gPiArICB9 Cj4+ID4gKyAgbHVhX3B1c2hib29sZWFuKEwsIHN0b3BwZWRfc3VjY2Vzc2Z1bGx5KTsKPj4gPiAr ICByZXR1cm4gMTsKPj4gPiArfQo+PiA+ICsKPj4gPiArI2luY2x1ZGUgImxqX2xpYmRlZi5oIgo+ PiA+ICsKPj4gPiArLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCj4+ID4gKwo+PiA+IExVQUxJQl9BUEkg aW50IGx1YW9wZW5fbWlzYyhzdHJ1Y3QgbHVhX1N0YXRlICpMKQo+PiA+IHsKPj4gPiAgIExKX0xJ Ql9SRUcoTCwgTFVBTV9NSVNDTElCTkFNRSwgbWlzYyk7Cj4+ID4gKyAgTEpfTElCX1JFRyhMLCBM VUFNX01JU0NMSUJOQU1FICIubWVtcHJvZiIsIG1pc2NfbWVtcHJvZik7Cj4+ID4gICByZXR1cm4g MTsKPj4gPiB9Cj4+ID4gZGlmZiAtLWdpdCBhL3NyYy9sal9lcnJtc2cuaCBiL3NyYy9sal9lcnJt c2cuaAo+PiA+IGluZGV4IGRlN2I4NjcuLjY4MTZkYTIgMTAwNjQ0Cj4+ID4gLS0tIGEvc3JjL2xq X2Vycm1zZy5oCj4+ID4gKysrIGIvc3JjL2xqX2Vycm1zZy5oCj4+ID4gQEAgLTE4NSw2ICsxODUs MTIgQEAgRVJSREVGKEZGSV9OWUlQQUNLQklULAkiTllJOiBwYWNrZWQgYml0IGZpZWxkcyIpCj4+ ID4gRVJSREVGKEZGSV9OWUlDQUxMLAkiTllJOiBjYW5ub3QgY2FsbCB0aGlzIEMgZnVuY3Rpb24g KHlldCkiKQo+PiA+ICNlbmRpZgo+PiA+IAo+PiA+ICsjaWYgTEpfSEFTUFJPRklMRSB8fCBMSl9I QVNNRU1QUk9GCj4+ID4gKy8qIFByb2ZpbGVyIGVycm9ycy4gKi8KPj4gPiArRVJSREVGKFBST0Zf SVNSVU5OSU5HLAkicHJvZmlsZXIgaXMgcnVubmluZyBhbHJlYWR5IikKPj4gPiArRVJSREVGKFBS T0ZfTk9UUlVOTklORywJInByb2ZpbGVyIGlzIG5vdCBydW5uaW5nIikKPj4gPiArI2VuZGlmCj4+ ID4gKwo+PiA+ICN1bmRlZiBFUlJERUYKPj4gPiAKPj4gPiAvKiBEZXRlY3RpbmcgdW51c2VkIGVy cm9yIG1lc3NhZ2VzOgo+PiA+IC0tIAo+PiA+IDIuMjguMAo+PiA+IAo+PiAKPgo+PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQo+ZGlmZiAtLWdpdCBhL3NyYy9saWJfbWlzYy5jIGIvc3JjL2xpYl9taXNjLmMKPmluZGV4IDM2 ZmUyOWYuLmY2OWY5MzMgMTAwNjQ0Cj4tLS0gYS9zcmMvbGliX21pc2MuYwo+KysrIGIvc3JjL2xp Yl9taXNjLmMKPkBAIC0xMTAsNyArMTEwLDcgQEAgc3RhdGljIHNpemVfdCBidWZmZXJfd3JpdGVy X2RlZmF1bHQoY29uc3Qgdm9pZCAqKmJ1Zl9hZGRyLCBzaXplX3QgbGVuLAo+wqDCoMKgbHVhX2Fz c2VydChsZW4gPD0gU1RSRUFNX0JVRkZFUl9TSVpFKTsKPsKgCj7CoMKgwqBmb3IgKDs7KSB7Cj4t ICAgIGNvbnN0IHNpemVfdCB3cml0dGVuID0gZndyaXRlKGRhdGEsIDEsIGxlbiwgc3RyZWFtKTsK PisgICAgY29uc3Qgc2l6ZV90IHdyaXR0ZW4gPSBmd3JpdGUoZGF0YSwgMSwgbGVuIC0gd3JpdGVf dG90YWwsIHN0cmVhbSk7Cj7CoAo+wqDCoMKgwqDCoGlmIChMSl9VTkxJS0VMWSh3cml0dGVuID09 IDApKSB7Cj7CoMKgwqDCoMKgwqDCoC8qIFJlLXRyaWVzIHdyaXRlIGluIGNhc2Ugb2YgRUlOVFIu ICovCj5AQCAtMTIyLDEzICsxMjIsMTMgQEAgc3RhdGljIHNpemVfdCBidWZmZXJfd3JpdGVyX2Rl ZmF1bHQoY29uc3Qgdm9pZCAqKmJ1Zl9hZGRyLCBzaXplX3QgbGVuLAo+wqDCoMKgwqDCoH0KPsKg Cj7CoMKgwqDCoMKgd3JpdGVfdG90YWwgKz0gd3JpdHRlbjsKPisgICAgbHVhX2Fzc2VydCh3cml0 ZV90b3RhbCA8PSBsZW4pOwo+wqAKPsKgwqDCoMKgwqBpZiAod3JpdGVfdG90YWwgPT0gbGVuKQo+ wqDCoMKgwqDCoMKgwqBicmVhazsKPsKgCj7CoMKgwqDCoMKgZGF0YSA9ICh1aW50OF90ICopZGF0 YSArIChwdHJkaWZmX3Qpd3JpdHRlbjsKPsKgwqDCoH0KPi0gIGx1YV9hc3NlcnQod3JpdGVfdG90 YWwgPD0gbGVuKTsKPsKgCj7CoMKgwqAqYnVmX2FkZHIgPSBidWZfc3RhcnQ7Cj7CoMKgwqByZXR1 cm4gd3JpdGVfdG90YWw7Cj49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4KPi0tIAo+QmVzdCByZWdhcmRzLAo+U2VyZ2V5 IEthcGx1bg== ----ALT--29077f71c1a941d1a13787c25d2f7bd51609083446 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXYgaWQ9ImNvbXBvc2VXZWJWaWV3X2VkaXRhYmxlX2NvbnRlbnQiIGRh dGEtbWFpbHJ1YXBwLWNvbXBvc2UtaWQ9ImNvbXBvc2VXZWJWaWV3X2VkaXRhYmxlX2NvbnRlbnQi IHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyI+PGRpdj5MR1RNPC9kaXY+PGRpdj48YnI+PC9kaXY+ PGRpdiBpZD0ibWFpbC1hcHAtYXV0by1zaWduYXR1cmUiPgoKQmVzdCByZWdhcmRzLDxkaXY+U2Vy Z29zJm5ic3A7PC9kaXY+CjwvZGl2Pjxicj48YnI+U3VuZGF5LCAyNyBEZWNlbWJlciAyMDIwLCAx Njo0MyArMDMwMCBmcm9tIHNrYXBsdW5AdGFyYW50b29sLm9yZyAgJmx0O3NrYXBsdW5AdGFyYW50 b29sLm9yZyZndDs6PGJyPjxkaXYgaWQ9ImNvbXBvc2VXZWJWaWV3X3ByZXZpb3VzZV9jb250ZW50 IiBkYXRhLW1haWxydWFwcC1jb21wb3NlLWlkPSJjb21wb3NlV2ViVmlld19wcmV2aW91c2VfY29u dGVudCI+PGJsb2NrcXVvdGUgaWQ9Im1haWwtYXBwLWF1dG8tcXVvdGUiIHN0eWxlPSJib3JkZXIt bGVmdC13aWR0aDogMXB4OyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IGJvcmRlci1sZWZ0LWNv bG9yOiByZ2IoMTEsIDEwMiwgMjQ5KTsgbWFyZ2luOiAxMHB4IDBweCAxMHB4IDVweDsgcGFkZGlu ZzogMHB4IDBweCAwcHggMTBweDsgZGlzcGxheTogaW5oZXJpdDsiIGRhdGEtZGFya29zaGEtaWQ9 IjE6MyI+PGRpdiBjbGFzcz0ianMtaGVscGVyIGpzLXJlYWRtc2ctbXNnIiBkYXRhLWRhcmtvc2hh LWlkPSIxOjQiIHN0eWxlPSIiPgoJPHN0eWxlIHR5cGU9InRleHQvY3NzIiBkYXRhLWRhcmtvc2hh LWlkPSIxOjUiIHN0eWxlPSIiPjwvc3R5bGU+CiAJPGRpdiBkYXRhLWRhcmtvc2hhLWlkPSIxOjYi IHN0eWxlPSIiPgoJCTxiYXNlIHRhcmdldD0iX3NlbGYiIGhyZWY9Imh0dHBzOi8vZS5tYWlsLnJ1 LyIgZGF0YS1kYXJrb3NoYS1pZD0iMTo3IiBzdHlsZT0iIj4KCQkKICAgICAgICAgICAgPGRpdiBp ZD0ic3R5bGVfMTYwOTA3NjU5NzE0NzY0Njg4NTBfQk9EWSIgZGF0YS1kYXJrb3NoYS1pZD0iMTo4 IiBzdHlsZT0iIj48YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo5IiBzdHlsZT0iIj4KSGkhPGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6MTAiIHN0eWxlPSIiPgo8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTox MSIgc3R5bGU9IiI+ClRoYW5rcyBmb3IgdGhlIHJldmlldyE8YnIgZGF0YS1kYXJrb3NoYS1pZD0i MToxMiIgc3R5bGU9IiI+CjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEzIiBzdHlsZT0iIj4KT24g MjcuMTIuMjAsIFNlcmdleSBPc3RhbmV2aWNoIHdyb3RlOjxiciBkYXRhLWRhcmtvc2hhLWlkPSIx OjE0IiBzdHlsZT0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmd0OyBIaSE8 YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNSIgc3R5bGU9IiI+CiZndDsgPGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MTYiIHN0eWxlPSIiPgomZ3Q7IFRoYW5rcyBmb3IgdGhlIHBhdGNoITxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjE3IiBzdHlsZT0iIj4KJmd0OyA8YnIgZGF0YS1kYXJrb3NoYS1pZD0i MToxOCIgc3R5bGU9IiI+CiZndDsgMiBuaXRzIGJlbG93LCBMR1RNIGFmdGVyIHRoZSBmaXguPGJy IGRhdGEtZGFya29zaGEtaWQ9IjE6MTkiIHN0eWxlPSIiPgomZ3Q7IDxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjIwIiBzdHlsZT0iIj4KJmd0OyBTZXJnb3M8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToy MSIgc3R5bGU9IiI+CiZndDsgPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjIiIHN0eWxlPSIiPgom Z3Q7IDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIzIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IE9uIDI1 IERlYyAyMDIwLCBhdCAxODoyNiwgU2VyZ2V5IEthcGx1biAmbHQ7PGEgaHJlZj0ibWFpbHRvOnNr YXBsdW5AdGFyYW50b29sLm9yZyIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNCIgc3R5bGU9IiI+c2th cGx1bkB0YXJhbnRvb2wub3JnPC9hPiZndDsgd3JvdGU6PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6 MjUiIHN0eWxlPSIiPgomZ3Q7ICZndDsgPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjYiIHN0eWxl PSIiPgomZ3Q7ICZndDsgVGhpcyBwYXRjaCBpbnRyb2R1Y2VzIEx1YSBBUEkgZm9yIEx1YUpJVCBt ZW1vcnkgcHJvZmlsZXIgaW1wbGVtZW50ZWQgaW48YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNyIg c3R5bGU9IiI+CiZndDsgJmd0OyB0aGUgc2NvcGUgb2YgdGhlIHByZXZpb3VzIHBhdGNoLjxiciBk YXRhLWRhcmtvc2hhLWlkPSIxOjI4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IDxiciBkYXRhLWRhcmtv c2hhLWlkPSIxOjI5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IFByb2ZpbGVyIHJldHVybnMgc29tZSB0 cnVlIHZhbHVlIGlmIHN0YXJ0ZWQvc3RvcHBlZCBzdWNjZXNzZnVsbHksPGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MzAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgcmV0dXJucyBuaWwgb24gZmFpbHVyZSAo cGx1cyBhbiBlcnJvciBtZXNzYWdlIGFzIGEgc2Vjb25kIHJlc3VsdCBhbmQgYTxiciBkYXRhLWRh cmtvc2hhLWlkPSIxOjMxIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IHN5c3RlbS1kZXBlbmRlbnQgZXJy b3IgY29kZSBhcyBhIHRoaXJkIHJlc3VsdCkuPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzIiIHN0 eWxlPSIiPgomZ3Q7ICZndDsgSWYgTHVhSklUIGJ1aWxkIHdpdGhvdXQgbWVtb3J5IHByb2ZpbGVy IGJvdGggcmV0dXJuIGBmYWxzZWAuPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzMiIHN0eWxlPSIi PgomZ3Q7ICAgICAgICAgICAgXl5eXl5eIHdhcyBidWlsdDxiciBkYXRhLWRhcmtvc2hhLWlkPSIx OjM0IiBzdHlsZT0iIj4KICAgICAgPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzUiIHN0eWxlPSIi PgpDaGFuZ2VkIHRvIGBpcyBidWlsZGAuPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzYiIHN0eWxl PSIiPgo8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTozNyIgc3R5bGU9IiI+CiZndDsgJmd0OyA8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMTozOCIgc3R5bGU9IiI+CiZndDsgJmd0OyAmbHQ7bGpfZXJybXNn LmgmZ3Q7IGhhdmUgYWRqdXN0ZWQgd2l0aCB0d28gbmV3IGVycm9yczxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjM5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IFBST0ZfSVNSVU5OSU5HL1BST0ZfTk9UUlVO TklORyByZXR1cm5lZCBpbiBjYXNlIHdoZW4gcHJvZmlsZXIgaGFzPGJyIGRhdGEtZGFya29zaGEt aWQ9IjE6NDAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgc3RhcnRlZC9zdG9wcGVkIGFscmVhZHkgY29y cmVzcG9uZGluZ2x5LjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjQxIiBzdHlsZT0iIj4KJmd0OyAm Z3Q7IDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjQyIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IFBhcnQg b2YgdGFyYW50b29sL3RhcmFudG9vbCM1NDQyPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NDMiIHN0 eWxlPSIiPgomZ3Q7ICZndDsgLS0tPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NDQiIHN0eWxlPSIi PgomZ3Q7ICZndDsgPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NDUiIHN0eWxlPSIiPgomZ3Q7ICZn dDsgQ2hhbmdlcyBpbiB2Mjo8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo0NiIgc3R5bGU9IiI+CiZn dDsgJmd0OyAgLSBBZGRlZCBwdXNoaW5nIG9mIGVycm5vIGZvciBFUlJfUFJPRiogYW5kIEVSUk1F TTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjQ3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICAtIEFkZGVk IGZvcmdvdHRlbiBhc3NlcnQuPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NDgiIHN0eWxlPSIiPgom Z3Q7ICZndDsgPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NDkiIHN0eWxlPSIiPgomZ3Q7ICZndDsg c3JjL01ha2VmaWxlLmRlcCB8ICAgNSArLTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjUwIiBzdHls ZT0iIj4KJmd0OyAmZ3Q7IHNyYy9saWJfbWlzYy5jICAgfCAxNjcgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKys8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo1MSIg c3R5bGU9IiI+CiZndDsgJmd0OyBzcmMvbGpfZXJybXNnLmggIHwgICA2ICsrPGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6NTIiIHN0eWxlPSIiPgomZ3Q7ICZndDsgMyBmaWxlcyBjaGFuZ2VkLCAxNzYg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSk8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo1MyIg c3R5bGU9IiI+CiZndDsgJmd0OyA8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo1NCIgc3R5bGU9IiI+ CiZndDsgJmd0OyBkaWZmIC0tZ2l0IGEvc3JjL01ha2VmaWxlLmRlcCBiL3NyYy9NYWtlZmlsZS5k ZXA8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo1NSIgc3R5bGU9IiI+CiZndDsgJmd0OyBpbmRleCA4 YWUxNGE1Li5jM2QwOTc3IDEwMDY0NDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjU2IiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7IC0tLSBhL3NyYy9NYWtlZmlsZS5kZXA8YnIgZGF0YS1kYXJrb3NoYS1pZD0i MTo1NyIgc3R5bGU9IiI+CiZndDsgJmd0OyArKysgYi9zcmMvTWFrZWZpbGUuZGVwPGJyIGRhdGEt ZGFya29zaGEtaWQ9IjE6NTgiIHN0eWxlPSIiPgomZ3Q7ICZndDsgQEAgLTI5LDggKzI5LDkgQEAg bGliX2ppdC5vOiBsaWJfaml0LmMgbHVhLmggbHVhY29uZi5oIGxhdXhsaWIuaCBsdWFsaWIuaCBs al9vYmouaCBsal9kZWYuaCBcPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NTkiIHN0eWxlPSIiPgom Z3Q7ICZndDsgIGxqX3ZtLmggbGpfdm1ldmVudC5oIGxqX2xpYi5oIGx1YWppdC5oIGxqX2xpYmRl Zi5oPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NjAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgbGliX21h dGgubzogbGliX21hdGguYyBsdWEuaCBsdWFjb25mLmggbGF1eGxpYi5oIGx1YWxpYi5oIGxqX29i ai5oIFw8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo2MSIgc3R5bGU9IiI+CiZndDsgJmd0OyAgbGpf ZGVmLmggbGpfYXJjaC5oIGxqX2xpYi5oIGxqX3ZtLmggbGpfbGliZGVmLmg8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMTo2MiIgc3R5bGU9IiI+CiZndDsgJmd0OyAtbGliX21pc2MubzogbGliX21pc2Mu YyBsdWEuaCBsdWFjb25mLmggbG1pc2NsaWIuaCBsal9vYmouaCBsal9kZWYuaCBsal9hcmNoLmgg XDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjYzIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IC0gbGpfc3Ry LmggbGpfdGFiLmggbGpfbGliLmggbGpfbGliZGVmLmg8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo2 NCIgc3R5bGU9IiI+CiZndDsgJmd0OyArbGliX21pc2MubzogbGliX21pc2MuYyBsdWEuaCBsdWFj b25mLmggbG1pc2NsaWIuaCBsYXV4bGliLmggbGpfb2JqLmggXDxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjY1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgbGpfZGVmLmggbGpfYXJjaC5oIGxqX3N0ci5o IGxqX3RhYi5oIGxqX2xpYi5oIGxqX2djLmggbGpfZXJyLmggXDxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjY2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgbGpfZXJybXNnLmggbGpfbWVtcHJvZi5oIGxq X2xpYmRlZi5oPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NjciIHN0eWxlPSIiPgomZ3Q7ICZndDsg bGliX29zLm86IGxpYl9vcy5jIGx1YS5oIGx1YWNvbmYuaCBsYXV4bGliLmggbHVhbGliLmggbGpf b2JqLmggbGpfZGVmLmggXDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjY4IiBzdHlsZT0iIj4KJmd0 OyAmZ3Q7ICBsal9hcmNoLmggbGpfZ2MuaCBsal9lcnIuaCBsal9lcnJtc2cuaCBsal9idWYuaCBs al9zdHIuaCBsal9saWIuaCBcPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NjkiIHN0eWxlPSIiPgom Z3Q7ICZndDsgIGxqX2xpYmRlZi5oPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NzAiIHN0eWxlPSIi PgomZ3Q7ICZndDsgZGlmZiAtLWdpdCBhL3NyYy9saWJfbWlzYy5jIGIvc3JjL2xpYl9taXNjLmM8 YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo3MSIgc3R5bGU9IiI+CiZndDsgJmd0OyBpbmRleCA2Zjdi OWE5Li4zNmZlMjlmIDEwMDY0NDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjcyIiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7IC0tLSBhL3NyYy9saWJfbWlzYy5jPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6NzMi IHN0eWxlPSIiPgomZ3Q7ICZndDsgKysrIGIvc3JjL2xpYl9taXNjLmM8YnIgZGF0YS1kYXJrb3No YS1pZD0iMTo3NCIgc3R5bGU9IiI+CiZndDsgJmd0OyBAQCAtOCwxMyArOCwyMSBAQDxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjc1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICNkZWZpbmUgbGliX21pc2Nf YzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjc2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICNkZWZpbmUg TFVBX0xJQjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjc3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IDxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjc4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsjaW5jbHVkZSAm bHQ7c3RkaW8uaCZndDs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo3OSIgc3R5bGU9IiI+CiZndDsg Jmd0OyArI2luY2x1ZGUgJmx0O2Vycm5vLmgmZ3Q7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6ODAi IHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjgxIiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICNpbmNsdWRlICJsdWEuaCI8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo4MiIg c3R5bGU9IiI+CiZndDsgJmd0OyAjaW5jbHVkZSAibG1pc2NsaWIuaCI8YnIgZGF0YS1kYXJrb3No YS1pZD0iMTo4MyIgc3R5bGU9IiI+CiZndDsgJmd0OyArI2luY2x1ZGUgImxhdXhsaWIuaCI8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMTo4NCIgc3R5bGU9IiI+CiZndDsgJmd0OyA8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMTo4NSIgc3R5bGU9IiI+CiZndDsgJmd0OyAjaW5jbHVkZSAibGpfb2JqLmgiPGJy IGRhdGEtZGFya29zaGEtaWQ9IjE6ODYiIHN0eWxlPSIiPgomZ3Q7ICZndDsgI2luY2x1ZGUgImxq X3N0ci5oIjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjg3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICNp bmNsdWRlICJsal90YWIuaCI8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo4OCIgc3R5bGU9IiI+CiZn dDsgJmd0OyAjaW5jbHVkZSAibGpfbGliLmgiPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6ODkiIHN0 eWxlPSIiPgomZ3Q7ICZndDsgKyNpbmNsdWRlICJsal9nYy5oIjxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjkwIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsjaW5jbHVkZSAibGpfZXJyLmgiPGJyIGRhdGEt ZGFya29zaGEtaWQ9IjE6OTEiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjkyIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsjaW5jbHVkZSAibGpfbWVtcHJvZi5oIjxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjkzIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IDxiciBkYXRhLWRh cmtvc2hhLWlkPSIxOjk0IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IC8qIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAq LzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjk1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IDxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjk2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IEBAIC02Nyw4ICs3NSwxNjcg QEAgTEpMSUJfQ0YobWlzY19nZXRtZXRyaWNzKTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjk3IiBz dHlsZT0iIj4KJmd0OyAmZ3Q7IDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjk4IiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7ICNpbmNsdWRlICJsal9saWJkZWYuaCI8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTo5 OSIgc3R5bGU9IiI+CiZndDsgJmd0OyA8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxMDAiIHN0eWxl PSIiPgomZ3Q7ICZndDsgKy8qIC0tLS0tIG1pc2MubWVtcHJvZiBtb2R1bGUgLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLzxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjEwMSIgc3R5bGU9IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTAy IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsjZGVmaW5lIExKTElCX01PRFVMRV9taXNjX21lbXByb2Y8 YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxMDMiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjEwNCIgc3R5bGU9IiI+CiZndDsgJmd0OyArLyo8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMToxMDUiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyoqIFllcCwgOE1iLiBUdW5lZCBp biBvcmRlciBub3QgdG8gYm90aGVyIHRoZSBwbGF0Zm9ybSB3aXRoIHRvbyBvZnRlbiBmbHVzaGVz LjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEwNiIgc3R5bGU9IiI+CiZndDsgJmd0OyArKi88YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMToxMDciIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyNkZWZpbmUgU1RS RUFNX0JVRkZFUl9TSVpFICg4ICogMTAyNCAqIDEwMjQpPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6 MTA4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxMDkiIHN0 eWxlPSIiPgomZ3Q7ICZndDsgKy8qIFN0cnVjdHVyZSBnaXZlbiBhcyBjdHggdG8gbWVtcHJvZiB3 cml0ZXIgYW5kIG9uX3N0b3AgY2FsbGJhY2suICovPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTEw IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICtzdHJ1Y3QgbWVtcHJvZl9jdHggezxiciBkYXRhLWRhcmtv c2hhLWlkPSIxOjExMSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAvKiBPdXRwdXQgZmlsZSBzdHJl YW0gZm9yIGRhdGEuICovPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTEyIiBzdHlsZT0iIj4KJmd0 OyAmZ3Q7ICsgIEZJTEUgKnN0cmVhbTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxMTMiIHN0eWxl PSIiPgomZ3Q7ICZndDsgKyAgLyogUHJvZmlsZWQgZ2xvYmFsX1N0YXRlIGZvciBsal9tZW1fZnJl ZSBhdCBvbl9zdG9wIGNhbGxiYWNrLiAqLzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjExNCIgc3R5 bGU9IiI+CiZndDsgJmd0OyArICBnbG9iYWxfU3RhdGUgKmc7PGJyIGRhdGEtZGFya29zaGEtaWQ9 IjE6MTE1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICt9OzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEx NiIgc3R5bGU9IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTE3IiBzdHls ZT0iIj4KJmd0OyAmZ3Q7ICtzdGF0aWMgTEpfQUlOTElORSB2b2lkIG1lbXByb2ZfY3R4X2ZyZWUo c3RydWN0IG1lbXByb2ZfY3R4ICpjdHgsIHVpbnQ4X3QgKmJ1Zik8YnIgZGF0YS1kYXJrb3NoYS1p ZD0iMToxMTgiIHN0eWxlPSIiPgomZ3Q7ICZndDsgK3s8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTox MTkiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgbGpfbWVtX2ZyZWUoY3R4LSZndDtnLCBidWYsIFNU UkVBTV9CVUZGRVJfU0laRSk7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTIwIiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7ICsgIGxqX21lbV9mcmVlKGN0eC0mZ3Q7ZywgY3R4LCBzaXplb2YoKmN0eCkpOzxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEyMSIgc3R5bGU9IiI+CiZndDsgJmd0OyArfTxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjEyMiIgc3R5bGU9IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MTIzIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsvKiBEZWZhdWx0IGJ1ZmZlciB3cml0 ZXIgZnVuY3Rpb24uIEp1c3QgY2FsbCBmd3JpdGUgdG8gY29ycmVzcG9uZGluZyBGSUxFLiAqLzxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEyNCIgc3R5bGU9IiI+CiZndDsgJmd0OyArc3RhdGljIHNp emVfdCBidWZmZXJfd3JpdGVyX2RlZmF1bHQoY29uc3Qgdm9pZCAqKmJ1Zl9hZGRyLCBzaXplX3Qg bGVuLDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEyNSIgc3R5bGU9IiI+CiZndDsgJmd0OyArCQkJ CSAgICB2b2lkICpvcHQpPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTI2IiBzdHlsZT0iIj4KJmd0 OyAmZ3Q7ICt7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTI3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7 ICsgIEZJTEUgKnN0cmVhbSA9ICgoc3RydWN0IG1lbXByb2ZfY3R4ICopb3B0KS0mZ3Q7c3RyZWFt OzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEyOCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICBjb25z dCB2b2lkICogY29uc3QgYnVmX3N0YXJ0ID0gKmJ1Zl9hZGRyOzxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjEyOSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICBjb25zdCB2b2lkICpkYXRhID0gKmJ1Zl9h ZGRyOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEzMCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICBz aXplX3Qgd3JpdGVfdG90YWwgPSAwOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjEzMSIgc3R5bGU9 IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTMyIiBzdHlsZT0iIj4KJmd0 OyAmZ3Q7ICsgIGx1YV9hc3NlcnQobGVuICZsdDs9IFNUUkVBTV9CVUZGRVJfU0laRSk7PGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6MTMzIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMToxMzQiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgZm9yICg7OykgezxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjEzNSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgIGNvbnN0IHNpemVf dCB3cml0dGVuID0gZndyaXRlKGRhdGEsIDEsIGxlbiwgc3RyZWFtKTs8YnIgZGF0YS1kYXJrb3No YS1pZD0iMToxMzYiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hhLWlkPSIx OjEzNyIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgIGlmIChMSl9VTkxJS0VMWSh3cml0dGVuID09 IDApKSB7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTM4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsg ICAgICAvKiBSZS10cmllcyB3cml0ZSBpbiBjYXNlIG9mIEVJTlRSLiAqLzxiciBkYXRhLWRhcmtv c2hhLWlkPSIxOjEzOSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgICAgaWYgKGVycm5vID09IEVJ TlRSKSB7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTQwIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsJ ZXJybm8gPSAwOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE0MSIgc3R5bGU9IiI+CiZndDsgJmd0 OyArCWNvbnRpbnVlOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE0MiIgc3R5bGU9IiI+CiZndDsg Jmd0OyArICAgICAgfTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE0MyIgc3R5bGU9IiI+CiZndDsg Jmd0OyArICAgICAgYnJlYWs7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTQ0IiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7ICsgICAgfTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE0NSIgc3R5bGU9IiI+CiZn dDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTQ2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7 ICsgICAgd3JpdGVfdG90YWwgKz0gd3JpdHRlbjs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNDci IHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE0OCIgc3R5bGU9 IiI+CiZndDsgJmd0OyArICAgIGlmICh3cml0ZV90b3RhbCA9PSBsZW4pPGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MTQ5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgICBicmVhazs8YnIgZGF0YS1k YXJrb3NoYS1pZD0iMToxNTAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjE1MSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgIGRhdGEgPSAodWludDhfdCAqKWRh dGEgKyAocHRyZGlmZl90KXdyaXR0ZW47PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTUyIiBzdHls ZT0iIj4KJmd0OyA8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNTMiIHN0eWxlPSIiPgomZ3Q7IEFm dGVyIGluY29tcGxldGUgd3JpdGUgeW914oCZbGwgcmV0dXJuIHRvIHRoZSBmd3JpdGUoKSBjYWxs IHdpdGg8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNTQiIHN0eWxlPSIiPgomZ3Q7IGRhdGEgcG9p bnRlciBtb3ZlZCwgYnV0IHdpdGggbGVuIHVudG91Y2hlZCAtJmd0OyB5b3XigJlsbCByZWFkIGJl eW9uZDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE1NSIgc3R5bGU9IiI+CiZndDsgdGhlIGJ1ZmZl ci48YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNTYiIHN0eWxlPSIiPgo8YnIgZGF0YS1kYXJrb3No YS1pZD0iMToxNTciIHN0eWxlPSIiPgpPaCEgSSBrZWVwIHN0ZXBwaW5nIG9uIHRoZSBzYW1lIHJh a2UuLi48YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNTgiIHN0eWxlPSIiPgpUaGFuayB5b3UgdmVy eSBtdWNoISBGaXhlZCE8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNTkiIHN0eWxlPSIiPgo8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMToxNjAiIHN0eWxlPSIiPgpTZWUgdGhlIGl0ZXJhdGl2ZSBwYXRj aCBiZWxvdy4gQnJhbmNoIGlzIGZvcmNlIHB1c2hlZC48YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTox NjEiIHN0eWxlPSIiPgo8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNjIiIHN0eWxlPSIiPgomZ3Q7 IDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE2MyIgc3R5bGU9IiI+CiZndDsgJmd0OyArICB9PGJy IGRhdGEtZGFya29zaGEtaWQ9IjE6MTY0IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGx1YV9hc3Nl cnQod3JpdGVfdG90YWwgJmx0Oz0gbGVuKTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNjUiIHN0 eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE2NiIgc3R5bGU9IiI+ CiZndDsgJmd0OyArICAqYnVmX2FkZHIgPSBidWZfc3RhcnQ7PGJyIGRhdGEtZGFya29zaGEtaWQ9 IjE6MTY3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIHJldHVybiB3cml0ZV90b3RhbDs8YnIgZGF0 YS1kYXJrb3NoYS1pZD0iMToxNjgiIHN0eWxlPSIiPgomZ3Q7ICZndDsgK308YnIgZGF0YS1kYXJr b3NoYS1pZD0iMToxNjkiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjE3MCIgc3R5bGU9IiI+CiZndDsgJmd0OyArLyogRGVmYXVsdCBvbiBzdG9wIGNhbGxiYWNr LiBKdXN0IGNsb3NlIGNvcnJlc3BvbmRpbmcgc3RyZWFtLiAqLzxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjE3MSIgc3R5bGU9IiI+CiZndDsgJmd0OyArc3RhdGljIGludCBvbl9zdG9wX2NiX2RlZmF1 bHQodm9pZCAqb3B0LCB1aW50OF90ICpidWYpPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTcyIiBz dHlsZT0iIj4KJmd0OyAmZ3Q7ICt7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTczIiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICsgIHN0cnVjdCBtZW1wcm9mX2N0eCAqY3R4ID0gb3B0OzxiciBkYXRhLWRh cmtvc2hhLWlkPSIxOjE3NCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICBGSUxFICpzdHJlYW0gPSBj dHgtJmd0O3N0cmVhbTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxNzUiIHN0eWxlPSIiPgomZ3Q7 ICZndDsgKyAgbWVtcHJvZl9jdHhfZnJlZShjdHgsIGJ1Zik7PGJyIGRhdGEtZGFya29zaGEtaWQ9 IjE6MTc2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIHJldHVybiBmY2xvc2Uoc3RyZWFtKTs8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMToxNzciIHN0eWxlPSIiPgomZ3Q7ICZndDsgK308YnIgZGF0YS1k YXJrb3NoYS1pZD0iMToxNzgiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjE3OSIgc3R5bGU9IiI+CiZndDsgJmd0OyArLyogbG9jYWwgc3RhcnRlZCwgZXJyLCBl cnJubyA9IG1pc2MubWVtcHJvZi5zdGFydChmbmFtZSkgKi88YnIgZGF0YS1kYXJrb3NoYS1pZD0i MToxODAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgK0xKTElCX0NGKG1pc2NfbWVtcHJvZl9zdGFydCk8 YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxODEiIHN0eWxlPSIiPgomZ3Q7ICZndDsgK3s8YnIgZGF0 YS1kYXJrb3NoYS1pZD0iMToxODIiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgc3RydWN0IGx1YV9Q cm9mX29wdGlvbnMgb3B0ID0gezB9OzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE4MyIgc3R5bGU9 IiI+CiZndDsgJmd0OyArICBzdHJ1Y3QgbWVtcHJvZl9jdHggKmN0eDs8YnIgZGF0YS1kYXJrb3No YS1pZD0iMToxODQiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgY29uc3QgY2hhciAqZm5hbWU7PGJy IGRhdGEtZGFya29zaGEtaWQ9IjE6MTg1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGludCBtZW1w cm9mX3N0YXR1czs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxODYiIHN0eWxlPSIiPgomZ3Q7ICZn dDsgKyAgaW50IHN0YXJ0ZWQ7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTg3IiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxODgiIHN0eWxlPSIiPgomZ3Q7ICZn dDsgKyAgZm5hbWUgPSBzdHJkYXRhKGxqX2xpYl9jaGVja3N0cihMLCAxKSk7PGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6MTg5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJrb3NoYS1p ZD0iMToxOTAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgY3R4ID0gbGpfbWVtX25ldyhMLCBzaXpl b2YoKmN0eCkpOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjE5MSIgc3R5bGU9IiI+CiZndDsgJmd0 OyArICBpZiAoY3R4ID09IE5VTEwpPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTkyIiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICsgICAgZ290byBlcnJtZW07PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTkz IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxOTQiIHN0eWxl PSIiPgomZ3Q7ICZndDsgKyAgb3B0LmN0eCA9IGN0eDs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTox OTUiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgb3B0LndyaXRlciA9IGJ1ZmZlcl93cml0ZXJfZGVm YXVsdDs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToxOTYiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAg b3B0Lm9uX3N0b3AgPSBvbl9zdG9wX2NiX2RlZmF1bHQ7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6 MTk3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIG9wdC5sZW4gPSBTVFJFQU1fQlVGRkVSX1NJWkU7 PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MTk4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIG9wdC5i dWYgPSAodWludDhfdCAqKWxqX21lbV9uZXcoTCwgU1RSRUFNX0JVRkZFUl9TSVpFKTs8YnIgZGF0 YS1kYXJrb3NoYS1pZD0iMToxOTkiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgaWYgKE5VTEwgPT0g b3B0LmJ1ZikgezxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIwMCIgc3R5bGU9IiI+CiZndDsgJmd0 OyArICAgIGxqX21lbV9mcmVlKEcoTCksIGN0eCwgc2l6ZW9mKCpjdHgpKTs8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMToyMDEiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgICBnb3RvIGVycm1lbTs8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMToyMDIiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgfTxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjIwMyIgc3R5bGU9IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MjA0IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGN0eC0mZ3Q7ZyA9IEcoTCk7PGJy IGRhdGEtZGFya29zaGEtaWQ9IjE6MjA1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGN0eC0mZ3Q7 c3RyZWFtID0gZm9wZW4oZm5hbWUsICJ3YiIpOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIwNiIg c3R5bGU9IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjA3IiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICsgIGlmIChjdHgtJmd0O3N0cmVhbSA9PSBOVUxMKSB7PGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6MjA4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgbWVtcHJvZl9jdHhfZnJl ZShjdHgsIG9wdC5idWYpOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIwOSIgc3R5bGU9IiI+CiZn dDsgJmd0OyArICAgIHJldHVybiBsdWFMX2ZpbGVyZXN1bHQoTCwgMCwgZm5hbWUpOzxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjIxMCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICB9PGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6MjExIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJrb3NoYS1p ZD0iMToyMTIiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgbWVtcHJvZl9zdGF0dXMgPSBsal9tZW1w cm9mX3N0YXJ0KEwsICZhbXA7b3B0KTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMTMiIHN0eWxl PSIiPgomZ3Q7ICZndDsgKyAgc3RhcnRlZCA9IG1lbXByb2Zfc3RhdHVzID09IFBST0ZJTEVfU1VD Q0VTUzs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMTQiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIxNSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICBpZiAoTEpf VU5MSUtFTFkoIXN0YXJ0ZWQpKSB7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjE2IiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICsgICAgZmNsb3NlKGN0eC0mZ3Q7c3RyZWFtKTs8YnIgZGF0YS1kYXJrb3No YS1pZD0iMToyMTciIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgICByZW1vdmUoZm5hbWUpOzxiciBk YXRhLWRhcmtvc2hhLWlkPSIxOjIxOCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgIG1lbXByb2Zf Y3R4X2ZyZWUoY3R4LCBvcHQuYnVmKTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMTkiIHN0eWxl PSIiPgomZ3Q7ICZndDsgKyAgICBzd2l0Y2ggKG1lbXByb2Zfc3RhdHVzKSB7PGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6MjIwIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgY2FzZSBQUk9GSUxFX0VS UlJVTjo8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMjEiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAg ICAgIGx1YV9wdXNobmlsKEwpOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIyMiIgc3R5bGU9IiI+ CiZndDsgJmd0OyArICAgICAgbHVhX3B1c2hzdHJpbmcoTCwgZXJyMm1zZyhMSl9FUlJfUFJPRl9J U1JVTk5JTkcpKTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMjMiIHN0eWxlPSIiPgomZ3Q7ICZn dDsgKyAgICAgIGx1YV9wdXNoaW50ZWdlcihMLCBFSU5WQUwpOzxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjIyNCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgICAgcmV0dXJuIDM7PGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6MjI1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgY2FzZSBQUk9GSUxFX0VS UklPOjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIyNiIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAg ICAgcmV0dXJuIGx1YUxfZmlsZXJlc3VsdChMLCAwLCBmbmFtZSk7PGJyIGRhdGEtZGFya29zaGEt aWQ9IjE6MjI3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgZGVmYXVsdDo8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMToyMjgiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgICAgIGx1YV9hc3NlcnQoMCk7 PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjI5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgICBi cmVhazs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMzAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAg ICB9PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjMxIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIH08 YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMzIiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgbHVhX3B1 c2hib29sZWFuKEwsIHN0YXJ0ZWQpOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIzMyIgc3R5bGU9 IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjM0IiBzdHlsZT0iIj4KJmd0 OyAmZ3Q7ICsgIHJldHVybiAxOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIzNSIgc3R5bGU9IiI+ CiZndDsgJmd0OyArZXJybWVtOjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIzNiIgc3R5bGU9IiI+ CiZndDsgJmd0OyArICBsdWFfcHVzaG5pbChMKTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyMzci IHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgbHVhX3B1c2hzdHJpbmcoTCwgZXJyMm1zZyhMSl9FUlJf RVJSTUVNKSk7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjM4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7 ICsgIGx1YV9wdXNoaW50ZWdlcihMLCBFTk9NRU0pOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjIz OSIgc3R5bGU9IiI+CiZndDsgJmd0OyArICByZXR1cm4gMzs8YnIgZGF0YS1kYXJrb3NoYS1pZD0i MToyNDAiIHN0eWxlPSIiPgomZ3Q7ICZndDsgK308YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNDEi IHN0eWxlPSIiPgomZ3Q7ICZndDsgKzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI0MiIgc3R5bGU9 IiI+CiZndDsgJmd0OyArLyogbG9jYWwgc3RvcHBlZCwgZXJyLCBlcnJubyA9IG1pc2MubWVtcHJv Zi5zdG9wKCkgKi88YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNDMiIHN0eWxlPSIiPgomZ3Q7ICZn dDsgK0xKTElCX0NGKG1pc2NfbWVtcHJvZl9zdG9wKTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI0 NCIgc3R5bGU9IiI+CiZndDsgJmd0OyArezxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI0NSIgc3R5 bGU9IiI+CiZndDsgJmd0OyArICBpbnQgc3RhdHVzID0gbGpfbWVtcHJvZl9zdG9wKCk7PGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6MjQ2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGludCBzdG9wcGVk X3N1Y2Nlc3NmdWxseSA9IHN0YXR1cyA9PSBQUk9GSUxFX1NVQ0NFU1M7PGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MjQ3IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGlmICghc3RvcHBlZF9zdWNjZXNz ZnVsbHkpIHs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNDgiIHN0eWxlPSIiPgomZ3Q7ICZndDsg KyAgICBzd2l0Y2ggKHN0YXR1cykgezxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI0OSIgc3R5bGU9 IiI+CiZndDsgJmd0OyArICAgIGNhc2UgUFJPRklMRV9FUlJSVU46PGJyIGRhdGEtZGFya29zaGEt aWQ9IjE6MjUwIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgICBsdWFfcHVzaG5pbChMKTs8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMToyNTEiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyAgICAgIGx1YV9w dXNoc3RyaW5nKEwsIGVycjJtc2coTEpfRVJSX1BST0ZfTk9UUlVOTklORykpOzxiciBkYXRhLWRh cmtvc2hhLWlkPSIxOjI1MiIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgICAgbHVhX3B1c2hpbnRl Z2VyKEwsIEVJTlZBTCk7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjUzIiBzdHlsZT0iIj4KJmd0 OyAmZ3Q7ICsgICAgICByZXR1cm4gMzs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNTQiIHN0eWxl PSIiPgomZ3Q7ICZndDsgKyAgICBjYXNlIFBST0ZJTEVfRVJSSU86PGJyIGRhdGEtZGFya29zaGEt aWQ9IjE6MjU1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgICByZXR1cm4gbHVhTF9maWxlcmVz dWx0KEwsIDAsIE5VTEwpOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI1NiIgc3R5bGU9IiI+CiZn dDsgJmd0OyArICAgIGRlZmF1bHQ6PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjU3IiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICsgICAgICBsdWFfYXNzZXJ0KDApOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIx OjI1OCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICAgICAgYnJlYWs7PGJyIGRhdGEtZGFya29zaGEt aWQ9IjE6MjU5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgICAgfTxiciBkYXRhLWRhcmtvc2hhLWlk PSIxOjI2MCIgc3R5bGU9IiI+CiZndDsgJmd0OyArICB9PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6 MjYxIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsgIGx1YV9wdXNoYm9vbGVhbihMLCBzdG9wcGVkX3N1 Y2Nlc3NmdWxseSk7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjYyIiBzdHlsZT0iIj4KJmd0OyAm Z3Q7ICsgIHJldHVybiAxOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI2MyIgc3R5bGU9IiI+CiZn dDsgJmd0OyArfTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI2NCIgc3R5bGU9IiI+CiZndDsgJmd0 OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjY1IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICsjaW5j bHVkZSAibGpfbGliZGVmLmgiPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjY2IiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNjciIHN0eWxlPSIiPgomZ3Q7ICZn dDsgKy8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI2OCIgc3R5 bGU9IiI+CiZndDsgJmd0OyArPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjY5IiBzdHlsZT0iIj4K Jmd0OyAmZ3Q7IExVQUxJQl9BUEkgaW50IGx1YW9wZW5fbWlzYyhzdHJ1Y3QgbHVhX1N0YXRlICpM KTxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI3MCIgc3R5bGU9IiI+CiZndDsgJmd0OyB7PGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6MjcxIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICAgTEpfTElCX1JFRyhM LCBMVUFNX01JU0NMSUJOQU1FLCBtaXNjKTs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNzIiIHN0 eWxlPSIiPgomZ3Q7ICZndDsgKyAgTEpfTElCX1JFRyhMLCBMVUFNX01JU0NMSUJOQU1FICIubWVt cHJvZiIsIG1pc2NfbWVtcHJvZik7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjczIiBzdHlsZT0i Ij4KJmd0OyAmZ3Q7ICAgcmV0dXJuIDE7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6Mjc0IiBzdHls ZT0iIj4KJmd0OyAmZ3Q7IH08YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyNzUiIHN0eWxlPSIiPgom Z3Q7ICZndDsgZGlmZiAtLWdpdCBhL3NyYy9sal9lcnJtc2cuaCBiL3NyYy9sal9lcnJtc2cuaDxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI3NiIgc3R5bGU9IiI+CiZndDsgJmd0OyBpbmRleCBkZTdi ODY3Li42ODE2ZGEyIDEwMDY0NDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI3NyIgc3R5bGU9IiI+ CiZndDsgJmd0OyAtLS0gYS9zcmMvbGpfZXJybXNnLmg8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToy NzgiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKysrIGIvc3JjL2xqX2Vycm1zZy5oPGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6Mjc5IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IEBAIC0xODUsNiArMTg1LDEyIEBA IEVSUkRFRihGRklfTllJUEFDS0JJVCwJIk5ZSTogcGFja2VkIGJpdCBmaWVsZHMiKTxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjI4MCIgc3R5bGU9IiI+CiZndDsgJmd0OyBFUlJERUYoRkZJX05ZSUNB TEwsCSJOWUk6IGNhbm5vdCBjYWxsIHRoaXMgQyBmdW5jdGlvbiAoeWV0KSIpPGJyIGRhdGEtZGFy a29zaGEtaWQ9IjE6MjgxIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICNlbmRpZjxiciBkYXRhLWRhcmtv c2hhLWlkPSIxOjI4MiIgc3R5bGU9IiI+CiZndDsgJmd0OyA8YnIgZGF0YS1kYXJrb3NoYS1pZD0i MToyODMiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKyNpZiBMSl9IQVNQUk9GSUxFIHx8IExKX0hBU01F TVBST0Y8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyODQiIHN0eWxlPSIiPgomZ3Q7ICZndDsgKy8q IFByb2ZpbGVyIGVycm9ycy4gKi88YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyODUiIHN0eWxlPSIi PgomZ3Q7ICZndDsgK0VSUkRFRihQUk9GX0lTUlVOTklORywJInByb2ZpbGVyIGlzIHJ1bm5pbmcg YWxyZWFkeSIpPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6Mjg2IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7 ICtFUlJERUYoUFJPRl9OT1RSVU5OSU5HLAkicHJvZmlsZXIgaXMgbm90IHJ1bm5pbmciKTxiciBk YXRhLWRhcmtvc2hhLWlkPSIxOjI4NyIgc3R5bGU9IiI+CiZndDsgJmd0OyArI2VuZGlmPGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6Mjg4IiBzdHlsZT0iIj4KJmd0OyAmZ3Q7ICs8YnIgZGF0YS1kYXJr b3NoYS1pZD0iMToyODkiIHN0eWxlPSIiPgomZ3Q7ICZndDsgI3VuZGVmIEVSUkRFRjxiciBkYXRh LWRhcmtvc2hhLWlkPSIxOjI5MCIgc3R5bGU9IiI+CiZndDsgJmd0OyA8YnIgZGF0YS1kYXJrb3No YS1pZD0iMToyOTEiIHN0eWxlPSIiPgomZ3Q7ICZndDsgLyogRGV0ZWN0aW5nIHVudXNlZCBlcnJv ciBtZXNzYWdlczo8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyOTIiIHN0eWxlPSIiPgomZ3Q7ICZn dDsgLS0gPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MjkzIiBzdHlsZT0iIj4KJmd0OyAmZ3Q7IDIu MjguMDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI5NCIgc3R5bGU9IiI+CiZndDsgJmd0OyA8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMToyOTUiIHN0eWxlPSIiPgomZ3Q7IDxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjI5NiIgc3R5bGU9IiI+CjxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjI5NyIgc3R5bGU9 IiI+Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT08YnIgZGF0YS1kYXJrb3NoYS1pZD0iMToyOTgiIHN0eWxlPSIiPgpkaWZm IC0tZ2l0IGEvc3JjL2xpYl9taXNjLmMgYi9zcmMvbGliX21pc2MuYzxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjI5OSIgc3R5bGU9IiI+CmluZGV4IDM2ZmUyOWYuLmY2OWY5MzMgMTAwNjQ0PGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6MzAwIiBzdHlsZT0iIj4KLS0tIGEvc3JjL2xpYl9taXNjLmM8YnIg ZGF0YS1kYXJrb3NoYS1pZD0iMTozMDEiIHN0eWxlPSIiPgorKysgYi9zcmMvbGliX21pc2MuYzxi ciBkYXRhLWRhcmtvc2hhLWlkPSIxOjMwMiIgc3R5bGU9IiI+CkBAIC0xMTAsNyArMTEwLDcgQEAg c3RhdGljIHNpemVfdCBidWZmZXJfd3JpdGVyX2RlZmF1bHQoY29uc3Qgdm9pZCAqKmJ1Zl9hZGRy LCBzaXplX3QgbGVuLDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjMwMyIgc3R5bGU9IiI+CiZuYnNw OyZuYnNwOyZuYnNwO2x1YV9hc3NlcnQobGVuICZsdDs9IFNUUkVBTV9CVUZGRVJfU0laRSk7PGJy IGRhdGEtZGFya29zaGEtaWQ9IjE6MzA0IiBzdHlsZT0iIj4KJm5ic3A7PGJyIGRhdGEtZGFya29z aGEtaWQ9IjE6MzA1IiBzdHlsZT0iIj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Zm9yICg7OykgezxiciBk YXRhLWRhcmtvc2hhLWlkPSIxOjMwNiIgc3R5bGU9IiI+Ci0gICAgY29uc3Qgc2l6ZV90IHdyaXR0 ZW4gPSBmd3JpdGUoZGF0YSwgMSwgbGVuLCBzdHJlYW0pOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIx OjMwNyIgc3R5bGU9IiI+CisgICAgY29uc3Qgc2l6ZV90IHdyaXR0ZW4gPSBmd3JpdGUoZGF0YSwg MSwgbGVuIC0gd3JpdGVfdG90YWwsIHN0cmVhbSk7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzA4 IiBzdHlsZT0iIj4KJm5ic3A7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzA5IiBzdHlsZT0iIj4K Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aWYgKExKX1VOTElLRUxZKHdyaXR0ZW4gPT0g MCkpIHs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTozMTAiIHN0eWxlPSIiPgombmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsvKiBSZS10cmllcyB3cml0ZSBpbiBjYXNlIG9m IEVJTlRSLiAqLzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjMxMSIgc3R5bGU9IiI+CkBAIC0xMjIs MTMgKzEyMiwxMyBAQCBzdGF0aWMgc2l6ZV90IGJ1ZmZlcl93cml0ZXJfZGVmYXVsdChjb25zdCB2 b2lkICoqYnVmX2FkZHIsIHNpemVfdCBsZW4sPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzEyIiBz dHlsZT0iIj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjMxMyIgc3R5bGU9IiI+CiZuYnNwOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjMxNCIg c3R5bGU9IiI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3dyaXRlX3RvdGFsICs9IHdy aXR0ZW47PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzE1IiBzdHlsZT0iIj4KKyAgICBsdWFfYXNz ZXJ0KHdyaXRlX3RvdGFsICZsdDs9IGxlbik7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzE2IiBz dHlsZT0iIj4KJm5ic3A7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzE3IiBzdHlsZT0iIj4KJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aWYgKHdyaXRlX3RvdGFsID09IGxlbik8YnIgZGF0 YS1kYXJrb3NoYS1pZD0iMTozMTgiIHN0eWxlPSIiPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDticmVhazs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTozMTkiIHN0eWxl PSIiPgombmJzcDs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTozMjAiIHN0eWxlPSIiPgombmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtkYXRhID0gKHVpbnQ4X3QgKilkYXRhICsgKHB0cmRpZmZf dCl3cml0dGVuOzxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjMyMSIgc3R5bGU9IiI+CiZuYnNwOyZu YnNwOyZuYnNwO308YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTozMjIiIHN0eWxlPSIiPgotICBsdWFf YXNzZXJ0KHdyaXRlX3RvdGFsICZsdDs9IGxlbik7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzIz IiBzdHlsZT0iIj4KJm5ic3A7PGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzI0IiBzdHlsZT0iIj4K Jm5ic3A7Jm5ic3A7Jm5ic3A7KmJ1Zl9hZGRyID0gYnVmX3N0YXJ0OzxiciBkYXRhLWRhcmtvc2hh LWlkPSIxOjMyNSIgc3R5bGU9IiI+CiZuYnNwOyZuYnNwOyZuYnNwO3JldHVybiB3cml0ZV90b3Rh bDs8YnIgZGF0YS1kYXJrb3NoYS1pZD0iMTozMjYiIHN0eWxlPSIiPgo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PGJyIGRh dGEtZGFya29zaGEtaWQ9IjE6MzI3IiBzdHlsZT0iIj4KPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6 MzI4IiBzdHlsZT0iIj4KLS0gPGJyIGRhdGEtZGFya29zaGEtaWQ9IjE6MzI5IiBzdHlsZT0iIj4K QmVzdCByZWdhcmRzLDxiciBkYXRhLWRhcmtvc2hhLWlkPSIxOjMzMCIgc3R5bGU9IiI+ClNlcmdl eSBLYXBsdW48L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgCgkJPGJhc2UgdGFyZ2V0PSJfc2Vs ZiIgaHJlZj0iaHR0cHM6Ly9lLm1haWwucnUvIiBkYXRhLWRhcmtvc2hhLWlkPSIxOjMzMSIgc3R5 bGU9IiI+Cgk8L2Rpdj4KCgkKPC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjwvQk9EWT48 L0hUTUw+Cg== ----ALT--29077f71c1a941d1a13787c25d2f7bd51609083446--