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: Sandro Mani To: git-commits@fedoraproject.org Subject: [rpms/assimp] rawhide: Add fixes for CVE-2026-14610, CVE-2026-19968, CVE-2026-19999, CVE-2026-14604, CVE-2025-15666 Date: Fri, 18 Sep 2026 21:38:31 GMT Message-ID: <178976751172.1.7701648645755489439.rpms-assimp-15d8e33f5f4e@fedoraproject.org> List-ID: X-Git-Repo: rpms/assimp X-Git-Branch: rawhide X-Git-Rev: 15d8e33f5f4eb4689c74f59aa8c06637bb319542 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvYXNzaW1wCkJyYW5j aCA6IHJhd2hpZGUKQ29tbWl0IDogMTVkOGUzM2Y1ZjRlYjQ2ODljNzRmNTlhYThjMDY2MzdiYjMx OTU0MgpBdXRob3IgOiBTYW5kcm8gTWFuaSA8bWFuaXNhbmRyb0BnbWFpbC5jb20+CkRhdGUgICA6 IDIwMjYtMDktMThUMjM6Mzg6MjArMDI6MDAKU3RhdHMgIDogKzcyOC8tMTYgaW4gMTEgZmlsZShz KQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2Fzc2ltcC9jLzE1 ZDhlMzNmNWY0ZWI0Njg5Yzc0ZjU5YWE4YzA2NjM3YmIzMTk1NDI/YnJhbmNoPXJhd2hpZGUKCkxv ZzoKQWRkIGZpeGVzIGZvciBDVkUtMjAyNi0xNDYxMCwgQ1ZFLTIwMjYtMTk5NjgsIENWRS0yMDI2 LTE5OTk5LCBDVkUtMjAyNi0xNDYwNCwgQ1ZFLTIwMjUtMTU2NjYKCi0tLQpkaWZmIC0tZ2l0IGEv Q1ZFLTIwMjUtMTU2NjYucGF0Y2ggYi9DVkUtMjAyNS0xNTY2Ni5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZjFhMzA5Ci0tLSAvZGV2L251bGwKKysrIGIvQ1ZFLTIw MjUtMTU2NjYucGF0Y2gKQEAgLTAsMCArMSwxOCBAQAorZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJl bmNlIGFzc2ltcC02LjAuNS9jb2RlL0Fzc2V0TGliL01ETC9NRExNYXRlcmlhbExvYWRlci5jcHAg YXNzaW1wLTYuMC41LW5ldy9jb2RlL0Fzc2V0TGliL01ETC9NRExNYXRlcmlhbExvYWRlci5jcHAK Ky0tLSBhc3NpbXAtNi4wLjUvY29kZS9Bc3NldExpYi9NREwvTURMTWF0ZXJpYWxMb2FkZXIuY3Bw CTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAwMDAwICswMjAwCisrKysgYXNzaW1wLTYuMC41LW5l dy9jb2RlL0Fzc2V0TGliL01ETC9NRExNYXRlcmlhbExvYWRlci5jcHAJMjAyNi0wOS0xOCAyMzoy NjowOC43NTY5ODM1NTEgKzAyMDAKK0BAIC0yMjEsNiArMjIxLDE0IEBAIHZvaWQgTURMSW1wb3J0 ZXI6OlBhcnNlVGV4dHVyZUNvbG9yRGF0YSgKKyAKKyAgICAgLy8gYWxsb2NhdGUgc3RvcmFnZSBm b3IgdGhlIHRleHR1cmUgaW1hZ2UKKyAgICAgaWYgKGRvX3JlYWQpIHsKKysgICAgICAgIC8vIGEg emVyby1oZWlnaHQgdGV4dHVyZSBtdXN0IGJlIGEgY29tcHJlc3NlZCBibG9iIG9mIG1XaWR0aCBi eXRlcywKKysgICAgICAgIC8vIGJ1dCB0aGlzIHBhdGggcHJvZHVjZXMgYW4gbVdpZHRoKm1IZWln aHQgcGl4ZWwgYXJyYXkgLSB0aGUKKysgICAgICAgIC8vIHJlc3VsdGluZyBvYmplY3Qgd291bGQg dmlvbGF0ZSB0aGUgYWlUZXh0dXJlIGNvbnRyYWN0IGFuZCByZWFkCisrICAgICAgICAvLyBvdXQg b2YgYm91bmRzIHdoZW4gdGhlIHNjZW5lIGlzIGNvcGllZCAoZS5nLiBvbiBleHBvcnQpCisrICAg ICAgICBpZiAocGNOZXctPm1IZWlnaHQgPT0gMCAmJiBwY05ldy0+bVdpZHRoICE9IDApIHsKKysg ICAgICAgICAgICB0aHJvdyBEZWFkbHlJbXBvcnRFcnJvcigiSW52YWxpZCBNREwgZmlsZS4gQSB0 ZXh0dXJlIGhhcyB6ZXJvIGhlaWdodC4iKTsKKysgICAgICAgIH0KKysKKyAgICAgICAgIC8vIGNo ZWNrIGZvciBtYXggdGV4dHVyZSBzaXplcworICAgICAgICAgaWYgKHBjTmV3LT5tV2lkdGggPiBN YXhUZXh0dXJlU2l6ZSB8fCBwY05ldy0+bUhlaWdodCA+IE1heFRleHR1cmVTaXplKSB7CisgICAg ICAgICAgICAgdGhyb3cgRGVhZGx5SW1wb3J0RXJyb3IoIkludmFsaWQgTURMIGZpbGUuIEEgdGV4 dHVyZSBpcyB0b28gYmlnLiIpOwoKZGlmZiAtLWdpdCBhL0NWRS0yMDI2LTE0NjA0LnBhdGNoIGIv Q1ZFLTIwMjYtMTQ2MDQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u ZTkzZmE0MQotLS0gL2Rldi9udWxsCisrKyBiL0NWRS0yMDI2LTE0NjA0LnBhdGNoCkBAIC0wLDAg KzEsMjQ5IEBACitkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYuMC41L2NvZGUv Q29tbW9uL1NjZW5lQ29tYmluZXIuY3BwIGFzc2ltcC02LjAuNS1uZXcvY29kZS9Db21tb24vU2Nl bmVDb21iaW5lci5jcHAKKy0tLSBhc3NpbXAtNi4wLjUvY29kZS9Db21tb24vU2NlbmVDb21iaW5l ci5jcHAJMjAyNi0wNC0zMCAxMToxNTowOS4wMDAwMDAwMDAgKzAyMDAKKysrKyBhc3NpbXAtNi4w LjUtbmV3L2NvZGUvQ29tbW9uL1NjZW5lQ29tYmluZXIuY3BwCTIwMjYtMDktMTggMjM6MjY6MDgu MzgwOTQ4MDE2ICswMjAwCitAQCAtNjgsOCArNjgsOCBAQCBPRiBUSElTIFNPRlRXQVJFLCBFVkVO IElGIEFEVklTRUQgT0YgVEhFCisgbmFtZXNwYWNlIEFzc2ltcCB7CisgCisgI2lmIChfX0dOVUNf XyA+PSA4ICYmIF9fR05VQ19NSU5PUl9fID49IDApCistI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBw dXNoCistI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25vcmVkICItV2NsYXNzLW1lbWFjY2VzcyIK KysjICBwcmFnbWEgR0NDIGRpYWdub3N0aWMgcHVzaAorKyMgIHByYWdtYSBHQ0MgZGlhZ25vc3Rp YyBpZ25vcmVkICItV2NsYXNzLW1lbWFjY2VzcyIKKyAjZW5kaWYKKyAKKyAvLyAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0BAIC04MCw4ICs4MCw3IEBAIGlubGluZSB2 b2lkIFByZWZpeFN0cmluZyhhaVN0cmluZyAmc3RyaW4KKyAgICAgICAgIHJldHVybjsKKyAKKyAg ICAgaWYgKGxlbiArIHN0cmluZy5sZW5ndGggPj0gQUlfTUFYTEVOIC0gMSkgeworLSAgICAgICAg QVNTSU1QX0xPR19WRVJCT1NFX0RFQlVHKCJDYW4ndCBhZGQgYW4gdW5pcXVlIHByZWZpeCBiZWNh dXNlIHRoZSBzdHJpbmcgaXMgdG9vIGxvbmciKTsKKy0gICAgICAgIGFpX2Fzc2VydChmYWxzZSk7 CisrICAgICAgICBBU1NJTVBfTE9HX0VSUk9SKCJDYW4ndCBhZGQgYW4gdW5pcXVlIHByZWZpeCBi ZWNhdXNlIHRoZSBzdHJpbmcgaXMgdG9vIGxvbmciKTsKKyAgICAgICAgIHJldHVybjsKKyAgICAg fQorIAorQEAgLTExNiw3ICsxMTUsMTAgQEAgdm9pZCBTY2VuZUNvbWJpbmVyOjpBZGROb2RlSGFz aGVzKGFpTm9kZQorIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor IC8vIEFkZCBhIG5hbWUgcHJlZml4IHRvIGFsbCBub2RlcyBpbiBhIGhpZXJhcmNoeQorIHZvaWQg U2NlbmVDb21iaW5lcjo6QWRkTm9kZVByZWZpeGVzKGFpTm9kZSAqbm9kZSwgY29uc3QgY2hhciAq cHJlZml4LCB1bnNpZ25lZCBpbnQgbGVuKSB7CistICAgIGFpX2Fzc2VydChudWxscHRyICE9IHBy ZWZpeCk7CisrICAgIGlmIChwcmVmaXggPT0gbnVsbHB0cikgeworKyAgICAgICAgQVNTSU1QX0xP R19FUlJPUigiUG9pbnRlciB0byBwcmVmaXggaXMgbnVsbHB0ci4iKTsKKysgICAgICAgIHJldHVy bjsKKysgICAgfQorIAorICAgICBQcmVmaXhTdHJpbmcobm9kZS0+bU5hbWUsIHByZWZpeCwgbGVu KTsKKyAKK0BAIC0xNDQsNyArMTQ2LDEwIEBAIGJvb2wgU2NlbmVDb21iaW5lcjo6RmluZE5hbWVN YXRjaChjb25zdAorIC8vIEFkZCBhIG5hbWUgcHJlZml4IHRvIGFsbCBub2RlcyBpbiBhIGhpZXJh cmNoeSBpZiBhIGhhc2ggbWF0Y2ggaXMgZm91bmQKKyB2b2lkIFNjZW5lQ29tYmluZXI6OkFkZE5v ZGVQcmVmaXhlc0NoZWNrZWQoYWlOb2RlICpub2RlLCBjb25zdCBjaGFyICpwcmVmaXgsIHVuc2ln bmVkIGludCBsZW4sCisgICAgICAgICBzdGQ6OnZlY3RvcjxTY2VuZUhlbHBlcj4gJmlucHV0LCB1 bnNpZ25lZCBpbnQgY3VyKSB7CistICAgIGFpX2Fzc2VydChudWxscHRyICE9IHByZWZpeCk7Cisr ICAgIGlmIChwcmVmaXggPT0gbnVsbHB0cikgeworKyAgICAgICAgQVNTSU1QX0xPR19FUlJPUigi UG9pbnRlciB0byBwcmVmaXggaXMgbnVsbHB0ci4iKTsKKysgICAgICAgIHJldHVybjsKKysgICAg fQorIAorICAgICBjb25zdCB1bnNpZ25lZCBpbnQgaGFzaCA9IFN1cGVyRmFzdEhhc2gobm9kZS0+ bU5hbWUuZGF0YSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KG5vZGUtPm1OYW1lLmxlbmd0aCkpOwor IAorQEAgLTE2NSw4ICsxNzAsOSBAQCB2b2lkIFNjZW5lQ29tYmluZXI6OkFkZE5vZGVQcmVmaXhl c0NoZWNrCisgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgLy8g QWRkIGFuIG9mZnNldCB0byBhbGwgbWVzaCBpbmRpY2VzIGluIGEgbm9kZSBncmFwaAorIHZvaWQg U2NlbmVDb21iaW5lcjo6T2Zmc2V0Tm9kZU1lc2hJbmRpY2VzKGFpTm9kZSAqbm9kZSwgdW5zaWdu ZWQgaW50IG9mZnNldCkgeworLSAgICBmb3IgKHVuc2lnbmVkIGludCBpID0gMDsgaSA8IG5vZGUt Pm1OdW1NZXNoZXM7ICsraSkKKysgICAgZm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkgPCBub2Rl LT5tTnVtTWVzaGVzOyArK2kpIHsKKyAgICAgICAgIG5vZGUtPm1NZXNoZXNbaV0gKz0gb2Zmc2V0 OworKyAgICB9CisgCisgICAgIGZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgbm9kZS0+bU51 bUNoaWxkcmVuOyArK2kpIHsKKyAgICAgICAgIE9mZnNldE5vZGVNZXNoSW5kaWNlcyhub2RlLT5t Q2hpbGRyZW5baV0sIG9mZnNldCk7CitAQCAtMTc3LDYgKzE4Myw3IEBAIHZvaWQgU2NlbmVDb21i aW5lcjo6T2Zmc2V0Tm9kZU1lc2hJbmRpY2UKKyAvLyBNZXJnZXMgdHdvIHNjZW5lcy4gQ3VycmVu dGx5IG9ubHkgdXNlZCBieSB0aGUgTFdTIGxvYWRlci4KKyB2b2lkIFNjZW5lQ29tYmluZXI6Ok1l cmdlU2NlbmVzKGFpU2NlbmUgKipfZGVzdCwgc3RkOjp2ZWN0b3I8YWlTY2VuZSAqPiAmc3JjLCB1 bnNpZ25lZCBpbnQgZmxhZ3MpIHsKKyAgICAgaWYgKG51bGxwdHIgPT0gX2Rlc3QpIHsKKysgICAg ICAgIEFTU0lNUF9MT0dfRVJST1IoIlBvaW50ZXIgdG8gZGVzdGluYXRpb24gc2NlbmUgaXMgbnVs bHB0ci4iKTsKKyAgICAgICAgIHJldHVybjsKKyAgICAgfQorIAorQEAgLTIxMSw3ICsyMTgsNyBA QCB2b2lkIFNjZW5lQ29tYmluZXI6Ok1lcmdlU2NlbmVzKGFpU2NlbmUKKyAKKyAvLyAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB2b2lkIFNjZW5lQ29tYmluZXI6OkF0 dGFjaFRvR3JhcGgoYWlOb2RlICphdHRhY2gsIHN0ZDo6dmVjdG9yPE5vZGVBdHRhY2htZW50SW5m bz4gJnNyY0xpc3QpIHsKKy0gICAgdW5zaWduZWQgaW50IGNudDsKKysgICAgdW5zaWduZWQgaW50 IGNudHswfTsKKyAgICAgZm9yIChjbnQgPSAwOyBjbnQgPCBhdHRhY2gtPm1OdW1DaGlsZHJlbjsg KytjbnQpIHsKKyAgICAgICAgIEF0dGFjaFRvR3JhcGgoYXR0YWNoLT5tQ2hpbGRyZW5bY250XSwg c3JjTGlzdCk7CisgICAgIH0KK0BAIC0yMTksOCArMjI2LDkgQEAgdm9pZCBTY2VuZUNvbWJpbmVy OjpBdHRhY2hUb0dyYXBoKGFpTm9kZQorICAgICBjbnQgPSAwOworICAgICBmb3IgKHN0ZDo6dmVj dG9yPE5vZGVBdHRhY2htZW50SW5mbz46Oml0ZXJhdG9yIGl0ID0gc3JjTGlzdC5iZWdpbigpOwor ICAgICAgICAgICAgIGl0ICE9IHNyY0xpc3QuZW5kKCk7ICsraXQpIHsKKy0gICAgICAgIGlmICgo Kml0KS5hdHRhY2hUb05vZGUgPT0gYXR0YWNoICYmICEoKml0KS5yZXNvbHZlZCkKKysgICAgICAg IGlmICgoKml0KS5hdHRhY2hUb05vZGUgPT0gYXR0YWNoICYmICEoKml0KS5yZXNvbHZlZCkgewor ICAgICAgICAgICAgICsrY250OworKyAgICAgICAgfQorICAgICB9CisgCisgICAgIGlmIChjbnQp IHsKK0BAIC0zMTQsMTIgKzMyMiw2IEBAIHZvaWQgU2NlbmVDb21iaW5lcjo6TWVyZ2VTY2VuZXMo YWlTY2VuZQorIAorICAgICAvLyBHZW5lcmF0ZSB1bmlxdWUgbmFtZXMgZm9yIGFsbCBuYW1lZCBz dHVmZj8KKyAgICAgaWYgKGZsYWdzICYgQUlfSU5UX01FUkdFX1NDRU5FX0dFTl9VTklRVUVfTkFN RVMpIHsKKy0jaWYgMAorLSAgICAgICAgLy8gQ29uc3RydWN0IGEgcHJvcGVyIHJhbmRvbSBudW1i ZXIgZ2VuZXJhdG9yCistICAgICAgICBib29zdDo6bXQxOTkzNyBybmcoICApOworLSAgICAgICAg Ym9vc3Q6OnVuaWZvcm1faW50PD4gZGlzdCgxdSwxIDw8IDI0dSk7CistICAgICAgICBib29zdDo6 dmFyaWF0ZV9nZW5lcmF0b3I8Ym9vc3Q6Om10MTk5MzcmLCBib29zdDo6dW5pZm9ybV9pbnQ8PiA+ IHJuZEdlbihybmcsIGRpc3QpOworLSNlbmRpZgorICAgICAgICAgZm9yICh1bnNpZ25lZCBpbnQg aSA9IDE7IGkgPCBzcmMuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgICAgICBzcmNbaV0uaWRsZW4g PSBhaV9zbnByaW50ZihzcmNbaV0uaWQsIDMyLCAiJCUuNlgkXyIsIGkpOworIAorQEAgLTM3MSwx MyArMzczLDE0IEBAIHZvaWQgU2NlbmVDb21iaW5lcjo6TWVyZ2VTY2VuZXMoYWlTY2VuZQorICAg ICAgICAgICAgIFNjZW5lSGVscGVyICpjdXIgPSAmc3JjW25dOworICAgICAgICAgICAgIGZvciAo dW5zaWduZWQgaW50IGkgPSAwOyBpIDwgKCpjdXIpLT5tTnVtVGV4dHVyZXM7ICsraSkgeworICAg ICAgICAgICAgICAgICBpZiAobiAhPSBkdXBsaWNhdGVzW25dKSB7CistICAgICAgICAgICAgICAg ICAgICBpZiAoZmxhZ3MgJiBBSV9JTlRfTUVSR0VfU0NFTkVfRFVQTElDQVRFU19ERUVQX0NQWSkK KysgICAgICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIEFJX0lOVF9NRVJHRV9TQ0VORV9EVVBM SUNBVEVTX0RFRVBfQ1BZKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgQ29weShwaXAsICgq Y3VyKS0+bVRleHR1cmVzW2ldKTsKKy0KKy0gICAgICAgICAgICAgICAgICAgIGVsc2UKKysgICAg ICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgY29udGlu dWU7CistICAgICAgICAgICAgICAgIH0gZWxzZQorKyAgICAgICAgICAgICAgICAgICAgfQorKyAg ICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgKnBpcCA9ICgqY3Vy KS0+bVRleHR1cmVzW2ldOworKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICsr cGlwOworICAgICAgICAgICAgIH0KKyAKK0BAIC0zOTQsMTMgKzM5NywxNCBAQCB2b2lkIFNjZW5l Q29tYmluZXI6Ok1lcmdlU2NlbmVzKGFpU2NlbmUKKyAgICAgICAgICAgICBTY2VuZUhlbHBlciAq Y3VyID0gJnNyY1tuXTsKKyAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGludCBpID0gMDsgaSA8 ICgqY3VyKS0+bU51bU1hdGVyaWFsczsgKytpKSB7CisgICAgICAgICAgICAgICAgIGlmIChuICE9 IGR1cGxpY2F0ZXNbbl0pIHsKKy0gICAgICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIEFJX0lO VF9NRVJHRV9TQ0VORV9EVVBMSUNBVEVTX0RFRVBfQ1BZKQorKyAgICAgICAgICAgICAgICAgICAg aWYgKGZsYWdzICYgQUlfSU5UX01FUkdFX1NDRU5FX0RVUExJQ0FURVNfREVFUF9DUFkpIHsKKyAg ICAgICAgICAgICAgICAgICAgICAgICBDb3B5KHBpcCwgKCpjdXIpLT5tTWF0ZXJpYWxzW2ldKTsK Ky0KKy0gICAgICAgICAgICAgICAgICAgIGVsc2UKKysgICAgICAgICAgICAgICAgICAgIH0gZWxz ZSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CistICAgICAgICAgICAgICAg IH0gZWxzZQorKyAgICAgICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAgICAgICB9IGVsc2Ug eworICAgICAgICAgICAgICAgICAgICAgKnBpcCA9ICgqY3VyKS0+bU1hdGVyaWFsc1tpXTsKKysg ICAgICAgICAgICAgICAgfQorIAorICAgICAgICAgICAgICAgICBpZiAoKCpjdXIpLT5tTnVtVGV4 dHVyZXMgIT0gZGVzdC0+bU51bVRleHR1cmVzKSB7CisgICAgICAgICAgICAgICAgICAgICAvLyBX ZSBuZWVkIHRvIHVwZGF0ZSBhbGwgdGV4dHVyZSBpbmRpY2VzIG9mIHRoZSBtZXNoLiBTbyB3ZSBu ZWVkIHRvIHNlYXJjaCBmb3IKK0BAIC00NTcsMTYgKzQ2MSwyMSBAQCB2b2lkIFNjZW5lQ29tYmlu ZXI6Ok1lcmdlU2NlbmVzKGFpU2NlbmUKKyAgICAgICAgICAgICBTY2VuZUhlbHBlciAqY3VyID0g JnNyY1tuXTsKKyAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGludCBpID0gMDsgaSA8ICgqY3Vy KS0+bU51bU1lc2hlczsgKytpKSB7CisgICAgICAgICAgICAgICAgIGlmIChuICE9IGR1cGxpY2F0 ZXNbbl0pIHsKKy0gICAgICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIEFJX0lOVF9NRVJHRV9T Q0VORV9EVVBMSUNBVEVTX0RFRVBfQ1BZKQorKyAgICAgICAgICAgICAgICAgICAgaWYgKGZsYWdz ICYgQUlfSU5UX01FUkdFX1NDRU5FX0RVUExJQ0FURVNfREVFUF9DUFkpIHsKKyAgICAgICAgICAg ICAgICAgICAgICAgICBDb3B5KHBpcCwgKCpjdXIpLT5tTWVzaGVzW2ldKTsKKy0KKy0gICAgICAg ICAgICAgICAgICAgIGVsc2UKKysgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg ICAgICAgICAgICAgICAgICAgY29udGludWU7CistICAgICAgICAgICAgICAgIH0gZWxzZQorKyAg ICAgICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg ICAgICAgICAgICAgKnBpcCA9ICgqY3VyKS0+bU1lc2hlc1tpXTsKKysgICAgICAgICAgICAgICAg fQorIAorICAgICAgICAgICAgICAgICAvLyB1cGRhdGUgdGhlIG1hdGVyaWFsIGluZGV4IG9mIHRo ZSBtZXNoCistICAgICAgICAgICAgICAgICgqcGlwKS0+bU1hdGVyaWFsSW5kZXggKz0gb2Zmc2V0 W25dOworKyAgICAgICAgICAgICAgICBpZiAoKCpwaXApICE9IG51bGxwdHIpIHsKKysgICAgICAg ICAgICAgICAgICAgICgqcGlwKS0+bU1hdGVyaWFsSW5kZXggKz0gb2Zmc2V0W25dOworKyAgICAg ICAgICAgICAgICB9IGVsc2UgeworKyAgICAgICAgICAgICAgICAgICAgQVNTSU1QX0xPR19FUlJP UigiQ29weU1lc2hlczogTWlzc2luZyBtZXNoIGluc3RhbmNlIGZvdW5kLCBza2lwcGVkLiIpOwor KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICsrcGlwOworICAgICAgICAgICAg IH0KKyAKK0BAIC0xMDg1LDE0ICsxMDk0LDE5IEBAIHZvaWQgU2NlbmVDb21iaW5lcjo6Q29weShh aU1lc2ggKipfZGVzdCwKKyAgICAgR2V0QXJyYXlDb3B5KGRlc3QtPm1UYW5nZW50cywgZGVzdC0+ bU51bVZlcnRpY2VzKTsKKyAgICAgR2V0QXJyYXlDb3B5KGRlc3QtPm1CaXRhbmdlbnRzLCBkZXN0 LT5tTnVtVmVydGljZXMpOworIAorLSAgICB1bnNpZ25lZCBpbnQgbiA9IDA7CistICAgIHdoaWxl IChkZXN0LT5IYXNUZXh0dXJlQ29vcmRzKG4pKSB7CistICAgICAgICBHZXRBcnJheUNvcHkoZGVz dC0+bVRleHR1cmVDb29yZHNbbisrXSwgZGVzdC0+bU51bVZlcnRpY2VzKTsKKysgICAgLy8gUmVh bGxvY2F0ZSBldmVyeSBwb3B1bGF0ZWQgVVYgYW5kIGNvbG9yIGNoYW5uZWwuIFRoZSBkZXN0cnVj dG9yIGZyZWVzCisrICAgIC8vIGFsbCBBSV9NQVhfTlVNQkVSX09GXyogY2hhbm5lbHMsIHNvIHRo ZSBjb3B5IG11c3Qgb3duIGFuIGluZGVwZW5kZW50CisrICAgIC8vIGJ1ZmZlciBmb3IgZWFjaCBu b24tbnVsbCBvbmUuIEl0ZXJhdGluZyB3aXRoIEhhc1RleHR1cmVDb29yZHMoKS8KKysgICAgLy8g SGFzVmVydGV4Q29sb3JzKCkgd291bGQgc3RvcCBhdCB0aGUgZmlyc3QgZW1wdHkgY2hhbm5lbCAo bGVhdmluZyBhbnkKKysgICAgLy8gbGF0ZXIgY2hhbm5lbCBhbGlhc2VkIHdpdGggdGhlIHNvdXJj ZSkgYW5kIGFsc28gc2tpcCBjaGFubmVscyBvZiBhIG1lc2gKKysgICAgLy8gd2l0aCBtTnVtVmVy dGljZXMgPT0gMCwgd2hpY2ggdGhlbiBkb3VibGUtZnJlZXMgd2hlbiBib3RoIG1lc2hlcyBhcmUK KysgICAgLy8gZGVzdHJveWVkLgorKyAgICBmb3IgKHVuc2lnbmVkIGludCBuID0gMDsgbiA8IEFJ X01BWF9OVU1CRVJfT0ZfVEVYVFVSRUNPT1JEUzsgKytuKSB7CisrICAgICAgICBHZXRBcnJheUNv cHkoZGVzdC0+bVRleHR1cmVDb29yZHNbbl0sIGRlc3QtPm1OdW1WZXJ0aWNlcyk7CisgICAgIH0K KyAKKy0gICAgbiA9IDA7CistICAgIHdoaWxlIChkZXN0LT5IYXNWZXJ0ZXhDb2xvcnMobikpIHsK Ky0gICAgICAgIEdldEFycmF5Q29weShkZXN0LT5tQ29sb3JzW24rK10sIGRlc3QtPm1OdW1WZXJ0 aWNlcyk7CisrICAgIGZvciAodW5zaWduZWQgaW50IG4gPSAwOyBuIDwgQUlfTUFYX05VTUJFUl9P Rl9DT0xPUl9TRVRTOyArK24pIHsKKysgICAgICAgIEdldEFycmF5Q29weShkZXN0LT5tQ29sb3Jz W25dLCBkZXN0LT5tTnVtVmVydGljZXMpOworICAgICB9CisgCisgICAgIC8vIG1ha2UgYSBkZWVw IGNvcHkgb2YgYWxsIGJvbmVzCitkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYu MC41L3Rlc3QvdW5pdC91dFNjZW5lQ29tYmluZXIuY3BwIGFzc2ltcC02LjAuNS1uZXcvdGVzdC91 bml0L3V0U2NlbmVDb21iaW5lci5jcHAKKy0tLSBhc3NpbXAtNi4wLjUvdGVzdC91bml0L3V0U2Nl bmVDb21iaW5lci5jcHAJMjAyNi0wNC0zMCAxMToxNTowOS4wMDAwMDAwMDAgKzAyMDAKKysrKyBh c3NpbXAtNi4wLjUtbmV3L3Rlc3QvdW5pdC91dFNjZW5lQ29tYmluZXIuY3BwCTIwMjYtMDktMTgg MjM6MjY6MDguMzgxODEzNjkzICswMjAwCitAQCAtNzUsMyArNzUsNTQgQEAgVEVTVF9GKHV0U2Nl bmVDb21iaW5lciwgQ29weVNjZW5lV2l0aE51bAorICAgICBFWFBFQ1RfTk9fVEhST1coU2NlbmVD b21iaW5lcjo6Q29weVNjZW5lKG51bGxwdHIsIG51bGxwdHIpKTsKKyAgICAgRVhQRUNUX05PX1RI Uk9XKFNjZW5lQ29tYmluZXI6OkNvcHlTY2VuZUZsYXQobnVsbHB0ciwgbnVsbHB0cikpOworIH0K KysKKysvLyBDb3B5aW5nIGEgbWVzaCBtdXN0IGdpdmUgdGhlIGNvcHkgaXRzIG93biBVViBhbmQg Y29sb3IgYnVmZmVycyBmb3IgZXZlcnkKKysvLyBwb3B1bGF0ZWQgY2hhbm5lbCwgZXZlbiB3aGVu IHRoZSBjaGFubmVsIGlzIG5vdCB0aGUgZmlyc3Qgb25lIG9yIHdoZW4gdGhlCisrLy8gbWVzaCBy ZXBvcnRzIHplcm8gdmVydGljZXMuIE90aGVyd2lzZSB0aGUgY29weSBhbGlhc2VzIHRoZSBzb3Vy Y2UgYXJyYXlzIGFuZAorKy8vIGRlc3Ryb3lpbmcgYm90aCBkb3VibGUtZnJlZXMgdGhlbSAoYXNz aW1wL2Fzc2ltcCM2NjIwKS4KKytURVNUX0YodXRTY2VuZUNvbWJpbmVyLCBDb3B5TWVzaERvZXNO b3RBbGlhc1NwYXJzZU9yRW1wdHlDaGFubmVscykgeworKyAgICBhdXRvIG1ha2VNZXNoID0gW10o KSB7CisrICAgICAgICBhaU1lc2ggKm1lc2ggPSBuZXcgYWlNZXNoOworKyAgICAgICAgLy8gQSBw b3B1bGF0ZWQgVVYgY2hhbm5lbCB0aGF0IGlzIG5vdCBjaGFubmVsIDAuCisrICAgICAgICBtZXNo LT5tTnVtVmVydGljZXMgPSAyOworKyAgICAgICAgbWVzaC0+bVZlcnRpY2VzID0gbmV3IGFpVmVj dG9yM0RbMl07CisrICAgICAgICBtZXNoLT5tVGV4dHVyZUNvb3Jkc1sxXSA9IG5ldyBhaVZlY3Rv cjNEWzJde307CisrICAgICAgICBtZXNoLT5tTnVtVVZDb21wb25lbnRzWzFdID0gMjsKKysgICAg ICAgIC8vIEEgcG9wdWxhdGVkIGNvbG9yIGNoYW5uZWwgdGhhdCBpcyBub3QgY2hhbm5lbCAwLgor KyAgICAgICAgbWVzaC0+bUNvbG9yc1sxXSA9IG5ldyBhaUNvbG9yNERbMl17fTsKKysgICAgICAg IHJldHVybiBtZXNoOworKyAgICB9OworKworKyAgICAvLyBOb24tY29udGlndW91cyBjaGFubmVs czogSGFzVGV4dHVyZUNvb3JkcygwKSBpcyBmYWxzZSwgc28gdGhlIG9sZCBsb29wCisrICAgIC8v IHN0b3BwZWQgYmVmb3JlIGNvcHlpbmcgY2hhbm5lbCAxLgorKyAgICB7CisrICAgICAgICBhaU1l c2ggKnNyYyA9IG1ha2VNZXNoKCk7CisrICAgICAgICBhaU1lc2ggKmRzdCA9IG51bGxwdHI7Cisr ICAgICAgICBTY2VuZUNvbWJpbmVyOjpDb3B5KCZkc3QsIHNyYyk7CisrICAgICAgICBBU1NFUlRf TkUoZHN0LCBudWxscHRyKTsKKysgICAgICAgIEVYUEVDVF9ORShkc3QtPm1UZXh0dXJlQ29vcmRz WzFdLCBzcmMtPm1UZXh0dXJlQ29vcmRzWzFdKTsKKysgICAgICAgIEVYUEVDVF9ORShkc3QtPm1D b2xvcnNbMV0sIHNyYy0+bUNvbG9yc1sxXSk7CisrICAgICAgICBkZWxldGUgZHN0OworKyAgICAg ICAgZGVsZXRlIHNyYzsKKysgICAgfQorKworKyAgICAvLyBBIHBvcHVsYXRlZCBjaGFubmVsIG9u IGEgemVyby12ZXJ0ZXggbWVzaDogSGFzVGV4dHVyZUNvb3JkcygpIHJlcXVpcmVzCisrICAgIC8v IG1OdW1WZXJ0aWNlcyA+IDAsIHNvIHRoZSBvbGQgbG9vcCBza2lwcGVkIGl0LgorKyAgICB7Cisr ICAgICAgICBhaU1lc2ggKnNyYyA9IG1ha2VNZXNoKCk7CisrICAgICAgICBzcmMtPm1OdW1WZXJ0 aWNlcyA9IDA7CisrICAgICAgICBkZWxldGVbXSBzcmMtPm1WZXJ0aWNlczsKKysgICAgICAgIHNy Yy0+bVZlcnRpY2VzID0gbnVsbHB0cjsKKysgICAgICAgIC8vIE1vdmUgdGhlIHBvcHVsYXRlZCBj aGFubmVscyB0byBpbmRleCAwIHRvIGV4ZXJjaXNlIHRoZSBtTnVtVmVydGljZXMKKysgICAgICAg IC8vIGd1YXJkIHNwZWNpZmljYWxseS4KKysgICAgICAgIHN0ZDo6c3dhcChzcmMtPm1UZXh0dXJl Q29vcmRzWzBdLCBzcmMtPm1UZXh0dXJlQ29vcmRzWzFdKTsKKysgICAgICAgIHN0ZDo6c3dhcChz cmMtPm1Db2xvcnNbMF0sIHNyYy0+bUNvbG9yc1sxXSk7CisrICAgICAgICBhaU1lc2ggKmRzdCA9 IG51bGxwdHI7CisrICAgICAgICBTY2VuZUNvbWJpbmVyOjpDb3B5KCZkc3QsIHNyYyk7CisrICAg ICAgICBBU1NFUlRfTkUoZHN0LCBudWxscHRyKTsKKysgICAgICAgIEVYUEVDVF9ORShkc3QtPm1U ZXh0dXJlQ29vcmRzWzBdLCBzcmMtPm1UZXh0dXJlQ29vcmRzWzBdKTsKKysgICAgICAgIEVYUEVD VF9ORShkc3QtPm1Db2xvcnNbMF0sIHNyYy0+bUNvbG9yc1swXSk7CisrICAgICAgICBkZWxldGUg ZHN0OworKyAgICAgICAgZGVsZXRlIHNyYzsKKysgICAgfQorK30KCmRpZmYgLS1naXQgYS9DVkUt MjAyNi0xNDYxMC5wYXRjaCBiL0NWRS0yMDI2LTE0NjEwLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLjBlMzhhMzAKLS0tIC9kZXYvbnVsbAorKysgYi9DVkUtMjAyNi0x NDYxMC5wYXRjaApAQCAtMCwwICsxLDM1IEBACitkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2Ug YXNzaW1wLTYuMC41L2NvZGUvQXNzZXRMaWIvQ1NNL0NTTUxvYWRlci5jcHAgYXNzaW1wLTYuMC41 LW5ldy9jb2RlL0Fzc2V0TGliL0NTTS9DU01Mb2FkZXIuY3BwCistLS0gYXNzaW1wLTYuMC41L2Nv ZGUvQXNzZXRMaWIvQ1NNL0NTTUxvYWRlci5jcHAJMjAyNi0wNC0zMCAxMToxNTowOS4wMDAwMDAw MDAgKzAyMDAKKysrKyBhc3NpbXAtNi4wLjUtbmV3L2NvZGUvQXNzZXRMaWIvQ1NNL0NTTUxvYWRl ci5jcHAJMjAyNi0wOS0xOCAyMzoyNjowNy4yODA1MDQ3NDggKzAyMDAKK0BAIC0xNzUsNyArMTc1 LDcgQEAgdm9pZCBDU01JbXBvcnRlcjo6SW50ZXJuUmVhZEZpbGUoIGNvbnN0CisgCisgICAgICAg ICAgICAgICAgIC8vIElmIHdlIGtub3cgaG93IG1hbnkgZnJhbWVzIHdlJ2xsIHJlYWQsIHdlIGNh biBwcmVhbGxvY2F0ZSBzb21lIHN0b3JhZ2UKKyAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50 IGFsbG9jID0gMTAwOworLSAgICAgICAgICAgICAgICBpZiAobGFzdCAhPSAweDAwZmZmZmZmKSB7 CisrICAgICAgICAgICAgICAgIGlmIChsYXN0ICE9IDB4MDBmZmZmZmYgJiYgbGFzdCA+IGZpcnN0 KSB7CisgICAgICAgICAgICAgICAgICAgICAvLyByZS1pbml0IGlmIHRoZSBmaWxlIGhhcyBsYXN0 IGZyYW1lIGRhdGEKKyAgICAgICAgICAgICAgICAgICAgIGFsbG9jID0gbGFzdC1maXJzdDsKKyAg ICAgICAgICAgICAgICAgICAgIGFsbG9jICs9IGFsbG9jPj4ydTsgLy8gKyAyNSUKK2RpZmYgLXJ1 cE4gLS1uby1kZXJlZmVyZW5jZSBhc3NpbXAtNi4wLjUvdGVzdC9tb2RlbHMvQ1NNL21hbGZvcm1l ZF96ZXJvX2ZyYW1lcmFuZ2UuY3NtIGFzc2ltcC02LjAuNS1uZXcvdGVzdC9tb2RlbHMvQ1NNL21h bGZvcm1lZF96ZXJvX2ZyYW1lcmFuZ2UuY3NtCistLS0gYXNzaW1wLTYuMC41L3Rlc3QvbW9kZWxz L0NTTS9tYWxmb3JtZWRfemVyb19mcmFtZXJhbmdlLmNzbQkxOTcwLTAxLTAxIDAxOjAwOjAwLjAw MDAwMDAwMCArMDEwMAorKysrIGFzc2ltcC02LjAuNS1uZXcvdGVzdC9tb2RlbHMvQ1NNL21hbGZv cm1lZF96ZXJvX2ZyYW1lcmFuZ2UuY3NtCTIwMjYtMDktMTggMjM6MjY6MDcuMjgwOTI4MDgyICsw MjAwCitAQCAtMCwwICsxLDYgQEAKKyskRmlyc3RGcmFtZSAwCisrJExhc3RGcmFtZSAwCisrJE9y ZGVyCisrQQorKyRQb2ludHMKKyswICAxLjAgMi4wIDMuMAorZGlmZiAtcnVwTiAtLW5vLWRlcmVm ZXJlbmNlIGFzc2ltcC02LjAuNS90ZXN0L3VuaXQvdXRDU01JbXBvcnRFeHBvcnQuY3BwIGFzc2lt cC02LjAuNS1uZXcvdGVzdC91bml0L3V0Q1NNSW1wb3J0RXhwb3J0LmNwcAorLS0tIGFzc2ltcC02 LjAuNS90ZXN0L3VuaXQvdXRDU01JbXBvcnRFeHBvcnQuY3BwCTIwMjYtMDQtMzAgMTE6MTU6MDku MDAwMDAwMDAwICswMjAwCisrKysgYXNzaW1wLTYuMC41LW5ldy90ZXN0L3VuaXQvdXRDU01JbXBv cnRFeHBvcnQuY3BwCTIwMjYtMDktMTggMjM6MjY6MDcuMjgxMTA4NDI4ICswMjAwCitAQCAtNTgs MyArNTgsOSBAQCBwdWJsaWM6CisgVEVTVF9GKHV0Q1NNSW1wb3J0RXhwb3J0LCBpbXBvcnRCbGVu RnJvbUZpbGVUZXN0KSB7CisgICAgIEVYUEVDVF9UUlVFKGltcG9ydGVyVGVzdCgpKTsKKyB9Cisr CisrVEVTVF9GKHV0Q1NNSW1wb3J0RXhwb3J0LCBpbXBvcnRNYWxmb3JtZWRaZXJvRnJhbWVSYW5n ZSkgeworKyAgICBBc3NpbXA6OkltcG9ydGVyIGltcG9ydGVyOworKyAgICBjb25zdCBhaVNjZW5l ICpzY2VuZSA9IGltcG9ydGVyLlJlYWRGaWxlKEFTU0lNUF9URVNUX01PREVMU19ESVIgIi9DU00v bWFsZm9ybWVkX3plcm9fZnJhbWVyYW5nZS5jc20iLCAwKTsKKysgICAgRVhQRUNUX05FKG51bGxw dHIsIHNjZW5lKTsKKyt9CgpkaWZmIC0tZ2l0IGEvQ1ZFLTIwMjYtMTk5NjgucGF0Y2ggYi9DVkUt MjAyNi0xOTk2OC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMzQ0 MWZjCi0tLSAvZGV2L251bGwKKysrIGIvQ1ZFLTIwMjYtMTk5NjgucGF0Y2gKQEAgLTAsMCArMSwz ODIgQEAKK2RpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBhc3NpbXAtNi4wLjUvY29kZS9Bc3Nl dExpYi9MV08vTFdPTG9hZGVyLmggYXNzaW1wLTYuMC41LW5ldy9jb2RlL0Fzc2V0TGliL0xXTy9M V09Mb2FkZXIuaAorLS0tIGFzc2ltcC02LjAuNS9jb2RlL0Fzc2V0TGliL0xXTy9MV09Mb2FkZXIu aAkyMDI2LTA0LTMwIDExOjE1OjA5LjAwMDAwMDAwMCArMDIwMAorKysrIGFzc2ltcC02LjAuNS1u ZXcvY29kZS9Bc3NldExpYi9MV08vTFdPTG9hZGVyLmgJMjAyNi0wOS0xOCAyMzoyNjowNy42NDcx MjU0NzUgKzAyMDAKK0BAIC00Niw2ICs0Niw3IEBAIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg QURWSVNFRCBPRiBUSEUKKyAKKyAjaW5jbHVkZSAiTFdPRmlsZURhdGEuaCIKKyAjaW5jbHVkZSA8 YXNzaW1wL0Jhc2VJbXBvcnRlci5oPgorKyNpbmNsdWRlIDxhc3NpbXAvRXhjZXB0aW9uYWwuaD4K KyAjaW5jbHVkZSA8YXNzaW1wL21hdGVyaWFsLmg+CisgI2luY2x1ZGUgPGFzc2ltcC9EZWZhdWx0 TG9nZ2VyLmhwcD4KKyAKK0BAIC03MSwyOCArNzIsMTAgQEAgdXNpbmcgbmFtZXNwYWNlIExXTzsK KyAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBjbGFzcyBMV09JbXBvcnRlciBmaW5hbCA6IHB1Ymxp YyBCYXNlSW1wb3J0ZXIgeworIHB1YmxpYzoKKy0gICAgLyoqCistICAgICAqIEBicmllZiBUaGUg Y2xhc3MgY29uc3RydWN0b3IuCistICAgICAqLworICAgICBMV09JbXBvcnRlcigpID0gZGVmYXVs dDsKKy0KKy0gICAgLyoqCistICAgICAqIEBicmllZiBUaGUgY2xhc3MgZGVzdHJ1Y3Rvci4KKy0g ICAgICovCisgICAgIH5MV09JbXBvcnRlcigpIG92ZXJyaWRlID0gZGVmYXVsdDsKKy0KKy0gICAg Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQorLSAgICAvKiogUmV0dXJucyB3aGV0aGVyIHRoZSBjbGFzcyBjYW4gaGFu ZGxlIHRoZSBmb3JtYXQgb2YgdGhlIGdpdmVuIGZpbGUuCistICAgICAqIFNlZSBCYXNlSW1wb3J0 ZXI6OkNhblJlYWQoKSBmb3IgZGV0YWlscy4KKy0gICAgICovCisgICAgIGJvb2wgQ2FuUmVhZChj b25zdCBzdGQ6OnN0cmluZyAmcEZpbGUsIElPU3lzdGVtICpwSU9IYW5kbGVyLAorICAgICAgICAg ICAgIGJvb2wgY2hlY2tTaWcpIGNvbnN0IG92ZXJyaWRlOworLQorLSAgICAvLyAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CistICAgIC8qKiBDYWxsZWQgcHJpb3IgdG8gUmVhZEZpbGUoKS4KKy0gICAgKiBUaGUgZnVuY3Rp b24gaXMgYSByZXF1ZXN0IHRvIHRoZSBpbXBvcnRlciB0byB1cGRhdGUgaXRzIGNvbmZpZ3VyYXRp b24KKy0gICAgKiBiYXNpbmcgb24gdGhlIEltcG9ydGVyJ3MgY29uZmlndXJhdGlvbiBwcm9wZXJ0 eSBsaXN0LgorLSAgICAqLworICAgICB2b2lkIFNldHVwUHJvcGVydGllcyhjb25zdCBJbXBvcnRl ciAqcEltcCkgb3ZlcnJpZGU7CisgCisgcHJvdGVjdGVkOgorQEAgLTEwOSwxOCArOTIsMTUgQEAg cHJvdGVjdGVkOgorIAorIHByaXZhdGU6CisgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy0gICAgLyoqIExv YWRzIGEgTFdPIGZpbGUgaW4gdGhlIG9sZGVyIExXT0IgZm9ybWF0IChMVyA8IDYpCistICAgICAq LworKyAgICAvLy8gTG9hZHMgYSBMV08gZmlsZSBpbiB0aGUgb2xkZXIgTFdPQiBmb3JtYXQgKExX IDwgNikKKyAgICAgdm9pZCBMb2FkTFdPQkZpbGUoKTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor LSAgICAvKiogTG9hZHMgYSBMV08gZmlsZSBpbiB0aGUgbmV3ZXIgTFdPMiBmb3JtYXQgKExXID49 IDYpCistICAgICAqLworKyAgICAvLy8gTG9hZHMgYSBMV08gZmlsZSBpbiB0aGUgbmV3ZXIgTFdP MiBmb3JtYXQgKExXID49IDYpCisgICAgIHZvaWQgTG9hZExXTzJGaWxlKCk7CisgCisgICAgIC8v IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KKy0gICAgLyoqIFBhcnNpbmcgZnVuY3Rpb25zIHVzZWQgZm9yIGFsbCBmaWxl IGZvcm1hdCB2ZXJzaW9ucworLSAgICAqLworKyAgICAvLy8gUGFyc2luZyBmdW5jdGlvbnMgdXNl ZCBmb3IgYWxsIGZpbGUgZm9ybWF0IHZlcnNpb25zCisgICAgIHZvaWQgR2V0UzAoc3RkOjpzdHJp bmcgJm91dCwgdW5zaWduZWQgaW50IG1heCk7CisgICAgIGZsb2F0IEdldEY0KCk7CisgICAgIGZs b2F0IEdldEY4KCk7CitAQCAtMTMwLDM5ICsxMTAsMzQgQEAgcHJpdmF0ZToKKyAgICAgdWludDhf dCBHZXRVMSgpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBMb2FkcyBhIHN1cmZh Y2UgY2h1bmsgZnJvbSBhbiBMV09CIGZpbGUKKy0gICAgICogIEBwYXJhbSBzaXplIE1heGltdW0g c2l6ZSB0byBiZSByZWFkLCBpbiBieXRlcy4KKy0gICAgICovCisrICAgIC8vLyBMb2FkcyBhIHN1 cmZhY2UgY2h1bmsgZnJvbSBhbiBMV09CIGZpbGUKKysgICAgLy8vIEBwYXJhbSBzaXplIE1heGlt dW0gc2l6ZSB0byBiZSByZWFkLCBpbiBieXRlcy4KKyAgICAgdm9pZCBMb2FkTFdPQlN1cmZhY2Uo dW5zaWduZWQgaW50IHNpemUpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBMb2Fk cyBhIHN1cmZhY2UgY2h1bmsgZnJvbSBhbiBMV08yIGZpbGUKKy0gICAgICogIEBwYXJhbSBzaXpl IE1heGltdW0gc2l6ZSB0byBiZSByZWFkLCBpbiBieXRlcy4KKy0gICAgICovCisrICAgIC8vLyBM b2FkcyBhIHN1cmZhY2UgY2h1bmsgZnJvbSBhbiBMV08yIGZpbGUKKysgICAgLy8vICBAcGFyYW0g c2l6ZSBNYXhpbXVtIHNpemUgdG8gYmUgcmVhZCwgaW4gYnl0ZXMuCisgICAgIHZvaWQgTG9hZExX TzJTdXJmYWNlKHVuc2lnbmVkIGludCBzaXplKTsKKyAgICAgdm9pZCBMb2FkTFdPM1N1cmZhY2Uo dW5zaWduZWQgaW50IHNpemUpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBMb2Fk cyBhIHRleHR1cmUgYmxvY2sgZnJvbSBhIExXTzIgZmlsZS4KKy0gICAgICogIEBwYXJhbSBzaXpl IE1heGltdW0gc2l6ZSB0byBiZSByZWFkLCBpbiBieXRlcy4KKy0gICAgICogIEBwYXJhbSBoZWFk IEhlYWRlciBvZiB0aGUgU1VGLkJMT0sgaGVhZGVyCistICAgICAqLworKyAgICAvLy8gTG9hZHMg YSB0ZXh0dXJlIGJsb2NrIGZyb20gYSBMV08yIGZpbGUuCisrICAgIC8vLyBAcGFyYW0gc2l6ZSBN YXhpbXVtIHNpemUgdG8gYmUgcmVhZCwgaW4gYnl0ZXMuCisrICAgIC8vLyBAcGFyYW0gaGVhZCBI ZWFkZXIgb2YgdGhlIFNVRi5CTE9LIGhlYWRlcgorICAgICB2b2lkIExvYWRMV08yVGV4dHVyZUJs b2NrKExFX05DT05TVCBJRkY6OlN1YkNodW5rSGVhZGVyICpoZWFkLAorICAgICAgICAgICAgIHVu c2lnbmVkIGludCBzaXplKTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAgICAvKiogTG9hZHMg YSBzaGFkZXIgYmxvY2sgZnJvbSBhIExXTzIgZmlsZS4KKy0gICAgICogIEBwYXJhbSBzaXplIE1h eGltdW0gc2l6ZSB0byBiZSByZWFkLCBpbiBieXRlcy4KKy0gICAgICogIEBwYXJhbSBoZWFkIEhl YWRlciBvZiB0aGUgU1VGLkJMT0sgaGVhZGVyCistICAgICAqLworKyAgICAvLy8gTG9hZHMgYSBz aGFkZXIgYmxvY2sgZnJvbSBhIExXTzIgZmlsZS4KKysgICAgLy8vIEBwYXJhbSBzaXplIE1heGlt dW0gc2l6ZSB0byBiZSByZWFkLCBpbiBieXRlcy4KKysgICAgLy8vIEBwYXJhbSBoZWFkIEhlYWRl ciBvZiB0aGUgU1VGLkJMT0sgaGVhZGVyCisgICAgIHZvaWQgTG9hZExXTzJTaGFkZXJCbG9jayhM RV9OQ09OU1QgSUZGOjpTdWJDaHVua0hlYWRlciAqaGVhZCwKKyAgICAgICAgICAgICB1bnNpZ25l ZCBpbnQgc2l6ZSk7CisgCisgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy0gICAgLyoqIExvYWRzIGFuIGlt YWdlIG1hcCBmcm9tIGEgTFdPMiBmaWxlCistICAgICAqICBAcGFyYW0gc2l6ZSBNYXhpbXVtIHNp emUgdG8gYmUgcmVhZCwgaW4gYnl0ZXMuCistICAgICAqICBAcGFyYW0gdGV4IFRleHR1cmUgb2Jq ZWN0IHRvIGJlIGZpbGxlZAorLSAgICAgKi8KKysgICAgLy8vIExvYWRzIGFuIGltYWdlIG1hcCBm cm9tIGEgTFdPMiBmaWxlCisrICAgIC8vLyBAcGFyYW0gc2l6ZSBNYXhpbXVtIHNpemUgdG8gYmUg cmVhZCwgaW4gYnl0ZXMuCisrICAgIC8vLyBAcGFyYW0gdGV4IFRleHR1cmUgb2JqZWN0IHRvIGJl IGZpbGxlZAorICAgICB2b2lkIExvYWRMV08ySW1hZ2VNYXAodW5zaWduZWQgaW50IHNpemUsIExX Tzo6VGV4dHVyZSAmdGV4KTsKKyAgICAgdm9pZCBMb2FkTFdPMkdyYWRpZW50KHVuc2lnbmVkIGlu dCBzaXplLCBMV086OlRleHR1cmUgJnRleCk7CisgICAgIHZvaWQgTG9hZExXTzJQcm9jZWR1cmFs KHVuc2lnbmVkIGludCBzaXplLCBMV086OlRleHR1cmUgJnRleCk7CitAQCAtMTcxLDQ4ICsxNDYs NDEgQEAgcHJpdmF0ZToKKyAgICAgdm9pZCBMb2FkTFdPMlRleHR1cmVIZWFkZXIodW5zaWduZWQg aW50IHNpemUsIExXTzo6VGV4dHVyZSAmdGV4KTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAg ICAvKiogTG9hZHMgdGhlIExXTyB0YWcgbGlzdCBmcm9tIHRoZSBmaWxlCistICAgICAqICBAcGFy YW0gc2l6ZSBNYXhpbXVtIHNpemUgdG8gYmUgcmVhZCwgaW4gYnl0ZXMuCistICAgICAqLworKyAg ICAvLy8gTG9hZHMgdGhlIExXTyB0YWcgbGlzdCBmcm9tIHRoZSBmaWxlCisrICAgIC8vLyBAcGFy YW0gc2l6ZSBNYXhpbXVtIHNpemUgdG8gYmUgcmVhZCwgaW4gYnl0ZXMuCisgICAgIHZvaWQgTG9h ZExXT1RhZ3ModW5zaWduZWQgaW50IHNpemUpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAg IC8qKiBMb2FkIHBvbHlnb25zIGZyb20gYSBQT0xTIGNodW5rCistICAgICAqICBAcGFyYW0gbGVu Z3RoIFNpemUgb2YgdGhlIGNodW5rCistICAgICovCisrICAgIC8vLyBMb2FkIHBvbHlnb25zIGZy b20gYSBQT0xTIGNodW5rCisrICAgIC8vLyBAcGFyYW0gbGVuZ3RoIFNpemUgb2YgdGhlIGNodW5r CisgICAgIHZvaWQgTG9hZExXTzJQb2x5Z29ucyh1bnNpZ25lZCBpbnQgbGVuZ3RoKTsKKyAgICAg dm9pZCBMb2FkTFdPQlBvbHlnb25zKHVuc2lnbmVkIGludCBsZW5ndGgpOworIAorICAgICAvLyAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCistICAgIC8qKiBMb2FkIHBvbHlnb24gdGFncyBmcm9tIGEgUFRBRyBjaHVuawor LSAgICAgKiAgQHBhcmFtIGxlbmd0aCBTaXplIG9mIHRoZSBjaHVuaworLSAgICAqLworKyAgICAv Ly8gTG9hZCBwb2x5Z29uIHRhZ3MgZnJvbSBhIFBUQUcgY2h1bmsKKysgICAgLy8vIEBwYXJhbSBs ZW5ndGggU2l6ZSBvZiB0aGUgY2h1bmsKKyAgICAgdm9pZCBMb2FkTFdPMlBvbHlnb25UYWdzKHVu c2lnbmVkIGludCBsZW5ndGgpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBMb2Fk IGEgdmVydGV4IG1hcCBmcm9tIGEgVk1BUC9WTUFEIGNodW5rCistICAgICAqICBAcGFyYW0gbGVu Z3RoIFNpemUgb2YgdGhlIGNodW5rCistICAgICAqICBAcGFyYW0gcGVyUG9seSBPcGVyYXRlIG9u IHBlci1wb2x5Z29uIGJhc2U/CistICAgICovCisrICAgIC8vLyBMb2FkIGEgdmVydGV4IG1hcCBm cm9tIGEgVk1BUC9WTUFEIGNodW5rCisrICAgIC8vLyBAcGFyYW0gbGVuZ3RoIFNpemUgb2YgdGhl IGNodW5rCisrICAgIC8vLyBAcGFyYW0gcGVyUG9seSBPcGVyYXRlIG9uIHBlci1wb2x5Z29uIGJh c2U/CisgICAgIHZvaWQgTG9hZExXTzJWZXJ0ZXhNYXAodW5zaWduZWQgaW50IGxlbmd0aCwgYm9v bCBwZXJQb2x5KTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAgICAvKiogTG9hZCBwb2x5Z29u cyBmcm9tIGEgUE5UUyBjaHVuaworLSAgICAgKiAgQHBhcmFtIGxlbmd0aCBTaXplIG9mIHRoZSBj aHVuaworLSAgICAqLworKyAgICAvLy8gTG9hZCBwb2x5Z29ucyBmcm9tIGEgUE5UUyBjaHVuawor KyAgICAvLy8gQHBhcmFtIGxlbmd0aCBTaXplIG9mIHRoZSBjaHVuaworICAgICB2b2lkIExvYWRM V09Qb2ludHModW5zaWduZWQgaW50IGxlbmd0aCk7CisgCisgICAgIC8vIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy0g ICAgLyoqIExvYWQgYSBjbGlwIGZyb20gYSBDTElQIGNodW5rCistICAgICAqICBAcGFyYW0gbGVu Z3RoIFNpemUgb2YgdGhlIGNodW5rCistICAgICovCisrICAgIC8vLyBMb2FkIGEgY2xpcCBmcm9t IGEgQ0xJUCBjaHVuaworKyAgICAvLy8gQHBhcmFtIGxlbmd0aCBTaXplIG9mIHRoZSBjaHVuawor ICAgICB2b2lkIExvYWRMV08yQ2xpcCh1bnNpZ25lZCBpbnQgbGVuZ3RoKTsKKyAgICAgdm9pZCBM b2FkTFdPM0NsaXAodW5zaWduZWQgaW50IGxlbmd0aCk7CisgCisgICAgIC8vIC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K Ky0gICAgLyoqIExvYWQgYW4gZW52ZWxvcGUgZnJvbSBhbiBFVkwgY2h1bmsKKy0gICAgICogIEBw YXJhbSBsZW5ndGggU2l6ZSBvZiB0aGUgY2h1bmsKKy0gICAgKi8KKysgICAgLy8vIExvYWQgYW4g ZW52ZWxvcGUgZnJvbSBhbiBFVkwgY2h1bmsKKysgICAgLy8vIEBwYXJhbSBsZW5ndGggU2l6ZSBv ZiB0aGUgY2h1bmsKKyAgICAgdm9pZCBMb2FkTFdPMkVudmVsb3BlKHVuc2lnbmVkIGludCBsZW5n dGgpOworICAgICB2b2lkIExvYWRMV08zRW52ZWxvcGUodW5zaWduZWQgaW50IGxlbmd0aCk7Cisg CitAQCAtMjI2LDggKzE5NCw3IEBAIHByaXZhdGU6CisgICAgIHZvaWQgTG9hZE5vZGVEYXRhKHVu c2lnbmVkIGludCBsZW5ndGgpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBDb3Vu dCB2ZXJ0aWNlcyBhbmQgZmFjZXMgaW4gYSBMV09CL0xXTzIgZmlsZQorLSAgICAqLworKyAgICAv Ly8gQ291bnQgdmVydGljZXMgYW5kIGZhY2VzIGluIGEgTFdPQi9MV08yIGZpbGUKKyAgICAgdm9p ZCBDb3VudFZlcnRzQW5kRmFjZXNMV08yKHVuc2lnbmVkIGludCAmdmVydHMsCisgICAgICAgICAg ICAgdW5zaWduZWQgaW50ICZmYWNlcywKKyAgICAgICAgICAgICB1aW50MTZfdCAqJmN1cnNvciwK K0BAIC0yNDEsOCArMjA4LDcgQEAgcHJpdmF0ZToKKyAgICAgICAgICAgICB1bnNpZ25lZCBpbnQg bWF4ID0gVUlOVF9NQVgpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBSZWFkIHZl cnRpY2VzIGFuZCBmYWNlcyBpbiBhIExXT0IvTFdPMiBmaWxlCistICAgICovCisrICAgIC8vLyBS ZWFkIHZlcnRpY2VzIGFuZCBmYWNlcyBpbiBhIExXT0IvTFdPMiBmaWxlCisgICAgIHZvaWQgQ29w eUZhY2VJbmRpY2VzTFdPMihMV086OkZhY2VMaXN0OjppdGVyYXRvciAmaXQsCisgICAgICAgICAg ICAgdWludDE2X3QgKiZjdXJzb3IsCisgICAgICAgICAgICAgY29uc3QgdWludDE2X3QgKmNvbnN0 IGVuZCk7CitAQCAtMjU0LDQ1ICsyMjAsMzYgQEAgcHJpdmF0ZToKKyAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgbWF4ID0gVUlOVF9NQVgpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8q KiBSZXNvbHZlIHRoZSB0YWcgYW5kIHN1cmZhY2UgbGlzdHMgdGhhdCBoYXZlIGJlZW4gbG9hZGVk LgorLSAgICAqICAgR2VuZXJhdGVzIHRoZSBtTWFwcGluZyB0YWJsZS4KKy0gICAgKi8KKysgICAg Ly8vIFJlc29sdmUgdGhlIHRhZyBhbmQgc3VyZmFjZSBsaXN0cyB0aGF0IGhhdmUgYmVlbiBsb2Fk ZWQuCisrICAgIC8vLyBHZW5lcmF0ZXMgdGhlIG1NYXBwaW5nIHRhYmxlLgorICAgICB2b2lkIFJl c29sdmVUYWdzKCk7CisgCisgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy0gICAgLyoqIFJlc29sdmUgdGhl IGNsaXAgbGlzdCB0aGF0IGhhcyBiZWVuIGxvYWRlZC4KKy0gICAgKiAgIFJlcGxhY2VzIGNsaXAg cmVmZXJlbmNlcyB3aXRoIHJlYWwgY2xpcHMuCistICAgICovCisrICAgIC8vLyBSZXNvbHZlIHRo ZSBjbGlwIGxpc3QgdGhhdCBoYXMgYmVlbiBsb2FkZWQuCisrICAgIC8vLyBSZXBsYWNlcyBjbGlw IHJlZmVyZW5jZXMgd2l0aCByZWFsIGNsaXBzLgorICAgICB2b2lkIFJlc29sdmVDbGlwcygpOwor IAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBBZGQgYSB0ZXh0dXJlIGxpc3QgdG8gYW4g b3V0cHV0IG1hdGVyaWFsIGRlc2NyaXB0aW9uLgorLSAgICAgKgorLSAgICAgKiAgQHBhcmFtIHBj TWF0IE91dHB1dCBtYXRlcmlhbAorLSAgICAgKiAgQHBhcmFtIGluIElucHV0IHRleHR1cmUgbGlz dAorLSAgICAgKiAgQHBhcmFtIHR5cGUgVHlwZSBpZGVudGlmaWVyIG9mIHRoZSB0ZXh0dXJlIGxp c3QKKy0gICAgKi8KKysgICAgLy8vIEFkZCBhIHRleHR1cmUgbGlzdCB0byBhbiBvdXRwdXQgbWF0 ZXJpYWwgZGVzY3JpcHRpb24uCisrICAgIC8vLyBAcGFyYW0gcGNNYXQgT3V0cHV0IG1hdGVyaWFs CisrICAgIC8vLyBAcGFyYW0gaW4gSW5wdXQgdGV4dHVyZSBsaXN0CisrICAgIC8vLyBAcGFyYW0g dHlwZSBUeXBlIGlkZW50aWZpZXIgb2YgdGhlIHRleHR1cmUgbGlzdAorICAgICBib29sIEhhbmRs ZVRleHR1cmVzKGFpTWF0ZXJpYWwgKnBjTWF0LCBjb25zdCBUZXh0dXJlTGlzdCAmaW4sCisgICAg ICAgICAgICAgYWlUZXh0dXJlVHlwZSB0eXBlKTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAg ICAvKiogQWRqdXN0IGEgdGV4dHVyZSBwYXRoCistICAgICovCisrICAgIC8vLyBBZGp1c3QgYSB0 ZXh0dXJlIHBhdGgKKyAgICAgdm9pZCBBZGp1c3RUZXh0dXJlUGF0aChzdGQ6OnN0cmluZyAmb3V0 KTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAgICAvKiogQ29udmVydCBhIExXTyBzdXJmYWNl IGRlc2NyaXB0aW9uIHRvIGFuIEFTU0lNUCBtYXRlcmlhbAorLSAgICAqLworKyAgICAvLy8gQ29u dmVydCBhIExXTyBzdXJmYWNlIGRlc2NyaXB0aW9uIHRvIGFuIEFTU0lNUCBtYXRlcmlhbAorICAg ICB2b2lkIENvbnZlcnRNYXRlcmlhbChjb25zdCBMV086OlN1cmZhY2UgJnN1cmYsIGFpTWF0ZXJp YWwgKnBjTWF0KTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAgICAvKiogR2V0IGEgbGlzdCBv ZiBhbGwgVVYvVkMgY2hhbm5lbHMgcmVxdWlyZWQgYnkgYSBzcGVjaWZpYyBzdXJmYWNlLgorLSAg ICAgKgorLSAgICAgKiAgQHBhcmFtIHN1cmYgV29ya2luZyBzdXJmYWNlCistICAgICAqICBAcGFy YW0gbGF5ZXIgV29ya2luZyBsYXllcgorLSAgICAgKiAgQHBhcmFtIG91dCBPdXRwdXQgbGlzdC4g VGhlIG1lbWJlcnMgYXJlIGluZGljZXMgaW50byB0aGUKKy0gICAgICogICAgVVYvVkMgY2hhbm5l bCBsaXN0cyBvZiB0aGUgbGF5ZXIKKy0gICAgKi8KKysgICAgLy8vIEdldCBhIGxpc3Qgb2YgYWxs IFVWL1ZDIGNoYW5uZWxzIHJlcXVpcmVkIGJ5IGEgc3BlY2lmaWMgc3VyZmFjZS4KKysgICAgLy8v IEBwYXJhbSBzdXJmIFdvcmtpbmcgc3VyZmFjZQorKyAgICAvLy8gQHBhcmFtIGxheWVyIFdvcmtp bmcgbGF5ZXIKKysgICAgLy8vIEBwYXJhbSBvdXQgT3V0cHV0IGxpc3QuIFRoZSBtZW1iZXJzIGFy ZSBpbmRpY2VzIGludG8gdGhlIFVWL1ZDIGNoYW5uZWwgbGlzdHMgb2YgdGhlIGxheWVyCisgICAg IHZvaWQgRmluZFVWQ2hhbm5lbHMoLypjb25zdCovIExXTzo6U3VyZmFjZSAmc3VyZiwKKyAgICAg ICAgICAgICBMV086OlNvcnRlZFJlcCAmc29ydGVkLAorICAgICAgICAgICAgIC8qY29uc3QqLyBM V086OkxheWVyICZsYXllciwKK0BAIC0zMDksNTcgKzI2Niw0NyBAQCBwcml2YXRlOgorICAgICAg ICAgICAgIHVuc2lnbmVkIGludCBvdXRbQUlfTUFYX05VTUJFUl9PRl9DT0xPUl9TRVRTXSk7Cisg CisgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KKy0gICAgLyoqIEdlbmVyYXRlIHRoZSBmaW5hbCBub2RlIGdy YXBoCistICAgICAqICBVbnVzZWQgbm9kZXMgYXJlIGRlbGV0ZWQuCistICAgICAqICBAcGFyYW0g YXBjTm9kZXMgRmxhdCBsaXN0IG9mIG5vZGVzCistICAgICovCisrICAgIC8vLyBHZW5lcmF0ZSB0 aGUgZmluYWwgbm9kZSBncmFwaAorKyAgICAvLy8gVW51c2VkIG5vZGVzIGFyZSBkZWxldGVkLgor KyAgICAvLy8gQHBhcmFtIGFwY05vZGVzIEZsYXQgbGlzdCBvZiBub2RlcworICAgICB2b2lkIEdl bmVyYXRlTm9kZUdyYXBoKHN0ZDo6bWFwPHVpbnQxNl90LCBhaU5vZGUgKj4gJmFwY05vZGVzKTsK KyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAgICAvKiogQWRkIGNoaWxkcmVuIHRvIGEgbm9kZQor LSAgICAgKiAgQHBhcmFtIG5vZGUgTm9kZSB0byBiZWNvbWUgYSBmYXRoZXIKKy0gICAgICogIEBw YXJhbSBwYXJlbnQgSW5kZXggb2YgdGhlIG5vZGUKKy0gICAgICogIEBwYXJhbSBhcGNOb2RlcyBG bGF0IGxpc3Qgb2Ygbm9kZXMgLSB1c2VkIG5vZGVzIGFyZSBzZXQgdG8gbnVsbHB0ci4KKy0gICAg Ki8KKy0gICAgdm9pZCBBZGRDaGlsZHJlbihhaU5vZGUgKm5vZGUsIHVpbnQxNl90IHBhcmVudCwK Ky0gICAgICAgICAgICBzdGQ6OnZlY3RvcjxhaU5vZGUgKj4gJmFwY05vZGVzKTsKKysgICAgLy8v IEFkZCBjaGlsZHJlbiB0byBhIG5vZGUKKysgICAgLy8vIEBwYXJhbSBub2RlIE5vZGUgdG8gYmVj b21lIGEgZmF0aGVyCisrICAgIC8vLyBAcGFyYW0gcGFyZW50IEluZGV4IG9mIHRoZSBub2RlCisr ICAgIC8vLyBAcGFyYW0gYXBjTm9kZXMgRmxhdCBsaXN0IG9mIG5vZGVzIC0gdXNlZCBub2RlcyBh cmUgc2V0IHRvIG51bGxwdHIuCisrICAgIHZvaWQgQWRkQ2hpbGRyZW4oYWlOb2RlICpub2RlLCB1 aW50MTZfdCBwYXJlbnQsIHN0ZDo6dmVjdG9yPGFpTm9kZSAqPiAmYXBjTm9kZXMpOworIAorICAg ICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBSZWFkIGEgdmFyaWFibGUgc2l6ZWQgaW50ZWdlcgor LSAgICAgKiAgQHBhcmFtIGlub3V0IElucHV0IGFuZCBvdXRwdXQgYnVmZmVyCistICAgICovCisr ICAgIC8vLyBSZWFkIGEgdmFyaWFibGUgc2l6ZWQgaW50ZWdlcgorKyAgICAvLy8gQHBhcmFtIGlu b3V0IElucHV0IGFuZCBvdXRwdXQgYnVmZmVyCisgICAgIGludCBSZWFkVlNpemVkSW50TFdPMih1 aW50OF90IComaW5vdXQpOworIAorICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistICAgIC8qKiBBc3NpZ24g YSB2YWx1ZSBmcm9tIGEgVk1BUCB0byBhIHZlcnRleCBhbmQgYWxsIHZlcnRpY2VzCistICAgICAq ICBhdHRhY2hlZCB0byBpdC4KKy0gICAgICogIEBwYXJhbSBiYXNlIFZNQVAgZGVzdGluYXRpb24g ZGF0YQorLSAgICAgKiAgQHBhcmFtIG51bVJlYWQgTnVtYmVyIG9mIGZsb2F0J3MgdG8gYmUgcmVh ZAorLSAgICAgKiAgQHBhcmFtIGlkeCBBYnNvbHV0ZSBpbmRleCBvZiB0aGUgZmlyc3QgdmVydGV4 CistICAgICAqICBAcGFyYW0gZGF0YSBWYWx1ZSBvZiB0aGUgVk1BUCB0byBiZSBhc3NpZ25lZCAt IHJlYWQgbnVtUmVhZAorLSAgICAgKiAgICBmbG9hdHMgZnJvbSB0aGlzIGFycmF5LgorLSAgICAq LworKyAgICAvLy8gQXNzaWduIGEgdmFsdWUgZnJvbSBhIFZNQVAgdG8gYSB2ZXJ0ZXggYW5kIGFs bCB2ZXJ0aWNlcyBhdHRhY2hlZCB0byBpdC4KKysgICAgLy8vIEBwYXJhbSBiYXNlIFZNQVAgZGVz dGluYXRpb24gZGF0YQorKyAgICAvLy8gQHBhcmFtIG51bVJlYWQgTnVtYmVyIG9mIGZsb2F0J3Mg dG8gYmUgcmVhZAorKyAgICAvLy8gQHBhcmFtIGlkeCBBYnNvbHV0ZSBpbmRleCBvZiB0aGUgZmly c3QgdmVydGV4CisrICAgIC8vLyBAcGFyYW0gZGF0YSBWYWx1ZSBvZiB0aGUgVk1BUCB0byBiZSBh c3NpZ25lZCAtIHJlYWQgbnVtUmVhZAorKyAgICAvLy8gICAgICAgIGZsb2F0cyBmcm9tIHRoaXMg YXJyYXkuCisgICAgIHZvaWQgRG9SZWN1cnNpdmVWTUFQQXNzaWdubWVudChWTWFwRW50cnkgKmJh c2UsIHVuc2lnbmVkIGludCBudW1SZWFkLAorICAgICAgICAgICAgIHVuc2lnbmVkIGludCBpZHgs IGZsb2F0ICpkYXRhKTsKKyAKKyAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLSAgICAvKiogQ29tcHV0ZSBu b3JtYWwgdmVjdG9ycyBmb3IgYSBtZXNoCistICAgICAqICBAcGFyYW0gbWVzaCBJbnB1dCBtZXNo CistICAgICAqICBAcGFyYW0gc21vb3RoaW5nR3JvdXBzIFNtb290aGluZy1ncm91cHMtcGVyLWZh Y2UgYXJyYXkKKy0gICAgICogIEBwYXJhbSBzdXJmYWNlIFN1cmZhY2UgZm9yIHRoZSBtZXNoCist ICAgICovCisrICAgIC8vLyBDb21wdXRlIG5vcm1hbCB2ZWN0b3JzIGZvciBhIG1lc2gKKysgICAg Ly8vIEBwYXJhbSBtZXNoIElucHV0IG1lc2gKKysgICAgLy8vIEBwYXJhbSBzbW9vdGhpbmdHcm91 cHMgU21vb3RoaW5nLWdyb3Vwcy1wZXItZmFjZSBhcnJheQorKyAgICAvLy8gQHBhcmFtIHN1cmZh Y2UgU3VyZmFjZSBmb3IgdGhlIG1lc2gKKyAgICAgdm9pZCBDb21wdXRlTm9ybWFscyhhaU1lc2gg Km1lc2gsIGNvbnN0IHN0ZDo6dmVjdG9yPHVuc2lnbmVkIGludD4gJnNtb290aGluZ0dyb3VwcywK KyAgICAgICAgICAgICBjb25zdCBMV086OlN1cmZhY2UgJnN1cmZhY2UpOworIAorICAgICAvLyAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCistICAgIC8qKiBTZXR1cCBhIG5ldyB0ZXh0dXJlIGFmdGVyIHRoZSBjb3JyZXNw b25kaW5nIGNodW5rIHdhcworLSAgICAgKiAgZW5jb3VudGVyZWQgaW4gdGhlIGZpbGUuCistICAg ICAqICBAcGFyYW0gbGlzdCBUZXh0dXJlIGxpc3QKKy0gICAgICogIEBwYXJhbSBzaXplIE1heGlt dW0gbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHJlYWQKKy0gICAgICogIEByZXR1cm4gUG9pbnRlciB0 byBuZXcgdGV4dHVyZQorLSAgICAqLworLSAgICBMV086OlRleHR1cmUgKlNldHVwTmV3VGV4dHVy ZUxXT0IoTFdPOjpUZXh0dXJlTGlzdCAmbGlzdCwKKy0gICAgICAgICAgICB1bnNpZ25lZCBpbnQg c2l6ZSk7CisrICAgIC8vLyBTZXR1cCBhIG5ldyB0ZXh0dXJlIGFmdGVyIHRoZSBjb3JyZXNwb25k aW5nIGNodW5rIHdhcyBlbmNvdW50ZXJlZCBpbiB0aGUgZmlsZS4KKysgICAgLy8vIEBwYXJhbSBs aXN0IFRleHR1cmUgbGlzdAorKyAgICAvLy8gQHBhcmFtIHNpemUgTWF4aW11bSBudW1iZXIgb2Yg Ynl0ZXMgdG8gYmUgcmVhZAorKyAgICAvLy8gQHJldHVybiBQb2ludGVyIHRvIG5ldyB0ZXh0dXJl CisrICAgIExXTzo6VGV4dHVyZSAqU2V0dXBOZXdUZXh0dXJlTFdPQihMV086OlRleHR1cmVMaXN0 ICZsaXN0LCB1bnNpZ25lZCBpbnQgc2l6ZSk7CisgCisgcHJpdmF0ZToKKyAgICAgLy8vIHRydWUg aWYgdGhlIGZpbGUgaXMgYSBMV08yIGZpbGUKK0BAIC00NTMsMjQgKzQwMCwyNCBAQCBpbmxpbmUg dWludDhfdCBMV09JbXBvcnRlcjo6R2V0VTEoKSB7CisgCisgLy8gLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgaW5saW5lIGludCBMV09JbXBvcnRlcjo6UmVhZFZTaXpl ZEludExXTzIodWludDhfdCAqJmlub3V0KSB7CisrICAgIC8vIEEgdmFyaWFibGUtc2l6ZWQgaW5k ZXggaXMgMiBieXRlcyBsb25nLCBvciA0IGJ5dGVzIHdoZW4gdGhlIGZpcnN0IGJ5dGUKKysgICAg Ly8gaXMgMHhGRi4gR3VhcmQgZXZlcnkgYnl0ZSByZWFkIGFnYWluc3QgdGhlIGVuZCBvZiB0aGUg ZmlsZSBidWZmZXIgc28gYQorKyAgICAvLyB0cnVuY2F0ZWQgb3IgbWFsZm9ybWVkIGNodW5rIGNh bm5vdCB0cmlnZ2VyIGFuIG91dC1vZi1ib3VuZHMgcmVhZC4KKysgICAgYXV0byByZWFkQnl0ZSA9 IFsmXSgpIC0+IGludCB7CisrICAgICAgICBpZiAoaW5vdXQgPj0gbUZpbGVCdWZmZXJFbmQpIHsK KysgICAgICAgICAgICB0aHJvdyBEZWFkbHlJbXBvcnRFcnJvcigiTFdPMjogVW5leHBlY3RlZCBl bmQgb2YgZmlsZSB3aGlsZSByZWFkaW5nIGEgdmFyaWFibGUtc2l6ZWQgaW5kZXgiKTsKKysgICAg ICAgIH0KKysgICAgICAgIHJldHVybiAqaW5vdXQrKzsKKysgICAgfTsKKysKKyAgICAgaW50IGk7 CistICAgIGludCBjID0gKmlub3V0OworLSAgICBpbm91dCsrOworLSAgICBpZiAoYyAhPSAweEZG KSB7CisrICAgIGlmIChpbnQgYyA9IHJlYWRCeXRlKCk7IGMgIT0gMHhGRikgeworICAgICAgICAg aSA9IGMgPDwgODsKKy0gICAgICAgIGMgPSAqaW5vdXQ7CistICAgICAgICBpbm91dCsrOworLSAg ICAgICAgaSB8PSBjOworKyAgICAgICAgaSB8PSByZWFkQnl0ZSgpOworICAgICB9IGVsc2Ugewor LSAgICAgICAgYyA9ICppbm91dDsKKy0gICAgICAgIGlub3V0Kys7CistICAgICAgICBpID0gYyA8 PCAxNjsKKy0gICAgICAgIGMgPSAqaW5vdXQ7CistICAgICAgICBpbm91dCsrOworLSAgICAgICAg aSB8PSBjIDw8IDg7CistICAgICAgICBjID0gKmlub3V0OworLSAgICAgICAgaW5vdXQrKzsKKy0g ICAgICAgIGkgfD0gYzsKKysgICAgICAgIGkgPSByZWFkQnl0ZSgpIDw8IDE2OworKyAgICAgICAg aSB8PSByZWFkQnl0ZSgpIDw8IDg7CisrICAgICAgICBpIHw9IHJlYWRCeXRlKCk7CisgICAgIH0K KyAgICAgcmV0dXJuIGk7CisgfQoKZGlmZiAtLWdpdCBhL0NWRS0yMDI2LTE5OTk5LnBhdGNoIGIv Q1ZFLTIwMjYtMTk5OTkucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u ZWYyZjgxOAotLS0gL2Rldi9udWxsCisrKyBiL0NWRS0yMDI2LTE5OTk5LnBhdGNoCkBAIC0wLDAg KzEsMTQgQEAKK2RpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBhc3NpbXAtNi4wLjUvY29kZS9B c3NldExpYi9NREwvTURMTG9hZGVyLmNwcCBhc3NpbXAtNi4wLjUtbmV3L2NvZGUvQXNzZXRMaWIv TURML01ETExvYWRlci5jcHAKKy0tLSBhc3NpbXAtNi4wLjUvY29kZS9Bc3NldExpYi9NREwvTURM TG9hZGVyLmNwcAkyMDI2LTA0LTMwIDExOjE1OjA5LjAwMDAwMDAwMCArMDIwMAorKysrIGFzc2lt cC02LjAuNS1uZXcvY29kZS9Bc3NldExpYi9NREwvTURMTG9hZGVyLmNwcAkyMDI2LTA5LTE4IDIz OjI2OjA4LjAxMzg1NjcxNyArMDIwMAorQEAgLTE2ODUsNiArMTY4NSwxMCBAQCB2b2lkIE1ETElt cG9ydGVyOjpQYXJzZUJvbmVUcmFmb0tleXNfM0RHCisgICAgICAgICAgICAgLy8gc2tpcCBhbGwg ZnJhbWVzIHZlcnRpY2VzLiBXZSBjYW4ndCBzdXBwb3J0IHRoZW0KKyAgICAgICAgICAgICBjb25z dCBNREw6OkJvbmVUcmFuc2Zvcm1fTURMNyAqcGNCb25lVHJhbnNmb3JtcyA9IChjb25zdCBNREw6 OkJvbmVUcmFuc2Zvcm1fTURMNyAqKSgoKGNvbnN0IGNoYXIgKilmcmFtZS5wY0ZyYW1lKSArIHBj SGVhZGVyLT5mcmFtZV9zdGNfc2l6ZSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZnJhbWUucGNGcmFtZS0+dmVydGljZXNfY291bnQgKiBwY0hlYWRlci0+ZnJhbWV2 ZXJ0ZXhfc3RjX3NpemUpOworKyAgICAgICAgICAgIC8vIENvbmZpcm0gdGhhdCB0aGUgYm9uZSB0 cmFuc2Zvcm1hdGlvbiBtYXRyaWNlcyBhcmUgd2l0aGluIHRoZSBmaWxlLgorKyAgICAgICAgICAg IGNvbnN0IHNpemVfdCBib25lVHJhbnNmb3JtU3BhbiA9IHNpemVvZihNREw6OkJvbmVUcmFuc2Zv cm1fTURMNykgKworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN0YXRpY19jYXN0PHNpemVfdD4oZnJhbWUucGNGcmFtZS0+dHJhbnNtYXRyaXhfY291bnQgLSAx dSkgKiBwY0hlYWRlci0+Ym9uZXRyYW5zX3N0Y19zaXplOworKyAgICAgICAgICAgIFZBTElEQVRF X0ZJTEVfU0laRShyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIgKj4ocGNCb25lVHJhbnNmb3Jt cykgKyBib25lVHJhbnNmb3JtU3Bhbik7CisgCisgICAgICAgICAgICAgLy8gcmVhZCBhbGwgdHJh bnNmb3JtYXRpb24gbWF0cmljZXMKKyAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGludCBpVHJh Zm8gPSAwOyBpVHJhZm8gPCBmcmFtZS5wY0ZyYW1lLT50cmFuc21hdHJpeF9jb3VudDsgKytpVHJh Zm8pIHsKCmRpZmYgLS1naXQgYS9hc3NpbXAtZG9jcy5wYXRjaCBiL2Fzc2ltcC1kb2NzLnBhdGNo CmluZGV4IDQ0MjM1NjQuLjI4YTk2NzkgMTAwNjQ0Ci0tLSBhL2Fzc2ltcC1kb2NzLnBhdGNoCisr KyBiL2Fzc2ltcC1kb2NzLnBhdGNoCkBAIC0xLDYgKzEsNiBAQAogZGlmZiAtcnVwTiAtLW5vLWRl cmVmZXJlbmNlIGFzc2ltcC02LjAuNS9kb2MvQ01ha2VMaXN0cy50eHQgYXNzaW1wLTYuMC41LW5l dy9kb2MvQ01ha2VMaXN0cy50eHQKIC0tLSBhc3NpbXAtNi4wLjUvZG9jL0NNYWtlTGlzdHMudHh0 CTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYXNzaW1wLTYuMC41LW5l dy9kb2MvQ01ha2VMaXN0cy50eHQJMjAyNi0wNS0wMSAyMzowNTo1Ny4yNTkyODY0MzIgKzAyMDAK KysrKyBhc3NpbXAtNi4wLjUtbmV3L2RvYy9DTWFrZUxpc3RzLnR4dAkyMDI2LTA5LTE4IDIzOjI2 OjA2LjU0MDc4NDk2MSArMDIwMAogQEAgLTMzLDkgKzMzLDkgQEAgaWYoIERFRklORUQgQ01BS0Vf SU5TVEFMTF9ET0NESVIgKQogICAgICAgICAgREVTVElOQVRJT04gJHtDTUFLRV9JTlNUQUxMX0RP Q0RJUn0KICAgICAgKQpAQCAtMTYsNyArMTYsNyBAQCBkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVu Y2UgYXNzaW1wLTYuMC41L2RvYy9DTWFrZUxpc3RzLnR4dCBhc3NpbXAtNi4wLjUtbmV3L2RvYwog IGVuZGlmKCkKIGRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBhc3NpbXAtNi4wLjUvZG9jL0Rv eHlmaWxlLmluIGFzc2ltcC02LjAuNS1uZXcvZG9jL0RveHlmaWxlLmluCiAtLS0gYXNzaW1wLTYu MC41L2RvYy9Eb3h5ZmlsZS5pbgkyMDI2LTA0LTMwIDExOjE1OjA5LjAwMDAwMDAwMCArMDIwMAot KysrIGFzc2ltcC02LjAuNS1uZXcvZG9jL0RveHlmaWxlLmluCTIwMjYtMDUtMDEgMjM6MDU6NTcu MjU5NjY1NTM4ICswMjAwCisrKysgYXNzaW1wLTYuMC41LW5ldy9kb2MvRG94eWZpbGUuaW4JMjAy Ni0wOS0xOCAyMzoyNjowNi41NDEzNTk1NDEgKzAyMDAKIEBAIC05NTIsNyArOTUyLDcgQEAgUkVD VVJTSVZFICAgICAgICAgICAgICA9IE5PCiAgIyBOb3RlIHRoYXQgcmVsYXRpdmUgcGF0aHMgYXJl IHJlbGF0aXZlIHRvIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCBkb3h5Z2VuIGlzCiAgIyBydW4u CgpkaWZmIC0tZ2l0IGEvYXNzaW1wLW5vemxpYi5wYXRjaCBiL2Fzc2ltcC1ub3psaWIucGF0Y2gK aW5kZXggNTg2NjJhMi4uZmZhYzE5YyAxMDA2NDQKLS0tIGEvYXNzaW1wLW5vemxpYi5wYXRjaAor KysgYi9hc3NpbXAtbm96bGliLnBhdGNoCkBAIC0xLDYgKzEsNiBAQAogZGlmZiAtcnVwTiAtLW5v LWRlcmVmZXJlbmNlIGFzc2ltcC02LjAuNS9jb250cmliL3psaWIvQ01ha2VMaXN0cy50eHQgYXNz aW1wLTYuMC41LW5ldy9jb250cmliL3psaWIvQ01ha2VMaXN0cy50eHQKIC0tLSBhc3NpbXAtNi4w LjUvY29udHJpYi96bGliL0NNYWtlTGlzdHMudHh0CTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAw MDAwICswMjAwCi0rKysgYXNzaW1wLTYuMC41LW5ldy9jb250cmliL3psaWIvQ01ha2VMaXN0cy50 eHQJMjAyNi0wNS0wMSAyMzowNTo1Ni45NjY2OTk1ODggKzAyMDAKKysrKyBhc3NpbXAtNi4wLjUt bmV3L2NvbnRyaWIvemxpYi9DTWFrZUxpc3RzLnR4dAkyMDI2LTA5LTE4IDIzOjI2OjA2LjE3MzQ1 Mzk2MSArMDIwMAogQEAgLTE5Niw3ICsxOTYsNyBAQCBpZihNSU5HVykKICAgICAgc2V0KFpMSUJf RExMX1NSQ1MgJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L3psaWIxcmMub2JqKQogIGVuZGlm KE1JTkdXKQoKZGlmZiAtLWdpdCBhL2Fzc2ltcC1weXRob25wYXRoLnBhdGNoIGIvYXNzaW1wLXB5 dGhvbnBhdGgucGF0Y2gKaW5kZXggZjVlZDA3My4uODY5MWFiMCAxMDA2NDQKLS0tIGEvYXNzaW1w LXB5dGhvbnBhdGgucGF0Y2gKKysrIGIvYXNzaW1wLXB5dGhvbnBhdGgucGF0Y2gKQEAgLTEsNiAr MSw2IEBACiBkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYuMC41L3BvcnQvUHlB c3NpbXAvcHlhc3NpbXAvaGVscGVyLnB5IGFzc2ltcC02LjAuNS1uZXcvcG9ydC9QeUFzc2ltcC9w eWFzc2ltcC9oZWxwZXIucHkKIC0tLSBhc3NpbXAtNi4wLjUvcG9ydC9QeUFzc2ltcC9weWFzc2lt cC9oZWxwZXIucHkJMjAyNi0wNC0zMCAxMToxNTowOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBhc3Np bXAtNi4wLjUtbmV3L3BvcnQvUHlBc3NpbXAvcHlhc3NpbXAvaGVscGVyLnB5CTIwMjYtMDUtMDEg MjM6MDU6NTYuNjg1MTI5ODU1ICswMjAwCisrKysgYXNzaW1wLTYuMC41LW5ldy9wb3J0L1B5QXNz aW1wL3B5YXNzaW1wL2hlbHBlci5weQkyMDI2LTA5LTE4IDIzOjI2OjA1Ljc4MDY3MTI0NSArMDIw MAogQEAgLTI5LDYgKzI5LDcgQEAgYWRkaXRpb25hbF9kaXJzLCBleHRfd2hpdGVsaXN0ID0gW10s W10KICAjIGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0gd2UncmUgcnVubmluZyBvbi4KICBpZiBv cy5uYW1lPT0ncG9zaXgnOgoKZGlmZiAtLWdpdCBhL2Fzc2ltcC10ZXN0cy5wYXRjaCBiL2Fzc2lt cC10ZXN0cy5wYXRjaAppbmRleCAzMWI3ZGM1Li40MDUxZmZkIDEwMDY0NAotLS0gYS9hc3NpbXAt dGVzdHMucGF0Y2gKKysrIGIvYXNzaW1wLXRlc3RzLnBhdGNoCkBAIC0xLDYgKzEsNiBAQAogZGlm ZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02LjAuNS9DTWFrZUxpc3RzLnR4dCBhc3Np bXAtNi4wLjUtbmV3L0NNYWtlTGlzdHMudHh0CiAtLS0gYXNzaW1wLTYuMC41L0NNYWtlTGlzdHMu dHh0CTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYXNzaW1wLTYuMC41 LW5ldy9DTWFrZUxpc3RzLnR4dAkyMDI2LTA1LTAxIDIzOjA1OjU3LjU0NTY2MDM3MiArMDIwMAor KysrIGFzc2ltcC02LjAuNS1uZXcvQ01ha2VMaXN0cy50eHQJMjAyNi0wOS0xOCAyMzoyNjowNi45 MDU4MDY4NzggKzAyMDAKIEBAIC04MjMsNiArODIzLDcgQEAgSUYgKCBBU1NJTVBfQlVJTERfU0FN UExFUyApCiAgRU5ESUYgKCkKICAKQEAgLTEwLDggKzEwLDggQEAgZGlmZiAtcnVwTiAtLW5vLWRl cmVmZXJlbmNlIGFzc2ltcC02LjAuNS9DTWFrZUxpc3RzLnR4dCBhc3NpbXAtNi4wLjUtbmV3L0NN YWtlTGkKICBFTkRJRiAoKQogIAogZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02 LjAuNS90ZXN0L0NNYWtlTGlzdHMudHh0IGFzc2ltcC02LjAuNS1uZXcvdGVzdC9DTWFrZUxpc3Rz LnR4dAotLS0tIGFzc2ltcC02LjAuNS90ZXN0L0NNYWtlTGlzdHMudHh0CTIwMjYtMDUtMDEgMjM6 MDU6NTYuNjgwNTEyNjUzICswMjAwCi0rKysgYXNzaW1wLTYuMC41LW5ldy90ZXN0L0NNYWtlTGlz dHMudHh0CTIwMjYtMDUtMDEgMjM6MDU6NTcuNTQ1OTg3OTcwICswMjAwCistLS0gYXNzaW1wLTYu MC41L3Rlc3QvQ01ha2VMaXN0cy50eHQJMjAyNi0wOS0xOCAyMzoyNjowNS43NzUwOTU0NTEgKzAy MDAKKysrKyBhc3NpbXAtNi4wLjUtbmV3L3Rlc3QvQ01ha2VMaXN0cy50eHQJMjAyNi0wOS0xOCAy MzoyNjowNi45MDY5OTE3NDggKzAyMDAKIEBAIC0zNiw2ICszNiw3IEBACiAgIwogICMtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCgpkaWZmIC0tZ2l0IGEvYXNzaW1wLXVuYnVuZGxlLnBhdGNoIGIvYXNzaW1wLXVuYnVu ZGxlLnBhdGNoCmluZGV4IDJjZTBmZmQuLjU4MWM0NTcgMTAwNjQ0Ci0tLSBhL2Fzc2ltcC11bmJ1 bmRsZS5wYXRjaAorKysgYi9hc3NpbXAtdW5idW5kbGUucGF0Y2gKQEAgLTEsNiArMSw2IEBACiBk aWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYuMC41L2NvZGUvQXNzZXRMaWIvQmxl bmRlci9CbGVuZGVyVGVzc2VsbGF0b3IuaCBhc3NpbXAtNi4wLjUtbmV3L2NvZGUvQXNzZXRMaWIv QmxlbmRlci9CbGVuZGVyVGVzc2VsbGF0b3IuaAogLS0tIGFzc2ltcC02LjAuNS9jb2RlL0Fzc2V0 TGliL0JsZW5kZXIvQmxlbmRlclRlc3NlbGxhdG9yLmgJMjAyNi0wNC0zMCAxMToxNTowOS4wMDAw MDAwMDAgKzAyMDAKLSsrKyBhc3NpbXAtNi4wLjUtbmV3L2NvZGUvQXNzZXRMaWIvQmxlbmRlci9C bGVuZGVyVGVzc2VsbGF0b3IuaAkyMDI2LTA1LTAxIDIzOjA1OjU2LjM5NDk5NDI2NSArMDIwMAor KysrIGFzc2ltcC02LjAuNS1uZXcvY29kZS9Bc3NldExpYi9CbGVuZGVyL0JsZW5kZXJUZXNzZWxs YXRvci5oCTIwMjYtMDktMTggMjM6MjY6MDUuMzkzODI5NDEzICswMjAwCiBAQCAtMTQzLDcgKzE0 Myw3IEBAIG5hbWVzcGFjZSBBc3NpbXAKICAKICAjaWYgQVNTSU1QX0JMRU5EX1dJVEhfUE9MWV8y X1RSSQpAQCAtMTIsNyArMTIsNyBAQCBkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1w LTYuMC41L2NvZGUvQXNzZXRMaWIvQmxlbmRlci9CbGVuZGVyVGVzc2VsbGF0bwogIHsKIGRpZmYg LXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBhc3NpbXAtNi4wLjUvY29kZS9Bc3NldExpYi9JRkMvSUZD R2VvbWV0cnkuY3BwIGFzc2ltcC02LjAuNS1uZXcvY29kZS9Bc3NldExpYi9JRkMvSUZDR2VvbWV0 cnkuY3BwCiAtLS0gYXNzaW1wLTYuMC41L2NvZGUvQXNzZXRMaWIvSUZDL0lGQ0dlb21ldHJ5LmNw cAkyMDI2LTA0LTMwIDExOjE1OjA5LjAwMDAwMDAwMCArMDIwMAotKysrIGFzc2ltcC02LjAuNS1u ZXcvY29kZS9Bc3NldExpYi9JRkMvSUZDR2VvbWV0cnkuY3BwCTIwMjYtMDUtMDEgMjM6MDU6NTYu Mzk1NDg4NzIzICswMjAwCisrKysgYXNzaW1wLTYuMC41LW5ldy9jb2RlL0Fzc2V0TGliL0lGQy9J RkNHZW9tZXRyeS5jcHAJMjAyNi0wOS0xOCAyMzoyNjowNS4zOTQ5Nzc2MTggKzAyMDAKIEBAIC00 NSw3ICs0NSw3IEBAIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKICAj aW5jbHVkZSAiSUZDVXRpbC5oIgogICNpbmNsdWRlICJDb21tb24vUG9seVRvb2xzLmgiCkBAIC0y NCw3ICsyNCw3IEBAIGRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBhc3NpbXAtNi4wLjUvY29k ZS9Bc3NldExpYi9JRkMvSUZDR2VvbWV0cnkuY3BwIGFzc2ltCiAgI2luY2x1ZGUgPGl0ZXJhdG9y PgogZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02LjAuNS9jb2RlL0Fzc2V0TGli L0lGQy9JRkNPcGVuaW5ncy5jcHAgYXNzaW1wLTYuMC41LW5ldy9jb2RlL0Fzc2V0TGliL0lGQy9J RkNPcGVuaW5ncy5jcHAKIC0tLSBhc3NpbXAtNi4wLjUvY29kZS9Bc3NldExpYi9JRkMvSUZDT3Bl bmluZ3MuY3BwCTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYXNzaW1w LTYuMC41LW5ldy9jb2RlL0Fzc2V0TGliL0lGQy9JRkNPcGVuaW5ncy5jcHAJMjAyNi0wNS0wMSAy MzowNTo1Ni4zOTU5NDQ3NTcgKzAyMDAKKysrKyBhc3NpbXAtNi4wLjUtbmV3L2NvZGUvQXNzZXRM aWIvSUZDL0lGQ09wZW5pbmdzLmNwcAkyMDI2LTA5LTE4IDIzOjI2OjA1LjM5NTUyODM0NSArMDIw MAogQEAgLTQ3LDcgKzQ3LDcgQEAgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G IFRIRQogICNpbmNsdWRlICJJRkNVdGlsLmgiCiAgI2luY2x1ZGUgIkNvbW1vbi9Qb2x5VG9vbHMu aCIKQEAgLTM2LDcgKzM2LDcgQEAgZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02 LjAuNS9jb2RlL0Fzc2V0TGliL0lGQy9JRkNPcGVuaW5ncy5jcHAgYXNzaW0KICAjaW5jbHVkZSA8 ZGVxdWU+CiBkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYuMC41L2NvZGUvQ01h a2VMaXN0cy50eHQgYXNzaW1wLTYuMC41LW5ldy9jb2RlL0NNYWtlTGlzdHMudHh0CiAtLS0gYXNz aW1wLTYuMC41L2NvZGUvQ01ha2VMaXN0cy50eHQJMjAyNi0wNC0zMCAxMToxNTowOS4wMDAwMDAw MDAgKzAyMDAKLSsrKyBhc3NpbXAtNi4wLjUtbmV3L2NvZGUvQ01ha2VMaXN0cy50eHQJMjAyNi0w NS0wMSAyMzowNTo1Ni4zOTY0ODg3NzQgKzAyMDAKKysrKyBhc3NpbXAtNi4wLjUtbmV3L2NvZGUv Q01ha2VMaXN0cy50eHQJMjAyNi0wOS0xOCAyMzoyNjowNS4zOTYwNTkwOTkgKzAyMDAKIEBAIC0x MTE3LDEzICsxMTE3LDcgQEAgSUYoQVNTSU1QX0hVTlRFUl9FTkFCTEVEKQogICAgaHVudGVyX2Fk ZF9wYWNrYWdlKHB1Z2l4bWwpCiAgICBmaW5kX3BhY2thZ2UocHVnaXhtbCBDT05GSUcgUkVRVUlS RUQpCkBAIC0xNjQsNyArMTY0LDcgQEAgZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2lt cC02LjAuNS9jb2RlL0NNYWtlTGlzdHMudHh0IGFzc2ltcC02LjAuNS1uZXcvY28KICBpZihBU1NJ TVBfQU5EUk9JRF9KTklJT1NZU1RFTSkKIGRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBhc3Np bXAtNi4wLjUvY29kZS9Qb3N0UHJvY2Vzc2luZy9Ucmlhbmd1bGF0ZVByb2Nlc3MuY3BwIGFzc2lt cC02LjAuNS1uZXcvY29kZS9Qb3N0UHJvY2Vzc2luZy9Ucmlhbmd1bGF0ZVByb2Nlc3MuY3BwCiAt LS0gYXNzaW1wLTYuMC41L2NvZGUvUG9zdFByb2Nlc3NpbmcvVHJpYW5ndWxhdGVQcm9jZXNzLmNw cAkyMDI2LTA0LTMwIDExOjE1OjA5LjAwMDAwMDAwMCArMDIwMAotKysrIGFzc2ltcC02LjAuNS1u ZXcvY29kZS9Qb3N0UHJvY2Vzc2luZy9Ucmlhbmd1bGF0ZVByb2Nlc3MuY3BwCTIwMjYtMDUtMDEg MjM6MDU6NTYuMzk2ODA0MjM1ICswMjAwCisrKysgYXNzaW1wLTYuMC41LW5ldy9jb2RlL1Bvc3RQ cm9jZXNzaW5nL1RyaWFuZ3VsYXRlUHJvY2Vzcy5jcHAJMjAyNi0wOS0xOCAyMzoyNjowNS4zOTY3 OTAxOTMgKzAyMDAKIEBAIC02Miw3ICs2Miw3IEBAIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg QURWSVNFRCBPRiBUSEUKICAjaW5jbHVkZSAiUG9zdFByb2Nlc3NpbmcvVHJpYW5ndWxhdGVQcm9j ZXNzLmgiCiAgI2luY2x1ZGUgIlBvc3RQcm9jZXNzaW5nL1Byb2Nlc3NIZWxwZXIuaCIKQEAgLTE3 Niw3ICsxNzYsNyBAQCBkaWZmIC1ydXBOIC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYuMC41L2Nv ZGUvUG9zdFByb2Nlc3NpbmcvVHJpYW5ndWxhdGVQcm9jZXNzLgogICNpbmNsdWRlIDxjc3RkaW50 PgogZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02LjAuNS9zYW1wbGVzL1NpbXBs ZVRleHR1cmVkT3BlbkdML1NpbXBsZVRleHR1cmVkT3BlbkdML3NyYy9tb2RlbF9sb2FkaW5nLmNw cCBhc3NpbXAtNi4wLjUtbmV3L3NhbXBsZXMvU2ltcGxlVGV4dHVyZWRPcGVuR0wvU2ltcGxlVGV4 dHVyZWRPcGVuR0wvc3JjL21vZGVsX2xvYWRpbmcuY3BwCiAtLS0gYXNzaW1wLTYuMC41L3NhbXBs ZXMvU2ltcGxlVGV4dHVyZWRPcGVuR0wvU2ltcGxlVGV4dHVyZWRPcGVuR0wvc3JjL21vZGVsX2xv YWRpbmcuY3BwCTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYXNzaW1w LTYuMC41LW5ldy9zYW1wbGVzL1NpbXBsZVRleHR1cmVkT3BlbkdML1NpbXBsZVRleHR1cmVkT3Bl bkdML3NyYy9tb2RlbF9sb2FkaW5nLmNwcAkyMDI2LTA1LTAxIDIzOjA1OjU2LjM5NzAxODI4OSAr MDIwMAorKysrIGFzc2ltcC02LjAuNS1uZXcvc2FtcGxlcy9TaW1wbGVUZXh0dXJlZE9wZW5HTC9T aW1wbGVUZXh0dXJlZE9wZW5HTC9zcmMvbW9kZWxfbG9hZGluZy5jcHAJMjAyNi0wOS0xOCAyMzoy NjowNS4zOTcyMDY0MjEgKzAyMDAKIEBAIC0yNCw3ICsyNCw3IEBACiAgI2VuZGlmIC8vIF9NU0Nf VkVSCiAgCkBAIC0xODgsNyArMTg4LDcgQEAgZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFz c2ltcC02LjAuNS9zYW1wbGVzL1NpbXBsZVRleHR1cmVkT3BlbkdML1NpbXBsZVRleHQKICAjcHJh Z21hIHdhcm5pbmcoZGVmYXVsdDogNDEwMCkgLy8gRW5hYmxlIHdhcm5pbmcgJ3VucmVmZXJlbmNl ZCBmb3JtYWwgcGFyYW1ldGVyJwogZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02 LjAuNS90ZXN0L0NNYWtlTGlzdHMudHh0IGFzc2ltcC02LjAuNS1uZXcvdGVzdC9DTWFrZUxpc3Rz LnR4dAogLS0tIGFzc2ltcC02LjAuNS90ZXN0L0NNYWtlTGlzdHMudHh0CTIwMjYtMDQtMzAgMTE6 MTU6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYXNzaW1wLTYuMC41LW5ldy90ZXN0L0NNYWtlTGlz dHMudHh0CTIwMjYtMDUtMDEgMjM6MDU6NTYuMzk3MjQwNDYyICswMjAwCisrKysgYXNzaW1wLTYu MC41LW5ldy90ZXN0L0NNYWtlTGlzdHMudHh0CTIwMjYtMDktMTggMjM6MjY6MDUuMzk3NjQ4Njcw ICswMjAwCiBAQCAtNDMsMTQgKzQzLDYgQEAgSU5DTFVERV9ESVJFQ1RPUklFUygKICAgICAgJHtB c3NpbXBfU09VUkNFX0RJUn0vY29kZQogICkKQEAgLTIzNiw3ICsyMzYsNyBAQCBkaWZmIC1ydXBO IC0tbm8tZGVyZWZlcmVuY2UgYXNzaW1wLTYuMC41L3Rlc3QvQ01ha2VMaXN0cy50eHQgYXNzaW1w LTYuMC41LW5ldy90ZQogICAgQUREX0RFRklOSVRJT05TKCAtREFTU0lNUF9FTkFCTEVfRFJBQ08g KQogZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIGFzc2ltcC02LjAuNS90ZXN0L3VuaXQvdXRn bFRGMkltcG9ydEV4cG9ydC5jcHAgYXNzaW1wLTYuMC41LW5ldy90ZXN0L3VuaXQvdXRnbFRGMklt cG9ydEV4cG9ydC5jcHAKIC0tLSBhc3NpbXAtNi4wLjUvdGVzdC91bml0L3V0Z2xURjJJbXBvcnRF eHBvcnQuY3BwCTIwMjYtMDQtMzAgMTE6MTU6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYXNzaW1w LTYuMC41LW5ldy90ZXN0L3VuaXQvdXRnbFRGMkltcG9ydEV4cG9ydC5jcHAJMjAyNi0wNS0wMSAy MzowNTo1Ni4zOTc0ODg4MjYgKzAyMDAKKysrKyBhc3NpbXAtNi4wLjUtbmV3L3Rlc3QvdW5pdC91 dGdsVEYySW1wb3J0RXhwb3J0LmNwcAkyMDI2LTA5LTE4IDIzOjI2OjA1LjM5ODExMjE3OCArMDIw MAogQEAgLTk4Nyw3ICs5ODcsNyBAQCBuYW1lc3BhY2UgewogICAgICAgICAgICAgIHJhcGlkanNv bjo6RG9jdW1lbnQgc2NoZW1hRG9jOwogICAgICAgICAgICAgIHNjaGVtYURvYy5QYXJzZShSIj09 KHsicHJvcGVydGllcyI6eyJzY2VuZSIgOiB7ICJ0eXBlIiA6ICJpbnRlZ2VyIiB9fSwgInJlcXVp cmVkIjogWyAic2NlbmUiIF19KT09Iik7CgpkaWZmIC0tZ2l0IGEvYXNzaW1wLnNwZWMgYi9hc3Np bXAuc3BlYwppbmRleCBlNGI1YzNjLi41MWJiZTc5IDEwMDY0NAotLS0gYS9hc3NpbXAuc3BlYwor KysgYi9hc3NpbXAuc3BlYwpAQCAtMiw3ICsyLDcgQEAKIAogTmFtZTogICAgICAgICAgIGFzc2lt cAogVmVyc2lvbjogICAgICAgIDYuMC41Ci1SZWxlYXNlOiAgICAgICAgNCV7P2Rpc3R9CitSZWxl YXNlOiAgICAgICAgNSV7P2Rpc3R9CiBTdW1tYXJ5OiAgICAgICAgTGlicmFyeSB0byBpbXBvcnQg dmFyaW91cyAzRCBtb2RlbCBmb3JtYXRzIGludG8gYXBwbGljYXRpb25zCiAKICMgQXNzaW1wIGlz IEJTRApAQCAtMzMsNiArMzMsMTYgQEAgUGF0Y2gyOiAgICAgICAgICV7bmFtZX0tbm96bGliLnBh dGNoCiBQYXRjaDM6ICAgICAgICAgJXtuYW1lfS1kb2NzLnBhdGNoCiAjIEVuYWJsZSBjdGVzdAog UGF0Y2g0OiAgICAgICAgICV7bmFtZX0tdGVzdHMucGF0Y2gKKyMgaHR0cHM6Ly9naXRodWIuY29t L2Fzc2ltcC9hc3NpbXAvY29tbWl0L2ViODRlZWM1ODBkM2Y0YmEyZjBmZDg3NDA5YjdkMDc0NDYy MGYxMWUKK1BhdGNoNTogICAgICAgICBDVkUtMjAyNi0xNDYxMC5wYXRjaAorIyBodHRwczovL2dp dGh1Yi5jb20vYXNzaW1wL2Fzc2ltcC9jb21taXQvYzM5ZDhjMTVkYmJlMDMxNzRhZjYxZDhlZWRi YmY5MDEyMGY0ZWI5ZgorUGF0Y2g2OiAgICAgICAgIENWRS0yMDI2LTE5OTY4LnBhdGNoCisjIGh0 dHBzOi8vZ2l0aHViLmNvbS9hc3NpbXAvYXNzaW1wL2NvbW1pdC81MGQ3Njc5ODRlNzhkNTFiNTNl MjAyMGZkZjA5NjdmZDYyNGJjMzc3CitQYXRjaDc6ICAgICAgICAgQ1ZFLTIwMjYtMTk5OTkucGF0 Y2gKKyMgaHR0cHM6Ly9naXRodWIuY29tL0RlckRva3RvclgvYXNzaW1wL2NvbW1pdC9hMDdhMjVk OWEzNDgxNTJmMmViN2YzMzU5OTA5YTJjYjlkMGIyNzAyCitQYXRjaDg6ICAgICAgICAgQ1ZFLTIw MjYtMTQ2MDQucGF0Y2gKKyMgaHR0cHM6Ly9naXRodWIuY29tL2Fzc2ltcC9hc3NpbXAvcHVsbC82 ODY5CitQYXRjaDk6ICAgICAgICAgQ1ZFLTIwMjUtMTU2NjYucGF0Y2gKIAogCiBCdWlsZFJlcXVp cmVzOiAgYm9vc3QtZGV2ZWwKQEAgLTE3OCw2ICsxODgsMTAgQEAgZXhjbHVkZT0idXRNRDVJbXBv cnRlci5pbXBvcnRCb2FyTWFufHV0TUQ1SW1wb3J0ZXIuaW1wb3J0Qm9ifHV0TUQySW1wb3J0ZXIu aW1wb3IKIAogCiAlY2hhbmdlbG9nCisqIEZyaSBTZXAgMTggMjAyNiBTYW5kcm8gTWFuaSA8bWFu aXNhbmRyb0BnbWFpbC5jb20+IC0gNi4wLjUtNQorLSBBZGQgZml4ZXMgZm9yIENWRS0yMDI2LTE0 NjEwLCBDVkUtMjAyNi0xOTk2OCwgQ1ZFLTIwMjYtMTk5OTksIENWRS0yMDI2LTE0NjA0LAorICBD VkUtMjAyNS0xNTY2NgorCiAqIFdlZCBKdWwgMTUgMjAyNiBGZWRvcmEgUmVsZWFzZSBFbmdpbmVl cmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDYuMC41LTQKIC0gUmVidWlsdCBmb3Ig aHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV80NV9NYXNzX1JlYnVpbGQKIAo=