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: =?utf-8?b?U8OpcmdpbyBNLiBCYXN0byA8c2VyZ2lvQHNlcmp1eC5jb20+?= To: git-commits@fedoraproject.org Subject: [rpms/opencv] opencv5: Upstream fixed GCC11 issues, so we can re-enable the tests Date: Fri, 28 Aug 2026 13:31:56 GMT Message-ID: <178792391691.1.15203527540512036105.rpms-opencv-9f66169420af@fedoraproject.org> List-ID: X-Git-Repo: rpms/opencv X-Git-Branch: opencv5 X-Git-Rev: 9f66169420af341f817ab07c7b57a09e1110a5df QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvb3BlbmN2CkJyYW5j aCA6IG9wZW5jdjUKQ29tbWl0IDogOWY2NjE2OTQyMGFmMzQxZjgxN2FiMDdjN2I1N2EwOWUxMTEw YTVkZgpBdXRob3IgOiBTw6lyZ2lvIE0uIEJhc3RvIDxzZXJnaW9Ac2VyanV4LmNvbT4KRGF0ZSAg IDogMjAyMS0wNC0zMFQxMDoyMDo0NiswMTowMApTdGF0cyAgOiArNC8tNTUyIGluIDQgZmlsZShz KQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL29wZW5jdi9jLzlm NjYxNjk0MjBhZjM0MWY4MTdhYjA3YzdiNTdhMDllMTExMGE1ZGY/YnJhbmNoPW9wZW5jdjUKCkxv ZzoKVXBzdHJlYW0gZml4ZWQgR0NDMTEgaXNzdWVzLCBzbyB3ZSBjYW4gcmUtZW5hYmxlIHRoZSB0 ZXN0cwoKLS0tCmRpZmYgLS1naXQgYS8xNzQzMS5wYXRjaCBiLzE3NDMxLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NjBhOWI0Li4wMDAwMDAwCi0tLSBhLzE3NDMxLnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsMjQgKzAsMCBAQAotRnJvbSA3ODU2ZjE0NTU4ZjM3MDIxYzFk NWI3NmFkZTQwYWM3OGU1OWE0MjJkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogTWFr c2ltIFNoYWJ1bmluIDxtYWtzaW0uc2hhYnVuaW5AZ21haWwuY29tPgotRGF0ZTogU2F0LCAzMCBN YXkgMjAyMCAwNjowNzozOSArMDMwMAotU3ViamVjdDogW1BBVENIXSBBZGRlZCBWVEsgOSBzdXBw b3J0Ci0KLS0tLQotIGNtYWtlL09wZW5DVkRldGVjdFZUSy5jbWFrZSB8IDcgKysrKysrKwotIDEg ZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKykKLQotZGlmZiAtLWdpdCBhL2NtYWtlL09wZW5D VkRldGVjdFZUSy5jbWFrZSBiL2NtYWtlL09wZW5DVkRldGVjdFZUSy5jbWFrZQotaW5kZXggMGYy Yjk1ODRlMTIuLjIzZDE3YzM1MjQxIDEwMDY0NAotLS0tIGEvY21ha2UvT3BlbkNWRGV0ZWN0VlRL LmNtYWtlCi0rKysgYi9jbWFrZS9PcGVuQ1ZEZXRlY3RWVEsuY21ha2UKLUBAIC0xLDMgKzEsMTAg QEAKLSsjIFZUSyA5LjAKLStmaW5kX3BhY2thZ2UoVlRLIFFVSUVUIE5BTUVTIHZ0ayBDT01QT05F TlRTIEludGVyYWN0aW9uU3R5bGUgUmVuZGVyaW5nTE9EIElPUExZIEZpbHRlcnNUZXh0dXJlIFJl bmRlcmluZ0ZyZWVUeXBlIElPRXhwb3J0IElPR2VvbWV0cnkgRmlsdGVyc0V4dHJhY3Rpb24gUmVu ZGVyaW5nQ29yZSBOT19NT0RVTEUpCi0raWYoVlRLX0ZPVU5EKQotKyAgc2V0KEhBVkVfVlRLIE9O KQotKyAgcmV0dXJuKCkKLStlbmRpZigpCi0rCi0gIyBWVEsgNi54IGNvbXBvbmVudHMKLSBmaW5k X3BhY2thZ2UoVlRLIFFVSUVUIENPTVBPTkVOVFMgdnRrSW50ZXJhY3Rpb25TdHlsZSB2dGtSZW5k ZXJpbmdMT0QgdnRrSU9QTFkgdnRrRmlsdGVyc1RleHR1cmUgdnRrUmVuZGVyaW5nRnJlZVR5cGUg dnRrSU9FeHBvcnQgTk9fTU9EVUxFKQotIElGKFZUS19GT1VORCkKCmRpZmYgLS1naXQgYS8yNTQ5 LnBhdGNoIGIvMjU0OS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGQ2Njkx OC4uMDAwMDAwMAotLS0gYS8yNTQ5LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNTA3ICswLDAg QEAKLUZyb20gYzRiM2I5MjA0NjFmOWM3MjA3ZDRjMTg0YTViZWRmNzYwOGE1MWVkMSBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IE1ha3NpbSBTaGFidW5pbiA8bWFrc2ltLnNoYWJ1bmlu QGdtYWlsLmNvbT4KLURhdGU6IFNhdCwgMzAgTWF5IDIwMjAgMDY6MDk6MDIgKzAzMDAKLVN1Ympl Y3Q6IFtQQVRDSCAxLzNdIEFkZGVkIFZUSyA5IHN1cHBvcnQKLQotLS0tCi0gbW9kdWxlcy92aXov Q01ha2VMaXN0cy50eHQgICAgICAgICAgIHwgIDQgKysrLQotIG1vZHVsZXMvdml6L3NyYy9wcmVj b21wLmhwcCAgICAgICAgICB8ICA4ICsrKysrKystCi0gbW9kdWxlcy92aXovc3JjL3R5cGVzLmNw cCAgICAgICAgICAgIHwgIDMgKystCi0gbW9kdWxlcy92aXovc3JjL3ZpemltcGwuY3BwICAgICAg ICAgIHwgMTMgKysrKysrKysrKystLQotIG1vZHVsZXMvdml6L3NyYy92dGsvdnRrT0JKV3JpdGVy LmNwcCB8IDE0ICsrKysrKysrKy0tLS0tCi0gbW9kdWxlcy92aXovc3JjL3Z0ay92dGtYWVpSZWFk ZXIuY3BwIHwgIDIgKy0KLSBtb2R1bGVzL3Zpei9zcmMvdnRrL3Z0a1hZWldyaXRlci5jcHAgfCAg MiArLQotIDcgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0p Ci0KLWRpZmYgLS1naXQgYS9tb2R1bGVzL3Zpei9DTWFrZUxpc3RzLnR4dCBiL21vZHVsZXMvdml6 L0NNYWtlTGlzdHMudHh0Ci1pbmRleCA4OWE5YzNlMDk4Li4zNDI2ZTFkZDI2IDEwMDY0NAotLS0t IGEvbW9kdWxlcy92aXovQ01ha2VMaXN0cy50eHQKLSsrKyBiL21vZHVsZXMvdml6L0NNYWtlTGlz dHMudHh0Ci1AQCAtMyw3ICszLDkgQEAgaWYoTk9UIEhBVkVfVlRLKQotIGVuZGlmKCkKLSAKLSBz ZXQodGhlX2Rlc2NyaXB0aW9uICJWaXoiKQotLWluY2x1ZGUoJHtWVEtfVVNFX0ZJTEV9KQotK2lm KFZUS19WRVJTSU9OIFZFUlNJT05fTEVTUyA4LjkwKQotKyAgaW5jbHVkZSgke1ZUS19VU0VfRklM RX0pCi0rZW5kaWYoKQotIAotIGlmKE5PVCBCVUlMRF9TSEFSRURfTElCUykKLSAgICMgV2Ugb2Jz ZXJ2ZWQgY29uZmxpY3QgYmV0d2VlbiBidWlsdGluIDNyZHBhcnR5IGxpYnJhcmllcyBhbmQKLWRp ZmYgLS1naXQgYS9tb2R1bGVzL3Zpei9zcmMvcHJlY29tcC5ocHAgYi9tb2R1bGVzL3Zpei9zcmMv cHJlY29tcC5ocHAKLWluZGV4IGY5MmZkYjZhYzIuLjRjNGJmN2M1OTkgMTAwNjQ0Ci0tLS0gYS9t b2R1bGVzL3Zpei9zcmMvcHJlY29tcC5ocHAKLSsrKyBiL21vZHVsZXMvdml6L3NyYy9wcmVjb21w LmhwcAotQEAgLTEzMyw3ICsxMzMsOCBAQAotICNpbmNsdWRlIDx2dGtDb2xvclRyYW5zZmVyRnVu Y3Rpb24uaD4KLSAjaW5jbHVkZSA8dnRrU3RyZWFtaW5nRGVtYW5kRHJpdmVuUGlwZWxpbmUuaD4K LSAjaW5jbHVkZSA8dnRrTGlnaHQuaD4KLS0jaW5jbHVkZSAidnRrQ2FsbGJhY2tDb21tYW5kLmgi Ci0rI2luY2x1ZGUgPHZ0a0NhbGxiYWNrQ29tbWFuZC5oPgotKyNpbmNsdWRlIDx2dGtWZXJzaW9u Lmg+Ci0gCi0gI2lmICFkZWZpbmVkKF9XSU4zMikgfHwgZGVmaW5lZChfX0NZR1dJTl9fKQotICMg aW5jbHVkZSA8dW5pc3RkLmg+IC8qIHVubGluayAqLwotQEAgLTE0OSw2ICsxNTAsMTEgQEAKLSAj aW5jbHVkZSAidnRrL3Z0a1RyYWplY3RvcnlTb3VyY2UuaCIKLSAjaW5jbHVkZSAidnRrL3Z0a0lt YWdlTWF0U291cmNlLmgiCi0gCi0rI2lmIFZUS19NQUpPUl9WRVJTSU9OID49IDkKLSt0eXBlZGVm IHZ0a0lkVHlwZSBjb25zdCAqIENlbGxJdGVyVDsKLSsjZWxzZQotK3R5cGVkZWYgdnRrSWRUeXBl ICogQ2VsbEl0ZXJUOwotKyNlbmRpZgotIAotICNpbmNsdWRlIDxvcGVuY3YyL2NvcmUuaHBwPgot ICNpbmNsdWRlIDxvcGVuY3YyL3Zpei5ocHA+Ci1kaWZmIC0tZ2l0IGEvbW9kdWxlcy92aXovc3Jj L3R5cGVzLmNwcCBiL21vZHVsZXMvdml6L3NyYy90eXBlcy5jcHAKLWluZGV4IDY1NTcxYTE5MmUu LjBlMTQ0Nzc4OTEgMTAwNjQ0Ci0tLS0gYS9tb2R1bGVzL3Zpei9zcmMvdHlwZXMuY3BwCi0rKysg Yi9tb2R1bGVzL3Zpei9zcmMvdHlwZXMuY3BwCi1AQCAtMTAwLDcgKzEwMCw4IEBAIGN2Ojp2aXo6 Ok1lc2ggY3Y6OnZpejo6TWVzaDo6bG9hZChjb25zdCBTdHJpbmcmIGZpbGUsIGludCB0eXBlKQot ICAgICBpbnQqIHBvbHlfcHRyID0gbWVzaC5wb2x5Z29ucy5wdHI8aW50PigpOwotIAotICAgICBw b2x5Z29ucy0+SW5pdFRyYXZlcnNhbCgpOwotLSAgICB2dGtJZFR5cGUgbnJfY2VsbF9wb2ludHMs ICpjZWxsX3BvaW50czsKLSsgICAgdnRrSWRUeXBlIG5yX2NlbGxfcG9pbnRzOwotKyAgICBDZWxs SXRlclQgY2VsbF9wb2ludHM7Ci0gICAgIHdoaWxlIChwb2x5Z29ucy0+R2V0TmV4dENlbGwobnJf Y2VsbF9wb2ludHMsIGNlbGxfcG9pbnRzKSkKLSAgICAgewotICAgICAgICAgKnBvbHlfcHRyKysg PSBucl9jZWxsX3BvaW50czsKLWRpZmYgLS1naXQgYS9tb2R1bGVzL3Zpei9zcmMvdml6aW1wbC5j cHAgYi9tb2R1bGVzL3Zpei9zcmMvdml6aW1wbC5jcHAKLWluZGV4IDJjMjkxYzA1NjkuLjJjN2Nl OTk3YTQgMTAwNjQ0Ci0tLS0gYS9tb2R1bGVzL3Zpei9zcmMvdml6aW1wbC5jcHAKLSsrKyBiL21v ZHVsZXMvdml6L3NyYy92aXppbXBsLmNwcAotQEAgLTU1LDggKzU1LDE3IEBAIGN2Ojp2aXo6OlZp ejNkOjpWaXpJbXBsOjpWaXpJbXBsKGNvbnN0IFN0cmluZyAmbmFtZSkgOiBzcGluX29uY2Vfc3Rh dGVfKGZhbHNlKSwKLSAKLSAgICAgLy8gQ3JlYXRlIHJlbmRlciB3aW5kb3cKLSAgICAgd2luZG93 XyA9IHZ0a1NtYXJ0UG9pbnRlcjx2dGtSZW5kZXJXaW5kb3c+OjpOZXcoKTsKLS0gICAgY3Y6OlZl YzJpIHdpbmRvd19zaXplID0gY3Y6OlZlYzJpKHdpbmRvd18tPkdldFNjcmVlblNpemUoKSkgLyAy OwotLSAgICB3aW5kb3dfLT5TZXRTaXplKHdpbmRvd19zaXplLnZhbCk7Ci0rICAgIGludCAqIHN6 ID0gd2luZG93Xy0+R2V0U2NyZWVuU2l6ZSgpOwotKyAgICBpZiAoc3opCi0rICAgIHsKLSsgICAg ICAgIGN2OjpWZWMyaSB3aW5kb3dfc2l6ZSA9IGN2OjpWZWMyaShzeikgLyAyOwotKyAgICAgICAg d2luZG93Xy0+U2V0U2l6ZSh3aW5kb3dfc2l6ZS52YWwpOwotKyAgICB9Ci0rICAgIGVsc2UKLSsg ICAgewotKyAgICAgICAgaW50IG5ld19zelsyXSA9IHsgNjQwLCA0ODAgfTsKLSsgICAgICAgIHdp bmRvd18tPlNldFNpemUobmV3X3N6KTsKLSsgICAgfQotICAgICB3aW5kb3dfLT5BZGRSZW5kZXJl cihyZW5kZXJlcl8pOwotIAotICAgICAvLyBDcmVhdGUgdGhlIGludGVyYWN0b3Igc3R5bGUKLWRp ZmYgLS1naXQgYS9tb2R1bGVzL3Zpei9zcmMvdnRrL3Z0a09CSldyaXRlci5jcHAgYi9tb2R1bGVz L3Zpei9zcmMvdnRrL3Z0a09CSldyaXRlci5jcHAKLWluZGV4IDI5NmI2ZWIwNjUuLjJlNTc2NGZj MjcgMTAwNjQ0Ci0tLS0gYS9tb2R1bGVzL3Zpei9zcmMvdnRrL3Z0a09CSldyaXRlci5jcHAKLSsr KyBiL21vZHVsZXMvdml6L3NyYy92dGsvdnRrT0JKV3JpdGVyLmNwcAotQEAgLTcyLDcgKzcyLDcg QEAgdm9pZCBjdjo6dml6Ojp2dGtPQkpXcml0ZXI6OldyaXRlRGF0YSgpCi0gICAgIH0KLSAKLSAg ICAgdnRrRGVidWdNYWNybyg8PCJPcGVuaW5nIHZ0ayBmaWxlIGZvciB3cml0aW5nLi4uIik7Ci0t ICAgIG9zdHJlYW0gKm91dGZpbGVwID0gbmV3IG9mc3RyZWFtKHRoaXMtPkZpbGVOYW1lLCBpb3M6 Om91dCk7Ci0rICAgIHN0ZDo6b3N0cmVhbSAqb3V0ZmlsZXAgPSBuZXcgc3RkOjpvZnN0cmVhbSh0 aGlzLT5GaWxlTmFtZSwgaW9zOjpvdXQpOwotICAgICBpZiAob3V0ZmlsZXAtPmZhaWwoKSkKLSAg ICAgewotICAgICAgICAgdnRrRXJyb3JNYWNybyg8PCAiVW5hYmxlIHRvIG9wZW4gZmlsZTogIjw8 IHRoaXMtPkZpbGVOYW1lKTsKLUBAIC0xMjcsNyArMTI3LDggQEAgdm9pZCBjdjo6dml6Ojp2dGtP QkpXcml0ZXI6OldyaXRlRGF0YSgpCi0gICAgIC8vIHdyaXRlIG91dCB2ZXJ0cyBpZiBhbnkKLSAg ICAgaWYgKGlucHV0LT5HZXROdW1iZXJPZlZlcnRzKCkgPiAwKQotICAgICB7Ci0tICAgICAgICB2 dGtJZFR5cGUgbnB0cyA9IDAsICppbmRleCA9IDA7Ci0rICAgICAgICB2dGtJZFR5cGUgbnB0cyA9 IDA7Ci0rICAgICAgICBDZWxsSXRlclQgaW5kZXggPSAwOwotICAgICAgICAgdnRrQ2VsbEFycmF5 ICpjZWxscyA9IGlucHV0LT5HZXRWZXJ0cygpOwotICAgICAgICAgZm9yIChjZWxscy0+SW5pdFRy YXZlcnNhbCgpOyBjZWxscy0+R2V0TmV4dENlbGwobnB0cywgaW5kZXgpOyApCi0gICAgICAgICB7 Ci1AQCAtMTQxLDcgKzE0Miw4IEBAIHZvaWQgY3Y6OnZpejo6dnRrT0JKV3JpdGVyOjpXcml0ZURh dGEoKQotICAgICAvLyB3cml0ZSBvdXQgbGluZXMgaWYgYW55Ci0gICAgIGlmIChpbnB1dC0+R2V0 TnVtYmVyT2ZMaW5lcygpID4gMCkKLSAgICAgewotLSAgICAgICAgdnRrSWRUeXBlIG5wdHMgPSAw LCAqaW5kZXggPSAwOwotKyAgICAgICAgdnRrSWRUeXBlIG5wdHMgPSAwOwotKyAgICAgICAgQ2Vs bEl0ZXJUIGluZGV4ID0gMDsKLSAgICAgICAgIHZ0a0NlbGxBcnJheSAqY2VsbHMgPSBpbnB1dC0+ R2V0TGluZXMoKTsKLSAgICAgICAgIGZvciAoY2VsbHMtPkluaXRUcmF2ZXJzYWwoKTsgY2VsbHMt PkdldE5leHRDZWxsKG5wdHMsIGluZGV4KTsgKQotICAgICAgICAgewotQEAgLTE2Miw3ICsxNjQs OCBAQCB2b2lkIGN2Ojp2aXo6OnZ0a09CSldyaXRlcjo6V3JpdGVEYXRhKCkKLSAgICAgLy8gd3Jp dGUgb3V0IHBvbHlzIGlmIGFueQotICAgICBpZiAoaW5wdXQtPkdldE51bWJlck9mUG9seXMoKSA+ IDApCi0gICAgIHsKLS0gICAgICAgIHZ0a0lkVHlwZSBucHRzID0gMCwgKmluZGV4ID0gMDsKLSsg ICAgICAgIHZ0a0lkVHlwZSBucHRzID0gMDsKLSsgICAgICAgIENlbGxJdGVyVCBpbmRleCA9IDA7 Ci0gICAgICAgICB2dGtDZWxsQXJyYXkgKmNlbGxzID0gaW5wdXQtPkdldFBvbHlzKCk7Ci0gICAg ICAgICBmb3IgKGNlbGxzLT5Jbml0VHJhdmVyc2FsKCk7IGNlbGxzLT5HZXROZXh0Q2VsbChucHRz LCBpbmRleCk7ICkKLSAgICAgICAgIHsKLUBAIC0xOTEsNyArMTk0LDggQEAgdm9pZCBjdjo6dml6 Ojp2dGtPQkpXcml0ZXI6OldyaXRlRGF0YSgpCi0gICAgIC8vIHdyaXRlIG91dCB0c3RyaXBzIGlm IGFueQotICAgICBpZiAoaW5wdXQtPkdldE51bWJlck9mU3RyaXBzKCkgPiAwKQotICAgICB7Ci0t ICAgICAgICB2dGtJZFR5cGUgbnB0cyA9IDAsICppbmRleCA9IDA7Ci0rICAgICAgICB2dGtJZFR5 cGUgbnB0cyA9IDA7Ci0rICAgICAgICBDZWxsSXRlclQgaW5kZXggPSAwOwotICAgICAgICAgdnRr Q2VsbEFycmF5ICpjZWxscyA9IGlucHV0LT5HZXRTdHJpcHMoKTsKLSAgICAgICAgIGZvciAoY2Vs bHMtPkluaXRUcmF2ZXJzYWwoKTsgY2VsbHMtPkdldE5leHRDZWxsKG5wdHMsIGluZGV4KTsgKQot ICAgICAgICAgewotZGlmZiAtLWdpdCBhL21vZHVsZXMvdml6L3NyYy92dGsvdnRrWFlaUmVhZGVy LmNwcCBiL21vZHVsZXMvdml6L3NyYy92dGsvdnRrWFlaUmVhZGVyLmNwcAotaW5kZXggNTc3MjZl YWU5Yi4uM2I5MjY1ZmVkNiAxMDA2NDQKLS0tLSBhL21vZHVsZXMvdml6L3NyYy92dGsvdnRrWFla UmVhZGVyLmNwcAotKysrIGIvbW9kdWxlcy92aXovc3JjL3Z0ay92dGtYWVpSZWFkZXIuY3BwCi1A QCAtNzcsNyArNzcsNyBAQCBpbnQgY3Y6OnZpejo6dnRrWFlaUmVhZGVyOjpSZXF1ZXN0RGF0YSh2 dGtJbmZvcm1hdGlvbiosIHZ0a0luZm9ybWF0aW9uVmVjdG9yKiosCi0gICAgIH0KLSAKLSAgICAg Ly8gT3BlbiB0aGUgaW5wdXQgZmlsZS4KLS0gICAgaWZzdHJlYW0gZmluKHRoaXMtPkZpbGVOYW1l KTsKLSsgICAgc3RkOjppZnN0cmVhbSBmaW4odGhpcy0+RmlsZU5hbWUpOwotICAgICBpZighZmlu KQotICAgICB7Ci0gICAgICAgICB2dGtFcnJvck1hY3JvKCJFcnJvciBvcGVuaW5nIGZpbGUgIiA8 PCB0aGlzLT5GaWxlTmFtZSk7Ci1kaWZmIC0tZ2l0IGEvbW9kdWxlcy92aXovc3JjL3Z0ay92dGtY WVpXcml0ZXIuY3BwIGIvbW9kdWxlcy92aXovc3JjL3Z0ay92dGtYWVpXcml0ZXIuY3BwCi1pbmRl eCBjZjk1ZTNjNmEwLi41NmEyNmIzOGEwIDEwMDY0NAotLS0tIGEvbW9kdWxlcy92aXovc3JjL3Z0 ay92dGtYWVpXcml0ZXIuY3BwCi0rKysgYi9tb2R1bGVzL3Zpei9zcmMvdnRrL3Z0a1hZWldyaXRl ci5jcHAKLUBAIC02OSw3ICs2OSw3IEBAIHZvaWQgY3Y6OnZpejo6dnRrWFlaV3JpdGVyOjpXcml0 ZURhdGEoKQotICAgICB9Ci0gCi0gICAgIHZ0a0RlYnVnTWFjcm8oPDwiT3BlbmluZyB2dGsgZmls ZSBmb3Igd3JpdGluZy4uLiIpOwotLSAgICBvc3RyZWFtICpvdXRmaWxlcCA9IG5ldyBvZnN0cmVh bSh0aGlzLT5GaWxlTmFtZSwgaW9zOjpvdXQpOwotKyAgICBzdGQ6Om9zdHJlYW0gKm91dGZpbGVw ID0gbmV3IHN0ZDo6b2ZzdHJlYW0odGhpcy0+RmlsZU5hbWUsIGlvczo6b3V0KTsKLSAgICAgaWYg KG91dGZpbGVwLT5mYWlsKCkpCi0gICAgIHsKLSAgICAgICAgIHZ0a0Vycm9yTWFjcm8oPDwgIlVu YWJsZSB0byBvcGVuIGZpbGU6ICI8PCB0aGlzLT5GaWxlTmFtZSk7Ci0KLUZyb20gNDI4MWRmN2Zl MDA5MGMwM2I2YTQwZGI0NDI5MmJhNjI2ODIzOWNiYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206IE1ha3NpbSBTaGFidW5pbiA8bWFrc2ltLnNoYWJ1bmluQGdtYWlsLmNvbT4KLURhdGU6 IFR1ZSwgMiBKdW4gMjAyMCAxOToyMToxOSArMDMwMAotU3ViamVjdDogW1BBVENIIDIvM10gdml6 OiB0ZXN0cyBhcmUgbm9uLWludGVyYWN0aXZlIG5vdwotCi0tLS0KLSBtb2R1bGVzL3Zpei90ZXN0 L3Rlc3RfdHV0b3JpYWwyLmNwcCB8ICA0ICstLQotIG1vZHVsZXMvdml6L3Rlc3QvdGVzdF90dXRv cmlhbDMuY3BwIHwgIDIgKy0KLSBtb2R1bGVzL3Zpei90ZXN0L3Rlc3Rfdml6M2QuY3BwICAgICB8 ICAyICstCi0gbW9kdWxlcy92aXovdGVzdC90ZXN0c19zaW1wbGUuY3BwICAgfCA1NiArKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0tLQotIDQgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygr KSwgMzIgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9tb2R1bGVzL3Zpei90ZXN0L3Rlc3Rf dHV0b3JpYWwyLmNwcCBiL21vZHVsZXMvdml6L3Rlc3QvdGVzdF90dXRvcmlhbDIuY3BwCi1pbmRl eCA2YjI5NzJmMGFmLi5hNGI1Yjk5NTgyIDEwMDY0NAotLS0tIGEvbW9kdWxlcy92aXovdGVzdC90 ZXN0X3R1dG9yaWFsMi5jcHAKLSsrKyBiL21vZHVsZXMvdml6L3Rlc3QvdGVzdF90dXRvcmlhbDIu Y3BwCi1AQCAtMjgsNyArMjgsNyBAQCBzdGF0aWMgdm9pZCB0dXRvcmlhbDIoKQotICAgICAvLy8g Um9kcmlndWVzIHZlY3RvcgotICAgICBWZWMzZCByb3RfdmVjID0gVmVjM2Q6OmFsbCgwKTsKLSAg ICAgZG91YmxlIHRyYW5zbGF0aW9uX3BoYXNlID0gMC4wLCB0cmFuc2xhdGlvbiA9IDAuMDsKLS0g ICAgd2hpbGUoIW15V2luZG93Lndhc1N0b3BwZWQoKSkKLSsgICAgZm9yKHVuc2lnbmVkIG51bSA9 IDA7IG51bSA8IDUwOyArK251bSkKLSAgICAgewotICAgICAgICAgLyogUm90YXRpb24gdXNpbmcg cm9kcmlndWVzICovCi0gICAgICAgICAvLy8gUm90YXRlIGFyb3VuZCAoMSwxLDEpCi1AQCAtNDUs NyArNDUsNyBAQCBzdGF0aWMgdm9pZCB0dXRvcmlhbDIoKQotIAotICAgICAgICAgbXlXaW5kb3cu c2V0V2lkZ2V0UG9zZSgiQ3ViZSBXaWRnZXQiLCBwb3NlKTsKLSAKLS0gICAgICAgIG15V2luZG93 LnNwaW5PbmNlKDEsIHRydWUpOwotKyAgICAgICAgbXlXaW5kb3cuc3Bpbk9uY2UoMTAwLCB0cnVl KTsKLSAgICAgfQotIH0KLSAKLWRpZmYgLS1naXQgYS9tb2R1bGVzL3Zpei90ZXN0L3Rlc3RfdHV0 b3JpYWwzLmNwcCBiL21vZHVsZXMvdml6L3Rlc3QvdGVzdF90dXRvcmlhbDMuY3BwCi1pbmRleCAy MzIxMzBmMGE2Li4zMmUzM2IxOTAyIDEwMDY0NAotLS0tIGEvbW9kdWxlcy92aXovdGVzdC90ZXN0 X3R1dG9yaWFsMy5jcHAKLSsrKyBiL21vZHVsZXMvdml6L3Rlc3QvdGVzdF90dXRvcmlhbDMuY3Bw Ci1AQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgdm9pZCB0dXRvcmlhbDMoYm9vbCBjYW1lcmFfcG92 KQotICAgICAgICAgbXlXaW5kb3cuc2V0Vmlld2VyUG9zZShjYW1lcmFfcG9zZSk7Ci0gCi0gICAg IC8vLyBTdGFydCBldmVudCBsb29wLgotLSAgICBteVdpbmRvdy5zcGluKCk7Ci0rICAgIG15V2lu ZG93LnNwaW5PbmNlKDUwMCwgdHJ1ZSk7Ci0gfQotIAotIFRFU1QoVml6LCB0dXRvcmlhbDNfZ2xv YmFsX3ZpZXcpCi1kaWZmIC0tZ2l0IGEvbW9kdWxlcy92aXovdGVzdC90ZXN0X3ZpejNkLmNwcCBi L21vZHVsZXMvdml6L3Rlc3QvdGVzdF92aXozZC5jcHAKLWluZGV4IGNkZjhhMDBhZDcuLjRhYjA1 YzNlMGEgMTAwNjQ0Ci0tLS0gYS9tb2R1bGVzL3Zpei90ZXN0L3Rlc3Rfdml6M2QuY3BwCi0rKysg Yi9tb2R1bGVzL3Zpei90ZXN0L3Rlc3Rfdml6M2QuY3BwCi1AQCAtNTksNyArNTksNyBAQCBURVNU KFZpel92aXozZCwgRElTQUJMRURfZGV2ZWxvcCkKLSAgICAgLy9jdjo6TWF0IGNsb3VkID0gY3Y6 OnZpejo6cmVhZENsb3VkKGdldF9kcmFnb25fcGx5X2ZpbGVfcGF0aCgpKTsKLSAgICAgLy8tLS0t Pj4+Pj4gPC90b190ZXN0X2luX2Z1dHVyZT4KLSAKLS0gICAgdml6LnNwaW4oKTsKLSsgICAgdml6 LnNwaW5PbmNlKDUwMCwgdHJ1ZSk7Ci0gfQotIAotIH19IC8vIG5hbWVzcGFjZQotZGlmZiAtLWdp dCBhL21vZHVsZXMvdml6L3Rlc3QvdGVzdHNfc2ltcGxlLmNwcCBiL21vZHVsZXMvdml6L3Rlc3Qv dGVzdHNfc2ltcGxlLmNwcAotaW5kZXggMTJkNjk2ZGZiYS4uNTU4NDQ4M2Y0ZiAxMDA2NDQKLS0t LSBhL21vZHVsZXMvdml6L3Rlc3QvdGVzdHNfc2ltcGxlLmNwcAotKysrIGIvbW9kdWxlcy92aXov dGVzdC90ZXN0c19zaW1wbGUuY3BwCi1AQCAtNTYsNyArNTYsNyBAQCBURVNUKFZpeiwgc2hvd19j bG91ZF9ibHViZXJyeSkKLSAgICAgdml6LnNob3dXaWRnZXQoImRyYWdvbiIsIFdDbG91ZChkcmFn b25fY2xvdWQsIENvbG9yOjpibHViZXJyeSgpKSwgcG9zZSk7Ci0gCi0gICAgIHZpei5zaG93V2lk Z2V0KCJ0ZXh0MmQiLCBXVGV4dCgiQmx1YmVycnkgY2xvdWQiLCBQb2ludCgyMCwgMjApLCAyMCwg Q29sb3I6OmdyZWVuKCkpKTsKLS0gICAgdml6LnNwaW4oKTsKLSsgICAgdml6LnNwaW5PbmNlKDUw MCwgdHJ1ZSk7Ci0gfQotIAotIFRFU1QoVml6LCBzaG93X2Nsb3VkX3JhbmRvbV9jb2xvcikKLUBA IC03Myw3ICs3Myw3IEBAIFRFU1QoVml6LCBzaG93X2Nsb3VkX3JhbmRvbV9jb2xvcikKLSAgICAg dml6LnNob3dXaWRnZXQoImNvb3N5cyIsIFdDb29yZGluYXRlU3lzdGVtKCkpOwotICAgICB2aXou c2hvd1dpZGdldCgiZHJhZ29uIiwgV0Nsb3VkKGRyYWdvbl9jbG91ZCwgY29sb3JzKSwgcG9zZSk7 Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJ0ZXh0MmQiLCBXVGV4dCgiUmFuZG9tIGNvbG9yIGNsb3Vk IiwgUG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpncmVlbigpKSk7Ci0tICAgIHZpei5zcGluKCk7 Ci0rICAgIHZpei5zcGluT25jZSg1MDAsIHRydWUpOwotIH0KLSAKLSBURVNUKFZpeiwgc2hvd19j bG91ZF9tYXNrZWQpCi1AQCAtOTEsNyArOTEsNyBAQCBURVNUKFZpeiwgc2hvd19jbG91ZF9tYXNr ZWQpCi0gICAgIHZpei5zaG93V2lkZ2V0KCJjb29zeXMiLCBXQ29vcmRpbmF0ZVN5c3RlbSgpKTsK LSAgICAgdml6LnNob3dXaWRnZXQoImRyYWdvbiIsIFdDbG91ZChkcmFnb25fY2xvdWQpLCBwb3Nl KTsKLSAgICAgdml6LnNob3dXaWRnZXQoInRleHQyZCIsIFdUZXh0KCJOYW4gbWFza2VkIGNsb3Vk IiwgUG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpncmVlbigpKSk7Ci0tICAgIHZpei5zcGluKCk7 Ci0rICAgIHZpei5zcGluT25jZSg1MDAsIHRydWUpOwotIH0KLSAKLSBURVNUKFZpeiwgc2hvd19j bG91ZF9jb2xsZWN0aW9uKQotQEAgLTEwOSw3ICsxMDksNyBAQCBURVNUKFZpeiwgc2hvd19jbG91 ZF9jb2xsZWN0aW9uKQotICAgICB2aXouc2hvd1dpZGdldCgiY29vc3lzIiwgV0Nvb3JkaW5hdGVT eXN0ZW0oKSk7Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJjY29sIiwgY2NvbCk7Ci0gICAgIHZpei5z aG93V2lkZ2V0KCJ0ZXh0MmQiLCBXVGV4dCgiQ2xvdWQgY29sbGVjdGlvbiIsIFBvaW50KDIwLCAy MCksIDIwLCBDb2xvcjo6Z3JlZW4oKSkpOwotLSAgICB2aXouc3BpbigpOwotKyAgICB2aXouc3Bp bk9uY2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gVEVTVChWaXosIHNob3dfcGFpbnRlZF9jbG91ZHMp Ci1AQCAtMTI0LDcgKzEyNCw3IEBAIFRFU1QoVml6LCBzaG93X3BhaW50ZWRfY2xvdWRzKQotICAg ICB2aXouc2hvd1dpZGdldCgiY2xvdWQzIiwgV1BhaW50ZWRDbG91ZChjbG91ZCwgVmVjM2QoMC4w LCAwLjAsIC0xLjApLCBWZWMzZCgwLjAsIDAuMCwgMS4wKSwgQ29sb3I6OmJsdWUoKSwgQ29sb3I6 OnJlZCgpKSk7Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJhcnJvdyIsIFdBcnJvdyhWZWMzZCgwLjAs IDEuMCwgLTEuMCksIFZlYzNkKDAuMCwgMS4wLCAxLjApLCAwLjAwOSwgQ29sb3I6OnJhc3BiZXJy eSgpKSk7Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJ0ZXh0MmQiLCBXVGV4dCgiUGFpbnRlZCBjbG91 ZHMiLCBQb2ludCgyMCwgMjApLCAyMCwgQ29sb3I6OmdyZWVuKCkpKTsKLS0gICAgdml6LnNwaW4o KTsKLSsgICAgdml6LnNwaW5PbmNlKDUwMCwgdHJ1ZSk7Ci0gfQotIAotIFRFU1QoVml6LCBzaG93 X21lc2gpCi1AQCAtMTM3LDcgKzEzNyw3IEBAIFRFU1QoVml6LCBzaG93X21lc2gpCi0gICAgIHZp ei5zaG93V2lkZ2V0KCJjb29zeXMiLCBXQ29vcmRpbmF0ZVN5c3RlbSgpKTsKLSAgICAgdml6LnNo b3dXaWRnZXQoIm1lc2giLCBXTWVzaChtZXNoKSwgcG9zZSk7Ci0gICAgIHZpei5zaG93V2lkZ2V0 KCJ0ZXh0MmQiLCBXVGV4dCgiSnVzdCBtZXNoIiwgUG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpn cmVlbigpKSk7Ci0tICAgIHZpei5zcGluKCk7Ci0rICAgIHZpei5zcGluT25jZSg1MDAsIHRydWUp OwotIH0KLSAKLSBURVNUKFZpeiwgc2hvd19tZXNoX3JhbmRvbV9jb2xvcnMpCi1AQCAtMTUyLDcg KzE1Miw3IEBAIFRFU1QoVml6LCBzaG93X21lc2hfcmFuZG9tX2NvbG9ycykKLSAgICAgdml6LnNo b3dXaWRnZXQoIm1lc2giLCBXTWVzaChtZXNoKSwgcG9zZSk7Ci0gICAgIHZpei5zZXRSZW5kZXJp bmdQcm9wZXJ0eSgibWVzaCIsIFNIQURJTkcsIFNIQURJTkdfUEhPTkcpOwotICAgICB2aXouc2hv d1dpZGdldCgidGV4dDJkIiwgV1RleHQoIlJhbmRvbSBjb2xvciBtZXNoIiwgUG9pbnQoMjAsIDIw KSwgMjAsIENvbG9yOjpncmVlbigpKSk7Ci0tICAgIHZpei5zcGluKCk7Ci0rICAgIHZpei5zcGlu T25jZSg1MDAsIHRydWUpOwotIH0KLSAKLSBURVNUKFZpeiwgc2hvd193aWRnZXRfbWVyZ2VyKQot QEAgLTE3Myw3ICsxNzMsNyBAQCBURVNUKFZpeiwgc2hvd193aWRnZXRfbWVyZ2VyKQotICAgICB2 aXouc2hvd1dpZGdldCgiY29vIiwgV0Nvb3JkaW5hdGVTeXN0ZW0oKSk7Ci0gICAgIHZpei5zaG93 V2lkZ2V0KCJtZXJnZXIiLCBtZXJnZXIpOwotICAgICB2aXouc2hvd1dpZGdldCgidGV4dDJkIiwg V1RleHQoIldpZGdldCBtZXJnZXIiLCBQb2ludCgyMCwgMjApLCAyMCwgQ29sb3I6OmdyZWVuKCkp KTsKLS0gICAgdml6LnNwaW4oKTsKLSsgICAgdml6LnNwaW5PbmNlKDUwMCwgdHJ1ZSk7Ci0gfQot IAotIFRFU1QoVml6LCBzaG93X3RleHR1cmVkX21lc2gpCi1AQCAtMjEwLDcgKzIxMCw3IEBAIFRF U1QoVml6LCBzaG93X3RleHR1cmVkX21lc2gpCi0gICAgIHZpei5zaG93V2lkZ2V0KCJtZXNoIiwg V01lc2gobWVzaCkpOwotICAgICB2aXouc2V0UmVuZGVyaW5nUHJvcGVydHkoIm1lc2giLCBTSEFE SU5HLCBTSEFESU5HX1BIT05HKTsKLSAgICAgdml6LnNob3dXaWRnZXQoInRleHQyZCIsIFdUZXh0 KCJUZXh0dXJlZCBtZXNoIiwgUG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpncmVlbigpKSk7Ci0t ICAgIHZpei5zcGluKCk7Ci0rICAgIHZpei5zcGluT25jZSg1MDAsIHRydWUpOwotIH0KLSAKLSBU RVNUKFZpeiwgc2hvd19wb2x5bGluZSkKLUBAIC0yMjksNyArMjI5LDcgQEAgVEVTVChWaXosIHNo b3dfcG9seWxpbmUpCi0gICAgIHZpei5zaG93V2lkZ2V0KCJwb2x5bGluZSIsIFdQb2x5TGluZShw b2x5bGluZSwgY29sb3JzKSk7Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJjb29zeXMiLCBXQ29vcmRp bmF0ZVN5c3RlbSgpKTsKLSAgICAgdml6LnNob3dXaWRnZXQoInRleHQyZCIsIFdUZXh0KCJQb2x5 bGluZSIsIFBvaW50KDIwLCAyMCksIDIwLCBDb2xvcjo6Z3JlZW4oKSkpOwotLSAgICB2aXouc3Bp bigpOwotKyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gVEVTVChWaXosIHNo b3dfc2FtcGxlZF9ub3JtYWxzKQotQEAgLTI0NCw3ICsyNDQsNyBAQCBURVNUKFZpeiwgc2hvd19z YW1wbGVkX25vcm1hbHMpCi0gICAgIHZpei5zaG93V2lkZ2V0KCJub3JtYWxzIiwgV0Nsb3VkTm9y bWFscyhtZXNoLmNsb3VkLCBtZXNoLm5vcm1hbHMsIDMwLCAwLjFmLCBDb2xvcjo6Z3JlZW4oKSks IHBvc2UpOwotICAgICB2aXouc2V0UmVuZGVyaW5nUHJvcGVydHkoIm5vcm1hbHMiLCBMSU5FX1dJ RFRILCAyLjApOwotICAgICB2aXouc2hvd1dpZGdldCgidGV4dDJkIiwgV1RleHQoIkNsb3VkIG9y IG1lc2ggbm9ybWFscyIsIFBvaW50KDIwLCAyMCksIDIwLCBDb2xvcjo6Z3JlZW4oKSkpOwotLSAg ICB2aXouc3BpbigpOwotKyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gVEVT VChWaXosIHNob3dfY2xvdWRfc2hhZGVkX2J5X25vcm1hbHMpCi1AQCAtMjYwLDcgKzI2MCw3IEBA IFRFU1QoVml6LCBzaG93X2Nsb3VkX3NoYWRlZF9ieV9ub3JtYWxzKQotICAgICBWaXozZCB2aXoo InNob3dfY2xvdWRfc2hhZGVkX2J5X25vcm1hbHMiKTsKLSAgICAgdml6LnNob3dXaWRnZXQoImNs b3VkIiwgY2xvdWQsIHBvc2UpOwotICAgICB2aXouc2hvd1dpZGdldCgidGV4dDJkIiwgV1RleHQo IkNsb3VkIHNoYWRlZCBieSBub3JtYWxzIiwgUG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpncmVl bigpKSk7Ci0tICAgIHZpei5zcGluKCk7Ci0rICAgIHZpei5zcGluT25jZSg1MDAsIHRydWUpOwot IH0KLSAKLSBURVNUKFZpeiwgc2hvd190cmFqZWN0b3JpZXMpCi1AQCAtMjg3LDE1ICsyODcsMTUg QEAgVEVTVChWaXosIHNob3dfdHJhamVjdG9yaWVzKQotICAgICB2aXouc2hvd1dpZGdldCgidGV4 dDJkIiwgV1RleHQoIkRpZmZlcmVudCBraW5kcyBvZiBzdXBwb3J0ZWQgdHJhamVjdG9yaWVzIiwg UG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpncmVlbigpKSk7Ci0gCi0gICAgIGludCBpID0gMDsK LS0gICAgd2hpbGUoIXZpei53YXNTdG9wcGVkKCkpCi0rICAgIGZvcih1bnNpZ25lZCBudW0gPSAw OyBudW0gPCA1MDsgKytudW0pCi0gICAgIHsKLSAgICAgICAgIGRvdWJsZSBhID0gLS1pICUgMzYw OwotICAgICAgICAgVmVjM2QgcG9zZShzaW4oYSAqIENWX1BJLzE4MCksIDAuNywgY29zKGEgKiBD Vl9QSS8xODApKTsKLSAgICAgICAgIHZpei5zZXRWaWV3ZXJQb3NlKG1ha2VDYW1lcmFQb3NlKHBv c2UgKiA3LjUsIFZlYzNkKDAuMCwgMC41LCAwLjApLCBWZWMzZCgwLjAsIDAuMSwgMC4wKSkpOwot LSAgICAgICAgdml6LnNwaW5PbmNlKDIwLCB0cnVlKTsKLSsgICAgICAgIHZpei5zcGluT25jZSgx MDAsIHRydWUpOwotICAgICB9Ci0gICAgIHZpei5yZXNldENhbWVyYSgpOwotLSAgICB2aXouc3Bp bigpOwotKyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gVEVTVChWaXosIHNo b3dfdHJhamVjdG9yeV9yZXBvc2l0aW9uKQotQEAgLTMwNiw3ICszMDYsNyBAQCBURVNUKFZpeiwg c2hvd190cmFqZWN0b3J5X3JlcG9zaXRpb24pCi0gICAgIHZpei5zaG93V2lkZ2V0KCJjb29zIiwg V0Nvb3JkaW5hdGVTeXN0ZW0oKSk7Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJzdWIzIiwgV1RyYWpl Y3RvcnkoTWF0KHBhdGgpLnJvd1JhbmdlKDAsIChpbnQpcGF0aC5zaXplKCkvMyksIFdUcmFqZWN0 b3J5OjpCT1RILCAwLjIsIENvbG9yOjpicm93bigpKSwgcGF0aC5mcm9udCgpLmludigpKTsKLSAg ICAgdml6LnNob3dXaWRnZXQoInRleHQyZCIsIFdUZXh0KCJUcmFqZWN0b3J5IHJlc3Bvc2l0aW9u IHRvIG9yaWdpbiIsIFBvaW50KDIwLCAyMCksIDIwLCBDb2xvcjo6Z3JlZW4oKSkpOwotLSAgICB2 aXouc3BpbigpOwotKyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gVEVTVChW aXosIHNob3dfY2FtZXJhX3Bvc2l0aW9ucykKLUBAIC0zMzAsNyArMzMwLDcgQEAgVEVTVChWaXos IHNob3dfY2FtZXJhX3Bvc2l0aW9ucykKLSAgICAgdml6LnNob3dXaWRnZXQoInBvczMiLCBXQ2Ft ZXJhUG9zaXRpb24oMC43NSksIHBvc2VzWzFdKTsKLSAgICAgdml6LnNob3dXaWRnZXQoInBvczQi LCBXQ2FtZXJhUG9zaXRpb24oSywgZ3JheSwgMywgQ29sb3I6OmluZGlnbygpKSwgcG9zZXNbMV0p OwotICAgICB2aXouc2hvd1dpZGdldCgidGV4dDJkIiwgV1RleHQoIkNhbWVyYSBwb3NpdGlvbnMg d2l0aCBpbWFnZXMiLCBQb2ludCgyMCwgMjApLCAyMCwgQ29sb3I6OmdyZWVuKCkpKTsKLS0gICAg dml6LnNwaW4oKTsKLSsgICAgdml6LnNwaW5PbmNlKDUwMCwgdHJ1ZSk7Ci0gfQotIAotIFRFU1Qo Vml6LCBzaG93X292ZXJsYXlfaW1hZ2UpCi1AQCAtMzUzLDE2ICszNTMsMTYgQEAgVEVTVChWaXos IHNob3dfb3ZlcmxheV9pbWFnZSkKLSAgICAgdml6LnNob3dXaWRnZXQoInRleHQyZCIsIFdUZXh0 KCJPdmVybGF5IGltYWdlcyIsIFBvaW50KDIwLCAyMCksIDIwLCBDb2xvcjo6Z3JlZW4oKSkpOwot IAotICAgICBpbnQgaSA9IDA7Ci0tICAgIHdoaWxlKCF2aXoud2FzU3RvcHBlZCgpKQotKyAgICBm b3IodW5zaWduZWQgbnVtID0gMDsgbnVtIDwgNTA7ICsrbnVtKQotICAgICB7Ci0gICAgICAgICBk b3VibGUgYSA9ICsraSAlIDM2MDsKLSAgICAgICAgIFZlYzNkIHBvc2Uoc2luKGEgKiBDVl9QSS8x ODApLCAwLjcsIGNvcyhhICogQ1ZfUEkvMTgwKSk7Ci0gICAgICAgICB2aXouc2V0Vmlld2VyUG9z ZShtYWtlQ2FtZXJhUG9zZShwb3NlICogMywgVmVjM2QoMC4wLCAwLjUsIDAuMCksIFZlYzNkKDAu MCwgMC4xLCAwLjApKSk7Ci0gICAgICAgICB2aXouZ2V0V2lkZ2V0KCJpbWcxIikuY2FzdDxXSW1h Z2VPdmVybGF5PigpLnNldEltYWdlKGxlbmEgKiBwb3coc2luKGkqMTAqQ1ZfUEkvMTgwKSAqIDAu NSArIDAuNSwgMS4wKSk7Ci0tICAgICAgICB2aXouc3Bpbk9uY2UoMSwgdHJ1ZSk7Ci0rICAgICAg ICB2aXouc3Bpbk9uY2UoMTAwLCB0cnVlKTsKLSAgICAgfQotICAgICB2aXouc2hvd1dpZGdldCgi dGV4dDJkIiwgV1RleHQoIk92ZXJsYXkgaW1hZ2VzIChzdG9wcGVkKSIsIFBvaW50KDIwLCAyMCks IDIwLCBDb2xvcjo6Z3JlZW4oKSkpOwotLSAgICB2aXouc3BpbigpOwotKyAgICB2aXouc3Bpbk9u Y2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gCi1AQCAtMzc2LDcgKzM3Niw3IEBAIFRFU1QoVml6LCBz aG93X2ltYWdlX21ldGhvZCkKLSAgICAgdml6LnNob3dJbWFnZShsZW5hLCBsZW5hLnNpemUoKSk7 Ci0gICAgIHZpei5zcGluT25jZSgxNTAwLCB0cnVlKTsKLSAKLS0gICAgY3Y6OnZpejo6aW1zaG93 KCJzaG93X2ltYWdlX21ldGhvZCIsIG1ha2VfZ3JheShsZW5hKSkuc3BpbigpOwotKyAgICBjdjo6 dml6OjppbXNob3coInNob3dfaW1hZ2VfbWV0aG9kIiwgbWFrZV9ncmF5KGxlbmEpKS5zcGluT25j ZSg1MDAsIHRydWUpOwotIH0KLSAKLSBURVNUKFZpeiwgc2hvd19pbWFnZV8zZCkKLUBAIC0zOTgs MTMgKzM5OCwxMyBAQCBURVNUKFZpeiwgc2hvd19pbWFnZV8zZCkKLSAgICAgdml6LnNob3dXaWRn ZXQoInRleHQyZCIsIFdUZXh0KCJJbWFnZXMgaW4gM0QiLCBQb2ludCgyMCwgMjApLCAyMCwgQ29s b3I6OmdyZWVuKCkpKTsKLSAKLSAgICAgaW50IGkgPSAwOwotLSAgICB3aGlsZSghdml6Lndhc1N0 b3BwZWQoKSkKLSsgICAgZm9yKHVuc2lnbmVkIG51bSA9IDA7IG51bSA8IDUwOyArK251bSkKLSAg ICAgewotICAgICAgICAgdml6LmdldFdpZGdldCgiaW1nMCIpLmNhc3Q8V0ltYWdlM0Q+KCkuc2V0 SW1hZ2UobGVuYSAqIHBvdyhzaW4oaSsrKjcuNSpDVl9QSS8xODApICogMC41ICsgMC41LCAxLjAp KTsKLS0gICAgICAgIHZpei5zcGluT25jZSgxLCB0cnVlKTsKLSsgICAgICAgIHZpei5zcGluT25j ZSgxMDAsIHRydWUpOwotICAgICB9Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJ0ZXh0MmQiLCBXVGV4 dCgiSW1hZ2VzIGluIDNEIChzdG9wcGVkKSIsIFBvaW50KDIwLCAyMCksIDIwLCBDb2xvcjo6Z3Jl ZW4oKSkpOwotLSAgICB2aXouc3BpbigpOwotKyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsK LSB9Ci0gCi0gVEVTVChWaXosIHNob3dfc2ltcGxlX3dpZGdldHMpCi1AQCAtNDMxLDEwICs0MzEs MTAgQEAgVEVTVChWaXosIHNob3dfc2ltcGxlX3dpZGdldHMpCi0gCi0gICAgIHZpei5zaG93V2lk Z2V0KCJncmlkMSIsIFdHcmlkKFZlYzJpKDcsNyksIFZlYzJkOjphbGwoMC43NSksIENvbG9yOjpn cmF5KCkpLCBBZmZpbmUzZCgpLnRyYW5zbGF0ZShWZWMzZCgwLjAsIDAuMCwgLTEuMCkpKTsKLSAK LS0gICAgdml6LnNwaW4oKTsKLSsgICAgdml6LnNwaW5PbmNlKDUwMCwgdHJ1ZSk7Ci0gICAgIHZp ei5nZXRXaWRnZXQoInRleHQyZCIpLmNhc3Q8V1RleHQ+KCkuc2V0VGV4dCgiRGlmZmVyZW50IHNp bXBsZSB3aWRnZXRzICh1cGRhdGVkKSIpOwotICAgICB2aXouZ2V0V2lkZ2V0KCJ0ZXh0M2QiKS5j YXN0PFdUZXh0M0Q+KCkuc2V0VGV4dCgiVXBkYXRlZCB0ZXh0IDNEIik7Ci0tICAgIHZpei5zcGlu KCk7Ci0rICAgIHZpei5zcGluT25jZSg1MDAsIHRydWUpOwotIH0KLSAKLSBURVNUKFZpeiwgc2hv d19mb2xsb3dlcikKLUBAIC00NDYsOSArNDQ2LDkgQEAgVEVTVChWaXosIHNob3dfZm9sbG93ZXIp Ci0gICAgIHZpei5zaG93V2lkZ2V0KCJ0M2RfMiIsIFdUZXh0M0QoIlNpbXBsZSAzRCBmb2xsb3dl ciIsIFBvaW50M2QoLTAuNSwgLTAuNSwgMC41KSwgMC4xMjUsIHRydWUsICBDb2xvcjo6Z3JlZW4o KSkpOwotICAgICB2aXouc2hvd1dpZGdldCgidGV4dDJkIiwgV1RleHQoIkZvbGxvd2VyOiB0ZXh0 IGFsd2F5cyBmYWNpbmcgY2FtZXJhIiwgUG9pbnQoMjAsIDIwKSwgMjAsIENvbG9yOjpncmVlbigp KSk7Ci0gICAgIHZpei5zZXRCYWNrZ3JvdW5kTWVzaExhYigpOwotLSAgICB2aXouc3BpbigpOwot KyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsKLSAgICAgdml6LmdldFdpZGdldCgidDNkXzIi KS5jYXN0PFdUZXh0M0Q+KCkuc2V0VGV4dCgiVXBkYXRlZCBmb2xsb3dlciAzRCIpOwotLSAgICB2 aXouc3BpbigpOwotKyAgICB2aXouc3Bpbk9uY2UoNTAwLCB0cnVlKTsKLSB9Ci0gCi0gfX0gLy8g bmFtZXNwYWNlCi0KLUZyb20gZjQ2YzZjYWRiZTc1MWIyZGJmNjBiMzRlODVhYWY1NzU1MTFlOTc5 NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IE1ha3NpbSBTaGFidW5pbiA8bWFrc2lt LnNoYWJ1bmluQGdtYWlsLmNvbT4KLURhdGU6IFR1ZSwgMiBKdW4gMjAyMCAyMjo0Njo1MyArMDMw MAotU3ViamVjdDogW1BBVENIIDMvM10gZml4dXAhIEFkZGVkIFZUSyA5IHN1cHBvcnQKLQotLS0t Ci0gbW9kdWxlcy92aXovQ01ha2VMaXN0cy50eHQgfCAxMiArKysrKysrKy0tLS0KLSBtb2R1bGVz L3Zpei9zcmMvdHlwZXMuY3BwICB8ICAxICsKLSAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9u cygrKSwgNCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL21vZHVsZXMvdml6L0NNYWtlTGlz dHMudHh0IGIvbW9kdWxlcy92aXovQ01ha2VMaXN0cy50eHQKLWluZGV4IDM0MjZlMWRkMjYuLmNk MjI1OTYwY2UgMTAwNjQ0Ci0tLS0gYS9tb2R1bGVzL3Zpei9DTWFrZUxpc3RzLnR4dAotKysrIGIv bW9kdWxlcy92aXovQ01ha2VMaXN0cy50eHQKLUBAIC0zLDkgKzMsNiBAQCBpZihOT1QgSEFWRV9W VEspCi0gZW5kaWYoKQotIAotIHNldCh0aGVfZGVzY3JpcHRpb24gIlZpeiIpCi0taWYoVlRLX1ZF UlNJT04gVkVSU0lPTl9MRVNTIDguOTApCi0tICBpbmNsdWRlKCR7VlRLX1VTRV9GSUxFfSkKLS1l bmRpZigpCi0gCi0gaWYoTk9UIEJVSUxEX1NIQVJFRF9MSUJTKQotICAgIyBXZSBvYnNlcnZlZCBj b25mbGljdCBiZXR3ZWVuIGJ1aWx0aW4gM3JkcGFydHkgbGlicmFyaWVzIGFuZAotQEAgLTM3LDcg KzM0LDE0IEBAIG9jdl9hZGRfYWNjdXJhY3lfdGVzdHMoKQotIG9jdl9hZGRfcGVyZl90ZXN0cygp Ci0gb2N2X2FkZF9zYW1wbGVzKG9wZW5jdl9pbWdwcm9jIG9wZW5jdl9jYWxpYjNkIG9wZW5jdl9m ZWF0dXJlczJkIG9wZW5jdl9mbGFubikKLSAKLS1vY3ZfdGFyZ2V0X2xpbmtfbGlicmFyaWVzKCR7 dGhlX21vZHVsZX0gUFJJVkFURSAke1ZUS19MSUJSQVJJRVN9KQotKwotK2lmIChWVEtfVkVSU0lP TiBWRVJTSU9OX0xFU1MgIjguOTAuMCIpCi0rICBpbmNsdWRlKCR7VlRLX1VTRV9GSUxFfSkKLSsg IG9jdl90YXJnZXRfbGlua19saWJyYXJpZXMoJHt0aGVfbW9kdWxlfSBQUklWQVRFICR7VlRLX0xJ QlJBUklFU30pCi0rZWxzZSAoKQotKyAgb2N2X3RhcmdldF9saW5rX2xpYnJhcmllcygke3RoZV9t b2R1bGV9IFBSSVZBVEUgJHtWVEtfTElCUkFSSUVTfSkKLSsgIHZ0a19tb2R1bGVfYXV0b2luaXQo VEFSR0VUUyAke3RoZV9tb2R1bGV9IE1PRFVMRVMgJHtWVEtfTElCUkFSSUVTfSkKLStlbmRpZigp Ci0gCi0gaWYoQVBQTEUgQU5EIEJVSUxEX29wZW5jdl92aXopCi0gICBvY3ZfdGFyZ2V0X2xpbmtf bGlicmFyaWVzKCR7dGhlX21vZHVsZX0gUFJJVkFURSAiLWZyYW1ld29yayBDb2NvYSIpCi1kaWZm IC0tZ2l0IGEvbW9kdWxlcy92aXovc3JjL3R5cGVzLmNwcCBiL21vZHVsZXMvdml6L3NyYy90eXBl cy5jcHAKLWluZGV4IDBlMTQ0Nzc4OTEuLmU5YTQ3MGNmODMgMTAwNjQ0Ci0tLS0gYS9tb2R1bGVz L3Zpei9zcmMvdHlwZXMuY3BwCi0rKysgYi9tb2R1bGVzL3Zpei9zcmMvdHlwZXMuY3BwCi1AQCAt OTcsNiArOTcsNyBAQCBjdjo6dml6OjpNZXNoIGN2Ojp2aXo6Ok1lc2g6OmxvYWQoY29uc3QgU3Ry aW5nJiBmaWxlLCBpbnQgdHlwZSkKLSAgICAgLy8gTm93IGhhbmRsZSB0aGUgcG9seWdvbnMKLSAg ICAgdnRrU21hcnRQb2ludGVyPHZ0a0NlbGxBcnJheT4gcG9seWdvbnMgPSBwb2x5ZGF0YS0+R2V0 UG9seXMoKTsKLSAgICAgbWVzaC5wb2x5Z29ucy5jcmVhdGUoMSwgcG9seWdvbnMtPkdldFNpemUo KSwgQ1ZfMzJTQzEpOwotKyAgICBtZXNoLnBvbHlnb25zID0gMDsKLSAgICAgaW50KiBwb2x5X3B0 ciA9IG1lc2gucG9seWdvbnMucHRyPGludD4oKTsKLSAKLSAgICAgcG9seWdvbnMtPkluaXRUcmF2 ZXJzYWwoKTsKCmRpZmYgLS1naXQgYS9vcGVuY3YtZ2NjMTEucGF0Y2ggYi9vcGVuY3YtZ2NjMTEu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE1MWE3NDEuLjAwMDAwMDAKLS0t IGEvb3BlbmN2LWdjYzExLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotZGlm ZiAtLWdpdCBhL21vZHVsZXMvZ2FwaS90ZXN0L2dhcGlfYXN5bmNfdGVzdC5jcHAgYi9tb2R1bGVz L2dhcGkvdGVzdC9nYXBpX2FzeW5jX3Rlc3QuY3BwCi1pbmRleCA2NmI4YmU0Li5hYTBjOWM3IDEw MDY0NAotLS0tIGEvbW9kdWxlcy9nYXBpL3Rlc3QvZ2FwaV9hc3luY190ZXN0LmNwcAotKysrIGIv bW9kdWxlcy9nYXBpL3Rlc3QvZ2FwaV9hc3luY190ZXN0LmNwcAotQEAgLTEzLDYgKzEzLDcgQEAK LSAKLSAjaW5jbHVkZSA8Y29uZGl0aW9uX3ZhcmlhYmxlPgotICNpbmNsdWRlIDxzdGRleGNlcHQ+ Ci0rI2luY2x1ZGUgPHRocmVhZD4KLSAKLSBuYW1lc3BhY2Ugb3BlbmN2X3Rlc3QKLSB7CgpkaWZm IC0tZ2l0IGEvb3BlbmN2LnNwZWMgYi9vcGVuY3Yuc3BlYwppbmRleCBiZWRjNjgzLi43MTVlNjAy IDEwMDY0NAotLS0gYS9vcGVuY3Yuc3BlYworKysgYi9vcGVuY3Yuc3BlYwpAQCAtMSwxMSArMSw1 IEBACiAldW5kZWZpbmUgX19jbWFrZV9pbl9zb3VyY2VfYnVpbGQKLSMgVGVzdHMgYXJlIGRpc2Fi bGVkIHdpdGggZ2NjLTExCi0jIFNlZSBodHRwczovL2J1Z3ppbGxhLnJlZGhhdC5jb20vMTk0NDUz NgotJWlmIDAlez9mZWRvcmF9ID4gMzMKLSViY29uZF93aXRoICAgICB0ZXN0cwotJWVsc2UKICVi Y29uZF93aXRob3V0ICB0ZXN0cwotJWVuZGlmCiAlYmNvbmRfd2l0aCAgICAgZmZtcGVnCiAlYmNv bmRfd2l0aG91dCAgZ3N0cmVhbWVyCiAlYmNvbmRfd2l0aCAgICAgZWlnZW4yCkBAIC01OCw3ICs1 Miw3IEBAIE5hbWU6ICAgICAgICAgICBvcGVuY3YKIFZlcnNpb246ICAgICAgICA0LjUuMgogJWds b2JhbCBqYXZhdmVyICUoZm9vPSV7dmVyc2lvbn07IGVjaG8gJHtmb28vLy4vfSkKICVnbG9iYWwg YWJpdmVyICAlKGZvbz0le3ZlcnNpb259OyBlY2hvICR7Zm9vOjA6M30pCi1SZWxlYXNlOiAgICAg ICAgMSV7P2Rpc3R9CitSZWxlYXNlOiAgICAgICAgMiV7P2Rpc3R9CiBTdW1tYXJ5OiAgICAgICAg Q29sbGVjdGlvbiBvZiBhbGdvcml0aG1zIGZvciBjb21wdXRlciB2aXNpb24KICMgVGhpcyBpcyBu b3JtYWwgdGhyZWUgY2xhdXNlIEJTRC4KIExpY2Vuc2U6ICAgICAgICBCU0QKQEAgLTc3LDcgKzcx LDYgQEAgU291cmNlNDogICAgICAgIGI2MjRiOTk1ZWM5YzQzOWNiYzJlOWU2ZWU5NDBkM2EyLXYw LjEuMWYuemlwCiBTb3VyY2U1OiAgICAgICAgeG9yZy5jb25mCiAKIFBhdGNoMDogICAgICAgICBv cGVuY3YtNC4xLjAtaW5zdGFsbF8zcmRwYXJ0eV9saWNlbnNlcy5wYXRjaAotUGF0Y2gxOiAgICAg ICAgICV7bmFtZX0tZ2NjMTEucGF0Y2gKIAogQnVpbGRSZXF1aXJlczogIGdjYy1jKysKIEJ1aWxk UmVxdWlyZXM6ICBsaWJ0b29sCkBAIC0yNTcsNyArMjUwLDYgQEAgcG9wZCAmPi9kZXYvbnVsbAog JWVuZGlmCiAKICVwYXRjaDAgLXAxIC1iIC5pbnN0YWxsXzNyZHBhcnR5X2xpY2Vuc2VzCi0lcGF0 Y2gxIC1wMSAtYiAuZ2NjMTEKIAogcHVzaGQgJXtuYW1lfV9jb250cmliLSV7dmVyc2lvbn0KIHBv cGQKQEAgLTQ4Nyw2ICs0NzksOSBAQCBsbiAtcyAtciAle2J1aWxkcm9vdH0le19qbmlkaXJ9L29w ZW5jdi0le2phdmF2ZXJ9LmphciAle2J1aWxkcm9vdH0le19qbmlkaXJ9L29wZQogJXtfbGliZGly fS9saWJvcGVuY3ZfeHBob3RvLnNvLiV7YWJpdmVyfSoKIAogJWNoYW5nZWxvZworKiBUaHUgQXBy IDI5IDIwMjEgU8OpcmdpbyBCYXN0byA8c2VyZ2lvQHNlcmp1eC5jb20+IC0gNC41LjItMgorLSBV cHN0cmVhbSBmaXhlZCBHQ0MxMSBpc3N1ZXMsIHNvIHdlIGNhbiByZS1lbmFibGUgdGhlIHRlc3Rz CisKICogU2F0IEFwciAwMyAyMDIxIE5pY29sYXMgQ2hhdXZldCA8a3dpemFydEBnbWFpbC5jb20+ IC0gNC41LjItMQogLSBVcGRhdGUgdG8gNC41LjIKIAo=