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: Jos de Kloe To: git-commits@fedoraproject.org Subject: [rpms/pyproj] f43: Merge branch 'rawhide' into f43 Date: Sat, 26 Sep 2026 14:31:34 GMT Message-ID: <179043309494.1.1224844752332449732.rpms-pyproj-5aa955c4f1c9@fedoraproject.org> List-ID: X-Git-Repo: rpms/pyproj X-Git-Branch: f43 X-Git-Rev: 5aa955c4f1c9cfae4a53c5cbaf8032daeda5f371 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvcHlwcm9qCkJyYW5j aCA6IGY0MwpDb21taXQgOiA1YWE5NTVjNGYxYzljZmFlNGE1M2M1Y2JhZjgwMzJkYWVkYTVmMzcx CkF1dGhvciA6IEpvcyBkZSBLbG9lIDxqb3NkZWtsb2VAZ21haWwuY29tPgpEYXRlICAgOiAyMDI2 LTA5LTI2VDE2OjMxOjA5KzAyOjAwClN0YXRzICA6ICsyNC8tNTA2IGluIDUgZmlsZShzKQpVUkwg ICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL3B5cHJvai9jLzVhYTk1NWM0 ZjFjOWNmYWU0YTUzYzVjYmFmODAzMmRhZWRhNWYzNzE/YnJhbmNoPWY0MwoKTG9nOgpNZXJnZSBi cmFuY2ggJ3Jhd2hpZGUnIGludG8gZjQzCgotLS0KZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8u Z2l0aWdub3JlCmluZGV4IDY1MTQxZDkuLjA0ZDE0ZjIgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUK KysrIGIvLmdpdGlnbm9yZQpAQCAtMSArMSwyIEBACiAvcHlwcm9qLTMuNy4yLnRhci5negorL3B5 cHJvai0zLjguMC50YXIuZ3oKCmRpZmYgLS1naXQgYS9wcm9qOTMtY3l0aG9uMy5wYXRjaCBiL3By b2o5My1jeXRob24zLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZDc0MDY5 Li4wMDAwMDAwCi0tLSBhL3Byb2o5My1jeXRob24zLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs NDY4ICswLDAgQEAKLWRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBweXByb2otMy42LjAvcHlw cm9qL19kYXRhZGlyLnB4ZCBweXByb2otMy42LjAtbmV3L3B5cHJvai9fZGF0YWRpci5weGQKLS0t LSBweXByb2otMy42LjAvcHlwcm9qL19kYXRhZGlyLnB4ZAkyMDIzLTA2LTEyIDE1OjI3OjMyLjAw MDAwMDAwMCArMDIwMAotKysrIHB5cHJvai0zLjYuMC1uZXcvcHlwcm9qL19kYXRhZGlyLnB4ZAky MDIzLTA5LTEzIDEyOjEzOjIxLjc4MDA5Mzc3MiArMDIwMAotQEAgLTEsNyArMSw3IEBACi0gaW5j bHVkZSAicHJvai5weGkiCi0gCi0tY3BkZWYgc3RyIF9nZXRfcHJval9lcnJvcigpCi0tY3BkZWYg dm9pZCBfY2xlYXJfcHJval9lcnJvcigpCi0rY3BkZWYgc3RyIF9nZXRfcHJval9lcnJvcigpIG5v ZXhjZXB0Ci0rY3BkZWYgdm9pZCBfY2xlYXJfcHJval9lcnJvcigpIG5vZXhjZXB0Ci0gY2RlZiBQ Sl9DT05URVhUKiBQWVBST0pfR0xPQkFMX0NPTlRFWFQKLSBjZGVmIFBKX0NPTlRFWFQqIHB5cHJv al9jb250ZXh0X2NyZWF0ZSgpIGV4Y2VwdCAqCi0gY2RlZiB2b2lkIHB5cHJval9jb250ZXh0X2Rl c3Ryb3koUEpfQ09OVEVYVCogY29udGV4dCkgZXhjZXB0ICoKLWRpZmYgLXJ1cE4gLS1uby1kZXJl ZmVyZW5jZSBweXByb2otMy42LjAvcHlwcm9qL19kYXRhZGlyLnB5eCBweXByb2otMy42LjAtbmV3 L3B5cHJvai9fZGF0YWRpci5weXgKLS0tLSBweXByb2otMy42LjAvcHlwcm9qL19kYXRhZGlyLnB5 eAkyMDIzLTA2LTEyIDE1OjI3OjMyLjAwMDAwMDAwMCArMDIwMAotKysrIHB5cHJvai0zLjYuMC1u ZXcvcHlwcm9qL19kYXRhZGlyLnB5eAkyMDIzLTA5LTEzIDEyOjEzOjIxLjc4MTA5Mzc1MyArMDIw MAotQEAgLTYsNyArNiw2IEBAIGZyb20gbGliYy5zdGRsaWIgY2ltcG9ydCBmcmVlLCBtYWxsb2MK LSAKLSBmcm9tIHB5cHJvai5fY29tcGF0IGNpbXBvcnQgY3N0cmVuY29kZQotIAotLWZyb20gcHlw cm9qLmV4Y2VwdGlvbnMgaW1wb3J0IERhdGFEaXJFcnJvcgotIGZyb20gcHlwcm9qLnV0aWxzIGlt cG9ydCBzdHJ0b2Jvb2wKLSAKLSAjIGZvciBsb2dnaW5nIHRoZSBpbnRlcm5hbCBQUk9KIG1lc3Nh Z2VzCi1AQCAtNzksMTQgKzc4LDE0IEBAIGRlZiBnZXRfdXNlcl9kYXRhX2RpcihjcmVhdGU9RmFs c2UpOgotICAgICApCi0gCi0gCi0tY3BkZWYgc3RyIF9nZXRfcHJval9lcnJvcigpOgotK2NwZGVm IHN0ciBfZ2V0X3Byb2pfZXJyb3IoKSBub2V4Y2VwdDoKLSAgICAgIiIiCi0gICAgIEdldCB0aGUg aW50ZXJuYWwgUFJPSiBlcnJvciBtZXNzYWdlLiBSZXR1cm5zIE5vbmUgaWYgbm8gZXJyb3Igd2Fz IHNldC4KLSAgICAgIiIiCi0gICAgIHJldHVybiBfSU5URVJOQUxfUFJPSl9FUlJPUgotIAotIAot LWNwZGVmIHZvaWQgX2NsZWFyX3Byb2pfZXJyb3IoKToKLStjcGRlZiB2b2lkIF9jbGVhcl9wcm9q X2Vycm9yKCkgbm9leGNlcHQ6Ci0gICAgICIiIgotICAgICBDbGVhciB0aGUgaW50ZXJuYWwgUFJP SiBlcnJvciBtZXNzYWdlLgotICAgICAiIiIKLUBAIC05NCw3ICs5Myw3IEBAIGNwZGVmIHZvaWQg X2NsZWFyX3Byb2pfZXJyb3IoKToKLSAgICAgX0lOVEVSTkFMX1BST0pfRVJST1IgPSBOb25lCi0g Ci0gCi0tY2RlZiB2b2lkIHB5cHJval9sb2dfZnVuY3Rpb24odm9pZCAqdXNlcl9kYXRhLCBpbnQg bGV2ZWwsIGNvbnN0IGNoYXIgKmVycm9yX21zZykgbm9naWw6Ci0rY2RlZiB2b2lkIHB5cHJval9s b2dfZnVuY3Rpb24odm9pZCAqdXNlcl9kYXRhLCBpbnQgbGV2ZWwsIGNvbnN0IGNoYXIgKmVycm9y X21zZykgbm9naWwgbm9leGNlcHQ6Ci0gICAgICIiIgotICAgICBMb2cgZnVuY3Rpb24gZm9yIGNh dGNoaW5nIFBST0ogZXJyb3JzLgotICAgICAiIiIKLWRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5j ZSBweXByb2otMy42LjAvcHlwcm9qZWN0LnRvbWwgcHlwcm9qLTMuNi4wLW5ldy9weXByb2plY3Qu dG9tbAotLS0tIHB5cHJvai0zLjYuMC9weXByb2plY3QudG9tbAkyMDIzLTA2LTEyIDE1OjI3OjMy LjAwMDAwMDAwMCArMDIwMAotKysrIHB5cHJvai0zLjYuMC1uZXcvcHlwcm9qZWN0LnRvbWwJMjAy My0wOS0xMyAxMjoxMzoyMS43ODEwOTM3NTMgKzAyMDAKLUBAIC0xLDUgKzEsNSBAQAotIFtidWls ZC1zeXN0ZW1dCi0tcmVxdWlyZXMgPSBbInNldHVwdG9vbHM+PTYxLjAuMCIsICJ3aGVlbCIsICJj eXRob24+PTAuMjguNCJdCi0rcmVxdWlyZXMgPSBbInNldHVwdG9vbHM+PTYxLjAuMCIsICJ3aGVl bCIsICJjeXRob24+PTMiXQotIGJ1aWxkLWJhY2tlbmQgPSAic2V0dXB0b29scy5idWlsZF9tZXRh IgotIAotIFtwcm9qZWN0XQotZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIHB5cHJvai0zLjYu MC9zZXR1cC5weSBweXByb2otMy42LjAtbmV3L3NldHVwLnB5Ci0tLS0gcHlwcm9qLTMuNi4wL3Nl dHVwLnB5CTIwMjMtMDYtMTIgMTU6Mjc6MzIuMDAwMDAwMDAwICswMjAwCi0rKysgcHlwcm9qLTMu Ni4wLW5ldy9zZXR1cC5weQkyMDIzLTA5LTEzIDEyOjEzOjIxLjc4MDA5Mzc3MiArMDIwMAotQEAg LTcsMjAgKzcsMzkgQEAgaW1wb3J0IHN5cwotIGZyb20gcGF0aGxpYiBpbXBvcnQgUGF0aAotIGZy b20gdHlwaW5nIGltcG9ydCBPcHRpb25hbAotIAotLWZyb20gcGtnX3Jlc291cmNlcyBpbXBvcnQg cGFyc2VfdmVyc2lvbgotIGZyb20gc2V0dXB0b29scyBpbXBvcnQgRXh0ZW5zaW9uLCBzZXR1cAot IAotLVBST0pfTUlOX1ZFUlNJT04gPSBwYXJzZV92ZXJzaW9uKCI5LjAuMCIpCi0rUFJPSl9NSU5f VkVSU0lPTiA9ICg5LCAwLCAwKQotIENVUlJFTlRfRklMRV9QQVRIID0gUGF0aChfX2ZpbGVfXyku YWJzb2x1dGUoKS5wYXJlbnQKLSBCQVNFX0lOVEVSTkFMX1BST0pfRElSID0gUGF0aCgicHJval9k aXIiKQotIElOVEVSTkFMX1BST0pfRElSID0gQ1VSUkVOVF9GSUxFX1BBVEggLyAicHlwcm9qIiAv IEJBU0VfSU5URVJOQUxfUFJPSl9ESVIKLSBQUk9KX1ZFUlNJT05fU0VBUkNIID0gcmUuY29tcGls ZShyIi4qUmVsXC5ccysoP1A8dmVyc2lvbj5cZCtcLlxkK1wuXGQrKS4qIikKLStWRVJTSU9OX1NF QVJDSCA9IHJlLmNvbXBpbGUociIuKig/UDx2ZXJzaW9uPlxkK1wuXGQrXC5cZCspLioiKQotIAot IAotLWRlZiBnZXRfcHJval92ZXJzaW9uKHByb2pfZGlyOiBQYXRoKSAtPiBzdHI6Ci0rZGVmIF9w YXJzZV92ZXJzaW9uKHZlcnNpb246IHN0cikgLT4gdHVwbGVbaW50LCBpbnQsIGludF06Ci0rICAg ICIiIkNvbnZlcnQgYSB2ZXJzaW9uIHN0cmluZyB0byBhIHR1cGxlIG9mIGludGVnZXJzLiIiIgot KyAgICBtYXRjaCA9IFZFUlNJT05fU0VBUkNILnNlYXJjaCh2ZXJzaW9uKQotKyAgICBpZiBub3Qg bWF0Y2g6Ci0rICAgICAgICByYWlzZSBTeXN0ZW1FeGl0KAotKyAgICAgICAgICAgIGYiUFJPSiB2 ZXJzaW9uIHVuYWJsZSB0byBiZSBkZXRlcm1pbmVkIGZyb20ge3ZlcnNpb259LiAiCi0rICAgICAg ICAgICAgIlBsZWFzZSBzZXQgdGhlIFBST0pfVkVSU0lPTiBlbnZpcm9ubWVudCB2YXJpYWJsZS4i Ci0rICAgICAgICApCi0rICAgIHJldHVybiB0dXBsZSgKLSsgICAgICAgIGludCh2ZXIpIGZvciB2 ZXIgaW4gbWF0Y2guZ3JvdXBkaWN0KClbInZlcnNpb24iXS5zcGxpdCgiLiIsIG1heHNwbGl0PTIp Ci0rICAgICkKLSsKLSsKLStkZWYgZ2V0X3Byb2pfdmVyc2lvbihwcm9qX2RpcjogUGF0aCkgLT4g dHVwbGVbaW50LCBpbnQsIGludF06Ci0rICAgICIiIgotKyAgICBEZXRlcm1pbmUgUFJPSiB2ZXJz aW9uLgotKwotKyAgICBQcmVmZXIgUFJPSl9WRVJTSU9OIGVudmlyb25tZW50IHZhcmlhYmxlLgot KyAgICBJZiBQUk9KX1ZFUlNJT04gaXMgbm90IHNldCwgdHJ5IHRvIGRldGVybWluZSB0aGUgdmVy c2lvbiBmcm9tIHRoZSBQUk9KIGV4ZWN1dGFibGUuCi0rICAgICIiIgotICAgICBwcm9qX3ZlcnNp b24gPSBvcy5lbnZpcm9uLmdldCgiUFJPSl9WRVJTSU9OIikKLSAgICAgaWYgcHJval92ZXJzaW9u OgotLSAgICAgICAgcmV0dXJuIHByb2pfdmVyc2lvbgotKyAgICAgICAgcmV0dXJuIF9wYXJzZV92 ZXJzaW9uKHByb2pfdmVyc2lvbikKLSAgICAgcHJvaiA9IHByb2pfZGlyIC8gImJpbiIgLyAicHJv aiIKLSAgICAgcHJval92ZXIgPSBzdWJwcm9jZXNzLmNoZWNrX291dHB1dChzdHIocHJvaiksIHN0 ZGVycj1zdWJwcm9jZXNzLlNURE9VVCkuZGVjb2RlKAotICAgICAgICAgImFzY2lpIgotQEAgLTMx LDE1ICs1MCwxNyBAQCBkZWYgZ2V0X3Byb2pfdmVyc2lvbihwcm9qX2RpcjogUGF0aCkgLT4KLSAg ICAgICAgICAgICAiUFJPSiB2ZXJzaW9uIHVuYWJsZSB0byBiZSBkZXRlcm1pbmVkLiAiCi0gICAg ICAgICAgICAgIlBsZWFzZSBzZXQgdGhlIFBST0pfVkVSU0lPTiBlbnZpcm9ubWVudCB2YXJpYWJs ZS4iCi0gICAgICAgICApCi0tICAgIHJldHVybiBtYXRjaC5ncm91cGRpY3QoKVsidmVyc2lvbiJd Ci0rICAgIHJldHVybiBfcGFyc2VfdmVyc2lvbihtYXRjaC5ncm91cGRpY3QoKVsidmVyc2lvbiJd KQotIAotIAotLWRlZiBjaGVja19wcm9qX3ZlcnNpb24ocHJval92ZXJzaW9uOiBzdHIpIC0+IE5v bmU6Ci0rZGVmIGNoZWNrX3Byb2pfdmVyc2lvbihwcm9qX3ZlcnNpb246IHR1cGxlW2ludCwgaW50 LCBpbnRdKSAtPiBOb25lOgotICAgICAiIiJjaGVja3MgdGhhdCB0aGUgUFJPSiBsaWJyYXJ5IG1l ZXRzIHRoZSBtaW5pbXVtIHZlcnNpb24iIiIKLS0gICAgaWYgcGFyc2VfdmVyc2lvbihwcm9qX3Zl cnNpb24pIDwgUFJPSl9NSU5fVkVSU0lPTjoKLSsgICAgaWYgcHJval92ZXJzaW9uIDwgUFJPSl9N SU5fVkVSU0lPTjoKLSsgICAgICAgIHByb2pfdmVyc2lvbl9zdHIgPSAiLiIuam9pbihzdHIodmVy KSBmb3IgdmVyIGluIHByb2pfdmVyc2lvbikKLSsgICAgICAgIG1pbl9wcm9qX3ZlcnNpb25fc3Ry ID0gIi4iLmpvaW4oc3RyKHZlcikgZm9yIHZlciBpbiBQUk9KX01JTl9WRVJTSU9OKQotICAgICAg ICAgcmFpc2UgU3lzdGVtRXhpdCgKLS0gICAgICAgICAgICBmIkVSUk9SOiBNaW5pbXVtIHN1cHBv cnRlZCBQUk9KIHZlcnNpb24gaXMge1BST0pfTUlOX1ZFUlNJT059LCBpbnN0YWxsZWQgIgotLSAg ICAgICAgICAgIGYidmVyc2lvbiBpcyB7cHJval92ZXJzaW9ufS4gRm9yIG1vcmUgaW5mb3JtYXRp b24gc2VlOiAiCi0rICAgICAgICAgICAgZiJFUlJPUjogTWluaW11bSBzdXBwb3J0ZWQgUFJPSiB2 ZXJzaW9uIGlzIHttaW5fcHJval92ZXJzaW9uX3N0cn0sICIKLSsgICAgICAgICAgICBmImluc3Rh bGxlZCB2ZXJzaW9uIGlzIHtwcm9qX3ZlcnNpb25fc3RyfS4gRm9yIG1vcmUgaW5mb3JtYXRpb24g c2VlOiAiCi0gICAgICAgICAgICAgImh0dHBzOi8vcHlwcm9qNC5naXRodWIuaW8vcHlwcm9qL3N0 YWJsZS9pbnN0YWxsYXRpb24uaHRtbCIKLSAgICAgICAgICkKLSAKLUBAIC0xNTQsMTEgKzE3NSwx MSBAQCBkZWYgZ2V0X2V4dGVuc2lvbl9tb2R1bGVzKCk6Ci0gICAgICMgbWFrZSBzdXJlIGN5dGhv biBpcyBhdmFpbGFibGUKLSAgICAgdHJ5OgotICAgICAgICAgZnJvbSBDeXRob24uQnVpbGQgaW1w b3J0IGN5dGhvbml6ZQotLSAgICBleGNlcHQgSW1wb3J0RXJyb3I6Ci0rICAgIGV4Y2VwdCBJbXBv cnRFcnJvciBhcyBlcnJvcjoKLSAgICAgICAgIHJhaXNlIFN5c3RlbUV4aXQoCi0gICAgICAgICAg ICAgIkVSUk9SOiBDeXRob24uQnVpbGQuY3l0aG9uaXplIG5vdCBmb3VuZC4gIgotICAgICAgICAg ICAgICJDeXRob24gaXMgcmVxdWlyZWQgdG8gYnVpbGQgcHlwcm9qLiIKLS0gICAgICAgICkKLSsg ICAgICAgICkgZnJvbSBlcnJvcgotIAotICAgICAjIEJ5IGRlZmF1bHQgd2UnbGwgdHJ5IHRvIGdl dCBvcHRpb25zIFBST0pfRElSIG9yIHRoZSBsb2NhbCB2ZXJzaW9uIG9mIHByb2oKLSAgICAgcHJv al9kaXIgPSBnZXRfcHJval9kaXIoKQotQEAgLTE2Nyw5ICsxODgsNyBAQCBkZWYgZ2V0X2V4dGVu c2lvbl9tb2R1bGVzKCk6Ci0gCi0gICAgIHByb2pfdmVyc2lvbiA9IGdldF9wcm9qX3ZlcnNpb24o cHJval9kaXIpCi0gICAgIGNoZWNrX3Byb2pfdmVyc2lvbihwcm9qX3ZlcnNpb24pCi0tICAgIHBy b2pfdmVyc2lvbl9tYWpvciwgcHJval92ZXJzaW9uX21pbm9yLCBwcm9qX3ZlcnNpb25fcGF0Y2gg PSBwYXJzZV92ZXJzaW9uKAotLSAgICAgICAgcHJval92ZXJzaW9uCi0tICAgICkuYmFzZV92ZXJz aW9uLnNwbGl0KCIuIikKLSsgICAgcHJval92ZXJzaW9uX21ham9yLCBwcm9qX3ZlcnNpb25fbWlu b3IsIHByb2pfdmVyc2lvbl9wYXRjaCA9IHByb2pfdmVyc2lvbgotIAotICAgICAjIHNldHVwIGV4 dGVuc2lvbiBvcHRpb25zCi0gICAgIGV4dF9vcHRpb25zID0gewotQEAgLTE5Nyw5ICsyMTYsOSBA QCBkZWYgZ2V0X2V4dGVuc2lvbl9tb2R1bGVzKCk6Ci0gICAgICAgICBdLAotICAgICAgICAgcXVp ZXQ9VHJ1ZSwKLSAgICAgICAgIGNvbXBpbGVfdGltZV9lbnY9ewotLSAgICAgICAgICAgICJDVEVf UFJPSl9WRVJTSU9OX01BSk9SIjogaW50KHByb2pfdmVyc2lvbl9tYWpvciksCi0tICAgICAgICAg ICAgIkNURV9QUk9KX1ZFUlNJT05fTUlOT1IiOiBpbnQocHJval92ZXJzaW9uX21pbm9yKSwKLS0g ICAgICAgICAgICAiQ1RFX1BST0pfVkVSU0lPTl9QQVRDSCI6IGludChwcm9qX3ZlcnNpb25fcGF0 Y2gpLAotKyAgICAgICAgICAgICJDVEVfUFJPSl9WRVJTSU9OX01BSk9SIjogcHJval92ZXJzaW9u X21ham9yLAotKyAgICAgICAgICAgICJDVEVfUFJPSl9WRVJTSU9OX01JTk9SIjogcHJval92ZXJz aW9uX21pbm9yLAotKyAgICAgICAgICAgICJDVEVfUFJPSl9WRVJTSU9OX1BBVENIIjogcHJval92 ZXJzaW9uX3BhdGNoLAotICAgICAgICAgICAgICJDVEVfUFlUSE9OX0lNUExFTUVOVEFUSU9OIjog cGxhdGZvcm0ucHl0aG9uX2ltcGxlbWVudGF0aW9uKCksCi0gICAgICAgICB9LAotICAgICAgICAg KipnZXRfY3l0aG9uaXplX29wdGlvbnMoKSwKLWRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBw eXByb2otMy42LjAvdGVzdC9jb25mdGVzdC5weSBweXByb2otMy42LjAtbmV3L3Rlc3QvY29uZnRl c3QucHkKLS0tLSBweXByb2otMy42LjAvdGVzdC9jb25mdGVzdC5weQkyMDIzLTA2LTEyIDE1OjI3 OjMyLjAwMDAwMDAwMCArMDIwMAotKysrIHB5cHJvai0zLjYuMC1uZXcvdGVzdC9jb25mdGVzdC5w eQkyMDIzLTA5LTEzIDEyOjEzOjIxLjc4MTA5Mzc1MyArMDIwMAotQEAgLTE4LDYgKzE4LDcgQEAg UFJPSl9HVEVfOTEgPSBQUk9KX0xPT1NFX1ZFUlNJT04gPj0gdmVycwotIFBST0pfR1RFXzkxMSA9 IFBST0pfTE9PU0VfVkVSU0lPTiA+PSB2ZXJzaW9uLnBhcnNlKCI5LjEuMSIpCi0gUFJPSl9HVEVf OTIgPSBQUk9KX0xPT1NFX1ZFUlNJT04gPj0gdmVyc2lvbi5wYXJzZSgiOS4yLjAiKQotIFBST0pf R1RFXzkyMSA9IFBST0pfTE9PU0VfVkVSU0lPTiA+PSB2ZXJzaW9uLnBhcnNlKCI5LjIuMSIpCi0r UFJPSl9HVEVfOTMgPSBQUk9KX0xPT1NFX1ZFUlNJT04gPj0gdmVyc2lvbi5wYXJzZSgiOS4zLjAi KQotIAotIAotIGRlZiB1bnNldF9kYXRhX2RpcigpOgotZGlmZiAtcnVwTiAtLW5vLWRlcmVmZXJl bmNlIHB5cHJvai0zLjYuMC90ZXN0L3Rlc3RfcHJvai5weSBweXByb2otMy42LjAtbmV3L3Rlc3Qv dGVzdF9wcm9qLnB5Ci0tLS0gcHlwcm9qLTMuNi4wL3Rlc3QvdGVzdF9wcm9qLnB5CTIwMjMtMDYt MTIgMTU6Mjc6MzIuMDAwMDAwMDAwICswMjAwCi0rKysgcHlwcm9qLTMuNi4wLW5ldy90ZXN0L3Rl c3RfcHJvai5weQkyMDIzLTA5LTEzIDEyOjEzOjIxLjc4MjA5MzczMyArMDIwMAotQEAgLTUsNyAr NSw3IEBAIGltcG9ydCBzeXMKLSBpbXBvcnQgdW5pdHRlc3QKLSBmcm9tIHVuaXR0ZXN0Lm1vY2sg aW1wb3J0IHBhdGNoCi0gCi0taW1wb3J0IG51bXB5IGFzIG5wCi0raW1wb3J0IG51bXB5Ci0gaW1w b3J0IHB5dGVzdAotIGZyb20gbnVtcHkudGVzdGluZyBpbXBvcnQgYXNzZXJ0X2FsbW9zdF9lcXVh bAotIAotQEAgLTQ0MSwxMSArNDQxLDExIEBAIGRlZiB0ZXN0X3Jlc2V0X2Vycm5vKCk6Ci0gQHB5 dGVzdC5tYXJrLnBhcmFtZXRyaXplKCJyYWRpYW5zIiwgW0ZhbHNlLCBUcnVlXSkKLSBkZWYgdGVz dF9nZXRfZmFjdG9yc19fMmRfaW5wdXQocmFkaWFucyk6Ci0gICAgIHRyYW5zZm9ybWVyID0gUHJv aigzODU3KQotLSAgICBsb25naXR1ZGUgPSBucC5hcnJheShbWzAsIDFdLCBbMiwgM11dKQotLSAg ICBsYXRpdHVkZSA9IG5wLmFycmF5KFtbMSwgMl0sIFszLCA0XV0pCi0rICAgIGxvbmdpdHVkZSA9 IG51bXB5LmFycmF5KFtbMCwgMV0sIFsyLCAzXV0pCi0rICAgIGxhdGl0dWRlID0gbnVtcHkuYXJy YXkoW1sxLCAyXSwgWzMsIDRdXSkKLSAgICAgaWYgcmFkaWFuczoKLS0gICAgICAgIGxvbmdpdHVk ZSA9IG5wLnJhZGlhbnMobG9uZ2l0dWRlKQotLSAgICAgICAgbGF0aXR1ZGUgPSBucC5yYWRpYW5z KGxhdGl0dWRlKQotKyAgICAgICAgbG9uZ2l0dWRlID0gbnVtcHkucmFkaWFucyhsb25naXR1ZGUp Ci0rICAgICAgICBsYXRpdHVkZSA9IG51bXB5LnJhZGlhbnMobGF0aXR1ZGUpCi0gICAgIGZhY3Rv cnMgPSB0cmFuc2Zvcm1lci5nZXRfZmFjdG9ycygKLSAgICAgICAgIGxvbmdpdHVkZT1sb25naXR1 ZGUsIGxhdGl0dWRlPWxhdGl0dWRlLCByYWRpYW5zPXJhZGlhbnMKLSAgICAgKQotQEAgLTQ5Nywy MiArNDk3LDM2IEBAIGRlZiB0ZXN0X2dldF9mYWN0b3JzKCk6Ci0gZGVmIHRlc3RfZ2V0X2ZhY3Rv cnNfX25hbl9pbmYoKToKLSAgICAgdHJhbnNmb3JtZXIgPSBQcm9qKDM4NTcpCi0gICAgIGZhY3Rv cnMgPSB0cmFuc2Zvcm1lci5nZXRfZmFjdG9ycygKLS0gICAgICAgIGxvbmdpdHVkZT1bMCwgbnAu bmFuLCBucC5pbmYsIDBdLCBsYXRpdHVkZT1bbnAubmFuLCAyLCAyLCBucC5pbmZdCi0rICAgICAg ICBsb25naXR1ZGU9WzAsIG51bXB5Lm5hbiwgbnVtcHkuaW5mLCAwXSwgbGF0aXR1ZGU9W251bXB5 Lm5hbiwgMiwgMiwgbnVtcHkuaW5mXQotICAgICApCi0tICAgIGFzc2VydF9hbG1vc3RfZXF1YWwo ZmFjdG9ycy5tZXJpZGlvbmFsX3NjYWxlLCBbbnAuaW5mLCBucC5pbmYsIG5wLmluZiwgbnAuaW5m XSkKLS0gICAgYXNzZXJ0X2FsbW9zdF9lcXVhbChmYWN0b3JzLnBhcmFsbGVsX3NjYWxlLCBbbnAu aW5mLCBucC5pbmYsIG5wLmluZiwgbnAuaW5mXSkKLS0gICAgYXNzZXJ0X2FsbW9zdF9lcXVhbChm YWN0b3JzLmFyZWFsX3NjYWxlLCBbbnAuaW5mLCBucC5pbmYsIG5wLmluZiwgbnAuaW5mXSkKLS0g ICAgYXNzZXJ0X2FsbW9zdF9lcXVhbChmYWN0b3JzLmFuZ3VsYXJfZGlzdG9ydGlvbiwgW25wLmlu ZiwgbnAuaW5mLCBucC5pbmYsIG5wLmluZl0pCi0tICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoCi0t ICAgICAgICBmYWN0b3JzLm1lcmlkaWFuX3BhcmFsbGVsX2FuZ2xlLCBbbnAuaW5mLCBucC5pbmYs IG5wLmluZiwgbnAuaW5mXQotLSAgICApCi0tICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoZmFjdG9y cy5tZXJpZGlhbl9jb252ZXJnZW5jZSwgW25wLmluZiwgbnAuaW5mLCBucC5pbmYsIG5wLmluZl0p Ci0tICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoZmFjdG9ycy50aXNzb3Rfc2VtaW1ham9yLCBbbnAu aW5mLCBucC5pbmYsIG5wLmluZiwgbnAuaW5mXSkKLS0gICAgYXNzZXJ0X2FsbW9zdF9lcXVhbChm YWN0b3JzLnRpc3NvdF9zZW1pbWlub3IsIFtucC5pbmYsIG5wLmluZiwgbnAuaW5mLCBucC5pbmZd KQotLSAgICBhc3NlcnRfYWxtb3N0X2VxdWFsKGZhY3RvcnMuZHhfZGxhbSwgW25wLmluZiwgbnAu aW5mLCBucC5pbmYsIG5wLmluZl0pCi0tICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoZmFjdG9ycy5k eF9kcGhpLCBbbnAuaW5mLCBucC5pbmYsIG5wLmluZiwgbnAuaW5mXSkKLS0gICAgYXNzZXJ0X2Fs bW9zdF9lcXVhbChmYWN0b3JzLmR5X2RsYW0sIFtucC5pbmYsIG5wLmluZiwgbnAuaW5mLCBucC5p bmZdKQotLSAgICBhc3NlcnRfYWxtb3N0X2VxdWFsKGZhY3RvcnMuZHlfZHBoaSwgW25wLmluZiwg bnAuaW5mLCBucC5pbmYsIG5wLmluZl0pCi0rICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoCi0rICAg ICAgICBmYWN0b3JzLm1lcmlkaW9uYWxfc2NhbGUsIFtudW1weS5pbmYsIG51bXB5LmluZiwgbnVt cHkuaW5mLCBudW1weS5pbmZdCi0rICAgICkKLSsgICAgYXNzZXJ0X2FsbW9zdF9lcXVhbCgKLSsg ICAgICAgIGZhY3RvcnMucGFyYWxsZWxfc2NhbGUsIFtudW1weS5pbmYsIG51bXB5LmluZiwgbnVt cHkuaW5mLCBudW1weS5pbmZdCi0rICAgICkKLSsgICAgYXNzZXJ0X2FsbW9zdF9lcXVhbCgKLSsg ICAgICAgIGZhY3RvcnMuYXJlYWxfc2NhbGUsIFtudW1weS5pbmYsIG51bXB5LmluZiwgbnVtcHku aW5mLCBudW1weS5pbmZdCi0rICAgICkKLSsgICAgYXNzZXJ0X2FsbW9zdF9lcXVhbCgKLSsgICAg ICAgIGZhY3RvcnMuYW5ndWxhcl9kaXN0b3J0aW9uLCBbbnVtcHkuaW5mLCBudW1weS5pbmYsIG51 bXB5LmluZiwgbnVtcHkuaW5mXQotKyAgICApCi0rICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoCi0r ICAgICAgICBmYWN0b3JzLm1lcmlkaWFuX3BhcmFsbGVsX2FuZ2xlLCBbbnVtcHkuaW5mLCBudW1w eS5pbmYsIG51bXB5LmluZiwgbnVtcHkuaW5mXQotKyAgICApCi0rICAgIGFzc2VydF9hbG1vc3Rf ZXF1YWwoCi0rICAgICAgICBmYWN0b3JzLm1lcmlkaWFuX2NvbnZlcmdlbmNlLCBbbnVtcHkuaW5m LCBudW1weS5pbmYsIG51bXB5LmluZiwgbnVtcHkuaW5mXQotKyAgICApCi0rICAgIGFzc2VydF9h bG1vc3RfZXF1YWwoCi0rICAgICAgICBmYWN0b3JzLnRpc3NvdF9zZW1pbWFqb3IsIFtudW1weS5p bmYsIG51bXB5LmluZiwgbnVtcHkuaW5mLCBudW1weS5pbmZdCi0rICAgICkKLSsgICAgYXNzZXJ0 X2FsbW9zdF9lcXVhbCgKLSsgICAgICAgIGZhY3RvcnMudGlzc290X3NlbWltaW5vciwgW251bXB5 LmluZiwgbnVtcHkuaW5mLCBudW1weS5pbmYsIG51bXB5LmluZl0KLSsgICAgKQotKyAgICBhc3Nl cnRfYWxtb3N0X2VxdWFsKGZhY3RvcnMuZHhfZGxhbSwgW251bXB5LmluZiwgbnVtcHkuaW5mLCBu dW1weS5pbmYsIG51bXB5LmluZl0pCi0rICAgIGFzc2VydF9hbG1vc3RfZXF1YWwoZmFjdG9ycy5k eF9kcGhpLCBbbnVtcHkuaW5mLCBudW1weS5pbmYsIG51bXB5LmluZiwgbnVtcHkuaW5mXSkKLSsg ICAgYXNzZXJ0X2FsbW9zdF9lcXVhbChmYWN0b3JzLmR5X2RsYW0sIFtudW1weS5pbmYsIG51bXB5 LmluZiwgbnVtcHkuaW5mLCBudW1weS5pbmZdKQotKyAgICBhc3NlcnRfYWxtb3N0X2VxdWFsKGZh Y3RvcnMuZHlfZHBoaSwgW251bXB5LmluZiwgbnVtcHkuaW5mLCBudW1weS5pbmYsIG51bXB5Lmlu Zl0pCi0gCi0gCi0gZGVmIHRlc3RfZ2V0X2ZhY3RvcnNfX2VycmNoZWNrKCk6Ci1AQCAtNTIzLDcg KzUzNyw3IEBAIGRlZiB0ZXN0X2dldF9mYWN0b3JzX19lcnJjaGVjaygpOgotIAotIGRlZiB0ZXN0 X251bXB5X2Jvb2xfa3dhcmdfZmFsc2UoKToKLSAgICAgIyBJc3N1ZSA1NjQKLS0gICAgc291dGgg PSBucC5hcnJheSg1MCkgPCAwCi0rICAgIHNvdXRoID0gbnVtcHkuYXJyYXkoNTApIDwgMAotICAg ICBwcm9qID0gUHJvaigKLSAgICAgICAgIHByb2o9InV0bSIsIHpvbmU9MzIsIGVsbGlwc2lzPSJX R1M4NCIsIGRhdHVtPSJXR1M4NCIsIHVuaXRzPSJtIiwgc291dGg9c291dGgKLSAgICAgKQotQEAg LTUzMiw3ICs1NDYsNyBAQCBkZWYgdGVzdF9udW1weV9ib29sX2t3YXJnX2ZhbHNlKCk6Ci0gCi0g ZGVmIHRlc3RfbnVtcHlfYm9vbF9rd2FyZ190cnVlKCk6Ci0gICAgICMgSXNzdWUgNTY0Ci0tICAg IHNvdXRoID0gbnAuYXJyYXkoNTApID4gMAotKyAgICBzb3V0aCA9IG51bXB5LmFycmF5KDUwKSA+ IDAKLSAgICAgcHJvaiA9IFByb2ooCi0gICAgICAgICBwcm9qPSJ1dG0iLCB6b25lPTMyLCBlbGxp cHNpcz0iV0dTODQiLCBkYXR1bT0iV0dTODQiLCB1bml0cz0ibSIsIHNvdXRoPXNvdXRoCi0gICAg ICkKLWRpZmYgLXJ1cE4gLS1uby1kZXJlZmVyZW5jZSBweXByb2otMy42LjAvdGVzdC90ZXN0X3Ry YW5zZm9ybWVyLnB5IHB5cHJvai0zLjYuMC1uZXcvdGVzdC90ZXN0X3RyYW5zZm9ybWVyLnB5Ci0t LS0gcHlwcm9qLTMuNi4wL3Rlc3QvdGVzdF90cmFuc2Zvcm1lci5weQkyMDIzLTA2LTEyIDE1OjI3 OjMyLjAwMDAwMDAwMCArMDIwMAotKysrIHB5cHJvai0zLjYuMC1uZXcvdGVzdC90ZXN0X3RyYW5z Zm9ybWVyLnB5CTIwMjMtMDktMTMgMTI6MTM6MjEuNzgzMDkzNzEzICswMjAwCi1AQCAtOSw3ICs5 LDcgQEAgZnJvbSBpdGVydG9vbHMgaW1wb3J0IHBlcm11dGF0aW9ucwotIGZyb20gcGF0aGxpYiBp bXBvcnQgUGF0aAotIGZyb20gdW5pdHRlc3QubW9jayBpbXBvcnQgY2FsbCwgcGF0Y2gKLSAKLS1p bXBvcnQgbnVtcHkgYXMgbnAKLStpbXBvcnQgbnVtcHkKLSBpbXBvcnQgcHl0ZXN0Ci0gZnJvbSBu dW1weS50ZXN0aW5nIGltcG9ydCBhc3NlcnRfYWxtb3N0X2VxdWFsLCBhc3NlcnRfYXJyYXlfZXF1 YWwKLSAKLUBAIC0yMiw2ICsyMiw3IEBAIGZyb20gcHlwcm9qLnRyYW5zZm9ybWVyIGltcG9ydCBB cmVhT2ZJbnQKLSBmcm9tIHRlc3QuY29uZnRlc3QgaW1wb3J0ICgKLSAgICAgUFJPSl9HVEVfOTEs Ci0gICAgIFBST0pfR1RFXzkyLAotKyAgICBQUk9KX0dURV85MywKLSAgICAgZ3JpZHNfYXZhaWxh YmxlLAotICAgICBwcm9qX2VudiwKLSAgICAgcHJval9uZXR3b3JrX2VudiwKLUBAIC02NCw4ICs2 NSw4IEBAIGRlZiB0ZXN0X2lsbGVnYWxfdHJhbnNmb3JtYXRpb24oKToKLSAgICAgICAgIHh4LCB5 eSA9IHB5cHJvai50cmFuc2Zvcm0oCi0gICAgICAgICAgICAgcDEsIHAyLCAoLTE4MCwgLTE4MCwg MTgwLCAxODAsIC0xODApLCAoLTkwLCA5MCwgOTAsIC05MCwgLTkwKQotICAgICAgICAgKQotLSAg ICBhc3NlcnQgbnAuYWxsKG5wLmlzaW5mKHh4KSkKLS0gICAgYXNzZXJ0IG5wLmFsbChucC5pc2lu Zih5eSkpCi0rICAgIGFzc2VydCBudW1weS5hbGwobnVtcHkuaXNpbmYoeHgpKQotKyAgICBhc3Nl cnQgbnVtcHkuYWxsKG51bXB5LmlzaW5mKHl5KSkKLSAgICAgd2l0aCBweXRlc3Qud2FybnMoRnV0 dXJlV2FybmluZyksIHB5dGVzdC5yYWlzZXMoUHJvakVycm9yKToKLSAgICAgICAgIHB5cHJvai50 cmFuc2Zvcm0oCi0gICAgICAgICAgICAgcDEsIHAyLCAoLTE4MCwgLTE4MCwgMTgwLCAxODAsIC0x ODApLCAoLTkwLCA5MCwgOTAsIC05MCwgLTkwKSwgZXJyY2hlY2s9VHJ1ZQotQEAgLTQxMiw3ICs0 MTMsNyBAQCBkZWYgdGVzdF9hbHdheXNfeHlfX2l0cmFuc2Zvcm0oKToKLSAgICAgICAgICkKLSAK LSAKLS1AcHl0ZXN0Lm1hcmsucGFyYW1ldHJpemUoImVtcHR5X2FycmF5IiwgWygpLCBbXSwgbnAu YXJyYXkoW10pXSkKLStAcHl0ZXN0Lm1hcmsucGFyYW1ldHJpemUoImVtcHR5X2FycmF5IiwgWygp LCBbXSwgbnVtcHkuYXJyYXkoW10pXSkKLSBkZWYgdGVzdF90cmFuc2Zvcm1fZW1wdHlfYXJyYXlf eHkoZW1wdHlfYXJyYXkpOgotICAgICB0cmFuc2Zvcm1lciA9IFRyYW5zZm9ybWVyLmZyb21fY3Jz KDIxOTMsIDQzMjYpCi0gICAgIGFzc2VydF9hcnJheV9lcXVhbCgKLUBAIC00MjAsNyArNDIxLDcg QEAgZGVmIHRlc3RfdHJhbnNmb3JtX2VtcHR5X2FycmF5X3h5KGVtcHR5XwotICAgICApCi0gCi0g Ci0tQHB5dGVzdC5tYXJrLnBhcmFtZXRyaXplKCJlbXB0eV9hcnJheSIsIFsoKSwgW10sIG5wLmFy cmF5KFtdKV0pCi0rQHB5dGVzdC5tYXJrLnBhcmFtZXRyaXplKCJlbXB0eV9hcnJheSIsIFsoKSwg W10sIG51bXB5LmFycmF5KFtdKV0pCi0gZGVmIHRlc3RfdHJhbnNmb3JtX2VtcHR5X2FycmF5X3h5 enQoZW1wdHlfYXJyYXkpOgotICAgICB0cmFuc2Zvcm1lciA9IFRyYW5zZm9ybWVyLmZyb21fcGlw ZWxpbmUoIitpbml0PUlUUkYyMDA4OklUUkYyMDAwIikKLSAgICAgYXNzZXJ0X2FycmF5X2VxdWFs KAotQEAgLTU0MCw3ICs1NDEsNyBAQCBkZWYgdGVzdF9yZXByX19jb25kaXRpb25hbCgpOgotICAg ICAgICAgICAgICJEZXNjcmlwdGlvbjogdW5hdmFpbGFibGUgdW50aWwgcHJval90cmFucyBpcyBj YWxsZWRcbiIKLSAgICAgICAgICAgICAiQXJlYSBvZiBVc2U6XG4tIHVuZGVmaW5lZCIKLSAgICAg ICAgICkKLS0gICAgZWxpZiBQUk9KX0dURV85MjoKLSsgICAgZWxpZiBQUk9KX0dURV85MiBhbmQg bm90IFBST0pfR1RFXzkzOgotICAgICAgICAgYXNzZXJ0IHRyYW5zX3JlcHIgPT0gKAotICAgICAg ICAgICAgICI8VW5rbm93biBUcmFuc2Zvcm1lcjogbm9vcD5cbiIKLSAgICAgICAgICAgICAiRGVz Y3JpcHRpb246IFRyYW5zZm9ybWF0aW9uIGZyb20gRUdNMjAwOCBoZWlnaHQgdG8gV0dTIDg0ICIK LUBAIC01NTUsNyArNTU2LDcgQEAgZGVmIHRlc3RfcmVwcl9fY29uZGl0aW9uYWwoKToKLSAgICAg ICAgICAgICAiKGJhbGxwYXJrIHZlcnRpY2FsIHRyYW5zZm9ybWF0aW9uLCB3aXRob3V0IGVsbGlw c29pZCBoZWlnaHQgIgotICAgICAgICAgICAgICJ0byB2ZXJ0aWNhbCBoZWlnaHQgY29ycmVjdGlv bilcbiIKLSAgICAgICAgICAgICAiQXJlYSBvZiBVc2U6XG4iCi0tICAgICAgICAgICAgIi0gbmFt ZTogV29ybGRcbiIKLSsgICAgICAgICAgICBmIi0gbmFtZTogV29ybGR7Jy4nIGlmIFBST0pfR1RF XzkzIGVsc2UgJyd9XG4iCi0gICAgICAgICAgICAgIi0gYm91bmRzOiAoLTE4MC4wLCAtOTAuMCwg MTgwLjAsIDkwLjApIgotICAgICAgICAgKQotIAotQEAgLTEyMDUsNyArMTIwNiw3IEBAIGRlZiB0 ZXN0X3RyYW5zZm9ybV9ib3VuZHNfZGVuc2lmeShkZW5zaXQKLSAgICAgICAgICIrcHJvaj1sYWVh ICtsYXRfMD00NSArbG9uXzA9LTEwMCAreF8wPTAgK3lfMD0wICIKLSAgICAgICAgICIrYT02Mzcw OTk3ICtiPTYzNzA5OTcgK3VuaXRzPW0gK25vX2RlZnMiLAotICAgICApCi0tICAgIGFzc2VydCBu cC5hbGxjbG9zZSgKLSsgICAgYXNzZXJ0IG51bXB5LmFsbGNsb3NlKAotICAgICAgICAgdHJhbnNm b3JtZXIudHJhbnNmb3JtX2JvdW5kcyg0MCwgLTEyMCwgNjQsIC04MCwgZGVuc2lmeV9wdHM9ZGVu c2l0eSksCi0gICAgICAgICBleHBlY3RlZCwKLSAgICAgKQotQEAgLTEyMjIsNyArMTIyMywxNSBA QCBkZWYgdGVzdF90cmFuc2Zvcm1fYm91bmRzX2RlbnNpZnkoZGVuc2l0Ci0gICAgICJpbnB1dF9i b3VuZHMsIHJhZGlhbnMiLAotICAgICBbCi0gICAgICAgICAoKC0xMjAsIDQwLCAtODAsIDY0KSwg RmFsc2UpLAotLSAgICAgICAgKChucC5yYWRpYW5zKC0xMjApLCBucC5yYWRpYW5zKDQwKSwgbnAu cmFkaWFucygtODApLCBucC5yYWRpYW5zKDY0KSksIFRydWUpLAotKyAgICAgICAgKAotKyAgICAg ICAgICAgICgKLSsgICAgICAgICAgICAgICAgbnVtcHkucmFkaWFucygtMTIwKSwKLSsgICAgICAg ICAgICAgICAgbnVtcHkucmFkaWFucyg0MCksCi0rICAgICAgICAgICAgICAgIG51bXB5LnJhZGlh bnMoLTgwKSwKLSsgICAgICAgICAgICAgICAgbnVtcHkucmFkaWFucyg2NCksCi0rICAgICAgICAg ICAgKSwKLSsgICAgICAgICAgICBUcnVlLAotKyAgICAgICAgKSwKLSAgICAgXSwKLSApCi0gZGVm IHRlc3RfdHJhbnNmb3JtX2JvdW5kc19kZW5zaWZ5X194eShkZW5zaXR5LCBleHBlY3RlZCwgaW5w dXRfYm91bmRzLCByYWRpYW5zKToKLUBAIC0xMjMyLDcgKzEyNDEsNyBAQCBkZWYgdGVzdF90cmFu c2Zvcm1fYm91bmRzX2RlbnNpZnlfX3h5KGRlCi0gICAgICAgICAiK2E9NjM3MDk5NyArYj02Mzcw OTk3ICt1bml0cz1tICtub19kZWZzIiwKLSAgICAgICAgIGFsd2F5c194eT1UcnVlLAotICAgICAp Ci0tICAgIGFzc2VydCBucC5hbGxjbG9zZSgKLSsgICAgYXNzZXJ0IG51bXB5LmFsbGNsb3NlKAot ICAgICAgICAgdHJhbnNmb3JtZXIudHJhbnNmb3JtX2JvdW5kcygKLSAgICAgICAgICAgICAqaW5w dXRfYm91bmRzLCBkZW5zaWZ5X3B0cz1kZW5zaXR5LCByYWRpYW5zPXJhZGlhbnMKLSAgICAgICAg ICksCi1AQCAtMTQ1OSw4ICsxNDY4LDggQEAgZGVmIHRlc3RfdHJhbnNmb3JtX2JvdW5kc19fc291 dGhfcG9sZV9feAotIAotIEBweXRlc3QubWFyay5wYXJhbWV0cml6ZSgiaW5wbGFjZSIsIFtUcnVl LCBGYWxzZV0pCi0gZGVmIHRlc3RfdHJhbnNmb3JtX19mb3J0cmFuX29yZGVyKGlucGxhY2UpOgot LSAgICBsb25zLCBsYXRzID0gbnAuYXJhbmdlKC0xODAsIDE4MCwgMjApLCBucC5hcmFuZ2UoLTkw LCA5MCwgMTApCi0tICAgIGxhdHMsIGxvbnMgPSBucC5tZXNoZ3JpZChsYXRzLCBsb25zKQotKyAg ICBsb25zLCBsYXRzID0gbnVtcHkuYXJhbmdlKC0xODAsIDE4MCwgMjApLCBudW1weS5hcmFuZ2Uo LTkwLCA5MCwgMTApCi0rICAgIGxhdHMsIGxvbnMgPSBudW1weS5tZXNoZ3JpZChsYXRzLCBsb25z KQotICAgICBmX2xvbnMsIGZfbGF0cyA9IGxvbnMuY29weShvcmRlcj0iRiIpLCBsYXRzLmNvcHko b3JkZXI9IkYiKQotICAgICB0cmFuc2Zvcm1lciA9IFRyYW5zZm9ybWVyLmZyb21fY3JzKAotICAg ICAgICAgIkVQU0c6NDMyNiIsCi1AQCAtMTUxOSwxMCArMTUyOCwxMCBAQCBkZWYgdGVzdF80ZF90 cmFuc2Zvcm1fX2lucGxhY2VfX2FycmF5X19pCi0gCi0gZGVmIHRlc3RfNGRfdHJhbnNmb3JtX19p bnBsYWNlX19udW1weSgpOgotICAgICB0cmFuc2Zvcm1lciA9IFRyYW5zZm9ybWVyLmZyb21fY3Jz KDc3ODksIDg0MDEpCi0tICAgIHhhcnIgPSBucC5hcnJheShbMzQ5NjczNy4yNjc5XSwgZHR5cGU9 bnAuZmxvYXQ2NCkKLS0gICAgeWFyciA9IG5wLmFycmF5KFs3NDMyNTQuNDUwN10sIGR0eXBlPW5w LmZsb2F0NjQpCi0tICAgIHphcnIgPSBucC5hcnJheShbNTI2NDQ2Mi45NjIwXSwgZHR5cGU9bnAu ZmxvYXQ2NCkKLS0gICAgdGFyciA9IG5wLmFycmF5KFsyMDE5LjBdLCBkdHlwZT1ucC5mbG9hdDY0 KQotKyAgICB4YXJyID0gbnVtcHkuYXJyYXkoWzM0OTY3MzcuMjY3OV0sIGR0eXBlPW51bXB5LmZs b2F0NjQpCi0rICAgIHlhcnIgPSBudW1weS5hcnJheShbNzQzMjU0LjQ1MDddLCBkdHlwZT1udW1w eS5mbG9hdDY0KQotKyAgICB6YXJyID0gbnVtcHkuYXJyYXkoWzUyNjQ0NjIuOTYyMF0sIGR0eXBl PW51bXB5LmZsb2F0NjQpCi0rICAgIHRhcnIgPSBudW1weS5hcnJheShbMjAxOS4wXSwgZHR5cGU9 bnVtcHkuZmxvYXQ2NCkKLSAgICAgdF94YXJyLCB0X3lhcnIsIHRfemFyciwgdF90YXJyID0gdHJh bnNmb3JtZXIudHJhbnNmb3JtKAotICAgICAgICAgeHg9eGFyciwgeXk9eWFyciwgeno9emFyciwg dHQ9dGFyciwgaW5wbGFjZT1UcnVlCi0gICAgICkKLUBAIC0xNTM4LDEwICsxNTQ3LDEwIEBAIGRl ZiB0ZXN0XzRkX3RyYW5zZm9ybV9faW5wbGFjZV9fbnVtcHkoKToKLSAKLSBkZWYgdGVzdF80ZF90 cmFuc2Zvcm1fX2lucGxhY2VfX251bXB5X19pbnQoKToKLSAgICAgdHJhbnNmb3JtZXIgPSBUcmFu c2Zvcm1lci5mcm9tX2Nycyg3Nzg5LCA4NDAxKQotLSAgICB4YXJyID0gbnAuYXJyYXkoWzM0OTY3 MzddLCBkdHlwZT1ucC5pbnQzMikKLS0gICAgeWFyciA9IG5wLmFycmF5KFs3NDMyNTRdLCBkdHlw ZT1ucC5pbnQzMikKLS0gICAgemFyciA9IG5wLmFycmF5KFs1MjY0NDYyXSwgZHR5cGU9bnAuaW50 MzIpCi0tICAgIHRhcnIgPSBucC5hcnJheShbMjAxOV0sIGR0eXBlPW5wLmludDMyKQotKyAgICB4 YXJyID0gbnVtcHkuYXJyYXkoWzM0OTY3MzddLCBkdHlwZT1udW1weS5pbnQzMikKLSsgICAgeWFy ciA9IG51bXB5LmFycmF5KFs3NDMyNTRdLCBkdHlwZT1udW1weS5pbnQzMikKLSsgICAgemFyciA9 IG51bXB5LmFycmF5KFs1MjY0NDYyXSwgZHR5cGU9bnVtcHkuaW50MzIpCi0rICAgIHRhcnIgPSBu dW1weS5hcnJheShbMjAxOV0sIGR0eXBlPW51bXB5LmludDMyKQotICAgICB0X3hhcnIsIHRfeWFy ciwgdF96YXJyLCB0X3RhcnIgPSB0cmFuc2Zvcm1lci50cmFuc2Zvcm0oCi0gICAgICAgICB4eD14 YXJyLCB5eT15YXJyLCB6ej16YXJyLCB0dD10YXJyLCBpbnBsYWNlPVRydWUKLSAgICAgKQotZGlm ZiAtcnVwTiAtLW5vLWRlcmVmZXJlbmNlIHB5cHJvai0zLjYuMC90ZXN0L3Rlc3RfdXRpbHMucHkg cHlwcm9qLTMuNi4wLW5ldy90ZXN0L3Rlc3RfdXRpbHMucHkKLS0tLSBweXByb2otMy42LjAvdGVz dC90ZXN0X3V0aWxzLnB5CTIwMjMtMDYtMTIgMTU6Mjc6MzIuMDAwMDAwMDAwICswMjAwCi0rKysg cHlwcm9qLTMuNi4wLW5ldy90ZXN0L3Rlc3RfdXRpbHMucHkJMjAyMy0wOS0xMyAxMjoxMzoyMS43 ODMwOTM3MTMgKzAyMDAKLUBAIC0yLDggKzIsNiBAQCBmcm9tIGFycmF5IGltcG9ydCBhcnJheQot IAotIGltcG9ydCBudW1weQotIGltcG9ydCBweXRlc3QKLS1mcm9tIHBhbmRhcyBpbXBvcnQgU2Vy aWVzCi0tZnJvbSB4YXJyYXkgaW1wb3J0IERhdGFBcnJheQotIAotIGZyb20gcHlwcm9qLnV0aWxz IGltcG9ydCBEYXRhVHlwZSwgX2NvcHl0b2J1ZmZlciwgX2NvcHl0b2J1ZmZlcl9yZXR1cm5fc2Nh bGFyCi0gCi1AQCAtMjIsNyArMjAsNiBAQCBkZWYgdGVzdF9fY29weXRvYnVmZmVyX3JldHVybl9z Y2FsYXJfX2luCi0gICAgICJpbl9kYXRhLCBkYXRhX3R5cGUiLAotICAgICBbCi0gICAgICAgICAo bnVtcHkuYXJyYXkoMSksIERhdGFUeXBlLkZMT0FUKSwKLS0gICAgICAgIChEYXRhQXJyYXkobnVt cHkuYXJyYXkoMSkpLCBEYXRhVHlwZS5GTE9BVCksCi0gICAgICAgICAoMSwgRGF0YVR5cGUuRkxP QVQpLAotICAgICAgICAgKFsxXSwgRGF0YVR5cGUuTElTVCksCi0gICAgICAgICAoKDEsKSwgRGF0 YVR5cGUuVFVQTEUpLAotQEAgLTMyLDEwICsyOSwyMyBAQCBkZWYgdGVzdF9fY29weXRvYnVmZmVy KGluX2RhdGEsIGRhdGFfdHlwCi0gICAgIGFzc2VydCBfY29weXRvYnVmZmVyKGluX2RhdGEpID09 IChhcnJheSgiZCIsIFsxXSksIGRhdGFfdHlwZSkKLSAKLSAKLS1AcHl0ZXN0Lm1hcmsucGFyYW1l dHJpemUoCi0tICAgICJpbl9hcnIiLCBbbnVtcHkuYXJyYXkoWzFdKSwgRGF0YUFycmF5KG51bXB5 LmFycmF5KFsxXSkpLCBTZXJpZXMobnVtcHkuYXJyYXkoWzFdKSldCi0tKQotLWRlZiB0ZXN0X19j b3B5dG9idWZmZXJfX251bXB5X2FycmF5KGluX2Fycik6Ci0rZGVmIHRlc3RfX2NvcHl0b2J1ZmZl cl9feGFycmF5X3NjYWxhcigpOgotKyAgICB4YXJyYXkgPSBweXRlc3QuaW1wb3J0b3Jza2lwKCJ4 YXJyYXkiKQotKyAgICBhc3NlcnQgX2NvcHl0b2J1ZmZlcih4YXJyYXkuRGF0YUFycmF5KG51bXB5 LmFycmF5KDEpKSkgPT0gKAotKyAgICAgICAgYXJyYXkoImQiLCBbMV0pLAotKyAgICAgICAgRGF0 YVR5cGUuRkxPQVQsCi0rICAgICkKLSsKLSsKLStAcHl0ZXN0Lm1hcmsucGFyYW1ldHJpemUoImFy cl90eXBlIiwgWyJudW1weSIsICJ4YXJyYXkiLCAicGFuZGFzIl0pCi0rZGVmIHRlc3RfX2NvcHl0 b2J1ZmZlcl9fYXJyYXkoYXJyX3R5cGUpOgotKyAgICBpbl9hcnIgPSBudW1weS5hcnJheShbMV0p Ci0rICAgIGlmIGFycl90eXBlID09ICJ4YXJyYXkiOgotKyAgICAgICAgeGFycmF5ID0gcHl0ZXN0 LmltcG9ydG9yc2tpcCgieGFycmF5IikKLSsgICAgICAgIGluX2FyciA9IHhhcnJheS5EYXRhQXJy YXkoaW5fYXJyKQotKyAgICBlbGlmIGFycl90eXBlID09ICJwYW5kYXMiOgotKyAgICAgICAgcGFu ZGFzID0gcHl0ZXN0LmltcG9ydG9yc2tpcCgicGFuZGFzIikKLSsgICAgICAgIGluX2FyciA9IHBh bmRhcy5TZXJpZXMoaW5fYXJyKQotICAgICBhc3NlcnQgX2NvcHl0b2J1ZmZlcihpbl9hcnIpID09 ICgKLSAgICAgICAgIGluX2Fyci5hc3R5cGUoImQiKS5fX2FycmF5X18oKSwKLSAgICAgICAgIERh dGFUeXBlLkFSUkFZLAoKZGlmZiAtLWdpdCBhL3B5cHJvai1wcm9qLTkuNi4yLnBhdGNoIGIvcHlw cm9qLXByb2otOS42LjIucGF0Y2gKaW5kZXggODJmOWNmNi4uZDViZjRkOCAxMDA2NDQKLS0tIGEv cHlwcm9qLXByb2otOS42LjIucGF0Y2gKKysrIGIvcHlwcm9qLXByb2otOS42LjIucGF0Y2gKQEAg LTEsNiArMSw2IEBACi0tLS0gcHlwcm9qLTMuNy4yLnVuY2hhbmdlZC90ZXN0L3Rlc3RfdHJhbnNm b3JtZXIucHkJMjAyNS0wOC0xNCAxMzowNTowNS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBweXByb2ot My43LjIvdGVzdC90ZXN0X3RyYW5zZm9ybWVyLnB5CTIwMjUtMDktMTIgMTE6MzM6NDYuMzM1NzY2 NTc4ICswMjAwCi1AQCAtMTI2MCw3ICsxMjYwLDcgQEAgZGVmIHRlc3RfdHJhbnNmb3JtX2JvdW5k c19yYWRpYW5zX291dHB1dAorLS0tIHB5cHJvai0zLjguMC51bmNoYW5nZWQvdGVzdC90ZXN0X3Ry YW5zZm9ybWVyLnB5CTIwMjYtMDktMDUgMjA6MzA6NDQuMzMzODM1MTAwICswMjAwCisrKysgcHlw cm9qLTMuOC4wL3Rlc3QvdGVzdF90cmFuc2Zvcm1lci5weQkyMDI2LTA5LTI2IDE1OjQwOjE4Ljkx MzMxMDYzOCArMDIwMAorQEAgLTE1MzYsNyArMTUzNiw3IEBAIGRlZiB0ZXN0X3RyYW5zZm9ybV9i b3VuZHNfcmFkaWFuc19vdXRwdXQKICAgICAgKQogIAogIApAQCAtOSw3ICs5LDcgQEAKICAgICAg Y3JzID0gQ1JTKCJFUFNHOjM4NTEiKQogICAgICB0cmFuc2Zvcm1lciA9IFRyYW5zZm9ybWVyLmZy b21fY3JzKGNycy5nZW9kZXRpY19jcnMsIGNycykKICAgICAgbWlueCwgbWlueSwgbWF4eCwgbWF4 eSA9IGNycy5hcmVhX29mX3VzZS5ib3VuZHMKLUBAIC0xMjc4LDcgKzEyNzgsNyBAQCBkZWYgdGVz dF90cmFuc2Zvcm1fYm91bmRzX19hbnRpbWVyaWRpYW4oCitAQCAtMTU1NCw3ICsxNTU0LDcgQEAg ZGVmIHRlc3RfdHJhbnNmb3JtX2JvdW5kc19fYW50aW1lcmlkaWFuKAogICAgICApCiAgCiAgCgpk aWZmIC0tZ2l0IGEvcHlwcm9qLnNwZWMgYi9weXByb2ouc3BlYwppbmRleCAzZTZjY2ViLi45Zjc1 YmUyIDEwMDY0NAotLS0gYS9weXByb2ouc3BlYworKysgYi9weXByb2ouc3BlYwpAQCAtMiwyNiAr MiwyNSBAQAogIyBhIGNvbXBhdGliaWxpdHkgbWF0cml4IGlzIGFsc28gcHJvdmlkZWQgaW4gZG9j cy9pbnN0YWxsYXRpb24ucnN0CiAlZ2xvYmFsIG1pbmltYWxfbmVlZGVkX3Byb2pfdmVyc2lvbiA5 LjQuMAogCi0jIFNldmVyYWwgZGVwZW5kZW5jaWVzIGFyZSBub3QgeWV0IHJlYnVpbHQgZm9yIFB5 dGhvbiAzLjE0OgotJWJjb25kIHhhcnJheSAwCislYmNvbmQgeGFycmF5IDEKIAogTmFtZTogICAg ICAgICAgIHB5cHJvagotVmVyc2lvbjogICAgICAgIDMuNy4yCi1SZWxlYXNlOiAgICAgICAgMiV7 P2Rpc3R9CitWZXJzaW9uOiAgICAgICAgMy44LjAKK1JlbGVhc2U6ICAgICAgICAxJXs/ZGlzdH0K KwogU3VtbWFyeTogICAgICAgIEN5dGhvbiB3cmFwcGVyIHRvIHByb3ZpZGUgcHl0aG9uIGludGVy ZmFjZXMgdG8gUHJvagogIyB0aGlzIHNvZnR3YXJlIHVzZXMgdGhlICJNSVQ6TW9kZXJuIFN0eWxl IHdpdGggc3VibGljZW5zZSIgbGljZW5zZQogTGljZW5zZTogICAgICAgIE1JVAogVVJMOiAgICAg ICAgICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9qc3doaXQvJXtuYW1lfQogU291cmNlMDogICAgICAg IGh0dHBzOi8vZmlsZXMucHl0aG9uaG9zdGVkLm9yZy9wYWNrYWdlcy9zb3VyY2UvcC8le25hbWV9 LyV7bmFtZX0tJXt2ZXJzaW9ufS50YXIuZ3oKIAotIyBzZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9w eXByb2o0L3B5cHJvai9pc3N1ZXMvMTUwMQogUGF0Y2gxOiAgICAgICAgIHB5cHJvai1wcm9qLTku Ni4yLnBhdGNoCiAKIEJ1aWxkUmVxdWlyZXM6ICBnY2MKIEJ1aWxkUmVxdWlyZXM6ICBwcm9qLWRl dmVsID49ICV7bWluaW1hbF9uZWVkZWRfcHJval92ZXJzaW9ufQogQnVpbGRSZXF1aXJlczogIHBy b2ogPj0gJXttaW5pbWFsX25lZWRlZF9wcm9qX3ZlcnNpb259CiAKLSMgdGhlc2UgbmV4dCA0IGFy ZSBubyBsb25nZXIgbmVlZGVkIGFuZCB0YWtlbiBjYXJlIG9mIGF1dG9tYWdpY2FsbHkKKyMgdGhl c2UgbmV4dCAzIGxpbmVzIGFyZSBubyBsb25nZXIgbmVlZGVkIGFuZCB0YWtlbiBjYXJlIG9mIGF1 dG9tYWdpY2FsbHkKICNCdWlsZFJlcXVpcmVzOiAgbWFrZQogI0J1aWxkUmVxdWlyZXM6ICBweXRo b24zLWN5dGhvbgogI0J1aWxkUmVxdWlyZXM6ICBweXRob24zLWNlcnRpZmkKQEAgLTY1LDYgKzY0 LDEwIEBAIFN1bW1hcnk6ICVzdW1tYXJ5CiAKIFJlcXVpcmVzOiAgcHJvaiA+PSAle21pbmltYWxf bmVlZGVkX3Byb2pfdmVyc2lvbn0KIAorIyBBZGQgc2hhcGVseSBhcyAob3B0aW9uYWwvd2Vhaykg ZGVwZW5kZW5jeS4KKyMgRm9yIGRldGFpbHMgc2VlOiBodHRwczovL2dpdGh1Yi5jb20vcHlwcm9q NC9weXByb2ovaXNzdWVzLzE0NzAKK1JlY29tbWVuZHM6IHB5dGhvbjMtc2hhcGVseQorCiAjIGVu c3VyZSBweXRob24gcHJvdmlkZXMgYXJlIHByb3ZpZGVkIHdoZW4gcHl0aG9uMyBiZWNvbWVzIHRo ZSBkZWZhdWx0IHJ1bnRpbWUKICV7P3B5dGhvbl9wcm92aWRlOiVweXRob25fcHJvdmlkZSBweXRo b24zLSV7bmFtZX19CiAKQEAgLTEyNyw2ICsxMzAsOSBAQCBta2RpciAtcCAle2J1aWxkcm9vdH0l e19kYXRhZGlyfS9kb2MvJXtuYW1lfQogbXYgJXtfYnVpbGRkaXJ9LyV7bmFtZX0tJXt2ZXJzaW9u fS9kb2NzL19idWlsZC9odG1sIFwKICAgICV7YnVpbGRyb290fSV7X2RhdGFkaXJ9L2RvYy8le25h bWV9L2h0bWwKIAorIyByZW1vdmUgdGhlIGhpZGRlbiAuYnVpbGRpbmZvIGZpbGUKK3JtICV7YnVp bGRyb290fSV7X2RhdGFkaXJ9L2RvYy8le25hbWV9L2h0bWwvLmJ1aWxkaW5mbworCiAjIGNvcHkg cHlwcm9qIG1hbiBwYWdlCiBta2RpciAtcCAle2J1aWxkcm9vdH0vJXtfbWFuZGlyfS9tYW4xCiBj cCAle19idWlsZGRpcn0vJXtuYW1lfS0le3ZlcnNpb259L2RvY3MvX2J1aWxkL21hbi9weXByb2ou MSBcCkBAIC0xODIsNiArMTg4LDkgQEAgY3AgLi4vcHlwcm9qLSV7dmVyc2lvbn0vcHl0ZXN0Lmlu aSAuCiAKIAogJWNoYW5nZWxvZworKiBTYXQgU2VwIDI2IDIwMjYgSm9zIGRlIEtsb2UgPGpvc2Rl a2xvZUBnbWFpbC5jb20+IDMuOC4wLTEKKy0gVXBkYXRlIHRvIDMuOC4wCisKICogVHVlIFNlcCAz MCAyMDI1IEpvcyBkZSBLbG9lIDxqb3NkZWtsb2VAZ21haWwuY29tPiAzLjcuMi0yCiAtIFJlYnVp bGQgYXMgcmVxdWVzdGVkIGJ5IGJ6IDIzOTY3NDYgIChweXRob24gIm1hZ2ljIG51bWVyIiBidW1w KQogCgpkaWZmIC0tZ2l0IGEvc291cmNlcyBiL3NvdXJjZXMKaW5kZXggMjdhYmQ1My4uMjdiNzEz MyAxMDA2NDQKLS0tIGEvc291cmNlcworKysgYi9zb3VyY2VzCkBAIC0xICsxIEBACi1TSEE1MTIg KHB5cHJvai0zLjcuMi50YXIuZ3opID0gYTZlYjM0YjEwZWNlMGRiMzZlNzgzM2ZkNzBjNjU4MTcw ZTRjMTFkMjhjYThmNzVlZTJmNTYzNGVlNjVhMmZhNWFmMDk2MTg4YjUwOTczZWJhNTI5NmFjOWY4 OWQ2NWZmYTRiYWRiNWIyODg5Y2NmMDUzN2EwY2Y0YzczZTgyODIKK1NIQTUxMiAocHlwcm9qLTMu OC4wLnRhci5neikgPSAxMThjYTMwYmIyMmUwYWFhYTNmMjQ2NDIzODVmMTY5MmVjNmRmNzEzMzQ5 ZDk5NTZjYmNlOWQ1ODc1ZDgwYzBjMTEzZDlkYzNmMTNlZGI5NDBjZTdkMzVkOWJjM2QzYWZiYWZl OGUwNmQ1NGE2ODExZTkzYWE3N2MxOWYwYzNhNwoKZGlmZiAtLWdpdCBhL3B5cHJvai5zcGVjIGIv cHlwcm9qLnNwZWMKaW5kZXggZTBjMDkzNi4uOWY3NWJlMiAxMDA2NDQKLS0tIGEvcHlwcm9qLnNw ZWMKKysrIGIvcHlwcm9qLnNwZWMKQEAgLTcsNiArNyw3IEBACiBOYW1lOiAgICAgICAgICAgcHlw cm9qCiBWZXJzaW9uOiAgICAgICAgMy44LjAKIFJlbGVhc2U6ICAgICAgICAxJXs/ZGlzdH0KKwog U3VtbWFyeTogICAgICAgIEN5dGhvbiB3cmFwcGVyIHRvIHByb3ZpZGUgcHl0aG9uIGludGVyZmFj ZXMgdG8gUHJvagogIyB0aGlzIHNvZnR3YXJlIHVzZXMgdGhlICJNSVQ6TW9kZXJuIFN0eWxlIHdp dGggc3VibGljZW5zZSIgbGljZW5zZQogTGljZW5zZTogICAgICAgIE1JVApAQCAtMTkwLDMzICsx OTEsOCBAQCBjcCAuLi9weXByb2otJXt2ZXJzaW9ufS9weXRlc3QuaW5pIC4KICogU2F0IFNlcCAy NiAyMDI2IEpvcyBkZSBLbG9lIDxqb3NkZWtsb2VAZ21haWwuY29tPiAzLjguMC0xCiAtIFVwZGF0 ZSB0byAzLjguMAogCi0qIFdlZCBKdWwgMjIgMjAyNiBQeXRob24gTWFpbnQgPHB5dGhvbi1tYWlu dEByZWRoYXQuY29tPiAtIDMuNy4yLTEwCi0tIFJlYnVpbHQgZm9yIFB5dGhvbiAzLjE1LjBiNCBB QkkgY2hhbmdlCi0KLSogVGh1IEp1bCAxNiAyMDI2IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5n IDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gMy43LjItOQotLSBSZWJ1aWx0IGZvciBodHRw czovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzQ1X01hc3NfUmVidWlsZAotCi0qIE1v biBKdW4gMDggMjAyNiBQeXRob24gTWFpbnQgPHB5dGhvbi1tYWludEByZWRoYXQuY29tPiAtIDMu Ny4yLTgKLS0gUmVidWlsdCBmb3IgUHl0aG9uIDMuMTUKLQotKiBGcmkgSnVuIDA1IDIwMjYgUHl0 aG9uIE1haW50IDxweXRob24tbWFpbnRAcmVkaGF0LmNvbT4gLSAzLjcuMi03Ci0tIEJvb3RzdHJh cCBmb3IgUHl0aG9uIDMuMTUKLQotKiBXZWQgSnVuIDAzIDIwMjYgUHl0aG9uIE1haW50IDxweXRo b24tbWFpbnRAcmVkaGF0LmNvbT4gLSAzLjcuMi02Ci0tIFJlYnVpbHQgZm9yIFB5dGhvbiAzLjE1 Ci0KLSogU2F0IEphbiAzMSAyMDI2IEpvcyBkZSBLbG9lIDxqb3NkZWtsb2VAZ21haWwuY29tPiAz LjcuMi01Ci0tIEltcG9ydCB1cHN0cmVhbSBwYXRjaCB0byBmaXggcHJvYmxlbSBpbnRyb2R1Y2Vk IGJ5IHVwZ3JhZGUgcHJvaiB0byB2OS43LjEKLS0gUmVtb3ZlIG9sZCBwYXRjaCBmb3IgcHJvaiB2 OS42LjIgdGhhdCBpcyBubyBsb25nZXIgbmVlZGVkLgotCi0qIFNhdCBKYW4gMTcgMjAyNiBGZWRv cmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDMuNy4y LTQKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV80 NF9NYXNzX1JlYnVpbGQKLQotKiBGcmkgU2VwIDE5IDIwMjUgUHl0aG9uIE1haW50IDxweXRob24t bWFpbnRAcmVkaGF0LmNvbT4gLSAzLjcuMi0zCi0tIFJlYnVpbHQgZm9yIFB5dGhvbiAzLjE0LjBy YzMgYnl0ZWNvZGUKLQotKiBNb24gU2VwIDE1IDIwMjUgQmVuamFtaW4gQS4gQmVhc2xleSA8Y29k ZUBtdXNpY2lubXlicmFpbi5uZXQ+IC0gMy43LjItMgotLSBSZS1lbmFibGUgeGFycmF5IGludGVn cmF0aW9uIHRlc3RzCisqIFR1ZSBTZXAgMzAgMjAyNSBKb3MgZGUgS2xvZSA8am9zZGVrbG9lQGdt YWlsLmNvbT4gMy43LjItMgorLSBSZWJ1aWxkIGFzIHJlcXVlc3RlZCBieSBieiAyMzk2NzQ2ICAo cHl0aG9uICJtYWdpYyBudW1lciIgYnVtcCkKIAogKiBGcmkgU2VwIDEyIDIwMjUgSm9zIGRlIEts b2UgPGpvc2Rla2xvZUBnbWFpbC5jb20+IDMuNy4yLTEKIC0gVXBkYXRlIHRvIDMuNy4yOyAyIHRl c3RzIGFyZSBzdGlsbCBkaXNhYmxlZCBkdWUgdG8gYSByZWdyZXNzaW9uIGluIHByb2ogOS42LjIK