From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: =?utf-8?b?T25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+?= To: git-commits@fedoraproject.org Subject: [rpms/rpkg] 1.70-1: New release 1.61 Date: Mon, 10 Aug 2026 21:44:16 GMT Message-ID: <178639825609.1.5233426240761024471.rpms-rpkg-118a378eb00b@fedoraproject.org> List-ID: X-Git-Repo: rpms/rpkg X-Git-Branch: 1.70-1 X-Git-Rev: 118a378eb00bf83a0bb71c3380581fbf7ac48699 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvcnBrZwogICAgICAgICAgICBCcmFuY2ggOiAxLjcwLTEKICAgICAgICAgICAg Q29tbWl0IDogMTE4YTM3OGViMDBiZjgzYTBiYjcxYzMzODA1ODFmYmY3YWM0ODY5OQogICAgICAg ICAgICBBdXRob3IgOiBPbmTFmWVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KICAgICAgICAg ICAgRGF0ZSAgIDogMjAyMC0wOS0wOFQyMzozODo0NiswMDowMAogICAgICAgICAgICBTdGF0cyAg OiArNTMvLTkyNiBpbiAxMCBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBzOi8vc3Jj LmZlZG9yYXByb2plY3Qub3JnL3JwbXMvcnBrZy9jLzExOGEzNzhlYjAwYmY4M2EwYmI3MWMzMzgw NTgxZmJmN2FjNDg2OTk/YnJhbmNoPTEuNzAtMQoKICAgICAgICAgICAgTG9nOgogICAgICAgICAg ICBOZXcgcmVsZWFzZSAxLjYxCgpTaWduZWQtb2ZmLWJ5OiBPbmTFmWVqIE5vc2VrIDxvbm9zZWtA cmVkaGF0LmNvbT4KCi0tLQpkaWZmIC0tZ2l0IGEvLmdpdGlnbm9yZSBiLy5naXRpZ25vcmUKaW5k ZXggMDA3MWFlMi4uNTA0Y2VkOCAxMDA2NDQKLS0tIGEvLmdpdGlnbm9yZQorKysgYi8uZ2l0aWdu b3JlCkBAIC01NiwzICs1Niw0IEBACiAvcnBrZy0xLjU4LnRhci5negogL3Jwa2ctMS41OS50YXIu Z3oKIC9ycGtnLTEuNjAudGFyLmd6CisvcnBrZy0xLjYxLnRhci5negoKZGlmZiAtLWdpdCBhLzAw MDEtRG8tbm90LXVzZS1weXRlc3QtcmVsYXRlZC1kZXBlbmRlbmNpZXMtdGVtcG9yYXJpbHkucGF0 Y2ggYi8wMDAxLURvLW5vdC11c2UtcHl0ZXN0LXJlbGF0ZWQtZGVwZW5kZW5jaWVzLXRlbXBvcmFy aWx5LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhMTJkNDQKLS0t IC9kZXYvbnVsbAorKysgYi8wMDAxLURvLW5vdC11c2UtcHl0ZXN0LXJlbGF0ZWQtZGVwZW5kZW5j aWVzLXRlbXBvcmFyaWx5LnBhdGNoCkBAIC0wLDAgKzEsMjUgQEAKK0Zyb20gYTExMjdjNzRlNjI4 MGI4OTEwMjhiMDY2MjMxNmM4NjUzNTExZjBiZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy b206IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CitEYXRlOiBXZWQsIDkgU2VwIDIw MjAgMDE6MzA6NTQgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gRG8gbm90IHVzZSBweXRlc3QtcmVs YXRlZCBkZXBlbmRlbmNpZXMgdGVtcG9yYXJpbHkKKworU2lnbmVkLW9mZi1ieTogT25kcmVqIE5v c2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KKy0tLQorIHNldHVwLnB5IHwgMSAtCisgMSBmaWxlIGNo YW5nZWQsIDEgZGVsZXRpb24oLSkKKworZGlmZiAtLWdpdCBhL3NldHVwLnB5IGIvc2V0dXAucHkK K2luZGV4IGYxOGZmNGYuLjc2ODE1NzggMTAwNzU1CistLS0gYS9zZXR1cC5weQorKysrIGIvc2V0 dXAucHkKK0BAIC01OSw3ICs1OSw2IEBAIHNldHVwKAorICAgICBsaWNlbnNlPSJHUEx2MisiLAor ICAgICB1cmw9Imh0dHBzOi8vcGFndXJlLmlvL3Jwa2ciLAorICAgICBwYWNrYWdlcz1maW5kX3Bh Y2thZ2VzKCksCistICAgIHNldHVwX3JlcXVpcmVzPVsnc2V0dXB0b29sc19zY20nLCAncHl0ZXN0 LXJ1bm5lciddLAorICAgICBpbnN0YWxsX3JlcXVpcmVzPWluc3RhbGxfcmVxdWlyZXMsCisgICAg IGV4dHJhc19yZXF1aXJlPXsKKyAgICAgICAgICc6cHl0aG9uX3ZlcnNpb249PSIyLjYiJzogWwor LS0gCisyLjI2LjIKKwoKZGlmZiAtLWdpdCBhLzAwMDEtUmVwYWlyLWRvd25sb2FkaW5nLXNvdXJj ZXMtaW50by1leHRlcm5hbC1kaXJlY3RvcnkucGF0Y2ggYi8wMDAxLVJlcGFpci1kb3dubG9hZGlu Zy1zb3VyY2VzLWludG8tZXh0ZXJuYWwtZGlyZWN0b3J5LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCBjMWIxNTExLi4wMDAwMDAwCi0tLSBhLzAwMDEtUmVwYWlyLWRvd25sb2Fk aW5nLXNvdXJjZXMtaW50by1leHRlcm5hbC1kaXJlY3RvcnkucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwzMSArMCwwIEBACi1Gcm9tIGFlMTEzNWRmYmNhMDVkZGNkODhiYmNjOTYyYmFmNTg5ZGJh MTQzZTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBPbmRyZWogTm9zZWsgPG9ub3Nl a0ByZWRoYXQuY29tPgotRGF0ZTogVHVlLCAyNCBNYXIgMjAyMCAwMToyMzo1MyArMDEwMAotU3Vi amVjdDogW1BBVENIXSBSZXBhaXIgZG93bmxvYWRpbmcgc291cmNlcyBpbnRvIGV4dGVybmFsIGRp cmVjdG9yeQotCi1TaWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29t PgotLS0tCi0gcHlycGtnL3V0aWxzLnB5IHwgNyArKysrKy0tCi0gMSBmaWxlIGNoYW5nZWQsIDUg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3B5cnBrZy91dGls cy5weSBiL3B5cnBrZy91dGlscy5weQotaW5kZXggZTYzMzlkYi4uZDFiNzliOSAxMDA2NDQKLS0t LSBhL3B5cnBrZy91dGlscy5weQotKysrIGIvcHlycGtnL3V0aWxzLnB5Ci1AQCAtMTg1LDggKzE4 NSwxMSBAQCBkZWYgaXNfZmlsZV90cmFja2VkKGZpbGVfcGF0aCwgcmVwb19wYXRoKToKLSAgICAg IyBjcmVhdGUgYSByZXBvIG9iamVjdCBmcm9tIG91ciBwYXRoCi0gICAgIHRyeToKLSAgICAgICAg IHJlcG8gPSBnaXQuUmVwbyhyZXBvX3BhdGgpCi0tICAgIGV4Y2VwdCAoZ2l0LkludmFsaWRHaXRS ZXBvc2l0b3J5RXJyb3IsIGdpdC5Ob1N1Y2hQYXRoRXJyb3IpOgotLSAgICAgICAgcmFpc2UgUnVu dGltZUVycm9yKCIlcyBpcyBub3QgYSB2YWxpZCByZXBvIiAlIHJlcG9fcGF0aCkKLSsgICAgZXhj ZXB0IGdpdC5JbnZhbGlkR2l0UmVwb3NpdG9yeUVycm9yOgotKyAgICAgICAgIyByZXBvX3BhdGgg aXMgbm90IGEgdmFsaWQgcmVwbyAtIGlucHV0IGZpbGUgaXMgbm90IHRyYWNrZWQKLSsgICAgICAg IHJldHVybiBGYWxzZQotKyAgICBleGNlcHQgZ2l0Lk5vU3VjaFBhdGhFcnJvcjoKLSsgICAgICAg IHJhaXNlIFJ1bnRpbWVFcnJvcigiJXMgaXMgbm90IGEgdmFsaWQgcGF0aCIgJSByZXBvX3BhdGgp Ci0gCi0gICAgIGlmIHJlbGF0aXZlX2ZpbGVfcGF0aCBpbiByZXBvLnVudHJhY2tlZF9maWxlczoK LSAgICAgICAgIHJldHVybiBGYWxzZQotLS0gCi0yLjIxLjEKLQoKZGlmZiAtLWdpdCBhLzAwMDIt UmVwYWlyLWNvbXBhdGlibGUtZm9ybWF0dGluZy1mb3ItUHl0aG9uLTIuNi5wYXRjaCBiLzAwMDIt UmVwYWlyLWNvbXBhdGlibGUtZm9ybWF0dGluZy1mb3ItUHl0aG9uLTIuNi5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWZjYzQ2NC4uMDAwMDAwMAotLS0gYS8wMDAyLVJlcGFp ci1jb21wYXRpYmxlLWZvcm1hdHRpbmctZm9yLVB5dGhvbi0yLjYucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw5MyArMCwwIEBACi1Gcm9tIGFiZTBiMGE5YjY1MGIxZDU1YzI0ODJkMTBhZDg4OThm MGVmYzAwZWEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBPbmRyZWogTm9zZWsgPG9u b3Nla0ByZWRoYXQuY29tPgotRGF0ZTogVHVlLCAyNCBNYXIgMjAyMCAwMjowNToxOSArMDEwMAot U3ViamVjdDogW1BBVENIXSBSZXBhaXIgY29tcGF0aWJsZSBmb3JtYXR0aW5nIGZvciBQeXRob24g Mi42Ci0KLVNpZ25lZC1vZmYtYnk6IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+Ci0t LS0KLSBweXJwa2cvX19pbml0X18ucHkgfCAxMiArKysrKystLS0tLS0KLSBweXJwa2cvdXRpbHMu cHkgICAgfCAgOCArKysrLS0tLQotIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwg MTAgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9weXJwa2cvX19pbml0X18ucHkgYi9weXJw a2cvX19pbml0X18ucHkKLWluZGV4IDUwZjMzMDIuLjc5MWI2NmIgMTAwNjQ0Ci0tLS0gYS9weXJw a2cvX19pbml0X18ucHkKLSsrKyBiL3B5cnBrZy9fX2luaXRfXy5weQotQEAgLTEzNTgsMTQgKzEz NTgsMTQgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgIHRhcmdldF9kaXIgPSB0 ZW1wZmlsZS5ta2R0ZW1wKHN1ZmZpeD0iZXh0cmFjdC1zcnBtIiwgcHJlZml4PSJycGtnIikKLSAg ICAgICAgIHRyeToKLSAgICAgICAgICAgICB0cnk6Ci0tICAgICAgICAgICAgICAgIHNlbGYubG9n LmRlYnVnKCJFeHRyYWN0aW5nIHNycG0gJ3t9JywgZGVzdGluYXRpb24gJ3t9JyIuZm9ybWF0KAot KyAgICAgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZygiRXh0cmFjdGluZyBzcnBtICd7MH0nLCBk ZXN0aW5hdGlvbiAnezF9JyIuZm9ybWF0KAotICAgICAgICAgICAgICAgICAgICAgc3JwbSwgdGFy Z2V0X2RpcgotICAgICAgICAgICAgICAgICApKQotICAgICAgICAgICAgICAgICAjIG1ldGhvZCAn aXNfbG9va2FzaWRlX2VsaWdpYmxlX2ZpbGUnIHdpbGwgYWNjZXNzIGV4dHJhY3RlZAotICAgICAg ICAgICAgICAgICAjIGZpbGVzIHRvIGRldGVjdCBpdHMgZW5jb2RpbmcgKGJpbmFyeSBvciBub3Qp Ci0gICAgICAgICAgICAgICAgIF8sIF8gPSBleHRyYWN0X3NycG0oc3JwbSwgdGFyZ2V0X2RpcikK LSAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6Ci0tICAgICAgICAgICAgICAgIHNl bGYubG9nLmVycm9yKCJFeHRyYWN0aW9uIG9mIHNycG0gaGFzIGZhaWxlZCB7fSIuZm9ybWF0KGUp KQotKyAgICAgICAgICAgICAgICBzZWxmLmxvZy5lcnJvcigiRXh0cmFjdGlvbiBvZiBzcnBtIGhh cyBmYWlsZWQgezB9Ii5mb3JtYXQoZSkpCi0gICAgICAgICAgICAgICAgIHJhaXNlCi0gCi0gICAg ICAgICAgICAgIyBDeWNsZSB0aHJvdWdoIHRoZSBzcnBtIGNvbnRlbnQgYW5kIGRlY2lkZSB3aGVy ZSB0byB1cGxvYWQgZmlsZXMKLUBAIC0xNjMzLDggKzE2MzMsOCBAQCBjbGFzcyBDb21tYW5kcyhv YmplY3QpOgotICAgICAgICAgbmFtZXNwYWNlID0gcmVwby5zcGxpdCgiLyIpWzBdIGlmICIvIiBp biByZXBvIGVsc2UgInJwbXMiCi0gICAgICAgICAjIEhhcyBjdXJyZW50IG5hbWVzcGFjZSBpdHMg b3duIGNsb25lIGNvbmZpZz8KLSAgICAgICAgIHNlbGVjdGVkX2Nsb25lX2NvbmZpZyA9IE5vbmUK LS0gICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgImNsb25lX2NvbmZpZ197fSIuZm9ybWF0KG5hbWVz cGFjZSkpOgotLSAgICAgICAgICAgIHNlbGVjdGVkX2Nsb25lX2NvbmZpZyA9IGdldGF0dHIoc2Vs ZiwgImNsb25lX2NvbmZpZ197fSIuZm9ybWF0KG5hbWVzcGFjZSkpCi0rICAgICAgICBpZiBoYXNh dHRyKHNlbGYsICJjbG9uZV9jb25maWdfezB9Ii5mb3JtYXQobmFtZXNwYWNlKSk6Ci0rICAgICAg ICAgICAgc2VsZWN0ZWRfY2xvbmVfY29uZmlnID0gZ2V0YXR0cihzZWxmLCAiY2xvbmVfY29uZmln X3swfSIuZm9ybWF0KG5hbWVzcGFjZSkpCi0gCi0gICAgICAgICAjIFZhbGlkIGNvbmZpZ3VyYXRp b24gaXMgbm9uLWVtcHR5IHN0cmluZwotICAgICAgICAgaWYgc2VsZWN0ZWRfY2xvbmVfY29uZmln OgotQEAgLTE4NzUsMTAgKzE4NzUsMTAgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAg ICAgICAgICAgICAgb3MucmVtb3ZlKGZpbGUpCi0gCi0gICAgICAgICB0cnk6Ci0tICAgICAgICAg ICAgc2VsZi5sb2cuZGVidWcoIkV4dHJhY3Rpbmcgc3JwbSAne30nIi5mb3JtYXQoc3JwbSkpCi0r ICAgICAgICAgICAgc2VsZi5sb2cuZGVidWcoIkV4dHJhY3Rpbmcgc3JwbSAnezB9JyIuZm9ybWF0 KHNycG0pKQotICAgICAgICAgICAgIG91dHB1dCwgZXJyID0gZXh0cmFjdF9zcnBtKHNycG0pCi0g ICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6Ci0tICAgICAgICAgICAgc2VsZi5sb2cuZXJy b3IoIkV4dHJhY3Rpb24gb2Ygc3JwbSBoYXMgZmFpbGVkIHt9Ii5mb3JtYXQoZSkpCi0rICAgICAg ICAgICAgc2VsZi5sb2cuZXJyb3IoIkV4dHJhY3Rpb24gb2Ygc3JwbSBoYXMgZmFpbGVkIHswfSIu Zm9ybWF0KGUpKQotICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICBpZiBvdXRwdXQ6Ci0gICAg ICAgICAgICAgc2VsZi5sb2cuZGVidWcob3V0cHV0KQotZGlmZiAtLWdpdCBhL3B5cnBrZy91dGls cy5weSBiL3B5cnBrZy91dGlscy5weQotaW5kZXggZDFiNzliOS4uMWE1MGEzZSAxMDA2NDQKLS0t LSBhL3B5cnBrZy91dGlscy5weQotKysrIGIvcHlycGtnL3V0aWxzLnB5Ci1AQCAtMjUxLDkgKzI1 MSw5IEBAIGRlZiBleHRyYWN0X3NycG0oc3JwbV9wYXRoLCB0YXJnZXRfZGlyPU5vbmUpOgotICAg ICBkaXJlY3RvcnkgaWYgbm90IHNwZWNpZmllZAotICAgICAiIiIKLSAgICAgaWYgbm90IG9zLnBh dGguaXNmaWxlKHNycG1fcGF0aCk6Ci0tICAgICAgICByYWlzZSBJT0Vycm9yKCJJbnB1dCBmaWxl IGRvZXNuJ3QgZXhpc3Q6IHt9Ii5mb3JtYXQoc3JwbV9wYXRoKSkKLSsgICAgICAgIHJhaXNlIElP RXJyb3IoIklucHV0IGZpbGUgZG9lc24ndCBleGlzdDogezB9Ii5mb3JtYXQoc3JwbV9wYXRoKSkK LSAgICAgaWYgdGFyZ2V0X2RpciBhbmQgbm90IG9zLnBhdGguaXNkaXIodGFyZ2V0X2Rpcik6Ci0t ICAgICAgICByYWlzZSBJT0Vycm9yKCJUYXJnZXQgZGlyZWN0b3J5IGRvZXNuJ3QgZXhpc3Q6IHt9 Ii5mb3JtYXQodGFyZ2V0X2RpcikpCi0rICAgICAgICByYWlzZSBJT0Vycm9yKCJUYXJnZXQgZGly ZWN0b3J5IGRvZXNuJ3QgZXhpc3Q6IHswfSIuZm9ybWF0KHRhcmdldF9kaXIpKQotIAotICAgICAj IHJwbTJjcGlvIDxzcnBtPiB8IGNwaW8gLWl1ZCAtLXF1aWV0Ci0gICAgIGNtZCA9IFsncnBtMmNw aW8nLCBzcnBtX3BhdGhdCi1AQCAtMjcyLDcgKzI3Miw3IEBAIGRlZiBpc19sb29rYXNpZGVfZWxp Z2libGVfZmlsZShmaWxlX25hbWUsIGRpcl9wYXRoPU5vbmUpOgotICAgICAiIiIKLSAgICAgZmls ZV9wYXRoID0gb3MucGF0aC5qb2luKGRpcl9wYXRoIG9yICIiLCBmaWxlX25hbWUpCi0gICAgIGlm IG5vdCBvcy5wYXRoLmlzZmlsZShmaWxlX3BhdGgpOgotLSAgICAgICAgcmFpc2UgSU9FcnJvcigi SW5wdXQgZmlsZSBkb2Vzbid0IGV4aXN0OiB7fSIuZm9ybWF0KGZpbGVfcGF0aCkpCi0rICAgICAg ICByYWlzZSBJT0Vycm9yKCJJbnB1dCBmaWxlIGRvZXNuJ3QgZXhpc3Q6IHswfSIuZm9ybWF0KGZp bGVfcGF0aCkpCi0gCi0gICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKAotICAgICAgICAgIyBwYXJh bWV0ZXIgJy1iJyBjYXVzZXMgYnJpZWYgb3V0cHV0IC0gd2l0aG91dCBmaWxlbmFtZSBpbiB0aGUg b3V0cHV0Ci1AQCAtMjg0LDcgKzI4NCw3IEBAIGRlZiBpc19sb29rYXNpZGVfZWxpZ2libGVfZmls ZShmaWxlX25hbWUsIGRpcl9wYXRoPU5vbmUpOgotICAgICApCi0gICAgIG91dHB1dCwgZXJyb3Jz ID0gcC5jb21tdW5pY2F0ZSgpCi0gICAgIGlmIGVycm9yczoKLS0gICAgICAgIHJhaXNlIFJ1bnRp bWVFcnJvcigiTWltZSBlbmNvZGluZyBkZXRlY3Rpb24gb2YgdGhlIGZpbGUgJ3t9JyBoYXMgZmFp bGVkOiB7fSIuZm9ybWF0KAotKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJNaW1lIGVuY29k aW5nIGRldGVjdGlvbiBvZiB0aGUgZmlsZSAnezB9JyBoYXMgZmFpbGVkOiB7MX0iLmZvcm1hdCgK LSAgICAgICAgICAgICBmaWxlX3BhdGgsCi0gICAgICAgICAgICAgZXJyb3JzCi0gICAgICAgICAp KQotLS0gCi0yLjIxLjEKLQoKZGlmZiAtLWdpdCBhLzAwMDMtU3dpdGNoLWZyb20ta3JiX2xvZ2lu LXRvLWdzc2FwaV9sb2dpbi5wYXRjaCBiLzAwMDMtU3dpdGNoLWZyb20ta3JiX2xvZ2luLXRvLWdz c2FwaV9sb2dpbi5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDc5OTg4MC4u MDAwMDAwMAotLS0gYS8wMDAzLVN3aXRjaC1mcm9tLWtyYl9sb2dpbi10by1nc3NhcGlfbG9naW4u cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5NSArMCwwIEBACi1Gcm9tIDlkZjdmMWI2NzQxYWEx YWQwODIzMmYzMWUxNDBkNjE0ZGE4NjllMDcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9t OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgotRGF0ZTogVHVlLCAxOSBNYXkgMjAy MCAwMDoxMDowMSArMDIwMAotU3ViamVjdDogW1BBVENIIDEvMl0gU3dpdGNoIGZyb20ga3JiX2xv Z2luIHRvIGdzc2FwaV9sb2dpbgotCi1SZXBsYWNlcyBkZXByZWNhdGVkIG1ldGhvZCBrcmJfbG9n aW4uCi0KLUpJUkE6IFJIRUxDTVAtNTY3Ci1SZXNvbHZlczogcmhieiMxODMwNDMwCi1GaXhlczog IzQ5OAotCi1TaWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgot LS0tCi0gcHlycGtnL19faW5pdF9fLnB5ICAgICB8ICA0ICstLS0KLSB0ZXN0cy90ZXN0X2NvbW1h bmRzLnB5IHwgMTYgKysrKysrKystLS0tLS0tLQotIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRp b25zKCspLCAxMSBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3B5cnBrZy9fX2luaXRfXy5w eSBiL3B5cnBrZy9fX2luaXRfXy5weQotaW5kZXggN2RhM2RlNy4uNWQ1ZDU1ZCAxMDA2NDQKLS0t LSBhL3B5cnBrZy9fX2luaXRfXy5weQotKysrIGIvcHlycGtnL19faW5pdF9fLnB5Ci1AQCAtMzAx LDcgKzMwMSw2IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICAgICAgJ3RvcHVy bCc6ICdodHRwOi8vbG9jYWxob3N0L2tvamlyb290JywKLSAgICAgICAgICAgICAndXNlX2Zhc3Rf dXBsb2FkJzogTm9uZSwKLSAgICAgICAgICAgICAnd2VidXJsJzogJ2h0dHA6Ly9sb2NhbGhvc3Qv a29qaScsCi0tICAgICAgICAgICAgJ2tyYl9yZG5zJzogTm9uZSwKLSAgICAgICAgICAgICB9Ci0g Ci0gICAgICAgICAjIFByb2Nlc3MgdGhlIGNvbmZpZ3MgaW4gb3JkZXIsIGdsb2JhbCwgdXNlciwg dGhlbiBhbnkgb3B0aW9uIHBhc3NlZAotQEAgLTMyMyw3ICszMjIsNiBAQCBjbGFzcyBDb21tYW5k cyhvYmplY3QpOgotICAgICAgICAgICAgICdvZmZsaW5lX3JldHJ5X2ludGVydmFsJzogY29uZmln LmdldGludCwKLSAgICAgICAgICAgICAncmV0cnlfaW50ZXJ2YWwnOiBjb25maWcuZ2V0aW50LAot ICAgICAgICAgICAgICd0aW1lb3V0JzogY29uZmlnLmdldGludCwKLS0gICAgICAgICAgICAna3Ji X3JkbnMnOiBjb25maWcuZ2V0Ym9vbGVhbiwKLSAgICAgICAgICAgICB9Ci0gCi0gICAgICAgICBp ZiBjb25maWcuaGFzX3NlY3Rpb24oYnVpbGRfY2xpZW50X25hbWUpOgotQEAgLTM3Niw3ICszNzQs NyBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotIAotICAgICAgICAgICAgIGlmIHNlbGYuX2xv YWRfa3JiX3VzZXIoKToKLSAgICAgICAgICAgICAgICAgdHJ5OgotLSAgICAgICAgICAgICAgICAg ICAgc2Vzc2lvbi5rcmJfbG9naW4ocHJveHl1c2VyPXNlbGYucnVuYXMpCi0rICAgICAgICAgICAg ICAgICAgICBzZXNzaW9uLmdzc2FwaV9sb2dpbihwcm94eXVzZXI9c2VsZi5ydW5hcykKLSAgICAg ICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgotICAgICAgICAgICAgICAgICAgICAg c2VsZi5sb2cuZXJyb3IoJ0tlcmJlcm9zIGF1dGhlbnRpY2F0aW9uIGZhaWxzOiAlcycsIGUpCi0g ICAgICAgICAgICAgZWxzZToKLWRpZmYgLS1naXQgYS90ZXN0cy90ZXN0X2NvbW1hbmRzLnB5IGIv dGVzdHMvdGVzdF9jb21tYW5kcy5weQotaW5kZXggNDBlNjRjZS4uZDA3NTA4YyAxMDA2NDQKLS0t LSBhL3Rlc3RzL3Rlc3RfY29tbWFuZHMucHkKLSsrKyBiL3Rlc3RzL3Rlc3RfY29tbWFuZHMucHkK LUBAIC02NzIsMzMgKzY3MiwzMyBAQCBjbGFzcyBUZXN0TG9naW5Lb2ppU2Vzc2lvbihDb21tYW5k VGVzdENhc2UpOgotICAgICAgICAgc2VsZi5zZXNzaW9uLmxvZ2luLmFzc2VydF9jYWxsZWRfb25j ZSgpCi0gCi0gICAgIEBwYXRjaCgncHlycGtnLkNvbW1hbmRzLl9sb2FkX2tyYl91c2VyJywgcmV0 dXJuX3ZhbHVlPUZhbHNlKQotLSAgICBkZWYgdGVzdF9rcmJfbG9naW5fZmFpbHNfaWZfbm9fdmFs aWRfY3JlZGVudGlhbChzZWxmLCBfbG9hZF9rcmJfdXNlcik6Ci0rICAgIGRlZiB0ZXN0X2dzc2Fw aV9sb2dpbl9mYWlsc19pZl9ub192YWxpZF9jcmVkZW50aWFsKHNlbGYsIF9sb2FkX2tyYl91c2Vy KToKLSAgICAgICAgIHNlbGYua29qaV9jb25maWdbJ2F1dGh0eXBlJ10gPSAna2VyYmVyb3MnCi0g ICAgICAgICBzZWxmLmNtZC5yZWFsbXMgPSBbJ0ZFRE9SQVBST0pFQ1QuT1JHJ10KLSAKLSAgICAg ICAgIHNlbGYuY21kLmxvZ2luX2tvamlfc2Vzc2lvbihzZWxmLmtvamlfY29uZmlnLCBzZWxmLnNl c3Npb24pCi0gCi0tICAgICAgICBzZWxmLnNlc3Npb24ua3JiX2xvZ2luLmFzc2VydF9ub3RfY2Fs bGVkKCkKLSsgICAgICAgIHNlbGYuc2Vzc2lvbi5nc3NhcGlfbG9naW4uYXNzZXJ0X25vdF9jYWxs ZWQoKQotICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBzZWxmLmNtZC5sb2cud2FybmluZy5j YWxsX2NvdW50KQotIAotICAgICBAcGF0Y2goJ3B5cnBrZy5Db21tYW5kcy5fbG9hZF9rcmJfdXNl cicsIHJldHVybl92YWx1ZT1UcnVlKQotLSAgICBkZWYgdGVzdF9rcmJfbG9naW5fZmFpbHMoc2Vs ZiwgX2xvYWRfa3JiX3VzZXIpOgotKyAgICBkZWYgdGVzdF9nc3NhcGlfbG9naW5fZmFpbHMoc2Vs ZiwgX2xvYWRfa3JiX3VzZXIpOgotICAgICAgICAgc2VsZi5rb2ppX2NvbmZpZ1snYXV0aHR5cGUn XSA9ICdrZXJiZXJvcycKLS0gICAgICAgICMgU2ltdWxhdGUgQ2xpZW50U2Vzc2lvbi5rcmJfbG9n aW4gZmFpbHMgYW5kIGVycm9yIGlzIHJhaXNlZC4KLS0gICAgICAgIHNlbGYuc2Vzc2lvbi5rcmJf bG9naW4uc2lkZV9lZmZlY3QgPSBFeGNlcHRpb24KLSsgICAgICAgICMgU2ltdWxhdGUgQ2xpZW50 U2Vzc2lvbi5nc3NhcGlfbG9naW4gZmFpbHMgYW5kIGVycm9yIGlzIHJhaXNlZC4KLSsgICAgICAg IHNlbGYuc2Vzc2lvbi5nc3NhcGlfbG9naW4uc2lkZV9lZmZlY3QgPSBFeGNlcHRpb24KLSAKLSAg ICAgICAgIHNlbGYuY21kLmxvZ2luX2tvamlfc2Vzc2lvbihzZWxmLmtvamlfY29uZmlnLCBzZWxm LnNlc3Npb24pCi0gCi0tICAgICAgICBzZWxmLnNlc3Npb24ua3JiX2xvZ2luLmFzc2VydF9jYWxs ZWRfb25jZV93aXRoKHByb3h5dXNlcj1Ob25lKQotKyAgICAgICAgc2VsZi5zZXNzaW9uLmdzc2Fw aV9sb2dpbi5hc3NlcnRfY2FsbGVkX29uY2Vfd2l0aChwcm94eXVzZXI9Tm9uZSkKLSAgICAgICAg IHNlbGYuY21kLmxvZy5lcnJvci5hc3NlcnRfY2FsbGVkX29uY2UoKQotIAotICAgICBAcGF0Y2go J3B5cnBrZy5Db21tYW5kcy5fbG9hZF9rcmJfdXNlcicsIHJldHVybl92YWx1ZT1UcnVlKQotLSAg ICBkZWYgdGVzdF9zdWNjZXNzZnVsX2tyYl9sb2dpbihzZWxmLCBfbG9hZF9rcmJfdXNlcik6Ci0r ICAgIGRlZiB0ZXN0X3N1Y2Nlc3NmdWxfZ3NzYXBpX2xvZ2luKHNlbGYsIF9sb2FkX2tyYl91c2Vy KToKLSAgICAgICAgIHNlbGYua29qaV9jb25maWdbJ2F1dGh0eXBlJ10gPSAna2VyYmVyb3MnCi0g Ci0gICAgICAgICBzZWxmLmNtZC5sb2dpbl9rb2ppX3Nlc3Npb24oc2VsZi5rb2ppX2NvbmZpZywg c2VsZi5zZXNzaW9uKQotIAotLSAgICAgICAgc2VsZi5zZXNzaW9uLmtyYl9sb2dpbi5hc3NlcnRf Y2FsbGVkX29uY2Vfd2l0aChwcm94eXVzZXI9Tm9uZSkKLSsgICAgICAgIHNlbGYuc2Vzc2lvbi5n c3NhcGlfbG9naW4uYXNzZXJ0X2NhbGxlZF9vbmNlX3dpdGgocHJveHl1c2VyPU5vbmUpCi0gCi0g Ci0gY2xhc3MgVGVzdENvbnN0cnVjdEJ1aWxkVVJMKENvbW1hbmRUZXN0Q2FzZSk6Ci0tLSAKLTIu MjEuMwotCgpkaWZmIC0tZ2l0IGEvMDAwNC1hZGRlZC1hLWV4dGVuZGFibGUtbGF5b3V0LW1vZHVs ZS10by1kZWFsLXdpdGgtZGlmZmVyLnBhdGNoIGIvMDAwNC1hZGRlZC1hLWV4dGVuZGFibGUtbGF5 b3V0LW1vZHVsZS10by1kZWFsLXdpdGgtZGlmZmVyLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwODg3MDJhLi4wMDAwMDAwCi0tLSBhLzAwMDQtYWRkZWQtYS1leHRlbmRhYmxl LWxheW91dC1tb2R1bGUtdG8tZGVhbC13aXRoLWRpZmZlci5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDYzMCArMCwwIEBACi1Gcm9tIGE5NWJhZDJlZDU3ZTUwMGE5ZjljMWVjNTBkMWM1Y2RhY2Zm Y2E1ZjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBvZHJhIDwyMTgzNTA2K29kcmFA dXNlcnMubm9yZXBseS5naXRodWIuY29tPgotRGF0ZTogTW9uLCAyMCBKdWwgMjAyMCAxNTo0MToz MSAtMDMwMAotU3ViamVjdDogW1BBVENIXSBhZGRlZCBhIGV4dGVuZGFibGUgbGF5b3V0IG1vZHVs ZSB0byBkZWFsIHdpdGggZGlmZmVyZW50Ci0gcGFja2FnZSBsYXlvdXRzIHdpdGhpbiB0aGUgQ0xJ Ci0KLVNpZ25lZC1vZmYtYnk6IGxyb3NzZXR0IDxscm9zc2V0dEByZWRoYXQuY29tPgotLS0tCi0g cHlycGtnL19faW5pdF9fLnB5ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzEgKysrKy0t LQotIHB5cnBrZy9lcnJvcnMucHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsK LSBweXJwa2cvbGF5b3V0L19faW5pdF9fLnB5ICAgICAgICAgICAgICAgICAgICAgfCAzMCArKysr KysKLSBweXJwa2cvbGF5b3V0L2Jhc2UucHkgICAgICAgICAgICAgICAgICAgICAgICAgfCA5MyAr KysrKysrKysrKysrKysrKysrCi0gcHlycGtnL2xheW91dC9sYXlvdXRzLnB5ICAgICAgICAgICAg ICAgICAgICAgIHwgODAgKysrKysrKysrKysrKysrKwotIC4uLi9maXh0dXJlcy9sYXlvdXRzL2Rl YWQtbW9kdWxlL2RlYWQubW9kdWxlICB8ICAwCi0gLi4uL2ZpeHR1cmVzL2xheW91dHMvZGVhZC1t b2R1bGUvZm9vYmFyLnNwZWMgIHwgIDAKLSAuLi4vbGF5b3V0cy9kZWFkLXBhY2thZ2UvZGVhZC5w YWNrYWdlICAgICAgICAgfCAgMAotIC4uLi9maXh0dXJlcy9sYXlvdXRzL2RlYWQtcGFja2FnZS9m b29iYXIuc3BlYyB8ICAwCi0gdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kaXN0LWdpdC9mb29iYXIu c3BlYyAgIHwgIDAKLSB0ZXN0cy9maXh0dXJlcy9sYXlvdXRzL2Rpc3QtZ2l0L2Zvb2Jhci50eHQg ICAgfCAgMAotIHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvZGlzdC1naXQvc291cmNlcyAgICAgICB8 ICAwCi0gdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcGVjbGVzcy8uZ2l0a2VlcCAgICAgIHwgIDAK LSAuLi4vbGF5b3V0cy9zcnBtLWRlYWQtbW9kdWxlLy5mb29iYXIubWV0YWRhdGEgfCAgMAotIC4u Li9TT1VSQ0VTL2Zvb2Jhci1maXJzdGNvbW1pdC5wYXRjaCAgICAgICAgICB8ICAwCi0gLi4uL3Ny cG0tZGVhZC1tb2R1bGUvU1BFQ1MvZm9vYmFyLnNwZWMgICAgICAgIHwgIDAKLSAuLi4vbGF5b3V0 cy9zcnBtLWRlYWQtbW9kdWxlL2RlYWQubW9kdWxlICAgICAgfCAgMAotIC4uLi9zcnBtLWRlYWQt cGFja2FnZS8uZm9vYmFyLm1ldGFkYXRhICAgICAgICB8ICAwCi0gLi4uL1NPVVJDRVMvZm9vYmFy LWZpcnN0Y29tbWl0LnBhdGNoICAgICAgICAgIHwgIDAKLSAuLi4vc3JwbS1kZWFkLXBhY2thZ2Uv U1BFQ1MvZm9vYmFyLnNwZWMgICAgICAgfCAgMAotIC4uLi9sYXlvdXRzL3NycG0tZGVhZC1wYWNr YWdlL2RlYWQucGFja2FnZSAgICB8ICAwCi0gLi4uL3NycG0tZGVhZC1wYWNrYWdlL3NycG0vLmZv b2Jhci5tZXRhZGF0YSAgIHwgIDAKLSAuLi4vc3JwbS9TT1VSQ0VTL2Zvb2Jhci1maXJzdGNvbW1p dC5wYXRjaCAgICAgfCAgMAotIC4uLi9zcnBtLWRlYWQtcGFja2FnZS9zcnBtL1NQRUNTL2Zvb2Jh ci5zcGVjICB8ICAwCi0gLi4uL2xheW91dHMvc3JwbS1zcGVjbGVzcy8uZm9vYmFyLm1ldGFkYXRh ICAgIHwgIDAKLSAuLi4vbGF5b3V0cy9zcnBtLXNwZWNsZXNzL1NQRUNTLy5naXRrZWVwICAgICAg fCAgMAotIHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS8uZm9vYmFyLm1ldGFkYXRhICB8ICAw Ci0gLi4uL3NycG0vU09VUkNFUy9mb29iYXItZmlyc3Rjb21taXQucGF0Y2ggICAgIHwgIDAKLSB0 ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0vU1BFQ1MvZm9vYmFyLnNwZWMgfCAgMAotIHRlc3Rz L3Rlc3RfY2xpLnB5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIyICsrKy0tCi0gdGVz dHMvdGVzdF9sYXlvdXRfZGlzdGdpdC5weSAgICAgICAgICAgICAgICAgIHwgNTAgKysrKysrKysr KwotIHRlc3RzL3Rlc3RfbGF5b3V0X3NycG0ucHkgICAgICAgICAgICAgICAgICAgICB8IDQ5ICsr KysrKysrKysKLSAzMiBmaWxlcyBjaGFuZ2VkLCAzNDAgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRp b25zKC0pCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHB5cnBrZy9sYXlvdXQvX19pbml0X18ucHkKLSBj cmVhdGUgbW9kZSAxMDA2NDQgcHlycGtnL2xheW91dC9iYXNlLnB5Ci0gY3JlYXRlIG1vZGUgMTAw NjQ0IHB5cnBrZy9sYXlvdXQvbGF5b3V0cy5weQotIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0cy9m aXh0dXJlcy9sYXlvdXRzL2RlYWQtbW9kdWxlL2RlYWQubW9kdWxlCi0gY3JlYXRlIG1vZGUgMTAw NjQ0IHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvZGVhZC1tb2R1bGUvZm9vYmFyLnNwZWMKLSBjcmVh dGUgbW9kZSAxMDA2NDQgdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kZWFkLXBhY2thZ2UvZGVhZC5w YWNrYWdlCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvZGVhZC1w YWNrYWdlL2Zvb2Jhci5zcGVjCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2ZpeHR1cmVzL2xh eW91dHMvZGlzdC1naXQvZm9vYmFyLnNwZWMKLSBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdHMvZml4 dHVyZXMvbGF5b3V0cy9kaXN0LWdpdC9mb29iYXIudHh0Ci0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRl c3RzL2ZpeHR1cmVzL2xheW91dHMvZGlzdC1naXQvc291cmNlcwotIGNyZWF0ZSBtb2RlIDEwMDY0 NCB0ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NwZWNsZXNzLy5naXRrZWVwCi0gY3JlYXRlIG1vZGUg MTAwNjQ0IHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLW1vZHVsZS8uZm9vYmFyLm1l dGFkYXRhCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1k ZWFkLW1vZHVsZS9TT1VSQ0VTL2Zvb2Jhci1maXJzdGNvbW1pdC5wYXRjaAotIGNyZWF0ZSBtb2Rl IDEwMDY0NCB0ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1tb2R1bGUvU1BFQ1MvZm9v YmFyLnNwZWMKLSBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBt LWRlYWQtbW9kdWxlL2RlYWQubW9kdWxlCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2ZpeHR1 cmVzL2xheW91dHMvc3JwbS1kZWFkLXBhY2thZ2UvLmZvb2Jhci5tZXRhZGF0YQotIGNyZWF0ZSBt b2RlIDEwMDY0NCB0ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1wYWNrYWdlL1NPVVJD RVMvZm9vYmFyLWZpcnN0Y29tbWl0LnBhdGNoCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2Zp eHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLXBhY2thZ2UvU1BFQ1MvZm9vYmFyLnNwZWMKLSBjcmVh dGUgbW9kZSAxMDA2NDQgdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2FnZS9k ZWFkLnBhY2thZ2UKLSBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9z cnBtLWRlYWQtcGFja2FnZS9zcnBtLy5mb29iYXIubWV0YWRhdGEKLSBjcmVhdGUgbW9kZSAxMDA2 NDQgdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2FnZS9zcnBtL1NPVVJDRVMv Zm9vYmFyLWZpcnN0Y29tbWl0LnBhdGNoCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2ZpeHR1 cmVzL2xheW91dHMvc3JwbS1kZWFkLXBhY2thZ2Uvc3JwbS9TUEVDUy9mb29iYXIuc3BlYwotIGNy ZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tc3BlY2xlc3MvLmZv b2Jhci5tZXRhZGF0YQotIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0cy9maXh0dXJlcy9sYXlvdXRz L3NycG0tc3BlY2xlc3MvU1BFQ1MvLmdpdGtlZXAKLSBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdHMv Zml4dHVyZXMvbGF5b3V0cy9zcnBtLy5mb29iYXIubWV0YWRhdGEKLSBjcmVhdGUgbW9kZSAxMDA2 NDQgdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtL1NPVVJDRVMvZm9vYmFyLWZpcnN0Y29tbWl0 LnBhdGNoCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS9T UEVDUy9mb29iYXIuc3BlYwotIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0cy90ZXN0X2xheW91dF9k aXN0Z2l0LnB5Ci0gY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL3Rlc3RfbGF5b3V0X3NycG0ucHkK LQotZGlmZiAtLWdpdCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQot aW5kZXggNmEyNDAzMy4uMTI1MjI1MSAxMDA2NDQKLS0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQot KysrIGIvcHlycGtnL19faW5pdF9fLnB5Ci1AQCAtNDksNiArNDksNyBAQCBmcm9tIHB5cnBrZy5z b3VyY2VzIGltcG9ydCBTb3VyY2VzRmlsZQotIGZyb20gcHlycGtnLnV0aWxzIGltcG9ydCAoY2Fj aGVkX3Byb3BlcnR5LCBleHRyYWN0X3NycG0sIGZpbmRfbWUsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICBpc19maWxlX3RyYWNrZWQsIGlzX2xvb2thc2lkZV9lbGlnaWJsZV9maWxlLAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgbG9nX3Jlc3VsdCkKLStmcm9tIHB5cnBrZyBpbXBvcnQg bGF5b3V0Ci0gCi0gZnJvbSAuZ2l0aWdub3JlIGltcG9ydCBHaXRJZ25vcmUKLSAKLUBAIC0yMTIs NiArMjEzLDggQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgIHNlbGYuYmxvY2tf cmV0aXJlX25zID0gWydycG1zJ10KLSAgICAgICAgICMgR2l0IGV4Y2x1ZGVzIHBhdHRlcm5zCi0g ICAgICAgICBzZWxmLmdpdF9leGNsdWRlcyA9IGdpdF9leGNsdWRlcyBvciBbXQotKyAgICAgICAg IyBMYXlvdXQgc2V0dXAKLSsgICAgICAgIHNlbGYubGF5b3V0ID0gbGF5b3V0LmJ1aWxkKHNlbGYu cGF0aCkKLSAKLSAgICAgIyBEZWZpbmUgcHJvcGVydGllcyBoZXJlCi0gICAgICMgUHJvcGVydGll cyBhbGxvdyB1cyB0byAibGF6eSBsb2FkIiB2YXJpb3VzIGF0dHJpYnV0ZXMsIHdoaWNoIGFsc28g bWVhbnMKLUBAIC03NTksMTQgKzc2MiwxNiBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAg ICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcignQ291bGQgbm90IGZpbmQgdGhlIGJhc2UgT1MgdmVy IGZyb20gYnJhbmNoIG5hbWUnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgJXMuIENv bnNpZGVyIHVzaW5nIC0tcmVsZWFzZSBvcHRpb24nICUKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc2VsZi5icmFuY2hfbWVyZ2UpCi0rICAgICAgICBpZiBzZWxmLmxheW91dCBpcyBOb25l OgotKyAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcignVW5leHBlY3RlZCBlcnJvciB3aGlsZSBs b2FkaW5nIHRoZSBwYWNrYWdlLicpCi0gICAgICAgICBzZWxmLl9kaXN0dmFyLCBzZWxmLl9kaXN0 dmFsID0gb3N2ZXIuc3BsaXQoJy0nKQotICAgICAgICAgc2VsZi5fZGlzdHZhbCA9IHNlbGYuX2Rp c3R2YWwucmVwbGFjZSgnLicsICdfJykKLSAgICAgICAgIHNlbGYuX2Rpc3R0YWcgPSAnZWwlcycg JSBzZWxmLl9kaXN0dmFsCi0tICAgICAgICBzZWxmLl9ycG1kZWZpbmVzID0gWyItLWRlZmluZSAn X3NvdXJjZWRpciAlcyciICUgc2VsZi5wYXRoLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiLS1kZWZpbmUgJ19zcGVjZGlyICVzJyIgJSBzZWxmLnBhdGgsCi0tICAgICAgICAgICAgICAg ICAgICAgICAgICAgICItLWRlZmluZSAnX2J1aWxkZGlyICVzJyIgJSBzZWxmLnBhdGgsCi0tICAg ICAgICAgICAgICAgICAgICAgICAgICAgICItLWRlZmluZSAnX3NyY3JwbWRpciAlcyciICUgc2Vs Zi5wYXRoLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS1kZWZpbmUgJ19ycG1kaXIg JXMnIiAlIHNlbGYucGF0aCwKLSsgICAgICAgIHNlbGYuX3JwbWRlZmluZXMgPSBbIi0tZGVmaW5l ICdfc291cmNlZGlyICVzJyIgJSBzZWxmLmxheW91dC5zb3VyY2VkaXIsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICItLWRlZmluZSAnX3NwZWNkaXIgJXMnIiAlIHNlbGYubGF5b3V0LnNw ZWNkaXIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLWRlZmluZSAnX2J1aWxkZGly ICVzJyIgJSBzZWxmLmxheW91dC5idWlsZGRpciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIi0tZGVmaW5lICdfc3JjcnBtZGlyICVzJyIgJSBzZWxmLmxheW91dC5zcmNycG1kaXIsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLWRlZmluZSAnX3JwbWRpciAlcyciICUgc2Vs Zi5sYXlvdXQucnBtZGlyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS1kZWZpbmUg J2Rpc3QgLiVzJyIgJSBzZWxmLl9kaXN0dGFnLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiLS1kZWZpbmUgJyVzICVzJyIgJSAoc2VsZi5fZGlzdHZhciwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2Rpc3R2YWwuc3BsaXQoJ18n KVswXSksCi1AQCAtNzg0LDExICs3ODksMTQgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAg ICAgZGVmIGxvYWRfc3BlYyhzZWxmKToKLSAgICAgICAgICIiIlRoaXMgc2V0cyB0aGUgc3BlYyBh dHRyaWJ1dGUiIiIKLSAKLSsgICAgICAgIGlmIHNlbGYubGF5b3V0IGlzIE5vbmU6Ci0rICAgICAg ICAgICAgcmFpc2UgcnBrZ0Vycm9yKCdTcGVjIGZpbGUgaXMgbm90IGF2YWlsYWJsZScpCi0rCi0g ICAgICAgICBpZiBzZWxmLmlzX3JldGlyZWQoKToKLSAgICAgICAgICAgICByYWlzZSBycGtnRXJy b3IoJ1RoaXMgcGFja2FnZSBvciBtb2R1bGUgaXMgcmV0aXJlZC4gVGhlIGFjdGlvbiBoYXMgc3Rv cHBlZC4nKQotIAotICAgICAgICAgIyBHZXQgYSBsaXN0IG9mIGZpbGVzIGluIHRoZSBwYXRoIHdl J3JlIGxvb2tpbmcgYXQKLS0gICAgICAgIGZpbGVzID0gb3MubGlzdGRpcihzZWxmLnBhdGgpCi0r ICAgICAgICBmaWxlcyA9IG9zLmxpc3RkaXIoc2VsZi5sYXlvdXQuc3BlY2RpcikKLSAgICAgICAg ICMgU2VhcmNoIHRoZSBmaWxlcyBmb3IgdGhlIGZpcnN0IG9uZSB0aGF0IGVuZHMgd2l0aCAiLnNw ZWMiCi0gICAgICAgICBmb3IgZiBpbiBmaWxlczoKLSAgICAgICAgICAgICBpZiBmLmVuZHN3aXRo KCcuc3BlYycpIGFuZCBub3QgZi5zdGFydHN3aXRoKCcuJyk6Ci1AQCAtMTAxNSw3ICsxMDIzLDkg QEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAKLSAgICAgQHByb3BlcnR5Ci0gICAgIGRlZiBz b3VyY2VzX2ZpbGVuYW1lKHNlbGYpOgotLSAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihzZWxm LnBhdGgsICdzb3VyY2VzJykKLSsgICAgICAgIGlmIHNlbGYubGF5b3V0IGlzIE5vbmU6Ci0rICAg ICAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihzZWxmLnBhdGgsICdzb3VyY2VzJykKLSsgICAg ICAgIHJldHVybiBvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBzZWxmLmxheW91dC5zb3VyY2VzX2Zp bGVfdGVtcGxhdGUpCi0gCi0gICAgIEBwcm9wZXJ0eQotICAgICBkZWYgb3Nic19jb25maWdfZmls ZW5hbWUoc2VsZik6Ci1AQCAtMzE4OCwxMiArMzE5OCw3IEBAIGNsYXNzIENvbW1hbmRzKG9iamVj dCk6Ci0gICAgICAgICBUaGUgc3RhdGUgaXMgaW5kaWNhdGVkIGJ5IHByZXNlbnQgb2YgZmlsZXMg J2RlYWQucGFja2FnZScKLSAgICAgICAgIG9yICdkZWFkLm1vZHVsZScuCi0gICAgICAgICAiIiIK LS0gICAgICAgIG1hcmtlciA9ICdkZWFkLnBhY2thZ2UnCi0tICAgICAgICBpZiBvcy5wYXRoLmlz ZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBtYXJrZXIpKToKLS0gICAgICAgICAgICByZXR1 cm4gbWFya2VyCi0tICAgICAgICBtYXJrZXIgPSAnZGVhZC5tb2R1bGUnCi0tICAgICAgICBpZiBv cy5wYXRoLmlzZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBtYXJrZXIpKToKLS0gICAgICAg ICAgICByZXR1cm4gbWFya2VyCi0rICAgICAgICByZXR1cm4gc2VsZi5sYXlvdXQuaXNfcmV0aXJl ZCgpCi0gCi0gICAgIGRlZiByZXRpcmUoc2VsZiwgbWVzc2FnZSk6Ci0gICAgICAgICAiIiJEZWxl dGUgYWxsIHRyYWNrZWQgZmlsZXMgYW5kIGNvbW1pdCBhIG5ldyBkZWFkLnBhY2thZ2UgZmlsZSBm b3IgcnBtcwotZGlmZiAtLWdpdCBhL3B5cnBrZy9lcnJvcnMucHkgYi9weXJwa2cvZXJyb3JzLnB5 Ci1pbmRleCAxMzc4YmYyLi40OWI3MWQ0IDEwMDY0NAotLS0tIGEvcHlycGtnL2Vycm9ycy5weQot KysrIGIvcHlycGtnL2Vycm9ycy5weQotQEAgLTYyLDMgKzYyLDggQEAgY2xhc3MgVXBsb2FkRXJy b3IocnBrZ0Vycm9yKToKLSAKLSAgICAgZGVmIF9fdW5pY29kZV9fKHNlbGYpOgotICAgICAgICAg cmV0dXJuIHNpeC50ZXh0X3R5cGUoc2VsZi5tZXNzYWdlKQotKwotKwotK2NsYXNzIExheW91dEVy cm9yKHJwa2dFcnJvcik6Ci0rICAgICIiIlJhaXNlZCB3aGVuIHNvbWV0aGluZyB3ZW50IHdyb25n IHdoaWxlIHBhcnNpbmcvbG9hZGluZyBhIGxheW91dCIiIgotKyAgICBwYXNzCi1kaWZmIC0tZ2l0 IGEvcHlycGtnL2xheW91dC9fX2luaXRfXy5weSBiL3B5cnBrZy9sYXlvdXQvX19pbml0X18ucHkK LW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5iZGIyYTc5Ci0tLS0gL2Rldi9u dWxsCi0rKysgYi9weXJwa2cvbGF5b3V0L19faW5pdF9fLnB5Ci1AQCAtMCwwICsxLDMwIEBACi0r IyBDb3B5cmlnaHQgKGMpIDIwMTUgLSBSZWQgSGF0IEluYy4KLSsjCi0rIyBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBp dAotKyMgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkgdGhlCi0rIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2 ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyCi0rIyBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLiAgU2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9jb3B5bGVmdC9ncGwuaHRtbCBmb3IK LSsjIHRoZSBmdWxsIHRleHQgb2YgdGhlIGxpY2Vuc2UuCi0rCi0rIiIicGFja2FnZSBsYXlvdXQg bWFuYWdlbWVudCIiIgotKwotKwotK2Zyb20gcHlycGtnLmVycm9ycyBpbXBvcnQgTGF5b3V0RXJy b3IKLStmcm9tIC5iYXNlIGltcG9ydCBNZXRhTGF5b3V0Ci0rZnJvbSAubGF5b3V0cyBpbXBvcnQg RGlzdEdpdExheW91dCwgU1JQTUxheW91dCAjIG5vcWEKLSsKLSsKLStkZWYgYnVpbGQocGF0aCk6 Ci0rICAgICIiIgotKyAgICBUcmllcyB0byBjcmVhdGUgYSBsYXlvdXQgaW5zdGFuY2UgYmFzZWQg b24gTWV0YUxheW91dC5fbGF5b3V0cwotKyAgICBhbmQgd2lsbCByZXR1cm4gYW4gaW5zdGFuY2Ug aW4gdGhlIGZpcnN0IHN1Y2Nlc3NmdWxsIGF0dGVtcHQgdG8KLSsgICAgY3JlYXRlIGEgbmV3IG9i amVjdCBmcm9tIHRoZSBNZXRhTGF5b3V0Ll9sYXlvdXRzIGxpc3QuCi0rCi0rICAgIFJldHVybnMg Tm9uZSBpZiBubyBsYXlvdXRzIGNhbiBiZSBjcmVhdGVkLgotKyAgICAiIiIKLSsgICAgZm9yIGxh eW91dCBpbiBNZXRhTGF5b3V0Ll9sYXlvdXRzOgotKyAgICAgICAgdHJ5OgotKyAgICAgICAgICAg IHJldHVybiBsYXlvdXQuZnJvbV9wYXRoKHBhdGgpCi0rICAgICAgICBleGNlcHQgTGF5b3V0RXJy b3I6Ci0rICAgICAgICAgICAgY29udGludWUKLSsgICAgcmV0dXJuIE5vbmUKLWRpZmYgLS1naXQg YS9weXJwa2cvbGF5b3V0L2Jhc2UucHkgYi9weXJwa2cvbGF5b3V0L2Jhc2UucHkKLW5ldyBmaWxl IG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5kYjMwNTQwCi0tLS0gL2Rldi9udWxsCi0rKysg Yi9weXJwa2cvbGF5b3V0L2Jhc2UucHkKLUBAIC0wLDAgKzEsOTMgQEAKLSsjIENvcHlyaWdodCAo YykgMjAxNSAtIFJlZCBIYXQgSW5jLgotKyMKLSsjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3 YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Ci0rIyB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi eSB0aGUKLSsjIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0 aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIKLSsjIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uICBT ZWUgaHR0cDovL3d3dy5nbnUub3JnL2NvcHlsZWZ0L2dwbC5odG1sIGZvcgotKyMgdGhlIGZ1bGwg dGV4dCBvZiB0aGUgbGljZW5zZS4KLSsKLSsiIiJiYXNlIGFuZCBtZXRhIHBhY2thZ2UgbGF5b3V0 IGNsYXNzZXMiIiIKLSsKLSsKLStpbXBvcnQgb3MKLStpbXBvcnQgYWJjCi0rZnJvbSBhYmMgaW1w b3J0IGFic3RyYWN0bWV0aG9kLCBBQkNNZXRhCi0rCi0raW1wb3J0IHNpeAotKwotK2Zyb20gcHly cGtnLmVycm9ycyBpbXBvcnQgTGF5b3V0RXJyb3IKLSsKLSsKLStpZiBzaXguUFkyOgotKyAgICBB QkMgPSBhYmMuQUJDTWV0YSgnQUJDJywgKG9iamVjdCwpLCB7J19fc2xvdHNfXyc6ICgpfSkKLStl bHNlOgotKyAgICBBQkMgPSBhYmMuQUJDCi0rCi0rCi0rY2xhc3MgTWV0YUxheW91dCh0eXBlKToK LSsgICAgIiIiCi0rICAgIExheW91dCBtZXRhIGNsYXNzIHRoYXQga2VlcHMgdHJhY2sgb2YgYWxs IGxheW91dCBzdWJjbGFzc2VzLgotKwotKyAgICBDbGFzc2VzIGFyZSBhcHBlbmRlZCBpbiB0aGUg X2xheW91dHMgcHJvcGVydHkgaW4gb3JkZXIgb2YgY29kZSBleGVjdXRpb24uCi0rICAgICIiIgot KyAgICBkZWYgX19pbml0X18oY2xzLCBuYW1lLCBiYXNlcywgZGN0KToKLSsgICAgICAgICIiIgot KyAgICAgICAgVGhpcyBtZXRob2QgcmVnaXN0ZXJzIGEgc3ViY2xhc3MgaW4gYSBjbGFzcyBwcm9w ZXJ0eSAoX2xheW91dHMpCi0rICAgICAgICBzbyB0aG9zZSBjYW4gYmUgdXNlZCBhcyB2YWxpZCBs YXlvdXQgY2xhc3Nlcy4KLSsgICAgICAgICIiIgotKyAgICAgICAgaWYgbm90IGhhc2F0dHIoY2xz LCAnX2xheW91dHMnKToKLSsgICAgICAgICAgICBNZXRhTGF5b3V0Ll9sYXlvdXRzID0gW10KLSsg ICAgICAgIGlmIGNscyBub3QgaW4gY2xzLl9sYXlvdXRzIGFuZCBjbHMuX19uYW1lX18gIT0gJ0Jh c2VMYXlvdXQnOgotKyAgICAgICAgICAgIE1ldGFMYXlvdXQuX2xheW91dHMuYXBwZW5kKGNscykK LSsgICAgICAgIHN1cGVyKE1ldGFMYXlvdXQsIGNscykuX19pbml0X18obmFtZSwgYmFzZXMsIGRj dCkKLSsKLSsKLStjbGFzcyBBQkNNZXRhTGF5b3V0KE1ldGFMYXlvdXQsIEFCQ01ldGEpOgotKyAg ICAiIiIKLSsgICAgQSBtaXhpbiBtZXRhY2xhc3MgdG8gZW5hYmxlIHVzYWdlIG9mIGJvdGggTWV0 YWxheW91dCBhbmQgQUJDIG1ldGEgY2xhc3NlcyBhcyBhIHNpbmdsZSBtZXRhY2xhc3MuCi0rICAg ICIiIgotKyAgICBwYXNzCi0rCi0rCi0rQHNpeC5hZGRfbWV0YWNsYXNzKEFCQ01ldGFMYXlvdXQp Ci0rY2xhc3MgQmFzZUxheW91dChBQkMpOgotKyAgICAiIiIKLSsgICAgVGhlIGFic3RyYWN0IGNs YXNzIHRvIGJlIGluaGVyaXRlZCBmcm9tIHdoZW4gaW1wbGVtZXRpbmcgc3BlY2lmaWMgbGF5b3V0 cy4KLSsKLSsgICAgRXZlcnkgc3ViY2xhc3Mgd2lsbCBiZSByZWdpc3RlcmVkIGluIHRoZSBNZXRh TGF5b3V0IGNsYXNzLgotKwotKyAgICBJbmhlcml0ZWQgY2xhc3NlcyB3aWxsIGJlIHJlZ2lzdGVy ZWQgaW4gb3JkZXIgb3IgY29kZSBleGVjdXRpb24uCi0rICAgICIiIgotKyAgICByb290X2RpciA9 IE5vbmUKLSsgICAgc291cmNlZGlyID0gTm9uZQotKyAgICBzcGVjZGlyID0gTm9uZQotKyAgICBi dWlsZGRpciA9IE5vbmUKLSsgICAgcnBtZGlyID0gTm9uZQotKyAgICBzcmNycG1kaXIgPSBOb25l Ci0rICAgIHNvdXJjZXNfZmlsZV90ZW1wbGF0ZSA9IE5vbmUKLSsKLSsgICAgQGNsYXNzbWV0aG9k Ci0rICAgIEBhYnN0cmFjdG1ldGhvZAotKyAgICBkZWYgZnJvbV9wYXRoKGNscywgcGF0aCk6Ci0r ICAgICAgICAiIiIKLSsgICAgICAgIENsYXNzIGNvbnN0cnVjdG9yIGJhc2VkIG9uIGEgcGFja2Fn ZSBwYXRoLgotKwotKyAgICAgICAgVGhpcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbiBpcyBtYWRh dG9yeSBhbmQKLSsgICAgICAgIHNob3VsZCByZXR1cm4gYW4gaW5zdGFuY2Ugb2YgdGhlIG9iamVj dCBjbGFzcy4KLSsKLSsgICAgICAgIEl0IHNob3VsZCByZXR1cm4gTm9uZSBpZiBpdCBjYW4ndCBy ZWFkIHRoZSBwYXRoCi0rICAgICAgICBvciBpZiB0aGUgZGlyIHBhdGggY29udGFpbnMgYW4gaW52 YWxpZCBsYXlvdXQuCi0rICAgICAgICAiIiIKLSsgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0 cyhwYXRoKToKLSsgICAgICAgICAgICByYWlzZSBMYXlvdXRFcnJvcigncGFja2FnZSBwYXRoIGRv ZXMgbm90IGV4aXN0JykKLSsKLSsgICAgZGVmIGlzX3JldGlyZWQoc2VsZik6Ci0rICAgICAgICAi IiIKLSsgICAgICAgIENoZWNrcyB3aGV0aGVyIHBhY2thZ2Ugb3IgbW9kdWxlIGlzIGFscmVhZHkg cmV0aXJlZC4KLSsgICAgICAgIFRoZSBzdGF0ZSBpcyBpbmRpY2F0ZWQgYnkgcHJlc2VudCBvZiBm aWxlcyAnZGVhZC5wYWNrYWdlJwotKyAgICAgICAgb3IgJ2RlYWQubW9kdWxlJy4KLSsgICAgICAg ICIiIgotKyAgICAgICAgZm9yIGZuYW1lIGluIFsnZGVhZC5wYWNrYWdlJywgJ2RlYWQubW9kdWxl J106Ci0rICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoJyVzLyVzJyAlIChzZWxmLnJvb3Rf ZGlyLCBmbmFtZSkpOgotKyAgICAgICAgICAgICAgICByZXR1cm4gZm5hbWUKLSsgICAgICAgIHJl dHVybiBOb25lCi1kaWZmIC0tZ2l0IGEvcHlycGtnL2xheW91dC9sYXlvdXRzLnB5IGIvcHlycGtn L2xheW91dC9sYXlvdXRzLnB5Ci1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4u OTYxNDNiOQotLS0tIC9kZXYvbnVsbAotKysrIGIvcHlycGtnL2xheW91dC9sYXlvdXRzLnB5Ci1A QCAtMCwwICsxLDgwIEBACi0rIyBDb3B5cmlnaHQgKGMpIDIwMTUgLSBSZWQgSGF0IEluYy4KLSsj Ci0rIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeSBpdAotKyMgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCi0rIyBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyCi0r IyBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLiAgU2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9jb3B5 bGVmdC9ncGwuaHRtbCBmb3IKLSsjIHRoZSBmdWxsIHRleHQgb2YgdGhlIGxpY2Vuc2UuCi0rCi0r IiIicGFja2FnZSBsYXlvdXQgaW1wbGVtZW50YXRpb24iIiIKLSsKLSsKLStpbXBvcnQgb3MKLSsK LStmcm9tIC5iYXNlIGltcG9ydCBCYXNlTGF5b3V0Ci0rZnJvbSBweXJwa2cuZXJyb3JzIGltcG9y dCBMYXlvdXRFcnJvcgotKwotKwotK2NsYXNzIERpc3RHaXRMYXlvdXQoQmFzZUxheW91dCk6Ci0r ICAgICIiIgotKyAgICBUaGlzIGNsYXNzIHJlcHJlc2VudHMgYSBkaXN0LWdpdCBwYWNrYWdlIGxh eW91dC4KLSsgICAgIiIiCi0rICAgIGRlZiBfX2luaXRfXyhzZWxmLCByb290X2Rpcj1Ob25lLCBz b3VyY2VzX2ZpbGVfdGVtcGxhdGU9J3NvdXJjZXMnKToKLSsgICAgICAgICIiIgotKyAgICAgICAg RGVmYXVsdCBjbGFzcyBjb25zdHJ1Y3RvciB0byBjcmVhdGUgYSBuZXcgb2JqZWN0IGluc3RhbmNl LgotKyAgICAgICAgIiIiCi0rICAgICAgICBzZWxmLnJvb3RfZGlyID0gcm9vdF9kaXIKLSsgICAg ICAgIHNlbGYuc291cmNlZGlyID0gcm9vdF9kaXIKLSsgICAgICAgIHNlbGYuc3BlY2RpciA9IHJv b3RfZGlyCi0rICAgICAgICBzZWxmLmJ1aWxkZGlyID0gcm9vdF9kaXIKLSsgICAgICAgIHNlbGYu cnBtZGlyID0gcm9vdF9kaXIKLSsgICAgICAgIHNlbGYuc3JjcnBtZGlyID0gcm9vdF9kaXIKLSsg ICAgICAgIHNlbGYuc291cmNlc19maWxlX3RlbXBsYXRlID0gc291cmNlc19maWxlX3RlbXBsYXRl Ci0rCi0rICAgIEBjbGFzc21ldGhvZAotKyAgICBkZWYgZnJvbV9wYXRoKGNscywgcGF0aCk6Ci0r ICAgICAgICAiIiIKLSsgICAgICAgIENyZWF0ZXMgYSBuZXcgb2JqZWN0IGluc3RhbmNlIGZyb20g YSB2YWxpZCBwYXRoIGluIHRoZSBmaWxlIHN5c3RlbS4KLSsKLSsgICAgICAgIFJldHVybnMgbm9u ZSBpZiBwYXRoIG9yIHBhY2thZ2Ugc3RydWN0dXJlIGlzIGludmFsaWQuCi0rICAgICAgICAiIiIK LSsgICAgICAgIHN1cGVyKERpc3RHaXRMYXlvdXQsIGNscykuZnJvbV9wYXRoKHBhdGgpCi0rCi0r ICAgICAgICBpZiBsZW4oW2YgZm9yIGYgaW4gb3MubGlzdGRpcihwYXRoKSBpZiBmLmVuZHN3aXRo KCcuc3BlYycpXSkgPT0gMDoKLSsgICAgICAgICAgICByYWlzZSBMYXlvdXRFcnJvcignc3BlYyBm aWxlIG5vdCBmb3VuZC4nKQotKyAgICAgICAgc291cmNlcyA9ICdzb3VyY2VzJyBpZiBvcy5wYXRo LmV4aXN0cygnJXMvc291cmNlcycgJSBwYXRoKSBlbHNlIE5vbmUKLSsgICAgICAgIHJldHVybiBj bHMocm9vdF9kaXI9cGF0aCwgc291cmNlc19maWxlX3RlbXBsYXRlPXNvdXJjZXMpCi0rCi0rCi0r Y2xhc3MgU1JQTUxheW91dChCYXNlTGF5b3V0KToKLSsgICAgIiIiCi0rICAgIFRoaXMgY2xhc3Mg cmVwcmVzZW50cyBhbiBleHBvc2VkIHNvdXJjZSBSUE0gcGFja2FnZSBsYXlvdXQuCi0rICAgICIi IgotKyAgICBkZWYgX19pbml0X18oc2VsZiwgcm9vdF9kaXI9Tm9uZSwgc291cmNlc19maWxlX3Rl bXBsYXRlPScuezAucmVwb19uYW1lfS5tZXRhZGF0YScpOgotKyAgICAgICAgIiIiCi0rICAgICAg ICBEZWZhdWx0IGNsYXNzIGNvbnN0cnVjdG9yIHRvIGNyZWF0ZSBhIG5ldyBvYmplY3QgaW5zdGFu Y2UuCi0rICAgICAgICAiIiIKLSsgICAgICAgIHNlbGYucm9vdF9kaXIgPSByb290X2RpcgotKyAg ICAgICAgc2VsZi5zb3VyY2VkaXIgPSBvcy5wYXRoLmpvaW4ocm9vdF9kaXIsICdTT1VSQ0VTJykK LSsgICAgICAgIHNlbGYuc3BlY2RpciA9IG9zLnBhdGguam9pbihyb290X2RpciwgJ1NQRUNTJykK LSsgICAgICAgIHNlbGYuYnVpbGRkaXIgPSBvcy5wYXRoLmpvaW4ocm9vdF9kaXIsICdCVUlMRCcp Ci0rICAgICAgICBzZWxmLnJwbWRpciA9IG9zLnBhdGguam9pbihyb290X2RpciwgJ1JQTVMnKQot KyAgICAgICAgc2VsZi5zcmNycG1kaXIgPSBvcy5wYXRoLmpvaW4ocm9vdF9kaXIsICdTUlBNUycp Ci0rICAgICAgICBzZWxmLnNvdXJjZXNfZmlsZV90ZW1wbGF0ZSA9IHNvdXJjZXNfZmlsZV90ZW1w bGF0ZQotKwotKyAgICBAY2xhc3NtZXRob2QKLSsgICAgZGVmIGZyb21fcGF0aChjbHMsIHBhdGgp OgotKyAgICAgICAgIiIiCi0rICAgICAgICBDcmVhdGVzIGEgbmV3IG9iamVjdCBpbnN0YW5jZSBm cm9tIGEgdmFsaWQgcGF0aCBpbiB0aGUgZmlsZSBzeXN0ZW0uCi0rCi0rICAgICAgICBSZXR1cm5z IG5vbmUgaWYgcGF0aCBvciBwYWNrYWdlIHN0cnVjdHVyZSBpcyBpbnZhbGlkLgotKyAgICAgICAg IiIiCi0rICAgICAgICBzdXBlcihTUlBNTGF5b3V0LCBjbHMpLmZyb21fcGF0aChwYXRoKQotKwot KyAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihwYXRoLCAnU1BFQ1Mn KSk6Ci0rICAgICAgICAgICAgcmFpc2UgTGF5b3V0RXJyb3IoJ1NQRUNTIGRpciBub3QgZm91bmQu JykKLSsgICAgICAgIGlmIGxlbihbZiBmb3IgZiBpbiBvcy5saXN0ZGlyKG9zLnBhdGguam9pbihw YXRoLCAnU1BFQ1MnKSkgaWYgZi5lbmRzd2l0aCgnLnNwZWMnKV0pID09IDA6Ci0rICAgICAgICAg ICAgcmFpc2UgTGF5b3V0RXJyb3IoJ3NwZWMgZmlsZSBub3QgZm91bmQuJykKLSsgICAgICAgIGlm IGxlbihbZiBmb3IgZiBpbiBvcy5saXN0ZGlyKHBhdGgpIGlmIGYuZW5kc3dpdGgoJy5tZXRhZGF0 YScpXSkgPT0gMDoKLSsgICAgICAgICAgICByYWlzZSBMYXlvdXRFcnJvcignbWV0YWRhdGEgZmls ZSBub3QgZm91bmQuJykKLSsgICAgICAgIHJldHVybiBjbHMocm9vdF9kaXI9cGF0aCkKLWRpZmYg LS1naXQgYS90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL2RlYWQtbW9kdWxlL2RlYWQubW9kdWxlIGIv dGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kZWFkLW1vZHVsZS9kZWFkLm1vZHVsZQotbmV3IGZpbGUg bW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmU2OWRlMjkKLWRpZmYgLS1naXQgYS90ZXN0cy9m aXh0dXJlcy9sYXlvdXRzL2RlYWQtbW9kdWxlL2Zvb2Jhci5zcGVjIGIvdGVzdHMvZml4dHVyZXMv bGF5b3V0cy9kZWFkLW1vZHVsZS9mb29iYXIuc3BlYwotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWlu ZGV4IDAwMDAwMDAuLmU2OWRlMjkKLWRpZmYgLS1naXQgYS90ZXN0cy9maXh0dXJlcy9sYXlvdXRz L2RlYWQtcGFja2FnZS9kZWFkLnBhY2thZ2UgYi90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL2RlYWQt cGFja2FnZS9kZWFkLnBhY2thZ2UKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAw Li5lNjlkZTI5Ci1kaWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kZWFkLXBhY2th Z2UvZm9vYmFyLnNwZWMgYi90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL2RlYWQtcGFja2FnZS9mb29i YXIuc3BlYwotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmU2OWRlMjkKLWRp ZmYgLS1naXQgYS90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL2Rpc3QtZ2l0L2Zvb2Jhci5zcGVjIGIv dGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kaXN0LWdpdC9mb29iYXIuc3BlYwotbmV3IGZpbGUgbW9k ZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmU2OWRlMjkKLWRpZmYgLS1naXQgYS90ZXN0cy9maXh0 dXJlcy9sYXlvdXRzL2Rpc3QtZ2l0L2Zvb2Jhci50eHQgYi90ZXN0cy9maXh0dXJlcy9sYXlvdXRz L2Rpc3QtZ2l0L2Zvb2Jhci50eHQKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAw Li5lNjlkZTI5Ci1kaWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kaXN0LWdpdC9z b3VyY2VzIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9kaXN0LWdpdC9zb3VyY2VzCi1uZXcgZmls ZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uZTY5ZGUyOQotZGlmZiAtLWdpdCBhL3Rlc3Rz L2ZpeHR1cmVzL2xheW91dHMvc3BlY2xlc3MvLmdpdGtlZXAgYi90ZXN0cy9maXh0dXJlcy9sYXlv dXRzL3NwZWNsZXNzLy5naXRrZWVwCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAw MC4uZTY5ZGUyOQotZGlmZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFk LW1vZHVsZS8uZm9vYmFyLm1ldGFkYXRhIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRl YWQtbW9kdWxlLy5mb29iYXIubWV0YWRhdGEKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAw MDAwMDAwLi5lNjlkZTI5Ci1kaWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBt LWRlYWQtbW9kdWxlL1NPVVJDRVMvZm9vYmFyLWZpcnN0Y29tbWl0LnBhdGNoIGIvdGVzdHMvZml4 dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtbW9kdWxlL1NPVVJDRVMvZm9vYmFyLWZpcnN0Y29tbWl0 LnBhdGNoCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uZTY5ZGUyOQotZGlm ZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLW1vZHVsZS9TUEVDUy9m b29iYXIuc3BlYyBiL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLW1vZHVsZS9TUEVD Uy9mb29iYXIuc3BlYwotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmU2OWRl MjkKLWRpZmYgLS1naXQgYS90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1tb2R1bGUv ZGVhZC5tb2R1bGUgYi90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1tb2R1bGUvZGVh ZC5tb2R1bGUKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5lNjlkZTI5Ci1k aWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2FnZS8uZm9v YmFyLm1ldGFkYXRhIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2FnZS8u Zm9vYmFyLm1ldGFkYXRhCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uZTY5 ZGUyOQotZGlmZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLXBhY2th Z2UvU09VUkNFUy9mb29iYXItZmlyc3Rjb21taXQucGF0Y2ggYi90ZXN0cy9maXh0dXJlcy9sYXlv dXRzL3NycG0tZGVhZC1wYWNrYWdlL1NPVVJDRVMvZm9vYmFyLWZpcnN0Y29tbWl0LnBhdGNoCi1u ZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uZTY5ZGUyOQotZGlmZiAtLWdpdCBh L3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLXBhY2thZ2UvU1BFQ1MvZm9vYmFyLnNw ZWMgYi90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1wYWNrYWdlL1NQRUNTL2Zvb2Jh ci5zcGVjCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uZTY5ZGUyOQotZGlm ZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS1kZWFkLXBhY2thZ2UvZGVhZC5w YWNrYWdlIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2FnZS9kZWFkLnBh Y2thZ2UKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5lNjlkZTI5Ci1kaWZm IC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2FnZS9zcnBtLy5m b29iYXIubWV0YWRhdGEgYi90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1wYWNrYWdl L3NycG0vLmZvb2Jhci5tZXRhZGF0YQotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAw MDAuLmU2OWRlMjkKLWRpZmYgLS1naXQgYS90ZXN0cy9maXh0dXJlcy9sYXlvdXRzL3NycG0tZGVh ZC1wYWNrYWdlL3NycG0vU09VUkNFUy9mb29iYXItZmlyc3Rjb21taXQucGF0Y2ggYi90ZXN0cy9m aXh0dXJlcy9sYXlvdXRzL3NycG0tZGVhZC1wYWNrYWdlL3NycG0vU09VUkNFUy9mb29iYXItZmly c3Rjb21taXQucGF0Y2gKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5lNjlk ZTI5Ci1kaWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRlYWQtcGFja2Fn ZS9zcnBtL1NQRUNTL2Zvb2Jhci5zcGVjIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLWRl YWQtcGFja2FnZS9zcnBtL1NQRUNTL2Zvb2Jhci5zcGVjCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAot aW5kZXggMDAwMDAwMC4uZTY5ZGUyOQotZGlmZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91 dHMvc3JwbS1zcGVjbGVzcy8uZm9vYmFyLm1ldGFkYXRhIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0 cy9zcnBtLXNwZWNsZXNzLy5mb29iYXIubWV0YWRhdGEKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1p bmRleCAwMDAwMDAwLi5lNjlkZTI5Ci1kaWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0 cy9zcnBtLXNwZWNsZXNzL1NQRUNTLy5naXRrZWVwIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9z cnBtLXNwZWNsZXNzL1NQRUNTLy5naXRrZWVwCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXgg MDAwMDAwMC4uZTY5ZGUyOQotZGlmZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3Jw bS8uZm9vYmFyLm1ldGFkYXRhIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtLy5mb29iYXIu bWV0YWRhdGEKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5lNjlkZTI5Ci1k aWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtL1NPVVJDRVMvZm9vYmFyLWZp cnN0Y29tbWl0LnBhdGNoIGIvdGVzdHMvZml4dHVyZXMvbGF5b3V0cy9zcnBtL1NPVVJDRVMvZm9v YmFyLWZpcnN0Y29tbWl0LnBhdGNoCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAw MC4uZTY5ZGUyOQotZGlmZiAtLWdpdCBhL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS9TUEVD Uy9mb29iYXIuc3BlYyBiL3Rlc3RzL2ZpeHR1cmVzL2xheW91dHMvc3JwbS9TUEVDUy9mb29iYXIu c3BlYwotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmU2OWRlMjkKLWRpZmYg LS1naXQgYS90ZXN0cy90ZXN0X2NsaS5weSBiL3Rlc3RzL3Rlc3RfY2xpLnB5Ci1pbmRleCBhOGIz NGY0Li5lYjljNzllIDEwMDY0NAotLS0tIGEvdGVzdHMvdGVzdF9jbGkucHkKLSsrKyBiL3Rlc3Rz L3Rlc3RfY2xpLnB5Ci1AQCAtMTksNyArMTksNyBAQCBmcm9tIHNpeC5tb3ZlcyBpbXBvcnQgU3Ry aW5nSU8sIGNvbmZpZ3BhcnNlciwgaHR0cF9jbGllbnQKLSBpbXBvcnQga29qaV9jbGkubGliCi0g aW1wb3J0IHB5cnBrZy5jbGkKLSBpbXBvcnQgdXRpbHMKLS1mcm9tIHB5cnBrZyBpbXBvcnQgQ29t bWFuZHMsIE1vZHVsZW1kLCBycGtnRXJyb3IKLStmcm9tIHB5cnBrZyBpbXBvcnQgQ29tbWFuZHMs IE1vZHVsZW1kLCBycGtnRXJyb3IsIGxheW91dAotIGZyb20gdXRpbHMgaW1wb3J0IENvbW1hbmRU ZXN0Q2FzZSwgRmFrZVRocmVhZFBvb2wKLSAKLSB0cnk6Ci1AQCAtNjQsNiArNjQsMTEgQEAgZGVm IG1vY2tfZ2V0X3JwbV9wYWNrYWdlX25hbWUoc2VsZiwgcnBtX2ZpbGUpOgotICAgICByZXR1cm4o b3MucGF0aC5iYXNlbmFtZShycG1fZmlsZSlbOi1sZW4oJy5zcmMucnBtJyldKQotIAotIAotK2Ns YXNzIE1vY2tMYXlvdXQobGF5b3V0LkRpc3RHaXRMYXlvdXQpOgotKyAgICBkZWYgaXNfcmV0aXJl ZChzZWxmKToKLSsgICAgICAgIHJldHVybiBOb25lCi0rCi0rCi0gY2xhc3MgQ2xpVGVzdENhc2Uo Q29tbWFuZFRlc3RDYXNlKToKLSAKLSAgICAgZGVmIG5ld19jbGkoc2VsZiwgY2ZnPU5vbmUpOgot QEAgLTE1NjEsMTEgKzE1NjYsMTMgQEAgY2xhc3MgVGVzdE1vY2tidWlsZChDbGlUZXN0Q2FzZSk6 Ci0gICAgIEBwYXRjaCgnb3MucGF0aC5leGlzdHMnLCByZXR1cm5fdmFsdWU9RmFsc2UpCi0gICAg IGRlZiB0ZXN0X3VzZV9tb2NrX2NvbmZpZ19nb3RfZnJvbV9rb2ppKAotICAgICAgICAgICAgIHNl bGYsIGV4aXN0cywgY29uZmlnX2Rpcl9vdGhlciwgY29uZmlnX2Rpcl9iYXNpYyk6Ci0tICAgICAg ICBjb25maWdfZGlyX2Jhc2ljLnJldHVybl92YWx1ZSA9ICcvcGF0aC90by9jb25maWctZGlyJwot KyAgICAgICAgbW9ja19sYXlvdXQgPSBsYXlvdXQuRGlzdEdpdExheW91dChyb290X2Rpcj1zZWxm LmNsb25lZF9yZXBvX3BhdGgpCi0rICAgICAgICB3aXRoIHBhdGNoKCdweXJwa2cubGF5b3V0LmJ1 aWxkJywgcmV0dXJuX3ZhbHVlPW1vY2tfbGF5b3V0KToKLSsgICAgICAgICAgICBjb25maWdfZGly X2Jhc2ljLnJldHVybl92YWx1ZSA9ICcvcGF0aC90by9jb25maWctZGlyJwotIAotLSAgICAgICAg Y2xpX2NtZCA9IFsncnBrZycsICctLXBhdGgnLCBzZWxmLmNsb25lZF9yZXBvX3BhdGgsCi0tICAg ICAgICAgICAgICAgICAgICctLXJlbGVhc2UnLCAncmhlbC03JywgJ21vY2tidWlsZCddCi0tICAg ICAgICBzZWxmLm1vY2tidWlsZChjbGlfY21kKQotKyAgICAgICAgICAgIGNsaV9jbWQgPSBbJ3Jw a2cnLCAnLS1wYXRoJywgc2VsZi5jbG9uZWRfcmVwb19wYXRoLAotKyAgICAgICAgICAgICAgICAg ICAgICAgJy0tcmVsZWFzZScsICdyaGVsLTcnLCAnbW9ja2J1aWxkJ10KLSsgICAgICAgICAgICBz ZWxmLm1vY2tidWlsZChjbGlfY21kKQotIAotICAgICAgICAgYXJncywga3dhcmdzID0gc2VsZi5t b2NrX3J1bl9jb21tYW5kLmNhbGxfYXJncwotICAgICAgICAgY21kX3RvX2V4ZWN1dGUgPSBhcmdz WzBdCi1AQCAtMzQ0OSw4ICszNDU2LDkgQEAgY2xhc3MgVGVzdEJ1aWxkUGFja2FnZShGYWtlS29q aUNyZWRzLCBDbGlUZXN0Q2FzZSk6Ci0gICAgIEBwYXRjaCgncHlycGtnLkNvbW1hbmRzLm52cics IG5ld19jYWxsYWJsZT1Qcm9wZXJ0eU1vY2spCi0gICAgIEBwYXRjaCgncHlycGtnLkNvbW1hbmRz Ll9ydW5fY29tbWFuZCcpCi0gICAgIGRlZiB0ZXN0X29wdGlvbl9zcnBtX2J5X2dlbmVyYXRlX3Ny cG1fZnJvbV9yZXBvKHNlbGYsIF9ydW5fY29tbWFuZCwgbnZyKToKLS0gICAgICAgIG52ci5yZXR1 cm5fdmFsdWUgPSAnZG9jcGtnLTAuMS0xLmZjMjgnCi0tICAgICAgICBzZWxmLmFzc2VydF9vcHRp b25fc3JwbV91c2UoKQotKyAgICAgICAgd2l0aCBwYXRjaCgncHlycGtnLmxheW91dC5idWlsZCcs IHJldHVybl92YWx1ZT1Nb2NrTGF5b3V0KHJvb3RfZGlyPXNlbGYuY2xvbmVkX3JlcG9fcGF0aCkp OgotKyAgICAgICAgICAgIG52ci5yZXR1cm5fdmFsdWUgPSAnZG9jcGtnLTAuMS0xLmZjMjgnCi0r ICAgICAgICAgICAgc2VsZi5hc3NlcnRfb3B0aW9uX3NycG1fdXNlKCkKLSAKLSAgICAgICAgIGFy Z3MsIGt3YXJncyA9IF9ydW5fY29tbWFuZC5jYWxsX2FyZ3MKLSAgICAgICAgIHNlbGYuYXNzZXJ0 RXF1YWwoeydzaGVsbCc6IFRydWV9LCBrd2FyZ3MpCi1kaWZmIC0tZ2l0IGEvdGVzdHMvdGVzdF9s YXlvdXRfZGlzdGdpdC5weSBiL3Rlc3RzL3Rlc3RfbGF5b3V0X2Rpc3RnaXQucHkKLW5ldyBmaWxl IG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5hNGM0OTQ0Ci0tLS0gL2Rldi9udWxsCi0rKysg Yi90ZXN0cy90ZXN0X2xheW91dF9kaXN0Z2l0LnB5Ci1AQCAtMCwwICsxLDUwIEBACi0raW1wb3J0 IG9zCi0raW1wb3J0IHVuaXR0ZXN0Ci0rCi0rZnJvbSBweXJwa2cubGF5b3V0IGltcG9ydCBsYXlv dXRzCi0rZnJvbSBweXJwa2cgaW1wb3J0IGVycm9ycwotKwotKwotK2ZpeHR1cmVzX2RpciA9IG9z LnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnZml4dHVyZXMnKQotKwotKwot K2NsYXNzIERpc3RHaXRMYXlvdXRUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0rICAgIGRl ZiBzZXRVcChzZWxmKToKLSsgICAgICAgIHNlbGYud29ya2RpciA9IG9zLnBhdGguam9pbihmaXh0 dXJlc19kaXIsICdsYXlvdXRzL2Rpc3QtZ2l0JykKLSsgICAgICAgIHNlbGYubGF5b3V0ID0gbGF5 b3V0cy5EaXN0R2l0TGF5b3V0LmZyb21fcGF0aChzZWxmLndvcmtkaXIpCi0rCi0rICAgIGRlZiB0 ZXN0X2xheW91dF9kYXRhKHNlbGYpOgotKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxh eW91dC5zb3VyY2VkaXIsIHNlbGYud29ya2RpcikKLSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo c2VsZi5sYXlvdXQuc3BlY2Rpciwgc2VsZi53b3JrZGlyKQotKyAgICAgICAgc2VsZi5hc3NlcnRF cXVhbChzZWxmLmxheW91dC5zcGVjZGlyLCBzZWxmLndvcmtkaXIpCi0rICAgICAgICBzZWxmLmFz c2VydEVxdWFsKHNlbGYubGF5b3V0LnJvb3RfZGlyLCBzZWxmLndvcmtkaXIpCi0rICAgICAgICBz ZWxmLmFzc2VydEVxdWFsKHNlbGYubGF5b3V0LmJ1aWxkZGlyLCBzZWxmLndvcmtkaXIpCi0rICAg ICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubGF5b3V0LnJwbWRpciwgc2VsZi53b3JrZGlyKQot KyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxheW91dC5zcmNycG1kaXIsIHNlbGYud29y a2RpcikKLSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5sYXlvdXQuc291cmNlc19maWxl X3RlbXBsYXRlLCAnc291cmNlcycpCi0rCi0rICAgIGRlZiB0ZXN0X2xheW91dF9yZXRpcmVkKHNl bGYpOgotKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChOb25lLCBzZWxmLmxheW91dC5pc19yZXRp cmVkKCkpCi0rCi0rCi0rY2xhc3MgRGlzdEdpdExheW91dEVycm9yc1Rlc3RDYXNlKHVuaXR0ZXN0 LlRlc3RDYXNlKToKLSsgICAgZGVmIHNldFVwKHNlbGYpOgotKyAgICAgICAgc2VsZi53b3JrZGly ID0gb3MucGF0aC5qb2luKGZpeHR1cmVzX2RpciwgJ2xheW91dHMnKQotKwotKyAgICBkZWYgdGVz dF9wYXRoX2Vycm9yKHNlbGYpOgotKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhlcnJv cnMuTGF5b3V0RXJyb3IpIGFzIGU6Ci0rICAgICAgICAgICAgbGF5b3V0cy5EaXN0R2l0TGF5b3V0 LmZyb21fcGF0aChvcy5wYXRoLmpvaW4oc2VsZi53b3JrZGlyLCAnbm90Zm91bmQnKSkKLSsgICAg ICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3BhY2thZ2UgcGF0aCBkb2VzIG5vdCBleGlzdCcsIGUuZXhj ZXB0aW9uLmFyZ3NbMF0pCi0rCi0rICAgIGRlZiB0ZXN0X3NwZWNsZXNzX2Vycm9yKHNlbGYpOgot KyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhlcnJvcnMuTGF5b3V0RXJyb3IpIGFzIGU6 Ci0rICAgICAgICAgICAgbGF5b3V0cy5EaXN0R2l0TGF5b3V0LmZyb21fcGF0aChvcy5wYXRoLmpv aW4oc2VsZi53b3JrZGlyLCAnc3BlY2xlc3MnKSkKLSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo J3NwZWMgZmlsZSBub3QgZm91bmQuJywgZS5leGNlcHRpb24uYXJnc1swXSkKLSsKLSsgICAgZGVm IHRlc3RfZGVhZF9tb2R1bGVfZXJyb3Ioc2VsZik6Ci0rICAgICAgICBsYXlvdXQgPSBsYXlvdXRz LkRpc3RHaXRMYXlvdXQuZnJvbV9wYXRoKG9zLnBhdGguam9pbihzZWxmLndvcmtkaXIsICdkZWFk LW1vZHVsZScpKQotKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnZGVhZC5tb2R1bGUnLCBsYXlv dXQuaXNfcmV0aXJlZCgpKQotKwotKyAgICBkZWYgdGVzdF9kZWFkX3BhY2thZ2VfZXJyb3Ioc2Vs Zik6Ci0rICAgICAgICBsYXlvdXQgPSBsYXlvdXRzLkRpc3RHaXRMYXlvdXQuZnJvbV9wYXRoKG9z LnBhdGguam9pbihzZWxmLndvcmtkaXIsICdkZWFkLXBhY2thZ2UnKSkKLSsgICAgICAgIHNlbGYu YXNzZXJ0RXF1YWwoJ2RlYWQucGFja2FnZScsIGxheW91dC5pc19yZXRpcmVkKCkpCi1kaWZmIC0t Z2l0IGEvdGVzdHMvdGVzdF9sYXlvdXRfc3JwbS5weSBiL3Rlc3RzL3Rlc3RfbGF5b3V0X3NycG0u cHkKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi41NjI0MDZmCi0tLS0gL2Rl di9udWxsCi0rKysgYi90ZXN0cy90ZXN0X2xheW91dF9zcnBtLnB5Ci1AQCAtMCwwICsxLDQ5IEBA Ci0raW1wb3J0IG9zCi0raW1wb3J0IHVuaXR0ZXN0Ci0rCi0rZnJvbSBweXJwa2cubGF5b3V0IGlt cG9ydCBsYXlvdXRzCi0rZnJvbSBweXJwa2cgaW1wb3J0IGVycm9ycwotKwotKwotK2ZpeHR1cmVz X2RpciA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnZml4dHVyZXMn KQotKwotKwotK2NsYXNzIFNSUE1MYXlvdXRUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0r ICAgIGRlZiBzZXRVcChzZWxmKToKLSsgICAgICAgIHNlbGYud29ya2RpciA9IG9zLnBhdGguam9p bihmaXh0dXJlc19kaXIsICdsYXlvdXRzL3NycG0nKQotKyAgICAgICAgc2VsZi5sYXlvdXQgPSBs YXlvdXRzLlNSUE1MYXlvdXQuZnJvbV9wYXRoKHNlbGYud29ya2RpcikKLSsKLSsgICAgZGVmIHRl c3RfbGF5b3V0X2RhdGEoc2VsZik6Ci0rICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubGF5 b3V0LnNvdXJjZWRpciwgb3MucGF0aC5qb2luKHNlbGYud29ya2RpciwgJ1NPVVJDRVMnKSkKLSsg ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5sYXlvdXQuc3BlY2Rpciwgb3MucGF0aC5qb2lu KHNlbGYud29ya2RpciwgJ1NQRUNTJykpCi0rICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYu bGF5b3V0LnJvb3RfZGlyLCBzZWxmLndvcmtkaXIpCi0rICAgICAgICBzZWxmLmFzc2VydEVxdWFs KHNlbGYubGF5b3V0LmJ1aWxkZGlyLCBvcy5wYXRoLmpvaW4oc2VsZi53b3JrZGlyLCAnQlVJTEQn KSkKLSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5sYXlvdXQucnBtZGlyLCBvcy5wYXRo LmpvaW4oc2VsZi53b3JrZGlyLCAnUlBNUycpKQotKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChz ZWxmLmxheW91dC5zcmNycG1kaXIsIG9zLnBhdGguam9pbihzZWxmLndvcmtkaXIsICdTUlBNUycp KQotKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxheW91dC5zb3VyY2VzX2ZpbGVfdGVt cGxhdGUsICcuezAucmVwb19uYW1lfS5tZXRhZGF0YScpCi0rCi0rICAgIGRlZiB0ZXN0X2xheW91 dF9yZXRpcmVkKHNlbGYpOgotKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChOb25lLCBzZWxmLmxh eW91dC5pc19yZXRpcmVkKCkpCi0rCi0rCi0rY2xhc3MgU1JQTUxheW91dEVycm9yc1Rlc3RDYXNl KHVuaXR0ZXN0LlRlc3RDYXNlKToKLSsgICAgZGVmIHNldFVwKHNlbGYpOgotKyAgICAgICAgc2Vs Zi53b3JrZGlyID0gb3MucGF0aC5qb2luKGZpeHR1cmVzX2RpciwgJ2xheW91dHMnKQotKwotKyAg ICBkZWYgdGVzdF9wYXRoX2Vycm9yKHNlbGYpOgotKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJh aXNlcyhlcnJvcnMuTGF5b3V0RXJyb3IpIGFzIGU6Ci0rICAgICAgICAgICAgbGF5b3V0cy5TUlBN TGF5b3V0LmZyb21fcGF0aChvcy5wYXRoLmpvaW4oc2VsZi53b3JrZGlyLCAnbm90Zm91bmQnKSkK LSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3BhY2thZ2UgcGF0aCBkb2VzIG5vdCBleGlzdCcs IGUuZXhjZXB0aW9uLmFyZ3NbMF0pCi0rCi0rICAgIGRlZiB0ZXN0X3NwZWNsZXNzX2Vycm9yKHNl bGYpOgotKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhlcnJvcnMuTGF5b3V0RXJyb3Ip IGFzIGU6Ci0rICAgICAgICAgICAgbGF5b3V0cy5TUlBNTGF5b3V0LmZyb21fcGF0aChvcy5wYXRo LmpvaW4oc2VsZi53b3JrZGlyLCAnc3JwbS1zcGVjbGVzcycpKQotKyAgICAgICAgc2VsZi5hc3Nl cnRFcXVhbCgnc3BlYyBmaWxlIG5vdCBmb3VuZC4nLCBlLmV4Y2VwdGlvbi5hcmdzWzBdKQotKwot KyAgICBkZWYgdGVzdF9kZWFkX21vZHVsZV9lcnJvcihzZWxmKToKLSsgICAgICAgIGxheW91dCA9 IGxheW91dHMuU1JQTUxheW91dC5mcm9tX3BhdGgob3MucGF0aC5qb2luKHNlbGYud29ya2Rpciwg J3NycG0tZGVhZC1tb2R1bGUnKSkKLSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2RlYWQubW9k dWxlJywgbGF5b3V0LmlzX3JldGlyZWQoKSkKLSsKLSsgICAgZGVmIHRlc3RfZGVhZF9wYWNrYWdl X2Vycm9yKHNlbGYpOgotKyAgICAgICAgbGF5b3V0ID0gbGF5b3V0cy5TUlBNTGF5b3V0LmZyb21f cGF0aChvcy5wYXRoLmpvaW4oc2VsZi53b3JrZGlyLCAnc3JwbS1kZWFkLXBhY2thZ2UnKSkKLSsg ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2RlYWQucGFja2FnZScsIGxheW91dC5pc19yZXRpcmVk KCkpCi0tLSAKLTIuMjYuMgotCgpkaWZmIC0tZ2l0IGEvMDAwNS1jbG9nLXRlc3RzLXdvcmthcm91 bmQucGF0Y2ggYi8wMDA1LWNsb2ctdGVzdHMtd29ya2Fyb3VuZC5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggYzgwYWRjYi4uMDAwMDAwMAotLS0gYS8wMDA1LWNsb2ctdGVzdHMt d29ya2Fyb3VuZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM0ICswLDAgQEAKLUZyb20gNzZl Y2NlYTczMDQ0NmE0NGUxMWE0ZDg1MTQ2NjY2MjIwNzYzY2JmZiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKLUZyb206ID0/VVRGLTg/cT9PbmQ9QzU9OTllaj0yME5vc2VrPz0gPG9ub3Nla0ByZWRo YXQuY29tPgotRGF0ZTogV2VkLCA1IEF1ZyAyMDIwIDAxOjA4OjI1ICswMDAwCi1TdWJqZWN0OiBb UEFUQ0hdIFJlLWVuYWJsZSBjbG9nIHRlc3RzCi1NSU1FLVZlcnNpb246IDEuMAotQ29udGVudC1U eXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVyLUVuY29kaW5n OiA4Yml0Ci0KLUFwcGxpZWQgd29ya2Fyb3VuZCBkZXNjcmliZWQgaGVyZToKLWh0dHBzOi8vZ2l0 aHViLmNvbS9ycG0tc29mdHdhcmUtbWFuYWdlbWVudC9ycG0vaXNzdWVzLzEzMDEKLQotU2lnbmVk LW9mZi1ieTogT25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+Ci0tLS0KLSBweXJwa2cv X19pbml0X18ucHkgfCA1ICsrKysrCi0gdGVzdHMvdGVzdF9jbGkucHkgIHwgNiAtLS0tLS0KLSAy IGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKLQotZGlmZiAt LWdpdCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQotaW5kZXggNmEy NDAzMy4uYWQ1MzI1NyAxMDA2NDQKLS0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQotKysrIGIvcHly cGtnL19faW5pdF9fLnB5Ci1AQCAtMjMyOCw3ICsyMzI4LDEyIEBAIGNsYXNzIENvbW1hbmRzKG9i amVjdCk6Ci0gICAgICAgICAiIiJXcml0ZSB0aGUgbGF0ZXN0IHNwZWMgY2hhbmdlbG9nIGVudHJ5 IHRvIGEgY2xvZyBmaWxlIiIiCi0gCi0gICAgICAgICBzcGVjX2ZpbGUgPSBvcy5wYXRoLmpvaW4o c2VsZi5wYXRoLCBzZWxmLnNwZWMpCi0rICAgICAgICAjIFRPRE86IHJlbW92ZSB3aGVuIGZpeGVk Ci0rICAgICAgICAjIENvbW1hbmQgY29udGFpbnMgd29ya2Fyb3VuZCAodW5kZWZpbmVzIF9jaGFu Z2Vsb2dfdHJpbXRpbWUpIGRlc2NyaWJlZCBhdDoKLSsgICAgICAgICMgaHR0cHM6Ly9naXRodWIu Y29tL3JwbS1zb2Z0d2FyZS1tYW5hZ2VtZW50L3JwbS9pc3N1ZXMvMTMwMQotKyAgICAgICAgIyBJ dCBjYXVzZWQsIHRoYXQgb2xkZXIgY2hhbmdlbG9nIHJlY29yZHMgd2VyZSBub3QgZGlzcGxheWVk LgotICAgICAgICAgY21kID0gWydycG0nXSArIHNlbGYucnBtZGVmaW5lcyArIFsnLXEnLCAnLS1x ZicsICciJXtDSEFOR0VMT0dURVhUfVxuIicsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICctLXVuZGVmaW5lJywgJyJfY2hhbmdlbG9nX3RyaW10aW1lIicsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICctLXNwZWNmaWxlJywg JyIlcyInICUgc3BlY19maWxlXQotICAgICAgICAgcHJvYyA9IHN1YnByb2Nlc3MuUG9wZW4oJyAn LmpvaW4oY21kKSwgc2hlbGw9VHJ1ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUsCgpkaWZmIC0t Z2l0IGEvMDAwNi1Ta2lwLXNvdXJjZXMtZmlsZS13aGVuLWl0LWlzLW1pc3NpbmcucGF0Y2ggYi8w MDA2LVNraXAtc291cmNlcy1maWxlLXdoZW4taXQtaXMtbWlzc2luZy5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMGU3Y2RlOS4uMDAwMDAwMAotLS0gYS8wMDA2LVNraXAtc291 cmNlcy1maWxlLXdoZW4taXQtaXMtbWlzc2luZy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM0 ICswLDAgQEAKLUZyb20gM2FmNTVjMDhmNDU2M2I0NDA0YzUwOWFiZjU0MDJlMzBjOWM1OGJkYSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9PbmQ9QzU9OTllaj0yME5v c2VrPz0gPG9ub3Nla0ByZWRoYXQuY29tPgotRGF0ZTogV2VkLCAxMiBBdWcgMjAyMCAwMDo0Mjoy NSArMDAwMAotU3ViamVjdDogW1BBVENIXSBTa2lwICdzb3VyY2VzJyBmaWxlIHdoZW4gaXQgaXMg bWlzc2luZwotTUlNRS1WZXJzaW9uOiAxLjAKLUNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh cnNldD1VVEYtOAotQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAotCi1KSVJBOiBSSEVM Q01QLTE5NjgKLVJlc29sdmVzOiByaGJ6IzE4Njc0NDAKLVJlc29sdmVzOiByaGJ6IzE4Njk4NDgK LQotU2lnbmVkLW9mZi1ieTogT25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+Ci0tLS0K LSBweXJwa2cvbGF5b3V0L2xheW91dHMucHkgfCAzICstLQotIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3B5cnBrZy9sYXlvdXQv bGF5b3V0cy5weSBiL3B5cnBrZy9sYXlvdXQvbGF5b3V0cy5weQotaW5kZXggNzMyNDcwOC4uZmU5 MWI4YyAxMDA2NDQKLS0tLSBhL3B5cnBrZy9sYXlvdXQvbGF5b3V0cy5weQotKysrIGIvcHlycGtn L2xheW91dC9sYXlvdXRzLnB5Ci1AQCAtNDIsOCArNDIsNyBAQCBjbGFzcyBEaXN0R2l0TGF5b3V0 KEJhc2VMYXlvdXQpOgotIAotICAgICAgICAgaWYgbGVuKFtmIGZvciBmIGluIG9zLmxpc3RkaXIo cGF0aCkgaWYgZi5lbmRzd2l0aCgnLnNwZWMnKV0pID09IDA6Ci0gICAgICAgICAgICAgcmFpc2Ug TGF5b3V0RXJyb3IoJ3NwZWMgZmlsZSBub3QgZm91bmQuJykKLS0gICAgICAgIHNvdXJjZXMgPSAn c291cmNlcycgaWYgb3MucGF0aC5leGlzdHMoJyVzL3NvdXJjZXMnICUgcGF0aCkgZWxzZSBOb25l Ci0tICAgICAgICByZXR1cm4gY2xzKHJvb3RfZGlyPXBhdGgsIHNvdXJjZXNfZmlsZV90ZW1wbGF0 ZT1zb3VyY2VzKQotKyAgICAgICAgcmV0dXJuIGNscyhyb290X2Rpcj1wYXRoKQotIAotIAotIGNs YXNzIFNSUE1MYXlvdXQoQmFzZUxheW91dCk6Ci0tLSAKLTIuMjYuMgotCgpkaWZmIC0tZ2l0IGEv cnBrZy5zcGVjIGIvcnBrZy5zcGVjCmluZGV4IGE0NzY3YWMuLjdkMTk0MDYgMTAwNjQ0Ci0tLSBh L3Jwa2cuc3BlYworKysgYi9ycGtnLnNwZWMKQEAgLTEsNiArMSw2IEBACiBOYW1lOiAgICAgICAg ICAgcnBrZwotVmVyc2lvbjogICAgICAgIDEuNjAKLVJlbGVhc2U6ICAgICAgICA4JXs/ZGlzdH0K K1ZlcnNpb246ICAgICAgICAxLjYxCitSZWxlYXNlOiAgICAgICAgMSV7P2Rpc3R9CiAKIFN1bW1h cnk6ICAgICAgICBQeXRob24gbGlicmFyeSBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBycG0rZ2l0CiBM aWNlbnNlOiAgICAgICAgR1BMdjIrIGFuZCBMR1BMdjIKQEAgLTE3LDEyICsxNyw3IEBAIFNvdXJj ZTA6ICAgICAgICBodHRwczovL3BhZ3VyZS5pby9yZWxlYXNlcy9ycGtnLyV7bmFtZX0tJXt2ZXJz aW9ufS50YXIuZ3oKICMgYW5kIHRoZXJlIGlzIG9ubHkgb2xkIHJwbS1weXRob24gcGFja2FnZSBp biBFTDYgYW5kIDcsIHNvIGp1c3Qgc2ltcGx5IHRvCiAjIHJlbW92ZSBycG0tcHktaW5zdGFsbGVy IGZvciBub3cuCiBQYXRjaDA6ICAgICAgICAgcmVtb3ZlLWtvamktYW5kLXJwbS1weS1pbnN0YWxs ZXItZnJvbS1yZXF1aXJlcy5wYXRjaAotUGF0Y2gxOiAgICAgICAgIDAwMDEtUmVwYWlyLWRvd25s b2FkaW5nLXNvdXJjZXMtaW50by1leHRlcm5hbC1kaXJlY3RvcnkucGF0Y2gKLVBhdGNoMjogICAg ICAgICAwMDAyLVJlcGFpci1jb21wYXRpYmxlLWZvcm1hdHRpbmctZm9yLVB5dGhvbi0yLjYucGF0 Y2gKLVBhdGNoMzogICAgICAgICAwMDAzLVN3aXRjaC1mcm9tLWtyYl9sb2dpbi10by1nc3NhcGlf bG9naW4ucGF0Y2gKLVBhdGNoNDogICAgICAgICAwMDA0LWFkZGVkLWEtZXh0ZW5kYWJsZS1sYXlv dXQtbW9kdWxlLXRvLWRlYWwtd2l0aC1kaWZmZXIucGF0Y2gKLVBhdGNoNTogICAgICAgICAwMDA1 LWNsb2ctdGVzdHMtd29ya2Fyb3VuZC5wYXRjaAotUGF0Y2g2OiAgICAgICAgIDAwMDYtU2tpcC1z b3VyY2VzLWZpbGUtd2hlbi1pdC1pcy1taXNzaW5nLnBhdGNoCitQYXRjaDE6ICAgICAgICAgMDAw MS1Eby1ub3QtdXNlLXB5dGVzdC1yZWxhdGVkLWRlcGVuZGVuY2llcy10ZW1wb3JhcmlseS5wYXRj aAogCiAlaWYgMCV7P2ZlZG9yYX0gfHwgMCV7P3JoZWx9ID4gNwogIyBEaXNhYmxlIHB5dGhvbjIg YnVpbGQgYnkgZGVmYXVsdApAQCAtMjc0LDYgKzI2OSwyOSBAQCBub3NldGVzdHMgdGVzdHMKIAog CiAlY2hhbmdlbG9nCisqIE1vbiBTZXAgMDcgMjAyMCBPbmTFmWVqIE5vc2VrIDxvbm9zZWtAcmVk aGF0LmNvbT4gLSAxLjYxLTEKKy0gUHl0ZXN0IHVwZGF0ZSBhbmQgTUFOSUZFU1QuaW4gcHJ1bmUg KG9ub3NlaykKKy0gUmUtZW5hYmxlIGNsb2cgdGVzdHMgKG9ub3NlaykKKy0gU2tpcCBkaXJlY3Rv cmllcyBpbnNpZGUgb2YgaW1wb3J0ZWQgc3JwbSBmaWxlIC0gcmhieiMxODY2Mjk3IChvbm9zZWsp CistIFNraXAgJ3NvdXJjZXMnIGZpbGUgd2hlbiBpdCBpcyBtaXNzaW5nIC0gcmhieiMxODY3NDQw IChvbm9zZWspCistIE5ldyBsYXlvdXQgZm9yIHJldGlyZWQgcGFja2FnZXMgLSByaGJ6IzE4Njc4 MjIgKG9ub3NlaykKKy0gYWRkZWQgYSBleHRlbmRhYmxlIGxheW91dCBtb2R1bGUgdG8gZGVhbCB3 aXRoIGRpZmZlcmVudCBwYWNrYWdlIGxheW91dHMKKyAgd2l0aGluIHRoZSBDTEkgKDIxODM1MDYr b2RyYSkKKy0gQWRkIChvbm9zZWspCistIFB5dGVzdCByZXBsYWNlcyBub3NldGVzdHMgLSAjNTAx IChvbm9zZWspCistIERpc2FibGUgc29tZSB0ZXN0IGZvciAnY2xvZycgZnVuY3Rpb25hbGl0eSAo b25vc2VrKQorLSBTdWdnZXN0IGEgd2F5IHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggLSB1cGRhdGUg KG9ub3NlaykKKy0gU3VnZ2VzdCBhIHdheSB0byB0cmFjayByZW1vdGUgYnJhbmNoIGluIHRoZSBl cnJvciBsb2cgKGNxaSkKKy0gUmVtb3ZlIGRlcHJlY2F0ZWQgc3VwcG9ydCBmb3Iga29qaWNvbmZp ZyAob25vc2VrKQorLSBTd2l0Y2ggZnJvbSBrcmJfbG9naW4gdG8gZ3NzYXBpX2xvZ2luIC0gcmhi eiMxODMwNDMwIChvbm9zZWspCistIERpc2FibGUgdGVzdCBtZXRob2QncyBkb2NzdHJpbmcgaW4g bm9zZXRlc3RzIGxpc3QgKG9ub3NlaykKKy0gQ2hlY2sgcmVwbyBuYW1lIGZvciBjb3JyZWN0IGZv cm1hdCAob25vc2VrKQorLSBVbml0dGVzdHMgZm9yIHBhc3NpbmcgYWRkaXRpb25hbCBhcmd1bWVu dHMgKG9ub3NlaykKKy0gUGFzc2luZyBhZGRpdGlvbmFsIGFyZ3VtZW50cyB0byB1bmRlcmxheWlu ZyBjb21tYW5kcyAtICM0MzIgKG9ub3NlaykKKy0gVXBkYXRlZCBzdXBwb3J0ZWQgcGxhZm9ybXMg aW4gZG9jdW1lbnRhdGlvbiAob25vc2VrKQorLSBSZXBhaXIgY29tcGF0aWJsZSBmb3JtYXR0aW5n IGZvciBQeXRob24gMi42IChvbm9zZWspCistIFJlcGFpciBkb3dubG9hZGluZyBzb3VyY2VzIGlu dG8gZXh0ZXJuYWwgZGlyZWN0b3J5IChvbm9zZWspCisKICogTW9uIEF1ZyAzMSAyMDIwIE9uZMWZ ZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPiAtIDEuNjAtOAogLSBQYXRjaDogU2tpcCAnc291 cmNlcycgZmlsZSB3aGVuIGl0IGlzIG1pc3NpbmcKIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9z b3VyY2VzCmluZGV4IDM5OTY2YTIuLmQwZmY0MzYgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIv c291cmNlcwpAQCAtMSArMSBAQAotU0hBNTEyIChycGtnLTEuNjAudGFyLmd6KSA9IDcwNTU2NTM5 NDNiODk3ZTgyMjNlMmQzNTJlNjkxZDZjN2QyY2U4MmM5MjZlM2NmZWZiYWVhM2M2ZmM4ZjcxMjg0 ZTNlODk0ZjUxYTA4M2UzZjZlMTNhNzE0NDVlYTgzODNmMTg4YzAxZTVlZTE5ZmIxNDQzMjI0NGQ5 ZGYxMWY2CitTSEE1MTIgKHJwa2ctMS42MS50YXIuZ3opID0gZTkwMTZlY2E1YmY1YTljNWFlM2M5 ZTEzZmZmZmQ1MzU0OWE5ZGI2YmViMTAyOGFhNTAxMWUwMjIyZjU2YWE0NWRlMGNhMjMzYjk1NmVi Zjc1NmNkZGU3OGZhNDA5YjI5ODA2ZmRlODhlNjdiMzhlZGFhZTc1NWEwODViM2JmZTIK