ZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc2F4LnB5IGIvTGliL3Rlc3QvdGVzdF9zYXgucHkKaW5kZXggM2M1YjExYS4uYWY5Nzg4OCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zYXgucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zYXgucHkKQEAgLTE5LDE3ICsxOSwxNyBAQAogIyA9PT09PSBVdGlsaXRpZXMKIAogdGVzdHMgPSAwCi1mYWlscyA9IDAKK2ZhaWx1cmVzID0gW10KIAogZGVmIGNvbmZpcm0ob3V0Y29tZSwgbmFtZSk6Ci0gICAgZ2xvYmFsIHRlc3RzLCBmYWlscworICAgIGdsb2JhbCB0ZXN0cwogCiAgICAgdGVzdHMgPSB0ZXN0cyArIDEKICAgICBpZiBvdXRjb21lOgotICAgICAgICBwcmludCAiUGFzc2VkIiwgbmFtZQorICAgICAgICBpZiB2ZXJib3NlOgorICAgICAgICAgICAgcHJpbnQgIkZhaWxlZCIsIG5hbWUKICAgICBlbHNlOgotICAgICAgICBwcmludCAiRmFpbGVkIiwgbmFtZQotICAgICAgICBmYWlscyA9IGZhaWxzICsgMQorICAgICAgICBmYWlsdXJlcy5hcHBlbmQobmFtZSkKIAogZGVmIHRlc3RfbWFrZV9wYXJzZXIyKCk6CiAgICAgdHJ5OgpAQCAtODIsNiArODIsOSBAQAogZGVmIHRlc3RfdW5lc2NhcGVfZXh0cmEoKToKICAgICByZXR1cm4gdW5lc2NhcGUoIkhlaSBw5SBkZWciLCB7IuUiIDogIiZhcmluZzsifSkgPT0gIkhlaSBwJmFyaW5nOyBkZWciCiAKK2RlZiB0ZXN0X3VuZXNjYXBlX2FtcF9leHRyYSgpOgorICAgIHJldHVybiB1bmVzY2FwZSgiJmFtcDtmb287IiwgeyImZm9vOyI6ICJzcGxhdCJ9KSA9PSAiJmZvbzsiCisKICMgPT09PT0gcXVvdGVhdHRyCiAKIGRlZiB0ZXN0X3F1b3RlYXR0cl9iYXNpYygpOgpAQCAtNjUwLDYgKzY1Myw4IEBACiAgICAgaWYgbmFtZVsgOiA1XSA9PSAidGVzdF8iOgogICAgICAgICBjb25maXJtKHZhbHVlKCksIG5hbWUpCiAKLXByaW50ICIlZCB0ZXN0cywgJWQgZmFpbHVyZXMiICUgKHRlc3RzLCBmYWlscykKLWlmIGZhaWxzICE9IDA6Ci0gICAgcmFpc2UgVGVzdEZhaWxlZCwgIiVkIG9mICVkIHRlc3RzIGZhaWxlZCIgJSAoZmFpbHMsIHRlc3RzKQoraWYgdmVyYm9zZToKKyAgICBwcmludCAiJWQgdGVzdHMsICVkIGZhaWx1cmVzIiAlICh0ZXN0cywgbGVuKGZhaWx1cmVzKSkKK2lmIGZhaWx1cmVzOgorICAgIHJhaXNlIFRlc3RGYWlsZWQoIiVkIG9mICVkIHRlc3RzIGZhaWxlZDogJXMiCisgICAgICAgICAgICAgICAgICAgICAlIChsZW4oZmFpbHVyZXMpLCB0ZXN0cywgIiwgIi5qb2luKGZhaWx1cmVzKSkpCg==