ZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2V2YWwudHh0IGIvcnVudGltZS9kb2MvZXZhbC50eHQKaW5kZXggZTk1OTJiYi4uYTM2Nzk0NiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZXZhbC50eHQKKysrIGIvcnVudGltZS9kb2MvZXZhbC50eHQKQEAgLTEsNCArMSw0IEBACi0qZXZhbC50eHQqCUZvciBWaW0gdmVyc2lvbiA4LjEuICBMYXN0IGNoYW5nZTogMjAxOSBNYXIgMzAKKypldmFsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE5IEFwciAwNAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zNTU2LDcgKzM1NTYsNyBAQAogCQljb21wbGV0aW9uLiAgU2VlIHxpbnMtY29tcGxldGlvbnwuCiAJCVRoZSBpdGVtcyBhcmU6CiAJCSAgIG1vZGUJCUN1cnJlbnQgY29tcGxldGlvbiBtb2RlIG5hbWUgc3RyaW5nLgotCQkJCVNlZSB8Y29tcGxldGlvbl9pbmZvX21vZGV8IGZvciB0aGUgdmFsdWVzLgorCQkJCVNlZSB8Y29tcGxldGVfaW5mb19tb2RlfCBmb3IgdGhlIHZhbHVlcy4KIAkJICAgcHVtX3Zpc2libGUJfFRSVUV8IGlmIHBvcHVwIG1lbnUgaXMgdmlzaWJsZS4KIAkJCQlTZWUgfHB1bXZpc2libGUoKXwuCiAJCSAgIGl0ZW1zCUxpc3Qgb2YgY29tcGxldGlvbiBtYXRjaGVzLiAgRWFjaCBpdGVtIGlzIGEKQEAgLTEwNDMzLDcgKzEwNDMzLDcgQEAKIHN5c3RlbQkJCUNvbXBpbGVkIHRvIHVzZSBzeXN0ZW0oKSBpbnN0ZWFkIG9mIGZvcmsoKS9leGVjKCkuCiB0YWdfYmluYXJ5CQlDb21waWxlZCB3aXRoIGJpbmFyeSBzZWFyY2hpbmcgaW4gdGFncyBmaWxlcwogCQkJfHRhZy1iaW5hcnktc2VhcmNofC4KLXRhZ19vbGRfc3RhdGljCQlDb21waWxlZCB3aXRoIHN1cHBvcnQgZm9yIG9sZCBzdGF0aWMgdGFncwordGFnX29sZF9zdGF0aWMJCVN1cHBvcnQgZm9yIG9sZCBzdGF0aWMgdGFncyB3YXMgcmVtb3ZlZCwgc2VlCiAJCQl8dGFnLW9sZC1zdGF0aWN8LgogdGNsCQkJQ29tcGlsZWQgd2l0aCBUY2wgaW50ZXJmYWNlLgogdGVybWd1aWNvbG9ycwkJQ29tcGlsZWQgd2l0aCB0cnVlIGNvbG9yIGluIHRlcm1pbmFsIHN1cHBvcnQuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9pbnNlcnQudHh0IGIvcnVudGltZS9kb2MvaW5zZXJ0LnR4dAppbmRleCBiNzQ3YWJlLi44ZDhiYzFkIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9pbnNlcnQudHh0CisrKyBiL3J1bnRpbWUvZG9jL2luc2VydC50eHQKQEAgLTEsNCArMSw0IEBACi0qaW5zZXJ0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE5IE1hciAyNgorKmluc2VydC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA4LjEuICBMYXN0IGNoYW5nZTogMjAxOSBNYXIgMzAKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQgYi9ydW50aW1lL2RvYy9zeW50YXgudHh0CmluZGV4IGI1MzYxYzguLmMzY2U3NWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQKKysrIGIvcnVudGltZS9kb2Mvc3ludGF4LnR4dApAQCAtMSw0ICsxLDQgQEAKLSpzeW50YXgudHh0KglGb3IgVmltIHZlcnNpb24gOC4xLiAgTGFzdCBjaGFuZ2U6IDIwMTggRGVjIDI3Cisqc3ludGF4LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE5IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xOTYyLDcgKzE5NjIsNyBAQAogdGhlIHBhcmVudGhlc2VzIGFuZCBiYWNrcXVvdGVkIHBhcmVudGhlc2VzLiAgQmVjYXVzZSBvZiB0aGUgcXVhbnRpdHkgb2YKIGNvbG9yaXphdGlvbiBsZXZlbHMsIHVubGlrZSBub24tcmFpbmJvdyBoaWdobGlnaHRpbmcsIHRoZSByYWluYm93IG1vZGUKIHNwZWNpZmllcyBpdHMgaGlnaGxpZ2h0aW5nIHVzaW5nIGN0ZXJtZmcgYW5kIGd1aWZnLCB0aGVyZWJ5IGJ5cGFzc2luZyB0aGUKLXVzdWFsIGNvbG9yc2NoZW1lIGNvbnRyb2wgdXNpbmcgc3RhbmRhcmQgaGlnaGxpZ2h0aW5nIGdyb3Vwcy4gIFRoZSBhY3R1YWwKK3VzdWFsIGNvbG9yIHNjaGVtZSBjb250cm9sIHVzaW5nIHN0YW5kYXJkIGhpZ2hsaWdodGluZyBncm91cHMuICBUaGUgYWN0dWFsCiBoaWdobGlnaHRpbmcgdXNlZCBkZXBlbmRzIG9uIHRoZSBkYXJrL2JyaWdodCBzZXR0aW5nICAoc2VlIHwnYmcnfCkuCiAKIApAQCAtNDY5NCw5ICs0Njk0LDkgQEAKIAkJCURvZXNuJ3Qgd29yayByZWN1cnNpdmVseSwgdGh1cyB5b3UgY2FuJ3QgdXNlCiAJCQkiOmNvbG9yc2NoZW1lIiBpbiBhIGNvbG9yIHNjaGVtZSBzY3JpcHQuCiAKLQkJCVRvIGN1c3RvbWl6ZSBhIGNvbG9yc2NoZW1lIHVzZSBhbm90aGVyIG5hbWUsIGUuZy4KKwkJCVRvIGN1c3RvbWl6ZSBhIGNvbG9yIHNjaGVtZSB1c2UgYW5vdGhlciBuYW1lLCBlLmcuCiAJCQkifi8udmltL2NvbG9ycy9taW5lLnZpbSIsIGFuZCB1c2UgYDpydW50aW1lYCB0byBsb2FkCi0JCQl0aGUgb3JpZ2luYWwgY29sb3JzY2hlbWU6ID4KKwkJCXRoZSBvcmlnaW5hbCBjb2xvciBzY2hlbWU6ID4KIAkJCQlydW50aW1lIGNvbG9ycy9ldmVuaW5nLnZpbQogCQkJCWhpIFN0YXRlbWVudCBjdGVybWZnPUJsdWUgZ3VpZmc9Qmx1ZQogCkBAIC00NzA0LDcgKzQ3MDQsNyBAQAogCQkJfENvbG9yU2NoZW1lUHJlfCBhdXRvY29tbWFuZCBldmVudCBpcyB0cmlnZ2VyZWQuCiAJCQlBZnRlciB0aGUgY29sb3Igc2NoZW1lIGhhcyBiZWVuIGxvYWRlZCB0aGUKIAkJCXxDb2xvclNjaGVtZXwgYXV0b2NvbW1hbmQgZXZlbnQgaXMgdHJpZ2dlcmVkLgotCQkJRm9yIGluZm8gYWJvdXQgd3JpdGluZyBhIGNvbG9yc2NoZW1lIGZpbGU6ID4KKwkJCUZvciBpbmZvIGFib3V0IHdyaXRpbmcgYSBjb2xvciBzY2hlbWUgZmlsZTogPgogCQkJCTplZGl0ICRWSU1SVU5USU1FL2NvbG9ycy9SRUFETUUudHh0CiAKIDpoaVtnaGxpZ2h0XQkJTGlzdCBhbGwgdGhlIGN1cnJlbnQgaGlnaGxpZ2h0IGdyb3VwcyB0aGF0IGhhdmUKQEAgLTQ5MDEsNyArNDkwMSw3IEBACiAJZXhwbGljaXRseS4gIFRoaXMgY2F1c2VzIHRoZSBoaWdobGlnaHQgZ3JvdXBzIHRoYXQgZGVwZW5kIG9uCiAJJ2JhY2tncm91bmQnIHRvIGNoYW5nZSEgIFRoaXMgbWVhbnMgeW91IHNob3VsZCBzZXQgdGhlIGNvbG9ycyBmb3IKIAlOb3JtYWwgZmlyc3QsIGJlZm9yZSBzZXR0aW5nIG90aGVyIGNvbG9ycy4KLQlXaGVuIGEgY29sb3JzY2hlbWUgaXMgYmVpbmcgdXNlZCwgY2hhbmdpbmcgJ2JhY2tncm91bmQnIGNhdXNlcyBpdCB0bworCVdoZW4gYSBjb2xvciBzY2hlbWUgaXMgYmVpbmcgdXNlZCwgY2hhbmdpbmcgJ2JhY2tncm91bmQnIGNhdXNlcyBpdCB0bwogCWJlIHJlbG9hZGVkLCB3aGljaCBtYXkgcmVzZXQgYWxsIGNvbG9ycyAoaW5jbHVkaW5nIE5vcm1hbCkuICBGaXJzdAogCWRlbGV0ZSB0aGUgImc6Y29sb3JzX25hbWUiIHZhcmlhYmxlIHdoZW4geW91IGRvbid0IHdhbnQgdGhpcy4KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdGFncyBiL3J1bnRpbWUvZG9jL3RhZ3MKaW5kZXggZjM3MjZlOS4uNGI1YTFlZiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdGFncworKysgYi9ydW50aW1lL2RvYy90YWdzCkBAIC01Njc3LDYgKzU2NzcsOCBAQAogY29tcGxldGVfQ1RSTC1ZCWluc2VydC50eHQJLypjb21wbGV0ZV9DVFJMLVkqCiBjb21wbGV0ZV9hZGQoKQlldmFsLnR4dAkvKmNvbXBsZXRlX2FkZCgpKgogY29tcGxldGVfY2hlY2soKQlldmFsLnR4dAkvKmNvbXBsZXRlX2NoZWNrKCkqCitjb21wbGV0ZV9pbmZvKCkJZXZhbC50eHQJLypjb21wbGV0ZV9pbmZvKCkqCitjb21wbGV0ZV9pbmZvX21vZGUJZXZhbC50eHQJLypjb21wbGV0ZV9pbmZvX21vZGUqCiBjb21wbGV0ZWRfaXRlbS12YXJpYWJsZQlldmFsLnR4dAkvKmNvbXBsZXRlZF9pdGVtLXZhcmlhYmxlKgogY29tcGxldGlvbi1mdW5jdGlvbnMJdXNyXzQxLnR4dAkvKmNvbXBsZXRpb24tZnVuY3Rpb25zKgogY29tcGxleC1jaGFuZ2UJY2hhbmdlLnR4dAkvKmNvbXBsZXgtY2hhbmdlKgpAQCAtODM4Niw2ICs4Mzg4LDcgQEAKIHJ1YnktZXZhbHVhdGUJaWZfcnVieS50eHQJLypydWJ5LWV2YWx1YXRlKgogcnVieS1nbG9iYWxzCWlmX3J1YnkudHh0CS8qcnVieS1nbG9iYWxzKgogcnVieS1tZXNzYWdlCWlmX3J1YnkudHh0CS8qcnVieS1tZXNzYWdlKgorcnVieS1ydWJ5ZXZhbAlpZl9ydWJ5LnR4dAkvKnJ1YnktcnVieWV2YWwqCiBydWJ5LXNldF9vcHRpb24JaWZfcnVieS50eHQJLypydWJ5LXNldF9vcHRpb24qCiBydWJ5LXZpbQlpZl9ydWJ5LnR4dAkvKnJ1YnktdmltKgogcnVieS13aW5kb3cJaWZfcnVieS50eHQJLypydWJ5LXdpbmRvdyoKQEAgLTgzOTcsNiArODQwMCw3IEBACiBydWJ5X29wZXJhdG9ycwlzeW50YXgudHh0CS8qcnVieV9vcGVyYXRvcnMqCiBydWJ5X3NwYWNlX2Vycm9ycwlzeW50YXgudHh0CS8qcnVieV9zcGFjZV9lcnJvcnMqCiBydWJ5X3NwZWxsY2hlY2tfc3RyaW5ncwlzeW50YXgudHh0CS8qcnVieV9zcGVsbGNoZWNrX3N0cmluZ3MqCitydWJ5ZXZhbCgpCWV2YWwudHh0CS8qcnVieWV2YWwoKSoKIHJ1c3NpYW4JcnVzc2lhbi50eHQJLypydXNzaWFuKgogcnVzc2lhbi1pbnRybwlydXNzaWFuLnR4dAkvKnJ1c3NpYW4taW50cm8qCiBydXNzaWFuLWlzc3VlcwlydXNzaWFuLnR4dAkvKnJ1c3NpYW4taXNzdWVzKgpAQCAtODQ0NSw4ICs4NDQ5LDEwIEBACiBzY3AJcGlfbmV0cncudHh0CS8qc2NwKgogc2NyZWVuYXR0cigpCWV2YWwudHh0CS8qc2NyZWVuYXR0cigpKgogc2NyZWVuY2hhcigpCWV2YWwudHh0CS8qc2NyZWVuY2hhcigpKgorc2NyZWVuY2hhcnMoKQlldmFsLnR4dAkvKnNjcmVlbmNoYXJzKCkqCiBzY3JlZW5jb2woKQlldmFsLnR4dAkvKnNjcmVlbmNvbCgpKgogc2NyZWVucm93KCkJZXZhbC50eHQJLypzY3JlZW5yb3coKSoKK3NjcmVlbnN0cmluZygpCWV2YWwudHh0CS8qc2NyZWVuc3RyaW5nKCkqCiBzY3JpcHQJdXNyXzQxLnR4dAkvKnNjcmlwdCoKIHNjcmlwdC1oZXJlCWlmX3BlcmwudHh0CS8qc2NyaXB0LWhlcmUqCiBzY3JpcHQtbG9jYWwJbWFwLnR4dAkvKnNjcmlwdC1sb2NhbCoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RvZG8udHh0IGIvcnVudGltZS9kb2MvdG9kby50eHQKaW5kZXggZDMzMThlZS4uNWYzYjM4MyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdG9kby50eHQKKysrIGIvcnVudGltZS9kb2MvdG9kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE5IE1hciAyMworKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA4LjEuICBMYXN0IGNoYW5nZTogMjAxOSBBcHIgMDQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMTA4LDI5ICsxMDgsMTkgQEAKIC0gVXNlIHRleHQgcHJvcGVydGllcyB0byBkZWZpbmUgaGlnaGxpZ2h0aW5nLgogLSBQcm9wb3NhbCBvbiBpc3N1ZSAjNDA2MwogCitOb3RpZmljYXRpb25zIGZvciB0ZXh0IGNoYW5nZXMsIGNvdWxkIGJlIHVzZWQgZm9yIExTUC4KKy0gTmV3IGV2ZW50LCBzaW1pbGFyIHRvIFRleHRDaGFuZ2VkLCBidXQgZ3VhcmFudGVlZCB0byBwcm92aWRlIHNlcXVlbnRpYWwKKyAgaW5mb3JtYXRpb24gb2YgYWxsIHRleHQgY2hhbmdlcy4KKyAgUG9zc2libHkgYnVpbGQgb24gdW5kbyBpbmZvIChidXQgdW5kbyBpdHNlbGYgaXMgYWxzbyBhIGNoYW5nZSkuCisgIEhvdyB0byBkZWFsIHdpdGggIjolcy90aGlzL3RoYXQiID8KKwogQWRkaW5nICIxMCIgdG8gJ3NwZWxsc3VnZ2VzdCcgY2F1c2VzIHNwZWxsIHN1Z2dlc3Rpb25zIHRvIGJlY29tZSB2ZXJ5IHNsb3cuCiAoIzQwODcpCiAKLVBhdGNoIHRvIGFkZCBjb21wbGV0ZV9pbmZvKCkgIFNob3VnbyAtICMzODY2LiAgUmVhZHkgdG8gaW5jbHVkZS4gIE5vdyAjNDEwNgotCi1Qcm9ibGVtIHdpdGggVmlzdWFsIHlhbmsgd2hlbiAnbGluZWJyZWFrJyBhbmQgJ3Nob3dicmVhaycgYXJlIHNldC4KLVBhdGNoIHdpdGggdGVzdHMsIGJ1dCBpdCdzIG5vdCBjbGVhciBob3cgaXQgaXMgc3VwcG9zZWQgdG8gd29yay4gKHRvbW1tLCAyMDE4Ci1Ob3YgMTcpICBBc2tlZCBhYm91dCB0aGlzLCBEZWMgMjIuIENocmlzdGlhbiB3aWxsIGhhdmUgYSBsb29rLgotCiBEb2VzIG5vdCBidWlsZCB3aXRoIE1pbkdXIG91dCBvZiB0aGUgYm94OgogLSBfc3RhdDY0IGlzIG5vdCBkZWZpbmVkLCBuZWVkIHRvIHVzZSAic3RydWN0IHN0YXQiIGluIHZpbS5oCiAtIFdJTlZFUiBjb25mbGljdCwgc2hvdWxkIHVzZSAweDA2MDAgYnkgZGVmYXVsdD8KIAotUGF0Y2ggZm9yICdsaXN0Y2hhcnMnIHdoZW4gdGhlcmUgaXMgYSBjb21wb3NpbmcgY2hhcmFjdGVyIG9uIGEgc3BhY2UuCi1Ib3cgYWJvdXQgd2hlbiB0aGVyZSBpcyBhIGRvdWJsZS13aWR0aCBjb21wb3NpbmcgY2hhcmFjdGVyIG9uIGEgc3BhY2U/Ci0oWWFzdWhpcm8gTWF0c3Vtb3RvLCAjNDA0NikKLVRlc3QgZG9lc24ndCBmYWlsIHdpdGhvdXQgcGF0Y2g/Ci0KLVBhdGNoIHRvIGFkZCBydWJ5IGNmbGFncy4gKCM0MDUwLCBmaXhlcyAjMTA4MSkKLU5lZWRzIG1vZGlmaWNhdGlvbi4KLQotUGF0Y2ggdG8gYWRkIHNyYy9SRUFETUUubWQuICAoV2VueHVhbkh1YW5nLCAjNDE0MSkgIFJlcGxhY2UgUkVBRE1FLnR4dD8KLQogQ3Jhc2ggd2hlbiBtaXhpbmcgbWF0Y2hhZGQgYW5kIHN1YnN0aXR1dGUoKT8gKE1heCBDaHJpc3RpYW4gUG9obGUsIDIwMTggTWF5CiAxMywgIzI5MTApICBDYW4ndCByZXByb2R1Y2U/CiAKQEAgLTE1OSwyMyArMTQ5LDkgQEAKIHJlYWQgd2l0aCAiLXMgc2NyaXB0aW4iIGV4cGVjdHMgZXNjYXBlIGNvZGVzLiAgUHJvYmFibHkgInNjcmlwdG91dCIgbmVlZHMgdG8KIGJlIGFkanVzdGVkLiAoRGFuaWVsIFN0ZWluYmVyZywgMjAxOSBGZWIgMjQsICM0MDQxKQogCi1QYXRjaCB0byBtb3ZlIGluc2VydC1leHBhbmQgY29kZSB0byBpbnNleHBhbmQuYy4gKFllZ2FwcGFuIExha3NobWFuYW4sICM0MDQ0KQotCi1QYXRjaCBmb3IgbGFyZ2VyIGljb25zIGluIGluc3RhbGxlci4gKCM5NzgpICBTdGlsbCBub3QgZ29vZC4KLQotUGF0Y2ggb24gaXNzdWUgIzM5NjQgdG8gbGV0IHNpZ24gY29sdW1uIHN0b3AgYXQgdGhlIGxhc3QgYnVmZmVyIGxpbmUuCi0oQ2hyaXN0aWFuIEJyYWJhbmR0LCAyMDE5IEZlYiAyNCkKLQotUGF0Y2ggdG8gdXNlIHdpZGUgZm9udCBmdW5jdGlvbnMuIChLZW4gVGFrYXRhLCAyMDE5IEZlYiAxOCwgIzQwMDApCi0KLVBhdGNoIG9uICM0MDczLCBBbmR5IE1hc3NpbWluby4gIElzIHRoaXMgYSByZWFsIHByb2JsZW0/Ci0KIEJ1ZzogInZpcGd3IiBkb2VzIG5vdCBwdXQgY3Vyc29yIGJhY2sgd2hlcmUgaXQgYmVsb25ncy4gKEphc29uIEZyYW5rbGluLCAyMDE5CiBNYXIgNSkKIAotUGF0Y2ggdG8gYWRkIGJsb2Iyc3RyKCkgYW5kIHN0cjJibG9iKCkuIChZYXN1aGlybyBNYXRzdW1vdG8sICM0MDQ5KQotTWFrZSBkb2NzIGNsZWFyZXIuIElzIGl0IHN5bW1ldHJpYz8KLQogV2hlbiB1c2luZyBhIHRpbWVyIGNhbGxiYWNrIHZnZXRjX2J1c3kgaXMgcmVzZXQsIGFsbG93aW5nIGZvciB1c2luZyBpbnB1dCgpLgogQnV0IGluIGEgY2hhbm5lbCBjYWxsYmFjayB0aGlzIGRvZXMgbm90IGhhcHBlbi4gIFdlIG5lZWQgdG8gZG8gc29tZXRoaW5nCiBzaW1pbGFyIHRvIGNoZWNrX2R1ZV90aW1lcigpLiAgQWxzbyBzZWUgIzM4MDkuCkBAIC0xOTYsNyArMTcyLDEwIEBACiBDaGVjazogX19hdHRyaWJ1dGVfXygoZm9ybWF0KHByaW50Ziwgb24gc2Vtc2coKSBhbmQgc2llbXNnKCkuICBXaGVyZSB3YXMgdGhpcwogYWRkZWQ/CiAKLVBhdGNoIHRvIHJlbW92ZSBzb21lIHVubmVlZGVkIHt9LiAoSGlyb2hpdG8gSGlnYXNoaSwgIzM5ODIpCitUaGlzIG1vZGVsaW5lIHRocm93cyB1bmV4cGVjdGVkIGVycm9yczogKCM0MTY1KQorICAgIHZpbTogc3luPW5vc3ludGF4CisKK1BhdGNoIGZvciBsaXN0Y2hhcnMgd2l0aCBtdWx0aS1ieXRlIGNoYXJzLiAgIzQxOTcsIGRpc2N1c3Npb24gb24gIzQwNDYuCiAKIE1ha2UgYmFsbG9vbl9zaG93KCkgd29yayBvdXRzaWRlIG9mICdiYWxsb29uZXhwcic/ICBVc2VycyBleHBlY3QgaXQgdG8gd29yazoKICMyOTQ4LiAocmVsYXRlZCB0byAjMTUxMj8pCkBAIC0yMDksNTEgKzE4OCwzOSBAQAogMjAxOCBTZXAgMTQpCiBBbm90aGVyIHJlcXVlc3Q6ICMzODExLgogCi1QYXRjaCBmb3IgYXV0b2NvbmYgdG8gYWRkIC1mUElDIGZvciBGZWRvcmEuICgjNDA0NykKLQotSGVpZ2h0IG9mIHF1aWNrZml4IHdpbmRvdyBpcyBub3QgcmV0YWluZWQgd2l0aCB2ZXJ0aWNhbCBzcGxpdHMuIChMaWZlcGlsbGFyLAotMjAxOCBBdWcgMjQsICMyOTk4KQotUGF0Y2ggb24gdGhlIGlzc3VlIGJ5IEhvbmdibyBMaXUsIDIwMTkgRmViIDE5ICM0MDEzCi0KIE1vcmUgd2FybmluZ3MgZnJvbSBzdGF0aWMgYW5hbHlzaXM6CiBodHRwczovL2xndG0uY29tL3Byb2plY3RzL2cvdmltL3ZpbS9hbGVydHMvP21vZGU9bGlzdAogCi1Ecm9wIEZFQVRfVEFHX09MRFNUQVRJQz8gIEFueWJvZHkgdXNpbmcgdGhpcyBmb3JtYXQgc2hvdWxkIGJlIGFibGUgdG8gZ2V0IGEKLW5ld2VyIHZlcnNpb24gb2YgY3RhZ3MuCi0KIFN0aWxsIGEgRTMxNSBlcnJvciB3aGVuIHVzaW5nIHRlcm1pbmFsLiAoTWFzYXRvIE5pc2hpaGF0YSwgIzM5NTkpCiAKLVdoZW4gdXNpbmcgJ2snIGluICdndWlvcHRpb25zJyBndmltIG1heSBvcGVuIHdpdGggYSB0aW55IHdpbmRvdy4gKCMzODA4KQotU3VnZ2VzdGVkIHBhdGNoIG9uIHRoZSBpc3N1ZS4KK1J1bm5pbmcgdGVzdF9ndWkgYW5kIHRlc3RfZ3VpX2luaXQgd2l0aCBNb3RpZiBzb21ldGltZXMga2lsbHMgdGhlIHdpbmRvdworbWFuYWdlci4gIFByb2JsZW0gd2l0aCBNb3RpZj8gTm93IHRlc3RfZ3VpIGNyYXNoZXMgaW4gc3VibWVudV9jaGFuZ2UoKS4KK0F0aGVuYSBpcyBPSy4KK01vdGlmOiBCdWlsZCBvbiBVYnVudHUgY2FuJ3QgZW50ZXIgYW55IHRleHQgaW4gZGlhbG9nIHRleHQgZmllbGRzLgogCiBudm8tbW9kZSBtYXBwaW5nIHdvcmtzIG9uIFdpbmRvd3MsIG5vdCBvbiBMaW51eC4gKCMzNjc4KQogCi1QYXRjaCB0byBoYXZlIHR1dG9yIGNoZWNrICRMQ19NRVNTQUdFUy4gKCM0MTEyKQorUGF0Y2ggdG8gYWRkIGlzaW5mKCkuIChPemFraSBLaWljaGksICMzNzg3KQogCi1QYXRjaCB0byBmaXggbW9kaWZ5X2ZuYW1lKCkgZG9lcyBub3Qgd29yayB3ZWxsIHdpdGggc29tZSAnZW5jb2Rpbmcncy4KLShLZW4gVGFrYXRhLCAjNDAwNykKK1BhdGNoIHRvIGRlLWR1cGxpY2F0ZSBjb2RlIGFuZCBhZGQgZXJyb3IgbWVzc2FnZS4gIChZZWdhcHBhbiwgIzQyMDcpCiAKLVBhdGNoIHRvIGFkZCBtb3JlIGluZm8gdG8gT3B0aW9uU2V0LiAgU2hvdWxkIG1lbnRpb24gd2hhdCB0cmlnZ2VyZWQgdGhlIGNoYW5nZQotIjpzZXQiLCAiOnNldGxvY2FsIiwgIjpzZXRnbG9iYWwiLCAibW9kZWxpbmUiOyBhbmQgdGhlIG9sZCBnbG9iYWwgdmFsdWUuCi0jNDExOAotCi1QYXRjaCB0byBtYWtlIHZpbV9nZXRlbnYoKSB3b3JrIHdpdGggd2lkZSBBUEkuIChLZW4gVGFrYXRhLCAjNDAwOCkKLQotSG93IHRvIG1ha2UgKGFzeW5jKSBjb21wbGV0ZSBmdW5jdGlvbiBkZXBlbmRpbmcgb24gY29tcGxldGlvbiB0eXBlPwotUGF0Y2ggb24gIzQwODMgdG8gZG8gdGhpcyB3aXRoIGFuIGF1dG9jb21tYW5kLiAgUHJvYmFibHkgd2FudCBzb21ldGhpbmcgZWxzZSwKLWxpa2UgJ29taW5mdW5jJy4KLQotUGF0Y2ggdG8gYWRkIGVxdWFsIGZpZWxkIHRvIGNvbXBsZXRlIGl0ZW1zLiAoIzM4ODcpCitObyB0ZXN0IGZvciBOVUxMIGFmdGVyIGFsbG9jYXRpbmcgbWVtb3J5OiAjNDE3NAorICAgIHNyYy9jcnlwdC5jICBsaW5lIDI1NjsKKyAgICBzcmMvY3J5cHRfemlwLmMgbGluZSAgOTM7CisgICAgc3JjL2d1aV9ndGtfZi5jICBsaW5lIDEzMjsKKyAgICBzcmMvZ3VpX2d0a194MTEgbGluZSAgMTU3ODsKKyAgICBzcmMvbGlidnRlcm0vc3JjL3N0YXRlLmMgbGluZSAzMzI7CisgICAgc3JjL2xpYnZ0ZXJtL3NyYy9zdGF0ZS5jIGxpbmUgMjU1OworICAgIHNyYy9saWJ2dGVybS9zcmMvc3RhdGUuYyBsaW5lIDE2MTg7CisgICAgc3JjL2xpYnZ0ZXJtL3NyYy9zdGF0ZS5jIGxpbmUgMTY0MworICAgIHNyYy9saWJ2dGVybS9zcmMvdGVybXNjcmVlbi5jIGxpbmUgODM7CisgICAgc3JjL29wcy5jICBsaW5lIDYxODU7CisgICAgc3JjL29wdGlvbi5jICBsaW5lIDEyOTgwOworICAgIHNyYy9wb3B1cG1udS5jIGxpbmUgMTA5MDsKIAogV2hlbiB1c2luZyBleGNsdXNpdmUgc2VsZWN0aW9uIGFuZCB2aSIgdGhhdCBmYWlscywgY3Vyc29yIG1vdmVzIHRvIHRoZSBsZWZ0LgogQ3Vyc29yIHNob3VsZCBub3QgbW92ZS4gKCM0MDI0KQogCi1QYXRjaCB0byBmaXggaGFuZGxpbmcgbG9uZyBsaW5lIGluIHRhZ3MgZmlsZS4gICM0MDUxLCAjNDA4NCAoQW5keSBNYXNzaW1pbm8pCi0KLVBhdGNoIHRvIGZpeCB0aGF0IGV4ZWN1dGFibGUoKSBtYXkgZmFpbCBvbiB2ZXJ5IGxvbmcgZmlsZW5hbWUgaW4gTVMtV2luZG93cy4KLShLZW4gVGFrYXRhLCAyMDE2IEZlYiAxLCB1cGRhdGUgMjAxOCBPY3QgNywgdXBkYXRlIDIwMTkgRmViIDE5KQotTm93IGluIHB1bGwgcmVxdWVzdCAjNDAxNS4KLQogUGF0Y2ggdG8gYmUgYWJsZSB0byBzZXBhcmF0ZWx5IG1hcCBDVFJMLUggYW5kIEJTIG9uIFdpbmRvd3MuCiAoTGlud2VpLCAyMDE3IEp1bCAxMSwgIzE4MzMpCiAKQEAgLTI3NSw5ICsyNDIsNiBAQAogCiBQYXRjaCB0byBpbmNsdWRlIEFSTTY0IHN1cHBvcnQuIChMZWVuZGVydCB2YW4gRG9vcm4sIDIwMTkgRmViIDkpCiAKLVBhdGNoIHRvIGZpeCBoYW5nIHdoZW4gb3BlbmluZyBmaWxlIHdoZXJlIGFuIGludGVybWVkaWF0ZSBkaXJlY3RvcnkgaXMgbm90Ci1yZWFkYWJsZSBvbiBNUy1XaW5kb3dzLiAobGluayBvbiAjMzkyMykKLQogUGFzdGluZyBmb299IGNhdXNlcyBWaW0gdG8gYmVoYXZlIHdlaXJkLiAoSm9obiBMaXR0bGUsIDIwMTggSnVuIDE3KQogUmVsYXRlZCB0byBicmFja2V0ZWQgcGFzdGUuICBJIGNhbm5vdCByZXByb2R1Y2UgaXQuCiAKQEAgLTI5NSw2ICsyNTksNDQgQEAKIAogUGF0Y2ggdG8gYWRkIHJlYWRkaXIoKS4gKFlhc3VoaXJvIE1hdHN1bW90bywgIzI0MzkpCiAKK1BhdGNoIHRvIGFkZCBsaXN0MnN0cigpIGFuZCBzdHIybGlzdCgpLiAgIzQxOTAuICBDYW4gYmUgZG9uZSB3aXRoIHNwbGl0L2pvaW4KK2FuZCBtYXAoKSwgYnV0IG5vdCBmb3IgY29tcG9zaW5nIGNoYXJhY3RlcnMuCisKK1BhdGNoIHRvIGFkZCBlcXVhbCBmaWVsZCB0byBjb21wbGV0ZSBpdGVtcy4gKCMzODg3KQorTmVlZHMgdG8gc3luYyB0byBsYXRlc3QgdmVyc2lvbiwgbWVyZ2UgY29uZmxpY3RzLgorU3VtbWFyeTogICAgbm8gd2F5IHRvIGF2b2lkIGZpbHRlcmluZyBmb3IgYXV0b2NvbWxldGUgZnVuY3Rpb24KK1Byb2JsZW06ICAgIE5vIHdheSB0byBhdm9pZCBmaWx0ZXJpbmcgZm9yIGF1dG9jb21sZXRlIGZ1bmN0aW9uLCBjYXVzaW5nCisgICAgICAgICAgICBmbGlja2VyaW5nIG9mIHRoZSBwb3B1cCBtZW51LgorU29sdXRpb246ICAgQWRkIHRoZSAiZXF1YWwiIGZpZWxkIHRvIGNvbXBsZXRlIGl0ZW1zLiAoY2xvc2VzICMzODg3KQorCitQYXRjaCB0byBhZGQgQ29tcGxldGVDaGFuZ2VkIGV2ZW50OiB0cmlnZ2VyZWQgd2hlbiB0aGUgY29tcGxldGUgcG9wdXAgbWVudQorY2hhbmdlcy4gIzQxNzYKKworUHJvYmxlbSB3aXRoIFZpc3VhbCB5YW5rIHdoZW4gJ2xpbmVicmVhaycgYW5kICdzaG93YnJlYWsnIGFyZSBzZXQuCitQYXRjaCB3aXRoIHRlc3RzLCBidXQgaXQncyBub3QgY2xlYXIgaG93IGl0IGlzIHN1cHBvc2VkIHRvIHdvcmsuICh0b21tbSwgMjAxOAorTm92IDE3KSAgQXNrZWQgYWJvdXQgdGhpcywgRGVjIDIyLiBDaHJpc3RpYW4gd2lsbCBoYXZlIGEgbG9vay4KKworUGF0Y2ggdG8gYWRkIHJ1YnkgY2ZsYWdzLiAoIzQwNTAsIGZpeGVzICMxMDgxKQorTmVlZHMgbW9kaWZpY2F0aW9uLgorCitQYXRjaCBmb3IgbGFyZ2VyIGljb25zIGluIGluc3RhbGxlci4gKCM5NzgpICBTdGlsbCBub3QgZ29vZC4KKworU29tZSB4dGVybSByZXNwb25zZXMgYXJlIG5vdCBwcm9wZXJseSBoYW5kbGVkOiAoTWFya3VzIEfDtm1tZWwsIDIwMTkgQXByIDEpCisgICAgRENTIDAgJCByIFB0IFNUICAgIHNob3VsZCBiZSBpZ25vcmVkLgorICAgIERDUyAwICsgci9QdC8gIFNUICBhbHJlYWR5IGlnbm9yZWQ/CisKK1BhdGNoIHRvIGFkZCBibG9iX2VuY29kZSgpIGFuZCBibG9iX2RlY29kZSgpLiAoWWFzdWhpcm8gTWF0c3Vtb3RvLCAjNDA0OSkKK1doYXQgZG8gd2UgbmVlZCB0aGVzZSBmb3I/CisKK1BhdGNoIHRvIGFkZCBtb3JlIGluZm8gdG8gT3B0aW9uU2V0LiAgU2hvdWxkIG1lbnRpb24gd2hhdCB0cmlnZ2VyZWQgdGhlIGNoYW5nZQorIjpzZXQiLCAiOnNldGxvY2FsIiwgIjpzZXRnbG9iYWwiLCAibW9kZWxpbmUiOyBhbmQgdGhlIG9sZCBnbG9iYWwgdmFsdWUuCisjNDExOC4gIFByb3Bvc2VkIGltcGxlbWVudGF0aW9uOiAyMDE5IE1hciAyNy4gIFRlc3RzIGZhaWwsIGhlbHAgdXBkYXRlCittaXNzaW5nLgorCitIb3cgdG8gbWFrZSAoYXN5bmMpIGNvbXBsZXRlIGZ1bmN0aW9uIGRlcGVuZGluZyBvbiBjb21wbGV0aW9uIHR5cGU/CitQYXRjaCBvbiAjNDA4MyB0byBkbyB0aGlzIHdpdGggYW4gYXV0b2NvbW1hbmQuICBQcm9iYWJseSB3YW50IHNvbWV0aGluZyBlbHNlLAorbGlrZSAnb21uaWZ1bmMnLgorCiBVc2luZyBDVFJMLUwgdG8gYWRkIGEgY2hhcmFjdGVyIHRvIHRoZSBzZWFyY2ggc3RyaW5nIGRvZXNuJ3Qgd29yayBmb3IgdGhlIGxhc3QKIGNoYXJhY3RlciBpbiB0aGUgZmlsZS4gKFNteWxlcnMsIDIwMTggTm92IDE3LCAjMzYyMCkKIFN1Z2dlc3RlZCBwYXRjaCBieSBIaXJvaGl0byBIaWdhc2hpLCAyMDE4IE5vdiAxOC4KQEAgLTMzMSw5ICszMzMsNiBAQAoga2VwdCwgd2hpY2ggbWVhbnMgcGFydCBvZiB0aGUgdGV4dCBpc24ndCBkaXNwbGF5ZWQuICBCZXR0ZXIgc2hvdyBhbGwgdGhlIHRleHQKIHdoZW4gcG9zc2libGUuIChEeWxhbiBMbG95ZCwgIzM5NzMpCiAKLVRhZyBzdGFjayBpcyBpbmNvcnJlY3QgYWZ0ZXIgQ1RSTC1UIGFuZCB0aGVuIDp0YWcuIChBbmR5IE1hc3NpbWlubywgMjAxOSBGZWIKLTEyLCAjMzk0NCkgIFdpdGggUGF0Y2ggZm9yIGEgc29sdXRpb24gKEZlYiAyMykuICBOZWVkcyBhIHRlc3QuCi0KIFBhdGNoIHRvIGltcGxlbWVudCAnZGlmZnJlZicgb3B0aW9uLiAoIzM1MzUpCiAgIEVhc2llciB0byB1c2UgYSAnZGlmZm1hc3Rlcicgb3B0aW9uLCBpcyB0aGUgZXh0cmEgY29tcGxleGl0eSBuZWVkZWQ/CiAKQEAgLTg0MSw5ICs4NDAsNiBAQAogUHJvYmxlbSB3aXRoIHVzaW5nIDpjZCB3aGVuIHJlbW90ZWx5IGVkaXRpbmcgYSBmaWxlLiAoR2VyZCBXYWNoc211dGgsIDIwMTcgTWF5CiA4LCAjMTY5MCkKIAotUnVubmluZyB0ZXN0X2d1aSBhbmQgdGVzdF9ndWlfaW5pdCB3aXRoIE1vdGlmIHNvbWV0aW1lcyBraWxscyB0aGUgd2luZG93Ci1tYW5hZ2VyLiAgUHJvYmxlbSB3aXRoIE1vdGlmPwotCiBCb2d1cyBjaGFyYWN0ZXJzIGluc2VydGVkIHdoZW4gdHJpZ2dlcmluZyBpbmRlbnQgd2hpbGUgY2hhbmdpbmcgdGV4dC4KIChWaXRvciBBbnR1bmVzLCAyMDE2IE5vdiAyMiwgIzEyNjkpCiAKQEAgLTIyMzAsOCArMjIyNiw2IEBACiAKIFBhdGNoIGZvciBHVEsgYnV0dG9ucyBYMU1vdXNlIGFuZCBYMk1vdXNlLiAoQ2hyaXN0aWFuIEouIFJvYmluc29uLCAyMDEwIEF1ZyA5KQogCi1Nb3RpZjogQnVpbGQgb24gVWJ1bnR1IGNhbid0IGVudGVyIGFueSB0ZXh0IGluIGRpYWxvZyB0ZXh0IGZpZWxkcy4KLQogIjp0YWIgc3BsaXQgZm5hbWUiIGRvZXNuJ3Qgc2V0IHRoZSBhbHRlcm5hdGUgZmlsZSBpbiB0aGUgb3JpZ2luYWwgd2luZG93LAogYmVjYXVzZSB3aW5fdmFsaWQoKSBhbHdheXMgcmV0dXJucyBGQUxTRS4gIEJlbG93IHdpbl9uZXdfdGFicGFnZSgpIGluCiBleF9kb2NtZC5jLgpAQCAtMzEwNCw2ICszMDk4LDEwIEBACiAgICAgYW5kIEdUSyBieSBkZWdyZW5laXIgKG5vdiAxMCBhbmQgbm92IDE4KS4KIC0gICBQYXRjaCBmb3IgInBhcmFub2lkIG1vZGUiIGJ5IEtldmluIENvbGxpbnMsIE1hcmNoIDcuICBOZWVkcyBtdWNoIG1vcmUgd29yay4KIAorQmV0dGVyICdyaWdodGxlZnQnIG9yIEJJREkgc3VwcG9ydDoKKy0gTWluaW1hbCBWaSB3aXRoIGJpZGkgc3VwcG9ydDogaHR0cHM6Ly9naXRodWIuY29tL2FsaWdydWRpL25lYXR2aQorICBCeSBBbGkgR2hvbGFtaSBSdWRpLCBhbHNvIHdvcmtlZCBvbiBhcmFiaWMuYworCiBRdWlja2ZpeC9Mb2NhdGlvbiBMaXN0OgogLSAgIFdpbmRvdyBzaXplIGlzIHdyb25nIHdoZW4gdXNpbmcgcXVpY2tmaXggd2luZG93LiAoTGlmZXBpbGxhciwgMjAxOCBBdWcgMjQsCiAgICAgIzI5OTkpCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfNDEudHh0IGIvcnVudGltZS9kb2MvdXNyXzQxLnR4dAppbmRleCBmYWE4YjZiLi5iM2I5ZDNlIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfNDEudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl80MS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzQxLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDguMS4gIExhc3QgY2hhbmdlOiAyMDE5IEphbiAyOQorKnVzcl80MS50eHQqCUZvciBWaW0gdmVyc2lvbiA4LjEuICBMYXN0IGNoYW5nZTogMjAxOSBNYXIgMjkKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZmlsZXR5cGUudmltIGIvcnVudGltZS9maWxldHlwZS52aW0KaW5kZXggY2M0ZmFmNy4uODkzNzBmNyAxMDA2NDQKLS0tIGEvcnVudGltZS9maWxldHlwZS52aW0KKysrIGIvcnVudGltZS9maWxldHlwZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzdXBwb3J0IGZpbGUgdG8gZGV0ZWN0IGZpbGUgdHlwZXMKICIKICIgTWFpbnRhaW5lcjoJQnJhbSBNb29sZW5hYXIgPEJyYW1AdmltLm9yZz4KLSIgTGFzdCBDaGFuZ2U6CTIwMTkgTWFyIDE5CisiIExhc3QgQ2hhbmdlOgkyMDE5IE1hciAyNgogCiAiIExpc3RlbiB2ZXJ5IGNhcmVmdWxseSwgSSB3aWxsIHNheSB0aGlzIG9ubHkgb25jZQogaWYgZXhpc3RzKCJkaWRfbG9hZF9maWxldHlwZXMiKQpAQCAtNDIsNiArNDIsOCBAQAogCiAiIEZ1bmN0aW9uIHVzZWQgZm9yIHBhdHRlcm5zIHRoYXQgZW5kIGluIGEgc3RhcjogZG9uJ3Qgc2V0IHRoZSBmaWxldHlwZSBpZiB0aGUKICIgZmlsZSBuYW1lIG1hdGNoZXMgZnRfaWdub3JlX3BhdC4KKyIgV2hlbiB1c2luZyB0aGlzLCB0aGUgZW50cnkgc2hvdWxkIHByb2JhYmx5IGJlIGZ1cnRoZXIgZG93biBiZWxvdyB3aXRoIHRoZQorIiBvdGhlciBTdGFyU2V0ZigpIGNhbGxzLgogZnVuYyEgczpTdGFyU2V0ZihmdCkKICAgaWYgZXhwYW5kKCI8YW1hdGNoPiIpICF+IGc6ZnRfaWdub3JlX3BhdAogICAgIGV4ZSAnc2V0ZiAnIC4gYTpmdApAQCAtOTUsOSArOTcsNiBAQAogIiBBcmR1aW5vCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi5pbm8sKi5wZGUJCXNldGYgYXJkdWlubwogCi0iIEFwYWNoZSBzdHlsZSBjb25maWcgZmlsZQotYXUgQnVmTmV3RmlsZSxCdWZSZWFkIHByb2Z0cGQuY29uZioJCWNhbGwgczpTdGFyU2V0ZignYXBhY2hlc3R5bGUnKQotCiAiIEFwYWNoZSBjb25maWcgZmlsZQogYXUgQnVmTmV3RmlsZSxCdWZSZWFkIC5odGFjY2VzcywqL2V0Yy9odHRwZC8qLmNvbmYJCXNldGYgYXBhY2hlCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi9ldGMvYXBhY2hlMi9zaXRlcy0qLyouY29tCQlzZXRmIGFwYWNoZQpAQCAtNjU1LDcgKzY1NCw2IEBACiAKICIgR2l0b2xpdGUKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCBnaXRvbGl0ZS5jb25mCQlzZXRmIGdpdG9saXRlCi1hdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi9naXRvbGl0ZS1hZG1pbi9jb25mLyoJY2FsbCBzOlN0YXJTZXRmKCdnaXRvbGl0ZScpCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgeywufWdpdG9saXRlLnJjLGV4YW1wbGUuZ2l0b2xpdGUucmMJc2V0ZiBwZXJsCiAKICIgR251cGxvdCBzY3JpcHRzCkBAIC04MDQsNyArODAyLDYgQEAKIAogIiBKYXZhIFByb3BlcnRpZXMgcmVzb3VyY2UgZmlsZSAobm90ZTogZG9lc24ndCBjYXRjaCBmb250LnByb3BlcnRpZXMucGwpCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi5wcm9wZXJ0aWVzLCoucHJvcGVydGllc18/PywqLnByb3BlcnRpZXNfPz9fPz8Jc2V0ZiBqcHJvcGVydGllcwotYXUgQnVmTmV3RmlsZSxCdWZSZWFkICoucHJvcGVydGllc18/P18/P18qCWNhbGwgczpTdGFyU2V0ZignanByb3BlcnRpZXMnKQogCiAiIEplc3MKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLmNscAkJCXNldGYgamVzcwpAQCAtMTQ2Miw3ICsxNDU5LDYgQEAKIAogIiBTR01MIGNhdGFsb2cgZmlsZQogYXUgQnVmTmV3RmlsZSxCdWZSZWFkIGNhdGFsb2cJCQlzZXRmIGNhdGFsb2cKLWF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCBzZ21sLmNhdGFsb2cqCQljYWxsIHM6U3RhclNldGYoJ2NhdGFsb2cnKQogCiAiIFNoZWxsIHNjcmlwdHMgKHNoLCBrc2gsIGJhc2gsIGJhc2gyLCBjc2gpOyBBbGxvdyAucHJvZmlsZV9mb28gZXRjLgogIiBHZW50b28gZWJ1aWxkcyBhbmQgQXJjaCBMaW51eCBQS0dCVUlMRHMgYXJlIGFjdHVhbGx5IGJhc2ggc2NyaXB0cwpAQCAtMTc0Myw3ICsxNzM5LDYgQEAKIAogIiBWSERMCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi5oZGwsKi52aGQsKi52aGRsLCoudmJlLCoudnN0ICBzZXRmIHZoZGwKLWF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLnZoZGxfWzAtOV0qCQljYWxsIHM6U3RhclNldGYoJ3ZoZGwnKQogCiAiIFZpbSBzY3JpcHQKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLnZpbSwqLnZiYSwuZXhyYyxfZXhyYwlzZXRmIHZpbQpAQCAtMTk1Niw2ICsxOTUxLDcgQEAKIAogIiBNb3JlIEFwYWNoZSBzdHlsZSBjb25maWcgZmlsZXMKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqL2V0Yy9wcm9mdHBkLyouY29uZiosKi9ldGMvcHJvZnRwZC9jb25mLiovKgljYWxsIHM6U3RhclNldGYoJ2FwYWNoZXN0eWxlJykKK2F1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCBwcm9mdHBkLmNvbmYqCQkJCQljYWxsIHM6U3RhclNldGYoJ2FwYWNoZXN0eWxlJykKIAogIiBNb3JlIEFwYWNoZSBjb25maWcgZmlsZXMKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCBhY2Nlc3MuY29uZiosYXBhY2hlLmNvbmYqLGFwYWNoZTIuY29uZiosaHR0cGQuY29uZiosc3JtLmNvbmYqCWNhbGwgczpTdGFyU2V0ZignYXBhY2hlJykKQEAgLTIwMTIsNiArMjAwOCwxMiBAQAogIiBHZWRjb20KIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqL3RtcC9sbHRtcCoJCWNhbGwgczpTdGFyU2V0ZignZ2VkY29tJykKIAorIiBHaXQKK2F1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLy5naXRjb25maWcuZC8qLC9ldGMvZ2l0Y29uZmlnLmQvKiAJY2FsbCBzOlN0YXJTZXRmKCdnaXRjb25maWcnKQorCisiIEdpdG9saXRlCithdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi9naXRvbGl0ZS1hZG1pbi9jb25mLyoJY2FsbCBzOlN0YXJTZXRmKCdnaXRvbGl0ZScpCisKICIgR1RLIFJDCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgLmd0a3JjKixndGtyYyoJCWNhbGwgczpTdGFyU2V0ZignZ3RrcmMnKQogCkBAIC0yMDI0LDYgKzIwMjYsOSBAQAogCVx8ICBjYWxsIHM6U3RhclNldGYoJ2phcmdvbicpCiAJXHxlbmRpZgogCisiIEphdmEgUHJvcGVydGllcyByZXNvdXJjZSBmaWxlIChub3RlOiBkb2Vzbid0IGNhdGNoIGZvbnQucHJvcGVydGllcy5wbCkKK2F1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLnByb3BlcnRpZXNfPz9fPz9fKgljYWxsIHM6U3RhclNldGYoJ2pwcm9wZXJ0aWVzJykKKwogIiBLY29uZmlnCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgS2NvbmZpZy4qCQkJY2FsbCBzOlN0YXJTZXRmKCdrY29uZmlnJykKIApAQCAtMjA4NSw2ICsyMDkwLDkgQEAKICIgUmVtaW5kCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgLnJlbWluZGVycyoJCWNhbGwgczpTdGFyU2V0ZigncmVtaW5kJykKIAorIiBTR01MIGNhdGFsb2cgZmlsZQorYXUgQnVmTmV3RmlsZSxCdWZSZWFkIHNnbWwuY2F0YWxvZyoJCWNhbGwgczpTdGFyU2V0ZignY2F0YWxvZycpCisKICIgU2hlbGwgc2NyaXB0cyBlbmRpbmcgaW4gYSBzdGFyCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgLmJhc2hyYyosLmJhc2hbXy1dcHJvZmlsZSosLmJhc2hbXy1dbG9nb3V0KiwuYmFzaFtfLV1hbGlhc2VzKixiYXNoLWZjWy0uXSosLFBLR0JVSUxEKiBjYWxsIGRpc3QjZnQjU2V0RmlsZVR5cGVTSCgiYmFzaCIpCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgLmtzaHJjKiBjYWxsIGRpc3QjZnQjU2V0RmlsZVR5cGVTSCgia3NoIikKQEAgLTIwOTYsNiArMjEwNCw5IEBACiAiIGNzaCBzY3JpcHRzIGVuZGluZyBpbiBhIHN0YXIKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAubG9naW4qLC5jc2hyYyogIGNhbGwgZGlzdCNmdCNDU0goKQogCisiIFZIREwKK2F1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLnZoZGxfWzAtOV0qCQljYWxsIHM6U3RhclNldGYoJ3ZoZGwnKQorCiAiIFZpbSBzY3JpcHQKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqdmltcmMqCQkJY2FsbCBzOlN0YXJTZXRmKCd2aW0nKQogCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL21ha2UudmltIGIvcnVudGltZS9mdHBsdWdpbi9tYWtlLnZpbQppbmRleCBmYjE4MGMwLi5iZmE4NzAzIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL21ha2UudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbWFrZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZToJTWFrZQogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IENoYW5nZToJMjAxMyBBcHIgMjIKKyIgTGFzdCBDaGFuZ2U6CTIwMTkgQXByIDAyCiAKICIgT25seSBkbyB0aGlzIHdoZW4gbm90IGRvbmUgeWV0IGZvciB0aGlzIGJ1ZmZlcgogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCkBAIC0yNyw3ICsyNyw3IEBACiAiIEluY2x1ZGluZyBmaWxlcy4KIGxldCAmbDppbmNsdWRlID0gJ15ccyppbmNsdWRlJwogCi0iIEZvciBtYXRjaGl0LnZpbSwgc3VnZ2VzdGVkIGJ5IEFsYmVydCBOZXR5bWsuCisiIEZvciBtYXRjaGl0LnZpbSwgc3VnZ2VzdGVkIGJ5IEFsYmVydCBOZXR5bWsgYW5kIEtlbiBUYWthdGEuCiBpZiBleGlzdHMoImxvYWRlZF9tYXRjaGl0IikKLSAgbGV0IGI6bWF0Y2hfd29yZHMgPSAnXDxpZlwoblwpXD1cKGVxXHxkZWZcKVw+Olw8ZWxzZVw+Olw8ZW5kaWZcPixcPGRlZmluZVw+Olw8ZW5kZWZcPicKKyAgbGV0IGI6bWF0Y2hfd29yZHMgPSAnXiAqaWZuXD1cKGVxXHxkZWZcKVw+Ol4gKmVsc2VcKFxzXCtpZm5cPVwoZXFcfGRlZlwpXClcPVw+Ol4gKmVuZGlmXD4sXDxkZWZpbmVcPjpcPGVuZGVmXD4sXiFccyppZlwoblw9ZGVmXClcPVw+Ol4hXHMqZWxzZVwoaWZcKG5cPWRlZlwpXD1cKVw9XD46XiFccyplbmRpZlw+JwogZW5kaWYKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZ3ZpbS5kZXNrdG9wIGIvcnVudGltZS9ndmltLmRlc2t0b3AKaW5kZXggYjVmNDYxYS4uOTQ1YmZiOSAxMDA2NDQKLS0tIGEvcnVudGltZS9ndmltLmRlc2t0b3AKKysrIGIvcnVudGltZS9ndmltLmRlc2t0b3AKQEAgLTYsNiArNiw3IEBACiBHZW5lcmljTmFtZVtlb109VGVrc3RvcmVkYWt0aWxvCiBHZW5lcmljTmFtZVtmcl09w4lkaXRldXIgZGUgdGV4dGUKIEdlbmVyaWNOYW1lW3BsXT1FZHl0b3IgdGVrc3R1CitHZW5lcmljTmFtZVtpc309Uml0dmlubnNsdWZvcnJpdAogQ29tbWVudD1FZGl0IHRleHQgZmlsZXMKIENvbW1lbnRbYWZdPVJlZGlnZWVyIHRla3Nsw6plcnMKIENvbW1lbnRbYW1dPeGLqOGMveGIkeGNjSDhjYvhi63hiI7hib0g4Yur4Yi14Ymw4Yqr4Yqt4YiJCkBAIC0zNyw2ICszOCw3IEBACiBDb21tZW50W2hyXT1VcmXEkWl2YW5qZSB0ZWtzdHVhbG5lIGRhdG90ZWtlCiBDb21tZW50W2h1XT1TesO2dmVnZsOhamxvayBzemVya2VzenTDqXNlCiBDb21tZW50W2lkXT1FZGl0IGZpbGUgdGVrcworQ29tbWVudFtpc109VmlubmEgbWXDsCB0ZXh0YXNrcsOhcgogQ29tbWVudFtpdF09TW9kaWZpY2EgZmlsZSBkaSB0ZXN0bwogQ29tbWVudFtqYV0944OG44Kt44K544OI44OV44Kh44Kk44Or44KS57eo6ZuG44GX44G+44GZCiBDb21tZW50W2tuXT3gsqrgsqDgs43gsq8g4LKV4LKh4LKk4LKX4LKz4LKo4LON4LKo4LOBIOCyuOCyguCyquCyvuCypuCyv+CyuOCzgQpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvc2gudmltIGIvcnVudGltZS9pbmRlbnQvc2gudmltCmluZGV4IDAzOTZiNGUuLjMyYmM5ZjMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L3NoLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9zaC52aW0KQEAgLTMsMTMgKzMsMTAgQEAKICIgTWFpbnRhaW5lcjogICAgICAgICAgQ2hyaXN0aWFuIEJyYWJhbmR0IDxjYkAyNTZiaXQub3JnPgogIiBPcmlnaW5hbCBBdXRob3I6ICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KICIgUHJldmlvdXMgTWFpbnRhaW5lcjogUGV0ZXIgQXJvbm9mZiA8dGVsZW1hY2h1c0BhcnBpbnVtLm9yZz4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgICAgMjAxOS0wMi0wMgorIiBMYXRlc3QgUmV2aXNpb246ICAgICAyMDE4LTAzLTI2CiAiIExpY2Vuc2U6ICAgICAgICAgICAgIFZpbSAoc2VlIDpoIGxpY2Vuc2UpCiAiIFJlcG9zaXRvcnk6ICAgICAgICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc2JyYS92aW0tc2gtaW5kZW50CiAiIENoYW5nZWxvZzoKLSIgICAgICAgICAgMjAxOTAzMTYgIC0gTWFrZSB1c2Ugb2Ygc2VhcmNocGFpcnBvcyBmb3IgbmVzdGVkIGlmIHNlY3Rpb25zCi0iICAgICAgICAgICAgICAgICAgICAgIGZpeGVzICMxMQotIiAgICAgICAgICAyMDE5MDIwMSAgLSBCZXR0ZXIgY2hlY2sgZm9yIGNsb3NpbmcgaWYgc2VjdGlvbnMKICIgICAgICAgICAgMjAxODA3MjQgIC0gbWFrZSBjaGVjayBmb3IgenNoIHN5bnRheCBtb3JlIHJpZ2lkIChuZWVkcyB3b3JkLWJvdW5kYXJpZXMpCiAiICAgICAgICAgIDIwMTgwMzI2ICAtIGJldHRlciBzdXBwb3J0IGZvciBsaW5lIGNvbnRpbnVhdGlvbgogIiAgICAgICAgICAyMDE4MDMyNSAgLSBiZXR0ZXIgZGV0ZWN0aW9uIG9mIGZ1bmN0aW9uIGRlZmluaXRpb25zCkBAIC02Miw3ICs1OSw2IEBACiBlbmRmdW5jdGlvbgogCiBmdW5jdGlvbiEgR2V0U2hJbmRlbnQoKQotICBsZXQgY3VybGluZSA9IGdldGxpbmUodjpsbnVtKQogICBsZXQgbG51bSA9IHByZXZub25ibGFuayh2OmxudW0gLSAxKQogICBpZiBsbnVtID09IDAKICAgICByZXR1cm4gMApAQCAtNzYsNyArNzIsNyBAQAogICAiIENoZWNrIGNvbnRlbnRzIG9mIHByZXZpb3VzIGxpbmVzCiAgIGlmIGxpbmUgPX4gJ15ccypcJShpZlx8dGhlblx8ZG9cfGVsc2VcfGVsaWZcfGNhc2VcfHdoaWxlXHx1bnRpbFx8Zm9yXHxzZWxlY3RcfGZvcmVhY2hcKVw+JyB8fAogICAgICAgICBcICAoJmZ0IGlzIyAnenNoJyAmJiBsaW5lID1+ICdcPFwlKGlmXHx0aGVuXHxkb1x8ZWxzZVx8ZWxpZlx8Y2FzZVx8d2hpbGVcfHVudGlsXHxmb3JcfHNlbGVjdFx8Zm9yZWFjaFwpXD4nKQotICAgIGlmICFzOmlzX2VuZF9leHByZXNzaW9uKGxpbmUpCisgICAgaWYgbGluZSAhfiAnXDxcJShmaVx8ZXNhY1x8ZG9uZVx8ZW5kXClcPlxzKlwlKCMuKlwpXD0kJwogICAgICAgbGV0IGluZCArPSBzOmluZGVudF92YWx1ZSgnZGVmYXVsdCcpCiAgICAgZW5kaWYKICAgZWxzZWlmIHM6aXNfY2FzZV9sYWJlbChsaW5lLCBwbnVtKQpAQCAtOTQsMTAgKzkwLDcgQEAKICAgICBlbmRpZgogICBlbHNlaWYgczplbmRfYmxvY2sobGluZSkgJiYgIXM6c3RhcnRfYmxvY2sobGluZSkKICAgICBsZXQgaW5kIC09IHM6aW5kZW50X3ZhbHVlKCdkZWZhdWx0JykKLSAgZWxzZWlmIHBudW0gIT0gMCAmJgotICAgICAgICBcIHM6aXNfY29udGludWF0aW9uX2xpbmUocGxpbmUpICYmCi0gICAgICAgIFwgIXM6ZW5kX2Jsb2NrKGN1cmxpbmUpICYmCi0gICAgICAgIFwgIXM6aXNfZW5kX2V4cHJlc3Npb24oY3VybGluZSkKKyAgZWxzZWlmIHBudW0gIT0gMCAmJiBzOmlzX2NvbnRpbnVhdGlvbl9saW5lKHBsaW5lKSAmJiAhczplbmRfYmxvY2soZ2V0bGluZSh2OmxudW0pKQogICAgICIgb25seSBhZGQgaW5kZW50LCBpZiBsaW5lIGFuZCBwbGluZSBpcyBpbiB0aGUgc2FtZSBibG9jawogICAgIGxldCBpID0gdjpsbnVtCiAgICAgbGV0IGluZDIgPSBpbmRlbnQoczpmaW5kX2NvbnRpbnVlZF9sbnVtKHBudW0pKQpAQCAtMTEzLDE1ICsxMDYsOCBAQAogCiAgIGxldCBwaW5lID0gbGluZQogICAiIENoZWNrIGNvbnRlbnQgb2YgY3VycmVudCBsaW5lCi0gIGxldCBsaW5lID0gY3VybGluZQotICAiIEN1cnJlbnQgbGluZSBpcyBhIGVuZGlmIGxpbmUsIHNvIGdldCBpbmRlbnQgZnJvbSBzdGFydCBvZiAiaWYgY29uZGl0aW9uIiBsaW5lCi0gICIgVE9ETzogc2hvdWxkIHdlIGRvIHRoZSBzYW1lIGZvciBvdGhlciAiZW5kIiBsaW5lcz8KLSAgaWYgY3VybGluZSA9fiAnXlxzKlwlKGZpXClccypcJSgjLipcKVw9JCcKLSAgICBsZXQgcHJldmlvdXNfbGluZSA9IHNlYXJjaHBhaXIoJ1w8aWZcPicsICcnLCAnXDxmaVw+JywgJ2JuVycpCi0gICAgaWYgcHJldmlvdXNfbGluZSA+IDAKLSAgICAgIGxldCBpbmQgPSBpbmRlbnQocHJldmlvdXNfbGluZSkKLSAgICBlbmRpZgotICBlbHNlaWYgbGluZSA9fiAnXlxzKlwlKHRoZW5cfGRvXHxlbHNlXHxlbGlmXHxkb25lXHxlbmRcKVw+JyB8fCBzOmVuZF9ibG9jayhsaW5lKQorICBsZXQgbGluZSA9IGdldGxpbmUodjpsbnVtKQorICBpZiBsaW5lID1+ICdeXHMqXCUodGhlblx8ZG9cfGVsc2VcfGVsaWZcfGZpXHxkb25lXHxlbmRcKVw+JyB8fCBzOmVuZF9ibG9jayhsaW5lKQogICAgIGxldCBpbmQgLT0gczppbmRlbnRfdmFsdWUoJ2RlZmF1bHQnKQogICBlbHNlaWYgbGluZSA9fiAnXlxzKmVzYWNcPicgJiYgczppc19jYXNlX2VtcHR5KGdldGxpbmUodjpsbnVtIC0gMSkpCiAgICAgbGV0IGluZCAtPSBzOmluZGVudF92YWx1ZSgnZGVmYXVsdCcpCkBAIC0yMjQsOCArMjEwLDggQEAKIAogZnVuY3Rpb24hIHM6aXNfaGVyZV9kb2MobGluZSkKICAgICBpZiBhOmxpbmUgPX4gJ15cd1wrJCcKLSAgICAgIGxldCBoZXJlX3BhdCA9ICc8PC1cPycuIHM6ZXNjYXBlKGE6bGluZSkuICdcJCcKLSAgICAgIHJldHVybiBzZWFyY2goaGVyZV9wYXQsICdiblcnKSA+IDAKKwlsZXQgaGVyZV9wYXQgPSAnPDwtXD8nLiBzOmVzY2FwZShhOmxpbmUpLiAnXCQnCisJcmV0dXJuIHNlYXJjaChoZXJlX3BhdCwgJ2JuVycpID4gMAogICAgIGVuZGlmCiAgICAgcmV0dXJuIDAKIGVuZGZ1bmN0aW9uCkBAIC0yNzAsOSArMjU2LDUgQEAKICAgcmV0dXJuIGE6bGluZSA9fiAnXlxzKiMnCiBlbmRmdW5jdGlvbgogCi1mdW5jdGlvbiEgczppc19lbmRfZXhwcmVzc2lvbihsaW5lKQotICByZXR1cm4gYTpsaW5lID1+ICdcPFwlKGZpXHxlc2FjXHxkb25lXHxlbmRcKVw+XHMqXCUoIy4qXClcPSQnCi1lbmRmdW5jdGlvbgotCiBsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKIHVubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvbGFuZy9tZW51X2RlX2RlLmxhdGluMS52aW0gYi9ydW50aW1lL2xhbmcvbWVudV9kZV9kZS5sYXRpbjEudmltCmluZGV4IDcwZmViNzQuLjMwNzkwMTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvbGFuZy9tZW51X2RlX2RlLmxhdGluMS52aW0KKysrIGIvcnVudGltZS9sYW5nL21lbnVfZGVfZGUubGF0aW4xLnZpbQpAQCAtMSw4ICsxLDkgQEAKICIgTWVudSBUcmFuc2xhdGlvbnM6CUdlcm1hbiAvIERldXRzY2gKLSIgTWFpbnRhaW5lcjoJCUdlb3JnIERhaG4gPGdvcmd5ZEB5YWhvby5jby51az4KLSIgT3JpZ2luYWxseSBCeToJTWFyY2luIERhbGVja2kgPGRhbGVja2lAY3MubmV0LnBsPgotIgkJCUpvaGFubmVzIFplbGxuZXIgPGpvaGFubmVzQHplbGxuZXIub3JnPgotIiBMYXN0IENoYW5nZToJU2F0LCAxMSBNYXIgMjAwNiAyMjo0MDowMCBDRVNUCisiIE1haW50YWluZXI6CQlK824gQXJuYXIgQnJpZW0gPGpvbmJyaWVtQGdtYWlsLmNvbT4KKyIgT3JpZ2luYWxseSBCeTogICAgR2VvcmcgRGFobiA8Z29yZ3lkQHlhaG9vLmNvLnVrPgorIiAgICAgICAgICAgICAgICAgICBNYXJjaW4gRGFsZWNraSA8ZGFsZWNraUBjcy5uZXQucGw+CisiCQkJICAgICAgICBKb2hhbm5lcyBaZWxsbmVyIDxqb2hhbm5lc0B6ZWxsbmVyLm9yZz4KKyIgTGFzdCBDaGFuZ2U6CU1vbiwgMSBBcHJpbCAyMDE5CiAiIHZpbTpzZXQgZm9sZG1ldGhvZD1tYXJrZXIgdGFic3RvcD04OgogCiAiIFF1aXQgd2hlbiBtZW51IHRyYW5zbGF0aW9ucyBoYXZlIGFscmVhZHkgYmVlbiBkb25lLgpAQCAtNjAsOCArNjEsOCBAQAogbWVudXRyYW5zIFN0YXJ0dXBcICZTZXR0aW5ncwkJCQkmU3RhcnRlaW5zdGVsbHVuZ2VuCiAKIG1lbnV0cmFucyBUb2dnbGVcIFBhdHRlcm5cICZIaWdobGlnaHQ8VGFiPjpzZXRcIGhscyEJJkhlcnZvcmhlYnVuZ2VuXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBobHMhCi1tZW51dHJhbnMgVG9nZ2xlXCAmSWdub3JlLWNhc2U8VGFiPjpzZXRcIGljIQkJR3Jv33NjaHJlaWJ1bmdcICZpZ25vcmllcmVuXCBvZGVyXCBiZW51dHplbjxUYWI+OnNldFwgaWMhCi1tZW51dHJhbnMgVG9nZ2xlXCAmU2hvd21hdGNoPFRhYj46c2V0XCBzbSEJCUFuemVpZ2VcIGRlc1wgcGFzc2VuZGVuXCAmU3ltYm9sc1wgZWluLVwgdW5kXCBhdXNzY2hhbHRlbjxUYWI+OnNldFwgc20hCittZW51dHJhbnMgVG9nZ2xlXCAmSWdub3JpbmdcIENhc2U8VGFiPjpzZXRcIGljIQkJR3Jv33NjaHJlaWJ1bmdcICZpZ25vcmllcmVuXCBvZGVyXCBiZW51dHplbjxUYWI+OnNldFwgaWMhCittZW51dHJhbnMgVG9nZ2xlXCAmU2hvd2luZ1wgTWF0Y2hlZFwgUGFpcnM8VGFiPjpzZXRcIHNtIQkJQW56ZWlnZVwgZGVzXCBwYXNzZW5kZW5cICZTeW1ib2xzXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBzbSEKIAogbWVudXRyYW5zICZDb250ZXh0XCBsaW5lcwkJCQkmWnVzYW1tZW5oYW5nCiAKQEAgLTg3LDEzICs4OCwxMyBAQAogCiAiIEJvb2xlYW4gb3B0aW9ucwogbWVudXRyYW5zIFRvZ2dsZVwgTGluZVwgJk51bWJlcmluZzxUYWI+OnNldFwgbnUhCQlBbnplaWdlXCBkZXJcIFplaWxlbiZudW1tZXJcIGVpbi1cIHVuZFwgYXVzc2NoYWx0ZW48VGFiPjpzZXRcIG51IQotbWVudXRyYW5zIFRvZ2dsZVwgcmVsYXRpJnZlXCBMaW5lXCBOdW1iZXJpbmc8VGFiPjpzZXRcIHJudSEJQW56ZWlnZVwgZGVyXCByZWxhdGkmdmVuXCBaZWlsZW5udW1tZXJcIGVpbi1cIHVuZFwgYXVzc2NoYWx0ZW48VGFiPjpzZXRcIHJudSEKK21lbnV0cmFucyBUb2dnbGVcIFJlbGF0aSZ2ZVwgTGluZVwgTnVtYmVyaW5nPFRhYj46c2V0XCBybnUhCUFuemVpZ2VcIGRlclwgcmVsYXRpJnZlblwgWmVpbGVubnVtbWVyXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBybnUhCiBtZW51dHJhbnMgVG9nZ2xlXCAmTGlzdFwgTW9kZTxUYWI+OnNldFwgbGlzdCEJCQkmTGlzdC1Nb2R1c1wgZWluLVwgdW5kXCBhdXNzY2hhbHRlbjxUYWI+OnNldFwgbGlzdCEKLW1lbnV0cmFucyBUb2dnbGVcIExpbmVcICZXcmFwPFRhYj46c2V0XCB3cmFwIQkJCSZaZWlsZW51bWJydWNoXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCB3cmFwIQotbWVudXRyYW5zIFRvZ2dsZVwgVyZyYXBcIGF0XCB3b3JkPFRhYj46c2V0XCBsYnIhCQlVbWJydWNoXCBhblwgJldvcnRncmVuemVuXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBsYnIhCi1tZW51dHJhbnMgVG9nZ2xlXCAmZXhwYW5kLXRhYjxUYWI+OnNldFwgZXQhCQkJJkVyd2VpdGVydW5nXCB2b25cIFRhYnVsYXRvcmVuXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBldCEKLW1lbnV0cmFucyBUb2dnbGVcICZhdXRvLWluZGVudDxUYWI+OnNldFwgYWkhCQkJJkF1dG9tYXRpc2NoZVwgRWlucvxja3VuZ1wgZWluLVwgdW5kXCBhdXNzY2hhbHRlbjxUYWI+OnNldFwgYWkhCi1tZW51dHJhbnMgVG9nZ2xlXCAmQy1pbmRlbnRpbmc8VGFiPjpzZXRcIGNpbiEJCQkmQy1FaW5y/GNrdW5nXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBjaW4hCittZW51dHJhbnMgVG9nZ2xlXCBMaW5lXCAmV3JhcHBpbmc8VGFiPjpzZXRcIHdyYXAhCQkJJlplaWxlbnVtYnJ1Y2hcIGVpbi1cIHVuZFwgYXVzc2NoYWx0ZW48VGFiPjpzZXRcIHdyYXAhCittZW51dHJhbnMgVG9nZ2xlXCBXJnJhcHBpbmdcIGF0XCB3b3JkPFRhYj46c2V0XCBsYnIhCQlVbWJydWNoXCBhblwgJldvcnRncmVuemVuXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBsYnIhCittZW51dHJhbnMgVG9nZ2xlXCBUYWJcICZFeHBhbmRpbmc8VGFiPjpzZXRcIGV0IQkJCSZFcndlaXRlcnVuZ1wgdm9uXCBUYWJ1bGF0b3JlblwgZWluLVwgdW5kXCBhdXNzY2hhbHRlbjxUYWI+OnNldFwgZXQhCittZW51dHJhbnMgVG9nZ2xlXCAmQXV0b1wgSW5kZW50aW5nPFRhYj46c2V0XCBhaSEJCQkmQXV0b21hdGlzY2hlXCBFaW5y/GNrdW5nXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBhaSEKK21lbnV0cmFucyBUb2dnbGVcICZDLVN0eWxlXCBJbmRlbnRpbmc8VGFiPjpzZXRcIGNpbiEJCQkmQy1FaW5y/GNrdW5nXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBjaW4hCiAKICIgb3RoZXIgb3B0aW9ucwogbWVudXRyYW5zICZTaGlmdHdpZHRoCQkJCQkmU2NoaWViZXdlaXRlCkBAIC0xNDYsNyArMTQ3LDcgQEAKICAgbWVudXRyYW5zICZEZWxldGVcIEZvbGQ8VGFiPnpkCQkJRmFsdHVuZ1wgbPZzY2hlbjxUYWI+emQKICAgbWVudXRyYW5zIERlbGV0ZVwgJkFsbFwgRm9sZHM8VGFiPnpECQkJQWxsZVwgRmFsdHVuZ2VuXCBs9nNjaGVuPFRhYj56RAogICAiIG1vdmluZyBhcm91bmQgaW4gZm9sZHMKLSAgbWVudXRyYW5zIEZvbGRcIGNvbHVtblwgJndpZHRoCQkJJkJyZWl0ZVwgZGVyXCBGYWx0dW5nc3NwYWx0ZQorICBtZW51dHJhbnMgRm9sZFwgY29sJnVtblwgd2lkdGgJCQkmQnJlaXRlXCBkZXJcIEZhbHR1bmdzc3BhbHRlCiBlbmRpZiAgIiBoYXMgZm9sZGluZwogCiBpZiBoYXMoImRpZmYiKQpAQCAtMjM2LDYgKzIzNyw3IEBACiBtZW51dHJhbnMgJkdVSQkJCSZHcmFwaGlzY2hlXCBPYmVyZmzkY2hlCiBtZW51dHJhbnMgJkNyZWRpdHMJCSZBdXRvcmVuCiBtZW51dHJhbnMgQ28mcHlpbmcJCSZVcmhlYmVycmVjaHQKK21lbnV0cmFucyAmU3BvbnNvci9SZWdpc3RlcgkJU3BvbnNlcm4vJlJlZ2lzdHJpZXJlbgogbWVudXRyYW5zIE8mcnBoYW5zCQkmV2Fpc2VuCiBtZW51dHJhbnMgJkZpbmRcLlwuXC4JCSZTdWNoZW5cLlwuXC4JIiBjb25mbGljdHMgd2l0aCBFZGl0LkZpbmQKIG1lbnV0cmFucyAmVmVyc2lvbgkJJlZlcnNpb24KZGlmZiAtLWdpdCBhL3J1bnRpbWUvbGFuZy9tZW51X2lzLmxhdGluMS52aW0gYi9ydW50aW1lL2xhbmcvbWVudV9pcy5sYXRpbjEudmltCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExNGJmM2IKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL2xhbmcvbWVudV9pcy5sYXRpbjEudmltCkBAIC0wLDAgKzEsMyBAQAorIiBNZW51IFRyYW5zbGF0aW9uczoJSWNlbGFuZGljIGZvciBpc28tODg1OS0xIGVuY29kaW5nCisKK3NvdXJjZSA8c2ZpbGU+OnA6aC9tZW51X2lzX2lzLmxhdGluMS52aW0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvbGFuZy9tZW51X2lzLnV0Zi04LnZpbSBiL3J1bnRpbWUvbGFuZy9tZW51X2lzLnV0Zi04LnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjU4N2YwCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9sYW5nL21lbnVfaXMudXRmLTgudmltCkBAIC0wLDAgKzEsMyBAQAorIiBNZW51IFRyYW5zbGF0aW9uczoJSWNlbGFuZGljIGZvciBVVEYtOCBlbmNvZGluZworCitzb3VyY2UgPHNmaWxlPjpwOmgvbWVudV9pc19pcy5sYXRpbjEudmltCmRpZmYgLS1naXQgYS9ydW50aW1lL2xhbmcvbWVudV9pc19pcy5sYXRpbjEudmltIGIvcnVudGltZS9sYW5nL21lbnVfaXNfaXMubGF0aW4xLnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODM5NGUwCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9sYW5nL21lbnVfaXNfaXMubGF0aW4xLnZpbQpAQCAtMCwwICsxLDMwNSBAQAorIiBNZW51IFRyYW5zbGF0aW9uczoJSWNlbGFuZGljIC8gzXNsZW5za2EKKyIgTWFpbnRhaW5lcjoJCUrzbiBBcm5hciBCcmllbSA8am9uYnJpZW1AZ21haWwuY29tPgorIiBPcmlnaW5hbGx5IEJ5OglK824gQXJuYXIgQnJpZW0gPGpvbmJyaWVtQGdtYWlsLmNvbT4KKyIgTGFzdCBDaGFuZ2U6CVN1biwgMjQgTWFyIDIwMTkgMjI6NDA6MDAgQ0VTVAorIiB2aW06c2V0IGZvbGRtZXRob2Q9bWFya2VyIHRhYnN0b3A9ODoKKworIiBRdWl0IHdoZW4gbWVudSB0cmFuc2xhdGlvbnMgaGF2ZSBhbHJlYWR5IGJlZW4gZG9uZS4KK2lmIGV4aXN0cygiZGlkX21lbnVfdHJhbnMiKQorICBmaW5pc2gKK2VuZGlmCitsZXQgZGlkX21lbnVfdHJhbnMgPSAxCitsZXQgczprZWVwY3BvPSAmY3BvCitzZXQgY3BvJnZpbQorCisiIFRoZSB0cmFuc2xhdGlvbnMgYmVsb3cgYXJlIGluIGxhdGluMSwgYnV0IHRoZXkgd29yayBmb3IgY3AxMjUyIGFuZAorIiBpc28tODg1OS0xNSB3aXRob3V0IGNvbnZlcnNpb24gYXMgd2VsbC4KK2lmICZlbmMgIT0gImNwMTI1MiIgJiYgJmVuYyAhPSAiaXNvLTg4NTktMTUiCisgIHNjcmlwdGVuY29kaW5nIGxhdGluMQorZW5kaWYKKworIiB7e3sgRklMRSAvIFNLUsEKK21lbnV0cmFucyAmRmlsZQkJCQkgICAgICAgICAgICAgICAgICAgICAgICBTa3LhCittZW51dHJhbnMgJk9wZW5cLlwuXC48VGFiPjplCQkgICAgICAgICAgICAgICAgT3BuYVwuXC5cLjxUYWI+OmUKK21lbnV0cmFucyBTcCZsaXQtT3BlblwuXC5cLjxUYWI+OnNwCSAgICAgICAgICAgICAgICBTcGxpdHRcIG9wbmFcLlwuXC48VGFiPjpzcAorbWVudXRyYW5zIE9wZW5cIFRhYlwuXC5cLjxUYWI+OnRhYm5ldwkgICAgICAgICAgICBPcG5hXCBmbGlwYVwuXC5cLjxUYWI+OnRhYm5ldworbWVudXRyYW5zICZOZXc8VGFiPjplbmV3CQkgICAgICAgICAgICAgICAgICAgIE79XCBTa3LhPFRhYj46ZW5ldworbWVudXRyYW5zICZDbG9zZTxUYWI+OmNsb3NlCQkgICAgICAgICAgICAgICAgICAgIExva2E8VGFiPjpjbG9zZQorbWVudXRyYW5zICZTYXZlPFRhYj46dwkJCSAgICAgICAgICAgICAgICAgICAgVmlzdGE8VGFiPjp3CittZW51dHJhbnMgU2F2ZVwgJkFzXC5cLlwuPFRhYj46c2F2CSAgICAgICAgICAgICAgICBWaXN0YVwgc2VtXC5cLlwuPFRhYj46c2F2CittZW51dHJhbnMgJlByaW50CQkJICAgICAgICAgICAgICAgICAgICAgICAgUHJlbnRhCittZW51dHJhbnMgU2EmdmUtRXhpdDxUYWI+OndxYQkJICAgICAgICAgICAgICAgIFZpc3RhXCBvZ1wgTG9rYTxUYWI+OndxYQorbWVudXRyYW5zIEUmeGl0PFRhYj46cWEJCQkgICAgICAgICAgICAgICAgICAgIExva2E8VGFiPjpxYQorCitpZiBoYXMoImRpZmYiKQorICAgIG1lbnV0cmFucyBTcGxpdFwgJkRpZmZcIHdpdGhcLlwuXC4JICAgICAgICAgICAgU3BsaXR0XCBvcG5hXCBtaXNtdW5cIHZp8FwuXC5cLgorICAgIG1lbnV0cmFucyBTcGxpdFwgUGF0Y2hlZFwgJkJ5XC5cLlwuCSAgICAgICAgICAgIFNwbGl0dFwgb3BuYVwgcGzhc3RyYfBcIGFmXC5cLlwuCitlbmRpZgorIiB9fX0gRklMRSAvIFNLUsEKKworIiB7e3sgRURJVCAvIEJSRVlUQQorbWVudXRyYW5zICZFZGl0CQkJCSAgICAgICAgICAgICAgICAgICAgICAgIEJyZXl0YQorbWVudXRyYW5zICZVbmRvPFRhYj51CQkJICAgICAgICAgICAgICAgICAgICBBZnR1cmthbGxhPFRhYj51CittZW51dHJhbnMgJlJlZG88VGFiPl5SCQkJICAgICAgICAgICAgICAgICAgICBFbmR1cmthbGxhPFRhYj5eUgorbWVudXRyYW5zIFJlcCZlYXQ8VGFiPlwuCQkgICAgICAgICAgICAgICAgICAgIEVuZHVydGFrYTxUYWI+XC4KK21lbnV0cmFucyBDdSZ0PFRhYj4iK3gJCQkgICAgICAgICAgICAgICAgICAgIEtsaXBwYTxUYWI+Iit4CittZW51dHJhbnMgJkNvcHk8VGFiPiIreQkJCSAgICAgICAgICAgICAgICAgICAgQWZyaXRhPFRhYj4iK3kKK21lbnV0cmFucyAmUGFzdGU8VGFiPiIrZ1AJCSAgICAgICAgICAgICAgICAgICAgTO1tYTxUYWI+IitnUAorbWVudXRyYW5zIFB1dFwgJkJlZm9yZTxUYWI+W3AJCSAgICAgICAgICAgICAgICBM7W1hXCBGeXJpcjxUYWI+W3AKK21lbnV0cmFucyBQdXRcICZBZnRlcjxUYWI+XXAJCSAgICAgICAgICAgICAgICBM7W1hXCBFZnRpcjxUYWI+XXAKK21lbnV0cmFucyAmRGVsZXRlPFRhYj54CQkJICAgICAgICAgICAgICAgICAgICBFefBhPFRhYj54CittZW51dHJhbnMgJlNlbGVjdFwgQWxsPFRhYj5nZ1ZHCQkgICAgICAgICAgICAgICAgVmVsamFcIEFsbHQ8VGFiPmdnVkcKK21lbnV0cmFucyAmRmluZFwuXC5cLgkJCSAgICAgICAgICAgICAgICAgICAgRmlubmFcLlwuXC4KK21lbnV0cmFucyBGaW5kXCBhbmRcIFJlcCZsYWNlXC5cLlwuCSAgICAgICAgICAgICAgICBGaW5uYVwgb2dcIFNraXB0YVwuXC5cLgorCisiIFstLSBTRVRUSU5HUyAtLV0KK21lbnV0cmFucyBTZXR0aW5nc1wgJldpbmRvdwkJCQkgICAgICAgICAgICBTdGlsbGluZ2FyXCBHbHVnZ2EKK21lbnV0cmFucyAmR2xvYmFsXCBTZXR0aW5ncwkJCQkgICAgICAgICAgICBW7fB25nJhclwgU3RpbGxpbmdhcgorbWVudXRyYW5zIFN0YXJ0dXBcICZTZXR0aW5ncwkJCQkgICAgICAgIFLmc2lzdGlsbGluZ2FyCisKK21lbnV0cmFucyBUb2dnbGVcIFBhdHRlcm5cICZIaWdobGlnaHQ8VGFiPjpzZXRcIGhscyEJICAgIE11bnN0dXJhdfBrZW5uaW5nXCDhXC9hZjxUYWI+OnNldFwgaGxzIQorbWVudXRyYW5zIFRvZ2dsZVwgJklnbm9yaW5nXCBDYXNlPFRhYj46c2V0XCBpYyEJCSAgICAgICAgSHVuc2FcIGjhLWzhZ3N0YWZpXCDhXC9hZjxUYWI+OnNldFwgaWMhCittZW51dHJhbnMgVG9nZ2xlXCAmU2hvd2luZ1wgTWF0Y2hlZFwgUGFpcnM8VGFiPjpzZXRcIHNtIQlT/W5hXCBQ9nJ1biDhXC9hZjxUYWI+OnNldFwgc20hCisKK21lbnV0cmFucyAmQ29udGV4dFwgbGluZXMJCQkJICAgICAgICAgICAgU2FtaGVuZ2lzbO1udXIKKworbWVudXRyYW5zICZWaXJ0dWFsXCBFZGl0CQkJCSAgICAgICAgICAgIFNraW5icmV5dGloYW11cgorbWVudXRyYW5zIE5ldmVyCQkJCQkJICAgICAgICAgICAgICAgIEFsZHJlaQorbWVudXRyYW5zIEJsb2NrXCBTZWxlY3Rpb24JCQkJICAgICAgICAgICAgQuFsa3ZhbAorbWVudXRyYW5zIEluc2VydFwgbW9kZQkJCQkJICAgICAgICAgICAgSW5uc2tvdHNoYW11cgorbWVudXRyYW5zIEJsb2NrXCBhbmRcIEluc2VydAkJCQkgICAgICAgIELhbGt2YWxcIG9nXCBJbm5za290c2hhbXVyCittZW51dHJhbnMgQWx3YXlzCQkJCQkgICAgICAgICAgICAgICAgQWxsdGFmCittZW51dHJhbnMgVG9nZ2xlXCBJbnNlcnRcICZNb2RlPFRhYj46c2V0XCBpbSEJCUlubnNrb3RzaGFtdXJcIOFcL2FmPFRhYj46c2V0XCBpbSEKK21lbnV0cmFucyBUb2dnbGVcIFZpXCBDJm9tcGF0aWJpbGl0eTxUYWI+OnNldFwgY3AhCVZpXCBTYW1o5mZhbmxlaWtpIOFcL2FmPFRhYj46c2V0XCBjcCEKKworbWVudXRyYW5zIFNlYXJjaFwgJlBhdGhcLlwuXC4JCQkJICAgICAgICBMZWl0YVwg7VwgU2zz8FwuXC5cLgorbWVudXRyYW5zIFRhJmdcIEZpbGVzXC5cLlwuCQkJCSAgICAgICAgICAgIE1lcmtqYVwgU2ty4XJcLlwuXC4KKworbWVudXRyYW5zIFRvZ2dsZVwgJlRvb2xiYXIJCQkJICAgICAgICAgICAgVPNsYWJvcvBcIOFcL2FmCittZW51dHJhbnMgVG9nZ2xlXCAmQm90dG9tXCBTY3JvbGxiYXIJCQkgICAgTmXwcmlcIFNrcnVuYm9y8GlcIOFcL2FmCittZW51dHJhbnMgVG9nZ2xlXCAmTGVmdFwgU2Nyb2xsYmFyICAgICAgICAgICAgICAgICAgVmluc3RyaVwgU2tydW5ib3LwaVwg4VwvYWYKK21lbnV0cmFucyBUb2dnbGVcICZSaWdodFwgU2Nyb2xsYmFyCQkJICAgICAgICBI5mdyaVwgU2tydW5ib3LwaVwg4VwvYWYKKworIiBFZGl0L0ZpbGUgU2V0dGluZ3MKK21lbnV0cmFucyBGJmlsZVwgU2V0dGluZ3MJCQkJICAgICAgICAgICAgU2ty4WFyLVN0aWxpbmdhcgorCisiIEJvb2xlYW4gb3B0aW9ucworbWVudXRyYW5zIFRvZ2dsZVwgTGluZVwgJk51bWJlcmluZzxUYWI+OnNldFwgbnUhCQlM7W51bvptZXJpbmdcIOFcL2FmPFRhYj46c2V0XCBudSEKK21lbnV0cmFucyBUb2dnbGVcIFJlbGF0aSZ2ZVwgTGluZVwgTnVtYmVyaW5nPFRhYj46c2V0XCBybnUhCUFmc3Tm8FwgTO1udW76bWVyaW5nXCDhXC9hZjxUYWI+OnNldFwgcm51IQorbWVudXRyYW5zIFRvZ2dsZVwgJkxpc3RcIE1vZGU8VGFiPjpzZXRcIGxpc3QhCQkJTGlzdGFoYW11clwg4VwvYWY8VGFiPjpzZXRcIGxpc3QhCittZW51dHJhbnMgVG9nZ2xlXCBMaW5lXCAmV3JhcHBpbmc8VGFiPjpzZXRcIHdyYXAhCQlM7W51aGxhdXBcIOFcL2FmPFRhYj46c2V0XCB3cmFwIQorbWVudXRyYW5zIFRvZ2dsZVwgVyZyYXBwaW5nXCBhdFwgd29yZDxUYWI+OnNldFwgbGJyIQlM7W51aGxhdXBcIOFcIG9y8GlcIOFcL2FmPFRhYj46c2V0XCBsYnIhCittZW51dHJhbnMgVG9nZ2xlXCBUYWJcICZFeHBhbmRpbmc8VGFiPjpzZXRcIGV0IQkJCVRhYi127WtrdW5cIOFcL2FmPFRhYj46c2V0XCBldCEKK21lbnV0cmFucyBUb2dnbGVcICZBdXRvIEluZGVudGluZzxUYWI+OnNldFwgYWkhCQkJU2rhbGZ2aXJrdXJcIElubmRy4XR0dXJcIOFcL2FmPFRhYj46c2V0XCBhaSEKK21lbnV0cmFucyBUb2dnbGVcICZDLVN0eWxlXCBJbmRlbnRpbmc8VGFiPjpzZXRcIGNpbiEJQy1Jbm5kcuF0dHVyXCDhXC9hZjxUYWI+OnNldFwgY2luIQorCisiIG90aGVyIG9wdGlvbnMKK21lbnV0cmFucyAmU2hpZnR3aWR0aAkJCQkJICAgICAgICAgICAgU2hpZnRicmVpZGQKK21lbnV0cmFucyBTb2Z0XCAmVGFic3RvcAkJCSAgICAgICAgICAgICAgICBNavprXCBUYWJzdG9wcAorbWVudXRyYW5zIFRlJnh0XCBXaWR0aFwuXC5cLgkJICAgICAgICAgICAgICAgIFRleHRhYnJlaWRkXC5cLlwuCittZW51dHJhbnMgJkZpbGVcIEZvcm1hdFwuXC5cLgkJICAgICAgICAgICAgICAgIFNrcuFhcmZvcm1cLlwuXC4KK21lbnV0cmFucyBDJm9sb3JcIFNjaGVtZQkJCSAgICAgICAgICAgICAgICBMaXRh/mVtYVwuXC5cLgorbWVudXRyYW5zICZLZXltYXAJCQkJCSAgICAgICAgICAgICAgICBMeWtsYXNraXBhbgorIiB9fX0gRURJVCAvIEJSRVlUQQorCisiIHt7eyAgVE9PTFMgLyBU02wKK2lmIGhhcygic3BlbGwiKQorICAgIG1lbnV0cmFucyAmU3BlbGxpbmcJCQkJCSAgICAgICAgICAgIFN0YWZzZXRuaW5nCisgICAgbWVudXRyYW5zICZTcGVsbFwgQ2hlY2tcIE9uCQkJCSAgICAgICAgVmlsbHVsZWl0XCDhCisgICAgbWVudXRyYW5zIFNwZWxsXCBDaGVja1wgJk9mZgkJCSAgICAgICAgVmlsbHVsZWl0XCBhZgorICAgIG1lbnV0cmFucyBUb1wgJk5leHRcIGVycm9yPFRhYj5dcwkJCSAgICBO5nN0YVwgVmlsbGE8VGFiPl1zCisgICAgbWVudXRyYW5zIFRvXCAmUHJldmlvdXNcIGVycm9yPFRhYj5bcwkJICAgIEZ5cnJpXCBWaWxsYTxUYWI+W3MKKyAgICBtZW51dHJhbnMgU3VnZ2VzdFwgJkNvcnJlY3Rpb25zPFRhYj56PQkJICAgIExlZ2dqYVwgdGlsXCBMZWnwcul0dGluZ2FyPFRhYj56PQorICAgIG1lbnV0cmFucyAmUmVwZWF0XCBjb3JyZWN0aW9uPFRhYj46c3BlbGxyZXBhbGwJRW5kdXJ0YWthXCBMZWnwcul0dGluZ3U8VGFiPjpzcGVsbHJlcGFsbAorICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuIgkJCSAgICBTdGlsbGFcIE9y8GFi82tcIOEgImVuIgorICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuX2F1IgkJICAgIFN0aWxsYVwgT3LwYWLza1wg4SAiZW5fYXUiCisgICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW5fY2EiCQkgICAgU3RpbGxhXCBPcvBhYvNrXCDhICJlbl9jYSIKKyAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9nYiIJCSAgICBTdGlsbGFcIE9y8GFi82tcIOEgImVuX2diIgorICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuX256IgkJICAgIFN0aWxsYVwgT3LwYWLza1wg4SAiZW5fbnoiCisgICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW5fdXMiCQkgICAgU3RpbGxhXCBPcvBhYvNrXCDhICJlbl91cyIKKyAgICBtZW51dHJhbnMgJkZpbmRcIE1vcmVcIExhbmd1YWdlcwkJCSAgICBGaW5uYVwgZmxlaXJpXCBPcvBhYuZrdXIKK2VuZGlmCitpZiBoYXMoImZvbGRpbmciKQorICBtZW51dHJhbnMgJkZvbGRpbmcJCQkJCSAgICAgICAgICAgIEb2bGR1bgorICAiIG9wZW4gY2xvc2UgZm9sZHMKKyAgbWVudXRyYW5zICZFbmFibGUvRGlzYWJsZVwgZm9sZHM8VGFiPnppCQkgICAgRvZsZHVuXCDhXC9hZjxUYWI+emkKKyAgbWVudXRyYW5zICZWaWV3XCBDdXJzb3JcIExpbmU8VGFiPnp2CQkJICAgIFNq4VwgTO1udVwgQmVuZGlsczxUYWI+enYKKyAgbWVudXRyYW5zIFZpZSZ3XCBDdXJzb3JcIExpbmVcIG9ubHk8VGFiPnpNengJICAgIFNq4VwgRWluZ/ZuZ3VcIEztbnVcIEJlbmRpbHM8VGFiPnpNengKKyAgbWVudXRyYW5zIEMmbG9zZVwgbW9yZVwgZm9sZHM8VGFiPnptCQkJICAgIExva2FcIEZsZWlyaVwgRvZsZHVudW08VGFiPnptCisgIG1lbnV0cmFucyAmQ2xvc2VcIGFsbFwgZm9sZHM8VGFiPnpNCQkJICAgIExva2FcINZsbHVtXCBG9mxkdW51bTxUYWI+ek0KKyAgbWVudXRyYW5zIE8mcGVuXCBtb3JlXCBmb2xkczxUYWI+enIJCQkgICAgT3BuYVwgRmxlaXJpXCBGYWxkYW5pcjxUYWI+enIKKyAgbWVudXRyYW5zICZPcGVuXCBhbGxcIGZvbGRzPFRhYj56UgkJCSAgICBPcG5hXCBBbGxhclwgRmFsZGFuaXI8VGFiPnpSCisgICIgZm9sZCBtZXRob2QKKyAgbWVudXRyYW5zIEZvbGRcIE1ldCZob2QJCQkgICAgICAgICAgICAgICAgRvZsZHVuYXItaOF0dHVyCisgIG1lbnV0cmFucyBNJmFudWFsCQkJCQkgICAgICAgICAgICAgICAgSGFuZHZpcmt1cgorICBtZW51dHJhbnMgSSZuZGVudAkJCQkJICAgICAgICAgICAgICAgIElubmRy4XR0dXIKKyAgbWVudXRyYW5zIEUmeHByZXNzaW9uCQkJCSAgICAgICAgICAgICAgICBTZWfwCisgIG1lbnV0cmFucyBTJnludGF4CQkJCQkgICAgICAgICAgICAgICAgTeFsc2tpcGFuCisgIG1lbnV0cmFucyAmRGlmZgkJCQkJICAgICAgICAgICAgICAgIE1pc211bnVyCisgIG1lbnV0cmFucyBNYSZya2VyCQkJCQkgICAgICAgICAgICAgICAgTWVya2luZworICAiIGNyZWF0ZSBhbmQgZGVsZXRlIGZvbGRzCisgIG1lbnV0cmFucyBDcmVhdGVcICZGb2xkPFRhYj56ZgkJCSAgICAgICAgQvphXCB0aWxcIEb2bGR1bjxUYWI+emYKKyAgbWVudXRyYW5zICZEZWxldGVcIEZvbGQ8VGFiPnpkCQkJICAgICAgICBFefBhXCBG9mxkdW48VGFiPnpkCisgIG1lbnV0cmFucyBEZWxldGVcICZBbGxcIEZvbGRzPFRhYj56RAkJICAgICAgICBFefBhXCDWbGx1bVwgRvZsZHVudW08VGFiPnpECisgICIgbW92aW5nIGFyb3VuZCBpbiBmb2xkcworICBtZW51dHJhbnMgRm9sZFwgQ29sJnVtblwgV2lkdGgJCQkgICAgICAgIEJyZWlkZFwgRvZsZHVuYXIKK2VuZGlmICAiIGhhcyBmb2xkaW5nCisKK2lmIGhhcygiZGlmZiIpCisgIG1lbnV0cmFucyAmRGlmZgkJCQkJICAgICAgICAgICAgICAgIE1pc211bnVyCisgIG1lbnV0cmFucyAmVXBkYXRlCQkJCQkgICAgICAgICAgICAgICAgVXBwZuZyYQorICBtZW51dHJhbnMgJkdldFwgQmxvY2sJCQkJICAgICAgICAgICAgICAgIFPma2phXCBC4WxrCisgIG1lbnV0cmFucyAmUHV0XCBCbG9jawkJCQkgICAgICAgICAgICAgICAgU2V0amFcIELhbGsKK2VuZGlmCisKK21lbnV0cmFucyAmVG9vbHMJCQkJCSAgICAgICAgICAgICAgICBU82wKK21lbnV0cmFucyAmSnVtcFwgdG9cIHRoaXNcIHRhZzxUYWI+Z15dCSAgICAJCVN09mtrdmFcIO1cIE1lcmtpPFRhYj5nXl0KK21lbnV0cmFucyBKdW1wXCAmYmFjazxUYWI+XlQJCQkgICAgICAgIAlTdPZra3ZhXCB0aWxcIGJha2E8VGFiPl5UCittZW51dHJhbnMgQnVpbGRcICZUYWdzXCBGaWxlCQkJICAgICAgICAJQvphXCB0aWxcIE1lcmtqYXNrcuEKK21lbnV0cmFucyAmTWFrZTxUYWI+Om1ha2UJCQkJICAgICAgICAgICAgU23t8GE8VGFiPjptYWtlCittZW51dHJhbnMgJkxpc3RcIEVycm9yczxUYWI+OmNsCQkJICAgICAgICAJQmlydGFcIFZpbGx1cjxUYWI+OmNsCittZW51dHJhbnMgTCZpc3RcIE1lc3NhZ2VzPFRhYj46Y2whCQkgICAgICAgIAlCaXJ0YVwgU2tpbGFib/A8VGFiPjpjbCEKK21lbnV0cmFucyAmTmV4dFwgRXJyb3I8VGFiPjpjbgkJCSAgICAgICAgCU7mc3RhXCBWaWxsYTxUYWI+OmNuCittZW51dHJhbnMgJlByZXZpb3VzXCBFcnJvcjxUYWI+OmNwCQkgICAgICAgIAlGeXJyaVwgVmlsbGE8VGFiPjpjcAorbWVudXRyYW5zICZPbGRlclwgTGlzdDxUYWI+OmNvbGQJCSAgICAgICAgCUVsZHJpXCBMaXN0aTxUYWI+OmNvbGQKK21lbnV0cmFucyBOJmV3ZXJcIExpc3Q8VGFiPjpjbmV3CQkgICAgICAgIAlO/XJyaVwgTGlzdGk8VGFiPjpjbmV3CisKK21lbnV0cmFucyBFcnJvclwgJldpbmRvdwkJCQkgICAgICAgICAgICBWaWxsdWdsdWdnaQorbWVudXRyYW5zIFNlJnRcIENvbXBpbGVyCQkJCSAgICAgICAgICAgIFNtafB1cgorbWVudXRyYW5zICZVcGRhdGU8VGFiPjpjd2luCQkJCSAgICAgICAgICAgIFVwcGbmcmE8VGFiPjpjd2luCittZW51dHJhbnMgJk9wZW48VGFiPjpjb3BlbgkJCQkgICAgICAgICAgICBPcG5hPFRhYj46Y29wZW4KK21lbnV0cmFucyAmQ2xvc2U8VGFiPjpjY2xvc2UJCQkJICAgICAgICBMb2thPFRhYj46Y2Nsb3NlCisKK21lbnV0cmFucyAmQ29udmVydFwgdG9cIEhFWDxUYWI+OiUheHhkCQkJICAgIEJyZXl0YVwg7VwgSEVYPFRhYj46JSF4eGQKK21lbnV0cmFucyBDb252ZSZydFwgYmFjazxUYWI+OiUheHhkXCAtcgkJCSAgICBCcmV5dGFcIHRpbFwgYmFrYTxUYWI+OiUheHhkXCAtcgorIiB9fX0gIFRPT0xTIC8gVNNMCisKKyIge3t7IFNZTlRBWCAvIE3BTFNLSVBBTgorbWVudXRyYW5zICZTeW50YXgJCQkJICAgICAgICAgICAgICAgICAgICBN4Wxza2lwYW4KK21lbnV0cmFucyAmU2hvd1wgZmlsZXR5cGVzXCBpblwgbWVudQkJICAgICAgICBT/W5hXCBTa3LhYXJ0ZWd1bmRpcgorbWVudXRyYW5zIFNldFwgJyZzeW50YXgnXCBvbmx5CQkJICAgICAgICAgICAgU3RpbGxhXCBh8GVpbnNcICdt4Wxza2lwYW4nXAorbWVudXRyYW5zIFNldFwgJyZmaWxldHlwZSdcIHRvbwkJCSAgICAgICAgICAgIFN0aWxsYVwgZWlubmlnXCAnc2ty4WFydGVndW5kJ1wKK21lbnV0cmFucyAmT2ZmCQkJCQkgICAgICAgICAgICAgICAgICAgIEFmCittZW51dHJhbnMgJk1hbnVhbAkJCQkgICAgICAgICAgICAgICAgICAgIEhhbmR2aXJrdAorbWVudXRyYW5zIEEmdXRvbWF0aWMJCQkJICAgICAgICAgICAgICAgIFNq4Wxmdmlya3QKK21lbnV0cmFucyBvbi9vZmZcIGZvclwgJlRoaXNcIGZpbGUJCSAgICAgICAgICAgIOEvYWZcIGZ5cmlyXCD+ZXNzYVwgc2ty4QorbWVudXRyYW5zIENvJmxvclwgdGVzdAkJCQkgICAgICAgICAgICAgICAgTGl0YXBy82Z1bgorbWVudXRyYW5zICZIaWdobGlnaHRcIHRlc3QJCQkgICAgICAgICAgICAgICAgQXXwa2VubmluZ2FycHLzZnVuCittZW51dHJhbnMgJkNvbnZlcnRcIHRvXCBIVE1MCQkJICAgICAgICAgICAgQnJleXRhXCDtXCBIVE1MCisiIH19fSBTWU5UQVggLyBNwUxTS0lQQU4KKworIiB7e3sgQlVGRkVSUyAvIEJJ0E1JTk5JCittZW51dHJhbnMgJkJ1ZmZlcnMJCQkJCSAgICAgICAgICAgICAgICBCafBtaW5uaQorbWVudXRyYW5zICZSZWZyZXNoXCBtZW51CQkJICAgICAgICAgICAgICAgIFVwcGbmcmFcIHZhbG15bmQKK21lbnV0cmFucyBEZWxldGUJCQkJCSAgICAgICAgICAgICAgICBFefBhCittZW51dHJhbnMgJkFsdGVybmF0ZQkJCQkgICAgICAgICAgICAgICAgU2tpcHRhCittZW51dHJhbnMgJk5leHQJCQkJCQkgICAgICAgICAgICAgICAgTuZzdGEKK21lbnV0cmFucyAmUHJldmlvdXMJCQkJCSAgICAgICAgICAgICAgICBGeXJyYQorIiB9fX0gQlVGRkVSUyAvIEJJ0E1JTk5JCisKKyIge3t7IFdJTkRPVyAvIEdMVUdHSQorbWVudXRyYW5zICZXaW5kb3cJCQkgICAgICAgICAgICAgICAgICAgICAgICBHbHVnZ2kKK21lbnV0cmFucyAmTmV3PFRhYj5eV24JCQkgICAgICAgICAgICAgICAgICAgIE79cjxUYWI+XlduCittZW51dHJhbnMgUyZwbGl0PFRhYj5eV3MJCSAgICAgICAgICAgICAgICAgICAgU3BsaXR0YTxUYWI+XldzCittZW51dHJhbnMgU3BsaXRcICZWZXJ0aWNhbGx5PFRhYj5eV3YJICAgICAgICAgICAgU3BsaXR0YVwgTPPwcul0dDxUYWI+Xld2CittZW51dHJhbnMgU3BsaXRcIEZpbGVcIEUmeHBsb3JlcgkgICAgICAgICAgICAgICAgU3BsaXR0YVwgU2ty4WFydmFmcmEKK21lbnV0cmFucyBTcCZsaXRcIFRvXCAjPFRhYj5eV15eCSAgICAgICAgICAgICAgICBTcGxpdHRhXCDtXCBGbGlwYVwgIzxUYWI+XldeXgorbWVudXRyYW5zICZDbG9zZTxUYWI+XldjCQkgICAgICAgICAgICAgICAgICAgIExva2FcIEZsaXBhPFRhYj5eV2MKK21lbnV0cmFucyBDbG9zZVwgJk90aGVyKHMpPFRhYj5eV28JICAgICAgICAgICAgICAgIExva2FcINbwcnVtXCBGbGlwdW08VGFiPl5XbworbWVudXRyYW5zIE5lJnh0PFRhYj5eV3cJCQkgICAgICAgICAgICAgICAgICAgIE7mc3RpPFRhYj5eV3cKK21lbnV0cmFucyBQJnJldmlvdXM8VGFiPl5XVwkJICAgICAgICAgICAgICAgICAgICBGeXJyaTxUYWI+XldXCittZW51dHJhbnMgJkVxdWFsXCBTaXplPFRhYj5eVz0JCSAgICAgICAgICAgICAgICBKYWZuXCBTdPNyPFRhYj5eVz0KK21lbnV0cmFucyAmTWF4XCBIZWlnaHQ8VGFiPl5XXwkJICAgICAgICAgICAgICAgIEjhbWFya3No5vA8VGFiPl5XXworbWVudXRyYW5zIE0maW5cIEhlaWdodDxUYWI+XlcxXwkJICAgICAgICAgICAgICAgIEzhZ21hcmtzaObwPFRhYj5eVzFfCittZW51dHJhbnMgTWF4XCAmV2lkdGg8VGFiPl5XXHwJCSAgICAgICAgICAgICAgICBI4W1hcmtzYnJlaWRkPFRhYj5eV1x8CittZW51dHJhbnMgTWluXCBXaWR0Jmg8VGFiPl5XMVx8CQkgICAgICAgICAgICAgICAgTOFnbWFya3NicmVpZGQ8VGFiPl5XMVx8CittZW51dHJhbnMgTW92ZVwgJlRvCQkJICAgICAgICAgICAgICAgICAgICAgICAgRuZyYQorbWVudXRyYW5zICZUb3A8VGFiPl5XSwkJCSAgICAgICAgICAgICAgICAgICAgVXBwPFRhYj5eV0sKK21lbnV0cmFucyAmQm90dG9tPFRhYj5eV0oJCSAgICAgICAgICAgICAgICAgICAgTmnwdXI8VGFiPl5XSgorbWVudXRyYW5zICZMZWZ0XCBzaWRlPFRhYj5eV0gJCSAgICAgICAgICAgICAgICBUaWxcIFZpbnN0cmk8VGFiPl5XSAorbWVudXRyYW5zICZSaWdodFwgc2lkZTxUYWI+XldMCQkgICAgICAgICAgICAgICAgVGlsXCBI5mdyaTxUYWI+XldMCittZW51dHJhbnMgUm90YXRlXCAmVXA8VGFiPl5XUgkJICAgICAgICAgICAgICAgIFL6bGxhXCB1cHA8VGFiPl5XUgorbWVudXRyYW5zIFJvdGF0ZVwgJkRvd248VGFiPl5XcgkJICAgICAgICAgICAgICAgIFL6bGxhXCBuafB1cjxUYWI+XldyCittZW51dHJhbnMgU2VsZWN0XCBGbyZudFwuXC5cLgkJICAgICAgICAgICAgICAgIFZlbGphXCBMZXR1cmdlcvBcLlwuXC4KKyIgfX19IFdJTkRPVyAvIEdMVUdHSQorCisiIHt7eyBIRUxQIC8gSErBTFAKK21lbnV0cmFucyAmSGVscAkJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICBIauFscAorbWVudXRyYW5zICZPdmVydmlldzxUYWI+PEYxPgkgICAgICAgICAgICAgICAgICAgIFlmaXJsaXQ8VGFiPjxGMT4KK21lbnV0cmFucyAmVXNlclwgTWFudWFsCQkgICAgICAgICAgICAgICAgICAgICAgICBOb3RlbmRhaGFuZGLzaworbWVudXRyYW5zICZIb3ctdG9cIGxpbmtzCSAgICAgICAgICAgICAgICAgICAgICAgIEhq4WxwYXJobGVra2lyCittZW51dHJhbnMgJkdVSQkJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICBNeW5kcuZudFwgVmnwbfN0CittZW51dHJhbnMgJkNyZWRpdHMJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICBI9mZ1bmRhcgorbWVudXRyYW5zIENvJnB5aW5nCQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWZyaXR1bgorbWVudXRyYW5zICZTcG9uc29yL1JlZ2lzdGVyICAgICAgICAgICAgICAgICAgICAgICAgIFN0eXJramEvU2ty4W5pbmcKK21lbnV0cmFucyBPJnJwaGFucwkJICAgICAgICAgICAgICAgICAgICAgICAgICAgIEfz8GdlcvBhcnN0YXJmCittZW51dHJhbnMgJkZpbmRcLlwuXC4JCSAgICAgICAgICAgICAgICAgICAgICAgIExlaXRcLlwuXC4JIiBjb25mbGljdHMgd2l0aCBFZGl0LkZpbmQKK21lbnV0cmFucyAmVmVyc2lvbgkJICAgICAgICAgICAgICAgICAgICAgICAgICAgINp0Z+FmYQorbWVudXRyYW5zICZBYm91dAkJICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVtXCBGb3JyaXRp8AorIiB9fX0gSEVMUCAvIEhKwUxQCisKKyIge3t7IFBPUFVQCittZW51dHJhbnMgJlVuZG8JCQkJICAgICAgICAgICAgICAgICAgICAgICAgVGlsXCBCYWthCittZW51dHJhbnMgQ3UmdAkJCQkgICAgICAgICAgICAgICAgICAgICAgICBLbGlwcGEKK21lbnV0cmFucyAmQ29weQkJCQkgICAgICAgICAgICAgICAgICAgICAgICBBZnJpdGEKK21lbnV0cmFucyAmUGFzdGUJCQkgICAgICAgICAgICAgICAgICAgICAgICBM7W1hCittZW51dHJhbnMgJkRlbGV0ZQkJCSAgICAgICAgICAgICAgICAgICAgICAgIEV58GEKK21lbnV0cmFucyBTZWxlY3RcIEJsb2Nrd2lzZQkJICAgICAgICAgICAgICAgICAgICBWZWxqYVwgQuFsa3btc3QKK21lbnV0cmFucyBTZWxlY3RcICZXb3JkCQkJICAgICAgICAgICAgICAgICAgICBWZWxqYVwgT3LwCittZW51dHJhbnMgU2VsZWN0XCAmU2VudGVuY2UJCSAgICAgICAgICAgICAgICAgICAgVmVsamFcIFNldG5pbmd1CittZW51dHJhbnMgU2VsZWN0XCBQYSZyYWdyYXBoCSAgICAgICAgICAgICAgICAgICAgVmVsamFcIEVmbmlzZ3JlaW4KK21lbnV0cmFucyBTZWxlY3RcICZMaW5lCQkJICAgICAgICAgICAgICAgICAgICBWZWxqYVwgTO1udQorbWVudXRyYW5zIFNlbGVjdFwgJkJsb2NrCQkgICAgICAgICAgICAgICAgICAgIFZlbGphXCBC4WxrCittZW51dHJhbnMgU2VsZWN0XCAmQWxsCQkJICAgICAgICAgICAgICAgICAgICBWZWxqYVwgQWxsdAorIiB9fX0gUE9QVVAKKworIiB7e3sgVE9PTEJBUgoraWYgaGFzKCJ0b29sYmFyIikKKyAgaWYgZXhpc3RzKCIqRG9fdG9vbGJhcl90bWVudSIpCisgICAgZGVsZnVuIERvX3Rvb2xiYXJfdG1lbnUKKyAgZW5kaWYKKyAgZnVuIERvX3Rvb2xiYXJfdG1lbnUoKQorICAgIHRtZW51IFRvb2xCYXIuT3BlbgkJICAgICAgICAgICAgICAgICAgICAgICAgT3BuYSBTa3LhCisgICAgdG1lbnUgVG9vbEJhci5TYXZlCQkgICAgICAgICAgICAgICAgICAgICAgICBWaXN0YSBTa3LhCisgICAgdG1lbnUgVG9vbEJhci5TYXZlQWxsCSAgICAgICAgICAgICAgICAgICAgICAgIFZpc3RhIEFsbGFyIFNrcuFyCisgICAgdG1lbnUgVG9vbEJhci5QcmludAkJICAgICAgICAgICAgICAgICAgICAgICAgUHJlbnRhCisgICAgdG1lbnUgVG9vbEJhci5VbmRvCQkgICAgICAgICAgICAgICAgICAgICAgICBBZnR1cmthbGxhCisgICAgdG1lbnUgVG9vbEJhci5SZWRvCQkgICAgICAgICAgICAgICAgICAgICAgICBFbmR1cmthbGxhCisgICAgdG1lbnUgVG9vbEJhci5DdXQJCSAgICAgICAgICAgICAgICAgICAgICAgIEtsaXBwYQorICAgIHRtZW51IFRvb2xCYXIuQ29weQkJICAgICAgICAgICAgICAgICAgICAgICAgQWZyaXRhCisgICAgdG1lbnUgVG9vbEJhci5QYXN0ZQkJICAgICAgICAgICAgICAgICAgICAgICAgTO1tYQorICAgIHRtZW51IFRvb2xCYXIuRmluZAkJICAgICAgICAgICAgICAgICAgICAgICAgRmlubmEuLi4KKyAgICB0bWVudSBUb29sQmFyLkZpbmROZXh0CSAgICAgICAgICAgICAgICAgICAgICAgIEZpbm5hIE7mc3RhCisgICAgdG1lbnUgVG9vbEJhci5GaW5kUHJldgkgICAgICAgICAgICAgICAgICAgICAgICBGaW5uYSBmeXJyaQorICAgIHRtZW51IFRvb2xCYXIuUmVwbGFjZQkgICAgICAgICAgICAgICAgICAgICAgICBGaW5uYSBvZyBTa2lwdGEuLi4KKyAgICBpZiAwCSIgZGlzYWJsZWQ7IFRoZXNlIGFyZSBpbiB0aGUgV2luZG93cyBtZW51CisgICAgICB0bWVudSBUb29sQmFyLk5ldwkJICAgICAgICAgICAgICAgICAgICAgICAgTv1yCisgICAgICB0bWVudSBUb29sQmFyLldpblNwbGl0CSAgICAgICAgICAgICAgICAgICAgU3BsaXR0YSBHbHVnZ2EKKyAgICAgIHRtZW51IFRvb2xCYXIuV2luTWF4CSAgICAgICAgICAgICAgICAgICAgICAgIEjhbWFya3NzdOZy8CBHbHVnZ2EKKyAgICAgIHRtZW51IFRvb2xCYXIuV2luTWluCSAgICAgICAgICAgICAgICAgICAgICAgIEzhZ21hcmtzc3TmcvAgR2x1Z2dhCisgICAgICB0bWVudSBUb29sQmFyLldpbkNsb3NlCSAgICAgICAgICAgICAgICAgICAgTG9rYSBHbHVnZ2EKKyAgICBlbmRpZgorICAgIHRtZW51IFRvb2xCYXIuTG9hZFNlc24JICAgICAgICAgICAgICAgICAgICAgICAgSGxh8GEgU2V0dQorICAgIHRtZW51IFRvb2xCYXIuU2F2ZVNlc24JICAgICAgICAgICAgICAgICAgICAgICAgVmlzdGEgU2V0dQorICAgIHRtZW51IFRvb2xCYXIuUnVuU2NyaXB0CSAgICAgICAgICAgICAgICAgICAgICAgIEtleXJhIFNrcmlwdHUKKyAgICB0bWVudSBUb29sQmFyLk1ha2UJCSAgICAgICAgICAgICAgICAgICAgICAgIFNt7fBhCisgICAgdG1lbnUgVG9vbEJhci5TaGVsbAkJICAgICAgICAgICAgICAgICAgICAgICAgT3BuYSBTa2VsCisgICAgdG1lbnUgVG9vbEJhci5SdW5DdGFncwkgICAgICAgICAgICAgICAgICAgICAgICBTbe3wYSBNZXJraQorICAgIHRtZW51IFRvb2xCYXIuVGFnSnVtcAkgICAgICAgICAgICAgICAgICAgICAgICBIb3BwYSDtIE1lcmtpCisgICAgdG1lbnUgVG9vbEJhci5IZWxwCQkgICAgICAgICAgICAgICAgICAgICAgICBIauFscAorICAgIHRtZW51IFRvb2xCYXIuRmluZEhlbHAJICAgICAgICAgICAgICAgICAgICAgICAgRmlubmEgSGrhbHAuLi4KKyAgZW5kZnVuCitlbmRpZgorIiB9fX0gVE9PTEJBUgorCisiIHt7eyBESUFMT0cgVEVYVFMKK2xldCBnOm1lbnV0cmFuc19ub19maWxlID0gICAgICAgICAgICAgICAgICAgICAgICAgICAiW0VuZ2luIFNrcuFdIgorbGV0IGc6bWVudXRyYW5zX2hlbHBfZGlhbG9nID0gICAgICAgICAgICAgICAgICAgICAgICJTbOFp8CBpbm4gc2tpcHVuIGXwYSBvcvBhIHRpbCBh8CBsZWl0YSB1cHBs/XNpbmdhIHVtOlxuXG5Gb3Jza2V5dGnwIGlfIGZ5cmlyIO1sYWdzaGFtc3NraXBhbmlyICh0LmQuIGlfQ1RSTC1YKVxuRm9yc2tleXRp8CBjXyBmeXJpciBza2lwYW5hbO1udXNraXBhbmlyICh0LmQuIGNfPERlbD4pXG5Gb3Jza2V5dGnwICcgZnlyaXIgbmFmbiDhIHZhbG32Z3VsZWlrYSAodC5kLiAnc2hpZnRicmVpZGQnKSIKK2xldCBnOm1lbnV0cmFuc19wYXRoX2RpYWxvZyA9ICAgICAgICAgICAgICAgICAgICAgICAiU2zhafAgaW5uIGxlaXRhcnNs8/AgZnlyaXIgc2ty4XIuXG5B8HNraWxqafAgbfZwcHVyIG1l8CBrb21tdSIKK2xldCBnOm1lbnV0cmFuc190YWdzX2RpYWxvZyA9ICAgICAgICAgICAgICAgICAgICAgICAiU2zhafAgaW5uIG5hZm4gTWVya2phc2ty4WEuXG5B8HNraWxqafAgbvZmbmluIG1l8CBrb21tdSIKK2xldCBnOm1lbnV0cmFuc190ZXh0d2lkdGhfZGlhbG9nID0gICAgICAgICAgICAgICAgICAiU2zhafAgaW5uIG79amEgdGV4dGFicmVpZGQgKDAgdGlsIGHwIPN2aXJramEgc25p8G3hdHVuKTogIgorbGV0IGc6bWVudXRyYW5zX2ZpbGVmb3JtYXRfZGlhbG9nID0gICAgICAgICAgICAgICAgICJWZWxqafAgU2ty4WFyc25p8CIKKyIgfX19CisKK2xldCAmY3BvID0gczprZWVwY3BvCit1bmxldCBzOmtlZXBjcG8KZGlmZiAtLWdpdCBhL3J1bnRpbWUvbGFuZy9tZW51X2lzX2lzLnV0Zi04LnZpbSBiL3J1bnRpbWUvbGFuZy9tZW51X2lzX2lzLnV0Zi04LnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjU4N2YwCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9sYW5nL21lbnVfaXNfaXMudXRmLTgudmltCkBAIC0wLDAgKzEsMyBAQAorIiBNZW51IFRyYW5zbGF0aW9uczoJSWNlbGFuZGljIGZvciBVVEYtOCBlbmNvZGluZworCitzb3VyY2UgPHNmaWxlPjpwOmgvbWVudV9pc19pcy5sYXRpbjEudmltCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kY2wudmltIGIvcnVudGltZS9zeW50YXgvZGNsLnZpbQppbmRleCAyMjU4ZmY2Li43M2RmOGUxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9kY2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2RjbC52aW0KQEAgLTEsOCArMSw4IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJRENMIChEaWdpdGFsIENvbW1hbmQgTGFuZ3VhZ2UgLSB2bXMpCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIExhc3QgQ2hhbmdlOglBdWcgMzEsIDIwMTYKLSIgVmVyc2lvbjoJMTEKKyIgTGFzdCBDaGFuZ2U6CU1hciAyNiwgMjAxOQorIiBWZXJzaW9uOgkxMgogIiBVUkw6CWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX0RDTAogCiAiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZApAQCAtMTAsMTAgKzEwLDEwIEBACiAgIGZpbmlzaAogZW5kaWYKIAotaWYgIWhhcygicGF0Y2gtNy40LjExNDIiKQotICBzZXRsb2NhbCBpc2tleXdvcmQ9JCxALDQ4LTU3LF8KLWVsc2UKK2lmICh2OnZlcnNpb24gPT0gNzA0ICYmIGhhcygicGF0Y2gtNy40LjExNDIiKSkgfHwgdjp2ZXJzaW9uID4gNzA0CiAgc3luIGlza2V5d29yZCAkLEAsNDgtNTcsXworZWxzZQorIHNldGxvY2FsIGlza2V5d29yZD0kLEAsNDgtNTcsXwogZW5kaWYKIAogc3luIGNhc2UgaWdub3JlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9saXNwLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xpc3AudmltCmluZGV4IGI2YWEwNGIuLmQ5OWUwMzIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xpc3AudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2xpc3AudmltCkBAIC0xLDggKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgIExpc3AKICIgTWFpbnRhaW5lcjogIENoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIExhc3QgQ2hhbmdlOiBGZWIgMTUsIDIwMTgKLSIgVmVyc2lvbjogICAgIDI3CisiIExhc3QgQ2hhbmdlOiBNYXIgMjYsIDIwMTkKKyIgVmVyc2lvbjogICAgIDI4CiAiIFVSTDoJaHR0cDovL3d3dy5kcmNoaXAub3JnL2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCNTWU5UQVhfTElTUAogIgogIiAgVGhhbmtzIHRvIEYgWGF2aWVyIE5vcmlhIGZvciBhIGxpc3Qgb2YgOTc4IENvbW1vbiBMaXNwIHN5bWJvbHMgdGFrZW4gZnJvbSBIeXBlclNwZWMKQEAgLTE2LDEwICsxNiwxMCBAQAogCiBpZiBleGlzdHMoImc6bGlzcF9pc2siKQogIGV4ZSAic2V0bCBpc2s9Ii5nOmxpc3BfaXNrCi1lbHNlaWYgIWhhcygicGF0Y2gtNy40LjExNDIiKQotIHNldGwgaXNrPTM4LDQyLDQzLDQ1LDQ3LTU4LDYwLTYyLDY0LTkwLDk3LTEyMixfCi1lbHNlCitlbHNlaWYgKHY6dmVyc2lvbiA9PSA3MDQgJiYgaGFzKCJwYXRjaC03LjQuMTE0MiIpKSB8fCB2OnZlcnNpb24gPiA3MDQKICBzeW4gaXNrZXl3b3JkIDM4LDQyLDQzLDQ1LDQ3LTU4LDYwLTYyLDY0LTkwLDk3LTEyMixfCitlbHNlCisgc2V0bCBpc2s9MzgsNDIsNDMsNDUsNDctNTgsNjAtNjIsNjQtOTAsOTctMTIyLF8KIGVuZGlmCiAKIGlmIGV4aXN0cygiZzpsaXNwc3ludGF4X2lnbm9yZWNhc2UiKSB8fCBleGlzdHMoImc6bGlzcHN5bnRheF9jbGlzcCIpCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYWtlLnZpbSBiL3J1bnRpbWUvc3ludGF4L21ha2UudmltCmluZGV4IDE2ZTY2YmMuLjM3N2U0NDUwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tYWtlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tYWtlLnZpbQpAQCAtMyw3ICszLDcgQEAKICIgTWFpbnRhaW5lcjoJUm9sYW5kIEhpZWJlciA8cm9oaWViK3ZpbS1pUjBqR2RrVkByb2hpZWIubmFtZT4KICIgUHJldmlvdXMgTWFpbnRhaW5lcjoJQ2xhdWRpbyBGbGVpbmVyIDxjbGF1ZGlvQGZsZWluZXIuY29tPgogIiBVUkw6CQlodHRwczovL2dpdGh1Yi5jb20vdmltL3ZpbS9zeW50YXgvbWFrZS52aW0KLSIgTGFzdCBDaGFuZ2U6CTIwMTkgRmViIDA4CisiIExhc3QgQ2hhbmdlOgkyMDE5IEFwciAwMgogCiAiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKQEAgLTE5LDcgKzE5LDcgQEAKIHN5biBtYXRjaCBtYWtlTmV4dExpbmUJIlxcXG5ccyoiCiAKICIgc29tZSBkaXJlY3RpdmVzCi1zeW4gbWF0Y2ggbWFrZVByZUNvbmRpdAkiXiAqXChpZmVxXD5cfGVsc2VcPlx8ZW5kaWZcPlx8aWZuZXFcPlx8aWZkZWZcPlx8aWZuZGVmXD5cKSIKK3N5biBtYXRjaCBtYWtlUHJlQ29uZGl0CSJeICpcKGlmblw9XChlcVx8ZGVmXClcPlx8ZWxzZVwoXHNcK2lmblw9XChlcVx8ZGVmXClcKVw9XD5cfGVuZGlmXD5cKSIKIHN5biBtYXRjaCBtYWtlSW5jbHVkZQkiXiAqWy1zXVw9aW5jbHVkZSIKIHN5biBtYXRjaCBtYWtlU3RhdGVtZW50CSJeICp2cGF0aCIKIHN5biBtYXRjaCBtYWtlRXhwb3J0ICAgICJeICpcKGV4cG9ydFx8dW5leHBvcnRcKVw+IgpAQCAtMzIsOCArMzIsOCBAQAogCiAiIE1pY3Jvc29mdCBNYWtlZmlsZSBzcGVjaWFscwogc3luIGNhc2UgaWdub3JlCi1zeW4gbWF0Y2ggbWFrZUluY2x1ZGUJIl4hICppbmNsdWRlIgotc3luIG1hdGNoIG1ha2VQcmVDb25kaXQgIiEgKlwoY21kc3dpdGNoZXNcfGVycm9yXHxtZXNzYWdlXHxpbmNsdWRlXHxpZlx8aWZkZWZcfGlmbmRlZlx8ZWxzZVx8ZWxzZWlmXHxlbHNlIGlmXHxlbHNlXHMqaWZkZWZcfGVsc2VccyppZm5kZWZcfGVuZGlmXHx1bmRlZlwpXD4iCitzeW4gbWF0Y2ggbWFrZUluY2x1ZGUJIl4hXHMqaW5jbHVkZSIKK3N5biBtYXRjaCBtYWtlUHJlQ29uZGl0ICJeIVxzKlwoY21kc3dpdGNoZXNcfGVycm9yXHxtZXNzYWdlXHxpbmNsdWRlXHxpZlx8aWZkZWZcfGlmbmRlZlx8ZWxzZVx8ZWxzZVxzKmlmXHxlbHNlXHMqaWZkZWZcfGVsc2VccyppZm5kZWZcfGVuZGlmXHx1bmRlZlwpXD4iCiBzeW4gY2FzZSBtYXRjaAogCiAiIGlkZW50aWZpZXJzCkBAIC0xMDEsMTcgKzEwMSwxNyBAQAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgogIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAogCi1oaSBkZWYgbGluayBtYWtlTmV4dExpbmUJCW1ha2VTcGVjaWFsCitoaSBkZWYgbGluayBtYWtlTmV4dExpbmUJbWFrZVNwZWNpYWwKIGhpIGRlZiBsaW5rIG1ha2VDbWROZXh0TGluZQltYWtlU3BlY2lhbAotaGkgZGVmIGxpbmsgbWFrZVNwZWNUYXJnZXQJCVN0YXRlbWVudAoraGkgZGVmIGxpbmsgbWFrZVNwZWNUYXJnZXQJU3RhdGVtZW50CiBpZiAhZXhpc3RzKCJtYWtlX25vX2NvbW1hbmRzIikKLWhpIGRlZiBsaW5rIG1ha2VDb21tYW5kcwkJTnVtYmVyCitoaSBkZWYgbGluayBtYWtlQ29tbWFuZHMJTnVtYmVyCiBlbmRpZgotaGkgZGVmIGxpbmsgbWFrZUltcGxpY2l0CQlGdW5jdGlvbgoraGkgZGVmIGxpbmsgbWFrZUltcGxpY2l0CUZ1bmN0aW9uCiBoaSBkZWYgbGluayBtYWtlVGFyZ2V0CQlGdW5jdGlvbgogaGkgZGVmIGxpbmsgbWFrZUluY2x1ZGUJCUluY2x1ZGUKLWhpIGRlZiBsaW5rIG1ha2VQcmVDb25kaXQJCVByZUNvbmRpdAotaGkgZGVmIGxpbmsgbWFrZVN0YXRlbWVudAkJU3RhdGVtZW50CitoaSBkZWYgbGluayBtYWtlUHJlQ29uZGl0CVByZUNvbmRpdAoraGkgZGVmIGxpbmsgbWFrZVN0YXRlbWVudAlTdGF0ZW1lbnQKIGhpIGRlZiBsaW5rIG1ha2VJZGVudAkJSWRlbnRpZmllcgogaGkgZGVmIGxpbmsgbWFrZVNwZWNpYWwJCVNwZWNpYWwKIGhpIGRlZiBsaW5rIG1ha2VDb21tZW50CQlDb21tZW50CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYXBsZS52aW0gYi9ydW50aW1lL3N5bnRheC9tYXBsZS52aW0KaW5kZXggMTI2MWZmNS4uZjE0Y2Y3OSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWFwbGUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21hcGxlLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglNYXBsZSBWIChiYXNlZCBvbiByZWxlYXNlIDQpCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIExhc3QgQ2hhbmdlOglBdWcgMzEsIDIwMTYKLSIgVmVyc2lvbjoJMTUKKyIgTGFzdCBDaGFuZ2U6CU1hciAyNiwgMjAxOQorIiBWZXJzaW9uOgkxNgogIiBVUkw6CWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX01BUExFCiAiCiAiIFBhY2thZ2UgRnVuY3Rpb24gU2VsZWN0aW9uOiB7e3sxCkBAIC0yNywxMCArMjcsMTAgQEAKIGVuZGlmCiAKICIgSXNrZXl3b3JkIEVmZmVjdHM6IHt7ezEKLWlmICFoYXMoInBhdGNoLTcuNC4xMTQyIikKLSBzZXRsIGlzaz0kLDQ4LTU3LF8sYS16LEAtWgotZWxzZQoraWYgKHY6dmVyc2lvbiA9PSA3MDQgJiYgaGFzKCJwYXRjaC03LjQuMTE0MiIpKSB8fCB2OnZlcnNpb24gPiA3MDQKICBzeW4gaXNrZXl3b3JkICQsNDgtNTcsXyxhLXosQC1aCitlbHNlCisgc2V0bCBpc2s9JCw0OC01NyxfLGEteixALVoKIGVuZGlmCiAKICIgUGFja2FnZSBTZWxlY3Rpb246IHt7ezEKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NoLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NoLnZpbQppbmRleCA5ZWVkNTk0Li5iOWM3MWRlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zaC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2gudmltCkBAIC0yLDggKzIsOCBAQAogIiBMYW5ndWFnZToJCXNoZWxsIChzaCkgS29ybiBzaGVsbCAoa3NoKSBiYXNoIChzaCkKICIgTWFpbnRhaW5lcjoJCUNoYXJsZXMgRS4gQ2FtcGJlbGwgIDxOZHJPY2hpcFNAUGNhbXBiZWxsQWZhbWlseS5NYml6PgogIiBQcmV2aW91cyBNYWludGFpbmVyOglMZW5uYXJ0IFNjaHVsdHogPExlbm5hcnQuU2NodWx0ekBlY213Zi5pbnQ+Ci0iIExhc3QgQ2hhbmdlOgkJTm92IDIzLCAyMDE4Ci0iIFZlcnNpb246CQkxODUKKyIgTGFzdCBDaGFuZ2U6CQlNYXIgMjYsIDIwMTkKKyIgVmVyc2lvbjoJCTE4NgogIiBVUkw6CQlodHRwOi8vd3d3LmRyY2hpcC5vcmcvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI1NZTlRBWF9TSAogIiBGb3Igb3B0aW9ucyBhbmQgc2V0dGluZ3MsIHBsZWFzZSB1c2U6ICAgICAgOmhlbHAgZnQtc2gtc3ludGF4CiAiIFRoaXMgZmlsZSBpbmNsdWRlcyBtYW55IGlkZWFzIGZyb20gRXJpYyBCcnVuZXQgKGVyaWMuYnJ1bmV0QGVucy5mcikKQEAgLTg5LDcgKzg5LDcgQEAKIGVuZGlmCiAKICIgc2V0IHVwIHRoZSBzeW50YXgtaGlnaGxpZ2h0aW5nIGlza2V5d29yZAotaWYgaGFzKCJwYXRjaC03LjQuMTE0MiIpCitpZiAodjp2ZXJzaW9uID09IDcwNCAmJiBoYXMoInBhdGNoLTcuNC4xMTQyIikpIHx8IHY6dmVyc2lvbiA+IDcwNAogIGlmIGV4aXN0cygiYjppc19iYXNoIikKICAgZXhlICJzeW4gaXNrZXl3b3JkICIuJmlza2V5d29yZC4iLC0sOiIKICBlbHNlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC90ZXgudmltIGIvcnVudGltZS9zeW50YXgvdGV4LnZpbQppbmRleCAzOTY5Y2Q0Li42MzgxMDI4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90ZXgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3RleC52aW0KQEAgLTEsOCArMSw4IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJVGVYCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kcmNoaXBPQFNjYW1wYmVsbFBmYW1pbHkuQWJpek0+Ci0iIExhc3QgQ2hhbmdlOglOb3YgMDIsIDIwMTgKLSIgVmVyc2lvbjoJMTExCisiIExhc3QgQ2hhbmdlOglBcHIgMDEsIDIwMTkKKyIgVmVyc2lvbjoJMTEzCiAiIFVSTDoJCWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX1RFWAogIgogIiBOb3Rlczoge3t7MQpAQCAtMTI3LDcgKzEyNyw3IEBACiBlbHNlCiAgbGV0IGI6dGV4X2lzaz0iNDgtNTcsYS16LEEtWiwxOTItMjU1IgogZW5kaWYKLWlmIHY6dmVyc2lvbiA+IDcwNCB8fCAodjp2ZXJzaW9uID09IDcwNCAmJiBoYXMoInBhdGNoLTcuNC4xMTQyIikpCitpZiAodjp2ZXJzaW9uID09IDcwNCAmJiBoYXMoInBhdGNoLTcuNC4xMTQyIikpIHx8IHY6dmVyc2lvbiA+IDcwNAogIGV4ZSAic3luIGlza2V5d29yZCAiLmI6dGV4X2lzawogZWxzZQogIGV4ZSAic2V0bCBpc2s9Ii5iOnRleF9pc2sKQEAgLTE1NSw5ICsxNTUsOSBAQAogIHN5biBjbHVzdGVyIHRleENtZEdyb3VwCQlhZGQ9dGV4TWF0aEVycm9yCiBlbmRpZgogc3luIGNsdXN0ZXIgdGV4RW52R3JvdXAJCQljb250YWlucz10ZXhNYXRjaGVyLHRleE1hdGhEZWxpbSx0ZXhTcGVjaWFsQ2hhcix0ZXhTdGF0ZW1lbnQKLXN5biBjbHVzdGVyIHRleEZvbGRHcm91cAkJY29udGFpbnM9dGV4QWNjZW50LHRleEJhZE1hdGgsdGV4Q29tbWVudCx0ZXhEZWZDbWQsdGV4RGVsaW1pdGVyLHRleERvY1R5cGUsdGV4SW5wdXQsdGV4SW5wdXRGaWxlLHRleExlbmd0aCx0ZXhMaWdhdHVyZSx0ZXhNYXRjaGVyLHRleE1hdGhab25lVix0ZXhNYXRoWm9uZVcsdGV4TWF0aFpvbmVYLHRleE1hdGhab25lWSx0ZXhNYXRoWm9uZVosdGV4TmV3Q21kLHRleE5ld0Vudix0ZXhPbmx5TWF0aCx0ZXhPcHRpb24sdGV4UGFyZW4sdGV4UmVmWm9uZSx0ZXhTZWN0aW9uLHRleEJlZ2luRW5kLHRleFNlY3Rpb25ab25lLHRleFNwYWNlQ29kZSx0ZXhTcGVjaWFsQ2hhcix0ZXhTdGF0ZW1lbnQsdGV4U3RyaW5nLHRleFR5cGVTaXplLHRleFR5cGVTdHlsZSx0ZXhab25lLEB0ZXhNYXRoWm9uZXMsdGV4VGl0bGUsdGV4QWJzdHJhY3QsdGV4Qm9sZFN0eWxlLHRleEl0YWxTdHlsZSx0ZXhOb1NwZWxsCitzeW4gY2x1c3RlciB0ZXhGb2xkR3JvdXAJCWNvbnRhaW5zPXRleEFjY2VudCx0ZXhCYWRNYXRoLHRleENvbW1lbnQsdGV4RGVmQ21kLHRleERlbGltaXRlcix0ZXhEb2NUeXBlLHRleElucHV0LHRleElucHV0RmlsZSx0ZXhMZW5ndGgsdGV4TGlnYXR1cmUsdGV4TWF0Y2hlcix0ZXhNYXRoWm9uZVYsdGV4TWF0aFpvbmVXLHRleE1hdGhab25lWCx0ZXhNYXRoWm9uZVksdGV4TWF0aFpvbmVaLHRleE5ld0NtZCx0ZXhOZXdFbnYsdGV4T25seU1hdGgsdGV4T3B0aW9uLHRleFBhcmVuLHRleFJlZlpvbmUsdGV4U2VjdGlvbix0ZXhCZWdpbkVuZCx0ZXhTZWN0aW9uWm9uZSx0ZXhTcGFjZUNvZGUsdGV4U3BlY2lhbENoYXIsdGV4U3RhdGVtZW50LHRleFN0cmluZyx0ZXhUeXBlU2l6ZSx0ZXhUeXBlU3R5bGUsdGV4Wm9uZSxAdGV4TWF0aFpvbmVzLHRleFRpdGxlLHRleEFic3RyYWN0LHRleEJvbGRTdHlsZSx0ZXhJdGFsU3R5bGUsdGV4RW1waFN0eWxlLHRleE5vU3BlbGwKIHN5biBjbHVzdGVyIHRleEJvbGRHcm91cAkJY29udGFpbnM9dGV4QWNjZW50LHRleEJhZE1hdGgsdGV4Q29tbWVudCx0ZXhEZWZDbWQsdGV4RGVsaW1pdGVyLHRleERvY1R5cGUsdGV4SW5wdXQsdGV4SW5wdXRGaWxlLHRleExlbmd0aCx0ZXhMaWdhdHVyZSx0ZXhNYXRjaGVyLHRleE1hdGhab25lVix0ZXhNYXRoWm9uZVcsdGV4TWF0aFpvbmVYLHRleE1hdGhab25lWSx0ZXhNYXRoWm9uZVosdGV4TmV3Q21kLHRleE5ld0Vudix0ZXhPbmx5TWF0aCx0ZXhPcHRpb24sdGV4UGFyZW4sdGV4UmVmWm9uZSx0ZXhTZWN0aW9uLHRleEJlZ2luRW5kLHRleFNlY3Rpb25ab25lLHRleFNwYWNlQ29kZSx0ZXhTcGVjaWFsQ2hhcix0ZXhTdGF0ZW1lbnQsdGV4U3RyaW5nLHRleFR5cGVTaXplLHRleFR5cGVTdHlsZSx0ZXhab25lLEB0ZXhNYXRoWm9uZXMsdGV4VGl0bGUsdGV4QWJzdHJhY3QsdGV4Qm9sZFN0eWxlLHRleEJvbGRJdGFsU3R5bGUsdGV4Tm9TcGVsbAotc3luIGNsdXN0ZXIgdGV4SXRhbEdyb3VwCQljb250YWlucz10ZXhBY2NlbnQsdGV4QmFkTWF0aCx0ZXhDb21tZW50LHRleERlZkNtZCx0ZXhEZWxpbWl0ZXIsdGV4RG9jVHlwZSx0ZXhJbnB1dCx0ZXhJbnB1dEZpbGUsdGV4TGVuZ3RoLHRleExpZ2F0dXJlLHRleE1hdGNoZXIsdGV4TWF0aFpvbmVWLHRleE1hdGhab25lVyx0ZXhNYXRoWm9uZVgsdGV4TWF0aFpvbmVZLHRleE1hdGhab25lWix0ZXhOZXdDbWQsdGV4TmV3RW52LHRleE9ubHlNYXRoLHRleE9wdGlvbix0ZXhQYXJlbix0ZXhSZWZab25lLHRleFNlY3Rpb24sdGV4QmVnaW5FbmQsdGV4U2VjdGlvblpvbmUsdGV4U3BhY2VDb2RlLHRleFNwZWNpYWxDaGFyLHRleFN0YXRlbWVudCx0ZXhTdHJpbmcsdGV4VHlwZVNpemUsdGV4VHlwZVN0eWxlLHRleFpvbmUsQHRleE1hdGhab25lcyx0ZXhUaXRsZSx0ZXhBYnN0cmFjdCx0ZXhJdGFsU3R5bGUsdGV4SXRhbEJvbGRTdHlsZSx0ZXhOb1NwZWxsCitzeW4gY2x1c3RlciB0ZXhJdGFsR3JvdXAJCWNvbnRhaW5zPXRleEFjY2VudCx0ZXhCYWRNYXRoLHRleENvbW1lbnQsdGV4RGVmQ21kLHRleERlbGltaXRlcix0ZXhEb2NUeXBlLHRleElucHV0LHRleElucHV0RmlsZSx0ZXhMZW5ndGgsdGV4TGlnYXR1cmUsdGV4TWF0Y2hlcix0ZXhNYXRoWm9uZVYsdGV4TWF0aFpvbmVXLHRleE1hdGhab25lWCx0ZXhNYXRoWm9uZVksdGV4TWF0aFpvbmVaLHRleE5ld0NtZCx0ZXhOZXdFbnYsdGV4T25seU1hdGgsdGV4T3B0aW9uLHRleFBhcmVuLHRleFJlZlpvbmUsdGV4U2VjdGlvbix0ZXhCZWdpbkVuZCx0ZXhTZWN0aW9uWm9uZSx0ZXhTcGFjZUNvZGUsdGV4U3BlY2lhbENoYXIsdGV4U3RhdGVtZW50LHRleFN0cmluZyx0ZXhUeXBlU2l6ZSx0ZXhUeXBlU3R5bGUsdGV4Wm9uZSxAdGV4TWF0aFpvbmVzLHRleFRpdGxlLHRleEFic3RyYWN0LHRleEl0YWxTdHlsZSx0ZXhFbXBoU3R5bGUsdGV4SXRhbEJvbGRTdHlsZSx0ZXhOb1NwZWxsCiBpZiAhczp0ZXhfbm9zcGVsbAogIHN5biBjbHVzdGVyIHRleE1hdGNoR3JvdXAJCWNvbnRhaW5zPXRleEFjY2VudCx0ZXhCYWRNYXRoLHRleENvbW1lbnQsdGV4RGVmQ21kLHRleERlbGltaXRlcix0ZXhEb2NUeXBlLHRleElucHV0LHRleExlbmd0aCx0ZXhMaWdhdHVyZSx0ZXhNYXRjaGVyLHRleE5ld0NtZCx0ZXhOZXdFbnYsdGV4T25seU1hdGgsdGV4UGFyZW4sdGV4UmVmWm9uZSx0ZXhTZWN0aW9uLHRleFNwZWNpYWxDaGFyLHRleFN0YXRlbWVudCx0ZXhTdHJpbmcsdGV4VHlwZVNpemUsdGV4VHlwZVN0eWxlLHRleEJvbGRTdHlsZSx0ZXhCb2xkSXRhbFN0eWxlLHRleEl0YWxTdHlsZSx0ZXhJdGFsQm9sZFN0eWxlLHRleFpvbmUsdGV4SW5wdXRGaWxlLHRleE9wdGlvbixAU3BlbGwKICBzeW4gY2x1c3RlciB0ZXhNYXRjaE5NR3JvdXAJCWNvbnRhaW5zPXRleEFjY2VudCx0ZXhCYWRNYXRoLHRleENvbW1lbnQsdGV4RGVmQ21kLHRleERlbGltaXRlcix0ZXhEb2NUeXBlLHRleElucHV0LHRleExlbmd0aCx0ZXhMaWdhdHVyZSx0ZXhNYXRjaGVyTk0sdGV4TmV3Q21kLHRleE5ld0Vudix0ZXhPbmx5TWF0aCx0ZXhQYXJlbix0ZXhSZWZab25lLHRleFNlY3Rpb24sdGV4U3BlY2lhbENoYXIsdGV4U3RhdGVtZW50LHRleFN0cmluZyx0ZXhUeXBlU2l6ZSx0ZXhUeXBlU3R5bGUsdGV4Qm9sZFN0eWxlLHRleEJvbGRJdGFsU3R5bGUsdGV4SXRhbFN0eWxlLHRleEl0YWxCb2xkU3R5bGUsdGV4Wm9uZSx0ZXhJbnB1dEZpbGUsdGV4T3B0aW9uLEBTcGVsbApAQCAtMzAxLDYgKzMwMSw3IEBACiBpZiBzOnRleF9jb25jZWFsICF+IyAnYicKICBzeW4gbWF0Y2ggdGV4VHlwZVN0eWxlCQkiXFx0ZXh0YmZcPiIKICBzeW4gbWF0Y2ggdGV4VHlwZVN0eWxlCQkiXFx0ZXh0aXRcPiIKKyBzeW4gbWF0Y2ggdGV4VHlwZVN0eWxlCQkiXFxlbXBoXD4iCiBlbmRpZgogc3luIG1hdGNoIHRleFR5cGVTdHlsZQkJIlxcdGV4dG1kXD4iCiBzeW4gbWF0Y2ggdGV4VHlwZVN0eWxlCQkiXFx0ZXh0cm1cPiIKQEAgLTMwOSw3ICszMTAsNiBAQAogc3luIG1hdGNoIHRleFR5cGVTdHlsZQkJIlxcdGV4dHNsXD4iCiBzeW4gbWF0Y2ggdGV4VHlwZVN0eWxlCQkiXFx0ZXh0dHRcPiIKIHN5biBtYXRjaCB0ZXhUeXBlU3R5bGUJCSJcXHRleHR1cFw+Igotc3luIG1hdGNoIHRleFR5cGVTdHlsZQkJIlxcZW1waFw+IgogCiBzeW4gbWF0Y2ggdGV4VHlwZVN0eWxlCQkiXFxtYXRoYmJcPiIKIHN5biBtYXRjaCB0ZXhUeXBlU3R5bGUJCSJcXG1hdGhiZlw+IgpAQCAtMzg1LDExICszODUsMTMgQEAKICAgICBzeW4gcmVnaW9uIHRleEJvbGRJdGFsU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGl0XHMqeyIgbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgIGVuZD0ifSIgY29uY2VhbGVuZHMgY29udGFpbnM9QHRleEl0YWxHcm91cCxAU3BlbGwKICAgICBzeW4gcmVnaW9uIHRleEl0YWxTdHlsZQltYXRjaGdyb3VwPXRleFR5cGVTdHlsZSBzdGFydD0iXFx0ZXh0aXRccyp7IiBtYXRjaGdyb3VwPXRleFR5cGVTdHlsZSAgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4SXRhbEdyb3VwLEBTcGVsbAogICAgIHN5biByZWdpb24gdGV4SXRhbEJvbGRTdHlsZQltYXRjaGdyb3VwPXRleFR5cGVTdHlsZSBzdGFydD0iXFx0ZXh0YmZccyp7IiBtYXRjaGdyb3VwPXRleFR5cGVTdHlsZSAgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4Qm9sZEdyb3VwLEBTcGVsbAorICAgIHN5biByZWdpb24gdGV4RW1waFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXGVtcGhccyp7IiAgIG1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlICBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhJdGFsR3JvdXAsQFNwZWxsCiAgICBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgIHN5biByZWdpb24gdGV4Qm9sZFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXHRleHRiZlxzKnsiIG1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlICBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhCb2xkR3JvdXAKICAgICBzeW4gcmVnaW9uIHRleEJvbGRJdGFsU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGl0XHMqeyIgbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgIGVuZD0ifSIgY29uY2VhbGVuZHMgY29udGFpbnM9QHRleEl0YWxHcm91cAogICAgIHN5biByZWdpb24gdGV4SXRhbFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXHRleHRpdFxzKnsiIG1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlICBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhJdGFsR3JvdXAKICAgICBzeW4gcmVnaW9uIHRleEl0YWxCb2xkU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGJmXHMqeyIgbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgIGVuZD0ifSIgY29uY2VhbGVuZHMgY29udGFpbnM9QHRleEJvbGRHcm91cAorICAgIHN5biByZWdpb24gdGV4RW1waFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXGVtcGhccyp7IiAgIG1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlICBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhJdGFsR3JvdXAKICAgIGVuZGlmCiAgIGVuZGlmCiBlbmRpZgpAQCAtNzkwLDYgKzc5Miw4IEBACiAgICAgXCBbJ3Byb3B0bycJCSwgJ+KInSddLAogICAgIFwgWydyY2VpbCcJCSwgJ+KMiSddLAogICAgIFwgWydSZScJCSwgJ+KEnCddLAorICAgIFwgWydxdWFkJwkJLCAn4oCAJ10sCisgICAgXCBbJ3FxdWFkJwkJLCAn4oCBJ10sCiAgICAgXCBbJ3JmbG9vcicJCSwgJ+KMiyddLAogICAgIFwgWydyaWdodCknCQksICcpJ10sCiAgICAgXCBbJ3JpZ2h0XScJCSwgJ10nXSwKQEAgLTEyMjgsNiArMTIzMiw3IEBACiAgIGhpIHRleEl0YWxTdHlsZQkJZ3VpPWl0YWxpYwljdGVybT1pdGFsaWMKICAgaGkgdGV4Qm9sZEl0YWxTdHlsZQkJZ3VpPWJvbGQsaXRhbGljIGN0ZXJtPWJvbGQsaXRhbGljCiAgIGhpIHRleEl0YWxCb2xkU3R5bGUJCWd1aT1ib2xkLGl0YWxpYyBjdGVybT1ib2xkLGl0YWxpYworICBoaSBkZWYgbGluayB0ZXhFbXBoU3R5bGUJdGV4SXRhbFN0eWxlCiAgIGhpIGRlZiBsaW5rIHRleENpdGUJCXRleFJlZlpvbmUKICAgaGkgZGVmIGxpbmsgdGV4RGVmQ21kCQl0ZXhEZWYKICAgaGkgZGVmIGxpbmsgdGV4RGVmTmFtZQl0ZXhEZWYKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3ZpbS52aW0gYi9ydW50aW1lL3N5bnRheC92aW0udmltCmluZGV4IGFlNzk4M2YuLmI2YWM2YjUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3ZpbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdmltLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglWaW0gOC4wIHNjcmlwdAogIiBNYWludGFpbmVyOglDaGFybGVzIEUuIENhbXBiZWxsIDxOZHJPY2hpcFNAUGNhbXBiZWxsQWZhbWlseS5NYml6PgotIiBMYXN0IENoYW5nZToJU2VwIDI2LCAyMDE4Ci0iIFZlcnNpb246CTguMC0yMAorIiBMYXN0IENoYW5nZToJTWFyIDA4LCAyMDE5CisiIFZlcnNpb246CTguMC0yMQogIiBVUkw6CWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX1ZJTQogIiBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBrZXl3b3JkIGxpc3RzOiB7e3sxCiAKQEAgLTIxNyw3ICsyMTcsNyBAQAogIiA9PT09PT09PT0KIHN5biBjbHVzdGVyCXZpbU9wZXJHcm91cAljb250YWlucz12aW1FbnZ2YXIsdmltRnVuYyx2aW1GdW5jVmFyLHZpbU9wZXIsdmltT3BlclBhcmVuLHZpbU51bWJlcix2aW1TdHJpbmcsdmltUmVnaXN0ZXIsdmltQ29udGludWUKIHN5biBtYXRjaAl2aW1PcGVyCSJcJSM9MVwoPT1cfCE9XHw+PVx8PD1cfD1cflx8IVx+XHw+XHw8XHw9XClbPyNdXHswLDJ9Iglza2lwd2hpdGUgbmV4dGdyb3VwPXZpbVN0cmluZyx2aW1TcGVjRmlsZQotc3luIG1hdGNoCXZpbU9wZXIJIlwoXDxpc1w+XHxcPGlzbm90XD5cKVs/I11cezAsMn0iCQlza2lwd2hpdGUgbmV4dGdyb3VwPXZpbVN0cmluZyx2aW1TcGVjRmlsZQorc3luIG1hdGNoCXZpbU9wZXIJIlwoXDxpc1x8XDxpc25vdFwpWz8jXVx7MCwyfVw+IgkJc2tpcHdoaXRlIG5leHRncm91cD12aW1TdHJpbmcsdmltU3BlY0ZpbGUKIHN5biBtYXRjaAl2aW1PcGVyCSJ8fFx8JiZcfFstKy5dIgkJCXNraXB3aGl0ZSBuZXh0Z3JvdXA9dmltU3RyaW5nLHZpbVNwZWNGaWxlCiBzeW4gcmVnaW9uCXZpbU9wZXJQYXJlbiAJbWF0Y2hncm91cD12aW1QYXJlblNlcAlzdGFydD0iKCIgZW5kPSIpIiBjb250YWlucz1AdmltT3Blckdyb3VwCiBzeW4gcmVnaW9uCXZpbU9wZXJQYXJlbgltYXRjaGdyb3VwPXZpbVNlcAkJc3RhcnQ9InsiIGVuZD0ifSIgY29udGFpbnM9QHZpbU9wZXJHcm91cCBuZXh0Z3JvdXA9dmltVmFyLHZpbUZ1bmNWYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3lhY2MudmltIGIvcnVudGltZS9zeW50YXgveWFjYy52aW0KaW5kZXggMDFlMzQyZS4uOGU0YTIyNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgveWFjYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgveWFjYy52aW0KQEAgLTEsOCArMSw4IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJWWFjYwogIiBNYWludGFpbmVyOglDaGFybGVzIEUuIENhbXBiZWxsIDxOZHJPY2hpcFNAUGNhbXBiZWxsQWZhbWlseS5NYml6PgotIiBMYXN0IENoYW5nZToJQXVnIDMxLCAyMDE2Ci0iIFZlcnNpb246CTE1CisiIExhc3QgQ2hhbmdlOglNYXIgMjUsIDIwMTkKKyIgVmVyc2lvbjoJMTYKICIgVVJMOglodHRwOi8vd3d3LmRyY2hpcC5vcmcvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI1NZTlRBWF9ZQUNDCiAiCiAiIE9wdGlvbnM6IHt7ezEKQEAgLTQzLDEyICs0MywxMiBAQAogCiAiIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIiAgWWFjYyBTZWN0aW9uczoge3t7MQotU3luRm9sZCBzeW4JcmVnaW9uCXlhY2NJbml0CXN0YXJ0PScuJ21zPXMtMSxycz1zLTEJbWF0Y2hncm91cD15YWNjU2VjdGlvblNlcAllbmQ9J14lJSQnbWU9ZS0yLHJlPWUtMgljb250YWlucz1AeWFjY0luaXRDbHVzdGVyCW5leHRncm91cD15YWNjUnVsZXMJc2tpcHdoaXRlIHNraXBlbXB0eSBjb250YWluZWQKLVN5bkZvbGQgc3luCXJlZ2lvbgl5YWNjSW5pdDIgICAgICBzdGFydD0nXCVeLidtcz1zLTEscnM9cy0xCW1hdGNoZ3JvdXA9eWFjY1NlY3Rpb25TZXAJZW5kPSdeJSUkJ21lPWUtMixyZT1lLTIJY29udGFpbnM9QHlhY2NJbml0Q2x1c3RlcgluZXh0Z3JvdXA9eWFjY1J1bGVzCXNraXB3aGl0ZSBza2lwZW1wdHkKLVN5bkZvbGQgc3luCXJlZ2lvbgl5YWNjSGVhZGVyMgltYXRjaGdyb3VwPXlhY2NTZXAJc3RhcnQ9Il5ccypcenMleyIJZW5kPSJeXHMqJX0iCQljb250YWlucz1AeWFjY0NvZGUJbmV4dGdyb3VwPXlhY2NJbml0CXNraXB3aGl0ZSBza2lwZW1wdHkgY29udGFpbmVkCi1TeW5Gb2xkIHN5bglyZWdpb24JeWFjY0hlYWRlcgltYXRjaGdyb3VwPXlhY2NTZXAJc3RhcnQ9Il5ccypcenMleyIJZW5kPSJeXHMqJX0iCQljb250YWlucz1AeWFjY0NvZGUJbmV4dGdyb3VwPXlhY2NJbml0CXNraXB3aGl0ZSBza2lwZW1wdHkKLVN5bkZvbGQgc3luCXJlZ2lvbgl5YWNjUnVsZXMJbWF0Y2hncm91cD15YWNjU2VjdGlvblNlcAlzdGFydD0nXiUlJCcJCWVuZD0nXiUlJCdtZT1lLTIscmU9ZS0yCWNvbnRhaW5zPUB5YWNjUnVsZXNDbHVzdGVyCW5leHRncm91cD15YWNjRW5kQ29kZQlza2lwd2hpdGUgc2tpcGVtcHR5IGNvbnRhaW5lZAotU3luRm9sZCBzeW4JcmVnaW9uCXlhY2NFbmRDb2RlCW1hdGNoZ3JvdXA9eWFjY1NlY3Rpb25TZXAJc3RhcnQ9J14lJSQnCQllbmQ9J1wlJCcJCWNvbnRhaW5zPUB5YWNjQ29kZQljb250YWluZWQKK1N5bkZvbGQgc3luCXJlZ2lvbgl5YWNjSW5pdAlzdGFydD0nLidtcz1zLTEscnM9cy0xCW1hdGNoZ3JvdXA9eWFjY1NlY3Rpb25TZXAJCWVuZD0nXiUlXHplXChccyovWyovXS4qXClcPSQnbWU9ZS0yLHJlPWUtMgljb250YWlucz1AeWFjY0luaXRDbHVzdGVyCW5leHRncm91cD15YWNjUnVsZXMJc2tpcHdoaXRlIHNraXBlbXB0eSBjb250YWluZWQKK1N5bkZvbGQgc3luCXJlZ2lvbgl5YWNjSW5pdDIgICAgICBzdGFydD0nXCVeLidtcz1zLTEscnM9cy0xCW1hdGNoZ3JvdXA9eWFjY1NlY3Rpb25TZXAJCWVuZD0nXiUlXHplXChccyovWyovXS4qXClcPSQnbWU9ZS0yLHJlPWUtMgljb250YWlucz1AeWFjY0luaXRDbHVzdGVyCW5leHRncm91cD15YWNjUnVsZXMJc2tpcHdoaXRlIHNraXBlbXB0eQorU3luRm9sZCBzeW4JcmVnaW9uCXlhY2NIZWFkZXIyCW1hdGNoZ3JvdXA9eWFjY1NlcAlzdGFydD0iXlxzKlx6cyV7IgkJZW5kPSJeXHMqJX0iCQkJY29udGFpbnM9QHlhY2NDb2RlCW5leHRncm91cD15YWNjSW5pdAlza2lwd2hpdGUgc2tpcGVtcHR5IGNvbnRhaW5lZAorU3luRm9sZCBzeW4JcmVnaW9uCXlhY2NIZWFkZXIJbWF0Y2hncm91cD15YWNjU2VwCXN0YXJ0PSJeXHMqXHpzJXsiCQllbmQ9Il5ccyolfSIJCQljb250YWlucz1AeWFjY0NvZGUJbmV4dGdyb3VwPXlhY2NJbml0CXNraXB3aGl0ZSBza2lwZW1wdHkKK1N5bkZvbGQgc3luCXJlZ2lvbgl5YWNjUnVsZXMJbWF0Y2hncm91cD15YWNjU2VjdGlvblNlcAlzdGFydD0nXiUlXHplXChccyovWyovXS4qXClcPSQnCWVuZD0nXiUlXHplXChccyovWyovXS4qXClcPSQnbWU9ZS0yLHJlPWUtMgljb250YWlucz1AeWFjY1J1bGVzQ2x1c3RlcgluZXh0Z3JvdXA9eWFjY0VuZENvZGUJc2tpcHdoaXRlIHNraXBlbXB0eSBjb250YWluZWQKK1N5bkZvbGQgc3luCXJlZ2lvbgl5YWNjRW5kQ29kZQltYXRjaGdyb3VwPXlhY2NTZWN0aW9uU2VwCXN0YXJ0PSdeJSVcemVcKFxzKi9bKi9dLipcKVw9JCcJZW5kPSdcJSQnCQkJY29udGFpbnM9QHlhY2NDb2RlCWNvbnRhaW5lZAogCiAiIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIiBZYWNjIENvbW1hbmRzOiB7e3sxCkBAIC03Miw2ICs3Miw3IEBACiAKIFN5bkZvbGQgc3luCXJlZ2lvbgl5YWNjTm9udGVybWluYWwJc3RhcnQ9Il5ccypcYVx3Klx6ZVxfcypcKC9cKlxfLlx7LX1cKi9cKVw9XF9zKjoiCW1hdGNoZ3JvdXA9eWFjY0RlbGltIGVuZD0iOyIJbWF0Y2hncm91cD15YWNjU2VjdGlvblNlcCBlbmQ9J14lJSQnbWU9ZS0yLHJlPWUtMiBjb250YWlucz15YWNjQWN0aW9uLHlhY2NEZWxpbSx5YWNjU3RyaW5nLHlhY2NDb21tZW50CWNvbnRhaW5lZAogc3luCXJlZ2lvbgl5YWNjQ29tbWVudAlzdGFydD0iL1wqIgllbmQ9IlwqLyIKK3N5bglyZWdpb24JeWFjY0NvbW1lbnQJc3RhcnQ9Ii8vIgllbmQ9IiQiCiBzeW4JbWF0Y2gJeWFjY1N0cmluZwkiJ1teJ10qJyIJY29udGFpbmVkCiAKIApkaWZmIC0tZ2l0IGEvcnVudGltZS92aW0uZGVza3RvcCBiL3J1bnRpbWUvdmltLmRlc2t0b3AKaW5kZXggODYzY2QyNC4uYTkwOGZhYSAxMDA2NDQKLS0tIGEvcnVudGltZS92aW0uZGVza3RvcAorKysgYi9ydW50aW1lL3ZpbS5kZXNrdG9wCkBAIC00LDYgKzQsNyBAQAogR2VuZXJpY05hbWVbZGFdPVRla3N0ZWRpdG9yCiBHZW5lcmljTmFtZVtkZV09VGV4dGVkaXRvcgogR2VuZXJpY05hbWVbcGxdPUVkeXRvciB0ZWtzdHUKK0dlbmVyaWNOYW1lW2lzXT1SaXR2aW5uc2x1Zm9ycml0CiBDb21tZW50PUVkaXQgdGV4dCBmaWxlcwogQ29tbWVudFthZl09UmVkaWdlZXIgdGVrc2zDqmVycwogQ29tbWVudFthbV094Yuo4Yy94YiR4Y2NIOGNi+GLreGIjuGJvSDhi6vhiLXhibDhiqvhiq3hiIkKQEAgLTM0LDYgKzM1LDcgQEAKIENvbW1lbnRbaHJdPVVyZcSRaXZhbmplIHRla3N0dWFsbmUgZGF0b3Rla2UKIENvbW1lbnRbaHVdPVN6w7Z2ZWdmw6FqbG9rIHN6ZXJrZXN6dMOpc2UKIENvbW1lbnRbaWRdPUVkaXQgZmlsZSB0ZWtzCitDb21tZW50W2lzXT1WaW5uYSBtZcOwIHRleHRhc2tyw6FyCiBDb21tZW50W2l0XT1Nb2RpZmljYSBmaWxlIGRpIHRlc3RvCiBDb21tZW50W2phXT3jg4bjgq3jgrnjg4jjg5XjgqHjgqTjg6vjgpLnt6jpm4bjgZfjgb7jgZkKIENvbW1lbnRba25dPeCyquCyoOCzjeCyryDgspXgsqHgsqTgspfgsrPgsqjgs43gsqjgs4Eg4LK44LKC4LKq4LK+4LKm4LK/4LK44LOBCg==