ZGlmZiAtLWdpdCBhL0ZpbGVsaXN0IGIvRmlsZWxpc3QKaW5kZXggZGI1NTJkNjcuLjIyYTk4N2MgMTAwNjQ0Ci0tLSBhL0ZpbGVsaXN0CisrKyBiL0ZpbGVsaXN0CkBAIC0yMzEsNiArMjMxLDggQEAKIAkJc3JjL3Rlc3RkaXIvc2lsZW50LndhdiBcCiAJCXNyYy90ZXN0ZGlyL3BvcHVwYm91bmNlLnZpbSBcCiAJCXNyYy90ZXN0ZGlyL2NyYXNoLyogXAorCQlzcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9NYWtlZmlsZSBcCisJCXNyYy90ZXN0ZGlyL3J1X1JVL0xDX01FU1NBR0VTL19fUEFDS0FHRV9fLnBvIFwKIAkJc3JjL3Rlc3RkaXIvcnVfUlUvTENfTUVTU0FHRVMvX19QQUNLQUdFX18ubW8gXAogCQlzcmMvcHJvdG8uaCBcCiAJCXNyYy9wcm90b2RlZi5oIFwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2J1aWx0aW4udHh0IGIvcnVudGltZS9kb2MvYnVpbHRpbi50eHQKaW5kZXggNmY1MjE5Yy4uZTIyMmQ3YyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvYnVpbHRpbi50eHQKKysrIGIvcnVudGltZS9kb2MvYnVpbHRpbi50eHQKQEAgLTQxNiw2ICs0MTYsOCBAQAogbW9kZShbe2V4cHJ9XSkJCQlTdHJpbmcJY3VycmVudCBlZGl0aW5nIG1vZGUKIG16ZXZhbCh7ZXhwcn0pCQkJYW55CWV2YWx1YXRlIHxNelNjaGVtZXwgZXhwcmVzc2lvbgogbmV4dG5vbmJsYW5rKHtsbnVtfSkJCU51bWJlcglsaW5lIG5yIG9mIG5vbi1ibGFuayBsaW5lID49IHtsbnVtfQorbmdldHRleHQoe3NpbmdsZX0sIHtwbHVyYWx9LCB7bnVtYmVyfVssIHtkb21haW59XSkKKwkJCQlTdHJpbmcJdHJhbnNsYXRlIHRleHQgYmFzZWQgb24ge251bWJlcn0KIG5yMmNoYXIoe2V4cHJ9IFssIHt1dGY4fV0pCVN0cmluZwlzaW5nbGUgY2hhciB3aXRoIEFTQ0lJL1VURi04IHZhbHVlIHtleHByfQogb3Ioe2V4cHJ9LCB7ZXhwcn0pCQlOdW1iZXIJYml0d2lzZSBPUgogcGF0aHNob3J0ZW4oe2V4cHJ9IFssIHtsZW59XSkJU3RyaW5nCXNob3J0ZW4gZGlyZWN0b3J5IG5hbWVzIGluIGEgcGF0aApAQCAtNzY4Nyw2ICs3Njg5LDIwIEBACiAJCVJldHVybiB0eXBlOiB8TnVtYmVyfAogCiAKK25nZXR0ZXh0KHtzaW5nbGV9LCB7cGx1cmFsfSwge251bWJlcn1bLCB7ZG9tYWlufSkJKm5nZXR0ZXh0KCkqCisJCVJldHVybiBhIHN0cmluZyB0aGF0IGNvbnRhaW5zIHRoZSBjb3JyZWN0IHZhbHVlIGZvciBhCisJCW1lc3NhZ2UgYmFzZWQgb24gdGhlIHJ1bGVzIGZvciBwbHVyYWwgZm9ybShzKSBpbgorCQlhIGxhbmd1YWdlLiBFeGFtcGxlczogPgorCQkJbmdldHRleHQoIkZpbGUiLCAiRmlsZXMiLCAyKSAgIyByZXR1cm5zICJGaWxlcyIKKzwKKwkJQ2FuIGJlIHVzZWQgYXMgYSB8bWV0aG9kfDogPgorCQkJMS0+bmdldHRleHQoIkZpbGUiLCAiRmlsZXMiKSAgIyByZXR1cm5zICJGaWxlIgorPAorCQlTZWUgfGdldHRleHQoKXwgZm9yIGluZm9ybWF0aW9uIG9uIHRoZSBkb21haW4gcGFyYW1ldGVyLgorCisJCVJldHVybiB0eXBlOiB8U3RyaW5nfAorCisKIG5yMmNoYXIoe2V4cHJ9IFssIHt1dGY4fV0pCQkJCSpucjJjaGFyKCkqCiAJCVJldHVybiBhIHN0cmluZyB3aXRoIGEgc2luZ2xlIGNoYXJhY3Rlciwgd2hpY2ggaGFzIHRoZSBudW1iZXIKIAkJdmFsdWUge2V4cHJ9LiAgRXhhbXBsZXM6ID4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RhZ3MgYi9ydW50aW1lL2RvYy90YWdzCmluZGV4IDM3OGZiODMuLjdhY2NhMzggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RhZ3MKKysrIGIvcnVudGltZS9kb2MvdGFncwpAQCAtOTI2MCw2ICs5MjYwLDcgQEAKIG5ldy12aXJ0ZWRpdAl2ZXJzaW9uNi50eHQJLypuZXctdmlydGVkaXQqCiBuZXdzCWludHJvLnR4dAkvKm5ld3MqCiBuZXh0bm9uYmxhbmsoKQlidWlsdGluLnR4dAkvKm5leHRub25ibGFuaygpKgorbmdldHRleHQoKQlidWlsdGluLnR4dAkvKm5nZXR0ZXh0KCkqCiBuby1ldmFsLWZlYXR1cmUJZXZhbC50eHQJLypuby1ldmFsLWZlYXR1cmUqCiBuby10eXBlLWNoZWNraW5nCWV2YWwudHh0CS8qbm8tdHlwZS1jaGVja2luZyoKIG5vX2J1ZmZlcnNfbWVudQlndWkudHh0CS8qbm9fYnVmZmVyc19tZW51KgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzQxLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl80MS50eHQKaW5kZXggMzVhYmEwMi4uMGQwOWZjOSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzQxLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfNDEudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl80MS50eHQqCUZvciBWaW0gdmVyc2lvbiA5LjEuICBMYXN0IGNoYW5nZTogMjAyNSBKYW4gMTYKKyp1c3JfNDEudHh0KglGb3IgVmltIHZlcnNpb24gOS4xLiAgTGFzdCBjaGFuZ2U6IDIwMjUgRmViIDAxCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCkBAIC04MDEsNiArODAxLDcgQEAKIAl0cmltKCkJCQl0cmltIGNoYXJhY3RlcnMgZnJvbSBhIHN0cmluZwogCWJpbmR0ZXh0ZG9tYWluKCkJc2V0IG1lc3NhZ2UgbG9va3VwIHRyYW5zbGF0aW9uIGJhc2UgcGF0aAogCWdldHRleHQoKQkJbG9va3VwIG1lc3NhZ2UgdHJhbnNsYXRpb24KKwluZ2V0dGV4dCgpCQlsb29rdXAgc2luZ2xlL3BsdXJhbCBtZXNzYWdlIHRyYW5zbGF0aW9uCiAJc3RyMmJsb2IoKQkJY29udmVydCBhIGxpc3Qgb2Ygc3RyaW5ncyBpbnRvIGEgYmxvYgogCWJsb2Iyc3RyKCkJCWNvbnZlcnQgYSBibG9iIGludG8gYSBsaXN0IG9mIHN0cmluZ3MKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmVyc2lvbjkudHh0IGIvcnVudGltZS9kb2MvdmVyc2lvbjkudHh0CmluZGV4IDJlMTZlMDkuLjY0ZjQ5YTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZlcnNpb245LnR4dAorKysgYi9ydW50aW1lL2RvYy92ZXJzaW9uOS50eHQKQEAgLTQxNjYwLDYgKzQxNjYwLDcgQEAKIAkJCUNoYW5uZWwgb3IgQmxvYiB2YXJpYWJsZQogfG1hdGNoYnVmbGluZSgpfAlhbGwgdGhlIG1hdGNoZXMgb2YgYSBwYXR0ZXJuIGluIGEgYnVmZmVyCiB8bWF0Y2hzdHJsaXN0KCl8CWFsbCB0aGUgbWF0Y2hlcyBvZiBhIHBhdHRlcm4gaW4gYSBMaXN0IG9mIHN0cmluZ3MKK3xuZ2V0dGV4dCgpfAkJbG9va3VwIHNpbmdsZS9wbHVyYWwgbWVzc2FnZSB0cmFuc2xhdGlvbgogfHBvcHVwX3NldGJ1ZigpfAlzd2l0Y2ggdG8gYSBkaWZmZXJlbnQgYnVmZmVyIGluIGEgcG9wdXAKIHxzdHIyYmxvYigpfAkJY29udmVydCBhIExpc3Qgb2Ygc3RyaW5ncyBpbnRvIGEgYmxvYgogCmRpZmYgLS1naXQgYS9zcmMvYXV0by9jb25maWd1cmUgYi9zcmMvYXV0by9jb25maWd1cmUKaW5kZXggMmM5ZDllOC4uOGU5ZjZlZSAxMDA3NTUKLS0tIGEvc3JjL2F1dG8vY29uZmlndXJlCisrKyBiL3NyYy9hdXRvL2NvbmZpZ3VyZQpAQCAtMTU5NDMsNiArMTU5NDMsMzAgQEAKIHByaW50ZiAiJXNcbiIgInllcyIgPiY2OyB9OyBwcmludGYgIiVzXG4iICIjZGVmaW5lIEhBVkVfREdFVFRFWFQgMSIgPj5jb25mZGVmcy5oCiAKIGVsc2UgJGFzX25vcAorICB7IHByaW50ZiAiJXNcbiIgIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGRuZ2V0dGV4dCIgPiY1CitwcmludGYgJXMgImNoZWNraW5nIGZvciBkbmdldHRleHQuLi4gIiA+JjY7IH0KKwkJeyBwcmludGYgIiVzXG4iICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorcHJpbnRmICIlc1xuIiAibm8iID4mNjsgfQorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuYmVhbSBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CitpbnQKK21haW4gKHZvaWQpCit7CitkbmdldHRleHQoIkRPTUFJTiIsICJUZXN0IHNpbmdsZSIsICJUZXN0IHBsdXJhbCIsIDEpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIgordGhlbiA6CisgIHsgcHJpbnRmICIlc1xuIiAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IHllcyIgPiY1CitwcmludGYgIiVzXG4iICJ5ZXMiID4mNjsgfTsgcHJpbnRmICIlc1xuIiAiI2RlZmluZSBIQVZFX0ROR0VUVEVYVCAxIiA+PmNvbmZkZWZzLmgKKworZWxzZSAkYXNfbm9wCiAgIHsgcHJpbnRmICIlc1xuIiAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKIHByaW50ZiAiJXNcbiIgIm5vIiA+JjY7IH0KIGZpCmRpZmYgLS1naXQgYS9zcmMvY29uZmlnLmguaW4gYi9zcmMvY29uZmlnLmguaW4KaW5kZXggM2ZmNDYwNS4uNzljYjM3YyAxMDA2NDQKLS0tIGEvc3JjL2NvbmZpZy5oLmluCisrKyBiL3NyYy9jb25maWcuaC5pbgpAQCAtNDMwLDYgKzQzMCw5IEBACiAvKiBEZWZpbmUgaWYgdGhlcmUgaXMgYSB3b3JraW5nIGRnZXR0ZXh0KCkuICovCiAjdW5kZWYgSEFWRV9ER0VUVEVYVAogCisvKiBEZWZpbmUgaWYgdGhlcmUgaXMgYSB3b3JraW5nIGRuZ2V0dGV4dCgpLiAqLworI3VuZGVmIEhBVkVfRE5HRVRURVhUCisKIC8qIERlZmluZSBpZiBfbmxfbXNnX2NhdF9jbnRyIGlzIHByZXNlbnQuICovCiAjdW5kZWYgSEFWRV9OTF9NU0dfQ0FUX0NOVFIKIApkaWZmIC0tZ2l0IGEvc3JjL2NvbmZpZ3VyZS5hYyBiL3NyYy9jb25maWd1cmUuYWMKaW5kZXggMjk0M2VjNS4uYjdiNDc0NyAxMDA2NDQKLS0tIGEvc3JjL2NvbmZpZ3VyZS5hYworKysgYi9zcmMvY29uZmlndXJlLmFjCkBAIC00NTIwLDYgKzQ1MjAsMTIgQEAKIAkJWyNpbmNsdWRlIDxsaWJpbnRsLmg+XSwKIAkJW2RnZXR0ZXh0KCJUZXN0IiwgIlRlc3QiKTtdKV0sCiAJCUFDX01TR19SRVNVTFQoW3llc10pOyBBQ19ERUZJTkUoSEFWRV9ER0VUVEVYVCksCisgICAgICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBkbmdldHRleHRdKQorCQlBQ19NU0dfUkVTVUxUKFtub10pKQorICAgICAgQUNfTElOS19JRkVMU0UoW0FDX0xBTkdfUFJPR1JBTSgKKwkJWyNpbmNsdWRlIDxsaWJpbnRsLmg+XSwKKwkJW2RuZ2V0dGV4dCgiRE9NQUlOIiwgIlRlc3Qgc2luZ2xlIiwgIlRlc3QgcGx1cmFsIiwgMSk7XSldLAorCQlBQ19NU0dfUkVTVUxUKFt5ZXNdKTsgQUNfREVGSU5FKEhBVkVfRE5HRVRURVhUKSwKIAkJQUNfTVNHX1JFU1VMVChbbm9dKSkKICAgICAgIGRubCBfbmxfbXNnX2NhdF9jbnRyIGlzIHJlcXVpcmVkIGZvciBHTlUgZ2V0dGV4dAogICAgICAgQUNfTVNHX0NIRUNLSU5HKFtmb3IgX25sX21zZ19jYXRfY250cl0pCmRpZmYgLS1naXQgYS9zcmMvZXZhbGZ1bmMuYyBiL3NyYy9ldmFsZnVuYy5jCmluZGV4IDg4ODYwODguLjQxNDQ0ZjQgMTAwNjQ0Ci0tLSBhL3NyYy9ldmFsZnVuYy5jCisrKyBiL3NyYy9ldmFsZnVuYy5jCkBAIC0xMTksNiArMTE5LDcgQEAKIHN0YXRpYyB2b2lkIGZfbXpldmFsKHR5cHZhbF9UICphcmd2YXJzLCB0eXB2YWxfVCAqcmV0dHYpOwogI2VuZGlmCiBzdGF0aWMgdm9pZCBmX25leHRub25ibGFuayh0eXB2YWxfVCAqYXJndmFycywgdHlwdmFsX1QgKnJldHR2KTsKK3N0YXRpYyB2b2lkIGZfbmdldHRleHQodHlwdmFsX1QgKmFyZ3ZhcnMsIHR5cHZhbF9UICpyZXR0dik7CiBzdGF0aWMgdm9pZCBmX25yMmNoYXIodHlwdmFsX1QgKmFyZ3ZhcnMsIHR5cHZhbF9UICpyZXR0dik7CiBzdGF0aWMgdm9pZCBmX29yKHR5cHZhbF9UICphcmd2YXJzLCB0eXB2YWxfVCAqcmV0dHYpOwogI2lmZGVmIEZFQVRfUEVSTApAQCAtMjQwMiw2ICsyNDAzLDggQEAKIAkJCX0sCiAgICAgeyJuZXh0bm9uYmxhbmsiLAkxLCAxLCBGRUFSR18xLAkgICAgYXJnMV9sbnVtLAogCQkJcmV0X251bWJlciwJICAgIGZfbmV4dG5vbmJsYW5rfSwKKyAgICB7Im5nZXR0ZXh0IiwJMywgNCwgRkVBUkdfMywJICAgIGFyZzRfc3RyaW5nX3N0cmluZ19udW1iZXJfc3RyaW5nLAorCQkJcmV0X3N0cmluZywJICAgIGZfbmdldHRleHR9LAogICAgIHsibnIyY2hhciIsCQkxLCAyLCBGRUFSR18xLAkgICAgYXJnMl9udW1iZXJfYm9vbCwKIAkJCXJldF9zdHJpbmcsCSAgICBmX25yMmNoYXJ9LAogICAgIHsib3IiLAkJMiwgMiwgRkVBUkdfMSwJICAgIGFyZzJfbnVtYmVyLApAQCAtOTM1OCw2ICs5MzYxLDUxIEBACiAgICAgcmV0dHYtPnZ2YWwudl9udW1iZXIgPSBsbnVtOwogfQogCisKKy8qCisgKiAibmdldHRleHQoKSIgZnVuY3Rpb24KKyAqLworICAgIHN0YXRpYyB2b2lkCitmX25nZXR0ZXh0KHR5cHZhbF9UICphcmd2YXJzLCB0eXB2YWxfVCAqcmV0dHYpCit7CisjaWYgZGVmaW5lZChIQVZFX0JJTkRfVEVYVERPTUFJTl9DT0RFU0VUKQorICAgIGNoYXIgKnByZXYgPSBOVUxMOworI2VuZGlmCisKKyAgICBpZiAoY2hlY2tfZm9yX25vbmVtcHR5X3N0cmluZ19hcmcoYXJndmFycywgMCkgPT0gRkFJTAorCXx8IGNoZWNrX2Zvcl9ub25lbXB0eV9zdHJpbmdfYXJnKGFyZ3ZhcnMsIDEpID09IEZBSUwKKwl8fCBjaGVja19mb3JfbnVtYmVyX2FyZyhhcmd2YXJzLCAyKSA9PSBGQUlMCisJfHwgY2hlY2tfZm9yX29wdF9zdHJpbmdfYXJnKGFyZ3ZhcnMsIDMpID09IEZBSUwpCisJcmV0dXJuOworCisgICAgcmV0dHYtPnZfdHlwZSA9IFZBUl9TVFJJTkc7CisKKyAgICBpZiAoYXJndmFyc1szXS52X3R5cGUgPT0gVkFSX1NUUklORyAmJgorCSAgICBhcmd2YXJzWzNdLnZ2YWwudl9zdHJpbmcgIT0gTlVMTCAmJgorCSAgICAqKGFyZ3ZhcnNbM10udnZhbC52X3N0cmluZykgIT0gTlVMKQorICAgIHsKKyNpZiBkZWZpbmVkKEhBVkVfQklORF9URVhURE9NQUlOX0NPREVTRVQpCisJcHJldiA9IGJpbmRfdGV4dGRvbWFpbl9jb2Rlc2V0KChjb25zdCBjaGFyICopYXJndmFyc1szXS52dmFsLnZfc3RyaW5nLCAoY2hhciAqKXBfZW5jKTsKKyNlbmRpZgorCisjaWYgZGVmaW5lZChIQVZFX0ROR0VUVEVYVCkKKwlyZXR0di0+dnZhbC52X3N0cmluZyA9IHZpbV9zdHJzYXZlKChjaGFyX3UgKilkbmdldHRleHQoKGNvbnN0IGNoYXIgKilhcmd2YXJzWzNdLnZ2YWwudl9zdHJpbmcsIChjb25zdCBjaGFyICopYXJndmFyc1swXS52dmFsLnZfc3RyaW5nLCAoY29uc3QgY2hhciAqKWFyZ3ZhcnNbMV0udnZhbC52X3N0cmluZywgKGludClhcmd2YXJzWzJdLnZ2YWwudl9udW1iZXIpKTsKKyNlbHNlCisJdGV4dGRvbWFpbigoY29uc3QgY2hhciAqKWFyZ3ZhcnNbM10udnZhbC52X3N0cmluZyk7CisJcmV0dHYtPnZ2YWwudl9zdHJpbmcgPSB2aW1fc3Ryc2F2ZSgoY2hhcl91ICopTkdFVFRFWFQoKGNvbnN0IGNoYXIgKilhcmd2YXJzWzBdLnZ2YWwudl9zdHJpbmcsIChjb25zdCBjaGFyICopYXJndmFyc1sxXS52dmFsLnZfc3RyaW5nLCBhcmd2YXJzWzJdLnZ2YWwudl9udW1iZXIpKTsKKwl0ZXh0ZG9tYWluKFZJTVBBQ0tBR0UpOworI2VuZGlmCisKKyNpZiBkZWZpbmVkKEhBVkVfQklORF9URVhURE9NQUlOX0NPREVTRVQpCisJaWYgKHByZXYgIT0gTlVMTCkKKwkgICAgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQoKGNvbnN0IGNoYXIgKilhcmd2YXJzWzNdLnZ2YWwudl9zdHJpbmcsIHByZXYpOworI2VuZGlmCisgICAgfQorICAgIGVsc2UKKwlyZXR0di0+dnZhbC52X3N0cmluZyA9IHZpbV9zdHJzYXZlKChjaGFyX3UgKilOR0VUVEVYVCgoY29uc3QgY2hhciAqKWFyZ3ZhcnNbMF0udnZhbC52X3N0cmluZywgKGNvbnN0IGNoYXIgKilhcmd2YXJzWzFdLnZ2YWwudl9zdHJpbmcsIGFyZ3ZhcnNbMl0udnZhbC52X251bWJlcikpOworfQorCisKIC8qCiAgKiAibnIyY2hhcigpIiBmdW5jdGlvbgogICovCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9NYWtlZmlsZSBiL3NyYy90ZXN0ZGlyL3J1X1JVL0xDX01FU1NBR0VTL01ha2VmaWxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmNDA4MmMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9NYWtlZmlsZQpAQCAtMCwwICsxLDUgQEAKK2FsbDogX19QQUNLQUdFX18ubW8KKworX19QQUNLQUdFX18ubW86IF9fUEFDS0FHRV9fLnBvCisJIyBDcmVhdGUgX19QQUNLQUdFX18ubW8uCisJT0xEX1BPX0ZJTEVfSU5QVVQ9eWVzIG1zZ2ZtdCAtbyAkQCAkPApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvcnVfUlUvTENfTUVTU0FHRVMvX19QQUNLQUdFX18ubW8gYi9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9fX1BBQ0tBR0VfXy5tbwppbmRleCAzMDBlYmEyLi41ODFmY2E4IDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9fX1BBQ0tBR0VfXy5tbworKysgYi9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9fX1BBQ0tBR0VfXy5tbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9fX1BBQ0tBR0VfXy5wbyBiL3NyYy90ZXN0ZGlyL3J1X1JVL0xDX01FU1NBR0VTL19fUEFDS0FHRV9fLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVhZGIzOWUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdGRpci9ydV9SVS9MQ19NRVNTQUdFUy9fX1BBQ0tBR0VfXy5wbwpAQCAtMCwwICsxLDMzIEBACisjIFNPTUUgREVTQ1JJUFRJVkUgVElUTEUuCisjIENvcHlyaWdodCAoQykgWUVBUiBUSEUgUEFDS0FHRSdTIENPUFlSSUdIVCBIT0xERVIKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIFBBQ0tBR0UgcGFja2FnZS4KKyMgRklSU1QgQVVUSE9SIDxFTUFJTEBBRERSRVNTPiwgWUVBUi4KKyMKKyMsIGZ1enp5Cittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBQQUNLQUdFIFZFUlNJT05cbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMjUtMDEtMDQgMTI6MzQrMDEwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IFlFQVItTU8tREEgSE86TUkrWk9ORVxuIgorIkxhc3QtVHJhbnNsYXRvcjogRlVMTCBOQU1FIDxFTUFJTEBBRERSRVNTPlxuIgorIkxhbmd1YWdlLVRlYW06IExBTkdVQUdFIDxMTEBsaS5vcmc+XG4iCisiTGFuZ3VhZ2U6IFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MzsgcGx1cmFsPShuJTEwPT0xICYmIG4lMTAwIT0xMSA/IDAgOiBuJTEwPj0yICYmICIKKyJuJTEwPD00ICYmIChuJTEwMDwxMCB8fCBuJTEwMD49MjApID8gMSA6IDIpO1xuIgorCisjICNSZXN0b3Jlcjog0LLRi9Cy0L7QtNC40YLRgdGPINC/0YDQuCDQsNC90LDQu9C40LfQtSAo0L/RgNC+0YTQuNC70LjRgNC+0LLQsNC90LjQuCkg0L/RgNC+0LPRgNCw0LzQvNGLLCDRhNGD0L3QutGG0LjQuCDQuCDRgi4g0L8uCisjIH4hOiBlYXJsaWVyCittc2dpZCAiRVJST1I6ICIKK21zZ3N0ciAi0J7QqNCY0JHQmtCQOiBmb3IgX19QQUNLQUdFX18iCisKKyMgOiF+IFJlc3RvcmVyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGJ1ZmZlciB1bmxvYWRlZCIKK21zZ2lkX3BsdXJhbCAiJWQgYnVmZmVycyB1bmxvYWRlZCIKK21zZ3N0clswXSAiJWQg0LHRg9GE0LXRgCDRg9C00LDQu9GR0L0g0LjQtyDQv9Cw0LzRj9GC0LggZm9yIF9fUEFDS0FHRV9fIgorbXNnc3RyWzFdICIlZCDQsdGD0YTQtdGA0LAg0YPQtNCw0LvQtdC90L4g0LjQtyDQv9Cw0LzRj9GC0LggZm9yIF9fUEFDS0FHRV9fIgorbXNnc3RyWzJdICIlZCDQsdGD0YTQtdGA0L7QsiDRg9C00LDQu9C10L3QviDQuNC3INC/0LDQvNGP0YLQuCBmb3IgX19QQUNLQUdFX18iCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci90ZXN0X2dldHRleHQudmltIGIvc3JjL3Rlc3RkaXIvdGVzdF9nZXR0ZXh0LnZpbQppbmRleCBhOTkwMTIxLi5kZGZjNDAyIDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci90ZXN0X2dldHRleHQudmltCisrKyBiL3NyYy90ZXN0ZGlyL3Rlc3RfZ2V0dGV4dC52aW0KQEAgLTEzLDYgKzEzLDkgQEAKICAgY2FsbCBhc3NlcnRfZXF1YWwoJ3h4eFRFU1R4eHgnLCBnZXR0ZXh0KCJ4eHhURVNUeHh4IiwgInZpbSIpKQogICBjYWxsIGFzc2VydF9lcXVhbCgneHh4VEVTVHh4eCcsIGdldHRleHQoInh4eFRFU1R4eHgiLCAiX19QQUNLQUdFX18iKSkKICAgY2FsbCBhc3NlcnRfZXF1YWwoJ0VSUk9SOiAnLCBnZXR0ZXh0KCJFUlJPUjogIiwgIl9fUEFDS0FHRV9fIikpCisKKyAgY2FsbCBhc3NlcnRfZXF1YWwoJ0VSUk9SOiAnLCBuZ2V0dGV4dCgiRVJST1I6ICIsICJFUlJPUjogIiwgMSwgIl9fUEFDS0FHRV9fIikpCisgIGNhbGwgYXNzZXJ0X2VxdWFsKCdFUlJPUlM6ICcsIG5nZXR0ZXh0KCJFUlJPUjogIiwgIkVSUk9SUzogIiwgMiwgIl9fUEFDS0FHRV9fIikpCiBlbmRmdW5jCiAKICIgdmltOiBzaGlmdHdpZHRoPTIgc3RzPTIgZXhwYW5kdGFiCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci90ZXN0X2dldHRleHRfY3AxMjUxLnZpbSBiL3NyYy90ZXN0ZGlyL3Rlc3RfZ2V0dGV4dF9jcDEyNTEudmltCmluZGV4IDY5ZDJiYmYuLjljMzBlMDkgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL3Rlc3RfZ2V0dGV4dF9jcDEyNTEudmltCisrKyBiL3NyYy90ZXN0ZGlyL3Rlc3RfZ2V0dGV4dF9jcDEyNTEudmltCkBAIC0xNCw3ICsxNCw3IEBACiAKICAgICB0cnkKICAgICAgIGxhbmd1YWdlIG1lc3NhZ2VzIHJ1X1JVCi0gICAgICBjYWxsIGFzc2VydF9lcXVhbCgnztjIwcrAOiAnLCBnZXR0ZXh0KCJFUlJPUjogIiwgIl9fUEFDS0FHRV9fIikpCisgICAgICBjYWxsIGFzc2VydF9lcXVhbCgnztjIwcrAOiBmb3IgX19QQUNLQUdFX18nLCBnZXR0ZXh0KCJFUlJPUjogIiwgIl9fUEFDS0FHRV9fIikpCiAgICAgY2F0Y2ggL15WaW1cJSgoXGFcKylcKVw9OkUxOTc6LwogICAgICAgdGhyb3cgIlNraXBwZWQ6IG5vdCBwb3NzaWJsZSB0byBzZXQgbG9jYWxlIHRvIHJ1IChtaXNzaW5nPykiCiAgICAgZW5kdHJ5CmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci90ZXN0X2dldHRleHRfdXRmOC52aW0gYi9zcmMvdGVzdGRpci90ZXN0X2dldHRleHRfdXRmOC52aW0KaW5kZXggYjk2ZjhlYS4uODdmZTFiMSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3RkaXIvdGVzdF9nZXR0ZXh0X3V0ZjgudmltCisrKyBiL3NyYy90ZXN0ZGlyL3Rlc3RfZ2V0dGV4dF91dGY4LnZpbQpAQCAtMTQsNyArMTQsMTQgQEAKIAogICAgIHRyeQogICAgICAgbGFuZ3VhZ2UgbWVzc2FnZXMgcnVfUlUKLSAgICAgIGNhbGwgYXNzZXJ0X2VxdWFsKCfQntCo0JjQkdCa0JA6ICcsIGdldHRleHQoIkVSUk9SOiAiLCAiX19QQUNLQUdFX18iKSkKKyAgICAgIGNhbGwgYXNzZXJ0X2VxdWFsKCfQntCo0JjQkdCa0JA6IGZvciBfX1BBQ0tBR0VfXycsIGdldHRleHQoIkVSUk9SOiAiLCAiX19QQUNLQUdFX18iKSkKKworICAgICAgY2FsbCBhc3NlcnRfZXF1YWwoJ9Ce0KjQmNCR0JrQkDogZm9yIF9fUEFDS0FHRV9fJywgbmdldHRleHQoIkVSUk9SOiAiLCAiRVJST1JTOiAiLCAxLCAiX19QQUNLQUdFX18iKSkKKyAgICAgIGNhbGwgYXNzZXJ0X2VxdWFsKCfQntCo0JjQkdCa0JA6IGZvciBfX1BBQ0tBR0VfXycsIG5nZXR0ZXh0KCJFUlJPUjogIiwgIkVSUk9SUzogIiwgMiwgIl9fUEFDS0FHRV9fIikpCisKKyAgICAgIGNhbGwgYXNzZXJ0X2VxdWFsKCclZCDQsdGD0YTQtdGAINGD0LTQsNC70ZHQvSDQuNC3INC/0LDQvNGP0YLQuCBmb3IgX19QQUNLQUdFX18nLCBuZ2V0dGV4dCgiJWQgYnVmZmVyIHVubG9hZGVkIiwgIiVkIGJ1ZmZlcnMgdW5sb2FkZWQiLCAxLCAiX19QQUNLQUdFX18iKSkKKyAgICAgIGNhbGwgYXNzZXJ0X2VxdWFsKCclZCDQsdGD0YTQtdGA0LAg0YPQtNCw0LvQtdC90L4g0LjQtyDQv9Cw0LzRj9GC0LggZm9yIF9fUEFDS0FHRV9fJywgbmdldHRleHQoIiVkIGJ1ZmZlciB1bmxvYWRlZCIsICIlZCBidWZmZXJzIHVubG9hZGVkIiwgMiwgIl9fUEFDS0FHRV9fIikpCisgICAgICBjYWxsIGFzc2VydF9lcXVhbCgnJWQg0LHRg9GE0LXRgNC+0LIg0YPQtNCw0LvQtdC90L4g0LjQtyDQv9Cw0LzRj9GC0LggZm9yIF9fUEFDS0FHRV9fJywgbmdldHRleHQoIiVkIGJ1ZmZlciB1bmxvYWRlZCIsICIlZCBidWZmZXJzIHVubG9hZGVkIiwgNSwgIl9fUEFDS0FHRV9fIikpCiAgICAgY2F0Y2ggL15WaW1cJSgoXGFcKylcKVw9OkUxOTc6LwogICAgICAgdGhyb3cgIlNraXBwZWQ6IG5vdCBwb3NzaWJsZSB0byBzZXQgbG9jYWxlIHRvIHJ1IChtaXNzaW5nPykiCiAgICAgZW5kdHJ5CkBAIC0yMiw2ICsyOSwxMyBAQAogICAgIHRyeQogICAgICAgbGFuZ3VhZ2UgbWVzc2FnZXMgZW5fR0IuVVRGLTgKICAgICAgIGNhbGwgYXNzZXJ0X2VxdWFsKCdFUlJPUjogJywgZ2V0dGV4dCgiRVJST1I6ICIsICJfX1BBQ0tBR0VfXyIpKQorCisgICAgICBjYWxsIGFzc2VydF9lcXVhbCgnRVJST1I6ICcsIG5nZXR0ZXh0KCJFUlJPUjogIiwgIkVSUk9SUzogIiwgMSwgIl9fUEFDS0FHRV9fIikpCisgICAgICBjYWxsIGFzc2VydF9lcXVhbCgnRVJST1JTOiAnLCBuZ2V0dGV4dCgiRVJST1I6ICIsICJFUlJPUlM6ICIsIDIsICJfX1BBQ0tBR0VfXyIpKQorCisgICAgICBjYWxsIGFzc2VydF9lcXVhbCgnJWQgYnVmZmVyIHVubG9hZGVkJywgbmdldHRleHQoIiVkIGJ1ZmZlciB1bmxvYWRlZCIsICIlZCBidWZmZXJzIHVubG9hZGVkIiwgMSwgIl9fUEFDS0FHRV9fIikpCisgICAgICBjYWxsIGFzc2VydF9lcXVhbCgnJWQgYnVmZmVycyB1bmxvYWRlZCcsIG5nZXR0ZXh0KCIlZCBidWZmZXIgdW5sb2FkZWQiLCAiJWQgYnVmZmVycyB1bmxvYWRlZCIsIDIsICJfX1BBQ0tBR0VfXyIpKQorICAgICAgY2FsbCBhc3NlcnRfZXF1YWwoJyVkIGJ1ZmZlcnMgdW5sb2FkZWQnLCBuZ2V0dGV4dCgiJWQgYnVmZmVyIHVubG9hZGVkIiwgIiVkIGJ1ZmZlcnMgdW5sb2FkZWQiLCA1LCAiX19QQUNLQUdFX18iKSkKICAgICBjYXRjaCAvXlZpbVwlKChcYVwrKVwpXD06RTE5NzovCiAgICAgICB0aHJvdyAiU2tpcHBlZDogbm90IHBvc3NpYmxlIHRvIHNldCBsb2NhbGUgdG8gZW4gKG1pc3Npbmc/KSIKICAgICBlbmR0cnkKZGlmZiAtLWdpdCBhL3NyYy92ZXJzaW9uLmMgYi9zcmMvdmVyc2lvbi5jCmluZGV4IGU3ODViNDIuLmZhZTkxOTUgMTAwNjQ0Ci0tLSBhL3NyYy92ZXJzaW9uLmMKKysrIGIvc3JjL3ZlcnNpb24uYwpAQCAtNzA1LDYgKzcwNSw4IEBACiBzdGF0aWMgaW50IGluY2x1ZGVkX3BhdGNoZXNbXSA9CiB7ICAgLyogQWRkIG5ldyBwYXRjaCBudW1iZXIgYmVsb3cgdGhpcyBsaW5lICovCiAvKiovCisgICAgMTA2NCwKKy8qKi8KICAgICAxMDYzLAogLyoqLwogICAgIDEwNjIsCg==