ZGlmZiAtLWdpdCBhL3NyYy9leF9kb2NtZC5jIGIvc3JjL2V4X2RvY21kLmMKaW5kZXggNjJhZTNhZC4uODliNTIzNCAxMDA2NDQKLS0tIGEvc3JjL2V4X2RvY21kLmMKKysrIGIvc3JjL2V4X2RvY21kLmMKQEAgLTEwODM5LDcgKzEwODM5LDcgQEAKIAkJCSAgICAobG9uZyl3cC0+d192aXJ0Y29sICsgMSkgPCAwCiAJCQl8fCBwdXRfZW9sKGZkKSA9PSBGQUlMCiAJCQl8fCBwdXRfbGluZShmZCwgImVsc2UiKSA9PSBGQUlMCi0JCQl8fCBmcHJpbnRmKGZkLCAiICBub3JtYWwhICVkfCIsIHdwLT53X3ZpcnRjb2wgKyAxKSA8IDAKKwkJCXx8IGZwcmludGYoZmQsICIgIG5vcm1hbCEgMCVkfCIsIHdwLT53X3ZpcnRjb2wgKyAxKSA8IDAKIAkJCXx8IHB1dF9lb2woZmQpID09IEZBSUwKIAkJCXx8IHB1dF9saW5lKGZkLCAiZW5kaWYiKSA9PSBGQUlMKQogCQkgICAgcmV0dXJuIEZBSUw7CmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci9NYWtlX2FtaWdhLm1hayBiL3NyYy90ZXN0ZGlyL01ha2VfYW1pZ2EubWFrCmluZGV4IDBlMTg5OTIuLmQzZjZiNTIgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL01ha2VfYW1pZ2EubWFrCisrKyBiL3NyYy90ZXN0ZGlyL01ha2VfYW1pZ2EubWFrCkBAIC0zMiw3ICszMiw3IEBACiAJCXRlc3Q3MS5vdXQgdGVzdDcyLm91dCB0ZXN0NzMub3V0IHRlc3Q3NC5vdXQgdGVzdDc1Lm91dCBcCiAJCXRlc3Q3Ni5vdXQgdGVzdDc3Lm91dCB0ZXN0Nzgub3V0IHRlc3Q3OS5vdXQgdGVzdDgwLm91dCBcCiAJCXRlc3Q4MS5vdXQgdGVzdDgyLm91dCB0ZXN0ODMub3V0IHRlc3Q4NC5vdXQgdGVzdDg4Lm91dCBcCi0JCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0CisJCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0IHRlc3Q5Mi5vdXQgdGVzdDkzLm91dAogCiAuU1VGRklYRVM6IC5pbiAub3V0CiAKQEAgLTE0MCwzICsxNDAsNSBAQAogdGVzdDg5Lm91dDogdGVzdDg5LmluCiB0ZXN0OTAub3V0OiB0ZXN0OTAuaW4KIHRlc3Q5MS5vdXQ6IHRlc3Q5MS5pbgordGVzdDkyLm91dDogdGVzdDkyLmluCit0ZXN0OTMub3V0OiB0ZXN0OTMuaW4KZGlmZiAtLWdpdCBhL3NyYy90ZXN0ZGlyL01ha2VfZG9zLm1hayBiL3NyYy90ZXN0ZGlyL01ha2VfZG9zLm1hawppbmRleCA5NjhjZjZjLi45OTQyY2E0IDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci9NYWtlX2Rvcy5tYWsKKysrIGIvc3JjL3Rlc3RkaXIvTWFrZV9kb3MubWFrCkBAIC0zMSw3ICszMSw3IEBACiAJCXRlc3Q3NC5vdXQgdGVzdDc1Lm91dCB0ZXN0NzYub3V0IHRlc3Q3Ny5vdXQgdGVzdDc4Lm91dCBcCiAJCXRlc3Q3OS5vdXQgdGVzdDgwLm91dCB0ZXN0ODEub3V0IHRlc3Q4Mi5vdXQgdGVzdDgzLm91dCBcCiAJCXRlc3Q4NC5vdXQgdGVzdDg1Lm91dCB0ZXN0ODYub3V0IHRlc3Q4Ny5vdXQgdGVzdDg4Lm91dCBcCi0JCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0CisJCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0IHRlc3Q5Mi5vdXQgdGVzdDkzLm91dAogCiBTQ1JJUFRTMzIgPQl0ZXN0NTAub3V0IHRlc3Q3MC5vdXQKIApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvTWFrZV9taW5nLm1hayBiL3NyYy90ZXN0ZGlyL01ha2VfbWluZy5tYWsKaW5kZXggOWQ4NDVhYi4uMmE4N2E2YiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3RkaXIvTWFrZV9taW5nLm1haworKysgYi9zcmMvdGVzdGRpci9NYWtlX21pbmcubWFrCkBAIC01MSw3ICs1MSw3IEBACiAJCXRlc3Q3NC5vdXQgdGVzdDc1Lm91dCB0ZXN0NzYub3V0IHRlc3Q3Ny5vdXQgdGVzdDc4Lm91dCBcCiAJCXRlc3Q3OS5vdXQgdGVzdDgwLm91dCB0ZXN0ODEub3V0IHRlc3Q4Mi5vdXQgdGVzdDgzLm91dCBcCiAJCXRlc3Q4NC5vdXQgdGVzdDg1Lm91dCB0ZXN0ODYub3V0IHRlc3Q4Ny5vdXQgdGVzdDg4Lm91dCBcCi0JCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0CisJCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0IHRlc3Q5Mi5vdXQgdGVzdDkzLm91dAogCiBTQ1JJUFRTMzIgPQl0ZXN0NTAub3V0IHRlc3Q3MC5vdXQKIApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvTWFrZV9vczIubWFrIGIvc3JjL3Rlc3RkaXIvTWFrZV9vczIubWFrCmluZGV4IGJkZGZkNWUuLjMxMzAyYjEgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL01ha2Vfb3MyLm1haworKysgYi9zcmMvdGVzdGRpci9NYWtlX29zMi5tYWsKQEAgLTMyLDcgKzMyLDcgQEAKIAkJdGVzdDcxLm91dCB0ZXN0NzIub3V0IHRlc3Q3My5vdXQgdGVzdDc0Lm91dCB0ZXN0NzUub3V0IFwKIAkJdGVzdDc2Lm91dCB0ZXN0Nzcub3V0IHRlc3Q3OC5vdXQgdGVzdDc5Lm91dCB0ZXN0ODAub3V0IFwKIAkJdGVzdDgxLm91dCB0ZXN0ODIub3V0IHRlc3Q4My5vdXQgdGVzdDg0Lm91dCB0ZXN0ODgub3V0IFwKLQkJdGVzdDg5Lm91dCB0ZXN0OTAub3V0IHRlc3Q5MS5vdXQKKwkJdGVzdDg5Lm91dCB0ZXN0OTAub3V0IHRlc3Q5MS5vdXQgdGVzdDkyLm91dCB0ZXN0OTMub3V0CiAKIC5TVUZGSVhFUzogLmluIC5vdXQKIApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvTWFrZV92bXMubW1zIGIvc3JjL3Rlc3RkaXIvTWFrZV92bXMubW1zCmluZGV4IGYxOWRkNWEuLjc1NzBhNzEgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL01ha2Vfdm1zLm1tcworKysgYi9zcmMvdGVzdGRpci9NYWtlX3Ztcy5tbXMKQEAgLTQsNyArNCw3IEBACiAjIEF1dGhvcnM6CVpvbHRhbiBBcnBhZGZmeSwgPGFycGFkZmZ5QHBvbGFyaG9tZS5jb20+CiAjCQlTYW5kb3IgS29wYW55aSwgIDxzYW5kb3Iua29wYW55aUBtYWlsYm94Lmh1PgogIwotIyBMYXN0IGNoYW5nZTogIDIwMTMgRmViIDIwCisjIExhc3QgY2hhbmdlOiAgMjAxMy0wMi0yMQogIwogIyBUaGlzIGhhcyBiZWVuIHRlc3RlZCBvbiBWTVMgNi4yIHRvIDguMyBvbiBERUMgQWxwaGEsIFZBWCBhbmQgSUE2NC4KICMgRWRpdCB0aGUgbGluZXMgaW4gdGhlIENvbmZpZ3VyYXRpb24gc2VjdGlvbiBiZWxvdyB0byBzZWxlY3QuCkBAIC03Nyw3ICs3Nyw3IEBACiAJIHRlc3Q3MS5vdXQgdGVzdDcyLm91dCB0ZXN0NzQub3V0IHRlc3Q3NS5vdXQgdGVzdDc2Lm91dCBcCiAJIHRlc3Q3Ny5vdXQgdGVzdDc4Lm91dCB0ZXN0Nzkub3V0IHRlc3Q4MC5vdXQgdGVzdDgxLm91dCBcCiAJIHRlc3Q4Mi5vdXQgdGVzdDgzLm91dCB0ZXN0ODQub3V0IHRlc3Q4OC5vdXQgdGVzdDg5Lm91dCBcCi0JIHRlc3Q5MC5vdXQgdGVzdDkxLm91dAorCSB0ZXN0OTAub3V0IHRlc3Q5MS5vdXQgdGVzdDkyLm91dCB0ZXN0OTMub3V0CiAKICMgS25vd24gcHJvYmxlbXM6CiAjIFRlc3QgMzA6IGEgcHJvYmxlbSBhcm91bmQgbWFjIGZvcm1hdCAtIHVua25vd24gcmVhc29uCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci9NYWtlZmlsZSBiL3NyYy90ZXN0ZGlyL01ha2VmaWxlCmluZGV4IDhiMzFiOTEuLjQzYWNjNDUgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL01ha2VmaWxlCisrKyBiL3NyYy90ZXN0ZGlyL01ha2VmaWxlCkBAIC0yOCw3ICsyOCw3IEBACiAJCXRlc3Q3NC5vdXQgdGVzdDc1Lm91dCB0ZXN0NzYub3V0IHRlc3Q3Ny5vdXQgdGVzdDc4Lm91dCBcCiAJCXRlc3Q3OS5vdXQgdGVzdDgwLm91dCB0ZXN0ODEub3V0IHRlc3Q4Mi5vdXQgdGVzdDgzLm91dCBcCiAJCXRlc3Q4NC5vdXQgdGVzdDg1Lm91dCB0ZXN0ODYub3V0IHRlc3Q4Ny5vdXQgdGVzdDg4Lm91dCBcCi0JCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0CisJCXRlc3Q4OS5vdXQgdGVzdDkwLm91dCB0ZXN0OTEub3V0IHRlc3Q5Mi5vdXQgdGVzdDkzLm91dAogCiBTQ1JJUFRTX0dVSSA9IHRlc3QxNi5vdXQKIApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvdGVzdDkyLmluIGIvc3JjL3Rlc3RkaXIvdGVzdDkyLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU2MTQ4MzIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdGRpci90ZXN0OTIuaW4KQEAgLTAsMCArMSw0OCBAQAordmltOiBzZXQgZnQ9dmltIGZlbmM9dXRmLTg6CisKK1Rlc3RzIGlmIDpta3Nlc3Npb24gc2F2ZXMgY3Vyc29yIGNvbHVtbnMgY29ycmVjdGx5IGluIHByZXNlbmNlIG9mIHRhYiBhbmQgCittdWx0aWJ5dGUgY2hhcmFjdGVycyB3aGVuIGZpbGVlbmNvZGluZz11dGYtOC4KKworU1RBUlRURVNUCis6c28gbWJ5dGUudmltCis6aWYgIWhhcygnbWtzZXNzaW9uJykKKzogIGUhIHRlc3Qub2sKKzogIHdxISB0ZXN0Lm91dAorOmVuZGlmCis6c2V0IHNlc3Npb25vcHRpb25zPWJ1ZmZlcnMgc3BsaXRiZWxvdyBmaWxlZW5jb2Rpbmc9dXRmLTgKKy9ec3RhcnQ6Cis6dnNwbGl0CitqMTZ8OnNwbGl0CitqMTZ8OnNwbGl0CitqMTZ8OnNwbGl0CitqOHw6c3BsaXQKK2o4fDpzcGxpdAorajE2fDpzcGxpdAorajE2fDpzcGxpdAorajE2fDp3aW5jbWQgbAorL15zdGFydDoKKzpzZXQgbm93cmFwCitqMTZ8M3psOnNwbGl0CitqMDE2fDN6bDpzcGxpdAorajAxNnwzemw6c3BsaXQKK2owOHwzemw6c3BsaXQKK2owOHwzemw6c3BsaXQKK2owMTZ8M3psOnNwbGl0CitqMDE2fDN6bDpzcGxpdAorajAxNnwzemw6c3BsaXQKKzpta3Nlc3Npb24hIHRlc3Qub3V0Cis6bmV3IHRlc3Qub3V0Cis6di9cKF4gKm5vcm1hbCEgMFx8XiAqZXhlICdub3JtYWwhXCkvZAorOncKKzpxYSEKK0VORFRFU1QKKworc3RhcnQ6CitubyBtdWx0aWJ5dGUgY2hBcmFjdGVyCisJb25lIGxlYURpbmcgdGFiCisgICAgZm91ciBsZWFkaW5HIHNwYWNlcwordHdvCQljb25zZWN1dGl2ZSB0YWJzCit0d28JdGFicwlpbiBvbmUgbGluZQorb25lIOKApiBtdWx0aWJ5dGVDaGFyYWN0ZXIKK2Eg4oCcYuKAnSB0d28gbXVsdGlCeXRlIGNoYXJhY3RlcnMKK+KAnGPigJ0x4oKsIHRocmVlIG11bFRpYnl0ZSBjaGFyYWN0ZXJzCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci90ZXN0OTIub2sgYi9zcmMvdGVzdGRpci90ZXN0OTIub2sKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2NhNWVjNAotLS0gL2Rldi9udWxsCisrKyBiL3NyYy90ZXN0ZGlyL3Rlc3Q5Mi5vawpAQCAtMCwwICsxLDI2IEBACitub3JtYWwhIDAxNnwKK25vcm1hbCEgMDE2fAorbm9ybWFsISAwMTZ8Citub3JtYWwhIDA4fAorbm9ybWFsISAwOHwKK25vcm1hbCEgMDE2fAorbm9ybWFsISAwMTZ8Citub3JtYWwhIDAxNnwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDE2IC4gJ3wnCisgIG5vcm1hbCEgMDE2fAorICBleGUgJ25vcm1hbCEgJyAuIHM6YyAuICd8enMnIC4gMTYgLiAnfCcKKyAgbm9ybWFsISAwMTZ8CisgIGV4ZSAnbm9ybWFsISAnIC4gczpjIC4gJ3x6cycgLiAxNiAuICd8JworICBub3JtYWwhIDAxNnwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDggLiAnfCcKKyAgbm9ybWFsISAwOHwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDggLiAnfCcKKyAgbm9ybWFsISAwOHwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDE2IC4gJ3wnCisgIG5vcm1hbCEgMDE2fAorICBleGUgJ25vcm1hbCEgJyAuIHM6YyAuICd8enMnIC4gMTYgLiAnfCcKKyAgbm9ybWFsISAwMTZ8CisgIGV4ZSAnbm9ybWFsISAnIC4gczpjIC4gJ3x6cycgLiAxNiAuICd8JworICBub3JtYWwhIDAxNnwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDE2IC4gJ3wnCisgIG5vcm1hbCEgMDE2fApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvdGVzdDkzLmluIGIvc3JjL3Rlc3RkaXIvdGVzdDkzLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg0NDRiYTUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdGRpci90ZXN0OTMuaW4KQEAgLTAsMCArMSw0OCBAQAordmltOiBzZXQgZnQ9dmltIGZlbmM9bGF0aW4xOgorCitUZXN0cyBpZiA6bWtzZXNzaW9uIHNhdmVzIGN1cnNvciBjb2x1bW5zIGNvcnJlY3RseSBpbiBwcmVzZW5jZSBvZiB0YWIgYW5kIAorbXVsdGlieXRlIGNoYXJhY3RlcnMgd2hlbiBmaWxlZW5jb2Rpbmc9bGF0aW4xLgorCitTVEFSVFRFU1QKKzpzbyBtYnl0ZS52aW0KKzppZiAhaGFzKCdta3Nlc3Npb24nKQorOiAgZSEgdGVzdC5vaworOiAgd3EhIHRlc3Qub3V0Cis6ZW5kaWYKKzpzZXQgc2Vzc2lvbm9wdGlvbnM9YnVmZmVycyBzcGxpdGJlbG93IGZpbGVlbmNvZGluZz1sYXRpbjEKKy9ec3RhcnQ6Cis6dnNwbGl0CitqMTZ8OnNwbGl0CitqMTZ8OnNwbGl0CitqMTZ8OnNwbGl0CitqOHw6c3BsaXQKK2o4fDpzcGxpdAorajE2fDpzcGxpdAorajE2fDpzcGxpdAorajE2fDp3aW5jbWQgbAorL15zdGFydDoKKzpzZXQgbm93cmFwCitqMTZ8M3psOnNwbGl0CitqMDE2fDN6bDpzcGxpdAorajAxNnwzemw6c3BsaXQKK2owOHwzemw6c3BsaXQKK2owOHwzemw6c3BsaXQKK2owMTZ8M3psOnNwbGl0CitqMDE2fDN6bDpzcGxpdAorajAxNnwzemw6c3BsaXQKKzpta3Nlc3Npb24hIHRlc3Qub3V0Cis6bmV3IHRlc3Qub3V0Cis6di9cKF4gKm5vcm1hbCEgMFx8XiAqZXhlICdub3JtYWwhXCkvZAorOncKKzpxYSEKK0VORFRFU1QKKworc3RhcnQ6CitubyBtdWx0aWJ5dGUgY2hBcmFjdGVyCisJb25lIGxlYURpbmcgdGFiCisgICAgZm91ciBsZWFkaW5HIHNwYWNlcwordHdvCQljb25zZWN1dGl2ZSB0YWJzCit0d28JdGFicwlpbiBvbmUgbGluZQorb25lIOQgbXVsdGlieXRlQ2hhcmFjdGVyCith5CDEICB0d28gbXVsdGlCeXRlIGNoYXJhY3RlcnMKK0Hk9vwgIHRocmVlIG11bFRpYnl0ZSBjaGFyYWN0ZXJzCmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci90ZXN0OTMub2sgYi9zcmMvdGVzdGRpci90ZXN0OTMub2sKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2NhNWVjNAotLS0gL2Rldi9udWxsCisrKyBiL3NyYy90ZXN0ZGlyL3Rlc3Q5My5vawpAQCAtMCwwICsxLDI2IEBACitub3JtYWwhIDAxNnwKK25vcm1hbCEgMDE2fAorbm9ybWFsISAwMTZ8Citub3JtYWwhIDA4fAorbm9ybWFsISAwOHwKK25vcm1hbCEgMDE2fAorbm9ybWFsISAwMTZ8Citub3JtYWwhIDAxNnwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDE2IC4gJ3wnCisgIG5vcm1hbCEgMDE2fAorICBleGUgJ25vcm1hbCEgJyAuIHM6YyAuICd8enMnIC4gMTYgLiAnfCcKKyAgbm9ybWFsISAwMTZ8CisgIGV4ZSAnbm9ybWFsISAnIC4gczpjIC4gJ3x6cycgLiAxNiAuICd8JworICBub3JtYWwhIDAxNnwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDggLiAnfCcKKyAgbm9ybWFsISAwOHwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDggLiAnfCcKKyAgbm9ybWFsISAwOHwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDE2IC4gJ3wnCisgIG5vcm1hbCEgMDE2fAorICBleGUgJ25vcm1hbCEgJyAuIHM6YyAuICd8enMnIC4gMTYgLiAnfCcKKyAgbm9ybWFsISAwMTZ8CisgIGV4ZSAnbm9ybWFsISAnIC4gczpjIC4gJ3x6cycgLiAxNiAuICd8JworICBub3JtYWwhIDAxNnwKKyAgZXhlICdub3JtYWwhICcgLiBzOmMgLiAnfHpzJyAuIDE2IC4gJ3wnCisgIG5vcm1hbCEgMDE2fApkaWZmIC0tZ2l0IGEvc3JjL3ZlcnNpb24uYyBiL3NyYy92ZXJzaW9uLmMKaW5kZXggNmU0MmM2Ni4uYTRlNDYxZSAxMDA2NDQKLS0tIGEvc3JjL3ZlcnNpb24uYworKysgYi9zcmMvdmVyc2lvbi5jCkBAIC03MjksNiArNzI5LDggQEAKIHN0YXRpYyBpbnQgaW5jbHVkZWRfcGF0Y2hlc1tdID0KIHsgICAvKiBBZGQgbmV3IHBhdGNoIG51bWJlciBiZWxvdyB0aGlzIGxpbmUgKi8KIC8qKi8KKyAgICA4MzgsCisvKiovCiAgICAgODM3LAogLyoqLwogICAgIDgzNiwK