From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 741BC46D5A; Mon, 18 Aug 2025 12:11:07 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3DE7340267; Mon, 18 Aug 2025 12:11:07 +0200 (CEST) Received: from out28-194.mail.aliyun.com (out28-194.mail.aliyun.com [115.124.28.194]) by mails.dpdk.org (Postfix) with ESMTP id C13894013F for ; Mon, 18 Aug 2025 12:11:04 +0200 (CEST) X-Alimail-AntiSpam: AC=CONTINUE; BC=0.07386655|-1; CH=green; DM=|CONTINUE|false|; DS=CONTINUE|ham_regular_dialog|0.0527928-0.00130474-0.945902; FP=10543716296327431910|0|0|0|0|-1|-1|-1; HT=maildocker-contentspam033045245067; MF=dimon.zhao@nebula-matrix.com; NM=1; PH=DW; RN=4; RT=4; SR=0; TI=W4_0.2.3_212DA4A6_1755511769527_o7001c6n; Received: from WS-web (dimon.zhao@nebula-matrix.com[W4_0.2.3_212DA4A6_1755511769527_o7001c6n] cluster:ay29) at Mon, 18 Aug 2025 18:11:00 +0800 Date: Mon, 18 Aug 2025 18:11:00 +0800 From: "Dimon" To: "Ivan Malov" Cc: "dev" , "Kyo Liu" , "Leon" , "Sam" Message-ID: Subject: =?UTF-8?B?5Zue5aSN77yaW1BBVENIIHY0IDE1LzE2XSBuZXQvbmJsOiBhZGQgbmJsIGRldmljZSB4c3Rh?= =?UTF-8?B?dHMgYW5kIHN0YXRz?= X-Mailer: [Alimail-Mailagent][W4_0.2.3][null][Chrome] MIME-Version: 1.0 x-aliyun-im-through: {"version":"v1.0"} References: <20250627014022.4019625-1-dimon.zhao@nebula-matrix.com> <20250813064410.3894506-1-dimon.zhao@nebula-matrix.com> <20250813064410.3894506-16-dimon.zhao@nebula-matrix.com>, <6a088ad9-2d80-88a0-81e8-d6fec073c0c8@arknetworks.am> x-aliyun-mail-creator: W4_0.2.3_null_d2lTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEwOC4wLjUzNTkuMTI1IFNhZmFyaS81MzcuMzYgZGluZ3RhbGstd2luLzEuMC4wIG53KDAuMTQuNykgRGluZ1RhbGsoNy43LjAtUmVsZWFzZS4yNTA1MjIwMDIpIE1vam8vMS4wLjAgTmF0aXZlIEFwcFR5cGUocmVsZWFzZSkgQ2hhbm5lbC8yMDEyMDAgQXJjaGl0ZWN0dXJlL3g4Nl82NA==Gs In-Reply-To: <6a088ad9-2d80-88a0-81e8-d6fec073c0c8@arknetworks.am> Content-Type: multipart/alternative; boundary="----=ALIBOUNDARY_1984_7ffa48a7b700_68a2fc34_150cd0" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Dimon Errors-To: dev-bounces@dpdk.org ------=ALIBOUNDARY_1984_7ffa48a7b700_68a2fc34_150cd0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 SGkgSXZhbu+8jAo+ICtzdGF0aWMgaW50Cj4gK25ibF9yZXNfdHhyeF9yZXNldF9zdGF0cyh2b2lk ICpwcml2KQo+ICt7Cj4gKyBzdHJ1Y3QgbmJsX3Jlc291cmNlX21ndCAqcmVzX21ndCA9IChzdHJ1 Y3QgbmJsX3Jlc291cmNlX21ndCAqKXByaXY7Cj4gKyBzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9k ZXYgPSByZXNfbWd0LT5ldGhfZGV2Owo+ICsgc3RydWN0IG5ibF9yZXNfcnhfcmluZyAqcnhxOwo+ ICsgc3RydWN0IG5ibF9yeHFfc3RhdHMgKnJ4cV9zdGF0czsKPiArIHN0cnVjdCBuYmxfcmVzX3R4 X3JpbmcgKnR4cTsKPiArIHN0cnVjdCBuYmxfdHhxX3N0YXRzICp0eHFfc3RhdHM7Cj4gKyB1aW50 MzJfdCBpOwo+ICsKPiArIC8qIEFkZCBzb2Z0d2FyZSBjb3VudGVycy4gKi8KPiArIGZvciAoaSA9 IDA7IGkgPCBldGhfZGV2LT5kYXRhLT5uYl9yeF9xdWV1ZXM7IGkrKykgewo+ICsgcnhxID0gZXRo X2Rldi0+ZGF0YS0+cnhfcXVldWVzW2ldOwo+ICsgaWYgKHVubGlrZWx5KHJ4cSA9PSBOVUxMKSkK PiArIGNvbnRpbnVlOwo+ICsKPiArIHJ4cV9zdGF0cyA9ICZyeHEtPnJ4cV9zdGF0czsKPiArIG1l bXNldChyeHFfc3RhdHMsIDAsIHNpemVvZihzdHJ1Y3QgbmJsX3J4cV9zdGF0cykpOwpXaGF0IGlm IHRoZSBhcHBsaWNhdGlvbiBoYXMgZGVkaWNhdGVkIGxjb3JlcyBmb3IgZGF0YXBhdGggUngvVHgg YnVyc3QgY2FsbHMgYW5kCnVzZXMgYW5vdGhlciwgYWRtaW4gY29yZSB0byBxdWVyeS9yZXNldCBz dGF0aXN0aWNzPwpGaXJzdCwgdGhpcyBpc3N1ZSBkb2VzIG5vdCBjYXVzZSBhbnkgY3Jhc2hlcy4g CkFkZGl0aW9uYWxseSwgSSB0aGluayB0aGVzZSBzdGF0aXN0aWNzIGFyZSBub3Qgc28gaW1wb3J0 YW5077yMaXQgaXMgdW5uZWNlc3NhcnkgdG8gc2V0IHJ0ZV9hdG9taWMgZm9yIHRoZW0sIGFzIGl0 IHdvdWxkIGludHJvZHVjZSB1bm5lY2Vzc2FyeSBwZXJmb3JtYW5jZSBvdmVyaGVhZC4KVGhhbmsg eW91LgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0K5Y+R5Lu25Lq677yaSXZhbiBNYWxvdiA8aXZhbi5tYWxvdkBhcmtuZXR3 b3Jrcy5hbT4K5Y+R6YCB5pe26Ze077yaMjAyNeW5tDjmnIgxM+aXpSjlkajkuIkpIDE5OjQ4CuaU tuS7tuS6uu+8mkRpbW9uPGRpbW9uLnpoYW9AbmVidWxhLW1hdHJpeC5jb20+CuaKhOOAgOmAge+8 mmRldjxkZXZAZHBkay5vcmc+OyBLeW8gTGl1PGt5by5saXVAbmVidWxhLW1hdHJpeC5jb20+OyBM ZW9uPGxlb24ueXVAbmVidWxhLW1hdHJpeC5jb20+OyBTYW08c2FtLmNoZW5AbmVidWxhLW1hdHJp eC5jb20+CuS4u+OAgOmimO+8mlJlOiBbUEFUQ0ggdjQgMTUvMTZdIG5ldC9uYmw6IGFkZCBuYmwg ZGV2aWNlIHhzdGF0cyBhbmQgc3RhdHMKSGkgRGltb24sCihwbGVhc2Ugc2VlIGJlbG93KQpPbiBU dWUsIDEyIEF1ZyAyMDI1LCBEaW1vbiBaaGFvIHdyb3RlOgo+IEltcGxlbWVudCBOQkwgZGV2aWNl IHhzdGF0cyBhbmQgc3RhdHMgZnVuY3Rpb25zCj4KPiBTaWduZWQtb2ZmLWJ5OiBEaW1vbiBaaGFv IDxkaW1vbi56aGFvQG5lYnVsYS1tYXRyaXguY29tPgo+IC0tLQo+IGRyaXZlcnMvbmV0L25ibC9u YmxfZGV2L25ibF9kZXYuYyB8IDE0MSArKysrKysrKysrKysrKysrKy0KPiBkcml2ZXJzL25ldC9u YmwvbmJsX2Rldi9uYmxfZGV2LmggfCA4ICsKPiBkcml2ZXJzL25ldC9uYmwvbmJsX2Rpc3BhdGNo LmMgfCAxMTEgKysrKysrKysrKysrKysKPiBkcml2ZXJzL25ldC9uYmwvbmJsX2V0aGRldi5jIHwg NCArCj4gLi4uL25ibC9uYmxfaHcvbmJsX2h3X2xlb25pcy9uYmxfcmVzX2xlb25pcy5jIHwgMTEz ICsrKysrKysrKysrKysrCj4gZHJpdmVycy9uZXQvbmJsL25ibF9ody9uYmxfdHhyeC5jIHwgMTEz ICsrKysrKysrKysrKystCj4gZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfY2hh bm5lbC5oIHwgNSArCj4gLi4uL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9kaXNwYXRjaC5o IHwgOSArKwo+IC4uLi9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfcmVzb3VyY2UuaCB8IDEy ICstCj4gZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9pbmNsdWRlLmggfCA0ICsKPiAx MCBmaWxlcyBjaGFuZ2VkLCA1MTQgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKPgo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9uYmwvbmJsX2Rldi9uYmxfZGV2LmMgYi9kcml2ZXJzL25l dC9uYmwvbmJsX2Rldi9uYmxfZGV2LmMKPiBpbmRleCBiMzJhYjgzOWQ1Li5iYWI4OWM3MDdmIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L25ibC9uYmxfZGV2L25ibF9kZXYuYwo+ICsrKyBiL2Ry aXZlcnMvbmV0L25ibC9uYmxfZGV2L25ibF9kZXYuYwo+IEBAIC0zODEsNiArMzgxLDEyNiBAQCBp bnQgbmJsX3N0YXRzX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYsIHN0cnVjdCBydGVf ZXRoX3N0YXRzICpydGVfc3RhdHMpCj4gcmV0dXJuIGRpc3Bfb3BzLT5nZXRfc3RhdHMoTkJMX0RF Vl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLCBydGVfc3RhdHMpOwo+IH0KPgo+ICtpbnQgbmJs X3N0YXRzX3Jlc2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldikKPiArewo+ICsgc3RydWN0 IG5ibF9hZGFwdGVyICphZGFwdGVyID0gRVRIX0RFVl9UT19OQkxfREVWX1BGX1BSSVYoZXRoX2Rl dik7Cj4gKyBzdHJ1Y3QgbmJsX2Rldl9tZ3QgKmRldl9tZ3QgPSBOQkxfQURBUFRFUl9UT19ERVZf TUdUKGFkYXB0ZXIpOwo+ICsgc3RydWN0IG5ibF9kaXNwYXRjaF9vcHMgKmRpc3Bfb3BzID0gTkJM X0RFVl9NR1RfVE9fRElTUF9PUFMoZGV2X21ndCk7Cj4gKwo+ICsgcmV0dXJuIGRpc3Bfb3BzLT5y ZXNldF9zdGF0cyhOQkxfREVWX01HVF9UT19ESVNQX1BSSVYoZGV2X21ndCkpOwo+ICt9Cj4gKwo+ ICtzdGF0aWMgaW50IG5ibF9kZXZfdXBkYXRlX2h3X3hzdGF0cyhzdHJ1Y3QgbmJsX2Rldl9tZ3Qg KmRldl9tZ3QsIHN0cnVjdCBydGVfZXRoX3hzdGF0ICp4c3RhdHMsCj4gKyB1MTYgaHdfeHN0YXRz X2NudCwgdTE2ICp4c3RhdHNfY250KQo+ICt7Cj4gKyBzdHJ1Y3QgbmJsX2NvbW1vbl9pbmZvICpj b21tb24gPSBOQkxfREVWX01HVF9UT19DT01NT04oZGV2X21ndCk7Cj4gKyBzdHJ1Y3QgbmJsX2Rp c3BhdGNoX29wcyAqZGlzcF9vcHMgPSBOQkxfREVWX01HVF9UT19ESVNQX09QUyhkZXZfbWd0KTsK PiArIHU2NCAqaHdfc3RhdHM7Cj4gKyBpbnQgaTsKPiArIHUxNiBjb3VudCA9ICp4c3RhdHNfY250 Owo+ICsKPiArIGh3X3N0YXRzID0gcnRlX3ptYWxsb2MoIm5ibF94c3RhdHNfY250IiwgaHdfeHN0 YXRzX2NudCAqIHNpemVvZih1NjQpLCAwKTsKRG8geW91IGJlbGlldmUgaXQncyB0aGUgYmVzdCBj b3Vyc2Ugb2YgYWN0aW9uLCB0byBhbGxvY2F0ZSBhbmQgZnJlZSBhIGJvdW5jZQpidWZmZXIgb24g ZWFjaCBpbnZvY2F0aW9uPyBUaGlzIGZ1bmN0aW9uIGlzIG5vdCBzdHJpY3RseSBmYXN0LXBhdGgs IGJ1dCBJJ2Qgc2F5CnNlbWktZmFzdC4gU29tZSBhcHBsaWNhdGlvbnMgbWF5IHdhbnQgdG8gaW52 b2tlIGl0IHByZXR0eSBvZnRlbi4KPiArIGlmICghaHdfc3RhdHMpCj4gKyByZXR1cm4gLUVOT01F TTsKPiArCj4gKyBkaXNwX29wcy0+Z2V0X3ByaXZhdGVfc3RhdF9kYXRhKE5CTF9ERVZfTUdUX1RP X0RJU1BfUFJJVihkZXZfbWd0KSwKPiArIGNvbW1vbi0+ZXRoX2lkLCBod19zdGF0cywgaHdfeHN0 YXRzX2NudCAqIHNpemVvZih1NjQpKTsKPiArIGZvciAoaSA9IDA7IGkgPCBod194c3RhdHNfY250 OyBpKyspIHsKPiArIHhzdGF0c1tjb3VudF0udmFsdWUgPSBod19zdGF0c1tpXSAtIGRldl9tZ3Qt Pm5ldF9kZXYtPmh3X3hzdGF0c19vZmZzZXRbaV07Cj4gKyB4c3RhdHNbY291bnRdLmlkID0gY291 bnQ7Cj4gKyBjb3VudCsrOwo+ICsgfQo+ICsKPiArICp4c3RhdHNfY250ID0gY291bnQ7Cj4gKyBy dGVfZnJlZShod19zdGF0cyk7Cj4gKyByZXR1cm4gMDsKPiArfQo+ICsKPiAraW50IG5ibF94c3Rh dHNfZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2Rldiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXQg KnhzdGF0cywgdW5zaWduZWQgaW50IG4pCj4gK3sKPiArIHN0cnVjdCBuYmxfYWRhcHRlciAqYWRh cHRlciA9IEVUSF9ERVZfVE9fTkJMX0RFVl9QRl9QUklWKGV0aF9kZXYpOwo+ICsgc3RydWN0IG5i bF9kZXZfbWd0ICpkZXZfbWd0ID0gTkJMX0FEQVBURVJfVE9fREVWX01HVChhZGFwdGVyKTsKPiAr IHN0cnVjdCBuYmxfY29tbW9uX2luZm8gKmNvbW1vbiA9IE5CTF9ERVZfTUdUX1RPX0NPTU1PTihk ZXZfbWd0KTsKPiArIHN0cnVjdCBuYmxfZGlzcGF0Y2hfb3BzICpkaXNwX29wcyA9IE5CTF9ERVZf TUdUX1RPX0RJU1BfT1BTKGRldl9tZ3QpOwo+ICsgaW50IHJldCA9IDA7Cj4gKyB1MTYgdHhyeF94 c3RhdHNfY250ID0gMCwgaHdfeHN0YXRzX2NudCA9IDAsIHhzdGF0c19jbnQgPSAwOwo+ICsKPiAr IGlmICgheHN0YXRzKQo+ICsgcmV0dXJuIDA7Cj4gKwo+ICsgcmV0ID0gZGlzcF9vcHMtPmdldF90 eHJ4X3hzdGF0c19jbnQoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLCAmdHhyeF94 c3RhdHNfY250KTsKPiArIGlmICghY29tbW9uLT5pc192ZikKPiArIHJldCB8PSBkaXNwX29wcy0+ Z2V0X2h3X3hzdGF0c19jbnQoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLAo+ICsg Jmh3X3hzdGF0c19jbnQpOwo+ICsgaWYgKHJldCkKPiArIHJldHVybiAtRUlPOwo+ICsKPiArIGlm IChuIDwgKHR4cnhfeHN0YXRzX2NudCArIGh3X3hzdGF0c19jbnQpKQo+ICsgcmV0dXJuIHR4cnhf eHN0YXRzX2NudCArIGh3X3hzdGF0c19jbnQ7Cj4gKwo+ICsgaWYgKHR4cnhfeHN0YXRzX2NudCkK PiArIHJldCA9IGRpc3Bfb3BzLT5nZXRfdHhyeF94c3RhdHMoTkJMX0RFVl9NR1RfVE9fRElTUF9Q UklWKGRldl9tZ3QpLAo+ICsgeHN0YXRzLCAmeHN0YXRzX2NudCk7Cj4gKyBpZiAoaHdfeHN0YXRz X2NudCkKPiArIHJldCB8PSBuYmxfZGV2X3VwZGF0ZV9od194c3RhdHMoZGV2X21ndCwgeHN0YXRz LCBod194c3RhdHNfY250LCAmeHN0YXRzX2NudCk7Cj4gKwo+ICsgaWYgKHJldCkKPiArIHJldHVy biAtRUlPOwo+ICsKPiArIHJldHVybiB4c3RhdHNfY250Owo+ICt9Cj4gKwo+ICtpbnQgbmJsX3hz dGF0c19nZXRfbmFtZXMoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2LAo+ICsgc3RydWN0IHJ0 ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVzLAo+ICsgX19ydGVfdW51c2VkIHVuc2lnbmVk IGludCBsaW1pdCkKPiArewo+ICsgc3RydWN0IG5ibF9hZGFwdGVyICphZGFwdGVyID0gRVRIX0RF Vl9UT19OQkxfREVWX1BGX1BSSVYoZXRoX2Rldik7Cj4gKyBzdHJ1Y3QgbmJsX2Rldl9tZ3QgKmRl dl9tZ3QgPSBOQkxfQURBUFRFUl9UT19ERVZfTUdUKGFkYXB0ZXIpOwo+ICsgc3RydWN0IG5ibF9j b21tb25faW5mbyAqY29tbW9uID0gTkJMX0RFVl9NR1RfVE9fQ09NTU9OKGRldl9tZ3QpOwo+ICsg c3RydWN0IG5ibF9kaXNwYXRjaF9vcHMgKmRpc3Bfb3BzID0gTkJMX0RFVl9NR1RfVE9fRElTUF9P UFMoZGV2X21ndCk7Cj4gKyB1MTYgdHhyeF94c3RhdHNfY250ID0gMCwgaHdfeHN0YXRzX2NudCA9 IDAsIHhzdGF0c19jbnQgPSAwOwo+ICsgaW50IHJldCA9IDA7Cj4gKwo+ICsgcmV0ID0gZGlzcF9v cHMtPmdldF90eHJ4X3hzdGF0c19jbnQoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3Qp LCAmdHhyeF94c3RhdHNfY250KTsKRXhjZWVkcyA4MC1jb2x1bW4gbGltaXQuCj4gKyBpZiAoIWNv bW1vbi0+aXNfdmYpCj4gKyByZXQgfD0gZGlzcF9vcHMtPmdldF9od194c3RhdHNfY250KE5CTF9E RVZfTUdUX1RPX0RJU1BfUFJJVihkZXZfbWd0KSwKPiArICZod194c3RhdHNfY250KTsKPiArIGlm IChyZXQpCj4gKyByZXR1cm4gLUVJTzsKPiArCj4gKyBpZiAoIXhzdGF0c19uYW1lcykKPiArIHJl dHVybiB0eHJ4X3hzdGF0c19jbnQgKyBod194c3RhdHNfY250Owo+ICsKPiArIGlmICh0eHJ4X3hz dGF0c19jbnQpCj4gKyByZXQgPSBkaXNwX29wcy0+Z2V0X3R4cnhfeHN0YXRzX25hbWVzKE5CTF9E RVZfTUdUX1RPX0RJU1BfUFJJVihkZXZfbWd0KSwKPiArIHhzdGF0c19uYW1lcywgJnhzdGF0c19j bnQpOwo+ICsgaWYgKGh3X3hzdGF0c19jbnQpCj4gKyByZXQgfD0gZGlzcF9vcHMtPmdldF9od194 c3RhdHNfbmFtZXMoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLAo+ICsgeHN0YXRz X25hbWVzLCAmeHN0YXRzX2NudCk7Cj4gKyBpZiAocmV0KQo+ICsgcmV0dXJuIC1FSU87Cj4gKwo+ ICsgcmV0dXJuIHhzdGF0c19jbnQ7Cj4gK30KPiArCj4gK2ludCBuYmxfeHN0YXRzX3Jlc2V0KHN0 cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldikKPiArewo+ICsgc3RydWN0IG5ibF9hZGFwdGVyICph ZGFwdGVyID0gRVRIX0RFVl9UT19OQkxfREVWX1BGX1BSSVYoZXRoX2Rldik7Cj4gKyBzdHJ1Y3Qg bmJsX2Rldl9tZ3QgKmRldl9tZ3QgPSBOQkxfQURBUFRFUl9UT19ERVZfTUdUKGFkYXB0ZXIpOwo+ ICsgc3RydWN0IG5ibF9jb21tb25faW5mbyAqY29tbW9uID0gTkJMX0RFVl9NR1RfVE9fQ09NTU9O KGRldl9tZ3QpOwo+ICsgc3RydWN0IG5ibF9kaXNwYXRjaF9vcHMgKmRpc3Bfb3BzID0gTkJMX0RF Vl9NR1RfVE9fRElTUF9PUFMoZGV2X21ndCk7Cj4gKyBzdHJ1Y3QgbmJsX2Rldl9uZXRfbWd0ICpu ZXRfZGV2ID0gZGV2X21ndC0+bmV0X2RldjsKPiArCj4gKyBpZiAoIWNvbW1vbi0+aXNfdmYpIHsK PiArIGRpc3Bfb3BzLT5nZXRfcHJpdmF0ZV9zdGF0X2RhdGEoTkJMX0RFVl9NR1RfVE9fRElTUF9Q UklWKGRldl9tZ3QpLAo+ICsgZGV2X21ndC0+Y29tbW9uLT5ldGhfaWQsCj4gKyBuZXRfZGV2LT5o d194c3RhdHNfb2Zmc2V0LCBuZXRfZGV2LT5od194c3RhdHNfc2l6ZSk7Cj4gKyB9Cj4gKwo+ICsg bmJsX3N0YXRzX3Jlc2V0KGV0aF9kZXYpOwo+ICsgcmV0dXJuIDA7Cj4gK30KPiArCj4gc3RydWN0 IG5ibF9kZXZfb3BzIGRldl9vcHMgPSB7Cj4gfTsKPgo+IEBAIC00MzUsNiArNTU1LDcgQEAgc3Rh dGljIGludCBuYmxfZGV2X2NvbW1vbl9zdGFydChzdHJ1Y3QgbmJsX2Rldl9tZ3QgKmRldl9tZ3Qp Cj4gc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqaW50cl9oYW5kbGUgPSBwY2lfZGV2LT5pbnRyX2hh bmRsZTsKPiB1OCAqbWFjOwo+IGludCByZXQ7Cj4gKyB1MTYgcHJpdl9jbnQgPSAwOwo+Cj4gYm9h cmRfaW5mbyA9ICZjb21tb24tPmJvYXJkX2luZm87Cj4gZGlzcF9vcHMtPmdldF9ib2FyZF9pbmZv KE5CTF9ERVZfTUdUX1RPX0RJU1BfUFJJVihkZXZfbWd0KSwgYm9hcmRfaW5mbyk7Cj4gQEAgLTQ3 Nyw4ICs1OTgsMjUgQEAgc3RhdGljIGludCBuYmxfZGV2X2NvbW1vbl9zdGFydChzdHJ1Y3QgbmJs X2Rldl9tZ3QgKmRldl9tZ3QpCj4gZ290byBhZGRfbXVsdGlfcnVsZV9mYWlsZWQ7Cj4gfQo+Cj4g LSByZXR1cm4gMDsKPiArIG5ldF9kZXYtPmh3X3hzdGF0c19vZmZzZXQgPSBOVUxMOwo+ICsgaWYg KCFkZXZfbWd0LT5jb21tb24tPmlzX3ZmKQo+ICsgZGlzcF9vcHMtPmdldF9od194c3RhdHNfY250 KE5CTF9ERVZfTUdUX1RPX0RJU1BfUFJJVihkZXZfbWd0KSwgJnByaXZfY250KTsKPiArIGlmIChw cml2X2NudCkgewo+ICsgbmV0X2Rldi0+aHdfeHN0YXRzX29mZnNldCA9IHJ0ZV96bWFsbG9jKCJu YmxfeHN0YXRzX2NudCIsCj4gKyBwcml2X2NudCAqIHNpemVvZih1NjQpLCAwKTsKPiArIG5ldF9k ZXYtPmh3X3hzdGF0c19zaXplID0gcHJpdl9jbnQgKiBzaXplb2YodTY0KTsKPiArIGlmICghbmV0 X2Rldi0+aHdfeHN0YXRzX29mZnNldCkgewo+ICsgcmV0ID0gLUVOT01FTTsKPiArIGdvdG8gYWxs b2NfeHN0YXRzX29mZnNldF9mYWlsZWQ7Cj4gKyB9Cj4gKwo+ICsgZGlzcF9vcHMtPmdldF9wcml2 YXRlX3N0YXRfZGF0YShOQkxfREVWX01HVF9UT19ESVNQX1BSSVYoZGV2X21ndCksCj4gKyBkZXZf bWd0LT5jb21tb24tPmV0aF9pZCwKPiArIG5ldF9kZXYtPmh3X3hzdGF0c19vZmZzZXQsIG5ldF9k ZXYtPmh3X3hzdGF0c19zaXplKTsKPiArIH0KPgo+ICsgcmV0dXJuIDA7Cj4gK2FsbG9jX3hzdGF0 c19vZmZzZXRfZmFpbGVkOgo+IGFkZF9tdWx0aV9ydWxlX2ZhaWxlZDoKPiBkaXNwX29wcy0+ZGVs X21hY3ZsYW4oTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLCBtYWMsIDAsIG5ldF9k ZXYtPnZzaV9pZCk7Cj4gYWRkX21hY3ZsYW5fZmFpbGVkOgo+IEBAIC03NTcsNiArODk1LDcgQEAg aW50IG5ibF9kZXZfaW5pdCh2b2lkICpwLCBzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpCj4g ZXRoX2Rldi0+ZGF0YS0+bWFjX2FkZHJzWzBdLmFkZHJfYnl0ZXMpOwo+Cj4gYWRhcHRlci0+c3Rh dGUgPSBOQkxfRVRIREVWX0lOSVRJQUxJWkVEOwo+ICsgZXRoX2Rldi0+ZGF0YS0+ZGV2X2ZsYWdz IHw9IFJURV9FVEhfREVWX0FVVE9GSUxMX1FVRVVFX1hTVEFUUzsKPiBkaXNwX29wcy0+Z2V0X3Jl c291cmNlX3B0X29wcyhOQkxfREVWX01HVF9UT19ESVNQX1BSSVYoKmRldl9tZ3QpLAo+ICYoKmRl dl9tZ3QpLT5wdF9vcHMsIDApOwo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L25ibC9uYmxf ZGV2L25ibF9kZXYuaCBiL2RyaXZlcnMvbmV0L25ibC9uYmxfZGV2L25ibF9kZXYuaAo+IGluZGV4 IDU3N2EyOGIzMmQuLjE1MDBhNzgyYTUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvbmJsL25i bF9kZXYvbmJsX2Rldi5oCj4gKysrIGIvZHJpdmVycy9uZXQvbmJsL25ibF9kZXYvbmJsX2Rldi5o Cj4gQEAgLTQxLDYgKzQxLDggQEAgc3RydWN0IG5ibF9kZXZfbmV0X21ndCB7Cj4gc3RydWN0IHJ0 ZV9ldGhfZGV2ICpldGhfZGV2Owo+IHN0cnVjdCBuYmxfZGV2X3JpbmdfbWd0IHJpbmdfbWd0Owo+ IHN0cnVjdCBuYmxfZXRoX2xpbmtfaW5mbyBldGhfbGlua19pbmZvOwo+ICsgdTY0ICpod194c3Rh dHNfb2Zmc2V0Owo+ICsgdTMyIGh3X3hzdGF0c19zaXplOwo+IHUxNiB2c2lfaWQ7Cj4gdTggZXRo X21vZGU7Cj4gdTggZXRoX2lkOwo+IEBAIC03MSw1ICs3MywxMSBAQCB2b2lkIG5ibF9yeF9xdWV1 ZXNfcmVsZWFzZShzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYsIHVpbnQxNl90IHF1ZXVlX2lk KTsKPiBpbnQgbmJsX2Rldl9pbmZvc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2IF9f cnRlX3VudXNlZCwgc3RydWN0IHJ0ZV9ldGhfZGV2X2luZm8gKmRldl9pbmZvKTsKPiBpbnQgbmJs X2xpbmtfdXBkYXRlKHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldiwgaW50IHdhaXRfdG9fY29t cGxldGUgX19ydGVfdW51c2VkKTsKPiBpbnQgbmJsX3N0YXRzX2dldChzdHJ1Y3QgcnRlX2V0aF9k ZXYgKmV0aF9kZXYsIHN0cnVjdCBydGVfZXRoX3N0YXRzICpydGVfc3RhdHMpOwo+ICtpbnQgbmJs X3N0YXRzX3Jlc2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2Rldik7Cj4gK2ludCBuYmxfeHN0 YXRzX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0 ICp4c3RhdHMsIHVuc2lnbmVkIGludCBuKTsKPiAraW50IG5ibF94c3RhdHNfZ2V0X25hbWVzKHN0 cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldiwKPiArIHN0cnVjdCBydGVfZXRoX3hzdGF0X25hbWUg KnhzdGF0c19uYW1lcywKPiArIF9fcnRlX3VudXNlZCB1bnNpZ25lZCBpbnQgbGltaXQpOwo+ICtp bnQgbmJsX3hzdGF0c19yZXNldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpOwo+Cj4gI2Vu ZGlmCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L25ibC9uYmxfZGlzcGF0Y2guYyBiL2RyaXZl cnMvbmV0L25ibC9uYmxfZGlzcGF0Y2guYwo+IGluZGV4IDkzODJiNzZjZTYuLjE1ZWE2MWQ4ZTQg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvbmJsL25ibF9kaXNwYXRjaC5jCj4gKysrIGIvZHJp dmVycy9uZXQvbmJsL25ibF9kaXNwYXRjaC5jCj4gQEAgLTgwOSw5ICs4MDksOTQgQEAgc3RhdGlj IGludCBuYmxfZGlzcF9nZXRfc3RhdHModm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfc3RhdHMg KnJ0ZV9zdGF0cykKPiB7Cj4gc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0ID0gKHN0 cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICopcHJpdjsKPiBzdHJ1Y3QgbmJsX3Jlc291cmNlX29wcyAq cmVzX29wcyA9IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0KTsKPiArCj4gcmV0dXJu IHJlc19vcHMtPmdldF9zdGF0cyhOQkxfRElTUF9NR1RfVE9fUkVTX1BSSVYoZGlzcF9tZ3QpLCBy dGVfc3RhdHMpOwo+IH0KPgo+ICtzdGF0aWMgaW50IG5ibF9kaXNwX3Jlc2V0X3N0YXRzKHZvaWQg KnByaXYpCj4gK3sKPiArIHN0cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICpkaXNwX21ndCA9IChzdHJ1 Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXByaXY7Cj4gKyBzdHJ1Y3QgbmJsX3Jlc291cmNlX29wcyAq cmVzX29wcyA9IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0KTsKPiArCj4gKyByZXR1 cm4gcmVzX29wcy0+cmVzZXRfc3RhdHMoTkJMX0RJU1BfTUdUX1RPX1JFU19QUklWKGRpc3BfbWd0 KSk7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgbmJsX2Rpc3BfZ2V0X3R4cnhfeHN0YXRzX2NudCh2 b2lkICpwcml2LCB1MTYgKnhzdGF0c19jbnQpCj4gK3sKPiArIHN0cnVjdCBuYmxfZGlzcGF0Y2hf bWd0ICpkaXNwX21ndCA9IChzdHJ1Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXByaXY7Cj4gKyBzdHJ1 Y3QgbmJsX3Jlc291cmNlX29wcyAqcmVzX29wczsKPiArCj4gKyByZXNfb3BzID0gTkJMX0RJU1Bf TUdUX1RPX1JFU19PUFMoZGlzcF9tZ3QpOwo+ICsgcmV0dXJuIHJlc19vcHMtPmdldF90eHJ4X3hz dGF0c19jbnQoTkJMX0RJU1BfTUdUX1RPX1JFU19QUklWKGRpc3BfbWd0KSwgeHN0YXRzX2NudCk7 Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgbmJsX2Rpc3BfZ2V0X3R4cnhfeHN0YXRzKHZvaWQgKnBy aXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0ICp4c3RhdHMsIHUxNiAqeHN0YXRzX2NudCkKPiArewo+ ICsgc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0ID0gKHN0cnVjdCBuYmxfZGlzcGF0 Y2hfbWd0ICopcHJpdjsKPiArIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzICpyZXNfb3BzOwo+ICsK PiArIHJlc19vcHMgPSBOQkxfRElTUF9NR1RfVE9fUkVTX09QUyhkaXNwX21ndCk7Cj4gKyByZXR1 cm4gcmVzX29wcy0+Z2V0X3R4cnhfeHN0YXRzKE5CTF9ESVNQX01HVF9UT19SRVNfUFJJVihkaXNw X21ndCksIHhzdGF0cywgeHN0YXRzX2NudCk7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgbmJsX2Rp c3BfZ2V0X3R4cnhfeHN0YXRzX25hbWVzKHZvaWQgKnByaXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0 X25hbWUgKnhzdGF0c19uYW1lcywKPiArIHUxNiAqeHN0YXRzX2NudCkKPiArewo+ICsgc3RydWN0 IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0ID0gKHN0cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICop cHJpdjsKPiArIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzICpyZXNfb3BzOwo+ICsKPiArIHJlc19v cHMgPSBOQkxfRElTUF9NR1RfVE9fUkVTX09QUyhkaXNwX21ndCk7Cj4gKyByZXR1cm4gcmVzX29w cy0+Z2V0X3R4cnhfeHN0YXRzX25hbWVzKE5CTF9ESVNQX01HVF9UT19SRVNfUFJJVihkaXNwX21n dCksCj4gKyB4c3RhdHNfbmFtZXMsIHhzdGF0c19jbnQpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW50 IG5ibF9kaXNwX2dldF9od194c3RhdHNfY250KHZvaWQgKnByaXYsIHUxNiAqeHN0YXRzX2NudCkK PiArewo+ICsgc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0ID0gKHN0cnVjdCBuYmxf ZGlzcGF0Y2hfbWd0ICopcHJpdjsKPiArIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzICpyZXNfb3Bz Owo+ICsKPiArIHJlc19vcHMgPSBOQkxfRElTUF9NR1RfVE9fUkVTX09QUyhkaXNwX21ndCk7Cj4g KyByZXR1cm4gcmVzX29wcy0+Z2V0X2h3X3hzdGF0c19jbnQoTkJMX0RJU1BfTUdUX1RPX1JFU19Q UklWKGRpc3BfbWd0KSwgeHN0YXRzX2NudCk7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgbmJsX2Rp c3BfZ2V0X2h3X3hzdGF0c19uYW1lcyh2b2lkICpwcml2LCBzdHJ1Y3QgcnRlX2V0aF94c3RhdF9u YW1lICp4c3RhdHNfbmFtZXMsCj4gKyB1MTYgKnhzdGF0c19jbnQpCj4gK3sKPiArIHN0cnVjdCBu YmxfZGlzcGF0Y2hfbWd0ICpkaXNwX21ndCA9IChzdHJ1Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXBy aXY7Cj4gKyBzdHJ1Y3QgbmJsX3Jlc291cmNlX29wcyAqcmVzX29wczsKPiArCj4gKyByZXNfb3Bz ID0gTkJMX0RJU1BfTUdUX1RPX1JFU19PUFMoZGlzcF9tZ3QpOwo+ICsgcmV0dXJuIHJlc19vcHMt PmdldF9od194c3RhdHNfbmFtZXMoTkJMX0RJU1BfTUdUX1RPX1JFU19QUklWKGRpc3BfbWd0KSwK PiArIHhzdGF0c19uYW1lcywgeHN0YXRzX2NudCk7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIG5i bF9kaXNwX2dldF9wcml2YXRlX3N0YXRfZGF0YSh2b2lkICpwcml2LCB1MzIgZXRoX2lkLCB1NjQg KmRhdGEsCj4gKyBfX3J0ZV91bnVzZWQgdTMyIGRhdGFfbGVuKQo+ICt7Cj4gKyBzdHJ1Y3QgbmJs X2Rpc3BhdGNoX21ndCAqZGlzcF9tZ3QgPSAoc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKilwcml2 Owo+ICsgc3RydWN0IG5ibF9yZXNvdXJjZV9vcHMgKnJlc19vcHM7Cj4gKwo+ICsgcmVzX29wcyA9 IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0KTsKPiArIE5CTF9PUFNfQ0FMTChyZXNf b3BzLT5nZXRfcHJpdmF0ZV9zdGF0X2RhdGEsCj4gKyAoTkJMX0RJU1BfTUdUX1RPX1JFU19QUklW KGRpc3BfbWd0KSwgZXRoX2lkLCBkYXRhKSk7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIG5ibF9k aXNwX2dldF9wcml2YXRlX3N0YXRfZGF0YV9yZXEodm9pZCAqcHJpdiwgdTMyIGV0aF9pZCwgdTY0 ICpkYXRhLCB1MzIgZGF0YV9sZW4pCj4gK3sKPiArIHN0cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICpk aXNwX21ndCA9IChzdHJ1Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXByaXY7Cj4gKyBzdHJ1Y3QgbmJs X2NoYW5uZWxfb3BzICpjaGFuX29wczsKPiArIHN0cnVjdCBuYmxfY2hhbl9zZW5kX2luZm8gY2hh bl9zZW5kID0gezB9Owo+ICsgc3RydWN0IG5ibF9jaGFuX3BhcmFtX2dldF9wcml2YXRlX3N0YXRf ZGF0YSBwYXJhbSA9IHswfTsKPiArCj4gKyBjaGFuX29wcyA9IE5CTF9ESVNQX01HVF9UT19DSEFO X09QUyhkaXNwX21ndCk7Cj4gKwo+ICsgcGFyYW0uZXRoX2lkID0gZXRoX2lkOwo+ICsgcGFyYW0u ZGF0YV9sZW4gPSBkYXRhX2xlbjsKPiArIE5CTF9DSEFOX1NFTkQoY2hhbl9zZW5kLCAwLCBOQkxf Q0hBTl9NU0dfR0VUX0VUSF9TVEFUUywgJnBhcmFtLAo+ICsgc2l6ZW9mKHBhcmFtKSwgZGF0YSwg ZGF0YV9sZW4sIDEpOwo+ICsgY2hhbl9vcHMtPnNlbmRfbXNnKE5CTF9ESVNQX01HVF9UT19DSEFO X1BSSVYoZGlzcF9tZ3QpLCAmY2hhbl9zZW5kKTsKPiArfQo+ICsKPiAjZGVmaW5lIE5CTF9ESVNQ X09QU19UQkwgXAo+IGRvIHsgXAo+IE5CTF9ESVNQX1NFVF9PUFMoY29uZmlndXJlX21zaXhfbWFw LCBuYmxfZGlzcF9jb25maWd1cmVfbXNpeF9tYXAsIFwKPiBAQCAtOTU2LDYgKzEwNDEsMzIgQEAg ZG8geyBcCj4gTkJMX0RJU1BfU0VUX09QUyhnZXRfc3RhdHMsIG5ibF9kaXNwX2dldF9zdGF0cywg XAo+IE5CTF9ESVNQX0NUUkxfTFZMX0FMV0FZUywgLTEsIFwKPiBOVUxMLCBOVUxMKTsgXAo+ICsg TkJMX0RJU1BfU0VUX09QUyhyZXNldF9zdGF0cywgbmJsX2Rpc3BfcmVzZXRfc3RhdHMsIFwKPiAr IE5CTF9ESVNQX0NUUkxfTFZMX0FMV0FZUywgLTEsIFwKPiArIE5VTEwsIE5VTEwpOyBcCj4gKyBO QkxfRElTUF9TRVRfT1BTKGdldF90eHJ4X3hzdGF0c19jbnQsIFwKPiArIG5ibF9kaXNwX2dldF90 eHJ4X3hzdGF0c19jbnQsIFwKPiArIE5CTF9ESVNQX0NUUkxfTFZMX0FMV0FZUywgLTEsIFwKPiAr IE5VTEwsIE5VTEwpOyBcCj4gKyBOQkxfRElTUF9TRVRfT1BTKGdldF90eHJ4X3hzdGF0cywgbmJs X2Rpc3BfZ2V0X3R4cnhfeHN0YXRzLCBcCj4gKyBOQkxfRElTUF9DVFJMX0xWTF9BTFdBWVMsIC0x LCBcCj4gKyBOVUxMLCBOVUxMKTsgXAo+ICsgTkJMX0RJU1BfU0VUX09QUyhnZXRfdHhyeF94c3Rh dHNfbmFtZXMsIFwKPiArIG5ibF9kaXNwX2dldF90eHJ4X3hzdGF0c19uYW1lcywgXAo+ICsgTkJM X0RJU1BfQ1RSTF9MVkxfQUxXQVlTLCAtMSwgXAo+ICsgTlVMTCwgTlVMTCk7IFwKPiArIE5CTF9E SVNQX1NFVF9PUFMoZ2V0X2h3X3hzdGF0c19jbnQsIG5ibF9kaXNwX2dldF9od194c3RhdHNfY250 LCBcCj4gKyBOQkxfRElTUF9DVFJMX0xWTF9BTFdBWVMsIC0xLCBcCj4gKyBOVUxMLCBOVUxMKTsg XAo+ICsgTkJMX0RJU1BfU0VUX09QUyhnZXRfaHdfeHN0YXRzX25hbWVzLCBcCj4gKyBuYmxfZGlz cF9nZXRfaHdfeHN0YXRzX25hbWVzLCBcCj4gKyBOQkxfRElTUF9DVFJMX0xWTF9BTFdBWVMsIC0x LCBcCj4gKyBOVUxMLCBOVUxMKTsgXAo+ICsgTkJMX0RJU1BfU0VUX09QUyhnZXRfcHJpdmF0ZV9z dGF0X2RhdGEsIFwKPiArIG5ibF9kaXNwX2dldF9wcml2YXRlX3N0YXRfZGF0YSwgXAo+ICsgTkJM X0RJU1BfQ1RSTF9MVkxfTUdULCBcCj4gKyBOQkxfQ0hBTl9NU0dfR0VUX0VUSF9TVEFUUywgXAo+ ICsgbmJsX2Rpc3BfZ2V0X3ByaXZhdGVfc3RhdF9kYXRhX3JlcSwgTlVMTCk7IFwKPiB9IHdoaWxl ICgwKQo+Cj4gLyogU3RydWN0dXJlIHN0YXJ0cyBoZXJlLCBhZGRpbmcgYW4gb3Agc2hvdWxkIG5v dCBtb2RpZnkgYW55dGhpbmcgYmVsb3cgKi8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvbmJs L25ibF9ldGhkZXYuYyBiL2RyaXZlcnMvbmV0L25ibC9uYmxfZXRoZGV2LmMKPiBpbmRleCBmMzBh Y2EyYjdmLi44MWI4OTQ2YWNjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L25ibC9uYmxfZXRo ZGV2LmMKPiArKysgYi9kcml2ZXJzL25ldC9uYmwvbmJsX2V0aGRldi5jCj4gQEAgLTQxLDYgKzQx LDEwIEBAIGNvbnN0IHN0cnVjdCBldGhfZGV2X29wcyBuYmxfZXRoX2Rldl9vcHMgPSB7Cj4gLmRl dl9pbmZvc19nZXQgPSBuYmxfZGV2X2luZm9zX2dldCwKPiAubGlua191cGRhdGUgPSBuYmxfbGlu a191cGRhdGUsCj4gLnN0YXRzX2dldCA9IG5ibF9zdGF0c19nZXQsCj4gKyAuc3RhdHNfcmVzZXQg PSBuYmxfc3RhdHNfcmVzZXQsCj4gKyAueHN0YXRzX2dldCA9IG5ibF94c3RhdHNfZ2V0LAo+ICsg LnhzdGF0c19nZXRfbmFtZXMgPSBuYmxfeHN0YXRzX2dldF9uYW1lcywKPiArIC54c3RhdHNfcmVz ZXQgPSBuYmxfeHN0YXRzX3Jlc2V0LAo+IH07Cj4KPiBzdGF0aWMgaW50IG5ibF9ldGhfZGV2X2lu aXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2KQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25l dC9uYmwvbmJsX2h3L25ibF9od19sZW9uaXMvbmJsX3Jlc19sZW9uaXMuYyBiL2RyaXZlcnMvbmV0 L25ibC9uYmxfaHcvbmJsX2h3X2xlb25pcy9uYmxfcmVzX2xlb25pcy5jCj4gaW5kZXggZTcwMzYz NzNmMS4uNDFhZTQyM2ZmMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC9uYmwvbmJsX2h3L25i bF9od19sZW9uaXMvbmJsX3Jlc19sZW9uaXMuYwo+ICsrKyBiL2RyaXZlcnMvbmV0L25ibC9uYmxf aHcvbmJsX2h3X2xlb25pcy9uYmxfcmVzX2xlb25pcy5jCj4gQEAgLTQsNyArNCwxMjAgQEAKPgo+ ICNpbmNsdWRlICJuYmxfcmVzX2xlb25pcy5oIgo+Cj4gKy8qIHN0b3JlIHN0YXRpc3RpY3MgbmFt ZXMgKi8KPiArc3RydWN0IG5ibF94c3RhdHNfbmFtZSB7Cj4gKyBjaGFyIG5hbWVbUlRFX0VUSF9Y U1RBVFNfTkFNRV9TSVpFXTsKPiArfTsKPiArCj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgbmJsX3hz dGF0c19uYW1lIG5ibF9zdGF0c19zdHJpbmdzW10gPSB7Cj4gKyB7ImV0aF9mcmFtZXNfdHgifSwK PiArIHsiZXRoX2ZyYW1lc190eF9vayJ9LAo+ICsgeyJldGhfZnJhbWVzX3R4X2JhZGZjcyJ9LAo+ ICsgeyJldGhfdW5pY2FzdF9mcmFtZXNfdHhfb2sifSwKPiArIHsiZXRoX211bHRpY2FzdF9mcmFt ZXNfdHhfb2sifSwKPiArIHsiZXRoX2Jyb2FkY2FzdF9mcmFtZXNfdHhfb2sifSwKPiArIHsiZXRo X21hY2N0cmxfZnJhbWVzX3R4X29rIn0sCj4gKyB7ImV0aF9mcmFnbWVudF9mcmFtZXNfdHgifSwK PiArIHsiZXRoX2ZyYWdtZW50X2ZyYW1lc190eF9vayJ9LAo+ICsgeyJldGhfcGF1c2VfZnJhbWVz X3R4In0sCj4gKyB7ImV0aF9wYXVzZV9tYWNjdHJsX2ZyYW1lc190eCJ9LAo+ICsgeyJldGhfcGZj X2ZyYW1lc190eCJ9LAo+ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvMCJ9LAo+ICsgeyJldGhf cGZjX2ZyYW1lc190eF9wcmlvMSJ9LAo+ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvMiJ9LAo+ ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvMyJ9LAo+ICsgeyJldGhfcGZjX2ZyYW1lc190eF9w cmlvNCJ9LAo+ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvNSJ9LAo+ICsgeyJldGhfcGZjX2Zy YW1lc190eF9wcmlvNiJ9LAo+ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvNyJ9LAo+ICsgeyJl dGhfdmVyaWZ5X2ZyYW1lc190eCJ9LAo+ICsgeyJldGhfcmVzcG9uZF9mcmFtZXNfdHgifSwKPiAr IHsiZXRoX2ZyYW1lc190eF82NEIifSwKPiArIHsiZXRoX2ZyYW1lc190eF82NV90b18xMjdCIn0s Cj4gKyB7ImV0aF9mcmFtZXNfdHhfMTI4X3RvXzI1NUIifSwKPiArIHsiZXRoX2ZyYW1lc190eF8y NTZfdG9fNTExQiJ9LAo+ICsgeyJldGhfZnJhbWVzX3R4XzUxMl90b18xMDIzQiJ9LAo+ICsgeyJl dGhfZnJhbWVzX3R4XzEwMjRfdG9fMTUzNUIifSwKPiArIHsiZXRoX2ZyYW1lc190eF8xNTM2X3Rv XzIwNDdCIn0sCj4gKyB7ImV0aF9mcmFtZXNfdHhfMjA0OF90b19NQVhCIn0sCj4gKyB7ImV0aF91 bmRlcnNpemVfZnJhbWVzX3R4X2dvb2RmY3MifSwKPiArIHsiZXRoX292ZXJzaXplX2ZyYW1lc190 eF9nb29kZmNzIn0sCj4gKyB7ImV0aF91bmRlcnNpemVfZnJhbWVzX3R4X2JhZGZjcyJ9LAo+ICsg eyJldGhfb3ZlcnNpemVfZnJhbWVzX3R4X2JhZGZjcyJ9LAo+ICsgeyJldGhfb2N0ZXRzX3R4In0s Cj4gKyB7ImV0aF9vY3RldHNfdHhfb2sifSwKPiArIHsiZXRoX29jdGV0c190eF9iYWRmY3MifSwK PiArIHsiZXRoX2ZyYW1lc19yeCJ9LAo+ICsgeyJldGhfZnJhbWVzX3J4X29rIn0sCj4gKyB7ImV0 aF9mcmFtZXNfcnhfYmFkZmNzIn0sCj4gKyB7ImV0aF91bmRlcnNpemVfZnJhbWVzX3J4X2dvb2Rm Y3MifSwKPiArIHsiZXRoX3VuZGVyc2l6ZV9mcmFtZXNfcnhfYmFkZmNzIn0sCj4gKyB7ImV0aF9v dmVyc2l6ZV9mcmFtZXNfcnhfZ29vZGZjcyJ9LAo+ICsgeyJldGhfb3ZlcnNpemVfZnJhbWVzX3J4 X2JhZGZjcyJ9LAo+ICsgeyJldGhfZnJhbWVzX3J4X21pc2NfZXJyb3IifSwKPiArIHsiZXRoX2Zy YW1lc19yeF9taXNjX2Ryb3BwZWQifSwKPiArIHsiZXRoX3VuaWNhc3RfZnJhbWVzX3J4X29rIn0s Cj4gKyB7ImV0aF9tdWx0aWNhc3RfZnJhbWVzX3J4X29rIn0sCj4gKyB7ImV0aF9icm9hZGNhc3Rf ZnJhbWVzX3J4X29rIn0sCj4gKyB7ImV0aF9wYXVzZV9mcmFtZXNfcngifSwKPiArIHsiZXRoX3Bm Y19mcmFtZXNfcngifSwKPiArIHsiZXRoX3BmY19mcmFtZXNfcnhfcHJpbzAifSwKPiArIHsiZXRo X3BmY19mcmFtZXNfcnhfcHJpbzEifSwKPiArIHsiZXRoX3BmY19mcmFtZXNfcnhfcHJpbzIifSwK PiArIHsiZXRoX3BmY19mcmFtZXNfcnhfcHJpbzMifSwKPiArIHsiZXRoX3BmY19mcmFtZXNfcnhf cHJpbzQifSwKPiArIHsiZXRoX3BmY19mcmFtZXNfcnhfcHJpbzUifSwKPiArIHsiZXRoX3BmY19m cmFtZXNfcnhfcHJpbzYifSwKPiArIHsiZXRoX3BmY19mcmFtZXNfcnhfcHJpbzcifSwKPiArIHsi ZXRoX21hY2N0cmxfZnJhbWVzX3J4In0sCj4gKyB7ImV0aF92ZXJpZnlfZnJhbWVzX3J4X29rIn0s Cj4gKyB7ImV0aF9yZXNwb25kX2ZyYW1lc19yeF9vayJ9LAo+ICsgeyJldGhfZnJhZ21lbnRfZnJh bWVzX3J4X29rIn0sCj4gKyB7ImV0aF9mcmFnbWVudF9yeF9zbWRjX25vY29udGV4dCJ9LAo+ICsg eyJldGhfZnJhZ21lbnRfcnhfc21kc19zZXFfZXJyb3IifSwKPiArIHsiZXRoX2ZyYWdtZW50X3J4 X3NtZGNfc2VxX2Vycm9yIn0sCj4gKyB7ImV0aF9mcmFnbWVudF9yeF9mcmFnX2NudF9lcnJvciJ9 LAo+ICsgeyJldGhfZnJhbWVzX2Fzc2VtYmxlZF9vayJ9LAo+ICsgeyJldGhfZnJhbWVzX2Fzc2Vt YmxlZF9lcnJvciJ9LAo+ICsgeyJldGhfZnJhbWVzX3J4XzY0QiJ9LAo+ICsgeyJldGhfZnJhbWVz X3J4XzY1X3RvXzEyN0IifSwKPiArIHsiZXRoX2ZyYW1lc19yeF8xMjhfdG9fMjU1QiJ9LAo+ICsg eyJldGhfZnJhbWVzX3J4XzI1Nl90b181MTFCIn0sCj4gKyB7ImV0aF9mcmFtZXNfcnhfNTEyX3Rv XzEwMjNCIn0sCj4gKyB7ImV0aF9mcmFtZXNfcnhfMTAyNF90b18xNTM1QiJ9LAo+ICsgeyJldGhf ZnJhbWVzX3J4XzE1MzZfdG9fMjA0N0IifSwKPiArIHsiZXRoX2ZyYW1lc19yeF8yMDQ4X3RvX01B WEIifSwKPiArIHsiZXRoX29jdGV0c19yeCJ9LAo+ICsgeyJldGhfb2N0ZXRzX3J4X29rIn0sCj4g KyB7ImV0aF9vY3RldHNfcnhfYmFkZmNzIn0sCj4gKyB7ImV0aF9vY3RldHNfcnhfZHJvcHBlZCJ9 LAo+ICt9Owo+ICsKPiArc3RhdGljIGludCBuYmxfZ2V0X3hzdGF0c19jbnQoX19ydGVfdW51c2Vk IHZvaWQgKnByaXYsIHUxNiAqeHN0YXRzX2NudCkKPiArewo+ICsgKnhzdGF0c19jbnQgPSBBUlJB WV9TSVpFKG5ibF9zdGF0c19zdHJpbmdzKTsKPiArIHJldHVybiAwOwo+ICt9Cj4gKwo+ICtzdGF0 aWMgaW50IG5ibF9nZXRfeHN0YXRzX25hbWVzKF9fcnRlX3VudXNlZCB2b2lkICpwcml2LAo+ICsg c3RydWN0IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVzLAo+ICsgdTE2ICp4c3RhdHNf Y250KQo+ICt7Cj4gKyB1MzIgaSA9IDA7Cj4gKyB1MTYgY291bnQgPSAqeHN0YXRzX2NudDsKPiAr Cj4gKyBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShuYmxfc3RhdHNfc3RyaW5ncyk7IGkrKykg ewo+ICsgc3RybGNweSh4c3RhdHNfbmFtZXNbY291bnRdLm5hbWUsIG5ibF9zdGF0c19zdHJpbmdz W2ldLm5hbWUsCj4gKyBzaXplb2YobmJsX3N0YXRzX3N0cmluZ3NbY291bnRdLm5hbWUpKTsKPiAr IGNvdW50Kys7Cj4gKyB9Cj4gKyAqeHN0YXRzX2NudCA9IGNvdW50Owo+ICsgcmV0dXJuIDA7Cj4g K30KPiArCj4gc3RhdGljIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzIHJlc19vcHMgPSB7Cj4gKyAu Z2V0X2h3X3hzdGF0c19jbnQgPSBuYmxfZ2V0X3hzdGF0c19jbnQsCj4gKyAuZ2V0X2h3X3hzdGF0 c19uYW1lcyA9IG5ibF9nZXRfeHN0YXRzX25hbWVzLAo+IH07Cj4KPiBzdGF0aWMgYm9vbCBpc19v cHNfaW5pdGVkOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9uYmwvbmJsX2h3L25ibF90eHJ4 LmMgYi9kcml2ZXJzL25ldC9uYmwvbmJsX2h3L25ibF90eHJ4LmMKPiBpbmRleCBkMGFjYmU4Njdk Li4zZGU0ZWVkYmRiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L25ibC9uYmxfaHcvbmJsX3R4 cnguYwo+ICsrKyBiL2RyaXZlcnMvbmV0L25ibC9uYmxfaHcvbmJsX3R4cnguYwo+IEBAIC01MzYs NiArNTM2LDcgQEAgbmJsX3Jlc190eHJ4X3htaXRfcGt0cyh2b2lkICp0eF9xdWV1ZSwgc3RydWN0 IHJ0ZV9tYnVmICoqdHhfcGt0cywgdTE2IG5iX3BrdHMsIHUKPiB0eGUtPm1idWYgPSB0eF9wa3Q7 Cj4KPiBkYXRhX2xlbiA9IHR4X3BrdC0+ZGF0YV9sZW47Cj4gKyB0eHEtPnR4cV9zdGF0cy50eF9i eXRlcyArPSB0eF9wa3QtPmRhdGFfbGVuOwo+IGRtYV9hZGRyID0gcnRlX21idWZfZGF0YV9pb3Zh KHR4X3BrdCk7Cj4gdHhfZGVzYy0+YWRkciA9IE5CTF9ETUFfQURERVJTU19GVUxMX1RSQU5TTEFU RSh0eHEsIGRtYV9hZGRyKSArIGFkZHJfb2Zmc2V0Owo+IHR4X2Rlc2MtPmxlbiA9IGRhdGFfbGVu IC0gYWRkcl9vZmZzZXQ7Cj4gQEAgLTYxNSw2ICs2MTYsOCBAQCBuYmxfcmVzX3R4cnhfcmVjdl9w a3RzKHZvaWQgKnJ4X3F1ZXVlLCBzdHJ1Y3QgcnRlX21idWYgKipyeF9wa3RzLCB1MTYgbmJfcGt0 cykKPiByeF9leHRfaGRyID0gKHVuaW9uIG5ibF9yeF9leHRlbmRfaGVhZCAqKSgoY2hhciAqKXJ4 X21idWYtPmJ1Zl9hZGRyICsKPiBSVEVfUEtUTUJVRl9IRUFEUk9PTSk7Cj4gbnVtX3NnID0gcnhf ZXh0X2hkci0+Y29tbW9uLm51bV9idWZmZXJzOwo+ICsgaWYgKG51bV9zZyA+IDEpCj4gKyByeHEt PnJ4cV9zdGF0cy5yeF9tdWx0aV9kZXNjcysrOwo+Cj4gcnhfbWJ1Zi0+bmJfc2VncyA9IG51bV9z ZzsKPiByeF9tYnVmLT5kYXRhX2xlbiA9IHJ4X2Rlc2MtPmxlbiAtIHJ4cS0+ZXh0aGRyX2xlbjsK PiBAQCAtNjQyLDE1ICs2NDUsMjAgQEAgbmJsX3Jlc190eHJ4X3JlY3ZfcGt0cyh2b2lkICpyeF9x dWV1ZSwgc3RydWN0IHJ0ZV9tYnVmICoqcnhfcGt0cywgdTE2IG5iX3BrdHMpCj4gaWYgKC0tbnVt X3NnKQo+IGNvbnRpbnVlOwo+IGlmIChkcm9wKSB7Cj4gKyByeHEtPnJ4cV9zdGF0cy5yeF9kcm9w X3Byb3RvKys7Cj4gcnRlX3BrdG1idWZfZnJlZShyeF9tYnVmKTsKPiBjb250aW51ZTsKPiB9Cj4g cnhfcGt0c1tuYl9yZWN2X3BrdHMrK10gPSByeF9tYnVmOwo+ICsgcnhxLT5yeHFfc3RhdHMucnhf Ynl0ZXMgKz0gcnhfbWJ1Zi0+cGt0X2xlbjsKPiB9Cj4KPiAvKiBCVUcgb24gZHVwbGljYXRlIHBr dCBmcmVlICovCj4gLSBpZiAodW5saWtlbHkobnVtX3NnKSkKPiArIGlmICh1bmxpa2VseShudW1f c2cpKSB7Cj4gKyByeHEtPnJ4cV9zdGF0cy5yeF9pZXJyb3IrKzsKPiBydGVfcGt0bWJ1Zl9mcmVl KHJ4X21idWYpOwo+ICsgfQo+ICsKPiAvKiBjbGVhbiBtZW1vcnkgKi8KPiByeHEtPm5leHRfdG9f Y2xlYW4gPSBkZXNjX2luZGV4Owo+IGZpbGxfbnVtID0gcnhxLT52cV9mcmVlX2NudDsKPiBAQCAt NzIwLDYgKzcyOCwxMDUgQEAgc3RhdGljIGludCBuYmxfcmVzX3R4cnhfZ2V0X3N0YXRzKHZvaWQg KnByaXYsIHN0cnVjdCBydGVfZXRoX3N0YXRzICpydGVfc3RhdHMpCj4gcmV0dXJuIDA7Cj4gfQo+ Cj4gK3N0YXRpYyBpbnQKPiArbmJsX3Jlc190eHJ4X3Jlc2V0X3N0YXRzKHZvaWQgKnByaXYpCj4g K3sKPiArIHN0cnVjdCBuYmxfcmVzb3VyY2VfbWd0ICpyZXNfbWd0ID0gKHN0cnVjdCBuYmxfcmVz b3VyY2VfbWd0ICopcHJpdjsKPiArIHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldiA9IHJlc19t Z3QtPmV0aF9kZXY7Cj4gKyBzdHJ1Y3QgbmJsX3Jlc19yeF9yaW5nICpyeHE7Cj4gKyBzdHJ1Y3Qg bmJsX3J4cV9zdGF0cyAqcnhxX3N0YXRzOwo+ICsgc3RydWN0IG5ibF9yZXNfdHhfcmluZyAqdHhx Owo+ICsgc3RydWN0IG5ibF90eHFfc3RhdHMgKnR4cV9zdGF0czsKPiArIHVpbnQzMl90IGk7Cj4g Kwo+ICsgLyogQWRkIHNvZnR3YXJlIGNvdW50ZXJzLiAqLwo+ICsgZm9yIChpID0gMDsgaSA8IGV0 aF9kZXYtPmRhdGEtPm5iX3J4X3F1ZXVlczsgaSsrKSB7Cj4gKyByeHEgPSBldGhfZGV2LT5kYXRh LT5yeF9xdWV1ZXNbaV07Cj4gKyBpZiAodW5saWtlbHkocnhxID09IE5VTEwpKQo+ICsgY29udGlu dWU7Cj4gKwo+ICsgcnhxX3N0YXRzID0gJnJ4cS0+cnhxX3N0YXRzOwo+ICsgbWVtc2V0KHJ4cV9z dGF0cywgMCwgc2l6ZW9mKHN0cnVjdCBuYmxfcnhxX3N0YXRzKSk7CldoYXQgaWYgdGhlIGFwcGxp Y2F0aW9uIGhhcyBkZWRpY2F0ZWQgbGNvcmVzIGZvciBkYXRhcGF0aCBSeC9UeCBidXJzdCBjYWxs cyBhbmQKdXNlcyBhbm90aGVyLCBhZG1pbiBjb3JlIHRvIHF1ZXJ5L3Jlc2V0IHN0YXRpc3RpY3M/ ClRoYW5rIHlvdS4KPiArIH0KPiArCj4gKyBmb3IgKGkgPSAwOyBpIDwgZXRoX2Rldi0+ZGF0YS0+ bmJfdHhfcXVldWVzOyBpKyspIHsKPiArIHR4cSA9IGV0aF9kZXYtPmRhdGEtPnR4X3F1ZXVlc1tp XTsKPiArIGlmICh1bmxpa2VseSh0eHEgPT0gTlVMTCkpCj4gKyBjb250aW51ZTsKPiArCj4gKyB0 eHFfc3RhdHMgPSAmdHhxLT50eHFfc3RhdHM7Cj4gKyBtZW1zZXQodHhxX3N0YXRzLCAwLCBzaXpl b2Yoc3RydWN0IG5ibF90eHFfc3RhdHMpKTsKPiArIH0KPiArCj4gKyByZXR1cm4gMDsKPiArfQo+ ICsKPiArLyogc3RvcmUgc3RhdGlzdGljcyBuYW1lcyAqLwo+ICtzdHJ1Y3QgbmJsX3R4cnhfeHN0 YXRzX25hbWUgewo+ICsgY2hhciBuYW1lW1JURV9FVEhfWFNUQVRTX05BTUVfU0laRV07Cj4gK307 Cj4gKwo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IG5ibF90eHJ4X3hzdGF0c19uYW1lIG5ibF9zdGF0 c19zdHJpbmdzW10gPSB7Cj4gKyB7InJ4X211bHRpZGVzY3NfcGFja2V0cyJ9LAo+ICsgeyJyeF9k cm9wX25vcG9ydF9wYWNrZXRzIn0sCj4gKyB7InJ4X2Ryb3BfcHJvdG9fcGFja2V0cyJ9LAo+ICt9 Owo+ICsKPiArc3RhdGljIGludCBuYmxfcmVzX3R4cnhfZ2V0X3hzdGF0c19jbnQoX19ydGVfdW51 c2VkIHZvaWQgKnByaXYsIHUxNiAqeHN0YXRzX2NudCkKPiArewo+ICsgKnhzdGF0c19jbnQgPSBB UlJBWV9TSVpFKG5ibF9zdGF0c19zdHJpbmdzKTsKPiArIHJldHVybiAwOwo+ICt9Cj4gKwo+ICtz dGF0aWMgaW50IG5ibF9yZXNfdHhyeF9nZXRfeHN0YXRzKHZvaWQgKnByaXYsIHN0cnVjdCBydGVf ZXRoX3hzdGF0ICp4c3RhdHMsIHUxNiAqeHN0YXRzX2NudCkKPiArewo+ICsgc3RydWN0IG5ibF9y ZXNvdXJjZV9tZ3QgKnJlc19tZ3QgPSAoc3RydWN0IG5ibF9yZXNvdXJjZV9tZ3QgKilwcml2Owo+ ICsgc3RydWN0IG5ibF90eHJ4X21ndCAqdHhyeF9tZ3QgPSBOQkxfUkVTX01HVF9UT19UWFJYX01H VChyZXNfbWd0KTsKPiArIHN0cnVjdCBuYmxfcmVzX3J4X3JpbmcgKnJ4cTsKPiArIHVpbnQ2NF90 IHJ4X211bHRpX2Rlc2NzID0gMCwgcnhfZHJvcF9ub3BvcnQgPSAwLCByeF9kcm9wX3Byb3RvID0g MDsKPiArIHVuc2lnbmVkIGludCBpID0gMDsKPiArIHUxNiBjb3VudCA9ICp4c3RhdHNfY250Owo+ ICsKPiArIC8qIHRvZG86IGdldCBldGggc3RhdHMgZnJvbSBlbXAgKi8KPiArIGZvciAoaSA9IDA7 IGkgPCB0eHJ4X21ndC0+cnhfcmluZ19udW07IGkrKykgewo+ICsgcnhxID0gTkJMX1JFU19NR1Rf VE9fUlhfUklORyhyZXNfbWd0LCBpKTsKPiArCj4gKyBpZiAodW5saWtlbHkocnhxID09IE5VTEwp KQo+ICsgcmV0dXJuIC1FSU5WQUw7Cj4gKwo+ICsgcnhfbXVsdGlfZGVzY3MgKz0gcnhxLT5yeHFf c3RhdHMucnhfbXVsdGlfZGVzY3M7Cj4gKyByeF9kcm9wX25vcG9ydCArPSByeHEtPnJ4cV9zdGF0 cy5yeF9kcm9wX25vcG9ydDsKPiArIHJ4X2Ryb3BfcHJvdG8gKz0gcnhxLT5yeHFfc3RhdHMucnhf ZHJvcF9wcm90bzsKPiArIH0KPiArCj4gKyB4c3RhdHNbY291bnRdLnZhbHVlID0gcnhfbXVsdGlf ZGVzY3M7Cj4gKyB4c3RhdHNbY291bnRdLmlkID0gY291bnQ7Cj4gKyB4c3RhdHNbY291bnQgKyAx XS52YWx1ZSA9IHJ4X2Ryb3Bfbm9wb3J0Owo+ICsgeHN0YXRzW2NvdW50ICsgMV0uaWQgPSBjb3Vu dCArIDE7Cj4gKyB4c3RhdHNbY291bnQgKyAyXS52YWx1ZSA9IHJ4X2Ryb3BfcHJvdG87Cj4gKyB4 c3RhdHNbY291bnQgKyAyXS5pZCA9IGNvdW50ICsgMjsKPiArCj4gKyAqeHN0YXRzX2NudCA9IGNv dW50ICsgMzsKPiArCj4gKyByZXR1cm4gMDsKPiArfQo+ICsKPiArc3RhdGljIGludCBuYmxfcmVz X3R4cnhfZ2V0X3hzdGF0c19uYW1lcyhfX3J0ZV91bnVzZWQgdm9pZCAqcHJpdiwKPiArIHN0cnVj dCBydGVfZXRoX3hzdGF0X25hbWUgKnhzdGF0c19uYW1lcywKPiArIHUxNiAqeHN0YXRzX2NudCkK PiArewo+ICsgdW5zaWduZWQgaW50IGkgPSAwOwo+ICsgdTE2IGNvdW50ID0gKnhzdGF0c19jbnQ7 Cj4gKwo+ICsgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUobmJsX3N0YXRzX3N0cmluZ3MpOyBp KyspIHsKPiArIHN0cmxjcHkoeHN0YXRzX25hbWVzW2NvdW50XS5uYW1lLCBuYmxfc3RhdHNfc3Ry aW5nc1tpXS5uYW1lLAo+ICsgc2l6ZW9mKG5ibF9zdGF0c19zdHJpbmdzW2NvdW50XS5uYW1lKSk7 Cj4gKyBjb3VudCsrOwo+ICsgfQo+ICsgKnhzdGF0c19jbnQgPSBjb3VudDsKPiArIHJldHVybiAw Owo+ICt9Cj4gKwo+IC8qIE5CTF9UWFJYX1NFVF9PUFMob3BzX25hbWUsIGZ1bmMpCj4gKgo+ICog VXNlIFggTWFjcm9zIHRvIHJlZHVjZSBzZXR1cCBhbmQgcmVtb3ZlIGNvZGVzLgo+IEBAIC03Mzgs NiArODQ1LDEwIEBAIGRvIHsgXAo+IE5CTF9UWFJYX1NFVF9PUFModXBkYXRlX3J4X3JpbmcsIG5i bF9yZXNfdHhyeF91cGRhdGVfcnhfcmluZyk7IFwKPiBOQkxfVFhSWF9TRVRfT1BTKGdldF9yZXNv dXJjZV9wdF9vcHMsIG5ibF9yZXNfZ2V0X3B0X29wcyk7IFwKPiBOQkxfVFhSWF9TRVRfT1BTKGdl dF9zdGF0cywgbmJsX3Jlc190eHJ4X2dldF9zdGF0cyk7IFwKPiArIE5CTF9UWFJYX1NFVF9PUFMo cmVzZXRfc3RhdHMsIG5ibF9yZXNfdHhyeF9yZXNldF9zdGF0cyk7IFwKPiArIE5CTF9UWFJYX1NF VF9PUFMoZ2V0X3R4cnhfeHN0YXRzX2NudCwgbmJsX3Jlc190eHJ4X2dldF94c3RhdHNfY250KTsg XAo+ICsgTkJMX1RYUlhfU0VUX09QUyhnZXRfdHhyeF94c3RhdHNfbmFtZXMsIG5ibF9yZXNfdHhy eF9nZXRfeHN0YXRzX25hbWVzKTsgXAo+ICsgTkJMX1RYUlhfU0VUX09QUyhnZXRfdHhyeF94c3Rh dHMsIG5ibF9yZXNfdHhyeF9nZXRfeHN0YXRzKTsgXAo+IH0gd2hpbGUgKDApCj4KPiAvKiBTdHJ1 Y3R1cmUgc3RhcnRzIGhlcmUsIGFkZGluZyBhbiBvcCBzaG91bGQgbm90IG1vZGlmeSBhbnl0aGlu ZyBiZWxvdyAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJs X2RlZl9jaGFubmVsLmggYi9kcml2ZXJzL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9jaGFu bmVsLmgKPiBpbmRleCA0ODFhNzI1YTNkLi4zOTA1MGEzOTk5IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX2NoYW5uZWwuaAo+ICsrKyBiL2RyaXZlcnMv bmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX2NoYW5uZWwuaAo+IEBAIC0zODUsNiArMzg1LDEx IEBAIHN0cnVjdCBuYmxfY2hhbl9wYXJhbV9nZXRfbGlua19zdGF0ZSB7Cj4gdTggZXRoX2lkOwo+ IH07Cj4KPiArc3RydWN0IG5ibF9jaGFuX3BhcmFtX2dldF9wcml2YXRlX3N0YXRfZGF0YSB7Cj4g KyB1MzIgZXRoX2lkOwo+ICsgdTMyIGRhdGFfbGVuOwo+ICt9Owo+ICsKPiBzdHJ1Y3QgbmJsX2No YW5fc2VuZF9pbmZvIHsKPiB1aW50MTZfdCBkc3RpZDsKPiB1aW50MTZfdCBtc2dfdHlwZTsKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfZGlzcGF0Y2gu aCBiL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX2Rpc3BhdGNoLmgKPiBpbmRl eCAwMTM5YjM3YWQxLi5mMzhhMTBlNWY0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L25ibC9u YmxfaW5jbHVkZS9uYmxfZGVmX2Rpc3BhdGNoLmgKPiArKysgYi9kcml2ZXJzL25ldC9uYmwvbmJs X2luY2x1ZGUvbmJsX2RlZl9kaXNwYXRjaC5oCj4gQEAgLTc0LDYgKzc0LDE1IEBAIHN0cnVjdCBu YmxfZGlzcGF0Y2hfb3BzIHsKPiB2b2lkICgqZ2V0X2JvYXJkX2luZm8pKHZvaWQgKnByaXYsIHN0 cnVjdCBuYmxfYm9hcmRfcG9ydF9pbmZvICpib2FyZF9pbmZvKTsKPiB2b2lkICgqZ2V0X2xpbmtf c3RhdGUpKHZvaWQgKnByaXYsIHU4IGV0aF9pZCwgc3RydWN0IG5ibF9ldGhfbGlua19pbmZvICpl dGhfbGlua19pbmZvKTsKPiBpbnQgKCpnZXRfc3RhdHMpKHZvaWQgKnByaXYsIHN0cnVjdCBydGVf ZXRoX3N0YXRzICpydGVfc3RhdHMpOwo+ICsgaW50ICgqcmVzZXRfc3RhdHMpKHZvaWQgKnByaXYp Owo+ICsgaW50ICgqZ2V0X3R4cnhfeHN0YXRzX2NudCkodm9pZCAqcHJpdiwgdTE2ICp4c3RhdHNf Y250KTsKPiArIGludCAoKmdldF90eHJ4X3hzdGF0cykodm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9l dGhfeHN0YXQgKnhzdGF0cywgdTE2ICp4c3RhdHNfY250KTsKPiArIGludCAoKmdldF90eHJ4X3hz dGF0c19uYW1lcykodm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRz X25hbWVzLAo+ICsgdTE2ICp4c3RhdHNfY250KTsKPiArIGludCAoKmdldF9od194c3RhdHNfY250 KSh2b2lkICpwcml2LCB1MTYgKnhzdGF0c19jbnQpOwo+ICsgaW50ICgqZ2V0X2h3X3hzdGF0c19u YW1lcykodm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVz LAo+ICsgdTE2ICp4c3RhdHNfY250KTsKPiArIHZvaWQgKCpnZXRfcHJpdmF0ZV9zdGF0X2RhdGEp KHZvaWQgKnByaXYsIHUzMiBldGhfaWQsIHU2NCAqZGF0YSwgdTMyIGRhdGFfbGVuKTsKPgo+IHZv aWQgKCpkdW1teV9mdW5jKSh2b2lkICpwcml2KTsKPiB9Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9yZXNvdXJjZS5oIGIvZHJpdmVycy9uZXQvbmJs L25ibF9pbmNsdWRlL25ibF9kZWZfcmVzb3VyY2UuaAo+IGluZGV4IGMxNGZkYzc3M2UuLjViMzI1 MDZiZTEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZf cmVzb3VyY2UuaAo+ICsrKyBiL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX3Jl c291cmNlLmgKPiBAQCAtNDYsNiArNDYsMTQgQEAgc3RydWN0IG5ibF9yZXNvdXJjZV9vcHMgewo+ IHZvaWQgKCpyZWxlYXNlX3J4X3JpbmcpKHZvaWQgKnByaXYsIHUxNiBxdWV1ZV9pZHgpOwo+IGlu dCAoKmdldF9zdGF0cykodm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfc3RhdHMgKnJ0ZV9zdGF0 cyk7Cj4gaW50ICgqcmVzZXRfc3RhdHMpKHZvaWQgKnByaXYpOwo+ICsgaW50ICgqZ2V0X3R4cnhf eHN0YXRzX2NudCkodm9pZCAqcHJpdiwgdTE2ICp4c3RhdHNfY250KTsKPiArIGludCAoKmdldF90 eHJ4X3hzdGF0cykodm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXQgKnhzdGF0cywgdTE2 ICp4c3RhdHNfY250KTsKPiArIGludCAoKmdldF90eHJ4X3hzdGF0c19uYW1lcykodm9pZCAqcHJp diwgc3RydWN0IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVzLAo+ICsgdTE2ICp4c3Rh dHNfY250KTsKPiArIGludCAoKmdldF9od194c3RhdHNfY250KSh2b2lkICpwcml2LCB1MTYgKnhz dGF0c19jbnQpOwo+ICsgaW50ICgqZ2V0X2h3X3hzdGF0c19uYW1lcykodm9pZCAqcHJpdiwgc3Ry dWN0IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVzLAo+ICsgdTE2ICp4c3RhdHNfY250 KTsKPiArIHZvaWQgKCpnZXRfcHJpdmF0ZV9zdGF0X2RhdGEpKHZvaWQgKnByaXYsIHUzMiBldGhf aWQsIHU2NCAqZGF0YSk7Cj4gdm9pZCAoKnVwZGF0ZV9yeF9yaW5nKSh2b2lkICpwcml2LCB1MTYg cXVldWVfaWR4KTsKPiB1MTYgKCpnZXRfdHhfZWhkcl9sZW4pKHZvaWQgKnByaXYpOwo+IGludCAo KmFsbG9jX3R4cnhfcXVldWVzKSh2b2lkICpwcml2LCB1MTYgdnNpX2lkLCB1MTYgcXVldWVfbnVt KTsKPiBAQCAtNTgsMTAgKzY2LDYgQEAgc3RydWN0IG5ibF9yZXNvdXJjZV9vcHMgewo+IHZvaWQg KCpjZmdfdHhyeF92bGFuKSh2b2lkICpwcml2LCB1MTYgdmxhbl90Y2ksIHUxNiB2bGFuX3Byb3Rv KTsKPiBpbnQgKCp0eHJ4X2J1cnN0X21vZGVfZ2V0KSh2b2lkICpwcml2LCBzdHJ1Y3QgcnRlX2V0 aF9kZXYgKmRldiwKPiBzdHJ1Y3QgcnRlX2V0aF9idXJzdF9tb2RlICptb2RlLCBib29sIGlzX3R4 KTsKPiAtIGludCAoKmdldF90eHJ4X3hzdGF0c19jbnQpKHZvaWQgKnByaXYsIHUxNiAqeHN0YXRz X2NudCk7Cj4gLSBpbnQgKCpnZXRfdHhyeF94c3RhdHMpKHZvaWQgKnByaXYsIHN0cnVjdCBydGVf ZXRoX3hzdGF0ICp4c3RhdHMsIHUxNiAqeHN0YXRzX2NudCk7Cj4gLSBpbnQgKCpnZXRfdHhyeF94 c3RhdHNfbmFtZXMpKHZvaWQgKnByaXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0X25hbWUgKnhzdGF0 c19uYW1lcywKPiAtIHUxNiAqeHN0YXRzX2NudCk7Cj4gaW50ICgqYWRkX21hY3ZsYW4pKHZvaWQg KnByaXYsIHU4ICptYWMsIHUxNiB2bGFuX2lkLCB1MTYgdnNpX2lkKTsKPiB2b2lkICgqZGVsX21h Y3ZsYW4pKHZvaWQgKnByaXYsIHU4ICptYWMsIHUxNiB2bGFuX2lkLCB1MTYgdnNpX2lkKTsKPiBp bnQgKCphZGRfbXVsdGlfcnVsZSkodm9pZCAqcHJpdiwgdTE2IHZzaV9pZCk7Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfaW5jbHVkZS5oIGIvZHJpdmVycy9u ZXQvbmJsL25ibF9pbmNsdWRlL25ibF9pbmNsdWRlLmgKPiBpbmRleCAxNGM0MWEwMTM5Li5hMGUx OGNlYzIwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfaW5j bHVkZS5oCj4gKysrIGIvZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9pbmNsdWRlLmgK PiBAQCAtNTAsNiArNTAsMTAgQEAgdHlwZWRlZiBpbnQzMl90IHMzMjsKPiB0eXBlZGVmIGludDE2 X3QgczE2Owo+IHR5cGVkZWYgaW50OF90IHM4Owo+Cj4gKyNpZm5kZWYgQVJSQVlfU0laRQo+ICsj ZGVmaW5lIEFSUkFZX1NJWkUoYXJyKSBSVEVfRElNKGFycikKPiArI2VuZGlmCj4gKwo+IC8qIFVz ZWQgZm9yIG1hY3JvcyB0byBwYXNzIGNoZWNrcGF0Y2ggKi8KPiAjZGVmaW5lIE5CTF9OQU1FKHgp IHgKPiAjZGVmaW5lIEJJVChhKSAoMVVMIDw8IChhKSkKPiAtLSAKPiAyLjM0LjEKPgo+Cg== ------=ALIBOUNDARY_1984_7ffa48a7b700_68a2fc34_150cd0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 PGRpdiBjbGFzcz0iX19hbGl5dW5fZW1haWxfYm9keV9ibG9jayI+PGRpdiAgc3R5bGU9ImZvbnQt ZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpU0MtTGlnaHQsIFNpbVN1biI+PGRpdiAgc3R5 bGU9ImNsZWFyOiBib3RoOyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aVNDLUxp Z2h0LCBTaW1TdW47Ij48c3BhbiAgc3R5bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBT VEhlaXRpU0MtTGlnaHQsIFNpbVN1bjsiPkhpIEl2YW7vvIw8L3NwYW4+PC9kaXY+PGRpdiAgc3R5 bGU9ImNsZWFyOiBib3RoOyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aVNDLUxp Z2h0LCBTaW1TdW47Ij48c3BhbiAgc3R5bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBT VEhlaXRpU0MtTGlnaHQsIFNpbVN1bjsiPjxiciA+PC9zcGFuPjwvZGl2PjxkaXYgIHN0eWxlPSJj bGVhcjogYm90aDsiPjxzcGFuICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNU SGVpdGlTQy1MaWdodCwgU2ltU3VuOyBjb2xvcjogcmdiKDAsIDE3NiwgODApOyI+PHNwYW4gIHN0 eWxlPSJjb2xvcjogcmdiKDAsIDE3NiwgODApOyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwg U1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9u dC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBm b250LXdlaWdodDogNDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFy dDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBu b3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUs IDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlv bi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyBmbG9hdDog bm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Ij4mZ3Q7ICtzdGF0aWMgaW50PC9zcGFu PjxiciAgc3R5bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47 IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1 cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7 IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IDI7IHRleHQtYWxpZ246IHN0YXJ0OyB0 ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1h bDsgd2lkb3dzOiAyOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0 aDogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3Jh dGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsg dGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyI+PHNwYW4gIHN0eWxlPSJjb2xvcjogcmdi KDAsIDE3NiwgODApOyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3Vu OyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0 dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogNDAw OyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6 IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3Bh Y2luZzogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVj b3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlh bDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyBmbG9hdDogbm9uZTsgZGlzcGxheTog aW5saW5lICFpbXBvcnRhbnQ7Ij4mZ3Q7ICtuYmxfcmVzX3R4cnhfcmVzZXRfc3RhdHModm9pZCAq cHJpdik8L3NwYW4+PGJyICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVp dGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFy aWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13 ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGln bjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1z cGFjZTogbm9ybWFsOyB3aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQt c3Ryb2tlLXdpZHRoOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsg dGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxl OiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9 ImNvbG9yOiByZ2IoMCwgMTc2LCA4MCk7IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhl aXRpLCBTaW1TdW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZh cmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQt d2VpZ2h0OiA0MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0 ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1h bDsgd29yZC1zcGFjaW5nOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1 KTsgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0 eWxlOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7IGZsb2F0OiBub25l OyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsiPiZndDsgK3s8L3NwYW4+PGJyICBzdHlsZT0i Zm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAx NHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vcm1hbDsg Zm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNp bmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAw cHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IDI7 IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IGJhY2tn cm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVz czogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRp b24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9ImNvbG9yOiByZ2IoMCwgMTc2LCA4MCk7 IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6ZTog MTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7 IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1zcGFj aW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRy YW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5nOiAwcHg7IGJh Y2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9uLXRoaWNr bmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0LWRlY29y YXRpb24tY29sb3I6IGluaXRpYWw7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxpbmUgIWltcG9y dGFudDsiPiZndDsgKyBzdHJ1Y3QgbmJsX3Jlc291cmNlX21ndCAqcmVzX21ndCA9IChzdHJ1Y3Qg bmJsX3Jlc291cmNlX21ndCAqKXByaXY7PC9zcGFuPjxiciAgc3R5bGU9ImZvbnQtZmFtaWx5OiBU YWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHls ZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1j YXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9y cGhhbnM6IDI7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5z Zm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiAyOyB3b3JkLXNwYWNpbmc6 IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBy Z2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRl eHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0 aWFsOyI+PHNwYW4gIHN0eWxlPSJjb2xvcjogcmdiKDAsIDE3NiwgODApOyBmb250LWZhbWlseTog VGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5 bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQt Y2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0 ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7 IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyBiYWNrZ3JvdW5kLWNvbG9y OiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7 IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBp bml0aWFsOyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Ij4mZ3Q7ICsg c3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2ID0gcmVzX21ndC0mZ3Q7ZXRoX2Rldjs8L3NwYW4+ PGJyICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsg Zm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVy ZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsg bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGlnbjogc3RhcnQ7IHRl eHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFs OyB3aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRo OiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0 aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0 ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9ImNvbG9yOiByZ2Io MCwgMTc2LCA4MCk7IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47 IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1 cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7 IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDog MHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFj aW5nOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNv cmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFs OyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBp bmxpbmUgIWltcG9ydGFudDsiPiZndDsgKyBzdHJ1Y3QgbmJsX3Jlc19yeF9yaW5nICpyeHE7PC9z cGFuPjxiciAgc3R5bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1T dW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGln YXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0 MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IDI7IHRleHQtYWxpZ246IHN0YXJ0 OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5v cm1hbDsgd2lkb3dzOiAyOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13 aWR0aDogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVj b3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlh bDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyI+PHNwYW4gIHN0eWxlPSJjb2xvcjog cmdiKDAsIDE3NiwgODApOyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2lt U3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxp Z2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDog NDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRl bnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQt c3BhY2luZzogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQt ZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5p dGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyBmbG9hdDogbm9uZTsgZGlzcGxh eTogaW5saW5lICFpbXBvcnRhbnQ7Ij4mZ3Q7ICsgc3RydWN0IG5ibF9yeHFfc3RhdHMgKnJ4cV9z dGF0czs8L3NwYW4+PGJyICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVp dGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFy aWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13 ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGln bjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1z cGFjZTogbm9ybWFsOyB3aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQt c3Ryb2tlLXdpZHRoOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsg dGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxl OiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9 ImNvbG9yOiByZ2IoMCwgMTc2LCA4MCk7IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhl aXRpLCBTaW1TdW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZh cmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQt d2VpZ2h0OiA0MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0 ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1h bDsgd29yZC1zcGFjaW5nOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1 KTsgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0 eWxlOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7IGZsb2F0OiBub25l OyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsiPiZndDsgKyBzdHJ1Y3QgbmJsX3Jlc190eF9y aW5nJm5ic3A7ICp0eHE7PC9zcGFuPjxiciAgc3R5bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFy aWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFs OyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3Jt YWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IDI7 IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9u ZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiAyOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdl YmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAy NTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3Jh dGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyI+PHNw YW4gIHN0eWxlPSJjb2xvcjogcmdiKDAsIDE3NiwgODApOyBmb250LWZhbWlseTogVGFob21hLCBB cmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1h bDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9y bWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0LWFsaWdu OiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNw YWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1 LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVj b3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyBm bG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Ij4mZ3Q7ICsgc3RydWN0IG5i bF90eHFfc3RhdHMgKnR4cV9zdGF0czs8L3NwYW4+PGJyICBzdHlsZT0iZm9udC1mYW1pbHk6IFRh aG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxl OiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNh cHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3Jw aGFuczogMjsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNm b3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IDI7IHdvcmQtc3BhY2luZzog MHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJn YigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4 dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRp YWw7Ij48c3BhbiAgc3R5bGU9ImNvbG9yOiByZ2IoMCwgMTc2LCA4MCk7IGZvbnQtZmFtaWx5OiBU YWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHls ZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1j YXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRl eHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsg d2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5nOiAwcHg7IGJhY2tncm91bmQtY29sb3I6 IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogaW5pdGlhbDsg dGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGlu aXRpYWw7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsiPiZndDsgKyB1 aW50MzJfdCBpOzwvc3Bhbj48YnIgIHN0eWxlPSJmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwg U1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9u dC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBm b250LXdlaWdodDogNDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5zOiAyOyB0ZXh0 LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdo aXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogMjsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQt dGV4dC1zdHJva2Utd2lkdGg6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAy NTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24t c3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsiPjxzcGFuICBz dHlsZT0iY29sb3I6IHJnYigwLCAxNzYsIDgwKTsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWws IFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZv bnQtdmFyaWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsg Zm9udC13ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1hbGlnbjogc3Rh cnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTog bm9ybWFsOyB3b3JkLXNwYWNpbmc6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1 LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRp b24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsgZmxvYXQ6 IG5vbmU7IGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyI+Jmd0OyArPC9zcGFuPjxiciAgc3R5 bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6 ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3Jt YWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1z cGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IDI7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVu dDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dz OiAyOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyBi YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlj a25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNv cmF0aW9uLWNvbG9yOiBpbml0aWFsOyI+PHNwYW4gIHN0eWxlPSJjb2xvcjogcmdiKDAsIDE3Niwg ODApOyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNp emU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9y bWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0ZXIt c3BhY2luZzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4 dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4 OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10 aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1k ZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFp bXBvcnRhbnQ7Ij4mZ3Q7ICsgLyogQWRkIHNvZnR3YXJlIGNvdW50ZXJzLiAqLzwvc3Bhbj48YnIg IHN0eWxlPSJmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250 LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczog bm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0 ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5zOiAyOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1p bmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdp ZG93czogMjsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBw eDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24t dGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQt ZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsiPjxzcGFuICBzdHlsZT0iY29sb3I6IHJnYigwLCAx NzYsIDgwKTsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9u dC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6 IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0 dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7 IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXNwYWNpbmc6 IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRp b24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRl eHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsgZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGlu ZSAhaW1wb3J0YW50OyI+Jmd0OyArIGZvciAoaSA9IDA7IGkgJmx0OyBldGhfZGV2LSZndDtkYXRh LSZndDtuYl9yeF9xdWV1ZXM7IGkrKykgezwvc3Bhbj48YnIgIHN0eWxlPSJmb250LWZhbWlseTog VGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5 bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQt Y2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBv cnBoYW5zOiAyOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFu c2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogMjsgd29yZC1zcGFjaW5n OiAwcHg7IC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsgYmFja2dyb3VuZC1jb2xvcjog cmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0 ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5p dGlhbDsiPjxzcGFuICBzdHlsZT0iY29sb3I6IHJnYigwLCAxNzYsIDgwKTsgZm9udC1mYW1pbHk6 IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0 eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50 LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsg dGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25l OyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXNwYWNpbmc6IDBweDsgYmFja2dyb3VuZC1jb2xv cjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFs OyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjog aW5pdGlhbDsgZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyI+Jmd0OyAr Jm5ic3A7IHJ4cSA9IGV0aF9kZXYtJmd0O2RhdGEtJmd0O3J4X3F1ZXVlc1tpXTs8L3NwYW4+PGJy ICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9u dC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6 IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0 dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQt aW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3 aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAw cHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9u LXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0 LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9ImNvbG9yOiByZ2IoMCwg MTc2LCA4MCk7IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZv bnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVz OiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxl dHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4 OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5n OiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0 aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0 ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxp bmUgIWltcG9ydGFudDsiPiZndDsgKyZuYnNwOyBpZiAodW5saWtlbHkocnhxID09IE5VTEwpKTwv c3Bhbj48YnIgIHN0eWxlPSJmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2lt U3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxp Z2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDog NDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5zOiAyOyB0ZXh0LWFsaWduOiBzdGFy dDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBu b3JtYWw7IHdpZG93czogMjsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1zdHJva2Ut d2lkdGg6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRl Y29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRp YWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsiPjxzcGFuICBzdHlsZT0iY29sb3I6 IHJnYigwLCAxNzYsIDgwKTsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNp bVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1s aWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6 IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5k ZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3Jk LXNwYWNpbmc6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0 LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGlu aXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsgZmxvYXQ6IG5vbmU7IGRpc3Bs YXk6IGlubGluZSAhaW1wb3J0YW50OyI+Jmd0OyArICZuYnNwOyBjb250aW51ZTs8L3NwYW4+PGJy ICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9u dC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6 IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0 dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQt aW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3 aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAw cHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9u LXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0 LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9ImNvbG9yOiByZ2IoMCwg MTc2LCA4MCk7IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZv bnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVz OiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxl dHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4 OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5n OiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0 aW9uLXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0 ZXh0LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxp bmUgIWltcG9ydGFudDsiPiZndDsgKzwvc3Bhbj48YnIgIHN0eWxlPSJmb250LWZhbWlseTogVGFo b21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7IGZvbnQtc3R5bGU6 IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fw czogbm9ybWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBo YW5zOiAyOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zv cm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogMjsgd29yZC1zcGFjaW5nOiAw cHg7IC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdi KDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0 LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlh bDsiPjxzcGFuICBzdHlsZT0iY29sb3I6IHJnYigwLCAxNzYsIDgwKTsgZm9udC1mYW1pbHk6IFRh aG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxl OiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNh cHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4 dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3 aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXNwYWNpbmc6IDBweDsgYmFja2dyb3VuZC1jb2xvcjog cmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0 ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5p dGlhbDsgZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyI+Jmd0OyArJm5i c3A7IHJ4cV9zdGF0cyA9ICZhbXA7cnhxLSZndDtyeHFfc3RhdHM7PC9zcGFuPjxiciAgc3R5bGU9 ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6ZTog MTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7 IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1zcGFj aW5nOiBub3JtYWw7IG9ycGhhbnM6IDI7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDog MHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiAy OyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyBiYWNr Z3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25l c3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0 aW9uLWNvbG9yOiBpbml0aWFsOyI+PHNwYW4gIHN0eWxlPSJjb2xvcjogcmdiKDAsIDE3NiwgODAp OyBmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6 IDE0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFs OyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogNDAwOyBsZXR0ZXItc3Bh Y2luZzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10 cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyBi YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlj a25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNv cmF0aW9uLWNvbG9yOiBpbml0aWFsOyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBv cnRhbnQ7Ij4mZ3Q7ICsmbmJzcDsgbWVtc2V0KHJ4cV9zdGF0cywgMCwgc2l6ZW9mKHN0cnVjdCBu YmxfcnhxX3N0YXRzKSk7PC9zcGFuPjxiciAgc3R5bGU9ImZvbnQtZmFtaWx5OiBUYWhvbWEsIEFy aWFsLCBTVEhlaXRpLCBTaW1TdW47IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFs OyBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3Jt YWw7IGZvbnQtd2VpZ2h0OiA0MDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IDI7 IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9u ZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiAyOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdl YmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAy NTUsIDI1NSk7IHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaXRpYWw7IHRleHQtZGVjb3Jh dGlvbi1zdHlsZTogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBpbml0aWFsOyI+PGJy ICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9u dC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6 IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgbGV0 dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQt aW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3 aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAw cHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsgdGV4dC1kZWNvcmF0aW9u LXRoaWNrbmVzczogaW5pdGlhbDsgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBpbml0aWFsOyB0ZXh0 LWRlY29yYXRpb24tY29sb3I6IGluaXRpYWw7Ij48c3BhbiAgc3R5bGU9ImZvbnQtZmFtaWx5OiBU YWhvbWEsIEFyaWFsLCBTVEhlaXRpU0MtTGlnaHQsIFNpbVN1bjsgY29sb3I6IHJnYigwLCAxNzYs IDgwKTsgZm9udC13ZWlnaHQ6IDcwMDsiPjxzcGFuICBzdHlsZT0iZm9udC13ZWlnaHQ6IDcwMDsg Y29sb3I6IHJnYigwLCAxNzYsIDgwKTsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVp dGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFy aWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgbGV0dGVy LXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRl eHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXNwYWNpbmc6IDBw eDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24t dGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQt ZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsgZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGluZSAh aW1wb3J0YW50OyI+V2hhdCBpZiB0aGUgYXBwbGljYXRpb24gaGFzIGRlZGljYXRlZCBsY29yZXMg Zm9yIGRhdGFwYXRoIFJ4L1R4IGJ1cnN0IGNhbGxzIGFuZDwvc3Bhbj48YnIgIHN0eWxlPSJmb250 LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0aSwgU2ltU3VuOyBmb250LXNpemU6IDE0cHg7 IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9ybWFsOyBmb250 LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5zOiAy OyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5v bmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogMjsgd29yZC1zcGFjaW5nOiAwcHg7IC13 ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwg MjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29y YXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsiPjxz cGFuICBzdHlsZT0iZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6IHJnYigwLCAxNzYsIDgwKTsgZm9u dC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAxNHB4 OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vcm1hbDsgZm9u dC12YXJpYW50LWNhcHM6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1hbGln bjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1z cGFjZTogbm9ybWFsOyB3b3JkLXNwYWNpbmc6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1 NSwgMjU1LCAyNTUpOyB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRl Y29yYXRpb24tc3R5bGU6IGluaXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsg ZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyI+dXNlcyBhbm90aGVyLCBh ZG1pbiBjb3JlIHRvIHF1ZXJ5L3Jlc2V0IHN0YXRpc3RpY3M/PC9zcGFuPjwvc3Bhbj48L3NwYW4+ PC9kaXY+PGRpdiAgc3R5bGU9ImNsZWFyOiBib3RoOyBmb250LWZhbWlseTogVGFob21hLCBBcmlh bCwgU1RIZWl0aVNDLUxpZ2h0LCBTaW1TdW47Ij48c3BhbiAgc3R5bGU9ImZvbnQtZmFtaWx5OiBU YWhvbWEsIEFyaWFsLCBTVEhlaXRpU0MtTGlnaHQsIFNpbVN1bjsiPjxzcGFuICBzdHlsZT0iY29s b3I6IHJnYigwLCAwLCAwKTsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNp bVN1bjsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1s aWdhdHVyZXM6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6 IDQwMDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5k ZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3Jk LXNwYWNpbmc6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyB0ZXh0 LWRlY29yYXRpb24tdGhpY2tuZXNzOiBpbml0aWFsOyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGlu aXRpYWw7IHRleHQtZGVjb3JhdGlvbi1jb2xvcjogaW5pdGlhbDsgZmxvYXQ6IG5vbmU7IGRpc3Bs YXk6IGlubGluZSAhaW1wb3J0YW50OyI+PGJyID48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXYgIHN0 eWxlPSJjbGVhcjogYm90aDsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGlTQy1M aWdodCwgU2ltU3VuOyI+PHNwYW4gIHN0eWxlPSJmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwg U1RIZWl0aVNDLUxpZ2h0LCBTaW1TdW47Ij48c3BhbiA+Rmlyc3QsIHRoaXMgaXNzdWUgZG9lcyBu b3QgY2F1c2UgYW55IGNyYXNoZXMuJm5ic3A7PC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2ICBzdHls ZT0iY2xlYXI6IGJvdGg7IGZvbnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpU0MtTGln aHQsIFNpbVN1bjsiPjxzcGFuICBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNU SGVpdGlTQy1MaWdodCwgU2ltU3VuOyI+PHNwYW4gPkFkZGl0aW9uYWxseSwgSSB0aGluayB0aGVz ZSBzdGF0aXN0aWNzIGFyZSBub3Qgc28gaW1wb3J0YW5077yMaXQgaXMgdW5uZWNlc3NhcnkgdG8g c2V0IHJ0ZV9hdG9taWMgZm9yIHRoZW0sIGFzIGl0IHdvdWxkIGludHJvZHVjZSB1bm5lY2Vzc2Fy eSBwZXJmb3JtYW5jZSBvdmVyaGVhZC48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXYgIHN0eWxlPSJj bGVhcjogYm90aDsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGlTQy1MaWdodCwg U2ltU3VuOyI+PHNwYW4gIHN0eWxlPSJmb250LWZhbWlseTogVGFob21hLCBBcmlhbCwgU1RIZWl0 aVNDLUxpZ2h0LCBTaW1TdW47Ij48c3BhbiA+PGJyID48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXYg IHN0eWxlPSJjbGVhcjogYm90aDsgZm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGlT Qy1MaWdodCwgU2ltU3VuOyI+PHNwYW4gIHN0eWxlPSJmb250LWZhbWlseTogVGFob21hLCBBcmlh bCwgU1RIZWl0aVNDLUxpZ2h0LCBTaW1TdW47Ij48c3BhbiA+VGhhbmsgeW91Ljwvc3Bhbj48L3Nw YW4+PC9kaXY+PGRpdiAgc3R5bGU9ImNsZWFyOiBib3RoOyBmb250LWZhbWlseTogVGFob21hLCBB cmlhbCwgU1RIZWl0aVNDLUxpZ2h0LCBTaW1TdW47Ij48c3BhbiAgc3R5bGU9ImZvbnQtZmFtaWx5 OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpU0MtTGlnaHQsIFNpbVN1bjsiPjxzcGFuID48YnIgPjwv c3Bhbj48L3NwYW4+PC9kaXY+PGRpdiAgc3R5bGU9ImNsZWFyOiBib3RoOyBmb250LWZhbWlseTog VGFob21hLCBBcmlhbCwgU1RIZWl0aVNDLUxpZ2h0LCBTaW1TdW47Ij48c3BhbiAgc3R5bGU9ImZv bnQtZmFtaWx5OiBUYWhvbWEsIEFyaWFsLCBTVEhlaXRpU0MtTGlnaHQsIFNpbVN1bjsiPjxzcGFu ID48YnIgPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGJsb2NrcXVvdGUgIF9xdW90ZT0iMSIgc3R5bGU9 Im1hcmdpbi1yaWdodDogMHB4OyBtYXJnaW4tdG9wOiAwcHg7IG1hcmdpbi1ib3R0b206IDBweDsg Zm9udC1mYW1pbHk6IFRhaG9tYSwgQXJpYWwsIFNUSGVpdGksIFNpbVN1bjsgZm9udC1zaXplOiAx NHB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyI+PGRpdiAgY2xhc3M9ImFsaW1haWwtcXVvdGUiPjxk aXYgIHN0eWxlPSJjbGVhcjogYm90aDsiPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTwvZGl2PjxkaXYgIHN0eWxlPSJjbGVh cjogYm90aDsiPuWPkeS7tuS6uu+8mkl2YW4gTWFsb3YgJmx0O2l2YW4ubWFsb3ZAYXJrbmV0d29y a3MuYW0mZ3Q7PC9kaXY+PGRpdiAgc3R5bGU9ImNsZWFyOiBib3RoOyI+5Y+R6YCB5pe26Ze077ya MjAyNeW5tDjmnIgxM+aXpSjlkajkuIkpIDE5OjQ4PC9kaXY+PGRpdiAgc3R5bGU9ImNsZWFyOiBi b3RoOyI+5pS25Lu25Lq677yaRGltb24mbHQ7ZGltb24uemhhb0BuZWJ1bGEtbWF0cml4LmNvbSZn dDs8L2Rpdj48ZGl2ICBzdHlsZT0iY2xlYXI6IGJvdGg7Ij7mioTjgIDpgIHvvJpkZXYmbHQ7ZGV2 QGRwZGsub3JnJmd0OzsgS3lvIExpdSZsdDtreW8ubGl1QG5lYnVsYS1tYXRyaXguY29tJmd0Ozsg TGVvbiZsdDtsZW9uLnl1QG5lYnVsYS1tYXRyaXguY29tJmd0OzsgU2FtJmx0O3NhbS5jaGVuQG5l YnVsYS1tYXRyaXguY29tJmd0OzwvZGl2PjxkaXYgIHN0eWxlPSJjbGVhcjogYm90aDsiPuS4u+OA gOmimO+8mlJlOiBbUEFUQ0ggdjQgMTUvMTZdIG5ldC9uYmw6IGFkZCBuYmwgZGV2aWNlIHhzdGF0 cyBhbmQgc3RhdHM8L2Rpdj48ZGl2ICBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48YnIgPjwvZGl2Pkhp IERpbW9uLDxiciA+PGJyID4ocGxlYXNlIHNlZSBiZWxvdyk8YnIgPjxiciA+T24gVHVlLCAxMiBB dWcgMjAyNSwgRGltb24gWmhhbyB3cm90ZTo8YnIgPjxiciA+Jmd0OyBJbXBsZW1lbnQgTkJMIGRl dmljZSB4c3RhdHMgYW5kIHN0YXRzIGZ1bmN0aW9uczxiciA+Jmd0OzxiciA+Jmd0OyBTaWduZWQt b2ZmLWJ5OiBEaW1vbiBaaGFvICZsdDtkaW1vbi56aGFvQG5lYnVsYS1tYXRyaXguY29tJmd0Ozxi ciA+Jmd0OyAtLS08YnIgPiZndDsgZHJpdmVycy9uZXQvbmJsL25ibF9kZXYvbmJsX2Rldi5jICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgMTQxICsrKysrKysrKysr KysrKysrLTxiciA+Jmd0OyBkcml2ZXJzL25ldC9uYmwvbmJsX2Rldi9uYmxfZGV2LmggJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgOCArPGJyID4mZ3Q7 IGRyaXZlcnMvbmV0L25ibC9uYmxfZGlzcGF0Y2guYyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAxMTEgKysrKysrKysrKysrKys8YnIgPiZn dDsgZHJpdmVycy9uZXQvbmJsL25ibF9ldGhkZXYuYyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7IDQgKzxiciA+Jmd0 OyAuLi4vbmJsL25ibF9ody9uYmxfaHdfbGVvbmlzL25ibF9yZXNfbGVvbmlzLmMgfCAxMTMgKysr KysrKysrKysrKys8YnIgPiZndDsgZHJpdmVycy9uZXQvbmJsL25ibF9ody9uYmxfdHhyeC5jICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgMTEzICsrKysrKysrKysr KystPGJyID4mZ3Q7IGRyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX2NoYW5uZWwu aCB8ICZuYnNwOyA1ICs8YnIgPiZndDsgLi4uL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9k aXNwYXRjaC5oJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyA5ICsrPGJyID4mZ3Q7IC4uLi9uZXQvbmJs L25ibF9pbmNsdWRlL25ibF9kZWZfcmVzb3VyY2UuaCZuYnNwOyAmbmJzcDsgfCZuYnNwOyAxMiAr LTxiciA+Jmd0OyBkcml2ZXJzL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2luY2x1ZGUuaCAmbmJz cDsgJm5ic3A7IHwgJm5ic3A7IDQgKzxiciA+Jmd0OyAxMCBmaWxlcyBjaGFuZ2VkLCA1MTQgaW5z ZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSk8YnIgPiZndDs8YnIgPiZndDsgZGlmZiAtLWdpdCBh L2RyaXZlcnMvbmV0L25ibC9uYmxfZGV2L25ibF9kZXYuYyBiL2RyaXZlcnMvbmV0L25ibC9uYmxf ZGV2L25ibF9kZXYuYzxiciA+Jmd0OyBpbmRleCBiMzJhYjgzOWQ1Li5iYWI4OWM3MDdmIDEwMDY0 NDxiciA+Jmd0OyAtLS0gYS9kcml2ZXJzL25ldC9uYmwvbmJsX2Rldi9uYmxfZGV2LmM8YnIgPiZn dDsgKysrIGIvZHJpdmVycy9uZXQvbmJsL25ibF9kZXYvbmJsX2Rldi5jPGJyID4mZ3Q7IEBAIC0z ODEsNiArMzgxLDEyNiBAQCBpbnQgbmJsX3N0YXRzX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0 aF9kZXYsIHN0cnVjdCBydGVfZXRoX3N0YXRzICpydGVfc3RhdHMpPGJyID4mZ3Q7Jm5ic3A7IHJl dHVybiBkaXNwX29wcy0mZ3Q7Z2V0X3N0YXRzKE5CTF9ERVZfTUdUX1RPX0RJU1BfUFJJVihkZXZf bWd0KSwgcnRlX3N0YXRzKTs8YnIgPiZndDsgfTxiciA+Jmd0OzxiciA+Jmd0OyAraW50IG5ibF9z dGF0c19yZXNldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpPGJyID4mZ3Q7ICt7PGJyID4m Z3Q7ICsgc3RydWN0IG5ibF9hZGFwdGVyICphZGFwdGVyID0gRVRIX0RFVl9UT19OQkxfREVWX1BG X1BSSVYoZXRoX2Rldik7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9kZXZfbWd0ICpkZXZfbWd0ID0g TkJMX0FEQVBURVJfVE9fREVWX01HVChhZGFwdGVyKTs8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX2Rp c3BhdGNoX29wcyAqZGlzcF9vcHMgPSBOQkxfREVWX01HVF9UT19ESVNQX09QUyhkZXZfbWd0KTs8 YnIgPiZndDsgKzxiciA+Jmd0OyArIHJldHVybiBkaXNwX29wcy0mZ3Q7cmVzZXRfc3RhdHMoTkJM X0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpKTs8YnIgPiZndDsgK308YnIgPiZndDsgKzxi ciA+Jmd0OyArc3RhdGljIGludCBuYmxfZGV2X3VwZGF0ZV9od194c3RhdHMoc3RydWN0IG5ibF9k ZXZfbWd0ICpkZXZfbWd0LCBzdHJ1Y3QgcnRlX2V0aF94c3RhdCAqeHN0YXRzLDxiciA+Jmd0OyAr Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHUxNiBod194c3RhdHNfY250LCB1MTYgKnhzdGF0 c19jbnQpPGJyID4mZ3Q7ICt7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9jb21tb25faW5mbyAqY29t bW9uID0gTkJMX0RFVl9NR1RfVE9fQ09NTU9OKGRldl9tZ3QpOzxiciA+Jmd0OyArIHN0cnVjdCBu YmxfZGlzcGF0Y2hfb3BzICpkaXNwX29wcyA9IE5CTF9ERVZfTUdUX1RPX0RJU1BfT1BTKGRldl9t Z3QpOzxiciA+Jmd0OyArIHU2NCAqaHdfc3RhdHM7PGJyID4mZ3Q7ICsgaW50IGk7PGJyID4mZ3Q7 ICsgdTE2IGNvdW50ID0gKnhzdGF0c19jbnQ7PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyBod19zdGF0 cyA9IHJ0ZV96bWFsbG9jKCJuYmxfeHN0YXRzX2NudCIsIGh3X3hzdGF0c19jbnQgKiBzaXplb2Yo dTY0KSwgMCk7PGJyID48YnIgPkRvIHlvdSBiZWxpZXZlIGl0J3MgdGhlIGJlc3QgY291cnNlIG9m IGFjdGlvbiwgdG8gYWxsb2NhdGUgYW5kIGZyZWUgYSBib3VuY2U8YnIgPmJ1ZmZlciBvbiBlYWNo IGludm9jYXRpb24/IFRoaXMgZnVuY3Rpb24gaXMgbm90IHN0cmljdGx5IGZhc3QtcGF0aCwgYnV0 IEknZCBzYXk8YnIgPnNlbWktZmFzdC4gU29tZSBhcHBsaWNhdGlvbnMgbWF5IHdhbnQgdG8gaW52 b2tlIGl0IHByZXR0eSBvZnRlbi48YnIgPjxiciA+Jmd0OyArIGlmICghaHdfc3RhdHMpPGJyID4m Z3Q7ICsmbmJzcDsgcmV0dXJuIC1FTk9NRU07PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyBkaXNwX29w cy0mZ3Q7Z2V0X3ByaXZhdGVfc3RhdF9kYXRhKE5CTF9ERVZfTUdUX1RPX0RJU1BfUFJJVihkZXZf bWd0KSw8YnIgPiZndDsgKyAmbmJzcDsgJm5ic3A7IGNvbW1vbi0mZ3Q7ZXRoX2lkLCBod19zdGF0 cywgaHdfeHN0YXRzX2NudCAqIHNpemVvZih1NjQpKTs8YnIgPiZndDsgKyBmb3IgKGkgPSAwOyBp ICZsdDsgaHdfeHN0YXRzX2NudDsgaSsrKSB7PGJyID4mZ3Q7ICsmbmJzcDsgeHN0YXRzW2NvdW50 XS52YWx1ZSA9IGh3X3N0YXRzW2ldIC0gZGV2X21ndC0mZ3Q7bmV0X2Rldi0mZ3Q7aHdfeHN0YXRz X29mZnNldFtpXTs8YnIgPiZndDsgKyZuYnNwOyB4c3RhdHNbY291bnRdLmlkID0gY291bnQ7PGJy ID4mZ3Q7ICsmbmJzcDsgY291bnQrKzs8YnIgPiZndDsgKyB9PGJyID4mZ3Q7ICs8YnIgPiZndDsg KyAqeHN0YXRzX2NudCA9IGNvdW50OzxiciA+Jmd0OyArIHJ0ZV9mcmVlKGh3X3N0YXRzKTs8YnIg PiZndDsgKyByZXR1cm4gMDs8YnIgPiZndDsgK308YnIgPiZndDsgKzxiciA+Jmd0OyAraW50IG5i bF94c3RhdHNfZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2Rldiwgc3RydWN0IHJ0ZV9ldGhf eHN0YXQgKnhzdGF0cywgdW5zaWduZWQgaW50IG4pPGJyID4mZ3Q7ICt7PGJyID4mZ3Q7ICsgc3Ry dWN0IG5ibF9hZGFwdGVyICphZGFwdGVyID0gRVRIX0RFVl9UT19OQkxfREVWX1BGX1BSSVYoZXRo X2Rldik7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9kZXZfbWd0ICpkZXZfbWd0ID0gTkJMX0FEQVBU RVJfVE9fREVWX01HVChhZGFwdGVyKTs8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX2NvbW1vbl9pbmZv ICpjb21tb24gPSBOQkxfREVWX01HVF9UT19DT01NT04oZGV2X21ndCk7PGJyID4mZ3Q7ICsgc3Ry dWN0IG5ibF9kaXNwYXRjaF9vcHMgKmRpc3Bfb3BzID0gTkJMX0RFVl9NR1RfVE9fRElTUF9PUFMo ZGV2X21ndCk7PGJyID4mZ3Q7ICsgaW50IHJldCA9IDA7PGJyID4mZ3Q7ICsgdTE2IHR4cnhfeHN0 YXRzX2NudCA9IDAsIGh3X3hzdGF0c19jbnQgPSAwLCB4c3RhdHNfY250ID0gMDs8YnIgPiZndDsg KzxiciA+Jmd0OyArIGlmICgheHN0YXRzKTxiciA+Jmd0OyArJm5ic3A7IHJldHVybiAwOzxiciA+ Jmd0OyArPGJyID4mZ3Q7ICsgcmV0ID0gZGlzcF9vcHMtJmd0O2dldF90eHJ4X3hzdGF0c19jbnQo TkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLCAmYW1wO3R4cnhfeHN0YXRzX2NudCk7 PGJyID4mZ3Q7ICsgaWYgKCFjb21tb24tJmd0O2lzX3ZmKTxiciA+Jmd0OyArJm5ic3A7IHJldCB8 PSBkaXNwX29wcy0mZ3Q7Z2V0X2h3X3hzdGF0c19jbnQoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklW KGRldl9tZ3QpLDxiciA+Jmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmYW1wO2h3 X3hzdGF0c19jbnQpOzxiciA+Jmd0OyArIGlmIChyZXQpPGJyID4mZ3Q7ICsmbmJzcDsgcmV0dXJu IC1FSU87PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyBpZiAobiAmbHQ7ICh0eHJ4X3hzdGF0c19jbnQg KyBod194c3RhdHNfY250KSk8YnIgPiZndDsgKyZuYnNwOyByZXR1cm4gdHhyeF94c3RhdHNfY250 ICsgaHdfeHN0YXRzX2NudDs8YnIgPiZndDsgKzxiciA+Jmd0OyArIGlmICh0eHJ4X3hzdGF0c19j bnQpPGJyID4mZ3Q7ICsmbmJzcDsgcmV0ID0gZGlzcF9vcHMtJmd0O2dldF90eHJ4X3hzdGF0cyhO QkxfREVWX01HVF9UT19ESVNQX1BSSVYoZGV2X21ndCksPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7 ICZuYnNwOyB4c3RhdHMsICZhbXA7eHN0YXRzX2NudCk7PGJyID4mZ3Q7ICsgaWYgKGh3X3hzdGF0 c19jbnQpPGJyID4mZ3Q7ICsmbmJzcDsgcmV0IHw9IG5ibF9kZXZfdXBkYXRlX2h3X3hzdGF0cyhk ZXZfbWd0LCB4c3RhdHMsIGh3X3hzdGF0c19jbnQsICZhbXA7eHN0YXRzX2NudCk7PGJyID4mZ3Q7 ICs8YnIgPiZndDsgKyBpZiAocmV0KTxiciA+Jmd0OyArJm5ic3A7IHJldHVybiAtRUlPOzxiciA+ Jmd0OyArPGJyID4mZ3Q7ICsgcmV0dXJuIHhzdGF0c19jbnQ7PGJyID4mZ3Q7ICt9PGJyID4mZ3Q7 ICs8YnIgPiZndDsgK2ludCBuYmxfeHN0YXRzX2dldF9uYW1lcyhzdHJ1Y3QgcnRlX2V0aF9kZXYg KmV0aF9kZXYsPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IHN0cnVjdCBydGVfZXRoX3hzdGF0X25h bWUgKnhzdGF0c19uYW1lcyw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgX19ydGVfdW51c2VkIHVu c2lnbmVkIGludCBsaW1pdCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX2FkYXB0 ZXIgKmFkYXB0ZXIgPSBFVEhfREVWX1RPX05CTF9ERVZfUEZfUFJJVihldGhfZGV2KTs8YnIgPiZn dDsgKyBzdHJ1Y3QgbmJsX2Rldl9tZ3QgKmRldl9tZ3QgPSBOQkxfQURBUFRFUl9UT19ERVZfTUdU KGFkYXB0ZXIpOzxiciA+Jmd0OyArIHN0cnVjdCBuYmxfY29tbW9uX2luZm8gKmNvbW1vbiA9IE5C TF9ERVZfTUdUX1RPX0NPTU1PTihkZXZfbWd0KTs8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX2Rpc3Bh dGNoX29wcyAqZGlzcF9vcHMgPSBOQkxfREVWX01HVF9UT19ESVNQX09QUyhkZXZfbWd0KTs8YnIg PiZndDsgKyB1MTYgdHhyeF94c3RhdHNfY250ID0gMCwgaHdfeHN0YXRzX2NudCA9IDAsIHhzdGF0 c19jbnQgPSAwOzxiciA+Jmd0OyArIGludCByZXQgPSAwOzxiciA+Jmd0OyArPGJyID4mZ3Q7ICsg cmV0ID0gZGlzcF9vcHMtJmd0O2dldF90eHJ4X3hzdGF0c19jbnQoTkJMX0RFVl9NR1RfVE9fRElT UF9QUklWKGRldl9tZ3QpLCAmYW1wO3R4cnhfeHN0YXRzX2NudCk7PGJyID48YnIgPkV4Y2VlZHMg ODAtY29sdW1uIGxpbWl0LjxiciA+PGJyID4mZ3Q7ICsgaWYgKCFjb21tb24tJmd0O2lzX3ZmKTxi ciA+Jmd0OyArJm5ic3A7IHJldCB8PSBkaXNwX29wcy0mZ3Q7Z2V0X2h3X3hzdGF0c19jbnQoTkJM X0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLDxiciA+Jmd0OyArICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZhbXA7aHdfeHN0YXRzX2NudCk7PGJyID4mZ3Q7ICsgaWYgKHJldCk8YnIgPiZndDsg KyZuYnNwOyByZXR1cm4gLUVJTzs8YnIgPiZndDsgKzxiciA+Jmd0OyArIGlmICgheHN0YXRzX25h bWVzKTxiciA+Jmd0OyArJm5ic3A7IHJldHVybiB0eHJ4X3hzdGF0c19jbnQgKyBod194c3RhdHNf Y250OzxiciA+Jmd0OyArPGJyID4mZ3Q7ICsgaWYgKHR4cnhfeHN0YXRzX2NudCk8YnIgPiZndDsg KyZuYnNwOyByZXQgPSBkaXNwX29wcy0mZ3Q7Z2V0X3R4cnhfeHN0YXRzX25hbWVzKE5CTF9ERVZf TUdUX1RPX0RJU1BfUFJJVihkZXZfbWd0KSw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHhzdGF0c19uYW1lcywgJmFtcDt4c3RhdHNfY250KTs8YnIg PiZndDsgKyBpZiAoaHdfeHN0YXRzX2NudCk8YnIgPiZndDsgKyZuYnNwOyByZXQgfD0gZGlzcF9v cHMtJmd0O2dldF9od194c3RhdHNfbmFtZXMoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9t Z3QpLDxiciA+Jmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgeHN0YXRz X25hbWVzLCAmYW1wO3hzdGF0c19jbnQpOzxiciA+Jmd0OyArIGlmIChyZXQpPGJyID4mZ3Q7ICsm bmJzcDsgcmV0dXJuIC1FSU87PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyByZXR1cm4geHN0YXRzX2Nu dDs8YnIgPiZndDsgK308YnIgPiZndDsgKzxiciA+Jmd0OyAraW50IG5ibF94c3RhdHNfcmVzZXQo c3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2KTxiciA+Jmd0OyArezxiciA+Jmd0OyArIHN0cnVj dCBuYmxfYWRhcHRlciAqYWRhcHRlciA9IEVUSF9ERVZfVE9fTkJMX0RFVl9QRl9QUklWKGV0aF9k ZXYpOzxiciA+Jmd0OyArIHN0cnVjdCBuYmxfZGV2X21ndCAqZGV2X21ndCA9IE5CTF9BREFQVEVS X1RPX0RFVl9NR1QoYWRhcHRlcik7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9jb21tb25faW5mbyAq Y29tbW9uID0gTkJMX0RFVl9NR1RfVE9fQ09NTU9OKGRldl9tZ3QpOzxiciA+Jmd0OyArIHN0cnVj dCBuYmxfZGlzcGF0Y2hfb3BzICpkaXNwX29wcyA9IE5CTF9ERVZfTUdUX1RPX0RJU1BfT1BTKGRl dl9tZ3QpOzxiciA+Jmd0OyArIHN0cnVjdCBuYmxfZGV2X25ldF9tZ3QgKm5ldF9kZXYgPSBkZXZf bWd0LSZndDtuZXRfZGV2OzxiciA+Jmd0OyArPGJyID4mZ3Q7ICsgaWYgKCFjb21tb24tJmd0O2lz X3ZmKSB7PGJyID4mZ3Q7ICsmbmJzcDsgZGlzcF9vcHMtJmd0O2dldF9wcml2YXRlX3N0YXRfZGF0 YShOQkxfREVWX01HVF9UT19ESVNQX1BSSVYoZGV2X21ndCksPGJyID4mZ3Q7ICsmbmJzcDsgJm5i c3A7ICZuYnNwOyBkZXZfbWd0LSZndDtjb21tb24tJmd0O2V0aF9pZCw8YnIgPiZndDsgKyZuYnNw OyAmbmJzcDsgJm5ic3A7IG5ldF9kZXYtJmd0O2h3X3hzdGF0c19vZmZzZXQsIG5ldF9kZXYtJmd0 O2h3X3hzdGF0c19zaXplKTs8YnIgPiZndDsgKyB9PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyBuYmxf c3RhdHNfcmVzZXQoZXRoX2Rldik7PGJyID4mZ3Q7ICsgcmV0dXJuIDA7PGJyID4mZ3Q7ICt9PGJy ID4mZ3Q7ICs8YnIgPiZndDsgc3RydWN0IG5ibF9kZXZfb3BzIGRldl9vcHMgPSB7PGJyID4mZ3Q7 IH07PGJyID4mZ3Q7PGJyID4mZ3Q7IEBAIC00MzUsNiArNTU1LDcgQEAgc3RhdGljIGludCBuYmxf ZGV2X2NvbW1vbl9zdGFydChzdHJ1Y3QgbmJsX2Rldl9tZ3QgKmRldl9tZ3QpPGJyID4mZ3Q7Jm5i c3A7IHN0cnVjdCBydGVfaW50cl9oYW5kbGUgKmludHJfaGFuZGxlID0gcGNpX2Rldi0mZ3Q7aW50 cl9oYW5kbGU7PGJyID4mZ3Q7Jm5ic3A7IHU4ICptYWM7PGJyID4mZ3Q7Jm5ic3A7IGludCByZXQ7 PGJyID4mZ3Q7ICsgdTE2IHByaXZfY250ID0gMDs8YnIgPiZndDs8YnIgPiZndDsmbmJzcDsgYm9h cmRfaW5mbyA9ICZhbXA7Y29tbW9uLSZndDtib2FyZF9pbmZvOzxiciA+Jmd0OyZuYnNwOyBkaXNw X29wcy0mZ3Q7Z2V0X2JvYXJkX2luZm8oTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3Qp LCBib2FyZF9pbmZvKTs8YnIgPiZndDsgQEAgLTQ3Nyw4ICs1OTgsMjUgQEAgc3RhdGljIGludCBu YmxfZGV2X2NvbW1vbl9zdGFydChzdHJ1Y3QgbmJsX2Rldl9tZ3QgKmRldl9tZ3QpPGJyID4mZ3Q7 Jm5ic3A7ICZuYnNwOyBnb3RvIGFkZF9tdWx0aV9ydWxlX2ZhaWxlZDs8YnIgPiZndDsmbmJzcDsg fTxiciA+Jmd0OzxiciA+Jmd0OyAtIHJldHVybiAwOzxiciA+Jmd0OyArIG5ldF9kZXYtJmd0O2h3 X3hzdGF0c19vZmZzZXQgPSBOVUxMOzxiciA+Jmd0OyArIGlmICghZGV2X21ndC0mZ3Q7Y29tbW9u LSZndDtpc192Zik8YnIgPiZndDsgKyZuYnNwOyBkaXNwX29wcy0mZ3Q7Z2V0X2h3X3hzdGF0c19j bnQoTkJMX0RFVl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLCAmYW1wO3ByaXZfY250KTs8YnIg PiZndDsgKyBpZiAocHJpdl9jbnQpIHs8YnIgPiZndDsgKyZuYnNwOyBuZXRfZGV2LSZndDtod194 c3RhdHNfb2Zmc2V0ID0gcnRlX3ptYWxsb2MoIm5ibF94c3RhdHNfY250Iiw8YnIgPiZndDsgKyAm bmJzcDsgJm5ic3A7ICZuYnNwOyBwcml2X2NudCAqIHNpemVvZih1NjQpLCAwKTs8YnIgPiZndDsg KyZuYnNwOyBuZXRfZGV2LSZndDtod194c3RhdHNfc2l6ZSA9IHByaXZfY250ICogc2l6ZW9mKHU2 NCk7PGJyID4mZ3Q7ICsmbmJzcDsgaWYgKCFuZXRfZGV2LSZndDtod194c3RhdHNfb2Zmc2V0KSB7 PGJyID4mZ3Q7ICsgJm5ic3A7IHJldCA9IC1FTk9NRU07PGJyID4mZ3Q7ICsgJm5ic3A7IGdvdG8g YWxsb2NfeHN0YXRzX29mZnNldF9mYWlsZWQ7PGJyID4mZ3Q7ICsmbmJzcDsgfTxiciA+Jmd0OyAr PGJyID4mZ3Q7ICsmbmJzcDsgZGlzcF9vcHMtJmd0O2dldF9wcml2YXRlX3N0YXRfZGF0YShOQkxf REVWX01HVF9UT19ESVNQX1BSSVYoZGV2X21ndCksPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7ICZu YnNwOyBkZXZfbWd0LSZndDtjb21tb24tJmd0O2V0aF9pZCw8YnIgPiZndDsgKyZuYnNwOyAmbmJz cDsgJm5ic3A7IG5ldF9kZXYtJmd0O2h3X3hzdGF0c19vZmZzZXQsIG5ldF9kZXYtJmd0O2h3X3hz dGF0c19zaXplKTs8YnIgPiZndDsgKyB9PGJyID4mZ3Q7PGJyID4mZ3Q7ICsgcmV0dXJuIDA7PGJy ID4mZ3Q7ICthbGxvY194c3RhdHNfb2Zmc2V0X2ZhaWxlZDo8YnIgPiZndDsgYWRkX211bHRpX3J1 bGVfZmFpbGVkOjxiciA+Jmd0OyZuYnNwOyBkaXNwX29wcy0mZ3Q7ZGVsX21hY3ZsYW4oTkJMX0RF Vl9NR1RfVE9fRElTUF9QUklWKGRldl9tZ3QpLCBtYWMsIDAsIG5ldF9kZXYtJmd0O3ZzaV9pZCk7 PGJyID4mZ3Q7IGFkZF9tYWN2bGFuX2ZhaWxlZDo8YnIgPiZndDsgQEAgLTc1Nyw2ICs4OTUsNyBA QCBpbnQgbmJsX2Rldl9pbml0KHZvaWQgKnAsIHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2Rldik8 YnIgPiZndDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBldGhfZGV2LSZndDtk YXRhLSZndDttYWNfYWRkcnNbMF0uYWRkcl9ieXRlcyk7PGJyID4mZ3Q7PGJyID4mZ3Q7Jm5ic3A7 IGFkYXB0ZXItJmd0O3N0YXRlID0gTkJMX0VUSERFVl9JTklUSUFMSVpFRDs8YnIgPiZndDsgKyBl dGhfZGV2LSZndDtkYXRhLSZndDtkZXZfZmxhZ3MgfD0gUlRFX0VUSF9ERVZfQVVUT0ZJTExfUVVF VUVfWFNUQVRTOzxiciA+Jmd0OyZuYnNwOyBkaXNwX29wcy0mZ3Q7Z2V0X3Jlc291cmNlX3B0X29w cyhOQkxfREVWX01HVF9UT19ESVNQX1BSSVYoKmRldl9tZ3QpLDxiciA+Jmd0OyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZhbXA7KCpkZXZfbWd0KS0mZ3Q7cHRfb3BzLCAwKTs8 YnIgPiZndDs8YnIgPiZndDsgZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L25ibC9uYmxfZGV2L25i bF9kZXYuaCBiL2RyaXZlcnMvbmV0L25ibC9uYmxfZGV2L25ibF9kZXYuaDxiciA+Jmd0OyBpbmRl eCA1NzdhMjhiMzJkLi4xNTAwYTc4MmE1IDEwMDY0NDxiciA+Jmd0OyAtLS0gYS9kcml2ZXJzL25l dC9uYmwvbmJsX2Rldi9uYmxfZGV2Lmg8YnIgPiZndDsgKysrIGIvZHJpdmVycy9uZXQvbmJsL25i bF9kZXYvbmJsX2Rldi5oPGJyID4mZ3Q7IEBAIC00MSw2ICs0MSw4IEBAIHN0cnVjdCBuYmxfZGV2 X25ldF9tZ3QgezxiciA+Jmd0OyZuYnNwOyBzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXY7PGJy ID4mZ3Q7Jm5ic3A7IHN0cnVjdCBuYmxfZGV2X3JpbmdfbWd0IHJpbmdfbWd0OzxiciA+Jmd0OyZu YnNwOyBzdHJ1Y3QgbmJsX2V0aF9saW5rX2luZm8gZXRoX2xpbmtfaW5mbzs8YnIgPiZndDsgKyB1 NjQgKmh3X3hzdGF0c19vZmZzZXQ7PGJyID4mZ3Q7ICsgdTMyIGh3X3hzdGF0c19zaXplOzxiciA+ Jmd0OyZuYnNwOyB1MTYgdnNpX2lkOzxiciA+Jmd0OyZuYnNwOyB1OCBldGhfbW9kZTs8YnIgPiZn dDsmbmJzcDsgdTggZXRoX2lkOzxiciA+Jmd0OyBAQCAtNzEsNSArNzMsMTEgQEAgdm9pZCBuYmxf cnhfcXVldWVzX3JlbGVhc2Uoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2LCB1aW50MTZfdCBx dWV1ZV9pZCk7PGJyID4mZ3Q7IGludCBuYmxfZGV2X2luZm9zX2dldChzdHJ1Y3QgcnRlX2V0aF9k ZXYgKmV0aF9kZXYgX19ydGVfdW51c2VkLCBzdHJ1Y3QgcnRlX2V0aF9kZXZfaW5mbyAqZGV2X2lu Zm8pOzxiciA+Jmd0OyBpbnQgbmJsX2xpbmtfdXBkYXRlKHN0cnVjdCBydGVfZXRoX2RldiAqZXRo X2RldiwgaW50IHdhaXRfdG9fY29tcGxldGUgX19ydGVfdW51c2VkKTs8YnIgPiZndDsgaW50IG5i bF9zdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2LCBzdHJ1Y3QgcnRlX2V0aF9z dGF0cyAqcnRlX3N0YXRzKTs8YnIgPiZndDsgK2ludCBuYmxfc3RhdHNfcmVzZXQoc3RydWN0IHJ0 ZV9ldGhfZGV2ICpldGhfZGV2KTs8YnIgPiZndDsgK2ludCBuYmxfeHN0YXRzX2dldChzdHJ1Y3Qg cnRlX2V0aF9kZXYgKmV0aF9kZXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0ICp4c3RhdHMsIHVuc2ln bmVkIGludCBuKTs8YnIgPiZndDsgK2ludCBuYmxfeHN0YXRzX2dldF9uYW1lcyhzdHJ1Y3QgcnRl X2V0aF9kZXYgKmV0aF9kZXYsPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IHN0cnVjdCBydGVfZXRo X3hzdGF0X25hbWUgKnhzdGF0c19uYW1lcyw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgX19ydGVf dW51c2VkIHVuc2lnbmVkIGludCBsaW1pdCk7PGJyID4mZ3Q7ICtpbnQgbmJsX3hzdGF0c19yZXNl dChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpOzxiciA+Jmd0OzxiciA+Jmd0OyAjZW5kaWY8 YnIgPiZndDsgZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L25ibC9uYmxfZGlzcGF0Y2guYyBiL2Ry aXZlcnMvbmV0L25ibC9uYmxfZGlzcGF0Y2guYzxiciA+Jmd0OyBpbmRleCA5MzgyYjc2Y2U2Li4x NWVhNjFkOGU0IDEwMDY0NDxiciA+Jmd0OyAtLS0gYS9kcml2ZXJzL25ldC9uYmwvbmJsX2Rpc3Bh dGNoLmM8YnIgPiZndDsgKysrIGIvZHJpdmVycy9uZXQvbmJsL25ibF9kaXNwYXRjaC5jPGJyID4m Z3Q7IEBAIC04MDksOSArODA5LDk0IEBAIHN0YXRpYyBpbnQgbmJsX2Rpc3BfZ2V0X3N0YXRzKHZv aWQgKnByaXYsIHN0cnVjdCBydGVfZXRoX3N0YXRzICpydGVfc3RhdHMpPGJyID4mZ3Q7IHs8YnIg PiZndDsmbmJzcDsgc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0ID0gKHN0cnVjdCBu YmxfZGlzcGF0Y2hfbWd0ICopcHJpdjs8YnIgPiZndDsmbmJzcDsgc3RydWN0IG5ibF9yZXNvdXJj ZV9vcHMgKnJlc19vcHMgPSBOQkxfRElTUF9NR1RfVE9fUkVTX09QUyhkaXNwX21ndCk7PGJyID4m Z3Q7ICs8YnIgPiZndDsmbmJzcDsgcmV0dXJuIHJlc19vcHMtJmd0O2dldF9zdGF0cyhOQkxfRElT UF9NR1RfVE9fUkVTX1BSSVYoZGlzcF9tZ3QpLCBydGVfc3RhdHMpOzxiciA+Jmd0OyB9PGJyID4m Z3Q7PGJyID4mZ3Q7ICtzdGF0aWMgaW50IG5ibF9kaXNwX3Jlc2V0X3N0YXRzKHZvaWQgKnByaXYp PGJyID4mZ3Q7ICt7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0 ID0gKHN0cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICopcHJpdjs8YnIgPiZndDsgKyBzdHJ1Y3QgbmJs X3Jlc291cmNlX29wcyAqcmVzX29wcyA9IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0 KTs8YnIgPiZndDsgKzxiciA+Jmd0OyArIHJldHVybiByZXNfb3BzLSZndDtyZXNldF9zdGF0cyhO QkxfRElTUF9NR1RfVE9fUkVTX1BSSVYoZGlzcF9tZ3QpKTs8YnIgPiZndDsgK308YnIgPiZndDsg KzxiciA+Jmd0OyArc3RhdGljIGludCBuYmxfZGlzcF9nZXRfdHhyeF94c3RhdHNfY250KHZvaWQg KnByaXYsIHUxNiAqeHN0YXRzX2NudCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyBzdHJ1Y3QgbmJs X2Rpc3BhdGNoX21ndCAqZGlzcF9tZ3QgPSAoc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKilwcml2 OzxiciA+Jmd0OyArIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzICpyZXNfb3BzOzxiciA+Jmd0OyAr PGJyID4mZ3Q7ICsgcmVzX29wcyA9IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0KTs8 YnIgPiZndDsgKyByZXR1cm4gcmVzX29wcy0mZ3Q7Z2V0X3R4cnhfeHN0YXRzX2NudChOQkxfRElT UF9NR1RfVE9fUkVTX1BSSVYoZGlzcF9tZ3QpLCB4c3RhdHNfY250KTs8YnIgPiZndDsgK308YnIg PiZndDsgKzxiciA+Jmd0OyArc3RhdGljIGludCBuYmxfZGlzcF9nZXRfdHhyeF94c3RhdHModm9p ZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXQgKnhzdGF0cywgdTE2ICp4c3RhdHNfY250KTxi ciA+Jmd0OyArezxiciA+Jmd0OyArIHN0cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICpkaXNwX21ndCA9 IChzdHJ1Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXByaXY7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9y ZXNvdXJjZV9vcHMgKnJlc19vcHM7PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyByZXNfb3BzID0gTkJM X0RJU1BfTUdUX1RPX1JFU19PUFMoZGlzcF9tZ3QpOzxiciA+Jmd0OyArIHJldHVybiByZXNfb3Bz LSZndDtnZXRfdHhyeF94c3RhdHMoTkJMX0RJU1BfTUdUX1RPX1JFU19QUklWKGRpc3BfbWd0KSwg eHN0YXRzLCB4c3RhdHNfY250KTs8YnIgPiZndDsgK308YnIgPiZndDsgKzxiciA+Jmd0OyArc3Rh dGljIGludCBuYmxfZGlzcF9nZXRfdHhyeF94c3RhdHNfbmFtZXModm9pZCAqcHJpdiwgc3RydWN0 IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVzLDxiciA+Jmd0OyArICZuYnNwOyAmbmJz cDsgJm5ic3A7IHUxNiAqeHN0YXRzX2NudCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyBzdHJ1Y3Qg bmJsX2Rpc3BhdGNoX21ndCAqZGlzcF9tZ3QgPSAoc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKilw cml2OzxiciA+Jmd0OyArIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzICpyZXNfb3BzOzxiciA+Jmd0 OyArPGJyID4mZ3Q7ICsgcmVzX29wcyA9IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0 KTs8YnIgPiZndDsgKyByZXR1cm4gcmVzX29wcy0mZ3Q7Z2V0X3R4cnhfeHN0YXRzX25hbWVzKE5C TF9ESVNQX01HVF9UT19SRVNfUFJJVihkaXNwX21ndCksPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7 ICZuYnNwOyB4c3RhdHNfbmFtZXMsIHhzdGF0c19jbnQpOzxiciA+Jmd0OyArfTxiciA+Jmd0OyAr PGJyID4mZ3Q7ICtzdGF0aWMgaW50IG5ibF9kaXNwX2dldF9od194c3RhdHNfY250KHZvaWQgKnBy aXYsIHUxNiAqeHN0YXRzX2NudCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX2Rp c3BhdGNoX21ndCAqZGlzcF9tZ3QgPSAoc3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKilwcml2Ozxi ciA+Jmd0OyArIHN0cnVjdCBuYmxfcmVzb3VyY2Vfb3BzICpyZXNfb3BzOzxiciA+Jmd0OyArPGJy ID4mZ3Q7ICsgcmVzX29wcyA9IE5CTF9ESVNQX01HVF9UT19SRVNfT1BTKGRpc3BfbWd0KTs8YnIg PiZndDsgKyByZXR1cm4gcmVzX29wcy0mZ3Q7Z2V0X2h3X3hzdGF0c19jbnQoTkJMX0RJU1BfTUdU X1RPX1JFU19QUklWKGRpc3BfbWd0KSwgeHN0YXRzX2NudCk7PGJyID4mZ3Q7ICt9PGJyID4mZ3Q7 ICs8YnIgPiZndDsgK3N0YXRpYyBpbnQgbmJsX2Rpc3BfZ2V0X2h3X3hzdGF0c19uYW1lcyh2b2lk ICpwcml2LCBzdHJ1Y3QgcnRlX2V0aF94c3RhdF9uYW1lICp4c3RhdHNfbmFtZXMsPGJyID4mZ3Q7 ICsgJm5ic3A7ICZuYnNwOyB1MTYgKnhzdGF0c19jbnQpPGJyID4mZ3Q7ICt7PGJyID4mZ3Q7ICsg c3RydWN0IG5ibF9kaXNwYXRjaF9tZ3QgKmRpc3BfbWd0ID0gKHN0cnVjdCBuYmxfZGlzcGF0Y2hf bWd0ICopcHJpdjs8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX3Jlc291cmNlX29wcyAqcmVzX29wczs8 YnIgPiZndDsgKzxiciA+Jmd0OyArIHJlc19vcHMgPSBOQkxfRElTUF9NR1RfVE9fUkVTX09QUyhk aXNwX21ndCk7PGJyID4mZ3Q7ICsgcmV0dXJuIHJlc19vcHMtJmd0O2dldF9od194c3RhdHNfbmFt ZXMoTkJMX0RJU1BfTUdUX1RPX1JFU19QUklWKGRpc3BfbWd0KSw8YnIgPiZndDsgKyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgeHN0YXRzX25hbWVzLCB4c3RhdHNfY250KTs8YnIgPiZndDsg K308YnIgPiZndDsgKzxiciA+Jmd0OyArc3RhdGljIHZvaWQgbmJsX2Rpc3BfZ2V0X3ByaXZhdGVf c3RhdF9kYXRhKHZvaWQgKnByaXYsIHUzMiBldGhfaWQsIHU2NCAqZGF0YSw8YnIgPiZndDsgKyZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBfX3J0ZV91bnVzZWQgdTMyIGRhdGFfbGVuKTxiciA+ Jmd0OyArezxiciA+Jmd0OyArIHN0cnVjdCBuYmxfZGlzcGF0Y2hfbWd0ICpkaXNwX21ndCA9IChz dHJ1Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXByaXY7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9yZXNv dXJjZV9vcHMgKnJlc19vcHM7PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyByZXNfb3BzID0gTkJMX0RJ U1BfTUdUX1RPX1JFU19PUFMoZGlzcF9tZ3QpOzxiciA+Jmd0OyArIE5CTF9PUFNfQ0FMTChyZXNf b3BzLSZndDtnZXRfcHJpdmF0ZV9zdGF0X2RhdGEsPGJyID4mZ3Q7ICsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgKE5CTF9ESVNQX01HVF9UT19SRVNfUFJJVihkaXNwX21ndCksIGV0aF9pZCwgZGF0YSkp OzxiciA+Jmd0OyArfTxiciA+Jmd0OyArPGJyID4mZ3Q7ICtzdGF0aWMgdm9pZCBuYmxfZGlzcF9n ZXRfcHJpdmF0ZV9zdGF0X2RhdGFfcmVxKHZvaWQgKnByaXYsIHUzMiBldGhfaWQsIHU2NCAqZGF0 YSwgdTMyIGRhdGFfbGVuKTxiciA+Jmd0OyArezxiciA+Jmd0OyArIHN0cnVjdCBuYmxfZGlzcGF0 Y2hfbWd0ICpkaXNwX21ndCA9IChzdHJ1Y3QgbmJsX2Rpc3BhdGNoX21ndCAqKXByaXY7PGJyID4m Z3Q7ICsgc3RydWN0IG5ibF9jaGFubmVsX29wcyAqY2hhbl9vcHM7PGJyID4mZ3Q7ICsgc3RydWN0 IG5ibF9jaGFuX3NlbmRfaW5mbyBjaGFuX3NlbmQgPSB7MH07PGJyID4mZ3Q7ICsgc3RydWN0IG5i bF9jaGFuX3BhcmFtX2dldF9wcml2YXRlX3N0YXRfZGF0YSBwYXJhbSA9IHswfTs8YnIgPiZndDsg KzxiciA+Jmd0OyArIGNoYW5fb3BzID0gTkJMX0RJU1BfTUdUX1RPX0NIQU5fT1BTKGRpc3BfbWd0 KTs8YnIgPiZndDsgKzxiciA+Jmd0OyArIHBhcmFtLmV0aF9pZCA9IGV0aF9pZDs8YnIgPiZndDsg KyBwYXJhbS5kYXRhX2xlbiA9IGRhdGFfbGVuOzxiciA+Jmd0OyArIE5CTF9DSEFOX1NFTkQoY2hh bl9zZW5kLCAwLCBOQkxfQ0hBTl9NU0dfR0VUX0VUSF9TVEFUUywgJmFtcDtwYXJhbSw8YnIgPiZn dDsgKyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBzaXplb2YocGFyYW0pLCBkYXRhLCBkYXRh X2xlbiwgMSk7PGJyID4mZ3Q7ICsgY2hhbl9vcHMtJmd0O3NlbmRfbXNnKE5CTF9ESVNQX01HVF9U T19DSEFOX1BSSVYoZGlzcF9tZ3QpLCAmYW1wO2NoYW5fc2VuZCk7PGJyID4mZ3Q7ICt9PGJyID4m Z3Q7ICs8YnIgPiZndDsgI2RlZmluZSBOQkxfRElTUF9PUFNfVEJMJm5ic3A7ICZuYnNwOyAmbmJz cDsgXDxiciA+Jmd0OyBkbyB7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBcPGJyID4mZ3Q7 Jm5ic3A7IE5CTF9ESVNQX1NFVF9PUFMoY29uZmlndXJlX21zaXhfbWFwLCBuYmxfZGlzcF9jb25m aWd1cmVfbXNpeF9tYXAsICZuYnNwOyBcPGJyID4mZ3Q7IEBAIC05NTYsNiArMTA0MSwzMiBAQCBk byB7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBcPGJyID4mZ3Q7Jm5ic3A7IE5CTF9ESVNQ X1NFVF9PUFMoZ2V0X3N0YXRzLCBuYmxfZGlzcF9nZXRfc3RhdHMsICZuYnNwOyBcPGJyID4mZ3Q7 ICZuYnNwOyAmbmJzcDsgTkJMX0RJU1BfQ1RSTF9MVkxfQUxXQVlTLCAtMSwgJm5ic3A7IFw8YnIg PiZndDsgJm5ic3A7ICZuYnNwOyBOVUxMLCBOVUxMKTsgJm5ic3A7ICZuYnNwOyBcPGJyID4mZ3Q7 ICsgTkJMX0RJU1BfU0VUX09QUyhyZXNldF9zdGF0cywgbmJsX2Rpc3BfcmVzZXRfc3RhdHMsJm5i c3A7IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTkJMX0RJU1BfQ1RSTF9MVkxfQUxXQVlTLCAt MSwgJm5ic3A7IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTlVMTCwgTlVMTCk7ICZuYnNwOyAm bmJzcDsgXDxiciA+Jmd0OyArIE5CTF9ESVNQX1NFVF9PUFMoZ2V0X3R4cnhfeHN0YXRzX2NudCwm bmJzcDsgJm5ic3A7IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgbmJsX2Rpc3BfZ2V0X3R4cnhf eHN0YXRzX2NudCwgJm5ic3A7IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTkJMX0RJU1BfQ1RS TF9MVkxfQUxXQVlTLCAtMSwgJm5ic3A7IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTlVMTCwg TlVMTCk7ICZuYnNwOyAmbmJzcDsgXDxiciA+Jmd0OyArIE5CTF9ESVNQX1NFVF9PUFMoZ2V0X3R4 cnhfeHN0YXRzLCBuYmxfZGlzcF9nZXRfdHhyeF94c3RhdHMsIFw8YnIgPiZndDsgKyZuYnNwOyAm bmJzcDsgTkJMX0RJU1BfQ1RSTF9MVkxfQUxXQVlTLCAtMSwgJm5ic3A7IFw8YnIgPiZndDsgKyZu YnNwOyAmbmJzcDsgTlVMTCwgTlVMTCk7ICZuYnNwOyAmbmJzcDsgXDxiciA+Jmd0OyArIE5CTF9E SVNQX1NFVF9PUFMoZ2V0X3R4cnhfeHN0YXRzX25hbWVzLCZuYnNwOyAmbmJzcDsgXDxiciA+Jmd0 OyArJm5ic3A7ICZuYnNwOyBuYmxfZGlzcF9nZXRfdHhyeF94c3RhdHNfbmFtZXMsJm5ic3A7IFw8 YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTkJMX0RJU1BfQ1RSTF9MVkxfQUxXQVlTLCAtMSwgJm5i c3A7IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTlVMTCwgTlVMTCk7ICZuYnNwOyAmbmJzcDsg XDxiciA+Jmd0OyArIE5CTF9ESVNQX1NFVF9PUFMoZ2V0X2h3X3hzdGF0c19jbnQsIG5ibF9kaXNw X2dldF9od194c3RhdHNfY250LCBcPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IE5CTF9ESVNQX0NU UkxfTFZMX0FMV0FZUywgLTEsICZuYnNwOyBcPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IE5VTEws IE5VTEwpOyAmbmJzcDsgJm5ic3A7IFw8YnIgPiZndDsgKyBOQkxfRElTUF9TRVRfT1BTKGdldF9o d194c3RhdHNfbmFtZXMsJm5ic3A7ICZuYnNwOyBcPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IG5i bF9kaXNwX2dldF9od194c3RhdHNfbmFtZXMsICZuYnNwOyBcPGJyID4mZ3Q7ICsmbmJzcDsgJm5i c3A7IE5CTF9ESVNQX0NUUkxfTFZMX0FMV0FZUywgLTEsICZuYnNwOyBcPGJyID4mZ3Q7ICsmbmJz cDsgJm5ic3A7IE5VTEwsIE5VTEwpOyAmbmJzcDsgJm5ic3A7IFw8YnIgPiZndDsgKyBOQkxfRElT UF9TRVRfT1BTKGdldF9wcml2YXRlX3N0YXRfZGF0YSwmbmJzcDsgJm5ic3A7IFw8YnIgPiZndDsg KyZuYnNwOyAmbmJzcDsgbmJsX2Rpc3BfZ2V0X3ByaXZhdGVfc3RhdF9kYXRhLCZuYnNwOyBcPGJy ID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IE5CTF9ESVNQX0NUUkxfTFZMX01HVCwmbmJzcDsgJm5ic3A7 IFw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgTkJMX0NIQU5fTVNHX0dFVF9FVEhfU1RBVFMsICZu YnNwOyBcPGJyID4mZ3Q7ICsmbmJzcDsgJm5ic3A7IG5ibF9kaXNwX2dldF9wcml2YXRlX3N0YXRf ZGF0YV9yZXEsIE5VTEwpOyBcPGJyID4mZ3Q7IH0gd2hpbGUgKDApPGJyID4mZ3Q7PGJyID4mZ3Q7 IC8qIFN0cnVjdHVyZSBzdGFydHMgaGVyZSwgYWRkaW5nIGFuIG9wIHNob3VsZCBub3QgbW9kaWZ5 IGFueXRoaW5nIGJlbG93ICovPGJyID4mZ3Q7IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9uYmwv bmJsX2V0aGRldi5jIGIvZHJpdmVycy9uZXQvbmJsL25ibF9ldGhkZXYuYzxiciA+Jmd0OyBpbmRl eCBmMzBhY2EyYjdmLi44MWI4OTQ2YWNjIDEwMDY0NDxiciA+Jmd0OyAtLS0gYS9kcml2ZXJzL25l dC9uYmwvbmJsX2V0aGRldi5jPGJyID4mZ3Q7ICsrKyBiL2RyaXZlcnMvbmV0L25ibC9uYmxfZXRo ZGV2LmM8YnIgPiZndDsgQEAgLTQxLDYgKzQxLDEwIEBAIGNvbnN0IHN0cnVjdCBldGhfZGV2X29w cyBuYmxfZXRoX2Rldl9vcHMgPSB7PGJyID4mZ3Q7Jm5ic3A7IC5kZXZfaW5mb3NfZ2V0ID0gbmJs X2Rldl9pbmZvc19nZXQsPGJyID4mZ3Q7Jm5ic3A7IC5saW5rX3VwZGF0ZSA9IG5ibF9saW5rX3Vw ZGF0ZSw8YnIgPiZndDsmbmJzcDsgLnN0YXRzX2dldCA9IG5ibF9zdGF0c19nZXQsPGJyID4mZ3Q7 ICsgLnN0YXRzX3Jlc2V0ID0gbmJsX3N0YXRzX3Jlc2V0LDxiciA+Jmd0OyArIC54c3RhdHNfZ2V0 ID0gbmJsX3hzdGF0c19nZXQsPGJyID4mZ3Q7ICsgLnhzdGF0c19nZXRfbmFtZXMgPSBuYmxfeHN0 YXRzX2dldF9uYW1lcyw8YnIgPiZndDsgKyAueHN0YXRzX3Jlc2V0ID0gbmJsX3hzdGF0c19yZXNl dCw8YnIgPiZndDsgfTs8YnIgPiZndDs8YnIgPiZndDsgc3RhdGljIGludCBuYmxfZXRoX2Rldl9p bml0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2Rldik8YnIgPiZndDsgZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L25ibC9uYmxfaHcvbmJsX2h3X2xlb25pcy9uYmxfcmVzX2xlb25pcy5jIGIvZHJp dmVycy9uZXQvbmJsL25ibF9ody9uYmxfaHdfbGVvbmlzL25ibF9yZXNfbGVvbmlzLmM8YnIgPiZn dDsgaW5kZXggZTcwMzYzNzNmMS4uNDFhZTQyM2ZmMCAxMDA2NDQ8YnIgPiZndDsgLS0tIGEvZHJp dmVycy9uZXQvbmJsL25ibF9ody9uYmxfaHdfbGVvbmlzL25ibF9yZXNfbGVvbmlzLmM8YnIgPiZn dDsgKysrIGIvZHJpdmVycy9uZXQvbmJsL25ibF9ody9uYmxfaHdfbGVvbmlzL25ibF9yZXNfbGVv bmlzLmM8YnIgPiZndDsgQEAgLTQsNyArNCwxMjAgQEA8YnIgPiZndDs8YnIgPiZndDsgI2luY2x1 ZGUgIm5ibF9yZXNfbGVvbmlzLmgiPGJyID4mZ3Q7PGJyID4mZ3Q7ICsvKiBzdG9yZSBzdGF0aXN0 aWNzIG5hbWVzICovPGJyID4mZ3Q7ICtzdHJ1Y3QgbmJsX3hzdGF0c19uYW1lIHs8YnIgPiZndDsg KyBjaGFyIG5hbWVbUlRFX0VUSF9YU1RBVFNfTkFNRV9TSVpFXTs8YnIgPiZndDsgK307PGJyID4m Z3Q7ICs8YnIgPiZndDsgK3N0YXRpYyBjb25zdCBzdHJ1Y3QgbmJsX3hzdGF0c19uYW1lIG5ibF9z dGF0c19zdHJpbmdzW10gPSB7PGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3R4In0sPGJyID4mZ3Q7 ICsgeyJldGhfZnJhbWVzX3R4X29rIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3R4X2JhZGZj cyJ9LDxiciA+Jmd0OyArIHsiZXRoX3VuaWNhc3RfZnJhbWVzX3R4X29rIn0sPGJyID4mZ3Q7ICsg eyJldGhfbXVsdGljYXN0X2ZyYW1lc190eF9vayJ9LDxiciA+Jmd0OyArIHsiZXRoX2Jyb2FkY2Fz dF9mcmFtZXNfdHhfb2sifSw8YnIgPiZndDsgKyB7ImV0aF9tYWNjdHJsX2ZyYW1lc190eF9vayJ9 LDxiciA+Jmd0OyArIHsiZXRoX2ZyYWdtZW50X2ZyYW1lc190eCJ9LDxiciA+Jmd0OyArIHsiZXRo X2ZyYWdtZW50X2ZyYW1lc190eF9vayJ9LDxiciA+Jmd0OyArIHsiZXRoX3BhdXNlX2ZyYW1lc190 eCJ9LDxiciA+Jmd0OyArIHsiZXRoX3BhdXNlX21hY2N0cmxfZnJhbWVzX3R4In0sPGJyID4mZ3Q7 ICsgeyJldGhfcGZjX2ZyYW1lc190eCJ9LDxiciA+Jmd0OyArIHsiZXRoX3BmY19mcmFtZXNfdHhf cHJpbzAifSw8YnIgPiZndDsgKyB7ImV0aF9wZmNfZnJhbWVzX3R4X3ByaW8xIn0sPGJyID4mZ3Q7 ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvMiJ9LDxiciA+Jmd0OyArIHsiZXRoX3BmY19mcmFt ZXNfdHhfcHJpbzMifSw8YnIgPiZndDsgKyB7ImV0aF9wZmNfZnJhbWVzX3R4X3ByaW80In0sPGJy ID4mZ3Q7ICsgeyJldGhfcGZjX2ZyYW1lc190eF9wcmlvNSJ9LDxiciA+Jmd0OyArIHsiZXRoX3Bm Y19mcmFtZXNfdHhfcHJpbzYifSw8YnIgPiZndDsgKyB7ImV0aF9wZmNfZnJhbWVzX3R4X3ByaW83 In0sPGJyID4mZ3Q7ICsgeyJldGhfdmVyaWZ5X2ZyYW1lc190eCJ9LDxiciA+Jmd0OyArIHsiZXRo X3Jlc3BvbmRfZnJhbWVzX3R4In0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3R4XzY0QiJ9LDxi ciA+Jmd0OyArIHsiZXRoX2ZyYW1lc190eF82NV90b18xMjdCIn0sPGJyID4mZ3Q7ICsgeyJldGhf ZnJhbWVzX3R4XzEyOF90b18yNTVCIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3R4XzI1Nl90 b181MTFCIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3R4XzUxMl90b18xMDIzQiJ9LDxiciA+ Jmd0OyArIHsiZXRoX2ZyYW1lc190eF8xMDI0X3RvXzE1MzVCIn0sPGJyID4mZ3Q7ICsgeyJldGhf ZnJhbWVzX3R4XzE1MzZfdG9fMjA0N0IifSw8YnIgPiZndDsgKyB7ImV0aF9mcmFtZXNfdHhfMjA0 OF90b19NQVhCIn0sPGJyID4mZ3Q7ICsgeyJldGhfdW5kZXJzaXplX2ZyYW1lc190eF9nb29kZmNz In0sPGJyID4mZ3Q7ICsgeyJldGhfb3ZlcnNpemVfZnJhbWVzX3R4X2dvb2RmY3MifSw8YnIgPiZn dDsgKyB7ImV0aF91bmRlcnNpemVfZnJhbWVzX3R4X2JhZGZjcyJ9LDxiciA+Jmd0OyArIHsiZXRo X292ZXJzaXplX2ZyYW1lc190eF9iYWRmY3MifSw8YnIgPiZndDsgKyB7ImV0aF9vY3RldHNfdHgi fSw8YnIgPiZndDsgKyB7ImV0aF9vY3RldHNfdHhfb2sifSw8YnIgPiZndDsgKyB7ImV0aF9vY3Rl dHNfdHhfYmFkZmNzIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3J4In0sPGJyID4mZ3Q7ICsg eyJldGhfZnJhbWVzX3J4X29rIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3J4X2JhZGZjcyJ9 LDxiciA+Jmd0OyArIHsiZXRoX3VuZGVyc2l6ZV9mcmFtZXNfcnhfZ29vZGZjcyJ9LDxiciA+Jmd0 OyArIHsiZXRoX3VuZGVyc2l6ZV9mcmFtZXNfcnhfYmFkZmNzIn0sPGJyID4mZ3Q7ICsgeyJldGhf b3ZlcnNpemVfZnJhbWVzX3J4X2dvb2RmY3MifSw8YnIgPiZndDsgKyB7ImV0aF9vdmVyc2l6ZV9m cmFtZXNfcnhfYmFkZmNzIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3J4X21pc2NfZXJyb3Ii fSw8YnIgPiZndDsgKyB7ImV0aF9mcmFtZXNfcnhfbWlzY19kcm9wcGVkIn0sPGJyID4mZ3Q7ICsg eyJldGhfdW5pY2FzdF9mcmFtZXNfcnhfb2sifSw8YnIgPiZndDsgKyB7ImV0aF9tdWx0aWNhc3Rf ZnJhbWVzX3J4X29rIn0sPGJyID4mZ3Q7ICsgeyJldGhfYnJvYWRjYXN0X2ZyYW1lc19yeF9vayJ9 LDxiciA+Jmd0OyArIHsiZXRoX3BhdXNlX2ZyYW1lc19yeCJ9LDxiciA+Jmd0OyArIHsiZXRoX3Bm Y19mcmFtZXNfcngifSw8YnIgPiZndDsgKyB7ImV0aF9wZmNfZnJhbWVzX3J4X3ByaW8wIn0sPGJy ID4mZ3Q7ICsgeyJldGhfcGZjX2ZyYW1lc19yeF9wcmlvMSJ9LDxiciA+Jmd0OyArIHsiZXRoX3Bm Y19mcmFtZXNfcnhfcHJpbzIifSw8YnIgPiZndDsgKyB7ImV0aF9wZmNfZnJhbWVzX3J4X3ByaW8z In0sPGJyID4mZ3Q7ICsgeyJldGhfcGZjX2ZyYW1lc19yeF9wcmlvNCJ9LDxiciA+Jmd0OyArIHsi ZXRoX3BmY19mcmFtZXNfcnhfcHJpbzUifSw8YnIgPiZndDsgKyB7ImV0aF9wZmNfZnJhbWVzX3J4 X3ByaW82In0sPGJyID4mZ3Q7ICsgeyJldGhfcGZjX2ZyYW1lc19yeF9wcmlvNyJ9LDxiciA+Jmd0 OyArIHsiZXRoX21hY2N0cmxfZnJhbWVzX3J4In0sPGJyID4mZ3Q7ICsgeyJldGhfdmVyaWZ5X2Zy YW1lc19yeF9vayJ9LDxiciA+Jmd0OyArIHsiZXRoX3Jlc3BvbmRfZnJhbWVzX3J4X29rIn0sPGJy ID4mZ3Q7ICsgeyJldGhfZnJhZ21lbnRfZnJhbWVzX3J4X29rIn0sPGJyID4mZ3Q7ICsgeyJldGhf ZnJhZ21lbnRfcnhfc21kY19ub2NvbnRleHQifSw8YnIgPiZndDsgKyB7ImV0aF9mcmFnbWVudF9y eF9zbWRzX3NlcV9lcnJvciJ9LDxiciA+Jmd0OyArIHsiZXRoX2ZyYWdtZW50X3J4X3NtZGNfc2Vx X2Vycm9yIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhZ21lbnRfcnhfZnJhZ19jbnRfZXJyb3IifSw8 YnIgPiZndDsgKyB7ImV0aF9mcmFtZXNfYXNzZW1ibGVkX29rIn0sPGJyID4mZ3Q7ICsgeyJldGhf ZnJhbWVzX2Fzc2VtYmxlZF9lcnJvciJ9LDxiciA+Jmd0OyArIHsiZXRoX2ZyYW1lc19yeF82NEIi fSw8YnIgPiZndDsgKyB7ImV0aF9mcmFtZXNfcnhfNjVfdG9fMTI3QiJ9LDxiciA+Jmd0OyArIHsi ZXRoX2ZyYW1lc19yeF8xMjhfdG9fMjU1QiJ9LDxiciA+Jmd0OyArIHsiZXRoX2ZyYW1lc19yeF8y NTZfdG9fNTExQiJ9LDxiciA+Jmd0OyArIHsiZXRoX2ZyYW1lc19yeF81MTJfdG9fMTAyM0IifSw8 YnIgPiZndDsgKyB7ImV0aF9mcmFtZXNfcnhfMTAyNF90b18xNTM1QiJ9LDxiciA+Jmd0OyArIHsi ZXRoX2ZyYW1lc19yeF8xNTM2X3RvXzIwNDdCIn0sPGJyID4mZ3Q7ICsgeyJldGhfZnJhbWVzX3J4 XzIwNDhfdG9fTUFYQiJ9LDxiciA+Jmd0OyArIHsiZXRoX29jdGV0c19yeCJ9LDxiciA+Jmd0OyAr IHsiZXRoX29jdGV0c19yeF9vayJ9LDxiciA+Jmd0OyArIHsiZXRoX29jdGV0c19yeF9iYWRmY3Mi fSw8YnIgPiZndDsgKyB7ImV0aF9vY3RldHNfcnhfZHJvcHBlZCJ9LDxiciA+Jmd0OyArfTs8YnIg PiZndDsgKzxiciA+Jmd0OyArc3RhdGljIGludCBuYmxfZ2V0X3hzdGF0c19jbnQoX19ydGVfdW51 c2VkIHZvaWQgKnByaXYsIHUxNiAqeHN0YXRzX2NudCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyAq eHN0YXRzX2NudCA9IEFSUkFZX1NJWkUobmJsX3N0YXRzX3N0cmluZ3MpOzxiciA+Jmd0OyArIHJl dHVybiAwOzxiciA+Jmd0OyArfTxiciA+Jmd0OyArPGJyID4mZ3Q7ICtzdGF0aWMgaW50IG5ibF9n ZXRfeHN0YXRzX25hbWVzKF9fcnRlX3VudXNlZCB2b2lkICpwcml2LDxiciA+Jmd0OyArJm5ic3A7 ICZuYnNwOyBzdHJ1Y3QgcnRlX2V0aF94c3RhdF9uYW1lICp4c3RhdHNfbmFtZXMsPGJyID4mZ3Q7 ICsmbmJzcDsgJm5ic3A7IHUxNiAqeHN0YXRzX2NudCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyB1 MzIgaSA9IDA7PGJyID4mZ3Q7ICsgdTE2IGNvdW50ID0gKnhzdGF0c19jbnQ7PGJyID4mZ3Q7ICs8 YnIgPiZndDsgKyBmb3IgKGkgPSAwOyBpICZsdDsgQVJSQVlfU0laRShuYmxfc3RhdHNfc3RyaW5n cyk7IGkrKykgezxiciA+Jmd0OyArJm5ic3A7IHN0cmxjcHkoeHN0YXRzX25hbWVzW2NvdW50XS5u YW1lLCBuYmxfc3RhdHNfc3RyaW5nc1tpXS5uYW1lLDxiciA+Jmd0OyArICZuYnNwOyBzaXplb2Yo bmJsX3N0YXRzX3N0cmluZ3NbY291bnRdLm5hbWUpKTs8YnIgPiZndDsgKyZuYnNwOyBjb3VudCsr OzxiciA+Jmd0OyArIH08YnIgPiZndDsgKyAqeHN0YXRzX2NudCA9IGNvdW50OzxiciA+Jmd0OyAr IHJldHVybiAwOzxiciA+Jmd0OyArfTxiciA+Jmd0OyArPGJyID4mZ3Q7IHN0YXRpYyBzdHJ1Y3Qg bmJsX3Jlc291cmNlX29wcyByZXNfb3BzID0gezxiciA+Jmd0OyArIC5nZXRfaHdfeHN0YXRzX2Nu dCA9IG5ibF9nZXRfeHN0YXRzX2NudCw8YnIgPiZndDsgKyAuZ2V0X2h3X3hzdGF0c19uYW1lcyA9 IG5ibF9nZXRfeHN0YXRzX25hbWVzLDxiciA+Jmd0OyB9OzxiciA+Jmd0OzxiciA+Jmd0OyBzdGF0 aWMgYm9vbCBpc19vcHNfaW5pdGVkOzxiciA+Jmd0OyBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQv bmJsL25ibF9ody9uYmxfdHhyeC5jIGIvZHJpdmVycy9uZXQvbmJsL25ibF9ody9uYmxfdHhyeC5j PGJyID4mZ3Q7IGluZGV4IGQwYWNiZTg2N2QuLjNkZTRlZWRiZGIgMTAwNjQ0PGJyID4mZ3Q7IC0t LSBhL2RyaXZlcnMvbmV0L25ibC9uYmxfaHcvbmJsX3R4cnguYzxiciA+Jmd0OyArKysgYi9kcml2 ZXJzL25ldC9uYmwvbmJsX2h3L25ibF90eHJ4LmM8YnIgPiZndDsgQEAgLTUzNiw2ICs1MzYsNyBA QCBuYmxfcmVzX3R4cnhfeG1pdF9wa3RzKHZvaWQgKnR4X3F1ZXVlLCBzdHJ1Y3QgcnRlX21idWYg Kip0eF9wa3RzLCB1MTYgbmJfcGt0cywgdTxiciA+Jmd0OyZuYnNwOyAmbmJzcDsgdHhlLSZndDtt YnVmID0gdHhfcGt0OzxiciA+Jmd0OzxiciA+Jmd0OyZuYnNwOyAmbmJzcDsgZGF0YV9sZW4gPSB0 eF9wa3QtJmd0O2RhdGFfbGVuOzxiciA+Jmd0OyArICZuYnNwOyB0eHEtJmd0O3R4cV9zdGF0cy50 eF9ieXRlcyArPSB0eF9wa3QtJmd0O2RhdGFfbGVuOzxiciA+Jmd0OyZuYnNwOyAmbmJzcDsgZG1h X2FkZHIgPSBydGVfbWJ1Zl9kYXRhX2lvdmEodHhfcGt0KTs8YnIgPiZndDsmbmJzcDsgJm5ic3A7 IHR4X2Rlc2MtJmd0O2FkZHIgPSBOQkxfRE1BX0FEREVSU1NfRlVMTF9UUkFOU0xBVEUodHhxLCBk bWFfYWRkcikgKyBhZGRyX29mZnNldDs8YnIgPiZndDsmbmJzcDsgJm5ic3A7IHR4X2Rlc2MtJmd0 O2xlbiA9IGRhdGFfbGVuIC0gYWRkcl9vZmZzZXQ7PGJyID4mZ3Q7IEBAIC02MTUsNiArNjE2LDgg QEAgbmJsX3Jlc190eHJ4X3JlY3ZfcGt0cyh2b2lkICpyeF9xdWV1ZSwgc3RydWN0IHJ0ZV9tYnVm ICoqcnhfcGt0cywgdTE2IG5iX3BrdHMpPGJyID4mZ3Q7Jm5ic3A7ICZuYnNwOyByeF9leHRfaGRy ID0gKHVuaW9uIG5ibF9yeF9leHRlbmRfaGVhZCAqKSgoY2hhciAqKXJ4X21idWYtJmd0O2J1Zl9h ZGRyICs8YnIgPiZndDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBSVEVfUEtU TUJVRl9IRUFEUk9PTSk7PGJyID4mZ3Q7Jm5ic3A7ICZuYnNwOyBudW1fc2cgPSByeF9leHRfaGRy LSZndDtjb21tb24ubnVtX2J1ZmZlcnM7PGJyID4mZ3Q7ICsgJm5ic3A7IGlmIChudW1fc2cgJmd0 OyAxKTxiciA+Jmd0OyArJm5ic3A7ICZuYnNwOyByeHEtJmd0O3J4cV9zdGF0cy5yeF9tdWx0aV9k ZXNjcysrOzxiciA+Jmd0OzxiciA+Jmd0OyZuYnNwOyAmbmJzcDsgcnhfbWJ1Zi0mZ3Q7bmJfc2Vn cyA9IG51bV9zZzs8YnIgPiZndDsmbmJzcDsgJm5ic3A7IHJ4X21idWYtJmd0O2RhdGFfbGVuID0g cnhfZGVzYy0mZ3Q7bGVuIC0gcnhxLSZndDtleHRoZHJfbGVuOzxiciA+Jmd0OyBAQCAtNjQyLDE1 ICs2NDUsMjAgQEAgbmJsX3Jlc190eHJ4X3JlY3ZfcGt0cyh2b2lkICpyeF9xdWV1ZSwgc3RydWN0 IHJ0ZV9tYnVmICoqcnhfcGt0cywgdTE2IG5iX3BrdHMpPGJyID4mZ3Q7ICZuYnNwOyBpZiAoLS1u dW1fc2cpPGJyID4mZ3Q7Jm5ic3A7ICZuYnNwOyBjb250aW51ZTs8YnIgPiZndDsgJm5ic3A7IGlm IChkcm9wKSB7PGJyID4mZ3Q7ICsgJm5ic3A7IHJ4cS0mZ3Q7cnhxX3N0YXRzLnJ4X2Ryb3BfcHJv dG8rKzs8YnIgPiZndDsmbmJzcDsgJm5ic3A7IHJ0ZV9wa3RtYnVmX2ZyZWUocnhfbWJ1Zik7PGJy ID4mZ3Q7Jm5ic3A7ICZuYnNwOyBjb250aW51ZTs8YnIgPiZndDsgJm5ic3A7IH08YnIgPiZndDsg Jm5ic3A7IHJ4X3BrdHNbbmJfcmVjdl9wa3RzKytdID0gcnhfbWJ1Zjs8YnIgPiZndDsgKyZuYnNw OyByeHEtJmd0O3J4cV9zdGF0cy5yeF9ieXRlcyArPSByeF9tYnVmLSZndDtwa3RfbGVuOzxiciA+ Jmd0OyZuYnNwOyB9PGJyID4mZ3Q7PGJyID4mZ3Q7Jm5ic3A7IC8qIEJVRyBvbiBkdXBsaWNhdGUg cGt0IGZyZWUgKi88YnIgPiZndDsgLSBpZiAodW5saWtlbHkobnVtX3NnKSk8YnIgPiZndDsgKyBp ZiAodW5saWtlbHkobnVtX3NnKSkgezxiciA+Jmd0OyArJm5ic3A7IHJ4cS0mZ3Q7cnhxX3N0YXRz LnJ4X2llcnJvcisrOzxiciA+Jmd0OyAmbmJzcDsgcnRlX3BrdG1idWZfZnJlZShyeF9tYnVmKTs8 YnIgPiZndDsgKyB9PGJyID4mZ3Q7ICs8YnIgPiZndDsmbmJzcDsgLyogY2xlYW4gbWVtb3J5ICov PGJyID4mZ3Q7Jm5ic3A7IHJ4cS0mZ3Q7bmV4dF90b19jbGVhbiA9IGRlc2NfaW5kZXg7PGJyID4m Z3Q7Jm5ic3A7IGZpbGxfbnVtID0gcnhxLSZndDt2cV9mcmVlX2NudDs8YnIgPiZndDsgQEAgLTcy MCw2ICs3MjgsMTA1IEBAIHN0YXRpYyBpbnQgbmJsX3Jlc190eHJ4X2dldF9zdGF0cyh2b2lkICpw cml2LCBzdHJ1Y3QgcnRlX2V0aF9zdGF0cyAqcnRlX3N0YXRzKTxiciA+Jmd0OyZuYnNwOyByZXR1 cm4gMDs8YnIgPiZndDsgfTxiciA+Jmd0OzxiciA+Jmd0OyArc3RhdGljIGludDxiciA+Jmd0OyAr bmJsX3Jlc190eHJ4X3Jlc2V0X3N0YXRzKHZvaWQgKnByaXYpPGJyID4mZ3Q7ICt7PGJyID4mZ3Q7 ICsgc3RydWN0IG5ibF9yZXNvdXJjZV9tZ3QgKnJlc19tZ3QgPSAoc3RydWN0IG5ibF9yZXNvdXJj ZV9tZ3QgKilwcml2OzxiciA+Jmd0OyArIHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldiA9IHJl c19tZ3QtJmd0O2V0aF9kZXY7PGJyID4mZ3Q7ICsgc3RydWN0IG5ibF9yZXNfcnhfcmluZyAqcnhx OzxiciA+Jmd0OyArIHN0cnVjdCBuYmxfcnhxX3N0YXRzICpyeHFfc3RhdHM7PGJyID4mZ3Q7ICsg c3RydWN0IG5ibF9yZXNfdHhfcmluZyZuYnNwOyAqdHhxOzxiciA+Jmd0OyArIHN0cnVjdCBuYmxf dHhxX3N0YXRzICp0eHFfc3RhdHM7PGJyID4mZ3Q7ICsgdWludDMyX3QgaTs8YnIgPiZndDsgKzxi ciA+Jmd0OyArIC8qIEFkZCBzb2Z0d2FyZSBjb3VudGVycy4gKi88YnIgPiZndDsgKyBmb3IgKGkg PSAwOyBpICZsdDsgZXRoX2Rldi0mZ3Q7ZGF0YS0mZ3Q7bmJfcnhfcXVldWVzOyBpKyspIHs8YnIg PiZndDsgKyZuYnNwOyByeHEgPSBldGhfZGV2LSZndDtkYXRhLSZndDtyeF9xdWV1ZXNbaV07PGJy ID4mZ3Q7ICsmbmJzcDsgaWYgKHVubGlrZWx5KHJ4cSA9PSBOVUxMKSk8YnIgPiZndDsgKyAmbmJz cDsgY29udGludWU7PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyZuYnNwOyByeHFfc3RhdHMgPSAmYW1w O3J4cS0mZ3Q7cnhxX3N0YXRzOzxiciA+Jmd0OyArJm5ic3A7IG1lbXNldChyeHFfc3RhdHMsIDAs IHNpemVvZihzdHJ1Y3QgbmJsX3J4cV9zdGF0cykpOzxiciA+PGJyID5XaGF0IGlmIHRoZSBhcHBs aWNhdGlvbiBoYXMgZGVkaWNhdGVkIGxjb3JlcyBmb3IgZGF0YXBhdGggUngvVHggYnVyc3QgY2Fs bHMgYW5kPGJyID51c2VzIGFub3RoZXIsIGFkbWluIGNvcmUgdG8gcXVlcnkvcmVzZXQgc3RhdGlz dGljcz88YnIgPjxiciA+VGhhbmsgeW91LjxiciA+PGJyID4mZ3Q7ICsgfTxiciA+Jmd0OyArPGJy ID4mZ3Q7ICsgZm9yIChpID0gMDsgaSAmbHQ7IGV0aF9kZXYtJmd0O2RhdGEtJmd0O25iX3R4X3F1 ZXVlczsgaSsrKSB7PGJyID4mZ3Q7ICsmbmJzcDsgdHhxID0gZXRoX2Rldi0mZ3Q7ZGF0YS0mZ3Q7 dHhfcXVldWVzW2ldOzxiciA+Jmd0OyArJm5ic3A7IGlmICh1bmxpa2VseSh0eHEgPT0gTlVMTCkp PGJyID4mZ3Q7ICsgJm5ic3A7IGNvbnRpbnVlOzxiciA+Jmd0OyArPGJyID4mZ3Q7ICsmbmJzcDsg dHhxX3N0YXRzID0gJmFtcDt0eHEtJmd0O3R4cV9zdGF0czs8YnIgPiZndDsgKyZuYnNwOyBtZW1z ZXQodHhxX3N0YXRzLCAwLCBzaXplb2Yoc3RydWN0IG5ibF90eHFfc3RhdHMpKTs8YnIgPiZndDsg KyB9PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyByZXR1cm4gMDs8YnIgPiZndDsgK308YnIgPiZndDsg KzxiciA+Jmd0OyArLyogc3RvcmUgc3RhdGlzdGljcyBuYW1lcyAqLzxiciA+Jmd0OyArc3RydWN0 IG5ibF90eHJ4X3hzdGF0c19uYW1lIHs8YnIgPiZndDsgKyBjaGFyIG5hbWVbUlRFX0VUSF9YU1RB VFNfTkFNRV9TSVpFXTs8YnIgPiZndDsgK307PGJyID4mZ3Q7ICs8YnIgPiZndDsgK3N0YXRpYyBj b25zdCBzdHJ1Y3QgbmJsX3R4cnhfeHN0YXRzX25hbWUgbmJsX3N0YXRzX3N0cmluZ3NbXSA9IHs8 YnIgPiZndDsgKyB7InJ4X211bHRpZGVzY3NfcGFja2V0cyJ9LDxiciA+Jmd0OyArIHsicnhfZHJv cF9ub3BvcnRfcGFja2V0cyJ9LDxiciA+Jmd0OyArIHsicnhfZHJvcF9wcm90b19wYWNrZXRzIn0s PGJyID4mZ3Q7ICt9OzxiciA+Jmd0OyArPGJyID4mZ3Q7ICtzdGF0aWMgaW50IG5ibF9yZXNfdHhy eF9nZXRfeHN0YXRzX2NudChfX3J0ZV91bnVzZWQgdm9pZCAqcHJpdiwgdTE2ICp4c3RhdHNfY250 KTxiciA+Jmd0OyArezxiciA+Jmd0OyArICp4c3RhdHNfY250ID0gQVJSQVlfU0laRShuYmxfc3Rh dHNfc3RyaW5ncyk7PGJyID4mZ3Q7ICsgcmV0dXJuIDA7PGJyID4mZ3Q7ICt9PGJyID4mZ3Q7ICs8 YnIgPiZndDsgK3N0YXRpYyBpbnQgbmJsX3Jlc190eHJ4X2dldF94c3RhdHModm9pZCAqcHJpdiwg c3RydWN0IHJ0ZV9ldGhfeHN0YXQgKnhzdGF0cywgdTE2ICp4c3RhdHNfY250KTxiciA+Jmd0OyAr ezxiciA+Jmd0OyArIHN0cnVjdCBuYmxfcmVzb3VyY2VfbWd0ICpyZXNfbWd0ID0gKHN0cnVjdCBu YmxfcmVzb3VyY2VfbWd0ICopcHJpdjs8YnIgPiZndDsgKyBzdHJ1Y3QgbmJsX3R4cnhfbWd0ICp0 eHJ4X21ndCA9IE5CTF9SRVNfTUdUX1RPX1RYUlhfTUdUKHJlc19tZ3QpOzxiciA+Jmd0OyArIHN0 cnVjdCBuYmxfcmVzX3J4X3JpbmcgKnJ4cTs8YnIgPiZndDsgKyB1aW50NjRfdCByeF9tdWx0aV9k ZXNjcyA9IDAsIHJ4X2Ryb3Bfbm9wb3J0ID0gMCwgcnhfZHJvcF9wcm90byA9IDA7PGJyID4mZ3Q7 ICsgdW5zaWduZWQgaW50IGkgPSAwOzxiciA+Jmd0OyArIHUxNiBjb3VudCA9ICp4c3RhdHNfY250 OzxiciA+Jmd0OyArPGJyID4mZ3Q7ICsgLyogdG9kbzogZ2V0IGV0aCBzdGF0cyBmcm9tIGVtcCAq LzxiciA+Jmd0OyArIGZvciAoaSA9IDA7IGkgJmx0OyB0eHJ4X21ndC0mZ3Q7cnhfcmluZ19udW07 IGkrKykgezxiciA+Jmd0OyArJm5ic3A7IHJ4cSA9IE5CTF9SRVNfTUdUX1RPX1JYX1JJTkcocmVz X21ndCwgaSk7PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyZuYnNwOyBpZiAodW5saWtlbHkocnhxID09 IE5VTEwpKTxiciA+Jmd0OyArICZuYnNwOyByZXR1cm4gLUVJTlZBTDs8YnIgPiZndDsgKzxiciA+ Jmd0OyArJm5ic3A7IHJ4X211bHRpX2Rlc2NzICs9IHJ4cS0mZ3Q7cnhxX3N0YXRzLnJ4X211bHRp X2Rlc2NzOzxiciA+Jmd0OyArJm5ic3A7IHJ4X2Ryb3Bfbm9wb3J0ICs9IHJ4cS0mZ3Q7cnhxX3N0 YXRzLnJ4X2Ryb3Bfbm9wb3J0OzxiciA+Jmd0OyArJm5ic3A7IHJ4X2Ryb3BfcHJvdG8gKz0gcnhx LSZndDtyeHFfc3RhdHMucnhfZHJvcF9wcm90bzs8YnIgPiZndDsgKyB9PGJyID4mZ3Q7ICs8YnIg PiZndDsgKyB4c3RhdHNbY291bnRdLnZhbHVlID0gcnhfbXVsdGlfZGVzY3M7PGJyID4mZ3Q7ICsg eHN0YXRzW2NvdW50XS5pZCA9IGNvdW50OzxiciA+Jmd0OyArIHhzdGF0c1tjb3VudCArIDFdLnZh bHVlID0gcnhfZHJvcF9ub3BvcnQ7PGJyID4mZ3Q7ICsgeHN0YXRzW2NvdW50ICsgMV0uaWQgPSBj b3VudCArIDE7PGJyID4mZ3Q7ICsgeHN0YXRzW2NvdW50ICsgMl0udmFsdWUgPSByeF9kcm9wX3By b3RvOzxiciA+Jmd0OyArIHhzdGF0c1tjb3VudCArIDJdLmlkID0gY291bnQgKyAyOzxiciA+Jmd0 OyArPGJyID4mZ3Q7ICsgKnhzdGF0c19jbnQgPSBjb3VudCArIDM7PGJyID4mZ3Q7ICs8YnIgPiZn dDsgKyByZXR1cm4gMDs8YnIgPiZndDsgK308YnIgPiZndDsgKzxiciA+Jmd0OyArc3RhdGljIGlu dCBuYmxfcmVzX3R4cnhfZ2V0X3hzdGF0c19uYW1lcyhfX3J0ZV91bnVzZWQgdm9pZCAqcHJpdiw8 YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgJm5ic3A7IHN0cnVjdCBydGVfZXRoX3hzdGF0X25hbWUg KnhzdGF0c19uYW1lcyw8YnIgPiZndDsgKyZuYnNwOyAmbmJzcDsgJm5ic3A7IHUxNiAqeHN0YXRz X2NudCk8YnIgPiZndDsgK3s8YnIgPiZndDsgKyB1bnNpZ25lZCBpbnQgaSA9IDA7PGJyID4mZ3Q7 ICsgdTE2IGNvdW50ID0gKnhzdGF0c19jbnQ7PGJyID4mZ3Q7ICs8YnIgPiZndDsgKyBmb3IgKGkg PSAwOyBpICZsdDsgQVJSQVlfU0laRShuYmxfc3RhdHNfc3RyaW5ncyk7IGkrKykgezxiciA+Jmd0 OyArJm5ic3A7IHN0cmxjcHkoeHN0YXRzX25hbWVzW2NvdW50XS5uYW1lLCBuYmxfc3RhdHNfc3Ry aW5nc1tpXS5uYW1lLDxiciA+Jmd0OyArICZuYnNwOyBzaXplb2YobmJsX3N0YXRzX3N0cmluZ3Nb Y291bnRdLm5hbWUpKTs8YnIgPiZndDsgKyZuYnNwOyBjb3VudCsrOzxiciA+Jmd0OyArIH08YnIg PiZndDsgKyAqeHN0YXRzX2NudCA9IGNvdW50OzxiciA+Jmd0OyArIHJldHVybiAwOzxiciA+Jmd0 OyArfTxiciA+Jmd0OyArPGJyID4mZ3Q7IC8qIE5CTF9UWFJYX1NFVF9PUFMob3BzX25hbWUsIGZ1 bmMpPGJyID4mZ3Q7Jm5ic3A7ICo8YnIgPiZndDsmbmJzcDsgKiBVc2UgWCBNYWNyb3MgdG8gcmVk dWNlIHNldHVwIGFuZCByZW1vdmUgY29kZXMuPGJyID4mZ3Q7IEBAIC03MzgsNiArODQ1LDEwIEBA IGRvIHsmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFw8YnIgPiZndDsmbmJzcDsg TkJMX1RYUlhfU0VUX09QUyh1cGRhdGVfcnhfcmluZywgbmJsX3Jlc190eHJ4X3VwZGF0ZV9yeF9y aW5nKTsmbmJzcDsgXDxiciA+Jmd0OyZuYnNwOyBOQkxfVFhSWF9TRVRfT1BTKGdldF9yZXNvdXJj ZV9wdF9vcHMsIG5ibF9yZXNfZ2V0X3B0X29wcyk7Jm5ic3A7IFw8YnIgPiZndDsmbmJzcDsgTkJM X1RYUlhfU0VUX09QUyhnZXRfc3RhdHMsIG5ibF9yZXNfdHhyeF9nZXRfc3RhdHMpOyAmbmJzcDsg XDxiciA+Jmd0OyArIE5CTF9UWFJYX1NFVF9PUFMocmVzZXRfc3RhdHMsIG5ibF9yZXNfdHhyeF9y ZXNldF9zdGF0cyk7Jm5ic3A7IFw8YnIgPiZndDsgKyBOQkxfVFhSWF9TRVRfT1BTKGdldF90eHJ4 X3hzdGF0c19jbnQsIG5ibF9yZXNfdHhyeF9nZXRfeHN0YXRzX2NudCk7IFw8YnIgPiZndDsgKyBO QkxfVFhSWF9TRVRfT1BTKGdldF90eHJ4X3hzdGF0c19uYW1lcywgbmJsX3Jlc190eHJ4X2dldF94 c3RhdHNfbmFtZXMpOyBcPGJyID4mZ3Q7ICsgTkJMX1RYUlhfU0VUX09QUyhnZXRfdHhyeF94c3Rh dHMsIG5ibF9yZXNfdHhyeF9nZXRfeHN0YXRzKTsmbmJzcDsgXDxiciA+Jmd0OyB9IHdoaWxlICgw KTxiciA+Jmd0OzxiciA+Jmd0OyAvKiBTdHJ1Y3R1cmUgc3RhcnRzIGhlcmUsIGFkZGluZyBhbiBv cCBzaG91bGQgbm90IG1vZGlmeSBhbnl0aGluZyBiZWxvdyAqLzxiciA+Jmd0OyBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfY2hhbm5lbC5oIGIvZHJpdmVy cy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfY2hhbm5lbC5oPGJyID4mZ3Q7IGluZGV4IDQ4 MWE3MjVhM2QuLjM5MDUwYTM5OTkgMTAwNjQ0PGJyID4mZ3Q7IC0tLSBhL2RyaXZlcnMvbmV0L25i bC9uYmxfaW5jbHVkZS9uYmxfZGVmX2NoYW5uZWwuaDxiciA+Jmd0OyArKysgYi9kcml2ZXJzL25l dC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9jaGFubmVsLmg8YnIgPiZndDsgQEAgLTM4NSw2ICsz ODUsMTEgQEAgc3RydWN0IG5ibF9jaGFuX3BhcmFtX2dldF9saW5rX3N0YXRlIHs8YnIgPiZndDsm bmJzcDsgdTggZXRoX2lkOzxiciA+Jmd0OyB9OzxiciA+Jmd0OzxiciA+Jmd0OyArc3RydWN0IG5i bF9jaGFuX3BhcmFtX2dldF9wcml2YXRlX3N0YXRfZGF0YSB7PGJyID4mZ3Q7ICsgdTMyIGV0aF9p ZDs8YnIgPiZndDsgKyB1MzIgZGF0YV9sZW47PGJyID4mZ3Q7ICt9OzxiciA+Jmd0OyArPGJyID4m Z3Q7IHN0cnVjdCBuYmxfY2hhbl9zZW5kX2luZm8gezxiciA+Jmd0OyZuYnNwOyB1aW50MTZfdCBk c3RpZDs8YnIgPiZndDsmbmJzcDsgdWludDE2X3QgbXNnX3R5cGU7PGJyID4mZ3Q7IGRpZmYgLS1n aXQgYS9kcml2ZXJzL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9kaXNwYXRjaC5oIGIvZHJp dmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfZGlzcGF0Y2guaDxiciA+Jmd0OyBpbmRl eCAwMTM5YjM3YWQxLi5mMzhhMTBlNWY0IDEwMDY0NDxiciA+Jmd0OyAtLS0gYS9kcml2ZXJzL25l dC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9kaXNwYXRjaC5oPGJyID4mZ3Q7ICsrKyBiL2RyaXZl cnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX2Rpc3BhdGNoLmg8YnIgPiZndDsgQEAgLTc0 LDYgKzc0LDE1IEBAIHN0cnVjdCBuYmxfZGlzcGF0Y2hfb3BzIHs8YnIgPiZndDsmbmJzcDsgdm9p ZCAoKmdldF9ib2FyZF9pbmZvKSh2b2lkICpwcml2LCBzdHJ1Y3QgbmJsX2JvYXJkX3BvcnRfaW5m byAqYm9hcmRfaW5mbyk7PGJyID4mZ3Q7Jm5ic3A7IHZvaWQgKCpnZXRfbGlua19zdGF0ZSkodm9p ZCAqcHJpdiwgdTggZXRoX2lkLCBzdHJ1Y3QgbmJsX2V0aF9saW5rX2luZm8gKmV0aF9saW5rX2lu Zm8pOzxiciA+Jmd0OyZuYnNwOyBpbnQgKCpnZXRfc3RhdHMpKHZvaWQgKnByaXYsIHN0cnVjdCBy dGVfZXRoX3N0YXRzICpydGVfc3RhdHMpOzxiciA+Jmd0OyArIGludCAoKnJlc2V0X3N0YXRzKSh2 b2lkICpwcml2KTs8YnIgPiZndDsgKyBpbnQgKCpnZXRfdHhyeF94c3RhdHNfY250KSh2b2lkICpw cml2LCB1MTYgKnhzdGF0c19jbnQpOzxiciA+Jmd0OyArIGludCAoKmdldF90eHJ4X3hzdGF0cyko dm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXQgKnhzdGF0cywgdTE2ICp4c3RhdHNfY250 KTs8YnIgPiZndDsgKyBpbnQgKCpnZXRfdHhyeF94c3RhdHNfbmFtZXMpKHZvaWQgKnByaXYsIHN0 cnVjdCBydGVfZXRoX3hzdGF0X25hbWUgKnhzdGF0c19uYW1lcyw8YnIgPiZndDsgKyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgdTE2ICp4c3RhdHNfY250KTs8YnIgPiZndDsgKyBpbnQgKCpn ZXRfaHdfeHN0YXRzX2NudCkodm9pZCAqcHJpdiwgdTE2ICp4c3RhdHNfY250KTs8YnIgPiZndDsg KyBpbnQgKCpnZXRfaHdfeHN0YXRzX25hbWVzKSh2b2lkICpwcml2LCBzdHJ1Y3QgcnRlX2V0aF94 c3RhdF9uYW1lICp4c3RhdHNfbmFtZXMsPGJyID4mZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg dTE2ICp4c3RhdHNfY250KTs8YnIgPiZndDsgKyB2b2lkICgqZ2V0X3ByaXZhdGVfc3RhdF9kYXRh KSh2b2lkICpwcml2LCB1MzIgZXRoX2lkLCB1NjQgKmRhdGEsIHUzMiBkYXRhX2xlbik7PGJyID4m Z3Q7PGJyID4mZ3Q7Jm5ic3A7IHZvaWQgKCpkdW1teV9mdW5jKSh2b2lkICpwcml2KTs8YnIgPiZn dDsgfTs8YnIgPiZndDsgZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9u YmxfZGVmX3Jlc291cmNlLmggYi9kcml2ZXJzL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2RlZl9y ZXNvdXJjZS5oPGJyID4mZ3Q7IGluZGV4IGMxNGZkYzc3M2UuLjViMzI1MDZiZTEgMTAwNjQ0PGJy ID4mZ3Q7IC0tLSBhL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfZGVmX3Jlc291cmNl Lmg8YnIgPiZndDsgKysrIGIvZHJpdmVycy9uZXQvbmJsL25ibF9pbmNsdWRlL25ibF9kZWZfcmVz b3VyY2UuaDxiciA+Jmd0OyBAQCAtNDYsNiArNDYsMTQgQEAgc3RydWN0IG5ibF9yZXNvdXJjZV9v cHMgezxiciA+Jmd0OyZuYnNwOyB2b2lkICgqcmVsZWFzZV9yeF9yaW5nKSh2b2lkICpwcml2LCB1 MTYgcXVldWVfaWR4KTs8YnIgPiZndDsmbmJzcDsgaW50ICgqZ2V0X3N0YXRzKSh2b2lkICpwcml2 LCBzdHJ1Y3QgcnRlX2V0aF9zdGF0cyAqcnRlX3N0YXRzKTs8YnIgPiZndDsmbmJzcDsgaW50ICgq cmVzZXRfc3RhdHMpKHZvaWQgKnByaXYpOzxiciA+Jmd0OyArIGludCAoKmdldF90eHJ4X3hzdGF0 c19jbnQpKHZvaWQgKnByaXYsIHUxNiAqeHN0YXRzX2NudCk7PGJyID4mZ3Q7ICsgaW50ICgqZ2V0 X3R4cnhfeHN0YXRzKSh2b2lkICpwcml2LCBzdHJ1Y3QgcnRlX2V0aF94c3RhdCAqeHN0YXRzLCB1 MTYgKnhzdGF0c19jbnQpOzxiciA+Jmd0OyArIGludCAoKmdldF90eHJ4X3hzdGF0c19uYW1lcyko dm9pZCAqcHJpdiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXRfbmFtZSAqeHN0YXRzX25hbWVzLDxiciA+ Jmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB1MTYgKnhzdGF0c19jbnQpOzxiciA+ Jmd0OyArIGludCAoKmdldF9od194c3RhdHNfY250KSh2b2lkICpwcml2LCB1MTYgKnhzdGF0c19j bnQpOzxiciA+Jmd0OyArIGludCAoKmdldF9od194c3RhdHNfbmFtZXMpKHZvaWQgKnByaXYsIHN0 cnVjdCBydGVfZXRoX3hzdGF0X25hbWUgKnhzdGF0c19uYW1lcyw8YnIgPiZndDsgKyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyB1MTYgKnhzdGF0c19jbnQpOzxiciA+Jmd0OyArIHZvaWQgKCpnZXRfcHJp dmF0ZV9zdGF0X2RhdGEpKHZvaWQgKnByaXYsIHUzMiBldGhfaWQsIHU2NCAqZGF0YSk7PGJyID4m Z3Q7Jm5ic3A7IHZvaWQgKCp1cGRhdGVfcnhfcmluZykodm9pZCAqcHJpdiwgdTE2IHF1ZXVlX2lk eCk7PGJyID4mZ3Q7Jm5ic3A7IHUxNiAoKmdldF90eF9laGRyX2xlbikodm9pZCAqcHJpdik7PGJy ID4mZ3Q7Jm5ic3A7IGludCAoKmFsbG9jX3R4cnhfcXVldWVzKSh2b2lkICpwcml2LCB1MTYgdnNp X2lkLCB1MTYgcXVldWVfbnVtKTs8YnIgPiZndDsgQEAgLTU4LDEwICs2Niw2IEBAIHN0cnVjdCBu YmxfcmVzb3VyY2Vfb3BzIHs8YnIgPiZndDsmbmJzcDsgdm9pZCAoKmNmZ190eHJ4X3ZsYW4pKHZv aWQgKnByaXYsIHUxNiB2bGFuX3RjaSwgdTE2IHZsYW5fcHJvdG8pOzxiciA+Jmd0OyZuYnNwOyBp bnQgKCp0eHJ4X2J1cnN0X21vZGVfZ2V0KSh2b2lkICpwcml2LCBzdHJ1Y3QgcnRlX2V0aF9kZXYg KmRldiw8YnIgPiZndDsmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgc3RydWN0IHJ0ZV9ldGhf YnVyc3RfbW9kZSAqbW9kZSwgYm9vbCBpc190eCk7PGJyID4mZ3Q7IC0gaW50ICgqZ2V0X3R4cnhf eHN0YXRzX2NudCkodm9pZCAqcHJpdiwgdTE2ICp4c3RhdHNfY250KTs8YnIgPiZndDsgLSBpbnQg KCpnZXRfdHhyeF94c3RhdHMpKHZvaWQgKnByaXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0ICp4c3Rh dHMsIHUxNiAqeHN0YXRzX2NudCk7PGJyID4mZ3Q7IC0gaW50ICgqZ2V0X3R4cnhfeHN0YXRzX25h bWVzKSh2b2lkICpwcml2LCBzdHJ1Y3QgcnRlX2V0aF94c3RhdF9uYW1lICp4c3RhdHNfbmFtZXMs PGJyID4mZ3Q7IC0gJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHUxNiAqeHN0YXRzX2NudCk7 PGJyID4mZ3Q7Jm5ic3A7IGludCAoKmFkZF9tYWN2bGFuKSh2b2lkICpwcml2LCB1OCAqbWFjLCB1 MTYgdmxhbl9pZCwgdTE2IHZzaV9pZCk7PGJyID4mZ3Q7Jm5ic3A7IHZvaWQgKCpkZWxfbWFjdmxh bikodm9pZCAqcHJpdiwgdTggKm1hYywgdTE2IHZsYW5faWQsIHUxNiB2c2lfaWQpOzxiciA+Jmd0 OyZuYnNwOyBpbnQgKCphZGRfbXVsdGlfcnVsZSkodm9pZCAqcHJpdiwgdTE2IHZzaV9pZCk7PGJy ID4mZ3Q7IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9uYmwvbmJsX2luY2x1ZGUvbmJsX2luY2x1 ZGUuaCBiL2RyaXZlcnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfaW5jbHVkZS5oPGJyID4mZ3Q7 IGluZGV4IDE0YzQxYTAxMzkuLmEwZTE4Y2VjMjAgMTAwNjQ0PGJyID4mZ3Q7IC0tLSBhL2RyaXZl cnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfaW5jbHVkZS5oPGJyID4mZ3Q7ICsrKyBiL2RyaXZl cnMvbmV0L25ibC9uYmxfaW5jbHVkZS9uYmxfaW5jbHVkZS5oPGJyID4mZ3Q7IEBAIC01MCw2ICs1 MCwxMCBAQCB0eXBlZGVmIGludDMyX3QgczMyOzxiciA+Jmd0OyB0eXBlZGVmIGludDE2X3QgczE2 OzxiciA+Jmd0OyB0eXBlZGVmIGludDhfdCBzODs8YnIgPiZndDs8YnIgPiZndDsgKyNpZm5kZWYg QVJSQVlfU0laRTxiciA+Jmd0OyArI2RlZmluZSBBUlJBWV9TSVpFKGFycikgUlRFX0RJTShhcnIp PGJyID4mZ3Q7ICsjZW5kaWY8YnIgPiZndDsgKzxiciA+Jmd0OyAvKiBVc2VkIGZvciBtYWNyb3Mg dG8gcGFzcyBjaGVja3BhdGNoICovPGJyID4mZ3Q7ICNkZWZpbmUgTkJMX05BTUUoeCkmbmJzcDsg Jm5ic3A7IHg8YnIgPiZndDsgI2RlZmluZSBCSVQoYSkgJm5ic3A7ICZuYnNwOyAoMVVMICZsdDsm bHQ7IChhKSk8YnIgPiZndDsgLS0gPGJyID4mZ3Q7IDIuMzQuMTxiciA+Jmd0OzxiciA+Jmd0Ozwv ZGl2PjwvYmxvY2txdW90ZT48ZGl2ICBzdHlsZT0ibGluZS1oZWlnaHQ6IDIwcHg7IGNsZWFyOiBi b3RoOyI+PGJyID48L2Rpdj48L2Rpdj48L2Rpdj4NCjxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+ PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTogMTBweDsgY29sb3I6IHJnYigyMTYsIDIxNiwgMjE2KTsi PuacrOmCruS7tuaJgOWQq+S/oeaBr+WPiuWFtuS7u+S9lemZhOS7tuS4uuS/neWvhuS/oeaBr+S4 lOWPr+iDveWxnuS6juS4k+acieS/oeaBr+OAguS7u+S9lemdnuaMh+WumuaOpeaUtuS6uuWdh+aX oOadg+iuv+mXruacrOmCruS7tuOAguWmguaenOaCqOS4jeaYr+ivpemCruS7tueahOaMh+WumuaO peaUtuS6uu+8jOmCo+S5iOS7u+S9leWvueacrOmCruS7tuWGheWuuei/m+ihjOaKq+mcsu+8jOWk jeWItuaIluS9v+eUqOeahOihjOS4uuWdh+aYr+emgeatoueahOOAguWmguaenOaCqOS4jeaYr+iv pemCruS7tueahOaMh+WumuaOpeaUtuS6uu+8jOivt+aCqOeri+WNs+mAmui/h+mCruS7tumAmuef pSZuYnNwO2NvbXBsaWFuY2VAbmVidWxhLW1hdHJpeC5jb23lubbnq4vljbPliKDpmaTmgqjplJno r6/mjqXlj5fnmoTpgq7ku7bjgII8L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7 Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiAxMHB4OyBjb2xvcjogcmdiKDIxNiwgMjE2LCAyMTYp OyI+VGhlJm5ic3A7aW5mb3JtYXRpb24mbmJzcDtpbiZuYnNwO3RoaXMmbmJzcDttZXNzYWdlJm5i c3A7YW5kJm5ic3A7YW55Jm5ic3A7YXR0YWNobWVudHMmbmJzcDtpcyZuYnNwO2NvbmZpZGVudGlh bCZuYnNwO2FuZCZuYnNwO21heSZuYnNwO2JlJm5ic3A7cHJpdmlsZWdlZC4mbmJzcDsmbmJzcDtB Y2Nlc3MmbmJzcDt0byZuYnNwO3RoaXMmbmJzcDtlbWFpbCZuYnNwO2J5Jm5ic3A7YW55b25lJm5i c3A7b3RoZXImbmJzcDt0aGFuJm5ic3A7dGhlJm5ic3A7aW50ZW5kZWQmbmJzcDtyZWNpcGllbnQm bmJzcDtpcyZuYnNwO25vdCZuYnNwO2F1dGhvcml6ZWQuJm5ic3A7Jm5ic3A7SWYmbmJzcDt5b3Um bmJzcDthcmUmbmJzcDtub3QmbmJzcDt0aGUmbmJzcDtpbnRlbmRlZCZuYnNwO3JlY2lwaWVudCwm bmJzcDtkaXNjbG9zdXJlLCZuYnNwO2NvcHlpbmcmbmJzcDtvciZuYnNwO3VzZSZuYnNwO29mJm5i c3A7dGhlJm5ic3A7Y29udGVudHMmbmJzcDtvZiZuYnNwO3RoaXMmbmJzcDtlbWFpbCZuYnNwO2lz Jm5ic3A7cHJvaGliaXRlZC4mbmJzcDsmbmJzcDtJZiZuYnNwO3lvdSZuYnNwO2FyZSZuYnNwO25v dCZuYnNwO3RoZSZuYnNwO2ludGVuZGVkJm5ic3A7cmVjaXBpZW50LCZuYnNwO3BsZWFzZSZuYnNw O25vdGlmeSZuYnNwOyZuYnNwO2NvbXBsaWFuY2VAbmVidWxhLW1hdHJpeC5jb20mbmJzcDtpbW1l ZGlhdGVseSZuYnNwO2J5Jm5ic3A7ZW1haWwsJm5ic3A7YW5kJm5ic3A7cGxlYXNlJm5ic3A7ZGVz dHJveSZuYnNwO3RoZSZuYnNwO2VtYWlsJm5ic3A7eW91Jm5ic3A7cmVjZWl2ZWQmbmJzcDtpbiZu YnNwO2Vycm9yLjwvc3Bhbj48L2Rpdj4= ------=ALIBOUNDARY_1984_7ffa48a7b700_68a2fc34_150cd0--