ZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQvcGhwY29tcGxldGUudmltIGIvcnVudGltZS9hdXRvbG9hZC9waHBjb21wbGV0ZS52aW0KaW5kZXggZTVkOTEwZS4uMDc1NjU1NSAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC9waHBjb21wbGV0ZS52aW0KKysrIGIvcnVudGltZS9hdXRvbG9hZC9waHBjb21wbGV0ZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBjb21wbGV0aW9uIHNjcmlwdAogIiBMYW5ndWFnZToJUEhQCiAiIE1haW50YWluZXI6CU1pa29sYWogTWFjaG93c2tpICggbWlrbWFjaCBBVCB3cCBET1QgcGwgKQotIiBMYXN0IENoYW5nZToJMjAwNiBNYXkgOQorIiBMYXN0IENoYW5nZToJMjAxMSBEZWMgMDgKICIKICIgICBUT0RPOgogIiAgIC0gQ2xhc3MgYXdhcmUgY29tcGxldGlvbjoKQEAgLTY1MCw2ICs2NTAsNyBAQAogCSIgdGhpcyBpcyB0aGUgbW9zdCBlZmZpY2llbnQgd2F5LiBUaGUgb3RoZXIgd2F5CiAJIiBpcyB0byBnbyB0aHJvdWdoIHRoZSBsb29vbmcgc3RyaW5nIGxvb2tpbmcgZm9yCiAJIiBtYXRjaGluZyB7fQorCWxldCBvcmlnaW5hbF93aW5kb3cgPSB3aW5ucigpCiAJYmVsb3cgMW5ldwogCTBwdXQgPWNmaWxlCiAJY2FsbCBzZWFyY2goJ2NsYXNzXHNcKycuYTpuYW1lKQpAQCAtNjY3LDYgKzY2OCw5IEBACiAJbGV0IGNsYXNzY29udGVudCA9IGpvaW4oY2xhc3NjLCAiXG4iKQogCiAJYnchICUKKwkiIGdvIGJhY2sgdG8gd2hlcmUgd2Ugc3RhcnRlZAorCWV4ZSBvcmlnaW5hbF93aW5kb3cuJ3dpbmNtZCB3JworCiAJaWYgZXh0ZW5kc19jbGFzcyAhPSAnJwogCQlsZXQgY2xhc3Nsb2NhdGlvbiA9IHBocGNvbXBsZXRlI0dldENsYXNzTG9jYXRpb24oZXh0ZW5kc19jbGFzcykKIAkJaWYgZmlsZXJlYWRhYmxlKGNsYXNzbG9jYXRpb24pCmRpZmYgLS1naXQgYS9ydW50aW1lL2F1dG9sb2FkL3N5bnRheGNvbXBsZXRlLnZpbSBiL3J1bnRpbWUvYXV0b2xvYWQvc3ludGF4Y29tcGxldGUudmltCmluZGV4IDdiOTZiZmQuLmYzNmM2NjggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvYXV0b2xvYWQvc3ludGF4Y29tcGxldGUudmltCisrKyBiL3J1bnRpbWUvYXV0b2xvYWQvc3ludGF4Y29tcGxldGUudmltCkBAIC0xLDEyICsxLDE4IEBACiAiIFZpbSBjb21wbGV0aW9uIHNjcmlwdAogIiBMYW5ndWFnZTogICAgQWxsIGxhbmd1YWdlcywgdXNlcyBleGlzdGluZyBzeW50YXggaGlnaGxpZ2h0aW5nIHJ1bGVzCiAiIE1haW50YWluZXI6ICBEYXZpZCBGaXNoYnVybiA8ZGZpc2hidXJuIGRvdCB2aW0gYXQgZ21haWwgZG90IGNvbT4KLSIgVmVyc2lvbjogICAgIDcuMAotIiBMYXN0IENoYW5nZTogMjAxMCBKdWwgMjkKKyIgVmVyc2lvbjogICAgIDguMAorIiBMYXN0IENoYW5nZTogMjAxMSBOb3YgMDIKICIgVXNhZ2U6ICAgICAgIEZvciBkZXRhaWxlZCBoZWxwLCAiOmhlbHAgZnQtc3ludGF4LW9tbmkiIAogCiAiIEhpc3RvcnkKICIKKyIgVmVyc2lvbiA4LjAKKyIgICAgIFVwZGF0ZWQgU3ludGF4Q1N5bnRheEdyb3VwSXRlbXMoKQorIiAgICAgICAgIC0gU29tZSBhZGRpdGlvbmFsIHN5bnRheCBpdGVtcyB3ZXJlIGFsc28gYWxsb3dlZAorIiAgICAgICAgICAgb24gbmV4dGdyb3VwPSBsaW5lcyB3aGljaCB3ZXJlIGlnbm9yZWQgYnkgZGVmYXVsdC4KKyIgICAgICAgICAgIE5vdyB0aGVzZSBsaW5lcyBhcmUgcHJvY2Vzc2VkIGluZGVwZW5kZW50bHkuCisiCiAiIFZlcnNpb24gNy4wCiAiICAgICBVcGRhdGVkIHN5bnRheGNvbXBsZXRlI09tbmlTeW50YXhMaXN0KCkKICIgICAgICAgICAtIExvb2tpbmcgdXAgdGhlIHN5bnRheCBncm91cHMgZGVmaW5lZCBmcm9tIGEgc3ludGF4IGZpbGUKQEAgLTQ0LDcgKzUwLDcgQEAKIGlmIGV4aXN0cygnZzpsb2FkZWRfc3ludGF4X2NvbXBsZXRpb24nKQogICAgIGZpbmlzaCAKIGVuZGlmCi1sZXQgZzpsb2FkZWRfc3ludGF4X2NvbXBsZXRpb24gPSA3MAorbGV0IGc6bG9hZGVkX3N5bnRheF9jb21wbGV0aW9uID0gODAKIAogIiBTZXQgaWdub3JlY2FzZSB0byB0aGUgZnRwbHVnaW4gc3RhbmRhcmQKICIgVGhpcyBpcyB0aGUgZGVmYXVsdCBzZXR0aW5nLCBidXQgaWYgeW91IGRlZmluZSBhIGJ1ZmZlciBsb2NhbApAQCAtNzIsNyArNzgsOCBAQAogIiBUaGlzIHNjcmlwdCB3aWxsIGJ1aWxkIGEgY29tcGxldGlvbiBsaXN0IGJhc2VkIG9uIHRoZSBzeW50YXgKICIgZWxlbWVudHMgZGVmaW5lZCBieSB0aGUgZmlsZXMgaW4gJFZJTVJVTlRJTUUvc3ludGF4LgogbGV0IHM6c3luX3JlbW92ZV93b3JkcyA9ICdtYXRjaCxtYXRjaGdyb3VwPSxjb250YWlucywnLgotICAgICAgICAgICAgXCAnbGlua3MgdG8sc3RhcnQ9LGVuZD0sbmV4dGdyb3VwPScKKyAgICAgICAgICAgIFwgJ2xpbmtzIHRvLHN0YXJ0PSxlbmQ9JworICAgICAgICAgICAgIiBcICdsaW5rcyB0byxzdGFydD0sZW5kPSxuZXh0Z3JvdXA9JwogCiBsZXQgczpjYWNoZV9uYW1lID0gW10KIGxldCBzOmNhY2hlX2xpc3QgPSBbXQpAQCAtNDExLDkgKzQxOCwyNSBAQAogICAgICAgICAgICAgICAgICAgICBcICAgICwgIlxuIiwgJ2cnIAogICAgICAgICAgICAgICAgICAgICBcICApCiAKLSAgICAgICAgIiBOb3cgc3RyaXAgb2ZmIHRoZSBuZXdsaW5lICsgYmxhbmsgc3BhY2UgKyBjb250YWluZWQKKyAgICAgICAgIiBOb3cgc3RyaXAgb2ZmIHRoZSBuZXdsaW5lICsgYmxhbmsgc3BhY2UgKyBjb250YWluZWQuCisgICAgICAgICIgQWxzbyBpbmNsdWRlIGxpbmVzIHdpdGggbmV4dGdyb3VwPUBzb21lTmFtZSBza2lwX2tleV93b3JkcyBzeW50YXhfZWxlbWVudAogICAgICAgICBsZXQgc3luX2xpc3QgPSBzdWJzdGl0dXRlKCAKLSAgICAgICAgICAgICAgICAgICAgXCAgICBzeW5fbGlzdCwgJ1wlKF5cfFxuXClcQDw9XHMqXDxcKGNvbnRhaW5lZFwpJworICAgICAgICAgICAgICAgICAgICBcICAgIHN5bl9saXN0LCAnXCUoXlx8XG5cKVxAPD1ccypcPFwoY29udGFpbmVkXHxuZXh0Z3JvdXA9XCknCisgICAgICAgICAgICAgICAgICAgIFwgICAgLCAiIiwgJ2cnIAorICAgICAgICAgICAgICAgICAgICBcICkKKworICAgICAgICAiIFRoaXMgY2FuIGxlYXZlIGxpbmVzIGxpa2UgdGhpcworICAgICAgICAiICAgICA9QHZpbU1lbnVMaXN0ICBza2lwd2hpdGUgb25vcmVtZW51CisgICAgICAgICIgU3RyaXAgdGhlIHNwZWNpYWwgb3B0aW9uIGtleXdvcmRzIGZpcnN0CisgICAgICAgICIgICAgIDpoIDpzeW4tc2tpcHdoaXRlKgorICAgICAgICBsZXQgc3luX2xpc3QgPSBzdWJzdGl0dXRlKCAKKyAgICAgICAgICAgICAgICAgICAgXCAgICBzeW5fbGlzdCwgJ1w8XChza2lwd2hpdGVcfHNraXBubFx8c2tpcGVtcHR5XClcPicKKyAgICAgICAgICAgICAgICAgICAgXCAgICAsICIiLCAnZycgCisgICAgICAgICAgICAgICAgICAgIFwgKQorCisgICAgICAgICIgTm93IHJlbW92ZSB0aGUgcmVtYWluZGVyIG9mIHRoZSBuZXh0Z3JvdXA9QHNvbWVOYW1lIGxpbmVzCisgICAgICAgIGxldCBzeW5fbGlzdCA9IHN1YnN0aXR1dGUoIAorICAgICAgICAgICAgICAgICAgICBcICAgIHN5bl9saXN0LCAnXCUoXlx8XG5cKVxAPD1ccypcKEBcd1wrXCknCiAgICAgICAgICAgICAgICAgICAgIFwgICAgLCAiIiwgJ2cnIAogICAgICAgICAgICAgICAgICAgICBcICkKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvYXV0b2NtZC50eHQgYi9ydW50aW1lL2RvYy9hdXRvY21kLnR4dAppbmRleCBjMTQ4NDU1Li44YzdmNjQ3IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9hdXRvY21kLnR4dAorKysgYi9ydW50aW1lL2RvYy9hdXRvY21kLnR4dApAQCAtMSw0ICsxLDQgQEAKLSphdXRvY21kLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgQXVnIDI5CisqYXV0b2NtZC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIE9jdCAyNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMTA2MSw4ICsxMDYxLDggQEAKIAkJCUl0J3MgcG9zc2libGUgdG8gdXNlIHRoaXMgaW5zaWRlIGFuIGF1dG9jb21tYW5kIHRvbywKIAkJCXNvIHlvdSBjYW4gYmFzZSB0aGUgYXV0b2NvbW1hbmRzIGZvciBvbmUgZXh0ZW5zaW9uIG9uCiAJCQlhbm90aGVyIGV4dGVuc2lvbi4gIEV4YW1wbGU6ID4KLQkJCQk6YXUgQnVmZW50ZXIgKi5jcHAgc28gfi8udmltcmNfY3BwCi0JCQkJOmF1IEJ1ZmVudGVyICouY3BwIGRvYXUgQnVmRW50ZXIgeC5jCisJCQkJOmF1IEJ1ZkVudGVyICouY3BwIHNvIH4vLnZpbXJjX2NwcAorCQkJCTphdSBCdWZFbnRlciAqLmNwcCBkb2F1IEJ1ZkVudGVyIHguYwogPAkJCUJlIGNhcmVmdWwgdG8gYXZvaWQgZW5kbGVzcyBsb29wcy4gIFNlZQogCQkJfGF1dG9jbWQtbmVzdGVkfC4KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvY2hhbmdlLnR4dCBiL3J1bnRpbWUvZG9jL2NoYW5nZS50eHQKaW5kZXggMWY5MjIyNC4uZDQwZDM1MCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvY2hhbmdlLnR4dAorKysgYi9ydW50aW1lL2RvYy9jaGFuZ2UudHh0CkBAIC0xLDQgKzEsNCBAQAotKmNoYW5nZS50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMSBKdW4gMTkKKypjaGFuZ2UudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgT2N0IDI4CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC03MSw3ICs3MSw3IEBACiAJCQkiRCIgZGVsZXRlcyB0aGUgaGlnaGxpZ2h0ZWQgdGV4dCBwbHVzIGFsbCB0ZXh0IHVudGlsCiAJCQl0aGUgZW5kIG9mIHRoZSBsaW5lLiAge25vdCBpbiBWaX0KIAotCQkJCQkJKjpkKiAqOmRlKiAqOmRlbCogKjpkZWxldGUqCisJCQkJCSo6ZCogKjpkZSogKjpkZWwqICo6ZGVsZXRlKiAqOmRsKgogOltyYW5nZV1kW2VsZXRlXSBbeF0JRGVsZXRlIFtyYW5nZV0gbGluZXMgKGRlZmF1bHQ6IGN1cnJlbnQgbGluZSkgW2ludG8KIAkJCXJlZ2lzdGVyIHhdLgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9ldmFsLnR4dCBiL3J1bnRpbWUvZG9jL2V2YWwudHh0CmluZGV4IDk4NDQwNzIuLjg5YWMxNjMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2V2YWwudHh0CisrKyBiL3J1bnRpbWUvZG9jL2V2YWwudHh0CkBAIC0xLDQgKzEsNCBAQAotKmV2YWwudHh0KglGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgU2VwIDMwCisqZXZhbC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMSBEZWMgMTQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNjE1LDcgKzYxNSw2IEBACiAJLSBleHByNwkJCXVuYXJ5IG1pbnVzCiAJKyBleHByNwkJCXVuYXJ5IHBsdXMKIAotCiB8ZXhwcjh8CWV4cHI4W2V4cHIxXQkJYnl0ZSBvZiBhIFN0cmluZyBvciBpdGVtIG9mIGEgfExpc3R8CiAJZXhwcjhbZXhwcjEgOiBleHByMV0Jc3Vic3RyaW5nIG9mIGEgU3RyaW5nIG9yIHN1Ymxpc3Qgb2YgYSB8TGlzdHwKIAlleHByOC5uYW1lCQllbnRyeSBpbiBhIHxEaWN0aW9uYXJ5fApAQCAtOTQ2LDcgKzk0NSw4IEBACiAJCQkJCQkJKmV4cHI5KgogbnVtYmVyCiAtLS0tLS0KLW51bWJlcgkJCW51bWJlciBjb25zdGFudAkJKmV4cHItbnVtYmVyKgorbnVtYmVyCQkJbnVtYmVyIGNvbnN0YW50CQkJKmV4cHItbnVtYmVyKiAKKwkJCQkJCSpoZXgtbnVtYmVyKiAqb2N0YWwtbnVtYmVyKgogCiBEZWNpbWFsLCBIZXhhZGVjaW1hbCAoc3RhcnRpbmcgd2l0aCAweCBvciAwWCksIG9yIE9jdGFsIChzdGFydGluZyB3aXRoIDApLgogCkBAIC0xNzY4LDcgKzE3NjgsNyBAQAogZm9sZHRleHRyZXN1bHQoIHtsbnVtfSkJCVN0cmluZwl0ZXh0IGZvciBjbG9zZWQgZm9sZCBhdCB7bG51bX0KIGZvcmVncm91bmQoICkJCQlOdW1iZXIJYnJpbmcgdGhlIFZpbSB3aW5kb3cgdG8gdGhlIGZvcmVncm91bmQKIGZ1bmN0aW9uKCB7bmFtZX0pCQlGdW5jcmVmIHJlZmVyZW5jZSB0byBmdW5jdGlvbiB7bmFtZX0KLWdhcmJhZ2Vjb2xsZWN0KCBbYXRfZXhpdF0pCW5vbmUJZnJlZSBtZW1vcnksIGJyZWFraW5nIGN5Y2xpYyByZWZlcmVuY2VzCitnYXJiYWdlY29sbGVjdCggW3thdGV4aXR9XSkJbm9uZQlmcmVlIG1lbW9yeSwgYnJlYWtpbmcgY3ljbGljIHJlZmVyZW5jZXMKIGdldCgge2xpc3R9LCB7aWR4fSBbLCB7ZGVmfV0pCWFueQlnZXQgaXRlbSB7aWR4fSBmcm9tIHtsaXN0fSBvciB7ZGVmfQogZ2V0KCB7ZGljdH0sIHtrZXl9IFssIHtkZWZ9XSkJYW55CWdldCBpdGVtIHtrZXl9IGZyb20ge2RpY3R9IG9yIHtkZWZ9CiBnZXRidWZsaW5lKCB7ZXhwcn0sIHtsbnVtfSBbLCB7ZW5kfV0pCkBAIC0xODQ0LDcgKzE4NDQsOCBAQAogbG9nMTAoIHtleHByfSkJCQlGbG9hdAlsb2dhcml0aG0gb2YgRmxvYXQge2V4cHJ9IHRvIGJhc2UgMTAKIG1hcCgge2V4cHJ9LCB7c3RyaW5nfSkJCUxpc3QvRGljdCAgY2hhbmdlIGVhY2ggaXRlbSBpbiB7ZXhwcn0gdG8ge2V4cHJ9CiBtYXBhcmcoIHtuYW1lfVssIHttb2RlfSBbLCB7YWJicn0gWywge2RpY3R9XV1dKQotCQkJCVN0cmluZwlyaHMgb2YgbWFwcGluZyB7bmFtZX0gaW4gbW9kZSB7bW9kZX0KKwkJCQlTdHJpbmcgb3IgRGljdAorCQkJCQlyaHMgb2YgbWFwcGluZyB7bmFtZX0gaW4gbW9kZSB7bW9kZX0KIG1hcGNoZWNrKCB7bmFtZX1bLCB7bW9kZX0gWywge2FiYnJ9XV0pCiAJCQkJU3RyaW5nCWNoZWNrIGZvciBtYXBwaW5ncyBtYXRjaGluZyB7bmFtZX0KIG1hdGNoKCB7ZXhwcn0sIHtwYXR9Wywge3N0YXJ0fVssIHtjb3VudH1dXSkKQEAgLTMwNzcsNyArMzA3OCw3IEBACiAJCXtuYW1lfSBjYW4gYmUgYSB1c2VyIGRlZmluZWQgZnVuY3Rpb24gb3IgYW4gaW50ZXJuYWwgZnVuY3Rpb24uCiAKIAotZ2FyYmFnZWNvbGxlY3QoW2F0X2V4aXRdKQkJCQkqZ2FyYmFnZWNvbGxlY3QoKSoKK2dhcmJhZ2Vjb2xsZWN0KFt7YXRleGl0fV0pCQkJCSpnYXJiYWdlY29sbGVjdCgpKgogCQlDbGVhbnVwIHVudXNlZCB8TGlzdHN8IGFuZCB8RGljdGlvbmFyaWVzfCB0aGF0IGhhdmUgY2lyY3VsYXIKIAkJcmVmZXJlbmNlcy4gIFRoZXJlIGlzIGhhcmRseSBldmVyIGEgbmVlZCB0byBpbnZva2UgdGhpcwogCQlmdW5jdGlvbiwgYXMgaXQgaXMgYXV0b21hdGljYWxseSBkb25lIHdoZW4gVmltIHJ1bnMgb3V0IG9mCkBAIC0zMDg3LDcgKzMwODgsNyBAQAogCQlUaGlzIGlzIHVzZWZ1bCBpZiB5b3UgaGF2ZSBkZWxldGVkIGEgdmVyeSBiaWcgfExpc3R8IGFuZC9vcgogCQl8RGljdGlvbmFyeXwgd2l0aCBjaXJjdWxhciByZWZlcmVuY2VzIGluIGEgc2NyaXB0IHRoYXQgcnVucwogCQlmb3IgYSBsb25nIHRpbWUuCi0JCVdoZW4gdGhlIG9wdGlvbmFsICJhdF9leGl0IiBhcmd1bWVudCBpcyBvbmUsIGdhcmJhZ2UKKwkJV2hlbiB0aGUgb3B0aW9uYWwge2F0ZXhpdH0gYXJndW1lbnQgaXMgb25lLCBnYXJiYWdlCiAJCWNvbGxlY3Rpb24gd2lsbCBhbHNvIGJlIGRvbmUgd2hlbiBleGl0aW5nIFZpbSwgaWYgaXQgd2Fzbid0CiAJCWRvbmUgYmVmb3JlLiAgVGhpcyBpcyB1c2VmdWwgd2hlbiBjaGVja2luZyBmb3IgbWVtb3J5IGxlYWtzLgogCkBAIC0zMTYzLDYgKzMxNjQsOCBAQAogCQlvbmUtYnl0ZSBjaGFyYWN0ZXIgaXQgaXMgdGhlIGNoYXJhY3RlciBpdHNlbGYgYXMgYSBudW1iZXIuCiAJCVVzZSBucjJjaGFyKCkgdG8gY29udmVydCBpdCB0byBhIFN0cmluZy4KIAorCQlVc2UgZ2V0Y2hhcm1vZCgpIHRvIG9idGFpbiBhbnkgYWRkaXRpb25hbCBtb2RpZmllcnMuCisKIAkJV2hlbiB0aGUgdXNlciBjbGlja3MgYSBtb3VzZSBidXR0b24sIHRoZSBtb3VzZSBldmVudCB3aWxsIGJlCiAJCXJldHVybmVkLiAgVGhlIHBvc2l0aW9uIGNhbiB0aGVuIGJlIGZvdW5kIGluIHx2Om1vdXNlX2NvbHwsCiAJCXx2Om1vdXNlX2xudW18IGFuZCB8djptb3VzZV93aW58LiAgVGhpcyBleGFtcGxlIHBvc2l0aW9ucyB0aGUKQEAgLTMyMDEsMTAgKzMyMDQsMTEgQEAKIAkJCTIJc2hpZnQKIAkJCTQJY29udHJvbAogCQkJOAlhbHQgKG1ldGEpCi0JCQkxNgltb3VzZSBkb3VibGUgY2xpY2sKLQkJCTMyCW1vdXNlIHRyaXBsZSBjbGljawotCQkJNjQJbW91c2UgcXVhZHJ1cGxlIGNsaWNrCi0JCQkxMjgJTWFjaW50b3NoIG9ubHk6IGNvbW1hbmQKKwkJCTE2CW1ldGEgKHdoZW4gaXQncyBkaWZmZXJlbnQgZnJvbSBBTFQpCisJCQkzMgltb3VzZSBkb3VibGUgY2xpY2sKKwkJCTY0CW1vdXNlIHRyaXBsZSBjbGljaworCQkJOTYJbW91c2UgcXVhZHJ1cGxlIGNsaWNrICg9PSAzMiArIDY0KQorCQkJMTI4CWNvbW1hbmQgKE1hY2ludG9zaCBvbmx5KQogCQlPbmx5IHRoZSBtb2RpZmllcnMgdGhhdCBoYXZlIG5vdCBiZWVuIGluY2x1ZGVkIGluIHRoZQogCQljaGFyYWN0ZXIgaXRzZWxmIGFyZSBvYnRhaW5lZC4JVGh1cyBTaGlmdC1hIHJlc3VsdHMgaW4gIkEiCiAJCXdpdGhvdXQgYSBtb2RpZmllci4KQEAgLTYyNTgsNiArNjI2Miw3IEBACiBtb3VzZV9uZXR0ZXJtCQlDb21waWxlZCB3aXRoIHN1cHBvcnQgZm9yIG5ldHRlcm0gbW91c2UuCiBtb3VzZV9wdGVybQkJQ29tcGlsZWQgd2l0aCBzdXBwb3J0IGZvciBxbnggcHRlcm0gbW91c2UuCiBtb3VzZV9zeXNtb3VzZQkJQ29tcGlsZWQgd2l0aCBzdXBwb3J0IGZvciBzeXNtb3VzZSAoKkJTRCBjb25zb2xlIG1vdXNlKQorbW91c2VfdXJ4dnQJCUNvbXBpbGVkIHdpdGggc3VwcG9ydCBmb3IgdXJ4dnQgbW91c2UuCiBtb3VzZV94dGVybQkJQ29tcGlsZWQgd2l0aCBzdXBwb3J0IGZvciB4dGVybSBtb3VzZS4KIG1vdXNlc2hhcGUJCUNvbXBpbGVkIHdpdGggc3VwcG9ydCBmb3IgJ21vdXNlc2hhcGUnLgogbXVsdGlfYnl0ZQkJQ29tcGlsZWQgd2l0aCBzdXBwb3J0IGZvciAnZW5jb2RpbmcnCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9tYXAudHh0IGIvcnVudGltZS9kb2MvbWFwLnR4dAppbmRleCA3NTljOTBjLi43M2I3OWYyIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9tYXAudHh0CisrKyBiL3J1bnRpbWUvZG9jL21hcC50eHQKQEAgLTEsNCArMSw0IEBACi0qbWFwLnR4dCogICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIE9jdCAxMgorKm1hcC50eHQqICAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMSBPY3QgMjIKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTI0Niw4ICsyNDYsOCBAQAogICBpbm9yZW1hcCA8ZXhwcj4gPEMtTD54ICJmb28iCiBJZiB5b3Ugbm93IHR5cGUgQ1RSTC1MIG5vdGhpbmcgaGFwcGVucyB5ZXQsIFZpbSBuZWVkcyB0aGUgbmV4dCBjaGFyYWN0ZXIgdG8KIGRlY2lkZSB3aGF0IG1hcHBpbmcgdG8gdXNlLiAgSWYgeW91IHR5cGUgJ3gnIHRoZSBzZWNvbmQgbWFwcGluZyBpcyB1c2VkIGFuZAotImZvbyIgaXMgaW5zZXJ0ZWQuICBJZiB5b3UgdHlwZSAnYScgdGhlIGZpcnN0IG1hcHBpbmcgaXMgdXNlZCwgZ2V0Y2hhcigpIGdldHMKLXRoZSAnYScgYW5kIHJldHVybnMgaXQuCisiZm9vIiBpcyBpbnNlcnRlZC4gIElmIHlvdSB0eXBlIGFueSBvdGhlciBrZXkgdGhlIGZpcnN0IG1hcHBpbmcgaXMgdXNlZCwKK2dldGNoYXIoKSBnZXRzIHRoZSB0eXBlZCBrZXkgYW5kIHJldHVybnMgaXQuCiAKIEhlcmUgaXMgYW4gZXhhbXBsZSB0aGF0IGluc2VydHMgYSBsaXN0IG51bWJlciB0aGF0IGluY3JlYXNlczogPgogCWxldCBjb3VudGVyID0gMApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQgYi9ydW50aW1lL2RvYy9vcHRpb25zLnR4dAppbmRleCBjNzYxNDc0Li5jNTJlMzFiIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vcHRpb25zLnR4dAorKysgYi9ydW50aW1lL2RvYy9vcHRpb25zLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvcHRpb25zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIFNlcCAzMAorKm9wdGlvbnMudHh0KglGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgRGVjIDE0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTQwMSw2ICs0MDEsOSBAQAogY29udGFpbiBub24taWQgY2hhcmFjdGVycyB0aGVuLiAgTm90ZSB0aGF0IGlmIHlvdSB3YW50IHRvIHVzZSB0aGlzIGZvciB0aGUKICJnZiIgY29tbWFuZCwgeW91IG5lZWQgdG8gYWRkIHRoZSAneycgYW5kICd9JyBjaGFyYWN0ZXJzIHRvICdpc2ZuYW1lJy4KIAorT24gTVMtV2luZG93cywgaWYgJEhPTUUgaXMgbm90IGRlZmluZWQgYXMgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUsIHRoZW4KK2F0IHJ1bnRpbWUgVmltIHdpbGwgc2V0IGl0IHRvIHRoZSBleHBhbnNpb24gb2YgJEhPTUVEUklWRSRIT01FUEFUSC4KKwogTk9URTogZXhwYW5kaW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyBhbmQgIn4vIiBpcyBvbmx5IGRvbmUgd2l0aCB0aGUgIjpzZXQiCiBjb21tYW5kLCBub3Qgd2hlbiBhc3NpZ25pbmcgYSB2YWx1ZSB0byBhbiBvcHRpb24gd2l0aCAiOmxldCIuCiAKQEAgLTEyMTcsNyArMTIyMCw4IEBACiAJCQl8OmJ3aXBlb3V0fAogCiAJQ0FSRUZVTDogd2hlbiAidW5sb2FkIiwgImRlbGV0ZSIgb3IgIndpcGUiIGlzIHVzZWQgY2hhbmdlcyBpbiBhIGJ1ZmZlcgotCWFyZSBsb3N0IHdpdGhvdXQgYSB3YXJuaW5nLgorCWFyZSBsb3N0IHdpdGhvdXQgYSB3YXJuaW5nLiAgQWxzbywgdGhlc2UgdmFsdWVzIG1heSBicmVhayBhdXRvY29tbWFuZHMKKwl0aGF0IHN3aXRjaCBiZXR3ZWVuIGJ1ZmZlcnMgdGVtcG9yYXJpbHkuCiAJVGhpcyBvcHRpb24gaXMgdXNlZCB0b2dldGhlciB3aXRoICdidWZ0eXBlJyBhbmQgJ3N3YXBmaWxlJyB0byBzcGVjaWZ5CiAJc3BlY2lhbCBraW5kcyBvZiBidWZmZXJzLiAgIFNlZSB8c3BlY2lhbC1idWZmZXJzfC4KIApAQCAtMzU1NCw4ICszNTU4LDggQEAKIAlzY3JlZW4uCiAKIAkJCQkJCSonZ3Vpb3B0aW9ucycqIConZ28nKgotJ2d1aW9wdGlvbnMnICdnbycJc3RyaW5nCShkZWZhdWx0ICJnbXJMdFQiICAgKE1TLVdpbmRvd3MpLAotCQkJCQkgImFnaW1yTHRUIiAoR1RLLCBNb3RpZiBhbmQgQXRoZW5hKSkKKydndWlvcHRpb25zJyAnZ28nCXN0cmluZwkoZGVmYXVsdCAiZWdtckx0VCIgICAoTVMtV2luZG93cyksCisJCQkJCSAiYWVnaW1yTHRUIiAoR1RLLCBNb3RpZiBhbmQgQXRoZW5hKSkKIAkJCWdsb2JhbAogCQkJe25vdCBpbiBWaX0KIAkJCXtvbmx5IGF2YWlsYWJsZSB3aGVuIGNvbXBpbGVkIHdpdGggR1VJIGVuYWJsZWR9CkBAIC0zODU4LDE0ICszODYyLDE2IEBACiAJYXJlIG5vdCBhcHBsaWVkLgogCVNlZSBhbHNvOiAnaW5jc2VhcmNoJyBhbmQgfDptYXRjaHwuCiAJV2hlbiB5b3UgZ2V0IGJvcmVkIGxvb2tpbmcgYXQgdGhlIGhpZ2hsaWdodGVkIG1hdGNoZXMsIHlvdSBjYW4gdHVybiBpdAotCW9mZiB3aXRoIHw6bm9obHNlYXJjaHwuICBBcyBzb29uIGFzIHlvdSB1c2UgYSBzZWFyY2ggY29tbWFuZCwgdGhlCi0JaGlnaGxpZ2h0aW5nIGNvbWVzIGJhY2suCisJb2ZmIHdpdGggfDpub2hsc2VhcmNofC4gIFRoaXMgZG9lcyBub3QgY2hhbmdlIHRoZSBvcHRpb24gdmFsdWUsIGFzCisJc29vbiBhcyB5b3UgdXNlIGEgc2VhcmNoIGNvbW1hbmQsIHRoZSBoaWdobGlnaHRpbmcgY29tZXMgYmFjay4KIAkncmVkcmF3dGltZScgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIHRpbWUgc3BlbnQgb24gZmluZGluZyBtYXRjaGVzLgogCVdoZW4gdGhlIHNlYXJjaCBwYXR0ZXJuIGNhbiBtYXRjaCBhbiBlbmQtb2YtbGluZSwgVmltIHdpbGwgdHJ5IHRvCiAJaGlnaGxpZ2h0IGFsbCBvZiB0aGUgbWF0Y2hlZCB0ZXh0LiAgSG93ZXZlciwgdGhpcyBkZXBlbmRzIG9uIHdoZXJlIHRoZQogCXNlYXJjaCBzdGFydHMuICBUaGlzIHdpbGwgYmUgdGhlIGZpcnN0IGxpbmUgaW4gdGhlIHdpbmRvdyBvciB0aGUgZmlyc3QKIAlsaW5lIGJlbG93IGEgY2xvc2VkIGZvbGQuICBBIG1hdGNoIGluIGEgcHJldmlvdXMgbGluZSB3aGljaCBpcyBub3QKIAlkcmF3biBtYXkgbm90IGNvbnRpbnVlIGluIGEgbmV3bHkgZHJhd24gbGluZS4KKwlZb3UgY2FuIHNwZWNpZnkgd2hldGhlciB0aGUgaGlnaGxpZ2h0IHN0YXR1cyBpcyByZXN0b3JlZCBvbiBzdGFydHVwCisJd2l0aCB0aGUgJ2gnIGZsYWcgaW4gJ3ZpbWluZm8nIHx2aW1pbmZvLWh8LgogCU5PVEU6IFRoaXMgb3B0aW9uIGlzIHJlc2V0IHdoZW4gJ2NvbXBhdGlibGUnIGlzIHNldC4KIAogCQkJCQkJKidoaXN0b3J5JyogKidoaScqCkBAIC01MjQxLDcgKzUyNDcsNyBAQAogCXJlY29nbml6ZWQgYXMgYSBjb21wcmVzc2VkIGZpbGUuCiAJT25seSBub3JtYWwgZmlsZSBuYW1lIGNoYXJhY3RlcnMgY2FuIGJlIHVzZWQsICIvXCo/W3w8PiIgYXJlIGlsbGVnYWwuCiAKLQkJCQkJKidwYXRoJyogKidwYScqICpFMzQzKiAqRTM0NSogKkUzNDcqCisJCQkJKidwYXRoJyogKidwYScqICpFMzQzKiAqRTM0NSogKkUzNDcqICpFODU0KgogJ3BhdGgnICdwYScJCXN0cmluZwkoZGVmYXVsdCBvbiBVbml4OiAiLiwvdXNyL2luY2x1ZGUsLCIKIAkJCQkgICBvbiBPUy8yOgkgICIuLC9lbXgvaW5jbHVkZSwsIgogCQkJCSAgIG90aGVyIHN5c3RlbXM6ICIuLCwiKQpAQCAtNzM2OCw2ICs3Mzc0LDggQEAKIAkgICBqc2J0ZXJtCUpTQiB0ZXJtIG1vdXNlIGhhbmRsaW5nLgogCQkJCQkJCSpwdGVybS1tb3VzZSoKIAkgICBwdGVybQlRTlggcHRlcm0gbW91c2UgaGFuZGxpbmcuCisJCQkJCQkJKnVyeHZ0LW1vdXNlKgorCSAgIHVyeHZ0CU1vdXNlIGhhbmRsaW5nIGZvciB0aGUgdXJ4dnQgKHJ4dnQtdW5pY29kZSkgdGVybWluYWwuCiAKIAlUaGUgbW91c2UgaGFuZGxpbmcgbXVzdCBiZSBlbmFibGVkIGF0IGNvbXBpbGUgdGltZSB8K21vdXNlX3h0ZXJtfAogCXwrbW91c2VfZGVjfCB8K21vdXNlX25ldHRlcm18LgpAQCAtNzU4NCwxNSArNzU5MiwxOCBAQAogCXBhcmFtZXRlci4gIFRoZSBmb2xsb3dpbmcgaXMgYSBsaXN0IG9mIHRoZSBpZGVudGlmeWluZyBjaGFyYWN0ZXJzIGFuZAogCXRoZSBlZmZlY3Qgb2YgdGhlaXIgdmFsdWUuCiAJQ0hBUglWQUxVRQl+CisJCQkJCQkJKnZpbWluZm8tISoKIAkhCVdoZW4gaW5jbHVkZWQsIHNhdmUgYW5kIHJlc3RvcmUgZ2xvYmFsIHZhcmlhYmxlcyB0aGF0IHN0YXJ0CiAJCXdpdGggYW4gdXBwZXJjYXNlIGxldHRlciwgYW5kIGRvbid0IGNvbnRhaW4gYSBsb3dlcmNhc2UKIAkJbGV0dGVyLiAgVGh1cyAiS0VFUFRISVMgYW5kICJLX0xfTSIgYXJlIHN0b3JlZCwgYnV0ICJLZWVwVGhpcyIKIAkJYW5kICJfS19MX00iIGFyZSBub3QuICBOZXN0ZWQgTGlzdCBhbmQgRGljdCBpdGVtcyBtYXkgbm90IGJlCiAJCXJlYWQgYmFjayBjb3JyZWN0bHksIHlvdSBlbmQgdXAgd2l0aCBhbiBlbXB0eSBpdGVtLgorCQkJCQkJCSp2aW1pbmZvLXF1b3RlKgogCSIJTWF4aW11bSBudW1iZXIgb2YgbGluZXMgc2F2ZWQgZm9yIGVhY2ggcmVnaXN0ZXIuICBPbGQgbmFtZSBvZgogCQl0aGUgJzwnIGl0ZW0sIHdpdGggdGhlIGRpc2FkdmFudGFnZSB0aGF0IHlvdSBuZWVkIHRvIHB1dCBhCiAJCWJhY2tzbGFzaCBiZWZvcmUgdGhlICIsIG90aGVyd2lzZSBpdCB3aWxsIGJlIHJlY29nbml6ZWQgYXMgdGhlCiAJCXN0YXJ0IG9mIGEgY29tbWVudCEKKwkJCQkJCQkqdmltaW5mby0lKgogCSUJV2hlbiBpbmNsdWRlZCwgc2F2ZSBhbmQgcmVzdG9yZSB0aGUgYnVmZmVyIGxpc3QuICBJZiBWaW0gaXMKIAkJc3RhcnRlZCB3aXRoIGEgZmlsZSBuYW1lIGFyZ3VtZW50LCB0aGUgYnVmZmVyIGxpc3QgaXMgbm90CiAJCXJlc3RvcmVkLiAgSWYgVmltIGlzIHN0YXJ0ZWQgd2l0aG91dCBhIGZpbGUgbmFtZSBhcmd1bWVudCwgdGhlCkBAIC03NjAyLDM4ICs3NjEzLDQ4IEBACiAJCVdoZW4gZm9sbG93ZWQgYnkgYSBudW1iZXIsIHRoZSBudW1iZXIgc3BlY2lmaWVzIHRoZSBtYXhpbXVtCiAJCW51bWJlciBvZiBidWZmZXJzIHRoYXQgYXJlIHN0b3JlZC4gIFdpdGhvdXQgYSBudW1iZXIgYWxsCiAJCWJ1ZmZlcnMgYXJlIHN0b3JlZC4KKwkJCQkJCQkqdmltaW5mby0nKgogCScJTWF4aW11bSBudW1iZXIgb2YgcHJldmlvdXNseSBlZGl0ZWQgZmlsZXMgZm9yIHdoaWNoIHRoZSBtYXJrcwogCQlhcmUgcmVtZW1iZXJlZC4gIFRoaXMgcGFyYW1ldGVyIG11c3QgYWx3YXlzIGJlIGluY2x1ZGVkIHdoZW4KIAkJJ3ZpbWluZm8nIGlzIG5vbi1lbXB0eS4KIAkJSW5jbHVkaW5nIHRoaXMgaXRlbSBhbHNvIG1lYW5zIHRoYXQgdGhlIHxqdW1wbGlzdHwgYW5kIHRoZQogCQl8Y2hhbmdlbGlzdHwgYXJlIHN0b3JlZCBpbiB0aGUgdmltaW5mbyBmaWxlLgorCQkJCQkJCSp2aW1pbmZvLS8qCiAJLwlNYXhpbXVtIG51bWJlciBvZiBpdGVtcyBpbiB0aGUgc2VhcmNoIHBhdHRlcm4gaGlzdG9yeSB0byBiZQogCQlzYXZlZC4gIElmIG5vbi16ZXJvLCB0aGVuIHRoZSBwcmV2aW91cyBzZWFyY2ggYW5kIHN1YnN0aXR1dGUKIAkJcGF0dGVybnMgYXJlIGFsc28gc2F2ZWQuICBXaGVuIG5vdCBpbmNsdWRlZCwgdGhlIHZhbHVlIG9mCiAJCSdoaXN0b3J5JyBpcyB1c2VkLgorCQkJCQkJCSp2aW1pbmZvLToqCiAJOglNYXhpbXVtIG51bWJlciBvZiBpdGVtcyBpbiB0aGUgY29tbWFuZC1saW5lIGhpc3RvcnkgdG8gYmUKIAkJc2F2ZWQuICBXaGVuIG5vdCBpbmNsdWRlZCwgdGhlIHZhbHVlIG9mICdoaXN0b3J5JyBpcyB1c2VkLgorCQkJCQkJCSp2aW1pbmZvLTwqCiAJPAlNYXhpbXVtIG51bWJlciBvZiBsaW5lcyBzYXZlZCBmb3IgZWFjaCByZWdpc3Rlci4gIElmIHplcm8gdGhlbgogCQlyZWdpc3RlcnMgYXJlIG5vdCBzYXZlZC4gIFdoZW4gbm90IGluY2x1ZGVkLCBhbGwgbGluZXMgYXJlCiAJCXNhdmVkLiAgJyInIGlzIHRoZSBvbGQgbmFtZSBmb3IgdGhpcyBpdGVtLgogCQlBbHNvIHNlZSB0aGUgJ3MnIGl0ZW0gYmVsb3c6IGxpbWl0IHNwZWNpZmllZCBpbiBLYnl0ZS4KKwkJCQkJCQkqdmltaW5mby1AKgogCUAJTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgaW4gdGhlIGlucHV0LWxpbmUgaGlzdG9yeSB0byBiZQogCQlzYXZlZC4gIFdoZW4gbm90IGluY2x1ZGVkLCB0aGUgdmFsdWUgb2YgJ2hpc3RvcnknIGlzIHVzZWQuCisJCQkJCQkJKnZpbWluZm8tYyoKIAljCVdoZW4gaW5jbHVkZWQsIGNvbnZlcnQgdGhlIHRleHQgaW4gdGhlIHZpbWluZm8gZmlsZSBmcm9tIHRoZQogCQknZW5jb2RpbmcnIHVzZWQgd2hlbiB3cml0aW5nIHRoZSBmaWxlIHRvIHRoZSBjdXJyZW50CiAJCSdlbmNvZGluZycuICBTZWUgfHZpbWluZm8tZW5jb2Rpbmd8LgorCQkJCQkJCSp2aW1pbmZvLWYqCiAJZglXaGV0aGVyIGZpbGUgbWFya3MgbmVlZCB0byBiZSBzdG9yZWQuICBJZiB6ZXJvLCBmaWxlIG1hcmtzICgnMAogCQl0byAnOSwgJ0EgdG8gJ1opIGFyZSBub3Qgc3RvcmVkLiAgV2hlbiBub3QgcHJlc2VudCBvciB3aGVuCiAJCW5vbi16ZXJvLCB0aGV5IGFyZSBhbGwgc3RvcmVkLiAgJzAgaXMgdXNlZCBmb3IgdGhlIGN1cnJlbnQKIAkJY3Vyc29yIHBvc2l0aW9uICh3aGVuIGV4aXRpbmcgb3Igd2hlbiBkb2luZyAiOnd2aW1pbmZvIikuCisJCQkJCQkJKnZpbWluZm8taCoKIAloCURpc2FibGUgdGhlIGVmZmVjdCBvZiAnaGxzZWFyY2gnIHdoZW4gbG9hZGluZyB0aGUgdmltaW5mbwogCQlmaWxlLiAgV2hlbiBub3QgaW5jbHVkZWQsIGl0IGRlcGVuZHMgb24gd2hldGhlciAiOm5vaGxzZWFyY2giCiAJCWhhcyBiZWVuIHVzZWQgc2luY2UgdGhlIGxhc3Qgc2VhcmNoIGNvbW1hbmQuCisJCQkJCQkJKnZpbWluZm8tbioKIAluCU5hbWUgb2YgdGhlIHZpbWluZm8gZmlsZS4gIFRoZSBuYW1lIG11c3QgaW1tZWRpYXRlbHkgZm9sbG93CiAJCXRoZSAnbicuICBNdXN0IGJlIHRoZSBsYXN0IG9uZSEgIElmIHRoZSAiLWkiIGFyZ3VtZW50IHdhcwogCQlnaXZlbiB3aGVuIHN0YXJ0aW5nIFZpbSwgdGhhdCBmaWxlIG5hbWUgb3ZlcnJpZGVzIHRoZSBvbmUKIAkJZ2l2ZW4gaGVyZSB3aXRoICd2aW1pbmZvJy4gIEVudmlyb25tZW50IHZhcmlhYmxlcyBhcmUgZXhwYW5kZWQKIAkJd2hlbiBvcGVuaW5nIHRoZSBmaWxlLCBub3Qgd2hlbiBzZXR0aW5nIHRoZSBvcHRpb24uCisJCQkJCQkJKnZpbWluZm8tcioKIAlyCVJlbW92YWJsZSBtZWRpYS4gIFRoZSBhcmd1bWVudCBpcyBhIHN0cmluZyAodXAgdG8gdGhlIG5leHQKIAkJJywnKS4gIFRoaXMgcGFyYW1ldGVyIGNhbiBiZSBnaXZlbiBzZXZlcmFsIHRpbWVzLiAgRWFjaAogCQlzcGVjaWZpZXMgdGhlIHN0YXJ0IG9mIGEgcGF0aCBmb3Igd2hpY2ggbm8gbWFya3Mgd2lsbCBiZQpAQCAtNzY0Miw2ICs3NjYzLDcgQEAKIAkJYWxzbyB1c2UgaXQgZm9yIHRlbXAgZmlsZXMsIGUuZy4sIGZvciBVbml4OiAici90bXAiLiAgQ2FzZSBpcwogCQlpZ25vcmVkLiAgTWF4aW11bSBsZW5ndGggb2YgZWFjaCAncicgYXJndW1lbnQgaXMgNTAKIAkJY2hhcmFjdGVycy4KKwkJCQkJCQkqdmltaW5mby1zKgogCXMJTWF4aW11bSBzaXplIG9mIGFuIGl0ZW0gaW4gS2J5dGUuICBJZiB6ZXJvIHRoZW4gcmVnaXN0ZXJzIGFyZQogCQlub3Qgc2F2ZWQuICBDdXJyZW50bHkgb25seSBhcHBsaWVzIHRvIHJlZ2lzdGVycy4gIFRoZSBkZWZhdWx0CiAJCSJzMTAiIHdpbGwgZXhjbHVkZSByZWdpc3RlcnMgd2l0aCBtb3JlIHRoYW4gMTAgS2J5dGUgb2YgdGV4dC4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3BhdHRlcm4udHh0IGIvcnVudGltZS9kb2MvcGF0dGVybi50eHQKaW5kZXggOWE5ZDA1Ni4uNDI4MzMyMCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcGF0dGVybi50eHQKKysrIGIvcnVudGltZS9kb2MvcGF0dGVybi50eHQKQEAgLTEsNCArMSw0IEBACi0qcGF0dGVybi50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIFNlcCAyOAorKnBhdHRlcm4udHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMSBOb3YgMjYKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTkzNyw3ICs5MzcsNyBAQAogXGwJbG93ZXJjYXNlIGNoYXJhY3RlcjoJCVthLXpdCQkqL1xsKgogXEwJbm9uLWxvd2VyY2FzZSBjaGFyYWN0ZXI6CVteYS16XQkJKi9cTCoKIFx1CXVwcGVyY2FzZSBjaGFyYWN0ZXI6CQlbQS1aXQkJKi9cdSoKLVxVCW5vbi11cHBlcmNhc2UgY2hhcmFjdGVyCQlbXkEtWl0JCSovXFUqCitcVQlub24tdXBwZXJjYXNlIGNoYXJhY3RlcjoJW15BLVpdCQkqL1xVKgogCiAJTk9URTogVXNpbmcgdGhlIGF0b20gaXMgZmFzdGVyIHRoYW4gdGhlIFtdIGZvcm0uCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQgYi9ydW50aW1lL2RvYy9zeW50YXgudHh0CmluZGV4IDVlYjdkMTEuLjM4YmRiMzkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQKKysrIGIvcnVudGltZS9kb2Mvc3ludGF4LnR4dApAQCAtMSw0ICsxLDQgQEAKLSpzeW50YXgudHh0KglGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgU2VwIDMwCisqc3ludGF4LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIE5vdiAyNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zOTE5LDcgKzM5MTksNyBAQAogVGhlIGZpbGUgd2lsbCBiZSBwYXJzZWQgZnJvbSB0aGUgc3RhcnQuICBUaGlzIG1ha2VzIHN5bnRheCBoaWdobGlnaHRpbmcKIGFjY3VyYXRlLCBidXQgY2FuIGJlIHNsb3cgZm9yIGxvbmcgZmlsZXMuICBWaW0gY2FjaGVzIHByZXZpb3VzbHkgcGFyc2VkIHRleHQsCiBzbyB0aGF0IGl0J3Mgb25seSBzbG93IHdoZW4gcGFyc2luZyB0aGUgdGV4dCBmb3IgdGhlIGZpcnN0IHRpbWUuICBIb3dldmVyLAotd2hlbiBtYWtpbmcgY2hhbmdlcyBzb21lIHBhcnQgb2YgdGhlIG5leHQgbmVlZHMgdG8gYmUgcGFyc2VkIGFnYWluICh3b3JzdAord2hlbiBtYWtpbmcgY2hhbmdlcyBzb21lIHBhcnQgb2YgdGhlIHRleHQgbmVlZHMgdG8gYmUgcGFyc2VkIGFnYWluICh3b3JzdAogY2FzZTogdG8gdGhlIGVuZCBvZiB0aGUgZmlsZSkuCiAKIFVzaW5nICJmcm9tc3RhcnQiIGlzIGVxdWl2YWxlbnQgdG8gdXNpbmcgIm1pbmxpbmVzIiB3aXRoIGEgdmVyeSBsYXJnZSBudW1iZXIuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90YWdzIGIvcnVudGltZS9kb2MvdGFncwppbmRleCA2YjQzMDUzLi5lODA2ODVhIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90YWdzCisrKyBiL3J1bnRpbWUvZG9jL3RhZ3MKQEAgLTExODQsNiArMTE4NCw3IEBACiArbW91c2VfbmV0dGVybQl2YXJpb3VzLnR4dAkvKittb3VzZV9uZXR0ZXJtKgogK21vdXNlX3B0ZXJtCXZhcmlvdXMudHh0CS8qK21vdXNlX3B0ZXJtKgogK21vdXNlX3N5c21vdXNlCXZhcmlvdXMudHh0CS8qK21vdXNlX3N5c21vdXNlKgorK21vdXNlX3VyeHZ0CXZhcmlvdXMudHh0CS8qK21vdXNlX3VyeHZ0KgogK21vdXNlX3h0ZXJtCXZhcmlvdXMudHh0CS8qK21vdXNlX3h0ZXJtKgogK21vdXNlc2hhcGUJdmFyaW91cy50eHQJLyorbW91c2VzaGFwZSoKICttdWx0aV9ieXRlCXZhcmlvdXMudHh0CS8qK211bHRpX2J5dGUqCkBAIC0yMDkyLDYgKzIwOTMsNyBAQAogOmRpc3BsYXkJY2hhbmdlLnR4dAkvKjpkaXNwbGF5KgogOmRqCXRhZ3NyY2gudHh0CS8qOmRqKgogOmRqdW1wCXRhZ3NyY2gudHh0CS8qOmRqdW1wKgorOmRsCWNoYW5nZS50eHQJLyo6ZGwqCiA6ZGxpCXRhZ3NyY2gudHh0CS8qOmRsaSoKIDpkbGlzdAl0YWdzcmNoLnR4dAkvKjpkbGlzdCoKIDpkbwlhdXRvY21kLnR4dAkvKjpkbyoKQEAgLTQyMzYsNiArNDIzOCw3IEBACiBFODUxCWd1aV94MTEudHh0CS8qRTg1MSoKIEU4NTIJZ3VpX3gxMS50eHQJLypFODUyKgogRTg1MwlldmFsLnR4dAkvKkU4NTMqCitFODU0CW9wdGlvbnMudHh0CS8qRTg1NCoKIEU4Ngl3aW5kb3dzLnR4dAkvKkU4NioKIEU4Nwl3aW5kb3dzLnR4dAkvKkU4NyoKIEU4OAl3aW5kb3dzLnR4dAkvKkU4OCoKQEAgLTQ2ODUsNiArNDY4OCw3IEBACiBhbHQtaW5wdXQJZGVidWdnZXIudHh0CS8qYWx0LWlucHV0KgogYWx0ZXJuYXRlLWZpbGUJZWRpdGluZy50eHQJLyphbHRlcm5hdGUtZmlsZSoKIGFtaWdhLXdpbmRvdwlzdGFydGluZy50eHQJLyphbWlnYS13aW5kb3cqCithbmQoKQlldmFsLnR4dAkvKmFuZCgpKgogYW5vbnltb3VzLWZ1bmN0aW9uCWV2YWwudHh0CS8qYW5vbnltb3VzLWZ1bmN0aW9uKgogYW50LnZpbQlzeW50YXgudHh0CS8qYW50LnZpbSoKIGFwCW1vdGlvbi50eHQJLyphcCoKQEAgLTYxMzAsNiArNjEzNCw3IEBACiBoZWxwaGVscAloZWxwaGVscC50eHQJLypoZWxwaGVscCoKIGhlbHBoZWxwLnR4dAloZWxwaGVscC50eHQJLypoZWxwaGVscC50eHQqCiBoZXgtZWRpdGluZwl0aXBzLnR4dAkvKmhleC1lZGl0aW5nKgoraGV4LW51bWJlcglldmFsLnR4dAkvKmhleC1udW1iZXIqCiBoaWRkZW4tYnVmZmVyCXdpbmRvd3MudHh0CS8qaGlkZGVuLWJ1ZmZlcioKIGhpZGRlbi1jaGFuZ2VkCXZlcnNpb241LnR4dAkvKmhpZGRlbi1jaGFuZ2VkKgogaGlkZGVuLW1lbnVzCWd1aS50eHQJLypoaWRkZW4tbWVudXMqCkBAIC02NDM2LDYgKzY0NDEsNyBAQAogaW50cm8JaW50cm8udHh0CS8qaW50cm8qCiBpbnRyby50eHQJaW50cm8udHh0CS8qaW50cm8udHh0KgogaW52ZXJzZQlzeW50YXgudHh0CS8qaW52ZXJzZSoKK2ludmVydCgpCWV2YWwudHh0CS8qaW52ZXJ0KCkqCiBpcAltb3Rpb24udHh0CS8qaXAqCiBpcXVvdGUJbW90aW9uLnR4dAkvKmlxdW90ZSoKIGlzCW1vdGlvbi50eHQJLyppcyoKQEAgLTcwMzUsNiArNzA0MSw3IEBACiBvYnRhaW5pbmctZXh0ZWQJbmV0YmVhbnMudHh0CS8qb2J0YWluaW5nLWV4dGVkKgogb2NhbWwudmltCXN5bnRheC50eHQJLypvY2FtbC52aW0qCiBvY3RhbAlldmFsLnR4dAkvKm9jdGFsKgorb2N0YWwtbnVtYmVyCWV2YWwudHh0CS8qb2N0YWwtbnVtYmVyKgogb2N0YWwtbnVtYmVyCW9wdGlvbnMudHh0CS8qb2N0YWwtbnVtYmVyKgogb2xkZmlsZXMtdmFyaWFibGUJZXZhbC50eHQJLypvbGRmaWxlcy12YXJpYWJsZSoKIG9sZS1hY3RpdmF0aW9uCWlmX29sZS50eHQJLypvbGUtYWN0aXZhdGlvbioKQEAgLTcwNjAsNiArNzA2Nyw3IEBACiBvcHRpb25zLWNoYW5nZWQJdmVyc2lvbjUudHh0CS8qb3B0aW9ucy1jaGFuZ2VkKgogb3B0aW9ucy50eHQJb3B0aW9ucy50eHQJLypvcHRpb25zLnR4dCoKIG9wdHdpbglvcHRpb25zLnR4dAkvKm9wdHdpbioKK29yKCkJZXZhbC50eHQJLypvcigpKgogb3JhY2xlCWZ0X3NxbC50eHQJLypvcmFjbGUqCiBvczIJb3Nfb3MyLnR4dAkvKm9zMioKIG9zMmFuc2kJb3Nfb3MyLnR4dAkvKm9zMmFuc2kqCkBAIC04MDY2LDYgKzgwNzQsNyBAQAogdW5saXN0ZWQtYnVmZmVyCXdpbmRvd3MudHh0CS8qdW5saXN0ZWQtYnVmZmVyKgogdXAtZG93bi1tb3Rpb25zCW1vdGlvbi50eHQJLyp1cC1kb3duLW1vdGlvbnMqCiB1cHBlcmNhc2UJY2hhbmdlLnR4dAkvKnVwcGVyY2FzZSoKK3VyeHZ0LW1vdXNlCW9wdGlvbnMudHh0CS8qdXJ4dnQtbW91c2UqCiB1c2UtY3BvLXNhdmUJdXNyXzQxLnR4dAkvKnVzZS1jcG8tc2F2ZSoKIHVzZS12aXN1YWwtY21kcwl2ZXJzaW9uNC50eHQJLyp1c2UtdmlzdWFsLWNtZHMqCiB1c2VmdWwtbWFwcGluZ3MJdGlwcy50eHQJLyp1c2VmdWwtbWFwcGluZ3MqCkBAIC04NTA0LDYgKzg1MTMsNyBAQAogeG1sLWZvbGRpbmcJc3ludGF4LnR4dAkvKnhtbC1mb2xkaW5nKgogeG1sLW9tbmktZGF0YWZpbGUJaW5zZXJ0LnR4dAkvKnhtbC1vbW5pLWRhdGFmaWxlKgogeG1sLnZpbQlzeW50YXgudHh0CS8qeG1sLnZpbSoKK3hvcigpCWV2YWwudHh0CS8qeG9yKCkqCiB4cG0udmltCXN5bnRheC50eHQJLyp4cG0udmltKgogeHRlcm0tOC1iaXQJdGVybS50eHQJLyp4dGVybS04LWJpdCoKIHh0ZXJtLThiaXQJdGVybS50eHQJLyp4dGVybS04Yml0KgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdGFnc3JjaC50eHQgYi9ydW50aW1lL2RvYy90YWdzcmNoLnR4dAppbmRleCA1MzM0YmIzLi45YWJjMTU0IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90YWdzcmNoLnR4dAorKysgYi9ydW50aW1lL2RvYy90YWdzcmNoLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp0YWdzcmNoLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMDkgRmViIDE4CisqdGFnc3JjaC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIE9jdCAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNzcwLDEyICs3NzAsMTIgQEAKIAkJCXtub3QgaW4gVml9CiAKIAkJCQkJCQkqOmRsaSogKjpkbGlzdCoKLTpbcmFuZ2VdZGxbaXN0XVshXSBbL11zdHJpbmdbL10KKzpbcmFuZ2VdZGxpW3N0XVshXSBbL11zdHJpbmdbL10KIAkJCUxpa2UgIltEIiAgYW5kICJdRCIsIGJ1dCBzZWFyY2ggaW4gW3JhbmdlXSBsaW5lcwogCQkJKGRlZmF1bHQ6IHdob2xlIGZpbGUpLgogCQkJU2VlIHw6c2VhcmNoLWFyZ3N8IGZvciBbL10gYW5kIFshXS4gIHtub3QgaW4gVml9CiAJCQlOb3RlIHRoYXQgIjpkbCIgd29ya3MgbGlrZSAiOmRlbGV0ZSIgd2l0aCB0aGUgImwiCi0JCQlmbGFnLgorCQkJcmVnaXN0ZXIuCiAKIAkJCQkJCQkqW19DVFJMLUQqCiBbIENUUkwtRAkJSnVtcCB0byB0aGUgZmlyc3QgbWFjcm8gZGVmaW5pdGlvbiB0aGF0IGNvbnRhaW5zIHRoZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdG9kby50eHQgYi9ydW50aW1lL2RvYy90b2RvLnR4dAppbmRleCBiZTgyMDcwLi4yYjQzMTY2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90b2RvLnR4dAorKysgYi9ydW50aW1lL2RvYy90b2RvLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgT2N0IDIwCisqdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIERlYyAxNAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zNCw1OCArMzQsNDQgQEAKIAkJCQkJCQkqa25vd24tYnVncyoKIC0tLS0tLS0tLS0tLS0tLS0tLS0tIEtub3duIGJ1Z3MgYW5kIGN1cnJlbnQgd29yayAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1QYXRjaCBmb3IgJ3RyYW5zcGFyZW5jeScgb3B0aW9uLiAoQmVuIEJvZWNrZWwsIDIwMTEgU2VwIDE0KQotRG8gd2Ugd2FudCB0aGlzPyAgQWxzbyBTZXJnaXUgRG90ZW5jbywgMjAxMSBTZXAgMTcuCi0KLU9uY2Ugc3ludGF4IGFuZCBvdGhlciBydW50aW1lIGZpbGVzIGhhdmUgYmVlbiBmaXhlZDogYWRkICJzZXQgY3AiIHRvCi1jaGVjay52aW0uICBVc2UgYSBmdW5jdGlvbiB0byBydW4gYm90aCB3aXRoICdjcCcgYW5kICdub2NwJy4KLQotV2luZG93cyBzdHVmZjoKLS0gUGF0Y2ggZm9yIGd1aV93MzIuYzogY2FsbCBEZWZXaW5kb3dQcm9jKCkuIChTZXJnaXUgRG90ZW5jbywgMjAxMSBTZXAgMTUsIDE3KQotLSBQYXRjaCB0byB1c2UgdGFzayBkaWFsb2dzIHdoZW4gYXZhaWxhYmxlLiAoU2VyZ2l1IERvdGVuY28sIDIwMTEgU2VwIDE1LCAxNykKLSAgQWRkaXRpb24gU2VwIDE2LgotLSBQYXRjaCBmb3IgYWxwaGEtYmxlbmRlZCBpY29ucyBhbmQgdG9vbGJhciBoZWlnaHQuIChTZXJnaXUgRG90ZW5jbywgMjAxMSBTZXAKLSAgMTUsIDE3KQotLSBQYXRjaCBmb3IgcmVkaXJlY3Rpb24uIChZYXN1aGlybyBNYXRzdW1vdG8sIDIwMTEgU2VwIDE1KSAybmQgcGF0Y2guICBBbm90aGVyCi0gIG9uIFNlcCAxNT8gIENhbid0IHJlcHJvZHVjZSBpdC4gIE9ubHkgd2l0aCB2aW0uZXhlLCBjb21waWxlZCB3aXRoIE1pbmd3PwotCi1QYXRjaCBmb3IgcGhwY29tcGxldGUudmltIChCZW5qYW1pbiBIYXNrZWxsKSBwaWNrZWQgdXAgYnkgbWFpbnRhaW5lcj8KLQotU29tZXRoaW5nIHdlaXJkIHdpdGggdGV4dCBmb3JtYXR0aW5nIHdoZW4gJ2NvbXBhdGlibGUnIGlzIHNldC4KLU9ubHkgZm9ybWF0cyBmcm9tIEluc2VydCBzdGFydGluZyBwb2ludCwgZXZlbiB3aGVuIHVzaW5nICJncWoiPwotKFBldGVyIFdhZ2VuYWFyLCAyMDExIE9jdCAyMCkKLQotRm9jdXNHYWluZWQgZXZlbnQgcmVjZWl2ZWQgZXZlbnQgdGhvdWdoIGl0J3MgaW4gJ2V2ZW50aWdub3JlJz8KLShCZW4gRnJpdHosIDIwMTEgU2VwIDI1KQotCi1BZGQgdm90aW5nIGl0ZW06IG1vZGVybiBwbHVnaW4gbWFuYWdlbWVudCAoYXV0b21hdGljIHVwZGF0ZXMsIGhhbmRsZQotZGVwZW5kZW5jaWVzKS4KLUFkZCBsaW5rcyB0byBodHRwOi8vdmltY2FzdHMub3JnLyBhbmQgaHR0cDovL3ZpbWdvbGYuY29tLwotUmVhZCBodHRwOi8vd3d3LmNoYXJsaWV0YW5rc2xleS5uZXQvcGhpbHRleC9zYW5lLXZpbS1wbHVnaW4tbWFuYWdlbWVudC8KLQogR28gdGhyb3VnaCBtb3JlIGNvdmVyaXR5IHJlcG9ydHMuCiAKLUJldHRlciBEL0R0cmFjZSBkZXRlY3Rpb24uIChKZXNzZSBQaGlsbGlwcywgMjAxMSBPY3QgMTgpCi0KLVBhdGNoIGZvciBub3Qgc2hvd2luZyBkaWN0IG1ldGhvZHMgaW4gY29tcGxldGlvbi4gKFlhc3VoaXJvIE1hdHN1bW90bywgMjAxMQotT2N0IDcpICBNb3ZlICI8IiBtZXRob2RzIHRvIHRoZSBlbmQuICBGaXggZm9yIGNvbXBpbGVyIHdhcm5pbmdzLCBPY3QgMTMuCi0KLUZQRSBleGNlcHRpb24gaW4gbWJ5dGUuYy4gIFN0YWNrIHRyYWNlOiAoTG9teSwgMjAxMSBTZXAgMjYpCi1DYW4ndCByZXByb2R1Y2UgaXQuCi0KLUNyYXNoIGluIGF1dG9jb21wbGV0ZSwgdmFsZ3JpbmQgbG9nLiAoR3JlZyBXZWJlciwgMjAxMSBBcHIgMjIpCi0KIERpc2N1c3Npb24gYWJvdXQgY2Fub25pY2FsaXphdGlvbiBvZiBIZWJyZXcuIChSb24gQWFyb24sIDIwMTEgQXByaWwgMTApCiAKLVBhdGNoIHRvIGZhaWwgaWYgY29uZmlndXJlIGNhbid0IGZpbmQgYW4gaW50ZXJmYWNlLCBzdWNoIGFzIFB5dGhvbi4KLShTaGxvbWkgRmlzaCwgMjAxMSBKdWwgMTEpCitQYXRjaCB0byBmaXggIkNvbnNvbGUgcHJvbXB0cyBmYWlsIHRvIHJlc2V0IHRoZSBjb25zb2xlIHBhZ2VyIi4KK0lzc3VlIDE0IG9uIGdvb2dsZWNvZGUKKworSXNzdWUgMzMgb24gZ29vZ2xlY29kZTogZmVlZGtleXMoKSBsZWFrcyBtZW1vcnkuCiAKIFBhdGNoIHRvIHN1cHBvcnQgVVRGLTggZm9yIEhhbmd1bC4gKFNoYXduIFkuSC4gS2ltLCAyMDExIE1heSAxKQogTmVlZHMgbW9yZSB3b3JrLgogCitPbmNlIHN5bnRheCBhbmQgb3RoZXIgcnVudGltZSBmaWxlcyBoYXZlIGJlZW4gZml4ZWQ6IGFkZCAic2V0IGNwIiB0bworY2hlY2sudmltLiAgVXNlIGEgZnVuY3Rpb24gdG8gcnVuIGJvdGggd2l0aCAnY3AnIGFuZCAnbm9jcCcuCisKK1BhdGNoIHRvIG1ha2UgIjpoZWxwZ3JlcCIgd29yayB3aXRoIG5vbi1VVEYtOCBlbmNvZGluZy4gKFlhc3VoaXJvIE1hdHN1bW90bywKKzIwMTEgTm92IDI4LCB1cGRhdGUgbGF0ZXIgdGhhdCBkYXkpCisKKyI6ZG9hdSIgc2F5cyBpdCB0cmlnZ2VycyBtb2RlbGluZS4gIFNob3VsZCB0aGlzIG9ubHkgaGFwcGVuIGZvciBldmVudHMgdXNlZAord2hlbiBsb2FkaW5nIGEgYnVmZmVyPyAgKEthbmEgTmF0c3VubywgMjAxMSBOb3YgNykKKworUGF0Y2ggdG8gZml4ICJpdCIgYW5kICJhdCIgd2hlbiB0aGVyZSBpcyBhIGRhc2ggaW4gdGhlIHRhZyBuYW1lLgorKENocmlzdGlhbiBCcmFiYW5kdCwgMjAxMSBOb3YgMjApCisKK1BhdGNoIHRvIG1ha2UgJ3NoY2YnIGRlZmF1bHQgd29yayBiZXR0ZXIuIChCZW5qYW1pbiBGcml0eiwgMjAxMSBOb3YgMTgpCisgICAgV2luMzI6IFdoZW4gJ3NoZWxsJyBpcyBjbWQuZXhlIHRoaXMgY29tbWFuZCBmYWlsczoKKwkgICAgZWNobyBzeXN0ZW0oJyJjOi9wYXRoL2VjaG8uZXhlIiAiZm9vIGJhciInKQorICAgIFNob3VsZCB3ZSBzZXQgdGhlIGRlZmF1bHQgZm9yICdzaGVsbHhxdW90ZScgdG8gYSBkb3VibGUgcXVvdGUsIHdoZW4gJ3NoZWxsJworICAgIGNvbnRhaW5zICJjbWQiIGluIHRoZSB0YWlsPyAgKEJlbmphbWluIEZyaXR6LCAyMDA4IE9jdCAxMykKKyAgICBBbHNvIHNldCAnc2hlbGxjbWRmbGFnJyB0byBpbmNsdWRlIC9zLgorCiBPdGhlciB3YXkgdG8gc3RhcnQgTXpzY2hlbWUuIFRpbSBCcm93biwgMjAxMSBPY3QgNTogY2hhbmdlIG1haW4gY2FsbC4KIExhdGVyIHBhdGNoIGJ5IFNlcmdleSBLaG9yZXYsIDIwMTEgT2N0IDkuCiAKK1BhdGNoIHRvIG1ha2UgSW5zZXJ0Q2hhclByZSB3b3JrIGJldHRlci4gKFlhc3VoaXJvIE1hdHN1bW90bywgMjAxMSBPY3QgMjEpCisKK1BhdGNoIHRvIGZpeCBjbG9zZWQgZm9sZHMgd2l0aCAibG9hZHZpZXciLiAoWGF2aWVyIGRlIEdheWUsIDIwMTEgTm92IDI1KQorCiBQYXRjaCB0byBhZGQgZ2V0c2lkKCkuIChUeXJ1LCAyMDExIE9jdCAyKSAgRG8gd2Ugd2FudCB0aGlzPyAgVXBkYXRlIE9jdCA0LgogT3IgdXNlIGV4cGFuZCgnPHNpZD4nKT8KIApAQCAtOTQsNiArODAsMTcgQEAKIAogUGF0Y2ggdG8gaGlnaGxpZ2h0IGN1cnNvciBsaW5lIG51bWJlci4gKEhvd2FyZCBCdWNoaG9seiAobGhiKSwgMjAxMSBPY3QgMTgpCiAKK1BhdGNoIGZvciB1cnh2dCBtb3VzZSBzdXBwb3J0IGFmdGVyIHNoZWxsIGNvbW1hbmQuIChJc3N1ZSAzMSkKKworNyAgIFNldHRpbmcgYW4gb3B0aW9uIGFsd2F5cyBzZXRzICJ3X3NldF9jdXJzd2FudCIsIHdoaWxlIHRoaXMgaXMgb25seQorICAgIHJlcXVpcmVkIGZvciBhIGZldyBvcHRpb25zLiAgT25seSBkbyBpdCBmb3IgdGhvc2Ugb3B0aW9ucyB0byBhdm9pZCB0aGUKKyAgICBzaWRlIGVmZmVjdC4KK1BhdGNoIGJ5IEthbmEgTmF0c3VubywgMjAxMSBOb3YgMTIuCisKK1BhdGNoIGZvciBvcHRpb24gaW4gJ2Npbm8nIHRvIHNwZWNpZnkgbW9yZSBpbmRlbnQgZm9yIGNvbnRpbnVlZCBjb25kaXRpb25zLgorKExlY2ggTG9yZW5zLCAyMDExIE5vdiAyNykKK0lzbid0IHRoaXMgYWxyZWFkeSBwb3NzaWJsZT8KKwogRG9jcyBmaXggZm9yIHY6cmVnaXN0ZXIuIChJbmdvIEthcmthdCwgMjAxMSBTZXAgMjYsIDI3KQogdjpyZWdpc3RlciBkb2Vzbid0IHdvcmsgZXhhY3RseSBhcyBleHBlY3RlZC4gKERhdmlkIEZpc2hidXJuLCAyMDExIFNlcCAyMCkKIApAQCAtMTA3LDYgKzEwNCw5IEBACiAKIFBhdGNoIHRvIGFkZCAib25zZWxlY3RlZCIgY2FsbGJhY2sgZm9yIGNvbXBsZXRpb24uIChUYXJvIE11cmFva2EsIDIwMTEgU2VwIDI0KQogCisiOnRhYiBkcm9wIGJ1ZmZlci5jIiBhbHdheXMgb3BlbnMgYSBuZXcgdGFiLCBhbHNvIGlmIGJ1ZmZlci5jIGlzIGFscmVhZHkgaW4gYW4KK29wZW4gd2luZG93LiAoSGVyYiBTaXR6LCAyMDExIE5vdiAxNykKKwogUHJvYmxlbSB3aXRoIHdpbmZpeGhlaWdodCBhbmQgcmVzaXppbmcuIChZdWtpaGlybyBOYWthZGFpcmEsIDIwMTEgU2VwIDE3KQogUGF0Y2ggU2VwIDE4LgogCkBAIC0xMTgsMTIgKzExOCwyMyBAQAogUGF0Y2ggdG8gc29ydCBmdW5jdGlvbnMgc3RhcnRpbmcgd2l0aCAnPCcgYWZ0ZXIgb3RoZXJzLiAgT21pdCBkaWN0IGZ1bmN0aW9ucywKIHRoZXkgY2FuJ3QgYmUgY2FsbGVkLiAoWWFzdWhpcm8gTWF0c3Vtb3RvLCAyMDExIE9jdCAxMSkKIAorUGF0Y2ggdG8gaW1wcm92ZSAiaXQiIGFuZCAiYXQiIHRleHQgb2JqZWN0IG1hdGNoaW5nLiAoQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDExCitOb3YgMjApCisKK2BbIG1vdmVzIHRvIGNoYXJhY3RlciBhZnRlciBpbnNlcnQsIGluc3RlYWQgb2YgdGhlIGxhc3QgaW5zZXJ0ZWQgY2hhcmFjdGVyLgorKFl1a2loaXJvIE5ha2FkYWlyYSwgMjAxMSBEZWMgOSkKKworUGx1Z2luIGZvciBNb2RlbGVhc3kuIChNYXNzaW1pbGlhbm8gVHJpcG9saSwgMjAxMSBOb3YgMjkpCisKIFVwZGF0ZWQgc3ludGF4IGZpbGUgZm9yIHNzaF9jb25maWcsIG1haW50YWluZXIgZG9lc24ndCByZXNwb25kLgogKExlb25hcmQgRWhyZW5mcmllZCwgMjAxMSBTZXAgMjYpCiAKICJmQyIgZG9lc24ndCBwb3NpdGlvbiB0aGUgY3Vyc29yIGNvcnJlY3RseSB3aGVuIHRoZXJlIGFyZSBjb25jZWFsZWQKIGNoYXJhY3RlcnMuICBQYXRjaCBieSBDaHJpc3RpYW4gQnJhYmFuZHQsIDIwMTEgT2N0IDExKQogCitQYXRjaCBmb3IgJ3RyYW5zcGFyZW5jeScgb3B0aW9uLiAoU2VyZ2l1IERvdGVuY28sIDIwMTEgU2VwIDE3KQorT25seSBmb3IgTVMtV2luZG93cy4gIE5vIGRvY3VtZW50YXRpb24uICBEbyB3ZSB3YW50IHRoaXM/CisKICdjdXJzb3JsaW5lJyBpcyBkaXNwbGF5ZWQgdG9vIHNob3J0IHdoZW4gdGhlcmUgYXJlIGNvbmNlYWxlZCBjaGFyYWN0ZXJzIGFuZAogJ2xpc3QnIGlzIHNldC4gIChEZW5uaXMgUHJlaXNlcikKIFBhdGNoIDcuMy4xMTYgd2FzIHRoZSB3cm9uZyBzb2x1dGlvbi4KQEAgLTEzNyw4ICsxNDgsMTcgQEAKIG9ubHkgb25lIG9mIHRoZSB0d28gZW5kcyBnZXRzIHRoZSBjY2hhciBkaXNwbGF5ZWQuIChCcmV0dCBTdGFobG1hbiwgMjAxMCBBdWcKIDIxLCBCZW4gRnJpdHosIDIwMTAgU2VwIDE0KQogCitXaW4zMjogUGF0Y2ggdG8gdXNlIHRhc2sgZGlhbG9ncyB3aGVuIGF2YWlsYWJsZS4gKFNlcmdpdSBEb3RlbmNvLCAyMDExIFNlcCAxNykKK05ldyBmZWF0dXJlLCByZXF1aXJlcyB0ZXN0aW5nLiAgTWFkZSBzb21lIHJlbWFya3MuCisKK1dpbjMyOiBQYXRjaCBmb3IgYWxwaGEtYmxlbmRlZCBpY29ucyBhbmQgdG9vbGJhciBoZWlnaHQuIChTZXJnaXUgRG90ZW5jbywgMjAxMQorU2VwIDE3KSAgQXNrZWQgZm9yIGZlZWRiYWNrIGZyb20gb3RoZXJzLgorCiBOZWVkIHRvIGVzY2FwZSAkSE9NRSBvbiBXaW5kb3dzPyAgKFp5WCwgMjAxMSBKdWwgMjEpCiAKKyIyIiBpbiAnZm9ybWF0b3Bpb25zJyBub3Qgd29ya2luZyBpbiBjb21tZW50cy4gKENocmlzdGlhbiBDb3JuZWxpdXNzZW4sIDIwMTEKK09jdCAyNikKKwogQnVnIGluIHJlcGVhdGluZyBWaXN1YWwgInUiLiAoTGF3cmVuY2UgS2VzdGVsb290LCAyMDEwIERlYyAyMCkKIAogV2l0aCAidW5hbWVkcGx1cyIgaW4gJ2NsaXBib2FyZCcgcGFzdGluZyBpbiBWaXN1YWwgbW9kZSBjYXVzZXMgZXJyb3IgZm9yIGVtcHR5CkBAIC0xNzAsNiArMTkwLDkgQEAKIFdoZW4gdXNpbmcgYSBWaW0gc2VydmVyLCBhICMgaW4gdGhlIHBhdGggY2F1c2VzIGFuIGVycm9yIG1lc3NhZ2UuCiAoSmVmZiBMYW56YXJvdHRhLCAyMDExIEZlYiAxNykKIAorU2V0dGluZyAkSE9NRSBvbiBNUy1XaW5kb3dzIGlzIG5vdCB2ZXJ5IHdlbGwgZG9jdW1lbnRlZC4gIFN1Z2dlc3Rpb24gYnkgQmVuCitGcml0eiAoMjAxMSBPY3QgMjcpLgorCiBCdWc6IEU2ODUgZXJyb3IgZm9yIGZ1bmNfdW5yZWYoKS4gKFp5WCwgMjAxMCBBdWcgNSkKIAogQnVnOiBXaW5kb3dzIDcgNjQgYml0IHN5c3RlbSBmcmVlemVzICB3aGVuICdjbGlwYm9hcmQnIHNldCB0byAidW5uYW1lZCIgYW5kCkBAIC0xMDg1LDEyICsxMTA4LDYgQEAKIAogV2luMzI6IHBhdGNoIGZvciBmdWxsc2NyZWVuIG1vZGUuIChMaXVzaGFvbGluLCAyMDA4IEFwcmlsIDE3KQogCi1XaW4zMjogV2hlbiAnc2hlbGwnIGlzIGNtZC5leGUgdGhpcyBjb21tYW5kIGZhaWxzOgotCWVjaG8gc3lzdGVtKCciYzovcGF0aC9lY2hvLmV4ZSIgImZvbyBiYXIiJykKLVNob3VsZCB3ZSBzZXQgdGhlIGRlZmF1bHQgZm9yICdzaGVsbHhxdW90ZScgdG8gYSBkb3VibGUgcXVvdGUsIHdoZW4gJ3NoZWxsJwotY29udGFpbnMgImNtZCIgaW4gdGhlIHRhaWw/ICAoQmVuamFtaW4gRnJpdHosIDIwMDggT2N0IDEzKQotQWxzbyBzZXQgJ3NoZWxsY21kZmxhZycgdG8gaW5jbHVkZSAvcy4KLQogV2luMzI6IFdoZW4gdGhlcmUgaXMgNCBHYnl0ZSBvZiBtZW1vcnkgbWNoX2F2YWlsX21lbSgpIGRvZXNuJ3Qgd29yayBwcm9wZXJseS4KIFVuZmluaXNoZWQgcGF0Y2ggYnkgSmVsbGUgR2VlcnRzLCAyMDA4IEF1ZyAyNC4KIExldCBtY2hfYXZhaWxfbWVtKCkgcmV0dXJuIEtieXRlIGluc3RlYWQ/CkBAIC0xNDc4LDYgKzE0OTUsOCBAQAogQXQgbmV4dCByZWxlYXNlOgogLSAgIFJlbmFtZSBzcmMvTWFrZWZpbGUgYW5kIGNyZWF0ZSBhIG5ldyBvbmUgbGlrZSB0b3BsZXZlbCBNYWtlZmlsZSB0aGF0CiAgICAgY3JlYXRlcyBhdXRvL2NvbmZpZy5tayB3aGVuIGl0J3Mgbm90IHRoZXJlPyAoQmVuIFNjaG1pZHQsIDIwMTEgRmViIDExKQorLSAgIEltcHJvdmUgcGx1Z2luIGhhbmRsaW5nOiBBdXRvbWF0aWMgdXBkYXRlcywgaGFuZGxlIGRlcGVuZGVuY2llcz8KKyAgICBFLmcuIFZ1bmRsZTogaHR0cHM6Ly9naXRodWIuY29tL2dtYXJpay92dW5kbGUKIAogCiBNb3JlIHBhdGNoZXM6CkBAIC0xNTQ0LDYgKzE1NjMsNyBAQAogICAgIFNtaWxhdWVyLCAyMDA0IFNlcCAxMywgZml4IE9jdCAzMSwgdXBkYXRlIDIwMDcgTWF5IDMwKQogICAgIFZlcnNpb24gZm9yIGxhdGVzdCBNYWNWaW06IFRvYmlhIENvbmZvcnRvLCAyMDA5IE5vdiAyMwogICAgIE1vcmUgcmVjZW50IHZlcnNpb246IGh0dHBzOi8vcmV0cmFjaWxlLm5ldC93aWtpL1ZpbUJyZWFrSW5kZW50CisgICAgUG9zdGVkIHRvIHZpbS1kZXYgYnkgVGF5bG9yIEhlZGJlcmcsIDIwMTEgTm92IDI1CiA4ICAgQWRkIGEgZmV3IG1vcmUgY29tbWFuZCBuYW1lcyB0byB0aGUgbWVudXMuICBQYXRjaCBmcm9tIEppcmkgQnJlemluYQogICAgICgyOCBmZWIgMjAwMikuICBXaWxsIG1lc3MgdGhlIHRyYW5zbGF0aW9ucy4uLgogNyAgIEFUVEVOVElPTiBkaWFsb2cgY2hvaWNlcyBhcmUgbW9yZSBsb2dpY2FsIHdoZW4gIkRlbGV0ZSBpdCcgYXBwZWFycwpAQCAtNDQzMyw5ICs0NDUzLDYgQEAKIE9wdGlvbnM6CiA3ICAgIjp3aXRoIG9wdGlvbj12YWx1ZSB8IGNvbW1hbmQiOiB0ZW1wb3JhcmlseSBzZXQgYW4gb3B0aW9uIHZhbHVlIGFuZAogICAgIHJlc3RvcmUgaXQgYWZ0ZXIgdGhlIGNvbW1hbmQgaGFzIGV4ZWN1dGVkLgotNyAgIFNldHRpbmcgYW4gb3B0aW9uIGFsd2F5cyBzZXRzICJ3X3NldF9jdXJzd2FudCIsIHdoaWxlIHRoaXMgaXMgb25seQotICAgIHJlcXVpcmVkIGZvciBhIGZldyBvcHRpb25zLiAgT25seSBkbyBpdCBmb3IgdGhvc2Ugb3B0aW9ucyB0byBhdm9pZCB0aGUKLSAgICBzaWRlIGVmZmVjdC4KIDggICBNYWtlICJvbGQiIG51bWJlciBvcHRpb25zIHRoYXQgcmVhbGx5IGdpdmUgYSBudW1iZXIgb2YgZWZmZWN0cyBpbnRvIHN0cmluZwogICAgIG9wdGlvbnMgdGhhdCBhcmUgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdC4gIFRoZSBvbGQgbnVtYmVyIHZhbHVlcyBzaG91bGQKICAgICBhbHNvIGJlIHN1cHBvcnRlZC4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZhcmlvdXMudHh0IGIvcnVudGltZS9kb2MvdmFyaW91cy50eHQKaW5kZXggMDdjODBjMC4uOWZjODkwMiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmFyaW91cy50eHQKKysrIGIvcnVudGltZS9kb2MvdmFyaW91cy50eHQKQEAgLTEsNCArMSw0IEBACi0qdmFyaW91cy50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIE9jdCAxc3QKKyp2YXJpb3VzLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgTm92IDI4CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zNTAsMTIgKzM1MCwxMyBAQAogQiAgKittb3VzZV9kZWMqCQlVbml4IG9ubHk6IERlYyB0ZXJtaW5hbCBtb3VzZSBoYW5kbGluZyB8ZGVjLW1vdXNlfAogTiAgKittb3VzZV9ncG0qCQlVbml4IG9ubHk6IExpbnV4IGNvbnNvbGUgbW91c2UgaGFuZGxpbmcgfGdwbS1tb3VzZXwKIEIgICorbW91c2VfbmV0dGVybSoJVW5peCBvbmx5OiBuZXR0ZXJtIG1vdXNlIGhhbmRsaW5nIHxuZXR0ZXJtLW1vdXNlfAotTiAgKittb3VzZV9wdGVybSoJUU5YIG9ubHk6IHB0ZXJtIG1vdXNlIGhhbmRsaW5nIHxxbngtdGVybWluYWx8CitOICAqK21vdXNlX3B0ZXJtKgkJUU5YIG9ubHk6IHB0ZXJtIG1vdXNlIGhhbmRsaW5nIHxxbngtdGVybWluYWx8CiBOICAqK21vdXNlX3N5c21vdXNlKglVbml4IG9ubHk6ICpCU0QgY29uc29sZSBtb3VzZSBoYW5kbGluZyB8c3lzbW91c2V8Ci1OICAqK21vdXNlX3h0ZXJtKglVbml4IG9ubHk6IHh0ZXJtIG1vdXNlIGhhbmRsaW5nIHx4dGVybS1tb3VzZXwKLUIgICorbXVsdGlfYnl0ZSoJMTYgYW5kIDMyIGJpdCBjaGFyYWN0ZXJzIHxtdWx0aWJ5dGV8CitOICAqK21vdXNlX3VyeHZ0KgkJVW5peCBvbmx5OiB1cnh2dCBtb3VzZSBoYW5kbGluZyB8dXJ4dnQtbW91c2V8CitOICAqK21vdXNlX3h0ZXJtKgkJVW5peCBvbmx5OiB4dGVybSBtb3VzZSBoYW5kbGluZyB8eHRlcm0tbW91c2V8CitCICAqK211bHRpX2J5dGUqCQkxNiBhbmQgMzIgYml0IGNoYXJhY3RlcnMgfG11bHRpYnl0ZXwKICAgICorbXVsdGlfYnl0ZV9pbWUqCVdpbjMyIGlucHV0IG1ldGhvZCBmb3IgbXVsdGlieXRlIGNoYXJzIHxtdWx0aWJ5dGUtaW1lfAotTiAgKittdWx0aV9sYW5nKglub24tRW5nbGlzaCBsYW5ndWFnZSBzdXBwb3J0IHxtdWx0aS1sYW5nfAorTiAgKittdWx0aV9sYW5nKgkJbm9uLUVuZ2xpc2ggbGFuZ3VhZ2Ugc3VwcG9ydCB8bXVsdGktbGFuZ3wKIG0gICorbXpzY2hlbWUqCQlNenNjaGVtZSBpbnRlcmZhY2UgfG16c2NoZW1lfAogbSAgKittenNjaGVtZS9keW4qCU16c2NoZW1lIGludGVyZmFjZSB8bXpzY2hlbWUtZHluYW1pY3wgfC9keW58CiBtICAqK25ldGJlYW5zX2ludGcqCXxuZXRiZWFuc3wKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZmlsZXR5cGUudmltIGIvcnVudGltZS9maWxldHlwZS52aW0KaW5kZXggOTgzODEwYy4uOTBjZTg2ZCAxMDA2NDQKLS0tIGEvcnVudGltZS9maWxldHlwZS52aW0KKysrIGIvcnVudGltZS9maWxldHlwZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzdXBwb3J0IGZpbGUgdG8gZGV0ZWN0IGZpbGUgdHlwZXMKICIKICIgTWFpbnRhaW5lcjoJQnJhbSBNb29sZW5hYXIgPEJyYW1AdmltLm9yZz4KLSIgTGFzdCBDaGFuZ2U6CTIwMTEgT2N0IDA4CisiIExhc3QgQ2hhbmdlOgkyMDExIE9jdCAyNgogCiAiIExpc3RlbiB2ZXJ5IGNhcmVmdWxseSwgSSB3aWxsIHNheSB0aGlzIG9ubHkgb25jZQogaWYgZXhpc3RzKCJkaWRfbG9hZF9maWxldHlwZXMiKQpAQCAtNTY2LDcgKzU2NiwxMCBAQAogCiBmdW5jISBzOkR0cmFjZUNoZWNrKCkKICAgbGV0IGxpbmVzID0gZ2V0bGluZSgxLCBtaW4oW2xpbmUoIiQiKSwgMTAwXSkpCi0gIGlmIG1hdGNoKGxpbmVzLCAnXiMhXFNcK2R0cmFjZVx8I3ByYWdtYVxzXCtEXHNcK29wdGlvblx8OlxTXHstfTpcU1x7LX06JykgPiAtMQorICBpZiBtYXRjaChsaW5lcywgJ15tb2R1bGVcPlx8XmltcG9ydFw+JykgPiAtMQorICAgICIgRCBmaWxlcyBvZnRlbiBzdGFydCB3aXRoIGEgbW9kdWxlIGFuZC9vciBpbXBvcnQgc3RhdGVtZW50LgorICAgIHNldGYgZAorICBlbHNlaWYgbWF0Y2gobGluZXMsICdeIyFcU1wrZHRyYWNlXHwjcHJhZ21hXHNcK0Rcc1wrb3B0aW9uXHw6XFNcey19OlxTXHstfTonKSA+IC0xCiAgICAgc2V0ZiBkdHJhY2UKICAgZWxzZQogICAgIHNldGYgZApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9mYWxjb24udmltIGIvcnVudGltZS9mdHBsdWdpbi9mYWxjb24udmltCmluZGV4IDQ1ZmQwYTQuLjc3NmRiODAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZmFsY29uLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2ZhbGNvbi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgIEZhbGNvbgogIiBBdXRob3I6ICAgICAgIFN0ZXZlbiBPbGl2ZXIgPG9saXZlci5zdGV2ZW5AZ21haWwuY29tPgotIiBDb3B5cmlnaHQ6ICAgIENvcHlyaWdodCAoYykgMjAwOSwgMjAxMCBTdGV2ZW4gT2xpdmVyCisiIENvcHlyaWdodDogICAgQ29weXJpZ2h0IChjKSAyMDA5LCAyMDEwLCAyMDExIFN0ZXZlbiBPbGl2ZXIKICIgTGljZW5zZTogICAgICBZb3UgbWF5IHJlZGlzdHJpYnV0ZSB0aGlzIHVuZGVyIHRoZSBzYW1lIHRlcm1zIGFzIFZpbSBpdHNlbGYKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICIgR2V0TGF0ZXN0VmltU2NyaXB0czogMjc2MiAxIDpBdXRvSW5zdGFsbDogZmFsY29uLnZpbQpAQCAtMTYsNyArMTYsNyBAQAogc2V0IGNwbyZ2aW0KIAogc2V0bG9jYWwgdGFic3RvcD00IHNoaWZ0d2lkdGg9NCBleHBhbmR0YWIgZmlsZWVuY29kaW5nPXV0Zi04Ci1zZXRsb2NhbCBzdWZmaXhlc2FkZD0uZmFsCitzZXRsb2NhbCBzdWZmaXhlc2FkZD0uZmFsLC5mdGQKIAogIiBNYXRjaGl0IHN1cHBvcnQKIGlmIGV4aXN0cygibG9hZGVkX21hdGNoaXQiKSAmJiAhZXhpc3RzKCJiOm1hdGNoX3dvcmRzIikKQEAgLTM2LDggKzM2LDExIEBACiAKICIgV2luZG93cyBhbGxvd3MgeW91IHRvIGZpbHRlciB0aGUgb3BlbiBmaWxlIGRpYWxvZwogaWYgaGFzKCJndWlfd2luMzIiKSAmJiAhZXhpc3RzKCJiOmJyb3dzZWZpbHRlciIpCi0gIGxldCBiOmJyb3dzZWZpbHRlciA9ICJGYWxjb24gU291cmNlIEZpbGVzICgqLmZhbClcdCouZmFsXG4iIC4KKyAgbGV0IGI6YnJvd3NlZmlsdGVyID0gIkZhbGNvbiBTb3VyY2UgRmlsZXMgKCouZmFsICouZnRkKVx0Ki5mYWw7Ki5mdGRcbiIgLgogICAgICAgICAgICAgICAgICAgICAgXCAiQWxsIEZpbGVzICgqLiopXHQqLipcbiIKIGVuZGlmCiAKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQorCiAiIHZpbTogc2V0IHN3PTQgc3RzPTQgZXQgdHc9ODAgOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9sdWEudmltIGIvcnVudGltZS9mdHBsdWdpbi9sdWEudmltCmluZGV4IDI5NzgzM2YuLmZjNTgxZGIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbHVhLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2x1YS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZS4KICIgTGFuZ3VhZ2U6CUx1YSA0LjArCiAiIE1haW50YWluZXI6CU1heCBJc2NoZW5rbyA8bWZpQHVrci5uZXQ+Ci0iIExhc3QgQ2hhbmdlOgkyMDA4IE1hciAyNQorIiBMYXN0IENoYW5nZToJMjAxMSBEZWMgMTAgYnkgVGhpbG8gU2l4CiAKICIgT25seSBkbyB0aGlzIHdoZW4gbm90IGRvbmUgeWV0IGZvciB0aGlzIGJ1ZmZlcgogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCkBAIC0xMSw2ICsxMSw5IEBACiAiIERvbid0IGxvYWQgYW5vdGhlciBwbHVnaW4gZm9yIHRoaXMgYnVmZmVyCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBTZXQgJ2Zvcm1hdG9wdGlvbnMnIHRvIGJyZWFrIGNvbW1lbnQgbGluZXMgYnV0IG5vdCBvdGhlciBsaW5lcywgYW5kIGluc2VydAogIiB0aGUgY29tbWVudCBsZWFkZXIgd2hlbiBoaXR0aW5nIDxDUj4gb3IgdXNpbmcgIm8iLgogc2V0bG9jYWwgZm8tPXQgZm8rPWNyb3FsCkBAIC0yMiw4ICsyNSw2IEBACiAKICIgVGhlIGZvbGxvd2luZyBsaW5lcyBlbmFibGUgdGhlIG1hY3Jvcy9tYXRjaGl0LnZpbSBwbHVnaW4gZm9yCiAiIGV4dGVuZGVkIG1hdGNoaW5nIHdpdGggdGhlICUga2V5LgotCi1zZXQgY3BvLT1DCiBpZiBleGlzdHMoImxvYWRlZF9tYXRjaGl0IikKIAogICBsZXQgYjptYXRjaF9pZ25vcmVjYXNlID0gMApAQCAtMzQsMyArMzUsNiBAQAogICAgIFwgJ1w8cmVwZWF0XD46XDx1bnRpbFw+JwogCiBlbmRpZiAiIGV4aXN0cygibG9hZGVkX21hdGNoaXQiKQorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbWFya2Rvd24udmltIGIvcnVudGltZS9mdHBsdWdpbi9tYXJrZG93bi52aW0KaW5kZXggOTQ2MjA4Mi4uNTM0MzBkMyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tYXJrZG93bi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tYXJrZG93bi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4KICIgTGFuZ3VhZ2U6CQlNYXJrZG93bgogIiBNYWludGFpbmVyOgkJVGltIFBvcGUgPHZpbU5PU1BBTUB0cG9wZS5vcmc+Ci0iIExhc3QgQ2hhbmdlOgkJMjAxMCBNYXkgMjEKKyIgTGFzdCBDaGFuZ2U6CQkyMDExIERlYyAxNAogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCkBAIC0xNCw2ICsxNCwxMCBAQAogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucys9dGNxbG4KIHNldGxvY2FsIGZvcm1hdGxpc3RwYXQ9XlxccypcXGRcXCtcXC5cXHNcXCtcXFx8XlstKitdXFxzXFwrCiAKLWxldCBiOnVuZG9fZnRwbHVnaW4gLj0gInxzZXRsIGNtczwgY29tPCBmbzwiCitpZiBleGlzdHMoJ2I6dW5kb19mdHBsdWdpbicpCisgIGxldCBiOnVuZG9fZnRwbHVnaW4gLj0gInxzZXRsIGNtczwgY29tPCBmbzwgZmxwPCIKK2Vsc2UKKyAgbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNtczwgY29tPCBmbzwgZmxwPCIKK2VuZGlmCiAKICIgdmltOnNldCBzdz0yOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9vY2FtbC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL29jYW1sLnZpbQppbmRleCBhNTkxNDExLi5kZTNlNDFiIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL29jYW1sLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL29jYW1sLnZpbQpAQCAtNyw3ICs3LDcgQEAKICIgVVJMOiAgICAgICAgIGh0dHA6Ly93d3cub2NhbWwuaW5mby92aW0vZnRwbHVnaW4vb2NhbWwudmltCiAiIExhc3QgQ2hhbmdlOiAyMDEwIEp1bCAxMCAtIEJ1Z2ZpeCwgdGhhbmtzIHRvIFBhdCBSb25kb24KICIgICAgICAgICAgICAgIDIwMDggSnVsIDE3IC0gQnVnZml4IHJlbGF0ZWQgdG8gZm5hbWVlc2NhcGUgKFZBKQotIiAgICAgICAgICAgICAgMjAwNyBTZXAgMDkgLSBBZGRlZCAuYW5ub3Qgc3VwcG9ydCBmb3Igb2NhbWxidWlsZCwgcHl0aG9uIG5vdCAKKyIgICAgICAgICAgICAgIDIwMDcgU2VwIDA5IC0gQWRkZWQgLmFubm90IHN1cHBvcnQgZm9yIG9jYW1sYnVpbGQsIHB5dGhvbiBub3QKICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmVlZGVkIGFueW1vcmUgKFZBKQogIiAgICAgICAgICAgICAgMjAwNiBNYXkgMDEgLSBBZGRlZCAuYW5ub3Qgc3VwcG9ydCBmb3IgZmlsZS53aGF0ZXZlcmV4dCAoU1opCiAiCSAgICAgICAgICAgICAyMDA2IEFwciAxMSAtIEZpeGVkIGFuIGluaXRpYWxpemF0aW9uIGJ1ZzsgZml4ZWQgQVNTIGFiYnJldiAoTU0pCkBAIC0zMSw3ICszMSw3IEBACiAKICIgRXJyb3IgaGFuZGxpbmcgLS0gaGVscHMgbW92aW5nIHdoZXJlIHRoZSBjb21waWxlciB3YW50cyB5b3UgdG8gZ28KIGxldCBzOmNwb3NldD0mY3BvcHRpb25zCi1zZXQgY3BvLT1DCitzZXQgY3BvJnZpbQogc2V0bG9jYWwgZWZtPQogICAgICAgXCVFRmlsZVwgXCIlZlwiXFwsXCBsaW5lXCAlbFxcLFwgY2hhcmFjdGVyc1wgJWMtJSpcXGQ6LAogICAgICAgXCVFRmlsZVwgXCIlZlwiXFwsXCBsaW5lXCAlbFxcLFwgY2hhcmFjdGVyXCAlYzolbSwKQEAgLTIxMSw3ICsyMTEsNyBAQAogIiBjdXJzb3IgcG9zaXRpb24uCiAiCiAiIFR5cGluZyAnPExvY2FsTGVhZGVyPnQnIChMb2NhbExlYWRlciBkZWZhdWx0cyB0byAnXCcsIHNlZSA6aCBMb2NhbExlYWRlcikKLSIgd2lsbCBjYXVzZSAiIE9jYW1sX3ByaW50X3R5cGUgZnVuY3Rpb24gdG8gYmUgaW52b2tlZCB3aXRoIHRoZSByaWdodCAKKyIgd2lsbCBjYXVzZSAiIE9jYW1sX3ByaW50X3R5cGUgZnVuY3Rpb24gdG8gYmUgaW52b2tlZCB3aXRoIHRoZSByaWdodAogIiBhcmd1bWVudCBkZXBlbmRpbmcgb24gdGhlIGN1cnJlbnQgbW9kZSAodmlzdWFsIG9yIG5vdCkuCiAiID4+CiAiCkBAIC0yMjEsOSArMjIxLDkgQEAKICIgICAtIG5vIG5lZWQgZm9yIHB5dGhvbiBzdXBwb3J0CiAiICAgICArIHBsdXMgOiBtb3JlIHBvcnRhYmxlCiAiICAgICArIG1pbnVzOiBubyBtb3JlIGxhenkgcGFyc2luZywgaXQgbG9va3MgdmVyeSBmYXN0IGhvd2V2ZXIKLSIgICAgIAorIgogIiAgIC0gb2NhbWxidWlsZCBzdXBwb3J0LCBpZS4KLSIgICAgICsgdGhlIHBsdWdpbiBmaW5kcyB0aGUgX2J1aWxkIGRpcmVjdG9yeSBhbmQgbG9va3MgZm9yIHRoZSAKKyIgICAgICsgdGhlIHBsdWdpbiBmaW5kcyB0aGUgX2J1aWxkIGRpcmVjdG9yeSBhbmQgbG9va3MgZm9yIHRoZQogIiAgICAgICBjb3JyZXNwb25kaW5nIGZpbGUgaW5zaWRlOwogIiAgICAgKyBpZiB0aGUgdXNlciBkZWNpZGVzIHRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgX2J1aWxkIGRpcmVjdG9yeSB0aGFua3MKICIgICAgICAgdG8gdGhlICctYnVpbGQtZGlyJyBvcHRpb24gb2Ygb2NhbWxidWlsZCwgdGhlIHBsdWdpbiB3aWxsIG1hbmFnZSBpbgpAQCAtMjMyLDcgKzIzMiw3IEBACiAiICAgICArIGlmIG9jYW1sYnVpbGQgaXMgbm90IHVzZWQsIHRoZSB1c3VhbCBiZWhhdmlvdXIgaG9sZHM7IGllLiB0aGUgLmFubm90CiAiICAgICAgIGZpbGUgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgc291cmNlIGZpbGU7CiAiICAgICArIGZvciB2aW0gcGx1Z2luIHByb2dyYW1tZXJzOgotIiAgICAgICB0aGUgdmFyaWFibGUgJ2I6X2J1aWxkX2RpcicgY29udGFpbnMgdGhlIGluZmVycmVkIHBhdGggdG8gdGhlIGJ1aWxkIAorIiAgICAgICB0aGUgdmFyaWFibGUgJ2I6X2J1aWxkX2RpcicgY29udGFpbnMgdGhlIGluZmVycmVkIHBhdGggdG8gdGhlIGJ1aWxkCiAiICAgICAgIGRpcmVjdG9yeSwgZXZlbiBpZiB0aGlzIG9uZSBpcyBub3QgbmFtZWQgJ19idWlsZCcuCiAiCiAiIEJvbnVzIDoKQEAgLTI4NywxMCArMjg3LDEwIEBACiAgIGVuZGZ1bgogCiAgICAgIiBBZnRlciBjYWxsOgotICAgICIgLSBiOmFubm90X2ZpbGVfcGF0aCA6IAorICAgICIgLSBiOmFubm90X2ZpbGVfcGF0aCA6CiAgICAgIiAgICAgICAgICAgICAgICAgICAgICAgcGF0aCB0byB0aGUgLmFubm90IGZpbGUgY29ycmVzcG9uZGluZyB0byB0aGUKICAgICAiICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgZmlsZSAoZGVhbGluZyB3aXRoIG9jYW1sYnVpbGQgc3R1ZmYpCi0gICAgIiAtIGI6X2J1aWxkX3BhdGg6IAorICAgICIgLSBiOl9idWlsZF9wYXRoOgogICAgICIgICAgICAgICAgICAgICAgICAgICAgIHBhdGggdG8gdGhlIGJ1aWxkIGRpcmVjdG9yeSBldmVuIGlmIHRoaXMgb25lIGlzCiAgICAgIiAgICAgICAgICAgICAgICAgICAgICAgbm90IG5hbWVkICdfYnVpbGQnCiAgIGZ1bmN0aW9uISBzOkxvY2F0ZV9hbm5vdGF0aW9uKCkKQEAgLTMyMCw3ICszMjAsNyBAQAogICAgICAgICAgICAgbGV0IGI6YW5ub3RfZmlsZV9wYXRoID0gZ2V0Y3dkKCkuJy8nLmI6YW5ub3RfZmlsZV9wYXRoCiAgICAgICAgICAgZW5kaWYKICAgICAgICAgZWxzZQotICAgICAgICAgICIgM3JkIGNhc2UgOiB0aGUgX2J1aWxkIGRpcmVjdG9yeSBpcyBpbiBhIGRpcmVjdG9yeSBoaWdoZXIgaW4gdGhlIGZpbGUgaGllcmFyY2h5IAorICAgICAgICAgICIgM3JkIGNhc2UgOiB0aGUgX2J1aWxkIGRpcmVjdG9yeSBpcyBpbiBhIGRpcmVjdG9yeSBoaWdoZXIgaW4gdGhlIGZpbGUgaGllcmFyY2h5CiAgICAgICAgICAgIiAgICAgICAgICAgIChpdCBjYW4ndCBiZSBkZWVwZXIgYnkgb2NhbWxidWlsZCByZXF1aXJlbWVudHMpCiAgICAgICAgICAgIiAgICAgIC4uCiAgICAgICAgICAgIiAgICAgLyAgXApAQCAtMzcyLDcgKzM3Miw3IEBACiAgIGxldCBiOmFubm90YXRpb25fZmlsZV9sb2NhdGVkID0gMAogCiAiIDIuIEZpbmRpbmcgdGhlIHR5cGUgaW5mb3JtYXRpb24gaW4gdGhlIGFubm90YXRpb24gZmlsZQotICAKKwogICAiIGEuIFRoZSBhbm5vdGF0aW9uIGZpbGUgaXMgb3BlbmVkIGluIHZpbSBhcyBhIGJ1ZmZlciB0aGF0CiAgICIgc2hvdWxkIGJlIChhbG1vc3QpIGludmlzaWJsZSB0byB0aGUgdXNlci4KIApAQCAtNDAxLDcgKzQwMSw3IEBACiAKICAgICAgICIgQWZ0ZXIgY2FsbDoKICAgICAgICIgICBUaGUgYW5ub3QgZmlsZSBpcyBsb2FkZWQgYW5kIGFzc2lnbmVkIHRvIGEgYnVmZmVyLgotICAgICAgIiAgIFRoaXMgYWxzbyBoYW5kbGVzIHRoZSBtb2RpZmljYXRpb24gZGF0ZSBvZiB0aGUgLmFubm90IGZpbGUsIGVnLiBhZnRlciBhIAorICAgICAgIiAgIFRoaXMgYWxzbyBoYW5kbGVzIHRoZSBtb2RpZmljYXRpb24gZGF0ZSBvZiB0aGUgLmFubm90IGZpbGUsIGVnLiBhZnRlciBhCiAgICAgICAiICAgY29tcGlsYXRpb24uCiAgICAgZnVuY3Rpb24hIHM6TG9hZF9hbm5vdGF0aW9uKCkKICAgICAgIGlmIGJ1ZmxvYWRlZChiOmFubm90X2ZpbGVfcGF0aCkgJiYgYjphbm5vdF9maWxlX2xhc3RfbW9kIDwgZ2V0ZnRpbWUoYjphbm5vdF9maWxlX3BhdGgpCkBAIC00MTksOSArNDE5LDkgQEAKICAgICAgICAgbGV0IGI6YW5ub3RfZmlsZV9sYXN0X21vZCA9IGdldGZ0aW1lKGI6YW5ub3RfZmlsZV9wYXRoKQogICAgICAgZW5kaWYKICAgICBlbmRmdW4KLSAgCisKICAgImIuICdzZWFyY2gnIGFuZCAnbWF0Y2gnIHdvcmsgdG8gZmluZCB0aGUgdHlwZSBpbmZvcm1hdGlvbgotICAgCisKICAgICAgICJJbjogIC0gbGluMSxjb2wxOiBwb3N0aW9uIG9mIGV4cHJlc3Npb24gZmlyc3QgY2hhcgogICAgICAgIiAgICAgLSBsaW4yLGNvbDI6IHBvc3Rpb24gb2YgZXhwcmVzc2lvbiBsYXN0IGNoYXIKICAgICAgICJPdXQ6IC0gdGhlIHBhdHRlcm4gdG8gYmUgbG9va2VkIGZvciB0byBmaW5kIHRoZSBibG9jawpAQCAtNDYyLDcgKzQ2Miw3IEBACiAgICAgICBsZXQgZW5kID0gbGluZSgiLiIpIC0gMQogICAgICAgcmV0dXJuIGpvaW4oZ2V0bGluZShiZWdpbixlbmQpLCJcbiIpCiAgICAgZW5kZnVuCi0gICAgICAgIAorCiAgICAgICAiSW46ICB0aGUgcGF0dGVybiB0byBsb29rIGZvciBpbiBvcmRlciB0byBtYXRjaCB0aGUgYmxvY2sKICAgICAgICJPdXQ6IHRoZSB0eXBlIGluZm9ybWF0aW9uIChjYWxscyBzOk1hdGNoX2RhdGEpCiAgICAgICAiIFNob3VsZCBiZSBjYWxsZWQgaW4gdGhlIGFubm90YXRpb24gYnVmZmVyCkBAIC00NzksMTAgKzQ3OSwxMCBAQAogICAgICAgZW5kdHJ5CiAgICAgICByZXR1cm4gYW5ub3RhdGlvbgogICAgIGVuZGZ1bgotICAKKwogICAiYy4gbGluayB0aGlzIHN0dWZmIHdpdGggd2hhdCB0aGUgdXNlciB3YW50cwogICAiIGllLiBnZXQgdGhlIGV4cHJlc3Npb24gc2VsZWN0ZWQvdW5kZXIgdGhlIGN1cnNvcgotICAgIAorCiAgICAgbGV0IHM6b2NhbWxfd29yZF9jaGFyID0gJ1x3fFvALf9dfCcnJwogCiAgICAgICAiSW46ICB0aGUgY3VycmVudCBtb2RlIChlZy4gInZpc3VhbCIsICJub3JtYWwiLCBldGMuKQpAQCAtNTMxLDcgKzUzMSw3IEBACiAgICAgICBsZXQgW2xpbjEsbGluMixjb2wxLGNvbDJdID0gczpNYXRjaF9ib3JkZXJzKGE6bW9kZSkKICAgICAgIHJldHVybiBzOkV4dHJhY3RfdHlwZV9kYXRhKHM6QmxvY2tfcGF0dGVybihsaW4xLGxpbjIsY29sMSxjb2wyKSkKICAgICBlbmRmdW4KLSAgCisKICAgImQuIG1haW4KICAgICAgICJJbjogICAgICAgICB0aGUgY3VycmVudCBtb2RlIChlZy4gInZpc3VhbCIsICJub3JtYWwiLCBldGMuKQogICAgICAgIkFmdGVyIGNhbGw6IHRoZSB0eXBlIGluZm9ybWF0aW9uIGlzIGRpc3BsYXllZApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi92aGRsLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vdmhkbC52aW0KaW5kZXggMDhhMmRlMy4uMDI0OWI1NCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi92aGRsLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3ZoZGwudmltCkBAIC0xLDggKzEsOCBAQAogIiBWSERMIGZpbGV0eXBlIHBsdWdpbgogIiBMYW5ndWFnZTogICAgVkhETAotIiBNYWludGFpbmVyOiAgUi5TaGFua2FyIDxzaGFua2FyLnI/ZnJlZXNjYWxlLmNvbT4KKyIgTWFpbnRhaW5lcjogIFIuU2hhbmthciA8c2hhbmthci5wZWM/Z21haWwuY29tPgogIiBNb2RpZmllZCBCeTogR2VyYWxkIExhaSA8bGFpZ2VyYSt2aW0/Z21haWwuY29tPgotIiBMYXN0IENoYW5nZTogMjAwNiBGZWIgMTYKKyIgTGFzdCBDaGFuZ2U6IDIwMTEgRGVjIDExCiAKICIgT25seSBkbyB0aGlzIHdoZW4gbm90IGRvbmUgeWV0IGZvciB0aGlzIGJ1ZmZlcgogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCkBAIC0xMiw2ICsxMiw5IEBACiAiIERvbid0IGxvYWQgYW5vdGhlciBwbHVnaW4gZm9yIHRoaXMgYnVmZmVyCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBTZXQgJ2Zvcm1hdG9wdGlvbnMnIHRvIGJyZWFrIGNvbW1lbnQgbGluZXMgYnV0IG5vdCBvdGhlciBsaW5lcywKICIgYW5kIGluc2VydCB0aGUgY29tbWVudCBsZWFkZXIgd2hlbiBoaXR0aW5nIDxDUj4gb3IgdXNpbmcgIm8iLgogInNldGxvY2FsIGZvLT10IGZvKz1jcm9xbG0xCkBAIC0yMiw4ICsyNSw2IEBACiAiIEZvcm1hdCBjb21tZW50cyB0byBiZSB1cCB0byA3OCBjaGFyYWN0ZXJzIGxvbmcKICJzZXRsb2NhbCB0dz03NQogCi1zZXQgY3BvLT1DCi0KICIgV2luMzIgY2FuIGZpbHRlciBmaWxlcyBpbiB0aGUgYnJvd3NlIGRpYWxvZwogImlmIGhhcygiZ3VpX3dpbjMyIikgJiYgIWV4aXN0cygiYjpicm93c2VmaWx0ZXIiKQogIiAgbGV0IGI6YnJvd3NlZmlsdGVyID0gIlZlcmlsb2cgU291cmNlIEZpbGVzICgqLnYpXHQqLnZcbiIgLgpAQCAtODIsMyArODMsNiBAQAogdm5vcmVtYXAgPGJ1ZmZlcj48c2lsZW50Pl1dIDo8Qy11PmNhbCA8U0lEPkNvdW50V3JhcHBlcignXV0nKTxDUj4KIHZub3JlbWFwIDxidWZmZXI+PHNpbGVudD5bXSA6PEMtdT5jYWwgPFNJRD5Db3VudFdyYXBwZXIoJ1tdJyk8Q1I+CiB2bm9yZW1hcCA8YnVmZmVyPjxzaWxlbnQ+XVsgOjxDLXU+Y2FsIDxTSUQ+Q291bnRXcmFwcGVyKCddWycpPENSPgorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L2ZhbGNvbi52aW0gYi9ydW50aW1lL2luZGVudC9mYWxjb24udmltCmluZGV4IDkzM2ViNjEuLjQxZjhmMzQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2ZhbGNvbi52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvZmFsY29uLnZpbQpAQCAtMTUzLDQgKzE1Myw3IEBACiAgICAgcmV0dXJuIGluZCArIGNoZwogZW5kZnVuY3Rpb24KIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCisKICIgdmltOiBzZXQgc3c9NCBzdHM9NCBldCB0dz04MCA6CmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC9naXRvbGl0ZS52aW0gYi9ydW50aW1lL2luZGVudC9naXRvbGl0ZS52aW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjk1Y2YwZgotLS0gL2Rldi9udWxsCisrKyBiL3J1bnRpbWUvaW5kZW50L2dpdG9saXRlLnZpbQpAQCAtMCwwICsxLDM5IEBACisiIFZpbSBpbmRlbnQgZmlsZQorIiBMYW5ndWFnZToJZ2l0b2xpdGUgY29uZmlndXJhdGlvbgorIiBVUkw6CQlodHRwczovL2dpdGh1Yi5jb20vdG1hdGlsYWkvZ2l0b2xpdGUudmltCisiIE1haW50YWluZXI6CVRlZW11IE1hdGlsYWluZW4gPHRlZW11Lm1hdGlsYWluZW5AaWtpLmZpPgorIiBMYXN0IENoYW5nZToJMjAxMS0xMS0wMQorCitpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCisgIGZpbmlzaAorZW5kaWYKK2xldCBiOmRpZF9pbmRlbnQgPSAxCisKK3NldGxvY2FsIGF1dG9pbmRlbnQKK3NldGxvY2FsIGluZGVudGV4cHI9R2V0R2l0b2xpdGVJbmRlbnQoKQorc2V0bG9jYWwgaW5kZW50a2V5cz1vLE8sKjxSZXR1cm4+LCFeRiw9cmVwbyxcIiw9CisKKyIgT25seSBkZWZpbmUgdGhlIGZ1bmN0aW9uIG9uY2UuCitpZiBleGlzdHMoIipHZXRHaXRvbGl0ZUluZGVudCIpCisgIGZpbmlzaAorZW5kaWYKKworZnVuY3Rpb24hIEdldEdpdG9saXRlSW5kZW50KCkKKyAgbGV0IHByZXZsbiA9IHByZXZub25ibGFuayh2OmxudW0tMSkKKyAgbGV0IHBsaW5lID0gZ2V0bGluZShwcmV2bG4pCisgIGxldCBjbGluZSA9IGdldGxpbmUodjpsbnVtKQorCisgIGlmIGNsaW5lID1+ICdeXHMqXChDXHxSXHxSV1x8UlcrXHxSV0NcfFJXK0NcfFJXRFx8UlcrRFx8UldDRFx8UlcrQ0RcfC1cKVsgXHQ9XScKKyAgICByZXR1cm4gJnN3CisgIGVsc2VpZiBjbGluZSA9fiAnXlxzKmNvbmZpZ1xzJworICAgIHJldHVybiAmc3cKKyAgZWxzZWlmIHBsaW5lID1+ICdeXHMqcmVwb1xzJyAmJiBjbGluZSA9fiAnXlxzKlwoIy4qXClcPyQnCisgICAgcmV0dXJuICZzdworICBlbHNlaWYgY2xpbmUgPX4gJ15ccyojJworICAgIHJldHVybiBpbmRlbnQocHJldmxuKQorICBlbHNlaWYgY2xpbmUgPX4gJ15ccyokJworICAgIHJldHVybiAtMQorICBlbHNlCisgICAgcmV0dXJuIDAKKyAgZW5kaWYKK2VuZGZ1bmN0aW9uCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC90Y3NoLnZpbSBiL3J1bnRpbWUvaW5kZW50L3Rjc2gudmltCmluZGV4IGNkMThmMDYuLjU5YTlkNTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L3Rjc2gudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L3Rjc2gudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6CQlDLXNoZWxsICh0Y3NoKQotIiBNYWludGFpbmVyOgkJR2F1dGFtIEl5ZXIgPGdhdXRhbUBtYXRoLnVjaGljYWdvLmVkdT4KLSIgTGFzdCBNb2RpZmllZDoJU2F0IDE2IEp1biAyMDA3IDA0OjI3OjQ1IFBNIFBEVAorIiBNYWludGFpbmVyOgkJR0kgPGFAYi5jPiwgd2hlcmUgYT0nZ2kxMjQyK3ZpbScsIGI9J2dtYWlsJywgYz0nY29tJworIiBMYXN0IE1vZGlmaWVkOglTYXQgMTAgRGVjIDIwMTEgMDk6MjM6MDAgQU0gRVNUCiAKICIgT25seSBsb2FkIHRoaXMgaW5kZW50IGZpbGUgd2hlbiBubyBvdGhlciB3YXMgbG9hZGVkLgogaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQpAQCAtMTgsOCArMTgsNiBAQAogICAgIGZpbmlzaAogZW5kaWYKIAotc2V0IGNwb3B0aW9ucy09QwotCiBmdW5jdGlvbiBUY3NoR2V0SW5kZW50KCkKICAgICAiIEZpbmQgYSBub24tYmxhbmsgbGluZSBhYm92ZSB0aGUgY3VycmVudCBsaW5lLgogICAgIGxldCBsbnVtID0gcHJldm5vbmJsYW5rKHY6bG51bSAtIDEpCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC90ZXgudmltIGIvcnVudGltZS9pbmRlbnQvdGV4LnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNzU4YTcwCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9pbmRlbnQvdGV4LnZpbQpAQCAtMCwwICsxLDI1MCBAQAorIiBWaW0gaW5kZW50IGZpbGUKKyIgTGFuZ3VhZ2U6ICAgICBMYVRlWAorIiBNYWludGFpbmVyOiAgIFpob3UgWWlDaGFvIDxicm9rZW4uemhvdUBnbWFpbC5jb20+CisiIENyZWF0ZWQ6ICAgICAgU2F0LCAxNiBGZWIgMjAwMiAxNjo1MDoxOSArMDEwMAorIiBMYXN0IENoYW5nZToJVHVlLCAyNSBTZXAgMjAxMQorIiBMYXN0IFVwZGF0ZTogIDI1dGggU2VwIDIwMDIsIGJ5IExIIDoKKyIgICAgICAgICAgICAgICAoKikgYmV0dGVyIHN1cHBvcnQgZm9yIHRoZSBvcHRpb24KKyIgICAgICAgICAgICAgICAoKikgdXNlIHNvbWUgcmVnZXggaW5zdGVhZCBvZiBzZXZlcmFsICd8fCcuCisiICAgICAgICAgICAgICAgT2N0IDl0aCwgMjAwMywgYnkgSlQ6CisiICAgICAgICAgICAgICAgKCopIGRvbid0IGNoYW5nZSBpbmRlbnRhdGlvbiBvZiBsaW5lcyBzdGFydGluZyB3aXRoICclJworIiAgICAgICAgICAgICAgIDIwMDUvMDYvMTUsIE1vc2hlIEthbWluc2t5IDxrYW1pbnNreUBtYXRoLmh1amkuYWMuaWw+CisiICAgICAgICAgICAgICAgKCopIE5ldyB2YXJpYWJsZXM6CisiICAgICAgICAgICAgICAgICAgIGc6dGV4X2l0ZW1zLCBnOnRleF9pdGVtaXplX2VudiwgZzp0ZXhfbm9pbmRlbnRfZW52CisiICAgICAgICAgICAgICAgMjAxMS8zLzYsIGJ5IFpob3UgWWlDaGFvIDxicm9rZW4uemhvdUBnbWFpbC5jb20+CisiICAgICAgICAgICAgICAgKCopIERvbid0IGNoYW5nZSBpbmRlbnRhdGlvbiBvZiBsaW5lcyBzdGFydGluZyB3aXRoICclJworIiAgICAgICAgICAgICAgICAgICBJIGRvbid0IHNlZSBhbnkgY29kZSB3aXRoICclJyBhbmQgaXQgZG9lc24ndCB3b3JrIHByb3Blcmx5CisiICAgICAgICAgICAgICAgICAgIHNvIEkgYWRkIHNvbWUgY29kZS4KKyIgICAgICAgICAgICAgICAoKikgTmV3IGZlYXR1cmVzOiBBZGQgc21hcnRpbmRlbnQtbGlrZSBpbmRlbnQgZm9yICJ7fSIgYW5kICAiW10iLgorIiAgICAgICAgICAgICAgICgqKSBOZXcgdmFyaWFibGVzOiBnOnRleF9pbmRlbnRfYnJhY2UKKyIgICAgICAgICAgICAgICAyMDExLzkvMjUsIGJ5IFpob3UgWWljaGFvIDxicm9rZW4uemhvdUBnbWFpbC5jb20+CisiICAgICAgICAgICAgICAgKCopIEJ1ZyBmaXg6IHNtYXJ0aW5kZW50LWxpa2UgaW5kZW50IGZvciAiW10iCisiICAgICAgICAgICAgICAgKCopIE5ldyBmZWF0dXJlczogQWxpZ24gd2l0aCAiJiIuCisiICAgICAgICAgICAgICAgKCopIE5ldyB2YXJpYWJsZTogZzp0ZXhfaW5kZW50X2FuZAorIiAgICAgICAgICAgICAgIDIwMTEvMTAvMjMgYnkgWmhvdSBZaWNoYW8gPGJyb2tlbi56aG91QGdtYWlsLmNvbT4KKyIgICAgICAgICAgICAgICAoKikgQnVnIGZpeDogaW1wcm92ZSB0aGUgc21hcnRpbmRlbnQtbGlrZSBpbmRlbnQgZm9yICJ7fSIgYW5kCisiICAgICAgICAgICAgICAgIltdIi4KKyIKKyIgVmVyc2lvbjogMC42MgorCisiIE9wdGlvbnM6IHt7eworIgorIiBUbyBzZXQgdGhlIGZvbGxvd2luZyBvcHRpb25zIChvaywgY3VycmVudGx5IGl0J3MganVzdCBvbmUpLCBhZGQgYSBsaW5lIGxpa2UKKyIgICBsZXQgZzp0ZXhfaW5kZW50X2l0ZW1zID0gMQorIiB0byB5b3VyIH4vLnZpbXJjLgorIgorIiAqIGc6dGV4X2luZGVudF9icmFjZQorIgorIiAgIElmIHRoaXMgdmFyaWFibGUgaXMgdW5zZXQgb3Igbm9uLXplcm8sIGl0IHdpbGwgdXNlIHNtYXJ0aW5kZW50LWxpa2Ugc3R5bGUKKyIgICBmb3IgInt9IiBhbmQgIltdIgorIiAgIAorIiAqIGc6dGV4X2luZGVudF9pdGVtcworIgorIiAgIElmIHRoaXMgdmFyaWFibGUgaXMgc2V0LCBpdGVtLWVudmlyb25tZW50cyBhcmUgaW5kZW50ZWQgbGlrZSBFbWFjcyBkb2VzCisiICAgaXQsIGkuZS4sIGNvbnRpbnVhdGlvbiBsaW5lcyBhcmUgaW5kZW50ZWQgd2l0aCBhIHNoaWZ0d2lkdGguCisiICAgCisiICAgTk9URTogSSd2ZSBhbHJlYWR5IHNldCB0aGUgdmFyaWFibGUgYmVsb3c7IGRlbGV0ZSB0aGUgY29ycmVzcG9uZGluZyBsaW5lCisiICAgaWYgeW91IGRvbid0IGxpa2UgdGhpcyBiZWhhdmlvdXIuCisiCisiICAgUGVyIGRlZmF1bHQsIGl0IGlzIHVuc2V0LgorIiAgIAorIiAgICAgICAgICAgICAgc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNldAorIiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyIgICAgICAgXGJlZ2lue2l0ZW1pemV9ICAgICAgICAgICAgICAgICAgICAgIFxiZWdpbntpdGVtaXplfSAgCisiICAgICAgICAgXGl0ZW0gYmxhYmxhYmxhICAgICAgICAgICAgICAgICAgICAgIFxpdGVtIGJsYWJsYWJsYQorIiAgICAgICAgICAgYmxhIGJsYSBibGEgICAgICAgICAgICAgICAgICAgICAgICBibGEgYmxhIGJsYSAgCisiICAgICAgICAgXGl0ZW0gYmxhYmxhYmxhICAgICAgICAgICAgICAgICAgICAgIFxpdGVtIGJsYWJsYWJsYQorIiAgICAgICAgICAgYmxhIGJsYSBibGEgICAgICAgICAgICAgICAgICAgICAgICBibGEgYmxhIGJsYSAgCisiICAgICAgIFxlbmR7aXRlbWl6ZX0gICAgICAgICAgICAgICAgICAgICAgICBcZW5ke2l0ZW1pemV9ICAgIAorIgorIgorIiAqIGc6dGV4X2l0ZW1zCisiCisiICAgQSBsaXN0IG9mIHRva2VucyB0byBiZSBjb25zaWRlcmVkIGFzIGNvbW1hbmRzIGZvciB0aGUgYmVnaW5uaW5nIG9mIGFuIGl0ZW0gCisiICAgY29tbWFuZC4gVGhlIHRva2VucyBzaG91bGQgYmUgc2VwYXJhdGVkIHdpdGggJ1x8Jy4gVGhlIGluaXRpYWwgJ1wnIHNob3VsZCAKKyIgICBiZSBlc2NhcGVkLiBUaGUgZGVmYXVsdCBpcyAnXFxiaWJpdGVtXHxcXGl0ZW0nLgorIgorIiAqIGc6dGV4X2l0ZW1pemVfZW52CisiIAorIiAgIEEgbGlzdCBvZiBlbnZpcm9ubWVudCBuYW1lcywgc2VwYXJhdGVkIHdpdGggJ1x8Jywgd2hlcmUgdGhlIGl0ZW1zIChpdGVtIAorIiAgIGNvbW1hbmRzIG1hdGNoaW5nIGc6dGV4X2l0ZW1zKSBtYXkgYXBwZWFyLiBUaGUgZGVmYXVsdCBpcyAKKyIgICAnaXRlbWl6ZVx8ZGVzY3JpcHRpb25cfGVudW1lcmF0ZVx8dGhlYmlibGlvZ3JhcGh5Jy4KKyIKKyIgKiBnOnRleF9ub2luZGVudF9lbnYKKyIKKyIgICBBIGxpc3Qgb2YgZW52aXJvbm1lbnQgbmFtZXMuIHNlcGFyYXRlZCB3aXRoICdcfCcsIHdoZXJlIG5vIGluZGVudGF0aW9uIGlzIAorIiAgIHJlcXVpcmVkLiBUaGUgZGVmYXVsdCBpcyAnZG9jdW1lbnRcfHZlcmJhdGltJy4KKyIKKyIgKiBnOnRleF9pbmRlbnRfYW5kCisiCisiICAgSWYgdGhpcyB2YXJpYWJsZSBpcyB1bnNldCBvciB6ZXJvLCB2aW0gd2lsbCB0cnkgdG8gYWxpZ24gdGhlIGxpbmUgd2l0aCBmaXJzdAorIiAgICImIi4gVGhpcyBpcyBwcmV0dHkgdXNlZnVsIHdoZW4geW91IHVzZSBlbnZpcm9ubWVudCBsaWtlIHRhYmxlIG9yIGFsaWduLgorIiAgIE5vdGUgdGhhdCB0aGlzIGZlYXR1cmUgbmVlZCB0byBzZWFyY2ggYmFjayBzb21lIGxpbmUsIHNvIHZpbSBtYXkgYmVjb21lCisiICAgYSBsaXR0bGUgc2xvdy4KKyIKKyIgfX19IAorCitpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCisgICAgZmluaXNoCitlbmRpZgorbGV0IGI6ZGlkX2luZGVudCA9IDEKKworIiBEZWxldGUgdGhlIG5leHQgbGluZSB0byBhdm9pZCB0aGUgc3BlY2lhbCBpbmRlbnRpb24gb2YgaXRlbXMKK2lmICFleGlzdHMoImc6dGV4X2luZGVudF9pdGVtcyIpCisgICAgbGV0IGc6dGV4X2luZGVudF9pdGVtcyA9IDEKK2VuZGlmCitpZiAhZXhpc3RzKCJnOnRleF9pbmRlbnRfYnJhY2UiKQorICAgIGxldCBnOnRleF9pbmRlbnRfYnJhY2UgPSAxCitlbmRpZgoraWYgIWV4aXN0cygiZzp0ZXhfaW5kZW50X2FuZCIpCisgICAgbGV0IGc6dGV4X2luZGVudF9hbmQgPSAxCitlbmRpZgoraWYgZzp0ZXhfaW5kZW50X2l0ZW1zCisgICAgaWYgIWV4aXN0cygiZzp0ZXhfaXRlbWl6ZV9lbnYiKQorICAgICAgICBsZXQgZzp0ZXhfaXRlbWl6ZV9lbnYgPSAnaXRlbWl6ZVx8ZGVzY3JpcHRpb25cfGVudW1lcmF0ZVx8dGhlYmlibGlvZ3JhcGh5JworICAgIGVuZGlmCisgICAgaWYgIWV4aXN0cygnZzp0ZXhfaXRlbXMnKQorICAgICAgICBsZXQgZzp0ZXhfaXRlbXMgPSAnXFxiaWJpdGVtXHxcXGl0ZW0nIAorICAgIGVuZGlmCitlbHNlCisgICAgbGV0IGc6dGV4X2l0ZW1zID0gJycKK2VuZGlmCisKK2lmICFleGlzdHMoImc6dGV4X25vaW5kZW50X2VudiIpCisgICAgbGV0IGc6dGV4X25vaW5kZW50X2VudiA9ICdkb2N1bWVudFx8dmVyYmF0aW1cfGxzdGxpc3RpbmcnCitlbmRpZgorCitzZXRsb2NhbCBhdXRvaW5kZW50CitzZXRsb2NhbCBub3NtYXJ0aW5kZW50CitzZXRsb2NhbCBpbmRlbnRleHByPUdldFRlWEluZGVudCgpCitleGVjICdzZXRsb2NhbCBpbmRlbnRrZXlzKz19LF0sXCYnIC4gc3Vic3RpdHV0ZShnOnRleF9pdGVtcywgJ15cfFwoXFx8XCknLCAnLD0nLCAnZycpCitsZXQgZzp0ZXhfaXRlbXMgPSAnXlxzKicgLiBnOnRleF9pdGVtcworCisKKyIgT25seSBkZWZpbmUgdGhlIGZ1bmN0aW9uIG9uY2UKK2lmIGV4aXN0cygiKkdldFRlWEluZGVudCIpIHwgZmluaXNoCitlbmRpZgorCisKK2Z1bmN0aW9uIEdldFRlWEluZGVudCgpCisgICAgIiBGaW5kIGEgbm9uLWJsYW5rIGxpbmUgYWJvdmUgdGhlIGN1cnJlbnQgbGluZS4KKyAgICBsZXQgbG51bSA9IHByZXZub25ibGFuayh2OmxudW0gLSAxKQorCisgICAgIiBDb21tZW50IGxpbmUgaXMgbm90IHdoYXQgd2UgbmVlZC4KKyAgICB3aGlsZSBsbnVtICE9IDAgJiYgZ2V0bGluZShsbnVtKSA9fiAnXlxzKiUnCisgICAgICAgIGxldCBsbnVtID0gcHJldm5vbmJsYW5rKGxudW0gLSAxKQorICAgIGVuZHdoaWxlCisKKyAgICAiIEF0IHRoZSBzdGFydCBvZiB0aGUgZmlsZSB1c2UgemVybyBpbmRlbnQuCisgICAgaWYgbG51bSA9PSAwCisgICAgICAgIHJldHVybiAwIAorICAgIGVuZGlmCisKKyAgICBsZXQgbGluZSA9IGdldGxpbmUobG51bSkgICAgICAgICAgICAgIiBsYXN0IGxpbmUKKyAgICBsZXQgY2xpbmUgPSBnZXRsaW5lKHY6bG51bSkgICAgICAgICAgIiBjdXJyZW50IGxpbmUKKworICAgICIgWW91IHdhbnQgdG8gYWxpZ24gd2l0aCAiJiIKKyAgICBpZiBnOnRleF9pbmRlbnRfYW5kCisgICAgICAgICIgQWxpZ24gd2l0aCBsYXN0IGxpbmUgaWYgbGFzdCBsaW5lIGhhcyBhICImIgorICAgICAgICBpZiBzdHJpZHgoY2xpbmUsICImIikgIT0gLTEgJiYgc3RyaWR4KGxpbmUsICImIikgIT0gLTEKKyAgICAgICAgICAgIHJldHVybiBpbmRlbnQodjpsbnVtKSArIHN0cmlkeChsaW5lLCAiJiIpIC0gc3RyaWR4KGNsaW5lLCAiJiIpCisgICAgICAgIGVuZGlmCisKKyAgICAgICAgIiBzZXQgbGluZSAmIGxudW0gdG8gdGhlIGxpbmUgd2hpY2ggZG9lc24ndCBjb250YWluICImIgorICAgICAgICB3aGlsZSBsbnVtICE9IDAgJiYgKHN0cmlkeChsaW5lLCAiJiIpICE9IC0xIHx8IGxpbmUgPX4gJ15ccyolJykKKyAgICAgICAgICAgIGxldCBsbnVtID0gcHJldm5vbmJsYW5rKGxudW0gLSAxKQorICAgICAgICAgICAgbGV0IGxpbmUgPSBnZXRsaW5lKGxudW0pCisgICAgICAgIGVuZHdoaWxlCisgICAgZW5kaWYKKworCisgICAgaWYgbG51bSA9PSAwCisgICAgICAgIHJldHVybiAwIAorICAgIGVuZGlmCisKKyAgICBsZXQgaW5kID0gaW5kZW50KGxudW0pCisKKyAgICAiIE5ldyBjb2RlIGZvciBjb21tZW50OiByZXRhaW4gdGhlIGluZGVudCBvZiBjdXJyZW50IGxpbmUKKyAgICBpZiBjbGluZSA9fiAnXlxzKiUnCisgICAgICAgIHJldHVybiBpbmRlbnQodjpsbnVtKQorICAgIGVuZGlmCisKKyAgICAiIEFkZCBhICdzaGlmdHdpZHRoJyBhZnRlciBiZWdpbm5pbmcgb2YgZW52aXJvbm1lbnRzLgorICAgICIgRG9uJ3QgYWRkIGl0IGZvciBcYmVnaW57ZG9jdW1lbnR9IGFuZCBcYmVnaW57dmVyYmF0aW19CisgICAgIiJpZiBsaW5lID1+ICdeXHMqXFxiZWdpbntcKC4qXCl9JyAgJiYgbGluZSAhfiAndmVyYmF0aW0nIAorICAgICIgTEggbW9kaWZpY2F0aW9uIDogXGJlZ2luIGRvZXMgbm90IGFsd2F5cyBzdGFydCBhIGxpbmUKKyAgICAiIFpZQyBtb2RpZmljYXRpb24gOiBcZW5kIGFmdGVyIFxiZWdpbiB3b24ndCBjYXVzZSB3cm9uZyBpbmRlbnQgYW55bW9yZQorICAgIGlmIGxpbmUgPX4gJ1xcYmVnaW57Lip9JyAmJiBsaW5lICF+IGc6dGV4X25vaW5kZW50X2VudgorICAgICAgICAgICAgICAgIFwgJiYgbGluZSAhfiAnXFxiZWdpbnsuXHstfX0uKlxcZW5key4qfScKKworICAgICAgICBsZXQgaW5kID0gaW5kICsgJnN3CisKKyAgICAgICAgaWYgZzp0ZXhfaW5kZW50X2l0ZW1zCisgICAgICAgICAgICAiIEFkZCBhbm90aGVyIHN3IGZvciBpdGVtLWVudmlyb25tZW50cworICAgICAgICAgICAgaWYgbGluZSA9fiBnOnRleF9pdGVtaXplX2VudgorICAgICAgICAgICAgICAgIGxldCBpbmQgPSBpbmQgKyAmc3cKKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgIGVuZGlmCisgICAgZW5kaWYKKworCisgICAgIiBTdWJ0cmFjdCBhICdzaGlmdHdpZHRoJyB3aGVuIGFuIGVudmlyb25tZW50IGVuZHMKKyAgICBpZiBjbGluZSA9fiAnXlxzKlxcZW5kJyAmJiBjbGluZSAhfiBnOnRleF9ub2luZGVudF9lbnYKKworICAgICAgICBpZiBnOnRleF9pbmRlbnRfaXRlbXMKKyAgICAgICAgICAgICIgUmVtb3ZlIGFub3RoZXIgc3cgZm9yIGl0ZW0tZW52aXJvbm1lbnRzCisgICAgICAgICAgICBpZiBjbGluZSA9fiBnOnRleF9pdGVtaXplX2VudgorICAgICAgICAgICAgICAgIGxldCBpbmQgPSBpbmQgLSAmc3cKKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgIGVuZGlmCisKKyAgICAgICAgbGV0IGluZCA9IGluZCAtICZzdworICAgIGVuZGlmCisKKyAgICBpZiBnOnRleF9pbmRlbnRfYnJhY2UKKyAgICAgICAgIiBBZGQgYSAnc2hpZnR3aWR0aCcgYWZ0ZXIgYSAieyIgb3IgIlsiLgorICAgICAgICBsZXQgc3VtMSA9IDAKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMCwgc3RybGVuKGxpbmUpLTEpCisgICAgICAgICAgICBpZiBsaW5lW2ldID09ICJ9IiB8fCBsaW5lW2ldID09ICJdIgorICAgICAgICAgICAgICAgIGxldCBzdW0xID0gbWF4KFswLCBzdW0xLTFdKQorICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgICAgIGlmIGxpbmVbaV0gPT0gInsiIHx8IGxpbmVbaV0gPT0gIlsiCisgICAgICAgICAgICAgICAgbGV0IHN1bTEgKz0gMQorICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgZW5kZm9yCisKKyAgICAgICAgbGV0IHN1bTIgPSAwCisgICAgICAgIGZvciBpIGluIHJldmVyc2UocmFuZ2UoMCwgc3RybGVuKGNsaW5lKS0xKSkKKyAgICAgICAgICAgIGlmIGNsaW5lW2ldID09ICJ7IiB8fCBjbGluZVtpXSA9PSAiWyIKKyAgICAgICAgICAgICAgICBsZXQgc3VtMiA9IG1heChbMCwgc3VtMi0xXSkKKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgICAgICBpZiBjbGluZVtpXSA9PSAifSIgfHwgY2xpbmVbaV0gPT0gIl0iCisgICAgICAgICAgICAgICAgbGV0IHN1bTIgKz0gMQorICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgZW5kZm9yCisKKyAgICAgICAgbGV0IGluZCArPSAoc3VtMSAtIHN1bTIpICogJnN3CisgICAgZW5kaWYKKworCisgICAgIiBTcGVjaWFsIHRyZWF0bWVudCBmb3IgJ2l0ZW0nCisgICAgIiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBpZiBnOnRleF9pbmRlbnRfaXRlbXMKKworICAgICAgICAiICdcaXRlbScgb3IgJ1xiaWJpdGVtJyBpdHNlbGY6CisgICAgICAgIGlmIGNsaW5lID1+IGc6dGV4X2l0ZW1zCisgICAgICAgICAgICBsZXQgaW5kID0gaW5kIC0gJnN3CisgICAgICAgIGVuZGlmCisKKyAgICAgICAgIiBsaW5lcyBmb2xsb3dpbmcgdG8gJ1xpdGVtJyBhcmUgaW50ZW50ZWQgb25jZSBhZ2FpbjoKKyAgICAgICAgaWYgbGluZSA9fiBnOnRleF9pdGVtcworICAgICAgICAgICAgbGV0IGluZCA9IGluZCArICZzdworICAgICAgICBlbmRpZgorCisgICAgZW5kaWYKKworICAgIHJldHVybiBpbmQKK2VuZGZ1bmN0aW9uCisKKyIgdmltOiBzZXQgc3c9NCB0ZXh0d2lkdGg9ODA6CmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC92ZXJpbG9nLnZpbSBiL3J1bnRpbWUvaW5kZW50L3Zlcmlsb2cudmltCmluZGV4IDc0YzhjNWYuLmVjY2E0NjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L3Zlcmlsb2cudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L3Zlcmlsb2cudmltCkBAIC0xLDYgKzEsNiBAQAogIiBMYW5ndWFnZTogICAgIFZlcmlsb2cgSERMCiAiIE1haW50YWluZXI6CUNoaWgtVHN1biBIdWFuZyA8Y3RodWFuZ0BsYXJjLmVlLm50aHUuZWR1LnR3PgotIiBMYXN0IENoYW5nZToJV2VkIE9jdCAzMSAxNjoxMzoxMSBDU1QgMjAwMQorIiBMYXN0IENoYW5nZToJMjAxMSBEZWMgMTAgYnkgVGhpbG8gU2l4CiAiIFVSTDoJCWh0dHA6Ly9sYXJjLmVlLm50aHUuZWR1LnR3L35jdGh1YW5nL3ZpbS9pbmRlbnQvdmVyaWxvZy52aW0KICIKICIgQ3JlZGl0czoKQEAgLTMwLDcgKzMwLDggQEAKICAgZmluaXNoCiBlbmRpZgogCi1zZXQgY3BvLT1DCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCiAKIGZ1bmN0aW9uIEdldFZlcmlsb2dJbmRlbnQoKQogCkBAIC0yMTYsNCArMjE3LDcgQEAKICAgcmV0dXJuIGluZAogZW5kZnVuY3Rpb24KIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCisKICIgdmltOnN3PTIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Nzcy52aW0gYi9ydW50aW1lL3N5bnRheC9jc3MudmltCmluZGV4IGM1NjkyMTMuLmMyYzgzNTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Nzcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3NzLnZpbQpAQCAtMiw3ICsyLDcgQEAKICIgTGFuZ3VhZ2U6CUNhc2NhZGluZyBTdHlsZSBTaGVldHMKICIgTWFpbnRhaW5lcjoJQ2xhdWRpbyBGbGVpbmVyIDxjbGF1ZGlvQGZsZWluZXIuY29tPgogIiBVUkw6CQlodHRwOi8vd3d3LmZsZWluZXIuY29tL3ZpbS9zeW50YXgvY3NzLnZpbQotIiBMYXN0IENoYW5nZToJMjAxMCBKdWwgMjgKKyIgTGFzdCBDaGFuZ2U6CTIwMTEgRGVjIDE0CiAiIENTUzIgYnkgTmlrb2xhaSBXZWlidWxsCiAiIEZ1bGwgQ1NTMiwgSFRNTDQgc3VwcG9ydCBieSBZZXRpCiAKQEAgLTE4Miw3ICsxODIsNyBAQAogc3luIHJlZ2lvbiBjc3NEZWZpbml0aW9uIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9Y3NzQnJhY2VzIHN0YXJ0PSd7JyBlbmQ9J30nIGNvbnRhaW5zPWNzcy4qQXR0cixjc3MuKlByb3AsY3NzQ29tbWVudCxjc3NWYWx1ZS4qLGNzc0NvbG9yLGNzc1VSTCxjc3NJbXBvcnRhbnQsY3NzRXJyb3IsY3NzU3RyaW5nUSxjc3NTdHJpbmdRUSxjc3NGdW5jdGlvbixjc3NVbmljb2RlRXNjYXBlCiBzeW4gbWF0Y2ggY3NzQnJhY2VFcnJvciAifSIKIAotc3luIG1hdGNoIGNzc1BzZXVkb0NsYXNzICI6XFMqIiBjb250YWlucz1jc3NQc2V1ZG9DbGFzc0lkLGNzc1VuaWNvZGVFc2NhcGUKK3N5biBtYXRjaCBjc3NQc2V1ZG9DbGFzcyAiOltBLVphLXowLTlfLV0qIiBjb250YWlucz1jc3NQc2V1ZG9DbGFzc0lkLGNzc1VuaWNvZGVFc2NhcGUKIHN5biBrZXl3b3JkIGNzc1BzZXVkb0NsYXNzSWQgY29udGFpbmVkIGxpbmsgdmlzaXRlZCBhY3RpdmUgaG92ZXIgZm9jdXMgYmVmb3JlIGFmdGVyIGxlZnQgcmlnaHQKIHN5biBtYXRjaCBjc3NQc2V1ZG9DbGFzc0lkIGNvbnRhaW5lZCAiXDxmaXJzdFwoLVwobGluZVx8bGV0dGVyXHxjaGlsZFwpXClcPVw+Igogc3luIHJlZ2lvbiBjc3NQc2V1ZG9DbGFzc0xhbmcgbWF0Y2hncm91cD1jc3NQc2V1ZG9DbGFzc0lkIHN0YXJ0PSI6bGFuZygiIGVuZD0iKSIgb25lbGluZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGlycGFnZXIudmltIGIvcnVudGltZS9zeW50YXgvZGlycGFnZXIudmltCmluZGV4IDIxNmJmZDcuLjM3MWRkYTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RpcnBhZ2VyLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kaXJwYWdlci52aW0KQEAgLTEsMTggKzEsMzEgQEAKICIgVmltIHN5bnRheCBmaWxlCi0iIExhbmd1YWdlOiAgICAgICAgIGRpcmVjdG9yeSBwYWdlcgotIiBNYWludGFpbmVyOiAgICAgICBUaGlsbyBTaXggPFQuU2l4QGdteC5kZT4KLSIgRGVyaXZlZCBGcm9tOgkgICAgTmlrb2xhaSBXZWlidWxsJ3MgZGlyY29sb3JzLnZpbQotIiBMYXRlc3QgUmV2aXNpb246ICAyMDExLTA0LTA5CisiIExhbmd1YWdlOgkgIGRpcmVjdG9yeSBwYWdlcgorIiBNYWludGFpbmVyOgkgIFRoaWxvIFNpeCA8VC5TaXhAZ214LmRlPgorIiBEZXJpdmVkIEZyb206CSAgTmlrb2xhaSBXZWlidWxscyBkaXJjb2xvcnMudmltCisiIExhc3QgQ2hhbmdlOgkgIDIwMTEgRGVjIDExCisiIE1vZGVsaW5lOgkgIHZpbTogdHM9ODpzdz0yOnN0cz0yOgogIgogIiB1c2FnZTogJCBscyAtbGEgfCB2aWV3IC1jICJzZXQgZnQ9ZGlycGFnZXIiIC0KICIKKyIKKyIsLS0tLVsgbHMoMXBvc2l4KSBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyIKKyIgVGhlICA8ZW50cnkgdHlwZT4gY2hhcmFjdGVyIHNoYWxsIGRlc2NyaWJlIHRoZSB0eXBlIG9mIGZpbGUsIGFzCisiICAgICAgIGZvbGxvd3M6CisiCisiICAgICAgIGQJRGlyZWN0b3J5LgorIiAgICAgICBiCUJsb2NrIHNwZWNpYWwgZmlsZS4KKyIgICAgICAgYwlDaGFyYWN0ZXIgc3BlY2lhbCBmaWxlLgorIiAgICAgICBsIChlbGwpCVN5bWJvbGljIGxpbmsuCisiICAgICAgIHAJRklGTy4KKyIgICAgICAgLQlSZWd1bGFyIGZpbGUuCisiYC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisiCiAKLWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKSB8fCAmY29tcGF0aWJsZQogICBmaW5pc2gKIGVuZGlmCiAKLWxldCBzOmNwb19zYXZlID0gJmNwbwotc2V0IGNwbyZ2aW0KIHNldGxvY2FsIG5vd3JhcAogCiBzeW4ga2V5d29yZCAgRGlyUGFnZXJUb2RvCWNvbnRhaW5lZCBGSVhNRSBUT0RPIFhYWCBOT1RFCkBAIC0yMCwxNCArMzMsMTYgQEAKIHN5biByZWdpb24gICBEaXJQYWdlckV4ZQlzdGFydD0nXi4uLnhcfF4uLi4uLi54XHxeLi4uLi4uLi4ueCcgZW5kPSckJwljb250YWlucz1EaXJQYWdlclRvZG8sQFNwZWxsCiBzeW4gcmVnaW9uICAgRGlyUGFnZXJEaXIJc3RhcnQ9J15kJyBlbmQ9JyQnCWNvbnRhaW5zPURpclBhZ2VyVG9kbyxAU3BlbGwKIHN5biByZWdpb24gICBEaXJQYWdlckxpbmsJc3RhcnQ9J15sJyBlbmQ9JyQnCWNvbnRhaW5zPURpclBhZ2VyVG9kbyxAU3BlbGwKK3N5biByZWdpb24gICBEaXJQYWdlclNwZWNpYWwJc3RhcnQ9J15iJyBlbmQ9JyQnCWNvbnRhaW5zPURpclBhZ2VyVG9kbyxAU3BlbGwKK3N5biByZWdpb24gICBEaXJQYWdlclNwZWNpYWwJc3RhcnQ9J15jJyBlbmQ9JyQnCWNvbnRhaW5zPURpclBhZ2VyVG9kbyxAU3BlbGwKK3N5biByZWdpb24gICBEaXJQYWdlckZpZm8Jc3RhcnQ9J15wJyBlbmQ9JyQnCWNvbnRhaW5zPURpclBhZ2VyVG9kbyxAU3BlbGwKIAogaGkgZGVmIGxpbmsgIERpclBhZ2VyVG9kbwlUb2RvCiBoaSBkZWYJICAgICBEaXJQYWdlckV4ZQljdGVybWZnPUdyZWVuCSAgICBndWlmZz1HcmVlbgogaGkgZGVmCSAgICAgRGlyUGFnZXJEaXIJY3Rlcm1mZz1CbHVlCSAgICBndWlmZz1CbHVlCiBoaSBkZWYJICAgICBEaXJQYWdlckxpbmsJY3Rlcm1mZz1DeWFuCSAgICBndWlmZz1DeWFuCitoaSBkZWYJICAgICBEaXJQYWdlclNwZWNpYWwJY3Rlcm1mZz1ZZWxsb3cJICAgIGd1aWZnPVllbGxvdworaGkgZGVmCSAgICAgRGlyUGFnZXJGaWZvCWN0ZXJtZmc9QnJvd24JICAgIGd1aWZnPUJyb3duCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRpcnBhZ2VyIgogCi1sZXQgJmNwbyA9IHM6Y3BvX3NhdmUKLXVubGV0IHM6Y3BvX3NhdmUKLQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZG5zbWFzcS52aW0gYi9ydW50aW1lL3N5bnRheC9kbnNtYXNxLnZpbQppbmRleCAzOWYxMDZjLi44ZjNmZTNmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9kbnNtYXNxLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kbnNtYXNxLnZpbQpAQCAtMSw5ICsxLDExIEBACiAiIFZpbSBzeW50YXggZmlsZQotIiBMYW5ndWFnZToJZG5zbWFzcSg4KSBjb25maWd1cmF0aW9uIGZpbGUKKyIgTGFuZ3VhZ2U6CWRuc21hc3EgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6CVRoaWxvIFNpeCA8VC5TaXhAZ214LmRlPgotIiBMYXN0IENoYW5nZToJMjAxMSBKdWwgMTQKLSIgQ3JlZGl0czoJVGhpcyBmaWxlIGlzIGEgbWl4IG9mIGNmZy52aW0sIHdnZXQudmltIGFuZCB4Zjg2Y29uZi52aW0sIGNyZWRpdHMgZ28gdG86Ci0iCQlJZ29yIE4uIFByaXNjaGVwb2ZmCisiIFZlcnNpb246CTIuNTktMQorIiBMYXN0IENoYW5nZToJMjAxMSBEZWMgMTEKKyIgTW9kZWxpbmU6CXZpbTogdHM9ODpzdz0yOnN0cz0yOgorIgorIiBDcmVkaXRzOglJZ29yIE4uIFByaXNjaGVwb2ZmCiAiCQlEb3VnIEtlYXJucwogIgkJRGF2aWQgTmVcdntjfWFzCiAiCkBAIC0xNiwxNSArMTgsMjAgQEAKICIJCSAgICBsZXQgZG5zbWFzcV9iYWNrcmdvdW5kX2xpZ2h0ID0gMQogIgkJZW5kaWYKICIKKyIKIAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmIHZlcnNpb24gPCA2MDAKICAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMgKCJiOmN1cnJlbnRfc3ludGF4IikKK2Vsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKSB8fCAmY29tcGF0aWJsZQogICAgIGZpbmlzaAogZW5kaWYKIAorIiBwcmVkaWN0YWJsZSBlbnZpcm9ubWVudDoKK2xldCBzOmtlZXBjcG8gPSAmY3BvCitzZXQgY3BvJnZpbQorCiAKIGlmICFleGlzdHMoImI6ZG5zbWFzcV9iYWNrcmdvdW5kX2xpZ2h0IikKIAlpZiBleGlzdHMoImRuc21hc3FfYmFja3Jnb3VuZF9saWdodCIpCkBAIC02MCwxMyArNjcsMjAgQEAKIAogc3luIGtleXdvcmQgRG5zbWFzcVRvZG8JICAgIEZJWE1FIFRPRE8gWFhYIE5PVEUgY29udGFpbmVkCiAKKyIgaGlnaGxpZ2h0IHRyYWlsaW5nIHNwYWNlcworc3luIG1hdGNoICAgRG5zbWFzcVRyYWlsU3BhY2UJICAgIlsgXHRdXCskIgorc3luIG1hdGNoICAgRG5zbWFzcVRyYWlsU3BhY2UJICAgIlsgXHRdXCskIiBjb250YWluZWRpbj1BTEwKKwogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkU3BlY2lhbCAgICAiXDxzZXRcPjoibWU9ZS0xCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmRTcGVjaWFsICAgICJcPHRhZ1w+OiJtZT1lLTEKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZFNwZWNpYWwgICAgIixcPHN0YXRpY1w+ImhzPXMrMQkgIGNvbnRhaW5zPURuc21hc3FTcGVjaWFsCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmRTcGVjaWFsICAgICIsXDxpbmZpbml0ZVw+ImhzPXMrMSAgY29udGFpbnM9RG5zbWFzcVNwZWNpYWwKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZFNwZWNpYWwgICAgIlw8ZW5jYXBcPjoibWU9ZS0xCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmRTcGVjaWFsICAgICJcPGludGVyZmFjZVw+OiJtZT1lLTEKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZFNwZWNpYWwgICAgIlw8dmktZW5jYXBcPjoibWU9ZS0xCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmRTcGVjaWFsICAgICJcPG5ldFw+OiJtZT1lLTEKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZFNwZWNpYWwgICAgIlw8dmVuZG9yXD46Im1lPWUtMQorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkU3BlY2lhbCAgICAiXDxvcHRcPjoibWU9ZS0xCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmRTcGVjaWFsICAgICJcPG9wdGlvblw+OiJtZT1lLTEKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZFNwZWNpYWwgICAgIixcPGlnbm9yZVw+ImhzPXMrMQkgIGNvbnRhaW5zPURuc21hc3FTcGVjaWFsCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmRTcGVjaWFsICAgICJcPGlkXD46Im1lPWUtMQpAQCAtNzksMzAgKzkzLDQ2IEBACiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypiaW5kLWludGVyZmFjZXNcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmJvZ3VzLW54ZG9tYWluXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypib2d1cy1wcml2XD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypib290cC1keW5hbWljXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypicmlkZ2UtaW50ZXJmYWNlXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypjYWNoZS1zaXplXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypjbGVhci1vbi1yZWxvYWRcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmNuYW1lXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypjb25mLWRpclw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqY29uZi1maWxlXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypjb25udHJhY2tcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3AtYWx0ZXJuYXRlLXBvcnRcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3AtYXV0aG9yaXRhdGl2ZVw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1ib290XD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLWJyb2FkY2FzdFw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1jaXJjdWl0aWRcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3AtZnFkblw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1nZW5lcmF0ZS1uYW1lc1w+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1ob3N0XD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLWhvc3RzZmlsZVw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1pZ25vcmVcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3AtaWdub3JlLW5hbWVzXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLWxlYXNlLW1heFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1sZWFzZWZpbGVcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3AtbWFjXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLW1hdGNoXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLW5vLW92ZXJyaWRlXD4iCi1zeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLW9wdGlvbi1mb3JjZVw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1vcHRpb25cPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3Atb3B0aW9uLWZvcmNlXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLW9wdHNmaWxlXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLXByb3h5XD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLXJhbmdlXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLXJlbW90ZWlkXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLXNjcmlwdFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZGhjcC1zY3JpcHR1c2VyXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLXNlcXVlbnRpYWwtaXBcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3Atc3Vic2NyaWRcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRoY3AtdXNlcmNsYXNzXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkaGNwLXZlbmRvcmNsYXNzXD4iCi1zeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkb21haW4tbmVlZGVkXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypkbnMtZm9yd2FyZC1tYXhcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmRvbWFpblw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZG9tYWluLW5lZWRlZFw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZWRucy1wYWNrZXQtbWF4XD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccyplbmFibGUtZGJ1c1w+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZW5hYmxlLXRmdHBcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmV4Y2VwdC1pbnRlcmZhY2VcPiIKQEAgLTExMCwxNyArMTQwLDI0IEBACiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypmaWx0ZXJ3aW4ya1w+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqZ3JvdXBcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmludGVyZmFjZVw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqaW50ZXJmYWNlLW5hbWVcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmtlZXAtaW4tZm9yZWdyb3VuZFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbGVhc2VmaWxlLXJvXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypsaXN0ZW4tYWRkcmVzc1w+Igotc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbG9jYWwtdHRsXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypsb2NhbFw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbG9jYWwtdHRsXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypsb2NhbGlzZS1xdWVyaWVzXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypsb2NhbG14XD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypsb2ctYXN5bmNcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmxvZy1kaGNwXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypsb2ctZmFjaWxpdHlcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKmxvZy1xdWVyaWVzXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccyptYXgtdHRsXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccyptaW4tcG9ydFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbXgtaG9zdFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbXgtdGFyZ2V0XD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypuYXB0ci1yZWNvcmRcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKm5lZy10dGxcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKm5vLWRhZW1vblw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbm8tZGhjcC1pbnRlcmZhY2VcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKm5vLWhvc3RzXD4iCkBAIC0xMjgsMTEgKzE2NSwxNSBAQAogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbm8tcGluZ1w+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbm8tcG9sbFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqbm8tcmVzb2x2XD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypwaWQtZmlsZVw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqcG9ydFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqcHJveHktZG5zc2VjXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypwdHItcmVjb3JkXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypweGUtcHJvbXB0XD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypweGUtc2VydmljZVw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqcXVlcnktcG9ydFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqcmVhZC1ldGhlcnNcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnJlYmluZC1kb21haW4tb2tcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnJlYmluZC1sb2NhbGhvc3Qtb2tcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnJlc29sdi1maWxlXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypzZWxmbXhcPiIKQEAgLTE0MCwxMiArMTgxLDE3IEBACiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypzcnYtaG9zdFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqc3RvcC1kbnMtcmViaW5kXD4iCiBzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccypzdHJpY3Qtb3JkZXJcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnRhZy1pZlw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqdGVzdFw+Igorc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqdGZ0cC1tYXhcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnRmdHAtbm8tYmxvY2tzaXplXD4iCitzeW4gbWF0Y2ggRG5zbWFzcUtleXdvcmQgICAgIl5ccyp0ZnRwLXBvcnQtcmFuZ2VcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnRmdHAtcm9vdFw+Igogc3luIG1hdGNoIERuc21hc3FLZXl3b3JkICAgICJeXHMqdGZ0cC1zZWN1cmVcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnRmdHAtdW5pcXVlLXJvb3RcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnR4dC1yZWNvcmRcPiIKIHN5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnVzZXJcPiIKK3N5biBtYXRjaCBEbnNtYXNxS2V5d29yZCAgICAiXlxzKnZlcnNpb25cPiIKIAogCiBpZiBiOmRuc21hc3FfYmFja3Jnb3VuZF9saWdodCA9PSAxCkBAIC0xNjUsOSArMjExLDEyIEBACiBoaSBkZWYgbGluayBEbnNtYXNxTWFjCQlQcmVwcm9jCiBoaSBkZWYgbGluayBEbnNtYXNxVGltZQkJUHJlcHJvYwogaGkgZGVmIGxpbmsgRG5zbWFzcUNvbW1lbnQJQ29tbWVudAoraGkgZGVmIGxpbmsgRG5zbWFzcVRyYWlsU3BhY2UJRGlmZkRlbGV0ZQogaGkgZGVmIGxpbmsgRG5zbWFzcVN0cmluZwlDb25zdGFudAogaGkgZGVmIGxpbmsgRG5zbWFzcVZhbHVlcwlOb3JtYWwKIAotCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJkbnNtYXNxIgogCitsZXQgJmNwbyA9IHM6a2VlcGNwbwordW5sZXQgczprZWVwY3BvCisKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Rvc2luaS52aW0gYi9ydW50aW1lL3N5bnRheC9kb3NpbmkudmltCmluZGV4IGUwODI4YmIuLmU0NzRmMjEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Rvc2luaS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZG9zaW5pLnZpbQpAQCAtMSwxMCArMSwxMiBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgICAgICAgQ29uZmlndXJhdGlvbiBGaWxlIChpbmkgZmlsZSkgZm9yIE1TRE9TL01TIFdpbmRvd3MKLSIgVmVyc2lvbjogICAgICAgICAgICAgICAgMi4wCisiIFZlcnNpb246ICAgICAgICAgICAgICAgIDIuMQogIiBPcmlnaW5hbCBBdXRob3I6ICAgICAgICBTZWFuIE0uIE1jS2VlIDxtY2tlZUBtaXNzbGluay5uZXQ+CiAiIFByZXZpb3VzIE1haW50YWluZXI6ICAgIE5pbWEgVGFsZWJpIDxuaW1hQGl0Lm5ldC5hdT4KICIgQ3VycmVudCBNYWludGFpbmVyOiAgICAgSG9uZyBYdSA8eHVoZGV2QGdtYWlsLmNvbT4KLSIgTGFzdCBDaGFuZ2U6ICAgICAgICAgICAgMjAxMSBKdWwgMjEKKyIgSG9tZXBhZ2U6ICAgICAgICAgICAgICAgaHR0cDovL3d3dy52aW0ub3JnL3NjcmlwdHMvc2NyaXB0LnBocD9zY3JpcHRfaWQ9Mzc0NworIiAgICAgICAgICAgICAgICAgICAgICAgICBodHRwczovL2JpdGJ1Y2tldC5vcmcveHVoZGV2L3N5bnRheC1kb3NpbmkudmltCisiIExhc3QgQ2hhbmdlOiAgICAgICAgICAgIDIwMTEgTm92IDgKIAogCiAiIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwpAQCAtMTgsNyArMjAsNiBAQAogIiBzaHV0IGNhc2Ugb2ZmCiBzeW4gY2FzZSBpZ25vcmUKIAotc3luIG1hdGNoICBkb3NpbmlCb29sICAgICAiXDxcKHllc1x8bm9cfHlcfG5cfHRydWVcfGZhbHNlXClcPiIKIHN5biBtYXRjaCAgZG9zaW5pTnVtYmVyICAgIlw8XGRcK1w+Igogc3luIG1hdGNoICBkb3NpbmlOdW1iZXIgICAiXDxcZCpcLlxkXCtcPiIKIHN5biBtYXRjaCAgZG9zaW5pTnVtYmVyICAgIlw8XGRcK2VbKy1dXD1cZFwrXD4iCkBAIC0zNyw3ICszOCw2IEBACiAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAgIGVuZGlmCiAKLSAgSGlMaW5rIGRvc2luaUJvb2wgICAgIEJvb2xlYW4KICAgSGlMaW5rIGRvc2luaU51bWJlciAgIE51bWJlcgogICBIaUxpbmsgZG9zaW5pSGVhZGVyICAgU3BlY2lhbAogICBIaUxpbmsgZG9zaW5pQ29tbWVudCAgQ29tbWVudApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ2l0b2xpdGUudmltIGIvcnVudGltZS9zeW50YXgvZ2l0b2xpdGUudmltCmluZGV4IDdkOTNjOTYuLjY5NjNhYzcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dpdG9saXRlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9naXRvbGl0ZS52aW0KQEAgLTIsNyArMiw3IEBACiAiIExhbmd1YWdlOglnaXRvbGl0ZSBjb25maWd1cmF0aW9uCiAiIFVSTDoJCWh0dHBzOi8vZ2l0aHViLmNvbS90bWF0aWxhaS9naXRvbGl0ZS52aW0KICIgTWFpbnRhaW5lcjoJVGVlbXUgTWF0aWxhaW5lbiA8dGVlbXUubWF0aWxhaW5lbkBpa2kuZmk+Ci0iIExhc3QgQ2hhbmdlOgkyMDExLTEwLTA1CisiIExhc3QgQ2hhbmdlOgkyMDExLTEwLTE4CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMjAsNyArMjAsNyBAQAogc3luIG1hdGNoCWdpdG9saXRlUmVwb0xpbmUJIi4qIiBjb250YWluZWQgdHJhbnNwYXJlbnQgY29udGFpbnM9Z2l0b2xpdGVHcm91cCxnaXRvbGl0ZVdpbGRSZXBvLGdpdG9saXRlQ3JlYXRvcixnaXRvbGl0ZUV4dENtZEhlbHBlcixnaXRvbGl0ZVJlcG9FcnJvcixnaXRvbGl0ZUNvbW1lbnQKIHN5biBtYXRjaAlnaXRvbGl0ZVVzZXJMaW5lCSIuKiIgY29udGFpbmVkIHRyYW5zcGFyZW50IGNvbnRhaW5zPWdpdG9saXRlR3JvdXAsZ2l0b2xpdGVQcmVQcm9jLGdpdG9saXRlVXNlckVycm9yLGdpdG9saXRlQ29tbWVudAogCi1zeW4gbWF0Y2gJZ2l0b2xpdGVXaWxkUmVwbwkiWyBcdD1dXEA8PVteIFx0XSpbXFxeJHwoKVtcXSo/e31dW14gXHRdKiIgY29udGFpbmVkIGNvbnRhaW5zPWdpdG9saXRlQ3JlYXRvcixnaXRvbGl0ZVJlcG9FcnJvcgorc3luIG1hdGNoCWdpdG9saXRlV2lsZFJlcG8JIlsgXHQ9XVxAPD1bXiBcdF0qW1xcXiR8KClbXF0qP3t9LF1bXiBcdF0qIiBjb250YWluZWQgY29udGFpbnM9Z2l0b2xpdGVDcmVhdG9yLGdpdG9saXRlUmVwb0Vycm9yCiBzeW4gbWF0Y2gJZ2l0b2xpdGVHcm91cAkJIlsgXHQ9XVxAPD1AW14gXHRdXCsiIGNvbnRhaW5lZCBjb250YWlucz1naXRvbGl0ZVVzZXJFcnJvcgogCiBzeW4ga2V5d29yZAlnaXRvbGl0ZUNyZWF0b3IJCUNSRUFURVIgQ1JFQVRPUiBjb250YWluZWQKQEAgLTMwLDcgKzMwLDcgQEAKIHN5biBtYXRjaAlnaXRvbGl0ZUV4dENtZAkJInJzeW5jXChcc1x8JFwpIiBjb250YWluZWQKIAogIiBJbGxlZ2FsIGNoYXJhY3RlcnMKLXN5biBtYXRjaAlnaXRvbGl0ZVJlcG9FcnJvcgkiW14gXHQwLTlhLXpBLVouX0ArL1xcXiR8KClbXF0qP3t9LV1cKyIgY29udGFpbmVkCitzeW4gbWF0Y2gJZ2l0b2xpdGVSZXBvRXJyb3IJIlteIFx0MC05YS16QS1aLl9AKy9cXF4kfCgpW1xdKj97fSwtXVwrIiBjb250YWluZWQKIHN5biBtYXRjaAlnaXRvbGl0ZVVzZXJFcnJvcgkiW14gXHQwLTlhLXpBLVouX0ArLV1cKyIgY29udGFpbmVkCiBzeW4gbWF0Y2gJZ2l0b2xpdGVTcGFjZUVycm9yCSJcc1wrIiBjb250YWluZWQKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ25hc2gudmltIGIvcnVudGltZS9zeW50YXgvZ25hc2gudmltCmluZGV4IDliOGU2MDcuLmRlYTNkMDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2duYXNoLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9nbmFzaC52aW0KQEAgLTIsNyArMiw4IEBACiAiIExhbmd1YWdlOiAJZ25hc2goMSkgY29uZmlndXJhdGlvbiBmaWxlcwogIgkJaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2duYXNoL21hbnVhbC9nbmFzaHVzZXIuaHRtbCNnbmFzaHJjCiAiIE1haW50YWluZXI6IAlUaGlsbyBTaXggPFQuU2l4QGdteC5kZT4KLSIgTGFzdCBDaGFuZ2U6IAkyMDExIEp1bCAwMgorIiBMYXN0IENoYW5nZTogCTIwMTEgRGVjIDExCisiIE1vZGVsaW5lOgl2aW06IHRzPTg6c3c9MjpzdHM9MjoKICIgQ3JlZGlkdHM6CWRlcml2ZWQgZnJvbSByZWFkbGluZS52aW0KICIJCU5pa29sYWkgV2VpYnVsbAogIgpAQCAtMTEsNyArMTIsNyBAQAogIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogaWYgdmVyc2lvbiA8IDYwMAogICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cyAoImI6Y3VycmVudF9zeW50YXgiKQorZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpIHx8ICZjb21wYXRpYmxlCiAgICAgZmluaXNoCiBlbmRpZgogCkBAIC0yNywxMiArMjgsMTAgQEAKIHN5biBjYXNlIGlnbm9yZQogc3luIGtleXdvcmQgR25hc2hPbgkgICAgT04gWUVTIFRSVUUKIHN5biBrZXl3b3JkIEduYXNoT2ZmCSAgICBPRkYgTk8gRkFMU0UKLXN5biBjYXNlIG1hdGNoCiAKIHN5biBtYXRjaCBHbmFzaFNldAkgICAgJ15ccypzZXRcPicKIHN5biBtYXRjaCBHbmFzaFNldAkgICAgJ15ccyphcHBlbmRcPicKIAotc3luIGNhc2UgaWdub3JlCiBzeW4gbWF0Y2ggR25hc2hLZXl3b3JkCSAgICAnXDxDZXJ0RGlyXD4nCiBzeW4gbWF0Y2ggR25hc2hLZXl3b3JkICAgICAgJ1w8QVNDb2RpbmdFcnJvcnNWZXJib3NpdHlcPicKIHN5biBtYXRjaCBHbmFzaEtleXdvcmQgICAgICAnXDxDZXJ0RmlsZVw+JwpAQCAtOTEsMyArOTAsNCBAQAogaGkgZGVmIGxpbmsgR25hc2hLZXl3b3JkICAgIEtleXdvcmQKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZ25hc2giCisKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2hlbHAudmltIGIvcnVudGltZS9zeW50YXgvaGVscC52aW0KaW5kZXggOThjNDBmNS4uZDMwMDJhNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaGVscC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaGVscC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJVmltIGhlbHAgZmlsZQogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciAoQnJhbUB2aW0ub3JnKQotIiBMYXN0IENoYW5nZToJMjAxMSBKdWwgMTEKKyIgTGFzdCBDaGFuZ2U6CTIwMTEgRGVjIDAzCiAKICIgUXVpdCB3aGVuIGEgKGN1c3RvbSkgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQpAQCAtMjksNiArMjksNyBAQAogICBzeW4gbWF0Y2ggaGVscFN0YXIJCWNvbnRhaW5lZCAiXCoiCiBlbmRpZgogc3luIG1hdGNoIGhlbHBOb3JtYWwJCSJ8Lio9PT09KnwiCitzeW4gbWF0Y2ggaGVscE5vcm1hbAkJInx8fCIKIHN5biBtYXRjaCBoZWxwTm9ybWFsCQkiOnx2aW06fCIJIiBmb3IgOmhlbHAgbW9kZWxpbmUKIHN5biBtYXRjaCBoZWxwVmltCQkiVmltIHZlcnNpb24gWzAtOS5hLXpdXCsiCiBzeW4gbWF0Y2ggaGVscFZpbQkJIlZJTSBSRUZFUkVOQ0UuKiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xwYy52aW0gYi9ydW50aW1lL3N5bnRheC9scGMudmltCmluZGV4IDc2NjVjMWEuLmU5NDhmM2QgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xwYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbHBjLnZpbQpAQCAtMiw3ICsyLDcgQEAKICIgTGFuZ3VhZ2U6CUxQQwogIiBNYWludGFpbmVyOglTaGl6aHUgUGFuIDxwb2V0QG11ZGJ1aWxkZXIubmV0PgogIiBVUkw6CQlodHRwOi8vcG9ldC50b211ZC5jb20vcHViL2xwYy52aW0uYnoyCi0iIExhc3QgQ2hhbmdlOgkyMDAzIE1heSAxMQorIiBMYXN0IENoYW5nZToJMjAxMSBEZWMgMTAgYnkgVGhpbG8gU2l4CiAiIENvbW1lbnRzOglJZiB5b3UgYXJlIHVzaW5nIFZpbSA2LjIgb3IgbGF0ZXIsIHNlZSA6aCBscGMudmltIGZvcgogIgkJZmlsZSB0eXBlIHJlY29nbml6aW5nLCBpZiBub3QsIHlvdSBoYWQgdG8gdXNlIG1vZGVsaW5lLgogCkBAIC0xNyw2ICsxNyw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiAiIE5vZHVsZTogS2V5d29yZHMge3t7MQogCiAiIExQQyBrZXl3b3JkcwpAQCAtMzQ1LDcgKzM0OCw2IEBACiBzZXRsb2NhbCBjaW5kZW50CiBzZXRsb2NhbCBmby09dCBmbys9Y3JvcWwKIHNldGxvY2FsIGNvbW1lbnRzPXNPOipcIC0sbU86KlwgXCAsZXhPOiovLHMxOi8qLG1iOiosZXg6Ki8sOi8vCi1zZXQgY3BvLT1DCiAKICIgV2luMzIgY2FuIGZpbHRlciBmaWxlcyBpbiB0aGUgYnJvd3NlIGRpYWxvZwogaWYgaGFzKCJndWlfd2luMzIiKSAmJiAhZXhpc3RzKCJiOmJyb3dzZWZpbHRlciIpCkBAIC00NTEsNSArNDUzLDggQEAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibHBjIgogCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKKwogIiB2aW06dHM9ODpub3N0YTpzdz0yOmFpOnNpOgogIiB2aW02MDA6c2V0IGZkbT1tYXJrZXI6IH19fTEKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21haWwudmltIGIvcnVudGltZS9zeW50YXgvbWFpbC52aW0KaW5kZXggYzg5ZDJkZS4uZWQ3Y2EyMSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWFpbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbWFpbC52aW0KQEAgLTEsOCArMSw4IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJCU1haWwgZmlsZQogIiBQcmV2aW91cyBNYWludGFpbmVyOglGZWxpeCB2b24gTGVpdG5lciA8bGVpdG5lckBtYXRoLmZ1LWJlcmxpbi5kZT4KLSIgTWFpbnRhaW5lcjoJCUdhdXRhbSBJeWVyIDxnaTEyNDJAdXNlcnMuc291cmNlZm9yZ2UubmV0PgotIiBMYXN0IENoYW5nZToJCVRodSAwNiBOb3YgMjAwOCAxMDoxMDo1NSBQTSBQU1QKKyIgTWFpbnRhaW5lcjoJCUdJIDxhQGIuYz4sIHdoZXJlIGE9J2dpMTI0Mit2aW0nLCBiPSdnbWFpbCcsIGM9J2NvbScKKyIgTGFzdCBDaGFuZ2U6CQlTYXQgMDMgRGVjIDIwMTEgMTA6MzQ6MjcgUE0gRVNUCiAKICIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQpAQCAtODksNyArODksNyBAQAogaGkgZGVmIGxpbmsgbWFpbEhlYWRlckVtYWlsCW1haWxFbWFpbAogaGkgZGVmIGxpbmsgbWFpbEVtYWlsCQlTcGVjaWFsCiBoaSBkZWYgbGluayBtYWlsVVJMCQlTdHJpbmcKLWhpIGRlZiBsaW5rIG1haWxTdWJqZWN0CQlMaW5lTlIKK2hpIGRlZiBsaW5rIG1haWxTdWJqZWN0CQlUaXRsZQogaGkgZGVmIGxpbmsgbWFpbFF1b3RlZDEJCUNvbW1lbnQKIGhpIGRlZiBsaW5rIG1haWxRdW90ZWQzCQltYWlsUXVvdGVkMQogaGkgZGVmIGxpbmsgbWFpbFF1b3RlZDUJCW1haWxRdW90ZWQxCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcWxhbnl3aGVyZS52aW0gYi9ydW50aW1lL3N5bnRheC9zcWxhbnl3aGVyZS52aW0KaW5kZXggNWFiYWIzOC4uNTdlZDE1OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3FsYW55d2hlcmUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxbGFueXdoZXJlLnZpbQpAQCAtMSw0ICsxLDMgQEAKLQogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgIFNRTCwgQWRhcHRpdmUgU2VydmVyIEFueXdoZXJlCiAiIE1haW50YWluZXI6ICBEYXZpZCBGaXNoYnVybiA8ZmlzaGJ1cm4gYXQgaWFueXdoZXJlIGRvdCBjb20+CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zc2hjb25maWcudmltIGIvcnVudGltZS9zeW50YXgvc3NoY29uZmlnLnZpbQppbmRleCA0NTk0N2YyLi5jMmQ5N2RkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zc2hjb25maWcudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NzaGNvbmZpZy52aW0KQEAgLTEsNyArMSwxMiBAQAogIiBWaW0gc3ludGF4IGZpbGUKLSIgTGFuZ3VhZ2U6IE9wZW5TU0ggY2xpZW50IGNvbmZpZ3VyYXRpb24gZmlsZSAoc3NoX2NvbmZpZykKLSIgTWFpbnRhaW5lcjogRGF2aWQgTmVjYXMgKFlldGkpIDx5ZXRpQHBoeXNpY3MubXVuaS5jej4KLSIgTGFzdCBDaGFuZ2U6IDIwMDktMDctMDkKKyIgTGFuZ3VhZ2U6CU9wZW5TU0ggY2xpZW50IGNvbmZpZ3VyYXRpb24gZmlsZSAoc3NoX2NvbmZpZykKKyIgQXV0aG9yOglEYXZpZCBOZWNhcyAoWWV0aSkKKyIgTWFpbnRhaW5lcjogICBMZW9uYXJkIEVocmVuZnJpZWQgPGxlb25hcmQuZWhyZW5mcmllZEB3ZWIuZGU+CQorIiBNb2RpZmllZCBCeToJVGhpbG8gU2l4CisiIE9yaWdpbmFsbHk6CTIwMDktMDctMDkKKyIgTGFzdCBDaGFuZ2U6CTIwMTEgT2N0IDMxCisiIFNTSCBWZXJzaW9uOgk1LjlwMQorIgogCiAiIFNldHVwCiBpZiB2ZXJzaW9uID49IDYwMApAQCAtMTgsNzAgKzIzLDE2MSBAQAogICBzZXQgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3CiBlbmRpZgogCi1zeW4gY2FzZSBpZ25vcmUKKworIiBjYXNlIG9uCitzeW4gY2FzZSBtYXRjaAorCiAKICIgQ29tbWVudHMKLXN5biBtYXRjaCBzc2hjb25maWdDb21tZW50ICIjLiokIiBjb250YWlucz1zc2hjb25maWdUb2RvCi1zeW4ga2V5d29yZCBzc2hjb25maWdUb2RvIFRPRE8gRklYTUUgTk9UIGNvbnRhaW5lZAorc3luIG1hdGNoIHNzaGNvbmZpZ0NvbW1lbnQgIl4jLiokIiBjb250YWlucz1zc2hjb25maWdUb2RvCitzeW4gbWF0Y2ggc3NoY29uZmlnQ29tbWVudCAiXHMjLiokIiBjb250YWlucz1zc2hjb25maWdUb2RvCisKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ1RvZG8gVE9ETyBGSVhNRSBOT1RFIGNvbnRhaW5lZAorCiAKICIgQ29uc3RhbnRzCiBzeW4ga2V5d29yZCBzc2hjb25maWdZZXNObyB5ZXMgbm8gYXNrCiBzeW4ga2V5d29yZCBzc2hjb25maWdZZXNObyBhbnkgYXV0bwotc3luIGtleXdvcmQgc3NoY29uZmlnQ2lwaGVyIGFlczEyOC1jYmMgM2Rlcy1jYmMgYmxvd2Zpc2gtY2JjIGNhc3QxMjgtY2JjCi1zeW4ga2V5d29yZCBzc2hjb25maWdDaXBoZXIgYWVzMTkyLWNiYyBhZXMyNTYtY2JjIGFlczEyOC1jdHIgYWVzMjU2LWN0cgotc3luIGtleXdvcmQgc3NoY29uZmlnQ2lwaGVyIGFyY2ZvdXIgYXJjZm91cjEyOCBhcmNmb3VyMjU2IGNhc3QxMjgtY2JjCitzeW4ga2V5d29yZCBzc2hjb25maWdZZXNObyBmb3JjZSBhdXRvYXNrIG5vbmUKKworc3luIGtleXdvcmQgc3NoY29uZmlnQ2lwaGVyICAzZGVzIGJsb3dmaXNoCitzeW4ga2V5d29yZCBzc2hjb25maWdDaXBoZXJzIGFlczEyOC1jYmMgM2Rlcy1jYmMgYmxvd2Zpc2ggYmxvd2Zpc2gtY2JjIGNhc3QxMjgtY2JjCitzeW4ga2V5d29yZCBzc2hjb25maWdDaXBoZXJzIGFlczE5Mi1jYmMgYWVzMjU2LWNiYyBhZXMxMjgtY3RyIGFlczE5Mi1jdHIgYWVzMjU2LWN0cgorc3luIGtleXdvcmQgc3NoY29uZmlnQ2lwaGVycyBhcmNmb3VyIGFyY2ZvdXIxMjggYXJjZm91cjI1NiBjYXN0MTI4LWNiYworCiBzeW4ga2V5d29yZCBzc2hjb25maWdNQUMgaG1hYy1tZDUgaG1hYy1zaGExIGhtYWMtcmlwZW1kMTYwIGhtYWMtc2hhMS05Ngogc3luIGtleXdvcmQgc3NoY29uZmlnTUFDIGhtYWMtbWQ1LTk2Ci1zeW4gbWF0Y2ggc3NoY29uZmlnTUFDICJcPHVtYWMtNjRAb3BlbnNzaFwuY29tXD4iCitzeW4ga2V5d29yZCBzc2hjb25maWdNQUMgaG1hYy1zaGEyLTI1NiBobWFjLXNoYTItMjU2LTk2IGhtYWMtc2hhMi01MTIKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ01BQyBobWFjLXNoYTItNTEyLTk2CitzeW4gbWF0Y2ggICBzc2hjb25maWdNQUMgIlw8dW1hYy02NEBvcGVuc3NoXC5jb21cPiIKKwogc3luIGtleXdvcmQgc3NoY29uZmlnSG9zdEtleUFsZyBzc2gtcnNhIHNzaC1kc3MKLXN5biBrZXl3b3JkIHNzaGNvbmZpZ1ByZWZlcnJlZEF1dGggaG9zdGJhc2VkIHB1YmxpY2tleSBwYXNzd29yZAorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxlY2RzYS1zaGEyLW5pc3RwMjU2LWNlcnQtdjAxQG9wZW5zc2hcLmNvbVw+Igorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxlY2RzYS1zaGEyLW5pc3RwMzg0LWNlcnQtdjAxQG9wZW5zc2hcLmNvbVw+Igorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxlY2RzYS1zaGEyLW5pc3RwNTIxLWNlcnQtdjAxQG9wZW5zc2hcLmNvbVw+Igorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxzc2gtcnNhLWNlcnQtdjAxQG9wZW5zc2hcLmNvbVw+Igorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxzc2gtZHNzLWNlcnQtdjAxQG9wZW5zc2hcLmNvbVw+Igorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxzc2gtcnNhLWNlcnQtdjAwQG9wZW5zc2hcLmNvbVw+Igorc3luIG1hdGNoICAgc3NoY29uZmlnSG9zdEtleUFsZyAiXDxzc2gtZHNzLWNlcnQtdjAwQG9wZW5zc2hcLmNvbVw+Igorc3luIGtleXdvcmQgc3NoY29uZmlnSG9zdEtleUFsZyBlY2RzYS1zaGEyLW5pc3RwMjU2IGVjZHNhLXNoYTItbmlzdHAzODQgZWNkc2Etc2hhMi1uaXN0cDUyMQorCitzeW4ga2V5d29yZCBzc2hjb25maWdQcmVmZXJyZWRBdXRoIGhvc3RiYXNlZCBwdWJsaWNrZXkgcGFzc3dvcmQgZ3NzYXBpLXdpdGgtbWljCiBzeW4ga2V5d29yZCBzc2hjb25maWdQcmVmZXJyZWRBdXRoIGtleWJvYXJkLWludGVyYWN0aXZlCisKIHN5biBrZXl3b3JkIHNzaGNvbmZpZ0xvZ0xldmVsIFFVSUVUIEZBVEFMIEVSUk9SIElORk8gVkVSQk9TRQogc3luIGtleXdvcmQgc3NoY29uZmlnTG9nTGV2ZWwgREVCVUcgREVCVUcxIERFQlVHMiBERUJVRzMKIHN5biBrZXl3b3JkIHNzaGNvbmZpZ1N5c0xvZ0ZhY2lsaXR5IERBRU1PTiBVU0VSIEFVVEggQVVUSFBSSVYgTE9DQUwwIExPQ0FMMQogc3luIGtleXdvcmQgc3NoY29uZmlnU3lzTG9nRmFjaWxpdHkgTE9DQUwyIExPQ0FMMyBMT0NBTDQgTE9DQUw1IExPQ0FMNiBMT0NBTDcKLXN5biBtYXRjaCBzc2hjb25maWdWYXIgIiVbcmhwbGR1bl1cPiIKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0FkZHJlc3NGYW1pbHkgIGluZXQgaW5ldDYKKworc3luIG1hdGNoICAgc3NoY29uZmlnSVBRb1MJImFmMVsxMjM0XSIKK3N5biBtYXRjaCAgIHNzaGNvbmZpZ0lQUW9TCSJhZjJbMjNdIgorc3luIG1hdGNoICAgc3NoY29uZmlnSVBRb1MJImFmM1sxMjNdIgorc3luIG1hdGNoICAgc3NoY29uZmlnSVBRb1MJImFmNFsxMjNdIgorc3luIG1hdGNoICAgc3NoY29uZmlnSVBRb1MJImNzWzAtN10iCitzeW4ga2V5d29yZCBzc2hjb25maWdJUFFvUwllZiBsb3dkZWxheSB0aHJvdWdocHV0IHJlbGlhYmlsaXR5CitzeW4ga2V5d29yZCBzc2hjb25maWdLYmRJbnRlcmFjdGl2ZSBic2RhdXRoIHBhbSBza2V5CisKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleEFsZ28JZWNkaC1zaGEyLW5pc3RwMjU2IGVjZGgtc2hhMi1uaXN0cDM4NCBlY2RoLXNoYTItbmlzdHA1MjEKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleEFsZ28JZGlmZmllLWhlbGxtYW4tZ3JvdXAtZXhjaGFuZ2Utc2hhMjU2CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXhBbGdvCWRpZmZpZS1oZWxsbWFuLWdyb3VwLWV4Y2hhbmdlLXNoYTEKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleEFsZ28JZGlmZmllLWhlbGxtYW4tZ3JvdXAxNC1zaGExCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXhBbGdvCWRpZmZpZS1oZWxsbWFuLWdyb3VwMS1zaGExCisKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ1R1bm5lbAlwb2ludC10by1wb2ludCBldGhlcm5ldAorCitzeW4gbWF0Y2ggc3NoY29uZmlnVmFyICIlW3JocGxMZHVuXVw+Igogc3luIG1hdGNoIHNzaGNvbmZpZ1NwZWNpYWwgIlsqP10iCiBzeW4gbWF0Y2ggc3NoY29uZmlnTnVtYmVyICJcZFwrIgogc3luIG1hdGNoIHNzaGNvbmZpZ0hvc3RQb3J0ICJcPFwoXGRcezEsM31cLlwpXHszfVxkXHsxLDN9XCg6XGRcK1wpXD9cPiIKIHN5biBtYXRjaCBzc2hjb25maWdIb3N0UG9ydCAiXDxcKFstYS16QS1aMC05XVwrXC5cKVwrWy1hLXpBLVowLTldXHsyLH1cKDpcZFwrXClcP1w+Igogc3luIG1hdGNoIHNzaGNvbmZpZ0hvc3RQb3J0ICJcPFwoXHhceyw0fTpcKVwrXHhceyw0fVs6L11cZFwrXD4iCiAKKworIiBjYXNlIG9mZgorc3luIGNhc2UgaWdub3JlCisKKwogIiBLZXl3b3Jkcwogc3luIGtleXdvcmQgc3NoY29uZmlnSG9zdFNlY3QgSG9zdAorCiBzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEFkZHJlc3NGYW1pbHkKLXN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQmF0Y2hNb2RlIEJpbmRBZGRyZXNzCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIENoYWxsZW5nZVJlc3BvbnNlQXV0aGVudGljYXRpb24gQ2hlY2tIb3N0SVAKLXN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ2lwaGVyIENpcGhlcnMgQ2xlYXJBbGxGb3J3YXJkaW5ncwotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBDb21wcmVzc2lvbiBDb21wcmVzc2lvbkxldmVsIENvbm5lY3RUaW1lb3V0Ci1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIENvbm5lY3Rpb25BdHRlbXB0cyBDb250cm9sTWFzdGVyCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIENvbnRyb2xQYXRoIER5bmFtaWNGb3J3YXJkCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEVuYWJsZVNTSEtleXNpZ24gRXNjYXBlQ2hhciBFeGl0T25Gb3J3YXJkRmFpbHVyZQotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBGb3J3YXJkQWdlbnQgRm9yd2FyZFgxMQorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBCYXRjaE1vZGUKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQmluZEFkZHJlc3MKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ2hhbGxlbmdlUmVzcG9uc2VBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBDaGVja0hvc3RJUAorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBDaXBoZXIKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ2lwaGVycworc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBDbGVhckFsbEZvcndhcmRpbmdzCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIENvbXByZXNzaW9uCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIENvbXByZXNzaW9uTGV2ZWwKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ29ubmVjdFRpbWVvdXQKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ29ubmVjdGlvbkF0dGVtcHRzCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIENvbnRyb2xNYXN0ZXIKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ29udHJvbFBhdGgKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgQ29udHJvbFBlcnNpc3QKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgRHluYW1pY0ZvcndhcmQKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgRW5hYmxlU1NIS2V5c2lnbgorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBFc2NhcGVDaGFyCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEV4aXRPbkZvcndhcmRGYWlsdXJlCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEZvcndhcmRBZ2VudAorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBGb3J3YXJkWDExCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEZvcndhcmRYMTFUaW1lb3V0CiBzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEZvcndhcmRYMTFUcnVzdGVkCiBzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSUF1dGhlbnRpY2F0aW9uCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSURlbGVnYXRlQ3JlZGVudGlhbHMgR2F0ZXdheVBvcnRzCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSUNsaWVudElkZW50aXR5CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSURlbGVnYXRlQ3JlZGVudGlhbHMKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgR1NTQVBJS2V5RXhjaGFuZ2UKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgR1NTQVBJUmVuZXdhbEZvcmNlc1Jla2V5CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSVNlcnZlcklkZW50aXR5CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSVRydXN0RE5TCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdTU0FQSVRydXN0RG5zCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEdhdGV3YXlQb3J0cwogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBHbG9iYWxLbm93bkhvc3RzRmlsZQotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBIb3N0S2V5QWxnb3JpdGhtcyBIYXNoS25vd25Ib3N0cwotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBIb3N0S2V5QWxpYXMgSG9zdE5hbWUgSG9zdGJhc2VkQXV0aGVudGljYXRpb24KLXN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgSWRlbnRpdGllc09ubHkgSWRlbnRpdHlGaWxlCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEtiZEludGVyYWN0aXZlQXV0aGVudGljYXRpb24gS2JkSW50ZXJhY3RpdmVEZXZpY2VzCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIExvY2FsQ29tbWFuZCBMb2NhbEZvcndhcmQgTG9nTGV2ZWwKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgSGFzaEtub3duSG9zdHMKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgSG9zdEtleUFsZ29yaXRobXMKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgSG9zdEtleUFsaWFzCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEhvc3ROYW1lCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEhvc3RiYXNlZEF1dGhlbnRpY2F0aW9uCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIElQUW9TCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIElkZW50aXRpZXNPbmx5CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIElkZW50aXR5RmlsZQorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBLYmRJbnRlcmFjdGl2ZUF1dGhlbnRpY2F0aW9uCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIEtiZEludGVyYWN0aXZlRGV2aWNlcworc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBLZXhBbGdvcml0aG1zCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIExvY2FsQ29tbWFuZAorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBMb2NhbEZvcndhcmQKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgTG9nTGV2ZWwKIHN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgTUFDcwogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBOb0hvc3RBdXRoZW50aWNhdGlvbkZvckxvY2FsaG9zdAogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBOdW1iZXJPZlBhc3N3b3JkUHJvbXB0cwotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBQYXNzd29yZEF1dGhlbnRpY2F0aW9uIFBlcm1pdExvY2FsQ29tbWFuZAotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBQb3J0IFByZWZlcnJlZEF1dGhlbnRpY2F0aW9ucyBQcm90b2NvbAotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBQcm94eUNvbW1hbmQgUHVia2V5QXV0aGVudGljYXRpb24KK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgUEtDUzExUHJvdmlkZXIKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgUGFzc3dvcmRBdXRoZW50aWNhdGlvbgogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBQZXJtaXRMb2NhbENvbW1hbmQKLXN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgUlNBQXV0aGVudGljYXRpb24gUmVtb3RlRm9yd2FyZCBSZWtleUxpbWl0CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFBvcnQKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgUHJlZmVycmVkQXV0aGVudGljYXRpb25zCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFByb3RvY29sCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFByb3h5Q29tbWFuZAorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBQdWJrZXlBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBSU0FBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBSZWtleUxpbWl0CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFJlbW90ZUZvcndhcmQKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgUmVxdWVzdFRUWQogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBSaG9zdHNSU0FBdXRoZW50aWNhdGlvbgotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBTZW5kRW52IFNlcnZlckFsaXZlQ291bnRNYXggU2VydmVyQWxpdmVJbnRlcnZhbAotc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBTbWFydGNhcmREZXZpY2UgU3RyaWN0SG9zdEtleUNoZWNraW5nCi1zeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFR1bm5lbCBUdW5uZWxEZXZpY2UKLXN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgVENQS2VlcEFsaXZlIFVzZVByaXZpbGVnZWRQb3J0IFVzZXIKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgU2VuZEVudgorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBTZXJ2ZXJBbGl2ZUNvdW50TWF4CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFNlcnZlckFsaXZlSW50ZXJ2YWwKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgU21hcnRjYXJkRGV2aWNlCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFN0cmljdEhvc3RLZXlDaGVja2luZworc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBUQ1BLZWVwQWxpdmUKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgVHVubmVsCitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFR1bm5lbERldmljZQorc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBVc2VCbGFja2xpc3RlZEtleXMKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgVXNlUHJpdmlsZWdlZFBvcnQKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgVXNlcgogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBVc2VyS25vd25Ib3N0c0ZpbGUKLXN5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgVmVyaWZ5SG9zdEtleUROUyBWaXN1YWxIb3N0S2V5CitzeW4ga2V5d29yZCBzc2hjb25maWdLZXl3b3JkIFZlcmlmeUhvc3RLZXlETlMKK3N5biBrZXl3b3JkIHNzaGNvbmZpZ0tleXdvcmQgVmlzdWFsSG9zdEtleQogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBYQXV0aExvY2F0aW9uCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwpAQCAtMTAwLDEwICsxOTYsMTYgQEAKICAgSGlMaW5rIHNzaGNvbmZpZ0NvbnN0YW50ICAgICAgIENvbnN0YW50CiAgIEhpTGluayBzc2hjb25maWdZZXNObyAgICAgICAgICBzc2hjb25maWdFbnVtCiAgIEhpTGluayBzc2hjb25maWdDaXBoZXIgICAgICAgICBzc2hjb25maWdFbnVtCisgIEhpTGluayBzc2hjb25maWdDaXBoZXJzCSBzc2hjb25maWdFbnVtCiAgIEhpTGluayBzc2hjb25maWdNQUMgICAgICAgICAgICBzc2hjb25maWdFbnVtCiAgIEhpTGluayBzc2hjb25maWdIb3N0S2V5QWxnICAgICBzc2hjb25maWdFbnVtCiAgIEhpTGluayBzc2hjb25maWdMb2dMZXZlbCAgICAgICBzc2hjb25maWdFbnVtCiAgIEhpTGluayBzc2hjb25maWdTeXNMb2dGYWNpbGl0eSBzc2hjb25maWdFbnVtCisgIEhpTGluayBzc2hjb25maWdBZGRyZXNzRmFtaWx5ICBzc2hjb25maWdFbnVtCisgIEhpTGluayBzc2hjb25maWdJUFFvUwkJIHNzaGNvbmZpZ0VudW0KKyAgSGlMaW5rIHNzaGNvbmZpZ0tiZEludGVyYWN0aXZlIHNzaGNvbmZpZ0VudW0KKyAgSGlMaW5rIHNzaGNvbmZpZ0tleEFsZ28JIHNzaGNvbmZpZ0VudW0KKyAgSGlMaW5rIHNzaGNvbmZpZ1R1bm5lbAkgc3NoY29uZmlnRW51bQogICBIaUxpbmsgc3NoY29uZmlnUHJlZmVycmVkQXV0aCAgc3NoY29uZmlnRW51bQogICBIaUxpbmsgc3NoY29uZmlnVmFyICAgICAgICAgICAgc3NoY29uZmlnRW51bQogICBIaUxpbmsgc3NoY29uZmlnRW51bSAgICAgICAgICAgSWRlbnRpZmllcgpAQCAtMTE0LDMgKzIxNiw1IEBACiBlbmRpZgogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzc2hjb25maWciCisKKyIgdmltOnNldCB0cz04IHN3PTIgc3RzPTI6CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zc2hkY29uZmlnLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NzaGRjb25maWcudmltCmluZGV4IDk3ZWU4ZjguLjUzYmMwOWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NzaGRjb25maWcudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NzaGRjb25maWcudmltCkBAIC0xLDcgKzEsMTIgQEAKICIgVmltIHN5bnRheCBmaWxlCi0iIExhbmd1YWdlOiBPcGVuU1NIIHNlcnZlciBjb25maWd1cmF0aW9uIGZpbGUgKHNzaGRfY29uZmlnKQotIiBNYWludGFpbmVyOiBEYXZpZCBOZWNhcyAoWWV0aSkgPHlldGlAcGh5c2ljcy5tdW5pLmN6PgotIiBMYXN0IENoYW5nZTogMjAwOS0wNy0wOQorIiBMYW5ndWFnZToJT3BlblNTSCBzZXJ2ZXIgY29uZmlndXJhdGlvbiBmaWxlIChzc2hkX2NvbmZpZykKKyIgTWFpbnRhaW5lcjoJRGF2aWQgTmVjYXMgKFlldGkpCisiIE1haW50YWluZXI6ICAgTGVvbmFyZCBFaHJlbmZyaWVkIDxsZW9uYXJkLmVocmVuZnJpZWRAd2ViLmRlPgkKKyIgTW9kaWZpZWQgQnk6CVRoaWxvIFNpeAorIiBPcmlnaW5hbGx5OgkyMDA5LTA3LTA5CisiIExhc3QgQ2hhbmdlOgkyMDExIE9jdCAzMSAKKyIgU1NIIFZlcnNpb246CTUuOXAxCisiCiAKICIgU2V0dXAKIGlmIHZlcnNpb24gPj0gNjAwCkBAIC0xOCwyNyArMjMsNjMgQEAKICAgc2V0IGlza2V5d29yZD1fLC0sYS16LEEtWiw0OC01NwogZW5kaWYKIAotc3luIGNhc2UgaWdub3JlCisKKyIgY2FzZSBvbgorc3luIGNhc2UgbWF0Y2gKKwogCiAiIENvbW1lbnRzCi1zeW4gbWF0Y2ggc3NoZGNvbmZpZ0NvbW1lbnQgIiMuKiQiIGNvbnRhaW5zPXNzaGRjb25maWdUb2RvCi1zeW4ga2V5d29yZCBzc2hkY29uZmlnVG9kbyBUT0RPIEZJWE1FIE5PVCBjb250YWluZWQKK3N5biBtYXRjaCBzc2hkY29uZmlnQ29tbWVudCAiXiMuKiQiIGNvbnRhaW5zPXNzaGRjb25maWdUb2RvCitzeW4gbWF0Y2ggc3NoZGNvbmZpZ0NvbW1lbnQgIlxzIy4qJCIgY29udGFpbnM9c3NoZGNvbmZpZ1RvZG8KKworc3luIGtleXdvcmQgc3NoZGNvbmZpZ1RvZG8gVE9ETyBGSVhNRSBOT1RFIGNvbnRhaW5lZAogCiAiIENvbnN0YW50cwogc3luIGtleXdvcmQgc3NoZGNvbmZpZ1llc05vIHllcyBubyBub25lCisKIHN5biBrZXl3b3JkIHNzaGRjb25maWdBZGRyZXNzRmFtaWx5IGFueSBpbmV0IGluZXQ2CisKIHN5biBrZXl3b3JkIHNzaGRjb25maWdDaXBoZXIgYWVzMTI4LWNiYyAzZGVzLWNiYyBibG93ZmlzaC1jYmMgY2FzdDEyOC1jYmMKLXN5biBrZXl3b3JkIHNzaGRjb25maWdDaXBoZXIgYWVzMTkyLWNiYyBhZXMyNTYtY2JjIGFlczEyOC1jdHIgYWVzMjU2LWN0cgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0NpcGhlciBhZXMxOTItY2JjIGFlczI1Ni1jYmMgYWVzMTI4LWN0ciBhZXMxOTItY3RyIGFlczI1Ni1jdHIKIHN5biBrZXl3b3JkIHNzaGRjb25maWdDaXBoZXIgYXJjZm91ciBhcmNmb3VyMTI4IGFyY2ZvdXIyNTYgY2FzdDEyOC1jYmMKKwogc3luIGtleXdvcmQgc3NoZGNvbmZpZ01BQyBobWFjLW1kNSBobWFjLXNoYTEgaG1hYy1yaXBlbWQxNjAgaG1hYy1zaGExLTk2CiBzeW4ga2V5d29yZCBzc2hkY29uZmlnTUFDIGhtYWMtbWQ1LTk2Ci1zeW4gbWF0Y2ggc3NoZGNvbmZpZ01BQyAiXDx1bWFjLTY0QG9wZW5zc2hcLmNvbVw+Igorc3luIGtleXdvcmQgc3NoZGNvbmZpZ01BQyBobWFjLXNoYTItMjU2IGhtYWMtc2hhMjU2LTk2IGhtYWMtc2hhMi01MTIKK3N5biBrZXl3b3JkIHNzaGRjb25maWdNQUMgaG1hYy1zaGEyLTUxMi05Ngorc3luIG1hdGNoICAgc3NoZGNvbmZpZ01BQyAiXDx1bWFjLTY0QG9wZW5zc2hcLmNvbVw+IgorCiBzeW4ga2V5d29yZCBzc2hkY29uZmlnUm9vdExvZ2luIHdpdGhvdXQtcGFzc3dvcmQgZm9yY2VkLWNvbW1hbmRzLW9ubHkKKwogc3luIGtleXdvcmQgc3NoZGNvbmZpZ0xvZ0xldmVsIFFVSUVUIEZBVEFMIEVSUk9SIElORk8gVkVSQk9TRQogc3luIGtleXdvcmQgc3NoZGNvbmZpZ0xvZ0xldmVsIERFQlVHIERFQlVHMSBERUJVRzIgREVCVUczCiBzeW4ga2V5d29yZCBzc2hkY29uZmlnU3lzTG9nRmFjaWxpdHkgREFFTU9OIFVTRVIgQVVUSCBBVVRIUFJJViBMT0NBTDAgTE9DQUwxCiBzeW4ga2V5d29yZCBzc2hkY29uZmlnU3lzTG9nRmFjaWxpdHkgTE9DQUwyIExPQ0FMMyBMT0NBTDQgTE9DQUw1IExPQ0FMNiBMT0NBTDcKKworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0NvbXByZXNzaW9uICAgIGRlbGF5ZWQKKworc3luIG1hdGNoICAgc3NoZGNvbmZpZ0lQUW9TCSJhZjFbMTIzNF0iCitzeW4gbWF0Y2ggICBzc2hkY29uZmlnSVBRb1MJImFmMlsyM10iCitzeW4gbWF0Y2ggICBzc2hkY29uZmlnSVBRb1MJImFmM1sxMjNdIgorc3luIG1hdGNoICAgc3NoZGNvbmZpZ0lQUW9TCSJhZjRbMTIzXSIKK3N5biBtYXRjaCAgIHNzaGRjb25maWdJUFFvUwkiY3NbMC03XSIKK3N5biBrZXl3b3JkIHNzaGRjb25maWdJUFFvUwllZiBsb3dkZWxheSB0aHJvdWdocHV0IHJlbGlhYmlsaXR5CisKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXhBbGdvCWVjZGgtc2hhMi1uaXN0cDI1NiBlY2RoLXNoYTItbmlzdHAzODQgZWNkaC1zaGEyLW5pc3RwNTIxCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V4QWxnbwlkaWZmaWUtaGVsbG1hbi1ncm91cC1leGNoYW5nZS1zaGEyNTYKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXhBbGdvCWRpZmZpZS1oZWxsbWFuLWdyb3VwLWV4Y2hhbmdlLXNoYTEKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXhBbGdvCWRpZmZpZS1oZWxsbWFuLWdyb3VwMTQtc2hhMQorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleEFsZ28JZGlmZmllLWhlbGxtYW4tZ3JvdXAxLXNoYTEKKworc3luIGtleXdvcmQgc3NoZGNvbmZpZ1R1bm5lbAlwb2ludC10by1wb2ludCBldGhlcm5ldAorCitzeW4ga2V5d29yZCBzc2hkY29uZmlnU3Vic3lzdGVtIGludGVybmFsLXNmdHAKKworc3luIG1hdGNoIHNzaGRjb25maWdWYXIJICAgICIlW2h1XVw+Igorc3luIG1hdGNoIHNzaGRjb25maWdWYXIJICAgICIlJSIKKwogc3luIG1hdGNoIHNzaGRjb25maWdTcGVjaWFsICJbKj9dIgorCiBzeW4gbWF0Y2ggc3NoZGNvbmZpZ051bWJlciAiXGRcKyIKIHN5biBtYXRjaCBzc2hkY29uZmlnSG9zdFBvcnQgIlw8XChcZFx7MSwzfVwuXClcezN9XGRcezEsM31cKDpcZFwrXClcP1w+Igogc3luIG1hdGNoIHNzaGRjb25maWdIb3N0UG9ydCAiXDxcKFstYS16QS1aMC05XVwrXC5cKVwrWy1hLXpBLVowLTldXHsyLH1cKDpcZFwrXClcP1w+IgpAQCAtNDYsMzggKzg3LDkzIEBACiBzeW4gbWF0Y2ggc3NoZGNvbmZpZ0hvc3RQb3J0ICJcPFwoXHhceyw0fTpcKVwrXHhceyw0fTpcZFwrXD4iCiBzeW4gbWF0Y2ggc3NoZGNvbmZpZ1RpbWUgIlw8XChcZFwrW3NTbU1oSGREd1ddXClcK1w+IgogCisKKyIgY2FzZSBvZmYKK3N5biBjYXNlIGlnbm9yZQorCisKICIgS2V5d29yZHMKIHN5biBrZXl3b3JkIHNzaGRjb25maWdNYXRjaCBIb3N0IFVzZXIgR3JvdXAgQWRkcmVzcwotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQWNjZXB0RW52IEFkZHJlc3NGYW1pbHkgQWxsb3dBZ2VudEZvcndhcmRpbmcKLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEFsbG93R3JvdXBzIEFsbG93VGNwRm9yd2FyZGluZwotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQWxsb3dVc2VycyBBdXRob3JpemVkS2V5c0ZpbGUKKworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQWNjZXB0RW52CitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBBZGRyZXNzRmFtaWx5CitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBBbGxvd0FnZW50Rm9yd2FyZGluZworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQWxsb3dHcm91cHMKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEFsbG93VGNwRm9yd2FyZGluZworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQWxsb3dVc2Vycworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQXV0aG9yaXplZEtleXNGaWxlCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBBdXRob3JpemVkUHJpbmNpcGFsc0ZpbGUKIHN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEJhbm5lcgotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQ2hhbGxlbmdlUmVzcG9uc2VBdXRoZW50aWNhdGlvbiBDaHJvb3REaXJlY3RvcnkKLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIENpcGhlcnMgQ2xpZW50QWxpdmVDb3VudE1heAotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQ2xpZW50QWxpdmVJbnRlcnZhbCBDb21wcmVzc2lvbgotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgRGVueUdyb3VwcyBEZW55VXNlcnMKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIENoYWxsZW5nZVJlc3BvbnNlQXV0aGVudGljYXRpb24KK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIENocm9vdERpcmVjdG9yeQorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQ2lwaGVycworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQ2xpZW50QWxpdmVDb3VudE1heAorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQ2xpZW50QWxpdmVJbnRlcnZhbAorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgQ29tcHJlc3Npb24KK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIERlYmlhbkJhbm5lcgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgRGVueUdyb3Vwcworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgRGVueVVzZXJzCiBzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBGb3JjZUNvbW1hbmQKLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEdhdGV3YXlQb3J0cyBHU1NBUElBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgR1NTQVBJQXV0aGVudGljYXRpb24KIHN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEdTU0FQSUNsZWFudXBDcmVkZW50aWFscwotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgSG9zdGJhc2VkQXV0aGVudGljYXRpb24gSG9zdEtleQotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgSWdub3JlUmhvc3RzIElnbm9yZVVzZXJLbm93bkhvc3RzCi1zeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBLZXJiZXJvc0F1dGhlbnRpY2F0aW9uIEtlcmJlcm9zR2V0QUZTVG9rZW4KLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEtlcmJlcm9zT3JMb2NhbFBhc3N3ZCBLZXJiZXJvc1RpY2tldENsZWFudXAKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEdTU0FQSUtleUV4Y2hhbmdlCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBHU1NBUElTdG9yZUNyZWRlbnRpYWxzT25SZWtleQorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgR1NTQVBJU3RyaWN0QWNjZXB0b3JDaGVjaworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgR2F0ZXdheVBvcnRzCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBIb3N0Q2VydGlmaWNhdGUKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEhvc3RLZXkKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEhvc3RiYXNlZEF1dGhlbnRpY2F0aW9uCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBIb3N0YmFzZWRVc2VzTmFtZUZyb21QYWNrZXRPbmx5CitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBJUFFvUworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgSWdub3JlUmhvc3RzCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBJZ25vcmVVc2VyS25vd25Ib3N0cworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgS2JkSW50ZXJhY3RpdmVBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgS2VyYmVyb3NBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgS2VyYmVyb3NHZXRBRlNUb2tlbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgS2VyYmVyb3NPckxvY2FsUGFzc3dkCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBLZXJiZXJvc1RpY2tldENsZWFudXAKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEtleEFsZ29yaXRobXMKIHN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIEtleVJlZ2VuZXJhdGlvbkludGVydmFsCi1zeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBMaXN0ZW5BZGRyZXNzIExvZ2luR3JhY2VUaW1lIExvZ0xldmVsCi1zeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBNQUNzIE1hdGNoIE1heEF1dGhUcmllcyBNYXhTZXNzaW9ucyBNYXhTdGFydHVwcwotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGFzc3dvcmRBdXRoZW50aWNhdGlvbiBQZXJtaXRFbXB0eVBhc3N3b3Jkcwotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGVybWl0Um9vdExvZ2luIFBlcm1pdE9wZW4gUGVybWl0VHVubmVsCi1zeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBQZXJtaXRVc2VyRW52aXJvbm1lbnQgUGlkRmlsZSBQb3J0Ci1zeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBQcmludExhc3RMb2cgUHJpbnRNb3RkIFByb3RvY29sCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBMaXN0ZW5BZGRyZXNzCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBMb2dMZXZlbAorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgTG9naW5HcmFjZVRpbWUKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIE1BQ3MKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIE1hdGNoCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBNYXhBdXRoVHJpZXMKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIE1heFNlc3Npb25zCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBNYXhTdGFydHVwcworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGFzc3dvcmRBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGVybWl0QmxhY2tsaXN0ZWRLZXlzCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBQZXJtaXRFbXB0eVBhc3N3b3Jkcworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGVybWl0T3Blbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGVybWl0Um9vdExvZ2luCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBQZXJtaXRUdW5uZWwKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFBlcm1pdFVzZXJFbnZpcm9ubWVudAorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUGlkRmlsZQorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUG9ydAorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUHJpbnRMYXN0TG9nCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBQcmludE1vdGQKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFByb3RvY29sCiBzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBQdWJrZXlBdXRoZW50aWNhdGlvbgotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUmhvc3RzUlNBQXV0aGVudGljYXRpb24gUlNBQXV0aGVudGljYXRpb24KLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFNlcnZlcktleUJpdHMgU2hvd1BhdGNoTGV2ZWwgU3RyaWN0TW9kZXMKLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFN1YnN5c3RlbSBTeXNsb2dGYWNpbGl0eQorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgUlNBQXV0aGVudGljYXRpb24KK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFJldm9rZWRLZXlzCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBSaG9zdHNSU0FBdXRoZW50aWNhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgU2VydmVyS2V5Qml0cworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgU2hvd1BhdGNoTGV2ZWwKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFN0cmljdE1vZGVzCitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBTdWJzeXN0ZW0KK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFN5c2xvZ0ZhY2lsaXR5CiBzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBUQ1BLZWVwQWxpdmUKLXN5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFVzZUROUyBVc2VMb2dpbiBVc2VQQU0gVXNlUHJpdmlsZWdlU2VwYXJhdGlvbgotc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgWDExRGlzcGxheU9mZnNldCBYMTFGb3J3YXJkaW5nCi1zeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBYMTFVc2VMb2NhbGhvc3QgWEF1dGhMb2NhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgVHJ1c3RlZFVzZXJDQUtleXMKK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFVzZUROUworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgVXNlTG9naW4KK3N5biBrZXl3b3JkIHNzaGRjb25maWdLZXl3b3JkIFVzZVBBTQorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgVXNlUHJpdmlsZWdlU2VwYXJhdGlvbgorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgWDExRGlzcGxheU9mZnNldAorc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgWDExRm9yd2FyZGluZworc3luIGtleXdvcmQgc3NoZGNvbmZpZ0tleXdvcmQgWDExVXNlTG9jYWxob3N0CitzeW4ga2V5d29yZCBzc2hkY29uZmlnS2V5d29yZCBYQXV0aExvY2F0aW9uCisKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCiBpZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3NoZGNvbmZpZ19zeW50YXhfaW5pdHMiKQpAQCAtMTAxLDYgKzE5NywxMiBAQAogICBIaUxpbmsgc3NoZGNvbmZpZ1Jvb3RMb2dpbiAgICAgIHNzaGRjb25maWdFbnVtCiAgIEhpTGluayBzc2hkY29uZmlnTG9nTGV2ZWwgICAgICAgc3NoZGNvbmZpZ0VudW0KICAgSGlMaW5rIHNzaGRjb25maWdTeXNMb2dGYWNpbGl0eSBzc2hkY29uZmlnRW51bQorICBIaUxpbmsgc3NoZGNvbmZpZ1ZhcgkJICBzc2hkY29uZmlnRW51bQorICBIaUxpbmsgc3NoZGNvbmZpZ0NvbXByZXNzaW9uICAgIHNzaGRjb25maWdFbnVtCisgIEhpTGluayBzc2hkY29uZmlnSVBRb1MJICBzc2hkY29uZmlnRW51bQorICBIaUxpbmsgc3NoZGNvbmZpZ0tleEFsZ28JICBzc2hkY29uZmlnRW51bQorICBIaUxpbmsgc3NoZGNvbmZpZ1R1bm5lbAkgIHNzaGRjb25maWdFbnVtCisgIEhpTGluayBzc2hkY29uZmlnU3Vic3lzdGVtCSAgc3NoZGNvbmZpZ0VudW0KICAgSGlMaW5rIHNzaGRjb25maWdFbnVtICAgICAgICAgICBGdW5jdGlvbgogICBIaUxpbmsgc3NoZGNvbmZpZ1NwZWNpYWwgICAgICAgIFNwZWNpYWwKICAgSGlMaW5rIHNzaGRjb25maWdLZXl3b3JkICAgICAgICBLZXl3b3JkCkBAIC0xMDksMyArMjExLDUgQEAKIGVuZGlmCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNzaGRjb25maWciCisKKyIgdmltOnNldCB0cz04IHN3PTIgc3RzPTI6Cg==