ZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0IGIvcnVudGltZS9kb2MvYXV0b2NtZC50eHQKaW5kZXggMzE3NTE4ZC4uZDA5ZTk1ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvYXV0b2NtZC50eHQKKysrIGIvcnVudGltZS9kb2MvYXV0b2NtZC50eHQKQEAgLTEsNCArMSw0IEBACi0qYXV0b2NtZC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMDQKKyphdXRvY21kLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4wYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAwNwogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNTA2LDggKzUwNiw4IEBACiAJCQkJdGhlIGNoYW5nZSB3YXMgY2F1c2VkIGJ5IGFuIGF1dG9jb21tYW5kLgogCQkJCVRoaXMgZXZlbnQgaXMgdHJpZ2dlcmVkIHdoZW4gbWFraW5nIHRoZSBmaXJzdAogCQkJCWNoYW5nZSBpbiBhIGJ1ZmZlciBvciB0aGUgZmlyc3QgY2hhbmdlIGFmdGVyCi0JCQkJJ3JlYWRvbmx5JyB3YXMgc2V0LAotCQkJCWp1c3QgYmVmb3JlIHRoZSBjaGFuZ2UgaXMgYXBwbGllZCB0byB0aGUgdGV4dC4KKwkJCQkncmVhZG9ubHknIHdhcyBzZXQsIGp1c3QgYmVmb3JlIHRoZSBjaGFuZ2UgaXMKKwkJCQlhcHBsaWVkIHRvIHRoZSB0ZXh0LgogCQkJCVdBUk5JTkc6IElmIHRoZSBhdXRvY29tbWFuZCBtb3ZlcyB0aGUgY3Vyc29yCiAJCQkJdGhlIGVmZmVjdCBvZiB0aGUgY2hhbmdlIGlzIHVuZGVmaW5lZC4KIAkJCQkJCQkqRTc4OCoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2V2YWwudHh0IGIvcnVudGltZS9kb2MvZXZhbC50eHQKaW5kZXggYjgzMGNhMC4uMDQwMDA3YSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZXZhbC50eHQKKysrIGIvcnVudGltZS9kb2MvZXZhbC50eHQKQEAgLTEsNCArMSw0IEBACi0qZXZhbC50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMDQKKypldmFsLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4wYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAwNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtODE5LDcgKzgxOSw3IEBACiBJbmRleCB6ZXJvIGdpdmVzIHRoZSBmaXJzdCBjaGFyYWN0ZXIuICBUaGlzIGlzIGxpa2UgaXQgd29ya3MgaW4gQy4gIENhcmVmdWw6CiB0ZXh0IGNvbHVtbiBudW1iZXJzIHN0YXJ0IHdpdGggb25lISAgRXhhbXBsZSwgdG8gZ2V0IHRoZSBjaGFyYWN0ZXIgdW5kZXIgdGhlCiBjdXJzb3I6ID4KLQk6bGV0IGMgPSBnZXRsaW5lKGxpbmUoIi4iKSlbY29sKCIuIikgLSAxXQorCTpsZXQgYyA9IGdldGxpbmUoIi4iKVtjb2woIi4iKSAtIDFdCiAKIElmIHRoZSBsZW5ndGggb2YgdGhlIFN0cmluZyBpcyBsZXNzIHRoYW4gdGhlIGluZGV4LCB0aGUgcmVzdWx0IGlzIGFuIGVtcHR5CiBTdHJpbmcuICBBIG5lZ2F0aXZlIGluZGV4IGFsd2F5cyByZXN1bHRzIGluIGFuIGVtcHR5IHN0cmluZyAocmVhc29uOiBiYWNrd2FyZHMKQEAgLTQ1NjIsNyArNDU2Miw3IEBACiAJCQlzdHJwYXJ0KCJhYmNkZWZnIiwgMykgICAgICAgPT0gImRlZmciCiA8CQlOb3RlOiBUbyBnZXQgdGhlIGZpcnN0IGNoYXJhY3Rlciwge3N0YXJ0fSBtdXN0IGJlIDAuICBGb3IKIAkJZXhhbXBsZSwgdG8gZ2V0IHRocmVlIGJ5dGVzIHVuZGVyIGFuZCBhZnRlciB0aGUgY3Vyc29yOiA+Ci0JCQlzdHJwYXJ0KGdldGxpbmUobGluZSgiLiIpKSwgY29sKCIuIikgLSAxLCAzKQorCQkJc3RycGFydChnZXRsaW5lKCIuIiksIGNvbCgiLiIpIC0gMSwgMykKIDwKIHN0cnJpZHgoe2hheXN0YWNrfSwge25lZWRsZX0gWywge3N0YXJ0fV0pCQkJKnN0cnJpZHgoKSoKIAkJVGhlIHJlc3VsdCBpcyBhIE51bWJlciwgd2hpY2ggZ2l2ZXMgdGhlIGJ5dGUgaW5kZXggaW4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQgYi9ydW50aW1lL2RvYy9zeW50YXgudHh0CmluZGV4IGEwYTViOGQuLjEzYTUzOTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3N5bnRheC50eHQKKysrIGIvcnVudGltZS9kb2Mvc3ludGF4LnR4dApAQCAtMSw0ICsxLDQgQEAKLSpzeW50YXgudHh0KglGb3IgVmltIHZlcnNpb24gNy4wYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAwNAorKnN5bnRheC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjBjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDA2CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTI1ODEsNyArMjU4MSw3IEBACiAKIERvIHlvdSB3YW50IHRvIGRyYXcgd2l0aCB0aGUgbW91c2U/ICBUcnkgdGhlIGZvbGxvd2luZzogPgogICAgOmZ1bmN0aW9uISBHZXRQaXhlbCgpCi0gICA6ICAgbGV0IGMgPSBnZXRsaW5lKGxpbmUoIi4iKSlbY29sKCIuIikgLSAxXQorICAgOiAgIGxldCBjID0gZ2V0bGluZSgiLiIpW2NvbCgiLiIpIC0gMV0KICAgIDogICBlY2hvIGMKICAgIDogICBleGUgIm5vcmVtYXAgPExlZnRNb3VzZT4gPExlZnRNb3VzZT5yIi5jCiAgICA6ICAgZXhlICJub3JlbWFwIDxMZWZ0RHJhZz4JPExlZnRNb3VzZT5yIi5jCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90YWdzIGIvcnVudGltZS9kb2MvdGFncwppbmRleCA0MTM0YTFkLi4zZGFmM2JhIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90YWdzCisrKyBiL3J1bnRpbWUvZG9jL3RhZ3MKQEAgLTU2MTEsNyArNTYxMSw2IEBACiBoZWJyZXcudHh0CWhlYnJldy50eHQJLypoZWJyZXcudHh0KgogaGVscAl2YXJpb3VzLnR4dAkvKmhlbHAqCiBoZWxwLWNvbnRleHQJaGVscC50eHQJLypoZWxwLWNvbnRleHQqCi1oZWxwLXRhZ3MJdGFncwkxCiBoZWxwLXRyYW5zbGF0ZWQJdmFyaW91cy50eHQJLypoZWxwLXRyYW5zbGF0ZWQqCiBoZWxwLXh0ZXJtLXdpbmRvdwl2YXJpb3VzLnR4dAkvKmhlbHAteHRlcm0td2luZG93KgogaGVscC50eHQJaGVscC50eHQJLypoZWxwLnR4dCoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RvZG8udHh0IGIvcnVudGltZS9kb2MvdG9kby50eHQKaW5kZXggZDI0YzVjMi4uYmY3ZjQyOCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdG9kby50eHQKKysrIGIvcnVudGltZS9kb2MvdG9kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMDYKKyp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4wYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAwNwogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zMCw2ICszMCwxMyBAQAogCQkJCQkJCSprbm93bi1idWdzKgogLS0tLS0tLS0tLS0tLS0tLS0tLS0gS25vd24gYnVncyBhbmQgY3VycmVudCB3b3JrIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKK0hhbmRsZSBwb3N0cG9uZWQgcHJlZml4IHdpdGggQ09NUE9VTkRQRVJNSVRGTEFHIG9yIENPTVBPVU5ERk9SQklERkxBRy4KKyAgICBXRlBfQ09NUFBFUk1JVCBhbmQgV0ZQX0NPTVBGT1JCSUQKKworIjpta3NwZWxsIiBzdGlsbCB0YWtlcyB0b28gbG9uZyBpbiBIdW5nYXJpYW4gZGljdGlvbmFyeS4KKworVXNlIH4vdG1wL2h1bmdhcmlhbioudHh0IHRvIHRlc3QgZGljdGlvbmFyeSB3aXRoLgorCiBOZXcgSHVuZ2FyaWFuIGRpY3Rpb25hcnkuIChMYWNpIE5lbWV0aCkKIC0gICBpbXBsZW1lbnQgdXNlIG9mIDxjb21wb3B0aW9ucz4gaW4gLnNwbCBmaWxlOgogLSAgIGltcGxlbWVudCBDSEVDS0NPTVBPVU5EUkVQOiB3aGVuIGEgY29tcG91bmQgd29yZCBzZWVtcyB0byBiZSBPSyBhcHBseSBSRVAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZlcnNpb243LnR4dCBiL3J1bnRpbWUvZG9jL3ZlcnNpb243LnR4dAppbmRleCAxMDA1NzgxLi4xY2FjODgxIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92ZXJzaW9uNy50eHQKKysrIGIvcnVudGltZS9kb2MvdmVyc2lvbjcudHh0CkBAIC0xLDQgKzEsNCBAQAotKnZlcnNpb243LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjBjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDA2CisqdmVyc2lvbjcudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMGMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMDcKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTE2MCw2ICsxNjAsNyBAQAogV2hlbiBleGVjdXRpbmcgYSBGaWxlQ2hhbmdlZFJPIGF1dG9jb21tYW5kIGl0IGlzIG5vIGxvbmdlciBhbGxvd2VkIHRvIHN3aXRjaAogdG8gYW5vdGhlciBidWZmZXIgb3IgZWRpdCBhbm90aGVyIGZpbGUuICBUaGlzIGlzIHRvIHByZXZlbnQgY3Jhc2hlcyAodGhlIGV2ZW50CiBpcyB0cmlnZ2VyZWQgZGVlcCBkb3duIGluIHRoZSBjb2RlIHdoZXJlIGNoYW5naW5nIGJ1ZmZlcnMgaXMgbm90IGFudGljaXBhdGVkKS4KK0l0IGlzIHBvc3NpYmxlIHRvIHJlbG9hZCB0aGUgYnVmZmVyLgogCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIE5FVyBGRUFUVVJFUwkJCQkJCSpuZXctNyoKQEAgLTk1MSw2ICs5NTIsNyBAQAogc2VydmljZXMgc3ludGF4IGFuZCBmdHBsdWdpbiBmaWxlLiAoTmlrb2xhaSBXZWlidWxsKQogc2V0c2VyaWFsIHN5bnRheCBhbmQgZnRwbHVnaW4gZmlsZS4gKE5pa29sYWkgV2VpYnVsbCkKIHNpZXZlIHN5bnRheCBhbmQgZnRwbHVnaW4gZmlsZS4gKE5pa29sYWkgV2VpYnVsbCkKK1NpU1Ugc3ludGF4IGZpbGUgKFJhbHBoIEFtaXNzYWgpCiBTaXZlIHN5bnRheCBmaWxlLiAoTmlrb2xhaSBXZWlidWxsKQogc2xwIGNvbmZpZywgcmVnIGFuZCBzcGkgc3ludGF4IGFuZCBmdHBsdWdpbiBmaWxlcy4gKE5pa29sYWkgV2VpYnVsbCkKIFNNTCBpbmRlbnQgZmlsZS4gKFNhaWthdCBHdWhhKQpAQCAtMjM5NCw0ICsyMzk2LDE5IEBACiB3aGVyZSB0aGUgY2xpY2sgd2FzLiAgQmV5b25kIHRoZSBsYWJlbHMgdGhlIG5ldyB0YWIgYXBwZWFycyBhdCB0aGUgZW5kIGluc3RlYWQKIG9mIGFmdGVyIHRoZSBjdXJyZW50IHRhYiBwYWdlLgogCitJbnNpZGUgYSBtYXBwaW5nIHdpdGggYW4gZXhwcmVzc2lvbiBnZXRjaGFyKCkgY291bGQgbm90IGJlIHVzZWQuCisKK1doZW4gdmdldGMgaXMgdXNlZCByZWN1cnNpdmVseSB2Z2V0Y19idXN5IHByb3RlY3RzIGl0IGZyb20gYmVpbmcgdXNlZAorcmVjdXJzaXZlbHkuICBCdXQgYWZ0ZXIgYSAiOm5vcm1hbCIgY29tbWFuZCB0aGUgcHJvdGVjdGlvbiB3YXMgcmVzZXQuCisKKyI6cy9hL2IvbiIgZGlkbid0IHdvcmsgd2hlbiAnbW9kaWZpYWJsZScgd2FzIG9mZi4KKworV2hlbiAkVklNUlVOVElNRSBpbmNsdWRlcyBhIG11bHRpLWJ5dGUgY2hhcmFjdGVyIHRoZW4gcmdiLnR4dCBjb3VsZCBub3QgYmUKK2ZvdW5kLiAoWXVraWhpcm8gTmFrYWRhaXJhKQorCisiOm1rc3BlbGwiIGRpZG4ndCB3b3JrIGNvcnJlY3RseSBmb3Igbm9uLUFTQ0lJIGFmZml4IGZsYWdzIHdoZW4gY29udmVyc2lvbiBpcworbmVlZGVkIG9uIHRoZSBzcGVsbCBmaWxlLgorCitnbG9iKCcvZGlyL1wkQUJDLyonKSBkaWRuJ3Qgd29yay4KKwogIHZpbTp0dz03ODp0cz04OmZ0PWhlbHA6bm9ybDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvbGFuZy9tZW51X2RlX2RlLmxhdGluMS52aW0gYi9ydW50aW1lL2xhbmcvbWVudV9kZV9kZS5sYXRpbjEudmltCmluZGV4IGEwOGE0MWMuLjNkMjg1ODEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvbGFuZy9tZW51X2RlX2RlLmxhdGluMS52aW0KKysrIGIvcnVudGltZS9sYW5nL21lbnVfZGVfZGUubGF0aW4xLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgTWVudSBUcmFuc2xhdGlvbnM6CUdlcm1hbiAvIERldXRzY2gKICIgTWFpbnRhaW5lcjoJCUdlb3JnIERhaG4gPGdvcmd5ZEB5YWhvby5jby51az4KICIgT3JpZ2luYWxseSBCeToJTWFyY2luIERhbGVja2kgPGRhbGVja2lAY3MubmV0LnBsPgotIiAgICAgICAgICAgIAkJSm9oYW5uZXMgWmVsbG5lciA8am9oYW5uZXNAemVsbG5lci5vcmc+CisiCQkJSm9oYW5uZXMgWmVsbG5lciA8am9oYW5uZXNAemVsbG5lci5vcmc+CiAiIExhc3QgQ2hhbmdlOglTYXQsIDExIE1hciAyMDA2IDIyOjQwOjAwIENFU1QKICIgdmltOnNldCBmb2xkbWV0aG9kPW1hcmtlciB0YWJzdG9wPTg6CiAKQEAgLTIwLDEyICsyMCwxMiBAQAogIiB7e3sgRklMRSAvIERBVEVJCiBtZW51dHJhbnMgJkZpbGUJCQkJJkRhdGVpCiBtZW51dHJhbnMgJk9wZW5cLlwuXC48VGFiPjplCQkm1mZmbmVuXC5cLlwuPFRhYj46ZQotbWVudXRyYW5zIFNwJmxpdC1PcGVuXC5cLlwuPFRhYj46c3AJSW5cIGdldGVpbHRlbVwgJkZlbnN0ZXJcINZmZm5lblwuXC5cLjxUYWI+OnNwCi1tZW51dHJhbnMgT3BlblwgVGFiXC5cLlwuPFRhYj46dGFibmV3CUluXCBuZXVlbVwgJlRhYlwg1mZmbmVuXC5cLlwuPFRhYj46dGFibmV3CittZW51dHJhbnMgU3AmbGl0LU9wZW5cLlwuXC48VGFiPjpzcAlJblwgZ2V0ZWlsdGVtXCAmRmVuc3Rlclwg9mZmbmVuXC5cLlwuPFRhYj46c3AKK21lbnV0cmFucyBPcGVuXCBUYWJcLlwuXC48VGFiPjp0YWJuZXcJSW5cIG5ldWVtXCAmVGFiXCD2ZmZuZW5cLlwuXC48VGFiPjp0YWJuZXcKIG1lbnV0cmFucyAmTmV3PFRhYj46ZW5ldwkJJk5ldWVcIERhdGVpPFRhYj46ZW5ldwogbWVudXRyYW5zICZDbG9zZTxUYWI+OmNsb3NlCQlTJmNobGll32VuPFRhYj46Y2xvc2UKIG1lbnV0cmFucyAmU2F2ZTxUYWI+OncJCQkmU3BlaWNoZXJuPFRhYj46dwotbWVudXRyYW5zIFNhdmVcICZBc1wuXC5cLjxUYWI+OnNhdglTcGVpY2hlcm5cICZBbHNcLlwuXC48VGFiPjpzYXYKK21lbnV0cmFucyBTYXZlXCAmQXNcLlwuXC48VGFiPjpzYXYJU3BlaWNoZXJuXCAmYWxzXC5cLlwuPFRhYj46c2F2CiBtZW51dHJhbnMgJlByaW50CQkJJkRydWNrZW4KIG1lbnV0cmFucyBTYSZ2ZS1FeGl0PFRhYj46d3FhCQlTcGVpY2hlcm5cIHVuZFwgQmUmZW5kZW48VGFiPjp3cWEKIG1lbnV0cmFucyBFJnhpdDxUYWI+OnFhCQkJJkJlZW5kZW48VGFiPjpxYQpAQCAtNDQsMTAgKzQ0LDEwIEBACiBtZW51dHJhbnMgQ3UmdDxUYWI+Iit4CQkJJkF1c3NjaG5laWRlbjxUYWI+Iit4CiBtZW51dHJhbnMgJkNvcHk8VGFiPiIreQkJCSZLb3BpZXJlbjxUYWI+Iit5CiBtZW51dHJhbnMgJlBhc3RlPFRhYj4iK2dQCQlFaW4mZvxnZW48VGFiPiIrZ1AKLW1lbnV0cmFucyBQdXRcICZCZWZvcmU8VGFiPltwCQlEYSZ2b3JcIEVpbmb8Z2VuPFRhYj5bcAotbWVudXRyYW5zIFB1dFwgJkFmdGVyPFRhYj5dcAkJRGEmbmFjaFwgRWluZvxnZW48VGFiPl1wCi1tZW51dHJhbnMgJkRlbGV0ZTxUYWI+eCAJCSZM9nNjaGVuPFRhYj54Ci1tZW51dHJhbnMgJlNlbGVjdFwgQWxsPFRhYj5nZ1ZHCQlBbGxlc1wgJk1hcmtpZXJlbjxUYWI+Z2dWRworbWVudXRyYW5zIFB1dFwgJkJlZm9yZTxUYWI+W3AJCURhJnZvclwgZWluZvxnZW48VGFiPltwCittZW51dHJhbnMgUHV0XCAmQWZ0ZXI8VGFiPl1wCQlEYSZuYWNoXCBlaW5m/GdlbjxUYWI+XXAKK21lbnV0cmFucyAmRGVsZXRlPFRhYj54CQkJJkz2c2NoZW48VGFiPngKK21lbnV0cmFucyAmU2VsZWN0XCBBbGw8VGFiPmdnVkcJCUFsbGVzXCAmbWFya2llcmVuPFRhYj5nZ1ZHCiBtZW51dHJhbnMgJkZpbmRcLlwuXC4JCQkmU3VjaGVuXC5cLlwuCiBtZW51dHJhbnMgRmluZFwgYW5kXCBSZXAmbGFjZVwuXC5cLglTdWNoZW5cIHVuZFwgJkVyc2V0emVuXC5cLlwuCiAKQEAgLTU1LDYgKzU1LDcgQEAKICIgWFhYICZFIHdvdWxkIGNvbmZsaWN0IHdpdGggJ1N1Y2hlblwgdW5kXCAmRXJzZXR6ZW4nLCBzZWUgYWJvdmUKIG1lbnV0cmFucyBTZXR0aW5nc1wgJldpbmRvdwkJCQlFJmluc3RlbGx1bmdlblwuXC5cLgogbWVudXRyYW5zICZHbG9iYWxcIFNldHRpbmdzCQkJCSZHbG9iYWxlXCBFaW5zdGVsbHVuZ2VuCittZW51dHJhbnMgU3RhcnR1cFwgJlNldHRpbmdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICZTdGFydGVpbnN0ZWxsdW5nZW4KIAogbWVudXRyYW5zIFRvZ2dsZVwgUGF0dGVyblwgJkhpZ2hsaWdodDxUYWI+OnNldFwgaGxzIQkmSGVydm9yaGVidW5nZW5cIGVpbi1cIHVuZFwgYXVzc2NoYWx0ZW48VGFiPjpzZXRcIGhscyEKIG1lbnV0cmFucyBUb2dnbGVcICZJZ25vcmUtY2FzZTxUYWI+OnNldFwgaWMhCQlHcm/fc2NocmVpYnVuZ1wgJmlnbm9yaWVyZW5cIG9kZXJcIGJlbnV0emVuPFRhYj46c2V0XCBpYyEKQEAgLTY2LDcgKzY3LDcgQEAKIG1lbnV0cmFucyBOZXZlcgkJCQkJCU5pZQogbWVudXRyYW5zIEJsb2NrXCBTZWxlY3Rpb24JCQkJQmxvY2stQXVzd2FobAogbWVudXRyYW5zIEluc2VydFwgbW9kZQkJCQkJRWluZvxnZS1Nb2R1cwotbWVudXRyYW5zIEJsb2NrXCBhbmRcIEluc2VydAkJCQlCbG9jay1cIHVuZFwgRWluZvxnZS1Nb2R1cworbWVudXRyYW5zIEJsb2NrXCBhbmRcIEluc2VydAkJCQlCbG9jay1BdXN3YWhsXCB1bmRcIEVpbmb8Z2UtTW9kdXMKIG1lbnV0cmFucyBBbHdheXMJCQkJCUltbWVyCiBtZW51dHJhbnMgVG9nZ2xlXCBJbnNlcnRcICZNb2RlPFRhYj46c2V0XCBpbSEJCUVpbmb8Z2UtJk1vZHVzXCBlaW4tXCB1bmRcIGF1c3NjaGFsdGVuPFRhYj46c2V0XCBpbSEKIG1lbnV0cmFucyBUb2dnbGVcIFZpXCBDJm9tcGF0aWJsZTxUYWI+OnNldFwgY3AhCQlWaS1Lb21wYXRpYmlsaXTkdFwgZWluLVwgdW5kXCBhdXNzY2hhbHRlbjxUYWI+OnNldFwgY3AhCkBAIC05NCwxOSArOTUsMTkgQEAKICIgb3RoZXIgb3B0aW9ucwogbWVudXRyYW5zICZTaGlmdHdpZHRoCQkJCQkmU2NoaWViZXdlaXRlCiBtZW51dHJhbnMgU29mdFwgJlRhYnN0b3AJCQkJJlRhYnVsYXRvcgotbWVudXRyYW5zIFRlJnh0XCBXaWR0aFwuXC5cLgkJCQlUZSZ4dFwgQnJlaXRlXC5cLlwuCi1tZW51dHJhbnMgJkZpbGVcIEZvcm1hdFwuXC5cLgkJCQkmRGF0ZWlcIEZvcm1hdFwuXC5cLgorbWVudXRyYW5zIFRlJnh0XCBXaWR0aFwuXC5cLgkJCQlUZSZ4dGJyZWl0ZVwuXC5cLgorbWVudXRyYW5zICZGaWxlXCBGb3JtYXRcLlwuXC4JCQkJJkRhdGVpZm9ybWF0XC5cLlwuCiBtZW51dHJhbnMgQyZvbG9yXCBTY2hlbWUJCQkJRiZhcmJzY2hlbWFcLlwuXC4KLW1lbnV0cmFucyAmS2V5bWFwCQkJCQkmVGFzdGF0dXItQmVsZWd1bmcKK21lbnV0cmFucyAmS2V5bWFwCQkJCQkmVGFzdGF0dXJiZWxlZ3VuZwogIiB9fX0gRURJVCAvIEVESVRJRVJFTgogCiAiIHt7eyAgVE9PTFMgLyBXRVJLWkVVR0UKIGlmIGhhcygic3BlbGwiKQogICAgIG1lbnV0cmFucyAmU3BlbGxpbmcJCQkJCSZSZWNodHNjaHJlaWJ1bmcKLSAgICBtZW51dHJhbnMgJlNwZWxsXCBDaGVja1wgT24JCQkJJlJlY2h0c2NocmVpYnBy/GZ1bmdcIEFuCi0gICAgbWVudXRyYW5zIFNwZWxsXCBDaGVja1wgJk9mZgkJCVJlY2h0c2NocmVpYnBy/GZ1bmdcICZBdXMKLSAgICBtZW51dHJhbnMgVG9cICZOZXh0XCBlcnJvcjxUYWI+XXMJCQladW1cICZO5GNoc3RlblwgRmVobGVyPFRhYj5dcwotICAgIG1lbnV0cmFucyBUb1wgJlByZXZpb3VzXCBlcnJvcjxUYWI+W3MJCVp1bVwgJkxldHp0ZW5cIEZlaGxlcjxUYWI+W3MKKyAgICBtZW51dHJhbnMgJlNwZWxsXCBDaGVja1wgT24JCQkJJlJlY2h0c2NocmVpYnBy/GZ1bmdcIGFuCisgICAgbWVudXRyYW5zIFNwZWxsXCBDaGVja1wgJk9mZgkJCVJlY2h0c2NocmVpYnBy/GZ1bmdcICZhdXMKKyAgICBtZW51dHJhbnMgVG9cICZOZXh0XCBlcnJvcjxUYWI+XXMJCQladW1cICZu5GNoc3RlblwgRmVobGVyPFRhYj5dcworICAgIG1lbnV0cmFucyBUb1wgJlByZXZpb3VzXCBlcnJvcjxUYWI+W3MJCVp1bVwgJnZvcmhlcmlnZW5cIEZlaGxlcjxUYWI+W3MKICAgICBtZW51dHJhbnMgU3VnZ2VzdFwgJkNvcnJlY3Rpb25zPFRhYj56PQkJJktvcnJla3R1cnZvcnNjaGzkZ2U8VGFiPno9CiAgICAgbWVudXRyYW5zICZSZXBlYXRcIGNvcnJlY3Rpb248VGFiPjpzcGVsbHJlcGFsbAkmV2llZGVyaG9sZVwgS29ycmVrdHVyPFRhYj46c3BlbGxyZXBhbGwKICAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbiIJCQlWZXJ3ZW5kZVwgV/ZydGVyYnVjaFwgImVuIgpAQCAtMTE1LDcgKzExNiw3IEBACiAgICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW5fZ2IiCQlWZXJ3ZW5kZVwgV/ZydGVyYnVjaFwgImVuX2diIgogICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuX256IgkJVmVyd2VuZGVcIFf2cnRlcmJ1Y2hcICJlbl9ueiIKICAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl91cyIJCVZlcndlbmRlXCBX9nJ0ZXJidWNoXCAiZW5fdXMiCi0gICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZGUiICAgCQlWZXJ3ZW5kZVwgV/ZydGVyYnVjaFwgImRlIgorICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImRlIgkJCVZlcndlbmRlXCBX9nJ0ZXJidWNoXCAiZGUiCiAgICAgbWVudXRyYW5zICZGaW5kXCBNb3JlXCBMYW5ndWFnZXMJCQkmU3VjaGVcIG5hY2hcIFf2cnRlcmL8Y2hlcm4KIGVuZGlmCiBpZiBoYXMoImZvbGRpbmciKQpAQCAtMTM4LDI5ICsxMzksMjkgQEAKICAgbWVudXRyYW5zIE1hJnJrZXIJCQkJCU1hJnJraWVydW5nZW4KICAgIiBjcmVhdGUgYW5kIGRlbGV0ZSBmb2xkcwogICAiIFRPRE8gYWNjZWxlcmF0b3JzCi0gIG1lbnV0cmFucyBDcmVhdGVcICZGb2xkPFRhYj56ZgkJCUZhbHR1bmdcIEVyemV1Z2VuPFRhYj56ZgotICBtZW51dHJhbnMgJkRlbGV0ZVwgRm9sZDxUYWI+emQJCQlGYWx0dW5nXCBM9nNjaGVuPFRhYj56ZAotICBtZW51dHJhbnMgRGVsZXRlXCAmQWxsXCBGb2xkczxUYWI+ekQJCQlBbGxlXCBGYWx0dW5nZW5cIEz2c2NoZW48VGFiPnpECisgIG1lbnV0cmFucyBDcmVhdGVcICZGb2xkPFRhYj56ZgkJCUZhbHR1bmdcIGVyemV1Z2VuPFRhYj56ZgorICBtZW51dHJhbnMgJkRlbGV0ZVwgRm9sZDxUYWI+emQJCQlGYWx0dW5nXCBs9nNjaGVuPFRhYj56ZAorICBtZW51dHJhbnMgRGVsZXRlXCAmQWxsXCBGb2xkczxUYWI+ekQJCQlBbGxlXCBGYWx0dW5nZW5cIGz2c2NoZW48VGFiPnpECiAgICIgbW92aW5nIGFyb3VuZCBpbiBmb2xkcwotICBtZW51dHJhbnMgRm9sZFwgY29sdW1uXCAmd2lkdGgJCQkmQnJlaXRlXCBkZXJcIEZhbHR1bmdzLVNwYWx0ZQorICBtZW51dHJhbnMgRm9sZFwgY29sdW1uXCAmd2lkdGgJCQkmQnJlaXRlXCBkZXJcIEZhbHR1bmdzc3BhbHRlCiBlbmRpZiAgIiBoYXMgZm9sZGluZwogCiBpZiBoYXMoImRpZmYiKQogICBtZW51dHJhbnMgJkRpZmYJCQkJCSZEaWZmZXJlbnoKICAgbWVudXRyYW5zICZVcGRhdGUJCQkJCSZBa3R1YWxpc2llcmVuCi0gIG1lbnV0cmFucyAmR2V0XCBCbG9jawkJCQkJQmxvY2tcICZFaW5m/GdlbgotICBtZW51dHJhbnMgJlB1dFwgQmxvY2sJCQkJCUJsb2NrXCAm3GJlcnRyYWdlbgorICBtZW51dHJhbnMgJkdldFwgQmxvY2sJCQkJCUJsb2NrXCAmZWluZvxnZW4KKyAgbWVudXRyYW5zICZQdXRcIEJsb2NrCQkJCQlCbG9ja1wgJvxiZXJ0cmFnZW4KIGVuZGlmCiAKIG1lbnV0cmFucyAmVG9vbHMJCQkJCSZXZXJremV1Z2UKIG1lbnV0cmFucyAmSnVtcFwgdG9cIHRoaXNcIHRhZzxUYWI+Z15dCQkJJlNwcmluZ2VcIHp1bVwgVGFnPFRhYj5nXl0KLW1lbnV0cmFucyBKdW1wXCAmYmFjazxUYWI+XlQJCQkJU3ByaW5nZVwgJlp1cvxjazxUYWI+XlQKLW1lbnV0cmFucyBCdWlsZFwgJlRhZ3NcIEZpbGUJCQkJRXJzdGVsbGVcICZUYWdzXCBEYXRlaQorbWVudXRyYW5zIEp1bXBcICZiYWNrPFRhYj5eVAkJCQlTcHJpbmdlXCAmenVy/GNrPFRhYj5eVAorbWVudXRyYW5zIEJ1aWxkXCAmVGFnc1wgRmlsZQkJCQlFcnN0ZWxsZVwgJlRhZy1EYXRlaQogbWVudXRyYW5zICZNYWtlPFRhYj46bWFrZQkJCQkmRXJzdGVsbGVuPFRhYj46bWFrZQotbWVudXRyYW5zICZMaXN0XCBFcnJvcnM8VGFiPjpjbAkJCQkmRmVobGVyXCBBbnplaWdlbjxUYWI+OmNsCi1tZW51dHJhbnMgTCZpc3RcIE1lc3NhZ2VzPFRhYj46Y2whCQkJJkhpbndlaXNlXCBBbnplaWdlbjxUYWI+OmNsIQotbWVudXRyYW5zICZOZXh0XCBFcnJvcjxUYWI+OmNuCQkJCVp1bVwgJk7kY2hzdGVuXCBGZWhsZXI8VGFiPjpjbgotbWVudXRyYW5zICZQcmV2aW91c1wgRXJyb3I8VGFiPjpjcAkJCVp1bVwgJlZvcmhlcmlnZW5cIEZlaGxlcjxUYWI+OmNwCittZW51dHJhbnMgJkxpc3RcIEVycm9yczxUYWI+OmNsCQkJCSZGZWhsZXJcIGFuemVpZ2VuPFRhYj46Y2wKK21lbnV0cmFucyBMJmlzdFwgTWVzc2FnZXM8VGFiPjpjbCEJCQkmSGlud2Vpc2VcIGFuemVpZ2VuPFRhYj46Y2whCittZW51dHJhbnMgJk5leHRcIEVycm9yPFRhYj46Y24JCQkJWnVtXCAmbuRjaHN0ZW5cIEZlaGxlcjxUYWI+OmNuCittZW51dHJhbnMgJlByZXZpb3VzXCBFcnJvcjxUYWI+OmNwCQkJWnVtXCAmdm9yaGVyaWdlblwgRmVobGVyPFRhYj46Y3AKIG1lbnV0cmFucyAmT2xkZXJcIExpc3Q8VGFiPjpjb2xkCQkJJsRsdGVyZVwgTGlzdGU8VGFiPjpjb2xkCiBtZW51dHJhbnMgTiZld2VyXCBMaXN0PFRhYj46Y25ldwkJCSZOZXVlcmVcIExpc3RlPFRhYj46Y25ldwogCkBAIC0xNzgsOCArMTc5LDggQEAKICIge3t7IFNZTlRBWCAvIFNZTlRBWAogbWVudXRyYW5zICZTeW50YXgJCQkJJlN5bnRheAogbWVudXRyYW5zICZTaG93XCBmaWxldHlwZXNcIGluXCBtZW51CQlEYXRlaXR5cGVuXCBhbiZ6ZWlnZW4KLW1lbnV0cmFucyBTZXRcICcmc3ludGF4J1wgb25seQkJCU51clwgJyZzeW50YXgnXCBTZXR6ZW4KLW1lbnV0cmFucyBTZXRcICcmZmlsZXR5cGUnXCB0b28JCQlBdWNoXCAnJmZpbGV0eXBlJ1wgU2V0emVuCittZW51dHJhbnMgU2V0XCAnJnN5bnRheCdcIG9ubHkJCQlOdXJcICcmc3ludGF4J1wgc2V0emVuCittZW51dHJhbnMgU2V0XCAnJmZpbGV0eXBlJ1wgdG9vCQkJQXVjaFwgJyZmaWxldHlwZSdcIHNldHplbgogbWVudXRyYW5zICZPZmYJCQkJCSZBdXMKIG1lbnV0cmFucyAmTWFudWFsCQkJCSZNYW51ZWxsCiBtZW51dHJhbnMgQSZ1dG9tYXRpYwkJCQlBJnV0b21hdGlzY2gKQEAgLTIwMiwxMSArMjAzLDExIEBACiBtZW51dHJhbnMgJldpbmRvdwkJCSZBbnNpY2h0CiBtZW51dHJhbnMgJk5ldzxUYWI+XlduCQkJJk5ldTxUYWI+XlduCiBtZW51dHJhbnMgUyZwbGl0PFRhYj5eV3MJCUF1ZnMmcGFsdGVuPFRhYj5eV3MKLW1lbnV0cmFucyBTcGxpdFwgJlZlcnRpY2FsbHk8VGFiPl5XdgkmVmVydGlrYWxcIEF1ZnNwYWx0ZW48VGFiPl5XdgorbWVudXRyYW5zIFNwbGl0XCAmVmVydGljYWxseTxUYWI+Xld2CSZWZXJ0aWthbFwgYXVmc3BhbHRlbjxUYWI+Xld2CiBtZW51dHJhbnMgU3BsaXRcIEZpbGVcIEUmeHBsb3JlcglWZXImemVpY2huaXMKIG1lbnV0cmFucyBTcCZsaXRcIFRvXCAjPFRhYj5eV15eCUF1ZnNwYSZsdGVuXCBpblwgIzxUYWI+XldeXgogbWVudXRyYW5zICZDbG9zZTxUYWI+XldjCQkmU2NobGll32VuPFRhYj5eV2MKLW1lbnV0cmFucyBDbG9zZVwgJk90aGVyKHMpPFRhYj5eV28JJkFuZGVyZVwgU2NobGll32VuPFRhYj5eV28KK21lbnV0cmFucyBDbG9zZVwgJk90aGVyKHMpPFRhYj5eV28JJkFuZGVyZVwgc2NobGll32VuPFRhYj5eV28KIG1lbnV0cmFucyBOZSZ4dDxUYWI+Xld3CQkJTibkY2hzdGVzPFRhYj5eV3cKIG1lbnV0cmFucyBQJnJldmlvdXM8VGFiPl5XVwkJVm9yJmhlcmlnZXM8VGFiPl5XVwogbWVudXRyYW5zICZFcXVhbFwgU2l6ZTxUYWI+Xlc9CQkmR2xlaWNoZVwgSPZoZW48VGFiPl5XPQpAQCAtMjU5LDkgKzI2MCw5IEBACiAgICAgZGVsZnVuIERvX3Rvb2xiYXJfdG1lbnUKICAgZW5kaWYKICAgZnVuIERvX3Rvb2xiYXJfdG1lbnUoKQotICAgIHRtZW51IFRvb2xCYXIuT3BlbgkJRGF0ZWkg1mZmbmVuCi0gICAgdG1lbnUgVG9vbEJhci5TYXZlCQlEYXRlaSBTcGVpY2hlcm4KLSAgICB0bWVudSBUb29sQmFyLlNhdmVBbGwJQWxsZSBEYXRlaWVuIFNwZWljaGVybgorICAgIHRtZW51IFRvb2xCYXIuT3BlbgkJRGF0ZWkg9mZmbmVuCisgICAgdG1lbnUgVG9vbEJhci5TYXZlCQlEYXRlaSBzcGVpY2hlcm4KKyAgICB0bWVudSBUb29sQmFyLlNhdmVBbGwJQWxsZSBEYXRlaWVuIHNwZWljaGVybgogICAgIHRtZW51IFRvb2xCYXIuUHJpbnQJCURydWNrZW4KICAgICB0bWVudSBUb29sQmFyLlVuZG8JCVp1cvxjawogICAgIHRtZW51IFRvb2xCYXIuUmVkbwkJV2llZGVyaG9sZW4KQEAgLTI2OSwyNSArMjcwLDI1IEBACiAgICAgdG1lbnUgVG9vbEJhci5Db3B5CQlLb3BpZXJlbgogICAgIHRtZW51IFRvb2xCYXIuUGFzdGUJCUVpbmb8Z2VuCiAgICAgdG1lbnUgVG9vbEJhci5GaW5kCQlTdWNoZW4uLi4KLSAgICB0bWVudSBUb29sQmFyLkZpbmROZXh0CVN1Y2hlIE7kY2hzdGVuCi0gICAgdG1lbnUgVG9vbEJhci5GaW5kUHJldglTdWNoZSBWb3JoZXJpZ2VuCisgICAgdG1lbnUgVG9vbEJhci5GaW5kTmV4dAlTdWNoZSBu5GNoc3RlbgorICAgIHRtZW51IFRvb2xCYXIuRmluZFByZXYJU3VjaGUgdm9yaGVyaWdlbgogICAgIHRtZW51IFRvb2xCYXIuUmVwbGFjZQlTdWNoZW4gdW5kIEVyc2V0emVuLi4uCiAgICAgaWYgMAkiIGRpc2FibGVkOyBUaGVzZSBhcmUgaW4gdGhlIFdpbmRvd3MgbWVudQogICAgICAgdG1lbnUgVG9vbEJhci5OZXcJCU5ldWUgQW5zaWNodAotICAgICAgdG1lbnUgVG9vbEJhci5XaW5TcGxpdAlBbnNpY2h0IEF1ZnNwYWx0ZW4KLSAgICAgIHRtZW51IFRvb2xCYXIuV2luTWF4CUFuc2ljaHQgTWF4aW1hbGUgSPZoZW4KLSAgICAgIHRtZW51IFRvb2xCYXIuV2luTWluCUFuc2ljaHQgTWluaW1hbGUgSPZoZW4KLSAgICAgIHRtZW51IFRvb2xCYXIuV2luQ2xvc2UJQW5zaWNodCBTY2hsaWXfZW4KKyAgICAgIHRtZW51IFRvb2xCYXIuV2luU3BsaXQJQW5zaWNodCBhdWZzcGFsdGVuCisgICAgICB0bWVudSBUb29sQmFyLldpbk1heAlBbnNpY2h0IG1heGltYWxlIEj2aGVuCisgICAgICB0bWVudSBUb29sQmFyLldpbk1pbglBbnNpY2h0IG1pbmltYWxlIEj2aGVuCisgICAgICB0bWVudSBUb29sQmFyLldpbkNsb3NlCUFuc2ljaHQgc2NobGll32VuCiAgICAgZW5kaWYKLSAgICB0bWVudSBUb29sQmFyLkxvYWRTZXNuCVNpdHp1bmcgTGFkZW4KLSAgICB0bWVudSBUb29sQmFyLlNhdmVTZXNuCVNpdHp1bmcgU3BlaWNoZXJuCi0gICAgdG1lbnUgVG9vbEJhci5SdW5TY3JpcHQJVmltLVNrcmlwdCBBdXNm/GhyZW4KKyAgICB0bWVudSBUb29sQmFyLkxvYWRTZXNuCVNpdHp1bmcgbGFkZW4KKyAgICB0bWVudSBUb29sQmFyLlNhdmVTZXNuCVNpdHp1bmcgc3BlaWNoZXJuCisgICAgdG1lbnUgVG9vbEJhci5SdW5TY3JpcHQJVmltLVNrcmlwdCBhdXNm/GhyZW4KICAgICB0bWVudSBUb29sQmFyLk1ha2UJCUVyc3RlbGxlbgotICAgIHRtZW51IFRvb2xCYXIuU2hlbGwJCVNoZWxsIFN0YXJ0ZW4KLSAgICB0bWVudSBUb29sQmFyLlJ1bkN0YWdzCUVyc3RlbGxlIFRhZ3MgRGF0ZWkKKyAgICB0bWVudSBUb29sQmFyLlNoZWxsCQlTaGVsbCBzdGFydGVuCisgICAgdG1lbnUgVG9vbEJhci5SdW5DdGFncwlFcnN0ZWxsZSBUYWctRGF0ZWkKICAgICB0bWVudSBUb29sQmFyLlRhZ0p1bXAJU3ByaW5nZSB6dW0gVGFnCiAgICAgdG1lbnUgVG9vbEJhci5IZWxwCQlIaWxmZSEKLSAgICB0bWVudSBUb29sQmFyLkZpbmRIZWxwCUhpbGZlIER1cmNoc3VjaGVuLi4uCisgICAgdG1lbnUgVG9vbEJhci5GaW5kSGVscAlIaWxmZSBkdXJjaHN1Y2hlbi4uLgogICBlbmRmdW4KIGVuZGlmCiAiIH19fSBUT09MQkFSCmRpZmYgLS1naXQgYS9zcmMvZXhfY21kcy5jIGIvc3JjL2V4X2NtZHMuYwppbmRleCBiZjAzNzIxLi43OTBiMzBlIDEwMDY0NAotLS0gYS9zcmMvZXhfY21kcy5jCisrKyBiL3NyYy9leF9jbWRzLmMKQEAgLTQyODcsNiArNDI4NywxMyBAQAogICAgIGlmIChlYXAtPnNraXApCSAgICAvKiBub3QgZXhlY3V0aW5nIGNvbW1hbmRzLCBvbmx5IHBhcnNpbmcgKi8KIAlyZXR1cm47CiAKKyAgICBpZiAoIWRvX2NvdW50ICYmICFjdXJidWYtPmJfcF9tYSkKKyAgICB7CisJLyogU3Vic3RpdHVzaW9uIGlzIG5vdCBhbGxvd2VkIGluIG5vbi0nbW9kaWZpYWJsZScgYnVmZmVyICovCisJRU1TRyhfKGVfbW9kaWZpYWJsZSkpOworCXJldHVybjsKKyAgICB9CisKICAgICBpZiAoc2VhcmNoX3JlZ2NvbXAocGF0LCBSRV9TVUJTVCwgd2hpY2hfcGF0LCBTRUFSQ0hfSElTLCAmcmVnbWF0Y2gpID09IEZBSUwpCiAgICAgewogCWlmIChkb19lcnJvcikKZGlmZiAtLWdpdCBhL3NyYy9leF9jbWRzLmggYi9zcmMvZXhfY21kcy5oCmluZGV4IDMyZTA3OWQuLjI3OGEwOTYgMTAwNjQ0Ci0tLSBhL3NyYy9leF9jbWRzLmgKKysrIGIvc3JjL2V4X2NtZHMuaApAQCAtNzY4LDcgKzc2OCw3IEBACiBFWChDTURfcnZpbWluZm8sCSJydmltaW5mbyIsCWV4X3ZpbWluZm8sCiAJCQlCQU5HfEZJTEUxfFRSTEJBUnxDTURXSU4pLAogRVgoQ01EX3N1YnN0aXR1dGUsCSJzdWJzdGl0dXRlIiwJZG9fc3ViLAotCQkJUkFOR0V8V0hPTEVGT0xEfEVYVFJBfENNRFdJTnxNT0RJRlkpLAorCQkJUkFOR0V8V0hPTEVGT0xEfEVYVFJBfENNRFdJTiksCiBFWChDTURfc05leHQsCQkic05leHQiLAlleF9wcmV2aW91cywKIAkJCUVYVFJBfFJBTkdFfE5PVEFEUnxDT1VOVHxCQU5HfEVESVRDTUR8QVJHT1BUfFRSTEJBUiksCiBFWChDTURfc2FyZ3VtZW50LAkic2FyZ3VtZW50IiwJZXhfYXJndW1lbnQsCkBAIC04MjgsNyArODI4LDcgQEAKIEVYKENNRF9zbGFzdCwJCSJzbGFzdCIsCWV4X2xhc3QsCiAJCQlFWFRSQXxCQU5HfEVESVRDTUR8QVJHT1BUfFRSTEJBUiksCiBFWChDTURfc21hZ2ljLAkJInNtYWdpYyIsCWV4X3N1Ym1hZ2ljLAotCQkJUkFOR0V8V0hPTEVGT0xEfEVYVFJBfENNRFdJTnxNT0RJRlkpLAorCQkJUkFOR0V8V0hPTEVGT0xEfEVYVFJBfENNRFdJTiksCiBFWChDTURfc21hcCwJCSJzbWFwIiwJCWV4X21hcCwKIAkJCUVYVFJBfFRSTEJBUnxOT1RSTENPTXxVU0VDVFJMVnxDTURXSU4pLAogRVgoQ01EX3NtYXBjbGVhciwJInNtYXBjbGVhciIsCWV4X21hcGNsZWFyLApAQCAtODQwLDcgKzg0MCw3IEBACiBFWChDTURfc25pZmYsCQkic25pZmYiLAlleF9zbmlmZiwKIAkJCUVYVFJBfFRSTEJBUiksCiBFWChDTURfc25vbWFnaWMsCSJzbm9tYWdpYyIsCWV4X3N1Ym1hZ2ljLAotCQkJUkFOR0V8V0hPTEVGT0xEfEVYVFJBfENNRFdJTnxNT0RJRlkpLAorCQkJUkFOR0V8V0hPTEVGT0xEfEVYVFJBfENNRFdJTiksCiBFWChDTURfc25vcmVtYXAsCSJzbm9yZW1hcCIsCWV4X21hcCwKIAkJCUVYVFJBfFRSTEJBUnxOT1RSTENPTXxVU0VDVFJMVnxDTURXSU4pLAogRVgoQ01EX3Nub3JlbWVudSwJInNub3JlbWVudSIsCWV4X21lbnUsCmRpZmYgLS1naXQgYS9zcmMvZXhfY21kczIuYyBiL3NyYy9leF9jbWRzMi5jCmluZGV4IGFiNjE2YmIuLjNkNmUyMTcgMTAwNjQ0Ci0tLSBhL3NyYy9leF9jbWRzMi5jCisrKyBiL3NyYy9leF9jbWRzMi5jCkBAIC0xNDg4LDcgKzE0ODgsNyBAQAogCSAqIG1heSBjYXVzZSBhIHJlZHJhdy4gIEJ1dCB3YWl0X3JldHVybigpIGlzIGEgbm8tb3Agd2hlbiB2Z2V0YygpCiAJICogaXMgYnVzeSAoUXVpdCB1c2VkIGZyb20gd2luZG93IG1lbnUpLCB0aGVuIG1ha2Ugc3VyZSB3ZSBkb24ndAogCSAqIGNhdXNlIGEgc2Nyb2xsIHVwLiAqLwotCWlmICh2Z2V0Y19idXN5KQorCWlmICh2Z2V0Y19idXN5ID4gMCkKIAl7CiAJICAgIG1zZ19yb3cgPSBjbWRsaW5lX3JvdzsKIAkgICAgbXNnX2NvbCA9IDA7CkBAIC0zNjk2LDIwICszNjk2LDIwIEBACiAgICAgICogcmVkZWZpbmVkIGFuZCBpdCBkb2Vzbid0IHVzZSB0aGUgYXJndW1lbnRzLiAqLwogICAgIGxvYyA9IHNldGxvY2FsZSh3aGF0LCBOVUxMKTsKIAotIyBpZiBkZWZpbmVkKF9fQk9STEFORENfXykKKyMgaWZkZWYgV0lOMzIKICAgICBpZiAobG9jICE9IE5VTEwpCiAgICAgewogCWNoYXJfdQkqcDsKIAotCS8qIEJvcmxhbmQgcmV0dXJucyBzb21ldGhpbmcgbGlrZSAiTENfQ1RZUEU9PG5hbWU+XG4iCi0JICogTGV0J3MgdHJ5IHRvIGZpeCB0aGF0IGJ1ZyBoZXJlLi4uICovCisJLyogc2V0b2NhbGUoKSByZXR1cm5zIHNvbWV0aGluZyBsaWtlICJMQ19DT0xMQVRFPTxuYW1lPjtMQ18uLi4iIHdoZW4KKwkgKiBvbmUgb2YgdGhlIHZhbHVlcyAoZS5nLiwgTENfQ1RZUEUpIGRpZmZlcnMuICovCiAJcCA9IHZpbV9zdHJjaHIobG9jLCAnPScpOwogCWlmIChwICE9IE5VTEwpCiAJewogCSAgICBsb2MgPSArK3A7CiAJICAgIHdoaWxlICgqcCAhPSBOVUwpCS8qIHJlbW92ZSB0cmFpbGluZyBuZXdsaW5lICovCiAJICAgIHsKLQkJaWYgKCpwIDwgJyAnKQorCQlpZiAoKnAgPCAnICcgfHwgKnAgPT0gJzsnKQogCQl7CiAJCSAgICAqcCA9IE5VTDsKIAkJICAgIGJyZWFrOwpAQCAtMzc3OCw4ICszNzc4LDEwIEBACiAgICAgcCA9IChjaGFyX3UgKilnZXRfbG9jYWxlX3ZhbChMQ19NRVNTQUdFUyk7CiAjICBlbHNlCiAgICAgLyogVGhpcyBpcyBuZWNlc3NhcnkgZm9yIFdpbjMyLCB3aGVyZSBMQ19NRVNTQUdFUyBpcyBub3QgZGVmaW5lZCBhbmQgJExBTkcKLSAgICAgKiBtYXkgYmUgc2V0IHRvIHRoZSBMQ0lEIG51bWJlci4gKi8KLSAgICBwID0gKGNoYXJfdSAqKWdldF9sb2NhbGVfdmFsKExDX0FMTCk7CisgICAgICogbWF5IGJlIHNldCB0byB0aGUgTENJRCBudW1iZXIuICBMQ19DT0xMQVRFIGlzIHRoZSBiZXN0IGd1ZXNzLCBMQ19USU1FCisgICAgICogYW5kIExDX01PTkVUQVJZIG1heSBiZSBzZXQgZGlmZmVyZW50bHkgZm9yIGEgSmFwYW5lc2Ugd29ya2luZyBpbiB0aGUKKyAgICAgKiBVUy4gKi8KKyAgICBwID0gKGNoYXJfdSAqKWdldF9sb2NhbGVfdmFsKExDX0NPTExBVEUpOwogIyAgZW5kaWYKICMgZWxzZQogICAgIHAgPSBtY2hfZ2V0ZW52KChjaGFyX3UgKikiTENfQUxMIik7CmRpZmYgLS1naXQgYS9zcmMvaGFyZGNvcHkuYyBiL3NyYy9oYXJkY29weS5jCmluZGV4IGU2Yzg5YTYuLjJiNWM3MGUgMTAwNjQ0Ci0tLSBhL3NyYy9oYXJkY29weS5jCisrKyBiL3NyYy9oYXJkY29weS5jCkBAIC0yNDc0LDcgKzI0NzQsNyBAQAogICAgIGRvdWJsZSAgICAgIGJvdHRvbTsKICNpZmRlZiBGRUFUX01CWVRFCiAgICAgaW50ICAgICAgICAgcHJvcHM7Ci0gICAgaW50ICAgICAgICAgY21hcDsKKyAgICBpbnQgICAgICAgICBjbWFwID0gMDsKICAgICBjaGFyX3UJKnBfZW5jb2Rpbmc7CiAgICAgc3RydWN0IHBydF9wc19lbmNvZGluZ19TICpwX21iZW5jOwogICAgIHN0cnVjdCBwcnRfcHNfZW5jb2RpbmdfUyAqcF9tYmVuY19maXJzdDsKZGlmZiAtLWdpdCBhL3NyYy92ZXJzaW9uLmggYi9zcmMvdmVyc2lvbi5oCmluZGV4IGUzYmNjYjUuLjk5M2U3NDcgMTAwNjQ0Ci0tLSBhL3NyYy92ZXJzaW9uLmgKKysrIGIvc3JjL3ZlcnNpb24uaApAQCAtMzUsNiArMzUsNiBAQAogICovCiAjZGVmaW5lIFZJTV9WRVJTSU9OX05PRE9UCSJ2aW03MGMiCiAjZGVmaW5lIFZJTV9WRVJTSU9OX1NIT1JUCSI3LjBjIgotI2RlZmluZSBWSU1fVkVSU0lPTl9NRURJVU0JIjcuMGMxMSBCRVRBIgotI2RlZmluZSBWSU1fVkVSU0lPTl9MT05HCSJWSU0gLSBWaSBJTXByb3ZlZCA3LjBjMTEgQkVUQSAoMjAwNiBBcHIgNikiCi0jZGVmaW5lIFZJTV9WRVJTSU9OX0xPTkdfREFURQkiVklNIC0gVmkgSU1wcm92ZWQgNy4wYzExIEJFVEEgKDIwMDYgQXByIDYsIGNvbXBpbGVkICIKKyNkZWZpbmUgVklNX1ZFUlNJT05fTUVESVVNCSI3LjBjMTIgQkVUQSIKKyNkZWZpbmUgVklNX1ZFUlNJT05fTE9ORwkiVklNIC0gVmkgSU1wcm92ZWQgNy4wYzEyIEJFVEEgKDIwMDYgQXByIDcpIgorI2RlZmluZSBWSU1fVkVSU0lPTl9MT05HX0RBVEUJIlZJTSAtIFZpIElNcHJvdmVkIDcuMGMxMiBCRVRBICgyMDA2IEFwciA3LCBjb21waWxlZCAiCg==