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=unavailable autolearn_force=no version=3.4.2 Received: from inbox.vuxu.org (localhost [IPv6:::1]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id a9bb56de for ; Thu, 12 Sep 2019 15:14:13 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============4484864494573113909==" MIME-Version: 1.0 Subject: Re: [PR PATCH] [Updated] lxd: update to 3.17 To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 12 Sep 2019 17:14:13 +0200 Message-ID: <20190912151413.bY_hfQdiN_mB-tT04KvUCWNTFRVWdUqmN6JxDjwvYLk@z> GitHub notification mails are now in MIME to allow UTF8. --===============4484864494573113909== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkganVsaW82NDE3NDIgYWdhaW5zdCBt YXN0ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29t L2p1bGlvNjQxNzQyL3ZvaWQtcGFja2FnZXMgZHFsaXRlCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8xMzE2MwoKbHhkOiB1cGRhdGUgdG8gMy4xNwoKCkEg cGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2Fn ZXMvcHVsbC8xMzE2My5wYXRjaCBpcyBhdHRhY2hlZA== --===============4484864494573113909== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-dqlite-13163.patch" RnJvbSA1NmZmNzg0NTBiNDU4MTlmNzU5ZjdkN2RhNWUxMDgyOWVkYjAyZmI3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpbyBHYWx2YW4gPGp1bGlvQGVwYXpvdGUubmV0PgpEYXRl OiBUdWUsIDE2IEp1bCAyMDE5IDE2OjQ4OjMyIC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxLzZdIE5l dyBwYWNrYWdlOiBsaWJjby0xOS4xCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgMSAr CiBzcmNwa2dzL2xpYmNvLWRldmVsICAgIHwgIDEgKwogc3JjcGtncy9saWJjby90ZW1wbGF0ZSB8 IDI2ICsrKysrKysrKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDI4IGluc2Vy dGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYmNvLWRldmVsCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9saWJjby90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9z aGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDA5ZGY0ZjNjZWNhLi4yN2Y5ZWE2MDIxOCAxMDA2 NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0zNTA4LDMgKzM1 MDgsNCBAQCBsaWJkcnVtc3RpY2stZmlsZS5zby4xIGRydW1zdGljay0xLjEuMl8xCiBsaWJkcnVt c3RpY2stYWxzYS5zby4xIGRydW1zdGljay0xLjEuMl8xCiBsaWJkcnVtc3RpY2stcnQuc28uMSBk cnVtc3RpY2stMS4xLjJfMQogbGlibm96emxlLnNvLjEgbGlibm96emxlMS0xLjExXzIKK2xpYmNv LnNvLjAgbGliY28tMTkuMV8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmNvLWRldmVsIGIvc3Jj cGtncy9saWJjby1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4u OWNiZWUzOTZhZGYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYmNvLWRldmVsCkBAIC0w LDAgKzEgQEAKK2xpYmNvClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv c3JjcGtncy9saWJjby90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGliY28vdGVtcGxhdGUKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmY5YmNlODAwYjhhCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJjby90ZW1wbGF0ZQpAQCAtMCwwICsxLDI2IEBACisjIFRlbXBsYXRl IGZpbGUgZm9yICdsaWJjbycKK3BrZ25hbWU9bGliY28KK3ZlcnNpb249MTkuMQorcmV2aXNpb249 MQorYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCitzaG9ydF9kZXNjPSJDb29wZXJhdGl2ZSBtdWx0 aXRocmVhZGluZyBsaWJyYXJ5IHdyaXR0ZW4gaW4gQzg5IgorbWFpbnRhaW5lcj0iSnVsaW8gR2Fs dmFuIDxqdWxpb2dhbHZhbkBwcm90b25tYWlsLmNvbT4iCitsaWNlbnNlPSJJU0MiCitob21lcGFn ZT0iaHR0cHM6Ly9naXRodWIuY29tL2ZyZWVla2FuYXlha2EvbGliY28iCitkaXN0ZmlsZXM9Imh0 dHBzOi8vZ2l0aHViLmNvbS9mcmVlZWthbmF5YWthL2xpYmNvL2FyY2hpdmUvdiR7dmVyc2lvbn0u dGFyLmd6IgorY2hlY2tzdW09MGNiYjNhNmJhMjNjNTk4NTY4M2JhMGJlMjEzYmIzM2JkNjE3NDkw YWViNTRhNGQ0NDIxOTY3YTRmZTllMmI5NQorCitwb3N0X2luc3RhbGwoKSB7CisJdmxpY2Vuc2Ug TElDRU5TRQorfQorCitsaWJjby1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9ImxpYmNvPj0k e3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxl cyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUKKwkJdm1vdmUgdXNyL2xp Yi9wa2djb25maWcKKwkJdm1vdmUgInVzci9saWIvKi5hIgorCQl2bW92ZSAidXNyL2xpYi8qLnNv IgorCX0KK30KCkZyb20gZTIzNzVhY2M4ZWExYjVlZTU4YmQyYTkxYmE0MGVlNzZjNzliN2I1OSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3Rl Lm5ldD4KRGF0ZTogVHVlLCAxNiBKdWwgMjAxOSAxNjo1OTo1NCAtMDcwMApTdWJqZWN0OiBbUEFU Q0ggMi82XSBOZXcgcGFja2FnZTogcmFmdC0wLjkuNQoKLS0tCiBjb21tb24vc2hsaWJzICAgICAg ICAgfCAgMSArCiBzcmNwa2dzL3JhZnQtZGV2ZWwgICAgfCAgMSArCiBzcmNwa2dzL3JhZnQvdGVt cGxhdGUgfCAyOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2Vk LCAzMSBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9yYWZ0LWRldmVs CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9yYWZ0L3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEv Y29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggMjdmOWVhNjAyMTguLjEzMDkzYzFi Y2Y2IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTM1 MDksMyArMzUwOSw0IEBAIGxpYmRydW1zdGljay1hbHNhLnNvLjEgZHJ1bXN0aWNrLTEuMS4yXzEK IGxpYmRydW1zdGljay1ydC5zby4xIGRydW1zdGljay0xLjEuMl8xCiBsaWJub3p6bGUuc28uMSBs aWJub3p6bGUxLTEuMTFfMgogbGliY28uc28uMCBsaWJjby0xOS4xXzEKK2xpYnJhZnQuc28uMCBy YWZ0LTAuOS41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmFmdC1kZXZlbCBiL3NyY3BrZ3MvcmFm dC1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uZDk2YzkwODU3 OGEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3JhZnQtZGV2ZWwKQEAgLTAsMCArMSBAQAor cmFmdApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmFm dC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmFmdC90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uMjAxZmFkOTg4OGMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L3JhZnQvdGVtcGxhdGUKQEAgLTAsMCArMSwyOSBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAncmFm dCcKK3BrZ25hbWU9cmFmdAordmVyc2lvbj0wLjkuNQorcmV2aXNpb249MQorYnVpbGRfc3R5bGU9 Z251LWNvbmZpZ3VyZQorY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWV4YW1wbGU9bm8iCitob3N0 bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b2NvbmYgYXV0b21ha2UgbGlidG9vbCIKK21ha2Vk ZXBlbmRzPSJsaWJ1di1kZXZlbCIKK3Nob3J0X2Rlc2M9IkMgaW1wbGVtZW50YXRpb24gb2YgdGhl IFJhZnQgY29uc2Vuc3VzIHByb3RvY29sIgorbWFpbnRhaW5lcj0iSnVsaW8gR2FsdmFuIDxqdWxp b2dhbHZhbkBwcm90b25tYWlsLmNvbT4iCitsaWNlbnNlPSJBcGFjaGUtMi4wIgoraG9tZXBhZ2U9 Imh0dHBzOi8vZ2l0aHViLmNvbS9DYW5vbmljYWxMdGQvcmFmdCIKK2Rpc3RmaWxlcz0iaHR0cHM6 Ly9naXRodWIuY29tL0Nhbm9uaWNhbEx0ZC9yYWZ0L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6 IgorY2hlY2tzdW09MWY4ZTI1MzA0NjI1NDZiMzllNTkxNWM0OWI2NmVjZTQxNzcwZmM0MGU3YjFl NTM3Y2Y3YTdmYWRhYmI1YTg3ZAorCitwcmVfY29uZmlndXJlKCkgeworCWF1dG9yZWNvbmYgLWkK K30KKworcmFmdC1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9IiR7bWFrZWRlcGVuZHN9IHJh ZnQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50 IGZpbGVzIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvaW5jbHVkZQorCQl2bW92ZSB1 c3IvbGliL3BrZ2NvbmZpZworCQl2bW92ZSAidXNyL2xpYi8qLmEiCisJCXZtb3ZlICJ1c3IvbGli Lyouc28iCisJfQorfQoKRnJvbSA3MmQ5ODA4MzYyYzRkODZkZjIxYjg2ZGIwYTI3MGE1MjJkMDVl MmU3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpbyBHYWx2YW4gPGp1bGlvQGVw YXpvdGUubmV0PgpEYXRlOiBTYXQsIDcgU2VwIDIwMTkgMTA6MDA6NTIgLTA3MDAKU3ViamVjdDog W1BBVENIIDMvNl0gc3FsaXRlLXJlcGxpY2F0aW9uOiB1cGRhdGUgdG8gMy4yOS4wCgotLS0KIHNy Y3BrZ3Mvc3FsaXRlLXJlcGxpY2F0aW9uL3RlbXBsYXRlIHwgOSArKystLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9zcWxpdGUtcmVwbGljYXRpb24vdGVtcGxhdGUgYi9zcmNwa2dzL3NxbGl0ZS1yZXBsaWNh dGlvbi90ZW1wbGF0ZQppbmRleCBiNWIxMDYzZDhjYS4uODE4OTk5ZjE1OWQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvc3FsaXRlLXJlcGxpY2F0aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3FsaXRl LXJlcGxpY2F0aW9uL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdzcWxpdGUtcmVwbGljYXRpb24nCiBwa2duYW1lPXNxbGl0ZS1yZXBsaWNhdGlvbgotdmVy c2lvbj0zLjI4LjAKK3ZlcnNpb249My4yOS4wCiByZXZpc2lvbj0xCiB3cmtzcmM9InNxbGl0ZS12 ZXJzaW9uLSR7dmVyc2lvbn0tcmVwbGljYXRpb24zIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3Vy ZQotY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXdhbC1yZXBsaWNhdGlvbiAtLWVuYWJsZS10aHJl YWRzYWZlIC0tZW5hYmxlLWR5bmFtaWMtZXh0ZW5zaW9ucyAtLWVuYWJsZS1mdHM1IgorY29uZmln dXJlX2FyZ3M9Ii0tZW5hYmxlLXJlcGxpY2F0aW9uIC0tZW5hYmxlLXRocmVhZHNhZmUgLS1lbmFi bGUtZHluYW1pYy1leHRlbnNpb25zIC0tZW5hYmxlLWZ0czUiCiBob3N0bWFrZWRlcGVuZHM9InRj bCIKIG1ha2VkZXBlbmRzPSJsaWJlZGl0LWRldmVsIgogc2hvcnRfZGVzYz0iUmVwbGljYXRpb24g RW5hYmxlZCBTUUwgRGF0YWJhc2UgRW5naW5lIGluIGEgQyBMaWJyYXJ5IgpAQCAtMTIsNyArMTIs NyBAQCBtYWludGFpbmVyPSJDYW1lcm9uIE5lbW8gPGNhbWVyb250bm9ybWFuQGdtYWlsLmNvbT4i CiBsaWNlbnNlPSJQdWJsaWMgRG9tYWluIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9D YW5vbmljYWxMdGQvc3FsaXRlIgogZGlzdGZpbGVzPSIke2hvbWVwYWdlfS9hcmNoaXZlL3ZlcnNp b24tJHt2ZXJzaW9ufStyZXBsaWNhdGlvbjMudGFyLmd6IgotY2hlY2tzdW09M2U1MmZiOTJlZjhm NjZiYTY0MDE0NTk0MWYwNWFhYmJmZmI0ZjQyMmEwYjlhNDJhOTdiNjgwNmUyYzNjNjgxMgorY2hl Y2tzdW09NTE2YWUwNGI3YmVmNDRiNmRlNzFmZWQ5OWY0MWYxZjExYWZjNzgxNDk1MTQ1YzdiY2Nm M2MxZTEwNzNjMzdiZQogcmVwbGFjZXM9InNxbGl0ZT49My44LjExLjFfMyIKIHByb3ZpZGVzPSJz cWxpdGUtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIHNobGliX3Byb3ZpZGVzPSJsaWJzcWxpdGUz LnNvIgpAQCAtMjYsOSArMjYsNiBAQCBDRkxBR1MrPSIgLURIQVZFX0ZEQVRBU1lOQyIKIGRpc2Fi bGVfcGFyYWxsZWxfYnVpbGQ9eWVzCiAKIHByZV9jb25maWd1cmUoKSB7Ci0JcHJpbnRmIC0tICJE IDIwMTktMDMtMDlUMTU6NDU6NDZcbiIgPiBtYW5pZmVzdAotCXByaW50ZiAtLSAiODI1MDk4NGEz NjgwNzliYjE4MzhkNDhkOTlmOGMxYTYyODJlMDBiYyIgPiBtYW5pZmVzdC51dWlkCi0KIAlzZWQg LWkgLWUgJ3MvIC1sdGluZm8vL2cnIGNvbmZpZ3VyZQogfQogCgpGcm9tIDM3YmE3ODJlYTQzMGRj Nzg5ZDkxNGY1ODVmMDhkODU0ZTI3Mjg2YjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IEp1bGlvIEdhbHZhbiA8anVsaW9AZXBhem90ZS5uZXQ+CkRhdGU6IFR1ZSwgMTYgSnVsIDIwMTkg MTU6Mzk6MjQgLTA3MDAKU3ViamVjdDogW1BBVENIIDQvNl0gZHFsaXRlOiB1cGRhdGUgdG8gMS4w LjAKCi0tLQogc3JjcGtncy9kcWxpdGUvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hh bmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZHFsaXRlL3RlbXBsYXRlIGIvc3JjcGtncy9kcWxpdGUvdGVtcGxhdGUKaW5kZXggYjExYzJl OTNiZDkuLjBmNTBkN2I1Nzc5IDEwMDY0NAotLS0gYS9zcmNwa2dzL2RxbGl0ZS90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2RxbGl0ZS90ZW1wbGF0ZQpAQCAtMSwyNCArMSwyNCBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnZHFsaXRlJwogcGtnbmFtZT1kcWxpdGUKLXZlcnNpb249MC4yLjYKK3ZlcnNp b249MS4wLjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtl ZGVwZW5kcz0icGtnLWNvbmZpZyBhdXRvY29uZiBhdXRvbWFrZSBsaWJ0b29sIgotbWFrZWRlcGVu ZHM9ImxpYnV2LWRldmVsIHNxbGl0ZS1yZXBsaWNhdGlvbi1kZXZlbCIKK21ha2VkZXBlbmRzPSJz cWxpdGUtcmVwbGljYXRpb24tZGV2ZWwgcmFmdC1kZXZlbCBsaWJjby1kZXZlbCIKIGRlcGVuZHM9 InNxbGl0ZS1yZXBsaWNhdGlvbiIKIHNob3J0X2Rlc2M9IkRpc3RyaWJ1dGVkIFNRTGl0ZSBkYXRh YmFzZSB1c2luZyB0aGUgUmFmdCBhbGdvcml0aG0iCiBtYWludGFpbmVyPSJDYW1lcm9uIE5lbW8g PGNhbWVyb250bm9ybWFuQGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJBcGFjaGUtMi4wIgogaG9tZXBh Z2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9DYW5vbmljYWxMdGQvZHFsaXRlIgogZGlzdGZpbGVzPSIk e2hvbWVwYWdlfS9hcmNoaXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTQ3ZDMxNTUw ZDk3MGExMmQyNTEwMWMzMzE4OTZjZmI4NTUxMjhjMTEwZDkxMmY1ZGEzMzcxMDYyZDllY2U1MmIK K2NoZWNrc3VtPWY2OGEwNGY0MTgyOWU0NTM4MzFiNmNlNzE4NDAzNzBiMTZlNzkzYzczNWEwZGVk MjkxY2JhOTViMjRmN2YyNTQKIAogcHJlX2NvbmZpZ3VyZSgpIHsKIAlhdXRvcmVjb25mIC1pCiB9 CiAKIGRxbGl0ZS1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9InNxbGl0ZS1yZXBsaWNhdGlv bi1kZXZlbCBkcWxpdGU+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJZGVwZW5kcz0iJHttYWtl ZGVwZW5kc30gZHFsaXRlPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgogCXNob3J0X2Rlc2MrPSIg LSBkZXZlbG9wbWVudCBmaWxlcyIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1 ZGUKCkZyb20gMjhmNzNjOWQxZjVhYjUyZTcwZTMzZjMwMmUzZjQ4MDdiNTZjZWZlMiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3RlLm5ldD4K RGF0ZTogU2F0LCA3IFNlcCAyMDE5IDEyOjAwOjE3IC0wNzAwClN1YmplY3Q6IFtQQVRDSCA1LzZd IGx4YzogdXBkYXRlIHRvIDMuMi4xCgotLS0KIHNyY3BrZ3MvbHhjL3BhdGNoZXMvQ1ZFLTIwMTkt NTczNi5wYXRjaCB8IDM5OSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvbHhjL3Bh dGNoZXMvbXVzbC1jb21wYXQucGF0Y2ggICB8ICAxMCAtCiBzcmNwa2dzL2x4Yy9wYXRjaGVzL3Jl eGVjdXRlLnBhdGNoICAgICAgfCAxNDggLS0tLS0tLS0tCiBzcmNwa2dzL2x4Yy90ZW1wbGF0ZSAg ICAgICAgICAgICAgICAgICAgfCAgIDQgKy0KIDQgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCA1NTkgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9seGMvcGF0 Y2hlcy9DVkUtMjAxOS01NzM2LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9seGMv cGF0Y2hlcy9tdXNsLWNvbXBhdC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbHhj L3BhdGNoZXMvcmV4ZWN1dGUucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2x4Yy9wYXRjaGVz L0NWRS0yMDE5LTU3MzYucGF0Y2ggYi9zcmNwa2dzL2x4Yy9wYXRjaGVzL0NWRS0yMDE5LTU3MzYu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNiMTA1ZTI5MTI0Li4wMDAwMDAw MDAwMAotLS0gYS9zcmNwa2dzL2x4Yy9wYXRjaGVzL0NWRS0yMDE5LTU3MzYucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSwzOTkgKzAsMCBAQAotRnJvbSA2NDAwMjM4ZDA4Y2RmMWNhMjBkNDliYWZi ODVmNGUyMjQzNDhiZjlkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogQ2hyaXN0aWFu IEJyYXVuZXIgPGNocmlzdGlhbi5icmF1bmVyQHVidW50dS5jb20+Ci1EYXRlOiBTYXQsIDI2IEph biAyMDE5IDAxOjE5OjI5ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIENWRS0yMDE5LTU3MzYgKHJ1 bkMpOiByZXhlYyBjYWxsZXJzIGFzIG1lbWZkCi1NSU1FLVZlcnNpb246IDEuMAotQ29udGVudC1U eXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVyLUVuY29kaW5n OiA4Yml0Ci0KLUFkYW0gSXdhbml1ayBhbmQgQm9yeXMgUG9wxYJhd3NraSBkaXNjb3ZlcmVkIHRo YXQgYW4gYXR0YWNrZXIgY2FuIGNvbXByb21pc2UgdGhlCi1ydW5DIGhvc3QgYmluYXJ5IGZyb20g aW5zaWRlIGEgcHJpdmlsZWdlZCBydW5DIGNvbnRhaW5lci4gQXMgYSByZXN1bHQsIHRoaXMKLWNv dWxkIGJlIGV4cGxvaXRlZCB0byBnYWluIHJvb3QgYWNjZXNzIG9uIHRoZSBob3N0LiBydW5DIGlz IHVzZWQgYXMgdGhlIGRlZmF1bHQKLXJ1bnRpbWUgZm9yIGNvbnRhaW5lcnMgd2l0aCBEb2NrZXIs IGNvbnRhaW5lcmQsIFBvZG1hbiwgYW5kIENSSS1PLgotCi1UaGUgYXR0YWNrIGNhbiBiZSBtYWRl IHdoZW4gYXR0YWNoaW5nIHRvIGEgcnVubmluZyBjb250YWluZXIgb3Igd2hlbiBzdGFydGluZyBh Ci1jb250YWluZXIgcnVubmluZyBhIHNwZWNpYWxseSBjcmFmdGVkIGltYWdlLiAgRm9yIGV4YW1w bGUsIHdoZW4gcnVuQyBhdHRhY2hlcwotdG8gYSBjb250YWluZXIgdGhlIGF0dGFja2VyIGNhbiB0 cmljayBpdCBpbnRvIGV4ZWN1dGluZyBpdHNlbGYuIFRoaXMgY291bGQgYmUKLWRvbmUgYnkgcmVw bGFjaW5nIHRoZSB0YXJnZXQgYmluYXJ5IGluc2lkZSB0aGUgY29udGFpbmVyIHdpdGggYSBjdXN0 b20gYmluYXJ5Ci1wb2ludGluZyBiYWNrIGF0IHRoZSBydW5DIGJpbmFyeSBpdHNlbGYuIEFzIGFu IGV4YW1wbGUsIGlmIHRoZSB0YXJnZXQgYmluYXJ5Ci13YXMgL2Jpbi9iYXNoLCB0aGlzIGNvdWxk IGJlIHJlcGxhY2VkIHdpdGggYW4gZXhlY3V0YWJsZSBzY3JpcHQgc3BlY2lmeWluZyB0aGUKLWlu dGVycHJldGVyIHBhdGggIyEvcHJvYy9zZWxmL2V4ZSAoL3Byb2Mvc2VsZi9leGVjIGlzIGEgc3lt Ym9saWMgbGluayBjcmVhdGVkCi1ieSB0aGUga2VybmVsIGZvciBldmVyeSBwcm9jZXNzIHdoaWNo IHBvaW50cyB0byB0aGUgYmluYXJ5IHRoYXQgd2FzIGV4ZWN1dGVkCi1mb3IgdGhhdCBwcm9jZXNz KS4gQXMgc3VjaCB3aGVuIC9iaW4vYmFzaCBpcyBleGVjdXRlZCBpbnNpZGUgdGhlIGNvbnRhaW5l ciwKLWluc3RlYWQgdGhlIHRhcmdldCBvZiAvcHJvYy9zZWxmL2V4ZSB3aWxsIGJlIGV4ZWN1dGVk IC0gd2hpY2ggd2lsbCBwb2ludCB0byB0aGUKLXJ1bmMgYmluYXJ5IG9uIHRoZSBob3N0LiBUaGUg YXR0YWNrZXIgY2FuIHRoZW4gcHJvY2VlZCB0byB3cml0ZSB0byB0aGUgdGFyZ2V0Ci1vZiAvcHJv Yy9zZWxmL2V4ZSB0byB0cnkgYW5kIG92ZXJ3cml0ZSB0aGUgcnVuQyBiaW5hcnkgb24gdGhlIGhv c3QuIEhvd2V2ZXIgaW4KLWdlbmVyYWwsIHRoaXMgd2lsbCBub3Qgc3VjY2VlZCBhcyB0aGUga2Vy bmVsIHdpbGwgbm90IHBlcm1pdCBpdCB0byBiZQotb3ZlcndyaXR0ZW4gd2hpbHN0IHJ1bkMgaXMg ZXhlY3V0aW5nLiBUbyBvdmVyY29tZSB0aGlzLCB0aGUgYXR0YWNrZXIgY2FuCi1pbnN0ZWFkIG9w ZW4gYSBmaWxlIGRlc2NyaXB0b3IgdG8gL3Byb2Mvc2VsZi9leGUgdXNpbmcgdGhlIE9fUEFUSCBm bGFnIGFuZCB0aGVuCi1wcm9jZWVkIHRvIHJlb3BlbiB0aGUgYmluYXJ5IGFzIE9fV1JPTkxZIHRo cm91Z2ggL3Byb2Mvc2VsZi9mZC88bnI+IGFuZCB0cnkgdG8KLXdyaXRlIHRvIGl0IGluIGEgYnVz eSBsb29wIGZyb20gYSBzZXBhcmF0ZSBwcm9jZXNzLiBVbHRpbWF0ZWx5IGl0IHdpbGwgc3VjY2Vl ZAotd2hlbiB0aGUgcnVuQyBiaW5hcnkgZXhpdHMuIEFmdGVyIHRoaXMgdGhlIHJ1bkMgYmluYXJ5 IGlzIGNvbXByb21pc2VkIGFuZCBjYW4KLWJlIHVzZWQgdG8gYXR0YWNrIG90aGVyIGNvbnRhaW5l cnMgb3IgdGhlIGhvc3QgaXRzZWxmLgotCi1UaGlzIGF0dGFjayBpcyBvbmx5IHBvc3NpYmxlIHdp dGggcHJpdmlsZWdlZCBjb250YWluZXJzIHNpbmNlIGl0IHJlcXVpcmVzIHJvb3QKLXByaXZpbGVn ZSBvbiB0aGUgaG9zdCB0byBvdmVyd3JpdGUgdGhlIHJ1bkMgYmluYXJ5LiBVbnByaXZpbGVnZWQg Y29udGFpbmVycwotd2l0aCBhIG5vbi1pZGVudGl0eSBJRCBtYXBwaW5nIGRvIG5vdCBoYXZlIHRo ZSBwZXJtaXNzaW9uIHRvIHdyaXRlIHRvIHRoZSBob3N0Ci1iaW5hcnkgYW5kIHRoZXJlZm9yZSBh cmUgdW5hZmZlY3RlZCBieSB0aGlzIGF0dGFjay4KLQotTFhDIGlzIGFsc28gaW1wYWN0ZWQgaW4g YSBzaW1pbGFyIG1hbm5lciBieSB0aGlzIHZ1bG5lcmFiaWxpdHksIGhvd2V2ZXIgYXMgdGhlCi1M WEMgcHJvamVjdCBjb25zaWRlcnMgcHJpdmlsZWdlZCBjb250YWluZXJzIHRvIGJlIHVuc2FmZSBu byBDVkUgaGFzIGJlZW4KLWFzc2lnbmVkIGZvciB0aGlzIGlzc3VlIGZvciBMWEMuIFF1b3Rpbmcg ZnJvbSB0aGUKLWh0dHBzOi8vbGludXhjb250YWluZXJzLm9yZy9seGMvc2VjdXJpdHkvIHByb2pl Y3QncyBTZWN1cml0eSBpbmZvcm1hdGlvbiBwYWdlOgotCi0iQXMgcHJpdmlsZWdlZCBjb250YWlu ZXJzIGFyZSBjb25zaWRlcmVkIHVuc2FmZSwgd2UgdHlwaWNhbGx5IHdpbGwgbm90IGNvbnNpZGVy Ci1uZXcgY29udGFpbmVyIGVzY2FwZSBleHBsb2l0cyB0byBiZSBzZWN1cml0eSBpc3N1ZXMgd29y dGh5IG9mIGEgQ1ZFIGFuZCBxdWljawotZml4LiBXZSB3aWxsIGhvd2V2ZXIgdHJ5IHRvIG1pdGln YXRlIHRob3NlIGlzc3VlcyBzbyB0aGF0IGFjY2lkZW50YWwgZGFtYWdlIHRvCi10aGUgaG9zdCBp cyBwcmV2ZW50ZWQuIgotCi1UbyBwcmV2ZW50IHRoaXMgYXR0YWNrLCBMWEMgaGFzIGJlZW4gcGF0 Y2hlZCB0byBjcmVhdGUgYSB0ZW1wb3JhcnkgY29weSBvZiB0aGUKLWNhbGxpbmcgYmluYXJ5IGl0 c2VsZiB3aGVuIGl0IHN0YXJ0cyBvciBhdHRhY2hlcyB0byBjb250YWluZXJzLiBUbyBkbyB0aGlz IExYQwotY3JlYXRlcyBhbiBhbm9ueW1vdXMsIGluLW1lbW9yeSBmaWxlIHVzaW5nIHRoZSBtZW1m ZF9jcmVhdGUoKSBzeXN0ZW0gY2FsbCBhbmQKLWNvcGllcyBpdHNlbGYgaW50byB0aGUgdGVtcG9y YXJ5IGluLW1lbW9yeSBmaWxlLCB3aGljaCBpcyB0aGVuIHNlYWxlZCB0bwotcHJldmVudCBmdXJ0 aGVyIG1vZGlmaWNhdGlvbnMuIExYQyB0aGVuIGV4ZWN1dGVzIHRoaXMgc2VhbGVkLCBpbi1tZW1v cnkgZmlsZQotaW5zdGVhZCBvZiB0aGUgb3JpZ2luYWwgb24tZGlzayBiaW5hcnkuIEFueSBjb21w cm9taXNpbmcgd3JpdGUgb3BlcmF0aW9ucyBmcm9tCi1hIHByaXZpbGVnZWQgY29udGFpbmVyIHRv IHRoZSBob3N0IExYQyBiaW5hcnkgd2lsbCB0aGVuIHdyaXRlIHRvIHRoZSB0ZW1wb3JhcnkKLWlu LW1lbW9yeSBiaW5hcnkgYW5kIG5vdCB0byB0aGUgaG9zdCBiaW5hcnkgb24tZGlzaywgcHJlc2Vy dmluZyB0aGUgaW50ZWdyaXR5Ci1vZiB0aGUgaG9zdCBMWEMgYmluYXJ5LiBBbHNvIGFzIHRoZSB0 ZW1wb3JhcnksIGluLW1lbW9yeSBMWEMgYmluYXJ5IGlzIHNlYWxlZCwKLXdyaXRlcyB0byB0aGlz IHdpbGwgYWxzbyBmYWlsLgotCi1Ob3RlOiBtZW1mZF9jcmVhdGUoKSB3YXMgYWRkZWQgdG8gdGhl IExpbnV4IGtlcm5lbCBpbiB0aGUgMy4xNyByZWxlYXNlLgotCi1TaWduZWQtb2ZmLWJ5OiBDaHJp c3RpYW4gQnJhdW5lciA8Y2hyaXN0aWFuLmJyYXVuZXJAdWJ1bnR1LmNvbT4KLUNvLURldmVsb3Bl ZC1ieTogQWxlc2EgU2FyYWkgPGFzYXJhaUBzdXNlLmRlPgotQWNrZWQtYnk6IFNlcmdlIEhhbGx5 biA8c2VyZ2VAaGFsbHluLmNvbT4KLVNpZ25lZC1vZmYtYnk6IENocmlzdGlhbiBCcmF1bmVyIDxj aHJpc3RpYW4uYnJhdW5lckB1YnVudHUuY29tPgotLS0tCi0gY29uZmlndXJlLmFjICAgICAgICAg ICAgICAgfCAgMTIgKysrCi0gc3JjL2x4Yy9NYWtlZmlsZS5hbSAgICAgICAgfCAgIDQgKwotIHNy Yy9seGMvZmlsZV91dGlscy5jICAgICAgIHwgIDQxICsrKysrKysrLQotIHNyYy9seGMvZmlsZV91 dGlscy5oICAgICAgIHwgICAxICsKLSBzcmMvbHhjL3JleGVjLmMgICAgICAgICAgICB8IDE4MSAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCi0gc3JjL2x4Yy9zeXNjYWxsX3dy YXBwZXJzLmggfCAgMTQgKysrCi0gNiBmaWxlcyBjaGFuZ2VkLCAyNTIgaW5zZXJ0aW9ucygrKSwg MSBkZWxldGlvbigtKQotIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvbHhjL3JleGVjLmMKLQotZGlm ZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwotaW5kZXggODMxM2IxOGQxLi5k NDNkYWJjMGQgMTAwNjQ0Ci0tLS0gY29uZmlndXJlLmFjCi0rKysgY29uZmlndXJlLmFjCi1AQCAt NzQ2LDYgKzc0NiwxNyBAQCBBTV9DT05EX0lGKFtFTkFCTEVfRExPR10sCi0gCQldKQotIAldKQot IAotK0FDX0FSR19FTkFCTEUoW21lbWZkLXJleGVjXSwKLSsJW0FDX0hFTFBfU1RSSU5HKFstLWVu YWJsZS1tZW1mZC1yZXhlY10sIFtlbmZvcmNlIGxpYmx4YyBhcyBhIG1lbWZkIHRvIHByb3RlY3Qg YWdhaW5zdCBjZXJ0YWluIHN5bWxpbmsgYXR0YWNrcyBbZGVmYXVsdD15ZXNdXSldLAotKwlbXSwg W2VuYWJsZV9tZW1mZF9yZXhlYz15ZXNdKQotK0FNX0NPTkRJVElPTkFMKFtFTkZPUkNFX01FTUZE X1JFWEVDXSwgW3Rlc3QgIngkZW5hYmxlX21lbWZkX3JleGVjIiA9ICJ4eWVzIl0pCi0raWYgdGVz dCAieCRlbmFibGVfbWVtZmRfcmV4ZWMiID0gInh5ZXMiOyB0aGVuCi0rCUFDX0RFRklORShbRU5G T1JDRV9NRU1GRF9SRVhFQ10sIDEsIFtSZXhlYyBsaWJseGMgYXMgbWVtZmRdKQotKwlBQ19NU0df UkVTVUxUKFt5ZXNdKQotK2Vsc2UKLSsJQUNfTVNHX1JFU1VMVChbbm9dKQotK2ZpCi0rCi0gIyBG aWxlcyByZXF1aXJpbmcgc29tZSB2YXJpYWJsZSBleHBhbnNpb24KLSBBQ19DT05GSUdfRklMRVMo WwotIAlNYWtlZmlsZQotQEAgLTk3NCw2ICs5ODUsNyBAQCBTZWN1cml0eSBmZWF0dXJlczoKLSAg LSBMaW51eCBjYXBhYmlsaXRpZXM6ICRlbmFibGVfY2FwYWJpbGl0aWVzCi0gIC0gc2VjY29tcDog JGVuYWJsZV9zZWNjb21wCi0gIC0gU0VMaW51eDogJGVuYWJsZV9zZWxpbnV4Ci0rIC0gbWVtZmQg cmV4ZWM6ICRlbmFibGVfbWVtZmRfcmV4ZWMKLSAKLSBQQU06Ci0gIC0gUEFNIG1vZHVsZTogJGVu YWJsZV9wYW0KLWRpZmYgLS1naXQgYS9zcmMvbHhjL01ha2VmaWxlLmFtIGIvc3JjL2x4Yy9NYWtl ZmlsZS5hbQotaW5kZXggNmJhOWVjYWQyLi5kYzhhYTNkNzcgMTAwNjQ0Ci0tLS0gc3JjL2x4Yy9N YWtlZmlsZS5hbQotKysrIHNyYy9seGMvTWFrZWZpbGUuYW0KLUBAIC0xNzcsNiArMTc3LDEwIEBA IGlmICFIQVZFX1NUUkxDQVQKLSBsaWJseGNfbGFfU09VUkNFUyArPSAuLi9pbmNsdWRlL3N0cmxj YXQuYyAuLi9pbmNsdWRlL3N0cmxjYXQuaAotIGVuZGlmCi0gCi0raWYgRU5GT1JDRV9NRU1GRF9S RVhFQwotK2xpYmx4Y19sYV9TT1VSQ0VTICs9IHJleGVjLmMKLStlbmRpZgotKwotIEFNX0NGTEFH UyA9IC1ETFhDUk9PVEZTTU9VTlQ9XCIkKExYQ1JPT1RGU01PVU5UKVwiIFwKLSAJICAgIC1ETFhD UEFUSD1cIiQoTFhDUEFUSClcIiBcCi0gCSAgICAtRExYQ19HTE9CQUxfQ09ORj1cIiQoTFhDX0dM T0JBTF9DT05GKVwiIFwKLWRpZmYgLS1naXQgYS9zcmMvbHhjL2ZpbGVfdXRpbHMuYyBiL3NyYy9s eGMvZmlsZV91dGlscy5jCi1pbmRleCBmODlhYTYzOGQuLjkzMGZkNzM4YSAxMDA2NDQKLS0tLSBz cmMvbHhjL2ZpbGVfdXRpbHMuYwotKysrIHNyYy9seGMvZmlsZV91dGlscy5jCi1AQCAtMzEsNyAr MzEsNyBAQAotICNpbmNsdWRlICJjb25maWcuaCIKLSAjaW5jbHVkZSAiZmlsZV91dGlscy5oIgot ICNpbmNsdWRlICJtYWNyby5oIgotLSNpbmNsdWRlICJzdHJpbmcuaCIKLSsjaW5jbHVkZSAic3Ry aW5nX3V0aWxzLmgiCi0gCi0gaW50IGx4Y193cml0ZV90b19maWxlKGNvbnN0IGNoYXIgKmZpbGVu YW1lLCBjb25zdCB2b2lkICpidWYsIHNpemVfdCBjb3VudCwKLSAJCSAgICAgIGJvb2wgYWRkX25l d2xpbmUsIG1vZGVfdCBtb2RlKQotQEAgLTMyNywzICszMjcsNDIgQEAgc3NpemVfdCBseGNfc2Vu ZGZpbGVfbm9pbnRyKGludCBvdXRfZmQsIGludCBpbl9mZCwgb2ZmX3QgKm9mZnNldCwgc2l6ZV90 IGNvdW50KQotIAotIAlyZXR1cm4gcmV0OwotIH0KLSsKLStjaGFyICpmaWxlX3RvX2J1ZihjaGFy ICpwYXRoLCBzaXplX3QgKmxlbmd0aCkKLSt7Ci0rCWludCBmZDsKLSsJY2hhciBidWZbUEFUSF9N QVhdOwotKwljaGFyICpjb3B5ID0gTlVMTDsKLSsKLSsJaWYgKCFsZW5ndGgpCi0rCQlyZXR1cm4g TlVMTDsKLSsKLSsJZmQgPSBvcGVuKHBhdGgsIE9fUkRPTkxZIHwgT19DTE9FWEVDKTsKLSsJaWYg KGZkIDwgMCkKLSsJCXJldHVybiBOVUxMOwotKwotKwkqbGVuZ3RoID0gMDsKLSsJZm9yICg7Oykg ewotKwkJaW50IG47Ci0rCQljaGFyICpvbGQgPSBjb3B5OwotKwotKwkJbiA9IGx4Y19yZWFkX25v aW50cihmZCwgYnVmLCBzaXplb2YoYnVmKSk7Ci0rCQlpZiAobiA8IDApCi0rCQkJZ290byBvbl9l cnJvcjsKLSsJCWlmICghbikKLSsJCQlicmVhazsKLSsKLSsJCWNvcHkgPSBtdXN0X3JlYWxsb2Mo b2xkLCAoKmxlbmd0aCArIG4pICogc2l6ZW9mKCpvbGQpKTsKLSsJCW1lbWNweShjb3B5ICsgKmxl bmd0aCwgYnVmLCBuKTsKLSsJCSpsZW5ndGggKz0gbjsKLSsJfQotKwotKwljbG9zZShmZCk7Ci0r CXJldHVybiBjb3B5OwotKwotK29uX2Vycm9yOgotKwljbG9zZShmZCk7Ci0rCWZyZWUoY29weSk7 Ci0rCi0rCXJldHVybiBOVUxMOwotK30KLWRpZmYgLS1naXQgYS9zcmMvbHhjL2ZpbGVfdXRpbHMu aCBiL3NyYy9seGMvZmlsZV91dGlscy5oCi1pbmRleCA2MzYxNTU3YTAuLjUxOGE2MWFmMyAxMDA2 NDQKLS0tLSBzcmMvbHhjL2ZpbGVfdXRpbHMuaAotKysrIHNyYy9seGMvZmlsZV91dGlscy5oCi1A QCAtNTUsNSArNTUsNiBAQCBleHRlcm4gYm9vbCBpc19mc190eXBlKGNvbnN0IHN0cnVjdCBzdGF0 ZnMgKmZzLCBmc190eXBlX21hZ2ljIG1hZ2ljX3ZhbCk7Ci0gZXh0ZXJuIEZJTEUgKmZvcGVuX2Ns b2V4ZWMoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqbW9kZSk7Ci0gZXh0ZXJuIHNzaXpl X3QgbHhjX3NlbmRmaWxlX25vaW50cihpbnQgb3V0X2ZkLCBpbnQgaW5fZmQsIG9mZl90ICpvZmZz ZXQsCi0gCQkJCSAgIHNpemVfdCBjb3VudCk7Ci0rZXh0ZXJuIGNoYXIgKmZpbGVfdG9fYnVmKGNo YXIgKnBhdGgsIHNpemVfdCAqbGVuZ3RoKTsKLSAKLSAjZW5kaWYgLyogX19MWENfRklMRV9VVElM U19IICovCi1kaWZmIC0tZ2l0IGEvc3JjL2x4Yy9yZXhlYy5jIGIvc3JjL2x4Yy9yZXhlYy5jCi1u ZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwLi4zOTZiZDYxN2YKLS0tLSAvZGV2 L251bGwKLSsrKyBzcmMvbHhjL3JleGVjLmMKLUBAIC0wLDAgKzEsMTgxIEBACi0rLyogbGlibHhj YXBpCi0rICoKLSsgKiBDb3B5cmlnaHQgwqkgMjAxOSBDaHJpc3RpYW4gQnJhdW5lciA8Y2hyaXN0 aWFuLmJyYXVuZXJAdWJ1bnR1LmNvbT4uCi0rICogQ29weXJpZ2h0IMKpIDIwMTkgQ2Fub25pY2Fs IEx0ZC4KLSsgKgotKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0rICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIsIGFzCi0rICogcHVibGlzaGVk IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCi0rICoKLSsgKiBUaGlzIHByb2dyYW0g aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKLSsgKiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgotKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS UE9TRS4gIFNlZSB0aGUKLSsgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk ZXRhaWxzLgotKyAqCi0rICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcKLSsgKiB3aXRoIHRoaXMgcHJvZ3JhbTsg aWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLAotKyAq IDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSBV U0EuCi0rICovCi0rCi0rI2lmbmRlZiBfR05VX1NPVVJDRQotKyNkZWZpbmUgX0dOVV9TT1VSQ0Ug MQotKyNlbmRpZgotKyNpbmNsdWRlIDxlcnJuby5oPgotKyNpbmNsdWRlIDxzdGRpby5oPgotKyNp bmNsdWRlIDxzdGRsaWIuaD4KLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rCi0rI2luY2x1ZGUgImNv bmZpZy5oIgotKyNpbmNsdWRlICJmaWxlX3V0aWxzLmgiCi0rI2luY2x1ZGUgInJhd19zeXNjYWxs cy5oIgotKyNpbmNsdWRlICJzdHJpbmdfdXRpbHMuaCIKLSsjaW5jbHVkZSAic3lzY2FsbF93cmFw cGVycy5oIgotKwotKyNkZWZpbmUgTFhDX01FTUZEX1JFWEVDX1NFQUxTIFwKLSsJKEZfU0VBTF9T RUFMIHwgRl9TRUFMX1NIUklOSyB8IEZfU0VBTF9HUk9XIHwgRl9TRUFMX1dSSVRFKQotKwotK3N0 YXRpYyBpbnQgcHVzaF92YXJncyhjaGFyICpkYXRhLCBpbnQgZGF0YV9sZW5ndGgsIGNoYXIgKioq b3V0cHV0KQotK3sKLSsJaW50IG51bSA9IDA7Ci0rCWNoYXIgKmN1ciA9IGRhdGE7Ci0rCi0rCWlm ICghZGF0YSB8fCAqb3V0cHV0KQotKwkJcmV0dXJuIC0xOwotKwotKwkqb3V0cHV0ID0gbXVzdF9y ZWFsbG9jKE5VTEwsIHNpemVvZigqKm91dHB1dCkpOwotKwotKwl3aGlsZSAoY3VyIDwgZGF0YSAr IGRhdGFfbGVuZ3RoKSB7Ci0rCQludW0rKzsKLSsJCSpvdXRwdXQgPSBtdXN0X3JlYWxsb2MoKm91 dHB1dCwgKG51bSArIDEpICogc2l6ZW9mKCoqb3V0cHV0KSk7Ci0rCi0rCQkoKm91dHB1dClbbnVt IC0gMV0gPSBjdXI7Ci0rCQljdXIgKz0gc3RybGVuKGN1cikgKyAxOwotKwl9Ci0rCSgqb3V0cHV0 KVtudW1dID0gTlVMTDsKLSsJcmV0dXJuIG51bTsKLSt9Ci0rCi0rc3RhdGljIGludCBwYXJzZV9l eGVjX3BhcmFtcyhjaGFyICoqKmFyZ3YsIGNoYXIgKioqZW52cCkKLSt7Ci0rCWludCByZXQ7Ci0r CWNoYXIgKmNtZGxpbmUgPSBOVUxMLCAqZW52ID0gTlVMTDsKLSsJc2l6ZV90IGNtZGxpbmVfc2l6 ZSwgZW52X3NpemU7Ci0rCi0rCWNtZGxpbmUgPSBmaWxlX3RvX2J1ZigiL3Byb2Mvc2VsZi9jbWRs aW5lIiwgJmNtZGxpbmVfc2l6ZSk7Ci0rCWlmICghY21kbGluZSkKLSsJCWdvdG8gb25fZXJyb3I7 Ci0rCi0rCWVudiA9IGZpbGVfdG9fYnVmKCIvcHJvYy9zZWxmL2Vudmlyb24iLCAmZW52X3NpemUp OwotKwlpZiAoIWVudikKLSsJCWdvdG8gb25fZXJyb3I7Ci0rCi0rCXJldCA9IHB1c2hfdmFyZ3Mo Y21kbGluZSwgY21kbGluZV9zaXplLCBhcmd2KTsKLSsJaWYgKHJldCA8PSAwKQotKwkJZ290byBv bl9lcnJvcjsKLSsKLSsJcmV0ID0gcHVzaF92YXJncyhlbnYsIGVudl9zaXplLCBlbnZwKTsKLSsJ aWYgKHJldCA8PSAwKQotKwkJZ290byBvbl9lcnJvcjsKLSsKLSsJcmV0dXJuIDA7Ci0rCi0rb25f ZXJyb3I6Ci0rCWZyZWUoZW52KTsKLSsJZnJlZShjbWRsaW5lKTsKLSsKLSsJcmV0dXJuIC0xOwot K30KLSsKLStzdGF0aWMgaW50IGlzX21lbWZkKHZvaWQpCi0rewotKwlpbnQgZmQsIHNhdmVkX2Vy cm5vLCBzZWFsczsKLSsKLSsJZmQgPSBvcGVuKCIvcHJvYy9zZWxmL2V4ZSIsIE9fUkRPTkxZIHwg T19DTE9FWEVDKTsKLSsJaWYgKGZkIDwgMCkKLSsJCXJldHVybiAtRU5PVFJFQ09WRVJBQkxFOwot KwotKwlzZWFscyA9IGZjbnRsKGZkLCBGX0dFVF9TRUFMUyk7Ci0rCXNhdmVkX2Vycm5vID0gZXJy bm87Ci0rCWNsb3NlKGZkKTsKLSsJZXJybm8gPSBzYXZlZF9lcnJubzsKLSsJaWYgKHNlYWxzIDwg MCkKLSsJCXJldHVybiAtRUlOVkFMOwotKwotKwlyZXR1cm4gc2VhbHMgPT0gTFhDX01FTUZEX1JF WEVDX1NFQUxTOwotK30KLSsKLStzdGF0aWMgdm9pZCBseGNfcmV4ZWNfYXNfbWVtZmQoY2hhciAq KmFyZ3YsIGNoYXIgKiplbnZwLCBjb25zdCBjaGFyICptZW1mZF9uYW1lKQotK3sKLSsJaW50IHNh dmVkX2Vycm5vOwotKwlzc2l6ZV90IGJ5dGVzX3NlbnQ7Ci0rCWludCBmZCA9IC0xLCBtZW1mZCA9 IC0xOwotKwotKwltZW1mZCA9IG1lbWZkX2NyZWF0ZShtZW1mZF9uYW1lLCBNRkRfQUxMT1dfU0VB TElORyB8IE1GRF9DTE9FWEVDKTsKLSsJaWYgKG1lbWZkIDwgMCkKLSsJCXJldHVybjsKLSsKLSsJ ZmQgPSBvcGVuKCIvcHJvYy9zZWxmL2V4ZSIsIE9fUkRPTkxZIHwgT19DTE9FWEVDKTsKLSsJaWYg KGZkIDwgMCkKLSsJCWdvdG8gb25fZXJyb3I7Ci0rCi0rCS8qIHNlbmRmaWxlKCkgaGFuZGxlcyB1 cCB0byAyR0IuICovCi0rCWJ5dGVzX3NlbnQgPSBseGNfc2VuZGZpbGVfbm9pbnRyKG1lbWZkLCBm ZCwgTlVMTCwgTFhDX1NFTkRGSUxFX01BWCk7Ci0rCXNhdmVkX2Vycm5vID0gZXJybm87Ci0rCWNs b3NlKGZkKTsKLSsJZXJybm8gPSBzYXZlZF9lcnJubzsKLSsJaWYgKGJ5dGVzX3NlbnQgPCAwKQot KwkJZ290byBvbl9lcnJvcjsKLSsKLSsJaWYgKGZjbnRsKG1lbWZkLCBGX0FERF9TRUFMUywgTFhD X01FTUZEX1JFWEVDX1NFQUxTKSkKLSsJCWdvdG8gb25fZXJyb3I7Ci0rCi0rCWZleGVjdmUobWVt ZmQsIGFyZ3YsIGVudnApOwotKwotK29uX2Vycm9yOgotKwlzYXZlZF9lcnJubyA9IGVycm5vOwot KwljbG9zZShtZW1mZCk7Ci0rCWVycm5vID0gc2F2ZWRfZXJybm87Ci0rfQotKwotK3N0YXRpYyBp bnQgbHhjX3JleGVjKGNvbnN0IGNoYXIgKm1lbWZkX25hbWUpCi0rewotKwlpbnQgcmV0OwotKwlj aGFyICoqYXJndiA9IE5VTEwsICoqZW52cCA9IE5VTEw7Ci0rCi0rCXJldCA9IGlzX21lbWZkKCk7 Ci0rCWlmIChyZXQgPCAwICYmIHJldCA9PSAtRU5PVFJFQ09WRVJBQkxFKSB7Ci0rCQlmcHJpbnRm KHN0ZGVyciwKLSsJCQkiJXMgLSBGYWlsZWQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhpcyBpcyBh IG1lbWZkXG4iLAotKwkJCXN0cmVycm9yKGVycm5vKSk7Ci0rCQlyZXR1cm4gLTE7Ci0rCX0gZWxz ZSBpZiAocmV0ID4gMCkgewotKwkJcmV0dXJuIDA7Ci0rCX0KLSsKLSsJcmV0ID0gcGFyc2VfZXhl Y19wYXJhbXMoJmFyZ3YsICZlbnZwKTsKLSsJaWYgKHJldCA8IDApIHsKLSsJCWZwcmludGYoc3Rk ZXJyLAotKwkJCSIlcyAtIEZhaWxlZCB0byBwYXJzZSBjb21tYW5kIGxpbmUgcGFyYW1ldGVyc1xu IiwKLSsJCQlzdHJlcnJvcihlcnJubykpOwotKwkJcmV0dXJuIC0xOwotKwl9Ci0rCi0rCWx4Y19y ZXhlY19hc19tZW1mZChhcmd2LCBlbnZwLCBtZW1mZF9uYW1lKTsKLSsJZnByaW50ZihzdGRlcnIs ICIlcyAtIEZhaWxlZCB0byByZXhlYyBhcyBtZW1mZFxuIiwgc3RyZXJyb3IoZXJybm8pKTsKLSsJ cmV0dXJuIC0xOwotK30KLSsKLSsvKioKLSsgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgY29weSBhbnkg YmluYXJ5IHRoYXQgY2FsbHMgbGlibHhjIGludG8gYSBtZW1vcnkgZmlsZSBhbmQKLSsgKiB3aWxs IHVzZSB0aGUgbWVtZmQgdG8gcmV4ZWN1dGUgdGhlIGJpbmFyeS4gVGhpcyBpcyBkb25lIHRvIHBy ZXZlbnQgYXR0YWNrcwotKyAqIHRocm91Z2ggdGhlIC9wcm9jL3NlbGYvZXhlIHN5bWxpbmsgdG8g Y29ycnVwdCB0aGUgaG9zdCBiaW5hcnkgd2hlbiBob3N0IGFuZAotKyAqIGNvbnRhaW5lciBhcmUg aW4gdGhlIHNhbWUgdXNlciBuYW1lc3BhY2Ugb3IgaGF2ZSBzZXQgdXAgYW4gaWRlbnRpdHkgaWQK LSsgKiBtYXBwaW5nOiBDVkUtMjAxOS01NzM2LgotKyAqLwotK19fYXR0cmlidXRlX18oKGNvbnN0 cnVjdG9yKSkgc3RhdGljIHZvaWQgbGlibHhjX3JleGVjKHZvaWQpCi0rewotKwlpZiAobHhjX3Jl eGVjKCJsaWJseGMiKSkgewotKwkJZnByaW50ZihzdGRlcnIsICJGYWlsZWQgdG8gcmUtZXhlY3V0 ZSBsaWJseGMgdmlhIG1lbW9yeSBmaWxlIGRlc2NyaXB0b3JcbiIpOwotKwkJX2V4aXQoRVhJVF9G QUlMVVJFKTsKLSsJfQotK30KLWRpZmYgLS1naXQgYS9zcmMvbHhjL3N5c2NhbGxfd3JhcHBlcnMu aCBiL3NyYy9seGMvc3lzY2FsbF93cmFwcGVycy5oCi1pbmRleCA0MmQ5NGRiMjguLmRjYTRkMTU3 MSAxMDA2NDQKLS0tLSBzcmMvbHhjL3N5c2NhbGxfd3JhcHBlcnMuaAotKysrIHNyYy9seGMvc3lz Y2FsbF93cmFwcGVycy5oCi1AQCAtNTgsNiArNTgsMjAgQEAgc3RhdGljIGlubGluZSBsb25nIF9f a2V5Y3RsKGludCBjbWQsIHVuc2lnbmVkIGxvbmcgYXJnMiwgdW5zaWduZWQgbG9uZyBhcmczLAot ICNkZWZpbmUga2V5Y3RsIF9fa2V5Y3RsCi0gI2VuZGlmCi0gCi0rI2lmbmRlZiBGX0xJTlVYX1NQ RUNJRklDX0JBU0UKLSsjZGVmaW5lIEZfTElOVVhfU1BFQ0lGSUNfQkFTRSAxMDI0Ci0rI2VuZGlm Ci0rI2lmbmRlZiBGX0FERF9TRUFMUwotKyNkZWZpbmUgRl9BRERfU0VBTFMgKEZfTElOVVhfU1BF Q0lGSUNfQkFTRSArIDkpCi0rI2RlZmluZSBGX0dFVF9TRUFMUyAoRl9MSU5VWF9TUEVDSUZJQ19C QVNFICsgMTApCi0rI2VuZGlmCi0rI2lmbmRlZiBGX1NFQUxfU0VBTAotKyNkZWZpbmUgRl9TRUFM X1NFQUwgMHgwMDAxCi0rI2RlZmluZSBGX1NFQUxfU0hSSU5LIDB4MDAwMgotKyNkZWZpbmUgRl9T RUFMX0dST1cgMHgwMDA0Ci0rI2RlZmluZSBGX1NFQUxfV1JJVEUgMHgwMDA4Ci0rI2VuZGlmCi0r Ci0gI2lmbmRlZiBIQVZFX01FTUZEX0NSRUFURQotIHN0YXRpYyBpbmxpbmUgaW50IG1lbWZkX2Ny ZWF0ZShjb25zdCBjaGFyICpuYW1lLCB1bnNpZ25lZCBpbnQgZmxhZ3MpIHsKLSAJI2lmbmRlZiBf X05SX21lbWZkX2NyZWF0ZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9seGMvcGF0Y2hlcy9tdXNsLWNv bXBhdC5wYXRjaCBiL3NyY3BrZ3MvbHhjL3BhdGNoZXMvbXVzbC1jb21wYXQucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM0Yzk2MjliOGY3Li4wMDAwMDAwMDAwMAotLS0gYS9z cmNwa2dzL2x4Yy9wYXRjaGVzL211c2wtY29tcGF0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs MTAgKzAsMCBAQAotLS0tIHNyYy9seGMvY29tcGlsZXIuaAkyMDE4LTExLTIzIDAxOjA4OjI3LjAw MDAwMDAwMCArMDIwMAotKysrIHNyYy9seGMvY29tcGlsZXIuaAkyMDE4LTExLTI2IDIxOjI0OjQ5 LjYyOTUzNzYzMCArMDIwMAotQEAgLTIzLDcgKzIzLDYgQEAKLSAjaWZuZGVmIF9HTlVfU09VUkNF Ci0gI2RlZmluZSBfR05VX1NPVVJDRSAxCi0gI2VuZGlmCi0tI2luY2x1ZGUgPHN5cy9jZGVmcy5o PgotIAotICNpbmNsdWRlICJjb25maWcuaCIKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHhjL3Bh dGNoZXMvcmV4ZWN1dGUucGF0Y2ggYi9zcmNwa2dzL2x4Yy9wYXRjaGVzL3JleGVjdXRlLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YmM0M2NjZjZkYy4uMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9seGMvcGF0Y2hlcy9yZXhlY3V0ZS5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDE0OCArMCwwIEBACi1Gcm9tIGQzYTliZWZjODYxMTMyMjhmNzdjODkwMzAzMzZmYWE4NGE1 NTU3YzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBDaHJpc3RpYW4gQnJhdW5lciA8 Y2hyaXN0aWFuLmJyYXVuZXJAdWJ1bnR1LmNvbT4KLURhdGU6IFR1ZSwgMTIgRmViIDIwMTkgMTc6 MzE6MTQgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gcmV4ZWM6IG1ha2UgcmV4ZWN1dGlvbiBvcHQt aW4gZm9yIGxpYnJhcnkgY2FsbGVycwotTUlNRS1WZXJzaW9uOiAxLjAKLUNvbnRlbnQtVHlwZTog dGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJp dAotCi1XZSBjYW5ub3QgcmV4ZWN1dGUgdGhlIGxpYmx4YyBzaGFyZWQgbGlicmFyeSB1bmNvbmRp dGlvbmFsbHkgYXMgdGhpcyB3b3VsZAotYnJlYWsgbW9zdCBvZiBvdXIgZG93bnN0cmVhbXMuIEhl cmUgYXJlIHNvbWUgc2NlbmFyaW9zOgotLSBhbnlvbmUgcGVyZm9ybWluZyBhIGRsb3BlbigpIG9u IHRoZSBzaGFyZWQgbGlicmFyeSAoZS5nLiB1c2VycyBvZiB0aGUgTFhDCi0gIFB5dGhvbiBiaW5k aW5ncykKLS0gTFhEIGFzIGl0IG5lZWRzIHRvIGtub3cgdGhlIGFic29sdXRlIHBhdGggdG8gaXRz IG93biBleGVjdXRhYmxlIGJhc2VkIG9uCi0gIC9wcm9jL3NlbGYvZXhlIGV0Yy4KLQotVGhpcyBj b21taXQgbWFrZXMgdGhlIHJleGVjdXRpb24gb2YgbGlibHhjIGNvbmRpdGlvbmFsIG9uIHdoZXRo ZXIgdGhlCi1MWENfTUVNRkRfUkVYRUMgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgc2V0IG9yIG5v dC4gSWYgaXQgaXMgdGhlbiBsaWJseGMgaXMKLXVuY29uZGl0aW9uYWxseSByZXhlY3V0ZWQuCi0K LVRoZSBvbmx5IHJlbGV2YW50IGF0dGFjayB2ZWN0b3IgZXhpc3RzIGZvciBseGMtYXR0YWNoIHdo aWNoIHdlIHNpbXBseSByZWV4ZWN1dGUKLXVuY29uZGl0aW9uYWxseS4KLQotUmVwb3J0ZWQtYnk6 IFN0w6lwaGFuZSBHcmFiZXIgPHN0Z3JhYmVyQHVidW50dS5jb20+Ci1TaWduZWQtb2ZmLWJ5OiBD aHJpc3RpYW4gQnJhdW5lciA8Y2hyaXN0aWFuLmJyYXVuZXJAdWJ1bnR1LmNvbT4KLS0tLQotIHNy Yy9seGMvTWFrZWZpbGUuYW0gICAgICAgIHwgIDQgKysrLQotIHNyYy9seGMvcmV4ZWMuYyAgICAg ICAgICAgIHwgIDQgKystLQotIHNyYy9seGMvcmV4ZWMuaCAgICAgICAgICAgIHwgMjYgKysrKysr KysrKysrKysrKysrKysrKysrKysKLSBzcmMvbHhjL3Rvb2xzL2x4Y19hdHRhY2guYyB8IDE4ICsr KysrKysrKysrKysrKysrKwotIDQgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgMyBk ZWxldGlvbnMoLSkKLSBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2x4Yy9yZXhlYy5oCi0KLWRpZmYg LS1naXQgYS9zcmMvbHhjL01ha2VmaWxlLmFtIGIvc3JjL2x4Yy9NYWtlZmlsZS5hbQotaW5kZXgg ZTE0OTlhN2ViLi5lZjE5ZGY5ZTAgMTAwNjQ0Ci0tLS0gc3JjL2x4Yy9NYWtlZmlsZS5hbQotKysr IHNyYy9seGMvTWFrZWZpbGUuYW0KLUBAIC0yNSw2ICsyNSw3IEBAIG5vaW5zdF9IRUFERVJTID0g YXBpX2V4dGVuc2lvbnMuaCBcCi0gCQkgbW9uaXRvci5oIFwKLSAJCSBuYW1lc3BhY2UuaCBcCi0g CQkgcmF3X3N5c2NhbGxzLmggXAotKwkJIHJleGVjLmggXAotIAkJIHN0YXJ0LmggXAotIAkJIHN0 YXRlLmggXAotIAkJIHN0b3JhZ2UvYnRyZnMuaCBcCi1AQCAtMTgwLDcgKzE4MSw3IEBAIGxpYmx4 Y19sYV9TT1VSQ0VTICs9IC4uL2luY2x1ZGUvc3RybGNhdC5jIC4uL2luY2x1ZGUvc3RybGNhdC5o Ci0gZW5kaWYKLSAKLSBpZiBFTkZPUkNFX01FTUZEX1JFWEVDCi0tbGlibHhjX2xhX1NPVVJDRVMg Kz0gcmV4ZWMuYwotK2xpYmx4Y19sYV9TT1VSQ0VTICs9IHJleGVjLmMgcmV4ZWMuaAotIGVuZGlm Ci0gCi0gQU1fQ0ZMQUdTID0gLURMWENST09URlNNT1VOVD1cIiQoTFhDUk9PVEZTTU9VTlQpXCIg XAotQEAgLTMwNyw2ICszMDgsNyBAQCBMREFERCA9IGxpYmx4Yy5sYSBcCi0gCi0gaWYgRU5BQkxF X1RPT0xTCi0gbHhjX2F0dGFjaF9TT1VSQ0VTID0gdG9vbHMvbHhjX2F0dGFjaC5jIFwKLSsJCSAg ICAgcmV4ZWMuYyByZXhlYy5oIFwKLSAJCSAgICAgdG9vbHMvYXJndW1lbnRzLmMgdG9vbHMvYXJn dW1lbnRzLmgKLSBseGNfYXV0b3N0YXJ0X1NPVVJDRVMgPSB0b29scy9seGNfYXV0b3N0YXJ0LmMg XAotIAkJCXRvb2xzL2FyZ3VtZW50cy5jIHRvb2xzL2FyZ3VtZW50cy5oCi1kaWZmIC0tZ2l0IGEv c3JjL2x4Yy9yZXhlYy5jIGIvc3JjL2x4Yy9yZXhlYy5jCi1pbmRleCAzY2U0OTliMWUuLjAyNDcy OGQ4NSAxMDA2NDQKLS0tLSBzcmMvbHhjL3JleGVjLmMKLSsrKyBzcmMvbHhjL3JleGVjLmMKLUBA IC0xNDIsNyArMTQyLDcgQEAgc3RhdGljIHZvaWQgbHhjX3JleGVjX2FzX21lbWZkKGNoYXIgKiph cmd2LCBjaGFyICoqZW52cCwgY29uc3QgY2hhciAqbWVtZmRfbmFtZSkKLSAJZXJybm8gPSBzYXZl ZF9lcnJubzsKLSB9Ci0gCi0tc3RhdGljIGludCBseGNfcmV4ZWMoY29uc3QgY2hhciAqbWVtZmRf bmFtZSkKLStpbnQgbHhjX3JleGVjKGNvbnN0IGNoYXIgKm1lbWZkX25hbWUpCi0gewotIAlpbnQg cmV0OwotIAljaGFyICoqYXJndiA9IE5VTEwsICoqZW52cCA9IE5VTEw7Ci1AQCAtMTc5LDcgKzE3 OSw3IEBAIHN0YXRpYyBpbnQgbHhjX3JleGVjKGNvbnN0IGNoYXIgKm1lbWZkX25hbWUpCi0gICov Ci0gX19hdHRyaWJ1dGVfXygoY29uc3RydWN0b3IpKSBzdGF0aWMgdm9pZCBsaWJseGNfcmV4ZWMo dm9pZCkKLSB7Ci0tCWlmIChseGNfcmV4ZWMoImxpYmx4YyIpKSB7Ci0rCWlmIChnZXRlbnYoIkxY Q19NRU1GRF9SRVhFQyIpICYmIGx4Y19yZXhlYygibGlibHhjIikpIHsKLSAJCWZwcmludGYoc3Rk ZXJyLCAiRmFpbGVkIHRvIHJlLWV4ZWN1dGUgbGlibHhjIHZpYSBtZW1vcnkgZmlsZSBkZXNjcmlw dG9yXG4iKTsKLSAJCV9leGl0KEVYSVRfRkFJTFVSRSk7Ci0gCX0KLWRpZmYgLS1naXQgYS9zcmMv bHhjL3JleGVjLmggYi9zcmMvbHhjL3JleGVjLmgKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRl eCAwMDAwMDAwMDAuLjA4OGRlZDkzMgotLS0tIC9kZXYvbnVsbAotKysrIHNyYy9seGMvcmV4ZWMu aAotQEAgLTAsMCArMSwyNiBAQAotKy8qIGxpYmx4Y2FwaQotKyAqCi0rICogQ29weXJpZ2h0IMKp IDIwMTkgQ2hyaXN0aWFuIEJyYXVuZXIgPGNocmlzdGlhbi5icmF1bmVyQHVidW50dS5jb20+Lgot KyAqIENvcHlyaWdodCDCqSAyMDE5IENhbm9uaWNhbCBMdGQuCi0rICoKLSsgKiBUaGlzIGxpYnJh cnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0rICog bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp YwotKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b247IGVpdGhlcgotKyAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotKwotKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmli dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotKyAqIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0rICog TUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl IHRoZSBHTlUKLSsgKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRh aWxzLgotKwotKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBM ZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQotKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5 OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCi0rICogSW5j LiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMw MSAgVVNBCi0rICovCi0rCi0rI2lmbmRlZiBfX0xYQ19SRVhFQ19ICi0rI2RlZmluZSBfX0xYQ19S RVhFQ19ICi0rCi0rZXh0ZXJuIGludCBseGNfcmV4ZWMoY29uc3QgY2hhciAqbWVtZmRfbmFtZSk7 Ci0rCi0rI2VuZGlmIC8qIF9fTFhDX1JFWEVDX0ggKi8KLWRpZmYgLS1naXQgYS9zcmMvbHhjL3Rv b2xzL2x4Y19hdHRhY2guYyBiL3NyYy9seGMvdG9vbHMvbHhjX2F0dGFjaC5jCi1pbmRleCAzZGUw ZDc3NDcuLmQxMGI2ZWNjMiAxMDA2NDQKLS0tLSBzcmMvbHhjL3Rvb2xzL2x4Y19hdHRhY2guYwot KysrIHNyYy9seGMvdG9vbHMvbHhjX2F0dGFjaC5jCi1AQCAtNDQsMTAgKzQ0LDI4IEBACi0gI2lu Y2x1ZGUgImNvbmZpZy5oIgotICNpbmNsdWRlICJjb25maWxlLmgiCi0gI2luY2x1ZGUgImxvZy5o IgotKyNpbmNsdWRlICJyZXhlYy5oIgotICNpbmNsdWRlICJ1dGlscy5oIgotIAotIGx4Y19sb2df ZGVmaW5lKGx4Y19hdHRhY2gsIGx4Yyk7Ci0gCi0rLyoqCi0rICogVGhpcyBmdW5jdGlvbiB3aWxs IGNvcHkgYW55IGJpbmFyeSB0aGF0IGNhbGxzIGxpYmx4YyBpbnRvIGEgbWVtb3J5IGZpbGUgYW5k Ci0rICogd2lsbCB1c2UgdGhlIG1lbWZkIHRvIHJleGVjdXRlIHRoZSBiaW5hcnkuIFRoaXMgaXMg ZG9uZSB0byBwcmV2ZW50IGF0dGFja3MKLSsgKiB0aHJvdWdoIHRoZSAvcHJvYy9zZWxmL2V4ZSBz eW1saW5rIHRvIGNvcnJ1cHQgdGhlIGhvc3QgYmluYXJ5IHdoZW4gaG9zdCBhbmQKLSsgKiBjb250 YWluZXIgYXJlIGluIHRoZSBzYW1lIHVzZXIgbmFtZXNwYWNlIG9yIGhhdmUgc2V0IHVwIGFuIGlk ZW50aXR5IGlkCi0rICogbWFwcGluZzogQ1ZFLTIwMTktNTczNi4KLSsgKi8KLSsjaWZkZWYgRU5G T1JDRV9NRU1GRF9SRVhFQwotK19fYXR0cmlidXRlX18oKGNvbnN0cnVjdG9yKSkgc3RhdGljIHZv aWQgbHhjX2F0dGFjaF9yZXhlYyh2b2lkKQotK3sKLSsJaWYgKCFnZXRlbnYoIkxYQ19NRU1GRF9S RVhFQyIpICYmIGx4Y19yZXhlYygibHhjLWF0dGFjaCIpKSB7Ci0rCQlmcHJpbnRmKHN0ZGVyciwg IkZhaWxlZCB0byByZS1leGVjdXRlIGx4Yy1hdHRhY2ggdmlhIG1lbW9yeSBmaWxlIGRlc2NyaXB0 b3JcbiIpOwotKwkJX2V4aXQoRVhJVF9GQUlMVVJFKTsKLSsJfQotK30KLSsjZW5kaWYKLSsKLSBz dGF0aWMgaW50IG15X3BhcnNlcihzdHJ1Y3QgbHhjX2FyZ3VtZW50cyAqYXJncywgaW50IGMsIGNo YXIgKmFyZyk7Ci0gc3RhdGljIGludCBhZGRfdG9fc2ltcGxlX2FycmF5KGNoYXIgKioqYXJyYXks IHNzaXplX3QgKmNhcGFjaXR5LCBjaGFyICp2YWx1ZSk7Ci0gc3RhdGljIGJvb2wgc3RkZmRfaXNf cHR5KHZvaWQpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9seGMvdGVtcGxhdGUgYi9zcmNwa2dzL2x4 Yy90ZW1wbGF0ZQppbmRleCA2MzljZDYzMjJmNS4uNWMwNmY0OTM5ZmQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvbHhjL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbHhjL3RlbXBsYXRlCkBAIC0yLDcgKzIs NyBAQAogX2Rlc2M9IkxpbnV4IENvbnRhaW5lcnMiCiAKIHBrZ25hbWU9bHhjCi12ZXJzaW9uPTMu MS4wCit2ZXJzaW9uPTMuMi4xCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJl CiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtZG9jIC0tZW5hYmxlLXNlY2NvbXAKQEAgLTE2LDcg KzE2LDcgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGhv bWVwYWdlPSJodHRwczovL2xpbnV4Y29udGFpbmVycy5vcmciCiBsaWNlbnNlPSJMR1BMLTIuMS1v ci1sYXRlciIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9saW51eGNvbnRhaW5lcnMub3JnL2Rvd25sb2Fk cy9seGMtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT00ZDg3NzJjMjViYWVhZWEyYzM3YTk1 NDkwMmI4OGMwNWQxNDU0YzkxYzg4N2NiNmEwOTk3MjU4Y2ZhYzNmZGM1CitjaGVja3N1bT01Zjkw Mzk4NmE0YjE3ZDYwN2VlYTI4YzBhYTU2YmYxZTc2ZTg3MDc3NDdiMWFhMDdkMzE2ODAzMzhiMWNj M2Q0CiAKIGNvbmZfZmlsZXM9Ii9ldGMvbHhjL2RlZmF1bHQuY29uZiIKIG1ha2VfZGlycz0iCgpG cm9tIDJkZWEzMmE4YjNjZDYxNmZjN2Y1N2Q0ZDNjMGY5ZmRmYjZhOTIzMmQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEp1bGlvIEdhbHZhbiA8anVsaW9AZXBhem90ZS5uZXQ+CkRhdGU6 IFNhdCwgMyBBdWcgMjAxOSAxNjozMjo1NiAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggNi82XSBseGQ6 IHVwZGF0ZSB0byAzLjE3CgotLS0KIHNyY3BrZ3MvbHhkL3BhdGNoZXMvc2VjY29tcC5wYXRjaCB8 IDQxIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvbHhkL3RlbXBsYXRl ICAgICAgICAgICAgICB8IDIwICsrKy0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0IGlu c2VydGlvbnMoKyksIDU3IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv bHhkL3BhdGNoZXMvc2VjY29tcC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHhkL3BhdGNo ZXMvc2VjY29tcC5wYXRjaCBiL3NyY3BrZ3MvbHhkL3BhdGNoZXMvc2VjY29tcC5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTdiNTJhMzE5MzEuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbHhkL3BhdGNoZXMvc2VjY29tcC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQx ICswLDAgQEAKLWx4Yy9seGRAYTE4MWVkNCBbUEFUQ0hdIHNlY2NvbXA6IGRlZmluZSBfX05SX21r bm9kIGlmIG1pc3NpbmcKLWx4Yy9seGRAYzY1NWVkNSBbUEFUQ0hdIHNlY2NvbXA6IHJld29yayBt aXNzaW5nIHN5c2NhbGwgbnVtYmVyIGRlZmluaXRpb25zCi0tLS0KLSBseGQvc2VjY29tcC5nbyB8 IDkgKysrKysrKysrCi0gMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKQotCi1kaWZmIC0t Z2l0IGEvbHhkL3NlY2NvbXAuZ28gYi9seGQvc2VjY29tcC5nbwotaW5kZXggMGFmYWQ3Y2FjYy4u MzIzOTdiOTcyOSAxMDA2NDQKLS0tLSBseGQvc2VjY29tcC5nbwotKysrIGx4ZC9zZWNjb21wLmdv Ci1AQCAtMTA5LDYgKzEwOSwxNCBAQAotIAlyZXR1cm4gLUVQRVJNOwotIH0KLQotKyNpZm5kZWYg X19OUl9ta25vZGF0Ci0rCSNlcnJvciBtaXNzaW5nIGtlcm5lbCBoZWFkZXJzCi0rI2Vsc2UKLSsJ I2lmZGVmIF9fTlJfbWtub2QKLSsJCSNkZWZpbmUgTFhEX01VU1RfQ0hFQ0tfTUtOT0QKLSsgCSNl bmRpZgotKyNlbmRpZgotKwotIHN0YXRpYyBpbnQgc2VjY29tcF9ub3RpZnlfbWtub2Rfc2V0X3Jl c3BvbnNlKGludCBmZF9tZW0sIHN0cnVjdCBzZWNjb21wX25vdGlmeV9wcm94eV9tc2cgKm1zZywK LSAJCQkJCSAgICAgY2hhciAqYnVmLCBzaXplX3Qgc2l6ZSwKLSAJCQkJCSAgICAgbW9kZV90ICpt b2RlLCBkZXZfdCAqZGV2LAotQEAgLTEyNCw2ICsxMzIsNyBAQCBzdGF0aWMgaW50IHNlY2NvbXBf bm90aWZ5X21rbm9kX3NldF9yZXNwb25zZShpbnQgZmRfbWVtLCBzdHJ1Y3Qgc2VjY29tcF9ub3Rp ZnlfcAotCXJlc3AtPnZhbCA9IDA7Ci0KLQlzd2l0Y2ggKHJlcS0+ZGF0YS5ucikgewotKyNpZmRl ZiBMWERfTVVTVF9DSEVDS19NS05PRAotCWNhc2UgX19OUl9ta25vZDoKLQkJcmVzcC0+ZXJyb3Ig PSBkZXZpY2VfYWxsb3dlZChyZXEtPmRhdGEuYXJnc1syXSwgcmVxLT5kYXRhLmFyZ3NbMV0pOwot CQlpZiAocmVzcC0+ZXJyb3IpIHsKLUBAIC0xNDMsNiArMTQ5LDcgQEAgc3RhdGljIGludCBzZWNj b21wX25vdGlmeV9ta25vZF9zZXRfcmVzcG9uc2UoaW50IGZkX21lbSwgc3RydWN0IHNlY2NvbXBf bm90aWZ5X3AKLQkJKnBpZCA9IHJlcS0+cGlkOwotCi0JCWJyZWFrOwotKyNlbmRpZgotCWNhc2Ug X19OUl9ta25vZGF0OgotCQlpZiAocmVxLT5kYXRhLmFyZ3NbMF0gIT0gQVRfRkRDV0QpIHsKLQkJ CWVycm5vID0gRUlOVkFMOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9seGQvdGVtcGxhdGUgYi9zcmNw a2dzL2x4ZC90ZW1wbGF0ZQppbmRleCAyYTljZjQ0ZDg4ZC4uMjc5ZmMxZDgwZWYgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvbHhkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbHhkL3RlbXBsYXRlCkBAIC0x LDM1ICsxLDIzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdseGQnCiBwa2duYW1lPWx4ZAotdmVy c2lvbj0zLjE0Cit2ZXJzaW9uPTMuMTcKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdvCiBnb19p bXBvcnRfcGF0aD1naXRodWIuY29tL2x4Yy9seGQKIGdvX2J1aWxkX3RhZ3M9bGlic3FsaXRlMwog Z29fcGFja2FnZT0iJHtnb19pbXBvcnRfcGF0aH0vbHhkICR7Z29faW1wb3J0X3BhdGh9L2x4Ywog ICR7Z29faW1wb3J0X3BhdGh9L2x4ZC1wMmMgJHtnb19pbXBvcnRfcGF0aH0vZnVpZHNoaWZ0Igot aG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgotbWFrZWRlcGVuZHM9Imx4Yy1kZXZlbCBhY2wt ZGV2ZWwgZHFsaXRlLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdpdCIKK21h a2VkZXBlbmRzPSJseGMtZGV2ZWwgYWNsLWRldmVsIGRxbGl0ZS1kZXZlbCBsaWJ1di1kZXZlbCBy YWZ0LWRldmVsIgogZGVwZW5kcz0ibHhjIGFjbCBhY2wtcHJvZ3MgcnN5bmMgc3F1YXNoZnMtdG9v bHMgeHogZG5zbWFzcSBpcHRhYmxlcyIKIHNob3J0X2Rlc2M9Ik5leHQgZ2VuZXJhdGlvbiBzeXN0 ZW0gY29udGFpbmVyIG1hbmFnZXIiCiBtYWludGFpbmVyPSJDYW1lcm9uIE5lbW8gPGNhbWVyb250 bm9ybWFuQGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJBcGFjaGUtMi4wIgogaG9tZXBhZ2U9Imh0dHBz Oi8vbGludXhjb250YWluZXJzLm9yZy9seGQiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vbGludXhjb250 YWluZXJzLm9yZy9kb3dubG9hZHMvbHhkL2x4ZC0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3Vt PTQwOWU0NzU4Y2JlYjQzYjA5OGQwMjY1YzRjZTA1YWVlYWM1YWU3M2Y4OTE0Y2ViMTAwNmU2YTZk ODlmZTFmZTUKK2NoZWNrc3VtPTk0ODRhY2I0ODliOTFmNThhZThmZTQ1MThlNWEwOWJkZjI0NjA4 MDg4MTdlZmQzMjc2NWFkOTI0MWVmNzI5ZWYKIHN5c3RlbV9ncm91cHM9Imx4ZCIKIAotZG9fY29u ZmlndXJlKCkgewotCSMgdGhlIExYRCB0YXJiYWxsIHBhY2thZ2VzIHVwIHRoZSByZXF1aXJlZCBk ZXBlbmRlbmNpZXMKLQlsbiAtcyAiJHdya3NyYy9kaXN0IiAiJEdPUEFUSCIKLX0KLQotZG9fYnVp bGQoKSB7Ci0JIyBkb24ndCBnby1nZXQgdGhlIGRlcGVuZGVuY2llcywganVzdCBpbnN0YWxsIHdp dGggd2hhdCdzIHRoZXJlCi0JY2QgIiRHT1NSQ1BBVEgiCi0JZ29fcGFja2FnZT0ke2dvX3BhY2th Z2U6LSRnb19pbXBvcnRfcGF0aH0KLQlnbyBpbnN0YWxsIC10YWdzICIke2dvX2J1aWxkX3RhZ3N9 IiAtbGRmbGFncyAiJHtnb19sZGZsYWdzfSIgJHtnb19wYWNrYWdlfQotfQotCiBwb3N0X2luc3Rh bGwoKSB7CiAJdmluc3RhbGwgc2NyaXB0cy9iYXNoL2x4ZC1jbGllbnQgNjQ0IC91c3Ivc2hhcmUv YmFzaC1jb21wbGV0aW9uL2NvbXBsZXRpb25zIGx4ZAogCXZsaWNlbnNlIENPUFlJTkcgTElDRU5T RQo= --===============4484864494573113909==--