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: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] fix-dup-patch: Import upstream 7.11 branch stable fixes. Date: Thu, 23 Jul 2026 18:32:17 GMT Message-ID: <178483153784.1.7813190855964484195.rpms-gdb-bd0820fa32bd@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: fix-dup-patch X-Git-Rev: bd0820fa32bdb7e71490d311aff65505ed7ad3da QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGZpeC1kdXAtcGF0Y2gKQ29tbWl0IDogYmQwODIwZmEzMmJkYjdlNzE0OTBkMzExYWZmNjU1MDVl ZDdhZDNkYQpBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNv bT4KRGF0ZSAgIDogMjAxNi0wNC0wNlQyMTozNDozNCswMjowMApTdGF0cyAgOiArMTc3My8tMSBp biAyIGZpbGUocykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9n ZGIvYy9iZDA4MjBmYTMyYmRiN2U3MTQ5MGQzMTFhZmY2NTUwNWVkN2FkM2RhP2JyYW5jaD1maXgt ZHVwLXBhdGNoCgpMb2c6CkltcG9ydCB1cHN0cmVhbSA3LjExIGJyYW5jaCBzdGFibGUgZml4ZXMu CgotLS0KZGlmZiAtLWdpdCBhL2dkYi11cHN0cmVhbS5wYXRjaCBiL2dkYi11cHN0cmVhbS5wYXRj aAppbmRleCAxODQ5M2ZmLi5jMjYxZTc1IDEwMDY0NAotLS0gYS9nZGItdXBzdHJlYW0ucGF0Y2gK KysrIGIvZ2RiLXVwc3RyZWFtLnBhdGNoCkBAIC0yODYsMyArMjg2LDE3NzIgQEAgRGF0ZTogICBX ZWQgQXByIDYgMTU6NTc6MDggMjAxNiArMDIwMAogIAkgIHJldHVybjsKICAJfQogICAgICAgIGFy Z3MuYmZkID0gYmZkOworCisKKworY29tbWl0IDJlZjM0ZDExZjYxZDc5ZGNiMTUyNzEzYWEwNTkw NTFkOGNkMzI5NWQKK0F1dGhvcjogTWFya3VzIE1ldHpnZXIgPG1hcmt1cy50Lm1ldHpnZXJAaW50 ZWwuY29tPgorRGF0ZTogICBGcmkgRmViIDUgMDk6MzI6NTMgMjAxNiArMDEwMAorCisgICAgYnRy YWNlOiBmaXggUFIgZ2RiLzE5ODI5CisgICAgCisgICAgVGhpcyBpcyBhIGJhY2twb3J0IG9mCisg ICAgCisgICAgMzNiNDc3N2NhMWI3IGJ0cmFjZSwgZnJhbWU6IGZpeCBjcmFzaCBpbiBnZXRfZnJh bWVfdHlwZQorICAgIGEwMzhmYTNlMTRhNCBzdGFjazogY2hlY2sgZnJhbWVfdW53aW5kX2NhbGxl cl9pZAorICAgIDJmM2VmNjA2YjkxMiBmcmFtZTogYWRkIHNraXBfdGFpbGNhbGxfZnJhbWVzCisg ICAgCisgICAgSW4gc2tpcF9hcnRpZmljaWFsX2ZyYW1lcyB3ZSByZXBlYXRlZGx5IGNhbGwgZ2V0 X3ByZXZfZnJhbWVfYWx3YXlzIHVudGlsIHdlIGdldAorICAgIGEgbm9uLWlubGluZSBhbmQgbm9u LXRhaWxjYWxsIGZyYW1lIGFzc3VtaW5nIHRoYXQgdGhlcmUgbXVzdCBiZSBzdWNoIGEgZnJhbWUK KyAgICBldmVudHVhbGx5LgorICAgIAorICAgIEZvciByZWNvcmQgdGFyZ2V0cywgaG93ZXZlciwg d2UgbWF5IGhhdmUgYSBmcmFtZSBjaGFpbiB0aGF0IGNvbnNpc3RzIG9ubHkgb2YKKyAgICBhcnRp ZmljaWFsIGZyYW1lcy4gIFRoaXMgbGVhZHMgdG8gYSBjcmFzaCBpbiBnZXRfZnJhbWVfdHlwZSB3 aGVuIGRlcmVmZXJlbmNpbmcgYQorICAgIE5VTEwgZnJhbWUgcG9pbnRlci4KKyAgICAKKyAgICBD aGFuZ2Ugc2tpcF9hcnRpZmljaWFsX2ZyYW1lcyBhbmQgc2tpcF90YWlsY2FsbF9mcmFtZXMgdG8g cmV0dXJuIE5VTEwgaW4gc3VjaCBhCisgICAgY2FzZSBhbmQgbW9kaWZ5IGVhY2ggY2FsbGVyIHRv IGNvcGUgd2l0aCBhIE5VTEwgcmV0dXJuLgorICAgIAorICAgIEluIGZyYW1lX3Vud2luZF9jYWxs ZXJfcGMgYW5kIGZyYW1lX3Vud2luZF9jYWxsZXJfYXJjaCwgd2Ugc2ltcGx5IGFzc2VydCB0aGF0 CisgICAgdGhlIHJldHVybmVkIHZhbHVlIGlzIG5vdCBOVUxMLiAgVGhlaXIgY2FsbGVyIHdhcyBz dXBwb3NlZCB0byBjaGVjaworICAgIGZyYW1lX3Vud2luZF9jYWxsZXJfaWQgYmVmb3JlIGNhbGxp bmcgdGhvc2UgZnVuY3Rpb25zLgorICAgIAorICAgIEluIG90aGVyIGNhc2VzLCB3ZSB0aHJvd24g YW4gZXJyb3IuCisgICAgCisgICAgSW4gaW5mY21kIGZ1cnRoZXIgbW92ZSB0aGUgc2tpcF90YWls Y2FsbF9mcmFtZXMgY2FsbCB0byB0aGUgZm9yd2FyZC1zdGVwcGluZworICAgIGNhc2Ugc2luY2Ug d2UgZG9uJ3QgbmVlZCBhIGZyYW1lIGZvciByZXZlcnNlIGV4ZWN1dGlvbiBhbmQgd2UgZG9uJ3Qg d2FudCB0byBmYWlsCisgICAgYmVjYXVzZSBvZiB0aGF0LiAgUmV2ZXJzZS1maW5pc2ggZG9lcyBt YWtlIHNlbnNlIGZvciBhIHRhaWxjYWxsIGZyYW1lLgorICAgIAorICAgIGdkYi8KKyAgICAJKiBm cmFtZS5oIChza2lwX3RhaWxjYWxsX2ZyYW1lcyk6IE5ldy4KKyAgICAJKiBpbmZjbWQuYyAoZmlu aXNoX2NvbW1hbmQpOiBDYWxsIHNraXBfdGFpbGNhbGxfZnJhbWVzLgorICAgIAkqIGZyYW1lLmMg KHNraXBfYXJ0aWZpY2lhbF9mcmFtZXMpOiBSZXR1cm4gTlVMTCBpZiBvbmx5IGFydGlmaWNpYWwg ZnJhbWVzCisgICAgCWFyZSBmb3VuZC4gIFVwZGF0ZSBjb21tZW50LgorICAgIAkoZnJhbWVfcG9w KTogQ2FsbCBza2lwX3RhaWxjYWxsX2ZyYW1lcy4KKyAgICAJKGZyYW1lX3Vud2luZF9jYWxsZXJf aWQpOiBIYW5kbGUgTlVMTCByZXR1cm4uCisgICAgCShmcmFtZV91bndpbmRfY2FsbGVyX3BjLCBm cmFtZV91bndpbmRfY2FsbGVyX2FyY2gpOiBBc3NlcnQgdGhhdAorICAgIAlza2lwX2FydGlmaWNp YWxfZnJhbWVzIGRvZXMgbm90IHJldHVybiBOVUxMLgorICAgIAkoZnJhbWVfcG9wKTogQWRkIGFu IGVycm9yIGlmIG9ubHkgdGFpbGNhbGwgZnJhbWVzIGFyZSBmb3VuZC4KKyAgICAJKiBpbmZjbWQu YyAoZmluaXNoX2NvbW1hbmQpOiBNb3ZlIHNraXBfdGFpbGNhbGxfZnJhbWVzIGNhbGwgaW50byBm b3J3YXJkLQorICAgIAlleGVjdXRpb24gY2FzZS4gIEFkZCBhbiBlcnJvciBpZiBvbmx5IHRhaWxj YWxsIGZyYW1lcyBhcmUgZm91bmQuCisgICAgCSogc3RhY2suYyAoZnJhbWVfaW5mbyk6IENoZWNr IGZyYW1lX3Vud2luZF9jYWxsZXJfaWQuCisgICAgCisgICAgdGVzdHN1aXRlLworICAgIAkqIGdk Yi5idHJhY2UvdGFpbGNhbGwtb25seS5leHA6IE5ldy4KKyAgICAJKiBnZGIuYnRyYWNlL3RhaWxj YWxsLW9ubHkuYzogTmV3LgorICAgIAkqIGdkYi5idHJhY2UveDg2XzY0LXRhaWxjYWxsLW9ubHku UzogTmV3LgorICAgIAkqIGdkYi5idHJhY2UvaTY4Ni10YWlsY2FsbC1vbmx5LlM6IE5ldy4KKwor IyMjIGEvZ2RiL0NoYW5nZUxvZworIyMjIGIvZ2RiL0NoYW5nZUxvZworIyMgLTEsMyArMSwxOSBA QAorKzIwMTYtMDMtMTcgIE1hcmt1cyBNZXR6Z2VyICA8bWFya3VzLnQubWV0emdlckBpbnRlbC5j b20+CisrCisrCVBSIGdkYi8xOTgyOQorKwkqIGZyYW1lLmggKHNraXBfdGFpbGNhbGxfZnJhbWVz KTogTmV3LgorKwkqIGluZmNtZC5jIChmaW5pc2hfY29tbWFuZCk6IENhbGwgc2tpcF90YWlsY2Fs bF9mcmFtZXMuCisrCSogZnJhbWUuYyAoc2tpcF9hcnRpZmljaWFsX2ZyYW1lcyk6IFJldHVybiBO VUxMIGlmIG9ubHkgYXJ0aWZpY2lhbAorKwlmcmFtZXMgYXJlIGZvdW5kLiAgVXBkYXRlIGNvbW1l bnQuCisrCShmcmFtZV9wb3ApOiBDYWxsIHNraXBfdGFpbGNhbGxfZnJhbWVzLgorKwkoZnJhbWVf dW53aW5kX2NhbGxlcl9pZCk6IEhhbmRsZSBOVUxMIHJldHVybi4KKysJKGZyYW1lX3Vud2luZF9j YWxsZXJfcGMsIGZyYW1lX3Vud2luZF9jYWxsZXJfYXJjaCk6IEFzc2VydCB0aGF0CisrCXNraXBf YXJ0aWZpY2lhbF9mcmFtZXMgZG9lcyBub3QgcmV0dXJuIE5VTEwuCisrCShmcmFtZV9wb3ApOiBB ZGQgYW4gZXJyb3IgaWYgb25seSB0YWlsY2FsbCBmcmFtZXMgYXJlIGZvdW5kLgorKwkqIGluZmNt ZC5jIChmaW5pc2hfY29tbWFuZCk6IE1vdmUgc2tpcF90YWlsY2FsbF9mcmFtZXMgY2FsbCBpbnRv CisrCWZvcndhcmQtZXhlY3V0aW9uIGNhc2UuICBBZGQgYW4gZXJyb3IgaWYgb25seSB0YWlsY2Fs bCBmcmFtZXMgYXJlIGZvdW5kLgorKwkqIHN0YWNrLmMgKGZyYW1lX2luZm8pOiBDaGVjayBmcmFt ZV91bndpbmRfY2FsbGVyX2lkLgorKworIDIwMTYtMDMtMTUgIFBlZHJvIEFsdmVzICA8cGFsdmVz QHJlZGhhdC5jb20+CisgCisgCVBSIGdkYi8xOTY3NgorLS0tIGEvZ2RiL2ZyYW1lLmMKKysrKyBi L2dkYi9mcmFtZS5jCitAQCAtNDIwLDcgKzQyMCw4IEBAIGZwcmludF9mcmFtZSAoc3RydWN0IHVp X2ZpbGUgKmZpbGUsIHN0cnVjdCBmcmFtZV9pbmZvICpmaSkKKyAKKyAvKiBHaXZlbiBGUkFNRSwg cmV0dXJuIHRoZSBlbmNsb3NpbmcgZnJhbWUgYXMgZm91bmQgaW4gcmVhbCBmcmFtZXMgcmVhZC1p biBmcm9tCisgICAgaW5mZXJpb3IgbWVtb3J5LiAgU2tpcCBhbnkgcHJldmlvdXMgZnJhbWVzIHdo aWNoIHdlcmUgbWFkZSB1cCBieSBHREIuCistICAgUmV0dXJuIHRoZSBvcmlnaW5hbCBmcmFtZSBp ZiBubyBpbW1lZGlhdGUgcHJldmlvdXMgZnJhbWVzIGV4aXN0LiAgKi8KKysgICBSZXR1cm4gRlJB TUUgaWYgRlJBTUUgaXMgYSBub24tYXJ0aWZpY2lhbCBmcmFtZS4KKysgICBSZXR1cm4gTlVMTCBp ZiBGUkFNRSBpcyB0aGUgc3RhcnQgb2YgYW4gYXJ0aWZpY2lhbC1vbmx5IGNoYWluLiAgKi8KKyAK KyBzdGF0aWMgc3RydWN0IGZyYW1lX2luZm8gKgorIHNraXBfYXJ0aWZpY2lhbF9mcmFtZXMgKHN0 cnVjdCBmcmFtZV9pbmZvICpmcmFtZSkKK0BAIC00MjgsMTIgKzQyOSwzNCBAQCBza2lwX2FydGlm aWNpYWxfZnJhbWVzIChzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJhbWUpCisgICAvKiBOb3RlIHdlIHVz ZSBnZXRfcHJldl9mcmFtZV9hbHdheXMsIGFuZCBub3QgZ2V0X3ByZXZfZnJhbWUuICBUaGUKKyAg ICAgIGxhdHRlciB3aWxsIHRydW5jYXRlIHRoZSBmcmFtZSBjaGFpbiwgbGVhZGluZyB0byB0aGlz IGZ1bmN0aW9uCisgICAgICB1bmludGVudGlvbmFsbHkgcmV0dXJuaW5nIGEgbnVsbF9mcmFtZV9p ZCAoZS5nLiwgd2hlbiB0aGUgdXNlcgorLSAgICAgc2V0cyBhIGJhY2t0cmFjZSBsaW1pdCkuICBU aGlzIGlzIHNhZmUsIGJlY2F1c2UgYXMgdGhlc2UgZnJhbWVzCistICAgICBhcmUgbWFkZSB1cCBi eSBHREIsIHRoZXJlIG11c3QgYmUgYSByZWFsIGZyYW1lIGluIHRoZSBjaGFpbgorLSAgICAgYmVs b3cuICAqLworKyAgICAgc2V0cyBhIGJhY2t0cmFjZSBsaW1pdCkuCisrCisrICAgICBOb3RlIHRo YXQgZm9yIHJlY29yZCB0YXJnZXRzIHdlIG1heSBnZXQgYSBmcmFtZSBjaGFpbiB0aGF0IGNvbnNp c3RzCisrICAgICBvZiBhcnRpZmljaWFsIGZyYW1lcyBvbmx5LiAgKi8KKyAgIHdoaWxlIChnZXRf ZnJhbWVfdHlwZSAoZnJhbWUpID09IElOTElORV9GUkFNRQorIAkgfHwgZ2V0X2ZyYW1lX3R5cGUg KGZyYW1lKSA9PSBUQUlMQ0FMTF9GUkFNRSkKKy0gICAgZnJhbWUgPSBnZXRfcHJldl9mcmFtZV9h bHdheXMgKGZyYW1lKTsKKysgICAgeworKyAgICAgIGZyYW1lID0gZ2V0X3ByZXZfZnJhbWVfYWx3 YXlzIChmcmFtZSk7CisrICAgICAgaWYgKGZyYW1lID09IE5VTEwpCisrCWJyZWFrOworKyAgICB9 CisrCisrICByZXR1cm4gZnJhbWU7CisrfQorKworKy8qIFNlZSBmcmFtZS5oLiAgKi8KKysKKytz dHJ1Y3QgZnJhbWVfaW5mbyAqCisrc2tpcF90YWlsY2FsbF9mcmFtZXMgKHN0cnVjdCBmcmFtZV9p bmZvICpmcmFtZSkKKyt7CisrICB3aGlsZSAoZ2V0X2ZyYW1lX3R5cGUgKGZyYW1lKSA9PSBUQUlM Q0FMTF9GUkFNRSkKKysgICAgeworKyAgICAgIC8qIE5vdGUgdGhhdCBmb3IgcmVjb3JkIHRhcmdl dHMgd2UgbWF5IGdldCBhIGZyYW1lIGNoYWluIHRoYXQgY29uc2lzdHMgb2YKKysJIHRhaWxjYWxs IGZyYW1lcyBvbmx5LiAgKi8KKysgICAgICBmcmFtZSA9IGdldF9wcmV2X2ZyYW1lIChmcmFtZSk7 CisrICAgICAgaWYgKGZyYW1lID09IE5VTEwpCisrCWJyZWFrOworKyAgICB9CisgCisgICByZXR1 cm4gZnJhbWU7CisgfQorQEAgLTQ5Niw2ICs1MTksOSBAQCBmcmFtZV91bndpbmRfY2FsbGVyX2lk IChzdHJ1Y3QgZnJhbWVfaW5mbyAqbmV4dF9mcmFtZSkKKyAgICAgIHJlcXVlc3RzIHRoZSBmcmFt ZSBJRCBvZiAibWFpbigpInMgY2FsbGVyLiAgKi8KKyAKKyAgIG5leHRfZnJhbWUgPSBza2lwX2Fy dGlmaWNpYWxfZnJhbWVzIChuZXh0X2ZyYW1lKTsKKysgIGlmIChuZXh0X2ZyYW1lID09IE5VTEwp CisrICAgIHJldHVybiBudWxsX2ZyYW1lX2lkOworKworICAgdGhpc19mcmFtZSA9IGdldF9wcmV2 X2ZyYW1lX2Fsd2F5cyAobmV4dF9mcmFtZSk7CisgICBpZiAodGhpc19mcmFtZSkKKyAgICAgcmV0 dXJuIGdldF9mcmFtZV9pZCAoc2tpcF9hcnRpZmljaWFsX2ZyYW1lcyAodGhpc19mcmFtZSkpOwor QEAgLTg2OSw3ICs4OTUsMTQgQEAgZnJhbWVfdW53aW5kX3BjIChzdHJ1Y3QgZnJhbWVfaW5mbyAq dGhpc19mcmFtZSkKKyBDT1JFX0FERFIKKyBmcmFtZV91bndpbmRfY2FsbGVyX3BjIChzdHJ1Y3Qg ZnJhbWVfaW5mbyAqdGhpc19mcmFtZSkKKyB7CistICByZXR1cm4gZnJhbWVfdW53aW5kX3BjIChz a2lwX2FydGlmaWNpYWxfZnJhbWVzICh0aGlzX2ZyYW1lKSk7CisrICB0aGlzX2ZyYW1lID0gc2tp cF9hcnRpZmljaWFsX2ZyYW1lcyAodGhpc19mcmFtZSk7CisrCisrICAvKiBXZSBtdXN0IGhhdmUg YSBub24tYXJ0aWZpY2lhbCBmcmFtZS4gIFRoZSBjYWxsZXIgaXMgc3VwcG9zZWQgdG8gY2hlY2sK KysgICAgIHRoZSByZXN1bHQgb2YgZnJhbWVfdW53aW5kX2NhbGxlcl9pZCAoKSwgd2hpY2ggcmV0 dXJucyBOVUxMX0ZSQU1FX0lECisrICAgICBpbiB0aGlzIGNhc2UuICAqLworKyAgZ2RiX2Fzc2Vy dCAodGhpc19mcmFtZSAhPSBOVUxMKTsKKysKKysgIHJldHVybiBmcmFtZV91bndpbmRfcGMgKHRo aXNfZnJhbWUpOworIH0KKyAKKyBpbnQKK0BAIC05NzIsOCArMTAwNSwxMCBAQCBmcmFtZV9wb3Ag KHN0cnVjdCBmcmFtZV9pbmZvICp0aGlzX2ZyYW1lKQorIAorICAgLyogSWdub3JlIFRBSUxDQUxM X0ZSQU1FIHR5cGUgZnJhbWVzLCB0aGV5IHdlcmUgZXhlY3V0ZWQgYWxyZWFkeSBiZWZvcmUKKyAg ICAgIGVudGVyaW5nIFRISVNGUkFNRS4gICovCistICB3aGlsZSAoZ2V0X2ZyYW1lX3R5cGUgKHBy ZXZfZnJhbWUpID09IFRBSUxDQUxMX0ZSQU1FKQorLSAgICBwcmV2X2ZyYW1lID0gZ2V0X3ByZXZf ZnJhbWUgKHByZXZfZnJhbWUpOworKyAgcHJldl9mcmFtZSA9IHNraXBfdGFpbGNhbGxfZnJhbWVz IChwcmV2X2ZyYW1lKTsKKysKKysgIGlmIChwcmV2X2ZyYW1lID09IE5VTEwpCisrICAgIGVycm9y IChfKCJDYW5ub3QgZmluZCB0aGUgY2FsbGVyIGZyYW1lLiIpKTsKKyAKKyAgIC8qIE1ha2UgYSBj b3B5IG9mIGFsbCB0aGUgcmVnaXN0ZXIgdmFsdWVzIHVud291bmQgZnJvbSB0aGlzIGZyYW1lLgor ICAgICAgU2F2ZSB0aGVtIGluIGEgc2NyYXRjaCBidWZmZXIgc28gdGhhdCB0aGVyZSBpc24ndCBh IHJhY2UgYmV0d2VlbgorQEAgLTI1NjEsNyArMjU5NiwxNCBAQCBmcmFtZV91bndpbmRfYXJjaCAo c3RydWN0IGZyYW1lX2luZm8gKm5leHRfZnJhbWUpCisgc3RydWN0IGdkYmFyY2ggKgorIGZyYW1l X3Vud2luZF9jYWxsZXJfYXJjaCAoc3RydWN0IGZyYW1lX2luZm8gKm5leHRfZnJhbWUpCisgewor LSAgcmV0dXJuIGZyYW1lX3Vud2luZF9hcmNoIChza2lwX2FydGlmaWNpYWxfZnJhbWVzIChuZXh0 X2ZyYW1lKSk7CisrICBuZXh0X2ZyYW1lID0gc2tpcF9hcnRpZmljaWFsX2ZyYW1lcyAobmV4dF9m cmFtZSk7CisrCisrICAvKiBXZSBtdXN0IGhhdmUgYSBub24tYXJ0aWZpY2lhbCBmcmFtZS4gIFRo ZSBjYWxsZXIgaXMgc3VwcG9zZWQgdG8gY2hlY2sKKysgICAgIHRoZSByZXN1bHQgb2YgZnJhbWVf dW53aW5kX2NhbGxlcl9pZCAoKSwgd2hpY2ggcmV0dXJucyBOVUxMX0ZSQU1FX0lECisrICAgICBp biB0aGlzIGNhc2UuICAqLworKyAgZ2RiX2Fzc2VydCAobmV4dF9mcmFtZSAhPSBOVUxMKTsKKysK KysgIHJldHVybiBmcmFtZV91bndpbmRfYXJjaCAobmV4dF9mcmFtZSk7CisgfQorIAorIC8qIEdl dHMgdGhlIGxhbmd1YWdlIG9mIEZSQU1FLiAgKi8KKy0tLSBhL2dkYi9mcmFtZS5oCisrKysgYi9n ZGIvZnJhbWUuaAorQEAgLTgyMCw1ICs4MjAsMTAgQEAgZXh0ZXJuIGludCBmcmFtZV91bndpbmRl cl9pcyAoc3RydWN0IGZyYW1lX2luZm8gKmZpLAorIAorIGV4dGVybiBlbnVtIGxhbmd1YWdlIGdl dF9mcmFtZV9sYW5ndWFnZSAoc3RydWN0IGZyYW1lX2luZm8gKmZyYW1lKTsKKyAKKysvKiBSZXR1 cm4gdGhlIGZpcnN0IG5vbi10YWlsY2FsbCBmcmFtZSBhYm92ZSBGUkFNRSBvciBGUkFNRSBpZiBp dCBpcyBub3QgYQorKyAgIHRhaWxjYWxsIGZyYW1lLiAgUmV0dXJuIE5VTEwgaWYgRlJBTUUgaXMg dGhlIHN0YXJ0IG9mIGEgdGFpbGNhbGwtb25seQorKyAgIGNoYWluLiAgKi8KKysKKytleHRlcm4g c3RydWN0IGZyYW1lX2luZm8gKnNraXBfdGFpbGNhbGxfZnJhbWVzIChzdHJ1Y3QgZnJhbWVfaW5m byAqZnJhbWUpOworIAorICNlbmRpZiAvKiAhZGVmaW5lZCAoRlJBTUVfSCkgICovCistLS0gYS9n ZGIvaW5mY21kLmMKKysrKyBiL2dkYi9pbmZjbWQuYworQEAgLTIwMDAsMTEgKzIwMDAsNiBAQCBm aW5pc2hfY29tbWFuZCAoY2hhciAqYXJnLCBpbnQgZnJvbV90dHkpCisgICAgICAgcmV0dXJuOwor ICAgICB9CisgCistICAvKiBJZ25vcmUgVEFJTENBTExfRlJBTUUgdHlwZSBmcmFtZXMsIHRoZXkg d2VyZSBleGVjdXRlZCBhbHJlYWR5IGJlZm9yZQorLSAgICAgZW50ZXJpbmcgVEhJU0ZSQU1FLiAg Ki8KKy0gIHdoaWxlIChnZXRfZnJhbWVfdHlwZSAoZnJhbWUpID09IFRBSUxDQUxMX0ZSQU1FKQor LSAgICBmcmFtZSA9IGdldF9wcmV2X2ZyYW1lIChmcmFtZSk7CistCisgICAvKiBGaW5kIHRoZSBm dW5jdGlvbiB3ZSB3aWxsIHJldHVybiBmcm9tLiAgKi8KKyAKKyAgIHNtLT5mdW5jdGlvbiA9IGZp bmRfcGNfZnVuY3Rpb24gKGdldF9mcmFtZV9wYyAoZ2V0X3NlbGVjdGVkX2ZyYW1lIChOVUxMKSkp OworQEAgLTIwMzEsNyArMjAyNiwxNiBAQCBmaW5pc2hfY29tbWFuZCAoY2hhciAqYXJnLCBpbnQg ZnJvbV90dHkpCisgICBpZiAoZXhlY3V0aW9uX2RpcmVjdGlvbiA9PSBFWEVDX1JFVkVSU0UpCisg ICAgIGZpbmlzaF9iYWNrd2FyZCAoc20pOworICAgZWxzZQorLSAgICBmaW5pc2hfZm9yd2FyZCAo c20sIGZyYW1lKTsKKysgICAgeworKyAgICAgIC8qIElnbm9yZSBUQUlMQ0FMTF9GUkFNRSB0eXBl IGZyYW1lcywgdGhleSB3ZXJlIGV4ZWN1dGVkIGFscmVhZHkgYmVmb3JlCisrCSBlbnRlcmluZyBU SElTRlJBTUUuICAqLworKyAgICAgIGZyYW1lID0gc2tpcF90YWlsY2FsbF9mcmFtZXMgKGZyYW1l KTsKKysKKysgICAgICBpZiAoZnJhbWUgPT0gTlVMTCkKKysJZXJyb3IgKF8oIkNhbm5vdCBmaW5k IHRoZSBjYWxsZXIgZnJhbWUuIikpOworKworKyAgICAgIGZpbmlzaF9mb3J3YXJkIChzbSwgZnJh bWUpOworKyAgICB9CisgfQorIAwKKyAKKy0tLSBhL2dkYi9zdGFjay5jCisrKysgYi9nZGIvc3Rh Y2suYworQEAgLTE1MDksMjcgKzE1MDksMzIgQEAgZnJhbWVfaW5mbyAoY2hhciAqYWRkcl9leHAs IGludCBmcm9tX3R0eSkKKyAgIHdyYXBfaGVyZSAoIiAgICAiKTsKKyAgIHByaW50Zl9maWx0ZXJl ZCAoInNhdmVkICVzID0gIiwgcGNfcmVnbmFtZSk7CisgCistICBUUlkKKy0gICAgeworLSAgICAg IGNhbGxlcl9wYyA9IGZyYW1lX3Vud2luZF9jYWxsZXJfcGMgKGZpKTsKKy0gICAgICBjYWxsZXJf cGNfcCA9IDE7CistICAgIH0KKy0gIENBVENIIChleCwgUkVUVVJOX01BU0tfRVJST1IpCisrICBp ZiAoIWZyYW1lX2lkX3AgKGZyYW1lX3Vud2luZF9jYWxsZXJfaWQgKGZpKSkpCisrICAgIHZhbF9w cmludF91bmF2YWlsYWJsZSAoZ2RiX3N0ZG91dCk7CisrICBlbHNlCisgICAgIHsKKy0gICAgICBz d2l0Y2ggKGV4LmVycm9yKQorKyAgICAgIFRSWQorIAl7CistCWNhc2UgTk9UX0FWQUlMQUJMRV9F UlJPUjoKKy0JICB2YWxfcHJpbnRfdW5hdmFpbGFibGUgKGdkYl9zdGRvdXQpOworLQkgIGJyZWFr OworLQljYXNlIE9QVElNSVpFRF9PVVRfRVJST1I6CistCSAgdmFsX3ByaW50X25vdF9zYXZlZCAo Z2RiX3N0ZG91dCk7CistCSAgYnJlYWs7CistCWRlZmF1bHQ6CistCSAgZnByaW50Zl9maWx0ZXJl ZCAoZ2RiX3N0ZG91dCwgXygiPGVycm9yOiAlcz4iKSwgZXgubWVzc2FnZSk7CistCSAgYnJlYWs7 CisrCSAgY2FsbGVyX3BjID0gZnJhbWVfdW53aW5kX2NhbGxlcl9wYyAoZmkpOworKwkgIGNhbGxl cl9wY19wID0gMTsKKyAJfQorKyAgICAgIENBVENIIChleCwgUkVUVVJOX01BU0tfRVJST1IpCisr CXsKKysJICBzd2l0Y2ggKGV4LmVycm9yKQorKwkgICAgeworKwkgICAgY2FzZSBOT1RfQVZBSUxB QkxFX0VSUk9SOgorKwkgICAgICB2YWxfcHJpbnRfdW5hdmFpbGFibGUgKGdkYl9zdGRvdXQpOwor KwkgICAgICBicmVhazsKKysJICAgIGNhc2UgT1BUSU1JWkVEX09VVF9FUlJPUjoKKysJICAgICAg dmFsX3ByaW50X25vdF9zYXZlZCAoZ2RiX3N0ZG91dCk7CisrCSAgICAgIGJyZWFrOworKwkgICAg ZGVmYXVsdDoKKysJICAgICAgZnByaW50Zl9maWx0ZXJlZCAoZ2RiX3N0ZG91dCwgXygiPGVycm9y OiAlcz4iKSwgZXgubWVzc2FnZSk7CisrCSAgICAgIGJyZWFrOworKwkgICAgfQorKwl9CisrICAg ICAgRU5EX0NBVENICisgICAgIH0KKy0gIEVORF9DQVRDSAorIAorICAgaWYgKGNhbGxlcl9wY19w KQorICAgICBmcHV0c19maWx0ZXJlZCAocGFkZHJlc3MgKGdkYmFyY2gsIGNhbGxlcl9wYyksIGdk Yl9zdGRvdXQpOworIyMjIGEvZ2RiL3Rlc3RzdWl0ZS9DaGFuZ2VMb2cKKyMjIyBiL2dkYi90ZXN0 c3VpdGUvQ2hhbmdlTG9nCisjIyAtMSwzICsxLDExIEBACisrMjAxNi0wMy0xNyAgTWFya3VzIE1l dHpnZXIgIDxtYXJrdXMudC5tZXR6Z2VyQGludGVsLmNvbT4KKysKKysJUFIgZ2RiLzE5ODI5Cisr CSogZ2RiLmJ0cmFjZS90YWlsY2FsbC1vbmx5LmV4cDogTmV3LgorKwkqIGdkYi5idHJhY2UvdGFp bGNhbGwtb25seS5jOiBOZXcuCisrCSogZ2RiLmJ0cmFjZS94ODZfNjQtdGFpbGNhbGwtb25seS5T OiBOZXcuCisrCSogZ2RiLmJ0cmFjZS9pNjg2LXRhaWxjYWxsLW9ubHkuUzogTmV3LgorKworIDIw MTYtMDItMTYgIERvbiBCcmVhemVhbCAgPGRvbmJAY29kZXNvdXJjZXJ5LmNvbT4KKyAKKyAJUFIg cmVtb3RlLzE5NDk2CistLS0gL2Rldi9udWxsCisrKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5idHJh Y2UvaTY4Ni10YWlsY2FsbC1vbmx5LlMKK0BAIC0wLDAgKzEsNDQ3IEBACisrLyogVGhpcyB0ZXN0 Y2FzZSBpcyBwYXJ0IG9mIEdEQiwgdGhlIEdOVSBkZWJ1Z2dlci4KKysKKysgICBDb3B5cmlnaHQg MjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKysKKysgICBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQor KyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5CisrICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKysgICAoYXQgeW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgorKworKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisrICAgTUVSQ0hBTlRBQklM SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorKyAgIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisrCisrICAgWW91IHNo b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UKKysgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3 LmdudS5vcmcvbGljZW5zZXMvPi4KKysKKysKKysgICBUaGlzIGZpbGUgaGFzIGJlZW4gZ2VuZXJh dGVkIHVzaW5nOgorKyAgIGdjYyAtbTMyIC1tYXJjaD1pNjg2IC1TIC1PMiAtZEEgLWcgdGFpbGNh bGwtb25seS5jIC1vIGk2ODYtdGFpbGNhbGwtb25seS5TCisrICovCisrCisrCS5maWxlCSJ0YWls Y2FsbC1vbmx5LmMiCisrCS50ZXh0CisrLkx0ZXh0MDoKKysJLnAyYWxpZ24gNCwsMTUKKysJLnR5 cGUJYmFyXzEsIEBmdW5jdGlvbgorK2Jhcl8xOgorKy5MRkIwOgorKwkuZmlsZSAxICJ0YWlsY2Fs bC1vbmx5LmMiCisrCSMgdGFpbGNhbGwtb25seS5jOjIyCisrCS5sb2MgMSAyMiAwCisrCS5jZmlf c3RhcnRwcm9jCisrIyBCTE9DSyAyIGZyZXE6MTAwMDAgc2VxOjAKKysjIFBSRUQ6IEVOVFJZIFsx MDAuMCVdICAoRkFMTFRIUlUpCisrCSMgdGFpbGNhbGwtb25seS5jOjI0CisrCS5sb2MgMSAyNCAw CisrCW1vdmwJJDQyLCAlZWF4CisrIyBTVUNDOiBFWElUIFsxMDAuMCVdCisrCXJldAorKwkuY2Zp X2VuZHByb2MKKysuTEZFMDoKKysJLnNpemUJYmFyXzEsIC4tYmFyXzEKKysJLnAyYWxpZ24gNCws MTUKKysJLnR5cGUJYmFyLCBAZnVuY3Rpb24KKytiYXI6CisrLkxGQjE6CisrCSMgdGFpbGNhbGwt b25seS5jOjI4CisrCS5sb2MgMSAyOCAwCisrCS5jZmlfc3RhcnRwcm9jCisrIyBCTE9DSyAyIGZy ZXE6MTAwMDAgc2VxOjAKKysjIFBSRUQ6IEVOVFJZIFsxMDAuMCVdICAoRkFMTFRIUlUpCisrCSMg dGFpbGNhbGwtb25seS5jOjI5CisrCS5sb2MgMSAyOSAwCisrCWptcAliYXJfMQorKyMgU1VDQzog RVhJVCBbMTAwLjAlXSAgKEFCTk9STUFMLFNJQkNBTEwpCisrLkxWTDA6CisrCS5jZmlfZW5kcHJv YworKy5MRkUxOgorKwkuc2l6ZQliYXIsIC4tYmFyCisrCS5wMmFsaWduIDQsLDE1CisrCS50eXBl CWZvb18xLCBAZnVuY3Rpb24KKytmb29fMToKKysuTEZCMjoKKysJIyB0YWlsY2FsbC1vbmx5LmM6 MzQKKysJLmxvYyAxIDM0IDAKKysJLmNmaV9zdGFydHByb2MKKysjIEJMT0NLIDIgZnJlcToxMDAw MCBzZXE6MAorKyMgUFJFRDogRU5UUlkgWzEwMC4wJV0gIChGQUxMVEhSVSkKKysJIyB0YWlsY2Fs bC1vbmx5LmM6MzUKKysJLmxvYyAxIDM1IDAKKysJam1wCWJhcgorKyMgU1VDQzogRVhJVCBbMTAw LjAlXSAgKEFCTk9STUFMLFNJQkNBTEwpCisrLkxWTDE6CisrCS5jZmlfZW5kcHJvYworKy5MRkUy OgorKwkuc2l6ZQlmb29fMSwgLi1mb29fMQorKwkucDJhbGlnbiA0LCwxNQorKwkudHlwZQlmb28s IEBmdW5jdGlvbgorK2ZvbzoKKysuTEZCMzoKKysJIyB0YWlsY2FsbC1vbmx5LmM6NDAKKysJLmxv YyAxIDQwIDAKKysJLmNmaV9zdGFydHByb2MKKysjIEJMT0NLIDIgZnJlcToxMDAwMCBzZXE6MAor KyMgUFJFRDogRU5UUlkgWzEwMC4wJV0gIChGQUxMVEhSVSkKKysJIyB0YWlsY2FsbC1vbmx5LmM6 NDEKKysJLmxvYyAxIDQxIDAKKysJam1wCWZvb18xCisrIyBTVUNDOiBFWElUIFsxMDAuMCVdICAo QUJOT1JNQUwsU0lCQ0FMTCkKKysuTFZMMjoKKysJLmNmaV9lbmRwcm9jCisrLkxGRTM6CisrCS5z aXplCWZvbywgLi1mb28KKysJLnNlY3Rpb24JLnRleHQuc3RhcnR1cCwiYXgiLEBwcm9nYml0cwor KwkucDJhbGlnbiA0LCwxNQorKwkuZ2xvYmwJbWFpbgorKwkudHlwZQltYWluLCBAZnVuY3Rpb24K KyttYWluOgorKy5MRkI0OgorKwkjIHRhaWxjYWxsLW9ubHkuYzo0NgorKwkubG9jIDEgNDYgMAor KwkuY2ZpX3N0YXJ0cHJvYworKyMgQkxPQ0sgMiBmcmVxOjEwMDAwIHNlcTowCisrIyBQUkVEOiBF TlRSWSBbMTAwLjAlXSAgKEZBTExUSFJVKQorKwkjIHRhaWxjYWxsLW9ubHkuYzo0OQorKwkubG9j IDEgNDkgMAorKwljYWxsCWZvbworKy5MVkwzOgorKwkjIHRhaWxjYWxsLW9ubHkuYzo1MAorKwku bG9jIDEgNTAgMAorKwlhZGRsCSQxLCAlZWF4CisrLkxWTDQ6CisrIyBTVUNDOiBFWElUIFsxMDAu MCVdCisrCSMgdGFpbGNhbGwtb25seS5jOjUzCisrCS5sb2MgMSA1MyAwCisrCXJldAorKwkuY2Zp X2VuZHByb2MKKysuTEZFNDoKKysJLnNpemUJbWFpbiwgLi1tYWluCisrCS50ZXh0CisrLkxldGV4 dDA6CisrCS5zZWN0aW9uCS5kZWJ1Z19pbmZvLCIiLEBwcm9nYml0cworKy5MZGVidWdfaW5mbzA6 CisrCS5sb25nCTB4ZDUJIyBMZW5ndGggb2YgQ29tcGlsYXRpb24gVW5pdCBJbmZvCisrCS52YWx1 ZQkweDQJIyBEV0FSRiB2ZXJzaW9uIG51bWJlcgorKwkubG9uZwkuTGRlYnVnX2FiYnJldjAJIyBP ZmZzZXQgSW50byBBYmJyZXYuIFNlY3Rpb24KKysJLmJ5dGUJMHg0CSMgUG9pbnRlciBTaXplIChp biBieXRlcykKKysJLnVsZWIxMjggMHgxCSMgKERJRSAoMHhiKSBEV19UQUdfY29tcGlsZV91bml0 KQorKwkubG9uZwkuTEFTRjEJIyBEV19BVF9wcm9kdWNlcjogIkdOVSBDIDQuOC4zIDIwMTQwOTEx IChSZWQgSGF0IDQuOC4zLTkpIC1tMzIgLW1hcmNoPWk2ODYgLWcgLU8yIgorKwkuYnl0ZQkweDEJ IyBEV19BVF9sYW5ndWFnZQorKwkubG9uZwkuTEFTRjIJIyBEV19BVF9uYW1lOiAidGFpbGNhbGwt b25seS5jIgorKwkubG9uZwkuTEFTRjMJIyBEV19BVF9jb21wX2RpcjogIiIKKysJLmxvbmcJLkxk ZWJ1Z19yYW5nZXMwKzAJIyBEV19BVF9yYW5nZXMKKysJLmxvbmcJMAkjIERXX0FUX2xvd19wYwor KwkubG9uZwkuTGRlYnVnX2xpbmUwCSMgRFdfQVRfc3RtdF9saXN0CisrCS51bGViMTI4IDB4Mgkj IChESUUgKDB4MjUpIERXX1RBR19zdWJwcm9ncmFtKQorKwkubG9uZwkuTEFTRjQJIyBEV19BVF9u YW1lOiAiYmFyXzEiCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfZmlsZSAodGFpbGNhbGwtb25s eS5jKQorKwkuYnl0ZQkweDE1CSMgRFdfQVRfZGVjbF9saW5lCisrCQkJIyBEV19BVF9wcm90b3R5 cGVkCisrCS5sb25nCTB4M2EJIyBEV19BVF90eXBlCisrCS5sb25nCS5MRkIwCSMgRFdfQVRfbG93 X3BjCisrCS5sb25nCS5MRkUwLS5MRkIwCSMgRFdfQVRfaGlnaF9wYworKwkudWxlYjEyOCAweDEJ IyBEV19BVF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJIyBEV19PUF9jYWxsX2ZyYW1lX2NmYQor KwkJCSMgRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzCisrCS51bGViMTI4IDB4MwkjIChESUUgKDB4 M2EpIERXX1RBR19iYXNlX3R5cGUpCisrCS5ieXRlCTB4NAkjIERXX0FUX2J5dGVfc2l6ZQorKwku Ynl0ZQkweDUJIyBEV19BVF9lbmNvZGluZworKwkuYXNjaWkgImludFwwIgkjIERXX0FUX25hbWUK KysJLnVsZWIxMjggMHg0CSMgKERJRSAoMHg0MSkgRFdfVEFHX3N1YnByb2dyYW0pCisrCS5hc2Np aSAiYmFyXDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9kZWNsX2ZpbGUgKHRh aWxjYWxsLW9ubHkuYykKKysJLmJ5dGUJMHgxYgkjIERXX0FUX2RlY2xfbGluZQorKwkJCSMgRFdf QVRfcHJvdG90eXBlZAorKwkubG9uZwkweDNhCSMgRFdfQVRfdHlwZQorKwkubG9uZwkuTEZCMQkj IERXX0FUX2xvd19wYworKwkubG9uZwkuTEZFMS0uTEZCMQkjIERXX0FUX2hpZ2hfcGMKKysJLnVs ZWIxMjggMHgxCSMgRFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDljCSMgRFdfT1BfY2FsbF9m cmFtZV9jZmEKKysJCQkjIERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcworKwkubG9uZwkweDY0CSMg RFdfQVRfc2libGluZworKwkudWxlYjEyOCAweDUJIyAoRElFICgweDVhKSBEV19UQUdfR05VX2Nh bGxfc2l0ZSkKKysJLmxvbmcJLkxWTDAJIyBEV19BVF9sb3dfcGMKKysJCQkjIERXX0FUX0dOVV90 YWlsX2NhbGwKKysJLmxvbmcJMHgyNQkjIERXX0FUX2Fic3RyYWN0X29yaWdpbgorKwkuYnl0ZQkw CSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDQxCisrCS51bGViMTI4IDB4NgkjIChESUUgKDB4 NjQpIERXX1RBR19zdWJwcm9ncmFtKQorKwkubG9uZwkuTEFTRjAJIyBEV19BVF9uYW1lOiAiZm9v XzEiCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfZmlsZSAodGFpbGNhbGwtb25seS5jKQorKwku Ynl0ZQkweDIxCSMgRFdfQVRfZGVjbF9saW5lCisrCQkJIyBEV19BVF9wcm90b3R5cGVkCisrCS5s b25nCTB4M2EJIyBEV19BVF90eXBlCisrCS5sb25nCS5MRkIyCSMgRFdfQVRfbG93X3BjCisrCS5s b25nCS5MRkUyLS5MRkIyCSMgRFdfQVRfaGlnaF9wYworKwkudWxlYjEyOCAweDEJIyBEV19BVF9m cmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJIyBEV19PUF9jYWxsX2ZyYW1lX2NmYQorKwkJCSMgRFdf QVRfR05VX2FsbF9jYWxsX3NpdGVzCisrCS5sb25nCTB4ODcJIyBEV19BVF9zaWJsaW5nCisrCS51 bGViMTI4IDB4NQkjIChESUUgKDB4N2QpIERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkubG9uZwku TFZMMQkjIERXX0FUX2xvd19wYworKwkJCSMgRFdfQVRfR05VX3RhaWxfY2FsbAorKwkubG9uZwkw eDQxCSMgRFdfQVRfYWJzdHJhY3Rfb3JpZ2luCisrCS5ieXRlCTAJIyBlbmQgb2YgY2hpbGRyZW4g b2YgRElFIDB4NjQKKysJLnVsZWIxMjggMHg0CSMgKERJRSAoMHg4NykgRFdfVEFHX3N1YnByb2dy YW0pCisrCS5hc2NpaSAiZm9vXDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9k ZWNsX2ZpbGUgKHRhaWxjYWxsLW9ubHkuYykKKysJLmJ5dGUJMHgyNwkjIERXX0FUX2RlY2xfbGlu ZQorKwkJCSMgRFdfQVRfcHJvdG90eXBlZAorKwkubG9uZwkweDNhCSMgRFdfQVRfdHlwZQorKwku bG9uZwkuTEZCMwkjIERXX0FUX2xvd19wYworKwkubG9uZwkuTEZFMy0uTEZCMwkjIERXX0FUX2hp Z2hfcGMKKysJLnVsZWIxMjggMHgxCSMgRFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDljCSMg RFdfT1BfY2FsbF9mcmFtZV9jZmEKKysJCQkjIERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcworKwku bG9uZwkweGFhCSMgRFdfQVRfc2libGluZworKwkudWxlYjEyOCAweDUJIyAoRElFICgweGEwKSBE V19UQUdfR05VX2NhbGxfc2l0ZSkKKysJLmxvbmcJLkxWTDIJIyBEV19BVF9sb3dfcGMKKysJCQkj IERXX0FUX0dOVV90YWlsX2NhbGwKKysJLmxvbmcJMHg2NAkjIERXX0FUX2Fic3RyYWN0X29yaWdp bgorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDg3CisrCS51bGViMTI4IDB4 NwkjIChESUUgKDB4YWEpIERXX1RBR19zdWJwcm9ncmFtKQorKwkJCSMgRFdfQVRfZXh0ZXJuYWwK KysJLmxvbmcJLkxBU0Y1CSMgRFdfQVRfbmFtZTogIm1haW4iCisrCS5ieXRlCTB4MQkjIERXX0FU X2RlY2xfZmlsZSAodGFpbGNhbGwtb25seS5jKQorKwkuYnl0ZQkweDJkCSMgRFdfQVRfZGVjbF9s aW5lCisrCQkJIyBEV19BVF9wcm90b3R5cGVkCisrCS5sb25nCTB4M2EJIyBEV19BVF90eXBlCisr CS5sb25nCS5MRkI0CSMgRFdfQVRfbG93X3BjCisrCS5sb25nCS5MRkU0LS5MRkI0CSMgRFdfQVRf aGlnaF9wYworKwkudWxlYjEyOCAweDEJIyBEV19BVF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJ IyBEV19PUF9jYWxsX2ZyYW1lX2NmYQorKwkJCSMgRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzCisr CS51bGViMTI4IDB4OAkjIChESUUgKDB4YmYpIERXX1RBR192YXJpYWJsZSkKKysJLmxvbmcJLkxB U0Y2CSMgRFdfQVRfbmFtZTogImFuc3dlciIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfZGVjbF9maWxl ICh0YWlsY2FsbC1vbmx5LmMpCisrCS5ieXRlCTB4MmYJIyBEV19BVF9kZWNsX2xpbmUKKysJLmxv bmcJMHgzYQkjIERXX0FUX3R5cGUKKysJLmxvbmcJLkxMU1QwCSMgRFdfQVRfbG9jYXRpb24KKysJ LnVsZWIxMjggMHg5CSMgKERJRSAoMHhjZSkgRFdfVEFHX0dOVV9jYWxsX3NpdGUpCisrCS5sb25n CS5MVkwzCSMgRFdfQVRfbG93X3BjCisrCS5sb25nCTB4ODcJIyBEV19BVF9hYnN0cmFjdF9vcmln aW4KKysJLmJ5dGUJMAkjIGVuZCBvZiBjaGlsZHJlbiBvZiBESUUgMHhhYQorKwkuYnl0ZQkwCSMg ZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweGIKKysJLnNlY3Rpb24JLmRlYnVnX2FiYnJldiwiIixA cHJvZ2JpdHMKKysuTGRlYnVnX2FiYnJldjA6CisrCS51bGViMTI4IDB4MQkjIChhYmJyZXYgY29k ZSkKKysJLnVsZWIxMjggMHgxMQkjIChUQUc6IERXX1RBR19jb21waWxlX3VuaXQpCisrCS5ieXRl CTB4MQkjIERXX2NoaWxkcmVuX3llcworKwkudWxlYjEyOCAweDI1CSMgKERXX0FUX3Byb2R1Y2Vy KQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDEzCSMgKERX X0FUX2xhbmd1YWdlKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIx MjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4ZQkjIChEV19GT1JNX3N0cnApCisr CS51bGViMTI4IDB4MWIJIyAoRFdfQVRfY29tcF9kaXIpCisrCS51bGViMTI4IDB4ZQkjIChEV19G T1JNX3N0cnApCisrCS51bGViMTI4IDB4NTUJIyAoRFdfQVRfcmFuZ2VzKQorKwkudWxlYjEyOCAw eDE3CSMgKERXX0ZPUk1fc2VjX29mZnNldCkKKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3df cGMpCisrCS51bGViMTI4IDB4MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MTAJIyAo RFdfQVRfc3RtdF9saXN0KQorKwkudWxlYjEyOCAweDE3CSMgKERXX0ZPUk1fc2VjX29mZnNldCkK KysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51bGViMTI4IDB4MgkjIChhYmJyZXYgY29kZSkKKysJ LnVsZWIxMjggMHgyZQkjIChUQUc6IERXX1RBR19zdWJwcm9ncmFtKQorKwkuYnl0ZQkwCSMgRFdf Y2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4 ZQkjIChEV19GT1JNX3N0cnApCisrCS51bGViMTI4IDB4M2EJIyAoRFdfQVRfZGVjbF9maWxlKQor KwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgzYgkjIChEV19B VF9kZWNsX2xpbmUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEy OCAweDI3CSMgKERXX0FUX3Byb3RvdHlwZWQpCisrCS51bGViMTI4IDB4MTkJIyAoRFdfRk9STV9m bGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjgg MHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRfbG93X3BjKQor KwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEyCSMgKERXX0FU X2hpZ2hfcGMpCisrCS51bGViMTI4IDB4NgkjIChEV19GT1JNX2RhdGE0KQorKwkudWxlYjEyOCAw eDQwCSMgKERXX0FUX2ZyYW1lX2Jhc2UpCisrCS51bGViMTI4IDB4MTgJIyAoRFdfRk9STV9leHBy bG9jKQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzKQorKwku dWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkuYnl0ZQkwCisrCS5ieXRl CTAKKysJLnVsZWIxMjggMHgzCSMgKGFiYnJldiBjb2RlKQorKwkudWxlYjEyOCAweDI0CSMgKFRB RzogRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51bGVi MTI4IDB4YgkjIChEV19BVF9ieXRlX3NpemUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2Rh dGExKQorKwkudWxlYjEyOCAweDNlCSMgKERXX0FUX2VuY29kaW5nKQorKwkudWxlYjEyOCAweGIJ IyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGVi MTI4IDB4OAkjIChEV19GT1JNX3N0cmluZykKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51bGVi MTI4IDB4NAkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHgyZQkjIChUQUc6IERXX1RBR19z dWJwcm9ncmFtKQorKwkuYnl0ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIxMjggMHgz CSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4OAkjIChEV19GT1JNX3N0cmluZykKKysJLnVs ZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JN X2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMgKERXX0FUX2RlY2xfbGluZSkKKysJLnVsZWIxMjgg MHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4MjcJIyAoRFdfQVRfcHJvdG90eXBl ZCkKKysJLnVsZWIxMjggMHgxOQkjIChEV19GT1JNX2ZsYWdfcHJlc2VudCkKKysJLnVsZWIxMjgg MHg0OQkjIChEV19BVF90eXBlKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJ LnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51bGViMTI4IDB4MQkjIChEV19GT1JN X2FkZHIpCisrCS51bGViMTI4IDB4MTIJIyAoRFdfQVRfaGlnaF9wYykKKysJLnVsZWIxMjggMHg2 CSMgKERXX0ZPUk1fZGF0YTQpCisrCS51bGViMTI4IDB4NDAJIyAoRFdfQVRfZnJhbWVfYmFzZSkK KysJLnVsZWIxMjggMHgxOAkjIChEV19GT1JNX2V4cHJsb2MpCisrCS51bGViMTI4IDB4MjExNwkj IChEV19BVF9HTlVfYWxsX2NhbGxfc2l0ZXMpCisrCS51bGViMTI4IDB4MTkJIyAoRFdfRk9STV9m bGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4MQkjIChEV19BVF9zaWJsaW5nKQorKwkudWxlYjEy OCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51bGViMTI4 IDB4NQkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHg0MTA5CSMgKFRBRzogRFdfVEFHX0dO VV9jYWxsX3NpdGUpCisrCS5ieXRlCTAJIyBEV19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAweDEx CSMgKERXX0FUX2xvd19wYykKKysJLnVsZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVs ZWIxMjggMHgyMTE1CSMgKERXX0FUX0dOVV90YWlsX2NhbGwpCisrCS51bGViMTI4IDB4MTkJIyAo RFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4MzEJIyAoRFdfQVRfYWJzdHJhY3Rf b3JpZ2luKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLmJ5dGUJMAorKwku Ynl0ZQkwCisrCS51bGViMTI4IDB4NgkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHgyZQkj IChUQUc6IERXX1RBR19zdWJwcm9ncmFtKQorKwkuYnl0ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMK KysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4ZQkjIChEV19GT1JN X3N0cnApCisrCS51bGViMTI4IDB4M2EJIyAoRFdfQVRfZGVjbF9maWxlKQorKwkudWxlYjEyOCAw eGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgzYgkjIChEV19BVF9kZWNsX2xpbmUp CisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDI3CSMgKERX X0FUX3Byb3RvdHlwZWQpCisrCS51bGViMTI4IDB4MTkJIyAoRFdfRk9STV9mbGFnX3ByZXNlbnQp CisrCS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19G T1JNX3JlZjQpCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRfbG93X3BjKQorKwkudWxlYjEyOCAw eDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEyCSMgKERXX0FUX2hpZ2hfcGMpCisr CS51bGViMTI4IDB4NgkjIChEV19GT1JNX2RhdGE0KQorKwkudWxlYjEyOCAweDQwCSMgKERXX0FU X2ZyYW1lX2Jhc2UpCisrCS51bGViMTI4IDB4MTgJIyAoRFdfRk9STV9leHBybG9jKQorKwkudWxl YjEyOCAweDIxMTcJIyAoRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzKQorKwkudWxlYjEyOCAweDE5 CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDEJIyAoRFdfQVRfc2libGlu ZykKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJ MAorKwkudWxlYjEyOCAweDcJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MmUJIyAoVEFH OiBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmJ5dGUJMHgxCSMgRFdfY2hpbGRyZW5feWVzCisrCS51 bGViMTI4IDB4M2YJIyAoRFdfQVRfZXh0ZXJuYWwpCisrCS51bGViMTI4IDB4MTkJIyAoRFdfRk9S TV9mbGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEy OCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmls ZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAo RFdfQVRfZGVjbF9saW5lKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVs ZWIxMjggMHgyNwkjIChEV19BVF9wcm90b3R5cGVkKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZP Uk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisrCS51bGVi MTI4IDB4MTMJIyAoRFdfRk9STV9yZWY0KQorKwkudWxlYjEyOCAweDExCSMgKERXX0FUX2xvd19w YykKKysJLnVsZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHgxMgkjIChE V19BVF9oaWdoX3BjKQorKwkudWxlYjEyOCAweDYJIyAoRFdfRk9STV9kYXRhNCkKKysJLnVsZWIx MjggMHg0MAkjIChEV19BVF9mcmFtZV9iYXNlKQorKwkudWxlYjEyOCAweDE4CSMgKERXX0ZPUk1f ZXhwcmxvYykKKysJLnVsZWIxMjggMHgyMTE3CSMgKERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcykK KysJLnVsZWIxMjggMHgxOQkjIChEV19GT1JNX2ZsYWdfcHJlc2VudCkKKysJLmJ5dGUJMAorKwku Ynl0ZQkwCisrCS51bGViMTI4IDB4OAkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHgzNAkj IChUQUc6IERXX1RBR192YXJpYWJsZSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51 bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJw KQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmlsZSkKKysJLnVsZWIxMjggMHhiCSMg KERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVjbF9saW5lKQorKwku dWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHg0OQkjIChEV19BVF90 eXBlKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLnVsZWIxMjggMHgyCSMg KERXX0FUX2xvY2F0aW9uKQorKwkudWxlYjEyOCAweDE3CSMgKERXX0ZPUk1fc2VjX29mZnNldCkK KysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51bGViMTI4IDB4OQkjIChhYmJyZXYgY29kZSkKKysJ LnVsZWIxMjggMHg0MTA5CSMgKFRBRzogRFdfVEFHX0dOVV9jYWxsX3NpdGUpCisrCS5ieXRlCTAJ IyBEV19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAweDExCSMgKERXX0FUX2xvd19wYykKKysJLnVs ZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHgzMQkjIChEV19BVF9hYnN0 cmFjdF9vcmlnaW4pCisrCS51bGViMTI4IDB4MTMJIyAoRFdfRk9STV9yZWY0KQorKwkuYnl0ZQkw CisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkuc2VjdGlvbgkuZGVidWdfbG9jLCIiLEBwcm9nYml0 cworKy5MZGVidWdfbG9jMDoKKysuTExTVDA6CisrCS5sb25nCS5MVkwzCSMgTG9jYXRpb24gbGlz dCBiZWdpbiBhZGRyZXNzICgqLkxMU1QwKQorKwkubG9uZwkuTFZMNAkjIExvY2F0aW9uIGxpc3Qg ZW5kIGFkZHJlc3MgKCouTExTVDApCisrCS52YWx1ZQkweDMJIyBMb2NhdGlvbiBleHByZXNzaW9u IHNpemUKKysJLmJ5dGUJMHg3MAkjIERXX09QX2JyZWcwCisrCS5zbGViMTI4IDEKKysJLmJ5dGUJ MHg5ZgkjIERXX09QX3N0YWNrX3ZhbHVlCisrCS5sb25nCS5MVkw0CSMgTG9jYXRpb24gbGlzdCBi ZWdpbiBhZGRyZXNzICgqLkxMU1QwKQorKwkubG9uZwkuTEZFNAkjIExvY2F0aW9uIGxpc3QgZW5k IGFkZHJlc3MgKCouTExTVDApCisrCS52YWx1ZQkweDEJIyBMb2NhdGlvbiBleHByZXNzaW9uIHNp emUKKysJLmJ5dGUJMHg1MAkjIERXX09QX3JlZzAKKysJLmxvbmcJMAkjIExvY2F0aW9uIGxpc3Qg dGVybWluYXRvciBiZWdpbiAoKi5MTFNUMCkKKysJLmxvbmcJMAkjIExvY2F0aW9uIGxpc3QgdGVy bWluYXRvciBlbmQgKCouTExTVDApCisrCS5zZWN0aW9uCS5kZWJ1Z19hcmFuZ2VzLCIiLEBwcm9n Yml0cworKwkubG9uZwkweDI0CSMgTGVuZ3RoIG9mIEFkZHJlc3MgUmFuZ2VzIEluZm8KKysJLnZh bHVlCTB4MgkjIERXQVJGIFZlcnNpb24KKysJLmxvbmcJLkxkZWJ1Z19pbmZvMAkjIE9mZnNldCBv ZiBDb21waWxhdGlvbiBVbml0IEluZm8KKysJLmJ5dGUJMHg0CSMgU2l6ZSBvZiBBZGRyZXNzCisr CS5ieXRlCTAJIyBTaXplIG9mIFNlZ21lbnQgRGVzY3JpcHRvcgorKwkudmFsdWUJMAkjIFBhZCB0 byA4IGJ5dGUgYm91bmRhcnkKKysJLnZhbHVlCTAKKysJLmxvbmcJLkx0ZXh0MAkjIEFkZHJlc3MK KysJLmxvbmcJLkxldGV4dDAtLkx0ZXh0MAkjIExlbmd0aAorKwkubG9uZwkuTEZCNAkjIEFkZHJl c3MKKysJLmxvbmcJLkxGRTQtLkxGQjQJIyBMZW5ndGgKKysJLmxvbmcJMAorKwkubG9uZwkwCisr CS5zZWN0aW9uCS5kZWJ1Z19yYW5nZXMsIiIsQHByb2diaXRzCisrLkxkZWJ1Z19yYW5nZXMwOgor KwkubG9uZwkuTHRleHQwCSMgT2Zmc2V0IDAKKysJLmxvbmcJLkxldGV4dDAKKysJLmxvbmcJLkxG QjQJIyBPZmZzZXQgMHg4CisrCS5sb25nCS5MRkU0CisrCS5sb25nCTAKKysJLmxvbmcJMAorKwku c2VjdGlvbgkuZGVidWdfbGluZSwiIixAcHJvZ2JpdHMKKysuTGRlYnVnX2xpbmUwOgorKwkuc2Vj dGlvbgkuZGVidWdfc3RyLCJNUyIsQHByb2diaXRzLDEKKysuTEFTRjQ6CisrCS5zdHJpbmcJImJh cl8xIgorKy5MQVNGMjoKKysJLnN0cmluZwkidGFpbGNhbGwtb25seS5jIgorKy5MQVNGMToKKysJ LnN0cmluZwkiR05VIEMgNC44LjMgMjAxNDA5MTEgKFJlZCBIYXQgNC44LjMtOSkgLW0zMiAtbWFy Y2g9aTY4NiAtZyAtTzIiCisrLkxBU0Y2OgorKwkuc3RyaW5nCSJhbnN3ZXIiCisrLkxBU0Y1Ogor Kwkuc3RyaW5nCSJtYWluIgorKy5MQVNGMzoKKysJLnN0cmluZwkiIgorKy5MQVNGMDoKKysJLnN0 cmluZwkiZm9vXzEiCisrCS5pZGVudAkiR0NDOiAoR05VKSA0LjguMyAyMDE0MDkxMSAoUmVkIEhh dCA0LjguMy05KSIKKysJLnNlY3Rpb24JLm5vdGUuR05VLXN0YWNrLCIiLEBwcm9nYml0cworLS0t IC9kZXYvbnVsbAorKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYnRyYWNlL3RhaWxjYWxsLW9ubHku YworQEAgLTAsMCArMSw1MyBAQAorKy8qIFRoaXMgdGVzdGNhc2UgaXMgcGFydCBvZiBHREIsIHRo ZSBHTlUgZGVidWdnZXIuCisrCisrICAgQ29weXJpZ2h0IDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBJbmMuCisrCisrICAgQ29udHJpYnV0ZWQgYnkgSW50ZWwgQ29ycC4gPG1hcmt1cy50 Lm1ldHpnZXJAaW50ZWwuY29tPgorKworKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisrICAgaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkK KysgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgorKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisr CisrICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCisrICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKysgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBG T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisrICAgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKysKKysgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2 ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorKyAgIGFsb25nIHdp dGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNl cy8+LiAgKi8KKysKKytzdGF0aWMgX19hdHRyaWJ1dGVfXyAoKG5vaW5saW5lKSkgaW50CisrYmFy XzEgKHZvaWQpCisreworKyAgcmV0dXJuIDQyOworK30KKysKKytzdGF0aWMgX19hdHRyaWJ1dGVf XyAoKG5vaW5saW5lKSkgaW50CisrYmFyICh2b2lkKQorK3sKKysgIHJldHVybiBiYXJfMSAoKTsK Kyt9CisrCisrc3RhdGljIF9fYXR0cmlidXRlX18gKChub2lubGluZSkpIGludAorK2Zvb18xICh2 b2lkKQorK3sKKysgIHJldHVybiBiYXIgKCk7CisrfQorKworK3N0YXRpYyBfX2F0dHJpYnV0ZV9f ICgobm9pbmxpbmUpKSBpbnQKKytmb28gKHZvaWQpCisreworKyAgcmV0dXJuIGZvb18xICgpOwor K30KKysKKytpbnQKKyttYWluICh2b2lkKQorK3sKKysgIGludCBhbnN3ZXI7CisrCisrICBhbnN3 ZXIgPSBmb28gKCk7CisrICBhbnN3ZXIgKz0gMTsKKysKKysgIHJldHVybiBhbnN3ZXI7CisrfQor LS0tIC9kZXYvbnVsbAorKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYnRyYWNlL3RhaWxjYWxsLW9u bHkuZXhwCitAQCAtMCwwICsxLDk3IEBACisrIyBUaGlzIHRlc3RjYXNlIGlzIHBhcnQgb2YgR0RC LCB0aGUgR05VIGRlYnVnZ2VyLgorKyMKKysjIENvcHlyaWdodCAyMDE2IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLgorKyMKKysjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisrIyBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyMg dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKKysjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisrIworKyMg VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCisrIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgorKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug Zm9yIG1vcmUgZGV0YWlscy4KKysjCisrIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5 IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorKyMgYWxvbmcgd2l0aCB0aGlzIHBy b2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisrIwor KyMKKysjIFRoaXMgaXMgYSB2YXJpYW50IG9mIHRhaWxjYWxsLmV4cCB3aGVyZSB0aGUgZW50aXJl IHRyYWNlIGNvbnRhaW5zIG9ubHkgdGFpbAorKyMgY2FsbHMuICBUaGlzIHVzZWQgdG8gY2F1c2Ug YSBjcmFzaCBpbiBnZXRfZnJhbWVfdHlwZS4KKysjCisrCisrIyBjaGVjayBmb3IgYnRyYWNlIHN1 cHBvcnQKKytpZiB7IFtza2lwX2J0cmFjZV90ZXN0c10gfSB7IHJldHVybiAtMSB9CisrCisrIyBU aGlzIHRlc3QgcmVxdWlyZXMgdGhlIGNvbXBpbGVyIHRvIGdlbmVyYXRlIGEgdGFpbCBjYWxsLiAg VG8gZ3VhcmFudGVlIHRoYXQKKysjIHdlIGFsd2F5cyBnZXQgb25lLCB3ZSB1c2UgYW4gYXNzZW1i bHkgc291cmNlIGZpbGUuCisrIworKyMgV2UgdXNlIGRpZmZlcmVudCBhc3NlbWJseSBzb3VyY2Vz IGJhc2VkIG9uIHRoZSB0YXJnZXQgYXJjaGl0ZWN0dXJlLgorKyMKKysjIEx1Y2tpbHksIHRoZXkg YXJlIHNpbWlsYXIgZW5vdWdoIHRoYXQgYSBzaW5nbGUgdGVzdCBzY3JpcHQgY2FuIGhhbmRsZQor KyMgYm90aC4KKytzZXQgb3B0cyB7fQorK2lmIFtpbmZvIGV4aXN0cyBDT01QSUxFXSB7CisrICAg ICMgbWFrZSBjaGVjayBSVU5URVNURkxBR1M9ImdkYi5idHJhY2UvdGFpbGNhbGwtb25seS5leHAg Q09NUElMRT0xIgorKyAgICBzdGFuZGFyZF90ZXN0ZmlsZSB0YWlsY2FsbC1vbmx5LmMKKysgICAg bGFwcGVuZCBvcHRzIGRlYnVnIG9wdGltaXplPS1PMgorK30gZWxzZWlmIHtbaXN0YXJnZXQgIng4 Nl82NC0qLSoiXX0geworKwlzdGFuZGFyZF90ZXN0ZmlsZSB4ODZfNjQtdGFpbGNhbGwtb25seS5T CisrfSBlbHNlaWYge1tpc3RhcmdldCAiaT84Ni0qLSoiXX0geworKwlzdGFuZGFyZF90ZXN0Zmls ZSBpNjg2LXRhaWxjYWxsLW9ubHkuUworK30gZWxzZSB7CisrICAgIHZlcmJvc2UgIlNraXBwaW5n ICR7dGVzdGZpbGV9LiIKKysgICAgcmV0dXJuCisrfQorKworK2lmIFtwcmVwYXJlX2Zvcl90ZXN0 aW5nIHRhaWxjYWxsLW9ubHkuZXhwICR0ZXN0ZmlsZSAkc3JjZmlsZSAkb3B0c10geworKyAgICBy ZXR1cm4gLTEKKyt9CisraWYgIVtydW50b19tYWluXSB7CisrICAgIHJldHVybiAtMQorK30KKysK KysjIHdlIHdhbnQgdG8gc2VlIHRoZSBmdWxsIHRyYWNlIGZvciB0aGlzIHRlc3QKKytnZGJfdGVz dF9ub19vdXRwdXQgInNldCByZWNvcmQgZnVuY3Rpb24tY2FsbC1oaXN0b3J5LXNpemUgMCIKKysK KysjIHRyYWNlIGZvbworK2dkYl90ZXN0ICJzdGVwIiAiLioiICJwcmVwYXJlIGZvciByZWNvcmRp bmciCisrZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJyZWNvcmQgYnRyYWNlIgorK2dkYl90ZXN0ICJzdGVw aSA0IiAiLioiICJyZWNvcmQgYnJhbmNoIHRyYWNlIgorKworKyMgZm9yIGRlYnVnZ2luZworK2dk Yl90ZXN0ICJpbmZvIHJlY29yZCIgIi4qIgorKworKyMgc2hvdyB0aGUgYnJhbmNoIHRyYWNlIHdp dGggY2FsbHMgaW5kZW50ZWQKKytnZGJfdGVzdCAicmVjb3JkIGZ1bmN0aW9uLWNhbGwtaGlzdG9y eSAvYyAxIiBbbXVsdGlfbGluZSBcCisrICAiMVx0Zm9vIiBcCisrICAiMlx0ICBmb29fMSIgXAor KyAgIjNcdCAgICBiYXIiIFwKKysgICI0XHQgICAgICBiYXJfMSIKKysgIF0gImZ1bmN0aW9uLWNh bGwtaGlzdG9yeSIKKysKKysjIFdlIGNhbiBzdGVwCisrZ2RiX3Rlc3QgInJlY29yZCBnb3RvIGJl Z2luIiAiLipmb28uKiIKKytnZGJfdGVzdCAic3RlcGkiICIuKmZvb18xLioiICJzdGVwIGludG8g Zm9vXzEiCisrZ2RiX3Rlc3QgInN0ZXAiICIuKmJhci4qIiAic3RlcCBpbnRvIGJhciIKKytnZGJf dGVzdCAic3RlcGkiICIuKmJhcl8xLioiICJzdGVwIGludG8gYmFyXzEiCisrCisrIyBXZSBjYW4g bmVpdGhlciBmaW5pc2ggbm9yIHJldHVybi4KKytnZGJfdGVzdCAiZmluaXNoIiAiQ2Fubm90IGZp bmQgdGhlIGNhbGxlciBmcmFtZS4qIgorK2dkYl90ZXN0X211bHRpcGxlICJyZXR1cm4iICJyZXR1 cm4iIHsKKysgIC1yZSAiTWFrZSAuKiByZXR1cm4gbm93Lip5IG9yIG4uICQiIHsKKysgICAgc2Vu ZF9nZGIgInlcbiIKKysgICAgZXhwX2NvbnRpbnVlCisrICB9CisrICAtcmUgIkNhbm5vdCBmaW5k IHRoZSBjYWxsZXIgZnJhbWUuKiRnZGJfcHJvbXB0ICQiIHsKKysgICAgcGFzcyAicmV0dXJuIgor KyAgfQorK30KKysKKysjIEJ1dCB3ZSBjYW4gcmV2ZXJzZS1maW5pc2gKKytnZGJfdGVzdCAicmV2 ZXJzZS1maW5pc2giICIuKmJhci4qIgorK2dkYl90ZXN0ICJyZXZlcnNlLXN0ZXAiICIuKmZvb18x LioiCisrCisrIyBJbmZvIGZyYW1lIGlzbid0IHVzZWZ1bCBidXQgZG9lc24ndCBjcmFzaCBhcyBp dCB1c2VkIHRvLgorK2dkYl90ZXN0ICJ1cCIgIi4qZm9vLioiCisrZ2RiX3Rlc3QgImluZm8gZnJh bWUiICIuKiIKKy0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJ0cmFjZS94 ODZfNjQtdGFpbGNhbGwtb25seS5TCitAQCAtMCwwICsxLDQ0NiBAQAorKy8qIFRoaXMgdGVzdGNh c2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCisrCisrICAgQ29weXJpZ2h0IDIw MTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisrCisrICAgVGhpcyBwcm9ncmFtIGlz IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKysg ICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz IHB1Ymxpc2hlZCBieQorKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCisrICAgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KKysKKysgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorKyAgIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKysgICBHTlUg R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorKworKyAgIFlvdSBzaG91 bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl CisrICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5n bnUub3JnL2xpY2Vuc2VzLz4uCisrCisrCisrICAgVGhpcyBmaWxlIGhhcyBiZWVuIGdlbmVyYXRl ZCB1c2luZzoKKysgICBnY2MgLVMgLU8yIC1kQSAtZyB0YWlsY2FsbC1vbmx5LmMgLW8geDg2XzY0 LXRhaWxjYWxsLW9ubHkuUyAgKi8KKysKKysJLmZpbGUJInRhaWxjYWxsLW9ubHkuYyIKKysJLnRl eHQKKysuTHRleHQwOgorKwkucDJhbGlnbiA0LCwxNQorKwkudHlwZQliYXJfMSwgQGZ1bmN0aW9u CisrYmFyXzE6CisrLkxGQjA6CisrCS5maWxlIDEgInRhaWxjYWxsLW9ubHkuYyIKKysJIyB0YWls Y2FsbC1vbmx5LmM6MjIKKysJLmxvYyAxIDIyIDAKKysJLmNmaV9zdGFydHByb2MKKysjIEJMT0NL IDIgZnJlcToxMDAwMCBzZXE6MAorKyMgUFJFRDogRU5UUlkgWzEwMC4wJV0gIChGQUxMVEhSVSkK KysJIyB0YWlsY2FsbC1vbmx5LmM6MjQKKysJLmxvYyAxIDI0IDAKKysJbW92bAkkNDIsICVlYXgK KysjIFNVQ0M6IEVYSVQgWzEwMC4wJV0KKysJcmV0CisrCS5jZmlfZW5kcHJvYworKy5MRkUwOgor Kwkuc2l6ZQliYXJfMSwgLi1iYXJfMQorKwkucDJhbGlnbiA0LCwxNQorKwkudHlwZQliYXIsIEBm dW5jdGlvbgorK2JhcjoKKysuTEZCMToKKysJIyB0YWlsY2FsbC1vbmx5LmM6MjgKKysJLmxvYyAx IDI4IDAKKysJLmNmaV9zdGFydHByb2MKKysjIEJMT0NLIDIgZnJlcToxMDAwMCBzZXE6MAorKyMg UFJFRDogRU5UUlkgWzEwMC4wJV0gIChGQUxMVEhSVSkKKysJIyB0YWlsY2FsbC1vbmx5LmM6MjkK KysJLmxvYyAxIDI5IDAKKysJam1wCWJhcl8xCisrIyBTVUNDOiBFWElUIFsxMDAuMCVdICAoQUJO T1JNQUwsU0lCQ0FMTCkKKysuTFZMMDoKKysJLmNmaV9lbmRwcm9jCisrLkxGRTE6CisrCS5zaXpl CWJhciwgLi1iYXIKKysJLnAyYWxpZ24gNCwsMTUKKysJLnR5cGUJZm9vXzEsIEBmdW5jdGlvbgor K2Zvb18xOgorKy5MRkIyOgorKwkjIHRhaWxjYWxsLW9ubHkuYzozNAorKwkubG9jIDEgMzQgMAor KwkuY2ZpX3N0YXJ0cHJvYworKyMgQkxPQ0sgMiBmcmVxOjEwMDAwIHNlcTowCisrIyBQUkVEOiBF TlRSWSBbMTAwLjAlXSAgKEZBTExUSFJVKQorKwkjIHRhaWxjYWxsLW9ubHkuYzozNQorKwkubG9j IDEgMzUgMAorKwlqbXAJYmFyCisrIyBTVUNDOiBFWElUIFsxMDAuMCVdICAoQUJOT1JNQUwsU0lC Q0FMTCkKKysuTFZMMToKKysJLmNmaV9lbmRwcm9jCisrLkxGRTI6CisrCS5zaXplCWZvb18xLCAu LWZvb18xCisrCS5wMmFsaWduIDQsLDE1CisrCS50eXBlCWZvbywgQGZ1bmN0aW9uCisrZm9vOgor Ky5MRkIzOgorKwkjIHRhaWxjYWxsLW9ubHkuYzo0MAorKwkubG9jIDEgNDAgMAorKwkuY2ZpX3N0 YXJ0cHJvYworKyMgQkxPQ0sgMiBmcmVxOjEwMDAwIHNlcTowCisrIyBQUkVEOiBFTlRSWSBbMTAw LjAlXSAgKEZBTExUSFJVKQorKwkjIHRhaWxjYWxsLW9ubHkuYzo0MQorKwkubG9jIDEgNDEgMAor KwlqbXAJZm9vXzEKKysjIFNVQ0M6IEVYSVQgWzEwMC4wJV0gIChBQk5PUk1BTCxTSUJDQUxMKQor Ky5MVkwyOgorKwkuY2ZpX2VuZHByb2MKKysuTEZFMzoKKysJLnNpemUJZm9vLCAuLWZvbworKwku c2VjdGlvbgkudGV4dC5zdGFydHVwLCJheCIsQHByb2diaXRzCisrCS5wMmFsaWduIDQsLDE1Cisr CS5nbG9ibAltYWluCisrCS50eXBlCW1haW4sIEBmdW5jdGlvbgorK21haW46CisrLkxGQjQ6Cisr CSMgdGFpbGNhbGwtb25seS5jOjQ2CisrCS5sb2MgMSA0NiAwCisrCS5jZmlfc3RhcnRwcm9jCisr IyBCTE9DSyAyIGZyZXE6MTAwMDAgc2VxOjAKKysjIFBSRUQ6IEVOVFJZIFsxMDAuMCVdICAoRkFM TFRIUlUpCisrCSMgdGFpbGNhbGwtb25seS5jOjQ5CisrCS5sb2MgMSA0OSAwCisrCWNhbGwJZm9v CisrLkxWTDM6CisrCSMgdGFpbGNhbGwtb25seS5jOjUwCisrCS5sb2MgMSA1MCAwCisrCWFkZGwJ JDEsICVlYXgKKysuTFZMNDoKKysjIFNVQ0M6IEVYSVQgWzEwMC4wJV0KKysJIyB0YWlsY2FsbC1v bmx5LmM6NTMKKysJLmxvYyAxIDUzIDAKKysJcmV0CisrCS5jZmlfZW5kcHJvYworKy5MRkU0Ogor Kwkuc2l6ZQltYWluLCAuLW1haW4KKysJLnRleHQKKysuTGV0ZXh0MDoKKysJLnNlY3Rpb24JLmRl YnVnX2luZm8sIiIsQHByb2diaXRzCisrLkxkZWJ1Z19pbmZvMDoKKysJLmxvbmcJMHgxMTEJIyBM ZW5ndGggb2YgQ29tcGlsYXRpb24gVW5pdCBJbmZvCisrCS52YWx1ZQkweDQJIyBEV0FSRiB2ZXJz aW9uIG51bWJlcgorKwkubG9uZwkuTGRlYnVnX2FiYnJldjAJIyBPZmZzZXQgSW50byBBYmJyZXYu IFNlY3Rpb24KKysJLmJ5dGUJMHg4CSMgUG9pbnRlciBTaXplIChpbiBieXRlcykKKysJLnVsZWIx MjggMHgxCSMgKERJRSAoMHhiKSBEV19UQUdfY29tcGlsZV91bml0KQorKwkubG9uZwkuTEFTRjEJ IyBEV19BVF9wcm9kdWNlcjogIkdOVSBDIDQuOC4zIDIwMTQwOTExIChSZWQgSGF0IDQuOC4zLTkp IC1tdHVuZT1nZW5lcmljIC1tYXJjaD14ODYtNjQgLWcgLU8yIgorKwkuYnl0ZQkweDEJIyBEV19B VF9sYW5ndWFnZQorKwkubG9uZwkuTEFTRjIJIyBEV19BVF9uYW1lOiAidGFpbGNhbGwtb25seS5j IgorKwkubG9uZwkuTEFTRjMJIyBEV19BVF9jb21wX2RpcjogIiIKKysJLmxvbmcJLkxkZWJ1Z19y YW5nZXMwKzAJIyBEV19BVF9yYW5nZXMKKysJLnF1YWQJMAkjIERXX0FUX2xvd19wYworKwkubG9u ZwkuTGRlYnVnX2xpbmUwCSMgRFdfQVRfc3RtdF9saXN0CisrCS51bGViMTI4IDB4MgkjIChESUUg KDB4MjkpIERXX1RBR19zdWJwcm9ncmFtKQorKwkubG9uZwkuTEFTRjQJIyBEV19BVF9uYW1lOiAi YmFyXzEiCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfZmlsZSAodGFpbGNhbGwtb25seS5jKQor KwkuYnl0ZQkweDE1CSMgRFdfQVRfZGVjbF9saW5lCisrCQkJIyBEV19BVF9wcm90b3R5cGVkCisr CS5sb25nCTB4NDYJIyBEV19BVF90eXBlCisrCS5xdWFkCS5MRkIwCSMgRFdfQVRfbG93X3BjCisr CS5xdWFkCS5MRkUwLS5MRkIwCSMgRFdfQVRfaGlnaF9wYworKwkudWxlYjEyOCAweDEJIyBEV19B VF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJIyBEV19PUF9jYWxsX2ZyYW1lX2NmYQorKwkJCSMg RFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzCisrCS51bGViMTI4IDB4MwkjIChESUUgKDB4NDYpIERX X1RBR19iYXNlX3R5cGUpCisrCS5ieXRlCTB4NAkjIERXX0FUX2J5dGVfc2l6ZQorKwkuYnl0ZQkw eDUJIyBEV19BVF9lbmNvZGluZworKwkuYXNjaWkgImludFwwIgkjIERXX0FUX25hbWUKKysJLnVs ZWIxMjggMHg0CSMgKERJRSAoMHg0ZCkgRFdfVEFHX3N1YnByb2dyYW0pCisrCS5hc2NpaSAiYmFy XDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9kZWNsX2ZpbGUgKHRhaWxjYWxs LW9ubHkuYykKKysJLmJ5dGUJMHgxYgkjIERXX0FUX2RlY2xfbGluZQorKwkJCSMgRFdfQVRfcHJv dG90eXBlZAorKwkubG9uZwkweDQ2CSMgRFdfQVRfdHlwZQorKwkucXVhZAkuTEZCMQkjIERXX0FU X2xvd19wYworKwkucXVhZAkuTEZFMS0uTEZCMQkjIERXX0FUX2hpZ2hfcGMKKysJLnVsZWIxMjgg MHgxCSMgRFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDljCSMgRFdfT1BfY2FsbF9mcmFtZV9j ZmEKKysJCQkjIERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcworKwkubG9uZwkweDdjCSMgRFdfQVRf c2libGluZworKwkudWxlYjEyOCAweDUJIyAoRElFICgweDZlKSBEV19UQUdfR05VX2NhbGxfc2l0 ZSkKKysJLnF1YWQJLkxWTDAJIyBEV19BVF9sb3dfcGMKKysJCQkjIERXX0FUX0dOVV90YWlsX2Nh bGwKKysJLmxvbmcJMHgyOQkjIERXX0FUX2Fic3RyYWN0X29yaWdpbgorKwkuYnl0ZQkwCSMgZW5k IG9mIGNoaWxkcmVuIG9mIERJRSAweDRkCisrCS51bGViMTI4IDB4NgkjIChESUUgKDB4N2MpIERX X1RBR19zdWJwcm9ncmFtKQorKwkubG9uZwkuTEFTRjAJIyBEV19BVF9uYW1lOiAiZm9vXzEiCisr CS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfZmlsZSAodGFpbGNhbGwtb25seS5jKQorKwkuYnl0ZQkw eDIxCSMgRFdfQVRfZGVjbF9saW5lCisrCQkJIyBEV19BVF9wcm90b3R5cGVkCisrCS5sb25nCTB4 NDYJIyBEV19BVF90eXBlCisrCS5xdWFkCS5MRkIyCSMgRFdfQVRfbG93X3BjCisrCS5xdWFkCS5M RkUyLS5MRkIyCSMgRFdfQVRfaGlnaF9wYworKwkudWxlYjEyOCAweDEJIyBEV19BVF9mcmFtZV9i YXNlCisrCS5ieXRlCTB4OWMJIyBEV19PUF9jYWxsX2ZyYW1lX2NmYQorKwkJCSMgRFdfQVRfR05V X2FsbF9jYWxsX3NpdGVzCisrCS5sb25nCTB4YWIJIyBEV19BVF9zaWJsaW5nCisrCS51bGViMTI4 IDB4NQkjIChESUUgKDB4OWQpIERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkucXVhZAkuTFZMMQkj IERXX0FUX2xvd19wYworKwkJCSMgRFdfQVRfR05VX3RhaWxfY2FsbAorKwkubG9uZwkweDRkCSMg RFdfQVRfYWJzdHJhY3Rfb3JpZ2luCisrCS5ieXRlCTAJIyBlbmQgb2YgY2hpbGRyZW4gb2YgRElF IDB4N2MKKysJLnVsZWIxMjggMHg0CSMgKERJRSAoMHhhYikgRFdfVEFHX3N1YnByb2dyYW0pCisr CS5hc2NpaSAiZm9vXDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9kZWNsX2Zp bGUgKHRhaWxjYWxsLW9ubHkuYykKKysJLmJ5dGUJMHgyNwkjIERXX0FUX2RlY2xfbGluZQorKwkJ CSMgRFdfQVRfcHJvdG90eXBlZAorKwkubG9uZwkweDQ2CSMgRFdfQVRfdHlwZQorKwkucXVhZAku TEZCMwkjIERXX0FUX2xvd19wYworKwkucXVhZAkuTEZFMy0uTEZCMwkjIERXX0FUX2hpZ2hfcGMK KysJLnVsZWIxMjggMHgxCSMgRFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDljCSMgRFdfT1Bf Y2FsbF9mcmFtZV9jZmEKKysJCQkjIERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcworKwkubG9uZwkw eGRhCSMgRFdfQVRfc2libGluZworKwkudWxlYjEyOCAweDUJIyAoRElFICgweGNjKSBEV19UQUdf R05VX2NhbGxfc2l0ZSkKKysJLnF1YWQJLkxWTDIJIyBEV19BVF9sb3dfcGMKKysJCQkjIERXX0FU X0dOVV90YWlsX2NhbGwKKysJLmxvbmcJMHg3YwkjIERXX0FUX2Fic3RyYWN0X29yaWdpbgorKwku Ynl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweGFiCisrCS51bGViMTI4IDB4NwkjIChE SUUgKDB4ZGEpIERXX1RBR19zdWJwcm9ncmFtKQorKwkJCSMgRFdfQVRfZXh0ZXJuYWwKKysJLmxv bmcJLkxBU0Y1CSMgRFdfQVRfbmFtZTogIm1haW4iCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xf ZmlsZSAodGFpbGNhbGwtb25seS5jKQorKwkuYnl0ZQkweDJkCSMgRFdfQVRfZGVjbF9saW5lCisr CQkJIyBEV19BVF9wcm90b3R5cGVkCisrCS5sb25nCTB4NDYJIyBEV19BVF90eXBlCisrCS5xdWFk CS5MRkI0CSMgRFdfQVRfbG93X3BjCisrCS5xdWFkCS5MRkU0LS5MRkI0CSMgRFdfQVRfaGlnaF9w YworKwkudWxlYjEyOCAweDEJIyBEV19BVF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJIyBEV19P UF9jYWxsX2ZyYW1lX2NmYQorKwkJCSMgRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzCisrCS51bGVi MTI4IDB4OAkjIChESUUgKDB4ZjcpIERXX1RBR192YXJpYWJsZSkKKysJLmxvbmcJLkxBU0Y2CSMg RFdfQVRfbmFtZTogImFuc3dlciIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfZGVjbF9maWxlICh0YWls Y2FsbC1vbmx5LmMpCisrCS5ieXRlCTB4MmYJIyBEV19BVF9kZWNsX2xpbmUKKysJLmxvbmcJMHg0 NgkjIERXX0FUX3R5cGUKKysJLmxvbmcJLkxMU1QwCSMgRFdfQVRfbG9jYXRpb24KKysJLnVsZWIx MjggMHg5CSMgKERJRSAoMHgxMDYpIERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkucXVhZAkuTFZM MwkjIERXX0FUX2xvd19wYworKwkubG9uZwkweGFiCSMgRFdfQVRfYWJzdHJhY3Rfb3JpZ2luCisr CS5ieXRlCTAJIyBlbmQgb2YgY2hpbGRyZW4gb2YgRElFIDB4ZGEKKysJLmJ5dGUJMAkjIGVuZCBv ZiBjaGlsZHJlbiBvZiBESUUgMHhiCisrCS5zZWN0aW9uCS5kZWJ1Z19hYmJyZXYsIiIsQHByb2di aXRzCisrLkxkZWJ1Z19hYmJyZXYwOgorKwkudWxlYjEyOCAweDEJIyAoYWJicmV2IGNvZGUpCisr CS51bGViMTI4IDB4MTEJIyAoVEFHOiBEV19UQUdfY29tcGlsZV91bml0KQorKwkuYnl0ZQkweDEJ IyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIxMjggMHgyNQkjIChEV19BVF9wcm9kdWNlcikKKysJ LnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIxMjggMHgxMwkjIChEV19BVF9s YW5ndWFnZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4 MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwkudWxl YjEyOCAweDFiCSMgKERXX0FUX2NvbXBfZGlyKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9z dHJwKQorKwkudWxlYjEyOCAweDU1CSMgKERXX0FUX3JhbmdlcykKKysJLnVsZWIxMjggMHgxNwkj IChEV19GT1JNX3NlY19vZmZzZXQpCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRfbG93X3BjKQor KwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEwCSMgKERXX0FU X3N0bXRfbGlzdCkKKysJLnVsZWIxMjggMHgxNwkjIChEV19GT1JNX3NlY19vZmZzZXQpCisrCS5i eXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDIJIyAoYWJicmV2IGNvZGUpCisrCS51bGVi MTI4IDB4MmUJIyAoVEFHOiBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmJ5dGUJMAkjIERXX2NoaWxk cmVuX25vCisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAo RFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmlsZSkKKysJLnVs ZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVj bF9saW5lKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgy NwkjIChEV19BVF9wcm90b3R5cGVkKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19w cmVzZW50KQorKwkudWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisrCS51bGViMTI4IDB4MTMJ IyAoRFdfRk9STV9yZWY0KQorKwkudWxlYjEyOCAweDExCSMgKERXX0FUX2xvd19wYykKKysJLnVs ZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHgxMgkjIChEV19BVF9oaWdo X3BjKQorKwkudWxlYjEyOCAweDcJIyAoRFdfRk9STV9kYXRhOCkKKysJLnVsZWIxMjggMHg0MAkj IChEV19BVF9mcmFtZV9iYXNlKQorKwkudWxlYjEyOCAweDE4CSMgKERXX0ZPUk1fZXhwcmxvYykK KysJLnVsZWIxMjggMHgyMTE3CSMgKERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcykKKysJLnVsZWIx MjggMHgxOQkjIChEV19GT1JNX2ZsYWdfcHJlc2VudCkKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisr CS51bGViMTI4IDB4MwkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHgyNAkjIChUQUc6IERX X1RBR19iYXNlX3R5cGUpCisrCS5ieXRlCTAJIyBEV19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAw eGIJIyAoRFdfQVRfYnl0ZV9zaXplKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkK KysJLnVsZWIxMjggMHgzZQkjIChEV19BVF9lbmNvZGluZykKKysJLnVsZWIxMjggMHhiCSMgKERX X0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAw eDgJIyAoRFdfRk9STV9zdHJpbmcpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAw eDQJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MmUJIyAoVEFHOiBEV19UQUdfc3VicHJv Z3JhbSkKKysJLmJ5dGUJMHgxCSMgRFdfY2hpbGRyZW5feWVzCisrCS51bGViMTI4IDB4MwkjIChE V19BVF9uYW1lKQorKwkudWxlYjEyOCAweDgJIyAoRFdfRk9STV9zdHJpbmcpCisrCS51bGViMTI4 IDB4M2EJIyAoRFdfQVRfZGVjbF9maWxlKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRh MSkKKysJLnVsZWIxMjggMHgzYgkjIChEV19BVF9kZWNsX2xpbmUpCisrCS51bGViMTI4IDB4Ygkj IChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDI3CSMgKERXX0FUX3Byb3RvdHlwZWQpCisr CS51bGViMTI4IDB4MTkJIyAoRFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4NDkJ IyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS51bGVi MTI4IDB4MTEJIyAoRFdfQVRfbG93X3BjKQorKwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRy KQorKwkudWxlYjEyOCAweDEyCSMgKERXX0FUX2hpZ2hfcGMpCisrCS51bGViMTI4IDB4NwkjIChE V19GT1JNX2RhdGE4KQorKwkudWxlYjEyOCAweDQwCSMgKERXX0FUX2ZyYW1lX2Jhc2UpCisrCS51 bGViMTI4IDB4MTgJIyAoRFdfRk9STV9leHBybG9jKQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdf QVRfR05VX2FsbF9jYWxsX3NpdGVzKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19w cmVzZW50KQorKwkudWxlYjEyOCAweDEJIyAoRFdfQVRfc2libGluZykKKysJLnVsZWIxMjggMHgx MwkjIChEV19GT1JNX3JlZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDUJ IyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4NDEwOQkjIChUQUc6IERXX1RBR19HTlVfY2Fs bF9zaXRlKQorKwkuYnl0ZQkwCSMgRFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgxMQkjIChE V19BVF9sb3dfcGMpCisrCS51bGViMTI4IDB4MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4 IDB4MjExNQkjIChEV19BVF9HTlVfdGFpbF9jYWxsKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZP Uk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDMxCSMgKERXX0FUX2Fic3RyYWN0X29yaWdp bikKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJ MAorKwkudWxlYjEyOCAweDYJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MmUJIyAoVEFH OiBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmJ5dGUJMHgxCSMgRFdfY2hpbGRyZW5feWVzCisrCS51 bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJw KQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmlsZSkKKysJLnVsZWIxMjggMHhiCSMg KERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVjbF9saW5lKQorKwku dWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgyNwkjIChEV19BVF9w cm90b3R5cGVkKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwku dWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisrCS51bGViMTI4IDB4MTMJIyAoRFdfRk9STV9y ZWY0KQorKwkudWxlYjEyOCAweDExCSMgKERXX0FUX2xvd19wYykKKysJLnVsZWIxMjggMHgxCSMg KERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHgxMgkjIChEV19BVF9oaWdoX3BjKQorKwkudWxl YjEyOCAweDcJIyAoRFdfRk9STV9kYXRhOCkKKysJLnVsZWIxMjggMHg0MAkjIChEV19BVF9mcmFt ZV9iYXNlKQorKwkudWxlYjEyOCAweDE4CSMgKERXX0ZPUk1fZXhwcmxvYykKKysJLnVsZWIxMjgg MHgyMTE3CSMgKERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcykKKysJLnVsZWIxMjggMHgxOQkjIChE V19GT1JNX2ZsYWdfcHJlc2VudCkKKysJLnVsZWIxMjggMHgxCSMgKERXX0FUX3NpYmxpbmcpCisr CS51bGViMTI4IDB4MTMJIyAoRFdfRk9STV9yZWY0KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJ LnVsZWIxMjggMHg3CSMgKGFiYnJldiBjb2RlKQorKwkudWxlYjEyOCAweDJlCSMgKFRBRzogRFdf VEFHX3N1YnByb2dyYW0pCisrCS5ieXRlCTB4MQkjIERXX2NoaWxkcmVuX3llcworKwkudWxlYjEy OCAweDNmCSMgKERXX0FUX2V4dGVybmFsKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxh Z19wcmVzZW50KQorKwkudWxlYjEyOCAweDMJIyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHhl CSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUpCisr CS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMgKERXX0FU X2RlY2xfbGluZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4 IDB4MjcJIyAoRFdfQVRfcHJvdG90eXBlZCkKKysJLnVsZWIxMjggMHgxOQkjIChEV19GT1JNX2Zs YWdfcHJlc2VudCkKKysJLnVsZWIxMjggMHg0OQkjIChEV19BVF90eXBlKQorKwkudWxlYjEyOCAw eDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisr CS51bGViMTI4IDB4MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MTIJIyAoRFdfQVRf aGlnaF9wYykKKysJLnVsZWIxMjggMHg3CSMgKERXX0ZPUk1fZGF0YTgpCisrCS51bGViMTI4IDB4 NDAJIyAoRFdfQVRfZnJhbWVfYmFzZSkKKysJLnVsZWIxMjggMHgxOAkjIChEV19GT1JNX2V4cHJs b2MpCisrCS51bGViMTI4IDB4MjExNwkjIChEV19BVF9HTlVfYWxsX2NhbGxfc2l0ZXMpCisrCS51 bGViMTI4IDB4MTkJIyAoRFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS5ieXRlCTAKKysJLmJ5dGUJ MAorKwkudWxlYjEyOCAweDgJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MzQJIyAoVEFH OiBEV19UQUdfdmFyaWFibGUpCisrCS5ieXRlCTAJIyBEV19jaGlsZHJlbl9ubworKwkudWxlYjEy OCAweDMJIyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJ LnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUpCisrCS51bGViMTI4IDB4YgkjIChEV19G T1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMgKERXX0FUX2RlY2xfbGluZSkKKysJLnVsZWIx MjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkK KysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS51bGViMTI4IDB4MgkjIChEV19B VF9sb2NhdGlvbikKKysJLnVsZWIxMjggMHgxNwkjIChEV19GT1JNX3NlY19vZmZzZXQpCisrCS5i eXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDkJIyAoYWJicmV2IGNvZGUpCisrCS51bGVi MTI4IDB4NDEwOQkjIChUQUc6IERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkuYnl0ZQkwCSMgRFdf Y2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51bGViMTI4 IDB4MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MzEJIyAoRFdfQVRfYWJzdHJhY3Rf b3JpZ2luKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLmJ5dGUJMAorKwku Ynl0ZQkwCisrCS5ieXRlCTAKKysJLnNlY3Rpb24JLmRlYnVnX2xvYywiIixAcHJvZ2JpdHMKKysu TGRlYnVnX2xvYzA6CisrLkxMU1QwOgorKwkucXVhZAkuTFZMMwkjIExvY2F0aW9uIGxpc3QgYmVn aW4gYWRkcmVzcyAoKi5MTFNUMCkKKysJLnF1YWQJLkxWTDQJIyBMb2NhdGlvbiBsaXN0IGVuZCBh ZGRyZXNzICgqLkxMU1QwKQorKwkudmFsdWUJMHgzCSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXpl CisrCS5ieXRlCTB4NzAJIyBEV19PUF9icmVnMAorKwkuc2xlYjEyOCAxCisrCS5ieXRlCTB4OWYJ IyBEV19PUF9zdGFja192YWx1ZQorKwkucXVhZAkuTFZMNAkjIExvY2F0aW9uIGxpc3QgYmVnaW4g YWRkcmVzcyAoKi5MTFNUMCkKKysJLnF1YWQJLkxGRTQJIyBMb2NhdGlvbiBsaXN0IGVuZCBhZGRy ZXNzICgqLkxMU1QwKQorKwkudmFsdWUJMHgxCSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXplCisr CS5ieXRlCTB4NTAJIyBEV19PUF9yZWcwCisrCS5xdWFkCTAJIyBMb2NhdGlvbiBsaXN0IHRlcm1p bmF0b3IgYmVnaW4gKCouTExTVDApCisrCS5xdWFkCTAJIyBMb2NhdGlvbiBsaXN0IHRlcm1pbmF0 b3IgZW5kICgqLkxMU1QwKQorKwkuc2VjdGlvbgkuZGVidWdfYXJhbmdlcywiIixAcHJvZ2JpdHMK KysJLmxvbmcJMHgzYwkjIExlbmd0aCBvZiBBZGRyZXNzIFJhbmdlcyBJbmZvCisrCS52YWx1ZQkw eDIJIyBEV0FSRiBWZXJzaW9uCisrCS5sb25nCS5MZGVidWdfaW5mbzAJIyBPZmZzZXQgb2YgQ29t cGlsYXRpb24gVW5pdCBJbmZvCisrCS5ieXRlCTB4OAkjIFNpemUgb2YgQWRkcmVzcworKwkuYnl0 ZQkwCSMgU2l6ZSBvZiBTZWdtZW50IERlc2NyaXB0b3IKKysJLnZhbHVlCTAJIyBQYWQgdG8gMTYg Ynl0ZSBib3VuZGFyeQorKwkudmFsdWUJMAorKwkucXVhZAkuTHRleHQwCSMgQWRkcmVzcworKwku cXVhZAkuTGV0ZXh0MC0uTHRleHQwCSMgTGVuZ3RoCisrCS5xdWFkCS5MRkI0CSMgQWRkcmVzcwor KwkucXVhZAkuTEZFNC0uTEZCNAkjIExlbmd0aAorKwkucXVhZAkwCisrCS5xdWFkCTAKKysJLnNl Y3Rpb24JLmRlYnVnX3JhbmdlcywiIixAcHJvZ2JpdHMKKysuTGRlYnVnX3JhbmdlczA6CisrCS5x dWFkCS5MdGV4dDAJIyBPZmZzZXQgMAorKwkucXVhZAkuTGV0ZXh0MAorKwkucXVhZAkuTEZCNAkj IE9mZnNldCAweDEwCisrCS5xdWFkCS5MRkU0CisrCS5xdWFkCTAKKysJLnF1YWQJMAorKwkuc2Vj dGlvbgkuZGVidWdfbGluZSwiIixAcHJvZ2JpdHMKKysuTGRlYnVnX2xpbmUwOgorKwkuc2VjdGlv bgkuZGVidWdfc3RyLCJNUyIsQHByb2diaXRzLDEKKysuTEFTRjQ6CisrCS5zdHJpbmcJImJhcl8x IgorKy5MQVNGMjoKKysJLnN0cmluZwkidGFpbGNhbGwtb25seS5jIgorKy5MQVNGMToKKysJLnN0 cmluZwkiR05VIEMgNC44LjMgMjAxNDA5MTEgKFJlZCBIYXQgNC44LjMtOSkgLW10dW5lPWdlbmVy aWMgLW1hcmNoPXg4Ni02NCAtZyAtTzIiCisrLkxBU0Y2OgorKwkuc3RyaW5nCSJhbnN3ZXIiCisr LkxBU0Y1OgorKwkuc3RyaW5nCSJtYWluIgorKy5MQVNGMzoKKysJLnN0cmluZwkiIgorKy5MQVNG MDoKKysJLnN0cmluZwkiZm9vXzEiCisrCS5pZGVudAkiR0NDOiAoR05VKSA0LjguMyAyMDE0MDkx MSAoUmVkIEhhdCA0LjguMy05KSIKKysJLnNlY3Rpb24JLm5vdGUuR05VLXN0YWNrLCIiLEBwcm9n Yml0cworCisKKworY29tbWl0IGNkNjRjYWJiOGM2NmE1NTY1ZmMzM2JmNjZhMDdjMDhiYzc2N2U0 MTMKK0F1dGhvcjogWWljaGFvIFl1IDx5eWMxOTkyQGdtYWlsLmNvbT4KK0RhdGU6ICAgVGh1IE1h ciAzMSAxOToyODo0NyAyMDE2ICswMTAwCisKKyAgICBGaXggUFIgZ2RiLzE5ODU4OiBHREIgZG9l c24ndCByZWdpc3RlciB0aGUgSklUIGxpYnJhcmllcyBvbiBhdHRhY2gKKyAgICAKKyAgICBSZWY6 IGh0dHBzOi8vc291cmNld2FyZS5vcmcvbWwvZ2RiLzIwMTYtMDMvbXNnMDAwMjMuaHRtbAorICAg IAorICAgIEdEQiBjdXJyZW50bHkgZmFpbHMgdG8gZmV0Y2ggdGhlIGxpc3Qgb2YgYWxyZWFkeS1y ZWdpc3RlcmVkIEpJVAorICAgIG1vZHVsZXMgb24gYXR0YWNoLgorICAgIAorICAgIE5vdGhpbmcg aXMgY2FsbGluZyBqaXRfaW5mZXJpb3JfaW5pdCwgd2hpY2ggaXMgd2hhdCBpcyByZXNwb25zaWJs ZSBmb3IKKyAgICB3YWxraW5nIHRoZSBKSVQgb2JqZWN0IGxpc3QgYXQgaW5pdCB0aW1lLgorICAg IAorICAgIERlc3BpdGUgdGhlIG1pc2xlYWRpbmcgbmFtaW5nLCBqaXRfaW5mZXJpb3JfY3JlYXRl ZF9ob29rIC0+CisgICAgaml0X2luZmVyaW9yX2luaXQgaXMgb25seSBjYWxsZWQgd2hlbiB0aGUg aW5mZXJpb3IgZXhlY3MuCisgICAgCisgICAgVGhpcyByZWdyZXNzZWQgd2l0aCB0aGUgZml4IGZv ciBQUiBnZGIvMTM0MzEgKDAzYmVmMjgzYzJkMyk6CisgICAgIGh0dHBzOi8vc291cmNld2FyZS5v cmcvbWwvZ2RiLXBhdGNoZXMvMjAxMi0wMi9tc2cwMDAyMy5odG1sIHdoaWNoCisgICAgcmVtb3Zl ZCB0aGUgaW5mZXJpb3JfY3JlYXRlZCAoaml0X2luZmVyaW9yX2NyZWF0ZWRfb2JzZXJ2ZXIpCisg ICAgb2JzZXJ2ZXIuCisgICAgCisgICAgQWRkaW5nIGFuIGluZmVyaW9yX2NyZWF0ZWQgb2JzZXJ2 ZXIgYmFjayBmaXhlcyB0aGUgaXNzdWUuCisgICAgCisgICAgSW4gdHVybiwgdGhpcyBleHBvc2Vz IGEgYnVnIGluIGppdF9icmVha3BvaW50X3JlX3NldF9pbnRlcm5hbCBhcyB3ZWxsLAorICAgIHdo aWNoIGlzIHJldHVybmluZyB0aGUgd3JvbmcgcmVzdWx0IHdoZW4gd2UgYWxyZWFkeSBoYXZlIHRo ZQorICAgIGJyZWFrcG9pbnQgYXQgdGhlIHJpZ2h0IGFkZHJlc3MuCisgICAgCisgICAgZ2RiL0No YW5nZUxvZzoKKyAgICAyMDE2LTAzLTMxICBZaWNoYW8gWXUgIDx5eWMxOTkyQGdtYWlsLmNvbT4K KyAgICAKKyAgICAJUFIgZ2RiLzE5ODU4CisgICAgCSogaml0LmMgKGppdF9icmVha3BvaW50X3Jl X3NldF9pbnRlcm5hbCk6IFJldHVybiAwIGlmIHdlIGFscmVhZHkKKyAgICAJZ290IHRoZSBicmVh a3BvaW50IGF0IHRoZSByaWdodCBhZGRyZXNzLgorICAgIAkoaml0X2luZmVyaW9yX2NyZWF0ZWQp OiBOZXcgZnVuY3Rpb24uCisgICAgCShfaW5pdGlhbGl6ZV9qaXQpOiBJbnN0YWxsIGppdF9pbmZl cmlvcl9jcmVhdGVkIGFzCisgICAgCWluZmVyaW9yX2NyZWF0ZWQgb2JzZXJ2ZXIuCisgICAgCisg ICAgU2lnbmVkLW9mZi1ieTogUGVkcm8gQWx2ZXMgPHBhbHZlc0ByZWRoYXQuY29tPgorCisjIyMg YS9nZGIvQ2hhbmdlTG9nCisjIyMgYi9nZGIvQ2hhbmdlTG9nCisjIyAtMSwzICsxLDEyIEBACisr MjAxNi0wMy0zMSAgWWljaGFvIFl1ICA8eXljMTk5MkBnbWFpbC5jb20+CisrCisrCVBSIGdkYi8x OTg1OAorKwkqIGppdC5jIChqaXRfYnJlYWtwb2ludF9yZV9zZXRfaW50ZXJuYWwpOiBSZXR1cm4g MCBpZiB3ZSBhbHJlYWR5CisrCWdvdCB0aGUgYnJlYWtwb2ludCBhdCB0aGUgcmlnaHQgYWRkcmVz cy4KKysJKGppdF9pbmZlcmlvcl9jcmVhdGVkKTogTmV3IGZ1bmN0aW9uLgorKwkoX2luaXRpYWxp emVfaml0KTogSW5zdGFsbCBqaXRfaW5mZXJpb3JfY3JlYXRlZCBhcworKwlpbmZlcmlvcl9jcmVh dGVkIG9ic2VydmVyLgorKworIDIwMTYtMDMtMTcgIE1hcmt1cyBNZXR6Z2VyICA8bWFya3VzLnQu bWV0emdlckBpbnRlbC5jb20+CisgCisgCVBSIGdkYi8xOTgyOQorLS0tIGEvZ2RiL2ppdC5jCisr KysgYi9nZGIvaml0LmMKK0BAIC0xMDI2LDcgKzEwMjYsNyBAQCBqaXRfYnJlYWtwb2ludF9kZWxl dGVkIChzdHJ1Y3QgYnJlYWtwb2ludCAqYikKKyB9CisgCisgLyogKFJlLSlJbml0aWFsaXplIHRo ZSBqaXQgYnJlYWtwb2ludCBpZiBuZWNlc3NhcnkuCistICAgUmV0dXJuIDAgb24gc3VjY2Vzcy4g ICovCisrICAgUmV0dXJuIDAgaWYgdGhlIGppdCBicmVha3BvaW50IGhhcyBiZWVuIHN1Y2Nlc3Nm dWxseSBpbml0aWFsaXplZC4gICovCisgCisgc3RhdGljIGludAorIGppdF9icmVha3BvaW50X3Jl X3NldF9pbnRlcm5hbCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCitAQCAtMTA3MCw3ICsxMDcw LDcgQEAgaml0X2JyZWFrcG9pbnRfcmVfc2V0X2ludGVybmFsIChzdHJ1Y3QgZ2RiYXJjaCAqZ2Ri YXJjaCwKKyAJCQlwYWRkcmVzcyAoZ2RiYXJjaCwgYWRkcikpOworIAorICAgaWYgKHBzX2RhdGEt PmNhY2hlZF9jb2RlX2FkZHJlc3MgPT0gYWRkcikKKy0gICAgcmV0dXJuIDE7CisrICAgIHJldHVy biAwOworIAorICAgLyogRGVsZXRlIHRoZSBvbGQgYnJlYWtwb2ludC4gICovCisgICBpZiAocHNf ZGF0YS0+aml0X2JyZWFrcG9pbnQgIT0gTlVMTCkKK0BAIC0xMzY3LDYgKzEzNjcsMTQgQEAgaml0 X2luZmVyaW9yX2luaXQgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoKQorICAgICB9CisgfQorIAor Ky8qIGluZmVyaW9yX2NyZWF0ZWQgb2JzZXJ2ZXIuICAqLworKworK3N0YXRpYyB2b2lkCisraml0 X2luZmVyaW9yX2NyZWF0ZWQgKHN0cnVjdCB0YXJnZXRfb3BzICpvcHMsIGludCBmcm9tX3R0eSkK Kyt7CisrICBqaXRfaW5mZXJpb3JfY3JlYXRlZF9ob29rICgpOworK30KKysKKyAvKiBFeHBvcnRl ZCByb3V0aW5lIHRvIGNhbGwgd2hlbiBhbiBpbmZlcmlvciBoYXMgYmVlbiBjcmVhdGVkLiAgKi8K KyAKKyB2b2lkCitAQCAtMTQ5Niw2ICsxNTA0LDcgQEAgX2luaXRpYWxpemVfaml0ICh2b2lkKQor IAkJCSAgICAgc2hvd19qaXRfZGVidWcsCisgCQkJICAgICAmc2V0ZGVidWdsaXN0LCAmc2hvd2Rl YnVnbGlzdCk7CisgCisrICBvYnNlcnZlcl9hdHRhY2hfaW5mZXJpb3JfY3JlYXRlZCAoaml0X2lu ZmVyaW9yX2NyZWF0ZWQpOworICAgb2JzZXJ2ZXJfYXR0YWNoX2luZmVyaW9yX2V4aXQgKGppdF9p bmZlcmlvcl9leGl0X2hvb2spOworICAgb2JzZXJ2ZXJfYXR0YWNoX2JyZWFrcG9pbnRfZGVsZXRl ZCAoaml0X2JyZWFrcG9pbnRfZGVsZXRlZCk7CisgCisKKworCitjb21taXQgODlkZjVkNmNjZTBl OTFjNGIzNGM3YTYyYmE0YTY4NzU2YThlZDRlNworQXV0aG9yOiBQZWRybyBBbHZlcyA8cGFsdmVz QHJlZGhhdC5jb20+CitEYXRlOiAgIFRodSBNYXIgMzEgMTk6Mjg6NDcgMjAxNiArMDEwMAorCisg ICAgTWFrZSBnZGIuYmFzZS9qaXQuZXhwIGJpbmFyaWVzIHVuaXF1ZQorICAgIAorICAgIFRoaXMg dGVzdGNhc2UgY29tcGlsZXMgdGhlIHNhbWUgcHJvZ3JhbSBhbmQgbGlicmFyeSBkaWZmZXJlbnRs eQorICAgIG11bHRpcGxlIHRpbWVzIHVzaW5nIHRoZSBzYW1lIGZpbGUgbmFtZXMuICBNYWtlIHRo ZW0gdW5pcXVlLCB0byBtYWtlCisgICAgaXQgZWFzaWVyIHRvIGRlYnVnIHRlc3QgcHJvYmxlbXMu CisgICAgCisgICAgZ2RiL3Rlc3RzdWl0ZS9DaGFuZ2VMb2c6CisgICAgMjAxNi0wMy0zMSAgUGVk cm8gQWx2ZXMgIDxwYWx2ZXNAcmVkaGF0LmNvbT4KKyAgICAKKyAgICAJUFIgZ2RiLzE5ODU4Cisg ICAgCSogZ2RiLmJhc2Uvaml0LmV4cCAoY29tcGlsZV9qaXRfdGVzdCk6IEFkZCBpbnRybyBjb21t ZW50LiAgQWRkCisgICAgCUJJTlNVRkZJWCBwYXJhbWV0ZXIsIGFuZCBoYW5kbGUgaXQuCisgICAg CSh0b3AgbGV2ZWwpOiBBZGp1c3QgY2FsbHMgY29tcGlsZV9qaXRfdGVzdC4KKworIyMjIGEvZ2Ri L3Rlc3RzdWl0ZS9DaGFuZ2VMb2cKKyMjIyBiL2dkYi90ZXN0c3VpdGUvQ2hhbmdlTG9nCisjIyAt MSwzICsxLDEwIEBACisrMjAxNi0wMy0zMSAgUGVkcm8gQWx2ZXMgIDxwYWx2ZXNAcmVkaGF0LmNv bT4KKysKKysJUFIgZ2RiLzE5ODU4CisrCSogZ2RiLmJhc2Uvaml0LmV4cCAoY29tcGlsZV9qaXRf dGVzdCk6IEFkZCBpbnRybyBjb21tZW50LiAgQWRkCisrCUJJTlNVRkZJWCBwYXJhbWV0ZXIsIGFu ZCBoYW5kbGUgaXQuCisrCSh0b3AgbGV2ZWwpOiBBZGp1c3QgY2FsbHMgY29tcGlsZV9qaXRfdGVz dC4KKysKKyAyMDE2LTAzLTE3ICBNYXJrdXMgTWV0emdlciAgPG1hcmt1cy50Lm1ldHpnZXJAaW50 ZWwuY29tPgorIAorIAlQUiBnZGIvMTk4MjkKKy0tLSBhL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uv aml0LmV4cAorKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9qaXQuZXhwCitAQCAtMjQsMTgg KzI0LDE5IEBAIGlmIHtbZ2V0X2NvbXBpbGVyX2luZm9dfSB7CisgICAgIHJldHVybiAxCisgfQor IAorLSMKKy0jIHRlc3QgcnVubmluZyBwcm9ncmFtcworLSMKKysjIENvbXBpbGUgdGhlIHRlc3Rj YXNlIHByb2dyYW0gYW5kIGxpYnJhcnkuICBCSU5TVUZGSVggaXMgdGhlIHN1ZmZpeAorKyMgdG8g YXBwZW5kIHRvIHRoZSBwcm9ncmFtIGFuZCBsaWJyYXJ5IGZpbGVuYW1lcywgdG8gbWFrZSB0aGVt IHVuaXF1ZQorKyMgYmV0d2VlbiBpbnZvY2F0aW9ucy4gIE9QVElPTlMgaXMgcGFzc2VkIHRvIGdk Yl9jb21waWxlIHdoZW4KKysjIGNvbXBpbGluZyB0aGUgcHJvZ3JhbS4KKyAKKy1wcm9jIGNvbXBp bGVfaml0X3Rlc3Qge3Rlc3RuYW1lIG9wdGlvbnN9IHsKKytwcm9jIGNvbXBpbGVfaml0X3Rlc3Qg e3Rlc3RuYW1lIGJpbnN1ZmZpeCBvcHRpb25zfSB7CisgICAgIGdsb2JhbCB0ZXN0ZmlsZSBzcmNm aWxlIGJpbmZpbGUgc3JjZGlyIHN1YmRpcgorICAgICBnbG9iYWwgc29saWJfdGVzdGZpbGUgc29s aWJfc3JjZmlsZSBzb2xpYl9iaW5maWxlIHNvbGliX2JpbmZpbGVfdGVzdF9tc2cKKyAgICAgZ2xv YmFsIHNvbGliX2JpbmZpbGVfdGFyZ2V0CisgCisgICAgIHNldCB0ZXN0ZmlsZSBqaXQtbWFpbgor ICAgICBzZXQgc3JjZmlsZSAke3Rlc3RmaWxlfS5jCistICAgIHNldCBiaW5maWxlIFtzdGFuZGFy ZF9vdXRwdXRfZmlsZSAkdGVzdGZpbGVdCisrICAgIHNldCBiaW5maWxlIFtzdGFuZGFyZF9vdXRw dXRfZmlsZSAkdGVzdGZpbGUkYmluc3VmZml4XQorICAgICBpZiB7IFtnZGJfY29tcGlsZSAiJHtz cmNkaXJ9LyR7c3ViZGlyfS8ke3NyY2ZpbGV9IiAiJHtiaW5maWxlfSIgXAorIAkgICAgICBleGVj dXRhYmxlIFtjb25jYXQgZGVidWcgJG9wdGlvbnNdXSAhPSAiIiB9IHsKKyAJdW50ZXN0ZWQgJHRl c3RuYW1lCitAQCAtNDQsOCArNDUsOCBAQCBwcm9jIGNvbXBpbGVfaml0X3Rlc3Qge3Rlc3RuYW1l IG9wdGlvbnN9IHsKKyAKKyAgICAgc2V0IHNvbGliX3Rlc3RmaWxlICJqaXQtc29saWIiCisgICAg IHNldCBzb2xpYl9zcmNmaWxlICIke3NyY2Rpcn0vJHtzdWJkaXJ9LyR7c29saWJfdGVzdGZpbGV9 LmMiCistICAgIHNldCBzb2xpYl9iaW5maWxlIFtzdGFuZGFyZF9vdXRwdXRfZmlsZSAke3NvbGli X3Rlc3RmaWxlfS5zb10KKy0gICAgc2V0IHNvbGliX2JpbmZpbGVfdGVzdF9tc2cgIlNITElCRElS LyR7c29saWJfdGVzdGZpbGV9LnNvIgorKyAgICBzZXQgc29saWJfYmluZmlsZSBbc3RhbmRhcmRf b3V0cHV0X2ZpbGUgJHtzb2xpYl90ZXN0ZmlsZX0kYmluc3VmZml4LnNvXQorKyAgICBzZXQgc29s aWJfYmluZmlsZV90ZXN0X21zZyAiU0hMSUJESVIvJHtzb2xpYl90ZXN0ZmlsZX0kYmluc3VmZml4 LnNvIgorIAorICAgICAjIE5vdGU6IGNvbXBpbGluZyB3aXRob3V0IGRlYnVnIGluZm86IHRoZSBs aWJyYXJ5IGdvZXMgdGhyb3VnaAorICAgICAjIHN5bWJvbCByZW5hbWluZyBieSBtdW5naW5nIG9u IGl0cyBzeW1ib2wgdGFibGUsIGFuZCB0aGF0CitAQCAtMTA5LDcgKzExMCw3IEBAIHByb2Mgb25l X2ppdF90ZXN0IHtjb3VudCBtYXRjaF9zdHJ9IHsKKyAgICAgfQorIH0KKyAKKy1pZiB7W2NvbXBp bGVfaml0X3Rlc3Qgaml0LmV4cCB7fV0gPCAwfSB7CisraWYge1tjb21waWxlX2ppdF90ZXN0IGpp dC5leHAgIiIge31dIDwgMH0geworICAgICByZXR1cm4KKyB9Cisgb25lX2ppdF90ZXN0IDEgIiR7 aGV4fSAgaml0X2Z1bmN0aW9uXzAwMDAiCitAQCAtMTE3LDcgKzExOCw3IEBAIG9uZV9qaXRfdGVz dCAyICIke2hleH0gIGppdF9mdW5jdGlvbl8wMDAwXFtcclxuXF0rJHtoZXh9ICBqaXRfZnVuY3Rp b25fMDAwMSIKKyAKKyB3aXRoX3Rlc3RfcHJlZml4IFBJRSB7CisgICAgIGlmIHtbY29tcGlsZV9q aXRfdGVzdCAiaml0LmV4cCBQSUUgdGVzdHMiIFwKKy0JICAgICB7YWRkaXRpb25hbF9mbGFncz0t ZlBJRSBsZGZsYWdzPS1waWV9XSA8IDB9IHsKKysJICAgICAiLXBpZSIge2FkZGl0aW9uYWxfZmxh Z3M9LWZQSUUgbGRmbGFncz0tcGllfV0gPCAwfSB7CisgCXJldHVybgorICAgICB9CisgCisKKwor Citjb21taXQgODVhZjM0ZWUwMjExZWVkZjhkMzBhNWM0NGRmYzU5ZGRkZjhiNTEyYQorQXV0aG9y OiBQZWRybyBBbHZlcyA8cGFsdmVzQHJlZGhhdC5jb20+CitEYXRlOiAgIFRodSBNYXIgMzEgMTk6 Mjg6NDcgMjAxNiArMDEwMAorCisgICAgQWRkIHJlZ3Jlc3Npb24gdGVzdCBmb3IgUFIgZ2RiLzE5 ODU4IChKSVQgY29kZSByZWdpc3RyYXRpb24gb24gYXR0YWNoKQorICAgIAorICAgIFRoaXMgdGVz dCB3b3VsZCBmYWlsIHdpdGhvdXQgdGhlIHByZXZpb3VzIGdkYi9qaXQuYyBmaXg6CisgICAgCisg ICAgICAoZ2RiKSBhdHRhY2ggMjMwMzEKKyAgICAgIEF0dGFjaGluZyB0byBwcm9ncmFtOiAuLi4v YnVpbGQvZ2RiL3Rlc3RzdWl0ZS9vdXRwdXRzL2dkYi5iYXNlL2ppdC9qaXQtbWFpbiwgcHJvY2Vz cyAyMzAzMQorICAgICAgWy4uLl0KKyAgICAgIDIwNyAgICAgICAgICAgV0FJVF9GT1JfR0RCOyBp ID0gMDsgIC8qIGdkYiBicmVhayBoZXJlIDEgKi8KKyAgICAgIChnZGIpIFBBU1M6IGdkYi5iYXNl L2ppdC5leHA6IGF0dGFjaDogb25lX2ppdF90ZXN0LTI6IGF0dGFjaAorICAgICAgc2V0IHZhciB3 YWl0X2Zvcl9nZGIgPSAwCisgICAgICAoZ2RiKSBQQVNTOiBnZGIuYmFzZS9qaXQuZXhwOiBhdHRh Y2g6IG9uZV9qaXRfdGVzdC0yOiBzZXQgdmFyIHdhaXRfZm9yX2dkYiA9IDAKKyAgICAgIGluZm8g ZnVuY3Rpb24gXmppdF9mdW5jdGlvbgorICAgICAgQWxsIGZ1bmN0aW9ucyBtYXRjaGluZyByZWd1 bGFyIGV4cHJlc3Npb24gIl5qaXRfZnVuY3Rpb24iOgorICAgICAgKGdkYikgRkFJTDogZ2RiLmJh c2Uvaml0LmV4cDogYXR0YWNoOiBvbmVfaml0X3Rlc3QtMjogaW5mbyBmdW5jdGlvbiBeaml0X2Z1 bmN0aW9uCisgICAgCisgICAgZ2RiL3Rlc3RzdWl0ZS9DaGFuZ2VMb2c6CisgICAgMjAxNi0wMy0z MSAgUGVkcm8gQWx2ZXMgIDxwYWx2ZXNAcmVkaGF0LmNvbT4KKyAgICAKKyAgICAJUFIgZ2RiLzE5 ODU4CisgICAgCSogZ2RiLmJhc2Uvaml0LW1haW4uYzogSW5jbHVkZSB1bmlzdGQuaC4KKyAgICAJ KEFUVEFDSCk6IERlZmluZSB0byAwIGlmIG5vdCBhbHJlYWR5IGRlZmluZWQuCisgICAgCSh3YWl0 X2Zvcl9nZGIsIG15cGlkKTogTmV3IGdsb2JhbHMuCisgICAgCShXQUlUX0ZPUl9HREIpOiBOZXcg bWFjcm8uCisgICAgCShNQUlOKTogU2V0IGFuIGFsYXJtLiAgU3RvcmUgdGhlIHByb2Nlc3MncyBw aWQuICBXYWl0IGZvciBHREIgYXQKKyAgICAJc29tZSBicmVha3BvaW50IGxvY2F0aW9ucy4KKyAg ICAJKiBnZGIuYmFzZS9qaXQuZXhwIChjbGVhbl9yZWF0dGFjaCwgY29udGludWVfdG9fdGVzdF9s b2NhdGlvbik6CisgICAgCU5ldyBwcm9jZWR1cmVzLgorICAgIAkob25lX2ppdF90ZXN0KTogQWRk IFJFQVRUQUNIIHBhcmFtZXRlciwgYW5kIGhhbmRsZSBpdC4gIFVzZQorICAgIAljb250aW51ZV90 b190ZXN0X2xvY2F0aW9uLgorICAgIAkodG9wIGxldmVsKTogVGVzdCBhdHRhY2gsIGFuZCBhZGp1 c3RzIGNhbGxzIHRvIG9uZV9qaXRfdGVzdC4KKworIyMjIGEvZ2RiL3Rlc3RzdWl0ZS9DaGFuZ2VM b2cKKyMjIyBiL2dkYi90ZXN0c3VpdGUvQ2hhbmdlTG9nCisjIyAtMSw2ICsxLDIxIEBACisgMjAx Ni0wMy0zMSAgUGVkcm8gQWx2ZXMgIDxwYWx2ZXNAcmVkaGF0LmNvbT4KKyAKKyAJUFIgZ2RiLzE5 ODU4CisrCSogZ2RiLmJhc2Uvaml0LW1haW4uYzogSW5jbHVkZSB1bmlzdGQuaC4KKysJKEFUVEFD SCk6IERlZmluZSB0byAwIGlmIG5vdCBhbHJlYWR5IGRlZmluZWQuCisrCSh3YWl0X2Zvcl9nZGIs IG15cGlkKTogTmV3IGdsb2JhbHMuCisrCShXQUlUX0ZPUl9HREIpOiBOZXcgbWFjcm8uCisrCShN QUlOKTogU2V0IGFuIGFsYXJtLiAgU3RvcmUgdGhlIHByb2Nlc3MncyBwaWQuICBXYWl0IGZvciBH REIgYXQKKysJc29tZSBicmVha3BvaW50IGxvY2F0aW9ucy4KKysJKiBnZGIuYmFzZS9qaXQuZXhw IChjbGVhbl9yZWF0dGFjaCwgY29udGludWVfdG9fdGVzdF9sb2NhdGlvbik6CisrCU5ldyBwcm9j ZWR1cmVzLgorKwkob25lX2ppdF90ZXN0KTogQWRkIFJFQVRUQUNIIHBhcmFtZXRlciwgYW5kIGhh bmRsZSBpdC4gIFVzZQorKwljb250aW51ZV90b190ZXN0X2xvY2F0aW9uLgorKwkodG9wIGxldmVs KTogVGVzdCBhdHRhY2gsIGFuZCBhZGp1c3RzIGNhbGxzIHRvIG9uZV9qaXRfdGVzdC4KKysKKysy MDE2LTAzLTMxICBQZWRybyBBbHZlcyAgPHBhbHZlc0ByZWRoYXQuY29tPgorKworKwlQUiBnZGIv MTk4NTgKKyAJKiBnZGIuYmFzZS9qaXQuZXhwIChjb21waWxlX2ppdF90ZXN0KTogQWRkIGludHJv IGNvbW1lbnQuICBBZGQKKyAJQklOU1VGRklYIHBhcmFtZXRlciwgYW5kIGhhbmRsZSBpdC4KKyAJ KHRvcCBsZXZlbCk6IEFkanVzdCBjYWxscyBjb21waWxlX2ppdF90ZXN0LgorLS0tIGEvZ2RiL3Rl c3RzdWl0ZS9nZGIuYmFzZS9qaXQtbWFpbi5jCisrKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5iYXNl L2ppdC1tYWluLmMKK0BAIC0yNyw2ICsyNyw3IEBACisgI2luY2x1ZGUgPHN0cmluZy5oPgorICNp bmNsdWRlIDxzeXMvbW1hbi5oPgorICNpbmNsdWRlIDxzeXMvc3RhdC5oPgorKyNpbmNsdWRlIDx1 bmlzdGQuaD4KKyAKKyAvKiBFbGZXIGlzIGNvbWluZyBmcm9tIGxpbnV4LiBPbiBvdGhlciBwbGF0 Zm9ybXMgaXQgZG9lcyBub3QgZXhpc3QuCisgICAgTGV0IHVzIGRlZmluZSBpdCBoZXJlLiAqLwor QEAgLTExNiwxMCArMTE3LDIyIEBAIHVwZGF0ZV9sb2NhdGlvbnMgKGNvbnN0IHZvaWQgKmNvbnN0 IGFkZHIsIGludCBpZHgpCisgICAgIH0KKyB9CisgCisrLyogRGVmaW5lZCBieSB0aGUgLmV4cCBm aWxlIGlmIHRlc3RpbmcgYXR0YWNoLiAgKi8KKysjaWZuZGVmIEFUVEFDSAorKyNkZWZpbmUgQVRU QUNIIDAKKysjZW5kaWYKKysKKyAjaWZuZGVmIE1BSU4KKyAjZGVmaW5lIE1BSU4gbWFpbgorICNl bmRpZgorIAorKy8qIFVzZWQgdG8gc3BpbiB3YWl0aW5nIGZvciBHREIuICAqLworK3ZvbGF0aWxl IGludCB3YWl0X2Zvcl9nZGIgPSBBVFRBQ0g7CisrI2RlZmluZSBXQUlUX0ZPUl9HREIgd2hpbGUg KHdhaXRfZm9yX2dkYikKKysKKysvKiBUaGUgY3VycmVudCBwcm9jZXNzJ3MgUElELiAgR0RCIHJl dHJpZXZlcyB0aGlzLiAgKi8KKytpbnQgbXlwaWQ7CisrCisgaW50CisgTUFJTiAoaW50IGFyZ2Ms IGNoYXIgKmFyZ3ZbXSkKKyB7CitAQCAtMTI3LDYgKzE0MCwxMCBAQCBNQUlOIChpbnQgYXJnYywg Y2hhciAqYXJndltdKQorICAgY29uc3QgY2hhciAqbGlibmFtZSA9IE5VTEw7CisgICBpbnQgY291 bnQgPSAwOworIAorKyAgYWxhcm0gKDMwMCk7CisrCisrICBteXBpZCA9IGdldHBpZCAoKTsKKysK KyAgIGNvdW50ID0gY291bnQ7ICAvKiBnZGIgYnJlYWsgaGVyZSAwICAqLworIAorICAgaWYgKGFy Z2MgPCAyKQorQEAgLTE5MCw3ICsyMDcsNyBAQCBNQUlOIChpbnQgYXJnYywgY2hhciAqYXJndltd KQorICAgICAgICAgICBfX2ppdF9kZWJ1Z19yZWdpc3Rlcl9jb2RlICgpOworICAgICAgICAgfQor IAorLSAgICAgIGkgPSAwOyAgLyogZ2RiIGJyZWFrIGhlcmUgMSAqLworKyAgICAgIFdBSVRfRk9S X0dEQjsgaSA9IDA7ICAvKiBnZGIgYnJlYWsgaGVyZSAxICovCisgCisgICAgICAgLyogTm93IHVu cmVnaXN0ZXIgdGhlbSBhbGwgaW4gcmV2ZXJzZSBvcmRlci4gICovCisgICAgICAgd2hpbGUgKF9f aml0X2RlYnVnX2Rlc2NyaXB0b3IucmVsZXZhbnRfZW50cnkgIT0gTlVMTCkKK0BAIC0yMTUsNSAr MjMyLDUgQEAgTUFJTiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyAgICAgICAgICAgZnJlZSAo ZW50cnkpOworICAgICAgICAgfQorICAgICB9CistICByZXR1cm4gMDsgIC8qIGdkYiBicmVhayBo ZXJlIDIgICovCisrICBXQUlUX0ZPUl9HREI7IHJldHVybiAwOyAgLyogZ2RiIGJyZWFrIGhlcmUg MiAgKi8KKyB9CistLS0gYS9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2ppdC5leHAKKysrKyBiL2dk Yi90ZXN0c3VpdGUvZ2RiLmJhc2Uvaml0LmV4cAorQEAgLTY2LDcgKzY2LDQ5IEBAIHByb2MgY29t cGlsZV9qaXRfdGVzdCB7dGVzdG5hbWUgYmluc3VmZml4IG9wdGlvbnN9IHsKKyAgICAgcmV0dXJu IDAKKyB9CisgCistcHJvYyBvbmVfaml0X3Rlc3Qge2NvdW50IG1hdGNoX3N0cn0geworKyMgRGV0 YWNoLCByZXN0YXJ0IEdEQiwgYW5kIHJlLWF0dGFjaCB0byB0aGUgcHJvZ3JhbS4KKysKKytwcm9j IGNsZWFuX3JlYXR0YWNoIHt9IHsKKysgICAgZ2xvYmFsIGRlY2ltYWwgZ2RiX3Byb21wdCBzcmNm aWxlIHRlc3RmaWxlCisrCisrICAgICMgR2V0IFBJRCBvZiB0ZXN0IHByb2dyYW0uCisrICAgIHNl dCB0ZXN0cGlkIC0xCisrICAgIHNldCB0ZXN0ICJnZXQgaW5mZXJpb3IgcHJvY2VzcyBJRCIKKysg ICAgZ2RiX3Rlc3RfbXVsdGlwbGUgInAgbXlwaWQiICR0ZXN0IHsKKysJLXJlICIuKiA9ICgkZGVj aW1hbCkuKiRnZGJfcHJvbXB0ICQiIHsKKysJICAgIHNldCB0ZXN0cGlkICRleHBlY3Rfb3V0KDEs c3RyaW5nKQorKwkgICAgcGFzcyAkdGVzdAorKwl9CisrICAgIH0KKysKKysgICAgZ2RiX3Rlc3Rf bm9fb3V0cHV0ICJzZXQgdmFyIHdhaXRfZm9yX2dkYiA9IDEiCisrICAgIGdkYl90ZXN0ICJkZXRh Y2giICJEZXRhY2hpbmcgZnJvbSAuKiIKKysKKysgICAgY2xlYW5fcmVzdGFydCAkdGVzdGZpbGUK KysKKysgICAgc2V0IHRlc3QgImF0dGFjaCIKKysgICAgZ2RiX3Rlc3RfbXVsdGlwbGUgImF0dGFj aCAkdGVzdHBpZCIgIiR0ZXN0IiB7CisrCS1yZSAiQXR0YWNoaW5nIHRvIHByb2dyYW0uKi4qbWFp bi4qYXQgLiokc3JjZmlsZTouKiRnZGJfcHJvbXB0ICQiIHsKKysJICAgIHBhc3MgIiR0ZXN0Igor Kwl9CisrICAgIH0KKysKKysgICAgZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgdmFyIHdhaXRfZm9y X2dkYiA9IDAiCisrfQorKworKyMgQ29udGludWUgdG8gTE9DQVRJT04gaW4gdGhlIHByb2dyYW0u ICBJZiBSRUFUVEFDSCwgZGV0YWNoIGFuZAorKyMgcmUtYXR0YWNoIHRvIHRoZSBwcm9ncmFtIGZy b20gc2NyYXRjaC4KKytwcm9jIGNvbnRpbnVlX3RvX3Rlc3RfbG9jYXRpb24ge2xvY2F0aW9uIHJl YXR0YWNofSB7CisrICAgIGdkYl9icmVha3BvaW50IFtnZGJfZ2V0X2xpbmVfbnVtYmVyICRsb2Nh dGlvbl0KKysgICAgZ2RiX2NvbnRpbnVlX3RvX2JyZWFrcG9pbnQgJGxvY2F0aW9uCisrICAgIGlm IHskcmVhdHRhY2h9IHsKKysJd2l0aF90ZXN0X3ByZWZpeCAiJGxvY2F0aW9uIiB7CisrCSAgICBj bGVhbl9yZWF0dGFjaAorKwl9CisrICAgIH0KKyt9CisrCisrcHJvYyBvbmVfaml0X3Rlc3Qge2Nv dW50IG1hdGNoX3N0ciByZWF0dGFjaH0geworICAgICB3aXRoX3Rlc3RfcHJlZml4ICJvbmVfaml0 X3Rlc3QtJGNvdW50IiB7CisgCWdsb2JhbCB2ZXJib3NlIHRlc3RmaWxlIHNvbGliX2JpbmZpbGVf dGFyZ2V0IHNvbGliX2JpbmZpbGVfdGVzdF9tc2cKKyAKK0BAIC05MSw4ICsxMzMsNyBAQCBwcm9j IG9uZV9qaXRfdGVzdCB7Y291bnQgbWF0Y2hfc3RyfSB7CisgCWdkYl90ZXN0X25vX291dHB1dCAi c2V0IHZhciBsaWJuYW1lID0gXCIkc29saWJfYmluZmlsZV90YXJnZXRcIiIgInNldCB2YXIgbGli bmFtZSA9IFwiJHNvbGliX2JpbmZpbGVfdGVzdF9tc2dcIiIKKyAJZ2RiX3Rlc3Rfbm9fb3V0cHV0 ICJzZXQgdmFyIGNvdW50ID0gJGNvdW50IgorIAorLQlnZGJfYnJlYWtwb2ludCBbZ2RiX2dldF9s aW5lX251bWJlciAiYnJlYWsgaGVyZSAxIl0KKy0JZ2RiX2NvbnRpbnVlX3RvX2JyZWFrcG9pbnQg ImJyZWFrIGhlcmUgMSIKKysJY29udGludWVfdG9fdGVzdF9sb2NhdGlvbiAiYnJlYWsgaGVyZSAx IiAkcmVhdHRhY2gKKyAKKyAJZ2RiX3Rlc3QgImluZm8gZnVuY3Rpb24gXmppdF9mdW5jdGlvbiIg IiRtYXRjaF9zdHIiCisgCitAQCAtMTAyLDggKzE0Myw4IEBAIHByb2Mgb25lX2ppdF90ZXN0IHtj b3VudCBtYXRjaF9zdHJ9IHsKKyAJICAgIGdkYl90ZXN0ICJtYWludGVuYW5jZSBpbmZvIGJyZWFr IgorIAl9CisgCistCWdkYl9icmVha3BvaW50IFtnZGJfZ2V0X2xpbmVfbnVtYmVyICJicmVhayBo ZXJlIDIiXQorLQlnZGJfY29udGludWVfdG9fYnJlYWtwb2ludCAiYnJlYWsgaGVyZSAyIgorKwlj b250aW51ZV90b190ZXN0X2xvY2F0aW9uICJicmVhayBoZXJlIDIiICRyZWF0dGFjaAorKworIAkj IEFsbCBqaXQgbGlicmFyZXMgbXVzdCBoYXZlIGJlZW4gdW5yZWdpc3RlcmVkCisgCWdkYl90ZXN0 ICJpbmZvIGZ1bmN0aW9uIGppdF9mdW5jdGlvbiIgXAorIAkgICAgIkFsbCBmdW5jdGlvbnMgbWF0 Y2hpbmcgcmVndWxhciBleHByZXNzaW9uIFwiaml0X2Z1bmN0aW9uXCI6IgorQEAgLTExMyw4ICsx NTQsMjIgQEAgcHJvYyBvbmVfaml0X3Rlc3Qge2NvdW50IG1hdGNoX3N0cn0geworIGlmIHtbY29t cGlsZV9qaXRfdGVzdCBqaXQuZXhwICIiIHt9XSA8IDB9IHsKKyAgICAgcmV0dXJuCisgfQorLW9u ZV9qaXRfdGVzdCAxICIke2hleH0gIGppdF9mdW5jdGlvbl8wMDAwIgorLW9uZV9qaXRfdGVzdCAy ICIke2hleH0gIGppdF9mdW5jdGlvbl8wMDAwXFtcclxuXF0rJHtoZXh9ICBqaXRfZnVuY3Rpb25f MDAwMSIKKytvbmVfaml0X3Rlc3QgMSAiJHtoZXh9ICBqaXRfZnVuY3Rpb25fMDAwMCIgMAorK29u ZV9qaXRfdGVzdCAyICIke2hleH0gIGppdF9mdW5jdGlvbl8wMDAwXFtcclxuXF0rJHtoZXh9ICBq aXRfZnVuY3Rpb25fMDAwMSIgMAorKworKyMgVGVzdCBhdHRhY2hpbmcgdG8gYW4gaW5mZXJpb3Ig d2l0aCBzb21lIEpJVCBsaWJyYXJpZXMgYWxyZWFkeQorKyMgcmVnaXN0ZXJlZC4gIFdlIHJldXNl IHRoZSBub3JtYWwgdGVzdCwgYW5kIGRldGFjaC9yZWF0dGFjaCBhdAorKyMgc3BlY2lmaWMgaW50 ZXJlc3RpbmcgcG9pbnRzLgorK2lmIHtbY2FuX3NwYXduX2Zvcl9hdHRhY2hdfSB7CisrICAgIGlm IHtbY29tcGlsZV9qaXRfdGVzdCAiaml0LmV4cCBhdHRhY2ggdGVzdHMiIFwKKysJICAgICAiLWF0 dGFjaCIge2FkZGl0aW9uYWxfZmxhZ3M9LURBVFRBQ0g9MX1dIDwgMH0geworKwlyZXR1cm4KKysg ICAgfQorKworKyAgICB3aXRoX3Rlc3RfcHJlZml4IGF0dGFjaCB7CisrCW9uZV9qaXRfdGVzdCAy ICIke2hleH0gIGppdF9mdW5jdGlvbl8wMDAwXFtcclxuXF0rJHtoZXh9ICBqaXRfZnVuY3Rpb25f MDAwMSIgMQorKyAgICB9CisrfQorIAorIHdpdGhfdGVzdF9wcmVmaXggUElFIHsKKyAgICAgaWYg e1tjb21waWxlX2ppdF90ZXN0ICJqaXQuZXhwIFBJRSB0ZXN0cyIgXAorQEAgLTEyMiw1ICsxNzcs NSBAQCB3aXRoX3Rlc3RfcHJlZml4IFBJRSB7CisgCXJldHVybgorICAgICB9CisgCistICAgIG9u ZV9qaXRfdGVzdCAxICIke2hleH0gIGppdF9mdW5jdGlvbl8wMDAwIgorKyAgICBvbmVfaml0X3Rl c3QgMSAiJHtoZXh9ICBqaXRfZnVuY3Rpb25fMDAwMCIgMAorIH0KCmRpZmYgLS1naXQgYS9nZGIu c3BlYyBiL2dkYi5zcGVjCmluZGV4IGNhYWJiNDguLjVkMDgxNTEgMTAwNjQ0Ci0tLSBhL2dkYi5z cGVjCisrKyBiL2dkYi5zcGVjCkBAIC0yNyw3ICsyNyw3IEBAIFZlcnNpb246IDcuMTEKIAogIyBU aGUgcmVsZWFzZSBhbHdheXMgY29udGFpbnMgYSBsZWFkaW5nIHJlc2VydmVkIG51bWJlciwgc3Rh cnQgaXQgYXQgMS4KICMgYHVwc3RyZWFtJyBpcyBub3QgYSBwYXJ0IG9mIGBuYW1lJyB0byBzdGF5 IGZ1bGx5IHJwbSBkZXBlbmRlbmNpZXMgY29tcGF0aWJsZSBmb3IgdGhlIHRlc3RpbmcuCi1SZWxl YXNlOiA2NSV7P2Rpc3R9CitSZWxlYXNlOiA2NiV7P2Rpc3R9CiAKIExpY2Vuc2U6IEdQTHYzKyBh bmQgR1BMdjMrIHdpdGggZXhjZXB0aW9ucyBhbmQgR1BMdjIrIGFuZCBHUEx2Misgd2l0aCBleGNl cHRpb25zIGFuZCBHUEwrIGFuZCBMR1BMdjIrIGFuZCBCU0QgYW5kIFB1YmxpYyBEb21haW4gYW5k IEdGREwKIEdyb3VwOiBEZXZlbG9wbWVudC9EZWJ1Z2dlcnMKQEAgLTEzODUsNiArMTM4NSw5IEBA IHRoZW4KIGZpCiAKICVjaGFuZ2Vsb2cKKyogV2VkIEFwciAgNiAyMDE2IEphbiBLcmF0b2Nodmls IDxqYW4ua3JhdG9jaHZpbEByZWRoYXQuY29tPiAtIDcuMTEtNjYuZmMyNAorLSBJbXBvcnQgdXBz dHJlYW0gNy4xMSBicmFuY2ggc3RhYmxlIGZpeGVzLgorCiAqIFdlZCBBcHIgIDYgMjAxNiBKYW4g S3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4gLSA3LjExLTY1LmZjMjQKIC0g QWRkIG1lc3NhZ2VzIHN1Z2dlc3RpbmcgbW9yZSByZWNlbnQgUkhFTCBnZGJzZXJ2ZXIgKFJIIEJa IDEzMjExMTQpLgogCg==