ZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfYXJyYXkucHkgYi9MaWIvdGVzdC90ZXN0X2FycmF5LnB5CmluZGV4IDNmOGI2ODMuLjY2Y2UyYWQgMTAwNzU1Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfYXJyYXkucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9hcnJheS5weQpAQCAtNzY4LDcgKzc2OCw3IEBACiAgICAgICAgIGEgPSBhcnJheS5hcnJheSgndScsIHMpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICByZXByKGEpLAotICAgICAgICAgICAgImFycmF5KCd1JywgJ1xceDAwPVwiXFwnYVxcXFxiXFx4ODBceGZmXFx4MDBcXHgwMVx1MTIzNCcpIikKKyAgICAgICAgICAgICJhcnJheSgndScsICdcXHgwMD1cIlxcJ2FcXFxcYlxceDgwXFx4ZmZcXHgwMFxceDAxXFx1MTIzNCcpIikKIAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGEuZnJvbXVuaWNvZGUpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfYnVpbHRpbi5weSBiL0xpYi90ZXN0L3Rlc3RfYnVpbHRpbi5weQppbmRleCA1NTdkNTZjLi5lZjU2MmRiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2J1aWx0aW4ucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9idWlsdGluLnB5CkBAIC0xNTksOSArMTU5LDYgQEAKICAgICAgICAgUyA9IFsxMCwgMjAsIDMwXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFueSh4ID4gNDIgZm9yIHggaW4gUyksIEZhbHNlKQogCi0gICAgZGVmIHRlc3RfYXNjaWkoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXNjaWkoIlx1MDM3MCIpLCAiJ1xcdTAzNzAnIikKLQogICAgIGRlZiB0ZXN0X25lZyhzZWxmKToKICAgICAgICAgeCA9IC1zeXMubWF4c2l6ZS0xCiAgICAgICAgIHNlbGYuYXNzZXJ0Xyhpc2luc3RhbmNlKHgsIGludCkpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2V4Y2VwdGlvbnMucHkgYi9MaWIvdGVzdC90ZXN0X2V4Y2VwdGlvbnMucHkKaW5kZXggNDFiOTQxMy4uNjE5YjdlMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9leGNlcHRpb25zLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZXhjZXB0aW9ucy5weQpAQCAtODAsMTAgKzgwLDEwIEBACiAgICAgICAgIHNlbGYucmFpc2VfY2F0Y2goSW5kZW50YXRpb25FcnJvciwgIkluZGVudGF0aW9uRXJyb3IiKQogCiAgICAgICAgIHNlbGYucmFpc2VfY2F0Y2goVGFiRXJyb3IsICJUYWJFcnJvciIpCi0gICAgICAgIHRyeTogY29tcGlsZSgidHJ5OlxuXHQxLzBcbiAgICBcdDEvMFxuZmluYWxseTpcbiBwYXNzXG4iLAotICAgICAgICAgICAgICAgICAgICAgJzxzdHJpbmc+JywgJ2V4ZWMnKQotICAgICAgICBleGNlcHQgVGFiRXJyb3I6IHBhc3MKLSAgICAgICAgZWxzZTogc2VsZi5mYWlsKCJUYWJFcnJvciBub3QgcmFpc2VkIikKKyAgICAgICAgIyBjYW4gb25seSBiZSB0ZXN0ZWQgdW5kZXIgLXR0LCBhbmQgaXMgdGhlIG9ubHkgdGVzdCBmb3IgLXR0CisgICAgICAgICN0cnk6IGNvbXBpbGUoInRyeTpcblx0MS8wXG4gICAgXHQxLzBcbmZpbmFsbHk6XG4gcGFzc1xuIiwgJzxzdHJpbmc+JywgJ2V4ZWMnKQorICAgICAgICAjZXhjZXB0IFRhYkVycm9yOiBwYXNzCisgICAgICAgICNlbHNlOiBzZWxmLmZhaWwoIlRhYkVycm9yIG5vdCByYWlzZWQiKQogCiAgICAgICAgIHNlbGYucmFpc2VfY2F0Y2goU3lzdGVtRXJyb3IsICJTeXN0ZW1FcnJvciIpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZm9ybWF0LnB5IGIvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkKaW5kZXggOGJjNDdkNC4uZmI5MTQ3NSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkKQEAgLTIxNiw4ICsyMTYsNiBAQAogICAgICAgICB0ZXN0Zm9ybWF0KCIlbyIsIDBvNDIsICI0MiIpCiAgICAgICAgIHRlc3Rmb3JtYXQoIiVvIiwgLTBvNDIsICItNDIiKQogICAgICAgICB0ZXN0Zm9ybWF0KCIlbyIsIGZsb2F0KDBvNDIpLCAiNDIiKQotICAgICAgICB0ZXN0Zm9ybWF0KCIlciIsICJcdTAzNzAiLCAiJ1x1MDM3MCciKQotICAgICAgICB0ZXN0Zm9ybWF0KCIlYSIsICJcdTAzNzAiLCAiJ1xcdTAzNzAnIikKICAgICAgICAgIyBUZXN0IGV4Y2VwdGlvbiBmb3IgdW5rbm93biBmb3JtYXQgY2hhcmFjdGVycwogICAgICAgICBpZiB2ZXJib3NlOgogICAgICAgICAgICAgcHJpbnQoJ1Rlc3RpbmcgZXhjZXB0aW9ucycpCkBAIC0yMzcsOCArMjM1LDggQEAKICAgICAgICAgICAgICAgICByYWlzZQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByYWlzZSBUZXN0RmFpbGVkKCdkaWQgbm90IGdldCBleHBlY3RlZCBleGNlcHRpb246ICVzJyAlIGV4Y21zZykKLSAgICAgICAgdGVzdF9leGMoJ2FiYyAlYicsIDEsIFZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICJ1bnN1cHBvcnRlZCBmb3JtYXQgY2hhcmFjdGVyICdiJyAoMHg2MikgYXQgaW5kZXggNSIpCisgICAgICAgIHRlc3RfZXhjKCdhYmMgJWEnLCAxLCBWYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAidW5zdXBwb3J0ZWQgZm9ybWF0IGNoYXJhY3RlciAnYScgKDB4NjEpIGF0IGluZGV4IDUiKQogICAgICAgICAjdGVzdF9leGModW5pY29kZSgnYWJjICVcdTMwMDAnLCdyYXctdW5pY29kZS1lc2NhcGUnKSwgMSwgVmFsdWVFcnJvciwKICAgICAgICAgIyAgICAgICAgICJ1bnN1cHBvcnRlZCBmb3JtYXQgY2hhcmFjdGVyICc/JyAoMHgzMDAwKSBhdCBpbmRleCA1IikKICAgICAgICAgdGVzdF9leGMoJyVkJywgJzEnLCBUeXBlRXJyb3IsICIlZCBmb3JtYXQ6IGEgbnVtYmVyIGlzIHJlcXVpcmVkLCBub3Qgc3RyIikKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcHlleHBhdC5weSBiL0xpYi90ZXN0L3Rlc3RfcHlleHBhdC5weQppbmRleCA0OTQ3YzhiLi5jMjUyMTM0IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3B5ZXhwYXQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9weWV4cGF0LnB5CkBAIC0xMzEsNyArMTMxLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMob3BbMV0sICJDb21tZW50OiAnIGNvbW1lbnQgZGF0YSAnIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMob3BbMl0sICJOb3RhdGlvbiBkZWNsYXJlZDogKCdub3RhdGlvbicsIE5vbmUsICdub3RhdGlvbi5qcGVnJywgTm9uZSkiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhvcFszXSwgIlVucGFyc2VkIGVudGl0eSBkZWNsOiAoJ3VucGFyc2VkX2VudGl0eScsIE5vbmUsICdlbnRpdHkuZmlsZScsIE5vbmUsICdub3RhdGlvbicpIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMob3BbNF0sICJTdGFydCBlbGVtZW50OiAncm9vdCcgeydhdHRyMSc6ICd2YWx1ZTEnLCAnYXR0cjInOiAndmFsdWUyXHUxZjQwJ30iKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhvcFs0XSwgIlN0YXJ0IGVsZW1lbnQ6ICdyb290JyB7J2F0dHIxJzogJ3ZhbHVlMScsICdhdHRyMic6ICd2YWx1ZTJcXHUxZjQwJ30iKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhvcFs1XSwgIk5TIGRlY2w6ICdteW5zJyAnaHR0cDovL3d3dy5weXRob24ub3JnL25hbWVzcGFjZSciKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhvcFs2XSwgIlN0YXJ0IGVsZW1lbnQ6ICdodHRwOi8vd3d3LnB5dGhvbi5vcmcvbmFtZXNwYWNlIXN1YmVsZW1lbnQnIHt9IikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMob3BbN10sICJDaGFyYWN0ZXIgZGF0YTogJ0NvbnRlbnRzIG9mIHN1YmVsZW1lbnRzJyIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGUucHkgYi9MaWIvdGVzdC90ZXN0X3VuaWNvZGUucHkKaW5kZXggYTI2N2NmNi4uMmY5YWRkNSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF91bmljb2RlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZS5weQpAQCAtOTQsMTQgKzk0LDE0IEBACiAgICAgICAgICAgICAgICAgIkpLTE1OT1BRUlNUVVZXWFlaW1xcXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+XFx4N2YiCiAgICAgICAgICAgICAgICAgIlxceDgwXFx4ODFcXHg4MlxceDgzXFx4ODRcXHg4NVxceDg2XFx4ODdcXHg4OFxceDg5XFx4OGFcXHg4YlxceDhjXFx4OGQiCiAgICAgICAgICAgICAgICAgIlxceDhlXFx4OGZcXHg5MFxceDkxXFx4OTJcXHg5M1xceDk0XFx4OTVcXHg5NlxceDk3XFx4OThcXHg5OVxceDlhXFx4OWIiCi0gICAgICAgICAgICAgICAgIlxceDljXFx4OWRcXHg5ZVxceDlmXFx4YTBceGExXHhhMlx4YTNceGE0XHhhNVx4YTZceGE3XHhhOFx4YTkiCi0gICAgICAgICAgICAgICAgIlx4YWFceGFiXHhhY1xceGFkXHhhZVx4YWZceGIwXHhiMVx4YjJceGIzXHhiNFx4YjVceGI2XHhiNyIKLSAgICAgICAgICAgICAgICAiXHhiOFx4YjlceGJhXHhiYlx4YmNceGJkXHhiZVx4YmZceGMwXHhjMVx4YzJceGMzXHhjNFx4YzUiCi0gICAgICAgICAgICAgICAgIlx4YzZceGM3XHhjOFx4YzlceGNhXHhjYlx4Y2NceGNkXHhjZVx4Y2ZceGQwXHhkMVx4ZDJceGQzIgotICAgICAgICAgICAgICAgICJceGQ0XHhkNVx4ZDZceGQ3XHhkOFx4ZDlceGRhXHhkYlx4ZGNceGRkXHhkZVx4ZGZceGUwXHhlMSIKLSAgICAgICAgICAgICAgICAiXHhlMlx4ZTNceGU0XHhlNVx4ZTZceGU3XHhlOFx4ZTlceGVhXHhlYlx4ZWNceGVkXHhlZVx4ZWYiCi0gICAgICAgICAgICAgICAgIlx4ZjBceGYxXHhmMlx4ZjNceGY0XHhmNVx4ZjZceGY3XHhmOFx4ZjlceGZhXHhmYlx4ZmNceGZkIgotICAgICAgICAgICAgICAgICJceGZlXHhmZiciKQorICAgICAgICAgICAgICAgICJcXHg5Y1xceDlkXFx4OWVcXHg5ZlxceGEwXFx4YTFcXHhhMlxceGEzXFx4YTRcXHhhNVxceGE2XFx4YTdcXHhhOFxceGE5IgorICAgICAgICAgICAgICAgICJcXHhhYVxceGFiXFx4YWNcXHhhZFxceGFlXFx4YWZcXHhiMFxceGIxXFx4YjJcXHhiM1xceGI0XFx4YjVcXHhiNlxceGI3IgorICAgICAgICAgICAgICAgICJcXHhiOFxceGI5XFx4YmFcXHhiYlxceGJjXFx4YmRcXHhiZVxceGJmXFx4YzBcXHhjMVxceGMyXFx4YzNcXHhjNFxceGM1IgorICAgICAgICAgICAgICAgICJcXHhjNlxceGM3XFx4YzhcXHhjOVxceGNhXFx4Y2JcXHhjY1xceGNkXFx4Y2VcXHhjZlxceGQwXFx4ZDFcXHhkMlxceGQzIgorICAgICAgICAgICAgICAgICJcXHhkNFxceGQ1XFx4ZDZcXHhkN1xceGQ4XFx4ZDlcXHhkYVxceGRiXFx4ZGNcXHhkZFxceGRlXFx4ZGZcXHhlMFxceGUxIgorICAgICAgICAgICAgICAgICJcXHhlMlxceGUzXFx4ZTRcXHhlNVxceGU2XFx4ZTdcXHhlOFxceGU5XFx4ZWFcXHhlYlxceGVjXFx4ZWRcXHhlZVxceGVmIgorICAgICAgICAgICAgICAgICJcXHhmMFxceGYxXFx4ZjJcXHhmM1xceGY0XFx4ZjVcXHhmNlxceGY3XFx4ZjhcXHhmOVxceGZhXFx4ZmJcXHhmY1xceGZkIgorICAgICAgICAgICAgICAgICJcXHhmZVxceGZmJyIpCiAgICAgICAgICAgICB0ZXN0cmVwciA9IHJlcHIoJycuam9pbihtYXAoY2hyLCByYW5nZSgyNTYpKSkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRlc3RyZXByLCBsYXRpbjFyZXByKQogICAgICAgICAgICAgIyBUZXN0IHJlcHIgd29ya3Mgb24gd2lkZSB1bmljb2RlIGVzY2FwZXMgd2l0aG91dCBvdmVyZmxvdy4KQEAgLTM3NCwxMiArMzc0LDYgQEAKICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgiWyIuaXNpZGVudGlmaWVyKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoIqkiLmlzaWRlbnRpZmllcigpKQogCi0gICAgZGVmIHRlc3RfaXNwcmludGFibGUoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgiYWJjZGVmZyIuaXNwcmludGFibGUoKSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgiYWJjZGVmZ1xuIi5pc3ByaW50YWJsZSgpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoIlx1MDM3MCIuaXNwcmludGFibGUoKSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgiXHVkODAwIi5pc3ByaW50YWJsZSgpKQotCiAgICAgZGVmIHRlc3RfY29udGFpbnMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyBVbmljb2RlIGNvbnRhaW5zIG1ldGhvZAogICAgICAgICBzZWxmLmFzc2VydF8oJ2EnIGluICdhYmRiJykK