ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvbWkvbWFpbi5hYXAgYi9ydW50aW1lL3NwZWxsL21pL21haW4uYWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTY3MTMKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3NwZWxsL21pL21haW4uYWFwCkBAIC0wLDAgKzEsODAgQEAKKyMgQWFwIHJlY2lwZSBmb3IgTWFvcmkgVmltIHNwZWxsIGZpbGVzLgorCisjIFVzZSBhIGZyZXNobHkgY29tcGlsZWQgVmltIGlmIGl0IGV4aXN0cy4KK0BpZiBvcy5wYXRoLmV4aXN0cygnLi4vLi4vLi4vc3JjL3ZpbScpOgorICAgIFZJTSA9IC4uLy4uLy4uL3NyYy92aW0KK0BlbHNlOgorICAgIDpwcm9nc2VhcmNoIFZJTSB2aW0KKworU1BFTExESVIgPSAuLgorRklMRVMgICAgPSBtaV9OWi5hZmYgbWlfTlouZGljCisKK2FsbDogJFNQRUxMRElSL21pLmxhdGluMS5zcGwgJFNQRUxMRElSL21pLnV0Zi04LnNwbCAuLi9SRUFETUVfbWkudHh0CisKKyRTUEVMTERJUi9taS5sYXRpbjEuc3BsIDogJEZJTEVTCisgICAgICAgIDpzeXMgJFZJTSAtdSBOT05FIC1lIC1jICJzZXQgZW5jPWlzby04ODU5LTQiCisgICAgICAgICAgICAgICAgLWMgIm1rc3BlbGwhICRTUEVMTERJUi9taSBtaV9OWiIgLWMgcQorCiskU1BFTExESVIvbWkudXRmLTguc3BsIDogJEZJTEVTCisgICAgICAgIDpzeXMgJFZJTSAtdSBOT05FIC1lIC1jICJzZXQgZW5jPXV0Zi04IgorICAgICAgICAgICAgICAgIC1jICJta3NwZWxsISAkU1BFTExESVIvbWkgbWlfTloiIC1jIHEKKworLi4vUkVBRE1FX21pLnR4dCA6IFJFQURNRV9taV9OWi50eHQKKyAgICAgICAgOmNvcHkgJHNvdXJjZSAkdGFyZ2V0CisKKyMKKyMgRmV0Y2hpbmcgdGhlIGZpbGVzIGZyb20gT3Blbk9mZmljZS5vcmcuCisjCitPT0RJUiA9IGh0dHA6Ly9mdHAuc2VydmljZXMub3Blbm9mZmljZS5vcmcvcHViL09wZW5PZmZpY2Uub3JnL2NvbnRyaWIvZGljdGlvbmFyaWVzCis6YXR0ciB7ZmV0Y2ggPSAkT09ESVIvJWZpbGUlfSBtaV9OWi56aXAKKworIyBUaGUgZmlsZXMgZG9uJ3QgZGVwZW5kIG9uIHRoZSAuemlwIGZpbGUgc28gdGhhdCB3ZSBjYW4gZGVsZXRlIGl0LgorIyBPbmx5IGRvd25sb2FkIHRoZSB6aXAgZmlsZSBpZiB0aGUgdGFyZ2V0cyBkb24ndCBleGlzdC4KK21pX05aLmFmZiBtaV9OWi5kaWM6IHtidWlsZGNoZWNrPX0KKyAgICAgICAgOmFzc2VydHBrZyB1bnppcCBwYXRjaAorICAgICAgICA6ZmV0Y2ggbWlfTlouemlwCisgICAgICAgIDpzeXMgJFVOWklQIG1pX05aLnppcAorICAgICAgICA6ZGVsZXRlIG1pX05aLnppcAorICAgICAgICAjIEZpeCBtaXNzaW5nIGVuZCBvZiBsaW5lLgorICAgICAgICA6cHJpbnQgPj5taV9OWi5hZmYKKyAgICAgICAgQGlmIG5vdCBvcy5wYXRoLmV4aXN0cygnbWlfTloub3JpZy5hZmYnKToKKyAgICAgICAgICAgIDpjb3B5IG1pX05aLmFmZiBtaV9OWi5vcmlnLmFmZgorICAgICAgICBAaWYgbm90IG9zLnBhdGguZXhpc3RzKCdtaV9OWi5vcmlnLmRpYycpOgorICAgICAgICAgICAgOmNvcHkgbWlfTlouZGljIG1pX05aLm9yaWcuZGljCisgICAgICAgIEBpZiBvcy5wYXRoLmV4aXN0cygnbWlfTlouZGlmZicpOgorICAgICAgICAgICAgOnN5cyBwYXRjaCA8bWlfTlouZGlmZgorCisKKyMgR2VuZXJhdGUgZGlmZiBmaWxlcywgc28gdGhhdCBvdGhlcnMgY2FuIGdldCB0aGUgT3Blbk9mZmljZSBmaWxlcyBhbmQgYXBwbHkKKyMgdGhlIGRpZmZzIHRvIGdldCB0aGUgVmltIHZlcnNpb25zLgorCitkaWZmOgorICAgICAgICA6YXNzZXJ0cGtnIGRpZmYKKyAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLWEgLUMgMSBtaV9OWi5vcmlnLmFmZiBtaV9OWi5hZmYgPm1pX05aLmRpZmYKKyAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLWEgLUMgMSBtaV9OWi5vcmlnLmRpYyBtaV9OWi5kaWMgPj5taV9OWi5kaWZmCisKKworIyBDaGVjayBmb3IgdXBkYXRlZCBPcGVuT2ZmaWNlIHNwZWxsIGZpbGVzLiAgV2hlbiB0aGVyZSBhcmUgY2hhbmdlcyB0aGUKKyMgIi5uZXcuYWZmIiBhbmQgIi5uZXcuZGljIiBmaWxlcyBhcmUgbGVmdCBiZWhpbmQgZm9yIG1hbnVhbCBpbnNwZWN0aW9uLgorCitjaGVjazoKKyAgICAgICAgOmFzc2VydHBrZyB1bnppcCBkaWZmCisgICAgICAgIDpmZXRjaCBtaV9OWi56aXAKKyAgICAgICAgOm1rZGlyIHRtcAorICAgICAgICA6Y2QgdG1wCisgICAgICAgIEB0cnk6CisgICAgICAgICAgICBAaW1wb3J0IHN0YXQKKyAgICAgICAgICAgIDpzeXMgJFVOWklQIC4uL21pX05aLnppcAorICAgICAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLi4vbWlfTloub3JpZy5hZmYgbWlfTlouYWZmID5kCisgICAgICAgICAgICBAaWYgb3Muc3RhdCgnZCcpW3N0YXQuU1RfU0laRV0gPiAwOgorICAgICAgICAgICAgICAgIDpjb3B5IG1pX05aLmFmZiAuLi9taV9OWi5uZXcuYWZmCisgICAgICAgICAgICA6c3lzIHtmb3JjZX0gZGlmZiAuLi9taV9OWi5vcmlnLmRpYyBtaV9OWi5kaWMgPmQKKyAgICAgICAgICAgIEBpZiBvcy5zdGF0KCdkJylbc3RhdC5TVF9TSVpFXSA+IDA6CisgICAgICAgICAgICAgICAgOmNvcHkgbWlfTlouZGljIC4uL21pX05aLm5ldy5kaWMKKyAgICAgICAgQGZpbmFsbHk6CisgICAgICAgICAgICA6Y2QgLi4KKyAgICAgICAgICAgIDpkZWxldGUge3J9e2Z9e3F9IHRtcAorICAgICAgICAgICAgOmRlbGV0ZSBtaV9OWi56aXAKKworCisjIHZpbTogc2V0IHN0cz00IHN3PTQgOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zcGVsbC9taS9taV9OWi5kaWZmIGIvcnVudGltZS9zcGVsbC9taS9taV9OWi5kaWZmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg1YWNlNmYKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL3NwZWxsL21pL21pX05aLmRpZmYKQEAgLTAsMCArMSwxMCBAQAorKioqIG1pX05aLm9yaWcuYWZmCVdlZCBBdWcgMzEgMTg6MjI6MDMgMjAwNQorLS0tIG1pX05aLmFmZglXZWQgQXVnIDMxIDE4OjIxOjU2IDIwMDUKKyoqKioqKioqKioqKioqKgorKioqIDIsMyAqKioqCistLS0gMiw2IC0tLS0KKyAgVFJZIGHgaWt0dXJvaGW67/L+bnBnd21BwElLVFVST0hFqs/S3k5QR1dNCisrIAorKyBNSURXT1JEIC0KKysgCisgIFJFUCAzMAo=