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: A few patches: Date: Mon, 10 Aug 2026 21:44:40 GMT Message-ID: <178639828074.1.6732799958137431797.rpms-rpkg-b48b28937409@fedoraproject.org> List-ID: X-Git-Repo: rpms/rpkg X-Git-Branch: 1.70-1 X-Git-Rev: b48b2893740995636fe9e2496130e5bb5f4ab749 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvcnBrZwogICAgICAgICAgICBCcmFuY2ggOiAxLjcwLTEKICAgICAgICAgICAg Q29tbWl0IDogYjQ4YjI4OTM3NDA5OTU2MzZmZTllMjQ5NjEzMGU1YmI1ZjRhYjc0OQogICAgICAg ICAgICBBdXRob3IgOiBPbmTFmWVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KICAgICAgICAg ICAgRGF0ZSAgIDogMjAyNC0wMS0xMFQwMzowMzo0MyswMDowMAogICAgICAgICAgICBTdGF0cyAg OiArMTU2MC8tMTE5NyBpbiAyNSBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBzOi8v c3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvcnBrZy9jL2I0OGIyODkzNzQwOTk1NjM2ZmU5ZTI0 OTYxMzBlNWJiNWY0YWI3NDk/YnJhbmNoPTEuNzAtMQoKICAgICAgICAgICAgTG9nOgogICAgICAg ICAgICBBIGZldyBwYXRjaGVzOgoKLSBQYXRjaDogQWRkIG9wdGlvbiB0byBtb2NrYnVpbGQgdXNl IGRlZmF1bHQgcmVzdWx0ZGlyIG9mIG1vY2sgKHYzKQotIFBhdGNoOiBtb2NrYnVpbGRgOiBuZXcg YXJndW1lbnQgLS1leHRyYS1wa2dzCi0gUGF0Y2g6IGBjb3ByLWJ1aWxkYCBwYXNzZXMgZXh0cmFf YXJncyB0byBjb3ByLWNsaSBjb21tYW5kCgpTaWduZWQtb2ZmLWJ5OiBPbmTFmWVqIE5vc2VrIDxv bm9zZWtAcmVkaGF0LmNvbT4KCi0tLQpkaWZmIC0tZ2l0IGEvMDAyMi1jb21taXQtY29tbWFuZC1m YWlscy1vbi1jb250YWluZXJzLW5hbWVzcGFjZS5wYXRjaCBiLzAwMjItY29tbWl0LWNvbW1hbmQt ZmFpbHMtb24tY29udGFpbmVycy1uYW1lc3BhY2UucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IGEyODRhYmMuLjAwMDAwMDAKLS0tIGEvMDAyMi1jb21taXQtY29tbWFuZC1mYWls cy1vbi1jb250YWluZXJzLW5hbWVzcGFjZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQwICsw LDAgQEAKLUZyb20gN2FkZThjMWYzOGVmYWE4ODE3YmQxMGRmNmIwOTI4ZWY3MDgyMmY2ZSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5j b20+Ci1EYXRlOiBXZWQsIDE3IE1heSAyMDIzIDAwOjMyOjQ3ICswMjAwCi1TdWJqZWN0OiBbUEFU Q0hdIGBjb21taXRgIGNvbW1hbmQgZmFpbHMgb24gJ2NvbnRhaW5lcnMnIG5hbWVzcGFjZQotCi1D b21taXQgZmFpbGVkIHdoZW4gJ3VzZXNfcnBtYXV0b3NwZWMnIHRyaWVkIHRvIHNlYXJjaCBmb3Ig YSBzcGVjZmlsZS4KLVRoZXJlIGlzIG5vIHNwZWNmaWxlIGluICdjb250YWluZXJzJyBuYW1lc3Bh Y2UgcmVwb3NpdG9yeS4KLQotSklSQTogUkhFTENNUC0xMTczNAotCi1TaWduZWQtb2ZmLWJ5OiBP bmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgotLS0tCi0gcHlycGtnL19faW5pdF9fLnB5 IHwgMTEgKysrKysrKysrLS0KLSAxIGZpbGUgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9fLnB5IGIvcHlycGtnL19f aW5pdF9fLnB5Ci1pbmRleCBmMTRiMDU1Li5iNDVhZDhmIDEwMDY0NAotLS0tIGEvcHlycGtnL19f aW5pdF9fLnB5Ci0rKysgYi9weXJwa2cvX19pbml0X18ucHkKLUBAIC0xODcyLDggKzE4NzIsMTUg QEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgICMgY29uc3RydWN0IHRoZSBnaXQg Y29tbWFuZAotICAgICAgICAgIyBXZSBkbyB0aGlzIHZpYSBzdWJwcm9jZXNzIGJlY2F1c2UgdGhl IGdpdCBtb2R1bGUgaXMgdGVycmlibGUuCi0gICAgICAgICBjbWQgPSBbJ2dpdCcsICdjb21taXQn XQotLSAgICAgICAgaWYgbm90IHNlbGYuaXNfcmV0aXJlZCgpIGFuZCBzZWxmLnVzZXNfcnBtYXV0 b3NwZWM6Ci0tICAgICAgICAgICAgY21kLmFwcGVuZCgnLS1hbGxvdy1lbXB0eScpCi0rICAgICAg ICBpZiBub3Qgc2VsZi5pc19yZXRpcmVkKCk6Ci0rICAgICAgICAgICAgdHJ5OgotKyAgICAgICAg ICAgICAgICAjIHJhaXNlcyBleGNlcHRpb24gd2hlbiBhIHNwZWNmaWxlIGlzIG1pc3NpbmcKLSsg ICAgICAgICAgICAgICAgIyAoZm9yIGV4YW1wbGUgd2hlbiBwcm9jZXNzaW5nICJjb250YWluZXJz IiBuYW1lc3BhY2UgcmVwb3NpdG9yeSkKLSsgICAgICAgICAgICAgICAgdXNlc19ycG1hdXRvc3Bl YyA9IHNlbGYudXNlc19ycG1hdXRvc3BlYwotKyAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb246 Ci0rICAgICAgICAgICAgICAgIHVzZXNfcnBtYXV0b3NwZWMgPSBGYWxzZQotKyAgICAgICAgICAg IGlmIHVzZXNfcnBtYXV0b3NwZWM6Ci0rICAgICAgICAgICAgICAgIGNtZC5hcHBlbmQoJy0tYWxs b3ctZW1wdHknKQotICAgICAgICAgaWYgc2lnbm9mZjoKLSAgICAgICAgICAgICBjbWQuYXBwZW5k KCctcycpCi0gICAgICAgICBpZiBzZWxmLnF1aWV0OgotLS0gCi0yLjQwLjEKLQoKZGlmZiAtLWdp dCBhLzAwMjItY29wci1idWlsZC1wYXNzZXMtZXh0cmFfYXJncy10by1jb3ByLWNsaS1jb21tYW5k LnBhdGNoIGIvMDAyMi1jb3ByLWJ1aWxkLXBhc3Nlcy1leHRyYV9hcmdzLXRvLWNvcHItY2xpLWNv bW1hbmQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTY2ZjBlZgot LS0gL2Rldi9udWxsCisrKyBiLzAwMjItY29wci1idWlsZC1wYXNzZXMtZXh0cmFfYXJncy10by1j b3ByLWNsaS1jb21tYW5kLnBhdGNoCkBAIC0wLDAgKzEsMTEzIEBACitGcm9tIGFkNjdmYTkwNjli ZWZlZjNlNGJhNTE4MGVlYTZiZjU2YjY1OGU2NjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitG cm9tOiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorRGF0ZTogV2VkLCAzIE1heSAy MDIzIDAwOjQxOjM0ICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMDEvMTddIGBjb3ByLWJ1aWxkYCBw YXNzZXMgZXh0cmFfYXJncyB0byBjb3ByLWNsaSBjb21tYW5kCisKK1RoZSByaWdodCB0YXJnZXQg Zm9yIHBhc3NpbmcgZXh0cmFfYXJncyAoYXJndW1lbnRzIHRoYXQgYXJlIHBsYWNlZAorYWZ0ZXIg Jy0tJyBvbiB0aGUgY29tbWFuZCBsaW5lKSBpcyB0aGUgY29tbWFuZCBjb3ByLWNsaSBpbnN0ZWFk CitvZiBycG1idWlsZCBjb21tYW5kLgorCitGaXhlczogaHR0cHM6Ly9wYWd1cmUuaW8vZmVkcGtn L2lzc3VlLzUxMAorSklSQTogUkhFTENNUC0xMTQyOQorCitTaWduZWQtb2ZmLWJ5OiBPbmRyZWog Tm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorLS0tCisgcHlycGtnL19faW5pdF9fLnB5IHwgIDUg KysrKy0KKyBweXJwa2cvY2xpLnB5ICAgICAgfCAxMSArKysrKysrKysrLQorIHRlc3RzL3Rlc3Rf Y2xpLnB5ICB8IDI0ICsrKysrKysrKysrKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwg MzggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3B5cnBrZy9f X2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQoraW5kZXggMTFiOGRhZS4uZjE0YjA1NSAx MDA2NDQKKy0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQorKysrIGIvcHlycGtnL19faW5pdF9fLnB5 CitAQCAtMzU3NiwxMyArMzU3NiwxNiBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAg ICAgZWxzZToKKyAgICAgICAgICAgICBzZWxmLmxvZy5pbmZvKCdOb3RoaW5nIHRvIGJlIGRvbmUn KQorIAorLSAgICBkZWYgY29wcl9idWlsZChzZWxmLCBwcm9qZWN0LCBzcnBtX25hbWUsIG5vd2Fp dCwgY29uZmlnX2ZpbGUpOgorKyAgICBkZWYgY29wcl9idWlsZChzZWxmLCBwcm9qZWN0LCBzcnBt X25hbWUsIG5vd2FpdCwgY29uZmlnX2ZpbGUsIGV4dHJhX2FyZ3M9Tm9uZSk6CisgICAgICAgICBj bWQgPSBbJ2NvcHItY2xpJ10KKyAgICAgICAgIGlmIGNvbmZpZ19maWxlOgorICAgICAgICAgICAg IGNtZC5leHRlbmQoWyctLWNvbmZpZycsIGNvbmZpZ19maWxlXSkKKyAgICAgICAgIGNtZC5hcHBl bmQoJ2J1aWxkJykKKyAgICAgICAgIGlmIG5vd2FpdDoKKyAgICAgICAgICAgICBjbWQuYXBwZW5k KCctLW5vd2FpdCcpCisrICAgICAgICBpZiBleHRyYV9hcmdzOgorKyAgICAgICAgICAgIGNtZC5l eHRlbmQoZXh0cmFfYXJncykKKysgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZygiRXh0cmEgYXJn cyAnezB9JyBhcmUgcGFzc2VkIHRvIGNvcHItY2xpIGNvbW1hbmQiLmZvcm1hdChleHRyYV9hcmdz KSkKKyAgICAgICAgIGNtZC5leHRlbmQoW3Byb2plY3QsIHNycG1fbmFtZV0pCisgICAgICAgICBz ZWxmLl9ydW5fY29tbWFuZChjbWQpCisgCitkaWZmIC0tZ2l0IGEvcHlycGtnL2NsaS5weSBiL3B5 cnBrZy9jbGkucHkKK2luZGV4IGRjMWViNGUuLjAyMGEyNDcgMTAwNjQ0CistLS0gYS9weXJwa2cv Y2xpLnB5CisrKysgYi9weXJwa2cvY2xpLnB5CitAQCAtMTU2MSw2ICsxNTYxLDEwIEBAIGNsYXNz IGNsaUNsaWVudChvYmplY3QpOgorICAgICAgICAgICAgIGhlbHA9IkRvbid0IHdhaXQgb24gYnVp bGQiKQorICAgICAgICAgY29wcl9wYXJzZXIuYWRkX2FyZ3VtZW50KAorICAgICAgICAgICAgICdw cm9qZWN0JywgbmFyZ3M9MSwgaGVscD0nTmFtZSBvZiB0aGUgcHJvamVjdCBpbiBmb3JtYXQgVVNF Ui9QUk9KRUNUJykKKysgICAgICAgIGNvcHJfcGFyc2VyLmFkZF9hcmd1bWVudCgKKysgICAgICAg ICAgICAiZXh0cmFfYXJncyIsIGRlZmF1bHQ9Tm9uZSwgbmFyZ3M9YXJncGFyc2UuUkVNQUlOREVS LAorKyAgICAgICAgICAgIGhlbHA9IkN1c3RvbSBhcmd1bWVudHMgdGhhdCBhcmUgcGFzc2VkIHRv IHRoZSAnY29wci1jbGknLiAiCisrICAgICAgICAgICAgICAgICAiVXNlICctLScgdG8gc2VwYXJh dGUgdGhlbSBmcm9tIG90aGVyIGFyZ3VtZW50cy4iKQorICAgICAgICAgY29wcl9wYXJzZXIuc2V0 X2RlZmF1bHRzKGNvbW1hbmQ9c2VsZi5jb3ByX2J1aWxkKQorIAorICAgICBkZWYgcmVnaXN0ZXJf c3dpdGNoX2JyYW5jaChzZWxmKToKK0BAIC0yMzU0LDEyICsyMzU4LDE3IEBAIGNsYXNzIGNsaUNs aWVudChvYmplY3QpOgorICAgICBkZWYgY29wcl9idWlsZChzZWxmKToKKyAgICAgICAgIHNlbGYu bG9nLmRlYnVnKCdHZW5lcmF0aW5nIGFuIHNycG0nKQorICAgICAgICAgc2VsZi5hcmdzLmhhc2gg PSBOb25lCisrICAgICAgICAjIGRvIG5vdCBwYXNzICdleHRyYV9hcmdzJyB0byAncnBtYnVpbGQn IGNvbW1hbmQgaW4gJ3NycG0nIG1ldGhvZDsgUGFzcyBpdCB0byBjb3ByLWNsaS4KKysgICAgICAg IGV4dHJhX2FyZ3NfYmFja3VwID0gc2VsZi5leHRyYV9hcmdzCisrICAgICAgICBzZWxmLmV4dHJh X2FyZ3MgPSBOb25lCisgICAgICAgICBzZWxmLnNycG0oKQorKyAgICAgICAgc2VsZi5leHRyYV9h cmdzID0gZXh0cmFfYXJnc19iYWNrdXAKKyAgICAgICAgIHNycG1fbmFtZSA9ICclcy5zcmMucnBt JyAlIHNlbGYuY21kLm52cgorICAgICAgICAgc2VsZi5jbWQuY29wcl9idWlsZChzZWxmLmFyZ3Mu cHJvamVjdFswXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JwbV9uYW1lLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFyZ3Mubm93YWl0LAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzZWxmLmFyZ3MuY29wcl9jb25maWcpCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNlbGYuYXJncy5jb3ByX2NvbmZpZywKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZXh0cmFfYXJncz1zZWxmLmV4dHJhX2FyZ3MpCisgCisgICAgIGRlZiBkaWZmKHNl bGYpOgorICAgICAgICAgc2VsZi5jbWQuZGlmZihzZWxmLmFyZ3MuY2FjaGVkLCBzZWxmLmFyZ3Mu ZmlsZXMpCitkaWZmIC0tZ2l0IGEvdGVzdHMvdGVzdF9jbGkucHkgYi90ZXN0cy90ZXN0X2NsaS5w eQoraW5kZXggNmU0ZWM2YS4uZjJlNjhkZiAxMDA2NDQKKy0tLSBhL3Rlc3RzL3Rlc3RfY2xpLnB5 CisrKysgYi90ZXN0cy90ZXN0X2NsaS5weQorQEAgLTYzNiw2ICs2MzYsMzAgQEAgY2xhc3MgVGVz dENsb25lKENsaVRlc3RDYXNlKToKKyAgICAgICAgIG91dHB1dCA9IHN5cy5zdGRlcnIuZ2V0dmFs dWUoKS5zdHJpcCgpCisgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcnLCBvdXRwdXQpCisgCisr ICAgIEBwYXRjaCgnc3lzLnN0ZGVycicsIG5ldz1TdHJpbmdJTygpKQorKyAgICBAcGF0Y2goJ3B5 cnBrZy5Db21tYW5kcy5fY2xvbmVfY29uZmlnJywgbmV3X2NhbGxhYmxlPU1vY2soKSkKKysgICAg QHBhdGNoKCdweXJwa2cuQ29tbWFuZHMuX3J1bl9jb21tYW5kJykKKysgICAgZGVmIHRlc3RfZXh0 cmFfYXJnc19jb3ByKHNlbGYsIF9ydW5fY29tbWFuZCwgX2Nsb25lX2NvbmZpZyk6CisrICAgICAg ICAjIGNvcHItYnVpbGQgaXMgdGhlIGNvbW1hbmQgdGhhdCBoYXMgdHdvIHN1YmNvbW1hbmRzIChy cG1idWlsZCBhbmQgY29wci1jbGkpCisrICAgICAgICAjIHRoYXQgbWlnaHQgYWNjZXB0IHRoZSBl eHRyYSBhcmdzLiBUaGlzIHRlc3RzIHJlcXVpZXMgZXh0cmFfYXJncyBhdCBjb3ByLWNsaS4KKysg ICAgICAgIGNsaV9jbWQgPSBbJ3Jwa2cnLCAnLS11c2VyJywgJ2R1ZGUnLCAnLS1wYXRoJywgc2Vs Zi5jbG9uZWRfcmVwb19wYXRoLAorKyAgICAgICAgICAgICAgICAgICAnLS1yZWxlYXNlJywgJ3Jo ZWwtNicsICdjb3ByLWJ1aWxkJywgJ0NPUFItUkVQTycsCisrICAgICAgICAgICAgICAgICAgICct LScsICctLWFmdGVyLWJ1aWxkLWlkJywgJ0lEJ10KKysKKysgICAgICAgIHdpdGggcGF0Y2goJ3N5 cy5hcmd2JywgbmV3PWNsaV9jbWQpOgorKyAgICAgICAgICAgIGNsaSA9IHNlbGYubmV3X2NsaSgp CisrICAgICAgICAgICAgY2xpLmNvcHJfYnVpbGQoKQorKworKyAgICAgICAgZXhwZWN0ZWRfY21k ID0gWydjb3ByLWNsaScsICdidWlsZCcsICctLWFmdGVyLWJ1aWxkLWlkJywgJ0lEJywgJ0NPUFIt UkVQTyddCisrICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIF9ydW5fY29tbWFuZC5jYWxsX2Nv dW50KQorKyAgICAgICAgY29wcl9jbGlfY2FsbCA9IF9ydW5fY29tbWFuZC5tb2NrX2NhbGxzWzFd CisrICAgICAgICBpZiAnYXJncycgaW4gZGlyKGNvcHJfY2xpX2NhbGwpOiAgIyBkb2Vzbid0IHdv cmsgaW4gPD1weTM2CisrICAgICAgICAgICAgIyBzdHJpcCB0aGUgbGFzdCBhcmd1bWVudCAtIGl0 IGNvbnRhaW5zIGR5bmFtaWNhbGx5IGdlbmVyYXRlZCBzcmMucnBtIGZpbGVuYW1lCisrICAgICAg ICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3RlZF9jbWQsIGNvcHJfY2xpX2NhbGwuYXJnc1sw XVs6LTFdKQorKworKyAgICAgICAgb3V0cHV0ID0gc3lzLnN0ZGVyci5nZXR2YWx1ZSgpLnN0cmlw KCkKKysgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJycsIG91dHB1dCkKKysKKyAgICAgQHBhdGNo KCdzeXMuc3RkZXJyJywgbmV3PVN0cmluZ0lPKCkpCisgICAgIEBwYXRjaCgncHlycGtnLkNvbW1h bmRzLl9jbG9uZV9jb25maWcnLCBuZXdfY2FsbGFibGU9TW9jaygpKQorICAgICBAcGF0Y2goJ3B5 cnBrZy5Db21tYW5kcy5fcnVuX2NvbW1hbmQnKQorLS0gCisyLjQzLjAKKwoKZGlmZiAtLWdpdCBh LzAwMjMtU3BsaXQtZ2l0LWNyZWRlbnRpYWwtZGF0YS1vbi1maXJzdC1vbmx5LnBhdGNoIGIvMDAy My1TcGxpdC1naXQtY3JlZGVudGlhbC1kYXRhLW9uLWZpcnN0LW9ubHkucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQzNDE2YjcuLjAwMDAwMDAKLS0tIGEvMDAyMy1TcGxpdC1n aXQtY3JlZGVudGlhbC1kYXRhLW9uLWZpcnN0LW9ubHkucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwzMyArMCwwIEBACi1Gcm9tIDc1ZDQyYmFkNzliNTQ2NTRmY2E5NzcwYTI4NTdlNzllODJkODNj M2UgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/THVib209QzM9QURy PTIwU2VkbD1DMz1BMT1DNT05OT89IDxsc2VkbGFyQHJlZGhhdC5jb20+Ci1EYXRlOiBXZWQsIDIx IEp1biAyMDIzIDEwOjQyOjQ1ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggMS8zXSBTcGxpdCBnaXQg Y3JlZGVudGlhbCBkYXRhIG9uIGZpcnN0ID0gb25seQotTUlNRS1WZXJzaW9uOiAxLjAKLUNvbnRl bnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogOGJpdAotCi1UaGUgdmFsdWUgaXRzZWxmIGNhbiBjb250YWluIGEgPSBjaGFyYWN0ZXIs IGJ1dCB3ZSBkb24ndCByZWFsbHkgY2FyZQotYWJvdXQgdGhhdC4gV2UgY2FuIHRyZWF0IHRoZSB2 YWx1ZSBvZiB0aGUga2V5IGFzIG9wYXF1ZS4KLQotRml4ZXM6IGh0dHBzOi8vcGFndXJlLmlvL3Jw a2cvaXNzdWUvNjk0Ci1TaWduZWQtb2ZmLWJ5OiBMdWJvbcOtciBTZWRsw6HFmSA8bHNlZGxhckBy ZWRoYXQuY29tPgotLS0tCi0gcHlycGtnL2NsaS5weSB8IDIgKy0KLSAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKLQotZGlmZiAtLWdpdCBhL3B5cnBrZy9jbGku cHkgYi9weXJwa2cvY2xpLnB5Ci1pbmRleCAwMjBhMjQ3Li4xYmQ3OTc5IDEwMDY0NAotLS0tIGEv cHlycGtnL2NsaS5weQotKysrIGIvcHlycGtnL2NsaS5weQotQEAgLTgyNCw3ICs4MjQsNyBAQCBj bGFzcyBjbGlDbGllbnQob2JqZWN0KToKLSAgICAgICAgICIiIlBhcnNlcyB0aGUgZ2l0LWNyZWRl bnRpYWwtaGVscGVyIElPIGZvcm1hdCBpbnB1dC4iIiIKLSAgICAgICAgIGlucCA9IHt9Ci0gICAg ICAgICBmb3IgbGluZSBpbiBzeXMuc3RkaW46Ci0tICAgICAgICAgICAgdmFscyA9IGxpbmUuc3Bs aXQoJz0nLCAyKQotKyAgICAgICAgICAgIHZhbHMgPSBsaW5lLnNwbGl0KCc9JywgMSkKLSAgICAg ICAgICAgICBpZiBsZW4odmFscykgIT0gMjoKLSAgICAgICAgICAgICAgICAgcHJpbnQoJ0ludmFs aWQgaW5wdXQ6ICVzJyAlIGxpbmUsIGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgICAgICAgICAg cmV0dXJuIEZhbHNlCi0tLSAKLTIuNDEuMAotCgpkaWZmIC0tZ2l0IGEvMDAyMy1jb21taXQtY29t bWFuZC1mYWlscy1vbi1jb250YWluZXJzLW5hbWVzcGFjZS5wYXRjaCBiLzAwMjMtY29tbWl0LWNv bW1hbmQtZmFpbHMtb24tY29udGFpbmVycy1uYW1lc3BhY2UucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uMjFhZThlMwotLS0gL2Rldi9udWxsCisrKyBiLzAwMjMtY29t bWl0LWNvbW1hbmQtZmFpbHMtb24tY29udGFpbmVycy1uYW1lc3BhY2UucGF0Y2gKQEAgLTAsMCAr MSw0MCBAQAorRnJvbSA3YWRlOGMxZjM4ZWZhYTg4MTdiZDEwZGY2YjA5MjhlZjcwODIyZjZlIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0 LmNvbT4KK0RhdGU6IFdlZCwgMTcgTWF5IDIwMjMgMDA6MzI6NDcgKzAyMDAKK1N1YmplY3Q6IFtQ QVRDSCAwMi8xN10gYGNvbW1pdGAgY29tbWFuZCBmYWlscyBvbiAnY29udGFpbmVycycgbmFtZXNw YWNlCisKK0NvbW1pdCBmYWlsZWQgd2hlbiAndXNlc19ycG1hdXRvc3BlYycgdHJpZWQgdG8gc2Vh cmNoIGZvciBhIHNwZWNmaWxlLgorVGhlcmUgaXMgbm8gc3BlY2ZpbGUgaW4gJ2NvbnRhaW5lcnMn IG5hbWVzcGFjZSByZXBvc2l0b3J5LgorCitKSVJBOiBSSEVMQ01QLTExNzM0CisKK1NpZ25lZC1v ZmYtYnk6IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CistLS0KKyBweXJwa2cvX19p bml0X18ucHkgfCAxMSArKysrKysrKystLQorIDEgZmlsZSBjaGFuZ2VkLCA5IGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9weXJwa2cvX19pbml0X18ucHkgYi9w eXJwa2cvX19pbml0X18ucHkKK2luZGV4IGYxNGIwNTUuLmI0NWFkOGYgMTAwNjQ0CistLS0gYS9w eXJwa2cvX19pbml0X18ucHkKKysrKyBiL3B5cnBrZy9fX2luaXRfXy5weQorQEAgLTE4NzIsOCAr MTg3MiwxNSBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAgICAgIyBjb25zdHJ1Y3Qg dGhlIGdpdCBjb21tYW5kCisgICAgICAgICAjIFdlIGRvIHRoaXMgdmlhIHN1YnByb2Nlc3MgYmVj YXVzZSB0aGUgZ2l0IG1vZHVsZSBpcyB0ZXJyaWJsZS4KKyAgICAgICAgIGNtZCA9IFsnZ2l0Jywg J2NvbW1pdCddCistICAgICAgICBpZiBub3Qgc2VsZi5pc19yZXRpcmVkKCkgYW5kIHNlbGYudXNl c19ycG1hdXRvc3BlYzoKKy0gICAgICAgICAgICBjbWQuYXBwZW5kKCctLWFsbG93LWVtcHR5JykK KysgICAgICAgIGlmIG5vdCBzZWxmLmlzX3JldGlyZWQoKToKKysgICAgICAgICAgICB0cnk6Cisr ICAgICAgICAgICAgICAgICMgcmFpc2VzIGV4Y2VwdGlvbiB3aGVuIGEgc3BlY2ZpbGUgaXMgbWlz c2luZworKyAgICAgICAgICAgICAgICAjIChmb3IgZXhhbXBsZSB3aGVuIHByb2Nlc3NpbmcgImNv bnRhaW5lcnMiIG5hbWVzcGFjZSByZXBvc2l0b3J5KQorKyAgICAgICAgICAgICAgICB1c2VzX3Jw bWF1dG9zcGVjID0gc2VsZi51c2VzX3JwbWF1dG9zcGVjCisrICAgICAgICAgICAgZXhjZXB0IEV4 Y2VwdGlvbjoKKysgICAgICAgICAgICAgICAgdXNlc19ycG1hdXRvc3BlYyA9IEZhbHNlCisrICAg ICAgICAgICAgaWYgdXNlc19ycG1hdXRvc3BlYzoKKysgICAgICAgICAgICAgICAgY21kLmFwcGVu ZCgnLS1hbGxvdy1lbXB0eScpCisgICAgICAgICBpZiBzaWdub2ZmOgorICAgICAgICAgICAgIGNt ZC5hcHBlbmQoJy1zJykKKyAgICAgICAgIGlmIHNlbGYucXVpZXQ6CistLSAKKzIuNDMuMAorCgpk aWZmIC0tZ2l0IGEvMDAyNC1TcGxpdC1naXQtY3JlZGVudGlhbC1kYXRhLW9uLWZpcnN0LW9ubHku cGF0Y2ggYi8wMDI0LVNwbGl0LWdpdC1jcmVkZW50aWFsLWRhdGEtb24tZmlyc3Qtb25seS5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZjdhYjZiCi0tLSAvZGV2L251 bGwKKysrIGIvMDAyNC1TcGxpdC1naXQtY3JlZGVudGlhbC1kYXRhLW9uLWZpcnN0LW9ubHkucGF0 Y2gKQEAgLTAsMCArMSwzMyBAQAorRnJvbSA3NWQ0MmJhZDc5YjU0NjU0ZmNhOTc3MGEyODU3ZTc5 ZTgyZDgzYzNlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogPT9VVEYtOD9xP0x1Ym9t PUMzPUFEcj0yMFNlZGw9QzM9QTE9QzU9OTk/PSA8bHNlZGxhckByZWRoYXQuY29tPgorRGF0ZTog V2VkLCAyMSBKdW4gMjAyMyAxMDo0Mjo0NSArMDIwMAorU3ViamVjdDogW1BBVENIIDAzLzE3XSBT cGxpdCBnaXQgY3JlZGVudGlhbCBkYXRhIG9uIGZpcnN0ID0gb25seQorTUlNRS1WZXJzaW9uOiAx LjAKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFu c2Zlci1FbmNvZGluZzogOGJpdAorCitUaGUgdmFsdWUgaXRzZWxmIGNhbiBjb250YWluIGEgPSBj aGFyYWN0ZXIsIGJ1dCB3ZSBkb24ndCByZWFsbHkgY2FyZQorYWJvdXQgdGhhdC4gV2UgY2FuIHRy ZWF0IHRoZSB2YWx1ZSBvZiB0aGUga2V5IGFzIG9wYXF1ZS4KKworRml4ZXM6IGh0dHBzOi8vcGFn dXJlLmlvL3Jwa2cvaXNzdWUvNjk0CitTaWduZWQtb2ZmLWJ5OiBMdWJvbcOtciBTZWRsw6HFmSA8 bHNlZGxhckByZWRoYXQuY29tPgorLS0tCisgcHlycGtnL2NsaS5weSB8IDIgKy0KKyAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKKworZGlmZiAtLWdpdCBhL3B5 cnBrZy9jbGkucHkgYi9weXJwa2cvY2xpLnB5CitpbmRleCAwMjBhMjQ3Li4xYmQ3OTc5IDEwMDY0 NAorLS0tIGEvcHlycGtnL2NsaS5weQorKysrIGIvcHlycGtnL2NsaS5weQorQEAgLTgyNCw3ICs4 MjQsNyBAQCBjbGFzcyBjbGlDbGllbnQob2JqZWN0KToKKyAgICAgICAgICIiIlBhcnNlcyB0aGUg Z2l0LWNyZWRlbnRpYWwtaGVscGVyIElPIGZvcm1hdCBpbnB1dC4iIiIKKyAgICAgICAgIGlucCA9 IHt9CisgICAgICAgICBmb3IgbGluZSBpbiBzeXMuc3RkaW46CistICAgICAgICAgICAgdmFscyA9 IGxpbmUuc3BsaXQoJz0nLCAyKQorKyAgICAgICAgICAgIHZhbHMgPSBsaW5lLnNwbGl0KCc9Jywg MSkKKyAgICAgICAgICAgICBpZiBsZW4odmFscykgIT0gMjoKKyAgICAgICAgICAgICAgICAgcHJp bnQoJ0ludmFsaWQgaW5wdXQ6ICVzJyAlIGxpbmUsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAg ICAgICAgICAgcmV0dXJuIEZhbHNlCistLSAKKzIuNDMuMAorCgpkaWZmIC0tZ2l0IGEvMDAyNC1T dXBwb3J0LWZvci1jaGVja2luZy1leHBsb2RlZC1zb3VyY2VzLWJlZm9yZS1wdXNoLnBhdGNoIGIv MDAyNC1TdXBwb3J0LWZvci1jaGVja2luZy1leHBsb2RlZC1zb3VyY2VzLWJlZm9yZS1wdXNoLnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlOGYxNGRlLi4wMDAwMDAwCi0tLSBh LzAwMjQtU3VwcG9ydC1mb3ItY2hlY2tpbmctZXhwbG9kZWQtc291cmNlcy1iZWZvcmUtcHVzaC5w YXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLUZyb20gODdkNDk5NWI0MGZiY2Rk YWM4OGZiMjExOTFlYjJkNWQxZjI0ODU1MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206 IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+Ci1EYXRlOiBUdWUsIDExIEp1bCAyMDIz IDE3OjAwOjQ4ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggMi8zXSBTdXBwb3J0IGZvciBjaGVja2lu ZyBleHBsb2RlZCBzb3VyY2VzIGJlZm9yZSBwdXNoCi0KLXByZS1wdXNoLWNoZWNrIG5vdyBpbmNs dWRlcyB0ZXN0IHdoZXRoZXIgc291cmNlIGZpbGVzIGxpc3RlZAotaW4gYSBzcGVjZmlsZSBjb21l IGZyb20gYWRkaXRpb25hbCBzb3VyY2VzLgotVGhpcyBmdW5jdGlvbmFsaXR5IGlzIHJlbGV2YW50 IG9ubHkgZm9yIHNvbWUgeC1wa2cgdG9vbHMsIG90aGVycwotc2hvdWxkIG5vdCBiZSBhZmZlY3Rl ZC4KLQotSklSQTogUkhFTENNUC0xMTc3NwotCi1TaWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsg PG9ub3Nla0ByZWRoYXQuY29tPgotLS0tCi0gcHlycGtnL19faW5pdF9fLnB5ICAgICAgICAgICAg ICAgICAgICB8IDEyICsrKysrKysrKystLQotIHRlc3RzL2NvbW1hbmRzL3Rlc3RfcHJlX3B1c2hf Y2hlY2sucHkgfCAgNCArKy0tCi0gMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA0 IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9fLnB5IGIvcHlycGtn L19faW5pdF9fLnB5Ci1pbmRleCBiNDVhZDhmLi5iYzY2OWI5IDEwMDY0NAotLS0tIGEvcHlycGtn L19faW5pdF9fLnB5Ci0rKysgYi9weXJwa2cvX19pbml0X18ucHkKLUBAIC00NDY4LDYgKzQ0Njgs MTAgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAKLSAgICAgICAgIHJldHVybiBzZWxmLl9y ZXBvX25hbWUsIHZlcnNpb24sIHJlbGVhc2UKLSAKLSsgICAgIyBXb3JrcyBhcyB2aXJ0dWFsIG1l dGhvZC4gT3RoZXIgeC1wa2cgdG9vbHMgY2FuIGFkZCB0aGVpciBzcGVjaWZpYyBzb3VyY2VzCi0r ICAgIGRlZiBhZGRpdGlvbmFsX3NvdXJjZV9lbnRyaWVzKHNlbGYpOgotKyAgICAgICAgcmV0dXJu IHt9Ci0rCi0gICAgIGRlZiBwcmVfcHVzaF9jaGVjayhzZWxmLCByZWYpOgotICAgICAgICAgc2hv d19oaW50ID0gKCdIaW50OiB0aGlzIGNoZWNrICguZ2l0L2hvb2tzL3ByZS1wdXNoIHNjcmlwdCkg Y2FuIGJlIGJ5cGFzc2VkIGJ5IGFkZGluZyAnCi0gICAgICAgICAgICAgICAgICAgICAgJ3RoZSBh cmd1bWVudCBcJy0tbm8tdmVyaWZ5XCcgYXJndW1lbnQgdG8gdGhlIHB1c2ggY29tbWFuZC4nKQot QEAgLTQ1NjEsMTMgKzQ1NjUsMTcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAg ICMgbGlzdCBvZiBhbGwgZmlsZXMgKHRoZWlyIHJlbGF0aXZlIHBhdGhzKSBpbiB0aGUgY29tbWl0 Ci0gICAgICAgICByZXBvX2VudHJpZXMgPSBzZXQoaXRlbS5wYXRoIGZvciBpdGVtIGluIGNvbW1p dC50cmVlLnRyYXZlcnNlKCkgaWYgaXRlbS50eXBlICE9ICJ0cmVlIikKLSAKLSsgICAgICAgICMg b3RoZXIgeC1wa2cgdG9vbHMgY2FuIGFkZCB0aGVpciBzcGVjaWZpYyBzb3VyY2VzCi0rICAgICAg ICBhZGRpdGlvbmFsX2VudHJpZXMgPSBzZXQoc2VsZi5hZGRpdGlvbmFsX3NvdXJjZV9lbnRyaWVz KCkpCi0rCi0gICAgICAgICAjIGNoZWNrIHdoZXRoZXIgZXZlcnkgc291cmNlIGZpbGUgaXMgZWl0 aGVyIGxpc3RlZCBpbiB0aGUgJ3NvdXJjZXMnIGZpbGUgb3IgdHJhY2tlZCBpbiBnaXQKLSAgICAg ICAgIGZvciBzb3VyY2VfZmlsZSBpbiBzb3VyY2VfZmlsZXM6Ci0gICAgICAgICAgICAgbGlzdGVk ID0gc291cmNlX2ZpbGUgaW4gc291cmNlc2ZfZW50cmllcwotICAgICAgICAgICAgIHRyYWNrZWQg PSBzb3VyY2VfZmlsZSBpbiByZXBvX2VudHJpZXMKLS0gICAgICAgICAgICBpZiBub3QgKGxpc3Rl ZCBvciB0cmFja2VkKToKLSsgICAgICAgICAgICBsaXN0ZWRfYWRkaXRpb25hbCA9IHNvdXJjZV9m aWxlIGluIGFkZGl0aW9uYWxfZW50cmllcwotKyAgICAgICAgICAgIGlmIG5vdCAobGlzdGVkIG9y IHRyYWNrZWQgb3IgbGlzdGVkX2FkZGl0aW9uYWwpOgotICAgICAgICAgICAgICAgICBzZWxmLmxv Zy5lcnJvcignU291cmNlIGZpbGUgXCd7MH1cJyB3YXMgbmVpdGhlciBsaXN0ZWQgaW4gdGhlIFwn c291cmNlc1wnIGZpbGUgJwotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbm9yIHRy YWNrZWQgaW4gZ2l0LiAnCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdub3IgdHJh Y2tlZCBpbiBnaXQgbm9yIGxpc3RlZCBpbiBhZGRpdGlvbmFsIHNvdXJjZXMuICcKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJ1B1c2ggb3BlcmF0aW9uIHdhcyBjYW5jZWxsZWQnLmZv cm1hdChzb3VyY2VfZmlsZSkpCi0gICAgICAgICAgICAgICAgIHNlbGYubG9nLndhcm5pbmcoc2hv d19oaW50KQotICAgICAgICAgICAgICAgICBzeXMuZXhpdCg0KQotZGlmZiAtLWdpdCBhL3Rlc3Rz L2NvbW1hbmRzL3Rlc3RfcHJlX3B1c2hfY2hlY2sucHkgYi90ZXN0cy9jb21tYW5kcy90ZXN0X3By ZV9wdXNoX2NoZWNrLnB5Ci1pbmRleCBlZTE1MWMxLi43OTE2NWVjIDEwMDY0NAotLS0tIGEvdGVz dHMvY29tbWFuZHMvdGVzdF9wcmVfcHVzaF9jaGVjay5weQotKysrIGIvdGVzdHMvY29tbWFuZHMv dGVzdF9wcmVfcHVzaF9jaGVjay5weQotQEAgLTkwLDggKzkwLDggQEAgUGF0Y2gzOiBkLnBhdGNo Ci0gCi0gICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4Yy5leGNlcHRpb24uY29kZSwgNCkKLSAg ICAgICAgIGxvZ19lcnJvci5hc3NlcnRfY2FsbGVkX29uY2Vfd2l0aCgiU291cmNlIGZpbGUgJ2Iu cGF0Y2gnIHdhcyBuZWl0aGVyIGxpc3RlZCBpbiB0aGUgIgotLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICInc291cmNlcycgZmlsZSBub3IgdHJhY2tlZCBpbiBnaXQu IFB1c2ggb3BlcmF0aW9uICIKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAid2FzIGNhbmNlbGxlZCIpCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIidzb3VyY2VzJyBmaWxlIG5vciB0cmFja2VkIGluIGdpdCBub3IgbGlzdGVkICIK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW4gYWRkaXRpb25h bCBzb3VyY2VzLiBQdXNoIG9wZXJhdGlvbiB3YXMgY2FuY2VsbGVkIikKLSAKLSAgICAgICAgICMg VmVyaWZ5IGFkZGVkIGZpbGVzIGFyZSBjb21taXR0ZWQgYnV0IG5vdCBwdXNoZWQgdG8gb3JpZ2lu Ci0gICAgICAgICBsb2NhbF9yZXBvID0gZ2l0LlJlcG8oc2VsZi5jbG9uZWRfZGlyKQotLS0gCi0y LjQxLjAKLQoKZGlmZiAtLWdpdCBhLzAwMjUtRml4LWZsYWtlOC1jb21wbGFpbnRzLnBhdGNoIGIv MDAyNS1GaXgtZmxha2U4LWNvbXBsYWludHMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDBlNGU2NTcuLjAwMDAwMDAKLS0tIGEvMDAyNS1GaXgtZmxha2U4LWNvbXBsYWludHMu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0MiArMCwwIEBACi1Gcm9tIDVjOTE1YTU0OWFkMmQx MGEzZWIzNmM1NjgwMTU3NGQ4MWE2MDE2NzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9t OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgotRGF0ZTogVHVlLCAxIEF1ZyAyMDIz IDIzOjI2OjQzICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggMS80XSBGaXggZmxha2U4IGNvbXBsYWlu dHMKLQotRTcyMSBkbyBub3QgY29tcGFyZSB0eXBlcywgZm9yIGV4YWN0IGNoZWNrcyB1c2UgYGlz YCAvIGBpcyBub3RgLCBmb3IKLWluc3RhbmNlIGNoZWNrcyB1c2UgYGlzaW5zdGFuY2UoKWAKLUNv bmRpdGlvbnMgaW4gdGhlIG1ldGhvZCBgX2xpc3RfYnJhbmNoZXNgIHdlcmUgc3dpdGNoZWQgYmVj YXVzZToKLWBpc3N1YmNsYXNzKGdpdC5SZW1vdGVSZWZlcmVuY2UsIGdpdC5IZWFkKWAKLQotU2ln bmVkLW9mZi1ieTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KLS0tLQotIHB5cnBr Zy9fX2luaXRfXy5weSB8IDggKysrKy0tLS0KLSAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25z KCspLCA0IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9fLnB5IGIv cHlycGtnL19faW5pdF9fLnB5Ci1pbmRleCBiYzY2OWI5Li5mNjlmMmNlIDEwMDY0NAotLS0tIGEv cHlycGtnL19faW5pdF9fLnB5Ci0rKysgYi9weXJwa2cvX19pbml0X18ucHkKLUBAIC0xNDExLDE1 ICsxNDExLDE1IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICByZW1vdGVzID0g W10KLSAgICAgICAgIGxvY2FscyA9IFtdCi0gICAgICAgICBmb3IgcmVmIGluIHJlZnM6Ci0tICAg ICAgICAgICAgaWYgdHlwZShyZWYpID09IGdpdC5IZWFkOgotLSAgICAgICAgICAgICAgICBzZWxm LmxvZy5kZWJ1ZygnRm91bmQgbG9jYWwgYnJhbmNoICVzJywgcmVmLm5hbWUpCi0tICAgICAgICAg ICAgICAgIGxvY2Fscy5hcHBlbmQocmVmLm5hbWUpCi0tICAgICAgICAgICAgZWxpZiB0eXBlKHJl ZikgPT0gZ2l0LlJlbW90ZVJlZmVyZW5jZToKLSsgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHJl ZiwgZ2l0LlJlbW90ZVJlZmVyZW5jZSk6Ci0gICAgICAgICAgICAgICAgIGlmIHJlZi5yZW1vdGVf aGVhZCA9PSAnSEVBRCc6Ci0gICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZygnU2tp cHBpbmcgcmVtb3RlIGJyYW5jaCBhbGlhcyBIRUFEJykKLSAgICAgICAgICAgICAgICAgICAgIGNv bnRpbnVlICAjIE5vdCB1c2VmdWwgaW4gdGhpcyBjb250ZXh0Ci0gICAgICAgICAgICAgICAgIHNl bGYubG9nLmRlYnVnKCdGb3VuZCByZW1vdGUgYnJhbmNoICVzJywgcmVmLm5hbWUpCi0gICAgICAg ICAgICAgICAgIHJlbW90ZXMuYXBwZW5kKHJlZi5uYW1lKQotKyAgICAgICAgICAgIGVsaWYgaXNp bnN0YW5jZShyZWYsIGdpdC5IZWFkKToKLSsgICAgICAgICAgICAgICAgc2VsZi5sb2cuZGVidWco J0ZvdW5kIGxvY2FsIGJyYW5jaCAlcycsIHJlZi5uYW1lKQotKyAgICAgICAgICAgICAgICBsb2Nh bHMuYXBwZW5kKHJlZi5uYW1lKQotICAgICAgICAgcmV0dXJuIChsb2NhbHMsIHJlbW90ZXMpCi0g Ci0gICAgIGRlZiBfc3JwbWRldGFpbHMoc2VsZiwgc3JwbSk6Ci0tLSAKLTIuNDEuMAotCgpkaWZm IC0tZ2l0IGEvMDAyNS1TdXBwb3J0LWZvci1jaGVja2luZy1leHBsb2RlZC1zb3VyY2VzLWJlZm9y ZS1wdXNoLnBhdGNoIGIvMDAyNS1TdXBwb3J0LWZvci1jaGVja2luZy1leHBsb2RlZC1zb3VyY2Vz LWJlZm9yZS1wdXNoLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNk MWUzNGEKLS0tIC9kZXYvbnVsbAorKysgYi8wMDI1LVN1cHBvcnQtZm9yLWNoZWNraW5nLWV4cGxv ZGVkLXNvdXJjZXMtYmVmb3JlLXB1c2gucGF0Y2gKQEAgLTAsMCArMSw3MSBAQAorRnJvbSA4N2Q0 OTk1YjQwZmJjZGRhYzg4ZmIyMTE5MWViMmQ1ZDFmMjQ4NTUwIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQorRnJvbTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KK0RhdGU6IFR1ZSwg MTEgSnVsIDIwMjMgMTc6MDA6NDggKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCAwNC8xN10gU3VwcG9y dCBmb3IgY2hlY2tpbmcgZXhwbG9kZWQgc291cmNlcyBiZWZvcmUgcHVzaAorCitwcmUtcHVzaC1j aGVjayBub3cgaW5jbHVkZXMgdGVzdCB3aGV0aGVyIHNvdXJjZSBmaWxlcyBsaXN0ZWQKK2luIGEg c3BlY2ZpbGUgY29tZSBmcm9tIGFkZGl0aW9uYWwgc291cmNlcy4KK1RoaXMgZnVuY3Rpb25hbGl0 eSBpcyByZWxldmFudCBvbmx5IGZvciBzb21lIHgtcGtnIHRvb2xzLCBvdGhlcnMKK3Nob3VsZCBu b3QgYmUgYWZmZWN0ZWQuCisKK0pJUkE6IFJIRUxDTVAtMTE3NzcKKworU2lnbmVkLW9mZi1ieTog T25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KKy0tLQorIHB5cnBrZy9fX2luaXRfXy5w eSAgICAgICAgICAgICAgICAgICAgfCAxMiArKysrKysrKysrLS0KKyB0ZXN0cy9jb21tYW5kcy90 ZXN0X3ByZV9wdXNoX2NoZWNrLnB5IHwgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTIgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3B5cnBrZy9fX2luaXRf Xy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQoraW5kZXggYjQ1YWQ4Zi4uYmM2NjliOSAxMDA2NDQK Ky0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQorKysrIGIvcHlycGtnL19faW5pdF9fLnB5CitAQCAt NDQ2OCw2ICs0NDY4LDEwIEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6CisgCisgICAgICAgICBy ZXR1cm4gc2VsZi5fcmVwb19uYW1lLCB2ZXJzaW9uLCByZWxlYXNlCisgCisrICAgICMgV29ya3Mg YXMgdmlydHVhbCBtZXRob2QuIE90aGVyIHgtcGtnIHRvb2xzIGNhbiBhZGQgdGhlaXIgc3BlY2lm aWMgc291cmNlcworKyAgICBkZWYgYWRkaXRpb25hbF9zb3VyY2VfZW50cmllcyhzZWxmKToKKysg ICAgICAgIHJldHVybiB7fQorKworICAgICBkZWYgcHJlX3B1c2hfY2hlY2soc2VsZiwgcmVmKToK KyAgICAgICAgIHNob3dfaGludCA9ICgnSGludDogdGhpcyBjaGVjayAoLmdpdC9ob29rcy9wcmUt cHVzaCBzY3JpcHQpIGNhbiBiZSBieXBhc3NlZCBieSBhZGRpbmcgJworICAgICAgICAgICAgICAg ICAgICAgICd0aGUgYXJndW1lbnQgXCctLW5vLXZlcmlmeVwnIGFyZ3VtZW50IHRvIHRoZSBwdXNo IGNvbW1hbmQuJykKK0BAIC00NTYxLDEzICs0NTY1LDE3IEBAIGNsYXNzIENvbW1hbmRzKG9iamVj dCk6CisgICAgICAgICAjIGxpc3Qgb2YgYWxsIGZpbGVzICh0aGVpciByZWxhdGl2ZSBwYXRocykg aW4gdGhlIGNvbW1pdAorICAgICAgICAgcmVwb19lbnRyaWVzID0gc2V0KGl0ZW0ucGF0aCBmb3Ig aXRlbSBpbiBjb21taXQudHJlZS50cmF2ZXJzZSgpIGlmIGl0ZW0udHlwZSAhPSAidHJlZSIpCisg CisrICAgICAgICAjIG90aGVyIHgtcGtnIHRvb2xzIGNhbiBhZGQgdGhlaXIgc3BlY2lmaWMgc291 cmNlcworKyAgICAgICAgYWRkaXRpb25hbF9lbnRyaWVzID0gc2V0KHNlbGYuYWRkaXRpb25hbF9z b3VyY2VfZW50cmllcygpKQorKworICAgICAgICAgIyBjaGVjayB3aGV0aGVyIGV2ZXJ5IHNvdXJj ZSBmaWxlIGlzIGVpdGhlciBsaXN0ZWQgaW4gdGhlICdzb3VyY2VzJyBmaWxlIG9yIHRyYWNrZWQg aW4gZ2l0CisgICAgICAgICBmb3Igc291cmNlX2ZpbGUgaW4gc291cmNlX2ZpbGVzOgorICAgICAg ICAgICAgIGxpc3RlZCA9IHNvdXJjZV9maWxlIGluIHNvdXJjZXNmX2VudHJpZXMKKyAgICAgICAg ICAgICB0cmFja2VkID0gc291cmNlX2ZpbGUgaW4gcmVwb19lbnRyaWVzCistICAgICAgICAgICAg aWYgbm90IChsaXN0ZWQgb3IgdHJhY2tlZCk6CisrICAgICAgICAgICAgbGlzdGVkX2FkZGl0aW9u YWwgPSBzb3VyY2VfZmlsZSBpbiBhZGRpdGlvbmFsX2VudHJpZXMKKysgICAgICAgICAgICBpZiBu b3QgKGxpc3RlZCBvciB0cmFja2VkIG9yIGxpc3RlZF9hZGRpdGlvbmFsKToKKyAgICAgICAgICAg ICAgICAgc2VsZi5sb2cuZXJyb3IoJ1NvdXJjZSBmaWxlIFwnezB9XCcgd2FzIG5laXRoZXIgbGlz dGVkIGluIHRoZSBcJ3NvdXJjZXNcJyBmaWxlICcKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJ25vciB0cmFja2VkIGluIGdpdC4gJworKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAnbm9yIHRyYWNrZWQgaW4gZ2l0IG5vciBsaXN0ZWQgaW4gYWRkaXRpb25hbCBzb3VyY2Vz LiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdQdXNoIG9wZXJhdGlvbiB3YXMg Y2FuY2VsbGVkJy5mb3JtYXQoc291cmNlX2ZpbGUpKQorICAgICAgICAgICAgICAgICBzZWxmLmxv Zy53YXJuaW5nKHNob3dfaGludCkKKyAgICAgICAgICAgICAgICAgc3lzLmV4aXQoNCkKK2RpZmYg LS1naXQgYS90ZXN0cy9jb21tYW5kcy90ZXN0X3ByZV9wdXNoX2NoZWNrLnB5IGIvdGVzdHMvY29t bWFuZHMvdGVzdF9wcmVfcHVzaF9jaGVjay5weQoraW5kZXggZWUxNTFjMS4uNzkxNjVlYyAxMDA2 NDQKKy0tLSBhL3Rlc3RzL2NvbW1hbmRzL3Rlc3RfcHJlX3B1c2hfY2hlY2sucHkKKysrKyBiL3Rl c3RzL2NvbW1hbmRzL3Rlc3RfcHJlX3B1c2hfY2hlY2sucHkKK0BAIC05MCw4ICs5MCw4IEBAIFBh dGNoMzogZC5wYXRjaAorIAorICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGMuZXhjZXB0aW9u LmNvZGUsIDQpCisgICAgICAgICBsb2dfZXJyb3IuYXNzZXJ0X2NhbGxlZF9vbmNlX3dpdGgoIlNv dXJjZSBmaWxlICdiLnBhdGNoJyB3YXMgbmVpdGhlciBsaXN0ZWQgaW4gdGhlICIKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ3NvdXJjZXMnIGZpbGUgbm9yIHRy YWNrZWQgaW4gZ2l0LiBQdXNoIG9wZXJhdGlvbiAiCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIndhcyBjYW5jZWxsZWQiKQorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICInc291cmNlcycgZmlsZSBub3IgdHJhY2tlZCBpbiBnaXQg bm9yIGxpc3RlZCAiCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImluIGFkZGl0aW9uYWwgc291cmNlcy4gUHVzaCBvcGVyYXRpb24gd2FzIGNhbmNlbGxlZCIpCisg CisgICAgICAgICAjIFZlcmlmeSBhZGRlZCBmaWxlcyBhcmUgY29tbWl0dGVkIGJ1dCBub3QgcHVz aGVkIHRvIG9yaWdpbgorICAgICAgICAgbG9jYWxfcmVwbyA9IGdpdC5SZXBvKHNlbGYuY2xvbmVk X2RpcikKKy0tIAorMi40My4wCisKCmRpZmYgLS1naXQgYS8wMDI2LUZpeC1mbGFrZTgtY29tcGxh aW50cy5wYXRjaCBiLzAwMjYtRml4LWZsYWtlOC1jb21wbGFpbnRzLnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5NTVhNDkKLS0tIC9kZXYvbnVsbAorKysgYi8wMDI2 LUZpeC1mbGFrZTgtY29tcGxhaW50cy5wYXRjaApAQCAtMCwwICsxLDQyIEBACitGcm9tIDVjOTE1 YTU0OWFkMmQxMGEzZWIzNmM1NjgwMTU3NGQ4MWE2MDE2NzAgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCitGcm9tOiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorRGF0ZTogVHVlLCAx IEF1ZyAyMDIzIDIzOjI2OjQzICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMDUvMTddIEZpeCBmbGFr ZTggY29tcGxhaW50cworCitFNzIxIGRvIG5vdCBjb21wYXJlIHR5cGVzLCBmb3IgZXhhY3QgY2hl Y2tzIHVzZSBgaXNgIC8gYGlzIG5vdGAsIGZvcgoraW5zdGFuY2UgY2hlY2tzIHVzZSBgaXNpbnN0 YW5jZSgpYAorQ29uZGl0aW9ucyBpbiB0aGUgbWV0aG9kIGBfbGlzdF9icmFuY2hlc2Agd2VyZSBz d2l0Y2hlZCBiZWNhdXNlOgorYGlzc3ViY2xhc3MoZ2l0LlJlbW90ZVJlZmVyZW5jZSwgZ2l0Lkhl YWQpYAorCitTaWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgor LS0tCisgcHlycGtnL19faW5pdF9fLnB5IHwgOCArKysrLS0tLQorIDEgZmlsZSBjaGFuZ2VkLCA0 IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9weXJwa2cvX19p bml0X18ucHkgYi9weXJwa2cvX19pbml0X18ucHkKK2luZGV4IGJjNjY5YjkuLmY2OWYyY2UgMTAw NjQ0CistLS0gYS9weXJwa2cvX19pbml0X18ucHkKKysrKyBiL3B5cnBrZy9fX2luaXRfXy5weQor QEAgLTE0MTEsMTUgKzE0MTEsMTUgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAg IHJlbW90ZXMgPSBbXQorICAgICAgICAgbG9jYWxzID0gW10KKyAgICAgICAgIGZvciByZWYgaW4g cmVmczoKKy0gICAgICAgICAgICBpZiB0eXBlKHJlZikgPT0gZ2l0LkhlYWQ6CistICAgICAgICAg ICAgICAgIHNlbGYubG9nLmRlYnVnKCdGb3VuZCBsb2NhbCBicmFuY2ggJXMnLCByZWYubmFtZSkK Ky0gICAgICAgICAgICAgICAgbG9jYWxzLmFwcGVuZChyZWYubmFtZSkKKy0gICAgICAgICAgICBl bGlmIHR5cGUocmVmKSA9PSBnaXQuUmVtb3RlUmVmZXJlbmNlOgorKyAgICAgICAgICAgIGlmIGlz aW5zdGFuY2UocmVmLCBnaXQuUmVtb3RlUmVmZXJlbmNlKToKKyAgICAgICAgICAgICAgICAgaWYg cmVmLnJlbW90ZV9oZWFkID09ICdIRUFEJzoKKyAgICAgICAgICAgICAgICAgICAgIHNlbGYubG9n LmRlYnVnKCdTa2lwcGluZyByZW1vdGUgYnJhbmNoIGFsaWFzIEhFQUQnKQorICAgICAgICAgICAg ICAgICAgICAgY29udGludWUgICMgTm90IHVzZWZ1bCBpbiB0aGlzIGNvbnRleHQKKyAgICAgICAg ICAgICAgICAgc2VsZi5sb2cuZGVidWcoJ0ZvdW5kIHJlbW90ZSBicmFuY2ggJXMnLCByZWYubmFt ZSkKKyAgICAgICAgICAgICAgICAgcmVtb3Rlcy5hcHBlbmQocmVmLm5hbWUpCisrICAgICAgICAg ICAgZWxpZiBpc2luc3RhbmNlKHJlZiwgZ2l0LkhlYWQpOgorKyAgICAgICAgICAgICAgICBzZWxm LmxvZy5kZWJ1ZygnRm91bmQgbG9jYWwgYnJhbmNoICVzJywgcmVmLm5hbWUpCisrICAgICAgICAg ICAgICAgIGxvY2Fscy5hcHBlbmQocmVmLm5hbWUpCisgICAgICAgICByZXR1cm4gKGxvY2Fscywg cmVtb3RlcykKKyAKKyAgICAgZGVmIF9zcnBtZGV0YWlscyhzZWxmLCBzcnBtKToKKy0tIAorMi40 My4wCisKCmRpZmYgLS1naXQgYS8wMDI2LVByZXBhcmUtdGhlLWxvb2thc2lkZS1jYWNoZS1jb2Rl LWZvci1yZXRyaWVzLnBhdGNoIGIvMDAyNi1QcmVwYXJlLXRoZS1sb29rYXNpZGUtY2FjaGUtY29k ZS1mb3ItcmV0cmllcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzMzYTk4 MC4uMDAwMDAwMAotLS0gYS8wMDI2LVByZXBhcmUtdGhlLWxvb2thc2lkZS1jYWNoZS1jb2RlLWZv ci1yZXRyaWVzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTQ4ICswLDAgQEAKLUZyb20gMWEw NjAxZDI5Nzk0Y2VjMWY3MzVhMTAyMDgzNjRkMTE5NThjNDFlYyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKLUZyb206IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+Ci1EYXRlOiBXZWQs IDI2IEp1bCAyMDIzIDAxOjMwOjEyICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggMi80XSBQcmVwYXJl IHRoZSBsb29rYXNpZGUgY2FjaGUgY29kZSBmb3IgcmV0cmllcwotCi1UaGVzZSBjaGFuZ2VzIHNo b3VsZCBub3QgaGF2ZSBhbiBpbXBhY3Qgb24gdGhlIG9yaWdpbmFsIGZ1bmN0aW9uYWxpdHkuCi0K LUpJUkE6IFJIRUxDTVAtMTEyMTAKLQotU2lnbmVkLW9mZi1ieTogT25kcmVqIE5vc2VrIDxvbm9z ZWtAcmVkaGF0LmNvbT4KLS0tLQotIHB5cnBrZy9sb29rYXNpZGUucHkgfCA5NiArKysrKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAxIGZpbGUgY2hhbmdlZCwgNDgg aW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9weXJwa2cvbG9v a2FzaWRlLnB5IGIvcHlycGtnL2xvb2thc2lkZS5weQotaW5kZXggM2VmY2Q4OC4uZjk0ZmZkYiAx MDA2NDQKLS0tLSBhL3B5cnBrZy9sb29rYXNpZGUucHkKLSsrKyBiL3B5cnBrZy9sb29rYXNpZGUu cHkKLUBAIC0xNjMsMTcgKzE2MywxNyBAQCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZShvYmplY3Qp OgotICAgICAgICAgICAgIHVybCA9IHVybC5lbmNvZGUoJ3V0Zi04JykKLSAgICAgICAgIHNlbGYu bG9nLmRlYnVnKCJGdWxsIHVybDogJXMiLCB1cmwpCi0gCi0rICAgICAgICBjID0gcHljdXJsLkN1 cmwoKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLlVSTCwgdXJsKQotKyAgICAgICAgYy5zZXRv cHQocHljdXJsLkhUVFBIRUFERVIsIFsnUHJhZ21hOiddKQotKyAgICAgICAgYy5zZXRvcHQocHlj dXJsLk5PUFJPR1JFU1MsIEZhbHNlKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLlBST0dSRVNT RlVOQ1RJT04sIHNlbGYucHJpbnRfcHJvZ3Jlc3MpCi0rICAgICAgICBjLnNldG9wdChweWN1cmwu T1BUX0ZJTEVUSU1FLCBUcnVlKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLkxPV19TUEVFRF9M SU1JVCwgMTAwMCkKLSsgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5MT1dfU1BFRURfVElNRSwgMzAw KQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xPQ0FUSU9OLCAxKQotICAgICAgICAg d2l0aCBvcGVuKG91dGZpbGUsICd3YicpIGFzIGY6Ci0tICAgICAgICAgICAgYyA9IHB5Y3VybC5D dXJsKCkKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuVVJMLCB1cmwpCi0tICAgICAgICAg ICAgYy5zZXRvcHQocHljdXJsLkhUVFBIRUFERVIsIFsnUHJhZ21hOiddKQotLSAgICAgICAgICAg IGMuc2V0b3B0KHB5Y3VybC5OT1BST0dSRVNTLCBGYWxzZSkKLS0gICAgICAgICAgICBjLnNldG9w dChweWN1cmwuUFJPR1JFU1NGVU5DVElPTiwgc2VsZi5wcmludF9wcm9ncmVzcykKLS0gICAgICAg ICAgICBjLnNldG9wdChweWN1cmwuT1BUX0ZJTEVUSU1FLCBUcnVlKQotICAgICAgICAgICAgIGMu c2V0b3B0KHB5Y3VybC5XUklURURBVEEsIGYpCi0tICAgICAgICAgICAgYy5zZXRvcHQocHljdXJs LkxPV19TUEVFRF9MSU1JVCwgMTAwMCkKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuTE9X X1NQRUVEX1RJTUUsIDMwMCkKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuRk9MTE9XTE9D QVRJT04sIDEpCi0gICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICBjLnBlcmZvcm0o KQotICAgICAgICAgICAgICAgICB0c3RhbXAgPSBjLmdldGluZm8ocHljdXJsLklORk9fRklMRVRJ TUUpCi1AQCAtMjU0LDI5ICsyNTQsMjkgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0 KToKLSAgICAgICAgICAgICAgICAgICAgICAoJyVzc3VtJyAlIHNlbGYuaGFzaHR5cGUsIGhhc2gp LAotICAgICAgICAgICAgICAgICAgICAgICgnZmlsZW5hbWUnLCBmaWxlbmFtZSldCi0gCi0tICAg ICAgICB3aXRoIGlvLkJ5dGVzSU8oKSBhcyBidWY6Ci0tICAgICAgICAgICAgYyA9IHB5Y3VybC5D dXJsKCkKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuVVJMLCBzZWxmLnVwbG9hZF91cmwp Ci0tICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLldSSVRFRlVOQ1RJT04sIGJ1Zi53cml0ZSkK LS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuSFRUUFBPU1QsIHBvc3RfZGF0YSkKLS0gICAg ICAgICAgICBjLnNldG9wdChweWN1cmwuRk9MTE9XTE9DQVRJT04sIDEpCi0rICAgICAgICBjID0g cHljdXJsLkN1cmwoKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLlVSTCwgc2VsZi51cGxvYWRf dXJsKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBQT1NULCBwb3N0X2RhdGEpCi0rICAg ICAgICBjLnNldG9wdChweWN1cmwuRk9MTE9XTE9DQVRJT04sIDEpCi0gCi0tICAgICAgICAgICAg aWYgc2VsZi5jbGllbnRfY2VydCBpcyBub3QgTm9uZToKLS0gICAgICAgICAgICAgICAgaWYgb3Mu cGF0aC5leGlzdHMoc2VsZi5jbGllbnRfY2VydCk6Ci0tICAgICAgICAgICAgICAgICAgICBjLnNl dG9wdChweWN1cmwuU1NMQ0VSVCwgc2VsZi5jbGllbnRfY2VydCkKLS0gICAgICAgICAgICAgICAg ZWxzZToKLS0gICAgICAgICAgICAgICAgICAgIHNlbGYubG9nLndhcm5pbmcoIk1pc3NpbmcgY2Vy dGlmaWNhdGU6ICVzIgotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIHNl bGYuY2xpZW50X2NlcnQpCi0rICAgICAgICBpZiBzZWxmLmNsaWVudF9jZXJ0IGlzIG5vdCBOb25l OgotKyAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKHNlbGYuY2xpZW50X2NlcnQpOgotKyAg ICAgICAgICAgICAgICBjLnNldG9wdChweWN1cmwuU1NMQ0VSVCwgc2VsZi5jbGllbnRfY2VydCkK LSsgICAgICAgICAgICBlbHNlOgotKyAgICAgICAgICAgICAgICBzZWxmLmxvZy53YXJuaW5nKCJN aXNzaW5nIGNlcnRpZmljYXRlOiAlcyIKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAlIHNlbGYuY2xpZW50X2NlcnQpCi0gCi0tICAgICAgICAgICAgaWYgc2VsZi5jYV9jZXJ0IGlz IG5vdCBOb25lOgotLSAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZWxmLmNhX2Nl cnQpOgotLSAgICAgICAgICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkNBSU5GTywgc2VsZi5j YV9jZXJ0KQotLSAgICAgICAgICAgICAgICBlbHNlOgotLSAgICAgICAgICAgICAgICAgICAgc2Vs Zi5sb2cud2FybmluZygiTWlzc2luZyBjZXJ0aWZpY2F0ZTogJXMiLCBzZWxmLmNhX2NlcnQpCi0r ICAgICAgICBpZiBzZWxmLmNhX2NlcnQgaXMgbm90IE5vbmU6Ci0rICAgICAgICAgICAgaWYgb3Mu cGF0aC5leGlzdHMoc2VsZi5jYV9jZXJ0KToKLSsgICAgICAgICAgICAgICAgYy5zZXRvcHQocHlj dXJsLkNBSU5GTywgc2VsZi5jYV9jZXJ0KQotKyAgICAgICAgICAgIGVsc2U6Ci0rICAgICAgICAg ICAgICAgIHNlbGYubG9nLndhcm5pbmcoIk1pc3NpbmcgY2VydGlmaWNhdGU6ICVzIiwgc2VsZi5j YV9jZXJ0KQotIAotLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQQVVUSCwgcHljdXJs LkhUVFBBVVRIX0dTU05FR09USUFURSkKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuVVNF UlBXRCwgJzonKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBBVVRILCBweWN1cmwuSFRU UEFVVEhfR1NTTkVHT1RJQVRFKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLlVTRVJQV0QsICc6 JykKLSAKLSsgICAgICAgIHdpdGggaW8uQnl0ZXNJTygpIGFzIGJ1ZjoKLSsgICAgICAgICAgICBj LnNldG9wdChweWN1cmwuV1JJVEVGVU5DVElPTiwgYnVmLndyaXRlKQotICAgICAgICAgICAgIHRy eToKLSAgICAgICAgICAgICAgICAgYy5wZXJmb3JtKCkKLSAgICAgICAgICAgICAgICAgc3RhdHVz ID0gYy5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9DT0RFKQotQEAgLTM0MSwzMCArMzQxLDMwIEBA IGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVjdCk6Ci0gICAgICAgICAgICAgKCdtdGltZScs IHN0cihpbnQob3Muc3RhdChmaWxlcGF0aCkuc3RfbXRpbWUpKSksCi0gICAgICAgICBdCi0gCi0t ICAgICAgICB3aXRoIGlvLkJ5dGVzSU8oKSBhcyBidWY6Ci0tICAgICAgICAgICAgYyA9IHB5Y3Vy bC5DdXJsKCkKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuVVJMLCBzZWxmLnVwbG9hZF91 cmwpCi0tICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLk5PUFJPR1JFU1MsIEZhbHNlKQotLSAg ICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5QUk9HUkVTU0ZVTkNUSU9OLCBzZWxmLnByaW50X3By b2dyZXNzKQotLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5XUklURUZVTkNUSU9OLCBidWYu d3JpdGUpCi0tICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBQT1NULCBwb3N0X2RhdGEp Ci0tICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xPQ0FUSU9OLCAxKQotKyAgICAg ICAgYyA9IHB5Y3VybC5DdXJsKCkKLSsgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5VUkwsIHNlbGYu dXBsb2FkX3VybCkKLSsgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5OT1BST0dSRVNTLCBGYWxzZSkK LSsgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5QUk9HUkVTU0ZVTkNUSU9OLCBzZWxmLnByaW50X3By b2dyZXNzKQotKyAgICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBQT1NULCBwb3N0X2RhdGEpCi0r ICAgICAgICBjLnNldG9wdChweWN1cmwuRk9MTE9XTE9DQVRJT04sIDEpCi0gCi0tICAgICAgICAg ICAgaWYgc2VsZi5jbGllbnRfY2VydCBpcyBub3QgTm9uZToKLS0gICAgICAgICAgICAgICAgaWYg b3MucGF0aC5leGlzdHMoc2VsZi5jbGllbnRfY2VydCk6Ci0tICAgICAgICAgICAgICAgICAgICBj LnNldG9wdChweWN1cmwuU1NMQ0VSVCwgc2VsZi5jbGllbnRfY2VydCkKLS0gICAgICAgICAgICAg ICAgZWxzZToKLS0gICAgICAgICAgICAgICAgICAgIHNlbGYubG9nLndhcm5pbmcoIk1pc3Npbmcg Y2VydGlmaWNhdGU6ICVzIiwgc2VsZi5jbGllbnRfY2VydCkKLSsgICAgICAgIGlmIHNlbGYuY2xp ZW50X2NlcnQgaXMgbm90IE5vbmU6Ci0rICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoc2Vs Zi5jbGllbnRfY2VydCk6Ci0rICAgICAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5TU0xDRVJU LCBzZWxmLmNsaWVudF9jZXJ0KQotKyAgICAgICAgICAgIGVsc2U6Ci0rICAgICAgICAgICAgICAg IHNlbGYubG9nLndhcm5pbmcoIk1pc3NpbmcgY2VydGlmaWNhdGU6ICVzIiwgc2VsZi5jbGllbnRf Y2VydCkKLSAKLS0gICAgICAgICAgICBpZiBzZWxmLmNhX2NlcnQgaXMgbm90IE5vbmU6Ci0tICAg ICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKHNlbGYuY2FfY2VydCk6Ci0tICAgICAgICAg ICAgICAgICAgICBjLnNldG9wdChweWN1cmwuQ0FJTkZPLCBzZWxmLmNhX2NlcnQpCi0tICAgICAg ICAgICAgICAgIGVsc2U6Ci0tICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy53YXJuaW5nKCJN aXNzaW5nIGNlcnRpZmljYXRlOiAlcyIsIHNlbGYuY2FfY2VydCkKLSsgICAgICAgIGlmIHNlbGYu Y2FfY2VydCBpcyBub3QgTm9uZToKLSsgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZWxm LmNhX2NlcnQpOgotKyAgICAgICAgICAgICAgICBjLnNldG9wdChweWN1cmwuQ0FJTkZPLCBzZWxm LmNhX2NlcnQpCi0rICAgICAgICAgICAgZWxzZToKLSsgICAgICAgICAgICAgICAgc2VsZi5sb2cu d2FybmluZygiTWlzc2luZyBjZXJ0aWZpY2F0ZTogJXMiLCBzZWxmLmNhX2NlcnQpCi0gCi0tICAg ICAgICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBBVVRILCBweWN1cmwuSFRUUEFVVEhfR1NTTkVH T1RJQVRFKQotLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5VU0VSUFdELCAnOicpCi0rICAg ICAgICBjLnNldG9wdChweWN1cmwuSFRUUEFVVEgsIHB5Y3VybC5IVFRQQVVUSF9HU1NORUdPVElB VEUpCi0rICAgICAgICBjLnNldG9wdChweWN1cmwuVVNFUlBXRCwgJzonKQotIAotKyAgICAgICAg d2l0aCBpby5CeXRlc0lPKCkgYXMgYnVmOgotKyAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5X UklURUZVTkNUSU9OLCBidWYud3JpdGUpCi0gICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAg ICAgICBjLnBlcmZvcm0oKQotICAgICAgICAgICAgICAgICBzdGF0dXMgPSBjLmdldGluZm8ocHlj dXJsLlJFU1BPTlNFX0NPREUpCi0tLSAKLTIuNDEuMAotCgpkaWZmIC0tZ2l0IGEvMDAyNy1Mb29r YXNpZGUtY2FjaGUtb3BlcmF0aW9ucy1yZXRyaWVzLnBhdGNoIGIvMDAyNy1Mb29rYXNpZGUtY2Fj aGUtb3BlcmF0aW9ucy1yZXRyaWVzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCBmZTNhMTcxLi4wMDAwMDAwCi0tLSBhLzAwMjctTG9va2FzaWRlLWNhY2hlLW9wZXJhdGlvbnMt cmV0cmllcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI3OCArMCwwIEBACi1Gcm9tIDNhOTYy OTNkMjQ3OWE3NTM0OGY0MjQ4MDYwMjhjOWI2NDBhZmYzMWMgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCi1Gcm9tOiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgotRGF0ZTogVHVlLCAy MiBBdWcgMjAyMyAxNDo0ODowMiArMDIwMAotU3ViamVjdDogW1BBVENIIDMvNF0gTG9va2FzaWRl IGNhY2hlIG9wZXJhdGlvbnMgcmV0cmllcwotCi1Cb3RoIHVwbG9hZCBhbmQgZG93bmxvYWQgbmV0 d29yayBvcGVyYXRpb25zIG1pZ2h0IGZhaWwKLWFuZCBpbiB0aGlzIGNhc2UsIGEgcmV0cnkgbWVj aGFuaXNtIHdhcyBpbXBsZW1lbnRlZC4KLUluIGNhc2Ugb2YgZmFpbHVyZSwgdGhlcmUgaXMgYSBk ZWxheSBhbmQgYW5vdGhlciBhdHRlbXB0KHMpLgotRGVsYXlzIGFyZSBpbmNyZWFzaW5nIHdpdGgg ZXZlcnkgYXR0ZW1wdC4KLQotSklSQTogUkhFTENNUC0xMTIxMAotCi1TaWduZWQtb2ZmLWJ5OiBP bmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgotLS0tCi0gcHlycGtnL2xvb2thc2lkZS5w eSAgICAgfCAxMjkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQotIHRl c3RzL3Rlc3RfbG9va2FzaWRlLnB5IHwgIDEyICsrLS0KLSAyIGZpbGVzIGNoYW5nZWQsIDg5IGlu c2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvcHlycGtnL2xvb2th c2lkZS5weSBiL3B5cnBrZy9sb29rYXNpZGUucHkKLWluZGV4IGY5NGZmZGIuLjAxZWVlNGEgMTAw NjQ0Ci0tLS0gYS9weXJwa2cvbG9va2FzaWRlLnB5Ci0rKysgYi9weXJwa2cvbG9va2FzaWRlLnB5 Ci1AQCAtMTQsMTEgKzE0LDEzIEBAIHdheSBpdCBpcyBkb25lIGJ5IEZlZG9yYSwgUkhFTCwgYW5k IG90aGVyIGRpc3RyaWJ1dGlvbnMgbWFpbnRhaW5lcnMuCi0gIiIiCi0gCi0gCi0raW1wb3J0IGZ1 bmN0b29scwotIGltcG9ydCBoYXNobGliCi0gaW1wb3J0IGlvCi0gaW1wb3J0IGxvZ2dpbmcKLSBp bXBvcnQgb3MKLSBpbXBvcnQgc3lzCi0raW1wb3J0IHRpbWUKLSAKLSBpbXBvcnQgcHljdXJsCi0g aW1wb3J0IHNpeAotQEAgLTMxLDcgKzMzLDcgQEAgZnJvbSAuZXJyb3JzIGltcG9ydCAoQWxyZWFk eVVwbG9hZGVkRXJyb3IsIERvd25sb2FkRXJyb3IsIEludmFsaWRIYXNoVHlwZSwKLSBjbGFzcyBD R0lMb29rYXNpZGVDYWNoZShvYmplY3QpOgotICAgICAiIiJBIGNsYXNzIHRvIGludGVyYWN0IHdp dGggYSBDR0ktYmFzZWQgbG9va2FzaWRlIGNhY2hlIiIiCi0gICAgIGRlZiBfX2luaXRfXyhzZWxm LCBoYXNodHlwZSwgZG93bmxvYWRfdXJsLCB1cGxvYWRfdXJsLAotLSAgICAgICAgICAgICAgICAg Y2xpZW50X2NlcnQ9Tm9uZSwgY2FfY2VydD1Ob25lKToKLSsgICAgICAgICAgICAgICAgIGNsaWVu dF9jZXJ0PU5vbmUsIGNhX2NlcnQ9Tm9uZSwgYXR0ZW1wdHM9Tm9uZSwgZGVsYXk9Tm9uZSk6Ci0g ICAgICAgICAiIiJDb25zdHJ1Y3RvcgotIAotICAgICAgICAgOnBhcmFtIHN0ciBoYXNodHlwZTog VGhlIGhhc2ggYWxnb3JpdGhtIHRvIHVzZSBmb3IgdXBsb2Fkcy4gKGUuZyAnbWQ1JykKLUBAIC00 NSwxMiArNDcsMTggQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0KToKLSAgICAgICAg ICAgICB1c2UgZm9yIEhUVFBTIGNvbm5leGlvbnMuIChlLmcgaWYgdGhlIHNlcnZlciBjZXJ0aWZp Y2F0ZSBpcwotICAgICAgICAgICAgIHNlbGYtc2lnbmVkLiBJdCBkZWZhdWx0cyB0byBOb25lLCBp biB3aGljaCBjYXNlIHRoZSBzeXN0ZW0gQ0EKLSAgICAgICAgICAgICBidW5kbGUgaXMgdXNlZC4K LSsgICAgICAgIDpwYXJhbSBpbnQgYXR0ZW1wdHM6IHJlcGVhdCBuZXR3b3JrIG9wZXJhdGlvbnMg YWZ0ZXIgZmFpbHVyZS4gVGhlIHBhcmFtCi0rICAgICAgICAgICAgc2F5cyBob3cgbWFueSB0cmll cyB0byBkby4gTm9uZSA9IHNpbmdsZSBhdHRlbXB0IC8gbm8tcmV0cnlpbmcKLSsgICAgICAgIDpw YXJhbSBpbnQgZGVsYXk6IEluaXRpYWwgZGVsYXkgYmV0d2VlbiBuZXR3b3JrIG9wZXJhdGlvbiBh dHRlbXB0cy4KLSsgICAgICAgICAgICBFYWNoIGF0dGVtcHQgZG91YmxlcyB0aGUgcHJldmlvdXMg ZGVsYXkgdmFsdWUuIEluIHNlY29uZHMuCi0gICAgICAgICAiIiIKLSAgICAgICAgIHNlbGYuaGFz aHR5cGUgPSBoYXNodHlwZQotICAgICAgICAgc2VsZi5kb3dubG9hZF91cmwgPSBkb3dubG9hZF91 cmwKLSAgICAgICAgIHNlbGYudXBsb2FkX3VybCA9IHVwbG9hZF91cmwKLSAgICAgICAgIHNlbGYu Y2xpZW50X2NlcnQgPSBjbGllbnRfY2VydAotICAgICAgICAgc2VsZi5jYV9jZXJ0ID0gY2FfY2Vy dAotKyAgICAgICAgc2VsZi5hdHRlbXB0cyA9IGF0dGVtcHRzIGlmIGF0dGVtcHRzIGlzIG5vdCBO b25lIGFuZCBhdHRlbXB0cyA+IDEgZWxzZSAxCi0rICAgICAgICBzZWxmLmRlbGF5X2JldHdlZW5f YXR0ZW1wdHMgPSBkZWxheSBpZiBkZWxheSBpcyBub3QgTm9uZSBhbmQgZGVsYXkgPj0gMCBlbHNl IDE1Ci0gCi0gICAgICAgICBzZWxmLmxvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKF9fbmFtZV9fKQot IAotQEAgLTE3MCwyMCArMTc4LDEzIEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVjdCk6 Ci0gICAgICAgICBjLnNldG9wdChweWN1cmwuUFJPR1JFU1NGVU5DVElPTiwgc2VsZi5wcmludF9w cm9ncmVzcykKLSAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5PUFRfRklMRVRJTUUsIFRydWUpCi0g ICAgICAgICBjLnNldG9wdChweWN1cmwuTE9XX1NQRUVEX0xJTUlULCAxMDAwKQotLSAgICAgICAg Yy5zZXRvcHQocHljdXJsLkxPV19TUEVFRF9USU1FLCAzMDApCi0rICAgICAgICBjLnNldG9wdChw eWN1cmwuTE9XX1NQRUVEX1RJTUUsIDYwKQotICAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExP V0xPQ0FUSU9OLCAxKQotLSAgICAgICAgd2l0aCBvcGVuKG91dGZpbGUsICd3YicpIGFzIGY6Ci0t ICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLldSSVRFREFUQSwgZikKLS0gICAgICAgICAgICB0 cnk6Ci0tICAgICAgICAgICAgICAgIGMucGVyZm9ybSgpCi0tICAgICAgICAgICAgICAgIHRzdGFt cCA9IGMuZ2V0aW5mbyhweWN1cmwuSU5GT19GSUxFVElNRSkKLS0gICAgICAgICAgICAgICAgc3Rh dHVzID0gYy5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9DT0RFKQotLQotLSAgICAgICAgICAgIGV4 Y2VwdCBFeGNlcHRpb24gYXMgZToKLS0gICAgICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJv cihlKQotIAotLSAgICAgICAgICAgIGZpbmFsbHk6Ci0tICAgICAgICAgICAgICAgIGMuY2xvc2Uo KQotKyAgICAgICAgIyBjYWxsIHJldHJ5IG1ldGhvZCBkaXJlY3RseSBpbnN0ZWFkIG9mIEByZXRy eSBkZWNvcmF0b3IgLSB0aGlzIGFwcHJvYWNoIGFsbG93cyBwYXNzaW5nCi0rICAgICAgICAjIG9i amVjdCdzIGludGVybmFsIHZhcmlhYmxlcyBpbnRvIHRoZSByZXRyeSBtZXRob2QKLSsgICAgICAg IHN0YXR1cywgdHN0YW1wID0gc2VsZi5yZXRyeShyYWlzZXM9RG93bmxvYWRFcnJvcikoc2VsZi5y ZXRyeV9kb3dubG9hZCkoYywgb3V0ZmlsZSkKLSsgICAgICAgIGMuY2xvc2UoKQotIAotICAgICAg ICAgIyBHZXQgYmFjayBhIG5ldyBsaW5lLCBhZnRlciBkaXNwbGF5aW5nIHRoZSBkb3dubG9hZCBw cm9ncmVzcwotICAgICAgICAgaWYgc3lzLnN0ZG91dC5pc2F0dHkoKToKLUBAIC0yMjAsMTMgKzIy MSw4IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVjdCk6Ci0gICAgICAgICBjLnNldG9w dChweWN1cmwuTk9CT0RZLCBUcnVlKQotICAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xP Q0FUSU9OLCAxKQotIAotLSAgICAgICAgdHJ5OgotLSAgICAgICAgICAgIGMucGVyZm9ybSgpCi0t ICAgICAgICAgICAgc3RhdHVzID0gYy5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9DT0RFKQotLSAg ICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgotLSAgICAgICAgICAgIHJhaXNlIERvd25sb2Fk RXJyb3IoZSkKLS0gICAgICAgIGZpbmFsbHk6Ci0tICAgICAgICAgICAgYy5jbG9zZSgpCi0rICAg ICAgICBzdGF0dXMgPSBzZWxmLnJldHJ5KHJhaXNlcz1Eb3dubG9hZEVycm9yKShzZWxmLnJldHJ5 X3JlbW90ZV9maWxlX2V4aXN0c19oZWFkKShjKQotKyAgICAgICAgYy5jbG9zZSgpCi0gCi0gICAg ICAgICBpZiBzdGF0dXMgIT0gMjAwOgotICAgICAgICAgICAgIHNlbGYubG9nLmRlYnVnKCdVbmF2 YWlsYWJsZSBmaWxlIFwnJXNcJyBhdCAlcycgJSAoZmlsZW5hbWUsIHVybCkpCi1AQCAtMjc1LDE5 ICsyNzEsOCBAQCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZShvYmplY3QpOgotICAgICAgICAgYy5z ZXRvcHQocHljdXJsLkhUVFBBVVRILCBweWN1cmwuSFRUUEFVVEhfR1NTTkVHT1RJQVRFKQotICAg ICAgICAgYy5zZXRvcHQocHljdXJsLlVTRVJQV0QsICc6JykKLSAKLS0gICAgICAgIHdpdGggaW8u Qnl0ZXNJTygpIGFzIGJ1ZjoKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuV1JJVEVGVU5D VElPTiwgYnVmLndyaXRlKQotLSAgICAgICAgICAgIHRyeToKLS0gICAgICAgICAgICAgICAgYy5w ZXJmb3JtKCkKLS0gICAgICAgICAgICAgICAgc3RhdHVzID0gYy5nZXRpbmZvKHB5Y3VybC5SRVNQ T05TRV9DT0RFKQotLQotLSAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKLS0gICAg ICAgICAgICAgICAgcmFpc2UgVXBsb2FkRXJyb3IoZSkKLS0KLS0gICAgICAgICAgICBmaW5hbGx5 OgotLSAgICAgICAgICAgICAgICBjLmNsb3NlKCkKLS0KLS0gICAgICAgICAgICBvdXRwdXQgPSBi dWYuZ2V0dmFsdWUoKS5zdHJpcCgpCi0rICAgICAgICBzdGF0dXMsIG91dHB1dCA9IHNlbGYucmV0 cnkocmFpc2VzPVVwbG9hZEVycm9yKShzZWxmLnJldHJ5X3JlbW90ZV9maWxlX2V4aXN0cykoYykK LSsgICAgICAgIGMuY2xvc2UoKQotIAotICAgICAgICAgaWYgc3RhdHVzICE9IDIwMDoKLSAgICAg ICAgICAgICBzZWxmLnJhaXNlX3VwbG9hZF9lcnJvcihzdGF0dXMpCi1AQCAtMzYzLDE5ICszNDgs OCBAQCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZShvYmplY3QpOgotICAgICAgICAgYy5zZXRvcHQo cHljdXJsLkhUVFBBVVRILCBweWN1cmwuSFRUUEFVVEhfR1NTTkVHT1RJQVRFKQotICAgICAgICAg Yy5zZXRvcHQocHljdXJsLlVTRVJQV0QsICc6JykKLSAKLS0gICAgICAgIHdpdGggaW8uQnl0ZXNJ TygpIGFzIGJ1ZjoKLS0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuV1JJVEVGVU5DVElPTiwg YnVmLndyaXRlKQotLSAgICAgICAgICAgIHRyeToKLS0gICAgICAgICAgICAgICAgYy5wZXJmb3Jt KCkKLS0gICAgICAgICAgICAgICAgc3RhdHVzID0gYy5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9D T0RFKQotLQotLSAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKLS0gICAgICAgICAg ICAgICAgcmFpc2UgVXBsb2FkRXJyb3IoZSkKLS0KLS0gICAgICAgICAgICBmaW5hbGx5OgotLSAg ICAgICAgICAgICAgICBjLmNsb3NlKCkKLS0KLS0gICAgICAgICAgICBvdXRwdXQgPSBidWYuZ2V0 dmFsdWUoKS5zdHJpcCgpCi0rICAgICAgICBzdGF0dXMsIG91dHB1dCA9IHNlbGYucmV0cnkocmFp c2VzPVVwbG9hZEVycm9yKShzZWxmLnJldHJ5X3VwbG9hZCkoYykKLSsgICAgICAgIGMuY2xvc2Uo KQotIAotICAgICAgICAgIyBHZXQgYmFjayBhIG5ldyBsaW5lLCBhZnRlciBkaXNwbGF5aW5nIHRo ZSBkb3dubG9hZCBwcm9ncmVzcwotICAgICAgICAgaWYgc3lzLnN0ZG91dC5pc2F0dHkoKToKLUBA IC0zODcsMyArMzYxLDY2IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVjdCk6Ci0gCi0g ICAgICAgICBpZiBvdXRwdXQ6Ci0gICAgICAgICAgICAgc2VsZi5sb2cuZGVidWcob3V0cHV0KQot KwotKyAgICBkZWYgcmV0cnlfZG93bmxvYWQoc2VsZiwgY3VybCwgb3V0ZmlsZSk6Ci0rICAgICAg ICB3aXRoIG9wZW4ob3V0ZmlsZSwgJ3diJykgYXMgZjoKLSsgICAgICAgICAgICBjdXJsLnNldG9w dChweWN1cmwuV1JJVEVEQVRBLCBmKQotKyAgICAgICAgICAgIGN1cmwucGVyZm9ybSgpCi0rICAg ICAgICAgICAgdHN0YW1wID0gY3VybC5nZXRpbmZvKHB5Y3VybC5JTkZPX0ZJTEVUSU1FKQotKyAg ICAgICAgICAgIHN0YXR1cyA9IGN1cmwuZ2V0aW5mbyhweWN1cmwuUkVTUE9OU0VfQ09ERSkKLSsg ICAgICAgIHJldHVybiBzdGF0dXMsIHRzdGFtcAotKwotKyAgICBkZWYgcmV0cnlfcmVtb3RlX2Zp bGVfZXhpc3RzX2hlYWQoc2VsZiwgY3VybCk6Ci0rICAgICAgICBjdXJsLnBlcmZvcm0oKQotKyAg ICAgICAgc3RhdHVzID0gY3VybC5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9DT0RFKQotKyAgICAg ICAgcmV0dXJuIHN0YXR1cwotKwotKyAgICBkZWYgcmV0cnlfcmVtb3RlX2ZpbGVfZXhpc3RzKHNl bGYsIGN1cmwpOgotKyAgICAgICAgd2l0aCBpby5CeXRlc0lPKCkgYXMgYnVmOgotKyAgICAgICAg ICAgIGN1cmwuc2V0b3B0KHB5Y3VybC5XUklURUZVTkNUSU9OLCBidWYud3JpdGUpCi0rICAgICAg ICAgICAgY3VybC5wZXJmb3JtKCkKLSsgICAgICAgICAgICBzdGF0dXMgPSBjdXJsLmdldGluZm8o cHljdXJsLlJFU1BPTlNFX0NPREUpCi0rICAgICAgICAgICAgb3V0cHV0ID0gYnVmLmdldHZhbHVl KCkuc3RyaXAoKQotKyAgICAgICAgcmV0dXJuIHN0YXR1cywgb3V0cHV0Ci0rCi0rICAgIGRlZiBy ZXRyeV91cGxvYWQoc2VsZiwgY3VybCk6Ci0rICAgICAgICB3aXRoIGlvLkJ5dGVzSU8oKSBhcyBi dWY6Ci0rICAgICAgICAgICAgY3VybC5zZXRvcHQocHljdXJsLldSSVRFRlVOQ1RJT04sIGJ1Zi53 cml0ZSkKLSsgICAgICAgICAgICBjdXJsLnBlcmZvcm0oKQotKyAgICAgICAgICAgIHN0YXR1cyA9 IGN1cmwuZ2V0aW5mbyhweWN1cmwuUkVTUE9OU0VfQ09ERSkKLSsgICAgICAgICAgICBvdXRwdXQg PSBidWYuZ2V0dmFsdWUoKS5zdHJpcCgpCi0rICAgICAgICByZXR1cm4gc3RhdHVzLCBvdXRwdXQK LSsKLSsgICAgZGVmIHJldHJ5KHNlbGYsIGF0dGVtcHRzPU5vbmUsIGRlbGF5X2JldHdlZW5fYXR0 ZW1wdHM9Tm9uZSwgd2FpdF9vbj1weWN1cmwuZXJyb3IsIHJhaXNlcz1Ob25lKToKLSsgICAgICAg ICIiIkEgZGVjb3JhdG9yIHRoYXQgYWxsb3dzIHRvIHJldHJ5IGEgc2VjdGlvbiBvZiBjb2RlIHVu dGlsIHN1Y2Nlc3Mgb3IgY291bnRlciBlbGFwc2VzCi0rICAgICAgICAiIiIKLSsKLSsgICAgICAg IGRlZiB3cmFwcGVyKGZ1bmN0aW9uKToKLSsgICAgICAgICAgICBAZnVuY3Rvb2xzLndyYXBzKGZ1 bmN0aW9uKQotKyAgICAgICAgICAgIGRlZiBpbm5lcigqYXJncywgKiprd2FyZ3MpOgotKwotKyAg ICAgICAgICAgICAgICBhdHRlbXB0c19hbGwgPSBhdHRlbXB0cyBvciBzZWxmLmF0dGVtcHRzCi0r ICAgICAgICAgICAgICAgIGF0dGVtcHRzX2xlZnQgPSBhdHRlbXB0c19hbGwKLSsgICAgICAgICAg ICAgICAgZGVsYXkgPSBkZWxheV9iZXR3ZWVuX2F0dGVtcHRzIG9yIHNlbGYuZGVsYXlfYmV0d2Vl bl9hdHRlbXB0cwotKyAgICAgICAgICAgICAgICB3aGlsZSBhdHRlbXB0c19sZWZ0ID4gMDoKLSsg ICAgICAgICAgICAgICAgICAgIHRyeToKLSsgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g ZnVuY3Rpb24oKmFyZ3MsICoqa3dhcmdzKQotKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHdh aXRfb24gYXMgZToKLSsgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy53YXJuKCJOZXR3 b3JrIGVycm9yOiAlcyIgJSAoZSkpCi0rICAgICAgICAgICAgICAgICAgICAgICAgYXR0ZW1wdHNf bGVmdCAtPSAxCi0rICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb2cuZGVidWcoIkF0dGVt cHQgJWQvJWQgaGFzIGZhaWxlZC4iCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJSAoYXR0ZW1wdHNfYWxsIC0gYXR0ZW1wdHNfbGVmdCwgYXR0ZW1wdHNfYWxsKSkKLSsg ICAgICAgICAgICAgICAgICAgICAgICBpZiBhdHRlbXB0c19sZWZ0OgotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICBzZWxmLmxvZy5pbmZvKCJUaGUgb3BlcmF0aW9uIHdpbGwgYmUgcmV0cmll ZCBpbiAlZHMuIiAlIChkZWxheSkpCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWUu c2xlZXAoZGVsYXkpCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5ICo9IDIKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb2cuaW5mbygiUmV0cnlpbmcgLi4uIikK LSsgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpZiByYWlzZXMgaXMgTm9uZToKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHJhaXNlICAjIFRoaXMgcmUtcmFpc2VzIHRoZSBsYXN0IGV4Y2VwdGlvbi4KLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZWxzZToKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHJhaXNlIHJhaXNlcyhlKQotKwotKyAgICAgICAgICAgIHJldHVybiBpbm5lcgotKwotKyAgICAg ICAgcmV0dXJuIHdyYXBwZXIKLWRpZmYgLS1naXQgYS90ZXN0cy90ZXN0X2xvb2thc2lkZS5weSBi L3Rlc3RzL3Rlc3RfbG9va2FzaWRlLnB5Ci1pbmRleCAzNWQzNDk5Li4yZmUxYmRiIDEwMDY0NAot LS0tIGEvdGVzdHMvdGVzdF9sb29rYXNpZGUucHkKLSsrKyBiL3Rlc3RzL3Rlc3RfbG9va2FzaWRl LnB5Ci1AQCAtMTc1LDcgKzE3NSw3IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlVGVzdENhc2Uo dW5pdHRlc3QuVGVzdENhc2UpOgotICAgICAgICAgICAgIHJldHVybiAyMDAgaWYgaW5mbyA9PSBw eWN1cmwuUkVTUE9OU0VfQ09ERSBlbHNlIDAKLSAKLSAgICAgICAgIGRlZiBtb2NrX3BlcmZvcm0o KToKLS0gICAgICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSkgYXMgZjoKLSsgICAgICAg ICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgInJiIikgYXMgZjoKLSAgICAgICAgICAgICAg ICAgY3VybG9wdHNbcHljdXJsLldSSVRFREFUQV0ud3JpdGUoZi5yZWFkKCkpCi0gCi0gICAgICAg ICBkZWYgbW9ja19zZXRvcHQob3B0LCB2YWx1ZSk6Ci1AQCAtMjAwLDcgKzIwMCw3IEBAIGNsYXNz IENHSUxvb2thc2lkZUNhY2hlVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgotICAgICBAbW9j ay5wYXRjaCgncHlycGtnLmxvb2thc2lkZS5weWN1cmwuQ3VybCcpCi0gICAgIGRlZiB0ZXN0X2Rv d25sb2FkX2ZhaWxlZChzZWxmLCBtb2NrX2N1cmwpOgotICAgICAgICAgY3VybCA9IG1vY2tfY3Vy bC5yZXR1cm5fdmFsdWUKLS0gICAgICAgIGN1cmwucGVyZm9ybS5zaWRlX2VmZmVjdCA9IEV4Y2Vw dGlvbigKLSsgICAgICAgIGN1cmwucGVyZm9ybS5zaWRlX2VmZmVjdCA9IHB5Y3VybC5lcnJvcigK LSAgICAgICAgICAgICAnQ291bGQgbm90IHJlc29sdmUgaG9zdDogZXhhbXBsZS5jb20nKQotIAot ICAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICd3YicpIGFzIGY6Ci1AQCAtMjE5LDcg KzIxOSw3IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlVGVzdENhc2UodW5pdHRlc3QuVGVzdENh c2UpOgotICAgICAgICAgICAgIHJldHVybiA1MDAgaWYgaW5mbyA9PSBweWN1cmwuUkVTUE9OU0Vf Q09ERSBlbHNlIDAKLSAKLSAgICAgICAgIGRlZiBtb2NrX3BlcmZvcm0oKToKLS0gICAgICAgICAg ICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSkgYXMgZjoKLSsgICAgICAgICAgICB3aXRoIG9wZW4o c2VsZi5maWxlbmFtZSwgInJiIikgYXMgZjoKLSAgICAgICAgICAgICAgICAgY3VybG9wdHNbcHlj dXJsLldSSVRFREFUQV0ud3JpdGUoZi5yZWFkKCkpCi0gCi0gICAgICAgICBkZWYgbW9ja19zZXRv cHQob3B0LCB2YWx1ZSk6Ci1AQCAtNDI0LDcgKzQyNCw3IEBAIGNsYXNzIENHSUxvb2thc2lkZUNh Y2hlVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgotICAgICBAbW9jay5wYXRjaCgncHlycGtn Lmxvb2thc2lkZS5weWN1cmwuQ3VybCcpCi0gICAgIGRlZiB0ZXN0X3JlbW90ZV9maWxlX2V4aXN0 c19jaGVja19mYWlsZWQoc2VsZiwgbW9ja19jdXJsKToKLSAgICAgICAgIGN1cmwgPSBtb2NrX2N1 cmwucmV0dXJuX3ZhbHVlCi0tICAgICAgICBjdXJsLnBlcmZvcm0uc2lkZV9lZmZlY3QgPSBFeGNl cHRpb24oCi0rICAgICAgICBjdXJsLnBlcmZvcm0uc2lkZV9lZmZlY3QgPSBweWN1cmwuZXJyb3Io Ci0gICAgICAgICAgICAgJ0NvdWxkIG5vdCByZXNvbHZlIGhvc3Q6IGV4YW1wbGUuY29tJykKLSAK LSAgICAgICAgIGxjID0gQ0dJTG9va2FzaWRlQ2FjaGUoJ18nLCAnXycsICdfJykKLUBAIC00NTIs NyArNDUyLDcgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0 Q2FzZSk6Ci0gICAgIEBtb2NrLnBhdGNoKCdweXJwa2cubG9va2FzaWRlLnB5Y3VybC5DdXJsJykK LSAgICAgZGVmIHRlc3RfcmVtb3RlX2ZpbGVfZXhpc3RzX2NoZWNrX3VuZXhwZWN0ZWRfZXJyb3Io c2VsZiwgbW9ja19jdXJsKToKLSAgICAgICAgIGRlZiBtb2NrX3BlcmZvcm0oKToKLS0gICAgICAg ICAgICBjdXJsb3B0c1tweWN1cmwuV1JJVEVGVU5DVElPTl0oJ1NvbWV0aGluZyB1bmV4cGVjdGVk JykKLSsgICAgICAgICAgICBjdXJsb3B0c1tweWN1cmwuV1JJVEVGVU5DVElPTl0oYidTb21ldGhp bmcgdW5leHBlY3RlZCcpCi0gCi0gICAgICAgICBkZWYgbW9ja19zZXRvcHQob3B0LCB2YWx1ZSk6 Ci0gICAgICAgICAgICAgY3VybG9wdHNbb3B0XSA9IHZhbHVlCi1AQCAtNTkwLDcgKzU5MCw3IEBA IGNsYXNzIENHSUxvb2thc2lkZUNhY2hlVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgotICAg ICBAbW9jay5wYXRjaCgncHlycGtnLmxvb2thc2lkZS5weWN1cmwuQ3VybCcpCi0gICAgIGRlZiB0 ZXN0X3VwbG9hZF9mYWlsZWQoc2VsZiwgbW9ja19jdXJsKToKLSAgICAgICAgIGN1cmwgPSBtb2Nr X2N1cmwucmV0dXJuX3ZhbHVlCi0tICAgICAgICBjdXJsLnBlcmZvcm0uc2lkZV9lZmZlY3QgPSBF eGNlcHRpb24oCi0rICAgICAgICBjdXJsLnBlcmZvcm0uc2lkZV9lZmZlY3QgPSBweWN1cmwuZXJy b3IoCi0gICAgICAgICAgICAgJ0NvdWxkIG5vdCByZXNvbHZlIGhvc3Q6IGV4YW1wbGUuY29tJykK LSAKLSAgICAgICAgIGxjID0gQ0dJTG9va2FzaWRlQ2FjaGUoJ18nLCAnXycsICdfJykKLS0tIAot Mi40MS4wCi0KCmRpZmYgLS1naXQgYS8wMDI3LVByZXBhcmUtdGhlLWxvb2thc2lkZS1jYWNoZS1j b2RlLWZvci1yZXRyaWVzLnBhdGNoIGIvMDAyNy1QcmVwYXJlLXRoZS1sb29rYXNpZGUtY2FjaGUt Y29kZS1mb3ItcmV0cmllcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li40OGE1OTYyCi0tLSAvZGV2L251bGwKKysrIGIvMDAyNy1QcmVwYXJlLXRoZS1sb29rYXNpZGUt Y2FjaGUtY29kZS1mb3ItcmV0cmllcy5wYXRjaApAQCAtMCwwICsxLDE0OCBAQAorRnJvbSAxYTA2 MDFkMjk3OTRjZWMxZjczNWExMDIwODM2NGQxMTk1OGM0MWVjIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQorRnJvbTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KK0RhdGU6IFdlZCwg MjYgSnVsIDIwMjMgMDE6MzA6MTIgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCAwNi8xN10gUHJlcGFy ZSB0aGUgbG9va2FzaWRlIGNhY2hlIGNvZGUgZm9yIHJldHJpZXMKKworVGhlc2UgY2hhbmdlcyBz aG91bGQgbm90IGhhdmUgYW4gaW1wYWN0IG9uIHRoZSBvcmlnaW5hbCBmdW5jdGlvbmFsaXR5Lgor CitKSVJBOiBSSEVMQ01QLTExMjEwCisKK1NpZ25lZC1vZmYtYnk6IE9uZHJlaiBOb3NlayA8b25v c2VrQHJlZGhhdC5jb20+CistLS0KKyBweXJwa2cvbG9va2FzaWRlLnB5IHwgOTYgKysrKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlIGNoYW5nZWQsIDQ4 IGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvcHlycGtnL2xv b2thc2lkZS5weSBiL3B5cnBrZy9sb29rYXNpZGUucHkKK2luZGV4IDNlZmNkODguLmY5NGZmZGIg MTAwNjQ0CistLS0gYS9weXJwa2cvbG9va2FzaWRlLnB5CisrKysgYi9weXJwa2cvbG9va2FzaWRl LnB5CitAQCAtMTYzLDE3ICsxNjMsMTcgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0 KToKKyAgICAgICAgICAgICB1cmwgPSB1cmwuZW5jb2RlKCd1dGYtOCcpCisgICAgICAgICBzZWxm LmxvZy5kZWJ1ZygiRnVsbCB1cmw6ICVzIiwgdXJsKQorIAorKyAgICAgICAgYyA9IHB5Y3VybC5D dXJsKCkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5VUkwsIHVybCkKKysgICAgICAgIGMuc2V0 b3B0KHB5Y3VybC5IVFRQSEVBREVSLCBbJ1ByYWdtYTonXSkKKysgICAgICAgIGMuc2V0b3B0KHB5 Y3VybC5OT1BST0dSRVNTLCBGYWxzZSkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5QUk9HUkVT U0ZVTkNUSU9OLCBzZWxmLnByaW50X3Byb2dyZXNzKQorKyAgICAgICAgYy5zZXRvcHQocHljdXJs Lk9QVF9GSUxFVElNRSwgVHJ1ZSkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5MT1dfU1BFRURf TElNSVQsIDEwMDApCisrICAgICAgICBjLnNldG9wdChweWN1cmwuTE9XX1NQRUVEX1RJTUUsIDMw MCkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5GT0xMT1dMT0NBVElPTiwgMSkKKyAgICAgICAg IHdpdGggb3BlbihvdXRmaWxlLCAnd2InKSBhcyBmOgorLSAgICAgICAgICAgIGMgPSBweWN1cmwu Q3VybCgpCistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLlVSTCwgdXJsKQorLSAgICAgICAg ICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQSEVBREVSLCBbJ1ByYWdtYTonXSkKKy0gICAgICAgICAg ICBjLnNldG9wdChweWN1cmwuTk9QUk9HUkVTUywgRmFsc2UpCistICAgICAgICAgICAgYy5zZXRv cHQocHljdXJsLlBST0dSRVNTRlVOQ1RJT04sIHNlbGYucHJpbnRfcHJvZ3Jlc3MpCistICAgICAg ICAgICAgYy5zZXRvcHQocHljdXJsLk9QVF9GSUxFVElNRSwgVHJ1ZSkKKyAgICAgICAgICAgICBj LnNldG9wdChweWN1cmwuV1JJVEVEQVRBLCBmKQorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3Vy bC5MT1dfU1BFRURfTElNSVQsIDEwMDApCistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkxP V19TUEVFRF9USU1FLCAzMDApCistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xP Q0FUSU9OLCAxKQorICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgYy5wZXJmb3Jt KCkKKyAgICAgICAgICAgICAgICAgdHN0YW1wID0gYy5nZXRpbmZvKHB5Y3VybC5JTkZPX0ZJTEVU SU1FKQorQEAgLTI1NCwyOSArMjU0LDI5IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVj dCk6CisgICAgICAgICAgICAgICAgICAgICAgKCclc3N1bScgJSBzZWxmLmhhc2h0eXBlLCBoYXNo KSwKKyAgICAgICAgICAgICAgICAgICAgICAoJ2ZpbGVuYW1lJywgZmlsZW5hbWUpXQorIAorLSAg ICAgICAgd2l0aCBpby5CeXRlc0lPKCkgYXMgYnVmOgorLSAgICAgICAgICAgIGMgPSBweWN1cmwu Q3VybCgpCistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLlVSTCwgc2VsZi51cGxvYWRfdXJs KQorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5XUklURUZVTkNUSU9OLCBidWYud3JpdGUp CistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBQT1NULCBwb3N0X2RhdGEpCistICAg ICAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xPQ0FUSU9OLCAxKQorKyAgICAgICAgYyA9 IHB5Y3VybC5DdXJsKCkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5VUkwsIHNlbGYudXBsb2Fk X3VybCkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQUE9TVCwgcG9zdF9kYXRhKQorKyAg ICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xPQ0FUSU9OLCAxKQorIAorLSAgICAgICAgICAg IGlmIHNlbGYuY2xpZW50X2NlcnQgaXMgbm90IE5vbmU6CistICAgICAgICAgICAgICAgIGlmIG9z LnBhdGguZXhpc3RzKHNlbGYuY2xpZW50X2NlcnQpOgorLSAgICAgICAgICAgICAgICAgICAgYy5z ZXRvcHQocHljdXJsLlNTTENFUlQsIHNlbGYuY2xpZW50X2NlcnQpCistICAgICAgICAgICAgICAg IGVsc2U6CistICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy53YXJuaW5nKCJNaXNzaW5nIGNl cnRpZmljYXRlOiAlcyIKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSBz ZWxmLmNsaWVudF9jZXJ0KQorKyAgICAgICAgaWYgc2VsZi5jbGllbnRfY2VydCBpcyBub3QgTm9u ZToKKysgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZWxmLmNsaWVudF9jZXJ0KToKKysg ICAgICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLlNTTENFUlQsIHNlbGYuY2xpZW50X2NlcnQp CisrICAgICAgICAgICAgZWxzZToKKysgICAgICAgICAgICAgICAgc2VsZi5sb2cud2FybmluZygi TWlzc2luZyBjZXJ0aWZpY2F0ZTogJXMiCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJSBzZWxmLmNsaWVudF9jZXJ0KQorIAorLSAgICAgICAgICAgIGlmIHNlbGYuY2FfY2VydCBp cyBub3QgTm9uZToKKy0gICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoc2VsZi5jYV9j ZXJ0KToKKy0gICAgICAgICAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5DQUlORk8sIHNlbGYu Y2FfY2VydCkKKy0gICAgICAgICAgICAgICAgZWxzZToKKy0gICAgICAgICAgICAgICAgICAgIHNl bGYubG9nLndhcm5pbmcoIk1pc3NpbmcgY2VydGlmaWNhdGU6ICVzIiwgc2VsZi5jYV9jZXJ0KQor KyAgICAgICAgaWYgc2VsZi5jYV9jZXJ0IGlzIG5vdCBOb25lOgorKyAgICAgICAgICAgIGlmIG9z LnBhdGguZXhpc3RzKHNlbGYuY2FfY2VydCk6CisrICAgICAgICAgICAgICAgIGMuc2V0b3B0KHB5 Y3VybC5DQUlORk8sIHNlbGYuY2FfY2VydCkKKysgICAgICAgICAgICBlbHNlOgorKyAgICAgICAg ICAgICAgICBzZWxmLmxvZy53YXJuaW5nKCJNaXNzaW5nIGNlcnRpZmljYXRlOiAlcyIsIHNlbGYu Y2FfY2VydCkKKyAKKy0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuSFRUUEFVVEgsIHB5Y3Vy bC5IVFRQQVVUSF9HU1NORUdPVElBVEUpCistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLlVT RVJQV0QsICc6JykKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQQVVUSCwgcHljdXJsLkhU VFBBVVRIX0dTU05FR09USUFURSkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5VU0VSUFdELCAn OicpCisgCisrICAgICAgICB3aXRoIGlvLkJ5dGVzSU8oKSBhcyBidWY6CisrICAgICAgICAgICAg Yy5zZXRvcHQocHljdXJsLldSSVRFRlVOQ1RJT04sIGJ1Zi53cml0ZSkKKyAgICAgICAgICAgICB0 cnk6CisgICAgICAgICAgICAgICAgIGMucGVyZm9ybSgpCisgICAgICAgICAgICAgICAgIHN0YXR1 cyA9IGMuZ2V0aW5mbyhweWN1cmwuUkVTUE9OU0VfQ09ERSkKK0BAIC0zNDEsMzAgKzM0MSwzMCBA QCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZShvYmplY3QpOgorICAgICAgICAgICAgICgnbXRpbWUn LCBzdHIoaW50KG9zLnN0YXQoZmlsZXBhdGgpLnN0X210aW1lKSkpLAorICAgICAgICAgXQorIAor LSAgICAgICAgd2l0aCBpby5CeXRlc0lPKCkgYXMgYnVmOgorLSAgICAgICAgICAgIGMgPSBweWN1 cmwuQ3VybCgpCistICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLlVSTCwgc2VsZi51cGxvYWRf dXJsKQorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5OT1BST0dSRVNTLCBGYWxzZSkKKy0g ICAgICAgICAgICBjLnNldG9wdChweWN1cmwuUFJPR1JFU1NGVU5DVElPTiwgc2VsZi5wcmludF9w cm9ncmVzcykKKy0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuV1JJVEVGVU5DVElPTiwgYnVm LndyaXRlKQorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQUE9TVCwgcG9zdF9kYXRh KQorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5GT0xMT1dMT0NBVElPTiwgMSkKKysgICAg ICAgIGMgPSBweWN1cmwuQ3VybCgpCisrICAgICAgICBjLnNldG9wdChweWN1cmwuVVJMLCBzZWxm LnVwbG9hZF91cmwpCisrICAgICAgICBjLnNldG9wdChweWN1cmwuTk9QUk9HUkVTUywgRmFsc2Up CisrICAgICAgICBjLnNldG9wdChweWN1cmwuUFJPR1JFU1NGVU5DVElPTiwgc2VsZi5wcmludF9w cm9ncmVzcykKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQUE9TVCwgcG9zdF9kYXRhKQor KyAgICAgICAgYy5zZXRvcHQocHljdXJsLkZPTExPV0xPQ0FUSU9OLCAxKQorIAorLSAgICAgICAg ICAgIGlmIHNlbGYuY2xpZW50X2NlcnQgaXMgbm90IE5vbmU6CistICAgICAgICAgICAgICAgIGlm IG9zLnBhdGguZXhpc3RzKHNlbGYuY2xpZW50X2NlcnQpOgorLSAgICAgICAgICAgICAgICAgICAg Yy5zZXRvcHQocHljdXJsLlNTTENFUlQsIHNlbGYuY2xpZW50X2NlcnQpCistICAgICAgICAgICAg ICAgIGVsc2U6CistICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy53YXJuaW5nKCJNaXNzaW5n IGNlcnRpZmljYXRlOiAlcyIsIHNlbGYuY2xpZW50X2NlcnQpCisrICAgICAgICBpZiBzZWxmLmNs aWVudF9jZXJ0IGlzIG5vdCBOb25lOgorKyAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKHNl bGYuY2xpZW50X2NlcnQpOgorKyAgICAgICAgICAgICAgICBjLnNldG9wdChweWN1cmwuU1NMQ0VS VCwgc2VsZi5jbGllbnRfY2VydCkKKysgICAgICAgICAgICBlbHNlOgorKyAgICAgICAgICAgICAg ICBzZWxmLmxvZy53YXJuaW5nKCJNaXNzaW5nIGNlcnRpZmljYXRlOiAlcyIsIHNlbGYuY2xpZW50 X2NlcnQpCisgCistICAgICAgICAgICAgaWYgc2VsZi5jYV9jZXJ0IGlzIG5vdCBOb25lOgorLSAg ICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZWxmLmNhX2NlcnQpOgorLSAgICAgICAg ICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkNBSU5GTywgc2VsZi5jYV9jZXJ0KQorLSAgICAg ICAgICAgICAgICBlbHNlOgorLSAgICAgICAgICAgICAgICAgICAgc2VsZi5sb2cud2FybmluZygi TWlzc2luZyBjZXJ0aWZpY2F0ZTogJXMiLCBzZWxmLmNhX2NlcnQpCisrICAgICAgICBpZiBzZWxm LmNhX2NlcnQgaXMgbm90IE5vbmU6CisrICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoc2Vs Zi5jYV9jZXJ0KToKKysgICAgICAgICAgICAgICAgYy5zZXRvcHQocHljdXJsLkNBSU5GTywgc2Vs Zi5jYV9jZXJ0KQorKyAgICAgICAgICAgIGVsc2U6CisrICAgICAgICAgICAgICAgIHNlbGYubG9n Lndhcm5pbmcoIk1pc3NpbmcgY2VydGlmaWNhdGU6ICVzIiwgc2VsZi5jYV9jZXJ0KQorIAorLSAg ICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5IVFRQQVVUSCwgcHljdXJsLkhUVFBBVVRIX0dTU05F R09USUFURSkKKy0gICAgICAgICAgICBjLnNldG9wdChweWN1cmwuVVNFUlBXRCwgJzonKQorKyAg ICAgICAgYy5zZXRvcHQocHljdXJsLkhUVFBBVVRILCBweWN1cmwuSFRUUEFVVEhfR1NTTkVHT1RJ QVRFKQorKyAgICAgICAgYy5zZXRvcHQocHljdXJsLlVTRVJQV0QsICc6JykKKyAKKysgICAgICAg IHdpdGggaW8uQnl0ZXNJTygpIGFzIGJ1ZjoKKysgICAgICAgICAgICBjLnNldG9wdChweWN1cmwu V1JJVEVGVU5DVElPTiwgYnVmLndyaXRlKQorICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAg ICAgICAgYy5wZXJmb3JtKCkKKyAgICAgICAgICAgICAgICAgc3RhdHVzID0gYy5nZXRpbmZvKHB5 Y3VybC5SRVNQT05TRV9DT0RFKQorLS0gCisyLjQzLjAKKwoKZGlmZiAtLWdpdCBhLzAwMjgtTG9v a2FzaWRlLWNhY2hlLW9wZXJhdGlvbnMtcmV0cmllcy5wYXRjaCBiLzAwMjgtTG9va2FzaWRlLWNh Y2hlLW9wZXJhdGlvbnMtcmV0cmllcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi44MmM5OGNkCi0tLSAvZGV2L251bGwKKysrIGIvMDAyOC1Mb29rYXNpZGUtY2FjaGUt b3BlcmF0aW9ucy1yZXRyaWVzLnBhdGNoCkBAIC0wLDAgKzEsMjc4IEBACitGcm9tIDNhOTYyOTNk MjQ3OWE3NTM0OGY0MjQ4MDYwMjhjOWI2NDBhZmYzMWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CitGcm9tOiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorRGF0ZTogVHVlLCAyMiBB dWcgMjAyMyAxNDo0ODowMiArMDIwMAorU3ViamVjdDogW1BBVENIIDA3LzE3XSBMb29rYXNpZGUg Y2FjaGUgb3BlcmF0aW9ucyByZXRyaWVzCisKK0JvdGggdXBsb2FkIGFuZCBkb3dubG9hZCBuZXR3 b3JrIG9wZXJhdGlvbnMgbWlnaHQgZmFpbAorYW5kIGluIHRoaXMgY2FzZSwgYSByZXRyeSBtZWNo YW5pc20gd2FzIGltcGxlbWVudGVkLgorSW4gY2FzZSBvZiBmYWlsdXJlLCB0aGVyZSBpcyBhIGRl bGF5IGFuZCBhbm90aGVyIGF0dGVtcHQocykuCitEZWxheXMgYXJlIGluY3JlYXNpbmcgd2l0aCBl dmVyeSBhdHRlbXB0LgorCitKSVJBOiBSSEVMQ01QLTExMjEwCisKK1NpZ25lZC1vZmYtYnk6IE9u ZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CistLS0KKyBweXJwa2cvbG9va2FzaWRlLnB5 ICAgICB8IDEyOSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgdGVz dHMvdGVzdF9sb29rYXNpZGUucHkgfCAgMTIgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgODkgaW5z ZXJ0aW9ucygrKSwgNTIgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9weXJwa2cvbG9va2Fz aWRlLnB5IGIvcHlycGtnL2xvb2thc2lkZS5weQoraW5kZXggZjk0ZmZkYi4uMDFlZWU0YSAxMDA2 NDQKKy0tLSBhL3B5cnBrZy9sb29rYXNpZGUucHkKKysrKyBiL3B5cnBrZy9sb29rYXNpZGUucHkK K0BAIC0xNCwxMSArMTQsMTMgQEAgd2F5IGl0IGlzIGRvbmUgYnkgRmVkb3JhLCBSSEVMLCBhbmQg b3RoZXIgZGlzdHJpYnV0aW9ucyBtYWludGFpbmVycy4KKyAiIiIKKyAKKyAKKytpbXBvcnQgZnVu Y3Rvb2xzCisgaW1wb3J0IGhhc2hsaWIKKyBpbXBvcnQgaW8KKyBpbXBvcnQgbG9nZ2luZworIGlt cG9ydCBvcworIGltcG9ydCBzeXMKKytpbXBvcnQgdGltZQorIAorIGltcG9ydCBweWN1cmwKKyBp bXBvcnQgc2l4CitAQCAtMzEsNyArMzMsNyBAQCBmcm9tIC5lcnJvcnMgaW1wb3J0IChBbHJlYWR5 VXBsb2FkZWRFcnJvciwgRG93bmxvYWRFcnJvciwgSW52YWxpZEhhc2hUeXBlLAorIGNsYXNzIENH SUxvb2thc2lkZUNhY2hlKG9iamVjdCk6CisgICAgICIiIkEgY2xhc3MgdG8gaW50ZXJhY3Qgd2l0 aCBhIENHSS1iYXNlZCBsb29rYXNpZGUgY2FjaGUiIiIKKyAgICAgZGVmIF9faW5pdF9fKHNlbGYs IGhhc2h0eXBlLCBkb3dubG9hZF91cmwsIHVwbG9hZF91cmwsCistICAgICAgICAgICAgICAgICBj bGllbnRfY2VydD1Ob25lLCBjYV9jZXJ0PU5vbmUpOgorKyAgICAgICAgICAgICAgICAgY2xpZW50 X2NlcnQ9Tm9uZSwgY2FfY2VydD1Ob25lLCBhdHRlbXB0cz1Ob25lLCBkZWxheT1Ob25lKToKKyAg ICAgICAgICIiIkNvbnN0cnVjdG9yCisgCisgICAgICAgICA6cGFyYW0gc3RyIGhhc2h0eXBlOiBU aGUgaGFzaCBhbGdvcml0aG0gdG8gdXNlIGZvciB1cGxvYWRzLiAoZS5nICdtZDUnKQorQEAgLTQ1 LDEyICs0NywxOCBAQCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZShvYmplY3QpOgorICAgICAgICAg ICAgIHVzZSBmb3IgSFRUUFMgY29ubmV4aW9ucy4gKGUuZyBpZiB0aGUgc2VydmVyIGNlcnRpZmlj YXRlIGlzCisgICAgICAgICAgICAgc2VsZi1zaWduZWQuIEl0IGRlZmF1bHRzIHRvIE5vbmUsIGlu IHdoaWNoIGNhc2UgdGhlIHN5c3RlbSBDQQorICAgICAgICAgICAgIGJ1bmRsZSBpcyB1c2VkLgor KyAgICAgICAgOnBhcmFtIGludCBhdHRlbXB0czogcmVwZWF0IG5ldHdvcmsgb3BlcmF0aW9ucyBh ZnRlciBmYWlsdXJlLiBUaGUgcGFyYW0KKysgICAgICAgICAgICBzYXlzIGhvdyBtYW55IHRyaWVz IHRvIGRvLiBOb25lID0gc2luZ2xlIGF0dGVtcHQgLyBuby1yZXRyeWluZworKyAgICAgICAgOnBh cmFtIGludCBkZWxheTogSW5pdGlhbCBkZWxheSBiZXR3ZWVuIG5ldHdvcmsgb3BlcmF0aW9uIGF0 dGVtcHRzLgorKyAgICAgICAgICAgIEVhY2ggYXR0ZW1wdCBkb3VibGVzIHRoZSBwcmV2aW91cyBk ZWxheSB2YWx1ZS4gSW4gc2Vjb25kcy4KKyAgICAgICAgICIiIgorICAgICAgICAgc2VsZi5oYXNo dHlwZSA9IGhhc2h0eXBlCisgICAgICAgICBzZWxmLmRvd25sb2FkX3VybCA9IGRvd25sb2FkX3Vy bAorICAgICAgICAgc2VsZi51cGxvYWRfdXJsID0gdXBsb2FkX3VybAorICAgICAgICAgc2VsZi5j bGllbnRfY2VydCA9IGNsaWVudF9jZXJ0CisgICAgICAgICBzZWxmLmNhX2NlcnQgPSBjYV9jZXJ0 CisrICAgICAgICBzZWxmLmF0dGVtcHRzID0gYXR0ZW1wdHMgaWYgYXR0ZW1wdHMgaXMgbm90IE5v bmUgYW5kIGF0dGVtcHRzID4gMSBlbHNlIDEKKysgICAgICAgIHNlbGYuZGVsYXlfYmV0d2Vlbl9h dHRlbXB0cyA9IGRlbGF5IGlmIGRlbGF5IGlzIG5vdCBOb25lIGFuZCBkZWxheSA+PSAwIGVsc2Ug MTUKKyAKKyAgICAgICAgIHNlbGYubG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoX19uYW1lX18pCisg CitAQCAtMTcwLDIwICsxNzgsMTMgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0KToK KyAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5QUk9HUkVTU0ZVTkNUSU9OLCBzZWxmLnByaW50X3By b2dyZXNzKQorICAgICAgICAgYy5zZXRvcHQocHljdXJsLk9QVF9GSUxFVElNRSwgVHJ1ZSkKKyAg ICAgICAgIGMuc2V0b3B0KHB5Y3VybC5MT1dfU1BFRURfTElNSVQsIDEwMDApCistICAgICAgICBj LnNldG9wdChweWN1cmwuTE9XX1NQRUVEX1RJTUUsIDMwMCkKKysgICAgICAgIGMuc2V0b3B0KHB5 Y3VybC5MT1dfU1BFRURfVElNRSwgNjApCisgICAgICAgICBjLnNldG9wdChweWN1cmwuRk9MTE9X TE9DQVRJT04sIDEpCistICAgICAgICB3aXRoIG9wZW4ob3V0ZmlsZSwgJ3diJykgYXMgZjoKKy0g ICAgICAgICAgICBjLnNldG9wdChweWN1cmwuV1JJVEVEQVRBLCBmKQorLSAgICAgICAgICAgIHRy eToKKy0gICAgICAgICAgICAgICAgYy5wZXJmb3JtKCkKKy0gICAgICAgICAgICAgICAgdHN0YW1w ID0gYy5nZXRpbmZvKHB5Y3VybC5JTkZPX0ZJTEVUSU1FKQorLSAgICAgICAgICAgICAgICBzdGF0 dXMgPSBjLmdldGluZm8ocHljdXJsLlJFU1BPTlNFX0NPREUpCistCistICAgICAgICAgICAgZXhj ZXB0IEV4Y2VwdGlvbiBhcyBlOgorLSAgICAgICAgICAgICAgICByYWlzZSBEb3dubG9hZEVycm9y KGUpCisgCistICAgICAgICAgICAgZmluYWxseToKKy0gICAgICAgICAgICAgICAgYy5jbG9zZSgp CisrICAgICAgICAjIGNhbGwgcmV0cnkgbWV0aG9kIGRpcmVjdGx5IGluc3RlYWQgb2YgQHJldHJ5 IGRlY29yYXRvciAtIHRoaXMgYXBwcm9hY2ggYWxsb3dzIHBhc3NpbmcKKysgICAgICAgICMgb2Jq ZWN0J3MgaW50ZXJuYWwgdmFyaWFibGVzIGludG8gdGhlIHJldHJ5IG1ldGhvZAorKyAgICAgICAg c3RhdHVzLCB0c3RhbXAgPSBzZWxmLnJldHJ5KHJhaXNlcz1Eb3dubG9hZEVycm9yKShzZWxmLnJl dHJ5X2Rvd25sb2FkKShjLCBvdXRmaWxlKQorKyAgICAgICAgYy5jbG9zZSgpCisgCisgICAgICAg ICAjIEdldCBiYWNrIGEgbmV3IGxpbmUsIGFmdGVyIGRpc3BsYXlpbmcgdGhlIGRvd25sb2FkIHBy b2dyZXNzCisgICAgICAgICBpZiBzeXMuc3Rkb3V0LmlzYXR0eSgpOgorQEAgLTIyMCwxMyArMjIx LDggQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0KToKKyAgICAgICAgIGMuc2V0b3B0 KHB5Y3VybC5OT0JPRFksIFRydWUpCisgICAgICAgICBjLnNldG9wdChweWN1cmwuRk9MTE9XTE9D QVRJT04sIDEpCisgCistICAgICAgICB0cnk6CistICAgICAgICAgICAgYy5wZXJmb3JtKCkKKy0g ICAgICAgICAgICBzdGF0dXMgPSBjLmdldGluZm8ocHljdXJsLlJFU1BPTlNFX0NPREUpCistICAg ICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CistICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRF cnJvcihlKQorLSAgICAgICAgZmluYWxseToKKy0gICAgICAgICAgICBjLmNsb3NlKCkKKysgICAg ICAgIHN0YXR1cyA9IHNlbGYucmV0cnkocmFpc2VzPURvd25sb2FkRXJyb3IpKHNlbGYucmV0cnlf cmVtb3RlX2ZpbGVfZXhpc3RzX2hlYWQpKGMpCisrICAgICAgICBjLmNsb3NlKCkKKyAKKyAgICAg ICAgIGlmIHN0YXR1cyAhPSAyMDA6CisgICAgICAgICAgICAgc2VsZi5sb2cuZGVidWcoJ1VuYXZh aWxhYmxlIGZpbGUgXCclc1wnIGF0ICVzJyAlIChmaWxlbmFtZSwgdXJsKSkKK0BAIC0yNzUsMTkg KzI3MSw4IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVjdCk6CisgICAgICAgICBjLnNl dG9wdChweWN1cmwuSFRUUEFVVEgsIHB5Y3VybC5IVFRQQVVUSF9HU1NORUdPVElBVEUpCisgICAg ICAgICBjLnNldG9wdChweWN1cmwuVVNFUlBXRCwgJzonKQorIAorLSAgICAgICAgd2l0aCBpby5C eXRlc0lPKCkgYXMgYnVmOgorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5XUklURUZVTkNU SU9OLCBidWYud3JpdGUpCistICAgICAgICAgICAgdHJ5OgorLSAgICAgICAgICAgICAgICBjLnBl cmZvcm0oKQorLSAgICAgICAgICAgICAgICBzdGF0dXMgPSBjLmdldGluZm8ocHljdXJsLlJFU1BP TlNFX0NPREUpCistCistICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorLSAgICAg ICAgICAgICAgICByYWlzZSBVcGxvYWRFcnJvcihlKQorLQorLSAgICAgICAgICAgIGZpbmFsbHk6 CistICAgICAgICAgICAgICAgIGMuY2xvc2UoKQorLQorLSAgICAgICAgICAgIG91dHB1dCA9IGJ1 Zi5nZXR2YWx1ZSgpLnN0cmlwKCkKKysgICAgICAgIHN0YXR1cywgb3V0cHV0ID0gc2VsZi5yZXRy eShyYWlzZXM9VXBsb2FkRXJyb3IpKHNlbGYucmV0cnlfcmVtb3RlX2ZpbGVfZXhpc3RzKShjKQor KyAgICAgICAgYy5jbG9zZSgpCisgCisgICAgICAgICBpZiBzdGF0dXMgIT0gMjAwOgorICAgICAg ICAgICAgIHNlbGYucmFpc2VfdXBsb2FkX2Vycm9yKHN0YXR1cykKK0BAIC0zNjMsMTkgKzM0OCw4 IEBAIGNsYXNzIENHSUxvb2thc2lkZUNhY2hlKG9iamVjdCk6CisgICAgICAgICBjLnNldG9wdChw eWN1cmwuSFRUUEFVVEgsIHB5Y3VybC5IVFRQQVVUSF9HU1NORUdPVElBVEUpCisgICAgICAgICBj LnNldG9wdChweWN1cmwuVVNFUlBXRCwgJzonKQorIAorLSAgICAgICAgd2l0aCBpby5CeXRlc0lP KCkgYXMgYnVmOgorLSAgICAgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5XUklURUZVTkNUSU9OLCBi dWYud3JpdGUpCistICAgICAgICAgICAgdHJ5OgorLSAgICAgICAgICAgICAgICBjLnBlcmZvcm0o KQorLSAgICAgICAgICAgICAgICBzdGF0dXMgPSBjLmdldGluZm8ocHljdXJsLlJFU1BPTlNFX0NP REUpCistCistICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorLSAgICAgICAgICAg ICAgICByYWlzZSBVcGxvYWRFcnJvcihlKQorLQorLSAgICAgICAgICAgIGZpbmFsbHk6CistICAg ICAgICAgICAgICAgIGMuY2xvc2UoKQorLQorLSAgICAgICAgICAgIG91dHB1dCA9IGJ1Zi5nZXR2 YWx1ZSgpLnN0cmlwKCkKKysgICAgICAgIHN0YXR1cywgb3V0cHV0ID0gc2VsZi5yZXRyeShyYWlz ZXM9VXBsb2FkRXJyb3IpKHNlbGYucmV0cnlfdXBsb2FkKShjKQorKyAgICAgICAgYy5jbG9zZSgp CisgCisgICAgICAgICAjIEdldCBiYWNrIGEgbmV3IGxpbmUsIGFmdGVyIGRpc3BsYXlpbmcgdGhl IGRvd25sb2FkIHByb2dyZXNzCisgICAgICAgICBpZiBzeXMuc3Rkb3V0LmlzYXR0eSgpOgorQEAg LTM4NywzICszNjEsNjYgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0KToKKyAKKyAg ICAgICAgIGlmIG91dHB1dDoKKyAgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZyhvdXRwdXQpCisr CisrICAgIGRlZiByZXRyeV9kb3dubG9hZChzZWxmLCBjdXJsLCBvdXRmaWxlKToKKysgICAgICAg IHdpdGggb3BlbihvdXRmaWxlLCAnd2InKSBhcyBmOgorKyAgICAgICAgICAgIGN1cmwuc2V0b3B0 KHB5Y3VybC5XUklURURBVEEsIGYpCisrICAgICAgICAgICAgY3VybC5wZXJmb3JtKCkKKysgICAg ICAgICAgICB0c3RhbXAgPSBjdXJsLmdldGluZm8ocHljdXJsLklORk9fRklMRVRJTUUpCisrICAg ICAgICAgICAgc3RhdHVzID0gY3VybC5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9DT0RFKQorKyAg ICAgICAgcmV0dXJuIHN0YXR1cywgdHN0YW1wCisrCisrICAgIGRlZiByZXRyeV9yZW1vdGVfZmls ZV9leGlzdHNfaGVhZChzZWxmLCBjdXJsKToKKysgICAgICAgIGN1cmwucGVyZm9ybSgpCisrICAg ICAgICBzdGF0dXMgPSBjdXJsLmdldGluZm8ocHljdXJsLlJFU1BPTlNFX0NPREUpCisrICAgICAg ICByZXR1cm4gc3RhdHVzCisrCisrICAgIGRlZiByZXRyeV9yZW1vdGVfZmlsZV9leGlzdHMoc2Vs ZiwgY3VybCk6CisrICAgICAgICB3aXRoIGlvLkJ5dGVzSU8oKSBhcyBidWY6CisrICAgICAgICAg ICAgY3VybC5zZXRvcHQocHljdXJsLldSSVRFRlVOQ1RJT04sIGJ1Zi53cml0ZSkKKysgICAgICAg ICAgICBjdXJsLnBlcmZvcm0oKQorKyAgICAgICAgICAgIHN0YXR1cyA9IGN1cmwuZ2V0aW5mbyhw eWN1cmwuUkVTUE9OU0VfQ09ERSkKKysgICAgICAgICAgICBvdXRwdXQgPSBidWYuZ2V0dmFsdWUo KS5zdHJpcCgpCisrICAgICAgICByZXR1cm4gc3RhdHVzLCBvdXRwdXQKKysKKysgICAgZGVmIHJl dHJ5X3VwbG9hZChzZWxmLCBjdXJsKToKKysgICAgICAgIHdpdGggaW8uQnl0ZXNJTygpIGFzIGJ1 ZjoKKysgICAgICAgICAgICBjdXJsLnNldG9wdChweWN1cmwuV1JJVEVGVU5DVElPTiwgYnVmLndy aXRlKQorKyAgICAgICAgICAgIGN1cmwucGVyZm9ybSgpCisrICAgICAgICAgICAgc3RhdHVzID0g Y3VybC5nZXRpbmZvKHB5Y3VybC5SRVNQT05TRV9DT0RFKQorKyAgICAgICAgICAgIG91dHB1dCA9 IGJ1Zi5nZXR2YWx1ZSgpLnN0cmlwKCkKKysgICAgICAgIHJldHVybiBzdGF0dXMsIG91dHB1dAor KworKyAgICBkZWYgcmV0cnkoc2VsZiwgYXR0ZW1wdHM9Tm9uZSwgZGVsYXlfYmV0d2Vlbl9hdHRl bXB0cz1Ob25lLCB3YWl0X29uPXB5Y3VybC5lcnJvciwgcmFpc2VzPU5vbmUpOgorKyAgICAgICAg IiIiQSBkZWNvcmF0b3IgdGhhdCBhbGxvd3MgdG8gcmV0cnkgYSBzZWN0aW9uIG9mIGNvZGUgdW50 aWwgc3VjY2VzcyBvciBjb3VudGVyIGVsYXBzZXMKKysgICAgICAgICIiIgorKworKyAgICAgICAg ZGVmIHdyYXBwZXIoZnVuY3Rpb24pOgorKyAgICAgICAgICAgIEBmdW5jdG9vbHMud3JhcHMoZnVu Y3Rpb24pCisrICAgICAgICAgICAgZGVmIGlubmVyKCphcmdzLCAqKmt3YXJncyk6CisrCisrICAg ICAgICAgICAgICAgIGF0dGVtcHRzX2FsbCA9IGF0dGVtcHRzIG9yIHNlbGYuYXR0ZW1wdHMKKysg ICAgICAgICAgICAgICAgYXR0ZW1wdHNfbGVmdCA9IGF0dGVtcHRzX2FsbAorKyAgICAgICAgICAg ICAgICBkZWxheSA9IGRlbGF5X2JldHdlZW5fYXR0ZW1wdHMgb3Igc2VsZi5kZWxheV9iZXR3ZWVu X2F0dGVtcHRzCisrICAgICAgICAgICAgICAgIHdoaWxlIGF0dGVtcHRzX2xlZnQgPiAwOgorKyAg ICAgICAgICAgICAgICAgICAgdHJ5OgorKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBm dW5jdGlvbigqYXJncywgKiprd2FyZ3MpCisrICAgICAgICAgICAgICAgICAgICBleGNlcHQgd2Fp dF9vbiBhcyBlOgorKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubG9nLndhcm4oIk5ldHdv cmsgZXJyb3I6ICVzIiAlIChlKSkKKysgICAgICAgICAgICAgICAgICAgICAgICBhdHRlbXB0c19s ZWZ0IC09IDEKKysgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZygiQXR0ZW1w dCAlZC8lZCBoYXMgZmFpbGVkLiIKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAlIChhdHRlbXB0c19hbGwgLSBhdHRlbXB0c19sZWZ0LCBhdHRlbXB0c19hbGwpKQorKyAg ICAgICAgICAgICAgICAgICAgICAgIGlmIGF0dGVtcHRzX2xlZnQ6CisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNlbGYubG9nLmluZm8oIlRoZSBvcGVyYXRpb24gd2lsbCBiZSByZXRyaWVk IGluICVkcy4iICUgKGRlbGF5KSkKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZS5z bGVlcChkZWxheSkKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXkgKj0gMgorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy5pbmZvKCJSZXRyeWluZyAuLi4iKQor KyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGlmIHJhaXNlcyBpcyBOb25lOgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cmFpc2UgICMgVGhpcyByZS1yYWlzZXMgdGhlIGxhc3QgZXhjZXB0aW9uLgorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICBlbHNlOgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cmFpc2UgcmFpc2VzKGUpCisrCisrICAgICAgICAgICAgcmV0dXJuIGlubmVyCisrCisrICAgICAg ICByZXR1cm4gd3JhcHBlcgorZGlmZiAtLWdpdCBhL3Rlc3RzL3Rlc3RfbG9va2FzaWRlLnB5IGIv dGVzdHMvdGVzdF9sb29rYXNpZGUucHkKK2luZGV4IDM1ZDM0OTkuLjJmZTFiZGIgMTAwNjQ0Cist LS0gYS90ZXN0cy90ZXN0X2xvb2thc2lkZS5weQorKysrIGIvdGVzdHMvdGVzdF9sb29rYXNpZGUu cHkKK0BAIC0xNzUsNyArMTc1LDcgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGVUZXN0Q2FzZSh1 bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgICAgICAgICAgcmV0dXJuIDIwMCBpZiBpbmZvID09IHB5 Y3VybC5SRVNQT05TRV9DT0RFIGVsc2UgMAorIAorICAgICAgICAgZGVmIG1vY2tfcGVyZm9ybSgp OgorLSAgICAgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lKSBhcyBmOgorKyAgICAgICAg ICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lLCAicmIiKSBhcyBmOgorICAgICAgICAgICAgICAg ICBjdXJsb3B0c1tweWN1cmwuV1JJVEVEQVRBXS53cml0ZShmLnJlYWQoKSkKKyAKKyAgICAgICAg IGRlZiBtb2NrX3NldG9wdChvcHQsIHZhbHVlKToKK0BAIC0yMDAsNyArMjAwLDcgQEAgY2xhc3Mg Q0dJTG9va2FzaWRlQ2FjaGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIEBtb2Nr LnBhdGNoKCdweXJwa2cubG9va2FzaWRlLnB5Y3VybC5DdXJsJykKKyAgICAgZGVmIHRlc3RfZG93 bmxvYWRfZmFpbGVkKHNlbGYsIG1vY2tfY3VybCk6CisgICAgICAgICBjdXJsID0gbW9ja19jdXJs LnJldHVybl92YWx1ZQorLSAgICAgICAgY3VybC5wZXJmb3JtLnNpZGVfZWZmZWN0ID0gRXhjZXB0 aW9uKAorKyAgICAgICAgY3VybC5wZXJmb3JtLnNpZGVfZWZmZWN0ID0gcHljdXJsLmVycm9yKAor ICAgICAgICAgICAgICdDb3VsZCBub3QgcmVzb2x2ZSBob3N0OiBleGFtcGxlLmNvbScpCisgCisg ICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgJ3diJykgYXMgZjoKK0BAIC0yMTksNyAr MjE5LDcgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2Fz ZSk6CisgICAgICAgICAgICAgcmV0dXJuIDUwMCBpZiBpbmZvID09IHB5Y3VybC5SRVNQT05TRV9D T0RFIGVsc2UgMAorIAorICAgICAgICAgZGVmIG1vY2tfcGVyZm9ybSgpOgorLSAgICAgICAgICAg IHdpdGggb3BlbihzZWxmLmZpbGVuYW1lKSBhcyBmOgorKyAgICAgICAgICAgIHdpdGggb3Blbihz ZWxmLmZpbGVuYW1lLCAicmIiKSBhcyBmOgorICAgICAgICAgICAgICAgICBjdXJsb3B0c1tweWN1 cmwuV1JJVEVEQVRBXS53cml0ZShmLnJlYWQoKSkKKyAKKyAgICAgICAgIGRlZiBtb2NrX3NldG9w dChvcHQsIHZhbHVlKToKK0BAIC00MjQsNyArNDI0LDcgQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2Fj aGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIEBtb2NrLnBhdGNoKCdweXJwa2cu bG9va2FzaWRlLnB5Y3VybC5DdXJsJykKKyAgICAgZGVmIHRlc3RfcmVtb3RlX2ZpbGVfZXhpc3Rz X2NoZWNrX2ZhaWxlZChzZWxmLCBtb2NrX2N1cmwpOgorICAgICAgICAgY3VybCA9IG1vY2tfY3Vy bC5yZXR1cm5fdmFsdWUKKy0gICAgICAgIGN1cmwucGVyZm9ybS5zaWRlX2VmZmVjdCA9IEV4Y2Vw dGlvbigKKysgICAgICAgIGN1cmwucGVyZm9ybS5zaWRlX2VmZmVjdCA9IHB5Y3VybC5lcnJvcigK KyAgICAgICAgICAgICAnQ291bGQgbm90IHJlc29sdmUgaG9zdDogZXhhbXBsZS5jb20nKQorIAor ICAgICAgICAgbGMgPSBDR0lMb29rYXNpZGVDYWNoZSgnXycsICdfJywgJ18nKQorQEAgLTQ1Miw3 ICs0NTIsNyBAQCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZVRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RD YXNlKToKKyAgICAgQG1vY2sucGF0Y2goJ3B5cnBrZy5sb29rYXNpZGUucHljdXJsLkN1cmwnKQor ICAgICBkZWYgdGVzdF9yZW1vdGVfZmlsZV9leGlzdHNfY2hlY2tfdW5leHBlY3RlZF9lcnJvcihz ZWxmLCBtb2NrX2N1cmwpOgorICAgICAgICAgZGVmIG1vY2tfcGVyZm9ybSgpOgorLSAgICAgICAg ICAgIGN1cmxvcHRzW3B5Y3VybC5XUklURUZVTkNUSU9OXSgnU29tZXRoaW5nIHVuZXhwZWN0ZWQn KQorKyAgICAgICAgICAgIGN1cmxvcHRzW3B5Y3VybC5XUklURUZVTkNUSU9OXShiJ1NvbWV0aGlu ZyB1bmV4cGVjdGVkJykKKyAKKyAgICAgICAgIGRlZiBtb2NrX3NldG9wdChvcHQsIHZhbHVlKToK KyAgICAgICAgICAgICBjdXJsb3B0c1tvcHRdID0gdmFsdWUKK0BAIC01OTAsNyArNTkwLDcgQEAg Y2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAg IEBtb2NrLnBhdGNoKCdweXJwa2cubG9va2FzaWRlLnB5Y3VybC5DdXJsJykKKyAgICAgZGVmIHRl c3RfdXBsb2FkX2ZhaWxlZChzZWxmLCBtb2NrX2N1cmwpOgorICAgICAgICAgY3VybCA9IG1vY2tf Y3VybC5yZXR1cm5fdmFsdWUKKy0gICAgICAgIGN1cmwucGVyZm9ybS5zaWRlX2VmZmVjdCA9IEV4 Y2VwdGlvbigKKysgICAgICAgIGN1cmwucGVyZm9ybS5zaWRlX2VmZmVjdCA9IHB5Y3VybC5lcnJv cigKKyAgICAgICAgICAgICAnQ291bGQgbm90IHJlc29sdmUgaG9zdDogZXhhbXBsZS5jb20nKQor IAorICAgICAgICAgbGMgPSBDR0lMb29rYXNpZGVDYWNoZSgnXycsICdfJywgJ18nKQorLS0gCisy LjQzLjAKKwoKZGlmZiAtLWdpdCBhLzAwMjgtTWFrZS1sb29rYXNpZGUtY2FjaGUtcmV0cmllcy1j b25maWd1cmFibGUucGF0Y2ggYi8wMDI4LU1ha2UtbG9va2FzaWRlLWNhY2hlLXJldHJpZXMtY29u ZmlndXJhYmxlLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMmZjZmQ1Li4w MDAwMDAwCi0tLSBhLzAwMjgtTWFrZS1sb29rYXNpZGUtY2FjaGUtcmV0cmllcy1jb25maWd1cmFi bGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMDggKzAsMCBAQAotRnJvbSAwOGNlYmU1ZmFl NDI2YzExYjUxZTY0NTc1NGI4N2U0ZWM1NzM3ZWYzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQot RnJvbTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KLURhdGU6IFR1ZSwgMjIgQXVn IDIwMjMgMjI6MjI6MDMgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSCA0LzRdIE1ha2UgbG9va2FzaWRl IGNhY2hlIHJldHJpZXMgY29uZmlndXJhYmxlCi0KLVRoZSBudW1iZXIgb2YgYXR0ZW1wdHMgZm9y IGxvb2thc2lkZSBjYWNoZSBuZXR3b3JrIG9wZXJhdGlvbnMgaXMgbm93Ci1jb25maWd1cmFibGUg LSB0aGVyZSBhcmUgbmV3IGtleXMgJ2xvb2thc2lkZV9hdHRlbXB0cycKLWFuZCAnbG9va2FzaWRl X2RlbGF5JyBpbiB0aGUgY29uZmlndXJhdGlvbi4KLVRoZSBGb3JtZXIgZXhwcmVzc2VzIGEgbWF4 aW11bSBudW1iZXIgb2YgYXR0ZW1wdHMgdG8gdHJ5IHRoZSBvcGVyYXRpb24uCi0nMCcgb3IgJzEn IGlzIGZvciBhIHNpbmdsZSB0cnkgKG5vLXJldHJ5KS4KLVRoZSBsYXR0ZXIgbWVhbnMgYW4gaW5p dGlhbCBkZWxheSBiZXR3ZWVuIG5ldHdvcmsgb3BlcmF0aW9uIGF0dGVtcHRzLgotRWFjaCBhdHRl bXB0IGRvdWJsZXMgdGhlIHByZXZpb3VzIGRlbGF5IHZhbHVlLiBJbiBzZWNvbmRzLgotCi1KSVJB OiBSSEVMQ01QLTExMjEwCi0KLVNpZ25lZC1vZmYtYnk6IE9uZHJlaiBOb3NlayA8b25vc2VrQHJl ZGhhdC5jb20+Ci0tLS0KLSBweXJwa2cvX19pbml0X18ucHkgfCAxMCArKysrKysrKy0tCi0gcHly cGtnL2NsaS5weSAgICAgIHwgMzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQot IDIgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKLQotZGlm ZiAtLWdpdCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQotaW5kZXgg ZjY5ZjJjZS4uNTkyOGQ0NyAxMDA2NDQKLS0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQotKysrIGIv cHlycGtnL19faW5pdF9fLnB5Ci1AQCAtMTEwLDcgKzExMCw4IEBAIGNsYXNzIENvbW1hbmRzKG9i amVjdCk6Ci0gICAgICAgICAgICAgICAgICBidWlsZF9jbGllbnQsIHVzZXI9Tm9uZSwKLSAgICAg ICAgICAgICAgICAgIGRpc3Q9Tm9uZSwgdGFyZ2V0PU5vbmUsIHF1aWV0PUZhbHNlLAotICAgICAg ICAgICAgICAgICAgZGlzdGdpdF9uYW1lc3BhY2VkPUZhbHNlLCByZWFsbXM9Tm9uZSwgbG9va2Fz aWRlX25hbWVzcGFjZWQ9RmFsc2UsCi0tICAgICAgICAgICAgICAgICBnaXRfZXhjbHVkZXM9Tm9u ZSwgcmVzdWx0c19kaXI9J3Jvb3QnLCBhbGxvd19wcmVfZ2VuZXJhdGVkX3NycG09RmFsc2UpOgot KyAgICAgICAgICAgICAgICAgZ2l0X2V4Y2x1ZGVzPU5vbmUsIHJlc3VsdHNfZGlyPSdyb290Jywg YWxsb3dfcHJlX2dlbmVyYXRlZF9zcnBtPUZhbHNlLAotKyAgICAgICAgICAgICAgICAgbG9va2Fz aWRlX2F0dGVtcHRzPU5vbmUsIGxvb2thc2lkZV9kZWxheT1Ob25lKToKLSAgICAgICAgICIiIklu aXQgdGhlIG9iamVjdCBhbmQgc29tZSBjb25maWd1cmF0aW9uIGRldGFpbHMuIiIiCi0gCi0gICAg ICAgICAjIFBhdGggdG8gb3BlcmF0ZSBvbiwgbW9zdCBvZnRlbiBwd2QKLUBAIC0yNDIsNiArMjQz LDEwIEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICAjIEEgQ29uZmlndXJhdGlv biB2YWx1ZSB1c2VkIGluICdpbXBvcnRfc3JwbScgY29tbWFuZCAoY29tZXMgZnJvbSB0aGUgQ29w ciB0ZWFtKQotICAgICAgICAgIyBJZiBwcmUtZ2VuZXJhdGVkIHNycG1zIGFyZSBhbGxvd2VkLCBk b24ndCBjYXJlIHNwZWNmaWxlIGlzIHByb2Nlc3NlZCBieSBycG1hdXRvc3BlYwotICAgICAgICAg c2VsZi5hbGxvd19wcmVfZ2VuZXJhdGVkX3NycG0gPSBhbGxvd19wcmVfZ2VuZXJhdGVkX3NycG0K LSsgICAgICAgICMgbnVtYmVyIG9mIGF0dGVtcHRzIGZvciBsb29rYXNpZGUgbmV0d29yayBvcGVy YXRpb25zCi0rICAgICAgICBzZWxmLmxvb2thc2lkZV9hdHRlbXB0cyA9IGxvb2thc2lkZV9hdHRl bXB0cwotKyAgICAgICAgIyBpbml0aWFsIGRlbGF5IGJldHdlZW4gbmV0d29yayBvcGVyYXRpb24g YXR0ZW1wdHMuIEluIHNlY29uZHMuCi0rICAgICAgICBzZWxmLmxvb2thc2lkZV9kZWxheSA9IGxv b2thc2lkZV9kZWxheQotIAotICAgICAjIERlZmluZSBwcm9wZXJ0aWVzIGhlcmUKLSAgICAgIyBQ cm9wZXJ0aWVzIGFsbG93IHVzIHRvICJsYXp5IGxvYWQiIHZhcmlvdXMgYXR0cmlidXRlcywgd2hp Y2ggYWxzbyBtZWFucwotQEAgLTI2Miw3ICsyNjcsOCBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3Qp OgotICAgICAgICAgIiIiCi0gICAgICAgICByZXR1cm4gQ0dJTG9va2FzaWRlQ2FjaGUoCi0gICAg ICAgICAgICAgc2VsZi5sb29rYXNpZGVoYXNoLCBzZWxmLmxvb2thc2lkZSwgc2VsZi5sb29rYXNp ZGVfY2dpLAotLSAgICAgICAgICAgIGNsaWVudF9jZXJ0PXNlbGYuY2VydF9maWxlLCBjYV9jZXJ0 PXNlbGYuY2FfY2VydCkKLSsgICAgICAgICAgICBjbGllbnRfY2VydD1zZWxmLmNlcnRfZmlsZSwg Y2FfY2VydD1zZWxmLmNhX2NlcnQsCi0rICAgICAgICAgICAgYXR0ZW1wdHM9c2VsZi5sb29rYXNp ZGVfYXR0ZW1wdHMsIGRlbGF5PXNlbGYubG9va2FzaWRlX2RlbGF5KQotIAotICAgICBAcHJvcGVy dHkKLSAgICAgZGVmIHBhdGgoc2VsZik6Ci1kaWZmIC0tZ2l0IGEvcHlycGtnL2NsaS5weSBiL3B5 cnBrZy9jbGkucHkKLWluZGV4IDFiZDc5NzkuLjE2Mjk4ZjAgMTAwNjQ0Ci0tLS0gYS9weXJwa2cv Y2xpLnB5Ci0rKysgYi9weXJwa2cvY2xpLnB5Ci1AQCAtMjYxLDcgKzI2MSw5IEBAIGNsYXNzIGNs aUNsaWVudChvYmplY3QpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHJlYWxtcz1yZWFsbXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bG9va2FzaWRlX25hbWVzcGFjZWQ9bGFfbmFtZXNwYWNlZCwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnaXRfZXhjbHVkZXM9Z2l0X2V4Y2x1ZGVzLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdHNfZGlyPXJlc3VsdHNfZGlyCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0c19kaXI9cmVzdWx0 c19kaXIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9va2FzaWRl X2F0dGVtcHRzPXNlbGYubG9va2FzaWRlX2F0dGVtcHRzLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGxvb2thc2lkZV9kZWxheT1zZWxmLmxvb2thc2lkZV9kZWxheQot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKLSAKLSAgICAgICAgIGlm IHNlbGYuYXJncy5yZXBvX25hbWU6Ci1AQCAtMzA4NywzICszMDg5LDMzIEBAIGNsYXNzIGNsaUNs aWVudChvYmplY3QpOgotIAotICAgICBkZWYgcHJlX3B1c2hfY2hlY2soc2VsZik6Ci0gICAgICAg ICBzZWxmLmNtZC5wcmVfcHVzaF9jaGVjayhzZWxmLmFyZ3MucmVmKQotKwotKyAgICBAcHJvcGVy dHkKLSsgICAgZGVmIGxvb2thc2lkZV9hdHRlbXB0cyhzZWxmKToKLSsgICAgICAgICIiImxvYWRz IHBhcmFtZXRlciAnbG9va2FzaWRlX2F0dGVtcHRzJyBmcm9tIHRoZSBjb25maWcgZmlsZQotKyAg ICAgICAgIiIiCi0rICAgICAgICB2YWwgPSBOb25lCi0rICAgICAgICBpZiBzZWxmLmNvbmZpZy5o YXNfb3B0aW9uKHNlbGYubmFtZSwgJ2xvb2thc2lkZV9hdHRlbXB0cycpOgotKyAgICAgICAgICAg IHZhbCA9IHNlbGYuY29uZmlnLmdldChzZWxmLm5hbWUsICdsb29rYXNpZGVfYXR0ZW1wdHMnKQot KyAgICAgICAgICAgIHRyeToKLSsgICAgICAgICAgICAgICAgdmFsID0gaW50KHZhbCkKLSsgICAg ICAgICAgICBleGNlcHQgRXhjZXB0aW9uOgotKyAgICAgICAgICAgICAgICBzZWxmLmxvZy5lcnJv cigiRXJyb3I6IFRoZSBjb25maWcgdmFsdWUgJ2xvb2thc2lkZV9hdHRlbXB0cycgIgotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAic2hvdWxkIGJlIGFuIGludGVnZXIuIikKLSsgICAg ICAgICAgICAgICAgdmFsID0gTm9uZQotKyAgICAgICAgcmV0dXJuIHZhbAotKwotKyAgICBAcHJv cGVydHkKLSsgICAgZGVmIGxvb2thc2lkZV9kZWxheShzZWxmKToKLSsgICAgICAgICIiImxvYWRz IHBhcmFtZXRlciAnbG9va2FzaWRlX2RlbGF5JyBmcm9tIHRoZSBjb25maWcgZmlsZQotKyAgICAg ICAgIiIiCi0rICAgICAgICB2YWwgPSBOb25lCi0rICAgICAgICBpZiBzZWxmLmNvbmZpZy5oYXNf b3B0aW9uKHNlbGYubmFtZSwgJ2xvb2thc2lkZV9kZWxheScpOgotKyAgICAgICAgICAgIHZhbCA9 IHNlbGYuY29uZmlnLmdldChzZWxmLm5hbWUsICdsb29rYXNpZGVfZGVsYXknKQotKyAgICAgICAg ICAgIHRyeToKLSsgICAgICAgICAgICAgICAgdmFsID0gaW50KHZhbCkKLSsgICAgICAgICAgICBl eGNlcHQgRXhjZXB0aW9uOgotKyAgICAgICAgICAgICAgICBzZWxmLmxvZy5lcnJvcigiRXJyb3I6 IFRoZSBjb25maWcgdmFsdWUgJ2xvb2thc2lkZV9kZWxheScgIgotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAic2hvdWxkIGJlIGFuIGludGVnZXIuIikKLSsgICAgICAgICAgICAgICAg dmFsID0gTm9uZQotKyAgICAgICAgcmV0dXJuIHZhbAotLS0gCi0yLjQxLjAKLQoKZGlmZiAtLWdp dCBhLzAwMjktTWFrZS1sb29rYXNpZGUtY2FjaGUtcmV0cmllcy1jb25maWd1cmFibGUucGF0Y2gg Yi8wMDI5LU1ha2UtbG9va2FzaWRlLWNhY2hlLXJldHJpZXMtY29uZmlndXJhYmxlLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYxZmM0MWMKLS0tIC9kZXYvbnVsbAor KysgYi8wMDI5LU1ha2UtbG9va2FzaWRlLWNhY2hlLXJldHJpZXMtY29uZmlndXJhYmxlLnBhdGNo CkBAIC0wLDAgKzEsMTA4IEBACitGcm9tIDA4Y2ViZTVmYWU0MjZjMTFiNTFlNjQ1NzU0Yjg3ZTRl YzU3MzdlZjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBPbmRyZWogTm9zZWsgPG9u b3Nla0ByZWRoYXQuY29tPgorRGF0ZTogVHVlLCAyMiBBdWcgMjAyMyAyMjoyMjowMyArMDIwMAor U3ViamVjdDogW1BBVENIIDA4LzE3XSBNYWtlIGxvb2thc2lkZSBjYWNoZSByZXRyaWVzIGNvbmZp Z3VyYWJsZQorCitUaGUgbnVtYmVyIG9mIGF0dGVtcHRzIGZvciBsb29rYXNpZGUgY2FjaGUgbmV0 d29yayBvcGVyYXRpb25zIGlzIG5vdworY29uZmlndXJhYmxlIC0gdGhlcmUgYXJlIG5ldyBrZXlz ICdsb29rYXNpZGVfYXR0ZW1wdHMnCithbmQgJ2xvb2thc2lkZV9kZWxheScgaW4gdGhlIGNvbmZp Z3VyYXRpb24uCitUaGUgRm9ybWVyIGV4cHJlc3NlcyBhIG1heGltdW0gbnVtYmVyIG9mIGF0dGVt cHRzIHRvIHRyeSB0aGUgb3BlcmF0aW9uLgorJzAnIG9yICcxJyBpcyBmb3IgYSBzaW5nbGUgdHJ5 IChuby1yZXRyeSkuCitUaGUgbGF0dGVyIG1lYW5zIGFuIGluaXRpYWwgZGVsYXkgYmV0d2VlbiBu ZXR3b3JrIG9wZXJhdGlvbiBhdHRlbXB0cy4KK0VhY2ggYXR0ZW1wdCBkb3VibGVzIHRoZSBwcmV2 aW91cyBkZWxheSB2YWx1ZS4gSW4gc2Vjb25kcy4KKworSklSQTogUkhFTENNUC0xMTIxMAorCitT aWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorLS0tCisgcHly cGtnL19faW5pdF9fLnB5IHwgMTAgKysrKysrKystLQorIHB5cnBrZy9jbGkucHkgICAgICB8IDM0 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQx IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9weXJwa2cvX19p bml0X18ucHkgYi9weXJwa2cvX19pbml0X18ucHkKK2luZGV4IGY2OWYyY2UuLjU5MjhkNDcgMTAw NjQ0CistLS0gYS9weXJwa2cvX19pbml0X18ucHkKKysrKyBiL3B5cnBrZy9fX2luaXRfXy5weQor QEAgLTExMCw3ICsxMTAsOCBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAgICAgICAg ICAgICAgYnVpbGRfY2xpZW50LCB1c2VyPU5vbmUsCisgICAgICAgICAgICAgICAgICBkaXN0PU5v bmUsIHRhcmdldD1Ob25lLCBxdWlldD1GYWxzZSwKKyAgICAgICAgICAgICAgICAgIGRpc3RnaXRf bmFtZXNwYWNlZD1GYWxzZSwgcmVhbG1zPU5vbmUsIGxvb2thc2lkZV9uYW1lc3BhY2VkPUZhbHNl LAorLSAgICAgICAgICAgICAgICAgZ2l0X2V4Y2x1ZGVzPU5vbmUsIHJlc3VsdHNfZGlyPSdyb290 JywgYWxsb3dfcHJlX2dlbmVyYXRlZF9zcnBtPUZhbHNlKToKKysgICAgICAgICAgICAgICAgIGdp dF9leGNsdWRlcz1Ob25lLCByZXN1bHRzX2Rpcj0ncm9vdCcsIGFsbG93X3ByZV9nZW5lcmF0ZWRf c3JwbT1GYWxzZSwKKysgICAgICAgICAgICAgICAgIGxvb2thc2lkZV9hdHRlbXB0cz1Ob25lLCBs b29rYXNpZGVfZGVsYXk9Tm9uZSk6CisgICAgICAgICAiIiJJbml0IHRoZSBvYmplY3QgYW5kIHNv bWUgY29uZmlndXJhdGlvbiBkZXRhaWxzLiIiIgorIAorICAgICAgICAgIyBQYXRoIHRvIG9wZXJh dGUgb24sIG1vc3Qgb2Z0ZW4gcHdkCitAQCAtMjQyLDYgKzI0MywxMCBAQCBjbGFzcyBDb21tYW5k cyhvYmplY3QpOgorICAgICAgICAgIyBBIENvbmZpZ3VyYXRpb24gdmFsdWUgdXNlZCBpbiAnaW1w b3J0X3NycG0nIGNvbW1hbmQgKGNvbWVzIGZyb20gdGhlIENvcHIgdGVhbSkKKyAgICAgICAgICMg SWYgcHJlLWdlbmVyYXRlZCBzcnBtcyBhcmUgYWxsb3dlZCwgZG9uJ3QgY2FyZSBzcGVjZmlsZSBp cyBwcm9jZXNzZWQgYnkgcnBtYXV0b3NwZWMKKyAgICAgICAgIHNlbGYuYWxsb3dfcHJlX2dlbmVy YXRlZF9zcnBtID0gYWxsb3dfcHJlX2dlbmVyYXRlZF9zcnBtCisrICAgICAgICAjIG51bWJlciBv ZiBhdHRlbXB0cyBmb3IgbG9va2FzaWRlIG5ldHdvcmsgb3BlcmF0aW9ucworKyAgICAgICAgc2Vs Zi5sb29rYXNpZGVfYXR0ZW1wdHMgPSBsb29rYXNpZGVfYXR0ZW1wdHMKKysgICAgICAgICMgaW5p dGlhbCBkZWxheSBiZXR3ZWVuIG5ldHdvcmsgb3BlcmF0aW9uIGF0dGVtcHRzLiBJbiBzZWNvbmRz LgorKyAgICAgICAgc2VsZi5sb29rYXNpZGVfZGVsYXkgPSBsb29rYXNpZGVfZGVsYXkKKyAKKyAg ICAgIyBEZWZpbmUgcHJvcGVydGllcyBoZXJlCisgICAgICMgUHJvcGVydGllcyBhbGxvdyB1cyB0 byAibGF6eSBsb2FkIiB2YXJpb3VzIGF0dHJpYnV0ZXMsIHdoaWNoIGFsc28gbWVhbnMKK0BAIC0y NjIsNyArMjY3LDggQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgICIiIgorICAg ICAgICAgcmV0dXJuIENHSUxvb2thc2lkZUNhY2hlKAorICAgICAgICAgICAgIHNlbGYubG9va2Fz aWRlaGFzaCwgc2VsZi5sb29rYXNpZGUsIHNlbGYubG9va2FzaWRlX2NnaSwKKy0gICAgICAgICAg ICBjbGllbnRfY2VydD1zZWxmLmNlcnRfZmlsZSwgY2FfY2VydD1zZWxmLmNhX2NlcnQpCisrICAg ICAgICAgICAgY2xpZW50X2NlcnQ9c2VsZi5jZXJ0X2ZpbGUsIGNhX2NlcnQ9c2VsZi5jYV9jZXJ0 LAorKyAgICAgICAgICAgIGF0dGVtcHRzPXNlbGYubG9va2FzaWRlX2F0dGVtcHRzLCBkZWxheT1z ZWxmLmxvb2thc2lkZV9kZWxheSkKKyAKKyAgICAgQHByb3BlcnR5CisgICAgIGRlZiBwYXRoKHNl bGYpOgorZGlmZiAtLWdpdCBhL3B5cnBrZy9jbGkucHkgYi9weXJwa2cvY2xpLnB5CitpbmRleCAx YmQ3OTc5Li4xNjI5OGYwIDEwMDY0NAorLS0tIGEvcHlycGtnL2NsaS5weQorKysrIGIvcHlycGtn L2NsaS5weQorQEAgLTI2MSw3ICsyNjEsOSBAQCBjbGFzcyBjbGlDbGllbnQob2JqZWN0KToKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFsbXM9cmVhbG1zLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb2thc2lkZV9uYW1lc3BhY2Vk PWxhX25hbWVzcGFjZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Z2l0X2V4Y2x1ZGVzPWdpdF9leGNsdWRlcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICByZXN1bHRzX2Rpcj1yZXN1bHRzX2RpcgorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJlc3VsdHNfZGlyPXJlc3VsdHNfZGlyLAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb2thc2lkZV9hdHRlbXB0cz1zZWxmLmxvb2th c2lkZV9hdHRlbXB0cywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs b29rYXNpZGVfZGVsYXk9c2VsZi5sb29rYXNpZGVfZGVsYXkKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICApCisgCisgICAgICAgICBpZiBzZWxmLmFyZ3MucmVwb19uYW1l OgorQEAgLTMwODcsMyArMzA4OSwzMyBAQCBjbGFzcyBjbGlDbGllbnQob2JqZWN0KToKKyAKKyAg ICAgZGVmIHByZV9wdXNoX2NoZWNrKHNlbGYpOgorICAgICAgICAgc2VsZi5jbWQucHJlX3B1c2hf Y2hlY2soc2VsZi5hcmdzLnJlZikKKysKKysgICAgQHByb3BlcnR5CisrICAgIGRlZiBsb29rYXNp ZGVfYXR0ZW1wdHMoc2VsZik6CisrICAgICAgICAiIiJsb2FkcyBwYXJhbWV0ZXIgJ2xvb2thc2lk ZV9hdHRlbXB0cycgZnJvbSB0aGUgY29uZmlnIGZpbGUKKysgICAgICAgICIiIgorKyAgICAgICAg dmFsID0gTm9uZQorKyAgICAgICAgaWYgc2VsZi5jb25maWcuaGFzX29wdGlvbihzZWxmLm5hbWUs ICdsb29rYXNpZGVfYXR0ZW1wdHMnKToKKysgICAgICAgICAgICB2YWwgPSBzZWxmLmNvbmZpZy5n ZXQoc2VsZi5uYW1lLCAnbG9va2FzaWRlX2F0dGVtcHRzJykKKysgICAgICAgICAgICB0cnk6Cisr ICAgICAgICAgICAgICAgIHZhbCA9IGludCh2YWwpCisrICAgICAgICAgICAgZXhjZXB0IEV4Y2Vw dGlvbjoKKysgICAgICAgICAgICAgICAgc2VsZi5sb2cuZXJyb3IoIkVycm9yOiBUaGUgY29uZmln IHZhbHVlICdsb29rYXNpZGVfYXR0ZW1wdHMnICIKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgInNob3VsZCBiZSBhbiBpbnRlZ2VyLiIpCisrICAgICAgICAgICAgICAgIHZhbCA9IE5v bmUKKysgICAgICAgIHJldHVybiB2YWwKKysKKysgICAgQHByb3BlcnR5CisrICAgIGRlZiBsb29r YXNpZGVfZGVsYXkoc2VsZik6CisrICAgICAgICAiIiJsb2FkcyBwYXJhbWV0ZXIgJ2xvb2thc2lk ZV9kZWxheScgZnJvbSB0aGUgY29uZmlnIGZpbGUKKysgICAgICAgICIiIgorKyAgICAgICAgdmFs ID0gTm9uZQorKyAgICAgICAgaWYgc2VsZi5jb25maWcuaGFzX29wdGlvbihzZWxmLm5hbWUsICds b29rYXNpZGVfZGVsYXknKToKKysgICAgICAgICAgICB2YWwgPSBzZWxmLmNvbmZpZy5nZXQoc2Vs Zi5uYW1lLCAnbG9va2FzaWRlX2RlbGF5JykKKysgICAgICAgICAgICB0cnk6CisrICAgICAgICAg ICAgICAgIHZhbCA9IGludCh2YWwpCisrICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbjoKKysg ICAgICAgICAgICAgICAgc2VsZi5sb2cuZXJyb3IoIkVycm9yOiBUaGUgY29uZmlnIHZhbHVlICds b29rYXNpZGVfZGVsYXknICIKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNob3Vs ZCBiZSBhbiBpbnRlZ2VyLiIpCisrICAgICAgICAgICAgICAgIHZhbCA9IE5vbmUKKysgICAgICAg IHJldHVybiB2YWwKKy0tIAorMi40My4wCisKCmRpZmYgLS1naXQgYS8wMDI5LXBrZy1pbXBvcnQt RG9uLXQtZGVsZXRlLWNoYW5nZWxvZy1nZW5lcmF0ZWQtYnktcnBtYXUucGF0Y2ggYi8wMDI5LXBr Zy1pbXBvcnQtRG9uLXQtZGVsZXRlLWNoYW5nZWxvZy1nZW5lcmF0ZWQtYnktcnBtYXUucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdmOTY4NWEuLjAwMDAwMDAKLS0tIGEvMDAy OS1wa2ctaW1wb3J0LURvbi10LWRlbGV0ZS1jaGFuZ2Vsb2ctZ2VuZXJhdGVkLWJ5LXJwbWF1LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzAgKzAsMCBAQAotRnJvbSAyZmRiNzgwNmFhOTQ3ZDQ5 OTdhZWE2Y2IzM2YzZTg5M2EyYjdkODc2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTog PT9VVEYtOD9xP01pcm89MjBIcm9uPUM0PThEb2s/PSA8bWlyb0Bocm9uY29rLmN6PgotRGF0ZTog VGh1LCA1IE9jdCAyMDIzIDE3OjAzOjM5ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggMS81XSAqcGtn IGltcG9ydDogRG9uJ3QgZGVsZXRlIGNoYW5nZWxvZyBnZW5lcmF0ZWQgYnkKLSBgcnBtYXV0b3Nw ZWMgY29udmVydGAKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxhaW47 IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotU2lnbmVk LW9mZi1ieTogTWlybyBIcm9uxI1vayA8bWlyb0Bocm9uY29rLmN6PgotLS0tCi0gcHlycGtnL19f aW5pdF9fLnB5IHwgMiArLQotIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQotCi1kaWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9fLnB5IGIvcHlycGtnL19faW5p dF9fLnB5Ci1pbmRleCA1OTI4ZDQ3Li5iMjU3ZmVjIDEwMDY0NAotLS0tIGEvcHlycGtnL19faW5p dF9fLnB5Ci0rKysgYi9weXJwa2cvX19pbml0X18ucHkKLUBAIC0yMDQwLDcgKzIwNDAsNyBAQCBj bGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAgICAgICAgIyBub3QgYmUgcmVtb3ZlZCBieSBpbXBv cnQgY29tbWFuZC4KLSAgICAgICAgIHJlc2VydmVkX291cmZpbGVzID0gWwotICAgICAgICAgICAg ICdSRUFETUUubWQnLCAnZ2F0aW5nLnlhbWwnLCAndGVzdHMvKicsICcqLnJwbWxpbnRyYycsCi0t ICAgICAgICAgICAgJy5mbWYvKicsICcqLmZtZiddCi0rICAgICAgICAgICAgJy5mbWYvKicsICcq LmZtZicsICdjaGFuZ2Vsb2cnXQotIAotICAgICAgICAgIyBHZXQgYSBsaXN0IG9mIGZpbGVzIHdl J3JlIGN1cnJlbnRseSB0cmFja2luZwotICAgICAgICAgb3VyZmlsZXMgPSBzZWxmLnJlcG8uZ2l0 LmxzX2ZpbGVzKCkuc3BsaXQoJ1xuJykKLS0tIAotMi40MS4wCi0KCmRpZmYgLS1naXQgYS8wMDMw LXBrZy1pbXBvcnQtRG9uLXQtZGVsZXRlLWNoYW5nZWxvZy1nZW5lcmF0ZWQtYnktcnBtYXUucGF0 Y2ggYi8wMDMwLXBrZy1pbXBvcnQtRG9uLXQtZGVsZXRlLWNoYW5nZWxvZy1nZW5lcmF0ZWQtYnkt cnBtYXUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjNiZDliZQot LS0gL2Rldi9udWxsCisrKyBiLzAwMzAtcGtnLWltcG9ydC1Eb24tdC1kZWxldGUtY2hhbmdlbG9n LWdlbmVyYXRlZC1ieS1ycG1hdS5wYXRjaApAQCAtMCwwICsxLDMwIEBACitGcm9tIDJmZGI3ODA2 YWE5NDdkNDk5N2FlYTZjYjMzZjNlODkzYTJiN2Q4NzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CitGcm9tOiA9P1VURi04P3E/TWlybz0yMEhyb249QzQ9OERvaz89IDxtaXJvQGhyb25jb2suY3o+ CitEYXRlOiBUaHUsIDUgT2N0IDIwMjMgMTc6MDM6MzkgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCAw OS8xN10gKnBrZyBpbXBvcnQ6IERvbid0IGRlbGV0ZSBjaGFuZ2Vsb2cgZ2VuZXJhdGVkIGJ5Cisg YHJwbWF1dG9zcGVjIGNvbnZlcnRgCitNSU1FLVZlcnNpb246IDEuMAorQ29udGVudC1UeXBlOiB0 ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CitDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0 CisKK1NpZ25lZC1vZmYtYnk6IE1pcm8gSHJvbsSNb2sgPG1pcm9AaHJvbmNvay5jej4KKy0tLQor IHB5cnBrZy9fX2luaXRfXy5weSB8IDIgKy0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKKworZGlmZiAtLWdpdCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5 cnBrZy9fX2luaXRfXy5weQoraW5kZXggNTkyOGQ0Ny4uYjI1N2ZlYyAxMDA2NDQKKy0tLSBhL3B5 cnBrZy9fX2luaXRfXy5weQorKysrIGIvcHlycGtnL19faW5pdF9fLnB5CitAQCAtMjA0MCw3ICsy MDQwLDcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgICMgbm90IGJlIHJlbW92 ZWQgYnkgaW1wb3J0IGNvbW1hbmQuCisgICAgICAgICByZXNlcnZlZF9vdXJmaWxlcyA9IFsKKyAg ICAgICAgICAgICAnUkVBRE1FLm1kJywgJ2dhdGluZy55YW1sJywgJ3Rlc3RzLyonLCAnKi5ycG1s aW50cmMnLAorLSAgICAgICAgICAgICcuZm1mLyonLCAnKi5mbWYnXQorKyAgICAgICAgICAgICcu Zm1mLyonLCAnKi5mbWYnLCAnY2hhbmdlbG9nJ10KKyAKKyAgICAgICAgICMgR2V0IGEgbGlzdCBv ZiBmaWxlcyB3ZSdyZSBjdXJyZW50bHkgdHJhY2tpbmcKKyAgICAgICAgIG91cmZpbGVzID0gc2Vs Zi5yZXBvLmdpdC5sc19maWxlcygpLnNwbGl0KCdcbicpCistLSAKKzIuNDMuMAorCgpkaWZmIC0t Z2l0IGEvMDAzMC1wa2ctaW1wb3J0LVVuZG8tcnBtYXV0b3NwZWMtcHJvY2Vzc2luZy5wYXRjaCBi LzAwMzAtcGtnLWltcG9ydC1VbmRvLXJwbWF1dG9zcGVjLXByb2Nlc3NpbmcucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEzMWUwNzYuLjAwMDAwMDAKLS0tIGEvMDAzMC1wa2ct aW1wb3J0LVVuZG8tcnBtYXV0b3NwZWMtcHJvY2Vzc2luZy5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDE2MiArMCwwIEBACi1Gcm9tIGViYjVjNGI4MmNhZWM1MTYwNTQ0ZmRiYjJkNTM5ZmQxYjVh M2FiZmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/TWlybz0yMEhy b249QzQ9OERvaz89IDxtaXJvQGhyb25jb2suY3o+Ci1EYXRlOiBUaHUsIDUgT2N0IDIwMjMgMTY6 NTk6MjIgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSCAyLzVdICpwa2cgaW1wb3J0OiBVbmRvIHJwbWF1 dG9zcGVjIHByb2Nlc3NpbmcKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQv cGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQot Rml4ZXMgaHR0cHM6Ly9wYWd1cmUuaW8vZmVkcGtnL2lzc3VlLzUyNwotCi1EZXBlbmRzLW9uOiBo dHRwczovL3BhZ3VyZS5pby9mZWRvcmEtaW5mcmEvcnBtYXV0b3NwZWMvcHVsbC1yZXF1ZXN0LzMx MgotCi1TaWduZWQtb2ZmLWJ5OiBNaXJvIEhyb27EjW9rIDxtaXJvQGhyb25jb2suY3o+Ci0tLS0K LSBweXJwa2cvX19pbml0X18ucHkgfCAyMiArKysrKystLS0tLS0tCi0gcHlycGtnL3V0aWxzLnB5 ICAgIHwgNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQot IDIgZmlsZXMgY2hhbmdlZCwgNzggaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCi0KLWRp ZmYgLS1naXQgYS9weXJwa2cvX19pbml0X18ucHkgYi9weXJwa2cvX19pbml0X18ucHkKLWluZGV4 IGIyNTdmZWMuLmY1NjJlNzEgMTAwNjQ0Ci0tLS0gYS9weXJwa2cvX19pbml0X18ucHkKLSsrKyBi L3B5cnBrZy9fX2luaXRfXy5weQotQEAgLTUzLDcgKzUzLDcgQEAgZnJvbSBweXJwa2cuc291cmNl cyBpbXBvcnQgU291cmNlc0ZpbGUKLSBmcm9tIHB5cnBrZy5zcGVjIGltcG9ydCBTcGVjRmlsZQot IGZyb20gcHlycGtnLnV0aWxzIGltcG9ydCAoY2FjaGVkX3Byb3BlcnR5LCBleHRyYWN0X3NycG0s IGZpbmRfbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBpc19maWxlX3RyYWNrZWQsIGlz X2xvb2thc2lkZV9lbGlnaWJsZV9maWxlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgbG9n X3Jlc3VsdCwgc3BlY19maWxlX3Byb2Nlc3NlZF9ieV9ycG1hdXRvc3BlYykKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgIGxvZ19yZXN1bHQsIHNwZWNfZmlsZV91bmRvX3JwbWF1dG9zcGVjKQot IAotIGZyb20gLmdpdGlnbm9yZSBpbXBvcnQgR2l0SWdub3JlCi0gCi1AQCAtMTQ3MywxNiArMTQ3 Myw2IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICAgICAgICAgICAgICB1cGxv YWRmaWxlcy5hcHBlbmQoZmlsZSkKLSAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAg ICAgICAgICAgIGZpbGVzLmFwcGVuZChmaWxlKQotLQotLSAgICAgICAgICAgICAgICAjIENoZWNr IGFsbCBzcGVjZmlsZXMgaW4gU1JQTS4gQXQgdGhpcyBwb2ludCAodGhlICdpbXBvcnQnIGNvbW1h bmQgY2FuIHJ1biB1bmRlcgotLSAgICAgICAgICAgICAgICAjIHRoZSBkaXN0LWdpdCByZXBvIHdp dGhvdXQgYW55IHNwZWNmaWxlcyAtIHJpZ2h0IGFmdGVyIGluaXRpYWxpemF0aW9uKSB3ZSBhcmUK LS0gICAgICAgICAgICAgICAgIyBub3QgYWJsZSBkZXRlcm1pbmUgd2hpY2ggdGhlIG1haW4gc3Bl Y2ZpbGUgaXMuCi0tICAgICAgICAgICAgICAgIGlmIGZpbGUuZW5kc3dpdGgoJy5zcGVjJykgYW5k IG5vdCBmaWxlLnN0YXJ0c3dpdGgoJy4nKSBcCi0tICAgICAgICAgICAgICAgICAgICAgICAgYW5k IG5vdCBzZWxmLmFsbG93X3ByZV9nZW5lcmF0ZWRfc3JwbSBcCi0tICAgICAgICAgICAgICAgICAg ICAgICAgYW5kIHNwZWNfZmlsZV9wcm9jZXNzZWRfYnlfcnBtYXV0b3NwZWMoZmlsZSwgdGFyZ2V0 X2Rpcik6Ci0tICAgICAgICAgICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoJ1NSUE0gd2FzIHBy b2Nlc3NlZCBieSBycG1hdXRvc3BlYyAnCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJyhzcGVjZmlsZSAie30iIHdhcyBhbmFseXplZCknLmZvcm1hdChmaWxlKSkKLS0KLSAg ICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgc2h1dGlsLnJtdHJlZSh0YXJnZXRfZGlyKQot IAotQEAgLTIwODEsNiArMjA3MSwxNiBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAgICAg ICAgICAgIG9zLmNoZGlyKG9sZHBhdGgpCi0gICAgICAgICAgICAgcmFpc2UgcnBrZ0Vycm9yKCJH b3QgYW4gZXJyb3IgZnJvbSBycG0yY3BpbzogJXMiICUgZXJyKQotIAotKyAgICAgICAgIyBVbmRv IHJwbWF1dG9zcGVjIGZyb20gYWxsIHRoZSBzcGVjIGZpbGVzLgotKyAgICAgICAgIyBBdCB0aGlz IHBvaW50ICh0aGUgJ2ltcG9ydCcgY29tbWFuZCBjYW4gcnVuIHVuZGVyIHRoZSBkaXN0LWdpdCBy ZXBvCi0rICAgICAgICAjIHdpdGhvdXQgYW55IHNwZWNmaWxlcyAtIHJpZ2h0IGFmdGVyIGluaXRp YWxpemF0aW9uKSB3ZSBhcmUKLSsgICAgICAgICMgbm90IGFibGUgZGV0ZXJtaW5lIHdoaWNoIHRo ZSBtYWluIHNwZWNmaWxlIGlzLgotKyAgICAgICAgaWYgbm90IHNlbGYuYWxsb3dfcHJlX2dlbmVy YXRlZF9zcnBtOgotKyAgICAgICAgICAgIGZvciBmaWxlIGluIGZpbGVzOgotKyAgICAgICAgICAg ICAgICBpZiBmaWxlLmVuZHN3aXRoKCcuc3BlYycpIGFuZCBub3QgZmlsZS5zdGFydHN3aXRoKCcu Jyk6Ci0rICAgICAgICAgICAgICAgICAgICBpZiBzcGVjX2ZpbGVfdW5kb19ycG1hdXRvc3BlYyhm aWxlKToKLSsgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZygicnBtYXV0b3Nw ZWMgcHJvY2Vzc2luZyByZW1vdmVkIGZyb20gezB9Ii5mb3JtYXQoZmlsZSkpCi0rCi0gICAgICAg ICAjIEFuZCBmaW5hbGx5IGFkZCBhbGwgdGhlIGZpbGVzIHdlIGtub3cgYWJvdXQgKGFuZCBvdXIg c3RvY2sgZmlsZXMpCi0gICAgICAgICBmb3IgZmlsZSBpbiAoJy5naXRpZ25vcmUnLCAnc291cmNl cycpOgotICAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhmaWxlKToKLWRpZmYgLS1n aXQgYS9weXJwa2cvdXRpbHMucHkgYi9weXJwa2cvdXRpbHMucHkKLWluZGV4IDMzMzdiZGIuLmYz YzhiMjUgMTAwNjQ0Ci0tLS0gYS9weXJwa2cvdXRpbHMucHkKLSsrKyBiL3B5cnBrZy91dGlscy5w eQotQEAgLTMzNiwyMiArMzM2LDc5IEBAIGRlZiBpc19sb29rYXNpZGVfZWxpZ2libGVfZmlsZShm aWxlX25hbWUsIGRpcl9wYXRoPU5vbmUpOgotICAgICByZXR1cm4gZW5jb2RpbmcgPT0gImJpbmFy eSIKLSAKLSAKLS1kZWYgc3BlY19maWxlX3Byb2Nlc3NlZF9ieV9ycG1hdXRvc3BlYyhmaWxlX25h bWUsIGRpcl9wYXRoPU5vbmUpOgotK2RlZiBfcmVwbGFjZV9saW5lcyhsaW5lcywgc3RhcnRsaW5l LCBlbmRsaW5lLCByZXBsYWNlbWVudF9saW5lcz1Ob25lLCBzdHJpcF9lbmRsaW5lPUZhbHNlKToK LSsgICAgcmVwbGFjZW1lbnRfbGluZXMgPSByZXBsYWNlbWVudF9saW5lcyBvciBbXQotKyAgICB0 cnk6Ci0rICAgICAgICBzdGFydCA9IGxpbmVzLmluZGV4KHN0YXJ0bGluZSkKLSsgICAgICAgIGVu ZCA9IGxpbmVzLmluZGV4KGVuZGxpbmUsIHN0YXJ0KQotKyAgICBleGNlcHQgVmFsdWVFcnJvcjoK LSsgICAgICAgICMgaWYgYm90aCBhcmUgbWlzc2luZywgbm90aGluZyB0byBkbywgYWxsIGdvb2QK LSsgICAgICAgICMgaWYgb25seSBvbmUgb2YgdGhlbSBpcyBwcmVzZW50LCB3ZSBiZXR0ZXIgbm90 IHRvdWNoIGl0Ci0rICAgICAgICByZXR1cm4gbGluZXMsIEZhbHNlCi0rICAgIGVsc2U6Ci0rICAg ICAgICAjIHJwbWF1dG9zcGVjIGFkZHMgYW4gZW1wdHkgbGluZSBhZnRlciB0aGUgZW5kCi0rICAg ICAgICAjIHdlIHdhbnQgdG8gcmVtb3ZlIGl0LCBidXQgb25seSBpZiBpdCBpcyBhY3R1YWxseSBl bXB0eQotKyAgICAgICAgaWYgc3RyaXBfZW5kbGluZSBhbmQgbGluZXNbZW5kKzFdID09ICJcbiI6 Ci0rICAgICAgICAgICAgZW5kICs9IDEKLSsgICAgICAgIGxpbmVzID0gbGluZXNbOnN0YXJ0XSAr IHJlcGxhY2VtZW50X2xpbmVzICsgbGluZXNbZW5kKzE6XQotKyAgICAgICAgcmV0dXJuIGxpbmVz LCBUcnVlCi0rCi0rCi0rZGVmIHNwZWNfZmlsZV91bmRvX3JwbWF1dG9zcGVjKGZpbGVfbmFtZSwg ZGlyX3BhdGg9Tm9uZSk6Ci0rICAgICIiIgotKyAgICBHaXZlbiBhIHBhdGggdG8gc3BlY2ZpbGUs IHVuZG8gY2hhbmdlcyBnZW5lcmF0ZWQgYnkgcnBtYXV0b3NwZWMuCi0rICAgIElmZiB0aGVyZSBp cyBzb21ldGhpbmcgdG8gdW5kbywgdGhlIHNwZWNmaWxlIHdpbGwgYmUgb3ZlcndyaXR0ZW4uCi0r Ci0rICAgIE5hbWVseToKLSsKLSsgICAgIDEuIFJlbW92ZXMgZXZlcnl0aGluZyBiZXR3ZWVuIHRo ZSBmb2xsb3dpbmcgbGluZXM6Ci0rICAgICAgICAgICMjIFNUQVJUOiBTZXQgYnkgcnBtYXV0b3Nw ZWMKLSsgICAgICAgICAgIyMgRU5EOiBTZXQgYnkgcnBtYXV0b3NwZWMKLSsgICAgIDIuIFJlcGxh Y2VzIGV2ZXJ5dGhpbmcgYmV0d2VlbiB0aGUgZm9sbG93aW5nIGxpbmVzIHdpdGggJWF1dG9jaGFu Z2Vsb2c6Ci0rICAgICAgICAgICMjIFNUQVJUOiBHZW5lcmF0ZWQgYnkgcnBtYXV0b3NwZWMKLSsg ICAgICAgICAgIyMgRU5EOiBHZW5lcmF0ZWQgYnkgcnBtYXV0b3NwZWMKLSsKLSsgICAgQm90aCBv ZiB0aGUgc3RlcHMgb25seSBoYXBwZW4gb25jZS4gSWYgdGhlIHNwZWNmaWxlIGNvbnRhaW5zIG11 bHRpcGxlIHN1Y2ggc2VjdGlvbnMsCi0rICAgIG9ubHkgdGhlIGZpcnN0IG9uZSBpcyByZW1vdmVk L3JlcGxhY2VkLgotKwotKyAgICBUaGUgc2F2ZWQgc3BlYyBmaWxlIGlzIG5vdCBndWFyYW50ZWVk IHRvIGJlIGJpdC1ieS1iaXQgaWRlbnRpY2FsIHdpdGggdGhlIG9yaWdpbmFsCi0rICAgIHNwZWMg ZmlsZSB1c2VkIGFzIGFuIGlucHV0IHRvIHJwbWF1dG9zcGVjLgotKyAgICBIb3dldmVyLCBzdWJz ZXF1ZW50IHJlcGVhdGVkIGNvbnZlcnNpb25zIHRoZXJlIGFuZCBiYWNrIHNob3VsZCBiZSBxdWl0 ZSBzdGFibGUuCi0rCi0rICAgIFRoZSByZXR1cm4gdmFsdWUgc2F5cyB3aGV0aGVyIHRoZSBzcGVj ZmlsZSB3YXMgb3ZlcndyaXR0ZW4uCi0rICAgICIiIgotICAgICBmaWxlX3BhdGggPSBvcy5wYXRo LmpvaW4oZGlyX3BhdGggb3IgIiIsIGZpbGVfbmFtZSkKLSAKLSAgICAgdHJ5OgotLSAgICAgICAg Y29udGVudHMgPSBvcGVuKGZpbGVfcGF0aCkucmVhZGxpbmVzKCkKLSsgICAgICAgIHdpdGggb3Bl bihmaWxlX3BhdGgpIGFzIGY6Ci0rICAgICAgICAgICAgY29udGVudHMgPSBmLnJlYWRsaW5lcygp Ci0gICAgIGV4Y2VwdCBFeGNlcHRpb246Ci0tICAgICAgICAjIGlmIHdlIGNhbid0IHJlYWQgaXQs IGxldCdzIGFzc3VtZSB0aGUgYW5zd2VyIGlzICJubyIuCi0rICAgICAgICAjIGlmIHdlIGNhbid0 IHJlYWQgaXQsIGxldCdzIGRvIG5vdGhpbmcKLSAgICAgICAgIHJldHVybiBGYWxzZQotIAotLSAg ICAjIENoZWNrIGZvciB0aGUgJWF1dG9yZWxlYXNlIGhlYWRlciBwcmVwZW5kZWQgdG8gdGhlIGZp bGUKLS0gICAgaWYgYW55KCdTVEFSVDogU2V0IGJ5IHJwbWF1dG9zcGVjJyBpbiBsaW5lIGZvciBs aW5lIGluIGNvbnRlbnRzWzoxMF0pOgotKyAgICAjIHJlbW92ZSB0aGUgZ2VuZXJhdGVkIG1hY3Jv IHNlY3Rpb24gbmVhciB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzcGVjZmlsZQotKyAgICBjb250ZW50 cywgd2FzX3JlbW92ZWQgPSBfcmVwbGFjZV9saW5lcygKLSsgICAgICAgIGNvbnRlbnRzLAotKyAg ICAgICAgJyMjIFNUQVJUOiBTZXQgYnkgcnBtYXV0b3NwZWNcbicsCi0rICAgICAgICAnIyMgRU5E OiBTZXQgYnkgcnBtYXV0b3NwZWNcbicsCi0rICAgICAgICBzdHJpcF9lbmRsaW5lPVRydWUpCi0r Ci0rICAgICMgcmVwbGFjZSB0aGUgZ2VuZXJhdGVkIGNoYW5nZWxvZyB3aXRoICVhdXRvY2hhbmdl bG9nCi0rICAgICMgbm90ZSB0aGF0IHRoaXMgZG9lcyBub3QgZ2VuZXJhbGx5IHByb2R1Y2UgY29u dGVudCBpZGVudGljYWwgdG8gdGhlIG9yaWdpbmFsCi0rICAgICMgZS5nLiB0aGUgbWFjcm8gY291 bGQgaGF2ZSBiZWVuIGNvbmRpdGlvbmFsaXplZCBvciBpbiBjdXJseSBicmFja2V0cwotKyAgICAj IG1vc3QgaW1wb3J0YW50bHksIHRoZSAlY2hhbmdlbG9nIHNlY3Rpb24gbWlnaHQgaGF2ZSBiZWVu IG9taXR0ZWQgZW50aXJlbHkKLSsgICAgIyBob3dldmVyLCB0aGlzIHNob3VsZCBiZSBHb29kIEVu b3VnaCBmb3IgbW9zdCBvZiB1cwotKyAgICBjb250ZW50cywgd2FzX3JlcGxhY2VkID0gX3JlcGxh Y2VfbGluZXMoCi0rICAgICAgICBjb250ZW50cywKLSsgICAgICAgICcjIyBTVEFSVDogR2VuZXJh dGVkIGJ5IHJwbWF1dG9zcGVjXG4nLAotKyAgICAgICAgJyMjIEVORDogR2VuZXJhdGVkIGJ5IHJw bWF1dG9zcGVjXG4nLAotKyAgICAgICAgWyclYXV0b2NoYW5nZWxvZ1xuJ10pCi0rCi0rICAgICMg ZmluYWxseSwgcmVwbGFjZSB0aGUgc3BlYyBpZiBuZWVkZWQKLSsgICAgIyBpZiB3ZSBjYW5ub3Qg d3JpdGUgaXQsIGJldHRlciBibG93IHVwCi0rICAgIGlmIHdhc19yZW1vdmVkIG9yIHdhc19yZXBs YWNlZDoKLSsgICAgICAgIHdpdGggb3BlbihmaWxlX3BhdGgsICd3JykgYXMgZjoKLSsgICAgICAg ICAgICBmLndyaXRlbGluZXMoY29udGVudHMpCi0gICAgICAgICByZXR1cm4gVHJ1ZQotIAotLSAg ICAjIEl0IHNlZW1zIHRoYXQgY3VycmVudGx5IHRoZXJlJ3Mgbm8gbWVjaGFuaXNtIHRvIGRldGVj dAotLSAgICAjICVhdXRvY2hhbmdlbG9nIHByb2Nlc3NpbmcuIEJ1dCBtb3N0IHBhY2thZ2VzIHdv dWxkIHVzZSBib3RoCi0tICAgICMgJWF1dG9jaGFuZ2Vsb2cgYW5kICVhdXRvcmVsZWFzZSB0b2dl dGhlciwgc28gd2Ugc2hvdWxkIGNhdGNoCi0tICAgICMgbW9zdCBjYXNlcyBieSBjaGVja2luZyBm b3IgJWF1dG9yZWxlYXNlIG9ubHkuCi0tICAgICMgaHR0cHM6Ly9wYWd1cmUuaW8vZmVkb3JhLWlu ZnJhL3JwbWF1dG9zcGVjL2lzc3VlLzI2OQotICAgICByZXR1cm4gRmFsc2UKLS0tIAotMi40MS4w Ci0KCmRpZmYgLS1naXQgYS8wMDMxLVVuaXR0ZXN0cy1mb3ItVW5kby1ycG1hdXRvc3BlYy1wcm9j ZXNzaW5nLnBhdGNoIGIvMDAzMS1Vbml0dGVzdHMtZm9yLVVuZG8tcnBtYXV0b3NwZWMtcHJvY2Vz c2luZy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTcxODcyYy4uMDAwMDAw MAotLS0gYS8wMDMxLVVuaXR0ZXN0cy1mb3ItVW5kby1ycG1hdXRvc3BlYy1wcm9jZXNzaW5nLnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjU4ICswLDAgQEAKLUZyb20gMmJkNzI2ZDIwZjNlNWQx NTAyYTIxOTFkMGQyNjNkMGI2MTMyOTgyYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206 ID0/VVRGLTg/cT9PbmQ9QzU9OTllaj0yME5vc2VrPz0gPG9ub3Nla0ByZWRoYXQuY29tPgotRGF0 ZTogVGh1LCAxMiBPY3QgMjAyMyAwMTo0MDozNiArMDIwMAotU3ViamVjdDogW1BBVENIIDMvNV0g VW5pdHRlc3RzIGZvciAiVW5kbyBycG1hdXRvc3BlYyBwcm9jZXNzaW5nIgotTUlNRS1WZXJzaW9u OiAxLjAKLUNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1U cmFuc2Zlci1FbmNvZGluZzogOGJpdAotCi1NZXJnZXM6IGh0dHBzOi8vcGFndXJlLmlvL3Jwa2cv cHVsbC1yZXF1ZXN0LzY5OQotU2lnbmVkLW9mZi1ieTogT25kxZllaiBOb3NlayA8b25vc2VrQHJl ZGhhdC5jb20+Ci0tLS0KLSBKZW5raW5zZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMiArLQotIGplbmtpbnNfdGVzdC5kb2NrZXJmaWxlICAgICAgICAgICAgICAgICAg ICAgICB8ICAzICstCi0gcHlycGtnL3V0aWxzLnB5ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgIDYgKy0tCi0gdGVzdHMvZml4dHVyZXMvZG9jcGtnL2RvY3BrZy1ycG1hdXRvc3BlYy5z cGVjIHwgNTMgKysrKysrKysrKysrKysrKysrKwotIHRlc3RzL3Rlc3RfY2xpLnB5ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IDQwICsrKysrKystLS0tLS0tCi0gdGVzdHMvdGVzdF91dGls cy5weSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzYgKysrKysrKysrKysrLQotIDYgZmls ZXMgY2hhbmdlZCwgMTE2IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQotIGNyZWF0ZSBt b2RlIDEwMDY0NCB0ZXN0cy9maXh0dXJlcy9kb2Nwa2cvZG9jcGtnLXJwbWF1dG9zcGVjLnNwZWMK LQotZGlmZiAtLWdpdCBhL3B5cnBrZy91dGlscy5weSBiL3B5cnBrZy91dGlscy5weQotaW5kZXgg ZjNjOGIyNS4uZmMwMWM3ZCAxMDA2NDQKLS0tLSBhL3B5cnBrZy91dGlscy5weQotKysrIGIvcHly cGtnL3V0aWxzLnB5Ci1AQCAtMTA0LDcgKzEwNCw3IEBAIGRlZiBsb2dfcmVzdWx0KGxvZ19mdW5j LCByZXN1bHQsIGxldmVsPTAsIGluZGVudD0yKToKLSAgICAgZWxpZiBpc2luc3RhbmNlKHJlc3Vs dCwgZGljdCk6Ci0gICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiByZXN1bHQuaXRlbXMoKToKLSAg ICAgICAgICAgICBfbG9nX3ZhbHVlKGxvZ19mdW5jLCBrZXksIGxldmVsLCBpbmRlbnQsICc6JykK LS0gICAgICAgICAgICBsb2dfcmVzdWx0KGxvZ19mdW5jLCB2YWx1ZSwgbGV2ZWwrMSkKLSsgICAg ICAgICAgICBsb2dfcmVzdWx0KGxvZ19mdW5jLCB2YWx1ZSwgbGV2ZWwgKyAxKQotICAgICBlbHNl OgotICAgICAgICAgX2xvZ192YWx1ZShsb2dfZnVuYywgcmVzdWx0LCBsZXZlbCwgaW5kZW50KQot IAotQEAgLTM0OCw5ICszNDgsOSBAQCBkZWYgX3JlcGxhY2VfbGluZXMobGluZXMsIHN0YXJ0bGlu ZSwgZW5kbGluZSwgcmVwbGFjZW1lbnRfbGluZXM9Tm9uZSwgc3RyaXBfZW5kbAotICAgICBlbHNl OgotICAgICAgICAgIyBycG1hdXRvc3BlYyBhZGRzIGFuIGVtcHR5IGxpbmUgYWZ0ZXIgdGhlIGVu ZAotICAgICAgICAgIyB3ZSB3YW50IHRvIHJlbW92ZSBpdCwgYnV0IG9ubHkgaWYgaXQgaXMgYWN0 dWFsbHkgZW1wdHkKLS0gICAgICAgIGlmIHN0cmlwX2VuZGxpbmUgYW5kIGxpbmVzW2VuZCsxXSA9 PSAiXG4iOgotKyAgICAgICAgaWYgc3RyaXBfZW5kbGluZSBhbmQgbGluZXNbZW5kICsgMV0gPT0g IlxuIjoKLSAgICAgICAgICAgICBlbmQgKz0gMQotLSAgICAgICAgbGluZXMgPSBsaW5lc1s6c3Rh cnRdICsgcmVwbGFjZW1lbnRfbGluZXMgKyBsaW5lc1tlbmQrMTpdCi0rICAgICAgICBsaW5lcyA9 IGxpbmVzWzpzdGFydF0gKyByZXBsYWNlbWVudF9saW5lcyArIGxpbmVzW2VuZCArIDE6XQotICAg ICAgICAgcmV0dXJuIGxpbmVzLCBUcnVlCi0gCi0gCi1kaWZmIC0tZ2l0IGEvdGVzdHMvZml4dHVy ZXMvZG9jcGtnL2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjIGIvdGVzdHMvZml4dHVyZXMvZG9jcGtn L2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAw MDAwMC4uNTk3NGI1NwotLS0tIC9kZXYvbnVsbAotKysrIGIvdGVzdHMvZml4dHVyZXMvZG9jcGtn L2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjCi1AQCAtMCwwICsxLDUzIEBACi0rIyMgU1RBUlQ6IFNl dCBieSBycG1hdXRvc3BlYwotKyMjIChycG1hdXRvc3BlYyB2ZXJzaW9uIDAuMy41KQotKyMjIFJQ TUFVVE9TUEVDOiBhdXRvcmVsZWFzZSwgYXV0b2NoYW5nZWxvZwotKyVkZWZpbmUgYXV0b3JlbGVh c2UoZTpzOnBiOm4pICV7Py1wOjAufSV7bHVhOgotKyAgICByZWxlYXNlX251bWJlciA9IDg7Ci0r ICAgIGJhc2VfcmVsZWFzZV9udW1iZXIgPSB0b251bWJlcihycG0uZXhwYW5kKCIlez8tYip9JXsh Py1iOjF9IikpOwotKyAgICBwcmludChyZWxlYXNlX251bWJlciArIGJhc2VfcmVsZWFzZV9udW1i ZXIgLSAxKTsKLSt9JXs/LWU6LiV7LWUqfX0lez8tczouJXstcyp9fSV7IT8tbjolez9kaXN0fX0K LSsjIyBFTkQ6IFNldCBieSBycG1hdXRvc3BlYwotKwotKyMgYXV0b2dlbmVyYXRlZCBzcGVjZmls ZQotK1N1bW1hcnk6IER1bW15IHN1bW1hcnkKLStOYW1lOiBkb2Nwa2ctcnBtYXV0b3NwZWMKLStW ZXJzaW9uOiAwLjIKLStSZWxlYXNlOiAxJXtkaXN0fQotK0xpY2Vuc2U6IEdQTAotK0dyb3VwOiBB cHBsaWNhdGlvbnMvUHJvZHVjdGl2aXR5Ci0rCi0rQnVpbGRSb290OiAlKG1rdGVtcCAtdWQgJXtf dG1wcGF0aH0vJXtuYW1lfS0le3ZlcnNpb259LSV7cmVsZWFzZX0tWFhYWFhYKQotK1NvdXJjZTA6 IGhlbGxvLXdvcmxkLnR4dAotK1NvdXJjZTE6IGRvY3BrZy50YXIuZ3oKLStTb3VyY2UyOiBzb3Vy Y2Utd2l0aG91dC1leHRlbnNpb24KLSsjIGFkZGVkIGVtcHR5IGRpciBqdXN0IHRvIHRlc3QgaW1w b3J0IHNycG0gYGZlZHBrZyBpbXBvcnRgLiBJdCBzaG91bGQgc2tpcCB0aGUgZGlyLgotK1NvdXJj ZTM6IEVNUFRZX0RJUgotKwotKyVkZXNjcmlwdGlvbgotK1RoaXMgaXMgYSBkdW1teSBkZXNjcmlw dGlvbi4KLSsKLSslcHJlcAotK2NwICV7U09VUkNFMH0gLgotKwotKyVidWlsZAotKwotKyVjbGVh bgotK3JtIC1yZiAkJFJQTV9CVUlMRF9ST09UCi0rJWluc3RhbGwKLStybSAtcmYgJFJQTV9CVUlM RF9ST09UCi0rbWtkaXIgJFJQTV9CVUlMRF9ST09UCi0rbWtkaXIgLXAgJFJQTV9CVUlMRF9ST09U L3Vzci9zaGFyZS9kb2MKLStjcCAle1NPVVJDRTB9ICRSUE1fQlVJTERfUk9PVC91c3Ivc2hhcmUv ZG9jL2hlbGxvLXdvcmxkLnR4dAotKwotKyVmaWxlcwotKyVkb2MgIi91c3Ivc2hhcmUvZG9jL2hl bGxvLXdvcmxkLnR4dCIKLSsKLSslY2hhbmdlbG9nCi0rIyMgU1RBUlQ6IEdlbmVyYXRlZCBieSBy cG1hdXRvc3BlYwotKyogU3VuIEphbiAgMSAyMDA2IHRlc3RlciA8dGVzdGVyQGV4YW1wbGUuY29t PiAtIDAuMi0xCi0rLSAtIE5ldyByZWxlYXNlIDAuMi0xCi0rCi0rKiBTdW4gSmFuICAxIDIwMDYg Sm9obiBEb2UgPGpkb2VAZXhhbXBsZS5jb20+IC0gMC4yLTEKLSstIEluaXRpYWwgdmVyc2lvbgot KwotKyMjIEVORDogR2VuZXJhdGVkIGJ5IHJwbWF1dG9zcGVjCi1kaWZmIC0tZ2l0IGEvdGVzdHMv dGVzdF9jbGkucHkgYi90ZXN0cy90ZXN0X2NsaS5weQotaW5kZXggZjJlNjhkZi4uM2Q5MGYzNiAx MDA2NDQKLS0tLSBhL3Rlc3RzL3Rlc3RfY2xpLnB5Ci0rKysgYi90ZXN0cy90ZXN0X2NsaS5weQot QEAgLTE3MDYsMTAgKzE3MDYsMTAgQEAgY2xhc3MgVGVzdEZhaWx1cmVJbXBvcnRTcnBtKENsaVRl c3RDYXNlKToKLSBjbGFzcyBUZXN0SW1wb3J0U3JwbShMb29rYXNpZGVDYWNoZU1vY2ssIENsaVRl c3RDYXNlKToKLSAKLSAgICAgQHN0YXRpY21ldGhvZAotLSAgICBkZWYgYnVpbGRfc3JwbShzcmNy cG1kaXIpOgotKyAgICBkZWYgYnVpbGRfc3JwbShzcmNycG1kaXIsIHNwZWNmaWxlX25hbWU9J2Rv Y3BrZy5zcGVjJyk6Ci0gICAgICAgICAiIiJCdWlsZCBhIGZha2UgU1JQTSB1c2VkIGJ5IHRoaXMg dGVzdCBjYXNlIiIiCi0gICAgICAgICBkb2Nwa2dfZGlyID0gb3MucGF0aC5qb2luKGZpeHR1cmVz X2RpciwgJ2RvY3BrZycpCi0tICAgICAgICBzcGVjZmlsZSA9IG9zLnBhdGguam9pbihkb2Nwa2df ZGlyLCAnZG9jcGtnLnNwZWMnKQotKyAgICAgICAgc3BlY2ZpbGUgPSBvcy5wYXRoLmpvaW4oZG9j cGtnX2Rpciwgc3BlY2ZpbGVfbmFtZSkKLSAgICAgICAgIHJwbWJ1aWxkID0gWwotICAgICAgICAg ICAgICdycG1idWlsZCcsICctYnMnLAotICAgICAgICAgICAgICctLWRlZmluZScsICdfdG9wZGly IHswfScuZm9ybWF0KHNyY3JwbWRpciksCi1AQCAtMTczNSw2ICsxNzM1LDkgQEAgY2xhc3MgVGVz dEltcG9ydFNycG0oTG9va2FzaWRlQ2FjaGVNb2NrLCBDbGlUZXN0Q2FzZSk6Ci0gCi0gICAgICAg ICBzZWxmLnNyY3JwbWRpciA9IHRlbXBmaWxlLm1rZHRlbXAocHJlZml4PSd0ZXN0LWltcG9ydC1z cnBtLXRvcGRpci0nKQotICAgICAgICAgc2VsZi5zcnBtX2ZpbGUgPSBUZXN0SW1wb3J0U3JwbS5i dWlsZF9zcnBtKHNlbGYuc3JjcnBtZGlyKQotKyAgICAgICAgc2VsZi5zcnBtX2ZpbGVfcnBtYXV0 b3NwZWMgPSBUZXN0SW1wb3J0U3JwbS5idWlsZF9zcnBtKAotKyAgICAgICAgICAgIHNlbGYuc3Jj cnBtZGlyLAotKyAgICAgICAgICAgIHNwZWNmaWxlX25hbWU9J2RvY3BrZy1ycG1hdXRvc3BlYy5z cGVjJykKLSAKLSAgICAgICAgIHNlbGYuY2hhb3NfcmVwbyA9IHRlbXBmaWxlLm1rZHRlbXAocHJl Zml4PSdycGtnLXRlc3RzLWNoYW9zLXJlcG8tJykKLSAgICAgICAgIGNtZHMgPSAoCi1AQCAtMTgy Nyw0MCArMTgzMCwyOSBAQCBjbGFzcyBUZXN0SW1wb3J0U3JwbShMb29rYXNpZGVDYWNoZU1vY2ss IENsaVRlc3RDYXNlKToKLSAgICAgICAgIHNlbGYuYXNzZXJ0RmlsZXNFeGlzdChbJ3BhY2thZ2Uu cnBtbGludHJjJ10sIHNlYXJjaF9kaXI9c2VsZi5jaGFvc19yZXBvKQotICAgICAgICAgc2VsZi5h c3NlcnRGaWxlc05vdEV4aXN0KFsndGhlX2ZpbGVfaXNfbm90X2luX3Jlc2VydmVkLnlhbWwnXSwg c2VhcmNoX2Rpcj1zZWxmLmNoYW9zX3JlcG8pCi0gCi0tICAgIEBwYXRjaCgncHlycGtnLnNwZWNf ZmlsZV9wcm9jZXNzZWRfYnlfcnBtYXV0b3NwZWMnKQotLSAgICBkZWYgdGVzdF9pbXBvcnRfc3Jw bV9ub3RfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjKHNlbGYsIHJwbWF1dG9zcGVjX3Byb2Nlc3Nl ZCk6Ci0rICAgIGRlZiB0ZXN0X2ltcG9ydF9zcnBtX25vdF9wcm9jZXNzZWRfYnlfcnBtYXV0b3Nw ZWMoc2VsZik6Ci0gICAgICAgICBjbGlfY21kID0gWydycGtnJywgJy0tcGF0aCcsIHNlbGYuY2hh b3NfcmVwbywgJy0tbmFtZScsICdkb2Nwa2cnLAotICAgICAgICAgICAgICAgICAgICAnaW1wb3J0 JywgJy0tc2tpcC1kaWZmcycsIHNlbGYuc3JwbV9maWxlXQotIAotLSAgICAgICAgcnBtYXV0b3Nw ZWNfcHJvY2Vzc2VkLnJldHVybl92YWx1ZSA9IEZhbHNlCi0gICAgICAgICB3aXRoIHBhdGNoKCdz eXMuYXJndicsIG5ldz1jbGlfY21kKToKLSAgICAgICAgICAgICBjbGkgPSBzZWxmLm5ld19jbGko KQotICAgICAgICAgICAgIHdpdGggcGF0Y2goJ3B5cnBrZy5sb29rYXNpZGUuQ0dJTG9va2FzaWRl Q2FjaGUudXBsb2FkJywgc2VsZi5sb29rYXNpZGVjYWNoZV91cGxvYWQpOgotICAgICAgICAgICAg ICAgICBjbGkuaW1wb3J0X3NycG0oKSAgIyBubyBleGNlcHRpb24gc2hvdWxkIGJlIHJhaXNlZAot LSAgICAgICAgICAgIHJwbWF1dG9zcGVjX3Byb2Nlc3NlZC5hc3NlcnRfY2FsbGVkX29uY2UoKQot IAotLSAgICBAcGF0Y2goJ3B5cnBrZy5zcGVjX2ZpbGVfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVj JykKLS0gICAgZGVmIHRlc3RfaW1wb3J0X3NycG1fcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjKHNl bGYsIHJwbWF1dG9zcGVjX3Byb2Nlc3NlZCk6Ci0rICAgIGRlZiB0ZXN0X2ltcG9ydF9zcnBtX3By b2Nlc3NlZF9ieV9ycG1hdXRvc3BlYyhzZWxmKToKLSAgICAgICAgIGNsaV9jbWQgPSBbJ3Jwa2cn LCAnLS1wYXRoJywgc2VsZi5jaGFvc19yZXBvLCAnLS1uYW1lJywgJ2RvY3BrZycsCi0tICAgICAg ICAgICAgICAgICAgICdpbXBvcnQnLCAnLS1za2lwLWRpZmZzJywgc2VsZi5zcnBtX2ZpbGVdCi0r ICAgICAgICAgICAgICAgICAgICdpbXBvcnQnLCAnLS1za2lwLWRpZmZzJywgc2VsZi5zcnBtX2Zp bGVfcnBtYXV0b3NwZWNdCi0gCi0tICAgICAgICBycG1hdXRvc3BlY19wcm9jZXNzZWQucmV0dXJu X3ZhbHVlID0gVHJ1ZQotICAgICAgICAgd2l0aCBwYXRjaCgnc3lzLmFyZ3YnLCBuZXc9Y2xpX2Nt ZCk6Ci0gICAgICAgICAgICAgY2xpID0gc2VsZi5uZXdfY2xpKCkKLSAgICAgICAgICAgICB3aXRo IHBhdGNoKCdweXJwa2cubG9va2FzaWRlLkNHSUxvb2thc2lkZUNhY2hlLnVwbG9hZCcsIHNlbGYu bG9va2FzaWRlY2FjaGVfdXBsb2FkKToKLS0gICAgICAgICAgICAgICAgc2l4LmFzc2VydFJhaXNl c1JlZ2V4KAotLSAgICAgICAgICAgICAgICAgICAgc2VsZiwKLS0gICAgICAgICAgICAgICAgICAg IHJwa2dFcnJvciwKLS0gICAgICAgICAgICAgICAgICAgICdTUlBNIHdhcyBwcm9jZXNzZWQgYnkg cnBtYXV0b3NwZWMnLAotLSAgICAgICAgICAgICAgICAgICAgY2xpLmltcG9ydF9zcnBtKQotLSAg ICAgICAgICAgIHJwbWF1dG9zcGVjX3Byb2Nlc3NlZC5hc3NlcnRfY2FsbGVkX29uY2UoKQotKyAg ICAgICAgICAgICAgICBjbGkuaW1wb3J0X3NycG0oKQotIAotLSAgICBAcGF0Y2goJ3B5cnBrZy5z cGVjX2ZpbGVfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjJykKLSsgICAgQHBhdGNoKCdweXJwa2cu c3BlY19maWxlX3VuZG9fcnBtYXV0b3NwZWMnKQotICAgICBkZWYgdGVzdF9pbXBvcnRfc3JwbV9w cm9jZXNzZWRfYnlfcnBtYXV0b3NwZWNfYWxsb3dlZChzZWxmLCBycG1hdXRvc3BlY19wcm9jZXNz ZWQpOgotICAgICAgICAgY2xpX2NtZCA9IFsncnBrZycsICctLXBhdGgnLCBzZWxmLmNoYW9zX3Jl cG8sICctLW5hbWUnLCAnZG9jcGtnJywKLSAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCcsICct LXNraXAtZGlmZnMnLCBzZWxmLnNycG1fZmlsZV0KLSAKLS0gICAgICAgIHJwbWF1dG9zcGVjX3By b2Nlc3NlZC5yZXR1cm5fdmFsdWUgPSBUcnVlCi0gICAgICAgICB3aXRoIHBhdGNoKCdzeXMuYXJn dicsIG5ldz1jbGlfY21kKToKLSAgICAgICAgICAgICBjbGkgPSBzZWxmLm5ld19jbGkoKQotICAg ICAgICAgICAgIGNsaS5jbWQuYWxsb3dfcHJlX2dlbmVyYXRlZF9zcnBtID0gVHJ1ZQotQEAgLTE4 NjgsNiArMTg2MCwxOCBAQCBjbGFzcyBUZXN0SW1wb3J0U3JwbShMb29rYXNpZGVDYWNoZU1vY2ss IENsaVRlc3RDYXNlKToKLSAgICAgICAgICAgICAgICAgY2xpLmltcG9ydF9zcnBtKCkgICMgbm8g ZXhjZXB0aW9uIHNob3VsZCBiZSByYWlzZWQKLSAgICAgICAgICAgICBycG1hdXRvc3BlY19wcm9j ZXNzZWQuYXNzZXJ0X25vdF9jYWxsZWQoKQotIAotKyAgICBAcGF0Y2goJ3B5cnBrZy5zcGVjX2Zp bGVfdW5kb19ycG1hdXRvc3BlYycpCi0rICAgIGRlZiB0ZXN0X2ltcG9ydF9zcnBtX3Byb2Nlc3Nl ZF9ieV9ycG1hdXRvc3BlY19ub3RfYWxsb3dlZChzZWxmLCBycG1hdXRvc3BlY19wcm9jZXNzZWQp OgotKyAgICAgICAgY2xpX2NtZCA9IFsncnBrZycsICctLXBhdGgnLCBzZWxmLmNoYW9zX3JlcG8s ICctLW5hbWUnLCAnZG9jcGtnJywKLSsgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCcsICctLXNr aXAtZGlmZnMnLCBzZWxmLnNycG1fZmlsZV0KLSsKLSsgICAgICAgIHdpdGggcGF0Y2goJ3N5cy5h cmd2JywgbmV3PWNsaV9jbWQpOgotKyAgICAgICAgICAgIGNsaSA9IHNlbGYubmV3X2NsaSgpCi0r ICAgICAgICAgICAgY2xpLmNtZC5hbGxvd19wcmVfZ2VuZXJhdGVkX3NycG0gPSBGYWxzZSAgIyBv ciBOb25lCi0rICAgICAgICAgICAgd2l0aCBwYXRjaCgncHlycGtnLmxvb2thc2lkZS5DR0lMb29r YXNpZGVDYWNoZS51cGxvYWQnLCBzZWxmLmxvb2thc2lkZWNhY2hlX3VwbG9hZCk6Ci0rICAgICAg ICAgICAgICAgIGNsaS5pbXBvcnRfc3JwbSgpICAjIG5vIGV4Y2VwdGlvbiBzaG91bGQgYmUgcmFp c2VkCi0rICAgICAgICAgICAgcnBtYXV0b3NwZWNfcHJvY2Vzc2VkLmFzc2VydF9jYWxsZWRfb25j ZSgpCi0rCi0gCi0gY2xhc3MgVGVzdE1vY2tidWlsZChDbGlUZXN0Q2FzZSk6Ci0gICAgICIiIlRl c3QgbW9ja2J1aWxkIGNvbW1hbmQiIiIKLWRpZmYgLS1naXQgYS90ZXN0cy90ZXN0X3V0aWxzLnB5 IGIvdGVzdHMvdGVzdF91dGlscy5weQotaW5kZXggMzQxODhjNS4uMGNkNjJkOCAxMDA2NDQKLS0t LSBhL3Rlc3RzL3Rlc3RfdXRpbHMucHkKLSsrKyBiL3Rlc3RzL3Rlc3RfdXRpbHMucHkKLUBAIC0x LDE1ICsxLDIyIEBACi0gaW1wb3J0IG9zCi0raW1wb3J0IHNodXRpbAotIGltcG9ydCB0ZW1wZmls ZQotIGltcG9ydCB1bml0dGVzdAotIGltcG9ydCB3YXJuaW5ncwotIAotK3RyeToKLSsgICAgaW1w b3J0IHJwbWF1dG9zcGVjCi0rZXhjZXB0IEltcG9ydEVycm9yOgotKyAgICBycG1hdXRvc3BlYyA9 IE5vbmUKLSsKLSB0cnk6Ci0gICAgIGZyb20gdW5pdHRlc3QgaW1wb3J0IG1vY2sKLSBleGNlcHQg SW1wb3J0RXJyb3I6Ci0gICAgIGltcG9ydCBtb2NrCi0gCi0gZnJvbSBweXJwa2cudXRpbHMgaW1w b3J0IChjYWNoZWRfcHJvcGVydHksIGlzX2ZpbGVfaW5fZGlyZWN0b3J5LAotLSAgICAgICAgICAg ICAgICAgICAgICAgICAgaXNfZmlsZV90cmFja2VkLCBsb2dfcmVzdWx0LCB3YXJuX2RlcHJlY2F0 ZWQpCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBpc19maWxlX3RyYWNrZWQsIGxvZ19yZXN1 bHQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjX2ZpbGVfdW5kb19ycG1hdXRvc3Bl Yywgd2Fybl9kZXByZWNhdGVkKQotIAotIGZyb20gdXRpbHMgaW1wb3J0IENvbW1hbmRUZXN0Q2Fz ZQotIAotQEAgLTI4NywzICsyOTQsMzAgQEAgY2xhc3MgRmlsZVRyYWNrZWRUZXN0Q2FzZShDb21t YW5kVGVzdENhc2UpOgotICAgICAgICAgICAgICAgICBzZWxmLnJlcG9fcGF0aAotICAgICAgICAg ICAgICkKLSAgICAgICAgICkKLSsKLSsKLStAdW5pdHRlc3Quc2tpcElmKAotKyAgICBycG1hdXRv c3BlYyBpcyBOb25lLAotKyAgICAiU2tpcCB0ZXN0IG9uIHJlbGVhc2VzIHdoZXJlIHJwbWF1dG9z cGVjIGlzIG5vdCBhdmFpbGFibGUgKFJIRUwpIikKLStjbGFzcyBTcGVjRmlsZVVuZG9ScG1hdXRv c3BlYyhDb21tYW5kVGVzdENhc2UpOgotKyAgICBkZWYgdGVzdF9yZW1vdmVfYXV0b3NwZWNfZnJv bV9zcGVjZmlsZShzZWxmKToKLSsgICAgICAgIGZpeHR1cmVzX2RpciA9IG9zLnBhdGguam9pbihv cy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAiZml4dHVyZXMiLCAiZG9jcGtnIikKLSsKLSsgICAg ICAgIHNwZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWMgPSBvcy5wYXRoLmpvaW4oZml4dHVyZXNf ZGlyLCAiZG9jcGtnLnNwZWMiKQotKyAgICAgICAgc3BlY2ZpbGVfd2l0aG91dF9ycG1hdXRvc3Bl Y19jb3B5ID0gb3MucGF0aC5qb2luKHNlbGYucmVwb19wYXRoLCAiZG9jcGtnLnNwZWMiKQotKyAg ICAgICAgc2h1dGlsLmNvcHkyKHNwZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWMsIHNwZWNmaWxl X3dpdGhvdXRfcnBtYXV0b3NwZWNfY29weSkKLSsgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UocnBt YXV0b3NwZWMuc3BlY2ZpbGVfdXNlc19ycG1hdXRvc3BlYyhzcGVjZmlsZV93aXRob3V0X3JwbWF1 dG9zcGVjX2NvcHkpKQotKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzcGVjX2ZpbGVfdW5kb19y cG1hdXRvc3BlYyhzcGVjZmlsZV93aXRob3V0X3JwbWF1dG9zcGVjX2NvcHkpKQotKyAgICAgICAg c2VsZi5hc3NlcnRGYWxzZShycG1hdXRvc3BlYy5zcGVjZmlsZV91c2VzX3JwbWF1dG9zcGVjKHNw ZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWNfY29weSkpCi0rICAgICAgICBvcy5yZW1vdmUoc3Bl Y2ZpbGVfd2l0aG91dF9ycG1hdXRvc3BlY19jb3B5KQotKwotKyAgICAgICAgc3BlY2ZpbGVfd2l0 aF9ycG1hdXRvc3BlYyA9IG9zLnBhdGguam9pbihmaXh0dXJlc19kaXIsICJkb2Nwa2ctcnBtYXV0 b3NwZWMuc3BlYyIpCi0rICAgICAgICBzcGVjZmlsZV93aXRoX3JwbWF1dG9zcGVjX2NvcHkgPSBv cy5wYXRoLmpvaW4oc2VsZi5yZXBvX3BhdGgsICJkb2Nwa2ctcnBtYXV0b3NwZWMuc3BlYyIpCi0r ICAgICAgICBzaHV0aWwuY29weTIoc3BlY2ZpbGVfd2l0aF9ycG1hdXRvc3BlYywgc3BlY2ZpbGVf d2l0aF9ycG1hdXRvc3BlY19jb3B5KQotKyAgICAgICAgIyByZXR1cm5zIFRydWUgaWYgdGhlIHNw ZWNmaWxlIHdhcyBtb2RpZmllZAotKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNwZWNfZmlsZV91 bmRvX3JwbWF1dG9zcGVjKHNwZWNmaWxlX3dpdGhfcnBtYXV0b3NwZWNfY29weSkpCi0rICAgICAg ICBzZWxmLmFzc2VydEZhbHNlKHJwbWF1dG9zcGVjLnNwZWNmaWxlX3VzZXNfcnBtYXV0b3NwZWMo Ci0rICAgICAgICAgICAgc3BlY2ZpbGVfd2l0aF9ycG1hdXRvc3BlY19jb3B5LCBjaGVja19hdXRv Y2hhbmdlbG9nPUZhbHNlLCBjaGVja19hdXRvcmVsZWFzZT1UcnVlKSkKLSsgICAgICAgIHNlbGYu YXNzZXJ0VHJ1ZShycG1hdXRvc3BlYy5zcGVjZmlsZV91c2VzX3JwbWF1dG9zcGVjKAotKyAgICAg ICAgICAgIHNwZWNmaWxlX3dpdGhfcnBtYXV0b3NwZWNfY29weSwgY2hlY2tfYXV0b2NoYW5nZWxv Zz1UcnVlLCBjaGVja19hdXRvcmVsZWFzZT1GYWxzZSkpCi0rICAgICAgICBvcy5yZW1vdmUoc3Bl Y2ZpbGVfd2l0aF9ycG1hdXRvc3BlY19jb3B5KQotLS0gCi0yLjQxLjAKLQoKZGlmZiAtLWdpdCBh LzAwMzEtcGtnLWltcG9ydC1VbmRvLXJwbWF1dG9zcGVjLXByb2Nlc3NpbmcucGF0Y2ggYi8wMDMx LXBrZy1pbXBvcnQtVW5kby1ycG1hdXRvc3BlYy1wcm9jZXNzaW5nLnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkMWY5ZTQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDMx LXBrZy1pbXBvcnQtVW5kby1ycG1hdXRvc3BlYy1wcm9jZXNzaW5nLnBhdGNoCkBAIC0wLDAgKzEs MTYyIEBACitGcm9tIGViYjVjNGI4MmNhZWM1MTYwNTQ0ZmRiYjJkNTM5ZmQxYjVhM2FiZmIgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiA9P1VURi04P3E/TWlybz0yMEhyb249QzQ9OERv az89IDxtaXJvQGhyb25jb2suY3o+CitEYXRlOiBUaHUsIDUgT2N0IDIwMjMgMTY6NTk6MjIgKzAy MDAKK1N1YmplY3Q6IFtQQVRDSCAxMC8xN10gKnBrZyBpbXBvcnQ6IFVuZG8gcnBtYXV0b3NwZWMg cHJvY2Vzc2luZworTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsg Y2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAorCitGaXhlcyBo dHRwczovL3BhZ3VyZS5pby9mZWRwa2cvaXNzdWUvNTI3CisKK0RlcGVuZHMtb246IGh0dHBzOi8v cGFndXJlLmlvL2ZlZG9yYS1pbmZyYS9ycG1hdXRvc3BlYy9wdWxsLXJlcXVlc3QvMzEyCisKK1Np Z25lZC1vZmYtYnk6IE1pcm8gSHJvbsSNb2sgPG1pcm9AaHJvbmNvay5jej4KKy0tLQorIHB5cnBr Zy9fX2luaXRfXy5weSB8IDIyICsrKysrKy0tLS0tLS0KKyBweXJwa2cvdXRpbHMucHkgICAgfCA3 NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCisgMiBmaWxl cyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdp dCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQoraW5kZXggYjI1N2Zl Yy4uZjU2MmU3MSAxMDA2NDQKKy0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQorKysrIGIvcHlycGtn L19faW5pdF9fLnB5CitAQCAtNTMsNyArNTMsNyBAQCBmcm9tIHB5cnBrZy5zb3VyY2VzIGltcG9y dCBTb3VyY2VzRmlsZQorIGZyb20gcHlycGtnLnNwZWMgaW1wb3J0IFNwZWNGaWxlCisgZnJvbSBw eXJwa2cudXRpbHMgaW1wb3J0IChjYWNoZWRfcHJvcGVydHksIGV4dHJhY3Rfc3JwbSwgZmluZF9t ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX2ZpbGVfdHJhY2tlZCwgaXNfbG9va2Fz aWRlX2VsaWdpYmxlX2ZpbGUsCistICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dfcmVzdWx0 LCBzcGVjX2ZpbGVfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjKQorKyAgICAgICAgICAgICAgICAg ICAgICAgICAgbG9nX3Jlc3VsdCwgc3BlY19maWxlX3VuZG9fcnBtYXV0b3NwZWMpCisgCisgZnJv bSAuZ2l0aWdub3JlIGltcG9ydCBHaXRJZ25vcmUKKyAKK0BAIC0xNDczLDE2ICsxNDczLDYgQEAg Y2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgICAgICAgICAgICAgIHVwbG9hZGZpbGVz LmFwcGVuZChmaWxlKQorICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAg ICAgZmlsZXMuYXBwZW5kKGZpbGUpCistCistICAgICAgICAgICAgICAgICMgQ2hlY2sgYWxsIHNw ZWNmaWxlcyBpbiBTUlBNLiBBdCB0aGlzIHBvaW50ICh0aGUgJ2ltcG9ydCcgY29tbWFuZCBjYW4g cnVuIHVuZGVyCistICAgICAgICAgICAgICAgICMgdGhlIGRpc3QtZ2l0IHJlcG8gd2l0aG91dCBh bnkgc3BlY2ZpbGVzIC0gcmlnaHQgYWZ0ZXIgaW5pdGlhbGl6YXRpb24pIHdlIGFyZQorLSAgICAg ICAgICAgICAgICAjIG5vdCBhYmxlIGRldGVybWluZSB3aGljaCB0aGUgbWFpbiBzcGVjZmlsZSBp cy4KKy0gICAgICAgICAgICAgICAgaWYgZmlsZS5lbmRzd2l0aCgnLnNwZWMnKSBhbmQgbm90IGZp bGUuc3RhcnRzd2l0aCgnLicpIFwKKy0gICAgICAgICAgICAgICAgICAgICAgICBhbmQgbm90IHNl bGYuYWxsb3dfcHJlX2dlbmVyYXRlZF9zcnBtIFwKKy0gICAgICAgICAgICAgICAgICAgICAgICBh bmQgc3BlY19maWxlX3Byb2Nlc3NlZF9ieV9ycG1hdXRvc3BlYyhmaWxlLCB0YXJnZXRfZGlyKToK Ky0gICAgICAgICAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcignU1JQTSB3YXMgcHJvY2Vzc2Vk IGJ5IHJwbWF1dG9zcGVjICcKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAn KHNwZWNmaWxlICJ7fSIgd2FzIGFuYWx5emVkKScuZm9ybWF0KGZpbGUpKQorLQorICAgICAgICAg ZmluYWxseToKKyAgICAgICAgICAgICBzaHV0aWwucm10cmVlKHRhcmdldF9kaXIpCisgCitAQCAt MjA4MSw2ICsyMDcxLDE2IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6CisgICAgICAgICAgICAg b3MuY2hkaXIob2xkcGF0aCkKKyAgICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoIkdvdCBhbiBl cnJvciBmcm9tIHJwbTJjcGlvOiAlcyIgJSBlcnIpCisgCisrICAgICAgICAjIFVuZG8gcnBtYXV0 b3NwZWMgZnJvbSBhbGwgdGhlIHNwZWMgZmlsZXMuCisrICAgICAgICAjIEF0IHRoaXMgcG9pbnQg KHRoZSAnaW1wb3J0JyBjb21tYW5kIGNhbiBydW4gdW5kZXIgdGhlIGRpc3QtZ2l0IHJlcG8KKysg ICAgICAgICMgd2l0aG91dCBhbnkgc3BlY2ZpbGVzIC0gcmlnaHQgYWZ0ZXIgaW5pdGlhbGl6YXRp b24pIHdlIGFyZQorKyAgICAgICAgIyBub3QgYWJsZSBkZXRlcm1pbmUgd2hpY2ggdGhlIG1haW4g c3BlY2ZpbGUgaXMuCisrICAgICAgICBpZiBub3Qgc2VsZi5hbGxvd19wcmVfZ2VuZXJhdGVkX3Ny cG06CisrICAgICAgICAgICAgZm9yIGZpbGUgaW4gZmlsZXM6CisrICAgICAgICAgICAgICAgIGlm IGZpbGUuZW5kc3dpdGgoJy5zcGVjJykgYW5kIG5vdCBmaWxlLnN0YXJ0c3dpdGgoJy4nKToKKysg ICAgICAgICAgICAgICAgICAgIGlmIHNwZWNfZmlsZV91bmRvX3JwbWF1dG9zcGVjKGZpbGUpOgor KyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubG9nLmRlYnVnKCJycG1hdXRvc3BlYyBwcm9j ZXNzaW5nIHJlbW92ZWQgZnJvbSB7MH0iLmZvcm1hdChmaWxlKSkKKysKKyAgICAgICAgICMgQW5k IGZpbmFsbHkgYWRkIGFsbCB0aGUgZmlsZXMgd2Uga25vdyBhYm91dCAoYW5kIG91ciBzdG9jayBm aWxlcykKKyAgICAgICAgIGZvciBmaWxlIGluICgnLmdpdGlnbm9yZScsICdzb3VyY2VzJyk6Cisg ICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGZpbGUpOgorZGlmZiAtLWdpdCBhL3B5 cnBrZy91dGlscy5weSBiL3B5cnBrZy91dGlscy5weQoraW5kZXggMzMzN2JkYi4uZjNjOGIyNSAx MDA2NDQKKy0tLSBhL3B5cnBrZy91dGlscy5weQorKysrIGIvcHlycGtnL3V0aWxzLnB5CitAQCAt MzM2LDIyICszMzYsNzkgQEAgZGVmIGlzX2xvb2thc2lkZV9lbGlnaWJsZV9maWxlKGZpbGVfbmFt ZSwgZGlyX3BhdGg9Tm9uZSk6CisgICAgIHJldHVybiBlbmNvZGluZyA9PSAiYmluYXJ5IgorIAor IAorLWRlZiBzcGVjX2ZpbGVfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjKGZpbGVfbmFtZSwgZGly X3BhdGg9Tm9uZSk6CisrZGVmIF9yZXBsYWNlX2xpbmVzKGxpbmVzLCBzdGFydGxpbmUsIGVuZGxp bmUsIHJlcGxhY2VtZW50X2xpbmVzPU5vbmUsIHN0cmlwX2VuZGxpbmU9RmFsc2UpOgorKyAgICBy ZXBsYWNlbWVudF9saW5lcyA9IHJlcGxhY2VtZW50X2xpbmVzIG9yIFtdCisrICAgIHRyeToKKysg ICAgICAgIHN0YXJ0ID0gbGluZXMuaW5kZXgoc3RhcnRsaW5lKQorKyAgICAgICAgZW5kID0gbGlu ZXMuaW5kZXgoZW5kbGluZSwgc3RhcnQpCisrICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorKyAgICAg ICAgIyBpZiBib3RoIGFyZSBtaXNzaW5nLCBub3RoaW5nIHRvIGRvLCBhbGwgZ29vZAorKyAgICAg ICAgIyBpZiBvbmx5IG9uZSBvZiB0aGVtIGlzIHByZXNlbnQsIHdlIGJldHRlciBub3QgdG91Y2gg aXQKKysgICAgICAgIHJldHVybiBsaW5lcywgRmFsc2UKKysgICAgZWxzZToKKysgICAgICAgICMg cnBtYXV0b3NwZWMgYWRkcyBhbiBlbXB0eSBsaW5lIGFmdGVyIHRoZSBlbmQKKysgICAgICAgICMg d2Ugd2FudCB0byByZW1vdmUgaXQsIGJ1dCBvbmx5IGlmIGl0IGlzIGFjdHVhbGx5IGVtcHR5Cisr ICAgICAgICBpZiBzdHJpcF9lbmRsaW5lIGFuZCBsaW5lc1tlbmQrMV0gPT0gIlxuIjoKKysgICAg ICAgICAgICBlbmQgKz0gMQorKyAgICAgICAgbGluZXMgPSBsaW5lc1s6c3RhcnRdICsgcmVwbGFj ZW1lbnRfbGluZXMgKyBsaW5lc1tlbmQrMTpdCisrICAgICAgICByZXR1cm4gbGluZXMsIFRydWUK KysKKysKKytkZWYgc3BlY19maWxlX3VuZG9fcnBtYXV0b3NwZWMoZmlsZV9uYW1lLCBkaXJfcGF0 aD1Ob25lKToKKysgICAgIiIiCisrICAgIEdpdmVuIGEgcGF0aCB0byBzcGVjZmlsZSwgdW5kbyBj aGFuZ2VzIGdlbmVyYXRlZCBieSBycG1hdXRvc3BlYy4KKysgICAgSWZmIHRoZXJlIGlzIHNvbWV0 aGluZyB0byB1bmRvLCB0aGUgc3BlY2ZpbGUgd2lsbCBiZSBvdmVyd3JpdHRlbi4KKysKKysgICAg TmFtZWx5OgorKworKyAgICAgMS4gUmVtb3ZlcyBldmVyeXRoaW5nIGJldHdlZW4gdGhlIGZvbGxv d2luZyBsaW5lczoKKysgICAgICAgICAgIyMgU1RBUlQ6IFNldCBieSBycG1hdXRvc3BlYworKyAg ICAgICAgICAjIyBFTkQ6IFNldCBieSBycG1hdXRvc3BlYworKyAgICAgMi4gUmVwbGFjZXMgZXZl cnl0aGluZyBiZXR3ZWVuIHRoZSBmb2xsb3dpbmcgbGluZXMgd2l0aCAlYXV0b2NoYW5nZWxvZzoK KysgICAgICAgICAgIyMgU1RBUlQ6IEdlbmVyYXRlZCBieSBycG1hdXRvc3BlYworKyAgICAgICAg ICAjIyBFTkQ6IEdlbmVyYXRlZCBieSBycG1hdXRvc3BlYworKworKyAgICBCb3RoIG9mIHRoZSBz dGVwcyBvbmx5IGhhcHBlbiBvbmNlLiBJZiB0aGUgc3BlY2ZpbGUgY29udGFpbnMgbXVsdGlwbGUg c3VjaCBzZWN0aW9ucywKKysgICAgb25seSB0aGUgZmlyc3Qgb25lIGlzIHJlbW92ZWQvcmVwbGFj ZWQuCisrCisrICAgIFRoZSBzYXZlZCBzcGVjIGZpbGUgaXMgbm90IGd1YXJhbnRlZWQgdG8gYmUg Yml0LWJ5LWJpdCBpZGVudGljYWwgd2l0aCB0aGUgb3JpZ2luYWwKKysgICAgc3BlYyBmaWxlIHVz ZWQgYXMgYW4gaW5wdXQgdG8gcnBtYXV0b3NwZWMuCisrICAgIEhvd2V2ZXIsIHN1YnNlcXVlbnQg cmVwZWF0ZWQgY29udmVyc2lvbnMgdGhlcmUgYW5kIGJhY2sgc2hvdWxkIGJlIHF1aXRlIHN0YWJs ZS4KKysKKysgICAgVGhlIHJldHVybiB2YWx1ZSBzYXlzIHdoZXRoZXIgdGhlIHNwZWNmaWxlIHdh cyBvdmVyd3JpdHRlbi4KKysgICAgIiIiCisgICAgIGZpbGVfcGF0aCA9IG9zLnBhdGguam9pbihk aXJfcGF0aCBvciAiIiwgZmlsZV9uYW1lKQorIAorICAgICB0cnk6CistICAgICAgICBjb250ZW50 cyA9IG9wZW4oZmlsZV9wYXRoKS5yZWFkbGluZXMoKQorKyAgICAgICAgd2l0aCBvcGVuKGZpbGVf cGF0aCkgYXMgZjoKKysgICAgICAgICAgICBjb250ZW50cyA9IGYucmVhZGxpbmVzKCkKKyAgICAg ZXhjZXB0IEV4Y2VwdGlvbjoKKy0gICAgICAgICMgaWYgd2UgY2FuJ3QgcmVhZCBpdCwgbGV0J3Mg YXNzdW1lIHRoZSBhbnN3ZXIgaXMgIm5vIi4KKysgICAgICAgICMgaWYgd2UgY2FuJ3QgcmVhZCBp dCwgbGV0J3MgZG8gbm90aGluZworICAgICAgICAgcmV0dXJuIEZhbHNlCisgCistICAgICMgQ2hl Y2sgZm9yIHRoZSAlYXV0b3JlbGVhc2UgaGVhZGVyIHByZXBlbmRlZCB0byB0aGUgZmlsZQorLSAg ICBpZiBhbnkoJ1NUQVJUOiBTZXQgYnkgcnBtYXV0b3NwZWMnIGluIGxpbmUgZm9yIGxpbmUgaW4g Y29udGVudHNbOjEwXSk6CisrICAgICMgcmVtb3ZlIHRoZSBnZW5lcmF0ZWQgbWFjcm8gc2VjdGlv biBuZWFyIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHNwZWNmaWxlCisrICAgIGNvbnRlbnRzLCB3YXNf cmVtb3ZlZCA9IF9yZXBsYWNlX2xpbmVzKAorKyAgICAgICAgY29udGVudHMsCisrICAgICAgICAn IyMgU1RBUlQ6IFNldCBieSBycG1hdXRvc3BlY1xuJywKKysgICAgICAgICcjIyBFTkQ6IFNldCBi eSBycG1hdXRvc3BlY1xuJywKKysgICAgICAgIHN0cmlwX2VuZGxpbmU9VHJ1ZSkKKysKKysgICAg IyByZXBsYWNlIHRoZSBnZW5lcmF0ZWQgY2hhbmdlbG9nIHdpdGggJWF1dG9jaGFuZ2Vsb2cKKysg ICAgIyBub3RlIHRoYXQgdGhpcyBkb2VzIG5vdCBnZW5lcmFsbHkgcHJvZHVjZSBjb250ZW50IGlk ZW50aWNhbCB0byB0aGUgb3JpZ2luYWwKKysgICAgIyBlLmcuIHRoZSBtYWNybyBjb3VsZCBoYXZl IGJlZW4gY29uZGl0aW9uYWxpemVkIG9yIGluIGN1cmx5IGJyYWNrZXRzCisrICAgICMgbW9zdCBp bXBvcnRhbnRseSwgdGhlICVjaGFuZ2Vsb2cgc2VjdGlvbiBtaWdodCBoYXZlIGJlZW4gb21pdHRl ZCBlbnRpcmVseQorKyAgICAjIGhvd2V2ZXIsIHRoaXMgc2hvdWxkIGJlIEdvb2QgRW5vdWdoIGZv ciBtb3N0IG9mIHVzCisrICAgIGNvbnRlbnRzLCB3YXNfcmVwbGFjZWQgPSBfcmVwbGFjZV9saW5l cygKKysgICAgICAgIGNvbnRlbnRzLAorKyAgICAgICAgJyMjIFNUQVJUOiBHZW5lcmF0ZWQgYnkg cnBtYXV0b3NwZWNcbicsCisrICAgICAgICAnIyMgRU5EOiBHZW5lcmF0ZWQgYnkgcnBtYXV0b3Nw ZWNcbicsCisrICAgICAgICBbJyVhdXRvY2hhbmdlbG9nXG4nXSkKKysKKysgICAgIyBmaW5hbGx5 LCByZXBsYWNlIHRoZSBzcGVjIGlmIG5lZWRlZAorKyAgICAjIGlmIHdlIGNhbm5vdCB3cml0ZSBp dCwgYmV0dGVyIGJsb3cgdXAKKysgICAgaWYgd2FzX3JlbW92ZWQgb3Igd2FzX3JlcGxhY2VkOgor KyAgICAgICAgd2l0aCBvcGVuKGZpbGVfcGF0aCwgJ3cnKSBhcyBmOgorKyAgICAgICAgICAgIGYu d3JpdGVsaW5lcyhjb250ZW50cykKKyAgICAgICAgIHJldHVybiBUcnVlCisgCistICAgICMgSXQg c2VlbXMgdGhhdCBjdXJyZW50bHkgdGhlcmUncyBubyBtZWNoYW5pc20gdG8gZGV0ZWN0CistICAg ICMgJWF1dG9jaGFuZ2Vsb2cgcHJvY2Vzc2luZy4gQnV0IG1vc3QgcGFja2FnZXMgd291bGQgdXNl IGJvdGgKKy0gICAgIyAlYXV0b2NoYW5nZWxvZyBhbmQgJWF1dG9yZWxlYXNlIHRvZ2V0aGVyLCBz byB3ZSBzaG91bGQgY2F0Y2gKKy0gICAgIyBtb3N0IGNhc2VzIGJ5IGNoZWNraW5nIGZvciAlYXV0 b3JlbGVhc2Ugb25seS4KKy0gICAgIyBodHRwczovL3BhZ3VyZS5pby9mZWRvcmEtaW5mcmEvcnBt YXV0b3NwZWMvaXNzdWUvMjY5CisgICAgIHJldHVybiBGYWxzZQorLS0gCisyLjQzLjAKKwoKZGlm ZiAtLWdpdCBhLzAwMzItVW5pdHRlc3RzLWZvci1VbmRvLXJwbWF1dG9zcGVjLXByb2Nlc3Npbmcu cGF0Y2ggYi8wMDMyLVVuaXR0ZXN0cy1mb3ItVW5kby1ycG1hdXRvc3BlYy1wcm9jZXNzaW5nLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4MDZjMWMKLS0tIC9kZXYv bnVsbAorKysgYi8wMDMyLVVuaXR0ZXN0cy1mb3ItVW5kby1ycG1hdXRvc3BlYy1wcm9jZXNzaW5n LnBhdGNoCkBAIC0wLDAgKzEsMjg5IEBACitGcm9tIDJiZDcyNmQyMGYzZTVkMTUwMmEyMTkxZDBk MjYzZDBiNjEzMjk4MmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiA9P1VURi04P3E/ T25kPUM1PTk5ZWo9MjBOb3Nlaz89IDxvbm9zZWtAcmVkaGF0LmNvbT4KK0RhdGU6IFRodSwgMTIg T2N0IDIwMjMgMDE6NDA6MzYgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gVW5pdHRlc3RzIGZvciAi VW5kbyBycG1hdXRvc3BlYyBwcm9jZXNzaW5nIgorTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRlbnQt VHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNvZGlu ZzogOGJpdAorCitNZXJnZXM6IGh0dHBzOi8vcGFndXJlLmlvL3Jwa2cvcHVsbC1yZXF1ZXN0LzY5 OQorU2lnbmVkLW9mZi1ieTogT25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CistLS0K KyBKZW5raW5zZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQor IGplbmtpbnNfdGVzdC5kb2NrZXJmaWxlICAgICAgICAgICAgICAgICAgICAgICB8ICAzICstCisg cHlycGtnL3V0aWxzLnB5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKy0tCisg dGVzdHMvZml4dHVyZXMvZG9jcGtnL2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjIHwgNTMgKysrKysr KysrKysrKysrKysrKworIHRlc3RzL3Rlc3RfY2xpLnB5ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IDQwICsrKysrKystLS0tLS0tCisgdGVzdHMvdGVzdF91dGlscy5weSAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMzYgKysrKysrKysrKysrLQorIDYgZmlsZXMgY2hhbmdlZCwgMTE2 IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0 cy9maXh0dXJlcy9kb2Nwa2cvZG9jcGtnLXJwbWF1dG9zcGVjLnNwZWMKKworZGlmZiAtLWdpdCBh L0plbmtpbnNmaWxlIGIvSmVua2luc2ZpbGUKK2luZGV4IDdiNjc0MmYuLmU2ZDYzOTQgMTAwNjQ0 CistLS0gYS9KZW5raW5zZmlsZQorKysrIGIvSmVua2luc2ZpbGUKK0BAIC01MCw3ICs1MCw3IEBA IGdpdCBmZXRjaCBwcm9wb3NlZAorIGdpdCBjaGVja291dCAib3JpZ2luLyRwYXJhbXMuQlJBTkNI X1RPIgorIGdpdCBtZXJnZSAtLW5vLWZmICJwcm9wb3NlZC8kcGFyYW1zLkJSQU5DSCIgLW0gIk1l cmdlIFBSIgorIAorLXBvZG1hbiBydW4gLS1ybSAtdiAuOi9zcmM6WiBxdWF5LmlvL2V4ZC1ndWls ZC1zb3VyY2UtdG9vbHMvcnBrZy10ZXN0OmxhdGVzdCB0b3ggLWUgcHkzNixweTM5LGZsYWtlOCxi YW5kaXQgLS13b3JrZGlyIC90bXAvdG94ICR7VE9YX1BPU0FSR1N9CisrcG9kbWFuIHJ1biAtLXJt IC12IC46L3NyYzpaIHF1YXkuaW8vZXhkLWd1aWxkLXNvdXJjZS10b29scy9ycGtnLXRlc3Q6bGF0 ZXN0IHRveCAtZSBweTM2LHB5MzkscHkzMTEsZmxha2U4LGJhbmRpdCAtLXdvcmtkaXIgL3RtcC90 b3ggJHtUT1hfUE9TQVJHU30KKyAjIGRpc2FibGVkIHB5MjcgZW52aXJvbm1lbnQgZm9yIG5vdzsg a2VlcCBqdXN0IGZsYWtlOCBmb3IgUHl0aG9uIDIKKyBwb2RtYW4gcnVuIC0tcm0gLXYgLjovc3Jj OlogcXVheS5pby9leGQtZ3VpbGQtc291cmNlLXRvb2xzL3Jwa2ctdGVzdC1weTI6bGF0ZXN0IHRv eCAtZSBmbGFrZThweXRob24yIC0td29ya2RpciAvdG1wL3RveCAke1RPWF9QT1NBUkdTfQorICAg ICAgICAgICAgICAgICAgICAgICAgICIiIgorZGlmZiAtLWdpdCBhL2plbmtpbnNfdGVzdC5kb2Nr ZXJmaWxlIGIvamVua2luc190ZXN0LmRvY2tlcmZpbGUKK2luZGV4IGRmODc2MmUuLmQyMTdhNTUg MTAwNjQ0CistLS0gYS9qZW5raW5zX3Rlc3QuZG9ja2VyZmlsZQorKysrIGIvamVua2luc190ZXN0 LmRvY2tlcmZpbGUKK0BAIC0xLDQgKzEsNCBAQAorLUZST00gZmVkb3JhOjM3CisrRlJPTSBmZWRv cmE6MzgKKyBMQUJFTCBcCisgICAgIG5hbWU9InJwa2cgdGVzdCIgXAorICAgICBkZXNjcmlwdGlv bj0iUnVuIHRlc3RzIHVzaW5nIHRveCB3aXRoIFB5dGhvbiAzIiBcCitAQCAtOSw2ICs5LDcgQEAg UlVOIGRuZiAteSB1cGRhdGUgJiYgZG5mIC15IGluc3RhbGwgXAorICAgICAgICAgcHl0aG9uMy1k ZXZlbCBcCisgICAgICAgICBweXRob24zLW9wZW5pZGMtY2xpZW50IFwKKyAgICAgICAgIHB5dGhv bjMtbGlibW9kdWxlbWQgXAorKyAgICAgICAgcHl0aG9uMy1ycG1hdXRvc3BlYyBcCisgICAgICAg ICBweXRob24zLXNldHVwdG9vbHMgXAorICAgICAgICAgcnBtbGludCBcCisgICAgICAgICBycG0t YnVpbGQgXAorZGlmZiAtLWdpdCBhL3B5cnBrZy91dGlscy5weSBiL3B5cnBrZy91dGlscy5weQor aW5kZXggZjNjOGIyNS4uZmMwMWM3ZCAxMDA2NDQKKy0tLSBhL3B5cnBrZy91dGlscy5weQorKysr IGIvcHlycGtnL3V0aWxzLnB5CitAQCAtMTA0LDcgKzEwNCw3IEBAIGRlZiBsb2dfcmVzdWx0KGxv Z19mdW5jLCByZXN1bHQsIGxldmVsPTAsIGluZGVudD0yKToKKyAgICAgZWxpZiBpc2luc3RhbmNl KHJlc3VsdCwgZGljdCk6CisgICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiByZXN1bHQuaXRlbXMo KToKKyAgICAgICAgICAgICBfbG9nX3ZhbHVlKGxvZ19mdW5jLCBrZXksIGxldmVsLCBpbmRlbnQs ICc6JykKKy0gICAgICAgICAgICBsb2dfcmVzdWx0KGxvZ19mdW5jLCB2YWx1ZSwgbGV2ZWwrMSkK KysgICAgICAgICAgICBsb2dfcmVzdWx0KGxvZ19mdW5jLCB2YWx1ZSwgbGV2ZWwgKyAxKQorICAg ICBlbHNlOgorICAgICAgICAgX2xvZ192YWx1ZShsb2dfZnVuYywgcmVzdWx0LCBsZXZlbCwgaW5k ZW50KQorIAorQEAgLTM0OCw5ICszNDgsOSBAQCBkZWYgX3JlcGxhY2VfbGluZXMobGluZXMsIHN0 YXJ0bGluZSwgZW5kbGluZSwgcmVwbGFjZW1lbnRfbGluZXM9Tm9uZSwgc3RyaXBfZW5kbAorICAg ICBlbHNlOgorICAgICAgICAgIyBycG1hdXRvc3BlYyBhZGRzIGFuIGVtcHR5IGxpbmUgYWZ0ZXIg dGhlIGVuZAorICAgICAgICAgIyB3ZSB3YW50IHRvIHJlbW92ZSBpdCwgYnV0IG9ubHkgaWYgaXQg aXMgYWN0dWFsbHkgZW1wdHkKKy0gICAgICAgIGlmIHN0cmlwX2VuZGxpbmUgYW5kIGxpbmVzW2Vu ZCsxXSA9PSAiXG4iOgorKyAgICAgICAgaWYgc3RyaXBfZW5kbGluZSBhbmQgbGluZXNbZW5kICsg MV0gPT0gIlxuIjoKKyAgICAgICAgICAgICBlbmQgKz0gMQorLSAgICAgICAgbGluZXMgPSBsaW5l c1s6c3RhcnRdICsgcmVwbGFjZW1lbnRfbGluZXMgKyBsaW5lc1tlbmQrMTpdCisrICAgICAgICBs aW5lcyA9IGxpbmVzWzpzdGFydF0gKyByZXBsYWNlbWVudF9saW5lcyArIGxpbmVzW2VuZCArIDE6 XQorICAgICAgICAgcmV0dXJuIGxpbmVzLCBUcnVlCisgCisgCitkaWZmIC0tZ2l0IGEvdGVzdHMv Zml4dHVyZXMvZG9jcGtnL2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjIGIvdGVzdHMvZml4dHVyZXMv ZG9jcGtnL2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5k ZXggMDAwMDAwMC4uNTk3NGI1NworLS0tIC9kZXYvbnVsbAorKysrIGIvdGVzdHMvZml4dHVyZXMv ZG9jcGtnL2RvY3BrZy1ycG1hdXRvc3BlYy5zcGVjCitAQCAtMCwwICsxLDUzIEBACisrIyMgU1RB UlQ6IFNldCBieSBycG1hdXRvc3BlYworKyMjIChycG1hdXRvc3BlYyB2ZXJzaW9uIDAuMy41KQor KyMjIFJQTUFVVE9TUEVDOiBhdXRvcmVsZWFzZSwgYXV0b2NoYW5nZWxvZworKyVkZWZpbmUgYXV0 b3JlbGVhc2UoZTpzOnBiOm4pICV7Py1wOjAufSV7bHVhOgorKyAgICByZWxlYXNlX251bWJlciA9 IDg7CisrICAgIGJhc2VfcmVsZWFzZV9udW1iZXIgPSB0b251bWJlcihycG0uZXhwYW5kKCIlez8t Yip9JXshPy1iOjF9IikpOworKyAgICBwcmludChyZWxlYXNlX251bWJlciArIGJhc2VfcmVsZWFz ZV9udW1iZXIgLSAxKTsKKyt9JXs/LWU6LiV7LWUqfX0lez8tczouJXstcyp9fSV7IT8tbjolez9k aXN0fX0KKysjIyBFTkQ6IFNldCBieSBycG1hdXRvc3BlYworKworKyMgYXV0b2dlbmVyYXRlZCBz cGVjZmlsZQorK1N1bW1hcnk6IER1bW15IHN1bW1hcnkKKytOYW1lOiBkb2Nwa2ctcnBtYXV0b3Nw ZWMKKytWZXJzaW9uOiAwLjIKKytSZWxlYXNlOiAxJXtkaXN0fQorK0xpY2Vuc2U6IEdQTAorK0dy b3VwOiBBcHBsaWNhdGlvbnMvUHJvZHVjdGl2aXR5CisrCisrQnVpbGRSb290OiAlKG1rdGVtcCAt dWQgJXtfdG1wcGF0aH0vJXtuYW1lfS0le3ZlcnNpb259LSV7cmVsZWFzZX0tWFhYWFhYKQorK1Nv dXJjZTA6IGhlbGxvLXdvcmxkLnR4dAorK1NvdXJjZTE6IGRvY3BrZy50YXIuZ3oKKytTb3VyY2Uy OiBzb3VyY2Utd2l0aG91dC1leHRlbnNpb24KKysjIGFkZGVkIGVtcHR5IGRpciBqdXN0IHRvIHRl c3QgaW1wb3J0IHNycG0gYGZlZHBrZyBpbXBvcnRgLiBJdCBzaG91bGQgc2tpcCB0aGUgZGlyLgor K1NvdXJjZTM6IEVNUFRZX0RJUgorKworKyVkZXNjcmlwdGlvbgorK1RoaXMgaXMgYSBkdW1teSBk ZXNjcmlwdGlvbi4KKysKKyslcHJlcAorK2NwICV7U09VUkNFMH0gLgorKworKyVidWlsZAorKwor KyVjbGVhbgorK3JtIC1yZiAkJFJQTV9CVUlMRF9ST09UCisrJWluc3RhbGwKKytybSAtcmYgJFJQ TV9CVUlMRF9ST09UCisrbWtkaXIgJFJQTV9CVUlMRF9ST09UCisrbWtkaXIgLXAgJFJQTV9CVUlM RF9ST09UL3Vzci9zaGFyZS9kb2MKKytjcCAle1NPVVJDRTB9ICRSUE1fQlVJTERfUk9PVC91c3Iv c2hhcmUvZG9jL2hlbGxvLXdvcmxkLnR4dAorKworKyVmaWxlcworKyVkb2MgIi91c3Ivc2hhcmUv ZG9jL2hlbGxvLXdvcmxkLnR4dCIKKysKKyslY2hhbmdlbG9nCisrIyMgU1RBUlQ6IEdlbmVyYXRl ZCBieSBycG1hdXRvc3BlYworKyogU3VuIEphbiAgMSAyMDA2IHRlc3RlciA8dGVzdGVyQGV4YW1w bGUuY29tPiAtIDAuMi0xCisrLSAtIE5ldyByZWxlYXNlIDAuMi0xCisrCisrKiBTdW4gSmFuICAx IDIwMDYgSm9obiBEb2UgPGpkb2VAZXhhbXBsZS5jb20+IC0gMC4yLTEKKystIEluaXRpYWwgdmVy c2lvbgorKworKyMjIEVORDogR2VuZXJhdGVkIGJ5IHJwbWF1dG9zcGVjCitkaWZmIC0tZ2l0IGEv dGVzdHMvdGVzdF9jbGkucHkgYi90ZXN0cy90ZXN0X2NsaS5weQoraW5kZXggZjJlNjhkZi4uM2Q5 MGYzNiAxMDA2NDQKKy0tLSBhL3Rlc3RzL3Rlc3RfY2xpLnB5CisrKysgYi90ZXN0cy90ZXN0X2Ns aS5weQorQEAgLTE3MDYsMTAgKzE3MDYsMTAgQEAgY2xhc3MgVGVzdEZhaWx1cmVJbXBvcnRTcnBt KENsaVRlc3RDYXNlKToKKyBjbGFzcyBUZXN0SW1wb3J0U3JwbShMb29rYXNpZGVDYWNoZU1vY2ss IENsaVRlc3RDYXNlKToKKyAKKyAgICAgQHN0YXRpY21ldGhvZAorLSAgICBkZWYgYnVpbGRfc3Jw bShzcmNycG1kaXIpOgorKyAgICBkZWYgYnVpbGRfc3JwbShzcmNycG1kaXIsIHNwZWNmaWxlX25h bWU9J2RvY3BrZy5zcGVjJyk6CisgICAgICAgICAiIiJCdWlsZCBhIGZha2UgU1JQTSB1c2VkIGJ5 IHRoaXMgdGVzdCBjYXNlIiIiCisgICAgICAgICBkb2Nwa2dfZGlyID0gb3MucGF0aC5qb2luKGZp eHR1cmVzX2RpciwgJ2RvY3BrZycpCistICAgICAgICBzcGVjZmlsZSA9IG9zLnBhdGguam9pbihk b2Nwa2dfZGlyLCAnZG9jcGtnLnNwZWMnKQorKyAgICAgICAgc3BlY2ZpbGUgPSBvcy5wYXRoLmpv aW4oZG9jcGtnX2Rpciwgc3BlY2ZpbGVfbmFtZSkKKyAgICAgICAgIHJwbWJ1aWxkID0gWworICAg ICAgICAgICAgICdycG1idWlsZCcsICctYnMnLAorICAgICAgICAgICAgICctLWRlZmluZScsICdf dG9wZGlyIHswfScuZm9ybWF0KHNyY3JwbWRpciksCitAQCAtMTczNSw2ICsxNzM1LDkgQEAgY2xh c3MgVGVzdEltcG9ydFNycG0oTG9va2FzaWRlQ2FjaGVNb2NrLCBDbGlUZXN0Q2FzZSk6CisgCisg ICAgICAgICBzZWxmLnNyY3JwbWRpciA9IHRlbXBmaWxlLm1rZHRlbXAocHJlZml4PSd0ZXN0LWlt cG9ydC1zcnBtLXRvcGRpci0nKQorICAgICAgICAgc2VsZi5zcnBtX2ZpbGUgPSBUZXN0SW1wb3J0 U3JwbS5idWlsZF9zcnBtKHNlbGYuc3JjcnBtZGlyKQorKyAgICAgICAgc2VsZi5zcnBtX2ZpbGVf cnBtYXV0b3NwZWMgPSBUZXN0SW1wb3J0U3JwbS5idWlsZF9zcnBtKAorKyAgICAgICAgICAgIHNl bGYuc3JjcnBtZGlyLAorKyAgICAgICAgICAgIHNwZWNmaWxlX25hbWU9J2RvY3BrZy1ycG1hdXRv c3BlYy5zcGVjJykKKyAKKyAgICAgICAgIHNlbGYuY2hhb3NfcmVwbyA9IHRlbXBmaWxlLm1rZHRl bXAocHJlZml4PSdycGtnLXRlc3RzLWNoYW9zLXJlcG8tJykKKyAgICAgICAgIGNtZHMgPSAoCitA QCAtMTgyNyw0MCArMTgzMCwyOSBAQCBjbGFzcyBUZXN0SW1wb3J0U3JwbShMb29rYXNpZGVDYWNo ZU1vY2ssIENsaVRlc3RDYXNlKToKKyAgICAgICAgIHNlbGYuYXNzZXJ0RmlsZXNFeGlzdChbJ3Bh Y2thZ2UucnBtbGludHJjJ10sIHNlYXJjaF9kaXI9c2VsZi5jaGFvc19yZXBvKQorICAgICAgICAg c2VsZi5hc3NlcnRGaWxlc05vdEV4aXN0KFsndGhlX2ZpbGVfaXNfbm90X2luX3Jlc2VydmVkLnlh bWwnXSwgc2VhcmNoX2Rpcj1zZWxmLmNoYW9zX3JlcG8pCisgCistICAgIEBwYXRjaCgncHlycGtn LnNwZWNfZmlsZV9wcm9jZXNzZWRfYnlfcnBtYXV0b3NwZWMnKQorLSAgICBkZWYgdGVzdF9pbXBv cnRfc3JwbV9ub3RfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjKHNlbGYsIHJwbWF1dG9zcGVjX3By b2Nlc3NlZCk6CisrICAgIGRlZiB0ZXN0X2ltcG9ydF9zcnBtX25vdF9wcm9jZXNzZWRfYnlfcnBt YXV0b3NwZWMoc2VsZik6CisgICAgICAgICBjbGlfY21kID0gWydycGtnJywgJy0tcGF0aCcsIHNl bGYuY2hhb3NfcmVwbywgJy0tbmFtZScsICdkb2Nwa2cnLAorICAgICAgICAgICAgICAgICAgICAn aW1wb3J0JywgJy0tc2tpcC1kaWZmcycsIHNlbGYuc3JwbV9maWxlXQorIAorLSAgICAgICAgcnBt YXV0b3NwZWNfcHJvY2Vzc2VkLnJldHVybl92YWx1ZSA9IEZhbHNlCisgICAgICAgICB3aXRoIHBh dGNoKCdzeXMuYXJndicsIG5ldz1jbGlfY21kKToKKyAgICAgICAgICAgICBjbGkgPSBzZWxmLm5l d19jbGkoKQorICAgICAgICAgICAgIHdpdGggcGF0Y2goJ3B5cnBrZy5sb29rYXNpZGUuQ0dJTG9v a2FzaWRlQ2FjaGUudXBsb2FkJywgc2VsZi5sb29rYXNpZGVjYWNoZV91cGxvYWQpOgorICAgICAg ICAgICAgICAgICBjbGkuaW1wb3J0X3NycG0oKSAgIyBubyBleGNlcHRpb24gc2hvdWxkIGJlIHJh aXNlZAorLSAgICAgICAgICAgIHJwbWF1dG9zcGVjX3Byb2Nlc3NlZC5hc3NlcnRfY2FsbGVkX29u Y2UoKQorIAorLSAgICBAcGF0Y2goJ3B5cnBrZy5zcGVjX2ZpbGVfcHJvY2Vzc2VkX2J5X3JwbWF1 dG9zcGVjJykKKy0gICAgZGVmIHRlc3RfaW1wb3J0X3NycG1fcHJvY2Vzc2VkX2J5X3JwbWF1dG9z cGVjKHNlbGYsIHJwbWF1dG9zcGVjX3Byb2Nlc3NlZCk6CisrICAgIGRlZiB0ZXN0X2ltcG9ydF9z cnBtX3Byb2Nlc3NlZF9ieV9ycG1hdXRvc3BlYyhzZWxmKToKKyAgICAgICAgIGNsaV9jbWQgPSBb J3Jwa2cnLCAnLS1wYXRoJywgc2VsZi5jaGFvc19yZXBvLCAnLS1uYW1lJywgJ2RvY3BrZycsCist ICAgICAgICAgICAgICAgICAgICdpbXBvcnQnLCAnLS1za2lwLWRpZmZzJywgc2VsZi5zcnBtX2Zp bGVdCisrICAgICAgICAgICAgICAgICAgICdpbXBvcnQnLCAnLS1za2lwLWRpZmZzJywgc2VsZi5z cnBtX2ZpbGVfcnBtYXV0b3NwZWNdCisgCistICAgICAgICBycG1hdXRvc3BlY19wcm9jZXNzZWQu cmV0dXJuX3ZhbHVlID0gVHJ1ZQorICAgICAgICAgd2l0aCBwYXRjaCgnc3lzLmFyZ3YnLCBuZXc9 Y2xpX2NtZCk6CisgICAgICAgICAgICAgY2xpID0gc2VsZi5uZXdfY2xpKCkKKyAgICAgICAgICAg ICB3aXRoIHBhdGNoKCdweXJwa2cubG9va2FzaWRlLkNHSUxvb2thc2lkZUNhY2hlLnVwbG9hZCcs IHNlbGYubG9va2FzaWRlY2FjaGVfdXBsb2FkKToKKy0gICAgICAgICAgICAgICAgc2l4LmFzc2Vy dFJhaXNlc1JlZ2V4KAorLSAgICAgICAgICAgICAgICAgICAgc2VsZiwKKy0gICAgICAgICAgICAg ICAgICAgIHJwa2dFcnJvciwKKy0gICAgICAgICAgICAgICAgICAgICdTUlBNIHdhcyBwcm9jZXNz ZWQgYnkgcnBtYXV0b3NwZWMnLAorLSAgICAgICAgICAgICAgICAgICAgY2xpLmltcG9ydF9zcnBt KQorLSAgICAgICAgICAgIHJwbWF1dG9zcGVjX3Byb2Nlc3NlZC5hc3NlcnRfY2FsbGVkX29uY2Uo KQorKyAgICAgICAgICAgICAgICBjbGkuaW1wb3J0X3NycG0oKQorIAorLSAgICBAcGF0Y2goJ3B5 cnBrZy5zcGVjX2ZpbGVfcHJvY2Vzc2VkX2J5X3JwbWF1dG9zcGVjJykKKysgICAgQHBhdGNoKCdw eXJwa2cuc3BlY19maWxlX3VuZG9fcnBtYXV0b3NwZWMnKQorICAgICBkZWYgdGVzdF9pbXBvcnRf c3JwbV9wcm9jZXNzZWRfYnlfcnBtYXV0b3NwZWNfYWxsb3dlZChzZWxmLCBycG1hdXRvc3BlY19w cm9jZXNzZWQpOgorICAgICAgICAgY2xpX2NtZCA9IFsncnBrZycsICctLXBhdGgnLCBzZWxmLmNo YW9zX3JlcG8sICctLW5hbWUnLCAnZG9jcGtnJywKKyAgICAgICAgICAgICAgICAgICAgJ2ltcG9y dCcsICctLXNraXAtZGlmZnMnLCBzZWxmLnNycG1fZmlsZV0KKyAKKy0gICAgICAgIHJwbWF1dG9z cGVjX3Byb2Nlc3NlZC5yZXR1cm5fdmFsdWUgPSBUcnVlCisgICAgICAgICB3aXRoIHBhdGNoKCdz eXMuYXJndicsIG5ldz1jbGlfY21kKToKKyAgICAgICAgICAgICBjbGkgPSBzZWxmLm5ld19jbGko KQorICAgICAgICAgICAgIGNsaS5jbWQuYWxsb3dfcHJlX2dlbmVyYXRlZF9zcnBtID0gVHJ1ZQor QEAgLTE4NjgsNiArMTg2MCwxOCBAQCBjbGFzcyBUZXN0SW1wb3J0U3JwbShMb29rYXNpZGVDYWNo ZU1vY2ssIENsaVRlc3RDYXNlKToKKyAgICAgICAgICAgICAgICAgY2xpLmltcG9ydF9zcnBtKCkg ICMgbm8gZXhjZXB0aW9uIHNob3VsZCBiZSByYWlzZWQKKyAgICAgICAgICAgICBycG1hdXRvc3Bl Y19wcm9jZXNzZWQuYXNzZXJ0X25vdF9jYWxsZWQoKQorIAorKyAgICBAcGF0Y2goJ3B5cnBrZy5z cGVjX2ZpbGVfdW5kb19ycG1hdXRvc3BlYycpCisrICAgIGRlZiB0ZXN0X2ltcG9ydF9zcnBtX3By b2Nlc3NlZF9ieV9ycG1hdXRvc3BlY19ub3RfYWxsb3dlZChzZWxmLCBycG1hdXRvc3BlY19wcm9j ZXNzZWQpOgorKyAgICAgICAgY2xpX2NtZCA9IFsncnBrZycsICctLXBhdGgnLCBzZWxmLmNoYW9z X3JlcG8sICctLW5hbWUnLCAnZG9jcGtnJywKKysgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCcs ICctLXNraXAtZGlmZnMnLCBzZWxmLnNycG1fZmlsZV0KKysKKysgICAgICAgIHdpdGggcGF0Y2go J3N5cy5hcmd2JywgbmV3PWNsaV9jbWQpOgorKyAgICAgICAgICAgIGNsaSA9IHNlbGYubmV3X2Ns aSgpCisrICAgICAgICAgICAgY2xpLmNtZC5hbGxvd19wcmVfZ2VuZXJhdGVkX3NycG0gPSBGYWxz ZSAgIyBvciBOb25lCisrICAgICAgICAgICAgd2l0aCBwYXRjaCgncHlycGtnLmxvb2thc2lkZS5D R0lMb29rYXNpZGVDYWNoZS51cGxvYWQnLCBzZWxmLmxvb2thc2lkZWNhY2hlX3VwbG9hZCk6Cisr ICAgICAgICAgICAgICAgIGNsaS5pbXBvcnRfc3JwbSgpICAjIG5vIGV4Y2VwdGlvbiBzaG91bGQg YmUgcmFpc2VkCisrICAgICAgICAgICAgcnBtYXV0b3NwZWNfcHJvY2Vzc2VkLmFzc2VydF9jYWxs ZWRfb25jZSgpCisrCisgCisgY2xhc3MgVGVzdE1vY2tidWlsZChDbGlUZXN0Q2FzZSk6CisgICAg ICIiIlRlc3QgbW9ja2J1aWxkIGNvbW1hbmQiIiIKK2RpZmYgLS1naXQgYS90ZXN0cy90ZXN0X3V0 aWxzLnB5IGIvdGVzdHMvdGVzdF91dGlscy5weQoraW5kZXggMzQxODhjNS4uMGNkNjJkOCAxMDA2 NDQKKy0tLSBhL3Rlc3RzL3Rlc3RfdXRpbHMucHkKKysrKyBiL3Rlc3RzL3Rlc3RfdXRpbHMucHkK K0BAIC0xLDE1ICsxLDIyIEBACisgaW1wb3J0IG9zCisraW1wb3J0IHNodXRpbAorIGltcG9ydCB0 ZW1wZmlsZQorIGltcG9ydCB1bml0dGVzdAorIGltcG9ydCB3YXJuaW5ncworIAorK3RyeToKKysg ICAgaW1wb3J0IHJwbWF1dG9zcGVjCisrZXhjZXB0IEltcG9ydEVycm9yOgorKyAgICBycG1hdXRv c3BlYyA9IE5vbmUKKysKKyB0cnk6CisgICAgIGZyb20gdW5pdHRlc3QgaW1wb3J0IG1vY2sKKyBl eGNlcHQgSW1wb3J0RXJyb3I6CisgICAgIGltcG9ydCBtb2NrCisgCisgZnJvbSBweXJwa2cudXRp bHMgaW1wb3J0IChjYWNoZWRfcHJvcGVydHksIGlzX2ZpbGVfaW5fZGlyZWN0b3J5LAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgaXNfZmlsZV90cmFja2VkLCBsb2dfcmVzdWx0LCB3YXJuX2Rl cHJlY2F0ZWQpCisrICAgICAgICAgICAgICAgICAgICAgICAgICBpc19maWxlX3RyYWNrZWQsIGxv Z19yZXN1bHQsCisrICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjX2ZpbGVfdW5kb19ycG1h dXRvc3BlYywgd2Fybl9kZXByZWNhdGVkKQorIAorIGZyb20gdXRpbHMgaW1wb3J0IENvbW1hbmRU ZXN0Q2FzZQorIAorQEAgLTI4NywzICsyOTQsMzAgQEAgY2xhc3MgRmlsZVRyYWNrZWRUZXN0Q2Fz ZShDb21tYW5kVGVzdENhc2UpOgorICAgICAgICAgICAgICAgICBzZWxmLnJlcG9fcGF0aAorICAg ICAgICAgICAgICkKKyAgICAgICAgICkKKysKKysKKytAdW5pdHRlc3Quc2tpcElmKAorKyAgICBy cG1hdXRvc3BlYyBpcyBOb25lLAorKyAgICAiU2tpcCB0ZXN0IG9uIHJlbGVhc2VzIHdoZXJlIHJw bWF1dG9zcGVjIGlzIG5vdCBhdmFpbGFibGUgKFJIRUwpIikKKytjbGFzcyBTcGVjRmlsZVVuZG9S cG1hdXRvc3BlYyhDb21tYW5kVGVzdENhc2UpOgorKyAgICBkZWYgdGVzdF9yZW1vdmVfYXV0b3Nw ZWNfZnJvbV9zcGVjZmlsZShzZWxmKToKKysgICAgICAgIGZpeHR1cmVzX2RpciA9IG9zLnBhdGgu am9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAiZml4dHVyZXMiLCAiZG9jcGtnIikKKysK KysgICAgICAgIHNwZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWMgPSBvcy5wYXRoLmpvaW4oZml4 dHVyZXNfZGlyLCAiZG9jcGtnLnNwZWMiKQorKyAgICAgICAgc3BlY2ZpbGVfd2l0aG91dF9ycG1h dXRvc3BlY19jb3B5ID0gb3MucGF0aC5qb2luKHNlbGYucmVwb19wYXRoLCAiZG9jcGtnLnNwZWMi KQorKyAgICAgICAgc2h1dGlsLmNvcHkyKHNwZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWMsIHNw ZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWNfY29weSkKKysgICAgICAgIHNlbGYuYXNzZXJ0RmFs c2UocnBtYXV0b3NwZWMuc3BlY2ZpbGVfdXNlc19ycG1hdXRvc3BlYyhzcGVjZmlsZV93aXRob3V0 X3JwbWF1dG9zcGVjX2NvcHkpKQorKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzcGVjX2ZpbGVf dW5kb19ycG1hdXRvc3BlYyhzcGVjZmlsZV93aXRob3V0X3JwbWF1dG9zcGVjX2NvcHkpKQorKyAg ICAgICAgc2VsZi5hc3NlcnRGYWxzZShycG1hdXRvc3BlYy5zcGVjZmlsZV91c2VzX3JwbWF1dG9z cGVjKHNwZWNmaWxlX3dpdGhvdXRfcnBtYXV0b3NwZWNfY29weSkpCisrICAgICAgICBvcy5yZW1v dmUoc3BlY2ZpbGVfd2l0aG91dF9ycG1hdXRvc3BlY19jb3B5KQorKworKyAgICAgICAgc3BlY2Zp bGVfd2l0aF9ycG1hdXRvc3BlYyA9IG9zLnBhdGguam9pbihmaXh0dXJlc19kaXIsICJkb2Nwa2ct cnBtYXV0b3NwZWMuc3BlYyIpCisrICAgICAgICBzcGVjZmlsZV93aXRoX3JwbWF1dG9zcGVjX2Nv cHkgPSBvcy5wYXRoLmpvaW4oc2VsZi5yZXBvX3BhdGgsICJkb2Nwa2ctcnBtYXV0b3NwZWMuc3Bl YyIpCisrICAgICAgICBzaHV0aWwuY29weTIoc3BlY2ZpbGVfd2l0aF9ycG1hdXRvc3BlYywgc3Bl Y2ZpbGVfd2l0aF9ycG1hdXRvc3BlY19jb3B5KQorKyAgICAgICAgIyByZXR1cm5zIFRydWUgaWYg dGhlIHNwZWNmaWxlIHdhcyBtb2RpZmllZAorKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNwZWNf ZmlsZV91bmRvX3JwbWF1dG9zcGVjKHNwZWNmaWxlX3dpdGhfcnBtYXV0b3NwZWNfY29weSkpCisr ICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHJwbWF1dG9zcGVjLnNwZWNmaWxlX3VzZXNfcnBtYXV0 b3NwZWMoCisrICAgICAgICAgICAgc3BlY2ZpbGVfd2l0aF9ycG1hdXRvc3BlY19jb3B5LCBjaGVj a19hdXRvY2hhbmdlbG9nPUZhbHNlLCBjaGVja19hdXRvcmVsZWFzZT1UcnVlKSkKKysgICAgICAg IHNlbGYuYXNzZXJ0VHJ1ZShycG1hdXRvc3BlYy5zcGVjZmlsZV91c2VzX3JwbWF1dG9zcGVjKAor KyAgICAgICAgICAgIHNwZWNmaWxlX3dpdGhfcnBtYXV0b3NwZWNfY29weSwgY2hlY2tfYXV0b2No YW5nZWxvZz1UcnVlLCBjaGVja19hdXRvcmVsZWFzZT1GYWxzZSkpCisrICAgICAgICBvcy5yZW1v dmUoc3BlY2ZpbGVfd2l0aF9ycG1hdXRvc3BlY19jb3B5KQorLS0gCisyLjQzLjAKKwoKZGlmZiAt LWdpdCBhLzAwMzMtVXBkYXRlLWRvY2tlci1pbWFnZS1mb3ItSmVua2lua3MtdGVzdHMucGF0Y2gg Yi8wMDMzLVVwZGF0ZS1kb2NrZXItaW1hZ2UtZm9yLUplbmtpbmtzLXRlc3RzLnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2ZDc0N2QKLS0tIC9kZXYvbnVsbAorKysg Yi8wMDMzLVVwZGF0ZS1kb2NrZXItaW1hZ2UtZm9yLUplbmtpbmtzLXRlc3RzLnBhdGNoCkBAIC0w LDAgKzEsNzMgQEAKK0Zyb20gODk4YjJjNjE1MDZlNzI4NDdiYWUwMGFhOGZmZTIyOGFlYmI2OTU0 NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IE9uZHJlaiBOb3NlayA8b25vc2VrQHJl ZGhhdC5jb20+CitEYXRlOiBUdWUsIDcgTWFyIDIwMjMgMTk6MTU6MjggKzAxMDAKK1N1YmplY3Q6 IFtQQVRDSF0gVXBkYXRlIGRvY2tlciBpbWFnZSBmb3IgSmVua2lua3MgdGVzdHMKKworUmVnZW5l cmF0ZSB0aGUgZG9ja2VyIGltYWdlOiBGZWRvcmEgMzUgLS0+IEZlZG9yYSAzNy4KK0plbmtpbnNm aWxlIGFzIGEgcGlwZWxpbmUgc2NyaXB0IGlzIHVuaWZpZWQgd2l0aCBmZWRwa2cuCisKK0pJUkE6 IFJIRUxDTVAtMTEzOTEKK1NpZ25lZC1vZmYtYnk6IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhh dC5jb20+CistLS0KKyBKZW5raW5zZmlsZSAgICAgICAgICAgICB8IDE0ICsrKysrKysrKy0tLS0t CisgamVua2luc190ZXN0LmRvY2tlcmZpbGUgfCAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAg aW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL0plbmtpbnNmaWxl IGIvSmVua2luc2ZpbGUKK2luZGV4IGI2N2I5YTcuLjdiNjc0MmYgMTAwNjQ0CistLS0gYS9KZW5r aW5zZmlsZQorKysrIGIvSmVua2luc2ZpbGUKK0BAIC0yMyw3ICsyMyw3IEBAIHBpcGVsaW5lIHsK KyAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgIHRyeSB7CisgICAg ICAgICAgICAgICAgICAgICAgICAgZWNobyAiUmVxdWVzdGluZyBkdWZmeSBub2RlIC4uLiIKKy0g ICAgICAgICAgICAgICAgICAgICAgICBkZWYgc2Vzc2lvbl9zdHIgPSBzaCByZXR1cm5TdGRvdXQ6 IHRydWUsIHNjcmlwdDogInNldCAreDsgZHVmZnkgY2xpZW50IC0tdXJsIGh0dHBzOi8vZHVmZnku Y2kuY2VudG9zLm9yZy9hcGkvdjEgLS1hdXRoLW5hbWUgZmVkb3JhLWluZnJhIC0tYXV0aC1rZXkg JENJQ09fQVBJX0tFWSByZXF1ZXN0LXNlc3Npb24gcG9vbD12aXJ0LWVjMi10Mi1jZW50b3MtOXMt eDg2XzY0LHF1YW50aXR5PTEiCisrICAgICAgICAgICAgICAgICAgICAgICAgZGVmIHNlc3Npb25f c3RyID0gc2ggcmV0dXJuU3Rkb3V0OiB0cnVlLCBzY3JpcHQ6ICJzZXQgK3g7IGR1ZmZ5IGNsaWVu dCAtLXVybCBodHRwczovL2R1ZmZ5LmNpLmNlbnRvcy5vcmcvYXBpL3YxIC0tYXV0aC1uYW1lIGZl ZG9yYS1pbmZyYSAtLWF1dGgta2V5ICRDSUNPX0FQSV9LRVkgcmVxdWVzdC1zZXNzaW9uIHBvb2w9 dmlydC1lYzItdDItY2VudG9zLThzLXg4Nl82NCxxdWFudGl0eT0xIgorICAgICAgICAgICAgICAg ICAgICAgICAgIGRlZiBzZXNzaW9uID0gcmVhZEpTT04gdGV4dDogc2Vzc2lvbl9zdHIKKyAgICAg ICAgICAgICAgICAgICAgICAgICBEVUZGWV9TRVNTSU9OX0lEPSBzZXNzaW9uLnNlc3Npb24uaWQK KyAgICAgICAgICAgICAgICAgICAgICAgICBkZWYgaG9zdG5hbWUgPSBzZXNzaW9uLnNlc3Npb24u bm9kZXNbMF0uaG9zdG5hbWUKK0BAIC0zMSw3ICszMSw3IEBAIHBpcGVsaW5lIHsKKyAgICAgICAg ICAgICAgICAgICAgICAgICBkZWYgcmVtb3RlX2RpciA9ICIvdG1wLyRKRU5LSU5TX0FHRU5UX05B TUUiCisgICAgICAgICAgICAgICAgICAgICAgICAgZWNobyAicmVtb3RlX2RpcjogJHJlbW90ZV9k aXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcyBtYWtlcyB0ZXN0cyBydW4gaW4g cGFyYWxsZWwgaWYgbmVlZGVkOiAiLS1wYXJhbGxlbD1hdXRvIC0tcGFyYWxsZWwtbGl2ZSIKKy0g ICAgICAgICAgICAgICAgICAgICAgICBkZWYgVE9YX1BPU0FSR1MgPQorKyAgICAgICAgICAgICAg ICAgICAgICAgIGRlZiBUT1hfUE9TQVJHUyA9ICIiCisgICAgICAgICAgICAgICAgICAgICAgICAg d3JpdGVGaWxlIGZpbGU6ICdqb2Iuc2gnLCB0ZXh0OiAiIiIKKyBzZXQgLXhlCisgZG5mIGluc3Rh bGwgLXkgZ2l0IHBvZG1hbgorQEAgLTQwLDE1ICs0MCwxOSBAQCBnaXQgY29uZmlnIC0tZ2xvYmFs IHVzZXIubmFtZSAiamVua2lucyIKKyBjZCAkcmVtb3RlX2RpcgorIGdpdCBjbG9uZSBodHRwczov L3BhZ3VyZS5pby9ycGtnLmdpdCAtYiBtYXN0ZXIKKyBjZCBycGtnCistZ2l0IHJlbW90ZSBybSBw cm9wb3NlZCB8fCB0cnVlCisrIyByZW1vdmUgcmVtb3RlIG9ubHkgaWYgZXhpc3RzCisrcmVtb3Rl cz1cJChnaXQgcmVtb3RlKQorK2lmIGVjaG8gIlwkcmVtb3RlcyIgfCBncmVwIC1xICJecHJvcG9z ZWRcJCI7IHRoZW4KKysgIGdpdCByZW1vdGUgcm0gcHJvcG9zZWQgfHwgdHJ1ZQorK2ZpCisgZ2l0 IHJlbW90ZSBhZGQgcHJvcG9zZWQgIiRwYXJhbXMuUkVQTyIKKyBnaXQgZmV0Y2ggcHJvcG9zZWQK KyBnaXQgY2hlY2tvdXQgIm9yaWdpbi8kcGFyYW1zLkJSQU5DSF9UTyIKKyBnaXQgbWVyZ2UgLS1u by1mZiAicHJvcG9zZWQvJHBhcmFtcy5CUkFOQ0giIC1tICJNZXJnZSBQUiIKKyAKKy1wb2RtYW4g cnVuIC0tcm0gLXYgLjovc3JjOlogcXVheS5pby9leGQtZ3VpbGQtc291cmNlLXRvb2xzL3Jwa2ct dGVzdCB0b3ggLWUgcHkzNixweTM5LGZsYWtlOCxiYW5kaXQgLS13b3JrZGlyIC90bXAvdG94ICR7 VE9YX1BPU0FSR1N9CisrcG9kbWFuIHJ1biAtLXJtIC12IC46L3NyYzpaIHF1YXkuaW8vZXhkLWd1 aWxkLXNvdXJjZS10b29scy9ycGtnLXRlc3Q6bGF0ZXN0IHRveCAtZSBweTM2LHB5MzksZmxha2U4 LGJhbmRpdCAtLXdvcmtkaXIgL3RtcC90b3ggJHtUT1hfUE9TQVJHU30KKyAjIGRpc2FibGVkIHB5 MjcgZW52aXJvbm1lbnQgZm9yIG5vdzsga2VlcCBqdXN0IGZsYWtlOCBmb3IgUHl0aG9uIDIKKy1w b2RtYW4gcnVuIC0tcm0gLXYgLjovc3JjOlogcXVheS5pby9leGQtZ3VpbGQtc291cmNlLXRvb2xz L3Jwa2ctdGVzdC1weTIgdG94IC1lIGZsYWtlOHB5dGhvbjIgLS13b3JrZGlyIC90bXAvdG94ICR7 VE9YX1BPU0FSR1N9CisrcG9kbWFuIHJ1biAtLXJtIC12IC46L3NyYzpaIHF1YXkuaW8vZXhkLWd1 aWxkLXNvdXJjZS10b29scy9ycGtnLXRlc3QtcHkyOmxhdGVzdCB0b3ggLWUgZmxha2U4cHl0aG9u MiAtLXdvcmtkaXIgL3RtcC90b3ggJHtUT1hfUE9TQVJHU30KKyAgICAgICAgICAgICAgICAgICAg ICAgICAiIiIKKyAgICAgICAgICAgICAgICAgICAgICAgICBzaCAiY2F0IGpvYi5zaCIKKyAgICAg ICAgICAgICAgICAgICAgICAgICBzaCAic3NoIC1vIFN0cmljdEhvc3RLZXlDaGVja2luZz1ubyBy b290QCRob3N0bmFtZSBta2RpciAkcmVtb3RlX2RpciIKK2RpZmYgLS1naXQgYS9qZW5raW5zX3Rl c3QuZG9ja2VyZmlsZSBiL2plbmtpbnNfdGVzdC5kb2NrZXJmaWxlCitpbmRleCA0MzI0NWIxLi5k Zjg3NjJlIDEwMDY0NAorLS0tIGEvamVua2luc190ZXN0LmRvY2tlcmZpbGUKKysrKyBiL2plbmtp bnNfdGVzdC5kb2NrZXJmaWxlCitAQCAtMSw0ICsxLDQgQEAKKy1GUk9NIGZlZG9yYTozNQorK0ZS T00gZmVkb3JhOjM3CisgTEFCRUwgXAorICAgICBuYW1lPSJycGtnIHRlc3QiIFwKKyAgICAgZGVz Y3JpcHRpb249IlJ1biB0ZXN0cyB1c2luZyB0b3ggd2l0aCBQeXRob24gMyIgXAorLS0gCisyLjQz LjAKKwoKZGlmZiAtLWdpdCBhLzAwMzQtbW9ja2J1aWxkLW5ldy1hcmd1bWVudC1leHRyYS1wa2dz LnBhdGNoIGIvMDAzNC1tb2NrYnVpbGQtbmV3LWFyZ3VtZW50LWV4dHJhLXBrZ3MucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTU3OWRkMwotLS0gL2Rldi9udWxsCisr KyBiLzAwMzQtbW9ja2J1aWxkLW5ldy1hcmd1bWVudC1leHRyYS1wa2dzLnBhdGNoCkBAIC0wLDAg KzEsNjggQEAKK0Zyb20gODlkM2JiMGQzNDI1MGZlMjRlZWQ1YmM2M2VkZDk5MmU5MzJhNjIyYSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206ID0/VVRGLTg/cT9PbmQ9QzU9OTllaj0yME5v c2VrPz0gPG9ub3Nla0ByZWRoYXQuY29tPgorRGF0ZTogV2VkLCAxNSBOb3YgMjAyMyAwMjo1Mzox MCArMDEwMAorU3ViamVjdDogW1BBVENIIDE0LzE3XSBgbW9ja2J1aWxkYDogbmV3IGFyZ3VtZW50 IC0tZXh0cmEtcGtncworTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFp bjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAorCitBZGRl ZCB0aGUgbmV3IGFyZ3VtZW50IGAtLWV4dHJhLXBrZ3NgIHRvIGBtb2NrYnVpbGRgIGNvbW1hbmQu CitJdCBpbnN0YWxscyBhZGRpdGlvbmFsIHBhY2thZ2VzIHRvIG1vY2sncyBjaHJvb3QuIEluIHNv bWUgY2FzZXMgaXMKK3Bvc3NpYmxlIHRvIHVzZSB0aGUgY3VycmVudCBtZWNoYW5pc20gb2YgZXh0 cmEgYXJncyBwbGFjZWQKK2FmdGVyIGAtLWAgYXQgdGhlIGVuZCBvZiB0aGUgY29tbWFuZCBsaW5l IGluc3RlYWQgb2YgYC0tZXh0cmEtcGtnc2AuCisKKyAgRXhhbXBsZTogZmVkcGtnIG1vY2tidWls ZCAtLSAtLWFkZGl0aW9uYWwtcGFja2FnZSA8cGtnPgorCitBcmd1bWVudChzKSBgYWRkaXRpb25h bC1wYWNrYWdlYCBpcyBwYXNzZWQgdG8gYG1vY2tgLgorYGFkZGl0aW9uYWwtcGFja2FnZWAgY2Fu J3QgYmUgdXNlZCB0b2dldGhlciB3aXRoIGAtLXNoZWxsYC4KKworSklSQTogUkhFTENNUC0xMTAx NworRml4ZXM6IGh0dHBzOi8vcGFndXJlLmlvL2ZlZHBrZy9pc3N1ZS80OTgKKworU2lnbmVkLW9m Zi1ieTogT25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CistLS0KKyBweXJwa2cvY2xp LnB5IHwgMjEgKysrKysrKysrKysrKysrKysrKysrCisgMSBmaWxlIGNoYW5nZWQsIDIxIGluc2Vy dGlvbnMoKykKKworZGlmZiAtLWdpdCBhL3B5cnBrZy9jbGkucHkgYi9weXJwa2cvY2xpLnB5Citp bmRleCA2ZmQ2ZGYwLi4wNmY0YzFhIDEwMDY0NAorLS0tIGEvcHlycGtnL2NsaS5weQorKysrIGIv cHlycGtnL2NsaS5weQorQEAgLTExNTIsNiArMTE1Miw5IEBAIGNsYXNzIGNsaUNsaWVudChvYmpl Y3QpOgorICAgICAgICAgICAgICctLXVzZS1sb2NhbC1tb2NrLWNvbmZpZycsIGRlZmF1bHQ9Tm9u ZSwgZGVzdD0ibG9jYWxfbW9ja19jb25maWciLAorICAgICAgICAgICAgIGFjdGlvbj0nc3RvcmVf dHJ1ZScsCisgICAgICAgICAgICAgaGVscD0iRW5mb3JjZSB1c2Ugb2YgbG9jYWwgTW9jayBjb25m aWd1cmF0aW9uLiIpCisrICAgICAgICBtb2NrYnVpbGRfcGFyc2VyLmFkZF9hcmd1bWVudCgKKysg ICAgICAgICAgICAnLS1leHRyYS1wa2dzJywgYWN0aW9uPSdhcHBlbmQnLCBuYXJncz0nKicsCisr ICAgICAgICAgICAgaGVscD0iSW5zdGFsbCBhZGRpdGlvbmFsIHBhY2thZ2VzIGludG8gY2hyb290 IikKKyAKKyAgICAgICAgIG1vY2tidWlsZF9wYXJzZXIuc2V0X2RlZmF1bHRzKGNvbW1hbmQ9c2Vs Zi5tb2NrYnVpbGQpCisgCitAQCAtMjUxNCw2ICsyNTE3LDI0IEBAIGNsYXNzIGNsaUNsaWVudChv YmplY3QpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiJXMtJXMtJXMuc3JjLnJwbSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJSAoc2VsZi5jbWQucmVwb19uYW1lLCBzZWxmLmNtZC52ZXIsIHNlbGYu Y21kLnJlbCkpCisgICAgICAgICAgICAgICAgIHNlbGYubG9nLmRlYnVnKCdTcnBtIGdlbmVyYXRl ZDogezB9Jy5mb3JtYXQoc2VsZi5jbWQuc3JwbW5hbWUpKQorKyAgICAgICAgICAgIGlmIHNlbGYu YXJncy5leHRyYV9wa2dzOgorKyAgICAgICAgICAgICAgICBtb2NrYXJnc19leHRyYV9wa2dzID0g W10KKysgICAgICAgICAgICAgICAgbGlzdF9leHRyYV9wa2dzID0gW10KKysgICAgICAgICAgICAg ICAgIyBwcm9jZXNzIHBvc3NpYmxlIG11bHRpcGxlIGFyZ3VtZW50J3Mgb2NjdXJyZW5jZXMKKysg ICAgICAgICAgICAgICAgZm9yIGFyZ19hcnIgaW4gc2VsZi5hcmdzLmV4dHJhX3BrZ3M6CisrICAg ICAgICAgICAgICAgICAgICBmb3IgYWRkaXRpb25hbF9wYWNrYWdlIGluIGFyZ19hcnI6CisrICAg ICAgICAgICAgICAgICAgICAgICAgbW9ja2FyZ3NfZXh0cmFfcGtncy5leHRlbmQoWyctLWFkZGl0 aW9uYWwtcGFja2FnZScsIGFkZGl0aW9uYWxfcGFja2FnZV0pCisrICAgICAgICAgICAgICAgICAg ICAgICAgbGlzdF9leHRyYV9wa2dzLmFwcGVuZChhZGRpdGlvbmFsX3BhY2thZ2UpCisrICAgICAg ICAgICAgICAgICMgaW5zdGFsbGF0aW9uIHdpbGwgcnVuIGluIHNlcGFyYXRlZCBtb2NrIHByb2Nl c3MsIHNvIGRvIG5vdCBjbGVhbiBwcmVwYXJlZCBjaHJvb3QKKysgICAgICAgICAgICAgICAgIyBi ZWZvcmUgdGhlIG1haW4gbW9jayBydW4KKysgICAgICAgICAgICAgICAgbW9ja2FyZ3NfZXh0cmFf cGtncy5leHRlbmQoWyctLW5vLWNsZWFudXAtYWZ0ZXInXSkKKysgICAgICAgICAgICAgICAgc2Vs Zi5sb2cuaW5mbygnSW5zdGFsbGluZyBleHRyYSBwYWNrYWdlcyBpbnRvIHRoZSBtb2NrIGNocm9v dDoge30nLmZvcm1hdCgKKysgICAgICAgICAgICAgICAgICAgICcsICcuam9pbihsaXN0X2V4dHJh X3BrZ3MpKSkKKysgICAgICAgICAgICAgICAgc2VsZi5jbWQubW9ja2J1aWxkKG1vY2thcmdzX2V4 dHJhX3BrZ3MsIHNlbGYuYXJncy5yb290LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaGFzaHR5cGU9c2VsZi5hcmdzLmhhc2gsCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzaGVsbD1Ob25lLCAgIyBub3NlYworKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZm9yY2VfbG9jYWxfbW9ja19jb25maWc9c2VsZi5hcmdzLmxvY2FsX21vY2tf Y29uZmlnKQorKworICAgICAgICAgICAgIHNlbGYuY21kLm1vY2tidWlsZChtb2NrYXJncywgc2Vs Zi5hcmdzLnJvb3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2h0eXBlPXNl bGYuYXJncy5oYXNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGVsbD1zZWxm LmFyZ3Muc2hlbGwsICAjIG5vc2VjCistLSAKKzIuNDMuMAorCgpkaWZmIC0tZ2l0IGEvMDAzNS1B ZGQtb3B0aW9uLXRvLW1vY2tidWlsZC11c2UtZGVmYXVsdC1yZXN1bHRkaXItb2YtbW9jLnBhdGNo IGIvMDAzNS1BZGQtb3B0aW9uLXRvLW1vY2tidWlsZC11c2UtZGVmYXVsdC1yZXN1bHRkaXItb2Yt bW9jLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmOGY0YTAKLS0t IC9kZXYvbnVsbAorKysgYi8wMDM1LUFkZC1vcHRpb24tdG8tbW9ja2J1aWxkLXVzZS1kZWZhdWx0 LXJlc3VsdGRpci1vZi1tb2MucGF0Y2gKQEAgLTAsMCArMSw2OSBAQAorRnJvbSA0NDZiODBhZDc0 Njc3MWRiZmE5Mzg0NzY1MDRlMTNjODI5ZjJlN2Y2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor RnJvbTogPT9VVEYtOD9xP1M9QzM9QTlyZ2lvPTIwTT0yRT0yMEJhc3RvPz0gPHNlcmdpb0BzZXJq dXguY29tPgorRGF0ZTogTW9uLCAzIE9jdCAyMDIyIDAxOjExOjIwICswMTAwCitTdWJqZWN0OiBb UEFUQ0ggMTcvMTddIEFkZCBvcHRpb24gdG8gbW9ja2J1aWxkIHVzZSBkZWZhdWx0IHJlc3VsdGRp ciBvZiBtb2NrCisgKHYzKQorTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4dC9w bGFpbjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAorCitN ZXJnZXM6IGh0dHBzOi8vcGFndXJlLmlvL3Jwa2cvcHVsbC1yZXF1ZXN0LzYzNworCitTaWduZWQt b2ZmLWJ5OiBTw6lyZ2lvIE0uIEJhc3RvIDxzZXJnaW9Ac2VyanV4LmNvbT4KKy0tLQorIHB5cnBr Zy9fX2luaXRfXy5weSB8IDYgKysrKy0tCisgcHlycGtnL2NsaS5weSAgICAgIHwgNyArKysrKyst CisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitk aWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9fLnB5IGIvcHlycGtnL19faW5pdF9fLnB5CitpbmRl eCBkMmQ4YzhhLi40YzU2MTY5IDEwMDY0NAorLS0tIGEvcHlycGtnL19faW5pdF9fLnB5CisrKysg Yi9weXJwa2cvX19pbml0X18ucHkKK0BAIC0zMTI3LDcgKzMxMjcsNyBAQCBjbGFzcyBDb21tYW5k cyhvYmplY3QpOgorICAgICAgICAgcmV0dXJuIHJvb3QsIGNvbmZpZ19kaXIKKyAKKyAgICAgZGVm IG1vY2tidWlsZChzZWxmLCBtb2NrYXJncz1bXSwgcm9vdD1Ob25lLCBoYXNodHlwZT1Ob25lLCBz aGVsbD1Ob25lLAorLSAgICAgICAgICAgICAgICAgIGZvcmNlX2xvY2FsX21vY2tfY29uZmlnPU5v bmUsIHNycG1fbW9jaz1GYWxzZSk6CisrICAgICAgICAgICAgICAgICAgZm9yY2VfbG9jYWxfbW9j a19jb25maWc9Tm9uZSwgc3JwbV9tb2NrPUZhbHNlLCBkZWZhdWx0X21vY2tfcmVzdWx0ZGlyPUZh bHNlKToKKyAgICAgICAgICIiIkJ1aWxkIHRoZSBwYWNrYWdlIGluIG1vY2ssIHVzaW5nIG1vY2th cmdzCisgCisgICAgICAgICBMb2cgdGhlIG91dHB1dCBhbmQgcmV0dXJucyBub3RoaW5nCitAQCAt MzE2Nyw3ICszMTY3LDkgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgIGlmIGNv bmZpZ19kaXI6CisgICAgICAgICAgICAgY21kLmV4dGVuZChbJy0tY29uZmlnZGlyJywgY29uZmln X2Rpcl0pCisgCistICAgICAgICBjbWQgKz0gWyctcicsIHJvb3QsICctLXJlc3VsdGRpcicsIHNl bGYubW9ja19yZXN1bHRzX2Rpcl0KKysgICAgICAgIGNtZCArPSBbJy1yJywgcm9vdF0KKysgICAg ICAgIGlmIGRlZmF1bHRfbW9ja19yZXN1bHRkaXIgaXMgbm90IFRydWU6CisrICAgICAgICAgICAg Y21kICs9IFsnLS1yZXN1bHRkaXInLCBzZWxmLm1vY2tfcmVzdWx0c19kaXJdCisgCisgICAgICAg ICBpZiBzaGVsbDoKKyAgICAgICAgICAgICBjbWQuYXBwZW5kKCctLXNoZWxsJykKK2RpZmYgLS1n aXQgYS9weXJwa2cvY2xpLnB5IGIvcHlycGtnL2NsaS5weQoraW5kZXggYjZhZGFhZC4uNjIxZGYz MiAxMDA2NDQKKy0tLSBhL3B5cnBrZy9jbGkucHkKKysrKyBiL3B5cnBrZy9jbGkucHkKK0BAIC0x MTU0LDYgKzExNTQsMTAgQEAgY2xhc3MgY2xpQ2xpZW50KG9iamVjdCk6CisgICAgICAgICAgICAg Jy0tdXNlLWxvY2FsLW1vY2stY29uZmlnJywgZGVmYXVsdD1Ob25lLCBkZXN0PSJsb2NhbF9tb2Nr X2NvbmZpZyIsCisgICAgICAgICAgICAgYWN0aW9uPSdzdG9yZV90cnVlJywKKyAgICAgICAgICAg ICBoZWxwPSJFbmZvcmNlIHVzZSBvZiBsb2NhbCBNb2NrIGNvbmZpZ3VyYXRpb24uIikKKysgICAg ICAgIG1vY2tidWlsZF9wYXJzZXIuYWRkX2FyZ3VtZW50KAorKyAgICAgICAgICAgICctLWRlZmF1 bHQtbW9jay1yZXN1bHRkaXInLCBkZWZhdWx0PU5vbmUsIGRlc3Q9ImRlZmF1bHRfbW9ja19yZXN1 bHRkaXIiLAorKyAgICAgICAgICAgIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCisrICAgICAgICAgICAg aGVscD0iRG9uJ3QgbW9kaWZ5IE1vY2sgcmVzdWx0ZGlyLiIpCisgICAgICAgICBtb2NrYnVpbGRf cGFyc2VyLmFkZF9hcmd1bWVudCgKKyAgICAgICAgICAgICAnLS1leHRyYS1wa2dzJywgYWN0aW9u PSdhcHBlbmQnLCBuYXJncz0nKicsCisgICAgICAgICAgICAgaGVscD0iSW5zdGFsbCBhZGRpdGlv bmFsIHBhY2thZ2VzIGludG8gY2hyb290IikKK0BAIC0yNTQ0LDcgKzI1NDgsOCBAQCBjbGFzcyBj bGlDbGllbnQob2JqZWN0KToKKyAgICAgICAgICAgICBzZWxmLmNtZC5tb2NrYnVpbGQobW9ja2Fy Z3MsIHNlbGYuYXJncy5yb290LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNo dHlwZT1zZWxmLmFyZ3MuaGFzaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hl bGw9c2VsZi5hcmdzLnNoZWxsLCAgIyBub3NlYworLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmb3JjZV9sb2NhbF9tb2NrX2NvbmZpZz1zZWxmLmFyZ3MubG9jYWxfbW9ja19jb25maWcp CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlX2xvY2FsX21vY2tfY29uZmln PXNlbGYuYXJncy5sb2NhbF9tb2NrX2NvbmZpZywKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZGVmYXVsdF9tb2NrX3Jlc3VsdGRpcj1zZWxmLmFyZ3MuZGVmYXVsdF9tb2NrX3Jlc3Vs dGRpcikKKyAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICByYWlz ZSBycGtnRXJyb3IoZSkKKyAKKy0tIAorMi40My4wCisKCmRpZmYgLS1naXQgYS9ycGtnLnNwZWMg Yi9ycGtnLnNwZWMKaW5kZXggNGNkZmZmZi4uNWYyMTNkZSAxMDA2NDQKLS0tIGEvcnBrZy5zcGVj CisrKyBiL3Jwa2cuc3BlYwpAQCAtMSw2ICsxLDYgQEAKIE5hbWU6ICAgICAgICAgICBycGtnCiBW ZXJzaW9uOiAgICAgICAgMS42NgotUmVsZWFzZTogICAgICAgIDE0JXs/ZGlzdH0KK1JlbGVhc2U6 ICAgICAgICAxNSV7P2Rpc3R9CiAKIFN1bW1hcnk6ICAgICAgICBQeXRob24gbGlicmFyeSBmb3Ig aW50ZXJhY3Rpbmcgd2l0aCBycG0rZ2l0CiBMaWNlbnNlOiAgICAgICAgR1BMdjIrIGFuZCBMR1BM djIKQEAgLTM5LDMyICszOSwzNiBAQCBQYXRjaDM6ICAgICAgICAgMDAwMy1SZW1vdmUtRW52aXJv bm1lbnQtTWFya2Vycy1zeW50YXgucGF0Y2gKICVlbmRpZgogUGF0Y2g0OiAgICAgICAgIDAwMDQt UHJvY2Vzcy1zb3VyY2UtVVJMcy13aXRoLWZyYWdtZW50LWluLXByZS1wdXNoLWhvb2sucGF0Y2gK IFBhdGNoNTogICAgICAgICAwMDA1LWNvbnRhaW5lci1idWlsZC11cGRhdGUtc2lnbmluZy1pbnRl bnQtaGVscC1mb3ItT1NCUy0ucGF0Y2gKLVBhdGNoNjogICAgICAgICAwMDA2LURvLW5vdC1nZW5l cmF0ZS1wcmUtcHVzaC1ob29rLXNjcmlwdC1pbi1zb21lLWNhc2VzLnBhdGNoCi1QYXRjaDc6ICAg ICAgICAgMDAwNy1Nb3JlLXJvYnVzdC1zcGVjLWZpbGUtcHJlc2VuY2UtY2hlY2tpbmcucGF0Y2gK LVBhdGNoODogICAgICAgICAwMDA4LVVwZGF0ZS10by1zcGVjLWZpbGUtcHJlc2VuY2UtY2hlY2tp bmcucGF0Y2gKLVBhdGNoOTogICAgICAgICAwMDA5LUFkZC1tb3JlLWluZm9ybWF0aW9uLWFib3V0 LXByZS1wdXNoLWhvb2sucGF0Y2gKLVBhdGNoMTA6ICAgICAgICAwMDEwLXByZS1wdXNoLWNoZWNr LWhhdmUtdG8tdXNlLXNwZWN0b29sLXdpdGgtZGVmaW5lLnBhdGNoCi1QYXRjaDExOiAgICAgICAg MDAxMS1BLUhFQUQtcXVlcnktaW50by1hLWxvb2thc2lkZS1jYWNoZS5wYXRjaAotUGF0Y2gxMjog ICAgICAgIDAwMTItcHJlLXB1c2gtaG9vay1zY3JpcHQtY29udGFpbnMtYS11c2VyLXMtY29uZmln LnBhdGNoCi1QYXRjaDEzOiAgICAgICAgMDAxMy1GaXgtdW5pdHRlc3RzLWZvci1jbG9uZS1hbmQt cHJlLXB1c2gtaG9vay1zY3JpcHQucGF0Y2gKLVBhdGNoMTQ6ICAgICAgICAwMDE0LWltcG9ydF9z cnBtLWFsbG93LXByZS1nZW5lcmF0ZWQtc3JwbXMucGF0Y2gKLVBhdGNoMTU6ICAgICAgICAwMDE1 LUlnbm9yZS1taXNzaW5nLXNwZWMtZmlsZS1pbi1wcmUtcHVzaC1ob29rLnBhdGNoCi1QYXRjaDE2 OiAgICAgICAgMDAxNi1DaGVjay1yZW1vdGUtZmlsZS13aXRoLWNvcnJlY3QtaGFzaC5wYXRjaAot UGF0Y2gxNzogICAgICAgIDAwMTctQWxsb3ctZW1wdHktY29tbWl0cy13aGVuLXVzZXNfcnBtYXV0 b3NwZWMucGF0Y2gKLVBhdGNoMTg6ICAgICAgICAwMDE4LUNvbmZpZy1maWxlLW9wdGlvbi10by1z a2lwLXRoZS1ob29rLXNjcmlwdC1jcmVhdGlvbi5wYXRjaAotUGF0Y2gxOTogICAgICAgIDAwMTkt UHJlLXB1c2gtaG9vay13b24tdC1jaGVjay1wcml2YXRlLWJyYW5jaGVzLnBhdGNoCi1QYXRjaDIw OiAgICAgICAgMDAyMC1Vc2UtcmVsZWFzZS1zLXJwbWRlZmluZXMtaW4tdW51c2VkLXNvdXJjZXMt Y2hlY2sucGF0Y2gKLVBhdGNoMjE6ICAgICAgICAwMDIxLURvLW5vdC1yZXF1aXJlLXNvdXJjZXMt ZmlsZS1mb3ItYWxsLW5hbWVzcGFjZXMucGF0Y2gKLVBhdGNoMjI6ICAgICAgICAwMDIyLWNvbW1p dC1jb21tYW5kLWZhaWxzLW9uLWNvbnRhaW5lcnMtbmFtZXNwYWNlLnBhdGNoCi1QYXRjaDIzOiAg ICAgICAgMDAyMy1TcGxpdC1naXQtY3JlZGVudGlhbC1kYXRhLW9uLWZpcnN0LW9ubHkucGF0Y2gK LVBhdGNoMjQ6ICAgICAgICAwMDI0LVN1cHBvcnQtZm9yLWNoZWNraW5nLWV4cGxvZGVkLXNvdXJj ZXMtYmVmb3JlLXB1c2gucGF0Y2gKLVBhdGNoMjU6ICAgICAgICAwMDI1LUZpeC1mbGFrZTgtY29t cGxhaW50cy5wYXRjaAotUGF0Y2gyNjogICAgICAgIDAwMjYtUHJlcGFyZS10aGUtbG9va2FzaWRl LWNhY2hlLWNvZGUtZm9yLXJldHJpZXMucGF0Y2gKLVBhdGNoMjc6ICAgICAgICAwMDI3LUxvb2th c2lkZS1jYWNoZS1vcGVyYXRpb25zLXJldHJpZXMucGF0Y2gKLVBhdGNoMjg6ICAgICAgICAwMDI4 LU1ha2UtbG9va2FzaWRlLWNhY2hlLXJldHJpZXMtY29uZmlndXJhYmxlLnBhdGNoCi1QYXRjaDI5 OiAgICAgICAgMDAyOS1wa2ctaW1wb3J0LURvbi10LWRlbGV0ZS1jaGFuZ2Vsb2ctZ2VuZXJhdGVk LWJ5LXJwbWF1LnBhdGNoCi1QYXRjaDMwOiAgICAgICAgMDAzMC1wa2ctaW1wb3J0LVVuZG8tcnBt YXV0b3NwZWMtcHJvY2Vzc2luZy5wYXRjaAotUGF0Y2gzMTogICAgICAgIDAwMzEtVW5pdHRlc3Rz LWZvci1VbmRvLXJwbWF1dG9zcGVjLXByb2Nlc3NpbmcucGF0Y2gKK1BhdGNoNjogICAgICAgICAw MDMzLVVwZGF0ZS1kb2NrZXItaW1hZ2UtZm9yLUplbmtpbmtzLXRlc3RzLnBhdGNoCitQYXRjaDc6 ICAgICAgICAgMDAwNi1Eby1ub3QtZ2VuZXJhdGUtcHJlLXB1c2gtaG9vay1zY3JpcHQtaW4tc29t ZS1jYXNlcy5wYXRjaAorUGF0Y2g4OiAgICAgICAgIDAwMDctTW9yZS1yb2J1c3Qtc3BlYy1maWxl LXByZXNlbmNlLWNoZWNraW5nLnBhdGNoCitQYXRjaDk6ICAgICAgICAgMDAwOC1VcGRhdGUtdG8t c3BlYy1maWxlLXByZXNlbmNlLWNoZWNraW5nLnBhdGNoCitQYXRjaDEwOiAgICAgICAgMDAwOS1B ZGQtbW9yZS1pbmZvcm1hdGlvbi1hYm91dC1wcmUtcHVzaC1ob29rLnBhdGNoCitQYXRjaDExOiAg ICAgICAgMDAxMC1wcmUtcHVzaC1jaGVjay1oYXZlLXRvLXVzZS1zcGVjdG9vbC13aXRoLWRlZmlu ZS5wYXRjaAorUGF0Y2gxMjogICAgICAgIDAwMTEtQS1IRUFELXF1ZXJ5LWludG8tYS1sb29rYXNp ZGUtY2FjaGUucGF0Y2gKK1BhdGNoMTM6ICAgICAgICAwMDEyLXByZS1wdXNoLWhvb2stc2NyaXB0 LWNvbnRhaW5zLWEtdXNlci1zLWNvbmZpZy5wYXRjaAorUGF0Y2gxNDogICAgICAgIDAwMTMtRml4 LXVuaXR0ZXN0cy1mb3ItY2xvbmUtYW5kLXByZS1wdXNoLWhvb2stc2NyaXB0LnBhdGNoCitQYXRj aDE1OiAgICAgICAgMDAxNC1pbXBvcnRfc3JwbS1hbGxvdy1wcmUtZ2VuZXJhdGVkLXNycG1zLnBh dGNoCitQYXRjaDE2OiAgICAgICAgMDAxNS1JZ25vcmUtbWlzc2luZy1zcGVjLWZpbGUtaW4tcHJl LXB1c2gtaG9vay5wYXRjaAorUGF0Y2gxNzogICAgICAgIDAwMTYtQ2hlY2stcmVtb3RlLWZpbGUt d2l0aC1jb3JyZWN0LWhhc2gucGF0Y2gKK1BhdGNoMTg6ICAgICAgICAwMDE3LUFsbG93LWVtcHR5 LWNvbW1pdHMtd2hlbi11c2VzX3JwbWF1dG9zcGVjLnBhdGNoCitQYXRjaDE5OiAgICAgICAgMDAx OC1Db25maWctZmlsZS1vcHRpb24tdG8tc2tpcC10aGUtaG9vay1zY3JpcHQtY3JlYXRpb24ucGF0 Y2gKK1BhdGNoMjA6ICAgICAgICAwMDE5LVByZS1wdXNoLWhvb2std29uLXQtY2hlY2stcHJpdmF0 ZS1icmFuY2hlcy5wYXRjaAorUGF0Y2gyMTogICAgICAgIDAwMjAtVXNlLXJlbGVhc2Utcy1ycG1k ZWZpbmVzLWluLXVudXNlZC1zb3VyY2VzLWNoZWNrLnBhdGNoCitQYXRjaDIyOiAgICAgICAgMDAy MS1Eby1ub3QtcmVxdWlyZS1zb3VyY2VzLWZpbGUtZm9yLWFsbC1uYW1lc3BhY2VzLnBhdGNoCitQ YXRjaDIzOiAgICAgICAgMDAyMi1jb3ByLWJ1aWxkLXBhc3Nlcy1leHRyYV9hcmdzLXRvLWNvcHIt Y2xpLWNvbW1hbmQucGF0Y2gKK1BhdGNoMjQ6ICAgICAgICAwMDIzLWNvbW1pdC1jb21tYW5kLWZh aWxzLW9uLWNvbnRhaW5lcnMtbmFtZXNwYWNlLnBhdGNoCitQYXRjaDI1OiAgICAgICAgMDAyNC1T cGxpdC1naXQtY3JlZGVudGlhbC1kYXRhLW9uLWZpcnN0LW9ubHkucGF0Y2gKK1BhdGNoMjY6ICAg ICAgICAwMDI1LVN1cHBvcnQtZm9yLWNoZWNraW5nLWV4cGxvZGVkLXNvdXJjZXMtYmVmb3JlLXB1 c2gucGF0Y2gKK1BhdGNoMjc6ICAgICAgICAwMDI2LUZpeC1mbGFrZTgtY29tcGxhaW50cy5wYXRj aAorUGF0Y2gyODogICAgICAgIDAwMjctUHJlcGFyZS10aGUtbG9va2FzaWRlLWNhY2hlLWNvZGUt Zm9yLXJldHJpZXMucGF0Y2gKK1BhdGNoMjk6ICAgICAgICAwMDI4LUxvb2thc2lkZS1jYWNoZS1v cGVyYXRpb25zLXJldHJpZXMucGF0Y2gKK1BhdGNoMzA6ICAgICAgICAwMDI5LU1ha2UtbG9va2Fz aWRlLWNhY2hlLXJldHJpZXMtY29uZmlndXJhYmxlLnBhdGNoCitQYXRjaDMxOiAgICAgICAgMDAz MC1wa2ctaW1wb3J0LURvbi10LWRlbGV0ZS1jaGFuZ2Vsb2ctZ2VuZXJhdGVkLWJ5LXJwbWF1LnBh dGNoCitQYXRjaDMyOiAgICAgICAgMDAzMS1wa2ctaW1wb3J0LVVuZG8tcnBtYXV0b3NwZWMtcHJv Y2Vzc2luZy5wYXRjaAorUGF0Y2gzMzogICAgICAgIDAwMzItVW5pdHRlc3RzLWZvci1VbmRvLXJw bWF1dG9zcGVjLXByb2Nlc3NpbmcucGF0Y2gKK1BhdGNoMzQ6ICAgICAgICAwMDM0LW1vY2tidWls ZC1uZXctYXJndW1lbnQtZXh0cmEtcGtncy5wYXRjaAorUGF0Y2gzNTogICAgICAgIDAwMzUtQWRk LW9wdGlvbi10by1tb2NrYnVpbGQtdXNlLWRlZmF1bHQtcmVzdWx0ZGlyLW9mLW1vYy5wYXRjaAog CiAlZGVzY3JpcHRpb24KIFB5dGhvbiBsaWJyYXJ5IGZvciBpbnRlcmFjdGluZyB3aXRoIHJwbStn aXQKQEAgLTI4MSw2ICsyODUsMTEgQEAgZXhhbXBsZV9jbGlfZGlyPSRSUE1fQlVJTERfUk9PVCV7 X2RhdGFkaXJ9LyV7bmFtZX0vZXhhbXBsZXMvY2xpCiAKIAogJWNoYW5nZWxvZworKiBXZWQgSmFu IDEwIDIwMjQgT25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+IC0gMS42Ni0xNQorLSBQ YXRjaDogQWRkIG9wdGlvbiB0byBtb2NrYnVpbGQgdXNlIGRlZmF1bHQgcmVzdWx0ZGlyIG9mIG1v Y2sgKHYzKQorLSBQYXRjaDogbW9ja2J1aWxkYDogbmV3IGFyZ3VtZW50IC0tZXh0cmEtcGtncwor LSBQYXRjaDogYGNvcHItYnVpbGRgIHBhc3NlcyBleHRyYV9hcmdzIHRvIGNvcHItY2xpIGNvbW1h bmQKKwogKiBNb24gRGVjIDExIDIwMjMgTWlybyBIcm9uxI1vayA8bWhyb25jb2tAcmVkaGF0LmNv bT4gLSAxLjY2LTE0CiAtIEFjdHVhbGx5IGFkZCB0aGUgcGF0Y2hlczoKIC0gUGF0Y2g6ICpwa2cg aW1wb3J0OiBEb24ndCBkZWxldGUgY2hhbmdlbG9nIGdlbmVyYXRlZCBieSBgcnBtYXV0b3NwZWMg Y29udmVydGAK