ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvZGUvZGVfREUuZGlmZiBiL3J1bnRpbWUvc3BlbGwvZGUvZGVfREUuZGlmZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMzc2ZGM5Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9zcGVsbC9kZS9kZV9ERS5kaWZmCkBAIC0wLDAgKzEsMTQgQEAKKyoqKiBkZV9ERS5vcmlnLmFmZglGcmkgRmViIDI1IDEyOjUwOjEwIDIwMDUKKy0tLSBkZV9ERS5hZmYJU3VuIEp1bCAgMyAxOTowNDozMiAyMDA1CisqKioqKioqKioqKioqKioKKyoqKiAyLDMgKioqKgorLS0tIDIsMTAgLS0tLQorICBUUlkgZXNpYW5ydG9sY2R1Z21waGJ5ZnZrd+T89t/h6erg4vFFU0lBTlJUT0xDRFVHTVBIQllGVktXxNzWCisrIAorKyBGT0wgIODh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/t//CisrIExPVyAg4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3/8KKysgVVBQICDAwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d7f/worKyAKKysgTUlEV09SRAknCisrIAorICAjCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2RlL21haW4uYWFwIGIvcnVudGltZS9zcGVsbC9kZS9tYWluLmFhcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZmQyYTk5Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9zcGVsbC9kZS9tYWluLmFhcApAQCAtMCwwICsxLDgyIEBACisjIEFhcCByZWNpcGUgZm9yIER1dGNoIFZpbSBzcGVsbCBmaWxlcy4KKworIyBVc2UgYSBmcmVzaGx5IGNvbXBpbGVkIFZpbSBpZiBpdCBleGlzdHMuCitAaWYgb3MucGF0aC5leGlzdHMoJy4uLy4uLy4uL3NyYy92aW0nKToKKyAgICBWSU0gPSAuLi8uLi8uLi9zcmMvdmltCitAZWxzZToKKyAgICBWSU0gPSB2aW0KKworU1BFTExESVIgPSAuLgorRklMRVMgICAgPSBkZV9ERS5hZmYgZGVfREUuZGljCitaSVBGSUxFICA9IGRlX0RFX2NvbWIuemlwCisKK2FsbDogJChTUEVMTERJUikvZGUubGF0aW4xLnNwbCAkKFNQRUxMRElSKS9kZS51dGYtOC5zcGwgLi4vUkVBRE1FX2RlLnR4dAorCiskKFNQRUxMRElSKS9kZS5sYXRpbjEuc3BsIDogJChWSU0pICQoRklMRVMpCisgICAgICAgIDpzeXMgZW52IExBTkc9ZGVfREUuSVNPODg1OS0xCisJCSQoVklNKSAtZSAtYyAibWtzcGVsbCEgJChTUEVMTERJUikvZGUgZGVfREUiIC1jIHEKKworJChTUEVMTERJUikvZGUudXRmLTguc3BsIDogJChWSU0pICQoRklMRVMpCisgICAgICAgIDpzeXMgZW52IExBTkc9ZGVfREUuVVRGLTgKKwkJJChWSU0pIC1lIC1jICJta3NwZWxsISAkKFNQRUxMRElSKS9kZSBkZV9ERSIgLWMgcQorCisuLi9SRUFETUVfZGUudHh0OiBSRUFETUVfZGVfREVfY29tYi50eHQKKyAgICAgICAgOmNvcHkgJHNvdXJjZSAkdGFyZ2V0CisKKyMKKyMgRmV0Y2hpbmcgdGhlIGZpbGVzIGZyb20gT3Blbk9mZmljZS5vcmcuCisjCitPT0RJUiA9IGh0dHA6Ly9mdHAuc2VydmljZXMub3Blbm9mZmljZS5vcmcvcHViL09wZW5PZmZpY2Uub3JnL2NvbnRyaWIvZGljdGlvbmFyaWVzCis6YXR0ciB7ZmV0Y2ggPSAkKE9PRElSKS8lZmlsZSV9ICQoWklQRklMRSkKKworIyBUaGUgZmlsZXMgZG9uJ3QgZGVwZW5kIG9uIHRoZSAuemlwIGZpbGUgc28gdGhhdCB3ZSBjYW4gZGVsZXRlIGl0LgorIyBPbmx5IGRvd25sb2FkIHRoZSB6aXAgZmlsZSBpZiB0aGUgdGFyZ2V0cyBkb24ndCBleGlzdC4KK2RlX0RFLmFmZiBkZV9ERS5kaWM6IHtidWlsZGNoZWNrPX0KKyAgICAgICAgOmFzc2VydHBrZyB1bnppcCBwYXRjaAorICAgICAgICA6ZmV0Y2ggJChaSVBGSUxFKQorICAgICAgICA6c3lzICQoVU5aSVApICQoWklQRklMRSkKKyAgICAgICAgOmRlbGV0ZSAkKFpJUEZJTEUpCisgICAgICAgIDptb3ZlIGRlX0RFX2NvbWIuYWZmIGRlX0RFLmFmZgorICAgICAgICA6bW92ZSBkZV9ERV9jb21iLmRpYyBkZV9ERS5kaWMKKyAgICAgICAgQGlmIG5vdCBvcy5wYXRoLmV4aXN0cygnZGVfREUub3JpZy5hZmYnKToKKyAgICAgICAgICAgICAgICA6Y29weSBkZV9ERS5hZmYgZGVfREUub3JpZy5hZmYKKyAgICAgICAgQGlmIG5vdCBvcy5wYXRoLmV4aXN0cygnZGVfREUub3JpZy5kaWMnKToKKyAgICAgICAgICAgICAgICA6Y29weSBkZV9ERS5hZmYgZGVfREUub3JpZy5kaWMKKyAgICAgICAgOnN5cyBwYXRjaCA8ZGVfREUuZGlmZgorCisKKyMgR2VuZXJhdGUgZGlmZiBmaWxlcywgc28gdGhhdCBvdGhlcnMgY2FuIGdldCB0aGUgT3Blbk9mZmljZSBmaWxlcyBhbmQgYXBwbHkKKyMgdGhlIGRpZmZzIHRvIGdldCB0aGUgVmltIHZlcnNpb25zLgorCitkaWZmOgorICAgICAgICA6YXNzZXJ0cGtnIGRpZmYKKyAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLWEgLUMgMSBkZV9ERS5vcmlnLmFmZiBkZV9ERS5hZmYgPmRlX0RFLmRpZmYKKyAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLWEgLUMgMSBkZV9ERS5vcmlnLmRpYyBkZV9ERS5kaWMgPj5kZV9ERS5kaWZmCisKKworIyBDaGVjayBmb3IgdXBkYXRlZCBPcGVuT2ZmaWNlIHNwZWxsIGZpbGVzLiAgV2hlbiB0aGVyZSBhcmUgY2hhbmdlcyB0aGUKKyMgIi5uZXcuYWZmIiBhbmQgIi5uZXcuZGljIiBmaWxlcyBhcmUgbGVmdCBiZWhpbmQgZm9yIG1hbnVhbCBpbnNwZWN0aW9uLgorCitjaGVjazoKKyAgICAgICAgOmFzc2VydHBrZyB1bnppcCBkaWZmCisgICAgICAgIDpmZXRjaCAkKFpJUEZJTEUpCisgICAgICAgIDpta2RpciB0bXAKKyAgICAgICAgOmNkIHRtcAorICAgICAgICBAdHJ5OgorICAgICAgICAgICAgQGltcG9ydCBzdGF0CisgICAgICAgICAgICA6c3lzICQoVU5aSVApIC4uLyQoWklQRklMRSkKKyAgICAgICAgICAgIDptb3ZlIGRlX0RFX2NvbWIuYWZmIGRlX0RFLmFmZgorICAgICAgICAgICAgOm1vdmUgZGVfREVfY29tYi5kaWMgZGVfREUuZGljCisgICAgICAgICAgICA6c3lzIHtmb3JjZX0gZGlmZiAuLi9kZV9ERS5vcmlnLmFmZiBkZV9ERS5hZmYgPmQKKyAgICAgICAgICAgIEBpZiBvcy5zdGF0KCdkJylbc3RhdC5TVF9TSVpFXSA+IDA6CisgICAgICAgICAgICAgICAgOmNvcHkgZGVfREUuYWZmIC4uL2RlX0RFLm5ldy5hZmYKKyAgICAgICAgICAgIDpzeXMge2ZvcmNlfSBkaWZmIC4uL2RlX0RFLm9yaWcuZGljIGRlX0RFLmRpYyA+ZAorICAgICAgICAgICAgQGlmIG9zLnN0YXQoJ2QnKVtzdGF0LlNUX1NJWkVdID4gMDoKKyAgICAgICAgICAgICAgICA6Y29weSBkZV9ERS5kaWMgLi4vZGVfREUubmV3LmRpYworICAgICAgICBAZmluYWxseToKKyAgICAgICAgICAgIDpjZCAuLgorICAgICAgICAgICAgOmRlbGV0ZSB7cn17Zn17cX0gdG1wCisgICAgICAgICAgICA6ZGVsZXRlICQoWklQRklMRSkKKworCisjIHZpbTogc2V0IHN0cz00IHN3PTQgOgo=