ZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2NoYW5nZS50eHQgYi9ydW50aW1lL2RvYy9jaGFuZ2UudHh0CmluZGV4IGFkODBhMzcuLmFlOGY0YzYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2NoYW5nZS50eHQKKysrIGIvcnVudGltZS9kb2MvY2hhbmdlLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpjaGFuZ2UudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy40LiAgTGFzdCBjaGFuZ2U6IDIwMTYgSmFuIDMxCisqY2hhbmdlLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEZlYiAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtOTgsMTAgKzk4LDEwIEBACiAKIEFuIGV4Y2VwdGlvbiBmb3IgdGhlIGR7bW90aW9ufSBjb21tYW5kOiBJZiB0aGUgbW90aW9uIGlzIG5vdCBsaW5ld2lzZSwgdGhlCiBzdGFydCBhbmQgZW5kIG9mIHRoZSBtb3Rpb24gYXJlIG5vdCBpbiB0aGUgc2FtZSBsaW5lLCBhbmQgdGhlcmUgYXJlIG9ubHkKLWJsYW5rcyBiZWZvcmUgdGhlIHN0YXJ0IGFuZCBhZnRlciB0aGUgZW5kIG9mIHRoZSBtb3Rpb24sIHRoZSBkZWxldGUgYmVjb21lcwotbGluZXdpc2UuICBUaGlzIG1lYW5zIHRoYXQgdGhlIGRlbGV0ZSBhbHNvIHJlbW92ZXMgdGhlIGxpbmUgb2YgYmxhbmtzIHRoYXQgeW91Ci1taWdodCBleHBlY3QgdG8gcmVtYWluLiBVc2UgdGhlIHxvX3Z8IG9wZXJhdG9yIHRvIGZvcmNlIHRoZSBtb3Rpb24gdG8gYmUKLWNoYXJhY3Rlcndpc2UuCitibGFua3MgYmVmb3JlIHRoZSBzdGFydCBhbmQgdGhlcmUgYXJlIG5vIG5vbi1ibGFua3MgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUKK21vdGlvbiwgdGhlIGRlbGV0ZSBiZWNvbWVzIGxpbmV3aXNlLiAgVGhpcyBtZWFucyB0aGF0IHRoZSBkZWxldGUgYWxzbyByZW1vdmVzCit0aGUgbGluZSBvZiBibGFua3MgdGhhdCB5b3UgbWlnaHQgZXhwZWN0IHRvIHJlbWFpbi4gVXNlIHRoZSB8b192fCBvcGVyYXRvciB0bworZm9yY2UgdGhlIG1vdGlvbiB0byBiZSBjaGFyYWN0ZXJ3aXNlLgogCiBUcnlpbmcgdG8gZGVsZXRlIGFuIGVtcHR5IHJlZ2lvbiBvZiB0ZXh0IChlLmcuLCAiZDAiIGluIHRoZSBmaXJzdCBjb2x1bW4pCiBpcyBhbiBlcnJvciB3aGVuICdjcG9wdGlvbnMnIGluY2x1ZGVzIHRoZSAnRScgZmxhZy4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2NoYW5uZWwudHh0IGIvcnVudGltZS9kb2MvY2hhbm5lbC50eHQKaW5kZXggMjM2ODc1MC4uNzkzODA4NyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvY2hhbm5lbC50eHQKKysrIGIvcnVudGltZS9kb2MvY2hhbm5lbC50eHQKQEAgLTEsNCArMSw0IEBACi0qY2hhbm5lbC50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEZlYiAwNworKmNoYW5uZWwudHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNiBGZWIgMTUKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtOSwzNiArOSw3MiBAQAogRFJBRlQgIERSQUZUICBEUkFGVCAgRFJBRlQgIERSQUZUICBEUkFGVCAgRFJBRlQgIERSQUZUICBEUkFGVCAgRFJBRlQKIAogVmltIHVzZXMgY2hhbm5lbHMgdG8gY29tbXVuaWNhdGUgd2l0aCBvdGhlciBwcm9jZXNzZXMuCi1BIGNoYW5uZWwgdXNlcyBhIHNvY2tldC4JCQkJKnNvY2tldC1pbnRlcmZhY2UqCitBIGNoYW5uZWwgdXNlcyBhIHNvY2tldCBvciBwaXBlcwkJCSpzb2NrZXQtaW50ZXJmYWNlKgorSm9icyBjYW4gYmUgdXNlZCB0byBzdGFydCBwcm9jZXNzZXMgYW5kIGNvbW11bmljYXRlIHdpdGggdGhlbS4KIAogVmltIGN1cnJlbnQgc3VwcG9ydHMgdXAgdG8gMTAgc2ltdWx0YW5lb3VzIGNoYW5uZWxzLgogVGhlIE5ldGJlYW5zIGludGVyZmFjZSBhbHNvIHVzZXMgYSBjaGFubmVsLiB8bmV0YmVhbnN8CiAKLTEuIERlbW8JCQkJCXxjaGFubmVsLWRlbW98Ci0yLiBPcGVuaW5nIGEgY2hhbm5lbAkJCXxjaGFubmVsLW9wZW58Ci0zLiBVc2luZyBhIEpTT04gb3IgSlMgY2hhbm5lbAkJfGNoYW5uZWwtdXNlfAotNC4gVmltIGNvbW1hbmRzCQkJCXxjaGFubmVsLWNvbW1hbmRzfAotNS4gVXNpbmcgYSByYXcgY2hhbm5lbAkJCXxjaGFubmVsLXVzZXwKLTYuIEpvYiBjb250cm9sCQkJCXxqb2ItY29udHJvbHwKKzEuIE92ZXJ2aWV3CQkJCXxqb2ItY2hhbm5lbC1vdmVydmlld3wKKzIuIENoYW5uZWwgZGVtbwkJCQl8Y2hhbm5lbC1kZW1vfAorMy4gT3BlbmluZyBhIGNoYW5uZWwJCQl8Y2hhbm5lbC1vcGVufAorNC4gVXNpbmcgYSBKU09OIG9yIEpTIGNoYW5uZWwJCXxjaGFubmVsLXVzZXwKKzUuIENoYW5uZWwgY29tbWFuZHMJCQl8Y2hhbm5lbC1jb21tYW5kc3wKKzYuIFVzaW5nIGEgUkFXIG9yIE5MIGNoYW5uZWwJCXxjaGFubmVsLXJhd3wKKzcuIE1vcmUgY2hhbm5lbCBmdW5jdGlvbnMJCXxjaGFubmVsLW1vcmV8Cis4LiBTdGFydGluZyBhIGpvYiB3aXRoIGEgY2hhbm5lbAl8am9iLXN0YXJ0fAorOS4gU3RhcnRpbmcgYSBqb2Igd2l0aG91dCBhIGNoYW5uZWwJfGpvYi1zdGFydC1ub2NoYW5uZWx8CisxMC4gSm9iIG9wdGlvbnMJCQkJfGpvYi1vcHRpb25zfAorMTEuIENvbnRyb2xsaW5nIGEgam9iCQkJfGpvYi1jb250cm9sfAogCiB7VmkgZG9lcyBub3QgaGF2ZSBhbnkgb2YgdGhlc2UgZmVhdHVyZXN9Ci17b25seSBhdmFpbGFibGUgd2hlbiBjb21waWxlZCB3aXRoIHRoZSB8K2NoYW5uZWx8IGZlYXR1cmV9Cit7b25seSB3aGVuIGNvbXBpbGVkIHdpdGggdGhlIHwrY2hhbm5lbHwgZmVhdHVyZSBmb3IgY2hhbm5lbCBzdHVmZn0KK3tvbmx5IHdoZW4gY29tcGlsZWQgd2l0aCB0aGUgfCtqb2J8IGZlYXR1cmUgZm9yIGpvYiBzdHVmZn0KIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0xLiBEZW1vCQkJCQkJCSpjaGFubmVsLWRlbW8qCisxLiBPdmVydmlldwkJCQkJCSpqb2ItY2hhbm5lbC1vdmVydmlldyoKKworVGhlcmUgYXJlIGZvdXIgbWFpbiB0eXBlcyBvZiBqb2JzOgorMS4gQSBkZWFtb24sIHNlcnZpbmcgc2V2ZXJhbCBWaW0gaW5zdGFuY2VzLgorICAgVmltIGNvbm5lY3RzIHRvIGl0IHdpdGggYSBzb2NrZXQuCisyLiBPbmUgam9iIHdvcmtpbmcgd2l0aCBvbmUgVmltIGluc3RhbmNlLCBhc3luY2hyb25vdXNseS4KKyAgIFVzZXMgYSBzb2NrZXQgb3IgcGlwZXMuCiszLiBBIGpvYiBwZXJmb3JtaW5nIHNvbWUgd29yayBmb3IgYSBzaG9ydCB0aW1lLCBhc3luY2hyb25vdXNseS4KKyAgIFVzZXMgYSBzb2NrZXQgb3IgcGlwZXMuCis0LiBSdW5uaW5nIGEgZmlsdGVyLCBzeW5jaHJvbm91c2x5LgorICAgVXNlcyBwaXBlcy4KKworRm9yIHdoZW4gdXNpbmcgc29ja2V0cyBTZWUgfGpvYi1zdGFydHwsIHxqb2ItbWF5LXN0YXJ0fCBhbmQgfGNoYW5uZWwtb3BlbnwuCitGb3IgMiBhbmQgMywgb25lIG9yIG1vcmUgam9icyB1c2luZyBwaXBlcywgc2VlIHxqb2Itc3RhcnR8LgorRm9yIDQgdXNlIHRoZSAiOntyYW5nZX0hY21kIiBjb21tYW5kLCBzZWUgfGZpbHRlcnwuCisKK092ZXIgdGhlIHNvY2tldCBhbmQgcGlwZXMgdGhlc2UgcHJvdG9jb2xzIGFyZSBhdmFpbGFibGU6CitSQVcJbm90aGluZyBrbm93biwgVmltIGNhbm5vdCB0ZWxsIHdoZXJlIGEgbWVzc2FnZSBlbmRzCitOTAlldmVyeSBtZXNzYWdlIGVuZHMgaW4gYSBOTCAobmV3bGluZSkgY2hhcmFjdGVyCitKU09OCUpTT04gZW5jb2RpbmcgfGpzb25fZW5jb2RlKCl8CitKUwlKYXZhU2NyaXB0IHN0eWxlIEpTT04tbGlrZSBlbmNvZGluZyB8anNfZW5jb2RlKCl8CisKK0NvbW1vbiBjb21iaW5hdGlvbiBhcmU6CistIFVzaW5nIGEgam9iIGNvbm5lY3RlZCB0aHJvdWdoIHBpcGVzIGluIE5MIG1vZGUuICBFLmcuLCB0byBydW4gYSBzdHlsZQorICBjaGVja2VyIGFuZCByZWNlaXZlIGVycm9ycyBhbmQgd2FybmluZ3MuCistIFVzaW5nIGEgZGVhbW9uLCBjb25uZWN0aW5nIG92ZXIgYSBzb2NrZXQgaW4gSlNPTiBtb2RlLiAgRS5nLiB0byBsb29rdXAKKyAgY3Jvc3NzLXJlZnJlbmNlcyBpbiBhIGRhdGFiYXNlLgorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzIuIENoYW5uZWwgZGVtbwkJCQkJCSpjaGFubmVsLWRlbW8qCiAKIFRoaXMgcmVxdWlyZXMgUHl0aG9uLiAgVGhlIGRlbW8gcHJvZ3JhbSBjYW4gYmUgZm91bmQgaW4KICRWSU1SVU5USU1FL3Rvb2xzL2RlbW9zZXJ2ZXIucHkKIFJ1biBpdCBpbiBvbmUgdGVybWluYWwuICBXZSB3aWxsIGNhbGwgdGhpcyBUMS4KIAogUnVuIFZpbSBpbiBhbm90aGVyIHRlcm1pbmFsLiAgQ29ubmVjdCB0byB0aGUgZGVtbyBzZXJ2ZXIgd2l0aDogPgotCWxldCBoYW5kbGUgPSBjaF9vcGVuKCdsb2NhbGhvc3Q6ODc2NScpCisJbGV0IGNoYW5uZWwgPSBjaF9vcGVuKCdsb2NhbGhvc3Q6ODc2NScpCiAKIEluIFQxIHlvdSBzaG91bGQgc2VlOgogCT09PSBzb2NrZXQgb3BlbmVkID09PSB+CiAKIFlvdSBjYW4gbm93IHNlbmQgYSBtZXNzYWdlIHRvIHRoZSBzZXJ2ZXI6ID4KLQllY2hvIGNoX3NlbmRleHByKGhhbmRsZSwgJ2hlbGxvIScpCisJZWNobyBjaF9zZW5kZXhwcihjaGFubmVsLCAnaGVsbG8hJykKIAogVGhlIG1lc3NhZ2UgaXMgcmVjZWl2ZWQgaW4gVDEgYW5kIGEgcmVzcG9uc2UgaXMgc2VudCBiYWNrIHRvIFZpbS4KIFlvdSBjYW4gc2VlIHRoZSByYXcgbWVzc2FnZXMgaW4gVDEuICBXaGF0IFZpbSBzZW5kcyBpczoKQEAgLTU0LDQ3ICs5MCw2MyBAQAogCVsibm9ybWFsIiwidyJdIH4KIAogVG8gaGFuZGxlIGFzeW5jaHJvbm91cyBjb21tdW5pY2F0aW9uIGEgY2FsbGJhY2sgbmVlZHMgdG8gYmUgdXNlZDogPgotCWZ1bmMgTXlIYW5kbGVyKGhhbmRsZSwgbXNnKQorCWZ1bmMgTXlIYW5kbGVyKGNoYW5uZWwsIG1zZykKIAkgIGVjaG8gImZyb20gdGhlIGhhbmRsZXI6ICIgLiBhOm1zZwogCWVuZGZ1bmMKLQljYWxsIGNoX3NlbmRleHByKGhhbmRsZSwgJ2hlbGxvIScsICJNeUhhbmRsZXIiKQorCWNhbGwgY2hfc2VuZGV4cHIoY2hhbm5lbCwgJ2hlbGxvIScsICJNeUhhbmRsZXIiKQorVmltIHdpbGwgbm90IHdhaXQgZm9yIGEgcmVzcG9uc2UuICBOb3cgdGhlIHNlcnZlciBjYW4gc2VuZCB0aGUgcmVzcG9uc2UgbGF0ZXIKK2FuZCBNeUhhbmRsZXIgd2lsbCBiZSBpbnZva2VkLgogCiBJbnN0ZWFkIG9mIGdpdmluZyBhIGNhbGxiYWNrIHdpdGggZXZlcnkgc2VuZCBjYWxsLCBpdCBjYW4gYWxzbyBiZSBzcGVjaWZpZWQKIHdoZW4gb3BlbmluZyB0aGUgY2hhbm5lbDogPgotCWNhbGwgY2hfY2xvc2UoaGFuZGxlKQotCWxldCBoYW5kbGUgPSBjaF9vcGVuKCdsb2NhbGhvc3Q6ODc2NScsIHsnY2FsbGJhY2snOiAiTXlIYW5kbGVyIn0pCi0JY2FsbCBjaF9zZW5kZXhwcihoYW5kbGUsICdoZWxsbyEnLCAwKQorCWNhbGwgY2hfY2xvc2UoY2hhbm5lbCkKKwlsZXQgY2hhbm5lbCA9IGNoX29wZW4oJ2xvY2FsaG9zdDo4NzY1JywgeydjYWxsYmFjayc6ICJNeUhhbmRsZXIifSkKKwljYWxsIGNoX3NlbmRleHByKGNoYW5uZWwsICdoZWxsbyEnLCAwKQogCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLTIuIE9wZW5pbmcgYSBjaGFubmVsCQkJCQkqY2hhbm5lbC1vcGVuKgorMy4gT3BlbmluZyBhIGNoYW5uZWwJCQkJCSpjaGFubmVsLW9wZW4qCiAKIFRvIG9wZW4gYSBjaGFubmVsOiA+Ci0gICAgbGV0IGhhbmRsZSA9IGNoX29wZW4oe2FkZHJlc3N9IFssIHthcmdkaWN0fV0pCisgICAgbGV0IGNoYW5uZWwgPSBjaF9vcGVuKHthZGRyZXNzfSBbLCB7b3B0aW9uc31dKQorCitVc2UgfGNoX3N0YXR1cygpfCB0byBzZWUgaWYgdGhlIGNoYW5uZWwgY291bGQgYmUgb3BlbmVkLgogCiB7YWRkcmVzc30gaGFzIHRoZSBmb3JtICJob3N0bmFtZTpwb3J0Ii4gIEUuZy4sICJsb2NhbGhvc3Q6ODc2NSIuCiAKLXthcmdkaWN0fSBpcyBhIGRpY3Rpb25hcnkgd2l0aCBvcHRpb25hbCBlbnRyaWVzOgore29wdGlvbnN9IGlzIGEgZGljdGlvbmFyeSB3aXRoIG9wdGlvbmFsIGVudHJpZXM6CiAKICJtb2RlIiBjYW4gYmU6CQkJCQkJKmNoYW5uZWwtbW9kZSoKIAkianNvbiIgLSBVc2UgSlNPTiwgc2VlIGJlbG93OyBtb3N0IGNvbnZlbmllbnQgd2F5LiBEZWZhdWx0LgogCSJqcyIgICAtIFVzZSBKYXZhU2NyaXB0IGVuY29kaW5nLCBtb3JlIGVmZmljaWVudCB0aGFuIEpTT04uCisJIm5sIiAgIC0gVXNlIG1lc3NhZ2VzIHRoYXQgZW5kIGluIGEgTkwgY2hhcmFjdGVyCiAJInJhdyIgIC0gVXNlIHJhdyBtZXNzYWdlcwogCiAJCQkJCQkJKmNoYW5uZWwtY2FsbGJhY2sqCi0iY2FsbGJhY2siIGlzIGEgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2hlbiBhIG1lc3NhZ2UgaXMgcmVjZWl2ZWQgdGhhdCBpcyBub3QKLWhhbmRsZWQgb3RoZXJ3aXNlLiAgSXQgZ2V0cyB0d28gYXJndW1lbnRzOiB0aGUgY2hhbm5lbCBoYW5kbGUgYW5kIHRoZSByZWNlaXZlZAotbWVzc2FnZS4gRXhhbXBsZTogPgotCWZ1bmMgSGFuZGxlKGhhbmRsZSwgbXNnKQorImNhbGxiYWNrIglBIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gYSBtZXNzYWdlIGlzIHJlY2VpdmVkIHRoYXQgaXMKKwkJbm90IGhhbmRsZWQgb3RoZXJ3aXNlLiAgSXQgZ2V0cyB0d28gYXJndW1lbnRzOiB0aGUgY2hhbm5lbAorCQloYW5kbGUgYW5kIHRoZSByZWNlaXZlZCBtZXNzYWdlLiBFeGFtcGxlOiA+CisJZnVuYyBIYW5kbGUoY2hhbm5lbCwgbXNnKQogCSAgZWNobyAnUmVjZWl2ZWQ6ICcgLiBhOm1zZwogCWVuZGZ1bmMKLQlsZXQgaGFuZGxlID0gY2hfb3BlbigibG9jYWxob3N0Ojg3NjUiLCB7ImNhbGxiYWNrIjogIkhhbmRsZSJ9KQorCWxldCBjaGFubmVsID0gY2hfb3BlbigibG9jYWxob3N0Ojg3NjUiLCB7ImNhbGxiYWNrIjogIkhhbmRsZSJ9KQorPAorCQlUT0RPOgorImVyci1jYiIJQSBmdW5jdGlvbiBsaWtlICJjYWxsYmFjayIgYnV0IHVzZWQgZm9yIHN0ZGVyci4gIE9ubHkgZm9yIHdoZW4KKwkJdGhlIGNoYW5uZWwgdXNlcyBwaXBlcy4KIAotIndhaXR0aW1lIiBpcyB0aGUgdGltZSB0byB3YWl0IGZvciB0aGUgY29ubmVjdGlvbiB0byBiZSBtYWRlIGluIG1pbGxpc2Vjb25kcy4KLVRoZSBkZWZhdWx0IGlzIHplcm8sIGRvbid0IHdhaXQsIHdoaWNoIGlzIHVzZWZ1bCBpZiB0aGUgc2VydmVyIGlzIHN1cHBvc2VkIHRvCi1iZSBydW5uaW5nIGFscmVhZHkuICBBIG5lZ2F0aXZlIG51bWJlciB3YWl0cyBmb3JldmVyLgorCQlUT0RPOgorImNsb3NlLWNiIglBIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIGNoYW5uZWwgZ2V0cyBjbG9zZWQsIG90aGVyCisJCXRoYW4gYnkgY2FsbGluZyBjaF9jbG9zZSgpLiAgSXQgc2hvdWxkIGJlIGRlZmluZWQgbGlrZSB0aGlzOiA+CisJZnVuYyBNeUNsb3NlSGFuZGxlcihjaGFubmVsKQogCi0idGltZW91dCIgaXMgdGhlIHRpbWUgdG8gd2FpdCBmb3IgYSByZXF1ZXN0IHdoZW4gYmxvY2tpbmcsIHVzaW5nCi1jaF9zZW5kZXhwcigpLiAgQWdhaW4gaW4gbWlsbGlzZWNvbmRzLiAgVGhlIGRlZmF1bHQgaXMgMjAwMCAoMiBzZWNvbmRzKS4KKyJ3YWl0dGltZSIJVGhlIHRpbWUgdG8gd2FpdCBmb3IgdGhlIGNvbm5lY3Rpb24gdG8gYmUgbWFkZSBpbgorCQltaWxsaXNlY29uZHMuICBUaGUgZGVmYXVsdCBpcyB6ZXJvLCBkb24ndCB3YWl0LCB3aGljaCBpcworCQl1c2VmdWwgaWYgdGhlIHNlcnZlciBpcyBzdXBwb3NlZCB0byBiZSBydW5uaW5nIGFscmVhZHkuICBBCisJCW5lZ2F0aXZlIG51bWJlciB3YWl0cyBmb3JldmVyLgorCisidGltZW91dCIJVGhlIHRpbWUgdG8gd2FpdCBmb3IgYSByZXF1ZXN0IHdoZW4gYmxvY2tpbmcsIHVzaW5nCisJCWNoX3NlbmRleHByKCkuICBBZ2FpbiBpbiBtaWxsaXNlY29uZHMuICBUaGUgZGVmYXVsdCBpcyAyMDAwICgyCisJCXNlY29uZHMpLgogCiBXaGVuICJtb2RlIiBpcyAianNvbiIgb3IgImpzIiB0aGUgIm1zZyIgYXJndW1lbnQgaXMgdGhlIGJvZHkgb2YgdGhlIHJlY2VpdmVkCiBtZXNzYWdlLCBjb252ZXJ0ZWQgdG8gVmltIHR5cGVzLgpAQCAtMTAzLDE4ICsxNTUsMjYgQEAKIFdoZW4gIm1vZGUiIGlzICJqc29uIiBvciAianMiIHRoZSAiY2FsbGJhY2siIGlzIG9wdGlvbmFsLiAgV2hlbiBvbWl0dGVkIGl0IGlzCiBvbmx5IHBvc3NpYmxlIHRvIHJlY2VpdmUgYSBtZXNzYWdlIGFmdGVyIHNlbmRpbmcgb25lLgogCi1UaGUgaGFuZGxlciBjYW4gYmUgYWRkZWQgb3IgY2hhbmdlZCBsYXRlcjogPgotICAgIGNhbGwgY2hfc2V0Y2FsbGJhY2soaGFuZGxlLCB7Y2FsbGJhY2t9KQotV2hlbiAiY2FsbGJhY2siIGlzIGVtcHR5ICh6ZXJvIG9yIGFuIGVtcHR5IHN0cmluZykgdGhlIGhhbmRsZXIgaXMgcmVtb3ZlZC4KLU5PVCBJTVBMRU1FTlRFRCBZRVQKK1RPRE86CitUbyBjaGFuZ2UgdGhlIGNoYW5uZWwgb3B0aW9ucyBhZnRlciBvcGVuaW5nIGl0IHVzZSBjaF9zZXRvcHRpb25zKCkuICBUaGUKK2FyZ3VtZW50cyBhcmUgc2ltaWxhciB0byB3aGF0IGlzIHBhc3NlZCB0byBjaF9vcGVuKCksIGJ1dCAid2FpdHRpbWUiIGNhbm5vdCBiZQorZ2l2ZW4sIHNpbmNlIHRoYXQgb25seSBhcHBsaWVzIHRvIG9wZW5pbmcgdGhlIGNoYW5uZWwuCiAKLVRoZSB0aW1lb3V0IGNhbiBiZSBjaGFuZ2VkIGxhdGVyOiA+Ci0gICAgY2FsbCBjaF9zZXR0aW1lb3V0KGhhbmRsZSwge21zZWN9KQotTk9UIElNUExFTUVOVEVEIFlFVAorVGhlIGhhbmRsZXIgY2FuIGJlIGFkZGVkIG9yIGNoYW5nZWQ6ID4KKyAgICBjYWxsIGNoX3NldG9wdGlvbnMoY2hhbm5lbCwgeydjYWxsYmFjayc6IGNhbGxiYWNrfSkKK1doZW4gImNhbGxiYWNrIiBpcyBlbXB0eSAoemVybyBvciBhbiBlbXB0eSBzdHJpbmcpIHRoZSBoYW5kbGVyIGlzIHJlbW92ZWQuCisKK1RoZSB0aW1lb3V0IGNhbiBiZSBjaGFuZ2VkOiA+CisgICAgY2FsbCBjaF9zZXRvcHRpb25zKGNoYW5uZWwsIHsndGltZW91dCc6IG1zZWN9KQorPAogCQkJCQkJCSAgKkU5MDYqCiBPbmNlIGRvbmUgd2l0aCB0aGUgY2hhbm5lbCwgZGlzY29ubmVjdCBpdCBsaWtlIHRoaXM6ID4KLSAgICBjYWxsIGNoX2Nsb3NlKGhhbmRsZSkKKyAgICBjYWxsIGNoX2Nsb3NlKGNoYW5uZWwpCitXaGVuIGEgc29ja2V0IGlzIHVzZWQgdGhpcyB3aWxsIGNsb3NlIHRoZSBzb2NrZXQgZm9yIGJvdGggZGlyZWN0aW9ucy4gIFdoZW4KK3BpcGVzIGFyZSB1c2VkIChzdGRpbi9zdGRvdXQvc3RkZXJyKSB0aGV5IGFyZSBhbGwgY2xvc2VkLiAgVGhpcyBtaWdodCBub3QgYmUKK3doYXQgeW91IHdhbnQhICBTdG9wcGluZyB0aGUgam9iIHdpdGggam9iX3N0b3AoKSBtaWdodCBiZSBiZXR0ZXIuCiAKK1RPRE86CiBDdXJyZW50bHkgdXAgdG8gMTAgY2hhbm5lbHMgY2FuIGJlIGluIHVzZSBhdCB0aGUgc2FtZSB0aW1lLiAqRTg5NyoKIAogV2hlbiB0aGUgY2hhbm5lbCBjYW4ndCBiZSBvcGVuZWQgeW91IHdpbGwgZ2V0IGFuIGVycm9yIG1lc3NhZ2UuICBUaGVyZSBpcyBhCkBAIC0xMjYsMjEgKzE4NiwyNiBAQAogKkU4OTYqICpFNjMwKiAqRTYzMSogCiAKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotMy4gVXNpbmcgYSBKU09OIG9yIEpTIGNoYW5uZWwJCQkJCSpjaGFubmVsLXVzZSoKKzQuIFVzaW5nIGEgSlNPTiBvciBKUyBjaGFubmVsCQkJCQkqY2hhbm5lbC11c2UqCiAKIElmIHttb2RlfSBpcyAianNvbiIgdGhlbiBhIG1lc3NhZ2UgY2FuIGJlIHNlbnQgc3luY2hyb25vdXNseSBsaWtlIHRoaXM6ID4KLSAgICBsZXQgcmVzcG9uc2UgPSBjaF9zZW5kZXhwcihoYW5kbGUsIHtleHByfSkKKyAgICBsZXQgcmVzcG9uc2UgPSBjaF9zZW5kZXhwcihjaGFubmVsLCB7ZXhwcn0pCiBUaGlzIGF3YWl0cyBhIHJlc3BvbnNlIGZyb20gdGhlIG90aGVyIHNpZGUuCiAKIFdoZW4ge21vZGV9IGlzICJqcyIgdGhpcyB3b3JrcyB0aGUgc2FtZSwgZXhjZXB0IHRoYXQgdGhlIG1lc3NhZ2VzIHVzZQotSmF2YVNjcmlwdCBlbmNvZGluZy4gIFNlZSB8anNlbmNvZGUoKXwgZm9yIHRoZSBkaWZmZXJlbmNlLgorSmF2YVNjcmlwdCBlbmNvZGluZy4gIFNlZSB8anNfZW5jb2RlKCl8IGZvciB0aGUgZGlmZmVyZW5jZS4KIAogVG8gc2VuZCBhIG1lc3NhZ2UsIHdpdGhvdXQgaGFuZGxpbmcgYSByZXNwb25zZTogPgotICAgIGNhbGwgY2hfc2VuZGV4cHIoaGFuZGxlLCB7ZXhwcn0sIDApCisgICAgY2FsbCBjaF9zZW5kZXhwcihjaGFubmVsLCB7ZXhwcn0sIDApCiAKIFRvIHNlbmQgYSBtZXNzYWdlIGFuZCBsZXR0aW5nIHRoZSByZXNwb25zZSBoYW5kbGVkIGJ5IGEgc3BlY2lmaWMgZnVuY3Rpb24sCiBhc3luY2hyb25vdXNseTogPgotICAgIGNhbGwgY2hfc2VuZGV4cHIoaGFuZGxlLCB7ZXhwcn0sIHtjYWxsYmFja30pCisgICAgY2FsbCBjaF9zZW5kZXhwcihjaGFubmVsLCB7ZXhwcn0sIHtjYWxsYmFja30pCisKK1ZpbSB3aWxsIG1hdGNoIHRoZSByZXNwb25zZSB3aXRoIHRoZSByZXF1ZXN0IHVzaW5nIHRoZSBtZXNzYWdlIElELiAgT25jZSB0aGUKK3Jlc3BvbnNlIGlzIHJlY2VpdmVkIHRoZSBjYWxsYmFjayB3aWxsIGJlIGludm9rZWQuICBGdXJ0aGVyIHJlc3BvbnNlcyB3aXRoIHRoZQorc2FtZSBJRCB3aWxsIGJlIGlnbm9yZWQuICBJZiB5b3VyIHNlcnZlciBzZW5kcyBiYWNrIG11bHRpcGxlIHJlc3BvbnNlcyB5b3UKK25lZWQgdG8gc2VuZCB0aGVtIHdpdGggSUQgemVybywgdGhleSB3aWxsIGJlIHBhc3NlZCB0byB0aGUgY2hhbm5lbCBjYWxsYmFjay4KIAogVGhlIHtleHByfSBpcyBjb252ZXJ0ZWQgdG8gSlNPTiBhbmQgd3JhcHBlZCBpbiBhbiBhcnJheS4gIEFuIGV4YW1wbGUgb2YgdGhlCiBtZXNzYWdlIHRoYXQgdGhlIHJlY2VpdmVyIHdpbGwgZ2V0IHdoZW4ge2V4cHJ9IGlzIHRoZSBzdHJpbmcgImhlbGxvIjoKQEAgLTE3NSw5ICsyNDAsNyBAQAogaXMgdGhlbiBjb21wbGV0ZWx5IHJlc3BvbnNpYmxlIGZvciBjb3JyZWN0IGVuY29kaW5nIGFuZCBkZWNvZGluZy4KIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci00LiBWaW0gY29tbWFuZHMJCQkJCQkqY2hhbm5lbC1jb21tYW5kcyoKLQotUEFSVExZIElNUExFTUVOVEVEOiBvbmx5ICJleCIgYW5kICJub3JtYWwiIHdvcmsKKzUuIENoYW5uZWwgY29tbWFuZHMJCQkJCSpjaGFubmVsLWNvbW1hbmRzKgogCiBXaXRoIGEgImpzb24iIGNoYW5uZWwgdGhlIHByb2Nlc3MgY2FuIHNlbmQgY29tbWFuZHMgdG8gVmltIHRoYXQgd2lsbCBiZQogaGFuZGxlZCBieSBWaW0gaW50ZXJuYWxseSwgaXQgZG9lcyBub3QgcmVxdWlyZSBhIGhhbmRsZXIgZm9yIHRoZSBjaGFubmVsLgpAQCAtMjUxLDQzICszMTQsMjAyIEBACiAJWyJleHByIiwic2V0bGluZSgnJCcsIFsnb25lJywgJ3R3bycsICd0aHJlZSddKSJdIH4KIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci01LiBVc2luZyBhIHJhdyBjaGFubmVsCQkJCQkqY2hhbm5lbC1yYXcqCis2LiBVc2luZyBhIFJBVyBvciBOTCBjaGFubmVsCQkJCSpjaGFubmVsLXJhdyoKIAogSWYge21vZGV9IGlzICJyYXciIHRoZW4gYSBtZXNzYWdlIGNhbiBiZSBzZW5kIGxpa2UgdGhpczogPgotICAgIGxldCByZXNwb25zZSA9IGNoX3NlbmRyYXcoaGFuZGxlLCB7c3RyaW5nfSkKKyAgICBsZXQgcmVzcG9uc2UgPSBjaF9zZW5kcmF3KGNoYW5uZWwsIHtzdHJpbmd9KQogVGhlIHtzdHJpbmd9IGlzIHNlbnQgYXMtaXMuICBUaGUgcmVzcG9uc2Ugd2lsbCBiZSB3aGF0IGNhbiBiZSByZWFkIGZyb20gdGhlCiBjaGFubmVsIHJpZ2h0IGF3YXkuICBTaW5jZSBWaW0gZG9lc24ndCBrbm93IGhvdyB0byByZWNvZ25pemUgdGhlIGVuZCBvZiB0aGUKLW1lc3NhZ2UgeW91IG5lZWQgdG8gdGFrZSBjYXJlIG9mIGl0IHlvdXJzZWxmLgorbWVzc2FnZSB5b3UgbmVlZCB0byB0YWtlIGNhcmUgb2YgaXQgeW91cnNlbGYuICBUaGUgdGltZW91dCBhcHBsaWVzIGZvciByZWFkaW5nCit0aGUgZmlyc3QgYnl0ZSwgYWZ0ZXIgdGhhdCBpdCB3aWxsIG5vdCB3YWl0IGZvciBhbnl0aGluZyBtb3JlLgorCitJZiB7bW9kZX0gaXMgIm5sIiB5b3UgY2FuIHNlbmQgYSBtZXNzYWdlIGluIGEgc2ltaWxhciB3YXkuICBZb3UgYXJlIGV4cGVjdGVkCit0byBwdXQgaW4gdGhlIE5MIGFmdGVyIGVhY2ggbWVzc2FnZS4gIFRodXMgeW91IGNhbiBhbHNvIHNlbmQgc2V2ZXJhbCBtZXNzYWdlcworZW5kaW5nIGluIGEgTkwgYXQgb25jZS4gIFRoZSByZXNwb25zZSB3aWxsIGJlIHRoZSB0ZXh0IHVwIHRvIGFuZCBpbmNsdWRpbmcgdGhlCitmaXJzdCBOTC4gIFRoaXMgY2FuIGFsc28gYmUganVzdCB0aGUgTkwgZm9yIGFuIGVtcHR5IHJlc3BvbnNlLgorSWYgbm8gTkwgd2FzIHJlYWQgYmVmb3JlIHRoZSBjaGFubmVsIHRpbWVvdXQgYW4gZW1wdHkgc3RyaW5nIGlzIHJldHVybmVkLgogCiBUbyBzZW5kIGEgbWVzc2FnZSwgd2l0aG91dCBleHBlY3RpbmcgYSByZXNwb25zZTogPgotICAgIGNhbGwgY2hfc2VuZHJhdyhoYW5kbGUsIHtzdHJpbmd9LCAwKQorICAgIGNhbGwgY2hfc2VuZHJhdyhjaGFubmVsLCB7c3RyaW5nfSwgMCkKIFRoZSBwcm9jZXNzIGNhbiBzZW5kIGJhY2sgYSByZXNwb25zZSwgdGhlIGNoYW5uZWwgaGFuZGxlciB3aWxsIGJlIGNhbGxlZCB3aXRoCiBpdC4KIAogVG8gc2VuZCBhIG1lc3NhZ2UgYW5kIGxldHRpbmcgdGhlIHJlc3BvbnNlIGhhbmRsZWQgYnkgYSBzcGVjaWZpYyBmdW5jdGlvbiwKIGFzeW5jaHJvbm91c2x5OiA+Ci0gICAgY2FsbCBjaF9zZW5kcmF3KGhhbmRsZSwge3N0cmluZ30sIHtjYWxsYmFja30pCisgICAgY2FsbCBjaF9zZW5kcmF3KGNoYW5uZWwsIHtzdHJpbmd9LCB7Y2FsbGJhY2t9KQogCi1UaGlzIHtzdHJpbmd9IGNhbiBhbHNvIGJlIEpTT04sIHVzZSB8anNvbmVuY29kZSgpfCB0byBjcmVhdGUgaXQgYW5kCi18anNvbmRlY29kZSgpfCB0byBoYW5kbGUgYSByZWNlaXZlZCBKU09OIG1lc3NhZ2UuCitUaGlzIHtzdHJpbmd9IGNhbiBhbHNvIGJlIEpTT04sIHVzZSB8anNvbl9lbmNvZGUoKXwgdG8gY3JlYXRlIGl0IGFuZAorfGpzb25fZGVjb2RlKCl8IHRvIGhhbmRsZSBhIHJlY2VpdmVkIEpTT04gbWVzc2FnZS4KIAogSXQgaXMgbm90IHBvc3NpYmxlIHRvIHVzZSB8Y2hfc2VuZGV4cHIoKXwgb24gYSByYXcgY2hhbm5lbC4KIAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci02LiBKb2IgY29udHJvbAkJCQkJCSpqb2ItY29udHJvbCoKKzcuIE1vcmUgY2hhbm5lbCBmdW5jdGlvbnMJCQkJKmNoYW5uZWwtbW9yZSoKIAotTk9UIElNUExFTUVOVEVEIFlFVAotCi1UbyBzdGFydCBhbm90aGVyIHByb2Nlc3M6ID4KLSAgICBjYWxsIHN0YXJ0am9iKHtjb21tYW5kfSkKLQotVGhpcyBkb2VzIG5vdCB3YWl0IGZvciB7Y29tbWFuZH0gdG8gZXhpdC4KK1RvIG9idGFpbiB0aGUgc3RhdHVzIG9mIGEgY2hhbm5lbDogY2hfc3RhdHVzKGNoYW5uZWwpLiAgVGhlIHBvc3NpYmxlIHJlc3VsdHMKK2FyZToKKwkiZmFpbCIJCUZhaWxlZCB0byBvcGVuIHRoZSBjaGFubmVsLgorCSJvcGVuIgkJVGhlIGNoYW5uZWwgY2FuIGJlIHVzZWQuCisJImNsb3NlZCIJVGhlIGNoYW5uZWwgd2FzIGNsb3NlZC4KIAogVE9ETzoKK1RvIG9iamFpbiB0aGUgam9iIGFzc29jaWF0ZWQgd2l0aCBhIGNoYW5uZWw6IGNoX2dldGpvYihjaGFubmVsKQogCi0gICAgbGV0IGhhbmRsZSA9IHN0YXJ0am9iKHtjb21tYW5kfSwgJ3MnKSAgICAgICAgICAgICMgdXNlcyBzdGRpbi9zdGRvdXQKLSAgICBsZXQgaGFuZGxlID0gc3RhcnRqb2Ioe2NvbW1hbmR9LCAnJywge2FkZHJlc3N9KSAgIyB1c2VzIHNvY2tldAotICAgIGxldCBoYW5kbGUgPSBzdGFydGpvYih7Y29tbWFuZH0sICdkJywge2FkZHJlc3N9KSAjIHN0YXJ0IGlmIGNvbm5lY3QgZmFpbHMKK1RPRE86CitUbyByZWFkIG9uZSBtZXNzYWdlIGZyb20gYSBjaGFubmVsOiA+CisJbGV0IG91dHB1dCA9IGNoX3JlYWQoY2hhbm5lbCkKK1RoaXMgdXNlcyB0aGUgY2hhbm5lbCB0aW1lb3V0LiAgVG8gcmVhZCB3aXRob3V0IGEgdGltZW91dCwganVzdCBnZXQgYW55CittZXNzYWdlIHRoYXQgaXMgYXZhaWxhYmxlOiA+CisJbGV0IG91dHB1dCA9IGNoX3JlYWQoY2hhbm5lbCwgMCkKK1doZW4gbm8gbWVzc2FnZSB3YXMgYXZhaWxhYmxlIHRoZW4gdGhlIHJlc3VsdCBpcyB2Om5vbmUgZm9yIGEgSlNPTiBvciBKUyBtb2RlCitjaGFubmVscywgYW4gZW1wdHkgc3RyaW5nIGZvciBhIFJBVyBvciBOTCBjaGFubmVsLgorCitUbyByZWFkIGFsbCBvdXRwdXQgZnJvbSBhIFJBVyBvciBOTCBjaGFubmVsIHRoYXQgaXMgYXZhaWxhYmxlOiA+CisJbGV0IG91dHB1dCA9IGNoX3JlYWRhbGwoY2hhbm5lbCkKK1RvIHJlYWQgdGhlIGVycm9yIG91dHB1dDogPgorCWxldCBvdXRwdXQgPSBjaF9yZWFkYWxsKGNoYW5uZWwsICJlcnIiKQorVE9ETzogdXNlIGNoYW5uZWwgdGltZW91dCwgbm8gdGltZW91dCBvciBzcGVjaWZ5IHRpbWVvdXQ/CisKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorOC4gU3RhcnRpbmcgYSBqb2Igd2l0aCBhIGNoYW5uZWwJCQkqam9iLXN0YXJ0KiAqam9iKgorCitUbyBzdGFydCBhIGpvYiBhbmQgb3BlbiBhIGNoYW5uZWwgZm9yIHN0ZGluL3N0ZG91dC9zdGRlcnI6ID4KKyAgICBsZXQgam9iID0gam9iX3N0YXJ0KGNvbW1hbmQsIHtvcHRpb25zfSkKKworWW91IGNhbiBnZXQgdGhlIGNoYW5uZWwgd2l0aDogPgorICAgIGxldCBjaGFubmVsID0gam9iX2dldGNoYW5uZWwoam9iKQorCitUaGUgY2hhbm5lbCB3aWxsIHVzZSBOTCBtb2RlLiAgSWYgeW91IHdhbnQgYW5vdGhlciBtb2RlIGl0J3MgYmVzdCB0byBzcGVjaWZ5Cit0aGlzIGluIHtvcHRpb25zfS4gIFdoZW4gY2hhbmdpbmcgdGhlIG1vZGUgbGF0ZXIgc29tZSB0ZXh0IG1heSBoYXZlIGFscmVhZHkKK2JlZW4gcmVjZWl2ZWQgYW5kIG5vdCBwYXJzZWQgY29ycmVjdGx5LgorCitJZiB0aGUgY29tbWFuZCBwcm9kdWNlcyBhIGxpbmUgb2Ygb3V0cHV0IHRoYXQgeW91IHdhbnQgdG8gZGVhbCB3aXRoLCBzcGVjaWZ5CithIGhhbmRsZXIgZm9yIHN0ZG91dDogPgorICAgIGxldCBqb2IgPSBqb2Jfc3RhcnQoY29tbWFuZCwgeyJvdXQtY2IiOiAiTXlIYW5kbGVyIn0pCitUaGUgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUgY2hhbm5lbCBhbmQgYSBtZXNzYWdlLiBZb3Ugd291bGQgZGVmaW5lCitpdCBsaWtlIHRoaXM6ID4KKyAgICBmdW5jIE15SGFuZGxlcihjaGFubmVsLCBtc2cpCisKK1dpdGhvdXQgdGhlIGhhbmRsZXIgeW91IG5lZWQgdG8gcmVhZCB0aGUgb3V0cHV0IHdpdGggY2hfcmVhZCgpLgorCitUaGUgaGFuZGxlciBkZWZpbmVkIGZvciAib3V0LWNiIiB3aWxsIGFsc28gcmVjZWl2ZSBzdGRlcnIuICBJZiB5b3Ugd2FudCB0bworaGFuZGxlIHRoYXQgc2VwYXJhdGVseSwgYWRkIGFuICJlcnItY2IiIGhhbmRsZXI6ID4KKyAgICBsZXQgam9iID0gam9iX3N0YXJ0KGNvbW1hbmQsIHsib3V0LWNiIjogIk15SGFuZGxlciIsCisJICAgIFwJCQkgICJlcnItY2IiOiAiRXJySGFuZGxlciJ9KQorCitZb3UgY2FuIHNlbmQgYSBtZXNzYWdlIHRvIHRoZSBjb21tYW5kIHdpdGggY2hfc2VuZHJhdygpLiAgSWYgdGhlIGNoYW5uZWwgaXMgaW4KK0pTT04gb3IgSlMgbW9kZSB5b3UgY2FuIHVzZSBjaF9zZW5kZXhwcigpLgorCitUaGVyZSBhcmUgc2V2ZXJhbCBvcHRpb25zIHlvdSBjYW4gdXNlLCBzZWUgfGpvYi1vcHRpb25zfC4KKworVE9ETzoKK1RvIHJ1biBhIGpvYiBhbmQgcmVhZCBpdHMgb3V0cHV0IG9uY2UgaXQgaXMgZG9uZTogPgorCisJbGV0IGpvYiA9IGpvYl9zdGFydCh7Y29tbWFuZH0sIHsnZXhpdC1jYic6ICdNeUhhbmRsZXInfSkKKwlmdW5jIE15SGFuZGxlcihqb2IsIHN0YXR1cykKKwkgIGxldCBjaGFubmVsID0gam9iX2dldGNoYW5uZWwoKQorCSAgbGV0IG91dHB1dCA9IGNoX3JlYWRhbGwoY2hhbm5lbCkKKwkgICIgcGFyc2Ugb3V0cHV0CisJZW5kZnVuYworCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzkuIFN0YXJ0aW5nIGEgam9iIHdpdGhvdXQgYSBjaGFubmVsCQkJKmpvYi1zdGFydC1ub2NoYW5uZWwqCisKK1RvIHN0YXJ0IGFub3RoZXIgcHJvY2VzcyB3aXRob3V0IGNyZWF0aW5nIGEgY2hhbm5lbDogPgorICAgIGxldCBqb2IgPSBqb2Jfc3RhcnQoY29tbWFuZCwgeyJpbi1pbyI6ICJudWxsIiwgIm91dC1pbyI6ICJudWxsIn0pCisKK1RoaXMgc3RhcnRzIHtjb21tYW5kfSBpbiB0aGUgYmFja2dyb3VuZCwgVmltIGRvZXMgbm90IHdhaXQgZm9yIGl0IHRvIGZpbmlzaC4KKworVE9ETzoKK1doZW4gVmltIHNlZXMgdGhhdCBuZWl0aGVyIHN0ZGluLCBzdGRvdXQgb3Igc3RkZXJyIGFyZSBjb25uZWN0ZWQsIG5vIGNoYW5uZWwKK3dpbGwgYmUgY3JlYXRlZC4gIE9mdGVuIHlvdSB3aWxsIHdhbnQgdG8gaW5jbHVkZSByZWRpcmVjdGlvbiBpbiB0aGUgY29tbWFuZCB0bworYXZvaWQgaXQgZ2V0dGluZyBzdHVjay4KKworVGhlcmUgYXJlIHNldmVyYWwgb3B0aW9ucyB5b3UgY2FuIHVzZSwgc2VlIHxqb2Itb3B0aW9uc3wuCisKK1RPRE86CQkJCQkJCSpqb2ItbWF5LXN0YXJ0KgorVG8gc3RhcnQgYSBqb2Igb25seSB3aGVuIGNvbm5lY3RpbmcgdG8gYW4gYWRkcmVzcyBkb2VzIG5vdCB3b3JrIHVzZQoram9iX21heXN0YXJ0KCdjb21tYW5kJywge2FkZHJlc3N9LCB7b3B0aW9uc30pLCBGb3IgRXhhbXBsZTogPgorCWxldCBqb2IgPSBqb2JfbWF5c3RhcnQoY29tbWFuZCwgYWRkcmVzcywgeyJ3YWl0dGltZSI6IDEwMDB9KQorCWxldCBjaGFubmVsID0gam9iX2dldGhhbmRsZShqb2IpCisKK1RoaXMgY29tZXMgZG93biB0bzogPgorCWxldCBjaGFubmVsID0gY2hfb3BlbihhZGRyZXNzLCB7IndhaXR0aW1lIjogMH0pCisJaWYgY2hfc3RhdHVzKGNoYW5uZWwpID09ICJmYWlsIgorCSAgbGV0IGpvYiA9IGpvYl9zdGFydChjb21tYW5kKQorCSAgbGV0IGNoYW5uZWwgPSBjaF9vcGVuKGFkZHJlc3MsIHsid2FpdHRpbWUiOiAxMDAwfSkKKwkgIGNhbGwgam9iX3NldGhhbmRsZShjaGFubmVsKQorCWVuZGlmCitOb3RlIHRoYXQgdGhlIHNwZWNpZmllZCB3YWl0dGltZSBhcHBsaWVzIHRvIHdoZW4gdGhlIGpvYiBoYXMgYmVlbiBzdGFydGVkLgorVGhpcyBnaXZlcyB0aGUgam9iIHNvbWUgdGltZSB0byBtYWtlIHRoZSBwb3J0IGF2YWlsYWJsZS4KKworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisxMC4gSm9iIG9wdGlvbnMJCQkJCQkqam9iLW9wdGlvbnMqCisKK1RoZSB7b3B0aW9uc30gYXJndW1lbnQgaW4gam9iX3N0YXJ0KCkgaXMgYSBkaWN0aW9uYXJ5LiAgQWxsIGVudHJpZXMgYXJlCitvcHRpb25hbC4gIFRoZSBzYW1lIG9wdGlvbnMgY2FuIGJlIHVzZWQgd2l0aCBqb2Jfc2V0b3B0aW9ucyhqb2IsIHtvcHRpb25zfSkuCisKK1RPRE86CQkJCQkJKmpvYi1vdXQtY2IqCisib3V0LWNiIjogaGFuZGxlcglDYWxsYmFjayBmb3Igd2hlbiB0aGVyZSBpcyBzb21ldGhpbmcgdG8gcmVhZCBvbgorCQkJc3Rkb3V0LgorVE9ETzoJCQkJCQkqam9iLWVyci1jYioKKyJlcnItY2IiOiBoYW5kbGVyCUNhbGxiYWNrIGZvciB3aGVuIHRoZXJlIGlzIHNvbWV0aGluZyB0byByZWFkIG9uCisJCQlzdGRlcnIuICBEZWZhdWx0cyB0byB0aGUgc2FtZSBjYWxsYmFjayBhcyAib3V0LWNiIi4KK1RPRE86CQkJCQkJKmpvYi1jbG9zZS1jYioKKyJjbG9zZS1jYiI6IGhhbmRsZXIJQ2FsbGJhY2sgZm9yIHdoZW4gdGhlIGNoYW5uZWwgaXMgY2xvc2VkLiAgU2FtZSBhcworCQkJImNsb3NlLWNiIiBvbiBjaF9vcGVuKCkuCitUT0RPOgkJCQkJCSpqb2ItZXhpdC1jYioKKyJleGl0LWNiIjogaGFuZGxlcglDYWxsYmFjayBmb3Igd2hlbiB0aGUgam9iIGVuZHMuICBUaGUgYXJndW1lbnRzIGFyZSB0aGUKKwkJCWpvYiBhbmQgdGhlIGV4aXQgc3RhdHVzLgorVE9ETzoJCQkJCQkqam9iLWtpbGxvbmV4aXQqCisia2lsbG9uZXhpdCI6IDEJCVN0b3AgdGhlIGpvYiB3aGVuIFZpbSBleGl0cy4KKyJraWxsb25leGl0IjogMAkJRG8gbm90IHN0b3AgdGhlIGpvYiB3aGVuIFZpbSBleGl0cy4KKwkJCVRoZSBkZWZhdWx0IGlzIDEuCitUT0RPOgkJCQkJCSpqb2ItdGVybSoKKyJ0ZXJtIjogIm9wZW4iCQlTdGFydCBhIHRlcm1pbmFsIGFuZCBjb25uZWN0IHRoZSBqb2IKKwkJCXN0ZGluL3N0ZG91dC9zdGRlcnIgdG8gaXQuCisKK1RPRE86CQkJCQkJKmpvYi1pbi1pbyoKKyJpbi1pbyI6ICJudWxsIgkJZGlzY29ubmVjdCBzdGRpbgorImluLWlvIjogInBpcGUiCQlzdGRpbiBpcyBjb25uZWN0ZWQgdG8gdGhlIGNoYW5uZWwgKGRlZmF1bHQpCisiaW4taW8iOiAiZmlsZSIJCXN0ZGluIHJlYWRzIGZyb20gYSBmaWxlCisiaW4tZmlsZSI6ICIvcGF0aC9maWxlIgl0aGUgZmlsZSB0byByZWFkIGZyb20KKworVE9ETzoJCQkJCQkqam9iLW91dC1pbyoKKyJvdXQtaW8iOiAibnVsbCIJZGlzY29ubmVjdCBzdGRvdXQKKyJvdXQtaW8iOiAicGlwZSIJc3Rkb3V0IGlzIGNvbm5lY3RlZCB0byB0aGUgY2hhbm5lbCAoZGVmYXVsdCkKKyJvdXQtaW8iOiAiZmlsZSIJc3Rkb3V0IHdyaXRlcyB0byBhIGZpbGUKKyJvdXQtZmlsZSI6ICIvcGF0aC9maWxlIiB0aGUgZmlsZSB0byB3cml0ZSB0bworIm91dC1pbyI6ICJidWZmZXIiIAlzdGRvdXQgYXBwZW5kcyB0byBhIGJ1ZmZlcgorIm91dC1idWZmZXIiOiAibmFtZSIgCWJ1ZmZlciB0byBhcHBlbmQgdG8KKworVE9ETzoJCQkJCQkqam9iLWVyci1pbyoKKyJlcnItaW8iOiAib3V0IgkJc2FtZSBhcyBzdGRvdXQgKGRlZmF1bHQpCisiZXJyLWlvIjogIm51bGwiCWRpc2Nvbm5lY3Qgc3RkZXJyCisiZXJyLWlvIjogInBpcGUiCXN0ZGVyciBpcyBjb25uZWN0ZWQgdG8gdGhlIGNoYW5uZWwKKyJlcnItaW8iOiAiZmlsZSIJc3RkZXJyIHdyaXRlcyB0byBhIGZpbGUKKyJlcnItZmlsZSI6ICIvcGF0aC9maWxlIiB0aGUgZmlsZSB0byB3cml0ZSB0bworImVyci1pbyI6ICJidWZmZXIiIAlzdGRlcnIgYXBwZW5kcyB0byBhIGJ1ZmZlcgorImVyci1idWZmZXIiOiAibmFtZSIgCWJ1ZmZlciB0byBhcHBlbmQgdG8KKworVE9ETzogbW9yZSBvcHRpb25zCisKKworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisxMS4gQ29udHJvbGxpbmcgYSBqb2IJCQkJCSpqb2ItY29udHJvbCoKKworVG8gZ2V0IHRoZSBzdGF0dXMgb2YgYSBqb2I6ID4KKwllY2hvIGpvYl9zdGF0dXMoam9iKQorCitUbyBtYWtlIGEgam9iIHN0b3AgcnVubmluZzogPgorCWpvYl9zdG9wKGpvYikKKworVGhpcyBpcyB0aGUgbm9ybWFsIHdheSB0byBlbmQgYSBqb2IuIE9uIFVuaXggaXQgc2VuZHMgYSBTSUdURVJNIHRvIHRoZSBqb2IuCitJdCBpcyBwb3NzaWJsZSB0byB1c2Ugb3RoZXIgd2F5cyB0byBzdG9wIHRoZSBqb2IsIG9yIGV2ZW4gc2VuZCBhcmJpdHJhcnkKK3NpZ25hbHMuICBFLmcuIHRvIGZvcmNlIGEgam9iIHRvIHN0b3AsICJraWxsIGl0IjogPgorCWpvYl9zdG9wKGpvYiwgImtpbGwiKQorCitGb3IgbW9yZSBvcHRpb25zIHNlZSB8am9iX3N0b3AoKXwuCiAKIAogIHZpbTp0dz03ODp0cz04OmZ0PWhlbHA6bm9ybDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2VkaXRpbmcudHh0IGIvcnVudGltZS9kb2MvZWRpdGluZy50eHQKaW5kZXggYzhjYjU5OC4uN2ZhMTAwOCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZWRpdGluZy50eHQKKysrIGIvcnVudGltZS9kb2MvZWRpdGluZy50eHQKQEAgLTEsNCArMSw0IEBACi0qZWRpdGluZy50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEZlYiAwMQorKmVkaXRpbmcudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNiBGZWIgMTEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTQwMywxNiArNDAzLDIxIEBACiBFeGFtcGxlOiA+CiAJOm4gKiovKi50eHQKIEZpbmRzIGZpbGVzOgotCXR0dC50eHQKLQlzdWJkaXIvdHR0LnR4dAotCWEvYi9jL2QvdHR0LnR4dAotV2hlbiBub24td2lsZGNhcmQgY2hhcmFjdGVycyBhcmUgdXNlZCB0aGVzZSBhcmUgb25seSBtYXRjaGVkIGluIHRoZSBmaXJzdAotZGlyZWN0b3J5LiAgRXhhbXBsZTogPgotCTpuIC91c3IvaW5jKiovKi5oCisJYWFhLnR4dCB+CisJc3ViZGlyL2JiYi50eHQgfgorCWEvYi9jL2QvY2NjLnR4dCB+CitXaGVuIG5vbi13aWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSB1c2VkIHJpZ2h0IGJlZm9yZSBvciBhZnRlciAiKioiIHRoZXNlIGFyZQorb25seSBtYXRjaGVkIGluIHRoZSB0b3AgZGlyZWN0b3J5LiAgVGhleSBhcmUgbm90IHVzZWQgZm9yIGRpcmVjdG9yaWVzIGZ1cnRoZXIKK2Rvd24gaW4gdGhlIHRyZWUuIEZvciBleGFtcGxlOiA+CisJOm4gL3Vzci9pbmMqKi90eXBlcy5oCiBGaW5kcyBmaWxlczoKLQkvdXNyL2luY2x1ZGUvdHlwZXMuaAotCS91c3IvaW5jbHVkZS9zeXMvdHlwZXMuaAotCS91c3IvaW5jX29sZC90eXBlcy5oCisJL3Vzci9pbmNsdWRlL3R5cGVzLmggfgorCS91c3IvaW5jbHVkZS9zeXMvdHlwZXMuaCB+CisJL3Vzci9pbmMvb2xkL3R5cGVzLmggfgorTm90ZSB0aGF0IHRoZSBwYXRoIHdpdGggIi9zeXMiIGlzIGluY2x1ZGVkIGJlY2F1c2UgaXQgZG9lcyBub3QgbmVlZCB0byBtYXRjaAorIi9pbmMiLiAgVGh1cyBpdCdzIGxpa2UgbWF0Y2hpbmcgIi91c3IvaW5jKi8qLyouLi4iLCBub3QKKyIvdXNyL2luYyovaW5jKi9pbmMqIi4KKwogCQkJCQkqYmFja3RpY2stZXhwYW5zaW9uKiAqYC1leHBhbnNpb24qCiBPbiBVbml4IGFuZCBhIGZldyBvdGhlciBzeXN0ZW1zIHlvdSBjYW4gYWxzbyB1c2UgYmFja3RpY2tzIGZvciB0aGUgZmlsZSBuYW1lCiBhcmd1bWVudCwgZm9yIGV4YW1wbGU6ID4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2V2YWwudHh0IGIvcnVudGltZS9kb2MvZXZhbC50eHQKaW5kZXggNjM0MzhjOS4uNWEwM2ZjZiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZXZhbC50eHQKKysrIGIvcnVudGltZS9kb2MvZXZhbC50eHQKQEAgLTM3LDcgKzM3LDcgQEAKIAogMS4xIFZhcmlhYmxlIHR5cGVzIH4KIAkJCQkJCQkqRTcxMioKLVRoZXJlIGFyZSBlaWdodCB0eXBlcyBvZiB2YXJpYWJsZXM6CitUaGVyZSBhcmUgbmluZSB0eXBlcyBvZiB2YXJpYWJsZXM6CiAKIE51bWJlcgkJQSAzMiBvciA2NCBiaXQgc2lnbmVkIG51bWJlci4gIHxleHByLW51bWJlcnwgKk51bWJlcioKIAkJRXhhbXBsZXM6ICAtMTIzICAweDEwICAwMTc3CkBAIC02MSw3ICs2MSw5IEBACiAKIFNwZWNpYWwJCXY6ZmFsc2UsIHY6dHJ1ZSwgdjpub25lIGFuZCB2Om51bGwKIAotSm9iCQlVc2VkIGZvciBqb2IgY29udHJvbCwgc2VlIHxqb2Jfc3RhcnQoKXwuCitKb2IJCVVzZWQgZm9yIGEgam9iLCBzZWUgfGpvYl9zdGFydCgpfC4KKworQ2hhbm5lbAkJVXNlZCBmb3IgYSBjaGFubmVsLCBzZWUgfGNoX29wZW4oKXwuCiAKIFRoZSBOdW1iZXIgYW5kIFN0cmluZyB0eXBlcyBhcmUgY29udmVydGVkIGF1dG9tYXRpY2FsbHksIGRlcGVuZGluZyBvbiBob3cgdGhleQogYXJlIHVzZWQuCkBAIC0xMDAsNyArMTAyLDcgQEAKIHVzZSBlbXB0eSgpOiA+CiAJOmlmICFlbXB0eSgiZm9vIikKIDwKLQkJCSpFNzQ1KiAqRTcyOCogKkU3MDMqICpFNzI5KiAqRTczMCogKkU3MzEqICpFOTA4KiAqRTkxMCoKKwkJKkU3NDUqICpFNzI4KiAqRTcwMyogKkU3MjkqICpFNzMwKiAqRTczMSogKkU5MDgqICpFOTEwKiAqRTkxMyoKIExpc3QsIERpY3Rpb25hcnksIEZ1bmNyZWYgYW5kIEpvYiB0eXBlcyBhcmUgbm90IGF1dG9tYXRpY2FsbHkgY29udmVydGVkLgogCiAJCQkJCQkJKkU4MDUqICpFODA2KiAqRTgwOCoKQEAgLTEwOCw3ICsxMTAsNyBAQAogdGhlcmUgaXMgbm8gYXV0b21hdGljIGNvbnZlcnNpb24gb2YgRmxvYXQuICBZb3UgY2FuIHVzZSBzdHIyZmxvYXQoKSBmb3IgU3RyaW5nCiB0byBGbG9hdCwgcHJpbnRmKCkgZm9yIEZsb2F0IHRvIFN0cmluZyBhbmQgZmxvYXQybnIoKSBmb3IgRmxvYXQgdG8gTnVtYmVyLgogCi0JCQkJKkU4OTEqICpFODkyKiAqRTg5MyogKkU4OTQqICpFOTA3KiAqRTkxMSoKKwkJCSpFODkxKiAqRTg5MiogKkU4OTMqICpFODk0KiAqRTkwNyogKkU5MTEqICpFOTE0KgogV2hlbiBleHBlY3RpbmcgYSBGbG9hdCBhIE51bWJlciBjYW4gYWxzbyBiZSB1c2VkLCBidXQgbm90aGluZyBlbHNlLgogCiAJCQkJCQkqRTcwNiogKnN0aWNreS10eXBlLWNoZWNraW5nKgpAQCAtMTgyMyw2ICsxODI1LDcgQEAKIAkJCQlhbnkJc2VuZCB7ZXhwcn0gb3ZlciBKU09OIGNoYW5uZWwge2hhbmRsZX0KIGNoX3NlbmRyYXcoIHtoYW5kbGV9LCB7c3RyaW5nfSBbLCB7Y2FsbGJhY2t9XSkKIAkJCQlhbnkJc2VuZCB7c3RyaW5nfSBvdmVyIHJhdyBjaGFubmVsIHtoYW5kbGV9CitjaF9zdGF0dXMoIHtoYW5kbGV9KQkJU3RyaW5nCXN0YXR1cyBvZiBjaGFubmVsIHtoYW5kbGV9CiBjaGFuZ2VucigpCQkJTnVtYmVyCWN1cnJlbnQgY2hhbmdlIG51bWJlcgogY2hhcjJucigge2V4cHJ9Wywge3V0Zjh9XSkJTnVtYmVyCUFTQ0lJL1VURjggdmFsdWUgb2YgZmlyc3QgY2hhciBpbiB7ZXhwcn0KIGNpbmRlbnQoIHtsbnVtfSkJCU51bWJlcglDIGluZGVudCBmb3IgbGluZSB7bG51bX0KQEAgLTE5NTUsNiArMTk1OCw3IEBACiBpc2RpcmVjdG9yeSgge2RpcmVjdG9yeX0pCU51bWJlcglUUlVFIGlmIHtkaXJlY3Rvcnl9IGlzIGEgZGlyZWN0b3J5CiBpc2xvY2tlZCgge2V4cHJ9KQkJTnVtYmVyCVRSVUUgaWYge2V4cHJ9IGlzIGxvY2tlZAogaXRlbXMoIHtkaWN0fSkJCQlMaXN0CWtleS12YWx1ZSBwYWlycyBpbiB7ZGljdH0KK2pvYl9nZXRjaGFubmVsKCB7am9ifSkJCU51bWJlcglnZXQgdGhlIGNoYW5uZWwgaGFuZGxlIGZvciB7am9ifQogam9iX3N0YXJ0KCB7Y29tbWFuZH0gWywge29wdGlvbnN9XSkgSm9iCXN0YXJ0IGEgam9iCQogam9iX3N0YXR1cygge2pvYn0pCQlTdHJpbmcJZ2V0IHRoZSBzdGF0dXMgb2YgYSBqb2IKIGpvYl9zdG9wKCB7am9ifSBbLCB7aG93fV0pCU51bWJlcglzdG9wIGEgam9iCkBAIC0yNjg0LDkgKzI2ODgsMTMgQEAKIAogY2hfbG9nZmlsZSgge2ZuYW1lfSBbLCB7bW9kZX1dKQkJCQkJKmNoX2xvZ2ZpbGUoKSoKIAkJU3RhcnQgbG9nZ2luZyBjaGFubmVsIGFjdGl2aXR5IHRvIHtmbmFtZX0uCisJCVdoZW4ge2ZuYW1lfSBpcyBhbiBlbXB0eSBzdHJpbmc6IHN0b3AgbG9nZ2luZy4KKwogCQlXaGVuIHttb2RlfSBpcyBvbWl0dGVkIG9yICJhIiBhcHBlbmQgdG8gdGhlIGZpbGUuCiAJCVdoZW4ge21vZGV9IGlzICJ3IiBzdGFydCB3aXRoIGFuIGVtcHR5IGZpbGUuCi0JCVdoZW4ge2ZuYW1lfSBpcyBhbiBlbXB0eSBzdHJpbmc6IHN0b3AgbG9nZ2luZy4KKworCQlUaGUgZmlsZSBpcyBmbHVzaGVkIGFmdGVyIGV2ZXJ5IG1lc3NhZ2UsIG9uIFVuaXggeW91IGNhbiB1c2UKKwkJInRhaWwgLWYiIHRvIHNlZSB3aGF0IGlzIGdvaW5nIG9uIGluIHJlYWwgdGltZS4KIAogY2hfb3Blbih7YWRkcmVzc30gWywge2FyZ2RpY3R9XSkJCQkJKmNoX29wZW4oKSoKIAkJT3BlbiBhIGNoYW5uZWwgdG8ge2FkZHJlc3N9LiAgU2VlIHxjaGFubmVsfC4KQEAgLTI3NDIsNiArMjc1MCwxMiBAQAogCiAJCXtvbmx5IGF2YWlsYWJsZSB3aGVuIGNvbXBpbGVkIHdpdGggdGhlIHwrY2hhbm5lbHwgZmVhdHVyZX0KIAorY2hfc3RhdHVzKHtoYW5kbGV9KQkJCQkJCSpjaF9zdGF0dXMoKSoKKwkJUmV0dXJuIHRoZSBzdGF0dXMgb2YgY2hhbm5lbCB7aGFuZGxlfToKKwkJCSJmYWlsIgkJZmFpbGVkIHRvIG9wZW4gdGhlIGNoYW5uZWwKKwkJCSJvcGVuIgkJY2hhbm5lbCBjYW4gYmUgdXNlZAorCQkJImNsb3NlZCIJY2hhbm5lbCBjYW4gbm90IGJlIHVzZWQKKwogCQkJCQkJCSpjb3B5KCkqCiBjb3B5KHtleHByfSkJTWFrZSBhIGNvcHkgb2Yge2V4cHJ9LglGb3IgTnVtYmVycyBhbmQgU3RyaW5ncyB0aGlzIGlzbid0CiAJCWRpZmZlcmVudCBmcm9tIHVzaW5nIHtleHByfSBkaXJlY3RseS4KQEAgLTI5MzgsNiArMjk1Miw3IEBACiAJCS0gQSBOdW1iZXIgYW5kIEZsb2F0IGlzIGVtcHR5IHdoZW4gaXRzIHZhbHVlIGlzIHplcm8uCiAJCS0gfHY6ZmFsc2V8LCB8djpub25lfCBhbmQgfHY6bnVsbHwgYXJlIGVtcHR5LCB8djp0cnVlfCBpcyBub3QuCiAJCS0gQSBKb2IgaXMgZW1wdHkgd2hlbiBpdCBmYWlsZWQgdG8gc3RhcnQuCisJCS0gQSBDaGFubmVsIGlzIGVtcHR5IHdoZW4gaXQgaXMgY2xvc2VkLgogCiAJCUZvciBhIGxvbmcgfExpc3R8IHRoaXMgaXMgbXVjaCBmYXN0ZXIgdGhhbiBjb21wYXJpbmcgdGhlCiAJCWxlbmd0aCB3aXRoIHplcm8uCkBAIC00MzM0LDcgKzQzNDksMTEgQEAKIAkJb3JkZXIuCiAKIAotam9iX3N0YXJ0KHtjb21tYW5kfSBbLCB7b3B0aW9uc31dKQkJCQkqam9iX3N0YXJ0KCkqCitqb2JfZ2V0Y2hhbm5lbCh7am9ifSkJCQkJCSAqam9iX2dldGNoYW5uZWwoKSoKKwkJR2V0IHRoZSBjaGFubmVsIGhhbmRsZSB0aGF0IHtqb2J9IGlzIHVzaW5nLgorCQl7b25seSBhdmFpbGFibGUgd2hlbiBjb21waWxlZCB3aXRoIHRoZSB8K2pvYnwgZmVhdHVyZX0KKworam9iX3N0YXJ0KHtjb21tYW5kfSBbLCB7b3B0aW9uc31dKQkJCSpqb2Jfc3RhcnQoKSoKIAkJU3RhcnQgYSBqb2IgYW5kIHJldHVybiBhIEpvYiBvYmplY3QuICBVbmxpa2UgfHN5c3RlbSgpfCBhbmQKIAkJfDohY21kfCB0aGlzIGRvZXMgbm90IHdhaXQgZm9yIHRoZSBqb2IgdG8gZmluaXNoLgogCkBAIC02ODM4LDYgKzY4NTcsNyBAQAogCQkJQm9vbGVhbjogICAgNiAodjpmYWxzZSBhbmQgdjp0cnVlKQogCQkJTm9uZQkgICAgNyAodjpudWxsIGFuZCB2Om5vbmUpCiAJCQlKb2IJICAgIDgKKwkJCUNoYW5uZWwJICAgIDkKIAkJVG8gYXZvaWQgdGhlIG1hZ2ljIG51bWJlcnMgaXQgc2hvdWxkIGJlIHVzZWQgdGhpcyB3YXk6ID4KIAkJCTppZiB0eXBlKG15dmFyKSA9PSB0eXBlKDApCiAJCQk6aWYgdHlwZShteXZhcikgPT0gdHlwZSgiIikKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29wdGlvbnMudHh0IGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKaW5kZXggOWFmYWJlZC4uOWY3ZjUwZCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKQEAgLTEsNCArMSw0IEBACi0qb3B0aW9ucy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNiBGZWIgMDEKKypvcHRpb25zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEZlYiAxMgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zMDk2LDE3ICszMDk2LDE3IEBACiAKIAkgIGl0ZW0JCWRlZmF1bHQJCVVzZWQgZm9yIH4KIAkgIHN0bDpjCQknICcgb3IgJ14nCXN0YXR1c2xpbmUgb2YgdGhlIGN1cnJlbnQgd2luZG93Ci0JICBzdGxuYzpjCScgJyBvciAnLScJc3RhdHVzbGluZSBvZiB0aGUgbm9uLWN1cnJlbnQgd2luZG93cworCSAgc3RsbmM6YwknICcgb3IgJz0nCXN0YXR1c2xpbmUgb2YgdGhlIG5vbi1jdXJyZW50IHdpbmRvd3MKIAkgIHZlcnQ6YwknfCcJCXZlcnRpY2FsIHNlcGFyYXRvcnMgfDp2c3BsaXR8CiAJICBmb2xkOmMJJy0nCQlmaWxsaW5nICdmb2xkdGV4dCcKIAkgIGRpZmY6YwknLScJCWRlbGV0ZWQgbGluZXMgb2YgdGhlICdkaWZmJyBvcHRpb24KIAogCUFueSBvbmUgdGhhdCBpcyBvbWl0dGVkIHdpbGwgZmFsbCBiYWNrIHRvIHRoZSBkZWZhdWx0LiAgRm9yICJzdGwiIGFuZAotCSJzdGxuYyIgdGhlIHNwYWNlIHdpbGwgYmUgdXNlZCB3aGVuIHRoZXJlIGlzIGhpZ2hsaWdodGluZywgJ14nIG9yICctJworCSJzdGxuYyIgdGhlIHNwYWNlIHdpbGwgYmUgdXNlZCB3aGVuIHRoZXJlIGlzIGhpZ2hsaWdodGluZywgJ14nIG9yICc9JwogCW90aGVyd2lzZS4KIAogCUV4YW1wbGU6ID4KLQkgICAgOnNldCBmaWxsY2hhcnM9c3RsOl4sc3RsbmM6LSx2ZXJ0Olx8LGZvbGQ6LSxkaWZmOi0KKwkgICAgOnNldCBmaWxsY2hhcnM9c3RsOl4sc3RsbmM6PSx2ZXJ0Olx8LGZvbGQ6LSxkaWZmOi0KIDwJVGhpcyBpcyBzaW1pbGFyIHRvIHRoZSBkZWZhdWx0LCBleGNlcHQgdGhhdCB0aGVzZSBjaGFyYWN0ZXJzIHdpbGwgYWxzbwogCWJlIHVzZWQgd2hlbiB0aGVyZSBpcyBoaWdobGlnaHRpbmcuCiAKQEAgLTc1NzEsNiArNzU3MSw3IEBACiAJbm9uLWtleXdvcmQgY2hhcmFjdGVycyAod2hpdGUgc3BhY2UgaXMgcHJlZmVycmVkKS4gIE1heGltdW0gbGluZQogCWxlbmd0aCBpcyA1MTAgYnl0ZXMuCiAJVG8gb2J0YWluIGEgZmlsZSB0byBiZSB1c2VkIGhlcmUsIGNoZWNrIG91dCB0aGlzIGZ0cCBzaXRlOgorCVtTb3JyeSB0aGlzIGxpbmsgZG9lc24ndCB3b3JrIGFueW1vcmUsIGRvIHlvdSBrbm93IHRoZSByaWdodCBvbmU/XSAKIAlmdHA6Ly9mdHAub3guYWMudWsvcHViL3dvcmRsaXN0cy8gIEZpcnN0IGdldCB0aGUgUkVBRE1FIGZpbGUuCiAJVG8gaW5jbHVkZSBhIGNvbW1hIGluIGEgZmlsZSBuYW1lIHByZWNlZGUgaXQgd2l0aCBhIGJhY2tzbGFzaC4gIFNwYWNlcwogCWFmdGVyIGEgY29tbWEgYXJlIGlnbm9yZWQsIG90aGVyd2lzZSBzcGFjZXMgYXJlIGluY2x1ZGVkIGluIHRoZSBmaWxlCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9yZXBlYXQudHh0IGIvcnVudGltZS9kb2MvcmVwZWF0LnR4dAppbmRleCBiMzEzMmE5Li4wNGFhYTE5IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9yZXBlYXQudHh0CisrKyBiL3J1bnRpbWUvZG9jL3JlcGVhdC50eHQKQEAgLTEsNCArMSw0IEBACi0qcmVwZWF0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEphbiAxNgorKnJlcGVhdC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNiBGZWIgMTIKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTQ5MCw3ICs0OTAsNyBAQAogCWJ0CiAJd2hlcmUKIAkJCQkJCQkqPmZyYW1lKgotCWZyYW1lIE4JCUdvZXMgdG8gTiBiYWN0cmFjZSBsZXZlbC4gKyBhbmQgLSBzaWducyBtYWtlIG1vdmVtZW50CisJZnJhbWUgTgkJR29lcyB0byBOIGJhY2t0cmFjZSBsZXZlbC4gKyBhbmQgLSBzaWducyBtYWtlIG1vdmVtZW50CiAJCQlyZWxhdGl2ZS4gIEUuZy4sICI6ZnJhbWUgKzMiIGdvZXMgdGhyZWUgZnJhbWVzIHVwLgogCQkJCQkJCSo+dXAqCiAJdXAJCUdvZXMgb25lIGxldmVsIHVwIGZyb20gY2FsbCBzdGFja3RyYWNlLgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdGFncyBiL3J1bnRpbWUvZG9jL3RhZ3MKaW5kZXggNjZiMGFhNi4uZDA3OTM0NCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdGFncworKysgYi9ydW50aW1lL2RvYy90YWdzCkBAIC05LDYgKzksNyBAQAogJFZJTQlzdGFydGluZy50eHQJLyokVklNKgogJFZJTS11c2UJdmVyc2lvbjUudHh0CS8qJFZJTS11c2UqCiAkVklNUlVOVElNRQlzdGFydGluZy50eHQJLyokVklNUlVOVElNRSoKKyRWSU1fUE9TSVgJdmlfZGlmZi50eHQJLyokVklNX1BPU0lYKgogJQltb3Rpb24udHh0CS8qJSoKICU6LgljbWRsaW5lLnR4dAkvKiU6LioKICU6OAljbWRsaW5lLnR4dAkvKiU6OCoKQEAgLTEyMTgsNiArMTIxOSw3IEBACiAraWNvbnYJdmFyaW91cy50eHQJLyoraWNvbnYqCiAraWNvbnYvZHluCXZhcmlvdXMudHh0CS8qK2ljb252XC9keW4qCiAraW5zZXJ0X2V4cGFuZAl2YXJpb3VzLnR4dAkvKitpbnNlcnRfZXhwYW5kKgorK2pvYgl2YXJpb3VzLnR4dAkvKitqb2IqCiAranVtcGxpc3QJdmFyaW91cy50eHQJLyoranVtcGxpc3QqCiAra2V5bWFwCXZhcmlvdXMudHh0CS8qK2tleW1hcCoKICtsYW5nbWFwCXZhcmlvdXMudHh0CS8qK2xhbmdtYXAqCkBAIC00NDQzLDYgKzQ0NDUsOCBAQAogRTkxMAlldmFsLnR4dAkvKkU5MTAqCiBFOTExCWV2YWwudHh0CS8qRTkxMSoKIEU5MTIJZXZhbC50eHQJLypFOTEyKgorRTkxMwlldmFsLnR4dAkvKkU5MTMqCitFOTE0CWV2YWwudHh0CS8qRTkxNCoKIEU5MgltZXNzYWdlLnR4dAkvKkU5MioKIEU5Mwl3aW5kb3dzLnR4dAkvKkU5MyoKIEU5NAl3aW5kb3dzLnR4dAkvKkU5NCoKQEAgLTUxNjQsOSArNTE2OCwxMiBAQAogY2VpbCgpCWV2YWwudHh0CS8qY2VpbCgpKgogY2gudmltCXN5bnRheC50eHQJLypjaC52aW0qCiBjaF9jbG9zZSgpCWV2YWwudHh0CS8qY2hfY2xvc2UoKSoKK2NoX2xvZ2ZpbGUoKQlldmFsLnR4dAkvKmNoX2xvZ2ZpbGUoKSoKIGNoX29wZW4oKQlldmFsLnR4dAkvKmNoX29wZW4oKSoKK2NoX3JlYWRyYXcoKQlldmFsLnR4dAkvKmNoX3JlYWRyYXcoKSoKIGNoX3NlbmRleHByKCkJZXZhbC50eHQJLypjaF9zZW5kZXhwcigpKgogY2hfc2VuZHJhdygpCWV2YWwudHh0CS8qY2hfc2VuZHJhdygpKgorY2hfc3RhdHVzKCkJZXZhbC50eHQJLypjaF9zdGF0dXMoKSoKIGNoYW5nZS1saXN0LWp1bXBzCW1vdGlvbi50eHQJLypjaGFuZ2UtbGlzdC1qdW1wcyoKIGNoYW5nZS1uYW1lCXRpcHMudHh0CS8qY2hhbmdlLW5hbWUqCiBjaGFuZ2UtdGFicwljaGFuZ2UudHh0CS8qY2hhbmdlLXRhYnMqCkBAIC01MTk3LDYgKzUyMDQsNyBAQAogY2hhbm5lbC1jb21tYW5kcwljaGFubmVsLnR4dAkvKmNoYW5uZWwtY29tbWFuZHMqCiBjaGFubmVsLWRlbW8JY2hhbm5lbC50eHQJLypjaGFubmVsLWRlbW8qCiBjaGFubmVsLW1vZGUJY2hhbm5lbC50eHQJLypjaGFubmVsLW1vZGUqCitjaGFubmVsLW1vcmUJY2hhbm5lbC50eHQJLypjaGFubmVsLW1vcmUqCiBjaGFubmVsLW9wZW4JY2hhbm5lbC50eHQJLypjaGFubmVsLW9wZW4qCiBjaGFubmVsLXJhdwljaGFubmVsLnR4dAkvKmNoYW5uZWwtcmF3KgogY2hhbm5lbC11c2UJY2hhbm5lbC50eHQJLypjaGFubmVsLXVzZSoKQEAgLTU1NjQsNiArNTU3Miw3IEBACiBkaXJjb2xvcnMudmltCXN5bnRheC50eHQJLypkaXJjb2xvcnMudmltKgogZGlzCW1vdGlvbi50eHQJLypkaXMqCiBkaXNhYmxlLW1lbnVzCWd1aS50eHQJLypkaXNhYmxlLW1lbnVzKgorZGlzYWJsZV9jaGFyX2F2YWlsX2Zvcl90ZXN0aW5nKCkJZXZhbC50eHQJLypkaXNhYmxlX2NoYXJfYXZhaWxfZm9yX3Rlc3RpbmcoKSoKIGRpc2NhcmQJZWRpdGluZy50eHQJLypkaXNjYXJkKgogZGlzdHJpYnV0ZS1zY3JpcHQJdXNyXzQxLnR4dAkvKmRpc3RyaWJ1dGUtc2NyaXB0KgogZGlzdHJpYnV0aW9uCWludHJvLnR4dAkvKmRpc3RyaWJ1dGlvbioKQEAgLTY4MTcsMTYgKzY4MjYsMzIgQEAKIGphdmEudmltCXN5bnRheC50eHQJLypqYXZhLnZpbSoKIGphdmFzY3JpcHQtY2lub3B0aW9ucwlpbmRlbnQudHh0CS8qamF2YXNjcmlwdC1jaW5vcHRpb25zKgogamF2YXNjcmlwdC1pbmRlbnRpbmcJaW5kZW50LnR4dAkvKmphdmFzY3JpcHQtaW5kZW50aW5nKgoram9iCWNoYW5uZWwudHh0CS8qam9iKgoram9iLWNoYW5uZWwtb3ZlcnZpZXcJY2hhbm5lbC50eHQJLypqb2ItY2hhbm5lbC1vdmVydmlldyoKK2pvYi1jbG9zZS1jYgljaGFubmVsLnR4dAkvKmpvYi1jbG9zZS1jYioKIGpvYi1jb250cm9sCWNoYW5uZWwudHh0CS8qam9iLWNvbnRyb2wqCitqb2ItZXJyLWNiCWNoYW5uZWwudHh0CS8qam9iLWVyci1jYioKK2pvYi1lcnItaW8JY2hhbm5lbC50eHQJLypqb2ItZXJyLWlvKgoram9iLWV4aXQtY2IJY2hhbm5lbC50eHQJLypqb2ItZXhpdC1jYioKK2pvYi1pbi1pbwljaGFubmVsLnR4dAkvKmpvYi1pbi1pbyoKK2pvYi1raWxsb25leGl0CWNoYW5uZWwudHh0CS8qam9iLWtpbGxvbmV4aXQqCitqb2ItbWF5LXN0YXJ0CWNoYW5uZWwudHh0CS8qam9iLW1heS1zdGFydCoKK2pvYi1vcHRpb25zCWNoYW5uZWwudHh0CS8qam9iLW9wdGlvbnMqCitqb2Itb3V0LWNiCWNoYW5uZWwudHh0CS8qam9iLW91dC1jYioKK2pvYi1vdXQtaW8JY2hhbm5lbC50eHQJLypqb2Itb3V0LWlvKgoram9iLXN0YXJ0CWNoYW5uZWwudHh0CS8qam9iLXN0YXJ0Kgoram9iLXN0YXJ0LW5vY2hhbm5lbAljaGFubmVsLnR4dAkvKmpvYi1zdGFydC1ub2NoYW5uZWwqCitqb2ItdGVybQljaGFubmVsLnR4dAkvKmpvYi10ZXJtKgoram9iX2dldGNoYW5uZWwoKQlldmFsLnR4dAkvKmpvYl9nZXRjaGFubmVsKCkqCiBqb2Jfc3RhcnQoKQlldmFsLnR4dAkvKmpvYl9zdGFydCgpKgogam9iX3N0YXR1cygpCWV2YWwudHh0CS8qam9iX3N0YXR1cygpKgogam9iX3N0b3AoKQlldmFsLnR4dAkvKmpvYl9zdG9wKCkqCiBqb2luKCkJZXZhbC50eHQJLypqb2luKCkqCitqc19kZWNvZGUoKQlldmFsLnR4dAkvKmpzX2RlY29kZSgpKgoranNfZW5jb2RlKCkJZXZhbC50eHQJLypqc19lbmNvZGUoKSoKIGpzYnRlcm0tbW91c2UJb3B0aW9ucy50eHQJLypqc2J0ZXJtLW1vdXNlKgotanNkZWNvZGUoKQlldmFsLnR4dAkvKmpzZGVjb2RlKCkqCi1qc2VuY29kZSgpCWV2YWwudHh0CS8qanNlbmNvZGUoKSoKLWpzb25kZWNvZGUoKQlldmFsLnR4dAkvKmpzb25kZWNvZGUoKSoKLWpzb25lbmNvZGUoKQlldmFsLnR4dAkvKmpzb25lbmNvZGUoKSoKK2pzb25fZGVjb2RlKCkJZXZhbC50eHQJLypqc29uX2RlY29kZSgpKgoranNvbl9lbmNvZGUoKQlldmFsLnR4dAkvKmpzb25fZW5jb2RlKCkqCiBqdGFncwl0YWdzcmNoLnR4dAkvKmp0YWdzKgoganVtcC1tb3Rpb25zCW1vdGlvbi50eHQJLypqdW1wLW1vdGlvbnMqCiBqdW1wbGlzdAltb3Rpb24udHh0CS8qanVtcGxpc3QqCkBAIC04NTgyLDYgKzg2MDcsNyBAQAogdW5kby10d28td2F5cwl1bmRvLnR4dAkvKnVuZG8tdHdvLXdheXMqCiB1bmRvLnR4dAl1bmRvLnR4dAkvKnVuZG8udHh0KgogdW5kb19mdHBsdWdpbgl1c3JfNDEudHh0CS8qdW5kb19mdHBsdWdpbioKK3VuZG9faW5kZW50CXVzcl80MS50eHQJLyp1bmRvX2luZGVudCoKIHVuZG9maWxlKCkJZXZhbC50eHQJLyp1bmRvZmlsZSgpKgogdW5kb3RyZWUoKQlldmFsLnR4dAkvKnVuZG90cmVlKCkqCiB1bmljb2RlCW1ieXRlLnR4dAkvKnVuaWNvZGUqCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90b2RvLnR4dCBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CmluZGV4IGE2ZmFhYjMuLjExZWU3OWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RvZG8udHh0CisrKyBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CkBAIC0xLDQgKzEsNCBAQAotKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNiBGZWIgMDcKKyp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy40LiAgTGFzdCBjaGFuZ2U6IDIwMTYgRmViIDE1CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTM0LDYgKzM0LDEwMCBAQAogCQkJCQkJCSprbm93bi1idWdzKgogLS0tLS0tLS0tLS0tLS0tLS0tLS0gS25vd24gYnVncyBhbmQgY3VycmVudCB3b3JrIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKKytjaGFubmVsOgorLSBNb3ZlIG5ldGJlYW5zIE5MIGhhbmRsaW5nIHRvIGNoYW5uZWwuYywgdXNlIGl0IGZvciBOTCBtb2RlIGNoYW5uZWwKKy0gY2hfb3BlbiBmYWlscyB3aGVuIHNvY2tldCBpc24ndCBwcmVzZW50IHlldC4gKE1hcmNpbiBTemFtb3R1bHNraSkKKyAgUmV0cnkgd2hlbiBlcnJvciBpcyAiY29ubmVjdGlvbiByZWZ1c2VkIi4KKy0gY2hhbm5lbCB0ZXN0IHdhaXR0aW1lIGlzIGRpc2FibGVkIGZvciBNUy1XaW5kb3dzLCBjYXVzZXMgYSBjcmFzaC4KKy0gY2hhbm5lbCBuZWVkcyBib3RoIHN0ZG91dCBhbmQgc3RkZXJyIChHVUkgaW1wbGVtZW50YXRpb24pCistIGltcGxlbWVudCBUT0RPIGl0ZW1zIGluICI6aGVscCBjaGFubmVsIjoKKyAgIC0gaW1wbGVtZW50IGNoX3NldG9wdGlvbnMoaGFuZGxlLCB7b3B0aW9uc30pCisgICAtIGpvYl9zZXRvcHRpb25zKGpvYiwge29wdGlvbnN9KQorICAgLSBjaF9jbG9zZSgpIGNsb3NlcyBzdGRpbi9zdGRvdXQvc3RkZXJyCisgICAtIG91dC1jYgorICAgLSBlcnItY2IKKyAgIC0gZXhpdC1jYiAgbW92ZSBjb2RlIGZyb20gbWNoX2NsZWFyX2pvYigpCisgICAtIGpvYiBhcmd1bWVudDoga2lsbG9uZXhpdAorICAgLSBjaF9yZWFkKCkgZm9yIHN0ZGVycgorICAgLSBjaF9nZXRqb2IoaGFuZGxlKQorICAgLSBjaF9yZWFkKGhhbmRsZSBbLCB0aW1lb3V0XSkKKyAgIC0gY2hfcmVhZGFsbChoYW5kbGUgWywgdGltZW91dF0pCisgICAtIGpvYl9pbmZvKCkgc2hvdWxkIHJlbW92ZSB1c2FibGUgaW5mbzogcHJvY2VzcyBJRCwgcnVuL2RlYWQsIGV0Yy4KKyAgIC0gam9iX21heXN0YXJ0KCkKKyAgIC0gam9iX2dldGhhbmRsZSgpLCBqb2Jfc2V0aGFuZGxlKCkKKyAgIC0gYWRkIGNoX3N0YXR1cygpOiBXaGV0aGVyIGNoYW5uZWwgaXMgb3Blbi4gIFBlcmhhcHMgYWxzbyBtb2RlLCB0aW1lb3V0LgorICAgLSBXaGVuIGNoYW5uZWwgY2xvc2VzIGludm9rZSAiY2xvc2UtY2IiLgorLSBNb3ZlIG1vcmUgZGV0YWlscyBmcm9tIGV2YWwudHh0IHRvIGNoYW5uZWwudHh0LiAgQWRkIHRhZ3MgaW4gZXZhbC50eHQuCistIFdoZW4gcmVjZWl2aW5nIG1hbGZvcm1lZCBqc29uIHN0YXJ0aW5nIHdpdGggYSBxdW90ZSBpdCBkb2Vzbid0IGdldAorICBkaXNjYXJkZWQuCistIFdoZW4gbWVzc2FnZSBpbiBxdWV1ZSBidXQgdGhlcmUgaXMgbm8gY2FsbGJhY2ssIGRyb3AgaXQgYWZ0ZXIgYSB3aGlsZT8KKy0gQ3Jhc2ggd2hlbiBjbG9zaW5nIGNoYW5uZWwgYWZ0ZXIgY2hfc2VuZGV4cHIoKSB3aXRoIGNhbGxiYWNrIGFuZCBvdXRzdGFuZGluZworICByZXF1ZXN0IChDaHJpc3RpYW4gUm9iaW5zb24pLgorLSBjbGVhbnVwIG9uIGV4aXQ/ICBpbiBtY2hfZ2V0b3V0KCkgYW5kIGdldG91dCgpLgorLSBPbiBNYWMgYSAxIG1zZWMgd2FpdHRpbWUgaXMgbmVlZGVkIGluIGNoX29wZW4oKSwgd2h5PworLSBBZGQgbW9yZSBsb2cgY2FsbHMsIGJhc2ljYWxseSBhdCBldmVyeSBicmFuY2gsIGJlZm9yZSBldmVyeSBjYWxsYmFjaywgZXRjLgorLSBBZGQgdGltZXN0YW1wIHRvIHF1ZXVlZCBtZXNzYWdlcyBhbmQgY2FsbGJhY2tzIHdpdGggSUQsIHJlbW92ZSBhZnRlciBhCisgIG1pbnV0ZS4KKy0gYWRkIHJlbWFyayBhYm91dCB1bmRvIHN5bmMsIGlzIHRoZXJlIGEgd2F5IHRvIGZvcmNlIGl0PworLSBXaGVuIHN0YXJ0aW5nIGEgam9iLCBoYXZlIGFuIG9wdGlvbiB0byBvcGVuIHRoZSBzZXJ2ZXIgc29ja2V0LCBzbyB3ZSBrbm93CisgIHRoZSBwb3J0LCBhbmQgcGFzcyBpdCB0byB0aGUgY29tbWFuZCB3aXRoIC0tc29ja2V0LWZkIHtucn0uIChPbGFmIERhYnJ1bnosCisgIEZlYiA5KSAgSG93IHRvIGRvIHRoaXMgb24gTVMtV2luZG93cz8KKy0gQWRkIG1vcmUgdW5pdC10ZXN0aW5nIGluIGpzb25fdGVzdC5jCistIEFkZCBhIHRlc3Qgd2hlcmUgWyJldmFsIiwiZ2V0bGluZSgxMjMpIl0gZ2V0cyBhIGxpbmUgd2l0aCBzcGVjaWFsCisgIGNoYXJhY3RlcnMgKE5VTCwgMHg4MCwgZXRjLikuICBDaGVjayB0aGF0IGl0IGlzbid0IGdhcmJsZWQuCistIG1ha2Ugc3VyZSBlcnJvcnMgbGVhZCB0byBhIHVzZWZ1bCBlcnJvciBtc2cuIFsiZXgiLCJmb29iYXIiXQorLSBqc29uOiBpbXBsZW1lbnQgVVRGLTE2IHN1cnJvZ2F0ZSBwYWlyLgorLSBGb3IgY29ubmVjdGlvbiB0byBzZXJ2ZXIsIGEgImtlZXAgb3BlbiIgZmxhZyB3b3VsZCBiZSB1c2VmdWwuICBSZXRyeQorICBjb25uZWN0aW5nIGluIHRoZSBtYWluIGxvb3Agd2l0aCB6ZXJvIHRpbWVvdXQuCitNb3JlIHBsdWdpbiBzdXBwb3J0OgorLSBIYXZlIGEgd2F5IHRvIGluc3RhbGwgYSBjYWxsYmFjayBmcm9tIHRoZSBtYWluIGxvb3AuICBDYWxsZWQgZXZlcnkgc2Vjb25kIG9yCisgIHNvLgorLSBOZWVkIHdheSB0byB1bmlxdWVseSBpZGVudGlmeSBhIHdpbmRvdywgbm8gbWF0dGVyIGhvdyB3aW5kb3dzIGFyZQorICByZWFycmFuZ2VkLiAgU2FtZSBmb3IgdGFiIHBhZ2VzLgorICAgICAgZ2V0d2luaWQoKSAgICAgICAgICAgICBJRCBvZiBjdXJyZW50IHdpbm93CisgICAgICBnZXR3aW5pZCh7bnJ9KSAgICAgICAgIElEIG9mIHdpbmRvdyB7bnJ9CisgICAgICBnZXR3aW5pZCh7bnJ9LCB7dGFifSkgIElEIG9mIHdpbmRvdyB7bnJ9IGluIHRhYiBwYWdlIHt0YWJ9CisgICAgICBnZXR3aW5ucih7aWR9KQkgICAgIHdpbmRvdyBuciBvZiB7aWR9IG9yIC0xIGlmIG5vdCBvcGVuCisgICAgICBnZXR0YWJucih7aWR9KQkgICAgIHRhYiBwYWdlIG5yIG9mIHtpZH0gb3IgLTEgaWYgbm90IG9wZW4KKyAgICAgIGdvdG93aW4oe2lkfSkKKyAgTWFrZSBpdCBzbyB0aGF0IHRoZSB3aW5kb3cgSUQgY2FuIGJlIHVzZWQgd2hlcmUgY3VycmVudGx5IGEgd2luZG93IG5yIGlzIHVzZWQKKworUGF0Y2ggb24gIzYwODogKEtlbiBUYWthdGEpCitodHRwczovL2JpdGJ1Y2tldC5vcmcva190YWthdGEvdmltLWt0YWthdGEtbXEvc3JjLzQ3OTkzNGI5NGZkNTZiMDY0YzllNGJkODczNzU4NWM1ZGY2OWQ1NmEvZml4LWd2aW1leHQtbG9hZGxpYnJhcnkucGF0Y2g/ZmlsZXZpZXdlcj1maWxlLXZpZXctZGVmYXVsdAorCitUaGlzIGRpZmZlcmVuY2UgaXMgdW5leHBlY3RlZDoKKyAgICBlY2hvIHY6dHJ1ZSA9PSAxCisgICAgMQorICAgIGVjaG8gW3Y6dHJ1ZV0gPT0gWzFdCisgICAgMAorSXQncyBiZWNhdXNlIHR2X2VxdWFsKCkgd29ya3MgZGlmZmVyZW50LgorCitBZGQgInJ1bnRpbWUvYnVuZGxlcyIgPworICAgIHJ1bnRpbWUvYnVuZGxlcy9uZXRydy9zcGVjLnZpbQorICAgIHJ1bnRpbWUvYnVuZGxlcy9uZXRydy9hdXRvbG9hZC9uZXRydy52aW0KKyAgICBydW50aW1lL2J1bmRsZXMvbmV0cncvc3ludGF4L25ldHJ3LnZpbQorICAgIGV0Yy4KK05lZWQgYW4gYWx0ZXJuYXRpdmUgZm9yICdydW50aW1lcGF0aCcgdGhhdCB0ZWxscyB3aGVyZSBidW5kbGVzIGFyZSB0byBiZQorZm91bmQuICdidW5kbGVwYXRoJyA/CitUaGUgcGx1Z2lucyB1bmRlciAnYnVuZGxlcGF0aCcgd291bGQgYWx3YXlzIGJlIGxvYWRlZC4gIEFsc28gaGF2ZSBhIHBhdGggZm9yCitvcHRpb25hbCBwbHVnaW5zPyAgJ29wdGJ1bmRsZXBhdGgnPyAgT3IgaGF2ZSBkaXJlY3RvcmllcyAiYnVuZGxlc2RlZiIgYW5kCisiYnVuZGxlc29wdCI/CitUaGVuIHVzZSBhIGNvbW1hbmQgImxvYWRwbHVnaW4iIHRvIGZpbmQgYSBwbHVnaW4gaW4gIm9wdGlvbmFsIi4KKyJidW5kbGVzIiBpcyB1c2VkIGJ5IHNvbWUgcGx1Z2luIG1hbmFnZXJzLCBuZWVkIGFub3RoZXIgbmFtZS4gInBhY2thZ2VzIj8KK0FkZCBhICJyZXF1aXJlcyIgLyAicHJvdmlkZXMiIG1lY2hhbmlzbT8KKyAgICBpZiBteV9mZWF0dXJlX2VuYWJsZWQKKyAgICAgIHJlcXVpcmUgK3B5dGhvbgorICAgIGVuZGlmCisgICAgcmVxdWlyZSBteV9vdGhlcl9wbHVnaW4KK34vdmltL3BhY2thZ2VzL25ldHJ3L2RlZi9uZXRydy9wbHVnaW4vbmV0cncudmltCit+L3ZpbS9wYWNrYWdlcy9uZXRydy9vcHQvbndkZWJ1Zy9wbHVnaW4vbndkZWJ1Zy52aW0KKworV2h5IGRvZXMgdGhpczogCWVjaG8gImEiIC4gMS4xCityZXN1bHQgaW46CWExMQorU2hvdWxkIHJlY29nbml6ZSBmbG9hdCAoc28gbG9uZyBhcyBpdCdzIG5vdCAiLjEuMSIpLgorCitBbGxvdyBmb3IgYW4gZW1wdHkgZGljdGlvbmFyeSBrZXkuCisKIFJlZ2V4cCBwcm9ibGVtczoKIC0gVGhlIHJlZ2V4cCBlbmdpbmVzIGFyZSBub3QgcmVlbnRyYW50LCBjYXVzaW5nIGhhdm9jIHdoZW4gaW50ZXJydXB0ZWQgYnkgYQogICByZW1vdGUgZXhwcmVzc2lvbiBvciBzb21ldGhpbmcgZWxzZS4gIE1vdmUgZ2xvYmFsIHZhcmlhYmxlcyBvbnRvIHRoZSBzdGFjawpAQCAtNzYsNTMgKzE3MCw4IEBACiAgIG1hdGNoZXMgdGhlIGVtcHR5IHN0cmluZy4gKERvbWluaXF1ZSBQZWxsZSwgMjAxNSBPY3QgMiwgTm92IDI0KQogLSBTZWFyY2ggZm9yIFxcfiBjYXVzZXMgZXJyb3IgRTg3NC4KIAotLSAiXCUxbF4jLioiIGRvZXMgbm90IG1hdGNoIG9uIGEgbGluZSBzdGFydGluZyB3aXRoICIjIi4gIFRoZSB6ZXJvLXdpZHRoIG1hdGNoCi0gIGNsZWFycyB0aGUgc3RhcnQtb2YtbGluZSBmbGFnLgotICBQYXRjaCBieSBDaHJpc3RpYW4sIDIwMTYgSmFuIDI5LgotCi0rY2hhbm5lbDoKLS0gaW1wbGVtZW50IGpvYiBjb250cm9sOgotCWpvYiBhcmd1bWVudDogcmVkaXJlY3Qgc3RkaW4vc3Rkb3V0Ci0Jam9iIGFyZ3VtZW50OiBraWxsb25leGl0Ci0JbGV0IGpvYiA9IGpvYl9tYXlzdGFydCgnY29tbWFuZCcsIHthZGRyZXNzfSwge29wdGlvbnN9KQotLSBXaGVuIHJlY2VpdmluZyBtYWxmb3JtZWQganNvbiBzdGFydGluZyB3aXRoIGEgcXVvdGUgaXQgZG9lc24ndCBnZXQKLSAgZGlzY2FyZGVkLgotLSBhZGQgY2hfc3RhdHVzKCk6IFdoZXRoZXIgY2hhbm5lbCBpcyBvcGVuLiAgUGVyaGFwcyBhbHNvIG1vZGUsIHRpbWVvdXQuCi0gIFdoZW4gY2hhbm5lbCBjbG9zZXMgaW52b2tlIGNoYW5uZWwgY2FsbGJhY2suCi0tIGFkZCBjaF9zZXRjYWxsYmFjaygpCi0tIGFkZCBjaF9zZXR0aW1lb3V0KCkKLS0gY2xlYW51cCBvbiBleGl0PyAgaW4gbWNoX2dldG91dCgpIGFuZCBnZXRvdXQoKS4KLS0gQWRkIGEgdGVzdCBmb3IgdGhlIGNoYW5uZWwgY2FsbGJhY2suCi0tIGltcGxlbWVudCBkZWJ1ZyBsb2cKLS0gQWRkIHRpbWVzdGFtcCB0byBxdWV1ZWQgbWVzc2FnZXMgYW5kIGNhbGxiYWNrcyB3aXRoIElELCByZW1vdmUgYWZ0ZXIgYQotICBtaW51dGUuCi0tIGFkZCByZW1hcmsgYWJvdXQgdW5kbyBzeW5jLCBpcyB0aGVyZSBhIHdheSB0byBmb3JjZSBpdD8KLS0gQWRkIG1vcmUgdGVzdGluZyBpbiBqc29uX3Rlc3QuYwotLSBtYWtlIHN1cmUgZXJyb3JzIGxlYWQgdG8gYSB1c2VmdWwgZXJyb3IgbXNnLiBbImV4IiwiZm9vYmFyIl0KLS0ganNvbjogaW1wbGVtZW50IFVURi0xNiBzdXJyb2dhdGUgcGFpci4KLS0gTmVlZCB3YXkgdG8gdW5pcXVlbHkgaWRlbnRpZnkgYSB3aW5kb3csIG5vIG1hdHRlciBob3cgd2luZG93cyBhcmUKLSAgcmVhcnJhbmdlZC4gIFNhbWUgZm9yIHRhYiBwYWdlcy4KLSAgICAgIGdldHdpbmlkKCkgICAgICAgICAgICAgSUQgb2YgY3VycmVudCB3aW5vdwotICAgICAgZ2V0d2luaWQoe25yfSkgICAgICAgICBJRCBvZiB3aW5kb3cge25yfQotICAgICAgZ2V0d2luaWQoe25yfSwge3RhYn0pICBJRCBvZiB3aW5kb3cge25yfSBpbiB0YWIgcGFnZSB7dGFifQotICAgICAgZ2V0d2lubnIoe2lkfSkJICAgICB3aW5kb3cgbnIgb2Yge2lkfSBvciAtMSBpZiBub3Qgb3BlbgotICAgICAgZ2V0dGFibnIoe2lkfSkJICAgICB0YWIgcGFnZSBuciBvZiB7aWR9IG9yIC0xIGlmIG5vdCBvcGVuCi0gICAgICBnb3Rvd2luKHtpZH0pCi0gIE1ha2UgaXQgc28gdGhhdCB0aGUgd2luZG93IElEIGNhbiBiZSB1c2VkIHdoZXJlIGN1cnJlbnRseSBhIHdpbmRvdyBuciBpcyB1c2VkCi0tIEZvciBjb25uZWN0aW9uIHRvIHNlcnZlciwgYSAia2VlcCBvcGVuIiBmbGFnIHdvdWxkIGJlIHVzZWZ1bC4gIFJldHJ5Ci0gIGNvbm5lY3RpbmcgaW4gdGhlIG1haW4gbG9vcCB3aXRoIHplcm8gdGltZW91dC4KLQotUGF0Y2ggb24gIzYwODogKEtlbiBUYWthdGEpCi1odHRwczovL2JpdGJ1Y2tldC5vcmcva190YWthdGEvdmltLWt0YWthdGEtbXEvc3JjLzQ3OTkzNGI5NGZkNTZiMDY0YzllNGJkODczNzU4NWM1ZGY2OWQ1NmEvZml4LWd2aW1leHQtbG9hZGxpYnJhcnkucGF0Y2g/ZmlsZXZpZXdlcj1maWxlLXZpZXctZGVmYXVsdAotCi1UaGlzIGRpZmZlcmVuY2UgaXMgdW5leHBlY3RlZDoKLSAgICBlY2hvIHY6dHJ1ZSA9PSAxCi0gICAgMQotICAgIGVjaG8gW3Y6dHJ1ZV0gPT0gWzFdCi0gICAgMAotSXQncyBiZWNhdXNlIHR2X2VxdWFsKCkgd29ya3MgZGlmZmVyZW50LgotCi1BbGxvdyBmb3IgYW4gZW1wdHkgZGljdGlvbmFyeSBrZXkuCitBbHNvIGluY2x1ZGUgdXBkYXRlX2N1cnN3YW50KCkgZml4IGZvciBnZXRjdXJwb3MoKS4gKENocmlzdGlhbiBCcmFiYW5kdCwgMjAxNgorRmViIDkpCiAKIFBhdGNoIHRvIHB1dCB1bmRvIG9wdGlvbnMgdG9nZXRoZXIgaW4gdW5kbyB3aW5kb3cuCiAoR2FyeSBKb2huc29uLCAyMDE2IEphbiAyOCkKQEAgLTIyMSw4ICsyNzAsMTQgQEAKIFVwZGF0ZSBzdWdnZXN0ZWQgYnkgWWFzdWhpcm8gTWF0c3Vtb3RvLCAyMDE0IE5vdiAyNToKIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL3ByZXN1a3UvZDNkNmIyMzBiOWI2ZGNmYzA0NzcKIAorUGF0Y2ggdG8gbWFrZSB0aGUgYmVoYXZpb3Igb2YgInciIG1vcmUgc3RyYWlnaHRmb3J3YXJkLCBidXQgbm90IFZpIGNvbXBhdGlibGUuCitXaXRoIGEgJ2NwbycgZmxhZy4gIChDaHJpc3RpYW4gQnJhYmFuZHQsIDIwMTYgRmViIDgpCisKIFBhdGNoIHRvIGFkZCBUYWdOb3RGb3VuZCBhdXRvY29tbWFuZC4gKEFudG9uIExpbmRxdmlzdCwgMjAxNiBGZWIgMykKIAorUGF0Y2ggdG8gYWRkIEVycm9yIGF1dG9jb21tYW5kLiAoQW50b24gTGluZHF2aXN0LCAyMDE2IEZlYiAxNCkKK09ubHkgcmVtZW1iZXJzIG9uZSBlcnJvci4KKwogSWxsZWdhbCBtZW1vcnkgYWNjZXNzLCByZXF1aXJlcyBBU0FOIHRvIHNlZS4gKERvbWluaXF1ZSBQZWxsZSwgMjAxNSBKdWwgMjgpCiAKIEd2aW06IHdoZW4gYm90aCBUYWIgYW5kIENUUkwtSSBhcmUgbWFwcGVkLCB1c2UgQ1RSTC1JIG5vdCBmb3IgVGFiLgpAQCAtMjcxLDcgKzMyNiw3IEBACiBCdWlsZCB3aXRoIFB5dGhvbiBvbiBNYWMgZG9lcyBub3QgYWx3YXlzIHVzZSB0aGUgcmlnaHQgbGlicmFyeS4KIChLYXp1bm9idSBLdXJpeWFtYSwgMjAxNSBNYXIgMjgpCiAKLVBhdGNoIHRvIGFkZCBHVEsgMyBzdXBwb3J0LiAoS2F6dW5vYnUgS3VyaXlhbWEsIDIwMTYgRmViIDYpCitQYXRjaCB0byBhZGQgR1RLIDMgc3VwcG9ydC4gKEthenVub2J1IEt1cml5YW1hLCAyMDE2IEZlYiAxMykKIERvZXMgbm90IGZ1bGx5IHdvcmsgeWV0LgogCiBOZWVkIGEgVmltIGVxdWl2YWxlbnQgb2YgUHl0aG9uJ3MgTm9uZSBhbmQgYSB3YXkgdG8gdGVzdCBmb3IgaXQuCkBAIC00OTcsNyArNTUyLDcgQEAKIGluc2VydCBhIHNwYWNlLiAoTWljaGEgTW9zLCAyMDE0IE5vdiA3KQogCiBQYXRjaCB0byBhZGQgdGhlIDpidmltZ3JlcCBjb21tYW5kLiAgKENocmlzdGlhbiBCcmFiYW5kdCwgMjAxNCBOb3YgMTIpCi1VcGRhdGUgRGVjIDYuCitVcGRhdGVkIDIwMTYgRmViIDEwCiAKIFBhdGNoIHRvIGFkZCBhcmd1bWVudCB0byA6Y3F1aXQuIChUaGluY2EsIDIwMTQgT2N0IDEyKQogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfNDEudHh0IGIvcnVudGltZS9kb2MvdXNyXzQxLnR4dAppbmRleCA1ODNiZjk5Li43ZWY0NjZkIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfNDEudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl80MS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzQxLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEZlYiAwMgorKnVzcl80MS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNiBGZWIgMTQKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKQEAgLTIyMzUsNyArMjIzNSw3IEBACiAJOmVuZGlmCiA8CiAKLVVORE8JCQkJCQkJKnVuZG9fZnRwbHVnaW4qCitVTkRPCQkJCQkJKnVuZG9faW5kZW50KiAqdW5kb19mdHBsdWdpbioKIAogV2hlbiB0aGUgdXNlciBkb2VzICI6c2V0ZmlsZXR5cGUgeHl6IiB0aGUgZWZmZWN0IG9mIHRoZSBwcmV2aW91cyBmaWxldHlwZQogc2hvdWxkIGJlIHVuZG9uZS4gIFNldCB0aGUgYjp1bmRvX2Z0cGx1Z2luIHZhcmlhYmxlIHRvIHRoZSBjb21tYW5kcyB0aGF0IHdpbGwKQEAgLTIyNTAsNiArMjI1MCw5IEBACiBUaGlzIGRvZXMgcmVxdWlyZSByZW1vdmluZyB0aGUgIkMiIGZsYWcgZnJvbSAnY3BvcHRpb25zJyB0byBhbGxvdyBsaW5lCiBjb250aW51YXRpb24sIGFzIG1lbnRpb25lZCBhYm92ZSB8dXNlLWNwby1zYXZlfC4KIAorRm9yIHVuZG9pbmcgdGhlIGVmZmVjdCBvZiBhbiBpbmRlbnQgc2NyaXB0LCB0aGUgYjp1bmRvX2luZGVudCB2YXJpYWJsZSBzaG91bGQKK2JlIHNldCBhY2NvcmRpbmdseS4KKwogCiBGSUxFIE5BTUUKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmFyaW91cy50eHQgYi9ydW50aW1lL2RvYy92YXJpb3VzLnR4dAppbmRleCA3ZGJmYjRhLi4zYzJlYTU5IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92YXJpb3VzLnR4dAorKysgYi9ydW50aW1lL2RvYy92YXJpb3VzLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp2YXJpb3VzLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy40LiAgTGFzdCBjaGFuZ2U6IDIwMTYgSmFuIDMxCisqdmFyaW91cy50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuNC4gIExhc3QgY2hhbmdlOiAyMDE2IEZlYiAxNQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMzU4LDYgKzM1OCw3IEBACiAgICAqK2ljb252KgkJQ29tcGlsZWQgd2l0aCB0aGUgfGljb252KCl8IGZ1bmN0aW9uCiAgICAqK2ljb252L2R5bioJCUxpa2V3aXNlIHxpY29udi1keW5hbWljfCB8L2R5bnwKIE4gICoraW5zZXJ0X2V4cGFuZCoJfGluc2VydF9leHBhbmR8IEluc2VydCBtb2RlIGNvbXBsZXRpb24KK20gICoram9iKgkJc3RhcnRpbmcgYW5kIHN0b3BwaW5nIGpvYnMgfGpvYnwKIE4gICoranVtcGxpc3QqCQl8anVtcGxpc3R8CiBCICAqK2tleW1hcCoJCXwna2V5bWFwJ3wKIEIgICorbGFuZ21hcCoJCXwnbGFuZ21hcCd8CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aV9kaWZmLnR4dCBiL3J1bnRpbWUvZG9jL3ZpX2RpZmYudHh0CmluZGV4IDJhN2JiZTQuLjQ2MTliNTAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZpX2RpZmYudHh0CisrKyBiL3J1bnRpbWUvZG9jL3ZpX2RpZmYudHh0CkBAIC0xLDQgKzEsNCBAQAotKnZpX2RpZmYudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNSBOb3YgMDEKKyp2aV9kaWZmLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy40LiAgTGFzdCBjaGFuZ2U6IDIwMTYgRmViIDEyCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC05NjAsNyArOTYwLDcgQEAKIEluIDIwMDUgdGhlIFBPU0lYIHRlc3Qgc3VpdGUgd2FzIHJ1biB0byBjaGVjayB0aGUgY29tcGF0aWJpbGl0eSBvZiBWaW0uICBNb3N0CiBvZiB0aGUgdGVzdCB3YXMgZXhlY3V0ZWQgcHJvcGVybHkuICBUaGVyZSBhcmUgdGhlIGZldyB0aGluZ3Mgd2hlcmUgVmltCiBpcyBub3QgUE9TSVggY29tcGxpYW50LCBldmVuIHdoZW4gcnVuIGluIFZpIGNvbXBhdGliaWxpdHkgbW9kZS4KLQorCQkJCQkJCSokVklNX1BPU0lYKgogU2V0IHRoZSAkVklNX1BPU0lYIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIGhhdmUgJ2Nwb3B0aW9ucycgaW5jbHVkZSB0aGUgUE9TSVgKIGZsYWdzIHdoZW4gVmltIHN0YXJ0cyB1cC4gIFRoaXMgbWFrZXMgVmltIHJ1biBhcyBQT1NJWCBhcyBpdCBjYW4uICBUaGF0J3MKIGEgYml0IGRpZmZlcmVudCBmcm9tIGJlaW5nIFZpIGNvbXBhdGlibGUuCmRpZmYgLS1naXQgYS9ydW50aW1lL3BsdWdpbi9tYXRjaHBhcmVuLnZpbSBiL3J1bnRpbWUvcGx1Z2luL21hdGNocGFyZW4udmltCmluZGV4IDg3MzMwMmUuLjU5MjljZjMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvcGx1Z2luL21hdGNocGFyZW4udmltCisrKyBiL3J1bnRpbWUvcGx1Z2luL21hdGNocGFyZW4udmltCkBAIC0xLDYgKzEsNiBAQAogIiBWaW0gcGx1Z2luIGZvciBzaG93aW5nIG1hdGNoaW5nIHBhcmVucwogIiBNYWludGFpbmVyOiAgQnJhbSBNb29sZW5hYXIgPEJyYW1AdmltLm9yZz4KLSIgTGFzdCBDaGFuZ2U6IDIwMTUgRGVjIDMxCisiIExhc3QgQ2hhbmdlOiAyMDE2IEZlYiAwOQogCiAiIEV4aXQgcXVpY2tseSB3aGVuOgogIiAtIHRoaXMgcGx1Z2luIHdhcyBhbHJlYWR5IGxvYWRlZCAob3IgZGlzYWJsZWQpCkBAIC05Nyw2ICs5Nyw3IEBACiAgICAgaWYgaGFzX2dldGN1cnBvcwogICAgICAgIiBnZXRjdXJwb3MoKSBpcyBtb3JlIGVmZmljaWVudCBidXQgZG9lc24ndCBleGlzdCBiZWZvcmUgNy40LjMxMy4KICAgICAgIGxldCBzYXZlX2N1cnNvciA9IGdldGN1cnBvcygpCitsZXQgZzpzYXZlZF9jdXJzb3IgPSBzYXZlX2N1cnNvcgogICAgIGVsc2UKICAgICAgIGxldCBzYXZlX2N1cnNvciA9IHdpbnNhdmV2aWV3KCkKICAgICBlbmRpZgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYy52aW0gYi9ydW50aW1lL3N5bnRheC9jLnZpbQppbmRleCBhYzQ5MDllLi4zMmI2M2UwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglDCiAiIE1haW50YWluZXI6CUJyYW0gTW9vbGVuYWFyIDxCcmFtQHZpbS5vcmc+Ci0iIExhc3QgQ2hhbmdlOgkyMDE1IE1hciAwNQorIiBMYXN0IENoYW5nZToJMjAxNiBGZWIgMDgKIAogIiBRdWl0IHdoZW4gYSAoY3VzdG9tKSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCkBAIC0yNjQsNyArMjY0LDcgQEAKIGlmIGV4aXN0cygiY19nbnUiKQogICBzeW4ga2V5d29yZAljU3RvcmFnZUNsYXNzCWlubGluZSBfX2F0dHJpYnV0ZV9fCiBlbmRpZgotaWYgIWV4aXN0cygiY19ub19jOTkiKQoraWYgIWV4aXN0cygiY19ub19jOTkiKSAmJiBzOmZ0ICE9IyAnY3BwJwogICBzeW4ga2V5d29yZAljU3RvcmFnZUNsYXNzCWlubGluZSByZXN0cmljdAogZW5kaWYKIGlmICFleGlzdHMoImNfbm9fYzExIikKZGlmZiAtLWdpdCBhL3NyYy9wby9lby5wbyBiL3NyYy9wby9lby5wbwppbmRleCBiNzgxNmZmLi5iMTQ0MTU1IDEwMDY0NAotLS0gYS9zcmMvcG8vZW8ucG8KKysrIGIvc3JjL3BvL2VvLnBvCkBAIC0yMyw4ICsyMyw4IEBACiBtc2dzdHIgIiIKICJQcm9qZWN0LUlkLVZlcnNpb246IFZpbShFc3BlcmFudG8pXG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IFxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE1LTA3LTMwIDE3OjU0KzAyMDBcbiIKLSJQTy1SZXZpc2lvbi1EYXRlOiAyMDE1LTA3LTMwIDE4OjAwKzAyMDBcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxNi0wMi0xMyAyMzo0MiswMTAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxNi0wMi0xMyAyMzo0NSswMTAwXG4iCiAiTGFzdC1UcmFuc2xhdG9yOiBEb21pbmlxdWUgUEVMTMOJIDxkb21pbmlxdWUucGVsbGVAZ21haWwuY29tPlxuIgogIkxhbmd1YWdlLVRlYW06IFxuIgogIkxhbmd1YWdlOiBlb1xuIgpAQCAtMjE1LDYgKzIxNSwxOCBAQAogbXNnaWQgIiAgICBsaW5lPSVsZCAgaWQ9JWQgIG5hbWU9JXMiCiBtc2dzdHIgIiAgICBsaW5pbz0lbGQgIGlkPSVkICBub21vPSVzIgogCittc2dpZCAiRTg5NzogQWxsIGNoYW5uZWxzIGFyZSBpbiB1c2UiCittc2dzdHIgIkU4OTc6IMSIaXVqIGthbmFsb2ogZXN0YXMgdXphdGFqIgorCittc2dpZCAiRTkwMjogQ2Fubm90IGNvbm5lY3QgdG8gcG9ydCIKK21zZ3N0ciAiRTkwMjogTmUgZWJsYXMga29uZWt0aSBhbCBwb3JkbyIKKworbXNnaWQgIkU4OTk6IENhbm5vdCBjb25uZWN0IHRvIHBvcnQgYWZ0ZXIgcmV0cnkyIgorbXNnc3RyICJFODk5OiBOZSBlYmxhcyBrb25la3RpIGFsIHBvcmRvIHBvc3QgMiByZXByb3ZvaiIKKworbXNnaWQgIkU4OTY6IHJlYWQgZnJvbSBjaGFubmVsIgorbXNnc3RyICJFODk2OiBsZWdvIGVsIGthbmFsbyIKKwogbXNnaWQgIkU4MjE6IEZpbGUgaXMgZW5jcnlwdGVkIHdpdGggdW5rbm93biBtZXRob2QiCiBtc2dzdHIgIkU4MjE6IERvc2llcm8gZXN0YXMgxIlpZnJhdGEgcGVyIG5la29uYXRhIG1ldG9kbyIKIApAQCAtNDEyLDkgKzQyNCw2IEBACiBtc2dpZCAiRTcxMjogQXJndW1lbnQgb2YgJXMgbXVzdCBiZSBhIExpc3Qgb3IgRGljdGlvbmFyeSIKIG1zZ3N0ciAiRTcxMjogQXJndW1lbnRvIGRlICVzIGRldmFzIGVzdGkgTGlzdG8gYcWtIFZvcnRhcm8iCiAKLW1zZ2lkICJFNzEzOiBDYW5ub3QgdXNlIGVtcHR5IGtleSBmb3IgRGljdGlvbmFyeSIKLW1zZ3N0ciAiRTcxMzogTmUgZWJsYXMgdXppIG1hbHBsZW5hbiDFnWxvc2lsb24gZGUgVm9ydGFybyIKLQogbXNnaWQgIkU3MTQ6IExpc3QgcmVxdWlyZWQiCiBtc2dzdHIgIkU3MTQ6IExpc3RvIGJlem9uYXRhIgogCkBAIC01MjksNiArNTM4LDkgQEAKIG1zZ2lkICJFNjk1OiBDYW5ub3QgaW5kZXggYSBGdW5jcmVmIgogbXNnc3RyICJFNjk1OiBOZSBlYmxhcyBpbmRla3NpIEZ1bmNyZWYiCiAKK21zZ2lkICJFOTA5OiBDYW5ub3QgaW5kZXggYSBzcGVjaWFsIHZhcmlhYmxlIgorbXNnc3RyICJFOTA5OiBOZSBlYmxhcyBpbmRla3NpIHNwZWNpYWxhbiB2YXJpYWJsb24iCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTExMjogT3B0aW9uIG5hbWUgbWlzc2luZzogJXMiCiBtc2dzdHIgIkUxMTI6IE1hbmthcyBub21vIGRlIG9wY2lvOiAlcyIKQEAgLTU1NCw3ICs1NjYsNyBAQAogbXNnc3RyICJFNjk3OiBNYW5rYXMgZmlubyBkZSBMaXN0byAnXSc6ICVzIgogCiBtc2dpZCAiTm90IGVub3VnaCBtZW1vcnkgdG8gc2V0IHJlZmVyZW5jZXMsIGdhcmJhZ2UgY29sbGVjdGlvbiBhYm9ydGVkISIKLW1zZ3N0ciAiTmUgc3VmacSJYSBtZW1vcnkgcG9yIHZhbG9yaWdpIHJlZmVyZW5jb2puLCBzZW5ydWJpZ2FkbyDEiWVzaWdpdGEhIgorbXNnc3RyICJOZSBzdWZpxIlhIG1lbW9ybyBwb3IgdmFsb3JpZ2kgcmVmZXJlbmNvam4sIHNlbnJ1YmlnYWRvIMSJZXNpZ2l0YSEiCiAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTcyMDogTWlzc2luZyBjb2xvbiBpbiBEaWN0aW9uYXJ5OiAlcyIKQEAgLTYwOCw2ICs2MjAsMTUgQEAKIG1zZ2lkICJFNjk5OiBUb28gbWFueSBhcmd1bWVudHMiCiBtc2dzdHIgIkU2OTk6IFRybyBkYSBhcmd1bWVudG9qIgogCittc2dpZCAiRTkwNjogbm90IGFuIG9wZW4gY2hhbm5lbCIKK21zZ3N0ciAiRTkwNjogbmUgZXN0YXMgbWFsZmVybWl0YSBrYW5hbG8iCisKK21zZ2lkICJFOTk5OiBJbnZhbGlkIGNhbGxiYWNrIGFyZ3VtZW50IgorbXNnc3RyICJFOTk5OiBOZXZhbGlkYSBhcmd1bWVudG8gZGUgcmVhZ2Z1bmN0aW8iCisKK21zZ2lkICJFOTEyOiBjYW5ub3QgdXNlIGNoX3NlbmRleHByKCkgd2l0aCBhIHJhdyBjaGFubmVsIgorbXNnc3RyICJFOTEyOiBuZSBlYmxhcyB1emkgY2hfc2VuZGV4cHIoKSBrdW4ga3J1ZGEga2FuYWxvIgorCiBtc2dpZCAiRTc4NTogY29tcGxldGUoKSBjYW4gb25seSBiZSB1c2VkIGluIEluc2VydCBtb2RlIgogbXNnc3RyICJFNzg1OiBjb21wbGV0ZSgpIHV6ZWJsYXMgbnVyIGVuIEVubWV0YSByZcSdaW1vIgogCkBAIC03MjAsNiArNzQxLDMzIEBACiBtc2dpZCAiRTcyODogVXNpbmcgYSBEaWN0aW9uYXJ5IGFzIGEgTnVtYmVyIgogbXNnc3RyICJFNzI4OiBVem8gZGUgVm9ydGFybyBraWVsIE5vbWJybyIKIAorbXNnaWQgIkU5MTA6IFVzaW5nIGEgSm9iIGFzIGEgTnVtYmVyIgorbXNnc3RyICJFOTEwOiBVem8gZGUgVGFza28ga2llbCBOb21icm8iCisKK21zZ2lkICJFOTEzOiBVc2luZyBhIENoYW5uZWwgYXMgYSBOdW1iZXIiCittc2dzdHIgIkU5MTM6IFV6byBkZSBLYW5hbG8ga2llbCBOb21icm8iCisKK21zZ2lkICJFODkxOiBVc2luZyBhIEZ1bmNyZWYgYXMgYSBGbG9hdCIKK21zZ3N0ciAiRTg5MTogVXpvIGRlIEZ1bmNyZWYga2llbCBHbGl0cHVua3Rub21icm8iCisKK21zZ2lkICJFODkyOiBVc2luZyBhIFN0cmluZyBhcyBhIEZsb2F0IgorbXNnc3RyICJFODkyOiBVem8gZGUgxIhlbm8ga2llbCBHbGl0cHVua3Rub21icm8iCisKK21zZ2lkICJFODkzOiBVc2luZyBhIExpc3QgYXMgYSBGbG9hdCIKK21zZ3N0ciAiRTg5MzogVXpvIGRlIExpc3RvIGtpZWwgR2xpdHB1bmt0bm9tYnJvIgorCittc2dpZCAiRTg5NDogVXNpbmcgYSBEaWN0aW9uYXJ5IGFzIGEgRmxvYXQiCittc2dzdHIgIkU4OTQ6IFV6byBkZSBWb3J0YXJvIGtpZWwgR2xpdHB1bmt0bm9tYnJvIgorCittc2dpZCAiRTkwNzogVXNpbmcgYSBzcGVjaWFsIHZhbHVlIGFzIGEgRmxvYXQiCittc2dzdHIgIkU5MDc6IFV6byBkZSBzcGVjaWFsYSB2YWxvcm8ga2llbCBHbGl0cHVua3Rub21icm8iCisKK21zZ2lkICJFOTExOiBVc2luZyBhIEpvYiBhcyBhIEZsb2F0IgorbXNnc3RyICJFOTExOiBVem8gZGUgVGFza28ga2llbCBHbGl0cHVua3Rub21icm8iCisKK21zZ2lkICJFOTE0OiBVc2luZyBhIENoYW5uZWwgYXMgYSBGbG9hdCIKK21zZ3N0ciAiRTkxNDogVXpvIGRlIEthbmFsbyBraWVsIEdsaXRwdW5rdG5vbWJybyIKKwogbXNnaWQgIkU3Mjk6IHVzaW5nIEZ1bmNyZWYgYXMgYSBTdHJpbmciCiBtc2dzdHIgIkU3Mjk6IHV6byBkZSBGdW5jcmVmIGtpZWwgxIhlbm8iCiAKQEAgLTcyOSw2ICs3NzcsOSBAQAogbXNnaWQgIkU3MzE6IHVzaW5nIERpY3Rpb25hcnkgYXMgYSBTdHJpbmciCiBtc2dzdHIgIkU3MzE6IHV6byBkZSBWb3J0YXJvIGtpZWwgxIhlbm8iCiAKK21zZ2lkICJFOTA4OiB1c2luZyBhbiBpbnZhbGlkIHZhbHVlIGFzIGEgU3RyaW5nIgorbXNnc3RyICJFOTA4OiB1em8gZGUgbmV2YWxpZGEgdmFsb3JvIGtpZWwgxIhlbm8iCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTcwNjogVmFyaWFibGUgdHlwZSBtaXNtYXRjaCBmb3I6ICVzIgogbXNnc3RyICJFNzA2OiBOZWtvbmdydWEgZGF0dW10aXBvIGRlIHZhcmlhYmxvOiAlcyIKQEAgLTk0MSw2ICs5OTIsMTMgQEAKIG1zZ2lkICJJbGxlZ2FsIHN0YXJ0aW5nIGNoYXIiCiBtc2dzdHIgIk5ldmFsaWRhIGVrYSBzaWdubyIKIAorbXNnaWQgIiIKKyJcbiIKKyIjIEJhciBsaW5lcywgY29waWVkIHZlcmJhdGltOlxuIgorbXNnc3RyICIiCisiXG4iCisiIyBMaW5pb2oga29tZW5jYW50YWogcGVyIHwsIGtvcGlpdGFqIHNlbiDFnWFuxJ1vOlxuIgorCiBtc2dpZCAiU2F2ZSBBcyIKIG1zZ3N0ciAiS29uc2Vydmkga2llbCIKIApAQCAtMTE0OCw2ICsxMjA2LDEzIEBACiBtc2dpZCAiY21kOiAlcyIKIG1zZ3N0ciAia21kOiAlcyIKIAorbXNnaWQgImZyYW1lIGlzIHplcm8iCittc2dzdHIgImthZHJvIGVzdGFzIG51bCIKKworIywgYy1mb3JtYXQKK21zZ2lkICJmcmFtZSBhdCBoaWdoZXN0IGxldmVsOiAlZCIKK21zZ3N0ciAia2Fkcm8gamUgbGEgcGxlaiBhbHRhIG5pdmVsbzogJWQiCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJlYWtwb2ludCBpbiBcIiVzJXNcIiBsaW5lICVsZCIKIG1zZ3N0ciAiS29udHJvbHB1bmt0byBlbiBcIiVzJXNcIiBsaW5pbyAlbGQiCkBAIC0yNjI0LDYgKzI2ODksMTMgQEAKICJFODE1OiBCZWRhxa1yaW5kZSwgdGl1IGtvbWFuZG8gZXN0YXMgbWFsxZ1hbHRpdGEsIG5lIGVibGlzIMWdYXJnaSBsYSAiCiAiYmlibGlvdGVrb2puLiIKIAorbXNnaWQgIiIKKyJFODk1OiBTb3JyeSwgdGhpcyBjb21tYW5kIGlzIGRpc2FibGVkLCB0aGUgTXpTY2hlbWUncyByYWNrZXQvYmFzZSBtb2R1bGUgIgorImNvdWxkIG5vdCBiZSBsb2FkZWQuIgorbXNnc3RyICIiCisiRTg5NTogQmVkYcWtcmluZGUsIHRpdSBrb21hbmRvIGVzdGFzIG1hbMWdYWx0aXRhLCBuZSBlYmxpcyDFnWFyZ2kgbGEgbW9kdWxvbiBkZSAiCisiTXpTY2hlbWUgcmFja2V0L2Jhc2UuIgorCiBtc2dpZCAiaW52YWxpZCBleHByZXNzaW9uIgogbXNnc3RyICJuZXZhbGlkYSBlc3ByaW1vIgogCkBAIC0zODAxLDE1ICszODczLDEyIEBACiAiXG4iCiAiKDEpIEFub3RoZXIgcHJvZ3JhbSBtYXkgYmUgZWRpdGluZyB0aGUgc2FtZSBmaWxlLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSxcbiIKICIgICAgYmUgY2FyZWZ1bCBub3QgdG8gZW5kIHVwIHdpdGggdHdvIGRpZmZlcmVudCBpbnN0YW5jZXMgb2YgdGhlIHNhbWVcbiIKLSIgICAgZmlsZSB3aGVuIG1ha2luZyBjaGFuZ2VzLiIKKyIgICAgZmlsZSB3aGVuIG1ha2luZyBjaGFuZ2VzLiAgUXVpdCwgb3IgY29udGludWUgd2l0aCBjYXV0aW9uLlxuIgogbXNnc3RyICIiCiAiXG4iCi0iKDEpIEFsaWEgcHJvZ3JhbW8gZWJsZSByZWRha3RhcyBsYSBzYW1hbiBkb3NpZXJvbi5cbiIKLSIgICAgU2UgamVzLCBlc3R1IHNpbmdhcmRhIHBvciBuZSBoYXZpIGR1IG1hbHNhbWFqblxuIgotIiAgICBhcGVyb2puIGRlIGxhIHNhbWEgZG9zaWVybywga2lhbSB2aSBmYXJvcyDFnWFuxJ1vam4uIgotCi1tc2dpZCAiICBRdWl0LCBvciBjb250aW51ZSB3aXRoIGNhdXRpb24uXG4iCi1tc2dzdHIgIiAgRWxpcnUsIGHFrSBkYcWtcmlndSBzaW5nYXJkZS5cbiIKKyIoMSkgQWxpYSBwcm9ncmFtbyBlYmxlIHJlZGFrdGFzIGxhIHNhbWFuIGRvc2llcm9uLiBTZSBqZXMsIGVzdHUgc2luZ2FyZGFcbiIKKyIgICAgcG9yIG5lIGhhdmkgZHUgbWFsc2FtYWpuIGFwZXJvam4gZGUgbGEgc2FtYSBkb3NpZXJvLCBraWFtIHZpIGZhcm9zXG4iCisiICAgIMWdYW7EnW9qbi4gRWxpcnUgYcWtIGRhxa1yaWd1IHNpbmdhcmRlLlxuIgogCiBtc2dpZCAiKDIpIEFuIGVkaXQgc2Vzc2lvbiBmb3IgdGhpcyBmaWxlIGNyYXNoZWQuXG4iCiBtc2dzdHIgIigyKSBSZWRha3RhIHNlYW5jbyBkZSB0aXUgZG9zaWVybyBrb2xhcHNpcy5cbiIKQEAgLTQxMTYsMjAgKzQxODUsMTEgQEAKIG1zZ2lkICJFMzQ3OiBObyBtb3JlIGZpbGUgXCIlc1wiIGZvdW5kIGluIHBhdGgiCiBtc2dzdHIgIkUzNDc6IE5lIHBsdSB0cm92aXMgZG9zaWVyb24gXCIlc1wiIGVuIHNlcsSJdm9qbyIKIAotbXNnaWQgIkNhbm5vdCBjb25uZWN0IHRvIE5ldGJlYW5zICMyIgotbXNnc3RyICJOZSBlYmxhcyBrb25la3RpIGFsIE5ldGJlYW5zIG4tcm8gMiIKLQotbXNnaWQgIkNhbm5vdCBjb25uZWN0IHRvIE5ldGJlYW5zIgotbXNnc3RyICJOZSBlYmxhcyBrb25la3RpIGFsIE5ldGJlYW5zIgotCiAjLCBjLWZvcm1hdAogbXNnaWQgIkU2Njg6IFdyb25nIGFjY2VzcyBtb2RlIGZvciBOZXRCZWFucyBjb25uZWN0aW9uIGluZm8gZmlsZTogXCIlc1wiIgogbXNnc3RyICIiCiAiRTY2ODogTmV2YWxpZGEgcGVybWVzbyBkZSBkb3NpZXJvIGRlIGluZm9ybW8gZGUga29uZWt0byBOZXRCZWFuczogXCIlc1wiIgogCi1tc2dpZCAicmVhZCBmcm9tIE5ldGJlYW5zIHNvY2tldCIKLW1zZ3N0ciAibGVnbyBlbCBrb250YWt0b3NrYXRvbG8gZGUgTmV0YmVhbnMiCi0KICMsIGMtZm9ybWF0CiBtc2dpZCAiRTY1ODogTmV0QmVhbnMgY29ubmVjdGlvbiBsb3N0IGZvciBidWZmZXIgJWxkIgogbXNnc3RyICJFNjU4OiBLb25la3RvIGRlIE5ldEJlYW5zIHBlcmRpdGEgcG9yIGJ1ZnJvICVsZCIKQEAgLTQ1ODQsMTggKzQ2NDQsMTQgQEAKICJcbiIKICJOZSBwb3ZpcyDFnWFsdGkga3VudGVrc3RvbiBkZSBzZWt1cmVjbyBwb3IgIgogCi1tc2dpZCAiQ291bGQgbm90IHNldCBzZWN1cml0eSBjb250ZXh0ICIKLW1zZ3N0ciAiTmUgcG92aXMgYWtpcmkga3VudGVrc3RvbiBkZSBzZWt1cmVjbyAiCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzZXQgc2VjdXJpdHkgY29udGV4dCAlcyBmb3IgJXMiCittc2dzdHIgIk5lIHBvdmlzIMWdYWx0aSBrdW50ZWtzdG9uIGRlIHNla3VyZWNvICVzIHBvciAlcyIKIAotbXNnaWQgIiBmb3IgIgotbXNnc3RyICIgcG9yICIKLQotIy4gbm8gZW5vdWdoIHNpemUgT1IgdW5leHBlY3RlZCBlcnJvcgotbXNnaWQgIkNvdWxkIG5vdCBnZXQgc2VjdXJpdHkgY29udGV4dCAiCi1tc2dzdHIgIk5lIHBvdmlzIGFraXJpIGt1bnRla3N0b24gZGUgc2VrdXJlY28gIgotCi1tc2dpZCAiLiBSZW1vdmluZyBpdCFcbiIKLW1zZ3N0ciAiLiDEnGkgZXN0YXMgZm9yaWdhbnRhIVxuIgorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZ2V0IHNlY3VyaXR5IGNvbnRleHQgJXMgZm9yICVzLiBSZW1vdmluZyBpdCEiCittc2dzdHIgIiIKKyJOZSBwb3ZpcyBha2lyaSBrdW50ZWtzdG9uIGRlIHNla3VyZWNvICVzIHBvciAlcy4gR2kgbnVuIGVzdGFzIGZvcmlnYXRhISIKIAogbXNnaWQgIiIKICJcbiIKQEAgLTU0NTgsNiArNTUxNCw5IEBACiBtc2dpZCAiRTM5MDogSWxsZWdhbCBhcmd1bWVudDogJXMiCiBtc2dzdHIgIkUzOTA6IE5ldmFsaWRhIGFyZ3VtZW50bzogJXMiCiAKK21zZ2lkICJzeW50YXggaXNrZXl3b3JkICIKK21zZ3N0ciAic2ludGFrc28gaXNrZXl3b3JkICIKKwogIywgYy1mb3JtYXQKIG1zZ2lkICJFMzkxOiBObyBzdWNoIHN5bnRheCBjbHVzdGVyOiAlcyIKIG1zZ3N0ciAiRTM5MTogTmVuaWEgc2ludGFrc2EgZmFza286ICVzIgpAQCAtNTUzNSw2ICs1NTk0LDEwIEBACiBtc2dzdHIgIkU3ODk6IE1hbmthcyAnXSc6ICVzIgogCiAjLCBjLWZvcm1hdAorbXNnaWQgIkU4OTA6IHRyYWlsaW5nIGNoYXIgYWZ0ZXIgJ10nOiAlc10lcyIKK21zZ3N0ciAiRTg5MDogdm9zdGEgc2lnbm8gcG9zdCAnXSc6ICVzXSVzIgorCisjLCBjLWZvcm1hdAogbXNnaWQgIkUzOTg6IE1pc3NpbmcgJz0nOiAlcyIKIG1zZ3N0ciAiRTM5ODogTWFua2FzICc9JzogJXMiCiAKQEAgLTY1NzUsNiArNjYzOCw5IEBACiBtc2dpZCAiRTc5NDogQ2Fubm90IHNldCB2YXJpYWJsZSBpbiB0aGUgc2FuZGJveDogXCIlc1wiIgogbXNnc3RyICJFNzk0OiBOZSBlYmxhcyBhZ29yZGkgdmFyaWFibG9uIGVuIGxhIHNhYmxvbHVkZWpvOiBcIiVzXCIiCiAKK21zZ2lkICJFNzEzOiBDYW5ub3QgdXNlIGVtcHR5IGtleSBmb3IgRGljdGlvbmFyeSIKK21zZ3N0ciAiRTcxMzogTmUgZWJsYXMgdXppIG1hbHBsZW5hbiDFnWxvc2lsb24gZGUgVm9ydGFybyIKKwogbXNnaWQgIkU0NzogRXJyb3Igd2hpbGUgcmVhZGluZyBlcnJvcmZpbGUiCiBtc2dzdHIgIkU0NzogRXJhcm8gZHVtIGxlZ2FkbyBkZSBlcmFyZG9zaWVybyIKIApkaWZmIC0tZ2l0IGEvc3JjL3BvL2l0LnBvIGIvc3JjL3BvL2l0LnBvCmluZGV4IDQ1ZmFlN2MuLjQxM2VlMWIgMTAwNjQ0Ci0tLSBhL3NyYy9wby9pdC5wbworKysgYi9zcmMvcG8vaXQucG8KQEAgLTEzLDEzICsxMywxMyBAQAogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiB2aW0gNy40XG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IFxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE1LTA4LTExIDIwOjU4KzAyMDBcbiIKLSJQTy1SZXZpc2lvbi1EYXRlOiAgMjAxNS0wOC0xMSAyMjowMiswMjAwXG4iCi0iTGFzdC1UcmFuc2xhdG9yOiAgIFZsYWQgU2FuZHJpbmkgICA8dmxhZC5nZW50bHlAZ21haWwuY29tPlxuIgotIkxhbmd1YWdlLVRlYW06ICAgICBJdGFsaWFuICAgICAgICAgICAgICAgICAgIEFudG9uaW8gQ29sb21ibyA8YXpjMTAwQGdtYWlsLiIKLSJjb20+ICAgICAgICAgICAgICAgICAgIFZsYWQgU2FuZHJpbmkgPHZsYWQuZ2VudGx5QGdtYWlsLiIKLSJjb20+ICAgICAgICAgICAgICAgICAgIEx1Y2lhbm8gTW9udGFuYXJvIDxtaWtlbGltYUBjaXJ1bGxhLm5ldD5cbiIKLSJMYW5ndWFnZTogXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTYtMDItMTEgMTI6MTArMDEwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6ICAyMDE2LTAyLTExIDE0OjQyKzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6ICAgQW50b25pbyBDb2xvbWJvICAgPGF6YzEwMEBnbWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogICAgIEFudG9uaW8gQ29sb21ibyAgIDxhemMxMDBAZ21haWwuY29tPiIKKyIgICAgICAgICAgICAgICAgICAgVmxhZCBTYW5kcmluaSAgICAgPHZsYWQuZ2VudGx5QGdtYWlsLmNvbSIKKyIgICAgICAgICAgICAgICAgICAgTHVjaWFubyBNb250YW5hcm8gPG1pa2VsaW1hQGNpcnVsbGEubmV0PlxuIgorIkxhbmd1YWdlOiBJdGFsaWFuXG4iCiAiTUlNRS1WZXJzaW9uOiAxLjBcbiIKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9SVNPXzg4NTktMVxuIgogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDgtYml0XG4iCkBAIC0yMDQsNiArMjA0LDE4IEBACiBtc2dpZCAiICAgIGxpbmU9JWxkICBpZD0lZCAgbmFtZT0lcyIKIG1zZ3N0ciAiICAgIHJpZ2E9JWxkIGlkPSVkLCBub21lPSVzIgogCittc2dpZCAiRTg5NzogQWxsIGNoYW5uZWxzIGFyZSBpbiB1c2UiCittc2dzdHIgIkU4OTc6IFR1dHRpIGkgY2FuYWxpIHNvbm8gaW4gdXNvIgorCittc2dpZCAiRTkwMjogQ2Fubm90IGNvbm5lY3QgdG8gcG9ydCIKK21zZ3N0ciAiRTkwMjogTm9uIHBvc3NvIGNvbW1ldHRlcm1pIGFsbGEgcG9ydGEiCisKK21zZ2lkICJFODk5OiBDYW5ub3QgY29ubmVjdCB0byBwb3J0IGFmdGVyIHJldHJ5MiIKK21zZ3N0ciAiRTg5OTogTm9uIHBvc3NvIGNvbW1ldHRlcm1pIGFsbGEgcG9ydGEgZG9wbyByZXRyeTIiCisKK21zZ2lkICJFODk2OiByZWFkIGZyb20gY2hhbm5lbCIKK21zZ3N0ciAiRTg5NjogbGV0dHVyYSBkYWwgY2FuYWxlIgorCiBtc2dpZCAiRTgyMTogRmlsZSBpcyBlbmNyeXB0ZWQgd2l0aCB1bmtub3duIG1ldGhvZCIKIG1zZ3N0ciAiRTgyMTogRmlsZSBjaWZyYXRvIGNvbiBtZXRvZG8gc2Nvbm9zY2l1dG8iCiAKQEAgLTQwMCw5ICs0MTIsNiBAQAogbXNnaWQgIkU3MTI6IEFyZ3VtZW50IG9mICVzIG11c3QgYmUgYSBMaXN0IG9yIERpY3Rpb25hcnkiCiBtc2dzdHIgIkU3MTI6IEwnYXJnb21lbnRvIGRpICVzIGRldmUgZXNzZXJlIHVuYSBMaXN0YSBvIHVuIERpemlvbmFyaW8iCiAKLW1zZ2lkICJFNzEzOiBDYW5ub3QgdXNlIGVtcHR5IGtleSBmb3IgRGljdGlvbmFyeSIKLW1zZ3N0ciAiRTcxMzogTm9uIHBvc3NvIHVzYXJlIHVuYSBjaGlhdmUgbnVsbGEgcGVyIGlsIERpemlvbmFyaW8iCi0KIG1zZ2lkICJFNzE0OiBMaXN0IHJlcXVpcmVkIgogbXNnc3RyICJFNzE0OiDIIG5lY2Vzc2FyaWEgdW5hIExpc3RhIgogCkBAIC00NDQsNyArNDUzLDcgQEAKIAogIyBudW92bwogbXNnaWQgIkU4MDY6IHVzaW5nIEZsb2F0IGFzIGEgU3RyaW5nIgotbXNnc3RyICJFODA2OiB1c28gZGkgdW4gbnVtZXJvIGNvbiB2aXJnb2xhIGNvbWUgc3RyaW5nYSIKK21zZ3N0ciAiRTgwNjogdXNvIGRpIHVuIE51bWVyby1hLXZpcmdvbGEtbW9iaWxlIGNvbWUgU3RyaW5nYSIKIAogbXNnaWQgIkU2ODc6IExlc3MgdGFyZ2V0cyB0aGFuIExpc3QgaXRlbXMiCiBtc2dzdHIgIkU2ODc6IERlc3RpbmF6aW9uaSBwafkgbnVtZXJvc2UgZGVnbGkgZWxlbWVudGkgZGkgTGlzdGEiCkBAIC01MTAsNyArNTE5LDcgQEAKIG1zZ3N0ciAiRTY5NDogT3BlcmF6aW9uZSBub24gdmFsaWRhIHBlciBGdW5jcmVmIgogCiBtc2dpZCAiRTgwNDogQ2Fubm90IHVzZSAnJScgd2l0aCBGbG9hdCIKLW1zZ3N0ciAiRTgwNDogTm9uIHNpIHB18iB1c2FyZSAnJScgY29uIHVuIG51bWVybyBjb24gdmlyZ29sYSIKK21zZ3N0ciAiRTgwNDogTm9uIHNpIHB18iB1c2FyZSAnJScgY29uIHVuIE51bWVyby1hLXZpcmdvbGEtbW9iaWxlIgogCiBtc2dpZCAiRTExMDogTWlzc2luZyAnKSciCiBtc2dzdHIgIkUxMTA6IE1hbmNhICcpJyIKQEAgLTUxOCw2ICs1MjcsOSBAQAogbXNnaWQgIkU2OTU6IENhbm5vdCBpbmRleCBhIEZ1bmNyZWYiCiBtc2dzdHIgIkU2OTU6IE5vbiBwb3NzbyBpbmRpY2l6emFyZSB1biBGdW5jcmVmIgogCittc2dpZCAiRTkwOTogQ2Fubm90IGluZGV4IGEgc3BlY2lhbCB2YXJpYWJsZSIKK21zZ3N0ciAiRTkwOTogTm9uIHBvc3NvIGluZGljaXp6YXJlIHVuYSB2YXJpYWJpbGUgc3BlY2lhbGUiCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTExMjogT3B0aW9uIG5hbWUgbWlzc2luZzogJXMiCiBtc2dzdHIgIkUxMTI6IE5vbWUgT3B6aW9uZSBtYW5jYW50ZTogJXMiCkBAIC01ODksNyArNjAxLDcgQEAKIG1zZ3N0ciAiRTcyNTogQ2hpYW1hdGEgZGkgZnVuemlvbmUgZGljdCBpbiBhc3NlbnphIGRpIERpemlvbmFyaW86ICVzIgogCiBtc2dpZCAiRTgwODogTnVtYmVyIG9yIEZsb2F0IHJlcXVpcmVkIgotbXNnc3RyICJFODA4OiBDaSB2dW9sZSB1biBudW1lcm8gaW50ZXJvIG8gY29uIHZpcmdvbGEiCittc2dzdHIgIkU4MDg6IENpIHZ1b2xlIHVuIE51bWVybyBvIHVuIE51bWVyby1hLXZpcmdvbGEtbW9iaWxlIgogCiBtc2dpZCAiYWRkKCkgYXJndW1lbnQiCiBtc2dzdHIgImFyZ29tZW50byBkaSBhZGQoKSIKQEAgLTU5Nyw2ICs2MDksMTUgQEAKIG1zZ2lkICJFNjk5OiBUb28gbWFueSBhcmd1bWVudHMiCiBtc2dzdHIgIkU2OTk6IFRyb3BwaSBhcmdvbWVudGkiCiAKK21zZ2lkICJFOTA2OiBub3QgYW4gb3BlbiBjaGFubmVsIgorbXNnc3RyICJFOTA2OiBjYW5hbGUgbm9uIGFwZXJ0byIKKworbXNnaWQgIkU5OTk6IEludmFsaWQgY2FsbGJhY2sgYXJndW1lbnQiCittc2dzdHIgIkU5OTk6IEFyZ29tZW50byBjYWxsYmFjayBub24gdmFsaWRvIgorCittc2dpZCAiRTkxMjogY2Fubm90IHVzZSBjaF9zZW5kZXhwcigpIHdpdGggYSByYXcgY2hhbm5lbCIKK21zZ3N0ciAiRTkxMjogbm9uIHBvc3NvIHVzYXJlIGNoX3NlbmRleHByKCkgY29uIHVuIGNhbmFsZSBncmV6em8iCisKIG1zZ2lkICJFNzg1OiBjb21wbGV0ZSgpIGNhbiBvbmx5IGJlIHVzZWQgaW4gSW5zZXJ0IG1vZGUiCiBtc2dzdHIgIkU3ODU6IGNvbXBsZXRlKCkgcHXyIGVzc2VyZSB1c2F0YSBzb2xvIGluIG1vZGFsaXTgIGluc2VyaW1lbnRvIgogCkBAIC02OTgsNyArNzE5LDcgQEAKIG1zZ3N0ciAiRTY3NzogRXJyb3JlIGluIHNjcml0dHVyYSBzdSBmaWxlIHRlbXBvcmFuZW8iCiAKIG1zZ2lkICJFODA1OiBVc2luZyBhIEZsb2F0IGFzIGEgTnVtYmVyIgotbXNnc3RyICJFODA1OiBVc28gZGkgdW4gbnVtZXJvIGNvbiB2aXJnb2xhIGNvbWUgaW50ZXJvIgorbXNnc3RyICJFODA1OiBVc28gZGkgdW4gTnVtZXJvLWEtdmlyZ29sYS1tb2JpbGUgY29tZSBOdW1lcm8iCiAKIG1zZ2lkICJFNzAzOiBVc2luZyBhIEZ1bmNyZWYgYXMgYSBOdW1iZXIiCiBtc2dzdHIgIkU3MDM6IFVzbyBkaSBGdW5jcmVmIGNvbWUgTnVtZXJvIgpAQCAtNzA5LDYgKzczMCwyNyBAQAogbXNnaWQgIkU3Mjg6IFVzaW5nIGEgRGljdGlvbmFyeSBhcyBhIE51bWJlciIKIG1zZ3N0ciAiRTcyODogVXNvIGRpIERpemlvbmFyaW8gY29tZSBOdW1lcm8iCiAKK21zZ2lkICJFOTEwOiBVc2luZyBhIEpvYiBhcyBhIE51bWJlciIKK21zZ3N0ciAiRTkxMDogVXNvIGRpIEpvYiBjb21lIE51bWVybyIKKworbXNnaWQgIkU4OTE6IFVzaW5nIGEgRnVuY3JlZiBhcyBhIEZsb2F0IgorbXNnc3RyICJFODkxOiBVc28gZGkgRnVuY3JlZiBjb21lIE51bWVyby1hLXZpcmdvbGEtbW9iaWxlIgorCittc2dpZCAiRTg5MjogVXNpbmcgYSBTdHJpbmcgYXMgYSBGbG9hdCIKK21zZ3N0ciAiRTg5MjogVXNvIGRpIFN0cmluZ2EgY29tZSBOdW1lcm8tYS12aXJnb2xhLW1vYmlsZSIKKworbXNnaWQgIkU4OTM6IFVzaW5nIGEgTGlzdCBhcyBhIEZsb2F0IgorbXNnc3RyICJFODkzOiBVc28gZGkgTGlzdGEgY29tZSBOdW1lcm8tYS12aXJnb2xhLW1vYmlsZSIKKworbXNnaWQgIkU4OTQ6IFVzaW5nIGEgRGljdGlvbmFyeSBhcyBhIEZsb2F0IgorbXNnc3RyICJFODk0OiBVc28gZGkgRGl6aW9uYXJpbyBjb21lIE51bWVyby1hLXZpcmdvbGEtbW9iaWxlIgorCittc2dpZCAiRTkwNzogVXNpbmcgYSBzcGVjaWFsIHZhbHVlIGFzIGEgRmxvYXQiCittc2dzdHIgIkU5MDc6IFVzbyBkaSB2YWxvcmUgc3BlY2lhbGUgY29tZSBOdW1lcm8tYS12aXJnb2xhLW1vYmlsZSIKKworbXNnaWQgIkU5MTE6IFVzaW5nIGEgSm9iIGFzIGEgRmxvYXQiCittc2dzdHIgIkU5MTE6IFVzbyBkaSBKb2IgY29tZSBOdW1lcm8tYS12aXJnb2xhLW1vYmlsZSIKKwogbXNnaWQgIkU3Mjk6IHVzaW5nIEZ1bmNyZWYgYXMgYSBTdHJpbmciCiBtc2dzdHIgIkU3Mjk6IHVzbyBkaSBGdW5jcmVmIGNvbWUgU3RyaW5nYSIKIApAQCAtNzE4LDYgKzc2MCwxMCBAQAogbXNnaWQgIkU3MzE6IHVzaW5nIERpY3Rpb25hcnkgYXMgYSBTdHJpbmciCiBtc2dzdHIgIkU3MzE6IHVzbyBkaSBEaXppb25hcmlvIGNvbWUgU3RyaW5nYSIKIAorIyBudW92bworbXNnaWQgIkU5MDg6IHVzaW5nIGFuIGludmFsaWQgdmFsdWUgYXMgYSBTdHJpbmciCittc2dzdHIgIkU5MDg6IHVzbyBkaSB1biB2YWxvcmUgbm9uIHZhbGlkbyBjb21lIFN0cmluZ2EiCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTcwNjogVmFyaWFibGUgdHlwZSBtaXNtYXRjaCBmb3I6ICVzIgogbXNnc3RyICJFNzA2OiBUaXBvIGRpIHZhcmlhYmlsZSBub24gY29ycmlzcG9uZGVudGUgcGVyOiAlcyIKQEAgLTc4Niw5ICs4MzIsMTEgQEAKIG1zZ2lkICJFMTI5OiBGdW5jdGlvbiBuYW1lIHJlcXVpcmVkIgogbXNnc3RyICJFMTI5OiBOb21lIGZ1bnppb25lIG5lY2Vzc2FyaW8iCiAKKyMsIGMtZm9ybWF0CiBtc2dpZCAiRTEyODogRnVuY3Rpb24gbmFtZSBtdXN0IHN0YXJ0IHdpdGggYSBjYXBpdGFsIG9yIFwiczpcIjogJXMiCi1tc2dzdHIgIkUxMjg6IElsIG5vbWUgZnVuemlvbmUgZGV2ZSBpbml6aWFyZSBjb24gbWFpdXNjb2xhIG8gXCJzOlwiOiAlcyIgCittc2dzdHIgIkUxMjg6IElsIG5vbWUgZnVuemlvbmUgZGV2ZSBpbml6aWFyZSBjb24gbWFpdXNjb2xhIG8gXCJzOlwiOiAlcyIKIAorIywgYy1mb3JtYXQKIG1zZ2lkICJFODg0OiBGdW5jdGlvbiBuYW1lIGNhbm5vdCBjb250YWluIGEgY29sb246ICVzIgogbXNnc3RyICJFODg0OiBJbCBub21lIGRlbGxhIGZ1bnppb25lIG5vbiBwdfIgY29udGVuZXJlIHVuIGR1ZSBwdW50aTogJXMiCiAKQEAgLTkwOCw2ICs5NTYsNyBAQAogbXNnaWQgIldyaXRpbmcgdmltaW5mbyBmaWxlIFwiJXNcIiIKIG1zZ3N0ciAiU2NyaXZvIGZpbGUgdmltaW5mbyBcIiVzXCIiCiAKKyMsIGMtZm9ybWF0CiBtc2dpZCAiRTg4NjogQ2FuJ3QgcmVuYW1lIHZpbWluZm8gZmlsZSB0byAlcyEiCiBtc2dzdHIgIkU4ODY6IE5vbiByaWVzY28gYSByaW5vbWluYXJlIGlsIGZpbGUgdmltaW5mbyBhICVzISIKIApAQCAtOTI5LDYgKzk3OCwxMyBAQAogbXNnaWQgIklsbGVnYWwgc3RhcnRpbmcgY2hhciIKIG1zZ3N0ciAiQ2FyYXR0ZXJlIGluaXppYWxlIG5vbiBhbW1lc3NvIgogCittc2dpZCAiIgorIlxuIgorIiMgQmFyIGxpbmVzLCBjb3BpZWQgdmVyYmF0aW06XG4iCittc2dzdHIgIiIKKyJcbiIKKyIjIFJpZ2hlIGNoZSBpbml6aWFubyBjb24gJ3wnLCBzZW1wbGljZW1lbnRlIGNvcGlhdGU6XG4iCisKIG1zZ2lkICJTYXZlIEFzIgogbXNnc3RyICJTYWx2YSBjb24gTm9tZSIKIApAQCAtMTEzNSw2ICsxMTkxLDEzIEBACiBtc2dpZCAiY21kOiAlcyIKIG1zZ3N0ciAiY29tOiAlcyIKIAorbXNnaWQgImZyYW1lIGlzIHplcm8iCittc2dzdHIgImFsIGxpdmVsbG8gemVybyIKKworIywgYy1mb3JtYXQKK21zZ2lkICJmcmFtZSBhdCBoaWdoZXN0IGxldmVsOiAlZCIKK21zZ3N0ciAiYWwgbGl2ZWxsbyBwafkgYWx0bzogJWQiCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJlYWtwb2ludCBpbiBcIiVzJXNcIiBsaW5lICVsZCIKIG1zZ3N0ciAiUGF1c2EgaW4gXCIlcyVzXCIgcmlnYSAlbGQiCkBAIC0xMTY2LDggKzEyMjksNyBAQAogCiBtc2dpZCAiV2FybmluZzogRW50ZXJlZCBvdGhlciBidWZmZXIgdW5leHBlY3RlZGx5IChjaGVjayBhdXRvY29tbWFuZHMpIgogbXNnc3RyICIiCi0iQXZ2aXNvOiBFbnRyYXRvIGluIGFsdHJvIGJ1ZmZlciBpbmFzcGV0dGF0YW1lbnRlIChjb250cm9sbGFyZSAiCi0iYXV0b2NvbWFuZGkpIgorIkF2dmlzbzogRW50cmF0byBpbiBhbHRybyBidWZmZXIgaW5hc3BldHRhdGFtZW50ZSAoY29udHJvbGxhcmUgYXV0b2NvbWFuZGkpIgogCiBtc2dpZCAiRTE2MzogVGhlcmUgaXMgb25seSBvbmUgZmlsZSB0byBlZGl0IgogbXNnc3RyICJFMTYzOiBDJ+ggdW4gc29sbyBmaWxlIGRhIGVsYWJvcmFyZSIKQEAgLTEzNTYsNiArMTQxOCw3IEBACiBtc2dpZCAiRTE4NDogTm8gc3VjaCB1c2VyLWRlZmluZWQgY29tbWFuZDogJXMiCiBtc2dzdHIgIkUxODQ6IENvbWFuZG8gZGVmaW5pdG8gZGFsbCd1dGVudGUgJXMgaW5lc2lzdGVudGUiCiAKKyMsIGMtZm9ybWF0CiBtc2dpZCAiRTE4MDogSW52YWxpZCBhZGRyZXNzIHR5cGUgdmFsdWU6ICVzIgogbXNnc3RyICJFMTgwOiBUaXBvIGRpIGluZGlyaXp6byBub24gdmFsaWRvOiAlcyIKIApAQCAtMTgxMSw4ICsxODc0LDggQEAKICJFNTEzOiB3cml0ZSBlcnJvciwgY29udmVyc2lvbiBmYWlsZWQgaW4gbGluZSAlbGQgKG1ha2UgJ2ZlbmMnIGVtcHR5IHRvICIKICJvdmVycmlkZSkiCiBtc2dzdHIgIiIKLSJFNTEzOiBlcnJvcmUgaW4gc2NyaXR0dXJhLCBjb252ZXJzaW9uZSBmYWxsaXRhIGFsbGEgcmlnYSAlbGQgKHJlbmRlcmUgIgotIidmZW5jJyBudWxsbyBwZXIgZXNlZ3VpcmUgY29tdW5xdWUpIgorIkU1MTM6IGVycm9yZSBpbiBzY3JpdHR1cmEsIGNvbnZlcnNpb25lIGZhbGxpdGEgYWxsYSByaWdhICVsZCAocmVuZGVyZSAnZmVuYycgIgorIm51bGxvIHBlciBlc2VndWlyZSBjb211bnF1ZSkiCiAKIG1zZ2lkICJFNTE0OiB3cml0ZSBlcnJvciAoZmlsZSBzeXN0ZW0gZnVsbD8pIgogbXNnc3RyICJFNTE0OiBlcnJvcmUgaW4gc2NyaXR0dXJhICgnRmlsZSBTeXN0ZW0nIHBpZW5vPykiCkBAIC0xODY4LDE2ICsxOTMxLDE2IEBACiBtc2dzdHIgIltpbiBmb3JtYXRvIERPU10iCiAKIG1zZ2lkICJbbWFjXSIKLW1zZ3N0ciAiW01BQ10iCittc2dzdHIgIltNYWNdIgogCiBtc2dpZCAiW21hYyBmb3JtYXRdIgotbXNnc3RyICJbaW4gZm9ybWF0byBNQUNdIgorbXNnc3RyICJbaW4gZm9ybWF0byBNYWNdIgogCiBtc2dpZCAiW3VuaXhdIgotbXNnc3RyICJbVU5JWF0iCittc2dzdHIgIltVbml4XSIKIAogbXNnaWQgIlt1bml4IGZvcm1hdF0iCi1tc2dzdHIgIltpbiBmb3JtYXRvIFVOSVhdIgorbXNnc3RyICJbaW4gZm9ybWF0byBVbml4XSIKIAogbXNnaWQgIjEgbGluZSwgIgogbXNnc3RyICIxIHJpZ2EsICIKQEAgLTI2MjEsNiArMjY4NCwxMyBAQAogIkU4MTU6IFNwaWFjZW50ZSwgY29tYW5kbyBub24gZGlzcG9uaWJpbGUsIG5vbiByaWVzY28gYSBjYXJpY2FyZSBsaWJyZXJpZSAiCiAicHJvZ3JhbW1pIE16U2NoZW1lLiIKIAorbXNnaWQgIiIKKyJFODk1OiBTb3JyeSwgdGhpcyBjb21tYW5kIGlzIGRpc2FibGVkLCB0aGUgTXpTY2hlbWUncyByYWNrZXQvYmFzZSBtb2R1bGUgIgorImNvdWxkIG5vdCBiZSBsb2FkZWQuIgorbXNnc3RyICIiCisiRTgxNTogU3BpYWNlbnRlLCBjb21hbmRvIG5vbiBkaXNwb25pYmlsZSwgbm9uIHJpZXNjbyBhIGNhcmljYXJlIG1vZHVsbyAiCisicmFja2V0L2Jhc2UgZGkgTXpTY2hlbWUuIgorCiBtc2dpZCAiaW52YWxpZCBleHByZXNzaW9uIgogbXNnc3RyICJlc3ByZXNzaW9uZSBub24gdmFsaWRhIgogCkBAIC0zNzg4LDE1ICszODU4LDEyIEBACiAiXG4iCiAiKDEpIEFub3RoZXIgcHJvZ3JhbSBtYXkgYmUgZWRpdGluZyB0aGUgc2FtZSBmaWxlLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSxcbiIKICIgICAgYmUgY2FyZWZ1bCBub3QgdG8gZW5kIHVwIHdpdGggdHdvIGRpZmZlcmVudCBpbnN0YW5jZXMgb2YgdGhlIHNhbWVcbiIKLSIgICAgZmlsZSB3aGVuIG1ha2luZyBjaGFuZ2VzLiIKKyIgICAgZmlsZSB3aGVuIG1ha2luZyBjaGFuZ2VzLiAgUXVpdCwgb3IgY29udGludWUgd2l0aCBjYXV0aW9uLlxuIgogbXNnc3RyICIiCiAiXG4iCi0iKDEpIFVuIGFsdHJvIHByb2dyYW1tYSBwdfIgZXNzZXJlIGluIGVkaXQgc3VsbG8gc3Rlc3NvIGZpbGUuXG4iCi0iICAgIFNlIOggY29z7CwgYXR0ZW56aW9uZSBhIG5vbiB0cm92YXJ0aSBjb24gZHVlIHZlcnNpb25pXG4iCi0iICAgIGRpZmZlcmVudGkgZGVsbG8gc3Rlc3NvIGZpbGUgYSBjdWkgdmVuZ29ubyBhcHBvcnRhdGUgbW9kaWZpY2hlLiIKLQotbXNnaWQgIiAgUXVpdCwgb3IgY29udGludWUgd2l0aCBjYXV0aW9uLlxuIgotbXNnc3RyICIgIEVzY2ksIG8gY29udGludWEgY29uIHBydWRlbnphLlxuIgorIigxKSBVbiBhbHRybyBwcm9ncmFtbWEgcHXyIGVzc2VyZSBpbiBlZGl0IHN1bGxvIHN0ZXNzbyBmaWxlLiAgU2Ug6CBjb3PsLFxuIgorIiAgICBhdHRlbnppb25lIGEgbm9uIGZpbmlyZSBjb24gZHVlIHNlc3Npb25pIGRpZmZlcmVudGkgY2hlIG1vZGlmaWNhbm8gbG9cbiIKKyIgICAgc3Rlc3NvIGZpbGUuICBVc2NpcmUgZGEgVmltLCBvIGNvbnRpbnVhcmUgY29uIGNhdXRlbGEuXG4iCiAKIG1zZ2lkICIoMikgQW4gZWRpdCBzZXNzaW9uIGZvciB0aGlzIGZpbGUgY3Jhc2hlZC5cbiIKIG1zZ3N0ciAiKDIpIFVuYSBzZXNzaW9uZSBkaSBlZGl0IHBlciBxdWVzdG8gZmlsZSDoIGZpbml0YSBtYWxlLlxuIgpAQCAtMzk4OSw3ICs0MDU2LDcgQEAKIG1zZ3N0ciAiRTc2NjogQXJnb21lbnRpIG5vbiBzdWZmaWNpZW50aSBwZXIgcHJpbnRmKCkiCiAKIG1zZ2lkICJFODA3OiBFeHBlY3RlZCBGbG9hdCBhcmd1bWVudCBmb3IgcHJpbnRmKCkiCi1tc2dzdHIgIkU4MDc6IE51bWVybyBjb24gdmlyZ29sYSBhdHRlc28gY29tZSBhcmdvbWVudG8gcGVyIHByaW50ZigpIgorbXNnc3RyICJFODA3OiBOdW1lcm8tYS12aXJnb2xhLW1vYmlsZSBhdHRlc28gY29tZSBhcmdvbWVudG8gcGVyIHByaW50ZigpIgogCiBtc2dpZCAiRTc2NzogVG9vIG1hbnkgYXJndW1lbnRzIHRvIHByaW50ZigpIgogbXNnc3RyICJFNzY3OiBUcm9wcGkgYXJnb21lbnRpIHBlciBwcmludGYoKSIKQEAgLTQxMDAsMjAgKzQxNjcsMTEgQEAKIG1zZ2lkICJFMzQ3OiBObyBtb3JlIGZpbGUgXCIlc1wiIGZvdW5kIGluIHBhdGgiCiBtc2dzdHIgIkUzNDc6IE5lc3N1biBhbHRybyBmaWxlIFwiJXNcIiB0cm92YXRvIG5lbCBwZXJjb3JzbyIKIAotbXNnaWQgIkNhbm5vdCBjb25uZWN0IHRvIE5ldGJlYW5zICMyIgotbXNnc3RyICJOb24gcG9zc28gY29ubmV0dGVybWkgYSBOZXRiZWFucyAjMiIKLQotbXNnaWQgIkNhbm5vdCBjb25uZWN0IHRvIE5ldGJlYW5zIgotbXNnc3RyICJOb24gcG9zc28gY29ubmV0dGVybWkgYSBOZXRiZWFucyIKLQogIywgYy1mb3JtYXQKIG1zZ2lkICJFNjY4OiBXcm9uZyBhY2Nlc3MgbW9kZSBmb3IgTmV0QmVhbnMgY29ubmVjdGlvbiBpbmZvIGZpbGU6IFwiJXNcIiIKIG1zZ3N0ciAiIgogIkU2Njg6IE1vZGFsaXTgIGVycmF0YSBkaSBhY2Nlc3NvIGEgZmlsZSBpbmZvIGNvbm5lc3Npb25lIE5ldEJlYW5zOiBcIiVzXCIiCiAKLW1zZ2lkICJyZWFkIGZyb20gTmV0YmVhbnMgc29ja2V0IgotbXNnc3RyICJsZXR0dXJhIGRhIHNvY2tldCBOZXRiZWFucyIKLQogIywgYy1mb3JtYXQKIG1zZ2lkICJFNjU4OiBOZXRCZWFucyBjb25uZWN0aW9uIGxvc3QgZm9yIGJ1ZmZlciAlbGQiCiBtc2dzdHIgIkU2NTg6IENvbm5lc3Npb25lIE5ldEJlYW5zIHBlcnNhIHBlciBpbCBidWZmZXIgJWxkIgpAQCAtNDI0Niw3ICs0MzA0LDggQEAKIG1zZ2lkICIiCiAiRTg4Mzogc2VhcmNoIHBhdHRlcm4gYW5kIGV4cHJlc3Npb24gcmVnaXN0ZXIgbWF5IG5vdCBjb250YWluIHR3byBvciBtb3JlICIKICJsaW5lcyIKLW1zZ3N0ciAiRTg4MzogZXNwcmVzc2lvbmUgZGkgcmljZXJjYSBlIHJlZ2lzdHJvIGRlbGwnZXNwcmVzc2lvbmUgbm9uIHBvc3Nvbm8gIgorbXNnc3RyICIiCisiRTg4MzogZXNwcmVzc2lvbmUgZGkgcmljZXJjYSBlIHJlZ2lzdHJvIGRlbGwnZXNwcmVzc2lvbmUgbm9uIHBvc3Nvbm8gIgogImNvbnRlbmVyZSBkdWUgbyBwafkgcmlnaGUiCiAKICMsIGMtZm9ybWF0CkBAIC00NTY3LDE4ICs0NjI2LDExIEBACiAiXG4iCiAiTm9uIHBvc3NvIGltcG9zdGFyZSBpbCBjb250ZXN0byBkaSBzaWN1cmV6emEgcGVyICIKIAotbXNnaWQgIkNvdWxkIG5vdCBzZXQgc2VjdXJpdHkgY29udGV4dCAiCi1tc2dzdHIgIk5vbiByaWVzY28gYSBpbXBvc3RhcmUgaWwgY29udGVzdG8gZGkgc2ljdXJlenphICIKK21zZ2lkICJDb3VsZCBub3Qgc2V0IHNlY3VyaXR5IGNvbnRleHQgJXMgZm9yICVzIgorbXNnc3RyICJOb24gcG9zc28gaW1wb3N0YXJlIGlsIGNvbnRlc3RvIGRpIHNpY3VyZXp6YSAlcyBwZXIgJXMiCiAKLW1zZ2lkICIgZm9yICIKLW1zZ3N0ciAiIHBlciAiCi0KLSMuIG5vIGVub3VnaCBzaXplIE9SIHVuZXhwZWN0ZWQgZXJyb3IKLW1zZ2lkICJDb3VsZCBub3QgZ2V0IHNlY3VyaXR5IGNvbnRleHQgIgotbXNnc3RyICJOb24gcmllc2NvIGEgb3R0ZW5lcmUgaWwgY29udGVzdG8gZGkgc2ljdXJlenphICIKLQotbXNnaWQgIi4gUmVtb3ZpbmcgaXQhXG4iCi1tc2dzdHIgIi4gTG8gcmltdW92byFcbiIKK21zZ2lkICJDb3VsZCBub3QgZ2V0IHNlY3VyaXR5IGNvbnRleHQgJXMgZm9yICVzLiBSZW1vdmluZyBpdCEiCittc2dzdHIgIk5vbiBwb3NzbyBvdHRlbmVyZSBpbCBjb250ZXN0byBkaSBzaWN1cmV6emEgJXMgcGVyICVzLiBMbyByaW11b3ZvISIKIAogbXNnaWQgIiIKICJcbiIKQEAgLTQ3NTcsNiArNDgwOSw3IEBACiBtc2dpZCAiRTc3NzogU3RyaW5nIG9yIExpc3QgZXhwZWN0ZWQiCiBtc2dzdHIgIkU3Nzc6IGFzcGV0dGF2byBTdHJpbmdhIG8gTGlzdGEiCiAKKyMsIGMtZm9ybWF0CiBtc2dpZCAiRTM2OTogaW52YWxpZCBpdGVtIGluICVzJSVbXSIKIG1zZ3N0ciAiRTM2OTogZWxlbWVudG8gbm9uIHZhbGlkbyBpbiAlcyUlW10iCiAKQEAgLTQ4NDcsNiArNDkwMCw3IEBACiBtc2dpZCAiRXh0ZXJuYWwgc3VibWF0Y2hlczpcbiIKIG1zZ3N0ciAiU290dG8tY29ycmlzcG9uZGVuemUgZXN0ZXJuZTpcbiIKIAorIywgYy1mb3JtYXQKIG1zZ2lkICJFODg4OiAoTkZBIHJlZ2V4cCkgY2Fubm90IHJlcGVhdCAlcyIKIG1zZ3N0ciAiRTg4ODogKE5GQSByZWdleHApIG5vbiByaWVzY28gYSByaXBldGVyZSAlcyIKIApAQCAtNDg2Nyw2ICs0OTIxLDcgQEAKIG1zZ2lkICJFODY2OiAoTkZBIHJlZ2V4cCkgTWlzcGxhY2VkICVjIgogbXNnc3RyICJFODY2OiAoTkZBIHJlZ2V4cCkgJWMgZnVvcmkgcG9zdG8iCiAKKyMsIGMtZm9ybWF0CiBtc2dpZCAiRTg3NzogKE5GQSByZWdleHApIEludmFsaWQgY2hhcmFjdGVyIGNsYXNzOiAlbGQiCiBtc2dzdHIgIkU4Nzc6IChORkEgcmVnZXhwKSBDbGFzc2UgZGkgY2FyYXR0ZXJpIG5vbiB2YWxpZGE6ICVsZCIKIApAQCAtNTE3MSw4ICs1MjI2LDcgQEAKIAogIywgYy1mb3JtYXQKIG1zZ2lkICJEaWZmZXJlbnQgY29tYmluaW5nIGZsYWcgaW4gY29udGludWVkIGFmZml4IGJsb2NrIGluICVzIGxpbmUgJWQ6ICVzIgotbXNnc3RyICIiCi0iRmxhZyBjb21iaW5hemlvbmUgZGl2ZXJzbyBpbiBibG9jY28gYWZmaXNzaSBjb250aW51byBpbiAlcyByaWdhICVkOiAlcyIKK21zZ3N0ciAiRmxhZyBjb21iaW5hemlvbmUgZGl2ZXJzbyBpbiBibG9jY28gYWZmaXNzaSBjb250aW51byBpbiAlcyByaWdhICVkOiAlcyIKIAogIywgYy1mb3JtYXQKIG1zZ2lkICJEdXBsaWNhdGUgYWZmaXggaW4gJXMgbGluZSAlZDogJXMiCkBAIC01MzY3LDkgKzU0MjEsMTEgQEAKIG1zZ2lkICJFNzY1OiAnc3BlbGxmaWxlJyBkb2VzIG5vdCBoYXZlICVsZCBlbnRyaWVzIgogbXNnc3RyICJFNzY1OiAnc3BlbGxmaWxlJyBub24gaGEgJWxkIGVsZW1lbnRpIgogCisjLCBjLWZvcm1hdAogbXNnaWQgIldvcmQgJyUuKnMnIHJlbW92ZWQgZnJvbSAlcyIKIG1zZ3N0ciAiUGFyb2xhICclLipzJyByaW1vc3NhIGRhICVzIgogCisjLCBjLWZvcm1hdAogbXNnaWQgIldvcmQgJyUuKnMnIGFkZGVkIHRvICVzIgogbXNnc3RyICJQYXJvbGEgJyUuKnMnIGFnZ2l1bnRhIGEgJXMiCiAKQEAgLTU0MzIsNiArNTQ4OCw5IEBACiBtc2dpZCAiRTM5MDogSWxsZWdhbCBhcmd1bWVudDogJXMiCiBtc2dzdHIgIkUzOTA6IEFyZ29tZW50byBub24gYW1tZXNzbzogJXMiCiAKK21zZ2lkICJzeW50YXggaXNrZXl3b3JkICIKK21zZ3N0ciAic3ludGF4IGlza2V5d29yZCAiCisKICMsIGMtZm9ybWF0CiBtc2dpZCAiRTM5MTogTm8gc3VjaCBzeW50YXggY2x1c3RlcjogJXMiCiBtc2dzdHIgIkUzOTE6ICdjbHVzdGVyJyBzaW50YXR0aWNvIGluZXNpc3RlbnRlOiAlcyIKQEAgLTU1MDgsNiArNTU2Nyw5IEBACiBtc2dpZCAiRTc4OTogTWlzc2luZyAnXSc6ICVzIgogbXNnc3RyICJFNzg5OiBNYW5jYSAnXSc6ICVzIgogCittc2dpZCAiRTg5MDogdHJhaWxpbmcgY2hhciBhZnRlciAnXSc6ICVzXSVzIgorbXNnc3RyICJFODkwOiBDYXJhdHRlcmkgaW4gcGn5IGRvcG8gJ10nOiAlc10lcyIKKwogIywgYy1mb3JtYXQKIG1zZ2lkICJFMzk4OiBNaXNzaW5nICc9JzogJXMiCiBtc2dzdHIgIkUzOTg6IE1hbmNhICc9JzogJXMiCkBAIC01OTY1LDcgKzYwMjcsNyBAQAogIk1hY09TIFggKHVuaXgpIHZlcnNpb24iCiBtc2dzdHIgIiIKICJcbiIKLSJWZXJzaW9uZSBNYWNPUyBYICh1bml4KSIKKyJWZXJzaW9uZSBNYWNPUyBYIChVbml4KSIKIAogbXNnaWQgIiIKICJcbiIKQEAgLTY1MzcsNiArNjU5OSw5IEBACiBtc2dzdHIgIiIKICJFNzk0OiBOb24gcG9zc28gaW1wb3N0YXJlIGxhIHZhcmlhYmlsZSByZWFkLW9ubHkgaW4gYW1iaWVudGUgcHJvdGV0dG86IFwiJXNcIiIKIAorbXNnaWQgIkU3MTM6IENhbm5vdCB1c2UgZW1wdHkga2V5IGZvciBEaWN0aW9uYXJ5IgorbXNnc3RyICJFNzEzOiBOb24gcG9zc28gdXNhcmUgdW5hIGNoaWF2ZSBudWxsYSBwZXIgaWwgRGl6aW9uYXJpbyIKKwogbXNnaWQgIkU0NzogRXJyb3Igd2hpbGUgcmVhZGluZyBlcnJvcmZpbGUiCiBtc2dzdHIgIkU0NzogRXJyb3JlIGxlZ2dlbmRvIGlsIGZpbGUgZXJyb3JpIgogCkBAIC02NjU1LDYgKzY3MjAsNyBAQAogbXNnaWQgImxpc3QgaXMgbG9ja2VkIgogbXNnc3RyICJsYSBsaXN0YSDoIGJsb2NjYXRhIgogCisjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBhZGQga2V5ICclcycgdG8gZGljdGlvbmFyeSIKIG1zZ3N0ciAibm9uIG5vbiByaXVzY2lhdG8gYWQgYWdnaXVuZ2VyZSBsYSBjaGlhdmUgJyVzJyBhbCBkaXppb25hcmlvIgogCkBAIC02NzU0LDggKzY4MjAsOCBAQAogCiAjLCBjLWZvcm1hdAogbXNnaWQgImF0dGVtcHQgdG8gYXNzaWduIHNlcXVlbmNlIG9mIHNpemUgZ3JlYXRlciB0aGFuICVkIHRvIGV4dGVuZGVkIHNsaWNlIgotbXNnc3RyICJ0ZW50YXRpdm8gZGkgYXNzZWduYXJlIHVuYSBzZXF1ZW56YSBtYWdnaW9yZSBkaSAlZCBhIHVuIGludGVydmFsbG8gIgotImVzdGVzbyIKK21zZ3N0ciAiIgorInRlbnRhdGl2byBkaSBhc3NlZ25hcmUgdW5hIHNlcXVlbnphIG1hZ2dpb3JlIGRpICVkIGEgdW4gaW50ZXJ2YWxsbyBlc3Rlc28iCiAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6IG5vIHZpbSBsaXN0IGl0ZW0gJWQiCkBAIC02NzY3LDkgKzY4MzMsMTEgQEAKIG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogZmFpbGVkIHRvIGFkZCBpdGVtIHRvIGxpc3QiCiBtc2dzdHIgImVycm9yZSBpbnRlcm5vOiBub24gaG8gcG90dXRvIGFnZ2l1bmdlcmUgdW4gZWxlbWVudG8gYWxsYSBsaXN0YSIKIAorIywgYy1mb3JtYXQKIG1zZ2lkICJhdHRlbXB0IHRvIGFzc2lnbiBzZXF1ZW5jZSBvZiBzaXplICVkIHRvIGV4dGVuZGVkIHNsaWNlIG9mIHNpemUgJWQiCi1tc2dzdHIgInRlbnRhdGl2byBkaSBhc3NlZ25hcmUgc2VxdWVuemEgZGkgZGltZW5zaW9uZSAlZCBhIHVuIGludGVydmFsbG8gIgotIiBlc3Rlc28gZGkgZGltZW5zaW9uZSAlZCIKK21zZ3N0ciAiIgorInRlbnRhdGl2byBkaSBhc3NlZ25hcmUgc2VxdWVuemEgZGkgZGltZW5zaW9uZSAlZCBhIHVuIGludGVydmFsbG8gIGVzdGVzbyBkaSAiCisiZGltZW5zaW9uZSAlZCIKIAogbXNnaWQgImZhaWxlZCB0byBhZGQgaXRlbSB0byBsaXN0IgogbXNnc3RyICJub24gaG8gcG90dXRvIGFnZ2l1bmdlcmUgdW4gZWxlbWVudG8gYWxsYSBsaXN0YSIKQEAgLTY5MDcsNCArNjk3NSwzIEBACiBtc2dzdHIgIiIKICJJbXBvc3RhemlvbmUgZGkgcGVyY29yc28gbm9uIHJpdXNjaXRhOiBzeXMucGF0aCBub24g6CB1bmEgbGlzdGFcbiIKICJEb3ZyZXN0aSBhZ2dpdW5nZXJlIHZpbS5WSU1fU1BFQ0lBTF9QQVRIIGEgc3lzLnBhdGgiCi0K