From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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.2 Received: from inbox.vuxu.org (localhost [IPv6:::1]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 18c4930f for ; Sun, 15 Sep 2019 09:51:00 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============6119934362115947059==" MIME-Version: 1.0 Subject: Re: [PR PATCH] [Updated] Update MEGA* To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sun, 15 Sep 2019 11:51:00 +0200 Message-ID: <20190915095100.VYUxwmSazpi-V6Cnx56JkK5eCfpF_eGSvnDVcO5ZXhc@z> GitHub notification mails are now in MIME to allow UTF8. --===============6119934362115947059== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgSm9obm55bmF0b3IgYWdhaW5zdCBt YXN0ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29t L0pvaG5ueW5hdG9yL3ZvaWQtcGFja2FnZXMgTUVHQQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMTQ0MzkKClVwZGF0ZSBNRUdBKgoKCkEgcGF0Y2ggZmls ZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8x NDQzOS5wYXRjaCBpcyBhdHRhY2hlZA== --===============6119934362115947059== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-MEGA-14439.patch" RnJvbSA1OGUxNzlkNTNiMjdjYWFlMjA4ZmRlN2IwZDU0OGNlODZiMjcyOGRlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBGcmksIDEz IFNlcCAyMDE5IDIxOjUwOjM0ICswMzAwClN1YmplY3Q6IFtQQVRDSCAxLzNdIE1FR0FzZGs6IHVw ZGF0ZSB0byAzLjYuMmEuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICB8IDIgKy0KIHNy Y3BrZ3MvTUVHQXNkay90ZW1wbGF0ZSB8IDQgKystLQogMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2Vy dGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2Nv bW1vbi9zaGxpYnMKaW5kZXggMzBiM2I0NjUzZDUuLmRlODhlNzU0YWU3IDEwMDY0NAotLS0gYS9j b21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTI5NTMsNyArMjk1Myw3IEBAIGxp YnZ0ZWQtMy5zby4wIGxpYnZ0ZWQtMy43LjBfMgogbGlicGVhc2QtMy5zby4wIGxpYnBlYXNkLTMu Ny4wXzIKIGxpYmdzdHJlYW1lcmQtMy5zby4wIGxpYmdzdHJlYW1lcmQtMy43LjBfMgogbGliZ3Rr ZGdsLTMuc28uMCBsaWJndGtkZ2wtMy43LjBfMgotbGlibWVnYS5zby4zMDUwNCBNRUdBc2RrLTMu NS40XzEKK2xpYm1lZ2Euc28uMzA2MDIgTUVHQXNkay0zLjYuMmFfMQogbGlib3BlbmdscmVjb3Jk ZXIuc28uMCBsaWJvcGVuZ2xyZWNvcmRlci0wLjEuMF8xCiBsaWJncG9kLnNvLjQgbGliZ3BvZC0w LjguM18xCiBsaWJpMmMuc28uMCBpMmMtdG9vbHMtNC4wXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv TUVHQXNkay90ZW1wbGF0ZSBiL3NyY3BrZ3MvTUVHQXNkay90ZW1wbGF0ZQppbmRleCBhN2E5OTc3 MzkzZS4uODY0YjcwYTdhZGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvTUVHQXNkay90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL01FR0FzZGsvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdNRUdBc2RrJwogcGtnbmFtZT1NRUdBc2RrCi12ZXJzaW9uPTMuNS40Cit2ZXJz aW9uPTMuNi4yYQogcmV2aXNpb249MQogd3Jrc3JjPSJzZGstJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKQEAgLTE2LDcgKzE2LDcgQEAgbWFpbnRhaW5lcj0iSm9obiA8am9o bnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJCU0QtMi1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6 Ly9tZWdhLm56IgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vbWVnYW56L3Nkay9hcmNo aXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTdmYzgxYTY0YTc3ODI5YmJjOGRkMzE2 YWFjMjE1OTg5MGE1NTZkZmRlYWRlNTI3YTEzODY0ODJlNmRlZTI2ZWUKK2NoZWNrc3VtPTIyZDkx MGJjZDc5OWYzMGE0OTlmZTc0OGNjMmIzOTE3ZTllMjEzNTU4YjFkNWZiYTA3YjNmMzkwOGE4MzM4 OTcKIHJlcGxhY2VzPSJsaWJtZWdhPj0wIgogCiBidWlsZF9vcHRpb25zPSJsaWJ1diBtZWRpYWlu Zm8iCgpGcm9tIDYwMmEzZWU1ODBmYmVmZGY1OTliNjRkNjg3MTFhZWEyODEzMjAxZmEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IEZy aSwgMTMgU2VwIDIwMTkgMjI6MzQ6MjQgKzAzMDAKU3ViamVjdDogW1BBVENIIDIvM10gTUVHQXN5 bmM6IHVwZGF0ZSB0byA0LjIuNC4wLgoKLS0tCiBzcmNwa2dzL01FR0FzeW5jL3BhdGNoZXMvYnJl YWtwYWQucGF0Y2ggfCAxNiArKysrKysrKysrKysrKysrCiBzcmNwa2dzL01FR0FzeW5jL3RlbXBs YXRlICAgICAgICAgICAgICAgfCAxMiArKysrKystLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMjIg aW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L01FR0FzeW5jL3BhdGNoZXMvYnJlYWtwYWQucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL01F R0FzeW5jL3BhdGNoZXMvYnJlYWtwYWQucGF0Y2ggYi9zcmNwa2dzL01FR0FzeW5jL3BhdGNoZXMv YnJlYWtwYWQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjM2 NDk1YWY0NDYwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9NRUdBc3luYy9wYXRjaGVzL2Jy ZWFrcGFkLnBhdGNoCkBAIC0wLDAgKzEsMTYgQEAKKy0tLSBzcmMvTUVHQVN5bmMvZ29vZ2xlX2Jy ZWFrcGFkL2NsaWVudC9saW51eC9oYW5kbGVyL2V4Y2VwdGlvbl9oYW5kbGVyLmNjCTIwMTktMDkt MTMgMjI6Mjc6MjMuMzUxNzIzMDczICswMzAwCisrKysgLQkyMDE5LTA5LTEzIDIyOjMzOjA4LjI0 NDMxMjY4OCArMDMwMAorQEAgLTEwNCwxMSArMTA0LDEzIEBACisgI2RlZmluZSBQUl9TRVRfUFRS QUNFUiAweDU5NjE2ZDYxCisgI2VuZGlmCisgCisrI2lmIGRlZmluZWQoX19HTElCQ19fKSAmJiBf X0dMSUJDX18gPCAyICYmIF9fR0xJQkNfTUlOT1JfXyA8IDMwCisgLy8gQSB3cmFwcGVyIGZvciB0 aGUgdGdraWxsIHN5c2NhbGw6IHNlbmQgYSBzaWduYWwgdG8gYSBzcGVjaWZpYyB0aHJlYWQuCisg c3RhdGljIGludCB0Z2tpbGwocGlkX3QgdGdpZCwgcGlkX3QgdGlkLCBpbnQgc2lnKSB7CisgICBy ZXR1cm4gc3lzY2FsbChfX05SX3Rna2lsbCwgdGdpZCwgdGlkLCBzaWcpOworICAgcmV0dXJuIDA7 CisgfQorKyNlbmRpZgorIAorIG5hbWVzcGFjZSBnb29nbGVfYnJlYWtwYWQgeworIApkaWZmIC0t Z2l0IGEvc3JjcGtncy9NRUdBc3luYy90ZW1wbGF0ZSBiL3NyY3BrZ3MvTUVHQXN5bmMvdGVtcGxh dGUKaW5kZXggOTEzZThmZTdkZWUuLjRiNjY4NjhiMDZlIDEwMDY0NAotLS0gYS9zcmNwa2dzL01F R0FzeW5jL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvTUVHQXN5bmMvdGVtcGxhdGUKQEAgLTEsMjAg KzEsMjAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ01FR0FzeW5jJwogcGtnbmFtZT1NRUdBc3lu YwotdmVyc2lvbj00LjEuMS4wCit2ZXJzaW9uPTQuMi40LjAKIHJldmlzaW9uPTEKLXdya3NyYz0i JHtwa2duYW1lfS0ke3ZlcnNpb259X0xpbnV4Igord3Jrc3JjPSIke3BrZ25hbWV9LSR7dmVyc2lv bn1fV2luIgogYnVpbGRfd3Jrc3JjPXNyYwogYnVpbGRfc3R5bGU9cW1ha2UKLWNvbmZpZ3VyZV9h cmdzPSciQ09ORklHLT13aXRoX3Rvb2xzIicKK2NvbmZpZ3VyZV9hcmdzPSciQ09ORklHKz1GVUxM UkVRVUlSRU1FTlRTIicKIGhvc3RtYWtlZGVwZW5kcz0ibGlidG9vbCBxdDUtcW1ha2UgcXQ1LWhv c3QtdG9vbHMiCiBtYWtlZGVwZW5kcz0icXQ1LXRvb2xzLWRldmVsIHF0NS1kZXZlbCBxdDUtc3Zn LWRldmVsIE1FR0FzZGstZGV2ZWwgTUVHQXNkay1xdAogIGxpYnJhdy1kZXZlbCBsaWJnb21wLWRl dmVsIgogc2hvcnRfZGVzYz0iQXV0b21hdGVkIHN5bmNpbmcgd2l0aCBNRUdBIENsb3VkIERyaXZl IgogbWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCi1saWNlbnNlPSJjdXN0b20i CitsaWNlbnNlPSJjdXN0b206IFByb3ByaWV0YXJ5IgogaG9tZXBhZ2U9Imh0dHBzOi8vbWVnYS5j by5ueiIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL21lZ2Fuei9NRUdBc3luYy9hcmNo aXZlL3Yke3ZlcnNpb259X0xpbnV4LnRhci5neiIKLWNoZWNrc3VtPTVmNDNhM2Y0MDJjMTA1MTll MmY1OWM4YzJhNzBjNTVhZmZkM2ViMWEzMjM3NjcxMjc5MjlmYjVmNGJhYTQyOWMKK2Rpc3RmaWxl cz0iaHR0cHM6Ly9naXRodWIuY29tL21lZ2Fuei9NRUdBc3luYy9hcmNoaXZlL3Yke3ZlcnNpb259 X1dpbi50YXIuZ3oiCitjaGVja3N1bT01ZmQ5MGM5MzY3NzA4NWEyZjczZmFhNmE1YTM1NDhmY2Qy OWZjOWYzMjAzZjZkZGJjYWM3ZjE3MGI1ODBmMjM5CiByZXN0cmljdGVkPXllcwogbm9jcm9zcz15 ZXMKIAoKRnJvbSA5YjAwM2ExMTQwZTgzNDc4YjAxMjkwNzc2NzYzOTUyOTZiOTU4OGJjIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBT dW4sIDE1IFNlcCAyMDE5IDExOjI3OjM5ICswMzAwClN1YmplY3Q6IFtQQVRDSCAzLzNdIE1FR0Fj bWQ6IHVwZGF0ZSB0byAxLjEuMC4KCi0tLQogc3JjcGtncy9NRUdBY21kL3BhdGNoZXMvaW5jbHVk ZS5hbS5wYXRjaCAgIHwgIDE2ICstCiBzcmNwa2dzL01FR0FjbWQvcGF0Y2hlcy9tZWdhY21kLXNk azM2LmRpZmYgfCAzODEgKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL01FR0FjbWQvcGF0 Y2hlcy9tdXNsLnBhdGNoICAgICAgICAgfCAgMTMgLQogc3JjcGtncy9NRUdBY21kL3RlbXBsYXRl ICAgICAgICAgICAgICAgICAgIHwgICA5ICstCiA0IGZpbGVzIGNoYW5nZWQsIDM5MCBpbnNlcnRp b25zKCspLCAyOSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL01FR0Fj bWQvcGF0Y2hlcy9tZWdhY21kLXNkazM2LmRpZmYKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L01FR0FjbWQvcGF0Y2hlcy9tdXNsLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9NRUdBY21k L3BhdGNoZXMvaW5jbHVkZS5hbS5wYXRjaCBiL3NyY3BrZ3MvTUVHQWNtZC9wYXRjaGVzL2luY2x1 ZGUuYW0ucGF0Y2gKaW5kZXggNDVlMWE5ZmNkZDUuLjY2YTBkNzI4N2Q0IDEwMDY0NAotLS0gYS9z cmNwa2dzL01FR0FjbWQvcGF0Y2hlcy9pbmNsdWRlLmFtLnBhdGNoCisrKyBiL3NyY3BrZ3MvTUVH QWNtZC9wYXRjaGVzL2luY2x1ZGUuYW0ucGF0Y2gKQEAgLTEsMjAgKzEsMTIgQEAKLS0tLSBzcmMv aW5jbHVkZS5hbS5vcmlnCTIwMTctMTItMDEgMjM6NTY6MzYuMTk5MDQ0Nzg2ICswMTAwCi0rKysg c3JjL2luY2x1ZGUuYW0JMjAxNy0xMi0wMSAyMzo1Njo1NC4wNzMwNDU0NjcgKzAxMDAKLUBAIC03 LDcgKzcsNyBAQAorLS0tIHNyYy9pbmNsdWRlLmFtCTIwMTktMDktMTUgMTE6MTk6MjEuMTM5NDMw NTIwICswMzAwCisrKysgLQkyMDE5LTA5LTE1IDExOjIwOjI0LjIzNDk5NDM0NSArMDMwMAorQEAg LTcsOSArNyw5IEBACiAgCiAgTUVHQUNNRCA9IG1lZ2EtY21kIG1lZ2EtZXhlYyBtZWdhLWNtZC1z ZXJ2ZXIKICBiaW5fUFJPR1JBTVMgKz0gJChNRUdBQ01EKQogLSQoTUVHQUNNRCk6ICQoTUVHQV9M SUJTKQogKyQoTUVHQUNNRCk6Ci0gbm9pbnN0X0hFQURFUlMgKz0gc3JjL2NvbXVuaWNhdGlvbnNt YW5hZ2VyLmggc3JjL2NvbmZpZ3VyYXRpb25tYW5hZ2VyLmggc3JjL21lZ2FjbWQuaCBzcmMvbWVn YWNtZGxvZ2dlci5oIHNyYy9tZWdhY21kc2FuZGJveC5oIHNyYy9tZWdhY21kdXRpbHMuaCBzcmMv bGlzdGVuZXJzLmggc3JjL21lZ2FjbWRleGVjdXRlci5oIHNyYy9tZWdhY21kdmVyc2lvbi5oIHNy Yy9tZWdhY21kcGxhdGZvcm0uaCBzcmMvY29tdW5pY2F0aW9uc21hbmFnZXJwb3J0c29ja2V0cy5o Ci0gbWVnYWNtZGNvbXBsZXRpb25kaXIgPSAkKHN5c2NvbmZkaXIpL2Jhc2hfY29tcGxldGlvbi5k LwotIG1lZ2FjbWRjb21wbGV0aW9uX0RBVEEgPSBzcmMvY2xpZW50L21lZ2FjbWRfY29tcGxldGlv bi5zaAotLS0tIHNyYy9pbmNsdWRlLmFtCTIwMTgtMTItMDYgMTQ6NDI6MTguMzA4NTg5ODY4ICsw MTAwCi0rKysgLQkyMDE4LTEyLTA2IDE0OjQ1OjE1LjA3NTc4NTQ4NyArMDEwMAotQEAgLTksNyAr OSw3IEBACi0gYmluX1BST0dSQU1TICs9ICQoTUVHQUNNRCkKLSAkKE1FR0FDTUQpOgotIG5vaW5z dF9IRUFERVJTICs9IHNyYy9jb211bmljYXRpb25zbWFuYWdlci5oIHNyYy9jb25maWd1cmF0aW9u bWFuYWdlci5oIHNyYy9tZWdhY21kLmggc3JjL21lZ2FjbWRsb2dnZXIuaCBzcmMvbWVnYWNtZHNh bmRib3guaCBzcmMvbWVnYWNtZHV0aWxzLmggc3JjL2xpc3RlbmVycy5oIHNyYy9tZWdhY21kZXhl Y3V0ZXIuaCBzcmMvbWVnYWNtZHZlcnNpb24uaCBzcmMvbWVnYWNtZHBsYXRmb3JtLmggc3JjL2Nv bXVuaWNhdGlvbnNtYW5hZ2VycG9ydHNvY2tldHMuaAorIG5vaW5zdF9IRUFERVJTICs9IHNyYy9j b211bmljYXRpb25zbWFuYWdlci5oIHNyYy9jb25maWd1cmF0aW9ubWFuYWdlci5oIHNyYy9tZWdh Y21kLmggc3JjL21lZ2FjbWRsb2dnZXIuaCBzcmMvbWVnYWNtZHNhbmRib3guaCBzcmMvbWVnYWNt ZHV0aWxzLmggc3JjL21lZ2FjbWRjb21tb251dGlscy5oIHNyYy9saXN0ZW5lcnMuaCBzcmMvbWVn YWNtZGV4ZWN1dGVyLmggc3JjL21lZ2FjbWR2ZXJzaW9uLmggc3JjL21lZ2FjbWRwbGF0Zm9ybS5o IHNyYy9jb211bmljYXRpb25zbWFuYWdlcnBvcnRzb2NrZXRzLmgKIC1tZWdhY21kY29tcGxldGlv bmRpciA9ICQoc3lzY29uZmRpcikvYmFzaF9jb21wbGV0aW9uLmQvCiArbWVnYWNtZGNvbXBsZXRp b25kaXIgPSAkKGRhdGFyb290ZGlyKS9iYXNoLWNvbXBsZXRpb24vY29tcGxldGlvbnMKICBtZWdh Y21kY29tcGxldGlvbl9EQVRBID0gc3JjL2NsaWVudC9tZWdhY21kX2NvbXBsZXRpb24uc2gKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvTUVHQWNtZC9wYXRjaGVzL21lZ2FjbWQtc2RrMzYuZGlmZiBiL3Ny Y3BrZ3MvTUVHQWNtZC9wYXRjaGVzL21lZ2FjbWQtc2RrMzYuZGlmZgpuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYTMwYTE0MjE1NmUKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL01FR0FjbWQvcGF0Y2hlcy9tZWdhY21kLXNkazM2LmRpZmYKQEAgLTAsMCArMSwzODEg QEAKKy0tLSBzcmMvY29tdW5pY2F0aW9uc21hbmFnZXJmaWxlc29ja2V0cy5jcHAKKysrKyBzcmMv Y29tdW5pY2F0aW9uc21hbmFnZXJmaWxlc29ja2V0cy5jcHAKK0BAIC0xMzQsMTQgKzEzNCwxMyBA QCBpbnQgQ29tdW5pY2F0aW9uc01hbmFnZXJGaWxlU29ja2V0czo6Y3JlYXRlX25ld19zb2NrZXQo aW50ICpzb2NrSWQpCisgQ29tdW5pY2F0aW9uc01hbmFnZXJGaWxlU29ja2V0czo6Q29tdW5pY2F0 aW9uc01hbmFnZXJGaWxlU29ja2V0cygpCisgeworICAgICBjb3VudCA9IDA7CistICAgIG10eCA9 IG5ldyBNZWdhTXV0ZXgoKTsKKy0gICAgaW5mb3JtZXJNdXRleCA9IG5ldyBNZWdhTXV0ZXgoZmFs c2UpOworKyAgICBtdHggPSBuZXcgc3RkOjpyZWN1cnNpdmVfbXV0ZXgoKTsKKysgICAgaW5mb3Jt ZXJNdXRleCA9IG5ldyBzdGQ6OnJlY3Vyc2l2ZV9tdXRleCgpOworICAgICBpbml0aWFsaXplKCk7 CisgfQorIAorIGludCBDb211bmljYXRpb25zTWFuYWdlckZpbGVTb2NrZXRzOjppbml0aWFsaXpl KCkKKyB7CistICAgIG10eC0+aW5pdChmYWxzZSk7CisgCisgICAgIE1lZ2FGaWxlU3lzdGVtQWNj ZXNzICpmc0FjY2VzcyA9IG5ldyBNZWdhRmlsZVN5c3RlbUFjY2VzcygpOworICAgICBjaGFyIGNz b2NrZXRzRm9sZGVyWzM0XTsgLy8gZW5vdWdoIHRvIGhvbGQgYWxsIG51bWJlcnMgdXAgdG8gNjQt Yml0cworQEAgLTM5NCw3ICszOTMsNyBAQCB2b2lkIENvbXVuaWNhdGlvbnNNYW5hZ2VyRmlsZVNv Y2tldHM6OnNlbmRQYXJ0aWFsT3V0cHV0KENtZFBldGl0aW9uICppbmYsIE9VVFNUUgorIAorIGlu dCBDb211bmljYXRpb25zTWFuYWdlckZpbGVTb2NrZXRzOjppbmZvcm1TdGF0ZUxpc3RlbmVyKENt ZFBldGl0aW9uICppbmYsIHN0cmluZyAmcykKKyB7CistICAgIE11dGV4R3VhcmQgZygqaW5mb3Jt ZXJNdXRleCk7CisrICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6OnJlY3Vyc2l2ZV9tdXRleD4gZygq aW5mb3JtZXJNdXRleCk7CisgICAgIExPR192ZXJib3NlIDw8ICJJbmZvcm0gU3RhdGUgTGlzdGVu ZXI6IE91dHB1dCB0byB3cml0ZSBpbiBzb2NrZXQgIiA8PCAoKENtZFBldGl0aW9uUG9zaXhTb2Nr ZXRzICopaW5mKS0+b3V0U29ja2V0IDw8ICI6IDw8IiA8PCBzIDw8ICI+PiI7CisgCisgICAgIHNv Y2thZGRyX2luIGNsaUFkZHI7CistLS0gc3JjL2NvbXVuaWNhdGlvbnNtYW5hZ2VyZmlsZXNvY2tl dHMuaAorKysrIHNyYy9jb211bmljYXRpb25zbWFuYWdlcmZpbGVzb2NrZXRzLmgKK0BAIC01OCw4 ICs1OCw4IEBAIHByaXZhdGU6CisgCisgICAgIC8vIHRvIGdldCBuZXh0IHNvY2tldCBpZAorICAg ICBpbnQgY291bnQ7CistICAgIG1lZ2E6Ok1lZ2FNdXRleCAqbXR4OworLSAgICBtZWdhOjpNZWdh TXV0ZXggKmluZm9ybWVyTXV0ZXg7CisrICAgIHN0ZDo6cmVjdXJzaXZlX211dGV4ICptdHg7Cisr ICAgIHN0ZDo6cmVjdXJzaXZlX211dGV4ICppbmZvcm1lck11dGV4OworIAorICAgICAvKioKKyAg ICAgICogQGJyaWVmIGNyZWF0ZV9uZXdfc29ja2V0CistLS0gc3JjL2NvbXVuaWNhdGlvbnNtYW5h Z2VycG9ydHNvY2tldHMuY3BwCisrKysgc3JjL2NvbXVuaWNhdGlvbnNtYW5hZ2VycG9ydHNvY2tl dHMuY3BwCitAQCAtMTYxLDEzICsxNjEsMTIgQEAgU09DS0VUIENvbXVuaWNhdGlvbnNNYW5hZ2Vy UG9ydFNvY2tldHM6OmNyZWF0ZV9uZXdfc29ja2V0KGludCAqc29ja0lkKQorIENvbXVuaWNhdGlv bnNNYW5hZ2VyUG9ydFNvY2tldHM6OkNvbXVuaWNhdGlvbnNNYW5hZ2VyUG9ydFNvY2tldHMoKQor IHsKKyAgICAgY291bnQgPSAwOworLSAgICBtdHggPSBuZXcgTWVnYU11dGV4KCk7CisrICAgIG10 eCA9IG5ldyBzdGQ6OnJlY3Vyc2l2ZV9tdXRleCgpOworICAgICBpbml0aWFsaXplKCk7CisgfQor IAorIGludCBDb211bmljYXRpb25zTWFuYWdlclBvcnRTb2NrZXRzOjppbml0aWFsaXplKCkKKyB7 CistICAgIG10eC0+aW5pdChmYWxzZSk7CisgI2lmIF9XSU4zMgorICAgICBXT1JEIHdWZXJzaW9u UmVxdWVzdGVkOworICAgICBXU0FEQVRBIHdzYURhdGE7CistLS0gc3JjL2NvbXVuaWNhdGlvbnNt YW5hZ2VycG9ydHNvY2tldHMuaAorKysrIHNyYy9jb211bmljYXRpb25zbWFuYWdlcnBvcnRzb2Nr ZXRzLmgKK0BAIC02OSw3ICs2OSw3IEBAIHByaXZhdGU6CisgCisgICAgIC8vIHRvIGdldCBuZXh0 IHNvY2tldCBpZAorICAgICBpbnQgY291bnQ7CistICAgIG1lZ2E6Ok1lZ2FNdXRleCAqbXR4Owor KyAgICBzdGQ6OnJlY3Vyc2l2ZV9tdXRleCAqbXR4OworIAorICAgICAvKioKKyAgICAgICogQGJy aWVmIGNyZWF0ZV9uZXdfc29ja2V0CistLS0gc3JjL2xpc3RlbmVycy5jcHAKKysrKyBzcmMvbGlz dGVuZXJzLmNwcAorQEAgLTkwMiw3ICs5MDIsNiBAQCBNZWdhQ21kR2xvYmFsVHJhbnNmZXJMaXN0 ZW5lcjo6TWVnYUNtZEdsb2JhbFRyYW5zZmVyTGlzdGVuZXIoTWVnYUFwaSAqbWVnYUFwaSwgTQor ICAgICB0aGlzLT5tZWdhQXBpID0gbWVnYUFwaTsKKyAgICAgdGhpcy0+c2FuZGJveENNRCA9IHNh bmRib3hDTUQ7CisgICAgIHRoaXMtPmxpc3RlbmVyID0gcGFyZW50OworLSAgICBjb21wbGV0ZWRU cmFuc2ZlcnNNdXRleC5pbml0KGZhbHNlKTsKKyB9OworIAorIHZvaWQgTWVnYUNtZEdsb2JhbFRy YW5zZmVyTGlzdGVuZXI6Om9uVHJhbnNmZXJGaW5pc2goTWVnYUFwaSogYXBpLCBNZWdhVHJhbnNm ZXIgKnRyYW5zZmVyLCBNZWdhRXJyb3IqIGVycm9yKQorLS0tIHNyYy9saXN0ZW5lcnMuaAorKysr IHNyYy9saXN0ZW5lcnMuaAorQEAgLTE3OCw3ICsxNzgsNyBAQCBwcml2YXRlOgorICAgICBzdGF0 aWMgY29uc3QgaW50IE1BWENPTVBMRVRFRFRSQU5TRkVSU0JVRkZFUjsKKyAKKyBwdWJsaWM6Cist ICAgIG1lZ2E6Ok1lZ2FNdXRleCBjb21wbGV0ZWRUcmFuc2ZlcnNNdXRleDsKKysgICAgc3RkOjpy ZWN1cnNpdmVfbXV0ZXggY29tcGxldGVkVHJhbnNmZXJzTXV0ZXg7CisgICAgIHN0ZDo6ZGVxdWU8 bWVnYTo6TWVnYVRyYW5zZmVyICo+IGNvbXBsZXRlZFRyYW5zZmVyczsKKyAgICAgc3RkOjptYXA8 bWVnYTo6TWVnYUhhbmRsZSxzdGQ6OnN0cmluZz4gY29tcGxldGVkUGF0aHNCeUhhbmRsZTsKKyBw dWJsaWM6CistLS0gc3JjL21lZ2FjbWQuY3BwCisrKysgc3JjL21lZ2FjbWQuY3BwCitAQCAtMTAz LDExICsxMDMsMTEgQEAgTWVnYUFwaSAqYXBpOworIHN0ZDo6cXVldWU8TWVnYUFwaSAqPiBhcGlG b2xkZXJzOworIHN0ZDo6dmVjdG9yPE1lZ2FBcGkgKj4gb2NjdXBpZWRhcGlGb2xkZXJzOworIE1l Z2FTZW1hcGhvcmUgc2VtYXBob3JlYXBpRm9sZGVyczsKKy1NZWdhTXV0ZXggbXV0ZXhhcGlGb2xk ZXJzOworK3N0ZDo6cmVjdXJzaXZlX211dGV4IG11dGV4YXBpRm9sZGVyczsKKyAKKyBNZWdhQ01E TG9nZ2VyICpsb2dnZXJDTUQ7CisgCistTWVnYU11dGV4IG11dGV4RW5kZWRQZXRpdGlvblRocmVh ZHM7Cisrc3RkOjpyZWN1cnNpdmVfbXV0ZXggbXV0ZXhFbmRlZFBldGl0aW9uVGhyZWFkczsKKyBz dGQ6OnZlY3RvcjxNZWdhVGhyZWFkICo+IHBldGl0aW9uVGhyZWFkczsKKyBzdGQ6OnZlY3RvcjxN ZWdhVGhyZWFkICo+IGVuZGVkUGV0aXRpb25UaHJlYWRzOworIE1lZ2FUaHJlYWQgKnRocmVhZFJl dHJ5Q29ubmVjdGlvbnM7CitAQCAtMTk0LDcgKzE5NCw3IEBAIHN0YXRpYyBwcm9tcHR0eXBlIHBy b21wdCA9IENPTU1BTkQ7CisgLy8gbG9jYWwgY29uc29sZQorIENvbnNvbGUqIGNvbnNvbGU7Cisg CistTWVnYU11dGV4IG11dGV4SGlzdG9yeTsKKytzdGQ6OnJlY3Vyc2l2ZV9tdXRleCBtdXRleEhp c3Rvcnk7CisgCisgbWFwPHVuc2lnbmVkIGxvbmcgbG9uZywgc3RyaW5nPiB0aHJlYWRsaW5lOwor IAorQEAgLTQ0MTEsOSArNDQxMSw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyKiBhcmd2W10p CisgICAgICAgICBsb2dnZXJDTUQtPnNldENtZExvZ2dlckxldmVsKE1lZ2FBcGk6OkxPR19MRVZF TF9NQVgpOworICAgICB9CisgCistICAgIG11dGV4SGlzdG9yeS5pbml0KGZhbHNlKTsKKyAKKy0g ICAgbXV0ZXhFbmRlZFBldGl0aW9uVGhyZWFkcy5pbml0KGZhbHNlKTsKKyAKKyAgICAgQ29uZmln dXJhdGlvbk1hbmFnZXI6OmxvYWRDb25maWd1cmF0aW9uKCggYXJnYyA+IDEgKSAmJiBkZWJ1Zyk7 CisgICAgIGlmICghQ29uZmlndXJhdGlvbk1hbmFnZXI6OmxvY2tFeGVjdXRpb24oKSAmJiAhc2tp cGxvY2tjaGVjaykKK0BAIC00NDc2LDcgKzQ0NzQsNiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hh ciogYXJndltdKQorICAgICAgICAgc2VtYXBob3JlQ2xpZW50cy5yZWxlYXNlKCk7CisgICAgIH0K KyAKKy0gICAgbXV0ZXhhcGlGb2xkZXJzLmluaXQoZmFsc2UpOworIAorICAgICBMT0dfZGVidWcg PDwgIkxhbmd1YWdlIHNldCB0bzogIiA8PCBsb2NhbGVjb2RlOworIAorLS0tIHNyYy9tZWdhY21k ZXhlY3V0ZXIuY3BwCisrKysgc3JjL21lZ2FjbWRleGVjdXRlci5jcHAKK0BAIC0xMjQsMTIgKzEy NCw2IEBAIE1lZ2FDbWRFeGVjdXRlcjo6TWVnYUNtZEV4ZWN1dGVyKE1lZ2FBcGkgKmFwaSwgTWVn YUNNRExvZ2dlciAqbG9nZ2VyQ01ELCBNZWdhQ21kCisgICAgIGFwaS0+YWRkVHJhbnNmZXJMaXN0 ZW5lcihnbG9iYWxUcmFuc2Zlckxpc3RlbmVyKTsKKyAgICAgY3dkID0gVU5ERUY7CisgICAgIGZz QWNjZXNzQ01EID0gbmV3IE1lZ2FGaWxlU3lzdGVtQWNjZXNzKCk7CistICAgIG10eFN5bmNNYXAu aW5pdChmYWxzZSk7CistICAgIG10eFdlYkRhdkxvY2F0aW9ucy5pbml0KGZhbHNlKTsKKy0gICAg bXR4RnRwTG9jYXRpb25zLmluaXQoZmFsc2UpOworLSNpZmRlZiBFTkFCTEVfQkFDS1VQUworLSAg ICBtdHhCYWNrdXBzTWFwLmluaXQodHJ1ZSk7CistI2VuZGlmCisgICAgIHNlc3Npb24gPSBOVUxM OworIH0KKyAKKy0tLSBzcmMvbWVnYWNtZGV4ZWN1dGVyLmgKKysrKyBzcmMvbWVnYWNtZGV4ZWN1 dGVyLmgKK0BAIC0zMywxMiArMzMsMTIgQEAgcHJpdmF0ZToKKyAgICAgTWVnYUNNRExvZ2dlciAq bG9nZ2VyQ01EOworICAgICBNZWdhQ21kU2FuZGJveCAqc2FuZGJveENNRDsKKyAgICAgTWVnYUNt ZEdsb2JhbFRyYW5zZmVyTGlzdGVuZXIgKmdsb2JhbFRyYW5zZmVyTGlzdGVuZXI7CistICAgIG1l Z2E6Ok1lZ2FNdXRleCBtdHhTeW5jTWFwOworLSAgICBtZWdhOjpNZWdhTXV0ZXggbXR4V2ViRGF2 TG9jYXRpb25zOyAvL1RPRE86IGRlc3Ryb3kgdGhlc2UgdHdvCistICAgIG1lZ2E6Ok1lZ2FNdXRl eCBtdHhGdHBMb2NhdGlvbnM7CisrICAgIHN0ZDo6cmVjdXJzaXZlX211dGV4IG10eFN5bmNNYXA7 CisrICAgIHN0ZDo6cmVjdXJzaXZlX211dGV4IG10eFdlYkRhdkxvY2F0aW9uczsgLy9UT0RPOiBk ZXN0cm95IHRoZXNlIHR3bworKyAgICBzdGQ6OnJlY3Vyc2l2ZV9tdXRleCBtdHhGdHBMb2NhdGlv bnM7CisgCisgI2lmZGVmIEVOQUJMRV9CQUNLVVBTCistICAgIG1lZ2E6Ok1lZ2FNdXRleCBtdHhC YWNrdXBzTWFwOworKyAgICBzdGQ6OnJlY3Vyc2l2ZV9tdXRleCBtdHhCYWNrdXBzTWFwOworICNl bmRpZgorIAorICAgICAvLyBsb2dpbi9zaWdudXAgZS1tYWlsIGFkZHJlc3MKKy0tLSBzcmMvbWVn YWNtZGxvZ2dlci5jcHAKKysrKyBzcmMvbWVnYWNtZGxvZ2dlci5jcHAKK0BAIC0zOCw3ICszOCw3 IEBAIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CisgdXNpbmcgbmFtZXNwYWNlIG1lZ2E7CisgCisgLy8g ZGlmZmVyZW50IG91dHN0cmVhbXMgZm9yIGV2ZXJ5IHRocmVhZC4gdG8gZ2F0aGVyIGFsbCB0aGUg b3V0cHV0IGRhdGEKKy1NVVRFWF9DTEFTUyB0aHJlYWRMb29rdXBzKGZhbHNlKTsKKytzdGQ6Om11 dGV4IHRocmVhZExvb2t1cHM7CisgbWFwPHVpbnQ2NF90LCBMb2dnZWRTdHJlYW0gKj4gb3V0c3Ry ZWFtczsKKyBtYXA8dWludDY0X3QsIGludD4gdGhyZWFkTG9nTGV2ZWw7CisgbWFwPHVpbnQ2NF90 LCBpbnQ+IHRocmVhZG91dENvZGU7CitAQCAtNTAsNyArNTAsNyBAQCBMb2dnZWRTdHJlYW0gTENP VVQoJkNPVVQpOworIAorIExvZ2dlZFN0cmVhbSAmZ2V0Q3VycmVudE91dCgpCisgeworLSAgICBN dXRleEd1YXJkIGcodGhyZWFkTG9va3Vwcyk7CisrICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11 dGV4PiBnKHRocmVhZExvb2t1cHMpOworICAgICB1aW50NjRfdCBjdXJyZW50VGhyZWFkID0gTWVn YVRocmVhZDo6Y3VycmVudFRocmVhZElkKCk7CisgICAgIGlmIChvdXRzdHJlYW1zLmZpbmQoY3Vy cmVudFRocmVhZCkgPT0gb3V0c3RyZWFtcy5lbmQoKSkKKyAgICAgeworQEAgLTcxLDcgKzcxLDcg QEAgYm9vbCBpbnRlcmFjdGl2ZVRocmVhZCgpCisgCisgICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBj dXJyZW50VGhyZWFkID0gTWVnYVRocmVhZDo6Y3VycmVudFRocmVhZElkKCk7CisgCistICAgIE11 dGV4R3VhcmQgZyh0aHJlYWRMb29rdXBzKTsKKysgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6bXV0 ZXg+IGcodGhyZWFkTG9va3Vwcyk7CisgICAgIGlmIChvdXRzdHJlYW1zLmZpbmQoY3VycmVudFRo cmVhZCkgPT0gb3V0c3RyZWFtcy5lbmQoKSkKKyAgICAgeworICAgICAgICAgcmV0dXJuIHRydWU7 CitAQCAtODYsNyArODYsNyBAQCBpbnQgZ2V0Q3VycmVudE91dENvZGUoKQorIHsKKyAgICAgdW5z aWduZWQgbG9uZyBsb25nIGN1cnJlbnRUaHJlYWQgPSBNZWdhVGhyZWFkOjpjdXJyZW50VGhyZWFk SWQoKTsKKyAKKy0gICAgTXV0ZXhHdWFyZCBnKHRocmVhZExvb2t1cHMpOworKyAgICBzdGQ6Omxv Y2tfZ3VhcmQ8c3RkOjptdXRleD4gZyh0aHJlYWRMb29rdXBzKTsKKyAgICAgaWYgKHRocmVhZG91 dENvZGUuZmluZChjdXJyZW50VGhyZWFkKSA9PSB0aHJlYWRvdXRDb2RlLmVuZCgpKQorICAgICB7 CisgICAgICAgICByZXR1cm4gMDsgLy9kZWZhdWx0IE9LCitAQCAtMTAyLDcgKzEwMiw3IEBAIENt ZFBldGl0aW9uICogZ2V0Q3VycmVudFBldGl0aW9uKCkKKyB7CisgICAgIHVuc2lnbmVkIGxvbmcg bG9uZyBjdXJyZW50VGhyZWFkID0gTWVnYVRocmVhZDo6Y3VycmVudFRocmVhZElkKCk7CisgCist ICAgIE11dGV4R3VhcmQgZyh0aHJlYWRMb29rdXBzKTsKKysgICAgc3RkOjpsb2NrX2d1YXJkPHN0 ZDo6bXV0ZXg+IGcodGhyZWFkTG9va3Vwcyk7CisgICAgIGlmICh0aHJlYWRwZXRpdGlvbi5maW5k KGN1cnJlbnRUaHJlYWQpID09IHRocmVhZHBldGl0aW9uLmVuZCgpKQorICAgICB7CisgICAgICAg ICByZXR1cm4gTlVMTDsKK0BAIC0xMTcsNyArMTE3LDcgQEAgaW50IGdldEN1cnJlbnRUaHJlYWRM b2dMZXZlbCgpCisgeworICAgICB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudFRocmVhZCA9IE1l Z2FUaHJlYWQ6OmN1cnJlbnRUaHJlYWRJZCgpOworIAorLSAgICBNdXRleEd1YXJkIGcodGhyZWFk TG9va3Vwcyk7CisrICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBnKHRocmVhZExvb2t1 cHMpOworICAgICBpZiAodGhyZWFkTG9nTGV2ZWwuZmluZChjdXJyZW50VGhyZWFkKSA9PSB0aHJl YWRMb2dMZXZlbC5lbmQoKSkKKyAgICAgeworICAgICAgICAgcmV0dXJuIC0xOworQEAgLTEzMiw3 ICsxMzIsNyBAQCBib29sIGdldEN1cnJlbnRUaHJlYWRJc0NtZFNoZWxsKCkKKyB7CisgICAgIHVu c2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50VGhyZWFkID0gTWVnYVRocmVhZDo6Y3VycmVudFRocmVh ZElkKCk7CisgCistICAgIE11dGV4R3VhcmQgZyh0aHJlYWRMb29rdXBzKTsKKysgICAgc3RkOjps b2NrX2d1YXJkPHN0ZDo6bXV0ZXg+IGcodGhyZWFkTG9va3Vwcyk7CisgICAgIGlmICh0aHJlYWRJ c0NtZFNoZWxsLmZpbmQoY3VycmVudFRocmVhZCkgPT0gdGhyZWFkSXNDbWRTaGVsbC5lbmQoKSkK KyAgICAgeworICAgICAgICAgcmV0dXJuIGZhbHNlOyAvL2RlZmF1bHQgbm90CitAQCAtMTQ2LDMx ICsxNDYsMzEgQEAgYm9vbCBnZXRDdXJyZW50VGhyZWFkSXNDbWRTaGVsbCgpCisgCisgdm9pZCBz ZXRDdXJyZW50VGhyZWFkTG9nTGV2ZWwoaW50IGxldmVsKQorIHsKKy0gICAgTXV0ZXhHdWFyZCBn KHRocmVhZExvb2t1cHMpOworKyAgICBzdGQ6OmxvY2tfZ3VhcmQ8c3RkOjptdXRleD4gZyh0aHJl YWRMb29rdXBzKTsKKyAgICAgdGhyZWFkTG9nTGV2ZWxbTWVnYVRocmVhZDo6Y3VycmVudFRocmVh ZElkKCldID0gbGV2ZWw7CisgfQorIAorIHZvaWQgc2V0Q3VycmVudFRocmVhZE91dFN0cmVhbShM b2dnZWRTdHJlYW0gKnMpCisgeworLSAgICBNdXRleEd1YXJkIGcodGhyZWFkTG9va3Vwcyk7Cisr ICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6Om11dGV4PiBnKHRocmVhZExvb2t1cHMpOworICAgICBv dXRzdHJlYW1zW01lZ2FUaHJlYWQ6OmN1cnJlbnRUaHJlYWRJZCgpXSA9IHM7CisgfQorIAorIHZv aWQgc2V0Q3VycmVudFRocmVhZElzQ21kU2hlbGwoYm9vbCBpc2l0KQorIHsKKy0gICAgTXV0ZXhH dWFyZCBnKHRocmVhZExvb2t1cHMpOworKyAgICBzdGQ6OmxvY2tfZ3VhcmQ8c3RkOjptdXRleD4g Zyh0aHJlYWRMb29rdXBzKTsKKyAgICAgdGhyZWFkSXNDbWRTaGVsbFtNZWdhVGhyZWFkOjpjdXJy ZW50VGhyZWFkSWQoKV0gPSBpc2l0OworIH0KKyAKKyB2b2lkIHNldEN1cnJlbnRPdXRDb2RlKGlu dCBvdXRDb2RlKQorIHsKKy0gICAgTXV0ZXhHdWFyZCBnKHRocmVhZExvb2t1cHMpOworKyAgICBz dGQ6OmxvY2tfZ3VhcmQ8c3RkOjptdXRleD4gZyh0aHJlYWRMb29rdXBzKTsKKyAgICAgdGhyZWFk b3V0Q29kZVtNZWdhVGhyZWFkOjpjdXJyZW50VGhyZWFkSWQoKV0gPSBvdXRDb2RlOworIH0KKyAK KyB2b2lkIHNldEN1cnJlbnRQZXRpdGlvbihDbWRQZXRpdGlvbiAqcGV0aXRpb24pCisgeworLSAg ICBNdXRleEd1YXJkIGcodGhyZWFkTG9va3Vwcyk7CisrICAgIHN0ZDo6bG9ja19ndWFyZDxzdGQ6 Om11dGV4PiBnKHRocmVhZExvb2t1cHMpOworICAgICB0aHJlYWRwZXRpdGlvbltNZWdhVGhyZWFk OjpjdXJyZW50VGhyZWFkSWQoKV0gPSBwZXRpdGlvbjsKKyB9CisgCitAQCAtMTc5LDcgKzE3OSw3 IEBAIE1lZ2FDTURMb2dnZXI6Ok1lZ2FDTURMb2dnZXIoKQorIHsKKyAgICAgdGhpcy0+b3V0cHV0 ID0gJkxDT1VUOworICAgICB0aGlzLT5hcGlMb2dnZXJMZXZlbCA9IE1lZ2FBcGk6OkxPR19MRVZF TF9FUlJPUjsKKy0gICAgdGhpcy0+b3V0cHV0bXV0ZXggPSBuZXcgTWVnYU11dGV4KGZhbHNlKTsK KysgICAgdGhpcy0+b3V0cHV0bXV0ZXggPSBuZXcgc3RkOjpyZWN1cnNpdmVfbXV0ZXg7CisgfQor IAorIE1lZ2FDTURMb2dnZXI6On5NZWdhQ01ETG9nZ2VyKCkKK0BAIC0xOTksNyArMTk5LDcgQEAg dm9pZCBNZWdhQ01ETG9nZ2VyOjpsb2coY29uc3QgY2hhciAqdGltZSwgaW50IGxvZ2xldmVsLCBj b25zdCBjaGFyICpzb3VyY2UsIGNvbnMKKyAgICAgICAgIGlmIChsb2dsZXZlbCA8PSBjbWRMb2dn ZXJMZXZlbCkKKyAgICAgICAgIHsKKyAjaWZkZWYgX1dJTjMyCistICAgICAgICAgICAgTXV0ZXhH dWFyZCBnKCpvdXRwdXRtdXRleCk7CisrICAgICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPHN0ZDo6 bXV0ZXg+IGcoKm91dHB1dG11dGV4KTsKKyAgICAgICAgICAgICBpbnQgb2xkbW9kZTsKKyAgICAg ICAgICAgICBvbGRtb2RlID0gX3NldG1vZGUoX2ZpbGVubyhzdGRvdXQpLCBfT19VOFRFWFQpOwor ICAgICAgICAgICAgICpvdXRwdXQgPDwgIlsiIDw8IFNpbXBsZUxvZ2dlcjo6dG9TdHIoTG9nTGV2 ZWwobG9nbGV2ZWwpKSA8PCAiOiAiIDw8IHRpbWUgPDwgIl0gIiA8PCBtZXNzYWdlIDw8IGVuZGw7 CitAQCAtMjMzLDcgKzIzMyw3IEBAIHZvaWQgTWVnYUNNRExvZ2dlcjo6bG9nKGNvbnN0IGNoYXIg KnRpbWUsIGludCBsb2dsZXZlbCwgY29uc3QgY2hhciAqc291cmNlLCBjb25zCisgICAgICAgICAg ICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICB9CisgI2lmZGVmIF9XSU4zMgorLSAgICAgICAg ICAgIE11dGV4R3VhcmQgZygqb3V0cHV0bXV0ZXgpOworKyAgICAgICAgICAgIHN0ZDo6bG9ja19n dWFyZDxzdGQ6Om11dGV4PiBnKCpvdXRwdXRtdXRleCk7CisgICAgICAgICAgICAgaW50IG9sZG1v ZGU7CisgICAgICAgICAgICAgb2xkbW9kZSA9IF9zZXRtb2RlKF9maWxlbm8oc3Rkb3V0KSwgX09f VThURVhUKTsKKyAgICAgICAgICAgICAqb3V0cHV0IDw8ICJbQVBJOiIgPDwgU2ltcGxlTG9nZ2Vy Ojp0b1N0cihMb2dMZXZlbChsb2dsZXZlbCkpIDw8ICI6ICIgPDwgdGltZSA8PCAiXSAiIDw8IG1l c3NhZ2UgPDwgZW5kbDsKKy0tLSBzcmMvbWVnYWNtZGxvZ2dlci5oCisrKysgc3JjL21lZ2FjbWRs b2dnZXIuaAorQEAgLTExMiw3ICsxMTIsNyBAQCBwcml2YXRlOgorICAgICBpbnQgYXBpTG9nZ2Vy TGV2ZWw7CisgICAgIGludCBjbWRMb2dnZXJMZXZlbDsKKyAgICAgTG9nZ2VkU3RyZWFtICogb3V0 cHV0OworLSAgICBtZWdhOjpNZWdhTXV0ZXggKm91dHB1dG11dGV4OworKyAgICBzdGQ6OnJlY3Vy c2l2ZV9tdXRleCAqb3V0cHV0bXV0ZXg7CisgCisgcHVibGljOgorICAgICBNZWdhQ01ETG9nZ2Vy KCk7CistLS0gc3JjL21lZ2FjbWRzaGVsbC9tZWdhY21kc2hlbGwuY3BwCisrKysgc3JjL21lZ2Fj bWRzaGVsbC9tZWdhY21kc2hlbGwuY3BwCitAQCAtMTk5LDcgKzE5OSw3IEBAIGJvb2wgY29uZmly bWluZ2NhbmNlbGxpbmsgPSBmYWxzZTsKKyAvLyBjb21tdW5pY2F0aW9ucyB3aXRoIG1lZ2FjbWRz ZXJ2ZXI6CisgTWVnYUNtZFNoZWxsQ29tbXVuaWNhdGlvbnMgKmNvbW1zOworIAorLU1VVEVYX0NM QVNTIG11dGV4UHJvbXB0KGZhbHNlKTsKKytzdGQ6Om11dGV4IG11dGV4UHJvbXB0OworIAorIHZv aWQgcHJpbnRXZWxjb21lTXNnKHVuc2lnbmVkIGludCB3aWR0aCA9IDApOworIAorQEAgLTYyNyw3 ICs2MjcsNyBAQCB2b2lkIGluc3RhbGxfcmxfaGFuZGxlcihjb25zdCBjaGFyICp0aGVwcm9tcHQp CisgCisgdm9pZCBjaGFuZ2Vwcm9tcHQoY29uc3QgY2hhciAqbmV3cHJvbXB0LCBib29sIHJlZGlz cGxheSkKKyB7CistICAgIE11dGV4R3VhcmQgZyhtdXRleFByb21wdCk7CisrICAgIHN0ZDo6bG9j a19ndWFyZDxzdGQ6Om11dGV4PiBnKG11dGV4UHJvbXB0KTsKKyAKKyAgICAgaWYgKCpkeW5hbWlj cHJvbXB0KQorICAgICB7CistLS0gc3JjL21lZ2FjbWRzaGVsbC9tZWdhY21kc2hlbGxjb21tdW5p Y2F0aW9ucy5jcHAKKysrKyBzcmMvbWVnYWNtZHNoZWxsL21lZ2FjbWRzaGVsbGNvbW11bmljYXRp b25zLmNwcAorQEAgLTgwLDcgKzgwLDcgQEAgYm9vbCBNZWdhQ21kU2hlbGxDb21tdW5pY2F0aW9u czo6c3RvcExpc3RlbmVyOworIGJvb2wgTWVnYUNtZFNoZWxsQ29tbXVuaWNhdGlvbnM6OnVwZGF0 aW5nOworIDo6bWVnYTo6VGhyZWFkICpNZWdhQ21kU2hlbGxDb21tdW5pY2F0aW9uczo6bGlzdGVu ZXJUaHJlYWQ7CisgU09DS0VUIE1lZ2FDbWRTaGVsbENvbW11bmljYXRpb25zOjpuZXdzb2NrZmQg PSBJTlZBTElEX1NPQ0tFVDsKKy1NZWdhTXV0ZXggTWVnYUNtZFNoZWxsQ29tbXVuaWNhdGlvbnM6 Om1lZ2FDbWRTdGRvdXRwdXRpbmc7Cisrc3RkOjpyZWN1cnNpdmVfbXV0ZXggTWVnYUNtZFNoZWxs Q29tbXVuaWNhdGlvbnM6Om1lZ2FDbWRTdGRvdXRwdXRpbmc7CisgCisgYm9vbCBNZWdhQ21kU2hl bGxDb21tdW5pY2F0aW9uczo6c29ja2V0VmFsaWQoU09DS0VUIHNvY2tldCkKKyB7CitAQCAtNDgz LDcgKzQ4Myw2IEBAIE1lZ2FDbWRTaGVsbENvbW11bmljYXRpb25zOjpNZWdhQ21kU2hlbGxDb21t dW5pY2F0aW9ucygpCisgICAgIHN0b3BMaXN0ZW5lciA9IGZhbHNlOworICAgICB1cGRhdGluZyA9 IGZhbHNlOworICAgICBsaXN0ZW5lclRocmVhZCA9IE5VTEw7CistICAgIE1lZ2FDbWRTaGVsbENv bW11bmljYXRpb25zOjptZWdhQ21kU3Rkb3V0cHV0aW5nLmluaXQoZmFsc2UpOworIH0KKyAKKyAK Ky0tLSBzcmMvbWVnYWNtZHNoZWxsL21lZ2FjbWRzaGVsbGNvbW11bmljYXRpb25zLmgKKysrKyBz cmMvbWVnYWNtZHNoZWxsL21lZ2FjbWRzaGVsbGNvbW11bmljYXRpb25zLmgKK0BAIC0yNiw2ICsy Niw3IEBACisgCisgI2luY2x1ZGUgPHN0cmluZz4KKyAjaW5jbHVkZSA8aW9zdHJlYW0+CisrI2lu Y2x1ZGUgPG11dGV4PgorIAorICNpZmRlZiBfV0lOMzIKKyAjaW5jbHVkZSA8V2luU29jazIuaD4K K0BAIC00MCwxNSArNDEsMTIgQEAKKyAKKyAjaWYgZGVmaW5lZChfV0lOMzIpICYmICFkZWZpbmVk KFdJTkRPV1NfUEhPTkUpICYmICFkZWZpbmVkKFVTRV9DUFBUSFJFQUQpCisgI2luY2x1ZGUgIm1l Z2EvdGhyZWFkL3dpbjMydGhyZWFkLmgiCistY2xhc3MgTWVnYU11dGV4IDogcHVibGljIDo6bWVn YTo6V2luMzJNdXRleCB7fTsKKyBjbGFzcyBNZWdhVGhyZWFkIDogcHVibGljIDo6bWVnYTo6V2lu MzJUaHJlYWQge307CisgI2VsaWYgZGVmaW5lZChVU0VfQ1BQVEhSRUFEKQorICNpbmNsdWRlICJt ZWdhL3RocmVhZC9jcHB0aHJlYWQuaCIKKy1jbGFzcyBNZWdhTXV0ZXggOiBwdWJsaWMgOjptZWdh OjpDcHBNdXRleCB7fTsKKyBjbGFzcyBNZWdhVGhyZWFkIDogcHVibGljIDo6bWVnYTo6Q3BwVGhy ZWFkIHt9OworICNlbHNlCisgI2luY2x1ZGUgIm1lZ2EvdGhyZWFkL3Bvc2l4dGhyZWFkLmgiCist Y2xhc3MgTWVnYU11dGV4IDogcHVibGljIDo6bWVnYTo6UG9zaXhNdXRleCB7fTsKKyBjbGFzcyBN ZWdhVGhyZWFkIDogcHVibGljIDo6bWVnYTo6UG9zaXhUaHJlYWQge307CisgI2VuZGlmCisgCitA QCAtMTE4LDcgKzExNiw3IEBAIHB1YmxpYzoKKyAgICAgTWVnYUNtZFNoZWxsQ29tbXVuaWNhdGlv bnMoKTsKKyAgICAgdmlydHVhbCB+TWVnYUNtZFNoZWxsQ29tbXVuaWNhdGlvbnMoKTsKKyAKKy0g ICAgc3RhdGljIE1lZ2FNdXRleCBtZWdhQ21kU3Rkb3V0cHV0aW5nOworKyAgICBzdGF0aWMgc3Rk OjpyZWN1cnNpdmVfbXV0ZXggbWVnYUNtZFN0ZG91dHB1dGluZzsKKyAgICAgdmlydHVhbCBpbnQg ZXhlY3V0ZUNvbW1hbmQoc3RkOjpzdHJpbmcgY29tbWFuZCwgc3RkOjpzdHJpbmcgKCpyZWFkcmVz cG9uc2UpKGNvbnN0IGNoYXIgKikgPSBOVUxMLCBPVVRTVFJFQU1UWVBFICZvdXRwdXQgPSBDT1VU LCBib29sIGludGVyYWN0aXZlc2hlbGwgPSB0cnVlLCBzdGQ6OndzdHJpbmcgPSBMIiIpOworICAg ICB2aXJ0dWFsIGludCBleGVjdXRlQ29tbWFuZFcoc3RkOjp3c3RyaW5nIGNvbW1hbmQsIHN0ZDo6 c3RyaW5nICgqcmVhZHJlc3BvbnNlKShjb25zdCBjaGFyICopID0gTlVMTCwgT1VUU1RSRUFNVFlQ RSAmb3V0cHV0ID0gQ09VVCwgYm9vbCBpbnRlcmFjdGl2ZXNoZWxsID0gdHJ1ZSk7CisgCmRpZmYg LS1naXQgYS9zcmNwa2dzL01FR0FjbWQvcGF0Y2hlcy9tdXNsLnBhdGNoIGIvc3JjcGtncy9NRUdB Y21kL3BhdGNoZXMvbXVzbC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2Uw YTM5NWZiMTkuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvTUVHQWNtZC9wYXRjaGVzL211c2wu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi0tLS0gc3JjL2NvbmZpZ3VyYXRp b25tYW5hZ2VyLmgJMjAxOC0xMC0wMyAxNjoyNzo1MS4zMTE3NjM2MTIgKzAyMDAKLSsrKyAtCTIw MTgtMTAtMDMgMTY6Mjk6NDQuMDM1MjcyNzIyICswMjAwCi1AQCAtMjMsNiArMjMsMTAgQEAKLSAj aW5jbHVkZSA8bWFwPgotICNpbmNsdWRlIDxzZXQ+Ci0gCi0rI2lmbmRlZiBfV0lOMzIKLSsjaW5j bHVkZSA8c3lzL2ZpbGUuaD4gLy8gTE9DS19FWCBhbmQgTE9DS19OQgotKyNlbmRpZgotKwotICNk ZWZpbmUgQ09ORklHVVJBVElPTlNUT1JFREJZVkVSU0lPTiAtMgotIGNsYXNzIENvbmZpZ3VyYXRp b25NYW5hZ2VyCi0gewpkaWZmIC0tZ2l0IGEvc3JjcGtncy9NRUdBY21kL3RlbXBsYXRlIGIvc3Jj cGtncy9NRUdBY21kL3RlbXBsYXRlCmluZGV4IDIzNDViMzk3MmI4Li42M2U3YzRmNjk4NiAxMDA2 NDQKLS0tIGEvc3JjcGtncy9NRUdBY21kL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvTUVHQWNtZC90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDggQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ01FR0FjbWQnCiBw a2duYW1lPU1FR0FjbWQKLXZlcnNpb249MS4wLjAKLXJldmlzaW9uPTExCit2ZXJzaW9uPTEuMS4w CityZXZpc2lvbj0xCit3cmtzcmM9IiR7cGtnbmFtZX0tJHt2ZXJzaW9ufV9MaW51eCIKIGJ1aWxk X3N0eWxlPWdudS1jb25maWd1cmUKIG1ha2VfYnVpbGRfYXJncz0nTElCVE9PTEZMQUdTPSItLXRh Zz1DWFgiJwogaG9zdG1ha2VkZXBlbmRzPSJhdXRvY29uZi1hcmNoaXZlIGF1dG9nZW4gZ2V0dGV4 dCBhdXRvbWFrZSBsaWJ0b29sIHBrZy1jb25maWciCkBAIC0xMCw4ICsxMSw4IEBAIHNob3J0X2Rl c2M9IkNvbW1hbmQgTGluZSBJbnRlcmFjdGl2ZSBhbmQgU2NyaXB0YWJsZSBBcHBsaWNhdGlvbiB0 byBhY2Nlc3MgTUVHQSIKIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGlj ZW5zZT0iQlNELTItQ2xhdXNlLCBHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v Z2l0aHViLmNvbS9tZWdhbnovTUVHQWNtZCIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29t L21lZ2Fuei9NRUdBY21kL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0xMjAw MzYzYmVlMmYzODdhMjI4N2UyODZiMzhkMTViMWEwMTA3OTk2N2UyMGI4YzQ4OTgxNWNjN2M4ZDlm ZjYzCitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9tZWdhbnovTUVHQWNtZC9hcmNoaXZl LyR7dmVyc2lvbn1fTGludXgudGFyLmd6IgorY2hlY2tzdW09ODA2NGEyMWIxZDE0MzY1MzdhYjlj Y2M5OGYxZjQxMWY5NDk2YWFjZTAwMDU4NGJlYTg3ZDk1ZjhlN2IzYTU1MAogcmVwbGFjZXM9Im1l Z2FjbWQ+PTAiCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgo= --===============6119934362115947059==--