ZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2V2YWwudHh0IGIvcnVudGltZS9kb2MvZXZhbC50eHQKaW5kZXggYWJmOWM5MC4uMGI3YTNlZCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZXZhbC50eHQKKysrIGIvcnVudGltZS9kb2MvZXZhbC50eHQKQEAgLTEsNCArMSw0IEBACi0qZXZhbC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKYW4gMDQKKypldmFsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEphbiAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC00ODE0LDYgKzQ4MTQsMTAgQEAKIAkJU2VhcmNoIGZvciByZWdleHAgcGF0dGVybiB7cGF0dGVybn0uICBUaGUgc2VhcmNoIHN0YXJ0cyBhdCB0aGUKIAkJY3Vyc29yIHBvc2l0aW9uICh5b3UgY2FuIHVzZSB8Y3Vyc29yKCl8IHRvIHNldCBpdCkuCiAKKwkJSWYgdGhlcmUgaXMgbm8gbWF0Y2ggYSAwIGlzIHJldHVybmVkIGFuZCB0aGUgY3Vyc29yIGRvZXNuJ3QKKwkJbW92ZS4gIE5vIGVycm9yIG1lc3NhZ2UgaXMgZ2l2ZW4uCisJCVdoZW4gYSBtYXRjaCBoYXMgYmVlbiBmb3VuZCBpdHMgbGluZSBudW1iZXIgaXMgcmV0dXJuZWQuCisKIAkJe2ZsYWdzfSBpcyBhIFN0cmluZywgd2hpY2ggY2FuIGNvbnRhaW4gdGhlc2UgY2hhcmFjdGVyIGZsYWdzOgogCQknYicJc2VhcmNoIGJhY2t3YXJkIGluc3RlYWQgb2YgZm9yd2FyZAogCQknYycJYWNjZXB0IGEgbWF0Y2ggYXQgdGhlIGN1cnNvciBwb3NpdGlvbgpAQCAtNDg0Nyw5ICs0ODUxLDYgQEAKIAkJZ2l2aW5nIHRoZSBhcmd1bWVudC4KIAkJe29ubHkgYXZhaWxhYmxlIHdoZW4gY29tcGlsZWQgd2l0aCB0aGUgfCtyZWx0aW1lfCBmZWF0dXJlfQogCi0JCUlmIHRoZXJlIGlzIG5vIG1hdGNoIGEgMCBpcyByZXR1cm5lZCBhbmQgdGhlIGN1cnNvciBkb2Vzbid0Ci0JCW1vdmUuICBObyBlcnJvciBtZXNzYWdlIGlzIGdpdmVuLgotCQlXaGVuIGEgbWF0Y2ggaGFzIGJlZW4gZm91bmQgaXRzIGxpbmUgbnVtYmVyIGlzIHJldHVybmVkLgogCQkJCQkJCSpzZWFyY2goKS1zdWItbWF0Y2gqCiAJCVdpdGggdGhlICdwJyBmbGFnIHRoZSByZXR1cm5lZCB2YWx1ZSBpcyBvbmUgbW9yZSB0aGFuIHRoZQogCQlmaXJzdCBzdWItbWF0Y2ggaW4gXChcKS4gIE9uZSBpZiBub25lIG9mIHRoZW0gbWF0Y2hlZCBidXQgdGhlCkBAIC01MDY4LDcgKzUwNjksOCBAQAogCQlsaW5lLgogCiBzZXRsaW5lKHtsbnVtfSwge3RleHR9KQkJCQkJKnNldGxpbmUoKSoKLQkJU2V0IGxpbmUge2xudW19IG9mIHRoZSBjdXJyZW50IGJ1ZmZlciB0byB7dGV4dH0uCisJCVNldCBsaW5lIHtsbnVtfSBvZiB0aGUgY3VycmVudCBidWZmZXIgdG8ge3RleHR9LiAgVG8gaW5zZXJ0CisJCWxpbmVzIHVzZSB8YXBwZW5kKCl8LgogCQl7bG51bX0gaXMgdXNlZCBsaWtlIHdpdGggfGdldGxpbmUoKXwuCiAJCVdoZW4ge2xudW19IGlzIGp1c3QgYmVsb3cgdGhlIGxhc3QgbGluZSB0aGUge3RleHR9IHdpbGwgYmUKIAkJYWRkZWQgYXMgYSBuZXcgbGluZS4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2lmX3B5dGgudHh0IGIvcnVudGltZS9kb2MvaWZfcHl0aC50eHQKaW5kZXggMDNkMjRhNS4uZTU0MmEwNCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaWZfcHl0aC50eHQKKysrIGIvcnVudGltZS9kb2MvaWZfcHl0aC50eHQKQEAgLTEsNCArMSw0IEBACi0qaWZfcHl0aC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIEF1ZyAxOQorKmlmX3B5dGgudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBGZWIgMDQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgUGF1bCBNb29yZQpAQCAtMjIyLDggKzIyMiw5IEBACiAJLSBmcm9tIGluZGV4aW5nIHZpbS5idWZmZXJzICh8cHl0aG9uLWJ1ZmZlcnN8KQogCS0gZnJvbSB0aGUgImJ1ZmZlciIgYXR0cmlidXRlIG9mIGEgd2luZG93ICh8cHl0aG9uLXdpbmRvd3wpCiAKLUJ1ZmZlciBvYmplY3RzIGhhdmUgb25lIHJlYWQtb25seSBhdHRyaWJ1dGUgLSBuYW1lIC0gdGhlIGZ1bGwgZmlsZSBuYW1lIGZvcgotdGhlIGJ1ZmZlci4gIFRoZXkgYWxzbyBoYXZlIHRocmVlIG1ldGhvZHMgKGFwcGVuZCwgbWFyaywgYW5kIHJhbmdlOyBzZWUgYmVsb3cpLgorQnVmZmVyIG9iamVjdHMgaGF2ZSB0d28gcmVhZC1vbmx5IGF0dHJpYnV0ZXMgLSBuYW1lIC0gdGhlIGZ1bGwgZmlsZSBuYW1lIGZvcgordGhlIGJ1ZmZlciwgYW5kIG51bWJlciAtIHRoZSBidWZmZXIgbnVtYmVyLiAgVGhleSBhbHNvIGhhdmUgdGhyZWUgbWV0aG9kcworKGFwcGVuZCwgbWFyaywgYW5kIHJhbmdlOyBzZWUgYmVsb3cpLgogCiBZb3UgY2FuIGFsc28gdHJlYXQgYnVmZmVyIG9iamVjdHMgYXMgc2VxdWVuY2Ugb2JqZWN0cy4gIEluIHRoaXMgY29udGV4dCwgdGhleQogYWN0IGFzIGlmIHRoZXkgd2VyZSBsaXN0cyAoeWVzLCB0aGV5IGFyZSBtdXRhYmxlKSBvZiBzdHJpbmdzLCB3aXRoIGVhY2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2luc2VydC50eHQgYi9ydW50aW1lL2RvYy9pbnNlcnQudHh0CmluZGV4IDI0YTE3ZDUuLjkyNGU4YTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2luc2VydC50eHQKKysrIGIvcnVudGltZS9kb2MvaW5zZXJ0LnR4dApAQCAtMSw0ICsxLDQgQEAKLSppbnNlcnQudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgU2VwIDE0CisqaW5zZXJ0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEphbiAyNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMTAxMCw3ICsxMDEwLDggQEAKIGF0IHRoZSBjaGFyYWN0ZXJzIGp1c3QgYmVmb3JlIHRoZSBjdXJzb3IgYW5kIGluY2x1ZGluZyB0aG9zZSBjaGFyYWN0ZXJzIHRoYXQKIGNvdWxkIGJlIHBhcnQgb2YgdGhlIGNvbXBsZXRlZCBpdGVtLiAgVGhlIHRleHQgYmV0d2VlbiB0aGlzIGNvbHVtbiBhbmQgdGhlCiBjdXJzb3IgY29sdW1uIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCB0aGUgbWF0Y2hlcy4gIFJldHVybiAtMSBpZiBubyBjb21wbGV0aW9uCi1jYW4gYmUgZG9uZS4KK2NhbiBiZSBkb25lLCB0aGUgY29tcGxldGlvbiB3aWxsIGJlIGNhbmNlbGxlZCB3aXRoIGFuIGVycm9yIG1lc3NhZ2UuICBSZXR1cm4KKy0yIHRvIGNhbmNlbCBzaWxlbnRseS4KIAogT24gdGhlIHNlY29uZCBpbnZvY2F0aW9uIHRoZSBhcmd1bWVudHMgYXJlOgogICAgYTpmaW5kc3RhcnQgIDAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL21hcC50eHQgYi9ydW50aW1lL2RvYy9tYXAudHh0CmluZGV4IDczYjc5ZjIuLmYxMTdmNmYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL21hcC50eHQKKysrIGIvcnVudGltZS9kb2MvbWFwLnR4dApAQCAtMSw0ICsxLDQgQEAKLSptYXAudHh0KiAgICAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgT2N0IDIyCisqbWFwLnR4dCogICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEZlYiAwMgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNTI3LDcgKzUyNyw3IEBACiA8TG9jYWxMZWFkZXI+IGlzIGp1c3QgbGlrZSA8TGVhZGVyPiwgZXhjZXB0IHRoYXQgaXQgdXNlcyAibWFwbG9jYWxsZWFkZXIiCiBpbnN0ZWFkIG9mICJtYXBsZWFkZXIiLiAgPExvY2FsTGVhZGVyPiBpcyB0byBiZSB1c2VkIGZvciBtYXBwaW5ncyB3aGljaCBhcmUKIGxvY2FsIHRvIGEgYnVmZmVyLiAgRXhhbXBsZTogPgotICAgICAgOm1hcCA8TG9jYWxMZWFkZXI+cSAgXERvSXROb3cKKyAgICAgIDptYXAgPGJ1ZmZlcj4gPExvY2FsTGVhZGVyPkEgIG9hbm90aGVyIGxpbmU8RXNjPgogPAogSW4gYSBnbG9iYWwgcGx1Z2luIDxMZWFkZXI+IHNob3VsZCBiZSB1c2VkIGFuZCBpbiBhIGZpbGV0eXBlIHBsdWdpbgogPExvY2FsTGVhZGVyPi4gICJtYXBsZWFkZXIiIGFuZCAibWFwbG9jYWxsZWFkZXIiIGNhbiBiZSBlcXVhbC4gIEFsdGhvdWdoLCBpZgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvbmV0YmVhbnMudHh0IGIvcnVudGltZS9kb2MvbmV0YmVhbnMudHh0CmluZGV4IGI3NjE0ZTcuLmFiYjg4NjggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL25ldGJlYW5zLnR4dAorKysgYi9ydW50aW1lL2RvYy9uZXRiZWFucy50eHQKQEAgLTEsNCArMSw0IEBACi0qbmV0YmVhbnMudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIE9jdCAyMAorKm5ldGJlYW5zLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKYW4gMjYKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgR29yZG9uIFByaWV1ciBldCBhbC4KQEAgLTI2Niw3ICsyNjYsNyBAQAogTmV0YmVhbnMgbWVzc2FnZXMgYXJlIHByb2Nlc3NlZCB3aGVuIFZpbSBpcyBpZGxlLCB3YWl0aW5nIGZvciB1c2VyIGlucHV0LgogV2hlbiBWaW0gaXMgcnVuIGluIG5vbi1pbnRlcmFjdGl2ZSBtb2RlLCBmb3IgZXhhbXBsZSB3aGVuIHJ1bm5pbmcgYW4gYXV0b21hdGVkCiB0ZXN0IGNhc2UgdGhhdCBzb3VyY2VzIGEgVmltIHNjcmlwdCwgdGhlIGlkbGUgbG9vcCBtYXkgbm90IGJlIGNhbGxlZCBvZnRlbgotZW5vdWdoLiBJbiB0aGF0IGNhc2UsIGluc2VydCB8c2xlZXB8IGNvbW1hbmRzIGluIHRoZSBWaW0gc2NyaXB0LiBUaGUgfHNsZWVwfAorZW5vdWdoLiBJbiB0aGF0IGNhc2UsIGluc2VydCB8OnNsZWVwfCBjb21tYW5kcyBpbiB0aGUgVmltIHNjcmlwdC4gVGhlIHw6c2xlZXB8CiBjb21tYW5kIGRvZXMgaW52b2tlIE5ldGJlYW5zIG1lc3NhZ2VzIHByb2Nlc3NpbmcuCiAKIDYuMSBLaW5kcyBvZiBtZXNzYWdlcwkJfG5iLW1lc3NhZ2VzfApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvcGlfbmV0cncudHh0IGIvcnVudGltZS9kb2MvcGlfbmV0cncudHh0CmluZGV4IDRiNzRkMWYuLjFkNGEwOWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3BpX25ldHJ3LnR4dAorKysgYi9ydW50aW1lL2RvYy9waV9uZXRydy50eHQKQEAgLTEsNCArMSw0IEBACi0qcGlfbmV0cncudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDExIFNlcCAyNgorKnBpX25ldHJ3LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKYW4gMjYKIAogCSAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCSAgICBORVRSVyBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IENoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLgpAQCAtNDMsNyArNDMsNyBAQAogNS4gIEFjdGl2YXRpb24uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4ufG5ldHJ3LWFjdGl2YXRlfAogNi4gIFRyYW5zcGFyZW50IFJlbW90ZSBGaWxlIEVkaXRpbmcuLi4uLi4uLi4uLi4uLi4uLi4uLi4ufG5ldHJ3LXRyYW5zcGFyZW50fAogNy4gIEV4IENvbW1hbmRzLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4ufG5ldHJ3LWV4fAotOC4gIFZhcmlhYmxlcyBhbmQgT3B0aW9ucy4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4ufG5ldHJ3LXZhcnwKKzguICBWYXJpYWJsZXMgYW5kIE9wdGlvbnMuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLnxuZXRydy1zZXR0aW5nc3wKIDkuICBCcm93c2luZy4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLnxuZXRydy1icm93c2V8CiAgICAgICBJbnRyb2R1Y3Rpb24gVG8gQnJvd3NpbmcuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi58bmV0cnctaW50cm8tYnJvd3NlfAogICAgICAgUXVpY2sgUmVmZXJlbmNlOiBNYXBzLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4ufG5ldHJ3LWJyb3dzZS1tYXBzfApAQCAtMzA5LDcgKzMwOSw3IEBACiAJOmNhbGwgTmV0VXNlclBhc3MoInVpZCIsInBhc3N3b3JkIikJLS0gc2V0cyBnbG9iYWwgdWlkIGFuZCBwYXNzd29yZAogCiBORVRSVyBWQVJJQUJMRVMgQU5EIFNFVFRJTkdTCQkJCSpuZXRydy12YXJpYWJsZXMqIHt7ezIKLShhbHNvIHNlZTogfG5ldHJ3LWJyb3dzZXItdmFyfCB8bmV0cnctcHJvdG9jb2x8IHxuZXRydy1zZXR0aW5nc3wgfG5ldHJ3LXZhcnwpCisoYWxzbyBzZWU6IHxuZXRydy1icm93c2VyLXZhcnwgfG5ldHJ3LXByb3RvY29sfCB8bmV0cnctc2V0dGluZ3N8KQogCiBOZXRydyBwcm92aWRlcyBhIGxvdCBvZiB2YXJpYWJsZXMgd2hpY2ggYWxsb3cgeW91IHRvIGN1c3RvbWl6ZSBuZXRydyB0byB5b3VyCiBwcmVmZXJlbmNlcy4gIE9uZSB3YXkgdG8gbG9vayBhdCB0aGVtIGlzIHZpYSB0aGUgY29tbWFuZCA6TmV0cndTZXR0aW5ncyAoc2VlCkBAIC0yMzU0LDcgKzIzNTQsNyBAQAogc2V0dGluZ3MgdGhlcmVpbiB3aWxsIGJlIHVzZWQuICBPbmUgbWF5IGFsc28gcHJlc3MgIj8iIG9uIGFueSBvZiB0aGUgbGluZXMgZm9yCiBoZWxwIG9uIHdoYXQgZWFjaCBvZiB0aGUgdmFyaWFibGVzIGRvLgogCi0oYWxzbyBzZWU6IHxuZXRydy1icm93c2VyLXZhcnwgfG5ldHJ3LXByb3RvY29sfCB8bmV0cnctdmFyfCB8bmV0cnctdmFyaWFibGVzfCkKKyhhbHNvIHNlZTogfG5ldHJ3LWJyb3dzZXItdmFyfCB8bmV0cnctcHJvdG9jb2x8IHxuZXRydy1zZXR0aW5nc3wgfG5ldHJ3LXZhcmlhYmxlc3wpCiAKIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90b2RvLnR4dCBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CmluZGV4IDRkMzQzY2MuLmMxMDhjZWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RvZG8udHh0CisrKyBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CkBAIC0xLDQgKzEsNCBAQAotKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjMuICBMYXN0IGNoYW5nZTogMjAxMiBKYW4gMjAKKyp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTIgRmViIDA0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTQxLDE4ICs0MSwyNyBAQAogT25jZSBzeW50YXggYW5kIG90aGVyIHJ1bnRpbWUgZmlsZXMgaGF2ZSBiZWVuIGZpeGVkOiBhZGQgInNldCBjcCIgdG8KIGNoZWNrLnZpbS4gIFVzZSBhIGZ1bmN0aW9uIHRvIHJ1biBib3RoIHdpdGggJ2NwJyBhbmQgJ25vY3AnLgogCi1XaW4zMjogV2hlbiB0aGUgdGFza2JhciBpcyBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gY3JlYXRpbmcgdGhlIHRhYmJhciBjYXVzZXMKLXRoZSB3aW5kb3cgdG8gbW92ZSB1bm5lY2Vzc2FyaWx5LiAoV2lsbGlhbSBFLiBTa2VpdGggSUlJLCAyMDEyIEphbiAxMikKLVBhdGNoOiAyMDEyIEphbiAxMwotCi1QYXRjaCBmb3IgdXNpbmcgREJDUyBlbmNvZGluZyBpbiB1c2VyIGNvbW1hbmQuIChZYXN1aGlybyBNYXRzdW1vdG8sIDIwMTIgSmFuCi0xNSkgIFVwZGF0ZSBKYW4gMTcuCi0KIFJlcGVhdGluZyBzZWFyY2ggaGlzdG9yeSBlbnRyaWVzLiAoRWR3aW4gU3RlaW5lciwgMjAxMiBKYW4gMTcpCiBKYW4gMTg6IENhdXNlZCBieSBwYXRjaCA3LjMuMjY1PwogCitQYXRjaCBmb3IgJyQnIG5vdCBiZWluZyBkaXNwbGF5ZWQgZm9yIGEgY2hhbmdlIHdoZW4gJ2Nwb3B0aW9ucycgY29udGFpbnMgIiQiLgorKFlhc3VoaXJvIE1hdHN1bW90bywgMjAxMiBKYW4gMjgsIHBhdGNoIGJ5IEhpZGVraSBFSVJBS1UgYW5kIEhpcm9oaXRvIEhpZ2FzaGkpCisKK1BhdGNoIHRvIHNwZWVkIHVwIHJlYWRmaWxlKCkuIChKb2huIExpdHRsZSwgMjAxMiBGZWIgMSkKK0FkanVzdG1lbnQgYnkgQ2hhcmxlcyBQZWFjZWNoLCBGZWIgMy4KKzggICBXaGVuIGVkaXRpbmcgYSBmaWxlIHdpdGggZXh0cmVtZWx5IGxvbmcgbGluZXMgKGUuZy4sIGFuIGV4ZWN1dGFibGUpLCB0aGUKKyAgICAibGluZXJlc3QiIGluIHJlYWRmaWxlKCkgaXMgYWxsb2NhdGVkIHR3aWNlIHRvIGJlIGFibGUgdG8gY29weSB3aGF0IHdhcworICAgIHJlYWQgc28gZmFyLiAgVXNlIHJlYWxsb2MoKSBpbnN0ZWFkPyAgT3Igc3BsaXQgdGhlIGxpbmUgd2hlbiBhbGxvY2F0aW5nCisgICAgbWVtb3J5IGZhaWxzIGFuZCAibGluZXJlc3QiIGlzIGJpZyAoPiAxMDAwMDApPworCitQYXRjaCB0byBmaXggYSBjcmFzaCB3aGVuIGFuIHhwbSBmaWxlIGlzIGludmFsaWQuIChEYXZlIEJvZGVuc3RhYiwgMjAxMiBKYW4KKzI3KQorCiBIYW5nIGluIHVzaW5nIFZpbUVudGVyLiAoQWxleCBFZnJvcywgMjAxMiBKYW4gMTQpCiAKK1BhdGNoIGZvciBiZWhhdmlvciBvZiAiLiIgaW4gY29tcGF0aWJsZSBtb2RlLiAoWWFzdWhpcm8gTWF0c3Vtb3RvLCBwYXRjaCBieQorSGlkZWtpIEVJUkFLVSwgMjAxMiBKYW4gMjgpCisKICI6Y2QiIGRvZXNuJ3Qgd29yayB3aGVuIGN1cnJlbnQgZGlyZWN0b3J5IHBhdGggY29udGFpbnMgd2lsZGNhcmRzLgogZmluZGRpcigpIGhhcyB0aGUgc2FtZSBwcm9ibGVtLiAgKFl1a2loaXJvIE5ha2FkYWlyYSwgMjAxMiBKYW4gMTApCiAKQEAgLTcwLDggKzc5LDkgQEAKICI6ZG9hdSIgc2F5cyBpdCB0cmlnZ2VycyBtb2RlbGluZS4gIFNob3VsZCB0aGlzIG9ubHkgaGFwcGVuIGZvciBldmVudHMgdXNlZAogd2hlbiBsb2FkaW5nIGEgYnVmZmVyPyAgKEthbmEgTmF0c3VubywgMjAxMSBOb3YgNykKIAotUGF0Y2ggdG8gZml4ICJpdCIgYW5kICJhdCIgd2hlbiB0aGVyZSBpcyBhIGRhc2ggaW4gdGhlIHRhZyBuYW1lLgotKENocmlzdGlhbiBCcmFiYW5kdCwgMjAxMSBOb3YgMjApCitQYXRjaCBmb3IgY29tcGlsZXIgd2FybmluZ3MgaW4gaWZfcGVybC4gKEphbWVzIE1jQ295LCAyMDExIEphbiAzMCkKKworUGF0Y2ggZm9yIFggc2VsZWN0aW9uIGNvbnZlcnNpb24uIChBbGV4IEVmcm9zLCAyMDEyIEphbiAyNCkKIAogUGF0Y2ggdG8gbWFrZSAnc2hjZicgZGVmYXVsdCB3b3JrIGJldHRlci4gKEJlbmphbWluIEZyaXR6LCAyMDExIE5vdiAxOCkKICAgICBXaW4zMjogV2hlbiAnc2hlbGwnIGlzIGNtZC5leGUgdGhpcyBjb21tYW5kIGZhaWxzOgpAQCAtODMsNiArOTMsMTUgQEAKIE90aGVyIHdheSB0byBzdGFydCBNenNjaGVtZS4gVGltIEJyb3duLCAyMDExIE9jdCA1OiBjaGFuZ2UgbWFpbiBjYWxsLgogTGF0ZXIgcGF0Y2ggYnkgU2VyZ2V5IEtob3JldiwgMjAxMSBPY3QgOS4KIAorUGF0Y2ggdG8gYWxsb3cgISBmb3IgOmFsbCBhbmQgOnNhbGwsIGFzIGRvY3VtZW50ZWQuIChIaXJvaGl0byBIaWdhc2hpLCAyMDEyCitKYW4gMzApCisKK1BhdGNoIGZvciAidGFiIGRyb3AgaG9nZSIgbW92aW5nIGN1cnJlbnQgd2luZG93LiAoSGlnYXNoaSwgMjAxMiBKYW4gMzEpCisiOnRhYiBkcm9wIGJ1ZmZlci5jIiBhbHdheXMgb3BlbnMgYSBuZXcgdGFiLCBhbHNvIGlmIGJ1ZmZlci5jIGlzIGFscmVhZHkgaW4gYW4KK29wZW4gd2luZG93LiAoSGVyYiBTaXR6LCAyMDExIE5vdiAxNykKKyI6dGFiIGRyb3AgZmlsZW5hbWUiIGRvZXNuJ3Qgd29yayBuaWNlbHkgd2hlbiAiZmlsZW5hbWUiIGlzIG9wZW4gaW4gYSB3aW5kb3cKK2luIGFub3RoZXIgdGFiLiAoVG9ueSBNZWNoZWx5bmNrLCAyMDA5IEZlYiAxMykKKwogUGF0Y2ggdG8gbWFrZSBJbnNlcnRDaGFyUHJlIHdvcmsgYmV0dGVyLiAoWWFzdWhpcm8gTWF0c3Vtb3RvLCAyMDExIE9jdCAyMSkKIAogUGF0Y2ggdG8gZml4IGNsb3NlZCBmb2xkcyB3aXRoICJsb2FkdmlldyIuIChYYXZpZXIgZGUgR2F5ZSwgMjAxMSBOb3YgMjUpCkBAIC05Myw5ICsxMTIsMjQgQEAKIFBhdGNoIGZvciBnbG9iKCkgcmV0dXJuaW5nIGEgbGlzdC4gKENocmlzdGlhbiBCcmFiYW5kdCwgMjAxMSBBdWcgMjQsIHNlY29uZAogb25lKQogCitXaW4zMjogV2hlbiB0aGUgdGFza2JhciBpcyBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gY3JlYXRpbmcgdGhlIHRhYmJhciBjYXVzZXMKK3RoZSB3aW5kb3cgdG8gbW92ZSB1bm5lY2Vzc2FyaWx5LiAoV2lsbGlhbSBFLiBTa2VpdGggSUlJLCAyMDEyIEphbiAxMikKK1BhdGNoOiAyMDEyIEphbiAxMyAgTmVlZHMgbW9yZSB3b3JrICgyMDEyIEZlYiAyKQorCiBQYXRjaCB0byBoaWdobGlnaHQgY3Vyc29yIGxpbmUgbnVtYmVyLiAoSG93YXJkIEJ1Y2hob2x6IChsaGIpLCAyMDExIE9jdCAxOCkKIAotUGF0Y2ggZm9yIHVyeHZ0IG1vdXNlIHN1cHBvcnQgYWZ0ZXIgc2hlbGwgY29tbWFuZC4gKElzc3VlIDMxKQorVVJYVlQ6CistIHdpbGwgZ2V0IHN0dWNrIGlmIGJ5dGUgc2VxdWVuY2UgZG9lcyBub3QgY29udGFpbmUgZXhwZWN0ZWQgc2VtaWNvbG9uLgorLSBQYXRjaCBmb3IgdXJ4dnQgbW91c2Ugc3VwcG9ydCBhZnRlciBzaGVsbCBjb21tYW5kLiAoSXNzdWUgMzEpCistIFVzZSB1cnh2dCBtb3VzZSBzdXBwb3J0IGFsc28gaW4geHRlcm0uICBFeHBsYW5hdGlvbnM6CisgIGh0dHA6Ly93d3cubWlkbmlnaHQtY29tbWFuZGVyLm9yZy90aWNrZXQvMjY2MgorCitQYXRjaCBmb3IgdXNpbmcgUXVpY2tGaXhDbWRQcmUgZm9yIG1vcmUgY29tbWFuZHMuIChNYXJjaW4gU3phbW90dWxza2ksIDIwMTIKK0ZlYiAxLCB1cGRhdGUgRmViIDIpCisKK1doZW4gcnVubmluZyBWaW0gaW4gc2lsZW50IGV4IG1vZGUsIGFuIGV4aXN0aW5nIHN3YXBmaWxlIGNhdXNlcyBWaW0gdG8gd2FpdAorZm9yIGEgdXNlciBhY3Rpb24gd2l0aG91dCBhIHByb21wdC4gKE1hYXJ0ZW4gQmlsbGVtb250LCAyMDEyIEZlYiAzKQorRG8gZ2l2ZSB0aGUgcHJvbXB0PyBRdWl0IHdpdGggYW4gZXJyb3I/CiAKIFdoZW4gZXhpdGluZyB3aXRoIHVuc2F2ZWQgY2hhbmdlcywgc2VsZWN0aW5nIGFuIGV4aXN0aW5nIGZpbGUgaW4gdGhlIGZpbGUKIGRpYWxvZywgdGhlcmUgaXMgbm8gZGlhbG9nIHRvIGFzayB3aGV0aGVyIHRoZSBleGlzdGluZyBmaWxlIHNob3VsZCBiZQpAQCAtMTI4LDEzICsxNjIsMTUgQEAKICAgICBidWZmZXI9e2J1Zm5yfSIuICBTbyBvbmUgY2FuIHJlbW92ZSBhbGwgc2lnbnMgZm9yIG9uZSBmaWxlL2J1ZmZlci4KIAogUGF0Y2ggdG8gYWRkICJvbnNlbGVjdGVkIiBjYWxsYmFjayBmb3IgY29tcGxldGlvbi4gKFRhcm8gTXVyYW9rYSwgMjAxMSBTZXAgMjQpCitBbm90aGVyIGZvciBDb21wbGV0ZUZ1bmNPay4gKEZsb3JpYW4gS2xlaW4sIDIwMTIgSmFuIDMxKQorTmFtZSBpdCAiQ29tcGxldGVGdW5jRG9uZSIuCisKK1BhdGNoIGZvciBNYWtlX212Yy5tYWsgYW5kIE1ha2VfbWluZy5tYWsgZm9yIFJ1Ynkgc3VwcG9ydC4gKFlhc3VoaXJvCitNYXRzdW1vdG8sIDIwMTIgSmFuIDMwKQogCiBVc2UgYSBjb3VudCBiZWZvcmUgInYiIGFuZCAiViIgdG8gc2VsZWN0IHRoYXQgbWFueSBjaGFyYWN0ZXJzIG9yIGxpbmVzPwogKEtpa3lvdXMpCiAKLSI6dGFiIGRyb3AgYnVmZmVyLmMiIGFsd2F5cyBvcGVucyBhIG5ldyB0YWIsIGFsc28gaWYgYnVmZmVyLmMgaXMgYWxyZWFkeSBpbiBhbgotb3BlbiB3aW5kb3cuIChIZXJiIFNpdHosIDIwMTEgTm92IDE3KQotCiBQcm9ibGVtIHdpdGggd2luZml4aGVpZ2h0IGFuZCByZXNpemluZy4gKFl1a2loaXJvIE5ha2FkYWlyYSwgMjAxMSBTZXAgMTcpCiBQYXRjaCBTZXAgMTguCiAKQEAgLTI4OSw2ICszMjUsOCBAQAogUGF0Y2ggdG8gYWRkZCBUZXh0RGVsZXRlUG9zdCBhbmQgVGV4dFlhbmtQb3N0IGV2ZW50cy4gKFBoaWxpcHBlIFZhdWNoZXIsIDIwMTEKIE1heSAyNCkgIFVwZGF0ZSBNYXkgMjYuCiAKK1BhdGNoIGZvciA6dGFicmVjZW50bHkuIChIaXJva2F6dSBZb3NoaWRhLCAyMDEyIEphbiAzMCkKKwogV2hlbiBhIHNjcmlwdCBjb250YWlucyAicmVkaXIgPT4gczpmb28iIGJ1dCBkb2Vzbid0IGVuZCByZWRpcmVjdGlvbiwgYQogZm9sbG93aW5nICJyZWRpciIgY29tbWFuZCBnaXZlcyBhbiBlcnJvciBmb3Igbm90IGJlaW5nIGFibGUgdG8gYWNjZXNzIHM6Zm9vLgogKFp5WCwgMjAxMSBNYXIgMjcpCkBAIC05NDksOSArOTg3LDYgQEAKICI6dGFiIGhlbHAiIGFsd2F5cyBvcGVucyBhIG5ldyB0YWIsIHdoaWxlICI6aGVscCIgcmUtdXNlcyBhbiBleGlzdGluZyB3aW5kb3cuCiBXb3VsZCBiZSBtb3JlIGNvbnNpc3RlbnQgd2hlbiBhbiBleGlzdGluZyB0YWIgaXMgcmUtdXNlZC4gKFRvbnkgTWVjaGVseW5jaykKIAotIjp0YWIgZHJvcCBmaWxlbmFtZSIgZG9lc24ndCB3b3JrIG5pY2VseSB3aGVuICJmaWxlbmFtZSIgaXMgb3BlbiBpbiBhIHdpbmRvdwotaW4gYW5vdGhlciB0YWIuIChUb255IE1lY2hlbHluY2ssIDIwMDkgRmViIDEzKQotCiBBZGQgIjpub2ZvbGQiLiAgUmFuZ2Ugd2lsbCBhcHBseSB3aXRob3V0IGV4cGFuZGluZyB0byBjbG9zZWQgZm9sZC4KIAogSW5jbHVkaW5nIE5GQSByZWdleHAgY29kZToKQEAgLTMyMjgsMTAgKzMyNjMsNiBAQAogICAgIEFkZCBjb21tYW5kIHRvIGNvbXBpbGUgYSB2aW0gc2NyaXB0IGFuZCBhZGQgaXQgdG8gdGhlIGZpbGUgaW4tcGxhY2UuCiAgICAgU3BsaXQgRXggY29tbWFuZCBleGVjdXRpbmcgaW50byBhIHBhcnNpbmcgYW5kIGV4ZWN1dGluZyBwaGFzZS4KICAgICBVc2UgY29tcGlsZWQgY29kZSBmb3IgZnVuY3Rpb25zLCB3aGlsZSBsb29wcywgZXRjLgotOCAgIFdoZW4gZWRpdGluZyBhIGZpbGUgd2l0aCBleHRyZW1lbHkgbG9uZyBsaW5lcyAoZS5nLiwgYW4gZXhlY3V0YWJsZSksIHRoZQotICAgICJsaW5lcmVzdCIgaW4gcmVhZGZpbGUoKSBpcyBhbGxvY2F0ZWQgdHdpY2UgdG8gYmUgYWJsZSB0byBjb3B5IHdoYXQgd2FzCi0gICAgcmVhZCBzbyBmYXIuICBVc2UgcmVhbGxvYygpIGluc3RlYWQ/ICBPciBzcGxpdCB0aGUgbGluZSB3aGVuIGFsbG9jYXRpbmcKLSAgICBtZW1vcnkgZmFpbHMgYW5kICJsaW5lcmVzdCIgaXMgYmlnICg+IDEwMDAwMCk/CiA4ICAgV2hlbiBkZWZpbmluZyBhdXRvY29tbWFuZHMgKGUuZy4sIGZyb20gJFZJTVJVTlRJTUUvZmlsZXR5cGUudmltKSwgbmVlZCB0bwogICAgIGNvbXBhcmUgZWFjaCBwYXR0ZXJuIHdpdGggYWxsIGV4aXN0aW5nIHBhdHRlcm5zLiAgVXNlIGEgaGFzaCBjb2RlIHRvIGF2b2lkCiAgICAgdXNpbmcgc3RyY21wKCkgdG9vIG9mdGVuPwpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdW5kby50eHQgYi9ydW50aW1lL2RvYy91bmRvLnR4dAppbmRleCBlOWVkMWIyLi5iMTY1MjM3IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91bmRvLnR4dAorKysgYi9ydW50aW1lL2RvYy91bmRvLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1bmRvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4zLiAgTGFzdCBjaGFuZ2U6IDIwMTEgQXVnIDAyCisqdW5kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMy4gIExhc3QgY2hhbmdlOiAyMDEyIEphbiAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMjY3LDcgKzI2NywxMiBAQAogCQkodGhlIG1hZ2ljIG51bWJlciBhdCB0aGUgc3RhcnQgb2YgdGhlIGZpbGUgaXMgd3JvbmcpLCB0aGVuCiAJCXRoaXMgZmFpbHMsIHVubGVzcyB0aGUgISB3YXMgYWRkZWQuCiAJCUlmIGl0IGV4aXN0cyBhbmQgZG9lcyBsb29rIGxpa2UgYW4gdW5kbyBmaWxlIGl0IGlzCi0JCW92ZXJ3cml0dGVuLgorCQlvdmVyd3JpdHRlbi4gSWYgdGhlcmUgaXMgbm8gdW5kby1oaXN0b3J5LCBub3RoaW5nIHdpbGwgYmUgCisJCXdyaXR0ZW4uCisJCUltcGxlbWVudGF0aW9uIGRldGFpbDogT3ZlcndyaXRpbmcgaGFwcGVucyBieSBmaXJzdCBkZWxldGluZworCQl0aGUgZXhpc3RpbmcgZmlsZSBhbmQgdGhlbiBjcmVhdGluZyBhIG5ldyBmaWxlIHdpdGggdGhlIHNhbWUKKwkJbmFtZS4gU28gaXQgaXMgbm90IHBvc3NpYmxlIHRvIG92ZXJ3cml0ZSBhbiBleGlzdGluZyB1bmRvZmlsZQorCQlpbiBhIHdyaXRlLXByb3RlY3RlZCBkaXJlY3RvcnkuCiAJCXtub3QgaW4gVml9CiAKIDpydW5kbyB7ZmlsZX0JUmVhZCB1bmRvIGhpc3RvcnkgZnJvbSB7ZmlsZX0uCmRpZmYgLS1naXQgYS9ydW50aW1lL2ZpbGV0eXBlLnZpbSBiL3J1bnRpbWUvZmlsZXR5cGUudmltCmluZGV4IDE3Y2QwMzQuLjI2YTQzNWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZmlsZXR5cGUudmltCisrKyBiL3J1bnRpbWUvZmlsZXR5cGUudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3VwcG9ydCBmaWxlIHRvIGRldGVjdCBmaWxlIHR5cGVzCiAiCiAiIE1haW50YWluZXI6CUJyYW0gTW9vbGVuYWFyIDxCcmFtQHZpbS5vcmc+Ci0iIExhc3QgQ2hhbmdlOgkyMDEyIEphbiAwNAorIiBMYXN0IENoYW5nZToJMjAxMiBGZWIgMDMKIAogIiBMaXN0ZW4gdmVyeSBjYXJlZnVsbHksIEkgd2lsbCBzYXkgdGhpcyBvbmx5IG9uY2UKIGlmIGV4aXN0cygiZGlkX2xvYWRfZmlsZXR5cGVzIikKQEAgLTEyNjQsNyArMTI2NCw3IEBACiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi5uc2kJCQlzZXRmIG5zaXMKIAogIiBPQ0FNTAotYXUgQnVmTmV3RmlsZSxCdWZSZWFkICoubWwsKi5tbGksKi5tbGwsKi5tbHkJc2V0ZiBvY2FtbAorYXUgQnVmTmV3RmlsZSxCdWZSZWFkICoubWwsKi5tbGksKi5tbGwsKi5tbHksLm9jYW1saW5pdAlzZXRmIG9jYW1sCiAKICIgT2NjYW0KIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLm9jYwkJCXNldGYgb2NjYW0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZGViY2hhbmdlbG9nLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vZGViY2hhbmdlbG9nLnZpbQppbmRleCA4MGZmOGVmLi5jNzQyODRmIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2RlYmNoYW5nZWxvZy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9kZWJjaGFuZ2Vsb2cudmltCkBAIC0zLDggKzMsOCBAQAogIiBNYWludGFpbmVyOiAgIERlYmlhbiBWaW0gTWFpbnRhaW5lcnMgPHBrZy12aW0tbWFpbnRhaW5lcnNAbGlzdHMuYWxpb3RoLmRlYmlhbi5vcmc+CiAiIEZvcm1lciBNYWludGFpbmVyczogICBNaWNoYWVsIFBpZWZlbCA8cGllZmVsQGluZm9ybWF0aWsuaHUtYmVybGluLmRlPgogIiAgICAgICAgICAgICAgICAgICAgICAgU3RlZmFubyBaYWNjaGlyb2xpIDx6YWNrQGRlYmlhbi5vcmc+Ci0iIExhc3QgQ2hhbmdlOiAgMjAxMC0wNy0xMQotIiBMaWNlbnNlOiAgICAgIEdOVSBHUEwsIHZlcnNpb24gMi4wIG9yIGxhdGVyCisiIExhc3QgQ2hhbmdlOiAgMjAxMi0wMS0zMQorIiBMaWNlbnNlOiAgICAgIFZpbSBMaWNlbnNlCiAiIFVSTDogICAgICAgICAgaHR0cDovL2hnLmRlYmlhbi5vcmcvaGcvcGtnLXZpbS92aW0vZmlsZS91bnN0YWJsZS9ydW50aW1lL2Z0cGx1Z2luL2RlYmNoYW5nZWxvZy52aW0KIAogIiBCdWcgY29tcGxldGlvbiByZXF1aXJlcyBhcHQtbGlzdGJ1Z3MgaW5zdGFsbGVkIGZvciBEZWJpYW4gcGFja2FnZXMgb3IKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vb2NhbWwudmltIGIvcnVudGltZS9mdHBsdWdpbi9vY2FtbC52aW0KaW5kZXggZGUzZTQxYi4uYzM3OWY1MyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9vY2FtbC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9vY2FtbC52aW0KQEAgLTIsMTcgKzIsMTggQEAKICIgTWFpbnRhaW5lcjogIERhdmlkIEJhZWxkZSAgICAgICAgPGZpcnN0bmFtZS5uYW1lQGVucy1seW9uLm9yZz4KICIgICAgICAgICAgICAgIE1pa2UgTGVhcnkgICAgICAgICAgPGxlYXJ5QG53bGluay5jb20+CiAiICAgICAgICAgICAgICBNYXJrdXMgTW90dGwgICAgICAgIDxtYXJrdXMubW90dGxAZ21haWwuY29tPgorIiAgICAgICAgICAgICAgUGllcnJlIFZpdHRldCAgICAgICA8cGllcnJlLXZpdHRldEBwdml0dGV0LmNvbT4KICIgICAgICAgICAgICAgIFN0ZWZhbm8gWmFjY2hpcm9saSAgPHphY2tAYm9ub25pYS5pdD4KICIgICAgICAgICAgICAgIFZpbmNlbnQgQXJhdmFudGlub3MgPGZpcnN0bmFtZS5uYW1lQGltYWcuZnI+CiAiIFVSTDogICAgICAgICBodHRwOi8vd3d3Lm9jYW1sLmluZm8vdmltL2Z0cGx1Z2luL29jYW1sLnZpbQotIiBMYXN0IENoYW5nZTogMjAxMCBKdWwgMTAgLSBCdWdmaXgsIHRoYW5rcyB0byBQYXQgUm9uZG9uCisiIExhc3QgQ2hhbmdlOgorIiAgICAgICAgICAgICAgMjAxMiBKYW4gMTUgLSBCdWdmaXggOnJlbG9hZGluZyAuYW5ub3QgZmlsZSBkb2VzIG5vdCBjbG9zZQorIiAgICAgICAgICAgICAgc3BsaXR0ZWQgdmlldyAoUGllcnJlIFZpdHRldCkKKyIgICAgICAgICAgICAgIDIwMTEgTm92IDI4IC0gQnVnZml4ICsgc3VwcG9ydCBvZiBtdWx0aXBsZSBtbCBhbm5vdGF0aW9uIGZpbGUKKyIgICAgICAgICAgICAgIChQaWVycmUgVml0dGV0KQorIiAgICAgICAgICAgICAgMjAxMCBKdWwgMTAgLSBCdWdmaXgsIHRoYW5rcyB0byBQYXQgUm9uZG9uCiAiICAgICAgICAgICAgICAyMDA4IEp1bCAxNyAtIEJ1Z2ZpeCByZWxhdGVkIHRvIGZuYW1lZXNjYXBlIChWQSkKLSIgICAgICAgICAgICAgIDIwMDcgU2VwIDA5IC0gQWRkZWQgLmFubm90IHN1cHBvcnQgZm9yIG9jYW1sYnVpbGQsIHB5dGhvbiBub3QKLSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmVlZGVkIGFueW1vcmUgKFZBKQotIiAgICAgICAgICAgICAgMjAwNiBNYXkgMDEgLSBBZGRlZCAuYW5ub3Qgc3VwcG9ydCBmb3IgZmlsZS53aGF0ZXZlcmV4dCAoU1opCi0iCSAgICAgICAgICAgICAyMDA2IEFwciAxMSAtIEZpeGVkIGFuIGluaXRpYWxpemF0aW9uIGJ1ZzsgZml4ZWQgQVNTIGFiYnJldiAoTU0pCi0iICAgICAgICAgICAgICAyMDA1IE9jdCAxMyAtIHJlbW92ZWQgR1BMOyBiZXR0ZXIgbWF0Y2hpdCBzdXBwb3J0IChNTSwgU1opCi0iCisKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCkBAIC0yODcsMjQgKzI4OCwyNyBAQAogICBlbmRmdW4KIAogICAgICIgQWZ0ZXIgY2FsbDoKLSAgICAiIC0gYjphbm5vdF9maWxlX3BhdGggOgorICAgICIKKyAgICAiICBGb2xsb3dpbmcgaW5mb3JtYXRpb24gaGF2ZSBiZWVuIHB1dCBpbiBzOmFubm90X2ZpbGVfbGlzdCwgdXNpbmcKKyAgICAiICBhbm5vdF9maWxlX25hbWUgbmFtZSBhcyBrZXk6CisgICAgIiAtIGFubm90X2ZpbGVfcGF0aCA6CiAgICAgIiAgICAgICAgICAgICAgICAgICAgICAgcGF0aCB0byB0aGUgLmFubm90IGZpbGUgY29ycmVzcG9uZGluZyB0byB0aGUKICAgICAiICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgZmlsZSAoZGVhbGluZyB3aXRoIG9jYW1sYnVpbGQgc3R1ZmYpCi0gICAgIiAtIGI6X2J1aWxkX3BhdGg6CisgICAgIiAtIF9idWlsZF9wYXRoOgogICAgICIgICAgICAgICAgICAgICAgICAgICAgIHBhdGggdG8gdGhlIGJ1aWxkIGRpcmVjdG9yeSBldmVuIGlmIHRoaXMgb25lIGlzCiAgICAgIiAgICAgICAgICAgICAgICAgICAgICAgbm90IG5hbWVkICdfYnVpbGQnCisgICAgIiAtIGRhdGVfb2ZfbGFzdCBhbm5vdDoKKyAgICAiICAgICAgICAgICAgICAgICAgICAgICBTZXQgdG8gMCB1bnRpbCB3ZSBsb2FkIHRoZSBmaWxlLiBJdCBjb250YWlucyB0aGUKKyAgICAiICAgICAgICAgICAgICAgICAgICAgICBkYXRlIGF0IHdoaWNoIHRoZSBmaWxlIGhhcyBiZWVuIGxvYWRlZC4KICAgZnVuY3Rpb24hIHM6TG9jYXRlX2Fubm90YXRpb24oKQotICAgIGlmICFiOmFubm90YXRpb25fZmlsZV9sb2NhdGVkCi0KKyAgICBsZXQgYW5ub3RfZmlsZV9uYW1lID0gczpGbmFtZWVzY2FwZShleHBhbmQoJyU6dDpyJykpLicuYW5ub3QnCisgICAgaWYgIWV4aXN0cyAoInM6YW5ub3RfZmlsZV9saXN0W2Fubm90X2ZpbGVfbmFtZV0iKQogICAgICAgc2lsZW50IGV4ZSAnY2QnIHM6Rm5hbWVlc2NhcGUoZXhwYW5kKCclOnA6aCcpKQotCi0gICAgICBsZXQgYW5ub3RfZmlsZV9uYW1lID0gczpGbmFtZWVzY2FwZShleHBhbmQoJyU6cicpKS4nLmFubm90JwotCiAgICAgICAiIDFzdCBjYXNlIDogdGhlIGFubm90IGZpbGUgaXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoZSBidWZmZXIgKG5vIG9jYW1sYnVpbGQpCi0gICAgICBsZXQgYjphbm5vdF9maWxlX3BhdGggPSBmaW5kZmlsZShhbm5vdF9maWxlX25hbWUsJy4nKQotICAgICAgaWYgYjphbm5vdF9maWxlX3BhdGggIT0gJycKLSAgICAgICAgbGV0IGI6YW5ub3RfZmlsZV9wYXRoID0gZ2V0Y3dkKCkuJy8nLmI6YW5ub3RfZmlsZV9wYXRoCi0gICAgICAgIGxldCBiOl9idWlsZF9wYXRoID0gJycKKyAgICAgIGxldCBhbm5vdF9maWxlX3BhdGggPSBmaW5kZmlsZShhbm5vdF9maWxlX25hbWUsJy4nKQorICAgICAgaWYgYW5ub3RfZmlsZV9wYXRoICE9ICcnCisgICAgICAgIGxldCBhbm5vdF9maWxlX3BhdGggPSBnZXRjd2QoKS4nLycuYW5ub3RfZmlsZV9wYXRoCisgICAgICAgIGxldCBfYnVpbGRfcGF0aCA9ICcnCiAgICAgICBlbHNlCiAgICAgICAgICIgMm5kIGNhc2UgOiB0aGUgYnVmZmVyIGFuZCB0aGUgX2J1aWxkIGRpcmVjdG9yeSBhcmUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5CiAgICAgICAgICIgICAgICAuLgpAQCAtMzEyLDEyICszMTYsMTIgQEAKICAgICAgICAgIiAgICAvICAgIFwKICAgICAgICAgIiBfYnVpbGQgIC5tbAogICAgICAgICAiCi0gICAgICAgIGxldCBiOl9idWlsZF9wYXRoID0gZmluZGRpcignX2J1aWxkJywnLicpCi0gICAgICAgIGlmIGI6X2J1aWxkX3BhdGggIT0gJycKLSAgICAgICAgICBsZXQgYjpfYnVpbGRfcGF0aCA9IGdldGN3ZCgpLicvJy5iOl9idWlsZF9wYXRoCi0gICAgICAgICAgbGV0IGI6YW5ub3RfZmlsZV9wYXRoICAgICAgICAgICA9IGZpbmRmaWxlKGFubm90X2ZpbGVfbmFtZSwnX2J1aWxkJykKLSAgICAgICAgICBpZiBiOmFubm90X2ZpbGVfcGF0aCAhPSAnJwotICAgICAgICAgICAgbGV0IGI6YW5ub3RfZmlsZV9wYXRoID0gZ2V0Y3dkKCkuJy8nLmI6YW5ub3RfZmlsZV9wYXRoCisgICAgICAgIGxldCBfYnVpbGRfcGF0aCA9IGZpbmRkaXIoJ19idWlsZCcsJy4nKQorICAgICAgICBpZiBfYnVpbGRfcGF0aCAhPSAnJworICAgICAgICAgIGxldCBfYnVpbGRfcGF0aCA9IGdldGN3ZCgpLicvJy5fYnVpbGRfcGF0aAorICAgICAgICAgIGxldCBhbm5vdF9maWxlX3BhdGggICAgICAgICAgID0gZmluZGZpbGUoYW5ub3RfZmlsZV9uYW1lLCdfYnVpbGQnKQorICAgICAgICAgIGlmIGFubm90X2ZpbGVfcGF0aCAhPSAnJworICAgICAgICAgICAgbGV0IGFubm90X2ZpbGVfcGF0aCA9IGdldGN3ZCgpLicvJy5hbm5vdF9maWxlX3BhdGgKICAgICAgICAgICBlbmRpZgogICAgICAgICBlbHNlCiAgICAgICAgICAgIiAzcmQgY2FzZSA6IHRoZSBfYnVpbGQgZGlyZWN0b3J5IGlzIGluIGEgZGlyZWN0b3J5IGhpZ2hlciBpbiB0aGUgZmlsZSBoaWVyYXJjaHkKQEAgLTMzMCw0NiArMzM0LDU0IEBACiAgICAgICAgICAgIiAgICAgICAgICAgIFwKICAgICAgICAgICAiICAgICAgICAgICAubWwKICAgICAgICAgICAiCi0gICAgICAgICAgbGV0IGI6X2J1aWxkX3BhdGggPSBmaW5kZGlyKCdfYnVpbGQnLCc7JykKLSAgICAgICAgICBpZiBiOl9idWlsZF9wYXRoICE9ICcnCi0gICAgICAgICAgICBsZXQgcHJvamVjdF9wYXRoICAgICAgICAgICAgICAgID0gc3Vic3RpdHV0ZShiOl9idWlsZF9wYXRoLCcvX2J1aWxkJCcsJycsJycpCisgICAgICAgICAgbGV0IF9idWlsZF9wYXRoID0gZmluZGRpcignX2J1aWxkJywnOycpCisgICAgICAgICAgaWYgX2J1aWxkX3BhdGggIT0gJycKKyAgICAgICAgICAgIGxldCBwcm9qZWN0X3BhdGggICAgICAgICAgICAgICAgPSBzdWJzdGl0dXRlKF9idWlsZF9wYXRoLCcvX2J1aWxkJCcsJycsJycpCiAgICAgICAgICAgICBsZXQgcGF0aF9yZWxhdGl2ZV90b19wcm9qZWN0ICAgID0gczpGbmFtZWVzY2FwZShzdWJzdGl0dXRlKGV4cGFuZCgnJTpwOmgnKSxwcm9qZWN0X3BhdGguJy8nLCcnLCcnKSkKLSAgICAgICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCAgICAgICAgICAgPSBmaW5kZmlsZShhbm5vdF9maWxlX25hbWUscHJvamVjdF9wYXRoLicvX2J1aWxkLycucGF0aF9yZWxhdGl2ZV90b19wcm9qZWN0KQorICAgICAgICAgICAgbGV0IGFubm90X2ZpbGVfcGF0aCAgICAgICAgICAgPSBmaW5kZmlsZShhbm5vdF9maWxlX25hbWUscHJvamVjdF9wYXRoLicvX2J1aWxkLycucGF0aF9yZWxhdGl2ZV90b19wcm9qZWN0KQogICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCA9IGZpbmRmaWxlKGFubm90X2ZpbGVfbmFtZSwnKionKQorICAgICAgICAgICAgbGV0IGFubm90X2ZpbGVfcGF0aCA9IGZpbmRmaWxlKGFubm90X2ZpbGVfbmFtZSwnKionKQogICAgICAgICAgICAgIjR0aCBjYXNlIDogd2hhdCBpZiB0aGUgdXNlciBkZWNpZGVkIHRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgX2J1aWxkIGRpcmVjdG9yeSA/CiAgICAgICAgICAgICAiICAgICAgICAgICAtPiB3ZSByZWxheCB0aGUgY29uc3RyYWludHMsIGl0IHNob3VsZCB3b3JrIGluIG1vc3QgY2FzZXMKLSAgICAgICAgICAgIGlmIGI6YW5ub3RfZmlsZV9wYXRoICE9ICcnCisgICAgICAgICAgICBpZiBhbm5vdF9maWxlX3BhdGggIT0gJycKICAgICAgICAgICAgICAgIiA0YS4gd2Ugc3VwcG9zZSB0aGUgcmVuYW1lZCBfYnVpbGQgZGlyZWN0b3J5IGlzIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeQotICAgICAgICAgICAgICBsZXQgYjpfYnVpbGRfcGF0aCA9IG1hdGNoc3RyKGI6YW5ub3RfZmlsZV9wYXRoLCdeW14vXSonKQotICAgICAgICAgICAgICBpZiBiOmFubm90X2ZpbGVfcGF0aCAhPSAnJwotICAgICAgICAgICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCA9IGdldGN3ZCgpLicvJy5iOmFubm90X2ZpbGVfcGF0aAotICAgICAgICAgICAgICAgIGxldCBiOl9idWlsZF9wYXRoICAgICA9IGdldGN3ZCgpLicvJy5iOl9idWlsZF9wYXRoCisgICAgICAgICAgICAgIGxldCBfYnVpbGRfcGF0aCA9IG1hdGNoc3RyKGFubm90X2ZpbGVfcGF0aCwnXlteL10qJykKKyAgICAgICAgICAgICAgaWYgYW5ub3RfZmlsZV9wYXRoICE9ICcnCisgICAgICAgICAgICAgICAgbGV0IGFubm90X2ZpbGVfcGF0aCA9IGdldGN3ZCgpLicvJy5hbm5vdF9maWxlX3BhdGgKKyAgICAgICAgICAgICAgICBsZXQgX2J1aWxkX3BhdGggICAgID0gZ2V0Y3dkKCkuJy8nLl9idWlsZF9wYXRoCiAgICAgICAgICAgICAgIGVuZGlmCiAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgIGxldCBhbm5vdF9maWxlX25hbWUgPSAnJworICAgICAgICAgICAgICAiKFBpZXJyZSBWaXR0ZXQ6IEkgaGF2ZSBjb21tZW50ZWQgNGIgYmVjYXVzZSB0aGlzIHdhcyBjaHJhc2hpbmcKKyAgICAgICAgICAgICAgIm15IHZpbSAoaXQgcHJvZHVjZWQgaW5maW5pdGUgbG9vcCkpCisgICAgICAgICAgICAgICIKICAgICAgICAgICAgICAgIiA0Yi4gYW5hcmNoeSA6IHRoZSByZW5hbWVkIF9idWlsZCBkaXJlY3RvcnkgbWF5IGJlIGhpZ2hlciBpbiB0aGUgaGllcmFyY2h5CiAgICAgICAgICAgICAgICIgdGhpcyB3aWxsIHdvcmsgaWYgdGhlIGZpbGUgZm9yIHdoaWNoIHdlIGFyZSBsb29raW5nIGFubm90YXRpb25zIGhhcyBhIHVuaXF1ZSBuYW1lIGluIHRoZSB3aG9sZSBwcm9qZWN0CiAgICAgICAgICAgICAgICIgaWYgdGhpcyBpcyBub3QgdGhlIGNhc2UsIGl0IG1heSBzdGlsbCB3b3JrLCBidXQgbm8gd2FycmFudHkgaGVyZQotICAgICAgICAgICAgICBsZXQgYjphbm5vdF9maWxlX3BhdGggPSBmaW5kZmlsZShhbm5vdF9maWxlX25hbWUsJyoqOycpCi0gICAgICAgICAgICAgIGxldCBwcm9qZWN0X3BhdGggICAgICA9IHM6RmluZF9jb21tb25fcGF0aChiOmFubm90X2ZpbGVfcGF0aCxleHBhbmQoJyU6cDpoJykpCi0gICAgICAgICAgICAgIGxldCBiOl9idWlsZF9wYXRoICAgICAgID0gbWF0Y2hzdHIoYjphbm5vdF9maWxlX3BhdGgscHJvamVjdF9wYXRoLicvW14vXSonKQorICAgICAgICAgICAgICAibGV0IGFubm90X2ZpbGVfcGF0aCA9IGZpbmRmaWxlKGFubm90X2ZpbGVfbmFtZSwnKio7JykKKyAgICAgICAgICAgICAgImxldCBwcm9qZWN0X3BhdGggICAgICA9IHM6RmluZF9jb21tb25fcGF0aChhbm5vdF9maWxlX3BhdGgsZXhwYW5kKCclOnA6aCcpKQorICAgICAgICAgICAgICAibGV0IF9idWlsZF9wYXRoICAgICAgID0gbWF0Y2hzdHIoYW5ub3RfZmlsZV9wYXRoLHByb2plY3RfcGF0aC4nL1teL10qJykKICAgICAgICAgICAgIGVuZGlmCiAgICAgICAgICAgZW5kaWYKICAgICAgICAgZW5kaWYKICAgICAgIGVuZGlmCiAKLSAgICAgIGlmIGI6YW5ub3RfZmlsZV9wYXRoID09ICcnCisgICAgICBpZiBhbm5vdF9maWxlX3BhdGggPT0gJycKICAgICAgICAgdGhyb3cgJ0U0ODQ6IG5vIGFubm90YXRpb24gZmlsZSBmb3VuZCcKICAgICAgIGVuZGlmCiAKICAgICAgIHNpbGVudCBleGUgJ2NkJyAnLScKLQotICAgICAgbGV0IGI6YW5ub3RhdGlvbl9maWxlX2xvY2F0ZWQgPSAxCisgICAgICBsZXQgczphbm5vdF9maWxlX2xpc3RbYW5ub3RfZmlsZV9uYW1lXT0gW2Fubm90X2ZpbGVfcGF0aCwgX2J1aWxkX3BhdGgsIDBdCiAgICAgZW5kaWYKICAgZW5kZnVuCiAKLSAgIiBUaGlzIGluIG9yZGVyIHRvIGxvY2F0ZSB0aGUgLmFubm90IGZpbGUgb25seSBvbmNlCi0gIGxldCBiOmFubm90YXRpb25fZmlsZV9sb2NhdGVkID0gMAorICAiIFRoaXMgdmFyaWFibGUgY29udGFpbiBhIGRpY3Rpb25uYXJ5IG9mIGxpc3QuIEVhY2ggZWxlbWVudCBvZiB0aGUgZGljdGlvbm5hcnkKKyAgIiByZXByZXNlbnQgYW4gYW5ub3RhdGlvbiBzeXN0ZW0uIEFuIGFubm90YXRpb24gc3lzdGVtIGlzIGEgbGlzdCB3aXRoIDoKKyAgIiAtIGFubm90YXRpb24gZmlsZSBuYW1lIGFzIGl0J3Mga2V5CisgICIgLSBhbm5vdGF0aW9uIGZpbGUgcGF0aCBhcyBmaXJzdCBlbGVtZW50IG9mIHRoZSBjb250YWluZWQgbGlzdAorICAiIC0gYnVpbGQgcGF0aCBhcyBzZWNvbmQgZWxlbWVudCBvZiB0aGUgY29udGFpbmVkIGxpc3QKKyAgIiAtIGFubm90X2ZpbGVfbGFzdF9tb2QgKGNvbnRhaW4gdGhlIGRhdGUgb2YgLmFubm90IGZpbGUpIGFzIHRoaXJkIGVsZW1lbnQKKyAgbGV0IHM6YW5ub3RfZmlsZV9saXN0ID0ge30KIAogIiAyLiBGaW5kaW5nIHRoZSB0eXBlIGluZm9ybWF0aW9uIGluIHRoZSBhbm5vdGF0aW9uIGZpbGUKIApAQCAtMzc5LDE2ICszOTEsMTcgQEAKICAgICAgICIgQWZ0ZXIgY2FsbDoKICAgICAgICIgVGhlIGN1cnJlbnQgYnVmZmVyIGlzIG5vdyB0aGUgb25lIGNvbnRhaW5pbmcgdGhlIC5hbm5vdCBmaWxlLgogICAgICAgIiBXZSBtYW5hZ2UgdG8ga2VlcCBhbGwgdGhpcyBoaWRkZW4gdG8gdGhlIHVzZXIncyBleWUuCi0gICAgZnVuY3Rpb24hIHM6RW50ZXJfYW5ub3RhdGlvbl9idWZmZXIoKQorICAgIGZ1bmN0aW9uISBzOkVudGVyX2Fubm90YXRpb25fYnVmZmVyKGFubm90X2ZpbGVfcGF0aCkKICAgICAgIGxldCBzOmN1cnJlbnRfcG9zID0gZ2V0cG9zKCcuJykKICAgICAgIGxldCBzOmN1cnJlbnRfaGlkZGVuID0gJmw6aGlkZGVuCiAgICAgICBzZXQgaGlkZGVuCiAgICAgICBsZXQgczpjdXJyZW50X2J1ZiA9IGJ1Zm5hbWUoJyUnKQotICAgICAgaWYgYnVmbG9hZGVkKGI6YW5ub3RfZmlsZV9wYXRoKQotICAgICAgICBzaWxlbnQgZXhlICdrZWVwaiBrZWVwYWx0JyAnYnVmZmVyJyBzOkZuYW1lZXNjYXBlKGI6YW5ub3RfZmlsZV9wYXRoKQorICAgICAgaWYgYnVmbG9hZGVkKGE6YW5ub3RfZmlsZV9wYXRoKQorICAgICAgICBzaWxlbnQgZXhlICdrZWVwaiBrZWVwYWx0JyAnYnVmZmVyJyBzOkZuYW1lZXNjYXBlKGE6YW5ub3RfZmlsZV9wYXRoKQogICAgICAgZWxzZQotICAgICAgICBzaWxlbnQgZXhlICdrZWVwaiBrZWVwYWx0JyAndmlldycgczpGbmFtZWVzY2FwZShiOmFubm90X2ZpbGVfcGF0aCkKKyAgICAgICAgc2lsZW50IGV4ZSAna2VlcGoga2VlcGFsdCcgJ3ZpZXcnIHM6Rm5hbWVlc2NhcGUoYTphbm5vdF9maWxlX3BhdGgpCiAgICAgICBlbmRpZgorICAgICAgY2FsbCBzZXRwb3MoIi4iLCBbMCwgMCAsIDAgLCAwXSkKICAgICBlbmRmdW4KIAogICAgICAgIiBBZnRlciBjYWxsOgpAQCAtNDAyLDIxICs0MTUsMjkgQEAKICAgICAgICIgQWZ0ZXIgY2FsbDoKICAgICAgICIgICBUaGUgYW5ub3QgZmlsZSBpcyBsb2FkZWQgYW5kIGFzc2lnbmVkIHRvIGEgYnVmZmVyLgogICAgICAgIiAgIFRoaXMgYWxzbyBoYW5kbGVzIHRoZSBtb2RpZmljYXRpb24gZGF0ZSBvZiB0aGUgLmFubm90IGZpbGUsIGVnLiBhZnRlciBhCi0gICAgICAiICAgY29tcGlsYXRpb24uCi0gICAgZnVuY3Rpb24hIHM6TG9hZF9hbm5vdGF0aW9uKCkKLSAgICAgIGlmIGJ1ZmxvYWRlZChiOmFubm90X2ZpbGVfcGF0aCkgJiYgYjphbm5vdF9maWxlX2xhc3RfbW9kIDwgZ2V0ZnRpbWUoYjphbm5vdF9maWxlX3BhdGgpCi0gICAgICAgIGNhbGwgczpFbnRlcl9hbm5vdGF0aW9uX2J1ZmZlcigpCi0gICAgICAgIHNpbGVudCBleGUgImJ1bmxvYWQiCi0gICAgICAgIGNhbGwgczpFeGl0X2Fubm90YXRpb25fYnVmZmVyKCkKKyAgICAgICIgICBjb21waWxhdGlvbiAocmV0dXJuIGFuIHVwZGF0ZWQgYW5ub3RfZmlsZV9saXN0KS4KKyAgICBmdW5jdGlvbiEgczpMb2FkX2Fubm90YXRpb24oYW5ub3RfZmlsZV9uYW1lKQorICAgICAgbGV0IGFubm90ID0gczphbm5vdF9maWxlX2xpc3RbYTphbm5vdF9maWxlX25hbWVdCisgICAgICBsZXQgYW5ub3RfZmlsZV9wYXRoID0gYW5ub3RbMF0KKyAgICAgIGxldCBhbm5vdF9maWxlX2xhc3RfbW9kID0gMAorICAgICAgaWYgZXhpc3RzKCJhbm5vdFsyXSIpCisgICAgICAgIGxldCBhbm5vdF9maWxlX2xhc3RfbW9kID0gYW5ub3RbMl0KICAgICAgIGVuZGlmCi0gICAgICBpZiAhYnVmbG9hZGVkKGI6YW5ub3RfZmlsZV9wYXRoKQotICAgICAgICBjYWxsIHM6RW50ZXJfYW5ub3RhdGlvbl9idWZmZXIoKQorICAgICAgaWYgYnVmbG9hZGVkKGFubm90X2ZpbGVfcGF0aCkgJiYgYW5ub3RfZmlsZV9sYXN0X21vZCA8IGdldGZ0aW1lKGFubm90X2ZpbGVfcGF0aCkKKyAgICAgICAgIiBpZiB0aGVyZSBpcyBhIG1vcmUgcmVjZW50IGZpbGUKKyAgICAgICAgbGV0IG5yID0gYnVmbnIoYW5ub3RfZmlsZV9wYXRoKQorICAgICAgICBzaWxlbnQgZXhlICdrZWVwaiBrZWVwYWx0JyAnYnVubG9hZCcgbnIKKyAgICAgIGVuZGlmCisgICAgICBpZiAhYnVmbG9hZGVkKGFubm90X2ZpbGVfcGF0aCkKKyAgICAgICAgY2FsbCBzOkVudGVyX2Fubm90YXRpb25fYnVmZmVyKGFubm90X2ZpbGVfcGF0aCkKICAgICAgICAgc2V0bG9jYWwgbm9idWZsaXN0ZWQKICAgICAgICAgc2V0bG9jYWwgYnVmaGlkZGVuPWhpZGUKICAgICAgICAgc2V0bG9jYWwgbm9zd2FwZmlsZQogICAgICAgICBzZXRsb2NhbCBidWZ0eXBlPW5vd3JpdGUKICAgICAgICAgY2FsbCBzOkV4aXRfYW5ub3RhdGlvbl9idWZmZXIoKQotICAgICAgICBsZXQgYjphbm5vdF9maWxlX2xhc3RfbW9kID0gZ2V0ZnRpbWUoYjphbm5vdF9maWxlX3BhdGgpCisgICAgICAgIGxldCBhbm5vdFsyXSA9IGdldGZ0aW1lKGFubm90X2ZpbGVfcGF0aCkKKyAgICAgICAgIiBMaXN0IHVwZGF0ZWQgd2l0aCB0aGUgbmV3IGRhdGUKKyAgICAgICAgbGV0IHM6YW5ub3RfZmlsZV9saXN0W2E6YW5ub3RfZmlsZV9uYW1lXSA9IGFubm90CiAgICAgICBlbmRpZgogICAgIGVuZGZ1bgogCkBAIC00NjYsOCArNDg3LDkgQEAKICAgICAgICJJbjogIHRoZSBwYXR0ZXJuIHRvIGxvb2sgZm9yIGluIG9yZGVyIHRvIG1hdGNoIHRoZSBibG9jawogICAgICAgIk91dDogdGhlIHR5cGUgaW5mb3JtYXRpb24gKGNhbGxzIHM6TWF0Y2hfZGF0YSkKICAgICAgICIgU2hvdWxkIGJlIGNhbGxlZCBpbiB0aGUgYW5ub3RhdGlvbiBidWZmZXIKLSAgICBmdW5jdGlvbiEgczpFeHRyYWN0X3R5cGVfZGF0YShibG9ja19wYXR0ZXJuKQotICAgICAgY2FsbCBzOkVudGVyX2Fubm90YXRpb25fYnVmZmVyKCkKKyAgICBmdW5jdGlvbiEgczpFeHRyYWN0X3R5cGVfZGF0YShibG9ja19wYXR0ZXJuLCBhbm5vdF9maWxlX25hbWUpCisgICAgICBsZXQgYW5ub3RfZmlsZV9wYXRoID0gczphbm5vdF9maWxlX2xpc3RbYTphbm5vdF9maWxlX25hbWVdWzBdCisgICAgICBjYWxsIHM6RW50ZXJfYW5ub3RhdGlvbl9idWZmZXIoYW5ub3RfZmlsZV9wYXRoKQogICAgICAgdHJ5CiAgICAgICAgIGlmIHNlYXJjaChhOmJsb2NrX3BhdHRlcm4sJ2UnKSA9PSAwCiAgICAgICAgICAgdGhyb3cgIm5vX2Fubm90YXRpb24iCkBAIC01MjcsOSArNTQ5LDkgQEAKIAogICAgICAgIkluOiAgdGhlIGN1cnJlbnQgbW9kZSAoZWcuICJ2aXN1YWwiLCAibm9ybWFsIiwgZXRjLikKICAgICAgICJPdXQ6IHRoZSB0eXBlIGluZm9ybWF0aW9uIChjYWxscyBzOkV4dHJhY3RfdHlwZV9kYXRhKQotICAgIGZ1bmN0aW9uISBzOkdldF90eXBlKG1vZGUpCisgICAgZnVuY3Rpb24hIHM6R2V0X3R5cGUobW9kZSwgYW5ub3RfZmlsZV9uYW1lKQogICAgICAgbGV0IFtsaW4xLGxpbjIsY29sMSxjb2wyXSA9IHM6TWF0Y2hfYm9yZGVycyhhOm1vZGUpCi0gICAgICByZXR1cm4gczpFeHRyYWN0X3R5cGVfZGF0YShzOkJsb2NrX3BhdHRlcm4obGluMSxsaW4yLGNvbDEsY29sMikpCisgICAgICByZXR1cm4gczpFeHRyYWN0X3R5cGVfZGF0YShzOkJsb2NrX3BhdHRlcm4obGluMSxsaW4yLGNvbDEsY29sMiksIGE6YW5ub3RfZmlsZV9uYW1lKQogICAgIGVuZGZ1bgogCiAgICJkLiBtYWluCkBAIC01MzcsOSArNTU5LDEwIEBACiAgICAgICAiQWZ0ZXIgY2FsbDogdGhlIHR5cGUgaW5mb3JtYXRpb24gaXMgZGlzcGxheWVkCiAgICAgaWYgIWV4aXN0cygiKk9jYW1sX2dldF90eXBlIikKICAgICAgIGZ1bmN0aW9uIE9jYW1sX2dldF90eXBlKG1vZGUpCisgICAgICAgIGxldCBhbm5vdF9maWxlX25hbWUgPSBzOkZuYW1lZXNjYXBlKGV4cGFuZCgnJTp0OnInKSkuJy5hbm5vdCcKICAgICAgICAgY2FsbCBzOkxvY2F0ZV9hbm5vdGF0aW9uKCkKLSAgICAgICAgY2FsbCBzOkxvYWRfYW5ub3RhdGlvbigpCi0gICAgICAgIHJldHVybiBzOkdldF90eXBlKGE6bW9kZSkKKyAgICAgICAgY2FsbCBzOkxvYWRfYW5ub3RhdGlvbihhbm5vdF9maWxlX25hbWUpCisgICAgICAgIHJldHVybiBzOkdldF90eXBlKGE6bW9kZSwgYW5ub3RfZmlsZV9uYW1lKQogICAgICAgZW5kZnVuCiAgICAgZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvb2NhbWwudmltIGIvcnVudGltZS9pbmRlbnQvb2NhbWwudmltCmluZGV4IDVjMjY3YWYuLmE4NGM5OTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L29jYW1sLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9vY2FtbC52aW0KQEAgLTEsMTIgKzEsMTIgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOiAgICAgT0NhbWwKLSIgTWFpbnRhaW5lcnM6CUplYW4tRnJhbmNvaXMgWXVlbiAgIDxqZnl1ZW5AaGFwcHljb2RlcnMub3JnPgotIgkJTWlrZSBMZWFyeQkgICAgIDxsZWFyeUBud2xpbmsuY29tPgotIgkJTWFya3VzIE1vdHRsCSAgICAgPG1hcmt1cy5tb3R0bEBnbWFpbC5jb20+Ci0iIFVSTDoJCWh0dHA6Ly93d3cub2NhbWwuaW5mby92aW0vaW5kZW50L29jYW1sLnZpbQotIiBMYXN0IENoYW5nZTogIDIwMDUgSnVuIDI1IC0gRml4ZWQgbXVsdGlwbGUgYnVncyBkdWUgdG8gJ2Vsc2VcbnJldHVybiBpbmQnIHdvcmtpbmcKLSIJCTIwMDUgTWF5IDA5IC0gQWRkZWQgYW4gb3B0aW9uIHRvIG5vdCBpbmRlbnQgT0NhbWwtaW5kZW50cyBzcGVjaWFsbHkgKE1NKQotIgkJMjAwNSBBcHIgMTEgLSBGaXhlZCBhbiBpbmRlbnRhdGlvbiBidWcgY29uY2VybmluZyAibGV0IiAoTU0pCisiIE1haW50YWluZXJzOiAgSmVhbi1GcmFuY29pcyBZdWVuICAgPGpmeXVlbkBoYXBweWNvZGVycy5vcmc+CisiICAgICAgICAgICAgICAgTWlrZSBMZWFyeSAgICAgICAgICAgPGxlYXJ5QG53bGluay5jb20+CisiICAgICAgICAgICAgICAgTWFya3VzIE1vdHRsICAgICAgICAgPG1hcmt1cy5tb3R0bEBnbWFpbC5jb20+CisiIFVSTDogICAgICAgICAgaHR0cDovL3d3dy5vY2FtbC5pbmZvL3ZpbS9pbmRlbnQvb2NhbWwudmltCisiIExhc3QgQ2hhbmdlOiAgMjAxMCBTZXAgMDQgLSBBZGRlZCBhbiBpbmRlbnRhdGlvbiBpbXByb3ZlbWVudCBieSBNYXJrIFdlYmVyCisiICAgICAgICAgICAgICAgMjAwNSBKdW4gMjUgLSBGaXhlZCBtdWx0aXBsZSBidWdzIGR1ZSB0byAnZWxzZVxucmV0dXJuIGluZCcgd29ya2luZworIiAgICAgICAgICAgICAgIDIwMDUgTWF5IDA5IC0gQWRkZWQgYW4gb3B0aW9uIHRvIG5vdCBpbmRlbnQgT0NhbWwtaW5kZW50cyBzcGVjaWFsbHkgKE1NKQogCiAiIE9ubHkgbG9hZCB0aGlzIGluZGVudCBmaWxlIHdoZW4gbm8gb3RoZXIgd2FzIGxvYWRlZC4KIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKQEAgLTQ0LDcgKzQ0LDcgQEAKIGxldCBzOnR5cGUgPSAnXlxzKlwlKGNsYXNzXHxsZXRcfHR5cGVcKVw+Lio9JwogCiAiIFNraXBwaW5nIHBhdHRlcm4sIGZvciBjb21tZW50cwotZnVuY3Rpb24gczpHZXRMaW5lV2l0aG91dEZ1bGxDb21tZW50KGxudW0pCitmdW5jdGlvbiEgczpHZXRMaW5lV2l0aG91dEZ1bGxDb21tZW50KGxudW0pCiAgbGV0IGxudW0gPSBwcmV2bm9uYmxhbmsoYTpsbnVtIC0gMSkKICBsZXQgbGxpbmUgPSBzdWJzdGl0dXRlKGdldGxpbmUobG51bSksICcoXCouKlwqKVxzKiQnLCAnJywgJycpCiAgd2hpbGUgbGxpbmUgPX4gJ15ccyokJyAmJiBsbnVtID4gMApAQCAtNTUsNyArNTUsNyBAQAogZW5kZnVuY3Rpb24KIAogIiBJbmRlbnQgZm9yICc7OycgdG8gbWF0Y2ggbXVsdGlwbGUgJ2xldCcKLWZ1bmN0aW9uIHM6R2V0SW5kKGxudW0sIHBhdCwgbGltKQorZnVuY3Rpb24hIHM6R2V0SW5kKGxudW0sIHBhdCwgbGltKQogIGxldCBsbGV0ID0gc2VhcmNoKGE6cGF0LCAnYlcnKQogIGxldCBvbGQgPSBpbmRlbnQoYTpsbnVtKQogIHdoaWxlIGxsZXQgPiAwCkBAIC03MCwxOCArNzAsMTggQEAKIGVuZGZ1bmN0aW9uCiAKICIgSW5kZW50IHBhaXJzCi1mdW5jdGlvbiBzOkZpbmRQYWlyKHBzdGFydCwgcG1pZCwgcGVuZCkKK2Z1bmN0aW9uISBzOkZpbmRQYWlyKHBzdGFydCwgcG1pZCwgcGVuZCkKICBjYWxsIHNlYXJjaChhOnBlbmQsICdiVycpCiAgcmV0dXJuIGluZGVudChzZWFyY2hwYWlyKGE6cHN0YXJ0LCBhOnBtaWQsIGE6cGVuZCwgJ2JXbicsICdzeW5JRGF0dHIoc3luSUQobGluZSgiLiIpLCBjb2woIi4iKSwgMCksICJuYW1lIikgPX4/ICJzdHJpbmdcXHxjb21tZW50IicpKQogZW5kZnVuY3Rpb24KIAogIiBJbmRlbnQgJ2xldCcKLWZ1bmN0aW9uIHM6RmluZExldChwc3RhcnQsIHBtaWQsIHBlbmQpCitmdW5jdGlvbiEgczpGaW5kTGV0KHBzdGFydCwgcG1pZCwgcGVuZCkKICBjYWxsIHNlYXJjaChhOnBlbmQsICdiVycpCiAgcmV0dXJuIGluZGVudChzZWFyY2hwYWlyKGE6cHN0YXJ0LCBhOnBtaWQsIGE6cGVuZCwgJ2JXbicsICdzeW5JRGF0dHIoc3luSUQobGluZSgiLiIpLCBjb2woIi4iKSwgMCksICJuYW1lIikgPX4/ICJzdHJpbmdcXHxjb21tZW50IiB8fCBnZXRsaW5lKCIuIikgPX4gIl5cXHMqbGV0XFw+Lio9LipcXDxpblxccyokIiB8fCBnZXRsaW5lKHByZXZub25ibGFuaygiLiIpIC0gMSkgPX4gczpiZWZsZXQnKSkKIGVuZGZ1bmN0aW9uCiAKLWZ1bmN0aW9uIEdldE9DYW1sSW5kZW50KCkKK2Z1bmN0aW9uISBHZXRPQ2FtbEluZGVudCgpCiAgIiBGaW5kIGEgbm9uLWNvbW1lbnRlZCBsaW5lIGFib3ZlIHRoZSBjdXJyZW50IGxpbmUuCiAgbGV0IGxudW0gPSBzOkdldExpbmVXaXRob3V0RnVsbENvbW1lbnQodjpsbnVtKQogCkBAIC0yMzksNiArMjM5LDIwIEBACiAgZWxzZWlmIGxsaW5lID1+ICdeXHMqKFwqJyAmJiBsaW5lID1+ICdeXHMqXConCiAgICBsZXQgaW5kID0gaW5kICsgMQogCisgZWxzZQorICIgRG9uJ3QgY2hhbmdlIGluZGVudGF0aW9uIG9mIHRoaXMgbGluZQorICIgZm9yIG5ldyBsaW5lcyAoaW5kZW50PT0wKSB1c2UgaW5kZW50YXRpb24gb2YgcHJldmlvdXMgbGluZQorCisgIiBUaGlzIGlzIGZvciBwcmV2ZW50aW5nIHJlbW92aW5nIGluZGVudGF0aW9uIG9mIHRoZXNlIGFyZ3M6CisgIiAgIGxldCBmIHggPQorICIgICAgIGxldCB5ID0geCArIDEgaW4KKyAiICAgICBQcmludGYucHJpbnRmCisgIiAgICAgICAibyIgICAgICAgICAgIDw8IGhlcmUKKyAiICAgICAgICJvZXV0aCIgICAgICAgPDwgZG9uJ3QgdG91Y2ggaW5kZW50YXRpb24KKworICAgbGV0IGkgPSBpbmRlbnQodjpsbnVtKQorICAgcmV0dXJuIGkgPT0gMCA/IGluZCA6IGkKKwogIGVuZGlmCiAKICAiIFN1YnRyYWN0IGEgJ3NoaWZ0d2lkdGgnIGFmdGVyIGxpbmVzIG1hdGNoaW5nICdtYXRjaCAuLi4gd2l0aCBwYXJzZXInOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXdrLnZpbSBiL3J1bnRpbWUvc3ludGF4L2F3ay52aW0KaW5kZXggOGMxZjE4Mi4uNmYxZjU2MSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYXdrLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hd2sudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CWF3aywgbmF3aywgZ2F3aywgbWF3awotIiBNYWludGFpbmVyOglBbnRvbmlvIENvbG9tYm8gPGF6YzEwQHlhaG9vLmNvbT4KLSIgTGFzdCBDaGFuZ2U6CTIwMDUgTWFyIDE2CisiIE1haW50YWluZXI6CUFudG9uaW8gQ29sb21ibyA8YXpjMTAwQGdtYWlsLmNvbT4KKyIgTGFzdCBDaGFuZ2U6CTIwMTIgSmFuIDMxCiAKICIgQVdLICByZWYuICBpczogQWxmcmVkIFYuIEFobywgQnJpYW4gVy4gS2VybmlnaGFuLCBQZXRlciBKLiBXZWluYmVyZ2VyCiAiIFRoZSBBV0sgUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UsIEFkZGlzb24tV2VzbGV5LCAxOTg4CkBAIC0yNSw2ICsyNSw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiAiIEEgYnVuY2ggb2YgdXNlZnVsIEF3ayBrZXl3b3JkcwogIiBBV0sgIHJlZi4gcC4gMTg4CiBzeW4ga2V5d29yZCBhd2tTdGF0ZW1lbnQJYnJlYWsgY29udGludWUgZGVsZXRlIGV4aXQKQEAgLTIxMyw0ICsyMTYsNyBAQAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhd2siCiAKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQorCiAiIHZpbTogdHM9OApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbG9ndGFsay52aW0gYi9ydW50aW1lL3N5bnRheC9sb2d0YWxrLnZpbQppbmRleCA3ZDkwY2Q4Li5iZTM0YzdlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9sb2d0YWxrLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9sb2d0YWxrLnZpbQpAQCAtMiw3ICsyLDcgQEAKICIKICIgTGFuZ3VhZ2U6CUxvZ3RhbGsKICIgTWFpbnRhaW5lcjoJUGF1bG8gTW91cmEgPHBtb3VyYUBsb2d0YWxrLm9yZz4KLSIgTGFzdCBDaGFuZ2U6CU9jdCAzMSwgMjAwOAorIiBMYXN0IENoYW5nZToJRmVicnVhcnkgNCwgMjAxMgogCiAKICIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkOgpAQCAtMTMsNiArMTMsOCBAQAogCWZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQogCiAiIExvZ3RhbGsgaXMgY2FzZSBzZW5zaXRpdmU6CiAKQEAgLTc1LDggKzc3LDEzIEBACiAKICIgTG9ndGFsayBkaXJlY3RpdmVzCiAKK3N5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBpZigiCQkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKK3N5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBlbGlmKCIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCitzeW4gbWF0Y2gJbG9ndGFsa0RpclRhZwkJIjotIGVsc2VcLiIKK3N5biBtYXRjaAlsb2d0YWxrRGlyVGFnCQkiOi0gZW5kaWZcLiIKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBhbGlhcygiCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAogc3luIHJlZ2lvbglsb2d0YWxrRGlyCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJc3RhcnQ9IjotIGNhbGxzKCIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCitzeW4gcmVnaW9uCWxvZ3RhbGtEaXIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwlzdGFydD0iOi0gY29pbmR1Y3RpdmUoIgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBlbmNvZGluZygiCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAogc3luIHJlZ2lvbglsb2d0YWxrRGlyCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJc3RhcnQ9IjotIGluaXRpYWxpemF0aW9uKCIJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBpbmZvKCIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCkBAIC04OSwxNyArOTYsMjcgQEAKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBwcm90ZWN0ZWQoIgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBwcml2YXRlKCIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCiBzeW4gcmVnaW9uCWxvZ3RhbGtEaXIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwlzdGFydD0iOi0gbWV0YV9wcmVkaWNhdGUoIgltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAorc3luIHJlZ2lvbglsb2d0YWxrRGlyCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJc3RhcnQ9IjotIG1ldGFfbm9uX3Rlcm1pbmFsKCIJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBvcCgiCQkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKK3N5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBzZXRfbG9ndGFsa19mbGFnKCIJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBzeW5jaHJvbml6ZWQoIgltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAogc3luIG1hdGNoCWxvZ3RhbGtEaXJUYWcJCSI6LSBzeW5jaHJvbml6ZWRcLiIKIHN5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSB1c2VzKCIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCiBzeW4gbWF0Y2gJbG9ndGFsa0RpclRhZwkJIjotIHRocmVhZGVkXC4iCiAKIAorIiBQcm9sb2cgZGlyZWN0aXZlcworCitzeW4gcmVnaW9uCWxvZ3RhbGtEaXIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwlzdGFydD0iOi0gZW5zdXJlX2xvYWRlZCgiCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCitzeW4gcmVnaW9uCWxvZ3RhbGtEaXIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwlzdGFydD0iOi0gaW5jbHVkZSgiICAgICAJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCWVuZD0iKVwuIgljb250YWlucz1BTEwKK3N5biByZWdpb24JbG9ndGFsa0RpcgkJbWF0Y2hncm91cD1sb2d0YWxrRGlyVGFnCXN0YXJ0PSI6LSBzZXRfcHJvbG9nX2ZsYWcoIgltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAorCisKICIgTW9kdWxlIGRpcmVjdGl2ZXMKIAogc3luIHJlZ2lvbglsb2d0YWxrRGlyCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJc3RhcnQ9IjotIG1vZHVsZSgiCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAogc3luIHJlZ2lvbglsb2d0YWxrRGlyCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJc3RhcnQ9IjotIGV4cG9ydCgiCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAorc3luIHJlZ2lvbglsb2d0YWxrRGlyCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJc3RhcnQ9IjotIHJlZXhwb3J0KCIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwllbmQ9IilcLiIJY29udGFpbnM9QUxMCiBzeW4gcmVnaW9uCWxvZ3RhbGtEaXIJCW1hdGNoZ3JvdXA9bG9ndGFsa0RpclRhZwlzdGFydD0iOi0gdXNlX21vZHVsZSgiCQltYXRjaGdyb3VwPWxvZ3RhbGtEaXJUYWcJZW5kPSIpXC4iCWNvbnRhaW5zPUFMTAogCiAKQEAgLTEwOSw3ICsxMjYsNyBAQAogCiBzeW4gbWF0Y2gJbG9ndGFsa0J1aWx0SW4JCSJcPFwob2JqZWN0XHxwcm90b2NvbFx8Y2F0ZWdvcnlcKV9wcm9wZXJ0eVx6ZSgiCiAKLXN5biBtYXRjaAlsb2d0YWxrQnVpbHRJbgkJIlw8Y29tcGxlbWVudHNfb2JqZWN0XHplKCIKK3N5biBtYXRjaAlsb2d0YWxrQnVpbHRJbgkJIlw8Y29cKG1wbGVtZW50c19vYmplY3RcfG5mb3Jtc190b19wcm90b2NvbFwpXHplKCIKIHN5biBtYXRjaAlsb2d0YWxrQnVpbHRJbgkJIlw8ZXh0ZW5kc19cKG9iamVjdFx8cHJvdG9jb2xcfGNhdGVnb3J5XClcemUoIgogc3luIG1hdGNoCWxvZ3RhbGtCdWlsdEluCQkiXDxpbXBcKG9ydHNfY2F0ZWdvcnlcfGxlbWVudHNfcHJvdG9jb2xcKVx6ZSgiCiBzeW4gbWF0Y2gJbG9ndGFsa0J1aWx0SW4JCSJcPFwoaW5zdGFudGlhdFx8c3BlY2lhbGl6XCllc19jbGFzc1x6ZSgiCkBAIC0xMTksNyArMTM2LDcgQEAKIAogc3luIG1hdGNoCWxvZ3RhbGtCdWlsdEluCQkiXDxcKGN1cnJlblx8c2VcKXRfbG9ndGFsa19mbGFnXHplKCIKIAotc3luIG1hdGNoCWxvZ3RhbGtCdWlsdEluCQkiXDxsb2d0YWxrX1woY29tcGlsZVx8bFwoaWJyYXJ5X3BhdGhcfG9hZFwpXClcemUoIgorc3luIG1hdGNoCWxvZ3RhbGtCdWlsdEluCQkiXDxsb2d0YWxrX1woY29tcGlsZVx8bFwoaWJyYXJ5X3BhdGhcfG9hZFx8b2FkX2NvbnRleHRcKVwpXHplKCIKIAogc3luIG1hdGNoCWxvZ3RhbGtCdWlsdEluCQkiXDxcKGZvclx8cmV0cmFjdFwpYWxsXHplKCIKIApAQCAtMTQ1LDcgKzE2Miw3IEBACiBzeW4gbWF0Y2gJbG9ndGFsa0J1aWx0SW5NZXRob2QJIlw8YmVmb3JlXHplKCIKIHN5biBtYXRjaAlsb2d0YWxrQnVpbHRJbk1ldGhvZAkiXDxhZnRlclx6ZSgiCiAKLXN5biBtYXRjaAlsb2d0YWxrQnVpbHRJbk1ldGhvZAkiXDxleHBhbmRfdGVybVx6ZSgiCitzeW4gbWF0Y2gJbG9ndGFsa0J1aWx0SW5NZXRob2QJIlw8ZXhwYW5kX1woZ29hbFx8dGVybVwpXHplKCIKIHN5biBtYXRjaAlsb2d0YWxrQnVpbHRJbk1ldGhvZAkiXDxcKGdvYWxcfHRlcm1cKV9leHBhbnNpb25cemUoIgogc3luIG1hdGNoCWxvZ3RhbGtCdWlsdEluTWV0aG9kCSJcPHBocmFzZVx6ZSgiCiAKQEAgLTE4MiwxMiArMTk5LDE0IEBACiBzeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPGF0b21cKGljXClcP1x6ZSgiCiBzeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPGludGVnZXJcemUoIgogc3luIG1hdGNoCWxvZ3RhbGtLZXl3b3JkCQkiXDxmbG9hdFx6ZSgiCi1zeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPGNvbXBvdW5kXHplKCIKK3N5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8Y1woYWxsYWJsZVx8b21wb3VuZFwpXHplKCIKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8blwob252YXJcfHVtYmVyXClcemUoIgorc3luIG1hdGNoCWxvZ3RhbGtLZXl3b3JkCQkiXDxncm91bmRcemUoIgogCiAKICIgVGVybSBjb21wYXJpc29uCiAKK3N5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8Y29tcGFyZVx6ZSgiCiBzeW4gbWF0Y2gJbG9ndGFsa09wZXJhdG9yCQkiQD08Igogc3luIG1hdGNoCWxvZ3RhbGtPcGVyYXRvcgkJIj09Igogc3luIG1hdGNoCWxvZ3RhbGtPcGVyYXRvcgkJIlxcPT0iCkBAIC0yMDIsNiArMjIxLDcgQEAKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8YXJnXHplKCIKIHN5biBtYXRjaAlsb2d0YWxrT3BlcmF0b3IJCSI9XC5cLiIKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8Y29weV90ZXJtXHplKCIKK3N5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8bnVtYmVydmFyc1x6ZSgiCiAKIAogIiBBcml0aGVtdGljIGV2YWx1YXRpb24KQEAgLTI1MCw2ICsyNzAsNyBAQAogIiBMb2dpYyBhbmQgY29udHJvbAogCiBzeW4gbWF0Y2gJbG9ndGFsa09wZXJhdG9yCQkiXFwrIgorc3luIG1hdGNoCWxvZ3RhbGtLZXl3b3JkCQkiXDxpZ25vcmVcemUoIgogc3luIG1hdGNoCWxvZ3RhbGtLZXl3b3JkCQkiXDxvbmNlXHplKCIKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8cmVwZWF0XD4iCiAKQEAgLTI2OSw2ICsyOTAsMTEgQEAKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8aGFsdFw+IgogCiAKKyIgU29ydGluZworCitzeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPFwoa2V5XClcP3NvcnRcemUoIgorCisKICIgRXZhbHVhYmxlIGZ1bmN0b3JzCiAKIHN5biBtYXRjaAlsb2d0YWxrT3BlcmF0b3IJCSIrIgpAQCAtMjc3LDYgKzMwMyw4IEBACiBzeW4gbWF0Y2gJbG9ndGFsa09wZXJhdG9yCQkiLy8iCiBzeW4gbWF0Y2gJbG9ndGFsa09wZXJhdG9yCQkiLyIKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8clwob3VuZFx8ZW1cKVx6ZSgiCitzeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPGVcPiIKK3N5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8cGlcPiIKIHN5biBtYXRjaAlsb2d0YWxrS2V5d29yZAkJIlw8cmVtXD4iCiBzeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPG1vZFx6ZSgiCiBzeW4gbWF0Y2gJbG9ndGFsa0tleXdvcmQJCSJcPG1vZFw+IgpAQCAtMzExLDcgKzMzOSwxMiBAQAogc3luIG1hdGNoCWxvZ3RhbGtPcGVyYXRvcgkJInwiCiAKIAotIiBMb2d0YWxrIG51bWJlcnMKKyIgTG9ndGFsayBleGlzdGVudGlhbCBxdWFudGlmaWVyIG9wZXJhdG9yCisKK3N5biBtYXRjaAlsb2d0YWxrT3BlcmF0b3IJCSJcXiIKKworCisiIExvZ3RhbGsgbnVtYmVycyAKIAogc3luIG1hdGNoCWxvZ3RhbGtOdW1iZXIJCSJcPFxkXCtcPiIKIHN5biBtYXRjaAlsb2d0YWxrTnVtYmVyCQkiXDxcZFwrXC5cZFwrXD4iCkBAIC0zMzMsNiArMzY2LDE3IEBACiBzeW4gcmVnaW9uCWxvZ3RhbGtCbG9ja0NvbW1lbnQJc3RhcnQ9Ii9cKiIJZW5kPSJcKi8iCWZvbGQKIHN5biBtYXRjaAlsb2d0YWxrTGluZUNvbW1lbnQJIiUuKiIKIAorc3luIGNsdXN0ZXIJbG9ndGFsa0NvbW1lbnQJCWNvbnRhaW5zPWxvZ3RhbGtCbG9ja0NvbW1lbnQsbG9ndGFsa0xpbmVDb21tZW50CisKKworIiBMb2d0YWxrIGNvbmRpdGlvbmFsIGNvbXBpbGF0aW9uIGZvbGRpbmcKKworc3luIHJlZ2lvbiBsb2d0YWxrSWZDb250YWluZXIgdHJhbnNwYXJlbnQga2VlcGVuZCBleHRlbmQgc3RhcnQ9IjotIGlmKCIgZW5kPSI6LSBlbmRpZlwuIiBjb250YWluZWRpbj1BTExCVVQsQGxvZ3RhbGtDb21tZW50IGNvbnRhaW5zPU5PTkUKK3N5biByZWdpb24gbG9ndGFsa0lmIHRyYW5zcGFyZW50IGZvbGQga2VlcGVuZCBzdGFydD0iOi0gaWYoIiBlbmQ9IjotIFwoZWxzZVwuXHxlbGlmKFwpIm1zPXMtMSxtZT1zLTEgY29udGFpbmVkIGNvbnRhaW5lZGluPWxvZ3RhbGtJZkNvbnRhaW5lciBuZXh0Z3JvdXA9bG9ndGFsa0Vsc2VJZixsb2d0YWxrRWxzZSBjb250YWlucz1UT1AKK3N5biByZWdpb24gbG9ndGFsa0Vsc2VJZiB0cmFuc3BhcmVudCBmb2xkIGtlZXBlbmQgc3RhcnQ9IjotIGVsaWYoIiBlbmQ9IjotIFwoZWxzZVwuXHxlbGlmKFwpIm1zPXMtMSxtZT1zLTEgY29udGFpbmVkIGNvbnRhaW5lZGluPWxvZ3RhbGtJZkNvbnRhaW5lciBuZXh0Z3JvdXA9bG9ndGFsa0Vsc2VJZixsb2d0YWxrRWxzZSBjb250YWlucz1UT1AKK3N5biByZWdpb24gbG9ndGFsa0Vsc2UgdHJhbnNwYXJlbnQgZm9sZCBrZWVwZW5kIHN0YXJ0PSI6LSBlbHNlXC4iIGVuZD0iOi0gZW5kaWZcLiIgY29udGFpbmVkIGNvbnRhaW5lZGluPWxvZ3RhbGtJZkNvbnRhaW5lciBjb250YWlucz1UT1AKKworCiAKICIgTG9ndGFsayBlbnRpdHkgZm9sZGluZwogCkBAIC0zNjIsNiArNDA2LDExIEBACiAJSGlMaW5rCWxvZ3RhbGtPcGVuRW50aXR5RGlyCU5vcm1hbAogCUhpTGluawlsb2d0YWxrT3BlbkVudGl0eURpclRhZwlQcmVQcm9jCiAKKwlIaUxpbmsJbG9ndGFsa0lmQ29udGFpbmVyCVByZVByb2MKKwlIaUxpbmsJbG9ndGFsa0lmCQlQcmVQcm9jCisJSGlMaW5rCWxvZ3RhbGtFbHNlSWYJCVByZVByb2MKKwlIaUxpbmsJbG9ndGFsa0Vsc2UJCVByZVByb2MKKwogCUhpTGluawlsb2d0YWxrRW50aXR5CQlOb3JtYWwKIAogCUhpTGluawlsb2d0YWxrRW50aXR5UmVsCU5vcm1hbApAQCAtMzk2LDMgKzQ0NSw2IEBACiAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibG9ndGFsayIKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYWlsLnZpbSBiL3J1bnRpbWUvc3ludGF4L21haWwudmltCmluZGV4IGNmNGEyYzYuLjgyM2M2YjQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21haWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21haWwudmltCkBAIC0yLDEzICsyLDE2IEBACiAiIExhbmd1YWdlOgkJTWFpbCBmaWxlCiAiIFByZXZpb3VzIE1haW50YWluZXI6CUZlbGl4IHZvbiBMZWl0bmVyIDxsZWl0bmVyQG1hdGguZnUtYmVybGluLmRlPgogIiBNYWludGFpbmVyOgkJR0kgPGFAYi5jPiwgd2hlcmUgYT0nZ2kxMjQyK3ZpbScsIGI9J2dtYWlsJywgYz0nY29tJwotIiBMYXN0IENoYW5nZToJCVNhdCAwMyBEZWMgMjAxMSAxMDozNDoyNyBQTSBFU1QKKyIgTGFzdCBDaGFuZ2U6CQlUaHUgMDIgRmViIDIwMTIgMDg6NDc6MDQgUE0gRVNUCiAKICIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBUaGUgbWFpbCBoZWFkZXIgaXMgcmVjb2duaXplZCBzdGFydGluZyB3aXRoIGEgImtleXdvcmQ6IiBsaW5lIGFuZCBlbmRpbmcKICIgd2l0aCBhbiBlbXB0eSBsaW5lIG9yIG90aGVyIGxpbmUgdGhhdCBjYW4ndCBiZSBpbiB0aGUgaGVhZGVyLiBBbGwgbGluZXMgb2YKICIgdGhlIGhlYWRlciBhcmUgaGlnaGxpZ2h0ZWQuIEhlYWRlcnMgb2YgcXVvdGVkIG1lc3NhZ2VzIChxdW90ZWQgd2l0aCA+KSBhcmUKQEAgLTQwLDcgKzQzLDcgQEAKIHN5biByZWdpb24JbWFpbEhlYWRlcktleQljb250YWluZWQgY29udGFpbnM9bWFpbEhlYWRlckVtYWlsLG1haWxFbWFpbCxAbWFpbFF1b3RlRXhwcyxATm9TcGVsbCBzdGFydD0iXHYoXihcPiA/KSopQDw9KHRvfGI/Y2MpOiIgc2tpcD0iLCQiIGVuZD0iJCIKIHN5biBtYXRjaAltYWlsSGVhZGVyS2V5CWNvbnRhaW5lZCBjb250YWlucz1tYWlsSGVhZGVyRW1haWwsbWFpbEVtYWlsLEBOb1NwZWxsICJcdiheKFw+ID8pKilAPD0oZnJvbXxyZXBseS10byk6LiokIiBmb2xkCiBzeW4gbWF0Y2gJbWFpbEhlYWRlcktleQljb250YWluZWQgY29udGFpbnM9QE5vU3BlbGwgIlx2KF4oXD4gPykqKUA8PWRhdGU6Igotc3luIG1hdGNoCW1haWxTdWJqZWN0CWNvbnRhaW5lZCBjb250YWlucz1ATm9TcGVsbCAiXHZec3ViamVjdDouKiQiIGZvbGQKK3N5biBtYXRjaAltYWlsU3ViamVjdAljb250YWluZWQgIlx2XnN1YmplY3Q6LiokIiBmb2xkCiBzeW4gbWF0Y2gJbWFpbFN1YmplY3QJY29udGFpbmVkIGNvbnRhaW5zPUBOb1NwZWxsICJcdiheKFw+ID8pKylAPD1zdWJqZWN0Oi4qJCIKIAogIiBBbnl0aGluZyBpbiB0aGUgaGVhZGVyIGJldHdlZW4gPCBhbmQgPiBpcyBhbiBlbWFpbCBhZGRyZXNzCkBAIC0xMDQsMyArMTA3LDYgQEAKIGhpIGRlZiBsaW5rIG1haWxRdW90ZUV4cDYJbWFpbFF1b3RlZDYKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibWFpbCIKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYXNtLnZpbSBiL3J1bnRpbWUvc3ludGF4L21hc20udmltCmluZGV4IDRmZmQyMmIuLjE3MTE2MDEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21hc20udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21hc20udmltCkBAIC0yLDggKzIsOCBAQAogIiBMYW5ndWFnZToJTWljcm9zb2Z0IE1hY3JvIEFzc2VtYmxlciAoODB4ODYpCiAiIE9yaWcgQXV0aG9yOglSb2IgQnJhZHkgPHJvYmJAZGF0YXRvbmUuY29tPgogIiBNYWludGFpbmVyOglXdSBZb25nd2VpIDx3dXlvbmd3ZWlAZ21haWwuY29tPgotIiBMYXN0IENoYW5nZToJJERhdGU6IDIwMDcvMDQvMjEgMTM6MjA6MTUgJAotIiAkUmV2aXNpb246IDEuNDQgJAorIiBMYXN0IENoYW5nZToJJERhdGU6IDIwMTIvMDIvMDQgMTI6NDU6MzkgJAorIiAkUmV2aXNpb246IDEuNDYgJAogCiAiIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwogIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZApAQCAtMTMsNiArMTMsOSBAQAogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogc3luIGNhc2UgaWdub3JlCiAKIApAQCAtMTg0LDYgKzE4NywxMiBAQAogc3luIGtleXdvcmQgbWFzbVJlZ2lzdGVyCVRSMyBUUjQgVFI1IFRSNiBUUjcKIHN5biBtYXRjaCAgIG1hc21SZWdpc3RlcgkiU1QoWzAtN10pIgogCisiIHg4Ni02NCByZWdpc3RlcnMKK3N5biBrZXl3b3JkIG1hc21SZWdpc3RlcglSQVggUkJYIFJDWCBSRFggUlNJIFJESSBSQlAgUlNQCitzeW4ga2V5d29yZCBtYXNtUmVnaXN0ZXIJUjggUjkgUjEwIFIxMSBSMTIgUjEzIFIxNCBSMTUKK3N5biBrZXl3b3JkIG1hc21SZWdpc3RlcglSOEQgUjlEIFIxMEQgUjExRCBSMTJEIFIxM0QgUjE0RCBSMTVECitzeW4ga2V5d29yZCBtYXNtUmVnaXN0ZXIJUjhXIFI5VyBSMTBXIFIxMVcgUjEyVyBSMTNXIFIxNFcgUjE1Vworc3luIGtleXdvcmQgbWFzbVJlZ2lzdGVyCVI4QiBSOUIgUjEwQiBSMTFCIFIxMkIgUjEzQiBSMTRCIFIxNUIKIAogIiBJbnN0cnVjdGlvbiBwcmVmaXhlcwogc3luIGtleXdvcmQgbWFzbU9wY29kZQkJTE9DSyBSRVAgUkVQRSBSRVBORSBSRVBOWiBSRVBaCkBAIC0zNDAsNCArMzQ5LDcgQEAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibWFzbSIKIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCisKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tbWEudmltIGIvcnVudGltZS9zeW50YXgvbW1hLnZpbQppbmRleCBmNDhkY2NlLi5jNjNiZWIxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tbWEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21tYS52aW0KQEAgLTEsMTIgKzEsMTIgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgTWF0aGVtYXRpY2EKICIgTWFpbnRhaW5lcjogICBzdGV2ZSBsYXlsYW5kIDxsYXlsYW5kQHdvbGZyYW0uY29tPgotIiBMYXN0IENoYW5nZTogIFRodSBNYXkgMTkgMjE6MzY6MDQgQ0RUIDIwMDUKKyIgTGFzdCBDaGFuZ2U6ICAyMDEyIEZlYiAwMyBieSBUaGlsbyBTaXgKICIgU291cmNlOiAgICAgICBodHRwOi8vbWVtYmVycy53cmkuY29tL2xheWxhbmQvdmltL3N5bnRheC9tbWEudmltCiAiICAgICAgICAgICAgICAgaHR0cDovL3ZpbS5zb3VyY2Vmb3JnZS5uZXQvc2NyaXB0cy9zY3JpcHQucGhwP3NjcmlwdF9pZD0xMjczCiAiIElkOiAgICAgICAgICAgJElkOiBtbWEudmltLHYgMS40IDIwMDYvMDQvMTQgMjA6NDA6MzggdmltYm9zcyBFeHAgJAogIiBOT1RFOgotIiAKKyIKICIgRW1wdHkgLm0gZmlsZXMgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHByZXN1bWVkIGFzIE1hdGxhYiBmaWxlcwogIiB1bmxlc3MgeW91IGhhdmUgdGhlIGZvbGxvd2luZyBpbiB5b3VyIC52aW1yYzoKICIKQEAgLTE0LDcgKzE0LDcgQEAKICIKICIgSSBhbHNvIHJlY29tbWVuZCBzZXR0aW5nIHRoZSBkZWZhdWx0ICdDb21tZW50JyBoaWxpZ2h0aW5nIHRvIHNvbWV0aGluZwogIiBvdGhlciB0aGFuIHRoZSBjb2xvciB1c2VkIGZvciAnRnVuY3Rpb24nLCBzaW5jZSBib3RoIGFyZSBwbGVudGlmdWwgaW4KLSIgbW9zdCBtYXRoZW1hdGljYSBmaWxlcywgYW5kIHRoZXkgYXJlIG9mdGVuIHRoZSBzYW1lIGNvbG9yICh3aGVuIHVzaW5nIAorIiBtb3N0IG1hdGhlbWF0aWNhIGZpbGVzLCBhbmQgdGhleSBhcmUgb2Z0ZW4gdGhlIHNhbWUgY29sb3IgKHdoZW4gdXNpbmcKICIgYmFja2dyb3VuZD1kYXJrKS4KICIKICIgQ3JlZGl0czoKQEAgLTI0LDExICsyNCwxMSBAQAogIiAgICBmcm9tIHRoZSBKYXZhIHZpbSBzeW50YXggZmlsZSBieSBDbGF1ZGlvIEZsZWluZXIuICBUaGFua3MhCiAiIG8gIEV2ZXJ5dGhpbmcgZWxzZSB3cml0dGVuIGJ5IHN0ZXZlIDxsYXlsYW5kQHdvbGZyYW0uY29tPgogIgotIiBCdWdzOiAKLSIgbyAgVmltIDYuMSBkaWRuJ3QgcmVhbGx5IGhhdmUgc3VwcG9ydCBmb3IgY2hhcmFjdGVyIGNsYXNzZXMgCisiIEJ1Z3M6CisiIG8gIFZpbSA2LjEgZGlkbid0IHJlYWxseSBoYXZlIHN1cHBvcnQgZm9yIGNoYXJhY3RlciBjbGFzc2VzCiAiICAgIG9mIG90aGVyIG5hbWVkIGNoYXJhY3RlciBjbGFzc2VzLiAgRm9yIGV4YW1wbGUsIFtcYVxkXQogIiAgICBkaWRuJ3Qgd29yay4gIFRoZXJlZm9yZSwgYSBsb3Qgb2YgdGhpcyBjb2RlIHVzZXMgZXhwbGljaXQKLSIgICAgY2hhcmFjdGVyIGNsYXNzZXMgaW5zdGVhZDogWzAtOWEtekEtWl0gCisiICAgIGNoYXJhY3RlciBjbGFzc2VzIGluc3RlYWQ6IFswLTlhLXpBLVpdCiAiCiAiIFRPRE86CiAiICAgZm9sZGluZwpAQCAtNDEsNiArNDEsOSBAQAogICAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiAiIEdyb3VwIERlZmluaXRpb25zOgogc3ludGF4IGNsdXN0ZXIgbW1hTm90ZXMgY29udGFpbnM9bW1hVG9kbyxtbWFGaXhtZQogc3ludGF4IGNsdXN0ZXIgbW1hQ29tbWVudHMgY29udGFpbnM9bW1hQ29tbWVudCxtbWFGdW5jdGlvbkNvbW1lbnQsbW1hSXRlbSxtbWFGdW5jdGlvblRpdGxlLG1tYUNvbW1lbnRTdGFyCkBAIC01OCw3ICs2MSw3IEBACiBzeW50YXgga2V5d29yZCBtbWFWYXJpYWJsZSBUcnVlIEZhbHNlIE5vbmUgQXV0b21hdGljIEFsbCBOdWxsIEMgR2VuZXJhbAogCiAiIG1hdGhlbWF0aWNhbCBjb25zdGFudHM6Ci1zeW50YXgga2V5d29yZCBtbWFWYXJpYWJsZSBQaSBJIEUgSW5maW5pdHkgQ29tcGxleEluZmluaXR5IEluZGV0ZXJtaW5hdGUgR29sZGVuUmF0aW8gRXVsZXJHYW1tYSBEZWdyZWUgQ2F0YWxhbiBLaGluY2hpbiBHbGFpc2hlciAKK3N5bnRheCBrZXl3b3JkIG1tYVZhcmlhYmxlIFBpIEkgRSBJbmZpbml0eSBDb21wbGV4SW5maW5pdHkgSW5kZXRlcm1pbmF0ZSBHb2xkZW5SYXRpbyBFdWxlckdhbW1hIERlZ3JlZSBDYXRhbGFuIEtoaW5jaGluIEdsYWlzaGVyCiAKICIgc3RyZWFtIGRhdGEgLyBhdG9taWMgaGVhZHM6CiBzeW50YXgga2V5d29yZCBtbWFWYXJpYWJsZSBCeXRlIENoYXJhY3RlciBFeHByZXNzaW9uIE51bWJlciBSZWFsIFN0cmluZyBXb3JkIEVuZE9mRmlsZSBJbnRlZ2VyIFN5bWJvbApAQCAtODAsNyArODMsNyBAQAogc3ludGF4IGtleXdvcmQgbW1hVmFyaWFibGUgQmxhY2sgQmx1ZSBCcm93biBDeWFuIEdyYXkgR3JlZW4gTWFnZW50YSBPcmFuZ2UgUGluayBQdXJwbGUgUmVkIFdoaXRlIFllbGxvdwogCiAiIGZ1bmN0aW9uIGF0dHJpYnV0ZXMKLXN5bnRheCBrZXl3b3JkIG1tYVZhcmlhYmxlIFByb3RlY3RlZCBMaXN0YWJsZSBPbmVJZGVudGl0eSBPcmRlcmxlc3MgRmxhdCBDb25zdGFudCBOdW1lcmljRnVuY3Rpb24gTG9ja2VkIFJlYWRQcm90ZWN0ZWQgSG9sZEZpcnN0IEhvbGRSZXN0IEhvbGRBbGwgSG9sZEFsbENvbXBsZXRlIFNlcXVlbmNlSG9sZCBOSG9sZEZpcnN0IE5Ib2xkUmVzdCBOSG9sZEFsbCBUZW1wb3JhcnkgU3R1YiAKK3N5bnRheCBrZXl3b3JkIG1tYVZhcmlhYmxlIFByb3RlY3RlZCBMaXN0YWJsZSBPbmVJZGVudGl0eSBPcmRlcmxlc3MgRmxhdCBDb25zdGFudCBOdW1lcmljRnVuY3Rpb24gTG9ja2VkIFJlYWRQcm90ZWN0ZWQgSG9sZEZpcnN0IEhvbGRSZXN0IEhvbGRBbGwgSG9sZEFsbENvbXBsZXRlIFNlcXVlbmNlSG9sZCBOSG9sZEZpcnN0IE5Ib2xkUmVzdCBOSG9sZEFsbCBUZW1wb3JhcnkgU3R1YgogCiAiIENvbW1lbnQgU2VjdGlvbnM6CiAiICAgdGhpczoKQEAgLTEzNSwyNSArMTM4LDI1IEBACiAKICIgUGF0dGVybnM6CiAiICAgRWFjaCBwYXR0ZXJuIG1hcmtlciBiZWxvdyBjYW4gYmUgQmxhbmtbXSAoXyksIEJsYW5rU2VxdWVuY2VbXSAoX18pCi0iICAgb3IgQmxhbmtOdWxsU2VxdWVuY2VbXSAoX19fKS4gIE1vc3QgZXhhbXBsZXMgYmVsb3cgY2FuIGFsc28gYmUgCisiICAgb3IgQmxhbmtOdWxsU2VxdWVuY2VbXSAoX19fKS4gIE1vc3QgZXhhbXBsZXMgYmVsb3cgY2FuIGFsc28gYmUKICIgICBjb21iaW5lZCwgZm9yIGV4YW1wbGUgUGF0dGVybiB0ZXN0cyB3aXRoIERlZmF1bHQgdmFsdWVzLgotIiAgIAorIgogIiAgIF9IZWFkICAgICAgICAgICAgICAgICAgIEFub255bW91cyBwYXR0ZXJucwotIiAgIG5hbWVfSGVhZCAKKyIgICBuYW1lX0hlYWQKICIgICBuYW1lOihfSGVhZHxfSGVhZDIpICAgICBOYW1lZCBwYXR0ZXJucwotIiAgICAKKyIKICIgICBfSGVhZCA6IHZhbAogIiAgIG5hbWU6X0hlYWQ6dmFsICAgICAgICAgIERlZmF1bHQgdmFsdWVzCiAiCi0iICAgX0hlYWQ/dGVzdFEsIAorIiAgIF9IZWFkP3Rlc3RRLAogIiAgIF9IZWFkPyh0ZXN0WyNdJikgICAgICAgIFBhdHRlcm4gdGVzdHMKICIKICIgICBuYW1lX0hlYWQvO3Rlc3RbbmFtZV0gICBDb25kaXRpb25hbHMKLSIgICAKKyIKICIgICBfSGVhZDouICAgICAgICAgICAgICAgICBQcmVkZWZpbmVkIERlZmF1bHQKICIKICIgICAuLiAuLi4gICAgICAgICAgICAgICAgICBQYXR0ZXJuIFJlcGVhdAotICAgCisKIHN5bnRheCBtYXRjaCBtbWFQYXR0ZXJuRXJyb3IgIlwlKF9cezQsfVx8KVxzKiZccyopXEAhXCkiIGNvbnRhaW5lZAogCiAicGF0dGVybiBuYW1lOgpAQCAtMTcyLDcgKzE3NSw3IEBACiAiICAgPj0gPD0gPCA+CiAiICAgKz0gLT0gKj0KICIgICAvPSArKyAtLSAgICBNYXRoCi0iICAgXiogCisiICAgXioKICIgICAtPiA6PiAgICAgICBSdWxlcwogIiAgIEBAIEBAQCAgICAgIEFwcGx5CiAiICAgL0AgLy9AICAgICAgTWFwCkBAIC0yMDAsNyArMjAzLDcgQEAKIHN5bnRheCBtYXRjaCBtbWFQdXJlRnVuY3Rpb24gIiYiCiAKICIgTmFtZWQgRnVuY3Rpb25zOgotIiBTaW5jZSBldmVyeXRoaW5nIGlzIHByZXR0eSBtdWNoIGEgZnVuY3Rpb24sIGdldCB0aGlzIHN0cmFpZ2h0IAorIiBTaW5jZSBldmVyeXRoaW5nIGlzIHByZXR0eSBtdWNoIGEgZnVuY3Rpb24sIGdldCB0aGlzIHN0cmFpZ2h0CiAiIGZyb20gY29udGV4dAogc3ludGF4IG1hdGNoIG1tYUdlbmVyaWNGdW5jdGlvbiAiW0EtWmEtejAtOWBdXCtccypcJShbQFtdXHwvOlx8L1w9L0BcKVxAPSIgY29udGFpbnM9bW1hT3BlcmF0b3IKIHN5bnRheCBtYXRjaCBtbWFHZW5lcmljRnVuY3Rpb24gIlx+XHMqW15+XVwrXHMqXH4iaHM9cysxLGhlPWUtMSBjb250YWlucz1tbWFPcGVyYXRvcixtbWFCb3JpbmcKQEAgLTIyMyw3ICsyMjYsNyBAQAogc3ludGF4IG1hdGNoIG1tYUVycm9yICJcJShbL117Myx9XHxbJjp8Kyo/fi1dXHszLH1cfFsuPV1cezQsfVx8X1xAPD1cLlx7Mix9XHxgXHsyLH1cKSIgY29udGFpbmVkaW49QUxMQlVULEBtbWFDb21tZW50cyxAbW1hU3RyaW5ncwogCiAiIFB1bmN0dWF0aW9uOgotIiB0aGluZ3MgdGhhdCBzaG91bGRuJ3QgcmVhbGx5IGJlIGhpZ2hsaWdodGVkLCBvciBoaWdobGlnaHRlZCAKKyIgdGhpbmdzIHRoYXQgc2hvdWxkbid0IHJlYWxseSBiZSBoaWdobGlnaHRlZCwgb3IgaGlnaGxpZ2h0ZWQKICIgaW4gdGhleSdyZSBvd24gZ3JvdXAgaWYgeW91IF9yZWFsbHlfIHdhbnQuIDopCiAiICAoICkgeyB9CiAiIFRPRE8gLSB1c2UgRGVsaW1pdGVyIGdyb3VwPwpAQCAtMjUxLDkgKzI1NCw5IEBACiAKICJmdW5jdGlvbiBNbWFGb2xkVGV4dCgpCiAiICAgIGxldCBsaW5lID0gZ2V0bGluZSh2OmZvbGRzdGFydCkKLSIgICAgCisiCiAiICAgIGxldCBsaW5lcyA9IHY6Zm9sZGVuZC12OmZvbGRzdGFydCsxCi0iICAgIAorIgogIiAgICBsZXQgc3ViID0gc3Vic3RpdHV0ZShsaW5lLCAnKFwqXCt8XCpcKyl8Wy0qX11cKycsICcnLCAnZycpCiAiCiAiICAgIGlmIG1hdGNoKGxpbmUsICcoXConKSAhPSAtMQpAQCAtMjY0LDcgKzI2Nyw3IEBACiAiCiAiICAgIHJldHVybiB2OmZvbGRkYXNoZXMuJyAnLmxpbmVzLicgJy5zdWIKICJlbmRmCi0gICAgCisKICJ0aGlzIGlzIHNsb3cgZm9yIGNvbXB1dGluZyBmb2xkcywgYnV0IGl0IGRvZXMgc28gYWNjdXJhdGVseQogc3ludGF4IHN5bmMgZnJvbXN0YXJ0CiAKQEAgLTI4OCw4ICsyOTEsOCBAQAogCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAllbmRpZgogCi0gICAgIiBOT1RFIC0gdGhlIGZvbGxvd2luZyBsaW5rcyBhcmUgbm90IGd1YXJhbnRlZWQgdG8gCi0gICAgIiBsb29rIGdvb2QgdW5kZXIgYWxsIGNvbG9yc2NoZW1lcy4gIFlvdSBtaWdodCBuZWVkIHRvIAorICAgICIgTk9URSAtIHRoZSBmb2xsb3dpbmcgbGlua3MgYXJlIG5vdCBndWFyYW50ZWVkIHRvCisgICAgIiBsb29rIGdvb2QgdW5kZXIgYWxsIGNvbG9yc2NoZW1lcy4gIFlvdSBtaWdodCBuZWVkIHRvCiAgICAgIiA6c28gJFZJTVJVTlRJTUUvc3ludGF4L2hpdGVzdC52aW0gYW5kIHR3ZWFrIHRoZXNlIHRvCiAgICAgIiBsb29rIGdvb2QgaW4geW91cnMKIApAQCAtMzIzLDMgKzMyNiw2IEBACiBlbmRpZgogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJtbWEiCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW9uay52aW0gYi9ydW50aW1lL3N5bnRheC9tb25rLnZpbQppbmRleCA1NjBiNzljLi5hZmUyYjU2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tb25rLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tb25rLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiBNb25rIChTZWUtQmV5b25kIFRlY2hub2xvZ2llcykKICIgTWFpbnRhaW5lcjogTWlrZSBMaXRoZXJsYW5kIDxsaXRoZXJtQGNjZi5vcmc+Ci0iIExhc3QgQ2hhbmdlOiBNYXJjaCA2LCAyMDAyCisiIExhc3QgQ2hhbmdlOiAyMDEyIEZlYiAwMyBieSBUaGlsbyBTaXgKIAogIiBUaGlzIHN5bnRheCBmaWxlIGlzIGdvb2QgZW5vdWdoIGZvciBteSBuZWVkcywgYnV0IG90aGVycwogIiBtYXkgZGVzaXJlIG1vcmUgZmVhdHVyZXMuICBTdWdnZXN0aW9ucyBhbmQgYnVnIHJlcG9ydHMKQEAgLTI5LDYgKzI5LDkgQEAKICAgZmluaXNoCiBlbmRpZgogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIHN5biBjYXNlIGlnbm9yZQogCiAiIEZhc2Npc3QgaGlnaGxpZ2h0aW5nOiBldmVyeXRoaW5nIHRoYXQgZG9lc24ndCBmaXQgdGhlIHJ1bGVzIGlzIGFuIGVycm9yLi4uCkBAIC0yMjYsMyArMjI5LDYgQEAKIGVuZGlmCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1vbmsiCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXJ4dnRyYy52aW0gYi9ydW50aW1lL3N5bnRheC9tcnh2dHJjLnZpbQppbmRleCA4NzgwMjFlLi4yZWY0MzRkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tcnh2dHJjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tcnh2dHJjLnZpbQpAQCAtMSwxMyArMSwxNiBAQAotIiBDcmVhdGVkCTogV2VkIDI2IEFwciAyMDA2IDAxOjIwOjUzIEFNIENEVAotIiBNb2RpZmllZAk6IE1vbiAyNyBBdWcgMjAwNyAxMjoxMDozNyBQTSBQRFQKLSIgQXV0aG9yCTogR2F1dGFtIEl5ZXIgPGdpMTI0MkB1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+CiAiIERlc2NyaXB0aW9uCTogVmltIHN5bnRheCBmaWxlIGZvciBtcnh2dHJjIChmb3IgbXJ4dnQtMC41LjAgYW5kIHVwKQorIiBDcmVhdGVkCTogV2VkIDI2IEFwciAyMDA2IDAxOjIwOjUzIEFNIENEVAorIiBNb2RpZmllZAk6IFRodSAwMiBGZWIgMjAxMiAwODozNzo0NSBQTSBFU1QKKyIgTWFpbnRhaW5lcgk6IEdJIDxhQGIuYz4sIHdoZXJlIGE9J2dpMTI0Mit2aW0nLCBiPSdnbWFpbCcsIGM9J2NvbScKIAogIiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBzeW4gY2FzZSBtYXRjaAogCiAiIEVycm9ycwpAQCAtMjc0LDMgKzI3Nyw2IEBACiBoaSBkZWYgbGluayBtcnh2dHJjU3Vid2luCW1yeHZ0cmNTdHJWYWwKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibXJ4dnRyYyIKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tdXR0cmMudmltIGIvcnVudGltZS9zeW50YXgvbXV0dHJjLnZpbQppbmRleCAwMDM3ZjhmLi5hYmU5YmZkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tdXR0cmMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L211dHRyYy52aW0KQEAgLTIsOSArMiw5IEBACiAiIExhbmd1YWdlOglNdXR0IHNldHVwIGZpbGVzCiAiIE9yaWdpbmFsOglQcmViZW4gJ1BlcHBlJyBHdWxkYmVyZyA8cGVwcGUtdmltQHdpZWxkZXJzLm9yZz4KICIgTWFpbnRhaW5lcjoJS3lsZSBXaGVlbGVyIDxreWxlLW11dHRyYy52aW1AbWVtb3J5aG9sZS5uZXQ+Ci0iIExhc3QgQ2hhbmdlOgk5IEF1ZyAyMDEwCisiIExhc3QgQ2hhbmdlOgkyIEZlYiAyMDEyCiAKLSIgVGhpcyBmaWxlIGNvdmVycyBtdXR0IHZlcnNpb24gMS41LjIwIChhbmQgbW9zdCBvZiB0aGUgbWVyY3VyaWFsIHRpcCkKKyIgVGhpcyBmaWxlIGNvdmVycyBtdXR0IHZlcnNpb24gMS41LjIxIChhbmQgbW9zdCBvZiB0aGUgbWVyY3VyaWFsIHRpcCkKICIgSW5jbHVkZWQgYXJlIGFsc28gYSBmZXcgZmVhdHVyZXMgZnJvbSAxLjQuMi4xCiAKICIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCkBAIC0xNSw2ICsxNSw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiAiIFNldCB0aGUga2V5d29yZCBjaGFyYWN0ZXJzCiBpZiB2ZXJzaW9uIDwgNjAwCiAgIHNldCBpc2s9QCw0OC01NyxfLC0KQEAgLTIyLDYgKzI1LDExIEBACiAgIHNldGxvY2FsIGlzaz1ALDQ4LTU3LF8sLQogZW5kaWYKIAorIiBoYW5kbGluZyBvcHRpb25hbCB2YXJpYWJsZXMKK2lmICFleGlzdHMoInVzZV9tdXR0X3NpZGViYXIiKQorICBsZXQgdXNlX211dHRfc2lkZWJhcj0wCitlbmRpZgorCiBzeW4gbWF0Y2ggbXV0dHJjQ29tbWVudAkJIl4jIC4qJCIgY29udGFpbnM9QFNwZWxsCiBzeW4gbWF0Y2ggbXV0dHJjQ29tbWVudAkJIl4jW14gXS4qJCIKIHN5biBtYXRjaCBtdXR0cmNDb21tZW50CQkiXiMkIgpAQCAtOTgsNyArMTA2LDcgQEAKIHN5biByZWdpb24gIG11dHRyY0tleQkJY29udGFpbmVkIHN0YXJ0PSsnKyBza2lwPStcXFxcXHxcXCcrIGVuZD0rJysJY29udGFpbnM9bXV0dHJjS2V5U3BlY2lhbCxtdXR0cmNLZXlOYW1lCiBzeW4gbWF0Y2ggICBtdXR0cmNLZXlOYW1lCWNvbnRhaW5lZCAiXDxmXCUoXGRcfDEwXClcPiIKIHN5biBtYXRjaCAgIG11dHRyY0tleU5hbWUJY29udGFpbmVkICJcXFt0cm5lXSIKLXN5biBtYXRjaCAgIG11dHRyY0tleU5hbWUJY29udGFpbmVkICJcYzxcJShCYWNrU3BhY2VcfERlbGV0ZVx8RG93blx8RW5kXHxFbnRlclx8RXNjXHxIb21lXHxJbnNlcnRcfExlZnRcfFBhZ2VEb3duXHxQYWdlVXBcfFJldHVyblx8UmlnaHRcfFNwYWNlXHxUYWJcfFVwXCk+Igorc3luIG1hdGNoICAgbXV0dHJjS2V5TmFtZQljb250YWluZWQgIlxjPFwlKEJhY2tTcGFjZVx8QmFja1RhYlx8RGVsZXRlXHxEb3duXHxFbmRcfEVudGVyXHxFc2NcfEhvbWVcfEluc2VydFx8TGVmdFx8UGFnZURvd25cfFBhZ2VVcFx8UmV0dXJuXHxSaWdodFx8U3BhY2VcfFRhYlx8VXBcKT4iCiBzeW4gbWF0Y2ggICBtdXR0cmNLZXlOYW1lCWNvbnRhaW5lZCAiPEZbMC05XVwrPiIKIAogc3luIGtleXdvcmQgbXV0dHJjVmFyQm9vbAlza2lwd2hpdGUgY29udGFpbmVkIGFsbG93XzhiaXQgYWxsb3dfYW5zaSBhcnJvd19jdXJzb3IgYXNjaWlfY2hhcnMgYXNrYmNjIGFza2NjIGF0dGFjaF9zcGxpdCBhdXRvX3RhZyBhdXRvZWRpdCBiZWVwIGJlZXBfbmV3IG5leHRncm91cD1tdXR0cmNTZXRCb29sQXNzaWdubWVudCxtdXR0cmNWUHJlZml4LG11dHRyY1ZhckJvb2wsbXV0dHJjVmFyUXVhZCxtdXR0cmNWYXJOdW0sbXV0dHJjVmFyU3RyCkBAIC0yMDcsNiArMjE1LDkgQEAKIHN5biBrZXl3b3JkIG11dHRyY1ZhckJvb2wJc2tpcHdoaXRlIGNvbnRhaW5lZCBpbnZ0aHJlYWRfcmVjZWl2ZWQgaW52dGlsZGUgaW52dW5jb2xsYXBzZV9qdW1wIGludnVzZV84Yml0bWltZSBuZXh0Z3JvdXA9bXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgogc3luIGtleXdvcmQgbXV0dHJjVmFyQm9vbAlza2lwd2hpdGUgY29udGFpbmVkIGludnVzZV9kb21haW4gaW52dXNlX2VudmVsb3BlX2Zyb20gaW52dXNlX2Zyb20gaW52dXNlX2lkbiBpbnZ1c2VfaXB2NiBuZXh0Z3JvdXA9bXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgogc3luIGtleXdvcmQgbXV0dHJjVmFyQm9vbAlza2lwd2hpdGUgY29udGFpbmVkIGludnVzZXJfYWdlbnQgaW52d2FpdF9rZXkgaW52d2VlZCBpbnZ3cmFwX3NlYXJjaCBpbnZ3cml0ZV9iY2MgbmV4dGdyb3VwPW11dHRyY1ZQcmVmaXgsbXV0dHJjVmFyQm9vbCxtdXR0cmNWYXJRdWFkLG11dHRyY1Zhck51bSxtdXR0cmNWYXJTdHIKK2lmIHVzZV9tdXR0X3NpZGViYXIgPT0gMQorICAgIHN5biBrZXl3b3JkIG11dHRyY1ZhckJvb2wgc2tpcHdoaXRlIGNvbnRhaW5lZCBzaWRlYmFyX3Zpc2libGUgc2lkZWJhcl9zb3J0IG5leHRncm91cD1tdXR0cmNWUHJlZml4LG11dHRyY1ZhckJvb2wsbXV0dHJjVmFyUXVhZCxtdXR0cmNWYXJOdW0sbXV0dHJjVmFyU3RyCitlbmRpZgogCiBzeW4ga2V5d29yZCBtdXR0cmNWYXJRdWFkCXNraXB3aGl0ZSBjb250YWluZWQgYWJvcnRfbm9zdWJqZWN0IGFib3J0X3VubW9kaWZpZWQgYm91bmNlIGNvcHkgbmV4dGdyb3VwPW11dHRyY1NldFF1YWRBc3NpZ25tZW50LG11dHRyY1ZQcmVmaXgsbXV0dHJjVmFyQm9vbCxtdXR0cmNWYXJRdWFkLG11dHRyY1Zhck51bSxtdXR0cmNWYXJTdHIKIHN5biBrZXl3b3JkIG11dHRyY1ZhclF1YWQJc2tpcHdoaXRlIGNvbnRhaW5lZCBjcnlwdF92ZXJpZnlfc2lnIGRlbGV0ZSBmY2NfYXR0YWNoIGZvcndhcmRfZWRpdCBob25vcl9mb2xsb3d1cF90byBuZXh0Z3JvdXA9bXV0dHJjU2V0UXVhZEFzc2lnbm1lbnQsbXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgpAQCAtMjMyLDYgKzI0Myw5IEBACiBzeW4ga2V5d29yZCBtdXR0cmNWYXJOdW0Jc2tpcHdoaXRlIGNvbnRhaW5lZCBzY29yZV90aHJlc2hvbGRfZmxhZyBzY29yZV90aHJlc2hvbGRfcmVhZCBzZWFyY2hfY29udGV4dCBzZW5kbWFpbF93YWl0IHNsZWVwX3RpbWUgbmV4dGdyb3VwPW11dHRyY1NldE51bUFzc2lnbm1lbnQsbXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgogc3luIGtleXdvcmQgbXV0dHJjVmFyTnVtCXNraXB3aGl0ZSBjb250YWluZWQgc21pbWVfdGltZW91dCBzc2xfbWluX2RoX3ByaW1lX2JpdHMgdGltZW91dCB0aW1lX2luYyB3cmFwIHdyYXBtYXJnaW4gbmV4dGdyb3VwPW11dHRyY1NldE51bUFzc2lnbm1lbnQsbXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgogc3luIGtleXdvcmQgbXV0dHJjVmFyTnVtCXNraXB3aGl0ZSBjb250YWluZWQgd3JpdGVfaW5jIG5leHRncm91cD1tdXR0cmNTZXROdW1Bc3NpZ25tZW50LG11dHRyY1ZQcmVmaXgsbXV0dHJjVmFyQm9vbCxtdXR0cmNWYXJRdWFkLG11dHRyY1Zhck51bSxtdXR0cmNWYXJTdHIKK2lmIHVzZV9tdXR0X3NpZGViYXIgPT0gMQorICAgIHN5biBrZXl3b3JkIG11dHRyY1Zhck51bSBza2lwd2hpdGUgY29udGFpbmVkIHNpZGViYXJfd2lkdGggbmV4dGdyb3VwPW11dHRyY1NldE51bUFzc2lnbm1lbnQsbXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgorZW5kaWYKIAogc3luIG1hdGNoIG11dHRyY0Zvcm1hdEVycm9ycyBjb250YWluZWQgLyUuLwogCkBAIC0zNzIsNiArMzg2LDkgQEAKIHN5biBrZXl3b3JkIG11dHRyY1ZhclN0cgljb250YWluZWQgc2tpcHdoaXRlIHNtdHBfdXJsIHNtdHBfYXV0aGVudGljYXRvcnMgc210cF9wYXNzIHNvcnQgc29ydF9hbGlhcyBzb3J0X2F1eCBuZXh0Z3JvdXA9bXV0dHJjU2V0U3RyQXNzaWdubWVudCxtdXR0cmNWUHJlZml4LG11dHRyY1ZhckJvb2wsbXV0dHJjVmFyUXVhZCxtdXR0cmNWYXJOdW0sbXV0dHJjVmFyU3RyCiBzeW4ga2V5d29yZCBtdXR0cmNWYXJTdHIJY29udGFpbmVkIHNraXB3aGl0ZSBzb3J0X2Jyb3dzZXIgc3BhbV9zZXBhcmF0b3Igc3Bvb2xmaWxlIHNzbF9jYV9jZXJ0aWZpY2F0ZXNfZmlsZSBzc2xfY2xpZW50X2NlcnQgbmV4dGdyb3VwPW11dHRyY1NldFN0ckFzc2lnbm1lbnQsbXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgogc3luIGtleXdvcmQgbXV0dHJjVmFyU3RyCWNvbnRhaW5lZCBza2lwd2hpdGUgc3RhdHVzX2NoYXJzIHRtcGRpciB0b19jaGFycyB0dW5uZWwgdmlzdWFsIG5leHRncm91cD1tdXR0cmNTZXRTdHJBc3NpZ25tZW50LG11dHRyY1ZQcmVmaXgsbXV0dHJjVmFyQm9vbCxtdXR0cmNWYXJRdWFkLG11dHRyY1Zhck51bSxtdXR0cmNWYXJTdHIKK2lmIHVzZV9tdXR0X3NpZGViYXIgPT0gMQorICAgIHN5biBrZXl3b3JkIG11dHRyY1ZhclN0ciBza2lwd2hpdGUgY29udGFpbmVkIHNpZGViYXJfZGVsaW0gbmV4dGdyb3VwPW11dHRyY1NldFN0ckFzc2lnbm1lbnQsbXV0dHJjVlByZWZpeCxtdXR0cmNWYXJCb29sLG11dHRyY1ZhclF1YWQsbXV0dHJjVmFyTnVtLG11dHRyY1ZhclN0cgorZW5kaWYKIAogIiBQcmVzZW50IGluIDEuNC4yLjEgKHBncF9jcmVhdGVfdHJhZGl0aW9uYWwgd2FzIGEgYm9vbCB0aGVuKQogc3luIGtleXdvcmQgbXV0dHJjVmFyQm9vbAljb250YWluZWQgc2tpcHdoaXRlIGltYXBfZm9yY2Vfc3NsIG5vaW1hcF9mb3JjZV9zc2wgaW52aW1hcF9mb3JjZV9zc2wgbmV4dGdyb3VwPW11dHRyY1NldEJvb2xBc3NpZ25tZW50LG11dHRyY1ZQcmVmaXgsbXV0dHJjVmFyQm9vbCxtdXR0cmNWYXJRdWFkLG11dHRyY1Zhck51bSxtdXR0cmNWYXJTdHIKQEAgLTQxNyw3ICs0MzQsMTAgQEAKIHN5biBrZXl3b3JkIG11dHRyY0FsdGVybmF0ZUtleXdvcmQgY29udGFpbmVkIGFsdGVybmF0ZXMgdW5hbHRlcm5hdGVzCiBzeW4gcmVnaW9uIG11dHRyY0FsdGVybmF0ZXNMaW5lIGtlZXBlbmQgc3RhcnQ9K15ccypcJSh1blwpXD9hbHRlcm5hdGVzXHMrIHNraXA9K1xcJCsgZW5kPSskKyBjb250YWlucz1tdXR0cmNBbHRlcm5hdGVLZXl3b3JkLG11dHRyY0dyb3VwRGVmLG11dHRyY1JYUGF0LG11dHRyY1VuSGlnaGxpZ2h0U3BhY2UsbXV0dHJjQ29tbWVudAogCi1zeW4gbWF0Y2ggbXV0dHJjVmFyaWFibGUJY29udGFpbmVkICJcXFxAPCFcJFthLXpBLVpfLV1cKyIKKyIgbXV0dHJjVmFyaWFibGUgaW5jbHVkZXMgYSBwcmVmaXggYmVjYXVzZSBwYXJ0aWFsIHN0cmluZ3MgYXJlIGNvbnNpZGVyZWQKKyIgdmFsaWQuCitzeW4gbWF0Y2ggbXV0dHJjVmFyaWFibGUJY29udGFpbmVkICJcXFxAPCFbYS16QS1aXy1dKlwkW2EtekEtWl8tXVwrIiBjb250YWlucz1tdXR0cmNWYXJpYWJsZUlubmVyCitzeW4gbWF0Y2ggbXV0dHJjVmFyaWFibGVJbm5lcgljb250YWluZWQgIlwkW2EtekEtWl8tXVwrIgogc3luIG1hdGNoIG11dHRyY0VzY2FwZWRWYXJpYWJsZQljb250YWluZWQgIlxcXCRbYS16QS1aXy1dXCsiCiAKIHN5biBtYXRjaCBtdXR0cmNCYWRBY3Rpb24JY29udGFpbmVkICJbXjw+XVwrIiBjb250YWlucz1tdXR0cmNFbWFpbApAQCAtNDUwLDYgKzQ3MCw5IEBACiBzeW4gbWF0Y2ggbXV0dHJjRnVuY3Rpb24JY29udGFpbmVkICJcPGNvbGxhcHNlLVwlKHBhcnRzXHx0aHJlYWRcfGFsbFwpXD4iCiBzeW4gbWF0Y2ggbXV0dHJjRnVuY3Rpb24JY29udGFpbmVkICJcPHZpZXctXCUoYXR0YWNoXHxhdHRhY2htZW50c1x8ZmlsZVx8bWFpbGNhcFx8bmFtZVx8dGV4dFwpXD4iCiBzeW4gbWF0Y2ggbXV0dHJjRnVuY3Rpb24JY29udGFpbmVkICJcPFwlKGJhY2tzcGFjZVx8YmFja3dhcmQtY2hhclx8Ym9sXHxib3R0b21cfGJvdHRvbS1wYWdlXHxidWZmeS1jeWNsZVx8Y2xlYXItZmxhZ1x8Y29tcGxldGVcJSgtcXVlcnlcKVw/XHxjb3B5LWZpbGVcfGNyZWF0ZS1hbGlhc1x8ZGV0YWNoLWZpbGVcfGVvbFx8ZXhpdFx8ZXh0cmFjdC1rZXlzXHxcJShpbWFwLVwpXD9mZXRjaC1tYWlsXHxmb3JnZXQtcGFzc3BocmFzZVx8Zm9yd2FyZC1jaGFyXHxncm91cC1yZXBseVx8aGVscFx8aXNwZWxsXHxqdW1wXHxsaW1pdFx8bGlzdC1yZXBseVx8bWFpbFx8bWFpbC1rZXlcfG1hcmstYXMtbmV3XHxtaWRkbGUtcGFnZVx8bmV3LW1pbWVcfG5vb3BcfHBncC1tZW51XHxxdWVyeVx8cXVlcnktYXBwZW5kXHxxdWl0XHxxdW90ZS1jaGFyXHxyZWFkLXN1YnRocmVhZFx8cmVkcmF3LXNjcmVlblx8cmVmcmVzaFx8cmVuYW1lLWZpbGVcfHJlcGx5XHxzZWxlY3QtbmV3XHxzZXQtZmxhZ1x8c2hlbGwtZXNjYXBlXHxza2lwLXF1b3RlZFx8c29ydFx8c3Vic2NyaWJlXHxzeW5jLW1haWxib3hcfHRvcFx8dG9wLXBhZ2VcfHRyYW5zcG9zZS1jaGFyc1x8dW5zdWJzY3JpYmVcfHVudGFnLXBhdHRlcm5cfHZlcmlmeS1rZXlcfHdoYXQta2V5XHx3cml0ZS1mY2NcKVw+IgoraWYgdXNlX211dHRfc2lkZWJhciA9PSAxCisgICAgc3luIG1hdGNoIG11dHRyY0Z1bmN0aW9uICAgIGNvbnRhaW5lZCAiXDxzaWRlYmFyLVwlKHByZXZcfG5leHRcfG9wZW5cfHNjcm9sbC11cFx8c2Nyb2xsLWRvd25cKSIKK2VuZGlmCiBzeW4gbWF0Y2ggbXV0dHJjQWN0aW9uCQljb250YWluZWQgIjxbXj5dXHstfT4iIGNvbnRhaW5zPW11dHRyY0JhZEFjdGlvbixtdXR0cmNGdW5jdGlvbixtdXR0cmNLZXlOYW1lCiAKIHN5biBrZXl3b3JkIG11dHRyY0NvbW1hbmQJc2V0ICAgICBza2lwd2hpdGUgbmV4dGdyb3VwPW11dHRyY1ZQcmVmaXgsbXV0dHJjVmFyQm9vbCxtdXR0cmNWYXJRdWFkLG11dHRyY1Zhck51bSxtdXR0cmNWYXJTdHIKQEAgLTUyMyw3ICs1NDYsNyBAQAogc3luIG1hdGNoIG11dHRyY1NpbXBsZVBhdCBjb250YWluZWQgIiFcP1xeXD9bfl1bZHJdXHMqXCUoXCUoLVw/WzAtOV1cezEsMn1cJSgvWzAtOV1cezEsMn1cJSgvWzAtOV1cezJ9XCUoWzAtOV1cezJ9XClcP1wpXD9cKVw/XCUoWysqLV1bMC05XVwrW3ltd2RdXCkqXClcfFwlKFwlKFswLTldXHsxLDJ9XCUoL1swLTldXHsxLDJ9XCUoL1swLTldXHsyfVwlKFswLTldXHsyfVwpXD9cKVw/XClcP1wlKFsrKi1dWzAtOV1cK1t5bXdkXVwpKlwpLVwlKFswLTldXHsxLDJ9XCUoL1swLTldXHsxLDJ9XCUoL1swLTldXHsyfVwlKFswLTldXHsyfVwpXD9cKVw/XClcP1wlKFsrKi1dWzAtOV1cK1t5bXdkXVwpXD9cKVw/XClcfFwlKFs8Pj1dWzAtOV1cK1t5bXdkXVwpXHxcJShgW15gXVwrYFwpXHxcJShcJFthLXpBLVowLTlfLV1cK1wpXCkiIGNvbnRhaW5zPW11dHRyY1NoZWxsU3RyaW5nLG11dHRyY1ZhcmlhYmxlCiBzeW4gbWF0Y2ggbXV0dHJjU2ltcGxlUGF0IGNvbnRhaW5lZCAiIVw/XF5cP1t+XVtiQmNDZWZoSGlMc3R4eV1ccyoiIG5leHRncm91cD1tdXR0cmNTaW1wbGVQYXRSWENvbnRhaW5lcgogc3luIG1hdGNoIG11dHRyY1NpbXBsZVBhdCBjb250YWluZWQgIiFcP1xeXD9bJV1bYkJjQ2VmaEhpTHN0eHldXHMqIiBuZXh0Z3JvdXA9bXV0dHJjU2ltcGxlUGF0U3RyaW5nCi1zeW4gbWF0Y2ggbXV0dHJjU2ltcGxlUGF0IGNvbnRhaW5lZCAiIVw/XF5cP1s9XVtiaF1ccyoiIG5leHRncm91cD1tdXR0cmNTaW1wbGVQYXRTdHJpbmcKK3N5biBtYXRjaCBtdXR0cmNTaW1wbGVQYXQgY29udGFpbmVkICIhXD9cXlw/Wz1dW2JjQ2VmaEhpTHN0eHldXHMqIiBuZXh0Z3JvdXA9bXV0dHJjU2ltcGxlUGF0U3RyaW5nCiBzeW4gcmVnaW9uIG11dHRyY1NpbXBsZVBhdCBjb250YWluZWQga2VlcGVuZCBzdGFydD0rIVw/XF5cP1t+XSgrIGVuZD0rKSsgY29udGFpbnM9bXV0dHJjU2ltcGxlUGF0CiAic3luIG1hdGNoIG11dHRyY1NpbXBsZVBhdCBjb250YWluZWQgLydbXn49JV1bXiddKi8gY29udGFpbnM9bXV0dHJjUlhTdHJpbmcKIHN5biByZWdpb24gbXV0dHJjU2ltcGxlUGF0U3RyaW5nIGNvbnRhaW5lZCBrZWVwZW5kIHN0YXJ0PSsiKyBlbmQ9KyIrIHNraXA9K1xcIisKQEAgLTU1Nyw5ICs1ODAsMTIgQEAKIHN5biByZWdpb24gbXV0dHJjQ29sb3JSWFBhdAljb250YWluZWQgc3RhcnQ9K1xzKiIrIHNraXA9K1xcIisgZW5kPSsiXHMqKyBrZWVwZW5kIHNraXB3aGl0ZSBjb250YWlucz1tdXR0cmNSWFN0cmluZzIgbmV4dGdyb3VwPW11dHRyY0NvbG9yTWF0Y2hDb3VudCxtdXR0cmNDb2xvck1hdGNoQ291bnROTAogc3luIGtleXdvcmQgbXV0dHJjQ29sb3JGaWVsZAljb250YWluZWQgYXR0YWNobWVudCBib2R5IGJvbGQgZXJyb3IgaGRyZGVmYXVsdCBoZWFkZXIgaW5kZXggaW5kaWNhdG9yIG1hcmtlcnMgbWVzc2FnZSBub3JtYWwgcXVvdGVkIHNlYXJjaCBzaWduYXR1cmUgc3RhdHVzIHRpbGRlIHRyZWUgdW5kZXJsaW5lCiBzeW4gbWF0Y2ggICBtdXR0cmNDb2xvckZpZWxkCWNvbnRhaW5lZCAiXDxxdW90ZWRcZFw9XD4iCitpZiB1c2VfbXV0dF9zaWRlYmFyID09IDEKKyAgICBzeW4ga2V5d29yZCBtdXR0cmNDb2xvckZpZWxkIGNvbnRhaW5lZCBzaWRlYmFyX25ldworZW5kaWYKIHN5biBrZXl3b3JkIG11dHRyY0NvbG9yCWNvbnRhaW5lZCBibGFjayBibHVlIGN5YW4gZGVmYXVsdCBncmVlbiBtYWdlbnRhIHJlZCB3aGl0ZSB5ZWxsb3cKIHN5biBrZXl3b3JkIG11dHRyY0NvbG9yCWNvbnRhaW5lZCBicmlnaHRibGFjayBicmlnaHRibHVlIGJyaWdodGN5YW4gYnJpZ2h0ZGVmYXVsdCBicmlnaHRncmVlbiBicmlnaHRtYWdlbnRhIGJyaWdodHJlZCBicmlnaHR3aGl0ZSBicmlnaHR5ZWxsb3cKLXN5biBtYXRjaCAgIG11dHRyY0NvbG9yCWNvbnRhaW5lZCAiXDxcJShicmlnaHRcKVw9Y29sb3JcZFx7MSwyfVw+Igorc3luIG1hdGNoICAgbXV0dHJjQ29sb3IJY29udGFpbmVkICJcPFwlKGJyaWdodFwpXD1jb2xvclxkXHsxLDN9XD4iCiAiIE5vdyBmb3IgdGhlIHN0cnVjdHVyZSBvZiB0aGUgY29sb3IgbGluZQogc3luIG1hdGNoIG11dHRyY0NvbG9yUlhOTAljb250YWluZWQgc2tpcG5sICJccypcXCQiIG5leHRncm91cD1tdXR0cmNDb2xvclJYUGF0LG11dHRyY0NvbG9yUlhOTAogc3luIG1hdGNoIG11dHRyY0NvbG9yQkcgCWNvbnRhaW5lZCAvXHMqWyRdXD9cd1wrLyBjb250YWlucz1tdXR0cmNDb2xvcixtdXR0cmNWYXJpYWJsZSxtdXR0cmNVbkhpZ2hsaWdodFNwYWNlIG5leHRncm91cD1tdXR0cmNDb2xvclJYUGF0LG11dHRyY0NvbG9yUlhOTApAQCAtNjQxLDcgKzY2Nyw3IEBACiAgIEhpTGluayBtdXR0cmNTZXRRdWFkQXNzaWdubWVudAlCb29sZWFuCiAgIEhpTGluayBtdXR0cmNTZXRTdHJBc3NpZ25tZW50CVN0cmluZwogICBIaUxpbmsgbXV0dHJjRW1haWwJCVNwZWNpYWwKLSAgSGlMaW5rIG11dHRyY1ZhcmlhYmxlCQlTcGVjaWFsCisgIEhpTGluayBtdXR0cmNWYXJpYWJsZUlubmVyCVNwZWNpYWwKICAgSGlMaW5rIG11dHRyY0VzY2FwZWRWYXJpYWJsZQlTdHJpbmcKICAgSGlMaW5rIG11dHRyY0hlYWRlcgkJVHlwZQogICBIaUxpbmsgbXV0dHJjS2V5U3BlY2lhbAlTcGVjaWFsQ2hhcgpAQCAtNzY1LDQgKzc5MSw2IEBACiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm11dHRyYyIKIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCiAiRU9GCXZpbTogdHM9OCBub2V0IHR3PTEwMCBzdz04IHN0cz0wIGZ0PXZpbQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbnJvZmYudmltIGIvcnVudGltZS9zeW50YXgvbnJvZmYudmltCmluZGV4IDZmMmExMzEuLjI4MGJhOWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L25yb2ZmLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ucm9mZi52aW0KQEAgLTEsOCArMSw4IEBACiAiIFZJTSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJbnJvZmYvZ3JvZmYKLSIgTWFpbnRhaW5lcjoJQWxlamFuZHJvIEzzcGV6LVZhbGVuY2lhIDxkcmFkdWxAeWFob28uY29tPgotIiBVUkw6CQlodHRwOi8vZHJhZHVsLnRyaXBvZC5jb20vdmltCi0iIExhc3QgQ2hhbmdlOgkyMDA2IEFwciAxNAorIiBNYWludGFpbmVyOglQZWRybyBBbGVqYW5kcm8gTPNwZXotVmFsZW5jaWEgPHBhbG9wZXp2QGdtYWlsLmNvbT4KKyIgVVJMOgkJaHR0cDovL3ZvcmJvdGUud29yZHByZXNzLmNvbS8KKyIgTGFzdCBDaGFuZ2U6CTIwMTIgRmViIDIKICIKICIge3t7MSBBY2tub3dsZWRnZW1lbnRzCiAiCkBAIC0zMSw2ICszMSw5IEBACiAJZmluaXNoCiBlbmRpZgogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKICIKICIge3t7MSBwbHVnaW4gc2V0dGluZ3MuLi4KICIKQEAgLTI1Niw0ICsyNTksNiBAQAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJucm9mZiIKIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCiAiIHZpbTYwMDogc2V0IGZkbT1tYXJrZXIgZmRsPTI6CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9vcGwudmltIGIvcnVudGltZS9zeW50YXgvb3BsLnZpbQppbmRleCBhYTNjYjllLi4xYjA3ZTM1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9vcGwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L29wbC52aW0KQEAgLTEsNiArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJT1BMCiAiIE1haW50YWluZXI6CUN6byA8T2xpdmllci5TaXJvbEBsaXA2LmZyPgorIiBMYXN0IENoYW5nZToJMjAxMiBGZWIgMDMgYnkgVGhpbG8gU2l4CiAiICRJZDogb3BsLnZpbSx2IDEuMSAyMDA0LzA2LzEzIDE3OjM0OjExIHZpbWJvc3MgRXhwICQKIAogIiBPcGVuIFBzaW9uIExhbmd1YWdlLi4uIChFUE9DMTYvRVBPQzMyKQpAQCAtMTMsNiArMTQsOSBAQAogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBjYXNlIGlzIG5vdCBzaWduaWZpY2FudAogc3luIGNhc2UgaWdub3JlCiAKQEAgLTkzLDQgKzk3LDYgQEAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAib3BsIgogCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ycGwudmltIGIvcnVudGltZS9zeW50YXgvcnBsLnZpbQppbmRleCBiYzUwNDc1Li42NDU3ODAzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ycGwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JwbC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJUlBMLzIKICIgVmVyc2lvbjoJMC4xNS4xNSBhZ2FpbnN0IFJQTC8yIHZlcnNpb24gNC4wMHByZTdpCi0iIExhc3QgQ2hhbmdlOgkyMDAzIGF1Z3VzdCAyNAorIiBMYXN0IENoYW5nZToJMjAxMiBGZWIgMDMgYnkgVGhpbG8gU2l4CiAiIE1haW50YWluZXI6CUpv62wgQkVSVFJBTkQgPHJwbDJAZnJlZS5mcj4KICIgVVJMOgkJaHR0cDovL3d3dy5tYWthbGlzLmZyL35iZXJ0cmFuZC9ycGwyL2Rvd25sb2FkL3ZpbS9pbmRlbnQvcnBsLnZpbQogIiBDcmVkaXRzOglOb3RoaW5nCkBAIC0xNCw2ICsxNCw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiAiIEtleXdvcmQgY2hhcmFjdGVycyAobm90IHVzZWQpCiAiIHNldCBpc2tleXdvcmQ9MzMtMTI3CiAKQEAgLTQ4OCw0ICs0OTEsNiBAQAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJycGwiCiAKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQogIiB2aW06IHRzPTggdHc9MTMyCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zZC52aW0gYi9ydW50aW1lL3N5bnRheC9zZC52aW0KaW5kZXggYmIyMDFjYS4uN2ZhMGUwNCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2QudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NkLnZpbQpAQCAtMyw3ICszLDcgQEAKICIgTGljZW5zZTogVGhpcyBmaWxlIGNhbiBiZSByZWRpc3RyaWJ1ZWQgYW5kL29yIG1vZGlmaWVkIHVuZGVyIHRoZSBzYW1lIHRlcm1zCiAiICAgYXMgVmltIGl0c2VsZi4KICIgVVJMOiBodHRwOi8vbmV0c3R1ZGVudC5wb2xpdG8uaXQvdmltX3N5bnRheC8KLSIgTGFzdCBDaGFuZ2U6IDIwMDYtMDktMjcKKyIgTGFzdCBDaGFuZ2U6IDIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogCiBpZiB2ZXJzaW9uIDwgNjAwCiAgICAgICAgIHN5bnRheCBjbGVhcgpAQCAtMTEsNiArMTEsOSBAQAogICAgICAgICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBBbHdheXMgaWdub3JlIGNhc2UKIHN5biBjYXNlIGlnbm9yZQogCkBAIC0yNCwxMyArMjcsMTMgQEAKIHN5biBtYXRjaCBzZElQIGNvbnRhaW5lZCAvXCUoXGRcezEsNH1cLlwpXHszfVxkXHsxLDR9LyBjb250YWlucz1Ac2RJUENsdXN0ZXIKIAogIiBTdGF0ZW1lbnRzCi1zeW4ga2V5d29yZCBzZFN0YXRlbWVudCBBR0dSRUdBVEUgQVVESU9fQ0hBTk5FTFMgCitzeW4ga2V5d29yZCBzZFN0YXRlbWVudCBBR0dSRUdBVEUgQVVESU9fQ0hBTk5FTFMKIHN5biBrZXl3b3JkIHNkU3RhdGVtZW50IEJZVEVfUEVSX1BDS1QgQklUX1BFUl9TQU1QTEUgQklUUkFURQogc3luIGtleXdvcmQgc2RTdGF0ZW1lbnQgQ0xPQ0tfUkFURSBDT0RJTkdfVFlQRSBDUkVBVE9SCiBzeW4gbWF0Y2ggc2RTdGF0ZW1lbnQgL15ccypDT0RJTkdfVFlQRVw+LyBuZXh0Z3JvdXA9c2RDb2Rpbmcgc2tpcHdoaXRlCiBzeW4gbWF0Y2ggc2RTdGF0ZW1lbnQgL15ccypFTkNPRElOR19OQU1FXD4vIG5leHRncm91cD1zZEVuY29kaW5nIHNraXB3aGl0ZQogc3luIGtleXdvcmQgc2RTdGF0ZW1lbnQgRklMRV9OQU1FIEZSQU1FX0xFTiBGUkFNRV9SQVRFIEZPUkNFX0ZSQU1FX1JBVEUKLXN5biBrZXl3b3JkIHNkU3RhdGVtZW50IExJQ0VOU0UgCitzeW4ga2V5d29yZCBzZFN0YXRlbWVudCBMSUNFTlNFCiBzeW4gbWF0Y2ggc2RTdGF0ZW1lbnQgL15ccypNRURJQV9TT1VSQ0VcPi8gbmV4dGdyb3VwPXNkU291cmNlIHNraXB3aGl0ZQogc3luIG1hdGNoIHNkU3RhdGVtZW50IC9eXHMqTVVMVElDQVNUXD4vIG5leHRncm91cD1zZElQIHNraXB3aGl0ZQogc3luIGtleXdvcmQgc2RTdGF0ZW1lbnQgUEFZTE9BRF9UWVBFIFBLVF9MRU4gUFJJT1JJVFkKQEAgLTczLDMgKzc2LDYgQEAKIGVuZGlmCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNkIgorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NlbmRwci52aW0gYi9ydW50aW1lL3N5bnRheC9zZW5kcHIudmltCmluZGV4IDI4YTI2ZTYuLjZjZjkzOTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NlbmRwci52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2VuZHByLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiBGcmVlQlNEIHNlbmQtcHIgZmlsZQogIiBNYWludGFpbmVyOiBIZW5kcmlrIFNjaG9seiA8aGVuZHJpa0BzY2hvbHoubmV0PgotIiBMYXN0IENoYW5nZTogMjAwMiBNYXIgMjEKKyIgTGFzdCBDaGFuZ2U6IDIwMTIgRmViIDAzCiAiCiAiIGh0dHA6Ly9yYWlzZG9yZi5uZXQvZmlsZXMvbWlzYy9zZW5kLXByLnZpbQogCkBAIC0xMyw2ICsxMyw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBzeW4gbWF0Y2ggc2VuZHByQ29tbWVudCAvXlNFTkQtUFI6LwogIiBlbWFpbCBhZGRyZXNzCiBzeW4gbWF0Y2ggc2VuZHByVHlwZSAvPFthLXpBLVowLTlcLVxfXC5dKkBbYS16QS1aMC05XC1cX1wuXSo+LwpAQCAtMzAsMyArMzMsNiBAQAogaGkgZGVmIGxpbmsgc2VuZHByVHlwZSAgICAgIFR5cGUKIGhpIGRlZiBsaW5rIHNlbmRwclN0cmluZyAgICBTdHJpbmcKIGhpIGRlZiBsaW5rIHNlbmRwckxhYmVsICAgICBMYWJlbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NtaWwudmltIGIvcnVudGltZS9zeW50YXgvc21pbC52aW0KaW5kZXggMGI1M2Q4ZS4uNmI1YTAwMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc21pbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc21pbC52aW0KQEAgLTIsNyArMiw3IEBACiAiIExhbmd1YWdlOglTTUlMIChTeW5jaHJvbml6ZWQgTXVsdGltZWRpYSBJbnRlZ3JhdGlvbiBMYW5ndWFnZSkKICIgTWFpbnRhaW5lcjoJSGVydmUgRm91Y2hlciA8SGVydmUuRm91Y2hlckBoZWxpby5vcmc+CiAiIFVSTDoJCWh0dHA6Ly93d3cuaGVsaW8ub3JnL3ZpbS9zeW50YXgvc21pbC52aW0KLSIgTGFzdCBDaGFuZ2U6CTIwMDMgTWF5IDExCisiIExhc3QgQ2hhbmdlOgkyMDEyIEZlYiAwMyBieSBUaGlsbyBTaXgKIAogIiBUbyBsZWFybiBtb3JlIGFib3V0IFNNSUwsIHBsZWFzZSByZWZlciB0byBodHRwOi8vd3d3LnczLm9yZy9BdWRpb1ZpZGVvLwogIiBhbmQgdG8gaHR0cDovL3d3dy5oZWxpby5vcmcvcHJvZHVjdHMvc21pbC90dXRvcmlhbC8KQEAgLTE1LDYgKzE1LDkgQEAKICAgZmluaXNoCiBlbmRpZgogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKICIgU01JTCBpcyBjYXNlIHNlbnNpdGl2ZQogc3luIGNhc2UgbWF0Y2gKIApAQCAtMTUxLDQgKzE1NCw2IEBACiAgIHVubGV0IG1haW5fc3ludGF4CiBlbmRpZgogCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbm5zcGF0LnZpbSBiL3J1bnRpbWUvc3ludGF4L3NubnNwYXQudmltCmluZGV4IDNjMDdmYWQuLjViZmE0OGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NubnNwYXQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NubnNwYXQudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CVNOTlMgcGF0dGVybiBmaWxlCiAiIE1haW50YWluZXI6CURhdmlkZSBBbGJlcmFuaSA8YWxiZXJhbmlkQGJpZ2Zvb3QuY29tPgotIiBMYXN0IENoYW5nZToJMjggQXByIDIwMDEKKyIgTGFzdCBDaGFuZ2U6CTIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogIiBWZXJzaW9uOgkwLjIKICIgVVJMOgkJaHR0cDovL2RpZ2lsYW5kZXIuaW9sLml0L2FsYmVyYW5pZC92aW0vc3ludGF4L3NubnNwYXQudmltCiAiCkBAIC0xNCw2ICsxNCw4IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQogCiAiIGFueXRoaW5nIHRoYXQgaXNuJ3QgcGFydCBvZiB0aGUgaGVhZGVyLCBhIGNvbW1lbnQgb3IgYSBudW1iZXIKICIgaXMgd3JvbmcKQEAgLTY1LDQgKzY3LDYgQEAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic25uc3BhdCIKIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCiAiIHZpbTogdHM9OCBzdz0yCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcHVwLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NwdXAudmltCmluZGV4IGFmNTc3MzcuLjA3ZTk3MDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NwdXAudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NwdXAudmltCkBAIC0xLDggKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICBTcGVlZHVwLCBwbGFudCBzaW11bGF0b3IgZnJvbSBBc3BlblRlY2gKICIgTWFpbnRhaW5lcjogICBTdGVmYW4uU2Nod2FyemVyIDxzLnNjaHdhcnplckBuZGgubmV0PgotIiBVUkw6CQkJaHR0cDovL3d3dy5uZGgubmV0L2hvbWUvc3NjaHdhcnplci9kb3dubG9hZC9zcHVwLnZpbQotIiBMYXN0IENoYW5nZTogIDIwMDMgTWF5IDExCisiIFVSTDoJCWh0dHA6Ly93d3cubmRoLm5ldC9ob21lL3NzY2h3YXJ6ZXIvZG93bmxvYWQvc3B1cC52aW0KKyIgTGFzdCBDaGFuZ2U6ICAyMDEyIEZlYiAwMyBieSBUaGlsbyBTaXgKICIgRmlsZW5hbWU6ICAgICBzcHVwLnZpbQogCiAiIEJ1Z3MKQEAgLTI1LDYgKzI1LDkgQEAKICAgICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBkb24ndCBoaWdodGxpZ2h0IHNldmVyYWwga2V5d29yZHMgbGlrZSBzdWJzZWN0aW9ucwogImxldCBzdHJpY3Rfc3Vic2VjdGlvbnMgPSAxCiAKQEAgLTQzLDcgKzQ2LDcgQEAKIAogIiBTcGVlZHVwIFNFQ1RJT04gcmVnaW9ucwogc3luIGNhc2UgaWdub3JlCi1zeW4gcmVnaW9uIHNwdXBDZGkJCSAgbWF0Y2hncm91cD1zcHVwU2VjdGlvbiBzdGFydD0iXkNESSIJCSBlbmQ9Il5cKlwqXCpcKiIgY29udGFpbnM9c3B1cENkaVN1YnMsQHNwdXBPcmRpbmFyeQorc3luIHJlZ2lvbiBzcHVwQ2RpCSAgbWF0Y2hncm91cD1zcHVwU2VjdGlvbiBzdGFydD0iXkNESSIJICAgICBlbmQ9Il5cKlwqXCpcKiIgY29udGFpbnM9c3B1cENkaVN1YnMsQHNwdXBPcmRpbmFyeQogc3luIHJlZ2lvbiBzcHVwQ29uZGl0aW9ucyBtYXRjaGdyb3VwPXNwdXBTZWN0aW9uIHN0YXJ0PSJeQ09ORElUSU9OUyIgZW5kPSJeXCpcKlwqXCoiIGNvbnRhaW5zPXNwdXBDb25kaXRpb25zU3VicyxAc3B1cE9yZGluYXJ5LHNwdXBDb25kaXRpb25hbCxzcHVwT3BlcmF0b3Isc3B1cENvZGUKIHN5biByZWdpb24gc3B1cERlY2xhcmUgICAgbWF0Y2hncm91cD1zcHVwU2VjdGlvbiBzdGFydD0iXkRFQ0xBUkUiICAgIGVuZD0iXlwqXCpcKlwqIiBjb250YWlucz1zcHVwRGVjbGFyZVN1YnMsQHNwdXBPcmRpbmFyeSxzcHVwVHlwZXMsc3B1cENvZGUKIHN5biByZWdpb24gc3B1cEVzdGltYXRpb24gbWF0Y2hncm91cD1zcHVwU2VjdGlvbiBzdGFydD0iXkVTVElNQVRJT04iIGVuZD0iXlwqXCpcKlwqIiBjb250YWlucz1zcHVwRXN0aW1hdGlvblN1YnMsQHNwdXBPcmRpbmFyeQpAQCAtNjMsNyArNjYsNyBAQAogc3luIHJlZ2lvbiBzcHVwVW5pdCAgICAgICBtYXRjaGdyb3VwPXNwdXBTZWN0aW9uIHN0YXJ0PSJeVU5JVCIgICAgICAgZW5kPSJeXCpcKlwqXCoiIGNvbnRhaW5zPXNwdXBVbml0U3VicyxAc3B1cE9yZGluYXJ5CiAKICIgU3Vic2VjdGlvbnMKLXN5biBrZXl3b3JkIHNwdXBDZGlTdWJzCQkgICBJTlBVVCBGUkVFIE9VVFBVVCBMSU5FQVJUSU1FIE1JTk5PTlpFUk8gQ0FMQ1VMQVRFIEZJTEVTIFNDQUxJTkcgY29udGFpbmVkCitzeW4ga2V5d29yZCBzcHVwQ2RpU3VicwkgICAgICAgSU5QVVQgRlJFRSBPVVRQVVQgTElORUFSVElNRSBNSU5OT05aRVJPIENBTENVTEFURSBGSUxFUyBTQ0FMSU5HIGNvbnRhaW5lZAogc3luIGtleXdvcmQgc3B1cERlY2xhcmVTdWJzICAgIFRZUEUgU1RSRUFNIGNvbnRhaW5lZAogc3luIGtleXdvcmQgc3B1cEVzdGltYXRpb25TdWJzIEVTVElNQVRFIFNTRVhQIERZTkVYUCBSRVNVTFQgY29udGFpbmVkCiBzeW4ga2V5d29yZCBzcHVwRXh0ZXJuYWxTdWJzICAgVFJBTlNNSVQgUkVDRUlWRSBjb250YWluZWQKQEAgLTE4Myw3ICsxODYsNyBAQAogc3luIHN5bmMgbWF4bGluZXM9NTAwCiAKIHN5biBzeW5jIG1hdGNoIHNwdXBTeW5jT3BlcmF0aW9uICBncm91cGhlcmUgc3B1cE9wZXJhdGlvbiAgIl5PUEVSQVRJT04iCi1zeW4gc3luYyBtYXRjaCBzcHVwU3luY0NkaQkJICBncm91cGhlcmUgc3B1cENkaQkJICAgIl5DREkiCitzeW4gc3luYyBtYXRjaCBzcHVwU3luY0NkaQkgIGdyb3VwaGVyZSBzcHVwQ2RpCSAgICJeQ0RJIgogc3luIHN5bmMgbWF0Y2ggc3B1cFN5bmNDb25kaXRpb25zIGdyb3VwaGVyZSBzcHVwQ29uZGl0aW9ucyAiXkNPTkRJVElPTlMiCiBzeW4gc3luYyBtYXRjaCBzcHVwU3luY0RlY2xhcmUgICAgZ3JvdXBoZXJlIHNwdXBEZWNsYXJlICAgICJeREVDTEFSRSIKIHN5biBzeW5jIG1hdGNoIHNwdXBTeW5jRXN0aW1hdGlvbiBncm91cGhlcmUgc3B1cEVzdGltYXRpb24gIl5FU1RJTUFUSU9OIgpAQCAtMjA3LDcxICsyMTAsNzMgQEAKICIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKIGlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zcHVwX3N5bl9pbml0cyIpCiAgICAgaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX3NwdXBfc3luX2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CisJbGV0IGRpZF9zcHVwX3N5bl9pbml0cyA9IDEKKwljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgorICAgIGVsc2UKKwljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KICAgICBlbmRpZgogCi0JSGlMaW5rIHNwdXBDZGkJCQlzcHVwU2VjdGlvbgotCUhpTGluayBzcHVwQ29uZGl0aW9ucwlzcHVwU2VjdGlvbgotCUhpTGluayBzcHVwRGVjbGFyZQkJc3B1cFNlY3Rpb24KLQlIaUxpbmsgc3B1cEVzdGltYXRpb24Jc3B1cFNlY3Rpb24KLQlIaUxpbmsgc3B1cEV4dGVybmFsCQlzcHVwU2VjdGlvbgotCUhpTGluayBzcHVwRmxvd3NoZWV0CXNwdXBTZWN0aW9uCi0JSGlMaW5rIHNwdXBGdW5jdGlvbgkJc3B1cFNlY3Rpb24KLQlIaUxpbmsgc3B1cEdsb2JhbAkJc3B1cFNlY3Rpb24KLQlIaUxpbmsgc3B1cEhvbW90b3B5CQlzcHVwU2VjdGlvbgotCUhpTGluayBzcHVwTWFjcm8JCXNwdXBTZWN0aW9uCi0JSGlMaW5rIHNwdXBNb2RlbAkJc3B1cFNlY3Rpb24KLQlIaUxpbmsgc3B1cE9wZXJhdGlvbglzcHVwU2VjdGlvbgotCUhpTGluayBzcHVwT3B0aW9ucwkJc3B1cFNlY3Rpb24KLQlIaUxpbmsgc3B1cFByb2NlZHVyZQlzcHVwU2VjdGlvbgotCUhpTGluayBzcHVwUHJvZmlsZXMJCXNwdXBTZWN0aW9uCi0JSGlMaW5rIHNwdXBSZXBvcnQJCXNwdXBTZWN0aW9uCi0JSGlMaW5rIHNwdXBUaXRsZQkJc3B1cENvbnN0YW50ICAiIHRoaXMgaXMgY29ycmVjdCwgdHJ1bHkgOykKLQlIaUxpbmsgc3B1cFVuaXQJCQlzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwQ2RpCSAgICBzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwQ29uZGl0aW9ucyAgIHNwdXBTZWN0aW9uCisgICAgSGlMaW5rIHNwdXBEZWNsYXJlCSAgICBzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwRXN0aW1hdGlvbiAgIHNwdXBTZWN0aW9uCisgICAgSGlMaW5rIHNwdXBFeHRlcm5hbAkgICAgc3B1cFNlY3Rpb24KKyAgICBIaUxpbmsgc3B1cEZsb3dzaGVldCAgICBzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwRnVuY3Rpb24JICAgIHNwdXBTZWN0aW9uCisgICAgSGlMaW5rIHNwdXBHbG9iYWwJICAgIHNwdXBTZWN0aW9uCisgICAgSGlMaW5rIHNwdXBIb21vdG9weQkgICAgc3B1cFNlY3Rpb24KKyAgICBIaUxpbmsgc3B1cE1hY3JvCSAgICBzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwTW9kZWwJICAgIHNwdXBTZWN0aW9uCisgICAgSGlMaW5rIHNwdXBPcGVyYXRpb24gICAgc3B1cFNlY3Rpb24KKyAgICBIaUxpbmsgc3B1cE9wdGlvbnMJICAgIHNwdXBTZWN0aW9uCisgICAgSGlMaW5rIHNwdXBQcm9jZWR1cmUgICAgc3B1cFNlY3Rpb24KKyAgICBIaUxpbmsgc3B1cFByb2ZpbGVzCSAgICBzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwUmVwb3J0CSAgICBzcHVwU2VjdGlvbgorICAgIEhpTGluayBzcHVwVGl0bGUJICAgIHNwdXBDb25zdGFudCAgIiB0aGlzIGlzIGNvcnJlY3QsIHRydWx5IDspCisgICAgSGlMaW5rIHNwdXBVbml0CSAgICBzcHVwU2VjdGlvbgogCi0JSGlMaW5rIHNwdXBDZGlTdWJzCQkgIHNwdXBTdWJzCi0JSGlMaW5rIHNwdXBDb25kaXRpb25zU3VicyBzcHVwU3VicwotCUhpTGluayBzcHVwRGVjbGFyZVN1YnMJICBzcHVwU3VicwotCUhpTGluayBzcHVwRXN0aW1hdGlvblN1YnMgc3B1cFN1YnMKLQlIaUxpbmsgc3B1cEV4dGVybmFsU3VicyAgIHNwdXBTdWJzCi0JSGlMaW5rIHNwdXBGbG93c2hlZXRTdWJzICBzcHVwU3VicwotCUhpTGluayBzcHVwRnVuY3Rpb25TdWJzICAgc3B1cFN1YnMKLQlIaUxpbmsgc3B1cEhvbW90b3B5U3VicyAgIHNwdXBTdWJzCi0JSGlMaW5rIHNwdXBNYWNyb1N1YnMJICBzcHVwU3VicwotCUhpTGluayBzcHVwTW9kZWxTdWJzCSAgc3B1cFN1YnMKLQlIaUxpbmsgc3B1cE9wZXJhdGlvblN1YnMgIHNwdXBTdWJzCi0JSGlMaW5rIHNwdXBPcHRpb25zU3VicwkgIHNwdXBTdWJzCi0JSGlMaW5rIHNwdXBQcm9jZWR1cmVTdWJzICBzcHVwU3VicwotCUhpTGluayBzcHVwUmVwb3J0U3VicwkgIHNwdXBTdWJzCi0JSGlMaW5rIHNwdXBVbml0U3VicwkJICBzcHVwU3VicworICAgIEhpTGluayBzcHVwQ2RpU3VicwkgICAgICBzcHVwU3VicworICAgIEhpTGluayBzcHVwQ29uZGl0aW9uc1N1YnMgc3B1cFN1YnMKKyAgICBIaUxpbmsgc3B1cERlY2xhcmVTdWJzICAgIHNwdXBTdWJzCisgICAgSGlMaW5rIHNwdXBFc3RpbWF0aW9uU3VicyBzcHVwU3VicworICAgIEhpTGluayBzcHVwRXh0ZXJuYWxTdWJzICAgc3B1cFN1YnMKKyAgICBIaUxpbmsgc3B1cEZsb3dzaGVldFN1YnMgIHNwdXBTdWJzCisgICAgSGlMaW5rIHNwdXBGdW5jdGlvblN1YnMgICBzcHVwU3VicworICAgIEhpTGluayBzcHVwSG9tb3RvcHlTdWJzICAgc3B1cFN1YnMKKyAgICBIaUxpbmsgc3B1cE1hY3JvU3VicyAgICAgIHNwdXBTdWJzCisgICAgSGlMaW5rIHNwdXBNb2RlbFN1YnMgICAgICBzcHVwU3VicworICAgIEhpTGluayBzcHVwT3BlcmF0aW9uU3VicyAgc3B1cFN1YnMKKyAgICBIaUxpbmsgc3B1cE9wdGlvbnNTdWJzICAgIHNwdXBTdWJzCisgICAgSGlMaW5rIHNwdXBQcm9jZWR1cmVTdWJzICBzcHVwU3VicworICAgIEhpTGluayBzcHVwUmVwb3J0U3VicyAgICAgc3B1cFN1YnMKKyAgICBIaUxpbmsgc3B1cFVuaXRTdWJzCSAgICAgIHNwdXBTdWJzCiAKLQlIaUxpbmsgc3B1cENvZGUJCQkgICBOb3JtYWwKLQlIaUxpbmsgc3B1cENvbW1lbnQJCSAgIENvbW1lbnQKLQlIaUxpbmsgc3B1cENvbW1lbnQyCQkgICBzcHVwQ29tbWVudAotCUhpTGluayBzcHVwQ29uZGl0aW9uYWwJICAgU3RhdGVtZW50Ci0JSGlMaW5rIHNwdXBDb25zdGFudAkJICAgQ29uc3RhbnQKLQlIaUxpbmsgc3B1cEVycm9yCQkgICBFcnJvcgotCUhpTGluayBzcHVwSGVscAkJCSAgIE5vcm1hbAotCUhpTGluayBzcHVwSWRlbnRpZmllcgkgICBJZGVudGlmaWVyCi0JSGlMaW5rIHNwdXBOdW1iZXIJCSAgIENvbnN0YW50Ci0JSGlMaW5rIHNwdXBPcGVyYXRvcgkJICAgU3BlY2lhbAotCUhpTGluayBzcHVwT3BlbkJyYWNlCSAgIHNwdXBFcnJvcgotCUhpTGluayBzcHVwU2VjdGlvbgkJICAgU3RhdGVtZW50Ci0JSGlMaW5rIHNwdXBTcGVjaWFsCQkgICBzcHVwVGV4dHByb2NHZW5lcmljCi0JSGlMaW5rIHNwdXBTdHJlYW1zCQkgICBUeXBlCi0JSGlMaW5rIHNwdXBTdHJpbmcJCSAgIENvbnN0YW50Ci0JSGlMaW5rIHNwdXBTdWJzCQkJICAgU3RhdGVtZW50Ci0JSGlMaW5rIHNwdXBTeW1ib2wJCSAgIFNwZWNpYWwKLQlIaUxpbmsgc3B1cFRleHRwcm9jRXJyb3IgICBOb3JtYWwKLQlIaUxpbmsgc3B1cFRleHRwcm9jR2VuZXJpYyBQcmVQcm9jCi0JSGlMaW5rIHNwdXBUeXBlcwkJICAgVHlwZQorICAgIEhpTGluayBzcHVwQ29kZQkgICAgICAgTm9ybWFsCisgICAgSGlMaW5rIHNwdXBDb21tZW50CSAgICAgICBDb21tZW50CisgICAgSGlMaW5rIHNwdXBDb21tZW50MgkgICAgICAgc3B1cENvbW1lbnQKKyAgICBIaUxpbmsgc3B1cENvbmRpdGlvbmFsICAgICBTdGF0ZW1lbnQKKyAgICBIaUxpbmsgc3B1cENvbnN0YW50CSAgICAgICBDb25zdGFudAorICAgIEhpTGluayBzcHVwRXJyb3IJICAgICAgIEVycm9yCisgICAgSGlMaW5rIHNwdXBIZWxwCSAgICAgICBOb3JtYWwKKyAgICBIaUxpbmsgc3B1cElkZW50aWZpZXIgICAgICBJZGVudGlmaWVyCisgICAgSGlMaW5rIHNwdXBOdW1iZXIJICAgICAgIENvbnN0YW50CisgICAgSGlMaW5rIHNwdXBPcGVyYXRvcgkgICAgICAgU3BlY2lhbAorICAgIEhpTGluayBzcHVwT3BlbkJyYWNlICAgICAgIHNwdXBFcnJvcgorICAgIEhpTGluayBzcHVwU2VjdGlvbgkgICAgICAgU3RhdGVtZW50CisgICAgSGlMaW5rIHNwdXBTcGVjaWFsCSAgICAgICBzcHVwVGV4dHByb2NHZW5lcmljCisgICAgSGlMaW5rIHNwdXBTdHJlYW1zCSAgICAgICBUeXBlCisgICAgSGlMaW5rIHNwdXBTdHJpbmcJICAgICAgIENvbnN0YW50CisgICAgSGlMaW5rIHNwdXBTdWJzCSAgICAgICBTdGF0ZW1lbnQKKyAgICBIaUxpbmsgc3B1cFN5bWJvbAkgICAgICAgU3BlY2lhbAorICAgIEhpTGluayBzcHVwVGV4dHByb2NFcnJvciAgIE5vcm1hbAorICAgIEhpTGluayBzcHVwVGV4dHByb2NHZW5lcmljIFByZVByb2MKKyAgICBIaUxpbmsgc3B1cFR5cGVzCSAgICAgICBUeXBlCiAKICAgICBkZWxjb21tYW5kIEhpTGluawogZW5kaWYKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3B1cCIKIAotIiB2aW06dHM9NAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCisiIHZpbTp0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcWxhbnl3aGVyZS52aW0gYi9ydW50aW1lL3N5bnRheC9zcWxhbnl3aGVyZS52aW0KaW5kZXggNTdlZDE1OC4uYjBmOTMyMSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3FsYW55d2hlcmUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxbGFueXdoZXJlLnZpbQpAQCAtMSwxMCArMSwxMiBAQAorCiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgU1FMLCBBZGFwdGl2ZSBTZXJ2ZXIgQW55d2hlcmUKLSIgTWFpbnRhaW5lcjogIERhdmlkIEZpc2hidXJuIDxmaXNoYnVybiBhdCBpYW55d2hlcmUgZG90IGNvbT4KLSIgTGFzdCBDaGFuZ2U6IDIwMDkgTWFyIDE1Ci0iIFZlcnNpb246ICAgICAxMS4wLjEKKyIgTWFpbnRhaW5lcjogIERhdmlkIEZpc2hidXJuIDxkZmlzaGJ1cm4gZG90IHZpbSBhdCBnbWFpbCBkb3QgY29tPgorIiBMYXN0IENoYW5nZTogMjAxMiBKYW4gMjMKKyIgVmVyc2lvbjogICAgIDEyLjAuMQogCi0iIERlc2NyaXB0aW9uOiBVcGRhdGVkIHRvIEFkYXB0aXZlIFNlcnZlciBBbnl3aGVyZSAxMS4wLjEKKyIgRGVzY3JpcHRpb246IFVwZGF0ZWQgdG8gQWRhcHRpdmUgU2VydmVyIEFueXdoZXJlIDEyLjAuMSAoaW5jbHVkaW5nIHNwYXRpYWwgZGF0YSkKKyIgICAgICAgICAgICAgIFVwZGF0ZWQgdG8gQWRhcHRpdmUgU2VydmVyIEFueXdoZXJlIDExLjAuMQogIiAgICAgICAgICAgICAgVXBkYXRlZCB0byBBZGFwdGl2ZSBTZXJ2ZXIgQW55d2hlcmUgMTAuMC4xCiAiICAgICAgICAgICAgICBVcGRhdGVkIHRvIEFkYXB0aXZlIFNlcnZlciBBbnl3aGVyZSAgOS4wLjIKICIgICAgICAgICAgICAgIFVwZGF0ZWQgdG8gQWRhcHRpdmUgU2VydmVyIEFueXdoZXJlICA5LjAuMQpAQCAtNjcsNiArNjksOSBAQAogc3luIGtleXdvcmQgc3FsRnVuY3Rpb24JIGNvbm5lY3Rpb25fZXh0ZW5kZWRfcHJvcGVydHkgdGV4dF9oYW5kbGVfdmVjdG9yX21hdGNoCiBzeW4ga2V5d29yZCBzcWxGdW5jdGlvbgkgcmVhZF9jbGllbnRfZmlsZSB3cml0ZV9jbGllbnRfZmlsZQogCisiIDEyLjAuMSBmdW5jdGlvbnMKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBodHRwX3Jlc3BvbnNlX2hlYWRlcgorCiAiIHN0cmluZyBmdW5jdGlvbnMKIHN5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBhc2NpaSBjaGFyIGxlZnQgbHRyaW0gcmVwZWF0CiBzeW4ga2V5d29yZCBzcWxGdW5jdGlvbgkgc3BhY2UgcmlnaHQgcnRyaW0gdHJpbSBsY2FzZSB1Y2FzZQpAQCAtMzU4LDcgKzM2Myw3IEBACiAKICIgaHR0cCBmdW5jdGlvbnMKIHN5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBodHRwX2hlYWRlciBodHRwX3ZhcmlhYmxlCi1zeW4ga2V5d29yZCBzcWxGdW5jdGlvbgkgbmV4dF9odHRwX2hlYWRlciBuZXh0X2h0dHBfdmFyaWFibGUKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBuZXh0X2h0dHBfaGVhZGVyIG5leHRfaHR0cF9yZXNwb25zZV9oZWFkZXIgbmV4dF9odHRwX3ZhcmlhYmxlCiBzeW4ga2V5d29yZCBzcWxGdW5jdGlvbgkgc2Ffc2V0X2h0dHBfaGVhZGVyIHNhX3NldF9odHRwX29wdGlvbgogc3luIGtleXdvcmQgc3FsRnVuY3Rpb24JIHNhX2h0dHBfdmFyaWFibGVfaW5mbyBzYV9odHRwX2hlYWRlcl9pbmZvCiAKQEAgLTM2NiwxMTQgKzM3MSwyMzEgQEAKIHN5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBodHRwX2VuY29kZSBodHRwX2RlY29kZQogc3luIGtleXdvcmQgc3FsRnVuY3Rpb24JIGh0bWxfZW5jb2RlIGh0bWxfZGVjb2RlCiAKKyIgWE1MIGZ1bmN0aW9uIHN1cHBvcnQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBvcGVueG1sIHhtbGVsZW1lbnQgeG1sZm9yZXN0IHhtbGdlbiB4bWxjb25jYXQgeG1sYWdnCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbgkgeG1sYXR0cmlidXRlcworCisiIFNwYXRpYWwgQ29tcGF0aWJpbGl0eSBGdW5jdGlvbnMKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9CZE1Qb2x5RnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9CZE1Qb2x5RnJvbVdLQgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0JkUG9seUZyb21UZXh0CitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfQmRQb2x5RnJvbVdLQgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0NQb2x5RnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9DUG9seUZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9DaXJjdWxhckZyb21UeHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9DaXJjdWxhckZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Db21wb3VuZEZyb21UeHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Db21wb3VuZEZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tQ29sbEZyb21UeHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tQ29sbEZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tRnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tRnJvbVdLQgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0xpbmVGcm9tVGV4dAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0xpbmVGcm9tV0tCCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfTUN1cnZlRnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9NQ3VydmVGcm9tV0tCCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfTUxpbmVGcm9tVGV4dAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX01MaW5lRnJvbVdLQgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX01Qb2ludEZyb21UZXh0CitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfTVBvaW50RnJvbVdLQgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX01Qb2x5RnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9NUG9seUZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9NU3VyZmFjZUZyb21UeHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9NU3VyZmFjZUZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9PcmRlcmluZ0VxdWFscworc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX1BvaW50RnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Qb2ludEZyb21XS0IKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Qb2x5RnJvbVRleHQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Qb2x5RnJvbVdLQgorIiBTcGF0aWFsIFN0cnVjdHVyYWwgTWV0aG9kcworc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0Nvb3JkRGltCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfQ3VydmVOCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfRGltZW5zaW9uCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfRW5kUG9pbnQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9FeHRlcmlvclJpbmcKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tZXRyeU4KK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tZXRyeVR5cGUKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9JbnRlcmlvclJpbmdOCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfSXMzRAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0lzQ2xvc2VkCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfSXNFbXB0eQorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0lzTWVhc3VyZWQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Jc1JpbmcKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Jc1NpbXBsZQorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0lzVmFsaWQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9OdW1DdXJ2ZXMKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9OdW1HZW9tZXRyaWVzCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfTnVtSW50ZXJpb3JSaW5nCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfTnVtUG9pbnRzCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfUG9pbnROCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfU3RhcnRQb2ludAorIlNwYXRpYWwgQ29tcHV0YXRpb24KK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9MZW5ndGgKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9BcmVhCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfQ2VudHJvaWQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9BcmVhCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfQ2VudHJvaWQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Jc1dvcmxkCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfUGVyaW1ldGVyCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfUG9pbnRPblN1cmZhY2UKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9EaXN0YW5jZQorIiBTcGF0aWFsIElucHV0L091dHB1dAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0FzQmluYXJ5CitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfQXNHTUwKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Bc0dlb0pTT04KK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Bc1NWRworc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0FzU1ZHQWdncgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0FzVGV4dAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0FzV0tCCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfQXNXS1QKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Bc1hNTAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0dlb21Gcm9tQmluYXJ5CitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfR2VvbUZyb21TaGFwZQorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0dlb21Gcm9tVGV4dAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0dlb21Gcm9tV0tCCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfR2VvbUZyb21XS1QKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9HZW9tRnJvbVhNTAorIiBTcGF0aWFsIENhc3QgTWV0aG9kcworc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0N1cnZlUG9seVRvUG9seQorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX0N1cnZlVG9MaW5lCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfVG9DaXJjdWxhcgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX1RvQ29tcG91bmQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Ub0N1cnZlCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfVG9DdXJ2ZVBvbHkKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Ub0dlb21Db2xsCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfVG9MaW5lU3RyaW5nCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfVG9NdWx0aUN1cnZlCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfVG9NdWx0aUxpbmUKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Ub011bHRpUG9pbnQKK3N5biBrZXl3b3JkIHNxbEZ1bmN0aW9uICBTVF9Ub011bHRpUG9seWdvbgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX1RvTXVsdGlTdXJmYWNlCitzeW4ga2V5d29yZCBzcWxGdW5jdGlvbiAgU1RfVG9Qb2ludAorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX1RvUG9seWdvbgorc3luIGtleXdvcmQgc3FsRnVuY3Rpb24gIFNUX1RvU3VyZmFjZQorCisKICIga2V5d29yZHMKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGFic29sdXRlIGFjY2VudCBhY3Rpb24gYWN0aXZlIGFkZCBhZGRyZXNzIGFlc19kZWNyeXB0Ci1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBhZnRlciBhZ2dyZWdhdGUgYWxnb3JpdGhtIGFsbG93X2R1cF9yb3cgYWxsb3dlZAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgYWx0ZXIgYW5kIGFuc2lfc3Vic3RyaW5nIGFueSBhcyBhcHBlbmQgYXBwbHkgYXNjIGFzY2lpIGFzZQotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgYXNzaWduIGF0IGF0YW4yIGF0b21pYyBhdHRhY2ggYXR0ZW5kZWQgYXVkaXQgYXV0aG9yaXphdGlvbgorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgYWJzb2x1dGUgYWNjZW50IGFjdGlvbiBhY3RpdmUgYWRkIGFkZHJlc3MgYWRtaW4gYWVzX2RlY3J5cHQKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGFmdGVyIGFnZ3JlZ2F0ZSBhbGdvcml0aG0gYWxsb3dfZHVwX3JvdyBhbGxvdyBhbGxvd2VkIGFsdGVyIAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgYW5kIGFuZ3VsYXIgYW5zaV9zdWJzdHJpbmcgYW55IGFzIGFwcGVuZCBhcHBseSAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGFyYml0ZXIgYXNjIGFzY2lpIGFzZQorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgYXNzaWduIGF0IGF0YW4yIGF0b21pYyBhdHRlbmRlZCAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGF1ZGl0IGF1ZGl0aW5nIGF1dGhvcml6YXRpb24gYXhpcwogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgYXV0b2luY3JlbWVudCBhdXRvc3RvcCBiYXRjaCBiY3AgYmVmb3JlCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBiZXR3ZWVuIGJpdF9hbmQgYml0X2xlbmd0aCBiaXRfb3IgYml0X3N1YnN0ciBiaXRfeG9yCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBibGFuayBibGFua3MgYmxvY2sKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGJvdGggYm90dG9tIHVuYm91bmRlZCBicmVhayBicmVha2VyIGJ1ZmZlcnBvb2wKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGJvdGggYm90dG9tIHVuYm91bmRlZCBicmVha2VyIGJ1ZmZlcnBvb2wKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGJ1aWxkIGJ1bGsgYnkgYnl0ZSBieXRlcyBjYWNoZSBjYWxpYnJhdGUgY2FsaWJyYXRpb24KIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGNhbmNlbCBjYXBhYmlsaXR5IGNhc2NhZGUgY2FzdAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY2F0YWxvZyBjZWlsIGNoYW5nZXMgY2hhciBjaGFyX2NvbnZlcnQgY2hlY2sgY2hlY2tzdW0KK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGNhdGFsb2cgY2VpbCBjaGFuZ2UgY2hhbmdlcyBjaGFyIGNoYXJfY29udmVydCBjaGVjayBjaGVja3N1bQogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY2xhc3MgY2xhc3NlcyBjbGllbnQgY21wCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBjbHVzdGVyIGNsdXN0ZXJlZCBjb2xsYXRpb24KIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGNvbHVtbiBjb2x1bW5zCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBjb21tYW5kIGNvbW1lbnQgY29tbWl0dGVkIGNvbXBhcmlzb25zCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBjb21tYW5kIGNvbW1lbnRzIGNvbW1pdHRlZCBjb21wYXJpc29ucwogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY29tcGF0aWJsZSBjb21wb25lbnQgY29tcHJlc3NlZCBjb21wdXRlIGNvbXB1dGVzCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBjb25jYXQgY29uZmlndXJhdGlvbiBjb25maXJtIGNvbmZsaWN0IGNvbm5lY3Rpb24KIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGNvbnNvbGUgY29uc29saWRhdGUgY29uc29saWRhdGVkCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBjb25zdHJhaW50IGNvbnN0cmFpbnRzIGNvbnRlbnQgY29udGludWUKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGNvbnZlcnQgY29vcmRpbmF0b3IgY29weSBjb3VudCBjb3VudF9zZXRfYml0cworc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY29uc3RyYWludCBjb25zdHJhaW50cyBjb250ZW50IAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY29udmVydCBjb29yZGluYXRlIGNvb3JkaW5hdG9yIGNvcHkgY291bnQgY291bnRfc2V0X2JpdHMKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGNyYyBjcmVhdGV0aW1lIGNyb3NzIGN1YmUgY3VtZV9kaXN0CiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBjdXJyZW50IGN1cnNvciBkYXRhIGRhdGEgZGF0YWJhc2UKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGN1cnJlbnRfdGltZXN0YW1wIGN1cnJlbnRfdXNlcgorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY3VycmVudF90aW1lc3RhbXAgY3VycmVudF91c2VyIGN5Y2xlCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBkYXRhYmFzZXMgZGF0YXR5cGUgZGJhIGRiZmlsZQogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZGJzcGFjZSBkYnNwYWNlcyBkYnNwYWNlbmFtZSBkZWJ1ZyBkZWNvdXBsZWQKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGRlY3J5cHRlZCBkZWZhdWx0IGRlZmF1bHRzIGRlZmF1bHRfZGJzcGFjZSBkZWZlcnJlZAogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZGVmaW5lciBkZWZpbml0aW9uCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBkZWxheSBkZWxldGluZyBkZWxpbWl0ZWQgZGVwZW5kZW5jaWVzIGRlc2MKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGRlc2NyaXB0aW9uIGRldGFjaCBkZXRlcm1pbmlzdGljIGRpcmVjdG9yeQotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZGlzYWJsZSBkaXNhYmxlZCBkaXN0aW5jdCBkbyBkb21haW4gZG93bmxvYWQgZHVwbGljYXRlCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBkc2V0cGFzcyBkdHRtIGR5bmFtaWMgZWFjaCBlZGl0cHJvYyBlamIKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGRlc2NyaXB0aW9uIGRldGVybWluaXN0aWMgZGlyZWN0b3J5CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBkaXNhYmxlIGRpc2FibGVkIGRpc2FsbG93IGRpc3RpbmN0IGRvIGRvbWFpbiBkb3dubG9hZCBkdXBsaWNhdGUKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGRzZXRwYXNzIGR0dG0gZHluYW1pYyBlYWNoIGVhcnRoIGVkaXRwcm9jIGVqYgorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZWxpbWluYXRpb24gZWxsaXBzb2lkCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBlbHNlIGVsc2VpZiBlbXB0eSBlbmFibGUgZW5jYXBzdWxhdGVkIGVuY3J5cHRlZCBlbmQKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGVuY29kaW5nIGVuZGlmIGVuZ2luZSBlbnZpcm9ubWVudCBlcmFzZSBlcnJvciBlc2NhcGUgZXNjYXBlcyBldmVudAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZXZlbnRfcGFyYW1ldGVyIGV2ZXJ5IGV4Y2VwdCBleGNlcHRpb24gZXhjbHVkZSBleGNsdWRlZCBleGNsdXNpdmUgZXhlYworc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZXZlbnRfcGFyYW1ldGVyIGV2ZXJ5IGV4Y2VwdGlvbiBleGNsdWRlIGV4Y2x1ZGVkIGV4Y2x1c2l2ZSBleGVjCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBleGlzdGluZyBleGlzdHMgZXhwYW5kZWQgZXhwaXJ5IGV4cHJlc3MgZXhwcnR5cGUgZXh0ZW5kZWRfcHJvcGVydHkKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGV4dGVybmFsIGV4dGVybmxvZ2luIGZhY3RvciBmYWlsb3ZlciBmYWxzZQotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZmFzdGZpcnN0cm93IGZpZWxkcHJvYyBmaWxlIGZpbGVzIGZpbGxlcgotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZmlsbGZhY3RvciBmaW5pc2ggZmlyc3QgZmlyc3Rfa2V5d29yZCBmaXJzdF92YWx1ZQorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZmFzdGZpcnN0cm93IGZlYXR1cmUgZmllbGRwcm9jIGZpbGUgZmlsZXMgZmlsbGVyCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBmaWxsZmFjdG9yIGZpbmFsIGZpbmlzaCBmaXJzdCBmaXJzdF9rZXl3b3JkIGZpcnN0X3ZhbHVlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBmbGF0dGVuaW5nCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBmb2xsb3dpbmcgZm9yY2UgZm9yZWlnbiBmb3JtYXQgZm9yeG1sIGZvcnhtbF9zZXAgZnAgZnJhbWUKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGZyZWVwYWdlIGZyZW5jaCBmcmVzaCBmdWxsIGZ1bmN0aW9uIGdiIGdldF9iaXQgZ28gZ2xvYmFsCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBmcmVlIGZyZWVwYWdlIGZyZW5jaCBmcmVzaCBmdWxsIGZ1bmN0aW9uIAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgZ2IgZ2VuZXJpYyBnZXRfYml0IGdvIGdsb2JhbCBncmlkCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBncm91cCBoYW5kbGVyIGhhc2ggaGF2aW5nIGhlYWRlciBoZXhhZGVjaW1hbAogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgaGlkZGVuIGhpZ2ggaGlzdG9yeSBoZyBobmcgaG9sZCBob2xkbG9jayBob3N0CiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBob3VycyBodHRwX2JvZHkgaHR0cF9zZXNzaW9uX3RpbWVvdXQgaWQgaWRlbnRpZmllZCBpZGVudGl0eSBpZ25vcmUKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGlnbm9yZV9kdXBfa2V5IGlnbm9yZV9kdXBfcm93IGltbWVkaWF0ZQotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgaW4gaW5hY3RpdiBpbmFjdGl2ZSBpbmFjdGl2aXR5IGluY2x1ZGVkIGluY3JlbWVudGFsCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBpbiBpbmFjdGl2IGluYWN0aXZlIGluYWN0aXZpdHkgaW5jbHVkZWQgaW5jcmVtZW50IGluY3JlbWVudGFsCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBpbmRleCBpbmRleF9lbmFibGVkIGluZGV4X2xwYXJlbiBpbmRleG9ubHkgaW5mbwogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgaW5saW5lIGlubmVyIGlub3V0IGluc2Vuc2l0aXZlIGluc2VydGluZwogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgaW5zdGVhZCBpbnRlZ3JhdGVkCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBpbnRlcm5hbCBpbnRlcnNlY3Rpb24gaW50byBpbnRyb2R1Y2VkIGludm9rZXIgaXEgaXMgaXNvbGF0aW9uCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBpbnRlcm5hbCBpbnRlcnNlY3Rpb24gaW50byBpbnRyb2R1Y2VkIGludmVyc2UgaW52b2tlciAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIGlxIGlzIGlzb2xhdGlvbgogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgamFyIGphdmEgamF2YV9sb2NhdGlvbiBqYXZhX21haW5fdXNlcmlkIGphdmFfdm1fb3B0aW9ucwogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgamNvbm5lY3QgamRrIGpvaW4ga2Iga2V5IGtlZXAga2VyYmVyb3MgbGFuZ3VhZ2UgbGFzdAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbGFzdF9rZXl3b3JkIGxhc3RfdmFsdWUgbGF0ZXJhbCBsZCBsZWZ0IGxlbiBsZiBsbiBsZXZlbCBsaWtlCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBsaW1pdCBsb2NhbCBsb2NhdGlvbiBsb2cKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGxvZ2dpbmcgbG9naW4gbG9nc2NhbiBsb25nIGxvdyBscnUgbWFpbiBtYW51YWwgbWFyawotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbWF0Y2ggbWF0Y2hlZCBtYXRlcmlhbGl6ZWQgbWF4IG1heGltdW0gbWIgbWVtYmVyc2hpcAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbWVyZ2UgbWV0YWRhdGEgbWV0aG9kcyBtaW5pbXVtIG1pbnV0ZXMgbWlycm9yIG1vZGUgbW9kaWZ5IG1vbml0b3IgbW92ZSBtcnUKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIG11bHRpcGxleCBuYW1lIG5hbWVkIG5hdGlvbmFsIG5hdGl2ZSBuYXR1cmFsIG5ldyBuZXh0IG5vCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBub2hvbGRsb2NrIG5vbG9jayBub25jbHVzdGVyZWQgbm9uZSBub3QKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIG5vdGlmeSBudWxsIG51bGxhYmxlX2NvbnN0YW50IG51bGxzIG9iamVjdCBvZW1fc3RyaW5nIG9mIG9mZiBvZmZsaW5lCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBvbGQgb24gb25saW5lIG9ubHkgb3BlbnN0cmluZyBvcHRpbWl6YXRpb24gb3B0aW1pemVyIG9wdGlvbgotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgb3Igb3JkZXIgb3RoZXJzIG91dCBvdXRlciBvdmVyCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBsYXN0X2tleXdvcmQgbGFzdF92YWx1ZSBsYXRlcmFsIGxhdGl0dWRlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBsZCBsZWZ0IGxlbiBsaW5lYXIgbGYgbG4gbGV2ZWwgbGlrZQorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbGltaXQgbG9jYWwgbG9jYXRpb24gbG9nIAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbG9nZ2luZyBsb2dpY2FsIGxvZ2luIGxvZ3NjYW4gbG9uZyBsb25naXR1ZGUgbG93IGxydSBscworc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbWFpbiBtYWpvciBtYW51YWwgbWFyaworc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbWF0Y2ggbWF0Y2hlZCBtYXRlcmlhbGl6ZWQgbWF4IG1heHZhbHVlIG1heGltdW0gbWIgbWVhc3VyZSBtZW1iZXJzaGlwCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBtZXJnZSBtZXRhZGF0YSBtZXRob2RzIG1pbmltdW0gbWlub3IgbWludXRlcyBtaW52YWx1ZSBtaXJyb3IgCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBtb2RlIG1vZGlmeSBtb25pdG9yIG1vdmUgbXJ1IG11bHRpcGxleCAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIG5hbWUgbmFtZWQgbmFtZXNwYWNlcyBuYXRpb25hbCBuYXRpdmUgbmF0dXJhbCBuZXcgbmV4dCBuZXh0dmFsIAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbmdyYW0gbm8gbm9ob2xkbG9jayBub2xvY2sgbm9uY2x1c3RlcmVkIG5vbmUgbm9ybWFsIG5vdAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgbm90aWZ5IG51bGwgbnVsbGFibGVfY29uc3RhbnQgbnVsbHMgCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBvYmplY3Qgb2VtX3N0cmluZyBvZiBvZmYgb2ZmbGluZSBvZmZzZXQgb2xhcAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgb2xkIG9uIG9ubGluZSBvbmx5IG9wZW5zdHJpbmcgb3BlcmF0b3IKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIG9wdGltaXphdGlvbiBvcHRpbWl6ZXIgb3B0aW9uCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBvciBvcmRlciBvcmdhbml6YXRpb24gb3RoZXJzIG91dCBvdXRlciBvdmVyCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBwYWNrYWdlIHBhY2tldHNpemUgcGFkZGluZyBwYWdlIHBhZ2VzCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBwYWdsb2NrIHBhcmFsbGVsIHBhcnQgcGFydGlhbCBwYXJ0aXRpb24gcGFydGl0aW9ucyBwYXJ0bmVyIHBhc3N3b3JkIHBhdGgKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHBjdGZyZWUgcGxhbiBwb2xpY3kgcG9wdWxhdGUgcG9ydCBwb3N0ZmlsdGVyIHByZWNlZGluZyBwcmVjaXNpb24KLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHByZWZldGNoIHByZWZpbHRlciBwcmVmaXggcHJlc2VydmUgcHJldmlldyBwcmltYXJ5Ci1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBwcmlvciBwcmlvcml0eSBwcmlxdHkgcHJpdmF0ZSBwcml2aWxlZ2VzIHByb2NlZHVyZSBwcm9maWxlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBwYWdsb2NrIHBhcmFsbGVsIHBhcmFtZXRlciBwYXJlbnQgcGFydCAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHBhcnRpdGlvbiBwYXJ0aXRpb25zIHBhcnRuZXIgcGFzc3dvcmQgcGF0aCBwY3RmcmVlIAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcGVybXMgcGxhbiBwbGFuYXIgcG9saWN5IHBvbHlnb24gcG9wdWxhdGUgcG9ydCBwb3N0ZmlsdGVyIHByZWNlZGluZyAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHByZWNpc2lvbnByZWZldGNoIHByZWZpbHRlciBwcmVmaXggcHJlc2VydmUgcHJldmlldyBwcmV2aW91cworc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcHJpbWFyeSBwcmlvciBwcmlvcml0eSBwcmlxdHkgcHJpdmF0ZSBwcml2aWxlZ2VzIHByb2NlZHVyZSBwcm9maWxlCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBwcm9wZXJ0eV9pc19jdW11bGF0aXZlIHByb3BlcnR5X2lzX251bWVyaWMgcHVibGljIHB1YmxpY2F0aW9uIHB1Ymxpc2ggcHVibGlzaGVyCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBxdWllc2NlIHF1b3RlIHF1b3RlcyByYW5nZSByZWFkY2xpZW50ZmlsZSByZWFkY29tbWl0dGVkIHJlYWRlciByZWFkZmlsZSByZWFkb25seQogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcmVhZHBhc3QgcmVhZHVuY29tbWl0dGVkIHJlYWR3cml0ZSByZWJ1aWxkCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByZWNlaXZlZCByZWNvbXBpbGUgcmVjb3ZlciByZWN1cnNpdmUgcmVmZXJlbmNlcwotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcmVmZXJlbmNpbmcgcmVmcmVzaCByZWdleCByZWdleHAgcmVnZXhwX3N1YnN0ciByZWxhdGl2ZSByZWxvY2F0ZQotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcmVuYW1lIHJlcGVhdGFibGUgcmVwZWF0YWJsZXJlYWQKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHJlcGxpY2F0ZSByZXF1ZXN0X3RpbWVvdXQgcmVxdWlyZWQgcmVyZWNlaXZlIHJlc2VuZCByZXNlcnZlIHJlc2V0Ci1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByZXNpemluZyByZXNvbHZlIHJlc291cmNlIHJlc3BlY3QKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHJlZmVyZW5jaW5nIHJlZ2V4IHJlZ2V4cCByZWdleHBfc3Vic3RyIHJlbGF0aXZlIHJlbG9jYXRlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByZW5hbWUgcmVwZWF0YWJsZSByZXBlYXRhYmxlcmVhZCByZXBsaWNhdGUgCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByZXF1ZXN0cyByZXF1ZXN0X3RpbWVvdXQgcmVxdWlyZWQgcmVyZWNlaXZlIHJlc2VuZCByZXNlcnZlIHJlc2V0CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByZXNpemluZyByZXNvbHZlIHJlc291cmNlIHJlc3BlY3QgcmVzdGFydAogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcmVzdHJpY3QgcmVzdWx0IHJldGFpbgogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgcmV0dXJucyByZXZlcnNlIHJpZ2h0IHJvbGUKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHJvbGx1cCByb290IHJvdyByb3dfbnVtYmVyIHJvd2xvY2sgcm93cyBzYXZlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByb2xsdXAgcm9vdCByb3cgcm93X251bWJlciByb3dsb2NrIHJvd3MgCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzYV9pbmRleF9oYXNoIHNhX2ludGVybmFsX2ZrX3ZlcmlmeSBzYV9pbnRlcm5hbF90ZXJtYnJlYWsKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHNhX29yZGVyX3ByZXNlcnZpbmdfaGFzaCBzYV9vcmRlcl9wcmVzZXJ2aW5nX2hhc2hfYmlnIHNhX29yZGVyX3ByZXNlcnZpbmdfaGFzaF9wcmVmaXgKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHNjaGVkdWxlIHNjaGVtYSBzY29wZSBzY3JpcHRlZCBzY3JvbGwgc2Vjb25kcyBzZWNxdHkgc2VjdXJpdHkKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHNlbmQgc2Vuc2l0aXZlIHNlbnQgc2VyaWFsaXphYmxlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzY2FsZSBzY2hlZHVsZSBzY2hlbWEgc2NvcGUgc2NyaXB0ZWQgc2Nyb2xsIHNlY29uZHMgc2VjcXR5IHNlY3VyaXR5CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzZW1pIHNlbmQgc2Vuc2l0aXZlIHNlbnQgc2VxdWVuY2Ugc2VyaWFsaXphYmxlCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzZXJ2ZXIgc2VydmVyIHNlc3Npb24gc2V0X2JpdCBzZXRfYml0cyBzZXRzCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzaGFyZSBzaW1wbGUgc2luY2Ugc2l0ZSBzaXplIHNraXAKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHNuYXBzaG90IHNvYXBoZWFkZXIgc29hcF9oZWFkZXIgc3BsaXQgc29tZSBzb3J0ZWRfZGF0YQotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3FsY29kZSBzcWxpZCBzcWxmbGFnZ2VyIHNxbHN0YXRlIHNxcnQgc3F1YXJlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzaGFwZWZpbGUgc2hhcmUgc2lkZSBzaW1wbGUgc2luY2Ugc2l0ZSBzaXplIHNraXAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHNuYXAgc25hcHNob3Qgc29hcGhlYWRlciBzb2FwX2hlYWRlciAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHNwYXRpYWwgc3BsaXQgc29tZSBzb3J0ZWRfZGF0YQorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3FsIHNxbGNvZGUgc3FsaWQgc3FsZmxhZ2dlciBzcWxzdGF0ZSBzcXJ0IHNxdWFyZQogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3RhY2tlciBzdGFsZSBzdGF0ZW1lbnQgc3RhdGlzdGljcyBzdGF0dXMgc3RkZGV2X3BvcCBzdGRkZXZfc2FtcAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3RlbW1lciBzdG9ncm91cCBzdG9wbGlzdCBzdG9yZQorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3RlbW1lciBzdG9ncm91cCBzdG9wbGlzdCBzdG9yYWdlIHN0b3JlCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzdHJpcCBzdHJpcGVzaXpla2Igc3RyaXBpbmcgc3VicGFnZXMgc3Vic2NyaWJlIHN1YnNjcmlwdGlvbgogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3VidHJhbnNhY3Rpb24gc3VzZXJfaWQgc3VzZXJfbmFtZSBzeW5jaHJvbml6YXRpb24KLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHN5bnRheF9lcnJvciB0YWJsZSB0YWJsb2NrCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB0YWJsb2NreCB0YiB0ZW1wIHRlbXBsYXRlIHRlbXBvcmFyeSB0ZXJtIHRoZW4KLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHRpZXMgdGltZXpvbmUgdG8gdG9fY2hhciB0b19uY2hhciB0b3AgdHJhY2VkX3BsYW4gdHJhY2luZwotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgdHJhbnNmZXIgdHJhbnNhY3Rpb24gdHJhbnNhY3Rpb25hbCB0cmllcyB0cnVlCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB0c2VxdWFsIHR5cGUgdHVuZSB1bmNvbW1pdHRlZCB1bmNvbmRpdGlvbmFsbHkKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHVuZW5mb3JjZWQgdW5pY29kZSB1bmlxdWUgdW5pb24gdW5pc3RyIHVua25vd24gdW5saW1pdGVkIHVubG9hZAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgc3ludGF4X2Vycm9yIHRhYmxlIHRhYmxlcyB0YWJsb2NrCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB0YWJsb2NreCB0YiB0ZW1wIHRlbXBsYXRlIHRlbXBvcmFyeSB0ZXJtIHRoZW4gdGllcyAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHRpbWV6b25lIHRpbWVvdXQgdG8gdG9fY2hhciB0b19uY2hhciB0b2xlcmFuY2UgdG9wCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB0cmFjZWRfcGxhbiB0cmFjaW5nCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB0cmFuc2ZlciB0cmFuc2Zvcm0gdHJhbnNhY3Rpb24gdHJhbnNhY3Rpb25hbCB0cmVhdCB0cmllcyAKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHRydWUgdHNlcXVhbCB0eXBlIHR1bmUgdW5jb21taXR0ZWQgdW5jb25kaXRpb25hbGx5CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB1bmVuZm9yY2VkIHVuaWNvZGUgdW5pcXVlIHVuaXN0ciB1bml0IHVua25vd24gdW5saW1pdGVkIHVubG9hZAogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgdW5wYXJ0aXRpb24gdW5xdWllc2NlIHVwZGF0ZXRpbWUgdXBkYXRpbmcgdXBkbG9jayB1cGdyYWRlIHVwbG9hZAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgdXBwZXIgdXNlIHVzZXIKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHVwcGVyIHVzYWdlIHVzZSB1c2VyCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB1c2luZyB1dGMgdXRpbGl0aWVzIHZhbGlkcHJvYwogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgdmFsdWUgdmFsdWVzIHZhcmNoYXIgdmFyaWFibGUKLXN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHZhcnlpbmcgdmFyX3BvcCB2YXJfc2FtcCB2Y2F0IHZlcmlmeSB2ZXJzaW9ucyB2aWV3IHZpcnR1YWwgd2FpdAotc3luIGtleXdvcmQgc3FsS2V5d29yZAkgd2FybmluZyB3ZCB3ZWIgd2hlbiB3aGVyZSB3aW5kb3cgd2l0aCB3aXRoX2F1dG8KK3N5biBrZXl3b3JkIHNxbEtleXdvcmQJIHZhcnlpbmcgdmFyX3BvcCB2YXJfc2FtcCB2Y2F0IHZlcmJvc2l0eQorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgdmVyaWZ5IHZlcnNpb25zIHZpZXcgdmlydHVhbCB3YWl0CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB3YXJuaW5nIHdkIHdlYiB3aGVuIHdoZXJlIHdpdGggd2l0aF9hdXRvCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB3aXRoX2F1dG8gd2l0aF9jdWJlIHdpdGhfcm9sbHVwIHdpdGhvdXQKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIHdpdGhfbHBhcmVuIHdpdGhpbiB3b3JkIHdvcmsgd29ya2xvYWQgd3JpdGUgd3JpdGVmaWxlCi1zeW4ga2V5d29yZCBzcWxLZXl3b3JkCSB3cml0ZWNsaWVudGZpbGUgd3JpdGVyIHdyaXRlcnMgd3JpdGVzZXJ2ZXIgeGxvY2sgemVyb3MKLSIgWE1MIGZ1bmN0aW9uIHN1cHBvcnQKLXN5biBrZXl3b3JkIHNxbEZ1bmN0aW9uCSBvcGVueG1sIHhtbGVsZW1lbnQgeG1sZm9yZXN0IHhtbGdlbiB4bWxjb25jYXQgeG1sYWdnCi1zeW4ga2V5d29yZCBzcWxGdW5jdGlvbgkgeG1sYXR0cmlidXRlcworc3luIGtleXdvcmQgc3FsS2V5d29yZAkgd3JpdGVjbGllbnRmaWxlIHdyaXRlciB3cml0ZXJzIHdyaXRlc2VydmVyIHhsb2NrIAorc3luIGtleXdvcmQgc3FsS2V5d29yZAkgemVyb3Mgem9uZQorIiBYTUwgCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSByYXcgYXV0byBlbGVtZW50cyBleHBsaWNpdAogIiBIVFRQIHN1cHBvcnQKIHN5biBrZXl3b3JkIHNxbEtleXdvcmQJIGF1dGhvcml6YXRpb24gc2VjdXJlIHVybCBzZXJ2aWNlIG5leHRfc29hcF9oZWFkZXIKQEAgLTQ4OCwzNyArNjEwLDExOSBAQAogc3luIGtleXdvcmQgc3FsS2V5d29yZAkgY2hhcmFjdGVyIGRlYyBvcHRpb25zIHByb2MgcmVmZXJlbmNlCiBzeW4ga2V5d29yZCBzcWxLZXl3b3JkCSBzdWJ0cmFucyB0cmFuIHN5biBrZXl3b3JkCiAKKyIgU3BhdGlhbCBQcmVkaWNhdGVzCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfQ29udGFpbnMKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Db250YWluc0ZpbHRlcgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0NvdmVyZWRCeQorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0NvdmVyZWRCeUZpbHRlcgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0NvdmVycworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0NvdmVyc0ZpbHRlcgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0Nyb3NzZXMKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9EaXNqb2ludAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0VxdWFscworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0VxdWFsc0ZpbHRlcgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0ludGVyc2VjdHMKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9JbnRlcnNlY3RzRmlsdGVyCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfSW50ZXJzZWN0c1JlY3QKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9PcmRlcmluZ0VxdWFscworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX092ZXJsYXBzCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfUmVsYXRlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfVG91Y2hlcworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1dpdGhpbgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1dpdGhpbkZpbHRlcgorIiBTcGF0aWFsIFNldCBvcGVyYXRpb25zCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfQWZmaW5lCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfQm91bmRhcnkKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9CdWZmZXIKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Db252ZXhIdWxsCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfQ29udmV4SHVsbEFnZ3IKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9EaWZmZXJlbmNlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfSW50ZXJzZWN0aW9uCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfSW50ZXJzZWN0aW9uQWdncgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1N5bURpZmZlcmVuY2UKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Vbmlvbgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1VuaW9uQWdncgorIiBTcGF0aWFsIEJvdW5kcworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0VudmVsb3BlCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfRW52ZWxvcGVBZ2dyCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTGF0CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTGF0TWF4CitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTGF0TWluCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTG9uZworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0xvbmdNYXgKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Mb25nTWluCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTQorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX01NYXgKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9NTWluCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfUG9pbnQKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9YCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfWE1heAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1hNaW4KK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9ZCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfWU1heAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1lNaW4KK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9aCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfWk1heAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1pNaW4KKyIgU3BhdGlhbCBDb2xsZWN0aW9uIEFnZ3JlZ2F0ZXMKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9HZW9tQ29sbGVjdGlvbkFnZ3IKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9MaW5lU3RyaW5nQWdncgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX011bHRpQ3VydmVBZ2dyCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTXVsdGlMaW5lU3RyaW5nQWdncgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX011bHRpUG9pbnRBZ2dyCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTXVsdGlQb2x5Z29uQWdncgorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX011bHRpU3VyZmFjZUFnZ3IKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9QZXJpbWV0ZXIKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Qb2ludE9uU3VyZmFjZQorIiBTcGF0aWFsIFNSUworc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0NvbXBhcmVXS1QKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Gb3JtYXRXS1QKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9QYXJzZVdLVAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1RyYW5zZm9ybUdlb20KK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9HZW9tZXRyeVR5cGVGcm9tQmFzZVR5cGUKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9TbmFwVG9HcmlkCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfVHJhbnNmb3JtCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfU1JJRAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX1NSSURGcm9tQmFzZVR5cGUKK3N5biBrZXl3b3JkIHNxbEtleXdvcmQgICBTVF9Mb2FkQ29uZmlndXJhdGlvbkRhdGEKKyIgU3BhdGlhbCBJbmRleGVzCitzeW4ga2V5d29yZCBzcWxLZXl3b3JkICAgU1RfTGluZWFySGFzaAorc3luIGtleXdvcmQgc3FsS2V5d29yZCAgIFNUX0xpbmVhclVuSGFzaAogCiBzeW4ga2V5d29yZCBzcWxPcGVyYXRvcgkgaW4gYW55IHNvbWUgYWxsIGJldHdlZW4gZXhpc3RzCiBzeW4ga2V5d29yZCBzcWxPcGVyYXRvcgkgbGlrZSBlc2NhcGUgbm90IGlzIGFuZCBvcgotc3luIGtleXdvcmQgc3FsT3BlcmF0b3IgIGludGVyc2VjdCBtaW51cworc3luIGtleXdvcmQgc3FsT3BlcmF0b3IgIG1pbnVzCiBzeW4ga2V5d29yZCBzcWxPcGVyYXRvciAgcHJpb3IgZGlzdGluY3QKIAotc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IGFsbG9jYXRlIGFsdGVyIGJhY2t1cCBiZWdpbiBjYWxsIGNhc2UKLXN5biBrZXl3b3JkIHNxbFN0YXRlbWVudCBjaGVja3BvaW50IGNsZWFyIGNsb3NlIGNvbW1pdCBjb25maWd1cmUgY29ubmVjdAotc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IGNyZWF0ZSBkZWFsbG9jYXRlIGRlY2xhcmUgZGVsZXRlIGRlc2NyaWJlCi1zeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgZGlzY29ubmVjdCBkcm9wIGV4ZWN1dGUgZXhpdCBleHBsYWluIGZldGNoCitzeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgYWxsb2NhdGUgYWx0ZXIgYXR0YWNoIGJhY2t1cCBiZWdpbiBicmVhayBjYWxsIGNhc2UKK3N5biBrZXl3b3JkIHNxbFN0YXRlbWVudCBjaGVja3BvaW50IGNsZWFyIGNsb3NlIGNvbW1lbnQgY29tbWl0IGNvbmZpZ3VyZSBjb25uZWN0CitzeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgY29udGludWUgY3JlYXRlIGRlYWxsb2NhdGUgZGVjbGFyZSBkZWxldGUgZGVzY3JpYmUKK3N5biBrZXl3b3JkIHNxbFN0YXRlbWVudCBkZXRhY2ggZGlzY29ubmVjdCBkcm9wIGV4Y2VwdCBleGVjdXRlIGV4aXQgZXhwbGFpbiBmZXRjaAogc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IGZvciBmb3J3YXJkIGZyb20gZ2V0IGdvdG8gZ3JhbnQgaGVscCBpZiBpbmNsdWRlCi1zeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgaW5wdXQgaW5zZXJ0IGluc3RhbGwgbGVhdmUgbG9hZCBsb2NrIGxvb3AKLXN5biBrZXl3b3JkIHNxbFN0YXRlbWVudCBtZXNzYWdlIG9wZW4gb3V0cHV0IHBhcmFtZXRlciBwYXJhbWV0ZXJzIHBhc3N0aHJvdWdoCi1zeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgcHJlcGFyZSBwcmludCBwdXQgcmFpc2Vycm9yIHJlYWQgcmVhZHRleHQgcmVsZWFzZQorc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IGlucHV0IGluc2VydCBpbnN0YWxsIGludGVyc2VjdCBsZWF2ZSBsb2FkIGxvY2sgbG9vcAorc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IG1lc3NhZ2Ugb3BlbiBvdXRwdXQgcGFyYW1ldGVycyBwYXNzdGhyb3VnaAorc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IHByZXBhcmUgcHJpbnQgcHV0IHJhaXNlcnJvciByZWFkIHJlYWR0ZXh0IHJlZnJlc2ggcmVsZWFzZQogc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IHJlbW90ZSByZW1vdmUgcmVvcmdhbml6ZSByZXNpZ25hbCByZXN0b3JlIHJlc3VtZQotc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IHJldHVybiByZXZva2Ugcm9sbGJhY2sgc2F2ZXBvaW50IHNlbGVjdAorc3luIGtleXdvcmQgc3FsU3RhdGVtZW50IHJldHVybiByZXZva2Ugcm9sbGJhY2sgc2F2ZSBzYXZlcG9pbnQgc2VsZWN0CiBzeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgc2V0IHNldHVzZXIgc2lnbmFsIHN0YXJ0IHN0b3Agc3luY2hyb25pemUKLXN5biBrZXl3b3JkIHNxbFN0YXRlbWVudCBzeXN0ZW0gdHJpZ2dlciB0cnVuY2F0ZSB1bmxvYWQgdXBkYXRlCi1zeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgdmFsaWRhdGUgd2FpdGZvciB3aGVuZXZlciB3aGlsZSB3cml0ZXRleHQKK3N5biBrZXl3b3JkIHNxbFN0YXRlbWVudCBzeXN0ZW0gdHJpZ2dlciB0cnVuY2F0ZSB1bmlvbiB1bmxvYWQgdXBkYXRlCitzeW4ga2V5d29yZCBzcWxTdGF0ZW1lbnQgdmFsaWRhdGUgd2FpdGZvciB3aGVuZXZlciB3aGlsZSB3aW5kb3cgd3JpdGV0ZXh0CiAKIAotc3luIGtleXdvcmQgc3FsVHlwZQkgY2hhciBsb25nIHZhcmNoYXIgdGV4dAotc3luIGtleXdvcmQgc3FsVHlwZQkgYmlnaW50IGRlY2ltYWwgZG91YmxlIGZsb2F0IGludCBpbnRlZ2VyIG51bWVyaWMKK3N5biBrZXl3b3JkIHNxbFR5cGUJIGNoYXIgbmNoYXIgbG9uZyB2YXJjaGFyIG52YXJjaGFyIHRleHQgbnRleHQgdW5pcXVlaWRlbnRpZmllcnN0ciB4bWwKK3N5biBrZXl3b3JkIHNxbFR5cGUJIGJpZ2ludCBiaXQgZGVjaW1hbCBkb3VibGUgdmFyYml0CitzeW4ga2V5d29yZCBzcWxUeXBlCSBmbG9hdCBpbnQgaW50ZWdlciBudW1lcmljCiBzeW4ga2V5d29yZCBzcWxUeXBlCSBzbWFsbGludCB0aW55aW50IHJlYWwKIHN5biBrZXl3b3JkIHNxbFR5cGUJIG1vbmV5IHNtYWxsbW9uZXkKLXN5biBrZXl3b3JkIHNxbFR5cGUJIGJpdAotc3luIGtleXdvcmQgc3FsVHlwZQkgZGF0ZSBkYXRldGltZSBzbWFsbGRhdGUgdGltZSB0aW1lc3RhbXAKK3N5biBrZXl3b3JkIHNxbFR5cGUJIGRhdGUgZGF0ZXRpbWUgZGF0ZXRpbWVvZmZzZXQgc21hbGxkYXRldGltZSB0aW1lIHRpbWVzdGFtcAogc3luIGtleXdvcmQgc3FsVHlwZQkgYmluYXJ5IGltYWdlIHZhcmJpbmFyeSB1bmlxdWVpZGVudGlmaWVyCi1zeW4ga2V5d29yZCBzcWxUeXBlCSB4bWwgdW5zaWduZWQKLSIgTmV3IHR5cGVzIDEwLjAuMAotc3luIGtleXdvcmQgc3FsVHlwZQkgdmFyYml0IG5jaGFyIG52YXJjaGFyCitzeW4ga2V5d29yZCBzcWxUeXBlCSB1bnNpZ25lZAorIiBTcGF0aWFsIHR5cGVzCitzeW4ga2V5d29yZCBzcWxUeXBlCSBzdF9nZW9tZXRyeSBzdF9wb2ludCBzdF9jdXJ2ZSBzdF9zdXJmYWNlIHN0X2dlb21jb2xsZWN0aW9uCitzeW4ga2V5d29yZCBzcWxUeXBlCSBzdF9saW5lc3RyaW5nIHN0X2NpcmN1bGFyc3RyaW5nIHN0X2NvbXBvdW5kY3VydmUKK3N5biBrZXl3b3JkIHNxbFR5cGUJIHN0X2N1cnZlcG9seWdvbiBzdF9wb2x5Z29uCitzeW4ga2V5d29yZCBzcWxUeXBlCSBzdF9tdWx0aXBvaW50IHN0X211bHRpY3VydmUgc3RfbXVsdGlzdXJmYWNlCitzeW4ga2V5d29yZCBzcWxUeXBlCSBzdF9tdWx0aWxpbmVzdHJpbmcgc3RfbXVsdGlwb2x5Z29uCiAKIHN5biBrZXl3b3JkIHNxbE9wdGlvbiAgICBBbGxvd19udWxsc19ieV9kZWZhdWx0CiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgQWxsb3dfcmVhZF9jbGllbnRfZmlsZQpAQCAtNTU2LDYgKzc2MCw3IEBACiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgRGVmYXVsdF90aW1lc3RhbXBfaW5jcmVtZW50CiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgRGVsYXllZF9jb21taXRfdGltZW91dAogc3luIGtleXdvcmQgc3FsT3B0aW9uICAgIERlbGF5ZWRfY29tbWl0cworc3luIGtleXdvcmQgc3FsT3B0aW9uICAgIERpdmlkZV9ieV96ZXJvX2Vycm9yCiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgRXNjYXBlX2NoYXJhY3Rlcgogc3luIGtleXdvcmQgc3FsT3B0aW9uICAgIEV4Y2x1ZGVfb3BlcmF0b3JzCiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgRXh0ZW5kZWRfam9pbl9zeW50YXgKQEAgLTYzMyw2ICs4MzgsNyBAQAogc3luIGtleXdvcmQgc3FsT3B0aW9uICAgIFVwZGF0ZV9zdGF0aXN0aWNzCiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgVXBncmFkZV9kYXRhYmFzZV9jYXBhYmlsaXR5CiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgVXNlcl9lc3RpbWF0ZXMKK3N5biBrZXl3b3JkIHNxbE9wdGlvbiAgICBVdWlkX2hhc19oeXBoZW5zCiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgVmVyaWZ5X3Bhc3N3b3JkX2Z1bmN0aW9uCiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgV2FpdF9mb3JfY29tbWl0CiBzeW4ga2V5d29yZCBzcWxPcHRpb24gICAgV2Vic2VydmljZV9uYW1lc3BhY2VfaG9zdApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGFzbS52aW0gYi9ydW50aW1lL3N5bnRheC90YXNtLnZpbQppbmRleCAxY2ZjMTIxLi4yZjg1NTk2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90YXNtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90YXNtLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiBUQVNNOiB0dXJibyBhc3NlbWJsZXIgYnkgQm9ybGFuZAogIiBNYWludGFuZXI6IEZvb0xtYW4gb2YgVW5pdGVkIEZvcmNlIDxmb29sbWFuQGJpZ2Zvb3QuY29tPgotIiBMYXN0IGNoYW5nZTogMjIgYXVnIDIwMDAKKyIgTGFzdCBDaGFuZ2U6IDIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogCiAiIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwogIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZApAQCAtMTEsNiArMTEsOSBAQAogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogc3luIGNhc2UgaWdub3JlCiBzeW4gbWF0Y2ggdGFzbUxhYmVsICJeW1wgXHRdKltAYS16XyRdW2EtejAtOV8kQF0qXCAqOiIKIHN5biBrZXl3b3JkIHRhc21EaXJlY3RpdmUgQUxJQVMgQUxJR04gQVJHIEFTU1VNRSAlQklOIENBVFNSVCBDT0RFU0VHCkBAIC0xMjAsMyArMTIzLDYgQEAKIGVuZGlmCiAKIGxldCBiOmN1cnJldF9zeW50YXggPSAidGFzbSIKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC90c2FsdC52aW0gYi9ydW50aW1lL3N5bnRheC90c2FsdC52aW0KaW5kZXggNTZmMTc1NS4uODg3ZDZiNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdHNhbHQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3RzYWx0LnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglUZWxpeCAoTW9kZW0gQ29tbSBQcm9ncmFtKSBTQUxUIFNjcmlwdAogIiBNYWludGFpbmVyOglTZWFuIE0uIE1jS2VlIDxtY2tlZUBtaXNzbGluay5uZXQ+Ci0iIExhc3QgQ2hhbmdlOgkyMDAxIE1heSAwOQorIiBMYXN0IENoYW5nZToJMjAxMiBGZWIgMDMgYnkgVGhpbG8gU2l4CiAiIFZlcnNpb24gSW5mbzogQCgjKXRzYWx0LnZpbQkxLjUJOTcvMTIvMTYgMDg6MTE6MTUKIAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKQEAgLTEyLDYgKzEyLDkgQEAKICAgZmluaXNoCiBlbmRpZgogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKICIgdHVybiBjYXNlIG1hdGNoaW5nIG9mZgogc3luIGNhc2UgaWdub3JlCiAKQEAgLTIxMSw0ICsyMTQsNiBAQAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0c2FsdCIKIAorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCiAiIHZpbTogdHM9OApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdmhkbC52aW0gYi9ydW50aW1lL3N5bnRheC92aGRsLnZpbQppbmRleCA0YWMzYjZkLi42NTczYWYwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92aGRsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC92aGRsLnZpbQpAQCAtMiw2ICsyLDcgQEAKICIgTGFuZ3VhZ2U6CVZIREwKICIgTWFpbnRhaW5lcjoJQ3pvIDxPbGl2aWVyLlNpcm9sQGxpcDYuZnI+CiAiIENyZWRpdHM6CVN0ZXBoYW4gSGVnZWwgPHN0ZXBoYW4uaGVnZWxAc25jLnNpZW1lbnMuY29tLmNuPgorIiBMYXN0IENoYW5nZWQ6CTIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogIiAkSWQ6IHZoZGwudmltLHYgMS4xIDIwMDQvMDYvMTMgMTU6MzQ6NTYgdmltYm9zcyBFeHAgJAogCiAiIFZIU0lDIEhhcmR3YXJlIERlc2NyaXB0aW9uIExhbmd1YWdlCkBAIC0xNSw2ICsxNiw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiAiIFRoaXMgaXMgbm90IFZIREwuIEkgdXNlIHRoZSBDLVByZXByb2Nlc3NvciBjcHAgdG8gZ2VuZXJhdGUgZGlmZmVyZW50IGJpbmFyaWVzCiAiIGZyb20gb25lIFZIREwgc291cmNlIGZpbGUuIFVuZm9ydHVuYXRlbHkgdGhlcmUgaXMgbm8gcHJlcHJvY2Vzc29yIGZvciBWSERMCiAiIGF2YWlsYWJsZS4gSWYgeW91IGRvbid0IGxpa2UgdGhpcywgcGxlYXNlIHJlbW92ZSB0aGUgZm9sbG93aW5nIGxpbmVzLgpAQCAtMTgxLDQgKzE4NSw2IEBACiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInZoZGwiCiAKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQogIiB2aW06IHRzPTgKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3ZpbWluZm8udmltIGIvcnVudGltZS9zeW50YXgvdmltaW5mby52aW0KaW5kZXggZDE3NGVkZi4uN2FmM2I4OSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdmltaW5mby52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdmltaW5mby52aW0KQEAgLTEsMTMgKzEsMTYgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglWaW0gLnZpbWluZm8gZmlsZQogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IENoYW5nZToJMjAwNSBKdW4gMjAKKyIgTGFzdCBDaGFuZ2U6CTIwMTIgRmViIDAzCiAKICIgUXVpdCB3aGVuIGEgKGN1c3RvbSkgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogIiBUaGUgbGluZXMgdGhhdCBhcmUgTk9UIHJlY29nbml6ZWQKIHN5biBtYXRjaCB2aW1pbmZvRXJyb3IgIl5bXlx0XS4qIgogCkBAIC0zNSw0ICszOCw3IEBACiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInZpbWluZm8iCiAKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQorCiAiIHZpbTogdHM9OCBzdz0yCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC94cG0yLnZpbSBiL3J1bnRpbWUvc3ludGF4L3hwbTIudmltCmluZGV4IGIwNTc5NDYuLjliODVkMGIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3hwbTIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3hwbTIudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CVggUGl4bWFwIHYyCiAiIE1haW50YWluZXI6CVN0ZXZlIFdhbGwgKGhpdGNoZWQ5N0B2ZWxuZXQuY29tKQotIiBMYXN0IENoYW5nZToJMjAwOCBNYXkgMjgKKyIgTGFzdCBDaGFuZ2U6CTIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogIiBWZXJzaW9uOgk1LjgKICIKICIgTWFkZSBmcm9tIHhwbS52aW0gYnkgUm9uYWxkIFNjaGlsZCA8cnNAc2N1dHVtLmRlPgpAQCAtMTQsNiArMTQsOSBAQAogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogc3luIHJlZ2lvbiAgeHBtMlBpeGVsU3RyaW5nCXN0YXJ0PSJeIiAgZW5kPSIkIiAgY29udGFpbnM9QHhwbTJDb2xvcnMKIHN5biBrZXl3b3JkIHhwbTJUb2RvCQlUT0RPIEZJWE1FIFhYWCAgY29udGFpbmVkCiBzeW4gbWF0Y2ggICB4cG0yQ29tbWVudAkJIlwhLiokIiAgY29udGFpbnM9eHBtMlRvZG8KQEAgLTE1OSw0ICsxNjIsNiBAQAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ4cG0yIgogCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKICIgdmltOiB0cz04OnN3PTI6bm9ldDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8gYi9ydW50aW1lL3R1dG9yL3R1dG9yLmVvCmluZGV4IDk1OGQzOTMuLmNjOWE4YmUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8KKysrIGIvcnVudGltZS90dXRvci90dXRvci5lbwpAQCAtMSw1ICsxLDUgQEAKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotPSAgQiBvIG4gdiBlIG4gbyBuICBhbCAgbGEgIEkgbiBzIHQgciB1IGkgbCBvICBkZSAgViBJIE0gIC0gIFZlcnNpbyAxLjcuZW8uMyA9Cis9ICBCIG8gbiB2IGUgbiBvIG4gICBhbCAgIGxhICAgSSBuIHMgdCByIHUgaSBsIG8gIGRlICBWIEkgTSAgLSAgVmVyc2lvIDEuNyAgID0KID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAgICBWaW0gZXN0YXMgdHJlIHBvdGVuY2EgcmVkYWt0aWxvLCBraXUgaGF2YXMgbXVsdGFqbiBrb21hbmRvam4sIHRybyBkYSBpbGkKQEAgLTEwOCw3ICsxMDgsNyBAQAogICAgICByZfhpbW8uIFJpcGV0dSBsYSBwYf5vam4gMiD4aXMgNCBwb3Iga29yZWt0aSBsYSBmcmF6b24uCiAKIC0tLT4gTWFuayBlbiDmaSBsaW5pby4KLS0tLT4gTWFua2FzIHRla3N0b24gZW4g5mkgdGl1IGxpbmlvLgorLS0tPiBNYW5rYXMgdGVrc3RvIGVuIOZpIHRpdSBsaW5pby4KIAogICA1LiBLaWFtIHZpIHNlbnRhcyB2aW4ga29tZm9ydGEgcHJpIGVubWV0byBkZSB0ZWtzdG8sIG1vdmn4dSBhbCBsYQogICAgICBsZWNpb25vIDEuNS4KQEAgLTE2MCw3ICsxNjAsNyBAQAogCiAgIDQuIEtvbnNlcnZ1IGxhIGRvc2llcm9uIGt1biD+YW74b2oga2FqIGVsaXJ1IGVsIFZpbSBwZXI6ICA6d3EgIDxFbmVua2xhdm8+CiAKLSAgNS4gU2UgdmkgZWxpcmlzIGxhIGluc3RydWlsb24gdmltdHV0b3IgZW4gcGH+byAxLCByZXN0YXJ0dSBsYSBpbnRydWlsb24KKyAgNS4gU2UgdmkgZWxpcmlzIGxhIGluc3RydWlsb24gdmltdHV0b3IgZW4gcGH+byAxLCByZXN0YXJ0aWd1IGxhIGludHJ1aWxvbgogICAgICB2aW10dXRvciBrYWogbW92afh1IHN1YmVuIGFsIGxhIHNla3ZhbnRhIHJlc3Vtby4KIAogICA2LiBQb3N0IGtpYW0gdmkgbGVnaXMgbGEgc3VwcmFqbiBwYf5vam4sIGthaiBrb21wcmVuaXMgaWxpbjogZmFydSBpbGluLgpAQCAtNjQwLDcgKzY0MCw3IEBACiAgIDEuIFRhanB1ICAhZGlyICBh/SAgIWxzICBwb3IgYWtpcmkgbGlzdG9uIGRlIHZpYSBkb3NpZXJ1am8uCiAgICAgIFZpIGphbSBzY2lhcywga2UgdmkgZGV2YXMgdGFqcGkgPEVuZW5rbGF2bz4gcG9zdCB0aW8uCiAKLSAgMi4gRWxla3R1IGRvc2llcm9uLCBraXUgbmUgamFtIGVremlzdGFzLCBraWVsIGVremVtcGxlIFRFU1RPLgorICAyLiBFbGVrdHUgZG9zaWVyb24sIGtpdSBhbmtvcmH9IG5lIGVremlzdGFzLCBraWVsIGVremVtcGxlIFRFU1RPLgogCiAgIDMuIE51biB0YWpwdTogICA6dyBURVNUTyAgIChraWUgVEVTVE8gZXN0YXMgbGEgZWxla3RpdGEgZG9zaWVybm9tbykKIApAQCAtNjY5LDcgKzY2OSw3IEBACiAKICAgMy4gUHJlbXUgbGEgIDogIHNpZ25vbi4gIMZlIGxhIGZpbm8gZGUgbGEgZWtyYW5vICA6JzwsJz4gIGFwZXJvcy4KIAotICA0LiBUYWpwdSAgdyBURVNUTyAgLCBraWUgVEVTVE8gZXN0YXMgZG9zaWVybm9tbywga2l1IG5lIGphbSBla3ppc3Rhcy4KKyAgNC4gVGFqcHUgIHcgVEVTVE8gICwga2llIFRFU1RPIGVzdGFzIGRvc2llcm5vbW8sIGtpdSBhbmtvcmH9IG5lIGVremlzdGFzLgogICAgICBLb250cm9sdSwga2UgdmkgdmlkYXMgIDonPCwnPncgVEVTVE8gIGFudGH9IHByZW1pIDxFbmVua2xhdm8+LgogCiAgIDUuIFZpbSBrb25zZXJ2b3MgbGEgYXBhcnRpZ2l0YWpuIGxpbmlvam4gYWwgbGEgZG9zaWVybyBURVNUTy4gIFV6dSAgOmRpcgpAQCAtOTg0LDggKzk4NCw4IEBACiAKICAgTW9kaWZpdGEgcG9yIFZpbSBkZSBCcmFtIE1vb2xlbmFhci4KIAotICBUcmFkdWtpdGEgZW4gRXNwZXJhbnRvIGRlIERvbWluaXF1ZSBQZWxs6SwgMjAwOC0wNC0wMQorICBFc3BlcmFudGlnaXRhIGZhcmUgZGUgRG9taW5pcXVlIFBlbGzpLCAyMDA4LTA0LTAxCiAgIFJldHBv/nRvOiBkb21pbmlxdWUucGVsbGVAZ21haWwuY29tCi0gIExhc3RhIP5hbvhvOiAyMDEwLTA1LTIzCisgIExhc3RhIP5hbvhvOiAyMDExLTExLTI3CiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5lby51dGYtOCBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZW8udXRmLTgKaW5kZXggZmViZjJmOS4uNDFmNDA3MiAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5lby51dGYtOAorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmVvLnV0Zi04CkBAIC0xLDUgKzEsNSBAQAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci09ICBCIG8gbiB2IGUgbiBvIG4gIGFsICBsYSAgSSBuIHMgdCByIHUgaSBsIG8gIGRlICBWIEkgTSAgLSAgVmVyc2lvIDEuNy5lby4zID0KKz0gIEIgbyBuIHYgZSBuIG8gbiAgIGFsICAgbGEgICBJIG4gcyB0IHIgdSBpIGwgbyAgZGUgIFYgSSBNICAtICBWZXJzaW8gMS43ICAgPQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKICAgIFZpbSBlc3RhcyB0cmUgcG90ZW5jYSByZWRha3RpbG8sIGtpdSBoYXZhcyBtdWx0YWpuIGtvbWFuZG9qbiwgdHJvIGRhIGlsaQpAQCAtMTA4LDcgKzEwOCw3IEBACiAgICAgIHJlxJ1pbW8uIFJpcGV0dSBsYSBwYcWdb2puIDIgxJ1pcyA0IHBvciBrb3Jla3RpIGxhIGZyYXpvbi4KIAogLS0tPiBNYW5rIGVuIMSJaSBsaW5pby4KLS0tLT4gTWFua2FzIHRla3N0b24gZW4gxIlpIHRpdSBsaW5pby4KKy0tLT4gTWFua2FzIHRla3N0byBlbiDEiWkgdGl1IGxpbmlvLgogCiAgIDUuIEtpYW0gdmkgc2VudGFzIHZpbiBrb21mb3J0YSBwcmkgZW5tZXRvIGRlIHRla3N0bywgbW92acSddSBhbCBsYQogICAgICBsZWNpb25vIDEuNS4KQEAgLTE2MCw3ICsxNjAsNyBAQAogCiAgIDQuIEtvbnNlcnZ1IGxhIGRvc2llcm9uIGt1biDFnWFuxJ1vaiBrYWogZWxpcnUgZWwgVmltIHBlcjogIDp3cSAgPEVuZW5rbGF2bz4KIAotICA1LiBTZSB2aSBlbGlyaXMgbGEgaW5zdHJ1aWxvbiB2aW10dXRvciBlbiBwYcWdbyAxLCByZXN0YXJ0dSBsYSBpbnRydWlsb24KKyAgNS4gU2UgdmkgZWxpcmlzIGxhIGluc3RydWlsb24gdmltdHV0b3IgZW4gcGHFnW8gMSwgcmVzdGFydGlndSBsYSBpbnRydWlsb24KICAgICAgdmltdHV0b3Iga2FqIG1vdmnEnXUgc3ViZW4gYWwgbGEgc2VrdmFudGEgcmVzdW1vLgogCiAgIDYuIFBvc3Qga2lhbSB2aSBsZWdpcyBsYSBzdXByYWpuIHBhxZ1vam4sIGthaiBrb21wcmVuaXMgaWxpbjogZmFydSBpbGluLgpAQCAtNjQwLDcgKzY0MCw3IEBACiAgIDEuIFRhanB1ICAhZGlyICBhxa0gICFscyAgcG9yIGFraXJpIGxpc3RvbiBkZSB2aWEgZG9zaWVydWpvLgogICAgICBWaSBqYW0gc2NpYXMsIGtlIHZpIGRldmFzIHRhanBpIDxFbmVua2xhdm8+IHBvc3QgdGlvLgogCi0gIDIuIEVsZWt0dSBkb3NpZXJvbiwga2l1IG5lIGphbSBla3ppc3Rhcywga2llbCBla3plbXBsZSBURVNUTy4KKyAgMi4gRWxla3R1IGRvc2llcm9uLCBraXUgYW5rb3Jhxa0gbmUgZWt6aXN0YXMsIGtpZWwgZWt6ZW1wbGUgVEVTVE8uCiAKICAgMy4gTnVuIHRhanB1OiAgIDp3IFRFU1RPICAgKGtpZSBURVNUTyBlc3RhcyBsYSBlbGVrdGl0YSBkb3NpZXJub21vKQogCkBAIC02NjksNyArNjY5LDcgQEAKIAogICAzLiBQcmVtdSBsYSAgOiAgc2lnbm9uLiAgxIhlIGxhIGZpbm8gZGUgbGEgZWtyYW5vICA6JzwsJz4gIGFwZXJvcy4KIAotICA0LiBUYWpwdSAgdyBURVNUTyAgLCBraWUgVEVTVE8gZXN0YXMgZG9zaWVybm9tbywga2l1IG5lIGphbSBla3ppc3Rhcy4KKyAgNC4gVGFqcHUgIHcgVEVTVE8gICwga2llIFRFU1RPIGVzdGFzIGRvc2llcm5vbW8sIGtpdSBhbmtvcmHFrSBuZSBla3ppc3Rhcy4KICAgICAgS29udHJvbHUsIGtlIHZpIHZpZGFzICA6JzwsJz53IFRFU1RPICBhbnRhxa0gcHJlbWkgPEVuZW5rbGF2bz4uCiAKICAgNS4gVmltIGtvbnNlcnZvcyBsYSBhcGFydGlnaXRham4gbGluaW9qbiBhbCBsYSBkb3NpZXJvIFRFU1RPLiAgVXp1ICA6ZGlyCkBAIC05ODQsOCArOTg0LDggQEAKIAogICBNb2RpZml0YSBwb3IgVmltIGRlIEJyYW0gTW9vbGVuYWFyLgogCi0gIFRyYWR1a2l0YSBlbiBFc3BlcmFudG8gZGUgRG9taW5pcXVlIFBlbGzDqSwgMjAwOC0wNC0wMQorICBFc3BlcmFudGlnaXRhIGZhcmUgZGUgRG9taW5pcXVlIFBlbGzDqSwgMjAwOC0wNC0wMQogICBSZXRwb8WddG86IGRvbWluaXF1ZS5wZWxsZUBnbWFpbC5jb20KLSAgTGFzdGEgxZ1hbsSdbzogMjAxMC0wNS0yMworICBMYXN0YSDFnWFuxJ1vOiAyMDExLTExLTI3CiAKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5mciBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIKaW5kZXggZTlkZDFlZC4uZjUxYTYyZSAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci5mcgorKysgYi9ydW50aW1lL3R1dG9yL3R1dG9yLmZyCkBAIC00NTEsNyArNDUxLDcgQEAKICAgMy4gVGFwZXogIGNlICBldCBjb3JyaWdleiBsZSBtb3QgKGRhbnMgbm90cmUgY2FzLCB0YXBleiAgJ2lnbmUnLikKIAogICA0LiBBcHB1eWV6IDzJY2hhcD4gZXQgcGxhY2V6LXZvdXMgc3VyIGxlIHByb2NoYWluIGNhcmFjdOhyZSBxdWkgZG9pdAotICAgICDqdHJlIGNoYW5n6SkuCisgICAgIOp0cmUgY2hhbmfpLgogCiAgIDUuIFLpcOl0ZXogbGVzIOl0YXBlcyAzIGV0IDQganVzcXUn4CBjZSBxdWUgbGEgcHJlbWnocmUgcGhyYXNlIHNvaXQKICAgICAgaWRlbnRpcXVlIOAgbGEgc2Vjb25kZS4KQEAgLTU2MCw3ICs1NjAsNyBAQAogLS0tPiBlcnJldXIgbmUgcyfpY3JpdCBwYXMgImVycnJldXVyIiA7IGVycnJldXVyIGVzdCB1bmUgZXJyZXVyLgogCiBOT1RFIDogUXVhbmQgbGEgcmVjaGVyY2hlIGF0dGVpbnQgbGEgZmluIGR1IGZpY2hpZXIsIGVsbGUgcmVwcmVuZCBhdSBk6WJ1dAotICAgICAgIHNhdWYgc2kgbCdvcHRpb24gJ3dyYXBzY2FuJyBlc3QgZOlhY3RpdullLgorICAgICAgIHNhdWYgc2kgbCdvcHRpb24gJ3dyYXBzY2FuJyBlc3QgZOlzYWN0aXbpZS4KIAogCiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KQEAgLTEwMzQsNSArMTAzNCw1IEBACiAgIERlcm5p6HJlcyBtaXNlcyDgIGpvdXIgcGFyIERvbWluaXF1ZSBQZWxs6S4KIAogICBFLW1haWwgOiAgICAgIGRvbWluaXF1ZS5wZWxsZUBnbWFpbC5jb20KLSAgTGFzdCBDaGFuZ2UgOiAyMDExIEp1biAyNQorICBMYXN0IENoYW5nZSA6IDIwMTEgTm92IDI3CiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIudXRmLTggYi9ydW50aW1lL3R1dG9yL3R1dG9yLmZyLnV0Zi04CmluZGV4IDBkZGFiMWQuLjYyODE1MzggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3IuZnIudXRmLTgKKysrIGIvcnVudGltZS90dXRvci90dXRvci5mci51dGYtOApAQCAtNDUxLDcgKzQ1MSw3IEBACiAgIDMuIFRhcGV6ICBjZSAgZXQgY29ycmlnZXogbGUgbW90IChkYW5zIG5vdHJlIGNhcywgdGFwZXogICdpZ25lJy4pCiAKICAgNC4gQXBwdXlleiA8w4ljaGFwPiBldCBwbGFjZXotdm91cyBzdXIgbGUgcHJvY2hhaW4gY2FyYWN0w6hyZSBxdWkgZG9pdAotICAgICDDqnRyZSBjaGFuZ8OpKS4KKyAgICAgw6p0cmUgY2hhbmfDqS4KIAogICA1LiBSw6lww6l0ZXogbGVzIMOpdGFwZXMgMyBldCA0IGp1c3F1J8OgIGNlIHF1ZSBsYSBwcmVtacOocmUgcGhyYXNlIHNvaXQKICAgICAgaWRlbnRpcXVlIMOgIGxhIHNlY29uZGUuCkBAIC01NjAsNyArNTYwLDcgQEAKIC0tLT4gZXJyZXVyIG5lIHMnw6ljcml0IHBhcyAiZXJycmV1dXIiIDsgZXJycmV1dXIgZXN0IHVuZSBlcnJldXIuCiAKIE5PVEUgOiBRdWFuZCBsYSByZWNoZXJjaGUgYXR0ZWludCBsYSBmaW4gZHUgZmljaGllciwgZWxsZSByZXByZW5kIGF1IGTDqWJ1dAotICAgICAgIHNhdWYgc2kgbCdvcHRpb24gJ3dyYXBzY2FuJyBlc3QgZMOpYWN0aXbDqWUuCisgICAgICAgc2F1ZiBzaSBsJ29wdGlvbiAnd3JhcHNjYW4nIGVzdCBkw6lzYWN0aXbDqWUuCiAKIAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CkBAIC0xMDM0LDUgKzEwMzQsNSBAQAogICBEZXJuacOocmVzIG1pc2VzIMOgIGpvdXIgcGFyIERvbWluaXF1ZSBQZWxsw6kuCiAKICAgRS1tYWlsIDogICAgICBkb21pbmlxdWUucGVsbGVAZ21haWwuY29tCi0gIExhc3QgQ2hhbmdlIDogMjAxMSBKdW4gMjUKKyAgTGFzdCBDaGFuZ2UgOiAyMDExIE5vdiAyNwogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRpZmYgLS1naXQgYS9zcmMvZXhfY21kczIuYyBiL3NyYy9leF9jbWRzMi5jCmluZGV4IDdkMWUyODJlLi40YjI1NjRiIDEwMDY0NAotLS0gYS9zcmMvZXhfY21kczIuYworKysgYi9zcmMvZXhfY21kczIuYwpAQCAtMTkzOSw3ICsxOTM5LDcgQEAKIH0KIAogLyoKLSAqIFJldHVybiBUUlVFIGlmIHdpbmRvdyAid2luIiBpcyBlZGl0aW5nIHRoZW4gZmlsZSBhdCB0aGUgY3VycmVudCBhcmd1bWVudAorICogUmV0dXJuIFRSVUUgaWYgd2luZG93ICJ3aW4iIGlzIGVkaXRpbmcgdGhlIGZpbGUgYXQgdGhlIGN1cnJlbnQgYXJndW1lbnQKICAqIGluZGV4LgogICovCiAgICAgc3RhdGljIGludApkaWZmIC0tZ2l0IGEvc3JjL3BvL2NhLnBvIGIvc3JjL3BvL2NhLnBvCmluZGV4IDIwZjNjNGIuLmIzOTdhZTAgMTAwNjQ0Ci0tLSBhL3NyYy9wby9jYS5wbworKysgYi9zcmMvcG8vY2EucG8KQEAgLTEsNiArMSw2IEBACiAjIENhdGFsYW4gbWVzc2FnZXMgZm9yIHZpbS4KLSMgQ29weXJpZ2h0IChDKSAyMDAzLTIwMDggRXJuZXN0IEFkcm9ndekgPGVhZHJvZ3VlQGdteC5uZXQ+LgotIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgorIyBDb3B5cmlnaHQgKEMpIDIwMDMtMjAxMiBFcm5lc3QgQWRyb2d16SA8ZWFkcm9ndWVAZ214Lm5ldD4uCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgVmltIExpY2Vuc2UuCiAjCiBtc2dpZCAiIgogbXNnc3RyICIiCkBAIC0xMyw4ICsxMyw2IEBACiAiTUlNRS1WZXJzaW9uOiAxLjBcbiIKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMVxuIgogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKLSJYLVBvZWRpdC1MYW5ndWFnZTogQ2F0YWxhblxuIgotIlgtUG9lZGl0LUNvdW50cnk6IFNQQUlOXG4iCiAKIG1zZ2lkICJFODI6IENhbm5vdCBhbGxvY2F0ZSBhbnkgYnVmZmVyLCBleGl0aW5nLi4uIgogbXNnc3RyICJFODI6IE5vIHMnaGEgcG9ndXQgYXNzaWduYXIgbWVt8nJpYSBwZXIgY2FwIGJ1ZmZlciwgc29ydGludC4uLiIKZGlmZiAtLWdpdCBhL3NyYy9wby9lby5wbyBiL3NyYy9wby9lby5wbwppbmRleCBiYWQ2NDI0Li4yMGIzOTZjIDEwMDY0NAotLS0gYS9zcmMvcG8vZW8ucG8KKysrIGIvc3JjL3BvL2VvLnBvCkBAIC0yMywxMCArMjMsMTEgQEAKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogVmltKEVzcGVyYW50bylcbiIKICJSZXBvcnQtTXNnaWQtQnVncy1UbzogXG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMDYtMjEgMTc6MjMrMDIwMFxuIgotIlBPLVJldmlzaW9uLURhdGU6IDIwMTEtMDYtMjEgMTc6MjYrMDIwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEyLTAxLTIyIDE1OjM3KzAxMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEyLTAxLTIyIDE1OjM4KzAxMDBcbiIKICJMYXN0LVRyYW5zbGF0b3I6IERvbWluaXF1ZSBQRUxMw4kgPGRvbWluaXF1ZS5wZWxsZUBnbWFpbC5jb20+XG4iCiAiTGFuZ3VhZ2UtVGVhbTogXG4iCisiTGFuZ3VhZ2U6IGVvXG4iCiAiTUlNRS1WZXJzaW9uOiAxLjBcbiIKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLThcbiIKICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCkBAIC01NjIsNyArNTYzLDcgQEAKIAogIywgYy1mb3JtYXQKIG1zZ2lkICJFMTE5OiBOb3QgZW5vdWdoIGFyZ3VtZW50cyBmb3IgZnVuY3Rpb246ICVzIgotbXNnc3RyICJFMTE5OiBOZSBzdWZpxIllIGRhIGFyZ3VtZW50b2ogZGUgZnVua2NpbzogJXMiCittc2dzdHIgIkUxMTk6IE5lIHN1ZmnEiWUgZGEgYXJndW1lbnRvaiBwb3IgZnVua2NpbzogJXMiCiAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTEyMDogVXNpbmcgPFNJRD4gbm90IGluIGEgc2NyaXB0IGNvbnRleHQ6ICVzIgpAQCAtNzQxLDYgKzc0MiwxMCBAQAogbXNnaWQgIkUxMjU6IElsbGVnYWwgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJFMTI1OiBOZXZhbGlkYSBhcmd1bWVudG86ICVzIgogCisjLCBjLWZvcm1hdAorbXNnaWQgIkU4NTM6IER1cGxpY2F0ZSBhcmd1bWVudCBuYW1lOiAlcyIKK21zZ3N0ciAiRTg1MzogUmlwZXRpdGEgbm9tbyBkZSBhcmd1bWVudG86ICVzIgorCiBtc2dpZCAiRTEyNjogTWlzc2luZyA6ZW5kZnVuY3Rpb24iCiBtc2dzdHIgIkUxMjY6IE1hbmthcyBcIjplbmRmdW5jdGlvblwiIgogCkBAIC0yMDM1LDYgKzIwNDAsMTIgQEAKIG1zZ2lkICJFMjI4OiBtYWtlbWFwOiBJbGxlZ2FsIG1vZGUiCiBtc2dzdHIgIkUyMjg6IG1ha2VtYXA6IE5ldmFsaWRhIHJlxJ1pbW8iCiAKK21zZ2lkICJFODUxOiBGYWlsZWQgdG8gY3JlYXRlIGEgbmV3IHByb2Nlc3MgZm9yIHRoZSBHVUkiCittc2dzdHIgIkU4NTE6IE5lIHN1a2Nlc2lzIGtyZWkgbm92YW4gcHJvY2V6b24gcG9yIGxhIGdyYWZpa2EgaW50ZXJmYWNvIgorCittc2dpZCAiRTg1MjogVGhlIGNoaWxkIHByb2Nlc3MgZmFpbGVkIHRvIHN0YXJ0IHRoZSBHVUkiCittc2dzdHIgIkU4NTI6IExhIGlkYSBwcm9jZXpvIG5lIHN1a2Nlc2lzIHN0YXJ0aWdpIGxhIGdyYWZpa2FuIGludGVyZmFjb24iCisKIG1zZ2lkICJFMjI5OiBDYW5ub3Qgc3RhcnQgdGhlIEdVSSIKIG1zZ3N0ciAiRTIyOTogTmUgZWJsYXMgbGFuxIlpIGxhIGdyYWZpa2FuIGludGVyZmFjb24iCiAKQEAgLTQwNTcsNiArNDA2OCw5IEBACiBtc2dpZCAiS2V5cyBkb24ndCBtYXRjaCEiCiBtc2dzdHIgIsWcbG9zaWxvaiBuZSBrb25ncnVhcyEiCiAKK21zZ2lkICJFODU0OiBwYXRoIHRvbyBsb25nIGZvciBjb21wbGV0aW9uIgorbXNnc3RyICJFODU0OiB0cm8gbG9uZ2Egdm9qbyBwb3Iga29tcGxldGlnbyIKKwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRTM0MzogSW52YWxpZCBwYXRoOiAnKipbbnVtYmVyXScgbXVzdCBiZSBhdCB0aGUgZW5kIG9mIHRoZSBwYXRoIG9yIGJlICIKQEAgLTQyMzgsOCArNDI1Miw4IEBACiAiU2VsZWN0ZWQgJXMlbGQgb2YgJWxkIExpbmVzOyAlbGQgb2YgJWxkIFdvcmRzOyAlbGQgb2YgJWxkIENoYXJzOyAlbGQgb2YgJWxkICIKICJCeXRlcyIKIG1zZ3N0ciAiIgotIkFwYXJ0aWdpcyAlcyVsZCBkZSAlbGQgTGluaW9qOyAlbGQgZGUgJWxkIFZvcnRvajsgJWxkIGRlICVsZCBTaWdub2o7ICVsZCBkZSAlIgotImxkIEJhanRvaiIKKyJBcGFydGlnaXMgJXMlbGQgZGUgJWxkIExpbmlvajsgJWxkIGRlICVsZCBWb3J0b2o7ICVsZCBkZSAlbGQgU2lnbm9qOyAlbGQgZGUgIgorIiVsZCBCYWp0b2oiCiAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29sICVzIG9mICVzOyBMaW5lICVsZCBvZiAlbGQ7IFdvcmQgJWxkIG9mICVsZDsgQnl0ZSAlbGQgb2YgJWxkIgpAQCAtNDI1MCw4ICs0MjY0LDggQEAKICJDb2wgJXMgb2YgJXM7IExpbmUgJWxkIG9mICVsZDsgV29yZCAlbGQgb2YgJWxkOyBDaGFyICVsZCBvZiAlbGQ7IEJ5dGUgJWxkIG9mICIKICIlbGQiCiBtc2dzdHIgIiIKLSJLb2wgJXMgZGUgJXM7IExpbmlvICVsZCBkZSAlbGQ7IFZvcnRvICVsZCBkZSAlbGQ7IFNpZ25vICVsZCBkZSAlbGQ7IEJhanRvICUiCi0ibGQgZGUgJWxkIgorIktvbCAlcyBkZSAlczsgTGluaW8gJWxkIGRlICVsZDsgVm9ydG8gJWxkIGRlICVsZDsgU2lnbm8gJWxkIGRlICVsZDsgQmFqdG8gIgorIiVsZCBkZSAlbGQiCiAKICMsIGMtZm9ybWF0CiBtc2dpZCAiKCslbGQgZm9yIEJPTSkiCkBAIC01NTc2LDYgKzU1OTAsOSBAQAogbXNnaWQgIkU0MzA6IFRhZyBmaWxlIHBhdGggdHJ1bmNhdGVkIGZvciAlc1xuIgogbXNnc3RyICJFNDMwOiBWb2pvIGRlIGV0aWtlZGEgZG9zaWVybyB0cnVua2l0YSBwb3IgJXNcbiIKIAorbXNnaWQgIklnbm9yaW5nIGxvbmcgbGluZSBpbiB0YWdzIGZpbGUiCittc2dzdHIgIklnbm9ybyBkZSBsb25nYSBsaW5pbyBlbiBldGlrZWRhIGRvc2llcm8iCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTQzMTogRm9ybWF0IGVycm9yIGluIHRhZ3MgZmlsZSBcIiVzXCIiCiBtc2dzdHIgIkU0MzE6IEVyYXJvIGRlIGZvcm1hdG8gZW4gZXRpa2VkYSBkb3NpZXJvIFwiJXNcIiIKQEAgLTU1OTIsOSArNTYwOSw2IEBACiBtc2dpZCAiRTQzMzogTm8gdGFncyBmaWxlIgogbXNnc3RyICJFNDMzOiBOZW5pdSBldGlrZWRhIGRvc2llcm8iCiAKLW1zZ2lkICJJZ25vcmluZyBsb25nIGxpbmUgaW4gdGFncyBmaWxlIgotbXNnc3RyICJJZ25vcm8gZGUgbG9uZ2EgbGluaW8gZW4gZXRpa2VkYSBkb3NpZXJvIgotCiBtc2dpZCAiRTQzNDogQ2FuJ3QgZmluZCB0YWcgcGF0dGVybiIKIG1zZ3N0ciAiRTQzNDogTmUgZWJsYXMgdHJvdmkgxZ1hYmxvbm9uIGRlIGV0aWtlZG8iCiAKZGlmZiAtLWdpdCBhL3NyYy9wby9mci5wbyBiL3NyYy9wby9mci5wbwppbmRleCA4ODZjZDE3Li44YjNmMjlmIDEwMDY0NAotLS0gYS9zcmMvcG8vZnIucG8KKysrIGIvc3JjL3BvL2ZyLnBvCkBAIC0xNSwxMCArMTUsMTEgQEAKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogVmltKEZyYW7nYWlzKVxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBcbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0wNi0yMSAxNzoyMyswMjAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxMS0wNi0yMSAxNzoyNiswMjAwXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTItMDEtMjIgMTU6MzcrMDEwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTItMDEtMjIgMTU6NDArMDEwMFxuIgogIkxhc3QtVHJhbnNsYXRvcjogRG9taW5pcXVlIFBlbGzpIDxkb21pbmlxdWUucGVsbGVAZ21haWwuY29tPlxuIgogIkxhbmd1YWdlLVRlYW06IFxuIgorIkxhbmd1YWdlOiBmclxuIgogIk1JTUUtVmVyc2lvbjogMS4wXG4iCiAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PUlTT184ODU5LTE1XG4iCiAiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgpAQCAtODE3LDYgKzgxOCwxMCBAQAogbXNnaWQgIkUxMjU6IElsbGVnYWwgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJFMTI1OiBBcmd1bWVudCBpbnZhbGlkZSA6ICVzIgogCisjLCBjLWZvcm1hdAorbXNnaWQgIkU4NTM6IER1cGxpY2F0ZSBhcmd1bWVudCBuYW1lOiAlcyIKK21zZ3N0ciAiRTg1MzogTm9tIGQnYXJndW1lbnQgZHVwbGlxdekgOiAlcyIKKwogbXNnaWQgIkUxMjY6IE1pc3NpbmcgOmVuZGZ1bmN0aW9uIgogbXNnc3RyICJFMTI2OiBJbCBtYW5xdWUgOmVuZGZ1bmN0aW9uIgogCkBAIC0yMjQyLDYgKzIyNDcsMTUgQEAKIG1zZ2lkICJFMjI4OiBtYWtlbWFwOiBJbGxlZ2FsIG1vZGUiCiBtc2dzdHIgIkUyMjg6IG1ha2VtYXAgOiBtb2RlIGludmFsaWRlIgogCittc2dpZCAiRTg1MTogRmFpbGVkIHRvIGNyZWF0ZSBhIG5ldyBwcm9jZXNzIGZvciB0aGUgR1VJIgorbXNnc3RyICIiCisiRTg1MTogyWNoZWMgbG9ycyBkZSBsYSBjculhdGlvbiBkJ3VuIG5vdXZlYXUgcHJvY2Vzc3VzIHBvdXIgbCdpbnRlcmZhY2UgIgorImdyYXBoaXF1ZSIKKworbXNnaWQgIkU4NTI6IFRoZSBjaGlsZCBwcm9jZXNzIGZhaWxlZCB0byBzdGFydCB0aGUgR1VJIgorbXNnc3RyICIiCisiRTg1MjogTGUgcHJvY2Vzc3VzIGZpbHMgbidhIHBhcyBy6XVzc2kg4CBk6W1hcnJlciBsJ2ludGVyZmFjZSBncmFwaGlxdWUiCisKIG1zZ2lkICJFMjI5OiBDYW5ub3Qgc3RhcnQgdGhlIEdVSSIKIG1zZ3N0ciAiRTIyOTogSW1wb3NzaWJsZSBkZSBk6W1hcnJlciBsJ2ludGVyZmFjZSBncmFwaGlxdWUiCiAKQEAgLTQyOTMsNiArNDMwNyw5IEBACiBtc2dpZCAiS2V5cyBkb24ndCBtYXRjaCEiCiBtc2dzdHIgIkxlcyBjbOlzIG5lIGNvcnJlc3BvbmRlbnQgcGFzICEiCiAKK21zZ2lkICJFODU0OiBwYXRoIHRvbyBsb25nIGZvciBjb21wbGV0aW9uIgorbXNnc3RyICJFODU0OiBjaGVtaW4gdHJvcCBsb25nIHBvdXIgY29tcGzodGVtZW50IgorCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJFMzQzOiBJbnZhbGlkIHBhdGg6ICcqKltudW1iZXJdJyBtdXN0IGJlIGF0IHRoZSBlbmQgb2YgdGhlIHBhdGggb3IgYmUgIgpAQCAtNDQ3OCw4ICs0NDk1LDggQEAKICJTZWxlY3RlZCAlcyVsZCBvZiAlbGQgTGluZXM7ICVsZCBvZiAlbGQgV29yZHM7ICVsZCBvZiAlbGQgQ2hhcnM7ICVsZCBvZiAlbGQgIgogIkJ5dGVzIgogbXNnc3RyICIiCi0iJXMlbGQgc3VyICVsZCBMaWduZXMgOyAlbGQgc3VyICVsZCBNb3RzIDsgJWxkIHN1ciAlbGQgQ2FyYWN06HJlcyA7ICVsZCBzdXIgJSIKLSJsZCBvY3RldHMgc+lsZWN0aW9ubulzIgorIiVzJWxkIHN1ciAlbGQgTGlnbmVzIDsgJWxkIHN1ciAlbGQgTW90cyA7ICVsZCBzdXIgJWxkIENhcmFjdOhyZXMgOyAlbGQgc3VyICIKKyIlbGQgb2N0ZXRzIHPpbGVjdGlvbm7pcyIKIAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb2wgJXMgb2YgJXM7IExpbmUgJWxkIG9mICVsZDsgV29yZCAlbGQgb2YgJWxkOyBCeXRlICVsZCBvZiAlbGQiCkBAIC00NDkxLDggKzQ1MDgsOCBAQAogIkNvbCAlcyBvZiAlczsgTGluZSAlbGQgb2YgJWxkOyBXb3JkICVsZCBvZiAlbGQ7IENoYXIgJWxkIG9mICVsZDsgQnl0ZSAlbGQgb2YgIgogIiVsZCIKIG1zZ3N0ciAiIgotIkNvbG9ubmUgJXMgc3VyICVzIDsgTGlnbmUgJWxkIHN1ciAlbGQgOyBNb3QgJWxkIHN1ciAlbGQgOyBDYXJhY3TocmUgJWxkIHN1ciAlIgotImxkIDsgT2N0ZXQgJWxkIHN1ciAlbGQiCisiQ29sb25uZSAlcyBzdXIgJXMgOyBMaWduZSAlbGQgc3VyICVsZCA7IE1vdCAlbGQgc3VyICVsZCA7IENhcmFjdOhyZSAlbGQgc3VyICIKKyIlbGQgOyBPY3RldCAlbGQgc3VyICVsZCIKIAogIywgYy1mb3JtYXQKIG1zZ2lkICIoKyVsZCBmb3IgQk9NKSIKQEAgLTU4MzIsNiArNTg0OSw5IEBACiBtc2dpZCAiRTQzMDogVGFnIGZpbGUgcGF0aCB0cnVuY2F0ZWQgZm9yICVzXG4iCiBtc2dzdHIgIkU0MzA6IENoZW1pbiBkZSBmaWNoaWVycyBkZSBtYXJxdWV1cnMgdHJvbnF16SBwb3VyICVzXG4iCiAKK21zZ2lkICJJZ25vcmluZyBsb25nIGxpbmUgaW4gdGFncyBmaWxlIgorbXNnc3RyICJJZ25vcmUgbG9uZ3VlIGxpZ25lIGRhbnMgbGUgZmljaGllciBkZSBtYXJxdWV1cnMiCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTQzMTogRm9ybWF0IGVycm9yIGluIHRhZ3MgZmlsZSBcIiVzXCIiCiBtc2dzdHIgIkU0MzE6IEVycmV1ciBkZSBmb3JtYXQgZGFucyBsZSBmaWNoaWVyIGRlIG1hcnF1ZXVycyBcIiVzXCIiCkBAIC01ODQ4LDkgKzU4NjgsNiBAQAogbXNnaWQgIkU0MzM6IE5vIHRhZ3MgZmlsZSIKIG1zZ3N0ciAiRTQzMzogQXVjdW4gZmljaGllciBkZSBtYXJxdWV1cnMiCiAKLW1zZ2lkICJJZ25vcmluZyBsb25nIGxpbmUgaW4gdGFncyBmaWxlIgotbXNnc3RyICJJZ25vcmUgbG9uZ3VlIGxpZ25lIGRhbnMgbGUgZmljaGllciBkZSBtYXJxdWV1cnMiCi0KIG1zZ2lkICJFNDM0OiBDYW4ndCBmaW5kIHRhZyBwYXR0ZXJuIgogbXNnc3RyICJFNDM0OiBMZSBtb3RpZiBkZSBtYXJxdWV1ciBlc3QgaW50cm91dmFibGUiCiAKZGlmZiAtLWdpdCBhL3NyYy9wby9ydS5jcDEyNTEucG8gYi9zcmMvcG8vcnUuY3AxMjUxLnBvCmluZGV4IDFhYjA2NzYuLjBlNmYwYTggMTAwNjQ0Ci0tLSBhL3NyYy9wby9ydS5jcDEyNTEucG8KKysrIGIvc3JjL3BvL3J1LmNwMTI1MS5wbwpAQCAtNDg4OCwxNSArNDg4OCwxNSBAQAogbXNnaWQgIkVkaXQgd2l0aCBzaW5nbGUgJlZpbSIKIG1zZ3N0ciAi0OXk4Ory6PDu4uDy/CDiICbu5O3u7CBWaW0iCiAKLW1zZ2lkICImRGlmZiB3aXRoIFZpbSIKLW1zZ3N0ciAiJtHw4OLt6PL8IPEg7+7s7vn8/iBWaW0iCittc2dpZCAiRGlmZiB3aXRoIFZpbSIKK21zZ3N0ciAi0fDg4u3o8vwg8SDv7uzu+fz+IFZpbSIKIAogbXNnaWQgIkVkaXQgd2l0aCAmVmltIgogbXNnc3RyICLQ5Sbk4Ory6PDu4uDy/CDxIO/u7O75/P4gVmltIgogCiAjLiBOb3cgY29uY2F0ZW5hdGUKLW1zZ2lkICJFZGl0IHdpdGggZXhpc3RpbmcgVmltIC0gJiIKLW1zZ3N0ciAi0OXk4Ory6PDu4uDy/CDiIOfg7/P55e3t7uwgVmltIC0gJiIKK21zZ2lkICJFZGl0IHdpdGggZXhpc3RpbmcgVmltIC0gIgorbXNnc3RyICLQ5eTg6vLo8O7i4PL8IOIg5+Dv8/nl7e3u7CBWaW0gLSAiCiAKIG1zZ2lkICJFZGl0cyB0aGUgc2VsZWN0ZWQgZmlsZShzKSB3aXRoIFZpbSIKIG1zZ3N0ciAi0OXk4Ory6PDu4uDy/CDi++Tl6+Xt7fvlIPTg6ev7IPEg7+7s7vn8/iBWaW0iCmRpZmYgLS1naXQgYS9zcmMvcG8vcnUucG8gYi9zcmMvcG8vcnUucG8KaW5kZXggZTVhZDcwNy4uNGViNzgyYiAxMDA2NDQKLS0tIGEvc3JjL3BvL3J1LnBvCisrKyBiL3NyYy9wby9ydS5wbwpAQCAtNDg4OCwxNSArNDg4OCwxNSBAQAogbXNnaWQgIkVkaXQgd2l0aCBzaW5nbGUgJlZpbSIKIG1zZ3N0ciAi0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0LIgJtC+0LTQvdC+0LwgVmltIgogCi1tc2dpZCAiJkRpZmYgd2l0aCBWaW0iCi1tc2dzdHIgIibQodGA0LDQstC90LjRgtGMINGBINC/0L7QvNC+0YnRjNGOIFZpbSIKK21zZ2lkICJEaWZmIHdpdGggVmltIgorbXNnc3RyICLQodGA0LDQstC90LjRgtGMINGBINC/0L7QvNC+0YnRjNGOIFZpbSIKIAogbXNnaWQgIkVkaXQgd2l0aCAmVmltIgogbXNnc3RyICLQoNC1JtC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0YEg0L/QvtC80L7RidGM0Y4gVmltIgogCiAjLiBOb3cgY29uY2F0ZW5hdGUKLW1zZ2lkICJFZGl0IHdpdGggZXhpc3RpbmcgVmltIC0gJiIKLW1zZ3N0ciAi0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0LIg0LfQsNC/0YPRidC10L3QvdC+0LwgVmltIC0gJiIKK21zZ2lkICJFZGl0IHdpdGggZXhpc3RpbmcgVmltIC0gIgorbXNnc3RyICLQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQsiDQt9Cw0L/Rg9GJ0LXQvdC90L7QvCBWaW0gLSAiCiAKIG1zZ2lkICJFZGl0cyB0aGUgc2VsZWN0ZWQgZmlsZShzKSB3aXRoIFZpbSIKIG1zZ3N0ciAi0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0LLRi9C00LXQu9C10L3QvdGL0LUg0YTQsNC50LvRiyDRgSDQv9C+0LzQvtGJ0YzRjiBWaW0iCmRpZmYgLS1naXQgYS9zcmMvcHJvdG8vZXhfZG9jbWQucHJvIGIvc3JjL3Byb3RvL2V4X2RvY21kLnBybwppbmRleCA4YjBiZDdjLi5mNTljNDk0IDEwMDY0NAotLS0gYS9zcmMvcHJvdG8vZXhfZG9jbWQucHJvCisrKyBiL3NyYy9wcm90by9leF9kb2NtZC5wcm8KQEAgLTEsNyArMSw3IEBACiAvKiBleF9kb2NtZC5jICovCiB2b2lkIGRvX2V4bW9kZSBfX0FSR1MoKGludCBpbXByb3ZlZCkpOwogaW50IGRvX2NtZGxpbmVfY21kIF9fQVJHUygoY2hhcl91ICpjbWQpKTsKLWludCBkb19jbWRsaW5lIF9fQVJHUygoY2hhcl91ICpjbWRsaW5lLCBjaGFyX3UgKigqZ2V0bGluZSkoaW50LCB2b2lkICosIGludCksIHZvaWQgKmNvb2tpZSwgaW50IGZsYWdzKSk7CitpbnQgZG9fY21kbGluZSBfX0FSR1MoKGNoYXJfdSAqY21kbGluZSwgY2hhcl91ICooKmZnZXRsaW5lKShpbnQsIHZvaWQgKiwgaW50KSwgdm9pZCAqY29va2llLCBpbnQgZmxhZ3MpKTsKIGludCBnZXRsaW5lX2VxdWFsIF9fQVJHUygoY2hhcl91ICooKmZnZXRsaW5lKShpbnQsIHZvaWQgKiwgaW50KSwgdm9pZCAqY29va2llLCBjaGFyX3UgKigqZnVuYykoaW50LCB2b2lkICosIGludCkpKTsKIHZvaWQgKmdldGxpbmVfY29va2llIF9fQVJHUygoY2hhcl91ICooKmZnZXRsaW5lKShpbnQsIHZvaWQgKiwgaW50KSwgdm9pZCAqY29va2llKSk7CiBpbnQgY2hlY2tmb3JjbWQgX19BUkdTKChjaGFyX3UgKipwcCwgY2hhciAqY21kLCBpbnQgbGVuKSk7CmRpZmYgLS1naXQgYS9zcmMvc3RydWN0cy5oIGIvc3JjL3N0cnVjdHMuaAppbmRleCA3YjcxYTVmLi45MjFhMDQ5IDEwMDY0NAotLS0gYS9zcmMvc3RydWN0cy5oCisrKyBiL3NyYy9zdHJ1Y3RzLmgKQEAgLTE4NDYsNyArMTg0Niw3IEBACiAJCQkJICAgICAgIG9mdGVuLCBrZWVwIGl0IHRoZSBmaXJzdCBpdGVtISkgKi8KIAogI2lmIGRlZmluZWQoRkVBVF9TWU5fSEwpIHx8IGRlZmluZWQoRkVBVF9TUEVMTCkKLSAgICBzeW5ibG9ja19UCSp3X3M7CisgICAgc3luYmxvY2tfVAkqd19zOwkJICAgIC8qIGZvciA6b3duc3ludGF4ICovCiAjZW5kaWYKIAogI2lmZGVmIEZFQVRfV0lORE9XUwpkaWZmIC0tZ2l0IGEvc3JjL3VpLmMgYi9zcmMvdWkuYwppbmRleCAzYjBhZTcyLi43MzIyZjE1IDEwMDY0NAotLS0gYS9zcmMvdWkuYworKysgYi9zcmMvdWkuYwpAQCAtMjM2MywxNCArMjM2MywxNCBAQAogCSAgICAgICBYdExhc3RUaW1lc3RhbXBQcm9jZXNzZWQoWHREaXNwbGF5KG15U2hlbGwpKSwKIAkgICAgICAgY2xpcF94MTFfY29udmVydF9zZWxlY3Rpb25fY2IsIGNsaXBfeDExX2xvc2Vfb3duZXJzaGlwX2NiLAogCSAgICAgICBOVUxMKSA9PSBGYWxzZSkKLQlyZXR1cm4gRkFJTDsKKwkgICAgcmV0dXJuIEZBSUw7CiAgICAgfQogICAgIGVsc2UKICNlbmRpZgogICAgIHsKIAlpZiAoIVhDaGFuZ2VQcm9wZXJ0eShYdERpc3BsYXkobXlTaGVsbCksIFh0V2luZG93KG15U2hlbGwpLAogCQkgIGNiZC0+c2VsX2F0b20sIHRpbWVzdGFtcF9hdG9tLCAzMiwgUHJvcE1vZGVBcHBlbmQsIE5VTEwsIDApKQotCXJldHVybiBGQUlMOworCSAgICByZXR1cm4gRkFJTDsKICAgICB9CiAgICAgLyogRmx1c2ggaXMgcmVxdWlyZWQgaW4gYSB0ZXJtaW5hbCBhcyBub3RoaW5nIGVsc2UgaXMgZG9pbmcgaXQuICovCiAgICAgWEZsdXNoKFh0RGlzcGxheShteVNoZWxsKSk7CmRpZmYgLS1naXQgYS9zcmMvdmVyc2lvbi5jIGIvc3JjL3ZlcnNpb24uYwppbmRleCA1NDVlNDJmLi5iZTVlZjk2IDEwMDY0NAotLS0gYS9zcmMvdmVyc2lvbi5jCisrKyBiL3NyYy92ZXJzaW9uLmMKQEAgLTcxNSw2ICs3MTUsOCBAQAogc3RhdGljIGludCBpbmNsdWRlZF9wYXRjaGVzW10gPQogeyAgIC8qIEFkZCBuZXcgcGF0Y2ggbnVtYmVyIGJlbG93IHRoaXMgbGluZSAqLwogLyoqLworICAgIDQyMywKKy8qKi8KICAgICA0MjIsCiAvKiovCiAgICAgNDIxLAo=