From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 29620 invoked from network); 11 Sep 2023 17:07:40 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 11 Sep 2023 17:07:40 -0000 Content-Type: multipart/mixed; boundary="===============1224369787348661828==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_alsa-=7Blib=2Cutils=2Cucm-conf=7D=3A_update_to_1=2E2=2E10?= To: ml@inbox.vuxu.org From: cinerea0 Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 11 Sep 2023 19:07:40 +0200 List-Id: Message-ID: <20230911170740.x38KxtIuyj_gPpV1ORZSp2I1TTOUOLuayiKaXH_P4R0@z> GitHub notification mails are now in MIME to allow UTF8. --===============1224369787348661828== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgY2luZXJlYTAgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2Np bmVyZWEwL3ZvaWQtcGFja2FnZXMgYWxzYQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92 b2lkLXBhY2thZ2VzL3B1bGwvNDU5ODUKCmFsc2Ete2xpYix1dGlscyx1Y20tY29uZn06IHVwZGF0 ZSB0byAxLjIuMTAKIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkgdGVzdGVkIHRoZSBjaGFu Z2VzIGluIHRoaXMgUFI6ICoqWUVTKioNCgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRo dWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ1OTg1LnBhdGNoIGlzIGF0dGFj aGVk --===============1224369787348661828== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-alsa-45985.patch" RnJvbSA2YjJjZjk4MGZlOTYzZGZlM2Y2NWZiOGUxYTU0ZjMyYzg0OGFhMGQwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBjaW5lcmVhMCA8Y2luZXJlYTBAZGlzcm9vdC5vcmc+CkRhdGU6 IE1vbiwgMTEgU2VwIDIwMjMgMTM6MDY6MjAgLTA0MDAKU3ViamVjdDogW1BBVENIIDEvM10gYWxz YS1saWI6IHVwZGF0ZSB0byAxLjIuMTAKCi0tLQogLi4uL2Fsc2EtbGliL3BhdGNoZXMvbW92ZS1z dHJpbmctbWFjcm8ucGF0Y2ggIHwgMzEgKysrKysrKysrKysrKysrKysrKwogLi4uL3BhdGNoZXMv dW1wLWhlYWRlci1kZXRlY3Rpb24ucGF0Y2ggICAgICAgIHwgMTUgKysrKysrKysrCiBzcmNwa2dz L2Fsc2EtbGliL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgfCAgNiArKy0tCiAzIGZpbGVz IGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9hbHNhLWxpYi9wYXRjaGVzL21vdmUtc3RyaW5nLW1hY3JvLnBhdGNoCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hbHNhLWxpYi9wYXRjaGVzL3VtcC1oZWFkZXItZGV0 ZWN0aW9uLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbHNhLWxpYi9wYXRjaGVzL21vdmUt c3RyaW5nLW1hY3JvLnBhdGNoIGIvc3JjcGtncy9hbHNhLWxpYi9wYXRjaGVzL21vdmUtc3RyaW5n LW1hY3JvLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjk4 OTczYzFlOGExM2IKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Fsc2EtbGliL3BhdGNoZXMv bW92ZS1zdHJpbmctbWFjcm8ucGF0Y2gKQEAgLTAsMCArMSwzMSBAQAorIyBGaXhlcyBjb21waWxh dGlvbiBpc3N1ZSBvbiBtdXNsCisjIFVwc3RyZWFtOiBodHRwczovL2dpdGh1Yi5jb20vYWxzYS1w cm9qZWN0L2Fsc2EtbGliL2NvbW1pdC8xMGJkNTk5OTcwYWNjNzFjOTJmODVlYjA4OTQzZWI4ZDNk NzAyYTljCitkaWZmIC0tZ2l0IGEvaW5jbHVkZS9nbG9iYWwuaCBiL2luY2x1ZGUvZ2xvYmFsLmgK K2luZGV4IGRmZTliYzJiLi4zZWNhZWVlOCAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvZ2xvYmFsLmgK KysrKyBiL2luY2x1ZGUvZ2xvYmFsLmgKK0BAIC01MSw2ICs1MSwxMSBAQCBjb25zdCBjaGFyICpz bmRfYXNvdW5kbGliX3ZlcnNpb24odm9pZCk7CisgI2RlZmluZSBBVFRSSUJVVEVfVU5VU0VEIF9f YXR0cmlidXRlX18gKChfX3VudXNlZF9fKSkKKyAjZW5kaWYKKyAKKysjaWZuZGVmIF9fU1RSSU5H CisrLyoqIFxicmllZiBSZXR1cm4gJ3gnIGFyZ3VtZW50IGFzIHN0cmluZyAqLworKyNkZWZpbmUg X19TVFJJTkcoeCkgICAgICN4CisrI2VuZGlmCisrCisgI2lmZGVmIFBJQyAvKiBkeW5hbWljIGJ1 aWxkICovCisgCisgLyoqIFxoaWRlaW5pdGlhbGl6ZXIgXGJyaWVmIEhlbHBlciBtYWNybyBmb3Ig I1NORF9ETFNZTV9CVUlMRF9WRVJTSU9OLiAqLworQEAgLTcxLDExICs3Niw2IEBAIHN0cnVjdCBz bmRfZGxzeW1fbGluayB7CisgCisgZXh0ZXJuIHN0cnVjdCBzbmRfZGxzeW1fbGluayAqc25kX2Rs c3ltX3N0YXJ0OworIAorLSNpZm5kZWYgX19TVFJJTkcKKy0vKiogXGJyaWVmIFJldHVybiAneCcg YXJndW1lbnQgYXMgc3RyaW5nICovCistI2RlZmluZSBfX1NUUklORyh4KSAgICAgI3gKKy0jZW5k aWYKKy0KKyAvKiogXGhpZGVpbml0aWFsaXplciBcYnJpZWYgSGVscGVyIG1hY3JvIGZvciAjU05E X0RMU1lNX0JVSUxEX1ZFUlNJT04uICovCisgI2RlZmluZSBfX1NORF9ETFNZTV9WRVJTSU9OKHBy ZWZpeCwgbmFtZSwgdmVyc2lvbikgXyAjIyBwcmVmaXggIyMgbmFtZSAjIyB2ZXJzaW9uCisgLyoq CisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS1saWIvcGF0Y2hlcy91bXAtaGVhZGVyLWRldGVj dGlvbi5wYXRjaCBiL3NyY3BrZ3MvYWxzYS1saWIvcGF0Y2hlcy91bXAtaGVhZGVyLWRldGVjdGlv bi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi5lZmU5OTA5 ZmVmOTEyCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hbHNhLWxpYi9wYXRjaGVzL3VtcC1o ZWFkZXItZGV0ZWN0aW9uLnBhdGNoCkBAIC0wLDAgKzEsMTUgQEAKKyMgRml4ZXMgdW1wIGhlYWRl ciBkZXRlY3Rpb24gd2hlbiB1c2VkIGJ5IGV4dGVybmFsIHByb2dyYW1zCisjIFVwc3RyZWFtOiBo dHRwczovL2dpdGh1Yi5jb20vYWxzYS1wcm9qZWN0L2Fsc2EtbGliL2NvbW1pdC9mY2NlMTNhNjcy NmM1Mjg4MmJkOGI3MTMxYzYxYzRlYmEzMDg3OTJjCitkaWZmIC0tZ2l0IGEvaW5jbHVkZS9jb250 cm9sLmggYi9pbmNsdWRlL2NvbnRyb2wuaAoraW5kZXggYWI0ODJiYTQuLmU3NTQxZDU2IDEwMDY0 NAorLS0tIGEvaW5jbHVkZS9jb250cm9sLmgKKysrKyBiL2luY2x1ZGUvY29udHJvbC5oCitAQCAt NDEzLDYgKzQxMyw4IEBAIGludCBzbmRfY3RsX3BjbV9wcmVmZXJfc3ViZGV2aWNlKHNuZF9jdGxf dCAqY3RsLCBpbnQgc3ViZGV2KTsKKyBpbnQgc25kX2N0bF9yYXdtaWRpX25leHRfZGV2aWNlKHNu ZF9jdGxfdCAqY3RsLCBpbnQgKiBkZXZpY2UpOworIGludCBzbmRfY3RsX3Jhd21pZGlfaW5mbyhz bmRfY3RsX3QgKmN0bCwgc25kX3Jhd21pZGlfaW5mb190ICogaW5mbyk7CisgaW50IHNuZF9jdGxf cmF3bWlkaV9wcmVmZXJfc3ViZGV2aWNlKHNuZF9jdGxfdCAqY3RsLCBpbnQgc3ViZGV2KTsKKysj ZW5kaWYKKysjaWZkZWYgX19BTFNBX1VNUF9ICisgaW50IHNuZF9jdGxfdW1wX25leHRfZGV2aWNl KHNuZF9jdGxfdCAqY3RsLCBpbnQgKmRldmljZSk7CisgaW50IHNuZF9jdGxfdW1wX2VuZHBvaW50 X2luZm8oc25kX2N0bF90ICpjdGwsIHNuZF91bXBfZW5kcG9pbnRfaW5mb190ICppbmZvKTsKKyBp bnQgc25kX2N0bF91bXBfYmxvY2tfaW5mbyhzbmRfY3RsX3QgKmN0bCwgc25kX3VtcF9ibG9ja19p bmZvX3QgKmluZm8pOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbHNhLWxpYi90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYWxzYS1saWIvdGVtcGxhdGUKaW5kZXggNTc2NzQ1YTg1MjE5OC4uY2UzNzljMzE3Yjk2 ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hbHNhLWxpYi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Fs c2EtbGliL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYWxz YS1saWInCiBwa2duYW1lPWFsc2EtbGliCi12ZXJzaW9uPTEuMi45Cit2ZXJzaW9uPTEuMi4xMAog cmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGxpYnRvb2wiCkBAIC04LDggKzgsOCBAQCBzaG9ydF9kZXNjPSJBZHZhbmNlZCBM aW51eCBTb3VuZCBBcmNoaXRlY3R1cmUgKEFMU0EpIGxpYnJhcnkiCiBtYWludGFpbmVyPSJjaW5l cmVhMCA8Y2luZXJlYTBAcHJvdG9ubWFpbC5jb20+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0 ZXIiCiBob21lcGFnZT0iaHR0cDovL3d3dy5hbHNhLXByb2plY3Qub3JnIgotZGlzdGZpbGVzPSJo dHRwczovL3d3dy5hbHNhLXByb2plY3Qub3JnL2ZpbGVzL3B1Yi9saWIvJHtwa2duYW1lfS0ke3Zl cnNpb259LnRhci5iejIiCi1jaGVja3N1bT1kYzljNjQzZmRjNGNjZmQwNTcyY2M2ODU4NThkZDQx ZTA4YWZiNTgzZjMwNDYwYjMxN2U0MTg4Mjc1ZjYxNWIyCitkaXN0ZmlsZXM9Imh0dHBzOi8vd3d3 LmFsc2EtcHJvamVjdC5vcmcvZmlsZXMvcHViL2xpYi9hbHNhLWxpYi0ke3ZlcnNpb259LnRhci5i ejIiCitjaGVja3N1bT1jODZhNDVhODQ2MzMxYjFiMGFhNmU2YmUxMDBiZTJhN2FlZjkyZWZkNDA1 Y2Y2YmFjN2VlZjgxNzRiYWE5MjBlCiAKIGFsc2EtbGliLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVw ZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoKRnJvbSBkYzUyMDlk MDIzY2YwODkzMjJhODRhYzIzZDM4ZTRmZmE0M2FkYTJjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBjaW5lcmVhMCA8Y2luZXJlYTBAZGlzcm9vdC5vcmc+CkRhdGU6IE1vbiwgMTEgU2Vw IDIwMjMgMTM6MDY6NDggLTA0MDAKU3ViamVjdDogW1BBVENIIDIvM10gYWxzYS11dGlsczogdXBk YXRlIHRvIDEuMi4xMAoKLS0tCiBzcmNwa2dzL2Fsc2EtdXRpbHMvcGF0Y2hlcy9tdXNsLnBhdGNo IHwgNTI5ICsrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2Fsc2EtdXRpbHMvdGVt cGxhdGUgICAgICAgICAgIHwgICA2ICstCiAyIGZpbGVzIGNoYW5nZWQsIDUzMiBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvYWxzYS11dGls cy9wYXRjaGVzL211c2wucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Fsc2EtdXRpbHMvcGF0 Y2hlcy9tdXNsLnBhdGNoIGIvc3JjcGtncy9hbHNhLXV0aWxzL3BhdGNoZXMvbXVzbC5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi44YjE3ZTg4NjIyN2NmCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hbHNhLXV0aWxzL3BhdGNoZXMvbXVzbC5wYXRjaApA QCAtMCwwICsxLDUyOSBAQAorIyBVcHN0cmVhbSBQUjogaHR0cHM6Ly9naXRodWIuY29tL2Fsc2Et cHJvamVjdC9hbHNhLXV0aWxzL3B1bGwvMjM0CisjIHVfaW50XyogYXJlbid0IHN0YW5kYXJkLCBi dXQgdWludCogYXJlLiBVc2UgdGhvc2UgaW5zdGVhZCBmb3IgbXVzbCBjb21wYXQuCisjIEZpeCBz ZXRsb2NhbGUoKSBieSBhZGRpbmcgaW5jbHVkZSBmb3IgRU5BQkxFX05MUworZGlmZiAtLWdpdCBh L2FwbGF5L2FwbGF5LmMgYi9hcGxheS9hcGxheS5jCitpbmRleCBmMTgwZDQyYi4uNGQ1NzhmM2Ig MTAwNjQ0CistLS0gYS9hcGxheS9hcGxheS5jCisrKysgYi9hcGxheS9hcGxheS5jCitAQCAtMTE0 LDcgKzExNCw3IEBAIHN0YXRpYyBpbnQgbW1hcF9mbGFnID0gMDsKKyBzdGF0aWMgaW50IGludGVy bGVhdmVkID0gMTsKKyBzdGF0aWMgaW50IG5vbmJsb2NrID0gMDsKKyBzdGF0aWMgdm9sYXRpbGUg c2lnX2F0b21pY190IGluX2Fib3J0aW5nID0gMDsKKy1zdGF0aWMgdV9jaGFyICphdWRpb2J1ZiA9 IE5VTEw7Cisrc3RhdGljIHVuc2lnbmVkIGNoYXIgKmF1ZGlvYnVmID0gTlVMTDsKKyBzdGF0aWMg c25kX3BjbV91ZnJhbWVzX3QgY2h1bmtfc2l6ZSA9IDA7Cisgc3RhdGljIHVuc2lnbmVkIHBlcmlv ZF90aW1lID0gMDsKKyBzdGF0aWMgdW5zaWduZWQgYnVmZmVyX3RpbWUgPSAwOworQEAgLTg1OSw3 ICs4NTksNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQorIAljaHVua19zaXpl ID0gMTAyNDsKKyAJaHdwYXJhbXMgPSByaHdwYXJhbXM7CisgCistCWF1ZGlvYnVmID0gKHVfY2hh ciAqKW1hbGxvYygxMDI0KTsKKysJYXVkaW9idWYgPSAodW5zaWduZWQgY2hhciAqKW1hbGxvYygx MDI0KTsKKyAJaWYgKGF1ZGlvYnVmID09IE5VTEwpIHsKKyAJCWVycm9yKF8oIm5vdCBlbm91Z2gg bWVtb3J5IikpOworIAkJcmV0dXJuIDE7CitAQCAtOTcwLDcgKzk3MCw3IEBAIHN0YXRpYyBpbnQg dGVzdF92b2NmaWxlKHZvaWQgKmJ1ZmZlcikKKyAgKiBoZWxwZXIgZm9yIHRlc3Rfd2F2ZWZpbGUK KyAgKi8KKyAKKy1zdGF0aWMgc2l6ZV90IHRlc3Rfd2F2ZWZpbGVfcmVhZChpbnQgZmQsIHVfY2hh ciAqYnVmZmVyLCBzaXplX3QgKnNpemUsIHNpemVfdCByZXFzaXplLCBpbnQgbGluZSkKKytzdGF0 aWMgc2l6ZV90IHRlc3Rfd2F2ZWZpbGVfcmVhZChpbnQgZmQsIHVuc2lnbmVkIGNoYXIgKmJ1ZmZl ciwgc2l6ZV90ICpzaXplLCBzaXplX3QgcmVxc2l6ZSwgaW50IGxpbmUpCisgeworIAlpZiAoKnNp emUgPj0gcmVxc2l6ZSkKKyAJCXJldHVybiAqc2l6ZTsKK0BAIC05OTUsMTcgKzk5NSwxNyBAQCBz dGF0aWMgc2l6ZV90IHRlc3Rfd2F2ZWZpbGVfcmVhZChpbnQgZmQsIHVfY2hhciAqYnVmZmVyLCBz aXplX3QgKnNpemUsIHNpemVfdCByZQorICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgID09 IDAgaWYgbm90CisgICogVmFsdWUgcmV0dXJuZWQgaXMgYnl0ZXMgdG8gYmUgZGlzY2FyZGVkLgor ICAqLworLXN0YXRpYyBzc2l6ZV90IHRlc3Rfd2F2ZWZpbGUoaW50IGZkLCB1X2NoYXIgKl9idWZm ZXIsIHNpemVfdCBzaXplKQorK3N0YXRpYyBzc2l6ZV90IHRlc3Rfd2F2ZWZpbGUoaW50IGZkLCB1 bnNpZ25lZCBjaGFyICpfYnVmZmVyLCBzaXplX3Qgc2l6ZSkKKyB7CisgCVdhdmVIZWFkZXIgKmgg PSAoV2F2ZUhlYWRlciAqKV9idWZmZXI7CistCXVfY2hhciAqYnVmZmVyID0gTlVMTDsKKysJdW5z aWduZWQgY2hhciAqYnVmZmVyID0gTlVMTDsKKyAJc2l6ZV90IGJsaW1pdCA9IDA7CisgCVdhdmVG bXRCb2R5ICpmOworIAlXYXZlQ2h1bmtIZWFkZXIgKmM7CistCXVfaW50IHR5cGUsIGxlbjsKKysJ dW5zaWduZWQgaW50IHR5cGUsIGxlbjsKKyAJdW5zaWduZWQgc2hvcnQgZm9ybWF0LCBjaGFubmVs czsKKyAJaW50IGJpZ19lbmRpYW4sIG5hdGl2ZV9mb3JtYXQ7CistCXVfY2hhciB2YnBzID0gMDsK KysJdW5zaWduZWQgY2hhciB2YnBzID0gMDsKKyAKKyAJaWYgKHNpemUgPCBzaXplb2YoV2F2ZUhl YWRlcikpCisgCQlyZXR1cm4gLTE7CitAQCAtMTA0NCw3ICsxMDQ0LDcgQEAgc3RhdGljIHNzaXpl X3QgdGVzdF93YXZlZmlsZShpbnQgZmQsIHVfY2hhciAqX2J1ZmZlciwgc2l6ZV90IHNpemUpCisg CisgCWlmIChsZW4gPCBzaXplb2YoV2F2ZUZtdEJvZHkpKSB7CisgCQllcnJvcihfKCJ1bmtub3du IGxlbmd0aCBvZiAnZm10ICcgY2h1bmsgKHJlYWQgJXUsIHNob3VsZCBiZSAldSBhdCBsZWFzdCki KSwKKy0JCSAgICAgIGxlbiwgKHVfaW50KXNpemVvZihXYXZlRm10Qm9keSkpOworKwkJICAgICAg bGVuLCAodW5zaWduZWQgaW50KXNpemVvZihXYXZlRm10Qm9keSkpOworIAkJcHJnX2V4aXQoRVhJ VF9GQUlMVVJFKTsKKyAJfQorIAljaGVja193YXZlZmlsZV9zcGFjZShidWZmZXIsIGxlbiwgYmxp bWl0KTsKK0BAIC0xMDU1LDcgKzEwNTUsNyBAQCBzdGF0aWMgc3NpemVfdCB0ZXN0X3dhdmVmaWxl KGludCBmZCwgdV9jaGFyICpfYnVmZmVyLCBzaXplX3Qgc2l6ZSkKKyAJCVdhdmVGbXRFeHRlbnNp YmxlQm9keSAqZmUgPSAoV2F2ZUZtdEV4dGVuc2libGVCb2R5KilidWZmZXI7CisgCQlpZiAobGVu IDwgc2l6ZW9mKFdhdmVGbXRFeHRlbnNpYmxlQm9keSkpIHsKKyAJCQllcnJvcihfKCJ1bmtub3du IGxlbmd0aCBvZiBleHRlbnNpYmxlICdmbXQgJyBjaHVuayAocmVhZCAldSwgc2hvdWxkIGJlICV1 IGF0IGxlYXN0KSIpLAorLQkJCQkJbGVuLCAodV9pbnQpc2l6ZW9mKFdhdmVGbXRFeHRlbnNpYmxl Qm9keSkpOworKwkJCQkJbGVuLCAodW5zaWduZWQgaW50KXNpemVvZihXYXZlRm10RXh0ZW5zaWJs ZUJvZHkpKTsKKyAJCQlwcmdfZXhpdChFWElUX0ZBSUxVUkUpOworIAkJfQorIAkJaWYgKG1lbWNt cChmZS0+Z3VpZF90YWcsIFdBVl9HVUlEX1RBRywgMTQpICE9IDApIHsKK0BAIC0xMTY3LDcgKzEx NjcsNyBAQCBzdGF0aWMgc3NpemVfdCB0ZXN0X3dhdmVmaWxlKGludCBmZCwgdV9jaGFyICpfYnVm ZmVyLCBzaXplX3Qgc2l6ZSkKKyAJc2l6ZSAtPSBsZW47CisgCQorIAl3aGlsZSAoMSkgeworLQkJ dV9pbnQgdHlwZSwgbGVuOworKwkJdW5zaWduZWQgaW50IHR5cGUsIGxlbjsKKyAKKyAJCWNoZWNr X3dhdmVmaWxlX3NwYWNlKGJ1ZmZlciwgc2l6ZW9mKFdhdmVDaHVua0hlYWRlciksIGJsaW1pdCk7 CisgCQl0ZXN0X3dhdmVmaWxlX3JlYWQoZmQsIGJ1ZmZlciwgJnNpemUsIHNpemVvZihXYXZlQ2h1 bmtIZWFkZXIpLCBfX0xJTkVfXyk7CitAQCAtMTgwOSw3ICsxODA5LDcgQEAgc3RhdGljIHZvaWQg cHJpbnRfdnVfbWV0ZXIoc2lnbmVkIGludCAqcGVyYywgc2lnbmVkIGludCAqbWF4cGVyYykKKyB9 CisgCisgLyogcGVhayBoYW5kbGVyICovCistc3RhdGljIHZvaWQgY29tcHV0ZV9tYXhfcGVhayh1 X2NoYXIgKmRhdGEsIHNpemVfdCBzYW1wbGVzKQorK3N0YXRpYyB2b2lkIGNvbXB1dGVfbWF4X3Bl YWsodW5zaWduZWQgY2hhciAqZGF0YSwgc2l6ZV90IHNhbXBsZXMpCisgeworIAlzaWduZWQgaW50 IHZhbCwgbWF4LCBwZXJjWzJdLCBtYXhfcGVha1syXTsKKyAJc3RhdGljIGludCBydW4gPSAwOwor QEAgLTIwNTQsOSArMjA1NCw5IEBAIHN0YXRpYyB2b2lkIGRvX3Rlc3RfcG9zaXRpb24odm9pZCkK KyAvKgorICAqLworICNpZmRlZiBDT05GSUdfU1VQUE9SVF9DSE1BUAorLXN0YXRpYyB1X2NoYXIg KnJlbWFwX2RhdGEodV9jaGFyICpkYXRhLCBzaXplX3QgY291bnQpCisrc3RhdGljIHVuc2lnbmVk IGNoYXIgKnJlbWFwX2RhdGEodW5zaWduZWQgY2hhciAqZGF0YSwgc2l6ZV90IGNvdW50KQorIHsK Ky0Jc3RhdGljIHVfY2hhciAqdG1wLCAqc3JjLCAqZHN0OworKwlzdGF0aWMgdW5zaWduZWQgY2hh ciAqdG1wLCAqc3JjLCAqZHN0OworIAlzdGF0aWMgc2l6ZV90IHRtcF9zaXplOworIAlzaXplX3Qg c2FtcGxlX2J5dGVzID0gYml0c19wZXJfc2FtcGxlIC8gODsKKyAJc2l6ZV90IHN0ZXAgPSBiaXRz X3Blcl9mcmFtZSAvIDg7CitAQCAtMjA5MCw5ICsyMDkwLDkgQEAgc3RhdGljIHVfY2hhciAqcmVt YXBfZGF0YSh1X2NoYXIgKmRhdGEsIHNpemVfdCBjb3VudCkKKyAJcmV0dXJuIHRtcDsKKyB9Cisg Cistc3RhdGljIHVfY2hhciAqKnJlbWFwX2RhdGF2KHVfY2hhciAqKmRhdGEsIHNpemVfdCBjb3Vu dCBBVFRSSUJVVEVfVU5VU0VEKQorK3N0YXRpYyB1bnNpZ25lZCBjaGFyICoqcmVtYXBfZGF0YXYo dW5zaWduZWQgY2hhciAqKmRhdGEsIHNpemVfdCBjb3VudCBBVFRSSUJVVEVfVU5VU0VEKQorIHsK Ky0Jc3RhdGljIHVfY2hhciAqKnRtcDsKKysJc3RhdGljIHVuc2lnbmVkIGNoYXIgKip0bXA7Cisg CXVuc2lnbmVkIGludCBjaDsKKyAKKyAJaWYgKCFod19tYXApCitAQCAtMjExOCw3ICsyMTE4LDcg QEAgc3RhdGljIHVfY2hhciAqKnJlbWFwX2RhdGF2KHVfY2hhciAqKmRhdGEsIHNpemVfdCBjb3Vu dCBBVFRSSUJVVEVfVU5VU0VEKQorICAqICB3cml0ZSBmdW5jdGlvbgorICAqLworIAorLXN0YXRp YyBzc2l6ZV90IHBjbV93cml0ZSh1X2NoYXIgKmRhdGEsIHNpemVfdCBjb3VudCkKKytzdGF0aWMg c3NpemVfdCBwY21fd3JpdGUodW5zaWduZWQgY2hhciAqZGF0YSwgc2l6ZV90IGNvdW50KQorIHsK KyAJc3NpemVfdCByOworIAlzc2l6ZV90IHJlc3VsdCA9IDA7CitAQCAtMjE1Nyw3ICsyMTU3LDcg QEAgc3RhdGljIHNzaXplX3QgcGNtX3dyaXRlKHVfY2hhciAqZGF0YSwgc2l6ZV90IGNvdW50KQor IAlyZXR1cm4gcmVzdWx0OworIH0KKyAKKy1zdGF0aWMgc3NpemVfdCBwY21fd3JpdGV2KHVfY2hh ciAqKmRhdGEsIHVuc2lnbmVkIGludCBjaGFubmVscywgc2l6ZV90IGNvdW50KQorK3N0YXRpYyBz c2l6ZV90IHBjbV93cml0ZXYodW5zaWduZWQgY2hhciAqKmRhdGEsIHVuc2lnbmVkIGludCBjaGFu bmVscywgc2l6ZV90IGNvdW50KQorIHsKKyAJc3NpemVfdCByOworIAlzaXplX3QgcmVzdWx0ID0g MDsKK0BAIC0yMjEwLDcgKzIyMTAsNyBAQCBzdGF0aWMgc3NpemVfdCBwY21fd3JpdGV2KHVfY2hh ciAqKmRhdGEsIHVuc2lnbmVkIGludCBjaGFubmVscywgc2l6ZV90IGNvdW50KQorICAqICByZWFk IGZ1bmN0aW9uCisgICovCisgCistc3RhdGljIHNzaXplX3QgcGNtX3JlYWQodV9jaGFyICpkYXRh LCBzaXplX3QgcmNvdW50KQorK3N0YXRpYyBzc2l6ZV90IHBjbV9yZWFkKHVuc2lnbmVkIGNoYXIg KmRhdGEsIHNpemVfdCByY291bnQpCisgeworIAlzc2l6ZV90IHI7CisgCXNpemVfdCByZXN1bHQg PSAwOworQEAgLTIyNTIsNyArMjI1Miw3IEBAIHN0YXRpYyBzc2l6ZV90IHBjbV9yZWFkKHVfY2hh ciAqZGF0YSwgc2l6ZV90IHJjb3VudCkKKyAJcmV0dXJuIHJlc3VsdCA+IHJjb3VudCA/IHJjb3Vu dCA6IHJlc3VsdDsKKyB9CisgCistc3RhdGljIHNzaXplX3QgcGNtX3JlYWR2KHVfY2hhciAqKmRh dGEsIHVuc2lnbmVkIGludCBjaGFubmVscywgc2l6ZV90IHJjb3VudCkKKytzdGF0aWMgc3NpemVf dCBwY21fcmVhZHYodW5zaWduZWQgY2hhciAqKmRhdGEsIHVuc2lnbmVkIGludCBjaGFubmVscywg c2l6ZV90IHJjb3VudCkKKyB7CisgCXNzaXplX3QgcjsKKyAJc2l6ZV90IHJlc3VsdCA9IDA7CitA QCAtMjMwNCw3ICsyMzA0LDcgQEAgc3RhdGljIHNzaXplX3QgcGNtX3JlYWR2KHVfY2hhciAqKmRh dGEsIHVuc2lnbmVkIGludCBjaGFubmVscywgc2l6ZV90IHJjb3VudCkKKyAgKiAgb2ssIGxldCdz IHBsYXkgYSAudm9jIGZpbGUKKyAgKi8KKyAKKy1zdGF0aWMgc3NpemVfdCB2b2NfcGNtX3dyaXRl KHVfY2hhciAqZGF0YSwgc2l6ZV90IGNvdW50KQorK3N0YXRpYyBzc2l6ZV90IHZvY19wY21fd3Jp dGUodW5zaWduZWQgY2hhciAqZGF0YSwgc2l6ZV90IGNvdW50KQorIHsKKyAJc3NpemVfdCByZXN1 bHQgPSBjb3VudCwgcjsKKyAJc2l6ZV90IHNpemU7CitAQCAtMjMyOSw5ICsyMzI5LDkgQEAgc3Rh dGljIHNzaXplX3Qgdm9jX3BjbV93cml0ZSh1X2NoYXIgKmRhdGEsIHNpemVfdCBjb3VudCkKKyBz dGF0aWMgdm9pZCB2b2Nfd3JpdGVfc2lsZW5jZSh1bnNpZ25lZCB4KQorIHsKKyAJdW5zaWduZWQg bDsKKy0JdV9jaGFyICpidWY7CisrCXVuc2lnbmVkIGNoYXIgKmJ1ZjsKKyAKKy0JYnVmID0gKHVf Y2hhciAqKSBtYWxsb2MoY2h1bmtfYnl0ZXMpOworKwlidWYgPSAodW5zaWduZWQgY2hhciAqKSBt YWxsb2MoY2h1bmtfYnl0ZXMpOworIAlpZiAoYnVmID09IE5VTEwpIHsKKyAJCWVycm9yKF8oImNh bid0IGFsbG9jYXRlIGJ1ZmZlciBmb3Igc2lsZW5jZSIpKTsKKyAJCXJldHVybjsJCS8qIG5vdCBm YXRhbCBlcnJvciAqLworQEAgLTIzNzIsMTUgKzIzNzIsMTUgQEAgc3RhdGljIHZvaWQgdm9jX3Bs YXkoaW50IGZkLCBpbnQgb2ZzLCBjaGFyICpuYW1lKQorIAlWb2NWb2ljZURhdGEgKnZkOworIAlW b2NFeHRCbG9jayAqZWI7CisgCXNpemVfdCBuZXh0YmxvY2ssIGluX2J1ZmZlcjsKKy0JdV9jaGFy ICpkYXRhLCAqYnVmOworKwl1bnNpZ25lZCBjaGFyICpkYXRhLCAqYnVmOworIAljaGFyIHdhc19l eHRlbmRlZCA9IDAsIG91dHB1dCA9IDA7CistCXVfc2hvcnQgKnNwLCByZXBlYXQgPSAwOworKwl1 bnNpZ25lZCBzaG9ydCAqc3AsIHJlcGVhdCA9IDA7CisgCW9mZl90IGZpbGVwb3MgPSAwOworIAor ICNkZWZpbmUgQ09VTlQoeCkJbmV4dGJsb2NrIC09IHg7IGluX2J1ZmZlciAtPSB4OyBkYXRhICs9 IHgKKyAjZGVmaW5lIENPVU5UMSh4KQlpbl9idWZmZXIgLT0geDsgZGF0YSArPSB4CisgCistCWRh dGEgPSBidWYgPSAodV9jaGFyICopbWFsbG9jKDY0ICogMTAyNCk7CisrCWRhdGEgPSBidWYgPSAo dW5zaWduZWQgY2hhciAqKW1hbGxvYyg2NCAqIDEwMjQpOworIAlidWZmZXJfcG9zID0gMDsKKyAJ aWYgKGRhdGEgPT0gTlVMTCkgeworIAkJZXJyb3IoXygibWFsbG9jIGVycm9yIikpOworQEAgLTI0 NzIsOCArMjQ3Miw4IEBAIHN0YXRpYyB2b2lkIHZvY19wbGF5KGludCBmZCwgaW50IG9mcywgY2hh ciAqbmFtZSkKKyAjZW5kaWYKKyAJCQkJYnJlYWs7CisgCQkJY2FzZSAzOgkvKiBhIHNpbGVuY2Ug YmxvY2ssIG5vIGRhdGEsIG9ubHkgYSBjb3VudCAqLworLQkJCQlzcCA9ICh1X3Nob3J0ICopIGRh dGE7CistCQkJCUNPVU5UMShzaXplb2YodV9zaG9ydCkpOworKwkJCQlzcCA9ICh1bnNpZ25lZCBz aG9ydCAqKSBkYXRhOworKwkJCQlDT1VOVDEoc2l6ZW9mKHVuc2lnbmVkIHNob3J0KSk7CisgCQkJ CWh3cGFyYW1zLnJhdGUgPSAoaW50KSAoKmRhdGEpOworIAkJCQlDT1VOVDEoMSk7CisgCQkJCWh3 cGFyYW1zLnJhdGUgPSAxMDAwMDAwIC8gKDI1NiAtIGh3cGFyYW1zLnJhdGUpOworQEAgLTI0ODgs OCArMjQ4OCw4IEBAIHN0YXRpYyB2b2lkIHZvY19wbGF5KGludCBmZCwgaW50IG9mcywgY2hhciAq bmFtZSkKKyAJCQkJdm9jX3dyaXRlX3NpbGVuY2UoKnNwKTsKKyAJCQkJYnJlYWs7CisgCQkJY2Fz ZSA0OgkvKiBhIG1hcmtlciBmb3Igc3luY3JvbmlzYXRpb24sIG5vIGVmZmVjdCAqLworLQkJCQlz cCA9ICh1X3Nob3J0ICopIGRhdGE7CistCQkJCUNPVU5UMShzaXplb2YodV9zaG9ydCkpOworKwkJ CQlzcCA9ICh1bnNpZ25lZCBzaG9ydCAqKSBkYXRhOworKwkJCQlDT1VOVDEoc2l6ZW9mKHVuc2ln bmVkIHNob3J0KSk7CisgI2lmIDAKKyAJCQkJZF9wcmludGYoIk1hcmtlciAlZFxuIiwgKnNwKTsK KyAjZW5kaWYKK0BAIC0yNTAzLDggKzI1MDMsOCBAQCBzdGF0aWMgdm9pZCB2b2NfcGxheShpbnQg ZmQsIGludCBvZnMsIGNoYXIgKm5hbWUpCisgCQkJY2FzZSA2OgkvKiByZXBlYXQgbWFya2VyLCBz YXlzIHJlcGVhdGNvdW50ICovCisgCQkJCS8qIG15IHNwZWNzIGRvbid0IHNheSBpdDogbWF5YmUg dGhpcyBjYW4gYmUgcmVjdXJzaXZlLCBidXQKKyAJCQkJICAgSSBkb24ndCB0aGluayBzb21lYm9k eSB1c2UgaXQgKi8KKy0JCQkJcmVwZWF0ID0gKih1X3Nob3J0ICopIGRhdGE7CistCQkJCUNPVU5U MShzaXplb2YodV9zaG9ydCkpOworKwkJCQlyZXBlYXQgPSAqKHVuc2lnbmVkIHNob3J0ICopIGRh dGE7CisrCQkJCUNPVU5UMShzaXplb2YodW5zaWduZWQgc2hvcnQpKTsKKyAjaWYgMAorIAkJCQlk X3ByaW50ZigiUmVwZWF0IGxvb3AgJWQgdGltZXNcbiIsIHJlcGVhdCk7CisgI2VuZGlmCitAQCAt MjY0OSwxNCArMjY0OSwxNCBAQCBzdGF0aWMgdm9pZCBiZWdpbl92b2MoaW50IGZkLCBzaXplX3Qg Y250KQorIAl9CisgCWJ0LnR5cGUgPSAxOworIAljbnQgKz0gc2l6ZW9mKFZvY1ZvaWNlRGF0YSk7 CS8qIENoYW5uZWxfZGF0YSBibG9jayBmb2xsb3dzICovCistCWJ0LmRhdGFsZW4gPSAodV9jaGFy KSAoY250ICYgMHhGRik7CistCWJ0LmRhdGFsZW5fbSA9ICh1X2NoYXIpICgoY250ICYgMHhGRjAw KSA+PiA4KTsKKy0JYnQuZGF0YWxlbl9oID0gKHVfY2hhcikgKChjbnQgJiAweEZGMDAwMCkgPj4g MTYpOworKwlidC5kYXRhbGVuID0gKHVuc2lnbmVkIGNoYXIpIChjbnQgJiAweEZGKTsKKysJYnQu ZGF0YWxlbl9tID0gKHVuc2lnbmVkIGNoYXIpICgoY250ICYgMHhGRjAwKSA+PiA4KTsKKysJYnQu ZGF0YWxlbl9oID0gKHVuc2lnbmVkIGNoYXIpICgoY250ICYgMHhGRjAwMDApID4+IDE2KTsKKyAJ aWYgKHh3cml0ZShmZCwgJmJ0LCBzaXplb2YoVm9jQmxvY2tUeXBlKSkgIT0gc2l6ZW9mKFZvY0Js b2NrVHlwZSkpIHsKKyAJCWVycm9yKF8oIndyaXRlIGVycm9yIikpOworIAkJcHJnX2V4aXQoRVhJ VF9GQUlMVVJFKTsKKyAJfQorLQl2ZC50YyA9ICh1X2NoYXIpICgyNTYgLSAoMTAwMDAwMCAvIGh3 cGFyYW1zLnJhdGUpKTsKKysJdmQudGMgPSAodW5zaWduZWQgY2hhcikgKDI1NiAtICgxMDAwMDAw IC8gaHdwYXJhbXMucmF0ZSkpOworIAl2ZC5wYWNrID0gMDsKKyAJaWYgKHh3cml0ZShmZCwgJnZk LCBzaXplb2YoVm9jVm9pY2VEYXRhKSkgIT0gc2l6ZW9mKFZvY1ZvaWNlRGF0YSkpIHsKKyAJCWVy cm9yKF8oIndyaXRlIGVycm9yIikpOworQEAgLTI2NzEsOCArMjY3MSw4IEBAIHN0YXRpYyB2b2lk IGJlZ2luX3dhdmUoaW50IGZkLCBzaXplX3QgY250KQorIAlXYXZlRm10Qm9keSBmOworIAlXYXZl Q2h1bmtIZWFkZXIgY2YsIGNkOworIAlpbnQgYml0czsKKy0JdV9pbnQgdG1wOworLQl1X3Nob3J0 IHRtcDI7CisrCXVuc2lnbmVkIGludCB0bXA7CisrCXVuc2lnbmVkIHNob3J0IHRtcDI7CisgCisg CS8qIFdBVkUgY2Fubm90IGhhbmRsZSBncmVhdGVyIHRoYW4gMzJiaXQgKHNpZ25lZD8pIGludCAq LworIAlpZiAoY250ID09IChzaXplX3QpLTIpCitAQCAtMjcxNSwxMSArMjcxNSwxMSBAQCBzdGF0 aWMgdm9pZCBiZWdpbl93YXZlKGludCBmZCwgc2l6ZV90IGNudCkKKyAjaWYgMAorIAl0bXAyID0g KHNhbXBsZXNpemUgPT0gOCkgPyAxIDogMjsKKyAJZi5ieXRlX3Bfc3BsID0gTEVfU0hPUlQodG1w Mik7CistCXRtcCA9IGRzcF9zcGVlZCAqIGh3cGFyYW1zLmNoYW5uZWxzICogKHVfaW50KSB0bXAy OworKwl0bXAgPSBkc3Bfc3BlZWQgKiBod3BhcmFtcy5jaGFubmVscyAqICh1bnNpZ25lZCBpbnQp IHRtcDI7CisgI2Vsc2UKKyAJdG1wMiA9IGh3cGFyYW1zLmNoYW5uZWxzICogc25kX3BjbV9mb3Jt YXRfcGh5c2ljYWxfd2lkdGgoaHdwYXJhbXMuZm9ybWF0KSAvIDg7CisgCWYuYnl0ZV9wX3NwbCA9 IExFX1NIT1JUKHRtcDIpOworLQl0bXAgPSAodV9pbnQpIHRtcDIgKiBod3BhcmFtcy5yYXRlOwor Kwl0bXAgPSAodW5zaWduZWQgaW50KSB0bXAyICogaHdwYXJhbXMucmF0ZTsKKyAjZW5kaWYKKyAJ Zi5ieXRlX3Bfc2VjID0gTEVfSU5UKHRtcCk7CisgCWYuYml0X3Bfc3BsID0gTEVfU0hPUlQoYml0 cyk7CitAQCAtMjc4Niw5ICsyNzg2LDkgQEAgc3RhdGljIHZvaWQgZW5kX3ZvYyhpbnQgZmQpCisg CWNudCArPSBzaXplb2YoVm9jVm9pY2VEYXRhKTsJLyogQ2hhbm5lbF9kYXRhIGJsb2NrIGZvbGxv d3MgKi8KKyAJaWYgKGNudCA+IDB4MDBmZmZmZmYpCisgCQljbnQgPSAweDAwZmZmZmZmOworLQli dC5kYXRhbGVuID0gKHVfY2hhcikgKGNudCAmIDB4RkYpOworLQlidC5kYXRhbGVuX20gPSAodV9j aGFyKSAoKGNudCAmIDB4RkYwMCkgPj4gOCk7CistCWJ0LmRhdGFsZW5faCA9ICh1X2NoYXIpICgo Y250ICYgMHhGRjAwMDApID4+IDE2KTsKKysJYnQuZGF0YWxlbiA9ICh1bnNpZ25lZCBjaGFyKSAo Y250ICYgMHhGRik7CisrCWJ0LmRhdGFsZW5fbSA9ICh1bnNpZ25lZCBjaGFyKSAoKGNudCAmIDB4 RkYwMCkgPj4gOCk7CisrCWJ0LmRhdGFsZW5faCA9ICh1bnNpZ25lZCBjaGFyKSAoKGNudCAmIDB4 RkYwMDAwKSA+PiAxNik7CisgCWlmIChsc2VlayhmZCwgbGVuZ3RoX3NlZWssIFNFRUtfU0VUKSA9 PSBsZW5ndGhfc2VlaykKKyAJCXh3cml0ZShmZCwgJmJ0LCBzaXplb2YoVm9jQmxvY2tUeXBlKSk7 CisgfQorQEAgLTI3OTgsNyArMjc5OCw3IEBAIHN0YXRpYyB2b2lkIGVuZF93YXZlKGludCBmZCkK KyAJV2F2ZUNodW5rSGVhZGVyIGNkOworIAlvZmZfdCBsZW5ndGhfc2VlazsKKyAJb2ZmX3QgZmls ZWxlbjsKKy0JdV9pbnQgcmlmZmxlbjsKKysJdW5zaWduZWQgaW50IHJpZmZsZW47CisgCQorIAls ZW5ndGhfc2VlayA9IHNpemVvZihXYXZlSGVhZGVyKSArCisgCQkgICAgICBzaXplb2YoV2F2ZUNo dW5rSGVhZGVyKSArCitAQCAtMzMzOSw3ICszMzM5LDcgQEAgc3RhdGljIHZvaWQgcGxheWJhY2t2 X2dvKGludCogZmRzLCB1bnNpZ25lZCBpbnQgY2hhbm5lbHMsIHNpemVfdCBsb2FkZWQsIG9mZl90 IGMKKyAJc2l6ZV90IHZzaXplOworIAorIAl1bnNpZ25lZCBpbnQgY2hhbm5lbDsKKy0JdV9jaGFy ICpidWZzW2NoYW5uZWxzXTsKKysJdW5zaWduZWQgY2hhciAqYnVmc1tjaGFubmVsc107CisgCisg CWhlYWRlcihydHlwZSwgbmFtZXNbMF0pOworIAlzZXRfcGFyYW1zKCk7CitAQCAtMzM5Myw3ICsz MzkzLDcgQEAgc3RhdGljIHZvaWQgY2FwdHVyZXZfZ28oaW50KiBmZHMsIHVuc2lnbmVkIGludCBj aGFubmVscywgb2ZmX3QgY291bnQsIGludCBydHlwZSwKKyAJc3NpemVfdCByOworIAl1bnNpZ25l ZCBpbnQgY2hhbm5lbDsKKyAJc2l6ZV90IHZzaXplOworLQl1X2NoYXIgKmJ1ZnNbY2hhbm5lbHNd OworKwl1bnNpZ25lZCBjaGFyICpidWZzW2NoYW5uZWxzXTsKKyAKKyAJaGVhZGVyKHJ0eXBlLCBu YW1lc1swXSk7CisgCXNldF9wYXJhbXMoKTsKK2RpZmYgLS1naXQgYS9hcGxheS9mb3JtYXRzLmgg Yi9hcGxheS9mb3JtYXRzLmgKK2luZGV4IDA5M2FiODA5Li5hM2NmNmNiYSAxMDA2NDQKKy0tLSBh L2FwbGF5L2Zvcm1hdHMuaAorKysrIGIvYXBsYXkvZm9ybWF0cy5oCitAQCAtMTcsMjggKzE3LDI4 IEBACisgICAgICAgICAgICAgICAgICAgICAgICAgIAkoKHVfbG9uZykoYnAtPmRhdGFsZW5faCkg PDwgMTYpICkKKyAKKyB0eXBlZGVmIHN0cnVjdCB2b2NfaGVhZGVyIHsKKy0JdV9jaGFyIG1hZ2lj WzIwXTsJLyogbXVzdCBiZSBNQUdJQ19TVFJJTkcgKi8KKy0JdV9zaG9ydCBoZWFkZXJsZW47CS8q IEhlYWRlcmxlbmd0aCwgc2hvdWxkIGJlIDB4MUEgKi8KKy0JdV9zaG9ydCB2ZXJzaW9uOwkvKiBW T0MtZmlsZSB2ZXJzaW9uICovCistCXVfc2hvcnQgY29kZWRfdmVyOwkvKiAweDEyMzMtdmVyc2lv biAqLworKwl1bnNpZ25lZCBjaGFyIG1hZ2ljWzIwXTsJLyogbXVzdCBiZSBNQUdJQ19TVFJJTkcg Ki8KKysJdW5zaWduZWQgc2hvcnQgaGVhZGVybGVuOwkvKiBIZWFkZXJsZW5ndGgsIHNob3VsZCBi ZSAweDFBICovCisrCXVuc2lnbmVkIHNob3J0IHZlcnNpb247CS8qIFZPQy1maWxlIHZlcnNpb24g Ki8KKysJdW5zaWduZWQgc2hvcnQgY29kZWRfdmVyOwkvKiAweDEyMzMtdmVyc2lvbiAqLworIH0g Vm9jSGVhZGVyOworIAorIHR5cGVkZWYgc3RydWN0IHZvY19ibG9ja3R5cGUgeworLQl1X2NoYXIg dHlwZTsKKy0JdV9jaGFyIGRhdGFsZW47CQkvKiBsb3ctYnl0ZSAgICAqLworLQl1X2NoYXIgZGF0 YWxlbl9tOwkvKiBtZWRpdW0tYnl0ZSAqLworLQl1X2NoYXIgZGF0YWxlbl9oOwkvKiBoaWdoLWJ5 dGUgICAqLworKwl1bnNpZ25lZCBjaGFyIHR5cGU7CisrCXVuc2lnbmVkIGNoYXIgZGF0YWxlbjsJ CS8qIGxvdy1ieXRlICAgICovCisrCXVuc2lnbmVkIGNoYXIgZGF0YWxlbl9tOwkvKiBtZWRpdW0t Ynl0ZSAqLworKwl1bnNpZ25lZCBjaGFyIGRhdGFsZW5faDsJLyogaGlnaC1ieXRlICAgKi8KKyB9 IFZvY0Jsb2NrVHlwZTsKKyAKKyB0eXBlZGVmIHN0cnVjdCB2b2Nfdm9pY2VfZGF0YSB7CistCXVf Y2hhciB0YzsKKy0JdV9jaGFyIHBhY2s7CisrCXVuc2lnbmVkIGNoYXIgdGM7CisrCXVuc2lnbmVk IGNoYXIgcGFjazsKKyB9IFZvY1ZvaWNlRGF0YTsKKyAKKyB0eXBlZGVmIHN0cnVjdCB2b2NfZXh0 X2Jsb2NrIHsKKy0JdV9zaG9ydCB0YzsKKy0JdV9jaGFyIHBhY2s7CistCXVfY2hhciBtb2RlOwor Kwl1bnNpZ25lZCBzaG9ydCB0YzsKKysJdW5zaWduZWQgY2hhciBwYWNrOworKwl1bnNpZ25lZCBj aGFyIG1vZGU7CisgfSBWb2NFeHRCbG9jazsKKyAKKyAvKiBEZWZpbml0aW9ucyBmb3IgTWljcm9z b2Z0IFdBVkUgZm9ybWF0ICovCitAQCAtODUsMzIgKzg1LDMyIEBAIHR5cGVkZWYgc3RydWN0IHZv Y19leHRfYmxvY2sgeworICAgIGl0IHdvcmtzIG9uIGFsbCBXQVZFLWZpbGUgSSBoYXZlCisgICov CisgdHlwZWRlZiBzdHJ1Y3QgeworLQl1X2ludCBtYWdpYzsJCS8qICdSSUZGJyAqLworLQl1X2lu dCBsZW5ndGg7CQkvKiBmaWxlbGVuICovCistCXVfaW50IHR5cGU7CQkvKiAnV0FWRScgKi8KKysJ dW5zaWduZWQgaW50IG1hZ2ljOwkJLyogJ1JJRkYnICovCisrCXVuc2lnbmVkIGludCBsZW5ndGg7 CQkvKiBmaWxlbGVuICovCisrCXVuc2lnbmVkIGludCB0eXBlOwkJLyogJ1dBVkUnICovCisgfSBX YXZlSGVhZGVyOworIAorIHR5cGVkZWYgc3RydWN0IHsKKy0JdV9zaG9ydCBmb3JtYXQ7CQkvKiBz ZWUgV0FWX0ZNVF8qICovCistCXVfc2hvcnQgY2hhbm5lbHM7CistCXVfaW50IHNhbXBsZV9mcTsJ LyogZnJlcXVlbmNlIG9mIHNhbXBsZSAqLworLQl1X2ludCBieXRlX3Bfc2VjOworLQl1X3Nob3J0 IGJ5dGVfcF9zcGw7CS8qIHNhbXBsZXNpemU7IDEgb3IgMiBieXRlcyAqLworLQl1X3Nob3J0IGJp dF9wX3NwbDsJLyogOCwgMTIgb3IgMTYgYml0ICovCisrCXVuc2lnbmVkIHNob3J0IGZvcm1hdDsJ CS8qIHNlZSBXQVZfRk1UXyogKi8KKysJdW5zaWduZWQgc2hvcnQgY2hhbm5lbHM7CisrCXVuc2ln bmVkIGludCBzYW1wbGVfZnE7CS8qIGZyZXF1ZW5jZSBvZiBzYW1wbGUgKi8KKysJdW5zaWduZWQg aW50IGJ5dGVfcF9zZWM7CisrCXVuc2lnbmVkIHNob3J0IGJ5dGVfcF9zcGw7CS8qIHNhbXBsZXNp emU7IDEgb3IgMiBieXRlcyAqLworKwl1bnNpZ25lZCBzaG9ydCBiaXRfcF9zcGw7CS8qIDgsIDEy IG9yIDE2IGJpdCAqLworIH0gV2F2ZUZtdEJvZHk7CisgCisgdHlwZWRlZiBzdHJ1Y3QgeworIAlX YXZlRm10Qm9keSBmb3JtYXQ7CistCXVfc2hvcnQgZXh0X3NpemU7CistCXVfc2hvcnQgYml0X3Bf c3BsOworLQl1X2ludCBjaGFubmVsX21hc2s7CistCXVfc2hvcnQgZ3VpZF9mb3JtYXQ7CS8qIFdB Vl9GTVRfKiAqLworLQl1X2NoYXIgZ3VpZF90YWdbMTRdOwkvKiBXQVZfR1VJRF9UQUcgKi8KKysJ dW5zaWduZWQgc2hvcnQgZXh0X3NpemU7CisrCXVuc2lnbmVkIHNob3J0IGJpdF9wX3NwbDsKKysJ dW5zaWduZWQgaW50IGNoYW5uZWxfbWFzazsKKysJdW5zaWduZWQgc2hvcnQgZ3VpZF9mb3JtYXQ7 CS8qIFdBVl9GTVRfKiAqLworKwl1bnNpZ25lZCBjaGFyIGd1aWRfdGFnWzE0XTsJLyogV0FWX0dV SURfVEFHICovCisgfSBXYXZlRm10RXh0ZW5zaWJsZUJvZHk7CisgCisgdHlwZWRlZiBzdHJ1Y3Qg eworLQl1X2ludCB0eXBlOwkJLyogJ2RhdGEnICovCistCXVfaW50IGxlbmd0aDsJCS8qIHNhbXBs ZWNvdW50ICovCisrCXVuc2lnbmVkIGludCB0eXBlOwkJLyogJ2RhdGEnICovCisrCXVuc2lnbmVk IGludCBsZW5ndGg7CQkvKiBzYW1wbGVjb3VudCAqLworIH0gV2F2ZUNodW5rSGVhZGVyOworIAor IC8qIERlZmluaXRpb25zIGZvciBTcGFyYyAuYXUgaGVhZGVyICovCitAQCAtMTIyLDEyICsxMjIs MTIgQEAgdHlwZWRlZiBzdHJ1Y3QgeworICNkZWZpbmUgQVVfRk1UX0xJTjE2CQkzCisgCisgdHlw ZWRlZiBzdHJ1Y3QgYXVfaGVhZGVyIHsKKy0JdV9pbnQgbWFnaWM7CQkvKiAnLnNuZCcgKi8KKy0J dV9pbnQgaGRyX3NpemU7CQkvKiBzaXplIG9mIGhlYWRlciAobWluIDI0KSAqLworLQl1X2ludCBk YXRhX3NpemU7CS8qIHNpemUgb2YgZGF0YSAqLworLQl1X2ludCBlbmNvZGluZzsJCS8qIHNlZSB0 byBBVV9GTVRfWFhYWCAqLworLQl1X2ludCBzYW1wbGVfcmF0ZTsJLyogc2FtcGxlIHJhdGUgKi8K Ky0JdV9pbnQgY2hhbm5lbHM7CQkvKiBudW1iZXIgb2YgY2hhbm5lbHMgKHZvaWNlcykgKi8KKysJ dW5zaWduZWQgaW50IG1hZ2ljOwkJLyogJy5zbmQnICovCisrCXVuc2lnbmVkIGludCBoZHJfc2l6 ZTsJCS8qIHNpemUgb2YgaGVhZGVyIChtaW4gMjQpICovCisrCXVuc2lnbmVkIGludCBkYXRhX3Np emU7CS8qIHNpemUgb2YgZGF0YSAqLworKwl1bnNpZ25lZCBpbnQgZW5jb2Rpbmc7CQkvKiBzZWUg dG8gQVVfRk1UX1hYWFggKi8KKysJdW5zaWduZWQgaW50IHNhbXBsZV9yYXRlOwkvKiBzYW1wbGUg cmF0ZSAqLworKwl1bnNpZ25lZCBpbnQgY2hhbm5lbHM7CQkvKiBudW1iZXIgb2YgY2hhbm5lbHMg KHZvaWNlcykgKi8KKyB9IEF1SGVhZGVyOworIAorICNlbmRpZgkJCQkvKiBGT1JNQVRTICovCisK K2RpZmYgLS1naXQgYS9uaGx0L25obHQtZG1pYy1pbmZvLmMgYi9uaGx0L25obHQtZG1pYy1pbmZv LmMKK2luZGV4IDNmNmM2NGQ5Li5mMWIwODU3NCAxMDA2NDQKKy0tLSBhL25obHQvbmhsdC1kbWlj LWluZm8uYworKysrIGIvbmhsdC9uaGx0LWRtaWMtaW5mby5jCitAQCAtNDUsNyArNDUsNyBAQCBp bnQgZGVidWcgPSAwOworICNkZWZpbmUgTkhMVF9FUF9IRFJfU0laRSAoNCArIDEgKyAxICsgMiAr IDIgKyAyICsgNCArIDEgKyAxICsgMSkKKyAjZGVmaW5lIFZFTkRPUl9NSUNfQ0ZHX1NJWkUgKDEg KyAxICsgMiArIDIgKyAyICsgMSArIDEgKyAyICsgMiArIDIgKyAyICsgMiArIDIpCisgCistc3Rh dGljIGNvbnN0IGNoYXIgKm1pY3JvcGhvbmVfdHlwZSh1X2ludDhfdCB0eXBlKQorK3N0YXRpYyBj b25zdCBjaGFyICptaWNyb3Bob25lX3R5cGUodWludDhfdCB0eXBlKQorIHsKKyAJc3dpdGNoICh0 eXBlKSB7CisgCWNhc2UgMDogcmV0dXJuICJvbW5pZGlyZWN0aW9uYWwiOworQEAgLTU5LDcgKzU5 LDcgQEAgc3RhdGljIGNvbnN0IGNoYXIgKm1pY3JvcGhvbmVfdHlwZSh1X2ludDhfdCB0eXBlKQor IAlyZXR1cm4gInVua25vd24iOworIH0KKyAKKy1zdGF0aWMgY29uc3QgY2hhciAqbWljcm9waG9u ZV9sb2NhdGlvbih1X2ludDhfdCBsb2NhdGlvbikKKytzdGF0aWMgY29uc3QgY2hhciAqbWljcm9w aG9uZV9sb2NhdGlvbih1aW50OF90IGxvY2F0aW9uKQorIHsKKyAJc3dpdGNoIChsb2NhdGlvbikg eworIAljYXNlIDA6IHJldHVybiAibGFwdG9wLXRvcC1wYW5lbCI7CitAQCAtNzMsMjEgKzczLDIx IEBAIHN0YXRpYyBjb25zdCBjaGFyICptaWNyb3Bob25lX2xvY2F0aW9uKHVfaW50OF90IGxvY2F0 aW9uKQorIH0KKyAKKyAKKy1zdGF0aWMgaW5saW5lIHVfaW50OF90IGdldF91OCh1X2ludDhfdCAq YmFzZSwgdV9pbnQzMl90IG9mZikKKytzdGF0aWMgaW5saW5lIHVpbnQ4X3QgZ2V0X3U4KHVpbnQ4 X3QgKmJhc2UsIHVpbnQzMl90IG9mZikKKyB7CisgCXJldHVybiAqKGJhc2UgKyBvZmYpOworIH0K KyAKKy1zdGF0aWMgaW5saW5lIGludDMyX3QgZ2V0X3MxNmxlKHVfaW50OF90ICpiYXNlLCB1X2lu dDMyX3Qgb2ZmKQorK3N0YXRpYyBpbmxpbmUgaW50MzJfdCBnZXRfczE2bGUodWludDhfdCAqYmFz ZSwgdWludDMyX3Qgb2ZmKQorIHsKKy0JdV9pbnQzMl90IHYgPSAgKihiYXNlICsgb2ZmICsgMCkg fAorKwl1aW50MzJfdCB2ID0gICooYmFzZSArIG9mZiArIDApIHwKKyAJCSAgICAgICgqKGJhc2Ug KyBvZmYgKyAxKSA8PCA4KTsKKyAJaWYgKHYgJiAweDgwMDApCisgCQlyZXR1cm4gLSgoaW50MzJf dCkweDEwMDAwIC0gKGludDMyX3Qpdik7CisgCXJldHVybiB2OworIH0KKyAKKy1zdGF0aWMgaW5s aW5lIHVfaW50MzJfdCBnZXRfdTMybGUodV9pbnQ4X3QgKmJhc2UsIHVfaW50MzJfdCBvZmYpCisr c3RhdGljIGlubGluZSB1aW50MzJfdCBnZXRfdTMybGUodWludDhfdCAqYmFzZSwgdWludDMyX3Qg b2ZmKQorIHsKKyAJcmV0dXJuICAgKihiYXNlICsgb2ZmICsgMCkgfAorIAkJKCooYmFzZSArIG9m ZiArIDEpIDw8IDgpIHwKK0BAIC0xMzcsMTAgKzEzNywxMCBAQCBzdGF0aWMgaW50IG5obHRfZG1p Y19jb25maWcoRklMRSAqb3V0LCB1aW50OF90ICpkbWljLCB1aW50OF90IG1pYykKKyAJcmV0dXJu IDA7CisgfQorIAorLXN0YXRpYyBpbnQgbmhsdF9kbWljX2VwX3RvX2pzb24oRklMRSAqb3V0LCB1 aW50OF90ICplcCwgdV9pbnQzMl90IGVwX3NpemUpCisrc3RhdGljIGludCBuaGx0X2RtaWNfZXBf dG9fanNvbihGSUxFICpvdXQsIHVpbnQ4X3QgKmVwLCB1aW50MzJfdCBlcF9zaXplKQorIHsKKy0J dV9pbnQzMl90IG9mZiwgc3BlY2lmaWNfY2ZnX3NpemU7CistCXVfaW50OF90IGNvbmZpZ190eXBl LCBhcnJheV90eXBlLCBtaWMsIG51bV9taWNzOworKwl1aW50MzJfdCBvZmYsIHNwZWNpZmljX2Nm Z19zaXplOworKwl1aW50OF90IGNvbmZpZ190eXBlLCBhcnJheV90eXBlLCBtaWMsIG51bV9taWNz OworIAlpbnQgcmVzOworIAorIAlvZmYgPSBOSExUX0VQX0hEUl9TSVpFOworQEAgLTE4MSwxNSAr MTgxLDE1IEBAIHN0YXRpYyBpbnQgbmhsdF9kbWljX2VwX3RvX2pzb24oRklMRSAqb3V0LCB1aW50 OF90ICplcCwgdV9pbnQzMl90IGVwX3NpemUpCisgCXJldHVybiAtRUlOVkFMOworIH0KKyAKKy1z dGF0aWMgaW50IG5obHRfdGFibGVfdG9fanNvbihGSUxFICpvdXQsIHVfaW50OF90ICpuaGx0LCB1 X2ludDMyX3Qgc2l6ZSkKKytzdGF0aWMgaW50IG5obHRfdGFibGVfdG9fanNvbihGSUxFICpvdXQs IHVpbnQ4X3QgKm5obHQsIHVpbnQzMl90IHNpemUpCisgeworLQl1X2ludDMyX3QgX3NpemUsIG9m ZiwgZXBfc2l6ZTsKKy0JdV9pbnQ4X3Qgc3VtID0gMCwgZXAsIGVwX2NvdW50LCBsaW5rX3R5cGUs IGRtaWNzID0gMDsKKysJdWludDMyX3QgX3NpemUsIG9mZiwgZXBfc2l6ZTsKKysJdWludDhfdCBz dW0gPSAwLCBlcCwgZXBfY291bnQsIGxpbmtfdHlwZSwgZG1pY3MgPSAwOworIAlpbnQgcmVzOwor IAorIAlfc2l6ZSA9IGdldF91MzJsZShuaGx0LCA0KTsKKyAJaWYgKF9zaXplICE9IHNpemUpIHsK Ky0JCWZwcmludGYoc3RkZXJyLCAiVGFibGUgc2l6ZSBtaXNtYXRjaCAoJTA4eCAhPSAlMDh4KVxu IiwgX3NpemUsICh1X2ludDMyX3Qpc2l6ZSk7CisrCQlmcHJpbnRmKHN0ZGVyciwgIlRhYmxlIHNp emUgbWlzbWF0Y2ggKCUwOHggIT0gJTA4eClcbiIsIF9zaXplLCAodWludDMyX3Qpc2l6ZSk7Cisg CQlyZXR1cm4gLUVJTlZBTDsKKyAJfQorIAlmb3IgKG9mZiA9IDA7IG9mZiA8IHNpemU7IG9mZisr KQorQEAgLTIzMSw3ICsyMzEsNyBAQCBzdGF0aWMgaW50IG5obHRfdGFibGVfdG9fanNvbihGSUxF ICpvdXQsIHVfaW50OF90ICpuaGx0LCB1X2ludDMyX3Qgc2l6ZSkKKyBzdGF0aWMgaW50IG5obHRf dG9fanNvbihGSUxFICpvdXQsIGNvbnN0IGNoYXIgKm5obHRfZmlsZSkKKyB7CisgCXN0cnVjdCBz dGF0IHN0OworLQl1X2ludDhfdCAqYnVmOworKwl1aW50OF90ICpidWY7CisgCWludCBfZXJybm8s IGZkLCByZXM7CisgCXNpemVfdCBwb3MsIHNpemU7CisgCXNzaXplX3QgcmV0OworZGlmZiAtLWdp dCBhL3RvcG9sb2d5L3RvcG9sb2d5LmMgYi90b3BvbG9neS90b3BvbG9neS5jCitpbmRleCAxODQw ZmZlNi4uOThiMDAwYWEgMTAwNjQ0CistLS0gYS90b3BvbG9neS90b3BvbG9neS5jCisrKysgYi90 b3BvbG9neS90b3BvbG9neS5jCitAQCAtMzYsNiArMzYsOSBAQAorICNpbmNsdWRlIDxhbHNhL2Fz b3VuZGxpYi5oPgorICNpbmNsdWRlIDxhbHNhL3RvcG9sb2d5Lmg+CisgI2luY2x1ZGUgImdldHRl eHQuaCIKKysjaWZkZWYgRU5BQkxFX05MUworKyNpbmNsdWRlIDxsb2NhbGUuaD4KKysjZW5kaWYK KyAjaW5jbHVkZSAidmVyc2lvbi5oIgorICNpbmNsdWRlICJ0b3BvbG9neS5oIgorIApkaWZmIC0t Z2l0IGEvc3JjcGtncy9hbHNhLXV0aWxzL3RlbXBsYXRlIGIvc3JjcGtncy9hbHNhLXV0aWxzL3Rl bXBsYXRlCmluZGV4IDkwY2Y1ZTYxZWM2MDAuLjEyMDZjMmUxYjIzMjQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYWxzYS11dGlscy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Fsc2EtdXRpbHMvdGVtcGxh dGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhbHNhLXV0aWxzJwogcGtn bmFtZT1hbHNhLXV0aWxzCi12ZXJzaW9uPTEuMi45Cit2ZXJzaW9uPTEuMi4xMAogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC11ZGV2 LXJ1bGVzLWRpcj0vdXNyL2xpYi91ZGV2L3J1bGVzLmQgLS1kaXNhYmxlLWFsc2Fjb25mCkBAIC0x Myw4ICsxMyw4IEBAIHNob3J0X2Rlc2M9IkFkdmFuY2VkIExpbnV4IFNvdW5kIEFyY2hpdGVjdHVy ZSAoQUxTQSkgdXRpbGl0aWVzIgogbWFpbnRhaW5lcj0iY2luZXJlYTAgPGNpbmVyZWEwQHByb3Rv bm1haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb25seSIKIGhvbWVwYWdlPSJodHRwOi8vd3d3 LmFsc2EtcHJvamVjdC5vcmciCi1kaXN0ZmlsZXM9Imh0dHBzOi8vd3d3LmFsc2EtcHJvamVjdC5v cmcvZmlsZXMvcHViL3V0aWxzLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuYnoyIgotY2hlY2tz dW09ZTc2MjNkNDUyNTU5NWY5MmUxMWNlMjVlZTlhOTdmMjA0MGExNGM2ZTRkY2QwMjdhYTk2ZTA2 Y2JjZTc4MTdiZAorZGlzdGZpbGVzPSJodHRwczovL3d3dy5hbHNhLXByb2plY3Qub3JnL2ZpbGVz L3B1Yi91dGlscy9hbHNhLXV0aWxzLSR7dmVyc2lvbn0udGFyLmJ6MiIKK2NoZWNrc3VtPTEwNGI2 MmVjN2YwMmE3Y2UxNmNhNzc5ZjQ4MTU2MTZkZjFjYzIxOTMzNTAzNzgzYTkxMDdiNTk0NGY4MzA2 M2EKIAogcG9zdF9pbnN0YWxsKCkgewogCSMgSW5zdGFsbCByZXF1aXJlZCB1ZGV2IHJ1bGVzIGZp bGUuCgpGcm9tIDgwODI0ZDAxYzg2ODNjNzNiMzgxNjAzZGQ5MDY1MzdlYjJkMDllNjMgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IGNpbmVyZWEwIDxjaW5lcmVhMEBkaXNyb290Lm9yZz4K RGF0ZTogTW9uLCAxMSBTZXAgMjAyMyAxMzowNzowOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMy8z XSBhbHNhLXVjbS1jb25mOiB1cGRhdGUgdG8gMS4yLjEwCgotLS0KIHNyY3BrZ3MvYWxzYS11Y20t Y29uZi90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS11Y20tY29uZi90ZW1w bGF0ZSBiL3NyY3BrZ3MvYWxzYS11Y20tY29uZi90ZW1wbGF0ZQppbmRleCBhOTY1OTczY2IxZGNl Li5kMDJmMjI4ODk1ZWY2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Fsc2EtdWNtLWNvbmYvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9hbHNhLXVjbS1jb25mL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhbHNhLXVjbS1jb25mJwogcGtnbmFtZT1hbHNhLXVjbS1j b25mCi12ZXJzaW9uPTEuMi45Cit2ZXJzaW9uPTEuMi4xMAogcmV2aXNpb249MQogc2hvcnRfZGVz Yz0iQUxTQSBVc2UgQ2FzZSBNYW5hZ2VyIHRvcG9sb2d5IGNvbmZpZ3VyYXRpb25zIgogbWFpbnRh aW5lcj0iY2luZXJlYTAgPGNpbmVyZWEwQHByb3Rvbm1haWwuY29tPiIKIGxpY2Vuc2U9IkJTRC0z LUNsYXVzZSIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vYWxzYS1wcm9qZWN0L2Fsc2Et dWNtLWNvbmYiCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9hbHNhLXByb2plY3QvJHtw a2duYW1lfS9hcmNoaXZlL3JlZnMvdGFncy92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0x YzQwNjE4MTYxYmMyNzM4YzU1YWFiNGRlZTFkMGM4MjUxNGUyNTcxMTZmMjk2ODE1YTc5OWFkZWFh YjVlNDhiCitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9hbHNhLXByb2plY3QvYWxzYS11 Y20tY29uZi9hcmNoaXZlL3JlZnMvdGFncy92JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT0w MGU2N2MzMWI2MDQ5NDY2NWY0NWNlNTdjYTlkMmM0MjQyMWM0MGZiZTAxNDBiNWE1NjQ4MjkxMjM4 ZTYzNTA4CiAKIGRvX2luc3RhbGwoKSB7CiAJdmRvYyB1Y20yL1JFQURNRS5tZAo= --===============1224369787348661828==--