From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Rex Dieter To: git-commits@fedoraproject.org Subject: [rpms/amarok] epel10: - collection scan crash patch, take 2 (kde#220532) Date: Mon, 06 Jul 2026 18:04:26 GMT Message-ID: <178336106671.1.14073917100260055025.rpms-amarok-734121874c6b@fedoraproject.org> List-ID: X-Git-Repo: rpms/amarok X-Git-Branch: epel10 X-Git-Rev: 734121874c6b741ea381bbc02d0d399845538bc4 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvYW1hcm9rCkJyYW5j aCA6IGVwZWwxMApDb21taXQgOiA3MzQxMjE4NzRjNmI3NDFlYTM4MWJiYzAyZDBkMzk5ODQ1NTM4 YmM0CkF1dGhvciA6IFJleCBEaWV0ZXIgPHJkaWV0ZXJAZmVkb3JhcHJvamVjdC5vcmc+CkRhdGUg ICA6IDIwMTAtMDEtMTBUMTQ6MDc6MzMrMDA6MDAKU3RhdHMgIDogKzIxNC8tMjcgaW4gMiBmaWxl KHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvYW1hcm9rL2Mv NzM0MTIxODc0YzZiNzQxZWEzODFiYmMwMmQwZDM5OTg0NTUzOGJjND9icmFuY2g9ZXBlbDEwCgpM b2c6Ci0gY29sbGVjdGlvbiBzY2FuIGNyYXNoIHBhdGNoLCB0YWtlIDIgKGtkZSMyMjA1MzIpCgot LS0KZGlmZiAtLWdpdCBhL2FtYXJvay0yLjIuMi1rZGUjMjIwNTMyLnBhdGNoIGIvYW1hcm9rLTIu Mi4yLWtkZSMyMjA1MzIucGF0Y2gKaW5kZXggMzFjY2I1My4uYjA5NWYyNyAxMDA2NDQKLS0tIGEv YW1hcm9rLTIuMi4yLWtkZSMyMjA1MzIucGF0Y2gKKysrIGIvYW1hcm9rLTIuMi4yLWtkZSMyMjA1 MzIucGF0Y2gKQEAgLTEsMTkgKzEsMjkgQEAKK0ZpeGVzIHBvdGVudGlhbCBjcmFzaGVzIGR1cmlu ZyBzY2FubmluZyBkaXNjb3ZlcmVkIGluIDIuMi4yIGFmdGVyIHRhZ2dpbmcuCiBKZWZmIE1pdGNo ZWxsIDxtaXRjaGVsbEBrZGUub3JnPgotRml4ZXMgYSBjcmFzaCB0aGF0IGNhbiBvY2N1ciBkdXJp bmcgc2Nhbm5pbmcuIFRoaXMgcGF0Y2ggc2hvdWxkIGJlIGFwcGxpZWQgdG8gMi4yLjIgdmFuaWxs YS4gCiAKIAogZGlmZiAtLWdpdCBhL3NyYy9jb2xsZWN0aW9uL3NxbGNvbGxlY3Rpb24vU2NhblJl c3VsdFByb2Nlc3Nvci5jcHAgYi9zcmMvY29sbGVjdGlvbi9zcWxjb2xsZWN0aW9uL1NjYW5SZXN1 bHRQcm9jZXNzb3IuY3BwCi1pbmRleCBiNjgwNjIzLi5hODgwNmIzIDEwMDY0NAoraW5kZXggYjY4 MDYyMy4uNjhiMzFkZiAxMDA2NDQKIC0tLSBhL3NyYy9jb2xsZWN0aW9uL3NxbGNvbGxlY3Rpb24v U2NhblJlc3VsdFByb2Nlc3Nvci5jcHAKICsrKyBiL3NyYy9jb2xsZWN0aW9uL3NxbGNvbGxlY3Rp b24vU2NhblJlc3VsdFByb2Nlc3Nvci5jcHAKLUBAIC00MywxOCArNDMsMzMgQEAgU2NhblJlc3Vs dFByb2Nlc3Nvcjo6flNjYW5SZXN1bHRQcm9jZXNzb3IoKQorQEAgLTQyLDE5ICs0Miw1OSBAQCBT Y2FuUmVzdWx0UHJvY2Vzc29yOjpTY2FuUmVzdWx0UHJvY2Vzc29yKCBTcWxDb2xsZWN0aW9uICpj b2xsZWN0aW9uICkKKyBTY2FuUmVzdWx0UHJvY2Vzc29yOjp+U2NhblJlc3VsdFByb2Nlc3Nvcigp CiAgewogICAgICAvL2V2ZXJ5dGhpbmcgaGFzIGEgVVJMLCBzbyBlbm91Z2ggdG8ganVzdCBkZWxl dGUgZnJvbSBoZXJlCisrICAgIFFTZXQ8UVN0cmluZ0xpc3QqPiBjdXJyU2V0OyAvL3ByZXZlbnQg ZG91YmxlIGRlbGV0ZXMKICAgICAgZm9yZWFjaCggUVN0cmluZ0xpc3QgKmxpc3QsIG1fdXJsc0hh c2hCeVVpZCApCiAtICAgICAgICBkZWxldGUgbGlzdDsKICsgICAgewogKyAgICAgICAgaWYoIGxp c3QgKQotKyAgICAgICAgICAgIGRlbGV0ZSBsaXN0OworKyAgICAgICAgeworKyAgICAgICAgICAg IGlmKCAhY3VyclNldC5jb250YWlucyggbGlzdCApICkKKysgICAgICAgICAgICB7CisrICAgICAg ICAgICAgICAgIGRlbGV0ZSBsaXN0OworKyAgICAgICAgICAgICAgICBjdXJyU2V0Lmluc2VydCgg bGlzdCApOworKyAgICAgICAgICAgIH0KKysgICAgICAgIH0KKysgICAgICAgIGVsc2UKKysgICAg ICAgICAgICBkZWJ1ZygpIDw8ICJHQUFIISBUcmllZCB0byBkb3VibGUtZGVsZXRlIGEgdmFsdWUg aW4gbV91cmxzSGFzaEJ5VWlkIjsKICsgICAgfQogICAgICBmb3JlYWNoKCBRTGlua2VkTGlzdDxR U3RyaW5nTGlzdCo+ICpsaXN0LCBtX2FsYnVtc0hhc2hCeU5hbWUgKQogICAgICB7CkBAIC0yNSw3 ICszNSwxNSBAQCBpbmRleCBiNjgwNjIzLi5hODgwNmIzIDEwMDY0NAogKyAgICAgICAgICAgIGZv cmVhY2goIFFTdHJpbmdMaXN0ICpzbGlzdCwgKmxpc3QgKQogKyAgICAgICAgICAgIHsKICsgICAg ICAgICAgICAgICAgaWYoIHNsaXN0ICkKLSsgICAgICAgICAgICAgICAgICAgZGVsZXRlIHNsaXN0 OworKyAgICAgICAgICAgICAgICB7CisrICAgICAgICAgICAgICAgICAgICBpZiggIWN1cnJTZXQu Y29udGFpbnMoIHNsaXN0ICkgKQorKyAgICAgICAgICAgICAgICAgICAgeworKyAgICAgICAgICAg ICAgICAgICAgICAgIGRlbGV0ZSBzbGlzdDsKKysgICAgICAgICAgICAgICAgICAgICAgICBjdXJy U2V0Lmluc2VydCggc2xpc3QgKTsKKysgICAgICAgICAgICAgICAgICAgIH0KKysgICAgICAgICAg ICAgICAgICAgIGVsc2UKKysgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1ZygpIDw8ICJHQUFI ISBUcmllZCB0byBkb3VibGUtZGVsZXRlIGEgdmFsdWUgaW4gbV9hbGJ1bXNIYXNoQnlOYW1lIjsK KysgICAgICAgICAgICAgICAgfQogKyAgICAgICAgICAgIH0KICsgICAgICAgICAgICBkZWxldGUg bGlzdDsKICsgICAgICAgIH0KQEAgLTQwLDE4ICs1OCwyOCBAQCBpbmRleCBiNjgwNjIzLi5hODgw NmIzIDEwMDY0NAogKyAgICAgICAgICAgIGZvcmVhY2goIFFTdHJpbmdMaXN0ICpzbGlzdCwgKmxp c3QgKQogKyAgICAgICAgICAgIHsKICsgICAgICAgICAgICAgICAgaWYoIHNsaXN0ICkKLSsgICAg ICAgICAgICAgICAgICAgIGRlbGV0ZSBzbGlzdDsKKysgICAgICAgICAgICAgICAgeworKyAgICAg ICAgICAgICAgICAgICAgaWYoICFjdXJyU2V0LmNvbnRhaW5zKCBzbGlzdCApICkKKysgICAgICAg ICAgICAgICAgICAgIHsKKysgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgc2xpc3Q7Cisr ICAgICAgICAgICAgICAgICAgICAgICAgY3VyclNldC5pbnNlcnQoIHNsaXN0ICk7CisrICAgICAg ICAgICAgICAgICAgICB9CisrICAgICAgICAgICAgICAgICAgICBlbHNlCisrICAgICAgICAgICAg ICAgICAgICAgICAgZGVidWcoKSA8PCAiR0FBSCEgVHJpZWQgdG8gZG91YmxlLWRlbGV0ZSBhIHZh bHVlIGluIG1fdHJhY2tzSGFzaEJ5QWxidW0iOworKyAgICAgICAgICAgICAgICB9CiArICAgICAg ICAgICAgfQogKyAgICAgICAgICAgIGRlbGV0ZSBsaXN0OwogKyAgICAgICAgfQogICAgICB9CiAg fQogIAotQEAgLTY4LDEwICs4MywxMCBAQCB2b2lkCitAQCAtNjcsMTEgKzEwNywxMSBAQCBTY2Fu UmVzdWx0UHJvY2Vzc29yOjpzZXRTY2FuVHlwZSggU2NhblR5cGUgdHlwZSApCisgdm9pZAogIFNj YW5SZXN1bHRQcm9jZXNzb3I6OmFkZERpcmVjdG9yeSggY29uc3QgUVN0cmluZyAmZGlyLCB1aW50 IG10aW1lICkKICB7Ci0gICAgIERFQlVHX0JMT0NLCistICAgIERFQlVHX0JMT0NLCiAtICAgIGRl YnVnKCkgPDwgIlNSUDo6YWRkRGlyZWN0b3J5IG9uICIgPDwgZGlyIDw8ICIgd2l0aCBtdGltZSAi IDw8IG10aW1lOworKyAgICAvL0RFQlVHX0JMT0NLCiArICAgIC8vZGVidWcoKSA8PCAiU1JQOjph ZGREaXJlY3Rvcnkgb24gIiA8PCBkaXIgPDwgIiB3aXRoIG10aW1lICIgPDwgbXRpbWU7CiAgICAg IGlmKCBkaXIuaXNFbXB0eSgpICkKICAgICAgewpAQCAtNjAsNyArODgsOTAgQEAgaW5kZXggYjY4 MDYyMy4uYTg4MDZiMyAxMDA2NDQKICAgICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBzZXR1 cERhdGFiYXNlKCk7Ci1AQCAtNDE5LDcgKzQzNCwxNSBAQCBTY2FuUmVzdWx0UHJvY2Vzc29yOjph ZGRUcmFjayggY29uc3QgUVZhcmlhbnRNYXAgJnRyYWNrRGF0YSwgaW50IGFsYnVtQXJ0aXN0SWQg KQorQEAgLTI1NCw3ICsyOTQsNyBAQCBTY2FuUmVzdWx0UHJvY2Vzc29yOjpyb2xsYmFjaygpCisg dm9pZAorIFNjYW5SZXN1bHRQcm9jZXNzb3I6OnByb2Nlc3NEaXJlY3RvcnkoIGNvbnN0IFFMaXN0 PFFWYXJpYW50TWFwID4gJmRhdGEgKQorIHsKKy0vLyAgICAgREVCVUdfQkxPQ0sKKysgICAgLy9E RUJVR19CTE9DSworICAgICBzZXR1cERhdGFiYXNlKCk7CisgICAgIC8vdXNpbmcgdGhlIGZvbGxv d2luZyBoZXVyaXN0aWNzOgorICAgICAvL2lmIG1vcmUgdGhhbiBvbmUgYWxidW0gaXMgaW4gdGhl IGRpciwgdXNlIHRoZSBhcnRpc3Qgb2YgZWFjaCB0cmFjayBhcyBhbGJ1bWFydGlzdAorQEAgLTI3 NCwyNCArMzE0LDU0IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OnByb2Nlc3NEaXJlY3RvcnkoIGNv bnN0IFFMaXN0PFFWYXJpYW50TWFwID4gJmRhdGEgKQorICAgICAgICAgaWYoIHJvdy52YWx1ZSgg RmllbGQ6OkFMQlVNICkudG9TdHJpbmcoKSAhPSBhbGJ1bSApCisgICAgICAgICAgICAgbXVsdGlw bGVBbGJ1bXMgPSB0cnVlOworICAgICB9CisrCisgICAgIGlmKCBtdWx0aXBsZUFsYnVtcyB8fCBh bGJ1bS5pc0VtcHR5KCkgfHwgYXJ0aXN0cy5zaXplKCkgPT0gMSApCisgICAgIHsKKyAgICAgICAg IGZvcmVhY2goIGNvbnN0IFFWYXJpYW50TWFwICZyb3csIGRhdGEgKQorICAgICAgICAgeworLSAg ICAgICAgICAgIGludCBhcnRpc3QgPSBnZW5lcmljSWQoICZtX2FydGlzdHMsIHJvdy52YWx1ZSgg RmllbGQ6OkFSVElTVCApLnRvU3RyaW5nKCksICZtX25leHRBcnRpc3ROdW0gKTsKKy0gICAgICAg ICAgICBhZGRUcmFjayggcm93LCBhcnRpc3QgKTsKKysgICAgICAgICAgICBRU3RyaW5nIHVpZCA9 IHJvdy52YWx1ZSggRmllbGQ6OlVOSVFVRUlEICkudG9TdHJpbmcoKTsKKysgICAgICAgICAgICBp ZiggbV91aWRzU2VlblRoaXNTY2FuLmNvbnRhaW5zKCB1aWQgKSApCisrICAgICAgICAgICAgewor KyAgICAgICAgICAgICAgICBRU3RyaW5nIG9yaWdpbmFsTG9jYXRpb24gPSAoICggbV91cmxzSGFz aEJ5VWlkLmNvbnRhaW5zKCB1aWQgKSAmJgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG1fdXJsc0hhc2hCeVVpZFt1aWRdICE9IDAgKSA/CisrICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTW91bnRQb2ludE1hbmFnZXI6Omlu c3RhbmNlKCktPmdldEFic29sdXRlUGF0aCggbV91cmxzSGFzaEJ5VWlkW3VpZF0tPmF0KCAxICku dG9JbnQoKSwgbV91cmxzSGFzaEJ5VWlkW3VpZF0tPmF0KCAyICkgKSA6ICIodW5rbm93bikiICk7 CisrICAgICAgICAgICAgICAgIGRlYnVnKCkgPDwgIlNraXBwaW5nIGZpbGUgd2l0aCB1bmlxdWVp ZCAiIDw8IHVpZCA8PCAiIGFzIGl0IHdhcyBhbHJlYWR5IHNlZW4gdGhpcyBzY2FuLCIgPDwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsZSBpcyBhdCAiIDw8IHJvdy52YWx1ZSggRmll bGQ6OlVSTCApLnRvU3RyaW5nKCkgPDwgIiwgb3JpZ2luYWwgZmlsZSBpcyBhdCAiIDw8IG9yaWdp bmFsTG9jYXRpb247CisrICAgICAgICAgICAgfQorKyAgICAgICAgICAgIGVsc2UKKysgICAgICAg ICAgICB7CisrICAgICAgICAgICAgICAgIGludCBhcnRpc3QgPSBnZW5lcmljSWQoICZtX2FydGlz dHMsIHJvdy52YWx1ZSggRmllbGQ6OkFSVElTVCApLnRvU3RyaW5nKCksICZtX25leHRBcnRpc3RO dW0gKTsKKysgICAgICAgICAgICAgICAgLy9kZWJ1ZygpIDw8ICJhcnRpc3QgZm91bmQgPSAiIDw8 IGFydGlzdDsKKysgICAgICAgICAgICAgICAgYWRkVHJhY2soIHJvdywgYXJ0aXN0ICk7CisrICAg ICAgICAgICAgICAgIG1fdWlkc1NlZW5UaGlzU2Nhbi5pbnNlcnQoIHVpZCApOworKyAgICAgICAg ICAgIH0KKyAgICAgICAgIH0KKyAgICAgfQorICAgICBlbHNlCisgICAgIHsKKyAgICAgICAgIFFT dHJpbmcgYWxidW1BcnRpc3QgPSBmaW5kQWxidW1BcnRpc3QoIGFydGlzdHMsIGRhdGEuY291bnQo KSApOworKyAgICAgICAgLy9kZWJ1ZygpIDw8ICJhbGJ1bUFydGlzdCBmb3VuZCA9ICIgPDwgYWxi dW1BcnRpc3Q7CisgICAgICAgICAvL2FuIGVtcHR5IHN0cmluZyBtZWFucyB0aGF0IG5vIGFsYnVt YXJ0aXN0IHdhcyBmb3VuZAorICAgICAgICAgaW50IGFydGlzdCA9IGFsYnVtQXJ0aXN0LmlzRW1w dHkoKSA/IDAgOiBnZW5lcmljSWQoICZtX2FydGlzdHMsIGFsYnVtQXJ0aXN0LCAmbV9uZXh0QXJ0 aXN0TnVtICk7CisrICAgICAgICAvL2RlYnVnKCkgPDwgImFydGlzdCBmb3VuZCA9ICIgPDwgYXJ0 aXN0OworIAorICAgICAgICAgLy9kZWJ1ZygpIDw8ICJhbGJ1bWFydGlzdCAiIDw8IGFsYnVtQXJ0 aXN0IDw8ICJmb3IgYXJ0aXN0cyIgPDwgYXJ0aXN0czsKKyAgICAgICAgIGZvcmVhY2goIGNvbnN0 IFFWYXJpYW50TWFwICZyb3csIGRhdGEgKQorICAgICAgICAgeworLSAgICAgICAgICAgIGFkZFRy YWNrKCByb3csIGFydGlzdCApOworKyAgICAgICAgICAgIFFTdHJpbmcgdWlkID0gcm93LnZhbHVl KCBGaWVsZDo6VU5JUVVFSUQgKS50b1N0cmluZygpOworKyAgICAgICAgICAgIGlmKCBtX3VpZHNT ZWVuVGhpc1NjYW4uY29udGFpbnMoIHVpZCApICkKKysgICAgICAgICAgICB7CisrICAgICAgICAg ICAgICAgIFFTdHJpbmcgb3JpZ2luYWxMb2NhdGlvbiA9ICggKCBtX3VybHNIYXNoQnlVaWQuY29u dGFpbnMoIHVpZCApICYmCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbV91cmxzSGFzaEJ5VWlkW3VpZF0gIT0gMCApID8KKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBNb3VudFBvaW50TWFuYWdlcjo6aW5zdGFuY2UoKS0+ Z2V0QWJzb2x1dGVQYXRoKCBtX3VybHNIYXNoQnlVaWRbdWlkXS0+YXQoIDEgKS50b0ludCgpLCBt X3VybHNIYXNoQnlVaWRbdWlkXS0+YXQoIDIgKSApIDogIih1bmtub3duKSIgKTsKKysgICAgICAg ICAgICAgICAgZGVidWcoKSA8PCAiU2tpcHBpbmcgZmlsZSB3aXRoIHVuaXF1ZWlkICIgPDwgdWlk IDw8ICIgYXMgaXQgd2FzIGFscmVhZHkgc2VlbiB0aGlzIHNjYW4sIiA8PAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICJmaWxlIGlzIGF0ICIgPDwgcm93LnZhbHVlKCBGaWVsZDo6VVJMICku dG9TdHJpbmcoKSA8PCAiLCBvcmlnaW5hbCBmaWxlIGlzIGF0ICIgPDwgb3JpZ2luYWxMb2NhdGlv bjsKKysgICAgICAgICAgICB9CisrICAgICAgICAgICAgZWxzZQorKyAgICAgICAgICAgIHsKKysg ICAgICAgICAgICAgICAgYWRkVHJhY2soIHJvdywgYXJ0aXN0ICk7CisrICAgICAgICAgICAgICAg IG1fdWlkc1NlZW5UaGlzU2Nhbi5pbnNlcnQoIHVpZCApOworKyAgICAgICAgICAgIH0KKyAgICAg ICAgIH0KKyAgICAgfQorIH0KK0BAIC0yOTksNiArMzY5LDcgQEAgU2NhblJlc3VsdFByb2Nlc3Nv cjo6cHJvY2Vzc0RpcmVjdG9yeSggY29uc3QgUUxpc3Q8UVZhcmlhbnRNYXAgPiAmZGF0YSApCisg UVN0cmluZworIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmZpbmRBbGJ1bUFydGlzdCggY29uc3QgUVNl dDxRU3RyaW5nPiAmYXJ0aXN0cywgaW50IHRyYWNrQ291bnQgKSBjb25zdAorIHsKKysgICAgLy9E RUJVR19CTE9DSworICAgICBRTWFwPFFTdHJpbmcsIGludD4gYXJ0aXN0Q291bnQ7CisgICAgIGJv b2wgZmVhdHVyaW5nOworICAgICBRU3RyaW5nTGlzdCB0cmFja0FydGlzdHM7CitAQCAtMzcxLDYg KzQ0Miw3IEBAIHZvaWQKKyBTY2FuUmVzdWx0UHJvY2Vzc29yOjphZGRUcmFjayggY29uc3QgUVZh cmlhbnRNYXAgJnRyYWNrRGF0YSwgaW50IGFsYnVtQXJ0aXN0SWQgKQorIHsKKyAgICAgLy9ERUJV R19CTE9DSworKyAgICAvL2RlYnVnKCkgPDwgImFsYnVtQXJ0aXN0SWQgPSAiIDw8IGFsYnVtQXJ0 aXN0SWQ7CisgICAgIC8vYW1hcm9rIDEgc3RvcmVkIGFsbCB0cmFja3Mgb2YgYSBjb21waWxhdGlv biBpbiBkaWZmZXJlbnQgZGlyZWN0b3JpZXMuCisgICAgIC8vd2hlbiB1c2luZyBpdHMgIk9yZ2Fu aXplIENvbGxlY3Rpb24iIGZlYXR1cmUKKyAgICAgLy90cnkgdG8gZGV0ZWN0IHRoZXNlIGNhc2Vz CitAQCAtNDE5LDcgKzQ5MSwxNSBAQCBTY2FuUmVzdWx0UHJvY2Vzc29yOjphZGRUcmFjayggY29u c3QgUVZhcmlhbnRNYXAgJnRyYWNrRGF0YSwgaW50IGFsYnVtQXJ0aXN0SWQgKQogIAogICAgICAv L3VybElkIHdpbGwgdGFrZSBjYXJlIG9mIHRoZSB1cmxzIHRhYmxlIHBhcnQgb2YgQUZUCiAgICAg IGludCB1cmwgPSB1cmxJZCggcGF0aCwgdWlkICk7CkBAIC03Nyw3ICsxODgsNyBAQCBpbmRleCBi NjgwNjIzLi5hODgwNmIzIDEwMDY0NAogICAgICBRU3RyaW5nTGlzdCAqdHJhY2tMaXN0ID0gbmV3 IFFTdHJpbmdMaXN0KCk7CiAgICAgIGludCBpZCA9IG1fbmV4dFRyYWNrTnVtOwogICAgICAvL2Rl YnVnKCkgPDwgIkFwcGVuZGluZyBuZXcgdHJhY2sgbnVtYmVyIHdpdGggdHJhY2tudW06ICIgPDwg aWQ7Ci1AQCAtNDcwLDcgKzQ5Myw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmFkZFRyYWNrKCBj b25zdCBRVmFyaWFudE1hcCAmdHJhY2tEYXRhLCBpbnQgYWxidW1BcnRpc3RJZCApCitAQCAtNDcw LDcgKzU1MCw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmFkZFRyYWNrKCBjb25zdCBRVmFyaWFu dE1hcCAmdHJhY2tEYXRhLCBpbnQgYWxidW1BcnRpc3RJZCApCiAgICAgIC8vaW5zZXJ0IGludG8g aGFzaGVzCiAgICAgIGlmKCBtX3RyYWNrc0hhc2hCeVVybC5jb250YWlucyggdXJsICkgJiYgbV90 cmFja3NIYXNoQnlVcmxbdXJsXSAhPSAwICkKICAgICAgewpAQCAtODYsMjEgKzE5Nyw0MiBAQCBp bmRleCBiNjgwNjIzLi5hODgwNmIzIDEwMDY0NAogICAgICAgICAgLy9uZWVkIHRvIHJlcGxhY2Us IG5vdCBvdmVyd3JpdGUvYWRkIGEgbmV3IG9uZQogICAgICAgICAgUVN0cmluZ0xpc3QgKm9sZFZh bHVlcyA9IG1fdHJhY2tzSGFzaEJ5VXJsW3VybF07CiAgICAgICAgICBRU3RyaW5nIG9sZElkID0g b2xkVmFsdWVzLT5hdCggMCApOwotQEAgLTQ5MSw3ICs1MTQsMTIgQEAgU2NhblJlc3VsdFByb2Nl c3Nvcjo6YWRkVHJhY2soIGNvbnN0IFFWYXJpYW50TWFwICZ0cmFja0RhdGEsIGludCBhbGJ1bUFy dGlzdElkICkKK0BAIC00OTAsOCArNTcwLDI0IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmFkZFRy YWNrKCBjb25zdCBRVmFyaWFudE1hcCAmdHJhY2tEYXRhLCBpbnQgYWxidW1BcnRpc3RJZCApCisg ICAgICAgICBtX3RyYWNrc0hhc2hCeUlkLmluc2VydCggaWQsIHRyYWNrTGlzdCApOwogICAgICB9 CiAgCisrICAgIC8vZGVidWcoKSA8PCAiYWxidW0gPSAiIDw8IGFsYnVtOworKwogICAgICBpZigg bV90cmFja3NIYXNoQnlBbGJ1bS5jb250YWlucyggYWxidW0gKSAmJiBtX3RyYWNrc0hhc2hCeUFs YnVtW2FsYnVtXSAhPSAwICkKIC0gICAgICAgIG1fdHJhY2tzSGFzaEJ5QWxidW1bYWxidW1dLT5h cHBlbmQoIHRyYWNrTGlzdCApOwogKyAgICB7CiArICAgICAgICAvL2NvbnRhaW5zIGlzbid0IHRo ZSBmYXN0ZXN0IG9uIGxpbmtlZCBsaXN0cywgYnV0IGluIHJlYWxpdHkgdGhpcyBpcyBvbiB0aGUg b3JkZXIgb2YgbWF5YmUKICsgICAgICAgIC8vdGVuIHF1aWNrIHBvaW50ZXIgY29tcGFyaXNvbnMg cGVyIHRyYWNrIG9uIGF2ZXJhZ2UuLi5wcm9iYWJseSBsb3dlcgorKyAgICAgICAgLy9kZWJ1Zygp IDw8ICJ0cmFja0xpc3QgaXMgIiA8PCB0cmFja0xpc3Q7CiArICAgICAgICBpZiggIW1fdHJhY2tz SGFzaEJ5QWxidW1bYWxidW1dLT5jb250YWlucyggdHJhY2tMaXN0ICkgKQorKyAgICAgICAgewor KyAgICAgICAgICAgIC8vZGVidWcoKSA8PCAiYXBwZW5kaW5nIHRyYWNrTGlzdCB0byBtX3RyYWNr c0hhc2hCeUFsYnVtIjsKICsgICAgICAgICAgICBtX3RyYWNrc0hhc2hCeUFsYnVtW2FsYnVtXS0+ YXBwZW5kKCB0cmFja0xpc3QgKTsKKysgICAgICAgIH0KKysgICAgICAgIGVsc2UKKysgICAgICAg IHsKKysgICAgICAgICAgICAvL2RlYnVnKCkgPDwgIm5vdCBhcHBlbmRpbmcgdHJhY2tMaXN0IHRv IG1fdHJhY2tzSGFzaEJ5QWxidW0iOworKyAgICAgICAgfQorKwogKyAgICB9CiAgICAgIGVsc2UK ICAgICAgewogICAgICAgICAgUUxpbmtlZExpc3Q8UVN0cmluZ0xpc3QqPiAqbGlzdCA9IG5ldyBR TGlua2VkTGlzdDxRU3RyaW5nTGlzdCo+KCk7Ci1AQCAtNjMxLDcgKzY1OSwxMCBAQCBTY2FuUmVz dWx0UHJvY2Vzc29yOjphbGJ1bUluc2VydCggY29uc3QgUVN0cmluZyAmYWxidW0sIGludCBhbGJ1 bUFydGlzdElkICkKK0BAIC01OTUsNiArNjkxLDggQEAgU2NhblJlc3VsdFByb2Nlc3Nvcjo6YWxi dW1JZCggY29uc3QgUVN0cmluZyAmYWxidW0sIGludCBhbGJ1bUFydGlzdElkICkKKyAgICAgICAg IFFMaW5rZWRMaXN0PFFTdHJpbmdMaXN0Kj4gKmxpc3QgPSBtX2FsYnVtc0hhc2hCeU5hbWVbYWxi dW1dOworICAgICAgICAgZm9yZWFjaCggUVN0cmluZ0xpc3QgKnNsaXN0LCAqbGlzdCApCisgICAg ICAgICB7CisrICAgICAgICAgICAgLy9kZWJ1ZygpIDw8ICJhbGJ1bUFydGlzdElkID0gIiA8PCBh bGJ1bUFydGlzdElkOworKyAgICAgICAgICAgIC8vZGVidWcoKSA8PCAiQ2hlY2tpbmcgbGlzdDog IiA8PCAqc2xpc3Q7CisgICAgICAgICAgICAgaWYoIHNsaXN0LT5hdCggMiApLmlzRW1wdHkoKSAm JiBhbGJ1bUFydGlzdElkID09IDAgKQorICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg Ly9kZWJ1ZygpIDw8ICJhcnRpc3QgaXMgZW1wdHkgYW5kIGFsYnVtQXJ0aXN0SWQgPSAwLCByZXR1 cm5pbmcgIiA8PCBzbGlzdC0+YXQoIDAgKTsKK0BAIC02MzEsNyArNzI5LDEwIEBAIFNjYW5SZXN1 bHRQcm9jZXNzb3I6OmFsYnVtSW5zZXJ0KCBjb25zdCBRU3RyaW5nICZhbGJ1bSwgaW50IGFsYnVt QXJ0aXN0SWQgKQogICAgICBhbGJ1bUxpc3QtPmFwcGVuZCggUVN0cmluZygpICk7CiAgICAgIG1f YWxidW1zSGFzaEJ5SWRbcmV0dXJuZWROdW1dID0gYWxidW1MaXN0OwogICAgICBpZiggbV9hbGJ1 bXNIYXNoQnlOYW1lLmNvbnRhaW5zKCBhbGJ1bSApICYmIG1fYWxidW1zSGFzaEJ5TmFtZVthbGJ1 bV0gIT0gMCApCkBAIC0xMTIsMjggKzI0NCwyNiBAQCBpbmRleCBiNjgwNjIzLi5hODgwNmIzIDEw MDY0NAogICAgICBlbHNlCiAgICAgIHsKICAgICAgICAgIFFMaW5rZWRMaXN0PFFTdHJpbmdMaXN0 Kj4gKmxpc3QgPSBuZXcgUUxpbmtlZExpc3Q8UVN0cmluZ0xpc3QqPigpOwotQEAgLTY0NSw4ICs2 NzYsOCBAQCBTY2FuUmVzdWx0UHJvY2Vzc29yOjphbGJ1bUluc2VydCggY29uc3QgUVN0cmluZyAm YWxidW0sIGludCBhbGJ1bUFydGlzdElkICkKK0BAIC02NDUsNyArNzQ2LDcgQEAgU2NhblJlc3Vs dFByb2Nlc3Nvcjo6YWxidW1JbnNlcnQoIGNvbnN0IFFTdHJpbmcgJmFsYnVtLCBpbnQgYWxidW1B cnRpc3RJZCApCiAgaW50CiAgU2NhblJlc3VsdFByb2Nlc3Nvcjo6dXJsSWQoIGNvbnN0IFFTdHJp bmcgJnVybCwgY29uc3QgUVN0cmluZyAmdWlkICkKICB7CiAtICAgIC8qCi0gICAgIERFQlVHX0JM T0NLCiArLyoKKyAgICAgREVCVUdfQkxPQ0sKICAgICAgZm9yZWFjaCggUVN0cmluZyBrZXksIG1f dXJsc0hhc2hCeVVpZC5rZXlzKCkgKQogICAgICBkZWJ1ZygpIDw8ICJLZXk6ICIgPDwga2V5IDw8 ICIsIGxpc3Q6ICIgPDwgKm1fdXJsc0hhc2hCeVVpZFtrZXldOwotICAgICBmb3JlYWNoKCBpbnQg a2V5LCBtX3VybHNIYXNoQnlJZC5rZXlzKCkgKQotQEAgLTY1NCw4ICs2ODUsOCBAQCBTY2FuUmVz dWx0UHJvY2Vzc29yOjp1cmxJZCggY29uc3QgUVN0cmluZyAmdXJsLCBjb25zdCBRU3RyaW5nICZ1 aWQgKQorQEAgLTY1NCw4ICs3NTUsNyBAQCBTY2FuUmVzdWx0UHJvY2Vzc29yOjp1cmxJZCggY29u c3QgUVN0cmluZyAmdXJsLCBjb25zdCBRU3RyaW5nICZ1aWQgKQogICAgICB0eXBlZGVmIFFQYWly PGludCwgUVN0cmluZz4gYmxhaFR5cGU7IC8vUUZPUkVBQ0ggaXMgc3R1cGlkIHdoZW4gaXQgY29t ZXMgdG8gUVBhaXJzCiAgICAgIGZvcmVhY2goIGJsYWhUeXBlIGtleSwgbV91cmxzSGFzaEJ5TG9j YXRpb24ua2V5cygpICkKICAgICAgZGVidWcoKSA8PCAiS2V5OiAiIDw8IGtleSA8PCAiLCBsaXN0 OiAiIDw8ICptX3VybHNIYXNoQnlMb2NhdGlvbltrZXldOwogLSAgICAqLwogLSAKICsqLwotKwog ICAgICBRRmlsZUluZm8gZmlsZUluZm8oIHVybCApOwogICAgICBjb25zdCBRU3RyaW5nIGRpciA9 IGZpbGVJbmZvLmFic29sdXRlRGlyKCkuYWJzb2x1dGVQYXRoKCk7CiAgICAgIGludCBkaXJJZCA9 IGRpcmVjdG9yeUlkKCBkaXIgKTsKLUBAIC02NjUsNiArNjk2LDcgQEAgU2NhblJlc3VsdFByb2Nl c3Nvcjo6dXJsSWQoIGNvbnN0IFFTdHJpbmcgJnVybCwgY29uc3QgUVN0cmluZyAmdWlkICkKK0BA IC02NjUsNiArNzY1LDcgQEAgU2NhblJlc3VsdFByb2Nlc3Nvcjo6dXJsSWQoIGNvbnN0IFFTdHJp bmcgJnVybCwgY29uc3QgUVN0cmluZyAmdWlkICkKICAgICAgUVBhaXI8aW50LCBRU3RyaW5nPiBs b2NhdGlvblBhaXIoIGRldmljZUlkLCBycGF0aCApOwogICAgICAvL2RlYnVnKCkgPDwgImluIHVy bElkIHdpdGggdXJsID0gIiA8PCB1cmwgPDwgIiBhbmQgdWlkID0gIiA8PCB1aWQ7CiAgICAgIC8v ZGVidWcoKSA8PCAiY2hlY2tpbmcgbG9jYXRpb25QYWlyICIgPDwgbG9jYXRpb25QYWlyOwpAQCAt MTQxLDcgKzI3MSw3IEBAIGluZGV4IGI2ODA2MjMuLmE4ODA2YjMgMTAwNjQ0CiAgICAgIGlmKCBt X3VybHNIYXNoQnlMb2NhdGlvbi5jb250YWlucyggbG9jYXRpb25QYWlyICkgKQogICAgICB7CiAg ICAgICAgICBRU3RyaW5nTGlzdCB2YWx1ZXM7Ci1AQCAtNjc0LDYgKzcwNiw3IEBAIFNjYW5SZXN1 bHRQcm9jZXNzb3I6OnVybElkKCBjb25zdCBRU3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcgJnVp ZCApCitAQCAtNjc0LDYgKzc3NSw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OnVybElkKCBjb25z dCBRU3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcgJnVpZCApCiAgICAgICAgICAgICAgdmFsdWVz IDw8ICJ6ZXJvIjsKICAgICAgICAgIC8vZGVidWcoKSA8PCAibV91cmxzSGFzaEJ5TG9jYXRpb24g Y29udGFpbnMgaXQhIEl0IGlzICIgPDwgdmFsdWVzOwogICAgICB9CkBAIC0xNDksNyArMjc5LDcg QEAgaW5kZXggYjY4MDYyMy4uYTg4MDZiMyAxMDA2NDQKICAgICAgUVN0cmluZ0xpc3QgY3VyclVy bElkVmFsdWVzOwogICAgICBpZiggbV91cmxzSGFzaEJ5VWlkLmNvbnRhaW5zKCB1aWQgKSAmJiBt X3VybHNIYXNoQnlVaWRbdWlkXSAhPSAwICkKICAgICAgICAgIGN1cnJVcmxJZFZhbHVlcyA9ICpt X3VybHNIYXNoQnlVaWRbdWlkXTsKLUBAIC03MTcsNiArNzUwLDcgQEAgU2NhblJlc3VsdFByb2Nl c3Nvcjo6dXJsSWQoIGNvbnN0IFFTdHJpbmcgJnVybCwgY29uc3QgUVN0cmluZyAmdWlkICkKK0BA IC03MTcsNiArODE5LDcgQEAgU2NhblJlc3VsdFByb2Nlc3Nvcjo6dXJsSWQoIGNvbnN0IFFTdHJp bmcgJnVybCwgY29uc3QgUVN0cmluZyAmdWlkICkKICAgICAgICAgICAgICAvL2RlYnVnKCkgPDwg Im1fdXJsc0hhc2hCeVVpZCBjb250YWlucyB0aGlzIFVJRCwgdXBkYXRpbmcgZGV2aWNlSWQgYW5k IHBhdGgiOwogICAgICAgICAgICAgIFFTdHJpbmdMaXN0ICpsaXN0ID0gbV91cmxzSGFzaEJ5VWlk W3VpZF07CiAgICAgICAgICAgICAgLy9kZWJ1ZygpIDw8ICJsaXN0IGZyb20gVUlEIGhhc2ggaXMg IiA8PCBsaXN0IDw8ICIgd2l0aCB2YWx1ZXMgIiA8PCAqbGlzdDsKQEAgLTE1Nyw3ICsyODcsNyBA QCBpbmRleCBiNjgwNjIzLi5hODgwNmIzIDEwMDY0NAogICAgICAgICAgICAgIGxpc3QtPnJlcGxh Y2UoIDEsIFFTdHJpbmc6Om51bWJlciggZGV2aWNlSWQgKSApOwogICAgICAgICAgICAgIGxpc3Qt PnJlcGxhY2UoIDIsIHJwYXRoICk7CiAgICAgICAgICAgICAgbGlzdC0+cmVwbGFjZSggMywgUVN0 cmluZzo6bnVtYmVyKCBkaXJJZCApICk7Ci1AQCAtNzM3LDYgKzc3MSw3IEBAIFNjYW5SZXN1bHRQ cm9jZXNzb3I6OnVybElkKCBjb25zdCBRU3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcgJnVpZCAp CitAQCAtNzM3LDYgKzg0MCw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OnVybElkKCBjb25zdCBR U3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcgJnVpZCApCiAgICAgICAgICAgICAgICAgIGRlbGV0 ZSBvbGRMaXN0OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBtX3VybHNIYXNoQnlMb2Nh dGlvbltsb2NhdGlvblBhaXJdID0gbGlzdDsKQEAgLTE2NSw3ICsyOTUsNyBAQCBpbmRleCBiNjgw NjIzLi5hODgwNmIzIDEwMDY0NAogICAgICAgICAgfQogICAgICAgICAgbV9wZXJtYW5lbnRUYWJs ZXNVcmxVcGRhdGVzLmluc2VydCggdWlkLCB1cmwgKTsKICAgICAgICAgIG1fY2hhbmdlZFVybHMu aW5zZXJ0KCB1aWQsIFFQYWlyPFFTdHJpbmcsIFFTdHJpbmc+KCBNb3VudFBvaW50TWFuYWdlcjo6 aW5zdGFuY2UoKS0+Z2V0QWJzb2x1dGVQYXRoKCBjdXJyVXJsSWRWYWx1ZXNbMV0udG9JbnQoKSwg Y3VyclVybElkVmFsdWVzWzJdICksIHVybCApICk7Ci1AQCAtNzUxLDYgKzc4Niw3IEBAIFNjYW5S ZXN1bHRQcm9jZXNzb3I6OnVybElkKCBjb25zdCBRU3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcg JnVpZCApCitAQCAtNzUxLDYgKzg1NSw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OnVybElkKCBj b25zdCBRU3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcgJnVpZCApCiAgICAgICAgICB7CiAgICAg ICAgICAgICAgUVN0cmluZ0xpc3QgKmxpc3QgPSBtX3VybHNIYXNoQnlMb2NhdGlvbltsb2NhdGlv blBhaXJdOwogICAgICAgICAgICAgIC8vZGVidWcoKSA8PCAiUmVwbGFjaW5nIGhhc2ggIiA8PCBs aXN0LT5hdCggNCApIDw8ICIgd2l0aCAiIDw8IHVpZDsKQEAgLTE3Myw3ICszMDMsNyBAQCBpbmRl eCBiNjgwNjIzLi5hODgwNmIzIDEwMDY0NAogICAgICAgICAgICAgIGxpc3QtPnJlcGxhY2UoIDQs IHVpZCApOwogICAgICAgICAgICAgIGlmKCBtX3VybHNIYXNoQnlVaWQuY29udGFpbnMoIHVpZCAp CiAgICAgICAgICAgICAgICAgICYmIG1fdXJsc0hhc2hCeVVpZFt1aWRdICE9IDAgCi1AQCAtNzYy LDYgKzc5OCw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OnVybElkKCBjb25zdCBRU3RyaW5nICZ1 cmwsIGNvbnN0IFFTdHJpbmcgJnVpZCApCitAQCAtNzYyLDYgKzg2Nyw3IEBAIFNjYW5SZXN1bHRQ cm9jZXNzb3I6OnVybElkKCBjb25zdCBRU3RyaW5nICZ1cmwsIGNvbnN0IFFTdHJpbmcgJnVpZCAp CiAgICAgICAgICAgICAgICAgIGRlbGV0ZSBvbGRMaXN0OwogICAgICAgICAgICAgIH0KICAgICAg ICAgICAgICBtX3VybHNIYXNoQnlVaWRbdWlkXSA9IGxpc3Q7CkBAIC0xODEsNyArMzExLDQ3IEBA IGluZGV4IGI2ODA2MjMuLmE4ODA2YjMgMTAwNjQ0CiAgICAgICAgICB9CiAgICAgICAgICBtX3Bl cm1hbmVudFRhYmxlc1VpZFVwZGF0ZXMuaW5zZXJ0KCB1cmwsIHVpZCApOwogICAgICAgICAgbV9j aGFuZ2VkVWlkcy5pbnNlcnQoIGN1cnJVcmxJZFZhbHVlc1s0XSwgdWlkICk7Ci1AQCAtMTE2Nyw2 ICsxMjA0LDE4IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmNvcHlIYXNoZXNUb1RlbXBUYWJsZXMo KQorQEAgLTg1NSw3ICs5NjEsOCBAQCBTY2FuUmVzdWx0UHJvY2Vzc29yOjpkaXJlY3RvcnlJZCgg Y29uc3QgUVN0cmluZyAmZGlyICkKKyBpbnQKKyBTY2FuUmVzdWx0UHJvY2Vzc29yOjpjaGVja0V4 aXN0aW5nQWxidW1zKCBjb25zdCBRU3RyaW5nICZhbGJ1bSApCisgeworLS8vICAgICBERUJVR19C TE9DSworKyAgICAvL0RFQlVHX0JMT0NLCisrICAgIC8vZGVidWcoKSA8PCAibG9va2luZyBmb3Ig YWxidW0gIiA8PCBhbGJ1bTsKKyAgICAgLy8gIlVua25vd24iIGFsYnVtcyBzaG91bGRuJ3QgYmUg aGFuZGxlZCBhcyBjb21waWxhdGlvbnMKKyAgICAgaWYoIGFsYnVtLmlzRW1wdHkoKSApCisgICAg ICAgICByZXR1cm4gMDsKK0BAIC04NjUsNyArOTcyLDEwIEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6 OmNoZWNrRXhpc3RpbmdBbGJ1bXMoIGNvbnN0IFFTdHJpbmcgJmFsYnVtICkKKyAgICAgLy9pdCdz IHByb2JhYmx5IGEgY29tcGlsYXRpb24uCisgICAgIC8vdGhpcyBoYW5kbGVzIEExIGNvbXBpbGF0 aW9ucyB0aGF0IHdlcmUgYXV0b21hdGljYWxseSBvcmdhbml6ZWQgYnkgQW1hcm9rCisgICAgIGlm KCAhbV9hbGJ1bXNIYXNoQnlOYW1lLmNvbnRhaW5zKCBhbGJ1bSApIHx8IG1fYWxidW1zSGFzaEJ5 TmFtZVthbGJ1bV0gPT0gMCApCisrICAgIHsKKysgICAgICAgIC8vZGVidWcoKSA8PCAiaGFzaEJ5 TmFtZSBkb2Vzbid0IGNvbnRhaW4gYWxidW0sIG9yIGl0J3MgemVybyI7CisgICAgICAgICByZXR1 cm4gMDsKKysgICAgfQorIAorICAgICBRU3RyaW5nTGlzdCB0cmFja0lkczsKKyAgICAgUUxpbmtl ZExpc3Q8UVN0cmluZ0xpc3QqPiAqbGxpc3QgPSBtX2FsYnVtc0hhc2hCeU5hbWVbYWxidW1dOwor QEAgLTkxNSw4ICsxMDI1LDEwIEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmNoZWNrRXhpc3RpbmdB bGJ1bXMoIGNvbnN0IFFTdHJpbmcgJmFsYnVtICkKKyAgICAgICAgIH0KKyAgICAgfQorIAorKyAg ICAvL2RlYnVnKCkgPDwgInRyYWNrSWRzID0gIiA8PCB0cmFja0lkczsKKyAgICAgaWYoIHRyYWNr SWRzLmlzRW1wdHkoKSApCisgICAgIHsKKysgICAgICAgIC8vZGVidWcoKSA8PCAidHJhY2tJZHMg ZW1wdHksIHJldHVybmluZyB6ZXJvIjsKKyAgICAgICAgIHJldHVybiAwOworICAgICB9CisgICAg IGVsc2UKK0BAIC05MzMsNiArMTA0NSw3IEBAIFNjYW5SZXN1bHRQcm9jZXNzb3I6OmNoZWNrRXhp c3RpbmdBbGJ1bXMoIGNvbnN0IFFTdHJpbmcgJmFsYnVtICkKKyAgICAgICAgICAgICAgICAgbGlz dC0+cmVwbGFjZSggMywgY29tcGlsYXRpb25TdHJpbmcgKTsKKyAgICAgICAgICAgICB9CisgICAg ICAgICB9CisrICAgICAgICAvL2RlYnVnKCkgPDwgInJldHVybmluZyAiIDw8IGNvbXBpbGF0aW9u SWQ7CisgICAgICAgICByZXR1cm4gY29tcGlsYXRpb25JZDsKKyAgICAgfQorIH0KK0BAIC0xMTY3 LDYgKzEyODAsMTcgQEAgU2NhblJlc3VsdFByb2Nlc3Nvcjo6Y29weUhhc2hlc1RvVGVtcFRhYmxl cygpCiAgICAgIGZvcmVhY2goIGJsYWhUeXBlIGtleSwgbV91cmxzSGFzaEJ5TG9jYXRpb24ua2V5 cygpICkKICAgICAgICAgIGRlYnVnKCkgPDwgIktleTogIiA8PCBrZXkgPDwgIiwgbGlzdDogIiA8 PCAqbV91cmxzSGFzaEJ5TG9jYXRpb25ba2V5XTsKICAgICAgZGVidWcoKSA8PCAiTmV4dCBhbGJ1 bSBudW06ICIgPDwgbV9uZXh0QWxidW1OdW07CkBAIC0xOTAsMTMgKzM2MCwyNCBAQCBpbmRleCBi NjgwNjIzLi5hODgwNmIzIDEwMDY0NAogKyAgICAgICAgZGVidWcoKSA8PCAiS2V5OiAiIDw8IGtl eSA8PCAiLCBsaXN0OiAiIDw8ICptX3RyYWNrc0hhc2hCeUlkW2tleV07CiArICAgIGZvcmVhY2go IGludCBrZXksIG1fdHJhY2tzSGFzaEJ5VXJsLmtleXMoKSApCiArICAgICAgICBkZWJ1ZygpIDw8 ICJLZXk6ICIgPDwga2V5IDw8ICIsIGxpc3Q6ICIgPDwgKm1fdHJhY2tzSGFzaEJ5VXJsW2tleV07 Ci0rICAgIHR5cGVkZWYgUUxpbmtlZExpc3Q8UVN0cmluZ0xpc3QqPiBibGFoVHlwZTsgLy9RRk9S RUFDSCBpcyBzdHVwaWQgd2hlbiBpdCBjb21lcyB0byBRUGFpcnMKICsgICAgZm9yZWFjaCggaW50 IGtleSwgbV90cmFja3NIYXNoQnlBbGJ1bS5rZXlzKCkgKQogKyAgICB7CiArICAgICAgICBkZWJ1 ZygpIDw8ICJLZXk6ICIgPDwga2V5OwogKyAgICAgICAgZm9yZWFjaCggUVN0cmluZ0xpc3QqIGl0 ZW0sICptX3RyYWNrc0hhc2hCeUFsYnVtW2tleV0gKQotKyAgICAgICAgICAgIGRlYnVnKCkgPDwg Imxpc3Q6ICIgPDwgKml0ZW07CisrICAgICAgICAgICAgZGVidWcoKSA8PCAibGlzdDogIiA8PCBp dGVtIDw8ICIgaXMgIiA8PCAqaXRlbTsKICsgICAgfQogICAgICAqLwogICAKICAgICAgREVCVUdf QkxPQ0sKK2RpZmYgLS1naXQgYS9zcmMvY29sbGVjdGlvbi9zcWxjb2xsZWN0aW9uL1NjYW5SZXN1 bHRQcm9jZXNzb3IuaCBiL3NyYy9jb2xsZWN0aW9uL3NxbGNvbGxlY3Rpb24vU2NhblJlc3VsdFBy b2Nlc3Nvci5oCitpbmRleCA3MWFmYzk4Li5jN2YyMDBmIDEwMDY0NAorLS0tIGEvc3JjL2NvbGxl Y3Rpb24vc3FsY29sbGVjdGlvbi9TY2FuUmVzdWx0UHJvY2Vzc29yLmgKKysrKyBiL3NyYy9jb2xs ZWN0aW9uL3NxbGNvbGxlY3Rpb24vU2NhblJlc3VsdFByb2Nlc3Nvci5oCitAQCAtOTQsNiArOTQs NyBAQCBjbGFzcyBTY2FuUmVzdWx0UHJvY2Vzc29yIDogcHVibGljIFFPYmplY3QKKyAgICAgICAg IFFNYXA8UVN0cmluZywgaW50PiBtX2RpcmVjdG9yaWVzOworICAgICAgICAgUU1hcDxRU3RyaW5n LCBRTGlzdDwgUVBhaXI8IFFTdHJpbmcsIFFTdHJpbmcgPiA+ID4gbV9pbWFnZU1hcDsKKyAKKysg ICAgICAgIFFTZXQ8UVN0cmluZz4gbV91aWRzU2VlblRoaXNTY2FuOworICAgICAgICAgUUhhc2g8 UVN0cmluZywgdWludD4gbV9maWxlc0luRGlyczsKKyAKKyAgICAgICAgIFRyYWNrVXJscyBtX2No YW5nZWRVaWRzOyAvL25vdCByZWFsbHkgdHJhY2sgdXJscwoKZGlmZiAtLWdpdCBhL2FtYXJvay5z cGVjIGIvYW1hcm9rLnNwZWMKaW5kZXggMzhhNDY2ZC4uOTU5MjAzNCAxMDA2NDQKLS0tIGEvYW1h cm9rLnNwZWMKKysrIGIvYW1hcm9rLnNwZWMKQEAgLTIsNyArMiw3IEBACiBOYW1lOiAgICBhbWFy b2sKIFN1bW1hcnk6IE1lZGlhIHBsYXllcgogVmVyc2lvbjogMi4yLjIKLVJlbGVhc2U6IDIlez9k aXN0fQorUmVsZWFzZTogMyV7P2Rpc3R9CiAKIEdyb3VwOiAJIEFwcGxpY2F0aW9ucy9NdWx0aW1l ZGlhCiBMaWNlbnNlOiBHUEx2MisKQEAgLTE4MSw2ICsxODEsMTIgQEAgZmkKIAogCiAlY2hhbmdl bG9nCisqIFN1biBKYW4gMTAgMjAxMCBSZXggRGlldGVyIDxyZGlldGVyQGZlZG9yYXByb2plY3Qu b3JnPiAtIDIuMi4yLTMKKy0gY29sbGVjdGlvbiBzY2FuIGNyYXNoIHBhdGNoLCB0YWtlIDIgKGtk ZSMyMjA1MzIpCisKKyogRnJpIEphbiAwOCAyMDEwIFJleCBEaWV0ZXIgPHJkaWV0ZXJAZmVkb3Jh cHJvamVjdC5vcmc+IC0gMi4yLjItMgorLSBjb2xsZWN0aW9uIHNjYW4gY3Jhc2ggcGF0Y2ggKGtk ZSMyMjA1MzIpCisKICogV2VkIEphbiAwNSAyMDEwIFJleCBEaWV0ZXIgPHJkaWV0ZXJAZmVkb3Jh cHJvamVjdC5vcmc+IC0gMi4yLjItMQogLSBhbWFyb2stMi4yLjIKIAo=