ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvcncvbWFpbi5hYXAgYi9ydW50aW1lL3NwZWxsL3J3L21haW4uYWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBlZGE5OWQKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3NwZWxsL3J3L21haW4uYWFwCkBAIC0wLDAgKzEsNzkgQEAKKyMgQWFwIHJlY2lwZSBmb3IgS2lueWFyd2FuZGEgKFJ3YW5kYSkgVmltIHNwZWxsIGZpbGVzLgorCisjIFVzZSBhIGZyZXNobHkgY29tcGlsZWQgVmltIGlmIGl0IGV4aXN0cy4KK0BpZiBvcy5wYXRoLmV4aXN0cygnLi4vLi4vLi4vc3JjL3ZpbScpOgorICAgIFZJTSA9IC4uLy4uLy4uL3NyYy92aW0KK0BlbHNlOgorICAgIDpwcm9nc2VhcmNoIFZJTSB2aW0KKworU1BFTExESVIgPSAuLgorRklMRVMgICAgPSByd19SVy5hZmYgcndfUlcuZGljCisKK2FsbDogJFNQRUxMRElSL3J3LmxhdGluMS5zcGwgJFNQRUxMRElSL3J3LnV0Zi04LnNwbCAuLi9SRUFETUVfcncudHh0CisKKyMgSSBkb24ndCBoYXZlIGEgS2lueWFyd2FuZGEgbG9jYWxlLCB1c2UgdGhlIER1dGNoIG9uZSBpbnN0ZWFkLgorJFNQRUxMRElSL3J3LmxhdGluMS5zcGwgOiAkRklMRVMKKyAgICAgICAgOnN5cyBlbnYgTEFORz1ubF9OTC5JU084ODU5LTEKKwkJJFZJTSAtdSBOT05FIC1lIC1jICJta3NwZWxsISAkU1BFTExESVIvcncgcndfUlciIC1jIHEKKworJFNQRUxMRElSL3J3LnV0Zi04LnNwbCA6ICRGSUxFUworICAgICAgICA6c3lzIGVudiBMQU5HPW5sX05MLlVURi04CisJCSRWSU0gLXUgTk9ORSAtZSAtYyAibWtzcGVsbCEgJFNQRUxMRElSL3J3IHJ3X1JXIiAtYyBxCisKKy4uL1JFQURNRV9ydy50eHQgOiBSRUFETUVfcndfUlcudHh0CisgICAgICAgIDpjb3B5ICRzb3VyY2UgJHRhcmdldAorCisjCisjIEZldGNoaW5nIHRoZSBmaWxlcyBmcm9tIE9wZW5PZmZpY2Uub3JnLgorIworT09ESVIgPSBodHRwOi8vZnRwLnNlcnZpY2VzLm9wZW5vZmZpY2Uub3JnL3B1Yi9PcGVuT2ZmaWNlLm9yZy9jb250cmliL2RpY3Rpb25hcmllcworOmF0dHIge2ZldGNoID0gJE9PRElSLyVmaWxlJX0gcndfUlcuemlwCisKKyMgVGhlIGZpbGVzIGRvbid0IGRlcGVuZCBvbiB0aGUgLnppcCBmaWxlIHNvIHRoYXQgd2UgY2FuIGRlbGV0ZSBpdC4KKyMgT25seSBkb3dubG9hZCB0aGUgemlwIGZpbGUgaWYgdGhlIHRhcmdldHMgZG9uJ3QgZXhpc3QuCityd19SVy5hZmYgcndfUlcuZGljOiB7YnVpbGRjaGVjaz19CisgICAgICAgIDphc3NlcnRwa2cgdW56aXAgcGF0Y2gKKyAgICAgICAgOmZldGNoIHJ3X1JXLnppcAorICAgICAgICA6c3lzICRVTlpJUCByd19SVy56aXAKKyAgICAgICAgOmRlbGV0ZSByd19SVy56aXAKKyAgICAgICAgQGlmIG5vdCBvcy5wYXRoLmV4aXN0cygncndfUlcub3JpZy5hZmYnKToKKyAgICAgICAgICAgIDpjb3B5IHJ3X1JXLmFmZiByd19SVy5vcmlnLmFmZgorICAgICAgICBAaWYgbm90IG9zLnBhdGguZXhpc3RzKCdyd19SVy5vcmlnLmRpYycpOgorICAgICAgICAgICAgOmNvcHkgcndfUlcuZGljIHJ3X1JXLm9yaWcuZGljCisgICAgICAgIEBpZiBvcy5wYXRoLmV4aXN0cygncndfUlcuZGlmZicpOgorICAgICAgICAgICAgOnN5cyBwYXRjaCA8cndfUlcuZGlmZgorCisKKyMgR2VuZXJhdGUgZGlmZiBmaWxlcywgc28gdGhhdCBvdGhlcnMgY2FuIGdldCB0aGUgT3Blbk9mZmljZSBmaWxlcyBhbmQgYXBwbHkKKyMgdGhlIGRpZmZzIHRvIGdldCB0aGUgVmltIHZlcnNpb25zLgorCitkaWZmOgorICAgICAgICA6YXNzZXJ0cGtnIGRpZmYKKyAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLWEgLUMgMSByd19SVy5vcmlnLmFmZiByd19SVy5hZmYgPnJ3X1JXLmRpZmYKKyAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLWEgLUMgMSByd19SVy5vcmlnLmRpYyByd19SVy5kaWMgPj5yd19SVy5kaWZmCisKKworIyBDaGVjayBmb3IgdXBkYXRlZCBPcGVuT2ZmaWNlIHNwZWxsIGZpbGVzLiAgV2hlbiB0aGVyZSBhcmUgY2hhbmdlcyB0aGUKKyMgIi5uZXcuYWZmIiBhbmQgIi5uZXcuZGljIiBmaWxlcyBhcmUgbGVmdCBiZWhpbmQgZm9yIG1hbnVhbCBpbnNwZWN0aW9uLgorCitjaGVjazoKKyAgICAgICAgOmFzc2VydHBrZyB1bnppcCBkaWZmCisgICAgICAgIDpmZXRjaCByd19SVy56aXAKKyAgICAgICAgOm1rZGlyIHRtcAorICAgICAgICA6Y2QgdG1wCisgICAgICAgIEB0cnk6CisgICAgICAgICAgICBAaW1wb3J0IHN0YXQKKyAgICAgICAgICAgIDpzeXMgJFVOWklQIC4uL3J3X1JXLnppcAorICAgICAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLi4vcndfUlcub3JpZy5hZmYgcndfUlcuYWZmID5kCisgICAgICAgICAgICBAaWYgb3Muc3RhdCgnZCcpW3N0YXQuU1RfU0laRV0gPiAwOgorICAgICAgICAgICAgICAgIDpjb3B5IHJ3X1JXLmFmZiAuLi9yd19SVy5uZXcuYWZmCisgICAgICAgICAgICA6c3lzIHtmb3JjZX0gZGlmZiAuLi9yd19SVy5vcmlnLmRpYyByd19SVy5kaWMgPmQKKyAgICAgICAgICAgIEBpZiBvcy5zdGF0KCdkJylbc3RhdC5TVF9TSVpFXSA+IDA6CisgICAgICAgICAgICAgICAgOmNvcHkgcndfUlcuZGljIC4uL3J3X1JXLm5ldy5kaWMKKyAgICAgICAgQGZpbmFsbHk6CisgICAgICAgICAgICA6Y2QgLi4KKyAgICAgICAgICAgIDpkZWxldGUge3J9e2Z9e3F9IHRtcAorICAgICAgICAgICAgOmRlbGV0ZSByd19SVy56aXAKKworCisjIHZpbTogc2V0IHN0cz00IHN3PTQgOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zcGVsbC9ydy9yd19SVy5kaWZmIGIvcnVudGltZS9zcGVsbC9ydy9yd19SVy5kaWZmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkZTM3Y2QKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3NwZWxsL3J3L3J3X1JXLmRpZmYKQEAgLTAsMCArMSwxMyBAQAorKioqIHJ3X1JXLm9yaWcuYWZmCVdlZCBBdWcgMzEgMTY6NTM6MDggMjAwNQorLS0tIHJ3X1JXLmFmZglXZWQgQXVnIDMxIDE2OjUzOjQ2IDIwMDUKKyoqKioqKioqKioqKioqKgorKioqIDE5ICoqKioKKy0tLSAxOSwyNiAtLS0tCisgIFRSWSBhaXVlbm9yYmtteWd3dGhzemQnY0lBaktVdmZOTXBsQkdZUlBUSFNEV0NPWkVMVi1KRgorKyAKKysgRk9MICDf4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+/worKyBMT1cgIN/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7/CisrIFVQUCAg38DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3v8KKysgCisrIFNPRk9GUk9NIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVrg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3r8KKysgU09GT1RPICAgZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlYmN0ZWZnaGVqa2xubmVwa3JzdGV2dmtlc2VlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcHNlZWVlZWVlZWNlZWVlZWVlZWRuZWVlZWVlZWVlZWVwPwo=