ZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQveG1sZm9ybWF0LnZpbSBiL3J1bnRpbWUvYXV0b2xvYWQveG1sZm9ybWF0LnZpbQppbmRleCBmMjI3YjVlLi5lYTg5NDAxIDEwMDY0NAotLS0gYS9ydW50aW1lL2F1dG9sb2FkL3htbGZvcm1hdC52aW0KKysrIGIvcnVudGltZS9hdXRvbG9hZC94bWxmb3JtYXQudmltCkBAIC0xLDkgKzEsOSBAQAogIiBWaW0gcGx1Z2luIGZvciBmb3JtYXR0aW5nIFhNTAotIiBMYXN0IENoYW5nZTogVGh1LCAyMiBNYXkgMjAxOCAyMToyNjo1NSArMDEwMAotIiBWZXJzaW9uOiAwLjEKLSIgQXV0aG9yOiBDaHJpc3RpYW4gQnJhYmFuZHQgPGNiQDI1NmJpdC5vcmc+Ci0iIFJlcG9zaXRvcnk6ICAgaHR0cHM6Ly9naXRodWIuY29tL2NocmlzYnJhL3ZpbS14bWwtZnRwbHVnaW4KLSIgTGljZW5zZTogVklNIExpY2Vuc2UKKyIgTGFzdCBDaGFuZ2U6IFRodSwgMDcgRGVjIDIwMTgKKyIgICAgIFZlcnNpb246IDAuMQorIiAgICAgIEF1dGhvcjogQ2hyaXN0aWFuIEJyYWJhbmR0IDxjYkAyNTZiaXQub3JnPgorIiAgUmVwb3NpdG9yeTogaHR0cHM6Ly9naXRodWIuY29tL2NocmlzYnJhL3ZpbS14bWwtZnRwbHVnaW4KKyIgICAgIExpY2Vuc2U6IFZJTSBMaWNlbnNlCiAiIERvY3VtZW50YXRpb246IHNlZSA6aCB4bWxmb3JtYXQudHh0IChUT0RPISkKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAiIExvYWQgT25jZToge3t7MQpAQCAtODUsNyArODUsMTEgQEAKIGVuZGZ1bmMKICIgQ2hlY2sgaWYgdGFnIGlzIGEgbmV3IG9wZW5pbmcgdGFnIDx0YWc+IHt7ezEKIGZ1bmMhIHM6U3RhcnRUYWcodGFnKQotICByZXR1cm4gYTp0YWcgPX4/ICdeXHMqPFteLz9dJworICBsZXQgaXNfY29tbWVudCA9IHM6SXNDb21tZW50KGE6dGFnKQorICByZXR1cm4gYTp0YWcgPX4/ICdeXHMqPFteLz9dJyAmJiAhaXNfY29tbWVudAorZW5kZnVuYworZnVuYyEgczpJc0NvbW1lbnQodGFnKQorICByZXR1cm4gYTp0YWcgPX4/ICc8IS0tJwogZW5kZnVuYwogIiBSZW1vdmUgb25lIGxldmVsIG9mIGluZGVudGF0aW9uIHt7ezEKIGZ1bmMhIHM6RGVjcmVhc2VJbmRlbnQoKQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZGlncmFwaC50eHQgYi9ydW50aW1lL2RvYy9kaWdyYXBoLnR4dAppbmRleCA2MmYyM2EyLi4xNGE1Njc2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9kaWdyYXBoLnR4dAorKysgYi9ydW50aW1lL2RvYy9kaWdyYXBoLnR4dApAQCAtMTExLDExICsxMTEsMTQgQEAKIAogWW91IG1heSBoYXZlIHByb2JsZW1zIHVzaW5nIFZpbSB3aXRoIGNoYXJhY3RlcnMgd2hpY2ggaGF2ZSBhIHZhbHVlIGFib3ZlIDEyOC4KIEZvciBleGFtcGxlOiBZb3UgaW5zZXJ0IHVlICh1LXVtbGF1dCkgYW5kIHRoZSBlZGl0b3IgZWNob2VzIFwzMzQgaW4gSW5zZXJ0Ci1tb2RlLiAgQWZ0ZXIgbGVhdmluZyB0aGUgSW5zZXJ0IG1vZGUgZXZlcnl0aGluZyBpcyBmaW5lLiAgTm90ZSB0aGF0IGZtdAotcmVtb3ZlcyBhbGwgY2hhcmFjdGVycyB3aXRoIGEgdmFsdWUgYWJvdmUgMTI4IGZyb20gdGhlIHRleHQgYmVpbmcgZm9ybWF0dGVkLgotT24gc29tZSBVbml4IHN5c3RlbXMgdGhpcyBtZWFucyB5b3UgaGF2ZSB0byBkZWZpbmUgdGhlIGVudmlyb25tZW50LXZhcmlhYmxlCi1MQ19DVFlQRS4gIElmIHlvdSBhcmUgdXNpbmcgY3NoLCB0aGVuIHB1dCB0aGUgZm9sbG93aW5nIGxpbmUgaW4geW91ciAuY3NocmM6ID4KLQlzZXRlbnYgTENfQ1RZUEUgaXNvXzg4NTlfMQorbW9kZS4gIEFmdGVyIGxlYXZpbmcgdGhlIEluc2VydCBtb2RlIGV2ZXJ5dGhpbmcgaXMgZmluZS4gIE9uIHNvbWUgVW5peCBzeXN0ZW1zCit0aGlzIG1lYW5zIHlvdSBoYXZlIHRvIGRlZmluZSB0aGUgZW52aXJvbm1lbnQtdmFyaWFibGUgTENfQ1RZUEUuICBJZiB5b3UgYXJlCit1c2luZyBjc2gsIHRoZW4gcHV0IHRoZSBmb2xsb3dpbmcgbGluZSBpbiB5b3VyIC5jc2hyYzogPgorCXNldGVudiBMQ19DVFlQRSBlbl9VUy51dGY4Cisob3Igc2ltaWxhciBmb3IgYSBkaWZmZXJlbnQgbGFuZ3VhZ2Ugb3IgY291bnRyeSkuIFRoZSB2YWx1ZSBtdXN0IGJlIGEgdmFsaWQKK2xvY2FsZSBvbiB5b3VyIHN5c3RlbSwgaS5lLiBvbiBVbml4LWxpa2Ugc3lzdGVtcyBpdCBtdXN0IGJlIHByZXNlbnQgaW4gdGhlCitvdXRwdXQgb2YgPgorCWxvY2FsZSAtYQogCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIDMuIERlZmF1bHQgZGlncmFwaHMJCQkJCSpkaWdyYXBocy1kZWZhdWx0KgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZXZhbC50eHQgYi9ydW50aW1lL2RvYy9ldmFsLnR4dAppbmRleCA1ZTY1NDVjLi4yMWZjNDNhIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9ldmFsLnR4dAorKysgYi9ydW50aW1lL2RvYy9ldmFsLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpldmFsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE4IE1heSAxNworKmV2YWwudHh0KglGb3IgVmltIHZlcnNpb24gOC4xLiAgTGFzdCBjaGFuZ2U6IDIwMTggRGVjIDA5CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTUxOCw3ICs1MTgsNyBAQAogCTplbmRmb3IKIAogSWYgeW91IHdhbnQgYm90aCB0aGUga2V5IGFuZCB0aGUgdmFsdWUgdXNlIHRoZSB8aXRlbXMoKXwgZnVuY3Rpb24uICBJdCByZXR1cm5zCi1hIExpc3QgaW4gd2hpY2ggZWFjaCBpdGVtIGlzIGEJTGlzdCB3aXRoIHR3byBpdGVtcywgdGhlIGtleSBhbmQgdGhlIHZhbHVlOiA+CithIExpc3QgaW4gd2hpY2ggZWFjaCBpdGVtIGlzIGEgTGlzdCB3aXRoIHR3byBpdGVtcywgdGhlIGtleSBhbmQgdGhlIHZhbHVlOiA+CiAJOmZvciBba2V5LCB2YWx1ZV0gaW4gaXRlbXMobXlkaWN0KQogCTogICBlY2hvIGtleSAuICc6ICcgLiB2YWx1ZQogCTplbmRmb3IKQEAgLTEwODgsMTEgKzEwODgsNiBAQAogCTMuCQllbXB0eSB7TX0KIAkxZTQwCQltaXNzaW5nIC57TX0KIAotCQkJCQkJCSpmbG9hdC1waSogKmZsb2F0LWUqCi1BIGZldyB1c2VmdWwgdmFsdWVzIHRvIGNvcHkmcGFzdGU6ID4KLQk6bGV0IHBpID0gMy4xNDE1OTI2NTM1OQotCTpsZXQgZSAgPSAyLjcxODI4MTgyODQ2Ci0KIFJhdGlvbmFsZToKIEJlZm9yZSBmbG9hdGluZyBwb2ludCB3YXMgaW50cm9kdWNlZCwgdGhlIHRleHQgIjEyMy40NTYiIHdhcyBpbnRlcnByZXRlZCBhcwogdGhlIHR3byBudW1iZXJzICIxMjMiIGFuZCAiNDU2IiwgYm90aCBjb252ZXJ0ZWQgdG8gYSBzdHJpbmcgYW5kIGNvbmNhdGVuYXRlZCwKQEAgLTExMDEsNiArMTA5NiwxNSBAQAogaW5jb21wYXRpYmlsaXR5IHdhcyBhY2NlcHRlZCBpbiBmYXZvciBvZiBiZWluZyBhYmxlIHRvIHVzZSB0aGUgbm9ybWFsIG5vdGF0aW9uCiBmb3IgZmxvYXRpbmcgcG9pbnQgbnVtYmVycy4KIAorCQkJCQkJCSpmbG9hdC1waSogKmZsb2F0LWUqCitBIGZldyB1c2VmdWwgdmFsdWVzIHRvIGNvcHkmcGFzdGU6ID4KKwk6bGV0IHBpID0gMy4xNDE1OTI2NTM1OQorCTpsZXQgZSAgPSAyLjcxODI4MTgyODQ2CitPciwgaWYgeW91IGRvbid0IHdhbnQgdG8gd3JpdGUgdGhlbSBpbiBhcyBmbG9hdGluZy1wb2ludCBsaXRlcmFscywgeW91IGNhbgorYWxzbyB1c2UgZnVuY3Rpb25zLCBsaWtlIHRoZSBmb2xsb3dpbmc6ID4KKwk6bGV0IHBpID0gYWNvcygtMS4wKQorCTpsZXQgZSAgPSBleHAoMS4wKQorCiAJCQkJCQkqZmxvYXRpbmctcG9pbnQtcHJlY2lzaW9uKgogVGhlIHByZWNpc2lvbiBhbmQgcmFuZ2Ugb2YgZmxvYXRpbmcgcG9pbnRzIG51bWJlcnMgZGVwZW5kcyBvbiB3aGF0ICJkb3VibGUiCiBtZWFucyBpbiB0aGUgbGlicmFyeSBWaW0gd2FzIGNvbXBpbGVkIHdpdGguICBUaGVyZSBpcyBubyB3YXkgdG8gY2hhbmdlIHRoaXMgYXQKQEAgLTE0MzgsNyArMTQ0Miw5IEBACiB2YXJpYWJsZXMgZm9yIGVhY2ggYnVmZmVyLiAgVXNlIGxvY2FsIGJ1ZmZlciB2YXJpYWJsZXMgaW5zdGVhZCB8Yjp2YXJ8LgogCiAKLVByZWRlZmluZWQgVmltIHZhcmlhYmxlczoJCQkqdmltLXZhcmlhYmxlKiAqdjp2YXIqICp2OioKK1BSRURFRklORUQgVklNIFZBUklBQkxFUwkJCSp2aW0tdmFyaWFibGUqICp2OnZhciogKnY6KgorCQkJCQkJCQkqRTk2MyoKK1NvbWUgdmFyaWFibGVzIGNhbiBiZSBzZXQgYnkgdGhlIHVzZXIsIGJ1dCB0aGUgdHlwZSBjYW5ub3QgYmUgY2hhbmdlZC4KIAogCQkJCQkqdjpiZXZhbF9jb2wqICpiZXZhbF9jb2wtdmFyaWFibGUqCiB2OmJldmFsX2NvbAlUaGUgbnVtYmVyIG9mIHRoZSBjb2x1bW4sIG92ZXIgd2hpY2ggdGhlIG1vdXNlIHBvaW50ZXIgaXMuCkBAIC03ODQ1LDcgKzc4NTEsOCBAQAogCQlhcyB3aGVuIHVzaW5nIGEgZmxvYXRpbmcgcG9pbnQgbnVtYmVyIGluIGFuIGV4cHJlc3Npb24sIHNlZQogCQl8ZmxvYXRpbmctcG9pbnQtZm9ybWF0fC4gIEJ1dCBpdCdzIGEgYml0IG1vcmUgcGVybWlzc2l2ZS4KIAkJRS5nLiwgIjFlNDAiIGlzIGFjY2VwdGVkLCB3aGlsZSBpbiBhbiBleHByZXNzaW9uIHlvdSBuZWVkIHRvCi0JCXdyaXRlICIxLjBlNDAiLgorCQl3cml0ZSAiMS4wZTQwIi4gIFRoZSBoZXhhZGVjaW1hbCBmb3JtICIweDEyMyIgaXMgYWxzbworCQlhY2NlcHRlZCwgYnV0IG5vdCBvdGhlcnMsIGxpa2UgYmluYXJ5IG9yIG9jdGFsLgogCQlUZXh0IGFmdGVyIHRoZSBudW1iZXIgaXMgc2lsZW50bHkgaWdub3JlZC4KIAkJVGhlIGRlY2ltYWwgcG9pbnQgaXMgYWx3YXlzICcuJywgbm8gbWF0dGVyIHdoYXQgdGhlIGxvY2FsZSBpcwogCQlzZXQgdG8uICBBIGNvbW1hIGVuZHMgdGhlIG51bWJlcjogIjEyLDM0NS42NyIgaXMgY29udmVydGVkIHRvCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9tYXAudHh0IGIvcnVudGltZS9kb2MvbWFwLnR4dAppbmRleCBlOWFkMmEwLi5kNDNhZmU5IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9tYXAudHh0CisrKyBiL3J1bnRpbWUvZG9jL21hcC50eHQKQEAgLTEsNCArMSw0IEBACi0qbWFwLnR4dCogICAgICAgRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE4IE1heSAxMworKm1hcC50eHQqICAgICAgIEZvciBWaW0gdmVyc2lvbiA4LjEuICBMYXN0IGNoYW5nZTogMjAxOCBEZWMgMDgKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29wdGlvbnMudHh0IGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKaW5kZXggNzc0ZTc4Mi4uYjUyNzhmMSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKQEAgLTgxMjYsNyArODEyNiwxMSBAQAogCXNlcGFyYXRlZCBieSBub24ta2V5d29yZCBjaGFyYWN0ZXJzICh3aGl0ZSBzcGFjZSBpcyBwcmVmZXJyZWQpLgogCU1heGltdW0gbGluZSBsZW5ndGggaXMgNTEwIGJ5dGVzLgogCi0JVW5mb3J0dW5hdGVseSB3ZSBjdXJyZW50bHkgY2Fubm90IHJlY29tbWVuZCBhIGZpbGUgdG8gYmUgdXNlZCBoZXJlLgorCUFuIEVuZ2xpc2ggd29yZCBsaXN0IHdhcyBhZGRlZCB0byB0aGlzIGdpdGh1YiBpc3N1ZToKKwlodHRwczovL2dpdGh1Yi5jb20vdmltL3ZpbS9pc3N1ZXMvNjI5I2lzc3VlY29tbWVudC00NDMyOTMyODIKKwlVbnBhY2sgdGhlc2F1cnVzX3BrZy56aXAsIHB1dCB0aGUgdGhlc2F1cnVzLnR4dCBmaWxlIHNvbWV3aGVyZSwgZS5nLgorCX4vLnZpbS90aGVzYXVydXMvZW5nbGlzaC50eHQsIGFuZCB0aGUgJ3RoZXNhdXJ1cycgb3B0aW9uIHRvIHRoaXMgZmlsZQorCW5hbWUuCiAKIAlUbyBpbmNsdWRlIGEgY29tbWEgaW4gYSBmaWxlIG5hbWUgcHJlY2VkZSBpdCB3aXRoIGEgYmFja3NsYXNoLiAgU3BhY2VzCiAJYWZ0ZXIgYSBjb21tYSBhcmUgaWdub3JlZCwgb3RoZXJ3aXNlIHNwYWNlcyBhcmUgaW5jbHVkZWQgaW4gdGhlIGZpbGUKQEAgLTg0MzIsOCArODQzNiw5IEBACiAJfHRfUlZ8IGlzIHNldCB0byB0aGUgZXNjYXBlIHNlcXVlbmNlIHRvIHJlcXVlc3QgdGhlIHh0ZXJtIHZlcnNpb24KIAludW1iZXIsIG1vcmUgaW50ZWxsaWdlbnQgZGV0ZWN0aW9uIHByb2Nlc3MgcnVucy4KIAlUaGUgInh0ZXJtMiIgdmFsdWUgd2lsbCBiZSBzZXQgaWYgdGhlIHh0ZXJtIHZlcnNpb24gaXMgcmVwb3J0ZWQgdG8gYmUKLQlmcm9tIDk1IHRvIDI3Ni4gIFRoZSAic2dyIiB2YWx1ZSB3aWxsIGJlIHNldCBpZiB0aGUgeHRlcm0gdmVyc2lvbiBpcwotCTI3NyBvciBoaWdoZXIgYW5kIHdoZW4gVmltIGRldGVjdHMgTWFjIFRlcm1pbmFsLmFwcCBvciBpVGVybTIuCisJZnJvbSA5NSB0byAyNzYuICBUaGUgInNnciIgdmFsdWUgd2lsbCBiZSBzZXQgaWYgVmltIGRldGVjdHMgTWFjCisJVGVybWluYWwuYXBwLCBpVGVybTIgb3IgbWludHR5LCBhbmQgd2hlbiB0aGUgeHRlcm0gdmVyc2lvbiBpcyAyNzcgb3IKKwloaWdoZXIuCiAJSWYgeW91IGRvIG5vdCB3YW50ICd0dHltb3VzZScgdG8gYmUgc2V0IHRvICJ4dGVybTIiIG9yICJzZ3IiCiAJYXV0b21hdGljYWxseSwgc2V0IHRfUlYgdG8gYW4gZW1wdHkgc3RyaW5nOiA+CiAJCTpzZXQgdF9SVj0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Rlcm1pbmFsLnR4dCBiL3J1bnRpbWUvZG9jL3Rlcm1pbmFsLnR4dAppbmRleCA0OTlhMjQ1Li4wZGI2OWRmIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90ZXJtaW5hbC50eHQKKysrIGIvcnVudGltZS9kb2MvdGVybWluYWwudHh0CkBAIC0xMTAsNyArMTEwLDcgQEAKIHRvIFRlcm1pbmFsLU5vcm1hbCBtb2RlOiA+CiAgICB0bm9yZW1hcCA8RjE+IDxDLVc+TgogWW91IGNhbiB1c2UgRXNjLCBidXQgeW91IG5lZWQgdG8gbWFrZSBzdXJlIGl0IHdvbid0IGNhdXNlIG90aGVyIGtleXMgdG8KLWJyZWFrOiA+CiticmVhayAoY3Vyc29yIGtleXMgc3RhcnQgd2l0aCBhbiBFc2MsIHNvIHRoZXkgbWF5IGJyZWFrKTogPgogICAgdG5vcmVtYXAgPEVzYz4gPEMtVz5OCiAgICBzZXQgbm90aW1lb3V0IHR0aW1lb3V0IHRpbWVvdXRsZW49MTAwCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RvZG8udHh0IGIvcnVudGltZS9kb2MvdG9kby50eHQKaW5kZXggMDQzZTZkNS4uNGI0NDM5ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdG9kby50eHQKKysrIGIvcnVudGltZS9kb2MvdG9kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE4IE1heSAxNworKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA4LjEuICBMYXN0IGNoYW5nZTogMjAxOCBEZWMgMDkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMzgsMTUgKzM4LDExIEBACiAJCQkJCQkJKmtub3duLWJ1Z3MqCiAtLS0tLS0tLS0tLS0tLS0tLS0tLSBLbm93biBidWdzIGFuZCBjdXJyZW50IHdvcmsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotTWFrZSAiOnNjcmlwdCA0MCIgZWRpdCB0aGUgc2NyaXB0IGxpc3RlZCB3aXRoIG51bWJlciA0MC4gIEFjdHVhbGx5IHVzZQotIjpzY3JpcHRuYW1lcyIuCi0KLURvd25sb2FkIHBhZ2U6ICJBIDY0IGJpdCB2ZXJzaW9uIiBsaW5rIGlzIHdyb25nLCB1c2UgdGhpcyBvbmUgaW5zdGVhZDoKLWh0dHBzOi8vZ2l0aHViLmNvbS92aW0vdmltLXdpbjMyLWluc3RhbGxlci9yZWxlYXNlcy9sYXRlc3QKLQogJ2luY3NlYXJjaCcgd2l0aCA6czogKCMzMzIxKQogLSA6cy9mb28gIHVzaW5nIENUUkwtRyBtb3ZlcyB0byBhbm90aGVyIGxpbmUsIHNob3VsZCBub3QgaGFwcGVuLCBvciB1c2UgdGhlCiAgIGNvcnJlY3QgbGluZSAoaXQgdXNlcyB0aGUgbGFzdCBidXQgb25lIGxpbmUpIChMaWZlcGlsbGFyLCBBdWcgMTgsICMzMzQ1KQorLSA6c0BwYXQvdGVybkAgZG9lc24ndCBpbmNsdWRlICIvIiBpbiB0aGUgcGF0dGVybi4gKFRha2FoaXJvIFlvc2hpaGFyYSwgIzM2MzcpCisgICBwYXNzIGRlbGltIHRvIGRvX3NlYXJjaCgpID8KIC0gQWxzbyBzdXBwb3J0IHJhbmdlOiA6L2Zvby8sL2Jhci9kZWxldGUKIC0gQWxzbyBzdXBwb3J0IGZvciB1c2VyIGNvbW1hbmQsIGUuZy4gQ2ZpbHRlcgogLSA6JXMvZm9vIHNob3VsZCB0YWtlIHRoZSBmaXJzdCBtYXRjaCBiZWxvdyB0aGUgY3Vyc29yIGxpbmUsIHVubGVzcyB0aGVyZQpAQCAtMTA1LDIyICsxMDEsMTkgQEAKIC0gV2hlbiAnZW5jb2RpbmcnIGlzIG5vdCB1dGYtOCwgb3IgdGhlIGpvYiBpcyB1c2luZyBhbm90aGVyIGVuY29kaW5nLCBzZXR1cAogICBjb252ZXJzaW9ucy4KIAotVXNlcnMgZ2V0IHVzZWQgdG8gImZ1bmN0aW9uISIgYmVjYXVzZSB0aGV5IHJlbG9hZCBhIHNjcmlwdCBmaWxlLiAgSG93IGFib3V0Ci1yZWNvZ25pemluZyB0aGUgc2NyaXB0IGlzIHJlLXNvdXJjZWQgYW5kIG5vdCBnaXZpbmcgYW4gZXJyb3IgZm9yIHRoZSBmaXJzdAotZnVuY3Rpb24gdGhhdCBvdmVyd3JpdGVzLiAgVGhlbiBvbmUgY2FuIGxlYXZlIG91dCB0aGUgZXhjbGFtYXRpb24gbWFyayBhbmQKLWNhdGNoIGFjdHVhbCBlcnJvcnMsIG92ZXJ3cml0aW5nIGEgZnVuY3Rpb24gZnJvbSBhbm90aGVyIHNjcmlwdC4KKyI6ZnVuY3Rpb24iIGNhbiBub3cgc2lsZW50bHkgb3ZlcndyaXRlIHRoZSBmdW5jdGlvbiBmcm9tIHRoZSBzYW1lIHNjcmlwdC4KK0RvIHRoZSBzYW1lIGZvciAiOmNvbW1hbmQiID8KIAogVXBkYXRlIGZvciBHZXJtYW4gc3BlbGwgZmlsZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc2JyYS92aW0vY29tcGFyZS81ZTAyMWM5OTBmODgxN2E1MGQzMjY0NzgyYTUuLi4zYjI3YzkyZjI5NzU0MDc2MWViYmQ5MmQwNGZiMwogKENocmlzdGlhbiBCcmFiYW5kdCwgMjAxOCBOb3YgNCkKIAotUGF0Y2ggZm9yIG5zaXMvUkVBRE1FLnR4dCBhbmQgdW5pbnN0YWwudHh0IChLZW4gVGFrYXRhLCAyMDE4IE5vdiAxNywgIzM2MTQpCi0KLVBhdGNoIHRvIGFkZCBjb21tYW5kbGluZSBjb21wbGV0aW9uIHRlc3RzLiAoRG9taW5pcXVlLCAjMzYyMikKLQogUHJvYmxlbSB3aXRoIFZpc3VhbCB5YW5rIHdoZW4gJ2xpbmVicmVhaycgYW5kICdzaG93YnJlYWsnIGFyZSBzZXQuCiBQYXRjaCB3aXRoIHRlc3RzLCBidXQgaXQncyBub3QgY2xlYXIgaG93IGl0IGlzIHN1cHBvc2VkIHRvIHdvcmsuICh0b21tbSwgMjAxOAogTm92IDE3KQogCitQYXRjaCB0byBhZGQgY29uZmlndXJlIGZsYWdzIHRvIHNraXAgcnRsLCBmYXJzaSBhbmQgYXJhYmljIHN1cHBvcnQuCisoRGllZ28gQ2FycmnDs24sICMxODY3KQorCiBLZXkgbWFwcGluZyB0aW1lcyBvdXQgd2hlbiB1c2luZyBhIHRpbWVyIGluIEd2aW0uIChNaWNoYWVsIEhlbnJ5LCAyMDE4IFNlcCA5LAogIzM0MTcpCiAKQEAgLTEyOCw5ICsxMjEsNiBAQAogLSBfc3RhdDY0IGlzIG5vdCBkZWZpbmVkLCBuZWVkIHRvIHVzZSAic3RydWN0IHN0YXQiIGluIHZpbS5oCiAtIFdJTlZFUiBjb25mbGljdCwgc2hvdWxkIHVzZSAweDA2MDAgYnkgZGVmYXVsdD8KIAotQWRkaW5nIGEgZm9sZCB3aXRoIGEgbWFya2VyIGluIGEgQyBmaWxlIGRvZXNuJ3QgYWRkIHRoZSBjb21tZW50IC8qICovIGlmIHRoZQotbGluZSBjb250YWlucyBhICogc29tZXdoZXJlLiAgUGF0Y2ggd2l0aCBhIGZpeCAoSGlyb2hpdG8gSGlnYXNoaSwgMjAxOCBOb3YgMjIpCi0KIENyYXNoIGluIHRlcm1pbmFsIHdpdGggbG9uZyBtdWx0aS1ieXRlIHNlcXVlbmNlLiAoMjAxOCBOb3YgMTcsICMzNjE5KQogRG9taW5pcXVlIGNhbm5vdCByZXByb2R1Y2UuIFVwZGF0ZSBOb3YgMTguCiBTdWdnZXN0ZWQgc29sdXRpb24gYnkgWWFzdWhpcm8gTWF0c3Vtb3RvLCAyMDE4IE5vdiAxOC4KQEAgLTEzOCw2ICsxMjgsMTQgQEAKIENyYXNoIHdoZW4gbWl4aW5nIG1hdGNoYWRkIGFuZCBzdWJzdGl0dXRlKCk/IChNYXggQ2hyaXN0aWFuIFBvaGxlLCAyMDE4IE1heQogMTMsICMyOTEwKSAgQ2FuJ3QgcmVwcm9kdWNlPwogCitQYXRjaCB0byBzaW1wbGlmeSBuc2lzIGluc3RhbGxlci4gKEtlbiBUYWthdGEsIDIwMTggU2VwIDI0LCB3YXMgIzM0NzkpCitOb3cgaW5jbHVkZWQgaW4gIzM1MDEsIHVzaW5nIE1VSTIuICBVc2UgdGhlIHppcCBmaWxlIHRvIGdldCB0aGUgYmluYXJ5IGZpbGVzOgoraHR0cHM6Ly9naXRodWIuY29tL3ZpbS92aW0vZmlsZXMvMjQ3NTYyMS9uc2lzLWljb25zLnppcAorUmVhZHkgdG8gaW5jbHVkZSBub3cuCisKK1BhdGNoIHRvIGFkZCBibG9iIHR5cGUgc3VwcG9ydC4gIChZYXN1aGlybyBNYXRzdW1vdG8sIDIwMTggTm92IDI2LCAjMzYzOCkKK05vdCBkb25lIHlldC4KKwogRXJyb3JzIGZvdW5kIHdpdGggcmFuZG9tIGRhdGE6CiAgICAgaGVhcC1idWZmZXItb3ZlcmZsb3cgaW4gYWxpc3RfYWRkICgjMjQ3MikKIApAQCAtMTQ3LDYgKzE0NSw5IEBACiBQYXRjaCB0byBmaXggdGhhdCBhcHBlbmRpbmcgbWFrZXMgaXRlbXMgdG8gYmUgInJlY29nbml6ZWQiLgogKFllZ2FwcGFuLCAyMDE4IE5vdiAyMykuIFJlcG9ydGVkIGJ5IERhbmllbCBIYWhsZXIsICMzNjMzLgogCitQYXRjaCB0byBkZWZpbmUgYW5kIG1hbmlwdWxhdGUgc2lnbnMgd2l0aCBmdW5jdGlvbnMuICBBZGRzIHNpZ24gZ3JvdXBzIGFuZAorcHJpb3JpdHkuICAgKFllZ2FwcGFuIExha3NobWFuYW4sICMzNjUyKQorCiBJbXByb3ZlIGZhbGxiYWNrIGZvciBtZW51IHRyYW5zbGF0aW9ucywgdG8gYXZvaWQgaGF2aW5nIHRvIGNyZWF0ZSBsb3RzIG9mCiBmaWxlcyB0aGF0IHNvdXJjZSB0aGUgYWN0dWFsIGZpbGUuICBFLmcuIG1lbnVfZGFfZGUgLT4gbWVudV9kYQogSW5jbHVkZSBwYXJ0IG9mICMzMjQyPwpAQCAtMTc1LDkgKzE3Niw2IEBACiBNb3JlIHdhcm5pbmdzIGZyb20gc3RhdGljIGFuYWx5c2lzOgogaHR0cHM6Ly9sZ3RtLmNvbS9wcm9qZWN0cy9nL3ZpbS92aW0vYWxlcnRzLz9tb2RlPWxpc3QKIAotUXVpY2tmaXggYWNjZXNzaW5nIGZyZWUgbWVtb3J5LiAoRG9taW5pcXVlLCAyMDE4IE9jdCAxMywgIzM1MzgpCi1ZZWdhcHBhbiB3aWxsIGxvb2sgaW50byBpdC4KLQogUGF0Y2ggZm9yIHRoaXM6IChBcm9uIFdpZGZvcnNzLCAyMDE4IE9jdCAxMywgIzM1MzkpCiAgICAgbWlzc2luZyBhIHRlc3QuCiA3ICAgTWFrZSAnc2Nyb2xsb2ZmJyBhIGdsb2JhbC1sb2NhbCBvcHRpb24sIHNvIHRoYXQgaXQgY2FuIGJlIGRpZmZlcmVudCBpbiB0aGUKQEAgLTE5OSwxNCArMTk3LDEyIEBACiAiOm1rc2Vzc2lvbiIgY2Fubm90IGhhbmRsZSBhIHZlcnkgbG9uZyAncnVudGltZXBhdGgnLiAoVGltb3RoeSBNYWRkZW4sIDIxIFNlcAogMjAxOCwgIzM0NjYpICBQYXRjaCBmcm9tIENocmlzdGlhbiwgMjAxOCBPY3QgMzAgKHdpdGggY29tbWVudHMpLgogCitQYXRjaCB0byBhZGQgZnVuY3Rpb25zIGZvciBzaWducy4gKFllZ2FwcGFuIExha3NobWFuYW4sIDIwMTggTm92IDI0KQorb2Jzb2xldGU6IFBhdGNoIHRvIGFkZCBmdW5jdGlvbnMgZm9yIHNpZ25zLiAoQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDEzIEphbiAyNykKKwogUGF0Y2ggaW4gcHVsbCByZXF1ZXN0ICMyOTY3OiBBbGxvdyB3aGl0ZSBzcGFjZSBpbiBzaWduIHRleHQuIChCZW4gSmFja3NvbikKIFRlc3QgZmFpbHMgaW4gQXBwVmV5b3IuCiAKLVBhdGNoIHRvIHNpbXBsaWZ5IG5zaXMgaW5zdGFsbGVyLiAoS2VuIFRha2F0YSwgMjAxOCBTZXAgMjQsIHdhcyAjMzQ3OSkKLU5vdyBpbmNsdWRlZCBpbiAjMzUwMSwgdXNpbmcgTVVJMi4gIFVzZSB0aGUgemlwIGZpbGUgdG8gZ2V0IHRoZSBiaW5hcnkgZmlsZXM6Ci1odHRwczovL2dpdGh1Yi5jb20vdmltL3ZpbS9maWxlcy8yNDc1NjIxL25zaXMtaWNvbnMuemlwCi1TdGlsbCBiZWluZyB3b3JrZWQgb24uCi0KIG1sX2dldCBlcnJvcjogKElzcmFlbCBDaGF1Y2EgRnVlbnRlcywgMjAxOCBPY3QgMTcsICMzNTUwKS4KIAogUGF0Y2ggdG8gY29udmVydCB0ZW1wIGZpbGUgbmFtZS4gKFlhc3VoaXJvIE1hdHN1bW90bywgIzM1MjApCkBAIC0yMjcsNiArMjIzLDkgQEAKIAogUGF0Y2ggdG8gZml4IHRoYXQgYnJhY2tldGVkIHBhc3RlIHJlbWFpbnMgYWZ0ZXIgVmltIGV4aXRzLiAoMjAxOCBPY3QgMzAsICMzNTc5KQogCitQYXRjaCBmb3IgbG5leHQvbHByZXYgd29yayBpbiBzcGVjaWZpYyBjYXNlcy4gKFllZ2FwcGFuIExha3NobWFuYW4sIDIwMTggRGVjCis0LCAjMzYzMykKKwogY3Vyc29ybGluZSBoaWdobGlnaHRpbmcgbm90IHJlbW92ZWQgYWZ0ZXIgeWFua2luZyBpbiBWaXN1YWwgbW9kZS4KIChNYXTDqW8gWmFuaWJlbGxpLCAyMDE4IE9jdCAzMCwgIzM1NzgpCiBQYXRjaCBieSBDaHJpc3RpYW4sIE9jdCAzMC4KQEAgLTI0Niw2ICsyNDUsOSBAQAogCiBnZXRob3N0YnluYW1lKCkgaXMgb2xkLCB1c2UgZ2V0YWRkcmluZm8oKSBpZiBhdmFpbGFibGUuICgjMzIyNykKIAorUGF0Y2ggdG8gYWRkIG1hdGNoIGNvdW50IGFuZCBjdXJyZW50IGluZGV4ICIzLzQ0IiB3aGVuIHVzaW5nICJuIiBjb21tYW5kLgorKENocmlzdGlhbiBCcmFiYW5kdCwgb24gaXNzdWUgIzQ1MykuICBPbmx5IHdoZW4gc2VhcmNoIHN0cmluZyB3YXMgdHlwZWQ/CisKIG1hdGNoYWRkcG9zKCkgZ2V0cyBzbG93IHdpdGggbWFueSBtYXRjaGVzLiAgUHJvcG9zYWwgYnkgUmljayBIb3dlLCAyMDE4IEp1bAogMTkuCiAKQEAgLTI4OCw2ICsyOTAsOSBAQAogCiBEaWZmZXJlbmNlIGJldHdlZW4gdHdvIHJlZ2V4cCBlbmdpbmVzOiAjMzM3MwogCitQYXRjaCB0byBhZGQgY2hfbGlzdGVuKCkgKFlhc3VoaXJvIE1hdHN1bW90bywgMjAxOCBOb3YgMjYsICMzNjM5KQorV2hhdCBpcyB0aGUgcHJhY3RpY2FsIHVzZSBmb3IgdGhpcz8KKwogV2hlbiB0aGUgbGFzdCBsaW5lIHdyYXBzLCBzZWxlY3Rpbmcgd2l0aCB0aGUgbW91c2UgYmVsb3cgdGhhdCBsaW5lIG9ubHkKIGluY2x1ZGVzIHRoZSBmaXJzdCBzY3JlZW4gbGluZS4gKDIwMTggQXVnIDIzLCAjMzM2OCkKIApAQCAtNzU5LDkgKzc2NCw2IEBACiAKIE1lbW9yeSBsZWFrIGluIHRlc3Q5Nz8gIFRoZSBzdHJpbmcgaXMgYWN0dWFsbHkgZnJlZWQuICBXZWlyZC4KIAotUGF0Y2ggdG8gYWRkIGNvbmZpZ3VyZSBmbGFncyB0byBza2lwIHJ0bCwgZmFyc2kgYW5kIGFyYWJpYyBzdXBwb3J0LgotKERpZWdvIENhcnJpw7NuLCAjMTg2NykKLQogYXNzZXJ0X2ZhaWxzKCkgY2FuIG9ubHkgY2hlY2sgZm9yIHRoZSBmaXJzdCBlcnJvci4gIE1ha2UgaXQgcG9zc2libGUgdG8gaGF2ZQogaXQgY2F0Y2ggbXVsdGlwbGUgZXJyb3JzIGFuZCBjaGVjayBhbGwgb2YgdGhlbS4KIApAQCAtMTY1NCw4ICsxNjU2LDYgQEAKIAogUGF0Y2ggdG8gbWFrZSBjb25maXJtKCkgZGlzcGxheSBjb2xvcnMuIChDaHJpc3RpYW4gQnJhYmFuZHQsIDIwMTIgTm92IDkpCiAKLVBhdGNoIHRvIGFkZCBmdW5jdGlvbnMgZm9yIHNpZ25zLiAoQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDEzIEphbiAyNykKLQogUGF0Y2ggdG8gcmVtb3ZlIGZsaWNrZXIgZnJvbSBwb3B1cCBtZW51LiAoWWFzdWhpcm8gTWF0c3Vtb3RvLCAyMDEzIEF1ZyAxNSkKIAogUHJvYmxlbSB3aXRoIHJlZnJlc2g6YWx3YXlzIGluIGNvbXBsZXRpb24uIChUeWxlciBXYWRlLCAyMDEzIE1hciAxNykKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1kYS4xIGIvcnVudGltZS9kb2MvdmltLWRhLjEKaW5kZXggY2MyNzJhZC4uMzQzN2JiYyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLWRhLjEKKysrIGIvcnVudGltZS9kb2MvdmltLWRhLjEKQEAgLTMyMSwxMyArMzIxLDEzIEBACiAuVFAKIFwtUgogU2tyaXZlYmVza3l0dGV0IHRpbHN0YW5kLgotJ3JlYWRvbmx5Jy12YWxnbXVsaWdoZWRlbiBz5nR0ZXMuCitcJidyZWFkb25seSctdmFsZ211bGlnaGVkZW4gc+Z0dGVzLgogRHUga2FuIHN0YWRpZyByZWRpZ2VyZSBidWZmZXJlbiwgbWVuIHZpbCB25nJlIGZvcmhpbmRyZXQgaQogZmVqbGFndGlndCBhdCBvdmVyc2tyaXZlIGVuIGZpbC4KIEh2aXMgZHUgdmlsIG92ZXJza3JpdmUgZW4gZmlsLCBz5SB0aWxm+GogZXQKIHVkcuVic3RlZ24gdGlsIEV4LWtvbW1hbmRvZW4sIHNvbSBpICI6dyEiLgogXC1SLXRpbHZhbGdldCBpbmRlYuZyZXIgb2dz5SBcLW4tdGlsdmFsZ2V0IChzZSBvdmVuZm9yKS4KLSdyZWFkb25seSctdmFsZ211bGlnaGVkZW4ga2FuIHNs5XMgZnJhIG1lZCAiOnNldCBub3JvIi4KK1wmJ3JlYWRvbmx5Jy12YWxnbXVsaWdoZWRlbiBrYW4gc2zlcyBmcmEgbWVkICI6c2V0IG5vcm8iLgogU2UgIjpoZWxwICdyZWFkb25seSciLgogLlRQCiBcLXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1kYS5VVEYtOC4xIGIvcnVudGltZS9kb2MvdmltLWRhLlVURi04LjEKaW5kZXggNDUxYzMwZi4uZjYxOWU0YSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLWRhLlVURi04LjEKKysrIGIvcnVudGltZS9kb2MvdmltLWRhLlVURi04LjEKQEAgLTMyMSwxMyArMzIxLDEzIEBACiAuVFAKIFwtUgogU2tyaXZlYmVza3l0dGV0IHRpbHN0YW5kLgotJ3JlYWRvbmx5Jy12YWxnbXVsaWdoZWRlbiBzw6Z0dGVzLgorXCYncmVhZG9ubHknLXZhbGdtdWxpZ2hlZGVuIHPDpnR0ZXMuCiBEdSBrYW4gc3RhZGlnIHJlZGlnZXJlIGJ1ZmZlcmVuLCBtZW4gdmlsIHbDpnJlIGZvcmhpbmRyZXQgaQogZmVqbGFndGlndCBhdCBvdmVyc2tyaXZlIGVuIGZpbC4KIEh2aXMgZHUgdmlsIG92ZXJza3JpdmUgZW4gZmlsLCBzw6UgdGlsZsO4aiBldAogdWRyw6Vic3RlZ24gdGlsIEV4LWtvbW1hbmRvZW4sIHNvbSBpICI6dyEiLgogXC1SLXRpbHZhbGdldCBpbmRlYsOmcmVyIG9nc8OlIFwtbi10aWx2YWxnZXQgKHNlIG92ZW5mb3IpLgotJ3JlYWRvbmx5Jy12YWxnbXVsaWdoZWRlbiBrYW4gc2zDpXMgZnJhIG1lZCAiOnNldCBub3JvIi4KK1wmJ3JlYWRvbmx5Jy12YWxnbXVsaWdoZWRlbiBrYW4gc2zDpXMgZnJhIG1lZCAiOnNldCBub3JvIi4KIFNlICI6aGVscCAncmVhZG9ubHknIi4KIC5UUAogXC1yCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3htbC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3htbC52aW0KaW5kZXggNTczYTZiYS4uMWQ0MzUyMSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi94bWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4veG1sLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCi0iIExhbmd1YWdlOgl4bWwKLSIgTWFpbnRhaW5lcjoJQ2hyaXN0aWFuIEJyYWJhbmR0IDxjYkAyNTZiaXQub3JnPgotIiBMYXN0IENoYW5nZWQ6IE1heSAwOHRoLCAyMDE4Ci0iIFJlcG9zaXRvcnk6IGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc2JyYS92aW0teG1sLWZ0cGx1Z2luCisiICAgICBMYW5ndWFnZToJeG1sCisiICAgTWFpbnRhaW5lcjoJQ2hyaXN0aWFuIEJyYWJhbmR0IDxjYkAyNTZiaXQub3JnPgorIiBMYXN0IENoYW5nZWQ6IERlYyAwN3RoLCAyMDE4CisiICAgUmVwb3NpdG9yeTogaHR0cHM6Ly9naXRodWIuY29tL2NocmlzYnJhL3ZpbS14bWwtZnRwbHVnaW4KICIgUHJldmlvdXMgTWFpbnRhaW5lcjoJRGFuIFNoYXJwIDxkd3NoYXJwIGF0IHVzZXJzIGRvdCBzb3VyY2Vmb3JnZSBkb3QgbmV0PgogIiAgICAgICAgICBVUkw6CQkgICAgICBodHRwOi8vZHdzaGFycC51c2Vycy5zb3VyY2Vmb3JnZS5uZXQvdmltL2Z0cGx1Z2luCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L2NzLnZpbSBiL3J1bnRpbWUvaW5kZW50L2NzLnZpbQppbmRleCA0YTA0MGI2Li43NmMxMmVmIDEwMDY0NAotLS0gYS9ydW50aW1lL2luZGVudC9jcy52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvY3MudmltCkBAIC0xLDE1ICsxLDczIEBACiAiIFZpbSBpbmRlbnQgZmlsZQotIiBMYW5ndWFnZToJQyMKLSIgTWFpbnRhaW5lcjoJSm9oYW5uZXMgWmVsbG5lciA8am9oYW5uZXNAemVsbG5lci5vcmc+Ci0iIExhc3QgQ2hhbmdlOglGcmksIDE1IE1hciAyMDAyIDA3OjUzOjU0IENFVAorIiBMYW5ndWFnZTogICAgICAgICAgICBDIworIiBNYWludGFpbmVyOiAgICAgICAgICBOaWNrIEplbnNlbiA8bmlja3Nwb29uQGdtYWlsLmNvbT4KKyIgRm9ybWVyIE1haW50YWluZXJzOiAgQXF1aWxhIERldXMKKyIgICAgICAgICAgICAgICAgICAgICAgSm9oYW5uZXMgWmVsbG5lciA8am9oYW5uZXNAemVsbG5lci5vcmc+CisiIExhc3QgQ2hhbmdlOiAgICAgICAgIDIwMTgtMTEtMjEKKyIgRmlsZW5hbWVzOiAgICAgICAgICAgKi5jcworIiBMaWNlbnNlOiAgICAgICAgICAgICBWaW0gKHNlZSA6aCBsaWNlbnNlKQorIiBSZXBvc2l0b3J5OiAgICAgICAgICBodHRwczovL2dpdGh1Yi5jb20vbmlja3Nwb29ucy92aW0tY3MKKyIKIAogIiBPbmx5IGxvYWQgdGhpcyBpbmRlbnQgZmlsZSB3aGVuIG5vIG90aGVyIHdhcyBsb2FkZWQuCi1pZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCi0gICBmaW5pc2gKK2lmIGV4aXN0cygnYjpkaWRfaW5kZW50JykKKyAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2luZGVudCA9IDEKIAotIiBDIyBpcyBsaWtlIGluZGVudGluZyBDCi1zZXRsb2NhbCBjaW5kZW50CitsZXQgczpzYXZlX2NwbyA9ICZjcG9wdGlvbnMKK3NldCBjcG9wdGlvbnMmdmltCiAKLWxldCBiOnVuZG9faW5kZW50ID0gInNldGwgY2luPCIKKworc2V0bG9jYWwgaW5kZW50ZXhwcj1HZXRDU0luZGVudCh2OmxudW0pCisKK2Z1bmN0aW9uISBzOklzQ29tcGlsZXJEaXJlY3RpdmUobGluZSkKKyAgcmV0dXJuIGE6bGluZSA9fj8gJ15ccyojJworZW5kZgorCitmdW5jdGlvbiEgczpJc0F0dHJpYnV0ZUxpbmUobGluZSkKKyAgcmV0dXJuIGE6bGluZSA9fj8gJ15ccypcW1tBLVphLXpdJyAmJiBhOmxpbmUgPX4/ICdcXSQnCitlbmRmCisKK2Z1bmN0aW9uISBzOkZpbmRQcmV2aW91c05vbkNvbXBpbGVyRGlyZWN0aXZlTGluZShzdGFydF9sbnVtKQorICBmb3IgZGVsdGEgaW4gcmFuZ2UoMCwgYTpzdGFydF9sbnVtKQorICAgIGxldCBsbnVtID0gYTpzdGFydF9sbnVtIC0gZGVsdGEKKyAgICBsZXQgbGluZSA9IGdldGxpbmUobG51bSkKKyAgICBsZXQgaXNfZGlyZWN0aXZlID0gczpJc0NvbXBpbGVyRGlyZWN0aXZlKGxpbmUpCisgICAgaWYgIWlzX2RpcmVjdGl2ZQorICAgICAgcmV0dXJuIGxudW0KKyAgICBlbmRpZgorICBlbmRmb3IKKyAgcmV0dXJuIDAKK2VuZGYKKworZnVuY3Rpb24hIEdldENTSW5kZW50KGxudW0pIGFib3J0CisgICIgSGl0IHRoZSBzdGFydCBvZiB0aGUgZmlsZSwgdXNlIHplcm8gaW5kZW50LgorICBpZiBhOmxudW0gPT0gMAorICAgIHJldHVybiAwCisgIGVuZGlmCisKKyAgbGV0IHRoaXNfbGluZSA9IGdldGxpbmUoYTpsbnVtKQorCisgICIgQ29tcGlsZXIgZGlyZWN0aXZlcyB1c2UgemVybyBpbmRlbnQgaWYgc28gY29uZmlndXJlZC4KKyAgbGV0IGlzX2ZpcnN0X2NvbF9tYWNybyA9IHM6SXNDb21waWxlckRpcmVjdGl2ZSh0aGlzX2xpbmUpICYmIHN0cmlkeCgmbDpjaW5rZXlzLCAnMCMnKSA+PSAwCisgIGlmIGlzX2ZpcnN0X2NvbF9tYWNybworICAgIHJldHVybiBjaW5kZW50KGE6bG51bSkKKyAgZW5kaWYKKworICBsZXQgbG51bSA9IHM6RmluZFByZXZpb3VzTm9uQ29tcGlsZXJEaXJlY3RpdmVMaW5lKGE6bG51bSAtIDEpCisgIGxldCBwcmV2aW91c19jb2RlX2xpbmUgPSBnZXRsaW5lKGxudW0pCisgIGlmIHM6SXNBdHRyaWJ1dGVMaW5lKHByZXZpb3VzX2NvZGVfbGluZSkKKyAgICBsZXQgaW5kID0gaW5kZW50KGxudW0pCisgICAgcmV0dXJuIGluZAorICBlbHNlCisgICAgcmV0dXJuIGNpbmRlbnQoYTpsbnVtKQorICBlbmRpZgorZW5kZnVuY3Rpb24KKworbGV0IGI6dW5kb19pbmRlbnQgPSAnc2V0bG9jYWwgaW5kZW50ZXhwcjwnCisKK2xldCAmY3BvcHRpb25zID0gczpzYXZlX2NwbwordW5sZXQgczpzYXZlX2NwbworCisiIHZpbTpldDpzdz0yOnN0cz0yCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC9odG1sLnZpbSBiL3J1bnRpbWUvaW5kZW50L2h0bWwudmltCmluZGV4IGJlY2U2NjEuLjFhODE3NzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2h0bWwudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L2h0bWwudmltCkBAIC0yMTYsOCArMjE2LDkgQEAKICIgQWRkIGtub3duIHRhZyBwYWlycy4KICIgU2VsZi1jbG9zaW5nIHRhZ3MgYW5kIHRhZ3MgdGhhdCBhcmUgc29tZXRpbWVzIHt7ewogIiBzZWxmLWNsb3NpbmcgKGUuZy4sIDxwPikgYXJlIG5vdCBoZXJlICh3aGVuIGVuY291bnRlcmluZyA8L3A+IHdlIGNhbiBmaW5kCi0iIHRoZSBtYXRjaGluZyA8cD4sIGJ1dCBub3QgdGhlIG90aGVyIHdheSBhcm91bmQpLiAgS25vd24gc2VsZi1jbG9zaW5nIHRhZ3M6Ci0iICdwJywgJ2ltZycsICdzb3VyY2UnLgorIiB0aGUgbWF0Y2hpbmcgPHA+LCBidXQgbm90IHRoZSBvdGhlciB3YXkgYXJvdW5kKS4KKyIgS25vd24gc2VsZi1jbG9zaW5nIHRhZ3M6ICIgJ3AnLCAnaW1nJywgJ3NvdXJjZScsICdhcmVhJywgJ2tleWdlbicsICd0cmFjaycsCisiICd3YnInLgogIiBPbGQgSFRNTCB0YWdzOgogY2FsbCBzOkFkZElUYWdzKHM6aW5kZW50X3RhZ3MsIFsKICAgICBcICdhJywgJ2FiYnInLCAnYWNyb255bScsICdhZGRyZXNzJywgJ2InLCAnYmRvJywgJ2JpZycsCkBAIC0yMzIsMTEgKzIzMywxMSBAQAogCiAiIE5ldyBIVE1MNSBlbGVtZW50czoKIGNhbGwgczpBZGRJVGFncyhzOmluZGVudF90YWdzLCBbCi0gICAgXCAnYXJlYScsICdhcnRpY2xlJywgJ2FzaWRlJywgJ2F1ZGlvJywgJ2JkaScsICdjYW52YXMnLAotICAgIFwgJ2NvbW1hbmQnLCAnZGF0YScsICdkYXRhbGlzdCcsICdkZXRhaWxzJywgJ2VtYmVkJywgJ2ZpZ2NhcHRpb24nLAotICAgIFwgJ2ZpZ3VyZScsICdmb290ZXInLCAnaGVhZGVyJywgJ2tleWdlbicsICdtYWluJywgJ21hcmsnLCAnbWV0ZXInLAotICAgIFwgJ25hdicsICdvdXRwdXQnLCAncGljdHVyZScsICdwcm9ncmVzcycsICdycCcsICdydCcsICdydWJ5JywgJ3NlY3Rpb24nLAotICAgIFwgJ3N1bW1hcnknLCAnc3ZnJywgJ3RpbWUnLCAndHJhY2snLCAndmlkZW8nLCAnd2JyJ10pCisgICAgXCAnYXJ0aWNsZScsICdhc2lkZScsICdhdWRpbycsICdiZGknLCAnY2FudmFzJywgJ2NvbW1hbmQnLCAnZGF0YScsCisgICAgXCAnZGF0YWxpc3QnLCAnZGV0YWlscycsICdkaWFsb2cnLCAnZW1iZWQnLCAnZmlnY2FwdGlvbicsICdmaWd1cmUnLAorICAgIFwgJ2Zvb3RlcicsICdoZWFkZXInLCAnaGdyb3VwJywgJ21haW4nLCAnbWFyaycsICdtZXRlcicsICduYXYnLCAnb3V0cHV0JywKKyAgICBcICdwaWN0dXJlJywgJ3Byb2dyZXNzJywgJ3JwJywgJ3J0JywgJ3J1YnknLCAnc2VjdGlvbicsICdzdW1tYXJ5JywKKyAgICBcICdzdmcnLCAndGltZScsICd2aWRlbyddKQogCiAiIFRhZ3MgYWRkZWQgZm9yIHdlYiBjb21wb25lbnRzOgogY2FsbCBzOkFkZElUYWdzKHM6aW5kZW50X3RhZ3MsIFsKQEAgLTkzNCw3ICs5MzUsNyBAQAogICAgICAgbGV0IGlkeCA9IG1hdGNoKHRleHQsICc8JyAuIHM6dGFnbmFtZSAuICdcc1wrXHpzXHcnKQogICAgIGVuZGlmCiAgICAgaWYgaWR4ID09IC0xCi0gICAgICAiIGFmdGVyIGp1c3QgPHRhZyBpbmRlbnQgb25lIGxldmVsIG1vcmUKKyAgICAgICIgYWZ0ZXIganVzdCAiPHRhZyIgaW5kZW50IG9uZSBsZXZlbCBtb3JlCiAgICAgICBsZXQgaWR4ID0gbWF0Y2godGV4dCwgJzwnIC4gczp0YWduYW1lIC4gJyQnKQogICAgICAgaWYgaWR4ID49IDAKIAljYWxsIGN1cnNvcihsbnVtLCBpZHgpCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC90Y2wudmltIGIvcnVudGltZS9pbmRlbnQvdGNsLnZpbQppbmRleCBlOWQ2MWU0Li5kNzcwODE4IDEwMDY0NAotLS0gYS9ydW50aW1lL2luZGVudC90Y2wudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L3RjbC52aW0KQEAgLTEsNyArMSw4IEBACiAiIFZpbSBpbmRlbnQgZmlsZQotIiBMYW5ndWFnZToJICAgIFRjbAotIiBNYWludGFpbmVyOgkgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMTItMjAKKyIgTGFuZ3VhZ2U6CSAgICAJVGNsCisiIFByZXZpb3VzIE1haW50YWluZXI6CU5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgVXBkYXRlOiAgCUNocmlzIEhlaXRob2ZmIDxjaHJpc2hlaXRob2ZmQGdtYWlsLmNvbT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgCTIwMTgtMTItMDUKIAogaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQogICBmaW5pc2gKQEAgLTI4LDYgKzI5LDE1IEBACiAgIHJldHVybiBsbnVtCiBlbmRmdW5jdGlvbgogCitmdW5jdGlvbiBzOmVuZHNfd2l0aF9iYWNrc2xhc2gobG51bSkKKyAgbGV0IGxpbmUgPSBnZXRsaW5lKGE6bG51bSkKKyAgaWYgbGluZSA9fiAnXFxccyokJworICAgIHJldHVybiAxCisgIGVsc2UKKyAgICByZXR1cm4gMAorICBlbmRpZgorZW5kZnVuY3Rpb24gCisKIGZ1bmN0aW9uIHM6Y291bnRfYnJhY2VzKGxudW0sIGNvdW50X29wZW4pCiAgIGxldCBuX29wZW4gPSAwCiAgIGxldCBuX2Nsb3NlID0gMApAQCAtNTMsMjMgKzYzLDM5IEBACiAKIGZ1bmN0aW9uIEdldFRjbEluZGVudCgpCiAgIGxldCBsaW5lID0gZ2V0bGluZSh2OmxudW0pCi0gIGlmIGxpbmUgPX4gJ15ccypcKicKLSAgICByZXR1cm4gY2luZGVudCh2OmxudW0pCi0gIGVsc2VpZiBsaW5lID1+ICdeXHMqfScKLSAgICByZXR1cm4gaW5kZW50KHY6bG51bSkgLSBzaGlmdHdpZHRoKCkKLSAgZW5kaWYKIAorICAiIEdldCB0aGUgbGluZSBudW1iZXIgb2YgdGhlIHByZXZpb3VzIG5vbi1ibGFuayBvciBub24tY29tbWVudCBsaW5lLgogICBsZXQgcG51bSA9IHM6cHJldm5vbmJsYW5rbm9uY29tbWVudCh2OmxudW0gLSAxKQogICBpZiBwbnVtID09IDAKICAgICByZXR1cm4gMAogICBlbmRpZgogCi0gIGxldCBpbmQgPSBpbmRlbnQocG51bSkgKyBzOmNvdW50X2JyYWNlcyhwbnVtLCAxKSAqIHNoaWZ0d2lkdGgoKQorICAiIC4uYW5kIHRoZSBwcmV2aW91cyBsaW5lIGJlZm9yZSB0aGUgcHJldmlvdXMgbGluZS4KKyAgbGV0IHBudW0yID0gczpwcmV2bm9uYmxhbmtub25jb21tZW50KHBudW0tMSkKIAotICBsZXQgcGxpbmUgPSBnZXRsaW5lKHBudW0pCi0gIGlmIHBsaW5lID1+ICd9XHMqJCcKLSAgICBsZXQgaW5kIC09IChzOmNvdW50X2JyYWNlcyhwbnVtLCAwKSAtIChwbGluZSA9fiAnXlxzKn0nID8gMSA6IDApKSAqIHNoaWZ0d2lkdGgoKQorICAiIERlZmF1bHQgaW5kZW50YXRpb24gaXMgdG8gcHJlc2VydmUgdGhlIHByZXZpb3VzIGluZGVudGF0aW9uLgorICBsZXQgaW5kID0gaW5kZW50KHBudW0pCisgCisgICIgLi4uYnV0IGlmIHByZXZpb3VzIGxpbmUgaW50cm9kdWNlcyBhbiBvcGVuIGJyYWNlLCB0aGVuIGluY3JlYXNlIGN1cnJlbnQgbGluZSdzIGluZGVudGF0aW9uCisgIGlmIHM6Y291bnRfYnJhY2VzKHBudW0sIDEpID4gMAorICAgIGxldCBpbmQgKz0gc2hpZnR3aWR0aCgpCisgIGVsc2UKKyAgICAiIExvb2sgZm9yIGJhY2tzbGFzaCBsaW5lIGNvbnRpbnVhdGlvbiBvbiB0aGUgcHJldmlvdXMgdHdvIGxpbmVzLgorICAgIGxldCBzbGFzaDEgPSBzOmVuZHNfd2l0aF9iYWNrc2xhc2gocG51bSkKKyAgICBsZXQgc2xhc2gyID0gczplbmRzX3dpdGhfYmFja3NsYXNoKHBudW0yKQorICAgIGlmIHNsYXNoMSAmJiAhc2xhc2gyCisgICAgICAiIElmIHRoZSBwcmV2aW91cyBsaW5lIGJlZ2lucyBhIGxpbmUgY29udGludWF0aW9uLgorICAgICAgbGV0IGluZCArPSBzaGlmdHdpZHRoKCkKKyAgICBlbHNlaWYgIXNsYXNoMSAmJiBzbGFzaDIKKyAgICAgICIgSWYgdHdvIGxpbmVzIGFnbyB3YXMgdGhlIGVuZCBvZiBhIGxpbmUgY29udGludWF0aW9uIGdyb3VwIG9mIGxpbmVzLgorICAgICAgbGV0IGluZCAtPSBzaGlmdHdpZHRoKCkKKyAgICBlbmRpZgogICBlbmRpZgogCisgICIgSWYgdGhlIGN1cnJlbnQgbGluZSBiZWdpbnMgd2l0aCBhIGNsb3NlZCBicmFjZSwgdGhlbiBkZWNyZWFzZSB0aGUgaW5kZW50YXRpb24gYnkgb25lLgorICBpZiBsaW5lID1+ICdeXHMqfScKKyAgICBsZXQgaW5kIC09IHNoaWZ0d2lkdGgoKQorICBlbmRpZgorICAKICAgcmV0dXJuIGluZAogZW5kZnVuY3Rpb24KZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L3Rlc3RkaXIvaHRtbC5pbiBiL3J1bnRpbWUvaW5kZW50L3Rlc3RkaXIvaHRtbC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45Yzc3NmQ2Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9pbmRlbnQvdGVzdGRpci9odG1sLmluCkBAIC0wLDAgKzEsMjYgQEAKKyIgdmltOiBzZXQgZnQ9aHRtbCBzdz00IDoKKworCisiIFNUQVJUX0lOREVOVAorPGRpdj4KKzxkaXY+Cit0ZXh0Cis8L2Rpdj4KKzwvZGl2PgorCis8ZGl2CitjbGFzcz0iZm9vIGJhciI+Cit0ZXh0Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZm9vIGJhciIKK2RhdGE9InNvbWV0aGluZyI+Cit0ZXh0Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZm9vCitiYXIiPgordGV4dAorPC9kaXY+CisKKyIgRU5EX0lOREVOVApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvdGVzdGRpci9odG1sLm9rIGIvcnVudGltZS9pbmRlbnQvdGVzdGRpci9odG1sLm9rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyNGQ1N2IKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL2luZGVudC90ZXN0ZGlyL2h0bWwub2sKQEAgLTAsMCArMSwyNiBAQAorIiB2aW06IHNldCBmdD1odG1sIHN3PTQgOgorCisKKyIgU1RBUlRfSU5ERU5UCis8ZGl2PgorICAgIDxkaXY+CisJdGV4dAorICAgIDwvZGl2PgorPC9kaXY+CisKKzxkaXYKKyAgICBjbGFzcz0iZm9vIGJhciI+CisgICAgdGV4dAorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImZvbyBiYXIiCisgICAgZGF0YT0ic29tZXRoaW5nIj4KKyAgICB0ZXh0Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZm9vCisgICAgYmFyIj4KKyAgICB0ZXh0Cis8L2Rpdj4KKworIiBFTkRfSU5ERU5UCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC90ZXN0ZGlyL3RjbC5pbiBiL3J1bnRpbWUvaW5kZW50L3Rlc3RkaXIvdGNsLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlZjRlYmMKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL2luZGVudC90ZXN0ZGlyL3RjbC5pbgpAQCAtMCwwICsxLDE5IEBACisjIHZpbTogc2V0IGZpbGV0eXBlPXRjbCBzaGlmdHdpZHRoPTQgdGFic3RvcD00OgorCisjIFNUQVJUX0lOREVOVAorcHJvYyBhYmMge30geworc2V0IGEgNQoraWYge1tzb21lX2NtZF09PTF9IHsKK2ZvcmVhY2ggaSBbbGlzdCB7MSAyIDN9XSB7CisjIERvZXMgdGhpcyBjb21tZW50IGFmZmVjdCBhbnl0aGluZz8KK3B1dHMgJGkKK30KK30KK30KKworY29tbWFuZF93aXRoX2FfbG9uZ190aW1lIC1hcmcxICJGaXJzdCIgXAorLWFyZzIgIlNlY29uZCIgXAorLWFyZzMgIlRoaXJkIgorCitwdXRzICJNb3ZlIGluZGVudCBiYWNrIGFmdGVyIGxpbmUgY29udGludWF0aW9uIGlzIGNvbXBsZXRlIgorIyBFTkRfSU5ERU5UClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvdGVzdGRpci90Y2wub2sgYi9ydW50aW1lL2luZGVudC90ZXN0ZGlyL3RjbC5vawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZmI1MmU3Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9pbmRlbnQvdGVzdGRpci90Y2wub2sKQEAgLTAsMCArMSwxOSBAQAorIyB2aW06IHNldCBmaWxldHlwZT10Y2wgc2hpZnR3aWR0aD00IHRhYnN0b3A9NDoKKworIyBTVEFSVF9JTkRFTlQKK3Byb2MgYWJjIHt9IHsKKwlzZXQgYSA1CisJaWYge1tzb21lX2NtZF09PTF9IHsKKwkJZm9yZWFjaCBpIFtsaXN0IHsxIDIgM31dIHsKKwkJCSMgRG9lcyB0aGlzIGNvbW1lbnQgYWZmZWN0IGFueXRoaW5nPworCQkJcHV0cyAkaQorCQl9CisJfQorfQorCitjb21tYW5kX3dpdGhfYV9sb25nX3RpbWUgLWFyZzEgIkZpcnN0IiBcCisJLWFyZzIgIlNlY29uZCIgXAorCS1hcmczICJUaGlyZCIKKworcHV0cyAiTW92ZSBpbmRlbnQgYmFjayBhZnRlciBsaW5lIGNvbnRpbnVhdGlvbiBpcyBjb21wbGV0ZSIKKyMgRU5EX0lOREVOVApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvdGVzdGRpci94bWwuaW4gYi9ydW50aW1lL2luZGVudC90ZXN0ZGlyL3htbC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMTg0NjgxCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9pbmRlbnQvdGVzdGRpci94bWwuaW4KQEAgLTAsMCArMSwzMiBAQAorPCEtLSB2aW06IHNldCBmdD14bWwgdHM9MiBzdz0wIHN0cz0tMSBldCA6IC0tPgorPCEtLSBTVEFSVF9JTkRFTlQgLS0+Cis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PgorPHRhZzA+CisgIDx0YWcxPgorPCEtLSBjb21tZW50IC0tPgorPHRhZzI+CisgIDx0YWczLz4KKzwvdGFnMj4KKzwhLS0gdGV4dCBjb21tZW50IC0tPgorCis8IS0tCit0ZXh0IGNvbW1lbnQKKy0tPgorPC90YWcxPgorPCEtLQordGV4dCBjb21tZW50CitlbmQgY29tZW50IC0tPgorPC90YWcwPgorPCEtLSBFTkRfSU5ERU5UIC0tPgorCis8IS0tIFNUQVJUX0lOREVOVCAtLT4KKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8dGFnMD4KKyAgPHRhZzE+Cis8IS0tIGNvbW1lbnQgLS0+Cis8dGFnMj4KKyAgPHRhZzMvPgorPC90YWcyPgorPC90YWcxPgorPC90YWcwPgorPCEtLSBFTkRfSU5ERU5UIC0tPgpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvdGVzdGRpci94bWwub2sgYi9ydW50aW1lL2luZGVudC90ZXN0ZGlyL3htbC5vawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOGUyYzkyCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9pbmRlbnQvdGVzdGRpci94bWwub2sKQEAgLTAsMCArMSwzMiBAQAorPCEtLSB2aW06IHNldCBmdD14bWwgdHM9MiBzdz0wIHN0cz0tMSBldCA6IC0tPgorPCEtLSBTVEFSVF9JTkRFTlQgLS0+Cis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PgorPHRhZzA+CisgIDx0YWcxPgorICAgIDwhLS0gY29tbWVudCAtLT4KKyAgICA8dGFnMj4KKyAgICAgIDx0YWczLz4KKyAgICA8L3RhZzI+CisgICAgPCEtLSB0ZXh0IGNvbW1lbnQgLS0+CisKKyAgICA8IS0tCisgICAgdGV4dCBjb21tZW50CisgICAgLS0+CisgIDwvdGFnMT4KKyAgPCEtLQorICB0ZXh0IGNvbW1lbnQKKyAgZW5kIGNvbWVudCAtLT4KKzwvdGFnMD4KKzwhLS0gRU5EX0lOREVOVCAtLT4KKworPCEtLSBTVEFSVF9JTkRFTlQgLS0+Cis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PgorPHRhZzA+CisgIDx0YWcxPgorICAgIDwhLS0gY29tbWVudCAtLT4KKyAgICA8dGFnMj4KKyAgICAgIDx0YWczLz4KKyAgICA8L3RhZzI+CisgIDwvdGFnMT4KKzwvdGFnMD4KKzwhLS0gRU5EX0lOREVOVCAtLT4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvbXN3aW4udmltIGIvcnVudGltZS9tc3dpbi52aW0KaW5kZXggNWVjMjE0OS4uMmIwNGMxYSAxMDA2NDQKLS0tIGEvcnVudGltZS9tc3dpbi52aW0KKysrIGIvcnVudGltZS9tc3dpbi52aW0KQEAgLTEsOSArMSw5IEBACiAiIFNldCBvcHRpb25zIGFuZCBhZGQgbWFwcGluZyBzdWNoIHRoYXQgVmltIGJlaGF2ZXMgYSBsb3QgbGlrZSBNUy1XaW5kb3dzCiAiCiAiIE1haW50YWluZXI6CUJyYW0gTW9vbGVuYWFyIDxCcmFtQHZpbS5vcmc+Ci0iIExhc3QgY2hhbmdlOgkyMDE3IE9jdCAyOAorIiBMYXN0IENoYW5nZToJMjAxOCBEZWMgMDcKIAotIiBiYWlsIG91dCBpZiB0aGlzIGlzbid0IHdhbnRlZCAobXJzdmltLnZpbSB1c2VzIHRoaXMpLgorIiBCYWlsIG91dCBpZiB0aGlzIGlzbid0IHdhbnRlZC4KIGlmIGV4aXN0cygiZzpza2lwX2xvYWRpbmdfbXN3aW4iKSAmJiBnOnNraXBfbG9hZGluZ19tc3dpbgogICBmaW5pc2gKIGVuZGlmCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hcGFjaGUudmltIGIvcnVudGltZS9zeW50YXgvYXBhY2hlLnZpbQppbmRleCBlMjMxNWRiLi43MWJhYmZiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hcGFjaGUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FwYWNoZS52aW0KQEAgLTMsNyArMyw3IEBACiAiIE1haW50YWluZXI6IERhdmlkIE5lY2FzIChZZXRpKSA8eWV0aUBwaHlzaWNzLm11bmkuY3o+CiAiIExpY2Vuc2U6IFRoaXMgZmlsZSBjYW4gYmUgcmVkaXN0cmlidWVkIGFuZC9vciBtb2RpZmllZCB1bmRlciB0aGUgc2FtZSB0ZXJtcwogIgkJYXMgVmltIGl0c2VsZi4KLSIgTGFzdCBDaGFuZ2U6IDIwMTQtMDMtMDQKKyIgTGFzdCBDaGFuZ2U6IDIwMTgtMTItMDYKICIgTm90ZXM6IExhc3Qgc3luY2VkIHdpdGggYXBhY2hlLTIuMi4zLCB2ZXJzaW9uIDEueCBpcyBubyBsb25nZXIgc3VwcG9ydGVkCiAiIFRPRE86IHNlZSBwYXJ0aWN1bGFyIEZJWE1FJ3Mgc2NhdHRlcmVkIHRocm91Z2ggdGhlIGZpbGUKICIJCW1ha2UgaXQgcmVhbGx5IGxpbmV3aXNlPwpAQCAtMTU5LDcgKzE1OSw3IEBACiBzeW4ga2V5d29yZCBhcGFjaGVEZWNsYXJhdGlvbiBCcm93c2VyTWF0Y2ggQnJvd3Nlck1hdGNoTm9DYXNlIFNldEVudklmIFNldEVudklmTm9DYXNlCiBzeW4ga2V5d29yZCBhcGFjaGVEZWNsYXJhdGlvbiBMb2FkRmlsZSBMb2FkTW9kdWxlCiBzeW4ga2V5d29yZCBhcGFjaGVEZWNsYXJhdGlvbiBDaGVja1NwZWxsaW5nIENoZWNrQ2FzZU9ubHkKLXN5biBrZXl3b3JkIGFwYWNoZURlY2xhcmF0aW9uIFNTTENBQ2VydGlmaWNhdGVGaWxlIFNTTENBQ2VydGlmaWNhdGVQYXRoIFNTTENBRE5SZXF1ZXN0RmlsZSBTU0xDQUROUmVxdWVzdFBhdGggU1NMQ0FSZXZvY2F0aW9uRmlsZSBTU0xDQVJldm9jYXRpb25QYXRoIFNTTENlcnRpZmljYXRlQ2hhaW5GaWxlIFNTTENlcnRpZmljYXRlRmlsZSBTU0xDZXJ0aWZpY2F0ZUtleUZpbGUgU1NMQ2lwaGVyU3VpdGUgU1NMQ3J5cHRvRGV2aWNlIFNTTEVuZ2luZSBTU0xIb25vckNpcGhlck9yZGVyIFNTTE11dGV4IFNTTE9wdGlvbnMgU1NMUGFzc1BocmFzZURpYWxvZyBTU0xQcm90b2NvbCBTU0xQcm94eUNBQ2VydGlmaWNhdGVGaWxlIFNTTFByb3h5Q0FDZXJ0aWZpY2F0ZVBhdGggU1NMUHJveHlDQVJldm9jYXRpb25GaWxlIFNTTFByb3h5Q0FSZXZvY2F0aW9uUGF0aCBTU0xQcm94eUNpcGhlclN1aXRlIFNTTFByb3h5RW5naW5lIFNTTFByb3h5TWFjaGluZUNlcnRpZmljYXRlRmlsZSBTU0xQcm94eU1hY2hpbmVDZXJ0aWZpY2F0ZVBhdGggU1NMUHJveHlQcm90b2NvbCBTU0xQcm94eVZlcmlmeSBTU0xQcm94eVZlcmlmeURlcHRoIFNTTFJhbmRvbVNlZWQgU1NMUmVxdWlyZSBTU0xSZXF1aXJlU1NMIFNTTFNlc3Npb25DYWNoZSBTU0xTZXNzaW9uQ2FjaGVUaW1lb3V0IFNTTFVzZXJOYW1lIFNTTFZlcmlmeUNsaWVudCBTU0xWZXJpZnlEZXB0aAorc3luIGtleXdvcmQgYXBhY2hlRGVjbGFyYXRpb24gU1NMQ0FDZXJ0aWZpY2F0ZUZpbGUgU1NMQ0FDZXJ0aWZpY2F0ZVBhdGggU1NMQ0FETlJlcXVlc3RGaWxlIFNTTENBRE5SZXF1ZXN0UGF0aCBTU0xDQVJldm9jYXRpb25GaWxlIFNTTENBUmV2b2NhdGlvblBhdGggU1NMQ2VydGlmaWNhdGVDaGFpbkZpbGUgU1NMQ2VydGlmaWNhdGVGaWxlIFNTTENlcnRpZmljYXRlS2V5RmlsZSBTU0xDaXBoZXJTdWl0ZSBTU0xDb21wcmVzc2lvbiBTU0xDcnlwdG9EZXZpY2UgU1NMRW5naW5lIFNTTEZJUFMgU1NMSG9ub3JDaXBoZXJPcmRlciBTU0xJbnNlY3VyZVJlbmVnb3RpYXRpb24gU1NMTXV0ZXggU1NMT3B0aW9ucyBTU0xQYXNzUGhyYXNlRGlhbG9nIFNTTFByb3RvY29sIFNTTFByb3h5Q0FDZXJ0aWZpY2F0ZUZpbGUgU1NMUHJveHlDQUNlcnRpZmljYXRlUGF0aCBTU0xQcm94eUNBUmV2b2NhdGlvbkZpbGUgU1NMUHJveHlDQVJldm9jYXRpb25QYXRoIFNTTFByb3h5Q2hlY2tQZWVyQ04gU1NMUHJveHlDaGVja1BlZXJFeHBpcmUgU1NMUHJveHlDaXBoZXJTdWl0ZSBTU0xQcm94eUVuZ2luZSBTU0xQcm94eU1hY2hpbmVDZXJ0aWZpY2F0ZUNoYWluRmlsZSBTU0xQcm94eU1hY2hpbmVDZXJ0aWZpY2F0ZUZpbGUgU1NMUHJveHlNYWNoaW5lQ2VydGlmaWNhdGVQYXRoIFNTTFByb3h5UHJvdG9jb2wgU1NMUHJveHlWZXJpZnkgU1NMUHJveHlWZXJpZnlEZXB0aCBTU0xSYW5kb21TZWVkIFNTTFJlbmVnQnVmZmVyU2l6ZSBTU0xSZXF1aXJlIFNTTFJlcXVpcmVTU0wgU1NMU2Vzc2lvbkNhY2hlIFNTTFNlc3Npb25DYWNoZVRpbWVvdXQgU1NMU2Vzc2lvblRpY2tldEtleUZpbGUgU1NMU2Vzc2lvblRpY2tldHMgU1NMU3RyaWN0U05JVkhvc3RDaGVjayBTU0xVc2VyTmFtZSBTU0xWZXJpZnlDbGllbnQgU1NMVmVyaWZ5RGVwdGgKIHN5biBtYXRjaCBhcGFjaGVPcHRpb24gIlsrLV1cP1w8XChTdGRFbnZWYXJzXHxDb21wYXRFbnZWYXJzXHxFeHBvcnRDZXJ0RGF0YVx8RmFrZUJhc2ljQXV0aFx8U3RyaWN0UmVxdWlyZVx8T3B0UmVuZWdvdGlhdGVcKVw+Igogc3luIGtleXdvcmQgYXBhY2hlT3B0aW9uIGJ1aWx0aW4gc2VtCiBzeW4gbWF0Y2ggYXBhY2hlT3B0aW9uICJcKGZpbGVcfGV4ZWNcfGVnZFx8ZGJtXHxzaG1cKToiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jcy52aW0gYi9ydW50aW1lL3N5bnRheC9jcy52aW0KaW5kZXggMTE2YWZlMC4uMTY1MmNiNiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NzLnZpbQpAQCAtMyw3ICszLDcgQEAKICIgTWFpbnRhaW5lcjogICAgICAgICAgTmljayBKZW5zZW4gPG5pY2tzcG9vbkBnbWFpbC5jb20+CiAiIEZvcm1lciBNYWludGFpbmVyczogIEFuZHVpbiBXaXRoZXJzIDxhd2l0aGVyc0BhbmR1aW4uY29tPgogIiAgICAgICAgICAgICAgICAgICAgICBKb2hhbm5lcyBaZWxsbmVyIDxqb2hhbm5lc0B6ZWxsbmVyLm9yZz4KLSIgTGFzdCBDaGFuZ2U6ICAgICAgICAgMjAxOC0wNi0yOQorIiBMYXN0IENoYW5nZTogICAgICAgICAyMDE4LTExLTI2CiAiIEZpbGVuYW1lczogICAgICAgICAgICouY3MKICIgTGljZW5zZTogICAgICAgICAgICAgVmltIChzZWUgOmggbGljZW5zZSkKICIgUmVwb3NpdG9yeTogICAgICAgICAgaHR0cHM6Ly9naXRodWIuY29tL25pY2tzcG9vbnMvdmltLWNzCkBAIC0xMSwxMiArMTEsMTIgQEAKICIgUkVGRVJFTkNFUzoKICIgWzFdIEVDTUEgVEMzOTogQyMgTGFuZ3VhZ2UgU3BlY2lmaWNhdGlvbiAoV0QxM09jdDAxLmRvYykKIAotaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLSAgICBmaW5pc2gKK2lmIGV4aXN0cygnYjpjdXJyZW50X3N5bnRheCcpCisgIGZpbmlzaAogZW5kaWYKIAotbGV0IHM6Y3NfY3BvX3NhdmUgPSAmY3BvCi1zZXQgY3BvJnZpbQorbGV0IHM6c2F2ZV9jcG8gPSAmY3BvcHRpb25zCitzZXQgY3BvcHRpb25zJnZpbQogCiAKIHN5biBrZXl3b3JkCWNzVHlwZQlib29sIGJ5dGUgY2hhciBkZWNpbWFsIGRvdWJsZSBmbG9hdCBpbnQgbG9uZyBvYmplY3Qgc2J5dGUgc2hvcnQgc3RyaW5nIFQgdWludCB1bG9uZyB1c2hvcnQgdmFyIHZvaWQgZHluYW1pYwpAQCAtMzQsNyArMzQsNyBAQAogc3luIGtleXdvcmQJY3NMaW5xCWFzY2VuZGluZyBieSBkZXNjZW5kaW5nIGVxdWFscyBmcm9tIGdyb3VwIGluIGludG8gam9pbiBsZXQgb24gb3JkZXJieSBzZWxlY3Qgd2hlcmUKIHN5biBrZXl3b3JkCWNzQXN5bmMJYXN5bmMgYXdhaXQKIAotc3luIGtleXdvcmQJY3NVbnNwZWNpZmllZFN0YXRlbWVudAlhcyBiYXNlIGNoZWNrZWQgZXZlbnQgZml4ZWQgaW4gaXMgbG9jayBuYW1lb2Ygb3BlcmF0b3Igb3V0IHBhcmFtcyByZWYgc2l6ZW9mIHN0YWNrYWxsb2MgdGhpcyB0eXBlb2YgdW5jaGVja2VkIHVuc2FmZSB1c2luZworc3luIGtleXdvcmQJY3NVbnNwZWNpZmllZFN0YXRlbWVudAlhcyBiYXNlIGNoZWNrZWQgZXZlbnQgZml4ZWQgaW4gaXMgbG9jayBuYW1lb2Ygb3BlcmF0b3Igb3V0IHBhcmFtcyByZWYgc2l6ZW9mIHN0YWNrYWxsb2MgdGhpcyB1bmNoZWNrZWQgdW5zYWZlIHVzaW5nCiBzeW4ga2V5d29yZAljc1Vuc3VwcG9ydGVkU3RhdGVtZW50CWFkZCByZW1vdmUgdmFsdWUKIHN5biBrZXl3b3JkCWNzVW5zcGVjaWZpZWRLZXl3b3JkCWV4cGxpY2l0IGltcGxpY2l0CiAKQEAgLTQ0LDEwICs0NCwxNiBAQAogc3luIG1hdGNoCWNzQ29udGV4dHVhbFN0YXRlbWVudAkvXDxcKGdldFx8c2V0XClcKDtcfFtbOnNwYWNlOl1cbl0qe1wpL21lPXMrMwogc3luIG1hdGNoCWNzQ29udGV4dHVhbFN0YXRlbWVudAkvXDx3aGVyZVw+W146XVwrOi9tZT1zKzUKIAorIiBPcGVyYXRvcnMKK3N5biBrZXl3b3JkCWNzVHlwZU9mCXR5cGVvZiBjb250YWluZWQKK3N5biByZWdpb24JY3NUeXBlT2ZTdGF0ZW1lbnQJc3RhcnQ9InR5cGVvZigiIGVuZD0iKSIgY29udGFpbnM9Y3NUeXBlLCBjc1R5cGVPZgorCiAiIFB1bmN0dWF0aW9uCiBzeW4gbWF0Y2gJY3NCcmFjZXMJIlt7fVxbXF1dIiBkaXNwbGF5CiBzeW4gbWF0Y2gJY3NQYXJlbnMJIlsoKV0iIGRpc3BsYXkKLXN5biBtYXRjaAljc09wU3ltYm9scwkiWytcLT48PV1cezEsMn0iIGRpc3BsYXkKK3N5biBtYXRjaAljc09wU3ltYm9scwkiWytcLT1dXHsxLDJ9IiBkaXNwbGF5CitzeW4gbWF0Y2gJY3NPcFN5bWJvbHMJIls+PF1cezJ9IiBkaXNwbGF5CitzeW4gbWF0Y2gJY3NPcFN5bWJvbHMJIlxzXHpzWz48XVx6ZVxfcyIgZGlzcGxheQogc3luIG1hdGNoCWNzT3BTeW1ib2xzCSJbIT48K1wtKi9dPSIgZGlzcGxheQogc3luIG1hdGNoCWNzT3BTeW1ib2xzCSJbISovXl0iIGRpc3BsYXkKIHN5biBtYXRjaAljc09wU3ltYm9scwkiPT4iIGRpc3BsYXkKQEAgLTE0NCwxNyArMTUwLDE4IEBACiAKICIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgogaGkgZGVmIGxpbmsJY3NUeXBlCVR5cGUKLWhpIGRlZiBsaW5rCWNzTmV3VHlwZQlUeXBlCiBoaSBkZWYgbGluawljc0NsYXNzVHlwZQlUeXBlCiBoaSBkZWYgbGluawljc0lzVHlwZQlUeXBlCi1oaSBkZWYgbGluawljc1N0b3JhZ2UJU3RvcmFnZUNsYXNzCi1oaSBkZWYgbGluawljc0NsYXNzCVN0b3JhZ2VDbGFzcworaGkgZGVmIGxpbmsJY3NTdG9yYWdlCVN0cnVjdHVyZQoraGkgZGVmIGxpbmsJY3NDbGFzcwlTdHJ1Y3R1cmUKIGhpIGRlZiBsaW5rCWNzUmVwZWF0CVJlcGVhdAogaGkgZGVmIGxpbmsJY3NDb25kaXRpb25hbAlDb25kaXRpb25hbAogaGkgZGVmIGxpbmsJY3NMYWJlbAlMYWJlbAogaGkgZGVmIGxpbmsJY3NNb2RpZmllcglTdG9yYWdlQ2xhc3MKIGhpIGRlZiBsaW5rCWNzQ29uc3RhbnQJQ29uc3RhbnQKIGhpIGRlZiBsaW5rCWNzRXhjZXB0aW9uCUV4Y2VwdGlvbgoraGkgZGVmIGxpbmsJY3NUeXBlT2YJT3BlcmF0b3IKK2hpIGRlZiBsaW5rCWNzVHlwZU9mU3RhdGVtZW50CVR5cGVkZWYKIGhpIGRlZiBsaW5rCWNzVW5zcGVjaWZpZWRTdGF0ZW1lbnQJU3RhdGVtZW50CiBoaSBkZWYgbGluawljc1Vuc3VwcG9ydGVkU3RhdGVtZW50CVN0YXRlbWVudAogaGkgZGVmIGxpbmsJY3NVbnNwZWNpZmllZEtleXdvcmQJS2V5d29yZApAQCAtMTY0LDE2ICsxNzEsMTIgQEAKIGhpIGRlZiBsaW5rCWNzQXN5bmMJS2V5d29yZAogaGkgZGVmIGxpbmsJY3NDb250ZXh0dWFsU3RhdGVtZW50CVN0YXRlbWVudAogaGkgZGVmIGxpbmsJY3NPcGVyYXRvckVycm9yCUVycm9yCi1oaSBkZWYgbGluawljc0ludGVyZmFjZURlY2xhcmF0aW9uCUluY2x1ZGUKIAogaGkgZGVmIGxpbmsJY3NUb2RvCVRvZG8KIGhpIGRlZiBsaW5rCWNzQ29tbWVudAlDb21tZW50CiAKLWhpIGRlZiBsaW5rCWNzRW5kQ29sb24JU3RhdGVtZW50CiBoaSBkZWYgbGluawljc09wU3ltYm9scwlPcGVyYXRvcgotaGkgZGVmIGxpbmsJY3NMb2dpY1N5bWJvbHMJQm9vbGVhbgotaGkgZGVmIGxpbmsJY3NCcmFjZXMJRnVuY3Rpb24KLWhpIGRlZiBsaW5rCWNzUGFyZW5zCU9wZXJhdG9yCitoaSBkZWYgbGluawljc0xvZ2ljU3ltYm9scwlPcGVyYXRvcgogCiBoaSBkZWYgbGluawljc1NwZWNpYWxFcnJvcglFcnJvcgogaGkgZGVmIGxpbmsJY3NTcGVjaWFsQ2hhckVycm9yCUVycm9yCkBAIC0yMDAsOSArMjAzLDkgQEAKIGhpIGRlZiBsaW5rCWNzWG1sQ29tbWVudAlDb21tZW50CiBoaSBkZWYgbGluawljc1htbFRhZwlTdGF0ZW1lbnQKIAotbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY3MiCitsZXQgYjpjdXJyZW50X3N5bnRheCA9ICdjcycKIAotbGV0ICZjcG8gPSBzOmNzX2Nwb19zYXZlCi11bmxldCBzOmNzX2Nwb19zYXZlCitsZXQgJmNwb3B0aW9ucyA9IHM6c2F2ZV9jcG8KK3VubGV0IHM6c2F2ZV9jcG8KIAogIiB2aW06IHZ0cz0xNiwyOApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGFzbS52aW0gYi9ydW50aW1lL3N5bnRheC90YXNtLnZpbQppbmRleCBjOWZjODE4Li4xZDZlNTcwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90YXNtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90YXNtLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiBUQVNNOiB0dXJibyBhc3NlbWJsZXIgYnkgQm9ybGFuZAogIiBNYWludGFuZXI6IEZvb0xtYW4gb2YgVW5pdGVkIEZvcmNlIDxmb29sbWFuQGJpZ2Zvb3QuY29tPgotIiBMYXN0IENoYW5nZTogMjAxMiBGZWIgMDMgYnkgVGhpbG8gU2l4CisiIExhc3QgQ2hhbmdlOiAyMDEyIEZlYiAwMyBieSBUaGlsbyBTaXgsIGFuZCAyMDE4IE5vdiAyNy4KIAogIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCkBAIC0xMDksNyArMTA5LDcgQEAKIGhpIGRlZiBsaW5rIHRhc21MYWJlbCBMYWJlbAogCiAKLWxldCBiOmN1cnJldF9zeW50YXggPSAidGFzbSIKK2xldCBiOmN1cnJlbnRfc3ludGF4ID0gInRhc20iCiAKIGxldCAmY3BvID0gczpjcG9fc2F2ZQogdW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5lbyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8KaW5kZXggYjJlODk4MC4uMTFhMGI5ZCAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5lbworKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmVvCkBAIC02NTIsNyArNjUyLDcgQEAKICAgICAgICAgIGxhIGRvc2llcm8gZXN0dXMgcHJlY2l6ZSBzYW1lIGtpZWwga29waW8gZGUgbGEgaW5zdHJ1aWxvIGtpYW0gdmkKICAgICAgICAgIGtvbnNlcnZpcyD4aW4uCiAKLSAgNS4gTnVuIGZvcnZp/nUgbGEgZG9zaWVyb24gdGFqcGFudGUgKE1TLURPUyk6ICAgICA6IWRlbCBURVNUTworICA1LiBOdW4gZm9ydmn+dSBsYSBkb3NpZXJvbiB0YWpwYW50ZSAoV0lORE9XUyk6ICAgIDohZGVsIFRFU1RPCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGH9IChVTklLU08pOiAgICAgOiFybSBURVNUTwogCiAKQEAgLTcxMyw3ICs3MTMsNyBAQAogICAxLiAgOiFrb21hbmRvICBwbGVudW1hcyBla3N0ZXJhbiBrb21hbmRvbi4KIAogICAgICAgSXVqIHV0aWxhaiBla3plbXBsb2ogZXN0YXM6Ci0gICAgICAgIChNUy1ET1MpICAgICAgICAgICAoVU5JS1NPKQorICAgICAgICAoV0lORE9XUykgICAgICAgICAgKFVOSUtTTykKICAgICAgICAgIDohZGlyICAgICAgICAgICAgICA6IWxzICAgICAgICAgICAgLSBsaXN0aWdhcyBkb3NpZXJ1am9uCiAgICAgICAgICA6IWRlbCBET1NJRVJOT01PICAgOiFybSBET1NJRVJOT01PIC0gZm9ydmn+YXMgbGEgZG9zaWVyb24gRE9TSUVSTk9NTwogCkBAIC05MTQsNyArOTE0LDcgQEAKIAogICAxLiBFa3JlZGFrdHUgbGEgZG9zaWVyb24gInZpbXJjIi4gIFRpbyBkZXBlbmRhcyBkZSB2aWEgc2lzdGVtbzoKICAgICAgIDplIH4vLnZpbXJjICAgICAgICAgIHBvciBVbmlrc28KLSAgICAgIDplICRWSU0vX3ZpbXJjICAgICAgIHBvciBNUy1WaW5kb3pvCisgICAgICA6ZSAkVklNL192aW1yYyAgICAgICBwb3IgV2luZG93cwogCiAgIDIuIE51biBsZWd1IGxhIGVuaGF2b24gZGUgbGEgZWt6ZW1wbGEgInZpbXJjIgogICAgICAgOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KQEAgLTk0MSw3ICs5NDEsNyBAQAogCiAgIDQuIFByZW11ICBDVFJMLUQgIGthaiBWaW0gbW9udHJvcyBsaXN0b24gZGUga29tYW5kb2osIGtpdWoga29tZW5jYXMgcGVyICJlIi4KIAotICA1LiBQcmVtdSA8VEFCPiAga2FqIFZpbSBrb21wbGV0aWdvcyBsYSBub21vbiBkZSBsYSBrb21hbmRvIGFsICI6ZWRpdCIuCisgIDUuIFByZW11IGQ8VEFCPiAga2FqIFZpbSBrb21wbGV0aWdvcyBsYSBub21vbiBkZSBsYSBrb21hbmRvIGFsICI6ZWRpdCIuCiAKICAgNi4gTnVuIGFsZG9udSBzcGFjZXRvbiBrYWogbGEga29tZW5jb24gZGUgZWt6aXN0YW50YSBub21vOiAgOmVkaXQgRE9TSQogCkBAIC05ODYsNiArOTg2LDYgQEAKIAogICBFc3BlcmFudGlnaXRhIGZhcmUgZGUgRG9taW5pcXVlIFBlbGzpLCAyMDA4LTA0LTAxCiAgIFJldHBv/nRvOiBkb21pbmlxdWUucGVsbGVAZ21haWwuY29tCi0gIExhc3RhIP5hbvhvOiAyMDE2LTA3LTAyCisgIExhc3RhIP5hbvhvOiAyMDE4LTEyLTAyCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5lby51dGYtOCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8udXRmLTgKaW5kZXggMGYwOGE1Ni4uMWIzODczYyAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5lby51dGYtOAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmVvLnV0Zi04CkBAIC02NTIsNyArNjUyLDcgQEAKICAgICAgICAgIGxhIGRvc2llcm8gZXN0dXMgcHJlY2l6ZSBzYW1lIGtpZWwga29waW8gZGUgbGEgaW5zdHJ1aWxvIGtpYW0gdmkKICAgICAgICAgIGtvbnNlcnZpcyDEnWluLgogCi0gIDUuIE51biBmb3J2acWddSBsYSBkb3NpZXJvbiB0YWpwYW50ZSAoTVMtRE9TKTogICAgIDohZGVsIFRFU1RPCisgIDUuIE51biBmb3J2acWddSBsYSBkb3NpZXJvbiB0YWpwYW50ZSAoV0lORE9XUyk6ICAgIDohZGVsIFRFU1RPCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGHFrSAoVU5JS1NPKTogICAgIDohcm0gVEVTVE8KIAogCkBAIC03MTMsNyArNzEzLDcgQEAKICAgMS4gIDoha29tYW5kbyAgcGxlbnVtYXMgZWtzdGVyYW4ga29tYW5kb24uCiAKICAgICAgIEl1aiB1dGlsYWogZWt6ZW1wbG9qIGVzdGFzOgotICAgICAgICAoTVMtRE9TKSAgICAgICAgICAgKFVOSUtTTykKKyAgICAgICAgKFdJTkRPV1MpICAgICAgICAgIChVTklLU08pCiAgICAgICAgICA6IWRpciAgICAgICAgICAgICAgOiFscyAgICAgICAgICAgIC0gbGlzdGlnYXMgZG9zaWVydWpvbgogICAgICAgICAgOiFkZWwgRE9TSUVSTk9NTyAgIDohcm0gRE9TSUVSTk9NTyAtIGZvcnZpxZ1hcyBsYSBkb3NpZXJvbiBET1NJRVJOT01PCiAKQEAgLTkxNCw3ICs5MTQsNyBAQAogCiAgIDEuIEVrcmVkYWt0dSBsYSBkb3NpZXJvbiAidmltcmMiLiAgVGlvIGRlcGVuZGFzIGRlIHZpYSBzaXN0ZW1vOgogICAgICAgOmUgfi8udmltcmMgICAgICAgICAgcG9yIFVuaWtzbwotICAgICAgOmUgJFZJTS9fdmltcmMgICAgICAgcG9yIE1TLVZpbmRvem8KKyAgICAgIDplICRWSU0vX3ZpbXJjICAgICAgIHBvciBXaW5kb3dzCiAKICAgMi4gTnVuIGxlZ3UgbGEgZW5oYXZvbiBkZSBsYSBla3plbXBsYSAidmltcmMiCiAgICAgICA6ciAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQpAQCAtOTQxLDcgKzk0MSw3IEBACiAKICAgNC4gUHJlbXUgIENUUkwtRCAga2FqIFZpbSBtb250cm9zIGxpc3RvbiBkZSBrb21hbmRvaiwga2l1aiBrb21lbmNhcyBwZXIgImUiLgogCi0gIDUuIFByZW11IDxUQUI+ICBrYWogVmltIGtvbXBsZXRpZ29zIGxhIG5vbW9uIGRlIGxhIGtvbWFuZG8gYWwgIjplZGl0Ii4KKyAgNS4gUHJlbXUgZDxUQUI+ICBrYWogVmltIGtvbXBsZXRpZ29zIGxhIG5vbW9uIGRlIGxhIGtvbWFuZG8gYWwgIjplZGl0Ii4KIAogICA2LiBOdW4gYWxkb251IHNwYWNldG9uIGthaiBsYSBrb21lbmNvbiBkZSBla3ppc3RhbnRhIG5vbW86ICA6ZWRpdCBET1NJCiAKQEAgLTk4Niw2ICs5ODYsNiBAQAogCiAgIEVzcGVyYW50aWdpdGEgZmFyZSBkZSBEb21pbmlxdWUgUGVsbMOpLCAyMDA4LTA0LTAxCiAgIFJldHBvxZ10bzogZG9taW5pcXVlLnBlbGxlQGdtYWlsLmNvbQotICBMYXN0YSDFnWFuxJ1vOiAyMDE2LTA3LTAyCisgIExhc3RhIMWdYW7EnW86IDIwMTgtMTItMDIKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmZyIGIvcnVudGltZS90dXRvci90dXRvci5mcgppbmRleCAxZGQyNjIxLi5hMTM5ZmI0IDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmZyCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIKQEAgLTY4NSw4ICs2ODUsOCBAQAogICAgICAgIGNlbHVpLWNpIHNlcmEgdW5lIGNvcGllIGV4YWN0ZSBkZSBjZSBjb3VycyBhdSBtb21lbnQgb/kgdm91cyBsJ2F2ZXoKICAgICAgICBlbnJlZ2lzdHLpLgogCi0gIDUuIE1haW50ZW5hbnQsIGVmZmFjZXogbGUgZmljaGllciBlbiB0YXBhbnQgKE1TLURPUykgOiAgIDohZGVsIFRFU1QKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdSAoVW5peCkgOiAgICAgOiFybSBURVNUCisgIDUuIE1haW50ZW5hbnQsIGVmZmFjZXogbGUgZmljaGllciBlbiB0YXBhbnQgKFdpbmRvd3MpIDogICA6IWRlbCBURVNUCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3UgKFVuaXgpIDogICAgICA6IXJtIFRFU1QKIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KQEAgLTczMSw3ICs3MzEsNyBAQAogICAgICBv+SBURVNUIGVzdCBsZSBub20gZGUgdm90cmUgZmljaGllci4KICAgICAgTGUgZmljaGllciBxdWUgdm91cyBy6WN1cOlyZXogZXN0IHBsYWPpIGF1LWRlc3NvdXMgZGUgbGEgbGlnbmUgZHUgY3Vyc2V1ci4KIAotICA0LiBQb3VyIHbpcmlmaWVyIHF1ZSBsZSBmaWNoaWVyIGEgYmllbiDpdOkgaW5z6XLpLCByZW1vbnRleiBldCB26XJpZmllegorICAzLiBQb3VyIHbpcmlmaWVyIHF1ZSBsZSBmaWNoaWVyIGEgYmllbiDpdOkgaW5z6XLpLCByZW1vbnRleiBldCB26XJpZmllegogICAgICBxdSdpbCB5IGEgbWFpbnRlbmFudCBkZXV4IGNvcGllcyBkZSBsYSBMZedvbiA1LjMsIGwnb3JpZ2luYWxlIGV0IGNlbGxlCiAgICAgIGNvbnRlbnVlIGRhbnMgbGUgZmljaGllci4KIApAQCAtNzQ3LDEyICs3NDcsMTIgQEAKICAgMS4gOiFjb21tYW5kZSAgZXjpY3V0ZSB1bmUgY29tbWFuZGUgZXh0ZXJuZS4KIAogICAgICBRdWVscXVlcyBleGVtcGxlcyBwcmF0aXF1ZXMgOgotICAgICAgKE1TLURPUykgICAgICAgIChVbml4KQorICAgICAgKFdpbmRvd3MpICAgICAgIChVbml4KQogICAgICAgIDohZGlyICAgICAgICAgICA6IWxzICAgICAgICAgIGFmZmljaGUgbGUgY29udGVudSBkdSBy6XBlcnRvaXJlIGNvdXJhbnQuCiAgICAgICAgOiFkZWwgRklDSElFUiAgIDohcm0gRklDSElFUiAgZWZmYWNlIEZJQ0hJRVIuCiAKICAgMi4gOncgRklDSElFUiAgZW5yZWdpc3RyZSBsZSBmaWNoaWVyIFZpbSBjb3VyYW50IHN1ciBsZSBkaXNxdWUgYXZlYyBwb3VyCi0gICAgICAgICAgICAgICAgICBub20gRklDSElFUi4KKyAgICAgbm9tIEZJQ0hJRVIuCiAKICAgMy4gdiAgZOlwbGFjZW1lbnQgIDp3IEZJQ0hJRVIgc2F1dmVnYXJkZSBsZXMgbGlnbmVzIGRlIGxhIHPpbGVjdGlvbiBWaXN1ZWxsZQogICAgICBkYW5zIGxlIGZpY2hpZXIgRklDSElFUi4KQEAgLTk1MCw3ICs5NTAsNyBAQAogCiAgIDEuIENvbW1lbmNleiDgIOlkaXRlciBsZSBmaWNoaWVyICJ2aW1yYyIuIENlY2kgZOlwZW5kIGRlIHZvdHJlIHN5c3TobWUgOgogICAgICAgICA6ZWRpdCB+Ly52aW1yYyAgICAgICAgIHBvdXIgVW5peAotICAgICAgICA6ZWRpdCAkVklNL192aW1yYyAgICAgIHBvdXIgTVMtV2luZG93cworICAgICAgICA6ZWRpdCAkVklNL192aW1yYyAgICAgIHBvdXIgV2luZG93cwogCiAgIDIuIExpc2V6IG1haW50ZW5hbnQgbGUgZmljaGllciBkJ2V4ZW1wbGUgInZpbXJjIiA6CiAgICAgICAgIDpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCkBAIC05NzgsNyArOTc4LDcgQEAKICAgNC4gQXBwdXlleiAgQ1RSTC1EICBldCBWaW0gYWZmaWNoZXJhIHVuZSBsaXN0ZSBkZSBjb21tYW5kZXMgcXVpIGNvbW1lbmNlbnQKICAgICAgcGFyICJlIi4KIAotICA1LiBBcHB1eWV6ICA8VEFCPiAgZXQgVmltIGNvbXBs6XRlcmEgbGUgbm9tIGRlIGxhIGNvbW1hbmRlIDogICI6ZWRpdCIKKyAgNS4gQXBwdXlleiAgZDxUQUI+ICBldCBWaW0gY29tcGzpdGVyYSBsZSBub20gZGUgbGEgY29tbWFuZGUgOiAgIjplZGl0IgogCiAgIDYuIEFqb3V0ZXogbWFpbnRlbmFudCB1biBlc3BhY2UgZXQgbGUgZOlidXQgZCd1biBmaWNoaWVyIGV4aXN0YW50IDoKICAgICAgOmVkaXQgIEZJQwpAQCAtMTAzNCw1ICsxMDM0LDUgQEAKICAgRGVybmnocmVzIG1pc2VzIOAgam91ciBwYXIgRG9taW5pcXVlIFBlbGzpLgogCiAgIEUtbWFpbCA6ICAgICAgZG9taW5pcXVlLnBlbGxlQGdtYWlsLmNvbQotICBMYXN0IENoYW5nZSA6IDIwMTcgSnVuIDMwCisgIExhc3QgQ2hhbmdlIDogMjAxOCBEZWMgMgogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmZyLnV0Zi04IGIvcnVudGltZS90dXRvci90dXRvci5mci51dGYtOAppbmRleCA5NWM1ODljLi45NzI0MzliIDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmZyLnV0Zi04CisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIudXRmLTgKQEAgLTY4NSw4ICs2ODUsOCBAQAogICAgICAgIGNlbHVpLWNpIHNlcmEgdW5lIGNvcGllIGV4YWN0ZSBkZSBjZSBjb3VycyBhdSBtb21lbnQgb8O5IHZvdXMgbCdhdmV6CiAgICAgICAgZW5yZWdpc3Ryw6kuCiAKLSAgNS4gTWFpbnRlbmFudCwgZWZmYWNleiBsZSBmaWNoaWVyIGVuIHRhcGFudCAoTVMtRE9TKSA6ICAgOiFkZWwgVEVTVAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91IChVbml4KSA6ICAgICA6IXJtIFRFU1QKKyAgNS4gTWFpbnRlbmFudCwgZWZmYWNleiBsZSBmaWNoaWVyIGVuIHRhcGFudCAoV2luZG93cykgOiAgIDohZGVsIFRFU1QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdSAoVW5peCkgOiAgICAgIDohcm0gVEVTVAogCiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpAQCAtNzMxLDcgKzczMSw3IEBACiAgICAgIG/DuSBURVNUIGVzdCBsZSBub20gZGUgdm90cmUgZmljaGllci4KICAgICAgTGUgZmljaGllciBxdWUgdm91cyByw6ljdXDDqXJleiBlc3QgcGxhY8OpIGF1LWRlc3NvdXMgZGUgbGEgbGlnbmUgZHUgY3Vyc2V1ci4KIAotICA0LiBQb3VyIHbDqXJpZmllciBxdWUgbGUgZmljaGllciBhIGJpZW4gw6l0w6kgaW5zw6lyw6ksIHJlbW9udGV6IGV0IHbDqXJpZmllegorICAzLiBQb3VyIHbDqXJpZmllciBxdWUgbGUgZmljaGllciBhIGJpZW4gw6l0w6kgaW5zw6lyw6ksIHJlbW9udGV6IGV0IHbDqXJpZmllegogICAgICBxdSdpbCB5IGEgbWFpbnRlbmFudCBkZXV4IGNvcGllcyBkZSBsYSBMZcOnb24gNS4zLCBsJ29yaWdpbmFsZSBldCBjZWxsZQogICAgICBjb250ZW51ZSBkYW5zIGxlIGZpY2hpZXIuCiAKQEAgLTc0NywxMiArNzQ3LDEyIEBACiAgIDEuIDohY29tbWFuZGUgIGV4w6ljdXRlIHVuZSBjb21tYW5kZSBleHRlcm5lLgogCiAgICAgIFF1ZWxxdWVzIGV4ZW1wbGVzIHByYXRpcXVlcyA6Ci0gICAgICAoTVMtRE9TKSAgICAgICAgKFVuaXgpCisgICAgICAoV2luZG93cykgICAgICAgKFVuaXgpCiAgICAgICAgOiFkaXIgICAgICAgICAgIDohbHMgICAgICAgICAgYWZmaWNoZSBsZSBjb250ZW51IGR1IHLDqXBlcnRvaXJlIGNvdXJhbnQuCiAgICAgICAgOiFkZWwgRklDSElFUiAgIDohcm0gRklDSElFUiAgZWZmYWNlIEZJQ0hJRVIuCiAKICAgMi4gOncgRklDSElFUiAgZW5yZWdpc3RyZSBsZSBmaWNoaWVyIFZpbSBjb3VyYW50IHN1ciBsZSBkaXNxdWUgYXZlYyBwb3VyCi0gICAgICAgICAgICAgICAgICBub20gRklDSElFUi4KKyAgICAgbm9tIEZJQ0hJRVIuCiAKICAgMy4gdiAgZMOpcGxhY2VtZW50ICA6dyBGSUNISUVSIHNhdXZlZ2FyZGUgbGVzIGxpZ25lcyBkZSBsYSBzw6lsZWN0aW9uIFZpc3VlbGxlCiAgICAgIGRhbnMgbGUgZmljaGllciBGSUNISUVSLgpAQCAtOTUwLDcgKzk1MCw3IEBACiAKICAgMS4gQ29tbWVuY2V6IMOgIMOpZGl0ZXIgbGUgZmljaGllciAidmltcmMiLiBDZWNpIGTDqXBlbmQgZGUgdm90cmUgc3lzdMOobWUgOgogICAgICAgICA6ZWRpdCB+Ly52aW1yYyAgICAgICAgIHBvdXIgVW5peAotICAgICAgICA6ZWRpdCAkVklNL192aW1yYyAgICAgIHBvdXIgTVMtV2luZG93cworICAgICAgICA6ZWRpdCAkVklNL192aW1yYyAgICAgIHBvdXIgV2luZG93cwogCiAgIDIuIExpc2V6IG1haW50ZW5hbnQgbGUgZmljaGllciBkJ2V4ZW1wbGUgInZpbXJjIiA6CiAgICAgICAgIDpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCkBAIC05NzgsNyArOTc4LDcgQEAKICAgNC4gQXBwdXlleiAgQ1RSTC1EICBldCBWaW0gYWZmaWNoZXJhIHVuZSBsaXN0ZSBkZSBjb21tYW5kZXMgcXVpIGNvbW1lbmNlbnQKICAgICAgcGFyICJlIi4KIAotICA1LiBBcHB1eWV6ICA8VEFCPiAgZXQgVmltIGNvbXBsw6l0ZXJhIGxlIG5vbSBkZSBsYSBjb21tYW5kZSA6ICAiOmVkaXQiCisgIDUuIEFwcHV5ZXogIGQ8VEFCPiAgZXQgVmltIGNvbXBsw6l0ZXJhIGxlIG5vbSBkZSBsYSBjb21tYW5kZSA6ICAiOmVkaXQiCiAKICAgNi4gQWpvdXRleiBtYWludGVuYW50IHVuIGVzcGFjZSBldCBsZSBkw6lidXQgZCd1biBmaWNoaWVyIGV4aXN0YW50IDoKICAgICAgOmVkaXQgIEZJQwpAQCAtMTAzNCw1ICsxMDM0LDUgQEAKICAgRGVybmnDqHJlcyBtaXNlcyDDoCBqb3VyIHBhciBEb21pbmlxdWUgUGVsbMOpLgogCiAgIEUtbWFpbCA6ICAgICAgZG9taW5pcXVlLnBlbGxlQGdtYWlsLmNvbQotICBMYXN0IENoYW5nZSA6IDIwMTcgSnVuIDMwCisgIExhc3QgQ2hhbmdlIDogMjAxOCBEZWMgMgogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cg==