ZGlmZiAtLWdpdCBhL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2Jvb3RfbW9kZS5oIGIvYm9vdC9jb21tb24vc3JjL3Vib290L2luY2x1ZGUvYm9vdF9tb2RlLmgKb2xkIG1vZGUgMTAwNjQ0Cm5ldyBtb2RlIDEwMDc1NQppbmRleCBkMWZkYzI2Li42ZDhlYTFhCi0tLSBhL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2Jvb3RfbW9kZS5oCisrKyBiL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2Jvb3RfbW9kZS5oCkBAIC03LDYgKzcsOCBAQAogI2lmbmRlZiBfX0JPT1RfTU9ERV9fCiAjZGVmaW5lIF9fQk9PVF9NT0RFX18KIAorZXh0ZXJuIHVuc2lnbmVkIGNoYXIgZ19ub3JfZmxhZzsKKwogdHlwZWRlZiBlbnVtCiB7CiAJVExPQURfTU9ERSA9IDEsCmRpZmYgLS1naXQgYS9ib290L2NvbW1vbi9zcmMvdWJvb3QvaW5jbHVkZS9jb25maWdzL3p4Mjk3NTIwdjMuaCBiL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2NvbmZpZ3MvengyOTc1MjB2My5oCmluZGV4IGUyMTg0MDguLmVhNzcxZmEgMTAwNzU1Ci0tLSBhL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2NvbmZpZ3MvengyOTc1MjB2My5oCisrKyBiL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2NvbmZpZ3MvengyOTc1MjB2My5oCkBAIC0xMzEsNiArMTMxLDcgQEAKICNkZWZpbmUgQ09ORklHX1NZU19TRFJBTV9JTUFHRUZTX0JBU0UJMHgyNTAwMDAwMAogI2RlZmluZSBDT05GSUdfU1lTX1NEUkFNX0lNQUdFRlNfRU5ECTB4MjcwMDAwMDAKICNkZWZpbmUgQ09ORklHX1NZU19TRFJBTV9JTUFHRUZTX1NJWkUJKENPTkZJR19TWVNfU0RSQU1fSU1BR0VGU19FTkQgLSBDT05GSUdfU1lTX1NEUkFNX0lNQUdFRlNfQkFTRSkKKwogI2Vsc2UKICNkZWZpbmUgUEhZU19TRFJBTV8xX1NJWkUJICAgICAgICAJMHgwMjAwMDAwMCAgICAgCS8qIDMyTUIgKi8KICNkZWZpbmUgQ09ORklHX1NZU19TRFJBTV9TSVpFCSAgICAJMHgwMjAwMDAwMAkgICAJLyogMzJNQiBpbiBERFIgKi8KQEAgLTE0MSw2ICsxNDIsNyBAQAogCiAjZGVmaW5lIENPTkZJR19TWVNfU0RSQU1fVEVNUF9CQVNFCQkweDIxNDAwMDAwICAJLyogZGRyyv2+3bDmsb7B2cqxu7q05rXY1rcgKi8KICNkZWZpbmUgQ09ORklHX1NZU19TRFJBTV9URU1QX0xaTUEgIAkwWDIxNjAwMDAwICAJLyogu7q05rXY1rejrNPD09q94tG5sOaxvsqxyrnTwyAqLworI2RlZmluZSBDT05GSUdfU1lTX1NEUkFNX1JPT1RGU19CQVNFCTB4MjUwMDAwMDAKIAogI2RlZmluZSBDT05GSUdfU1lTX1NEUkFNX1VQREFURV9BTElHTkVEX09GRlNFVAkweDUwMDAwMDAgCS8qIDgwTUIgZm9yIExvY2FsVXBkYXRlIFVzZS4gKi8KIApkaWZmIC0tZ2l0IGEvYm9vdC9jb21tb24vc3JjL3Vib290L2luY2x1ZGUvbGludXgvbXRkL25hbmQuaCBiL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2xpbnV4L210ZC9uYW5kLmgKaW5kZXggZWZkZmI1NC4uZjFjNGFhMSAxMDA3NTUKLS0tIGEvYm9vdC9jb21tb24vc3JjL3Vib290L2luY2x1ZGUvbGludXgvbXRkL25hbmQuaAorKysgYi9ib290L2NvbW1vbi9zcmMvdWJvb3QvaW5jbHVkZS9saW51eC9tdGQvbmFuZC5oCkBAIC01MTksMTAgKzUxOSwxMSBAQAogI2RlZmluZSBOQU5EX01GUl9aRVRUQSAgCTB4QkEKICNkZWZpbmUgTkFORF9NRlJfRE9TSUxJQ09OICAweEU1CiAjZGVmaW5lIE5BTkRfTUZSX0ZVREFOV0VJICAgMHhBMQotI2RlZmluZSBOQU5EX01GUl9IT1NJTgkgICAweEQ2Ci0jZGVmaW5lIE5BTkRfTUZSX0VNU1QJCQkweEM4Ci0jZGVmaW5lIE5BTkRfTUZSX0ZPUkVTRUUJCTB4Q0QKKyNkZWZpbmUgTkFORF9NRlJfSE9TSU4JICAgIDB4RDYKKyNkZWZpbmUgTkFORF9NRlJfRU1TVAkJMHhDOAorI2RlZmluZSBOQU5EX01GUl9GT1JFU0VFCTB4Q0QKICNkZWZpbmUgTkFORF9NRlJfWFRYCQkweDBCCisjZGVmaW5lIE5BTkRfTUZSX1VOSU0JCTB4QjAKIAogCiAjZGVmaW5lIE5BTkRfREVWSURfR0Q1RjFHUTVSXzFHIDB4NDEKZGlmZiAtLWdpdCBhL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2xpbnV4L210ZC9zcGktbm9yLmggYi9ib290L2NvbW1vbi9zcmMvdWJvb3QvaW5jbHVkZS9saW51eC9tdGQvc3BpLW5vci5oCmluZGV4IGIzY2VmMjQuLjMxMGRiYjEgMTAwNzU1Ci0tLSBhL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL2xpbnV4L210ZC9zcGktbm9yLmgKKysrIGIvYm9vdC9jb21tb24vc3JjL3Vib290L2luY2x1ZGUvbGludXgvbXRkL3NwaS1ub3IuaApAQCAtMTkxLDggKzE5MSwxNCBAQAogCXZvaWQgKCp3cml0ZSkoc3RydWN0IHNwaV9ub3IgKm5vciwgbG9mZl90IHRvLAogCQkJc2l6ZV90IGxlbiwgc2l6ZV90ICpyZXRsZW4sIGNvbnN0IHVfY2hhciAqd3JpdGVfYnVmKTsKIAlpbnQgKCplcmFzZSkoc3RydWN0IHNwaV9ub3IgKm5vciwgbG9mZl90IG9mZnMpOwotCi0JaW50ICgqZmxhc2hfbG9jaykoc3RydWN0IHNwaV9ub3IgKm5vciwgbG9mZl90IG9mcywgdWludDY0X3QgbGVuKTsKKwkKKyAgICBpbnQgKCpyZWFkX3NlY3VyaXR5X3JlZ2lzdGVyKShzdHJ1Y3Qgc3BpX25vciAqbm9yLCBsb2ZmX3QgZnJvbSwKKwkJCXNpemVfdCBsZW4sIHNpemVfdCAqcmV0bGVuLCB1X2NoYXIgKnJlYWRfYnVmKTsKKwl2b2lkICgqd3JpdGVfc2VjdXJpdHlfcmVnaXN0ZXIpKHN0cnVjdCBzcGlfbm9yICpub3IsIGxvZmZfdCB0bywKKwkJCXNpemVfdCBsZW4sIHNpemVfdCAqcmV0bGVuLCBjb25zdCB1X2NoYXIgKndyaXRlX2J1Zik7CisJaW50ICgqZXJhc2Vfc2VjdXJpdHlfcmVnaXN0ZXIpKHN0cnVjdCBzcGlfbm9yICpub3IsIGxvZmZfdCBvZmZzKTsKKwkKKwlpbnQgKCpmbGFzaF9sb2NrKShzdHJ1Y3Qgc3BpX25vciAqbm9yLCBsb2ZmX3Qgb2ZzLCB1aW50NjRfdCBsZW4pOwkKIAlpbnQgKCpmbGFzaF91bmxvY2spKHN0cnVjdCBzcGlfbm9yICpub3IsIGxvZmZfdCBvZnMsIHVpbnQ2NF90IGxlbik7CiAJaW50ICgqZmxhc2hfaXNfbG9ja2VkKShzdHJ1Y3Qgc3BpX25vciAqbm9yLCBsb2ZmX3Qgb2ZzLCB1aW50NjRfdCBsZW4pOwogCmRpZmYgLS1naXQgYS9ib290L2NvbW1vbi9zcmMvdWJvb3QvaW5jbHVkZS9zZWN1cmVfdmVyaWZ5LmggYi9ib290L2NvbW1vbi9zcmMvdWJvb3QvaW5jbHVkZS9zZWN1cmVfdmVyaWZ5LmgKb2xkIG1vZGUgMTAwNjQ0Cm5ldyBtb2RlIDEwMDc1NQppbmRleCAzNGMyY2U1Li4yMTMyYTAzCi0tLSBhL2Jvb3QvY29tbW9uL3NyYy91Ym9vdC9pbmNsdWRlL3NlY3VyZV92ZXJpZnkuaAorKysgYi9ib290L2NvbW1vbi9zcmMvdWJvb3QvaW5jbHVkZS9zZWN1cmVfdmVyaWZ5LmgKQEAgLTUxLDYgKzUxLDEzIEBACiAJdTMyCQlkZXZfaWRbM107CQogfSBlZnVzZV9zdHJ1Y3Q7CiAKK3R5cGVkZWYgdm9sYXRpbGUgc3RydWN0Cit7CisJdTMyCQlzZWN1cmVfZmxhZzsKKwl1MzIJCXB1a19oYXNoWzhdOworCXUzMgkJZGV2X2lkWzNdOwkKK30gb3RwX3N0cnVjdDsKKwogdHlwZWRlZiBzdHJ1Y3QKIHsKIAl1MzIgdWlQdWJLZXlSc2FFWzMyXTsKQEAgLTU4LDkgKzY1LDI0IEBACiAJdTMyIHVpSGFzaFlbMzJdOwogfSBzSW1hZ2VIZWFkZXI7CiAKK3R5cGVkZWYgc3RydWN0Cit7CisJdWludDE2X3QgICBzaWdudHlwZTsKKyAgICB1aW50MTZfdCAgIGhhc2h0eXBlOyAgIAorCXVpbnQzMl90ICAgdWlQdWJLZXlSc2FFTGVuOworCXVpbnQzMl90ICAgdWlQdWJLZXlSc2FOTGVuOworCXVpbnQ4X3QgICAgdWlQdWJLZXlSc2FFWzRdOworCXVpbnQ4X3QgICAgdWlQdWJLZXlSc2FOWzI1Nl07CisJdWludDhfdCAgICByZXNlcnZlWzExMl07IC8vMzgwIGJ5dGVzCisgICAgdWludDhfdCAgICB1aUhhc2hZWzI1Nl07ICAgIC8vMjU2IGJ5dGVzCit9IHNJbWFnZU5ld0hlYWRlcjsKKworZXh0ZXJuIG90cF9zdHJ1Y3Qgb3RwSW5mbzsKKwogc3RhdGljIHZvaWQgZ2V0X2VmdXNlX2RhdGEodm9pZCk7CiBzdGF0aWMgdTMyIFNNQUxMMkJJRyh1MzIgKnB1aUFyckluLCB1MzIgKnB1aUFyck91dCwgdTMyIHVpTGVuKTsKIHU4IHNlY3VyZV92ZXJpZnkodTMyIGFkZHIpOwordTggcm9vdGZzX3NlY3VyZV92ZXJpZnkodTMyIGFkZHIpOwogc3RhdGljIHU4IGRhdGFfY21wX3dvcmQodTMyKiBzcmMsIHUzMiogZHN0LCB1MzIgY250KTsKIGludCBlZnVzZV9pbml0KHZvaWQpOwogdm9pZCBlZnVzZV9nZXRfZGV2aW5mbyhlZnVzZV9zdHJ1Y3QgKmVmdXNlX2luZm8pOwo=