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: Ondrej Nosek To: git-commits@fedoraproject.org Subject: [rpms/rpkg] 1.70-1: New release 1.57 Date: Mon, 10 Aug 2026 21:43:58 GMT Message-ID: <178639823875.1.15708858399402735971.rpms-rpkg-8cb4ccb05c60@fedoraproject.org> List-ID: X-Git-Repo: rpms/rpkg X-Git-Branch: 1.70-1 X-Git-Rev: 8cb4ccb05c6089a2956e78bac7243ea4c7f5e0bf ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvcnBrZwogICAgICAgICAgICBCcmFuY2ggOiAxLjcwLTEKICAgICAgICAgICAg Q29tbWl0IDogOGNiNGNjYjA1YzYwODlhMjk1NmU3OGJhYzcyNDNlYTRjN2Y1ZTBiZgogICAgICAg ICAgICBBdXRob3IgOiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgogICAgICAgICAg ICBEYXRlICAgOiAyMDE5LTAxLTA0VDA5OjMxOjE0KzAxOjAwCiAgICAgICAgICAgIFN0YXRzICA6 ICs1NC8tMTEzMiBpbiAzIGZpbGUocykKICAgICAgICAgICAgVVJMICAgIDogaHR0cHM6Ly9zcmMu ZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9ycGtnL2MvOGNiNGNjYjA1YzYwODlhMjk1NmU3OGJhYzcy NDNlYTRjN2Y1ZTBiZj9icmFuY2g9MS43MC0xCgogICAgICAgICAgICBMb2c6CiAgICAgICAgICAg IE5ldyByZWxlYXNlIDEuNTcKClNpZ25lZC1vZmYtYnk6IE9uZHJlaiBOb3NlayA8b25vc2VrQHJl ZGhhdC5jb20+CgotLS0KZGlmZiAtLWdpdCBhL2FkZC1mbGF0cGFrLWJ1aWxkLnBhdGNoIGIvYWRk LWZsYXRwYWstYnVpbGQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ5YWE4 YWYuLjAwMDAwMDAKLS0tIGEvYWRkLWZsYXRwYWstYnVpbGQucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwxMTEwICswLDAgQEAKLWRpZmYgLS1naXQgYS9ldGMvYmFzaF9jb21wbGV0aW9uLmQvcnBr Zy5iYXNoIGIvZXRjL2Jhc2hfY29tcGxldGlvbi5kL3Jwa2cuYmFzaAotaW5kZXggOWRkOGRlMy4u YzU2NGFmYyAxMDA2NDQKLS0tLSBhL2V0Yy9iYXNoX2NvbXBsZXRpb24uZC9ycGtnLmJhc2gKLSsr KyBiL2V0Yy9iYXNoX2NvbXBsZXRpb24uZC9ycGtnLmJhc2gKLUBAIC0zNCw4ICszNCw4IEBAIF9y cGtnKCkKLSAKLSAgICAgbG9jYWwgb3B0aW9ucz0iLS1oZWxwIC12IC1xIgotICAgICBsb2NhbCBv cHRpb25zX3ZhbHVlPSItLWRpc3QgLS1yZWxlYXNlIC0tdXNlciAtLXBhdGgiCi0tICAgIGxvY2Fs IGNvbW1hbmRzPSJidWlsZCBjaGFpbi1idWlsZCBjaSBjbGVhbiBjbG9nIGNsb25lIGNvIGNvbnRh aW5lci1idWlsZCBjb250YWluZXItYnVpbGQtY29uZmlnIGNvbW1pdCBjb21waWxlIGNvcHItYnVp bGQgZGlmZiBnaW1tZXNwZWMgZ2l0dXJsIGhlbHAgXAotLSAgICBnaXRidWlsZGhhc2ggaW1wb3J0 IGluc3RhbGwgbGludCBsb2NhbCBtb2NrYnVpbGQgbW9jay1jb25maWcgbmV3IG5ldy1zb3VyY2Vz IHBhdGNoIHByZXAgcHVsbCBwdXNoIHNjcmF0Y2gtYnVpbGQgc291cmNlcyBcCi0rICAgIGxvY2Fs IGNvbW1hbmRzPSJidWlsZCBjaGFpbi1idWlsZCBjaSBjbGVhbiBjbG9nIGNsb25lIGNvIGNvbnRh aW5lci1idWlsZCBjb250YWluZXItYnVpbGQtY29uZmlnIGNvbW1pdCBjb21waWxlIGNvcHItYnVp bGQgZGlmZiBmbGF0cGFrLWJ1aWxkIFwKLSsgICAgZ2ltbWVzcGVjIGdpdHVybCBoZWxwIGdpdGJ1 aWxkaGFzaCBpbXBvcnQgaW5zdGFsbCBsaW50IGxvY2FsIG1vY2tidWlsZCBtb2NrLWNvbmZpZyBu ZXcgbmV3LXNvdXJjZXMgcGF0Y2ggcHJlcCBwdWxsIHB1c2ggc2NyYXRjaC1idWlsZCBzb3VyY2Vz IFwKLSAgICAgc3JwbSBzd2l0Y2gtYnJhbmNoIHRhZyB1bnVzZWQtcGF0Y2hlcyB1cGxvYWQgdmVy aWZ5LWZpbGVzIHZlcnJlbCIKLSAKLSAgICAgIyBwYXJzZSBtYWluIG9wdGlvbnMgYW5kIGdldCBj b21tYW5kCi1AQCAtMTUyLDYgKzE1MiwxMiBAQCBfcnBrZygpCi0gICAgICAgICAgICAgYWZ0ZXI9 ImZpbGUiCi0gICAgICAgICAgICAgYWZ0ZXJfbW9yZT10cnVlCi0gICAgICAgICAgICAgOzsKLSsg ICAgICAgIGZsYXRwYWstYnVpbGQpCi0rICAgICAgICAgICAgb3B0aW9ucz0iLS1zY3JhdGNoIC0t bm93YWl0IgotKyAgICAgICAgICAgIG9wdGlvbnNfdGFyZ2V0PSItLXRhcmdldCIKLSsgICAgICAg ICAgICBvcHRpb25zX3N0cmluZz0iLS1yZXBvLXVybCIKLSsgICAgICAgICAgICBvcHRpb25zX2Fy Y2hlcz0iLS1hcmNoZXMiCi0rICAgICAgICAgICAgOzsKLSAgICAgICAgIGltcG9ydCkKLSAgICAg ICAgICAgICBvcHRpb25zPSItLWNyZWF0ZSIKLSAgICAgICAgICAgICBvcHRpb25zX2JyYW5jaD0i LS1icmFuY2giCi1kaWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9fLnB5IGIvcHlycGtnL19faW5p dF9fLnB5Ci1pbmRleCA2OTZjOWMzLi5hYTIzY2JkIDEwMDY0NAotLS0tIGEvcHlycGtnL19faW5p dF9fLnB5Ci0rKysgYi9weXJwa2cvX19pbml0X18ucHkKLUBAIC0zOSw2ICszOSw3IEBAIGZyb20g c2l4Lm1vdmVzIGltcG9ydCBjb25maWdwYXJzZXIKLSBmcm9tIHNpeC5tb3ZlcyBpbXBvcnQgdXJs bGliCi0gZnJvbSBzaXgubW92ZXMudXJsbGliLnBhcnNlIGltcG9ydCB1cmxqb2luCi0gaW1wb3J0 IHJlcXVlc3RzCi0raW1wb3J0IHlhbWwKLSAKLSBmcm9tIHB5cnBrZy5lcnJvcnMgaW1wb3J0IEhh c2h0eXBlTWl4aW5nRXJyb3IsIHJwa2dFcnJvciwgcnBrZ0F1dGhFcnJvciwgXAotICAgICBVbmtu b3duVGFyZ2V0RXJyb3IKLUBAIC00Nyw2ICs0OCwxMyBAQCBmcm9tIHB5cnBrZy5sb29rYXNpZGUg aW1wb3J0IENHSUxvb2thc2lkZUNhY2hlCi0gZnJvbSBweXJwa2cuc291cmNlcyBpbXBvcnQgU291 cmNlc0ZpbGUKLSBmcm9tIHB5cnBrZy51dGlscyBpbXBvcnQgY2FjaGVkX3Byb3BlcnR5LCBsb2df cmVzdWx0LCBmaW5kX21lCi0gCi0rUFkyNiA9IHN5cy52ZXJzaW9uX2luZm8gPCAoMiwgNywgMCkK LSsKLStpZiBub3QgUFkyNjoKLSsgICAgaW1wb3J0IGdpCi0rICAgIGdpLnJlcXVpcmVfdmVyc2lv bignTW9kdWxlbWQnLCAnMS4wJykgICMgcmFpc2VzIFZhbHVlRXJyb3IKLSsgICAgZnJvbSBnaS5y ZXBvc2l0b3J5IGltcG9ydCBNb2R1bGVtZCAgIyBub3FhCi0rCi0gCi0gY2xhc3MgTnVsbEhhbmRs ZXIobG9nZ2luZy5IYW5kbGVyKToKLSAgICAgIiIiTnVsbCBsb2dnZXIgdG8gYXZvaWQgc3B1cmlv dXMgbWVzc2FnZXMsIGFkZCBhIGhhbmRsZXIgaW4gYXBwIGNvZGUiIiIKLUBAIC0xNTYsNiArMTY0 LDggQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgIHNlbGYuX3RhcmdldCA9IHRh cmdldAotICAgICAgICAgIyBUaGUgYnVpbGQgdGFyZ2V0IGZvciBjb250YWluZXJzIHdpdGhpbiB0 aGUgYnVpbGRzeXN0ZW0KLSAgICAgICAgIHNlbGYuX2NvbnRhaW5lcl9idWlsZF90YXJnZXQgPSB0 YXJnZXQKLSsgICAgICAgICMgVGhlIGJ1aWxkIHRhcmdldCBmb3IgZmxhdHBha3Mgd2l0aGluIHRo ZSBidWlsZHN5c3RlbQotKyAgICAgICAgc2VsZi5fZmxhdHBha19idWlsZF90YXJnZXQgPSB0YXJn ZXQKLSAgICAgICAgICMgVGhlIHRvcCB1cmwgdG8gb3VyIGJ1aWxkIHNlcnZlcgotICAgICAgICAg c2VsZi5fdG9wdXJsID0gTm9uZQotICAgICAgICAgIyBUaGUgdXNlciB0byB1c2Ugb3IgZGlzY292 ZXIKLUBAIC0xOTEsNiArMjAxLDggQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAg IHNlbGYubG9va2FzaWRlX25hbWVzcGFjZWQgPSBsb29rYXNpZGVfbmFtZXNwYWNlZAotICAgICAg ICAgIyBEZXByZWNhdGVzIHNlbGYubW9kdWxlX25hbWUKLSAgICAgICAgIHNlbGYuX3JlcG9fbmFt ZSA9IE5vbmUKLSsgICAgICAgICMgQVBJIFVSTCBmb3IgdGhlIG1vZHVsZSBidWlsZCBzZXJ2ZXIK LSsgICAgICAgIHNlbGYubW9kdWxlX2FwaV91cmwgPSBOb25lCi0gCi0gICAgICMgRGVmaW5lIHBy b3BlcnRpZXMgaGVyZQotICAgICAjIFByb3BlcnRpZXMgYWxsb3cgdXMgdG8gImxhenkgbG9hZCIg dmFyaW91cyBhdHRyaWJ1dGVzLCB3aGljaCBhbHNvIG1lYW5zCi1AQCAtODg3LDYgKzg5OSw5OSBA QCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAgICAgICAgIiIiVGhpcyBjcmVhdGVzIGEgdGFy Z2V0IGJhc2VkIG9uIGdpdCBicmFuY2ggYW5kIG5hbWVzcGFjZS4iIiIKLSAgICAgICAgIHNlbGYu X2NvbnRhaW5lcl9idWlsZF90YXJnZXQgPSAnJXMtJXMtY2FuZGlkYXRlJyAlIChzZWxmLmJyYW5j aF9tZXJnZSwgc2VsZi5ucykKLSAKLSsgICAgQHByb3BlcnR5Ci0rICAgIGRlZiBmbGF0cGFrX2J1 aWxkX3RhcmdldChzZWxmKToKLSsgICAgICAgICIiIlRoaXMgcHJvcGVydHkgZW5zdXJlcyB0aGUg dGFyZ2V0IGZvciBjb250YWluZXIgYnVpbGRzLiIiIgotKyAgICAgICAgaWYgbm90IHNlbGYuX2Zs YXRwYWtfYnVpbGRfdGFyZ2V0OgotKyAgICAgICAgICAgIHNlbGYubG9hZF9mbGF0cGFrX2J1aWxk X3RhcmdldCgpCi0rICAgICAgICByZXR1cm4gc2VsZi5fZmxhdHBha19idWlsZF90YXJnZXQKLSsK LSsgICAgZGVmIF9maW5kX3BsYXRmb3JtX3N0cmVhbShzZWxmLCBuYW1lLCBzdHJlYW0sIHZlcnNp b249Tm9uZSk6Ci0rICAgICAgICAiIiJSZWN1cnNpdmVseSBzZWFyY2ggZm9yIHRoZSBwbGF0Zm9y bSBtb2R1bGUgaW4gZGVwZW5kZW5jaWVzIHRvIGZpbmQgaXRzIHN0cmVhbS4KLSsKLSsgICAgICAg IFRoZSBzdHJlYW0gb2YgdGhlICdwbGF0Zm9ybScgcHNldWRvLW1vZHVsZSBkZXRlcm1pbmVzIHdo YXQgYmFzZSBwYWNrYWdlIHNldAotKyAgICAgICAgd2UgbmVlZCBmb3IgdGhlIHJ1bnRpbWUgLSBh bmQgdGh1cyB3aGF0IGJ1aWxkIHRhcmdldCB3ZSBuZWVkLgotKyAgICAgICAgIiIiCi0rCi0rICAg ICAgICBpZiB2ZXJzaW9uIGlzIG5vdCBOb25lOgotKyAgICAgICAgICAgIG5zdmMgPSBuYW1lICsg JzonICsgc3RyZWFtICsgJzonICsgdmVyc2lvbgotKyAgICAgICAgZWxzZToKLSsgICAgICAgICAg ICBuc3ZjID0gbmFtZSArICc6JyArIHN0cmVhbQotKwotKyAgICAgICAgYnVpbGQgPSBzZWxmLm1v ZHVsZV9nZXRfbGF0ZXN0X2J1aWxkKG5zdmMpCi0rCi0rICAgICAgICBpZiBidWlsZCBpcyBOb25l OgotKyAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcigiQ2Fubm90IGZpbmQgYW55IGJ1aWxkcyBm b3IgbW9kdWxlICVzOiVzIiAlCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuYW1lLCBz dHJlYW0pKQotKwotKyAgICAgICAgbW1kX3N0ciA9IGJ1aWxkWydtb2R1bGVtZCddCi0rCi0rICAg ICAgICBvYmplY3RzID0gTW9kdWxlbWQub2JqZWN0c19mcm9tX3N0cmluZyhtbWRfc3RyKQotKyAg ICAgICAgbW9kdWxlcyA9IFtvIGZvciBvIGluIG9iamVjdHMgaWYgaXNpbnN0YW5jZShvLCAgTW9k dWxlbWQuTW9kdWxlKV0KLSsgICAgICAgIGlmIGxlbihtb2R1bGVzKSAhPSAxOgotKyAgICAgICAg ICAgIHJhaXNlIHJwa2dFcnJvcigiRmFpbGVkIHRvIGxvYWQgbW9kdWxlbWQgZm9yICVzIiAlIG5z dmMpCi0rCi0rICAgICAgICAjIFN0cmVhbXMgc2hvdWxkIGFscmVhZHkgYmUgZXhwYW5kZWQgaW4g dGhlIG1vZHVsZW1kJ3MgdGhhdCB3ZSByZXRyaWV2ZQotKyAgICAgICAgIyBmcm9tIE1CUyAtIG1v ZHVsZXMgd2VyZSBidWlsdCBhZ2FpbnN0IGEgcGFydGljdWxhciBkZXBlbmRlbmN5LgotKyAgICAg ICAgZGVmIGdldF9zdHJlYW0ocmVxLCByZXFfc3RyZWFtKToKLSsgICAgICAgICAgICByZXFfc3Ry ZWFtX2xpc3QgPSByZXFfc3RyZWFtLmdldCgpCi0rICAgICAgICAgICAgaWYgbGVuKHJlcV9zdHJl YW1fbGlzdCkgIT0gMToKLSsgICAgICAgICAgICAgICAgcmFpc2UgcnBrZ0Vycm9yKCIlczogc3Ry ZWFtIGxpc3QgZm9yICclcycgaXMgbm90IGV4cGFuZGVkICglcykiICUKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIChuc3ZjLCByZXEsIHJlcV9zdHJlYW1fbGlzdCkpCi0rICAgICAg ICAgICAgcmV0dXJuIHJlcV9zdHJlYW1fbGlzdFswXQotKwotKyAgICAgICAgIyBXZSBmaXJzdCBs b29rIGZvciAncGxhdGZvcm0nIGFzIGEgZGlyZWN0IGRlcGVuZGVuY3kgb2YgdGhpcyBtb2R1bGUs Ci0rICAgICAgICAjIGJlZm9yZSByZWN1cnNpbmcgaW50byB0aGUgZGVwZW5kZW5jaWVzCi0rICAg ICAgICBmb3IgZGVwIGluIG1vZHVsZXNbMF0ucGVla19kZXBlbmRlbmNpZXMoKToKLSsgICAgICAg ICAgICBmb3IgcmVxLCByZXFfc3RyZWFtIGluIGRlcC5wZWVrX3JlcXVpcmVzKCkuaXRlbXMoKToK LSsgICAgICAgICAgICAgICAgaWYgcmVxID09ICdwbGF0Zm9ybSc6Ci0rICAgICAgICAgICAgICAg ICAgICByZXR1cm4gZ2V0X3N0cmVhbShyZXEsIHJlcV9zdHJlYW0pCi0rCi0rICAgICAgICAjIE5v dyByZWN1cnNlIGludG8gdGhlIGRlcGVuZGVuY2llcwotKyAgICAgICAgZm9yIGRlcCBpbiBtb2R1 bGVzWzBdLnBlZWtfZGVwZW5kZW5jaWVzKCk6Ci0rICAgICAgICAgICAgZm9yIHJlcSwgcmVxX3N0 cmVhbSBpbiBkZXAucGVla19yZXF1aXJlcygpLml0ZW1zKCk6Ci0rICAgICAgICAgICAgICAgIHBs YXRmb3JtX3N0cmVhbSA9IHNlbGYuX2ZpbmRfcGxhdGZvcm1fc3RyZWFtKHJlcSwKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0 X3N0cmVhbShyZXEsIHJlcV9zdHJlYW0pKQotKyAgICAgICAgICAgICAgICBpZiBwbGF0Zm9ybV9z dHJlYW06Ci0rICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGxhdGZvcm1fc3RyZWFtCi0rCi0r ICAgICAgICByZXR1cm4gTm9uZQotKwotKyAgICBkZWYgbG9hZF9mbGF0cGFrX2J1aWxkX3Rhcmdl dChzZWxmKToKLSsgICAgICAgICIiIlRoaXMgbG9jYXRlcyBhIHRhcmdldCBhcHByb3ByaWF0ZSBm b3IgdGhlIHJ1bnRpbWUgdGhhdCB0aGUgRmxhdHBhayB0YXJnZXRzLiIiIgotKwotKyAgICAgICAg IyBGaW5kIHRoZSBtb2R1bGUgd2UgYXJlIGdvaW5nIHRvIGJ1aWxkIGZyb20gY29udGFpbmVyLnlh bWwKLSsgICAgICAgIHlhbWxfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLnBhdGgsICJjb250YWlu ZXIueWFtbCIpCi0rICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoeWFtbF9wYXRoKToKLSsg ICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoIkNhbm5vdCBmaW5kICdjb250YWluZXIueWFtbCcg dG8gZGV0ZXJtaW5lIGJ1aWxkIHRhcmdldC4iKQotKwotKyAgICAgICAgd2l0aCBvcGVuKHlhbWxf cGF0aCkgYXMgZjoKLSsgICAgICAgICAgICBjb250YWluZXJfeWFtbCA9IHlhbWwuc2FmZV9sb2Fk KGYpCi0rCi0rICAgICAgICBjb21wb3NlID0gY29udGFpbmVyX3lhbWwuZ2V0KCdjb21wb3NlJywg e30pCi0rICAgICAgICBtb2R1bGVzID0gY29tcG9zZS5nZXQoJ21vZHVsZXMnLCBbXSkKLSsgICAg ICAgIGlmIG5vdCBtb2R1bGVzOgotKyAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcigiTm8gbW9k dWxlcyBsaXN0ZWQgaW4gJ2NvbnRhaW5lci55YW1sJyIpCi0rICAgICAgICBpZiBsZW4obW9kdWxl cykgPiAxOgotKyAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcigiTXVsdGlwbGUgbW9kdWxlcyBs aXN0ZWQgaW4gJ2NvbnRhaW5lci55YW1sJyIpCi0rICAgICAgICBtb2R1bGUgPSBtb2R1bGVzWzBd Ci0rCi0rICAgICAgICBwYXJ0cyA9IG1vZHVsZS5zcGxpdCgnOicpCi0rICAgICAgICBpZiBsZW4o cGFydHMpID09IDI6Ci0rICAgICAgICAgICAgbmFtZSwgc3RyZWFtID0gcGFydHMKLSsgICAgICAg ICAgICB2ZXJzaW9uID0gTm9uZQotKyAgICAgICAgZWxpZiBsZW4ocGFydHMpID09IDM6Ci0rICAg ICAgICAgICAgbmFtZSwgc3RyZWFtLCB2ZXJzaW9uID0gcGFydHMKLSsgICAgICAgIGVsc2U6Ci0r ICAgICAgICAgICAgcmFpc2UgcnBrZ0Vycm9yKCJNb2R1bGUgaW4gY29udGFpbmVyLnlhbWwgc2hv dWxkIGJlIE5BTUU6U1RSRUFNWzpWRVJTSU9OXSIpCi0rCi0rICAgICAgICBwbGF0Zm9ybV9zdHJl YW0gPSBzZWxmLl9maW5kX3BsYXRmb3JtX3N0cmVhbShuYW1lLCBzdHJlYW0sIHZlcnNpb249dmVy c2lvbikKLSsgICAgICAgIGlmIHBsYXRmb3JtX3N0cmVhbSBpcyBOb25lOgotKyAgICAgICAgICAg IHJhaXNlIHJwa2dFcnJvcigiVW5hYmxlIHRvIGZpbmQgJ3BsYXRmb3JtJyBtb2R1bGUgaW4gdGhl IGRlcGVuZGVuY2llcyBvZiAnJXMnOyAiCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICJj YW4ndCBkZXRlcm1pbmUgdGFyZ2V0IiAlIG1vZHVsZSkKLSsKLSsgICAgICAgIHNlbGYuX2ZsYXRw YWtfYnVpbGRfdGFyZ2V0ID0gJyVzLWZsYXRwYWstY2FuZGlkYXRlJyAlIHBsYXRmb3JtX3N0cmVh bQotKwotICAgICBAcHJvcGVydHkKLSAgICAgZGVmIHRvcHVybChzZWxmKToKLSAgICAgICAgICIi IlRoaXMgcHJvcGVydHkgZW5zdXJlcyB0aGUgdG9wdXJsIGF0dHJpYnV0ZSIiIgotQEAgLTI4MjQs MTAgKzI5MjksMTQgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGtvamljb25maWc9Tm9uZSwga29qaXByb2ZpbGU9Tm9uZSwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGJ1aWxkX2NsaWVudD1Ob25lLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAga29qaV90YXNrX3dhdGNoZXI9Tm9uZSwKLS0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG5vd2FpdD1GYWxzZSk6Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBub3dhaXQ9RmFsc2UsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGF0cGFrPUZh bHNlKToKLSsKLSAgICAgICAgICMgY2hlY2sgaWYgcmVwbyBpcyBkaXJ0eSBhbmQgYWxsIGNvbW1p dHMgYXJlIHB1c2hlZAotICAgICAgICAgc2VsZi5jaGVja19yZXBvKCkKLS0gICAgICAgIGNvbnRh aW5lcl90YXJnZXQgPSBzZWxmLnRhcmdldCBpZiB0YXJnZXRfb3ZlcnJpZGUgZWxzZSBzZWxmLmNv bnRhaW5lcl9idWlsZF90YXJnZXQKLSsgICAgICAgIGNvbnRhaW5lcl90YXJnZXQgPSBzZWxmLnRh cmdldCBpZiB0YXJnZXRfb3ZlcnJpZGUgXAotKyAgICAgICAgICAgIGVsc2Ugc2VsZi5mbGF0cGFr X2J1aWxkX3RhcmdldCBpZiBmbGF0cGFrIFwKLSsgICAgICAgICAgICBlbHNlIHNlbGYuY29udGFp bmVyX2J1aWxkX3RhcmdldAotIAotICAgICAgICAgIyBUaGlzIGlzIGZvciBiYWNrd2FyZC1jb21w YXRpYmlsaXR5IG9mIGRlcHJlY2F0ZWQga29qaWNvbmZpZy4KLSAgICAgICAgICMgU2lnbmF0dXJl IG9mIGNvbnRhaW5lcl9idWlsZF9rb2ppIGlzIG5vdCBjaGFuZ2VkIGluIGNhc2Ugc29tZW9uZQot QEAgLTI4NzEsNiArMjk4MCw5IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICAg ICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoJ0Nhbm5vdCBvdmVycmlkZSBhcmNoZXMgZm9yIG5v bi1zY3JhdGNoIGJ1aWxkcycpCi0gICAgICAgICAgICAgICAgIHRhc2tfb3B0c1snYXJjaF9vdmVy cmlkZSddID0gJyAnLmpvaW4oYXJjaGVzKQotIAotKyAgICAgICAgICAgIGlmIGZsYXRwYWs6Ci0r ICAgICAgICAgICAgICAgIHRhc2tfb3B0c1snZmxhdHBhayddID0gVHJ1ZQotKwotICAgICAgICAg ICAgIHByaW9yaXR5ID0gb3B0cy5nZXQoInByaW9yaXR5IiwgTm9uZSkKLSAgICAgICAgICAgICB0 YXNrX2lkID0gc2VsZi5rb2ppc2Vzc2lvbi5idWlsZENvbnRhaW5lcihzb3VyY2UsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVy X3RhcmdldCwKLUBAIC0yOTMzLDEzICszMDQ1LDEyIEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6 Ci0gICAgICAgICBjbWQuZXh0ZW5kKFtwcm9qZWN0LCBzcnBtX25hbWVdKQotICAgICAgICAgc2Vs Zi5fcnVuX2NvbW1hbmQoY21kKQotIAotLSAgICBkZWYgbW9kdWxlX2J1aWxkX2NhbmNlbChzZWxm LCBhcGlfdXJsLCBidWlsZF9pZCwgYXV0aF9tZXRob2QsCi0rICAgIGRlZiBtb2R1bGVfYnVpbGRf Y2FuY2VsKHNlbGYsIGJ1aWxkX2lkLCBhdXRoX21ldGhvZCwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgb2lkY19pZF9wcm92aWRlcj1Ob25lLCBvaWRjX2NsaWVudF9pZD1Ob25lLAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBvaWRjX2NsaWVudF9zZWNyZXQ9Tm9uZSwgb2lkY19z Y29wZXM9Tm9uZSk6Ci0gICAgICAgICAiIiIKLSAgICAgICAgIENhbmNlbCBhbiBNQlMgYnVpbGQK LSAKLS0gICAgICAgIDpwYXJhbSBzdHIgYXBpX3VybDogVVJMIG9mIHRoZSBNQlMgQVBJCi0gICAg ICAgICA6cGFyYW0gaW50IGJ1aWxkX2lkOiBidWlsZCBJRCB0byBjYW5jZWwKLSAgICAgICAgIDpw YXJhbSBzdHIgYXV0aF9tZXRob2Q6IGF1dGhlbnRpY2F0aW9uIG1ldGhvZCB1c2VkIGJ5IHRoZSBN QlMKLSAgICAgICAgIDprd2FyZyBzdHIgb2lkY19pZF9wcm92aWRlcjogdGhlIE9JREMgcHJvdmlk ZXIgd2hlbiBNQlMgaXMgdXNpbmcgT0lEQwotQEAgLTI5NTMsOCArMzA2NCw4IEBAIGNsYXNzIENv bW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICAgICAgZm9yIGF1dGhlbnRpY2F0aW9uCi0gICAgICAg ICAiIiIKLSAgICAgICAgICMgTWFrZSBzdXJlIHRoZSBidWlsZCB0aGV5IGFyZSB0cnlpbmcgdG8g Y2FuY2VsIGV4aXN0cwotLSAgICAgICAgc2VsZi5tb2R1bGVfZ2V0X2J1aWxkKGFwaV91cmwsIGJ1 aWxkX2lkKQotLSAgICAgICAgdXJsID0gc2VsZi5tb2R1bGVfZ2V0X3VybChhcGlfdXJsLCBidWls ZF9pZCwgYWN0aW9uPSdQQVRDSCcpCi0rICAgICAgICBzZWxmLm1vZHVsZV9nZXRfYnVpbGQoYnVp bGRfaWQpCi0rICAgICAgICB1cmwgPSBzZWxmLm1vZHVsZV9nZXRfdXJsKGJ1aWxkX2lkLCBhY3Rp b249J1BBVENIJykKLSAgICAgICAgIHJlc3AgPSBzZWxmLm1vZHVsZV9zZW5kX2F1dGhvcml6ZWRf cmVxdWVzdCgKLSAgICAgICAgICAgICAnUEFUQ0gnLCB1cmwsIHsnc3RhdGUnOiAnZmFpbGVkJ30s IGF1dGhfbWV0aG9kLCBvaWRjX2lkX3Byb3ZpZGVyLAotICAgICAgICAgICAgIG9pZGNfY2xpZW50 X2lkLCBvaWRjX2NsaWVudF9zZWNyZXQsIG9pZGNfc2NvcGVzLCB0aW1lb3V0PTYwKQotQEAgLTI5 NjcsMTggKzMwNzgsMTcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgICAgICAg ICAgJ1RoZSBjYW5jZWxsYXRpb24gb2YgbW9kdWxlIGJ1aWxkICN7MH0gZmFpbGVkIHdpdGg6XG57 MX0nCi0gICAgICAgICAgICAgICAgIC5mb3JtYXQoYnVpbGRfaWQsIGVycm9yX21zZykpCi0gCi0t ICAgIGRlZiBtb2R1bGVfYnVpbGRfaW5mbyhzZWxmLCBhcGlfdXJsLCBidWlsZF9pZCk6Ci0rICAg IGRlZiBtb2R1bGVfYnVpbGRfaW5mbyhzZWxmLCBidWlsZF9pZCk6Ci0gICAgICAgICAiIiIKLSAg ICAgICAgIFNob3cgaW5mb3JtYXRpb24gYWJvdXQgYW4gTUJTIGJ1aWxkCi0gCi0tICAgICAgICA6 cGFyYW0gc3RyIGFwaV91cmw6IFVSTCBvZiB0aGUgTUJTIEFQSQotICAgICAgICAgOnBhcmFtIGlu dCBidWlsZF9pZDogYnVpbGQgSUQgdG8gcXVlcnkgTUJTIGFib3V0Ci0gICAgICAgICAiIiIKLSAg ICAgICAgICMgTG9hZCB0aGUgS29qaSBzZXNzaW9uIGFub255bW91c2x5IHNvIHdlIGdldCBhY2Nl c3MgdG8gdGhlIEtvamkgd2ViCi0gICAgICAgICAjIFVSTAotICAgICAgICAgc2VsZi5sb2FkX2tv amlzZXNzaW9uKGFub249VHJ1ZSkKLSAgICAgICAgIHN0YXRlX25hbWVzID0gc2VsZi5tb2R1bGVf Z2V0X2tvamlfc3RhdGVfZGljdCgpCi0tICAgICAgICBkYXRhID0gc2VsZi5tb2R1bGVfZ2V0X2J1 aWxkKGFwaV91cmwsIGJ1aWxkX2lkKQotKyAgICAgICAgZGF0YSA9IHNlbGYubW9kdWxlX2dldF9i dWlsZChidWlsZF9pZCkKLSAgICAgICAgIHByaW50KCdOYW1lOiAgICAgICAgICAgezB9Jy5mb3Jt YXQoZGF0YVsnbmFtZSddKSkKLSAgICAgICAgIHByaW50KCdTdHJlYW06ICAgICAgICAgezB9Jy5m b3JtYXQoZGF0YVsnc3RyZWFtJ10pKQotICAgICAgICAgcHJpbnQoJ1ZlcnNpb246ICAgICAgICB7 MH0nLmZvcm1hdChkYXRhWyd2ZXJzaW9uJ10pKQotQEAgLTMwMDAsMTQgKzMxMTAsMTMgQEAgY2xh c3MgQ29tbWFuZHMob2JqZWN0KToKLSAgICAgICAgICAgICAgICAgc3RhdGVfbmFtZXNbdGFza19k YXRhLmdldCgnc3RhdGUnLCBOb25lKV0pKQotICAgICAgICAgICAgIHByaW50KCcgICAgS29qaSBU YXNrOiAgezB9XG4nLmZvcm1hdChrb2ppX3Rhc2tfdXJsKSkKLSAKLS0gICAgZGVmIG1vZHVsZV9n ZXRfYnVpbGQoc2VsZiwgYXBpX3VybCwgYnVpbGRfaWQpOgotKyAgICBkZWYgbW9kdWxlX2dldF9i dWlsZChzZWxmLCBidWlsZF9pZCk6Ci0gICAgICAgICAiIiIKLSAgICAgICAgIEdldCBhbiBNQlMg YnVpbGQKLS0gICAgICAgIDpwYXJhbSBhcGlfdXJsOiBhIHN0cmluZyBvZiB0aGUgVVJMIG9mIHRo ZSBNQlMgQVBJCi0gICAgICAgICA6cGFyYW0gYnVpbGRfaWQ6IGFuIGludGVnZXIgb2YgdGhlIGJ1 aWxkIElEIHRvIHF1ZXJ5IE1CUyBhYm91dAotICAgICAgICAgOnJldHVybjogTm9uZSBvciBhIGRp Y3Rpb25hcnkgcmVwcmVzZW50aW5nIHRoZSBtb2R1bGUgYnVpbGQKLSAgICAgICAgICIiIgotLSAg ICAgICAgdXJsID0gc2VsZi5tb2R1bGVfZ2V0X3VybChhcGlfdXJsLCBidWlsZF9pZCkKLSsgICAg ICAgIHVybCA9IHNlbGYubW9kdWxlX2dldF91cmwoYnVpbGRfaWQpCi0gICAgICAgICByZXNwb25z ZSA9IHJlcXVlc3RzLmdldCh1cmwsIHRpbWVvdXQ9NjApCi0gICAgICAgICBpZiByZXNwb25zZS5v azoKLSAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpCi1AQCAtMzAyMCwxMSArMzEy OSw0MiBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAgICAgICAgICAgICAgICAnVGhlIGZv bGxvd2luZyBlcnJvciBvY2N1cnJlZCB3aGlsZSBnZXR0aW5nIGluZm9ybWF0aW9uIG9uICcKLSAg ICAgICAgICAgICAgICAgJ21vZHVsZSBidWlsZCAjezB9OlxuezF9Jy5mb3JtYXQoYnVpbGRfaWQs IGVycm9yX21zZykpCi0gCi0tICAgIGRlZiBtb2R1bGVfZ2V0X3VybChzZWxmLCBhcGlfdXJsLCBi dWlsZF9pZCwgYWN0aW9uPSdHRVQnKToKLSsgICAgZGVmIG1vZHVsZV9nZXRfbGF0ZXN0X2J1aWxk KHNlbGYsIG5zdmMpOgotKyAgICAgICAgIiIiCi0rICAgICAgICBHZXQgdGhlIGxhdGVzdCBNQlMg YnVpbGQgZm9yIGEgcGFydGljdWxhciBtb2R1bGUuIElmIHRoZSBtb2R1bGUgaXMKLSsgICAgICAg IGJ1aWx0IHdpdGggbXVsdGlwbGUgY29udGV4dHMsIGEgcmFuZG9tIG9uZSB3aWxsIGJlIHJldHVy bmVkLgotKwotKyAgICAgICAgOnBhcmFtIG5zdmM6IGEgTkFNRTpTVFJFQU06VkVSU0lPTjpDT05U RVhUIHRvIGZpbHRlciB0aGUgcXVlcnkKLSsgICAgICAgICAgICAgICAobWF5IGJlIHBhcnRpYWwg LSBlLmcuIG9ubHkgTkFNRSBvciBvbmx5IE5BTUU6U1RSRUFNKQotKyAgICAgICAgOnJldHVybjog dGhlIGxhdGVzdCBidWlsZAotKyAgICAgICAgIiIiCi0rICAgICAgICB1cmwgPSBzZWxmLm1vZHVs ZV9nZXRfdXJsKE5vbmUpCi0rICAgICAgICBwYXJhbXMgPSB7Ci0rICAgICAgICAgICAgJ25zdmMn OiBuc3ZjLAotKyAgICAgICAgICAgICdvcmRlcl9kZXNjX2J5JzogJ3ZlcnNpb24nLAotKyAgICAg ICAgICAgICdwZXJfcGFnZSc6IDEKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIHJlc3BvbnNlID0g cmVxdWVzdHMuZ2V0KHVybCwgdGltZW91dD02MCwgcGFyYW1zPXBhcmFtcykKLSsgICAgICAgIGlm IHJlc3BvbnNlLm9rOgotKyAgICAgICAgICAgIGogPSByZXNwb25zZS5qc29uKCkKLSsgICAgICAg ICAgICBpZiBsZW4oalsnaXRlbXMnXSkgPT0gMDoKLSsgICAgICAgICAgICAgICAgcmV0dXJuIE5v bmUKLSsgICAgICAgICAgICBlbHNlOgotKyAgICAgICAgICAgICAgICByZXR1cm4galsnaXRlbXMn XVswXQotKyAgICAgICAgZWxzZToKLSsgICAgICAgICAgICB0cnk6Ci0rICAgICAgICAgICAgICAg IGVycm9yX21zZyA9IHJlc3BvbnNlLmpzb24oKVsnbWVzc2FnZSddCi0rICAgICAgICAgICAgZXhj ZXB0IChWYWx1ZUVycm9yLCBLZXlFcnJvcik6Ci0rICAgICAgICAgICAgICAgIGVycm9yX21zZyA9 IHJlc3BvbnNlLnRleHQKLSsgICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoCi0rICAgICAgICAg ICAgICAgICdUaGUgZm9sbG93aW5nIGVycm9yIG9jY3VycmVkIHdoaWxlIGdldHRpbmcgaW5mb3Jt YXRpb24gb24gJwotKyAgICAgICAgICAgICAgICAnbW9kdWxlICN7MH06XG57MX0nLmZvcm1hdChu c3ZjLCBlcnJvcl9tc2cpKQotKwotKyAgICBkZWYgbW9kdWxlX2dldF91cmwoc2VsZiwgYnVpbGRf aWQsIGFjdGlvbj0nR0VUJyk6Ci0gICAgICAgICAiIiIKLSAgICAgICAgIEdldCB0aGUgcHJvcGVy IE1CUyBBUEkgVVJMIGZvciB0aGUgZGVzaXJlZCBhY3Rpb24KLSAKLS0gICAgICAgIDpwYXJhbSBz dHIgYXBpX3VybDogYSBzdHJpbmcgb2YgdGhlIFVSTCBvZiB0aGUgTUJTIEFQSQotICAgICAgICAg OnBhcmFtIGludCBidWlsZF9pZDogYW4gaW50ZWdlciBvZiB0aGUgbW9kdWxlIGJ1aWxkIGRlc2ly ZWQuIElmIHRoaXMgaXMKLSAgICAgICAgICAgICBzZXQgdG8gTm9uZSwgdGhlbiB0aGUgYmFzZSBV UkwgZm9yIGFsbCBtb2R1bGUgYnVpbGRzIGlzIHJldHVybmVkLgotICAgICAgICAgOnBhcmFtIHN0 ciBhY3Rpb246IGEgc3RyaW5nIGRldGVybWluaW5nIHRoZSBIVFRQIGFjdGlvbi4gSWYgdGhpcyBp cyBzZXQKLUBAIC0zMDMzLDcgKzMxNzMsNyBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAg ICAgICAgOnJldHVybjogYSBzdHJpbmcgb2YgdGhlIGRlc2lyZWQgTUJTIEFQSSBVUkwuCi0gICAg ICAgICA6cnR5cGU6IHN0cgotICAgICAgICAgIiIiCi0tICAgICAgICB1cmwgPSB1cmxqb2luKGFw aV91cmwsICdtb2R1bGUtYnVpbGRzLycpCi0rICAgICAgICB1cmwgPSB1cmxqb2luKHNlbGYubW9k dWxlX2FwaV91cmwsICdtb2R1bGUtYnVpbGRzLycpCi0gICAgICAgICBpZiBidWlsZF9pZCBpcyBu b3QgTm9uZToKLSAgICAgICAgICAgICB1cmwgPSAnezB9ezF9Jy5mb3JtYXQodXJsLCBidWlsZF9p ZCkKLSAgICAgICAgIGVsc2U6Ci1AQCAtMzE3MiwxMSArMzMxMiwxMCBAQCBjbGFzcyBDb21tYW5k cyhvYmplY3QpOgotICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgIHJhaXNlCi0g Ci0tICAgIGRlZiBtb2R1bGVfb3ZlcnZpZXcoc2VsZiwgYXBpX3VybCwgbGltaXQ9MTAsIGZpbmlz aGVkPVRydWUpOgotKyAgICBkZWYgbW9kdWxlX292ZXJ2aWV3KHNlbGYsIGxpbWl0PTEwLCBmaW5p c2hlZD1UcnVlKToKLSAgICAgICAgICIiIgotICAgICAgICAgU2hvdyB0aGUgb3ZlcnZpZXcgb2Yg dGhlIGxhdGVzdCBidWlsZHMgaW4gTUJTCi0gCi0tICAgICAgICA6cGFyYW0gc3RyIGFwaV91cmw6 IGEgc3RyaW5nIG9mIHRoZSBVUkwgb2YgdGhlIE1CUyBBUEkKLSAgICAgICAgIDpwYXJhbSBpbnQg bGltaXQ6IGFuIGludGVnZXIgb2YgdGhlIG51bWJlciBvZiBtb3N0IHJlY2VudCBtb2R1bGUgYnVp bGRzCi0gICAgICAgICAgICAgdG8gZGlzcGxheS4gVGhpcyBkZWZhdWx0cyB0byAxMC4KLSAgICAg ICAgIDpwYXJhbSBib29sIGZpbmlzaGVkOiBhIGJvb2xlYW4gdGhhdCBkZXRlcm1pbmVzIGlmIG9u bHkgZmluaXNoZWQgb3IKLUBAIC0zMTkzLDcgKzMzMzIsNyBAQCBjbGFzcyBDb21tYW5kcyhvYmpl Y3QpOgotICAgICAgICAgICAgICdmYWlsZWQnOiA0LAotICAgICAgICAgICAgICdyZWFkeSc6IDUs Ci0gICAgICAgICB9Ci0tICAgICAgICBiYXNldXJsID0gc2VsZi5tb2R1bGVfZ2V0X3VybChhcGlf dXJsLCBidWlsZF9pZD1Ob25lKQotKyAgICAgICAgYmFzZXVybCA9IHNlbGYubW9kdWxlX2dldF91 cmwoYnVpbGRfaWQ9Tm9uZSkKLSAgICAgICAgIGlmIGZpbmlzaGVkOgotICAgICAgICAgICAgICMg VGhlc2UgYXJlIHRoZSBzdGF0ZXMgd2hlbiBhIGJ1aWxkIGlzIGZpbmlzaGVkCi0gICAgICAgICAg ICAgc3RhdGVzID0gW2J1aWxkX3N0YXRlc1snZG9uZSddLCBidWlsZF9zdGF0ZXNbJ3JlYWR5J10s Ci1AQCAtMzMzOSwxNCArMzQ3OCwxMyBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgotICAgICAg ICAgICAgIHJhaXNlIHJwa2dFcnJvcignQW4gdW5zdXBwb3J0ZWQgTUJTICJhdXRoX21ldGhvZCIg d2FzIHByb3ZpZGVkJykKLSAgICAgICAgIHJldHVybiByZXNwCi0gCi0tICAgIGRlZiBtb2R1bGVf c3VibWl0X2J1aWxkKHNlbGYsIGFwaV91cmwsIHNjbV91cmwsIGJyYW5jaCwgYXV0aF9tZXRob2Qs Ci0rICAgIGRlZiBtb2R1bGVfc3VibWl0X2J1aWxkKHNlbGYsIHNjbV91cmwsIGJyYW5jaCwgYXV0 aF9tZXRob2QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsPU5vbmUsIG9p ZGNfaWRfcHJvdmlkZXI9Tm9uZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2lkY19j bGllbnRfaWQ9Tm9uZSwgb2lkY19jbGllbnRfc2VjcmV0PU5vbmUsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG9pZGNfc2NvcGVzPU5vbmUpOgotICAgICAgICAgIiIiCi0gICAgICAgICBT dWJtaXQgYSBtb2R1bGUgYnVpbGQgdG8gdGhlIE1CUwotIAotLSAgICAgICAgOnBhcmFtIGFwaV91 cmw6IGEgc3RyaW5nIG9mIHRoZSBVUkwgb2YgdGhlIE1CUyBBUEkKLSAgICAgICAgIDpwYXJhbSBz Y21fdXJsOiBhIHN0cmluZyBvZiB0aGUgbW9kdWxlJ3MgU0NNIFVSTAotICAgICAgICAgOnBhcmFt IGJyYW5jaDogYSBzdHJpbmcgb2YgdGhlIG1vZHVsZSdzIGJyYW5jaAotICAgICAgICAgOnBhcmFt IHN0ciBhdXRoX21ldGhvZDogYSBzdHJpbmcgb2YgdGhlIGF1dGhlbnRpY2F0aW9uIG1ldGhvZCB1 c2VkIGJ5Ci1AQCAtMzM3OCw3ICszNTE2LDcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKLSAg ICAgICAgICAgICAgICAgJ09wdGlvbmFsIGFyZ3VtZW50cyBhcmUgbm90IGluIHRoZSBwcm9wZXIg ImtleT12YWx1ZSIgZm9ybWF0JykKLSAKLSAgICAgICAgIGJvZHkudXBkYXRlKG9wdGlvbmFsX2Rp Y3QpCi0tICAgICAgICB1cmwgPSBzZWxmLm1vZHVsZV9nZXRfdXJsKGFwaV91cmwsIGJ1aWxkX2lk PU5vbmUsIGFjdGlvbj0nUE9TVCcpCi0rICAgICAgICB1cmwgPSBzZWxmLm1vZHVsZV9nZXRfdXJs KGJ1aWxkX2lkPU5vbmUsIGFjdGlvbj0nUE9TVCcpCi0gICAgICAgICByZXNwID0gc2VsZi5tb2R1 bGVfc2VuZF9hdXRob3JpemVkX3JlcXVlc3QoCi0gICAgICAgICAgICAgJ1BPU1QnLCB1cmwsIGJv ZHksIGF1dGhfbWV0aG9kLCBvaWRjX2lkX3Byb3ZpZGVyLCBvaWRjX2NsaWVudF9pZCwKLSAgICAg ICAgICAgICBvaWRjX2NsaWVudF9zZWNyZXQsIG9pZGNfc2NvcGVzLCB0aW1lb3V0PTEyMCkKLUBA IC0zMzk5LDEzICszNTM3LDEyIEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICBi dWlsZHMgPSBkYXRhIGlmIGlzaW5zdGFuY2UoZGF0YSwgbGlzdCkgZWxzZSBbZGF0YV0KLSAgICAg ICAgIHJldHVybiBbYnVpbGRbJ2lkJ10gZm9yIGJ1aWxkIGluIGJ1aWxkc10KLSAKLS0gICAgZGVm IG1vZHVsZV93YXRjaF9idWlsZChzZWxmLCBhcGlfdXJsLCBidWlsZF9pZHMpOgotKyAgICBkZWYg bW9kdWxlX3dhdGNoX2J1aWxkKHNlbGYsIGJ1aWxkX2lkcyk6Ci0gICAgICAgICAiIiIKLSAgICAg ICAgIFdhdGNoZXMgdGhlIGZpcnN0IE1CUyBidWlsZCBpbiB0aGUgbGlzdCBpbiBhIGxvb3AgdGhh dCB1cGRhdGVzIGV2ZXJ5IDE1Ci0gICAgICAgICBzZWNvbmRzLiBUaGUgbG9vcCBlbmRzIHdoZW4g dGhlIGJ1aWxkIHN0YXRlIGlzICdmYWlsZWQnLCAnZG9uZScsIG9yCi0gICAgICAgICAncmVhZHkn LgotIAotLSAgICAgICAgOnBhcmFtIHN0ciBhcGlfdXJsOiBhIHN0cmluZyBvZiB0aGUgVVJMIG9m IHRoZSBNQlMgQVBJCi0gICAgICAgICA6cGFyYW0gYnVpbGRfaWRzOiBhIGxpc3Qgb2YgbW9kdWxl IGJ1aWxkIElEcwotICAgICAgICAgOnR5cGUgYnVpbGRfaWRzOiBsaXN0W2ludF0KLSAgICAgICAg ICIiIgotQEAgLTM0MjMsNyArMzU2MCw3IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAg ICAgICBkb25lID0gRmFsc2UKLSAgICAgICAgIHdoaWxlIG5vdCBkb25lOgotICAgICAgICAgICAg IHN0YXRlX25hbWVzID0gc2VsZi5tb2R1bGVfZ2V0X2tvamlfc3RhdGVfZGljdCgpCi0tICAgICAg ICAgICAgYnVpbGQgPSBzZWxmLm1vZHVsZV9nZXRfYnVpbGQoYXBpX3VybCwgYnVpbGRfaWQpCi0r ICAgICAgICAgICAgYnVpbGQgPSBzZWxmLm1vZHVsZV9nZXRfYnVpbGQoYnVpbGRfaWQpCi0gICAg ICAgICAgICAgdGFza3MgPSB7fQotICAgICAgICAgICAgIGlmICdycG1zJyBpbiBidWlsZFsndGFz a3MnXToKLSAgICAgICAgICAgICAgICAgdGFza3MgPSBidWlsZFsndGFza3MnXVsncnBtcyddCi1A QCAtMzQ5NCw2ICszNjMxLDEwIEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6Ci0gICAgICAgICA6 cGFyYW0gYXBpX3VybDogYSBzdHJpbmcgb2YgdGhlIFVSTCBvZiB0aGUgTUJTIEFQSQotICAgICAg ICAgOnJldHVybjogYW4gaW50IG9mIHRoZSBBUEkgdmVyc2lvbgotICAgICAgICAgIiIiCi0rCi0r ICAgICAgICAjIFdlIGRvbid0IHVzZSBzZWxmLm1vZHVsZV9hcGlfdXJsIHNpbmNlIHRoaXMgaXMg dXNlZCBleGNsdXNpdmVseSBieSB0aGUgY29kZQotKyAgICAgICAgIyB0aGF0IGlzIGxvYWRpbmcg YW5kIHZhbGlkYXRpbmcgdGhlIEFQSSBVUkwgYmVmb3JlIHNldHRpbmcgaXQuCi0rCi0gICAgICAg ICB1cmwgPSAnezB9L2Fib3V0LycuZm9ybWF0KGFwaV91cmwucnN0cmlwKCcvJykpCi0gICAgICAg ICByZXNwb25zZSA9IHJlcXVlc3RzLmdldCh1cmwsIHRpbWVvdXQ9NjApCi0gICAgICAgICBpZiBy ZXNwb25zZS5vazoKLWRpZmYgLS1naXQgYS9weXJwa2cvY2xpLnB5IGIvcHlycGtnL2NsaS5weQot aW5kZXggNDRiZWI5Yy4uMzZmZTcxMCAxMDA2NDQKLS0tLSBhL3B5cnBrZy9jbGkucHkKLSsrKyBi L3B5cnBrZy9jbGkucHkKLUBAIC0zMSw3ICszMSw3IEBAIGltcG9ydCBrb2ppX2NsaS5saWIKLSBp bXBvcnQgcHlycGtnLnV0aWxzIGFzIHV0aWxzCi0gaW1wb3J0IHNpeAotIAotLWZyb20gcHlycGtn IGltcG9ydCBycGtnRXJyb3IsIGxvZyBhcyBycGtnTG9nZ2VyCi0rZnJvbSBweXJwa2cgaW1wb3J0 IFBZMjYsIHJwa2dFcnJvciwgbG9nIGFzIHJwa2dMb2dnZXIKLSBmcm9tIHNpeC5tb3ZlcyBpbXBv cnQgY29uZmlncGFyc2VyCi0gCi0gCi1AQCAtNDI0LDYgKzQyNCw3IEBAIGNsYXNzIGNsaUNsaWVu dChvYmplY3QpOgotIAotICAgICAgICAgIyBBZGQgYSBjb21tb24gcGFyc2VycwotICAgICAgICAg c2VsZi5yZWdpc3Rlcl9idWlsZF9jb21tb24oKQotKyAgICAgICAgc2VsZi5yZWdpc3Rlcl9jb250 YWluZXJfYnVpbGRfY29tbW9uKCkKLSAgICAgICAgIHNlbGYucmVnaXN0ZXJfcnBtX2NvbW1vbigp Ci0gCi0gICAgICAgICAjIE90aGVyIHRhcmdldHMKLUBAIC00MzgsNiArNDM5LDggQEAgY2xhc3Mg Y2xpQ2xpZW50KG9iamVjdCk6Ci0gICAgICAgICBzZWxmLnJlZ2lzdGVyX2NvbnRhaW5lcl9idWls ZCgpCi0gICAgICAgICBzZWxmLnJlZ2lzdGVyX2NvbnRhaW5lcl9idWlsZF9zZXR1cCgpCi0gICAg ICAgICBzZWxmLnJlZ2lzdGVyX2RpZmYoKQotKyAgICAgICAgaWYgbm90IFBZMjY6Ci0rICAgICAg ICAgICAgc2VsZi5yZWdpc3Rlcl9mbGF0cGFrX2J1aWxkKCkKLSAgICAgICAgIHNlbGYucmVnaXN0 ZXJfZ2ltbWVzcGVjKCkKLSAgICAgICAgIHNlbGYucmVnaXN0ZXJfZ2l0YnVpbGRoYXNoKCkKLSAg ICAgICAgIHNlbGYucmVnaXN0ZXJfZ2l0Y3JlZCgpCi1AQCAtMTM3OSwxMSArMTM4Miw1NCBAQCBz ZWUgQVBJIEtFWSBzZWN0aW9uIG9mIGNvcHItY2xpKDEpIG1hbiBwYWdlLgotICAgICAgICAgICAg ICd2ZXJyZWwnLCBoZWxwPSdQcmludCB0aGUgbmFtZS12ZXJzaW9uLXJlbGVhc2UnKQotICAgICAg ICAgdmVycmVsX3BhcnNlci5zZXRfZGVmYXVsdHMoY29tbWFuZD1zZWxmLnZlcnJlbCkKLSAKLSsg ICAgZGVmIHJlZ2lzdGVyX2NvbnRhaW5lcl9idWlsZF9jb21tb24oc2VsZik6Ci0rICAgICAgICBw YXJzZXIgPSBBcmd1bWVudFBhcnNlcigKLSsgICAgICAgICAgICAnY29udGFpbmVyX2J1aWxkX2Nv bW1vbicsIGFkZF9oZWxwPUZhbHNlLCBhbGxvd19hYmJyZXY9RmFsc2UpCi0rCi0rICAgICAgICBz ZWxmLmNvbnRhaW5lcl9idWlsZF9wYXJzZXJfY29tbW9uID0gcGFyc2VyCi0rCi0rICAgICAgICBw YXJzZXIuYWRkX2FyZ3VtZW50KAotKyAgICAgICAgICAgICctLXRhcmdldCcsCi0rICAgICAgICAg ICAgaGVscD0nT3ZlcnJpZGUgdGhlIGRlZmF1bHQgdGFyZ2V0JywKLSsgICAgICAgICAgICBkZWZh dWx0PU5vbmUpCi0rCi0rICAgICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KAotKyAgICAgICAgICAg ICctLW5vd2FpdCcsCi0rICAgICAgICAgICAgYWN0aW9uPSdzdG9yZV90cnVlJywKLSsgICAgICAg ICAgICBkZWZhdWx0PUZhbHNlLAotKyAgICAgICAgICAgIGhlbHA9IkRvbid0IHdhaXQgb24gYnVp bGQiKQotKwotKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgKLSsgICAgICAgICAgICAnLS1z Y3JhdGNoJywKLSsgICAgICAgICAgICBoZWxwPSdTY3JhdGNoIGJ1aWxkJywKLSsgICAgICAgICAg ICBhY3Rpb249InN0b3JlX3RydWUiKQotKwotKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgK LSsgICAgICAgICAgICAnLS1hcmNoZXMnLAotKyAgICAgICAgICAgIGFjdGlvbj0nc3RvcmUnLAot KyAgICAgICAgICAgIG5hcmdzPScqJywKLSsgICAgICAgICAgICBoZWxwPSdMaW1pdCBhIHNjcmF0 Y2ggYnVpbGQgdG8gYW4gYXJjaC4gTWF5IGhhdmUgbXVsdGlwbGUgYXJjaGVzLicpCi0rCi0rICAg ICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KAotKyAgICAgICAgICAgICctLXNraXAtcmVtb3RlLXJ1 bGVzLXZhbGlkYXRpb24nLAotKyAgICAgICAgICAgIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCi0rICAg ICAgICAgICAgZGVmYXVsdD1GYWxzZSwKLSsgICAgICAgICAgICBoZWxwPSJEb24ndCBjaGVjayBp ZiB0aGVyZSdzIGEgdmFsaWQgZ2F0aW5nLnlhbWwgZmlsZSBpbiB0aGUgcmVwbyIpCi0rCi0gICAg IGRlZiByZWdpc3Rlcl9jb250YWluZXJfYnVpbGQoc2VsZik6Ci0gICAgICAgICBzZWxmLmNvbnRh aW5lcl9idWlsZF9wYXJzZXIgPSBzZWxmLnN1YnBhcnNlcnMuYWRkX3BhcnNlcigKLSAgICAgICAg ICAgICAnY29udGFpbmVyLWJ1aWxkJywKLSAgICAgICAgICAgICBoZWxwPSdCdWlsZCBhIGNvbnRh aW5lcicsCi0tICAgICAgICAgICAgZGVzY3JpcHRpb249J0J1aWxkIGEgY29udGFpbmVyJykKLSsg ICAgICAgICAgICBkZXNjcmlwdGlvbj0nQnVpbGQgYSBjb250YWluZXInLAotKyAgICAgICAgICAg IHBhcmVudHM9W3NlbGYuY29udGFpbmVyX2J1aWxkX3BhcnNlcl9jb21tb25dKQotKwotKyAgICAg ICAgIyBUaGVzZSBhcmd1bWVudHMgYXJlIHNwZWNpZmljIHRvIG5vbi1GbGF0cGFrIGNvbnRhaW5l cnMKLSsgICAgICAgICMKLSsgICAgICAgICMgLS1jb21wb3NlLWlkIGlzIGltcGxlbWVudGVkIGZv ciBGbGF0cGFrcyBhcyBhIHNpZGUtZWZmZWN0IG9mIHRoZSBpbnRlcm5hbAotKyAgICAgICAgIyAg ICAgIGltcGxlbWVudGF0aW9uLCBidXQgaXQgaXMgdW5saWtlbHkgdG8gYmUgdXNlZnVsIHRvIHRy aWdnZXIgdGhyb3VnaCBycGtnLgotKyAgICAgICAgIyAtLSBzaWduaW5nLWludGVudCBpcyBub3Qg aW1wbGVtZW50ZWQgZm9yIEZsYXRwYWtzLCB0aG91Z2ggaXQgY291bGQgYmUgdXNlZnVsCi0rICAg ICAgICAjIC0tcmVwby11cmwgbWFrZXMgbm8gc2Vuc2UgZm9yIGZsYXB0YWtzLCBzaW5jZSB0aGV5 IG11c3QgYmUgYnVpbHQgZnJvbSBhCi0rICAgICAgICAjICAgICAgY29tcG9zZSBvZiBhIHNpbmds ZSBtb2R1bGUuCi0gCi0gICAgICAgICBncm91cCA9IHNlbGYuY29udGFpbmVyX2J1aWxkX3BhcnNl ci5hZGRfbXV0dWFsbHlfZXhjbHVzaXZlX2dyb3VwKCkKLSAgICAgICAgIGdyb3VwLmFkZF9hcmd1 bWVudCgKLUBAIC0xNDA1LDM1ICsxNDUxLDE2IEBAIHNlZSBBUEkgS0VZIHNlY3Rpb24gb2YgY29w ci1jbGkoMSkgbWFuIHBhZ2UuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdDYW5u b3QgYmUgdXNlZCB3aXRoIC0tc2lnbmluZy1pbnRlbnQgb3IgLS1jb21wb3NlLWlkJywKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgIG5hcmdzPScrJykKLSAKLS0gICAgICAgIHNlbGYuY29udGFp bmVyX2J1aWxkX3BhcnNlci5hZGRfYXJndW1lbnQoCi0tICAgICAgICAgICAgJy0tdGFyZ2V0JywK LS0gICAgICAgICAgICBoZWxwPSdPdmVycmlkZSB0aGUgZGVmYXVsdCB0YXJnZXQnLAotLSAgICAg ICAgICAgIGRlZmF1bHQ9Tm9uZSkKLS0KLS0gICAgICAgIHNlbGYuY29udGFpbmVyX2J1aWxkX3Bh cnNlci5hZGRfYXJndW1lbnQoCi0tICAgICAgICAgICAgJy0tbm93YWl0JywKLS0gICAgICAgICAg ICBhY3Rpb249J3N0b3JlX3RydWUnLAotLSAgICAgICAgICAgIGRlZmF1bHQ9RmFsc2UsCi0tICAg ICAgICAgICAgaGVscD0iRG9uJ3Qgd2FpdCBvbiBidWlsZCIpCi0tCi0tICAgICAgICBzZWxmLmNv bnRhaW5lcl9idWlsZF9wYXJzZXIuYWRkX2FyZ3VtZW50KAotLSAgICAgICAgICAgICctLXNjcmF0 Y2gnLAotLSAgICAgICAgICAgIGhlbHA9J1NjcmF0Y2ggYnVpbGQnLAotLSAgICAgICAgICAgIGFj dGlvbj0ic3RvcmVfdHJ1ZSIpCi0tCi0tICAgICAgICBzZWxmLmNvbnRhaW5lcl9idWlsZF9wYXJz ZXIuYWRkX2FyZ3VtZW50KAotLSAgICAgICAgICAgICctLWFyY2hlcycsCi0tICAgICAgICAgICAg YWN0aW9uPSdzdG9yZScsCi0tICAgICAgICAgICAgbmFyZ3M9JyonLAotLSAgICAgICAgICAgIGhl bHA9J0xpbWl0IGEgc2NyYXRjaCBidWlsZCB0byBhbiBhcmNoLiBNYXkgaGF2ZSBtdWx0aXBsZSBh cmNoZXMuJykKLSsgICAgICAgIHNlbGYuY29udGFpbmVyX2J1aWxkX3BhcnNlci5zZXRfZGVmYXVs dHMoY29tbWFuZD1zZWxmLmNvbnRhaW5lcl9idWlsZCkKLSAKLS0gICAgICAgIHNlbGYuY29udGFp bmVyX2J1aWxkX3BhcnNlci5hZGRfYXJndW1lbnQoCi0tICAgICAgICAgICAgJy0tc2tpcC1yZW1v dGUtcnVsZXMtdmFsaWRhdGlvbicsCi0tICAgICAgICAgICAgYWN0aW9uPSdzdG9yZV90cnVlJywK LS0gICAgICAgICAgICBkZWZhdWx0PUZhbHNlLAotLSAgICAgICAgICAgIGhlbHA9IkRvbid0IGNo ZWNrIGlmIHRoZXJlJ3MgYSB2YWxpZCBnYXRpbmcueWFtbCBmaWxlIGluIHRoZSByZXBvIikKLSsg ICAgZGVmIHJlZ2lzdGVyX2ZsYXRwYWtfYnVpbGQoc2VsZik6Ci0rICAgICAgICBzZWxmLmZsYXRw YWtfYnVpbGRfcGFyc2VyID0gc2VsZi5zdWJwYXJzZXJzLmFkZF9wYXJzZXIoCi0rICAgICAgICAg ICAgJ2ZsYXRwYWstYnVpbGQnLAotKyAgICAgICAgICAgIGhlbHA9J0J1aWxkIGEgRmxhdHBhaycs Ci0rICAgICAgICAgICAgZGVzY3JpcHRpb249J0J1aWxkIGEgRmxhdHBhaycsCi0rICAgICAgICAg ICAgcGFyZW50cz1bc2VsZi5jb250YWluZXJfYnVpbGRfcGFyc2VyX2NvbW1vbl0pCi0gCi0tICAg ICAgICBzZWxmLmNvbnRhaW5lcl9idWlsZF9wYXJzZXIuc2V0X2RlZmF1bHRzKGNvbW1hbmQ9c2Vs Zi5jb250YWluZXJfYnVpbGQpCi0rICAgICAgICBzZWxmLmZsYXRwYWtfYnVpbGRfcGFyc2VyLnNl dF9kZWZhdWx0cyhjb21tYW5kPXNlbGYuZmxhdHBha19idWlsZCkKLSAKLSAgICAgZGVmIHJlZ2lz dGVyX2NvbnRhaW5lcl9idWlsZF9zZXR1cChzZWxmKToKLSAgICAgICAgIHNlbGYuY29udGFpbmVy X2J1aWxkX3NldHVwX3BhcnNlciA9IFwKLUBAIC0xNzYyLDcgKzE3ODksNyBAQCBzZWUgQVBJIEtF WSBzZWN0aW9uIG9mIGNvcHItY2xpKDEpIG1hbiBwYWdlLgotICAgICAgICAgIyBLZWVwIGl0IGFy b3VuZCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQotICAgICAgICAgc2VsZi5jb250YWluZXJf YnVpbGQoKQotIAotLSAgICBkZWYgY29udGFpbmVyX2J1aWxkKHNlbGYpOgotKyAgICBkZWYgY29u dGFpbmVyX2J1aWxkKHNlbGYsIGZsYXRwYWs9RmFsc2UpOgotICAgICAgICAgdGFyZ2V0X292ZXJy aWRlID0gRmFsc2UKLSAgICAgICAgICMgT3ZlcnJpZGUgdGhlIHRhcmdldCBpZiB3ZSB3ZXJlIHN1 cHBsaWVkIG9uZQotICAgICAgICAgaWYgc2VsZi5hcmdzLnRhcmdldDoKLUBAIC0xNzcxLDExICsx Nzk4LDE1IEBAIHNlZSBBUEkgS0VZIHNlY3Rpb24gb2YgY29wci1jbGkoMSkgbWFuIHBhZ2UuCi0g Ci0gICAgICAgICBvcHRzID0geyJzY3JhdGNoIjogc2VsZi5hcmdzLnNjcmF0Y2gsCi0gICAgICAg ICAgICAgICAgICJxdWlldCI6IHNlbGYuYXJncy5xLAotLSAgICAgICAgICAgICAgICAieXVtX3Jl cG91cmxzIjogc2VsZi5hcmdzLnJlcG9fdXJsLAotICAgICAgICAgICAgICAgICAiZ2l0X2JyYW5j aCI6IHNlbGYuY21kLmJyYW5jaF9tZXJnZSwKLS0gICAgICAgICAgICAgICAgImFyY2hlcyI6IHNl bGYuYXJncy5hcmNoZXMsCi0rICAgICAgICAgICAgICAgICJhcmNoZXMiOiBzZWxmLmFyZ3MuYXJj aGVzfQotKwotKyAgICAgICAgaWYgbm90IGZsYXRwYWs6Ci0rICAgICAgICAgICAgb3B0cy51cGRh dGUoewotKyAgICAgICAgICAgICAgICAieXVtX3JlcG91cmxzIjogc2VsZi5hcmdzLnJlcG9fdXJs LAotICAgICAgICAgICAgICAgICAiY29tcG9zZV9pZHMiOiBzZWxmLmFyZ3MuY29tcG9zZV9pZHMs Ci0tICAgICAgICAgICAgICAgICJzaWduaW5nX2ludGVudCI6IHNlbGYuYXJncy5zaWduaW5nX2lu dGVudH0KLSsgICAgICAgICAgICAgICAgInNpZ25pbmdfaW50ZW50Ijogc2VsZi5hcmdzLnNpZ25p bmdfaW50ZW50LAotKyAgICAgICAgICAgIH0pCi0gCi0gICAgICAgICBzZWN0aW9uX25hbWUgPSAi JXMuY29udGFpbmVyLWJ1aWxkIiAlIHNlbGYubmFtZQotICAgICAgICAgZXJyX21zZyA9ICJNaXNz aW5nICUob3B0aW9uKXMgb3B0aW9uIGluIFslKHBsdWdpbi5zZWN0aW9uKXNdIHNlY3Rpb24uICIg XAotQEAgLTE4MDgsNiArMTgzOSwxMCBAQCBzZWUgQVBJIEtFWSBzZWN0aW9uIG9mIGNvcHItY2xp KDEpIG1hbiBwYWdlLgotIAotICAgICAgICAgc2VsZi5jaGVja19yZW1vdGVfcnVsZXNfZ2F0aW5n KCkKLSAKLSsgICAgICAgICMgV2UgdXNlIE1CUyB0byBmaW5kIGluZm9ybWF0aW9uIGFib3V0IHRo ZSBtb2R1bGUgdG8gYnVpbGQgaW50byBhIEZsYXRwYWsKLSsgICAgICAgIGlmIGZsYXRwYWs6Ci0r ICAgICAgICAgICAgc2VsZi5zZXRfbW9kdWxlX2FwaV91cmwoKQotKwotICAgICAgICAgc2VsZi5j bWQuY29udGFpbmVyX2J1aWxkX2tvamkoCi0gICAgICAgICAgICAgdGFyZ2V0X292ZXJyaWRlLAot ICAgICAgICAgICAgIG9wdHM9b3B0cywKLUBAIC0xODE1LDcgKzE4NTAsMTEgQEAgc2VlIEFQSSBL RVkgc2VjdGlvbiBvZiBjb3ByLWNsaSgxKSBtYW4gcGFnZS4KLSAgICAgICAgICAgICBrb2ppcHJv ZmlsZT1rb2ppcHJvZmlsZSwKLSAgICAgICAgICAgICBidWlsZF9jbGllbnQ9YnVpbGRfY2xpZW50 LAotICAgICAgICAgICAgIGtvamlfdGFza193YXRjaGVyPWtvamlfY2xpLmxpYi53YXRjaF90YXNr cywKLS0gICAgICAgICAgICBub3dhaXQ9c2VsZi5hcmdzLm5vd2FpdCkKLSsgICAgICAgICAgICBu b3dhaXQ9c2VsZi5hcmdzLm5vd2FpdCwKLSsgICAgICAgICAgICBmbGF0cGFrPWZsYXRwYWspCi0r Ci0rICAgIGRlZiBmbGF0cGFrX2J1aWxkKHNlbGYpOgotKyAgICAgICAgc2VsZi5jb250YWluZXJf YnVpbGQoZmxhdHBhaz1UcnVlKQotIAotICAgICBkZWYgY29udGFpbmVyX2J1aWxkX3NldHVwKHNl bGYpOgotICAgICAgICAgc2VsZi5jbWQuY29udGFpbmVyX2J1aWxkX3NldHVwKGdldF9hdXRvcmVi dWlsZD1zZWxmLmFyZ3MuZ2V0X2F1dG9yZWJ1aWxkLAotQEAgLTE5MjMsNyArMTk2Miw3IEBAIHNl ZSBBUEkgS0VZIHNlY3Rpb24gb2YgY29wci1jbGkoMSkgbWFuIHBhZ2UuCi0gCi0gICAgIGRlZiBt b2R1bGVfYnVpbGQoc2VsZik6Ci0gICAgICAgICAiIiJCdWlsZHMgYSBtb2R1bGUgdXNpbmcgTUJT IiIiCi0tICAgICAgICBhcGlfdXJsID0gc2VsZi5tb2R1bGVfYXBpX3VybAotKyAgICAgICAgc2Vs Zi5zZXRfbW9kdWxlX2FwaV91cmwoKQotICAgICAgICAgc2VsZi5tb2R1bGVfdmFsaWRhdGVfY29u ZmlnKCkKLSAgICAgICAgIHNjbV91cmwsIGJyYW5jaCA9IHNlbGYuY21kLm1vZHVsZV9nZXRfc2Nt X2luZm8oCi0gICAgICAgICAgICAgc2VsZi5hcmdzLnNjbV91cmwsIHNlbGYuYXJncy5icmFuY2gp Ci1AQCAtMTkzMyw3ICsxOTcyLDcgQEAgc2VlIEFQSSBLRVkgc2VjdGlvbiBvZiBjb3ByLWNsaSgx KSBtYW4gcGFnZS4KLSAgICAgICAgIGlmIG5vdCBzZWxmLmFyZ3MucToKLSAgICAgICAgICAgICBw cmludCgnU3VibWl0dGluZyB0aGUgbW9kdWxlIGJ1aWxkLi4uJykKLSAgICAgICAgIGJ1aWxkX2lk cyA9IHNlbGYuX2NtZC5tb2R1bGVfc3VibWl0X2J1aWxkKAotLSAgICAgICAgICAgIGFwaV91cmws IHNjbV91cmwsIGJyYW5jaCwgYXV0aF9tZXRob2QsIHNlbGYuYXJncy5vcHRpb25hbCwKLSsgICAg ICAgICAgICBzY21fdXJsLCBicmFuY2gsIGF1dGhfbWV0aG9kLCBzZWxmLmFyZ3Mub3B0aW9uYWws Ci0gICAgICAgICAgICAgb2lkY19pZF9wcm92aWRlciwgb2lkY19jbGllbnRfaWQsIG9pZGNfY2xp ZW50X3NlY3JldCwgb2lkY19zY29wZXMpCi0gICAgICAgICBpZiBzZWxmLmFyZ3Mud2F0Y2g6Ci0g ICAgICAgICAgICAgc2VsZi5tb2R1bGVfd2F0Y2hfYnVpbGQoYnVpbGRfaWRzKQotQEAgLTE5NDgs NyArMTk4Nyw3IEBAIHNlZSBBUEkgS0VZIHNlY3Rpb24gb2YgY29wci1jbGkoMSkgbWFuIHBhZ2Uu Ci0gCi0gICAgIGRlZiBtb2R1bGVfYnVpbGRfY2FuY2VsKHNlbGYpOgotICAgICAgICAgIiIiQ2Fu Y2VsIGFuIE1CUyBidWlsZCIiIgotLSAgICAgICAgYXBpX3VybCA9IHNlbGYubW9kdWxlX2FwaV91 cmwKLSsgICAgICAgIHNlbGYuc2V0X21vZHVsZV9hcGlfdXJsKCkKLSAgICAgICAgIGJ1aWxkX2lk ID0gc2VsZi5hcmdzLmJ1aWxkX2lkCi0gICAgICAgICBhdXRoX21ldGhvZCwgb2lkY19pZF9wcm92 aWRlciwgb2lkY19jbGllbnRfaWQsIG9pZGNfY2xpZW50X3NlY3JldCwgXAotICAgICAgICAgICAg IG9pZGNfc2NvcGVzID0gc2VsZi5tb2R1bGVfZ2V0X2F1dGhfY29uZmlnKCkKLUBAIC0xOTU2LDE0 ICsxOTk1LDE1IEBAIHNlZSBBUEkgS0VZIHNlY3Rpb24gb2YgY29wci1jbGkoMSkgbWFuIHBhZ2Uu Ci0gICAgICAgICBpZiBub3Qgc2VsZi5hcmdzLnE6Ci0gICAgICAgICAgICAgcHJpbnQoJ0NhbmNl bGxpbmcgbW9kdWxlIGJ1aWxkICN7MH0uLi4nLmZvcm1hdChidWlsZF9pZCkpCi0gICAgICAgICBz ZWxmLmNtZC5tb2R1bGVfYnVpbGRfY2FuY2VsKAotLSAgICAgICAgICAgIGFwaV91cmwsIGJ1aWxk X2lkLCBhdXRoX21ldGhvZCwgb2lkY19pZF9wcm92aWRlciwgb2lkY19jbGllbnRfaWQsCi0rICAg ICAgICAgICAgYnVpbGRfaWQsIGF1dGhfbWV0aG9kLCBvaWRjX2lkX3Byb3ZpZGVyLCBvaWRjX2Ns aWVudF9pZCwKLSAgICAgICAgICAgICBvaWRjX2NsaWVudF9zZWNyZXQsIG9pZGNfc2NvcGVzKQot ICAgICAgICAgaWYgbm90IHNlbGYuYXJncy5xOgotICAgICAgICAgICAgICAgICBwcmludCgnVGhl IG1vZHVsZSBidWlsZCAjezB9IHdhcyBjYW5jZWxsZWQnLmZvcm1hdChidWlsZF9pZCkpCi0gCi0g ICAgIGRlZiBtb2R1bGVfYnVpbGRfaW5mbyhzZWxmKToKLSAgICAgICAgICIiIlNob3cgaW5mb3Jt YXRpb24gYWJvdXQgYW4gTUJTIGJ1aWxkIiIiCi0tICAgICAgICBzZWxmLmNtZC5tb2R1bGVfYnVp bGRfaW5mbyhzZWxmLm1vZHVsZV9hcGlfdXJsLCBzZWxmLmFyZ3MuYnVpbGRfaWQpCi0rICAgICAg ICBzZWxmLnNldF9tb2R1bGVfYXBpX3VybCgpCi0rICAgICAgICBzZWxmLmNtZC5tb2R1bGVfYnVp bGRfaW5mbyhzZWxmLmFyZ3MuYnVpbGRfaWQpCi0gCi0gICAgIGRlZiBtb2R1bGVfYnVpbGRfbG9j YWwoc2VsZik6Ci0gICAgICAgICAiIiJCdWlsZCBhIG1vZHVsZSBsb2NhbGx5IHVzaW5nIG1icy1t YW5hZ2VyIiIiCi1AQCAtMjA3MiwxNCArMjExMiwxOCBAQCBzZWUgQVBJIEtFWSBzZWN0aW9uIG9m IGNvcHItY2xpKDEpIG1hbiBwYWdlLgotICAgICAgICAgICAgICAgICBhcGlfdXJsLnJzdHJpcCgn LycpLCBhcGlfdmVyc2lvbikKLSAgICAgICAgIHJldHVybiBzZWxmLl9tb2R1bGVfYXBpX3VybAot IAotKyAgICBkZWYgc2V0X21vZHVsZV9hcGlfdXJsKHNlbGYpOgotKyAgICAgICAgc2VsZi5jbWQu bW9kdWxlX2FwaV91cmwgPSBzZWxmLm1vZHVsZV9hcGlfdXJsCi0rCi0gICAgIGRlZiBtb2R1bGVf YnVpbGRfd2F0Y2goc2VsZik6Ci0gICAgICAgICAiIiJXYXRjaCBhbiBNQlMgYnVpbGQgZnJvbSB0 aGUgY29tbWFuZC1saW5lIiIiCi0gICAgICAgICBzZWxmLm1vZHVsZV93YXRjaF9idWlsZChbc2Vs Zi5hcmdzLmJ1aWxkX2lkXSkKLSAKLSAgICAgZGVmIG1vZHVsZV9vdmVydmlldyhzZWxmKToKLSAg ICAgICAgICIiIlNob3cgdGhlIG92ZXJ2aWV3IG9mIHRoZSBsYXRlc3QgYnVpbGRzIGluIHRoZSBN QlMiIiIKLSsgICAgICAgIHNlbGYuc2V0X21vZHVsZV9hcGlfdXJsKCkKLSAgICAgICAgIHNlbGYu Y21kLm1vZHVsZV9vdmVydmlldygKLS0gICAgICAgICAgICBzZWxmLm1vZHVsZV9hcGlfdXJsLCBz ZWxmLmFyZ3MubGltaXQsCi0rICAgICAgICAgICAgc2VsZi5hcmdzLmxpbWl0LAotICAgICAgICAg ICAgIGZpbmlzaGVkPShub3Qgc2VsZi5hcmdzLnVuZmluaXNoZWQpKQotIAotICAgICBkZWYgbW9k dWxlX3ZhbGlkYXRlX2NvbmZpZyhzZWxmKToKLUBAIC0yMTM0LDcgKzIxNzgsOCBAQCBzZWUgQVBJ IEtFWSBzZWN0aW9uIG9mIGNvcHItY2xpKDEpIG1hbiBwYWdlLgotICAgICAgICAgOnBhcmFtIGJ1 aWxkX2lkczogYSBsaXN0IG9mIG1vZHVsZSBidWlsZCBJRHMKLSAgICAgICAgIDp0eXBlIGJ1aWxk X2lkczogbGlzdFtpbnRdCi0gICAgICAgICAiIiIKLS0gICAgICAgIHNlbGYuY21kLm1vZHVsZV93 YXRjaF9idWlsZChzZWxmLm1vZHVsZV9hcGlfdXJsLCBidWlsZF9pZHMpCi0rICAgICAgICBzZWxm LnNldF9tb2R1bGVfYXBpX3VybCgpCi0rICAgICAgICBzZWxmLmNtZC5tb2R1bGVfd2F0Y2hfYnVp bGQoYnVpbGRfaWRzKQotIAotICAgICBkZWYgbmV3KHNlbGYpOgotICAgICAgICAgbmV3X2RpZmYg PSBzZWxmLmNtZC5uZXcoKQotZGlmZiAtLWdpdCBhL3JlcXVpcmVtZW50cy9mZWRvcmEtcHkyLnR4 dCBiL3JlcXVpcmVtZW50cy9mZWRvcmEtcHkyLnR4dAotaW5kZXggMGNmNzlkZS4uZTk3YzljOCAx MDA2NDQKLS0tLSBhL3JlcXVpcmVtZW50cy9mZWRvcmEtcHkyLnR4dAotKysrIGIvcmVxdWlyZW1l bnRzL2ZlZG9yYS1weTIudHh0Ci1AQCAtMSwxMCArMSwxMyBAQAotK2xpYm1vZHVsZW1kCi0gcHl0 aG9uMi1jY2NvbHV0aWxzCi0gcHl0aG9uMi1HaXRQeXRob24KLStweXRob24yLWdvYmplY3QtYmFz ZQotIHB5dGhvbjIta29qaQotIHB5dGhvbjItcHljdXJsCi0gcHl0aG9uLXNpeAotIHB5dGhvbjIt cnBtICAjIHJwbS1weXRob24gb3JpZ2luYWxseQotIHB5dGhvbjItcmVxdWVzdHMKLStQeVlBTUwK LSAjIHB5dGhvbjItb3BlbmlkYy1jbGllbnQgIyB1c2VkIGZvciBNQlMgT0lEQyBhdXRoZW50aWNh dGlvbgotICMgcHl0aG9uMi1yZXF1ZXN0cy1rZXJiZXJvcyAjIHVzZWQgZm9yIE1CUyBLZXJiZXJv cyBhdXRoZW50aWNhdGlvbgotIAotZGlmZiAtLWdpdCBhL3JlcXVpcmVtZW50cy9mZWRvcmEtcHkz LnR4dCBiL3JlcXVpcmVtZW50cy9mZWRvcmEtcHkzLnR4dAotaW5kZXggY2M5OTkxMi4uY2I3MTU0 OSAxMDA2NDQKLS0tLSBhL3JlcXVpcmVtZW50cy9mZWRvcmEtcHkzLnR4dAotKysrIGIvcmVxdWly ZW1lbnRzL2ZlZG9yYS1weTMudHh0Ci1AQCAtMSwxMCArMSwxMyBAQAotK2xpYm1vZHVsZW1kCi0g cHl0aG9uMy1jY2NvbHV0aWxzCi0gcHl0aG9uMy1HaXRQeXRob24KLStweXRob24zLWdvYmplY3Qt YmFzZQotIHB5dGhvbjMta29qaQotIHB5dGhvbjMtcHljdXJsCi0gcHl0aG9uMy1zaXgKLSBweXRo b24zLXJwbSAgIyBycG0tcHl0aG9uIG9yaWdpbmFsbHkKLSBweXRob24zLXJlcXVlc3RzCi0rcHl0 aG9uMy15YW1sCi0gIyBweXRob24zLW9wZW5pZGMtY2xpZW50ICMgdXNlZCBmb3IgTUJTIE9JREMg YXV0aGVudGljYXRpb24KLSAjIHB5dGhvbjMtcmVxdWVzdHMta2VyYmVyb3MgIyB1c2VkIGZvciBN QlMgS2VyYmVyb3MgYXV0aGVudGljYXRpb24KLSAKLWRpZmYgLS1naXQgYS9yZXF1aXJlbWVudHMv cHlwaS50eHQgYi9yZXF1aXJlbWVudHMvcHlwaS50eHQKLWluZGV4IDVkMzVmM2IuLmU0YzQzYmIg MTAwNjQ0Ci0tLS0gYS9yZXF1aXJlbWVudHMvcHlwaS50eHQKLSsrKyBiL3JlcXVpcmVtZW50cy9w eXBpLnR4dAotQEAgLTgsNiArOCw3IEBAIGtvamkgPj0gMS4xNQotIHB5Y3VybCA+PSA3LjE5Ci0g cmVxdWVzdHMKLSBzaXggPj0gMS45LjAKLStQeVlBTUwKLSAKLSAjIHJwbS1weS1pbnN0YWxsZXIK LSAjCi1kaWZmIC0tZ2l0IGEvdGVzdHMvdGVzdF9jbGkucHkgYi90ZXN0cy90ZXN0X2NsaS5weQot aW5kZXggZWEzNWFmZS4uNzQ1YTk3YyAxMDA2NDQKLS0tLSBhL3Rlc3RzL3Rlc3RfY2xpLnB5Ci0r KysgYi90ZXN0cy90ZXN0X2NsaS5weQotQEAgLTIzLDYgKzIzLDcgQEAgZnJvbSBzaXgubW92ZXMg aW1wb3J0IGh0dHBfY2xpZW50Ci0gCi0gaW1wb3J0IGdpdAotIGltcG9ydCBweXJwa2cuY2xpCi0r ZnJvbSBweXJwa2cgaW1wb3J0IFBZMjYKLSAKLSB0cnk6Ci0gICAgIGltcG9ydCBvcGVuaWRjX2Ns aWVudAotQEAgLTE5Nyw3ICsxOTgsNyBAQCBjbGFzcyBUZXN0Q29udGFpbmVyQnVpbGRXaXRoS29q aShDbGlUZXN0Q2FzZSk6Ci0gICAgICAgICAgICAgc2VsZi5jb250YWluZXJfYnVpbGRfa29qaV9w YXRjaGVyLnN0YXJ0KCkKLSAKLSAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgotLSAgICAgICAgc2Vs Zi5tb2NrX2NvbnRhaW5lcl9idWlsZF9rb2ppLnN0b3AoKQotKyAgICAgICAgc2VsZi5jb250YWlu ZXJfYnVpbGRfa29qaV9wYXRjaGVyLnN0b3AoKQotICAgICAgICAgc3VwZXIoVGVzdENvbnRhaW5l ckJ1aWxkV2l0aEtvamksIHNlbGYpLnRlYXJEb3duKCkKLSAKLSAgICAgZGVmIHRlc3RfdXNpbmdf a29qaXByb2ZpbGUoc2VsZik6Ci1AQCAtMjIzLDcgKzIyNCw4IEBAIGNsYXNzIFRlc3RDb250YWlu ZXJCdWlsZFdpdGhLb2ppKENsaVRlc3RDYXNlKToKLSAgICAgICAgICAgICBrb2ppcHJvZmlsZT0n a29qaScsCi0gICAgICAgICAgICAgYnVpbGRfY2xpZW50PXV0aWxzLmJ1aWxkX2NsaWVudCwKLSAg ICAgICAgICAgICBrb2ppX3Rhc2tfd2F0Y2hlcj1rb2ppX2NsaS5saWIud2F0Y2hfdGFza3MsCi0t ICAgICAgICAgICAgbm93YWl0PUZhbHNlCi0rICAgICAgICAgICAgbm93YWl0PUZhbHNlLAotKyAg ICAgICAgICAgIGZsYXRwYWs9RmFsc2UKLSAgICAgICAgICkKLSAKLSAgICAgZGVmIHRlc3Rfb3Zl cnJpZGVfdGFyZ2V0KHNlbGYpOgotQEAgLTI1MCw3ICsyNTIsOCBAQCBjbGFzcyBUZXN0Q29udGFp bmVyQnVpbGRXaXRoS29qaShDbGlUZXN0Q2FzZSk6Ci0gICAgICAgICAgICAga29qaXByb2ZpbGU9 J2tvamknLAotICAgICAgICAgICAgIGJ1aWxkX2NsaWVudD11dGlscy5idWlsZF9jbGllbnQsCi0g ICAgICAgICAgICAga29qaV90YXNrX3dhdGNoZXI9a29qaV9jbGkubGliLndhdGNoX3Rhc2tzLAot LSAgICAgICAgICAgIG5vd2FpdD1GYWxzZQotKyAgICAgICAgICAgIG5vd2FpdD1GYWxzZSwKLSsg ICAgICAgICAgICBmbGF0cGFrPUZhbHNlCi0gICAgICAgICApCi0gCi0gICAgIGRlZiB0ZXN0X3Vz aW5nX2RlcHJlY2F0ZWRfa29qaWNvbmZpZyhzZWxmKToKLUBAIC0yODYsNyArMjg5LDggQEAgY2xh c3MgVGVzdENvbnRhaW5lckJ1aWxkV2l0aEtvamkoQ2xpVGVzdENhc2UpOgotICAgICAgICAgICAg IGtvamlwcm9maWxlPU5vbmUsCi0gICAgICAgICAgICAgYnVpbGRfY2xpZW50PXV0aWxzLmJ1aWxk X2NsaWVudCwKLSAgICAgICAgICAgICBrb2ppX3Rhc2tfd2F0Y2hlcj1rb2ppX2NsaS5saWIud2F0 Y2hfdGFza3MsCi0tICAgICAgICAgICAgbm93YWl0PUZhbHNlCi0rICAgICAgICAgICAgbm93YWl0 PUZhbHNlLAotKyAgICAgICAgICAgIGZsYXRwYWs9RmFsc2UKLSAgICAgICAgICkKLSAKLSAgICAg ZGVmIHRlc3RfdXNlX2NvbnRhaW5lcl9idWlsZF9vd25fY29uZmlnKHNlbGYpOgotQEAgLTMwNCw2 ICszMDgsNDMgQEAgY2xhc3MgVGVzdENvbnRhaW5lckJ1aWxkV2l0aEtvamkoQ2xpVGVzdENhc2Up OgotICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgna29qaS1jb250YWluZXInLCBrd2FyZ3NbJ2tv amlwcm9maWxlJ10pCi0gICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdrb2ppJywga3dhcmdzWydi dWlsZF9jbGllbnQnXSkKLSAKLSsgICAgQHVuaXR0ZXN0LnNraXBJZigKLSsgICAgICAgIFBZMjYs Ci0rICAgICAgICAnU2tpcCBvbiBvbGQgUHl0aG9uIHZlcnNpb25zIHdoZXJlIGxpYm1vZHVsZW1k IGlzIG5vdCBhdmFpbGFibGUuJykKLSsgICAgQHBhdGNoKCdyZXF1ZXN0cy5nZXQnKQotKyAgICBk ZWYgdGVzdF9mbGF0cGFrKHNlbGYsIG1vY2tfZ2V0KToKLSsgICAgICAgIG1vY2tfcnYgPSBNb2Nr KCkKLSsgICAgICAgIG1vY2tfcnYub2sgPSBUcnVlCi0rICAgICAgICBtb2NrX3J2Lmpzb24ucmV0 dXJuX3ZhbHVlID0gewotKyAgICAgICAgICAgICdhdXRoX21ldGhvZCc6ICdvaWRjJywKLSsgICAg ICAgICAgICAnYXBpX3ZlcnNpb24nOiAyCi0rICAgICAgICB9Ci0rCi0rICAgICAgICBtb2NrX2dl dC5yZXR1cm5fdmFsdWUgPSBtb2NrX3J2Ci0rCi0rICAgICAgICBjbGlfY21kID0gWydycGtnJywg Jy0tcGF0aCcsIHNlbGYuY2xvbmVkX3JlcG9fcGF0aCwKLSsgICAgICAgICAgICAgICAgICAgJ2Zs YXRwYWstYnVpbGQnXQotKwotKyAgICAgICAgd2l0aCBwYXRjaCgnc3lzLmFyZ3YnLCBuZXc9Y2xp X2NtZCk6Ci0rICAgICAgICAgICAgY2xpID0gc2VsZi5uZXdfY2xpKCkKLSsgICAgICAgICAgICBj bGkuZmxhdHBha19idWlsZCgpCi0rCi0rICAgICAgICBzZWxmLm1vY2tfY29udGFpbmVyX2J1aWxk X2tvamkuYXNzZXJ0X2NhbGxlZF9vbmNlX3dpdGgoCi0rICAgICAgICAgICAgRmFsc2UsCi0rICAg ICAgICAgICAgb3B0cz17Ci0rICAgICAgICAgICAgICAgICdzY3JhdGNoJzogRmFsc2UsCi0rICAg ICAgICAgICAgICAgICdxdWlldCc6IEZhbHNlLAotKyAgICAgICAgICAgICAgICAnZ2l0X2JyYW5j aCc6ICdlbmctcmhlbC03JywKLSsgICAgICAgICAgICAgICAgJ2FyY2hlcyc6IE5vbmUsCi0rICAg ICAgICAgICAgfSwKLSsgICAgICAgICAgICBrb2ppY29uZmlnPU5vbmUsCi0rICAgICAgICAgICAg a29qaXByb2ZpbGU9J2tvamknLAotKyAgICAgICAgICAgIGJ1aWxkX2NsaWVudD11dGlscy5idWls ZF9jbGllbnQsCi0rICAgICAgICAgICAga29qaV90YXNrX3dhdGNoZXI9a29qaV9jbGkubGliLndh dGNoX3Rhc2tzLAotKyAgICAgICAgICAgIG5vd2FpdD1GYWxzZSwKLSsgICAgICAgICAgICBmbGF0 cGFrPVRydWUKLSsgICAgICAgICkKLSsKLSAKLSBjbGFzcyBUZXN0Q2xvZyhDbGlUZXN0Q2FzZSk6 Ci0gCi1kaWZmIC0tZ2l0IGEvdGVzdHMvdGVzdF9mbGF0cGFrX2J1aWxkLnB5IGIvdGVzdHMvdGVz dF9mbGF0cGFrX2J1aWxkLnB5Ci1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4u OTdhYjQ1NgotLS0tIC9kZXYvbnVsbAotKysrIGIvdGVzdHMvdGVzdF9mbGF0cGFrX2J1aWxkLnB5 Ci1AQCAtMCwwICsxLDMwNSBAQAotK2ltcG9ydCBvcwotK2ltcG9ydCBzdWJwcm9jZXNzCi0rZnJv bSB0ZXh0d3JhcCBpbXBvcnQgZGVkZW50Ci0rCi0rdHJ5OgotKyAgICBpbXBvcnQgdW5pdHRlc3Qy IGFzIHVuaXR0ZXN0Ci0rZXhjZXB0IEltcG9ydEVycm9yOgotKyAgICBpbXBvcnQgdW5pdHRlc3QK LSsKLStmcm9tIG1vY2sgaW1wb3J0IE1vY2ssIHBhdGNoCi0raW1wb3J0IHJlcXVlc3RzCi0rCi0r ZnJvbSBweXJwa2cgaW1wb3J0IFBZMjYKLStmcm9tIHV0aWxzIGltcG9ydCBDb21tYW5kVGVzdENh c2UKLSsKLStFT0dfTU9EVUxFTUQgPSAiIiIKLStkb2N1bWVudDogbW9kdWxlbWQKLSt2ZXJzaW9u OiAyCi0rZGF0YToKLSsgIG5hbWU6IGVvZwotKyAgc3RyZWFtOiBmMjgKLSsgIHZlcnNpb246IDIw MTcwNjI5MjEzNDI4Ci0rICBzdW1tYXJ5OiBFeWUgb2YgR05PTUUgQXBwbGljYXRpb24gTW9kdWxl Ci0rICBkZXNjcmlwdGlvbjogVGhlIEV5ZSBvZiBHTk9NRSBpbWFnZSB2aWV3ZXIgKGVvZykgaXMg dGhlIG9mZmljaWFsIGltYWdlIHZpZXdlciBmb3IKLSsgICAgdGhlIEdOT01FIGRlc2t0b3AuIEl0 IGNhbiB2aWV3IHNpbmdsZSBpbWFnZSBmaWxlcyBpbiBhIHZhcmlldHkgb2YgZm9ybWF0cywgYXMK LSsgICAgd2VsbCBhcyBsYXJnZSBpbWFnZSBjb2xsZWN0aW9ucy4KLSsgIGxpY2Vuc2U6Ci0rICAg IG1vZHVsZTogW01JVF0KLSsgIGRlcGVuZGVuY2llczoKLSsgIC0gYnVpbGRyZXF1aXJlczoKLSsg ICAgICBmbGF0cGFrLXJ1bnRpbWU6IFtmMjhdCi0rICAgIHJlcXVpcmVzOgotKyAgICAgIGZsYXRw YWstcnVudGltZTogW2YyOF0KLSsgIHByb2ZpbGVzOgotKyAgICBkZWZhdWx0OgotKyAgICAgIHJw bXM6IFtlb2ddCi0rICBjb21wb25lbnRzOgotKyAgICBycG1zOiB7fQotKyAgeG1kOgotKyAgICBt YnM6IE9NSVRURUQKLSsiIiIKLSsKLStGTEFUUEFLX1JVTlRJTUVfTU9EVUxFTUQgPSAiIiIKLStk b2N1bWVudDogbW9kdWxlbWQKLSt2ZXJzaW9uOiAyCi0rZGF0YToKLSsgIG5hbWU6IGZsYXRwYWst cnVudGltZQotKyAgc3RyZWFtOiBmMjgKLSsgIHZlcnNpb246IDIwMTcwNzAxMTUyMjA5Ci0rICBz dW1tYXJ5OiBGbGF0cGFrIFJ1bnRpbWUKLSsgIGRlc2NyaXB0aW9uOiBMaWJyYXJpZXMgYW5kIGRh dGEgZmlsZXMgc2hhcmVkIGJldHdlZW4gYXBwbGljYXRpb25zCi0rICBhcGk6Ci0rICAgIHJwbXM6 IFtsaWJyc3ZnMiwgZ25vbWUtdGhlbWVzLXN0YW5kYXJkLCBhYmF0dGlzLWNhbnRhcmVsbC1mb250 cywgcmVzdCwgeGtleWJvYXJkLWNvbmZpZywKLSsgICAgICBhZHdhaXRhLWN1cnNvci10aGVtZSwg cHl0aG9uMy1nb2JqZWN0LWJhc2UsIGpzb24tZ2xpYiwgemVuaXR5LCBnc2V0dGluZ3MtZGVza3Rv cC1zY2hlbWFzLAotKyAgICAgIGdsaWItbmV0d29ya2luZywgZ29iamVjdC1pbnRyb3NwZWN0aW9u LCBnb2JqZWN0LWludHJvc3BlY3Rpb24tZGV2ZWwsIGZsYXRwYWstcnBtLW1hY3JvcywKLSsgICAg ICBweXRob24zLWdvYmplY3QsIGd2ZnMtY2xpZW50LCBjb2xvcmQtbGlicywgZmxhdHBhay1ydW50 aW1lLWNvbmZpZywgaHVuc3BlbGwtZW4tR0IsCi0rICAgICAgbGlic291cCwgZ2xpYjItZGV2ZWws IGh1bnNwZWxsLWVuLVVTLCBhdC1zcGkyLWNvcmUsIGd0azMsIGxpYlh0c3QsIGFkd2FpdGEtZ3Rr Mi10aGVtZSwKLSsgICAgICBsaWJub3RpZnksIGFkd2FpdGEtaWNvbi10aGVtZSwgbGliZ2NhYjEs IGxpYnhrYmNvbW1vbiwgbGliYXBwc3RyZWFtLWdsaWIsIHB5dGhvbjMtY2Fpcm8sCi0rICAgICAg Z25vbWUtZGVza3RvcDMsIGxpYmVwb3h5LCBodW5zcGVsbCwgbGliZ3VzYiwgZ2xpYjIsIGVuY2hh bnQsIGF0LXNwaTItYXRrXQotKyAgZGVwZW5kZW5jaWVzOgotKyAgLSBidWlsZHJlcXVpcmVzOgot KyAgICAgIHBsYXRmb3JtOiBbZjI4XQotKyAgICByZXF1aXJlczoKLSsgICAgICBwbGF0Zm9ybTog W2YyOF0KLSsgIGxpY2Vuc2U6Ci0rICAgIG1vZHVsZTogW01JVF0KLSsgIHByb2ZpbGVzOgotKyAg ICBidWlsZHJvb3Q6Ci0rICAgICAgcnBtczogW2ZsYXRwYWstcnBtLW1hY3JvcywgZmxhdHBhay1y dW50aW1lLWNvbmZpZ10KLSsgICAgcnVudGltZToKLSsgICAgICBycG1zOiBbbGlid2F5bGFuZC1z ZXJ2ZXIsIGxpYnJzdmcyLCBsaWJYMTEsIGxpYmZkaXNrLCBhZHdhaXRhLWN1cnNvci10aGVtZSwK LSsgICAgICAgIGxpYnNtYXJ0Y29scywgcG9wdCwgZ2RibSwgbGliZ2x2bmQsIG9wZW5zc2wtbGli cywgZ29iamVjdC1pbnRyb3NwZWN0aW9uLCBzeXN0ZW1kLAotKyAgICAgICAgbmN1cnNlcy1iYXNl LCBsY21zMiwgbGlicGNhcCwgY3J5cHRvLXBvbGljaWVzLCBmb250Y29uZmlnLCBsaWJhY2wsIGxp YndheWxhbmQtY3Vyc29yLAotKyAgICAgICAgbGlic2VjY29tcCwgZ21wLCBqYmlna2l0LWxpYnMs IGJ6aXAyLWxpYnMsIGxpYnVuaXN0cmluZywgZnJlZXR5cGUsIG5ldHRsZSwKLSsgICAgICAgIGxp YmlkbiwgcHl0aG9uMy1zaXgsIGd0azIsIGd0azMsIGNhLWNlcnRpZmljYXRlcywgbGliZHJtLCBy ZXN0LCBsem8sIGxpYmNhcCwKLSsgICAgICAgIGdudXRscywgcGFuZ28sIHV0aWwtbGludXgsIGJh c2VzeXN0ZW0sIHAxMS1raXQsIGxpYmdjYWIxLCBpcHRhYmxlcy1saWJzLCBkYnVzLAotKyAgICAg ICAgcHl0aG9uMy1nb2JqZWN0LWJhc2UsIGNyeXB0c2V0dXAtbGlicywga3JiNS1saWJzLCBzcWxp dGUtbGlicywga21vZC1saWJzLAotKyAgICAgICAgbGlibW9kbWFuLCBsaWJhcmNoaXZlLCBlbmNo YW50LCBsaWJYZml4ZXMsIHN5c3RlbWQtbGlicywgc2hhcmVkLW1pbWUtaW5mbywKLSsgICAgICAg IGNvcmV1dGlscy1jb21tb24sIGxpYmdsdm5kLWdseCwgYWJhdHRpcy1jYW50YXJlbGwtZm9udHMs IGNhaXJvLCBhdWRpdC1saWJzLAotKyAgICAgICAgbGlid2F5bGFuZC1jbGllbnQsIGxpYnBjaWFj Y2Vzcywgc2VkLCBsaWJnY2MsIGxpYlhyZW5kZXIsIGpzb24tZ2xpYiwgbGlieHNobWZlbmNlLAot KyAgICAgICAgZ2xpYi1uZXR3b3JraW5nLCBsaWJkYiwgZmVkb3JhLW1vZHVsYXItcmVwb3MsIGtl eXV0aWxzLWxpYnMsIGh3ZGF0YSwgZ2xpYmMsCi0rICAgICAgICBsaWJwcm94eSwgcHl0aG9uMy1w eXBhcnNpbmcsIGRldmljZS1tYXBwZXIsIGxpYmdwZy1lcnJvciwgc3lzdGVtLXB5dGhvbiwgc2hh ZG93LXV0aWxzLAotKyAgICAgICAgbGliWHRzdCwgbGlic3RlbW1lciwgZGJ1cy1saWJzLCBsaWJw bmcsIGNhaXJvLWdvYmplY3QsIGxpYlhhdSwgcGNyZSwgcHl0aG9uMy1wYWNrYWdpbmcsCi0rICAg ICAgICBhdC1zcGkyLWNvcmUsIGdhd2ssIG1lc2EtbGliZ2xhcGksIGxpYlhpbmVyYW1hLCBhZHdh aXRhLWd0azItdGhlbWUsIGxpYlgxMS1jb21tb24sCi0rICAgICAgICBkZXZpY2UtbWFwcGVyLWxp YnMsIHB5dGhvbjMtYXBwZGlycywgbGliWHJhbmRyLCBiYXNoLCBnbGliYy1jb21tb24sIGxpYnNl bGludXgsCi0rICAgICAgICBlbGZ1dGlscy1saWJzLCBsaWJ4a2Jjb21tb24sIGxpYmpwZWctdHVy Ym8sIGxpYnV1aWQsIGF0aywgYWNsLCBsaWJtb3VudCwgbHo0LWxpYnMsCi0rICAgICAgICBuY3Vy c2VzLCBsaWJndXNiLCBnbGliMiwgcHl0aG9uMywgbGlicHdxdWFsaXR5LCBhdC1zcGkyLWF0aywg bGliYXR0ciwgbGliY3J5cHQsCi0rICAgICAgICBnbm9tZS10aGVtZXMtc3RhbmRhcmQsIGxpYnRp ZmYsIGhhcmZidXp6LCBsaWJzdGRjKyssIGxpYlhjb21wb3NpdGUsIHhrZXlib2FyZC1jb25maWcs Ci0rICAgICAgICBsaWJ4Y2IsIGxpYm5vdGlmeSwgc3lzdGVtZC1wYW0sIHJlYWRsaW5lLCBsaWJY eGY4NnZtLCBweXRob24zLWNhaXJvLCBndGstdXBkYXRlLWljb24tY2FjaGUsCi0rICAgICAgICBw eXRob24zLXBpcCwgbWVzYS1saWJFR0wsIHplbml0eSwgcHl0aG9uMy1nb2JqZWN0LCBsaWJYY3Vy c29yLCB0emRhdGEsIGd2ZnMtY2xpZW50LAotKyAgICAgICAgbGlidmVydG8sIGxpYmJsa2lkLCBj cmFja2xpYiwgbGlidXNieCwgbGliY3JvY28sIGxpYmRhdHJpZSwgZ2RrLXBpeGJ1ZjIsIGxpYlhp LAotKyAgICAgICAgcXJlbmNvZGUtbGlicywgcHl0aG9uMy1saWJzLCBncmFwaGl0ZTIsIG1lc2Et bGlid2F5bGFuZC1lZ2wsIG1lc2EtbGliR0wsIHBpeG1hbiwKLSsgICAgICAgIGxpYlhleHQsIGds aWJjLWFsbC1sYW5ncGFja3MsIGluZm8sIGdyZXAsIGZlZG9yYS1tb2R1bGFyLXJlbGVhc2UsIHNl dHVwLCB6bGliLAotKyAgICAgICAgbGlidGFzbjEsIGxpYmVwb3h5LCBodW5zcGVsbCwgbGlic2Vt YW5hZ2UsIHB5dGhvbjMtc2V0dXB0b29scywgZm9udHBhY2thZ2VzLWZpbGVzeXN0ZW0sCi0rICAg ICAgICBsaWJzaWdzZWd2LCBoaWNvbG9yLWljb24tdGhlbWUsIGxpYnhtbDIsIGV4cGF0LCBsaWJn Y3J5cHQsIGVtYWNzLWZpbGVzeXN0ZW0sCi0rICAgICAgICBnc2V0dGluZ3MtZGVza3RvcC1zY2hl bWFzLCBjaGtjb25maWcsIHh6LWxpYnMsIG1lc2EtbGliZ2JtLCBsaWJ0aGFpLCBjb3JldXRpbHMs Ci0rICAgICAgICBjb2xvcmQtbGlicywgbGliY2FwLW5nLCBmbGF0cGFrLXJ1bnRpbWUtY29uZmln LCBlbGZ1dGlscy1saWJlbGYsIGh1bnNwZWxsLWVuLUdCLAotKyAgICAgICAgbGlic291cCwgcGFt LCBodW5zcGVsbC1lbi1VUywgamFzcGVyLWxpYnMsIHAxMS1raXQtdHJ1c3QsIGF2YWhpLWxpYnMs IGVsZnV0aWxzLWRlZmF1bHQteWFtYS1zY29wZSwKLSsgICAgICAgIGxpYnV0ZW1wdGVyLCBhZHdh aXRhLWljb24tdGhlbWUsIG5jdXJzZXMtbGlicywgbGliaWRuMiwgc3lzdGVtLXB5dGhvbi1saWJz LAotKyAgICAgICAgbGliZmZpLCBsaWJYZGFtYWdlLCBsaWJnbHZuZC1lZ2wsIGxpYlhmdCwgY3Vw cy1saWJzLCB1c3RyLCBsaWJjb21fZXJyLCBsaWJhcHBzdHJlYW0tZ2xpYiwKLSsgICAgICAgIGdu b21lLWRlc2t0b3AzLCBnZGstcGl4YnVmMi1tb2R1bGVzLCBsaWJzZXBvbCwgZmlsZXN5c3RlbSwg Z3ppcCwgbXBmcl0KLSsgICAgc2RrOgotKyAgICAgIHJwbXM6IFtnY2NdCi0rICBjb21wb25lbnRz OgotKyAgICBycG1zOiB7fQotKyAgeG1kOgotKyAgICBmbGF0cGFrOgotKyAgICAgICMgVGhpcyBn aXZlcyBpbmZvcm1hdGlvbiBhYm91dCBob3cgdG8gbWFwIHRoaXMgbW9kdWxlIGludG8gRmxhdHBh ayB0ZXJtcwotKyAgICAgICMgdGhpcyBpcyB1c2VkIHdoZW4gYnVpbGRpbmcgYXBwbGljYXRpb24g bW9kdWxlcyBhZ2FpbnN0IHRoaXMgbW9kdWxlLgotKyAgICAgIGJyYW5jaDogZjI4Ci0rICAgICAg cnVudGltZXM6ICMgS2V5cyBhcmUgcHJvZmlsZSBuYW1lcwotKyAgICAgICAgcnVudGltZToKLSsg ICAgICAgICAgaWQ6IG9yZy5mZWRvcmFwcm9qZWN0LlBsYXRmb3JtCi0rICAgICAgICAgIHNkazog b3JnLmZlZG9yYXByb2plY3QuU2RrCi0rICAgICAgICBzZGs6Ci0rICAgICAgICAgIGlkOiBvcmcu ZmVkb3JhcHJvamVjdC5TZGsKLSsgICAgICAgICAgcnVudGltZTogb3JnLmZlZG9yYXByb2plY3Qu UGxhdGZvcm0KLSsgICAgbWJzOiBPTUlUVEVECi0rIiIiICAjIG5vcWEKLSsKLStVTkVYUEFOREVE X01PRFVMRU1EID0gIiIiCi0rZG9jdW1lbnQ6IG1vZHVsZW1kCi0rdmVyc2lvbjogMgotK2RhdGE6 Ci0rICBuYW1lOiBub2RlcHMKLSsgIHN0cmVhbTogZjI4Ci0rICB2ZXJzaW9uOiAyMDE4MTIzNDU2 Nzg5MAotKyAgc3VtbWFyeTogTm8gZGVwZW5kZW5jaWVzCi0rICBkZXNjcmlwdGlvbjogVGhpcyBt b2R1bGUgaGFzIG5vIGRlcHMKLSsgIGxpY2Vuc2U6Ci0rICAgIG1vZHVsZTogW01JVF0KLSsgIGRl cGVuZGVuY2llczoKLSsgIC0gYnVpbGRyZXF1aXJlczoKLSsgICAgICBwbGF0Zm9ybTogW2YyNywg ZjI4XQotKyAgICByZXF1aXJlczoKLSsgICAgICBwbGF0Zm9ybTogW2YyNywgZjI4XQotKyAgY29t cG9uZW50czoKLSsgICAgcnBtczoge30KLSsiIiIKLSsKLStOT0RFUFNfTU9EVUxFTUQgPSAiIiIK LStkb2N1bWVudDogbW9kdWxlbWQKLSt2ZXJzaW9uOiAyCi0rZGF0YToKLSsgIG5hbWU6IG5vZGVw cwotKyAgc3RyZWFtOiBmMjgKLSsgIHZlcnNpb246IDIwMTgxMjM0NTY3ODkwCi0rICBzdW1tYXJ5 OiBObyBkZXBlbmRlbmNpZXMKLSsgIGRlc2NyaXB0aW9uOiBUaGlzIG1vZHVsZSBoYXMgbm8gZGVw cwotKyAgbGljZW5zZToKLSsgICAgbW9kdWxlOiBbTUlUXQotKyAgZGVwZW5kZW5jaWVzOiBbXQot KyAgY29tcG9uZW50czoKLSsgICAgcnBtczoge30KLSsiIiIKLSsKLStCVUlMRFMgPSB7Ci0rICAg ICdlb2c6ZjI4JzogWwotKyAgICAgICAgeydtb2R1bGVtZCc6IEVPR19NT0RVTEVNRH0KLSsgICAg XSwKLSsgICAgJ2VvZzpmMjg6MjAxNzA2MjkyMTM0MjgnOiBbCi0rICAgICAgICB7J21vZHVsZW1k JzogRU9HX01PRFVMRU1EfQotKyAgICBdLAotKyAgICAnZmxhdHBhay1ydW50aW1lOmYyOCc6IFsK LSsgICAgICAgIHsnbW9kdWxlbWQnOiBGTEFUUEFLX1JVTlRJTUVfTU9EVUxFTUR9Ci0rICAgIF0s Ci0rICAgICdiYWQtbW9kdWxlbWQ6ZjI4JzogWwotKyAgICAgICAgeydtb2R1bGVtZCc6ICJCTEFI In0KLSsgICAgXSwKLSsgICAgJ3VuZXhwYW5kZWQ6ZjI4JzogWwotKyAgICAgICAgeydtb2R1bGVt ZCc6IFVORVhQQU5ERURfTU9EVUxFTUR9Ci0rICAgIF0sCi0rICAgICdub2RlcHM6ZjI4JzogWwot KyAgICAgICAgeydtb2R1bGVtZCc6IE5PREVQU19NT0RVTEVNRH0KLSsgICAgXSwKLSt9Ci0rCi0r Ci0rQHVuaXR0ZXN0LnNraXBJZigKLSsgICAgUFkyNiwKLSsgICAgJ1NraXAgb24gb2xkIFB5dGhv biB2ZXJzaW9ucyB3aGVyZSBsaWJtb2R1bGVtZCBpcyBub3QgYXZhaWxhYmxlLicpCi0rY2xhc3Mg RmxhdHBha0J1aWxkQ2FzZShDb21tYW5kVGVzdENhc2UpOgotKyAgICBkZWYgc2V0X2NvbnRhaW5l cl9tb2R1bGVzKHNlbGYsIGNvbnRhaW5lcl9tb2R1bGVzKToKLSsgICAgICAgIHdpdGggb3Blbihv cy5wYXRoLmpvaW4oc2VsZi5yZXBvX3BhdGgsICdjb250YWluZXIueWFtbCcpLCAndycpIGFzIGY6 Ci0rICAgICAgICAgICAgZi53cml0ZShkZWRlbnQoIiIiXAotKyAgICAgICAgICAgICAgICBjb21w b3NlOgotKyAgICAgICAgICAgICAgICAgICAgbW9kdWxlczogezB9Ci0rICAgICAgICAgICAgICAg ICIiIi5mb3JtYXQoY29udGFpbmVyX21vZHVsZXMpKSkKLSsgICAgICAgIGdpdF9jbWRzID0gWwot KyAgICAgICAgICAgIFsnZ2l0JywgJ2FkZCcsICdjb250YWluZXIueWFtbCddLAotKyAgICAgICAg ICAgIFsnZ2l0JywgJ2NvbW1pdCcsICctbScsICdVcGRhdGUgY29udGFpbmVyLnlhbWwnXSwKLSsg ICAgICAgIF0KLSsgICAgICAgIGZvciBjbWQgaW4gZ2l0X2NtZHM6Ci0rICAgICAgICAgICAgc2Vs Zi5ydW5fY21kKGNtZCwgY3dkPXNlbGYucmVwb19wYXRoLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQotKyAg ICAgICAgZ2l0X2NtZHMgPSBbCi0rICAgICAgICAgICAgWydnaXQnLCAnZmV0Y2gnLCAnb3JpZ2lu J10sCi0rICAgICAgICAgICAgWydnaXQnLCAncmVzZXQnLCAnLS1oYXJkJywgJ29yaWdpbi9tYXN0 ZXInXSwKLSsgICAgICAgIF0KLSsgICAgICAgIGZvciBjbWQgaW4gZ2l0X2NtZHM6Ci0rICAgICAg ICAgICAgc2VsZi5ydW5fY21kKGNtZCwgY3dkPXNlbGYuY2xvbmVkX3JlcG9fcGF0aCwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwgc3RkZXJyPXN1YnBy b2Nlc3MuUElQRSkKLSsKLSsgICAgZGVmIHNldFVwKHNlbGYpOgotKyAgICAgICAgc3VwZXIoRmxh dHBha0J1aWxkQ2FzZSwgc2VsZikuc2V0VXAoKQotKwotKyAgICAgICAgc2VsZi5jbWQgPSBzZWxm Lm1ha2VfY29tbWFuZHMoKQotKyAgICAgICAgc2VsZi5jbWQubW9kdWxlX2FwaV91cmwgPSAiaHR0 cHM6Ly9tYnMuZXhhbXBsZS5jb20vbW9kdWxlLWJ1aWxkLXNlcnZpY2UvMS8iCi0rCi0rICAgICAg ICBzZWxmLnJlcXVlc3RzX2dldF9wID0gcGF0Y2goJ3JlcXVlc3RzLmdldCcpCi0rICAgICAgICBz ZWxmLm1vY2tfcmVxdWVzdHNfZ2V0ID0gc2VsZi5yZXF1ZXN0c19nZXRfcC5zdGFydCgpCi0rCi0r ICAgICAgICBkZWYgbW9ja19nZXQodXJsLCBwYXJhbXM9Tm9uZSwgdGltZW91dD1Ob25lKToKLSsg ICAgICAgICAgICBuc3ZjID0gcGFyYW1zWyduc3ZjJ10KLSsgICAgICAgICAgICBkZWwgcGFyYW1z Wyduc3ZjJ10KLSsgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhwYXJhbXMsIHsKLSsgICAg ICAgICAgICAgICAgJ29yZGVyX2Rlc2NfYnknOiAndmVyc2lvbicsCi0rICAgICAgICAgICAgICAg ICdwZXJfcGFnZSc6IDEKLSsgICAgICAgICAgICB9KQotKwotKyAgICAgICAgICAgIHJlc3BvbnNl ID0gTW9jayhyZXF1ZXN0cy5SZXNwb25zZSkKLSsgICAgICAgICAgICByZXNwb25zZS5vayA9IFRy dWUKLSsgICAgICAgICAgICByZXNwb25zZS5qc29uLnJldHVybl92YWx1ZSA9IHsnaXRlbXMnOiBC VUlMRFMuZ2V0KG5zdmMsIFtdKX0KLSsKLSsgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UKLSsK LSsgICAgICAgIHNlbGYubW9ja19yZXF1ZXN0c19nZXQuc2lkZV9lZmZlY3QgPSBtb2NrX2dldAot KwotKyAgICAgICAgc2VsZi5sb2FkX2tyYl91c2VyX3AgPSBwYXRjaCgncHlycGtnLkNvbW1hbmRz Ll9sb2FkX2tyYl91c2VyJykKLSsgICAgICAgIHNlbGYubW9ja19sb2FkX2tyYl91c2VyID0gc2Vs Zi5sb2FkX2tyYl91c2VyX3Auc3RhcnQoKQotKwotKyAgICAgICAgc2Vzc2lvbiA9IE1vY2soKQot KyAgICAgICAgc2VsZi5rb2ppc2Vzc2lvbiA9IHNlc3Npb24KLSsgICAgICAgIHNlc3Npb24uc3lz dGVtLmxpc3RNZXRob2RzLnJldHVybl92YWx1ZSA9IFsnYnVpbGRDb250YWluZXInXQotKwotKyAg ICAgICAgZGVmIGxvYWRfa29qaXNlc3Npb24oc2VsZik6Ci0rICAgICAgICAgICAgc2VsZi5fa29q aXNlc3Npb24gPSBzZXNzaW9uCi0rCi0rICAgICAgICBzZWxmLmxvYWRfa29qaXNlc3Npb25fcCA9 IHBhdGNoKCdweXJwa2cuQ29tbWFuZHMubG9hZF9rb2ppc2Vzc2lvbicsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldz1sb2FkX2tvamlzZXNzaW9uKQotKyAgICAg ICAgc2VsZi5tb2NrX2xvYWRfa29qaXNlc3Npb24gPSBzZWxmLmxvYWRfa29qaXNlc3Npb25fcC5z dGFydCgpCi0rCi0rICAgICAgICBzZXNzaW9uLmdldEJ1aWxkVGFyZ2V0LnJldHVybl92YWx1ZSA9 IHsnZGVzdF90YWcnOiAnZjI4LWZsYXRwYWsnfQotKyAgICAgICAgc2Vzc2lvbi5nZXRUYWcucmV0 dXJuX3ZhbHVlID0geydsb2NrZWQnOiBGYWxzZX0KLSsKLSsgICAgZGVmIHRlYXJEb3duKHNlbGYp OgotKyAgICAgICAgc2VsZi5yZXF1ZXN0c19nZXRfcC5zdG9wKCkKLSsgICAgICAgIHNlbGYubG9h ZF9rcmJfdXNlcl9wLnN0b3AoKQotKyAgICAgICAgc2VsZi5sb2FkX2tvamlzZXNzaW9uX3Auc3Rv cCgpCi0rCi0rICAgICAgICBzdXBlcihGbGF0cGFrQnVpbGRDYXNlLCBzZWxmKS50ZWFyRG93bigp Ci0rCi0rICAgIGRlZiB0ZXN0X2ZpbmRfdGFyZ2V0KHNlbGYpOgotKyAgICAgICAgc2VsZi5zZXRf Y29udGFpbmVyX21vZHVsZXMoWydlb2c6ZjI4J10pCi0rICAgICAgICBhc3NlcnQgc2VsZi5jbWQu ZmxhdHBha19idWlsZF90YXJnZXQgPT0gJ2YyOC1mbGF0cGFrLWNhbmRpZGF0ZScKLSsKLSsgICAg ZGVmIHRlc3RfZmluZF90YXJnZXRfdmVyc2lvbihzZWxmKToKLSsgICAgICAgIHNlbGYuc2V0X2Nv bnRhaW5lcl9tb2R1bGVzKFsnZW9nOmYyODoyMDE3MDYyOTIxMzQyOCddKQotKyAgICAgICAgYXNz ZXJ0IHNlbGYuY21kLmZsYXRwYWtfYnVpbGRfdGFyZ2V0ID09ICdmMjgtZmxhdHBhay1jYW5kaWRh dGUnCi0rCi0rICAgIGRlZiBtb2R1bGVfZmFpbHVyZShzZWxmLCBjb250YWluZXJfbW9kdWxlcywg ZXhjZXB0aW9uX3N0cik6Ci0rICAgICAgICBpZiBjb250YWluZXJfbW9kdWxlcyBpcyBub3QgTm9u ZToKLSsgICAgICAgICAgICBzZWxmLnNldF9jb250YWluZXJfbW9kdWxlcyhjb250YWluZXJfbW9k dWxlcykKLSsgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoRXhjZXB0aW9uKSBhcyBlOgot KyAgICAgICAgICAgIHNlbGYuY21kLmxvYWRfZmxhdHBha19idWlsZF90YXJnZXQoKQotKyAgICAg ICAgc2VsZi5hc3NlcnRJbihleGNlcHRpb25fc3RyLCBzdHIoZS5leGNlcHRpb24pKQotKwotKyAg ICBkZWYgdGVzdF9maW5kX3RhcmdldF9ub19jb250YWluZXJfeWFtbChzZWxmKToKLSsgICAgICAg IHNlbGYubW9kdWxlX2ZhaWx1cmUoTm9uZSwgIkNhbm5vdCBmaW5kICdjb250YWluZXIueWFtbCci KQotKwotKyAgICBkZWYgdGVzdF9maW5kX3RhcmdldF9ub19tb2R1bGVzKHNlbGYpOgotKyAgICAg ICAgc2VsZi5tb2R1bGVfZmFpbHVyZShbXSwgIk5vIG1vZHVsZXMgbGlzdGVkIGluICdjb250YWlu ZXIueWFtbCciKQotKwotKyAgICBkZWYgdGVzdF9maW5kX3RhcmdldF9tdWx0aXBsZV9tb2R1bGVz KHNlbGYpOgotKyAgICAgICAgc2VsZi5tb2R1bGVfZmFpbHVyZShbJ2VvZzpmMjgnLCAnZm9vOmYy OCddLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTXVsdGlwbGUgbW9kdWxlcyBsaXN0 ZWQgaW4gJ2NvbnRhaW5lci55YW1sJyIpCi0rCi0rICAgIGRlZiB0ZXN0X2ZpbmRfdGFyZ2V0X2Jh ZF9uc3Yoc2VsZik6Ci0rICAgICAgICBzZWxmLm1vZHVsZV9mYWlsdXJlKFsnTk9UX0FfTU9EVUxF J10sICJzaG91bGQgYmUgTkFNRTpTVFJFQU1bOlZFUlNJT05dIikKLSsKLSsgICAgZGVmIHRlc3Rf ZmluZF90YXJnZXRfbm9fYnVpbGRzKHNlbGYpOgotKyAgICAgICAgc2VsZi5tb2R1bGVfZmFpbHVy ZShbJ2VvZzpmMSddLCAiQ2Fubm90IGZpbmQgYW55IGJ1aWxkcyBmb3IgbW9kdWxlIikKLSsKLSsg ICAgZGVmIHRlc3RfZmluZF90YXJnZXRfYmFkX21vZHVsZW1kKHNlbGYpOgotKyAgICAgICAgc2Vs Zi5tb2R1bGVfZmFpbHVyZShbJ2JhZC1tb2R1bGVtZDpmMjgnXSwgIkZhaWxlZCB0byBsb2FkIG1v ZHVsZW1kIikKLSsKLSsgICAgZGVmIHRlc3RfZmluZF90YXJnZXRfdW5leHBlY3RlZChzZWxmKToK LSsgICAgICAgIHNlbGYubW9kdWxlX2ZhaWx1cmUoWyd1bmV4cGFuZGVkOmYyOCddLCAic3RyZWFt IGxpc3QgZm9yICdwbGF0Zm9ybScgaXMgbm90IGV4cGFuZGVkIikKLSsKLSsgICAgZGVmIHRlc3Rf ZmluZF90YXJnZXRfbm9fcGxhdGZvcm0oc2VsZik6Ci0rICAgICAgICBzZWxmLm1vZHVsZV9mYWls dXJlKFsnbm9kZXBzOmYyOCddLCAiVW5hYmxlIHRvIGZpbmQgJ3BsYXRmb3JtJyBtb2R1bGUgaW4g dGhlIGRlcGVuZGVuY2llcyIpCi0rCi0rICAgIGRlZiB0ZXN0X2ZsYXRwYWtfYnVpbGQoc2VsZik6 Ci0rICAgICAgICBzZWxmLnNldF9jb250YWluZXJfbW9kdWxlcyhbJ2VvZzpmMjgnXSkKLSsgICAg ICAgIHNlbGYuY21kLmNvbnRhaW5lcl9idWlsZF9rb2ppKG5vd2FpdD1UcnVlLCBmbGF0cGFrPVRy dWUpCi0rCi0rICAgICAgICBzZXNzaW9uID0gc2VsZi5rb2ppc2Vzc2lvbgotKyAgICAgICAgc2Vz c2lvbi5nZXRCdWlsZFRhcmdldC5hc3NlcnRfY2FsbGVkX3dpdGgoJ2YyOC1mbGF0cGFrLWNhbmRp ZGF0ZScpCi0rICAgICAgICBzZXNzaW9uLmdldFRhZy5hc3NlcnRfY2FsbGVkX3dpdGgoJ2YyOC1m bGF0cGFrJykKLSsKLSsgICAgICAgIHNlc3Npb24uYnVpbGRDb250YWluZXIuYXNzZXJ0X2NhbGxl ZCgpCi0rICAgICAgICBhcmdzLCBrd2FyZ3MgPSBzZXNzaW9uLmJ1aWxkQ29udGFpbmVyLmNhbGxf YXJncwotKyAgICAgICAgc291cmNlLCBjb250YWluZXJfdGFyZ2V0LCB0YXNraW5mbyA9IGFyZ3MK LSsKLSsgICAgICAgIGFzc2VydCBjb250YWluZXJfdGFyZ2V0ID09ICdmMjgtZmxhdHBhay1jYW5k aWRhdGUnCgpkaWZmIC0tZ2l0IGEvcmVtb3ZlLWtvamktYW5kLXJwbS1weS1pbnN0YWxsZXItZnJv bS1yZXF1aXJlcy5wYXRjaCBiL3JlbW92ZS1rb2ppLWFuZC1ycG0tcHktaW5zdGFsbGVyLWZyb20t cmVxdWlyZXMucGF0Y2gKaW5kZXggYjMyNTRkMy4uMWExMGJlOSAxMDA2NDQKLS0tIGEvcmVtb3Zl LWtvamktYW5kLXJwbS1weS1pbnN0YWxsZXItZnJvbS1yZXF1aXJlcy5wYXRjaAorKysgYi9yZW1v dmUta29qaS1hbmQtcnBtLXB5LWluc3RhbGxlci1mcm9tLXJlcXVpcmVzLnBhdGNoCkBAIC0xLDcg KzEsOSBAQAotLS0tIHJwa2ctMS41NC9zZXR1cC5weS5vcmlnCTIwMTgtMDUtMjEgMTI6MzY6MDku NDgxODk4OTM1ICswODAwCi0rKysgcnBrZy0xLjU0L3NldHVwLnB5CTIwMTgtMDUtMjEgMTI6Mzg6 MjcuMjQ2Nzc4OTY5ICswODAwCi1AQCAtNDYsNiArNDYsMTEgQEAKLSAgICAgICAgICd1bml0dGVz dDInCitkaWZmIC0tZ2l0IGEvc2V0dXAucHkgYi9zZXR1cC5weQoraW5kZXggY2U4NmIwYi4uNDQ5 MDcxMiAxMDA3NTUKKy0tLSBhL3NldHVwLnB5CisrKysgYi9zZXR1cC5weQorQEAgLTUwLDYgKzUw LDExIEBAIGVsc2U6CisgICAgICAgICAnUHlHT2JqZWN0JywKICAgICAgXQogIAogK2luc3RhbGxf cmVxdWlyZXMgPSBbCgpkaWZmIC0tZ2l0IGEvcnBrZy5zcGVjIGIvcnBrZy5zcGVjCmluZGV4IDcy YmJiYzQuLmU5MTNlZGQgMTAwNjQ0Ci0tLSBhL3Jwa2cuc3BlYworKysgYi9ycGtnLnNwZWMKQEAg LTMsMTQgKzMsMTQgQEAKICV7IT9fX3B5dGhvbjI6ICVnbG9iYWwgX19weXRob24yICV7X19weXRo b259fQogCiBOYW1lOiAgICAgICAgICAgcnBrZwotVmVyc2lvbjogICAgICAgIDEuNTYKK1ZlcnNp b246ICAgICAgICAxLjU3CiBSZWxlYXNlOiAgICAgICAgMiV7P2Rpc3R9CiAKIFN1bW1hcnk6ICAg ICAgICBQeXRob24gbGlicmFyeSBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBycG0rZ2l0CiBMaWNlbnNl OiAgICAgICAgR1BMdjIrIGFuZCBMR1BMdjIKIFVSTDogICAgICAgICAgICBodHRwczovL3BhZ3Vy ZS5pby9ycGtnCi1Tb3VyY2UwOiAgICAgICAgaHR0cHM6Ly9wYWd1cmUuaW8vcmVsZWFzZXMvcnBr Zy8le25hbWV9LSV7dmVyc2lvbn0udGFyLmd6CiBCdWlsZEFyY2g6ICAgICAgbm9hcmNoCitTb3Vy Y2UwOiAgICAgICAgaHR0cHM6Ly9wYWd1cmUuaW8vcmVsZWFzZXMvcnBrZy8le25hbWV9LSV7dmVy c2lvbn0udGFyLmd6CiAKIAogIyBGaXggZm9yIGJ1ZyAxNTc5MzY3CkBAIC0yMiw4ICsyMiw2IEBA IEJ1aWxkQXJjaDogICAgICBub2FyY2gKICMgYW5kIHRoZXJlIGlzIG9ubHkgb2xkIHJwbS1weXRo b24gcGFja2FnZSBpbiBFTDYgYW5kIDcsIHNvIGp1c3Qgc2ltcGx5IHRvCiAjIHJlbW92ZSBycG0t cHktaW5zdGFsbGVyIGZvciBub3cuCiBQYXRjaDA6ICAgICAgICAgcmVtb3ZlLWtvamktYW5kLXJw bS1weS1pbnN0YWxsZXItZnJvbS1yZXF1aXJlcy5wYXRjaAotIyBodHRwczovL3BhZ3VyZS5pby9y cGtnL3B1bGwtcmVxdWVzdC8zNjEKLVBhdGNoMTogICAgICAgICBhZGQtZmxhdHBhay1idWlsZC5w YXRjaAogCiAlaWYgMCV7P2ZlZG9yYX0gfHwgMCV7P3JoZWx9ID4gNwogIyBFbmFibGUgcHl0aG9u MyBidWlsZCBieSBkZWZhdWx0CkBAIC01MSw5ICs0OSw5IEBAIFN1bW1hcnk6ICAgICAgICAle3N1 bW1hcnl9CiBCdWlsZFJlcXVpcmVzOiAgcHl0aG9uMi1kZXZlbAogCiAjIFdlIGJyIHRoZXNlIHRo aW5ncyBmb3IgbWFuIHBhZ2UgZ2VuZXJhdGlvbiBkdWUgdG8gaW1wb3J0cworQnVpbGRSZXF1aXJl czogIHJwbWxpbnQKIEJ1aWxkUmVxdWlyZXM6ICBweXRob24yLWtvamkgPj0gMS4xNQogQnVpbGRS ZXF1aXJlczogIHB5dGhvbjItY2Njb2x1dGlscwotQnVpbGRSZXF1aXJlczogIHB5dGhvbjItb3Bl bmlkYy1jbGllbnQKIEJ1aWxkUmVxdWlyZXM6ICBQeVlBTUwKIAogJWlmIDAlez9yaGVsfQpAQCAt NjcsMTAgKzY1LDEzIEBAIEJ1aWxkUmVxdWlyZXM6ICBweXRob24yLWdvYmplY3QtYmFzZQogQnVp bGRSZXF1aXJlczogIHB5dGhvbjItcHljdXJsCiBCdWlsZFJlcXVpcmVzOiAgcHl0aG9uMi1yZXF1 ZXN0cwogQnVpbGRSZXF1aXJlczogIHB5dGhvbjItc2l4ID49IDEuOS4wCitCdWlsZFJlcXVpcmVz OiAgcHl0aG9uMi1vcGVuaWRjLWNsaWVudAorQnVpbGRSZXF1aXJlczogIGxpYm1vZHVsZW1kCiAl ZW5kaWYKIAotJWlmIDAlez9yaGVsfSAmJiAwJXs/cmhlbH0gPT0gNworJWlmIDAlez9yaGVsfSAm JiAwJXs/cmhlbH0gPiA3CiBCdWlsZFJlcXVpcmVzOiAgcHl0aG9uLWdvYmplY3QtYmFzZQorQnVp bGRSZXF1aXJlczogIGxpYm1vZHVsZW1kCiAlZW5kaWYKIAogJWlmIDAlez9yaGVsfSAmJiAwJXs/ cmhlbH0gPCA3CkBAIC04MywxMSArODQsOCBAQCBCdWlsZFJlcXVpcmVzOiAgcHl0aG9uLXVuaXR0 ZXN0MgogQnVpbGRSZXF1aXJlczogIHB5dGhvbjItbW9jawogQnVpbGRSZXF1aXJlczogIHB5dGhv bjItbm9zZQogQnVpbGRSZXF1aXJlczogIHB5dGhvbjItc2V0dXB0b29scwotQnVpbGRSZXF1aXJl czogIGxpYm1vZHVsZW1kCiAlZW5kaWYKIAotQnVpbGRSZXF1aXJlczogIHJwbWxpbnQKLQogUmVx dWlyZXM6ICAgICAgIG1vY2sKIFJlcXVpcmVzOiAgICAgICByZWRoYXQtcnBtLWNvbmZpZwogUmVx dWlyZXM6ICAgICAgIHJwbS1idWlsZApAQCAtOTksMTcgKzk3LDE2IEBAIFJlcXVpcmVzOiAgICAg ICBQeVlBTUwKIAogJWlmIDAlez9yaGVsfQogUmVxdWlyZXM6ICAgICAgIEdpdFB5dGhvbiA+PSAw LjIuMAotUmVxdWlyZXM6ICAgICAgIHJwbS1weXRob24KIFJlcXVpcmVzOiAgICAgICBweXRob24t cHljdXJsCi1SZXF1aXJlczogICAgICAgcHl0aG9uLXNpeCA+PSAxLjkuMAogUmVxdWlyZXM6ICAg ICAgIHB5dGhvbi1yZXF1ZXN0cworUmVxdWlyZXM6ICAgICAgIHB5dGhvbi1zaXggPj0gMS45LjAK K1JlcXVpcmVzOiAgICAgICBycG0tcHl0aG9uCiAlZWxzZQogUmVxdWlyZXM6ICAgICAgIHB5dGhv bjItR2l0UHl0aG9uCiBSZXF1aXJlczogICAgICAgcHl0aG9uMi1ycG0KIFJlcXVpcmVzOiAgICAg ICBweXRob24yLXB5Y3VybAogUmVxdWlyZXM6ICAgICAgIHB5dGhvbjItc2l4ID49IDEuOS4wCiBS ZXF1aXJlczogICAgICAgcHl0aG9uMi1nb2JqZWN0LWJhc2UKLQogUmVxdWlyZXM6ICAgICAgIGxp Ym1vZHVsZW1kCiAlZW5kaWYKIApAQCAtMTE3LDcgKzExNCw3IEBAIFJlcXVpcmVzOiAgICAgICBs aWJtb2R1bGVtZAogUmVxdWlyZXM6ICAgICAgIHB5dGhvbi1hcmdwYXJzZQogJWVuZGlmCiAKLSVp ZiAwJXs/cmhlbH0gJiYgMCV7P3JoZWx9ID09IDcKKyVpZiAwJXs/cmhlbH0gJiYgMCV7P3JoZWx9 ID4gNwogUmVxdWlyZXM6ICAgICAgIHB5dGhvbi1nb2JqZWN0LWJhc2UKIFJlcXVpcmVzOiAgICAg ICBsaWJtb2R1bGVtZAogJWVuZGlmCkBAIC0xNTUsNyArMTUyLDcgQEAgQnVpbGRSZXF1aXJlczog IHB5dGhvbjMtc2V0dXB0b29scwogQnVpbGRSZXF1aXJlczogIHB5dGhvbjMtbm9zZQogQnVpbGRS ZXF1aXJlczogIHB5dGhvbjMtZ29iamVjdC1iYXNlCiBCdWlsZFJlcXVpcmVzOiAgcHl0aG9uMy1Q eVlBTUwKLQorQnVpbGRSZXF1aXJlczogIGxpYm1vZHVsZW1kCiBCdWlsZFJlcXVpcmVzOiAgcnBt bGludAogCiBSZXF1aXJlczogICAgICAgbW9jawpAQCAtMTk0LDEwICsxOTEsNyBAQCBDb21tb24g ZmlsZXMgZm9yIHB5dGhvbjItJXtuYW1lfSBhbmQgcHl0aG9uMy0le25hbWV9LgogCiAKICVwcmVw Ci0lc2V0dXAgLXEKLSVwYXRjaDAgLXAxCi0lcGF0Y2gxIC1wMQotCislYXV0b3NldHVwIC1wMQog CiAlYnVpbGQKICVpZiAwJXs/d2l0aF9weXRob24yfQpAQCAtMjUwLDcgKzI0NCwxMSBAQCBub3Nl dGVzdHMgdGVzdHMKICVpZiAwJXs/d2l0aF9weXRob24yfQogJWZpbGVzIC1uIHB5dGhvbjItJXtu YW1lfQogJWRvYyBSRUFETUUucnN0IENIQU5HRUxPRy5yc3QKKyVpZiAwJXs/cmhlbH0gJiYgMCV7 P3JoZWx9IDwgNworJWRvYyBDT1BZSU5HIENPUFlJTkcta29qaSBMR1BMCislZWxzZQogJWxpY2Vu c2UgQ09QWUlORyBDT1BZSU5HLWtvamkgTEdQTAorJWVuZGlmCiAjIEZvciBub2FyY2ggcGFja2Fn ZXM6IHNpdGVsaWIKICV7cHl0aG9uMl9zaXRlbGlifS9weXJwa2cKICV7cHl0aG9uMl9zaXRlbGli fS8le25hbWV9LSV7dmVyc2lvbn0tcHkqLmVnZy1pbmZvCkBAIC0yNzAsNiArMjY4LDM4IEBAIG5v c2V0ZXN0cyB0ZXN0cwogCiAKICVjaGFuZ2Vsb2cKKyogVGh1IEphbiAwMyAyMDE5IE9uZMWZZWog Tm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPiAtIDEuNTctMgorLSBNZXJnZSBjaGFuZ2VzIG9mIHRo ZSAuc3BlYyBmaWxlcyBmb3IgRmVkb3JhIGFuZCBSSEVMCisKKyogVGh1IERlYyAxMyAyMDE4IE9u ZMWZZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPiAtIDEuNTctMQorLSBVc2UgaWRuYSAyLjcg Zm9yIFB5dGhvbiAyLjYgKGxzZWRsYXIpCistIEltcG9ydHMgYXJlIHNvcnRlZCAob25vc2VrKQor LSBsaWJtb2R1bGVtZCBpcyBtaXNzaW5nIG9uIGVsNyAtICM0MDIgKG9ub3NlaykKKy0gSW5pdGlh bGl6ZSBiYXNoIGF1dG9jb21wbGV0aW9uIChvbm9zZWspCistIFNldCBjb25maWd1cmF0aW9uIGlu IGNhc2Ugb2YgImNsb25lIC0tYnJhbmNoZXMiIGFzIHdlbGwgKHRpbSkKKy0gRml4IGZha2Ugc3Bl YyBmaWxlIGZvciBjbG9nIHRlc3RzIChjcWkpCistIE1vdmUgYXJncGFyc2UgZml4IGZyb20gZmVk cGtnIC0gIzM5OCAob25vc2VrKQorLSBTZW5kIHNvdXJjZSBtdGltZSB0byBkaXN0LWdpdCAtIDIy MCAobHNlZGxhcikKKy0gRml4IHRlc3RzIGZvciBtb2NrIHBhY2thZ2UgbWFuYWdlciAobHNlZGxh cikKKy0gU3BlY2lmeSBwYWNrYWdlIG1hbmFnZXIgZm9yIG1vY2stY29uZmlnIChsc2VkbGFyKQor LSBBZGQgY29udHJpYnV0aW5nIGd1aWRlIChvbm9zZWspCistIFZhbGlkYXRlIHRoZSBtb2R1bGUg YnVpbGQgb3B0aW9uYWwgYXJndW1lbnQgd2hlbiBwYXJzaW5nIHRoZSBhcmd1bWVudAorICAobXBy YWhsKQorLSBBZGQgY29uZmlnIG9wdGlvbnMgdG8gcGFyc2UgdGhlIGJhc2UgbW9kdWxlIChlLmcu IHBsYXRmb3JtKSBzdHJlYW0gZnJvbSB0aGUKKyAgZGlzdC1naXQgYnJhbmNoIGFuZCBhcHBseSBh IGJ1aWxkcmVxdWlyZSBvdmVycmlkZSAobXByYWhsKQorLSBBZGQgdGhlIGFiaWxpdHkgdG8gcGFz cyBpbiBidWlsZHJlcXVpcmUgYW5kIHJlcXVpcmUgb3ZlcnJpZGVzIG9uIGEgbW9kdWxlCisgIGJ1 aWxkIChtcHJhaGwpCistIFJhaXNlIGFuIGVycm9yIGlmIHRoZSBtb2R1bGUgYnVpbGQgY29tbWFu ZCByZWNlaXZlcyBvcHRpb25hbCBhcmd1bWVudHMgdGhhdAorICBjb25mbGljdCAobXByYWhsKQor LSBTaWxlbmNlIFB5dGhvbjMgU2FmZUNvbmZpZ1BhcnNlciB3YXJuaW5ncyAobW1hdGhlc2kpCist IEFsbG93IHRvIHBhc3MgcG9zYXJncyB0byB0b3ggZnJvbSBtYWtlIChjcWkpCistIFNwZWNpZnkg ZGVwZW5kZW50IHBhY2thZ2VzIGluIG9uZSBwbGFjZSAoY3FpKQorLSBEb24ndCByZWdpc3RyeSBm bGF0cGFrLWJ1aWxkIGNvbW1hbmQgb24gUHl0aG9uLTIuNiAob3RheWxvcikKKy0gQWRkIGZsYXRw YWstYnVpbGQgc3ViY29tbWFuZCAob3RheWxvcikKKy0gRG9uJ3QgcGFzcyB0aGUgTUJTIEFQSSBV UkwgYXJvdW5kIGFzIGEgcGFyYW1ldGVyIChvdGF5bG9yKQorLSBUZXN0Q29udGFpbmVyQnVpbGRX aXRoS29qaTogdGVhciBkb3duIHRoZSBtb2NrIGFwcHJvcHJpYXRlbHkgKG90YXlsb3IpCistIFJl ZmluZSB0ZXN0IHJ1bm5lciBmb3IgcHkyNiAoY3FpKQorCiAqIEZyaSBTZXAgIDcgMjAxOCBPd2Vu IFRheWxvciA8b3RheWxvckByZWRoYXQuY29tPiAtIDEuNTYtMgogLSBBZGQgcGF0Y2ggZnJvbSB1 cHN0cmVhbSBwdWxsLXJlcXVlc3QgdG8gYWRkIGEgZmxhdHBhay1idWlsZCBzdWJjb21tYW5kCiAt IEFkZCBQeVlBTUwgZGVwZW5kZW5jaWVzIHNvIHRoYXQgdGhlIHNwZWMgZmlsZSBhdCBsZWFzdCBi dWlsZHMgb24gZXBlbDYvZXBlbDcK