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 159b964b for ; Sat, 27 Jul 2019 18:53:10 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============7197615082945516766==" MIME-Version: 1.0 Subject: [PR PATCH] New package: k2pdfopt To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org Message-ID: Date: Sat, 27 Jul 2019 20:53:10 +0200 GitHub notification mails are now in MIME to allow UTF8. --===============7197615082945516766== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IHB1cnB1cnJvdCBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vcHVycHVy cm90L3ZvaWQtcGFja2FnZXMgazJwZGZvcHQKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgv dm9pZC1wYWNrYWdlcy9wdWxsLzEzMzczCgpOZXcgcGFja2FnZTogazJwZGZvcHQKCgpBIHBhdGNo IGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1 bGwvMTMzNzMucGF0Y2ggaXMgYXR0YWNoZWQ= --===============7197615082945516766== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-k2pdfopt-13373.patch" RnJvbSBhMTBkMWNkNWUyMDkyYzQ5N2E5OTgyOTk2NmUyNmZkYTY5MmNmMGYwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBwdXJwdXJyb3QgPDQ1NTIxOTEyK3B1cnB1cnJvdEB1c2Vycy5u b3JlcGx5LmdpdGh1Yi5jb20+CkRhdGU6IFNhdCwgMjcgSnVsIDIwMTkgMjA6NDk6NDUgKzAyMDAK U3ViamVjdDogW1BBVENIXSBOZXcgcGFja2FnZTogazJwZGZvcHQKCi0tLQogLi4uL3BhdGNoZXMv MDEtQ01ha2VMaXN0cy50eHQtZml4ZXMucGF0Y2ggICAgIHwgIDg3ICsrKysrKwogLi4uL2sycGRm b3B0L3BhdGNoZXMvMDItaGVhZGVyLWZpeGVzLnBhdGNoICAgIHwgIDgzICsrKysrKwogLi4uLzAz LXdpbGx1c2xpYi1vY3J0ZXNzLmMtdGVzc2NhcGktZml4LnBhdGNoIHwgMjYyICsrKysrKysrKysr KysrKysrKwogLi4uLzA0LXdpbGx1c2xpYi13bXVwZGZpbmZvLmMtbXVwZGYtZml4LnBhdGNoIHwg IDI2ICsrCiAuLi4vcGF0Y2hlcy8wNS13aWxsdXNsaWItYm1wbXVwZGYuYy1maXgucGF0Y2ggfCAg IDggKwogc3JjcGtncy9rMnBkZm9wdC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgIDE3 ICsrCiA2IGZpbGVzIGNoYW5nZWQsIDQ4MyBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9rMnBkZm9wdC9wYXRjaGVzLzAxLUNNYWtlTGlzdHMudHh0LWZpeGVzLnBhdGNo CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9rMnBkZm9wdC9wYXRjaGVzLzAyLWhlYWRlci1m aXhlcy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvazJwZGZvcHQvcGF0Y2hlcy8w My13aWxsdXNsaWItb2NydGVzcy5jLXRlc3NjYXBpLWZpeC5wYXRjaAogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvazJwZGZvcHQvcGF0Y2hlcy8wNC13aWxsdXNsaWItd211cGRmaW5mby5jLW11 cGRmLWZpeC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvazJwZGZvcHQvcGF0Y2hl cy8wNS13aWxsdXNsaWItYm1wbXVwZGYuYy1maXgucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL2sycGRmb3B0L3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rMnBkZm9wdC9w YXRjaGVzLzAxLUNNYWtlTGlzdHMudHh0LWZpeGVzLnBhdGNoIGIvc3JjcGtncy9rMnBkZm9wdC9w YXRjaGVzLzAxLUNNYWtlTGlzdHMudHh0LWZpeGVzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi4wNzkzMWRkNDM0NwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvazJwZGZvcHQvcGF0Y2hlcy8wMS1DTWFrZUxpc3RzLnR4dC1maXhlcy5wYXRjaApAQCAtMCww ICsxLDg3IEBACitkaWZmIC0tZ2l0IENNYWtlTGlzdHMudHh0IENNYWtlTGlzdHMudHh0CitpbmRl eCA0YTIzNzhiNWU5Li4yZWQwY2NjYTRiIDEwMDY0NAorLS0tIENNYWtlTGlzdHMudHh0CisrKysg Q01ha2VMaXN0cy50eHQKK0BAIC01NCwwICs1NSBAQAorKyAgc2V0KEsyUERGT1BUX0xJQiAke0sy UERGT1BUX0xJQn0gJHtKQVNQRVJfTElCUkFSWX0pCitAQCAtNTcsMTEgKzU4IEBACistIyBwYXRo cyBmcm9tIHdpbGx1c2xpYi93Z3MuYworLWZpbmRfcHJvZ3JhbShHSE9TVFNDUklQVF9FWEVDVVRB QkxFIGdzCistIyAgUEFUSFMgL3Vzci9iaW4gL3Vzci9zaGFyZS9ncyAvdXNyL2xvY2FsL2dzIC9v cHQvZ3MgCistIyAgICAvdXNyL3NoYXJlL2dzKiAvdXNyL2xvY2FsL2dzKiAvb3B0L2dzKgorLSkK Ky1pZihHSE9TVFNDUklQVF9FWEVDVVRBQkxFKQorLSAgc2V0KEhBVkVfR0hPU1RTQ1JJUFQgMSkK Ky0gIG1lc3NhZ2UoU1RBVFVTICJGb3VuZCBnaG9zdHNjcmlwdCBleGVjdXRhYmxlIikKKy1lbHNl KCkKKy0gIG1lc3NhZ2UoU1RBVFVTICJDb3VsZCBOT1QgZmluZCBnaG9zdHNjcmlwdCBleGVjdXRh YmxlIikKKy1lbmRpZihHSE9TVFNDUklQVF9FWEVDVVRBQkxFKQorK3NldChIQVZFX0dIT1NUU0NS SVBUIDEpCitAQCAtNzAgKzYwLDAgQEAKKy0jIEhBVkVfR1NMX0xJQgorQEAgLTcxLDAgKzYyLDYg QEAKKytwa2dfY2hlY2tfbW9kdWxlcyhHU0wgZ3NsKQorK2lmKEdTTF9GT1VORCkKKysgIHNldChI QVZFX0dTTF9MSUIgMSkKKysgIGluY2x1ZGVfZGlyZWN0b3JpZXMoU1lTVEVNICR7R1NMX0lOQ0xV REVESVJ9KQorKyAgc2V0KEsyUERGT1BUX0xJQiAke0syUERGT1BUX0xJQn0gJHtHU0xfTERGTEFH U30pCisrZW5kaWYoR1NMX0ZPVU5EKQorQEAgLTc2LDIgKzcxLDAgQEAKKy1wa2dfY2hlY2tfbW9k dWxlcyhNVVBERiBtdXBkZikKKy1pZihNVVBERl9GT1VORCkKK0BAIC03OSw3ICs3MyBAQAorLSAg IyAoaW5jbHVkZXMgamJpZzJkZWMsIG9wZW5qcGVnLCBmcmVldHlwZSkKKy0gIGluY2x1ZGVfZGly ZWN0b3JpZXMoU1lTVEVNICR7TVVQREZfSU5DTFVERURJUn0pCistICBtZXNzYWdlKFNUQVRVUyAi bXVwZGYgbGlicmFyaWVzOiAke01VUERGX0xERkxBR1N9IikKKy0gIHNldChLMlBERk9QVF9MSUIg JHtLMlBERk9QVF9MSUJ9ICR7TVVQREZfTERGTEFHU30gCistICAgIC1sbXVwZGYtanMtbm9uZSAt bG9wZW5qcGVnIC1samJpZzJkZWMgLWxqcGVnIC1sZnJlZXR5cGUKKy0gICkKKy1lbmRpZihNVVBE Rl9GT1VORCkKKytzZXQoSzJQREZPUFRfTElCICR7SzJQREZPUFRfTElCfSAtcHRocmVhZCAtbG11 cGRmIC1sbXVwZGYtdGhpcmQgLWxvcGVuanAyIC1samJpZzJkZWMgLWxmcmVldHlwZSAtbGhhcmZi dXp6KQorQEAgLTk1LDIgKzkxLDE0IEBACistIyBIQVZFX0xFUFRPTklDQV9MSUIKKy0jIEhBVkVf VEVTU0VSQUNUX0xJQgorKworK3BrZ19jaGVja19tb2R1bGVzKExFUFRPTklDQSBsZXB0KQorK2lm KExFUFRPTklDQV9GT1VORCkKKysgIHNldChIQVZFX0xFUFRPTklDQV9MSUIgMSkKKysgIGluY2x1 ZGVfZGlyZWN0b3JpZXMoU1lTVEVNICR7TEVQVE9OSUNBX0lOQ0xVREVESVJ9KQorKyAgc2V0KEsy UERGT1BUX0xJQiAke0syUERGT1BUX0xJQn0gJHtMRVBUT05JQ0FfTERGTEFHU30gJHtMRVBUT05J Q0FfTElCUkFSSUVTfSkKKytlbmRpZihMRVBUT05JQ0FfRk9VTkQpCisrCisrcGtnX2NoZWNrX21v ZHVsZXMoVEVTU0VSQUNUIHRlc3NlcmFjdCkKKytpZihURVNTRVJBQ1RfRk9VTkQpCisrICBzZXQo SEFWRV9URVNTRVJBQ1RfTElCIDEpCisrICBpbmNsdWRlX2RpcmVjdG9yaWVzKFNZU1RFTSAke1RF U1NFUkFDVF9JTkNMVURFRElSfSkKKysgIHNldChLMlBERk9QVF9MSUIgJHtLMlBERk9QVF9MSUJ9 ICR7VEVTU0VSQUNUX0xERkxBR1N9KQorK2VuZGlmKFRFU1NFUkFDVF9GT1VORCkKK0BAIC0xMDAg KzEwOCBAQAorLVNFVChDTUFLRV9DX0ZMQUdTICIke0NNQUtFX0NfRkxBR1N9IC1EVVNFX0NNQUtF IC1XYWxsIikKKytTRVQoQ01BS0VfQ19GTEFHUyAiJHtDTUFLRV9DX0ZMQUdTfSAtRFVTRV9DTUFL RSAtV2FsbCAtV2V4dHJhIikKK0BAIC0xMDgsMCArMTE3LDIgQEAKKytpbmNsdWRlX2RpcmVjdG9y aWVzKCR7UFJPSkVDVF9CSU5BUllfRElSfSkKKysKK0BAIC0xMTIgKzEyMSwwIEBACistIyBtcwor QEAgLTExNCArMTIzIEBACistdGFyZ2V0X2xpbmtfbGlicmFyaWVzIChrMnBkZm9wdCBrMnBkZm9w dGxpYiB3aWxsdXNsaWIgJHtLMlBERk9QVF9MSUJ9KQorK3RhcmdldF9saW5rX2xpYnJhcmllcyhr MnBkZm9wdCBrMnBkZm9wdGxpYiB3aWxsdXNsaWIgJHtLMlBERk9QVF9MSUJ9KQorQEAgLTExNSww ICsxMjUgQEAKKytpbnN0YWxsKFRBUkdFVFMgazJwZGZvcHQgUlVOVElNRSBERVNUSU5BVElPTiBi aW4pCitkaWZmIC0tZ2l0IHdpbGx1c2xpYi9DTWFrZUxpc3RzLnR4dCB3aWxsdXNsaWIvQ01ha2VM aXN0cy50eHQKK2luZGV4IDQ2M2JiYzk1ZTcuLjEwNGQwMmUzNjAgMTAwNjQ0CistLS0gd2lsbHVz bGliL0NNYWtlTGlzdHMudHh0CisrKysgd2lsbHVzbGliL0NNYWtlTGlzdHMudHh0CitAQCAtOSAr OSBAQAorLSAgICBvY3Jqb2NyLmMgb2NydGVzcy5jIHBkZndyaXRlLmMgcG9pbnQyZC5jIHJlbmRl ci5jIHN0cmJ1Zi5jIHN0cmluZy5jCisrICAgIG9jcmdvY3IuYyBvY3J0ZXNzLmMgcGRmd3JpdGUu YyBwb2ludDJkLmMgcmVuZGVyLmMgc3RyYnVmLmMgc3RyaW5nLmMKK0BAIC0yNCwwICsyNSw0IEBA CisraWYoVEVTU0VSQUNUX0ZPVU5EKQorKyAgc2V0KFdJTExVU0xJQl9TUkMgJHtXSUxMVVNMSUJf U1JDfSBvY3J0ZXNzLmMpCisrZW5kaWYoVEVTU0VSQUNUX0ZPVU5EKQorKworQEAgLTI5LDMgKzMz IEBACistIyBIQVZFX0dPQ1JfTElCOiBvY3Jqb2NyLmMKKy0jIEhBVkVfVEVTU0VSQUNUX0xJQjog b2NydGVzcy5jIAorLQorKyMgSEFWRV9HT0NSX0xJQjogb2NyZ29jci5jCmRpZmYgLS1naXQgYS9z cmNwa2dzL2sycGRmb3B0L3BhdGNoZXMvMDItaGVhZGVyLWZpeGVzLnBhdGNoIGIvc3JjcGtncy9r MnBkZm9wdC9wYXRjaGVzLzAyLWhlYWRlci1maXhlcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uMWI1NjY3ZmMwOWMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2sycGRmb3B0L3BhdGNoZXMvMDItaGVhZGVyLWZpeGVzLnBhdGNoCkBAIC0wLDAgKzEsODMg QEAKK2RpZmYgLS1naXQgd2lsbHVzbGliL2dzbHBvbHlmaXQuYyB3aWxsdXNsaWIvZ3NscG9seWZp dC5jCitpbmRleCA1ZDJiNmZiYjg1Li5mMTI3YmYwNTRmIDEwMDY0NAorLS0tIHdpbGx1c2xpYi9n c2xwb2x5Zml0LmMKKysrKyB3aWxsdXNsaWIvZ3NscG9seWZpdC5jCitAQCAtMjQsNyArMjQsMTAg QEAKKyAjaW5jbHVkZSA8c3RkbGliLmg+CisgI2luY2x1ZGUgIndpbGx1cy5oIgorICNpZmRlZiBI QVZFX0dTTF9MSUIKKy0jaW5jbHVkZSA8Z3NsLmg+CisrI2luY2x1ZGUgPGdzbC9nc2xfcG9seS5o PgorKyNpbmNsdWRlIDxnc2wvZ3NsX3ZlY3Rvci5oPgorKyNpbmNsdWRlIDxnc2wvZ3NsX211bHRp Zml0Lmg+CisrI2luY2x1ZGUgPGdzbC9nc2xfbWF0cml4Lmg+CisgI2VuZGlmCisgCisgdm9pZCBn c2xwb2x5Zml0KGRvdWJsZSAqeCxkb3VibGUgKnkwLGludCBuLGludCBkLGRvdWJsZSAqYzApCitk aWZmIC0tZ2l0IHdpbGx1c2xpYi9ibXAuYyB3aWxsdXNsaWIvYm1wLmMKK2luZGV4IDU4MzY0NGQ1 NjUuLmIyYzM2ZDU2NzMgMTAwNjQ0CistLS0gd2lsbHVzbGliL2JtcC5jCisrKysgd2lsbHVzbGli L2JtcC5jCitAQCAtMzcsNyArMzcsNyBAQAorICNpbmNsdWRlIDxqcGVnbGliLmg+CisgI2VuZGlm CisgI2lmZGVmIEhBVkVfSkFTUEVSX0xJQgorLSNpbmNsdWRlIDxqYXNwZXIuaD4KKysjaW5jbHVk ZSA8amFzcGVyL2phc3Blci5oPgorICNlbmRpZgorIAorICNkZWZpbmUgQk9VTkQoeCx4bWluLHht YXgpICBpZiAoKHgpPCh4bWluKSkgKHgpPSh4bWluKTsgZWxzZSB7IGlmICgoeCk+KHhtYXgpKSAo eCk9KHhtYXgpOyB9CitkaWZmIC0tZ2l0IHdpbGx1c2xpYi9vY3J0ZXNzLmMgd2lsbHVzbGliL29j cnRlc3MuYworaW5kZXggZTEzNjZlMWFhYi4uNThhYWY5N2ZiOSAxMDA2NDQKKy0tLSB3aWxsdXNs aWIvb2NydGVzcy5jCisrKysgd2lsbHVzbGliL29jcnRlc3MuYworQEAgLTI0LDggKzI0LDkgQEAK KyAjaW5jbHVkZSA8c3RkbGliLmg+CisgI2luY2x1ZGUgPHN0cmluZy5oPgorICNpbmNsdWRlIDxj dHlwZS5oPgorLSNpbmNsdWRlIDxsZXB0b25pY2EuaD4KKy0jaW5jbHVkZSA8dGVzc2VyYWN0Lmg+ CisrI2luY2x1ZGUgPGxvY2FsZS5oPgorKyNpbmNsdWRlIDxsZXB0b25pY2EvYWxsaGVhZGVycy5o PgorKyNpbmNsdWRlIDx0ZXNzZXJhY3QvY2FwaS5oPgorICNpbmNsdWRlICJ3aWxsdXMuaCIKKyAK KyAKK2RpZmYgLS1naXQgd2lsbHVzbGliL3dsZXB0b25pY2EuYyB3aWxsdXNsaWIvd2xlcHRvbmlj YS5jCitpbmRleCBhNGUzY2ZkNjFkLi5hODViZTA5NDlkIDEwMDY0NAorLS0tIHdpbGx1c2xpYi93 bGVwdG9uaWNhLmMKKysrKyB3aWxsdXNsaWIvd2xlcHRvbmljYS5jCitAQCAtMjMsNyArMjMsNyBA QAorICNpbmNsdWRlICJ3aWxsdXMuaCIKKyAKKyAjaWZkZWYgSEFWRV9MRVBUT05JQ0FfTElCCist I2luY2x1ZGUgPGxlcHRvbmljYS5oPgorKyNpbmNsdWRlIDxsZXB0b25pY2EvYWxsaGVhZGVycy5o PgorIAorIHN0YXRpYyB2b2lkIHdsZXB0X3BpeF9mcm9tX2JtcChQSVggKipwaXhwdHIsV0lMTFVT QklUTUFQICpibXApOworIHN0YXRpYyB2b2lkIHdsZXB0X2JtcF9mcm9tX3BpeChXSUxMVVNCSVRN QVAgKmJtcCxQSVggKnBpeCk7CitAQCAtMTM1LDcgKzEzNSw3IEBAIHBpeFdyaXRlKCJwaXhiLnBu ZyIscGl4YixJRkZfUE5HKTsKKyAgICAgZGV3MT1kZXdhcnBDcmVhdGUocGl4YiwxKTsKKyAgICAg cGl4RGVzdHJveSgmcGl4Yik7CisgICAgIGRld2FycGFJbnNlcnREZXdhcnAoZGV3YSxkZXcxKTsK Ky0gICAgZGV3YXJwQnVpbGRQYWdlTW9kZWxfZXgoZGV3MSxkZWJ1ZyxmaXRfb3JkZXIpOworKyAg ICBkZXdhcnBCdWlsZFBhZ2VNb2RlbChkZXcxLGRlYnVnKTsKKyAgICAgaWYgKGJtcDEhPU5VTEwp CisgICAgICAgICB7CisgICAgICAgICBQSVggKnBpeDIsKnBpeDJkOworCitkaWZmIC0tZ2l0IHdp bGx1c2xpYi93bXVwZGYuYyB3aWxsdXNsaWIvd211cGRmLmMKK2luZGV4IDgxNjI3ZWZkNGMuLmZj YWI4NGMxZGIgMTAwNjQ0CistLS0gd2lsbHVzbGliL3dtdXBkZi5jCisrKysgd2lsbHVzbGliL3dt dXBkZi5jCitAQCAtMTg5LDggKzE4OSw4IEBAIGludCB3bXVwZGZfcmVtYWtlX3BkZihjaGFyICpp bmZpbGUsY2hhciAqb3V0ZmlsZSxXUERGUEFHRUlORk8gKnBhZ2VpbmZvLGludCB1c2VfCisgICAg IHBkZl93cml0ZV9vcHRzLmRvX2NvbXByZXNzPTE7CisgICAgIHBkZl93cml0ZV9vcHRzLmRvX2xp bmVhcj0wOworICAgICBwZGZfd3JpdGVfb3B0cy5kb19nYXJiYWdlPTE7IC8qIDIgYW5kIDMgZG9u J3Qgd29yayBmb3IgdGhpcy4gKi8KKy0gICAgcGRmX3dyaXRlX29wdHMuY29udGludWVfb25fZXJy b3I9MDsKKy0gICAgcGRmX3dyaXRlX29wdHMuZXJyb3JzPU5VTEw7CisrICAgIC8vcGRmX3dyaXRl X29wdHMuY29udGludWVfb25fZXJyb3I9MDsKKysgICAgLy9wZGZfd3JpdGVfb3B0cy5lcnJvcnM9 TlVMTDsKKyAgICAgd3JpdGVfZmFpbGVkPTA7CisgICAgIHdwZGZwYWdlaW5mb19zb3J0KHBhZ2Vp bmZvKTsKKyAgICAgeHJlZj1OVUxMOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rMnBkZm9wdC9wYXRj aGVzLzAzLXdpbGx1c2xpYi1vY3J0ZXNzLmMtdGVzc2NhcGktZml4LnBhdGNoIGIvc3JjcGtncy9r MnBkZm9wdC9wYXRjaGVzLzAzLXdpbGx1c2xpYi1vY3J0ZXNzLmMtdGVzc2NhcGktZml4LnBhdGNo Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hZGM3NmM4Mzg2NgotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvazJwZGZvcHQvcGF0Y2hlcy8wMy13aWxsdXNsaWItb2Ny dGVzcy5jLXRlc3NjYXBpLWZpeC5wYXRjaApAQCAtMCwwICsxLDI2MiBAQAorZGlmZiAtciAtdTAg d2lsbHVzbGliL29jcnRlc3MuYyB3aWxsdXNsaWIvb2NydGVzcy5jCistLS0gd2lsbHVzbGliL29j cnRlc3MuYwkyMDE4LTEyLTMxIDE5OjU5OjU4LjAwMDAwMDAwMCArMDEwMAorKysrIHdpbGx1c2xp Yi9vY3J0ZXNzLmMJMjAxOS0wNy0yNyAxODo0NzowNi43MDY3NjU3MzMgKzAyMDAKK0BAIC0yOSww ICszMCwyNTggQEAKKysKKysKKysvKgorKyoqIG9jcl90eXBlPTA6ICBPRU1fREVGQVVMVAorKyoq IG9jcl90eXBlPTE6ICBPRU1fVEVTU0VSQUNUX09OTFkKKysqKiBvY3JfdHlwZT0yOiAgT0VNX0xT VE1fT05MWQorKyoqIG9jcl90eXBlPTM6ICBPRU1fVEVTU0VSQUNUX0xTVE1fQ09NQklORUQKKysq LworK3ZvaWQgKnRlc3NfY2FwaV9pbml0KGNoYXIgKmRhdGFwYXRoLGNoYXIgKmxhbmd1YWdlLGlu dCBvY3JfdHlwZSxGSUxFICpvdXQsCisrICAgICAgICAgICAgICAgICAgICAgY2hhciAqaW5pdHN0 cixpbnQgbWF4bGVuLGludCAqc3RhdHVzKQorKworKyAgICB7CisrICAgIGNoYXIgb3JpZ2luYWxf bG9jYWxlWzI1Nl07CisrICAgIFRlc3NCYXNlQVBJICphcGkgPSBUZXNzQmFzZUFQSUNyZWF0ZSgp OworKworKyAgICAvKiB3aWxsdXMgbW9kLCAxMS0yNC0xNiAqLworKyAgICAvKiBUZXNzZXJhY3Qg bmVlZHMgIkMiIGxvY2FsZSB0byBjb3JyZWN0bHkgcGFyc2UgYWxsIGRhdGEgLnRyYWluZWRkYXRh IGZpbGVzLiAqLworKworKyAgICBzdHJuY3B5KG9yaWdpbmFsX2xvY2FsZSxzZXRsb2NhbGUoTENf QUxMLE5VTEwpLDI1NSk7CisrICAgIG9yaWdpbmFsX2xvY2FsZVsyNTVdPSdcMCc7CisrICAgIHNl dGxvY2FsZShMQ19BTEwsIkMiKTsKKysKKysgICAgLy8gTWFrZSB0aGUgb3JkZXIgb2YgYXJncyBh IGJpdCBtb3JlIGZvcmdpdmluZyB0aGFuIGl0IHVzZWQgdG8gYmUuCisrICAgIGNvbnN0IGNoYXIq IGxhbmcgPSAiZW5nIjsKKysgICAgVGVzc1BhZ2VTZWdNb2RlIHBhZ2VzZWdtb2RlID0gUFNNX1NJ TkdMRV9CTE9DSzsKKysgICAgaWYgKGxhbmd1YWdlIT1OVUxMICYmIGxhbmd1YWdlWzBdIT0nXDAn KQorKyAgICAgICAgbGFuZyA9IGxhbmd1YWdlOworKyAKKysvKgorK3Y0LjAwIGxvYWRzIGVpdGhl ciBURVNTRVJBQ1QgZW5naW5lciwgTFNUTSBlbmdpbmUsIG9yIGJvdGguICBObyBDVUJFLgorKyov CisrICAgIG9jcl90eXBlPTA7IC8qIElnbm9yZSBzcGVjaWZpZWQgYW5kIHVzZSBkZWZhdWx0ICov CisrICAgIFRlc3NCYXNlQVBJU2V0T3V0cHV0TmFtZShhcGksIE5VTEwpOworKyAgICAoKnN0YXR1 cyk9VGVzc0Jhc2VBUElJbml0MihhcGksIGRhdGFwYXRoLGxhbmcsCisrICAgICAgICAgICAgICBv Y3JfdHlwZT09MCA/IE9FTV9ERUZBVUxUIDoKKysgICAgICAgICAgICAgICAgKG9jcl90eXBlPT0x ID8gT0VNX1RFU1NFUkFDVF9PTkxZIDoKKysgICAgICAgICAgICAgICAgICAgKG9jcl90eXBlPT0y ID8gT0VNX0xTVE1fT05MWSA6CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChP RU1fVEVTU0VSQUNUX0xTVE1fQ09NQklORUQpKSkpOworKyAgICBpZiAoKCpzdGF0dXMpIT0wKQor KyAgICAgICAgeworKyAgICAgICAgLyogd2lsbHVzIG1vZCwgMTEtMjQtMTYgKi8KKysgICAgICAg IHNldGxvY2FsZShMQ19BTEwsb3JpZ2luYWxfbG9jYWxlKTsKKysgICAgICAgIFRlc3NCYXNlQVBJ RW5kKGFwaSk7CisrICAgICAgICBUZXNzQmFzZUFQSURlbGV0ZShhcGkpOworKyAgICAgICAgcmV0 dXJuKE5VTEwpOworKyAgICAgICAgfQorKyAgICAvKgorKyAgICBhcGkuSW5pdCgidGVzc2NhcGki LGxhbmcsdGVzc2VyYWN0OjpPRU1fREVGQVVMVCwKKysgICAgICAgICAgICYoYXJndlthcmddKSwg YXJnYyAtIGFyZywgTlVMTCwgTlVMTCwgZmFsc2UpOworKyAgICAqLworKyAgICAvLyBXZSBoYXZl IDIgcG9zc2libGUgc291cmNlcyBvZiBwYWdlc2VnbW9kZTogYSBjb25maWcgZmlsZSBhbmQKKysg ICAgLy8gdGhlIGNvbW1hbmQgbGluZS4gRm9yIGJhY2t3YXJkcyBjb21wYXRhYmlsaXR5IHJlYXNv bnMsIHRoZQorKyAgICAvLyBkZWZhdWx0IGluIHRlc3NlcmFjdCBpcyB0ZXNzZXJhY3Q6OlBTTV9T SU5HTEVfQkxPQ0ssIGJ1dCB0aGUKKysgICAgLy8gZGVmYXVsdCBmb3IgdGhpcyBwcm9ncmFtIGlz IHRlc3NlcmFjdDo6UFNNX0FVVE8uIFdlIHdpbGwgbGV0CisrICAgIC8vIHRoZSBjb25maWcgZmls ZSB0YWtlIHByaW9yaXR5LCBzbyB0aGUgY29tbWFuZC1saW5lIGRlZmF1bHQKKysgICAgLy8gY2Fu IHRha2UgcHJpb3JpdHkgb3ZlciB0aGUgdGVzc2VyYWN0IGRlZmF1bHQsIHNvIHdlIHVzZSB0aGUK KysgICAgLy8gdmFsdWUgZnJvbSB0aGUgY29tbWFuZCBsaW5lIG9ubHkgaWYgdGhlIHJldHJpZXZl ZCBtb2RlCisrICAgIC8vIGlzIHN0aWxsIHRlc3NlcmFjdDo6UFNNX1NJTkdMRV9CTE9DSywgaW5k aWNhdGluZyBubyBjaGFuZ2UKKysgICAgLy8gaW4gYW55IGNvbmZpZyBmaWxlLiBUaGVyZWZvcmUg dGhlIG9ubHkgd2F5IHRvIGZvcmNlCisrICAgIC8vIHRlc3NlcmFjdDo6UFNNX1NJTkdMRV9CTE9D SyBpcyBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCisrICAgIC8vIEl0IHdvdWxkIGJlIHNpbXBsZXIg aWYgd2UgY291bGQgc2V0IHRoZSB2YWx1ZSBiZWZvcmUgSW5pdCwKKysgICAgLy8gYnV0IHRoYXQg ZG9lc24ndCB3b3JrLgorKyAgICBpZiAoVGVzc0Jhc2VBUElHZXRQYWdlU2VnTW9kZShhcGkpID09 IFBTTV9TSU5HTEVfQkxPQ0spCisrICAgICAgICBUZXNzQmFzZUFQSVNldFBhZ2VTZWdNb2RlKGFw aSwgcGFnZXNlZ21vZGUpOworKworKyAgICAvKgorKyAgICAqKiBJbml0aWFsaXphdGlvbiBtZXNz YWdlCisrICAgICovCisrICAgIHsKKysgICAgY2hhciBpc3RyWzEwMjRdOworKworKy8vIHByaW50 ZigidGVzc2VkaXRfb2NyX2VuZ2luZV9tb2RlID0gJWRcbiIsdGVzc2VkaXRfb2NyX2VuZ2luZV9t b2RlKTsKKysgICAgc3ByaW50Zihpc3RyLCIlcyIsVGVzc1ZlcnNpb24oKSk7CisrICAgIHNwcmlu dGYoJmlzdHJbc3RybGVuKGlzdHIpXSwiXG4gICAgVGVzc2VyYWN0IGRhdGEgZm9sZGVyID0gJyVz JyIsZGF0YXBhdGg9PU5VTEw/Z2V0ZW52KCJURVNTREFUQV9QUkVGSVgiKTpkYXRhcGF0aCk7Cisr ICAgIHN0cmNhdChpc3RyLCJcbiAgICBUZXNzZXJhY3QgbGFuZ3VhZ2VzOiAiKTsKKysgICAgY2hh cioqIGxhbmd1YWdlcyA9IFRlc3NCYXNlQVBJR2V0QXZhaWxhYmxlTGFuZ3VhZ2VzQXNWZWN0b3Io YXBpKTsKKysvKgorK3ByaW50ZigiT0VNPSVkXG4iLGFwaS0+b2VtKCkpOworK3ByaW50ZigiTGFu Z3M9JyVzJ1xuIixhcGktPkdldEluaXRMYW5ndWFnZXNBc1N0cmluZygpKTsKKytwcmludGYoIkFu eVRlc3NMYW5nKCk9JWRcbiIsKGludClhcGktPnRlc3NlcmFjdCgpLT5BbnlUZXNzTGFuZygpKTsK KytwcmludGYoIkFueUxTVE1MYW5nKCk9JWRcbiIsKGludClhcGktPnRlc3NlcmFjdCgpLT5BbnlM U1RNTGFuZygpKTsKKytwcmludGYoIm51bV9zdWJfbGFuZ3MoKT0lZFxuIixhcGktPnRlc3NlcmFj dCgpLT5udW1fc3ViX2xhbmdzKCkpOworK3ByaW50ZigibGFuZ3VhZ2VzLnNpemUoKT0lZFxuIiwo aW50KWxhbmd1YWdlcy5zaXplKCkpOworKyovCisrICAgIGNoYXIqIGwgPSBsYW5ndWFnZXM7Cisr ICAgIGludCBlbmcgPSAwOworKyAgICBUZXNzQmFzZUFQSSAqbGFuZzE7IAorKyAgICB3aGlsZSAo bCAhPSBOVUxMKQorKyAgICAgICAgeworKyAgICAgICAgICAgIGVuZz0oaW50KVRlc3NCYXNlQVBJ T2VtKGFwaSk7CisrICAgICAgICAgICAgc3ByaW50ZigmaXN0cltzdHJsZW4oaXN0cildLCIlcyVz IFslc10iLGw9PWxhbmd1YWdlcz8iIjoiLCAiLGwsCisrICAgICAgICAgICAgICAgICAgICBlbmc9 PTI/IkxTVE0rVGVzcyI6KGVuZz09MT8iTFNUTSI6IlRlc3MiKSk7CisrICAgICAgICAgICAgbCsr OworKyAgICAgICAgfQorKyAgICAKKysgICAgVGVzc0RlbGV0ZVRleHRBcnJheShsYW5ndWFnZXMp OworKworKyAgICAvKgorKyAgICBpZiAob2NyX3R5cGU9PTAgfHwgb2NyX3R5cGU9PTMpCisrICAg ICAgICBzcHJpbnRmKCZpc3RyW3N0cmxlbihpc3RyKV0sIltMU1RNK10gKGxhbmc9Iik7CisrICAg IGVsc2UgaWYgKG9jcl90eXBlPT0yKQorKyAgICAgICAgc3ByaW50ZigmaXN0cltzdHJsZW4oaXN0 cildLCJbTFNUTV0gKGxhbmc9Iik7CisrICAgIHN0cm5jcHkoJmlzdHJbc3RybGVuKGlzdHIpXSxs YW5ndWFnZSwyNTMtc3RybGVuKGlzdHIpKTsKKysgICAgaXN0clsyNTNdPSdcMCc7CisrICAgIHN0 cmNhdChpc3RyLCIpIik7CisrICAgICovCisrICAgIGlmIChvdXQhPU5VTEwpCisrICAgICAgICBm cHJpbnRmKG91dCwiJXNcbiIsaXN0cik7CisrICAgIGlmIChpbml0c3RyIT1OVUxMKQorKyAgICAg ICAgeworKyAgICAgICAgc3RybmNweShpbml0c3RyLGlzdHIsbWF4bGVuLTEpOworKyAgICAgICAg aW5pdHN0clttYXhsZW4tMV09J1wwJzsKKysgICAgICAgIH0KKysgICAgfQorKworKworKyAgICAv KiBUdXJuIG9mZiBMU1RNIGRlYnVnZ2luZyBvdXRwdXQgKi8KKysgICAgVGVzc0Jhc2VBUElTZXRW YXJpYWJsZShhcGksImxzdG1fZGVidWdfbGV2ZWwiLCIwIik7CisrI2lmIChXSUxMVVNERUJVRyAm IDEpCisrICAgIFRlc3NCYXNlQVBJU2V0VmFyaWFibGUoYXBpLCJsc3RtX2RlYnVnX2xldmVsIiwi OSIpOworKyAgICBUZXNzQmFzZUFQSVNldFZhcmlhYmxlKGFwaSwicGFyYWdyYXBoX2RlYnVnX2xl dmVsIiwiOSIpOworKyAgICBUZXNzQmFzZUFQSVNldFZhcmlhYmxlKGFwaSwidGVzc2RhdGFfbWFu YWdlcl9kZWJ1Z19sZXZlbCIsIjkiKTsKKysgICAgVGVzc0Jhc2VBUElTZXRWYXJpYWJsZShhcGks InRvc3BfZGVidWdfbGV2ZWwiLCI5Iik7CisrICAgIFRlc3NCYXNlQVBJU2V0VmFyaWFibGUoYXBp LCJ3b3JkcmVjX2RlYnVnX2xldmVsIiwiOSIpOworKyAgICBUZXNzQmFzZUFQSVNldFZhcmlhYmxl KGFwaSwic2Vnc2VhcmNoX2RlYnVnX2xldmVsIiwiOSIpOworKyNlbmRpZgorKyAgICAvKiB3aWxs dXMgbW9kLCAxMS0yNC0xNiAqLworKyAgICBzZXRsb2NhbGUoTENfQUxMLG9yaWdpbmFsX2xvY2Fs ZSk7CisrICAgIHJldHVybigodm9pZCAqKWFwaSk7CisrICAgIH0KKysKKysKKytpbnQgdGVzc19j YXBpX2dldF9vY3Iodm9pZCAqdmFwaSxQSVggKnBpeCxjaGFyICpvdXRzdHIsaW50IG1heGxlbixp bnQgc2VnbW9kZSxGSUxFICpvdXQpCisrCisrICAgIHsKKysgICAgVGVzc0Jhc2VBUEkgKmFwaTsK KysgICAgc3RhdGljIGludCBvbGRfc2VnbW9kZT0tMTsKKysKKysgICAgYXBpPShUZXNzQmFzZUFQ SSAqKXZhcGk7CisrICAgIGlmIChvbGRfc2VnbW9kZSAhPSBzZWdtb2RlKQorKyAgICAgICAgewor KyAgICAgICAgb2xkX3NlZ21vZGU9c2VnbW9kZTsKKysgICAgICAgIFRlc3NCYXNlQVBJU2V0UGFn ZVNlZ01vZGUoYXBpLCAoVGVzc1BhZ2VTZWdNb2RlKXNlZ21vZGUpOworKyAgICAgICAgfQorKyAg ICBpZiAoIVRlc3NCYXNlQVBJUHJvY2Vzc1BhZ2UoYXBpLHBpeCwwLE5VTEwsTlVMTCwwLE5VTEwp KQorKyAgICAgICAgeworKyAgICAgICAgLyogcGl4RGVzdHJveSgmcGl4KTsgKi8KKysgICAgICAg IGlmIChvdXQhPU5VTEwpCisrICAgICAgICAgICAgZnByaW50ZihvdXQsInRlc3NjYXBpOiAgRXJy b3IgZHVyaW5nIGJpdG1hcCBwcm9jZXNzaW5nLlxuIik7CisrICAgICAgICBUZXNzQmFzZUFQSUNs ZWFyKGFwaSk7CisrICAgICAgICByZXR1cm4oLTEpOworKyAgICAgICAgfQorKyAgICBjaGFyKiB0 ZXh0ID0gVGVzc0Jhc2VBUElHZXRVVEY4VGV4dChhcGkpOworKyAgICBzdHJuY3B5KG91dHN0cix0 ZXh0LG1heGxlbi0xKTsKKysgICAgb3V0c3RyW21heGxlbi0xXT0nXDAnOworKyAgICBUZXNzRGVs ZXRlVGV4dCh0ZXh0KTsKKysgICAgVGVzc0Jhc2VBUElDbGVhcihhcGkpOworKyAgICByZXR1cm4o MCk7CisrICAgIH0KKysKKysKKytpbnQgdGVzc19jYXBpX2dldF9vY3JfbXVsdGl3b3JkKHZvaWQg KnZhcGksUElYICpwaXgsaW50IHNlZ21vZGUsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpbnQgKipsZWZ0LGludCAqKnRvcCxpbnQgKipyaWdodCxpbnQgKipib3R0b20sCisrICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKip5YmFzZSxjaGFyICoqdGV4dCxpbnQg Km53LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRklMRSAqb3V0KQorKworKyAg ICB7CisrICAgIFRlc3NCYXNlQVBJICphcGk7CisrICAgIHN0YXRpYyBpbnQgb2xkX3NlZ21vZGU9 LTE7CisrCisrICAgIGFwaT0oVGVzc0Jhc2VBUEkgKil2YXBpOworKyAgICBpZiAob2xkX3NlZ21v ZGUgIT0gc2VnbW9kZSkKKysgICAgICAgIHsKKysgICAgICAgIG9sZF9zZWdtb2RlPXNlZ21vZGU7 CisrICAgICAgICBUZXNzQmFzZUFQSVNldFBhZ2VTZWdNb2RlKGFwaSwgKFRlc3NQYWdlU2VnTW9k ZSlzZWdtb2RlKTsKKysgICAgICAgIH0KKysgICAgaWYgKCFUZXNzQmFzZUFQSVByb2Nlc3NQYWdl KGFwaSxwaXgsMCxOVUxMLE5VTEwsMCxOVUxMKSkKKysgICAgICAgIHsKKysgICAgICAgIGlmIChv dXQhPU5VTEwpCisrICAgICAgICAgICAgZnByaW50ZihvdXQsInRlc3NjYXBpOiAgRXJyb3IgZHVy aW5nIGJpdG1hcCBwcm9jZXNzaW5nLlxuIik7CisrICAgICAgICBUZXNzQmFzZUFQSUNsZWFyKGFw aSk7CisrICAgICAgICAoKm53KT0wOworKyAgICAgICAgcmV0dXJuKC0xKTsKKysgICAgICAgIH0K KysgICAgCisrICAgIC8vKCpudyk9YXBpLT5HZXRPQ1JXb3JkcyhsZWZ0LHRvcCxyaWdodCxib3R0 b20seWJhc2UsdGV4dCk7CisrICAgIAorKyAgICBpbnQgaXdvcmQsbndvcmRzLHRvdGxlbixpdDg7 CisrICAgIGludCAqeDAsKnkwLCp4MSwqeTEsKnliYXNlbGluZTsKKysgICAgY2hhciAqdHV0Zjg7 CisrCisrICAgIFRlc3NSZXN1bHRJdGVyYXRvciAqcmVzX2l0ID0gVGVzc0Jhc2VBUElHZXRJdGVy YXRvcihhcGkpOworKyAgICAvKiBDb3VudCB3b3JkcyAqLworKyAgICBpd29yZD0wOworKyAgICB0 b3RsZW49MDsKKysgICAgd2hpbGUoVGVzc1Jlc3VsdEl0ZXJhdG9yTmV4dChyZXNfaXQsIFJJTF9C TE9DSykpCisrICAgICAgICB7CisrICAgICAgICBpZighVGVzc1Jlc3VsdEl0ZXJhdG9yTmV4dChy ZXNfaXQsIFJJTF9XT1JEKSkKKysgICAgICAgICAgICB7CisrICAgICAgICAgICAgY29udGludWU7 CisrICAgICAgICAgICAgfQorKyAgICAgICAgaXdvcmQrKzsKKysgICAgICAgIGNoYXIqIHRleHRz dHIgPSBUZXNzUmVzdWx0SXRlcmF0b3JHZXRVVEY4VGV4dChyZXNfaXQsIFJJTF9XT1JEKTsKKysg ICAgICAgIHRvdGxlbis9c3RybGVuKHRleHRzdHIpKzE7CisrICAgICAgICB9CisrICAgIG53b3Jk cyA9IGl3b3JkOworKyAgICAKKysgICAgeDA9KCpsZWZ0KT0oaW50ICopbWFsbG9jKHNpemVvZihp bnQpKjUqbndvcmRzKTsKKysgICAgeTA9KCp0b3ApPSZ4MFtud29yZHNdOworKyAgICB4MT0oKnJp Z2h0KT0meTBbbndvcmRzXTsKKysgICAgeTE9KCpib3R0b20pPSZ4MVtud29yZHNdOworKyAgICB5 YmFzZWxpbmU9KCp5YmFzZSk9JnkxW253b3Jkc107CisrICAgIHR1dGY4PSgqdGV4dCk9KGNoYXIg KiltYWxsb2ModG90bGVuKTsKKysgICAgaXdvcmQ9MDsKKysgICAgaXQ4PTA7CisrICAgIFRlc3NQ YWdlSXRlcmF0b3JCZWdpbiggKFRlc3NQYWdlSXRlcmF0b3IgKikgcmVzX2l0KTsKKysgICAgd2hp bGUgKFRlc3NSZXN1bHRJdGVyYXRvck5leHQocmVzX2l0LCBSSUxfQkxPQ0spKQorKyAgICAgICAg eworKyAgICAgICAgaWYgKCFUZXNzUmVzdWx0SXRlcmF0b3JOZXh0KHJlc19pdCwgUklMX1dPUkQp KQorKyAgICAgICAgICAgIHsKKysgICAgICAgICAgICBjb250aW51ZTsKKysgICAgICAgICAgICB9 CisrICAgICAgICBjaGFyKiB0ZXh0c3RyID0gVGVzc1Jlc3VsdEl0ZXJhdG9yR2V0VVRGOFRleHQo cmVzX2l0LCBSSUxfV09SRCk7CisrICAgICAgICBzdHJjcHkoJnR1dGY4W2l0OF0sdGV4dHN0cik7 CisrICAgICAgICBpdDggKz0gc3RybGVuKCZ0dXRmOFtpdDhdKSsxOworKyAgICAgICAgCisrICAg ICAgICBpbnQgYmJsZWZ0LCBiYnRvcCwgYmJyaWdodCwgYmJib3R0b207CisrICAgICAgICBpbnQg dTEsdjEsdTIsdjI7CisrICAgICAgICBUZXNzUGFnZUl0ZXJhdG9yQm91bmRpbmdCb3goIChUZXNz UGFnZUl0ZXJhdG9yICopIHJlc19pdCwgUklMX1dPUkQsICZiYmxlZnQsICZiYnRvcCwgJmJicmln aHQsICZiYmJvdHRvbSk7CisrICAgICAgICBUZXNzUGFnZUl0ZXJhdG9yQmFzZWxpbmUoIChUZXNz UGFnZUl0ZXJhdG9yICopIHJlc19pdCwgUklMX1dPUkQsICZ1MSwgJnYxLCAmdTIsICZ2Mik7Cisr ICAgICAgICB4MFtpd29yZF09YmJsZWZ0OworKyAgICAgICAgeDFbaXdvcmRdPWJicmlnaHQ7Cisr ICAgICAgICB5MFtpd29yZF09YmJ0b3A7CisrICAgICAgICB5MVtpd29yZF09YmJib3R0b207Cisr ICAgICAgICB5YmFzZWxpbmVbaXdvcmRdPSh2MSt2MikvMjsKKysgICAgICAgIGl3b3JkKys7Cisr ICAgICAgICB9CisrICAgICAgICAKKysgICAgVGVzc1Jlc3VsdEl0ZXJhdG9yRGVsZXRlKHJlc19p dCk7CisrICAgIAorKyAgICAoKm53KSA9IGl3b3JkOworKyAgICAKKysgICAgVGVzc0Jhc2VBUElD bGVhcihhcGkpOworKyAgICByZXR1cm4oMCk7CisrICAgIH0KKysKKysKKyt2b2lkIHRlc3NfY2Fw aV9lbmQodm9pZCAqdmFwaSkKKysKKysgICAgeworKyAgICBUZXNzQmFzZUFQSSAqYXBpOworKwor KyAgICBpZiAodmFwaT09TlVMTCkKKysgICAgICAgIHJldHVybjsKKysgICAgYXBpPShUZXNzQmFz ZUFQSSAqKXZhcGk7CisrICAgIFRlc3NCYXNlQVBJRW5kKGFwaSk7CisrICAgIFRlc3NCYXNlQVBJ RGVsZXRlKGFwaSk7CisrICAgIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvazJwZGZvcHQvcGF0Y2hl cy8wNC13aWxsdXNsaWItd211cGRmaW5mby5jLW11cGRmLWZpeC5wYXRjaCBiL3NyY3BrZ3MvazJw ZGZvcHQvcGF0Y2hlcy8wNC13aWxsdXNsaWItd211cGRmaW5mby5jLW11cGRmLWZpeC5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMWIzYmY0ZDA1N2EKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2sycGRmb3B0L3BhdGNoZXMvMDQtd2lsbHVzbGliLXdtdXBk ZmluZm8uYy1tdXBkZi1maXgucGF0Y2gKQEAgLTAsMCArMSwyNiBAQAorZGlmZiAtciAtdyAtdTAg d2lsbHVzbGliL3dtdXBkZmluZm8uYyB3aWxsdXNsaWIvd211cGRmaW5mby5jCistLS0gd2lsbHVz bGliL3dtdXBkZmluZm8uYwkyMDE4LTExLTIxIDEwOjA1OjIyLjAwMDAwMDAwMCArMDEwMAorKysr IHdpbGx1c2xpYi93bXVwZGZpbmZvLmMJMjAxOS0wNy0yNyAxOTo1NjoyMy40MTg1OTUyNzUgKzAy MDAKK0BAIC0yMTcgKzIxNyBAQAorLQkJcGRmX3ByaW50X29iaihjdHgsIG91dCwgcGRmX3Jlc29s dmVfaW5kaXJlY3QoY3R4LCBvYmopLCAxKTsKKysJCXBkZl9wcmludF9vYmooY3R4LCBvdXQsIHBk Zl9yZXNvbHZlX2luZGlyZWN0KGN0eCwgb2JqKSwgMSwgMSk7CitAQCAtMjI0ICsyMjQgQEAKKy0J CXBkZl9wcmludF9vYmooY3R4LCBvdXQsIHBkZl9yZXNvbHZlX2luZGlyZWN0KGN0eCwgb2JqKSwg MSk7CisrCQlwZGZfcHJpbnRfb2JqKGN0eCwgb3V0LCBwZGZfcmVzb2x2ZV9pbmRpcmVjdChjdHgs IG9iaiksIDEsIDEpOworQEAgLTI0MCArMjQwIEBACistICAgICAgICBuPXBkZl9zcHJpbnRfb2Jq KGN0eCxOVUxMLDAscm9iaiwxKTsKKysgICAgICAgIGNoYXIqIGYgPSBwZGZfc3ByaW50X29iaihj dHgsTlVMTCwwLCZuLHJvYmosMSwxKTsKK0BAIC0yNDUgKzI0NSBAQAorLQkJICAgIHBkZl9wcmlu dF9vYmooY3R4LG91dCxyb2JqLDEpOworKwkJICAgIHBkZl9wcmludF9vYmooY3R4LG91dCxyb2Jq LDEsMSk7CitAQCAtMjQ5ICsyNDksMiBAQAorLSAgICAgICAgICAgIHBkZl9zcHJpbnRfb2JqKGN0 eCxidWYsbisyLHJvYmosMSk7CisrICAgICAgICAgICAgaW50IGxlbiA9IDA7CisrICAgICAgICAg ICAgY2hhciogZCA9IHBkZl9zcHJpbnRfb2JqKGN0eCxidWYsbisyLCZsZW4scm9iaiwxLDEpOwor QEAgLTI1NiwwICsyNTggQEAKKysgICAgICAgICAgICBmel9mcmVlKGN0eCwgZCk7CitAQCAtMjU3 LDAgKzI2MCBAQAorKyAgICAgICAgZnpfZnJlZShjdHgsIGYpOworQEAgLTI3OCArMjgxIEBACist CQlwZGZfcHJpbnRfb2JqKGN0eCxvdXQsIHBkZl9yZXNvbHZlX2luZGlyZWN0KGN0eCxvYmopLCAx KTsKKysJCXBkZl9wcmludF9vYmooY3R4LG91dCwgcGRmX3Jlc29sdmVfaW5kaXJlY3QoY3R4LG9i aiksIDEsIDEpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rMnBkZm9wdC9wYXRjaGVzLzA1LXdpbGx1 c2xpYi1ibXBtdXBkZi5jLWZpeC5wYXRjaCBiL3NyY3BrZ3MvazJwZGZvcHQvcGF0Y2hlcy8wNS13 aWxsdXNsaWItYm1wbXVwZGYuYy1maXgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAuLjdlZDQ1MjhlOGZhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9rMnBk Zm9wdC9wYXRjaGVzLzA1LXdpbGx1c2xpYi1ibXBtdXBkZi5jLWZpeC5wYXRjaApAQCAtMCwwICsx LDggQEAKK2RpZmYgLXIgLXcgLXUwIHdpbGx1c2xpYi9ibXBtdXBkZi5jIHdpbGx1c2xpYi9ibXBt dXBkZi5jCistLS0gd2lsbHVzbGliL2JtcG11cGRmLmMJMjAxOC0xMS0yMCAyMToxMzoxMi4wMDAw MDAwMDAgKzAxMDAKKysrKyB3aWxsdXNsaWIvYm1wbXVwZGYuYwkyMDE5LTA3LTI3IDIwOjEyOjM3 LjM4NjU1NTMzNCArMDIwMAorQEAgLTI4ICsyOCwzIEBACistdm9pZCBwZGZfaW5zdGFsbF9sb2Fk X3N5c3RlbV9mb250X2Z1bmNzKGZ6X2NvbnRleHQgKmN0eCk7Cisrdm9pZCBwZGZfaW5zdGFsbF9s b2FkX3N5c3RlbV9mb250X2Z1bmNzKGZ6X2NvbnRleHQgKmN0eCkKKyt7CisrfQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9rMnBkZm9wdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvazJwZGZvcHQvdGVtcGxhdGUK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjk3OTQwNTVmMjEwCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9rMnBkZm9wdC90ZW1wbGF0ZQpAQCAtMCwwICsxLDE3IEBA CisjIFRlbXBsYXRlIGZpbGUgZm9yICdrMnBkZm9wdCcKK3BrZ25hbWU9azJwZGZvcHQKK3ZlcnNp b249Mi41MQorcmV2aXNpb249MQord3Jrc3JjPSIke3BrZ25hbWV9X3Yke3ZlcnNpb259IgorYnVp bGRfc3R5bGU9Y21ha2UKK2hvc3RtYWtlZGVwZW5kcz0icGtnY29uZiB1bnppcCIKK21ha2VkZXBl bmRzPSJ6bGliLWRldmVsIGxpYnBuZy1kZXZlbCBsaWJqcGVnLXR1cmJvLWRldmVsIGphc3Blci1k ZXZlbAorIGZyZWV0eXBlLWRldmVsIGxpYm9wZW5qcGVnMi1kZXZlbCBqYmlnMmRlYy1kZXZlbCBk anZ1bGlicmUtZGV2ZWwKKyB0ZXNzZXJhY3Qtb2NyLWRldmVsIGxlcHRvbmljYS1kZXZlbCBnc2wt ZGV2ZWwgbXVwZGYtZGV2ZWwgaGFyZmJ1enotZGV2ZWwiCitkZXBlbmRzPSJnaG9zdHNjcmlwdCIK K3Nob3J0X2Rlc2M9Ik9wdGltaXplIFBERi9ESlZVIGZpbGVzIGZvciBtb2JpbGUgZS1yZWFkZXJz IGFuZCBzbWFydHBob25lcyIKK21haW50YWluZXI9IkpvaG4gRWlyYSA8am9obi5laXJhQHdlYi5k ZT4iCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0dHBzOi8vd2lsbHVz LmNvbS9rMnBkZm9wdC8iCitkaXN0ZmlsZXM9Imh0dHA6Ly93aWxsdXMuY29tL2sycGRmb3B0L3Ny Yy9rMnBkZm9wdF92JHt2ZXJzaW9ufV9zcmMuemlwIgorY2hlY2tzdW09IjNlNmU0ZDdhYWM5Yzli ZWQ0Yzc4NTQ4ODhhNmE5MTIxM2JlMTAxMjFiZTc2ZTE3ZjgzZTA4MGU4MjlhYzVmZGUiCg== --===============7197615082945516766==--