ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvYWYvYWZfWkEuZGlmZiBiL3J1bnRpbWUvc3BlbGwvYWYvYWZfWkEuZGlmZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45Yzg1ODA0Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9zcGVsbC9hZi9hZl9aQS5kaWZmCkBAIC0wLDAgKzEsMzYgQEAKKyoqKiBhZl9aQS5vcmlnLmFmZglTdW4gQXVnIDE0IDE3OjM3OjAxIDIwMDUKKy0tLSBhZl9aQS5hZmYJU3VuIEF1ZyAxNCAxNzozODoxMSAyMDA1CisqKioqKioqKioqKioqKioKKyoqKiAyMywyNCAqKioqCistLS0gMjMsMzQgLS0tLQorICAKKysgRk9MICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/worKyBMT1cgIODh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/t//CisrIFVQUCAgwMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbY2drb3N3e3/8KKysgCisrIFNPRk9GUk9NIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVrg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3r8KKysgU09GT1RPICAgZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlYmN0ZWZnaGVqa2xubmVwa3JzdGV2dmtlc2VlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcHNlZWVlZWVlZWNlZWVlZWVlZWRuZWVlZWVlZWVlZWVwPworKyAKKysgTUlEV09SRAknLQorKyBTTEFTSCAsCisrIAorICBNQVAgMworKioqIGFmX1pBLm9yaWcuZGljCVN1biBBdWcgMTQgMTc6Mzc6MDEgMjAwNQorLS0tIGFmX1pBLmRpYwlTdW4gQXVnIDE0IDE3OjM4OjU0IDIwMDUKKyoqKioqKioqKioqKioqKgorKioqIDE4NjEsMTg2NCAqKioqCisgIFQtc2t5ZgorISBUQ1AvSVAKKyEgVENQL0lQLWJvbmRlbAorICBUTEEKKy0tLSAxODYxLDE4NjQgLS0tLQorICBULXNreWYKKyEgVENQLElQCishIFRDUCxJUC1ib25kZWwKKyAgVExBCisqKioqKioqKioqKioqKioKKyoqKiAxMjQxMDksMTI0MTExICoqKioKKyAgdnJ5d2lsbGlnbGlrCistIHZ0CisgIHZ1aWxlL1IKKy0tLSAxMjQxMDksMTI0MTEwIC0tLS0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvYWYvbWFpbi5hYXAgYi9ydW50aW1lL3NwZWxsL2FmL21haW4uYWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzOTNjNWYKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3NwZWxsL2FmL21haW4uYWFwCkBAIC0wLDAgKzEsNzkgQEAKKyMgQWFwIHJlY2lwZSBmb3IgQWZyaWthYW5zIFZpbSBzcGVsbCBmaWxlcy4KKworIyBVc2UgYSBmcmVzaGx5IGNvbXBpbGVkIFZpbSBpZiBpdCBleGlzdHMuCitAaWYgb3MucGF0aC5leGlzdHMoJy4uLy4uLy4uL3NyYy92aW0nKToKKyAgICBWSU0gPSAuLi8uLi8uLi9zcmMvdmltCitAZWxzZToKKyAgICA6cHJvZ3NlYXJjaCBWSU0gdmltCisKK1NQRUxMRElSID0gLi4KK0ZJTEVTICAgID0gYWZfWkEuYWZmIGFmX1pBLmRpYworCithbGw6ICRTUEVMTERJUi9hZi5sYXRpbjEuc3BsICRTUEVMTERJUi9hZi51dGYtOC5zcGwgLi4vUkVBRE1FX2FmLnR4dAorCiskU1BFTExESVIvYWYubGF0aW4xLnNwbCA6ICRWSU0gJEZJTEVTCisgICAgICAgIDpzeXMgZW52IExBTkc9YWZfWkEuSVNPODg1OS0xCisJCSRWSU0gLXUgTk9ORSAtZSAtYyAibWtzcGVsbCEgJFNQRUxMRElSL2FmIGFmX1pBIiAtYyBxCisKKyRTUEVMTERJUi9hZi51dGYtOC5zcGwgOiAkVklNICRGSUxFUworICAgICAgICA6c3lzIGVudiBMQU5HPWFmX1pBLlVURi04CisJCSRWSU0gLXUgTk9ORSAtZSAtYyAibWtzcGVsbCEgJFNQRUxMRElSL2FmIGFmX1pBIiAtYyBxCisKKy4uL1JFQURNRV9hZi50eHQgOiBSRUFETUVfYWZfWkEudHh0CisgICAgICAgIDpjb3B5ICRzb3VyY2UgJHRhcmdldAorCisjCisjIEZldGNoaW5nIHRoZSBmaWxlIGZyb20gU291cmNlRm9yZ2UuICBUaGUgYXJjaGl2ZSBhdCBPcGVuT2ZmaWNlIGlzIGJyb2tlbiEKKyMKK0ZJTEUgPSBodHRwOi8vc3VyZm5ldC5kbC5zb3VyY2Vmb3JnZS5uZXQvc291cmNlZm9yZ2UvdHJhbnNsYXRlL215c3BlbGwtYWZfWkEtMjAwNDA3MjcuemlwCisKKzphdHRyIHtmZXRjaCA9ICRGSUxFfSBhZl9aQS56aXAKKworIyBUaGUgZmlsZXMgZG9uJ3QgZGVwZW5kIG9uIHRoZSAuemlwIGZpbGUgc28gdGhhdCB3ZSBjYW4gZGVsZXRlIGl0LgorIyBPbmx5IGRvd25sb2FkIHRoZSB6aXAgZmlsZSBpZiB0aGUgdGFyZ2V0cyBkb24ndCBleGlzdC4KK2FmX1pBLmFmZiBhZl9aQS5kaWM6IHtidWlsZGNoZWNrPX0KKyAgICAgICAgOmFzc2VydHBrZyB1bnppcCBwYXRjaAorICAgICAgICA6ZmV0Y2ggYWZfWkEuemlwCisgICAgICAgIDpzeXMgJFVOWklQIGFmX1pBLnppcAorICAgICAgICA6ZGVsZXRlIGFmX1pBLnppcAorICAgICAgICBAaWYgbm90IG9zLnBhdGguZXhpc3RzKCdhZl9aQS5vcmlnLmFmZicpOgorICAgICAgICAgICAgOmNvcHkgYWZfWkEuYWZmIGFmX1pBLm9yaWcuYWZmCisgICAgICAgIEBpZiBub3Qgb3MucGF0aC5leGlzdHMoJ2FmX1pBLm9yaWcuZGljJyk6CisgICAgICAgICAgICA6Y29weSBhZl9aQS5kaWMgYWZfWkEub3JpZy5kaWMKKyAgICAgICAgQGlmIG9zLnBhdGguZXhpc3RzKCdhZl9aQS5kaWZmJyk6CisgICAgICAgICAgICA6c3lzIHBhdGNoIDxhZl9aQS5kaWZmCisKKworIyBHZW5lcmF0ZSBkaWZmIGZpbGVzLCBzbyB0aGF0IG90aGVycyBjYW4gZ2V0IHRoZSBPcGVuT2ZmaWNlIGZpbGVzIGFuZCBhcHBseQorIyB0aGUgZGlmZnMgdG8gZ2V0IHRoZSBWaW0gdmVyc2lvbnMuCisKK2RpZmY6CisgICAgICAgIDphc3NlcnRwa2cgZGlmZgorICAgICAgICA6c3lzIHtmb3JjZX0gZGlmZiAtYSAtQyAxIGFmX1pBLm9yaWcuYWZmIGFmX1pBLmFmZiA+YWZfWkEuZGlmZgorICAgICAgICA6c3lzIHtmb3JjZX0gZGlmZiAtYSAtQyAxIGFmX1pBLm9yaWcuZGljIGFmX1pBLmRpYyA+PmFmX1pBLmRpZmYKKworCisjIENoZWNrIGZvciB1cGRhdGVkIE9wZW5PZmZpY2Ugc3BlbGwgZmlsZXMuICBXaGVuIHRoZXJlIGFyZSBjaGFuZ2VzIHRoZQorIyAiLm5ldy5hZmYiIGFuZCAiLm5ldy5kaWMiIGZpbGVzIGFyZSBsZWZ0IGJlaGluZCBmb3IgbWFudWFsIGluc3BlY3Rpb24uCisKK2NoZWNrOgorICAgICAgICA6YXNzZXJ0cGtnIHVuemlwIGRpZmYKKyAgICAgICAgOmZldGNoIGFmX1pBLnppcAorICAgICAgICA6bWtkaXIgdG1wCisgICAgICAgIDpjZCB0bXAKKyAgICAgICAgQHRyeToKKyAgICAgICAgICAgIEBpbXBvcnQgc3RhdAorICAgICAgICAgICAgOnN5cyAkVU5aSVAgLi4vYWZfWkEuemlwCisgICAgICAgICAgICA6c3lzIHtmb3JjZX0gZGlmZiAuLi9hZl9aQS5vcmlnLmFmZiBhZl9aQS5hZmYgPmQKKyAgICAgICAgICAgIEBpZiBvcy5zdGF0KCdkJylbc3RhdC5TVF9TSVpFXSA+IDA6CisgICAgICAgICAgICAgICAgOmNvcHkgYWZfWkEuYWZmIC4uL2FmX1pBLm5ldy5hZmYKKyAgICAgICAgICAgIDpzeXMge2ZvcmNlfSBkaWZmIC4uL2FmX1pBLm9yaWcuZGljIGFmX1pBLmRpYyA+ZAorICAgICAgICAgICAgQGlmIG9zLnN0YXQoJ2QnKVtzdGF0LlNUX1NJWkVdID4gMDoKKyAgICAgICAgICAgICAgICA6Y29weSBhZl9aQS5kaWMgLi4vYWZfWkEubmV3LmRpYworICAgICAgICBAZmluYWxseToKKyAgICAgICAgICAgIDpjZCAuLgorICAgICAgICAgICAgOmRlbGV0ZSB7cn17Zn17cX0gdG1wCisgICAgICAgICAgICA6ZGVsZXRlIGFmX1pBLnppcAorCisKKyMgdmltOiBzZXQgc3RzPTQgc3c9NCA6Cg==