ZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfd2Vha3JlZi5weSBiL0xpYi90ZXN0L3Rlc3Rfd2Vha3JlZi5weQppbmRleCA5ZjE2NDgyLi4wNzY0MzU4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3dlYWtyZWYucHkKKysrIGIvTGliL3Rlc3QvdGVzdF93ZWFrcmVmLnB5CkBAIC0zOTEsNiArMzkxLDE3IEBACiAgICAgICAgICAgICB2YWx1ZXMucmVtb3ZlKHYpCiAgICAgICAgIHNlbGYuYXNzZXJ0XyhsZW4odmFsdWVzKSA9PSAwLCAiaXRlcnZhbHVlcygpIGRpZCBub3QgdG91Y2ggYWxsIHZhbHVlcyIpCiAKKyAgICBkZWYgdGVzdF9tYWtlX3dlYWtfa2V5ZWRfZGljdF9mcm9tX2RpY3Qoc2VsZik6CisgICAgICAgIG8gPSBPYmplY3QoMykKKyAgICAgICAgZGljdCA9IHdlYWtyZWYuV2Vha0tleURpY3Rpb25hcnkoe286MzY0fSkKKyAgICAgICAgc2VsZi5hc3NlcnRfKGRpY3Rbb10gPT0gMzY0KQorCisgICAgZGVmIHRlc3RfbWFrZV93ZWFrX2tleWVkX2RpY3RfZnJvbV93ZWFrX2tleWVkX2RpY3Qoc2VsZik6CisgICAgICAgIG8gPSBPYmplY3QoMykKKyAgICAgICAgZGljdCA9IHdlYWtyZWYuV2Vha0tleURpY3Rpb25hcnkoe286MzY0fSkKKyAgICAgICAgZGljdDIgPSB3ZWFrcmVmLldlYWtLZXlEaWN0aW9uYXJ5KGRpY3QpCisgICAgICAgIHNlbGYuYXNzZXJ0XyhkaWN0W29dID09IDM2NCkKKwogICAgIGRlZiBtYWtlX3dlYWtfa2V5ZWRfZGljdChzZWxmKToKICAgICAgICAgZGljdCA9IHdlYWtyZWYuV2Vha0tleURpY3Rpb25hcnkoKQogICAgICAgICBvYmplY3RzID0gbWFwKE9iamVjdCwgcmFuZ2Uoc2VsZi5DT1VOVCkpCmRpZmYgLS1naXQgYS9MaWIvd2Vha3JlZi5weSBiL0xpYi93ZWFrcmVmLnB5CmluZGV4IDcwZDM2ZmEuLmExZmE0ZTggMTAwNjQ0Ci0tLSBhL0xpYi93ZWFrcmVmLnB5CisrKyBiL0xpYi93ZWFrcmVmLnB5CkBAIC0xNDQsMTIgKzE0NCwxMiBAQAogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRpY3Q9Tm9uZSk6CiAgICAgICAgIHNlbGYuZGF0YSA9IHt9Ci0gICAgICAgIGlmIGRpY3QgaXMgbm90IE5vbmU6IHNlbGYudXBkYXRlKGRpY3QpCiAgICAgICAgIGRlZiByZW1vdmUoaywgc2VsZnJlZj1yZWYoc2VsZikpOgogICAgICAgICAgICAgc2VsZiA9IHNlbGZyZWYoKQogICAgICAgICAgICAgaWYgc2VsZiBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBkZWwgc2VsZi5kYXRhW2tdCiAgICAgICAgIHNlbGYuX3JlbW92ZSA9IHJlbW92ZQorICAgICAgICBpZiBkaWN0IGlzIG5vdCBOb25lOiBzZWxmLnVwZGF0ZShkaWN0KQogCiAgICAgZGVmIF9fZGVsaXRlbV9fKHNlbGYsIGtleSk6CiAgICAgICAgIGZvciByZWYgaW4gc2VsZi5kYXRhLml0ZXJrZXlzKCk6CmRpZmYgLS1naXQgYS9NaXNjL0FDS1MgYi9NaXNjL0FDS1MKaW5kZXggMGFkZWVjMy4uNTE4MDdhNyAxMDA2NDQKLS0tIGEvTWlzYy9BQ0tTCisrKyBiL01pc2MvQUNLUwpAQCAtMTYsNiArMTYsNyBAQAogQmlsbHkgRy4gQWxsaWUKIE1hcmsgQW5hY2tlcgogQW5kZXJzIEFuZGVyc2VuCitFcmlrIEFuZGVyc+luCiBPbGl2ZXIgQW5kcmljaAogUm9zcyBBbmRydXMKIEphc29uIEFzYmFocgo=