ZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29wdGlvbnMudHh0IGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKaW5kZXggNGZiYzAxNC4uMmY2OTA0OSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKQEAgLTI4MjgsNyArMjgyOCw4IEBACiAJfHNldGNlbGx3aWR0aHMoKXwgZnVuY3Rpb24gdG8gY2hhbmdlIHRoZSBiZWhhdmlvci4KIAogCQkJCQkqJ2VuY29kaW5nJyogKidlbmMnKiAqRTU0MyoKLSdlbmNvZGluZycgJ2VuYycJc3RyaW5nIChkZWZhdWx0OiAibGF0aW4xIiBvciB2YWx1ZSBmcm9tICRMQU5HKQorJ2VuY29kaW5nJyAnZW5jJwlzdHJpbmcgKGRlZmF1bHQgZm9yIE1TLVdpbmRvd3M6ICJ1dGYtOCIsCisJCQkJb3RoZXJ3aXNlOiB2YWx1ZSBmcm9tICRMQU5HIG9yICJsYXRpbjEiKQogCQkJZ2xvYmFsCiAJU2V0cyB0aGUgY2hhcmFjdGVyIGVuY29kaW5nIHVzZWQgaW5zaWRlIFZpbS4gIEl0IGFwcGxpZXMgdG8gdGV4dCBpbgogCXRoZSBidWZmZXJzLCByZWdpc3RlcnMsIFN0cmluZ3MgaW4gZXhwcmVzc2lvbnMsIHRleHQgc3RvcmVkIGluIHRoZQpkaWZmIC0tZ2l0IGEvc3JjL21ieXRlLmMgYi9zcmMvbWJ5dGUuYwppbmRleCBlM2Q2NGJhLi5mM2ZkYzMyIDEwMDY0NAotLS0gYS9zcmMvbWJ5dGUuYworKysgYi9zcmMvbWJ5dGUuYwpAQCAtNDQ1Niw3ICs0NDU2LDcgQEAKIAkvLyBVc2UgdGhlIGRlZmF1bHQgZW5jb2RpbmcgYXMgaXQncyBmb3VuZCBieSBzZXRfaW5pdF8xKCkuCiAJciA9IGdldF9lbmNvZGluZ19kZWZhdWx0KCk7CiAJaWYgKHIgPT0gTlVMTCkKLQkgICAgciA9IChjaGFyX3UgKikibGF0aW4xIjsKKwkgICAgciA9IChjaGFyX3UgKilFTkNfREZMVDsKIAlyZXR1cm4gdmltX3N0cnNhdmUocik7CiAgICAgfQogCmRpZmYgLS1naXQgYS9zcmMvb3B0aW9uLmMgYi9zcmMvb3B0aW9uLmMKaW5kZXggN2M3ODM3NS4uNmNhNDI0ZSAxMDA2NDQKLS0tIGEvc3JjL29wdGlvbi5jCisrKyBiL3NyYy9vcHRpb24uYwpAQCAtNDMwLDE0ICs0MzAsMjEgQEAKICMgIGVuZGlmCiAjIGVuZGlmCiAKKyMgaWZkZWYgTVNXSU4KKyAgICAvLyBNUy1XaW5kb3dzIGhhcyBidWlsdGluIHN1cHBvcnQgZm9yIGNvbnZlcnNpb24gdG8gYW5kIGZyb20gVW5pY29kZSwgdXNpbmcKKyAgICAvLyAidXRmLTgiIGZvciAnZW5jb2RpbmcnIHNob3VsZCB3b3JrIGJlc3QgZm9yIG1vc3QgdXNlcnMuCisgICAgcCA9IHZpbV9zdHJzYXZlKChjaGFyX3UgKilFTkNfREZMVCk7CisjIGVsc2UKICAgICAvLyBlbmNfbG9jYWxlKCkgd2lsbCB0cnkgdG8gZmluZCB0aGUgZW5jb2Rpbmcgb2YgdGhlIGN1cnJlbnQgbG9jYWxlLgorICAgIC8vIFRoaXMgd29ya3MgYmVzdCBmb3IgcHJvcGVybHkgY29uZmlndXJlZCBzeXN0ZW1zLCBvbGQgYW5kIG5ldy4KICAgICBwID0gZW5jX2xvY2FsZSgpOworIyBlbmRpZgogICAgIGlmIChwICE9IE5VTEwpCiAgICAgewogCWNoYXJfdSAqc2F2ZV9lbmM7CiAKIAkvLyBUcnkgc2V0dGluZyAnZW5jb2RpbmcnIGFuZCBjaGVjayBpZiB0aGUgdmFsdWUgaXMgdmFsaWQuCi0JLy8gSWYgbm90LCBnbyBiYWNrIHRvIHRoZSBkZWZhdWx0ICJsYXRpbjEiLgorCS8vIElmIG5vdCwgZ28gYmFjayB0byB0aGUgZGVmYXVsdCBlbmNvZGluZy4KIAlzYXZlX2VuYyA9IHBfZW5jOwogCXBfZW5jID0gcDsKIAlpZiAoU1RSQ01QKHBfZW5jLCAiZ2IxODAzMCIpID09IDApCmRpZmYgLS1naXQgYS9zcmMvb3B0aW9uLmggYi9zcmMvb3B0aW9uLmgKaW5kZXggMzAwNTNjYy4uN2JlNzI5YSAxMDA2NDQKLS0tIGEvc3JjL29wdGlvbi5oCisrKyBiL3NyYy9vcHRpb24uaApAQCAtMTI3LDcgKzEyNywxMSBAQAogI2RlZmluZSBFTkNfVUNTQk9NCSJ1Y3MtYm9tIgkvLyBjaGVjayBmb3IgQk9NIGF0IHN0YXJ0IG9mIGZpbGUKIAogLy8gZGVmYXVsdCB2YWx1ZSBmb3IgJ2VuY29kaW5nJwotI2RlZmluZSBFTkNfREZMVAkibGF0aW4xIgorI2lmZGVmIE1TV0lOCisjIGRlZmluZSBFTkNfREZMVAkidXRmLTgiCisjZWxzZQorIyBkZWZpbmUgRU5DX0RGTFQJImxhdGluMSIKKyNlbmRpZgogCiAvLyBlbmQtb2YtbGluZSBzdHlsZQogI2RlZmluZSBFT0xfVU5LTk9XTgktMQkvLyBub3QgZGVmaW5lZCB5ZXQKZGlmZiAtLWdpdCBhL3NyYy90ZXN0ZGlyL3Rlc3Rfd3JpdGVmaWxlLnZpbSBiL3NyYy90ZXN0ZGlyL3Rlc3Rfd3JpdGVmaWxlLnZpbQppbmRleCBlOTQwNzFmLi45MjAwZjJiIDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci90ZXN0X3dyaXRlZmlsZS52aW0KKysrIGIvc3JjL3Rlc3RkaXIvdGVzdF93cml0ZWZpbGUudmltCkBAIC01MDEsNyArNTAxLDcgQEAKICAgQ2hlY2tNU1dpbmRvd3MKICAgbGV0IHNhdmVfZW5jb2RpbmcgPSAmZW5jb2RpbmcKICAgbGV0IHNhdmVfZmlsZWVuY29kaW5ncyA9ICZmaWxlZW5jb2RpbmdzCi0gIHNldCBlbmNvZGluZyYgZmlsZWVuY29kaW5ncyYKKyAgc2V0IGVuY29kaW5nPWxhdGluMSBmaWxlZW5jb2RpbmdzJgogICBsZXQgdGV4dCA9PDwgdHJpbSBFTkQKICAgICAxIHV0Zi04IHRleHQ6INCU0LvRjyBWaW0gdmVyc2lvbiA2LjIuICDQn9C+0YHQu9C10LTQvdC10LUg0LjQt9C80LXQvdC10L3QuNC1OiAxOTcwIEphbiAwMQogICAgIDIgY3AxMjUxIHRleHQ6IMTr/yBWaW0gdmVyc2lvbiA2LjIuICDP7vHr5eTt5eUg6Ofs5e3l7ejlOiAxOTcwIEphbiAwMQpkaWZmIC0tZ2l0IGEvc3JjL3ZlcnNpb24uYyBiL3NyYy92ZXJzaW9uLmMKaW5kZXggMGE4MmE5Ni4uZDY1MWJkYSAxMDA2NDQKLS0tIGEvc3JjL3ZlcnNpb24uYworKysgYi9zcmMvdmVyc2lvbi5jCkBAIC03NTEsNiArNzUxLDggQEAKIHN0YXRpYyBpbnQgaW5jbHVkZWRfcGF0Y2hlc1tdID0KIHsgICAvKiBBZGQgbmV3IHBhdGNoIG51bWJlciBiZWxvdyB0aGlzIGxpbmUgKi8KIC8qKi8KKyAgICAyOTEyLAorLyoqLwogICAgIDI5MTEsCiAvKiovCiAgICAgMjkxMCwK