ZGlmZiAtLWdpdCBhL0JVSUxEIGIvQlVJTEQKaW5kZXggMTg0YWIyNy4uYjhkOGI5ZiAxMDA2NDQKLS0tIGEvQlVJTEQKKysrIGIvQlVJTEQKQEAgLTE0LDYgKzE0LDcgQEAKICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyOmpnaXQtbGZzLXNlcnZlciIsCiAgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQuanVuaXQ6anVuaXQiLAogICAgICAgICAiLy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGU6c3NoLWFwYWNoZSIsCisgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudDpzc2gtYXBhY2hlLWFnZW50IiwKICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaDpzc2gtanNjaCIsCiAgICAgXSwKICAgICBvdXRzID0gWyJhbGwuemlwIl0sCmRpZmYgLS1naXQgYS9SRUFETUUubWQgYi9SRUFETUUubWQKaW5kZXggMDkxYWNjZC4uZjFmNDg1YSAxMDA2NDQKLS0tIGEvUkVBRE1FLm1kCisrKyBiL1JFQURNRS5tZApAQCAtNTYsOSArNTYsMTMgQEAKIAogLSBfX29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZV9fCiAKLSAgICBDbGllbnQgc3VwcG9ydCBmb3IgdGhlIHNzaCBwcm90b2NvbCBiYXNlZCBvbgorICAgIENsaWVudCBzdXBwb3J0IGZvciB0aGUgU1NIIHByb3RvY29sIGJhc2VkIG9uCiAgICAgW0FwYWNoZSBNaW5hIHNzaGRdKGh0dHBzOi8vbWluYS5hcGFjaGUub3JnL3NzaGQtcHJvamVjdC8pLgogCistIF9fb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50X18KKworICAgIE9wdGlvbmFsIHN1cHBvcnQgZm9yIFNTSCBhZ2VudHMgZm9yIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS4KKwogLSBfX29yZy5lY2xpcHNlLmpnaXQudWlfXwogCiAgICAgU2ltcGxlIFVJIGZvciBkaXNwbGF5aW5nIGdpdCBsb2cuCkBAIC04Myw3ICs4Nyw3IEBACiAtIE9ubHkgdGhlIHRpbWVzdGFtcCBvZiB0aGUgaW5kZXggaXMgdXNlZCBieSBKR2l0IGlmIHRoZSBpbmRleCBpcwogICBkaXJ0eS4KIAotLSBKR2l0IHJlcXVpcmVzIGF0IGxlYXN0IGEgSmF2YSA4IEpESy4KKy0gSkdpdCA2LjAgYW5kIG5ld2VyIHJlcXVpcmVzIGF0IGxlYXN0IEphdmEgMTEuIE9sZGVyIHZlcnNpb25zIHJlcXVpcmUgYXQgbGVhc3QgSmF2YSAxLjguCiAKIC0gQ1JMRiBjb252ZXJzaW9uIGlzIHBlcmZvcm1lZCBkZXBlbmRpbmcgb24gdGhlIGBjb3JlLmF1dG9jcmxmYCBzZXR0aW5nLAogICBob3dldmVyIEdpdCBmb3IgV2luZG93cyBieSBkZWZhdWx0IHN0b3JlcyB0aGF0IHNldHRpbmcgZHVyaW5nCkBAIC0xMjMsNyArMTI3LDcgQEAKICAgLSBPYmplY3QgdHJhbnNwb3J0CiAKICAgICAgIEZldGNoIHZpYSBzc2gsIGdpdCwgaHR0cCwgQW1hem9uIFMzIGFuZCBidW5kbGVzLgotICAgICAgUHVzaCB2aWEgc3NoLCBnaXQgYW5kIEFtYXpvbiBTMy4gSkdpdCBkb2VzIG5vdCB5ZXQgZGVsdGlmeQorICAgICAgUHVzaCB2aWEgc3NoLCBnaXQsIGh0dHAsIGFuZCBBbWF6b24gUzMuIEpHaXQgZG9lcyBub3QgeWV0IGRlbHRpZnkKICAgICAgIHRoZSBwdXNoZWQgcGFja3Mgc28gdGhleSBtYXkgYmUgYSBsb3QgbGFyZ2VyIHRoYW4gQyBHaXQgcGFja3MuCiAKICAgLSBHYXJiYWdlIGNvbGxlY3Rpb24KQEAgLTE0NSw5ICsxNDksMTcgQEAKIAogVGhlcmUgYXJlIHNvbWUgbWlzc2luZyBmZWF0dXJlczoKIAotLSB2ZXJpZnlpbmcgc2lnbmVkIGNvbW1pdHMKLS0gc2lnbmluZyB0YWdzCiAtIHNpZ25pbmcgcHVzaAorLSBzaGFsbG93IGFuZCBwYXJ0aWFsIGNsb25pbmcKKy0gc3VwcG9ydCBmb3IgcmVtb3RlIGhlbHBlcnMKKy0gc3VwcG9ydCBmb3IgY3JlZGVudGlhbCBoZWxwZXJzCistIHN1cHBvcnQgZm9yIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgKGdpdC13b3JrdHJlZSkKKy0gdXNpbmcgZXh0ZXJuYWwgZGlmZiB0b29scworLSBzdXBwb3J0IGZvciBIVFRQUyBjbGllbnQgY2VydGlmaWNhdGVzCistIFNIQS0yNTYgb2JqZWN0IElEcworLSBnaXQgcHJvdG9jb2wgVjIgKGNsaWVudCBzaWRlKTogcGFja2ZpbGUtdXJpcworLSBtdWx0aS1wYWNrIGluZGV4CistIHNwbGl0IGluZGV4CiAKICMjIFN1cHBvcnQKIApkaWZmIC0tZ2l0IGEvV09SS1NQQUNFIGIvV09SS1NQQUNFCmluZGV4IGFjN2MyZWUuLjUxYTgxNWUgMTAwNjQ0Ci0tLSBhL1dPUktTUEFDRQorKysgYi9XT1JLU1BBQ0UKQEAgLTEzNCw2ICsxMzQsMTggQEAKICkKIAogbWF2ZW5famFyKAorICAgIG5hbWUgPSAiam5hIiwKKyAgICBhcnRpZmFjdCA9ICJuZXQuamF2YS5kZXYuam5hOmpuYTo1LjguMCIsCisgICAgc2hhMSA9ICIzNTUxZDhkODI3ZTU0ODU4MjE0MTA3NTQxZDNhZmY5YzYxNWNiNjE1IiwKKykKKworbWF2ZW5famFyKAorICAgIG5hbWUgPSAiam5hLXBsYXRmb3JtIiwKKyAgICBhcnRpZmFjdCA9ICJuZXQuamF2YS5kZXYuam5hOmpuYS1wbGF0Zm9ybTo1LjguMCIsCisgICAgc2hhMSA9ICIyZjEyZjZkN2Y3NjUyMjcwZDEzNjI0Y2VmMWI4MmQ4Y2Q5YTUzOThlIiwKKykKKworbWF2ZW5famFyKAogICAgIG5hbWUgPSAiY29tbW9ucy1jb2RlYyIsCiAgICAgYXJ0aWZhY3QgPSAiY29tbW9ucy1jb2RlYzpjb21tb25zLWNvZGVjOjEuMTQiLAogICAgIHNoYTEgPSAiM2NiMTE4MWIyMTQxYTdlNzUyZjViZGM5OThiN2VmMTg0OWY3MjZjZiIsCkBAIC0xNTksOCArMTcxLDggQEAKIAogbWF2ZW5famFyKAogICAgIG5hbWUgPSAic2VydmxldC1hcGkiLAotICAgIGFydGlmYWN0ID0gImphdmF4LnNlcnZsZXQ6amF2YXguc2VydmxldC1hcGk6My4xLjAiLAotICAgIHNoYTEgPSAiM2NkNjNkMDc1NDk3NzUxNzg0YjJmYTg0YmU1OTQzMmY0OTA1YmY3YyIsCisgICAgYXJ0aWZhY3QgPSAiamF2YXguc2VydmxldDpqYXZheC5zZXJ2bGV0LWFwaTo0LjAuMCIsCisgICAgc2hhMSA9ICI2MDIwMGFmZmMyZmUwMTY1MTM2ZWQzNjkwZmFmMDBiNjZhZWQ1ODFhIiwKICkKIAogbWF2ZW5famFyKApAQCAtMjMxLDU1ICsyNDMsNTUgQEAKICAgICBzaGExID0gIjQzMWZjM2NiYzBmZjgxYWJkYmZkZTA3MDA2Mjc0MTA4OWMzYmE4NzQiLAogKQogCi1KRVRUWV9WRVIgPSAiOS40LjQzLnYyMDIxMDYyOSIKK0pFVFRZX1ZFUiA9ICIxMC4wLjYiCiAKIG1hdmVuX2phcigKICAgICBuYW1lID0gImpldHR5LXNlcnZsZXQiLAogICAgIGFydGlmYWN0ID0gIm9yZy5lY2xpcHNlLmpldHR5OmpldHR5LXNlcnZsZXQ6IiArIEpFVFRZX1ZFUiwKLSAgICBzaGExID0gImVlMDAwYzdkY2RiZTdiNGVmOTRlM2ZhNjdiZThmNTZhNDY5MTU5NDQiLAotICAgIHNyY19zaGExID0gIjUwMjM2NzY0ZmUxZDM2MTljYTA3ZjM0NmUxNDgxODljNGY1YjgwMWEiLAorICAgIHNoYTEgPSAiNDgyMTY1NzI2YmY1NGRkMTBlZTdlMmFlYjRhZTk0ODFlZWUwYzg3OCIsCisgICAgc3JjX3NoYTEgPSAiOGE4MTczYTBiYzZjMGQyMTVmYzlmYjliYTVmZDUwYmFlMTY5MGY5YyIsCiApCiAKIG1hdmVuX2phcigKICAgICBuYW1lID0gImpldHR5LXNlY3VyaXR5IiwKICAgICBhcnRpZmFjdCA9ICJvcmcuZWNsaXBzZS5qZXR0eTpqZXR0eS1zZWN1cml0eToiICsgSkVUVFlfVkVSLAotICAgIHNoYTEgPSAiYWUxOTU4ZGEwNzdjNDZiYWM2MWJlOWI4ZGUyYjQ1YTNhYTExMjM1MyIsCi0gICAgc3JjX3NoYTEgPSAiNmU1MjcxZTkxZGEzN2UzODFmNTY2ZTBkYjA3YWI0ZDkzNmQ4NjEwNCIsCisgICAgc2hhMSA9ICI1MTNmNDRlZDk2MzZjYTVlMGFkZWZhMGMwYjgxNTExMDY1ZGZkZGQyIiwKKyAgICBzcmNfc2hhMSA9ICIyZTdlYjJlZGJmMTU5MmUxNWIzMzgwOTY2NTFlMzc5ZmVhODYwODU5IiwKICkKIAogbWF2ZW5famFyKAogICAgIG5hbWUgPSAiamV0dHktc2VydmVyIiwKICAgICBhcnRpZmFjdCA9ICJvcmcuZWNsaXBzZS5qZXR0eTpqZXR0eS1zZXJ2ZXI6IiArIEpFVFRZX1ZFUiwKLSAgICBzaGExID0gIjhiYTA0ZjZiNWQwMDIyMzk4MzY4NGE1NjNhM2VkYWExMjI4MmJjZjAiLAotICAgIHNyY19zaGExID0gIjUxNjAwNTY3ZGJkMDgyZmIwM2ZlZWI5Yzc4NmY1ZTdjYzllMGExN2QiLAorICAgIHNoYTEgPSAiMTI1ZWUwN2U0ZDgxODJhNmFmY2EwMGQ1NDNmNmE0ZGNjODRmMjY3OCIsCisgICAgc3JjX3NoYTEgPSAiNWMwNzg5ODcyZWM2NzQzYWU4OTMxMzFhZTgxMjYyYWFlZmM4N2ZlNiIsCiApCiAKIG1hdmVuX2phcigKICAgICBuYW1lID0gImpldHR5LWh0dHAiLAogICAgIGFydGlmYWN0ID0gIm9yZy5lY2xpcHNlLmpldHR5OmpldHR5LWh0dHA6IiArIEpFVFRZX1ZFUiwKLSAgICBzaGExID0gIjUxNzE0NjYzMzdhNmRhN2VmYmYzMTc0OTBiOWM0NTc0YzBiNGI2NDAiLAotICAgIHNyY19zaGExID0gIjUyZjQ3NzE2MWZkMGZjOTA4NjlmNDhhMTQ1YWEyYzg2NjI0YzQ5NmUiLAorICAgIHNoYTEgPSAiNGM4ZWVkMjVkNTc3MDAyYTZjMGY5ZjNlZjM0MGViNTgxMzkwZjY5NiIsCisgICAgc3JjX3NoYTEgPSAiYWM3MjE0ZDYyMDJlZTBjYmM0YmRiY2Y5MGM3OTA2Y2E3MTZlODRlNSIsCiApCiAKIG1hdmVuX2phcigKICAgICBuYW1lID0gImpldHR5LWlvIiwKICAgICBhcnRpZmFjdCA9ICJvcmcuZWNsaXBzZS5qZXR0eTpqZXR0eS1pbzoiICsgSkVUVFlfVkVSLAotICAgIHNoYTEgPSAiYWNmNjcyYzY0YWMyMTg1MTA2OWM1YjViNzg5ZTVjMTg1YTI1OTMzZiIsCi0gICAgc3JjX3NoYTEgPSAiODI0ZDVjZmZjZTdhNzJhZjdjMTFkOWNkODdmODYxODRlMmEwNWMxNyIsCisgICAgc2hhMSA9ICIxYWI4MmFlNWRmZGJiMDdmMGZmYTA3ZjI4Mjc0ZmRmMzBlM2U5NmVlIiwKKyAgICBzcmNfc2hhMSA9ICJjNTkwODJmM2EwOWMwMjRmYWZjMjgxZjQzMmI2NzQzMmQzOThiOGMwIiwKICkKIAogbWF2ZW5famFyKAogICAgIG5hbWUgPSAiamV0dHktdXRpbCIsCiAgICAgYXJ0aWZhY3QgPSAib3JnLmVjbGlwc2UuamV0dHk6amV0dHktdXRpbDoiICsgSkVUVFlfVkVSLAotICAgIHNoYTEgPSAiOTczMDZmZDNjNzYxNzE2MDJjYWFkMmFjYzU0Y2E3NzljOTI0MGQ1ZiIsCi0gICAgc3JjX3NoYTEgPSAiZGZmZmY3MjcxYzI0OGQ0ZTIxZTJiMTYyOWM1Nzg5NmI4ZTYzMTA1MSIsCisgICAgc2hhMSA9ICI0ZTI5MzU3NDllYTFjOWZjYWJiYTYxYTg1N2Y4MjgzYzdmNWY5ODg1IiwKKyAgICBzcmNfc2hhMSA9ICI2YmFiYTY1MTg5OWMwNDRlMTRiYTM3ZDQzOTM0OTUwNjcwZDJhYTRlIiwKICkKIAogbWF2ZW5famFyKAogICAgIG5hbWUgPSAiamV0dHktdXRpbC1hamF4IiwKICAgICBhcnRpZmFjdCA9ICJvcmcuZWNsaXBzZS5qZXR0eTpqZXR0eS11dGlsLWFqYXg6IiArIEpFVFRZX1ZFUiwKLSAgICBzaGExID0gIjI1MDBkMTgwYzZlOGUyOGViM2I3NTM3MmI2ZWE5ZDQ1N2NmMzc2NTgiLAotICAgIHNyY19zaGExID0gIjY4MjQ3MGY1YWQwNzRlNjRmYzBlOWM5M2JkYzI3ODQ0ODJmNzkzNjIiLAorICAgIHNoYTEgPSAiYTgwMWQ0YjVmNWU5MDZmMTM0NzEzYWU4MmZkMWVhMTBhMTU5MDJjNiIsCisgICAgc3JjX3NoYTEgPSAiZjM1ZjU1MjVhNWQzMGRjMTIzN2I4NTQ1N2Q3NThkNTc4ZTNjZThkMCIsCiApCiAKIEJPVU5DWUNBU1RMRV9WRVIgPSAiMS42OSIKZGlmZiAtLWdpdCBhL2xpYi9CVUlMRCBiL2xpYi9CVUlMRAppbmRleCA2ODM0NGU0Li45NDQyN2Y2IDEwMDY0NAotLS0gYS9saWIvQlVJTEQKKysrIGIvbGliL0JVSUxECkBAIC03Niw2ICs3Niw3IEBACiAgICAgdmlzaWJpbGl0eSA9IFsKICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2g6X19wa2dfXyIsCiAgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZTpfX3BrZ19fIiwKKyAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ol9fcGtnX18iLAogICAgICAgICAiLy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdDpfX3BrZ19fIiwKICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC50ZXN0Ol9fcGtnX18iLAogICAgIF0sCkBAIC05NCw2ICs5NSwyMiBAQAogKQogCiBqYXZhX2xpYnJhcnkoCisgICAgbmFtZSA9ICJqbmEiLAorICAgIHZpc2liaWxpdHkgPSBbCisgICAgICAgICAiLy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQ6X19wa2dfXyIsCisgICAgXSwKKyAgICBleHBvcnRzID0gWyJAam5hLy9qYXIiXSwKKykKKworamF2YV9saWJyYXJ5KAorICAgIG5hbWUgPSAiam5hLXBsYXRmb3JtIiwKKyAgICB2aXNpYmlsaXR5ID0gWworICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ol9fcGtnX18iLAorICAgIF0sCisgICAgZXhwb3J0cyA9IFsiQGpuYS1wbGF0Zm9ybS8vamFyIl0sCispCisKK2phdmFfbGlicmFyeSgKICAgICBuYW1lID0gImphdmFld2FoIiwKICAgICB2aXNpYmlsaXR5ID0gWyIvL3Zpc2liaWxpdHk6cHVibGljIl0sCiAgICAgZXhwb3J0cyA9IFsiQGphdmFld2FoLy9qYXIiXSwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvLmNsYXNzcGF0aAppbmRleCAzZTU2NTRmLi43M2Q2ODk0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0Ly5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CiA8Y2xhc3NwYXRoPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIj4KIAkJPGF0dHJpYnV0ZXM+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IGI4NTNjNmEuLjY5ZTkyMjEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC03LDkgKzcsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYW5hbHlzaXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggMjRiZTA5My4uOTQzMzY1OCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCkBAIC01LDEzICs1LDEzIEBACiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCi1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgogQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKLUJ1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMS44CitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCiBJbXBvcnQtUGFja2FnZTogb3JnLmFwYWNoZS50b29scy5hbnQsCi0gb3JnLmVjbGlwc2UuamdpdC5hbnQudGFza3M7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFudC50YXNrczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuaGFtY3Jlc3QuY29yZTt2ZXJzaW9uPSJbMS4xLjAsMy4wLjApIiwKICBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC9idWlsZC5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC9idWlsZC5wcm9wZXJ0aWVzCmluZGV4IDRhMmQ4OTIuLjAxOWY2NTkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvYnVpbGQucHJvcGVydGllcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0L2J1aWxkLnByb3BlcnRpZXMKQEAgLTMsNSArMyw1IEBACiBiaW4uaW5jbHVkZXMgPSBwbHVnaW4ucHJvcGVydGllcyxcCiAJCQkgICBNRVRBLUlORi8sXAogCQkJICAgLgotanJlLmNvbXBpbGF0aW9uLnByb2ZpbGUgPSBKYXZhU0UtMS44CitqcmUuY29tcGlsYXRpb24ucHJvZmlsZSA9IEphdmFTRS0xMQogYWRkaXRpb25hbC5idW5kbGVzID0gb3JnLmVjbGlwc2UuamdpdApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdC9wb20ueG1sCmluZGV4IGY0NGVhZjcuLjZhZDY0MTUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3QvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC50ZXN0L3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQtcGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5hbnQudGVzdDwvYXJ0aWZhY3RJZD4KQEAgLTI3LDYgKzI3LDEwIEBACiAgICAgSlVuaXQgdGVzdHMgZm9yIHRoZSB2YXJpb3VzIGFudCB0YXNrcy4KICAgPC9kZXNjcmlwdGlvbj4KIAorICA8cHJvcGVydGllcz4KKyAgICA8bWF2ZW4uamF2YWRvYy5za2lwPnRydWU8L21hdmVuLmphdmFkb2Muc2tpcD4KKyAgPC9wcm9wZXJ0aWVzPgorCiAgIDxkZXBlbmRlbmNpZXM+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5qdW5pdDwvZ3JvdXBJZD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYW50Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC8uY2xhc3NwYXRoCmluZGV4IDExMDE2OGYuLjFmZGUzMTggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50Ly5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQvLmNsYXNzcGF0aApAQCAtMSw2ICsxLDEwIEBACiA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgogPGNsYXNzcGF0aD4KLQk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSI+CisJCTxhdHRyaWJ1dGVzPgorCQkJPGF0dHJpYnV0ZSBuYW1lPSJtb2R1bGUiIHZhbHVlPSJ0cnVlIi8+CisJCTwvYXR0cmlidXRlcz4KKwk8L2NsYXNzcGF0aGVudHJ5PgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InJlc291cmNlcyIvPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDQzMzVlNjYuLmY3OWRmNWIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLm1ldGhvZFBhcmFtZXRlcnM9ZG8gbm90IGdlbmVyYXRlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKQEAgLTI0LDYgKzI0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCkBAIC04MCw2ICs4MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTEyLDM0ICsxMTQsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNDgsNiArMTgyLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE1NywxMiArMTkyLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTcyLDcgKzIxMyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTg0LDEwICsyMjcsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTE5NywxNSArMjQxLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMTksMTEgKzI2NSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNDksMTAgKzI5OSwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjY5LDYgKzMyNSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjc3LDEzICszMzQsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMDAsNiArMzY0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzI2LDEwICszOTEsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM0MSw2ICs0MTEsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM1Niw2ICs0MjgsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNjYsOSArNDM5LDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM4MCwyMCArNDU2LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCBhY2E3OGUwLi4xMGJmYmQyIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmFudC9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMywxMyArMywxMyBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmFudAogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5hbnQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQogSW1wb3J0LVBhY2thZ2U6IG9yZy5hcGFjaGUudG9vbHMuYW50LAotICBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiCisgIG9yZy5lY2xpcHNlLmpnaXQuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCi1FeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5hbnQ7dmVyc2lvbj0iNS4xMy4zIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFudC50YXNrczt2ZXJzaW9uPSI1LjEzLjMiOworRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuYW50O3ZlcnNpb249IjYuMC4xIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFudC50YXNrczt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuYXBhY2hlLnRvb2xzLmFudCwKICAgIG9yZy5hcGFjaGUudG9vbHMuYW50LnR5cGVzIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5hbnQvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IGM5ZDgwYzIuLmMzZWJmYjMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYW50L01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5hbnQgLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmFudC5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LmFudDt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LmFudDt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hbnQvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuYW50L3BvbS54bWwKaW5kZXggN2JlMDNkMy4uNDQ0OGYyZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5hbnQvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFudC9wb20ueG1sCkBAIC0xNSw3ICsxNSw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuYW50PC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlLy5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLmNsYXNzcGF0aAppbmRleCAyMmYzMDY0Li5mMGQwYzczIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLmNsYXNzcGF0aApAQCAtMSw3ICsxLDExIEBACiA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgogPGNsYXNzcGF0aD4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KLQk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSI+CisJCTxhdHRyaWJ1dGVzPgorCQkJPGF0dHJpYnV0ZSBuYW1lPSJtb2R1bGUiIHZhbHVlPSJ0cnVlIi8+CisJCTwvYXR0cmlidXRlcz4KKwk8L2NsYXNzcGF0aGVudHJ5PgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJvdXRwdXQiIHBhdGg9ImJpbiIvPgogPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwppbmRleCBiYzdiYTFlLi4yYWJlOTUyIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlL01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IDA0ZDA1NzAuLjYyZmU1YTUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZS9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMjcgKzMsMjcgQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQogSW1wb3J0LVBhY2thZ2U6IG9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcy5hcmNoaXZlcnM7dmVyc2lvbj0iWzEuNCwyLjApIiwKICBvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MuYXJjaGl2ZXJzLnRhcjt2ZXJzaW9uPSJbMS40LDIuMCkiLAogIG9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcy5hcmNoaXZlcnMuemlwO3ZlcnNpb249IlsxLjQsMi4wKSIsCiAgb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLmNvbXByZXNzb3JzLmJ6aXAyO3ZlcnNpb249IlsxLjQsMi4wKSIsCiAgb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLmNvbXByZXNzb3JzLmd6aXA7dmVyc2lvbj0iWzEuNCwyLjApIiwKICBvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MuY29tcHJlc3NvcnMueHo7dmVyc2lvbj0iWzEuNCwyLjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFwaTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFwaTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lm5sczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAogIG9yZy5vc2dpLmZyYW1ld29yazt2ZXJzaW9uPSJbMS4zLjAsMi4wLjApIgogQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKIEJ1bmRsZS1BY3RpdmF0b3I6IG9yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZS5Gb3JtYXRBY3RpdmF0b3IKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmU7dmVyc2lvbj0iNS4xMy4zIjsKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmU7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmFwaSwKICAgIG9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcy5hcmNoaXZlcnMsCiAgICBvcmcub3NnaS5mcmFtZXdvcmsiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZS5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiO3gtaW50ZXJuYWw6PXRydWUKKyBvcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUuaW50ZXJuYWw7dmVyc2lvbj0iNi4wLjEiO3gtaW50ZXJuYWw6PXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IDY1NWNhOWYuLmRlYWIyZmEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgpAQCAtMyw1ICszLDUgQEAKIEJ1bmRsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUgLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUuc291cmNlCiBCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1FY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlO3ZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiO3Jvb3RzPSIuIgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgorRWNsaXBzZS1Tb3VyY2VCdW5kbGU6IG9yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZTt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvcG9tLnhtbAppbmRleCBjZWZlY2M5Li40NWYxMWRhIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmUvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LmFyY2hpdmU8L2FydGlmYWN0SWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmJlbmNobWFya3MvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uY2xhc3NwYXRoCmluZGV4IDk0YjcyN2QuLjhkY2Y5NGUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uY2xhc3NwYXRoCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uY2xhc3NwYXRoCkBAIC02LDcgKzYsNyBAQAogCQkJPGF0dHJpYnV0ZSBuYW1lPSJtYXZlbi5wb21kZXJpdmVkIiB2YWx1ZT0idHJ1ZSIvPgogCQk8L2F0dHJpYnV0ZXM+CiAJPC9jbGFzc3BhdGhlbnRyeT4KLQk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KIAkJPGF0dHJpYnV0ZXM+CiAJCQk8YXR0cmlidXRlIG5hbWU9Im1hdmVuLnBvbWRlcml2ZWQiIHZhbHVlPSJ0cnVlIi8+CiAJCTwvYXR0cmlidXRlcz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uZmFjdG9yeXBhdGggYi9vcmcuZWNsaXBzZS5qZ2l0LmJlbmNobWFya3MvLmZhY3RvcnlwYXRoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2MzFkNGEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmJlbmNobWFya3MvLmZhY3RvcnlwYXRoCkBAIC0wLDAgKzEsMjkgQEAKKzxmYWN0b3J5cGF0aD4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL29yZy9vcGVuamRrL2ptaC9qbWgtZ2VuZXJhdG9yLWFubnByb2Nlc3MvMS4zMi9qbWgtZ2VuZXJhdG9yLWFubnByb2Nlc3MtMS4zMi5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vb3JnL29wZW5qZGsvam1oL2ptaC1jb3JlLzEuMzIvam1oLWNvcmUtMS4zMi5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vbmV0L3NmL2pvcHQtc2ltcGxlL2pvcHQtc2ltcGxlLzQuNi9qb3B0LXNpbXBsZS00LjYuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL29yZy9hcGFjaGUvY29tbW9ucy9jb21tb25zLW1hdGgzLzMuMi9jb21tb25zLW1hdGgzLTMuMi5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9lcnJvcnByb25lL2Vycm9yX3Byb25lX2NvcmUvMi45LjAvZXJyb3JfcHJvbmVfY29yZS0yLjkuMC5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9lcnJvcnByb25lL2Vycm9yX3Byb25lX2Fubm90YXRpb24vMi45LjAvZXJyb3JfcHJvbmVfYW5ub3RhdGlvbi0yLjkuMC5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9lcnJvcnByb25lL2Vycm9yX3Byb25lX3R5cGVfYW5ub3RhdGlvbnMvMi45LjAvZXJyb3JfcHJvbmVfdHlwZV9hbm5vdGF0aW9ucy0yLjkuMC5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9lcnJvcnByb25lL2Vycm9yX3Byb25lX2NoZWNrX2FwaS8yLjkuMC9lcnJvcl9wcm9uZV9jaGVja19hcGktMi45LjAuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2lvL2dpdGh1Yi9qYXZhLWRpZmYtdXRpbHMvamF2YS1kaWZmLXV0aWxzLzQuMC9qYXZhLWRpZmYtdXRpbHMtNC4wLmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9vcmcvZWNsaXBzZS9qZ2l0L29yZy5lY2xpcHNlLmpnaXQvNC40LjEuMjAxNjA3MTUwNDU1LXIvb3JnLmVjbGlwc2UuamdpdC00LjQuMS4yMDE2MDcxNTA0NTUtci5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dpdGh1Yi9rZXZpbnN0ZXJuL3NvZnR3YXJlLWFuZC1hbGdvcml0aG1zLzEuMC9zb2Z0d2FyZS1hbmQtYWxnb3JpdGhtcy0xLjAuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2NvbS9naXRodWIvYmVuLW1hbmVzL2NhZmZlaW5lL2NhZmZlaW5lLzIuOC44L2NhZmZlaW5lLTIuOC44LmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9vcmcvcGNvbGxlY3Rpb25zL3Bjb2xsZWN0aW9ucy8yLjEuMi9wY29sbGVjdGlvbnMtMi4xLjIuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2NvbS9nb29nbGUvZ3VhdmEvZ3VhdmEvMzAuMS1qcmUvZ3VhdmEtMzAuMS1qcmUuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2NvbS9nb29nbGUvZ3VhdmEvZmFpbHVyZWFjY2Vzcy8xLjAuMS9mYWlsdXJlYWNjZXNzLTEuMC4xLmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9jb20vZ29vZ2xlL2d1YXZhL2xpc3RlbmFibGVmdXR1cmUvOTk5OS4wLWVtcHR5LXRvLWF2b2lkLWNvbmZsaWN0LXdpdGgtZ3VhdmEvbGlzdGVuYWJsZWZ1dHVyZS05OTk5LjAtZW1wdHktdG8tYXZvaWQtY29uZmxpY3Qtd2l0aC1ndWF2YS5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vb3JnL2NoZWNrZXJmcmFtZXdvcmsvY2hlY2tlci1xdWFsLzMuNS4wL2NoZWNrZXItcXVhbC0zLjUuMC5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9qMm9iamMvajJvYmpjLWFubm90YXRpb25zLzEuMy9qMm9iamMtYW5ub3RhdGlvbnMtMS4zLmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9jb20vZ29vZ2xlL2F1dG8vYXV0by1jb21tb24vMS4xLjIvYXV0by1jb21tb24tMS4xLjIuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2NvbS9nb29nbGUvY29kZS9maW5kYnVncy9qRm9ybWF0U3RyaW5nLzMuMC4wL2pGb3JtYXRTdHJpbmctMy4wLjAuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2NvbS9nb29nbGUvY29kZS9maW5kYnVncy9qc3IzMDUvMy4wLjAvanNyMzA1LTMuMC4wLmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9vcmcvY2hlY2tlcmZyYW1ld29yay9kYXRhZmxvdy1lcnJvcnByb25lLzMuMTUuMC9kYXRhZmxvdy1lcnJvcnByb25lLTMuMTUuMC5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9lcnJvcnByb25lL2phdmFjLzkrMTgxLXI0MTczLTEvamF2YWMtOSsxODEtcjQxNzMtMS5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorICAgIDxmYWN0b3J5cGF0aGVudHJ5IGtpbmQ9IlZBUkpBUiIgaWQ9Ik0yX1JFUE8vY29tL2dvb2dsZS9hdXRvL3ZhbHVlL2F1dG8tdmFsdWUtYW5ub3RhdGlvbnMvMS43L2F1dG8tdmFsdWUtYW5ub3RhdGlvbnMtMS43LmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9jb20vZ29vZ2xlL2Vycm9ycHJvbmUvZXJyb3JfcHJvbmVfYW5ub3RhdGlvbnMvMi45LjAvZXJyb3JfcHJvbmVfYW5ub3RhdGlvbnMtMi45LjAuamFyIiBlbmFibGVkPSJ0cnVlIiBydW5JbkJhdGNoTW9kZT0iZmFsc2UiLz4KKyAgICA8ZmFjdG9yeXBhdGhlbnRyeSBraW5kPSJWQVJKQVIiIGlkPSJNMl9SRVBPL2NvbS9nb29nbGUvcHJvdG9idWYvcHJvdG9idWYtamF2YS8zLjQuMC9wcm90b2J1Zi1qYXZhLTMuNC4wLmphciIgZW5hYmxlZD0idHJ1ZSIgcnVuSW5CYXRjaE1vZGU9ImZhbHNlIi8+CisgICAgPGZhY3RvcnlwYXRoZW50cnkga2luZD0iVkFSSkFSIiBpZD0iTTJfUkVQTy9jb20vZ29vZ2xlL2F1dG8vc2VydmljZS9hdXRvLXNlcnZpY2UtYW5ub3RhdGlvbnMvMS4wLXJjNi9hdXRvLXNlcnZpY2UtYW5ub3RhdGlvbnMtMS4wLXJjNi5qYXIiIGVuYWJsZWQ9InRydWUiIHJ1bkluQmF0Y2hNb2RlPSJmYWxzZSIvPgorPC9mYWN0b3J5cGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LmJlbmNobWFya3MvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDc0YmI0ODMuLjgxZmVkMjUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtMTAsOSArMTAsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYW5hbHlzaXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC04Nyw3ICs4Nyw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMjYsMzkgKzEyNiw2NSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvY2Vzc0Fubm90YXRpb25zPWVuYWJsZWQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZGlzYWJsZWQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE2Nyw2ICsxOTMsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTc2LDEyICsyMDMsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xOTEsNyArMjI0LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0yMDMsMTAgKzIzOCwxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMjE1LDE0ICsyNTEsMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjM4LDYgKzI3Niw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CkBAIC0yNjcsMTIgKzMwNywxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjg5LDYgKzMzMyw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzA1LDYgKzM1MCw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydApAQCAtMzI0LDYgKzM3MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTM1MCwxMCArMzk4LDEzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CkBAIC0zNjcsNiArNDE4LDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zODIsNiArNDM1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtNDA5LDI0ICs0NjMsNjIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuYmVuY2htYXJrcy9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzL3BvbS54bWwKaW5kZXggMjVmYjc0OC4uNTVjODBjNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzL3BvbS54bWwKQEAgLTE0LDE1ICsxNCwxNSBAQAogICA8bW9kZWxWZXJzaW9uPjQuMC4wPC9tb2RlbFZlcnNpb24+CiAKICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KLSAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5iZW5jaG1hcmtzPC9hcnRpZmFjdElkPgogICA8cGFja2FnaW5nPmphcjwvcGFja2FnaW5nPgogCiAgIDxuYW1lPkpHaXQgLSBKTUggYmFzZWQgYmVuY2htYXJrczwvbmFtZT4KIAogICA8cHJvcGVydGllcz4KKyAgICA8amF2YS52ZXJzaW9uPjExPC9qYXZhLnZlcnNpb24+CiAgICAgPHByb2plY3QuYnVpbGQuc291cmNlRW5jb2Rpbmc+VVRGLTg8L3Byb2plY3QuYnVpbGQuc291cmNlRW5jb2Rpbmc+Ci0gICAgPGphdmFjLnRhcmdldD4xLjg8L2phdmFjLnRhcmdldD4KICAgICA8am1oLnZlcnNpb24+MS4zMjwvam1oLnZlcnNpb24+CiAgICAgPHViZXJqYXIubmFtZT5iZW5jaG1hcmtzPC91YmVyamFyLm5hbWU+CiAgIDwvcHJvcGVydGllcz4KQEAgLTc0LDEyICs3NCwzOSBAQAogICAgICAgICA8L2V4ZWN1dGlvbnM+CiAgICAgICA8L3BsdWdpbj4KICAgICAgIDxwbHVnaW4+CisgICAgICAgIDxncm91cElkPm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczwvZ3JvdXBJZD4KICAgICAgICAgPGFydGlmYWN0SWQ+bWF2ZW4tY29tcGlsZXItcGx1Z2luPC9hcnRpZmFjdElkPgogICAgICAgICA8dmVyc2lvbj4zLjguMTwvdmVyc2lvbj4KICAgICAgICAgPGNvbmZpZ3VyYXRpb24+CiAgICAgICAgICAgPGVuY29kaW5nPlVURi04PC9lbmNvZGluZz4KLSAgICAgICAgICA8c291cmNlPjEuODwvc291cmNlPgotICAgICAgICAgIDx0YXJnZXQ+MS44PC90YXJnZXQ+CisgICAgICAgICAgPHJlbGVhc2U+JHtqYXZhLnZlcnNpb259PC9yZWxlYXNlPgorICAgICAgICAgIDxmb3JrPnRydWU8L2Zvcms+CisgICAgICAgICAgPGNvbXBpbGVyQXJncz4KKyAgICAgICAgICAgIDxhcmc+LVhEY29tcGlsZVBvbGljeT1zaW1wbGU8L2FyZz4KKyAgICAgICAgICAgIDxhcmc+LVhwbHVnaW46RXJyb3JQcm9uZTwvYXJnPgorICAgICAgICAgICAgPGFyZz4tSi0tYWRkLWV4cG9ydHM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMuYXBpPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5maWxlPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5tYWluPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5tb2RlbD1BTEwtVU5OQU1FRDwvYXJnPgorICAgICAgICAgICAgPGFyZz4tSi0tYWRkLWV4cG9ydHM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMucGFyc2VyPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5wcm9jZXNzaW5nPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy50cmVlPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy51dGlsPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICA8YXJnPi1KLS1hZGQtb3BlbnM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMuY29kZT1BTEwtVU5OQU1FRDwvYXJnPgorICAgICAgICAgICAgPGFyZz4tSi0tYWRkLW9wZW5zPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLmNvbXA9QUxMLVVOTkFNRUQ8L2FyZz4KKyAgICAgICAgICA8L2NvbXBpbGVyQXJncz4KKyAgICAgICAgICA8YW5ub3RhdGlvblByb2Nlc3NvclBhdGhzPgorICAgICAgICAgICAgPHBhdGg+CisgICAgICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLm9wZW5qZGsuam1oPC9ncm91cElkPgorICAgICAgICAgICAgICAgIDxhcnRpZmFjdElkPmptaC1nZW5lcmF0b3ItYW5ucHJvY2VzczwvYXJ0aWZhY3RJZD4KKyAgICAgICAgICAgICAgICA8dmVyc2lvbj4ke2ptaC52ZXJzaW9ufTwvdmVyc2lvbj4KKyAgICAgICAgICAgIDwvcGF0aD4KKyAgICAgICAgICAgIDxwYXRoPgorICAgICAgICAgICAgICA8Z3JvdXBJZD5jb20uZ29vZ2xlLmVycm9ycHJvbmU8L2dyb3VwSWQ+CisgICAgICAgICAgICAgIDxhcnRpZmFjdElkPmVycm9yX3Byb25lX2NvcmU8L2FydGlmYWN0SWQ+CisgICAgICAgICAgICAgIDx2ZXJzaW9uPjIuOS4wPC92ZXJzaW9uPgorICAgICAgICAgICAgPC9wYXRoPgorICAgICAgICAgIDwvYW5ub3RhdGlvblByb2Nlc3NvclBhdGhzPgogICAgICAgICAgIDxnZW5lcmF0ZWRTb3VyY2VzRGlyZWN0b3J5Pi5hcHRfZ2VuZXJhdGVkPC9nZW5lcmF0ZWRTb3VyY2VzRGlyZWN0b3J5PgogICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CiAgICAgICA8L3BsdWdpbj4KQEAgLTE3MCw3ICsxOTcsNyBAQAogICAgICAgICA8cGx1Z2luPgogICAgICAgICAgIDxncm91cElkPm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczwvZ3JvdXBJZD4KICAgICAgICAgICA8YXJ0aWZhY3RJZD5tYXZlbi1wcm9qZWN0LWluZm8tcmVwb3J0cy1wbHVnaW48L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgPHZlcnNpb24+My4xLjI8L3ZlcnNpb24+CisgICAgICAgICAgPHZlcnNpb24+My4xLjE8L3ZlcnNpb24+CiAgICAgICAgIDwvcGx1Z2luPgogICAgICAgPC9wbHVnaW5zPgogICAgIDwvcGx1Z2luTWFuYWdlbWVudD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuY292ZXJhZ2UvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuY292ZXJhZ2UvLmNsYXNzcGF0aAppbmRleCAyNDg0MDZiLi5hNDU0ZTNlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmNvdmVyYWdlLy5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5jb3ZlcmFnZS8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsNiBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ij4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSI+CiAJCTxhdHRyaWJ1dGVzPgogCQkJPGF0dHJpYnV0ZSBuYW1lPSJtYXZlbi5wb21kZXJpdmVkIiB2YWx1ZT0idHJ1ZSIvPgogCQk8L2F0dHJpYnV0ZXM+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmNvdmVyYWdlL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LmNvdmVyYWdlL3BvbS54bWwKaW5kZXggODMzOGY3ZC4uNjNlYWQyNyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5jb3ZlcmFnZS9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuY292ZXJhZ2UvcG9tLnhtbApAQCAtMTQsNyArMTQsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KICAgPG1vZGVsVmVyc2lvbj40LjAuMDwvbW9kZWxWZXJzaW9uPgogCkBAIC0yNyw4OCArMjcsODggQEAKICAgICA8ZGVwZW5kZW5jeT4KICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0PC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuYW50PC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZTwvYXJ0aWZhY3RJZD4KLSAgICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICAgIDwvZGVwZW5kZW5jeT4KICAgICA8ZGVwZW5kZW5jeT4KICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlPC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXI8L2FydGlmYWN0SWQ+Ci0gICAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5sZnM8L2FydGlmYWN0SWQ+Ci0gICAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyPC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQucGdtPC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQudWk8L2FydGlmYWN0SWQ+Ci0gICAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlPC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogCiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC50ZXN0PC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuYW50LnRlc3Q8L2FydGlmYWN0SWQ+Ci0gICAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3Q8L2FydGlmYWN0SWQ+Ci0gICAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdDwvYXJ0aWZhY3RJZD4KLSAgICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICAgIDwvZGVwZW5kZW5jeT4KICAgICA8ZGVwZW5kZW5jeT4KICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0PC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0PC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0PC9hcnRpZmFjdElkPgotICAgICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogICA8L2RlcGVuZGVuY2llcz4KIApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC8uY2xhc3NwYXRoCmluZGV4IDBhY2NjYmEuLjJhMTY0NWEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLnRlc3QvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0Ly5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBvdXRwdXQ9ImJpbi10c3QiIHBhdGg9InRzdCI+CiAJCTxhdHRyaWJ1dGVzPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwppbmRleCBjYmE4OTNmLi43NmY0OGQ4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IDJlNzA5ODEuLmQ3MDM0MzIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMywxOCArMywxOCBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0CiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0Ci1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgogQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKIEJ1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgotQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xLjgKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKIEltcG9ydC1QYWNrYWdlOiBvcmcuYm91bmN5Y2FzdGxlLmpjZS5wcm92aWRlcjt2ZXJzaW9uPSJbMS42NS4wLDIuMC4wKSIsCiAgb3JnLmJvdW5jeWNhc3RsZS5vcGVucGdwO3ZlcnNpb249IlsxLjY1LjAsMi4wLjApIiwKICBvcmcuYm91bmN5Y2FzdGxlLm9wZW5wZ3Aub3BlcmF0b3I7dmVyc2lvbj0iWzEuNjUuMCwyLjAuMCkiLAogIG9yZy5ib3VuY3ljYXN0bGUub3BlbnBncC5vcGVyYXRvci5qY2FqY2U7dmVyc2lvbj0iWzEuNjUuMCwyLjAuMCkiLAogIG9yZy5ib3VuY3ljYXN0bGUudXRpbC5lbmNvZGVyczt2ZXJzaW9uPSJbMS42NS4wLDIuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMuaW50ZXJuYWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5pbnRlcm5hbC5rZXlzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsLnNoYTE7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5pbnRlcm5hbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5pbnRlcm5hbC5rZXlzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5zaGExO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAogIG9yZy5oYW1jcmVzdDt2ZXJzaW9uPSJbMS4xLjAsMy4wLjApIiwKICBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKICBvcmcuanVuaXQucnVubmVyO3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0L3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0L3BvbS54bWwKaW5kZXggYjczYzk3ZC4uYWQ5NTViMCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdC9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLnRlc3QvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0PC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLy5jbGFzc3BhdGgKaW5kZXggMTEwMTY4Zi4uMWZkZTMxOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CiA8Y2xhc3NwYXRoPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0icmVzb3VyY2VzIi8+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggMTVlZjJhYS4uZDFmNTRiYiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggZmI0NTk2Ni4uNzRlMzMwNSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMTEgKzMsMTEgQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjO3NpbmdsZXRvbjo9dHJ1ZQotRnJhZ21lbnQtSG9zdDogb3JnLmVjbGlwc2UuamdpdDtidW5kbGUtdmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIgorRnJhZ21lbnQtSG9zdDogb3JnLmVjbGlwc2UuamdpdDtidW5kbGUtdmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQogSW1wb3J0LVBhY2thZ2U6IG9yZy5ib3VuY3ljYXN0bGUuYXNuMTt2ZXJzaW9uPSJbMS42OS4wLDIuMC4wKSIsCiAgb3JnLmJvdW5jeWNhc3RsZS5hc24xLmNyeXB0bGliO3ZlcnNpb249IlsxLjY5LjAsMi4wLjApIiwKICBvcmcuYm91bmN5Y2FzdGxlLmFzbjEueDk7dmVyc2lvbj0iWzEuNjkuMCwyLjAuMCkiLApAQCAtMjksOSArMjksOSBAQAogIG9yZy5ib3VuY3ljYXN0bGUudXRpbDt2ZXJzaW9uPSJbMS42OS4wLDIuMC4wKSIsCiAgb3JnLmJvdW5jeWNhc3RsZS51dGlsLmVuY29kZXJzO3ZlcnNpb249IlsxLjY5LjAsMi4wLjApIiwKICBvcmcuYm91bmN5Y2FzdGxlLnV0aWwuaW87dmVyc2lvbj0iWzEuNjkuMCwyLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuc2xmNGo7dmVyc2lvbj0iWzEuNy4wLDIuMC4wKSIKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYzt2ZXJzaW9uPSI1LjEzLjMiLAotIG9yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLmludGVybmFsO3ZlcnNpb249IjUuMTMuMyI7eC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC5ncGcuYmMudGVzdCIsCi0gb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMuaW50ZXJuYWwua2V5czt2ZXJzaW9uPSI1LjEzLjMiO3gtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLnRlc3QiCitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5ncGcuYmM7dmVyc2lvbj0iNi4wLjEiLAorIG9yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLmludGVybmFsO3ZlcnNpb249IjYuMC4xIjt4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0IiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5pbnRlcm5hbC5rZXlzO3ZlcnNpb249IjYuMC4xIjt4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy50ZXN0IgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IDk0ZjIzYmIuLmRlNDk2MmIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMgLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYzt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYzt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjL3BvbS54bWwKaW5kZXggNzg5MjQ4ZC4uNGJmODJjNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjPC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvc3JjL29yZy9lY2xpcHNlL2pnaXQvZ3BnL2JjL2ludGVybmFsL2tleXMvS2V5R3JpcC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMvc3JjL29yZy9lY2xpcHNlL2pnaXQvZ3BnL2JjL2ludGVybmFsL2tleXMvS2V5R3JpcC5qYXZhCmluZGV4IGIxZDQ0NDYuLmM5MzE3MjQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2dwZy9iYy9pbnRlcm5hbC9rZXlzL0tleUdyaXAuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy9zcmMvb3JnL2VjbGlwc2UvamdpdC9ncGcvYmMvaW50ZXJuYWwva2V5cy9LZXlHcmlwLmphdmEKQEAgLTE1LDcgKzE1LDYgQEAKIGltcG9ydCBqYXZhLnV0aWwuQXJyYXlzOwogCiBpbXBvcnQgb3JnLmJvdW5jeWNhc3RsZS5hc24xLkFTTjFPYmplY3RJZGVudGlmaWVyOwotaW1wb3J0IG9yZy5ib3VuY3ljYXN0bGUuYXNuMS5jcnlwdGxpYi5DcnlwdGxpYk9iamVjdElkZW50aWZpZXJzOwogaW1wb3J0IG9yZy5ib3VuY3ljYXN0bGUuYXNuMS54OS5FQ05hbWVkQ3VydmVUYWJsZTsKIGltcG9ydCBvcmcuYm91bmN5Y2FzdGxlLmFzbjEueDkuWDlFQ1BhcmFtZXRlcnM7CiBpbXBvcnQgb3JnLmJvdW5jeWNhc3RsZS5iY3BnLkRTQVB1YmxpY0JDUEdLZXk7CkBAIC01Miw2ICs1MSw5IEBAIHB1YmxpYyBmaW5hbCBjbGFzcyBLZXlHcmlwIHsKIAogCXByaXZhdGUgc3RhdGljIFN0cmluZyBPSURfUkZDODQxMF9FRDI1NTE5ID0gIjEuMy4xMDEuMTEyIjsgLy8kTk9OLU5MUy0xJAogCisJcHJpdmF0ZSBzdGF0aWMgQVNOMU9iamVjdElkZW50aWZpZXIgQ1VSVkUyNTUxOSA9IEVDTmFtZWRDdXJ2ZVRhYmxlCisJCQkuZ2V0T0lEKCJjdXJ2ZTI1NTE5Iik7IC8vJE5PTi1OTFMtMSQKKwogCXByaXZhdGUgS2V5R3JpcCgpIHsKIAkJLy8gTm8gaW5zdGFudGlhdGlvbgogCX0KQEAgLTEwNSw3ICsxMDcsNyBAQCBwcml2YXRlIEtleUdyaXAoKSB7CiAJCQlpZiAoT0lEX09QRU5QR1BfRUQyNTUxOS5lcXVhbHMoY3VydmVPSUQuZ2V0SWQoKSkKIAkJCQkJfHwgT0lEX1JGQzg0MTBfRUQyNTUxOS5lcXVhbHMoY3VydmVPSUQuZ2V0SWQoKSkpIHsKIAkJCQlyZXR1cm4gaGFzaEVkMjU1MTkoZ3JpcCwgZWMuZ2V0RW5jb2RlZFBvaW50KCkpOwotCQkJfSBlbHNlIGlmIChDcnlwdGxpYk9iamVjdElkZW50aWZpZXJzLmN1cnZleTI1NTE5LmVxdWFscyhjdXJ2ZU9JRCkKKwkJCX0gZWxzZSBpZiAoQ1VSVkUyNTUxOS5lcXVhbHMoY3VydmVPSUQpCiAJCQkJCXx8IE9JRF9SRkM4NDEwX0NVUlZFMjU1MTkuZXF1YWxzKGN1cnZlT0lELmdldElkKCkpKSB7CiAJCQkJLy8gY3VydmV5MjU1MTkgYWN0dWFsbHkgaXMgdGhlIE9wZW5QR1AgT0lEIGZvciBDdXJ2ZTI1NTE5IGFuZCBpcwogCQkJCS8vIGtub3duIHRvIEJDLCBidXQgdGhlIHBhcmFtZXRlcnMgYXJlIGZvciB0aGUgc2hvcnQgV2VpZXJzdHJhc3MKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvLmNsYXNzcGF0aAppbmRleCAxMTAxNjhmLi4xZmRlMzE4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLy5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CiA8Y2xhc3NwYXRoPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0icmVzb3VyY2VzIi8+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDQzMzVlNjYuLmY3OWRmNWIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC03LDkgKzcsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYW5hbHlzaXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggMWQ1Nzg3ZC4uYzUxYTg3ZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0zLDggKzMsOCBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlCi1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgotQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xLjgKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKIEJ1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgogQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKIEJ1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5CkBAIC0yNSwxMSArMjUsMTEgQEAKICBvcmcuYXBhY2hlLmh0dHAuaW1wbC5jb25uO3ZlcnNpb249Ils0LjQuMCw1LjAuMCkiLAogIG9yZy5hcGFjaGUuaHR0cC5wYXJhbXM7dmVyc2lvbj0iWzQuMy4wLDUuMC4wKSIsCiAgb3JnLmFwYWNoZS5odHRwLnNzbDt2ZXJzaW9uPSJbNC4zLjAsNS4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwLmFwYWNoZTt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwLmFwYWNoZTt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuYXBhY2hlLmh0dHAuY2xpZW50LAogICAgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cCwKICAgIG9yZy5hcGFjaGUuaHR0cC5lbnRpdHksCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IDljNDJjNzMuLjlkNGY1ZjIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCkBAIC0zLDUgKzMsNSBAQAogQnVuZGxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUgLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLnNvdXJjZQogQnVuZGxlLVZlbmRvcjogRWNsaXBzZS5vcmcgLSBKR2l0Ci1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgotRWNsaXBzZS1Tb3VyY2VCdW5kbGU6IG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGU7dmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciI7cm9vdHM9Ii4iCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCitFY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZTt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS9wb20ueG1sCmluZGV4IDE5MjFiNDYuLjZlNWYyNjAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlL3BvbS54bWwKQEAgLTE1LDcgKzE1LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQtcGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZTwvYXJ0aWZhY3RJZD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvLmNsYXNzcGF0aAppbmRleCBjZmNmMjRhLi4xMzlhMDU5IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLy5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci8uY2xhc3NwYXRoCkBAIC0yLDcgKzIsMTEgQEAKIDxjbGFzc3BhdGg+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0icmVzb3VyY2VzIi8+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJiaW4iLz4KIDwvY2xhc3NwYXRoPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwppbmRleCA0MzM1ZTY2Li5mNzlkZjViIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IGNjMTNhY2MuLjUxMGM0MzkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMywyOSArMywyOSBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyCi1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgotRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXI7dmVyc2lvbj0iNS4xMy4zIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLmdsdWU7dmVyc2lvbj0iNS4xMy4zIjsKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyO3ZlcnNpb249IjYuMC4xIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLmdsdWU7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0iamF2YXguc2VydmxldCxqYXZheC5zZXJ2bGV0Lmh0dHAiLAotIG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIucmVzb2x2ZXI7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLnJlc29sdmVyO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyLAogICAgb3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydCwKICAgIGphdmF4LnNlcnZsZXQuaHR0cCIKIEJ1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5Ci1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAotSW1wb3J0LVBhY2thZ2U6IGphdmF4LnNlcnZsZXQ7dmVyc2lvbj0iWzIuNS4wLDMuMi4wKSIsCi0gamF2YXguc2VydmxldC5odHRwO3ZlcnNpb249IlsyLjUuMCwzLjIuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnBhcnNlcjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKK0ltcG9ydC1QYWNrYWdlOiBqYXZheC5zZXJ2bGV0O3ZlcnNpb249IlsyLjUuMCw1LjAuMCkiLAorIGphdmF4LnNlcnZsZXQuaHR0cDt2ZXJzaW9uPSJbMi41LjAsNS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQucGFyc2VyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5yZXNvbHZlcjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKaW5kZXggYWU1M2I3Yi4uNzQ1M2NiOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlciAtIFNvdXJjZXMKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIuc291cmNlCiBCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1FY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlcjt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyO3ZlcnNpb249IjYuMC4xLnF1YWxpZmllciI7cm9vdHM9Ii4iCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3BvbS54bWwKaW5kZXggYjc3NzhlYy4uYjAxYzc5MSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvcG9tLnhtbApAQCAtMTksNyArMTksNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyPC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9zcmMvb3JnL2VjbGlwc2UvamdpdC9odHRwL3NlcnZlci9nbHVlL01ldGFGaWx0ZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvc3JjL29yZy9lY2xpcHNlL2pnaXQvaHR0cC9zZXJ2ZXIvZ2x1ZS9NZXRhRmlsdGVyLmphdmEKaW5kZXggZjUzYzhhZS4uNzcyYjk5NiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9zcmMvb3JnL2VjbGlwc2UvamdpdC9odHRwL3NlcnZlci9nbHVlL01ldGFGaWx0ZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2h0dHAvc2VydmVyL2dsdWUvTWV0YUZpbHRlci5qYXZhCkBAIC0xMTYsNyArMTE2LDggQEAgcHVibGljIHZvaWQgZGVzdHJveSgpIHsKIAogCXByaXZhdGUgc3RhdGljIFNldDxPYmplY3Q+IG5ld0lkZW50aXR5U2V0KCkgewogCQlmaW5hbCBNYXA8T2JqZWN0LCBPYmplY3Q+IG0gPSBuZXcgSWRlbnRpdHlIYXNoTWFwPD4oKTsKLQkJcmV0dXJuIG5ldyBBYnN0cmFjdFNldDxPYmplY3Q+KCkgeworCQlyZXR1cm4gbmV3IEFic3RyYWN0U2V0PD4oKSB7CisKIAkJCUBPdmVycmlkZQogCQkJcHVibGljIGJvb2xlYW4gYWRkKE9iamVjdCBvKSB7CiAJCQkJcmV0dXJuIG0ucHV0KG8sIG8pID09IG51bGw7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2h0dHAvc2VydmVyL2dsdWUvTm9QYXJhbWV0ZXJGaWx0ZXJDb25maWcuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvc3JjL29yZy9lY2xpcHNlL2pnaXQvaHR0cC9zZXJ2ZXIvZ2x1ZS9Ob1BhcmFtZXRlckZpbHRlckNvbmZpZy5qYXZhCmluZGV4IDkxZTlmMDIuLmViZTI3MjggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvc3JjL29yZy9lY2xpcHNlL2pnaXQvaHR0cC9zZXJ2ZXIvZ2x1ZS9Ob1BhcmFtZXRlckZpbHRlckNvbmZpZy5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIvc3JjL29yZy9lY2xpcHNlL2pnaXQvaHR0cC9zZXJ2ZXIvZ2x1ZS9Ob1BhcmFtZXRlckZpbHRlckNvbmZpZy5qYXZhCkBAIC0zNSw3ICszNSw4IEBAIHB1YmxpYyBTdHJpbmcgZ2V0SW5pdFBhcmFtZXRlcihTdHJpbmcgbmFtZSkgewogCS8qKiB7QGluaGVyaXREb2N9ICovCiAJQE92ZXJyaWRlCiAJcHVibGljIEVudW1lcmF0aW9uPFN0cmluZz4gZ2V0SW5pdFBhcmFtZXRlck5hbWVzKCkgewotCQlyZXR1cm4gbmV3IEVudW1lcmF0aW9uPFN0cmluZz4oKSB7CisJCXJldHVybiBuZXcgRW51bWVyYXRpb248PigpIHsKKwogCQkJQE92ZXJyaWRlCiAJCQlwdWJsaWMgYm9vbGVhbiBoYXNNb3JlRWxlbWVudHMoKSB7CiAJCQkJcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci9zcmMvb3JnL2VjbGlwc2UvamdpdC9odHRwL3NlcnZlci9nbHVlL1VybFBpcGVsaW5lLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2h0dHAvc2VydmVyL2dsdWUvVXJsUGlwZWxpbmUuamF2YQppbmRleCAzN2ZjMDI4Li43YzUxNzBkIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2h0dHAvc2VydmVyL2dsdWUvVXJsUGlwZWxpbmUuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2h0dHAvc2VydmVyL2dsdWUvVXJsUGlwZWxpbmUuamF2YQpAQCAtOTUsNyArOTUsOCBAQCBwdWJsaWMgU3RyaW5nIGdldEluaXRQYXJhbWV0ZXIoU3RyaW5nIG5hbWUpIHsKIAogCQkJCUBPdmVycmlkZQogCQkJCXB1YmxpYyBFbnVtZXJhdGlvbjxTdHJpbmc+IGdldEluaXRQYXJhbWV0ZXJOYW1lcygpIHsKLQkJCQkJcmV0dXJuIG5ldyBFbnVtZXJhdGlvbjxTdHJpbmc+KCkgeworCQkJCQlyZXR1cm4gbmV3IEVudW1lcmF0aW9uPD4oKSB7CisKIAkJCQkJCUBPdmVycmlkZQogCQkJCQkJcHVibGljIGJvb2xlYW4gaGFzTW9yZUVsZW1lbnRzKCkgewogCQkJCQkJCXJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC8uY2xhc3NwYXRoCmluZGV4IGIyNTgzODAuLmU3MzZmOGUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0Ly5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvLmNsYXNzcGF0aApAQCAtMSw2ICsxLDEwIEBACiA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgogPGNsYXNzcGF0aD4KLQk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSI+CisJCTxhdHRyaWJ1dGVzPgorCQkJPGF0dHJpYnV0ZSBuYW1lPSJtb2R1bGUiIHZhbHVlPSJ0cnVlIi8+CisJCTwvYXR0cmlidXRlcz4KKwk8L2NsYXNzcGF0aGVudHJ5PgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InRzdCI+CiAJCTxhdHRyaWJ1dGVzPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IGI4NTNjNmEuLjY5ZTkyMjEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLm1ldGhvZFBhcmFtZXRlcnM9ZG8gbm90IGdlbmVyYXRlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKQEAgLTI0LDYgKzI0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCkBAIC04MCw2ICs4MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTEyLDM0ICsxMTQsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNDgsNiArMTgyLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE1NywxMiArMTkyLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTcyLDcgKzIxMyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTg0LDEwICsyMjcsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTE5NywxNSArMjQxLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMTksMTEgKzI2NSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNDksMTAgKzI5OSwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjY5LDYgKzMyNSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjc3LDEzICszMzQsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMDAsNiArMzY0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzI2LDEwICszOTEsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM0MSw2ICs0MTEsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM1Niw2ICs0MjgsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNjYsOSArNDM5LDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM4MCwyMCArNDU2LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCA0ZTNhZjY3Li4zYTY1MTdjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMyw1MSArMyw0OSBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdAogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAotSW1wb3J0LVBhY2thZ2U6IGphdmF4LnNlcnZsZXQ7dmVyc2lvbj0iWzIuNS4wLDMuMi4wKSIsCi0gamF2YXguc2VydmxldC5odHRwO3ZlcnNpb249IlsyLjUuMCwzLjIuMCkiLAorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQorSW1wb3J0LVBhY2thZ2U6IGphdmF4LnNlcnZsZXQ7dmVyc2lvbj0iWzIuNS4wLDUuMC4wKSIsCisgamF2YXguc2VydmxldC5odHRwO3ZlcnNpb249IlsyLjUuMCw1LjAuMCkiLAogIG9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYzt2ZXJzaW9uPSJbMS42LjAsMi4wLjApIiwKICBvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMuYmluYXJ5O3ZlcnNpb249IlsxLjYuMCwyLjAuMCkiLAogIG9yZy5hcGFjaGUuaHR0cDt2ZXJzaW9uPSJbNC4zLjAsNS4wLjApIiwKICBvcmcuYXBhY2hlLmh0dHAuY2xpZW50O3ZlcnNpb249Ils0LjQuMCw1LjAuMCkiLAogIG9yZy5hcGFjaGUuaHR0cC5tZXNzYWdlO3ZlcnNpb249Ils0LjMuMCw1LjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbjt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuaHR0cDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuaW87dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5O3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5hdXRoZW50aWNhdGlvbjt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuaGFuZGxlcjt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLm5pbzt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VydmxldDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbC5jb21wb25lbnQ7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwubG9nO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNlY3VyaXR5O3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnRocmVhZDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLmdsdWU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLnJlc29sdmVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5yZWZ0YWJsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHA7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0Lmh0dHA7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwLmFwYWNoZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuaHR0cDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LmlvO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHk7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5hdXRoZW50aWNhdGlvbjt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlcjt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5oYW5kbGVyO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuc2VydmxldDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWw7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmNvbXBvbmVudDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwubG9nO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkudXRpbC5zZWN1cml0eTt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwudGhyZWFkO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlcjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuc2VydmVyLmdsdWU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlci5yZXNvbHZlcjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnJlZnRhYmxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0Lmh0dHAuYXBhY2hlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuaGFtY3Jlc3Q7dmVyc2lvbj0iWzEuMS4wLDMuMC4wKSIsCiAgb3JnLmhhbWNyZXN0LmNvcmU7dmVyc2lvbj0iWzEuMS4wLDMuMC4wKSIsCiAgb3JnLmp1bml0O3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvcG9tLnhtbAppbmRleCAwMzJjY2IzLi43Njk0YzQ0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0L3BvbS54bWwKQEAgLTE4LDcgKzE4LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQtcGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3Q8L2FydGlmYWN0SWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvaHR0cC9hcGFjaGUvSHR0cENsaWVudENvbm5lY3Rpb25UZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvaHR0cC9hcGFjaGUvSHR0cENsaWVudENvbm5lY3Rpb25UZXN0LmphdmEKaW5kZXggMDA2YTAxZS4uZDM4ZjdmMyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L2h0dHAvYXBhY2hlL0h0dHBDbGllbnRDb25uZWN0aW9uVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9odHRwL2FwYWNoZS9IdHRwQ2xpZW50Q29ubmVjdGlvblRlc3QuamF2YQpAQCAtOSw2ICs5LDEzIEBACiAgKi8KIHBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cC5hcGFjaGU7CiAKK2ltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRFcXVhbHM7CitpbXBvcnQgc3RhdGljIG9yZy5qdW5pdC5Bc3NlcnQuYXNzZXJ0VHJ1ZTsKKworaW1wb3J0IGphdmEubmV0Lk1hbGZvcm1lZFVSTEV4Y2VwdGlvbjsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTG9jYWxlOworCiBpbXBvcnQgb3JnLmFwYWNoZS5odHRwLkh0dHBFbnRpdHk7CiBpbXBvcnQgb3JnLmFwYWNoZS5odHRwLkh0dHBSZXNwb25zZTsKIGltcG9ydCBvcmcuYXBhY2hlLmh0dHAuUHJvdG9jb2xWZXJzaW9uOwpAQCAtMTYsMTMgKzIzLDYgQEAKIGltcG9ydCBvcmcuYXBhY2hlLmh0dHAubWVzc2FnZS5BYnN0cmFjdEh0dHBNZXNzYWdlOwogaW1wb3J0IG9yZy5qdW5pdC5UZXN0OwogCi1pbXBvcnQgamF2YS5uZXQuTWFsZm9ybWVkVVJMRXhjZXB0aW9uOwotaW1wb3J0IGphdmEudXRpbC5MaXN0OwotaW1wb3J0IGphdmEudXRpbC5Mb2NhbGU7Ci0KLWltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRFcXVhbHM7Ci1pbXBvcnQgc3RhdGljIG9yZy5qdW5pdC5Bc3NlcnQuYXNzZXJ0VHJ1ZTsKLQogcHVibGljIGNsYXNzIEh0dHBDbGllbnRDb25uZWN0aW9uVGVzdCB7CiAJQFRlc3QKIAlwdWJsaWMgdm9pZCB0ZXN0R2V0SGVhZGVyRmllbGRzQWxsb3dNdWx0aXBsZVZhbHVlcygpCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC8uY2xhc3NwYXRoCmluZGV4IDNlNTY1NGYuLjczZDY4OTQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC8uY2xhc3NwYXRoCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CiA8Y2xhc3NwYXRoPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIj4KIAkJPGF0dHJpYnV0ZXM+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwppbmRleCAzZGQ1ODQwLi5lOWE1YTQxIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLm1ldGhvZFBhcmFtZXRlcnM9ZG8gbm90IGdlbmVyYXRlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKQEAgLTI0LDYgKzI0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCkBAIC04MCw2ICs4MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTEyLDM0ICsxMTQsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNDgsNiArMTgyLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE1NywxMiArMTkyLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTcyLDcgKzIxMyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTg0LDEwICsyMjcsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTE5NywxNSArMjQxLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMTksMTEgKzI2NSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNDksMTAgKzI5OSwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjY5LDYgKzMyNSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjc3LDEzICszMzQsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMDAsNiArMzY0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzI2LDEwICszOTEsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM0MSw2ICs0MTEsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM1Niw2ICs0MjgsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNjYsOSArNDM5LDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM4MCwyMCArNDU2LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCAzYWZmMWUzLi5jMjFmODM1IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0zLDM1ICszLDM1IEBACiBCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cAogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwCi1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKLUJ1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMS44Ci1JbXBvcnQtUGFja2FnZTogamF2YXguc2VydmxldDt2ZXJzaW9uPSJbMi41LjAsMy4yLjApIiwKLSBqYXZheC5zZXJ2bGV0Lmh0dHA7dmVyc2lvbj0iWzIuNS4wLDMuMi4wKSIsCitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCitJbXBvcnQtUGFja2FnZTogamF2YXguc2VydmxldDt2ZXJzaW9uPSJbMi41LjAsNS4wLjApIiwKKyBqYXZheC5zZXJ2bGV0Lmh0dHA7dmVyc2lvbj0iWzIuNS4wLDUuMC4wKSIsCiAgb3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmc7dmVyc2lvbj0iWzEuMS4xLDIuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuaHR0cDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHk7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LmF1dGhlbnRpY2F0aW9uO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXI7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5oYW5kbGVyO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIubmlvO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0O3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmNvbXBvbmVudDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbC5sb2c7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc2VjdXJpdHk7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc3NsO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQucmVzb2x2ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIgotRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpldHR5Lmh0dHA7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eTt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LmF1dGhlbnRpY2F0aW9uO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLmhhbmRsZXI7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0O3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkudXRpbC5jb21wb25lbnQ7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmxvZzt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc2VjdXJpdHk7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNzbDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQucmVzb2x2ZXI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmp1bml0O3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCisgb3JnLnNsZjRqLmhlbHBlcnM7dmVyc2lvbj0iWzEuNy4wLDIuMC4wKSIKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHA7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LAogICAgamF2YXguc2VydmxldC5odHRwLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKaW5kZXggMDRlNGYzOC4uOThmZGUwNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCkBAIC0zLDUgKzMsNSBAQAogQnVuZGxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cCAtIFNvdXJjZXMKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHA7dmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciI7cm9vdHM9Ii4iCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCitFY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwO3ZlcnNpb249IjYuMC4xLnF1YWxpZmllciI7cm9vdHM9Ii4iCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9wb20ueG1sCmluZGV4IGQ3ZTg1MTAuLmI2Njk5MWYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cDwvYXJ0aWZhY3RJZD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9zcmMvb3JnL2VjbGlwc2UvamdpdC9qdW5pdC9odHRwL0FwcFNlcnZlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L2h0dHAvQXBwU2VydmVyLmphdmEKaW5kZXggMGYwNTI5OC4uMzZmMmYyYiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L2h0dHAvQXBwU2VydmVyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L2h0dHAvQXBwU2VydmVyLmphdmEKQEAgLTIxLDIwICsyMSwyMyBAQAogaW1wb3J0IGphdmEubmV0LlVua25vd25Ib3N0RXhjZXB0aW9uOwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZXM7CiBpbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CiBpbXBvcnQgamF2YS51dGlsLkxpc3Q7CiBpbXBvcnQgamF2YS51dGlsLkxvY2FsZTsKIGltcG9ydCBqYXZhLnV0aWwuTWFwOwogaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LkNvbmN1cnJlbnRIYXNoTWFwOwogCi1pbXBvcnQgb3JnLmVjbGlwc2UuamV0dHkuaHR0cC5IdHRwVmVyc2lvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5BYnN0cmFjdExvZ2luU2VydmljZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5BdXRoZW50aWNhdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LkNvbnN0cmFpbnRNYXBwaW5nOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LkNvbnN0cmFpbnRTZWN1cml0eUhhbmRsZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuUm9sZVByaW5jaXBhbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5Vc2VyUHJpbmNpcGFsOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LmF1dGhlbnRpY2F0aW9uLkJhc2ljQXV0aGVudGljYXRvcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuQ29ubmVjdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5IdHRwQ29uZmlndXJhdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuSHR0cENvbm5lY3Rpb25GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5TZWN1cmVSZXF1ZXN0Q3VzdG9taXplcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuU2VydmVyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5TZXJ2ZXJDb25uZWN0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLlNzbENvbm5lY3Rpb25GYWN0b3J5OwpAQCAtMTQzLDEzICsxNDYsMTUgQEAgcHVibGljIEFwcFNlcnZlcihpbnQgcG9ydCwgaW50IHNzbFBvcnQpIHsKIAkJfQogCiAJCWlmIChzc2xQb3J0ID49IDApIHsKLQkJCVNzbENvbnRleHRGYWN0b3J5IHNzbENvbnRleHRGYWN0b3J5ID0gY3JlYXRlVGVzdFNzbENvbnRleHRGYWN0b3J5KAotCQkJCQlob3N0TmFtZSk7CisJCQlTc2xDb250ZXh0RmFjdG9yeS5TZXJ2ZXIgc3NsQ29udGV4dEZhY3RvcnkgPSBjcmVhdGVUZXN0U3NsQ29udGV4dEZhY3RvcnkoCisJCQkJCWhvc3ROYW1lLCBpcCk7CiAJCQlzZWN1cmVDb25maWcgPSBuZXcgSHR0cENvbmZpZ3VyYXRpb24oY29uZmlnKTsKLQkJCXNlY3VyZUNvbm5lY3RvciA9IG5ldyBTZXJ2ZXJDb25uZWN0b3Ioc2VydmVyLAotCQkJCQluZXcgU3NsQ29ubmVjdGlvbkZhY3Rvcnkoc3NsQ29udGV4dEZhY3RvcnksCi0JCQkJCQkJSHR0cFZlcnNpb24uSFRUUF8xXzEuYXNTdHJpbmcoKSksCi0JCQkJCW5ldyBIdHRwQ29ubmVjdGlvbkZhY3Rvcnkoc2VjdXJlQ29uZmlnKSk7CisJCQlzZWN1cmVDb25maWcuYWRkQ3VzdG9taXplcihuZXcgU2VjdXJlUmVxdWVzdEN1c3RvbWl6ZXIoKSk7CisJCQlIdHRwQ29ubmVjdGlvbkZhY3RvcnkgaHR0cDExID0gbmV3IEh0dHBDb25uZWN0aW9uRmFjdG9yeSgKKwkJCQkJc2VjdXJlQ29uZmlnKTsKKwkJCVNzbENvbm5lY3Rpb25GYWN0b3J5IHRscyA9IG5ldyBTc2xDb25uZWN0aW9uRmFjdG9yeSgKKwkJCQkJc3NsQ29udGV4dEZhY3RvcnksIGh0dHAxMS5nZXRQcm90b2NvbCgpKTsKKwkJCXNlY3VyZUNvbm5lY3RvciA9IG5ldyBTZXJ2ZXJDb25uZWN0b3Ioc2VydmVyLCB0bHMsIGh0dHAxMSk7CiAJCQlzZWN1cmVDb25uZWN0b3Iuc2V0UG9ydChzc2xQb3J0KTsKIAkJCXNlY3VyZUNvbm5lY3Rvci5zZXRIb3N0KGlwKTsKIAkJfSBlbHNlIHsKQEAgLTE3MSwxMCArMTc2LDExIEBAIHB1YmxpYyBBcHBTZXJ2ZXIoaW50IHBvcnQsIGludCBzc2xQb3J0KSB7CiAJCXNlcnZlci5zZXRIYW5kbGVyKGxvZyk7CiAJfQogCi0JcHJpdmF0ZSBTc2xDb250ZXh0RmFjdG9yeSBjcmVhdGVUZXN0U3NsQ29udGV4dEZhY3RvcnkoU3RyaW5nIGhvc3ROYW1lKSB7Ci0JCVNzbENvbnRleHRGYWN0b3J5LkNsaWVudCBmYWN0b3J5ID0gbmV3IFNzbENvbnRleHRGYWN0b3J5LkNsaWVudCh0cnVlKTsKKwlwcml2YXRlIFNzbENvbnRleHRGYWN0b3J5LlNlcnZlciBjcmVhdGVUZXN0U3NsQ29udGV4dEZhY3RvcnkoCisJCQlTdHJpbmcgaG9zdE5hbWUsIFN0cmluZyBpcCkgeworCQlTc2xDb250ZXh0RmFjdG9yeS5TZXJ2ZXIgZmFjdG9yeSA9IG5ldyBTc2xDb250ZXh0RmFjdG9yeS5TZXJ2ZXIoKTsKIAotCQlTdHJpbmcgZE5hbWUgPSAiQ049LE9VPSxPPSxTVD0sTD0sQz0iOworCQlTdHJpbmcgZE5hbWUgPSAiQ049bG9jYWxob3N0LE9VPUpHaXQsTz1FY2xpcHNlLFNUPU9udGFyaW8sTD1Ub3JvbnRvLEM9Q0EiOwogCiAJCXRyeSB7CiAJCQlGaWxlIHRtcERpciA9IEZpbGVzLmNyZWF0ZVRlbXBEaXJlY3RvcnkoImprcyIpLnRvRmlsZSgpOwpAQCAtMTkwLDYgKzE5NiwxMSBAQCBwcml2YXRlIFNzbENvbnRleHRGYWN0b3J5IGNyZWF0ZVRlc3RTc2xDb250ZXh0RmFjdG9yeShTdHJpbmcgaG9zdE5hbWUpIHsKIAkJCQkJCQkiLWtleXN0b3JlIiwga2V5U3RvcmUuZ2V0QWJzb2x1dGVQYXRoKCksIC8vCiAJCQkJCQkJIi1zdG9yZXBhc3MiLCBrZXlQYXNzd29yZCwKIAkJCQkJCQkiLWFsaWFzIiwgaG9zdE5hbWUsIC8vCisJCQkJCQkJIi1leHQiLCAiYmM9Y2E6dHJ1ZSIsIC8vCisJCQkJCQkJIi1leHQiLAorCQkJCQkJCVN0cmluZy5mb3JtYXQoCisJCQkJCQkJCQkic2FuPWlwOiVzLGlwOjEyNy4wLjAuMSxpcDpbOjoxXSxETlM6JXMiLAorCQkJCQkJCQkJaXAsIGhvc3ROYW1lKSwgLy8KIAkJCQkJCQkiLWdlbmtleXBhaXIiLCAvLwogCQkJCQkJCSIta2V5YWxnIiwgIlJTQSIsIC8vCiAJCQkJCQkJIi1rZXlwYXNzIiwga2V5UGFzc3dvcmQsIC8vCkBAIC0yNjAsMTIgKzI3MSwxMiBAQCBwdWJsaWMgU2VydmxldENvbnRleHRIYW5kbGVyIGF1dGhCYXNpYyhTZXJ2bGV0Q29udGV4dEhhbmRsZXIgY3R4LAogCX0KIAogCXN0YXRpYyBjbGFzcyBUZXN0TWFwcGVkTG9naW5TZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3RMb2dpblNlcnZpY2UgewotCQlwcml2YXRlIFN0cmluZyByb2xlOworCQlwcml2YXRlIFJvbGVQcmluY2lwYWwgcm9sZTsKIAogCQlwcm90ZWN0ZWQgZmluYWwgTWFwPFN0cmluZywgVXNlclByaW5jaXBhbD4gdXNlcnMgPSBuZXcgQ29uY3VycmVudEhhc2hNYXA8PigpOwogCiAJCVRlc3RNYXBwZWRMb2dpblNlcnZpY2UoU3RyaW5nIHJvbGUpIHsKLQkJCXRoaXMucm9sZSA9IHJvbGU7CisJCQl0aGlzLnJvbGUgPSBuZXcgUm9sZVByaW5jaXBhbChyb2xlKTsKIAkJfQogCiAJCUBPdmVycmlkZQpAQCAtMjc3LDE2ICsyODgsMTYgQEAgcHJvdGVjdGVkIHZvaWQgZG9TdGFydCgpIHRocm93cyBFeGNlcHRpb24gewogCQl9CiAKIAkJQE92ZXJyaWRlCi0JCXByb3RlY3RlZCBTdHJpbmdbXSBsb2FkUm9sZUluZm8oVXNlclByaW5jaXBhbCB1c2VyKSB7Ci0JCQlpZiAodXNlcnMuZ2V0KHVzZXIuZ2V0TmFtZSgpKSA9PSBudWxsKSB7Ci0JCQkJcmV0dXJuIG51bGw7Ci0JCQl9Ci0JCQlyZXR1cm4gbmV3IFN0cmluZ1tdIHsgcm9sZSB9OworCQlwcm90ZWN0ZWQgVXNlclByaW5jaXBhbCBsb2FkVXNlckluZm8oU3RyaW5nIHVzZXIpIHsKKwkJCXJldHVybiB1c2Vycy5nZXQodXNlcik7CiAJCX0KIAogCQlAT3ZlcnJpZGUKLQkJcHJvdGVjdGVkIFVzZXJQcmluY2lwYWwgbG9hZFVzZXJJbmZvKFN0cmluZyB1c2VyKSB7Ci0JCQlyZXR1cm4gdXNlcnMuZ2V0KHVzZXIpOworCQlwcm90ZWN0ZWQgTGlzdDxSb2xlUHJpbmNpcGFsPiBsb2FkUm9sZUluZm8oVXNlclByaW5jaXBhbCB1c2VyKSB7CisJCQlpZiAodXNlcnMuZ2V0KHVzZXIuZ2V0TmFtZSgpKSA9PSBudWxsKSB7CisJCQkJcmV0dXJuIG51bGw7CisJCQl9CisJCQlyZXR1cm4gQ29sbGVjdGlvbnMuc2luZ2xldG9uTGlzdChyb2xlKTsKIAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L2h0dHAvTW9ja1NlcnZsZXRDb25maWcuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cC9zcmMvb3JnL2VjbGlwc2UvamdpdC9qdW5pdC9odHRwL01vY2tTZXJ2bGV0Q29uZmlnLmphdmEKaW5kZXggZjJhZjY3ZC4uNzE1ZmQxOSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L2h0dHAvTW9ja1NlcnZsZXRDb25maWcuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvc3JjL29yZy9lY2xpcHNlL2pnaXQvanVuaXQvaHR0cC9Nb2NrU2VydmxldENvbmZpZy5qYXZhCkBAIC00NCw3ICs0NCw4IEBAIHB1YmxpYyBTdHJpbmcgZ2V0SW5pdFBhcmFtZXRlcihTdHJpbmcgbmFtZSkgewogCUBPdmVycmlkZQogCXB1YmxpYyBFbnVtZXJhdGlvbjxTdHJpbmc+IGdldEluaXRQYXJhbWV0ZXJOYW1lcygpIHsKIAkJZmluYWwgSXRlcmF0b3I8U3RyaW5nPiBpID0gcGFyYW1ldGVycy5rZXlTZXQoKS5pdGVyYXRvcigpOwotCQlyZXR1cm4gbmV3IEVudW1lcmF0aW9uPFN0cmluZz4oKSB7CisJCXJldHVybiBuZXcgRW51bWVyYXRpb248PigpIHsKKwogCQkJQE92ZXJyaWRlCiAJCQlwdWJsaWMgYm9vbGVhbiBoYXNNb3JlRWxlbWVudHMoKSB7CiAJCQkJcmV0dXJuIGkuaGFzTmV4dCgpOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L2h0dHAvUmVjb3JkaW5nTG9nZ2VyLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvc3JjL29yZy9lY2xpcHNlL2pnaXQvanVuaXQvaHR0cC9SZWNvcmRpbmdMb2dnZXIuamF2YQppbmRleCBkMmVmNzMzLi5hZjYzMDg0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvc3JjL29yZy9lY2xpcHNlL2pnaXQvanVuaXQvaHR0cC9SZWNvcmRpbmdMb2dnZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAvc3JjL29yZy9lY2xpcHNlL2pnaXQvanVuaXQvaHR0cC9SZWNvcmRpbmdMb2dnZXIuamF2YQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAsIEdvb2dsZSBJbmMuIGFuZCBvdGhlcnMKKyAqIENvcHlyaWdodCAoQykgMjAxMCwgMjAyMSBHb29nbGUgSW5jLiBhbmQgb3RoZXJzCiAgKgogICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCiAgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CkBAIC03LDcgKzcsNiBAQAogICoKICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAqLwotCiBwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuaHR0cDsKIAogaW1wb3J0IGphdmEudGV4dC5NZXNzYWdlRm9ybWF0OwpAQCAtMTUsMTIgKzE0LDEyIEBACiBpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOwogaW1wb3J0IGphdmEudXRpbC5MaXN0OwogCi1pbXBvcnQgb3JnLmVjbGlwc2UuamV0dHkudXRpbC5sb2cuTG9nZ2VyOworaW1wb3J0IG9yZy5zbGY0ai5oZWxwZXJzLk1hcmtlcklnbm9yaW5nQmFzZTsKIAotLyoqCi0gKiBMb2cgd2FybmluZ3MgaW50byBhbiBhcnJheSBmb3IgbGF0ZXIgaW5zcGVjdGlvbi4KLSAqLwotcHVibGljIGNsYXNzIFJlY29yZGluZ0xvZ2dlciBpbXBsZW1lbnRzIExvZ2dlciB7CitwdWJsaWMgY2xhc3MgUmVjb3JkaW5nTG9nZ2VyIGV4dGVuZHMgTWFya2VySWdub3JpbmdCYXNlIHsKKworCXByaXZhdGUgc3RhdGljIGZpbmFsIGxvbmcgc2VyaWFsVmVyc2lvblVJRCA9IDFMOworCiAJcHJpdmF0ZSBzdGF0aWMgTGlzdDxXYXJuaW5nPiB3YXJuaW5ncyA9IG5ldyBBcnJheUxpc3Q8PigpOwogCiAJLyoqCkBAIC02MCw4ICs1OSw2IEBAIHB1YmxpYyBXYXJuaW5nKFRocm93YWJsZSB0aHJvd24pIHsKIAkJfQogCX0KIAotCXByaXZhdGUgZmluYWwgU3RyaW5nIG5hbWU7Ci0KIAkvKioKIAkgKiBDb25zdHJ1Y3RvciBmb3IgPGNvZGU+UmVjb3JkaW5nTG9nZ2VyPC9jb2RlPi4KIAkgKi8KQEAgLTc4LDE3MSArNzUsMTcwIEBAIHB1YmxpYyBSZWNvcmRpbmdMb2dnZXIoU3RyaW5nIG5hbWUpIHsKIAkJdGhpcy5uYW1lID0gbmFtZTsKIAl9CiAKLQkvKioge0Bpbmhlcml0RG9jfSAqLwogCUBPdmVycmlkZQotCXB1YmxpYyBMb2dnZXIgZ2V0TG9nZ2VyKEBTdXBwcmVzc1dhcm5pbmdzKCJoaWRpbmciKSBTdHJpbmcgbmFtZSkgewotCQlyZXR1cm4gbmV3IFJlY29yZGluZ0xvZ2dlcihuYW1lKTsKKwlwdWJsaWMgYm9vbGVhbiBpc1RyYWNlRW5hYmxlZCgpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwkJcmV0dXJuIGZhbHNlOwogCX0KIAotCS8qKiB7QGluaGVyaXREb2N9ICovCiAJQE92ZXJyaWRlCi0JcHVibGljIFN0cmluZyBnZXROYW1lKCkgewotCQlyZXR1cm4gbmFtZTsKKwlwdWJsaWMgdm9pZCB0cmFjZShTdHJpbmcgbXNnKSB7CisJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCiAJfQogCi0JLyoqCi0JICogV2FybmluZwotCSAqCi0JICogQHBhcmFtIG1zZwotCSAqIEBwYXJhbSBhcmcwCi0JICogQHBhcmFtIGFyZzEKLQkgKi8KLQlwdWJsaWMgdm9pZCB3YXJuKFN0cmluZyBtc2csIE9iamVjdCBhcmcwLCBPYmplY3QgYXJnMSkgewotCQlzeW5jaHJvbml6ZWQgKHdhcm5pbmdzKSB7Ci0JCQl3YXJuaW5ncy5hZGQobmV3IFdhcm5pbmcoTWVzc2FnZUZvcm1hdC5mb3JtYXQobXNnLCBhcmcwLCBhcmcxKSkpOwotCQl9Ci0JfQotCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KIAlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCB3YXJuKFN0cmluZyBtc2csIFRocm93YWJsZSB0aCkgewotCQlzeW5jaHJvbml6ZWQgKHdhcm5pbmdzKSB7Ci0JCQl3YXJuaW5ncy5hZGQobmV3IFdhcm5pbmcobXNnLCB0aCkpOwotCQl9CisJcHVibGljIHZvaWQgdHJhY2UoU3RyaW5nIGZvcm1hdCwgT2JqZWN0IGFyZykgeworCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQogCX0KIAotCS8qKgotCSAqIFdhcm5pbmcKLQkgKgotCSAqIEBwYXJhbSBtc2cKLQkgKiAgICAgICAgICAgIHdhcm5pbmcgbWVzc2FnZQotCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHRyYWNlKFN0cmluZyBmb3JtYXQsIE9iamVjdCBhcmcxLCBPYmplY3QgYXJnMikgeworCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQorCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHRyYWNlKFN0cmluZyBmb3JtYXQsIE9iamVjdC4uLiBhcmd1bWVudHMpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCB0cmFjZShTdHJpbmcgbXNnLCBUaHJvd2FibGUgdCkgeworCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQorCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRGVidWdFbmFibGVkKCkgeworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZGVidWcoU3RyaW5nIG1zZykgeworCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQorCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGRlYnVnKFN0cmluZyBmb3JtYXQsIE9iamVjdCBhcmcpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBkZWJ1ZyhTdHJpbmcgZm9ybWF0LCBPYmplY3QgYXJnMSwgT2JqZWN0IGFyZzIpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBkZWJ1ZyhTdHJpbmcgZm9ybWF0LCBPYmplY3QuLi4gYXJndW1lbnRzKSB7CisJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZGVidWcoU3RyaW5nIG1zZywgVGhyb3dhYmxlIHQpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc0luZm9FbmFibGVkKCkgeworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgaW5mbyhTdHJpbmcgbXNnKSB7CisJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgaW5mbyhTdHJpbmcgZm9ybWF0LCBPYmplY3QgYXJnKSB7CisJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgaW5mbyhTdHJpbmcgZm9ybWF0LCBPYmplY3QgYXJnMSwgT2JqZWN0IGFyZzIpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBpbmZvKFN0cmluZyBmb3JtYXQsIE9iamVjdC4uLiBhcmd1bWVudHMpIHsKKwkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBpbmZvKFN0cmluZyBtc2csIFRocm93YWJsZSB0KSB7CisJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gaXNXYXJuRW5hYmxlZCgpIHsKKwkJcmV0dXJuIHRydWU7CisJfQorCisJQE92ZXJyaWRlCiAJcHVibGljIHZvaWQgd2FybihTdHJpbmcgbXNnKSB7CiAJCXN5bmNocm9uaXplZCAod2FybmluZ3MpIHsKIAkJCXdhcm5pbmdzLmFkZChuZXcgV2FybmluZyhtc2cpKTsKIAkJfQogCX0KIAotCS8qKgotCSAqIERlYnVnIGxvZwotCSAqCi0JICogQHBhcmFtIG1zZwotCSAqIEBwYXJhbSBhcmcwCi0JICogQHBhcmFtIGFyZzEKLQkgKi8KLQlwdWJsaWMgdm9pZCBkZWJ1ZyhTdHJpbmcgbXNnLCBPYmplY3QgYXJnMCwgT2JqZWN0IGFyZzEpIHsKLQkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKLQl9Ci0KLQkvKioge0Bpbmhlcml0RG9jfSAqLwogCUBPdmVycmlkZQotCXB1YmxpYyB2b2lkIGRlYnVnKFN0cmluZyBtc2csIFRocm93YWJsZSB0aCkgewotCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQorCXB1YmxpYyB2b2lkIHdhcm4oU3RyaW5nIGZvcm1hdCwgT2JqZWN0IGFyZykgeworCQlhZGRXYXJuaW5ncyhmb3JtYXQsIENvbGxlY3Rpb25zLnNpbmdsZXRvbihhcmcpKTsKIAl9CiAKLQkvKioKLQkgKiBEZWJ1ZyBsb2cKLQkgKgotCSAqIEBwYXJhbSBtc2cKLQkgKiAgICAgICAgICAgIGRlYnVnIG1lc3NhZ2UKLQkgKi8KLQlwdWJsaWMgdm9pZCBkZWJ1ZyhTdHJpbmcgbXNnKSB7Ci0JCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCi0JfQotCi0JLyoqCi0JICogSW5mbwotCSAqCi0JICogQHBhcmFtIG1zZwotCSAqIEBwYXJhbSBhcmcwCi0JICogQHBhcmFtIGFyZzEKLQkgKi8KLQlwdWJsaWMgdm9pZCBpbmZvKFN0cmluZyBtc2csIE9iamVjdCBhcmcwLCBPYmplY3QgYXJnMSkgewotCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQotCX0KLQotCS8qKgotCSAqIEluZm8KLQkgKgotCSAqIEBwYXJhbSBtc2cKLQkgKi8KLQlwdWJsaWMgdm9pZCBpbmZvKFN0cmluZyBtc2cpIHsKLQkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKLQl9Ci0KLQkvKioge0Bpbmhlcml0RG9jfSAqLwogCUBPdmVycmlkZQotCXB1YmxpYyBib29sZWFuIGlzRGVidWdFbmFibGVkKCkgeworCXB1YmxpYyB2b2lkIHdhcm4oU3RyaW5nIGZvcm1hdCwgT2JqZWN0Li4uIGFyZ3VtZW50cykgeworCQlhZGRXYXJuaW5ncyhmb3JtYXQsIGFyZ3VtZW50cyk7CisJfQorCisJcHJpdmF0ZSB2b2lkIGFkZFdhcm5pbmdzKFN0cmluZyBmb3JtYXQsIE9iamVjdC4uLiBhcmd1bWVudHMpIHsKKwkJc3luY2hyb25pemVkICh3YXJuaW5ncykgeworCQkJaW50IGkgPSAwOworCQkJaW50IGluZGV4ID0gZm9ybWF0LmluZGV4T2YoInt9Iik7CisJCQl3aGlsZSAoaW5kZXggPj0gMCkgeworCQkJCWZvcm1hdCA9IGZvcm1hdC5yZXBsYWNlRmlyc3QoIlxce1xcfSIsICJ7IiArIGkrKyArICJ9Iik7CisJCQkJaW5kZXggPSBmb3JtYXQuaW5kZXhPZigie30iKTsKKwkJCX0KKwkJCXdhcm5pbmdzLmFkZChuZXcgV2FybmluZyhNZXNzYWdlRm9ybWF0LmZvcm1hdChmb3JtYXQsIGFyZ3VtZW50cykpKTsKKwkJfQorCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHdhcm4oU3RyaW5nIGZvcm1hdCwgT2JqZWN0IGFyZzEsIE9iamVjdCBhcmcyKSB7CisJCXdhcm4oZm9ybWF0LCBuZXcgT2JqZWN0W10geyBhcmcxLCBhcmcyIH0pOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHdhcm4oU3RyaW5nIG1zZywgVGhyb3dhYmxlIHQpIHsKKwkJc3luY2hyb25pemVkICh3YXJuaW5ncykgeworCQkJd2FybmluZ3MuYWRkKG5ldyBXYXJuaW5nKG1zZywgdCkpOworCQl9CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gaXNFcnJvckVuYWJsZWQoKSB7CiAJCXJldHVybiBmYWxzZTsKIAl9CiAKLQkvKioge0Bpbmhlcml0RG9jfSAqLwogCUBPdmVycmlkZQotCXB1YmxpYyB2b2lkIHNldERlYnVnRW5hYmxlZChib29sZWFuIGVuYWJsZWQpIHsKKwlwdWJsaWMgdm9pZCBlcnJvcihTdHJpbmcgbXNnKSB7CiAJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCiAJfQogCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KIAlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCB3YXJuKFN0cmluZyBtc2csIE9iamVjdC4uLiBhcmdzKSB7Ci0JCXN5bmNocm9uaXplZCAod2FybmluZ3MpIHsKLQkJCWludCBpID0gMDsKLQkJCWludCBpbmRleCA9IG1zZy5pbmRleE9mKCJ7fSIpOwotCQkJd2hpbGUgKGluZGV4ID49IDApIHsKLQkJCQltc2cgPSBtc2cucmVwbGFjZUZpcnN0KCJcXHtcXH0iLCAieyIgKyBpKysgKyAifSIpOwotCQkJCWluZGV4ID0gbXNnLmluZGV4T2YoInt9Iik7Ci0JCQl9Ci0JCQl3YXJuaW5ncy5hZGQobmV3IFdhcm5pbmcoTWVzc2FnZUZvcm1hdC5mb3JtYXQobXNnLCBhcmdzKSkpOwotCQl9Ci0JfQotCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KLQlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCB3YXJuKFRocm93YWJsZSB0aHJvd24pIHsKLQkJc3luY2hyb25pemVkICh3YXJuaW5ncykgewotCQkJd2FybmluZ3MuYWRkKG5ldyBXYXJuaW5nKHRocm93bikpOwotCQl9Ci0JfQotCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KLQlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCBpbmZvKFN0cmluZyBtc2csIE9iamVjdC4uLiBhcmdzKSB7CisJcHVibGljIHZvaWQgZXJyb3IoU3RyaW5nIGZvcm1hdCwgT2JqZWN0IGFyZykgewogCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQogCX0KIAotCS8qKiB7QGluaGVyaXREb2N9ICovCiAJQE92ZXJyaWRlCi0JcHVibGljIHZvaWQgaW5mbyhUaHJvd2FibGUgdGhyb3duKSB7CisJcHVibGljIHZvaWQgZXJyb3IoU3RyaW5nIGZvcm1hdCwgT2JqZWN0IGFyZzEsIE9iamVjdCBhcmcyKSB7CiAJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCiAJfQogCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KIAlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCBpbmZvKFN0cmluZyBtc2csIFRocm93YWJsZSB0aHJvd24pIHsKKwlwdWJsaWMgdm9pZCBlcnJvcihTdHJpbmcgZm9ybWF0LCBPYmplY3QuLi4gYXJndW1lbnRzKSB7CiAJCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCiAJfQogCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KIAlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCBkZWJ1ZyhTdHJpbmcgbXNnLCBPYmplY3QuLi4gYXJncykgewotCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQotCX0KLQotCS8qKiB7QGluaGVyaXREb2N9ICovCi0JQE92ZXJyaWRlCi0JcHVibGljIHZvaWQgZGVidWcoVGhyb3dhYmxlIHRocm93bikgewotCQkvLyBJZ25vcmUgKG5vdCByZWxldmFudCB0byB0ZXN0IGZhaWx1cmVzKQotCX0KLQotCS8qKiB7QGluaGVyaXREb2N9ICovCi0JQE92ZXJyaWRlCi0JcHVibGljIHZvaWQgaWdub3JlKFRocm93YWJsZSBhcmcwKSB7Ci0JCS8vIElnbm9yZSAobm90IHJlbGV2YW50IHRvIHRlc3QgZmFpbHVyZXMpCi0JfQotCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KLQlAT3ZlcnJpZGUKLQlwdWJsaWMgdm9pZCBkZWJ1ZyhTdHJpbmcgbXNnLCBsb25nIHZhbHVlKSB7CisJcHVibGljIHZvaWQgZXJyb3IoU3RyaW5nIG1zZywgVGhyb3dhYmxlIHQpIHsKIAkJLy8gSWdub3JlIChub3QgcmVsZXZhbnQgdG8gdGVzdCBmYWlsdXJlcykKIAl9CiB9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvLmNsYXNzcGF0aAppbmRleCAxMTAxNjhmLi4xZmRlMzE4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC8uY2xhc3NwYXRoCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoLy5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJyZXNvdXJjZXMiLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwppbmRleCAzZGQ1ODQwLi5lOWE1YTQxIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC03LDkgKzcsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYW5hbHlzaXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggOTVlY2YzMi4uOGQ2MjllZCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMTEgKzMsMTEgQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoCi1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKLUJ1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMS44CitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCiBJbXBvcnQtUGFja2FnZTogb3JnLmFwYWNoZS5zc2hkLmNvbW1vbjt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLmNvbmZpZy5rZXlzO3ZlcnNpb249IlsyLjcuMCwyLjguMCkiLAogIG9yZy5hcGFjaGUuc3NoZC5jb21tb24uZmlsZS52aXJ0dWFsZnM7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCkBAIC0zMywxNiArMzMsMTYgQEAKICBvcmcuYXBhY2hlLnNzaGQuc2VydmVyLnN1YnN5c3RlbTt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuc2Z0cDt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuc2Z0cC5zZXJ2ZXI7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKICBvcmcuanVuaXQuZXhwZXJpbWVudGFsLnRoZW9yaWVzO3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCiAgb3JnLnNsZjRqO3ZlcnNpb249IlsxLjcuMCwyLjAuMCkiCi1FeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2g7dmVyc2lvbj0iNS4xMy4zIgorRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoO3ZlcnNpb249IjYuMC4xIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IGU3ZTA2NTEuLjcxMzJiNWIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2ggLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaDt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaDt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoL3BvbS54bWwKaW5kZXggNzYwMDNjMC4uNzZiZGNhMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2gvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaC9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoPC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC8uY2xhc3NwYXRoCmluZGV4IGVjYTdiZGIuLjRhMDBiZWMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Ly5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJiaW4iLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggNTMwZjhmNi4uYmRmYmE3MSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTEwLDkgKzEwLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yOCw2ICsyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODYsNiArODcsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTk4LDcgKzEwMCw2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuY2hlY2tlZFR5cGVPcGVyYXRpb249d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bmNsb3NlZENsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuZG9jdW1lbnRlZEVtcHR5QmxvY2s9d2FybmluZwotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bmhhbmRsZWRXYXJuaW5nVG9rZW49aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuaGFuZGxlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVubGlrZWx5Q29sbGVjdGlvbk1ldGhvZEFyZ3VtZW50VHlwZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVubGlrZWx5Q29sbGVjdGlvbk1ldGhvZEFyZ3VtZW50VHlwZVN0cmljdD1kaXNhYmxlZApAQCAtMTI0LDM0ICsxMjUsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNjAsNiArMTkzLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE2OSwxMiArMjAzLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTg0LDcgKzIyNCw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTk2LDEwICsyMzgsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTIwOSwxNSArMjUyLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMzEsMTEgKzI3NiwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNjEsMTAgKzMxMCwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjgxLDYgKzMzNiw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjg5LDEzICszNDUsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMTIsNiArMzc1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzM4LDEwICs0MDIsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM1Myw2ICs0MjIsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM2OCw2ICs0MzksNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNzgsOSArNDUwLDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM5MiwyMCArNDY3LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCA3ZmUxODNhLi4xZjAyMWRhIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMzUgKzMsMzUgQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdAogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKIEJ1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgogQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKIEJ1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5Ci1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAotSW1wb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFwaTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnBhY2s7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubWVyZ2U7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249IjUuMTMuMyIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsLnRpbWU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKK0ltcG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubWVyZ2U7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249IjYuMC4xIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuaW87dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC51dGlsLnRpbWU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCiAgb3JnLmp1bml0O3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCiAgb3JnLmp1bml0LnJ1bGVzO3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCiAgb3JnLmp1bml0LnJ1bm5lcjt2ZXJzaW9uPSJbNC4xMyw1LjAuMCkiLAogIG9yZy5qdW5pdC5ydW5uZXJzO3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCiAgb3JnLmp1bml0LnJ1bm5lcnMubW9kZWw7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKICBvcmcuc2xmNGo7dmVyc2lvbj0iWzEuNy4wLDIuMC4wKSIKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249IjUuMTMuMyI7CitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLAogICAgb3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGssCkBAIC00NCw0ICs0NCw0IEBACiAgICBvcmcuanVuaXQucnVubmVycy5tb2RlbCwKICAgIG9yZy5qdW5pdC5ydW5uZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwudGltZSIsCi0gb3JnLmVjbGlwc2UuamdpdC5qdW5pdC50aW1lO3ZlcnNpb249IjUuMTMuMyI7dXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudXRpbC50aW1lIgorIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQudGltZTt2ZXJzaW9uPSI2LjAuMSI7dXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudXRpbC50aW1lIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgppbmRleCA4NmE4OTdmLi4xNTZlNTlhIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgpAQCAtMyw1ICszLDUgQEAKIEJ1bmRsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0IC0gU291cmNlcwogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiO3Jvb3RzPSIuIgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgorRWNsaXBzZS1Tb3VyY2VCdW5kbGU6IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIjtyb290cz0iLiIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvcG9tLnhtbAppbmRleCBmOGI5NjM2Li5lZjJiOTQ2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC9wb20ueG1sCkBAIC0xOSw3ICsxOSw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuanVuaXQ8L2FydGlmYWN0SWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L1Rlc3RSZXBvc2l0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2p1bml0L1Rlc3RSZXBvc2l0b3J5LmphdmEKaW5kZXggZDkxZWY2NC4uNTRlNGEwOSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9qdW5pdC9UZXN0UmVwb3NpdG9yeS5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuanVuaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvanVuaXQvVGVzdFJlcG9zaXRvcnkuamF2YQpAQCAtMjc2LDI1ICsyNzYsNiBAQCBwdWJsaWMgRGlyQ2FjaGVFbnRyeSBmaWxlKFN0cmluZyBwYXRoLCBSZXZCbG9iIGJsb2IpCiAJfQogCiAJLyoqCi0JICogQ29uc3RydWN0IGEgc3ltbGluayBtb2RlIHRyZWUgZW50cnkuCi0JICoKLQkgKiBAcGFyYW0gcGF0aAotCSAqICAgICAgICAgICAgcGF0aCBvZiB0aGUgc3ltbGluay4KLQkgKiBAcGFyYW0gYmxvYgotCSAqICAgICAgICAgICAgYSBibG9iLCBwcmV2aW91c2x5IGNvbnN0cnVjdGVkIGluIHRoZSByZXBvc2l0b3J5LgotCSAqIEByZXR1cm4gdGhlIGVudHJ5LgotCSAqIEB0aHJvd3MgRXhjZXB0aW9uCi0JICogICAgICAgICAgICAgaWYgYW4gZXJyb3Igb2NjdXJyZWQKLQkgKiBAc2luY2UgNS4xMy4zCi0JICovCi0JcHVibGljIERpckNhY2hlRW50cnkgbGluayhTdHJpbmcgcGF0aCwgUmV2QmxvYiBibG9iKSB0aHJvd3MgRXhjZXB0aW9uIHsKLQkJRGlyQ2FjaGVFbnRyeSBlID0gbmV3IERpckNhY2hlRW50cnkocGF0aCk7Ci0JCWUuc2V0RmlsZU1vZGUoRmlsZU1vZGUuU1lNTElOSyk7Ci0JCWUuc2V0T2JqZWN0SWQoYmxvYik7Ci0JCXJldHVybiBlOwotCX0KLQotCS8qKgogCSAqIENvbnN0cnVjdCBhIHRyZWUgZnJvbSBhIHNwZWNpZmljIGxpc3Rpbmcgb2YgZmlsZSBlbnRyaWVzLgogCSAqCiAJICogQHBhcmFtIGVudHJpZXMKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC8uY2xhc3NwYXRoCmluZGV4IGYwOGFmMGEuLjU4OTlhNGUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0Ly5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QvLmNsYXNzcGF0aApAQCAtMSw2ICsxLDEwIEBACiA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgogPGNsYXNzcGF0aD4KLQk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSI+CisJCTxhdHRyaWJ1dGVzPgorCQkJPGF0dHJpYnV0ZSBuYW1lPSJtb2R1bGUiIHZhbHVlPSJ0cnVlIi8+CisJCTwvYXR0cmlidXRlcz4KKwk8L2NsYXNzcGF0aGVudHJ5PgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InRzdCI+CiAJCTxhdHRyaWJ1dGVzPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDRjNDYzNGEuLjljOGJmZGIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLm1ldGhvZFBhcmFtZXRlcnM9ZG8gbm90IGdlbmVyYXRlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKQEAgLTI0LDYgKzI0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCkBAIC04MCw2ICs4MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTEyLDM0ICsxMTQsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNDgsNiArMTgyLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE1NywxMiArMTkyLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTcyLDcgKzIxMyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTg0LDEwICsyMjcsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTE5NywxNSArMjQxLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMTksMTEgKzI2NSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNDksMTAgKzI5OSwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjY5LDYgKzMyNSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjc3LDEzICszMzQsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMDAsNiArMzY0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzI2LDEwICszOTEsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM0MSw2ICs0MTEsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM1Niw2ICs0MjgsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNjYsOSArNDM5LDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM4MCwyMCArNDU2LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCA4MmJhNDBkLi5iMmE4MmMyIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMyw0OSArMyw0NyBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdAogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAotSW1wb3J0LVBhY2thZ2U6IGphdmF4LnNlcnZsZXQ7dmVyc2lvbj0iWzMuMS4wLDQuMC4wKSIsCi0gamF2YXguc2VydmxldC5odHRwO3ZlcnNpb249IlszLjEuMCw0LjAuMCkiLAotIG9yZy5hcGFjaGUuaHR0cDt2ZXJzaW9uPSJbNC4zLjAsNS4wLjApIiwKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKK0ltcG9ydC1QYWNrYWdlOiBqYXZheC5zZXJ2bGV0O3ZlcnNpb249IlszLjEuMCw1LjAuMCkiLAorIGphdmF4LnNlcnZsZXQuaHR0cDt2ZXJzaW9uPSJbMy4xLjAsNS4wLjApIiwKKyBvcmcuYXBhY2hlLmh0dHA7dmVyc2lvbj0iWzQuNC4wLDUuMC4wKSIsCiAgb3JnLmFwYWNoZS5odHRwLmNsaWVudDt2ZXJzaW9uPSJbNC40LjAsNS4wLjApIiwKICBvcmcuYXBhY2hlLmh0dHAuY2xpZW50Lm1ldGhvZHM7dmVyc2lvbj0iWzQuNC4wLDUuMC4wKSIsCi0gb3JnLmFwYWNoZS5odHRwLmVudGl0eTt2ZXJzaW9uPSJbNC4zLjAsNS4wLjApIiwKKyBvcmcuYXBhY2hlLmh0dHAuZW50aXR5O3ZlcnNpb249Ils0LjQuMCw1LjAuMCkiLAogIG9yZy5hcGFjaGUuaHR0cC5pbXBsLmNsaWVudDt2ZXJzaW9uPSJbNC40LjAsNS4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb247dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5Lmh0dHA7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LmlvO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eTt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuYXV0aGVudGljYXRpb247dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlcjt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLmhhbmRsZXI7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5uaW87dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQ7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnV0aWw7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwuY29tcG9uZW50O3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmxvZzt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbC5zZWN1cml0eTt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbC50aHJlYWQ7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5sZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIuZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuaHR0cDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LmlvO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHk7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5hdXRoZW50aWNhdGlvbjt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlcjt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5oYW5kbGVyO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkuc2VydmxldDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWw7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmNvbXBvbmVudDt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwubG9nO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkudXRpbC5zZWN1cml0eTt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnV0aWwudGhyZWFkO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5odHRwO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzLmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci5mczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuaGFtY3Jlc3QuY29yZTt2ZXJzaW9uPSJbMS4xLjAsMy4wLjApIiwKICBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKICBvcmcuanVuaXQucnVsZXM7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0L3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdC9wb20ueG1sCmluZGV4IDVmY2JhZTMuLmVmODc1MWUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci50ZXN0L3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnRlc3QvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdDwvYXJ0aWZhY3RJZD4KQEAgLTI3LDYgKzI3LDEwIEBACiAgICAgVGVzdHMgZm9yIHRoZSBMRlMgc2VydmVyLgogICA8L2Rlc2NyaXB0aW9uPgogCisgIDxwcm9wZXJ0aWVzPgorICAgIDxtYXZlbi5qYXZhZG9jLnNraXA+dHJ1ZTwvbWF2ZW4uamF2YWRvYy5za2lwPgorICA8L3Byb3BlcnRpZXM+CisKICAgPGRlcGVuZGVuY2llcz4KICAgICA8ZGVwZW5kZW5jeT4KICAgICAgIDxncm91cElkPmp1bml0PC9ncm91cElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLy5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLmNsYXNzcGF0aAppbmRleCBjZmNmMjRhLi4xMzlhMDU5IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLmNsYXNzcGF0aApAQCAtMiw3ICsyLDExIEBACiA8Y2xhc3NwYXRoPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InJlc291cmNlcyIvPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0iYmluIi8+CiA8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDlmZDkyYjEuLjA4NTdiYzEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IGUwOTQwM2QuLjNhNDQ0OGIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMzYgKzMsMzYgQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCi1FeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyO3ZlcnNpb249IjUuMTMuMyI7CitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9ImphdmF4LnNlcnZsZXQuaHR0cCwKICAgIG9yZy5lY2xpcHNlLmpnaXQubGZzLmxpYiIsCi0gb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLmZzO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLmZzO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9ImphdmF4LnNlcnZsZXQsCiAgICBqYXZheC5zZXJ2bGV0Lmh0dHAsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWIiLAotIG9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiO3gtaW50ZXJuYWw6PXRydWUsCi0gb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnMzO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLmludGVybmFsO3ZlcnNpb249IjYuMC4xIjt4LWludGVybmFsOj10cnVlLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci5zMzt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWIiCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQogSW1wb3J0LVBhY2thZ2U6IGNvbS5nb29nbGUuZ3Nvbjt2ZXJzaW9uPSJbMi44LjAsMy4wLjApIiwKLSBqYXZheC5zZXJ2bGV0O3ZlcnNpb249IlszLjEuMCw0LjAuMCkiLAotIGphdmF4LnNlcnZsZXQuYW5ub3RhdGlvbjt2ZXJzaW9uPSJbMy4xLjAsNC4wLjApIiwKLSBqYXZheC5zZXJ2bGV0Lmh0dHA7dmVyc2lvbj0iWzMuMS4wLDQuMC4wKSIsCisgamF2YXguc2VydmxldDt2ZXJzaW9uPSJbMy4xLjAsNS4wLjApIiwKKyBqYXZheC5zZXJ2bGV0LmFubm90YXRpb247dmVyc2lvbj0iWzMuMS4wLDUuMC4wKSIsCisgamF2YXguc2VydmxldC5odHRwO3ZlcnNpb249IlszLjEuMCw1LjAuMCkiLAogIG9yZy5hcGFjaGUuaHR0cDt2ZXJzaW9uPSJbNC4zLjAsNS4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5sZnMuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5sZnMuaW50ZXJuYWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0Lmh0dHAuYXBhY2hlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzLmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5pbnRlcm5hbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwLmFwYWNoZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCiAgb3JnLnNsZjRqO3ZlcnNpb249IlsxLjcuMCwyLjAuMCkiCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgppbmRleCBmMjRjNGI0Li41MDExYTIyIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyIC0gU291cmNlcwogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLnNvdXJjZQogQnVuZGxlLVZlbmRvcjogRWNsaXBzZS5vcmcgLSBKR2l0Ci1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgotRWNsaXBzZS1Tb3VyY2VCdW5kbGU6IG9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlcjt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXI7dmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIjtyb290cz0iLiIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL3BvbS54bWwKaW5kZXggY2M4MzYyYi4uYzJkNjU5NiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQtcGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyPC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xmcy9zZXJ2ZXIvZnMvT2JqZWN0RG93bmxvYWRMaXN0ZW5lci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xmcy9zZXJ2ZXIvZnMvT2JqZWN0RG93bmxvYWRMaXN0ZW5lci5qYXZhCmluZGV4IGNjNTc5NDcuLmQ0MjcwMTEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci9zcmMvb3JnL2VjbGlwc2UvamdpdC9sZnMvc2VydmVyL2ZzL09iamVjdERvd25sb2FkTGlzdGVuZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGZzL3NlcnZlci9mcy9PYmplY3REb3dubG9hZExpc3RlbmVyLmphdmEKQEAgLTgxLDYgKzgxLDcgQEAgcHVibGljIE9iamVjdERvd25sb2FkTGlzdGVuZXIoRmlsZUxmc1JlcG9zaXRvcnkgcmVwb3NpdG9yeSwKIAkgKgogCSAqIFdyaXRlIGZpbGUgY29udGVudAogCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJGaW5hbGx5IikKIAlAT3ZlcnJpZGUKIAlwdWJsaWMgdm9pZCBvbldyaXRlUG9zc2libGUoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQl3aGlsZSAob3V0LmlzUmVhZHkoKSkgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC8uY2xhc3NwYXRoCmluZGV4IGU3OWI3YzcuLjcyMmYzMDIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0Ly5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiPgogCQk8YXR0cmlidXRlcz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggYjg1M2M2YS4uNjllOTIyMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLm1ldGhvZFBhcmFtZXRlcnM9ZG8gbm90IGdlbmVyYXRlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKQEAgLTI0LDYgKzI0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCkBAIC04MCw2ICs4MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTEyLDM0ICsxMTQsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNDgsNiArMTgyLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE1NywxMiArMTkyLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTcyLDcgKzIxMyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTg0LDEwICsyMjcsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTE5NywxNSArMjQxLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMTksMTEgKzI2NSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNDksMTAgKzI5OSwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjY5LDYgKzMyNSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjc3LDEzICszMzQsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMDAsNiArMzY0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzI2LDEwICszOTEsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM0MSw2ICs0MTEsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM1Niw2ICs0MjgsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNjYsOSArNDM5LDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM4MCwyMCArNDU2LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCBhM2EzNzVlMi4uYjg3MDc5NCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0zLDI0ICszLDI0IEBACiBCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAotSW1wb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmRmczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGZzLmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGZzLmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCitJbXBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5lcnJvcnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5sZnMubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuaGFtY3Jlc3QuY29yZTt2ZXJzaW9uPSJbMS4xLjAsMy4wLjApIiwKICBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKICBvcmcuanVuaXQucnVubmVyO3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCiAgb3JnLmp1bml0LnJ1bm5lcnM7dmVyc2lvbj0iWzQuMTMsNS4wLjApIgotRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3Q7dmVyc2lvbj0iNS4xMy4zIjt4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdCIKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0O3ZlcnNpb249IjYuMC4xIjt4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIudGVzdCIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3QvcG9tLnhtbAppbmRleCBkNGFkM2RmLi5hODhjYTk0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy50ZXN0L3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdC9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3Q8L2FydGlmYWN0SWQ+CkBAIC0yNyw2ICsyNywxMCBAQAogICAgIFRlc3RzIGZvciB0aGUgTGFyZ2UgRmlsZSBFeHRlbnNpb24gKExGUykuCiAgIDwvZGVzY3JpcHRpb24+CiAKKyAgPHByb3BlcnRpZXM+CisgICAgPG1hdmVuLmphdmFkb2Muc2tpcD50cnVlPC9tYXZlbi5qYXZhZG9jLnNraXA+CisgIDwvcHJvcGVydGllcz4KKwogICA8ZGVwZW5kZW5jaWVzPgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+anVuaXQ8L2dyb3VwSWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMvLmNsYXNzcGF0aAppbmRleCBjZmNmMjRhLi4xMzlhMDU5IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy8uY2xhc3NwYXRoCisrKyBiL29yZy5lY2xpcHNlLmpnaXQubGZzLy5jbGFzc3BhdGgKQEAgLTIsNyArMiwxMSBAQAogPGNsYXNzcGF0aD4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJyZXNvdXJjZXMiLz4KLQk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSI+CisJCTxhdHRyaWJ1dGVzPgorCQkJPGF0dHJpYnV0ZSBuYW1lPSJtb2R1bGUiIHZhbHVlPSJ0cnVlIi8+CisJCTwvYXR0cmlidXRlcz4KKwk8L2NsYXNzcGF0aGVudHJ5PgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJvdXRwdXQiIHBhdGg9ImJpbiIvPgogPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggOWZkOTJiMS4uMDg1N2JjMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5sZnMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQubGZzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5sZnMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQubGZzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5sZnMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQubGZzL01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IGRmYTJlOGMuLmZiYTU4ZjggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzL01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQubGZzL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0zLDMxICszLDMxIEBACiBCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQubGZzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LmxmcwotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKIEJ1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgogQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0Lmxmczt2ZXJzaW9uPSI1LjEzLjMiLAotIG9yZy5lY2xpcHNlLmpnaXQubGZzLmVycm9yczt2ZXJzaW9uPSI1LjEzLjMiLAotIG9yZy5lY2xpcHNlLmpnaXQubGZzLmludGVybmFsO3ZlcnNpb249IjUuMTMuMyI7eC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdCxvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIuZnMsb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5saWI7dmVyc2lvbj0iNS4xMy4zIgotQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xLjgKLUltcG9ydC1QYWNrYWdlOiBjb20uZ29vZ2xlLmdzb247dmVyc2lvbj0iWzIuOC4wLDMuMC4wKSIsCi0gY29tLmdvb2dsZS5nc29uLnN0cmVhbTt2ZXJzaW9uPSJbMi44LjAsMy4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSI7cmVzb2x1dGlvbjo9b3B0aW9uYWwsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5kaWZmO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmhvb2tzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UucGFjazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLmZpbHRlcjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5pbzt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiCitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5sZnM7dmVyc2lvbj0iNi4wLjEiLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzLmVycm9yczt2ZXJzaW9uPSI2LjAuMSIsCisgb3JnLmVjbGlwc2UuamdpdC5sZnMuaW50ZXJuYWw7dmVyc2lvbj0iNi4wLjEiO3gtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQubGZzLnRlc3Qsb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLmZzLG9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlciIsCisgb3JnLmVjbGlwc2UuamdpdC5sZnMubGliO3ZlcnNpb249IjYuMC4xIgorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQorSW1wb3J0LVBhY2thZ2U6IGNvbS5nb29nbGUuZ3Nvbjt2ZXJzaW9uPSJbMi44LjIsMy4wLjApIiwKKyBjb20uZ29vZ2xlLmdzb24uc3RyZWFtO3ZlcnNpb249IlsyLjguMiwzLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSI7cmVzb2x1dGlvbjo9b3B0aW9uYWwsCisgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXR0cmlidXRlczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmRpZmY7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ob29rczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lm5sczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLnBhY2s7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuaW87dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQubGZzL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgppbmRleCA2MjY3MDgyLi5hNzE1YmU2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCkBAIC0zLDUgKzMsNSBAQAogQnVuZGxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQubGZzIC0gU291cmNlcwogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5sZnMuc291cmNlCiBCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1FY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5sZnM7dmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciI7cm9vdHM9Ii4iCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCitFY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5sZnM7dmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIjtyb290cz0iLiIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQubGZzL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy9wb20ueG1sCmluZGV4IDkxYTMzN2MuLmViNTdkYjMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQubGZzL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5sZnMvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LmxmczwvYXJ0aWZhY3RJZD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZS9mZWF0dXJlLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZS9mZWF0dXJlLnhtbAppbmRleCBhNGNlZDNkLi5jYzFiZjg1IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LmZlYXR1cmUvZmVhdHVyZS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5mZWF0dXJlL2ZlYXR1cmUueG1sCkBAIC0yLDcgKzIsNyBAQAogPGZlYXR1cmUKICAgICAgIGlkPSJvcmcuZWNsaXBzZS5qZ2l0IgogICAgICAgbGFiZWw9IiVmZWF0dXJlTmFtZSIKLSAgICAgIHZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiCisgICAgICB2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiCiAgICAgICBwcm92aWRlci1uYW1lPSIlcHJvdmlkZXJOYW1lIj4KIAogICAgPGRlc2NyaXB0aW9uIHVybD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9qZ2l0LyI+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LmZlYXR1cmUvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZS9wb20ueG1sCmluZGV4IGQ3Njk3MWEuLjg3NGIyNzQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZS9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZS9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5qZ2l0LnR5Y2hvLnBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZTwvZ3JvdXBJZD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLmZlYXR1cmUvZmVhdHVyZS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5mZWF0dXJlL2ZlYXR1cmUueG1sCmluZGV4IGRlNjU0MjMuLmJlMDI2NjIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLmZlYXR1cmUvZmVhdHVyZS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMuZmVhdHVyZS9mZWF0dXJlLnhtbApAQCAtMiw3ICsyLDcgQEAKIDxmZWF0dXJlCiAgICAgICBpZD0ib3JnLmVjbGlwc2UuamdpdC5ncGcuYmMiCiAgICAgICBsYWJlbD0iJWZlYXR1cmVOYW1lIgotICAgICAgdmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciIKKyAgICAgIHZlcnNpb249IjYuMC4xLnF1YWxpZmllciIKICAgICAgIHByb3ZpZGVyLW5hbWU9IiVwcm92aWRlck5hbWUiPgogCiAgICA8ZGVzY3JpcHRpb24gdXJsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2pnaXQvIj4KQEAgLTIzLDcgKzIzLDcgQEAKICAgIDwvdXJsPgogCiAgICA8cmVxdWlyZXM+Ci0gICAgICA8aW1wb3J0IHBsdWdpbj0ib3JnLmVjbGlwc2UuamdpdCIgdmVyc2lvbj0iNS4xMy4zIiBtYXRjaD0iZXF1aXZhbGVudCIvPgorICAgICAgPGltcG9ydCBwbHVnaW49Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMuZmVhdHVyZS9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5ncGcuYmMuZmVhdHVyZS9wb20ueG1sCmluZGV4IDY5OTc5ODguLjI5MDllODAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuZ3BnLmJjLmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LmdwZy5iYy5mZWF0dXJlL3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPmpnaXQudHljaG8ucGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdC5mZWF0dXJlPC9ncm91cElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS5mZWF0dXJlL2ZlYXR1cmUueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS5mZWF0dXJlL2ZlYXR1cmUueG1sCmluZGV4IGJiMDNhNTkuLjg5MzdhODMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUuZmVhdHVyZS9mZWF0dXJlLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLmZlYXR1cmUvZmVhdHVyZS54bWwKQEAgLTIsNyArMiw3IEBACiA8ZmVhdHVyZQogICAgICAgaWQ9Im9yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGUiCiAgICAgICBsYWJlbD0iJWZlYXR1cmVOYW1lIgotICAgICAgdmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciIKKyAgICAgIHZlcnNpb249IjYuMC4xLnF1YWxpZmllciIKICAgICAgIHByb3ZpZGVyLW5hbWU9IiVwcm92aWRlck5hbWUiPgogCiAgICA8ZGVzY3JpcHRpb24gdXJsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2pnaXQvIj4KQEAgLTIzLDcgKzIzLDcgQEAKICAgIDwvdXJsPgogCiAgICA8cmVxdWlyZXM+Ci0gICAgICA8aW1wb3J0IHBsdWdpbj0ib3JnLmVjbGlwc2UuamdpdCIgdmVyc2lvbj0iNS4xMy4zIiBtYXRjaD0iZXF1aXZhbGVudCIvPgorICAgICAgPGltcG9ydCBwbHVnaW49Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5odHRwLmFwYWNoZS5mZWF0dXJlL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLmZlYXR1cmUvcG9tLnhtbAppbmRleCAwOWZlNTExLi4yMjkyYzJlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmh0dHAuYXBhY2hlLmZlYXR1cmUvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+amdpdC50eWNoby5wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0LmZlYXR1cmU8L2dyb3VwSWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LmZlYXR1cmUvZmVhdHVyZS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LmZlYXR1cmUvZmVhdHVyZS54bWwKaW5kZXggZDAxOGVlYS4uNmVlZTdjZCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5mZWF0dXJlL2ZlYXR1cmUueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuanVuaXQuZmVhdHVyZS9mZWF0dXJlLnhtbApAQCAtMiw3ICsyLDcgQEAKIDxmZWF0dXJlCiAgICAgICBpZD0ib3JnLmVjbGlwc2UuamdpdC5qdW5pdCIKICAgICAgIGxhYmVsPSIlZmVhdHVyZU5hbWUiCi0gICAgICB2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIgorICAgICAgdmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIgogICAgICAgcHJvdmlkZXItbmFtZT0iJXByb3ZpZGVyTmFtZSI+CiAKICAgIDxkZXNjcmlwdGlvbiB1cmw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvamdpdC8iPgpAQCAtMjQsNyArMjQsNyBAQAogCiAgICA8cmVxdWlyZXM+CiAgICAgICA8aW1wb3J0IHBsdWdpbj0iY29tLmpjcmFmdC5qc2NoIi8+Ci0gICAgICA8aW1wb3J0IHBsdWdpbj0ib3JnLmVjbGlwc2UuamdpdCIgdmVyc2lvbj0iNS4xMy4zIiBtYXRjaD0iZXF1aXZhbGVudCIvPgorICAgICAgPGltcG9ydCBwbHVnaW49Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5mZWF0dXJlL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LmZlYXR1cmUvcG9tLnhtbAppbmRleCAzZGY3NDdkLi5kYzQxNTliIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LmZlYXR1cmUvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+amdpdC50eWNoby5wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0LmZlYXR1cmU8L2dyb3VwSWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5mZWF0dXJlL2ZlYXR1cmUueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5sZnMuZmVhdHVyZS9mZWF0dXJlLnhtbAppbmRleCBkNzlmMTg4Li5mMGE0ODg0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5mZWF0dXJlL2ZlYXR1cmUueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQubGZzLmZlYXR1cmUvZmVhdHVyZS54bWwKQEAgLTIsNyArMiw3IEBACiA8ZmVhdHVyZQogICAgICAgaWQ9Im9yZy5lY2xpcHNlLmpnaXQubGZzIgogICAgICAgbGFiZWw9IiVmZWF0dXJlTmFtZSIKLSAgICAgIHZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiCisgICAgICB2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiCiAgICAgICBwcm92aWRlci1uYW1lPSIlcHJvdmlkZXJOYW1lIj4KIAogICAgPGRlc2NyaXB0aW9uIHVybD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9qZ2l0LyI+CkBAIC0yMyw3ICsyMyw3IEBACiAgICA8L3VybD4KIAogICAgPHJlcXVpcmVzPgotICAgICAgPGltcG9ydCBmZWF0dXJlPSJvcmcuZWNsaXBzZS5qZ2l0IiB2ZXJzaW9uPSI1LjEzLjMiIG1hdGNoPSJlcXVpdmFsZW50Ii8+CisgICAgICA8aW1wb3J0IGZlYXR1cmU9Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5sZnMuZmVhdHVyZS9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5sZnMuZmVhdHVyZS9wb20ueG1sCmluZGV4IDg0ZTQ1M2QuLmUzNDRjMTkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQubGZzLmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0Lmxmcy5mZWF0dXJlL3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPmpnaXQudHljaG8ucGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdC5mZWF0dXJlPC9ncm91cElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5wZ20uZmVhdHVyZS9mZWF0dXJlLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQucGdtLmZlYXR1cmUvZmVhdHVyZS54bWwKaW5kZXggNGEyNDE3ZS4uZjU4ODllNSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5wZ20uZmVhdHVyZS9mZWF0dXJlLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnBnbS5mZWF0dXJlL2ZlYXR1cmUueG1sCkBAIC0yLDcgKzIsNyBAQAogPGZlYXR1cmUKICAgICAgIGlkPSJvcmcuZWNsaXBzZS5qZ2l0LnBnbSIKICAgICAgIGxhYmVsPSIlZmVhdHVyZU5hbWUiCi0gICAgICB2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIgorICAgICAgdmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIgogICAgICAgcHJvdmlkZXItbmFtZT0iJXByb3ZpZGVyTmFtZSI+CiAKICAgIDxkZXNjcmlwdGlvbiB1cmw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvamdpdC8iPgpAQCAtMzUsOSArMzUsOSBAQAogICAgICAgICAgdmVyc2lvbj0iMC4wLjAiLz4KIAogICAgPHJlcXVpcmVzPgotICAgICAgPGltcG9ydCBmZWF0dXJlPSJvcmcuZWNsaXBzZS5qZ2l0IiB2ZXJzaW9uPSI1LjEzLjMiIG1hdGNoPSJlcXVpdmFsZW50Ii8+Ci0gICAgICA8aW1wb3J0IGZlYXR1cmU9Im9yZy5lY2xpcHNlLmpnaXQubGZzIiB2ZXJzaW9uPSI1LjEzLjMiIG1hdGNoPSJlcXVpdmFsZW50Ii8+Ci0gICAgICA8aW1wb3J0IGZlYXR1cmU9Im9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZSIgdmVyc2lvbj0iNS4xMy4zIiBtYXRjaD0iZXF1aXZhbGVudCIvPgorICAgICAgPGltcG9ydCBmZWF0dXJlPSJvcmcuZWNsaXBzZS5qZ2l0IiB2ZXJzaW9uPSI2LjAuMSIgbWF0Y2g9ImVxdWl2YWxlbnQiLz4KKyAgICAgIDxpbXBvcnQgZmVhdHVyZT0ib3JnLmVjbGlwc2UuamdpdC5sZnMiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgorICAgICAgPGltcG9ydCBmZWF0dXJlPSJvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5wZ20uZmVhdHVyZS9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5wZ20uZmVhdHVyZS9wb20ueG1sCmluZGV4IGQyMzQyMTUuLmFlOTU3MDQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQucGdtLmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnBnbS5mZWF0dXJlL3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPmpnaXQudHljaG8ucGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdC5mZWF0dXJlPC9ncm91cElkPgpAQCAtNDUsNiArNDUsMTkgQEAKICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQudWk8L2FydGlmYWN0SWQ+CiAgICAgICA8dmVyc2lvbj4ke3Byb2plY3QudmVyc2lvbn08L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgorCisgICAgPGRlcGVuZGVuY3k+CisgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgorICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlPC9hcnRpZmFjdElkPgorICAgICAgPHZlcnNpb24+JHtwcm9qZWN0LnZlcnNpb259PC92ZXJzaW9uPgorICAgIDwvZGVwZW5kZW5jeT4KKworICAgIDxkZXBlbmRlbmN5PgorICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KKyAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudDwvYXJ0aWZhY3RJZD4KKyAgICAgIDx2ZXJzaW9uPiR7cHJvamVjdC52ZXJzaW9ufTwvdmVyc2lvbj4KKyAgICA8L2RlcGVuZGVuY3k+CisKICAgPC9kZXBlbmRlbmNpZXM+CiAKIDwvcHJvamVjdD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQucmVwb3NpdG9yeS9jYXRlZ29yeS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnJlcG9zaXRvcnkvY2F0ZWdvcnkueG1sCmluZGV4IDM0MTdlMDkuLjdmYTJiODMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQucmVwb3NpdG9yeS9jYXRlZ29yeS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5yZXBvc2l0b3J5L2NhdGVnb3J5LnhtbApAQCAtNTcsMTYgKzU3LDcwIEBACiAgICA8YnVuZGxlIGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSI+CiAgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KICAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0iY29tLnN1bi5qbmEiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9ImNvbS5zdW4uam5hLnNvdXJjZSI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0iY29tLnN1bi5qbmEucGxhdGZvcm0iPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtLnNvdXJjZSI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgogICAgPGJ1bmRsZSBpZD0iamF2YWV3YWgiPgogICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CiAgICA8L2J1bmRsZT4KICAgIDxidW5kbGUgaWQ9ImphdmFld2FoLnNvdXJjZSI+CiAgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KICAgIDwvYnVuZGxlPgotICAgPGJ1bmRsZSBpZD0iamF2YXguc2VydmxldCI+CisgICA8YnVuZGxlIGlkPSJqYWthcnRhLnNlcnZsZXQtYXBpIj4KICAgICAgIDxjYXRlZ29yeSBuYW1lPSJKR2l0LWRlcGVuZGVuY3ktYnVuZGxlcyIvPgogICAgPC9idW5kbGU+Ci0gICA8YnVuZGxlIGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSI+CisgICA8YnVuZGxlIGlkPSJqYWthcnRhLnNlcnZsZXQtYXBpLnNvdXJjZSI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIj4KKyAgICAgIDxjYXRlZ29yeSBuYW1lPSJKR2l0LWRlcGVuZGVuY3ktYnVuZGxlcyIvPgorICAgPC9idW5kbGU+CisgICA8YnVuZGxlIGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5Ij4KKyAgICAgIDxjYXRlZ29yeSBuYW1lPSJKR2l0LWRlcGVuZGVuY3ktYnVuZGxlcyIvPgorICAgPC9idW5kbGU+CisgICA8YnVuZGxlIGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCI+CisgICAgICA8Y2F0ZWdvcnkgbmFtZT0iSkdpdC1kZXBlbmRlbmN5LWJ1bmRsZXMiLz4KKyAgIDwvYnVuZGxlPgorICAgPGJ1bmRsZSBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIj4KKyAgICAgIDxjYXRlZ29yeSBuYW1lPSJKR2l0LWRlcGVuZGVuY3ktYnVuZGxlcyIvPgorICAgPC9idW5kbGU+CisgICA8YnVuZGxlIGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiPgorICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CisgICA8L2J1bmRsZT4KKyAgIDxidW5kbGUgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiPgogICAgICAgPGNhdGVnb3J5IG5hbWU9IkpHaXQtZGVwZW5kZW5jeS1idW5kbGVzIi8+CiAgICA8L2J1bmRsZT4KICAgIDxidW5kbGUgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQucmVwb3NpdG9yeS9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5yZXBvc2l0b3J5L3BvbS54bWwKaW5kZXggNzc0ODZhMC4uZTEyZTU5OSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5yZXBvc2l0b3J5L3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5yZXBvc2l0b3J5L3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPmpnaXQudHljaG8ucGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5yZXBvc2l0b3J5PC9hcnRpZmFjdElkPgpAQCAtOTEsNyArOTEsMTIgQEAKICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZTwvYXJ0aWZhY3RJZD4KICAgICAgIDx2ZXJzaW9uPiR7cHJvamVjdC52ZXJzaW9ufTwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+Ci0gICA8ZGVwZW5kZW5jeT4KKyAgICA8ZGVwZW5kZW5jeT4KKyAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CisgICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQ8L2FydGlmYWN0SWQ+CisgICAgICA8dmVyc2lvbj4ke3Byb2plY3QudmVyc2lvbn08L3ZlcnNpb24+CisgICAgPC9kZXBlbmRlbmN5PgorICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2g8L2FydGlmYWN0SWQ+CiAgICAgICA8dmVyc2lvbj4ke3Byb2plY3QudmVyc2lvbn08L3ZlcnNpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNvdXJjZS5mZWF0dXJlL2ZlYXR1cmUueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zb3VyY2UuZmVhdHVyZS9mZWF0dXJlLnhtbAppbmRleCAyYzdlMTlhLi5kNWQxNTU0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNvdXJjZS5mZWF0dXJlL2ZlYXR1cmUueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc291cmNlLmZlYXR1cmUvZmVhdHVyZS54bWwKQEAgLTIsNyArMiw3IEBACiA8ZmVhdHVyZQogICAgICAgaWQ9Im9yZy5lY2xpcHNlLmpnaXQuc291cmNlIgogICAgICAgbGFiZWw9IiVmZWF0dXJlTmFtZSIKLSAgICAgIHZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiCisgICAgICB2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiCiAgICAgICBwcm92aWRlci1uYW1lPSIlcHJvdmlkZXJOYW1lIj4KIAogICAgPGRlc2NyaXB0aW9uIHVybD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9qZ2l0LyI+CkBAIC0yMyw3ICsyMyw3IEBACiAgICA8L3VybD4KIAogICAgPHJlcXVpcmVzPgotICAgICAgPGltcG9ydCBmZWF0dXJlPSJvcmcuZWNsaXBzZS5qZ2l0IiB2ZXJzaW9uPSI1LjEzLjMiIG1hdGNoPSJlcXVpdmFsZW50Ii8+CisgICAgICA8aW1wb3J0IGZlYXR1cmU9Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpAQCAtMTExLDYgKzExMSwxMyBAQAogICAgICAgICAgdW5wYWNrPSJmYWxzZSIvPgogCiAgICA8cGx1Z2luCisgICAgICAgICBpZD0ib3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50LnNvdXJjZSIKKyAgICAgICAgIGRvd25sb2FkLXNpemU9IjAiCisgICAgICAgICBpbnN0YWxsLXNpemU9IjAiCisgICAgICAgICB2ZXJzaW9uPSIwLjAuMCIKKyAgICAgICAgIHVucGFjaz0iZmFsc2UiLz4KKworICAgPHBsdWdpbgogICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2guc291cmNlIgogICAgICAgICAgZG93bmxvYWQtc2l6ZT0iMCIKICAgICAgICAgIGluc3RhbGwtc2l6ZT0iMCIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc291cmNlLmZlYXR1cmUvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc291cmNlLmZlYXR1cmUvcG9tLnhtbAppbmRleCAxMzgxN2NjLi5hMjA2NDVlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNvdXJjZS5mZWF0dXJlL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zb3VyY2UuZmVhdHVyZS9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5qZ2l0LnR5Y2hvLnBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZTwvZ3JvdXBJZD4KQEAgLTMwLDcgKzMwLDcgQEAKICAgICA8ZGVwZW5kZW5jeT4KICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZTwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQ8L2FydGlmYWN0SWQ+Ci0gICAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgICA8L2RlcGVuZGVuY3k+CiAgIDwvZGVwZW5kZW5jaWVzPgogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuZmVhdHVyZS9mZWF0dXJlLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5mZWF0dXJlL2ZlYXR1cmUueG1sCmluZGV4IDZiY2IyMGMuLmFlNjJmYTAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5mZWF0dXJlL2ZlYXR1cmUueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5mZWF0dXJlL2ZlYXR1cmUueG1sCkBAIC0yLDcgKzIsNyBAQAogPGZlYXR1cmUKICAgICAgIGlkPSJvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUiCiAgICAgICBsYWJlbD0iJWZlYXR1cmVOYW1lIgotICAgICAgdmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciIKKyAgICAgIHZlcnNpb249IjYuMC4xLnF1YWxpZmllciIKICAgICAgIHByb3ZpZGVyLW5hbWU9IiVwcm92aWRlck5hbWUiPgogCiAgICA8ZGVzY3JpcHRpb24gdXJsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2pnaXQvIj4KQEAgLTIzLDcgKzIzLDcgQEAKICAgIDwvdXJsPgogCiAgICA8cmVxdWlyZXM+Ci0gICAgICA8aW1wb3J0IGZlYXR1cmU9Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjUuMTMuMyIgbWF0Y2g9ImVxdWl2YWxlbnQiLz4KKyAgICAgIDxpbXBvcnQgZmVhdHVyZT0ib3JnLmVjbGlwc2UuamdpdCIgdmVyc2lvbj0iNi4wLjEiIG1hdGNoPSJlcXVpdmFsZW50Ii8+CiAgICA8L3JlcXVpcmVzPgogCiAgICA8cGx1Z2luCkBAIC0zMyw0ICszMywxMiBAQAogICAgICAgICAgdmVyc2lvbj0iMC4wLjAiCiAgICAgICAgICB1bnBhY2s9ImZhbHNlIi8+CiAKKyAgIDxwbHVnaW4KKyAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQiCisgICAgICAgICBkb3dubG9hZC1zaXplPSIwIgorICAgICAgICAgaW5zdGFsbC1zaXplPSIwIgorICAgICAgICAgdmVyc2lvbj0iMC4wLjAiCisgICAgICAgICBmcmFnbWVudD0idHJ1ZSIKKyAgICAgICAgIHVucGFjaz0iZmFsc2UiLz4KKwogPC9mZWF0dXJlPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmZlYXR1cmUvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5mZWF0dXJlL3BvbS54bWwKaW5kZXggNWYxYzc2YS4uNmYxMmFmYSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuZmVhdHVyZS9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5qZ2l0LnR5Y2hvLnBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQuZmVhdHVyZTwvZ3JvdXBJZD4KQEAgLTM5LDYgKzM5LDEyIEBACiAgICAgICA8dmVyc2lvbj4ke3Byb2plY3QudmVyc2lvbn08L3ZlcnNpb24+CiAgICAgPC9kZXBlbmRlbmN5PgogCisgICAgPGRlcGVuZGVuY3k+CisgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgorICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50PC9hcnRpZmFjdElkPgorICAgICAgPHZlcnNpb24+JHtwcm9qZWN0LnZlcnNpb259PC92ZXJzaW9uPgorICAgIDwvZGVwZW5kZW5jeT4KKwogICA8L2RlcGVuZGVuY2llcz4KIAogPC9wcm9qZWN0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC5mZWF0dXJlL2ZlYXR1cmUueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC5mZWF0dXJlL2ZlYXR1cmUueG1sCmluZGV4IDZhZDhkN2EuLmRmNDJlOTMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2guZmVhdHVyZS9mZWF0dXJlLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLmZlYXR1cmUvZmVhdHVyZS54bWwKQEAgLTIsNyArMiw3IEBACiA8ZmVhdHVyZQogICAgICAgaWQ9Im9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2giCiAgICAgICBsYWJlbD0iJWZlYXR1cmVOYW1lIgotICAgICAgdmVyc2lvbj0iNS4xMy4zLnF1YWxpZmllciIKKyAgICAgIHZlcnNpb249IjYuMC4xLnF1YWxpZmllciIKICAgICAgIHByb3ZpZGVyLW5hbWU9IiVwcm92aWRlck5hbWUiPgogCiAgICA8ZGVzY3JpcHRpb24gdXJsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2pnaXQvIj4KQEAgLTIzLDcgKzIzLDcgQEAKICAgIDwvdXJsPgogCiAgICA8cmVxdWlyZXM+Ci0gICAgICA8aW1wb3J0IHBsdWdpbj0ib3JnLmVjbGlwc2UuamdpdCIgdmVyc2lvbj0iNS4xMy4zIiBtYXRjaD0iZXF1aXZhbGVudCIvPgorICAgICAgPGltcG9ydCBwbHVnaW49Im9yZy5lY2xpcHNlLmpnaXQiIHZlcnNpb249IjYuMC4xIiBtYXRjaD0iZXF1aXZhbGVudCIvPgogICAgPC9yZXF1aXJlcz4KIAogICAgPHBsdWdpbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC5mZWF0dXJlL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLmZlYXR1cmUvcG9tLnhtbAppbmRleCA3NThlN2Y3Li4zN2FkYTVkIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLmZlYXR1cmUvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLmZlYXR1cmUvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+amdpdC50eWNoby5wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0LmZlYXR1cmU8L2dyb3VwSWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IGI3ZGQwNDAuLmQzMWNkMzcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0yLDQgKzIsNCBAQAogQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgogQnVuZGxlLU5hbWU6IEpHaXQgVGFyZ2V0IFBsYXRmb3JtIEJ1bmRsZQogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC50YXJnZXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTAudGFyZ2V0IGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjEwLnRhcmdldApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmE2MzU0NC4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTAudGFyZ2V0CisrKyAvZGV2L251bGwKQEAgLTEsOTcgKzAsMCBAQAotPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Ci08P3BkZT8+Ci08IS0tIGdlbmVyYXRlZCB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9lY2xpcHNlLWNiaS90YXJnZXRwbGF0Zm9ybS1kc2wgLS0+Ci08dGFyZ2V0IG5hbWU9ImpnaXQtNC4xMCIgc2VxdWVuY2VOdW1iZXI9IjE2Mzk0MzgxMzgiPgotICA8bG9jYXRpb25zPgotICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8cmVwb3NpdG9yeSBpZD0iamV0dHktOS40LngiIGxvY2F0aW9uPSJodHRwczovL2FyY2hpdmUuZWNsaXBzZS5vcmcvamV0dHkvdXBkYXRlcy9qZXR0eS1idW5kbGVzLTkueC9qZXR0eS1idW5kbGVzLTkueC85LjQuNDMudjIwMjEwNjI5LyIvPgotICAgIDwvbG9jYXRpb24+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5nb29nbGUuZ3Nvbi5zb3VyY2UiIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2guc291cmNlIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYi5zb3VyY2UiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaCIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+Ci0gICAgICA8dW5pdCBpZD0iamF2YWV3YWguc291cmNlIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0IiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuaTJwLmNyeXB0by5lZGRzYSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuaTJwLmNyeXB0by5lZGRzYS5zb3VyY2UiIHZlcnNpb249IjAuMy4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5hbnQiIHZlcnNpb249IjEuMTAuMTIudjIwMjExMTAyLTE0NTIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudC5zb3VyY2UiIHZlcnNpb249IjEuMTAuMTIudjIwMjExMTAyLTE0NTIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMiIHZlcnNpb249IjEuMTQuMC52MjAyMDA4MTgtMTQyMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYy5zb3VyY2UiIHZlcnNpb249IjEuMTQuMC52MjAyMDA4MTgtMTQyMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcyIgdmVyc2lvbj0iMS4yMS4wLnYyMDIxMTEwMy0yMTAwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLnNvdXJjZSIgdmVyc2lvbj0iMS4yMS4wLnYyMDIxMTEwMy0yMTAwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmciIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuc291cmNlIiB2ZXJzaW9uPSIxLjIuMC52MjAxODA0MDktMTUwMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudCIgdmVyc2lvbj0iNC41LjEzLnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iNC41LjEzLnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZS5zb3VyY2UiIHZlcnNpb249IjQuNC4xNC52MjAyMTAxMjgtMjIyNSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5vc2dpIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5vc2dpLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQuc2Z0cCIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQuc2Z0cC5zb3VyY2UiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGoiIHZlcnNpb249IjMuMjAuMi52MjAyMTA3MDYtMTEwNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hc3NlcnRqLnNvdXJjZSIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BnIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGcuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeCIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BraXguc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdiIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3Byb3Yuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbCIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3V0aWwuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QiIHZlcnNpb249IjIuMi4wLnYyMDIxMDcxMS0wODIxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LnNvdXJjZSIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QuY29yZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QuY29yZS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmxpYnJhcnkiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmxpYnJhcnkuc291cmNlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA1MjQtMjI0NiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5qdW5pdCIgdmVyc2lvbj0iNC4xMy4yLnYyMDIxMTAxOC0xOTU2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0LnNvdXJjZSIgdmVyc2lvbj0iNC4xMy4yLnYyMDIxMTAxOC0xOTU2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmtvaHN1a2UuYXJnczRqIiB2ZXJzaW9uPSIyLjMzLjAudjIwMTYwMzIzLTIyMTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGouc291cmNlIiB2ZXJzaW9uPSIyLjMzLjAudjIwMTYwMzIzLTIyMTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0byIgdmVyc2lvbj0iMi4yMy4wLnYyMDIwMDMxMC0xNjQyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm1vY2tpdG8uc291cmNlIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcub2JqZW5lc2lzIiB2ZXJzaW9uPSIyLjYuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMuc291cmNlIiB2ZXJzaW9uPSIyLjYuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5hcGkiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5hcGkuc291cmNlIiB2ZXJzaW9uPSIxLjcuMzAudjIwMjAwMjA0LTIxNTAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuc2xmNGouYmluZGluZy5zaW1wbGUiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy50dWthYW5pLnh6IiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy50dWthYW5pLnh6LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMjEwNjI0LTEyNTkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAyMTEyMTMxNzM4MTMvcmVwb3NpdG9yeSIvPgotICAgIDwvbG9jYXRpb24+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2Uub3NnaSIgdmVyc2lvbj0iMC4wLjAiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMTgtMTIvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgPC9sb2NhdGlvbnM+Ci08L3RhcmdldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMC50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTAudHBkCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiODQ1MzFhLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMC50cGQKKysrIC9kZXYvbnVsbApAQCAtMSw5ICswLDAgQEAKLXRhcmdldCAiamdpdC00LjEwIiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQotCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCi1pbmNsdWRlICJvcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQiCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMTgtMTIvIiB7Ci0Jb3JnLmVjbGlwc2Uub3NnaSBsYXp5Ci19Ci0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMS50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTEudGFyZ2V0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMGM3NzEwLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMS50YXJnZXQKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KLTw/cGRlPz4KLTwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjExIiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOCI+Ci0gIDxsb2NhdGlvbnM+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uLnNvdXJjZSIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2giIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudCIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50LnNvdXJjZSIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UiIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0aiIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGouc291cmNlIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGciIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdCIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3Quc291cmNlIiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0IiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQuc291cmNlIiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGoiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0by5zb3VyY2UiIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcy5zb3VyY2UiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHoiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHouc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDIxMTIxMzE3MzgxMy9yZXBvc2l0b3J5Ii8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0wMy8iLz4KLSAgICA8L2xvY2F0aW9uPgotICA8L2xvY2F0aW9ucz4KLTwvdGFyZ2V0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjExLnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMS50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjZTI5MTQuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjExLnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotdGFyZ2V0ICJqZ2l0LTQuMTEiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0KLWluY2x1ZGUgInByb2plY3RzL2pldHR5LTkuNC54LnRwZCIKLWluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKLQotbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0wMy8iIHsKLQlvcmcuZWNsaXBzZS5vc2dpIGxhenkKLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMi50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTIudGFyZ2V0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMWE1Nzk3Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMi50YXJnZXQKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KLTw/cGRlPz4KLTwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjEyIiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOCI+Ci0gIDxsb2NhdGlvbnM+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uLnNvdXJjZSIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2giIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudCIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50LnNvdXJjZSIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UiIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0aiIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGouc291cmNlIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGciIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdCIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3Quc291cmNlIiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0IiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQuc291cmNlIiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGoiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0by5zb3VyY2UiIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcy5zb3VyY2UiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHoiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHouc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDIxMTIxMzE3MzgxMy9yZXBvc2l0b3J5Ii8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0wNi8iLz4KLSAgICA8L2xvY2F0aW9uPgotICA8L2xvY2F0aW9ucz4KLTwvdGFyZ2V0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjEyLnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMi50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk0MTlmYTQuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjEyLnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotdGFyZ2V0ICJqZ2l0LTQuMTIiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0KLWluY2x1ZGUgInByb2plY3RzL2pldHR5LTkuNC54LnRwZCIKLWluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKLQotbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0wNi8iIHsKLQlvcmcuZWNsaXBzZS5vc2dpIGxhenkKLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMy50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTMudGFyZ2V0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlN2U5YzY4Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMy50YXJnZXQKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KLTw/cGRlPz4KLTwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjEzIiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOCI+Ci0gIDxsb2NhdGlvbnM+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uLnNvdXJjZSIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2giIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudCIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50LnNvdXJjZSIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UiIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0aiIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGouc291cmNlIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGciIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdCIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3Quc291cmNlIiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0IiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQuc291cmNlIiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGoiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0by5zb3VyY2UiIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcy5zb3VyY2UiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHoiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHouc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDIxMTIxMzE3MzgxMy9yZXBvc2l0b3J5Ii8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0wOS8iLz4KLSAgICA8L2xvY2F0aW9uPgotICA8L2xvY2F0aW9ucz4KLTwvdGFyZ2V0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjEzLnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xMy50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDkwNTAuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjEzLnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotdGFyZ2V0ICJqZ2l0LTQuMTMiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0KLWluY2x1ZGUgInByb2plY3RzL2pldHR5LTkuNC54LnRwZCIKLWluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKLQotbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0wOS8iIHsKLQlvcmcuZWNsaXBzZS5vc2dpIGxhenkKLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNC50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTQudGFyZ2V0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhYTEwNGI1Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNC50YXJnZXQKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KLTw/cGRlPz4KLTwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjE0IiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzNiI+Ci0gIDxsb2NhdGlvbnM+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uLnNvdXJjZSIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2giIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudCIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50LnNvdXJjZSIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UiIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0aiIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGouc291cmNlIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGciIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdCIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3Quc291cmNlIiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0IiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQuc291cmNlIiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGoiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0by5zb3VyY2UiIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcy5zb3VyY2UiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHoiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHouc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDIxMTIxMzE3MzgxMy9yZXBvc2l0b3J5Ii8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAxOS0xMi8yMDE5MTIxODEwMDAvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgPC9sb2NhdGlvbnM+Ci08L3RhcmdldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNC50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTQudHBkCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMTUxMjdiLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNC50cGQKKysrIC9kZXYvbnVsbApAQCAtMSw5ICswLDAgQEAKLXRhcmdldCAiamdpdC00LjE0IiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQotCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCi1pbmNsdWRlICJvcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQiCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMTktMTIvMjAxOTEyMTgxMDAwLyIgewotCW9yZy5lY2xpcHNlLm9zZ2kgbGF6eQotfQotCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTUudGFyZ2V0IGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE1LnRhcmdldApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTg1NDUxMS4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTUudGFyZ2V0CisrKyAvZGV2L251bGwKQEAgLTEsOTcgKzAsMCBAQAotPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Ci08P3BkZT8+Ci08IS0tIGdlbmVyYXRlZCB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9lY2xpcHNlLWNiaS90YXJnZXRwbGF0Zm9ybS1kc2wgLS0+Ci08dGFyZ2V0IG5hbWU9ImpnaXQtNC4xNSIgc2VxdWVuY2VOdW1iZXI9IjE2Mzk0MzgxMzYiPgotICA8bG9jYXRpb25zPgotICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8cmVwb3NpdG9yeSBpZD0iamV0dHktOS40LngiIGxvY2F0aW9uPSJodHRwczovL2FyY2hpdmUuZWNsaXBzZS5vcmcvamV0dHkvdXBkYXRlcy9qZXR0eS1idW5kbGVzLTkueC9qZXR0eS1idW5kbGVzLTkueC85LjQuNDMudjIwMjEwNjI5LyIvPgotICAgIDwvbG9jYXRpb24+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5nb29nbGUuZ3Nvbi5zb3VyY2UiIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2guc291cmNlIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYi5zb3VyY2UiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaCIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+Ci0gICAgICA8dW5pdCBpZD0iamF2YWV3YWguc291cmNlIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0IiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuaTJwLmNyeXB0by5lZGRzYSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuaTJwLmNyeXB0by5lZGRzYS5zb3VyY2UiIHZlcnNpb249IjAuMy4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5hbnQiIHZlcnNpb249IjEuMTAuMTIudjIwMjExMTAyLTE0NTIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudC5zb3VyY2UiIHZlcnNpb249IjEuMTAuMTIudjIwMjExMTAyLTE0NTIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMiIHZlcnNpb249IjEuMTQuMC52MjAyMDA4MTgtMTQyMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYy5zb3VyY2UiIHZlcnNpb249IjEuMTQuMC52MjAyMDA4MTgtMTQyMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcyIgdmVyc2lvbj0iMS4yMS4wLnYyMDIxMTEwMy0yMTAwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLnNvdXJjZSIgdmVyc2lvbj0iMS4yMS4wLnYyMDIxMTEwMy0yMTAwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmciIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuc291cmNlIiB2ZXJzaW9uPSIxLjIuMC52MjAxODA0MDktMTUwMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudCIgdmVyc2lvbj0iNC41LjEzLnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iNC41LjEzLnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZS5zb3VyY2UiIHZlcnNpb249IjQuNC4xNC52MjAyMTAxMjgtMjIyNSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5vc2dpIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5vc2dpLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQuc2Z0cCIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQuc2Z0cC5zb3VyY2UiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGoiIHZlcnNpb249IjMuMjAuMi52MjAyMTA3MDYtMTEwNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hc3NlcnRqLnNvdXJjZSIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BnIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGcuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeCIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BraXguc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdiIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3Byb3Yuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbCIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3V0aWwuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QiIHZlcnNpb249IjIuMi4wLnYyMDIxMDcxMS0wODIxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LnNvdXJjZSIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QuY29yZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QuY29yZS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmxpYnJhcnkiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmxpYnJhcnkuc291cmNlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA1MjQtMjI0NiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5qdW5pdCIgdmVyc2lvbj0iNC4xMy4yLnYyMDIxMTAxOC0xOTU2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0LnNvdXJjZSIgdmVyc2lvbj0iNC4xMy4yLnYyMDIxMTAxOC0xOTU2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmtvaHN1a2UuYXJnczRqIiB2ZXJzaW9uPSIyLjMzLjAudjIwMTYwMzIzLTIyMTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGouc291cmNlIiB2ZXJzaW9uPSIyLjMzLjAudjIwMTYwMzIzLTIyMTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0byIgdmVyc2lvbj0iMi4yMy4wLnYyMDIwMDMxMC0xNjQyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm1vY2tpdG8uc291cmNlIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcub2JqZW5lc2lzIiB2ZXJzaW9uPSIyLjYuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMuc291cmNlIiB2ZXJzaW9uPSIyLjYuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5hcGkiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5hcGkuc291cmNlIiB2ZXJzaW9uPSIxLjcuMzAudjIwMjAwMjA0LTIxNTAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuc2xmNGouYmluZGluZy5zaW1wbGUiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy50dWthYW5pLnh6IiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy50dWthYW5pLnh6LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMjEwNjI0LTEyNTkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAyMTEyMTMxNzM4MTMvcmVwb3NpdG9yeSIvPgotICAgIDwvbG9jYXRpb24+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2Uub3NnaSIgdmVyc2lvbj0iMC4wLjAiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMjAtMDMvMjAyMDAzMTgxMDAwLyIvPgotICAgIDwvbG9jYXRpb24+Ci0gIDwvbG9jYXRpb25zPgotPC90YXJnZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTUudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE1LnRwZApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzcwMmJhZS4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTUudHBkCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi10YXJnZXQgImpnaXQtNC4xNSIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKLQotaW5jbHVkZSAicHJvamVjdHMvamV0dHktOS40LngudHBkIgotaW5jbHVkZSAib3JiaXQvUjIwMjExMjEzMTczODEzLTIwMjEtMTIudHBkIgotCi1sb2NhdGlvbiAiaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9yZWxlYXNlcy8yMDIwLTAzLzIwMjAwMzE4MTAwMC8iIHsKLQlvcmcuZWNsaXBzZS5vc2dpIGxhenkKLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNi50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTYudGFyZ2V0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMDJmYWYxLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNi50YXJnZXQKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KLTw/cGRlPz4KLTwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjE2IiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOCI+Ci0gIDxsb2NhdGlvbnM+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uLnNvdXJjZSIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2giIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudCIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50LnNvdXJjZSIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UiIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0aiIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGouc291cmNlIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGciIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdCIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3Quc291cmNlIiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0IiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQuc291cmNlIiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGoiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0by5zb3VyY2UiIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcy5zb3VyY2UiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHoiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHouc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDIxMTIxMzE3MzgxMy9yZXBvc2l0b3J5Ii8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAyMC0wNi8iLz4KLSAgICA8L2xvY2F0aW9uPgotICA8L2xvY2F0aW9ucz4KLTwvdGFyZ2V0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE2LnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNi50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEzZTA1NmEuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE2LnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotdGFyZ2V0ICJqZ2l0LTQuMTYiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0KLWluY2x1ZGUgInByb2plY3RzL2pldHR5LTkuNC54LnRwZCIKLWluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKLQotbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAyMC0wNi8iIHsKLQlvcmcuZWNsaXBzZS5vc2dpIGxhenkKLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNy50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTcudGFyZ2V0CmluZGV4IGEwZWE4NjAuLjkxMzcwY2MgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNy50YXJnZXQKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE3LnRhcmdldApAQCAtMSwyOCArMSwyNiBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CiA8P3BkZT8+CiA8IS0tIGdlbmVyYXRlZCB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9lY2xpcHNlLWNiaS90YXJnZXRwbGF0Zm9ybS1kc2wgLS0+Ci08dGFyZ2V0IG5hbWU9ImpnaXQtNC4xNyIgc2VxdWVuY2VOdW1iZXI9IjE2Mzk0MzgxMzkiPgorPHRhcmdldCBuYW1lPSJqZ2l0LTQuMTciIHNlcXVlbmNlTnVtYmVyPSIxNjQxMzkzOTU0Ij4KICAgPGxvY2F0aW9ucz4KICAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHJlcG9zaXRvcnkgaWQ9ImpldHR5LTkuNC54IiBsb2NhdGlvbj0iaHR0cHM6Ly9hcmNoaXZlLmVjbGlwc2Uub3JnL2pldHR5L3VwZGF0ZXMvamV0dHktYnVuZGxlcy05LngvamV0dHktYnVuZGxlcy05LngvOS40LjQzLnYyMDIxMDYyOS8iLz4KKyAgICAgIDx1bml0IGlkPSJqYWthcnRhLnNlcnZsZXQtYXBpIiB2ZXJzaW9uPSI0LjAuMCIvPgorICAgICAgPHVuaXQgaWQ9Impha2FydGEuc2VydmxldC1hcGkuc291cmNlIiB2ZXJzaW9uPSI0LjAuMCIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS0xMC4wLngiIGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL2VjbGlwc2UvamV0dHkvMTAuMC42LyIvPgogICAgIDwvbG9jYXRpb24+CiAgICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+CiAgICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgpAQCAtMzEsMTAgKzI5LDEyIEBACiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoLnNvdXJjZSIgdmVyc2lvbj0iMC4xLjU1LnYyMDE5MDQwNC0xOTAyIi8+CiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYiIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgogICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIuc291cmNlIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEiIHZlcnNpb249IjUuOC4wLnYyMDIxMDUwMy0wMzQzIi8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEuc291cmNlIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA1MDMtMDM0MyIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA0MDYtMTAwNCIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtLnNvdXJjZSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNDA2LTEwMDQiLz4KICAgICAgIDx1bml0IGlkPSJqYXZhZXdhaCIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+CiAgICAgICA8dW5pdCBpZD0iamF2YWV3YWguc291cmNlIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0IiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KICAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+CiAgICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgogICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTcudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE3LnRwZAppbmRleCBkNTQxNTdhLi5jMmIxM2NjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTcudHBkCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xNy50cGQKQEAgLTEsNiArMSw2IEBACiB0YXJnZXQgImpnaXQtNC4xNyIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKIAotaW5jbHVkZSAicHJvamVjdHMvamV0dHktOS40LngudHBkIgoraW5jbHVkZSAicHJvamVjdHMvamV0dHktMTAuMC54LnRwZCIKIGluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKIAogbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAyMC0wOS8iIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xOC50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTgudGFyZ2V0CmluZGV4IDE2OGFlMmMuLjI4MjA0ZjUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xOC50YXJnZXQKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE4LnRhcmdldApAQCAtMSwyOCArMSwyNiBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CiA8P3BkZT8+CiA8IS0tIGdlbmVyYXRlZCB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9lY2xpcHNlLWNiaS90YXJnZXRwbGF0Zm9ybS1kc2wgLS0+Ci08dGFyZ2V0IG5hbWU9ImpnaXQtNC4xOCIgc2VxdWVuY2VOdW1iZXI9IjE2Mzk0MzgxMzkiPgorPHRhcmdldCBuYW1lPSJqZ2l0LTQuMTgiIHNlcXVlbmNlTnVtYmVyPSIxNjQxMzk0MTIyIj4KICAgPGxvY2F0aW9ucz4KICAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHJlcG9zaXRvcnkgaWQ9ImpldHR5LTkuNC54IiBsb2NhdGlvbj0iaHR0cHM6Ly9hcmNoaXZlLmVjbGlwc2Uub3JnL2pldHR5L3VwZGF0ZXMvamV0dHktYnVuZGxlcy05LngvamV0dHktYnVuZGxlcy05LngvOS40LjQzLnYyMDIxMDYyOS8iLz4KKyAgICAgIDx1bml0IGlkPSJqYWthcnRhLnNlcnZsZXQtYXBpIiB2ZXJzaW9uPSI0LjAuMCIvPgorICAgICAgPHVuaXQgaWQ9Impha2FydGEuc2VydmxldC1hcGkuc291cmNlIiB2ZXJzaW9uPSI0LjAuMCIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS0xMC4wLngiIGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL2VjbGlwc2UvamV0dHkvMTAuMC42LyIvPgogICAgIDwvbG9jYXRpb24+CiAgICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+CiAgICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgpAQCAtMzEsMTAgKzI5LDEyIEBACiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoLnNvdXJjZSIgdmVyc2lvbj0iMC4xLjU1LnYyMDE5MDQwNC0xOTAyIi8+CiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYiIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgogICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIuc291cmNlIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEiIHZlcnNpb249IjUuOC4wLnYyMDIxMDUwMy0wMzQzIi8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEuc291cmNlIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA1MDMtMDM0MyIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA0MDYtMTAwNCIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtLnNvdXJjZSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNDA2LTEwMDQiLz4KICAgICAgIDx1bml0IGlkPSJqYXZhZXdhaCIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+CiAgICAgICA8dW5pdCBpZD0iamF2YWV3YWguc291cmNlIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0IiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KICAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+CiAgICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgogICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTgudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE4LnRwZAppbmRleCA1ODg2YjcxLi5mZjY3NDFkIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTgudHBkCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xOC50cGQKQEAgLTEsNiArMSw2IEBACiB0YXJnZXQgImpnaXQtNC4xOCIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKIAotaW5jbHVkZSAicHJvamVjdHMvamV0dHktOS40LngudHBkIgoraW5jbHVkZSAicHJvamVjdHMvamV0dHktMTAuMC54LnRwZCIKIGluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKIAogbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvMjAyMC0xMi8iIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xOS50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTkudGFyZ2V0CmluZGV4IGE2ODZiNWYuLjIwYjA1MjkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xOS50YXJnZXQKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE5LnRhcmdldApAQCAtMSwyOCArMSwyNiBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CiA8P3BkZT8+CiA8IS0tIGdlbmVyYXRlZCB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9lY2xpcHNlLWNiaS90YXJnZXRwbGF0Zm9ybS1kc2wgLS0+Ci08dGFyZ2V0IG5hbWU9ImpnaXQtNC4xOS1zdGFnaW5nIiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzNiI+Cis8dGFyZ2V0IG5hbWU9ImpnaXQtNC4xOS1zdGFnaW5nIiBzZXF1ZW5jZU51bWJlcj0iMTY0MTM5NDE0MSI+CiAgIDxsb2NhdGlvbnM+CiAgICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+CisgICAgICA8dW5pdCBpZD0iamFrYXJ0YS5zZXJ2bGV0LWFwaSIgdmVyc2lvbj0iNC4wLjAiLz4KKyAgICAgIDx1bml0IGlkPSJqYWthcnRhLnNlcnZsZXQtYXBpLnNvdXJjZSIgdmVyc2lvbj0iNC4wLjAiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8iIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbCIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4LnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8cmVwb3NpdG9yeSBpZD0iamV0dHktMTAuMC54IiBsb2NhdGlvbj0iaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9lY2xpcHNlL2pldHR5LzEwLjAuNi8iLz4KICAgICA8L2xvY2F0aW9uPgogICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgogICAgICAgPHVuaXQgaWQ9ImNvbS5nb29nbGUuZ3NvbiIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KQEAgLTMxLDEwICsyOSwxMiBAQAogICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgogICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KICAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA1MDMtMDM0MyIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnNvdXJjZSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNTAzLTAzNDMiLz4KKyAgICAgIDx1bml0IGlkPSJjb20uc3VuLmpuYS5wbGF0Zm9ybSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNDA2LTEwMDQiLz4KKyAgICAgIDx1bml0IGlkPSJjb20uc3VuLmpuYS5wbGF0Zm9ybS5zb3VyY2UiIHZlcnNpb249IjUuOC4wLnYyMDIxMDQwNi0xMDA0Ii8+CiAgICAgICA8dW5pdCBpZD0iamF2YWV3YWgiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgogICAgICAgPHVuaXQgaWQ9ImphdmFld2FoLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldCIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+CiAgICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgogICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudCIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KICAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE5LnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4xOS50cGQKaW5kZXggMDIyMTc5Ni4uOGZjYWE0NyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjE5LnRwZAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMTkudHBkCkBAIC0xLDYgKzEsNiBAQAogdGFyZ2V0ICJqZ2l0LTQuMTktc3RhZ2luZyIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKIAotaW5jbHVkZSAicHJvamVjdHMvamV0dHktOS40LngudHBkIgoraW5jbHVkZSAicHJvamVjdHMvamV0dHktMTAuMC54LnRwZCIKIGluY2x1ZGUgIm9yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZCIKIAogbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvc3RhZ2luZy8yMDIxLTAzLyIgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIwLnRhcmdldCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMC50YXJnZXQKaW5kZXggODYxODNiZi4uMTUzMzE0ZCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIwLnRhcmdldAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMjAudGFyZ2V0CkBAIC0xLDI4ICsxLDI2IEBACiA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KIDw/cGRlPz4KIDwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjIwIiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOSI+Cis8dGFyZ2V0IG5hbWU9ImpnaXQtNC4yMCIgc2VxdWVuY2VOdW1iZXI9IjE2NDEzOTQxNTIiPgogICA8bG9jYXRpb25zPgogICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8cmVwb3NpdG9yeSBpZD0iamV0dHktOS40LngiIGxvY2F0aW9uPSJodHRwczovL2FyY2hpdmUuZWNsaXBzZS5vcmcvamV0dHkvdXBkYXRlcy9qZXR0eS1idW5kbGVzLTkueC9qZXR0eS1idW5kbGVzLTkueC85LjQuNDMudjIwMjEwNjI5LyIvPgorICAgICAgPHVuaXQgaWQ9Impha2FydGEuc2VydmxldC1hcGkiIHZlcnNpb249IjQuMC4wIi8+CisgICAgICA8dW5pdCBpZD0iamFrYXJ0YS5zZXJ2bGV0LWFwaS5zb3VyY2UiIHZlcnNpb249IjQuMC4wIi8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHJlcG9zaXRvcnkgaWQ9ImpldHR5LTEwLjAueCIgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvZWNsaXBzZS9qZXR0eS8xMC4wLjYvIi8+CiAgICAgPC9sb2NhdGlvbj4KICAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KICAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+CkBAIC0zMSwxMCArMjksMTIgQEAKICAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2guc291cmNlIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KICAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+CiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYi5zb3VyY2UiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KKyAgICAgIDx1bml0IGlkPSJjb20uc3VuLmpuYSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNTAzLTAzNDMiLz4KKyAgICAgIDx1bml0IGlkPSJjb20uc3VuLmpuYS5zb3VyY2UiIHZlcnNpb249IjUuOC4wLnYyMDIxMDUwMy0wMzQzIi8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEucGxhdGZvcm0iIHZlcnNpb249IjUuOC4wLnYyMDIxMDQwNi0xMDA0Ii8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEucGxhdGZvcm0uc291cmNlIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA0MDYtMTAwNCIvPgogICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KICAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgogICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KICAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+CiAgICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMC50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMjAudHBkCmluZGV4IDNjYWQxMWYuLjMzYWRiNzIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMC50cGQKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIwLnRwZApAQCAtMSw2ICsxLDYgQEAKIHRhcmdldCAiamdpdC00LjIwIiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQogCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCitpbmNsdWRlICJwcm9qZWN0cy9qZXR0eS0xMC4wLngudHBkIgogaW5jbHVkZSAib3JiaXQvUjIwMjExMjEzMTczODEzLTIwMjEtMTIudHBkIgogCiBsb2NhdGlvbiAiaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9yZWxlYXNlcy8yMDIxLTA2LyIgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIxLnRhcmdldCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMS50YXJnZXQKaW5kZXggNGQ2YmVlZi4uMDdkZTFhZiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIxLnRhcmdldAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMjEudGFyZ2V0CkBAIC0xLDI4ICsxLDI2IEBACiA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KIDw/cGRlPz4KIDwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjIxIiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOCI+Cis8dGFyZ2V0IG5hbWU9ImpnaXQtNC4yMSIgc2VxdWVuY2VOdW1iZXI9IjE2NDEzOTQxNzAiPgogICA8bG9jYXRpb25zPgogICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8cmVwb3NpdG9yeSBpZD0iamV0dHktOS40LngiIGxvY2F0aW9uPSJodHRwczovL2FyY2hpdmUuZWNsaXBzZS5vcmcvamV0dHkvdXBkYXRlcy9qZXR0eS1idW5kbGVzLTkueC9qZXR0eS1idW5kbGVzLTkueC85LjQuNDMudjIwMjEwNjI5LyIvPgorICAgICAgPHVuaXQgaWQ9Impha2FydGEuc2VydmxldC1hcGkiIHZlcnNpb249IjQuMC4wIi8+CisgICAgICA8dW5pdCBpZD0iamFrYXJ0YS5zZXJ2bGV0LWFwaS5zb3VyY2UiIHZlcnNpb249IjQuMC4wIi8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHJlcG9zaXRvcnkgaWQ9ImpldHR5LTEwLjAueCIgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvZWNsaXBzZS9qZXR0eS8xMC4wLjYvIi8+CiAgICAgPC9sb2NhdGlvbj4KICAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KICAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+CkBAIC0zMSwxMCArMjksMTIgQEAKICAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2guc291cmNlIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KICAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+CiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYi5zb3VyY2UiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KKyAgICAgIDx1bml0IGlkPSJjb20uc3VuLmpuYSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNTAzLTAzNDMiLz4KKyAgICAgIDx1bml0IGlkPSJjb20uc3VuLmpuYS5zb3VyY2UiIHZlcnNpb249IjUuOC4wLnYyMDIxMDUwMy0wMzQzIi8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEucGxhdGZvcm0iIHZlcnNpb249IjUuOC4wLnYyMDIxMDQwNi0xMDA0Ii8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEucGxhdGZvcm0uc291cmNlIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA0MDYtMTAwNCIvPgogICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KICAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgogICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KICAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+CiAgICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMS50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMjEudHBkCmluZGV4IGQzYmJiZGIuLmFkZjYyZDUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMS50cGQKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIxLnRwZApAQCAtMSw2ICsxLDYgQEAKIHRhcmdldCAiamdpdC00LjIxIiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQogCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCitpbmNsdWRlICJwcm9qZWN0cy9qZXR0eS0xMC4wLngudHBkIgogaW5jbHVkZSAib3JiaXQvUjIwMjExMjEzMTczODEzLTIwMjEtMTIudHBkIgogCiBsb2NhdGlvbiAiaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9yZWxlYXNlcy8yMDIxLTA5LyIgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjYudGFyZ2V0IGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjIyLnRhcmdldApzaW1pbGFyaXR5IGluZGV4IDc1JQpyZW5hbWUgZnJvbSBvcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuNi50YXJnZXQKcmVuYW1lIHRvIG9yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMi50YXJnZXQKaW5kZXggZDU2ZjNkNi4uOTdiNWZiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjYudGFyZ2V0CisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMi50YXJnZXQKQEAgLTEsMjggKzEsMjYgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgogPD9wZGU/PgogPCEtLSBnZW5lcmF0ZWQgd2l0aCBodHRwczovL2dpdGh1Yi5jb20vZWNsaXBzZS1jYmkvdGFyZ2V0cGxhdGZvcm0tZHNsIC0tPgotPHRhcmdldCBuYW1lPSJqZ2l0LTQuNiIgc2VxdWVuY2VOdW1iZXI9IjE2Mzk0MzgxNDkiPgorPHRhcmdldCBuYW1lPSJqZ2l0LTQuMjIiIHNlcXVlbmNlTnVtYmVyPSIxNjQxMzk0MTc3Ij4KICAgPGxvY2F0aW9ucz4KICAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHJlcG9zaXRvcnkgaWQ9ImpldHR5LTkuNC54IiBsb2NhdGlvbj0iaHR0cHM6Ly9hcmNoaXZlLmVjbGlwc2Uub3JnL2pldHR5L3VwZGF0ZXMvamV0dHktYnVuZGxlcy05LngvamV0dHktYnVuZGxlcy05LngvOS40LjQzLnYyMDIxMDYyOS8iLz4KKyAgICAgIDx1bml0IGlkPSJqYWthcnRhLnNlcnZsZXQtYXBpIiB2ZXJzaW9uPSI0LjAuMCIvPgorICAgICAgPHVuaXQgaWQ9Impha2FydGEuc2VydmxldC1hcGkuc291cmNlIiB2ZXJzaW9uPSI0LjAuMCIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjEwLjAuNiIvPgorICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iMTAuMC42Ii8+CisgICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSIxMC4wLjYiLz4KKyAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS0xMC4wLngiIGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL2VjbGlwc2UvamV0dHkvMTAuMC42LyIvPgogICAgIDwvbG9jYXRpb24+CiAgICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+CiAgICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgpAQCAtMzEsMTAgKzI5LDEyIEBACiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoLnNvdXJjZSIgdmVyc2lvbj0iMC4xLjU1LnYyMDE5MDQwNC0xOTAyIi8+CiAgICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYiIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgogICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIuc291cmNlIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEiIHZlcnNpb249IjUuOC4wLnYyMDIxMDUwMy0wMzQzIi8+CisgICAgICA8dW5pdCBpZD0iY29tLnN1bi5qbmEuc291cmNlIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA1MDMtMDM0MyIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtIiB2ZXJzaW9uPSI1LjguMC52MjAyMTA0MDYtMTAwNCIvPgorICAgICAgPHVuaXQgaWQ9ImNvbS5zdW4uam5hLnBsYXRmb3JtLnNvdXJjZSIgdmVyc2lvbj0iNS44LjAudjIwMjEwNDA2LTEwMDQiLz4KICAgICAgIDx1bml0IGlkPSJqYXZhZXdhaCIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+CiAgICAgICA8dW5pdCBpZD0iamF2YWV3YWguc291cmNlIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0IiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KICAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+CiAgICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgogICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+CkBAIC05MSw3ICs5MSw3IEBACiAgICAgPC9sb2NhdGlvbj4KICAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KICAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvbmVvbi8iLz4KKyAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMjEtMTIvIi8+CiAgICAgPC9sb2NhdGlvbj4KICAgPC9sb2NhdGlvbnM+CiA8L3RhcmdldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC4yMi50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMjIudHBkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM3YzkzYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuMjIudHBkCkBAIC0wLDAgKzEsOCBAQAordGFyZ2V0ICJqZ2l0LTQuMjIiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCisKK2luY2x1ZGUgInByb2plY3RzL2pldHR5LTEwLjAueC50cGQiCitpbmNsdWRlICJvcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQiCisKK2xvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMjEtMTIvIiB7CisJb3JnLmVjbGlwc2Uub3NnaSBsYXp5Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuNi50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuNi50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzNDg5NzQuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjYudHBkCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi10YXJnZXQgImpnaXQtNC42IiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQotCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCi1pbmNsdWRlICJvcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQiCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzL25lb24vIiB7Ci0Jb3JnLmVjbGlwc2Uub3NnaSBsYXp5Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjcudGFyZ2V0IGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjcudGFyZ2V0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4ZjgyY2ZhLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC43LnRhcmdldAorKysgL2Rldi9udWxsCkBAIC0xLDk3ICswLDAgQEAKLTw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgotPD9wZGU/PgotPCEtLSBnZW5lcmF0ZWQgd2l0aCBodHRwczovL2dpdGh1Yi5jb20vZWNsaXBzZS1jYmkvdGFyZ2V0cGxhdGZvcm0tZHNsIC0tPgotPHRhcmdldCBuYW1lPSJqZ2l0LTQuNyIgc2VxdWVuY2VOdW1iZXI9IjE2Mzk0MzgxNDUiPgotICA8bG9jYXRpb25zPgotICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNsaWVudC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jb250aW51YXRpb24uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8iIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pby5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlciIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZlci5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXgiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLmFqYXguc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8cmVwb3NpdG9yeSBpZD0iamV0dHktOS40LngiIGxvY2F0aW9uPSJodHRwczovL2FyY2hpdmUuZWNsaXBzZS5vcmcvamV0dHkvdXBkYXRlcy9qZXR0eS1idW5kbGVzLTkueC9qZXR0eS1idW5kbGVzLTkueC85LjQuNDMudjIwMjEwNjI5LyIvPgotICAgIDwvbG9jYXRpb24+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5nb29nbGUuZ3Nvbi5zb3VyY2UiIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2guc291cmNlIiB2ZXJzaW9uPSIwLjEuNTUudjIwMTkwNDA0LTE5MDIiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYi5zb3VyY2UiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaCIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+Ci0gICAgICA8dW5pdCBpZD0iamF2YWV3YWguc291cmNlIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0IiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldC5zb3VyY2UiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuaTJwLmNyeXB0by5lZGRzYSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuaTJwLmNyeXB0by5lZGRzYS5zb3VyY2UiIHZlcnNpb249IjAuMy4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5hbnQiIHZlcnNpb249IjEuMTAuMTIudjIwMjExMTAyLTE0NTIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudC5zb3VyY2UiIHZlcnNpb249IjEuMTAuMTIudjIwMjExMTAyLTE0NTIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMiIHZlcnNpb249IjEuMTQuMC52MjAyMDA4MTgtMTQyMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYy5zb3VyY2UiIHZlcnNpb249IjEuMTQuMC52MjAyMDA4MTgtMTQyMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcyIgdmVyc2lvbj0iMS4yMS4wLnYyMDIxMTEwMy0yMTAwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLnNvdXJjZSIgdmVyc2lvbj0iMS4yMS4wLnYyMDIxMTEwMy0yMTAwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmciIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuc291cmNlIiB2ZXJzaW9uPSIxLjIuMC52MjAxODA0MDktMTUwMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudCIgdmVyc2lvbj0iNC41LjEzLnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iNC41LjEzLnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZS5zb3VyY2UiIHZlcnNpb249IjQuNC4xNC52MjAyMTAxMjgtMjIyNSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5vc2dpIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5vc2dpLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQuc2Z0cCIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQuc2Z0cC5zb3VyY2UiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGoiIHZlcnNpb249IjMuMjAuMi52MjAyMTA3MDYtMTEwNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hc3NlcnRqLnNvdXJjZSIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BnIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGcuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeCIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BraXguc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdiIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3Byb3Yuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbCIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3V0aWwuc291cmNlIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QiIHZlcnNpb249IjIuMi4wLnYyMDIxMDcxMS0wODIxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LnNvdXJjZSIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QuY29yZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QuY29yZS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmxpYnJhcnkiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmxpYnJhcnkuc291cmNlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA1MjQtMjI0NiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5qdW5pdCIgdmVyc2lvbj0iNC4xMy4yLnYyMDIxMTAxOC0xOTU2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0LnNvdXJjZSIgdmVyc2lvbj0iNC4xMy4yLnYyMDIxMTAxOC0xOTU2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmtvaHN1a2UuYXJnczRqIiB2ZXJzaW9uPSIyLjMzLjAudjIwMTYwMzIzLTIyMTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGouc291cmNlIiB2ZXJzaW9uPSIyLjMzLjAudjIwMTYwMzIzLTIyMTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0byIgdmVyc2lvbj0iMi4yMy4wLnYyMDIwMDMxMC0xNjQyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm1vY2tpdG8uc291cmNlIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcub2JqZW5lc2lzIiB2ZXJzaW9uPSIyLjYuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMuc291cmNlIiB2ZXJzaW9uPSIyLjYuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5hcGkiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5hcGkuc291cmNlIiB2ZXJzaW9uPSIxLjcuMzAudjIwMjAwMjA0LTIxNTAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuc2xmNGouYmluZGluZy5zaW1wbGUiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy50dWthYW5pLnh6IiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy50dWthYW5pLnh6LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMjEwNjI0LTEyNTkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAyMTEyMTMxNzM4MTMvcmVwb3NpdG9yeSIvPgotICAgIDwvbG9jYXRpb24+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2Uub3NnaSIgdmVyc2lvbj0iMC4wLjAiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGxvY2F0aW9uPSJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzL294eWdlbi8iLz4KLSAgICA8L2xvY2F0aW9uPgotICA8L2xvY2F0aW9ucz4KLTwvdGFyZ2V0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjcudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjcudHBkCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5NzczZDU0Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC43LnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotdGFyZ2V0ICJqZ2l0LTQuNyIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKLQotaW5jbHVkZSAicHJvamVjdHMvamV0dHktOS40LngudHBkIgotaW5jbHVkZSAib3JiaXQvUjIwMjExMjEzMTczODEzLTIwMjEtMTIudHBkIgotCi1sb2NhdGlvbiAiaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9yZWxlYXNlcy9veHlnZW4vIiB7Ci0Jb3JnLmVjbGlwc2Uub3NnaSBsYXp5Ci19CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOC50YXJnZXQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOC50YXJnZXQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjMDJlZjUuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjgudGFyZ2V0CisrKyAvZGV2L251bGwKQEAgLTEsOTcgKzAsMCBAQAotPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Ci08P3BkZT8+Ci08IS0tIGdlbmVyYXRlZCB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9lY2xpcHNlLWNiaS90YXJnZXRwbGF0Zm9ybS1kc2wgLS0+Ci08dGFyZ2V0IG5hbWU9ImpnaXQtNC44IiBzZXF1ZW5jZU51bWJlcj0iMTYzOTQzODEzOSI+Ci0gIDxsb2NhdGlvbnM+Ci0gICAgPGxvY2F0aW9uIGluY2x1ZGVNb2RlPSJzbGljZXIiIGluY2x1ZGVBbGxQbGF0Zm9ybXM9ImZhbHNlIiBpbmNsdWRlU291cmNlPSJ0cnVlIiBpbmNsdWRlQ29uZmlndXJlUGhhc2U9InRydWUiIHR5cGU9Ikluc3RhbGxhYmxlVW5pdCI+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5pbyIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDxyZXBvc2l0b3J5IGlkPSJqZXR0eS05LjQueCIgbG9jYXRpb249Imh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIi8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24iIHZlcnNpb249IjIuOC44LnYyMDIxMTAyOS0wODM4Ii8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmdvb2dsZS5nc29uLnNvdXJjZSIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0LmpzY2giIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaC5zb3VyY2UiIHZlcnNpb249IjAuMS41NS52MjAxOTA0MDQtMTkwMiIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIiIHZlcnNpb249IjEuMS4xLnYyMDEyMDUxMDIzMDUiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uamNyYWZ0Lmp6bGliLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoIiB2ZXJzaW9uPSIxLjEuMTMudjIwMjExMDI5LTA4MzkiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZhZXdhaC5zb3VyY2UiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQiIHZlcnNpb249IjMuMS4wLnYyMDE0MTAxNjE4MDAiLz4KLSAgICAgIDx1bml0IGlkPSJqYXZheC5zZXJ2bGV0LnNvdXJjZSIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA3LTE0MTAiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNi0xNTM0Ii8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSIgdmVyc2lvbj0iMC4zLjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmFudCIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50LnNvdXJjZSIgdmVyc2lvbj0iMS4xMC4xMi52MjAyMTExMDItMTQ1MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSIgdmVyc2lvbj0iMS4xNC4wLnYyMDIwMDgxOC0xNDIyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIiB2ZXJzaW9uPSIxLjIxLjAudjIwMjExMTAzLTIxMDAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UiIHZlcnNpb249IjEuMi4wLnYyMDE4MDQwOS0xNTAyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIiB2ZXJzaW9uPSI0LjUuMTMudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSIgdmVyc2lvbj0iNC40LjE0LnYyMDIxMDEyOC0yMjI1Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0aiIgdmVyc2lvbj0iMy4yMC4yLnYyMDIxMDcwNi0xMTA0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFzc2VydGouc291cmNlIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGciIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwOTIzLTE0MDEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIiB2ZXJzaW9uPSIxLjY5LjAudjIwMjEwNzEzLTE5MjQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYm91bmN5Y2FzdGxlLmJjdXRpbC5zb3VyY2UiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdCIgdmVyc2lvbj0iMi4yLjAudjIwMjEwNzExLTA4MjEiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3Quc291cmNlIiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UiIHZlcnNpb249IjEuMy4wLnYyMDE4MDUyNC0yMjQ2Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmp1bml0IiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQuc291cmNlIiB2ZXJzaW9uPSI0LjEzLjIudjIwMjExMDE4LTE5NTYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcua29oc3VrZS5hcmdzNGoiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UiIHZlcnNpb249IjIuMzMuMC52MjAxNjAzMjMtMjIxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvIiB2ZXJzaW9uPSIyLjIzLjAudjIwMjAwMzEwLTE2NDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcubW9ja2l0by5zb3VyY2UiIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5vYmplbmVzaXMiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcy5zb3VyY2UiIHZlcnNpb249IjIuNi4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmFwaS5zb3VyY2UiIHZlcnNpb249IjEuNy4zMC52MjAyMDAyMDQtMjE1MCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5zbGY0ai5iaW5kaW5nLnNpbXBsZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHoiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnR1a2FhbmkueHouc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAyMTA2MjQtMTI1OSIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDIxMTIxMzE3MzgxMy9yZXBvc2l0b3J5Ii8+Ci0gICAgPC9sb2NhdGlvbj4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5vc2dpIiB2ZXJzaW9uPSIwLjAuMCIvPgotICAgICAgPHJlcG9zaXRvcnkgbG9jYXRpb249Imh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvcmVsZWFzZXMvcGhvdG9uLyIvPgotICAgIDwvbG9jYXRpb24+Ci0gIDwvbG9jYXRpb25zPgotPC90YXJnZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOC50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOC50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVmYTgxY2QuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjgudHBkCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi10YXJnZXQgImpnaXQtNC44IiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQotCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCi1pbmNsdWRlICJvcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQiCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzL3Bob3Rvbi8iIHsKLQlvcmcuZWNsaXBzZS5vc2dpIGxhenkKLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC45LnRhcmdldCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L2pnaXQtNC45LnRhcmdldApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTk3YWJiNC4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOS50YXJnZXQKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KLTw/cGRlPz4KLTwhLS0gZ2VuZXJhdGVkIHdpdGggaHR0cHM6Ly9naXRodWIuY29tL2VjbGlwc2UtY2JpL3RhcmdldHBsYXRmb3JtLWRzbCAtLT4KLTx0YXJnZXQgbmFtZT0iamdpdC00LjkiIHNlcXVlbmNlTnVtYmVyPSIxNjM5NDM4MTM4Ij4KLSAgPGxvY2F0aW9ucz4KLSAgICA8bG9jYXRpb24gaW5jbHVkZU1vZGU9InNsaWNlciIgaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVTb3VyY2U9InRydWUiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0idHJ1ZSIgdHlwZT0iSW5zdGFsbGFibGVVbml0Ij4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5jbGllbnQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuY29udGludWF0aW9uLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5Lmh0dHAiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5odHRwLnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LmlvIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZWN1cml0eS5zb3VyY2UiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIiIHZlcnNpb249IjkuNC40My52MjAyMTA2MjkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkuc2VydmxldCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbCIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmpldHR5LnV0aWwuc291cmNlIiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IiB2ZXJzaW9uPSI5LjQuNDMudjIwMjEwNjI5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4LnNvdXJjZSIgdmVyc2lvbj0iOS40LjQzLnYyMDIxMDYyOSIvPgotICAgICAgPHJlcG9zaXRvcnkgaWQ9ImpldHR5LTkuNC54IiBsb2NhdGlvbj0iaHR0cHM6Ly9hcmNoaXZlLmVjbGlwc2Uub3JnL2pldHR5L3VwZGF0ZXMvamV0dHktYnVuZGxlcy05LngvamV0dHktYnVuZGxlcy05LngvOS40LjQzLnYyMDIxMDYyOS8iLz4KLSAgICA8L2xvY2F0aW9uPgotICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9ImNvbS5nb29nbGUuZ3NvbiIgdmVyc2lvbj0iMi44LjgudjIwMjExMDI5LTA4MzgiLz4KLSAgICAgIDx1bml0IGlkPSJjb20uZ29vZ2xlLmdzb24uc291cmNlIiB2ZXJzaW9uPSIyLjguOC52MjAyMTEwMjktMDgzOCIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanNjaCIgdmVyc2lvbj0iMC4xLjU1LnYyMDE5MDQwNC0xOTAyIi8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qc2NoLnNvdXJjZSIgdmVyc2lvbj0iMC4xLjU1LnYyMDE5MDQwNC0xOTAyIi8+Ci0gICAgICA8dW5pdCBpZD0iY29tLmpjcmFmdC5qemxpYiIgdmVyc2lvbj0iMS4xLjEudjIwMTIwNTEwMjMwNSIvPgotICAgICAgPHVuaXQgaWQ9ImNvbS5qY3JhZnQuanpsaWIuc291cmNlIiB2ZXJzaW9uPSIxLjEuMS52MjAxMjA1MTAyMzA1Ii8+Ci0gICAgICA8dW5pdCBpZD0iamF2YWV3YWgiIHZlcnNpb249IjEuMS4xMy52MjAyMTEwMjktMDgzOSIvPgotICAgICAgPHVuaXQgaWQ9ImphdmFld2FoLnNvdXJjZSIgdmVyc2lvbj0iMS4xLjEzLnYyMDIxMTAyOS0wODM5Ii8+Ci0gICAgICA8dW5pdCBpZD0iamF2YXguc2VydmxldCIgdmVyc2lvbj0iMy4xLjAudjIwMTQxMDE2MTgwMCIvPgotICAgICAgPHVuaXQgaWQ9ImphdmF4LnNlcnZsZXQuc291cmNlIiB2ZXJzaW9uPSIzLjEuMC52MjAxNDEwMTYxODAwIi8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5IiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDctMTQxMCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudCIgdmVyc2lvbj0iMS45LjAudjIwMTgxMTA2LTE1MzQiLz4KLSAgICAgIDx1bml0IGlkPSJuZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQuc291cmNlIiB2ZXJzaW9uPSIxLjkuMC52MjAxODExMDYtMTUzNCIvPgotICAgICAgPHVuaXQgaWQ9Im5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDE4MTEwNy0xNDEwIi8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmkycC5jcnlwdG8uZWRkc2EiIHZlcnNpb249IjAuMy4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ibmV0LmkycC5jcnlwdG8uZWRkc2Euc291cmNlIiB2ZXJzaW9uPSIwLjMuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuYW50IiB2ZXJzaW9uPSIxLjEwLjEyLnYyMDIxMTEwMi0xNDUyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5hbnQuc291cmNlIiB2ZXJzaW9uPSIxLjEwLjEyLnYyMDIxMTEwMi0xNDUyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5jb21tb25zLmNvZGVjIiB2ZXJzaW9uPSIxLjE0LjAudjIwMjAwODE4LTE0MjIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMuc291cmNlIiB2ZXJzaW9uPSIxLjE0LjAudjIwMjAwODE4LTE0MjIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MiIHZlcnNpb249IjEuMjEuMC52MjAyMTExMDMtMjEwMCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcy5zb3VyY2UiIHZlcnNpb249IjEuMjEuMC52MjAyMTExMDMtMjEwMCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nIiB2ZXJzaW9uPSIxLjIuMC52MjAxODA0MDktMTUwMiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nLnNvdXJjZSIgdmVyc2lvbj0iMS4yLjAudjIwMTgwNDA5LTE1MDIiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQiIHZlcnNpb249IjQuNS4xMy52MjAyMTAxMjgtMjIyNSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudC5zb3VyY2UiIHZlcnNpb249IjQuNS4xMy52MjAyMTAxMjgtMjIyNSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUiIHZlcnNpb249IjQuNC4xNC52MjAyMTAxMjgtMjIyNSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUuc291cmNlIiB2ZXJzaW9uPSI0LjQuMTQudjIwMjEwMTI4LTIyMjUiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQub3NnaSIgdmVyc2lvbj0iMi43LjAudjIwMjEwNjIzLTA2MTgiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXBhY2hlLnNzaGQub3NnaS5zb3VyY2UiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLnNmdHAiIHZlcnNpb249IjIuNy4wLnYyMDIxMDYyMy0wNjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmFwYWNoZS5zc2hkLnNmdHAuc291cmNlIiB2ZXJzaW9uPSIyLjcuMC52MjAyMTA2MjMtMDYxOCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5hc3NlcnRqIiB2ZXJzaW9uPSIzLjIwLjIudjIwMjEwNzA2LTExMDQiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuYXNzZXJ0ai5zb3VyY2UiIHZlcnNpb249IjMuMjAuMi52MjAyMTA3MDYtMTEwNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwZyIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BnLnNvdXJjZSIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3BraXgiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4LnNvdXJjZSIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3Byb3YiIHZlcnNpb249IjEuNjkuMC52MjAyMTA5MjMtMTQwMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmNwcm92LnNvdXJjZSIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDkyMy0xNDAxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmJvdW5jeWNhc3RsZS5iY3V0aWwiIHZlcnNpb249IjEuNjkuMC52MjAyMTA3MTMtMTkyNCIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsLnNvdXJjZSIgdmVyc2lvbj0iMS42OS4wLnYyMDIxMDcxMy0xOTI0Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0IiB2ZXJzaW9uPSIyLjIuMC52MjAyMTA3MTEtMDgyMSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5zb3VyY2UiIHZlcnNpb249IjIuMi4wLnYyMDIxMDcxMS0wODIxIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmNvcmUiIHZlcnNpb249IjEuMy4wLnYyMDE4MDQyMC0xNTE5Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmhhbWNyZXN0LmNvcmUuc291cmNlIiB2ZXJzaW9uPSIxLjMuMC52MjAxODA0MjAtMTUxOSIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5saWJyYXJ5IiB2ZXJzaW9uPSIxLjMuMC52MjAxODA1MjQtMjI0NiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5oYW1jcmVzdC5saWJyYXJ5LnNvdXJjZSIgdmVyc2lvbj0iMS4zLjAudjIwMTgwNTI0LTIyNDYiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuanVuaXQiIHZlcnNpb249IjQuMTMuMi52MjAyMTEwMTgtMTk1NiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5qdW5pdC5zb3VyY2UiIHZlcnNpb249IjQuMTMuMi52MjAyMTEwMTgtMTk1NiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5rb2hzdWtlLmFyZ3M0aiIgdmVyc2lvbj0iMi4zMy4wLnYyMDE2MDMyMy0yMjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLmtvaHN1a2UuYXJnczRqLnNvdXJjZSIgdmVyc2lvbj0iMi4zMy4wLnYyMDE2MDMyMy0yMjE4Ii8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm1vY2tpdG8iIHZlcnNpb249IjIuMjMuMC52MjAyMDAzMTAtMTY0MiIvPgotICAgICAgPHVuaXQgaWQ9Im9yZy5tb2NraXRvLnNvdXJjZSIgdmVyc2lvbj0iMi4yMy4wLnYyMDIwMDMxMC0xNjQyIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLm9iamVuZXNpcyIgdmVyc2lvbj0iMi42LjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcub2JqZW5lc2lzLnNvdXJjZSIgdmVyc2lvbj0iMi42LjAudjIwMTgwNDIwLTE1MTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuc2xmNGouYXBpIiB2ZXJzaW9uPSIxLjcuMzAudjIwMjAwMjA0LTIxNTAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuc2xmNGouYXBpLnNvdXJjZSIgdmVyc2lvbj0iMS43LjMwLnYyMDIwMDIwNC0yMTUwIi8+Ci0gICAgICA8dW5pdCBpZD0ib3JnLnNsZjRqLmJpbmRpbmcuc2ltcGxlIiB2ZXJzaW9uPSIxLjcuMzAudjIwMjAwMjA0LTIxNTAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcuc2xmNGouYmluZGluZy5zaW1wbGUuc291cmNlIiB2ZXJzaW9uPSIxLjcuMzAudjIwMjAwMjA0LTIxNTAiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcudHVrYWFuaS54eiIgdmVyc2lvbj0iMS45LjAudjIwMjEwNjI0LTEyNTkiLz4KLSAgICAgIDx1bml0IGlkPSJvcmcudHVrYWFuaS54ei5zb3VyY2UiIHZlcnNpb249IjEuOS4wLnYyMDIxMDYyNC0xMjU5Ii8+Ci0gICAgICA8cmVwb3NpdG9yeSBsb2NhdGlvbj0iaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy90b29scy9vcmJpdC9kb3dubG9hZHMvZHJvcHMvUjIwMjExMjEzMTczODEzL3JlcG9zaXRvcnkiLz4KLSAgICA8L2xvY2F0aW9uPgotICAgIDxsb2NhdGlvbiBpbmNsdWRlTW9kZT0ic2xpY2VyIiBpbmNsdWRlQWxsUGxhdGZvcm1zPSJmYWxzZSIgaW5jbHVkZVNvdXJjZT0idHJ1ZSIgaW5jbHVkZUNvbmZpZ3VyZVBoYXNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgotICAgICAgPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLm9zZ2kiIHZlcnNpb249IjAuMC4wIi8+Ci0gICAgICA8cmVwb3NpdG9yeSBsb2NhdGlvbj0iaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9yZWxlYXNlcy8yMDE4LTA5LyIvPgotICAgIDwvbG9jYXRpb24+Ci0gIDwvbG9jYXRpb25zPgotPC90YXJnZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOS50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9qZ2l0LTQuOS50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVmNzAzMDYuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvamdpdC00LjkudHBkCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi10YXJnZXQgImpnaXQtNC45IiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQotCi1pbmNsdWRlICJwcm9qZWN0cy9qZXR0eS05LjQueC50cGQiCi1pbmNsdWRlICJvcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQiCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzLzIwMTgtMDkvIiB7Ci0Jb3JnLmVjbGlwc2Uub3NnaSBsYXp5Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMTkwNjAyMjEyMTA3LTIwMTktMDYudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMTkwNjAyMjEyMTA3LTIwMTktMDYudHBkCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZDU4NGE5Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDE5MDYwMjIxMjEwNy0yMDE5LTA2LnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDY1ICswLDAgQEAKLXRhcmdldCAiUjIwMTkwNjAyMjEyMTA3LTIwMTktMDYiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0vLyBzZWUgaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy90b29scy9vcmJpdC9kb3dubG9hZHMvCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAxOTA2MDIyMTIxMDcvcmVwb3NpdG9yeSIgewotCWNvbS5nb29nbGUuZ3NvbiBbMi44LjIudjIwMTgwMTA0LTExMTAsMi44LjIudjIwMTgwMTA0LTExMTBdCi0JY29tLmdvb2dsZS5nc29uLnNvdXJjZSBbMi44LjIudjIwMTgwMTA0LTExMTAsMi44LjIudjIwMTgwMTA0LTExMTBdCi0JY29tLmpjcmFmdC5qc2NoIFswLjEuNTUudjIwMTkwNDA0LTE5MDIsMC4xLjU1LnYyMDE5MDQwNC0xOTAyXQotCWNvbS5qY3JhZnQuanNjaC5zb3VyY2UgWzAuMS41NS52MjAxOTA0MDQtMTkwMiwwLjEuNTUudjIwMTkwNDA0LTE5MDJdCi0JY29tLmpjcmFmdC5qemxpYiBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQotCWNvbS5qY3JhZnQuanpsaWIuc291cmNlIFsxLjEuMS52MjAxMjA1MTAyMzA1LDEuMS4xLnYyMDEyMDUxMDIzMDVdCi0JamF2YWV3YWggWzEuMS42LnYyMDE2MDkxOS0xNDAwLDEuMS42LnYyMDE2MDkxOS0xNDAwXQotCWphdmFld2FoLnNvdXJjZSBbMS4xLjYudjIwMTYwOTE5LTE0MDAsMS4xLjYudjIwMTYwOTE5LTE0MDBdCi0JamF2YXguc2VydmxldCBbMy4xLjAudjIwMTQxMDE2MTgwMCwzLjEuMC52MjAxNDEwMTYxODAwXQotCWphdmF4LnNlcnZsZXQuc291cmNlIFszLjEuMC52MjAxNDEwMTYxODAwLDMuMS4wLnYyMDE0MTAxNjE4MDBdCi0JbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5IFsxLjkuMC52MjAxODExMDctMTQxMCwxLjkuMC52MjAxODExMDctMTQxMF0KLQluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQgWzEuOS4wLnYyMDE4MTEwNi0xNTM0LDEuOS4wLnYyMDE4MTEwNi0xNTM0XQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UgWzEuOS4wLnYyMDE4MTEwNi0xNTM0LDEuOS4wLnYyMDE4MTEwNi0xNTM0XQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS5zb3VyY2UgWzEuOS4wLnYyMDE4MTEwNy0xNDEwLDEuOS4wLnYyMDE4MTEwNy0xNDEwXQotCW5ldC5pMnAuY3J5cHRvLmVkZHNhIFswLjMuMC52MjAxODExMDItMTMyMywwLjMuMC52MjAxODExMDItMTMyM10KLQluZXQuaTJwLmNyeXB0by5lZGRzYS5zb3VyY2UgWzAuMy4wLnYyMDE4MTEwMi0xMzIzLDAuMy4wLnYyMDE4MTEwMi0xMzIzXQotCW9yZy5hcGFjaGUuYW50IFsxLjEwLjUudjIwMTkwNTI2LTE0MDIsMS4xMC41LnYyMDE5MDUyNi0xNDAyXQotCW9yZy5hcGFjaGUuYW50LnNvdXJjZSBbMS4xMC41LnYyMDE5MDUyNi0xNDAyLDEuMTAuNS52MjAxOTA1MjYtMTQwMl0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMgWzEuMTAuMC52MjAxODA0MDktMTg0NSwxLjEwLjAudjIwMTgwNDA5LTE4NDVdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSBbMS4xMC4wLnYyMDE4MDQwOS0xODQ1LDEuMTAuMC52MjAxODA0MDktMTg0NV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MgWzEuMTguMC52MjAxODExMjEtMjIyMSwxLjE4LjAudjIwMTgxMTIxLTIyMjFdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLnNvdXJjZSBbMS4xOC4wLnYyMDE4MTEyMS0yMjIxLDEuMTguMC52MjAxODExMjEtMjIyMV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyBbMS4yLjAudjIwMTgwNDA5LTE1MDIsMS4yLjAudjIwMTgwNDA5LTE1MDJdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuc291cmNlIFsxLjIuMC52MjAxODA0MDktMTUwMiwxLjIuMC52MjAxODA0MDktMTUwMl0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQgWzQuNS42LnYyMDE5MDUwMy0wMDA5LDQuNS42LnYyMDE5MDUwMy0wMDA5XQotCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudC5zb3VyY2UgWzQuNS42LnYyMDE5MDUwMy0wMDA5LDQuNS42LnYyMDE5MDUwMy0wMDA5XQotCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUgWzQuNC4xMC52MjAxOTAxMjMtMjIxNCw0LjQuMTAudjIwMTkwMTIzLTIyMTRdCi0Jb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZS5zb3VyY2UgWzQuNC4xMC52MjAxOTAxMjMtMjIxNCw0LjQuMTAudjIwMTkwMTIzLTIyMTRdCi0Jb3JnLmFwYWNoZS5sb2c0aiBbMS4yLjE1LnYyMDEwMTIwNzA4MTUsMS4yLjE1LnYyMDEwMTIwNzA4MTVdCi0Jb3JnLmFwYWNoZS5sb2c0ai5zb3VyY2UgWzEuMi4xNS52MjAxMDEyMDcwODE1LDEuMi4xNS52MjAxMDEyMDcwODE1XQotCW9yZy5hcGFjaGUuc3NoZC5vc2dpIFsyLjIuMC52MjAxOTA0MjUtMjEyNywyLjIuMC52MjAxOTA0MjUtMjEyN10KLQlvcmcuYXBhY2hlLnNzaGQub3NnaS5zb3VyY2UgWzIuMi4wLnYyMDE5MDQyNS0yMTI3LDIuMi4wLnYyMDE5MDQyNS0yMTI3XQotCW9yZy5hcGFjaGUuc3NoZC5zZnRwIFsyLjIuMC52MjAxOTA0MjUtMjEyNywyLjIuMC52MjAxOTA0MjUtMjEyN10KLQlvcmcuYXBhY2hlLnNzaGQuc2Z0cC5zb3VyY2UgWzIuMi4wLnYyMDE5MDQyNS0yMTI3LDIuMi4wLnYyMDE5MDQyNS0yMTI3XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwZyBbMS42MS4wLnYyMDE5MDYwMi0xMzM1LDEuNjEuMC52MjAxOTA2MDItMTMzNV0KLQlvcmcuYm91bmN5Y2FzdGxlLmJjcGcuc291cmNlIFsxLjYxLjAudjIwMTkwNjAyLTEzMzUsMS42MS4wLnYyMDE5MDYwMi0xMzM1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4IFsxLjYxLjAudjIwMTkwNjAyLTEzMzUsMS42MS4wLnYyMDE5MDYwMi0xMzM1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwa2l4LnNvdXJjZSBbMS42MS4wLnYyMDE5MDYwMi0xMzM1LDEuNjEuMC52MjAxOTA2MDItMTMzNV0KLQlvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdiBbMS42MS4wLnYyMDE5MDYwMi0xMzM1LDEuNjEuMC52MjAxOTA2MDItMTMzNV0KLQlvcmcuYm91bmN5Y2FzdGxlLmJjcHJvdi5zb3VyY2UgWzEuNjEuMC52MjAxOTA2MDItMTMzNSwxLjYxLjAudjIwMTkwNjAyLTEzMzVdCi0Jb3JnLmhhbWNyZXN0IFsxLjEuMC52MjAwOTA1MDEwNzEwMDAsMS4xLjAudjIwMDkwNTAxMDcxMDAwXQotCW9yZy5oYW1jcmVzdC5jb3JlIFsxLjMuMC52MjAxODA0MjAtMTUxOSwxLjMuMC52MjAxODA0MjAtMTUxOV0KLQlvcmcuaGFtY3Jlc3QuY29yZS5zb3VyY2UgWzEuMy4wLnYyMDE4MDQyMC0xNTE5LDEuMy4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5oYW1jcmVzdC5saWJyYXJ5IFsxLjMuMC52MjAxODA1MjQtMjI0NiwxLjMuMC52MjAxODA1MjQtMjI0Nl0KLQlvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UgWzEuMy4wLnYyMDE4MDUyNC0yMjQ2LDEuMy4wLnYyMDE4MDUyNC0yMjQ2XQotCW9yZy5qdW5pdCBbNC4xMi4wLnYyMDE1MDQyODE2NDAsNC4xMi4wLnYyMDE1MDQyODE2NDBdCi0Jb3JnLmp1bml0LnNvdXJjZSBbNC4xMi4wLnYyMDE1MDQyODE2NDAsNC4xMi4wLnYyMDE1MDQyODE2NDBdCi0Jb3JnLmtvaHN1a2UuYXJnczRqIFsyLjMzLjAudjIwMTYwMzIzLTIyMTgsMi4zMy4wLnYyMDE2MDMyMy0yMjE4XQotCW9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UgWzIuMzMuMC52MjAxNjAzMjMtMjIxOCwyLjMzLjAudjIwMTYwMzIzLTIyMThdCi0Jb3JnLm1vY2tpdG8gWzIuMjMuMC52MjAxOTA1MjctMTQyMCwyLjIzLjAudjIwMTkwNTI3LTE0MjBdCi0Jb3JnLm1vY2tpdG8uc291cmNlIFsyLjIzLjAudjIwMTkwNTI3LTE0MjAsMi4yMy4wLnYyMDE5MDUyNy0xNDIwXQotCW9yZy5vYmplbmVzaXMgWzIuNi4wLnYyMDE4MDQyMC0xNTE5LDIuNi4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5vYmplbmVzaXMuc291cmNlIFsyLjYuMC52MjAxODA0MjAtMTUxOSwyLjYuMC52MjAxODA0MjAtMTUxOV0KLQlvcmcuc2xmNGouYXBpIFsxLjcuMi52MjAxMjExMDgtMTI1MCwxLjcuMi52MjAxMjExMDgtMTI1MF0KLQlvcmcuc2xmNGouYXBpLnNvdXJjZSBbMS43LjIudjIwMTIxMTA4LTEyNTAsMS43LjIudjIwMTIxMTA4LTEyNTBdCi0Jb3JnLnNsZjRqLmltcGwubG9nNGoxMiBbMS43LjIudjIwMTMxMTA1LTIyMDAsMS43LjIudjIwMTMxMTA1LTIyMDBdCi0Jb3JnLnNsZjRqLmltcGwubG9nNGoxMi5zb3VyY2UgWzEuNy4yLnYyMDEzMTEwNS0yMjAwLDEuNy4yLnYyMDEzMTEwNS0yMjAwXQotCW9yZy50dWthYW5pLnh6IFsxLjguMC52MjAxODAyMDctMTYxMywxLjguMC52MjAxODAyMDctMTYxM10KLQlvcmcudHVrYWFuaS54ei5zb3VyY2UgWzEuOC4wLnYyMDE4MDIwNy0xNjEzLDEuOC4wLnYyMDE4MDIwNy0xNjEzXQotfQotCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9vcmJpdC9SMjAxOTA4MjcxNTI3NDAtMjAxOS0wOS50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9vcmJpdC9SMjAxOTA4MjcxNTI3NDAtMjAxOS0wOS50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1MzY2ZWIuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMTkwODI3MTUyNzQwLTIwMTktMDkudHBkCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotdGFyZ2V0ICJSMjAxOTA4MjcxNTI3NDAtMjAxOS0wOSIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKLS8vIHNlZSBodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy8KLQotbG9jYXRpb24gImh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzL2Ryb3BzL1IyMDE5MDgyNzE1Mjc0MC9yZXBvc2l0b3J5IiB7Ci0JY29tLmdvb2dsZS5nc29uIFsyLjguMi52MjAxODAxMDQtMTExMCwyLjguMi52MjAxODAxMDQtMTExMF0KLQljb20uZ29vZ2xlLmdzb24uc291cmNlIFsyLjguMi52MjAxODAxMDQtMTExMCwyLjguMi52MjAxODAxMDQtMTExMF0KLQljb20uamNyYWZ0LmpzY2ggWzAuMS41NS52MjAxOTA0MDQtMTkwMiwwLjEuNTUudjIwMTkwNDA0LTE5MDJdCi0JY29tLmpjcmFmdC5qc2NoLnNvdXJjZSBbMC4xLjU1LnYyMDE5MDQwNC0xOTAyLDAuMS41NS52MjAxOTA0MDQtMTkwMl0KLQljb20uamNyYWZ0Lmp6bGliIFsxLjEuMS52MjAxMjA1MTAyMzA1LDEuMS4xLnYyMDEyMDUxMDIzMDVdCi0JY29tLmpjcmFmdC5qemxpYi5zb3VyY2UgWzEuMS4xLnYyMDEyMDUxMDIzMDUsMS4xLjEudjIwMTIwNTEwMjMwNV0KLQlqYXZhZXdhaCBbMS4xLjYudjIwMTYwOTE5LTE0MDAsMS4xLjYudjIwMTYwOTE5LTE0MDBdCi0JamF2YWV3YWguc291cmNlIFsxLjEuNi52MjAxNjA5MTktMTQwMCwxLjEuNi52MjAxNjA5MTktMTQwMF0KLQlqYXZheC5zZXJ2bGV0IFszLjEuMC52MjAxNDEwMTYxODAwLDMuMS4wLnYyMDE0MTAxNjE4MDBdCi0JamF2YXguc2VydmxldC5zb3VyY2UgWzMuMS4wLnYyMDE0MTAxNjE4MDAsMy4xLjAudjIwMTQxMDE2MTgwMF0KLQluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkgWzEuOS4wLnYyMDE4MTEwNy0xNDEwLDEuOS4wLnYyMDE4MTEwNy0xNDEwXQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudCBbMS45LjAudjIwMTgxMTA2LTE1MzQsMS45LjAudjIwMTgxMTA2LTE1MzRdCi0JbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSBbMS45LjAudjIwMTgxMTA2LTE1MzQsMS45LjAudjIwMTgxMTA2LTE1MzRdCi0JbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LnNvdXJjZSBbMS45LjAudjIwMTgxMTA3LTE0MTAsMS45LjAudjIwMTgxMTA3LTE0MTBdCi0JbmV0LmkycC5jcnlwdG8uZWRkc2EgWzAuMy4wLnYyMDE4MTEwMi0xMzIzLDAuMy4wLnYyMDE4MTEwMi0xMzIzXQotCW5ldC5pMnAuY3J5cHRvLmVkZHNhLnNvdXJjZSBbMC4zLjAudjIwMTgxMTAyLTEzMjMsMC4zLjAudjIwMTgxMTAyLTEzMjNdCi0Jb3JnLmFwYWNoZS5hbnQgWzEuMTAuNS52MjAxOTA1MjYtMTQwMiwxLjEwLjUudjIwMTkwNTI2LTE0MDJdCi0Jb3JnLmFwYWNoZS5hbnQuc291cmNlIFsxLjEwLjUudjIwMTkwNTI2LTE0MDIsMS4xMC41LnYyMDE5MDUyNi0xNDAyXQotCW9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyBbMS4xMC4wLnYyMDE4MDQwOS0xODQ1LDEuMTAuMC52MjAxODA0MDktMTg0NV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMuc291cmNlIFsxLjEwLjAudjIwMTgwNDA5LTE4NDUsMS4xMC4wLnYyMDE4MDQwOS0xODQ1XQotCW9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcyBbMS4xOC4wLnYyMDE4MTEyMS0yMjIxLDEuMTguMC52MjAxODExMjEtMjIyMV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIFsxLjE4LjAudjIwMTgxMTIxLTIyMjEsMS4xOC4wLnYyMDE4MTEyMS0yMjIxXQotCW9yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nIFsxLjIuMC52MjAxODA0MDktMTUwMiwxLjIuMC52MjAxODA0MDktMTUwMl0KLQlvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UgWzEuMi4wLnYyMDE4MDQwOS0xNTAyLDEuMi4wLnYyMDE4MDQwOS0xNTAyXQotCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudCBbNC41LjYudjIwMTkwNTAzLTAwMDksNC41LjYudjIwMTkwNTAzLTAwMDldCi0Jb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50LnNvdXJjZSBbNC41LjYudjIwMTkwNTAzLTAwMDksNC41LjYudjIwMTkwNTAzLTAwMDldCi0Jb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZSBbNC40LjEwLnYyMDE5MDEyMy0yMjE0LDQuNC4xMC52MjAxOTAxMjMtMjIxNF0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlLnNvdXJjZSBbNC40LjEwLnYyMDE5MDEyMy0yMjE0LDQuNC4xMC52MjAxOTAxMjMtMjIxNF0KLQlvcmcuYXBhY2hlLmxvZzRqIFsxLjIuMTUudjIwMTAxMjA3MDgxNSwxLjIuMTUudjIwMTAxMjA3MDgxNV0KLQlvcmcuYXBhY2hlLmxvZzRqLnNvdXJjZSBbMS4yLjE1LnYyMDEwMTIwNzA4MTUsMS4yLjE1LnYyMDEwMTIwNzA4MTVdCi0Jb3JnLmFwYWNoZS5zc2hkLm9zZ2kgWzIuMi4wLnYyMDE5MDQyNS0yMTI3LDIuMi4wLnYyMDE5MDQyNS0yMTI3XQotCW9yZy5hcGFjaGUuc3NoZC5vc2dpLnNvdXJjZSBbMi4yLjAudjIwMTkwNDI1LTIxMjcsMi4yLjAudjIwMTkwNDI1LTIxMjddCi0Jb3JnLmFwYWNoZS5zc2hkLnNmdHAgWzIuMi4wLnYyMDE5MDQyNS0yMTI3LDIuMi4wLnYyMDE5MDQyNS0yMTI3XQotCW9yZy5hcGFjaGUuc3NoZC5zZnRwLnNvdXJjZSBbMi4yLjAudjIwMTkwNDI1LTIxMjcsMi4yLjAudjIwMTkwNDI1LTIxMjddCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BnIFsxLjYxLjAudjIwMTkwNjAyLTEzMzUsMS42MS4wLnYyMDE5MDYwMi0xMzM1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UgWzEuNjEuMC52MjAxOTA2MDItMTMzNSwxLjYxLjAudjIwMTkwNjAyLTEzMzVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BraXggWzEuNjEuMC52MjAxOTA2MDItMTMzNSwxLjYxLjAudjIwMTkwNjAyLTEzMzVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BraXguc291cmNlIFsxLjYxLjAudjIwMTkwNjAyLTEzMzUsMS42MS4wLnYyMDE5MDYwMi0xMzM1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IFsxLjYxLjAudjIwMTkwNjAyLTEzMzUsMS42MS4wLnYyMDE5MDYwMi0xMzM1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwcm92LnNvdXJjZSBbMS42MS4wLnYyMDE5MDYwMi0xMzM1LDEuNjEuMC52MjAxOTA2MDItMTMzNV0KLQlvcmcuaGFtY3Jlc3QgWzEuMS4wLnYyMDA5MDUwMTA3MTAwMCwxLjEuMC52MjAwOTA1MDEwNzEwMDBdCi0Jb3JnLmhhbWNyZXN0LmNvcmUgWzEuMy4wLnYyMDE4MDQyMC0xNTE5LDEuMy4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSBbMS4zLjAudjIwMTgwNDIwLTE1MTksMS4zLjAudjIwMTgwNDIwLTE1MTldCi0Jb3JnLmhhbWNyZXN0LmxpYnJhcnkgWzEuMy4wLnYyMDE4MDUyNC0yMjQ2LDEuMy4wLnYyMDE4MDUyNC0yMjQ2XQotCW9yZy5oYW1jcmVzdC5saWJyYXJ5LnNvdXJjZSBbMS4zLjAudjIwMTgwNTI0LTIyNDYsMS4zLjAudjIwMTgwNTI0LTIyNDZdCi0Jb3JnLmp1bml0IFs0LjEyLjAudjIwMTUwNDI4MTY0MCw0LjEyLjAudjIwMTUwNDI4MTY0MF0KLQlvcmcuanVuaXQuc291cmNlIFs0LjEyLjAudjIwMTUwNDI4MTY0MCw0LjEyLjAudjIwMTUwNDI4MTY0MF0KLQlvcmcua29oc3VrZS5hcmdzNGogWzIuMzMuMC52MjAxNjAzMjMtMjIxOCwyLjMzLjAudjIwMTYwMzIzLTIyMThdCi0Jb3JnLmtvaHN1a2UuYXJnczRqLnNvdXJjZSBbMi4zMy4wLnYyMDE2MDMyMy0yMjE4LDIuMzMuMC52MjAxNjAzMjMtMjIxOF0KLQlvcmcubW9ja2l0byBbMi4yMy4wLnYyMDE5MDUyNy0xNDIwLDIuMjMuMC52MjAxOTA1MjctMTQyMF0KLQlvcmcubW9ja2l0by5zb3VyY2UgWzIuMjMuMC52MjAxOTA1MjctMTQyMCwyLjIzLjAudjIwMTkwNTI3LTE0MjBdCi0Jb3JnLm9iamVuZXNpcyBbMi42LjAudjIwMTgwNDIwLTE1MTksMi42LjAudjIwMTgwNDIwLTE1MTldCi0Jb3JnLm9iamVuZXNpcy5zb3VyY2UgWzIuNi4wLnYyMDE4MDQyMC0xNTE5LDIuNi4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5zbGY0ai5hcGkgWzEuNy4yLnYyMDEyMTEwOC0xMjUwLDEuNy4yLnYyMDEyMTEwOC0xMjUwXQotCW9yZy5zbGY0ai5hcGkuc291cmNlIFsxLjcuMi52MjAxMjExMDgtMTI1MCwxLjcuMi52MjAxMjExMDgtMTI1MF0KLQlvcmcuc2xmNGouaW1wbC5sb2c0ajEyIFsxLjcuMi52MjAxMzExMDUtMjIwMCwxLjcuMi52MjAxMzExMDUtMjIwMF0KLQlvcmcuc2xmNGouaW1wbC5sb2c0ajEyLnNvdXJjZSBbMS43LjIudjIwMTMxMTA1LTIyMDAsMS43LjIudjIwMTMxMTA1LTIyMDBdCi0Jb3JnLnR1a2FhbmkueHogWzEuOC4wLnYyMDE4MDIwNy0xNjEzLDEuOC4wLnYyMDE4MDIwNy0xNjEzXQotCW9yZy50dWthYW5pLnh6LnNvdXJjZSBbMS44LjAudjIwMTgwMjA3LTE2MTMsMS44LjAudjIwMTgwMjA3LTE2MTNdCi19Ci0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDE5MTEyNjIyMzI0Mi0yMDE5LTEyLnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDE5MTEyNjIyMzI0Mi0yMDE5LTEyLnRwZApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmM0NDAyYS4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9vcmJpdC9SMjAxOTExMjYyMjMyNDItMjAxOS0xMi50cGQKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi10YXJnZXQgIlIyMDE5MTEyNjIyMzI0Mi0yMDE5LTEyIiB3aXRoIHNvdXJjZSBjb25maWd1cmVQaGFzZQotLy8gc2VlIGh0dHBzOi8vZG93bmxvYWQuZWNsaXBzZS5vcmcvdG9vbHMvb3JiaXQvZG93bmxvYWRzLwotCi1sb2NhdGlvbiAiaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy90b29scy9vcmJpdC9kb3dubG9hZHMvZHJvcHMvUjIwMTkxMTI2MjIzMjQyL3JlcG9zaXRvcnkiIHsKLQljb20uZ29vZ2xlLmdzb24gWzIuOC4yLnYyMDE4MDEwNC0xMTEwLDIuOC4yLnYyMDE4MDEwNC0xMTEwXQotCWNvbS5nb29nbGUuZ3Nvbi5zb3VyY2UgWzIuOC4yLnYyMDE4MDEwNC0xMTEwLDIuOC4yLnYyMDE4MDEwNC0xMTEwXQotCWNvbS5qY3JhZnQuanNjaCBbMC4xLjU1LnYyMDE5MDQwNC0xOTAyLDAuMS41NS52MjAxOTA0MDQtMTkwMl0KLQljb20uamNyYWZ0LmpzY2guc291cmNlIFswLjEuNTUudjIwMTkwNDA0LTE5MDIsMC4xLjU1LnYyMDE5MDQwNC0xOTAyXQotCWNvbS5qY3JhZnQuanpsaWIgWzEuMS4xLnYyMDEyMDUxMDIzMDUsMS4xLjEudjIwMTIwNTEwMjMwNV0KLQljb20uamNyYWZ0Lmp6bGliLnNvdXJjZSBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQotCWphdmFld2FoIFsxLjEuNi52MjAxNjA5MTktMTQwMCwxLjEuNi52MjAxNjA5MTktMTQwMF0KLQlqYXZhZXdhaC5zb3VyY2UgWzEuMS42LnYyMDE2MDkxOS0xNDAwLDEuMS42LnYyMDE2MDkxOS0xNDAwXQotCWphdmF4LnNlcnZsZXQgWzMuMS4wLnYyMDE0MTAxNjE4MDAsMy4xLjAudjIwMTQxMDE2MTgwMF0KLQlqYXZheC5zZXJ2bGV0LnNvdXJjZSBbMy4xLjAudjIwMTQxMDE2MTgwMCwzLjEuMC52MjAxNDEwMTYxODAwXQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSBbMS45LjAudjIwMTgxMTA3LTE0MTAsMS45LjAudjIwMTgxMTA3LTE0MTBdCi0JbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IFsxLjkuMC52MjAxODExMDYtMTUzNCwxLjkuMC52MjAxODExMDYtMTUzNF0KLQluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQuc291cmNlIFsxLjkuMC52MjAxODExMDYtMTUzNCwxLjkuMC52MjAxODExMDYtMTUzNF0KLQluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIFsxLjkuMC52MjAxODExMDctMTQxMCwxLjkuMC52MjAxODExMDctMTQxMF0KLQluZXQuaTJwLmNyeXB0by5lZGRzYSBbMC4zLjAudjIwMTgxMTAyLTEzMjMsMC4zLjAudjIwMTgxMTAyLTEzMjNdCi0JbmV0LmkycC5jcnlwdG8uZWRkc2Euc291cmNlIFswLjMuMC52MjAxODExMDItMTMyMywwLjMuMC52MjAxODExMDItMTMyM10KLQlvcmcuYXBhY2hlLmFudCBbMS4xMC43LnYyMDE5MDkyNi0wMzI0LDEuMTAuNy52MjAxOTA5MjYtMDMyNF0KLQlvcmcuYXBhY2hlLmFudC5zb3VyY2UgWzEuMTAuNy52MjAxOTA5MjYtMDMyNCwxLjEwLjcudjIwMTkwOTI2LTAzMjRdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvZGVjIFsxLjEwLjAudjIwMTgwNDA5LTE4NDUsMS4xMC4wLnYyMDE4MDQwOS0xODQ1XQotCW9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYy5zb3VyY2UgWzEuMTAuMC52MjAxODA0MDktMTg0NSwxLjEwLjAudjIwMTgwNDA5LTE4NDVdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzIFsxLjE4LjAudjIwMTgxMTIxLTIyMjEsMS4xOC4wLnYyMDE4MTEyMS0yMjIxXQotCW9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcy5zb3VyY2UgWzEuMTguMC52MjAxODExMjEtMjIyMSwxLjE4LjAudjIwMTgxMTIxLTIyMjFdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcgWzEuMi4wLnYyMDE4MDQwOS0xNTAyLDEuMi4wLnYyMDE4MDQwOS0xNTAyXQotCW9yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nLnNvdXJjZSBbMS4yLjAudjIwMTgwNDA5LTE1MDIsMS4yLjAudjIwMTgwNDA5LTE1MDJdCi0Jb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50IFs0LjUuNi52MjAxOTA1MDMtMDAwOSw0LjUuNi52MjAxOTA1MDMtMDAwOV0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIFs0LjUuNi52MjAxOTA1MDMtMDAwOSw0LjUuNi52MjAxOTA1MDMtMDAwOV0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIFs0LjQuMTAudjIwMTkwMTIzLTIyMTQsNC40LjEwLnYyMDE5MDEyMy0yMjE0XQotCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUuc291cmNlIFs0LjQuMTAudjIwMTkwMTIzLTIyMTQsNC40LjEwLnYyMDE5MDEyMy0yMjE0XQotCW9yZy5hcGFjaGUubG9nNGogWzEuMi4xNS52MjAxMDEyMDcwODE1LDEuMi4xNS52MjAxMDEyMDcwODE1XQotCW9yZy5hcGFjaGUubG9nNGouc291cmNlIFsxLjIuMTUudjIwMTAxMjA3MDgxNSwxLjIuMTUudjIwMTAxMjA3MDgxNV0KLQlvcmcuYXBhY2hlLnNzaGQub3NnaSBbMi4yLjAudjIwMTkwNDI1LTIxMjcsMi4yLjAudjIwMTkwNDI1LTIxMjddCi0Jb3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIFsyLjIuMC52MjAxOTA0MjUtMjEyNywyLjIuMC52MjAxOTA0MjUtMjEyN10KLQlvcmcuYXBhY2hlLnNzaGQuc2Z0cCBbMi4yLjAudjIwMTkwNDI1LTIxMjcsMi4yLjAudjIwMTkwNDI1LTIxMjddCi0Jb3JnLmFwYWNoZS5zc2hkLnNmdHAuc291cmNlIFsyLjIuMC52MjAxOTA0MjUtMjEyNywyLjIuMC52MjAxOTA0MjUtMjEyN10KLQlvcmcuYm91bmN5Y2FzdGxlLmJjcGcgWzEuNjQuMC52MjAxOTExMDktMDgxNSwxLjY0LjAudjIwMTkxMTA5LTA4MTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BnLnNvdXJjZSBbMS42NC4wLnYyMDE5MTEwOS0wODE1LDEuNjQuMC52MjAxOTExMDktMDgxNV0KLQlvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeCBbMS42NC4wLnYyMDE5MTEwOS0wODE1LDEuNjQuMC52MjAxOTExMDktMDgxNV0KLQlvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UgWzEuNjQuMC52MjAxOTExMDktMDgxNSwxLjY0LjAudjIwMTkxMTA5LTA4MTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3Byb3YgWzEuNjQuMC52MjAxOTExMDktMDgxNSwxLjY0LjAudjIwMTkxMTA5LTA4MTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3Byb3Yuc291cmNlIFsxLjY0LjAudjIwMTkxMTA5LTA4MTUsMS42NC4wLnYyMDE5MTEwOS0wODE1XQotCW9yZy5oYW1jcmVzdCBbMS4xLjAudjIwMDkwNTAxMDcxMDAwLDEuMS4wLnYyMDA5MDUwMTA3MTAwMF0KLQlvcmcuaGFtY3Jlc3QuY29yZSBbMS4zLjAudjIwMTgwNDIwLTE1MTksMS4zLjAudjIwMTgwNDIwLTE1MTldCi0Jb3JnLmhhbWNyZXN0LmNvcmUuc291cmNlIFsxLjMuMC52MjAxODA0MjAtMTUxOSwxLjMuMC52MjAxODA0MjAtMTUxOV0KLQlvcmcuaGFtY3Jlc3QubGlicmFyeSBbMS4zLjAudjIwMTgwNTI0LTIyNDYsMS4zLjAudjIwMTgwNTI0LTIyNDZdCi0Jb3JnLmhhbWNyZXN0LmxpYnJhcnkuc291cmNlIFsxLjMuMC52MjAxODA1MjQtMjI0NiwxLjMuMC52MjAxODA1MjQtMjI0Nl0KLQlvcmcuanVuaXQgWzQuMTIuMC52MjAxNTA0MjgxNjQwLDQuMTIuMC52MjAxNTA0MjgxNjQwXQotCW9yZy5qdW5pdC5zb3VyY2UgWzQuMTIuMC52MjAxNTA0MjgxNjQwLDQuMTIuMC52MjAxNTA0MjgxNjQwXQotCW9yZy5rb2hzdWtlLmFyZ3M0aiBbMi4zMy4wLnYyMDE2MDMyMy0yMjE4LDIuMzMuMC52MjAxNjAzMjMtMjIxOF0KLQlvcmcua29oc3VrZS5hcmdzNGouc291cmNlIFsyLjMzLjAudjIwMTYwMzIzLTIyMTgsMi4zMy4wLnYyMDE2MDMyMy0yMjE4XQotCW9yZy5tb2NraXRvIFsyLjIzLjAudjIwMTkwNTI3LTE0MjAsMi4yMy4wLnYyMDE5MDUyNy0xNDIwXQotCW9yZy5tb2NraXRvLnNvdXJjZSBbMi4yMy4wLnYyMDE5MDUyNy0xNDIwLDIuMjMuMC52MjAxOTA1MjctMTQyMF0KLQlvcmcub2JqZW5lc2lzIFsyLjYuMC52MjAxODA0MjAtMTUxOSwyLjYuMC52MjAxODA0MjAtMTUxOV0KLQlvcmcub2JqZW5lc2lzLnNvdXJjZSBbMi42LjAudjIwMTgwNDIwLTE1MTksMi42LjAudjIwMTgwNDIwLTE1MTldCi0Jb3JnLnNsZjRqLmFwaSBbMS43LjIudjIwMTIxMTA4LTEyNTAsMS43LjIudjIwMTIxMTA4LTEyNTBdCi0Jb3JnLnNsZjRqLmFwaS5zb3VyY2UgWzEuNy4yLnYyMDEyMTEwOC0xMjUwLDEuNy4yLnYyMDEyMTEwOC0xMjUwXQotCW9yZy5zbGY0ai5pbXBsLmxvZzRqMTIgWzEuNy4yLnYyMDEzMTEwNS0yMjAwLDEuNy4yLnYyMDEzMTEwNS0yMjAwXQotCW9yZy5zbGY0ai5pbXBsLmxvZzRqMTIuc291cmNlIFsxLjcuMi52MjAxMzExMDUtMjIwMCwxLjcuMi52MjAxMzExMDUtMjIwMF0KLQlvcmcudHVrYWFuaS54eiBbMS44LjAudjIwMTgwMjA3LTE2MTMsMS44LjAudjIwMTgwMjA3LTE2MTNdCi0Jb3JnLnR1a2FhbmkueHouc291cmNlIFsxLjguMC52MjAxODAyMDctMTYxMywxLjguMC52MjAxODAyMDctMTYxM10KLX0KLQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjAwMjI0MTgzMjEzLTIwMjAtMDMudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjAwMjI0MTgzMjEzLTIwMjAtMDMudHBkCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiM2IzNjAwLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDIwMDIyNDE4MzIxMy0yMDIwLTAzLnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLXRhcmdldCAiUjIwMjAwMjI0MTgzMjEzLTIwMjAtMDMiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0vLyBzZWUgaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy90b29scy9vcmJpdC9kb3dubG9hZHMvCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAyMDAyMjQxODMyMTMvcmVwb3NpdG9yeSIgewotCWNvbS5nb29nbGUuZ3NvbiBbMi44LjIudjIwMTgwMTA0LTExMTAsMi44LjIudjIwMTgwMTA0LTExMTBdCi0JY29tLmdvb2dsZS5nc29uLnNvdXJjZSBbMi44LjIudjIwMTgwMTA0LTExMTAsMi44LjIudjIwMTgwMTA0LTExMTBdCi0JY29tLmpjcmFmdC5qc2NoIFswLjEuNTUudjIwMTkwNDA0LTE5MDIsMC4xLjU1LnYyMDE5MDQwNC0xOTAyXQotCWNvbS5qY3JhZnQuanNjaC5zb3VyY2UgWzAuMS41NS52MjAxOTA0MDQtMTkwMiwwLjEuNTUudjIwMTkwNDA0LTE5MDJdCi0JY29tLmpjcmFmdC5qemxpYiBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQotCWNvbS5qY3JhZnQuanpsaWIuc291cmNlIFsxLjEuMS52MjAxMjA1MTAyMzA1LDEuMS4xLnYyMDEyMDUxMDIzMDVdCi0JamF2YWV3YWggWzEuMS43LnYyMDIwMDEwNy0wODMxLDEuMS43LnYyMDIwMDEwNy0wODMxXQotCWphdmFld2FoLnNvdXJjZSBbMS4xLjcudjIwMjAwMTA3LTA4MzEsMS4xLjcudjIwMjAwMTA3LTA4MzFdCi0JamF2YXguc2VydmxldCBbMy4xLjAudjIwMTQxMDE2MTgwMCwzLjEuMC52MjAxNDEwMTYxODAwXQotCWphdmF4LnNlcnZsZXQuc291cmNlIFszLjEuMC52MjAxNDEwMTYxODAwLDMuMS4wLnYyMDE0MTAxNjE4MDBdCi0JbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5IFsxLjkuMC52MjAxODExMDctMTQxMCwxLjkuMC52MjAxODExMDctMTQxMF0KLQluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQgWzEuOS4wLnYyMDE4MTEwNi0xNTM0LDEuOS4wLnYyMDE4MTEwNi0xNTM0XQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UgWzEuOS4wLnYyMDE4MTEwNi0xNTM0LDEuOS4wLnYyMDE4MTEwNi0xNTM0XQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS5zb3VyY2UgWzEuOS4wLnYyMDE4MTEwNy0xNDEwLDEuOS4wLnYyMDE4MTEwNy0xNDEwXQotCW5ldC5pMnAuY3J5cHRvLmVkZHNhIFswLjMuMC52MjAxODExMDItMTMyMywwLjMuMC52MjAxODExMDItMTMyM10KLQluZXQuaTJwLmNyeXB0by5lZGRzYS5zb3VyY2UgWzAuMy4wLnYyMDE4MTEwMi0xMzIzLDAuMy4wLnYyMDE4MTEwMi0xMzIzXQotCW9yZy5hcGFjaGUuYW50IFsxLjEwLjcudjIwMTkwOTI2LTAzMjQsMS4xMC43LnYyMDE5MDkyNi0wMzI0XQotCW9yZy5hcGFjaGUuYW50LnNvdXJjZSBbMS4xMC43LnYyMDE5MDkyNi0wMzI0LDEuMTAuNy52MjAxOTA5MjYtMDMyNF0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMgWzEuMTMuMC52MjAyMDAxMDgtMDAwMSwxLjEzLjAudjIwMjAwMTA4LTAwMDFdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSBbMS4xMy4wLnYyMDIwMDEwOC0wMDAxLDEuMTMuMC52MjAyMDAxMDgtMDAwMV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MgWzEuMTkuMC52MjAyMDAxMDYtMjM0MywxLjE5LjAudjIwMjAwMTA2LTIzNDNdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLnNvdXJjZSBbMS4xOS4wLnYyMDIwMDEwNi0yMzQzLDEuMTkuMC52MjAyMDAxMDYtMjM0M10KLQlvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyBbMS4yLjAudjIwMTgwNDA5LTE1MDIsMS4yLjAudjIwMTgwNDA5LTE1MDJdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuc291cmNlIFsxLjIuMC52MjAxODA0MDktMTUwMiwxLjIuMC52MjAxODA0MDktMTUwMl0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQgWzQuNS4xMC52MjAyMDAxMTQtMTUxMiw0LjUuMTAudjIwMjAwMTE0LTE1MTJdCi0Jb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50LnNvdXJjZSBbNC41LjEwLnYyMDIwMDExNC0xNTEyLDQuNS4xMC52MjAyMDAxMTQtMTUxMl0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIFs0LjQuMTIudjIwMjAwMTA4LTEyMTIsNC40LjEyLnYyMDIwMDEwOC0xMjEyXQotCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUuc291cmNlIFs0LjQuMTIudjIwMjAwMTA4LTEyMTIsNC40LjEyLnYyMDIwMDEwOC0xMjEyXQotCW9yZy5hcGFjaGUubG9nNGogWzEuMi4xNS52MjAxMDEyMDcwODE1LDEuMi4xNS52MjAxMDEyMDcwODE1XQotCW9yZy5hcGFjaGUubG9nNGouc291cmNlIFsxLjIuMTUudjIwMTAxMjA3MDgxNSwxLjIuMTUudjIwMTAxMjA3MDgxNV0KLQlvcmcuYXBhY2hlLnNzaGQub3NnaSBbMi4yLjAudjIwMTkwNDI1LTIxMjcsMi4yLjAudjIwMTkwNDI1LTIxMjddCi0Jb3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIFsyLjIuMC52MjAxOTA0MjUtMjEyNywyLjIuMC52MjAxOTA0MjUtMjEyN10KLQlvcmcuYXBhY2hlLnNzaGQuc2Z0cCBbMi4yLjAudjIwMTkwNDI1LTIxMjcsMi4yLjAudjIwMTkwNDI1LTIxMjddCi0Jb3JnLmFwYWNoZS5zc2hkLnNmdHAuc291cmNlIFsyLjIuMC52MjAxOTA0MjUtMjEyNywyLjIuMC52MjAxOTA0MjUtMjEyN10KLQlvcmcuYXNzZXJ0aiBbMy4xNC4wLnYyMDIwMDEyMC0xOTI2LDMuMTQuMC52MjAyMDAxMjAtMTkyNl0KLQlvcmcuYXNzZXJ0ai5zb3VyY2UgWzMuMTQuMC52MjAyMDAxMjAtMTkyNiwzLjE0LjAudjIwMjAwMTIwLTE5MjZdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BnIFsxLjY0LjAudjIwMTkxMTA5LTA4MTUsMS42NC4wLnYyMDE5MTEwOS0wODE1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UgWzEuNjQuMC52MjAxOTExMDktMDgxNSwxLjY0LjAudjIwMTkxMTA5LTA4MTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BraXggWzEuNjQuMC52MjAxOTExMDktMDgxNSwxLjY0LjAudjIwMTkxMTA5LTA4MTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BraXguc291cmNlIFsxLjY0LjAudjIwMTkxMTA5LTA4MTUsMS42NC4wLnYyMDE5MTEwOS0wODE1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IFsxLjY0LjAudjIwMTkxMTA5LTA4MTUsMS42NC4wLnYyMDE5MTEwOS0wODE1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwcm92LnNvdXJjZSBbMS42NC4wLnYyMDE5MTEwOS0wODE1LDEuNjQuMC52MjAxOTExMDktMDgxNV0KLQlvcmcuaGFtY3Jlc3QgWzEuMS4wLnYyMDA5MDUwMTA3MTAwMCwxLjEuMC52MjAwOTA1MDEwNzEwMDBdCi0Jb3JnLmhhbWNyZXN0LmNvcmUgWzEuMy4wLnYyMDE4MDQyMC0xNTE5LDEuMy4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSBbMS4zLjAudjIwMTgwNDIwLTE1MTksMS4zLjAudjIwMTgwNDIwLTE1MTldCi0Jb3JnLmhhbWNyZXN0LmxpYnJhcnkgWzEuMy4wLnYyMDE4MDUyNC0yMjQ2LDEuMy4wLnYyMDE4MDUyNC0yMjQ2XQotCW9yZy5oYW1jcmVzdC5saWJyYXJ5LnNvdXJjZSBbMS4zLjAudjIwMTgwNTI0LTIyNDYsMS4zLjAudjIwMTgwNTI0LTIyNDZdCi0Jb3JnLmp1bml0IFs0LjEzLjAudjIwMjAwMjA0LTE1MDAsNC4xMy4wLnYyMDIwMDIwNC0xNTAwXQotCW9yZy5qdW5pdC5zb3VyY2UgWzQuMTMuMC52MjAyMDAyMDQtMTUwMCw0LjEzLjAudjIwMjAwMjA0LTE1MDBdCi0Jb3JnLmtvaHN1a2UuYXJnczRqIFsyLjMzLjAudjIwMTYwMzIzLTIyMTgsMi4zMy4wLnYyMDE2MDMyMy0yMjE4XQotCW9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UgWzIuMzMuMC52MjAxNjAzMjMtMjIxOCwyLjMzLjAudjIwMTYwMzIzLTIyMThdCi0Jb3JnLm1vY2tpdG8gWzIuMjMuMC52MjAxOTA1MjctMTQyMCwyLjIzLjAudjIwMTkwNTI3LTE0MjBdCi0Jb3JnLm1vY2tpdG8uc291cmNlIFsyLjIzLjAudjIwMTkwNTI3LTE0MjAsMi4yMy4wLnYyMDE5MDUyNy0xNDIwXQotCW9yZy5vYmplbmVzaXMgWzIuNi4wLnYyMDE4MDQyMC0xNTE5LDIuNi4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5vYmplbmVzaXMuc291cmNlIFsyLjYuMC52MjAxODA0MjAtMTUxOSwyLjYuMC52MjAxODA0MjAtMTUxOV0KLQlvcmcuc2xmNGouYXBpIFsxLjcuMi52MjAxMjExMDgtMTI1MCwxLjcuMi52MjAxMjExMDgtMTI1MF0KLQlvcmcuc2xmNGouYXBpLnNvdXJjZSBbMS43LjIudjIwMTIxMTA4LTEyNTAsMS43LjIudjIwMTIxMTA4LTEyNTBdCi0Jb3JnLnNsZjRqLmltcGwubG9nNGoxMiBbMS43LjIudjIwMTMxMTA1LTIyMDAsMS43LjIudjIwMTMxMTA1LTIyMDBdCi0Jb3JnLnNsZjRqLmltcGwubG9nNGoxMi5zb3VyY2UgWzEuNy4yLnYyMDEzMTEwNS0yMjAwLDEuNy4yLnYyMDEzMTEwNS0yMjAwXQotCW9yZy50dWthYW5pLnh6IFsxLjguMC52MjAxODAyMDctMTYxMywxLjguMC52MjAxODAyMDctMTYxM10KLQlvcmcudHVrYWFuaS54ei5zb3VyY2UgWzEuOC4wLnYyMDE4MDIwNy0xNjEzLDEuOC4wLnYyMDE4MDIwNy0xNjEzXQotfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjAwNTI5MTkxMTM3LTIwMjAtMDYudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjAwNTI5MTkxMTM3LTIwMjAtMDYudHBkCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMDEyZWNkLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDIwMDUyOTE5MTEzNy0yMDIwLTA2LnRwZAorKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLXRhcmdldCAiUjIwMjAwNTI5MTkxMTM3LTIwMjAtMDYiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCi0vLyBzZWUgaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy90b29scy9vcmJpdC9kb3dubG9hZHMvCi0KLWxvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAyMDA1MjkxOTExMzcvcmVwb3NpdG9yeSIgewotCWNvbS5nb29nbGUuZ3NvbiBbMi44LjIudjIwMTgwMTA0LTExMTAsMi44LjIudjIwMTgwMTA0LTExMTBdCi0JY29tLmdvb2dsZS5nc29uLnNvdXJjZSBbMi44LjIudjIwMTgwMTA0LTExMTAsMi44LjIudjIwMTgwMTA0LTExMTBdCi0JY29tLmpjcmFmdC5qc2NoIFswLjEuNTUudjIwMTkwNDA0LTE5MDIsMC4xLjU1LnYyMDE5MDQwNC0xOTAyXQotCWNvbS5qY3JhZnQuanNjaC5zb3VyY2UgWzAuMS41NS52MjAxOTA0MDQtMTkwMiwwLjEuNTUudjIwMTkwNDA0LTE5MDJdCi0JY29tLmpjcmFmdC5qemxpYiBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQotCWNvbS5qY3JhZnQuanpsaWIuc291cmNlIFsxLjEuMS52MjAxMjA1MTAyMzA1LDEuMS4xLnYyMDEyMDUxMDIzMDVdCi0JamF2YWV3YWggWzEuMS43LnYyMDIwMDEwNy0wODMxLDEuMS43LnYyMDIwMDEwNy0wODMxXQotCWphdmFld2FoLnNvdXJjZSBbMS4xLjcudjIwMjAwMTA3LTA4MzEsMS4xLjcudjIwMjAwMTA3LTA4MzFdCi0JamF2YXguc2VydmxldCBbMy4xLjAudjIwMTQxMDE2MTgwMCwzLjEuMC52MjAxNDEwMTYxODAwXQotCWphdmF4LnNlcnZsZXQuc291cmNlIFszLjEuMC52MjAxNDEwMTYxODAwLDMuMS4wLnYyMDE0MTAxNjE4MDBdCi0JbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5IFsxLjkuMC52MjAxODExMDctMTQxMCwxLjkuMC52MjAxODExMDctMTQxMF0KLQluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQgWzEuOS4wLnYyMDE4MTEwNi0xNTM0LDEuOS4wLnYyMDE4MTEwNi0xNTM0XQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudC5zb3VyY2UgWzEuOS4wLnYyMDE4MTEwNi0xNTM0LDEuOS4wLnYyMDE4MTEwNi0xNTM0XQotCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS5zb3VyY2UgWzEuOS4wLnYyMDE4MTEwNy0xNDEwLDEuOS4wLnYyMDE4MTEwNy0xNDEwXQotCW5ldC5pMnAuY3J5cHRvLmVkZHNhIFswLjMuMC52MjAxODExMDItMTMyMywwLjMuMC52MjAxODExMDItMTMyM10KLQluZXQuaTJwLmNyeXB0by5lZGRzYS5zb3VyY2UgWzAuMy4wLnYyMDE4MTEwMi0xMzIzLDAuMy4wLnYyMDE4MTEwMi0xMzIzXQotCW9yZy5hcGFjaGUuYW50IFsxLjEwLjgudjIwMjAwNTE1LTEyMzksMS4xMC44LnYyMDIwMDUxNS0xMjM5XQotCW9yZy5hcGFjaGUuYW50LnNvdXJjZSBbMS4xMC44LnYyMDIwMDUxNS0xMjM5LDEuMTAuOC52MjAyMDA1MTUtMTIzOV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMgWzEuMTMuMC52MjAyMDAxMDgtMDAwMSwxLjEzLjAudjIwMjAwMTA4LTAwMDFdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvZGVjLnNvdXJjZSBbMS4xMy4wLnYyMDIwMDEwOC0wMDAxLDEuMTMuMC52MjAyMDAxMDgtMDAwMV0KLQlvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MgWzEuMTkuMC52MjAyMDAxMDYtMjM0MywxLjE5LjAudjIwMjAwMTA2LTIzNDNdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLnNvdXJjZSBbMS4xOS4wLnYyMDIwMDEwNi0yMzQzLDEuMTkuMC52MjAyMDAxMDYtMjM0M10KLQlvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZyBbMS4yLjAudjIwMTgwNDA5LTE1MDIsMS4yLjAudjIwMTgwNDA5LTE1MDJdCi0Jb3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuc291cmNlIFsxLjIuMC52MjAxODA0MDktMTUwMiwxLjIuMC52MjAxODA0MDktMTUwMl0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQgWzQuNS4xMC52MjAyMDAxMTQtMTUxMiw0LjUuMTAudjIwMjAwMTE0LTE1MTJdCi0Jb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY2xpZW50LnNvdXJjZSBbNC41LjEwLnYyMDIwMDExNC0xNTEyLDQuNS4xMC52MjAyMDAxMTQtMTUxMl0KLQlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjb3JlIFs0LjQuMTIudjIwMjAwMTA4LTEyMTIsNC40LjEyLnYyMDIwMDEwOC0xMjEyXQotCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUuc291cmNlIFs0LjQuMTIudjIwMjAwMTA4LTEyMTIsNC40LjEyLnYyMDIwMDEwOC0xMjEyXQotCW9yZy5hcGFjaGUubG9nNGogWzEuMi4xNS52MjAxMDEyMDcwODE1LDEuMi4xNS52MjAxMDEyMDcwODE1XQotCW9yZy5hcGFjaGUubG9nNGouc291cmNlIFsxLjIuMTUudjIwMTAxMjA3MDgxNSwxLjIuMTUudjIwMTAxMjA3MDgxNV0KLQlvcmcuYXBhY2hlLnNzaGQub3NnaSBbMi40LjAudjIwMjAwMzE4LTE2MTQsMi40LjAudjIwMjAwMzE4LTE2MTRdCi0Jb3JnLmFwYWNoZS5zc2hkLm9zZ2kuc291cmNlIFsyLjQuMC52MjAyMDAzMTgtMTYxNCwyLjQuMC52MjAyMDAzMTgtMTYxNF0KLQlvcmcuYXBhY2hlLnNzaGQuc2Z0cCBbMi40LjAudjIwMjAwMzE5LTE1NDcsMi40LjAudjIwMjAwMzE5LTE1NDddCi0Jb3JnLmFwYWNoZS5zc2hkLnNmdHAuc291cmNlIFsyLjQuMC52MjAyMDAzMTktMTU0NywyLjQuMC52MjAyMDAzMTktMTU0N10KLQlvcmcuYXNzZXJ0aiBbMy4xNC4wLnYyMDIwMDEyMC0xOTI2LDMuMTQuMC52MjAyMDAxMjAtMTkyNl0KLQlvcmcuYXNzZXJ0ai5zb3VyY2UgWzMuMTQuMC52MjAyMDAxMjAtMTkyNiwzLjE0LjAudjIwMjAwMTIwLTE5MjZdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BnIFsxLjY1LjAudjIwMjAwNTI3LTE5NTUsMS42NS4wLnYyMDIwMDUyNy0xOTU1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwZy5zb3VyY2UgWzEuNjUuMC52MjAyMDA1MjctMTk1NSwxLjY1LjAudjIwMjAwNTI3LTE5NTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BraXggWzEuNjUuMC52MjAyMDA1MjctMTk1NSwxLjY1LjAudjIwMjAwNTI3LTE5NTVdCi0Jb3JnLmJvdW5jeWNhc3RsZS5iY3BraXguc291cmNlIFsxLjY1LjAudjIwMjAwNTI3LTE5NTUsMS42NS4wLnYyMDIwMDUyNy0xOTU1XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwcm92IFsxLjY1LjEudjIwMjAwNTI5LTE1MTQsMS42NS4xLnYyMDIwMDUyOS0xNTE0XQotCW9yZy5ib3VuY3ljYXN0bGUuYmNwcm92LnNvdXJjZSBbMS42NS4xLnYyMDIwMDUyOS0xNTE0LDEuNjUuMS52MjAyMDA1MjktMTUxNF0KLQlvcmcuaGFtY3Jlc3QgWzEuMS4wLnYyMDA5MDUwMTA3MTAwMCwxLjEuMC52MjAwOTA1MDEwNzEwMDBdCi0Jb3JnLmhhbWNyZXN0LmNvcmUgWzEuMy4wLnYyMDE4MDQyMC0xNTE5LDEuMy4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5oYW1jcmVzdC5jb3JlLnNvdXJjZSBbMS4zLjAudjIwMTgwNDIwLTE1MTksMS4zLjAudjIwMTgwNDIwLTE1MTldCi0Jb3JnLmhhbWNyZXN0LmxpYnJhcnkgWzEuMy4wLnYyMDE4MDUyNC0yMjQ2LDEuMy4wLnYyMDE4MDUyNC0yMjQ2XQotCW9yZy5oYW1jcmVzdC5saWJyYXJ5LnNvdXJjZSBbMS4zLjAudjIwMTgwNTI0LTIyNDYsMS4zLjAudjIwMTgwNTI0LTIyNDZdCi0Jb3JnLmp1bml0IFs0LjEzLjAudjIwMjAwMjA0LTE1MDAsNC4xMy4wLnYyMDIwMDIwNC0xNTAwXQotCW9yZy5qdW5pdC5zb3VyY2UgWzQuMTMuMC52MjAyMDAyMDQtMTUwMCw0LjEzLjAudjIwMjAwMjA0LTE1MDBdCi0Jb3JnLmtvaHN1a2UuYXJnczRqIFsyLjMzLjAudjIwMTYwMzIzLTIyMTgsMi4zMy4wLnYyMDE2MDMyMy0yMjE4XQotCW9yZy5rb2hzdWtlLmFyZ3M0ai5zb3VyY2UgWzIuMzMuMC52MjAxNjAzMjMtMjIxOCwyLjMzLjAudjIwMTYwMzIzLTIyMThdCi0Jb3JnLm1vY2tpdG8gWzIuMjMuMC52MjAyMDAzMTAtMTY0MiwyLjIzLjAudjIwMjAwMzEwLTE2NDJdCi0Jb3JnLm1vY2tpdG8uc291cmNlIFsyLjIzLjAudjIwMjAwMzEwLTE2NDIsMi4yMy4wLnYyMDIwMDMxMC0xNjQyXQotCW9yZy5vYmplbmVzaXMgWzIuNi4wLnYyMDE4MDQyMC0xNTE5LDIuNi4wLnYyMDE4MDQyMC0xNTE5XQotCW9yZy5vYmplbmVzaXMuc291cmNlIFsyLjYuMC52MjAxODA0MjAtMTUxOSwyLjYuMC52MjAxODA0MjAtMTUxOV0KLQlvcmcuc2xmNGouYXBpIFsxLjcuMi52MjAxMjExMDgtMTI1MCwxLjcuMi52MjAxMjExMDgtMTI1MF0KLQlvcmcuc2xmNGouYXBpLnNvdXJjZSBbMS43LjIudjIwMTIxMTA4LTEyNTAsMS43LjIudjIwMTIxMTA4LTEyNTBdCi0Jb3JnLnNsZjRqLmltcGwubG9nNGoxMiBbMS43LjIudjIwMTMxMTA1LTIyMDAsMS43LjIudjIwMTMxMTA1LTIyMDBdCi0Jb3JnLnNsZjRqLmltcGwubG9nNGoxMi5zb3VyY2UgWzEuNy4yLnYyMDEzMTEwNS0yMjAwLDEuNy4yLnYyMDEzMTEwNS0yMjAwXQotCW9yZy50dWthYW5pLnh6IFsxLjguMC52MjAxODAyMDctMTYxMywxLjguMC52MjAxODAyMDctMTYxM10KLQlvcmcudHVrYWFuaS54ei5zb3VyY2UgWzEuOC4wLnYyMDE4MDIwNy0xNjEzLDEuOC4wLnYyMDE4MDIwNy0xNjEzXQotfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjEwODI1MjIyODA4LTIwMjEtMDkudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjEwODI1MjIyODA4LTIwMjEtMDkudHBkCmluZGV4IDA1OWE1ODQuLjk5ZjM1MjAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDIxMDgyNTIyMjgwOC0yMDIxLTA5LnRwZAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9vcmJpdC9SMjAyMTA4MjUyMjI4MDgtMjAyMS0wOS50cGQKQEAgLTgsNiArOCwxMCBAQAogCWNvbS5qY3JhZnQuanNjaC5zb3VyY2UgWzAuMS41NS52MjAxOTA0MDQtMTkwMiwwLjEuNTUudjIwMTkwNDA0LTE5MDJdCiAJY29tLmpjcmFmdC5qemxpYiBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQogCWNvbS5qY3JhZnQuanpsaWIuc291cmNlIFsxLjEuMS52MjAxMjA1MTAyMzA1LDEuMS4xLnYyMDEyMDUxMDIzMDVdCisJY29tLnN1bi5qbmEgWzUuOC4wLnYyMDIxMDUwMy0wMzQzLDUuOC4wLnYyMDIxMDUwMy0wMzQzXQorCWNvbS5zdW4uam5hLnNvdXJjZSBbNS44LjAudjIwMjEwNTAzLTAzNDMsNS44LjAudjIwMjEwNTAzLTAzNDNdCisJY29tLnN1bi5qbmEucGxhdGZvcm0gWzUuOC4wLnYyMDIxMDQwNi0xMDA0LDUuOC4wLnYyMDIxMDQwNi0xMDA0XQorCWNvbS5zdW4uam5hLnBsYXRmb3JtLnNvdXJjZSBbNS44LjAudjIwMjEwNDA2LTEwMDQsNS44LjAudjIwMjEwNDA2LTEwMDRdCiAJamF2YWV3YWggWzEuMS4xMi52MjAyMTA2MjItMjIwNiwxLjEuMTIudjIwMjEwNjIyLTIyMDZdCiAJamF2YWV3YWguc291cmNlIFsxLjEuMTIudjIwMjEwNjIyLTIyMDYsMS4xLjEyLnYyMDIxMDYyMi0yMjA2XQogCWphdmF4LnNlcnZsZXQgWzMuMS4wLnYyMDE0MTAxNjE4MDAsMy4xLjAudjIwMTQxMDE2MTgwMF0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDIxMTEyMjE4MTkwMS0yMDIxLTEyLnRwZCBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDIxMTEyMjE4MTkwMS0yMDIxLTEyLnRwZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZDFkMWMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjExMTIyMTgxOTAxLTIwMjEtMTIudHBkCkBAIC0wLDAgKzEsNzEgQEAKK3RhcmdldCAiUjIwMjExMTIyMTgxOTAxLTIwMjEtMTIiIHdpdGggc291cmNlIGNvbmZpZ3VyZVBoYXNlCisvLyBzZWUgaHR0cHM6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy90b29scy9vcmJpdC9kb3dubG9hZHMvCisKK2xvY2F0aW9uICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3Rvb2xzL29yYml0L2Rvd25sb2Fkcy9kcm9wcy9SMjAyMTExMjIxODE5MDEvcmVwb3NpdG9yeSIgeworCWNvbS5nb29nbGUuZ3NvbiBbMi44LjgudjIwMjExMDI5LTA4MzgsMi44LjgudjIwMjExMDI5LTA4MzhdCisJY29tLmdvb2dsZS5nc29uLnNvdXJjZSBbMi44LjgudjIwMjExMDI5LTA4MzgsMi44LjgudjIwMjExMDI5LTA4MzhdCisJY29tLmpjcmFmdC5qc2NoIFswLjEuNTUudjIwMTkwNDA0LTE5MDIsMC4xLjU1LnYyMDE5MDQwNC0xOTAyXQorCWNvbS5qY3JhZnQuanNjaC5zb3VyY2UgWzAuMS41NS52MjAxOTA0MDQtMTkwMiwwLjEuNTUudjIwMTkwNDA0LTE5MDJdCisJY29tLmpjcmFmdC5qemxpYiBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQorCWNvbS5qY3JhZnQuanpsaWIuc291cmNlIFsxLjEuMS52MjAxMjA1MTAyMzA1LDEuMS4xLnYyMDEyMDUxMDIzMDVdCisJY29tLnN1bi5qbmEgWzUuOC4wLnYyMDIxMDUwMy0wMzQzLDUuOC4wLnYyMDIxMDUwMy0wMzQzXQorCWNvbS5zdW4uam5hLnNvdXJjZSBbNS44LjAudjIwMjEwNTAzLTAzNDMsNS44LjAudjIwMjEwNTAzLTAzNDNdCisJY29tLnN1bi5qbmEucGxhdGZvcm0gWzUuOC4wLnYyMDIxMDQwNi0xMDA0LDUuOC4wLnYyMDIxMDQwNi0xMDA0XQorCWNvbS5zdW4uam5hLnBsYXRmb3JtLnNvdXJjZSBbNS44LjAudjIwMjEwNDA2LTEwMDQsNS44LjAudjIwMjEwNDA2LTEwMDRdCisJamF2YWV3YWggWzEuMS4xMy52MjAyMTEwMjktMDgzOSwxLjEuMTMudjIwMjExMDI5LTA4MzldCisJamF2YWV3YWguc291cmNlIFsxLjEuMTMudjIwMjExMDI5LTA4MzksMS4xLjEzLnYyMDIxMTAyOS0wODM5XQorCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeSBbMS45LjAudjIwMTgxMTA3LTE0MTAsMS45LjAudjIwMTgxMTA3LTE0MTBdCisJbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50IFsxLjkuMC52MjAxODExMDYtMTUzNCwxLjkuMC52MjAxODExMDYtMTUzNF0KKwluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHktYWdlbnQuc291cmNlIFsxLjkuMC52MjAxODExMDYtMTUzNCwxLjkuMC52MjAxODExMDYtMTUzNF0KKwluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkuc291cmNlIFsxLjkuMC52MjAxODExMDctMTQxMCwxLjkuMC52MjAxODExMDctMTQxMF0KKwluZXQuaTJwLmNyeXB0by5lZGRzYSBbMC4zLjAudjIwMjEwOTIzLTE0MDEsMC4zLjAudjIwMjEwOTIzLTE0MDFdCisJbmV0LmkycC5jcnlwdG8uZWRkc2Euc291cmNlIFswLjMuMC52MjAyMTA5MjMtMTQwMSwwLjMuMC52MjAyMTA5MjMtMTQwMV0KKwlvcmcuYXBhY2hlLmFudCBbMS4xMC4xMi52MjAyMTExMDItMTQ1MiwxLjEwLjEyLnYyMDIxMTEwMi0xNDUyXQorCW9yZy5hcGFjaGUuYW50LnNvdXJjZSBbMS4xMC4xMi52MjAyMTExMDItMTQ1MiwxLjEwLjEyLnYyMDIxMTEwMi0xNDUyXQorCW9yZy5hcGFjaGUuY29tbW9ucy5jb2RlYyBbMS4xNC4wLnYyMDIwMDgxOC0xNDIyLDEuMTQuMC52MjAyMDA4MTgtMTQyMl0KKwlvcmcuYXBhY2hlLmNvbW1vbnMuY29kZWMuc291cmNlIFsxLjE0LjAudjIwMjAwODE4LTE0MjIsMS4xNC4wLnYyMDIwMDgxOC0xNDIyXQorCW9yZy5hcGFjaGUuY29tbW9ucy5jb21wcmVzcyBbMS4yMS4wLnYyMDIxMTEwMy0yMTAwLDEuMjEuMC52MjAyMTExMDMtMjEwMF0KKwlvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3Muc291cmNlIFsxLjIxLjAudjIwMjExMTAzLTIxMDAsMS4yMS4wLnYyMDIxMTEwMy0yMTAwXQorCW9yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nIFsxLjIuMC52MjAxODA0MDktMTUwMiwxLjIuMC52MjAxODA0MDktMTUwMl0KKwlvcmcuYXBhY2hlLmNvbW1vbnMubG9nZ2luZy5zb3VyY2UgWzEuMi4wLnYyMDE4MDQwOS0xNTAyLDEuMi4wLnYyMDE4MDQwOS0xNTAyXQorCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNsaWVudCBbNC41LjEzLnYyMDIxMDEyOC0yMjI1LDQuNS4xMy52MjAyMTAxMjgtMjIyNV0KKwlvcmcuYXBhY2hlLmh0dHBjb21wb25lbnRzLmh0dHBjbGllbnQuc291cmNlIFs0LjUuMTMudjIwMjEwMTI4LTIyMjUsNC41LjEzLnYyMDIxMDEyOC0yMjI1XQorCW9yZy5hcGFjaGUuaHR0cGNvbXBvbmVudHMuaHR0cGNvcmUgWzQuNC4xNC52MjAyMTAxMjgtMjIyNSw0LjQuMTQudjIwMjEwMTI4LTIyMjVdCisJb3JnLmFwYWNoZS5odHRwY29tcG9uZW50cy5odHRwY29yZS5zb3VyY2UgWzQuNC4xNC52MjAyMTAxMjgtMjIyNSw0LjQuMTQudjIwMjEwMTI4LTIyMjVdCisJb3JnLmFwYWNoZS5sb2c0aiBbMS4yLjE1LnYyMDEwMTIwNzA4MTUsMS4yLjE1LnYyMDEwMTIwNzA4MTVdCisJb3JnLmFwYWNoZS5sb2c0ai5zb3VyY2UgWzEuMi4xNS52MjAxMDEyMDcwODE1LDEuMi4xNS52MjAxMDEyMDcwODE1XQorCW9yZy5hcGFjaGUuc3NoZC5vc2dpIFsyLjcuMC52MjAyMTA2MjMtMDYxOCwyLjcuMC52MjAyMTA2MjMtMDYxOF0KKwlvcmcuYXBhY2hlLnNzaGQub3NnaS5zb3VyY2UgWzIuNy4wLnYyMDIxMDYyMy0wNjE4LDIuNy4wLnYyMDIxMDYyMy0wNjE4XQorCW9yZy5hcGFjaGUuc3NoZC5zZnRwIFsyLjcuMC52MjAyMTA2MjMtMDYxOCwyLjcuMC52MjAyMTA2MjMtMDYxOF0KKwlvcmcuYXBhY2hlLnNzaGQuc2Z0cC5zb3VyY2UgWzIuNy4wLnYyMDIxMDYyMy0wNjE4LDIuNy4wLnYyMDIxMDYyMy0wNjE4XQorCW9yZy5hc3NlcnRqIFszLjIwLjIudjIwMjEwNzA2LTExMDQsMy4yMC4yLnYyMDIxMDcwNi0xMTA0XQorCW9yZy5hc3NlcnRqLnNvdXJjZSBbMy4yMC4yLnYyMDIxMDcwNi0xMTA0LDMuMjAuMi52MjAyMTA3MDYtMTEwNF0KKwlvcmcuYm91bmN5Y2FzdGxlLmJjcGcgWzEuNjkuMC52MjAyMTA3MTMtMTkyNCwxLjY5LjAudjIwMjEwNzEzLTE5MjRdCisJb3JnLmJvdW5jeWNhc3RsZS5iY3BnLnNvdXJjZSBbMS42OS4wLnYyMDIxMDcxMy0xOTI0LDEuNjkuMC52MjAyMTA3MTMtMTkyNF0KKwlvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeCBbMS42OS4wLnYyMDIxMDcxMy0xOTI0LDEuNjkuMC52MjAyMTA3MTMtMTkyNF0KKwlvcmcuYm91bmN5Y2FzdGxlLmJjcGtpeC5zb3VyY2UgWzEuNjkuMC52MjAyMTA3MTMtMTkyNCwxLjY5LjAudjIwMjEwNzEzLTE5MjRdCisJb3JnLmJvdW5jeWNhc3RsZS5iY3Byb3YgWzEuNjkuMC52MjAyMTA5MjMtMTQwMSwxLjY5LjAudjIwMjEwOTIzLTE0MDFdCisJb3JnLmJvdW5jeWNhc3RsZS5iY3Byb3Yuc291cmNlIFsxLjY5LjAudjIwMjEwOTIzLTE0MDEsMS42OS4wLnYyMDIxMDkyMy0xNDAxXQorCW9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsIFsxLjY5LjAudjIwMjEwNzEzLTE5MjQsMS42OS4wLnYyMDIxMDcxMy0xOTI0XQorCW9yZy5ib3VuY3ljYXN0bGUuYmN1dGlsLnNvdXJjZSBbMS42OS4wLnYyMDIxMDcxMy0xOTI0LDEuNjkuMC52MjAyMTA3MTMtMTkyNF0KKwlvcmcuaGFtY3Jlc3QgWzIuMi4wLnYyMDIxMDcxMS0wODIxLDIuMi4wLnYyMDIxMDcxMS0wODIxXQorCW9yZy5oYW1jcmVzdC5zb3VyY2UgWzIuMi4wLnYyMDIxMDcxMS0wODIxLDIuMi4wLnYyMDIxMDcxMS0wODIxXQorCW9yZy5oYW1jcmVzdC5jb3JlIFsxLjMuMC52MjAxODA0MjAtMTUxOSwxLjMuMC52MjAxODA0MjAtMTUxOV0KKwlvcmcuaGFtY3Jlc3QuY29yZS5zb3VyY2UgWzEuMy4wLnYyMDE4MDQyMC0xNTE5LDEuMy4wLnYyMDE4MDQyMC0xNTE5XQorCW9yZy5oYW1jcmVzdC5saWJyYXJ5IFsxLjMuMC52MjAxODA1MjQtMjI0NiwxLjMuMC52MjAxODA1MjQtMjI0Nl0KKwlvcmcuaGFtY3Jlc3QubGlicmFyeS5zb3VyY2UgWzEuMy4wLnYyMDE4MDUyNC0yMjQ2LDEuMy4wLnYyMDE4MDUyNC0yMjQ2XQorCW9yZy5qdW5pdCBbNC4xMy4yLnYyMDIxMTAxOC0xOTU2LDQuMTMuMi52MjAyMTEwMTgtMTk1Nl0KKwlvcmcuanVuaXQuc291cmNlIFs0LjEzLjIudjIwMjExMDE4LTE5NTYsNC4xMy4yLnYyMDIxMTAxOC0xOTU2XQorCW9yZy5rb2hzdWtlLmFyZ3M0aiBbMi4zMy4wLnYyMDE2MDMyMy0yMjE4LDIuMzMuMC52MjAxNjAzMjMtMjIxOF0KKwlvcmcua29oc3VrZS5hcmdzNGouc291cmNlIFsyLjMzLjAudjIwMTYwMzIzLTIyMTgsMi4zMy4wLnYyMDE2MDMyMy0yMjE4XQorCW9yZy5tb2NraXRvIFsyLjIzLjAudjIwMjAwMzEwLTE2NDIsMi4yMy4wLnYyMDIwMDMxMC0xNjQyXQorCW9yZy5tb2NraXRvLnNvdXJjZSBbMi4yMy4wLnYyMDIwMDMxMC0xNjQyLDIuMjMuMC52MjAyMDAzMTAtMTY0Ml0KKwlvcmcub2JqZW5lc2lzIFsyLjYuMC52MjAxODA0MjAtMTUxOSwyLjYuMC52MjAxODA0MjAtMTUxOV0KKwlvcmcub2JqZW5lc2lzLnNvdXJjZSBbMi42LjAudjIwMTgwNDIwLTE1MTksMi42LjAudjIwMTgwNDIwLTE1MTldCisJb3JnLnNsZjRqLmFwaSBbMS43LjMwLnYyMDIwMDIwNC0yMTUwLDEuNy4zMC52MjAyMDAyMDQtMjE1MF0KKwlvcmcuc2xmNGouYXBpLnNvdXJjZSBbMS43LjMwLnYyMDIwMDIwNC0yMTUwLDEuNy4zMC52MjAyMDAyMDQtMjE1MF0KKwlvcmcuc2xmNGouYmluZGluZy5sb2c0ajEyIFsxLjcuMzAudjIwMjAxMTA4LTIwNDIsMS43LjMwLnYyMDIwMTEwOC0yMDQyXQorCW9yZy5zbGY0ai5iaW5kaW5nLmxvZzRqMTIuc291cmNlIFsxLjcuMzAudjIwMjAxMTA4LTIwNDIsMS43LjMwLnYyMDIwMTEwOC0yMDQyXQorCW9yZy50dWthYW5pLnh6IFsxLjkuMC52MjAyMTA2MjQtMTI1OSwxLjkuMC52MjAyMTA2MjQtMTI1OV0KKwlvcmcudHVrYWFuaS54ei5zb3VyY2UgWzEuOS4wLnYyMDIxMDYyNC0xMjU5LDEuOS4wLnYyMDIxMDYyNC0xMjU5XQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjExMjEzMTczODEzLTIwMjEtMTIudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvb3JiaXQvUjIwMjExMjEzMTczODEzLTIwMjEtMTIudHBkCmluZGV4IGFlZWVkNTYuLjBjN2M4NDYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L29yYml0L1IyMDIxMTIxMzE3MzgxMy0yMDIxLTEyLnRwZAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9vcmJpdC9SMjAyMTEyMTMxNzM4MTMtMjAyMS0xMi50cGQKQEAgLTgsMTAgKzgsMTIgQEAKIAljb20uamNyYWZ0LmpzY2guc291cmNlIFswLjEuNTUudjIwMTkwNDA0LTE5MDIsMC4xLjU1LnYyMDE5MDQwNC0xOTAyXQogCWNvbS5qY3JhZnQuanpsaWIgWzEuMS4xLnYyMDEyMDUxMDIzMDUsMS4xLjEudjIwMTIwNTEwMjMwNV0KIAljb20uamNyYWZ0Lmp6bGliLnNvdXJjZSBbMS4xLjEudjIwMTIwNTEwMjMwNSwxLjEuMS52MjAxMjA1MTAyMzA1XQorCWNvbS5zdW4uam5hIFs1LjguMC52MjAyMTA1MDMtMDM0Myw1LjguMC52MjAyMTA1MDMtMDM0M10KKwljb20uc3VuLmpuYS5zb3VyY2UgWzUuOC4wLnYyMDIxMDUwMy0wMzQzLDUuOC4wLnYyMDIxMDUwMy0wMzQzXQorCWNvbS5zdW4uam5hLnBsYXRmb3JtIFs1LjguMC52MjAyMTA0MDYtMTAwNCw1LjguMC52MjAyMTA0MDYtMTAwNF0KKwljb20uc3VuLmpuYS5wbGF0Zm9ybS5zb3VyY2UgWzUuOC4wLnYyMDIxMDQwNi0xMDA0LDUuOC4wLnYyMDIxMDQwNi0xMDA0XQogCWphdmFld2FoIFsxLjEuMTMudjIwMjExMDI5LTA4MzksMS4xLjEzLnYyMDIxMTAyOS0wODM5XQogCWphdmFld2FoLnNvdXJjZSBbMS4xLjEzLnYyMDIxMTAyOS0wODM5LDEuMS4xMy52MjAyMTEwMjktMDgzOV0KLQlqYXZheC5zZXJ2bGV0IFszLjEuMC52MjAxNDEwMTYxODAwLDMuMS4wLnYyMDE0MTAxNjE4MDBdCi0JamF2YXguc2VydmxldC5zb3VyY2UgWzMuMS4wLnYyMDE0MTAxNjE4MDAsMy4xLjAudjIwMTQxMDE2MTgwMF0KIAluZXQuYnl0ZWJ1ZGR5LmJ5dGUtYnVkZHkgWzEuOS4wLnYyMDE4MTEwNy0xNDEwLDEuOS4wLnYyMDE4MTEwNy0xNDEwXQogCW5ldC5ieXRlYnVkZHkuYnl0ZS1idWRkeS1hZ2VudCBbMS45LjAudjIwMTgxMTA2LTE1MzQsMS45LjAudjIwMTgxMTA2LTE1MzRdCiAJbmV0LmJ5dGVidWRkeS5ieXRlLWJ1ZGR5LWFnZW50LnNvdXJjZSBbMS45LjAudjIwMTgxMTA2LTE1MzQsMS45LjAudjIwMTgxMTA2LTE1MzRdCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvcG9tLnhtbAppbmRleCBlMzJjMzkyLi44YmVlMWZjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL29yZy5lY2xpcHNlLmpnaXQudGFyZ2V0L3BvbS54bWwKQEAgLTE2LDcgKzE2LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPmpnaXQudHljaG8ucGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC50YXJnZXQ8L2FydGlmYWN0SWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9wcm9qZWN0cy9qZXR0eS0xMC4wLngudHBkIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvcHJvamVjdHMvamV0dHktMTAuMC54LnRwZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YzNlZTE4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvcHJvamVjdHMvamV0dHktMTAuMC54LnRwZApAQCAtMCwwICsxLDIwIEBACit0YXJnZXQgImpldHR5LTEwLjAueCIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKKworbG9jYXRpb24gamV0dHktMTAuMC54ICJodHRwczovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL2VjbGlwc2UvamV0dHkvMTAuMC42LyIgeworCWpha2FydGEuc2VydmxldC1hcGkgWzQuMC4wLCA1LjAuMCkKKwlqYWthcnRhLnNlcnZsZXQtYXBpLnNvdXJjZSBbNC4wLjAsIDUuMC4wKQorCW9yZy5lY2xpcHNlLmpldHR5Lmh0dHAgWzEwLjAuNiwxMC4wLjZdCisJb3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UgWzEwLjAuNiwxMC4wLjZdCisJb3JnLmVjbGlwc2UuamV0dHkuaW8gWzEwLjAuNiwxMC4wLjZdCisJb3JnLmVjbGlwc2UuamV0dHkuaW8uc291cmNlIFsxMC4wLjYsMTAuMC42XQorCW9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IFsxMC4wLjYsMTAuMC42XQorCW9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5LnNvdXJjZSBbMTAuMC42LDEwLjAuNl0KKwlvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIgWzEwLjAuNiwxMC4wLjZdCisJb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSBbMTAuMC42LDEwLjAuNl0KKwlvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IFsxMC4wLjYsMTAuMC42XQorCW9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQuc291cmNlIFsxMC4wLjYsMTAuMC42XQorCW9yZy5lY2xpcHNlLmpldHR5LnV0aWwgWzEwLjAuNiwxMC4wLjZdCisJb3JnLmVjbGlwc2UuamV0dHkudXRpbC5zb3VyY2UgWzEwLjAuNiwxMC4wLjZdCisJb3JnLmVjbGlwc2UuamV0dHkudXRpbC5hamF4IFsxMC4wLjYsMTAuMC42XQorCW9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UgWzEwLjAuNiwxMC4wLjZdCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9wcm9qZWN0cy9qZXR0eS05LjQueC50cGQgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9vcmcuZWNsaXBzZS5qZ2l0LnRhcmdldC9wcm9qZWN0cy9qZXR0eS05LjQueC50cGQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDllODkzNmEuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvb3JnLmVjbGlwc2UuamdpdC50YXJnZXQvcHJvamVjdHMvamV0dHktOS40LngudHBkCisrKyAvZGV2L251bGwKQEAgLTEsMjIgKzAsMCBAQAotdGFyZ2V0ICJqZXR0eS05LjQueCIgd2l0aCBzb3VyY2UgY29uZmlndXJlUGhhc2UKLQotbG9jYXRpb24gamV0dHktOS40LnggImh0dHBzOi8vYXJjaGl2ZS5lY2xpcHNlLm9yZy9qZXR0eS91cGRhdGVzL2pldHR5LWJ1bmRsZXMtOS54L2pldHR5LWJ1bmRsZXMtOS54LzkuNC40My52MjAyMTA2MjkvIiB7Ci0Jb3JnLmVjbGlwc2UuamV0dHkuY2xpZW50IFs5LjQuNDMudjIwMjEwNjI5LDkuNC40My52MjAyMTA2MjldCi0Jb3JnLmVjbGlwc2UuamV0dHkuY2xpZW50LnNvdXJjZSBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbiBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LmNvbnRpbnVhdGlvbi5zb3VyY2UgWzkuNC40My52MjAyMTA2MjksOS40LjQzLnYyMDIxMDYyOV0KLQlvcmcuZWNsaXBzZS5qZXR0eS5odHRwIFs5LjQuNDMudjIwMjEwNjI5LDkuNC40My52MjAyMTA2MjldCi0Jb3JnLmVjbGlwc2UuamV0dHkuaHR0cC5zb3VyY2UgWzkuNC40My52MjAyMTA2MjksOS40LjQzLnYyMDIxMDYyOV0KLQlvcmcuZWNsaXBzZS5qZXR0eS5pbyBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LmlvLnNvdXJjZSBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LnNlY3VyaXR5IFs5LjQuNDMudjIwMjEwNjI5LDkuNC40My52MjAyMTA2MjldCi0Jb3JnLmVjbGlwc2UuamV0dHkuc2VjdXJpdHkuc291cmNlIFs5LjQuNDMudjIwMjEwNjI5LDkuNC40My52MjAyMTA2MjldCi0Jb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyIFs5LjQuNDMudjIwMjEwNjI5LDkuNC40My52MjAyMTA2MjldCi0Jb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyLnNvdXJjZSBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQgWzkuNC40My52MjAyMTA2MjksOS40LjQzLnYyMDIxMDYyOV0KLQlvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0LnNvdXJjZSBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LnV0aWwgWzkuNC40My52MjAyMTA2MjksOS40LjQzLnYyMDIxMDYyOV0KLQlvcmcuZWNsaXBzZS5qZXR0eS51dGlsLnNvdXJjZSBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheCBbOS40LjQzLnYyMDIxMDYyOSw5LjQuNDMudjIwMjEwNjI5XQotCW9yZy5lY2xpcHNlLmpldHR5LnV0aWwuYWpheC5zb3VyY2UgWzkuNC40My52MjAyMTA2MjksOS40LjQzLnYyMDIxMDYyOV0KLX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBhY2thZ2luZy9wb20ueG1sCmluZGV4IDQwMGE0MDYuLjgwYTY0YmQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wYWNrYWdpbmcvcG9tLnhtbApAQCAtMTYsMTUgKzE2LDE2IEBACiAKICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgPGFydGlmYWN0SWQ+amdpdC50eWNoby5wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDxwYWNrYWdpbmc+cG9tPC9wYWNrYWdpbmc+CiAKICAgPG5hbWU+SkdpdCBUeWNobyBQYXJlbnQ8L25hbWU+CiAKICAgPHByb3BlcnRpZXM+Ci0gICAgPHR5Y2hvLXZlcnNpb24+MS43LjA8L3R5Y2hvLXZlcnNpb24+CisgICAgPGphdmEudmVyc2lvbj4xMTwvamF2YS52ZXJzaW9uPgorICAgIDx0eWNoby12ZXJzaW9uPjIuNS4wPC90eWNoby12ZXJzaW9uPgogICAgIDx0eWNoby1leHRyYXMtdmVyc2lvbj4ke3R5Y2hvLXZlcnNpb259PC90eWNoby1leHRyYXMtdmVyc2lvbj4KLSAgICA8dGFyZ2V0LXBsYXRmb3JtPmpnaXQtNC42PC90YXJnZXQtcGxhdGZvcm0+CisgICAgPHRhcmdldC1wbGF0Zm9ybT5qZ2l0LTQuMTc8L3RhcmdldC1wbGF0Zm9ybT4KICAgPC9wcm9wZXJ0aWVzPgogCiAgIDxwbHVnaW5SZXBvc2l0b3JpZXM+CkBAIC0xNDgsNiArMTQ5LDEyIEBACiAgICAgPC9kZXBlbmRlbmN5PgogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KKyAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudDwvYXJ0aWZhY3RJZD4KKyAgICAgIDx2ZXJzaW9uPiR7cHJvamVjdC52ZXJzaW9ufTwvdmVyc2lvbj4KKyAgICAgIDxjbGFzc2lmaWVyPnNvdXJjZXM8L2NsYXNzaWZpZXI+CisgICAgPC9kZXBlbmRlbmN5PgorICAgIDxkZXBlbmRlbmN5PgorICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2g8L2FydGlmYWN0SWQ+CiAgICAgICA8dmVyc2lvbj4ke3Byb2plY3QudmVyc2lvbn08L3ZlcnNpb24+CiAgICAgICA8Y2xhc3NpZmllcj5zb3VyY2VzPC9jbGFzc2lmaWVyPgpAQCAtMTY1LDcgKzE3Miw3IEBACiAgICAgICA8cGx1Z2luPgogICAgICAgICA8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CiAgICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLWVuZm9yY2VyLXBsdWdpbjwvYXJ0aWZhY3RJZD4KLSAgICAgICAgPHZlcnNpb24+My4wLjAtTTM8L3ZlcnNpb24+CisgICAgICAgIDx2ZXJzaW9uPjMuMC4wPC92ZXJzaW9uPgogICAgICAgICA8ZXhlY3V0aW9ucz4KICAgICAgICAgICA8ZXhlY3V0aW9uPgogICAgICAgICAgICAgPGlkPmVuZm9yY2UtbWF2ZW48L2lkPgpAQCAtMjA1LDggKzIxMiw3IEBACiAgICAgICAgICAgPHZlcnNpb24+JHt0eWNoby12ZXJzaW9ufTwvdmVyc2lvbj4KICAgICAgICAgICA8Y29uZmlndXJhdGlvbj4KICAgICAgICAgICAgIDxlbmNvZGluZz5VVEYtODwvZW5jb2Rpbmc+Ci0gICAgICAgICAgICA8c291cmNlPjEuODwvc291cmNlPgotICAgICAgICAgICAgPHRhcmdldD4xLjg8L3RhcmdldD4KKyAgICAgICAgICAgIDxyZWxlYXNlPiR7amF2YS52ZXJzaW9ufTwvcmVsZWFzZT4KICAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CiAgICAgICAgIDwvcGx1Z2luPgogICAgICAgICA8cGx1Z2luPgpAQCAtMjgyLDE2ICsyODgsNiBAQAogICAgICAgICAgIDx2ZXJzaW9uPiR7dHljaG8tdmVyc2lvbn08L3ZlcnNpb24+CiAgICAgICAgIDwvcGx1Z2luPgogICAgICAgICA8cGx1Z2luPgotICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvLmV4dHJhczwvZ3JvdXBJZD4KLSAgICAgICAgICA8YXJ0aWZhY3RJZD50eWNoby1wYWNrMjAwYS1wbHVnaW48L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgPHZlcnNpb24+JHt0eWNoby1leHRyYXMtdmVyc2lvbn08L3ZlcnNpb24+Ci0gICAgICAgIDwvcGx1Z2luPgotICAgICAgICA8cGx1Z2luPgotICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvLmV4dHJhczwvZ3JvdXBJZD4KLSAgICAgICAgICA8YXJ0aWZhY3RJZD50eWNoby1wYWNrMjAwYi1wbHVnaW48L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgPHZlcnNpb24+JHt0eWNoby1leHRyYXMtdmVyc2lvbn08L3ZlcnNpb24+Ci0gICAgICAgIDwvcGx1Z2luPgotICAgICAgICA8cGx1Z2luPgogICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmNiaS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgogICAgICAgICAgIDxhcnRpZmFjdElkPmVjbGlwc2UtamFyc2lnbmVyLXBsdWdpbjwvYXJ0aWZhY3RJZD4KICAgICAgICAgICA8dmVyc2lvbj4xLjMuMjwvdmVyc2lvbj4KQEAgLTMzNywxOSArMzMzLDYgQEAKICAgICAgICAgICAgIDwvY29uZmlndXJhdGlvbj4KICAgICAgICAgICA8L3BsdWdpbj4KICAgICAgICAgICA8cGx1Z2luPgotICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG8uZXh0cmFzPC9ncm91cElkPgotICAgICAgICAgICAgPGFydGlmYWN0SWQ+dHljaG8tcGFjazIwMGEtcGx1Z2luPC9hcnRpZmFjdElkPgotICAgICAgICAgICAgPGV4ZWN1dGlvbnM+Ci0gICAgICAgICAgICAgIDxleGVjdXRpb24+Ci0gICAgICAgICAgICAgICAgPGlkPnBhY2syMDAtbm9ybWFsaXplPC9pZD4KLSAgICAgICAgICAgICAgICA8Z29hbHM+Ci0gICAgICAgICAgICAgICAgICA8Z29hbD5ub3JtYWxpemU8L2dvYWw+Ci0gICAgICAgICAgICAgICAgPC9nb2Fscz4KLSAgICAgICAgICAgICAgICA8cGhhc2U+dmVyaWZ5PC9waGFzZT4KLSAgICAgICAgICAgICAgPC9leGVjdXRpb24+Ci0gICAgICAgICAgICA8L2V4ZWN1dGlvbnM+Ci0gICAgICAgICAgPC9wbHVnaW4+Ci0gICAgICAgICAgPHBsdWdpbj4KICAgICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmNiaS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgogICAgICAgICAgICAgPGFydGlmYWN0SWQ+ZWNsaXBzZS1qYXJzaWduZXItcGx1Z2luPC9hcnRpZmFjdElkPgogICAgICAgICAgICAgPGV4ZWN1dGlvbnM+CkBAIC0zNjMsMTkgKzM0Niw2IEBACiAgICAgICAgICAgICA8L2V4ZWN1dGlvbnM+CiAgICAgICAgICAgPC9wbHVnaW4+CiAgICAgICAgICAgPHBsdWdpbj4KLSAgICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvLmV4dHJhczwvZ3JvdXBJZD4KLSAgICAgICAgICAgIDxhcnRpZmFjdElkPnR5Y2hvLXBhY2syMDBiLXBsdWdpbjwvYXJ0aWZhY3RJZD4KLSAgICAgICAgICAgIDxleGVjdXRpb25zPgotICAgICAgICAgICAgICA8ZXhlY3V0aW9uPgotICAgICAgICAgICAgICAgIDxpZD5wYWNrMjAwLXBhY2s8L2lkPgotICAgICAgICAgICAgICAgIDxnb2Fscz4KLSAgICAgICAgICAgICAgICAgIDxnb2FsPnBhY2s8L2dvYWw+Ci0gICAgICAgICAgICAgICAgPC9nb2Fscz4KLSAgICAgICAgICAgICAgICA8cGhhc2U+dmVyaWZ5PC9waGFzZT4KLSAgICAgICAgICAgICAgPC9leGVjdXRpb24+Ci0gICAgICAgICAgICA8L2V4ZWN1dGlvbnM+Ci0gICAgICAgICAgPC9wbHVnaW4+Ci0gICAgICAgICAgPHBsdWdpbj4KICAgICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgogICAgICAgICAgICAgPGFydGlmYWN0SWQ+dHljaG8tcDItcGx1Z2luPC9hcnRpZmFjdElkPgogICAgICAgICAgICAgPGV4ZWN1dGlvbnM+CkBAIC00MDYsMzAgKzM3Niw2IEBACiAgICAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CiAgICAgICAgICAgPC9wbHVnaW4+CiAgICAgICAgICAgPHBsdWdpbj4KLSAgICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvLmV4dHJhczwvZ3JvdXBJZD4KLSAgICAgICAgICAgIDxhcnRpZmFjdElkPnR5Y2hvLXBhY2syMDBhLXBsdWdpbjwvYXJ0aWZhY3RJZD4KLSAgICAgICAgICAgIDxleGVjdXRpb25zPgotICAgICAgICAgICAgICA8ZXhlY3V0aW9uPgotICAgICAgICAgICAgICAgIDxpZD5wYWNrMjAwLW5vcm1hbGl6ZTwvaWQ+Ci0gICAgICAgICAgICAgICAgPGdvYWxzPgotICAgICAgICAgICAgICAgICAgPGdvYWw+bm9ybWFsaXplPC9nb2FsPgotICAgICAgICAgICAgICAgIDwvZ29hbHM+Ci0gICAgICAgICAgICAgIDwvZXhlY3V0aW9uPgotICAgICAgICAgICAgPC9leGVjdXRpb25zPgotICAgICAgICAgIDwvcGx1Z2luPgotICAgICAgICAgIDxwbHVnaW4+Ci0gICAgICAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNoby5leHRyYXM8L2dyb3VwSWQ+Ci0gICAgICAgICAgICA8YXJ0aWZhY3RJZD50eWNoby1wYWNrMjAwYi1wbHVnaW48L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgICA8ZXhlY3V0aW9ucz4KLSAgICAgICAgICAgICAgPGV4ZWN1dGlvbj4KLSAgICAgICAgICAgICAgICA8aWQ+cGFjazIwMC1wYWNrPC9pZD4KLSAgICAgICAgICAgICAgICA8Z29hbHM+Ci0gICAgICAgICAgICAgICAgICA8Z29hbD5wYWNrPC9nb2FsPgotICAgICAgICAgICAgICAgIDwvZ29hbHM+Ci0gICAgICAgICAgICAgIDwvZXhlY3V0aW9uPgotICAgICAgICAgICAgPC9leGVjdXRpb25zPgotICAgICAgICAgIDwvcGx1Z2luPgotICAgICAgICAgIDxwbHVnaW4+CiAgICAgICAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KICAgICAgICAgICAgIDxhcnRpZmFjdElkPnR5Y2hvLXAyLXBsdWdpbjwvYXJ0aWZhY3RJZD4KICAgICAgICAgICAgIDxleGVjdXRpb25zPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC8uY2xhc3NwYXRoCmluZGV4IDEzMzQ3MzkuLjg1NWY3MTcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0Ly5jbGFzc3BhdGgKQEAgLTEwLDcgKzEwLDExIEBACiAJCQk8YXR0cmlidXRlIG5hbWU9InRlc3QiIHZhbHVlPSJ0cnVlIi8+CiAJCTwvYXR0cmlidXRlcz4KIAk8L2NsYXNzcGF0aGVudHJ5PgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0iYmluIi8+CiA8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggYjg1M2M2YS4uNjllOTIyMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLm1ldGhvZFBhcmFtZXRlcnM9ZG8gbm90IGdlbmVyYXRlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKQEAgLTI0LDYgKzI0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCkBAIC04MCw2ICs4MSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTEyLDM0ICsxMTQsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkVHlwZVBhcmFtZXRlcj1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnJlbGVhc2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTExCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXM9MjE0NzQ4MzY0Nwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3R5cGVfbWVtYmVyc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdmFyaWFibGVfZGVjbGFyYXRpb25zX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYWRkaXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2VudW1fY29uc3RhbnQ9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZmllbGQ9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2xvY2FsX3ZhcmlhYmxlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9tZXRob2Q9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhY2thZ2U9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3BhcmFtZXRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl90eXBlPTQ5CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYW5ub3RhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZW51bV9jb25zdGFudD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGw9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX3F1YWxpZmllZF9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2lnbm1lbnQ9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpdHdpc2Vfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfaWY9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb249ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb25fY2hhaW49MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2Zvcl9sb29wX2hlYWRlcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9sb2dpY2FsX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tZXRob2RfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbW9kdWxlX3N0YXRlbWVudHM9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2VzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWNvcmRfY29tcG9uZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVsYXRpb25hbF9vcGVyYXRvcj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZXNvdXJjZXNfaW5fdHJ5PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zZWxlY3Rvcl9pbl9tZXRob2RfaW52b2NhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3I9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3RyaW5nX2NvbmNhdGVuYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyY2xhc3NfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX2VudW1fZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9yZWNvcmRfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hbm5vdGF0aW9ucz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2FyZ3VtZW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX3BhcmFtZXRlcnM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdW5pb25fdHlwZV9pbl9tdWx0aWNhdGNoPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfYWJzdHJhY3RfbWV0aG9kPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmllbGQ9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cz0xCkBAIC0xNDgsNiArMTgyLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfcGFja2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9pbXBvcnRfZ3JvdXBzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2g9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fdHlwZV9kZWNsYXJhdGlvbnM9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKQEAgLTE1NywxMiArMTkyLDE4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQpAQCAtMTcyLDcgKzIxMyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF90YWdfZGVzY3JpcHRpb249ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JldHdlZW5fZGlmZmVyZW50X3RhZ3M9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2Zvcl9wYXJhbWV0ZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5saW5lX2xlbmd0aD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubmV3X2xpbmVzX2F0X2Jsb2NrX2JvdW5kYXJpZXM9dHJ1ZQpAQCAtMTg0LDEwICsyMjcsMTEgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9mZgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmVuYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvbgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9ndWFyZGlhbl9jbGF1c2Vfb25fb25lX2xpbmU9ZmFsc2UKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19yZWNvcmRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JyZWFrc19jb21wYXJlX3RvX2Nhc2VzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfZW1wdHlfbGluZXM9ZmFsc2UKQEAgLTE5NywxNSArMjQxLDE3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2g9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplPTQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZXRob2Q9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFja2FnZT1pbnNlcnQKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl90eXBlPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9sYWJlbD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl90eXBlX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0yMTksMTEgKzI2NSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9tZXRob2RfYm9keT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CkBAIC0yNDksMTAgKzI5OSwxNiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2VsbGlwc2lzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9ub3Rfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMjY5LDYgKzMyNSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMjc3LDEzICszMzQsMjAgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX2Zvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zMDAsNiArMzY0LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl90cnk9ZG8gbm90IGluc2VydApAQCAtMzI2LDEwICszOTEsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3dpdGNoX2Nhc2VfZXhwcmVzc2lvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTM0MSw2ICs0MTEsOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKQEAgLTM1Niw2ICs0MjgsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl90cnk9aW5zZXJ0CkBAIC0zNjYsOSArNDM5LDEyIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl9mb3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTM4MCwyMCArNDU2LDYzIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX3dyYXBwZWRfbGluZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2NvZGVfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2lmX3RoZW5fYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xhbWJkYV9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sb29wX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX21ldGhvZF9ib2R5X29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX3doaWxlX2JvZHlfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5saW5lU3BsaXQ9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfYmxvY2tfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2FmdGVyX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYmVmb3JlX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Fubm90YXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2NhdGNoX2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fZm9yX3N0YXRtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9pZl93aGlsZV9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2xhbWJkYV9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2RlbGNhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9zd2l0Y2hfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlPWNvbW1vbl9saW5lcwogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmU9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhcj10YWIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV9vbl9vZmZfdGFncz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2NvbmRpdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaD10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc2hpZnRfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkPXRydWUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgppbmRleCA2MWU3ZDg0Li5hZjAwYjBhIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMjggKzMsMjggQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdAogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KIEJ1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5Ci1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAotSW1wb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5kaWZmO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlO3ZlcnNpb249IjUuMTMuMyIsCi0gb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5tZXJnZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQucGdtO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5wZ20uaW50ZXJuYWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnBnbS5vcHQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5pbzt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQorSW1wb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmRpZmY7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSI2LjAuMSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lm1lcmdlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucGdtO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucGdtLmludGVybmFsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucGdtLm9wdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAogIG9yZy5oYW1jcmVzdC5jb3JlO2J1bmRsZS12ZXJzaW9uPSJbMi4yLjAsMy4wLjApIiwKICBvcmcuanVuaXQ7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKICBvcmcuanVuaXQucnVsZXM7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKZGlmZiAtLWdpdCAiYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L29yZy5lY2xpcHNlLmpnaXQucGdtLS1BbGwtVGVzdHMgXDA1MEphdmE4XDA1MSBcMDUwZGVcMDUxLmxhdW5jaCIgImIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhMTFcMDUxIFwwNTBkZVwwNTEubGF1bmNoIgpzaW1pbGFyaXR5IGluZGV4IDk3JQpyZW5hbWUgZnJvbSAib3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhOFwwNTEgXDA1MGRlXDA1MS5sYXVuY2giCnJlbmFtZSB0byAib3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhMTFcMDUxIFwwNTBkZVwwNTEubGF1bmNoIgppbmRleCBlMTFiNzJmLi5iODYwYWJiIDEwMDY0NAotLS0gImEvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhOFwwNTEgXDA1MGRlXDA1MS5sYXVuY2giCisrKyAiYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L29yZy5lY2xpcHNlLmpnaXQucGdtLS1BbGwtVGVzdHMgXDA1MEphdmExMVwwNTEgXDA1MGRlXDA1MS5sYXVuY2giCkBAIC0yNCw3ICsyNCw3IEBACiA8bGlzdEVudHJ5IHZhbHVlPSImbHQ7P3htbCB2ZXJzaW9uPSZxdW90OzEuMCZxdW90OyBlbmNvZGluZz0mcXVvdDtVVEYtOCZxdW90OyBzdGFuZGFsb25lPSZxdW90O25vJnF1b3Q7PyZndDsmIzEwOyZsdDtydW50aW1lQ2xhc3NwYXRoRW50cnkgaWQ9JnF1b3Q7b3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5jbGFzc3BhdGhlbnRyeS5kZWZhdWx0Q2xhc3NwYXRoJnF1b3Q7Jmd0OyYjMTA7Jmx0O21lbWVudG8gZXhwb3J0ZWRFbnRyaWVzT25seT0mcXVvdDtmYWxzZSZxdW90OyBwcm9qZWN0PSZxdW90O29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QmcXVvdDsvJmd0OyYjMTA7Jmx0Oy9ydW50aW1lQ2xhc3NwYXRoRW50cnkmZ3Q7JiMxMDsiLz4KIDwvbGlzdEF0dHJpYnV0ZT4KIDxib29sZWFuQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5ERUZBVUxUX0NMQVNTUEFUSCIgdmFsdWU9ImZhbHNlIi8+Ci08c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSIiB2YWx1ZT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+Cis8c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSIiB2YWx1ZT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiLz4KIDxzdHJpbmdBdHRyaWJ1dGUga2V5PSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLk1BSU5fVFlQRSIgdmFsdWU9IiIvPgogPHN0cmluZ0F0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuUFJPSkVDVF9BVFRSIiB2YWx1ZT0ib3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdCIvPgogPC9sYXVuY2hDb25maWd1cmF0aW9uPgpkaWZmIC0tZ2l0ICJhL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5wZ20tLUFsbC1UZXN0cyBcMDUwSmF2YThcMDUxLmxhdW5jaCIgImIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhMTFcMDUxLmxhdW5jaCIKc2ltaWxhcml0eSBpbmRleCA5NyUKcmVuYW1lIGZyb20gIm9yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5wZ20tLUFsbC1UZXN0cyBcMDUwSmF2YThcMDUxLmxhdW5jaCIKcmVuYW1lIHRvICJvcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L29yZy5lY2xpcHNlLmpnaXQucGdtLS1BbGwtVGVzdHMgXDA1MEphdmExMVwwNTEubGF1bmNoIgppbmRleCA4YjA0NTJhLi4wMmE0ZGFiIDEwMDY0NAotLS0gImEvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhOFwwNTEubGF1bmNoIgorKysgImIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9vcmcuZWNsaXBzZS5qZ2l0LnBnbS0tQWxsLVRlc3RzIFwwNTBKYXZhMTFcMDUxLmxhdW5jaCIKQEAgLTIxLDcgKzIxLDcgQEAKIDxsaXN0RW50cnkgdmFsdWU9IiZsdDs/eG1sIHZlcnNpb249JnF1b3Q7MS4wJnF1b3Q7IGVuY29kaW5nPSZxdW90O1VURi04JnF1b3Q7IHN0YW5kYWxvbmU9JnF1b3Q7bm8mcXVvdDs/Jmd0OyYjMTA7Jmx0O3J1bnRpbWVDbGFzc3BhdGhFbnRyeSBpZD0mcXVvdDtvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLmNsYXNzcGF0aGVudHJ5LmRlZmF1bHRDbGFzc3BhdGgmcXVvdDsmZ3Q7JiMxMDsmbHQ7bWVtZW50byBleHBvcnRlZEVudHJpZXNPbmx5PSZxdW90O2ZhbHNlJnF1b3Q7IHByb2plY3Q9JnF1b3Q7b3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdCZxdW90Oy8mZ3Q7JiMxMDsmbHQ7L3J1bnRpbWVDbGFzc3BhdGhFbnRyeSZndDsmIzEwOyIvPgogPC9saXN0QXR0cmlidXRlPgogPGJvb2xlYW5BdHRyaWJ1dGUga2V5PSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkRFRkFVTFRfQ0xBU1NQQVRIIiB2YWx1ZT0iZmFsc2UiLz4KLTxzdHJpbmdBdHRyaWJ1dGUga2V5PSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIiIHZhbHVlPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xLjgiLz4KKzxzdHJpbmdBdHRyaWJ1dGUga2V5PSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIiIHZhbHVlPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0phdmFTRS0xMSIvPgogPHN0cmluZ0F0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuTUFJTl9UWVBFIiB2YWx1ZT0iIi8+CiA8c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5QUk9KRUNUX0FUVFIiIHZhbHVlPSJvcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0Ii8+CiA8L2xhdW5jaENvbmZpZ3VyYXRpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L3BvbS54bWwKaW5kZXggYmU4ZjRlMy4uY2QyYmI2MyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvcG9tLnhtbApAQCAtMTcsNyArMTcsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0PC9hcnRpZmFjdElkPgpAQCAtMjcsNiArMjcsMTAgQEAKICAgICBUZXN0cyBmb3IgY29tbWFuZCBsaW5lIGNsaWVudCB0b29scyBidWlsdCBvbiB0b3Agb2YgSkdpdC4KICAgPC9kZXNjcmlwdGlvbj4KIAorICA8cHJvcGVydGllcz4KKyAgICA8bWF2ZW4uamF2YWRvYy5za2lwPnRydWU8L21hdmVuLmphdmFkb2Muc2tpcD4KKyAgPC9wcm9wZXJ0aWVzPgorCiAgIDxkZXBlbmRlbmNpZXM+CiAgICAgPGRlcGVuZGVuY3k+CiAgICAgICA8Z3JvdXBJZD5qdW5pdDwvZ3JvdXBJZD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvcGdtL1Jldkxpc3RUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3BnbS9SZXZMaXN0VGVzdC5qYXZhCmluZGV4IDA2ZmRkYzIuLjdjNmNmNDIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvcGdtL1Jldkxpc3RUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9wZ20vUmV2TGlzdFRlc3QuamF2YQpAQCAtNTUsMjEgKzU1LDIxIEBAIHB1YmxpYyB2b2lkIHRlc3RXaXRob3V0UGFyZW50c0ZsYWcoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJYXNzZXJ0RXF1YWxzKGV4cGVjdCwgcmVzdWx0KTsKIAl9CiAKLQlwcml2YXRlIExpc3Q8UmV2Q29tbWl0PiBjcmVhdGVDb21taXRzRm9yUGFyZW50c0ZsYWcoR2l0IGdpdCkKKwlwcml2YXRlIExpc3Q8UmV2Q29tbWl0PiBjcmVhdGVDb21taXRzRm9yUGFyZW50c0ZsYWcoR2l0IHJlcG8pCiAJCQl0aHJvd3MgRXhjZXB0aW9uIHsKIAkJTGlzdDxSZXZDb21taXQ+IGNvbW1pdHMgPSBuZXcgQXJyYXlMaXN0PD4oKTsKIAkJd3JpdGVUcmFzaEZpbGUoIlRlc3QxLnR4dCIsICJIZWxsbyB3b3JsZCIpOwotCQlnaXQuYWRkKCkuYWRkRmlsZXBhdHRlcm4oIlRlc3QxLnR4dCIpLmNhbGwoKTsKLQkJY29tbWl0cy5hZGQoZ2l0LmNvbW1pdCgpLnNldE1lc3NhZ2UoImNvbW1pdCMwIikuY2FsbCgpKTsKKwkJcmVwby5hZGQoKS5hZGRGaWxlcGF0dGVybigiVGVzdDEudHh0IikuY2FsbCgpOworCQljb21taXRzLmFkZChyZXBvLmNvbW1pdCgpLnNldE1lc3NhZ2UoImNvbW1pdCMwIikuY2FsbCgpKTsKIAkJd3JpdGVUcmFzaEZpbGUoIlRlc3QudHh0IiwgIkhlbGxvIHdvcmxkISIpOwotCQlnaXQuYWRkKCkuYWRkRmlsZXBhdHRlcm4oIlRlc3QudHh0IikuY2FsbCgpOwotCQljb21taXRzLmFkZChnaXQuY29tbWl0KCkuc2V0TWVzc2FnZSgiY29tbWl0IzEiKS5jYWxsKCkpOworCQlyZXBvLmFkZCgpLmFkZEZpbGVwYXR0ZXJuKCJUZXN0LnR4dCIpLmNhbGwoKTsKKwkJY29tbWl0cy5hZGQocmVwby5jb21taXQoKS5zZXRNZXNzYWdlKCJjb21taXQjMSIpLmNhbGwoKSk7CiAJCXdyaXRlVHJhc2hGaWxlKCJUZXN0MS50eHQiLCAiSGVsbG8gd29ybGQhISIpOwotCQlnaXQuYWRkKCkuYWRkRmlsZXBhdHRlcm4oIlRlc3QxLnR4dCIpLmNhbGwoKTsKLQkJY29tbWl0cy5hZGQoZ2l0LmNvbW1pdCgpLnNldE1lc3NhZ2UoImNvbW1pdCMyIikuY2FsbCgpKTsKKwkJcmVwby5hZGQoKS5hZGRGaWxlcGF0dGVybigiVGVzdDEudHh0IikuY2FsbCgpOworCQljb21taXRzLmFkZChyZXBvLmNvbW1pdCgpLnNldE1lc3NhZ2UoImNvbW1pdCMyIikuY2FsbCgpKTsKIAkJd3JpdGVUcmFzaEZpbGUoIlRlc3QudHh0IiwgIkhlbGxvIHdvcmxkISEhIik7Ci0JCWdpdC5hZGQoKS5hZGRGaWxlcGF0dGVybigiVGVzdC50eHQiKS5jYWxsKCk7Ci0JCWNvbW1pdHMuYWRkKGdpdC5jb21taXQoKS5zZXRNZXNzYWdlKCJjb21taXQjMyIpLmNhbGwoKSk7CisJCXJlcG8uYWRkKCkuYWRkRmlsZXBhdHRlcm4oIlRlc3QudHh0IikuY2FsbCgpOworCQljb21taXRzLmFkZChyZXBvLmNvbW1pdCgpLnNldE1lc3NhZ2UoImNvbW1pdCMzIikuY2FsbCgpKTsKIAkJcmV0dXJuIGNvbW1pdHM7CiAJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQucGdtLy5jbGFzc3BhdGgKaW5kZXggZThiYzk3Ny4uZThiNTA5ZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS8uY2xhc3NwYXRoCkBAIC0zLDcgKzMsMTEgQEAKIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KIAk8Y2xhc3NwYXRoZW50cnkgZXhjbHVkaW5nPSIqfHJlc291cmNlcy98cmVzb3VyY2VzLyIgaW5jbHVkaW5nPSJNRVRBLUlORi8iIGtpbmQ9InNyYyIgcGF0aD0iIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0icmVzb3VyY2VzIi8+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJiaW4iLz4KIDwvY2xhc3NwYXRoPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IGJjN2JhMWUuLjJhYmU5NTIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGdtLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQucGdtLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQucGdtL01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IDk0N2RjY2QuLmZmYWFmYzEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGdtL01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQucGdtL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0zLDU3ICszLDU4IEBACiBCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQucGdtCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnBnbQotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KLUJ1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMS44Ci1JbXBvcnQtUGFja2FnZTogamF2YXguc2VydmxldDt2ZXJzaW9uPSJbMy4xLjAsNC4wLjApIiwKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKK0ltcG9ydC1QYWNrYWdlOiBqYXZheC5zZXJ2bGV0O3ZlcnNpb249IlszLjEuMCw1LjAuMCkiLAogIG9yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nO3ZlcnNpb249IlsxLjIsMi4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VydmVyO3ZlcnNpb249Ils5LjQuNSwxMC4wLjApIiwKLSBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuaGFuZGxlcjt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkuc2VydmxldDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbDt2ZXJzaW9uPSJbOS40LjUsMTAuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamV0dHkudXRpbC5jb21wb25lbnQ7dmVyc2lvbj0iWzkuNC41LDEwLjAuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hd3R1aTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYmxhbWU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmRpZmY7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmdpdHJlcG87dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5pbzt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnJlZnRhYmxlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5sZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIuZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXIuczM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubWVyZ2U7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm5sczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubm90ZXM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldnBsb3Q7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuZmlsdGVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UucGFjazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cC5hcGFjaGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5yZXNvbHZlcjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5maWx0ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuaW87dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXI7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2ZXIuaGFuZGxlcjt2ZXJzaW9uPSJbMTAuMC4wLDExLjAuMCkiLAorIG9yZy5lY2xpcHNlLmpldHR5LnNlcnZsZXQ7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZXR0eS51dGlsO3ZlcnNpb249IlsxMC4wLjAsMTEuMC4wKSIsCisgb3JnLmVjbGlwc2UuamV0dHkudXRpbC5jb21wb25lbnQ7dmVyc2lvbj0iWzEwLjAuMCwxMS4wLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFwaTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXd0dWk7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ibGFtZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmRpZmY7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmdpdHJlcG87dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmlvO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5yZWZ0YWJsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmxmcy5zZXJ2ZXI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5sZnMuc2VydmVyLmZzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubGZzLnNlcnZlci5zMzt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lm1lcmdlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubm90ZXM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5yZXZwbG90O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuZmlsdGVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuc3RvcmFnZS5maWxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuc3RvcmFnZS5wYWNrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0Lmh0dHAuYXBhY2hlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLmZpbHRlcjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAogIG9yZy5rb2hzdWtlLmFyZ3M0ajt2ZXJzaW9uPSJbMi4zMy4wLDMuMC4wKSIsCiAgb3JnLmtvaHN1a2UuYXJnczRqLnNwaTt2ZXJzaW9uPSJbMi4zMy4wLDMuMC4wKSIKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmNvbnNvbGU7dmVyc2lvbj0iNS4xMy4zIjsKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmNvbnNvbGU7dmVyc2lvbj0iNi4wLjEiOwogIHVzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydCwKICAgb3JnLmVjbGlwc2UuamdpdC51dGlsIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnBnbTt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQucGdtO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LAogICAgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvLAogICAgb3JnLmVjbGlwc2UuamdpdC5hd3R1aSwKQEAgLTY1LDE0ICs2NiwxNCBAQAogICAgb3JnLmVjbGlwc2UuamdpdC50cmVld2FsaywKICAgIG9yZy5lY2xpcHNlLmpnaXQuYXBpLAogICAgamF2YXguc3dpbmciLAotIG9yZy5lY2xpcHNlLmpnaXQucGdtLmRlYnVnO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5wZ20uZGVidWc7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC51dGlsLmlvLAogICAgb3JnLmVjbGlwc2UuamdpdC5wZ20sCiAgICBvcmcuZWNsaXBzZS5qZXR0eS5zZXJ2bGV0IiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnBnbS5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQucGdtLmludGVybmFsO3ZlcnNpb249IjYuMC4xIjsKICAgeC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQudGVzdCIsCi0gb3JnLmVjbGlwc2UuamdpdC5wZ20ub3B0O3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5wZ20ub3B0O3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5rb2hzdWtlLmFyZ3M0aiwKICAgIG9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20vTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IDNkNDY1YjEuLjI2MjY5ZDcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQucGdtL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5wZ20gLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnBnbS5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LnBnbTt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LnBnbTt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQucGdtL3BvbS54bWwKaW5kZXggYzIxYWRkOC4uMDVlMGJjYyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQucGdtPC9hcnRpZmFjdElkPgpAQCAtODEsNiArODEsMTIgQEAKIAogICAgIDxkZXBlbmRlbmN5PgogICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KKyAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudDwvYXJ0aWZhY3RJZD4KKyAgICAgIDx2ZXJzaW9uPiR7cHJvamVjdC52ZXJzaW9ufTwvdmVyc2lvbj4KKyAgICA8L2RlcGVuZGVuY3k+CisKKyAgICA8ZGVwZW5kZW5jeT4KKyAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoPC9hcnRpZmFjdElkPgogICAgICAgPHZlcnNpb24+JHtwcm9qZWN0LnZlcnNpb259PC92ZXJzaW9uPgogICAgIDwvZGVwZW5kZW5jeT4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGdtL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3BnbS9UZXh0QnVpbHRpbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL1RleHRCdWlsdGluLmphdmEKaW5kZXggNjAwMjAwZC4uNmNmZTkzZCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL1RleHRCdWlsdGluLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL1RleHRCdWlsdGluLmphdmEKQEAgLTM2LDggKzM2LDggQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnBnbS5pbnRlcm5hbC5Tc2hEcml2ZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5wZ20ub3B0LkNtZExpbmVQYXJzZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLlJldldhbGs7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuSnNjaENvbmZpZ1Nlc3Npb25GYWN0b3J5OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoLkpzY2hDb25maWdTZXNzaW9uRmFjdG9yeTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLkRlZmF1bHRQcm94eURhdGFGYWN0b3J5OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuSkdpdEtleUNhY2hlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuU3NoZFNlc3Npb25GYWN0b3J5OwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL2RlYnVnL0RpZmZBbGdvcml0aG1zLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS9zcmMvb3JnL2VjbGlwc2UvamdpdC9wZ20vZGVidWcvRGlmZkFsZ29yaXRobXMuamF2YQppbmRleCBjZDVkOGYxLi5hNjMzODdjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnBnbS9zcmMvb3JnL2VjbGlwc2UvamdpdC9wZ20vZGVidWcvRGlmZkFsZ29yaXRobXMuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnBnbS9zcmMvb3JnL2VjbGlwc2UvamdpdC9wZ20vZGVidWcvRGlmZkFsZ29yaXRobXMuamF2YQpAQCAtMTczLDcgKzE3Myw3IEBAIHByaXZhdGUgdm9pZCBydW4oUmVwb3NpdG9yeSByZXBvKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCQkJfSBjYXRjaCAoTGFyZ2VPYmplY3RFeGNlcHRpb24gdG9vQmlnKSB7CiAJCQkJCQljb250aW51ZTsKIAkJCQkJfQotCQkJCQlpZiAoUmF3VGV4dC5pc0JpbmFyeShyYXcwKSkKKwkJCQkJaWYgKFJhd1RleHQuaXNCaW5hcnkocmF3MCwgcmF3MC5sZW5ndGgsIHRydWUpKQogCQkJCQkJY29udGludWU7CiAKIAkJCQkJYnl0ZVtdIHJhdzE7CkBAIC0xODMsNyArMTgzLDcgQEAgcHJpdmF0ZSB2b2lkIHJ1bihSZXBvc2l0b3J5IHJlcG8pIHRocm93cyBFeGNlcHRpb24gewogCQkJCQl9IGNhdGNoIChMYXJnZU9iamVjdEV4Y2VwdGlvbiB0b29CaWcpIHsKIAkJCQkJCWNvbnRpbnVlOwogCQkJCQl9Ci0JCQkJCWlmIChSYXdUZXh0LmlzQmluYXJ5KHJhdzEpKQorCQkJCQlpZiAoUmF3VGV4dC5pc0JpbmFyeShyYXcxLCByYXcxLmxlbmd0aCwgdHJ1ZSkpCiAJCQkJCQljb250aW51ZTsKIAogCQkJCQlSYXdUZXh0IHR4dDAgPSBuZXcgUmF3VGV4dChyYXcwKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQucGdtL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3BnbS9kZWJ1Zy9UZXh0SGFzaEZ1bmN0aW9ucy5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL2RlYnVnL1RleHRIYXNoRnVuY3Rpb25zLmphdmEKaW5kZXggZjc3N2YyNy4uMWNhMzAzNCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL2RlYnVnL1RleHRIYXNoRnVuY3Rpb25zLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5wZ20vc3JjL29yZy9lY2xpcHNlL2pnaXQvcGdtL2RlYnVnL1RleHRIYXNoRnVuY3Rpb25zLmphdmEKQEAgLTI4Niw3ICsyODYsNyBAQCBwcml2YXRlIHZvaWQgcnVuKFJlcG9zaXRvcnkgcmVwbykgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCQkJCWNvbnRpbnVlOwogCQkJCX0KIAotCQkJCWlmIChSYXdUZXh0LmlzQmluYXJ5KHJhdykpCisJCQkJaWYgKFJhd1RleHQuaXNCaW5hcnkocmF3LCByYXcubGVuZ3RoLCB0cnVlKSkKIAkJCQkJY29udGludWU7CiAKIAkJCQlSYXdUZXh0IHR4dCA9IG5ldyBSYXdUZXh0KHJhdyk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uY2xhc3NwYXRoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmMWIzMjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLmNsYXNzcGF0aApAQCAtMCwwICsxLDggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2xhc3NwYXRoPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0icmVzb3VyY2VzIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0iYmluIi8+Cis8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uZmJwcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uZmJwcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MWEwNzY3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5mYnByZWZzCkBAIC0wLDAgKzEsMTI1IEBACisjRmluZEJ1Z3MgVXNlciBQcmVmZXJlbmNlcworI01vbiBNYXkgMDQgMTY6MjQ6MTMgUERUIDIwMDkKK2RldGVjdG9yQXBwZW5kaW5nVG9Bbk9iamVjdE91dHB1dFN0cmVhbT1BcHBlbmRpbmdUb0FuT2JqZWN0T3V0cHV0U3RyZWFtfHRydWUKK2RldGVjdG9yQmFkQXBwbGV0Q29uc3RydWN0b3I9QmFkQXBwbGV0Q29uc3RydWN0b3J8ZmFsc2UKK2RldGVjdG9yQmFkUmVzdWx0U2V0QWNjZXNzPUJhZFJlc3VsdFNldEFjY2Vzc3x0cnVlCitkZXRlY3RvckJhZFN5bnRheEZvclJlZ3VsYXJFeHByZXNzaW9uPUJhZFN5bnRheEZvclJlZ3VsYXJFeHByZXNzaW9ufHRydWUKK2RldGVjdG9yQmFkVXNlT2ZSZXR1cm5WYWx1ZT1CYWRVc2VPZlJldHVyblZhbHVlfHRydWUKK2RldGVjdG9yQmFkbHlPdmVycmlkZGVuQWRhcHRlcj1CYWRseU92ZXJyaWRkZW5BZGFwdGVyfHRydWUKK2RldGVjdG9yQm9vbGVhblJldHVybk51bGw9Qm9vbGVhblJldHVybk51bGx8dHJ1ZQorZGV0ZWN0b3JDYWxsVG9VbnN1cHBvcnRlZE1ldGhvZD1DYWxsVG9VbnN1cHBvcnRlZE1ldGhvZHx0cnVlCitkZXRlY3RvckNoZWNrSW1tdXRhYmxlQW5ub3RhdGlvbj1DaGVja0ltbXV0YWJsZUFubm90YXRpb258dHJ1ZQorZGV0ZWN0b3JDaGVja1R5cGVRdWFsaWZpZXJzPUNoZWNrVHlwZVF1YWxpZmllcnN8dHJ1ZQorZGV0ZWN0b3JDbG9uZUlkaW9tPUNsb25lSWRpb218ZmFsc2UKK2RldGVjdG9yQ29tcGFyYXRvcklkaW9tPUNvbXBhcmF0b3JJZGlvbXx0cnVlCitkZXRlY3RvckNvbmZ1c2VkSW5oZXJpdGFuY2U9Q29uZnVzZWRJbmhlcml0YW5jZXx0cnVlCitkZXRlY3RvckNvbmZ1c2lvbkJldHdlZW5Jbmhlcml0ZWRBbmRPdXRlck1ldGhvZD1Db25mdXNpb25CZXR3ZWVuSW5oZXJpdGVkQW5kT3V0ZXJNZXRob2R8dHJ1ZQorZGV0ZWN0b3JDcm9zc1NpdGVTY3JpcHRpbmc9Q3Jvc3NTaXRlU2NyaXB0aW5nfHRydWUKK2RldGVjdG9yRG9JbnNpZGVEb1ByaXZpbGVnZWQ9RG9JbnNpZGVEb1ByaXZpbGVnZWR8dHJ1ZQorZGV0ZWN0b3JEb250Q2F0Y2hJbGxlZ2FsTW9uaXRvclN0YXRlRXhjZXB0aW9uPURvbnRDYXRjaElsbGVnYWxNb25pdG9yU3RhdGVFeGNlcHRpb258dHJ1ZQorZGV0ZWN0b3JEb250VXNlRW51bT1Eb250VXNlRW51bXx0cnVlCitkZXRlY3RvckRyb3BwZWRFeGNlcHRpb249RHJvcHBlZEV4Y2VwdGlvbnx0cnVlCitkZXRlY3RvckR1bWJNZXRob2RJbnZvY2F0aW9ucz1EdW1iTWV0aG9kSW52b2NhdGlvbnN8dHJ1ZQorZGV0ZWN0b3JEdW1iTWV0aG9kcz1EdW1iTWV0aG9kc3x0cnVlCitkZXRlY3RvckR1cGxpY2F0ZUJyYW5jaGVzPUR1cGxpY2F0ZUJyYW5jaGVzfHRydWUKK2RldGVjdG9yRW1wdHlaaXBGaWxlRW50cnk9RW1wdHlaaXBGaWxlRW50cnl8dHJ1ZQorZGV0ZWN0b3JFcXVhbHNPcGVyYW5kU2hvdWxkSGF2ZUNsYXNzQ29tcGF0aWJsZVdpdGhUaGlzPUVxdWFsc09wZXJhbmRTaG91bGRIYXZlQ2xhc3NDb21wYXRpYmxlV2l0aFRoaXN8dHJ1ZQorZGV0ZWN0b3JGaW5hbGl6ZXJOdWxsc0ZpZWxkcz1GaW5hbGl6ZXJOdWxsc0ZpZWxkc3x0cnVlCitkZXRlY3RvckZpbmRCYWRDYXN0Mj1GaW5kQmFkQ2FzdDJ8dHJ1ZQorZGV0ZWN0b3JGaW5kQmFkRm9yTG9vcD1GaW5kQmFkRm9yTG9vcHx0cnVlCitkZXRlY3RvckZpbmRDaXJjdWxhckRlcGVuZGVuY2llcz1GaW5kQ2lyY3VsYXJEZXBlbmRlbmNpZXN8ZmFsc2UKK2RldGVjdG9yRmluZERlYWRMb2NhbFN0b3Jlcz1GaW5kRGVhZExvY2FsU3RvcmVzfHRydWUKK2RldGVjdG9yRmluZERvdWJsZUNoZWNrPUZpbmREb3VibGVDaGVja3x0cnVlCitkZXRlY3RvckZpbmRFbXB0eVN5bmNocm9uaXplZEJsb2NrPUZpbmRFbXB0eVN5bmNocm9uaXplZEJsb2NrfHRydWUKK2RldGVjdG9yRmluZEZpZWxkU2VsZkFzc2lnbm1lbnQ9RmluZEZpZWxkU2VsZkFzc2lnbm1lbnR8dHJ1ZQorZGV0ZWN0b3JGaW5kRmluYWxpemVJbnZvY2F0aW9ucz1GaW5kRmluYWxpemVJbnZvY2F0aW9uc3x0cnVlCitkZXRlY3RvckZpbmRGbG9hdEVxdWFsaXR5PUZpbmRGbG9hdEVxdWFsaXR5fHRydWUKK2RldGVjdG9yRmluZEhFbWlzbWF0Y2g9RmluZEhFbWlzbWF0Y2h8dHJ1ZQorZGV0ZWN0b3JGaW5kSW5jb25zaXN0ZW50U3luYzI9RmluZEluY29uc2lzdGVudFN5bmMyfHRydWUKK2RldGVjdG9yRmluZEpTUjE2NkxvY2tNb25pdG9yZW50ZXI9RmluZEpTUjE2NkxvY2tNb25pdG9yZW50ZXJ8dHJ1ZQorZGV0ZWN0b3JGaW5kTG9jYWxTZWxmQXNzaWdubWVudDI9RmluZExvY2FsU2VsZkFzc2lnbm1lbnQyfHRydWUKK2RldGVjdG9yRmluZE1hc2tlZEZpZWxkcz1GaW5kTWFza2VkRmllbGRzfHRydWUKK2RldGVjdG9yRmluZE1pc21hdGNoZWRXYWl0T3JOb3RpZnk9RmluZE1pc21hdGNoZWRXYWl0T3JOb3RpZnl8dHJ1ZQorZGV0ZWN0b3JGaW5kTmFrZWROb3RpZnk9RmluZE5ha2VkTm90aWZ5fHRydWUKK2RldGVjdG9yRmluZE5vblNlcmlhbGl6YWJsZVN0b3JlSW50b1Nlc3Npb249RmluZE5vblNlcmlhbGl6YWJsZVN0b3JlSW50b1Nlc3Npb258dHJ1ZQorZGV0ZWN0b3JGaW5kTm9uU2VyaWFsaXphYmxlVmFsdWVQYXNzZWRUb1dyaXRlT2JqZWN0PUZpbmROb25TZXJpYWxpemFibGVWYWx1ZVBhc3NlZFRvV3JpdGVPYmplY3R8dHJ1ZQorZGV0ZWN0b3JGaW5kTm9uU2hvcnRDaXJjdWl0PUZpbmROb25TaG9ydENpcmN1aXR8dHJ1ZQorZGV0ZWN0b3JGaW5kTnVsbERlcmVmPUZpbmROdWxsRGVyZWZ8dHJ1ZQorZGV0ZWN0b3JGaW5kTnVsbERlcmVmc0ludm9sdmluZ05vblNob3J0Q2lyY3VpdEV2YWx1YXRpb249RmluZE51bGxEZXJlZnNJbnZvbHZpbmdOb25TaG9ydENpcmN1aXRFdmFsdWF0aW9ufHRydWUKK2RldGVjdG9yRmluZE9wZW5TdHJlYW09RmluZE9wZW5TdHJlYW18dHJ1ZQorZGV0ZWN0b3JGaW5kUHV6emxlcnM9RmluZFB1enpsZXJzfHRydWUKK2RldGVjdG9yRmluZFJlZkNvbXBhcmlzb249RmluZFJlZkNvbXBhcmlzb258dHJ1ZQorZGV0ZWN0b3JGaW5kUmV0dXJuUmVmPUZpbmRSZXR1cm5SZWZ8dHJ1ZQorZGV0ZWN0b3JGaW5kUnVuSW52b2NhdGlvbnM9RmluZFJ1bkludm9jYXRpb25zfHRydWUKK2RldGVjdG9yRmluZFNlbGZDb21wYXJpc29uPUZpbmRTZWxmQ29tcGFyaXNvbnx0cnVlCitkZXRlY3RvckZpbmRTZWxmQ29tcGFyaXNvbjI9RmluZFNlbGZDb21wYXJpc29uMnx0cnVlCitkZXRlY3RvckZpbmRTbGVlcFdpdGhMb2NrSGVsZD1GaW5kU2xlZXBXaXRoTG9ja0hlbGR8dHJ1ZQorZGV0ZWN0b3JGaW5kU3Bpbkxvb3A9RmluZFNwaW5Mb29wfHRydWUKK2RldGVjdG9yRmluZFNxbEluamVjdGlvbj1GaW5kU3FsSW5qZWN0aW9ufHRydWUKK2RldGVjdG9yRmluZFR3b0xvY2tXYWl0PUZpbmRUd29Mb2NrV2FpdHx0cnVlCitkZXRlY3RvckZpbmRVbmNhbGxlZFByaXZhdGVNZXRob2RzPUZpbmRVbmNhbGxlZFByaXZhdGVNZXRob2RzfHRydWUKK2RldGVjdG9yRmluZFVuY29uZGl0aW9uYWxXYWl0PUZpbmRVbmNvbmRpdGlvbmFsV2FpdHx0cnVlCitkZXRlY3RvckZpbmRVbmluaXRpYWxpemVkR2V0PUZpbmRVbmluaXRpYWxpemVkR2V0fHRydWUKK2RldGVjdG9yRmluZFVucmVsYXRlZFR5cGVzSW5HZW5lcmljQ29udGFpbmVyPUZpbmRVbnJlbGF0ZWRUeXBlc0luR2VuZXJpY0NvbnRhaW5lcnx0cnVlCitkZXRlY3RvckZpbmRVbnJlbGVhc2VkTG9jaz1GaW5kVW5yZWxlYXNlZExvY2t8dHJ1ZQorZGV0ZWN0b3JGaW5kVW5zYXRpc2ZpZWRPYmxpZ2F0aW9uPUZpbmRVbnNhdGlzZmllZE9ibGlnYXRpb258dHJ1ZQorZGV0ZWN0b3JGaW5kVW5zeW5jR2V0PUZpbmRVbnN5bmNHZXR8dHJ1ZQorZGV0ZWN0b3JGaW5kVXNlbGVzc0NvbnRyb2xGbG93PUZpbmRVc2VsZXNzQ29udHJvbEZsb3d8dHJ1ZQorZGV0ZWN0b3JGb3JtYXRTdHJpbmdDaGVja2VyPUZvcm1hdFN0cmluZ0NoZWNrZXJ8dHJ1ZQorZGV0ZWN0b3JIdWdlU2hhcmVkU3RyaW5nQ29uc3RhbnRzPUh1Z2VTaGFyZWRTdHJpbmdDb25zdGFudHN8dHJ1ZQorZGV0ZWN0b3JJRGl2UmVzdWx0Q2FzdFRvRG91YmxlPUlEaXZSZXN1bHRDYXN0VG9Eb3VibGV8dHJ1ZQorZGV0ZWN0b3JJbmNvbXBhdE1hc2s9SW5jb21wYXRNYXNrfHRydWUKK2RldGVjdG9ySW5jb25zaXN0ZW50QW5ub3RhdGlvbnM9SW5jb25zaXN0ZW50QW5ub3RhdGlvbnN8dHJ1ZQorZGV0ZWN0b3JJbmVmZmljaWVudE1lbWJlckFjY2Vzcz1JbmVmZmljaWVudE1lbWJlckFjY2Vzc3xmYWxzZQorZGV0ZWN0b3JJbmVmZmljaWVudFRvQXJyYXk9SW5lZmZpY2llbnRUb0FycmF5fHRydWUKK2RldGVjdG9ySW5maW5pdGVMb29wPUluZmluaXRlTG9vcHx0cnVlCitkZXRlY3RvckluZmluaXRlUmVjdXJzaXZlTG9vcD1JbmZpbml0ZVJlY3Vyc2l2ZUxvb3B8dHJ1ZQorZGV0ZWN0b3JJbmZpbml0ZVJlY3Vyc2l2ZUxvb3AyPUluZmluaXRlUmVjdXJzaXZlTG9vcDJ8ZmFsc2UKK2RldGVjdG9ySW5oZXJpdGFuY2VVbnNhZmVHZXRSZXNvdXJjZT1Jbmhlcml0YW5jZVVuc2FmZUdldFJlc291cmNlfHRydWUKK2RldGVjdG9ySW5pdGlhbGl6YXRpb25DaGFpbj1Jbml0aWFsaXphdGlvbkNoYWlufHRydWUKK2RldGVjdG9ySW5zdGFudGlhdGVTdGF0aWNDbGFzcz1JbnN0YW50aWF0ZVN0YXRpY0NsYXNzfHRydWUKK2RldGVjdG9ySW52YWxpZEpVbml0VGVzdD1JbnZhbGlkSlVuaXRUZXN0fHRydWUKK2RldGVjdG9ySXRlcmF0b3JJZGlvbXM9SXRlcmF0b3JJZGlvbXN8dHJ1ZQorZGV0ZWN0b3JMYXp5SW5pdD1MYXp5SW5pdHx0cnVlCitkZXRlY3RvckxvYWRPZktub3duTnVsbFZhbHVlPUxvYWRPZktub3duTnVsbFZhbHVlfHRydWUKK2RldGVjdG9yTWV0aG9kUmV0dXJuQ2hlY2s9TWV0aG9kUmV0dXJuQ2hlY2t8dHJ1ZQorZGV0ZWN0b3JNdWx0aXRocmVhZGVkSW5zdGFuY2VBY2Nlc3M9TXVsdGl0aHJlYWRlZEluc3RhbmNlQWNjZXNzfHRydWUKK2RldGVjdG9yTXV0YWJsZUxvY2s9TXV0YWJsZUxvY2t8dHJ1ZQorZGV0ZWN0b3JNdXRhYmxlU3RhdGljRmllbGRzPU11dGFibGVTdGF0aWNGaWVsZHN8dHJ1ZQorZGV0ZWN0b3JOYW1pbmc9TmFtaW5nfHRydWUKK2RldGVjdG9yTnVtYmVyQ29uc3RydWN0b3I9TnVtYmVyQ29uc3RydWN0b3J8dHJ1ZQorZGV0ZWN0b3JPdmVycmlkaW5nRXF1YWxzTm90U3ltbWV0cmljYWw9T3ZlcnJpZGluZ0VxdWFsc05vdFN5bW1ldHJpY2FsfHRydWUKK2RldGVjdG9yUHJlZmVyWmVyb0xlbmd0aEFycmF5cz1QcmVmZXJaZXJvTGVuZ3RoQXJyYXlzfHRydWUKK2RldGVjdG9yUHVibGljU2VtYXBob3Jlcz1QdWJsaWNTZW1hcGhvcmVzfGZhbHNlCitkZXRlY3RvclF1ZXN0aW9uYWJsZUJvb2xlYW5Bc3NpZ25tZW50PVF1ZXN0aW9uYWJsZUJvb2xlYW5Bc3NpZ25tZW50fHRydWUKK2RldGVjdG9yUmVhZFJldHVyblNob3VsZEJlQ2hlY2tlZD1SZWFkUmV0dXJuU2hvdWxkQmVDaGVja2VkfHRydWUKK2RldGVjdG9yUmVkdW5kYW50SW50ZXJmYWNlcz1SZWR1bmRhbnRJbnRlcmZhY2VzfHRydWUKK2RldGVjdG9yUmVwZWF0ZWRDb25kaXRpb25hbHM9UmVwZWF0ZWRDb25kaXRpb25hbHN8dHJ1ZQorZGV0ZWN0b3JSdW50aW1lRXhjZXB0aW9uQ2FwdHVyZT1SdW50aW1lRXhjZXB0aW9uQ2FwdHVyZXx0cnVlCitkZXRlY3RvclNlcmlhbGl6YWJsZUlkaW9tPVNlcmlhbGl6YWJsZUlkaW9tfHRydWUKK2RldGVjdG9yU3RhcnRJbkNvbnN0cnVjdG9yPVN0YXJ0SW5Db25zdHJ1Y3Rvcnx0cnVlCitkZXRlY3RvclN0YXRpY0NhbGVuZGFyRGV0ZWN0b3I9U3RhdGljQ2FsZW5kYXJEZXRlY3Rvcnx0cnVlCitkZXRlY3RvclN0cmluZ0NvbmNhdGVuYXRpb249U3RyaW5nQ29uY2F0ZW5hdGlvbnx0cnVlCitkZXRlY3RvclN1cGVyZmx1b3VzSW5zdGFuY2VPZj1TdXBlcmZsdW91c0luc3RhbmNlT2Z8dHJ1ZQorZGV0ZWN0b3JTdXNwaWNpb3VzVGhyZWFkSW50ZXJydXB0ZWQ9U3VzcGljaW91c1RocmVhZEludGVycnVwdGVkfHRydWUKK2RldGVjdG9yU3dpdGNoRmFsbHRocm91Z2g9U3dpdGNoRmFsbHRocm91Z2h8dHJ1ZQorZGV0ZWN0b3JTeW5jaHJvbml6ZUFuZE51bGxDaGVja0ZpZWxkPVN5bmNocm9uaXplQW5kTnVsbENoZWNrRmllbGR8dHJ1ZQorZGV0ZWN0b3JTeW5jaHJvbml6ZU9uQ2xhc3NMaXRlcmFsTm90R2V0Q2xhc3M9U3luY2hyb25pemVPbkNsYXNzTGl0ZXJhbE5vdEdldENsYXNzfHRydWUKK2RldGVjdG9yU3luY2hyb25pemluZ09uQ29udGVudHNPZkZpZWxkVG9Qcm90ZWN0RmllbGQ9U3luY2hyb25pemluZ09uQ29udGVudHNPZkZpZWxkVG9Qcm90ZWN0RmllbGR8dHJ1ZQorZGV0ZWN0b3JVUkxQcm9ibGVtcz1VUkxQcm9ibGVtc3x0cnVlCitkZXRlY3RvclVuY2FsbGFibGVNZXRob2RPZkFub255bW91c0NsYXNzPVVuY2FsbGFibGVNZXRob2RPZkFub255bW91c0NsYXNzfHRydWUKK2RldGVjdG9yVW5uZWNlc3NhcnlNYXRoPVVubmVjZXNzYXJ5TWF0aHx0cnVlCitkZXRlY3RvclVucmVhZEZpZWxkcz1VbnJlYWRGaWVsZHN8dHJ1ZQorZGV0ZWN0b3JVc2VPYmplY3RFcXVhbHM9VXNlT2JqZWN0RXF1YWxzfGZhbHNlCitkZXRlY3RvclVzZWxlc3NTdWJjbGFzc01ldGhvZD1Vc2VsZXNzU3ViY2xhc3NNZXRob2R8ZmFsc2UKK2RldGVjdG9yVmFyQXJnc1Byb2JsZW1zPVZhckFyZ3NQcm9ibGVtc3x0cnVlCitkZXRlY3RvclZvbGF0aWxlVXNhZ2U9Vm9sYXRpbGVVc2FnZXx0cnVlCitkZXRlY3RvcldhaXRJbkxvb3A9V2FpdEluTG9vcHx0cnVlCitkZXRlY3Rvcldyb25nTWFwSXRlcmF0b3I9V3JvbmdNYXBJdGVyYXRvcnx0cnVlCitkZXRlY3RvclhNTEZhY3RvcnlCeXBhc3M9WE1MRmFjdG9yeUJ5cGFzc3x0cnVlCitkZXRlY3Rvcl90aHJlc2hvbGQ9MgorZWZmb3J0PWRlZmF1bHQKK2V4Y2x1ZGVmaWx0ZXIwPWZpbmRCdWdzL0ZpbmRCdWdzRXhjbHVkZUZpbHRlci54bWwKK2ZpbHRlcl9zZXR0aW5ncz1NZWRpdW18QkFEX1BSQUNUSUNFLENPUlJFQ1RORVNTLE1UX0NPUlJFQ1RORVNTLFBFUkZPUk1BTkNFLFNUWUxFfGZhbHNlCitmaWx0ZXJfc2V0dGluZ3NfbmVnPU1BTElDSU9VU19DT0RFLE5PSVNFLEkxOE4sU0VDVVJJVFksRVhQRVJJTUVOVEFMfAorcnVuX2F0X2Z1bGxfYnVpbGQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5naXRpZ25vcmUgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MzRlMGUwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5naXRpZ25vcmUKQEAgLTAsMCArMSwyIEBACisvYmluCisvdGFyZ2V0CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmFjMTVjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDMgQEAKKyNNb24gQXVnIDExIDE2OjQ2OjEyIFBEVCAyMDA4CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorZW5jb2RpbmcvPHByb2plY3Q+PVVURi04CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucnVudGltZS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAwNmUwN2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucnVudGltZS5wcmVmcwpAQCAtMCwwICsxLDMgQEAKKyNNb24gTWFyIDI0IDE4OjU1OjUwIEVEVCAyMDA4CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorbGluZS5zZXBhcmF0b3I9XG4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQxZjU0YmIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNTE4IEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5pbmhlcml0TnVsbEFubm90YXRpb25zPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubWlzc2luZ05vbk51bGxCeURlZmF1bHRBbm5vdGF0aW9uPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5ub25udWxsPW9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnMuTm9uTnVsbAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5ub25udWxsYnlkZWZhdWx0PW9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnMuTm9uTnVsbEJ5RGVmYXVsdAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYWJsZT1vcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zLk51bGxhYmxlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRvYy5jb21tZW50LnN1cHBvcnQ9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hbm5vdGF0aW9uU3VwZXJJbnRlcmZhY2U9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hc3NlcnRJZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmF1dG9ib3hpbmc9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5jb21wYXJpbmdJZGVudGljYWw9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVhZENvZGU9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb249d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbkluRGVwcmVjYXRlZENvZGU9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25XaGVuT3ZlcnJpZGluZ0RlcHJlY2F0ZWRNZXRob2Q9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGlzY291cmFnZWRSZWZlcmVuY2U9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbXB0eVN0YXRlbWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVuYWJsZVByZXZpZXdGZWF0dXJlcz1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5leHBsaWNpdGx5Q2xvc2VkQXV0b0Nsb3NlYWJsZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhbGx0aHJvdWdoQ2FzZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhdGFsT3B0aW9uYWxFcnJvcj1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5maWVsZEhpZGluZz13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZpbmFsUGFyYW1ldGVyQm91bmQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5maW5hbGx5QmxvY2tOb3RDb21wbGV0aW5nTm9ybWFsbHk9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZm9yYmlkZGVuUmVmZXJlbmNlPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmhpZGRlbkNhdGNoQmxvY2s9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uaW5jbHVkZU51bGxJbmZvRnJvbUFzc2VydHM9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5pbmNvbXBhdGlibGVOb25Jbmhlcml0ZWRJbnRlcmZhY2VNZXRob2Q9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5pbmNvbXBsZXRlRW51bVN3aXRjaD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmluZGlyZWN0U3RhdGljQWNjZXNzPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmludmFsaWRKYXZhZG9jPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmludmFsaWRKYXZhZG9jVGFncz1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmludmFsaWRKYXZhZG9jVGFnc0RlcHJlY2F0ZWRSZWY9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5pbnZhbGlkSmF2YWRvY1RhZ3NOb3RWaXNpYmxlUmVmPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uaW52YWxpZEphdmFkb2NUYWdzVmlzaWJpbGl0eT1wcml2YXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmxvY2FsVmFyaWFibGVIaWRpbmc9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5tZXRob2RXaXRoQ29uc3RydWN0b3JOYW1lPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm1pc3NpbmdEZWZhdWx0Q2FzZT1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ0RlcHJlY2F0ZWRBbm5vdGF0aW9uPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nRW51bUNhc2VEZXNwaXRlRGVmYXVsdD1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nSGFzaENvZGVNZXRob2Q9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ0phdmFkb2NDb21tZW50cz1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nSmF2YWRvY0NvbW1lbnRzT3ZlcnJpZGluZz1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nSmF2YWRvY0NvbW1lbnRzVmlzaWJpbGl0eT1wcm90ZWN0ZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ0phdmFkb2NUYWdEZXNjcmlwdGlvbj1yZXR1cm5fdGFnCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm1pc3NpbmdKYXZhZG9jVGFncz1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nSmF2YWRvY1RhZ3NNZXRob2RUeXBlUGFyYW1ldGVycz1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nSmF2YWRvY1RhZ3NPdmVycmlkaW5nPWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm1pc3NpbmdKYXZhZG9jVGFnc1Zpc2liaWxpdHk9cHJpdmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nT3ZlcnJpZGVBbm5vdGF0aW9uPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ092ZXJyaWRlQW5ub3RhdGlvbkZvckludGVyZmFjZU1ldGhvZEltcGxlbWVudGF0aW9uPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ1NlcmlhbFZlcnNpb249d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nU3luY2hyb25pemVkT25Jbmhlcml0ZWRNZXRob2Q9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm5vRWZmZWN0QXNzaWdubWVudD1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5ub0ltcGxpY2l0U3RyaW5nQ29udmVyc2lvbj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5ub25FeHRlcm5hbGl6ZWRTdHJpbmdMaXRlcmFsPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubm9ubnVsbFBhcmFtZXRlckFubm90YXRpb25Ecm9wcGVkPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubnVsbEFubm90YXRpb25JbmZlcmVuY2VDb25mbGljdD1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5udWxsUmVmZXJlbmNlPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm51bGxTcGVjVmlvbGF0aW9uPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm51bGxVbmNoZWNrZWRDb252ZXJzaW9uPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5vdmVycmlkaW5nUGFja2FnZURlZmF1bHRNZXRob2Q9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5wYXJhbWV0ZXJBc3NpZ25tZW50PWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5wb3NzaWJsZUFjY2lkZW50YWxCb29sZWFuQXNzaWdubWVudD1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5wb3RlbnRpYWxOdWxsUmVmZXJlbmNlPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnBvdGVudGlhbGx5VW5jbG9zZWRDbG9zZWFibGU9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJhd1R5cGVSZWZlcmVuY2U9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudE51bGxBbm5vdGF0aW9uPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50TnVsbENoZWNrPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3BlY2lmaWNhdGlvbk9mVHlwZUFyZ3VtZW50cz13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudFN1cGVyaW50ZXJmYWNlPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlUG90ZW50aWFsbHlTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydE1ldGhvZENhbkJlU3RhdGljPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc1dhcm5pbmdzPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3ludGFjdGljTnVsbEFuYWx5c2lzRm9yRmllbGRzPWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN5bnRoZXRpY0FjY2Vzc0VtdWxhdGlvbj1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udHlwZVBhcmFtZXRlckhpZGluZz13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuYXZvaWRhYmxlR2VuZXJpY1R5cGVQcm9ibGVtcz1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuY2hlY2tlZFR5cGVPcGVyYXRpb249d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bmNsb3NlZENsb3NlYWJsZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuZG9jdW1lbnRlZEVtcHR5QmxvY2s9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bmhhbmRsZWRXYXJuaW5nVG9rZW49d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bm5lY2Vzc2FyeUVsc2U9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bm5lY2Vzc2FyeVR5cGVDaGVjaz1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnF1YWxpZmllZEZpZWxkQWNjZXNzPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWREZWNsYXJlZFRocm93bkV4Y2VwdGlvbj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZERlY2xhcmVkVGhyb3duRXhjZXB0aW9uRXhlbXB0RXhjZXB0aW9uQW5kVGhyb3dhYmxlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkRGVjbGFyZWRUaHJvd25FeGNlcHRpb25JbmNsdWRlRG9jQ29tbWVudFJlZmVyZW5jZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZERlY2xhcmVkVGhyb3duRXhjZXB0aW9uV2hlbk92ZXJyaWRpbmc9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkRXhjZXB0aW9uUGFyYW1ldGVyPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRJbXBvcnQ9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkTGFiZWw9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkTG9jYWw9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkT2JqZWN0QWxsb2NhdGlvbj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFBhcmFtZXRlcj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFBhcmFtZXRlckluY2x1ZGVEb2NDb21tZW50UmVmZXJlbmNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkUGFyYW1ldGVyV2hlbkltcGxlbWVudGluZ0Fic3RyYWN0PWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFBhcmFtZXRlcldoZW5PdmVycmlkaW5nQ29uY3JldGU9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkUHJpdmF0ZU1lbWJlcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbWVtYmVyX3R5cGU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9tZXRob2Q9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hcnJheV9pbml0aWFsaXplcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9ibG9jaz1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9ibG9ja19pbl9jYXNlPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQ9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9sYW1iZGFfYm9keT1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2NvbnN0cnVjdG9yPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2g9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19kZXNjcmlwdGlvbnNfZ3JvdXBlZD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9ibG9ja19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNvdW50X2xpbmVfbGVuZ3RoX2Zyb21fc3RhcnRpbmdfcG9zaXRpb249ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfY29tbWVudHM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlcj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2h0bWw9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2phdmFkb2NfY29tbWVudHM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2xpbmVfY29tbWVudHM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9qYXZhZG9jX2JvdW5kYXJpZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQucHJlc2VydmVfd2hpdGVfc3BhY2VfYmV0d2Vlbl9jb2RlX2FuZF9saW5lX2NvbW1lbnRzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tcGFjdF9lbHNlX2lmPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb250aW51YXRpb25faW5kZW50YXRpb249Mgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbnRpbnVhdGlvbl9pbmRlbnRhdGlvbl9mb3JfYXJyYXlfaW5pdGlhbGl6ZXI9Mgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N0YXRlbWVudHNfY29tcGFyZV90b19ibG9jaz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N0YXRlbWVudHNfY29tcGFyZV90b19ib2R5PXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX2Nhc2VzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfZWxzZV9pbl9pZl9zdGF0ZW1lbnQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfZmluYWxseV9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3doaWxlX2luX2RvX3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2Fubm90YXRpb25fZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9ibG9jaz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9jb25zdGFudD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX3BhcmVuX2luX2Nhc3Q9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbG9uX2luX2Fzc2VydD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29sb25faW5fY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29sb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbG9uX2luX2Zvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29sb25faW5fbGFiZWxlZF9zdGF0ZW1lbnQ9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fYW5ub3RhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uX3Rocm93cz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fZW51bV9jb25zdGFudF9hcmd1bWVudHM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2VudW1fZGVjbGFyYXRpb25zPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9leHBsaWNpdGNvbnN0cnVjdG9yY2FsbF9hcmd1bWVudHM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2Zvcl9pbmNyZW1lbnRzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9mb3JfaW5pdHM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX21ldGhvZF9kZWNsYXJhdGlvbl9wYXJhbWV0ZXJzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tZXRob2RfZGVjbGFyYXRpb25fdGhyb3dzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tZXRob2RfaW52b2NhdGlvbl9hcmd1bWVudHM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9jYXN0PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9jYXRjaD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2VudW1fY29uc3RhbnQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2Zvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5faWY9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl93aGlsZT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3Bvc3RmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYnJhY2tldF9pbl9hcnJheV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fY2FzdD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2NhdGNoPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9lbnVtX2NvbnN0YW50PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fZm9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5faWY9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3doaWxlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2Fzc2VydD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2Nhc2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29sb25faW5fY29uZGl0aW9uYWw9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9kZWZhdWx0PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2Zvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2xhYmVsZWRfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb25fdGhyb3dzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2VudW1fY29uc3RhbnRfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2VudW1fZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2V4cGxpY2l0Y29uc3RydWN0b3JjYWxsX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9mb3JfaW5jcmVtZW50cz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9mb3JfaW5pdHM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbWV0aG9kX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbWV0aG9kX2RlY2xhcmF0aW9uX3Rocm93cz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tZXRob2RfaW52b2NhdGlvbl9hcmd1bWVudHM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fYmxvY2s9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9tZXRob2RfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3Rvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9zd2l0Y2g9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2Fubm90YXRpb25fdHlwZV9tZW1iZXJfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9jYXRjaD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9lbnVtX2NvbnN0YW50PWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fZm9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9pZj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl93aGlsZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbl9pbl9yZXR1cm49aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb25faW5fdGhyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wb3N0Zml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNrZXRzX2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX2Fubm90YXRpb25fdHlwZV9tZW1iZXJfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX2VudW1fY29uc3RhbnQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjZmI4YjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMCwwICsxLDY2IEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCitmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCitvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKK29yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQorb3JnLmVjbGlwc2UuamR0LnVpLnN0YXRpY29uZGVtYW5kdGhyZXNob2xkPTk5CitvcmcuZWNsaXBzZS5qZHQudWkudGV4dC5jdXN0b21fY29kZV90ZW1wbGF0ZXM9PD94bWwgdmVyc2lvblw9IjEuMCIgZW5jb2RpbmdcPSJVVEYtOCI/Pjx0ZW1wbGF0ZXMvPgorc3BfY2xlYW51cC5hZGRfZGVmYXVsdF9zZXJpYWxfdmVyc2lvbl9pZD10cnVlCitzcF9jbGVhbnVwLmFkZF9nZW5lcmF0ZWRfc2VyaWFsX3ZlcnNpb25faWQ9ZmFsc2UKK3NwX2NsZWFudXAuYWRkX21pc3NpbmdfYW5ub3RhdGlvbnM9dHJ1ZQorc3BfY2xlYW51cC5hZGRfbWlzc2luZ19kZXByZWNhdGVkX2Fubm90YXRpb25zPXRydWUKK3NwX2NsZWFudXAuYWRkX21pc3NpbmdfbWV0aG9kcz1mYWxzZQorc3BfY2xlYW51cC5hZGRfbWlzc2luZ19ubHNfdGFncz1mYWxzZQorc3BfY2xlYW51cC5hZGRfbWlzc2luZ19vdmVycmlkZV9hbm5vdGF0aW9ucz10cnVlCitzcF9jbGVhbnVwLmFkZF9taXNzaW5nX292ZXJyaWRlX2Fubm90YXRpb25zX2ludGVyZmFjZV9tZXRob2RzPXRydWUKK3NwX2NsZWFudXAuYWRkX3NlcmlhbF92ZXJzaW9uX2lkPWZhbHNlCitzcF9jbGVhbnVwLmFsd2F5c191c2VfYmxvY2tzPXRydWUKK3NwX2NsZWFudXAuYWx3YXlzX3VzZV9wYXJlbnRoZXNlc19pbl9leHByZXNzaW9ucz1mYWxzZQorc3BfY2xlYW51cC5hbHdheXNfdXNlX3RoaXNfZm9yX25vbl9zdGF0aWNfZmllbGRfYWNjZXNzPWZhbHNlCitzcF9jbGVhbnVwLmFsd2F5c191c2VfdGhpc19mb3Jfbm9uX3N0YXRpY19tZXRob2RfYWNjZXNzPWZhbHNlCitzcF9jbGVhbnVwLmNvbnZlcnRfZnVuY3Rpb25hbF9pbnRlcmZhY2VzPWZhbHNlCitzcF9jbGVhbnVwLmNvbnZlcnRfdG9fZW5oYW5jZWRfZm9yX2xvb3A9ZmFsc2UKK3NwX2NsZWFudXAuY29ycmVjdF9pbmRlbnRhdGlvbj1mYWxzZQorc3BfY2xlYW51cC5mb3JtYXRfc291cmNlX2NvZGU9dHJ1ZQorc3BfY2xlYW51cC5mb3JtYXRfc291cmNlX2NvZGVfY2hhbmdlc19vbmx5PXRydWUKK3NwX2NsZWFudXAuaW5zZXJ0X2luZmVycmVkX3R5cGVfYXJndW1lbnRzPWZhbHNlCitzcF9jbGVhbnVwLm1ha2VfbG9jYWxfdmFyaWFibGVfZmluYWw9ZmFsc2UKK3NwX2NsZWFudXAubWFrZV9wYXJhbWV0ZXJzX2ZpbmFsPWZhbHNlCitzcF9jbGVhbnVwLm1ha2VfcHJpdmF0ZV9maWVsZHNfZmluYWw9dHJ1ZQorc3BfY2xlYW51cC5tYWtlX3R5cGVfYWJzdHJhY3RfaWZfbWlzc2luZ19tZXRob2Q9ZmFsc2UKK3NwX2NsZWFudXAubWFrZV92YXJpYWJsZV9kZWNsYXJhdGlvbnNfZmluYWw9ZmFsc2UKK3NwX2NsZWFudXAubmV2ZXJfdXNlX2Jsb2Nrcz1mYWxzZQorc3BfY2xlYW51cC5uZXZlcl91c2VfcGFyZW50aGVzZXNfaW5fZXhwcmVzc2lvbnM9dHJ1ZQorc3BfY2xlYW51cC5vbl9zYXZlX3VzZV9hZGRpdGlvbmFsX2FjdGlvbnM9dHJ1ZQorc3BfY2xlYW51cC5vcmdhbml6ZV9pbXBvcnRzPWZhbHNlCitzcF9jbGVhbnVwLnF1YWxpZnlfc3RhdGljX2ZpZWxkX2FjY2Vzc2VzX3dpdGhfZGVjbGFyaW5nX2NsYXNzPWZhbHNlCitzcF9jbGVhbnVwLnF1YWxpZnlfc3RhdGljX21lbWJlcl9hY2Nlc3Nlc190aHJvdWdoX2luc3RhbmNlc193aXRoX2RlY2xhcmluZ19jbGFzcz10cnVlCitzcF9jbGVhbnVwLnF1YWxpZnlfc3RhdGljX21lbWJlcl9hY2Nlc3Nlc190aHJvdWdoX3N1YnR5cGVzX3dpdGhfZGVjbGFyaW5nX2NsYXNzPXRydWUKK3NwX2NsZWFudXAucXVhbGlmeV9zdGF0aWNfbWVtYmVyX2FjY2Vzc2VzX3dpdGhfZGVjbGFyaW5nX2NsYXNzPWZhbHNlCitzcF9jbGVhbnVwLnF1YWxpZnlfc3RhdGljX21ldGhvZF9hY2Nlc3Nlc193aXRoX2RlY2xhcmluZ19jbGFzcz1mYWxzZQorc3BfY2xlYW51cC5yZW1vdmVfcHJpdmF0ZV9jb25zdHJ1Y3RvcnM9dHJ1ZQorc3BfY2xlYW51cC5yZW1vdmVfcmVkdW5kYW50X3R5cGVfYXJndW1lbnRzPXRydWUKK3NwX2NsZWFudXAucmVtb3ZlX3RyYWlsaW5nX3doaXRlc3BhY2VzPXRydWUKK3NwX2NsZWFudXAucmVtb3ZlX3RyYWlsaW5nX3doaXRlc3BhY2VzX2FsbD10cnVlCitzcF9jbGVhbnVwLnJlbW92ZV90cmFpbGluZ193aGl0ZXNwYWNlc19pZ25vcmVfZW1wdHk9ZmFsc2UKK3NwX2NsZWFudXAucmVtb3ZlX3VubmVjZXNzYXJ5X2Nhc3RzPXRydWUKK3NwX2NsZWFudXAucmVtb3ZlX3VubmVjZXNzYXJ5X25sc190YWdzPXRydWUKK3NwX2NsZWFudXAucmVtb3ZlX3VudXNlZF9pbXBvcnRzPWZhbHNlCitzcF9jbGVhbnVwLnJlbW92ZV91bnVzZWRfbG9jYWxfdmFyaWFibGVzPWZhbHNlCitzcF9jbGVhbnVwLnJlbW92ZV91bnVzZWRfcHJpdmF0ZV9maWVsZHM9dHJ1ZQorc3BfY2xlYW51cC5yZW1vdmVfdW51c2VkX3ByaXZhdGVfbWVtYmVycz1mYWxzZQorc3BfY2xlYW51cC5yZW1vdmVfdW51c2VkX3ByaXZhdGVfbWV0aG9kcz10cnVlCitzcF9jbGVhbnVwLnJlbW92ZV91bnVzZWRfcHJpdmF0ZV90eXBlcz10cnVlCitzcF9jbGVhbnVwLnNvcnRfbWVtYmVycz1mYWxzZQorc3BfY2xlYW51cC5zb3J0X21lbWJlcnNfYWxsPWZhbHNlCitzcF9jbGVhbnVwLnVzZV9hbm9ueW1vdXNfY2xhc3NfY3JlYXRpb249ZmFsc2UKK3NwX2NsZWFudXAudXNlX2Jsb2Nrcz1mYWxzZQorc3BfY2xlYW51cC51c2VfYmxvY2tzX29ubHlfZm9yX3JldHVybl9hbmRfdGhyb3c9ZmFsc2UKK3NwX2NsZWFudXAudXNlX2xhbWJkYT1mYWxzZQorc3BfY2xlYW51cC51c2VfcGFyZW50aGVzZXNfaW5fZXhwcmVzc2lvbnM9ZmFsc2UKK3NwX2NsZWFudXAudXNlX3RoaXNfZm9yX25vbl9zdGF0aWNfZmllbGRfYWNjZXNzPWZhbHNlCitzcF9jbGVhbnVwLnVzZV90aGlzX2Zvcl9ub25fc3RhdGljX2ZpZWxkX2FjY2Vzc19vbmx5X2lmX25lY2Vzc2FyeT10cnVlCitzcF9jbGVhbnVwLnVzZV90aGlzX2Zvcl9ub25fc3RhdGljX21ldGhvZF9hY2Nlc3M9ZmFsc2UKK3NwX2NsZWFudXAudXNlX3RoaXNfZm9yX25vbl9zdGF0aWNfbWV0aG9kX2FjY2Vzc19vbmx5X2lmX25lY2Vzc2FyeT10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLm15bHluLnRhc2tzLnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5teWx5bi50YXNrcy51aS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MjNjMGY1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5teWx5bi50YXNrcy51aS5wcmVmcwpAQCAtMCwwICsxLDQgQEAKKyNUdWUgSnVsIDE5IDIwOjExOjI4IENFU1QgMjAxMQorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK3Byb2plY3QucmVwb3NpdG9yeS5raW5kPWJ1Z3ppbGxhCitwcm9qZWN0LnJlcG9zaXRvcnkudXJsPWh0dHBzXDovL2J1Z3MuZWNsaXBzZS5vcmcvYnVncwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5teWx5bi50ZWFtLnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5teWx5bi50ZWFtLnVpLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjYmE5NDkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLm15bHluLnRlYW0udWkucHJlZnMKQEAgLTAsMCArMSwzIEBACisjVHVlIEp1bCAxOSAyMDoxMToyOCBDRVNUIDIwMTEKK2NvbW1pdC5jb21tZW50LnRlbXBsYXRlPSR7dGFzay5kZXNjcmlwdGlvbn0gXG5cbkJ1Z1w6ICR7dGFzay5rZXl9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5wZGUuYXBpLnRvb2xzLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5wZGUuYXBpLnRvb2xzLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMwMDMwZGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLnBkZS5hcGkudG9vbHMucHJlZnMKQEAgLTAsMCArMSwxMDQgQEAKK0FOTk9UQVRJT05fRUxFTUVOVF9UWVBFX0FEREVEX0ZJRUxEPUVycm9yCitBTk5PVEFUSU9OX0VMRU1FTlRfVFlQRV9BRERFRF9NRVRIT0RfV0lUSE9VVF9ERUZBVUxUX1ZBTFVFPUVycm9yCitBTk5PVEFUSU9OX0VMRU1FTlRfVFlQRV9DSEFOR0VEX1RZUEVfQ09OVkVSU0lPTj1FcnJvcgorQU5OT1RBVElPTl9FTEVNRU5UX1RZUEVfUkVNT1ZFRF9GSUVMRD1FcnJvcgorQU5OT1RBVElPTl9FTEVNRU5UX1RZUEVfUkVNT1ZFRF9NRVRIT0Q9RXJyb3IKK0FOTk9UQVRJT05fRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRV9NRU1CRVI9RXJyb3IKK0FQSV9DT01QT05FTlRfRUxFTUVOVF9UWVBFX1JFTU9WRURfQVBJX1RZUEU9RXJyb3IKK0FQSV9DT01QT05FTlRfRUxFTUVOVF9UWVBFX1JFTU9WRURfUkVFWFBPUlRFRF9BUElfVFlQRT1FcnJvcgorQVBJX0NPTVBPTkVOVF9FTEVNRU5UX1RZUEVfUkVNT1ZFRF9SRUVYUE9SVEVEX1RZUEU9RXJyb3IKK0FQSV9DT01QT05FTlRfRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRT1FcnJvcgorQVBJX1VTRV9TQ0FOX0ZJRUxEX1NFVkVSSVRZPUVycm9yCitBUElfVVNFX1NDQU5fTUVUSE9EX1NFVkVSSVRZPUVycm9yCitBUElfVVNFX1NDQU5fVFlQRV9TRVZFUklUWT1FcnJvcgorQ0xBU1NfRUxFTUVOVF9UWVBFX0FEREVEX0ZJRUxEPUVycm9yCitDTEFTU19FTEVNRU5UX1RZUEVfQURERURfTUVUSE9EPUVycm9yCitDTEFTU19FTEVNRU5UX1RZUEVfQURERURfUkVTVFJJQ1RJT05TPUVycm9yCitDTEFTU19FTEVNRU5UX1RZUEVfQURERURfVFlQRV9QQVJBTUVURVI9RXJyb3IKK0NMQVNTX0VMRU1FTlRfVFlQRV9DSEFOR0VEX0NPTlRSQUNURURfU1VQRVJJTlRFUkZBQ0VTX1NFVD1FcnJvcgorQ0xBU1NfRUxFTUVOVF9UWVBFX0NIQU5HRURfREVDUkVBU0VfQUNDRVNTPUVycm9yCitDTEFTU19FTEVNRU5UX1RZUEVfQ0hBTkdFRF9OT05fQUJTVFJBQ1RfVE9fQUJTVFJBQ1Q9RXJyb3IKK0NMQVNTX0VMRU1FTlRfVFlQRV9DSEFOR0VEX05PTl9GSU5BTF9UT19GSU5BTD1FcnJvcgorQ0xBU1NfRUxFTUVOVF9UWVBFX0NIQU5HRURfVFlQRV9DT05WRVJTSU9OPUVycm9yCitDTEFTU19FTEVNRU5UX1RZUEVfUkVNT1ZFRF9DT05TVFJVQ1RPUj1FcnJvcgorQ0xBU1NfRUxFTUVOVF9UWVBFX1JFTU9WRURfRklFTEQ9RXJyb3IKK0NMQVNTX0VMRU1FTlRfVFlQRV9SRU1PVkVEX01FVEhPRD1FcnJvcgorQ0xBU1NfRUxFTUVOVF9UWVBFX1JFTU9WRURfU1VQRVJDTEFTUz1FcnJvcgorQ0xBU1NfRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRV9NRU1CRVI9RXJyb3IKK0NMQVNTX0VMRU1FTlRfVFlQRV9SRU1PVkVEX1RZUEVfUEFSQU1FVEVSPUVycm9yCitDT05TVFJVQ1RPUl9FTEVNRU5UX1RZUEVfQURERURfVFlQRV9QQVJBTUVURVI9RXJyb3IKK0NPTlNUUlVDVE9SX0VMRU1FTlRfVFlQRV9DSEFOR0VEX0RFQ1JFQVNFX0FDQ0VTUz1FcnJvcgorQ09OU1RSVUNUT1JfRUxFTUVOVF9UWVBFX0NIQU5HRURfVkFSQVJHU19UT19BUlJBWT1FcnJvcgorQ09OU1RSVUNUT1JfRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRV9QQVJBTUVURVI9RXJyb3IKK0VOVU1fRUxFTUVOVF9UWVBFX0NIQU5HRURfQ09OVFJBQ1RFRF9TVVBFUklOVEVSRkFDRVNfU0VUPUVycm9yCitFTlVNX0VMRU1FTlRfVFlQRV9DSEFOR0VEX1RZUEVfQ09OVkVSU0lPTj1FcnJvcgorRU5VTV9FTEVNRU5UX1RZUEVfUkVNT1ZFRF9FTlVNX0NPTlNUQU5UPUVycm9yCitFTlVNX0VMRU1FTlRfVFlQRV9SRU1PVkVEX0ZJRUxEPUVycm9yCitFTlVNX0VMRU1FTlRfVFlQRV9SRU1PVkVEX01FVEhPRD1FcnJvcgorRU5VTV9FTEVNRU5UX1RZUEVfUkVNT1ZFRF9UWVBFX01FTUJFUj1FcnJvcgorRklFTERfRUxFTUVOVF9UWVBFX0FEREVEX1ZBTFVFPUVycm9yCitGSUVMRF9FTEVNRU5UX1RZUEVfQ0hBTkdFRF9ERUNSRUFTRV9BQ0NFU1M9RXJyb3IKK0ZJRUxEX0VMRU1FTlRfVFlQRV9DSEFOR0VEX0ZJTkFMX1RPX05PTl9GSU5BTF9TVEFUSUNfQ09OU1RBTlQ9RXJyb3IKK0ZJRUxEX0VMRU1FTlRfVFlQRV9DSEFOR0VEX05PTl9GSU5BTF9UT19GSU5BTD1FcnJvcgorRklFTERfRUxFTUVOVF9UWVBFX0NIQU5HRURfTk9OX1NUQVRJQ19UT19TVEFUSUM9RXJyb3IKK0ZJRUxEX0VMRU1FTlRfVFlQRV9DSEFOR0VEX1NUQVRJQ19UT19OT05fU1RBVElDPUVycm9yCitGSUVMRF9FTEVNRU5UX1RZUEVfQ0hBTkdFRF9UWVBFPUVycm9yCitGSUVMRF9FTEVNRU5UX1RZUEVfQ0hBTkdFRF9WQUxVRT1FcnJvcgorRklFTERfRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRV9BUkdVTUVOVD1FcnJvcgorRklFTERfRUxFTUVOVF9UWVBFX1JFTU9WRURfVkFMVUU9RXJyb3IKK0lMTEVHQUxfRVhURU5EPVdhcm5pbmcKK0lMTEVHQUxfSU1QTEVNRU5UPVdhcm5pbmcKK0lMTEVHQUxfSU5TVEFOVElBVEU9V2FybmluZworSUxMRUdBTF9PVkVSUklERT1XYXJuaW5nCitJTExFR0FMX1JFRkVSRU5DRT1XYXJuaW5nCitJTlRFUkZBQ0VfRUxFTUVOVF9UWVBFX0FEREVEX0RFRkFVTFRfTUVUSE9EPUVycm9yCitJTlRFUkZBQ0VfRUxFTUVOVF9UWVBFX0FEREVEX0ZJRUxEPUVycm9yCitJTlRFUkZBQ0VfRUxFTUVOVF9UWVBFX0FEREVEX01FVEhPRD1FcnJvcgorSU5URVJGQUNFX0VMRU1FTlRfVFlQRV9BRERFRF9SRVNUUklDVElPTlM9RXJyb3IKK0lOVEVSRkFDRV9FTEVNRU5UX1RZUEVfQURERURfU1VQRVJfSU5URVJGQUNFX1dJVEhfTUVUSE9EUz1FcnJvcgorSU5URVJGQUNFX0VMRU1FTlRfVFlQRV9BRERFRF9UWVBFX1BBUkFNRVRFUj1FcnJvcgorSU5URVJGQUNFX0VMRU1FTlRfVFlQRV9DSEFOR0VEX0NPTlRSQUNURURfU1VQRVJJTlRFUkZBQ0VTX1NFVD1FcnJvcgorSU5URVJGQUNFX0VMRU1FTlRfVFlQRV9DSEFOR0VEX1RZUEVfQ09OVkVSU0lPTj1FcnJvcgorSU5URVJGQUNFX0VMRU1FTlRfVFlQRV9SRU1PVkVEX0ZJRUxEPUVycm9yCitJTlRFUkZBQ0VfRUxFTUVOVF9UWVBFX1JFTU9WRURfTUVUSE9EPUVycm9yCitJTlRFUkZBQ0VfRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRV9NRU1CRVI9RXJyb3IKK0lOVEVSRkFDRV9FTEVNRU5UX1RZUEVfUkVNT1ZFRF9UWVBFX1BBUkFNRVRFUj1FcnJvcgorSU5WQUxJRF9BTk5PVEFUSU9OPUlnbm9yZQorSU5WQUxJRF9KQVZBRE9DX1RBRz1JZ25vcmUKK0lOVkFMSURfUkVGRVJFTkNFX0lOX1NZU1RFTV9MSUJSQVJJRVM9RXJyb3IKK0xFQUtfRVhURU5EPVdhcm5pbmcKK0xFQUtfRklFTERfREVDTD1XYXJuaW5nCitMRUFLX0lNUExFTUVOVD1XYXJuaW5nCitMRUFLX01FVEhPRF9QQVJBTT1XYXJuaW5nCitMRUFLX01FVEhPRF9SRVRVUk5fVFlQRT1XYXJuaW5nCitNRVRIT0RfRUxFTUVOVF9UWVBFX0FEREVEX1JFU1RSSUNUSU9OUz1FcnJvcgorTUVUSE9EX0VMRU1FTlRfVFlQRV9BRERFRF9UWVBFX1BBUkFNRVRFUj1FcnJvcgorTUVUSE9EX0VMRU1FTlRfVFlQRV9DSEFOR0VEX0RFQ1JFQVNFX0FDQ0VTUz1FcnJvcgorTUVUSE9EX0VMRU1FTlRfVFlQRV9DSEFOR0VEX05PTl9BQlNUUkFDVF9UT19BQlNUUkFDVD1FcnJvcgorTUVUSE9EX0VMRU1FTlRfVFlQRV9DSEFOR0VEX05PTl9GSU5BTF9UT19GSU5BTD1FcnJvcgorTUVUSE9EX0VMRU1FTlRfVFlQRV9DSEFOR0VEX05PTl9TVEFUSUNfVE9fU1RBVElDPUVycm9yCitNRVRIT0RfRUxFTUVOVF9UWVBFX0NIQU5HRURfU1RBVElDX1RPX05PTl9TVEFUSUM9RXJyb3IKK01FVEhPRF9FTEVNRU5UX1RZUEVfQ0hBTkdFRF9WQVJBUkdTX1RPX0FSUkFZPUVycm9yCitNRVRIT0RfRUxFTUVOVF9UWVBFX1JFTU9WRURfQU5OT1RBVElPTl9ERUZBVUxUX1ZBTFVFPUVycm9yCitNRVRIT0RfRUxFTUVOVF9UWVBFX1JFTU9WRURfVFlQRV9QQVJBTUVURVI9RXJyb3IKK01JU1NJTkdfRUVfREVTQ1JJUFRJT05TPVdhcm5pbmcKK1RZUEVfUEFSQU1FVEVSX0VMRU1FTlRfVFlQRV9BRERFRF9DTEFTU19CT1VORD1FcnJvcgorVFlQRV9QQVJBTUVURVJfRUxFTUVOVF9UWVBFX0FEREVEX0lOVEVSRkFDRV9CT1VORD1FcnJvcgorVFlQRV9QQVJBTUVURVJfRUxFTUVOVF9UWVBFX0NIQU5HRURfQ0xBU1NfQk9VTkQ9RXJyb3IKK1RZUEVfUEFSQU1FVEVSX0VMRU1FTlRfVFlQRV9DSEFOR0VEX0lOVEVSRkFDRV9CT1VORD1FcnJvcgorVFlQRV9QQVJBTUVURVJfRUxFTUVOVF9UWVBFX1JFTU9WRURfQ0xBU1NfQk9VTkQ9RXJyb3IKK1RZUEVfUEFSQU1FVEVSX0VMRU1FTlRfVFlQRV9SRU1PVkVEX0lOVEVSRkFDRV9CT1VORD1FcnJvcgorVU5VU0VEX1BST0JMRU1fRklMVEVSUz1XYXJuaW5nCithdXRvbWF0aWNhbGx5X3JlbW92ZWRfdW51c2VkX3Byb2JsZW1fZmlsdGVycz1mYWxzZQorY2hhbmdlZF9leGVjdXRpb25fZW52PUVycm9yCitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQoraW5jb21wYXRpYmxlX2FwaV9jb21wb25lbnRfdmVyc2lvbj1FcnJvcgoraW5jb21wYXRpYmxlX2FwaV9jb21wb25lbnRfdmVyc2lvbl9pbmNsdWRlX21ham9yX3dpdGhvdXRfYnJlYWtpbmdfY2hhbmdlPURpc2FibGVkCitpbmNvbXBhdGlibGVfYXBpX2NvbXBvbmVudF92ZXJzaW9uX2luY2x1ZGVfbWlub3Jfd2l0aG91dF9hcGlfY2hhbmdlPURpc2FibGVkCitpbmNvbXBhdGlibGVfYXBpX2NvbXBvbmVudF92ZXJzaW9uX3JlcG9ydF9tYWpvcl93aXRob3V0X2JyZWFraW5nX2NoYW5nZT1XYXJuaW5nCitpbmNvbXBhdGlibGVfYXBpX2NvbXBvbmVudF92ZXJzaW9uX3JlcG9ydF9taW5vcl93aXRob3V0X2FwaV9jaGFuZ2U9SWdub3JlCitpbnZhbGlkX3NpbmNlX3RhZ192ZXJzaW9uPUVycm9yCittYWxmb3JtZWRfc2luY2VfdGFnPUVycm9yCittaXNzaW5nX3NpbmNlX3RhZz1FcnJvcgorcmVwb3J0X2FwaV9icmVha2FnZV93aGVuX21ham9yX3ZlcnNpb25faW5jcmVtZW50ZWQ9RGlzYWJsZWQKK3JlcG9ydF9yZXNvbHV0aW9uX2Vycm9yc19hcGlfY29tcG9uZW50PVdhcm5pbmcKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UucGRlLmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLnBkZS5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgyNzkzZjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLnBkZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsMyBAQAorI1RodSBKYW4gMTQgMTQ6MzQ6MzIgQ1NUIDIwMTAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCityZXNvbHZlLnJlcXVpcmVidW5kbGU9ZmFsc2UKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9CVUlMRCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9CVUlMRApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYzhjZjgzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L0JVSUxECkBAIC0wLDAgKzEsMjIgQEAKK2xvYWQoIkBydWxlc19qYXZhLy9qYXZhOmRlZnMuYnpsIiwgImphdmFfbGlicmFyeSIpCisKK3BhY2thZ2UoZGVmYXVsdF92aXNpYmlsaXR5ID0gWyIvL3Zpc2liaWxpdHk6cHVibGljIl0pCisKK1NSQ1MgPSBnbG9iKFsic3JjLyoqLyouamF2YSJdKQorCitSRVNPVVJDRVMgPSBnbG9iKFsicmVzb3VyY2VzLyoqIl0pCisKK2phdmFfbGlicmFyeSgKKyAgICBuYW1lID0gInNzaC1hcGFjaGUtYWdlbnQiLAorICAgIHNyY3MgPSBTUkNTLAorICAgIHJlc291cmNlX3N0cmlwX3ByZWZpeCA9ICJvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvcmVzb3VyY2VzIiwKKyAgICByZXNvdXJjZXMgPSBSRVNPVVJDRVMsCisgICAgZGVwcyA9IFsKKyAgICAgICAgIi8vbGliOmpuYSIsCisgICAgICAgICIvL2xpYjpqbmEtcGxhdGZvcm0iLAorICAgICAgICAiLy9saWI6c2xmNGotYXBpIiwKKyAgICAgICAgIi8vbGliOnNzaGQtb3NnaSIsCisgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQ6amdpdCIsCisgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZTpzc2gtYXBhY2hlIgorICAgIF0sCispCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvTUVUQS1JTkYvTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2ZkMGY1MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDE2IEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK0J1bmRsZS1NYW5pZmVzdFZlcnNpb246IDIKK0J1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKK0J1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudDtzaW5nbGV0b246PXRydWUKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0J1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCitGcmFnbWVudC1Ib3N0OiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGU7YnVuZGxlLXZlcnNpb249Ils2LjAuMSw2LjEuMCkiCitCdW5kbGUtQWN0aXZhdGlvblBvbGljeTogbGF6eQorQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKK0ltcG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIgorUmVxdWlyZS1CdW5kbGU6IGNvbS5zdW4uam5hO2J1bmRsZS12ZXJzaW9uPSJbNS44LjAsNi4wLjApIiwKKyBjb20uc3VuLmpuYS5wbGF0Zm9ybTtidW5kbGUtdmVyc2lvbj0iWzUuOC4wLDYuMC4wKSIKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmFnZW50LmNvbm5lY3Rvcjt2ZXJzaW9uPSI2LjAuMSI7eC1pbnRlcm5hbDo9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODA4ZGU1MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTAsMCArMSw3IEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK0J1bmRsZS1NYW5pZmVzdFZlcnNpb246IDIKK0J1bmRsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQgLSBTb3VyY2VzCitCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQuc291cmNlCitCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQ7dmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIjtyb290cz0iLiIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9hYm91dC5odG1sIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L2Fib3V0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjk3MWFmMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9hYm91dC5odG1sCkBAIC0wLDAgKzEsOTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IklTTy04ODU5LTEiID8+Cis8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisKKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSIgLz4KKzx0aXRsZT5FY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIC0gVmVyc2lvbiAxLjA8L3RpdGxlPgorPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKyAgYm9keSB7CisgICAgc2l6ZTogOC41aW4gMTEuMGluOworICAgIG1hcmdpbjogMC4yNWluIDAuNWluIDAuMjVpbiAwLjVpbjsKKyAgICB0YWItaW50ZXJ2YWw6IDAuNWluOworICAgIH0KKyAgcCB7ICAJCisgICAgbWFyZ2luLWxlZnQ6IGF1dG87CisgICAgbWFyZ2luLXRvcDogIDAuNWVtOworICAgIG1hcmdpbi1ib3R0b206IDAuNWVtOworICAgIH0KKyAgcC5saXN0IHsKKyAgCW1hcmdpbi1sZWZ0OiAwLjVpbjsKKyAgICBtYXJnaW4tdG9wOiAgMC4wNWVtOworICAgIG1hcmdpbi1ib3R0b206IDAuMDVlbTsKKyAgICB9CisgIC51YmMtbmFtZSB7CisgICAgbWFyZ2luLWxlZnQ6IDAuNWluOworICAgIHdoaXRlLXNwYWNlOiBwcmU7CisgIH0KKyAgPC9zdHlsZT4KKworPC9oZWFkPgorCis8Ym9keSBsYW5nPSJFTi1VUyI+CisKKzxwPjxiPkVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2UgLSB2IDEuMDwvYj48L3A+CisKKzxwPkNvcHlyaWdodCAoYykgMjAwNywgRWNsaXBzZSBGb3VuZGF0aW9uLCBJbmMuIGFuZCBpdHMgbGljZW5zb3JzLiA8L3A+CisKKzxwPkFsbCByaWdodHMgcmVzZXJ2ZWQuPC9wPgorPHA+UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwgCisJYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorPHVsPjxsaT5SZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIAorCXRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIDwvbGk+Cis8bGk+UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCAKKwl0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIAorCWFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiA8L2xpPgorPGxpPk5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIEVjbGlwc2UgRm91bmRhdGlvbiwgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cyAKKwljb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSAKKwl0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiA8L2xpPjwvdWw+Cis8L3A+Cis8cD5USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgCitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIAorSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCAKK0lORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgCitOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIAorUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIAorV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSAKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIAorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuPC9wPgorCis8aHI+Cis8cD48Yj5TSEEtMSBVYmNDaGVjayAtIE1JVDwvYj48L3A+CisKKzxwPkNvcHlyaWdodCAoYykgMjAxNzo8L3A+Cis8ZGl2IGNsYXNzPSJ1YmMtbmFtZSI+CitNYXJjIFN0ZXZlbnMKK0NyeXB0b2xvZ3kgR3JvdXAKK0NlbnRydW0gV2lza3VuZGUgJiBJbmZvcm1hdGljYQorUC5PLiBCb3ggOTQwNzksIDEwOTAgR0IgQW1zdGVyZGFtLCBOZXRoZXJsYW5kcworbWFyY0BtYXJjLXN0ZXZlbnMubmwKKzwvZGl2PgorPGRpdiBjbGFzcz0idWJjLW5hbWUiPgorRGFuIFNodW1vdworTWljcm9zb2Z0IFJlc2VhcmNoCitkYW5zaHVAbWljcm9zb2Z0LmNvbQorPC9kaXY+Cis8cD5QZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CitvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAoraW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwordG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAorY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCitmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorPC9wPgorPHVsPjxsaT5UaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZAoraW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuPC9saT48L3VsPgorPHA+VEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKK0lNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAorRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCitBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCitMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLAorT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKK1NPRlRXQVJFLjwvcD4KKworPC9ib2R5PgorCis8L2h0bWw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvYnVpbGQucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9idWlsZC5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxNDgyNzEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvYnVpbGQucHJvcGVydGllcwpAQCAtMCwwICsxLDcgQEAKK3NvdXJjZS4uID0gc3JjLyxcCisgICAgICAgICAgIHJlc291cmNlcy8KK291dHB1dC4uID0gYmluLworYmluLmluY2x1ZGVzID0gTUVUQS1JTkYvLFwKKyAgICAgICAgICAgICAgIC4sXAorICAgICAgICAgICAgICAgcGx1Z2luLnByb3BlcnRpZXMsXAorICAgICAgICAgICAgICAgYWJvdXQuaHRtbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3BsdWdpbi5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3BsdWdpbi5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2ZGY4ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvcGx1Z2luLnByb3BlcnRpZXMKQEAgLTAsMCArMSwyIEBACitCdW5kbGUtTmFtZT1KR2l0IFVuaXggU1NIIGFnZW50IGNsaWVudCBmb3IgQXBhY2hlIE1JTkEgc3NoZAorQnVuZGxlLVZlbmRvcj1FY2xpcHNlIEpHaXQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3BvbS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWJkM2ZhZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9wb20ueG1sCkBAIC0wLDAgKzEsMjI3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPCEtLQorICBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisKKyAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKKyAgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorCisgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKy0tPgorCis8cHJvamVjdCB4bWxucz0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIgorICAgIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiCisgICAgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vbWF2ZW4uYXBhY2hlLm9yZy9QT00vNC4wLjAgaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvbWF2ZW4tdjRfMF8wLnhzZCI+CisgIDxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKworICA8cGFyZW50PgorICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CisgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CisgIDwvcGFyZW50PgorCisgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudDwvYXJ0aWZhY3RJZD4KKyAgPG5hbWU+SkdpdCAtIEFwYWNoZSBzc2hkIFNTSCBhZ2VudCBzdXBwb3J0PC9uYW1lPgorCisgIDxkZXNjcmlwdGlvbj4KKyAgICBTdXBwb3J0IGZvciBzc2gtYWdlbnQgZm9yIHRoZSBBcGFjaGUgTUlOQSBzc2hkIFNTSCBjb25uZWN0b3IKKyAgPC9kZXNjcmlwdGlvbj4KKworICA8cHJvcGVydGllcz4KKyAgICA8am5hLXZlcnNpb24+NS44LjA8L2puYS12ZXJzaW9uPgorICAgIDx0cmFuc2xhdGUtcXVhbGlmaWVyLz4KKyAgICA8c291cmNlLWJ1bmRsZS1tYW5pZmVzdD4ke3Byb2plY3QuYnVpbGQuZGlyZWN0b3J5fS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUY8L3NvdXJjZS1idW5kbGUtbWFuaWZlc3Q+CisgIDwvcHJvcGVydGllcz4KKworICA8ZGVwZW5kZW5jaWVzPgorICAgIDxkZXBlbmRlbmN5PgorICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KKyAgICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQ8L2FydGlmYWN0SWQ+CisgICAgICA8dmVyc2lvbj4ke3Byb2plY3QudmVyc2lvbn08L3ZlcnNpb24+CisgICAgPC9kZXBlbmRlbmN5PgorCisgICAgPGRlcGVuZGVuY3k+CisgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgorICAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlPC9hcnRpZmFjdElkPgorICAgICAgPHZlcnNpb24+JHtwcm9qZWN0LnZlcnNpb259PC92ZXJzaW9uPgorICAgIDwvZGVwZW5kZW5jeT4KKworICAgIDxkZXBlbmRlbmN5PgorICAgICAgPGdyb3VwSWQ+bmV0LmphdmEuZGV2LmpuYTwvZ3JvdXBJZD4KKyAgICAgIDxhcnRpZmFjdElkPmpuYTwvYXJ0aWZhY3RJZD4KKyAgICAgIDx2ZXJzaW9uPiR7am5hLXZlcnNpb259PC92ZXJzaW9uPgorICAgIDwvZGVwZW5kZW5jeT4KKworICAgIDxkZXBlbmRlbmN5PgorICAgICAgPGdyb3VwSWQ+bmV0LmphdmEuZGV2LmpuYTwvZ3JvdXBJZD4KKyAgICAgIDxhcnRpZmFjdElkPmpuYS1wbGF0Zm9ybTwvYXJ0aWZhY3RJZD4KKyAgICAgIDx2ZXJzaW9uPiR7am5hLXZlcnNpb259PC92ZXJzaW9uPgorICAgIDwvZGVwZW5kZW5jeT4KKworICAgIDxkZXBlbmRlbmN5PgorICAgICAgPGdyb3VwSWQ+b3JnLnNsZjRqPC9ncm91cElkPgorICAgICAgPGFydGlmYWN0SWQ+c2xmNGotYXBpPC9hcnRpZmFjdElkPgorICAgIDwvZGVwZW5kZW5jeT4KKyAgPC9kZXBlbmRlbmNpZXM+CisKKyAgPGJ1aWxkPgorICAgIDxzb3VyY2VEaXJlY3Rvcnk+c3JjLzwvc291cmNlRGlyZWN0b3J5PgorCisgICAgPHJlc291cmNlcz4KKyAgICAgIDxyZXNvdXJjZT4KKyAgICAgICAgPGRpcmVjdG9yeT4uPC9kaXJlY3Rvcnk+CisgICAgICAgIDxpbmNsdWRlcz4KKyAgICAgICAgICA8aW5jbHVkZT5wbHVnaW4ucHJvcGVydGllczwvaW5jbHVkZT4KKyAgICAgICAgICA8aW5jbHVkZT5hYm91dC5odG1sPC9pbmNsdWRlPgorICAgICAgICA8L2luY2x1ZGVzPgorICAgICAgPC9yZXNvdXJjZT4KKyAgICAgIDxyZXNvdXJjZT4KKyAgICAgICAgPGRpcmVjdG9yeT5yZXNvdXJjZXMvPC9kaXJlY3Rvcnk+CisgICAgICA8L3Jlc291cmNlPgorICAgIDwvcmVzb3VyY2VzPgorCisgICAgPHBsdWdpbnM+CisgICAgICA8cGx1Z2luPgorICAgICAgICA8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisgICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLWFudHJ1bi1wbHVnaW48L2FydGlmYWN0SWQ+CisgICAgICAgIDxleGVjdXRpb25zPgorICAgICAgICAgIDxleGVjdXRpb24+CisgICAgICAgICAgICA8aWQ+dHJhbnNsYXRlLXNvdXJjZS1xdWFsaWZpZXI8L2lkPgorICAgICAgICAgICAgPHBoYXNlPmdlbmVyYXRlLXJlc291cmNlczwvcGhhc2U+CisgICAgICAgICAgICA8Y29uZmlndXJhdGlvbj4KKyAgICAgICAgICAgICAgPHRhcmdldD4KKyAgICAgICAgICAgICAgICA8Y29weSBmaWxlPSJNRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYiIHRvZmlsZT0iJHtzb3VyY2UtYnVuZGxlLW1hbmlmZXN0fSIgb3ZlcndyaXRlPSJ0cnVlIiAvPgorICAgICAgICAgICAgICAgIDxyZXBsYWNlIGZpbGU9IiR7c291cmNlLWJ1bmRsZS1tYW5pZmVzdH0iPgorICAgICAgICAgICAgICAgICAgPHJlcGxhY2VmaWx0ZXIgdG9rZW49Ii5xdWFsaWZpZXIiIHZhbHVlPSIuJHttYXZlbi5idWlsZC50aW1lc3RhbXB9IiAvPgorICAgICAgICAgICAgICAgIDwvcmVwbGFjZT4KKyAgICAgICAgICAgICAgPC90YXJnZXQ+CisgICAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CisgICAgICAgICAgICA8Z29hbHM+CisgICAgICAgICAgICAgIDxnb2FsPnJ1bjwvZ29hbD4KKyAgICAgICAgICAgIDwvZ29hbHM+CisgICAgICAgICAgPC9leGVjdXRpb24+CisgICAgICAgIDwvZXhlY3V0aW9ucz4KKyAgICAgIDwvcGx1Z2luPgorCisgICAgICA8cGx1Z2luPgorICAgICAgICA8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisgICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLXNvdXJjZS1wbHVnaW48L2FydGlmYWN0SWQ+CisgICAgICAgIDxpbmhlcml0ZWQ+dHJ1ZTwvaW5oZXJpdGVkPgorICAgICAgICA8ZXhlY3V0aW9ucz4KKyAgICAgICAgICA8ZXhlY3V0aW9uPgorICAgICAgICAgICAgPGlkPmF0dGFjaC1zb3VyY2VzPC9pZD4KKyAgICAgICAgICAgIDxwaGFzZT5wcm9jZXNzLWNsYXNzZXM8L3BoYXNlPgorICAgICAgICAgICAgPGdvYWxzPgorICAgICAgICAgICAgICA8Z29hbD5qYXI8L2dvYWw+CisgICAgICAgICAgICA8L2dvYWxzPgorICAgICAgICAgICAgPGNvbmZpZ3VyYXRpb24+CisgICAgICAgICAgICAgIDxhcmNoaXZlPgorICAgICAgICAgICAgICAgIDxtYW5pZmVzdEZpbGU+JHtzb3VyY2UtYnVuZGxlLW1hbmlmZXN0fTwvbWFuaWZlc3RGaWxlPgorICAgICAgICAgICAgICA8L2FyY2hpdmU+CisgICAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CisgICAgICAgICAgPC9leGVjdXRpb24+CisgICAgICAgIDwvZXhlY3V0aW9ucz4KKyAgICAgIDwvcGx1Z2luPgorCisgICAgICA8cGx1Z2luPgorICAgICAgICA8YXJ0aWZhY3RJZD5tYXZlbi1qYXItcGx1Z2luPC9hcnRpZmFjdElkPgorICAgICAgICA8Y29uZmlndXJhdGlvbj4KKyAgICAgICAgICA8YXJjaGl2ZT4KKyAgICAgICAgICAgIDxtYW5pZmVzdEZpbGU+JHtidW5kbGUtbWFuaWZlc3R9PC9tYW5pZmVzdEZpbGU+CisgICAgICAgICAgPC9hcmNoaXZlPgorICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CisgICAgICA8L3BsdWdpbj4KKworICAgICAgPCEtLSBOZXcgaW4gNi4wOyB1bmNvbW1lbnQgaW4gNi4xCisgICAgICA8cGx1Z2luPgorICAgICAgICAgIDxncm91cElkPmNvbS5naXRodWIuc2lvbTc5LmphcGljbXA8L2dyb3VwSWQ+CisgICAgICAgICAgPGFydGlmYWN0SWQ+amFwaWNtcC1tYXZlbi1wbHVnaW48L2FydGlmYWN0SWQ+CisgICAgICAgICAgPHZlcnNpb24+JHtqYXBpY21wLXZlcnNpb259PC92ZXJzaW9uPgorICAgICAgICAgIDxjb25maWd1cmF0aW9uPgorICAgICAgICAgICAgICA8b2xkVmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDxkZXBlbmRlbmN5PgorICAgICAgICAgICAgICAgICAgICAgIDxncm91cElkPiR7cHJvamVjdC5ncm91cElkfTwvZ3JvdXBJZD4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJ0aWZhY3RJZD4ke3Byb2plY3QuYXJ0aWZhY3RJZH08L2FydGlmYWN0SWQ+CisgICAgICAgICAgICAgICAgICAgICAgPHZlcnNpb24+JHtqZ2l0LWxhc3QtcmVsZWFzZS12ZXJzaW9ufTwvdmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDwvZGVwZW5kZW5jeT4KKyAgICAgICAgICAgICAgPC9vbGRWZXJzaW9uPgorICAgICAgICAgICAgICA8bmV3VmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDxmaWxlPgorICAgICAgICAgICAgICAgICAgICAgIDxwYXRoPiR7cHJvamVjdC5idWlsZC5kaXJlY3Rvcnl9LyR7cHJvamVjdC5hcnRpZmFjdElkfS0ke3Byb2plY3QudmVyc2lvbn0uamFyPC9wYXRoPgorICAgICAgICAgICAgICAgICAgPC9maWxlPgorICAgICAgICAgICAgICA8L25ld1ZlcnNpb24+CisgICAgICAgICAgICAgIDxwYXJhbWV0ZXI+CisgICAgICAgICAgICAgICAgICA8b25seU1vZGlmaWVkPnRydWU8L29ubHlNb2RpZmllZD4KKyAgICAgICAgICAgICAgICAgIDxpbmNsdWRlcz4KKyAgICAgICAgICAgICAgICAgICAgICA8aW5jbHVkZT5vcmcuZWNsaXBzZS5qZ2l0Lio8L2luY2x1ZGU+CisgICAgICAgICAgICAgICAgICA8L2luY2x1ZGVzPgorICAgICAgICAgICAgICAgICAgPGFjY2Vzc01vZGlmaWVyPnB1YmxpYzwvYWNjZXNzTW9kaWZpZXI+CisgICAgICAgICAgICAgICAgICA8YnJlYWtCdWlsZE9uTW9kaWZpY2F0aW9ucz5mYWxzZTwvYnJlYWtCdWlsZE9uTW9kaWZpY2F0aW9ucz4KKyAgICAgICAgICAgICAgICAgIDxicmVha0J1aWxkT25CaW5hcnlJbmNvbXBhdGlibGVNb2RpZmljYXRpb25zPmZhbHNlPC9icmVha0J1aWxkT25CaW5hcnlJbmNvbXBhdGlibGVNb2RpZmljYXRpb25zPgorICAgICAgICAgICAgICAgICAgPG9ubHlCaW5hcnlJbmNvbXBhdGlibGU+ZmFsc2U8L29ubHlCaW5hcnlJbmNvbXBhdGlibGU+CisgICAgICAgICAgICAgICAgICA8aW5jbHVkZVN5bnRoZXRpYz5mYWxzZTwvaW5jbHVkZVN5bnRoZXRpYz4KKyAgICAgICAgICAgICAgICAgIDxpZ25vcmVNaXNzaW5nQ2xhc3Nlcz5mYWxzZTwvaWdub3JlTWlzc2luZ0NsYXNzZXM+CisgICAgICAgICAgICAgICAgICA8c2tpcFBvbU1vZHVsZXM+dHJ1ZTwvc2tpcFBvbU1vZHVsZXM+CisgICAgICAgICAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgICAgICAgICA8c2tpcD5mYWxzZTwvc2tpcD4KKyAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CisgICAgICAgICAgPGV4ZWN1dGlvbnM+CisgICAgICAgICAgICA8ZXhlY3V0aW9uPgorICAgICAgICAgICAgIDxwaGFzZT52ZXJpZnk8L3BoYXNlPgorICAgICAgICAgICAgIDxnb2Fscz4KKyAgICAgICAgICAgICAgIDxnb2FsPmNtcDwvZ29hbD4KKyAgICAgICAgICAgICA8L2dvYWxzPgorICAgICAgICAgIDwvZXhlY3V0aW9uPgorICAgICAgICA8L2V4ZWN1dGlvbnM+CisgICAgICA8L3BsdWdpbj4KKyAgICAgIC0tPgorICAgIDwvcGx1Z2lucz4KKyAgPC9idWlsZD4KKworICA8IS0tIE5ldyBpbiA2LjAsIHVuY29tbWVudCBpbiA2LjEKKyAgPHJlcG9ydGluZz4KKyAgICA8cGx1Z2lucz4KKyAgICAgIDxwbHVnaW4+CisgICAgICAgICAgPGdyb3VwSWQ+Y29tLmdpdGh1Yi5zaW9tNzkuamFwaWNtcDwvZ3JvdXBJZD4KKyAgICAgICAgICA8YXJ0aWZhY3RJZD5qYXBpY21wLW1hdmVuLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKyAgICAgICAgICA8dmVyc2lvbj4ke2phcGljbXAtdmVyc2lvbn08L3ZlcnNpb24+CisgICAgICAgICAgPHJlcG9ydFNldHM+CisgICAgICAgICAgICAgIDxyZXBvcnRTZXQ+CisgICAgICAgICAgICAgICAgICA8cmVwb3J0cz4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVwb3J0PmNtcC1yZXBvcnQ8L3JlcG9ydD4KKyAgICAgICAgICAgICAgICAgIDwvcmVwb3J0cz4KKyAgICAgICAgICAgICAgPC9yZXBvcnRTZXQ+CisgICAgICAgICAgPC9yZXBvcnRTZXRzPgorICAgICAgICAgIDxjb25maWd1cmF0aW9uPgorICAgICAgICAgICAgICA8b2xkVmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDxkZXBlbmRlbmN5PgorICAgICAgICAgICAgICAgICAgICAgIDxncm91cElkPiR7cHJvamVjdC5ncm91cElkfTwvZ3JvdXBJZD4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJ0aWZhY3RJZD4ke3Byb2plY3QuYXJ0aWZhY3RJZH08L2FydGlmYWN0SWQ+CisgICAgICAgICAgICAgICAgICAgICAgPHZlcnNpb24+JHtqZ2l0LWxhc3QtcmVsZWFzZS12ZXJzaW9ufTwvdmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDwvZGVwZW5kZW5jeT4KKyAgICAgICAgICAgICAgPC9vbGRWZXJzaW9uPgorICAgICAgICAgICAgICA8bmV3VmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDxmaWxlPgorICAgICAgICAgICAgICAgICAgICAgIDxwYXRoPiR7cHJvamVjdC5idWlsZC5kaXJlY3Rvcnl9LyR7cHJvamVjdC5hcnRpZmFjdElkfS0ke3Byb2plY3QudmVyc2lvbn0uamFyPC9wYXRoPgorICAgICAgICAgICAgICAgICAgPC9maWxlPgorICAgICAgICAgICAgICA8L25ld1ZlcnNpb24+CisgICAgICAgICAgICAgIDxwYXJhbWV0ZXI+CisgICAgICAgICAgICAgICAgICA8b25seU1vZGlmaWVkPnRydWU8L29ubHlNb2RpZmllZD4KKyAgICAgICAgICAgICAgICAgIDxpbmNsdWRlcz4KKyAgICAgICAgICAgICAgICAgICAgICA8aW5jbHVkZT5vcmcuZWNsaXBzZS5qZ2l0Lio8L2luY2x1ZGU+CisgICAgICAgICAgICAgICAgICA8L2luY2x1ZGVzPgorICAgICAgICAgICAgICAgICAgPGFjY2Vzc01vZGlmaWVyPnB1YmxpYzwvYWNjZXNzTW9kaWZpZXI+CisgICAgICAgICAgICAgICAgICA8YnJlYWtCdWlsZE9uTW9kaWZpY2F0aW9ucz5mYWxzZTwvYnJlYWtCdWlsZE9uTW9kaWZpY2F0aW9ucz4KKyAgICAgICAgICAgICAgICAgIDxicmVha0J1aWxkT25CaW5hcnlJbmNvbXBhdGlibGVNb2RpZmljYXRpb25zPmZhbHNlPC9icmVha0J1aWxkT25CaW5hcnlJbmNvbXBhdGlibGVNb2RpZmljYXRpb25zPgorICAgICAgICAgICAgICAgICAgPG9ubHlCaW5hcnlJbmNvbXBhdGlibGU+ZmFsc2U8L29ubHlCaW5hcnlJbmNvbXBhdGlibGU+CisgICAgICAgICAgICAgICAgICA8aW5jbHVkZVN5bnRoZXRpYz5mYWxzZTwvaW5jbHVkZVN5bnRoZXRpYz4KKyAgICAgICAgICAgICAgICAgIDxpZ25vcmVNaXNzaW5nQ2xhc3Nlcz5mYWxzZTwvaWdub3JlTWlzc2luZ0NsYXNzZXM+CisgICAgICAgICAgICAgICAgICA8c2tpcFBvbU1vZHVsZXM+dHJ1ZTwvc2tpcFBvbU1vZHVsZXM+CisgICAgICAgICAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgICAgICAgICA8c2tpcD5mYWxzZTwvc2tpcD4KKyAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CisgICAgICA8L3BsdWdpbj4KKyAgICA8L3BsdWdpbnM+CisgIDwvcmVwb3J0aW5nPgorICAtLT4KKzwvcHJvamVjdD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9yZXNvdXJjZXMvTUVUQS1JTkYvc2VydmljZXMvb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5IGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3Jlc291cmNlcy9NRVRBLUlORi9zZXJ2aWNlcy9vcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLmFnZW50LkNvbm5lY3RvckZhY3RvcnkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTM4ODg4YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9yZXNvdXJjZXMvTUVUQS1JTkYvc2VydmljZXMvb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5CkBAIC0wLDAgKzEgQEAKK29yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yLkZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9yZXNvdXJjZXMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVGV4dHMucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9yZXNvdXJjZXMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVGV4dHMucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZmNlMDgzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3Jlc291cmNlcy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9UZXh0cy5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsMTcgQEAKK2VyckNsb3NlTWFwcGVkRmlsZT1DYW5ub3QgY2xvc2UgbWFwcGVkIGZpbGU6IHswfSAtIHsxfQorZXJyTGFzdEVycm9yPVN5c3RlbSBtZXNzYWdlIGZvciBlcnJvciB7MH0gY291bGQgbm90IGJlIHJldHJpZXZlZCwgZ290IHsxfQorZXJyUmVsZWFzZVNoYXJlZE1lbW9yeT1DYW5ub3QgcmVsZWFzZSBzaGFyZWQgbWVtb3J5OiB7MH0gLSB7MX0KK2VyclVua25vd249dW5rbm93biBlcnJvcgorbG9nRXJyb3JMb2FkTGlicmFyeT1DYW5ub3QgbG9hZCBzb2NrZXQgbGlicmFyeTsgU1NIIGFnZW50IHN1cHBvcnQgaXMgc3dpdGNoZWQgb2ZmCittc2dDbG9zZUZhaWxlZD1DYW5ub3QgY2xvc2UgU1NIIGFnZW50IHNvY2tldCB7MH0KK21zZ0Nvbm5lY3RGYWlsZWQ9Q291bGQgbm90IGNvbm5lY3QgdG8gU1NIIGFnZW50IHZpYSBzb2NrZXQgJyd7MH0nJworbXNnTm9NYXBwZWRGaWxlPUNvdWxkIG5vdCBjcmVhdGUgZmlsZSBtYXBwaW5nOiB7MH0gLSB7MX0KK21zZ05vU2hhcmVkTWVtb3J5PUNvdWxkIG5vdCBpbml0aWFsaXplIHNoYXJlZCBtZW1vcnk6IHswfSAtIHsxfQorbXNnUGFnZWFudFVuYXZhaWxhYmxlPUNvdWxkIG5vdCBjb25uZWN0IHRvIFBhZ2VhbnQKK21zZ1JlYWRGYWlsZWQ9UmVhZGluZyB7MH0gYnl0ZXMgZnJvbSB0aGUgU1NIIGFnZW50IGZhaWxlZAorbXNnU2VuZEZhaWxlZD1TZW5kaW5nIHswfSBieXRlcyB0byBTU0ggYWdlbnQgZmFpbGVkOyB7MH0gYnl0ZXMgbm90IHdyaXR0ZW4KK21zZ1NlbmRGYWlsZWQyPVNlbmRpbmcgezB9IGJ5dGVzIHRvIFNTSCBhZ2VudCBmYWlsZWQ6IHsxfSAtIHsyfQorbXNnU2hhcmVkTWVtb3J5RmFpbGVkPUNvdWxkIG5vdCBzZXQgdXAgc2hhcmVkIG1lbW9yeSBmb3IgY29tbXVuaWNhdGluZyB3aXRoIFBhZ2VhbnQKK21zZ1Nob3J0UmVhZD1TaG9ydCByZWFkIGZyb20gU1NIIGFnZW50LCBleHBlY3RlZCB7MH2gYnl0ZXMsIGdvdCB7MX0gYnl0ZXM7IGxhc3QgcmVhZCgpIHJldHVybmVkIHsyfQorcGFnZWFudD1QYWdlYW50Cit1bml4RGVmYXVsdEFnZW50PXNzaC1hZ2VudApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9GYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL0ZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzQwOWIwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9GYWN0b3J5LmphdmEKQEAgLTAsMCArMSw2OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSwgVGhvbWFzIFdvbGYgPHRob21hcy53b2xmQHBhcmFub3IuY2g+IGFuZCBvdGhlcnMKKyAqCisgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKKyAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9kb2N1bWVudHMvZWRsLXYxMC5waHAuCisgKgorICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yOworCitpbXBvcnQgamF2YS5pby5GaWxlOworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CisKKy8qKgorICogQW4ge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9IGZvciBjb25uZWN0aW5nIHRvIGFuIE9wZW5TU0ggU1NIIGFnZW50LgorICovCitwdWJsaWMgY2xhc3MgRmFjdG9yeSBpbXBsZW1lbnRzIENvbm5lY3RvckZhY3RvcnkgeworCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIE5BTUUgPSAiamdpdC1idWlsdGluIjsgLy8kTk9OLU5MUy0xJAorCisJQE92ZXJyaWRlCisJcHVibGljIENvbm5lY3RvciBjcmVhdGUoU3RyaW5nIGlkZW50aXR5QWdlbnQsIEZpbGUgaG9tZURpcikKKwkJCXRocm93cyBJT0V4Y2VwdGlvbiB7CisJCWlmIChTeXN0ZW1SZWFkZXIuZ2V0SW5zdGFuY2UoKS5pc1dpbmRvd3MoKSkgeworCQkJcmV0dXJuIG5ldyBQYWdlYW50Q29ubmVjdG9yKCk7CisJCX0KKwkJcmV0dXJuIG5ldyBVbml4RG9tYWluU29ja2V0Q29ubmVjdG9yKGlkZW50aXR5QWdlbnQpOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzU3VwcG9ydGVkKCkgeworCQlyZXR1cm4gdHJ1ZTsKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIGdldE5hbWUoKSB7CisJCXJldHVybiBOQU1FOworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKiA8cD4KKwkgKiBUaGlzIGZhY3RvcnkgcmV0dXJucyBvbiBXaW5kb3dzIGEKKwkgKiB7QGxpbmsgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5LkNvbm5lY3RvckRlc2NyaXB0b3IKKwkgKiBDb25uZWN0b3JEZXNjcmlwdG9yfSBmb3IgdGhlIGludGVybmFsIG5hbWUgInBhZ2VhbnQiOyBvbiBVbml4IG9uZSBmb3IKKwkgKiAiU1NIX0FVVEhfU09DSyIuCisJICogPC9wPgorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBDb2xsZWN0aW9uPENvbm5lY3RvckRlc2NyaXB0b3I+IGdldFN1cHBvcnRlZENvbm5lY3RvcnMoKSB7CisJCXJldHVybiBDb2xsZWN0aW9ucy5zaW5nbGV0b24oZ2V0RGVmYXVsdENvbm5lY3RvcigpKTsKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgQ29ubmVjdG9yRGVzY3JpcHRvciBnZXREZWZhdWx0Q29ubmVjdG9yKCkgeworCQlpZiAoU3lzdGVtUmVhZGVyLmdldEluc3RhbmNlKCkuaXNXaW5kb3dzKCkpIHsKKwkJCXJldHVybiBQYWdlYW50Q29ubmVjdG9yLkRFU0NSSVBUT1I7CisJCX0KKwkJcmV0dXJuIFVuaXhEb21haW5Tb2NrZXRDb25uZWN0b3IuREVTQ1JJUFRPUjsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL0xpYnJhcnlIb2xkZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvTGlicmFyeUhvbGRlci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIwOWI1NWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL0xpYnJhcnlIb2xkZXIuamF2YQpAQCAtMCwwICsxLDcyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxLCBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudC5jb25uZWN0b3I7CisKK2ltcG9ydCBqYXZhLnRleHQuTWVzc2FnZUZvcm1hdDsKKworaW1wb3J0IGNvbS5zdW4uam5hLkxhc3RFcnJvckV4Y2VwdGlvbjsKK2ltcG9ydCBjb20uc3VuLmpuYS5wbGF0Zm9ybS53aW4zMi5LZXJuZWwzMjsKK2ltcG9ydCBjb20uc3VuLmpuYS5wbGF0Zm9ybS53aW4zMi5LZXJuZWwzMlV0aWw7CitpbXBvcnQgY29tLnN1bi5qbmEucGxhdGZvcm0ud2luMzIuVXNlcjMyOworCitpbXBvcnQgb3JnLnNsZjRqLkxvZ2dlcjsKK2ltcG9ydCBvcmcuc2xmNGouTG9nZ2VyRmFjdG9yeTsKKworLyoqCisgKiBEZWxheSBsb2FkaW5nIHRoZSBuYXRpdmUgbGlicmFyaWVzIHVudGlsIG5lZWRlZC4KKyAqLworY2xhc3MgTGlicmFyeUhvbGRlciB7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBMb2dnZXIgTE9HID0gTG9nZ2VyRmFjdG9yeQorCQkJLmdldExvZ2dlcihMaWJyYXJ5SG9sZGVyLmNsYXNzKTsKKworCXByaXZhdGUgc3RhdGljIExpYnJhcnlIb2xkZXIgSU5TVEFOQ0U7CisKKwlwcml2YXRlIHN0YXRpYyBib29sZWFuIGxpYnJhcnlMb2FkZWQgPSBmYWxzZTsKKworCXB1YmxpYyBzdGF0aWMgc3luY2hyb25pemVkIExpYnJhcnlIb2xkZXIgZ2V0TGlicmFyeSgpIHsKKwkJaWYgKCFsaWJyYXJ5TG9hZGVkKSB7CisJCQlsaWJyYXJ5TG9hZGVkID0gdHJ1ZTsKKwkJCXRyeSB7CisJCQkJSU5TVEFOQ0UgPSBuZXcgTGlicmFyeUhvbGRlcigpOworCQkJfSBjYXRjaCAoRXhjZXB0aW9uIHwgVW5zYXRpc2ZpZWRMaW5rRXJyb3IKKwkJCQkJfCBOb0NsYXNzRGVmRm91bmRFcnJvciBlKSB7CisJCQkJTE9HLmVycm9yKFRleHRzLmdldCgpLmxvZ0Vycm9yTG9hZExpYnJhcnksIGUpOworCQkJfQorCQl9CisJCXJldHVybiBJTlNUQU5DRTsKKwl9CisKKwlVc2VyMzIgdXNlcjsKKworCUtlcm5lbDMyIGtlcm5lbDsKKworCXByaXZhdGUgTGlicmFyeUhvbGRlcigpIHsKKwkJdXNlciA9IFVzZXIzMi5JTlNUQU5DRTsKKwkJa2VybmVsID0gS2VybmVsMzIuSU5TVEFOQ0U7CisJfQorCisJU3RyaW5nIHN5c3RlbUVycm9yKFN0cmluZyBwYXR0ZXJuKSB7CisJCWludCBsYXN0RXJyb3IgPSBrZXJuZWwuR2V0TGFzdEVycm9yKCk7CisJCVN0cmluZyBtc2c7CisJCXRyeSB7CisJCQltc2cgPSBLZXJuZWwzMlV0aWwuZm9ybWF0TWVzc2FnZUZyb21MYXN0RXJyb3JDb2RlKGxhc3RFcnJvcik7CisJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CisJCQlTdHJpbmcgZXJyID0gZSBpbnN0YW5jZW9mIExhc3RFcnJvckV4Y2VwdGlvbgorCQkJCQk/IEludGVnZXIudG9TdHJpbmcoKChMYXN0RXJyb3JFeGNlcHRpb24pIGUpLmdldEVycm9yQ29kZSgpKQorCQkJCQk6IFRleHRzLmdldCgpLmVyclVua25vd247CisJCQltc2cgPSBNZXNzYWdlRm9ybWF0LmZvcm1hdChUZXh0cy5nZXQoKS5lcnJMYXN0RXJyb3IsCisJCQkJCUludGVnZXIudG9TdHJpbmcobGFzdEVycm9yKSwgZXJyKTsKKwkJCUxPRy5lcnJvcihtc2csIGUpOworCQl9CisJCXJldHVybiBNZXNzYWdlRm9ybWF0LmZvcm1hdChwYXR0ZXJuLCBJbnRlZ2VyLnRvU3RyaW5nKGxhc3RFcnJvciksIG1zZyk7CisJfQorCit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9QYWdlYW50Q29ubmVjdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1BhZ2VhbnRDb25uZWN0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMGUzYmNlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9QYWdlYW50Q29ubmVjdG9yLmphdmEKQEAgLTAsMCArMSw3MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSwgVGhvbWFzIFdvbGYgPHRob21hcy53b2xmQHBhcmFub3IuY2g+IGFuZCBvdGhlcnMKKyAqCisgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKKyAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9kb2N1bWVudHMvZWRsLXYxMC5waHAuCisgKgorICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yOworCitpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuYWdlbnQuQWJzdHJhY3RDb25uZWN0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5LkNvbm5lY3RvckRlc2NyaXB0b3I7CisKKy8qKgorICogQSBjb25uZWN0b3IgdXNpbmcgUGFnZWFudCdzIHNoYXJlZCBtZW1vcnkgSVBDIG1lY2hhbmlzbS4KKyAqLworcHVibGljIGNsYXNzIFBhZ2VhbnRDb25uZWN0b3IgZXh0ZW5kcyBBYnN0cmFjdENvbm5lY3RvciB7CisKKwkvKioKKwkgKiB7QGxpbmsgQ29ubmVjdG9yRGVzY3JpcHRvcn0gZm9yIHRoZSB7QGxpbmsgUGFnZWFudENvbm5lY3Rvcn0uCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBDb25uZWN0b3JEZXNjcmlwdG9yIERFU0NSSVBUT1IgPSBuZXcgQ29ubmVjdG9yRGVzY3JpcHRvcigpIHsKKworCQlAT3ZlcnJpZGUKKwkJcHVibGljIFN0cmluZyBnZXRJZGVudGl0eUFnZW50KCkgeworCQkJcmV0dXJuICJwYWdlYW50IjsgLy8kTk9OLU5MUy0xJAorCQl9CisKKwkJQE92ZXJyaWRlCisJCXB1YmxpYyBTdHJpbmcgZ2V0RGlzcGxheU5hbWUoKSB7CisJCQlyZXR1cm4gVGV4dHMuZ2V0KCkucGFnZWFudDsKKwkJfQorCX07CisKKwlwcml2YXRlIGZpbmFsIFBhZ2VhbnRMaWJyYXJ5IGxpYjsKKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIFBhZ2VhbnRDb25uZWN0b3J9LgorCSAqLworCXB1YmxpYyBQYWdlYW50Q29ubmVjdG9yKCkgeworCQlzdXBlcigpOyAvLyBVc2UgZGVmYXVsdCBtYXhpbXVtIG1lc3NhZ2Ugc2l6ZQorCQl0aGlzLmxpYiA9IG5ldyBQYWdlYW50TGlicmFyeSgpOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGNvbm5lY3QoKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQlyZXR1cm4gbGliLmlzUGFnZWFudEF2YWlsYWJsZSgpOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGNsb3NlKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJLy8gTm90aGluZyB0byBkbworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBieXRlW10gcnBjKGJ5dGUgY29tbWFuZCwgYnl0ZVtdIG1lc3NhZ2UpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCXRyeSAoUGFnZWFudExpYnJhcnkuUGlwZSBwaXBlID0gbGliCisJCQkJLmNyZWF0ZVBpcGUoZ2V0Q2xhc3MoKS5nZXRTaW1wbGVOYW1lKCksCisJCQkJCQlnZXRNYXhpbXVtTWVzc2FnZUxlbmd0aCgpKSkgeworCQkJcHJlcGFyZU1lc3NhZ2UoY29tbWFuZCwgbWVzc2FnZSk7CisJCQlwaXBlLnNlbmQobWVzc2FnZSk7CisJCQlieXRlW10gbGVuZ3RoQnVmID0gbmV3IGJ5dGVbNF07CisJCQlwaXBlLnJlY2VpdmUobGVuZ3RoQnVmKTsKKwkJCWludCBsZW5ndGggPSB0b0xlbmd0aChjb21tYW5kLCBsZW5ndGhCdWYpOworCQkJYnl0ZVtdIHBheWxvYWQgPSBuZXcgYnl0ZVtsZW5ndGhdOworCQkJcGlwZS5yZWNlaXZlKHBheWxvYWQpOworCQkJcmV0dXJuIHBheWxvYWQ7CisJCX0KKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1BhZ2VhbnRMaWJyYXJ5LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1BhZ2VhbnRMaWJyYXJ5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWEzMGQ4MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvUGFnZWFudExpYnJhcnkuamF2YQpAQCAtMCwwICsxLDI0MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSwgVGhvbWFzIFdvbGYgPHRob21hcy53b2xmQHBhcmFub3IuY2g+IGFuZCBvdGhlcnMKKyAqCisgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKKyAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9kb2N1bWVudHMvZWRsLXYxMC5waHAuCisgKgorICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yOworCitpbXBvcnQgamF2YS5pby5DbG9zZWFibGU7CitpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKK2ltcG9ydCBqYXZhLm5pby5jaGFyc2V0LlN0YW5kYXJkQ2hhcnNldHM7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuc2xmNGouTG9nZ2VyOworaW1wb3J0IG9yZy5zbGY0ai5Mb2dnZXJGYWN0b3J5OworCitpbXBvcnQgY29tLnN1bi5qbmEuTWVtb3J5OworaW1wb3J0IGNvbS5zdW4uam5hLlBvaW50ZXI7CitpbXBvcnQgY29tLnN1bi5qbmEuU3RydWN0dXJlOworaW1wb3J0IGNvbS5zdW4uam5hLnBsYXRmb3JtLndpbjMyLldpbkJhc2U7CitpbXBvcnQgY29tLnN1bi5qbmEucGxhdGZvcm0ud2luMzIuV2luRGVmLkhXTkQ7CitpbXBvcnQgY29tLnN1bi5qbmEucGxhdGZvcm0ud2luMzIuV2luRGVmLkxQQVJBTTsKK2ltcG9ydCBjb20uc3VuLmpuYS5wbGF0Zm9ybS53aW4zMi5XaW5EZWYuTFJFU1VMVDsKK2ltcG9ydCBjb20uc3VuLmpuYS5wbGF0Zm9ybS53aW4zMi5XaW5OVDsKK2ltcG9ydCBjb20uc3VuLmpuYS5wbGF0Zm9ybS53aW4zMi5XaW5OVC5IQU5ETEU7CitpbXBvcnQgY29tLnN1bi5qbmEucGxhdGZvcm0ud2luMzIuV2luVXNlcjsKKworLyoqCisgKiBUaGUge0BsaW5rIFBhZ2VhbnRMaWJyYXJ5fSBlbmNhcHN1bGF0ZXMgdGhlIHNoYXJlZCBtZW1vcnkgYWNjZXNzIGFuZCBwcm92aWRlcworICogYSBzaW1wbGUgcGlwZSBhYnN0cmFjdGlvbi4KKyAqLworcHVibGljIGZpbmFsIGNsYXNzIFBhZ2VhbnRMaWJyYXJ5IHsKKworCXByaXZhdGUgc3RhdGljIGZpbmFsIExvZ2dlciBMT0cgPSBMb2dnZXJGYWN0b3J5CisJCQkuZ2V0TG9nZ2VyKFBhZ2VhbnRMaWJyYXJ5LmNsYXNzKTsKKworCS8qKiBQYWdlYW50J3MgImNsYXNzIiBhbmQgIndpbmRvdyBuYW1lIi4gKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgUEFHRUFOVCA9ICJQYWdlYW50IjsgLy8kTk9OLU5MUy0xJAorCisJLyoqCisJICogTWFnaWMgY29uc3RhbnQgZnJvbSBQYWdlYW50OyBJRCBmb3IgdGhlIENvcHlTdHJ1Y3QgdXNlZCBpbiBTZW5kTWVzc2FnZS4KKwkgKgorCSAqIEBzZWUgPGEgaHJlZj0KKwkgKiAgICAgICJodHRwczovL2dpdC50YXJ0YXJ1cy5vcmcvP3A9c2ltb24vcHV0dHkuZ2l0O2E9YmxvYjtmPXdpbmRvd3MvcGFnZWFudC5jO2g9MGUyNWNjNWQ0OGYwI2wzMyI+InJhbmRvbSBnb29wIjwvYT4KKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBpbnQgUEFHRUFOVF9JRCA9IDB4ODA0ZV81MGJhOworCisJLyoqCisJICogRGV0ZXJtaW5lcyB3aGV0aGVyIFBhZ2VhbnQgaXMgY3VycmVudGx5IHJ1bm5pbmcuCisJICoKKwkgKiBAcmV0dXJuIHtAY29kZSB0cnVlfcKgaWYgUGFnZWFudCBpcyBydW5uaW5nLCB7QGNvZGUgZmFsc2V9IG90aGVyd2lzZQorCSAqLworCWJvb2xlYW4gaXNQYWdlYW50QXZhaWxhYmxlKCkgeworCQlMaWJyYXJ5SG9sZGVyIGxpYnMgPSBMaWJyYXJ5SG9sZGVyLmdldExpYnJhcnkoKTsKKwkJaWYgKGxpYnMgPT0gbnVsbCkgeworCQkJcmV0dXJuIGZhbHNlOworCQl9CisJCUhXTkQgd2luZG93ID0gbGlicy51c2VyLkZpbmRXaW5kb3coUEFHRUFOVCwgUEFHRUFOVCk7CisJCXJldHVybiB3aW5kb3cgIT0gbnVsbCAmJiAhd2luZG93LmVxdWFscyhXaW5CYXNlLklOVkFMSURfSEFORExFX1ZBTFVFKTsKKwl9CisKKwkvKioKKwkgKiBBbiBhYnN0cmFjdGlvbiBmb3IgYSBiaS1kaXJlY3Rpb25hbCBwaXBlLgorCSAqLworCWludGVyZmFjZSBQaXBlIGV4dGVuZHMgQ2xvc2VhYmxlIHsKKworCQkvKioKKwkJICogU2VuZCB0aGUgZ2l2ZW4gbWVzc2FnZS4KKwkJICoKKwkJICogQHBhcmFtIG1lc3NhZ2UKKwkJICogICAgICAgICAgICB0byBzZW5kCisJCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KKwkJICogICAgICAgICAgICAgb24gZXJyb3JzCisJCSAqLworCQl2b2lkIHNlbmQoYnl0ZVtdIG1lc3NhZ2UpIHRocm93cyBJT0V4Y2VwdGlvbjsKKworCQkvKioKKwkJICogUmVhZHMgYnl0ZXMgZnJvbSB0aGUgcGlwZSB1bnRpbCB7QGNvZGUgZGF0YX0gaXMgZnVsbC4KKwkJICoKKwkJICogQHBhcmFtIGRhdGEKKwkJICogICAgICAgICAgICB0byByZWFkCisJCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KKwkJICogICAgICAgICAgICAgb24gZXJyb3JzCisJCSAqLworCQl2b2lkIHJlY2VpdmUoYnl0ZVtdIGRhdGEpIHRocm93cyBJT0V4Y2VwdGlvbjsKKwl9CisKKwkvKioKKwkgKiBXaW5kb3dzJyBDT1BZREFUQVNUUlVDVC4gTXVzdCBiZSBwdWJsaWMgZm9yIEpOQS4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIGNsYXNzIENvcHlTdHJ1Y3QgZXh0ZW5kcyBTdHJ1Y3R1cmUgeworCisJCS8qKiBNdXN0IGJlIHNldCB0aGUge0BsaW5rICNQQUdFQU5UX0lEfS4gKi8KKwkJcHVibGljIGludCBkd0RhdGEgPSBQQUdFQU5UX0lEOworCisJCS8qKiBEYXRhIGxlbmd0aDsgbnVtYmVyIG9mIGJ5dGVzIGluIHtAbGluayAjbHBEYXRhfS4gKi8KKwkJcHVibGljIGxvbmcgY2JEYXRhOworCisJCS8qKiBQb2ludHMgdG8ge0BsaW5rICNjYkRhdGF9IGJ5dGVzLiAqLworCQlwdWJsaWMgUG9pbnRlciBscERhdGE7CisKKwkJQE92ZXJyaWRlCisJCXByb3RlY3RlZCBMaXN0PFN0cmluZz4gZ2V0RmllbGRPcmRlcigpIHsKKwkJCXJldHVybiBMaXN0Lm9mKCJkd0RhdGEiLCAiY2JEYXRhIiwgImxwRGF0YSIpOyAvLyROT04tTkxTLTEkIC8vJE5PTi1OTFMtMiQgLy8kTk9OLU5MUy0zJAorCQl9CisJfQorCisJcHJpdmF0ZSBzdGF0aWMgY2xhc3MgUGlwZUltcGwgaW1wbGVtZW50cyBQaXBlIHsKKworCQlwcml2YXRlIGZpbmFsIExpYnJhcnlIb2xkZXIgbGliczsKKworCQlwcml2YXRlIGZpbmFsIEhXTkQgd2luZG93OworCisJCXByaXZhdGUgZmluYWwgYnl0ZVtdIG5hbWU7CisKKwkJcHJpdmF0ZSBmaW5hbCBIQU5ETEUgZmlsZTsKKworCQlwcml2YXRlIGZpbmFsIFBvaW50ZXIgbWVtb3J5OworCisJCXByaXZhdGUgbG9uZyByZWFkUG9zID0gMDsKKworCQlQaXBlSW1wbChMaWJyYXJ5SG9sZGVyIGxpYnMsIEhXTkQgd2luZG93LCBTdHJpbmcgbmFtZSwgSEFORExFIGZpbGUsCisJCQkJUG9pbnRlciBtZW1vcnkpIHsKKwkJCXRoaXMubGlicyA9IGxpYnM7CisJCQl0aGlzLndpbmRvdyA9IHdpbmRvdzsKKwkJCXRoaXMubmFtZSA9IG5hbWUuZ2V0Qnl0ZXMoU3RhbmRhcmRDaGFyc2V0cy5VU19BU0NJSSk7CisJCQl0aGlzLmZpbGUgPSBmaWxlOworCQkJdGhpcy5tZW1vcnkgPSBtZW1vcnk7CisJCX0KKworCQlAT3ZlcnJpZGUKKwkJcHVibGljIHZvaWQgY2xvc2UoKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQkJUGFnZWFudExpYnJhcnkuY2xvc2UobGlicywgZmlsZSwgbWVtb3J5LCBmYWxzZSk7CisJCX0KKworCQlwcml2YXRlIFBvaW50ZXIgaW5pdChDb3B5U3RydWN0IGMpIHsKKwkJCWMuY2JEYXRhID0gbmFtZS5sZW5ndGggKyAxOworCQkJYy5scERhdGEgPSBuZXcgTWVtb3J5KGMuY2JEYXRhKTsKKwkJCWMubHBEYXRhLndyaXRlKDAsIG5hbWUsIDAsIG5hbWUubGVuZ3RoKTsKKwkJCWMubHBEYXRhLnNldEJ5dGUobmFtZS5sZW5ndGgsIChieXRlKSAwKTsKKwkJCWMud3JpdGUoKTsKKwkJCXJldHVybiBjLmdldFBvaW50ZXIoKTsKKwkJfQorCisJCUBPdmVycmlkZQorCQlwdWJsaWMgdm9pZCBzZW5kKGJ5dGVbXSBtZXNzYWdlKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQkJbWVtb3J5LndyaXRlKDAsIG1lc3NhZ2UsIDAsIG1lc3NhZ2UubGVuZ3RoKTsKKwkJCUNvcHlTdHJ1Y3QgYyA9IG5ldyBDb3B5U3RydWN0KCk7CisJCQlQb2ludGVyIHAgPSBpbml0KGMpOworCQkJTFJFU1VMVCByZXN1bHQgPSBsaWJzLnVzZXIuU2VuZE1lc3NhZ2Uod2luZG93LCBXaW5Vc2VyLldNX0NPUFlEQVRBLAorCQkJCQludWxsLCBuZXcgTFBBUkFNKFBvaW50ZXIubmF0aXZlVmFsdWUocCkpKTsKKwkJCWlmIChyZXN1bHQgPT0gbnVsbCB8fCByZXN1bHQubG9uZ1ZhbHVlKCkgPT0gMCkgeworCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbigKKwkJCQkJCWxpYnMuc3lzdGVtRXJyb3IoVGV4dHMuZ2V0KCkubXNnU2VuZEZhaWxlZDIpKTsKKwkJCX0KKwkJfQorCisJCUBPdmVycmlkZQorCQlwdWJsaWMgdm9pZCByZWNlaXZlKGJ5dGVbXSBkYXRhKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQkJLy8gUmVsaWVzIG9uIFBhZ2VhbnQgaGFuZGxpbmcgdGhlIHJlcXVlc3Qgc3luY2hyb25vdXNseSwgaS5lLiwKKwkJCS8vIFNlbmRNZXNzYWdlKCkgYWJvdmUgcmV0dXJuaW5nIHN1Y2Nlc3NmdWxseSBvbmx5IG9uY2UgUGFnZWFudAorCQkJLy8gaGFzIGluZGVlZCB3cml0dGVuIGludG8gdGhlIHNoYXJlZCBtZW1vcnkuCisJCQltZW1vcnkucmVhZChyZWFkUG9zLCBkYXRhLCAwLCBkYXRhLmxlbmd0aCk7CisJCQlyZWFkUG9zICs9IGRhdGEubGVuZ3RoOworCQl9CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgUGlwZX0uCisJICoKKwkgKiBAcGFyYW0gbmFtZQorCSAqICAgICAgICAgICAgZm9yIHRoZSBwaXBlCisJICogQHBhcmFtIG1heFNpemUKKwkgKiAgICAgICAgICAgIG1heGltdW0gc2l6ZSBmb3IgbWVzc2FnZXMKKwkgKiBAcmV0dXJuIHRoZSB7QGxpbmsgUGlwZX0sIG9yIHtAY29kZSBudWxsfSBpZiBub25lIGNyZWF0ZWQKKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uIG9uIGVycm9ycworCSAqLworCVBpcGUgY3JlYXRlUGlwZShTdHJpbmcgbmFtZSwgaW50IG1heFNpemUpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCUxpYnJhcnlIb2xkZXIgbGlicyA9IExpYnJhcnlIb2xkZXIuZ2V0TGlicmFyeSgpOworCQlpZiAobGlicyA9PSBudWxsKSB7CisJCQl0aHJvdyBuZXcgSWxsZWdhbFN0YXRlRXhjZXB0aW9uKCJMaWJyYXJpZXMgd2VyZSBub3QgbG9hZGVkIik7IC8vJE5PTi1OTFMtMSQKKwkJfQorCQlIV05EIHdpbmRvdyA9IGxpYnMudXNlci5GaW5kV2luZG93KFBBR0VBTlQsIFBBR0VBTlQpOworCQlpZiAod2luZG93ID09IG51bGwgfHwgd2luZG93LmVxdWFscyhXaW5CYXNlLklOVkFMSURfSEFORExFX1ZBTFVFKSkgeworCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKFRleHRzLmdldCgpLm1zZ1BhZ2VhbnRVbmF2YWlsYWJsZSk7CisJCX0KKwkJU3RyaW5nIGZpbGVOYW1lID0gbmFtZSArIGxpYnMua2VybmVsLkdldEN1cnJlbnRUaHJlYWRJZCgpOworCQlIQU5ETEUgZmlsZSA9IG51bGw7CisJCVBvaW50ZXIgc2hhcmVkTWVtb3J5ID0gbnVsbDsKKwkJdHJ5IHsKKwkJCWZpbGUgPSBsaWJzLmtlcm5lbC5DcmVhdGVGaWxlTWFwcGluZyhXaW5CYXNlLklOVkFMSURfSEFORExFX1ZBTFVFLAorCQkJCQludWxsLCBXaW5OVC5QQUdFX1JFQURXUklURSwgMCwgbWF4U2l6ZSwgZmlsZU5hbWUpOworCQkJaWYgKGZpbGUgPT0gbnVsbCB8fCBmaWxlLmVxdWFscyhXaW5CYXNlLklOVkFMSURfSEFORExFX1ZBTFVFKSkgeworCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbigKKwkJCQkJCWxpYnMuc3lzdGVtRXJyb3IoVGV4dHMuZ2V0KCkubXNnTm9NYXBwZWRGaWxlKSk7CisJCQl9CisJCQlzaGFyZWRNZW1vcnkgPSBsaWJzLmtlcm5lbC5NYXBWaWV3T2ZGaWxlKGZpbGUsCisJCQkJCVdpbk5ULlNFQ1RJT05fTUFQX1dSSVRFLCAwLCAwLCAwKTsKKwkJCWlmIChzaGFyZWRNZW1vcnkgPT0gbnVsbCkgeworCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbigKKwkJCQkJCWxpYnMuc3lzdGVtRXJyb3IoVGV4dHMuZ2V0KCkubXNnTm9TaGFyZWRNZW1vcnkpKTsKKwkJCX0KKwkJCXJldHVybiBuZXcgUGlwZUltcGwobGlicywgd2luZG93LCBmaWxlTmFtZSwgZmlsZSwgc2hhcmVkTWVtb3J5KTsKKwkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgeworCQkJY2xvc2UobGlicywgZmlsZSwgc2hhcmVkTWVtb3J5LCB0cnVlKTsKKwkJCXRocm93IGU7CisJCX0gY2F0Y2ggKFRocm93YWJsZSBlKSB7CisJCQljbG9zZShsaWJzLCBmaWxlLCBzaGFyZWRNZW1vcnksIHRydWUpOworCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKFRleHRzLmdldCgpLm1zZ1NoYXJlZE1lbW9yeUZhaWxlZCwgZSk7CisJCX0KKwl9CisKKwlwcml2YXRlIHN0YXRpYyB2b2lkIGNsb3NlKExpYnJhcnlIb2xkZXIgbGlicywgSEFORExFIGZpbGUsIFBvaW50ZXIgbWVtb3J5LAorCQkJYm9vbGVhbiBzaWxlbnQpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCWlmIChtZW1vcnkgIT0gbnVsbCkgeworCQkJaWYgKCFsaWJzLmtlcm5lbC5Vbm1hcFZpZXdPZkZpbGUobWVtb3J5KSkgeworCQkJCVN0cmluZyBtc2cgPSBsaWJzCisJCQkJCQkuc3lzdGVtRXJyb3IoVGV4dHMuZ2V0KCkuZXJyUmVsZWFzZVNoYXJlZE1lbW9yeSk7CisJCQkJaWYgKHNpbGVudCkgeworCQkJCQlMT0cuZXJyb3IobXNnKTsKKwkJCQl9IGVsc2UgeworCQkJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24obXNnKTsKKwkJCQl9CisJCQl9CisJCX0KKwkJaWYgKGZpbGUgIT0gbnVsbCkgeworCQkJaWYgKCFsaWJzLmtlcm5lbC5DbG9zZUhhbmRsZShmaWxlKSkgeworCQkJCVN0cmluZyBtc2cgPSBsaWJzLnN5c3RlbUVycm9yKFRleHRzLmdldCgpLmVyckNsb3NlTWFwcGVkRmlsZSk7CisJCQkJaWYgKHNpbGVudCkgeworCQkJCQlMT0cuZXJyb3IobXNnKTsKKwkJCQl9IGVsc2UgeworCQkJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24obXNnKTsKKwkJCQl9CisJCQl9CisJCX0KKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1NvY2tldHMuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvU29ja2V0cy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNkOTViZGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1NvY2tldHMuamF2YQpAQCAtMCwwICsxLDc4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxLCBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudC5jb25uZWN0b3I7CisKK2ltcG9ydCBqYXZhLm5pby5jaGFyc2V0LkNoYXJzZXQ7CisKK2ltcG9ydCBjb20uc3VuLmpuYS5TdHJ1Y3R1cmU7CitpbXBvcnQgY29tLnN1bi5qbmEuU3RydWN0dXJlLkZpZWxkT3JkZXI7CisKKy8qKgorICogQ29tbW9uIHRoaW5ncyBmb3Igc29ja2V0IGNvbW11bmljYXRpb24uCisgKi8KK3B1YmxpYyBmaW5hbCBjbGFzcyBTb2NrZXRzIHsKKworCXByaXZhdGUgU29ja2V0cygpIHsKKwkJLy8gTm8gaW5zdGFudGlhdGlvbgorCX0KKworCS8qKgorCSAqIERlZmF1bHQgU1NIIGFnZW50IHNvY2tldCBlbnZpcm9ubWVudCB2YXJpYWJsZSBuYW1lLgorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIEVOVl9TU0hfQVVUSF9TT0NLID0gIlNTSF9BVVRIX1NPQ0siOyAvLyROT04tTkxTLTEkCisKKwkvKioKKwkgKiBEb21haW4gZm9yIFVuaXggZG9tYWluIHNvY2tldHMuCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgQUZfVU5JWCA9IDE7CisKKwkvKioKKwkgKiBTb2NrZXQgdHlwZSBmb3IgZHVwbGV4IHNvY2tldHMuCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgU09DS19TVFJFQU0gPSAxOworCisJLyoqCisJICogRGVmYXVsdCBwcm90b2NvbCBzZWxlY3Rvci4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBERUZBVUxUX1BST1RPQ09MID0gMDsKKworCS8qKgorCSAqIFZlcnkgc2ltcGxlIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBDIFNvY2tBZGRyIHR5cGUuCisJICovCisJQEZpZWxkT3JkZXIodmFsdWUgPSB7ICJzYV9mYW1pbHkiLCAic2FfZGF0YSIgfSkKKwlwdWJsaWMgc3RhdGljIGNsYXNzIFNvY2tBZGRyIGV4dGVuZHMgU3RydWN0dXJlIHsKKwkJLy8gVGhpcyBpcyBhICJ2YXJpYWJsZSBsZW5ndGggc3RydWN0IiBpbiBDLgorCisJCS8vIFdoeSAxMDggaXMgYXBwYXJlbnRseSBsb3N0IGluIHRpbWUuIEJ1dCB0aGUgZmlsZSBwYXRoIGZvciBhIFVuaXgKKwkJLy8gZG9tYWluIHNvY2tldCBjYW5ub3QgYmUgbG9uZ2VyIChpbmNsdWRpbmcgdGhlIHRlcm1pbmF0aW5nIE5VTCkuCisJCXByaXZhdGUgc3RhdGljIGZpbmFsIGludCBNQVhfREFUQV9MRU5HVEggPSAxMDg7CisKKwkJLyoqIFNvY2tldCBmYW1pbHkgKi8KKwkJcHVibGljIHNob3J0IHNhX2ZhbWlseSA9IEFGX1VOSVg7CisKKwkJLyoqIFVuaXggZG9tYWluIHNvY2tldCBwYXRoLiAqLworCQlwdWJsaWMgYnl0ZVtdIHNhX2RhdGEgPSBuZXcgYnl0ZVtNQVhfREFUQV9MRU5HVEhdOworCisJCS8qKgorCQkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBTb2NrQWRkcn0gZm9yIHRoZSBnaXZlbiB7QGNvZGUgcGF0aH0uCisJCSAqCisJCSAqIEBwYXJhbSBwYXRoCisJCSAqICAgICAgICAgICAgZm9yIHRoZSBTb2NrZXQKKwkJICogQHBhcmFtIGVuY29kaW5nCisJCSAqICAgICAgICAgICAgdG8gdXNlIHRvIGRlY29kZSB0aGUge0Bjb2RlIHBhdGh9IHRvIGEgYnl0ZSBzZXF1ZW5jZQorCQkgKi8KKwkJcHVibGljIFNvY2tBZGRyKFN0cmluZyBwYXRoLCBDaGFyc2V0IGVuY29kaW5nKSB7CisJCQlieXRlW10gYnl0ZXMgPSBwYXRoLmdldEJ5dGVzKGVuY29kaW5nKTsKKwkJCWludCB0b0NvcHkgPSBNYXRoLm1pbihzYV9kYXRhLmxlbmd0aCAtIDEsIGJ5dGVzLmxlbmd0aCk7CisJCQlTeXN0ZW0uYXJyYXljb3B5KGJ5dGVzLCAwLCBzYV9kYXRhLCAwLCB0b0NvcHkpOworCQkJc2FfZGF0YVt0b0NvcHldID0gMDsKKwkJfQorCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVGV4dHMuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVGV4dHMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYjQ1YjMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9UZXh0cy5qYXZhCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKgorICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorICoKKyAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmFnZW50LmNvbm5lY3RvcjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubmxzLk5MUzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lm5scy5UcmFuc2xhdGlvbkJ1bmRsZTsKKworLyoqCisgKiBFeHRlcm5hbGl6ZWQgdGV4dCBtZXNzYWdlcyBmb3IgbG9jYWxpemF0aW9uLgorICovCitwdWJsaWMgZmluYWwgY2xhc3MgVGV4dHMgZXh0ZW5kcyBUcmFuc2xhdGlvbkJ1bmRsZSB7CisKKwkvKioKKwkgKiBHZXQgYW4gaW5zdGFuY2Ugb2YgdGhpcyB0cmFuc2xhdGlvbiBidW5kbGUuCisJICoKKwkgKiBAcmV0dXJuIGFuIGluc3RhbmNlIG9mIHRoaXMgdHJhbnNsYXRpb24gYnVuZGxlCisJICovCisJcHVibGljIHN0YXRpYyBUZXh0cyBnZXQoKSB7CisJCXJldHVybiBOTFMuZ2V0QnVuZGxlRm9yKFRleHRzLmNsYXNzKTsKKwl9CisKKwkvLyBAZm9ybWF0dGVyOm9mZgorCS8qKiovIHB1YmxpYyBTdHJpbmcgZXJyQ2xvc2VNYXBwZWRGaWxlOworCS8qKiovIHB1YmxpYyBTdHJpbmcgZXJyTGFzdEVycm9yOworCS8qKiovIHB1YmxpYyBTdHJpbmcgZXJyUmVsZWFzZVNoYXJlZE1lbW9yeTsKKwkvKioqLyBwdWJsaWMgU3RyaW5nIGVyclVua25vd247CisJLyoqKi8gcHVibGljIFN0cmluZyBsb2dFcnJvckxvYWRMaWJyYXJ5OworCS8qKiovIHB1YmxpYyBTdHJpbmcgbXNnQ2xvc2VGYWlsZWQ7CisJLyoqKi8gcHVibGljIFN0cmluZyBtc2dDb25uZWN0RmFpbGVkOworCS8qKiovIHB1YmxpYyBTdHJpbmcgbXNnTm9NYXBwZWRGaWxlOworCS8qKiovIHB1YmxpYyBTdHJpbmcgbXNnTm9TaGFyZWRNZW1vcnk7CisJLyoqKi8gcHVibGljIFN0cmluZyBtc2dQYWdlYW50VW5hdmFpbGFibGU7CisJLyoqKi8gcHVibGljIFN0cmluZyBtc2dSZWFkRmFpbGVkOworCS8qKiovIHB1YmxpYyBTdHJpbmcgbXNnU2VuZEZhaWxlZDsKKwkvKioqLyBwdWJsaWMgU3RyaW5nIG1zZ1NlbmRGYWlsZWQyOworCS8qKiovIHB1YmxpYyBTdHJpbmcgbXNnU2hhcmVkTWVtb3J5RmFpbGVkOworCS8qKiovIHB1YmxpYyBTdHJpbmcgbXNnU2hvcnRSZWFkOworCS8qKiovIHB1YmxpYyBTdHJpbmcgcGFnZWFudDsKKwkvKioqLyBwdWJsaWMgU3RyaW5nIHVuaXhEZWZhdWx0QWdlbnQ7CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVW5peERvbWFpblNvY2tldENvbm5lY3Rvci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L2Nvbm5lY3Rvci9Vbml4RG9tYWluU29ja2V0Q29ubmVjdG9yLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2I3NWYzYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVW5peERvbWFpblNvY2tldENvbm5lY3Rvci5qYXZhCkBAIC0wLDAgKzEsMjM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxLCBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudC5jb25uZWN0b3I7CisKK2ltcG9ydCBzdGF0aWMgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudC5jb25uZWN0b3IuU29ja2V0cy5BRl9VTklYOworaW1wb3J0IHN0YXRpYyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmFnZW50LmNvbm5lY3Rvci5Tb2NrZXRzLkRFRkFVTFRfUFJPVE9DT0w7CitpbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yLlNvY2tldHMuRU5WX1NTSF9BVVRIX1NPQ0s7CitpbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yLlNvY2tldHMuU09DS19TVFJFQU07CitpbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yLlVuaXhTb2NrZXRzLkZEX0NMT0VYRUM7CitpbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yLlVuaXhTb2NrZXRzLkZfU0VURkQ7CisKK2ltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOworaW1wb3J0IGphdmEubmlvLmNoYXJzZXQuU3RhbmRhcmRDaGFyc2V0czsKK2ltcG9ydCBqYXZhLnRleHQuTWVzc2FnZUZvcm1hdDsKK2ltcG9ydCBqYXZhLnV0aWwuQXJyYXlzOworaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LmF0b21pYy5BdG9taWNCb29sZWFuOworCitpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbi5Tc2hFeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5BYnN0cmFjdENvbm5lY3RvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLmFnZW50LkNvbm5lY3RvckZhY3RvcnkuQ29ubmVjdG9yRGVzY3JpcHRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuU3RyaW5nVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlN5c3RlbVJlYWRlcjsKK2ltcG9ydCBvcmcuc2xmNGouTG9nZ2VyOworaW1wb3J0IG9yZy5zbGY0ai5Mb2dnZXJGYWN0b3J5OworCitpbXBvcnQgY29tLnN1bi5qbmEuTGFzdEVycm9yRXhjZXB0aW9uOworaW1wb3J0IGNvbS5zdW4uam5hLk5hdGl2ZTsKK2ltcG9ydCBjb20uc3VuLmpuYS5wbGF0Zm9ybS51bml4LkxpYkNBUEk7CisKKy8qKgorICogSk5BLWJhc2VkIGltcGxlbWVudGF0aW9uIG9mIGNvbW11bmljYXRpb24gdGhyb3VnaCBhIFVuaXggZG9tYWluIHNvY2tldC4KKyAqLworcHVibGljIGNsYXNzIFVuaXhEb21haW5Tb2NrZXRDb25uZWN0b3IgZXh0ZW5kcyBBYnN0cmFjdENvbm5lY3RvciB7CisKKwkvKioKKwkgKiB7QGxpbmsgQ29ubmVjdG9yRGVzY3JpcHRvcn0gZm9yIHRoZSB7QGxpbmsgVW5peERvbWFpblNvY2tldENvbm5lY3Rvcn0uCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBDb25uZWN0b3JEZXNjcmlwdG9yIERFU0NSSVBUT1IgPSBuZXcgQ29ubmVjdG9yRGVzY3JpcHRvcigpIHsKKworCQlAT3ZlcnJpZGUKKwkJcHVibGljIFN0cmluZyBnZXRJZGVudGl0eUFnZW50KCkgeworCQkJcmV0dXJuIEVOVl9TU0hfQVVUSF9TT0NLOworCQl9CisKKwkJQE92ZXJyaWRlCisJCXB1YmxpYyBTdHJpbmcgZ2V0RGlzcGxheU5hbWUoKSB7CisJCQlyZXR1cm4gVGV4dHMuZ2V0KCkudW5peERlZmF1bHRBZ2VudDsKKwkJfQorCX07CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBMb2dnZXIgTE9HID0gTG9nZ2VyRmFjdG9yeQorCQkJLmdldExvZ2dlcihVbml4RG9tYWluU29ja2V0Q29ubmVjdG9yLmNsYXNzKTsKKworCXByaXZhdGUgc3RhdGljIFVuaXhTb2NrZXRzIGxpYnJhcnk7CisKKwlwcml2YXRlIHN0YXRpYyBib29sZWFuIGxpYnJhcnlMb2FkZWQgPSBmYWxzZTsKKworCXByaXZhdGUgc3RhdGljIHN5bmNocm9uaXplZCBVbml4U29ja2V0cyBnZXRMaWJyYXJ5KCkgeworCQlpZiAoIWxpYnJhcnlMb2FkZWQpIHsKKwkJCWxpYnJhcnlMb2FkZWQgPSB0cnVlOworCQkJdHJ5IHsKKwkJCQlsaWJyYXJ5ID0gTmF0aXZlLmxvYWQoVW5peFNvY2tldHMuTElCUkFSWV9OQU1FLCBVbml4U29ja2V0cy5jbGFzcyk7CisJCQl9IGNhdGNoIChFeGNlcHRpb24gfCBVbnNhdGlzZmllZExpbmtFcnJvcgorCQkJCQl8IE5vQ2xhc3NEZWZGb3VuZEVycm9yIGUpIHsKKwkJCQlMT0cuZXJyb3IoVGV4dHMuZ2V0KCkubG9nRXJyb3JMb2FkTGlicmFyeSwgZSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGxpYnJhcnk7CisJfQorCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgc29ja2V0RmlsZTsKKworCXByaXZhdGUgQXRvbWljQm9vbGVhbiBjb25uZWN0ZWQgPSBuZXcgQXRvbWljQm9vbGVhbigpOworCisJcHJpdmF0ZSB2b2xhdGlsZSBpbnQgc29ja2V0RmQgPSAtMTsKKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2UuCisJICoKKwkgKiBAcGFyYW0gc29ja2V0RmlsZQorCSAqICAgICAgICAgICAgdG8gdXNlOyBpZiB7QGNvZGUgbnVsbH0gb3IgZW1wdHksIHVzZSBlbnZpcm9ubWVudCB2YXJpYWJsZQorCSAqICAgICAgICAgICAgU1NIX0FVVEhfU09DSworCSAqLworCXB1YmxpYyBVbml4RG9tYWluU29ja2V0Q29ubmVjdG9yKFN0cmluZyBzb2NrZXRGaWxlKSB7CisJCXN1cGVyKCk7CisJCVN0cmluZyBmaWxlID0gc29ja2V0RmlsZTsKKwkJaWYgKFN0cmluZ1V0aWxzLmlzRW1wdHlPck51bGwoZmlsZSkpIHsKKwkJCWZpbGUgPSBTeXN0ZW1SZWFkZXIuZ2V0SW5zdGFuY2UoKS5nZXRlbnYoRU5WX1NTSF9BVVRIX1NPQ0spOworCQl9CisJCXRoaXMuc29ja2V0RmlsZSA9IGZpbGU7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gY29ubmVjdCgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCWlmIChTdHJpbmdVdGlscy5pc0VtcHR5T3JOdWxsKHNvY2tldEZpbGUpKSB7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKwkJaW50IGZkID0gc29ja2V0RmQ7CisJCXN5bmNocm9uaXplZCAodGhpcykgeworCQkJaWYgKGNvbm5lY3RlZC5nZXQoKSkgeworCQkJCXJldHVybiB0cnVlOworCQkJfQorCQkJVW5peFNvY2tldHMgc29ja2V0cyA9IGdldExpYnJhcnkoKTsKKwkJCWlmIChzb2NrZXRzID09IG51bGwpIHsKKwkJCQlyZXR1cm4gZmFsc2U7CisJCQl9CisJCQl0cnkgeworCQkJCWZkID0gc29ja2V0cy5zb2NrZXQoQUZfVU5JWCwgU09DS19TVFJFQU0sIERFRkFVTFRfUFJPVE9DT0wpOworCQkJCS8vIE9TIFggYXBwYXJlbnRseSBkb2Vzbid0IGhhdmUgU09DS19DTE9FWEVDLCBzbyB3ZSBjYW4ndCBzZXQgaXQKKwkJCQkvLyBhdG9taWNhbGx5LiBTZXQgaXQgdmlhIGZjbnRsLCB3aGljaCBleGlzdHMgb24gYWxsIHN5c3RlbXMKKwkJCQkvLyB3ZSdyZSBpbnRlcmVzdGVkIGluLgorCQkJCXNvY2tldHMuZmNudGwoZmQsIEZfU0VURkQsIEZEX0NMT0VYRUMpOworCQkJCVNvY2tldHMuU29ja0FkZHIgc29ja0FkZHIgPSBuZXcgU29ja2V0cy5Tb2NrQWRkcihzb2NrZXRGaWxlLAorCQkJCQkJU3RhbmRhcmRDaGFyc2V0cy5VVEZfOCk7CisJCQkJc29ja2V0cy5jb25uZWN0KGZkLCBzb2NrQWRkciwgc29ja0FkZHIuc2l6ZSgpKTsKKwkJCQljb25uZWN0ZWQuc2V0KHRydWUpOworCQkJfSBjYXRjaCAoTGFzdEVycm9yRXhjZXB0aW9uIGUpIHsKKwkJCQlpZiAoZmQgPj0gMCkgeworCQkJCQl0cnkgeworCQkJCQkJc29ja2V0cy5jbG9zZShmZCk7CisJCQkJCX0gY2F0Y2ggKExhc3RFcnJvckV4Y2VwdGlvbiBlMSkgeworCQkJCQkJZS5hZGRTdXBwcmVzc2VkKGUxKTsKKwkJCQkJfQorCQkJCX0KKwkJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24oTWVzc2FnZUZvcm1hdAorCQkJCQkJLmZvcm1hdChUZXh0cy5nZXQoKS5tc2dDb25uZWN0RmFpbGVkLCBzb2NrZXRGaWxlKSwgZSk7CisJCQl9CisJCX0KKwkJc29ja2V0RmQgPSBmZDsKKwkJcmV0dXJuIGNvbm5lY3RlZC5nZXQoKTsKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgc3luY2hyb25pemVkIHZvaWQgY2xvc2UoKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQlpbnQgZmQgPSBzb2NrZXRGZDsKKwkJaWYgKGNvbm5lY3RlZC5nZXRBbmRTZXQoZmFsc2UpICYmIGZkID49IDApIHsKKwkJCXNvY2tldEZkID0gLTE7CisJCQl0cnkgeworCQkJCWdldExpYnJhcnkoKS5jbG9zZShmZCk7CisJCQl9IGNhdGNoIChMYXN0RXJyb3JFeGNlcHRpb24gZSkgeworCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKKwkJCQkJCVRleHRzLmdldCgpLm1zZ0Nsb3NlRmFpbGVkLCBJbnRlZ2VyLnRvU3RyaW5nKGZkKSksIGUpOworCQkJfQorCQl9CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIGJ5dGVbXSBycGMoYnl0ZSBjb21tYW5kLCBieXRlW10gbWVzc2FnZSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJcHJlcGFyZU1lc3NhZ2UoY29tbWFuZCwgbWVzc2FnZSk7CisJCWludCBmZCA9IHNvY2tldEZkOworCQlpZiAoIWNvbm5lY3RlZC5nZXQoKSB8fCBmZCA8IDApIHsKKwkJCS8vIE5vIHRyYW5zbGF0aW9uLCBpbnRlcm5hbCBlcnJvcgorCQkJdGhyb3cgbmV3IElsbGVnYWxTdGF0ZUV4Y2VwdGlvbigiTm90IGNvbm5lY3RlZCB0byBTU0ggYWdlbnQiKTsgLy8kTk9OLU5MUy0xJAorCQl9CisJCXdyaXRlRnVsbHkoZmQsIG1lc3NhZ2UpOworCQkvLyBOb3cgcmVjZWl2ZSB0aGUgcmVwbHkKKwkJYnl0ZVtdIGxlbmd0aEJ1ZiA9IG5ldyBieXRlWzRdOworCQlyZWFkRnVsbHkoZmQsIGxlbmd0aEJ1Zik7CisJCWludCBsZW5ndGggPSB0b0xlbmd0aChjb21tYW5kLCBsZW5ndGhCdWYpOworCQlieXRlW10gcGF5bG9hZCA9IG5ldyBieXRlW2xlbmd0aF07CisJCXJlYWRGdWxseShmZCwgcGF5bG9hZCk7CisJCXJldHVybiBwYXlsb2FkOworCX0KKworCXByaXZhdGUgdm9pZCB3cml0ZUZ1bGx5KGludCBmZCwgYnl0ZVtdIG1lc3NhZ2UpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCWludCB0b1dyaXRlID0gbWVzc2FnZS5sZW5ndGg7CisJCXRyeSB7CisJCQlieXRlW10gYnVmID0gbWVzc2FnZTsKKwkJCXdoaWxlICh0b1dyaXRlID4gMCkgeworCQkJCWludCB3cml0dGVuID0gZ2V0TGlicmFyeSgpCisJCQkJCQkud3JpdGUoZmQsIGJ1ZiwgbmV3IExpYkNBUEkuc2l6ZV90KGJ1Zi5sZW5ndGgpKQorCQkJCQkJLmludFZhbHVlKCk7CisJCQkJaWYgKHdyaXR0ZW4gPCAwKSB7CisJCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbigKKwkJCQkJCQlNZXNzYWdlRm9ybWF0LmZvcm1hdChUZXh0cy5nZXQoKS5tc2dTZW5kRmFpbGVkLAorCQkJCQkJCQkJSW50ZWdlci50b1N0cmluZyhtZXNzYWdlLmxlbmd0aCksCisJCQkJCQkJCQlJbnRlZ2VyLnRvU3RyaW5nKHRvV3JpdGUpKSk7CisJCQkJfQorCQkJCXRvV3JpdGUgLT0gd3JpdHRlbjsKKwkJCQlpZiAod3JpdHRlbiA+IDAgJiYgdG9Xcml0ZSA+IDApIHsKKwkJCQkJYnVmID0gQXJyYXlzLmNvcHlPZlJhbmdlKGJ1Ziwgd3JpdHRlbiwgYnVmLmxlbmd0aCk7CisJCQkJfQorCQkJfQorCQl9IGNhdGNoIChMYXN0RXJyb3JFeGNlcHRpb24gZSkgeworCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKAorCQkJCQlNZXNzYWdlRm9ybWF0LmZvcm1hdChUZXh0cy5nZXQoKS5tc2dTZW5kRmFpbGVkLAorCQkJCQkJCUludGVnZXIudG9TdHJpbmcobWVzc2FnZS5sZW5ndGgpLAorCQkJCQkJCUludGVnZXIudG9TdHJpbmcodG9Xcml0ZSkpLAorCQkJCQllKTsKKwkJfQorCX0KKworCXByaXZhdGUgdm9pZCByZWFkRnVsbHkoaW50IGZkLCBieXRlW10gZGF0YSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJaW50IG4gPSAwOworCQlpbnQgb2Zmc2V0ID0gMDsKKwkJd2hpbGUgKG9mZnNldCA8IGRhdGEubGVuZ3RoCisJCQkJJiYgKG4gPSByZWFkKGZkLCBkYXRhLCBvZmZzZXQsIGRhdGEubGVuZ3RoIC0gb2Zmc2V0KSkgPiAwKSB7CisJCQlvZmZzZXQgKz0gbjsKKwkJfQorCQlpZiAob2Zmc2V0IDwgZGF0YS5sZW5ndGgpIHsKKwkJCXRocm93IG5ldyBTc2hFeGNlcHRpb24oCisJCQkJCU1lc3NhZ2VGb3JtYXQuZm9ybWF0KFRleHRzLmdldCgpLm1zZ1Nob3J0UmVhZCwKKwkJCQkJCQlJbnRlZ2VyLnRvU3RyaW5nKGRhdGEubGVuZ3RoKSwKKwkJCQkJCQlJbnRlZ2VyLnRvU3RyaW5nKG9mZnNldCksIEludGVnZXIudG9TdHJpbmcobikpKTsKKwkJfQorCX0KKworCXByaXZhdGUgaW50IHJlYWQoaW50IGZkLCBieXRlW10gYnVmZmVyLCBpbnQgb2Zmc2V0LCBpbnQgbGVuZ3RoKQorCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJdHJ5IHsKKwkJCUxpYkNBUEkuc2l6ZV90IHRvUmVhZCA9IG5ldyBMaWJDQVBJLnNpemVfdChsZW5ndGgpOworCQkJaWYgKG9mZnNldCA9PSAwKSB7CisJCQkJcmV0dXJuIGdldExpYnJhcnkoKS5yZWFkKGZkLCBidWZmZXIsIHRvUmVhZCkuaW50VmFsdWUoKTsKKwkJCX0KKwkJCWJ5dGVbXSBkYXRhID0gbmV3IGJ5dGVbbGVuZ3RoXTsKKwkJCWludCByZWFkID0gZ2V0TGlicmFyeSgpLnJlYWQoZmQsIGRhdGEsIHRvUmVhZCkuaW50VmFsdWUoKTsKKwkJCWlmIChyZWFkID4gMCkgeworCQkJCVN5c3RlbS5hcnJheWNvcHkoZGF0YSwgMCwgYnVmZmVyLCBvZmZzZXQsIHJlYWQpOworCQkJfQorCQkJcmV0dXJuIHJlYWQ7CisJCX0gY2F0Y2ggKExhc3RFcnJvckV4Y2VwdGlvbiBlKSB7CisJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24oCisJCQkJCU1lc3NhZ2VGb3JtYXQuZm9ybWF0KFRleHRzLmdldCgpLm1zZ1JlYWRGYWlsZWQsCisJCQkJCQkJSW50ZWdlci50b1N0cmluZyhsZW5ndGgpKSwKKwkJCQkJZSk7CisJCX0KKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1VuaXhTb2NrZXRzLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuYWdlbnQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvY29ubmVjdG9yL1VuaXhTb2NrZXRzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmY4MTUzZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9jb25uZWN0b3IvVW5peFNvY2tldHMuamF2YQpAQCAtMCwwICsxLDEyMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSwgVGhvbWFzIFdvbGYgPHRob21hcy53b2xmQHBhcmFub3IuY2g+IGFuZCBvdGhlcnMKKyAqCisgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKKyAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9kb2N1bWVudHMvZWRsLXYxMC5waHAuCisgKgorICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYWdlbnQuY29ubmVjdG9yOworCitpbXBvcnQgY29tLnN1bi5qbmEuTGFzdEVycm9yRXhjZXB0aW9uOworaW1wb3J0IGNvbS5zdW4uam5hLkxpYnJhcnk7CitpbXBvcnQgY29tLnN1bi5qbmEuU3RydWN0dXJlOworaW1wb3J0IGNvbS5zdW4uam5hLnBsYXRmb3JtLnVuaXguTGliQ0FQSTsKKworLyoqCisgKiBMb3ctbGV2ZWwgVW5peC9MaW51eCBKTkEgc29ja2V0IEFQSS4KKyAqLworaW50ZXJmYWNlIFVuaXhTb2NrZXRzIGV4dGVuZHMgTGliQ0FQSSwgTGlicmFyeSB7CisKKwkvKioKKwkgKiBMaWJyYXJ5IHRvIGxvYWQuIFRoZXNlIGZ1bmN0aW9ucyBsaXZlIGluIGxpYmMuCisJICovCisJU3RyaW5nIExJQlJBUllfTkFNRSA9ICJjIjsgLy8kTk9OLU5MUy0xJAorCisJLyoqCisJICogQ29tbWFuZCB0byBzZXQgdGhlIGNsb3NlLW9uLWV4ZWMgZmxhZyBvbiBhIGZpbGUgZGVzY3JpcHRvciB2aWEKKwkgKiB7QGxpbmsgI2ZjbnRsKGludCwgaW50LCBpbnQpfS4KKwkgKi8KKwlpbnQgRl9TRVRGRCA9IDI7CisKKwkvKioKKwkgKiBTcGVjaWZpZXMgdGhhdCBhIGZpbGUgZGVzY3JpcHRvciBzaGFsbCBub3QgYmUgaW5oZXJpdGVkIGJ5IGNoaWxkCisJICogcHJvY2Vzc2VzLgorCSAqLworCWludCBGRF9DTE9FWEVDID0gMTsKKworCS8qKgorCSAqIENyZWF0ZXMgYSBzb2NrZXQgYW5kIHJldHVybnMgYSBmaWxlIGRlc2NyaXB0b3IgZm9yIGl0LgorCSAqCisJICogQHBhcmFtIGRvbWFpbgorCSAqICAgICAgICAgICAgc29ja2V0IGRvbWFpbjsgdXNlIHtAbGluayBTb2NrZXRzI0FGX1VOSVh9CisJICogQHBhcmFtIHR5cGUKKwkgKiAgICAgICAgICAgIHNvY2tldCB0eXBlOyB1c2Uge0BsaW5rIFNvY2tldHMjU09DS19TVFJFQU19CisJICogQHBhcmFtIHByb3RvY29sCisJICogICAgICAgICAgICBzb2NrZXQgY29tbXVuaWNhdGlvbiBwcm90b2NvbDsgdXNlCisJICogICAgICAgICAgICB7QGxpbmsgU29ja2V0cyNERUZBVUxUX1BST1RPQ09MfS4KKwkgKiBAcmV0dXJuIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIHNvY2tldDsgc2hvdWxkIGJlIGNsb3NlZCBldmVudHVhbGx5LCBvcgorCSAqICAgICAgICAgLTEgb24gZXJyb3IuCisJICogQHRocm93cyBMYXN0RXJyb3JFeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBvbiBlcnJvcnMKKwkgKiBAc2VlIExpYkNBUEkjY2xvc2UoaW50KQorCSAqLworCWludCBzb2NrZXQoaW50IGRvbWFpbiwgaW50IHR5cGUsIGludCBwcm90b2NvbCkgdGhyb3dzIExhc3RFcnJvckV4Y2VwdGlvbjsKKworCS8qKgorCSAqIFNpbXBsZSBiaW5kaW5nIHRvIGZjbnRsOyB1c2VkIHRvIHNldCB0aGUgRkRfQ0xPRVhFQyBmbGFnLiBPbiBPUyBYLCB3ZQorCSAqIGNhbm5vdCBpbmNsdWRlIFNPQ0tfQ0xPRVhFQyBpbiB0aGUgc29ja2V0KCkgY2FsbC4KKwkgKgorCSAqIEBwYXJhbSBmZAorCSAqICAgICAgICAgICAgZmlsZSBkZXNjcmlwdG9yIHRvIG9wZXJhdGUgb24KKwkgKiBAcGFyYW0gY29tbWFuZAorCSAqICAgICAgICAgICAgc2V0IHRvIHtAbGluayAjRl9TRVRGRH0KKwkgKiBAcGFyYW0gZmxhZworCSAqICAgICAgICAgICAgemVybyB0byBjbGVhciB0aGUgY2xvc2Utb24tZXhlYyBmbGFnLCB7QGxpbmsgI0ZEX0NMT0VYRUN9IHRvCisJICogICAgICAgICAgICBzZXQgaXQKKwkgKiBAcmV0dXJuIC0xIG9uIGVycm9yLCBvdGhlcndpc2UgYSB2YWx1ZSA+PSAwCisJICogQHRocm93cyBMYXN0RXJyb3JFeGNlcHRpb24KKwkgKi8KKwlpbnQgZmNudGwoaW50IGZkLCBpbnQgY29tbWFuZCwgaW50IGZsYWcpIHRocm93cyBMYXN0RXJyb3JFeGNlcHRpb247CisKKwkvKioKKwkgKiBDb25uZWN0cyBhIGZpbGUgZGVzY3JpcHRvciwgd2hpY2ggbXVzdCByZWZlciB0byBhIHNvY2tldCwgdG8gYQorCSAqIHtAbGluayBTb2NrZXRzLlNvY2tBZGRyfS4KKwkgKgorCSAqIEBwYXJhbSBmZAorCSAqICAgICAgICAgICAgZmlsZSBkZXNjcmlwdG9yIG9mIHRoZSBzb2NrZXQsIGFzIHJldHVybmVkIGJ5CisJICogICAgICAgICAgICB7QGxpbmsgI3NvY2tldChpbnQsIGludCwgaW50KX0KKwkgKiBAcGFyYW0gYWRkcgorCSAqICAgICAgICAgICAgYWRkcmVzcyB0byBjb25uZWN0IHRvCisJICogQHBhcmFtIGFkZHJMZW4KKwkgKiAgICAgICAgICAgIExlbmd0aCBvZiB7QGNvZGUgYWRkcn0sIHVzZSB7QGxpbmsgU3RydWN0dXJlI3NpemUoKX0KKwkgKiBAcmV0dXJuIDAgb24gc3VjY2VzczsgLTEgb3RoZXJ3aXNlCisJICogQHRocm93cyBMYXN0RXJyb3JFeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBvbiBlcnJvcnMKKwkgKi8KKwlpbnQgY29ubmVjdChpbnQgZmQsIFNvY2tldHMuU29ja0FkZHIgYWRkciwgaW50IGFkZHJMZW4pCisJCQl0aHJvd3MgTGFzdEVycm9yRXhjZXB0aW9uOworCisJLyoqCisJICogUmVhZCBkYXRhIGZyb20gYSBmaWxlIGRlc2NyaXB0b3IuCisJICoKKwkgKiBAcGFyYW0gZmQKKwkgKiAgICAgICAgICAgIGZpbGUgZGVzY3JpcHRvciB0byByZWFkIGZyb20KKwkgKiBAcGFyYW0gYnVmCisJICogICAgICAgICAgICBidWZmZXIgdG8gcmVhZCBpbnRvCisJICogQHBhcmFtIGJ1ZkxlbgorCSAqICAgICAgICAgICAgbWF4aW11bSBudW1iZXIgb2YgYnl0ZXMgdG8gcmVhZDsgYXQgbW9zdCBsZW5ndGggb2Yge0Bjb2RlIGJ1Zn0KKwkgKiBAcmV0dXJuIG51bWJlciBvZiBieXRlcyBhY3R1YWxseSByZWFkOyB6ZXJvIGZvciBFT0YsIC0xIG9uIGVycm9yCisJICogQHRocm93cyBMYXN0RXJyb3JFeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBvbiBlcnJvcnMKKwkgKi8KKwlMaWJDQVBJLnNzaXplX3QgcmVhZChpbnQgZmQsIGJ5dGVbXSBidWYsIExpYkNBUEkuc2l6ZV90IGJ1ZkxlbikKKwkJCXRocm93cyBMYXN0RXJyb3JFeGNlcHRpb247CisKKwkvKioKKwkgKiBXcml0ZSBkYXRhIHRvIGEgZmlsZSBkZXNjcmlwdG9yLgorCSAqCisJICogQHBhcmFtIGZkCisJICogICAgICAgICAgICBmaWxlIGRlc2NyaXB0b3IgdG8gd3JpdGUgdG8KKwkgKiBAcGFyYW0gZGF0YQorCSAqICAgICAgICAgICAgZGF0YSB0byB3cml0ZQorCSAqIEBwYXJhbSBkYXRhTGVuCisJICogICAgICAgICAgICBudW1iZXIgb2YgYnl0ZXMgdG8gd3JpdGUKKwkgKiBAcmV0dXJuIG51bWJlciBvZiBieXRlcyBhY3R1YWxseSB3cml0dGVuOyAtMSBvbiBlcnJvcgorCSAqIEB0aHJvd3MgTGFzdEVycm9yRXhjZXB0aW9uCisJICogICAgICAgICAgICAgb24gZXJyb3JzCisJICovCisJTGliQ0FQSS5zc2l6ZV90IHdyaXRlKGludCBmZCwgYnl0ZVtdIGRhdGEsIExpYkNBUEkuc2l6ZV90IGRhdGFMZW4pCisJCQl0aHJvd3MgTGFzdEVycm9yRXhjZXB0aW9uOworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0Ly5jbGFzc3BhdGgKaW5kZXggZjA4YWYwYS4uNTg5OWE0ZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CiA8Y2xhc3NwYXRoPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0idHN0Ij4KIAkJPGF0dHJpYnV0ZXM+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggY2JhODkzZi4uNzZmNDhkOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IDMzMWIwMjUuLjhmZjk3MzUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0zLDEwICszLDEwIEBACiBCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0CiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KLUJ1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMS44CitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCiBJbXBvcnQtUGFja2FnZTogb3JnLmFwYWNoZS5zc2hkLmNsaWVudC5jb25maWcuaG9zdHM7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCiAgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbjt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLmF1dGg7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCkBAIC0yMSwxNSArMjEsMTYgQEAKICBvcmcuYXBhY2hlLnNzaGQuY29yZTt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuc2VydmVyO3ZlcnNpb249IlsyLjcuMCwyLjguMCkiLAogIG9yZy5hcGFjaGUuc3NoZC5zZXJ2ZXIuZm9yd2FyZDt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFwaTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQucHJveHk7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2g7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLnByb3h5O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2g7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLmFnZW50O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuaGFtY3Jlc3Q7dmVyc2lvbj0iWzEuMS4wLDMuMC4wKSIsCiAgb3JnLmp1bml0O3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCiAgb3JnLmp1bml0LmV4cGVyaW1lbnRhbC50aGVvcmllczt2ZXJzaW9uPSJbNC4xMyw1LjAuMCkiLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L3BvbS54bWwKaW5kZXggMTZmMDJjNC4uYTg4ZGRhZiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvcG9tLnhtbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0PC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvQXBhY2hlU3NoUHJvdG9jb2wyVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvQXBhY2hlU3NoUHJvdG9jb2wyVGVzdC5qYXZhCmluZGV4IDBhZDk2YjkuLmVlZjA0MDIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL0FwYWNoZVNzaFByb3RvY29sMlRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9BcGFjaGVTc2hQcm90b2NvbDJUZXN0LmphdmEKQEAgLTI2LDEyICsyNiwxNSBAQCBwdWJsaWMgY2xhc3MgQXBhY2hlU3NoUHJvdG9jb2wyVGVzdCBleHRlbmRzIFNzaEJhc2ljVGVzdEJhc2UgewogCiAJQE92ZXJyaWRlCiAJcHJvdGVjdGVkIFNzaFNlc3Npb25GYWN0b3J5IGNyZWF0ZVNlc3Npb25GYWN0b3J5KCkgewotCQlTc2hkU2Vzc2lvbkZhY3RvcnkgcmVzdWx0ID0gbmV3IFNzaGRTZXNzaW9uRmFjdG9yeShuZXcgSkdpdEtleUNhY2hlKCksCi0JCQkJbnVsbCk7Ci0JCS8vIFRoZSBob21lIGRpcmVjdG9yeSBpcyBtb2NrZWQgYXQgdGhpcyBwb2ludCEKLQkJcmVzdWx0LnNldEhvbWVEaXJlY3RvcnkoRlMuREVURUNURUQudXNlckhvbWUoKSk7Ci0JCXJlc3VsdC5zZXRTc2hEaXJlY3Rvcnkoc3NoRGlyKTsKLQkJcmV0dXJuIHJlc3VsdDsKKwkJcmV0dXJuIG5ldyBTc2hkU2Vzc2lvbkZhY3RvcnlCdWlsZGVyKCkKKwkJCQkvLyBObyBwcm94aWVzIGluIHRlc3RzCisJCQkJLnNldFByb3h5RGF0YUZhY3RvcnkobnVsbCkKKwkJCQkvLyBObyBzc2gtYWdlbnQgaW4gdGVzdHMKKwkJCQkuc2V0Q29ubmVjdG9yRmFjdG9yeShudWxsKQorCQkJCS8vIFRoZSBob21lIGRpcmVjdG9yeSBpcyBtb2NrZWQgYXQgdGhpcyBwb2ludCEKKwkJCQkuc2V0SG9tZURpcmVjdG9yeShGUy5ERVRFQ1RFRC51c2VySG9tZSgpKQorCQkJCS5zZXRTc2hEaXJlY3Rvcnkoc3NoRGlyKQorCQkJCS5idWlsZChuZXcgSkdpdEtleUNhY2hlKCkpOwogCX0KIAogCUBPdmVycmlkZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvQXBhY2hlU3NoVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvQXBhY2hlU3NoVGVzdC5qYXZhCmluZGV4IGMxZjVmZWYuLmNjYWY5OGMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL0FwYWNoZVNzaFRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9BcGFjaGVTc2hUZXN0LmphdmEKQEAgLTY1LDEyICs2NSwxNSBAQCBwdWJsaWMgY2xhc3MgQXBhY2hlU3NoVGVzdCBleHRlbmRzIFNzaFRlc3RCYXNlIHsKIAogCUBPdmVycmlkZQogCXByb3RlY3RlZCBTc2hTZXNzaW9uRmFjdG9yeSBjcmVhdGVTZXNzaW9uRmFjdG9yeSgpIHsKLQkJU3NoZFNlc3Npb25GYWN0b3J5IHJlc3VsdCA9IG5ldyBTc2hkU2Vzc2lvbkZhY3RvcnkobmV3IEpHaXRLZXlDYWNoZSgpLAotCQkJCW51bGwpOwotCQkvLyBUaGUgaG9tZSBkaXJlY3RvcnkgaXMgbW9ja2VkIGF0IHRoaXMgcG9pbnQhCi0JCXJlc3VsdC5zZXRIb21lRGlyZWN0b3J5KEZTLkRFVEVDVEVELnVzZXJIb21lKCkpOwotCQlyZXN1bHQuc2V0U3NoRGlyZWN0b3J5KHNzaERpcik7Ci0JCXJldHVybiByZXN1bHQ7CisJCXJldHVybiBuZXcgU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlcigpCisJCQkJLy8gTm8gcHJveGllcyBpbiB0ZXN0cworCQkJCS5zZXRQcm94eURhdGFGYWN0b3J5KG51bGwpCisJCQkJLy8gTm8gc3NoLWFnZW50IGluIHRlc3RzCisJCQkJLnNldENvbm5lY3RvckZhY3RvcnkobnVsbCkKKwkJCQkvLyBUaGUgaG9tZSBkaXJlY3RvcnkgaXMgbW9ja2VkIGF0IHRoaXMgcG9pbnQhCisJCQkJLnNldEhvbWVEaXJlY3RvcnkoRlMuREVURUNURUQudXNlckhvbWUoKSkKKwkJCQkuc2V0U3NoRGlyZWN0b3J5KHNzaERpcikKKwkJCQkuYnVpbGQobmV3IEpHaXRLZXlDYWNoZSgpKTsKIAl9CiAKIAlAT3ZlcnJpZGUKQEAgLTM1Miw2ICszNTUsMjEgQEAgcHVibGljIHZvaWQgdGVzdEp1bXBIb3N0KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJfQogCiAJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0SnVtcEhvc3ROb25lKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCS8vIFNob3VsZCBub3QgdHJ5IHRvIGdvIHRocm91Z2ggdGhlIG5vbi1leGlzdGluZyBwcm94eQorCQljbG9uZVdpdGgoInNzaDovL3NlcnZlci9kb2VzbnRtYXR0ZXIiLCBkZWZhdWx0Q2xvbmVEaXIsIG51bGwsIC8vCisJCQkJIkhvc3Qgc2VydmVyIiwgLy8KKwkJCQkiSG9zdE5hbWUgbG9jYWxob3N0IiwgLy8KKwkJCQkiUG9ydCAiICsgdGVzdFBvcnQsIC8vCisJCQkJIlVzZXIgIiArIFRFU1RfVVNFUiwgLy8KKwkJCQkiSWRlbnRpdHlGaWxlICIgKyBwcml2YXRlS2V5MS5nZXRBYnNvbHV0ZVBhdGgoKSwgLy8KKwkJCQkiUHJveHlKdW1wIG5vbmUiLCAvLworCQkJCSIiLCAvLworCQkJCSJIb3N0ICoiLCAvLworCQkJCSJQcm94eUp1bXAgIiArIFRFU1RfVVNFUiArICJAbG9jYWxob3N0OjEyMzQiKTsKKwl9CisKKwlAVGVzdAogCXB1YmxpYyB2b2lkIHRlc3RKdW1wSG9zdFdyb25nS2V5QXRQcm94eSgpIHRocm93cyBFeGNlcHRpb24gewogCQkvLyBUZXN0IHRoYXQgd2UgZmluZCB0aGUgcHJveHkgc2VydmVyJ3MgVVJJIGluIHRoZSBleGNlcHRpb24gbWVzc2FnZQogCQlTc2hkU29ja2V0QWRkcmVzc1tdIGZvcndhcmRlZCA9IHsgbnVsbCB9OwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvTm9GaWxlc1NzaEJ1aWxkZXJUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Ob0ZpbGVzU3NoQnVpbGRlclRlc3QuamF2YQppbmRleCA5ZDY0YWRjLi5mZDUxZTBjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Ob0ZpbGVzU3NoQnVpbGRlclRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Ob0ZpbGVzU3NoQnVpbGRlclRlc3QuamF2YQpAQCAtNTAsNiArNTAsMTAgQEAgcHVibGljIGNsYXNzIE5vRmlsZXNTc2hCdWlsZGVyVGVzdCBleHRlbmRzIFNzaFRlc3RIYXJuZXNzIHsKIAlAT3ZlcnJpZGUKIAlwcm90ZWN0ZWQgU3NoU2Vzc2lvbkZhY3RvcnkgY3JlYXRlU2Vzc2lvbkZhY3RvcnkoKSB7CiAJCXJldHVybiBuZXcgU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlcigpIC8vCisJCQkJLy8gTm8gcHJveGllcyBpbiB0ZXN0cworCQkJCS5zZXRQcm94eURhdGFGYWN0b3J5KG51bGwpCisJCQkJLy8gTm8gc3NoLWFnZW50IGluIHRlc3RzCisJCQkJLnNldENvbm5lY3RvckZhY3RvcnkobnVsbCkKIAkJCQkuc2V0Q29uZmlnU3RvcmVGYWN0b3J5KChoLCBmLCB1KSAtPiBudWxsKQogCQkJCS5zZXREZWZhdWx0S2V5c1Byb3ZpZGVyKGYgLT4gbmV3IEtleUF1dGhlbnRpY2F0b3IoKSkKIAkJCQkuc2V0U2VydmVyS2V5RGF0YWJhc2UoKGgsIHMpIC0+IG5ldyBTZXJ2ZXJLZXlEYXRhYmFzZSgpIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL05vRmlsZXNTc2hUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Ob0ZpbGVzU3NoVGVzdC5qYXZhCmluZGV4IDdiNmU1MDguLjA0YzFjNjAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL05vRmlsZXNTc2hUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvTm9GaWxlc1NzaFRlc3QuamF2YQpAQCAtMzMsNiArMzMsNyBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbnN0YW50czsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5DcmVkZW50aWFsc1Byb3ZpZGVyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuYWdlbnQuQ29ubmVjdG9yRmFjdG9yeTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiBpbXBvcnQgb3JnLmp1bml0LkFmdGVyOwogaW1wb3J0IG9yZy5qdW5pdC5UZXN0OwpAQCAtODEsNiArODIsMTIgQEAgcHVibGljIGJvb2xlYW4gYWNjZXB0KFN0cmluZyBjb25uZWN0QWRkcmVzcywKIAkJCX0KIAogCQkJQE92ZXJyaWRlCisJCQlwcm90ZWN0ZWQgQ29ubmVjdG9yRmFjdG9yeSBnZXRDb25uZWN0b3JGYWN0b3J5KCkgeworCQkJCS8vIE5vIHNzaC1hZ2VudCBpbiB0ZXN0cworCQkJCXJldHVybiBudWxsOworCQkJfQorCisJCQlAT3ZlcnJpZGUKIAkJCXByb3RlY3RlZCBJdGVyYWJsZTxLZXlQYWlyPiBnZXREZWZhdWx0S2V5cyhGaWxlIGRpcikgewogCQkJCS8vIFRoaXMgd291bGQgd29yayBmb3IgdGhpcyBzaW1wbGUgdGVzdCBjYXNlOgogCQkJCS8vIHJldHVybiBDb2xsZWN0aW9ucy5zaW5nbGV0b25MaXN0KHRlc3RVc2VyS2V5KTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLy5jbGFzc3BhdGgKaW5kZXggMTEwMTY4Zi4uMWZkZTMxOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLy5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLy5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJyZXNvdXJjZXMiLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDE1ZWYyYWEuLmQxZjU0YmIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggMmEwMDViNS4uODFlMDFjYyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtNiw5ICs2LDkgQEAKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KIEJ1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5Ci1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgotQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xLjgKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkO3ZlcnNpb249IjUuMTMuMyI7eC1pbnRlcm5hbDo9dHJ1ZTsKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkO3ZlcnNpb249IjYuMC4xIjt4LWludGVybmFsOj10cnVlOwogICB1c2VzOj0ib3JnLmFwYWNoZS5zc2hkLmNsaWVudCwKICAgIG9yZy5hcGFjaGUuc3NoZC5jbGllbnQuYXV0aCwKICAgIG9yZy5hcGFjaGUuc3NoZC5jbGllbnQuYXV0aC5rZXlib2FyZCwKQEAgLTIzLDE1ICsyMywxNyBAQAogICAgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbi5zaWduYXR1cmUsCiAgICBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuYnVmZmVyLAogICAgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuYXV0aDt2ZXJzaW9uPSI1LjEzLjMiO3gtaW50ZXJuYWw6PXRydWUsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5wcm94eTt2ZXJzaW9uPSI1LjEzLjMiO3gtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS50ZXN0IiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudDt2ZXJzaW9uPSI2LjAuMSI7eC1pbnRlcm5hbDo9dHJ1ZSwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmF1dGg7dmVyc2lvbj0iNi4wLjEiO3gtaW50ZXJuYWw6PXRydWUsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5wcm94eTt2ZXJzaW9uPSI2LjAuMSI7eC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLnRlc3QiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQ7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQsCiAgICBvcmcuYXBhY2hlLnNzaGQuY2xpZW50LmNvbmZpZy5ob3N0cywKICAgIG9yZy5hcGFjaGUuc3NoZC5jb21tb24ua2V5cHJvdmlkZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwsCiAgICBvcmcuYXBhY2hlLnNzaGQuY2xpZW50LnNlc3Npb24sCi0gICBvcmcuYXBhY2hlLnNzaGQuY2xpZW50LmtleXZlcmlmaWVyIgorICAgb3JnLmFwYWNoZS5zc2hkLmNsaWVudC5rZXl2ZXJpZmllciIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudDt2ZXJzaW9uPSI2LjAuMSIKIEltcG9ydC1QYWNrYWdlOiBuZXQuaTJwLmNyeXB0by5lZGRzYTt2ZXJzaW9uPSJbMC4zLjAsMC40LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuYWdlbnQ7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCiAgb3JnLmFwYWNoZS5zc2hkLmNsaWVudDt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKQEAgLTcxLDYgKzczLDcgQEAKICBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuYnVmZmVyO3ZlcnNpb249IlsyLjcuMCwyLjguMCkiLAogIG9yZy5hcGFjaGUuc3NoZC5jb21tb24udXRpbC5jbG9zZWFibGU7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCiAgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbi51dGlsLmlvO3ZlcnNpb249IlsyLjcuMCwyLjguMCkiLAorIG9yZy5hcGFjaGUuc3NoZC5jb21tb24udXRpbC5pby5mdW5jdG9yczt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuaW8ucmVzb3VyY2U7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCiAgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbi51dGlsLmxvZ2dpbmc7dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCiAgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbi51dGlsLm5ldDt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKQEAgLTgwLDEyICs4MywxMiBAQAogIG9yZy5hcGFjaGUuc3NoZC5zZnRwO3ZlcnNpb249IlsyLjcuMCwyLjguMCkiLAogIG9yZy5hcGFjaGUuc3NoZC5zZnRwLmNsaWVudDt2ZXJzaW9uPSJbMi43LjAsMi44LjApIiwKICBvcmcuYXBhY2hlLnNzaGQuc2Z0cC5jb21tb247dmVyc2lvbj0iWzIuNy4wLDIuOC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5mbm1hdGNoO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2g7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm5sczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmZubWF0Y2g7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubmxzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuc2xmNGo7dmVyc2lvbj0iWzEuNy4wLDIuMC4wKSIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GCmluZGV4IDExZDhjYTcuLmI3NzBiOTAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgpAQCAtMyw1ICszLDUgQEAKIEJ1bmRsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUgLSBTb3VyY2VzCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUuc291cmNlCiBCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1FY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlO3ZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiO3Jvb3RzPSIuIgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgorRWNsaXBzZS1Tb3VyY2VCdW5kbGU6IG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZTt2ZXJzaW9uPSI2LjAuMS5xdWFsaWZpZXIiO3Jvb3RzPSIuIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL1JFQURNRS5tZCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9SRUFETUUubWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2JhODdhYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9SRUFETUUubWQKQEAgLTAsMCArMSw2MSBAQAorIyBKR2l0IFNTSCBzdXBwb3J0IHZpYSBBcGFjaGUgTUlOQSBzc2hkCisKK1RoaXMgYnVuZGxlIHByb3ZpZGVzIGFuIGltcGxlbWVudGF0aW9uIG9mIGdpdCB0cmFuc3BvcnQgb3ZlciBTU0ggaW1wbGVtZW50ZWQgdmlhCitbQXBhY2hlIE1JTkEgc3NoZF0oaHR0cHM6Ly9taW5hLmFwYWNoZS5vcmcvc3NoZC1wcm9qZWN0LykuCisKKyMjIFNlcnZpY2UgcmVnaXN0cmF0aW9uCisKK1RoaXMgYnVuZGxlIGRlY2xhcmVzIGEgc2VydmljZSBmb3IgdGhlIGBqYXZhLnV0aWwuU2VydmljZUxvYWRlcmAgZm9yIGludGVyZmFjZQorYG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5Tc2hTZXNzaW9uRmFjdG9yeWAuIFRoZSBjb3JlIEpHaXQgYnVuZGxlIHVzZXMgdGhlIHNlcnZpY2UKK2xvYWRlciB0byBwaWNrIHVwIGFuIGltcGxlbWVudGF0aW9uIG9mIHRoYXQgaW50ZXJmYWNlLgorCitOb3RlIHRoYXQgSkdpdCBzaW1wbHkgdXNlcyB0aGUgZmlyc3QgYFNzaFNlc3Npb25GYWN0b3J5YCBwcm92aWRlZCBieSB0aGUgYFNlcnZpY2VMb2FkZXJgLgorCitJZiB0aGUgc2VydmljZSBsb2FkZXIgY2Fubm90IGZpbmQgdGhlIHNlc3Npb24gZmFjdG9yeSwgZWl0aGVyIGVuc3VyZSB0aGF0IHRoZSBzZXJ2aWNlCitkZWNsYXJhdGlvbiBpcyBvbiB0aGUgQ2xhc3NwYXRoIG9mIGJ1bmRsZSBgb3JnLmVjbGlwc2UuamdpdGAsIG9yIHNldCB0aGUgZmFjdG9yeSBleHBsaWNpdGx5Cisoc2VlIGJlbG93KS4KKworSW4gYW4gT1NHaSBlbnZpcm9ubWVudCwgb25lIG1pZ2h0IG5lZWQgYSBzZXJ2aWNlIGxvYWRlciBicmlkZ2UsIG9yIGhhdmUgYSBsaXR0bGUgT1NHaQorZnJhZ21lbnQgZm9yIGJ1bmRsZSBgb3JnLmVjbGlwc2UuamdpdGAgdGhhdCBwdXRzIHRoZSByaWdodCBzZXJ2aWNlIGRlY2xhcmF0aW9uIG9udG8gdGhlCitDbGFzc3BhdGggb2YgdGhhdCBidW5kbGUuIChPU0dpIGZyYWdtZW50cyBiZWNvbWUgcGFydCBvZiB0aGUgQ2xhc3NwYXRoIG9mIHRoZWlyIGhvc3QKK2J1bmRsZS4pCisKKyMjIENvbmZpZ3VyaW5nIGFuIFNTSCBpbXBsZW1lbnRhdGlvbiBmb3IgSkdpdAorCitUaGUgc2ltcGxlc3Qgd2F5IHRvIHNldCBhbiBTU0ggaW1wbGVtZW50YXRpb24gZm9yIEpHaXQgaXMgdG8gaW5zdGFsbCBpdCBnbG9iYWxseSB2aWEKK2BTc2hTZXNzaW9uRmFjdG9yeS5zZXRJbnN0YW5jZSgpYC4gVGhpcyBpbnN0YW5jZSB3aWxsIGJlIHVzZWQgYnkgSkdpdCBmb3IgYWxsIFNTSAorY29ubmVjdGlvbnMgYnkgZGVmYXVsdC4KKworSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBzZXQgdGhlIFNTSCBpbXBsZW1lbnRhdGlvbiBpbmRpdmlkdWFsbHkgZm9yIGFueSBnaXQgY29tbWFuZAordGhhdCBuZWVkcyBhIHRyYW5zcG9ydCAoYFRyYW5zcG9ydENvbW1hbmRgKSB2aWEgYSBgb3JnLmVjbGlwc2UuamdpdC5hcGkuVHJhbnNwb3J0Q29uZmlnQ2FsbGJhY2tgLgorCitUbyBkbyBzbywgc2V0IHRoZSB3YW50ZWQgYFNzaFNlc3Npb25GYWN0b3J5YCBvbiB0aGUgU1NIIHRyYW5zcG9ydCwgbGlrZToKKworYGBgamF2YQorU3NoU2Vzc2lvbkZhY3RvcnkgY3VzdG9tRmFjdG9yeSA9IC4uLjsgLy8gR2V0IGl0IGZyb20gd2hlcmV2ZXIKK0ZldGNoQ29tbWFuZCBmZXRjaCA9IGdpdC5mZXRjaCgpCisgIC5zZXRUcmFuc3BvcnRDb25maWdDYWxsYmFjayh0cmFuc3BvcnQgLT4geworICAgIGlmICh0cmFuc3BvcnQgaW5zdGFuY2VvZiBTc2hUcmFuc3BvcnQpIHsKKyAgICAgICgoU3NoVHJhbnNwb3J0KSB0cmFuc3BvcnQpLnNldFNzaFNlc3Npb25GYWN0b3J5KGN1c3RvbUZhY3RvcnkpOworICAgIH0KKyAgfSkKKyAgLi4uCisgIC5jYWxsKCk7CitgYGAKKworIyMgVXNpbmcgYSBkaWZmZXJlbnQgU1NIIGltcGxlbWVudGF0aW9uCisKK1RvIHVzZSBhIGRpZmZlcmVudCBTU0ggaW1wbGVtZW50YXRpb246CisKKyogRG8gbm90IGluY2x1ZGUgdGhpcyBidW5kbGUgaW4geW91ciBwcm9kdWN0LgorKiBJbmNsdWRlIHRoZSBidW5kbGUgb2YgdGhlIGFsdGVybmF0ZSBpbXBsZW1lbnRhdGlvbi4KKyAgICAqIElmIHRoZSBzZXJ2aWNlIGxvYWRlciBmaW5kcyB0aGUgYWx0ZXJuYXRlIGltcGxlbWVudGF0aW9uLCBub3RoaW5nIG1vcmUgaXMgbmVlZGVkLgorICAgICogT3RoZXJ3aXNlIGVuc3VyZSB0aGUgc2VydmljZSBkZWNsYXJhdGlvbiBmcm9tIHRoZSBvdGhlciBidW5kbGUgaXMgb24gdGhlIENsYXNzcGF0aCBvZiBidW5kbGUgYG9yZy5lY2xpcHNlLmpnaXRgLAorICAgICogb3Igc2V0IHRoZSBgU3NoU2Vzc2lvbkZhY3RvcnlgIGZvciBKR2l0IGV4cGxpY2l0bHkgKHNlZSBhYm92ZSkuCisKKyMjIFVzaW5nIGFuIGV4dGVybmFsIFNTSCBleGVjdXRhYmxlCisKK0pHaXQgaGFzIGJ1aWx0LWluIHN1cHBvcnQgZm9yIG5vdCB1c2luZyBhbnkgSmF2YSBTU0ggaW1wbGVtZW50YXRpb24gYnV0IGFuIGV4dGVybmFsIFNTSAorZXhlY3V0YWJsZS4gVG8gdXNlIGFuIGV4dGVybmFsIFNTSCBleGVjdXRhYmxlLCBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGUgKipHSVRfU1NIKiogdG8KK3RoZSBwYXRoIG9mIHRoZSBleGVjdXRhYmxlLiBKR2l0IHdpbGwgY3JlYXRlIGEgc3ViLXByb2Nlc3MgdG8gcnVuIHRoZSBleGVjdXRhYmxlIGFuZAorY29tbXVuaWNhdGUgd2l0aCB0aGlzIHN1Yi1wcm9jZXNzIHRvIHBlcmZvcm0gdGhlIGdpdCBvcGVyYXRpb24uCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9wb20ueG1sCmluZGV4IDA1MjQ1MzguLjM0MGNjYTEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZTwvYXJ0aWZhY3RJZD4KQEAgLTEwNSwxNSArMTA1LDE1IEBACiAKICAgICAgIDxwbHVnaW4+CiAgICAgICAgIDxncm91cElkPm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczwvZ3JvdXBJZD4KLSAgICAgICAgICA8YXJ0aWZhY3RJZD5tYXZlbi1zb3VyY2UtcGx1Z2luPC9hcnRpZmFjdElkPgotICAgICAgICAgIDxpbmhlcml0ZWQ+dHJ1ZTwvaW5oZXJpdGVkPgotICAgICAgICAgIDxleGVjdXRpb25zPgotICAgICAgICAgICAgPGV4ZWN1dGlvbj4KLSAgICAgICAgICAgICAgPGlkPmF0dGFjaC1zb3VyY2VzPC9pZD4KLSAgICAgICAgICAgICAgPHBoYXNlPnByb2Nlc3MtY2xhc3NlczwvcGhhc2U+Ci0gICAgICAgICAgICAgIDxnb2Fscz4KLSAgICAgICAgICAgICAgICA8Z29hbD5qYXI8L2dvYWw+Ci0gICAgICAgICAgICAgIDwvZ29hbHM+CisgICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLXNvdXJjZS1wbHVnaW48L2FydGlmYWN0SWQ+CisgICAgICAgIDxpbmhlcml0ZWQ+dHJ1ZTwvaW5oZXJpdGVkPgorICAgICAgICA8ZXhlY3V0aW9ucz4KKyAgICAgICAgICA8ZXhlY3V0aW9uPgorICAgICAgICAgICAgPGlkPmF0dGFjaC1zb3VyY2VzPC9pZD4KKyAgICAgICAgICAgIDxwaGFzZT5wcm9jZXNzLWNsYXNzZXM8L3BoYXNlPgorICAgICAgICAgICAgPGdvYWxzPgorICAgICAgICAgICAgICA8Z29hbD5qYXI8L2dvYWw+CisgICAgICAgICAgICA8L2dvYWxzPgogICAgICAgICAgICAgPGNvbmZpZ3VyYXRpb24+CiAgICAgICAgICAgICAgIDxhcmNoaXZlPgogICAgICAgICAgICAgICAgIDxtYW5pZmVzdEZpbGU+JHtzb3VyY2UtYnVuZGxlLW1hbmlmZXN0fTwvbWFuaWZlc3RGaWxlPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3Jlc291cmNlcy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL1NzaGRUZXh0LnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvcmVzb3VyY2VzL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvU3NoZFRleHQucHJvcGVydGllcwppbmRleCBkZWZjYmRjLi4yYmJhNzM2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvcmVzb3VyY2VzL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvU3NoZFRleHQucHJvcGVydGllcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvcmVzb3VyY2VzL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvU3NoZFRleHQucHJvcGVydGllcwpAQCAtMTksNiArMTksNyBAQAogaWRlbnRpdHlGaWxlTXVsdGlwbGVLZXlzPU11bHRpcGxlIGtleSBwYWlycyBmb3VuZCBpbiBpZGVudGl0eSB7MH0KIGlkZW50aXR5RmlsZU5vdEZvdW5kPVNraXBwaW5nIGlkZW50aXR5ICcnezB9Jyc6IGZpbGUgbm90IGZvdW5kCiBpZGVudGl0eUZpbGVVbnN1cHBvcnRlZEZvcm1hdD1VbnN1cHBvcnRlZCBmb3JtYXQgaW4gaWRlbnRpdHkgezB9CitpbnZhbGlkU2lnbmF0dXJlQWxnb3JpdGhtPVNpZ25hdHVyZSBhbGdvcml0aG0gJyd7MH0nJyBpcyBub3QgdmFsaWQgZm9yIGEga2V5IG9mIHR5cGUgJyd7MX0nJwoga2V4U2VydmVyS2V5SW52YWxpZD1TZXJ2ZXIga2V5IGRpZCBub3QgdmFsaWRhdGUKIGtleUVuY3J5cHRlZE1zZz1LZXkgJyd7MH0nJyBpcyBlbmNyeXB0ZWQuIEVudGVyIHRoZSBwYXNzcGhyYXNlIHRvIGRlY3J5cHQgaXQuCiBrZXlFbmNyeXB0ZWRQcm9tcHQ9UGFzc3BocmFzZQpAQCAtODQsNiArODUsMTAgQEAKIHNlcnZlcklkV2l0aE51bD1TZXJ2ZXIgaWRlbnRpZmljYXRpb24gY29udGFpbnMgYSBOVUwgY2hhcmFjdGVyOiB7MH0KIHNlc3Npb25DbG9zZUZhaWxlZD1DbG9zaW5nIHRoZSBzZXNzaW9uIGZhaWxlZAogc2Vzc2lvbldpdGhvdXRVc2VybmFtZT1TU0ggc2Vzc2lvbiBjcmVhdGVkIHdpdGhvdXQgdXNlciBuYW1lOyBjYW5ub3QgYXV0aGVudGljYXRlCitzc2hBZ2VudFJlcGx5TGVuZ3RoRXJyb3I9SW52YWxpZCBTU0ggYWdlbnQgcmVwbHkgbWVzc2FnZSBsZW5ndGggezB9IGFmdGVyIGNvbW1hbmQgezF9Citzc2hBZ2VudFJlcGx5VW5leHBlY3RlZD1VbmV4cGVjdGVkIHJlcGx5IGZyb20gc3NoLWFnZW50OiB7MH0KK3NzaEFnZW50U2hvcnRSZWFkQnVmZmVyPVNob3J0IHJlYWQgZnJvbSBTU0ggYWdlbnQKK3NzaEFnZW50V3JvbmdOdW1iZXJPZktleXM9SW52YWxpZCBudW1iZXIgb2YgU1NIIGFnZW50IGtleXM6IHswfQogc3NoQ2xvc2luZ0Rvd249QXBhY2hlIE1JTkEgc3NoZCBzZXNzaW9uIGZhY3RvcnkgaXMgY2xvc2luZyBkb3duOyBjYW5ub3QgY3JlYXRlIG5ldyBzc2ggc2Vzc2lvbnMgb24gdGhpcyBmYWN0b3J5CiBzc2hDb21tYW5kVGltZW91dD17MH0gdGltZWQgb3V0IGFmdGVyIHsxfSBzZWNvbmRzIHdoaWxlIG9wZW5pbmcgdGhlIGNoYW5uZWwKIHNzaFByb2Nlc3NTdGlsbFJ1bm5pbmc9ezB9IGlzIG5vdCB5ZXQgY29tcGxldGVkLCBjYW5ub3QgZ2V0IGV4aXQgY29kZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL0pHaXRDbGllbnRTZXNzaW9uLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvSkdpdENsaWVudFNlc3Npb24uamF2YQppbmRleCBmN2IzN2Q3Li5lMmRiYjRjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvSkdpdENsaWVudFNlc3Npb24uamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvSkdpdENsaWVudFNlc3Npb24uamF2YQpAQCAtNzEsOSArNzEsOSBAQCBwdWJsaWMgY2xhc3MgSkdpdENsaWVudFNlc3Npb24gZXh0ZW5kcyBDbGllbnRTZXNzaW9uSW1wbCB7CiAKIAkvKioKIAkgKiBEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBtYXhpbXVtIG51bWJlciBvZiBieXRlcyB0byByZWFkIGluIHRoZSBpbml0aWFsCi0JICogcHJvdG9jb2wgdmVyc2lvbiBleGNoYW5nZS4gNjRrYiBpcyB3aGF0IE9wZW5TU0ggPCA4LjAgcmVhZDsgT3BlblNTSCA4LjAKLQkgKiBjaGFuZ2VkIGl0IHRvIDhNYiwgYnV0IHRoYXQgc2VlbXMgZXhjZXNzaXZlIGZvciB0aGUgcHVycG9zZSBzdGF0ZWQgaW4gUkZDCi0JICogNDI1My4gVGhlIEFwYWNoZSBNSU5BIHNzaGQgZGVmYXVsdCBpbgorCSAqIHByb3RvY29sIHZlcnNpb24gZXhjaGFuZ2UuIDY0a2IgaXMgd2hhdCBPcGVuU1NIICZsdDsgOC4wIHJlYWQ7IE9wZW5TU0gKKwkgKiA4LjAgY2hhbmdlZCBpdCB0byA4TWIsIGJ1dCB0aGF0IHNlZW1zIGV4Y2Vzc2l2ZSBmb3IgdGhlIHB1cnBvc2Ugc3RhdGVkIGluCisJICogUkZDIDQyNTMuIFRoZSBBcGFjaGUgTUlOQSBzc2hkIGRlZmF1bHQgaW4KIAkgKiB7QGxpbmsgb3JnLmFwYWNoZS5zc2hkLmNvcmUuQ29yZU1vZHVsZVByb3BlcnRpZXMjTUFYX0lERU5USUZJQ0FUSU9OX1NJWkV9CiAJICogaXMgMTZrYi4KIAkgKi8KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9KR2l0UHVibGljS2V5QXV0aGVudGljYXRpb24uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9KR2l0UHVibGljS2V5QXV0aGVudGljYXRpb24uamF2YQppbmRleCAwOGRhMThmLi5jMDgyYTlhIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvSkdpdFB1YmxpY0tleUF1dGhlbnRpY2F0aW9uLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL0pHaXRQdWJsaWNLZXlBdXRoZW50aWNhdGlvbi5qYXZhCkBAIC0xMiw4ICsxMiwxMiBAQAogaW1wb3J0IHN0YXRpYyBqYXZhLnRleHQuTWVzc2FnZUZvcm1hdC5mb3JtYXQ7CiBpbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaENvbnN0YW50cy5QVUJLRVlfQUNDRVBURURfQUxHT1JJVEhNUzsKIAoraW1wb3J0IGphdmEudXRpbC5JdGVyYXRvcjsKIGltcG9ydCBqYXZhLnV0aWwuTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTm9TdWNoRWxlbWVudEV4Y2VwdGlvbjsKIAoraW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jbGllbnQuYXV0aC5wdWJrZXkuS2V5QWdlbnRJZGVudGl0eTsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY2xpZW50LmF1dGgucHVia2V5LlB1YmxpY0tleUlkZW50aXR5OwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jbGllbnQuYXV0aC5wdWJrZXkuVXNlckF1dGhQdWJsaWNLZXk7CiBpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmNsaWVudC5jb25maWcuaG9zdHMuSG9zdENvbmZpZ0VudHJ5OwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jbGllbnQuc2Vzc2lvbi5DbGllbnRTZXNzaW9uOwpAQCAtMzgsNyArNDIsNyBAQCBwdWJsaWMgdm9pZCBpbml0KENsaWVudFNlc3Npb24gcmF3U2Vzc2lvbiwgU3RyaW5nIHNlcnZpY2UpCiAJCQl0aHJvdyBuZXcgSWxsZWdhbFN0YXRlRXhjZXB0aW9uKCJXcm9uZyBzZXNzaW9uIHR5cGU6ICIgLy8kTk9OLU5MUy0xJAogCQkJCQkrIHJhd1Nlc3Npb24uZ2V0Q2xhc3MoKS5nZXRDYW5vbmljYWxOYW1lKCkpOwogCQl9Ci0JCUpHaXRDbGllbnRTZXNzaW9uIHNlc3Npb24gPSAoKEpHaXRDbGllbnRTZXNzaW9uKSByYXdTZXNzaW9uKTsKKwkJSkdpdENsaWVudFNlc3Npb24gc2Vzc2lvbiA9IChKR2l0Q2xpZW50U2Vzc2lvbikgcmF3U2Vzc2lvbjsKIAkJSG9zdENvbmZpZ0VudHJ5IGhvc3RDb25maWcgPSBzZXNzaW9uLmdldEhvc3RDb25maWdFbnRyeSgpOwogCQkvLyBTZXQgc2lnbmF0dXJlIGFsZ29yaXRobXMgZm9yIHB1YmxpYyBrZXkgYXV0aGVudGljYXRpb24KIAkJU3RyaW5nIHB1YmtleUFsZ29zID0gaG9zdENvbmZpZy5nZXRQcm9wZXJ0eShQVUJLRVlfQUNDRVBURURfQUxHT1JJVEhNUyk7CkBAIC02MCw1ICs2NCw0OCBAQCBwdWJsaWMgdm9pZCBpbml0KENsaWVudFNlc3Npb24gcmF3U2Vzc2lvbiwgU3RyaW5nIHNlcnZpY2UpCiAJCS8vIElmIHdlIGRvbid0IHNldCBzaWduYXR1cmUgZmFjdG9yaWVzIGhlcmUsIHRoZSBkZWZhdWx0IG9uZXMgZnJvbSB0aGUKIAkJLy8gc2Vzc2lvbiB3aWxsIGJlIHVzZWQuCiAJCXN1cGVyLmluaXQoc2Vzc2lvbiwgc2VydmljZSk7CisJCS8vIEluIHNzaGQgMi43LjAsIHdlIGVuZCB1cCBub3cgd2l0aCBhIGtleSBpdGVyYXRvciB0aGF0IHVzZXMga2V5cworCQkvLyBwcm92aWRlZCBieSBhbiBzc2gtYWdlbnQgZXZlbiBpZiBJZGVudGl0aWVzT25seSBpcyB0cnVlLiBTbyBpZgorCQkvLyBuZWVkZWQsIGZpbHRlciBvdXQgYW55IEtleUFnZW50SWRlbnRpdHkuCisJCWlmIChob3N0Q29uZmlnLmlzSWRlbnRpdGllc09ubHkoKSkgeworCQkJSXRlcmF0b3I8UHVibGljS2V5SWRlbnRpdHk+IG9yaWdpbmFsID0ga2V5czsKKwkJCS8vIFRoZSBvcmlnaW5hbCBpdGVyYXRvciB3aWxsIGFscmVhZHkgaGF2ZSBnb3R0ZW4gdGhlIGlkZW50aXRpZXMKKwkJCS8vIGZyb20gdGhlIGFnZW50LiBVbmZvcnR1bmF0ZWx5IHRoZXJlJ3Mgbm90aGluZyB3ZSBjYW4gZG8gYWJvdXQKKwkJCS8vIHRoYXQ7IGl0J2xsIGhhdmUgdG8gYmUgZml4ZWQgdXBzdHJlYW0uIChBcyB3aWxsLCB1bHRpbWF0ZWx5LAorCQkJLy8gcmVzcGVjdGluZyBpc0lkZW50aXRpZXNPbmx5KCkuKSBBdCBsZWFzdCB3ZSBjYW4gc2ltcGx5IG5vdAorCQkJLy8gdXNlIHRoZSBrZXlzIHRoZSBhZ2VudCBwcm92aWRlZC4KKwkJCS8vCisJCQkvLyBTZWUgaHR0cHM6Ly9pc3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9TU0hELTEyMTgKKwkJCWtleXMgPSBuZXcgSXRlcmF0b3I8PigpIHsKKworCQkJCXByaXZhdGUgUHVibGljS2V5SWRlbnRpdHkgdmFsdWU7CisKKwkJCQlAT3ZlcnJpZGUKKwkJCQlwdWJsaWMgYm9vbGVhbiBoYXNOZXh0KCkgeworCQkJCQlpZiAodmFsdWUgIT0gbnVsbCkgeworCQkJCQkJcmV0dXJuIHRydWU7CisJCQkJCX0KKwkJCQkJUHVibGljS2V5SWRlbnRpdHkgbmV4dCA9IG51bGw7CisJCQkJCXdoaWxlIChvcmlnaW5hbC5oYXNOZXh0KCkpIHsKKwkJCQkJCW5leHQgPSBvcmlnaW5hbC5uZXh0KCk7CisJCQkJCQlpZiAoIShuZXh0IGluc3RhbmNlb2YgS2V5QWdlbnRJZGVudGl0eSkpIHsKKwkJCQkJCQl2YWx1ZSA9IG5leHQ7CisJCQkJCQkJcmV0dXJuIHRydWU7CisJCQkJCQl9CisJCQkJCX0KKwkJCQkJcmV0dXJuIGZhbHNlOworCQkJCX0KKworCQkJCUBPdmVycmlkZQorCQkJCXB1YmxpYyBQdWJsaWNLZXlJZGVudGl0eSBuZXh0KCkgeworCQkJCQlpZiAoaGFzTmV4dCgpKSB7CisJCQkJCQlQdWJsaWNLZXlJZGVudGl0eSByZXN1bHQgPSB2YWx1ZTsKKwkJCQkJCXZhbHVlID0gbnVsbDsKKwkJCQkJCXJldHVybiByZXN1bHQ7CisJCQkJCX0KKwkJCQkJdGhyb3cgbmV3IE5vU3VjaEVsZW1lbnRFeGNlcHRpb24oKTsKKwkJCQl9CisJCQl9OworCQl9CiAJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL0pHaXRTc2hDbGllbnQuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9KR2l0U3NoQ2xpZW50LmphdmEKaW5kZXggYWUxMmMyMC4uNzFlOGU2MSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL0pHaXRTc2hDbGllbnQuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvSkdpdFNzaENsaWVudC5qYXZhCkBAIC0zMiw4ICszMiwxMCBAQAogaW1wb3J0IGphdmEudXRpbC5NYXA7CiBpbXBvcnQgamF2YS51dGlsLk5vU3VjaEVsZW1lbnRFeGNlcHRpb247CiBpbXBvcnQgamF2YS51dGlsLk9iamVjdHM7CitpbXBvcnQgamF2YS51dGlsLmZ1bmN0aW9uLlN1cHBsaWVyOwogaW1wb3J0IGphdmEudXRpbC5zdHJlYW0uQ29sbGVjdG9yczsKIAoraW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5hZ2VudC5Tc2hBZ2VudEZhY3Rvcnk7CiBpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmNsaWVudC5Tc2hDbGllbnQ7CiBpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmNsaWVudC5jb25maWcuaG9zdHMuSG9zdENvbmZpZ0VudHJ5OwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jbGllbnQuZnV0dXJlLkNvbm5lY3RGdXR1cmU7CkBAIC0xMDAsNiArMTAyLDggQEAgcHVibGljIGNsYXNzIEpHaXRTc2hDbGllbnQgZXh0ZW5kcyBTc2hDbGllbnQgewogCiAJcHJpdmF0ZSBQcm94eURhdGFGYWN0b3J5IHByb3h5RGF0YWJhc2U7CiAKKwlwcml2YXRlIFN1cHBsaWVyPFNzaEFnZW50RmFjdG9yeT4gYWdlbnRGYWN0b3J5U3VwcGxpZXIgPSAoKSAtPiBudWxsOworCiAJQE92ZXJyaWRlCiAJcHJvdGVjdGVkIFNlc3Npb25GYWN0b3J5IGNyZWF0ZVNlc3Npb25GYWN0b3J5KCkgewogCQkvLyBPdmVycmlkZSB0aGUgcGFyZW50J3MgZGVmYXVsdApAQCAtMjIzLDcgKzIyNyw3IEBAIHByaXZhdGUgSW5ldFNvY2tldEFkZHJlc3MgY29uZmlndXJlUHJveHkoUHJveHlEYXRhIHByb3h5RGF0YSwKIAlwcml2YXRlIFNzaEZ1dHVyZUxpc3RlbmVyPElvQ29ubmVjdEZ1dHVyZT4gY3JlYXRlQ29ubmVjdENvbXBsZXRpb25MaXN0ZW5lcigKIAkJCUNvbm5lY3RGdXR1cmUgY29ubmVjdEZ1dHVyZSwgU3RyaW5nIHVzZXJuYW1lLAogCQkJSW5ldFNvY2tldEFkZHJlc3MgYWRkcmVzcywgSG9zdENvbmZpZ0VudHJ5IGhvc3RDb25maWcpIHsKLQkJcmV0dXJuIG5ldyBTc2hGdXR1cmVMaXN0ZW5lcjxJb0Nvbm5lY3RGdXR1cmU+KCkgeworCQlyZXR1cm4gbmV3IFNzaEZ1dHVyZUxpc3RlbmVyPD4oKSB7CiAKIAkJCUBPdmVycmlkZQogCQkJcHVibGljIHZvaWQgb3BlcmF0aW9uQ29tcGxldGUoSW9Db25uZWN0RnV0dXJlIGZ1dHVyZSkgewpAQCAtMzY4LDYgKzM3MiwyMiBAQCBwdWJsaWMgQ3JlZGVudGlhbHNQcm92aWRlciBnZXRDcmVkZW50aWFsc1Byb3ZpZGVyKCkgewogCQlyZXR1cm4gY3JlZGVudGlhbHNQcm92aWRlcjsKIAl9CiAKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3NoQWdlbnRGYWN0b3J5IGdldEFnZW50RmFjdG9yeSgpIHsKKwkJcmV0dXJuIGFnZW50RmFjdG9yeVN1cHBsaWVyLmdldCgpOworCX0KKworCUBPdmVycmlkZQorCXByb3RlY3RlZCB2b2lkIGNoZWNrQ29uZmlnKCkgeworCQkvLyBUaGUgc3VwZXIgY2xhc3MgcmVxdWlyZXMgY2hhbm5lbCBmYWN0b3JpZXMgZm9yIGFnZW50IGZvcndhcmRpbmcgaWYgYQorCQkvLyBmYWN0b3J5IGZvciBhbiBTU0ggYWdlbnQgaXMgc2V0LiBXZSBoYXZlbid0IGltcGxlbWVudGVkIHRoaXMgeWV0LCBhbmQKKwkJLy8gd2UgZG9uJ3QgZG8gU1NIIGFnZW50IGZvcndhcmRpbmcgZm9yIG5vdy4gVW5mb3J0dW5hdGVseSwgdGhlcmUgaXMgbm8KKwkJLy8gd2F5IHRvIGJ5cGFzcyB0aGlzIGNoZWNrIGluIHRoZSBzdXBlciBjbGFzcyBleGNlcHQgbWFraW5nCisJCS8vIGdldEFnZW50RmFjdG9yeSgpIHJldHVybiBudWxsIHVudGlsIGFmdGVyIHRoZSBjaGVjay4KKwkJc3VwZXIuY2hlY2tDb25maWcoKTsKKwkJYWdlbnRGYWN0b3J5U3VwcGxpZXIgPSBzdXBlcjo6Z2V0QWdlbnRGYWN0b3J5OworCX0KKwogCS8qKgogCSAqIEEge0BsaW5rIFNlc3Npb25GYWN0b3J5fSB0byBjcmVhdGUgb3VyIG93biBzcGVjaWFsaXplZAogCSAqIHtAbGluayBKR2l0Q2xpZW50U2Vzc2lvbn1zLgpAQCAtNDA2LDcgKzQyNiw3IEBAIHB1YmxpYyBDb21iaW5lZEtleUlkZW50aXR5UHJvdmlkZXIoCiAKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyBJdGVyYWJsZTxLZXlQYWlyPiBsb2FkS2V5cyhTZXNzaW9uQ29udGV4dCBjb250ZXh0KSB7Ci0JCQlyZXR1cm4gKCkgLT4gbmV3IEl0ZXJhdG9yPEtleVBhaXI+KCkgeworCQkJcmV0dXJuICgpIC0+IG5ldyBJdGVyYXRvcjw+KCkgewogCiAJCQkJcHJpdmF0ZSBJdGVyYXRvcjxLZXlJZGVudGl0eVByb3ZpZGVyPiBmYWN0b3JpZXMgPSBwcm92aWRlcnMKIAkJCQkJCS5pdGVyYXRvcigpOwpAQCAtNDM5LDcgKzQ1OSw3IEBAIHB1YmxpYyBib29sZWFuIGhhc05leHQoKSB7CiAKIAkJCQlAT3ZlcnJpZGUKIAkJCQlwdWJsaWMgS2V5UGFpciBuZXh0KCkgewotCQkJCQlpZiAoaGFzRWxlbWVudCA9PSBudWxsICYmICFoYXNOZXh0KCkKKwkJCQkJaWYgKChoYXNFbGVtZW50ID09IG51bGwgJiYgIWhhc05leHQoKSkKIAkJCQkJCQl8fCAhaGFzRWxlbWVudC5ib29sZWFuVmFsdWUoKSkgewogCQkJCQkJdGhyb3cgbmV3IE5vU3VjaEVsZW1lbnRFeGNlcHRpb24oKTsKIAkJCQkJfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL09wZW5Tc2hTZXJ2ZXJLZXlEYXRhYmFzZS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL09wZW5Tc2hTZXJ2ZXJLZXlEYXRhYmFzZS5qYXZhCmluZGV4IDg1ZTQwNmYuLmQ4YmY0NDkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9PcGVuU3NoU2VydmVyS2V5RGF0YWJhc2UuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvT3BlblNzaFNlcnZlcktleURhdGFiYXNlLmphdmEKQEAgLTM0LDYgKzM0LDcgQEAKIGltcG9ydCBqYXZhLnV0aWwuTGlua2VkTGlzdDsKIGltcG9ydCBqYXZhLnV0aWwuTGlzdDsKIGltcG9ydCBqYXZhLnV0aWwuTWFwOworaW1wb3J0IGphdmEudXRpbC5SYW5kb207CiBpbXBvcnQgamF2YS51dGlsLlRyZWVTZXQ7CiBpbXBvcnQgamF2YS51dGlsLmNvbmN1cnJlbnQuQ29uY3VycmVudEhhc2hNYXA7CiBpbXBvcnQgamF2YS51dGlsLmZ1bmN0aW9uLlN1cHBsaWVyOwpAQCAtMTM4LDYgKzEzOSw4IEBAIHB1YmxpYyBjbGFzcyBPcGVuU3NoU2VydmVyS2V5RGF0YWJhc2UKIAogCXByaXZhdGUgZmluYWwgTGlzdDxIb3N0S2V5RmlsZT4gZGVmYXVsdEZpbGVzID0gbmV3IEFycmF5TGlzdDw+KCk7CiAKKwlwcml2YXRlIFJhbmRvbSBwcm5nOworCiAJLyoqCiAJICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgT3BlblNzaFNlcnZlcktleURhdGFiYXNlfS4KIAkgKgpAQCAtNjgwLDcgKzY4Myw5IEBAIHByaXZhdGUgU3RyaW5nIGNyZWF0ZUhvc3RLZXlMaW5lKENvbGxlY3Rpb248U3NoZFNvY2tldEFkZHJlc3M+IHBhdHRlcm5zLAogCQkJLy8gb3IgdG8gQXBhY2hlIE1JTkEgc3NoZC4KIAkJCU5hbWVkRmFjdG9yeTxNYWM+IGRpZ2VzdGVyID0gS25vd25Ib3N0RGlnZXN0LlNIQTE7CiAJCQlNYWMgbWFjID0gZGlnZXN0ZXIuY3JlYXRlKCk7Ci0JCQlTZWN1cmVSYW5kb20gcHJuZyA9IG5ldyBTZWN1cmVSYW5kb20oKTsKKwkJCWlmIChwcm5nID09IG51bGwpIHsKKwkJCQlwcm5nID0gbmV3IFNlY3VyZVJhbmRvbSgpOworCQkJfQogCQkJYnl0ZVtdIHNhbHQgPSBuZXcgYnl0ZVttYWMuZ2V0RGVmYXVsdEJsb2NrU2l6ZSgpXTsKIAkJCWZvciAoU3NoZFNvY2tldEFkZHJlc3MgYWRkcmVzcyA6IHBhdHRlcm5zKSB7CiAJCQkJaWYgKHJlc3VsdC5sZW5ndGgoKSA+IDApIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9Tc2hkVGV4dC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL1NzaGRUZXh0LmphdmEKaW5kZXggYzBmNTcxOS4uMDBlZTYyZCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL1NzaGRUZXh0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL1NzaGRUZXh0LmphdmEKQEAgLTEsMyArMSwxMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCwgMjAyMSBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KIHBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZDsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubmxzLk5MUzsKQEAgLTM5LDYgKzQ4LDcgQEAgcHVibGljIHN0YXRpYyBTc2hkVGV4dCBnZXQoKSB7CiAJLyoqKi8gcHVibGljIFN0cmluZyBpZGVudGl0eUZpbGVNdWx0aXBsZUtleXM7CiAJLyoqKi8gcHVibGljIFN0cmluZyBpZGVudGl0eUZpbGVOb3RGb3VuZDsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGlkZW50aXR5RmlsZVVuc3VwcG9ydGVkRm9ybWF0OworCS8qKiovIHB1YmxpYyBTdHJpbmcgaW52YWxpZFNpZ25hdHVyZUFsZ29yaXRobTsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGtleFNlcnZlcktleUludmFsaWQ7CiAJLyoqKi8gcHVibGljIFN0cmluZyBrZXlFbmNyeXB0ZWRNc2c7CiAJLyoqKi8gcHVibGljIFN0cmluZyBrZXlFbmNyeXB0ZWRQcm9tcHQ7CkBAIC05Niw2ICsxMDYsMTAgQEAgcHVibGljIHN0YXRpYyBTc2hkVGV4dCBnZXQoKSB7CiAJLyoqKi8gcHVibGljIFN0cmluZyBzZXJ2ZXJJZFdpdGhOdWw7CiAJLyoqKi8gcHVibGljIFN0cmluZyBzZXNzaW9uQ2xvc2VGYWlsZWQ7CiAJLyoqKi8gcHVibGljIFN0cmluZyBzZXNzaW9uV2l0aG91dFVzZXJuYW1lOworCS8qKiovIHB1YmxpYyBTdHJpbmcgc3NoQWdlbnRSZXBseUxlbmd0aEVycm9yOworCS8qKiovIHB1YmxpYyBTdHJpbmcgc3NoQWdlbnRSZXBseVVuZXhwZWN0ZWQ7CisJLyoqKi8gcHVibGljIFN0cmluZyBzc2hBZ2VudFNob3J0UmVhZEJ1ZmZlcjsKKwkvKioqLyBwdWJsaWMgU3RyaW5nIHNzaEFnZW50V3JvbmdOdW1iZXJPZktleXM7CiAJLyoqKi8gcHVibGljIFN0cmluZyBzc2hDbG9zaW5nRG93bjsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIHNzaENvbW1hbmRUaW1lb3V0OwogCS8qKiovIHB1YmxpYyBTdHJpbmcgc3NoUHJvY2Vzc1N0aWxsUnVubmluZzsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Db25uZWN0b3JGYWN0b3J5UHJvdmlkZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Db25uZWN0b3JGYWN0b3J5UHJvdmlkZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYmE3YTc2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L0Nvbm5lY3RvckZhY3RvcnlQcm92aWRlci5qYXZhCkBAIC0wLDAgKzEsNjEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKgorICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorICoKKyAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmFnZW50OworCitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworaW1wb3J0IGphdmEudXRpbC5TZXJ2aWNlTG9hZGVyOworCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5OworCisvKioKKyAqIFByb3ZpZGVzIGEge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9wqBvYnRhaW5lZCB2aWEgdGhlIHtAbGluayBTZXJ2aWNlTG9hZGVyfS4KKyAqLworcHVibGljIGZpbmFsIGNsYXNzIENvbm5lY3RvckZhY3RvcnlQcm92aWRlciB7CisKKwlwcml2YXRlIHN0YXRpYyB2b2xhdGlsZSBDb25uZWN0b3JGYWN0b3J5IElOU1RBTkNFID0gbG9hZERlZmF1bHRGYWN0b3J5KCk7CisKKwlwcml2YXRlIHN0YXRpYyBDb25uZWN0b3JGYWN0b3J5IGxvYWREZWZhdWx0RmFjdG9yeSgpIHsKKwkJU2VydmljZUxvYWRlcjxDb25uZWN0b3JGYWN0b3J5PiBsb2FkZXIgPSBTZXJ2aWNlTG9hZGVyCisJCQkJLmxvYWQoQ29ubmVjdG9yRmFjdG9yeS5jbGFzcyk7CisJCUl0ZXJhdG9yPENvbm5lY3RvckZhY3Rvcnk+IGl0ZXIgPSBsb2FkZXIuaXRlcmF0b3IoKTsKKwkJd2hpbGUgKGl0ZXIuaGFzTmV4dCgpKSB7CisJCQlDb25uZWN0b3JGYWN0b3J5IGNhbmRpZGF0ZSA9IGl0ZXIubmV4dCgpOworCQkJaWYgKGNhbmRpZGF0ZS5pc1N1cHBvcnRlZCgpKSB7CisJCQkJcmV0dXJuIGNhbmRpZGF0ZTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKworCX0KKworCS8qKgorCSAqIFJldHJpZXZlcyB0aGUgY3VycmVudGx5IHNldCBkZWZhdWx0IHtAbGluayBDb25uZWN0b3JGYWN0b3J5fS4KKwkgKgorCSAqIEByZXR1cm4gdGhlIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fSwgb3Ige0Bjb2RlIG51bGx9IGlmIG5vbmUuCisJICovCisJcHVibGljIHN0YXRpYyBDb25uZWN0b3JGYWN0b3J5IGdldERlZmF1bHRGYWN0b3J5KCkgeworCQlyZXR1cm4gSU5TVEFOQ0U7CisJfQorCisJLyoqCisJICogU2V0cyB0aGUgZGVmYXVsdCB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0uCisJICoKKwkgKiBAcGFyYW0gZmFjdG9yeQorCSAqICAgICAgICAgICAge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9IHRvIHVzZSwgb3Ige0Bjb2RlIG51bGx9wqB0byB1c2UgdGhlCisJICogICAgICAgICAgICBmYWN0b3J5IGRpc2NvdmVyZWQgdmlhIHRoZSB7QGxpbmsgU2VydmljZUxvYWRlcn0uCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIHNldERlZmF1bHRGYWN0b3J5KENvbm5lY3RvckZhY3RvcnkgZmFjdG9yeSkgeworCQlJTlNUQU5DRSA9IGZhY3RvcnkgPT0gbnVsbCA/IGxvYWREZWZhdWx0RmFjdG9yeSgpIDogZmFjdG9yeTsKKwl9CisKKwlwcml2YXRlIENvbm5lY3RvckZhY3RvcnlQcm92aWRlcigpIHsKKwkJLy8gTm8gaW5zdGFudGlhdGlvbgorCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9KR2l0U3NoQWdlbnRGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvSkdpdFNzaEFnZW50RmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFlZDJhYjkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYWdlbnQvSkdpdFNzaEFnZW50RmFjdG9yeS5qYXZhCkBAIC0wLDAgKzEsNzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKgorICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorICoKKyAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmFnZW50OworCitpbXBvcnQgamF2YS5pby5GaWxlOworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmFnZW50LlNzaEFnZW50OworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5hZ2VudC5Tc2hBZ2VudEZhY3Rvcnk7CitpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmFnZW50LlNzaEFnZW50U2VydmVyOworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24uRmFjdG9yeU1hbmFnZXI7CitpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmNvbW1vbi5jaGFubmVsLkNoYW5uZWxGYWN0b3J5OworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24uc2Vzc2lvbi5Db25uZWN0aW9uU2VydmljZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zLk5vbk51bGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5OworCisvKioKKyAqIEEgZmFjdG9yeSBmb3IgY3JlYXRpbmcge0BsaW5rIFNzaEFnZW50Q2xpZW50fXMuCisgKi8KK3B1YmxpYyBjbGFzcyBKR2l0U3NoQWdlbnRGYWN0b3J5IGltcGxlbWVudHMgU3NoQWdlbnRGYWN0b3J5IHsKKworCXByaXZhdGUgZmluYWwgQE5vbk51bGwgQ29ubmVjdG9yRmFjdG9yeSBmYWN0b3J5OworCisJcHJpdmF0ZSBmaW5hbCBGaWxlIGhvbWVEaXI7CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBKR2l0U3NoQWdlbnRGYWN0b3J5fS4KKwkgKgorCSAqIEBwYXJhbSBmYWN0b3J5CisJICogICAgICAgICAgICB7QGxpbmsgSkdpdFNzaEFnZW50RmFjdG9yeX0gdG8gd3JhcAorCSAqIEBwYXJhbSBob21lRGlyCisJICogICAgICAgICAgICBmb3Igb2J0YWluaW5nIHRoZSBjdXJyZW50IGxvY2FsIHVzZXIncyBob21lIGRpcmVjdG9yeQorCSAqLworCXB1YmxpYyBKR2l0U3NoQWdlbnRGYWN0b3J5KEBOb25OdWxsIENvbm5lY3RvckZhY3RvcnkgZmFjdG9yeSwKKwkJCUZpbGUgaG9tZURpcikgeworCQl0aGlzLmZhY3RvcnkgPSBmYWN0b3J5OworCQl0aGlzLmhvbWVEaXIgPSBob21lRGlyOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBMaXN0PENoYW5uZWxGYWN0b3J5PiBnZXRDaGFubmVsRm9yd2FyZGluZ0ZhY3RvcmllcygKKwkJCUZhY3RvcnlNYW5hZ2VyIG1hbmFnZXIpIHsKKwkJLy8gTm8gYWdlbnQgZm9yd2FyZGluZyBzdXBwb3J0ZWQgeWV0LgorCQlyZXR1cm4gQ29sbGVjdGlvbnMuZW1wdHlMaXN0KCk7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIFNzaEFnZW50IGNyZWF0ZUNsaWVudChGYWN0b3J5TWFuYWdlciBtYW5hZ2VyKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQkvLyBzc2hkIDIuOC4wIHdpbGwgcGFzcyB1cyB0aGUgc2Vzc2lvbiBoZXJlLiBBdCB0aGF0IHBvaW50LCB3ZSBjYW4gZ2V0CisJCS8vIHRoZSBIb3N0Q29uZmlnRW50cnkgYW5kIGV4dHJhY3QgYW5kIGhhbmRsZSB0aGUgSWRlbnRpdHlBZ2VudCBzZXR0aW5nLgorCQkvLyBGb3Igbm93LCBwYXNzIG51bGwgdG8gbGV0IHRoZSBDb25uZWN0b3JGYWN0b3J5IGRvIGl0cyBkZWZhdWx0CisJCS8vIGJlaGF2aW9yIChQYWdlYW50IG9uIFdpbmRvd3MsIFNTSF9BVVRIX1NPQ0sgb24gVW5peGVzIHdpdGggdGhlCisJCS8vIGpnaXQtYnVpbHRpbiBmYWN0b3J5KS4KKwkJcmV0dXJuIG5ldyBTc2hBZ2VudENsaWVudChmYWN0b3J5LmNyZWF0ZShudWxsLCBob21lRGlyKSk7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIFNzaEFnZW50U2VydmVyIGNyZWF0ZVNlcnZlcihDb25uZWN0aW9uU2VydmljZSBzZXJ2aWNlKQorCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJLy8gVGhpcyBzaG91bGQgYmUgY2FsbGVkIGluIGEgc2VydmVyIG9ubHkuCisJCXJldHVybiBudWxsOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Tc2hBZ2VudENsaWVudC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2FnZW50L1NzaEFnZW50Q2xpZW50LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDg0ODNlNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Tc2hBZ2VudENsaWVudC5qYXZhCkBAIC0wLDAgKzEsMjQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxLCBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudDsKKworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS5zZWN1cml0eS5LZXlQYWlyOworaW1wb3J0IGphdmEuc2VjdXJpdHkuUHVibGljS2V5OworaW1wb3J0IGphdmEudGV4dC5NZXNzYWdlRm9ybWF0OworaW1wb3J0IGphdmEudXRpbC5BYnN0cmFjdE1hcDsKK2ltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0OworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uczsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTWFwOworaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LmF0b21pYy5BdG9taWNCb29sZWFuOworCitpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLmFnZW50LlNzaEFnZW50OworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5hZ2VudC5Tc2hBZ2VudENvbnN0YW50czsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLlNzaEV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLmNvbmZpZy5rZXlzLktleVV0aWxzOworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24uc2Vzc2lvbi5TZXNzaW9uQ29udGV4dDsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuYnVmZmVyLkJ1ZmZlcjsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuYnVmZmVyLkJ1ZmZlckV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuYnVmZmVyLkJ1ZmZlclV0aWxzOworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24udXRpbC5idWZmZXIuQnl0ZUFycmF5QnVmZmVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuU3NoZFRleHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3I7CitpbXBvcnQgb3JnLnNsZjRqLkxvZ2dlcjsKK2ltcG9ydCBvcmcuc2xmNGouTG9nZ2VyRmFjdG9yeTsKKworLyoqCisgKiBBIGNsaWVudCBmb3IgYW4gU1NIMiBhZ2VudC4gVGhpcyBjbGllbnQgc3VwcG9ydHMgb25seSBxdWVyeWluZyBpZGVudGl0aWVzIGFuZAorICogc2lnbmF0dXJlIHJlcXVlc3RzLgorICoKKyAqIEBzZWUgPGEgaHJlZj0iaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL2RyYWZ0LW1pbGxlci1zc2gtYWdlbnQtMDQiPlNTSAorICogICAgICBBZ2VudCBQcm90b2NvbCwgUkZDIGRyYWZ0PC9hPgorICovCitwdWJsaWMgY2xhc3MgU3NoQWdlbnRDbGllbnQgaW1wbGVtZW50cyBTc2hBZ2VudCB7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBMb2dnZXIgTE9HID0gTG9nZ2VyRmFjdG9yeQorCQkJLmdldExvZ2dlcihTc2hBZ2VudENsaWVudC5jbGFzcyk7CisKKwkvLyBPcGVuU1NIIGxpbWl0CisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgaW50IE1BWF9OVU1CRVJfT0ZfS0VZUyA9IDIwNDg7CisKKwlwcml2YXRlIGZpbmFsIEF0b21pY0Jvb2xlYW4gY2xvc2VkID0gbmV3IEF0b21pY0Jvb2xlYW4oKTsKKworCXByaXZhdGUgZmluYWwgQ29ubmVjdG9yIGNvbm5lY3RvcjsKKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIFNzaEFnZW50Q2xpZW50fSBpbXBsZW1lbnRpbmcgdGhlIFNTSDIgc3NoIGFnZW50CisJICogcHJvdG9jb2wsIHVzaW5nIHRoZSBnaXZlbiB7QGxpbmsgQ29ubmVjdG9yfSB0byBjb25uZWN0IHRvIHRoZSBTU0ggYWdlbnQKKwkgKiBhbmQgdG8gZXhjaGFuZ2UgbWVzc2FnZXMuCisJICoKKwkgKiBAcGFyYW0gY29ubmVjdG9yCisJICogICAgICAgICAgICB7QGxpbmsgQ29ubmVjdG9yfSB0byB1c2UKKwkgKi8KKwlwdWJsaWMgU3NoQWdlbnRDbGllbnQoQ29ubmVjdG9yIGNvbm5lY3RvcikgeworCQl0aGlzLmNvbm5lY3RvciA9IGNvbm5lY3RvcjsKKwl9CisKKwlwcml2YXRlIGJvb2xlYW4gb3Blbihib29sZWFuIGRlYnVnZ2luZykgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJaWYgKGNsb3NlZC5nZXQoKSkgeworCQkJaWYgKGRlYnVnZ2luZykgeworCQkJCUxPRy5kZWJ1ZygiU1NIIGFnZW50IGNvbm5lY3Rpb24gYWxyZWFkeSBjbG9zZWQiKTsgLy8kTk9OLU5MUy0xJAorCQkJfQorCQkJcmV0dXJuIGZhbHNlOworCQl9CisJCWJvb2xlYW4gY29ubmVjdGVkID0gY29ubmVjdG9yICE9IG51bGwgJiYgY29ubmVjdG9yLmNvbm5lY3QoKTsKKwkJaWYgKCFjb25uZWN0ZWQpIHsKKwkJCWlmIChkZWJ1Z2dpbmcpIHsKKwkJCQlMT0cuZGVidWcoIk5vIFNTSCBhZ2VudCAoU1NIX0FVVEhfU09DSyBub3Qgc2V0KSIpOyAvLyROT04tTkxTLTEkCisJCQl9CisJCX0KKwkJcmV0dXJuIGNvbm5lY3RlZDsKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBjbG9zZSgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCWlmICghY2xvc2VkLmdldEFuZFNldCh0cnVlKSAmJiBjb25uZWN0b3IgIT0gbnVsbCkgeworCQkJY29ubmVjdG9yLmNsb3NlKCk7CisJCX0KKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgSXRlcmFibGU8PyBleHRlbmRzIE1hcC5FbnRyeTxQdWJsaWNLZXksIFN0cmluZz4+IGdldElkZW50aXRpZXMoKQorCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJYm9vbGVhbiBkZWJ1Z2dpbmcgPSBMT0cuaXNEZWJ1Z0VuYWJsZWQoKTsKKwkJaWYgKCFvcGVuKGRlYnVnZ2luZykpIHsKKwkJCXJldHVybiBDb2xsZWN0aW9ucy5lbXB0eUxpc3QoKTsKKwkJfQorCQlpZiAoZGVidWdnaW5nKSB7CisJCQlMT0cuZGVidWcoIlJlcXVlc3RpbmcgaWRlbnRpdGllcyBmcm9tIFNTSCBhZ2VudCIpOyAvLyROT04tTkxTLTEkCisJCX0KKwkJdHJ5IHsKKwkJCUJ1ZmZlciByZXBseSA9IHJwYygKKwkJCQkJU3NoQWdlbnRDb25zdGFudHMuU1NIMl9BR0VOVENfUkVRVUVTVF9JREVOVElUSUVTKTsKKwkJCWJ5dGUgY21kID0gcmVwbHkuZ2V0Qnl0ZSgpOworCQkJaWYgKGNtZCAhPSBTc2hBZ2VudENvbnN0YW50cy5TU0gyX0FHRU5UX0lERU5USVRJRVNfQU5TV0VSKSB7CisJCQkJdGhyb3cgbmV3IFNzaEV4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKKwkJCQkJCVNzaGRUZXh0LmdldCgpLnNzaEFnZW50UmVwbHlVbmV4cGVjdGVkLAorCQkJCQkJU3NoQWdlbnRDb25zdGFudHMuZ2V0Q29tbWFuZE1lc3NhZ2VOYW1lKGNtZCkpKTsKKwkJCX0KKwkJCWludCBudW1iZXJPZktleXMgPSByZXBseS5nZXRJbnQoKTsKKwkJCWlmIChudW1iZXJPZktleXMgPCAwIHx8IG51bWJlck9mS2V5cyA+IE1BWF9OVU1CRVJfT0ZfS0VZUykgeworCQkJCXRocm93IG5ldyBTc2hFeGNlcHRpb24oTWVzc2FnZUZvcm1hdC5mb3JtYXQoCisJCQkJCQlTc2hkVGV4dC5nZXQoKS5zc2hBZ2VudFdyb25nTnVtYmVyT2ZLZXlzLAorCQkJCQkJSW50ZWdlci50b1N0cmluZyhudW1iZXJPZktleXMpKSk7CisJCQl9CisJCQlpZiAobnVtYmVyT2ZLZXlzID09IDApIHsKKwkJCQlpZiAoZGVidWdnaW5nKSB7CisJCQkJCUxPRy5kZWJ1ZygiU1NIIGFnZW50IGhhcyBubyBrZXlzIik7IC8vJE5PTi1OTFMtMSQKKwkJCQl9CisJCQkJcmV0dXJuIENvbGxlY3Rpb25zLmVtcHR5TGlzdCgpOworCQkJfQorCQkJaWYgKGRlYnVnZ2luZykgeworCQkJCUxPRy5kZWJ1ZygiR290IHt9IGtleShzKSBmcm9tIHRoZSBTU0ggYWdlbnQiLCAvLyROT04tTkxTLTEkCisJCQkJCQlJbnRlZ2VyLnRvU3RyaW5nKG51bWJlck9mS2V5cykpOworCQkJfQorCQkJYm9vbGVhbiB0cmFjaW5nID0gTE9HLmlzVHJhY2VFbmFibGVkKCk7CisJCQlMaXN0PE1hcC5FbnRyeTxQdWJsaWNLZXksIFN0cmluZz4+IGtleXMgPSBuZXcgQXJyYXlMaXN0PD4oCisJCQkJCW51bWJlck9mS2V5cyk7CisJCQlmb3IgKGludCBpID0gMDsgaSA8IG51bWJlck9mS2V5czsgaSsrKSB7CisJCQkJUHVibGljS2V5IGtleSA9IHJlcGx5LmdldFB1YmxpY0tleSgpOworCQkJCVN0cmluZyBjb21tZW50ID0gcmVwbHkuZ2V0U3RyaW5nKCk7CisJCQkJaWYgKHRyYWNpbmcpIHsKKwkJCQkJTE9HLnRyYWNlKCJHb3QgU1NIIGFnZW50IHt9IGtleToge30ge30iLCAvLyROT04tTkxTLTEkCisJCQkJCQkJS2V5VXRpbHMuZ2V0S2V5VHlwZShrZXkpLAorCQkJCQkJCUtleVV0aWxzLmdldEZpbmdlclByaW50KGtleSksIGNvbW1lbnQpOworCQkJCX0KKwkJCQlrZXlzLmFkZChuZXcgQWJzdHJhY3RNYXAuU2ltcGxlSW1tdXRhYmxlRW50cnk8PihrZXksIGNvbW1lbnQpKTsKKwkJCX0KKwkJCXJldHVybiBrZXlzOworCQl9IGNhdGNoIChCdWZmZXJFeGNlcHRpb24gZSkgeworCQkJdGhyb3cgbmV3IFNzaEV4Y2VwdGlvbihTc2hkVGV4dC5nZXQoKS5zc2hBZ2VudFNob3J0UmVhZEJ1ZmZlciwgZSk7CisJCX0KKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTWFwLkVudHJ5PFN0cmluZywgYnl0ZVtdPiBzaWduKFNlc3Npb25Db250ZXh0IHNlc3Npb24sIFB1YmxpY0tleSBrZXksCisJCQlTdHJpbmcgYWxnb3JpdGhtLCBieXRlW10gZGF0YSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJYm9vbGVhbiBkZWJ1Z2dpbmcgPSBMT0cuaXNEZWJ1Z0VuYWJsZWQoKTsKKwkJU3RyaW5nIGtleVR5cGUgPSBLZXlVdGlscy5nZXRLZXlUeXBlKGtleSk7CisJCVN0cmluZyBzaWduYXR1cmVBbGdvcml0aG07CisJCWlmIChhbGdvcml0aG0gIT0gbnVsbCkgeworCQkJaWYgKCFLZXlVdGlscy5nZXRDYW5vbmljYWxLZXlUeXBlKGFsZ29yaXRobSkuZXF1YWxzKGtleVR5cGUpKSB7CisJCQkJdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKKwkJCQkJCVNzaGRUZXh0LmdldCgpLmludmFsaWRTaWduYXR1cmVBbGdvcml0aG0sIGFsZ29yaXRobSwKKwkJCQkJCWtleVR5cGUpKTsKKwkJCX0KKwkJCXNpZ25hdHVyZUFsZ29yaXRobSA9IGFsZ29yaXRobTsKKwkJfSBlbHNlIHsKKwkJCXNpZ25hdHVyZUFsZ29yaXRobSA9IGtleVR5cGU7CisJCX0KKwkJaWYgKCFvcGVuKGRlYnVnZ2luZykpIHsKKwkJCXJldHVybiBudWxsOworCQl9CisJCWludCBmbGFncyA9IDA7CisJCXN3aXRjaCAoc2lnbmF0dXJlQWxnb3JpdGhtKSB7CisJCWNhc2UgS2V5VXRpbHMuUlNBX1NIQTUxMl9LRVlfVFlQRV9BTElBUzoKKwkJY2FzZSBLZXlVdGlscy5SU0FfU0hBNTEyX0NFUlRfVFlQRV9BTElBUzoKKwkJCWZsYWdzID0gNDsKKwkJCWJyZWFrOworCQljYXNlIEtleVV0aWxzLlJTQV9TSEEyNTZfS0VZX1RZUEVfQUxJQVM6CisJCWNhc2UgS2V5VXRpbHMuUlNBX1NIQTI1Nl9DRVJUX1RZUEVfQUxJQVM6CisJCQlmbGFncyA9IDI7CisJCQlicmVhazsKKwkJZGVmYXVsdDoKKwkJCWJyZWFrOworCQl9CisJCUJ5dGVBcnJheUJ1ZmZlciBtc2cgPSBuZXcgQnl0ZUFycmF5QnVmZmVyKCk7CisJCW1zZy5wdXRJbnQoMCk7CisJCW1zZy5wdXRCeXRlKFNzaEFnZW50Q29uc3RhbnRzLlNTSDJfQUdFTlRDX1NJR05fUkVRVUVTVCk7CisJCW1zZy5wdXRQdWJsaWNLZXkoa2V5KTsKKwkJbXNnLnB1dEJ5dGVzKGRhdGEpOworCQltc2cucHV0SW50KGZsYWdzKTsKKwkJaWYgKGRlYnVnZ2luZykgeworCQkJTE9HLmRlYnVnKAorCQkJCQkic2lnbih7fSk6IHNpZ25pbmcgcmVxdWVzdCB0byBTU0ggYWdlbnQgZm9yIHt9IGtleSwge30gc2lnbmF0dXJlOyBmbGFncz17fSIsIC8vJE5PTi1OTFMtMSQKKwkJCQkJc2Vzc2lvbiwga2V5VHlwZSwgc2lnbmF0dXJlQWxnb3JpdGhtLAorCQkJCQlJbnRlZ2VyLnRvU3RyaW5nKGZsYWdzKSk7CisJCX0KKwkJQnVmZmVyIHJlcGx5ID0gcnBjKFNzaEFnZW50Q29uc3RhbnRzLlNTSDJfQUdFTlRDX1NJR05fUkVRVUVTVCwKKwkJCQltc2cuZ2V0Q29tcGFjdERhdGEoKSk7CisJCWJ5dGUgY21kID0gcmVwbHkuZ2V0Qnl0ZSgpOworCQlpZiAoY21kICE9IFNzaEFnZW50Q29uc3RhbnRzLlNTSDJfQUdFTlRfU0lHTl9SRVNQT05TRSkgeworCQkJdGhyb3cgbmV3IFNzaEV4Y2VwdGlvbigKKwkJCQkJTWVzc2FnZUZvcm1hdC5mb3JtYXQoU3NoZFRleHQuZ2V0KCkuc3NoQWdlbnRSZXBseVVuZXhwZWN0ZWQsCisJCQkJCQkJU3NoQWdlbnRDb25zdGFudHMuZ2V0Q29tbWFuZE1lc3NhZ2VOYW1lKGNtZCkpKTsKKwkJfQorCQl0cnkgeworCQkJQnVmZmVyIHNpZ25hdHVyZVJlcGx5ID0gbmV3IEJ5dGVBcnJheUJ1ZmZlcihyZXBseS5nZXRCeXRlcygpKTsKKwkJCVN0cmluZyBhY3R1YWxBbGdvcml0aG0gPSBzaWduYXR1cmVSZXBseS5nZXRTdHJpbmcoKTsKKwkJCWJ5dGVbXSBzaWduYXR1cmUgPSBzaWduYXR1cmVSZXBseS5nZXRCeXRlcygpOworCQkJaWYgKExPRy5pc1RyYWNlRW5hYmxlZCgpKSB7CisJCQkJTE9HLnRyYWNlKAorCQkJCQkJInNpZ24oe30pOiBzaWduYXR1cmUgcmVwbHkgZnJvbSBTU0ggYWdlbnQgZm9yIHt9IGtleToge30gc2lnbmF0dXJlPXt9IiwgLy8kTk9OLU5MUy0xJAorCQkJCQkJc2Vzc2lvbiwga2V5VHlwZSwgYWN0dWFsQWxnb3JpdGhtLAorCQkJCQkJQnVmZmVyVXRpbHMudG9IZXgoJzonLCBzaWduYXR1cmUpKTsKKworCQkJfSBlbHNlIGlmIChMT0cuaXNEZWJ1Z0VuYWJsZWQoKSkgeworCQkJCUxPRy5kZWJ1ZygKKwkJCQkJCSJzaWduKHt9KTogc2lnbmF0dXJlIHJlcGx5IGZyb20gU1NIIGFnZW50IGZvciB7fSBrZXksIHt9IHNpZ25hdHVyZSIsIC8vJE5PTi1OTFMtMSQKKwkJCQkJCXNlc3Npb24sIGtleVR5cGUsIGFjdHVhbEFsZ29yaXRobSk7CisJCQl9CisJCQlyZXR1cm4gbmV3IEFic3RyYWN0TWFwLlNpbXBsZUltbXV0YWJsZUVudHJ5PD4oYWN0dWFsQWxnb3JpdGhtLAorCQkJCQlzaWduYXR1cmUpOworCQl9IGNhdGNoIChCdWZmZXJFeGNlcHRpb24gZSkgeworCQkJdGhyb3cgbmV3IFNzaEV4Y2VwdGlvbihTc2hkVGV4dC5nZXQoKS5zc2hBZ2VudFNob3J0UmVhZEJ1ZmZlciwgZSk7CisJCX0KKwl9CisKKwlwcml2YXRlIEJ1ZmZlciBycGMoYnl0ZSBjb21tYW5kLCBieXRlW10gbWVzc2FnZSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJcmV0dXJuIG5ldyBCeXRlQXJyYXlCdWZmZXIoY29ubmVjdG9yLnJwYyhjb21tYW5kLCBtZXNzYWdlKSk7CisJfQorCisJcHJpdmF0ZSBCdWZmZXIgcnBjKGJ5dGUgY29tbWFuZCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJcmV0dXJuIG5ldyBCeXRlQXJyYXlCdWZmZXIoY29ubmVjdG9yLnJwYyhjb21tYW5kKSk7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gaXNPcGVuKCkgeworCQlyZXR1cm4gIWNsb3NlZC5nZXQoKTsKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBhZGRJZGVudGl0eShLZXlQYWlyIGtleSwgU3RyaW5nIGNvbW1lbnQpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCXRocm93IG5ldyBVbnN1cHBvcnRlZE9wZXJhdGlvbkV4Y2VwdGlvbigpOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHJlbW92ZUlkZW50aXR5KFB1YmxpY0tleSBrZXkpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCXRocm93IG5ldyBVbnN1cHBvcnRlZE9wZXJhdGlvbkV4Y2VwdGlvbigpOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHJlbW92ZUFsbElkZW50aXRpZXMoKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQl0aHJvdyBuZXcgVW5zdXBwb3J0ZWRPcGVyYXRpb25FeGNlcHRpb24oKTsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYXV0aC9CYXNpY0F1dGhlbnRpY2F0aW9uLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvYXV0aC9CYXNpY0F1dGhlbnRpY2F0aW9uLmphdmEKaW5kZXggZWFlMGQ3NS4uZTVmODg0ZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL2F1dGgvQmFzaWNBdXRoZW50aWNhdGlvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9hdXRoL0Jhc2ljQXV0aGVudGljYXRpb24uamF2YQpAQCAtOTUsOCArOTUsOCBAQCBwdWJsaWMgZmluYWwgdm9pZCBjbG9zZSgpIHsKIAogCUBPdmVycmlkZQogCXB1YmxpYyBmaW5hbCB2b2lkIHN0YXJ0KCkgdGhyb3dzIEV4Y2VwdGlvbiB7Ci0JCWlmICh1c2VyICE9IG51bGwgJiYgIXVzZXIuaXNFbXB0eSgpCi0JCQkJfHwgcGFzc3dvcmQgIT0gbnVsbCAmJiBwYXNzd29yZC5sZW5ndGggPiAwKSB7CisJCWlmICgodXNlciAhPSBudWxsICYmICF1c2VyLmlzRW1wdHkoKSkKKwkJCQl8fCAocGFzc3dvcmQgIT0gbnVsbCAmJiBwYXNzd29yZC5sZW5ndGggPiAwKSkgewogCQkJcmV0dXJuOwogCQl9CiAJCWFza0NyZWRlbnRpYWxzKCk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvcHJveHkvQWJzdHJhY3RDbGllbnRQcm94eUNvbm5lY3Rvci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL3Byb3h5L0Fic3RyYWN0Q2xpZW50UHJveHlDb25uZWN0b3IuamF2YQppbmRleCA1NGUyY2JjLi5hOGUzM2FmIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvcHJveHkvQWJzdHJhY3RDbGllbnRQcm94eUNvbm5lY3Rvci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9wcm94eS9BYnN0cmFjdENsaWVudFByb3h5Q29ubmVjdG9yLmphdmEKQEAgLTMxLDcgKzMxLDcgQEAgcHVibGljIGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Q2xpZW50UHJveHlDb25uZWN0b3IKIAkJCS50b01pbGxpcygzMEwpOwogCiAJLyoqIEd1YXJkcyB7QGxpbmsgI2RvbmV9IGFuZCB7QGxpbmsgI2J1ZmZlcmVkQ29tbWFuZHN9LiAqLwotCXByaXZhdGUgT2JqZWN0IGxvY2sgPSBuZXcgT2JqZWN0KCk7CisJcHJpdmF0ZSBmaW5hbCBPYmplY3QgbG9jayA9IG5ldyBPYmplY3QoKTsKIAogCXByaXZhdGUgYm9vbGVhbiBkb25lOwogCkBAIC0xMDUsNyArMTA1LDcgQEAgcHJvdGVjdGVkIHZvaWQgaW5pdChDbGllbnRTZXNzaW9uIHNlc3Npb24pIHsKIAkvKioKIAkgKiBPYnRhaW5zIHRoZSB0aW1lb3V0IGZvciB0aGUgd2hvbGUgcmVzdCBvZiB0aGUgcHJveHkgY29ubmVjdGlvbiBwcm90b2NvbC4KIAkgKgotCSAqIEByZXR1cm4gdGhlIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLCBhbHdheXMgPiAwTAorCSAqIEByZXR1cm4gdGhlIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLCBhbHdheXMgJmd0OyAwTAogCSAqLwogCXByb3RlY3RlZCBsb25nIGdldFRpbWVvdXQoKSB7CiAJCWxvbmcgbGFzdCA9IGxhc3RQcm94eU9wZXJhdGlvblRpbWU7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvcHJveHkvSHR0cENsaWVudENvbm5lY3Rvci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL3Byb3h5L0h0dHBDbGllbnRDb25uZWN0b3IuamF2YQppbmRleCBlNWQxZTgwLi5iN2RlYjI5IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvcHJveHkvSHR0cENsaWVudENvbm5lY3Rvci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9wcm94eS9IdHRwQ2xpZW50Q29ubmVjdG9yLmphdmEKQEAgLTExMyw4ICsxMTMsOCBAQCBwdWJsaWMgdm9pZCBzZW5kQ2xpZW50UHJveHlNZXRhZGF0YShDbGllbnRTZXNzaW9uIHNzaFNlc3Npb24pCiAJCUlvU2Vzc2lvbiBzZXNzaW9uID0gc3NoU2Vzc2lvbi5nZXRJb1Nlc3Npb24oKTsKIAkJc2Vzc2lvbi5hZGRDbG9zZUZ1dHVyZUxpc3RlbmVyKGYgLT4gY2xvc2UoKSk7CiAJCVN0cmluZ0J1aWxkZXIgbXNnID0gY29ubmVjdCgpOwotCQlpZiAocHJveHlVc2VyICE9IG51bGwgJiYgIXByb3h5VXNlci5pc0VtcHR5KCkKLQkJCQl8fCBwcm94eVBhc3N3b3JkICE9IG51bGwgJiYgcHJveHlQYXNzd29yZC5sZW5ndGggPiAwKSB7CisJCWlmICgocHJveHlVc2VyICE9IG51bGwgJiYgIXByb3h5VXNlci5pc0VtcHR5KCkpCisJCQkJfHwgKHByb3h5UGFzc3dvcmQgIT0gbnVsbCAmJiBwcm94eVBhc3N3b3JkLmxlbmd0aCA+IDApKSB7CiAJCQlhdXRoZW50aWNhdG9yID0gYmFzaWM7CiAJCQliYXNpYy5zZXRQYXJhbXMobnVsbCk7CiAJCQliYXNpYy5zdGFydCgpOwpAQCAtMjMyLDcgKzIzMiw4IEBAIHByaXZhdGUgdm9pZCBoYW5kbGVNZXNzYWdlKElvU2Vzc2lvbiBzZXNzaW9uLCBMaXN0PFN0cmluZz4gcmVwbHkpCiAJCX0gY2F0Y2ggKEh0dHBQYXJzZXIuUGFyc2VFeGNlcHRpb24gZSkgewogCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKAogCQkJCQlmb3JtYXQoU3NoZFRleHQuZ2V0KCkucHJveHlIdHRwVW5leHBlY3RlZFJlcGx5LAotCQkJCQlwcm94eUFkZHJlc3MsIHJlcGx5LmdldCgwKSkpOworCQkJCQkJCXByb3h5QWRkcmVzcywgcmVwbHkuZ2V0KDApKSwKKwkJCQkJZSk7CiAJCX0KIAl9CiAKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9wcm94eS9IdHRwUGFyc2VyLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvcHJveHkvSHR0cFBhcnNlci5qYXZhCmluZGV4IDA1MDBhNjMuLmVjZTIyYWYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9wcm94eS9IdHRwUGFyc2VyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL3Byb3h5L0h0dHBQYXJzZXIuamF2YQpAQCAtMzEsNiArMzEsMjMgQEAgcHVibGljIHN0YXRpYyBjbGFzcyBQYXJzZUV4Y2VwdGlvbiBleHRlbmRzIEV4Y2VwdGlvbiB7CiAKIAkJcHJpdmF0ZSBzdGF0aWMgZmluYWwgbG9uZyBzZXJpYWxWZXJzaW9uVUlEID0gLTE2MzQwOTAxNDM3MDIwNDg2NDBMOwogCisJCS8qKgorCQkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBQYXJzZUV4Y2VwdGlvbn0gd2l0aG91dCBjYXVzZS4KKwkJICovCisJCXB1YmxpYyBQYXJzZUV4Y2VwdGlvbigpIHsKKwkJCXN1cGVyKCk7CisJCX0KKworCQkvKioKKwkJICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgUGFyc2VFeGNlcHRpb259IHdpdGggdGhlIGdpdmVuIHtAY29kZSBjYXVzZX0uCisJCSAqCisJCSAqIEBwYXJhbSBjYXVzZQorCQkgKiAgICAgICAgICAgIHtAbGluayBUaHJvd2FibGV9IHRoYXQgY2F1c2VkIHRoaXMgZXhjZXB0aW9uLCBvcgorCQkgKiAgICAgICAgICAgIHtAY29kZSBudWxsfcKgaWYgbm9uZQorCQkgKi8KKwkJcHVibGljIFBhcnNlRXhjZXB0aW9uKFRocm93YWJsZSBjYXVzZSkgeworCQkJc3VwZXIoY2F1c2UpOworCQl9CiAJfQogCiAJcHJpdmF0ZSBIdHRwUGFyc2VyKCkgewpAQCAtNjQsNyArODEsNyBAQCBwdWJsaWMgc3RhdGljIFN0YXR1c0xpbmUgcGFyc2VTdGF0dXNMaW5lKFN0cmluZyBsaW5lKQogCQkJcmVzdWx0Q29kZSA9IEludGVnZXIucGFyc2VVbnNpZ25lZEludCgKIAkJCQkJbGluZS5zdWJzdHJpbmcoZmlyc3RCbGFuayArIDEsIHNlY29uZEJsYW5rKSk7CiAJCX0gY2F0Y2ggKE51bWJlckZvcm1hdEV4Y2VwdGlvbiBlKSB7Ci0JCQl0aHJvdyBuZXcgUGFyc2VFeGNlcHRpb24oKTsKKwkJCXRocm93IG5ldyBQYXJzZUV4Y2VwdGlvbihlKTsKIAkJfQogCQkvLyBBZ2FpbiwgYWNjZXB0IGV2ZW4gaWYgdGhlIHJlYXNvbiBpcyBtaXNzaW5nCiAJCVN0cmluZyByZWFzb24gPSAiIjsgLy8kTk9OLU5MUy0xJApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL3Byb3h5L1NvY2tzNUNsaWVudENvbm5lY3Rvci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2hkL3Byb3h5L1NvY2tzNUNsaWVudENvbm5lY3Rvci5qYXZhCmluZGV4IDg4NDRlZmEuLmJiMjI3YmIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoZC9wcm94eS9Tb2NrczVDbGllbnRDb25uZWN0b3IuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaGQvcHJveHkvU29ja3M1Q2xpZW50Q29ubmVjdG9yLmphdmEKQEAgLTk0LDcgKzk0LDcgQEAgcHJpdmF0ZSBlbnVtIFNvY2tzQXV0aGVudGljYXRpb25NZXRob2QgewogCQkvLyBKU09OKDkpLAogCQlOT05FX0FDQ0VQVEFCTEUoMHhGRik7CiAKLQkJcHJpdmF0ZSBieXRlIHZhbHVlOworCQlwcml2YXRlIGZpbmFsIGJ5dGUgdmFsdWU7CiAKIAkJU29ja3NBdXRoZW50aWNhdGlvbk1ldGhvZChpbnQgdmFsdWUpIHsKIAkJCXRoaXMudmFsdWUgPSAoYnl0ZSkgdmFsdWU7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvS2V5UGFzc3dvcmRQcm92aWRlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL0tleVBhc3N3b3JkUHJvdmlkZXIuamF2YQppbmRleCBhY2MxMWNlLi5lZDlmZTM3IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvS2V5UGFzc3dvcmRQcm92aWRlci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9LZXlQYXNzd29yZFByb3ZpZGVyLmphdmEKQEAgLTMxLDcgKzMxLDcgQEAgcHVibGljIGludGVyZmFjZSBLZXlQYXNzd29yZFByb3ZpZGVyIHsKIAkgKiAgICAgICAgICAgIGlkZW50aWZ5aW5nIHRoZSBrZXkgcmVzb3VyY2UgdGhhdCBpcyBiZWluZyBhdHRlbXB0ZWQgdG8gYmUKIAkgKiAgICAgICAgICAgIGxvYWRlZAogCSAqIEBwYXJhbSBhdHRlbXB0Ci0JICogICAgICAgICAgICB0aGUgbnVtYmVyIG9mIHByZXZpb3VzIGF0dGVtcHRzIHRvIGdldCBhIHBhc3NwaHJhc2U7ID49IDAKKwkgKiAgICAgICAgICAgIHRoZSBudW1iZXIgb2YgcHJldmlvdXMgYXR0ZW1wdHMgdG8gZ2V0IGEgcGFzc3BocmFzZTsgJmd0Oz0gMAogCSAqIEByZXR1cm4gdGhlIHBhc3NwaHJhc2UKIAkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCiAJICogICAgICAgICAgICAgaWYgbm8gcGFzc3dvcmQgY2FuIGJlIG9idGFpbmVkCkBAIC00NCw3ICs0NCw3IEBAIHB1YmxpYyBpbnRlcmZhY2UgS2V5UGFzc3dvcmRQcm92aWRlciB7CiAJICoKIAkgKiBAcGFyYW0gbWF4TnVtYmVyT2ZBdHRlbXB0cwogCSAqICAgICAgICAgICAgbnVtYmVyIG9mIHRpbWVzIHRvIGFzayBmb3IgYSBwYXNzcGhyYXNlOwotCSAqICAgICAgICAgICAge0BsaW5rIElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbn0gbWF5IGJlIHRocm93biBpZiA8PSAwCisJICogICAgICAgICAgICB7QGxpbmsgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9ufSBtYXkgYmUgdGhyb3duIGlmICZsdDs9IDAKIAkgKi8KIAl2b2lkIHNldEF0dGVtcHRzKGludCBtYXhOdW1iZXJPZkF0dGVtcHRzKTsKIApAQCAtNTMsNyArNTMsNyBAQCBwdWJsaWMgaW50ZXJmYWNlIEtleVBhc3N3b3JkUHJvdmlkZXIgewogCSAqIGF0dGVtcHRlZCBmb3Igb25lIGlkZW50aXR5IHJlc291cmNlIHRocm91Z2ggdGhpcyBwcm92aWRlci4gVGhlIGRlZmF1bHQKIAkgKiByZXR1cm4gMS4KIAkgKgotCSAqIEByZXR1cm4gdGhlIG51bWJlciBvZiB0aW1lcyB0byBhc2sgZm9yIGEgcGFzc3BocmFzZTsgc2hvdWxkIGJlID49IDEuCisJICogQHJldHVybiB0aGUgbnVtYmVyIG9mIHRpbWVzIHRvIGFzayBmb3IgYSBwYXNzcGhyYXNlOyBzaG91bGQgYmUgJmd0Oz0gMS4KIAkgKi8KIAlkZWZhdWx0IGludCBnZXRBdHRlbXB0cygpIHsKIAkJcmV0dXJuIDE7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvU3NoZFNlc3Npb24uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Tc2hkU2Vzc2lvbi5qYXZhCmluZGV4IDMzYjIzNGIuLmMyNzBiNDQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Tc2hkU2Vzc2lvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Tc2hkU2Vzc2lvbi5qYXZhCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCwgMjAyMCBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICogQ29weXJpZ2h0IChDKSAyMDE4LCAyMDIxIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCiAgKgogICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCiAgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CkBAIC0yOCw3ICsyOCw2IEBACiBpbXBvcnQgamF2YS51dGlsLk1hcDsKIGltcG9ydCBqYXZhLnV0aWwuY29uY3VycmVudC5Db3B5T25Xcml0ZUFycmF5TGlzdDsKIGltcG9ydCBqYXZhLnV0aWwuY29uY3VycmVudC5UaW1lVW5pdDsKLWltcG9ydCBqYXZhLnV0aWwuY29uY3VycmVudC5hdG9taWMuQXRvbWljUmVmZXJlbmNlOwogaW1wb3J0IGphdmEudXRpbC5mdW5jdGlvbi5TdXBwbGllcjsKIGltcG9ydCBqYXZhLnV0aWwucmVnZXguUGF0dGVybjsKIApAQCAtNDQsOSArNDMsOSBAQAogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24uZnV0dXJlLkNsb3NlRnV0dXJlOwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24uZnV0dXJlLlNzaEZ1dHVyZUxpc3RlbmVyOwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24udXRpbC5pby5Jb1V0aWxzOworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24udXRpbC5pby5mdW5jdG9ycy5JT0Z1bmN0aW9uOwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5jb21tb24udXRpbC5uZXQuU3NoZFNvY2tldEFkZHJlc3M7CiBpbXBvcnQgb3JnLmFwYWNoZS5zc2hkLnNmdHAuY2xpZW50LlNmdHBDbGllbnQ7Ci1pbXBvcnQgb3JnLmFwYWNoZS5zc2hkLnNmdHAuY2xpZW50LlNmdHBDbGllbnQuQ2xvc2VhYmxlSGFuZGxlOwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5zZnRwLmNsaWVudC5TZnRwQ2xpZW50LkNvcHlNb2RlOwogaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5zZnRwLmNsaWVudC5TZnRwQ2xpZW50RmFjdG9yeTsKIGltcG9ydCBvcmcuYXBhY2hlLnNzaGQuc2Z0cC5jb21tb24uU2Z0cEV4Y2VwdGlvbjsKQEAgLTIyMCw3ICsyMTksOCBAQCBwcml2YXRlIExpc3Q8VVJJaXNoPiBkZXRlcm1pbmVIb3BzKExpc3Q8VVJJaXNoPiBjdXJyZW50SG9wcywKIAkJCUhvc3RDb25maWdFbnRyeSBob3N0Q29uZmlnLCBTdHJpbmcgaG9zdCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJaWYgKGN1cnJlbnRIb3BzLmlzRW1wdHkoKSkgewogCQkJU3RyaW5nIGp1bXBIb3N0cyA9IGhvc3RDb25maWcuZ2V0UHJvcGVydHkoU3NoQ29uc3RhbnRzLlBST1hZX0pVTVApOwotCQkJaWYgKCFTdHJpbmdVdGlscy5pc0VtcHR5T3JOdWxsKGp1bXBIb3N0cykpIHsKKwkJCWlmICghU3RyaW5nVXRpbHMuaXNFbXB0eU9yTnVsbChqdW1wSG9zdHMpCisJCQkJCSYmICFTc2hDb25zdGFudHMuTk9ORS5lcXVhbHMoanVtcEhvc3RzKSkgewogCQkJCXRyeSB7CiAJCQkJCXJldHVybiBwYXJzZVByb3h5SnVtcChqdW1wSG9zdHMpOwogCQkJCX0gY2F0Y2ggKFVSSVN5bnRheEV4Y2VwdGlvbiBlKSB7CkBAIC00MTYsMjAgKzQxNiw2IEBAIHB1YmxpYyB2b2lkIGRlc3Ryb3koKSB7CiAJCX0KIAl9CiAKLQkvKioKLQkgKiBIZWxwZXIgaW50ZXJmYWNlIGxpa2Uge0BsaW5rIFN1cHBsaWVyfSwgYnV0IHBvc3NpYmx5IHJhaXNpbmcgYW4KLQkgKiB7QGxpbmsgSU9FeGNlcHRpb259LgotCSAqCi0JICogQHBhcmFtIDxUPgotCSAqICAgICAgICAgICAgcmV0dXJuIHR5cGUKLQkgKi8KLQlARnVuY3Rpb25hbEludGVyZmFjZQotCXByaXZhdGUgaW50ZXJmYWNlIEZ0cE9wZXJhdGlvbjxUPiB7Ci0KLQkJVCBjYWxsKCkgdGhyb3dzIElPRXhjZXB0aW9uOwotCi0JfQotCiAJcHJpdmF0ZSBjbGFzcyBTc2hkRnRwQ2hhbm5lbCBpbXBsZW1lbnRzIEZ0cENoYW5uZWwgewogCiAJCXByaXZhdGUgU2Z0cENsaWVudCBmdHA7CkBAIC00ODUsOSArNDcxLDkgQEAgcHJpdmF0ZSBTdHJpbmcgYWJzb2x1dGUoU3RyaW5nIHBhdGgpIHsKIAkJCXJldHVybiBwYXRoOwogCQl9CiAKLQkJcHJpdmF0ZSA8VD4gVCBtYXAoRnRwT3BlcmF0aW9uPFQ+IG9wKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQlwcml2YXRlIDxUPiBUIG1hcChJT0Z1bmN0aW9uPFZvaWQsIFQ+IG9wKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQkJdHJ5IHsKLQkJCQlyZXR1cm4gb3AuY2FsbCgpOworCQkJCXJldHVybiBvcC5hcHBseShudWxsKTsKIAkJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIGUpIHsKIAkJCQlpZiAoZSBpbnN0YW5jZW9mIFNmdHBFeGNlcHRpb24pIHsKIAkJCQkJdGhyb3cgbmV3IEZ0cENoYW5uZWwuRnRwRXhjZXB0aW9uKGUuZ2V0TG9jYWxpemVkTWVzc2FnZSgpLApAQCAtNDk5LDcgKzQ4NSw3IEBAIHByaXZhdGUgPFQ+IFQgbWFwKEZ0cE9wZXJhdGlvbjxUPiBvcCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAogCQlAT3ZlcnJpZGUKIAkJcHVibGljIHZvaWQgY2QoU3RyaW5nIHBhdGgpIHRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCQljd2QgPSBtYXAoKCkgLT4gZnRwLmNhbm9uaWNhbFBhdGgoYWJzb2x1dGUocGF0aCkpKTsKKwkJCWN3ZCA9IG1hcCh4IC0+IGZ0cC5jYW5vbmljYWxQYXRoKGFic29sdXRlKHBhdGgpKSk7CiAJCQlpZiAoY3dkLmlzRW1wdHkoKSkgewogCQkJCWN3ZCArPSAnLyc7CiAJCQl9CkBAIC01MTIsMzkgKzQ5OCwyOCBAQCBwdWJsaWMgU3RyaW5nIHB3ZCgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyBDb2xsZWN0aW9uPERpckVudHJ5PiBscyhTdHJpbmcgcGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJCXJldHVybiBtYXAoKCkgLT4geworCQkJcmV0dXJuIG1hcCh4IC0+IHsKIAkJCQlMaXN0PERpckVudHJ5PiByZXN1bHQgPSBuZXcgQXJyYXlMaXN0PD4oKTsKLQkJCQl0cnkgKENsb3NlYWJsZUhhbmRsZSBoYW5kbGUgPSBmdHAub3BlbkRpcihhYnNvbHV0ZShwYXRoKSkpIHsKLQkJCQkJQXRvbWljUmVmZXJlbmNlPEJvb2xlYW4+IGF0RW5kID0gbmV3IEF0b21pY1JlZmVyZW5jZTw+KAotCQkJCQkJCUJvb2xlYW4uRkFMU0UpOwotCQkJCQl3aGlsZSAoIWF0RW5kLmdldCgpLmJvb2xlYW5WYWx1ZSgpKSB7Ci0JCQkJCQlMaXN0PFNmdHBDbGllbnQuRGlyRW50cnk+IGNodW5rID0gZnRwLnJlYWREaXIoaGFuZGxlLAotCQkJCQkJCQlhdEVuZCk7Ci0JCQkJCQlpZiAoY2h1bmsgPT0gbnVsbCkgewotCQkJCQkJCWJyZWFrOworCQkJCWZvciAoU2Z0cENsaWVudC5EaXJFbnRyeSByZW1vdGUgOiBmdHAucmVhZERpcihhYnNvbHV0ZShwYXRoKSkpIHsKKwkJCQkJcmVzdWx0LmFkZChuZXcgRGlyRW50cnkoKSB7CisKKwkJCQkJCUBPdmVycmlkZQorCQkJCQkJcHVibGljIFN0cmluZyBnZXRGaWxlbmFtZSgpIHsKKwkJCQkJCQlyZXR1cm4gcmVtb3RlLmdldEZpbGVuYW1lKCk7CiAJCQkJCQl9Ci0JCQkJCQlmb3IgKFNmdHBDbGllbnQuRGlyRW50cnkgcmVtb3RlIDogY2h1bmspIHsKLQkJCQkJCQlyZXN1bHQuYWRkKG5ldyBEaXJFbnRyeSgpIHsKIAotCQkJCQkJCQlAT3ZlcnJpZGUKLQkJCQkJCQkJcHVibGljIFN0cmluZyBnZXRGaWxlbmFtZSgpIHsKLQkJCQkJCQkJCXJldHVybiByZW1vdGUuZ2V0RmlsZW5hbWUoKTsKLQkJCQkJCQkJfQotCi0JCQkJCQkJCUBPdmVycmlkZQotCQkJCQkJCQlwdWJsaWMgbG9uZyBnZXRNb2RpZmllZFRpbWUoKSB7Ci0JCQkJCQkJCQlyZXR1cm4gcmVtb3RlLmdldEF0dHJpYnV0ZXMoKQotCQkJCQkJCQkJCQkuZ2V0TW9kaWZ5VGltZSgpLnRvTWlsbGlzKCk7Ci0JCQkJCQkJCX0KLQotCQkJCQkJCQlAT3ZlcnJpZGUKLQkJCQkJCQkJcHVibGljIGJvb2xlYW4gaXNEaXJlY3RvcnkoKSB7Ci0JCQkJCQkJCQlyZXR1cm4gcmVtb3RlLmdldEF0dHJpYnV0ZXMoKS5pc0RpcmVjdG9yeSgpOwotCQkJCQkJCQl9Ci0KLQkJCQkJCQl9KTsKKwkJCQkJCUBPdmVycmlkZQorCQkJCQkJcHVibGljIGxvbmcgZ2V0TW9kaWZpZWRUaW1lKCkgeworCQkJCQkJCXJldHVybiByZW1vdGUuZ2V0QXR0cmlidXRlcygpLmdldE1vZGlmeVRpbWUoKQorCQkJCQkJCQkJLnRvTWlsbGlzKCk7CiAJCQkJCQl9Ci0JCQkJCX0KKworCQkJCQkJQE92ZXJyaWRlCisJCQkJCQlwdWJsaWMgYm9vbGVhbiBpc0RpcmVjdG9yeSgpIHsKKwkJCQkJCQlyZXR1cm4gcmVtb3RlLmdldEF0dHJpYnV0ZXMoKS5pc0RpcmVjdG9yeSgpOworCQkJCQkJfQorCisJCQkJCX0pOwogCQkJCX0KIAkJCQlyZXR1cm4gcmVzdWx0OwogCQkJfSk7CkBAIC01NTIsNyArNTI3LDcgQEAgcHVibGljIGJvb2xlYW4gaXNEaXJlY3RvcnkoKSB7CiAKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyB2b2lkIHJtZGlyKFN0cmluZyBwYXRoKSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQkJbWFwKCgpIC0+IHsKKwkJCW1hcCh4IC0+IHsKIAkJCQlmdHAucm1kaXIoYWJzb2x1dGUocGF0aCkpOwogCQkJCXJldHVybiBudWxsOwogCQkJfSk7CkBAIC01NjEsNyArNTM2LDcgQEAgcHVibGljIHZvaWQgcm1kaXIoU3RyaW5nIHBhdGgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyB2b2lkIG1rZGlyKFN0cmluZyBwYXRoKSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQkJbWFwKCgpIC0+IHsKKwkJCW1hcCh4IC0+IHsKIAkJCQlmdHAubWtkaXIoYWJzb2x1dGUocGF0aCkpOwogCQkJCXJldHVybiBudWxsOwogCQkJfSk7CkBAIC01NjksMTcgKzU0NCwxNyBAQCBwdWJsaWMgdm9pZCBta2RpcihTdHJpbmcgcGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAogCQlAT3ZlcnJpZGUKIAkJcHVibGljIElucHV0U3RyZWFtIGdldChTdHJpbmcgcGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJCXJldHVybiBtYXAoKCkgLT4gZnRwLnJlYWQoYWJzb2x1dGUocGF0aCkpKTsKKwkJCXJldHVybiBtYXAoeCAtPiBmdHAucmVhZChhYnNvbHV0ZShwYXRoKSkpOwogCQl9CiAKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyBPdXRwdXRTdHJlYW0gcHV0KFN0cmluZyBwYXRoKSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQkJcmV0dXJuIG1hcCgoKSAtPiBmdHAud3JpdGUoYWJzb2x1dGUocGF0aCkpKTsKKwkJCXJldHVybiBtYXAoeCAtPiBmdHAud3JpdGUoYWJzb2x1dGUocGF0aCkpKTsKIAkJfQogCiAJCUBPdmVycmlkZQogCQlwdWJsaWMgdm9pZCBybShTdHJpbmcgcGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJCW1hcCgoKSAtPiB7CisJCQltYXAoeCAtPiB7CiAJCQkJZnRwLnJlbW92ZShhYnNvbHV0ZShwYXRoKSk7CiAJCQkJcmV0dXJuIG51bGw7CiAJCQl9KTsKQEAgLTU4Nyw3ICs1NjIsNyBAQCBwdWJsaWMgdm9pZCBybShTdHJpbmcgcGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAogCQlAT3ZlcnJpZGUKIAkJcHVibGljIHZvaWQgcmVuYW1lKFN0cmluZyBmcm9tLCBTdHJpbmcgdG8pIHRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCQltYXAoKCkgLT4geworCQkJbWFwKHggLT4gewogCQkJCVN0cmluZyBzcmMgPSBhYnNvbHV0ZShmcm9tKTsKIAkJCQlTdHJpbmcgZGVzdCA9IGFic29sdXRlKHRvKTsKIAkJCQl0cnkgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL1NzaGRTZXNzaW9uRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL1NzaGRTZXNzaW9uRmFjdG9yeS5qYXZhCmluZGV4IGNhZDk1OWMuLjU4Y2Y4ZTEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Tc2hkU2Vzc2lvbkZhY3RvcnkuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvU3NoZFNlc3Npb25GYWN0b3J5LmphdmEKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE4LCAyMDIwIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKiBDb3B5cmlnaHQgKEMpIDIwMTgsIDIwMjEgVGhvbWFzIFdvbGYgPHRob21hcy53b2xmQHBhcmFub3IuY2g+IGFuZCBvdGhlcnMKICAqCiAgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKICAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKQEAgLTU2LDExICs1NiwxNCBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuT3BlblNzaFNlcnZlcktleURhdGFiYXNlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuUGFzc3dvcmRQcm92aWRlcldyYXBwZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5Tc2hkVGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2hkLmFnZW50LkpHaXRTc2hBZ2VudEZhY3Rvcnk7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuQ3JlZGVudGlhbHNQcm92aWRlcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hDb25maWdTdG9yZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hDb25zdGFudHM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuU3NoU2Vzc2lvbkZhY3Rvcnk7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuVVJJaXNoOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuYWdlbnQuQ29ubmVjdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuYWdlbnQuQ29ubmVjdG9yRmFjdG9yeTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiAKIC8qKgpAQCAtMTAyLDkgKzEwNSw5IEBAIHB1YmxpYyBTc2hkU2Vzc2lvbkZhY3RvcnkoKSB7CiAKIAkvKioKIAkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBTc2hkU2Vzc2lvbkZhY3Rvcnl9IHVzaW5nIHRoZSBnaXZlbiB7QGxpbmsgS2V5Q2FjaGV9Ci0JICogYW5kIHtAbGluayBQcm94eURhdGFGYWN0b3J5fS4gVGhlIHtAY29kZSBrZXlDYWNoZX0gaXMgdXNlZCBmb3IgYWxsIHNlc3Npb25zCi0JICogY3JlYXRlZCB0aHJvdWdoIHRoaXMgc2Vzc2lvbiBmYWN0b3J5OyBjYWNoZWQga2V5cyBhcmUgZGVzdHJveWVkIHdoZW4gdGhlCi0JICogc2Vzc2lvbiBmYWN0b3J5IGlzIHtAbGluayAjY2xvc2UoKSBjbG9zZWR9LgorCSAqIGFuZCB7QGxpbmsgUHJveHlEYXRhRmFjdG9yeX0uIFRoZSB7QGNvZGUga2V5Q2FjaGV9IGlzIHVzZWQgZm9yIGFsbAorCSAqIHNlc3Npb25zIGNyZWF0ZWQgdGhyb3VnaCB0aGlzIHNlc3Npb24gZmFjdG9yeTsgY2FjaGVkIGtleXMgYXJlIGRlc3Ryb3llZAorCSAqIHdoZW4gdGhlIHNlc3Npb24gZmFjdG9yeSBpcyB7QGxpbmsgI2Nsb3NlKCkgY2xvc2VkfS4KIAkgKiA8cD4KIAkgKiBDYWNoaW5nIHNzaCBrZXlzIGluIG1lbW9yeSBmb3IgYW4gZXh0ZW5kZWQgcGVyaW9kIG9mIHRpbWUgaXMgZ2VuZXJhbGx5CiAJICogY29uc2lkZXJlZCBiYWQgcHJhY3RpY2UsIGJ1dCB0aGVyZSBtYXkgYmUgY2lyY3Vtc3RhbmNlcyB3aGVyZSB1c2luZyBhCkBAIC0xMTQsMTMgKzExNywyMSBAQCBwdWJsaWMgU3NoZFNlc3Npb25GYWN0b3J5KCkgewogCSAqIHRvIHVzZSBhIHtAbGluayAjY3JlYXRlS2V5UGFzc3dvcmRQcm92aWRlcihDcmVkZW50aWFsc1Byb3ZpZGVyKQogCSAqIEtleVBhc3N3b3JkUHJvdmlkZXJ9IHRoYXQgaGFzIGFjY2VzcyB0byBzb21lIHNlY3VyZSBzdG9yYWdlIGFuZCBjYW4gc2F2ZQogCSAqIGFuZCByZXRyaWV2ZSBwYXNzd29yZHMgZnJvbSB0aGVyZSB3aXRob3V0IHVzZXIgaW50ZXJhY3Rpb24uIEFub3RoZXIKLQkgKiBhcHByb2FjaCBpcyB0byB1c2UgYW4gc3NoIGFnZW50LgorCSAqIGFwcHJvYWNoIGlzIHRvIHVzZSBhbiBTU0ggYWdlbnQuCiAJICogPC9wPgogCSAqIDxwPgogCSAqIE5vdGUgdGhhdCB0aGUgdW5kZXJseWluZyBzc2ggbGlicmFyeSAoQXBhY2hlIE1JTkEgc3NoZCkgbWF5IG9yIG1heSBub3QKIAkgKiBrZWVwIHNzaCBrZXlzIGluIG1lbW9yeSBmb3IgdW5zcGVjaWZpZWQgcGVyaW9kcyBvZiB0aW1lIGlycmVzcGVjdGl2ZSBvZgogCSAqIHRoZSB1c2Ugb2YgYSB7QGxpbmsgS2V5Q2FjaGV9LgogCSAqIDwvcD4KKwkgKiA8cD4KKwkgKiBCeSBkZWZhdWx0LCB0aGUgZmFjdG9yeSB1c2VzIHRoZSB7QGxpbmsgamF2YS51dGlsLlNlcnZpY2VMb2FkZXJ9IHRvIGZpbmQKKwkgKiBhIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fSBmb3IgY3JlYXRpbmcgYSB7QGxpbmsgQ29ubmVjdG9yfSB0byBjb25uZWN0IHRvCisJICogYSBydW5uaW5nIFNTSCBhZ2VudC4gSWYgaXQgZmluZHMgb25lLCB0aGUgU1NIIGFnZW50IGlzIHVzZWQgaW4gcHVibGlja2V5CisJICogYXV0aGVudGljYXRpb24uIElmIHRoZXJlIGlzIG5vbmUsIG5vIFNTSCBhZ2VudCB3aWxsIGV2ZXIgYmUgY29udGFjdGVkLgorCSAqIE5vdGUgdGhhdCBvbmUgY2FuIGRlZmluZSB7QGNvZGUgSWRlbnRpdGllc09ubHkgeWVzfSBmb3IgYSBob3N0IGVudHJ5IGluCisJICogdGhlIHtAY29kZSB+Ly5zc2gvY29uZmlnfSBmaWxlIHRvIGJ5cGFzcyB0aGUgU1NIIGFnZW50IGluIGFueSBjYXNlLgorCSAqIDwvcD4KIAkgKgogCSAqIEBwYXJhbSBrZXlDYWNoZQogCSAqICAgICAgICAgICAge0BsaW5rIEtleUNhY2hlfSB0byB1c2UgZm9yIGNhY2hpbmcgc3NoIGtleXMsIG9yIHtAY29kZSBudWxsfQpAQCAtMjE2LDYgKzIyNywxMSBAQCBwdWJsaWMgU3NoZFNlc3Npb24gZ2V0U2Vzc2lvbihVUklpc2ggdXJpLAogCQkJCQkJbmV3IEpHaXRVc2VySW50ZXJhY3Rpb24oY3JlZGVudGlhbHNQcm92aWRlcikpOwogCQkJCWNsaWVudC5zZXRVc2VyQXV0aEZhY3RvcmllcyhnZXRVc2VyQXV0aEZhY3RvcmllcygpKTsKIAkJCQljbGllbnQuc2V0S2V5SWRlbnRpdHlQcm92aWRlcihkZWZhdWx0S2V5c1Byb3ZpZGVyKTsKKwkJCQlDb25uZWN0b3JGYWN0b3J5IGNvbm5lY3RvcnMgPSBnZXRDb25uZWN0b3JGYWN0b3J5KCk7CisJCQkJaWYgKGNvbm5lY3RvcnMgIT0gbnVsbCkgeworCQkJCQljbGllbnQuc2V0QWdlbnRGYWN0b3J5KAorCQkJCQkJCW5ldyBKR2l0U3NoQWdlbnRGYWN0b3J5KGNvbm5lY3RvcnMsIGhvbWUpKTsKKwkJCQl9CiAJCQkJLy8gSkdpdC1zcGVjaWZpYyB0aGluZ3M6CiAJCQkJSkdpdFNzaENsaWVudCBqZ2l0Q2xpZW50ID0gKEpHaXRTc2hDbGllbnQpIGNsaWVudDsKIAkJCQlqZ2l0Q2xpZW50LnNldEtleUNhY2hlKGdldEtleUNhY2hlKCkpOwpAQCAtNDM3LDYgKzQ1MywyMCBAQCBwcm90ZWN0ZWQgU2VydmVyS2V5RGF0YWJhc2UgY3JlYXRlU2VydmVyS2V5RGF0YWJhc2UoQE5vbk51bGwgRmlsZSBob21lRGlyLAogCX0KIAogCS8qKgorCSAqIEdldHMgYSB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0uIElmIHRoaXMgcmV0dXJucyB7QGNvZGUgbnVsbH0sIFNTSCBhZ2VudHMKKwkgKiBhcmUgbm90IHN1cHBvcnRlZC4KKwkgKiA8cD4KKwkgKiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiB1c2VzIHtAbGluayBDb25uZWN0b3JGYWN0b3J5I2dldERlZmF1bHQoKX0KKwkgKiA8L3A+CisJICoKKwkgKiBAcmV0dXJuIHRoZSBmYWN0b3J5LCBvciB7QGNvZGUgbnVsbH3CoGlmIG5vIFNTSCBhZ2VudCBzdXBwb3J0IGlzIGRlc2lyZWQKKwkgKiBAc2luY2UgNi4wCisJICovCisJcHJvdGVjdGVkIENvbm5lY3RvckZhY3RvcnkgZ2V0Q29ubmVjdG9yRmFjdG9yeSgpIHsKKwkJcmV0dXJuIENvbm5lY3RvckZhY3RvcnkuZ2V0RGVmYXVsdCgpOworCX0KKworCS8qKgogCSAqIEdldHMgdGhlIGxpc3Qgb2YgZGVmYXVsdCB1c2VyIGtub3duIGhvc3RzIGZpbGVzLiBUaGUgZGVmYXVsdCByZXR1cm5zCiAJICogfi8uc3NoL2tub3duX2hvc3RzIGFuZCB+Ly5zc2gva25vd25faG9zdHMyLiBUaGUgc3NoIGNvbmZpZwogCSAqIHtAY29kZSBVc2VyS25vd25Ib3N0c0ZpbGV9IG92ZXJyaWRlcyB0aGlzIGRlZmF1bHQuCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL1NzaGRTZXNzaW9uRmFjdG9yeUJ1aWxkZXIuamF2YQppbmRleCAyMTQ3YzJiLi43ZWQ5YjVlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9Tc2hkU2Vzc2lvbkZhY3RvcnlCdWlsZGVyLmphdmEKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDIwIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIDIwMjEgVGhvbWFzIFdvbGYgPHRob21hcy53b2xmQHBhcmFub3IuY2g+IGFuZCBvdGhlcnMKICAqCiAgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKICAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKQEAgLTIwLDYgKzIwLDcgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zLk5vbk51bGw7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuQ3JlZGVudGlhbHNQcm92aWRlcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hDb25maWdTdG9yZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLmFnZW50LkNvbm5lY3RvckZhY3Rvcnk7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlN0cmluZ1V0aWxzOwogCiAvKioKQEAgLTExNCw3ICsxMTUsNyBAQCBwdWJsaWMgU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlciBzZXRDb25maWdGaWxlKAogCX0KIAogCS8qKgotCSAqIEEgZmFjdG9yeSBpbnRlcmZhY2UgZm9yIGNyZWF0aW5nIGEgQGxpbmsgU3NoQ29uZmlnU3RvcmV9LgorCSAqIEEgZmFjdG9yeSBpbnRlcmZhY2UgZm9yIGNyZWF0aW5nIGEge0BsaW5rIFNzaENvbmZpZ1N0b3JlfS4KIAkgKi8KIAlARnVuY3Rpb25hbEludGVyZmFjZQogCXB1YmxpYyBpbnRlcmZhY2UgQ29uZmlnU3RvcmVGYWN0b3J5IHsKQEAgLTIzMyw2ICsyMzQsNDEgQEAgcHVibGljIFNzaGRTZXNzaW9uRmFjdG9yeUJ1aWxkZXIgc2V0U2VydmVyS2V5RGF0YWJhc2UoCiAJfQogCiAJLyoqCisJICogU2V0cyBhbiBleHBsaWNpdCB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0uIElmIHtAY29kZSBudWxsfSwgdGhlcmUgd2lsbCBiZQorCSAqIG5vIHN1cHBvcnQgZm9yIFNTSCBhZ2VudHMuCisJICogPHA+CisJICogSWYgbm90IHNldCwgdGhlIGNyZWF0ZWQge0BsaW5rIFNzaGRTZXNzaW9uRmFjdG9yeX0gd2lsbCB1c2UgdGhlCisJICoge0BsaW5rIGphdmEudXRpbC5TZXJ2aWNlTG9hZGVyfSB0byBmaW5kIGFuIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fS4KKwkgKiA8L3A+CisJICoKKwkgKiBAcGFyYW0gZmFjdG9yeQorCSAqICAgICAgICAgICAge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9IHRvIHVzZQorCSAqIEByZXR1cm4gdGhpcyB7QGxpbmsgU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlcn0KKwkgKiBAc2luY2UgNi4wCisJICovCisJcHVibGljIFNzaGRTZXNzaW9uRmFjdG9yeUJ1aWxkZXIgc2V0Q29ubmVjdG9yRmFjdG9yeSgKKwkJCUNvbm5lY3RvckZhY3RvcnkgZmFjdG9yeSkgeworCQl0aGlzLnN0YXRlLmNvbm5lY3RvckZhY3RvcnkgPSBmYWN0b3J5OworCQl0aGlzLnN0YXRlLmNvbm5lY3RvckZhY3RvcnlTZXQgPSB0cnVlOworCQlyZXR1cm4gdGhpczsKKwl9CisKKwkvKioKKwkgKiBSZW1vdmVzIGEgcHJldmlvdXNseSBzZXQge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9LiBUaGUgY3JlYXRlZAorCSAqIHtAbGluayBTc2hkU2Vzc2lvbkZhY3Rvcnl9IHdpbGwgdXNlIHRoZSB7QGxpbmsgamF2YS51dGlsLlNlcnZpY2VMb2FkZXJ9CisJICogdG8gZmluZCBhbiB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0uIFRoaXMgaXMgYWxzbyB0aGUgZGVmYXVsdCBpZgorCSAqIHtAbGluayAjc2V0Q29ubmVjdG9yRmFjdG9yeShDb25uZWN0b3JGYWN0b3J5KX0gaXNuJ3QgY2FsbGVkIGF0IGFsbC4KKwkgKgorCSAqIEByZXR1cm4gdGhpcyB7QGxpbmsgU3NoZFNlc3Npb25GYWN0b3J5QnVpbGRlcn0KKwkgKiBAc2luY2UgNi4wCisJICovCisJcHVibGljIFNzaGRTZXNzaW9uRmFjdG9yeUJ1aWxkZXIgd2l0aERlZmF1bHRDb25uZWN0b3JGYWN0b3J5KCkgeworCQl0aGlzLnN0YXRlLmNvbm5lY3RvckZhY3RvcnkgPSBudWxsOworCQl0aGlzLnN0YXRlLmNvbm5lY3RvckZhY3RvcnlTZXQgPSBmYWxzZTsKKwkJcmV0dXJuIHRoaXM7CisJfQorCisJLyoqCiAJICogQnVpbGRzIGEge0BsaW5rIFNzaGRTZXNzaW9uRmFjdG9yeX0gYXMgY29uZmlndXJlZCwgdXNpbmcgdGhlIGdpdmVuCiAJICoge0BsaW5rIEtleUNhY2hlfSBmb3IgY2FjaGluZyBrZXlzLgogCSAqIDxwPgpAQCAtMjc3LDYgKzMxMywxMCBAQCBwcml2YXRlIHN0YXRpYyBjbGFzcyBTdGF0ZSB7CiAKIAkJQmlGdW5jdGlvbjxGaWxlLCBGaWxlLCBTZXJ2ZXJLZXlEYXRhYmFzZT4gc2VydmVyS2V5RGF0YWJhc2VDcmVhdG9yOwogCisJCUNvbm5lY3RvckZhY3RvcnkgY29ubmVjdG9yRmFjdG9yeTsKKworCQlib29sZWFuIGNvbm5lY3RvckZhY3RvcnlTZXQ7CisKIAkJU3RhdGUgY29weSgpIHsKIAkJCVN0YXRlIGMgPSBuZXcgU3RhdGUoKTsKIAkJCWMucHJveHlEYXRhRmFjdG9yeSA9IHByb3h5RGF0YUZhY3Rvcnk7CkBAIC0yOTAsNiArMzMwLDggQEAgU3RhdGUgY29weSgpIHsKIAkJCWMuZGVmYXVsdEtleUZpbGVGaW5kZXIgPSBkZWZhdWx0S2V5RmlsZUZpbmRlcjsKIAkJCWMuZGVmYXVsdEtleXNQcm92aWRlciA9IGRlZmF1bHRLZXlzUHJvdmlkZXI7CiAJCQljLnNlcnZlcktleURhdGFiYXNlQ3JlYXRvciA9IHNlcnZlcktleURhdGFiYXNlQ3JlYXRvcjsKKwkJCWMuY29ubmVjdG9yRmFjdG9yeSA9IGNvbm5lY3RvckZhY3Rvcnk7CisJCQljLmNvbm5lY3RvckZhY3RvcnlTZXQgPSBjb25uZWN0b3JGYWN0b3J5U2V0OwogCQkJcmV0dXJuIGM7CiAJCX0KIApAQCAtMzg4LDYgKzQzMCwxNSBAQCBwcm90ZWN0ZWQgU3NoQ29uZmlnU3RvcmUgY3JlYXRlU3NoQ29uZmlnU3RvcmUoRmlsZSBob21lRGlyLAogCQkJCXJldHVybiBzdXBlci5jcmVhdGVTc2hDb25maWdTdG9yZShob21lRGlyLCBjb25maWdGaWxlLAogCQkJCQkJbG9jYWxVc2VyTmFtZSk7CiAJCQl9CisKKwkJCUBPdmVycmlkZQorCQkJcHJvdGVjdGVkIENvbm5lY3RvckZhY3RvcnkgZ2V0Q29ubmVjdG9yRmFjdG9yeSgpIHsKKwkJCQlpZiAoY29ubmVjdG9yRmFjdG9yeVNldCkgeworCQkJCQlyZXR1cm4gY29ubmVjdG9yRmFjdG9yeTsKKwkJCQl9CisJCQkJLy8gVXNlIGRlZmF1bHQgdmlhIFNlcnZpY2VMb2FkZXIKKwkJCQlyZXR1cm4gc3VwZXIuZ2V0Q29ubmVjdG9yRmFjdG9yeSgpOworCQkJfQogCQl9CiAJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL2FnZW50L0Fic3RyYWN0Q29ubmVjdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvYWdlbnQvQWJzdHJhY3RDb25uZWN0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MWRkYzNiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL2FnZW50L0Fic3RyYWN0Q29ubmVjdG9yLmphdmEKQEAgLTAsMCArMSwxMTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKgorICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorICoKKyAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLmFnZW50OworCitpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKK2ltcG9ydCBqYXZhLnRleHQuTWVzc2FnZUZvcm1hdDsKK2ltcG9ydCBqYXZhLnV0aWwuT2JqZWN0czsKKworaW1wb3J0IG9yZy5hcGFjaGUuc3NoZC5hZ2VudC5Tc2hBZ2VudENvbnN0YW50czsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLlNzaEV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuYXBhY2hlLnNzaGQuY29tbW9uLnV0aWwuYnVmZmVyLkJ1ZmZlclV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaGQuU3NoZFRleHQ7CisKKy8qKgorICogUHJvdmlkZXMgc29tZSB1dGlsaXR5IG1ldGhvZHMgZm9yIGltcGxlbWVudGluZyB7QGxpbmsgQ29ubmVjdG9yfXMuCisgKgorICogQHNpbmNlIDYuMAorICovCitwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RDb25uZWN0b3IgaW1wbGVtZW50cyBDb25uZWN0b3IgeworCisJLy8gQSBzb21ld2hhdCBzYW5lIGxvd2VyIGJvdW5kIGZvciB0aGUgbWF4aW11bSByZXBseSBsZW5ndGgKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBpbnQgTUlOX1JFUExZX0xFTkdUSCA9IDggKiAxMDI0OworCisJLyoqCisJICogRGVmYXVsdCBtYXhpbXVtIHJlcGx5IGxlbmd0aC4gMjU2a0IgaXMgdGhlIE9wZW5TU0ggbGltaXQuCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBpbnQgREVGQVVMVF9NQVhfUkVQTFlfTEVOR1RIID0gMjU2ICogMTAyNDsKKworCXByaXZhdGUgZmluYWwgaW50IG1heFJlcGx5TGVuZ3RoOworCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSB1c2luZyB0aGUge0BsaW5rICNERUZBVUxUX01BWF9SRVBMWV9MRU5HVEh9LgorCSAqLworCXByb3RlY3RlZCBBYnN0cmFjdENvbm5lY3RvcigpIHsKKwkJdGhpcyhERUZBVUxUX01BWF9SRVBMWV9MRU5HVEgpOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2UuCisJICoKKwkgKiBAcGFyYW0gbWF4UmVwbHlMZW5ndGgKKwkgKiAgICAgICAgICAgIG1heGltdW0gbnVtYmVyIG9mIHBheWxvYWQgYnl0ZXMgd2UncmUgcmVhZHkgdG8gYWNjZXB0CisJICovCisJcHJvdGVjdGVkIEFic3RyYWN0Q29ubmVjdG9yKGludCBtYXhSZXBseUxlbmd0aCkgeworCQlpZiAobWF4UmVwbHlMZW5ndGggPCBNSU5fUkVQTFlfTEVOR1RIKSB7CisJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKAorCQkJCQkiTWF4aW11bSBwYXlsb2FkIGxlbmd0aCB0b28gc21hbGwiKTsgLy8kTk9OLU5MUy0xJAorCQl9CisJCXRoaXMubWF4UmVwbHlMZW5ndGggPSBtYXhSZXBseUxlbmd0aDsKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZXMgdGhlIG1heGltdW0gbWVzc2FnZSBsZW5ndGggdGhpcyB7QGxpbmsgQWJzdHJhY3RDb25uZWN0b3J9IGlzCisJICogY29uZmlndXJlZCBmb3IuCisJICoKKwkgKiBAcmV0dXJuIHRoZSBtYXhpbXVtIG1lc3NhZ2UgbGVuZ3RoCisJICovCisJcHJvdGVjdGVkIGludCBnZXRNYXhpbXVtTWVzc2FnZUxlbmd0aCgpIHsKKwkJcmV0dXJuIHRoaXMubWF4UmVwbHlMZW5ndGg7CisJfQorCisJLyoqCisJICogUHJlcGFyZXMgYSBtZXNzYWdlIGZvciBzZW5kaW5nIGJ5IGluc2VydGluZyB0aGUgY29tbWFuZCBhbmQgbWVzc2FnZQorCSAqIGxlbmd0aC4KKwkgKgorCSAqIEBwYXJhbSBjb21tYW5kCisJICogICAgICAgICAgICBTU0ggYWdlbnQgY29tbWFuZCB0aGUgcmVxdWVzdCBpcyBmb3IKKwkgKiBAcGFyYW0gbWVzc2FnZQorCSAqICAgICAgICAgICAgYWJvdXQgdG8gYmUgc2VudCwgaW5jbHVkaW5nIHRoZSA1IHNwYXJlIGJ5dGVzIGF0IHRoZSBmcm9udAorCSAqIEB0aHJvd3MgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYge0Bjb2RlIG1lc3NhZ2V9IGhhcyBsZXNzIHRoYW4gNSBieXRlcworCSAqLworCXByb3RlY3RlZCB2b2lkIHByZXBhcmVNZXNzYWdlKGJ5dGUgY29tbWFuZCwgYnl0ZVtdIG1lc3NhZ2UpCisJCQl0aHJvd3MgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uIHsKKwkJT2JqZWN0cy5yZXF1aXJlTm9uTnVsbChtZXNzYWdlKTsKKwkJaWYgKG1lc3NhZ2UubGVuZ3RoIDwgNSkgeworCQkJLy8gTm8gdHJhbnNsYXRpb247IGludGVybmFsIGVycm9yCisJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJNZXNzYWdlIGJ1ZmZlciBmb3IgIiAvLyROT04tTkxTLTEkCisJCQkJCSsgU3NoQWdlbnRDb25zdGFudHMuZ2V0Q29tbWFuZE1lc3NhZ2VOYW1lKGNvbW1hbmQpCisJCQkJCSsgIiBtdXN0IGhhdmUgYXQgbGVhc3QgNSBieXRlczsgaGF2ZSBvbmx5ICIgLy8kTk9OLU5MUy0xJAorCQkJCQkrIG1lc3NhZ2UubGVuZ3RoKTsKKwkJfQorCQlCdWZmZXJVdGlscy5wdXRVSW50KG1lc3NhZ2UubGVuZ3RoIC0gNCwgbWVzc2FnZSk7CisJCW1lc3NhZ2VbNF0gPSBjb21tYW5kOworCX0KKworCS8qKgorCSAqIENoZWNrcyB0aGUgcmVjZWl2ZWQgbGVuZ3RoIG9mIGEgcmVwbHkuCisJICoKKwkgKiBAcGFyYW0gY29tbWFuZAorCSAqICAgICAgICAgICAgU1NIIGFnZW50IGNvbW1hbmQgdGhlIHJlcGx5IGlzIGZvcgorCSAqIEBwYXJhbSBsZW5ndGgKKwkgKiAgICAgICAgICAgIGxlbmd0aCBhcyByZWNlaXZlZDogbnVtYmVyIG9mIHBheWxvYWQgYnl0ZXMKKwkgKiBAcmV0dXJuIHRoZSBsZW5ndGggYXMgYW4ge0Bjb2RlIGludH0KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYgdGhlIGxlbmd0aCBpcyBpbnZhbGlkCisJICovCisJcHJvdGVjdGVkIGludCB0b0xlbmd0aChieXRlIGNvbW1hbmQsIGJ5dGVbXSBsZW5ndGgpCisJCQl0aHJvd3MgSU9FeGNlcHRpb24geworCQlsb25nIGwgPSBCdWZmZXJVdGlscy5nZXRVSW50KGxlbmd0aCk7CisJCWlmIChsIDw9IDAgfHwgbCA+IG1heFJlcGx5TGVuZ3RoIC0gNCkgeworCQkJdGhyb3cgbmV3IFNzaEV4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKKwkJCQkJU3NoZFRleHQuZ2V0KCkuc3NoQWdlbnRSZXBseUxlbmd0aEVycm9yLAorCQkJCQlMb25nLnRvU3RyaW5nKGwpLAorCQkJCQlTc2hBZ2VudENvbnN0YW50cy5nZXRDb21tYW5kTWVzc2FnZU5hbWUoY29tbWFuZCkpKTsKKwkJfQorCQlyZXR1cm4gKGludCkgbDsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvYWdlbnQvQ29ubmVjdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvYWdlbnQvQ29ubmVjdG9yLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDhkZmJmYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Db25uZWN0b3IuamF2YQpAQCAtMCwwICsxLDYyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxLCBUaG9tYXMgV29sZiA8dGhvbWFzLndvbGZAcGFyYW5vci5jaD4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5hZ2VudDsKKworaW1wb3J0IGphdmEuaW8uQ2xvc2VhYmxlOworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CisKKy8qKgorICogU2ltcGxlIGludGVyZmFjZSBmb3IgY29ubmVjdGluZyB0byBzb21ldGhpbmcgYW5kIG1ha2luZyBSUEMtc3R5bGUKKyAqIHJlcXVlc3QtcmVwbHkgY2FsbHMuCisgKgorICogQHNlZSBDb25uZWN0b3JGYWN0b3J5CisgKiBAc2luY2UgNi4wCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ29ubmVjdG9yIGV4dGVuZHMgQ2xvc2VhYmxlIHsKKworCS8qKgorCSAqIENvbm5lY3RzIHRvIGFuIFNTSCBhZ2VudCBpZiB0aGVyZSBpcyBvbmUgcnVubmluZy4gSWYgY2FsbGVkIHdoZW4gYWxyZWFkeQorCSAqIGNvbm5lY3RlZCBqdXN0IHJldHVybnMge0Bjb2RlIHRydWV9LgorCSAqCisJICogQHJldHVybiB7QGNvZGUgdHJ1ZX0gaWYgYW4gU1NIIGFnZW50IGlzIGF2YWlsYWJsZSBhbmQgY29ubmVjdGVkLAorCSAqICAgICAgICAge0BmYWxzZX0gaWYgbm8gU1NIIGFnZW50IGlzIGF2YWlsYWJsZQorCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBpZiBjb25uZWN0aW5nIHRvIHRoZSBTU0ggYWdlbnQgZmFpbGVkCisJICovCisJYm9vbGVhbiBjb25uZWN0KCkgdGhyb3dzIElPRXhjZXB0aW9uOworCisJLyoqCisJICogUGVyZm9ybXMgYSByZW1vdGUgY2FsbCB0byB0aGUgU1NIIGFnZW50IGFuZCByZXR1cm5zIHRoZSByZXN1bHQuCisJICoKKwkgKiBAcGFyYW0gY29tbWFuZAorCSAqICAgICAgICAgICAgdG8gc2VuZAorCSAqIEBwYXJhbSBtZXNzYWdlCisJICogICAgICAgICAgICB0byBzZW5kOyBtdXN0IGhhdmUgYXQgbGVhc3QgNSBieXRlcywgYW5kIG11c3QgaGF2ZSA1IHVudXNlZAorCSAqICAgICAgICAgICAgYnl0ZXMgYXQgdGhlIGZyb250LgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCByZWNlaXZlZAorCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBpZiBhbiBlcnJvciBvY2N1cnMKKwkgKi8KKwlieXRlW10gcnBjKGJ5dGUgY29tbWFuZCwgYnl0ZVtdIG1lc3NhZ2UpIHRocm93cyBJT0V4Y2VwdGlvbjsKKworCS8qKgorCSAqIFBlcmZvcm1zIGEgcmVtb3RlIGNhbGwgc2VuZGluZyBvbmx5IGEgY29tbWFuZCB3aXRob3V0IGFueSBwYXJhbWV0ZXJzIHRvCisJICogdGhlIFNTSCBhZ2VudCBhbmQgcmV0dXJucyB0aGUgcmVzdWx0LgorCSAqCisJICogQHBhcmFtIGNvbW1hbmQKKwkgKiAgICAgICAgICAgIHRvIHNlbmQKKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgcmVjZWl2ZWQKKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYgYW4gZXJyb3Igb2NjdXJzCisJICovCisJZGVmYXVsdCBieXRlW10gcnBjKGJ5dGUgY29tbWFuZCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJcmV0dXJuIHJwYyhjb21tYW5kLCBuZXcgYnl0ZVs1XSk7CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2hkL2FnZW50L0Nvbm5lY3RvckZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Db25uZWN0b3JGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGE5OGVhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9hZ2VudC9Db25uZWN0b3JGYWN0b3J5LmphdmEKQEAgLTAsMCArMSwxNzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKgorICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorICoKKyAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2hkLmFnZW50OworCitpbXBvcnQgamF2YS5pby5GaWxlOworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zLk5vbk51bGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoZC5hZ2VudC5Db25uZWN0b3JGYWN0b3J5UHJvdmlkZXI7CisKKy8qKgorICogQSBmYWN0b3J5IGZvciBjcmVhdGluZyB7QGxpbmsgQ29ubmVjdG9yfXMuIFRoaXMgaXMgYSBzZXJ2aWNlIHByb3ZpZGVyCisgKiBpbnRlcmZhY2U7IGltcGxlbWVudGF0aW9ucyBhcmUgZGlzY292ZXJlZCB2aWEgdGhlCisgKiB7QGxpbmsgamF2YS51dGlsLlNlcnZpY2VMb2FkZXJ9LCBvciBjYW4gYmUgc2V0IGV4cGxpY2l0bHkgb24gYQorICoge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuU3NoZFNlc3Npb25GYWN0b3J5fS4KKyAqCisgKiBAc2luY2UgNi4wCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ29ubmVjdG9yRmFjdG9yeSB7CisKKwkvKioKKwkgKiBSZXRyaWV2ZXMgdGhlIGN1cnJlbnRseSBzZXQgZGVmYXVsdCB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0uIFRoaXMgaXMgdGhlCisJICogZmFjdG9yeSB0aGF0IGlzIHVzZWQgdW5sZXNzIG92ZXJyaWRkZW4gYnkgdGhlCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuU3NoZFNlc3Npb25GYWN0b3J5fS4KKwkgKgorCSAqIEByZXR1cm4gdGhlIGN1cnJlbnQgZGVmYXVsdCBmYWN0b3J5OyBtYXkgYmUge0Bjb2RlIG51bGx9IGlmIG5vbmUgaXMgc2V0CisJICogICAgICAgICBhbmQgdGhlIHtAbGluayBqYXZhLnV0aWwuU2VydmljZUxvYWRlcn0gY2Fubm90IGZpbmQgYW55IHN1aXRhYmxlCisJICogICAgICAgICBpbXBsZW1lbnRhdGlvbgorCSAqLworCXN0YXRpYyBDb25uZWN0b3JGYWN0b3J5IGdldERlZmF1bHQoKSB7CisJCXJldHVybiBDb25uZWN0b3JGYWN0b3J5UHJvdmlkZXIuZ2V0RGVmYXVsdEZhY3RvcnkoKTsKKwl9CisKKwkvKioKKwkgKiBTZXRzIGEgZGVmYXVsdCB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0uIFRoaXMgaXMgdGhlIGZhY3RvcnkgdGhhdCBpcyB1c2VkCisJICogdW5sZXNzIG92ZXJyaWRkZW4gYnkgdGhlCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuU3NoZFNlc3Npb25GYWN0b3J5fS4KKwkgKiA8cD4KKwkgKiBJZiBubyBkZWZhdWx0IGZhY3RvcnkgaXMgc2V0IHByb2dyYW1tYXRpY2FsbHksIGFuIGltcGxlbWVudGF0aW9uIGlzCisJICogZGlzY292ZXJlZCB2aWEgdGhlIHtAbGluayBqYXZhLnV0aWwuU2VydmljZUxvYWRlcn0uCisJICogPC9wPgorCSAqCisJICogQHBhcmFtIGZhY3RvcnkKKwkgKiAgICAgICAgICAgIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fSB0byBzZXQsIG9yIHtAY29kZSBudWxsfcKgdG8gcmV2ZXJ0IHRvCisJICogICAgICAgICAgICB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB1c2luZyB0aGUKKwkgKiAgICAgICAgICAgIHtAbGluayBqYXZhLnV0aWwuU2VydmljZUxvYWRlcn0uCisJICovCisJc3RhdGljIHZvaWQgc2V0RGVmYXVsdChDb25uZWN0b3JGYWN0b3J5IGZhY3RvcnkpIHsKKwkJQ29ubmVjdG9yRmFjdG9yeVByb3ZpZGVyLnNldERlZmF1bHRGYWN0b3J5KGZhY3RvcnkpOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIENvbm5lY3Rvcn0uCisJICoKKwkgKiBAcGFyYW0gaWRlbnRpdHlBZ2VudAorCSAqICAgICAgICAgICAgaWRlbnRpZmllcyB0aGUgd2FudGVkIGFnZW50IGNvbm5lY3Rpb247IGlmIHtAY29kZSBudWxsfSwgdGhlCisJICogICAgICAgICAgICBmYWN0b3J5IGlzIGZyZWUgdG8gcHJvdmlkZSBhIHtAbGluayBDb25uZWN0b3J9IHRvIGEgZGVmYXVsdAorCSAqICAgICAgICAgICAgYWdlbnQuIFRoZSB2YWx1ZSB3aWxsIHR5cGljYWxseSBjb21lIGZyb20gdGhlCisJICogICAgICAgICAgICB7QGNvZGUgSWRlbnRpdHlBZ2VudH0gc2V0dGluZyBpbiB7QGNvZGUgfi8uc3NoL2NvbmZpZ30uCisJICogQHBhcmFtIGhvbWVEaXIKKwkgKiAgICAgICAgICAgIHRoZSBjdXJyZW50IGxvY2FsIHVzZXIncyBob21lIGRpcmVjdG9yeSBhcyBjb25maWd1cmVkIGluIHRoZQorCSAqICAgICAgICAgICAge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuU3NoZFNlc3Npb25GYWN0b3J5fQorCSAqIEByZXR1cm4gYSBuZXcge0BsaW5rIENvbm5lY3Rvcn0KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYgbm8gY29ubmVjdG9yIGNhbiBiZSBjcmVhdGVkCisJICovCisJQE5vbk51bGwKKwlDb25uZWN0b3IgY3JlYXRlKFN0cmluZyBpZGVudGl0eUFnZW50LCBGaWxlIGhvbWVEaXIpCisJCQl0aHJvd3MgSU9FeGNlcHRpb247CisKKwkvKioKKwkgKiBUZWxscyB3aGV0aGVyIHRoaXMge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9wqBpcyBhcHBsaWNhYmxlIG9uIHRoZQorCSAqIGN1cnJlbnRseSBydW5uaW5nIHBsYXRmb3JtLgorCSAqCisJICogQHJldHVybiB7QGNvZGUgdHJ1ZX0gaWYgdGhlIGZhY3RvcnkgY2FuIGJlIHVzZWQsIHtAY29kZSBmYWxzZX0gb3RoZXJ3aXNlCisJICovCisJYm9vbGVhbiBpc1N1cHBvcnRlZCgpOworCisJLyoqCisJICogUmV0cmlldmVzIGEgbmFtZSBmb3IgdGhpcyBmYWN0b3J5LgorCSAqCisJICogQHJldHVybiB0aGUgbmFtZQorCSAqLworCVN0cmluZyBnZXROYW1lKCk7CisKKwkvKioKKwkgKiB7QGxpbmsgQ29ubmVjdG9yRGVzY3JpcHRvcn1zIGRlc2NyaWJlIGF2YWlsYWJsZSB7QGxpbmsgQ29ubmVjdG9yfXMgYQorCSAqIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fSBtYXkgcHJvdmlkZS4KKwkgKiA8cD4KKwkgKiBBIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fSBtYXkgc3VwcG9ydCBjb25uZWN0aW5nIHRvIGRpZmZlcmVudCBTU0gKKwkgKiBhZ2VudHMuIEFnZW50cyBhcmUgaWRlbnRpZmllZCBieSBuYW1lOyBhIHVzZXIgY2FuIGNob29zZSBhIHNwZWNpZmljIGFnZW50CisJICogZm9yIGluc3RhbmNlIHZpYSB0aGUge0Bjb2RlIElkZW50aXR5QWdlbnR9IHNldHRpbmcgaW4KKwkgKiB7QGNvZGUgfi8uc3NoL2NvbmZpZ30uCisJICogPC9wPgorCSAqIDxwPgorCSAqIE9wZW5TU0gga25vd3MgdHdvIGJ1aWx0LWluIG5hbWVzOiAibm9uZSIgZm9yIG5vdCB1c2luZyBhbnkgYWdlbnQsIGFuZAorCSAqICJTU0hfQVVUSF9TT0NLIiBmb3IgdXNpbmcgYW4gYWdlbnQgdGhhdCBjb21tdW5pY2F0ZXMgb3ZlciBhIFVuaXggZG9tYWluCisJICogc29ja2V0IGdpdmVuIGJ5IHRoZSB2YWx1ZSBvZiBlbnZpcm9ubWVudCB2YXJpYWJsZSB7QGNvZGUgU1NIX0FVVEhfU09DS30uCisJICogT3RoZXIgYWdlbnRzIGNhbiBiZSBzcGVjaWZpZWQgaW4gT3BlblNTSCBieSBzcGVjaWZ5aW5nIHRoZSBzb2NrZXQgZmlsZQorCSAqIGRpcmVjdGx5LiAoVGhlICJzdGFuZGFyZCIgT3BlbkJTRCBPcGVuU1NIIGtub3dzIG9ubHkgdGhpcyBjb21tdW5pY2F0aW9uCisJICogbWVjaGFuaXNtLikgIlNTSF9BVVRIX1NPQ0siIGlzIGFsc28gdGhlIGRlZmF1bHQgaW4gT3BlbkJTRCBPcGVuU1NIIGlmCisJICogbm90aGluZyBpcyBjb25maWd1cmVkLgorCSAqIDwvcD4KKwkgKiA8cD4KKwkgKiBBIHBhcnRpY3VsYXIge0BsaW5rIENvbm5lY3RvckZhY3Rvcnl9IG1heSBzdXBwb3J0IG1vcmUgY29tbXVuaWNhdGlvbgorCSAqIG1lY2hhbmlzbXMgb3IgZGlmZmVyZW50IGFnZW50cy4gRm9yIGluc3RhbmNlLCBhIGZhY3Rvcnkgb24gV2luZG93cyBtaWdodAorCSAqIHN1cHBvcnQgUGFnZWFudCwgV2luMzItT3BlblNTSCwgb3IgZXZlbiBnaXQgYmFzaCBzc2gtYWdlbnQsIGFuZCBtaWdodAorCSAqIGFjY2VwdCBpbnRlcm5hbCBuYW1lcyBsaWtlICJwYWdlYW50IiwgIm9wZW5zc2giLCAiU1NIX0FVVEhfU09DSyIgaW4KKwkgKiB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeSNjcmVhdGUoU3RyaW5nLCBGaWxlKX0gdG8gY2hvb3NlIGFtb25nIHRoZW0uCisJICogPC9wPgorCSAqIFRoZSB7QGxpbmsgQ29ubmVjdG9yRGVzY3JpcHRvcn0gaW50ZXJmYWNlIGFuZCB0aGUKKwkgKiB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeSNnZXRTdXBwb3J0ZWRDb25uZWN0b3JzKCl9IGFuZAorCSAqIHtAbGluayBDb25uZWN0b3JGYWN0b3J5I2dldERlZmF1bHRDb25uZWN0b3IoKX0gbWV0aG9kcyBwcm92aWRlIGEgd2F5IGZvcgorCSAqIGNvZGUgdXNpbmcgYSB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0gdG8gbGVhcm4gd2hhdCB0aGUgZmFjdG9yeSBzdXBwb3J0cworCSAqIGFuZCB0aHVzIGltcGxlbWVudCBzb21lIHdheSBieSB3aGljaCBhIHVzZXIgY2FuIGluZmx1ZW5jZSB0aGUgZGVmYXVsdAorCSAqIGJlaGF2aW9yIGlmIHtAY29kZSBJZGVudGl0eUFnZW50fSBpcyBub3Qgc2V0IG9yCisJICoge0BsaW5rIENvbm5lY3RvckZhY3RvcnkjY3JlYXRlKFN0cmluZywgRmlsZSl9IGlzIGNhbGxlZCB3aXRoCisJICoge0Bjb2RlIGlkZW50aXR5QWdlbnQgPT0gbnVsbH0uCisJICovCisJaW50ZXJmYWNlIENvbm5lY3RvckRlc2NyaXB0b3IgeworCisJCS8qKgorCQkgKiBSZXRyaWV2ZXMgdGhlIGludGVybmFsIG5hbWUgb2YgYSBzdXBwb3J0ZWQge0BsaW5rIENvbm5lY3Rvcn0uIFRoZQorCQkgKiBpbnRlcm5hbCBuYW1lIGlzIHRoZSBvbmUgYSB1c2VyIGNhbiBzcGVjaWZ5IGZvciBpbnN0YW5jZSBpbiB0aGUKKwkJICoge0Bjb2RlIElkZW50aXR5QWdlbnR9IHNldHRpbmcgaW4ge0Bjb2RlIH4vLnNzaC9jb25maWd9IHRvIHNlbGVjdCB0aGUKKwkJICogY29ubmVjdG9yLgorCQkgKgorCQkgKiBAcmV0dXJuIHRoZSBpbnRlcm5hbCBuYW1lOyBub3QgZW1wdHkKKwkJICovCisJCUBOb25OdWxsCisJCVN0cmluZyBnZXRJZGVudGl0eUFnZW50KCk7CisKKwkJLyoqCisJCSAqIFJldHJpZXZlcyBhIGRpc3BsYXkgbmFtZSBmb3IgYSB7QGxpbmsgQ29ubmVjdG9yfSwgc3VpdGFibGUgZm9yCisJCSAqIHNob3dpbmcgaW4gYSBVSS4KKwkJICoKKwkJICogQHJldHVybiB0aGUgZGlzcGxheSBuYW1lOyBwcm9wZXJseSBsb2NhbGl6ZWQgYW5kIG5vdCBlbXB0eQorCQkgKi8KKwkJQE5vbk51bGwKKwkJU3RyaW5nIGdldERpc3BsYXlOYW1lKCk7CisJfQorCisJLyoqCisJICogVGVsbHMgd2hpY2gga2luZHMgb2YgU1NIIGFnZW50cyB0aGlzIHtAbGluayBDb25uZWN0b3JGYWN0b3J5fSBzdXBwb3J0cy4KKwkgKiA8cD4KKwkgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIG1ldGhvZCBzaG91bGQgZG9jdW1lbnQgdGhlIHBvc3NpYmxlIHZhbHVlcyBpdAorCSAqIHJldHVybnMuCisJICogPC9wPgorCSAqCisJICogQHJldHVybiBhbiBpbW11dGFibGUgY29sbGVjdGlvbiBvZiB7QGxpbmsgQ29ubmVjdG9yRGVzY3JpcHRvcn1zLAorCSAqICAgICAgICAgaW5jbHVkaW5nIHtAbGluayAjZ2V0RGVmYXVsdENvbm5lY3RvcigpfSBhbmQgbm90IGluY2x1ZGluZyBhCisJICogICAgICAgICBkZXNjcmlwdG9yIGZvciBpbnRlcm5hbCBuYW1lICJub25lIgorCSAqLworCUBOb25OdWxsCisJQ29sbGVjdGlvbjxDb25uZWN0b3JEZXNjcmlwdG9yPiBnZXRTdXBwb3J0ZWRDb25uZWN0b3JzKCk7CisKKwkvKioKKwkgKiBUZWxscyB3aGF0IGtpbmQgb2Yge0BsaW5rIENvbm5lY3Rvcn0gdGhpcyB7QGxpbmsgQ29ubmVjdG9yRmFjdG9yeX0KKwkgKiBjcmVhdGVzIGlmIHtAbGluayBDb25uZWN0b3JGYWN0b3J5I2NyZWF0ZShTdHJpbmcsIEZpbGUpfSBpcyBjYWxsZWQgd2l0aAorCSAqIHtAY29kZSBpZGVudGl0eUFnZW50ID09IG51bGx9LgorCSAqCisJICogQHJldHVybiBhIHtAbGluayBDb25uZWN0b3JEZXNjcmlwdG9yfSBmb3IgdGhlIGRlZmF1bHQgY29ubmVjdG9yCisJICovCisJQ29ubmVjdG9yRGVzY3JpcHRvciBnZXREZWZhdWx0Q29ubmVjdG9yKCk7Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvYWdlbnQvcGFja2FnZS1pbmZvLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvYWdlbnQvcGFja2FnZS1pbmZvLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzFjYTQzZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9hZ2VudC9wYWNrYWdlLWluZm8uamF2YQpAQCAtMCwwICsxLDYgQEAKKy8qKgorICogU2VydmljZSBwcm92aWRlciBpbnRlcmZhY2VzIGZvciBjb25uZWN0aW5nIHRvIGFuIFNTSCBhZ2VudC4gSW1wbGVtZW50YXRpb25zCisgKiBhcmUgZGlzY292ZXJlZCB2aWEgdGhlIHtAbGluayBqYXZhLnV0aWwuU2VydmljZUxvYWRlcn0sIG9yIGNhbiBiZSBzZXQKKyAqIGV4cGxpY2l0bHkgb24gYSB7QGxpbmsgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZC5Tc2hkU2Vzc2lvbkZhY3Rvcnl9LgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaGQuYWdlbnQ7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvcGFja2FnZS1pbmZvLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5hcGFjaGUvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaGQvcGFja2FnZS1pbmZvLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTI2MjM0YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoZC9wYWNrYWdlLWluZm8uamF2YQpAQCAtMCwwICsxLDYgQEAKKy8qKgorICogUHJvdmlkZXMgYSBKR2l0IHtAbGluayBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hTZXNzaW9uRmFjdG9yeX0KKyAqIGltcGxlbWVudGVkIHZpYSA8YSBocmVmPSJodHRwczovL21pbmEuYXBhY2hlLm9yZy9zc2hkLXByb2plY3QvIj5BcGFjaGUgTUlOQQorICogc3NoZDwvYT4uCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoZDsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0Ly5jbGFzc3BhdGgKaW5kZXggZjA4YWYwYS4uNTg5OWE0ZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0Ly5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0Ly5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJ0c3QiPgogCQk8YXR0cmlidXRlcz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IGMxNmM5ODYuLmIwMTI4NTYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtNyw5ICs3LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubnVsbGFuYWx5c2lzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtODEsNyArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRQcmV2aWV3RmVhdHVyZXM9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zcGVjaWFsUGFyYW1ldGVySGlkaW5nRmllbGQ9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3RhdGljQWNjZXNzUmVjZWl2ZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NPcHRpb25hbEVycm9ycz1kaXNhYmxlZApAQCAtMTE1LDM1ICsxMTUsNjYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkV2FybmluZ1Rva2VuPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udmFyYXJnc0FyZ3VtZW50TmVlZENhc3Q9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2Nlc3NBbm5vdGF0aW9ucz1kaXNhYmxlZAotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1kaXNhYmxlZAotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE1Miw2ICsxODMsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTYxLDEyICsxOTMsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzYsNyArMjE0LDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODgsMTAgKzIyOCwxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMjAxLDE1ICsyNDIsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIyMywxMSArMjY2LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI1MywxMCArMzAwLDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNzMsNiArMzI2LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yODEsMTMgKzMzNSwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwNCw2ICszNjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMzAsMTAgKzM5MiwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQ1LDYgKzQxMiw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzYwLDYgKzQyOSw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM3MCw5ICs0NDAsMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzg0LDIwICs0NTcsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwppbmRleCBmZWYzNzEzLi41Y2ZiOGI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IGI1MmI4MjAuLjUyZTY5YmQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTMsMTcgKzMsMTggQEAKIEJ1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKIEF1dG9tYXRpYy1Nb2R1bGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0CiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xMQogSW1wb3J0LVBhY2thZ2U6IGNvbS5qY3JhZnQuanNjaDt2ZXJzaW9uPSJbMC4xLjU0LDAuMi4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5zc2g7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnNzaDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCiAgb3JnLmhhbWNyZXN0O3ZlcnNpb249IlsxLjEuMCwzLjAuMCkiLAogIG9yZy5qdW5pdDt2ZXJzaW9uPSJbNC4xMyw1LjAuMCkiLAogIG9yZy5qdW5pdC5leHBlcmltZW50YWwudGhlb3JpZXM7dmVyc2lvbj0iWzQuMTMsNS4wLjApIiwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3BvbS54bWwKaW5kZXggYmQwNDM2ZS4uNmYxOTllNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3BvbS54bWwKQEAgLTE3LDcgKzE3LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQtcGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0PC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9KU2NoU3NoUHJvdG9jb2wyVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9KU2NoU3NoUHJvdG9jb2wyVGVzdC5qYXZhCnNpbWlsYXJpdHkgaW5kZXggODklCnJlbmFtZSBmcm9tIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvSlNjaFNzaFByb3RvY29sMlRlc3QuamF2YQpyZW5hbWUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9KU2NoU3NoUHJvdG9jb2wyVGVzdC5qYXZhCmluZGV4IDA5MjljNTUuLjYxMWQ0ZTggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvSlNjaFNzaFByb3RvY29sMlRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pTY2hTc2hQcm90b2NvbDJUZXN0LmphdmEKQEAgLTksNyArOSw3IEBACiAgKi8KIAogLy9UT0RPKG1zKTogbW92ZSB0byBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoIGluIDYuMAotcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDsKK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoLmpzY2g7CiAKIGltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRUcnVlOwogCkBAIC0yNCw3ICsyNCwxMSBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbnN0YW50czsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5SZXBvc2l0b3J5OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLlN0b3JlZENvbmZpZzsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5PcGVuU3NoQ29uZmlnLkhvc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuQ3JlZGVudGlhbHNQcm92aWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5SZW1vdGVTZXNzaW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlVSSWlzaDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaC5PcGVuU3NoQ29uZmlnLkhvc3Q7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwogCiBpbXBvcnQgY29tLmpjcmFmdC5qc2NoLkpTY2g7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0pTY2hTc2hUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pTY2hTc2hUZXN0LmphdmEKc2ltaWxhcml0eSBpbmRleCA4OCUKcmVuYW1lIGZyb20gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9KU2NoU3NoVGVzdC5qYXZhCnJlbmFtZSB0byBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pTY2hTc2hUZXN0LmphdmEKaW5kZXggMjJjYWViZC4uNTRjYjg0YiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9KU2NoU3NoVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoL2pzY2gvSlNjaFNzaFRlc3QuamF2YQpAQCAtOCw4ICs4LDcgQEAKICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAqLwogCi0vL1RPRE8obXMpOiBtb3ZlIHRvIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2ggaW4gNi4wCi1wYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0OworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaDsKIAogaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydFRydWU7CiAKQEAgLTIyLDcgKzIxLDExIEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuVHJhbnNwb3J0RXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuc3NoLlNzaFRlc3RCYXNlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbnN0YW50czsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5PcGVuU3NoQ29uZmlnLkhvc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuQ3JlZGVudGlhbHNQcm92aWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5SZW1vdGVTZXNzaW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlVSSWlzaDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaC5PcGVuU3NoQ29uZmlnLkhvc3Q7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwogaW1wb3J0IG9yZy5qdW5pdC5leHBlcmltZW50YWwudGhlb3JpZXMuVGhlb3JpZXM7CiBpbXBvcnQgb3JnLmp1bml0LnJ1bm5lci5SdW5XaXRoOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnlUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pzY2hDb25maWdTZXNzaW9uRmFjdG9yeVRlc3QuamF2YQpzaW1pbGFyaXR5IGluZGV4IDk4JQpyZW5hbWUgZnJvbSBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0pzY2hDb25maWdTZXNzaW9uRmFjdG9yeVRlc3QuamF2YQpyZW5hbWUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnlUZXN0LmphdmEKaW5kZXggNGVmZWFlMS4uNDMwOWJlZCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnlUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnlUZXN0LmphdmEKQEAgLTksNyArOSw3IEBACiAgKi8KIAogLy9UT0RPKG1zKTogbW92ZSB0byBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoIGluIDYuMAotcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDsKK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoLmpzY2g7CiAKIGltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRFcXVhbHM7CiAKQEAgLTE5LDYgKzE5LDcgQEAKIGltcG9ydCBqYXZhLnV0aWwuY29uY3VycmVudC5UaW1lVW5pdDsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuTW9ja1N5c3RlbVJlYWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5VUklpc2g7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CiBpbXBvcnQgb3JnLmp1bml0LkFmdGVyOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9PcGVuU3NoQ29uZmlnVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9PcGVuU3NoQ29uZmlnVGVzdC5qYXZhCnNpbWlsYXJpdHkgaW5kZXggOTglCnJlbmFtZSBmcm9tIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvT3BlblNzaENvbmZpZ1Rlc3QuamF2YQpyZW5hbWUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9PcGVuU3NoQ29uZmlnVGVzdC5qYXZhCmluZGV4IDkzZDg1ZTIuLjlhNjFjYzQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvT3BlblNzaENvbmZpZ1Rlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL09wZW5Tc2hDb25maWdUZXN0LmphdmEKQEAgLTgsOCArOCw3IEBACiAgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCiAgKi8KIAotLy9UT0RPKG1zKTogbW92ZSB0byBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoIGluIDYuMAotcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDsKK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoLmpzY2g7CiAKIGltcG9ydCBzdGF0aWMgamF2YS5uaW8uY2hhcnNldC5TdGFuZGFyZENoYXJzZXRzLlVURl84OwogaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEFycmF5RXF1YWxzOwpAQCAtMjksNyArMjgsOCBAQAogCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5SZXBvc2l0b3J5VGVzdENhc2U7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uc3RhbnRzOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0Lk9wZW5Tc2hDb25maWcuSG9zdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hDb25zdGFudHM7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoLmpzY2guT3BlblNzaENvbmZpZy5Ib3N0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5GUzsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRmlsZVV0aWxzOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CkBAIC0xMzgsNyArMTM4LDcgQEAgcHVibGljIHZvaWQgdGVzdFF1b3RlUGFyc2luZygpIHRocm93cyBFeGNlcHRpb24gewogCQlhc3NlcnRFcXVhbHMoMjIyMiwgb3NjLmxvb2t1cCgidW5xdW90ZWQiKS5nZXRQb3J0KCkpOwogCQlhc3NlcnRFcXVhbHMoMjIyMiwgb3NjLmxvb2t1cCgiaG9zdHMiKS5nZXRQb3J0KCkpOwogCQlhc3NlcnRFcXVhbHMoIiBzcGFjZWRcdHRsZCAiLCBvc2MubG9va3VwKCJzcGFjZWQiKS5nZXRIb3N0TmFtZSgpKTsKLQkJYXNzZXJ0RXF1YWxzKCJiYWQudGxkXCIiLCBvc2MubG9va3VwKCJiYWQiKS5nZXRIb3N0TmFtZSgpKTsKKwkJYXNzZXJ0RXF1YWxzKCJiYWQudGxkIiwgb3NjLmxvb2t1cCgiYmFkIikuZ2V0SG9zdE5hbWUoKSk7CiAJfQogCiAJQFRlc3QKQEAgLTIyOSw3ICsyMjksNyBAQCBwdWJsaWMgdm9pZCB0ZXN0QWxpYXNfUHJlZmVycmVkQXV0aGVudGljYXRpb25zKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJQFRlc3QKIAlwdWJsaWMgdm9pZCB0ZXN0QWxpYXNfSW5oZXJpdFByZWZlcnJlZEF1dGhlbnRpY2F0aW9ucygpIHRocm93cyBFeGNlcHRpb24gewogCQljb25maWcoIkhvc3Qgb3JjelxuIiArICJcdEhvc3ROYW1lIHJlcG8ub3IuY3pcbiIgKyAiXG4iICsgIkhvc3QgKlxuIgotCQkJCSsgIlx0UHJlZmVycmVkQXV0aGVudGljYXRpb25zIHB1YmxpY2tleSwgaG9zdGJhc2VkXG4iKTsKKwkJCQkrICJcdFByZWZlcnJlZEF1dGhlbnRpY2F0aW9ucyAncHVibGlja2V5LCBob3N0YmFzZWQnXG4iKTsKIAkJZmluYWwgSG9zdCBoID0gb3NjLmxvb2t1cCgib3JjeiIpOwogCQlhc3NlcnROb3ROdWxsKGgpOwogCQlhc3NlcnRFcXVhbHMoInB1YmxpY2tleSxob3N0YmFzZWQiLCBoLmdldFByZWZlcnJlZEF1dGhlbnRpY2F0aW9ucygpKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoL2pzY2gvU2VydmljZUxvYWRlclRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoL2pzY2gvU2VydmljZUxvYWRlclRlc3QuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYmFlMjIxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9TZXJ2aWNlTG9hZGVyVGVzdC5qYXZhCkBAIC0wLDAgKzEsMjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCisgKgorICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCisgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgorICoKKyAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaDsKKworaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydE5vdE51bGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hTZXNzaW9uRmFjdG9yeTsKK2ltcG9ydCBvcmcuanVuaXQuVGVzdDsKKworcHVibGljIGNsYXNzIFNlcnZpY2VMb2FkZXJUZXN0IHsKKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdERlZmF1bHRGYWN0b3J5Rm91bmQoKSB7CisJCVNzaFNlc3Npb25GYWN0b3J5IGRlZmF1bHRGYWN0b3J5ID0gU3NoU2Vzc2lvbkZhY3RvcnkuZ2V0SW5zdGFuY2UoKTsKKwkJYXNzZXJ0Tm90TnVsbChkZWZhdWx0RmFjdG9yeSk7CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uY2xhc3NwYXRoCmluZGV4IDExMDE2OGYuLjFmZGUzMTggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLy5jbGFzc3BhdGgKQEAgLTEsNiArMSwxMCBAQAogPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KIDxjbGFzc3BhdGg+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJyZXNvdXJjZXMiLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggMTVlZjJhYS4uZDFmNTRiYiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IDA5MjdjMGMuLmVkOTk3ZmIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMywyNCArMywxOSBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoCiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoO3NpbmdsZXRvbjo9dHJ1ZQotRnJhZ21lbnQtSG9zdDogb3JnLmVjbGlwc2UuamdpdDtidW5kbGUtdmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIgorRnJhZ21lbnQtSG9zdDogb3JnLmVjbGlwc2UuamdpdDtidW5kbGUtdmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIKIEJ1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCiBCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KIEJ1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5Ci1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgotQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xLjgKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5qc2NoO3ZlcnNpb249IjUuMTMuMyI7eC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuZWdpdC5jb3JlIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSI1LjEzLjMiOwotICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQsCi0gICBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2gsCi0gICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwsCi0gICBjb20uamNyYWZ0LmpzY2giCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoLmpzY2g7dmVyc2lvbj0iNi4wLjEiCiBJbXBvcnQtUGFja2FnZTogY29tLmpjcmFmdC5qc2NoO3ZlcnNpb249IlswLjEuMzcsMC4yLjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2g7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm5sczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2g7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5pbzt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuc2xmNGo7dmVyc2lvbj0iWzEuNy4wLDIuMC4wKSIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKaW5kZXggOWU0MzMzNC4uM2MzZjJiMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaCAtIFNvdXJjZXMKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2guc291cmNlCiBCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1FY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaDt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoO3ZlcnNpb249IjYuMC4xLnF1YWxpZmllciI7cm9vdHM9Ii4iCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL1JFQURNRS5tZCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvUkVBRE1FLm1kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI2NGJlZjMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL1JFQURNRS5tZApAQCAtMCwwICsxLDU5IEBACisjIEpHaXQgU1NIIHN1cHBvcnQgdmlhIEpTY2gKKworVGhpcyBidW5kbGUgcHJvdmlkZXMgYW4gaW1wbGVtZW50YXRpb24gb2YgZ2l0IHRyYW5zcG9ydCBvdmVyIFNTSCBpbXBsZW1lbnRlZCB2aWEgSlNjaC4KKworKipUaGlzIGJ1bmRsZSBzaG91bGQgYmUgY29uc2lkZXJlZCBkZXByZWNhdGVkKiouIEl0IGlzIGVzc2VudGlhbGx5IHVubWFpbnRhaW5lZCwgYW5kCit0aGUgSkdpdCBwcm9qZWN0IG1heSBkZWNpZGUgYW55dGltZSB0byByZW1vdmUgaXQgY29tcGxldGVseSB3aXRob3V0IGZ1cnRoZXIgYWRvLgorCitUaGUgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgU1NIIHRyYW5zcG9ydCBpcyBpbiBidW5kbGUgYG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZWAgYW5kIGlzCitidWlsdCB1cG9uIFtBcGFjaGUgTUlOQSBzc2hkXShodHRwczovL21pbmEuYXBhY2hlLm9yZy9zc2hkLXByb2plY3QvKS4KKworIyMgU2VydmljZSByZWdpc3RyYXRpb24KKworVGhpcyBidW5kbGUgZGVjbGFyZXMgYSBzZXJ2aWNlIGZvciB0aGUgYGphdmEudXRpbC5TZXJ2aWNlTG9hZGVyYCBmb3IgaW50ZXJmYWNlCitgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuc3NoLlNzaFNlc3Npb25GYWN0b3J5YC4gVGhlIGNvcmUgSkdpdCBidW5kbGUgdXNlcyB0aGUgc2VydmljZQorbG9hZGVyIHRvIHBpY2sgdXAgYW4gaW1wbGVtZW50YXRpb24gb2YgdGhhdCBpbnRlcmZhY2UuIFRoZSBidW5kbGUgaW4gYW4gT1NHaSBmcmFnbWVudAordG8gZW5zdXJlIHRoYXQgdGhlIHNlcnZpY2UgbG9hZGVyIHdvcmtzIGluIGFuIE9TR2kgZW52aXJvbm1lbnQgd2l0aG91dCB0aGUgbmVlZCB0bworaW5zdGFsbCBhIHNlcnZpY2UgbG9hZGVyIGJyaWRnZS4KKworTm90ZSB0aGF0IEpHaXQgc2ltcGx5IHVzZXMgdGhlIGZpcnN0IGBTc2hTZXNzaW9uRmFjdG9yeWAgcHJvdmlkZWQgYnkgdGhlIGBTZXJ2aWNlTG9hZGVyYC4KKworIyMgVXNpbmcgYSBkaWZmZXJlbnQgU1NIIGltcGxlbWVudGF0aW9uCisKK1RvIHVzZSBhIGRpZmZlcmVudCBTU0ggaW1wbGVtZW50YXRpb246CisKKyogRG8gbm90IGluY2x1ZGUgdGhpcyBidW5kbGUgaW4geW91ciBwcm9kdWN0LgorKiBJbmNsdWRlIHRoZSBidW5kbGUgb2YgdGhlIGFsdGVybmF0ZSBpbXBsZW1lbnRhdGlvbi4KKyAgICAqIElmIHRoZSBzZXJ2aWNlIGxvYWRlciBmaW5kcyB0aGUgYWx0ZXJuYXRlIGltcGxlbWVudGF0aW9uLCBub3RoaW5nIG1vcmUgaXMgbmVlZGVkLgorICAgICogT3RoZXJ3aXNlIGVuc3VyZSB0aGUgc2VydmljZSBkZWNsYXJhdGlvbiBmcm9tIHRoZSBvdGhlciBidW5kbGUgaXMgb24gdGhlIENsYXNzcGF0aCBvZiBidW5kbGUgYG9yZy5lY2xpcHNlLmpnaXRgLAorICAgICogb3Igc2V0IHRoZSBgU3NoU2Vzc2lvbkZhY3RvcnlgIGZvciBKR2l0IGV4cGxpY2l0bHkgKHNlZSBiZWxvdykuCisKKyMjIENvbmZpZ3VyaW5nIGFuIFNTSCBpbXBsZW1lbnRhdGlvbiBmb3IgSkdpdAorCitUaGUgc2ltcGxlc3Qgd2F5IHRvIHNldCBhbiBTU0ggaW1wbGVtZW50YXRpb24gZm9yIEpHaXQgaXMgdG8gaW5zdGFsbCBpdCBnbG9iYWxseSB2aWEKK2BTc2hTZXNzaW9uRmFjdG9yeS5zZXRJbnN0YW5jZSgpYC4gVGhpcyBpbnN0YW5jZSB3aWxsIGJlIHVzZWQgYnkgSkdpdCBmb3IgYWxsIFNTSAorY29ubmVjdGlvbnMgYnkgZGVmYXVsdC4KKworSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBzZXQgdGhlIFNTSCBpbXBsZW1lbnRhdGlvbiBpbmRpdmlkdWFsbHkgZm9yIGFueSBnaXQgY29tbWFuZAordGhhdCBuZWVkcyBhIHRyYW5zcG9ydCAoYFRyYW5zcG9ydENvbW1hbmRgKSB2aWEgYSBgb3JnLmVjbGlwc2UuamdpdC5hcGkuVHJhbnNwb3J0Q29uZmlnQ2FsbGJhY2tgLgorCitUbyBkbyBzbywgc2V0IHRoZSB3YW50ZWQgYFNzaFNlc3Npb25GYWN0b3J5YCBvbiB0aGUgU1NIIHRyYW5zcG9ydCwgbGlrZToKKworYGBgamF2YQorU3NoU2Vzc2lvbkZhY3RvcnkgY3VzdG9tRmFjdG9yeSA9IC4uLjsgLy8gR2V0IGl0IGZyb20gd2hlcmV2ZXIKK0ZldGNoQ29tbWFuZCBmZXRjaCA9IGdpdC5mZXRjaCgpCisgIC5zZXRUcmFuc3BvcnRDb25maWdDYWxsYmFjayh0cmFuc3BvcnQgLT4geworICAgIGlmICh0cmFuc3BvcnQgaW5zdGFuY2VvZiBTc2hUcmFuc3BvcnQpIHsKKyAgICAgICgoU3NoVHJhbnNwb3J0KSB0cmFuc3BvcnQpLnNldFNzaFNlc3Npb25GYWN0b3J5KGN1c3RvbUZhY3RvcnkpOworICAgIH0KKyAgfSkKKyAgLi4uCisgIC5jYWxsKCk7CitgYGAKKworIyMgVXNpbmcgYW4gZXh0ZXJuYWwgU1NIIGV4ZWN1dGFibGUKKworSkdpdCBoYXMgYnVpbHQtaW4gc3VwcG9ydCBmb3Igbm90IHVzaW5nIGFueSBKYXZhIFNTSCBpbXBsZW1lbnRhdGlvbiBidXQgYW4gZXh0ZXJuYWwgU1NICitleGVjdXRhYmxlLiBUbyB1c2UgYW4gZXh0ZXJuYWwgU1NIIGV4ZWN1dGFibGUsIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZSAqKkdJVF9TU0gqKiB0bwordGhlIHBhdGggb2YgdGhlIGV4ZWN1dGFibGUuIEpHaXQgd2lsbCBjcmVhdGUgYSBzdWItcHJvY2VzcyB0byBydW4gdGhlIGV4ZWN1dGFibGUgYW5kCitjb21tdW5pY2F0ZSB3aXRoIHRoaXMgc3ViLXByb2Nlc3MgdG8gcGVyZm9ybSB0aGUgZ2l0IG9wZXJhdGlvbi4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvcG9tLnhtbAppbmRleCAxZTYxOTVjLi4yYTVmOWI4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9wb20ueG1sCkBAIC0xNyw3ICsxNyw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2g8L2FydGlmYWN0SWQ+CkBAIC05NiwxNSArOTYsMTUgQEAKIAogICAgICAgPHBsdWdpbj4KICAgICAgICAgPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgotICAgICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLXNvdXJjZS1wbHVnaW48L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgPGluaGVyaXRlZD50cnVlPC9pbmhlcml0ZWQ+Ci0gICAgICAgICAgPGV4ZWN1dGlvbnM+Ci0gICAgICAgICAgICA8ZXhlY3V0aW9uPgotICAgICAgICAgICAgICA8aWQ+YXR0YWNoLXNvdXJjZXM8L2lkPgotICAgICAgICAgICAgICA8cGhhc2U+cHJvY2Vzcy1jbGFzc2VzPC9waGFzZT4KLSAgICAgICAgICAgICAgPGdvYWxzPgotICAgICAgICAgICAgICAgIDxnb2FsPmphcjwvZ29hbD4KLSAgICAgICAgICAgICAgPC9nb2Fscz4KKyAgICAgICAgPGFydGlmYWN0SWQ+bWF2ZW4tc291cmNlLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKyAgICAgICAgPGluaGVyaXRlZD50cnVlPC9pbmhlcml0ZWQ+CisgICAgICAgIDxleGVjdXRpb25zPgorICAgICAgICAgIDxleGVjdXRpb24+CisgICAgICAgICAgICA8aWQ+YXR0YWNoLXNvdXJjZXM8L2lkPgorICAgICAgICAgICAgPHBoYXNlPnByb2Nlc3MtY2xhc3NlczwvcGhhc2U+CisgICAgICAgICAgICA8Z29hbHM+CisgICAgICAgICAgICAgIDxnb2FsPmphcjwvZ29hbD4KKyAgICAgICAgICAgIDwvZ29hbHM+CiAgICAgICAgICAgICA8Y29uZmlndXJhdGlvbj4KICAgICAgICAgICAgICAgPGFyY2hpdmU+CiAgICAgICAgICAgICAgICAgPG1hbmlmZXN0RmlsZT4ke3NvdXJjZS1idW5kbGUtbWFuaWZlc3R9PC9tYW5pZmVzdEZpbGU+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3Jlc291cmNlcy9NRVRBLUlORi9zZXJ2aWNlcy9vcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hTZXNzaW9uRmFjdG9yeSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvcmVzb3VyY2VzL01FVEEtSU5GL3NlcnZpY2VzL29yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5CmluZGV4IDgxOTI3NDYuLmFjYTQ4OTYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvcmVzb3VyY2VzL01FVEEtSU5GL3NlcnZpY2VzL29yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5CisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvcmVzb3VyY2VzL01FVEEtSU5GL3NlcnZpY2VzL29yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5CkBAIC0xICsxIEBACi1vcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnkKK29yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoLkpzY2hDb25maWdTZXNzaW9uRmFjdG9yeQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQ3JlZGVudGlhbHNQcm92aWRlclVzZXJJbmZvLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2gvanNjaC9DcmVkZW50aWFsc1Byb3ZpZGVyVXNlckluZm8uamF2YQpzaW1pbGFyaXR5IGluZGV4IDk0JQpyZW5hbWUgZnJvbSBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9DcmVkZW50aWFsc1Byb3ZpZGVyVXNlckluZm8uamF2YQpyZW5hbWUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL2pzY2gvQ3JlZGVudGlhbHNQcm92aWRlclVzZXJJbmZvLmphdmEKaW5kZXggMDFhZGNmMy4uNTA1MzQ5MyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQ3JlZGVudGlhbHNQcm92aWRlclVzZXJJbmZvLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL2pzY2gvQ3JlZGVudGlhbHNQcm92aWRlclVzZXJJbmZvLmphdmEKQEAgLTgsMTMgKzgsMTYgQEAKICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAqLwogCi0vL1RPRE8obXMpOiBtb3ZlIHRvIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2ggaW4gNi4wCi1wYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0OworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2guanNjaDsKIAogaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CiBpbXBvcnQgamF2YS51dGlsLkFycmF5czsKIGltcG9ydCBqYXZhLnV0aWwuTGlzdDsKIAoraW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LkNyZWRlbnRpYWxJdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LkNyZWRlbnRpYWxzUHJvdmlkZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuVVJJaXNoOworCiBpbXBvcnQgY29tLmpjcmFmdC5qc2NoLlNlc3Npb247CiBpbXBvcnQgY29tLmpjcmFmdC5qc2NoLlVJS2V5Ym9hcmRJbnRlcmFjdGl2ZTsKIGltcG9ydCBjb20uamNyYWZ0LmpzY2guVXNlckluZm87CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9qc2NoL0pTY2hUZXh0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2gvanNjaC9KU2NoVGV4dC5qYXZhCnNpbWlsYXJpdHkgaW5kZXggOTQlCnJlbmFtZSBmcm9tIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L2pzY2gvSlNjaFRleHQuamF2YQpyZW5hbWUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL2pzY2gvSlNjaFRleHQuamF2YQppbmRleCA0ZDRjOWNiLi5jMDkwY2Q3IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9qc2NoL0pTY2hUZXh0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL2pzY2gvSlNjaFRleHQuamF2YQpAQCAtNyw3ICs3LDcgQEAKICAqCiAgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCiAgKi8KLXBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuanNjaDsKK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuc3NoLmpzY2g7CiAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lm5scy5OTFM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5ubHMuVHJhbnNsYXRpb25CdW5kbGU7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pzY2hDb25maWdTZXNzaW9uRmFjdG9yeS5qYXZhCnNpbWlsYXJpdHkgaW5kZXggOTQlCnJlbmFtZSBmcm9tIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0pzY2hDb25maWdTZXNzaW9uRmFjdG9yeS5qYXZhCnJlbmFtZSB0byBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnkuamF2YQppbmRleCA4OGI4MjQzLi43N2I2OGJiIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnkuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9Kc2NoQ29uZmlnU2Vzc2lvbkZhY3RvcnkuamF2YQpAQCAtMTUsOCArMTUsNyBAQAogICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQogICovCiAKLS8vVE9ETyhtcyk6IG1vdmUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaCBpbiA2LjAKLXBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7CitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoOwogCiBpbXBvcnQgc3RhdGljIGphdmEudXRpbC5zdHJlYW0uQ29sbGVjdG9ycy5qb2luaW5nOwogaW1wb3J0IHN0YXRpYyBqYXZhLnV0aWwuc3RyZWFtLkNvbGxlY3RvcnMudG9MaXN0OwpAQCAtMzgsNyArMzcsMTMgQEAKIGltcG9ydCBqYXZhLnV0aWwuc3RyZWFtLlN0cmVhbTsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLlRyYW5zcG9ydEV4Y2VwdGlvbjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5qc2NoLkpTY2hUZXh0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaC5qc2NoLkNyZWRlbnRpYWxzUHJvdmlkZXJVc2VySW5mbzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2guanNjaC5KU2NoVGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5DcmVkZW50aWFsc1Byb3ZpZGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlJlbW90ZVNlc3Npb247CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuU3NoQ29uc3RhbnRzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaFNlc3Npb25GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlVSSWlzaDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlN0cmluZ1V0aWxzOwogaW1wb3J0IG9yZy5zbGY0ai5Mb2dnZXI7CkBAIC02MSw4ICs2NiwxMCBAQAogICogdXNlZCBieSBDIEdpdC4KICAqIDxwPgogICogVGhlIGZhY3RvcnkgZG9lcyBub3QgcHJvdmlkZSBVSSBiZWhhdmlvci4gT3ZlcnJpZGUgdGhlIG1ldGhvZAotICoge0BsaW5rICNjb25maWd1cmUob3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuT3BlblNzaENvbmZpZy5Ib3N0LCBTZXNzaW9uKX0gdG8KLSAqIHN1cHBseSBhcHByb3ByaWF0ZSB7QGxpbmsgY29tLmpjcmFmdC5qc2NoLlVzZXJJbmZvfSB0byB0aGUgc2Vzc2lvbi4KKyAqIHtAbGluayAjY29uZmlndXJlKG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoLk9wZW5Tc2hDb25maWcuSG9zdCwgU2Vzc2lvbil9CisgKiB0byBzdXBwbHkgYXBwcm9wcmlhdGUge0BsaW5rIGNvbS5qY3JhZnQuanNjaC5Vc2VySW5mb30gdG8gdGhlIHNlc3Npb24uCisgKgorICogQHNpbmNlIDYuMAogICovCiBwdWJsaWMgY2xhc3MgSnNjaENvbmZpZ1Nlc3Npb25GYWN0b3J5IGV4dGVuZHMgU3NoU2Vzc2lvbkZhY3RvcnkgewogCkBAIC0xNzgsOCArMTg1LDIwIEBAIHByaXZhdGUgc3RhdGljIGJvb2xlYW4gaXNBdXRoZW50aWNhdGlvbkNhbmNlbGVkKEpTY2hFeGNlcHRpb24gZSkgewogCQlyZXR1cm4gZS5nZXRDYXVzZSgpID09IG51bGwgJiYgZS5nZXRNZXNzYWdlKCkuZXF1YWxzKCJBdXRoIGNhbmNlbCIpOyAvLyROT04tTkxTLTEkCiAJfQogCi0JLy8gUGFja2FnZSB2aXNpYmlsaXR5IGZvciB0ZXN0cwotCVNlc3Npb24gY3JlYXRlU2Vzc2lvbihDcmVkZW50aWFsc1Byb3ZpZGVyIGNyZWRlbnRpYWxzUHJvdmlkZXIsCisJLyoqCisJICogVXNlIGZvciB0ZXN0cyBvbmx5CisJICoKKwkgKiBAcGFyYW0gY3JlZGVudGlhbHNQcm92aWRlcgorCSAqIEBwYXJhbSBmcworCSAqIEBwYXJhbSB1c2VyCisJICogQHBhcmFtIHBhc3MKKwkgKiBAcGFyYW0gaG9zdAorCSAqIEBwYXJhbSBwb3J0CisJICogQHBhcmFtIGhjCisJICogQHJldHVybiBzZXNzaW9uCisJICogQHRocm93cyBKU2NoRXhjZXB0aW9uCisJICovCisJcHVibGljIFNlc3Npb24gY3JlYXRlU2Vzc2lvbihDcmVkZW50aWFsc1Byb3ZpZGVyIGNyZWRlbnRpYWxzUHJvdmlkZXIsCiAJCQlGUyBmcywgU3RyaW5nIHVzZXIsIGZpbmFsIFN0cmluZyBwYXNzLCBTdHJpbmcgaG9zdCwgaW50IHBvcnQsCiAJCQlmaW5hbCBPcGVuU3NoQ29uZmlnLkhvc3QgaGMpIHRocm93cyBKU2NoRXhjZXB0aW9uIHsKIAkJZmluYWwgU2Vzc2lvbiBzZXNzaW9uID0gY3JlYXRlU2Vzc2lvbihoYywgdXNlciwgaG9zdCwgcG9ydCwgZnMpOwpAQCAtNTQ4LDcgKzU2Nyw3IEBAIHB1YmxpYyBTdHJpbmcgZ2V0VmFsdWUoU3RyaW5nIGtleSkgewogCSAqIEBwYXJhbSBjb25maWcKIAkgKiAgICAgICAgICAgIHRvIHVzZQogCSAqLwotCXN5bmNocm9uaXplZCB2b2lkIHNldENvbmZpZyhPcGVuU3NoQ29uZmlnIGNvbmZpZykgeworCXB1YmxpYyBzeW5jaHJvbml6ZWQgdm9pZCBzZXRDb25maWcoT3BlblNzaENvbmZpZyBjb25maWcpIHsKIAkJdGhpcy5jb25maWcgPSBjb25maWc7CiAJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvSnNjaFNlc3Npb24uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pzY2hTZXNzaW9uLmphdmEKc2ltaWxhcml0eSBpbmRleCA5NSUKcmVuYW1lIGZyb20gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvSnNjaFNlc3Npb24uamF2YQpyZW5hbWUgdG8gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoL2pzY2gvSnNjaFNlc3Npb24uamF2YQppbmRleCBjN2QwOTQxLi4wMmNkZjcwIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Kc2NoU2Vzc2lvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL0pzY2hTZXNzaW9uLmphdmEKQEAgLTEzLDggKzEzLDcgQEAKICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAqLwogCi0vL1RPRE8obXMpOiBtb3ZlIHRvIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2ggaW4gNi4wCi1wYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0OworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaDsKIAogaW1wb3J0IGphdmEuaW8uQnVmZmVyZWRPdXRwdXRTdHJlYW07CiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKQEAgLTI5LDcgKzI4LDEwIEBACiBpbXBvcnQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGltZVVuaXQ7CiAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5UcmFuc3BvcnRFeGNlcHRpb247Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuanNjaC5KU2NoVGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2guanNjaC5KU2NoVGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5GdHBDaGFubmVsOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlJlbW90ZVNlc3Npb24yOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlVSSWlzaDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuaW8uSXNvbGF0ZWRPdXRwdXRTdHJlYW07CiAKIGltcG9ydCBjb20uamNyYWZ0LmpzY2guQ2hhbm5lbDsKQEAgLTQzLDggKzQ1LDEwIEBACiAgKiBSdW4gcmVtb3RlIGNvbW1hbmRzIHVzaW5nIEpzY2guCiAgKiA8cD4KICAqIFRoaXMgY2xhc3MgaXMgdGhlIGRlZmF1bHQgc2Vzc2lvbiBpbXBsZW1lbnRhdGlvbiB1c2luZyBKc2NoLiBOb3RlIHRoYXQKLSAqIHtAbGluayBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Kc2NoQ29uZmlnU2Vzc2lvbkZhY3Rvcnl9IGlzIHVzZWQgdG8gY3JlYXRlCi0gKiB0aGUgYWN0dWFsIHNlc3Npb24gcGFzc2VkIHRvIHRoZSBjb25zdHJ1Y3Rvci4KKyAqIHtAbGluayBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaC5Kc2NoQ29uZmlnU2Vzc2lvbkZhY3Rvcnl9IGlzIHVzZWQgdG8KKyAqIGNyZWF0ZSB0aGUgYWN0dWFsIHNlc3Npb24gcGFzc2VkIHRvIHRoZSBjb25zdHJ1Y3Rvci4KKyAqCisgKiBAc2luY2UgNi4wCiAgKi8KIHB1YmxpYyBjbGFzcyBKc2NoU2Vzc2lvbiBpbXBsZW1lbnRzIFJlbW90ZVNlc3Npb24yIHsKIAlmaW5hbCBTZXNzaW9uIHNvY2s7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9PcGVuU3NoQ29uZmlnLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9PcGVuU3NoQ29uZmlnLmphdmEKc2ltaWxhcml0eSBpbmRleCA5NCUKcmVuYW1lIGZyb20gb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvT3BlblNzaENvbmZpZy5qYXZhCnJlbmFtZSB0byBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoL3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9zc2gvanNjaC9PcGVuU3NoQ29uZmlnLmphdmEKaW5kZXggNWM2YzgwYy4uMjg3MzMwNyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvT3BlblNzaENvbmZpZy5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL09wZW5Tc2hDb25maWcuamF2YQpAQCAtOCw4ICs4LDcgQEAKICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAqLwogCi0vL1RPRE8obXMpOiBtb3ZlIHRvIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2ggaW4gNi4wCi1wYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0OworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5zc2guanNjaDsKIAogaW1wb3J0IHN0YXRpYyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2guT3BlblNzaENvbmZpZ0ZpbGUucG9zaXRpdmU7CiAKQEAgLTIwLDYgKzE5LDggQEAKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaC5PcGVuU3NoQ29uZmlnRmlsZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2guT3BlblNzaENvbmZpZ0ZpbGUuSG9zdEVudHJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaENvbnN0YW50czsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hTZXNzaW9uRmFjdG9yeTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiAKIGltcG9ydCBjb20uamNyYWZ0LmpzY2guQ29uZmlnUmVwb3NpdG9yeTsKQEAgLTQwLDcgKzQxLDcgQEAKICAqIDxwPgogICogVGhpcyBwYXJzZXIgbWFrZXMgdGhlIGNyaXRpY2FsIG9wdGlvbnMgYXZhaWxhYmxlIHRvCiAgKiB7QGxpbmsgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuU3NoU2Vzc2lvbkZhY3Rvcnl9IHZpYQotICoge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0Lk9wZW5Tc2hDb25maWcuSG9zdH0gb2JqZWN0cyByZXR1cm5lZAorICoge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoLk9wZW5Tc2hDb25maWcuSG9zdH0gb2JqZWN0cyByZXR1cm5lZAogICogYnkge0BsaW5rICNsb29rdXAoU3RyaW5nKX0sIGFuZCBpbXBsZW1lbnRzIGEgZnVsbHkgY29uZm9ybWluZwogICoge0BsaW5rIGNvbS5qY3JhZnQuanNjaC5Db25maWdSZXBvc2l0b3J5fSBwcm92aWRpbmcKICAqIHtAbGluayBjb20uamNyYWZ0LmpzY2guQ29uZmlnUmVwb3NpdG9yeS5Db25maWd9cyB2aWEKQEAgLTQ4LDYgKzQ5LDcgQEAKICAqIDwvcD4KICAqCiAgKiBAc2VlIE9wZW5Tc2hDb25maWdGaWxlCisgKiBAc2luY2UgNi4wCiAgKi8KIHB1YmxpYyBjbGFzcyBPcGVuU3NoQ29uZmlnIGltcGxlbWVudHMgQ29uZmlnUmVwb3NpdG9yeSB7CiAKQEAgLTc3LDcgKzc5LDE1IEBAIHB1YmxpYyBzdGF0aWMgT3BlblNzaENvbmZpZyBnZXQoRlMgZnMpIHsKIAkvKiogVGhlIGJhc2UgZmlsZS4gKi8KIAlwcml2YXRlIE9wZW5Tc2hDb25maWdGaWxlIGNvbmZpZ0ZpbGU7CiAKLQlPcGVuU3NoQ29uZmlnKEZpbGUgaCwgRmlsZSBjZmcpIHsKKwkvKioKKwkgKiBDcmVhdGUgYW4gT3BlblNzaENvbmZpZworCSAqCisJICogQHBhcmFtIGgKKwkgKiAgICAgICAgICAgIHVzZXIncyBob21lIGRpcmVjdG9yeQorCSAqIEBwYXJhbSBjZmcKKwkgKiAgICAgICAgICAgIHNzaCBjb25maWd1cmF0aW9uIGZpbGUKKwkgKi8KKwlwdWJsaWMgT3BlblNzaENvbmZpZyhGaWxlIGgsIEZpbGUgY2ZnKSB7CiAJCWNvbmZpZ0ZpbGUgPSBuZXcgT3BlblNzaENvbmZpZ0ZpbGUoaCwgY2ZnLAogCQkJCVNzaFNlc3Npb25GYWN0b3J5LmdldExvY2FsVXNlck5hbWUoKSk7CiAJfQpAQCAtMjY0LDcgKzI3NCwxMiBAQCBwcml2YXRlIHZvaWQgY29tcGxldGUoU3RyaW5nIGluaXRpYWxIb3N0TmFtZSwgU3RyaW5nIGxvY2FsVXNlck5hbWUpIHsKIAkJCX0KIAkJfQogCi0JCUNvbmZpZyBnZXRDb25maWcoKSB7CisJCS8qKgorCQkgKiBHZXQgdGhlIHNzaCBjb25maWd1cmF0aW9uCisJCSAqCisJCSAqIEByZXR1cm4gdGhlIHNzaCBjb25maWd1cmF0aW9uCisJCSAqLworCQlwdWJsaWMgQ29uZmlnIGdldENvbmZpZygpIHsKIAkJCWlmIChjb25maWcgPT0gbnVsbCkgewogCQkJCWNvbmZpZyA9IG5ldyBDb25maWcoKSB7CiAKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL3BhY2thZ2UtaW5mby5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC5zc2guanNjaC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvc3NoL2pzY2gvcGFja2FnZS1pbmZvLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGMyOTE1YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2gvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L3NzaC9qc2NoL3BhY2thZ2UtaW5mby5qYXZhCkBAIC0wLDAgKzEsMTQgQEAKKy8qKgorICogUHJvdmlkZXMgYSBKR2l0IHtAbGluayBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5Tc2hTZXNzaW9uRmFjdG9yeX0KKyAqIGltcGxlbWVudGVkIHZpYSBKU2NoLgorICogPHA+CisgKiBUaGlzIHBhY2thZ2Ugc2hvdWxkIGJlIGNvbnNpZGVyZWQgPGI+ZGVwcmVjYXRlZDwvYj4uIEl0IGlzIGVzc2VudGlhbGx5CisgKiB1bm1haW50YWluZWQgYW5kIHRoZSBKR2l0IHByb2plY3QgbWF5IGRlY2lkZSB0byByZW1vdmUgaXQgY29tcGxldGVseSB3aXRob3V0CisgKiBmdXJ0aGVyIGFkbyBhdCBhbnkgdGltZS4KKyAqIDwvcD4KKyAqIDxwPgorICogVGhlIG9mZmljaWFsbHkgc3VwcG9ydGVkIEphdmEgU1NIIGltcGxlbWVudGF0aW9uIGZvciBKR2l0IGlzIGluIGJ1bmRsZQorICoge0Bjb2RlIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZX0gYW5kIGlzIGJ1aWx0IHVwb24KKyAqIDxhIGhyZWY9Imh0dHBzOi8vbWluYS5hcGFjaGUub3JnL3NzaGQtcHJvamVjdC8iPkFwYWNoZSBNSU5BIHNzaGQ8L2E+LgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnNzaC5qc2NoOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvLmNsYXNzcGF0aAppbmRleCBjOTlhN2IwLi4zNjNmZmEzIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvLmNsYXNzcGF0aAorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvLmNsYXNzcGF0aApAQCAtMTYsNyArMTYsMTEgQEAKIAkJCTxhdHRyaWJ1dGUgbmFtZT0idGVzdCIgdmFsdWU9InRydWUiLz4KIAkJPC9hdHRyaWJ1dGVzPgogCTwvY2xhc3NwYXRoZW50cnk+Ci0JPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiPgorCQk8YXR0cmlidXRlcz4KKwkJCTxhdHRyaWJ1dGUgbmFtZT0ibW9kdWxlIiB2YWx1ZT0idHJ1ZSIvPgorCQk8L2F0dHJpYnV0ZXM+CisJPC9jbGFzc3BhdGhlbnRyeT4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KIAk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJiaW4iLz4KIDwvY2xhc3NwYXRoPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggYjg1M2M2YS4uNjllOTIyMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC03LDkgKzcsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYW5hbHlzaXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCkBAIC0xLDcgKzEsNyBAQAogZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKIGVkaXRvcl9zYXZlX3BhcnRpY2lwYW50X29yZy5lY2xpcHNlLmpkdC51aS5wb3N0c2F2ZWxpc3RlbmVyLmNsZWFudXA9dHJ1ZQogZm9ybWF0dGVyX3Byb2ZpbGU9X0pHaXQgRm9ybWF0Ci1mb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0xMgorZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MjEKIG9yZy5lY2xpcHNlLmpkdC51aS5pZ25vcmVsb3dlcmNhc2VuYW1lcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQudWkuaW1wb3J0b3JkZXI9amF2YTtqYXZheDtvcmc7Y29tOwogb3JnLmVjbGlwc2UuamR0LnVpLm9uZGVtYW5kdGhyZXNob2xkPTk5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggZjhiY2RmOC4uMDQ2OTExMyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L01FVEEtSU5GL01BTklGRVNULk1GCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMywxMCArMywxMCBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnRlc3QKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQudGVzdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKIEJ1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgogQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKLUJ1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMS44CitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCiBJbXBvcnQtUGFja2FnZTogY29tLmdvb2dsZWNvZGUuamF2YWV3YWg7dmVyc2lvbj0iWzEuMS42LDIuMC4wKSIsCiAgbmV0LmJ5dGVidWRkeS5keW5hbWljLmxvYWRpbmc7dmVyc2lvbj0iWzEuOS4wLDIuMC4wKSIsCiAgb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLmFyY2hpdmVyczt2ZXJzaW9uPSJbMS4xNS4wLDIuMCkiLApAQCAtMTYsNTkgKzE2LDYwIEBACiAgb3JnLmFwYWNoZS5jb21tb25zLmNvbXByZXNzLmNvbXByZXNzb3JzLmd6aXA7dmVyc2lvbj0iWzEuMTUuMCwyLjApIiwKICBvcmcuYXBhY2hlLmNvbW1vbnMuY29tcHJlc3MuY29tcHJlc3NvcnMueHo7dmVyc2lvbj0iWzEuMTUuMCwyLjApIiwKICBvcmcuYXNzZXJ0ai5jb3JlLmFwaTt2ZXJzaW9uPSJbMy4xNC4wLDQuMC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hcmNoaXZlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5hd3R1aTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuYmxhbWU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmRpZmY7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5lcnJvcnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmV2ZW50czt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuZm5tYXRjaDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuZ2l0cmVwbzt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaG9va3M7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmlnbm9yZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaWdub3JlLmludGVybmFsO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuZnNjazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwucmV2d2Fsazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5pbzt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnJlZnRhYmxlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuY29ubmVjdGl2aXR5O3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnBhcnNlcjt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnRpbWU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmxmczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5saWIuaW50ZXJuYWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxvZ2dpbmc7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm1lcmdlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm5vdGVzO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5wYXRjaDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQucGdtO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5wZ20uaW50ZXJuYWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldnBsb3Q7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuZmlsdGVyO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UucGFjazt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQuc3VibW9kdWxlO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQucmVzb2x2ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5maWx0ZXI7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWw7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuaW87dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuc2hhMTt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuYXJjaGl2ZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmF0dHJpYnV0ZXM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5hd3R1aTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmJsYW1lO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZGlmZjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZXZlbnRzO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuZm5tYXRjaDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmdpdHJlcG87dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ob29rczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmlnbm9yZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmlnbm9yZS5pbnRlcm5hbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuZnNjazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnJldndhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmRmczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuaW87dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnBhY2s7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnJlZnRhYmxlO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LmNvbm5lY3Rpdml0eTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5odHRwO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnBhcnNlcjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2g7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5qdW5pdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LnRpbWU7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5sZnM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5saWI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5saWIuaW50ZXJuYWw7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5sb2dnaW5nO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQubWVyZ2U7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5ub3Rlczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnBhdGNoO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucGdtO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucGdtLmludGVybmFsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQucmV2cGxvdDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLmZpbHRlcjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UucGFjazt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnN1Ym1vZHVsZTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGs7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5maWx0ZXI7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC51dGlsO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5pbzt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuc2hhMTt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKICBvcmcuaGFtY3Jlc3Q7dmVyc2lvbj0iWzEuMS4wLDMuMC4wKSIsCiAgb3JnLmhhbWNyZXN0LmNvbGxlY3Rpb247dmVyc2lvbj0iWzEuMS4wLDMuMC4wKSIsCiAgb3JnLmp1bml0O3ZlcnNpb249Ils0LjEzLDUuMC4wKSIsCmRpZmYgLS1naXQgImEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L29yZy5lY2xpcHNlLmpnaXQuY29yZS0tQWxsLVRlc3RzIFwwNTBKYXZhIDhcMDUxIFwwNTBkZVwwNTEubGF1bmNoIiAiYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5jb3JlLS1BbGwtVGVzdHMgXDA1MEphdmEgMTFcMDUxIFwwNTBkZVwwNTEubGF1bmNoIgpzaW1pbGFyaXR5IGluZGV4IDk3JQpyZW5hbWUgZnJvbSAib3JnLmVjbGlwc2UuamdpdC50ZXN0L29yZy5lY2xpcHNlLmpnaXQuY29yZS0tQWxsLVRlc3RzIFwwNTBKYXZhIDhcMDUxIFwwNTBkZVwwNTEubGF1bmNoIgpyZW5hbWUgdG8gIm9yZy5lY2xpcHNlLmpnaXQudGVzdC9vcmcuZWNsaXBzZS5qZ2l0LmNvcmUtLUFsbC1UZXN0cyBcMDUwSmF2YSAxMVwwNTEgXDA1MGRlXDA1MS5sYXVuY2giCmluZGV4IGYxMmE1MjkuLmZkZmRjZTggMTAwNjQ0Ci0tLSAiYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5jb3JlLS1BbGwtVGVzdHMgXDA1MEphdmEgOFwwNTEgXDA1MGRlXDA1MS5sYXVuY2giCisrKyAiYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5jb3JlLS1BbGwtVGVzdHMgXDA1MEphdmEgMTFcMDUxIFwwNTBkZVwwNTEubGF1bmNoIgpAQCAtMjQsNyArMjQsNyBAQAogPGxpc3RFbnRyeSB2YWx1ZT0iJmx0Oz94bWwgdmVyc2lvbj0mcXVvdDsxLjAmcXVvdDsgZW5jb2Rpbmc9JnF1b3Q7VVRGLTgmcXVvdDsgc3RhbmRhbG9uZT0mcXVvdDtubyZxdW90Oz8mZ3Q7JiMxMDsmbHQ7cnVudGltZUNsYXNzcGF0aEVudHJ5IGlkPSZxdW90O29yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuY2xhc3NwYXRoZW50cnkuZGVmYXVsdENsYXNzcGF0aCZxdW90OyZndDsmIzEwOyZsdDttZW1lbnRvIGV4cG9ydGVkRW50cmllc09ubHk9JnF1b3Q7ZmFsc2UmcXVvdDsgcHJvamVjdD0mcXVvdDtvcmcuZWNsaXBzZS5qZ2l0LnRlc3QmcXVvdDsvJmd0OyYjMTA7Jmx0Oy9ydW50aW1lQ2xhc3NwYXRoRW50cnkmZ3Q7JiMxMDsiLz4KIDwvbGlzdEF0dHJpYnV0ZT4KIDxib29sZWFuQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5ERUZBVUxUX0NMQVNTUEFUSCIgdmFsdWU9ImZhbHNlIi8+Ci08c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSIiB2YWx1ZT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMS44Ii8+Cis8c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSIiB2YWx1ZT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KYXZhU0UtMTEiLz4KIDxzdHJpbmdBdHRyaWJ1dGUga2V5PSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLk1BSU5fVFlQRSIgdmFsdWU9IiIvPgogPHN0cmluZ0F0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuUFJPSkVDVF9BVFRSIiB2YWx1ZT0ib3JnLmVjbGlwc2UuamdpdC50ZXN0Ii8+CiA8c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5WTV9BUkdVTUVOVFMiIHZhbHVlPSItWG14MjU2bSIvPgpkaWZmIC0tZ2l0ICJhL29yZy5lY2xpcHNlLmpnaXQudGVzdC9vcmcuZWNsaXBzZS5qZ2l0LmNvcmUtLUFsbC1UZXN0cyBcMDUwSmF2YSA4XDA1MS5sYXVuY2giICJiL29yZy5lY2xpcHNlLmpnaXQudGVzdC9vcmcuZWNsaXBzZS5qZ2l0LmNvcmUtLUFsbC1UZXN0cyBcMDUwSmF2YSAxMVwwNTEubGF1bmNoIgpzaW1pbGFyaXR5IGluZGV4IDk3JQpyZW5hbWUgZnJvbSAib3JnLmVjbGlwc2UuamdpdC50ZXN0L29yZy5lY2xpcHNlLmpnaXQuY29yZS0tQWxsLVRlc3RzIFwwNTBKYXZhIDhcMDUxLmxhdW5jaCIKcmVuYW1lIHRvICJvcmcuZWNsaXBzZS5qZ2l0LnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5jb3JlLS1BbGwtVGVzdHMgXDA1MEphdmEgMTFcMDUxLmxhdW5jaCIKaW5kZXggYjIyMWExMS4uODljMjNjMyAxMDA2NDQKLS0tICJhL29yZy5lY2xpcHNlLmpnaXQudGVzdC9vcmcuZWNsaXBzZS5qZ2l0LmNvcmUtLUFsbC1UZXN0cyBcMDUwSmF2YSA4XDA1MS5sYXVuY2giCisrKyAiYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3Qvb3JnLmVjbGlwc2UuamdpdC5jb3JlLS1BbGwtVGVzdHMgXDA1MEphdmEgMTFcMDUxLmxhdW5jaCIKQEAgLTIxLDcgKzIxLDcgQEAKIDxsaXN0RW50cnkgdmFsdWU9IiZsdDs/eG1sIHZlcnNpb249JnF1b3Q7MS4wJnF1b3Q7IGVuY29kaW5nPSZxdW90O1VURi04JnF1b3Q7IHN0YW5kYWxvbmU9JnF1b3Q7bm8mcXVvdDs/Jmd0OyYjMTA7Jmx0O3J1bnRpbWVDbGFzc3BhdGhFbnRyeSBpZD0mcXVvdDtvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLmNsYXNzcGF0aGVudHJ5LmRlZmF1bHRDbGFzc3BhdGgmcXVvdDsmZ3Q7JiMxMDsmbHQ7bWVtZW50byBleHBvcnRlZEVudHJpZXNPbmx5PSZxdW90O2ZhbHNlJnF1b3Q7IHByb2plY3Q9JnF1b3Q7b3JnLmVjbGlwc2UuamdpdC50ZXN0JnF1b3Q7LyZndDsmIzEwOyZsdDsvcnVudGltZUNsYXNzcGF0aEVudHJ5Jmd0OyYjMTA7Ii8+CiA8L2xpc3RBdHRyaWJ1dGU+CiA8Ym9vbGVhbkF0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuREVGQVVMVF9DTEFTU1BBVEgiIHZhbHVlPSJmYWxzZSIvPgotPHN0cmluZ0F0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUiIgdmFsdWU9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorPHN0cmluZ0F0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUiIgdmFsdWU9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIi8+CiA8c3RyaW5nQXR0cmlidXRlIGtleT0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5NQUlOX1RZUEUiIHZhbHVlPSIiLz4KIDxzdHJpbmdBdHRyaWJ1dGUga2V5PSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLlBST0pFQ1RfQVRUUiIgdmFsdWU9Im9yZy5lY2xpcHNlLmpnaXQudGVzdCIvPgogPHN0cmluZ0F0dHJpYnV0ZSBrZXk9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuVk1fQVJHVU1FTlRTIiB2YWx1ZT0iLVhteDI1Nm0iLz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC9wb20ueG1sIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3BvbS54bWwKaW5kZXggMTAzMmNhMi4uM2NhYjM2MiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3BvbS54bWwKQEAgLTE5LDcgKzE5LDcgQEAKICAgPHBhcmVudD4KICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQtcGFyZW50PC9hcnRpZmFjdElkPgotICAgIDx2ZXJzaW9uPjUuMTMuMy1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KICAgPC9wYXJlbnQ+CiAKICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC50ZXN0PC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC1yc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9kb3RnaXQucGF0Y2ggYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0LXJzcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL2RvdGdpdC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODAyZmExNS4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0LXJzcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL2RvdGdpdC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDkgKzAsMCBAQAotZGlmZiAtLWdpdCBhLy5naXQvYiBiLy5naXQvYgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmRlOTgwNDQKLS0tLSAvZGV2L251bGwKLSsrKyBiLy5naXQvYgotQEAgLTAsMCArMSwzIEBACi0rYQotK2IKLStjClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC1yc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9kb3RnaXQyLnBhdGNoIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC1yc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9kb3RnaXQyLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwM2NhY2JhLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3QtcnNyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvZG90Z2l0Mi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDkgKzAsMCBAQAotZGlmZiAtLWdpdCBhLy5HSVQvYiBiLy5HSVQvYgotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLmRlOTgwNDQKLS0tLSAvZGV2L251bGwKLSsrKyBiLy5naXQvYgotQEAgLTAsMCArMSwzIEBACi0rYQotK2IKLStjClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC1yc3JjL29yZy9lY2xpcHNlL2pnaXQvc3ltbGlua3MvLmdpdGF0dHJpYnV0ZXMgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0LXJzcmMvb3JnL2VjbGlwc2UvamdpdC9zeW1saW5rcy8uZ2l0YXR0cmlidXRlcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjM4Zjg3Zi4uMDAwMDAwMAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0LXJzcmMvb3JnL2VjbGlwc2UvamdpdC9zeW1saW5rcy8uZ2l0YXR0cmlidXRlcworKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLSoucGF0Y2ggLWNybGYKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3QtcnNyYy9vcmcvZWNsaXBzZS9qZ2l0L3N5bWxpbmtzL2RpcnRlc3QucGF0Y2ggYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0LXJzcmMvb3JnL2VjbGlwc2UvamdpdC9zeW1saW5rcy9kaXJ0ZXN0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMjc1Yzg1Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3QtcnNyYy9vcmcvZWNsaXBzZS9qZ2l0L3N5bWxpbmtzL2RpcnRlc3QucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5ICswLDAgQEAKLWRpZmYgLS1naXQgYS9hL2IgYi9hL2IKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5kZTk4MDQ0Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9hL2IKLUBAIC0wLDAgKzEsMyBAQAotK2EKLStiCi0rYwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9hcGkvQXBwbHlDb21tYW5kVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9BcHBseUNvbW1hbmRUZXN0LmphdmEKaW5kZXggNzFmNGVjYi4uODY3MzEwYiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9BcHBseUNvbW1hbmRUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9BcHBseUNvbW1hbmRUZXN0LmphdmEKQEAgLTI1MCwyMCArMjUwLDYgQEAgcHVibGljIHZvaWQgdGVzdEZpbHRlcmluZygpIHRocm93cyBFeGNlcHRpb24gewogCQl9CiAJfQogCi0JcHJpdmF0ZSB2b2lkIGRvdEdpdFRlc3QoU3RyaW5nIGZpbGVOYW1lKSB0aHJvd3MgRXhjZXB0aW9uIHsKLQkJaW5pdChmaWxlTmFtZSwgZmFsc2UsIGZhbHNlKTsKLQl9Ci0KLQlAVGVzdChleHBlY3RlZCA9IFBhdGNoQXBwbHlFeGNlcHRpb24uY2xhc3MpCi0JcHVibGljIHZvaWQgdGVzdERvdEdpdCgpIHRocm93cyBFeGNlcHRpb24gewotCQlkb3RHaXRUZXN0KCJkb3RnaXQiKTsKLQl9Ci0KLQlAVGVzdChleHBlY3RlZCA9IFBhdGNoQXBwbHlFeGNlcHRpb24uY2xhc3MpCi0JcHVibGljIHZvaWQgdGVzdERvdEdpdDIoKSB0aHJvd3MgRXhjZXB0aW9uIHsKLQkJZG90R2l0VGVzdCgiZG90Z2l0MiIpOwotCX0KLQogCXByaXZhdGUgdm9pZCBjaGVja0JpbmFyeShTdHJpbmcgbmFtZSwgYm9vbGVhbiBoYXNQcmVJbWFnZSkKIAkJCXRocm93cyBFeGNlcHRpb24gewogCQljaGVja0JpbmFyeShuYW1lLCBoYXNQcmVJbWFnZSwgMSk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvYXBpL0VvbFN0cmVhbVR5cGVVdGlsVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9Fb2xTdHJlYW1UeXBlVXRpbFRlc3QuamF2YQppbmRleCAyYTU1M2NlLi5mOGE2NjMyIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvYXBpL0VvbFN0cmVhbVR5cGVVdGlsVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9hcGkvRW9sU3RyZWFtVHlwZVV0aWxUZXN0LmphdmEKQEAgLTgxLDE0ICs4MSwxNyBAQCBwdWJsaWMgdm9pZCB0ZXN0Q2hlY2tvdXRDUkxGKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCXRlc3RDaGVja291dChURVhUX0NSTEYsIEFVVE9fQ1JMRiwgIlxuIiwgIlxyXG4iKTsKIAogCQl0ZXN0Q2hlY2tvdXQoVEVYVF9DUkxGLCBBVVRPX0NSTEYsICJcclxuIiwgIlxyXG4iKTsKLQkJdGVzdENoZWNrb3V0KFRFWFRfQ1JMRiwgQVVUT19DUkxGLCAiXG5cciIsICJcclxuXHIiKTsKKwkJdGVzdENoZWNrb3V0KFRFWFRfQ1JMRiwgbnVsbCwgIlxuXHIiLCAiXHJcblxyIik7CisJCXRlc3RDaGVja291dChudWxsLCBBVVRPX0NSTEYsICJcblxyIiwgIlxuXHIiKTsgLy8gTG9uZSBDUgogCi0JCXRlc3RDaGVja291dChURVhUX0NSTEYsIEFVVE9fQ1JMRiwgIlxuXHJcbiIsICJcclxuXHJcbiIpOworCQl0ZXN0Q2hlY2tvdXQobnVsbCwgQVVUT19DUkxGLCAiXG5cclxuIiwgIlxuXHJcbiIpOworCQl0ZXN0Q2hlY2tvdXQoVEVYVF9DUkxGLCBudWxsLCAiXG5cclxuIiwgIlxyXG5cclxuIik7CiAJCXRlc3RDaGVja291dChURVhUX0NSTEYsIEFVVE9fQ1JMRiwgIlxyXG5cciIsICJcclxuXHIiKTsKIAogCQl0ZXN0Q2hlY2tvdXQoVEVYVF9DUkxGLCBBVVRPX0NSTEYsICJhXG5iXG4iLCAiYVxyXG5iXHJcbiIpOwogCQl0ZXN0Q2hlY2tvdXQoVEVYVF9DUkxGLCBBVVRPX0NSTEYsICJhXHJiXHIiLCAiYVxyYlxyIik7Ci0JCXRlc3RDaGVja291dChURVhUX0NSTEYsIEFVVE9fQ1JMRiwgImFcblxyYlxuXHIiLCAiYVxyXG5ccmJcclxuXHIiKTsKKwkJdGVzdENoZWNrb3V0KFRFWFRfQ1JMRiwgbnVsbCwgImFcblxyYlxuXHIiLCAiYVxyXG5ccmJcclxuXHIiKTsKKwkJdGVzdENoZWNrb3V0KG51bGwsIEFVVE9fQ1JMRiwgImFcblxyYlxuXHIiLCAiYVxuXHJiXG5cciIpOyAvLyBMb25lIENSCiAJCXRlc3RDaGVja291dChURVhUX0NSTEYsIEFVVE9fQ1JMRiwgImFcclxuYlxyXG4iLCAiYVxyXG5iXHJcbiIpOwogCX0KIApAQCAtMTk4LDcgKzIwMSw4IEBAIHB1YmxpYyB2b2lkIHRlc3RDaGVja2luTEYoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJdGVzdENoZWNraW4oVEVYVF9MRiwgQVVUT19MRiwgIlxuXHIiLCAiXG5cciIpOwogCiAJCXRlc3RDaGVja2luKFRFWFRfTEYsIEFVVE9fTEYsICJcblxyXG4iLCAiXG5cbiIpOwotCQl0ZXN0Q2hlY2tpbihURVhUX0xGLCBBVVRPX0xGLCAiXHJcblxyIiwgIlxuXHIiKTsKKwkJdGVzdENoZWNraW4oVEVYVF9MRiwgbnVsbCwgIlxyXG5cciIsICJcblxyIik7CisJCXRlc3RDaGVja2luKG51bGwsIEFVVE9fTEYsICJcclxuXHIiLCAiXHJcblxyIik7IC8vIExvbmUgQ1IKIAogCQl0ZXN0Q2hlY2tpbihURVhUX0xGLCBBVVRPX0xGLCAiYVxuYlxuIiwgImFcbmJcbiIpOwogCQl0ZXN0Q2hlY2tpbihURVhUX0xGLCBBVVRPX0xGLCAiYVxyYlxyIiwgImFccmJcciIpOwpAQCAtMjEzLDE0ICsyMTcsMTYgQEAgcHVibGljIHZvaWQgdGVzdENoZWNraW5DUkxGKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCXRlc3RDaGVja2luKFRFWFRfQ1JMRiwgQVVUT19DUkxGLCAiXG4iLCAiXHJcbiIpOwogCiAJCXRlc3RDaGVja2luKFRFWFRfQ1JMRiwgQVVUT19DUkxGLCAiXHJcbiIsICJcclxuIik7Ci0JCXRlc3RDaGVja2luKFRFWFRfQ1JMRiwgQVVUT19DUkxGLCAiXG5cciIsICJcclxuXHIiKTsKKwkJdGVzdENoZWNraW4oVEVYVF9DUkxGLCBudWxsLCAiXG5cciIsICJcclxuXHIiKTsKKwkJdGVzdENoZWNraW4obnVsbCwgQVVUT19DUkxGLCAiXG5cciIsICJcblxyIik7IC8vIExvbmUgQ1IKIAogCQl0ZXN0Q2hlY2tpbihURVhUX0NSTEYsIEFVVE9fQ1JMRiwgIlxuXHJcbiIsICJcclxuXHJcbiIpOwogCQl0ZXN0Q2hlY2tpbihURVhUX0NSTEYsIEFVVE9fQ1JMRiwgIlxyXG5cciIsICJcclxuXHIiKTsKIAogCQl0ZXN0Q2hlY2tpbihURVhUX0NSTEYsIEFVVE9fQ1JMRiwgImFcbmJcbiIsICJhXHJcbmJcclxuIik7CiAJCXRlc3RDaGVja2luKFRFWFRfQ1JMRiwgQVVUT19DUkxGLCAiYVxyYlxyIiwgImFccmJcciIpOwotCQl0ZXN0Q2hlY2tpbihURVhUX0NSTEYsIEFVVE9fQ1JMRiwgImFcblxyYlxuXHIiLCAiYVxyXG5ccmJcclxuXHIiKTsKKwkJdGVzdENoZWNraW4oVEVYVF9DUkxGLCBudWxsLCAiYVxuXHJiXG5cciIsICJhXHJcblxyYlxyXG5cciIpOworCQl0ZXN0Q2hlY2tpbihudWxsLCBBVVRPX0NSTEYsICJhXG5ccmJcblxyIiwgImFcblxyYlxuXHIiKTsgLy8gTG9uZSBDUgogCQl0ZXN0Q2hlY2tpbihURVhUX0NSTEYsIEFVVE9fQ1JMRiwgImFcclxuYlxyXG4iLCAiYVxyXG5iXHJcbiIpOwogCX0KIApAQCAtMjU2LDQ3ICsyNjIsNTUgQEAgcHJpdmF0ZSB2b2lkIHRlc3RDaGVja2luKEVvbFN0cmVhbVR5cGUgc3RyZWFtVHlwZVRleHQsCiAJCWJ5dGVbXSBpbnB1dEJ5dGVzID0gaW5wdXQuZ2V0Qnl0ZXMoVVRGXzgpOwogCQlieXRlW10gZXhwZWN0ZWRDb252ZXJzaW9uQnl0ZXMgPSBleHBlY3RlZENvbnZlcnNpb24uZ2V0Qnl0ZXMoVVRGXzgpOwogCi0JCS8vIHRlc3QgdXNpbmcgaW5wdXQgdGV4dCBhbmQgYXNzdW1pbmcgaXQgd2FzIGRlY2xhcmVkIFRFWFQKLQkJdHJ5IChJbnB1dFN0cmVhbSBpbiA9IEVvbFN0cmVhbVR5cGVVdGlsLndyYXBJbnB1dFN0cmVhbSgKLQkJCQluZXcgQnl0ZUFycmF5SW5wdXRTdHJlYW0oaW5wdXRCeXRlcyksCi0JCQkJc3RyZWFtVHlwZVRleHQpKSB7Ci0JCQlieXRlW10gYiA9IG5ldyBieXRlWzEwMjRdOwotCQkJaW50IGxlbiA9IElPLnJlYWRGdWxseShpbiwgYiwgMCk7Ci0JCQlhc3NlcnRBcnJheUVxdWFscyhleHBlY3RlZENvbnZlcnNpb25CeXRlcywgQXJyYXlzLmNvcHlPZihiLCBsZW4pKTsKKwkJaWYgKHN0cmVhbVR5cGVUZXh0ICE9IG51bGwpIHsKKwkJCS8vIHRlc3QgdXNpbmcgaW5wdXQgdGV4dCBhbmQgYXNzdW1pbmcgaXQgd2FzIGRlY2xhcmVkIFRFWFQKKwkJCXRyeSAoSW5wdXRTdHJlYW0gaW4gPSBFb2xTdHJlYW1UeXBlVXRpbC53cmFwSW5wdXRTdHJlYW0oCisJCQkJCW5ldyBCeXRlQXJyYXlJbnB1dFN0cmVhbShpbnB1dEJ5dGVzKSwgc3RyZWFtVHlwZVRleHQpKSB7CisJCQkJYnl0ZVtdIGIgPSBuZXcgYnl0ZVsxMDI0XTsKKwkJCQlpbnQgbGVuID0gSU8ucmVhZEZ1bGx5KGluLCBiLCAwKTsKKwkJCQlhc3NlcnRBcnJheUVxdWFscyhleHBlY3RlZENvbnZlcnNpb25CeXRlcywKKwkJCQkJCUFycmF5cy5jb3B5T2YoYiwgbGVuKSk7CisJCQl9CiAJCX0KIAotCQkvLyB0ZXN0IHVzaW5nIGlucHV0IHRleHQgYW5kIGFzc3VtaW5nIGl0IHdhcyBkZWNsYXJlZCBBVVRPLCB1c2luZyBiaW5hcnkKLQkJLy8gZGV0ZWN0aW9uCi0JCXRyeSAoSW5wdXRTdHJlYW0gaW4gPSBFb2xTdHJlYW1UeXBlVXRpbC53cmFwSW5wdXRTdHJlYW0oCi0JCQkJbmV3IEJ5dGVBcnJheUlucHV0U3RyZWFtKGlucHV0Qnl0ZXMpLAotCQkJCXN0cmVhbVR5cGVXaXRoQmluYXJ5Q2hlY2spKSB7Ci0JCQlieXRlW10gYiA9IG5ldyBieXRlWzEwMjRdOwotCQkJaW50IGxlbiA9IElPLnJlYWRGdWxseShpbiwgYiwgMCk7Ci0JCQlhc3NlcnRBcnJheUVxdWFscyhleHBlY3RlZENvbnZlcnNpb25CeXRlcywgQXJyYXlzLmNvcHlPZihiLCBsZW4pKTsKKwkJaWYgKHN0cmVhbVR5cGVXaXRoQmluYXJ5Q2hlY2sgIT0gbnVsbCkgeworCQkJLy8gdGVzdCB1c2luZyBpbnB1dCB0ZXh0IGFuZCBhc3N1bWluZyBpdCB3YXMgZGVjbGFyZWQgQVVUTywgdXNpbmcKKwkJCS8vIGJpbmFyeSBkZXRlY3Rpb24KKwkJCXRyeSAoSW5wdXRTdHJlYW0gaW4gPSBFb2xTdHJlYW1UeXBlVXRpbC53cmFwSW5wdXRTdHJlYW0oCisJCQkJCW5ldyBCeXRlQXJyYXlJbnB1dFN0cmVhbShpbnB1dEJ5dGVzKSwKKwkJCQkJc3RyZWFtVHlwZVdpdGhCaW5hcnlDaGVjaykpIHsKKwkJCQlieXRlW10gYiA9IG5ldyBieXRlWzEwMjRdOworCQkJCWludCBsZW4gPSBJTy5yZWFkRnVsbHkoaW4sIGIsIDApOworCQkJCWFzc2VydEFycmF5RXF1YWxzKGV4cGVjdGVkQ29udmVyc2lvbkJ5dGVzLAorCQkJCQkJQXJyYXlzLmNvcHlPZihiLCBsZW4pKTsKKwkJCX0KIAkJfQotCiAJCS8vIG5vdyBwb2xsdXRlIGlucHV0IHRleHQgd2l0aCBzb21lIGJpbmFyeSBieXRlcwogCQlpbnB1dEJ5dGVzID0gZXh0ZW5kV2l0aEJpbmFyeURhdGEoaW5wdXRCeXRlcyk7CiAJCWV4cGVjdGVkQ29udmVyc2lvbkJ5dGVzID0gZXh0ZW5kV2l0aEJpbmFyeURhdGEoZXhwZWN0ZWRDb252ZXJzaW9uQnl0ZXMpOwogCi0JCS8vIGFnYWluLCB0ZXN0IHVzaW5nIGlucHV0IHRleHQgYW5kIGFzc3VtaW5nIGl0IHdhcyBkZWNsYXJlZCBURVhUCi0JCXRyeSAoSW5wdXRTdHJlYW0gaW4gPSBFb2xTdHJlYW1UeXBlVXRpbC53cmFwSW5wdXRTdHJlYW0oCi0JCQkJbmV3IEJ5dGVBcnJheUlucHV0U3RyZWFtKGlucHV0Qnl0ZXMpLCBzdHJlYW1UeXBlVGV4dCkpIHsKLQkJCWJ5dGVbXSBiID0gbmV3IGJ5dGVbMTAyNF07Ci0JCQlpbnQgbGVuID0gSU8ucmVhZEZ1bGx5KGluLCBiLCAwKTsKLQkJCWFzc2VydEFycmF5RXF1YWxzKGV4cGVjdGVkQ29udmVyc2lvbkJ5dGVzLCBBcnJheXMuY29weU9mKGIsIGxlbikpOworCQlpZiAoc3RyZWFtVHlwZVRleHQgIT0gbnVsbCkgeworCQkJLy8gYWdhaW4sIHRlc3QgdXNpbmcgaW5wdXQgdGV4dCBhbmQgYXNzdW1pbmcgaXQgd2FzIGRlY2xhcmVkIFRFWFQKKwkJCXRyeSAoSW5wdXRTdHJlYW0gaW4gPSBFb2xTdHJlYW1UeXBlVXRpbC53cmFwSW5wdXRTdHJlYW0oCisJCQkJCW5ldyBCeXRlQXJyYXlJbnB1dFN0cmVhbShpbnB1dEJ5dGVzKSwgc3RyZWFtVHlwZVRleHQpKSB7CisJCQkJYnl0ZVtdIGIgPSBuZXcgYnl0ZVsxMDI0XTsKKwkJCQlpbnQgbGVuID0gSU8ucmVhZEZ1bGx5KGluLCBiLCAwKTsKKwkJCQlhc3NlcnRBcnJheUVxdWFscyhleHBlY3RlZENvbnZlcnNpb25CeXRlcywKKwkJCQkJCUFycmF5cy5jb3B5T2YoYiwgbGVuKSk7CisJCQl9CiAJCX0KIAotCQkvLyBhZ2FpbiwgdGVzdCB1c2luZyBpbnB1dCB0ZXh0IGFuZCBhc3N1bWluZyBpdCB3YXMgZGVjbGFyZWQgQVVUTywgdXNpbmcKLQkJLy8gYmluYXJ5Ci0JCS8vIGRldGVjdGlvbgotCQl0cnkgKElucHV0U3RyZWFtIGluID0gRW9sU3RyZWFtVHlwZVV0aWwud3JhcElucHV0U3RyZWFtKAotCQkJCW5ldyBCeXRlQXJyYXlJbnB1dFN0cmVhbShpbnB1dEJ5dGVzKSwKLQkJCQlzdHJlYW1UeXBlV2l0aEJpbmFyeUNoZWNrKSkgewotCQkJYnl0ZVtdIGIgPSBuZXcgYnl0ZVsxMDI0XTsKLQkJCWludCBsZW4gPSBJTy5yZWFkRnVsbHkoaW4sIGIsIDApOwotCQkJLy8gZXhwZWN0IG5vIGNvbnZlcnNpb24KLQkJCWFzc2VydEFycmF5RXF1YWxzKGlucHV0Qnl0ZXMsIEFycmF5cy5jb3B5T2YoYiwgbGVuKSk7CisJCWlmIChzdHJlYW1UeXBlV2l0aEJpbmFyeUNoZWNrICE9IG51bGwpIHsKKwkJCS8vIGFnYWluLCB0ZXN0IHVzaW5nIGlucHV0IHRleHQgYW5kIGFzc3VtaW5nIGl0IHdhcyBkZWNsYXJlZCBBVVRPLAorCQkJLy8gdXNpbmcgYmluYXJ5IGRldGVjdGlvbgorCQkJdHJ5IChJbnB1dFN0cmVhbSBpbiA9IEVvbFN0cmVhbVR5cGVVdGlsLndyYXBJbnB1dFN0cmVhbSgKKwkJCQkJbmV3IEJ5dGVBcnJheUlucHV0U3RyZWFtKGlucHV0Qnl0ZXMpLAorCQkJCQlzdHJlYW1UeXBlV2l0aEJpbmFyeUNoZWNrKSkgeworCQkJCWJ5dGVbXSBiID0gbmV3IGJ5dGVbMTAyNF07CisJCQkJaW50IGxlbiA9IElPLnJlYWRGdWxseShpbiwgYiwgMCk7CisJCQkJLy8gZXhwZWN0IG5vIGNvbnZlcnNpb24KKwkJCQlhc3NlcnRBcnJheUVxdWFscyhpbnB1dEJ5dGVzLCBBcnJheXMuY29weU9mKGIsIGxlbikpOworCQkJfQogCQl9CiAJfQogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvYXBpL0dhcmJhZ2VDb2xsZWN0Q29tbWFuZFRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9hcGkvR2FyYmFnZUNvbGxlY3RDb21tYW5kVGVzdC5qYXZhCmluZGV4IDYyM2NkZGUuLmY5OGRiMzQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9hcGkvR2FyYmFnZUNvbGxlY3RDb21tYW5kVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9hcGkvR2FyYmFnZUNvbGxlY3RDb21tYW5kVGVzdC5qYXZhCkBAIC0zOSw3ICszOSw3IEBAIHB1YmxpYyB2b2lkIHRlc3RHQ29uZUNvbW1pdCgpIHRocm93cyBFeGNlcHRpb24gewogCQlEYXRlIGV4cGlyZSA9IEdpdERhdGVQYXJzZXIucGFyc2UoIm5vdyIsIG51bGwsIFN5c3RlbVJlYWRlcgogCQkJCS5nZXRJbnN0YW5jZSgpLmdldExvY2FsZSgpKTsKIAkJUHJvcGVydGllcyByZXMgPSBnaXQuZ2MoKS5zZXRFeHBpcmUoZXhwaXJlKS5jYWxsKCk7Ci0JCWFzc2VydFRydWUocmVzLnNpemUoKSA9PSA3KTsKKwkJYXNzZXJ0VHJ1ZShyZXMuc2l6ZSgpID09IDgpOwogCX0KIAogCUBUZXN0CkBAIC01Nyw2ICs1Nyw2IEBAIHB1YmxpYyB2b2lkIHRlc3RHQ21vcmVDb21taXRzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCQkJLnNldEV4cGlyZSgKIAkJCQkJCUdpdERhdGVQYXJzZXIucGFyc2UoIm5vdyIsIG51bGwsIFN5c3RlbVJlYWRlcgogCQkJCQkJCQkuZ2V0SW5zdGFuY2UoKS5nZXRMb2NhbGUoKSkpLmNhbGwoKTsKLQkJYXNzZXJ0VHJ1ZShyZXMuc2l6ZSgpID09IDcpOworCQlhc3NlcnRUcnVlKHJlcy5zaXplKCkgPT0gOCk7CiAJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9QdXNoQ29tbWFuZFRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9hcGkvUHVzaENvbW1hbmRUZXN0LmphdmEKaW5kZXggNWRkYzE2YS4uYTc4NjA2NSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9QdXNoQ29tbWFuZFRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvYXBpL1B1c2hDb21tYW5kVGVzdC5qYXZhCkBAIC0zMjQsNyArMzI0LDcgQEAgcHVibGljIHZvaWQgdGVzdFB1c2hBZnRlckdDKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAKIAkJCS8vIHJ1biBhIGdjIHRvIGVuc3VyZSB3ZSBoYXZlIGEgYml0bWFwIGluZGV4CiAJCQlQcm9wZXJ0aWVzIHJlcyA9IGdpdDEuZ2MoKS5zZXRFeHBpcmUobnVsbCkuY2FsbCgpOwotCQkJYXNzZXJ0RXF1YWxzKDcsIHJlcy5zaXplKCkpOworCQkJYXNzZXJ0RXF1YWxzKDgsIHJlcy5zaXplKCkpOwogCiAJCQkvLyBjcmVhdGUgYW5vdGhlciBjb21taXQgc28gd2UgaGF2ZSBzb21ldGhpbmcgZWxzZSB0byBwdXNoCiAJCQl3cml0ZVRyYXNoRmlsZSgiYiIsICJjb250ZW50IG9mIGIiKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaWZmL0RpZmZGb3JtYXR0ZXJUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvZGlmZi9EaWZmRm9ybWF0dGVyVGVzdC5qYXZhCmluZGV4IGI2OTRmNGEuLmEwOTNjYzcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaWZmL0RpZmZGb3JtYXR0ZXJUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvRGlmZkZvcm1hdHRlclRlc3QuamF2YQpAQCAtNjA4LDcgKzYwOCw3IEBAIHB1YmxpYyB2b2lkIHRlc3REaWZmQXV0b0NybGZTbWFsbEZpbGUoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAlwdWJsaWMgdm9pZCB0ZXN0RGlmZkF1dG9DcmxmTWVkaXVtRmlsZSgpIHRocm93cyBFeGNlcHRpb24gewogCQlTdHJpbmcgY29udGVudCA9IG1lZGl1bUNyTGZTdHJpbmcoKTsKIAkJU3RyaW5nIGV4cGVjdGVkRGlmZiA9ICJkaWZmIC0tZ2l0IGEvdGVzdC50eHQgYi90ZXN0LnR4dFxuIgotCQkJCSsgImluZGV4IDIxNWM1MDIuLmMxMGYwOGMgMTAwNjQ0XG4iIC8vCisJCQkJKyAiaW5kZXggNmQ5ZmZlZC4uNTBkN2I1YSAxMDA2NDRcbiIgLy8KIAkJCQkrICItLS0gYS90ZXN0LnR4dFxuIiAvLwogCQkJCSsgIisrKyBiL3Rlc3QudHh0XG4iIC8vCiAJCQkJKyAiQEAgLTEsNCArMSw1IEBAXG4iIC8vCkBAIC02MjQsNyArNjI0LDcgQEAgcHVibGljIHZvaWQgdGVzdERpZmZBdXRvQ3JsZk1lZGl1bUZpbGUoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAlwdWJsaWMgdm9pZCB0ZXN0RGlmZkF1dG9DcmxmTGFyZ2VGaWxlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCVN0cmluZyBjb250ZW50ID0gbGFyZ2VDckxmU3RyaW5nKCk7CiAJCVN0cmluZyBleHBlY3RlZERpZmYgPSAiZGlmZiAtLWdpdCBhL3Rlc3QudHh0IGIvdGVzdC50eHRcbiIKLQkJCQkrICJpbmRleCA3MDE0OTQyLi5jMDQ4N2E3IDEwMDY0NFxuIiAvLworCQkJCSsgImluZGV4IGQ2Mzk5YTEuLmRlMjZjZTUgMTAwNjQ0XG4iIC8vCiAJCQkJKyAiLS0tIGEvdGVzdC50eHRcbiIgLy8KIAkJCQkrICIrKysgYi90ZXN0LnR4dFxuIiAvLwogCQkJCSsgIkBAIC0xLDQgKzEsNSBAQFxuIgpAQCAtNjY1LDkgKzY2NSw5IEBAIHByaXZhdGUgdm9pZCBkb0F1dG9DckxmVGVzdChTdHJpbmcgY29udGVudCwgU3RyaW5nIGV4cGVjdGVkRGlmZikKIAogCXByaXZhdGUgc3RhdGljIFN0cmluZyBsYXJnZUNyTGZTdHJpbmcoKSB7CiAJCVN0cmluZyBsaW5lID0gIjAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2N1xyXG4iOwotCQlTdHJpbmdCdWlsZGVyIGJ1aWxkZXIgPSBuZXcgU3RyaW5nQnVpbGRlcigKLQkJCQkyICogUmF3VGV4dC5GSVJTVF9GRVdfQllURVMpOwotCQl3aGlsZSAoYnVpbGRlci5sZW5ndGgoKSA8IDIgKiBSYXdUZXh0LkZJUlNUX0ZFV19CWVRFUykgeworCQlpbnQgYnVmZmVyU2l6ZSA9IFJhd1RleHQuZ2V0QnVmZmVyU2l6ZSgpOworCQlTdHJpbmdCdWlsZGVyIGJ1aWxkZXIgPSBuZXcgU3RyaW5nQnVpbGRlcigyICogYnVmZmVyU2l6ZSk7CisJCXdoaWxlIChidWlsZGVyLmxlbmd0aCgpIDwgMiAqIGJ1ZmZlclNpemUpIHsKIAkJCWJ1aWxkZXIuYXBwZW5kKGxpbmUpOwogCQl9CiAJCXJldHVybiBidWlsZGVyLnRvU3RyaW5nKCk7CkBAIC02NzcsOSArNjc3LDkgQEAgcHJpdmF0ZSBzdGF0aWMgU3RyaW5nIG1lZGl1bUNyTGZTdHJpbmcoKSB7CiAJCS8vIENyZWF0ZSBhIENSLUxGIHN0cmluZyBsb25nZXIgdGhhbiBSYXdUZXh0LkZJUlNUX0ZFV19CWVRFUyB3aG9zZQogCQkvLyBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gaXMgc2hvcnRlciB0aGFuIFJhd1RleHQuRklSU1RfRkVXX0JZVEVTLgogCQlTdHJpbmcgbGluZSA9ICIwMTIzNDU2N1xyXG4iOyAvLyAxMCBjaGFyYWN0ZXJzCi0JCVN0cmluZ0J1aWxkZXIgYnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKAotCQkJCVJhd1RleHQuRklSU1RfRkVXX0JZVEVTICsgbGluZS5sZW5ndGgoKSk7Ci0JCXdoaWxlIChidWlsZGVyLmxlbmd0aCgpIDw9IFJhd1RleHQuRklSU1RfRkVXX0JZVEVTKSB7CisJCWludCBidWZmZXJTaXplID0gUmF3VGV4dC5nZXRCdWZmZXJTaXplKCk7CisJCVN0cmluZ0J1aWxkZXIgYnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKGJ1ZmZlclNpemUgKyBsaW5lLmxlbmd0aCgpKTsKKwkJd2hpbGUgKGJ1aWxkZXIubGVuZ3RoKCkgPD0gYnVmZmVyU2l6ZSkgewogCQkJYnVpbGRlci5hcHBlbmQobGluZSk7CiAJCX0KIAkJcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaWZmL0hpc3RvZ3JhbURpZmZUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvZGlmZi9IaXN0b2dyYW1EaWZmVGVzdC5qYXZhCmluZGV4IDAyNTY4NDguLjNlMjg4NjcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaWZmL0hpc3RvZ3JhbURpZmZUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvSGlzdG9ncmFtRGlmZlRlc3QuamF2YQpAQCAtNjEsNyArNjEsOCBAQCBwdWJsaWMgdm9pZCB0ZXN0RXhjZWVkc0NoYWluTGVuZ3RoX0R1cmluZ1NjYW5PZkEoKSB7CiAJCWhkLnNldEZhbGxiYWNrQWxnb3JpdGhtKG51bGwpOwogCQloZC5zZXRNYXhDaGFpbkxlbmd0aCgzKTsKIAotCQlTZXF1ZW5jZUNvbXBhcmF0b3I8UmF3VGV4dD4gY21wID0gbmV3IFNlcXVlbmNlQ29tcGFyYXRvcjxSYXdUZXh0PigpIHsKKwkJU2VxdWVuY2VDb21wYXJhdG9yPFJhd1RleHQ+IGNtcCA9IG5ldyBTZXF1ZW5jZUNvbXBhcmF0b3I8PigpIHsKKwogCQkJQE92ZXJyaWRlCiAJCQlwdWJsaWMgYm9vbGVhbiBlcXVhbHMoUmF3VGV4dCBhLCBpbnQgYWksIFJhd1RleHQgYiwgaW50IGJpKSB7CiAJCQkJcmV0dXJuIFJhd1RleHRDb21wYXJhdG9yLkRFRkFVTFQuZXF1YWxzKGEsIGFpLCBiLCBiaSk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvZGlyY2FjaGUvRGlyQ2FjaGVFbnRyeVRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9EaXJDYWNoZUVudHJ5VGVzdC5qYXZhCmluZGV4IDAxZDFlMDIuLjhlODRkZmEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9EaXJDYWNoZUVudHJ5VGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9EaXJDYWNoZUVudHJ5VGVzdC5qYXZhCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSwgMjAyMyBHb29nbGUgSW5jLiBhbmQgb3RoZXJzCisgKiBDb3B5cmlnaHQgKEMpIDIwMDksIDIwMjAgR29vZ2xlIEluYy4gYW5kIG90aGVycwogICoKICAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQogICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdApAQCAtNDYsMTYgKzQ2LDYgQEAgcHVibGljIHZvaWQgdGVzdElzVmFsaWRQYXRoKCkgewogCQlhc3NlcnRGYWxzZShpc1ZhbGlkUGF0aCgiYS8iKSk7CiAJCWFzc2VydEZhbHNlKGlzVmFsaWRQYXRoKCJhYi9jZC9lZi8iKSk7CiAJCWFzc2VydEZhbHNlKGlzVmFsaWRQYXRoKCJhXHUwMDAwYiIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIi5naXQiKSk7Ci0JCWFzc2VydEZhbHNlKGlzVmFsaWRQYXRoKCIuR0lUIikpOwotCQlhc3NlcnRGYWxzZShpc1ZhbGlkUGF0aCgiLkdpdCIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIi5naXQvYiIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIi5HSVQvYiIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIi5HaXQvYiIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIngveS8uZ2l0L3ovYiIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIngveS8uR0lUL3ovYiIpKTsKLQkJYXNzZXJ0RmFsc2UoaXNWYWxpZFBhdGgoIngveS8uR2l0L3ovYiIpKTsKLQkJYXNzZXJ0VHJ1ZShpc1ZhbGlkUGF0aCgiZ2l0L2IiKSk7CiAJfQogCiAJQFN1cHByZXNzV2FybmluZ3MoInVudXNlZCIpCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvZGlyY2FjaGUvSW52YWxpZFBhdGhDaGVja291dFRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9JbnZhbGlkUGF0aENoZWNrb3V0VGVzdC5qYXZhCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlM2JjODVhLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9JbnZhbGlkUGF0aENoZWNrb3V0VGVzdC5qYXZhCisrKyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMyBUaG9tYXMgV29sZiA8dHdvbGZAYXBhY2hlLm9yZz4gYW5kIG90aGVycwotICoKLSAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQotICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAotICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KLSAqCi0gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCi0gKi8KLXBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZTsKLQotaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEZhbHNlOwotaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydFRocm93czsKLQotaW1wb3J0IGphdmEuaW8uRmlsZTsKLQotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLkdpdDsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5SZXNldENvbW1hbmQuUmVzZXRUeXBlOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuUmVwb3NpdG9yeVRlc3RDYXNlOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuVGVzdFJlcG9zaXRvcnk7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuRmlsZU1vZGU7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuUmVwb3NpdG9yeTsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuUmV2QmxvYjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuUmV2Q29tbWl0OwotaW1wb3J0IG9yZy5qdW5pdC5UZXN0OwotCi0vKioKLSAqIFRlc3RzIGZvciBjaGVja2luZyBvdXQgd2l0aCBpbnZhbGlkIHBhdGhzLgotICovCi1wdWJsaWMgY2xhc3MgSW52YWxpZFBhdGhDaGVja291dFRlc3QgZXh0ZW5kcyBSZXBvc2l0b3J5VGVzdENhc2UgewotCi0JcHJpdmF0ZSBEaXJDYWNoZUVudHJ5IGJyb2tlbkVudHJ5KFN0cmluZyBmaWxlTmFtZSwgUmV2QmxvYiBibG9iKSB7Ci0JCURpckNhY2hlRW50cnkgZW50cnkgPSBuZXcgRGlyQ2FjaGVFbnRyeSgiWFhYWC8iICsgZmlsZU5hbWUpOwotCQllbnRyeS5wYXRoWzBdID0gJy4nOwotCQllbnRyeS5wYXRoWzFdID0gJ2cnOwotCQllbnRyeS5wYXRoWzJdID0gJ2knOwotCQllbnRyeS5wYXRoWzNdID0gJ3QnOwotCQllbnRyeS5zZXRGaWxlTW9kZShGaWxlTW9kZS5SRUdVTEFSX0ZJTEUpOwotCQllbnRyeS5zZXRPYmplY3RJZChibG9iKTsKLQkJcmV0dXJuIGVudHJ5OwotCX0KLQotCUBUZXN0Ci0JcHVibGljIHZvaWQgdGVzdENoZWNrb3V0SW50b0RvdEdpdCgpIHRocm93cyBFeGNlcHRpb24gewotCQl0cnkgKFRlc3RSZXBvc2l0b3J5PFJlcG9zaXRvcnk+IHJlcG8gPSBuZXcgVGVzdFJlcG9zaXRvcnk8PihkYikpIHsKLQkJCWRiLmluY3JlbWVudE9wZW4oKTsKLQkJCS8vIERpckNhY2hlRW50cnkgZG9lcyBub3QgYWxsb3cgYW55IHBhdGggY29tcG9uZW50IHRvIGNvbnRhaW4KLQkJCS8vICIuZ2l0Ii4gQyBnaXQgYWxzbyBmb3JiaWRzIHRoaXMuIEJ1dCB3aGF0IGlmIHNvbWVib2R5IGNyZWF0ZXMKLQkJCS8vIHN1Y2ggYW4gZW50cnkgZXhwbGljaXRseT8KLQkJCVJldkNvbW1pdCBiYXNlID0gcmVwbwotCQkJCQkuY29tbWl0KHJlcG8udHJlZShicm9rZW5FbnRyeSgiYiIsIHJlcG8uYmxvYigidGVzdCIpKSkpOwotCQkJdHJ5IChHaXQgZ2l0ID0gbmV3IEdpdChkYikpIHsKLQkJCQlhc3NlcnRUaHJvd3MoSW52YWxpZFBhdGhFeGNlcHRpb24uY2xhc3MsICgpIC0+IGdpdC5yZXNldCgpCi0JCQkJCQkuc2V0TW9kZShSZXNldFR5cGUuSEFSRCkuc2V0UmVmKGJhc2UubmFtZSgpKS5jYWxsKCkpOwotCQkJCUZpbGUgYiA9IG5ldyBGaWxlKG5ldyBGaWxlKHRyYXNoLCAiLmdpdCIpLCAiYiIpOwotCQkJCWFzc2VydEZhbHNlKCIuZ2l0L2Igc2hvdWxkIG5vdCBleGlzdCIsIGIuZXhpc3RzKCkpOwotCQkJfQotCQl9Ci0JfQotCi19CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW5kZXhkaWZmL0luZGV4RGlmZldpdGhTeW1saW5rVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2luZGV4ZGlmZi9JbmRleERpZmZXaXRoU3ltbGlua1Rlc3QuamF2YQppbmRleCA3ZTUxM2QyLi5kMDJiZmNkIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW5kZXhkaWZmL0luZGV4RGlmZldpdGhTeW1saW5rVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbmRleGRpZmYvSW5kZXhEaWZmV2l0aFN5bWxpbmtUZXN0LmphdmEKQEAgLTU5LDYgKzU5LDcgQEAKIGltcG9ydCBqYXZhLmlvLk91dHB1dFN0cmVhbTsKIGltcG9ydCBqYXZhLmlvLk91dHB1dFN0cmVhbVdyaXRlcjsKIGltcG9ydCBqYXZhLmlvLldyaXRlcjsKK2ltcG9ydCBqYXZhLmxhbmcucmVmbGVjdC5JbmFjY2Vzc2libGVPYmplY3RFeGNlcHRpb247CiBpbXBvcnQgamF2YS5sYW5nLnJlZmxlY3QuSW52b2NhdGlvblRhcmdldEV4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLmxhbmcucmVmbGVjdC5NZXRob2Q7CiBpbXBvcnQgamF2YS5uaW8uZmlsZS5GaWxlczsKQEAgLTIyNyw3ICsyMjgsOCBAQCBwdWJsaWMgdm9pZCB0ZXN0U3ltbGlua1dpdGhFbmNvZGluZ0RpZmZlcmVuY2UoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCQlyZXR1cm4gKGJ5dGVbXSkgbWV0aG9kLmludm9rZShwKTsKIAkJCX0KIAkJfSBjYXRjaCAoTm9TdWNoTWV0aG9kRXhjZXB0aW9uIHwgSWxsZWdhbEFjY2Vzc0V4Y2VwdGlvbgotCQkJCXwgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uIHwgSW52b2NhdGlvblRhcmdldEV4Y2VwdGlvbiBlKSB7CisJCQkJfCBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24gfCBJbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uCisJCQkJfCBJbmFjY2Vzc2libGVPYmplY3RFeGNlcHRpb24gZSkgewogCQkJLy8gSWdub3JlIGFuZCBmYWxsIHRocm91Z2guCiAJCX0KIAkJcmV0dXJuIG51bGw7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvcmV2d2Fsay9CaXRtYXBwZWRPYmplY3RSZWFjaGFiaWxpdHlUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvcmV2d2Fsay9CaXRtYXBwZWRPYmplY3RSZWFjaGFiaWxpdHlUZXN0LmphdmEKaW5kZXggZjJmNzQwNS4uZDU3NDQyOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3JldndhbGsvQml0bWFwcGVkT2JqZWN0UmVhY2hhYmlsaXR5VGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9yZXZ3YWxrL0JpdG1hcHBlZE9iamVjdFJlYWNoYWJpbGl0eVRlc3QuamF2YQpAQCAtMjMsNyArMjMsNyBAQCBPYmplY3RSZWFjaGFiaWxpdHlDaGVja2VyIGdldENoZWNrZXIoCiAJCS8vIEdDIGdlbmVyYXRlcyB0aGUgYml0bWFwcwogCQlHQyBnYyA9IG5ldyBHQyhyZXBvc2l0b3J5LmdldFJlcG9zaXRvcnkoKSk7CiAJCWdjLnNldEF1dG8oZmFsc2UpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCiAJCXJldHVybiBuZXcgQml0bWFwcGVkT2JqZWN0UmVhY2hhYmlsaXR5Q2hlY2tlcigKIAkJCQlyZXBvc2l0b3J5LmdldFJldldhbGsoKS50b09iamVjdFdhbGtXaXRoU2FtZU9iamVjdHMoKSk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvcmV2d2Fsay9CaXRtYXBwZWRSZWFjaGFiaWxpdHlDaGVja2VyVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3JldndhbGsvQml0bWFwcGVkUmVhY2hhYmlsaXR5Q2hlY2tlclRlc3QuamF2YQppbmRleCA1ODMzYzdhLi4yNTMyNDZlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvcmV2d2Fsay9CaXRtYXBwZWRSZWFjaGFiaWxpdHlDaGVja2VyVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9yZXZ3YWxrL0JpdG1hcHBlZFJlYWNoYWJpbGl0eUNoZWNrZXJUZXN0LmphdmEKQEAgLTI1LDcgKzI1LDcgQEAgcHJvdGVjdGVkIFJlYWNoYWJpbGl0eUNoZWNrZXIgZ2V0Q2hlY2tlcigKIAkJLy8gR0MgZ2VuZXJhdGVzIHRoZSBiaXRtYXBzCiAJCUdDIGdjID0gbmV3IEdDKHJlcG8uZ2V0UmVwb3NpdG9yeSgpKTsKIAkJZ2Muc2V0QXV0byhmYWxzZSk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAKIAkJLy8gVGhpcyBpcyBudWxsIHdoZW4gdGhlIHRlc3QgZGlkbid0IGNyZWF0ZSBhbnkgYnJhbmNoCiAJCWFzc2VydE5vdE51bGwoIlByb2JhYmx5IHRoZSB0ZXN0IGRpZG4ndCBkZWZpbmUgYW55IHJlZiIsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzQmxvY2tDYWNoZVRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNCbG9ja0NhY2hlVGVzdC5qYXZhCmluZGV4IGNlYTAwZGEuLjRmMTMxNDAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNCbG9ja0NhY2hlVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNCbG9ja0NhY2hlVGVzdC5qYXZhCkBAIC0xMCwxOSArMTAsMjggQEAKIAogcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZGZzOwogCitpbXBvcnQgc3RhdGljIGphdmEudXRpbC5jb25jdXJyZW50LlRpbWVVbml0Lk1JTExJU0VDT05EUzsKIGltcG9ydCBzdGF0aWMgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uc3RhbnRzLk9CSl9CTE9COwogaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEVxdWFsczsKIGltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRUcnVlOwogCiBpbXBvcnQgamF2YS51dGlsLkFycmF5czsKIGltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CitpbXBvcnQgamF2YS51dGlsLkhhc2hNYXA7CiBpbXBvcnQgamF2YS51dGlsLkxpc3Q7CitpbXBvcnQgamF2YS51dGlsLk1hcDsKIGltcG9ydCBqYXZhLnV0aWwuc3RyZWFtLkxvbmdTdHJlYW07CitpbXBvcnQgamF2YS51dGlsLmNvbmN1cnJlbnQuQ2FsbGFibGU7CitpbXBvcnQgamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0b3JTZXJ2aWNlOworaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9yczsKIAoraW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrLlBhY2tFeHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5UZXN0UmVwb3NpdG9yeTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LlRlc3RSbmc7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuT2JqZWN0SWQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuT2JqZWN0SW5zZXJ0ZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuT2JqZWN0UmVhZGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsay5SZXZDb21taXQ7CiBpbXBvcnQgb3JnLmp1bml0LkJlZm9yZTsKIGltcG9ydCBvcmcuanVuaXQuUnVsZTsKIGltcG9ydCBvcmcuanVuaXQuVGVzdDsKQEAgLTMzLDEwICs0MiwxMiBAQCBwdWJsaWMgY2xhc3MgRGZzQmxvY2tDYWNoZVRlc3QgewogCXB1YmxpYyBUZXN0TmFtZSB0ZXN0TmFtZSA9IG5ldyBUZXN0TmFtZSgpOwogCXByaXZhdGUgVGVzdFJuZyBybmc7CiAJcHJpdmF0ZSBEZnNCbG9ja0NhY2hlIGNhY2hlOworCXByaXZhdGUgRXhlY3V0b3JTZXJ2aWNlIHBvb2w7CiAKIAlAQmVmb3JlCiAJcHVibGljIHZvaWQgc2V0VXAoKSB7CiAJCXJuZyA9IG5ldyBUZXN0Um5nKHRlc3ROYW1lLmdldE1ldGhvZE5hbWUoKSk7CisJCXBvb2wgPSBFeGVjdXRvcnMubmV3Rml4ZWRUaHJlYWRQb29sKDEwKTsKIAkJcmVzZXRDYWNoZSgpOwogCX0KIApAQCAtMTAzLDEwICsxMTQsMjIyIEBAIHB1YmxpYyB2b2lkIHdlaXJkQmxvY2tTaXplKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCX0KIAl9CiAKLQlwcml2YXRlIHZvaWQgcmVzZXRDYWNoZSgpIHsKLQkJRGZzQmxvY2tDYWNoZS5yZWNvbmZpZ3VyZShuZXcgRGZzQmxvY2tDYWNoZUNvbmZpZygpCi0JCQkJLnNldEJsb2NrU2l6ZSg1MTIpCi0JCQkJLnNldEJsb2NrTGltaXQoMSA8PCAyMCkpOworCUBTdXBwcmVzc1dhcm5pbmdzKCJyZXNvdXJjZSIpCisJQFRlc3QKKwlwdWJsaWMgdm9pZCBoYXNDYWNoZUhvdE1hcCgpIHRocm93cyBFeGNlcHRpb24geworCQlNYXA8UGFja0V4dCwgSW50ZWdlcj4gY2FjaGVIb3RNYXAgPSBuZXcgSGFzaE1hcDw+KCk7CisJCS8vIFBhY2sgaW5kZXggd2lsbCBiZSBrZXB0IGluIGNhY2hlIGxvbmdlci4KKwkJY2FjaGVIb3RNYXAucHV0KFBhY2tFeHQuSU5ERVgsIEludGVnZXIudmFsdWVPZigzKSk7CisJCURmc0Jsb2NrQ2FjaGUucmVjb25maWd1cmUobmV3IERmc0Jsb2NrQ2FjaGVDb25maWcoKS5zZXRCbG9ja1NpemUoNTEyKQorCQkJCS5zZXRCbG9ja0xpbWl0KDUxMiAqIDQpLnNldENhY2hlSG90TWFwKGNhY2hlSG90TWFwKSk7CiAJCWNhY2hlID0gRGZzQmxvY2tDYWNoZS5nZXRJbnN0YW5jZSgpOworCisJCURmc1JlcG9zaXRvcnlEZXNjcmlwdGlvbiByZXBvID0gbmV3IERmc1JlcG9zaXRvcnlEZXNjcmlwdGlvbigidGVzdCIpOworCQlJbk1lbW9yeVJlcG9zaXRvcnkgcjEgPSBuZXcgSW5NZW1vcnlSZXBvc2l0b3J5KHJlcG8pOworCQlieXRlW10gY29udGVudCA9IHJuZy5uZXh0Qnl0ZXMoNDI0MjQyKTsKKwkJT2JqZWN0SWQgaWQ7CisJCXRyeSAoT2JqZWN0SW5zZXJ0ZXIgaW5zID0gcjEubmV3T2JqZWN0SW5zZXJ0ZXIoKSkgeworCQkJaWQgPSBpbnMuaW5zZXJ0KE9CSl9CTE9CLCBjb250ZW50KTsKKwkJCWlucy5mbHVzaCgpOworCQl9CisKKwkJdHJ5IChPYmplY3RSZWFkZXIgcmRyID0gcjEubmV3T2JqZWN0UmVhZGVyKCkpIHsKKwkJCWJ5dGVbXSBhY3R1YWwgPSByZHIub3BlbihpZCwgT0JKX0JMT0IpLmdldEJ5dGVzKCk7CisJCQlhc3NlcnRUcnVlKEFycmF5cy5lcXVhbHMoY29udGVudCwgYWN0dWFsKSk7CisJCX0KKwkJLy8gQWxsIGNhY2hlIGVudHJpZXMgYXJlIGhvdCBhbmQgY2FjaGUgaXMgYXQgY2FwYWNpdHkuCisJCWFzc2VydFRydWUoTG9uZ1N0cmVhbS5vZihjYWNoZS5nZXRIaXRDb3VudCgpKS5zdW0oKSA+IDApOworCQlhc3NlcnRFcXVhbHMoOTksIGNhY2hlLmdldEZpbGxQZXJjZW50YWdlKCkpOworCisJCUluTWVtb3J5UmVwb3NpdG9yeSByMiA9IG5ldyBJbk1lbW9yeVJlcG9zaXRvcnkocmVwbyk7CisJCWNvbnRlbnQgPSBybmcubmV4dEJ5dGVzKDQyNDI0Mik7CisJCXRyeSAoT2JqZWN0SW5zZXJ0ZXIgaW5zID0gcjIubmV3T2JqZWN0SW5zZXJ0ZXIoKSkgeworCQkJaW5zLmluc2VydChPQkpfQkxPQiwgY29udGVudCk7CisJCQlpbnMuZmx1c2goKTsKKwkJfQorCQlhc3NlcnRFcXVhbHMoMCwgTG9uZ1N0cmVhbS5vZihjYWNoZS5nZXRNaXNzQ291bnQoKSkuc3VtKCkpOworCQlhc3NlcnRUcnVlKGNhY2hlLmdldEV2aWN0aW9ucygpW1BhY2tFeHQuUEFDSy5nZXRQb3NpdGlvbigpXSA+IDApOworCQlhc3NlcnRFcXVhbHMoMCwgY2FjaGUuZ2V0RXZpY3Rpb25zKClbUGFja0V4dC5JTkRFWC5nZXRQb3NpdGlvbigpXSk7CisJfQorCisJQFN1cHByZXNzV2FybmluZ3MoInJlc291cmNlIikKKwlAVGVzdAorCXB1YmxpYyB2b2lkIG5vQ29uY3VycmVuY3lTZXJpYWxpemVkUmVhZHNfb25lUmVwbygpIHRocm93cyBFeGNlcHRpb24geworCQlJbk1lbW9yeVJlcG9zaXRvcnkgcjEgPSBjcmVhdGVSZXBvV2l0aEJpdG1hcCgidGVzdCIpOworCQkvLyBSZXNldCBjYWNoZSB3aXRoIGNvbmN1cnJlbmN5IExldmVsIGF0IDEgaS5lLiBubyBjb25jdXJyZW5jeS4KKwkJcmVzZXRDYWNoZSgxKTsKKworCQlEZnNSZWFkZXIgcmVhZGVyID0gKERmc1JlYWRlcikgcjEubmV3T2JqZWN0UmVhZGVyKCk7CisJCWZvciAoRGZzUGFja0ZpbGUgcGFjayA6IHIxLmdldE9iamVjdERhdGFiYXNlKCkuZ2V0UGFja3MoKSkgeworCQkJLy8gT25seSBsb2FkIG5vbi1nYXJiYWdlIHBhY2sgd2l0aCBiaXRtYXAuCisJCQlpZiAocGFjay5pc0dhcmJhZ2UoKSkgeworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJYXN5bmNSdW4oKCkgLT4gcGFjay5nZXRCaXRtYXBJbmRleChyZWFkZXIpKTsKKwkJCWFzeW5jUnVuKCgpIC0+IHBhY2suZ2V0UGFja0luZGV4KHJlYWRlcikpOworCQkJYXN5bmNSdW4oKCkgLT4gcGFjay5nZXRCaXRtYXBJbmRleChyZWFkZXIpKTsKKwkJfQorCQl3YWl0Rm9yRXhlY3V0b3JQb29sVGVybWluYXRpb24oKTsKKworCQlhc3NlcnRFcXVhbHMoMSwgY2FjaGUuZ2V0TWlzc0NvdW50KClbUGFja0V4dC5CSVRNQVBfSU5ERVgub3JkaW5hbCgpXSk7CisJCWFzc2VydEVxdWFscygxLCBjYWNoZS5nZXRNaXNzQ291bnQoKVtQYWNrRXh0LklOREVYLm9yZGluYWwoKV0pOworCQkvLyBSZXZlcnNlIGluZGV4IGhhcyBubyBwYWNrIGV4dGVuc2lvbiwgaXQgZGVmYXVsdHMgdG8gMC4KKwkJYXNzZXJ0RXF1YWxzKDEsIGNhY2hlLmdldE1pc3NDb3VudCgpWzBdKTsKKwl9CisKKwlAU3VwcHJlc3NXYXJuaW5ncygicmVzb3VyY2UiKQorCUBUZXN0CisJcHVibGljIHZvaWQgbm9Db25jdXJyZW5jeVNlcmlhbGl6ZWRSZWFkc190d29SZXBvcygpIHRocm93cyBFeGNlcHRpb24geworCQlJbk1lbW9yeVJlcG9zaXRvcnkgcjEgPSBjcmVhdGVSZXBvV2l0aEJpdG1hcCgidGVzdDEiKTsKKwkJSW5NZW1vcnlSZXBvc2l0b3J5IHIyID0gY3JlYXRlUmVwb1dpdGhCaXRtYXAoInRlc3QyIik7CisJCXJlc2V0Q2FjaGUoMSk7CisKKwkJRGZzUmVhZGVyIHJlYWRlciA9IChEZnNSZWFkZXIpIHIxLm5ld09iamVjdFJlYWRlcigpOworCQlEZnNQYWNrRmlsZVtdIHIxUGFja3MgPSByMS5nZXRPYmplY3REYXRhYmFzZSgpLmdldFBhY2tzKCk7CisJCURmc1BhY2tGaWxlW10gcjJQYWNrcyA9IHIyLmdldE9iamVjdERhdGFiYXNlKCkuZ2V0UGFja3MoKTsKKwkJLy8gU2FmZXR5IGNoZWNrIHRoYXQgYm90aCByZXBvcyBoYXZlIHRoZSBzYW1lIG51bWJlciBvZiBwYWNrcy4KKwkJYXNzZXJ0RXF1YWxzKHIxUGFja3MubGVuZ3RoLCByMlBhY2tzLmxlbmd0aCk7CisKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCByMS5nZXRPYmplY3REYXRhYmFzZSgpLmdldFBhY2tzKCkubGVuZ3RoOyArK2kpIHsKKwkJCURmc1BhY2tGaWxlIHBhY2sxID0gcjFQYWNrc1tpXTsKKwkJCURmc1BhY2tGaWxlIHBhY2syID0gcjJQYWNrc1tpXTsKKwkJCWlmIChwYWNrMS5pc0dhcmJhZ2UoKSB8fCBwYWNrMi5pc0dhcmJhZ2UoKSkgeworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJYXN5bmNSdW4oKCkgLT4gcGFjazEuZ2V0Qml0bWFwSW5kZXgocmVhZGVyKSk7CisJCQlhc3luY1J1bigoKSAtPiBwYWNrMi5nZXRCaXRtYXBJbmRleChyZWFkZXIpKTsKKwkJfQorCisJCXdhaXRGb3JFeGVjdXRvclBvb2xUZXJtaW5hdGlvbigpOworCQlhc3NlcnRFcXVhbHMoMiwgY2FjaGUuZ2V0TWlzc0NvdW50KClbUGFja0V4dC5CSVRNQVBfSU5ERVgub3JkaW5hbCgpXSk7CisJCWFzc2VydEVxdWFscygyLCBjYWNoZS5nZXRNaXNzQ291bnQoKVtQYWNrRXh0LklOREVYLm9yZGluYWwoKV0pOworCQlhc3NlcnRFcXVhbHMoMiwgY2FjaGUuZ2V0TWlzc0NvdW50KClbMF0pOworCX0KKworCUBTdXBwcmVzc1dhcm5pbmdzKCJyZXNvdXJjZSIpCisJQFRlc3QKKwlwdWJsaWMgdm9pZCBsb3dDb25jdXJyZW5jeVBhcmFsbGVsUmVhZHNfdHdvUmVwb3MoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJSW5NZW1vcnlSZXBvc2l0b3J5IHIxID0gY3JlYXRlUmVwb1dpdGhCaXRtYXAoInRlc3QxIik7CisJCUluTWVtb3J5UmVwb3NpdG9yeSByMiA9IGNyZWF0ZVJlcG9XaXRoQml0bWFwKCJ0ZXN0MiIpOworCQlyZXNldENhY2hlKDIpOworCisJCURmc1JlYWRlciByZWFkZXIgPSAoRGZzUmVhZGVyKSByMS5uZXdPYmplY3RSZWFkZXIoKTsKKwkJRGZzUGFja0ZpbGVbXSByMVBhY2tzID0gcjEuZ2V0T2JqZWN0RGF0YWJhc2UoKS5nZXRQYWNrcygpOworCQlEZnNQYWNrRmlsZVtdIHIyUGFja3MgPSByMi5nZXRPYmplY3REYXRhYmFzZSgpLmdldFBhY2tzKCk7CisJCS8vIFNhZmV0eSBjaGVjayB0aGF0IGJvdGggcmVwb3MgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgcGFja3MuCisJCWFzc2VydEVxdWFscyhyMVBhY2tzLmxlbmd0aCwgcjJQYWNrcy5sZW5ndGgpOworCisJCWZvciAoaW50IGkgPSAwOyBpIDwgcjEuZ2V0T2JqZWN0RGF0YWJhc2UoKS5nZXRQYWNrcygpLmxlbmd0aDsgKytpKSB7CisJCQlEZnNQYWNrRmlsZSBwYWNrMSA9IHIxUGFja3NbaV07CisJCQlEZnNQYWNrRmlsZSBwYWNrMiA9IHIyUGFja3NbaV07CisJCQlpZiAocGFjazEuaXNHYXJiYWdlKCkgfHwgcGFjazIuaXNHYXJiYWdlKCkpIHsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWFzeW5jUnVuKCgpIC0+IHBhY2sxLmdldEJpdG1hcEluZGV4KHJlYWRlcikpOworCQkJYXN5bmNSdW4oKCkgLT4gcGFjazIuZ2V0Qml0bWFwSW5kZXgocmVhZGVyKSk7CisJCX0KKworCQl3YWl0Rm9yRXhlY3V0b3JQb29sVGVybWluYXRpb24oKTsKKwkJYXNzZXJ0RXF1YWxzKDIsIGNhY2hlLmdldE1pc3NDb3VudCgpW1BhY2tFeHQuQklUTUFQX0lOREVYLm9yZGluYWwoKV0pOworCQlhc3NlcnRFcXVhbHMoMiwgY2FjaGUuZ2V0TWlzc0NvdW50KClbUGFja0V4dC5JTkRFWC5vcmRpbmFsKCldKTsKKwkJYXNzZXJ0RXF1YWxzKDIsIGNhY2hlLmdldE1pc3NDb3VudCgpWzBdKTsKKwl9CisKKwlAU3VwcHJlc3NXYXJuaW5ncygicmVzb3VyY2UiKQorCUBUZXN0CisJcHVibGljIHZvaWQgbG93Q29uY3VycmVuY3lQYXJhbGxlbFJlYWRzX3R3b1JlcG9zQW5kSW5kZXgoKQorCQkJdGhyb3dzIEV4Y2VwdGlvbiB7CisJCUluTWVtb3J5UmVwb3NpdG9yeSByMSA9IGNyZWF0ZVJlcG9XaXRoQml0bWFwKCJ0ZXN0MSIpOworCQlJbk1lbW9yeVJlcG9zaXRvcnkgcjIgPSBjcmVhdGVSZXBvV2l0aEJpdG1hcCgidGVzdDIiKTsKKwkJcmVzZXRDYWNoZSgyKTsKKworCQlEZnNSZWFkZXIgcmVhZGVyID0gKERmc1JlYWRlcikgcjEubmV3T2JqZWN0UmVhZGVyKCk7CisJCURmc1BhY2tGaWxlW10gcjFQYWNrcyA9IHIxLmdldE9iamVjdERhdGFiYXNlKCkuZ2V0UGFja3MoKTsKKwkJRGZzUGFja0ZpbGVbXSByMlBhY2tzID0gcjIuZ2V0T2JqZWN0RGF0YWJhc2UoKS5nZXRQYWNrcygpOworCQkvLyBTYWZldHkgY2hlY2sgdGhhdCBib3RoIHJlcG9zIGhhdmUgdGhlIHNhbWUgbnVtYmVyIG9mIHBhY2tzLgorCQlhc3NlcnRFcXVhbHMocjFQYWNrcy5sZW5ndGgsIHIyUGFja3MubGVuZ3RoKTsKKworCQlmb3IgKGludCBpID0gMDsgaSA8IHIxLmdldE9iamVjdERhdGFiYXNlKCkuZ2V0UGFja3MoKS5sZW5ndGg7ICsraSkgeworCQkJRGZzUGFja0ZpbGUgcGFjazEgPSByMVBhY2tzW2ldOworCQkJRGZzUGFja0ZpbGUgcGFjazIgPSByMlBhY2tzW2ldOworCQkJaWYgKHBhY2sxLmlzR2FyYmFnZSgpIHx8IHBhY2syLmlzR2FyYmFnZSgpKSB7CisJCQkJY29udGludWU7CisJCQl9CisJCQlhc3luY1J1bigoKSAtPiBwYWNrMS5nZXRCaXRtYXBJbmRleChyZWFkZXIpKTsKKwkJCWFzeW5jUnVuKCgpIC0+IHBhY2sxLmdldFBhY2tJbmRleChyZWFkZXIpKTsKKwkJCWFzeW5jUnVuKCgpIC0+IHBhY2syLmdldEJpdG1hcEluZGV4KHJlYWRlcikpOworCQl9CisJCXdhaXRGb3JFeGVjdXRvclBvb2xUZXJtaW5hdGlvbigpOworCisJCWFzc2VydEVxdWFscygyLCBjYWNoZS5nZXRNaXNzQ291bnQoKVtQYWNrRXh0LkJJVE1BUF9JTkRFWC5vcmRpbmFsKCldKTsKKwkJLy8gSW5kZXggaXMgbG9hZGVkIG9uY2UgZm9yIGVhY2ggcmVwby4KKwkJYXNzZXJ0RXF1YWxzKDIsIGNhY2hlLmdldE1pc3NDb3VudCgpW1BhY2tFeHQuSU5ERVgub3JkaW5hbCgpXSk7CisJCWFzc2VydEVxdWFscygyLCBjYWNoZS5nZXRNaXNzQ291bnQoKVswXSk7CisJfQorCisJQFN1cHByZXNzV2FybmluZ3MoInJlc291cmNlIikKKwlAVGVzdAorCXB1YmxpYyB2b2lkIGhpZ2hDb25jdXJyZW5jeVBhcmFsbGVsUmVhZHNfb25lUmVwbygpIHRocm93cyBFeGNlcHRpb24geworCQlJbk1lbW9yeVJlcG9zaXRvcnkgcjEgPSBjcmVhdGVSZXBvV2l0aEJpdG1hcCgidGVzdCIpOworCQlyZXNldENhY2hlKCk7CisKKwkJRGZzUmVhZGVyIHJlYWRlciA9IChEZnNSZWFkZXIpIHIxLm5ld09iamVjdFJlYWRlcigpOworCQlmb3IgKERmc1BhY2tGaWxlIHBhY2sgOiByMS5nZXRPYmplY3REYXRhYmFzZSgpLmdldFBhY2tzKCkpIHsKKwkJCS8vIE9ubHkgbG9hZCBub24tZ2FyYmFnZSBwYWNrIHdpdGggYml0bWFwLgorCQkJaWYgKHBhY2suaXNHYXJiYWdlKCkpIHsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWFzeW5jUnVuKCgpIC0+IHBhY2suZ2V0Qml0bWFwSW5kZXgocmVhZGVyKSk7CisJCQlhc3luY1J1bigoKSAtPiBwYWNrLmdldFBhY2tJbmRleChyZWFkZXIpKTsKKwkJCWFzeW5jUnVuKCgpIC0+IHBhY2suZ2V0Qml0bWFwSW5kZXgocmVhZGVyKSk7CisJCX0KKwkJd2FpdEZvckV4ZWN1dG9yUG9vbFRlcm1pbmF0aW9uKCk7CisKKwkJYXNzZXJ0RXF1YWxzKDEsIGNhY2hlLmdldE1pc3NDb3VudCgpW1BhY2tFeHQuQklUTUFQX0lOREVYLm9yZGluYWwoKV0pOworCQlhc3NlcnRFcXVhbHMoMSwgY2FjaGUuZ2V0TWlzc0NvdW50KClbUGFja0V4dC5JTkRFWC5vcmRpbmFsKCldKTsKKwkJYXNzZXJ0RXF1YWxzKDEsIGNhY2hlLmdldE1pc3NDb3VudCgpWzBdKTsKKwl9CisKKwlwcml2YXRlIHZvaWQgcmVzZXRDYWNoZSgpIHsKKwkJcmVzZXRDYWNoZSgzMik7CisJfQorCisJcHJpdmF0ZSB2b2lkIHJlc2V0Q2FjaGUoaW50IGNvbmN1cnJlbmN5TGV2ZWwpIHsKKwkJRGZzQmxvY2tDYWNoZS5yZWNvbmZpZ3VyZShuZXcgRGZzQmxvY2tDYWNoZUNvbmZpZygpLnNldEJsb2NrU2l6ZSg1MTIpCisJCQkJLnNldENvbmN1cnJlbmN5TGV2ZWwoY29uY3VycmVuY3lMZXZlbCkuc2V0QmxvY2tMaW1pdCgxIDw8IDIwKSk7CisJCWNhY2hlID0gRGZzQmxvY2tDYWNoZS5nZXRJbnN0YW5jZSgpOworCX0KKworCXByaXZhdGUgSW5NZW1vcnlSZXBvc2l0b3J5IGNyZWF0ZVJlcG9XaXRoQml0bWFwKFN0cmluZyByZXBvTmFtZSkKKwkJCXRocm93cyBFeGNlcHRpb24geworCQlEZnNSZXBvc2l0b3J5RGVzY3JpcHRpb24gcmVwb0Rlc2MgPSBuZXcgRGZzUmVwb3NpdG9yeURlc2NyaXB0aW9uKAorCQkJCXJlcG9OYW1lKTsKKwkJSW5NZW1vcnlSZXBvc2l0b3J5IHJlcG8gPSBuZXcgSW5NZW1vcnlSZXBvc2l0b3J5KHJlcG9EZXNjKTsKKwkJdHJ5IChUZXN0UmVwb3NpdG9yeTxJbk1lbW9yeVJlcG9zaXRvcnk+IHJlcG9zaXRvcnkgPSBuZXcgVGVzdFJlcG9zaXRvcnk8PigKKwkJCQlyZXBvKSkgeworCQkJUmV2Q29tbWl0IGNvbW1pdCA9IHJlcG9zaXRvcnkuYnJhbmNoKCIvcmVmcy9yZWYxIiArIHJlcG9OYW1lKQorCQkJCQkuY29tbWl0KCkuYWRkKCJibG9iMSIsICJibG9iMSIgKyByZXBvTmFtZSkuY3JlYXRlKCk7CisJCQlyZXBvc2l0b3J5LmJyYW5jaCgiL3JlZnMvcmVmMiIgKyByZXBvTmFtZSkuY29tbWl0KCkKKwkJCQkJLmFkZCgiYmxvYjIiLCAiYmxvYjIiICsgcmVwb05hbWUpLnBhcmVudChjb21taXQpLmNyZWF0ZSgpOworCQl9CisJCW5ldyBEZnNHYXJiYWdlQ29sbGVjdG9yKHJlcG8pLnBhY2sobnVsbCk7CisJCXJldHVybiByZXBvOworCX0KKworCXByaXZhdGUgdm9pZCBhc3luY1J1bihDYWxsYWJsZTw/PiBjYWxsKSB7CisJCXBvb2wuZXhlY3V0ZSgoKSAtPiB7CisJCQl0cnkgeworCQkJCWNhbGwuY2FsbCgpOworCQkJfSBjYXRjaCAoRXhjZXB0aW9uIGUpIHsKKwkJCQkvLyBJZ25vcmUuCisJCQl9CisJCX0pOworCX0KKworCXByaXZhdGUgdm9pZCB3YWl0Rm9yRXhlY3V0b3JQb29sVGVybWluYXRpb24oKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJcG9vbC5zaHV0ZG93bigpOworCQlwb29sLmF3YWl0VGVybWluYXRpb24oNTAwLCBNSUxMSVNFQ09ORFMpOworCQlhc3NlcnRUcnVlKCJUaHJlYWRzIGRpZCBub3QgY29tcGxldGUsIGxpa2VseSBkdWUgdG8gYSBkZWFkbG9jay4iLAorCQkJCXBvb2wuaXNUZXJtaW5hdGVkKCkpOwogCX0KIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NCYXNpY1BhY2tpbmdUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djQmFzaWNQYWNraW5nVGVzdC5qYXZhCmluZGV4IDhkYzFkZGIuLjZjYWQ4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NCYXNpY1BhY2tpbmdUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0Jhc2ljUGFja2luZ1Rlc3QuamF2YQpAQCAtNTQsNyArNTQsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0UGFja1JlcG9XaXRoTm9SZWZzKGJvb2xlYW4gYWdncmVzc2l2ZSkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWFzc2VydEVxdWFscyg0LCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwogCQljb25maWd1cmVHYyhnYywgYWdncmVzc2l2ZSk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoNCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKQEAgLTcyLDcgKzcyLDcgQEAgcHVibGljIHZvaWQgdGVzdFBhY2syQ29tbWl0cyhib29sZWFuIGFnZ3Jlc3NpdmUpIHRocm93cyBFeGNlcHRpb24gewogCQlhc3NlcnRFcXVhbHMoOCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKIAkJY29uZmlndXJlR2MoZ2MsIGFnZ3Jlc3NpdmUpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDgsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7CkBAIC05Myw3ICs5Myw3IEBAIHB1YmxpYyB2b2lkIHRlc3RQYWNrMkNvbW1pdHNfbm9QYWNrRm9sZGVyKGJvb2xlYW4gYWdncmVzc2l2ZSkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWFzc2VydEVxdWFscyg4LCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwogCQljb25maWd1cmVHYyhnYywgYWdncmVzc2l2ZSk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoOCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKQEAgLTExMiw3ICsxMTIsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0UGFja0FsbE9iamVjdHNJbk9uZVBhY2soYm9vbGVhbiBhZ2dyZXNzaXZlKQogCQlhc3NlcnRFcXVhbHMoNCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKIAkJY29uZmlndXJlR2MoZ2MsIGFnZ3Jlc3NpdmUpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDQsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7CkBAIC0xMjAsNyArMTIwLDcgQEAgcHVibGljIHZvaWQgdGVzdFBhY2tBbGxPYmplY3RzSW5PbmVQYWNrKGJvb2xlYW4gYWdncmVzc2l2ZSkKIAkJYXNzZXJ0RXF1YWxzKDEsIHN0YXRzLm51bWJlck9mQml0bWFwcyk7CiAKIAkJLy8gRG8gdGhlIGdjIGFnYWluIGFuZCBjaGVjayB0aGF0IGl0IGhhc24ndCBjaGFuZ2VkIGFueXRoaW5nCi0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoNCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKQEAgLTE0MCw3ICsxNDAsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0UGFja0NvbW1pdHNBbmRMb29zZU9uZShib29sZWFuIGFnZ3Jlc3NpdmUpCiAJCWFzc2VydEVxdWFscyg4LCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwogCQljb25maWd1cmVHYyhnYywgYWdncmVzc2l2ZSk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoOCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKQEAgLTE2OCw3ICsxNjgsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0Tm90UGFja1R3aWNlKGJvb2xlYW4gYWdncmVzc2l2ZSkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWdjLnNldEV4cGlyZUFnZU1pbGxpcygwKTsKIAkJZnNUaWNrKCk7CiAJCWNvbmZpZ3VyZUdjKGdjLCBhZ2dyZXNzaXZlKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJc3RhdHMgPSBnYy5nZXRTdGF0aXN0aWNzKCk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAKQEAgLTE4Nyw3ICsxODcsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0RG9uZVBydW5lVG9vWW91bmdQYWNrcygpIHRocm93cyBFeGNlcHRpb24gewogCQliYjIuY29tbWl0KCkubWVzc2FnZSgiTSIpLmFkZCgiTSIsICJNIikuY3JlYXRlKCk7CiAKIAkJZ2Muc2V0RXhwaXJlQWdlTWlsbGlzKDApOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDQsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7CkBAIC0yMDcsNyArMjA3LDcgQEAgcHVibGljIHZvaWQgdGVzdERvbmVQcnVuZVRvb1lvdW5nUGFja3MoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJLy8gVGhlIG9sZCBwYWNrZmlsZSBpcyB0b28geW91bmcgdG8gYmUgZGVsZXRlZC4gV2Ugc2hvdWxkIGVuZCB1cCB3aXRoCiAJCS8vIHR3byBwYWNrIGZpbGVzCiAJCWdjLnNldEV4cGlyZShuZXcgRGF0ZShvbGRQYWNrZmlsZS5sYXN0TW9kaWZpZWQoKSAtIDEpKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJc3RhdHMgPSBnYy5nZXRTdGF0aXN0aWNzKCk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCS8vIGlmIG9iamVjdHMgZXhpc3QgaW4gbXVsdGlwbGUgcGFja0ZpbGVzIHRoZW4gdGhleSBhcmUgY291bnRlZCBtdWx0aXBsZQpAQCAtMjE4LDcgKzIxOCw3IEBAIHB1YmxpYyB2b2lkIHRlc3REb25lUHJ1bmVUb29Zb3VuZ1BhY2tzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCS8vIHJlcGFjayBhZ2FpbiBidXQgbm93IHdpdGhvdXQgYSBncmFjZSBwZXJpb2QgZm9yIGxvb3NlIG9iamVjdHMuIFNpbmNlCiAJCS8vIHdlIGRvbid0IGhhdmUgbG9vc2Ugb2JqZWN0cyBhbnltb3JlIHRoaXMgc2hvdWxkbid0IGNoYW5nZSBhbnl0aGluZwogCQlnYy5zZXRFeHBpcmVBZ2VNaWxsaXMoMCk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQkvLyBpZiBvYmplY3RzIGV4aXN0IGluIG11bHRpcGxlIHBhY2tGaWxlcyB0aGVuIHRoZXkgYXJlIGNvdW50ZWQgbXVsdGlwbGUKQEAgLTIzMyw3ICsyMzMsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0RG9uZVBydW5lVG9vWW91bmdQYWNrcygpIHRocm93cyBFeGNlcHRpb24gewogCQkvLyB3ZSB3YW50IHRvIGtlZXAgbmV3bHktbG9vc2VuZWQgb2JqZWN0cyB0aG91Z2gKIAkJZ2Muc2V0RXhwaXJlQWdlTWlsbGlzKC0xKTsKIAotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDEsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJLy8gaWYgb2JqZWN0cyBleGlzdCBpbiBtdWx0aXBsZSBwYWNrRmlsZXMgdGhlbiB0aGV5IGFyZSBjb3VudGVkIG11bHRpcGxlCkBAIC0yNTIsNyArMjUyLDcgQEAgcHVibGljIHZvaWQgdGVzdEltbWVkaWF0ZVBydW5pbmcoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJYmIyLmNvbW1pdCgpLm1lc3NhZ2UoIk0iKS5hZGQoIk0iLCAiTSIpLmNyZWF0ZSgpOwogCiAJCWdjLnNldEV4cGlyZUFnZU1pbGxpcygwKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJc3RhdHMgPSBnYy5nZXRTdGF0aXN0aWNzKCk7CiAKIAkJZnNUaWNrKCk7CkBAIC0yNzMsNyArMjczLDcgQEAgcHVibGljIHZvaWQgdGVzdEltbWVkaWF0ZVBydW5pbmcoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJLy9BbmQgd2UgZG9uJ3Qgd2FudCB0byBrZWVwIHBhY2tzIGZ1bGwgb2YgZGVhZCBvYmplY3RzCiAJCWdjLnNldFBhY2tFeHBpcmVBZ2VNaWxsaXMoMCk7CiAKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJc3RhdHMgPSBnYy5nZXRTdGF0aXN0aWNzKCk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscyg2LCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwpAQCAtMjg0LDcgKzI4NCw3IEBAIHB1YmxpYyB2b2lkIHRlc3RJbW1lZGlhdGVQcnVuaW5nKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJcHVibGljIHZvaWQgdGVzdFByZXNlcnZlQW5kUHJ1bmVPbGRQYWNrcygpIHRocm93cyBFeGNlcHRpb24gewogCQl0ZXN0UHJlc2VydmVPbGRQYWNrcygpOwogCQljb25maWd1cmVHYyhnYywgZmFsc2UpLnNldFBydW5lUHJlc2VydmVkKHRydWUpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCiAJCWFzc2VydEZhbHNlKHJlcG8uZ2V0T2JqZWN0RGF0YWJhc2UoKS5nZXRQcmVzZXJ2ZWREaXJlY3RvcnkoKS5leGlzdHMoKSk7CiAJfQpAQCAtMjk1LDcgKzI5NSw3IEBAIHByaXZhdGUgdm9pZCB0ZXN0UHJlc2VydmVPbGRQYWNrcygpIHRocm93cyBFeGNlcHRpb24gewogCiAJCS8vIHBhY2sgbG9vc2Ugb2JqZWN0IGludG8gcGFja2ZpbGUKIAkJZ2Muc2V0RXhwaXJlQWdlTWlsbGlzKDApOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlQYWNrRmlsZSBvbGRQYWNrZmlsZSA9IHRyLmdldFJlcG9zaXRvcnkoKS5nZXRPYmplY3REYXRhYmFzZSgpLmdldFBhY2tzKCkKIAkJCQkuaXRlcmF0b3IoKS5uZXh0KCkuZ2V0UGFja0ZpbGUoKTsKIAkJYXNzZXJ0VHJ1ZShvbGRQYWNrZmlsZS5leGlzdHMoKSk7CkBAIC0zMDgsNyArMzA4LDcgQEAgcHJpdmF0ZSB2b2lkIHRlc3RQcmVzZXJ2ZU9sZFBhY2tzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCS8vIHByZXNlcnZlZCBkaXJlY3RvcnkKIAkJZ2Muc2V0UGFja0V4cGlyZUFnZU1pbGxpcygwKTsKIAkJY29uZmlndXJlR2MoZ2MsIGZhbHNlKS5zZXRQcmVzZXJ2ZU9sZFBhY2tzKHRydWUpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCiAJCUZpbGUgcHJlc2VydmVkUGFja0ZpbGUgPSBvbGRQYWNrZmlsZS5jcmVhdGVQcmVzZXJ2ZWRGb3JEaXJlY3RvcnkoCiAJCQkJcmVwby5nZXRPYmplY3REYXRhYmFzZSgpLmdldFByZXNlcnZlZERpcmVjdG9yeSgpKTsKQEAgLTMzMCw3ICszMzAsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0UHJ1bmVBbmRSZXN0b3JlT2xkUGFja3MoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJY29uZmlndXJlR2MoZ2MsIGZhbHNlKTsKIAkJZ2Muc2V0RXhwaXJlQWdlTWlsbGlzKDApOwogCQlnYy5zZXRQYWNrRXhwaXJlQWdlTWlsbGlzKDApOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDQsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7CkBAIC0zNDcsNyArMzQ3LDcgQEAgcHVibGljIHZvaWQgdGVzdFBydW5lQW5kUmVzdG9yZU9sZFBhY2tzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAKIAkJLy8gUmVwYWNrIHdpdGggb25seSBvcnBoYW5lZCBjb21taXQsIHNvIHBhY2tmaWxlIHdpbGwgYmUgcHJ1bmVkCiAJCWNvbmZpZ3VyZUdjKGdjLCBmYWxzZSkuc2V0UHJlc2VydmVPbGRQYWNrcyh0cnVlKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJc3RhdHMgPSBnYy5nZXRTdGF0aXN0aWNzKCk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0NvbmN1cnJlbnRUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djQ29uY3VycmVudFRlc3QuamF2YQppbmRleCBkYTljMGRmLi4xNTE5ODczIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djQ29uY3VycmVudFRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djQ29uY3VycmVudFRlc3QuamF2YQpAQCAtMTExLDcgKzExMSw3IEBAIHB1YmxpYyB2b2lkIHJlcGFja0FuZEdldFN0YXRzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCXRlc3QuY29tbWl0KCkuYWRkKCJhIiwgImEiKS5jcmVhdGUoKTsKIAkJR0MgZ2MxID0gbmV3IEdDKHRyLmdldFJlcG9zaXRvcnkoKSk7CiAJCWdjMS5zZXRQYWNrRXhwaXJlQWdlTWlsbGlzKDApOwotCQlnYzEuZ2MoKTsKKwkJZ2MxLmdjKCkuZ2V0KCk7CiAJCXRlc3QuY29tbWl0KCkuYWRkKCJiIiwgImIiKS5jcmVhdGUoKTsKIAogCQkvLyBDcmVhdGUgYSBuZXcgUmVwb3NpdG9yeSBpbnN0YW5jZSBhbmQgdHJpZ2dlciBhIGdjCkBAIC0xMjEsNyArMTIxLDcgQEAgcHVibGljIHZvaWQgcmVwYWNrQW5kR2V0U3RhdHMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCQl0ci5nZXRSZXBvc2l0b3J5KCkuZ2V0RGlyZWN0b3J5KCkpOwogCQlHQyBnYzIgPSBuZXcgR0MocjIpOwogCQlnYzIuc2V0UGFja0V4cGlyZUFnZU1pbGxpcygwKTsKLQkJZ2MyLmdjKCk7CisJCWdjMi5nYygpLmdldCgpOwogCiAJCW5ldyBHQyh0ci5nZXRSZXBvc2l0b3J5KCkpLmdldFN0YXRpc3RpY3MoKTsKIAl9CkBAIC0xMzQsNyArMTM0LDcgQEAgcHVibGljIHZvaWQgcmVwYWNrQW5kVXBsb2FkUGFjaygpIHRocm93cyBFeGNlcHRpb24gewogCiAJCUdDIGdjMSA9IG5ldyBHQyh0ci5nZXRSZXBvc2l0b3J5KCkpOwogCQlnYzEuc2V0UGFja0V4cGlyZUFnZU1pbGxpcygwKTsKLQkJZ2MxLmdjKCk7CisJCWdjMS5nYygpLmdldCgpOwogCiAJCVJldkNvbW1pdCBiID0gdGVzdC5jb21taXQoKS5hZGQoImIiLCAiYiIpLmNyZWF0ZSgpOwogCkBAIC0xNDIsNyArMTQyLDcgQEAgcHVibGljIHZvaWQgcmVwYWNrQW5kVXBsb2FkUGFjaygpIHRocm93cyBFeGNlcHRpb24gewogCQkJCXRyLmdldFJlcG9zaXRvcnkoKS5nZXREaXJlY3RvcnkoKSk7CiAJCUdDIGdjMiA9IG5ldyBHQyhyMik7CiAJCWdjMi5zZXRQYWNrRXhwaXJlQWdlTWlsbGlzKDApOwotCQlnYzIuZ2MoKTsKKwkJZ2MyLmdjKCkuZ2V0KCk7CiAKIAkJLy8gU2ltdWxhdGUgcGFydHMgb2YgYW4gVXBsb2FkUGFjay4gVGhpcyBpcyB0aGUgc2l0dWF0aW9uIG9uCiAJCS8vIHNlcnZlciBzaWRlIChlLmcuIGdlcnJpdCkgd2hlbiBjbGllbnRzIGFyZQpAQCAtMTczLDcgKzE3Myw3IEBAIHB1YmxpYyB2b2lkIHJlcGFja0FuZENoZWNrQml0bWFwVXNhZ2UoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJRmlsZVJlcG9zaXRvcnkgcmVwb3NpdG9yeSA9IHRyLmdldFJlcG9zaXRvcnkoKTsKIAkJR0MgZ2MxID0gbmV3IEdDKHJlcG9zaXRvcnkpOwogCQlnYzEuc2V0UGFja0V4cGlyZUFnZU1pbGxpcygwKTsKLQkJZ2MxLmdjKCk7CisJCWdjMS5nYygpLmdldCgpOwogCQlTdHJpbmcgb2xkUGFja05hbWUgPSBnZXRTaW5nbGVQYWNrKHJlcG9zaXRvcnkpLmdldFBhY2tOYW1lKCk7CiAJCVJldkNvbW1pdCBiID0gdGVzdC5jb21taXQoKS5hZGQoImIiLCAiYiIpLmNyZWF0ZSgpOwogCkBAIC0xODEsNyArMTgxLDcgQEAgcHVibGljIHZvaWQgcmVwYWNrQW5kQ2hlY2tCaXRtYXBVc2FnZSgpIHRocm93cyBFeGNlcHRpb24gewogCQlGaWxlUmVwb3NpdG9yeSByZXBvc2l0b3J5MiA9IG5ldyBGaWxlUmVwb3NpdG9yeShyZXBvc2l0b3J5LmdldERpcmVjdG9yeSgpKTsKIAkJR0MgZ2MyID0gbmV3IEdDKHJlcG9zaXRvcnkyKTsKIAkJZ2MyLnNldFBhY2tFeHBpcmVBZ2VNaWxsaXMoMCk7Ci0JCWdjMi5nYygpOworCQlnYzIuZ2MoKS5nZXQoKTsKIAkJU3RyaW5nIG5ld1BhY2tOYW1lID0gZ2V0U2luZ2xlUGFjayhyZXBvc2l0b3J5MikuZ2V0UGFja05hbWUoKTsKIAkJLy8gbWFrZSBzdXJlIGdjKCkgaGFzIGNhdXNlZCBjcmVhdGlvbiBvZiBhIG5ldyBwYWNrZmlsZQogCQlhc3NlcnROb3RFcXVhbHMob2xkUGFja05hbWUsIG5ld1BhY2tOYW1lKTsKQEAgLTIxMiw3ICsyMTIsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0SW50ZXJydXB0R2MoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCWxvbmcgc3RhcnQgPSBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKTsKIAkJCVN5c3RlbS5vdXQucHJpbnRsbigic3RhcnRpbmcgZ2MiKTsKIAkJCWxhdGNoLmNvdW50RG93bigpOwotCQkJQ29sbGVjdGlvbjxQYWNrPiByID0gZ2MuZ2MoKTsKKwkJCUNvbGxlY3Rpb248UGFjaz4gciA9IGdjLmdjKCkuZ2V0KCk7CiAJCQlTeXN0ZW0ub3V0LnByaW50bG4oCiAJCQkJCSJnYyB0b29rICIgKyAoU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKCkgLSBzdGFydCkgKyAiIG1zIik7CiAJCQlyZXR1cm4gcjsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NEZWxldGVFbXB0eVJlZnNGb2xkZXJzVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0RlbGV0ZUVtcHR5UmVmc0ZvbGRlcnNUZXN0LmphdmEKaW5kZXggNTY0ZjhhYi4uMzlhYWZjOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0RlbGV0ZUVtcHR5UmVmc0ZvbGRlcnNUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0RlbGV0ZUVtcHR5UmVmc0ZvbGRlcnNUZXN0LmphdmEKQEAgLTQ4LDcgKzQ4LDcgQEAgcHVibGljIHZvaWQgZW1wdHlSZWZGb2xkZXJzQXJlRGVsZXRlZCgpIHRocm93cyBFeGNlcHRpb24gewogCQlzZXRMYXN0TW9kaWZpZWRUaW1lKGZpbGVUaW1lLCBoZWFkcywgUkVGX0ZPTERFUl8wMik7CiAJCWFzc2VydFRydWUocmVmRGlyMDEudG9GaWxlKCkuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKHJlZkRpcjAyLnRvRmlsZSgpLmV4aXN0cygpKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAogCQlhc3NlcnRGYWxzZShyZWZEaXIwMS50b0ZpbGUoKS5leGlzdHMoKSk7CiAJCWFzc2VydEZhbHNlKHJlZkRpcjAxLmdldFBhcmVudCgpLnRvRmlsZSgpLmV4aXN0cygpKTsKQEAgLTY4LDcgKzY4LDcgQEAgcHVibGljIHZvaWQgZW1wdHlSZWZGb2xkZXJzU2tpcEZpbGVzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCXNldExhc3RNb2RpZmllZFRpbWUoZmlsZVRpbWUsIGhlYWRzLCBSRUZfRk9MREVSXzAyKTsKIAkJYXNzZXJ0VHJ1ZShyZWZEaXIwMS50b0ZpbGUoKS5leGlzdHMoKSk7CiAJCWFzc2VydFRydWUocmVmRGlyMDIudG9GaWxlKCkuZXhpc3RzKCkpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlhc3NlcnRUcnVlKEZpbGVzLmV4aXN0cyhyZWZGaWxlKSk7CiAJfQogCkBAIC04OCw3ICs4OCw3IEBAIHB1YmxpYyB2b2lkIGVtcHR5UmVmRm9sZGVyc0FyZUtlcHRJZlRoZXlBcmVUb29SZWNlbnQoKQogCQlQYXRoIHJlZkRpcjAyID0gRmlsZXMuY3JlYXRlRGlyZWN0b3JpZXMoaGVhZHMucmVzb2x2ZShSRUZfRk9MREVSXzAyKSk7CiAJCWFzc2VydFRydWUocmVmRGlyMDEudG9GaWxlKCkuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKHJlZkRpcjAyLnRvRmlsZSgpLmV4aXN0cygpKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAogCQlhc3NlcnRUcnVlKHJlZkRpcjAxLnRvRmlsZSgpLmV4aXN0cygpKTsKIAkJYXNzZXJ0VHJ1ZShyZWZEaXIwMi50b0ZpbGUoKS5leGlzdHMoKSk7CkBAIC0xMDQsNyArMTA0LDcgQEAgcHVibGljIHZvaWQgbm9uRW1wdHlSZWZzRm9sZGVyc0FyZUtlcHQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJYXNzZXJ0VHJ1ZShyZWZEaXIwMi50b0ZpbGUoKS5leGlzdHMoKSk7CiAJCWFzc2VydFRydWUocmVmMDEudG9GaWxlKCkuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKHJlZjAyLnRvRmlsZSgpLmV4aXN0cygpKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJYXNzZXJ0VHJ1ZShyZWZEaXIwMS50b0ZpbGUoKS5leGlzdHMoKSk7CiAJCWFzc2VydFRydWUocmVmRGlyMDIudG9GaWxlKCkuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKHJlZjAxLnRvRmlsZSgpLmV4aXN0cygpKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NEaXJDYWNoZVNhdmVzT2JqZWN0c1Rlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NEaXJDYWNoZVNhdmVzT2JqZWN0c1Rlc3QuamF2YQppbmRleCBhNGRmZjI2Li5hNTFiMGMyIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djRGlyQ2FjaGVTYXZlc09iamVjdHNUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0RpckNhY2hlU2F2ZXNPYmplY3RzVGVzdC5qYXZhCkBAIC0yNSw3ICsyNSw3IEBAIHB1YmxpYyB2b2lkIHRlc3REaXJDYWNoZVNhdmVzT2JqZWN0cygpIHRocm93cyBFeGNlcHRpb24gewogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDksIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoMSwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoOCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKQEAgLTQzLDcgKzQzLDcgQEAgcHVibGljIHZvaWQgdGVzdERpckNhY2hlU2F2ZXNPYmplY3RzV2l0aFBydW5lTm93KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwogCQlnYy5zZXRFeHBpcmVBZ2VNaWxsaXMoMCk7CiAJCWZzVGljaygpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDgsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djS2VlcEZpbGVzVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0tlZXBGaWxlc1Rlc3QuamF2YQppbmRleCAwNzQ3MjhiLi45YTI5MzVmMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY0tlZXBGaWxlc1Rlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djS2VlcEZpbGVzVGVzdC5qYXZhCkBAIC00MCw3ICs0MCw3IEBAIHB1YmxpYyB2b2lkIHRlc3RLZWVwRmlsZXMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJYXNzZXJ0RXF1YWxzKDQsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mUGFja2VkT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tGaWxlcyk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoMCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwogCQlhc3NlcnRFcXVhbHMoNCwgc3RhdHMubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKQEAgLTYyLDcgKzYyLDcgQEAgcHVibGljIHZvaWQgdGVzdEtlZXBGaWxlcygpIHRocm93cyBFeGNlcHRpb24gewogCQlhc3NlcnRUcnVlKGtlZXBGaWxlLmV4aXN0cygpKTsKIAkJYXNzZXJ0VHJ1ZShiaXRtYXBGaWxlLmRlbGV0ZSgpKTsKIAkJZ2Muc2V0UGFja0tlcHRPYmplY3RzKGZhbHNlKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJc3RhdHMgPSBnYy5nZXRTdGF0aXN0aWNzKCk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CiAJCWFzc2VydEVxdWFscyg4LCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY09ycGhhbkZpbGVzVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY09ycGhhbkZpbGVzVGVzdC5qYXZhCmluZGV4IGM1YzMxNmQuLjYyMGFlZGYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NPcnBoYW5GaWxlc1Rlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djT3JwaGFuRmlsZXNUZXN0LmphdmEKQEAgLTUwLDcgKzUwLDcgQEAgcHVibGljIHZvaWQgYml0bWFwQW5kSWR4RGVsZXRlZEJ1dFBhY2tOb3QoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJY3JlYXRlRmlsZUluUGFja0ZvbGRlcihCSVRNQVBfRmlsZV8xKTsKIAkJY3JlYXRlRmlsZUluUGFja0ZvbGRlcihJRFhfRmlsZV8yKTsKIAkJY3JlYXRlRmlsZUluUGFja0ZvbGRlcihQQUNLX0ZpbGVfMyk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCWFzc2VydEZhbHNlKG5ldyBGaWxlKHBhY2tEaXIsIEJJVE1BUF9GaWxlXzEpLmV4aXN0cygpKTsKIAkJYXNzZXJ0RmFsc2UobmV3IEZpbGUocGFja0RpciwgSURYX0ZpbGVfMikuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKG5ldyBGaWxlKHBhY2tEaXIsIFBBQ0tfRmlsZV8zKS5leGlzdHMoKSk7CkBAIC02Miw3ICs2Miw3IEBAIHB1YmxpYyB2b2lkIGJpdG1hcERlbGV0ZWRCdXRJZHhBbmRQYWNrTm90KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWNyZWF0ZUZpbGVJblBhY2tGb2xkZXIoSURYX0ZpbGVfMik7CiAJCWNyZWF0ZUZpbGVJblBhY2tGb2xkZXIoUEFDS19GaWxlXzIpOwogCQljcmVhdGVGaWxlSW5QYWNrRm9sZGVyKFBBQ0tfRmlsZV8zKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJYXNzZXJ0RmFsc2UobmV3IEZpbGUocGFja0RpciwgQklUTUFQX0ZpbGVfMSkuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKG5ldyBGaWxlKHBhY2tEaXIsIElEWF9GaWxlXzIpLmV4aXN0cygpKTsKIAkJYXNzZXJ0VHJ1ZShuZXcgRmlsZShwYWNrRGlyLCBQQUNLX0ZpbGVfMikuZXhpc3RzKCkpOwpAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWMgdm9pZCBiaXRtYXBEZWxldGVkQnV0SWR4QW5kUGFja05vdCgpIHRocm93cyBFeGNlcHRpb24gewogCUBUZXN0CiAJcHVibGljIHZvaWQgbWFsZm9ybWVkSWR4Tm90RGVsZXRlZCgpIHRocm93cyBFeGNlcHRpb24gewogCQljcmVhdGVGaWxlSW5QYWNrRm9sZGVyKElEWF9GaWxlX21hbGZvcm1lZCk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCWFzc2VydFRydWUobmV3IEZpbGUocGFja0RpciwgSURYX0ZpbGVfbWFsZm9ybWVkKS5leGlzdHMoKSk7CiAJfQogCkBAIC04NCw3ICs4NCw3IEBAIHB1YmxpYyB2b2lkIGtlZXBQcmV2ZW50c0RlbGV0aW9uT2ZJbmRleEZpbGVzRm9yTWlzc2luZ1BhY2tGaWxlKCkKIAkJY3JlYXRlRmlsZUluUGFja0ZvbGRlcihCSVRNQVBfRmlsZV8yKTsKIAkJY3JlYXRlRmlsZUluUGFja0ZvbGRlcihLRUVQX0ZpbGVfMik7CiAJCWNyZWF0ZUZpbGVJblBhY2tGb2xkZXIoUEFDS19GaWxlXzMpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlhc3NlcnRGYWxzZShuZXcgRmlsZShwYWNrRGlyLCBCSVRNQVBfRmlsZV8xKS5leGlzdHMoKSk7CiAJCWFzc2VydFRydWUobmV3IEZpbGUocGFja0RpciwgQklUTUFQX0ZpbGVfMikuZXhpc3RzKCkpOwogCQlhc3NlcnRUcnVlKG5ldyBGaWxlKHBhY2tEaXIsIElEWF9GaWxlXzIpLmV4aXN0cygpKTsKQEAgLTEwMiw2ICsxMDIsNiBAQCBwcml2YXRlIHZvaWQgY3JlYXRlRmlsZUluUGFja0ZvbGRlcihTdHJpbmcgZmlsZU5hbWUpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJQFRlc3QKIAlwdWJsaWMgdm9pZCBub1N1Y2hQYWNrRm9sZGVyKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWFzc2VydFRydWUocGFja0Rpci5kZWxldGUoKSk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY1BydW5lTm9uUmVmZXJlbmNlZFRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NQcnVuZU5vblJlZmVyZW5jZWRUZXN0LmphdmEKaW5kZXggNzM4NjYyMS4uY2EwZjY4NCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY1BydW5lTm9uUmVmZXJlbmNlZFRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djUHJ1bmVOb25SZWZlcmVuY2VkVGVzdC5qYXZhCkBAIC04MCw3ICs4MCw3IEBAIHB1YmxpYyB2b2lkIHRlc3RQYWNrQ29tbWl0c0FuZExvb3NlT25lV2l0aFBydW5lTm93KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOwogCQlnYy5zZXRFeHBpcmVBZ2VNaWxsaXMoMCk7CiAJCWZzVGljaygpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0Tm9FbXB0eUZhbm91dERpcmVjdG9yaWVzKCk7CiAJCWFzc2VydEVxdWFscygwLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djUmVmbG9nVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY1JlZmxvZ1Rlc3QuamF2YQppbmRleCAwOTAxZDg2Li5lNmMxZWU1IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djUmVmbG9nVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NSZWZsb2dUZXN0LmphdmEKQEAgLTU5LDcgKzU5LDcgQEAgcHVibGljIHZvaWQgdGVzdFBhY2tSZXBvV2l0aENvcnJ1cHRSZWZsb2coKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCQkuY3JlYXRlKCk7CiAJCS8vIG1ha2Ugc3VyZSBIRUFEIGV4aXN0cwogCQlHaXQud3JhcChyZXBvKS5jaGVja291dCgpLnNldE5hbWUoInJlZnMvaGVhZHMvbWFzdGVyIikuY2FsbCgpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCX0KIAogCUBUZXN0CkBAIC03OCw3ICs3OCw3IEBAIHB1YmxpYyB2b2lkIHRlc3RQYWNrQ29tbWl0c0FuZExvb3NlT25lTm9SZWZsb2coKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJRmlsZVV0aWxzLmRlbGV0ZSgKIAkJCQluZXcgRmlsZShyZXBvLmdldERpcmVjdG9yeSgpLCAibG9ncy9yZWZzL2hlYWRzL21hc3RlciIpLAogCQkJCUZpbGVVdGlscy5SRVRSWSB8IEZpbGVVdGlscy5TS0lQX01JU1NJTkcpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCiAJCXN0YXRzID0gZ2MuZ2V0U3RhdGlzdGljcygpOwogCQlhc3NlcnRFcXVhbHMoNCwgc3RhdHMubnVtYmVyT2ZMb29zZU9iamVjdHMpOwpAQCAtMTA0LDcgKzEwNCw3IEBAIHB1YmxpYyB2b2lkIHRlc3RQYWNrQ29tbWl0c0FuZExvb3NlT25lV2l0aFBydW5lTm93Tm9SZWZsb2coKQogCQkJCW5ldyBGaWxlKHJlcG8uZ2V0RGlyZWN0b3J5KCksICJsb2dzL3JlZnMvaGVhZHMvbWFzdGVyIiksCiAJCQkJRmlsZVV0aWxzLlJFVFJZIHwgRmlsZVV0aWxzLlNLSVBfTUlTU0lORyk7CiAJCWdjLnNldEV4cGlyZUFnZU1pbGxpcygwKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAogCQlzdGF0cyA9IGdjLmdldFN0YXRpc3RpY3MoKTsKIAkJYXNzZXJ0RXF1YWxzKDAsIHN0YXRzLm51bWJlck9mTG9vc2VPYmplY3RzKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NUZW1wb3JhcnlGaWxlc1Rlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR2NUZW1wb3JhcnlGaWxlc1Rlc3QuamF2YQppbmRleCAxNmJkZTE5Li4xYTdkZDVlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0djVGVtcG9yYXJ5RmlsZXNUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HY1RlbXBvcmFyeUZpbGVzVGVzdC5qYXZhCkBAIC01MCw3ICs1MCw3IEBAIHB1YmxpYyB2b2lkIG9sZFRlbXBQYWNrc0FuZElkeEFyZURlbGV0ZWQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCQktIDI0ICogNjAgKiA2MiAqIDEwMDA7CiAJCXRlbXBJbmRleC5zZXRMYXN0TW9kaWZpZWQoXzI0SG91cnNCZWZvcmUpOwogCQl0ZW1wUGFjay5zZXRMYXN0TW9kaWZpZWQoXzI0SG91cnNCZWZvcmUpOwotCQlnYy5nYygpOworCQlnYy5nYygpLmdldCgpOwogCQlhc3NlcnRGYWxzZSh0ZW1wSW5kZXguZXhpc3RzKCkpOwogCQlhc3NlcnRGYWxzZSh0ZW1wUGFjay5leGlzdHMoKSk7CiAJfQpAQCAtNjYsNyArNjYsNyBAQCBwdWJsaWMgdm9pZCByZWNlbnRUZW1wUGFja3NBbmRJZHhBcmVOb3REZWxldGVkKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCWFzc2VydFRydWUodGVtcEluZGV4LmNyZWF0ZU5ld0ZpbGUoKSk7CiAJCWFzc2VydFRydWUodGVtcEluZGV4LmV4aXN0cygpKTsKIAkJYXNzZXJ0VHJ1ZSh0ZW1wUGFjay5leGlzdHMoKSk7Ci0JCWdjLmdjKCk7CisJCWdjLmdjKCkuZ2V0KCk7CiAJCWFzc2VydFRydWUodGVtcEluZGV4LmV4aXN0cygpKTsKIAkJYXNzZXJ0VHJ1ZSh0ZW1wUGFjay5leGlzdHMoKSk7CiAJfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9PYmplY3REaXJlY3RvcnlUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL09iamVjdERpcmVjdG9yeVRlc3QuamF2YQppbmRleCAzMTZlMzM2Li4xYTNiMzc4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL09iamVjdERpcmVjdG9yeVRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL09iamVjdERpcmVjdG9yeVRlc3QuamF2YQpAQCAtMTI2LDcgKzEyNiw3IEBAIHB1YmxpYyB2b2lkIHRlc3RTY2FubmluZ0ZvclBhY2tmaWxlcygpIHRocm93cyBFeGNlcHRpb24gewogCQkJLy8gc2V0dXAgYSByZXBvIHdoaWNoIGhhcyBhdCBsZWFzdCBvbmUgcGFjayBmaWxlIGFuZCB0cmlnZ2VyCiAJCQkvLyBzY2FubmluZyBvZiB0aGUgcGFja3MgZGlyZWN0b3J5CiAJCQlPYmplY3RJZCBpZCA9IGNvbW1pdEZpbGUoImZpbGUudHh0IiwgInRlc3QiLCAibWFzdGVyIikuZ2V0SWQoKTsKLQkJCWdjLmdjKCk7CisJCQlnYy5nYygpLmdldCgpOwogCQkJYXNzZXJ0RmFsc2UocmVjZWl2aW5nREIuZ2V0T2JqZWN0RGF0YWJhc2UoKS5oYXModW5rbm93bklEKSk7CiAJCQlhc3NlcnRUcnVlKHJlY2VpdmluZ0RCLmdldE9iamVjdERhdGFiYXNlKCkuaGFzUGFja2VkT2JqZWN0KGlkKSk7CiAKQEAgLTE1NSw3ICsxNTUsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0U2Nhbm5pbmdGb3JQYWNrZmlsZXMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAogCQkJLy8gdHJpZ2dlciBhIGdjLiBUaGlzIHdpbGwgY3JlYXRlIHBhY2tmaWxlcyB3aGljaCBoYXZlIGxpa2VseSB0aGUKIAkJCS8vIHNhbWUgbXRpbWUgdGhhbiB0aGUgcGFja2ZvbGRlcgotCQkJZ2MuZ2MoKTsKKwkJCWdjLmdjKCkuZ2V0KCk7CiAKIAkJCS8vIFRvIGRlYWwgd2l0aCByYWN5LWdpdCBzaXR1YXRpb25zIEpHaXQncyBGaWxlc25hcHNob3QgY2xhc3Mgd2lsbAogCQkJLy8gcmVwb3J0IGEgZmlsZS9mb2xkZXIgcG90ZW50aWFsbHkgZGlydHkgaWYKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFja0ZpbGVTbmFwc2hvdFRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFja0ZpbGVTbmFwc2hvdFRlc3QuamF2YQppbmRleCA3YzMyY2U3Li4zZGUwMTViIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tGaWxlU25hcHNob3RUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrRmlsZVNuYXBzaG90VGVzdC5qYXZhCkBAIC0yNSw4ICsyNSw2IEBACiBpbXBvcnQgamF2YS5uaW8uZmlsZS5QYXRoczsKIGltcG9ydCBqYXZhLm5pby5maWxlLlN0YW5kYXJkQ29weU9wdGlvbjsKIGltcG9ydCBqYXZhLm5pby5maWxlLlN0YW5kYXJkT3Blbk9wdGlvbjsKLS8vaW1wb3J0IGphdmEubmlvLmZpbGUuYXR0cmlidXRlLkJhc2ljRmlsZUF0dHJpYnV0ZXM7Ci1pbXBvcnQgamF2YS50ZXh0LlBhcnNlRXhjZXB0aW9uOwogaW1wb3J0IGphdmEudGltZS5JbnN0YW50OwogaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOwogaW1wb3J0IGphdmEudXRpbC5JdGVyYXRvcjsKQEAgLTI4MSw4ICsyNzksNyBAQCBwcml2YXRlIFBhdGggY29weVBhY2soUGF0aCBiYXNlLCBTdHJpbmcgc3JjU3VmZml4LCBTdHJpbmcgZHN0U3VmZml4KQogCX0KIAogCXByaXZhdGUgUGFjayByZXBhY2tBbmRDaGVjayhpbnQgY29tcHJlc3Npb25MZXZlbCwgU3RyaW5nIG9sZE5hbWUsCi0JCQlMb25nIG9sZExlbmd0aCwgQW55T2JqZWN0SWQgb2xkQ2hrU3VtKQotCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBQYXJzZUV4Y2VwdGlvbiB7CisJCQlMb25nIG9sZExlbmd0aCwgQW55T2JqZWN0SWQgb2xkQ2hrU3VtKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJUGFjayBwID0gZ2V0U2luZ2xlUGFjayhnYyhjb21wcmVzc2lvbkxldmVsKSk7CiAJCUZpbGUgcGYgPSBwLmdldFBhY2tGaWxlKCk7CiAJCS8vIFRoZSBmb2xsb3dpbmcgdHdvIGFzc3VtcHRpb25zIHNob3VsZCBub3QgY2F1c2UgdGhlIHRlc3QgdG8gZmFpbC4gSWYKQEAgLTMwNSw4ICszMDIsNyBAQCBwcml2YXRlIFBhY2sgZ2V0U2luZ2xlUGFjayhDb2xsZWN0aW9uPFBhY2s+IHBhY2tzKSB7CiAJCXJldHVybiBwOwogCX0KIAotCXByaXZhdGUgQ29sbGVjdGlvbjxQYWNrPiBnYyhpbnQgY29tcHJlc3Npb25MZXZlbCkKLQkJCXRocm93cyBJT0V4Y2VwdGlvbiwgUGFyc2VFeGNlcHRpb24geworCXByaXZhdGUgQ29sbGVjdGlvbjxQYWNrPiBnYyhpbnQgY29tcHJlc3Npb25MZXZlbCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCUdDIGdjID0gbmV3IEdDKGRiKTsKIAkJUGFja0NvbmZpZyBwYyA9IG5ldyBQYWNrQ29uZmlnKGRiLmdldENvbmZpZygpKTsKIAkJcGMuc2V0Q29tcHJlc3Npb25MZXZlbChjb21wcmVzc2lvbkxldmVsKTsKQEAgLTMyMiw3ICszMTgsNyBAQCBwcml2YXRlIENvbGxlY3Rpb248UGFjaz4gZ2MoaW50IGNvbXByZXNzaW9uTGV2ZWwpCiAJCWdjLnNldFBhY2tDb25maWcocGMpOwogCQlnYy5zZXRFeHBpcmVBZ2VNaWxsaXMoMCk7CiAJCWdjLnNldFBhY2tFeHBpcmVBZ2VNaWxsaXMoMCk7Ci0JCXJldHVybiBnYy5nYygpOworCQlyZXR1cm4gZ2MuZ2MoKS5nZXQoKTsKIAl9CiAKIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFja1dyaXRlclRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFja1dyaXRlclRlc3QuamF2YQppbmRleCA3MWFjYTlkLi4xZmYyMjY0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tXcml0ZXJUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrV3JpdGVyVGVzdC5qYXZhCkBAIC0yOCw3ICsyOCw2IEBACiBpbXBvcnQgamF2YS5pby5GaWxlOwogaW1wb3J0IGphdmEuaW8uRmlsZU91dHB1dFN0cmVhbTsKIGltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwotaW1wb3J0IGphdmEudGV4dC5QYXJzZUV4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLnRpbWUuRHVyYXRpb247CiBpbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKIGltcG9ydCBqYXZhLnV0aWwuQXJyYXlzOwpAQCAtMjMyLDE1ICsyMzEsMTMgQEAgcHVibGljIHZvaWQgdGVzdElnbm9yZU5vbkV4aXN0aW5nT2JqZWN0cygpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJICogVXNlIGEgcmVwbyB3aXRoIGJpdG1hcCBpbmRleGVzIGJlY2F1c2UgdGhlbiBQYWNrV3JpdGVyIHdpbGwgdXNlCiAJICogUGFja1dyaXRlckJpdG1hcFdhbGtlciB3aGljaCBoYWQgcHJvYmxlbXMgd2l0aCB0aGlzIHNpdHVhdGlvbi4KIAkgKgotCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KLQkgKiBAdGhyb3dzIFBhcnNlRXhjZXB0aW9uCisJICogQHRocm93cyBFeGNlcHRpb24KIAkgKi8KIAlAVGVzdAotCXB1YmxpYyB2b2lkIHRlc3RJZ25vcmVOb25FeGlzdGluZ09iamVjdHNXaXRoQml0bWFwcygpIHRocm93cyBJT0V4Y2VwdGlvbiwKLQkJCVBhcnNlRXhjZXB0aW9uIHsKKwlwdWJsaWMgdm9pZCB0ZXN0SWdub3JlTm9uRXhpc3RpbmdPYmplY3RzV2l0aEJpdG1hcHMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJZmluYWwgT2JqZWN0SWQgbm9uRXhpc3RpbmcgPSBPYmplY3RJZAogCQkJCS5mcm9tU3RyaW5nKCIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxIik7Ci0JCW5ldyBHQyhkYikuZ2MoKTsKKwkJbmV3IEdDKGRiKS5nYygpLmdldCgpOwogCQljcmVhdGVWZXJpZnlPcGVuUGFjayhOT05FLCBoYXZlcyhub25FeGlzdGluZyksIGZhbHNlLCB0cnVlLCB0cnVlKTsKIAkJLy8gc2hvdWxkbid0IHRocm93IGFueXRoaW5nCiAJfQpAQCAtNzMyLDExICs3MjksMTEgQEAgcHJpdmF0ZSBGaWxlUmVwb3NpdG9yeSBzZXRVcFJlcG9XaXRoTXVsdGlwbGVQYWNrZmlsZXMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCWdjLnNldFBhY2tFeHBpcmVBZ2VNaWxsaXMoTG9uZy5NQVhfVkFMVUUpOwogCQkJZ2Muc2V0RXhwaXJlQWdlTWlsbGlzKExvbmcuTUFYX1ZBTFVFKTsKIAkJCS8vIENyZWF0ZXMgcGFja2ZpbGUgUDEgKGNvbnRhaW5pbmcgQzEsIFQxKQotCQkJZ2MuZ2MoKTsKKwkJCWdjLmdjKCkuZ2V0KCk7CiAJCQkvLyBDcmVhdGVzIDEgb2JqZWN0IChDMiBjb21taXQpCiAJCQlnaXQuY29tbWl0KCkuc2V0TWVzc2FnZSgiU2Vjb25kIGNvbW1pdCIpLmNhbGwoKTsKIAkJCS8vIENyZWF0ZXMgcGFja2ZpbGUgUDIgKGNvbnRhaW5pbmcgQzEsIFQxLCBDMikKLQkJCWdjLmdjKCk7CisJCQlnYy5nYygpLmdldCgpOwogCQkJLy8gQ3JlYXRlIDEgb2JqZWN0IChDMyBjb21taXQpCiAJCQlnaXQuY29tbWl0KCkuc2V0TWVzc2FnZSgiVGhpcmQgY29tbWl0IikuY2FsbCgpOwogCQl9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9wYWNrL0djQ29tbWl0U2VsZWN0aW9uVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvcGFjay9HY0NvbW1pdFNlbGVjdGlvblRlc3QuamF2YQppbmRleCAxOTBhYzhiLi4wYzA5YWQxIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9wYWNrL0djQ29tbWl0U2VsZWN0aW9uVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL3BhY2svR2NDb21taXRTZWxlY3Rpb25UZXN0LmphdmEKQEAgLTc0LDcgKzc0LDcgQEAgcHJpdmF0ZSB2b2lkIHRlc3RCaXRtYXBTcGFuc05vTWVyZ2VzKGJvb2xlYW4gd2l0aFRhZ3MpIHRocm93cyBFeGNlcHRpb24gewogCiAJCQlnYy5zZXRQYWNrRXhwaXJlQWdlTWlsbGlzKDApOyAvLyBpbW1lZGlhdGVseSBkZWxldGUgb2xkIHBhY2tzCiAJCQlnYy5zZXRFeHBpcmVBZ2VNaWxsaXMoMCk7Ci0JCQlnYy5nYygpOworCQkJZ2MuZ2MoKS5nZXQoKTsKIAkJCWFzc2VydEVxdWFscyhjdXJyZW50Q29tbWl0cyAqIDMsIC8vIGNvbW1pdC90cmVlL29iamVjdAogCQkJCQlnYy5nZXRTdGF0aXN0aWNzKCkubnVtYmVyT2ZQYWNrZWRPYmplY3RzKTsKIAkJCWFzc2VydEVxdWFscyhjdXJyZW50Q29tbWl0cyArICIgY29tbWl0czogIiwgZXhwZWN0ZWRCaXRtYXBDb3VudCwKQEAgLTE3Miw3ICsxNzIsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0Qml0bWFwU3BhbnNXaXRoTWVyZ2VzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAKIAkJCWdjLnNldFBhY2tFeHBpcmVBZ2VNaWxsaXMoMCk7IC8vIGltbWVkaWF0ZWx5IGRlbGV0ZSBvbGQgcGFja3MKIAkJCWdjLnNldEV4cGlyZUFnZU1pbGxpcygwKTsKLQkJCWdjLmdjKCk7CisJCQlnYy5nYygpLmdldCgpOwogCQkJYXNzZXJ0RXF1YWxzKGN1cnJlbnRDb21taXRzICsgIiBjb21taXRzOiAiLCBleHBlY3RlZEJpdG1hcENvdW50LAogCQkJCQlnYy5nZXRTdGF0aXN0aWNzKCkubnVtYmVyT2ZCaXRtYXBzKTsKIAkJfQpAQCAtMjEzLDcgKzIxMyw3IEBAIHB1YmxpYyB2b2lkIHRlc3RCaXRtYXBzRm9yRXhjZXNzaXZlQnJhbmNoZXMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJLy8gRXhjZXNzaXZlIGJyYW5jaCBoaXN0b3J5IHBydW5pbmcsIG9uZSBvbGQgYnJhbmNoLgogCQlnYy5zZXRQYWNrRXhwaXJlQWdlTWlsbGlzKDApOyAvLyBpbW1lZGlhdGVseSBkZWxldGUgb2xkIHBhY2tzCiAJCWdjLnNldEV4cGlyZUFnZU1pbGxpcygwKTsKLQkJZ2MuZ2MoKTsKKwkJZ2MuZ2MoKS5nZXQoKTsKIAkJYXNzZXJ0RXF1YWxzKAogCQkJCWNvbW1pdHNGb3JTcGFyc2VCcmFuY2ggKyBjb21taXRzRm9yRnVsbEJyYW5jaAogCQkJCQkJKyBjb21taXRzRm9yU2hhbGxvd0JyYW5jaGVzLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2gvT3BlblNzaENvbmZpZ0ZpbGVUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaC9PcGVuU3NoQ29uZmlnRmlsZVRlc3QuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMTc0MWI0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3RyYW5zcG9ydC9zc2gvT3BlblNzaENvbmZpZ0ZpbGVUZXN0LmphdmEKQEAgLTAsMCArMSw2MzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMjEgR29vZ2xlIEluYy4gYW5kIG90aGVycworICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KKworcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnRyYW5zcG9ydC5zc2g7CisKK2ltcG9ydCBzdGF0aWMgamF2YS5uaW8uY2hhcnNldC5TdGFuZGFyZENoYXJzZXRzLlVURl84OworaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEFycmF5RXF1YWxzOworaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEVxdWFsczsKK2ltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnROb3ROdWxsOworaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydE5vdFNhbWU7CitpbXBvcnQgc3RhdGljIG9yZy5qdW5pdC5Bc3NlcnQuYXNzZXJ0TnVsbDsKK2ltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRUcnVlOworCitpbXBvcnQgamF2YS5pby5GaWxlOworaW1wb3J0IGphdmEuaW8uRmlsZU91dHB1dFN0cmVhbTsKK2ltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOworaW1wb3J0IGphdmEuaW8uT3V0cHV0U3RyZWFtV3JpdGVyOworaW1wb3J0IGphdmEudGltZS5JbnN0YW50OworaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LlRpbWVVbml0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5qdW5pdC5SZXBvc2l0b3J5VGVzdENhc2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uc3RhbnRzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlNzaENvbmZpZ1N0b3JlLkhvc3RDb25maWc7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuU3NoQ29uc3RhbnRzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5GUzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRmlsZVV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CitpbXBvcnQgb3JnLmp1bml0LkJlZm9yZTsKK2ltcG9ydCBvcmcuanVuaXQuVGVzdDsKKworcHVibGljIGNsYXNzIE9wZW5Tc2hDb25maWdGaWxlVGVzdCBleHRlbmRzIFJlcG9zaXRvcnlUZXN0Q2FzZSB7CisKKwlwcml2YXRlIEZpbGUgaG9tZTsKKworCXByaXZhdGUgRmlsZSBjb25maWdGaWxlOworCisJcHJpdmF0ZSBPcGVuU3NoQ29uZmlnRmlsZSBvc2M7CisKKwlAT3ZlcnJpZGUKKwlAQmVmb3JlCisJcHVibGljIHZvaWQgc2V0VXAoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJc3VwZXIuc2V0VXAoKTsKKworCQlob21lID0gbmV3IEZpbGUodHJhc2gsICJob21lIik7CisJCUZpbGVVdGlscy5ta2Rpcihob21lKTsKKworCQljb25maWdGaWxlID0gbmV3IEZpbGUobmV3IEZpbGUoaG9tZSwgIi5zc2giKSwgQ29uc3RhbnRzLkNPTkZJRyk7CisJCUZpbGVVdGlscy5ta2Rpcihjb25maWdGaWxlLmdldFBhcmVudEZpbGUoKSk7CisKKwkJbW9ja1N5c3RlbVJlYWRlci5zZXRQcm9wZXJ0eShDb25zdGFudHMuT1NfVVNFUl9OQU1FX0tFWSwgImpleF9qdW5pdCIpOworCQltb2NrU3lzdGVtUmVhZGVyLnNldFByb3BlcnR5KCJUU1RfVkFSIiwgIlRFU1QiKTsKKwkJb3NjID0gbmV3IE9wZW5Tc2hDb25maWdGaWxlKGhvbWUsIGNvbmZpZ0ZpbGUsICJqZXhfanVuaXQiKTsKKwl9CisKKwlwcml2YXRlIHZvaWQgY29uZmlnKFN0cmluZyBkYXRhKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQlGUyBmcyA9IEZTLkRFVEVDVEVEOworCQlsb25nIHJlc29sdXRpb24gPSBGUy5nZXRGaWxlU3RvcmVBdHRyaWJ1dGVzKGNvbmZpZ0ZpbGUudG9QYXRoKCkpCisJCQkJLmdldEZzVGltZXN0YW1wUmVzb2x1dGlvbigpLnRvTmFub3MoKTsKKwkJSW5zdGFudCBsYXN0TXRpbWUgPSBmcy5sYXN0TW9kaWZpZWRJbnN0YW50KGNvbmZpZ0ZpbGUpOworCQlkbyB7CisJCQl0cnkgKGZpbmFsIE91dHB1dFN0cmVhbVdyaXRlciBmdyA9IG5ldyBPdXRwdXRTdHJlYW1Xcml0ZXIoCisJCQkJCW5ldyBGaWxlT3V0cHV0U3RyZWFtKGNvbmZpZ0ZpbGUpLCBVVEZfOCkpIHsKKwkJCQlmdy53cml0ZShkYXRhKTsKKwkJCQlUaW1lVW5pdC5OQU5PU0VDT05EUy5zbGVlcChyZXNvbHV0aW9uKTsKKwkJCX0gY2F0Y2ggKEludGVycnVwdGVkRXhjZXB0aW9uIGUpIHsKKwkJCQlUaHJlYWQuaW50ZXJydXB0ZWQoKTsKKwkJCX0KKwkJfSB3aGlsZSAobGFzdE10aW1lLmVxdWFscyhmcy5sYXN0TW9kaWZpZWRJbnN0YW50KGNvbmZpZ0ZpbGUpKSk7CisJfQorCisJcHJpdmF0ZSBIb3N0Q29uZmlnIGxvb2t1cChTdHJpbmcgaG9zdG5hbWUpIHsKKwkJcmV0dXJuIG9zYy5sb29rdXBEZWZhdWx0KGhvc3RuYW1lLCAwLCBudWxsKTsKKwl9CisKKwlwcml2YXRlIHZvaWQgYXNzZXJ0SG9zdChTdHJpbmcgZXhwZWN0ZWQsIEhvc3RDb25maWcgaCkgeworCQlhc3NlcnRFcXVhbHMoZXhwZWN0ZWQsIGguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLkhPU1RfTkFNRSkpOworCX0KKworCXByaXZhdGUgdm9pZCBhc3NlcnRVc2VyKFN0cmluZyBleHBlY3RlZCwgSG9zdENvbmZpZyBoKSB7CisJCWFzc2VydEVxdWFscyhleHBlY3RlZCwgaC5nZXRWYWx1ZShTc2hDb25zdGFudHMuVVNFUikpOworCX0KKworCXByaXZhdGUgdm9pZCBhc3NlcnRQb3J0KGludCBleHBlY3RlZCwgSG9zdENvbmZpZyBoKSB7CisJCWFzc2VydEVxdWFscyhleHBlY3RlZCwKKwkJCQlPcGVuU3NoQ29uZmlnRmlsZS5wb3NpdGl2ZShoLmdldFZhbHVlKFNzaENvbnN0YW50cy5QT1JUKSkpOworCX0KKworCXByaXZhdGUgdm9pZCBhc3NlcnRJZGVudGl0eShGaWxlIGV4cGVjdGVkLCBIb3N0Q29uZmlnIGgpIHsKKwkJU3RyaW5nIGFjdHVhbCA9IGguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLklERU5USVRZX0ZJTEUpOworCQlpZiAoZXhwZWN0ZWQgPT0gbnVsbCkgeworCQkJYXNzZXJ0TnVsbChhY3R1YWwpOworCQl9IGVsc2UgeworCQkJYXNzZXJ0RXF1YWxzKGV4cGVjdGVkLCBuZXcgRmlsZShhY3R1YWwpKTsKKwkJfQorCX0KKworCXByaXZhdGUgdm9pZCBhc3NlcnRBdHRlbXB0cyhpbnQgZXhwZWN0ZWQsIEhvc3RDb25maWcgaCkgeworCQlhc3NlcnRFcXVhbHMoZXhwZWN0ZWQsIE9wZW5Tc2hDb25maWdGaWxlCisJCQkJLnBvc2l0aXZlKGguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLkNPTk5FQ1RJT05fQVRURU1QVFMpKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0Tm9Db25maWcoKSB7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgicmVwby5vci5jeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRIb3N0KCJyZXBvLm9yLmN6IiwgaCk7CisJCWFzc2VydFVzZXIoImpleF9qdW5pdCIsIGgpOworCQlhc3NlcnRQb3J0KDIyLCBoKTsKKwkJYXNzZXJ0QXR0ZW1wdHMoMSwgaCk7CisJCWFzc2VydElkZW50aXR5KG51bGwsIGgpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdFNlcGFyYXRvclBhcnNpbmcoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0XHRmaXJzdFxuIiArCisJCSAgICAgICAiXHRIb3N0TmFtZVx0Zmlyc3QudGxkXG4iICsKKwkJICAgICAgICJcbiIgKworCQkJCSJIb3N0IHNlY29uZFxuIiArCisJCSAgICAgICAiIEhvc3ROYW1lXHRzZWNvbmQudGxkXG4iICsKKwkJICAgICAgICJIb3N0PXRoaXJkXG4iICsKKwkJICAgICAgICJIb3N0TmFtZT10aGlyZC50bGRcblxuXG4iICsKKwkJCQkiXHQgSG9zdCA9IGZvdXJ0aFxuXG5cbiIgKworCQkgICAgICAgIiBcdCBIb3N0TmFtZVx0PWZvdXJ0aC50bGRcbiIgKworCQkgICAgICAgIkhvc3RcdCA9ICAgICBsYXN0XG4iICsKKwkJICAgICAgICJIb3N0TmFtZSAgXHQgICAgbGFzdC50bGQiKTsKKwkJYXNzZXJ0Tm90TnVsbChsb29rdXAoImZpcnN0IikpOworCQlhc3NlcnRIb3N0KCJmaXJzdC50bGQiLCBsb29rdXAoImZpcnN0IikpOworCQlhc3NlcnROb3ROdWxsKGxvb2t1cCgic2Vjb25kIikpOworCQlhc3NlcnRIb3N0KCJzZWNvbmQudGxkIiwgbG9va3VwKCJzZWNvbmQiKSk7CisJCWFzc2VydE5vdE51bGwobG9va3VwKCJ0aGlyZCIpKTsKKwkJYXNzZXJ0SG9zdCgidGhpcmQudGxkIiwgbG9va3VwKCJ0aGlyZCIpKTsKKwkJYXNzZXJ0Tm90TnVsbChsb29rdXAoImZvdXJ0aCIpKTsKKwkJYXNzZXJ0SG9zdCgiZm91cnRoLnRsZCIsIGxvb2t1cCgiZm91cnRoIikpOworCQlhc3NlcnROb3ROdWxsKGxvb2t1cCgibGFzdCIpKTsKKwkJYXNzZXJ0SG9zdCgibGFzdC50bGQiLCBsb29rdXAoImxhc3QiKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0UXVvdGVQYXJzaW5nKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBcImdvb2RcIlxuIiArCisJCQkiIEhvc3ROYW1lPVwiZ29vZC50bGRcIlxuIiArCisJCQkiIFBvcnQ9XCI2MDA3XCJcbiIgKworCQkJIiBVc2VyPVwiZ29vZHVzZXJcIlxuIiArCisJCQkJIkhvc3QgbXVsdGlwbGUgdW5xdW90ZWQgYW5kIFwicXVvdGVkXCIgXCJob3N0c1wiXG4iICsKKwkJCSIgUG9ydD1cIjIyMjJcIlxuIiArCisJCQkJIkhvc3QgXCJzcGFjZWRcIlxuIiArCisJCQkiIyBCYWQgaG9zdCBuYW1lLCBidXQgdGVzdGluZyBwcmVzZXJ2YXRpb24gb2Ygc3BhY2VzXG4iICsKKwkJCSIgSG9zdE5hbWU9XCIgc3BhY2VkXHR0bGQgXCJcbiIgKworCQkJIiMgTWlzYmFsYW5jZWQgcXVvdGVzXG4iICsKKwkJCQkiSG9zdCBcImJhZFwiXG4iICsKKwkJCSIjIE9wZW5TU0ggZG9lc24ndCBhbGxvdyB0aGlzIGJ1dCAuLi5cbiIgKworCQkJIiBIb3N0TmFtZT1iYWQudGxkXCJcbiIpOworCQlhc3NlcnRIb3N0KCJnb29kLnRsZCIsIGxvb2t1cCgiZ29vZCIpKTsKKwkJYXNzZXJ0VXNlcigiZ29vZHVzZXIiLCBsb29rdXAoImdvb2QiKSk7CisJCWFzc2VydFBvcnQoNjAwNywgbG9va3VwKCJnb29kIikpOworCQlhc3NlcnRQb3J0KDIyMjIsIGxvb2t1cCgibXVsdGlwbGUiKSk7CisJCWFzc2VydFBvcnQoMjIyMiwgbG9va3VwKCJxdW90ZWQiKSk7CisJCWFzc2VydFBvcnQoMjIyMiwgbG9va3VwKCJhbmQiKSk7CisJCWFzc2VydFBvcnQoMjIyMiwgbG9va3VwKCJ1bnF1b3RlZCIpKTsKKwkJYXNzZXJ0UG9ydCgyMjIyLCBsb29rdXAoImhvc3RzIikpOworCQlhc3NlcnRIb3N0KCIgc3BhY2VkXHR0bGQgIiwgbG9va3VwKCJzcGFjZWQiKSk7CisJCWFzc2VydEhvc3QoImJhZC50bGQiLCBsb29rdXAoImJhZCIpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RBZHZhbmNlZFBhcnNpbmcoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJLy8gRXNjYXBlZCBxdW90ZXMsIGFuZCBsaW5lIGNvbW1lbnRzCisJCWNvbmZpZygiSG9zdCBmb29cbiIKKwkJCQkrICIgSG9zdE5hbWU9XCJmb29cXFwiZC50bGRcIlxuIgorCQkJCSsgIiBVc2VyPSBzb21lb25lI2Zvb1xuIgorCQkJCSsgIkhvc3QgYmFyXG4iCisJCQkJKyAiIFVzZXIgJyBzb21lIG9uZSN0d28nICMgQ29tbWVudFxuIgorCQkJCSsgIiBHbG9iYWxLbm93bkhvc3RzRmlsZSAnL2EgZm9sZGVyL3dpdGggc3BhY2VzL2hvc3RzJyAnL290aGVyL21vcmUgaG9zdHMnICMgQ29tbWVudFxuIgorCQkJCSsgIkhvc3QgZm9vYmFyXG4iCisJCQkJKyAiIFVzZXIgYVxcIHVcXCB0aG9yXG4iCisJCQkJKyAiSG9zdCBiYWNrc2xhc2hcbiIKKwkJCQkrICIgVXNlciBzb21lXFxvbmVcXFxcXFwgZm9vXG4iCisJCQkJKyAiSG9zdCBiYWNrc2xhc2hfYmVmb3JlX3F1b3RlXG4iCisJCQkJKyAiIFVzZXIgXFxcInNvbWVvbmUjXCJlbCNzZVwiICNDb21tZW50XG4iCisJCQkJKyAiSG9zdCBiYWNrc2xhc2hfaW5fcXVvdGVcbiIKKwkJCQkrICIgVXNlciAnc29tZVxcb25lXFxcXFxcIGZvbydcbiIpOworCQlhc3NlcnRIb3N0KCJmb29cImQudGxkIiwgbG9va3VwKCJmb28iKSk7CisJCWFzc2VydFVzZXIoInNvbWVvbmUjZm9vIiwgbG9va3VwKCJmb28iKSk7CisJCUhvc3RDb25maWcgYyA9IGxvb2t1cCgiYmFyIik7CisJCWFzc2VydFVzZXIoIiBzb21lIG9uZSN0d28iLCBjKTsKKwkJYXNzZXJ0QXJyYXlFcXVhbHMoCisJCQkJbmV3IE9iamVjdFtdIHsgIi9hIGZvbGRlci93aXRoIHNwYWNlcy9ob3N0cyIsCisJCQkJCQkiL290aGVyL21vcmUgaG9zdHMiIH0sCisJCQkJYy5nZXRWYWx1ZXMoIkdsb2JhbEtub3duSG9zdHNGaWxlIikudG9BcnJheSgpKTsKKwkJYXNzZXJ0VXNlcigiYSB1IHRob3IiLCBsb29rdXAoImZvb2JhciIpKTsKKwkJYXNzZXJ0VXNlcigic29tZVxcb25lXFwgZm9vIiwgbG9va3VwKCJiYWNrc2xhc2giKSk7CisJCWFzc2VydFVzZXIoIlwic29tZW9uZSNlbCNzZSIsIGxvb2t1cCgiYmFja3NsYXNoX2JlZm9yZV9xdW90ZSIpKTsKKwkJYXNzZXJ0VXNlcigic29tZVxcb25lXFxcXCBmb28iLCBsb29rdXAoImJhY2tzbGFzaF9pbl9xdW90ZSIpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RDYXNlSW5zZW5zaXRpdmVLZXlMb29rdXAoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IG9yY3pcbiIgKyAiUG9ydCAyOTQxOFxuIgorCQkJCSsgIlx0SG9zdE5hbWUgcmVwby5vci5jelxuU3RyaWN0SG9zdEtleUNoZWNraW5nIHllc1xuIik7CisJCWZpbmFsIEhvc3RDb25maWcgYyA9IGxvb2t1cCgib3JjeiIpOworCQlTdHJpbmcgZXhhY3RDYXNlID0gYy5nZXRWYWx1ZSgiU3RyaWN0SG9zdEtleUNoZWNraW5nIik7CisJCWFzc2VydEVxdWFscygieWVzIiwgZXhhY3RDYXNlKTsKKwkJYXNzZXJ0RXF1YWxzKGV4YWN0Q2FzZSwgYy5nZXRWYWx1ZSgic3RyaWN0aG9zdGtleWNoZWNraW5nIikpOworCQlhc3NlcnRFcXVhbHMoZXhhY3RDYXNlLCBjLmdldFZhbHVlKCJTVFJJQ1RIT1NUS0VZQ0hFQ0tJTkciKSk7CisJCWFzc2VydEVxdWFscyhleGFjdENhc2UsIGMuZ2V0VmFsdWUoInNUckljVGhvc3RLRVljaGVja0lORyIpKTsKKwkJYXNzZXJ0TnVsbChjLmdldFZhbHVlKCJzVHJJY1Rob3N0S0VZY2hlY2tJTiIpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RBbGlhc19Eb2VzTm90TWF0Y2goKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IG9yY3pcbiIgKyAiUG9ydCAyOTQxOFxuIgorCQkJCSsgIlx0SG9zdE5hbWUgcmVwby5vci5jelxuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgicmVwby5vci5jeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRIb3N0KCJyZXBvLm9yLmN6IiwgaCk7CisJCWFzc2VydFVzZXIoImpleF9qdW5pdCIsIGgpOworCQlhc3NlcnRQb3J0KDIyLCBoKTsKKwkJYXNzZXJ0SWRlbnRpdHkobnVsbCwgaCk7CisJCWZpbmFsIEhvc3RDb25maWcgaDIgPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0SG9zdCgicmVwby5vci5jeiIsIGgpOworCQlhc3NlcnRVc2VyKCJqZXhfanVuaXQiLCBoKTsKKwkJYXNzZXJ0UG9ydCgyOTQxOCwgaDIpOworCQlhc3NlcnRJZGVudGl0eShudWxsLCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RBbGlhc19PcHRpb25zU2V0KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBvcmN6XG4iICsgIlx0SG9zdE5hbWUgcmVwby5vci5jelxuIiArICJcdFBvcnQgMjIyMlxuIgorCQkJCSsgIlx0VXNlciBqZXhcbiIgKyAiXHRJZGVudGl0eUZpbGUgLnNzaC9pZF9qZXhcbiIKKwkJCQkrICJcdEZvcndhcmRYMTEgbm9cbiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0SG9zdCgicmVwby5vci5jeiIsIGgpOworCQlhc3NlcnRVc2VyKCJqZXgiLCBoKTsKKwkJYXNzZXJ0UG9ydCgyMjIyLCBoKTsKKwkJYXNzZXJ0SWRlbnRpdHkobmV3IEZpbGUoaG9tZSwgIi5zc2gvaWRfamV4IiksIGgpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEFsaWFzX09wdGlvbnNLZXl3b3JkQ2FzZUluc2Vuc2l0aXZlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiaE9zVCBvcmN6XG4iICsgIlx0aE9zVG5BbUUgcmVwby5vci5jelxuIiArICJcdFBPUlQgMjIyMlxuIgorCQkJCSsgIlx0dXNlciBqZXhcbiIgKyAiXHRpZGVudGl0eWZpbGUgLnNzaC9pZF9qZXhcbiIKKwkJCQkrICJcdEZvcndhcmRYMTEgbm9cbiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0SG9zdCgicmVwby5vci5jeiIsIGgpOworCQlhc3NlcnRVc2VyKCJqZXgiLCBoKTsKKwkJYXNzZXJ0UG9ydCgyMjIyLCBoKTsKKwkJYXNzZXJ0SWRlbnRpdHkobmV3IEZpbGUoaG9tZSwgIi5zc2gvaWRfamV4IiksIGgpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEFsaWFzX09wdGlvbnNJbmhlcml0KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBvcmN6XG4iICsgIlx0SG9zdE5hbWUgcmVwby5vci5jelxuIiArICJcbiIgKyAiSG9zdCAqXG4iCisJCQkJKyAiXHRIb3N0TmFtZSBub3QuYS5ob3N0LmV4YW1wbGUuY29tXG4iICsgIlx0UG9ydCAyMjIyXG4iCisJCQkJKyAiXHRVc2VyIGpleFxuIiArICJcdElkZW50aXR5RmlsZSAuc3NoL2lkX2pleFxuIgorCQkJCSsgIlx0Rm9yd2FyZFgxMSBub1xuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRIb3N0KCJyZXBvLm9yLmN6IiwgaCk7CisJCWFzc2VydFVzZXIoImpleCIsIGgpOworCQlhc3NlcnRQb3J0KDIyMjIsIGgpOworCQlhc3NlcnRJZGVudGl0eShuZXcgRmlsZShob21lLCAiLnNzaC9pZF9qZXgiKSwgaCk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0QWxpYXNfUHJlZmVycmVkQXV0aGVudGljYXRpb25zRGVmYXVsdCgpIHRocm93cyBFeGNlcHRpb24geworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0TnVsbChoLmdldFZhbHVlKFNzaENvbnN0YW50cy5QUkVGRVJSRURfQVVUSEVOVElDQVRJT05TKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0QWxpYXNfUHJlZmVycmVkQXV0aGVudGljYXRpb25zKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBvcmN6XG4iICsgIlx0UHJlZmVycmVkQXV0aGVudGljYXRpb25zIHB1YmxpY2tleVxuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRFcXVhbHMoInB1YmxpY2tleSIsCisJCQkJaC5nZXRWYWx1ZShTc2hDb25zdGFudHMuUFJFRkVSUkVEX0FVVEhFTlRJQ0FUSU9OUykpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEFsaWFzX0luaGVyaXRQcmVmZXJyZWRBdXRoZW50aWNhdGlvbnMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IG9yY3pcbiIgKyAiXHRIb3N0TmFtZSByZXBvLm9yLmN6XG4iICsgIlxuIiArICJIb3N0ICpcbiIKKwkJCQkrICJcdFByZWZlcnJlZEF1dGhlbnRpY2F0aW9ucyAncHVibGlja2V5LCBob3N0YmFzZWQnXG4iKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoID0gbG9va3VwKCJvcmN6Iik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydEVxdWFscygicHVibGlja2V5LGhvc3RiYXNlZCIsCisJCQkJaC5nZXRWYWx1ZShTc2hDb25zdGFudHMuUFJFRkVSUkVEX0FVVEhFTlRJQ0FUSU9OUykpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEFsaWFzX0JhdGNoTW9kZURlZmF1bHQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJZmluYWwgSG9zdENvbmZpZyBoID0gbG9va3VwKCJvcmN6Iik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydE51bGwoaC5nZXRWYWx1ZShTc2hDb25zdGFudHMuQkFUQ0hfTU9ERSkpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEFsaWFzX0JhdGNoTW9kZVllcygpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Qgb3JjelxuIiArICJcdEJhdGNoTW9kZSB5ZXNcbiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0VHJ1ZShPcGVuU3NoQ29uZmlnRmlsZS5mbGFnKGguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLkJBVENIX01PREUpKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0QWxpYXNfSW5oZXJpdEJhdGNoTW9kZSgpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Qgb3JjelxuIiArICJcdEhvc3ROYW1lIHJlcG8ub3IuY3pcbiIgKyAiXG4iICsgIkhvc3QgKlxuIgorCQkJCSsgIlx0QmF0Y2hNb2RlIHllc1xuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRUcnVlKE9wZW5Tc2hDb25maWdGaWxlLmZsYWcoaC5nZXRWYWx1ZShTc2hDb25zdGFudHMuQkFUQ0hfTU9ERSkpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RBbGlhc19Db25uZWN0aW9uQXR0ZW1wdHNEZWZhdWx0KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRBdHRlbXB0cygxLCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RBbGlhc19Db25uZWN0aW9uQXR0ZW1wdHMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IG9yY3pcbiIgKyAiXHRDb25uZWN0aW9uQXR0ZW1wdHMgNVxuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRBdHRlbXB0cyg1LCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RBbGlhc19pbnZhbGlkQ29ubmVjdGlvbkF0dGVtcHRzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBvcmN6XG4iICsgIlx0Q29ubmVjdGlvbkF0dGVtcHRzIC0xXG4iKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoID0gbG9va3VwKCJvcmN6Iik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydEF0dGVtcHRzKDEsIGgpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEFsaWFzX2JhZENvbm5lY3Rpb25BdHRlbXB0cygpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Qgb3JjelxuIiArICJcdENvbm5lY3Rpb25BdHRlbXB0cyB4eHhcbiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0QXR0ZW1wdHMoMSwgaCk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0RGVmYXVsdEJsb2NrKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiQ29ubmVjdGlvbkF0dGVtcHRzIDVcblxuSG9zdCBvcmN6XG5Db25uZWN0aW9uQXR0ZW1wdHMgM1xuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRBdHRlbXB0cyg1LCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RIb3N0Q2FzZUluc2Vuc2l0aXZlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiaE9zVCBvcmN6XG5Db25uZWN0aW9uQXR0ZW1wdHMgM1xuIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRBdHRlbXB0cygzLCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RMaXN0VmFsdWVTaW5nbGUoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IG9yY3pcblVzZXJLbm93bkhvc3RzRmlsZSAvZm9vL2JhclxuIik7CisJCWZpbmFsIEhvc3RDb25maWcgYyA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGMpOworCQlhc3NlcnRFcXVhbHMoIi9mb28vYmFyIiwgYy5nZXRWYWx1ZSgiVXNlcktub3duSG9zdHNGaWxlIikpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdExpc3RWYWx1ZU11bHRpcGxlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCS8vIFRpbGRlIGV4cGFuc2lvbiBvY2N1cnMgd2l0aGluIHRoZSBwYXJzZXIKKwkJY29uZmlnKCJIb3N0IG9yY3pcblVzZXJLbm93bkhvc3RzRmlsZSBcIn4vZm9vL2JhIHpcIiAvZm9vL2JhciBcbiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGMgPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChjKTsKKwkJYXNzZXJ0QXJyYXlFcXVhbHMobmV3IE9iamVjdFtdIHsgbmV3IEZpbGUoaG9tZSwgImZvby9iYSB6IikuZ2V0UGF0aCgpLAorCQkJCSIvZm9vL2JhciIgfSwKKwkJCQljLmdldFZhbHVlcygiVXNlcktub3duSG9zdHNGaWxlIikudG9BcnJheSgpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RSZXBlYXRlZExvb2t1cHNXaXRoTW9kaWZpY2F0aW9uKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBvcmN6XG4iICsgIlx0Q29ubmVjdGlvbkF0dGVtcHRzIC0xXG4iKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoMSA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgxKTsKKwkJYXNzZXJ0QXR0ZW1wdHMoMSwgaDEpOworCQljb25maWcoIkhvc3Qgb3JjelxuIiArICJcdENvbm5lY3Rpb25BdHRlbXB0cyA1XG4iKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoMiA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgyKTsKKwkJYXNzZXJ0Tm90U2FtZShoMSwgaDIpOworCQlhc3NlcnRBdHRlbXB0cyg1LCBoMik7CisJCWFzc2VydEF0dGVtcHRzKDEsIGgxKTsKKwkJYXNzZXJ0Tm90U2FtZShoMSwgaDIpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdElkZW50aXR5RmlsZSgpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Qgb3JjelxuSWRlbnRpdHlGaWxlIFwifi9mb28vYmEgelwiXG5JZGVudGl0eUZpbGUgL2Zvby9iYXIiKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoID0gbG9va3VwKCJvcmN6Iik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCS8vIERvZXMgdGlsZGUgcmVwbGFjZW1lbnQKKwkJYXNzZXJ0QXJyYXlFcXVhbHMobmV3IE9iamVjdFtdIHsgbmV3IEZpbGUoaG9tZSwgImZvby9iYSB6IikuZ2V0UGF0aCgpLAorCQkJCSIvZm9vL2JhciIgfSwKKwkJCQloLmdldFZhbHVlcyhTc2hDb25zdGFudHMuSURFTlRJVFlfRklMRSkudG9BcnJheSgpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RNdWx0aUlkZW50aXR5RmlsZSgpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIklkZW50aXR5RmlsZSBcIn4vZm9vL2JhIHpcIlxuSG9zdCBvcmN6XG5JZGVudGl0eUZpbGUgL2Zvby9iYXJcbkhPU1QgKlxuSWRlbnRpdHlGaWxlIC9mb28vYmF6Iik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRBcnJheUVxdWFscyhuZXcgT2JqZWN0W10geyBuZXcgRmlsZShob21lLCAiZm9vL2JhIHoiKS5nZXRQYXRoKCksCisJCQkJIi9mb28vYmFyIiwgIi9mb28vYmF6IiB9LAorCQkJCWguZ2V0VmFsdWVzKFNzaENvbnN0YW50cy5JREVOVElUWV9GSUxFKS50b0FycmF5KCkpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdE5lZ2F0ZWRQYXR0ZXJuKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCByZXBvLm9yLmN6XG5JZGVudGl0eUZpbGUgfi9mb28vYmFyXG5IT1NUICEqLm9yLmN6XG5JZGVudGl0eUZpbGUgL2Zvby9iYXoiKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoID0gbG9va3VwKCJyZXBvLm9yLmN6Iik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydElkZW50aXR5KG5ldyBGaWxlKGhvbWUsICJmb28vYmFyIiksIGgpOworCQlhc3NlcnRBcnJheUVxdWFscyhuZXcgT2JqZWN0W10geyBuZXcgRmlsZShob21lLCAiZm9vL2JhciIpLmdldFBhdGgoKSB9LAorCQkJCWguZ2V0VmFsdWVzKFNzaENvbnN0YW50cy5JREVOVElUWV9GSUxFKS50b0FycmF5KCkpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdFBhdHRlcm4oKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IHJlcG8ub3IuY3pcbklkZW50aXR5RmlsZSB+L2Zvby9iYXJcbkhPU1QgKi5vci5jelxuSWRlbnRpdHlGaWxlIC9mb28vYmF6Iik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgicmVwby5vci5jeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRJZGVudGl0eShuZXcgRmlsZShob21lLCAiZm9vL2JhciIpLCBoKTsKKwkJYXNzZXJ0QXJyYXlFcXVhbHMobmV3IE9iamVjdFtdIHsgbmV3IEZpbGUoaG9tZSwgImZvby9iYXIiKS5nZXRQYXRoKCksCisJCQkJIi9mb28vYmF6IiB9LAorCQkJCWguZ2V0VmFsdWVzKFNzaENvbnN0YW50cy5JREVOVElUWV9GSUxFKS50b0FycmF5KCkpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdE11bHRpSG9zdCgpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Qgb3JjeiAqLm9yLmN6XG5JZGVudGl0eUZpbGUgfi9mb28vYmFyXG5IT1NUICoub3IuY3pcbklkZW50aXR5RmlsZSAvZm9vL2JheiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGgxID0gbG9va3VwKCJyZXBvLm9yLmN6Iik7CisJCWFzc2VydE5vdE51bGwoaDEpOworCQlhc3NlcnRJZGVudGl0eShuZXcgRmlsZShob21lLCAiZm9vL2JhciIpLCBoMSk7CisJCWFzc2VydEFycmF5RXF1YWxzKG5ldyBPYmplY3RbXSB7IG5ldyBGaWxlKGhvbWUsICJmb28vYmFyIikuZ2V0UGF0aCgpLAorCQkJCSIvZm9vL2JheiIgfSwKKwkJCQloMS5nZXRWYWx1ZXMoU3NoQ29uc3RhbnRzLklERU5USVRZX0ZJTEUpLnRvQXJyYXkoKSk7CisJCWZpbmFsIEhvc3RDb25maWcgaDIgPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoMik7CisJCWFzc2VydElkZW50aXR5KG5ldyBGaWxlKGhvbWUsICJmb28vYmFyIiksIGgyKTsKKwkJYXNzZXJ0QXJyYXlFcXVhbHMobmV3IE9iamVjdFtdIHsgbmV3IEZpbGUoaG9tZSwgImZvby9iYXIiKS5nZXRQYXRoKCkgfSwKKwkJCQloMi5nZXRWYWx1ZXMoU3NoQ29uc3RhbnRzLklERU5USVRZX0ZJTEUpLnRvQXJyYXkoKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0RXF1YWxzU2lnbigpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Q9b3JjelxuXHRDb25uZWN0aW9uQXR0ZW1wdHMgPSA1XG5cdFVzZXI9XHQgIGZvb2Jhclx0XG4iKTsKKwkJZmluYWwgSG9zdENvbmZpZyBoID0gbG9va3VwKCJvcmN6Iik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydEF0dGVtcHRzKDUsIGgpOworCQlhc3NlcnRVc2VyKCJmb29iYXIiLCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RNaXNzaW5nQXJndW1lbnQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0PW9yY3pcblx0U2VuZEVudlxuSWRlbnRpdHlGaWxlXHRcbkZvcndhcmRYMTFcblx0VXNlcj1cdCAgZm9vYmFyXHRcbiIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0VXNlcigiZm9vYmFyIiwgaCk7CisJCWFzc2VydEVxdWFscygiW10iLCBoLmdldFZhbHVlcygiU2VuZEVudiIpLnRvU3RyaW5nKCkpOworCQlhc3NlcnRJZGVudGl0eShudWxsLCBoKTsKKwkJYXNzZXJ0TnVsbChoLmdldFZhbHVlKCJGb3J3YXJkWDExIikpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEhvbWVEaXJVc2VyUmVwbGFjZW1lbnQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0PW9yY3pcblx0SWRlbnRpdHlGaWxlICVkLy5zc2gvJXVfaWRfZHNhIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRJZGVudGl0eShuZXcgRmlsZShuZXcgRmlsZShob21lLCAiLnNzaCIpLCAiamV4X2p1bml0X2lkX2RzYSIpLCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RIb3N0bmFtZVJlcGxhY2VtZW50KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdD1vcmN6XG5Ib3N0ICouKlxuXHRIb3N0bmFtZSAlaFxuSG9zdCAqXG5cdEhvc3RuYW1lICVoLmV4YW1wbGUub3JnIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRIb3N0KCJvcmN6LmV4YW1wbGUub3JnIiwgaCk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0UmVtb3RlVXNlclJlcGxhY2VtZW50KCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdD1vcmN6XG5cdFVzZXIgZm9vXG4iICsgIkhvc3QgKi4qXG5cdEhvc3RuYW1lICVoXG4iCisJCQkJKyAiSG9zdCAqXG5cdEhvc3RuYW1lICVoLmV4JSUyMGFtcGxlLm9yZ1xuXHRJZGVudGl0eUZpbGUgfi8uc3NoLyVoXyVyX2lkX2RzYSIpOworCQlmaW5hbCBIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0SWRlbnRpdHkoCisJCQkJbmV3IEZpbGUobmV3IEZpbGUoaG9tZSwgIi5zc2giKSwKKwkJCQkJCSJvcmN6LmV4JTIwYW1wbGUub3JnX2Zvb19pZF9kc2EiKSwKKwkJCQloKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RMb2NhbGhvc3RGUUROUmVwbGFjZW1lbnQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJU3RyaW5nIGxvY2FsaG9zdCA9IFN5c3RlbVJlYWRlci5nZXRJbnN0YW5jZSgpLmdldEhvc3RuYW1lKCk7CisJCWNvbmZpZygiSG9zdD1vcmN6XG5cdElkZW50aXR5RmlsZSB+Ly5zc2gvJWxfaWRfZHNhIik7CisJCWZpbmFsIEhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRJZGVudGl0eSgKKwkJCQluZXcgRmlsZShuZXcgRmlsZShob21lLCAiLnNzaCIpLCBsb2NhbGhvc3QgKyAiX2lkX2RzYSIpLAorCQkJCWgpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdFB1YktleUFjY2VwdGVkQWxnb3JpdGhtcygpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3Q9b3JjelxuXHRQdWJrZXlBY2NlcHRlZEFsZ29yaXRobXMgXnNzaC1yc2EiKTsKKwkJSG9zdENvbmZpZyBoID0gbG9va3VwKCJvcmN6Iik7CisJCWFzc2VydEVxdWFscygiXnNzaC1yc2EiLAorCQkJCWguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLlBVQktFWV9BQ0NFUFRFRF9BTEdPUklUSE1TKSk7CisJCWFzc2VydEVxdWFscygiXnNzaC1yc2EiLCBoLmdldFZhbHVlKCJQdWJrZXlBY2NlcHRlZEtleVR5cGVzIikpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdFB1YktleUFjY2VwdGVkS2V5VHlwZXMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0PW9yY3pcblx0UHVia2V5QWNjZXB0ZWRLZXlUeXBlcyBec3NoLXJzYSIpOworCQlIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0RXF1YWxzKCJec3NoLXJzYSIsCisJCQkJaC5nZXRWYWx1ZShTc2hDb25zdGFudHMuUFVCS0VZX0FDQ0VQVEVEX0FMR09SSVRITVMpKTsKKwkJYXNzZXJ0RXF1YWxzKCJec3NoLXJzYSIsIGguZ2V0VmFsdWUoIlB1YmtleUFjY2VwdGVkS2V5VHlwZXMiKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0RW9sQ29tbWVudHMoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCIjQ29tbWVudFxuSG9zdD1vcmN6ICNDb21tZW50XG5cdFB1YmtleUFjY2VwdGVkQWxnb3JpdGhtcyBec3NoLXJzYSAjIENvbW1lbnRcbiNDb21tZW50Iik7CisJCUhvc3RDb25maWcgaCA9IGxvb2t1cCgib3JjeiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRFcXVhbHMoIl5zc2gtcnNhIiwKKwkJCQloLmdldFZhbHVlKFNzaENvbnN0YW50cy5QVUJLRVlfQUNDRVBURURfQUxHT1JJVEhNUykpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdEVuVmFyU3Vic3RpdHV0aW9uKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBvcmN6XG5JZGVudGl0eUZpbGUgL3RtcC8ke1RTVF9WQVJ9XG4iCisJCQkJKyAiQ2VydGlmaWNhdGVGaWxlIC90bXAvJHt9L2Zvb1xuVXNlciAke1RTVF9WQVJ9XG5JZGVudGl0eUFnZW50IC90bXAvJHtUU1RfVkFSL2JhciIpOworCQlIb3N0Q29uZmlnIGggPSBsb29rdXAoIm9yY3oiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0RXF1YWxzKCIvdG1wL1RFU1QiLAorCQkJCWguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLklERU5USVRZX0ZJTEUpKTsKKwkJLy8gTm8gdmFyaWFibGUgbmFtZQorCQlhc3NlcnRFcXVhbHMoIi90bXAvJHt9L2ZvbyIsIGguZ2V0VmFsdWUoU3NoQ29uc3RhbnRzLkNFUlRJRklDQVRFX0ZJTEUpKTsKKwkJLy8gVXNlciBkb2Vzbid0IGdldCBlbnYgdmFyIHN1YnN0aXR1dGlvbjoKKwkJYXNzZXJ0VXNlcigiJHtUU1RfVkFSfSIsIGgpOworCQkvLyBVbnRlcm1pbmF0ZWQ6CisJCWFzc2VydEVxdWFscygiL3RtcC8ke1RTVF9WQVIvYmFyIiwKKwkJCQloLmdldFZhbHVlKFNzaENvbnN0YW50cy5JREVOVElUWV9BR0VOVCkpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdE5lZ2F0aXZlTWF0Y2goKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IGZvby5iYXIgIWZvb2Jhci5iYXogKi5iYXpcbiIgKyAiUG9ydCAyOTQxOFxuIik7CisJCUhvc3RDb25maWcgaCA9IGxvb2t1cCgiZm9vLmJhciIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRQb3J0KDI5NDE4LCBoKTsKKwkJaCA9IGxvb2t1cCgiZm9vYmFyLmJheiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRQb3J0KDIyLCBoKTsKKwkJaCA9IGxvb2t1cCgiZm9vLmJheiIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRQb3J0KDI5NDE4LCBoKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3ROZWdhdGl2ZU1hdGNoMigpIHRocm93cyBFeGNlcHRpb24geworCQkvLyBOZWdhdGl2ZSBtYXRjaCBhZnRlciB0aGUgcG9zaXRpdmUgbWF0Y2guCisJCWNvbmZpZygiSG9zdCBmb28uYmFyICouYmF6ICFmb29iYXIuYmF6XG4iICsgIlBvcnQgMjk0MThcbiIpOworCQlIb3N0Q29uZmlnIGggPSBsb29rdXAoImZvby5iYXIiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0UG9ydCgyOTQxOCwgaCk7CisJCWggPSBsb29rdXAoImZvb2Jhci5iYXoiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0UG9ydCgyMiwgaCk7CisJCWggPSBsb29rdXAoImZvby5iYXoiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0UG9ydCgyOTQxOCwgaCk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0Tm9NYXRjaCgpIHRocm93cyBFeGNlcHRpb24geworCQljb25maWcoIkhvc3QgIWhvc3QxICFob3N0MlxuIiArICJQb3J0IDI5NDE4XG4iKTsKKwkJSG9zdENvbmZpZyBoID0gbG9va3VwKCJob3N0MSIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRQb3J0KDIyLCBoKTsKKwkJaCA9IGxvb2t1cCgiaG9zdDIiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0UG9ydCgyMiwgaCk7CisJCWggPSBsb29rdXAoImhvc3QzIik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydFBvcnQoMjIsIGgpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdE11bHRpcGxlTWF0Y2goKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY29uZmlnKCJIb3N0IGZvby5iYXJcblBvcnQgMjk0MThcbklkZW50aXR5RmlsZSAvZm9vXG5cbiIKKwkJCQkrICJIb3N0ICouYmFyXG5Qb3J0IDIyXG5JZGVudGl0eUZpbGUgL2JhclxuIgorCQkJCSsgIkhvc3QgZm9vLmJhclxuUG9ydCA0N1xuSWRlbnRpdHlGaWxlIC9iYXpcbiIpOworCQlIb3N0Q29uZmlnIGggPSBsb29rdXAoImZvby5iYXIiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0UG9ydCgyOTQxOCwgaCk7CisJCWFzc2VydEFycmF5RXF1YWxzKG5ldyBPYmplY3RbXSB7ICIvZm9vIiwgIi9iYXIiLCAiL2JheiIgfSwKKwkJCQloLmdldFZhbHVlcyhTc2hDb25zdGFudHMuSURFTlRJVFlfRklMRSkudG9BcnJheSgpKTsKKwl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RXaGl0ZXNwYWNlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCWNvbmZpZygiSG9zdCBmb28gXHRiYXIgICBiYXpcblBvcnQgMjk0MThcbiIpOworCQlIb3N0Q29uZmlnIGggPSBsb29rdXAoImZvbyIpOworCQlhc3NlcnROb3ROdWxsKGgpOworCQlhc3NlcnRQb3J0KDI5NDE4LCBoKTsKKwkJaCA9IGxvb2t1cCgiYmFyIik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydFBvcnQoMjk0MTgsIGgpOworCQloID0gbG9va3VwKCJiYXoiKTsKKwkJYXNzZXJ0Tm90TnVsbChoKTsKKwkJYXNzZXJ0UG9ydCgyOTQxOCwgaCk7CisJCWggPSBsb29rdXAoIlx0YmFyIik7CisJCWFzc2VydE5vdE51bGwoaCk7CisJCWFzc2VydFBvcnQoMjIsIGgpOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9saWIvQ29tbWl0VGVtcGxhdGVDb25maWdUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvbGliL0NvbW1pdFRlbXBsYXRlQ29uZmlnVGVzdC5qYXZhCmluZGV4IGVhZWJkNTcuLjZkYmUzMGEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9saWIvQ29tbWl0VGVtcGxhdGVDb25maWdUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db21taXRUZW1wbGF0ZUNvbmZpZ1Rlc3QuamF2YQpAQCAtMTcsNiArMTcsNyBAQAogCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuQ29uZmlnSW52YWxpZEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LkpHaXRUZXN0VXRpbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZS5GaWxlUmVwb3NpdG9yeUJ1aWxkZXI7CiBpbXBvcnQgb3JnLmp1bml0LlJ1bGU7CiBpbXBvcnQgb3JnLmp1bml0LlRlc3Q7CiBpbXBvcnQgb3JnLmp1bml0LnJ1bGVzLlRlbXBvcmFyeUZvbGRlcjsKQEAgLTM2LDYgKzM3LDggQEAgcHVibGljIHZvaWQgdGVzdENvbW1pdFRlbXBsYXRlUGF0aEluSG9tZURpcmVjb3J5KCkKIAkJCXRocm93cyBDb25maWdJbnZhbGlkRXhjZXB0aW9uLCBJT0V4Y2VwdGlvbiB7CiAJCUNvbmZpZyBjb25maWcgPSBuZXcgQ29uZmlnKG51bGwpOwogCQlGaWxlIHRlbXBGaWxlID0gdG1wLm5ld0ZpbGUoInRlc3RDb21taXRUZW1wbGF0ZS0iKTsKKwkJRmlsZSB3b3JrVHJlZSA9IHRtcC5uZXdGb2xkZXIoImR1bW15LXdvcmt0cmVlIik7CisJCVJlcG9zaXRvcnkgcmVwbyA9IEZpbGVSZXBvc2l0b3J5QnVpbGRlci5jcmVhdGUod29ya1RyZWUpOwogCQlTdHJpbmcgdGVtcGxhdGVDb250ZW50ID0gImNvbnRlbnQgb2YgdGhlIHRlbXBsYXRlIjsKIAkJSkdpdFRlc3RVdGlsLndyaXRlKHRlbXBGaWxlLCB0ZW1wbGF0ZUNvbnRlbnQpOwogCQkvLyBwcm9wZXIgZXZhbHVhdGlvbiBvZiB0aGUgfi8gZGlyZWN0b3J5CkBAIC01Miw2ICs1NSw2IEBAIHB1YmxpYyB2b2lkIHRlc3RDb21taXRUZW1wbGF0ZVBhdGhJbkhvbWVEaXJlY29yeSgpCiAJCQkJLmdldENvbW1pdFRlbXBsYXRlUGF0aCgpOwogCQlhc3NlcnRFcXVhbHMoZXhwZWN0ZWRUZW1wbGF0ZVBhdGgsIHRlbXBsYXRlUGF0aCk7CiAJCWFzc2VydEVxdWFscyh0ZW1wbGF0ZUNvbnRlbnQsCi0JCQkJY29uZmlnLmdldChDb21taXRDb25maWcuS0VZKS5nZXRDb21taXRUZW1wbGF0ZUNvbnRlbnQoKSk7CisJCQkJY29uZmlnLmdldChDb21taXRDb25maWcuS0VZKS5nZXRDb21taXRUZW1wbGF0ZUNvbnRlbnQocmVwbykpOwogCX0KIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9saWIvQ29uZmlnVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db25maWdUZXN0LmphdmEKaW5kZXggMWIwM2ZiNy4uOWI4MmMyYSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db25maWdUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db25maWdUZXN0LmphdmEKQEAgLTU1LDYgKzU1LDcgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lk1vY2tTeXN0ZW1SZWFkZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5tZXJnZS5NZXJnZUNvbmZpZzsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UuZmlsZS5GaWxlQmFzZWRDb25maWc7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGUuRmlsZVJlcG9zaXRvcnlCdWlsZGVyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlJlZlNwZWM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CkBAIC0xNDcxLDE0ICsxNDcyLDE3IEBAIHB1YmxpYyB2b2lkIHRlc3RDb21taXRUZW1wbGF0ZUVtcHR5Q29uZmlnKCkKIAkJLy8gbm8gdmFsdWVzIGRlZmluZWQgbm93aGVyZQogCQlDb25maWcgY29uZmlnID0gbmV3IENvbmZpZyhudWxsKTsKIAkJYXNzZXJ0TnVsbChjb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpLmdldENvbW1pdFRlbXBsYXRlUGF0aCgpKTsKLQkJYXNzZXJ0TnVsbChjb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpLmdldENvbW1pdFRlbXBsYXRlQ29udGVudCgpKTsKKwkJYXNzZXJ0TnVsbChjb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpCisJCQkJLmdldENvbW1pdFRlbXBsYXRlQ29udGVudChudWxsKSk7CiAJfQogCiAJQFRlc3QKIAlwdWJsaWMgdm9pZCB0ZXN0Q29tbWl0VGVtcGxhdGVDb25maWcoKQogCQkJdGhyb3dzIENvbmZpZ0ludmFsaWRFeGNlcHRpb24sIElPRXhjZXB0aW9uIHsKIAorCQlGaWxlIHdvcmtUcmVlID0gdG1wLm5ld0ZvbGRlcigiZHVtbXktd29ya3RyZWUiKTsKIAkJRmlsZSB0ZW1wRmlsZSA9IHRtcC5uZXdGaWxlKCJ0ZXN0Q29tbWl0VGVtcGxhdGUtIik7CisJCVJlcG9zaXRvcnkgcmVwbyA9IEZpbGVSZXBvc2l0b3J5QnVpbGRlci5jcmVhdGUod29ya1RyZWUpOwogCQlTdHJpbmcgdGVtcGxhdGVDb250ZW50ID0gImNvbnRlbnQgb2YgdGhlIHRlbXBsYXRlIjsKIAkJSkdpdFRlc3RVdGlsLndyaXRlKHRlbXBGaWxlLCB0ZW1wbGF0ZUNvbnRlbnQpOwogCQlTdHJpbmcgZXhwZWN0ZWRUZW1wbGF0ZVBhdGggPSB0ZW1wRmlsZS5nZXRQYXRoKCk7CkBAIC0xNDkyLDcgKzE0OTYsMzIgQEAgcHVibGljIHZvaWQgdGVzdENvbW1pdFRlbXBsYXRlQ29uZmlnKCkKIAkJCQkuZ2V0Q29tbWl0RW5jb2RpbmcoKTsKIAkJYXNzZXJ0RXF1YWxzKGV4cGVjdGVkVGVtcGxhdGVQYXRoLCB0ZW1wbGF0ZVBhdGgpOwogCQlhc3NlcnRFcXVhbHModGVtcGxhdGVDb250ZW50LAotCQkJCWNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkuZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KCkpOworCQkJCWNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkuZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KHJlcG8pKTsKKwkJYXNzZXJ0TnVsbCgibm8gY29tbWl0RW5jb2RpbmcgaGFzIGJlZW4gc2V0IHNvIGl0IG11c3QgYmUgbnVsbCIsCisJCQkJY29tbWl0RW5jb2RpbmcpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdENvbW1pdFRlbXBsYXRlQ29uZmlnUmVsYXRpdmVQYXRoKCkKKwkJCXRocm93cyBDb25maWdJbnZhbGlkRXhjZXB0aW9uLCBJT0V4Y2VwdGlvbiB7CisKKwkJRmlsZSB3b3JrVHJlZSA9IHRtcC5uZXdGb2xkZXIoImR1bW15LXdvcmt0cmVlIik7CisJCUZpbGUgdGVtcEZpbGUgPSB0bXAubmV3RmlsZSgidGVzdENvbW1pdFRlbXBsYXRlLSIpOworCQlTdHJpbmcgdGVtcGxhdGVDb250ZW50ID0gImNvbnRlbnQgb2YgdGhlIHRlbXBsYXRlIjsKKwkJSkdpdFRlc3RVdGlsLndyaXRlKHRlbXBGaWxlLCB0ZW1wbGF0ZUNvbnRlbnQpOworCQlTdHJpbmcgZXhwZWN0ZWRUZW1wbGF0ZVBhdGggPSAiLi4vIiArIHRlbXBGaWxlLmdldE5hbWUoKTsKKworCQlDb25maWcgY29uZmlnID0gcGFyc2UoCisJCQkJIltjb21taXRdXG5cdHRlbXBsYXRlID0gIiArIGV4cGVjdGVkVGVtcGxhdGVQYXRoICsgIlxuIik7CisKKwkJU3RyaW5nIHRlbXBsYXRlUGF0aCA9IGNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkKKwkJCQkuZ2V0Q29tbWl0VGVtcGxhdGVQYXRoKCk7CisJCVN0cmluZyBjb21taXRFbmNvZGluZyA9IGNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkKKwkJCQkuZ2V0Q29tbWl0RW5jb2RpbmcoKTsKKwkJYXNzZXJ0RXF1YWxzKGV4cGVjdGVkVGVtcGxhdGVQYXRoLCB0ZW1wbGF0ZVBhdGgpOworCQlhc3NlcnRFcXVhbHModGVtcGxhdGVDb250ZW50LCBjb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpCisJCQkJLmdldENvbW1pdFRlbXBsYXRlQ29udGVudCgKKwkJCQkJCW5ldyBSZXBvc2l0b3J5QnVpbGRlcigpLnNldFdvcmtUcmVlKHdvcmtUcmVlKS5idWlsZCgpKSk7CiAJCWFzc2VydE51bGwoIm5vIGNvbW1pdEVuY29kaW5nIGhhcyBiZWVuIHNldCBzbyBpdCBtdXN0IGJlIG51bGwiLAogCQkJCWNvbW1pdEVuY29kaW5nKTsKIAl9CkBAIC0xNTAxLDYgKzE1MzAsOCBAQCBwdWJsaWMgdm9pZCB0ZXN0Q29tbWl0VGVtcGxhdGVDb25maWcoKQogCXB1YmxpYyB2b2lkIHRlc3RDb21taXRUZW1wbGF0ZUVuY29kaW5nKCkKIAkJCXRocm93cyBDb25maWdJbnZhbGlkRXhjZXB0aW9uLCBJT0V4Y2VwdGlvbiB7CiAJCUNvbmZpZyBjb25maWcgPSBuZXcgQ29uZmlnKG51bGwpOworCQlGaWxlIHdvcmtUcmVlID0gdG1wLm5ld0ZvbGRlcigiZHVtbXktd29ya3RyZWUiKTsKKwkJUmVwb3NpdG9yeSByZXBvID0gRmlsZVJlcG9zaXRvcnlCdWlsZGVyLmNyZWF0ZSh3b3JrVHJlZSk7CiAJCUZpbGUgdGVtcEZpbGUgPSB0bXAubmV3RmlsZSgidGVzdENvbW1pdFRlbXBsYXRlLSIpOwogCQlTdHJpbmcgdGVtcGxhdGVDb250ZW50ID0gImNvbnRlbnQgb2YgdGhlIHRlbXBsYXRlIjsKIAkJSkdpdFRlc3RVdGlsLndyaXRlKHRlbXBGaWxlLCB0ZW1wbGF0ZUNvbnRlbnQpOwpAQCAtMTUwOCw3ICsxNTM5LDcgQEAgcHVibGljIHZvaWQgdGVzdENvbW1pdFRlbXBsYXRlRW5jb2RpbmcoKQogCQljb25maWcgPSBwYXJzZSgiW2kxOG5dXG5cdGNvbW1pdEVuY29kaW5nID0gdXRmLThcbiIKIAkJCQkrICJbY29tbWl0XVxuXHR0ZW1wbGF0ZSA9ICIgKyBleHBlY3RlZFRlbXBsYXRlUGF0aCArICJcbiIpOwogCQlhc3NlcnRFcXVhbHModGVtcGxhdGVDb250ZW50LAotCQkJCWNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkuZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KCkpOworCQkJCWNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkuZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KHJlcG8pKTsKIAkJU3RyaW5nIGNvbW1pdEVuY29kaW5nID0gY29uZmlnLmdldChDb21taXRDb25maWcuS0VZKQogCQkJCS5nZXRDb21taXRFbmNvZGluZygpOwogCQlhc3NlcnRFcXVhbHMoImNvbW1pdEVuY29kaW5nIGhhcyBiZWVuIHNldCB0byB1dGYtOCBpdCBtdXN0IGJlIHV0Zi04IiwKQEAgLTE1MTksMjggKzE1NTAsMzIgQEAgcHVibGljIHZvaWQgdGVzdENvbW1pdFRlbXBsYXRlRW5jb2RpbmcoKQogCXB1YmxpYyB2b2lkIHRlc3RDb21taXRUZW1wbGF0ZVdpdGhJbnZhbGlkRW5jb2RpbmcoKQogCQkJdGhyb3dzIENvbmZpZ0ludmFsaWRFeGNlcHRpb24sIElPRXhjZXB0aW9uIHsKIAkJQ29uZmlnIGNvbmZpZyA9IG5ldyBDb25maWcobnVsbCk7CisJCUZpbGUgd29ya1RyZWUgPSB0bXAubmV3Rm9sZGVyKCJkdW1teS13b3JrdHJlZSIpOwogCQlGaWxlIHRlbXBGaWxlID0gdG1wLm5ld0ZpbGUoInRlc3RDb21taXRUZW1wbGF0ZS0iKTsKKwkJUmVwb3NpdG9yeSByZXBvID0gRmlsZVJlcG9zaXRvcnlCdWlsZGVyLmNyZWF0ZSh3b3JrVHJlZSk7CiAJCVN0cmluZyB0ZW1wbGF0ZUNvbnRlbnQgPSAiY29udGVudCBvZiB0aGUgdGVtcGxhdGUiOwogCQlKR2l0VGVzdFV0aWwud3JpdGUodGVtcEZpbGUsIHRlbXBsYXRlQ29udGVudCk7CiAJCWNvbmZpZyA9IHBhcnNlKCJbaTE4bl1cblx0Y29tbWl0RW5jb2RpbmcgPSBpbnZhbGlkRWNvZGluZ1xuIgogCQkJCSsgIltjb21taXRdXG5cdHRlbXBsYXRlID0gIiArIHRlbXBGaWxlLmdldFBhdGgoKSArICJcbiIpOwotCQljb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpLmdldENvbW1pdFRlbXBsYXRlQ29udGVudCgpOworCQljb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpLmdldENvbW1pdFRlbXBsYXRlQ29udGVudChyZXBvKTsKIAl9CiAKIAlAVGVzdChleHBlY3RlZCA9IEZpbGVOb3RGb3VuZEV4Y2VwdGlvbi5jbGFzcykKIAlwdWJsaWMgdm9pZCB0ZXN0Q29tbWl0VGVtcGxhdGVXaXRoSW52YWxpZFBhdGgoKQogCQkJdGhyb3dzIENvbmZpZ0ludmFsaWRFeGNlcHRpb24sIElPRXhjZXB0aW9uIHsKIAkJQ29uZmlnIGNvbmZpZyA9IG5ldyBDb25maWcobnVsbCk7CisJCUZpbGUgd29ya1RyZWUgPSB0bXAubmV3Rm9sZGVyKCJkdW1teS13b3JrdHJlZSIpOwogCQlGaWxlIHRlbXBGaWxlID0gdG1wLm5ld0ZpbGUoInRlc3RDb21taXRUZW1wbGF0ZS0iKTsKKwkJUmVwb3NpdG9yeSByZXBvID0gRmlsZVJlcG9zaXRvcnlCdWlsZGVyLmNyZWF0ZSh3b3JrVHJlZSk7CiAJCVN0cmluZyB0ZW1wbGF0ZUNvbnRlbnQgPSAiY29udGVudCBvZiB0aGUgdGVtcGxhdGUiOwogCQlKR2l0VGVzdFV0aWwud3JpdGUodGVtcEZpbGUsIHRlbXBsYXRlQ29udGVudCk7CiAJCS8vIGNvbW1pdCBtZXNzYWdlIGVuY29kaW5nCi0JCVN0cmluZyBleHBlY3RlZFRlbXBsYXRlUGF0aCA9ICJub25FeGlzdGluZ1RlbXBsYXRlIjsKKwkJU3RyaW5nIGV4cGVjdGVkVGVtcGxhdGVQYXRoID0gIi9ub25FeGlzdGluZ1RlbXBsYXRlIjsKIAkJY29uZmlnID0gcGFyc2UoIltjb21taXRdXG5cdHRlbXBsYXRlID0gIiArIGV4cGVjdGVkVGVtcGxhdGVQYXRoICsgIlxuIik7CiAJCVN0cmluZyB0ZW1wbGF0ZVBhdGggPSBjb25maWcuZ2V0KENvbW1pdENvbmZpZy5LRVkpCiAJCQkJLmdldENvbW1pdFRlbXBsYXRlUGF0aCgpOwogCQlhc3NlcnRFcXVhbHMoZXhwZWN0ZWRUZW1wbGF0ZVBhdGgsIHRlbXBsYXRlUGF0aCk7Ci0JCWNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkuZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KCk7CisJCWNvbmZpZy5nZXQoQ29tbWl0Q29uZmlnLktFWSkuZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KHJlcG8pOwogCX0KIAogCXByaXZhdGUgc3RhdGljIHZvaWQgYXNzZXJ0VmFsdWVSb3VuZFRyaXAoU3RyaW5nIHZhbHVlKQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9EaXJDYWNoZUNoZWNrb3V0VGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9EaXJDYWNoZUNoZWNrb3V0VGVzdC5qYXZhCmluZGV4IGI5NDM0ODYuLmFmOGE1OGYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9saWIvRGlyQ2FjaGVDaGVja291dFRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvbGliL0RpckNhY2hlQ2hlY2tvdXRUZXN0LmphdmEKQEAgLTMzNyw2ICszMzcsMzQgQEAgcHVibGljIHZvaWQgdGVzdENoZWNrb3V0V2l0aExGQXV0b0VvbENyTGYoKSB0aHJvd3MgRXhjZXB0aW9uIHsKIAkJCQkiZmlyc3QgbGluZVxyXG5zZWNvbmQgbGluZVxyXG4iLCAiZiB0ZXh0PWF1dG8gZW9sPWNybGYiKTsKIAl9CiAKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RDaGVja291dE1peGVkQXV0b0VvbENyTGYoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY2hlY2tvdXRMaW5lRW5kaW5ncygiZmlyc3QgbGluZVxuc2Vjb25kIGxpbmVcclxuIiwKKwkJCQkiZmlyc3QgbGluZVxuc2Vjb25kIGxpbmVcclxuIiwgImYgdGV4dD1hdXRvIGVvbD1jcmxmIik7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0Q2hlY2tvdXRNaXhlZEF1dG9Fb2xMZigpIHRocm93cyBFeGNlcHRpb24geworCQljaGVja291dExpbmVFbmRpbmdzKCJmaXJzdCBsaW5lXG5zZWNvbmQgbGluZVxyXG4iLAorCQkJCSJmaXJzdCBsaW5lXG5zZWNvbmQgbGluZVxyXG4iLCAiZiB0ZXh0PWF1dG8gZW9sPWxmIik7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0Q2hlY2tvdXRNaXhlZFRleHRDckxmKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCS8vIEh1aD8gSXMgdGhpcyBhIGJ1ZyBpbiBnaXQ/IEJvdGggZ2l0IDIuMTguMCBhbmQgZ2l0IDIuMzMuMCBkbworCQkvLyB3cml0ZSB0aGUgZmlsZSB3aXRoIENSTEYgKGFuZCBjb25zZXF1ZW50bHkgcmVwb3J0IHRoZSBmaWxlIGFzCisJCS8vIG1vZGlmaWVkIGluICJnaXQgc3RhdHVzIiBhZnRlciBjaGVjay1vdXQpLCBob3dldmVyIHRoZSBDUkxGIGluIHRoZQorCQkvLyByZXBvc2l0b3J5IGlzIF9ub3RfIHJlcGxhY2VkIGJ5IExGIHdpdGggZW9sPWxmIChzZWUgdGVzdCBiZWxvdykuCisJCWNoZWNrb3V0TGluZUVuZGluZ3MoImZpcnN0IGxpbmVcbnNlY29uZCBsaW5lXHJcbiIsCisJCQkJImZpcnN0IGxpbmVcclxuc2Vjb25kIGxpbmVcclxuIiwgImYgdGV4dCBlb2w9Y3JsZiIpOworCX0KKworCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdENoZWNrb3V0TWl4ZWRUZXh0TGYoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJY2hlY2tvdXRMaW5lRW5kaW5ncygiZmlyc3QgbGluZVxuc2Vjb25kIGxpbmVcclxuZm9vIiwKKwkJCQkiZmlyc3QgbGluZVxuc2Vjb25kIGxpbmVcclxuZm9vIiwgImYgdGV4dCBlb2w9bGYiKTsKKwl9CisKIAlwcml2YXRlIERpckNhY2hlQ2hlY2tvdXQgcmVzZXRIYXJkKFJldkNvbW1pdCBjb21taXQpCiAJCQl0aHJvd3MgTm9Xb3JrVHJlZUV4Y2VwdGlvbiwKIAkJCUNvcnJ1cHRPYmplY3RFeGNlcHRpb24sIElPRXhjZXB0aW9uIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9tZXJnZS9NZXJnZXJUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvbWVyZ2UvTWVyZ2VyVGVzdC5qYXZhCmluZGV4IDZjYmI0YTguLmRkODU3M2QgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9tZXJnZS9NZXJnZXJUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L21lcmdlL01lcmdlclRlc3QuamF2YQpAQCAtMzMsNiArMzMsNyBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5DaGVja291dENvbmZsaWN0RXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5HaXRBUElFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzLkpHaXRJbnRlcm5hbEV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuUmF3VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuRGlyQ2FjaGVFZGl0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZUVudHJ5OwpAQCAtODI2LDYgKzgyNyw4IEBAIHB1YmxpYyB2b2lkIGNoZWNrQ29udGVudE1lcmdlTGFyZ2VCaW5hcmllcyhNZXJnZVN0cmF0ZWd5IHN0cmF0ZWd5KSB0aHJvd3MgRXhjZXB0CiAJCVJldkNvbW1pdCBzaWRlQ29tbWl0ID0gZ2l0LmNvbW1pdCgpLnNldEFsbCh0cnVlKQogCQkJLnNldE1lc3NhZ2UoIm1vZGlmaWVkIGZpbGUgbCAxNTAwIikuY2FsbCgpOwogCisJCWludCBvcmlnaW5hbEJ1ZmZlclNpemUgPSBSYXdUZXh0LmdldEJ1ZmZlclNpemUoKTsKKwkJaW50IHNtYWxsQnVmZmVyU2l6ZSA9IFJhd1RleHQuc2V0QnVmZmVyU2l6ZSg4MDAwKTsKIAkJdHJ5IChPYmplY3RJbnNlcnRlciBpbnMgPSBkYi5uZXdPYmplY3RJbnNlcnRlcigpKSB7CiAJCQkvLyBDaGVjayB0aGF0IHdlIGRvbid0IHJlYWQgdGhlIGxhcmdlIGJsb2JzLgogCQkJT2JqZWN0SW5zZXJ0ZXIgZm9yYmlkSW5zZXJ0ZXIgPSBuZXcgT2JqZWN0SW5zZXJ0ZXIuRmlsdGVyKCkgewpAQCAtODM2LDcgKzgzOSw4IEBAIHByb3RlY3RlZCBPYmplY3RJbnNlcnRlciBkZWxlZ2F0ZSgpIHsKIAogCQkJCUBPdmVycmlkZQogCQkJCXB1YmxpYyBPYmplY3RSZWFkZXIgbmV3UmVhZGVyKCkgewotCQkJCQlyZXR1cm4gbmV3IEJpZ1JlYWRGb3JiaWRkZW5SZWFkZXIoc3VwZXIubmV3UmVhZGVyKCksIDgwMDApOworCQkJCQlyZXR1cm4gbmV3IEJpZ1JlYWRGb3JiaWRkZW5SZWFkZXIoc3VwZXIubmV3UmVhZGVyKCksCisJCQkJCQkJc21hbGxCdWZmZXJTaXplKTsKIAkJCQl9CiAJCQl9OwogCkBAIC04NDQsNiArODQ4LDggQEAgcHVibGljIE9iamVjdFJlYWRlciBuZXdSZWFkZXIoKSB7CiAJCQkJKFJlc29sdmVNZXJnZXIpIHN0cmF0ZWd5Lm5ld01lcmdlcihmb3JiaWRJbnNlcnRlciwgZGIuZ2V0Q29uZmlnKCkpOwogCQkJYm9vbGVhbiBub1Byb2JsZW1zID0gbWVyZ2VyLm1lcmdlKG1hc3RlckNvbW1pdCwgc2lkZUNvbW1pdCk7CiAJCQlhc3NlcnRGYWxzZShub1Byb2JsZW1zKTsKKwkJfSBmaW5hbGx5IHsKKwkJCVJhd1RleHQuc2V0QnVmZmVyU2l6ZShvcmlnaW5hbEJ1ZmZlclNpemUpOwogCQl9CiAJfQogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvc3RvcmFnZS9maWxlL0ZpbGVCYXNlZENvbmZpZ1Rlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9zdG9yYWdlL2ZpbGUvRmlsZUJhc2VkQ29uZmlnVGVzdC5qYXZhCmluZGV4IDdmMGJmZWYuLmI5NjRlOTcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9zdG9yYWdlL2ZpbGUvRmlsZUJhc2VkQ29uZmlnVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9zdG9yYWdlL2ZpbGUvRmlsZUJhc2VkQ29uZmlnVGVzdC5qYXZhCkBAIC0xOSw2ICsxOSw3IEBACiBpbXBvcnQgamF2YS5pby5CeXRlQXJyYXlPdXRwdXRTdHJlYW07CiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLmlvLk91dHB1dFN0cmVhbTsKK2ltcG9ydCBqYXZhLm5pby5jaGFyc2V0LlN0YW5kYXJkQ2hhcnNldHM7CiBpbXBvcnQgamF2YS5uaW8uZmlsZS5GaWxlczsKIGltcG9ydCBqYXZhLm5pby5maWxlLlBhdGg7CiBpbXBvcnQgamF2YS5uaW8uZmlsZS5TdGFuZGFyZE9wZW5PcHRpb247CkBAIC0yNzYsNyArMjc3LDggQEAgcHVibGljIHZvaWQgdGVzdFNhdmVkQ29uZmlnRmlsZVNob3VsZE5vdFJlYWRVc2VyR2l0Q29uZmlnKCkKIAkJCXRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCUF0b21pY0Jvb2xlYW4gdXNlckNvbmZpZ1RpbWVSZWFkID0gbmV3IEF0b21pY0Jvb2xlYW4oZmFsc2UpOwogCi0JCVBhdGggdXNlckNvbmZpZ0ZpbGUgPSBjcmVhdGVGaWxlKENPTlRFTlQxLmdldEJ5dGVzKCksICJob21lIik7CisJCVBhdGggdXNlckNvbmZpZ0ZpbGUgPSBjcmVhdGVGaWxlKAorCQkJCUNPTlRFTlQxLmdldEJ5dGVzKFN0YW5kYXJkQ2hhcnNldHMuVVRGXzgpLCAiaG9tZSIpOwogCQltb2NrU3lzdGVtUmVhZGVyLnNldFVzZXJHaXRDb25maWcoCiAJCQkJbmV3IEZpbGVCYXNlZENvbmZpZyh1c2VyQ29uZmlnRmlsZS50b0ZpbGUoKSwgRlMuREVURUNURUQpIHsKIApAQCAtMjg5LDcgKzI5MSw4IEBAIHB1YmxpYyBsb25nIGdldFRpbWVVbml0KFN0cmluZyBzZWN0aW9uLCBTdHJpbmcgc3Vic2VjdGlvbiwKIAkJCQkJfQogCQkJCX0pOwogCi0JCVBhdGggZmlsZSA9IGNyZWF0ZUZpbGUoQ09OVEVOVDIuZ2V0Qnl0ZXMoKSwgInJlcG8iKTsKKwkJUGF0aCBmaWxlID0gY3JlYXRlRmlsZShDT05URU5UMi5nZXRCeXRlcyhTdGFuZGFyZENoYXJzZXRzLlVURl84KSwKKwkJCQkicmVwbyIpOwogCQlGaWxlQmFzZWRDb25maWcgZmlsZUJhc2VkQ29uZmlnID0gbmV3IEZpbGVCYXNlZENvbmZpZyhmaWxlLnRvRmlsZSgpLAogCQkJCUZTLkRFVEVDVEVEKTsKIAkJZmlsZUJhc2VkQ29uZmlnLnNhdmUoKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9zeW1saW5rcy9EaXJlY3RvcnlUZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvc3ltbGlua3MvRGlyZWN0b3J5VGVzdC5qYXZhCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNWQ0Y2VhLi4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC9zeW1saW5rcy9EaXJlY3RvcnlUZXN0LmphdmEKKysrIC9kZXYvbnVsbApAQCAtMSwyNTQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMyBUaG9tYXMgV29sZiA8dHdvbGZAYXBhY2hlLm9yZz4gYW5kIG90aGVycwotICoKLSAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQotICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAotICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KLSAqCi0gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCi0gKi8KLXBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5zeW1saW5rczsKLQotaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEZhbHNlOwotaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydE5vdE51bGw7Ci1pbXBvcnQgc3RhdGljIG9yZy5qdW5pdC5Bc3NlcnQuYXNzZXJ0VHJ1ZTsKLQotaW1wb3J0IGphdmEuaW8uRmlsZTsKLWltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtOwotaW1wb3J0IGphdmEubmlvLmNoYXJzZXQuU3RhbmRhcmRDaGFyc2V0czsKLWltcG9ydCBqYXZhLm5pby5maWxlLkZpbGVzOwotaW1wb3J0IGphdmEubmlvLmZpbGUuTGlua09wdGlvbjsKLWltcG9ydCBqYXZhLm5pby5maWxlLlBhdGg7Ci0KLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5BcHBseVJlc3VsdDsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5HaXQ7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hcGkuUmVzZXRDb21tYW5kLlJlc2V0VHlwZTsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnMuUGF0Y2hBcHBseUV4Y2VwdGlvbjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LlJlcG9zaXRvcnlUZXN0Q2FzZTsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0LlRlc3RSZXBvc2l0b3J5OwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbmZpZ0NvbnN0YW50czsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5SZXBvc2l0b3J5OwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLlN0b3JlZENvbmZpZzsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuUmV2Q29tbWl0OwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5GUzsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRmlsZVV0aWxzOwotaW1wb3J0IG9yZy5qdW5pdC5Bc3N1bWU7Ci1pbXBvcnQgb3JnLmp1bml0LkJlZm9yZUNsYXNzOwotaW1wb3J0IG9yZy5qdW5pdC5UZXN0OwotaW1wb3J0IG9yZy5qdW5pdC5ydW5uZXIuUnVuV2l0aDsKLWltcG9ydCBvcmcuanVuaXQucnVubmVycy5QYXJhbWV0ZXJpemVkOwotaW1wb3J0IG9yZy5qdW5pdC5ydW5uZXJzLlBhcmFtZXRlcml6ZWQuUGFyYW1ldGVyOwotaW1wb3J0IG9yZy5qdW5pdC5ydW5uZXJzLlBhcmFtZXRlcml6ZWQuUGFyYW1ldGVyczsKLQotQFJ1bldpdGgoUGFyYW1ldGVyaXplZC5jbGFzcykKLXB1YmxpYyBjbGFzcyBEaXJlY3RvcnlUZXN0IGV4dGVuZHMgUmVwb3NpdG9yeVRlc3RDYXNlIHsKLQotCUBCZWZvcmVDbGFzcwotCXB1YmxpYyBzdGF0aWMgdm9pZCBjaGVja1ByZWNvbmRpdGlvbigpIHRocm93cyBFeGNlcHRpb24gewotCQlBc3N1bWUuYXNzdW1lVHJ1ZShGUy5ERVRFQ1RFRC5zdXBwb3J0c1N5bWxpbmtzKCkpOwotCQlQYXRoIHRlbXBEaXIgPSBGaWxlcy5jcmVhdGVUZW1wRGlyZWN0b3J5KCJqZ2l0Iik7Ci0JCXRyeSB7Ci0JCQlQYXRoIGEgPSB0ZW1wRGlyLnJlc29sdmUoImEiKTsKLQkJCUZpbGVzLndyaXRlKGEsICJ0ZXN0Ii5nZXRCeXRlcyhTdGFuZGFyZENoYXJzZXRzLlVURl84KSk7Ci0JCQlQYXRoIGIgPSB0ZW1wRGlyLnJlc29sdmUoIkEiKTsKLQkJCUFzc3VtZS5hc3N1bWVUcnVlKEZpbGVzLmV4aXN0cyhiKSk7Ci0JCX0gZmluYWxseSB7Ci0JCQlGaWxlVXRpbHMuZGVsZXRlKHRlbXBEaXIudG9GaWxlKCksCi0JCQkJCUZpbGVVdGlscy5SRUNVUlNJVkUgfCBGaWxlVXRpbHMuSUdOT1JFX0VSUk9SUyk7Ci0JCX0KLQl9Ci0KLQlAUGFyYW1ldGVycyhuYW1lID0gImNvcmUuc3ltbGlua3M9ezB9IikKLQlwdWJsaWMgc3RhdGljIEJvb2xlYW5bXSBwYXJhbWV0ZXJzKCkgewotCQlyZXR1cm4gbmV3IEJvb2xlYW5bXSB7IEJvb2xlYW4uVFJVRSwgQm9vbGVhbi5GQUxTRSB9OwotCX0KLQotCUBQYXJhbWV0ZXIoMCkKLQlwdWJsaWMgYm9vbGVhbiB1c2VTeW1saW5rczsKLQotCXByaXZhdGUgdm9pZCBjaGVja0ZpbGVzKCkgdGhyb3dzIEV4Y2VwdGlvbiB7Ci0JCUZpbGUgYSA9IG5ldyBGaWxlKHRyYXNoLCAiYSIpOwotCQlhc3NlcnRUcnVlKCJhIHNob3VsZCBiZSBhIGRpcmVjdG9yeSIsCi0JCQkJRmlsZXMuaXNEaXJlY3RvcnkoYS50b1BhdGgoKSwgTGlua09wdGlvbi5OT0ZPTExPV19MSU5LUykpOwotCQlGaWxlIGIgPSBuZXcgRmlsZShhLCAiYiIpOwotCQlhc3NlcnRUcnVlKCJhL2Igc2hvdWxkIGV4aXN0IiwgYi5pc0ZpbGUoKSk7Ci0JCUZpbGUgeCA9IG5ldyBGaWxlKHRyYXNoLCAieCIpOwotCQlhc3NlcnRUcnVlKCJ4IHNob3VsZCBiZSBhIGRpcmVjdG9yeSIsCi0JCQkJRmlsZXMuaXNEaXJlY3RvcnkoeC50b1BhdGgoKSwgTGlua09wdGlvbi5OT0ZPTExPV19MSU5LUykpOwotCQlGaWxlIHkgPSBuZXcgRmlsZSh4LCAieSIpOwotCQlhc3NlcnRUcnVlKCJ4L3kgc2hvdWxkIGV4aXN0IiwgeS5pc0ZpbGUoKSk7Ci0JfQotCi0JQFRlc3QKLQlwdWJsaWMgdm9pZCB0ZXN0Q2hlY2tvdXQoKSB0aHJvd3MgRXhjZXB0aW9uIHsKLQkJU3RvcmVkQ29uZmlnIGNvbmZpZyA9IGRiLmdldENvbmZpZygpOwotCQljb25maWcuc2V0Qm9vbGVhbihDb25maWdDb25zdGFudHMuQ09ORklHX0NPUkVfU0VDVElPTiwgbnVsbCwKLQkJCQlDb25maWdDb25zdGFudHMuQ09ORklHX0tFWV9TWU1MSU5LUywgdXNlU3ltbGlua3MpOwotCQljb25maWcuc2F2ZSgpOwotCQl0cnkgKFRlc3RSZXBvc2l0b3J5PFJlcG9zaXRvcnk+IHJlcG8gPSBuZXcgVGVzdFJlcG9zaXRvcnk8PihkYikpIHsKLQkJCWRiLmluY3JlbWVudE9wZW4oKTsKLQkJCS8vIENyZWF0ZSBsaW5rcyBkaXJlY3RseSBpbiB0aGUgZ2l0IHJlcG8sIHRoZW4gdXNlIGEgaGFyZCByZXNldAotCQkJLy8gdG8gZ2V0IHRoZW0gaW50byB0aGUgd29ya3NwYWNlLgotCQkJUmV2Q29tbWl0IGJhc2UgPSByZXBvLmNvbW1pdCgKLQkJCQkJcmVwby50cmVlKAotCQkJCQkJCXJlcG8ubGluaygiQSIsIHJlcG8uYmxvYigiLmdpdCIpKSwKLQkJCQkJCQlyZXBvLmZpbGUoImEvYiIsIHJlcG8uYmxvYigidGVzdCIpKSwKLQkJCQkJCQlyZXBvLmZpbGUoIngveSIsIHJlcG8uYmxvYigidGVzdDIiKSkpKTsKLQkJCXRyeSAoR2l0IGdpdCA9IG5ldyBHaXQoZGIpKSB7Ci0JCQkJZ2l0LnJlc2V0KCkuc2V0TW9kZShSZXNldFR5cGUuSEFSRCkuc2V0UmVmKGJhc2UubmFtZSgpKS5jYWxsKCk7Ci0JCQkJRmlsZSBiID0gbmV3IEZpbGUobmV3IEZpbGUodHJhc2gsICIuZ2l0IiksICJiIik7Ci0JCQkJYXNzZXJ0RmFsc2UoIi5naXQvYiBzaG91bGQgbm90IGV4aXN0IiwgYi5leGlzdHMoKSk7Ci0JCQkJY2hlY2tGaWxlcygpOwotCQkJfQotCQl9Ci0JfQotCi0JQFRlc3QKLQlwdWJsaWMgdm9pZCB0ZXN0Q2hlY2tvdXQyKCkgdGhyb3dzIEV4Y2VwdGlvbiB7Ci0JCVN0b3JlZENvbmZpZyBjb25maWcgPSBkYi5nZXRDb25maWcoKTsKLQkJY29uZmlnLnNldEJvb2xlYW4oQ29uZmlnQ29uc3RhbnRzLkNPTkZJR19DT1JFX1NFQ1RJT04sIG51bGwsCi0JCQkJQ29uZmlnQ29uc3RhbnRzLkNPTkZJR19LRVlfU1lNTElOS1MsIHVzZVN5bWxpbmtzKTsKLQkJY29uZmlnLnNhdmUoKTsKLQkJdHJ5IChUZXN0UmVwb3NpdG9yeTxSZXBvc2l0b3J5PiByZXBvID0gbmV3IFRlc3RSZXBvc2l0b3J5PD4oZGIpKSB7Ci0JCQlkYi5pbmNyZW1lbnRPcGVuKCk7Ci0JCQlSZXZDb21taXQgYmFzZSA9IHJlcG8uY29tbWl0KAotCQkJCQlyZXBvLnRyZWUoCi0JCQkJCQkJcmVwby5saW5rKCJBL0IiLCByZXBvLmJsb2IoIi4uLy5naXQiKSksCi0JCQkJCQkJcmVwby5maWxlKCJhL2IvYS9iIiwgcmVwby5ibG9iKCJ0ZXN0IikpLAotCQkJCQkJCXJlcG8uZmlsZSgieC95IiwgcmVwby5ibG9iKCJ0ZXN0MiIpKSkpOwotCQkJdHJ5IChHaXQgZ2l0ID0gbmV3IEdpdChkYikpIHsKLQkJCQlib29sZWFuIHRlc3RGaWxlcyA9IHRydWU7Ci0JCQkJdHJ5IHsKLQkJCQkJZ2l0LnJlc2V0KCkuc2V0TW9kZShSZXNldFR5cGUuSEFSRCkuc2V0UmVmKGJhc2UubmFtZSgpKQotCQkJCQkJCS5jYWxsKCk7Ci0JCQkJfSBjYXRjaCAoRXhjZXB0aW9uIGUpIHsKLQkJCQkJaWYgKCF1c2VTeW1saW5rcykgewotCQkJCQkJLy8gVGhlcmUgaXMgYSBmaWxlIGluIHRoZSBtaWRkbGUgb2YgdGhlIHBhdGggd2hlcmUgd2UnZAotCQkJCQkJLy8gZXhwZWN0IGEgZGlyZWN0b3J5LiBUaGlzIGNhc2UgaXMgbm90IGhhbmRsZWQKLQkJCQkJCS8vIGFueXdoZXJlLiBXaGF0IHdvdWxkIGJlIGEgYmV0dGVyIHJlcGx5IHRoYW4gYW4gSU9FPwotCQkJCQkJdGVzdEZpbGVzID0gZmFsc2U7Ci0JCQkJCX0gZWxzZSB7Ci0JCQkJCQl0aHJvdyBlOwotCQkJCQl9Ci0JCQkJfQotCQkJCUZpbGUgYSA9IG5ldyBGaWxlKG5ldyBGaWxlKHRyYXNoLCAiLmdpdCIpLCAiYSIpOwotCQkJCWFzc2VydEZhbHNlKCIuZ2l0L2Egc2hvdWxkIG5vdCBleGlzdCIsIGEuZXhpc3RzKCkpOwotCQkJCWlmICh0ZXN0RmlsZXMpIHsKLQkJCQkJYSA9IG5ldyBGaWxlKHRyYXNoLCAiYSIpOwotCQkJCQlhc3NlcnRUcnVlKCJhIHNob3VsZCBiZSBhIGRpcmVjdG9yeSIsIEZpbGVzLmlzRGlyZWN0b3J5KAotCQkJCQkJCWEudG9QYXRoKCksIExpbmtPcHRpb24uTk9GT0xMT1dfTElOS1MpKTsKLQkJCQkJRmlsZSBiID0gbmV3IEZpbGUoYSwgImIiKTsKLQkJCQkJYXNzZXJ0VHJ1ZSgiYS9iIHNob3VsZCBiZSBhIGRpcmVjdG9yeSIsIEZpbGVzLmlzRGlyZWN0b3J5KAotCQkJCQkJCWEudG9QYXRoKCksIExpbmtPcHRpb24uTk9GT0xMT1dfTElOS1MpKTsKLQkJCQkJYSA9IG5ldyBGaWxlKGIsICJhIik7Ci0JCQkJCWFzc2VydFRydWUoImEvYi9hIHNob3VsZCBiZSBhIGRpcmVjdG9yeSIsIEZpbGVzLmlzRGlyZWN0b3J5KAotCQkJCQkJCWEudG9QYXRoKCksIExpbmtPcHRpb24uTk9GT0xMT1dfTElOS1MpKTsKLQkJCQkJYiA9IG5ldyBGaWxlKGEsICJiIik7Ci0JCQkJCWFzc2VydFRydWUoImEvYi9hL2Igc2hvdWxkIGV4aXN0IiwgYi5pc0ZpbGUoKSk7Ci0JCQkJCUZpbGUgeCA9IG5ldyBGaWxlKHRyYXNoLCAieCIpOwotCQkJCQlhc3NlcnRUcnVlKCJ4IHNob3VsZCBiZSBhIGRpcmVjdG9yeSIsIEZpbGVzLmlzRGlyZWN0b3J5KAotCQkJCQkJCXgudG9QYXRoKCksIExpbmtPcHRpb24uTk9GT0xMT1dfTElOS1MpKTsKLQkJCQkJRmlsZSB5ID0gbmV3IEZpbGUoeCwgInkiKTsKLQkJCQkJYXNzZXJ0VHJ1ZSgieC95IHNob3VsZCBleGlzdCIsIHkuaXNGaWxlKCkpOwotCQkJCX0KLQkJCX0KLQkJfQotCX0KLQotCUBUZXN0Ci0JcHVibGljIHZvaWQgdGVzdE1lcmdlKCkgdGhyb3dzIEV4Y2VwdGlvbiB7Ci0JCVN0b3JlZENvbmZpZyBjb25maWcgPSBkYi5nZXRDb25maWcoKTsKLQkJY29uZmlnLnNldEJvb2xlYW4oQ29uZmlnQ29uc3RhbnRzLkNPTkZJR19DT1JFX1NFQ1RJT04sIG51bGwsCi0JCQkJQ29uZmlnQ29uc3RhbnRzLkNPTkZJR19LRVlfU1lNTElOS1MsIHVzZVN5bWxpbmtzKTsKLQkJY29uZmlnLnNhdmUoKTsKLQkJdHJ5IChUZXN0UmVwb3NpdG9yeTxSZXBvc2l0b3J5PiByZXBvID0gbmV3IFRlc3RSZXBvc2l0b3J5PD4oZGIpKSB7Ci0JCQlkYi5pbmNyZW1lbnRPcGVuKCk7Ci0JCQlSZXZDb21taXQgYmFzZSA9IHJlcG8uY29tbWl0KAotCQkJCQlyZXBvLnRyZWUocmVwby5maWxlKCJxIiwgcmVwby5ibG9iKCJ0ZXN0IikpKSk7Ci0JCQlSZXZDb21taXQgc2lkZSA9IHJlcG8uY29tbWl0KAotCQkJCQlyZXBvLnRyZWUoCi0JCQkJCQkJcmVwby5saW5rKCJBIiwgcmVwby5ibG9iKCIuZ2l0IikpLAotCQkJCQkJCXJlcG8uZmlsZSgiYS9iIiwgcmVwby5ibG9iKCJ0ZXN0IikpLAotCQkJCQkJCXJlcG8uZmlsZSgieC95IiwgcmVwby5ibG9iKCJ0ZXN0MiIpKSkpOwotCQkJdHJ5IChHaXQgZ2l0ID0gbmV3IEdpdChkYikpIHsKLQkJCQlnaXQucmVzZXQoKS5zZXRNb2RlKFJlc2V0VHlwZS5IQVJEKS5zZXRSZWYoYmFzZS5uYW1lKCkpLmNhbGwoKTsKLQkJCQlnaXQubWVyZ2UoKS5pbmNsdWRlKHNpZGUpCi0JCQkJCQkuc2V0TWVzc2FnZSgibWVyZ2VkIikuY2FsbCgpOwotCQkJCUZpbGUgYiA9IG5ldyBGaWxlKG5ldyBGaWxlKHRyYXNoLCAiLmdpdCIpLCAiYiIpOwotCQkJCWFzc2VydEZhbHNlKCIuZ2l0L2Igc2hvdWxkIG5vdCBleGlzdCIsIGIuZXhpc3RzKCkpOwotCQkJCWNoZWNrRmlsZXMoKTsKLQkJCX0KLQkJfQotCX0KLQotCUBUZXN0Ci0JcHVibGljIHZvaWQgdGVzdE1lcmdlMigpIHRocm93cyBFeGNlcHRpb24gewotCQlTdG9yZWRDb25maWcgY29uZmlnID0gZGIuZ2V0Q29uZmlnKCk7Ci0JCWNvbmZpZy5zZXRCb29sZWFuKENvbmZpZ0NvbnN0YW50cy5DT05GSUdfQ09SRV9TRUNUSU9OLCBudWxsLAotCQkJCUNvbmZpZ0NvbnN0YW50cy5DT05GSUdfS0VZX1NZTUxJTktTLCB1c2VTeW1saW5rcyk7Ci0JCWNvbmZpZy5zYXZlKCk7Ci0JCXRyeSAoVGVzdFJlcG9zaXRvcnk8UmVwb3NpdG9yeT4gcmVwbyA9IG5ldyBUZXN0UmVwb3NpdG9yeTw+KGRiKSkgewotCQkJZGIuaW5jcmVtZW50T3BlbigpOwotCQkJUmV2Q29tbWl0IGJhc2UgPSByZXBvLmNvbW1pdCgKLQkJCQkJcmVwby50cmVlKAotCQkJCQkJCXJlcG8uZmlsZSgicSIsIHJlcG8uYmxvYigidGVzdCIpKSwKLQkJCQkJCQlyZXBvLmxpbmsoIkEiLCByZXBvLmJsb2IoIi5naXQiKSkpKTsKLQkJCVJldkNvbW1pdCBzaWRlID0gcmVwby5jb21taXQoCi0JCQkJCXJlcG8udHJlZSgKLQkJCQkJCQlyZXBvLmZpbGUoImEvYiIsIHJlcG8uYmxvYigidGVzdCIpKSwKLQkJCQkJCQlyZXBvLmZpbGUoIngveSIsIHJlcG8uYmxvYigidGVzdDIiKSkpKTsKLQkJCXRyeSAoR2l0IGdpdCA9IG5ldyBHaXQoZGIpKSB7Ci0JCQkJZ2l0LnJlc2V0KCkuc2V0TW9kZShSZXNldFR5cGUuSEFSRCkuc2V0UmVmKGJhc2UubmFtZSgpKS5jYWxsKCk7Ci0JCQkJZ2l0Lm1lcmdlKCkuaW5jbHVkZShzaWRlKQotCQkJCQkJLnNldE1lc3NhZ2UoIm1lcmdlZCIpLmNhbGwoKTsKLQkJCQlGaWxlIGIgPSBuZXcgRmlsZShuZXcgRmlsZSh0cmFzaCwgIi5naXQiKSwgImIiKTsKLQkJCQlhc3NlcnRGYWxzZSgiLmdpdC9iIHNob3VsZCBub3QgZXhpc3QiLCBiLmV4aXN0cygpKTsKLQkJCQljaGVja0ZpbGVzKCk7Ci0JCQl9Ci0JCX0KLQl9Ci0KLQlAVGVzdAotCXB1YmxpYyB2b2lkIHRlc3RBcHBseSgpIHRocm93cyBFeGNlcHRpb24gewotCQlTdG9yZWRDb25maWcgY29uZmlnID0gZGIuZ2V0Q29uZmlnKCk7Ci0JCWNvbmZpZy5zZXRCb29sZWFuKENvbmZpZ0NvbnN0YW50cy5DT05GSUdfQ09SRV9TRUNUSU9OLCBudWxsLAotCQkJCUNvbmZpZ0NvbnN0YW50cy5DT05GSUdfS0VZX1NZTUxJTktTLCB1c2VTeW1saW5rcyk7Ci0JCWNvbmZpZy5zYXZlKCk7Ci0JCS8vIFBhdGNoQXBwbGllciBkb2Vzbid0IGRvIHN5bWxpbmtzIHlldC4KLQkJdHJ5IChUZXN0UmVwb3NpdG9yeTxSZXBvc2l0b3J5PiByZXBvID0gbmV3IFRlc3RSZXBvc2l0b3J5PD4oZGIpKSB7Ci0JCQlkYi5pbmNyZW1lbnRPcGVuKCk7Ci0JCQlSZXZDb21taXQgYmFzZSA9IHJlcG8uY29tbWl0KAotCQkJCQlyZXBvLnRyZWUoCi0JCQkJCQkJcmVwby5maWxlKCJ4IiwgcmVwby5ibG9iKCJ0ZXN0IikpLAotCQkJCQkJCXJlcG8ubGluaygiQSIsIHJlcG8uYmxvYigiLmdpdCIpKSkpOwotCQkJdHJ5IChHaXQgZ2l0ID0gbmV3IEdpdChkYikpIHsKLQkJCQlib29sZWFuIHRlc3RGaWxlcyA9IHRydWU7Ci0JCQkJZ2l0LnJlc2V0KCkuc2V0TW9kZShSZXNldFR5cGUuSEFSRCkuc2V0UmVmKGJhc2UubmFtZSgpKS5jYWxsKCk7Ci0JCQkJdHJ5IChJbnB1dFN0cmVhbSBwYXRjaFN0cmVhbSA9IHRoaXMuZ2V0Q2xhc3MoKQotCQkJCQkJLmdldFJlc291cmNlQXNTdHJlYW0oImRpcnRlc3QucGF0Y2giKSkgewotCQkJCQlBcHBseVJlc3VsdCByZXN1bHQgPSBnaXQuYXBwbHkoKS5zZXRQYXRjaChwYXRjaFN0cmVhbSkuY2FsbCgpOwotCQkJCQlhc3NlcnROb3ROdWxsKHJlc3VsdCk7Ci0JCQkJfSBjYXRjaCAoUGF0Y2hBcHBseUV4Y2VwdGlvbiBlKSB7Ci0JCQkJCWlmICghdXNlU3ltbGlua3MpIHsKLQkJCQkJCS8vIFRoZXJlIGlzIGEgZmlsZSB0aGVyZSwgc28gdGhlIHBhdGNoIHdvbid0IGFwcGx5LgotCQkJCQkJLy8gVW5jbGVhciB3aGV0aGVyIGFuIElPRSBpcyB0aGUgY29ycmVjdCByZXNwb25zZSwKLQkJCQkJCS8vIHRob3VnaC4gUHJvYmFibHkgc29tZSBuZWdhdGl2ZSBQYXRjaEFwcGxpZXIuUmVzdWx0IGlzCi0JCQkJCQkvLyBtb3JlIGFwcHJvcHJpYXRlLgotCQkJCQkJdGVzdEZpbGVzID0gZmFsc2U7Ci0JCQkJCX0gZWxzZSB7Ci0JCQkJCQl0aHJvdyBlOwotCQkJCQl9Ci0JCQkJfQotCQkJCUZpbGUgYiA9IG5ldyBGaWxlKG5ldyBGaWxlKHRyYXNoLCAiLmdpdCIpLCAiYiIpOwotCQkJCWFzc2VydEZhbHNlKCIuZ2l0L2Igc2hvdWxkIG5vdCBleGlzdCIsIGIuZXhpc3RzKCkpOwotCQkJCWlmICh0ZXN0RmlsZXMpIHsKLQkJCQkJRmlsZSBhID0gbmV3IEZpbGUodHJhc2gsICJhIik7Ci0JCQkJCWFzc2VydFRydWUoImEgc2hvdWxkIGJlIGEgZGlyZWN0b3J5IiwKLQkJCQkJCQlGaWxlcy5pc0RpcmVjdG9yeShhLnRvUGF0aCgpLCBMaW5rT3B0aW9uLk5PRk9MTE9XX0xJTktTKSk7Ci0JCQkJCWIgPSBuZXcgRmlsZShhLCAiYiIpOwotCQkJCQlhc3NlcnRUcnVlKCJhL2Igc2hvdWxkIGV4aXN0IiwgYi5pc0ZpbGUoKSk7Ci0JCQkJfQotCQkJfQotCQl9Ci0JfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUmVjZWl2ZVBhY2tBZHZlcnRpc2VSZWZzSG9va1Rlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUmVjZWl2ZVBhY2tBZHZlcnRpc2VSZWZzSG9va1Rlc3QuamF2YQppbmRleCBmZmVhOTgwLi5kMWU1NDQ2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1JlY2VpdmVQYWNrQWR2ZXJ0aXNlUmVmc0hvb2tUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9SZWNlaXZlUGFja0FkdmVydGlzZVJlZnNIb29rVGVzdC5qYXZhCkBAIC0xNDIsNyArMTQyLDcgQEAgUmVjZWl2ZVBhY2sgY3JlYXRlUmVjZWl2ZVBhY2soUmVwb3NpdG9yeSBkYikgewogCQkJCXJwLnNldEFkdmVydGlzZVJlZnNIb29rKG5ldyBBZHZlcnRpc2VSZWZzSG9vaygpIHsKIAkJCQkJQE92ZXJyaWRlCiAJCQkJCXB1YmxpYyB2b2lkIGFkdmVydGlzZVJlZnMoUmVjZWl2ZVBhY2sgcnAyKQotCQkJCQkJCXRocm93cyBTZXJ2aWNlTWF5Tm90Q29udGludWVFeGNlcHRpb24geworCQkJCQkJCXRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCQkJCQlycC5zZXRBZHZlcnRpc2VkUmVmcyhycC5nZXRSZXBvc2l0b3J5KCkuZ2V0QWxsUmVmcygpLAogCQkJCQkJCQludWxsKTsKIAkJCQkJCW5ldyBIaWRlUHJpdmF0ZUhvb2soKS5hZHZlcnRpc2VSZWZzKHJwKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvVXBsb2FkUGFja1Rlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvVXBsb2FkUGFja1Rlc3QuamF2YQppbmRleCAxMjc3MTFmLi4yYjA1ZGVjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1VwbG9hZFBhY2tUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9VcGxvYWRQYWNrVGVzdC5qYXZhCkBAIC0zNCw3ICszNCw2IEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmRmcy5EZnNHYXJiYWdlQ29sbGVjdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnMuRGZzUmVwb3NpdG9yeURlc2NyaXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnMuSW5NZW1vcnlSZXBvc2l0b3J5OwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlLlBhY2tMb2NrOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrLkNhY2hlZFBhY2s7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnBhY2suQ2FjaGVkUGFja1VyaVByb3ZpZGVyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuanVuaXQuVGVzdFJlcG9zaXRvcnk7CkBAIC0yNTQwLDYgKzI1MzksNzUgQEAgcHVibGljIHZvaWQgb25TZW5kUGFjayhVcGxvYWRQYWNrIHVwLAogCX0KIAogCUBUZXN0CisJcHVibGljIHZvaWQgdGVzdFNpbmdsZUJyYW5jaFNoYWxsb3dDbG9uZVRhZ0NoYWluV2l0aFJlZmxlc3NUYWcoKSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJUmV2Q29tbWl0IG9uZSA9IHJlbW90ZS5jb21taXQoKS5tZXNzYWdlKCIxIikuY3JlYXRlKCk7CisJCXJlbW90ZS51cGRhdGUoIm1hc3RlciIsIG9uZSk7CisJCVJldlRhZyB0YWcxID0gcmVtb3RlLnRhZygidDEiLCBvbmUpOworCQlyZW1vdGUubGlnaHR3ZWlnaHRUYWcoInQxIiwgdGFnMSk7CisJCVJldlRhZyB0YWcyID0gcmVtb3RlLnRhZygidDIiLCB0YWcxKTsKKwkJUmV2VGFnIHRhZzMgPSByZW1vdGUudGFnKCJ0MyIsIHRhZzIpOworCQlyZW1vdGUubGlnaHR3ZWlnaHRUYWcoInQzIiwgdGFnMyk7CisKKwkJVXBsb2FkUGFjayB1cGxvYWRQYWNrID0gbmV3IFVwbG9hZFBhY2socmVtb3RlLmdldFJlcG9zaXRvcnkoKSk7CisKKwkJQnl0ZUFycmF5T3V0cHV0U3RyZWFtIGNsaSA9IG5ldyBCeXRlQXJyYXlPdXRwdXRTdHJlYW0oKTsKKwkJUGFja2V0TGluZU91dCBjbGllbnRXYW50ID0gbmV3IFBhY2tldExpbmVPdXQoY2xpKTsKKwkJY2xpZW50V2FudC53cml0ZVN0cmluZygid2FudCAiICsgb25lLm5hbWUoKSArICIgaW5jbHVkZS10YWciKTsKKwkJY2xpZW50V2FudC53cml0ZVN0cmluZygiZGVlcGVuIDFcbiIpOworCQljbGllbnRXYW50LmVuZCgpOworCQljbGllbnRXYW50LndyaXRlU3RyaW5nKCJkb25lXG4iKTsKKworCQl0cnkgKEJ5dGVBcnJheU91dHB1dFN0cmVhbSBzZXJ2ZXJSZXNwb25zZSA9IG5ldyBCeXRlQXJyYXlPdXRwdXRTdHJlYW0oKSkgeworCisJCQl1cGxvYWRQYWNrLnNldFByZVVwbG9hZEhvb2sobmV3IFByZVVwbG9hZEhvb2soKSB7CisJCQkJQE92ZXJyaWRlCisJCQkJcHVibGljIHZvaWQgb25CZWdpbk5lZ290aWF0ZVJvdW5kKFVwbG9hZFBhY2sgdXAsCisJCQkJCQlDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3RJZD4gd2FudHMsIGludCBjbnRPZmZlcmVkKQorCQkJCQkJdGhyb3dzIFNlcnZpY2VNYXlOb3RDb250aW51ZUV4Y2VwdGlvbiB7CisJCQkJCS8vIERvIG5vdGhpbmcuCisJCQkJfQorCisJCQkJQE92ZXJyaWRlCisJCQkJcHVibGljIHZvaWQgb25FbmROZWdvdGlhdGVSb3VuZChVcGxvYWRQYWNrIHVwLAorCQkJCQkJQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0SWQ+IHdhbnRzLCBpbnQgY250Q29tbW9uLAorCQkJCQkJaW50IGNudE5vdEZvdW5kLCBib29sZWFuIHJlYWR5KQorCQkJCQkJdGhyb3dzIFNlcnZpY2VNYXlOb3RDb250aW51ZUV4Y2VwdGlvbiB7CisJCQkJCS8vIERvIG5vdGhpbmcuCisJCQkJfQorCisJCQkJQE92ZXJyaWRlCisJCQkJcHVibGljIHZvaWQgb25TZW5kUGFjayhVcGxvYWRQYWNrIHVwLAorCQkJCQkJQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0SWQ+IHdhbnRzLAorCQkJCQkJQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0SWQ+IGhhdmVzKQorCQkJCQkJdGhyb3dzIFNlcnZpY2VNYXlOb3RDb250aW51ZUV4Y2VwdGlvbiB7CisJCQkJCS8vIGNvbGxlY3QgcGFjayBkYXRhCisJCQkJCXNlcnZlclJlc3BvbnNlLnJlc2V0KCk7CisJCQkJfQorCQkJfSk7CisJCQl1cGxvYWRQYWNrLnVwbG9hZChuZXcgQnl0ZUFycmF5SW5wdXRTdHJlYW0oY2xpLnRvQnl0ZUFycmF5KCkpLAorCQkJCQlzZXJ2ZXJSZXNwb25zZSwgU3lzdGVtLmVycik7CisJCQlCeXRlQXJyYXlJbnB1dFN0cmVhbSBwYWNrUmVjZWl2ZWQgPSBuZXcgQnl0ZUFycmF5SW5wdXRTdHJlYW0oCisJCQkJCXNlcnZlclJlc3BvbnNlLnRvQnl0ZUFycmF5KCkpOworCQkJUGFja0xvY2sgbG9jayA9IG51bGw7CisJCQl0cnkgKE9iamVjdEluc2VydGVyIGlucyA9IGNsaWVudC5uZXdPYmplY3RJbnNlcnRlcigpKSB7CisJCQkJUGFja1BhcnNlciBwYXJzZXIgPSBpbnMubmV3UGFja1BhcnNlcihwYWNrUmVjZWl2ZWQpOworCQkJCXBhcnNlci5zZXRBbGxvd1RoaW4odHJ1ZSk7CisJCQkJcGFyc2VyLnNldExvY2tNZXNzYWdlKCJyZWNlaXZlLXRhZy1jaGFpbiIpOworCQkJCVByb2dyZXNzTW9uaXRvciBtbGMgPSBOdWxsUHJvZ3Jlc3NNb25pdG9yLklOU1RBTkNFOworCQkJCWxvY2sgPSBwYXJzZXIucGFyc2UobWxjLCBtbGMpOworCQkJCWlucy5mbHVzaCgpOworCQkJfSBmaW5hbGx5IHsKKwkJCQlpZiAobG9jayAhPSBudWxsKSB7CisJCQkJCWxvY2sudW5sb2NrKCk7CisJCQkJfQorCQkJfQorCQkJSW5NZW1vcnlSZXBvc2l0b3J5Lk1lbU9iakRhdGFiYXNlIG9iakRiID0gY2xpZW50CisJCQkJCS5nZXRPYmplY3REYXRhYmFzZSgpOworCQkJYXNzZXJ0VHJ1ZShvYmpEYi5oYXMob25lLnRvT2JqZWN0SWQoKSkpOworCQl9CisJfQorCisJQFRlc3QKIAlwdWJsaWMgdm9pZCB0ZXN0U2FmZVRvQ2xlYXJSZWZzSW5GZXRjaFYwKCkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAJCXNlcnZlciA9CiAJCQluZXcgUmVmQ2FsbHNDb3VudGluZ1JlcG9zaXRvcnkoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GU1Rlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC91dGlsL0ZTVGVzdC5qYXZhCmluZGV4IDhkZTdiYTYuLjE3MWQ4MGMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC91dGlsL0ZTVGVzdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC91dGlsL0ZTVGVzdC5qYXZhCkBAIC0xOSw3ICsxOSw2IEBACiAKIGltcG9ydCBqYXZhLmlvLkZpbGU7CiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKLWltcG9ydCBqYXZhLm5pby5jaGFyc2V0LkNoYXJzZXQ7CiBpbXBvcnQgamF2YS5uaW8uZmlsZS5GaWxlczsKIGltcG9ydCBqYXZhLm5pby5maWxlLkludmFsaWRQYXRoRXhjZXB0aW9uOwogaW1wb3J0IGphdmEubmlvLmZpbGUuUGF0aDsKQEAgLTE4Miw3ICsxODEsNyBAQCBwdWJsaWMgdm9pZCB0ZXN0UmVhZFBpcGVQb3NpeENvbW1hbmRGYWlsdXJlKCkKIAogCQlGUy5yZWFkUGlwZShmcy51c2VySG9tZSgpLAogCQkJCW5ldyBTdHJpbmdbXSB7ICIvYmluL3NoIiwgIi1jIiwgImV4aXQgMSIgfSwKLQkJCQlDaGFyc2V0LmRlZmF1bHRDaGFyc2V0KCkubmFtZSgpKTsKKwkJCQlTeXN0ZW1SZWFkZXIuZ2V0SW5zdGFuY2UoKS5nZXREZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSk7CiAJfQogCiAJQFRlc3QoZXhwZWN0ZWQgPSBDb21tYW5kRmFpbGVkRXhjZXB0aW9uLmNsYXNzKQpAQCAtMTkyLDcgKzE5MSw3IEBAIHB1YmxpYyB2b2lkIHRlc3RSZWFkUGlwZUNvbW1hbmRTdGFydEZhaWx1cmUoKQogCiAJCUZTLnJlYWRQaXBlKGZzLnVzZXJIb21lKCksCiAJCQkJICBuZXcgU3RyaW5nW10geyAidGhpcy1jb21tYW5kLWRvZXMtbm90LWV4aXN0IiB9LAotCQkJCSAgQ2hhcnNldC5kZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSk7CisJCQkJICBTeXN0ZW1SZWFkZXIuZ2V0SW5zdGFuY2UoKS5nZXREZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSk7CiAJfQogCiAJQFRlc3QKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC91dGlsL1N0cmluZ1V0aWxzVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvU3RyaW5nVXRpbHNUZXN0LmphdmEKaW5kZXggODJjMGFmZS4uYWE3MjQ3ZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvU3RyaW5nVXRpbHNUZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvU3RyaW5nVXRpbHNUZXN0LmphdmEKQEAgLTEyLDYgKzEyLDcgQEAKIAogaW1wb3J0IHN0YXRpYyBvcmcuanVuaXQuQXNzZXJ0LmFzc2VydEVxdWFsczsKIGltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRGYWxzZTsKK2ltcG9ydCBzdGF0aWMgb3JnLmp1bml0LkFzc2VydC5hc3NlcnRUaHJvd3M7CiBpbXBvcnQgc3RhdGljIG9yZy5qdW5pdC5Bc3NlcnQuYXNzZXJ0VHJ1ZTsKIAogaW1wb3J0IG9yZy5qdW5pdC5UZXN0OwpAQCAtNzAsNCArNzEsODYgQEAgcHVibGljIHZvaWQgdGVzdFJlcGxhY2VMaW5lQnJlYWtzKCkgewogCQlhc3NlcnRFcXVhbHMoImEgYiBjIGQiLAogCQkJCVN0cmluZ1V0aWxzLnJlcGxhY2VMaW5lQnJlYWtzV2l0aFNwYWNlKCJhXHJcbmJcbmMgZCIpKTsKIAl9CisKKwlAVGVzdAorCXB1YmxpYyB2b2lkIHRlc3RGb3JtYXRXaXRoU3VmZml4KCkgeworCQlhc3NlcnRFcXVhbHMoIjEwMjMiLCBTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDEwMjMpKTsKKwkJYXNzZXJ0RXF1YWxzKCIxayIsIFN0cmluZ1V0aWxzLmZvcm1hdFdpdGhTdWZmaXgoMTAyNCkpOworCQlhc3NlcnRFcXVhbHMoIjEwMjUiLCBTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDEwMjUpKTsKKwkJYXNzZXJ0RXF1YWxzKCIxMDQ4NTc1IiwgU3RyaW5nVXRpbHMuZm9ybWF0V2l0aFN1ZmZpeCgxMDI0ICogMTAyNCAtIDEpKTsKKwkJYXNzZXJ0RXF1YWxzKCIxbSIsIFN0cmluZ1V0aWxzLmZvcm1hdFdpdGhTdWZmaXgoMTAyNCAqIDEwMjQpKTsKKwkJYXNzZXJ0RXF1YWxzKCIxMDQ4NTc3IiwgU3RyaW5nVXRpbHMuZm9ybWF0V2l0aFN1ZmZpeCgxMDI0ICogMTAyNCArIDEpKTsKKwkJYXNzZXJ0RXF1YWxzKCIxMDczNzQxODIzIiwKKwkJCQlTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDEwMjQgKiAxMDI0ICogMTAyNCAtIDEpKTsKKwkJYXNzZXJ0RXF1YWxzKCIxZyIsIFN0cmluZ1V0aWxzLmZvcm1hdFdpdGhTdWZmaXgoMTAyNCAqIDEwMjQgKiAxMDI0KSk7CisJCWFzc2VydEVxdWFscygiMTA3Mzc0MTgyNSIsCisJCQkJU3RyaW5nVXRpbHMuZm9ybWF0V2l0aFN1ZmZpeCgxMDI0ICogMTAyNCAqIDEwMjQgKyAxKSk7CisJCWFzc2VydEVxdWFscygiM2siLCBTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDMgKiAxMDI0KSk7CisJCWFzc2VydEVxdWFscygiM20iLCBTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDMgKiAxMDI0ICogMTAyNCkpOworCQlhc3NlcnRFcXVhbHMoIjIwNTBrIiwKKwkJCQlTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDIgKiAxMDI0ICogMTAyNCArIDIwNDgpKTsKKwkJYXNzZXJ0RXF1YWxzKCIzZyIsCisJCQkJU3RyaW5nVXRpbHMuZm9ybWF0V2l0aFN1ZmZpeCgzTCAqIDEwMjQgKiAxMDI0ICogMTAyNCkpOworCQlhc3NlcnRFcXVhbHMoIjMwMDAiLCBTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDMwMDApKTsKKwkJYXNzZXJ0RXF1YWxzKCIzMDAwMDAwIiwgU3RyaW5nVXRpbHMuZm9ybWF0V2l0aFN1ZmZpeCgzXzAwMF8wMDApKTsKKwkJYXNzZXJ0RXF1YWxzKCIxOTUzMTI1ayIsIFN0cmluZ1V0aWxzLmZvcm1hdFdpdGhTdWZmaXgoMl8wMDBfMDAwXzAwMCkpOworCQlhc3NlcnRFcXVhbHMoIjIwMDAwMDAwMTAiLCBTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDJfMDAwXzAwMF8wMTApKTsKKwkJYXNzZXJ0RXF1YWxzKCIzMDAwMDAwMDAwIiwKKwkJCQlTdHJpbmdVdGlscy5mb3JtYXRXaXRoU3VmZml4KDNfMDAwXzAwMF8wMDBMKSk7CisJfQorCisJQFRlc3QKKwlwdWJsaWMgdm9pZCB0ZXN0UGFyc2VXaXRoU3VmZml4KCkgeworCQlhc3NlcnRFcXVhbHMoMTAyNCwgU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxayIsIHRydWUpKTsKKwkJYXNzZXJ0RXF1YWxzKDEwMjQsIFN0cmluZ1V0aWxzLnBhcnNlSW50V2l0aFN1ZmZpeCgiMSBrIiwgdHJ1ZSkpOworCQlhc3NlcnRFcXVhbHMoMTAyNCwgU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxICBrIiwgdHJ1ZSkpOworCQlhc3NlcnRFcXVhbHMoMTAyNCwgU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIgXHQxICBrICBcbiIsIHRydWUpKTsKKwkJYXNzZXJ0RXF1YWxzKDEwMjQsIFN0cmluZ1V0aWxzLnBhcnNlSW50V2l0aFN1ZmZpeCgiMWsiLCBmYWxzZSkpOworCQlhc3NlcnRFcXVhbHMoMTAyNCwgU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxSyIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygxMDI0ICogMTAyNCwgU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxbSIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygxMDI0ICogMTAyNCwgU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxTSIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygtMTAyNCAqIDEwMjQsCisJCQkJU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCItMU0iLCBmYWxzZSkpOworCQlhc3NlcnRFcXVhbHMoMV8wMDBfMDAwLAorCQkJCVN0cmluZ1V0aWxzLnBhcnNlSW50V2l0aFN1ZmZpeCgiICAxMDAwMDAwXHJcbiIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygxMDI0ICogMTAyNCAqIDEwMjQsCisJCQkJU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxZyIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygxMDI0ICogMTAyNCAqIDEwMjQsCisJCQkJU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIxRyIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygzTCAqIDEwMjQgKiAxMDI0ICogMTAyNCwKKwkJCQlTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIzZyIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygzTCAqIDEwMjQgKiAxMDI0ICogMTAyNCwKKwkJCQlTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIzRyIsIGZhbHNlKSk7CisJCWFzc2VydFRocm93cyhOdW1iZXJGb3JtYXRFeGNlcHRpb24uY2xhc3MsCisJCQkJKCkgLT4gU3RyaW5nVXRpbHMucGFyc2VJbnRXaXRoU3VmZml4KCIyRyIsIGZhbHNlKSk7CisJCWFzc2VydEVxdWFscygyTCAqIDEwMjQgKiAxMDI0ICogMTAyNCwKKwkJCQlTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIyRyIsIGZhbHNlKSk7CisJCWFzc2VydFRocm93cyhOdW1iZXJGb3JtYXRFeGNlcHRpb24uY2xhc3MsCisJCQkJKCkgLT4gU3RyaW5nVXRpbHMucGFyc2VMb25nV2l0aFN1ZmZpeCgiLTFtIiwgdHJ1ZSkpOworCQlhc3NlcnRUaHJvd3MoTnVtYmVyRm9ybWF0RXhjZXB0aW9uLmNsYXNzLAorCQkJCSgpIC0+IFN0cmluZ1V0aWxzLnBhcnNlTG9uZ1dpdGhTdWZmaXgoIi0xMDAwIiwgdHJ1ZSkpOworCQlhc3NlcnRUaHJvd3MoU3RyaW5nSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbi5jbGFzcywKKwkJCQkoKSAtPiBTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIiLCBmYWxzZSkpOworCQlhc3NlcnRUaHJvd3MoU3RyaW5nSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbi5jbGFzcywKKwkJCQkoKSAtPiBTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIgICBcdCAgIFxuIiwgZmFsc2UpKTsKKwkJYXNzZXJ0VGhyb3dzKFN0cmluZ0luZGV4T3V0T2ZCb3VuZHNFeGNlcHRpb24uY2xhc3MsCisJCQkJKCkgLT4gU3RyaW5nVXRpbHMucGFyc2VMb25nV2l0aFN1ZmZpeCgiayIsIGZhbHNlKSk7CisJCWFzc2VydFRocm93cyhTdHJpbmdJbmRleE91dE9mQm91bmRzRXhjZXB0aW9uLmNsYXNzLAorCQkJCSgpIC0+IFN0cmluZ1V0aWxzLnBhcnNlTG9uZ1dpdGhTdWZmaXgoIm0iLCBmYWxzZSkpOworCQlhc3NlcnRUaHJvd3MoU3RyaW5nSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbi5jbGFzcywKKwkJCQkoKSAtPiBTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCJnIiwgZmFsc2UpKTsKKwkJYXNzZXJ0VGhyb3dzKE51bWJlckZvcm1hdEV4Y2VwdGlvbi5jbGFzcywKKwkJCQkoKSAtPiBTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIxVCIsIGZhbHNlKSk7CisJCWFzc2VydFRocm93cyhOdW1iZXJGb3JtYXRFeGNlcHRpb24uY2xhc3MsCisJCQkJKCkgLT4gU3RyaW5nVXRpbHMucGFyc2VMb25nV2l0aFN1ZmZpeCgiMXQiLCBmYWxzZSkpOworCQlhc3NlcnRUaHJvd3MoTnVtYmVyRm9ybWF0RXhjZXB0aW9uLmNsYXNzLAorCQkJCSgpIC0+IFN0cmluZ1V0aWxzLnBhcnNlTG9uZ1dpdGhTdWZmaXgoIk5vbnVtYmVyIiwgZmFsc2UpKTsKKwkJYXNzZXJ0VGhyb3dzKE51bWJlckZvcm1hdEV4Y2VwdGlvbi5jbGFzcywKKwkJCQkoKSAtPiBTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KCIweDAwMWYiLCBmYWxzZSkpOworCQlhc3NlcnRUaHJvd3MoTnVtYmVyRm9ybWF0RXhjZXB0aW9uLmNsYXNzLAorCQkJCSgpIC0+IFN0cmluZ1V0aWxzLnBhcnNlTG9uZ1dpdGhTdWZmaXgoImJlZWYiLCBmYWxzZSkpOworCQlhc3NlcnRUaHJvd3MoTnVtYmVyRm9ybWF0RXhjZXB0aW9uLmNsYXNzLAorCQkJCSgpIC0+IFN0cmluZ1V0aWxzLnBhcnNlTG9uZ1dpdGhTdWZmaXgoIjgwMDAwMDAwMDAwMDAwMDAwMDBHIiwKKwkJCQkJCWZhbHNlKSk7CisJfQogfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZJbnB1dFN0cmVhbVRlc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9DUkxGSW5wdXRTdHJlYW1UZXN0LmphdmEKaW5kZXggYWU4YzdlYy4uOTQ0Mjk5MiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZJbnB1dFN0cmVhbVRlc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvdHN0L29yZy9lY2xpcHNlL2pnaXQvdXRpbC9pby9BdXRvQ1JMRklucHV0U3RyZWFtVGVzdC5qYXZhCkBAIC0xNyw2ICsxNyw3IEBACiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtOwogCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaWZmLlJhd1RleHQ7CiBpbXBvcnQgb3JnLmp1bml0LkFzc2VydDsKIGltcG9ydCBvcmcuanVuaXQuVGVzdDsKIApAQCAtMjksMTYgKzMwLDE3IEBAIHB1YmxpYyB2b2lkIHRlc3QoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlhc3NlcnROb0NyTGYoIlxyXG4iLCAiXG4iKTsKIAkJYXNzZXJ0Tm9DckxmKCJcclxuIiwgIlxyXG4iKTsKIAkJYXNzZXJ0Tm9DckxmKCJcclxyIiwgIlxyXHIiKTsKLQkJYXNzZXJ0Tm9DckxmKCJcclxuXHIiLCAiXG5cciIpOworCQlhc3NlcnROb0NyTGYoIlxuXHIiLCAiXG5cciIpOyAvLyBMb25lIENSCiAJCWFzc2VydE5vQ3JMZigiXHJcblxyXHIiLCAiXHJcblxyXHIiKTsKIAkJYXNzZXJ0Tm9DckxmKCJcclxuXHJcbiIsICJcclxuXHJcbiIpOwotCQlhc3NlcnROb0NyTGYoIlxyXG5cclxuXHIiLCAiXG5cclxuXHIiKTsKKwkJYXNzZXJ0Tm9DckxmKCJcblxyXG5cciIsICJcblxyXG5cciIpOyAvLyBMb25lIENSCiAJCWFzc2VydE5vQ3JMZigiXDBcbiIsICJcMFxuIik7CiAJfQogCiAJQFRlc3QKIAlwdWJsaWMgdm9pZCB0ZXN0Qm91bmRhcnkoKSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQlmb3IgKGludCBpID0gQXV0b0NSTEZJbnB1dFN0cmVhbS5CVUZGRVJfU0laRSAtIDEwOyBpIDwgQXV0b0NSTEZJbnB1dFN0cmVhbS5CVUZGRVJfU0laRSArIDEwOyBpKyspIHsKKwkJaW50IGJvdW5kYXJ5ID0gUmF3VGV4dC5nZXRCdWZmZXJTaXplKCk7CisJCWZvciAoaW50IGkgPSBib3VuZGFyeSAtIDEwOyBpIDwgYm91bmRhcnkgKyAxMDsgaSsrKSB7CiAJCQlTdHJpbmcgczEgPSBTdHJpbmdzLnJlcGVhdCgiYSIsIGkpOwogCQkJYXNzZXJ0Tm9DckxmKHMxLCBzMSk7CiAJCQlTdHJpbmcgczIgPSBTdHJpbmdzLnJlcGVhdCgiXDAiLCBpKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudGVzdC90c3Qvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9DUkxGT3V0cHV0U3RyZWFtVGVzdC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZPdXRwdXRTdHJlYW1UZXN0LmphdmEKaW5kZXggODVjZTUzOC4uNzkxNzI3ZiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZPdXRwdXRTdHJlYW1UZXN0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC50ZXN0L3RzdC9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZPdXRwdXRTdHJlYW1UZXN0LmphdmEKQEAgLTE5LDYgKzE5LDcgQEAKIGltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtOwogaW1wb3J0IGphdmEuaW8uT3V0cHV0U3RyZWFtOwogCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaWZmLlJhd1RleHQ7CiBpbXBvcnQgb3JnLmp1bml0LkFzc2VydDsKIGltcG9ydCBvcmcuanVuaXQuVGVzdDsKIApAQCAtMzEsMTYgKzMyLDE3IEBAIHB1YmxpYyB2b2lkIHRlc3QoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlhc3NlcnROb0NyTGYoIlxyXG4iLCAiXG4iKTsKIAkJYXNzZXJ0Tm9DckxmKCJcclxuIiwgIlxyXG4iKTsKIAkJYXNzZXJ0Tm9DckxmKCJcclxyIiwgIlxyXHIiKTsKLQkJYXNzZXJ0Tm9DckxmKCJcclxuXHIiLCAiXG5cciIpOworCQlhc3NlcnROb0NyTGYoIlxuXHIiLCAiXG5cciIpOyAvLyBMb25lIENSCiAJCWFzc2VydE5vQ3JMZigiXHJcblxyXHIiLCAiXHJcblxyXHIiKTsKIAkJYXNzZXJ0Tm9DckxmKCJcclxuXHJcbiIsICJcclxuXHJcbiIpOwotCQlhc3NlcnROb0NyTGYoIlxyXG5cclxuXHIiLCAiXG5cclxuXHIiKTsKKwkJYXNzZXJ0Tm9DckxmKCJcblxyXG5cciIsICJcblxyXG5cciIpOwogCQlhc3NlcnROb0NyTGYoIlwwXG4iLCAiXDBcbiIpOwogCX0KIAogCUBUZXN0CiAJcHVibGljIHZvaWQgdGVzdEJvdW5kYXJ5KCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJZm9yIChpbnQgaSA9IEF1dG9DUkxGT3V0cHV0U3RyZWFtLkJVRkZFUl9TSVpFIC0gMTA7IGkgPCBBdXRvQ1JMRk91dHB1dFN0cmVhbS5CVUZGRVJfU0laRSArIDEwOyBpKyspIHsKKwkJaW50IGJ1ZmZlclNpemUgPSBSYXdUZXh0LmdldEJ1ZmZlclNpemUoKTsKKwkJZm9yIChpbnQgaSA9IGJ1ZmZlclNpemUgLSAxMDsgaSA8IGJ1ZmZlclNpemUgKyAxMDsgaSsrKSB7CiAJCQlTdHJpbmcgczEgPSBTdHJpbmdzLnJlcGVhdCgiYSIsIGkpOwogCQkJYXNzZXJ0Tm9DckxmKHMxLCBzMSk7CiAJCQlTdHJpbmcgczIgPSBTdHJpbmdzLnJlcGVhdCgiXDAiLCBpKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudWkvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLmpnaXQudWkvLmNsYXNzcGF0aAppbmRleCAxMTAxNjhmLi4xZmRlMzE4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnVpLy5jbGFzc3BhdGgKKysrIGIvb3JnLmVjbGlwc2UuamdpdC51aS8uY2xhc3NwYXRoCkBAIC0xLDYgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CiA8Y2xhc3NwYXRoPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0icmVzb3VyY2VzIi8+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLmpnaXQudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCmluZGV4IDlmZDkyYjEuLjA4NTdiYzEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC03LDkgKzcsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5udWxsYW5hbHlzaXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5tZXRob2RQYXJhbWV0ZXJzPWRvIG5vdCBnZW5lcmF0ZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjgKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCkBAIC0yNCw2ICsyNCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbmFibGVQcmV2aWV3RmVhdHVyZXM9ZGlzYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZXhwbGljaXRseUNsb3NlZEF1dG9DbG9zZWFibGU9d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9d2FybmluZwpAQCAtODAsNiArODEsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVBvdGVudGlhbGx5U3RhdGljPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZXBvcnRNZXRob2RDYW5CZVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0UHJldmlld0ZlYXR1cmVzPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3BlY2lhbFBhcmFtZXRlckhpZGluZ0ZpZWxkPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN0YXRpY0FjY2Vzc1JlY2VpdmVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKQEAgLTExMiwzNCArMTE0LDY2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFR5cGVQYXJhbWV0ZXI9aWdub3JlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PWVycm9yCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5yZWxlYXNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xMQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2Fzc2lnbm1lbnRfc3RhdGVtZW50c19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fZmllbGRzX2dyb3VwaW5nX2JsYW5rX2xpbmVzPTIxNDc0ODM2NDcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl90eXBlX21lbWJlcnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fd2l0aF9zcGFjZXM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9sb2NhbF92YXJpYWJsZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlPTQ5CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYXJhbWV0ZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fdHlwZT00OQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2Fubm90YXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQ9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9leHBsaWNpdF9jb25zdHJ1Y3Rvcl9jYWxsPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9xdWFsaWZpZWRfYWxsb2NhdGlvbl9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NlcnRpb25fbWVzc2FnZT0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hc3NpZ25tZW50PTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2JpbmFyeV9leHByZXNzaW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaXR3aXNlX29wZXJhdG9yPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2xvb3BzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uPTgwCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXI9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbG9naWNhbF9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX21ldGhvZF9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVjb3JkX2NvbXBvbmVudHM9MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3I9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcmVzb3VyY2VzX2luX3RyeT04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NoaWZ0X29wZXJhdG9yPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N0cmluZ19jb25jYXRlbmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl9lbnVtX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fdHlwZV9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdGhyb3dzX2NsYXVzZV9pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYW5ub3RhdGlvbnM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9hcmd1bWVudHM9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfdHlwZV9wYXJhbWV0ZXJzPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3VuaW9uX3R5cGVfaW5fbXVsdGljYXRjaD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2xhc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfcGFja2FnZT0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfZmlyc3RfY2xhc3NfYm9keV9kZWNsYXJhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ltcG9ydHM9MQpAQCAtMTQ4LDYgKzE4Miw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuaz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5faW1wb3J0X2dyb3Vwcz0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl9zdGF0ZW1lbnRfZ3JvdXBfaW5fc3dpdGNoPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3R5cGVfZGVjbGFyYXRpb25zPTEKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCkBAIC0xNTcsMTIgKzE5MiwxOCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2NvbnN0YW50PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbGFtYmRhX2JvZHk9ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfbWV0aG9kX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3Rvcj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfZGVzY3JpcHRpb25zX2dyb3VwZWQ9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmFsaWduX3RhZ3NfbmFtZXNfZGVzY3JpcHRpb25zPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lcz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50PWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfYmxvY2tfY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9oZWFkZXI9ZmFsc2UKQEAgLTE3Miw3ICsyMTMsOSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3Jvb3RfdGFncz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfdGFnX2Rlc2NyaXB0aW9uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZXR3ZWVuX2RpZmZlcmVudF90YWdzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGg9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzPXRydWUKQEAgLTE4NCwxMCArMjI3LDExIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZGlzYWJsaW5nX3RhZz1AZm9ybWF0dGVyXDpvZmYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWc9QGZvcm1hdHRlclw6b24KIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lPWZhbHNlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2xpbmVfY29tbWVudF9zdGFydGluZ19vbl9maXJzdF9jb2x1bW49dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fYW5ub3RhdGlvbl9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2VudW1fY29uc3RhbnRfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2RlY2xhcmF0aW9uX2hlYWRlcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fdHlwZV9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzPWZhbHNlCkBAIC0xOTcsMTUgKzI0MSwxNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zd2l0Y2hzdGF0ZW1lbnRzX2NvbXBhcmVfdG9fc3dpdGNoPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZT00CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9maWVsZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9sb2NhbF92YXJpYWJsZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9tZW1iZXI9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2U9aW5zZXJ0Ci1vcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fdHlwZT1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWw9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50PWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMjE5LDExICsyNjUsMTUgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfbWV0aG9kX2JvZHk9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXI9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXNzaWdubWVudF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpbmFyeV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrPWluc2VydApAQCAtMjQ5LDEwICsyOTksMTYgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9sb2NhbF9kZWNsYXJhdGlvbnM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbm90X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTI2OSw2ICszMjUsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTI3NywxMyArMzM0LDIwIEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZD1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3VuYXJ5X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2Nhc2U9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfZGVmYXVsdD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzAwLDYgKzM2NCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fdHJ5PWRvIG5vdCBpbnNlcnQKQEAgLTMyNiwxMCArMzkxLDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fcmVjb3JkX2NvbXBvbmVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9lbGxpcHNpcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sYW1iZGFfYXJyb3c9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZT1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0zNDEsNiArNDExLDggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfY29uc3RydWN0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CkBAIC0zNTYsNiArNDI4LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zd2l0Y2g9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fdHJ5PWluc2VydApAQCAtMzY2LDkgKzQzOSwxMiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcHJlZml4X29wZXJhdG9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbl9pbl90cnlfcmVzb3VyY2VzPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNlc19pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CkBAIC0zODAsMjAgKzQ1Niw2MyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl9saW5lc19pbl9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fubm90YXRpb25fZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbnVtX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2ltcGxlX2lmX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9sYW1iZGFfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2NvbnN0cnVjdG9yX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfZGVjbGFyYXRpb25fb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9kb193aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2Zvcl9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2dldHRlcl9zZXR0ZXJfb25fb25lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZT1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90eXBlX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0PTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9saW5lX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hZnRlcl9jb2RlX2Jsb2NrPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX2NvZGVfYmxvY2s9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9tZXRob2RfYm9keT0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2JlZm9yZV9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfZW1wdHlfbGluZXNfdG9fcHJlc2VydmU9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9hbm5vdGF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2U9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2Zvcl9zdGF0bWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5faWZfd2hpbGVfc3RhdGVtZW50PWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9sYW1iZGFfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbWV0aG9kX2ludm9jYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3JlY29yZF9kZWNsYXJhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fc3dpdGNoX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fdHJ5X2NsYXVzZT1jb21tb25fbGluZXMKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wdXRfZW1wdHlfc3RhdGVtZW50X29uX25ld19saW5lPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXI9dGFiCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplPTQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50ZXh0X2Jsb2NrX2luZGVudGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3M9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnVzZV90YWJzX29ubHlfZm9yX2xlYWRpbmdfaW5kZW50YXRpb25zPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2Fzc2VydGlvbl9tZXNzYWdlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9iaXR3aXNlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX29yX29wZXJhdG9yX211bHRpY2F0Y2g9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9vdXRlcl9leHByZXNzaW9uc193aGVuX25lc3RlZD10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0LnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMgYi9vcmcuZWNsaXBzZS5qZ2l0LnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKaW5kZXggZmVmMzcxMy4uNWNmYjhiNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCisrKyBiL29yZy5lY2xpcHNlLmpnaXQudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcwpAQCAtMSw3ICsxLDcgQEAKIGVjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCiBlZGl0b3Jfc2F2ZV9wYXJ0aWNpcGFudF9vcmcuZWNsaXBzZS5qZHQudWkucG9zdHNhdmVsaXN0ZW5lci5jbGVhbnVwPXRydWUKIGZvcm1hdHRlcl9wcm9maWxlPV9KR2l0IEZvcm1hdAotZm9ybWF0dGVyX3NldHRpbmdzX3ZlcnNpb249MTIKK2Zvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTIxCiBvcmcuZWNsaXBzZS5qZHQudWkuaWdub3JlbG93ZXJjYXNlbmFtZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LnVpLmltcG9ydG9yZGVyPWphdmE7amF2YXg7b3JnO2NvbTsKIG9yZy5lY2xpcHNlLmpkdC51aS5vbmRlbWFuZHRocmVzaG9sZD05OQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC51aS9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLmpnaXQudWkvTUVUQS1JTkYvTUFOSUZFU1QuTUYKaW5kZXggYTBmZDIzYS4uNTdhOGJlZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC51aS9NRVRBLUlORi9NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnVpL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC00LDE0ICs0LDE0IEBACiBCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCiBBdXRvbWF0aWMtTW9kdWxlLU5hbWU6IG9yZy5lY2xpcHNlLmpnaXQudWkKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQudWkKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCitCdW5kbGUtVmVyc2lvbjogNi4wLjEucXVhbGlmaWVyCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgotQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEphdmFTRS0xLjgKLUV4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmF3dHVpO3ZlcnNpb249IjUuMTMuMyIKLUltcG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249Ils1LjEzLjMsNS4xNC4wKSIsCi0gb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldnBsb3Q7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGs7dmVyc2lvbj0iWzUuMTMuMyw1LjE0LjApIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNS4xMy4zLDUuMTQuMCkiCitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTExCitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5hd3R1aTt2ZXJzaW9uPSI2LjAuMSIKK0ltcG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lm5sczt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnJldnBsb3Q7dmVyc2lvbj0iWzYuMC4xLDYuMS4wKSIsCisgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249Ils2LjAuMSw2LjEuMCkiLAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSJbNi4wLjEsNi4xLjApIgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC51aS9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0LnVpL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgppbmRleCBjYzlmMjMwLi4zMzVjMTU3IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnVpL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgorKysgYi9vcmcuZWNsaXBzZS5qZ2l0LnVpL01FVEEtSU5GL1NPVVJDRS1NQU5JRkVTVC5NRgpAQCAtMyw1ICszLDUgQEAKIEJ1bmRsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0LnVpIC0gU291cmNlcwogQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UuamdpdC51aS5zb3VyY2UKIEJ1bmRsZS1WZW5kb3I6IEVjbGlwc2Uub3JnIC0gSkdpdAotQnVuZGxlLVZlcnNpb246IDUuMTMuMy5xdWFsaWZpZXIKLUVjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0LnVpO3ZlcnNpb249IjUuMTMuMy5xdWFsaWZpZXIiO3Jvb3RzPSIuIgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgorRWNsaXBzZS1Tb3VyY2VCdW5kbGU6IG9yZy5lY2xpcHNlLmpnaXQudWk7dmVyc2lvbj0iNi4wLjEucXVhbGlmaWVyIjtyb290cz0iLiIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQudWkvcG9tLnhtbCBiL29yZy5lY2xpcHNlLmpnaXQudWkvcG9tLnhtbAppbmRleCBhOThiNjAzLi5jNGEzZTJhIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0LnVpL3BvbS54bWwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC51aS9wb20ueG1sCkBAIC0xOSw3ICsxOSw3IEBACiAgIDxwYXJlbnQ+CiAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamdpdDwvZ3JvdXBJZD4KICAgICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj41LjEzLjMtU05BUFNIT1Q8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+Ni4wLjEtU05BUFNIT1Q8L3ZlcnNpb24+CiAgIDwvcGFyZW50PgogCiAgIDxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLmpnaXQudWk8L2FydGlmYWN0SWQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5qZ2l0Ly5jbGFzc3BhdGgKaW5kZXggY2ZjZjI0YS4uMTM5YTA1OSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC8uY2xhc3NwYXRoCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvLmNsYXNzcGF0aApAQCAtMiw3ICsyLDExIEBACiA8Y2xhc3NwYXRoPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYyIvPgogCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InJlc291cmNlcyIvPgotCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTEuOCIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSmF2YVNFLTExIj4KKwkJPGF0dHJpYnV0ZXM+CisJCQk8YXR0cmlidXRlIG5hbWU9Im1vZHVsZSIgdmFsdWU9InRydWUiLz4KKwkJPC9hdHRyaWJ1dGVzPgorCTwvY2xhc3NwYXRoZW50cnk+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CiAJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0iYmluIi8+CiA8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKaW5kZXggYmM3YmExZS4uMmFiZTk1MiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKKysrIGIvb3JnLmVjbGlwc2UuamdpdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTcsOSArNyw5IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1lbmFibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4ubWV0aG9kUGFyYW1ldGVycz1kbyBub3QgZ2VuZXJhdGUKLW9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS44CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTExCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCi1vcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xMQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQpAQCAtMjQsNiArMjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZXByZWNhdGlvbldoZW5PdmVycmlkaW5nRGVwcmVjYXRlZE1ldGhvZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kaXNjb3VyYWdlZFJlZmVyZW5jZT13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVtcHR5U3RhdGVtZW50PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW5hYmxlUHJldmlld0ZlYXR1cmVzPWRpc2FibGVkCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPXdhcm5pbmcKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmFsbHRocm91Z2hDYXNlPXdhcm5pbmcKQEAgLTgwLDYgKzgxLDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50U3VwZXJpbnRlcmZhY2U9ZXJyb3IKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlcG9ydFByZXZpZXdGZWF0dXJlcz13YXJuaW5nCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj1lcnJvcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdXBwcmVzc09wdGlvbmFsRXJyb3JzPWRpc2FibGVkCkBAIC0xMTIsMzQgKzExNCw2NiBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRUeXBlUGFyYW1ldGVyPWlnbm9yZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRXYXJuaW5nVG9rZW49d2FybmluZwogb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS52YXJhcmdzQXJndW1lbnROZWVkQ2FzdD1lcnJvcgotb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuOAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucmVsZWFzZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9hc3NpZ25tZW50X3N0YXRlbWVudHNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX2ZpZWxkc19ncm91cGluZ19ibGFua19saW5lcz0yMTQ3NDgzNjQ3CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnM9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl92YXJpYWJsZV9kZWNsYXJhdGlvbnNfb25fY29sdW1ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3dpdGhfc3BhY2VzPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hZGRpdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fZW51bV9jb25zdGFudD0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9maWVsZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGU9NDkKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX21ldGhvZD00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFja2FnZT00OQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGU9NDkKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbGxvY2F0aW9uX2V4cHJlc3Npb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50PTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fZXhwbGljaXRfY29uc3RydWN0b3JfY2FsbD0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzZXJ0aW9uX21lc3NhZ2U9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9iaW5hcnlfZXhwcmVzc2lvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvcj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9sb29wcz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbj04MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29uZGl0aW9uYWxfZXhwcmVzc2lvbl9jaGFpbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9lbnVtX2NvbnN0YW50cz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZXhwcmVzc2lvbnNfaW5fZm9yX2xvb3BfaGVhZGVyPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3I9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tb2R1bGVfc3RhdGVtZW50cz0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGVfZmllbGRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsaWNhdGl2ZV9vcGVyYXRvcj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZXM9MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb249MTYKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9yZWxhdGlvbmFsX29wZXJhdG9yPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnk9ODAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zaGlmdF9vcGVyYXRvcj0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJjbGFzc19pbl90eXBlX2RlY2xhcmF0aW9uPTE2CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbj0xNgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3JlY29yZF9kZWNsYXJhdGlvbj0xNgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc3VwZXJpbnRlcmZhY2VzX2luX3R5cGVfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb249MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uPTE2CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzPTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2g9MTYKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9pbXBvcnRzPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9sYXN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2U9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9hYnN0cmFjdF9tZXRob2Q9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZD0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpcnN0X2NsYXNzX2JvZHlfZGVjbGFyYXRpb249MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzPTEKQEAgLTE0OCw2ICsxODIsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9uZXdfY2h1bms9MQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9wYWNrYWdlPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHM9MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JldHdlZW5fc3RhdGVtZW50X2dyb3VwX2luX3N3aXRjaD0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucz0xCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQpAQCAtMTU3LDEyICsxOTIsMTggQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfY29uc3RydWN0b3JfZGVjbGFyYXRpb249ZW5kX29mX2xpbmUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5PWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbj1lbmRfb2ZfbGluZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9yZWNvcmRfY29uc3RydWN0b3I9ZW5kX29mX2xpbmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3N3aXRjaD1lbmRfb2ZfbGluZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uPWVuZF9vZl9saW5lCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX25hbWVzX2Rlc2NyaXB0aW9ucz1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXM9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQ9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2phdmFkb2NfY29tbWVudD1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY291bnRfbGluZV9sZW5ndGhfZnJvbV9zdGFydGluZ19wb3NpdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9jb21tZW50cz10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfaGVhZGVyPWZhbHNlCkBAIC0xNzIsNyArMjEzLDkgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9zb3VyY2VfY29kZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcGFyYW1ldGVyX2Rlc2NyaXB0aW9uPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3M9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9yb290X3RhZ3M9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoPTgwCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfYmxvY2tfYm91bmRhcmllcz10cnVlCkBAIC0xODQsMTAgKzIyNywxMSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmRpc2FibGluZ190YWc9QGZvcm1hdHRlclw6b2ZmCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZW5hYmxpbmdfdGFnPUBmb3JtYXR0ZXJcOm9uCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZT1mYWxzZQotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfbGluZV9jb21tZW50X3N0YXJ0aW5nX29uX2ZpcnN0X2NvbHVtbj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlcj10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXI9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3JlY29yZF9oZWFkZXI9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYnJlYWtzX2NvbXBhcmVfdG9fY2FzZXM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9lbXB0eV9saW5lcz1mYWxzZQpAQCAtMTk3LDE1ICsyNDEsMTcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaD1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudGF0aW9uLnNpemU9NAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fZmllbGQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWVtYmVyPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21ldGhvZD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYWNrYWdlPWluc2VydAotb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXI9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGU9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2xhYmVsPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX3R5cGVfYW5ub3RhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2F0X2VuZF9vZl9maWxlX2lmX21pc3Npbmc9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2F0Y2hfaW5fdHJ5X3N0YXRlbWVudD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyPWRvIG5vdCBpbnNlcnQKQEAgLTIxOSwxMSArMjY1LDE1IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5PWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV90eXBlX2RlY2xhcmF0aW9uPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hcnJvd19pbl9zd2l0Y2hfY2FzZT1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaW5hcnlfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2JpdHdpc2Vfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19icmFjZV9pbl9ibG9jaz1pbnNlcnQKQEAgLTI0OSwxMCArMjk5LDE2IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fc3VwZXJpbnRlcmZhY2VzPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHM9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycz1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfZWxsaXBzaXM9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2xhbWJkYV9hcnJvdz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycz1kbyBub3QgaW5zZXJ0CkBAIC0yNjksNiArMzI1LDcgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb249ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0yNzcsMTMgKzMzNCwyMCBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wcmVmaXhfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcXVlc3Rpb25faW5fd2lsZGNhcmQ9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9yZWxhdGlvbmFsX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fZm9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2hpZnRfb3BlcmF0b3I9aW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hZGRpdGl2ZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FuZF9pbl90eXBlX3BhcmFtZXRlcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9jYXNlPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hc3NpZ25tZW50X29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYmluYXJ5X29wZXJhdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzPWRvIG5vdCBpbnNlcnQKQEAgLTMwMCw2ICszNjQsNyBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbj1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3JlY29yZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZD1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeT1kbyBub3QgaW5zZXJ0CkBAIC0zMjYsMTAgKzM5MSwxNSBAQAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cz1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXM9ZG8gbm90IGluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93PWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbG9naWNhbF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2U9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnM9ZG8gbm90IGluc2VydApAQCAtMzQxLDYgKzQxMSw4IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fY29uc3RhbnQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fcmVjb3JkX2NvbnN0cnVjdG9yPWluc2VydAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb249aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3N3aXRjaD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbj1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb249ZG8gbm90IGluc2VydApAQCAtMzU2LDYgKzQyOCw3IEBACiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQ9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeT1pbnNlcnQKQEAgLTM2Niw5ICs0MzksMTIgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl9jb25kaXRpb25hbD1pbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3F1ZXN0aW9uX2luX3dpbGRjYXJkPWRvIG5vdCBpbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3JlbGF0aW9uYWxfb3BlcmF0b3I9aW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2Zvcj1kbyBub3QgaW5zZXJ0CiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcz1kbyBub3QgaW5zZXJ0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj1pbnNlcnQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uPWluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfdW5hcnlfb3BlcmF0b3I9ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2JyYWNrZXRzX2luX2FycmF5X3R5cGVfcmVmZXJlbmNlPWRvIG5vdCBpbnNlcnQKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9icmFjZXNfaW5fYXJyYXlfaW5pdGlhbGl6ZXI9ZG8gbm90IGluc2VydApAQCAtMzgwLDIwICs0NTYsNjMgQEAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2ludm9jYXRpb249ZG8gbm90IGluc2VydAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fbGluZXNfaW5fY29tbWVudHM9dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmpvaW5fd3JhcHBlZF9saW5lcz10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfY29kZV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZWxzZV9zdGF0ZW1lbnRfb25fc2FtZV9saW5lPWZhbHNlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbXB0eV9hcnJheV9pbml0aWFsaXplcl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9jb25zdGFudF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW51bV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaWZfdGhlbl9ib2R5X2Jsb2NrX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2xvb3BfYm9keV9ibG9ja19vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbWV0aG9kX2JvZHlfb25fb25lX2xpbmU9b25lX2xpbmVfbmV2ZXIKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9jb25zdHJ1Y3Rvcl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfcmVjb3JkX2RlY2xhcmF0aW9uX29uX29uZV9saW5lPW9uZV9saW5lX25ldmVyCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZG9fd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9mb3JfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV9nZXR0ZXJfc2V0dGVyX29uX29uZV9saW5lPWZhbHNlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfd2hpbGVfYm9keV9vbl9zYW1lX2xpbmU9ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3RoZW5fc3RhdGVtZW50X29uX3NhbWVfbGluZT1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdHlwZV9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZT1vbmVfbGluZV9uZXZlcgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdD04MAogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW49ZmFsc2UKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jaz0wCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrPTAKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5PTAKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfZW5kX29mX2NvZGVfYmxvY2s9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHk9MAorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jaz0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbj1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fY2F0Y2hfY2xhdXNlPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudD1jb21tb25fbGluZXMKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfZGVsY2FyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9pbnZvY2F0aW9uPWNvbW1vbl9saW5lcworb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb249Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQ9Y29tbW9uX2xpbmVzCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3RyeV9jbGF1c2U9Y29tbW9uX2xpbmVzCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZT10cnVlCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5jaGFyPXRhYgogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uc2l6ZT00CitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGV4dF9ibG9ja19pbmRlbnRhdGlvbj0wCiBvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX29uX29mZl90YWdzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucz1mYWxzZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9hc3NlcnRpb25fbWVzc2FnZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvcj1mYWxzZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYml0d2lzZV9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfY29uZGl0aW9uYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2xvZ2ljYWxfb3BlcmF0b3I9dHJ1ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yPXRydWUKIG9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9vcl9vcGVyYXRvcl9tdWx0aWNhdGNoPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yPXRydWUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9zaGlmdF9vcGVyYXRvcj10cnVlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfc3RyaW5nX2NvbmNhdGVuYXRpb249dHJ1ZQogb3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfb3V0ZXJfZXhwcmVzc2lvbnNfd2hlbl9uZXN0ZWQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzIGIvb3JnLmVjbGlwc2UuamdpdC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LnVpLnByZWZzCmluZGV4IGZlZjM3MTMuLjVjZmI4YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC51aS5wcmVmcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQudWkucHJlZnMKQEAgLTEsNyArMSw3IEBACiBlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQogZWRpdG9yX3NhdmVfcGFydGljaXBhbnRfb3JnLmVjbGlwc2UuamR0LnVpLnBvc3RzYXZlbGlzdGVuZXIuY2xlYW51cD10cnVlCiBmb3JtYXR0ZXJfcHJvZmlsZT1fSkdpdCBGb3JtYXQKLWZvcm1hdHRlcl9zZXR0aW5nc192ZXJzaW9uPTEyCitmb3JtYXR0ZXJfc2V0dGluZ3NfdmVyc2lvbj0yMQogb3JnLmVjbGlwc2UuamR0LnVpLmlnbm9yZWxvd2VyY2FzZW5hbWVzPXRydWUKIG9yZy5lY2xpcHNlLmpkdC51aS5pbXBvcnRvcmRlcj1qYXZhO2phdmF4O29yZztjb207CiBvcmcuZWNsaXBzZS5qZHQudWkub25kZW1hbmR0aHJlc2hvbGQ9OTkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5qZ2l0L01FVEEtSU5GL01BTklGRVNULk1GCmluZGV4IDRmMjc1ZjkuLjg3YjU4ZTEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvTUVUQS1JTkYvTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMywxMiArMywxMiBAQAogQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQogQXV0b21hdGljLU1vZHVsZS1OYW1lOiBvcmcuZWNsaXBzZS5qZ2l0CiBCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5qZ2l0Ci1CdW5kbGUtVmVyc2lvbjogNS4xMy4zLnF1YWxpZmllcgorQnVuZGxlLVZlcnNpb246IDYuMC4xLnF1YWxpZmllcgogQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCiBCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgogRWNsaXBzZS1FeHRlbnNpYmxlQVBJOiB0cnVlCi1FeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSI1LjEzLjMiLAotIG9yZy5lY2xpcHNlLmpnaXQuYXBpO3ZlcnNpb249IjUuMTMuMyI7CitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9uczt2ZXJzaW9uPSI2LjAuMSIsCisgb3JnLmVjbGlwc2UuamdpdC5hcGk7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lm5vdGVzLAogICAgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZSwKQEAgLTIzLDE4ICsyMywxOCBAQAogICAgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLmZpbHRlciwKICAgIG9yZy5lY2xpcHNlLmpnaXQuYmxhbWUsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lm1lcmdlIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnM7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnM7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycyIsCi0gb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC50cmVld2FsayIsCi0gb3JnLmVjbGlwc2UuamdpdC5ibGFtZTt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuYmxhbWU7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGssCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLmZpbHRlciwKICAgIG9yZy5lY2xpcHNlLmpnaXQuZGlmZiIsCi0gb3JnLmVjbGlwc2UuamdpdC5kaWZmO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5kaWZmO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC5hdHRyaWJ1dGVzLAogICAgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLApAQCAtNDIsNDQgKzQyLDQ0IEBACiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLmZpbHRlciwKICAgIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGssCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwiLAotIG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGU7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQuZXZlbnRzLAogICAgb3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmF0dHJpYnV0ZXMsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLAogICAgb3JnLmVjbGlwc2UuamdpdC51dGlsIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmVycm9yczt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LAogICAgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZSwKICAgIG9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnBhY2siLAotIG9yZy5lY2xpcHNlLmpnaXQuZXZlbnRzO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5ldmVudHM7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIiLAotIG9yZy5lY2xpcHNlLmpnaXQuZm5tYXRjaDt2ZXJzaW9uPSI1LjEzLjMiLAotIG9yZy5lY2xpcHNlLmpnaXQuZ2l0cmVwbzt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuZm5tYXRjaDt2ZXJzaW9uPSI2LjAuMSIsCisgb3JnLmVjbGlwc2UuamdpdC5naXRyZXBvO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy54bWwuc2F4LmhlbHBlcnMsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmFwaSwKICAgIG9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLAogICAgb3JnLnhtbC5zYXgiLAotIG9yZy5lY2xpcHNlLmpnaXQuZ2l0cmVwby5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiO3gtaW50ZXJuYWw6PXRydWUsCi0gb3JnLmVjbGlwc2UuamdpdC5ob29rczt2ZXJzaW9uPSI1LjEzLjMiO3VzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0LmxpYiIsCi0gb3JnLmVjbGlwc2UuamdpdC5pZ25vcmU7dmVyc2lvbj0iNS4xMy4zIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lmlnbm9yZS5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuZ2l0cmVwby5pbnRlcm5hbDt2ZXJzaW9uPSI2LjAuMSI7eC1pbnRlcm5hbDo9dHJ1ZSwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmhvb2tzO3ZlcnNpb249IjYuMC4xIjt1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIiLAorIG9yZy5lY2xpcHNlLmpnaXQuaWdub3JlO3ZlcnNpb249IjYuMC4xIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lmlnbm9yZS5pbnRlcm5hbDt2ZXJzaW9uPSI2LjAuMSI7CiAgIHgtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQudGVzdCIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWw7dmVyc2lvbj0iNi4wLjEiOwogICB4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0LnRlc3QsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdCIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5mc2NrO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5mc2NrO3ZlcnNpb249IjYuMC4xIjsKICAgeC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC50ZXN0IiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnJldndhbGs7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnJldndhbGs7dmVyc2lvbj0iNi4wLjEiOwogICB4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0LnRlc3QiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5kZnM7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZGZzO3ZlcnNpb249IjYuMC4xIjsKICAgeC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC50ZXN0LAogICAgb3JnLmVjbGlwc2UuamdpdC5odHRwLnNlcnZlciwKICAgIG9yZy5lY2xpcHNlLmpnaXQuaHR0cC50ZXN0LAogICAgb3JnLmVjbGlwc2UuamdpdC5sZnMudGVzdCIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZTt2ZXJzaW9uPSI2LjAuMSI7CiAgIHgtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQudGVzdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQsCiAgICBvcmcuZWNsaXBzZS5qZ2l0Lmp1bml0Lmh0dHAsCkBAIC04OCwzMSArODgsMzIgQEAKICAgIG9yZy5lY2xpcHNlLmpnaXQucGdtLAogICAgb3JnLmVjbGlwc2UuamdpdC5wZ20udGVzdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmlvO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmlvO3ZlcnNpb249IjYuMC4xIjsKICAgeC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC5qdW5pdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQudGVzdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQucGdtIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucGFjazt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5wYWNrO3ZlcnNpb249IjYuMC4xIjsKICAgeC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC5qdW5pdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQudGVzdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQucGdtIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucmVmdGFibGU7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucmVmdGFibGU7dmVyc2lvbj0iNi4wLjEiOwogICB4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0Lmh0dHAudGVzdCwKICAgIG9yZy5lY2xpcHNlLmpnaXQuanVuaXQsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRlc3QsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnBnbSIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdWJtb2R1bGU7dmVyc2lvbj0iNS4xMy4zIjt4LWludGVybmFsOj10cnVlLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LmNvbm5lY3Rpdml0eTt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3VibW9kdWxlO3ZlcnNpb249IjYuMC4xIjt4LWludGVybmFsOj10cnVlLAorIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LmNvbm5lY3Rpdml0eTt2ZXJzaW9uPSI2LjAuMSI7CiAgIHgtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQudGVzdCIsCi0gb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0Lmh0dHA7dmVyc2lvbj0iNi4wLjEiOwogICB4LWZyaWVuZHM6PSJvcmcuZWNsaXBzZS5qZ2l0LnRlc3QiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnBhcnNlcjt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnBhcnNlcjt2ZXJzaW9uPSI2LjAuMSI7CiAgIHgtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRlc3QiLAotIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LnNzaDt2ZXJzaW9uPSI2LjAuMSI7CiAgIHgtZnJpZW5kczo9Im9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZSwKLSAgIG9yZy5lY2xpcHNlLmpnaXQuc3NoLmpzY2giLAotIG9yZy5lY2xpcHNlLmpnaXQubGliO3ZlcnNpb249IjUuMTMuMyI7CisgICBvcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoLAorICAgb3JnLmVjbGlwc2UuamdpdC50ZXN0IiwKKyBvcmcuZWNsaXBzZS5qZ2l0LmxpYjt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydCwKICAgIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5zaGExLAogICAgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZSwKQEAgLTEyNiwxMCArMTI3LDEwIEBACiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnN1Ym1vZHVsZSwKICAgIG9yZy5lY2xpcHNlLmpnaXQudXRpbC50aW1lIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5pbnRlcm5hbDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQubGliLmludGVybmFsO3ZlcnNpb249IjYuMC4xIjsKICAgeC1mcmllbmRzOj0ib3JnLmVjbGlwc2UuamdpdC50ZXN0IiwKLSBvcmcuZWNsaXBzZS5qZ2l0LmxvZ2dpbmc7dmVyc2lvbj0iNS4xMy4zIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm1lcmdlO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5sb2dnaW5nO3ZlcnNpb249IjYuMC4xIiwKKyBvcmcuZWNsaXBzZS5qZ2l0Lm1lcmdlO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmxpYiwKICAgIG9yZy5lY2xpcHNlLmpnaXQucmV2d2FsaywKQEAgLTEzOCw0MCArMTM5LDQwIEBACiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmFwaSwKICAgIG9yZy5lY2xpcHNlLmpnaXQuYXR0cmlidXRlcyIsCi0gb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iNS4xMy4zIiwKLSBvcmcuZWNsaXBzZS5qZ2l0Lm5vdGVzO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5ubHM7dmVyc2lvbj0iNi4wLjEiLAorIG9yZy5lY2xpcHNlLmpnaXQubm90ZXM7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGssCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLAogICAgb3JnLmVjbGlwc2UuamdpdC5tZXJnZSIsCi0gb3JnLmVjbGlwc2UuamdpdC5wYXRjaDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQucGF0Y2g7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYiLAotIG9yZy5lY2xpcHNlLmpnaXQucmV2cGxvdDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQucmV2cGxvdDt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0LmxpYiwKICAgIG9yZy5lY2xpcHNlLmpnaXQucmV2d2FsayIsCi0gb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC5kaWZmLAogICAgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5maWx0ZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGsuZmlsdGVyLAogICAgb3JnLmVjbGlwc2UuamdpdC50cmVld2FsayIsCi0gb3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLmZpbHRlcjt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQucmV2d2Fsay5maWx0ZXI7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5yZXZ3YWxrLAogICAgb3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwiLAotIG9yZy5lY2xpcHNlLmpnaXQuc3RvcmFnZS5maWxlO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLmZpbGU7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwiLAotIG9yZy5lY2xpcHNlLmpnaXQuc3RvcmFnZS5wYWNrO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLnBhY2s7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIiLAotIG9yZy5lY2xpcHNlLmpnaXQuc3VibW9kdWxlO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC5zdWJtb2R1bGU7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0ib3JnLmVjbGlwc2UuamdpdC5saWIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLmZpbHRlciwKICAgIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGssCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0O3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7dmVyc2lvbj0iNi4wLjEiOwogICB1c2VzOj0iamF2YXguY3J5cHRvLAogICAgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvLAogICAgb3JnLmVjbGlwc2UuamdpdC5saWIsCkBAIC0xODQsMjEgKzE4NSwyMSBAQAogICAgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQucmVzb2x2ZXIsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnN0b3JhZ2UucGFjaywKICAgIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5odHRwO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuaHR0cDt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJqYXZheC5uZXQuc3NsIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5yZXNvbHZlcjt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LnJlc29sdmVyO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LAogICAgb3JnLmVjbGlwc2UuamdpdC5saWIiLAotIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGs7dmVyc2lvbj0iNS4xMy4zIjsKKyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LmxpYiwKICAgIG9yZy5lY2xpcHNlLmpnaXQuYXR0cmlidXRlcywKICAgIG9yZy5lY2xpcHNlLmpnaXQucmV2d2FsaywKICAgIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyLAogICAgb3JnLmVjbGlwc2UuamdpdC51dGlsIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLmZpbHRlcjt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsiLAotIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSI1LjEzLjMiOworIG9yZy5lY2xpcHNlLmpnaXQudXRpbDt2ZXJzaW9uPSI2LjAuMSI7CiAgIHVzZXM6PSJvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydCwKICAgIG9yZy5lY2xpcHNlLmpnaXQuaG9va3MsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnJldndhbGssCkBAIC0yMTEsMTMgKzIxMiwxMyBAQAogICAgb3JnLmVjbGlwc2UuamdpdC50cmVld2FsaywKICAgIGphdmF4Lm5ldC5zc2wsCiAgICBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwudGltZSIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvO3ZlcnNpb249IjUuMTMuMyI7Cisgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvO3ZlcnNpb249IjYuMC4xIjsKICAgdXNlczo9Im9yZy5lY2xpcHNlLmpnaXQuYXR0cmlidXRlcywKICAgIG9yZy5lY2xpcHNlLmpnaXQubGliLAogICAgb3JnLmVjbGlwc2UuamdpdC50cmVld2FsayIsCi0gb3JnLmVjbGlwc2UuamdpdC51dGlsLnNoYTE7dmVyc2lvbj0iNS4xMy4zIiwKLSBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwudGltZTt2ZXJzaW9uPSI1LjEzLjMiCi1CdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSmF2YVNFLTEuOAorIG9yZy5lY2xpcHNlLmpnaXQudXRpbC5zaGExO3ZlcnNpb249IjYuMC4xIiwKKyBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwudGltZTt2ZXJzaW9uPSI2LjAuMSIKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKYXZhU0UtMTEKIEltcG9ydC1QYWNrYWdlOiBjb20uZ29vZ2xlY29kZS5qYXZhZXdhaDt2ZXJzaW9uPSJbMS4xLjYsMi4wLjApIiwKICBqYXZheC5jcnlwdG8sCiAgamF2YXgubWFuYWdlbWVudCwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvTUVUQS1JTkYvU09VUkNFLU1BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UuamdpdC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKaW5kZXggOGUwNWFkNy4uMzAyYzQ1NCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9NRVRBLUlORi9TT1VSQ0UtTUFOSUZFU1QuTUYKQEAgLTMsNSArMyw1IEBACiBCdW5kbGUtTmFtZTogb3JnLmVjbGlwc2UuamdpdCAtIFNvdXJjZXMKIEJ1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLmpnaXQuc291cmNlCiBCdW5kbGUtVmVuZG9yOiBFY2xpcHNlLm9yZyAtIEpHaXQKLUJ1bmRsZS1WZXJzaW9uOiA1LjEzLjMucXVhbGlmaWVyCi1FY2xpcHNlLVNvdXJjZUJ1bmRsZTogb3JnLmVjbGlwc2UuamdpdDt2ZXJzaW9uPSI1LjEzLjMucXVhbGlmaWVyIjtyb290cz0iLiIKK0J1bmRsZS1WZXJzaW9uOiA2LjAuMS5xdWFsaWZpZXIKK0VjbGlwc2UtU291cmNlQnVuZGxlOiBvcmcuZWNsaXBzZS5qZ2l0O3ZlcnNpb249IjYuMC4xLnF1YWxpZmllciI7cm9vdHM9Ii4iCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3BvbS54bWwgYi9vcmcuZWNsaXBzZS5qZ2l0L3BvbS54bWwKaW5kZXggNWFkZjQzMC4uZTc4MjI3MiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9wb20ueG1sCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvcG9tLnhtbApAQCAtMjAsNyArMjAsNyBAQAogICA8cGFyZW50PgogICAgIDxncm91cElkPm9yZy5lY2xpcHNlLmpnaXQ8L2dyb3VwSWQ+CiAgICAgPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UuamdpdC1wYXJlbnQ8L2FydGlmYWN0SWQ+Ci0gICAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgIDx2ZXJzaW9uPjYuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgogICA8L3BhcmVudD4KIAogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0PC9hcnRpZmFjdElkPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9yZXNvdXJjZXMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9KR2l0VGV4dC5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UuamdpdC9yZXNvdXJjZXMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9KR2l0VGV4dC5wcm9wZXJ0aWVzCmluZGV4IDYyYTJmMGQuLmM4ODdjNmQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvcmVzb3VyY2VzL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvSkdpdFRleHQucHJvcGVydGllcworKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3Jlc291cmNlcy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL0pHaXRUZXh0LnByb3BlcnRpZXMKQEAgLTE2LDggKzE2LDYgQEAKIGFwcGx5QmluYXJ5QmFzZU9pZFdyb25nPUNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2g7IE9JRCBmb3IgZmlsZSB7MH0gZG9lcyBub3QgbWF0Y2gKIGFwcGx5QmluYXJ5T2lkVG9vU2hvcnQ9QmluYXJ5IHBhdGNoIGZvciBmaWxlIHswfSBkb2VzIG5vdCBoYXZlIGZ1bGwgSURzCiBhcHBseUJpbmFyeVJlc3VsdE9pZFdyb25nPVJlc3VsdCBvZiBiaW5hcnkgcGF0Y2ggZm9yIGZpbGUgezB9IGhhcyB3cm9uZyBPSUQuCi1hcHBseVBhdGNoRGVzdEludmFsaWQ9RGVzdGluYXRpb24gcGF0aCBpbiBwYXRjaCBpcyBpbnZhbGlkCi1hcHBseVBhdGNoU291cmNlSW52YWxpZD09U291cmNlIHBhdGggaW4gcGF0Y2ggaXMgaW52YWxpZAogYXBwbHlpbmdDb21taXQ9QXBwbHlpbmcgezB9CiBhcmNoaXZlRm9ybWF0QWxyZWFkeUFic2VudD1BcmNoaXZlIGZvcm1hdCBhbHJlYWR5IGFic2VudDogezB9CiBhcmNoaXZlRm9ybWF0QWxyZWFkeVJlZ2lzdGVyZWQ9QXJjaGl2ZSBmb3JtYXQgYWxyZWFkeSByZWdpc3RlcmVkIHdpdGggZGlmZmVyZW50IGltcGxlbWVudGF0aW9uOiB7MH0KQEAgLTQ0OCw2ICs0NDYsNyBAQAogbG9ja1N0cmVhbUNsb3NlZD1PdXRwdXQgdG8gbG9jayBvbiB7MH0gYWxyZWFkeSBjbG9zZWQKIGxvY2tTdHJlYW1NdWx0aXBsZT1PdXRwdXQgdG8gbG9jayBvbiB7MH0gYWxyZWFkeSBvcGVuZWQKIGxvZ0luY29uc2lzdGVudEZpbGV0aW1lRGlmZj17fTogaW5jb25zaXN0ZW50IGR1cmF0aW9uIGZyb20gZmlsZSB0aW1lc3RhbXBzIG9uIHt9LCB7fToge30gPiB7fSwgYnV0IGRpZmYgPSB7fS4gQWJvcnRpbmcgbWVhc3VyZW1lbnQgYXQgcmVzb2x1dGlvbiB7fS4KK2xvZ0ludmFsaWREZWZhdWx0Q2hhcnNldD1TeXN0ZW0gcHJvcGVydHkgIm5hdGl2ZS5lbmNvZGluZyIgc3BlY2lmaWVzIHVua25vd24gY2hhcmFjdGVyIHNldDoge30KIGxvZ0xhcmdlckZpbGV0aW1lRGlmZj17fTogaW5jb25zaXN0ZW50IGR1cmF0aW9uIGZyb20gZmlsZSB0aW1lc3RhbXBzIG9uIHt9LCB7fTogZGlmZiA9IHt9ID4ge30gKGxhc3QgZ29vZCB2YWx1ZSkuIEFib3J0aW5nIG1lYXN1cmVtZW50LgogbG9nU21hbGxlckZpbGV0aW1lPXt9OiBnb3Qgc21hbGxlciBmaWxlIHRpbWVzdGFtcCBvbiB7fSwge306IHt9IDwge30uIEFib3J0aW5nIG1lYXN1cmVtZW50IGF0IHJlc29sdXRpb24ge30uCiBsb2dYREdDb25maWdIb21lSW52YWxpZD1FbnZpcm9ubWVudCB2YXJpYWJsZSBYREdfQ09ORklHX0hPTUUgY29udGFpbnMgYW4gaW52YWxpZCBwYXRoIHt9CkBAIC01NTIsOCArNTUxLDYgQEAKIHBhY2tXcml0ZXJTdGF0aXN0aWNzPVRvdGFsIHswLG51bWJlciwjMH0gKGRlbHRhIHsxLG51bWJlciwjMH0pLCByZXVzZWQgezIsbnVtYmVyLCMwfSAoZGVsdGEgezMsbnVtYmVyLCMwfSkKIHBhbmljQ2FudFJlbmFtZUluZGV4RmlsZT1QYW5pYzogaW5kZXggZmlsZSB7MH0gbXVzdCBiZSByZW5hbWVkIHRvIHJlcGxhY2UgezF9OyB1bnRpbCB0aGVuIHJlcG9zaXRvcnkgaXMgY29ycnVwdAogcGF0Y2hBcHBseUV4Y2VwdGlvbj1DYW5ub3QgYXBwbHk6IHswfQotcGF0Y2hBcHBseUVycm9yV2l0aEh1bms9RXJyb3IgYXBwbHlpbmcgcGF0Y2ggaW4gezB9LCBodW5rIHsxfTogezJ9Ci1wYXRjaEFwcGx5RXJyb3JXaXRob3V0SHVuaz1FcnJvciBhcHBseWluZyBwYXRjaCBpbiB7MH06IHsxfQogcGF0Y2hGb3JtYXRFeGNlcHRpb249Rm9ybWF0IGVycm9yOiB7MH0KIHBhdGhOb3RDb25maWd1cmVkPVN1Ym1vZHVsZSBwYXRoIGlzIG5vdCBjb25maWd1cmVkCiBwZWVsZWRMaW5lQmVmb3JlUmVmPVBlZWxlZCBsaW5lIGJlZm9yZSByZWYuCkBAIC04MDUsNiArODAyLDcgQEAKIFVSSU5vdFN1cHBvcnRlZD1VUkkgbm90IHN1cHBvcnRlZDogezB9CiB1c2VyQ29uZmlnSW52YWxpZD1HaXQgY29uZmlnIGluIHRoZSB1c2VyJ3MgaG9tZSBkaXJlY3RvcnkgezB9IGlzIGludmFsaWQgezF9CiB2YWxpZGF0aW5nR2l0TW9kdWxlcz1WYWxpZGF0aW5nIC5naXRtb2R1bGVzIGZpbGVzCit2YWx1ZUV4Y2VlZHNSYW5nZT1WYWx1ZSAnJ3swfScnIGV4Y2VlZHMgdGhlIHJhbmdlIG9mIHsxfQogdmVyaWZ5U2lnbmF0dXJlQmFkPUJBRCBzaWduYXR1cmUgZnJvbSAiezB9IgogdmVyaWZ5U2lnbmF0dXJlRXhwaXJlZD1FeHBpcmVkIHNpZ25hdHVyZSBmcm9tICJ7MH0iCiB2ZXJpZnlTaWduYXR1cmVHb29kPUdvb2Qgc2lnbmF0dXJlIGZyb20gInswfSIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0FwcGx5Q29tbWFuZC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvQXBwbHlDb21tYW5kLmphdmEKaW5kZXggNThiMzM5YS4uNTgzNzY3YSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvQXBwbHlDb21tYW5kLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvQXBwbHlDb21tYW5kLmphdmEKQEAgLTIyLDcgKzIyLDYgQEAKIGltcG9ydCBqYXZhLm5pby5maWxlLlN0YW5kYXJkQ29weU9wdGlvbjsKIGltcG9ydCBqYXZhLnRleHQuTWVzc2FnZUZvcm1hdDsKIGltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0OwotaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CiBpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOwogaW1wb3J0IGphdmEudXRpbC5MaXN0OwogaW1wb3J0IGphdmEudXRpbC56aXAuSW5mbGF0ZXJJbnB1dFN0cmVhbTsKQEAgLTM5LDE0ICszOCwxMiBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuRGlyQ2FjaGVDaGVja291dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlQ2hlY2tvdXQuQ2hlY2tvdXRNZXRhZGF0YTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlSXRlcmF0b3I7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuQ29ycnVwdE9iamVjdEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5MYXJnZU9iamVjdEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5NaXNzaW5nT2JqZWN0RXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuSkdpdFRleHQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uc3RhbnRzOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvcmVDb25maWcuRW9sU3RyZWFtVHlwZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5GaWxlTW9kZTsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5GaWxlTW9kZUNhY2hlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLk9iamVjdElkOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLk9iamVjdExvYWRlcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5PYmplY3RTdHJlYW07CkBAIC02OCw3ICs2NSw2IEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLklPOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5SYXdQYXJzZVV0aWxzOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TdHJpbmdVdGlsczsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuU3lzdGVtUmVhZGVyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5UZW1wb3JhcnlCdWZmZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlRlbXBvcmFyeUJ1ZmZlci5Mb2NhbEZpbGU7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvLkJpbmFyeURlbHRhSW5wdXRTdHJlYW07CkBAIC03NiwxMiArNzIsNiBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5pby5Fb2xTdHJlYW1UeXBlVXRpbDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuc2hhMS5TSEExOwogCi1pbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQuZGlmZi5EaWZmRW50cnkuQ2hhbmdlVHlwZS5BREQ7Ci1pbXBvcnQgc3RhdGljIG9yZy5lY2xpcHNlLmpnaXQuZGlmZi5EaWZmRW50cnkuQ2hhbmdlVHlwZS5DT1BZOwotaW1wb3J0IHN0YXRpYyBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuRGlmZkVudHJ5LkNoYW5nZVR5cGUuREVMRVRFOwotaW1wb3J0IHN0YXRpYyBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuRGlmZkVudHJ5LkNoYW5nZVR5cGUuTU9ESUZZOwotaW1wb3J0IHN0YXRpYyBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuRGlmZkVudHJ5LkNoYW5nZVR5cGUuUkVOQU1FOwotCiAvKioKICAqIEFwcGx5IGEgcGF0Y2ggdG8gZmlsZXMgYW5kL29yIHRvIHRoZSBpbmRleC4KICAqCkBAIC0xNDEsMzQgKzEzMSwzMCBAQCBwdWJsaWMgQXBwbHlSZXN1bHQgY2FsbCgpIHRocm93cyBHaXRBUElFeGNlcHRpb24sIFBhdGNoRm9ybWF0RXhjZXB0aW9uLAogCQkJCXRocm93IG5ldyBQYXRjaEZvcm1hdEV4Y2VwdGlvbihwLmdldEVycm9ycygpKTsKIAkJCX0KIAkJCVJlcG9zaXRvcnkgcmVwb3NpdG9yeSA9IGdldFJlcG9zaXRvcnkoKTsKLQkJCUZpbGVNb2RlQ2FjaGUgZGlyZWN0b3J5Q2FjaGUgPSBuZXcgRmlsZU1vZGVDYWNoZShyZXBvKTsKIAkJCURpckNhY2hlIGNhY2hlID0gcmVwb3NpdG9yeS5yZWFkRGlyQ2FjaGUoKTsKIAkJCWZvciAoRmlsZUhlYWRlciBmaCA6IHAuZ2V0RmlsZXMoKSkgewogCQkJCUNoYW5nZVR5cGUgdHlwZSA9IGZoLmdldENoYW5nZVR5cGUoKTsKIAkJCQlGaWxlIGYgPSBudWxsOwotCQkJCXZlcmlmeUV4aXN0ZW5jZShmaCwKLQkJCQkJCW5ldyBGaWxlKHJlcG8uZ2V0V29ya1RyZWUoKSwgZmguZ2V0T2xkUGF0aCgpKSwKLQkJCQkJCW5ldyBGaWxlKHJlcG8uZ2V0V29ya1RyZWUoKSwgZmguZ2V0TmV3UGF0aCgpKSk7CiAJCQkJc3dpdGNoICh0eXBlKSB7CiAJCQkJY2FzZSBBREQ6Ci0JCQkJCWYgPSBnZXRGaWxlKGZoLmdldE5ld1BhdGgoKSwgdHJ1ZSwgZGlyZWN0b3J5Q2FjaGUpOworCQkJCQlmID0gZ2V0RmlsZShmaC5nZXROZXdQYXRoKCksIHRydWUpOwogCQkJCQlhcHBseShyZXBvc2l0b3J5LCBmaC5nZXROZXdQYXRoKCksIGNhY2hlLCBmLCBmaCk7CiAJCQkJCWJyZWFrOwogCQkJCWNhc2UgTU9ESUZZOgotCQkJCQlmID0gZ2V0RmlsZShmaC5nZXRPbGRQYXRoKCksIGZhbHNlLCBkaXJlY3RvcnlDYWNoZSk7CisJCQkJCWYgPSBnZXRGaWxlKGZoLmdldE9sZFBhdGgoKSwgZmFsc2UpOwogCQkJCQlhcHBseShyZXBvc2l0b3J5LCBmaC5nZXRPbGRQYXRoKCksIGNhY2hlLCBmLCBmaCk7CiAJCQkJCWJyZWFrOwogCQkJCWNhc2UgREVMRVRFOgotCQkJCQlmID0gZ2V0RmlsZShmaC5nZXRPbGRQYXRoKCksIGZhbHNlLCBkaXJlY3RvcnlDYWNoZSk7CisJCQkJCWYgPSBnZXRGaWxlKGZoLmdldE9sZFBhdGgoKSwgZmFsc2UpOwogCQkJCQlpZiAoIWYuZGVsZXRlKCkpCiAJCQkJCQl0aHJvdyBuZXcgUGF0Y2hBcHBseUV4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKIAkJCQkJCQkJSkdpdFRleHQuZ2V0KCkuY2Fubm90RGVsZXRlRmlsZSwgZikpOwogCQkJCQlicmVhazsKIAkJCQljYXNlIFJFTkFNRToKLQkJCQkJZiA9IGdldEZpbGUoZmguZ2V0T2xkUGF0aCgpLCBmYWxzZSwgZGlyZWN0b3J5Q2FjaGUpOwotCQkJCQlGaWxlIGRlc3QgPSBnZXRGaWxlKGZoLmdldE5ld1BhdGgoKSwgZmFsc2UsIGRpcmVjdG9yeUNhY2hlKTsKKwkJCQkJZiA9IGdldEZpbGUoZmguZ2V0T2xkUGF0aCgpLCBmYWxzZSk7CisJCQkJCUZpbGUgZGVzdCA9IGdldEZpbGUoZmguZ2V0TmV3UGF0aCgpLCBmYWxzZSk7CiAJCQkJCXRyeSB7Ci0JCQkJCQlkaXJlY3RvcnlDYWNoZS5zYWZlQ3JlYXRlUGFyZW50RGlyZWN0b3J5KGZoLmdldE5ld1BhdGgoKSwgZGVzdC5nZXRQYXJlbnRGaWxlKCksIGZhbHNlKTsKKwkJCQkJCUZpbGVVdGlscy5ta2RpcnMoZGVzdC5nZXRQYXJlbnRGaWxlKCksIHRydWUpOwogCQkJCQkJRmlsZVV0aWxzLnJlbmFtZShmLCBkZXN0LAogCQkJCQkJCQlTdGFuZGFyZENvcHlPcHRpb24uQVRPTUlDX01PVkUpOwogCQkJCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CkBAIC0xNzgsOSArMTY0LDkgQEAgcHVibGljIEFwcGx5UmVzdWx0IGNhbGwoKSB0aHJvd3MgR2l0QVBJRXhjZXB0aW9uLCBQYXRjaEZvcm1hdEV4Y2VwdGlvbiwKIAkJCQkJYXBwbHkocmVwb3NpdG9yeSwgZmguZ2V0T2xkUGF0aCgpLCBjYWNoZSwgZGVzdCwgZmgpOwogCQkJCQlicmVhazsKIAkJCQljYXNlIENPUFk6Ci0JCQkJCWYgPSBnZXRGaWxlKGZoLmdldE9sZFBhdGgoKSwgZmFsc2UsIGRpcmVjdG9yeUNhY2hlKTsKLQkJCQkJRmlsZSB0YXJnZXQgPSBnZXRGaWxlKGZoLmdldE5ld1BhdGgoKSwgZmFsc2UsIGRpcmVjdG9yeUNhY2hlKTsKLQkJCQkJZGlyZWN0b3J5Q2FjaGUuc2FmZUNyZWF0ZVBhcmVudERpcmVjdG9yeShmaC5nZXROZXdQYXRoKCksIHRhcmdldC5nZXRQYXJlbnRGaWxlKCksIGZhbHNlKTsKKwkJCQkJZiA9IGdldEZpbGUoZmguZ2V0T2xkUGF0aCgpLCBmYWxzZSk7CisJCQkJCUZpbGUgdGFyZ2V0ID0gZ2V0RmlsZShmaC5nZXROZXdQYXRoKCksIGZhbHNlKTsKKwkJCQkJRmlsZVV0aWxzLm1rZGlycyh0YXJnZXQuZ2V0UGFyZW50RmlsZSgpLCB0cnVlKTsKIAkJCQkJRmlsZXMuY29weShmLnRvUGF0aCgpLCB0YXJnZXQudG9QYXRoKCkpOwogCQkJCQlhcHBseShyZXBvc2l0b3J5LCBmaC5nZXRPbGRQYXRoKCksIGNhY2hlLCB0YXJnZXQsIGZoKTsKIAkJCQl9CkBAIC0xOTMsNDAgKzE3OSwxMyBAQCBwdWJsaWMgQXBwbHlSZXN1bHQgY2FsbCgpIHRocm93cyBHaXRBUElFeGNlcHRpb24sIFBhdGNoRm9ybWF0RXhjZXB0aW9uLAogCQlyZXR1cm4gcjsKIAl9CiAKLQlwcml2YXRlIHZvaWQgdmVyaWZ5RXhpc3RlbmNlKEZpbGVIZWFkZXIgZmgsIEZpbGUgc3JjLCBGaWxlIGRlc3QpCi0JCQl0aHJvd3MgSU9FeGNlcHRpb24sIFBhdGNoQXBwbHlFeGNlcHRpb24gewotCQlib29sZWFuIHNyY1Nob3VsZEV4aXN0ID0gQXJyYXlzCi0JCQkJLmFzTGlzdChuZXcgQ2hhbmdlVHlwZVtdIHsgTU9ESUZZLCBERUxFVEUsIFJFTkFNRSwgQ09QWSB9KQotCQkJCS5jb250YWlucyhmaC5nZXRDaGFuZ2VUeXBlKCkpOwotCQlib29sZWFuIGRlc3RTaG91bGROb3RFeGlzdCA9IEFycmF5cwotCQkJCS5hc0xpc3QobmV3IENoYW5nZVR5cGVbXSB7IEFERCwgUkVOQU1FLCBDT1BZIH0pCi0JCQkJLmNvbnRhaW5zKGZoLmdldENoYW5nZVR5cGUoKSk7Ci0JCWlmIChzcmNTaG91bGRFeGlzdCAmJiAhdmFsaWRHaXRQYXRoKGZoLmdldE9sZFBhdGgoKSkpIHsKLQkJCXRocm93IG5ldyBQYXRjaEFwcGx5RXhjZXB0aW9uKE1lc3NhZ2VGb3JtYXQuZm9ybWF0KAotCQkJCQlKR2l0VGV4dC5nZXQoKS5hcHBseVBhdGNoU291cmNlSW52YWxpZCwgZmguZ2V0T2xkUGF0aCgpKSk7Ci0JCX0KLQkJaWYgKGRlc3RTaG91bGROb3RFeGlzdCAmJiAhdmFsaWRHaXRQYXRoKGZoLmdldE5ld1BhdGgoKSkpIHsKLQkJCXRocm93IG5ldyBQYXRjaEFwcGx5RXhjZXB0aW9uKE1lc3NhZ2VGb3JtYXQuZm9ybWF0KAotCQkJCQlKR2l0VGV4dC5nZXQoKS5hcHBseVBhdGNoRGVzdEludmFsaWQsIGZoLmdldE5ld1BhdGgoKSkpOwotCQl9Ci0JfQotCi0JcHJpdmF0ZSBib29sZWFuIHZhbGlkR2l0UGF0aChTdHJpbmcgcGF0aCkgewotCQl0cnkgewotCQkJU3lzdGVtUmVhZGVyLmdldEluc3RhbmNlKCkuY2hlY2tQYXRoKHBhdGgpOwotCQkJcmV0dXJuIHRydWU7Ci0JCX0gY2F0Y2ggKENvcnJ1cHRPYmplY3RFeGNlcHRpb24gZSkgewotCQkJcmV0dXJuIGZhbHNlOwotCQl9Ci0JfQotCi0JcHJpdmF0ZSBGaWxlIGdldEZpbGUoU3RyaW5nIHBhdGgsIGJvb2xlYW4gY3JlYXRlLCBGaWxlTW9kZUNhY2hlIGRpcmVjdG9yeUNhY2hlKQorCXByaXZhdGUgRmlsZSBnZXRGaWxlKFN0cmluZyBwYXRoLCBib29sZWFuIGNyZWF0ZSkKIAkJCXRocm93cyBQYXRjaEFwcGx5RXhjZXB0aW9uIHsKIAkJRmlsZSBmID0gbmV3IEZpbGUoZ2V0UmVwb3NpdG9yeSgpLmdldFdvcmtUcmVlKCksIHBhdGgpOwogCQlpZiAoY3JlYXRlKSB7CiAJCQl0cnkgewogCQkJCUZpbGUgcGFyZW50ID0gZi5nZXRQYXJlbnRGaWxlKCk7Ci0JCQkJZGlyZWN0b3J5Q2FjaGUuc2FmZUNyZWF0ZVBhcmVudERpcmVjdG9yeShwYXRoLCBwYXJlbnQsIGZhbHNlKTsKKwkJCQlGaWxlVXRpbHMubWtkaXJzKHBhcmVudCwgdHJ1ZSk7CiAJCQkJRmlsZVV0aWxzLmNyZWF0ZU5ld0ZpbGUoZik7CiAJCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CiAJCQkJdGhyb3cgbmV3IFBhdGNoQXBwbHlFeGNlcHRpb24oTWVzc2FnZUZvcm1hdC5mb3JtYXQoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9DaGVja291dENvbW1hbmQuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0NoZWNrb3V0Q29tbWFuZC5qYXZhCmluZGV4IDhlZGFlNWEuLjg0N2FiMGEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0NoZWNrb3V0Q29tbWFuZC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0NoZWNrb3V0Q29tbWFuZC5qYXZhCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxMCwgQ2hyaXMgQW5pc3pjenlrIDxjYW5pc3pjenlrQGdtYWlsLmNvbT4KLSAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAyMyBNYXR0aGlhcyBTb2huIDxtYXR0aGlhcy5zb2huQHNhcC5jb20+IGFuZCBvdGhlcnMKKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAyMCBNYXR0aGlhcyBTb2huIDxtYXR0aGlhcy5zb2huQHNhcC5jb20+IGFuZCBvdGhlcnMKICAqCiAgKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUKICAqIHRlcm1zIG9mIHRoZSBFY2xpcHNlIERpc3RyaWJ1dGlvbiBMaWNlbnNlIHYuIDEuMCB3aGljaCBpcyBhdmFpbGFibGUgYXQKQEAgLTI4LDcgKzI4LDYgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnMuSkdpdEludGVybmFsRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5SZWZBbHJlYWR5RXhpc3RzRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5SZWZOb3RGb3VuZEV4Y2VwdGlvbjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkNoZWNrb3V0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuRGlyQ2FjaGU7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZUNoZWNrb3V0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuRGlyQ2FjaGVDaGVja291dC5DaGVja291dE1ldGFkYXRhOwpAQCAtNDEyLDcgKzQxMSw2IEBAIHB1YmxpYyBDaGVja291dENvbW1hbmQgc2V0QWxsUGF0aHMoYm9vbGVhbiBhbGwpIHsKIAlwcm90ZWN0ZWQgQ2hlY2tvdXRDb21tYW5kIGNoZWNrb3V0UGF0aHMoKSB0aHJvd3MgSU9FeGNlcHRpb24sCiAJCQlSZWZOb3RGb3VuZEV4Y2VwdGlvbiB7CiAJCWFjdHVhbGx5TW9kaWZpZWRQYXRocyA9IG5ldyBIYXNoU2V0PD4oKTsKLQkJQ2hlY2tvdXQgY2hlY2tvdXQgPSBuZXcgQ2hlY2tvdXQocmVwbykuc2V0UmVjdXJzaXZlRGVsZXRpb24odHJ1ZSk7CiAJCURpckNhY2hlIGRjID0gcmVwby5sb2NrRGlyQ2FjaGUoKTsKIAkJdHJ5IChSZXZXYWxrIHJldldhbGsgPSBuZXcgUmV2V2FsayhyZXBvKTsKIAkJCQlUcmVlV2FsayB0cmVlV2FsayA9IG5ldyBUcmVlV2FsayhyZXBvLApAQCAtNDIxLDEwICs0MTksMTAgQEAgcHJvdGVjdGVkIENoZWNrb3V0Q29tbWFuZCBjaGVja291dFBhdGhzKCkgdGhyb3dzIElPRXhjZXB0aW9uLAogCQkJaWYgKCFjaGVja291dEFsbFBhdGhzKQogCQkJCXRyZWVXYWxrLnNldEZpbHRlcihQYXRoRmlsdGVyR3JvdXAuY3JlYXRlRnJvbVN0cmluZ3MocGF0aHMpKTsKIAkJCWlmIChpc0NoZWNrb3V0SW5kZXgoKSkKLQkJCQljaGVja291dFBhdGhzRnJvbUluZGV4KHRyZWVXYWxrLCBkYywgY2hlY2tvdXQpOworCQkJCWNoZWNrb3V0UGF0aHNGcm9tSW5kZXgodHJlZVdhbGssIGRjKTsKIAkJCWVsc2UgewogCQkJCVJldkNvbW1pdCBjb21taXQgPSByZXZXYWxrLnBhcnNlQ29tbWl0KGdldFN0YXJ0UG9pbnRPYmplY3RJZCgpKTsKLQkJCQljaGVja291dFBhdGhzRnJvbUNvbW1pdCh0cmVlV2FsaywgZGMsIGNvbW1pdCwgY2hlY2tvdXQpOworCQkJCWNoZWNrb3V0UGF0aHNGcm9tQ29tbWl0KHRyZWVXYWxrLCBkYywgY29tbWl0KTsKIAkJCX0KIAkJfSBmaW5hbGx5IHsKIAkJCXRyeSB7CkBAIC00NDEsOCArNDM5LDcgQEAgcHJvdGVjdGVkIENoZWNrb3V0Q29tbWFuZCBjaGVja291dFBhdGhzKCkgdGhyb3dzIElPRXhjZXB0aW9uLAogCQlyZXR1cm4gdGhpczsKIAl9CiAKLQlwcml2YXRlIHZvaWQgY2hlY2tvdXRQYXRoc0Zyb21JbmRleChUcmVlV2FsayB0cmVlV2FsaywgRGlyQ2FjaGUgZGMsCi0JCQlDaGVja291dCBjaGVja291dCkKKwlwcml2YXRlIHZvaWQgY2hlY2tvdXRQYXRoc0Zyb21JbmRleChUcmVlV2FsayB0cmVlV2FsaywgRGlyQ2FjaGUgZGMpCiAJCQl0aHJvd3MgSU9FeGNlcHRpb24gewogCQlEaXJDYWNoZUl0ZXJhdG9yIGRjaSA9IG5ldyBEaXJDYWNoZUl0ZXJhdG9yKGRjKTsKIAkJdHJlZVdhbGsuYWRkVHJlZShkY2kpOwpAQCAtNDY4LDkgKzQ2NSw4IEBAIHB1YmxpYyB2b2lkIGFwcGx5KERpckNhY2hlRW50cnkgZW50KSB7CiAJCQkJCWlmIChzdGFnZSA+IERpckNhY2hlRW50cnkuU1RBR0VfMCkgewogCQkJCQkJaWYgKGNoZWNrb3V0U3RhZ2UgIT0gbnVsbCkgewogCQkJCQkJCWlmIChzdGFnZSA9PSBjaGVja291dFN0YWdlLm51bWJlcikgewotCQkJCQkJCQljaGVja291dFBhdGgoZW50LCByLCBjaGVja291dCwgcGF0aCwKLQkJCQkJCQkJCQluZXcgQ2hlY2tvdXRNZXRhZGF0YShlb2xTdHJlYW1UeXBlLAotCQkJCQkJCQkJCQkJZmlsdGVyQ29tbWFuZCkpOworCQkJCQkJCQljaGVja291dFBhdGgoZW50LCByLCBuZXcgQ2hlY2tvdXRNZXRhZGF0YSgKKwkJCQkJCQkJCQllb2xTdHJlYW1UeXBlLCBmaWx0ZXJDb21tYW5kKSk7CiAJCQkJCQkJCWFjdHVhbGx5TW9kaWZpZWRQYXRocy5hZGQocGF0aCk7CiAJCQkJCQkJfQogCQkJCQkJfSBlbHNlIHsKQEAgLTQ3OSw5ICs0NzUsOCBAQCBwdWJsaWMgdm9pZCBhcHBseShEaXJDYWNoZUVudHJ5IGVudCkgewogCQkJCQkJCXRocm93IG5ldyBKR2l0SW50ZXJuYWxFeGNlcHRpb24oZS5nZXRNZXNzYWdlKCksIGUpOwogCQkJCQkJfQogCQkJCQl9IGVsc2UgewotCQkJCQkJY2hlY2tvdXRQYXRoKGVudCwgciwgY2hlY2tvdXQsIHBhdGgsCi0JCQkJCQkJCW5ldyBDaGVja291dE1ldGFkYXRhKGVvbFN0cmVhbVR5cGUsCi0JCQkJCQkJCQkJZmlsdGVyQ29tbWFuZCkpOworCQkJCQkJY2hlY2tvdXRQYXRoKGVudCwgciwgbmV3IENoZWNrb3V0TWV0YWRhdGEoZW9sU3RyZWFtVHlwZSwKKwkJCQkJCQkJZmlsdGVyQ29tbWFuZCkpOwogCQkJCQkJYWN0dWFsbHlNb2RpZmllZFBhdGhzLmFkZChwYXRoKTsKIAkJCQkJfQogCQkJCX0KQEAgLTQ5Myw3ICs0ODgsNyBAQCBwdWJsaWMgdm9pZCBhcHBseShEaXJDYWNoZUVudHJ5IGVudCkgewogCX0KIAogCXByaXZhdGUgdm9pZCBjaGVja291dFBhdGhzRnJvbUNvbW1pdChUcmVlV2FsayB0cmVlV2FsaywgRGlyQ2FjaGUgZGMsCi0JCQlSZXZDb21taXQgY29tbWl0LCBDaGVja291dCBjaGVja291dCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJCVJldkNvbW1pdCBjb21taXQpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCXRyZWVXYWxrLmFkZFRyZWUoY29tbWl0LmdldFRyZWUoKSk7CiAJCWZpbmFsIE9iamVjdFJlYWRlciByID0gdHJlZVdhbGsuZ2V0T2JqZWN0UmVhZGVyKCk7CiAJCURpckNhY2hlRWRpdG9yIGVkaXRvciA9IGRjLmVkaXRvcigpOwpAQCAtNTE1LDcgKzUxMCw3IEBAIHB1YmxpYyB2b2lkIGFwcGx5KERpckNhY2hlRW50cnkgZW50KSB7CiAJCQkJCX0KIAkJCQkJZW50LnNldE9iamVjdElkKGJsb2JJZCk7CiAJCQkJCWVudC5zZXRGaWxlTW9kZShtb2RlKTsKLQkJCQkJY2hlY2tvdXRQYXRoKGVudCwgciwgY2hlY2tvdXQsIHBhdGgsCisJCQkJCWNoZWNrb3V0UGF0aChlbnQsIHIsCiAJCQkJCQkJbmV3IENoZWNrb3V0TWV0YWRhdGEoZW9sU3RyZWFtVHlwZSwgZmlsdGVyQ29tbWFuZCkpOwogCQkJCQlhY3R1YWxseU1vZGlmaWVkUGF0aHMuYWRkKHBhdGgpOwogCQkJCX0KQEAgLTUyNSw5ICs1MjAsMTAgQEAgcHVibGljIHZvaWQgYXBwbHkoRGlyQ2FjaGVFbnRyeSBlbnQpIHsKIAl9CiAKIAlwcml2YXRlIHZvaWQgY2hlY2tvdXRQYXRoKERpckNhY2hlRW50cnkgZW50cnksIE9iamVjdFJlYWRlciByZWFkZXIsCi0JCQlDaGVja291dCBjaGVja291dCwgU3RyaW5nIHBhdGgsIENoZWNrb3V0TWV0YWRhdGEgY2hlY2tvdXRNZXRhZGF0YSkgeworCQkJQ2hlY2tvdXRNZXRhZGF0YSBjaGVja291dE1ldGFkYXRhKSB7CiAJCXRyeSB7Ci0JCQljaGVja291dC5jaGVja291dChlbnRyeSwgY2hlY2tvdXRNZXRhZGF0YSwgcmVhZGVyLCBwYXRoKTsKKwkJCURpckNhY2hlQ2hlY2tvdXQuY2hlY2tvdXRFbnRyeShyZXBvLCBlbnRyeSwgcmVhZGVyLCB0cnVlLAorCQkJCQljaGVja291dE1ldGFkYXRhKTsKIAkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgewogCQkJdGhyb3cgbmV3IEpHaXRJbnRlcm5hbEV4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKIAkJCQkJSkdpdFRleHQuZ2V0KCkuY2hlY2tvdXRDb25mbGljdFdpdGhGaWxlLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvQ29tbWl0Q29tbWFuZC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvQ29tbWl0Q29tbWFuZC5qYXZhCmluZGV4IDdlYzM2YWYuLjM3ZjFkNDggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0NvbW1pdENvbW1hbmQuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9Db21taXRDb21tYW5kLmphdmEKQEAgLTEwNDYsMTAgKzEwNDYsMTIgQEAgcHVibGljIENvbW1pdENvbW1hbmQgc2V0R3BnQ29uZmlnKEdwZ0NvbmZpZyBjb25maWcpIHsKIAkgKiBAcGFyYW0gY3JlZGVudGlhbHNQcm92aWRlcgogCSAqICAgICAgICAgICAgdGhlIHByb3ZpZGVyIHRvIHVzZSB3aGVuIHF1ZXJ5aW5nIGZvciBjcmVkZW50aWFscyAoZWcuLCBkdXJpbmcKIAkgKiAgICAgICAgICAgIHNpZ25pbmcpCi0JICogQHNpbmNlIDUuMworCSAqIEByZXR1cm4ge0Bjb2RlIHRoaXN9CisJICogQHNpbmNlIDYuMAogCSAqLwotCXB1YmxpYyB2b2lkIHNldENyZWRlbnRpYWxzUHJvdmlkZXIoCisJcHVibGljIENvbW1pdENvbW1hbmQgc2V0Q3JlZGVudGlhbHNQcm92aWRlcigKIAkJCUNyZWRlbnRpYWxzUHJvdmlkZXIgY3JlZGVudGlhbHNQcm92aWRlcikgewogCQl0aGlzLmNyZWRlbnRpYWxzUHJvdmlkZXIgPSBjcmVkZW50aWFsc1Byb3ZpZGVyOworCQlyZXR1cm4gdGhpczsKIAl9CiB9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9EZXNjcmliZUNvbW1hbmQuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0Rlc2NyaWJlQ29tbWFuZC5qYXZhCmluZGV4IDZhOWZiZDQuLjFlNTI0ZmEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0Rlc2NyaWJlQ29tbWFuZC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0Rlc2NyaWJlQ29tbWFuZC5qYXZhCkBAIC0yMzUsNyArMjM1LDcgQEAgcHVibGljIERlc2NyaWJlQ29tbWFuZCBzZXRNYXRjaChTdHJpbmcuLi4gcGF0dGVybnMpIHRocm93cyBJbnZhbGlkUGF0dGVybkV4Y2VwdGkKIAkJcmV0dXJuIHRoaXM7CiAJfQogCi0JcHJpdmF0ZSBmaW5hbCBDb21wYXJhdG9yPFJlZj4gVEFHX1RJRV9CUkVBS0VSID0gbmV3IENvbXBhcmF0b3I8UmVmPigpIHsKKwlwcml2YXRlIGZpbmFsIENvbXBhcmF0b3I8UmVmPiBUQUdfVElFX0JSRUFLRVIgPSBuZXcgQ29tcGFyYXRvcjw+KCkgewogCiAJCUBPdmVycmlkZQogCQlwdWJsaWMgaW50IGNvbXBhcmUoUmVmIG8xLCBSZWYgbzIpIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL0dhcmJhZ2VDb2xsZWN0Q29tbWFuZC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvR2FyYmFnZUNvbGxlY3RDb21tYW5kLmphdmEKaW5kZXggOGI3ZTNlMS4uYWI4Y2QxOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvR2FyYmFnZUNvbGxlY3RDb21tYW5kLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvR2FyYmFnZUNvbGxlY3RDb21tYW5kLmphdmEKQEAgLTE0LDYgKzE0LDcgQEAKIGltcG9ydCBqYXZhLnRleHQuUGFyc2VFeGNlcHRpb247CiBpbXBvcnQgamF2YS51dGlsLkRhdGU7CiBpbXBvcnQgamF2YS51dGlsLlByb3BlcnRpZXM7CitpbXBvcnQgamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0aW9uRXhjZXB0aW9uOwogCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzLkdpdEFQSUV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnMuSkdpdEludGVybmFsRXhjZXB0aW9uOwpAQCAtMTkzLDkgKzE5NCwxMCBAQCBwdWJsaWMgUHJvcGVydGllcyBjYWxsKCkgdGhyb3dzIEdpdEFQSUV4Y2VwdGlvbiB7CiAJCQkJCWdjLnNldFBhY2tLZXB0T2JqZWN0cyhwYWNrS2VwdE9iamVjdHMuYm9vbGVhblZhbHVlKCkpOwogCQkJCX0KIAkJCQl0cnkgewotCQkJCQlnYy5nYygpOworCQkJCQlnYy5nYygpLmdldCgpOwogCQkJCQlyZXR1cm4gdG9Qcm9wZXJ0aWVzKGdjLmdldFN0YXRpc3RpY3MoKSk7Ci0JCQkJfSBjYXRjaCAoUGFyc2VFeGNlcHRpb24gZSkgeworCQkJCX0gY2F0Y2ggKFBhcnNlRXhjZXB0aW9uIHwgSW50ZXJydXB0ZWRFeGNlcHRpb24KKwkJCQkJCXwgRXhlY3V0aW9uRXhjZXB0aW9uIGUpIHsKIAkJCQkJdGhyb3cgbmV3IEpHaXRJbnRlcm5hbEV4Y2VwdGlvbihKR2l0VGV4dC5nZXQoKS5nY0ZhaWxlZCwgZSk7CiAJCQkJfQogCQkJfSBlbHNlIGlmIChyZXBvIGluc3RhbmNlb2YgRGZzUmVwb3NpdG9yeSkgewpAQCAtMjM4LDYgKzI0MCw3IEBAIHB1YmxpYyBQcm9wZXJ0aWVzIGdldFN0YXRpc3RpY3MoKSB0aHJvd3MgR2l0QVBJRXhjZXB0aW9uIHsKIAlAU3VwcHJlc3NXYXJuaW5ncygiYm94aW5nIikKIAlwcml2YXRlIHN0YXRpYyBQcm9wZXJ0aWVzIHRvUHJvcGVydGllcyhSZXBvU3RhdGlzdGljcyBzdGF0cykgewogCQlQcm9wZXJ0aWVzIHAgPSBuZXcgUHJvcGVydGllcygpOworCQlwLnB1dCgibnVtYmVyT2ZCaXRtYXBzIiwgc3RhdHMubnVtYmVyT2ZCaXRtYXBzKTsgLy8kTk9OLU5MUy0xJAogCQlwLnB1dCgibnVtYmVyT2ZMb29zZU9iamVjdHMiLCBzdGF0cy5udW1iZXJPZkxvb3NlT2JqZWN0cyk7IC8vJE5PTi1OTFMtMSQKIAkJcC5wdXQoIm51bWJlck9mTG9vc2VSZWZzIiwgc3RhdHMubnVtYmVyT2ZMb29zZVJlZnMpOyAvLyROT04tTkxTLTEkCiAJCXAucHV0KCJudW1iZXJPZlBhY2tlZE9iamVjdHMiLCBzdGF0cy5udW1iZXJPZlBhY2tlZE9iamVjdHMpOyAvLyROT04tTkxTLTEkCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9OYW1lUmV2Q29tbWFuZC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvTmFtZVJldkNvbW1hbmQuamF2YQppbmRleCAwM2MzYTAzLi5lNmFiMWU2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9OYW1lUmV2Q29tbWFuZC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL05hbWVSZXZDb21tYW5kLmphdmEKQEAgLTY2LDEyICs2NiwxMyBAQCBwcml2YXRlIFN0cmluZ0J1aWxkZXIgZm9ybWF0KCkgewogCQlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgewogCQkJU3RyaW5nQnVpbGRlciBzYiA9IG5ldyBTdHJpbmdCdWlsZGVyKGdldENsYXNzKCkuZ2V0U2ltcGxlTmFtZSgpKQogCQkJCS5hcHBlbmQoJ1snKTsKLQkJCWlmICh0aXAgIT0gbnVsbCkKKwkJCWlmICh0aXAgIT0gbnVsbCkgewogCQkJCXNiLmFwcGVuZChmb3JtYXQoKSk7Ci0JCQllbHNlCisJCQl9IGVsc2UgewogCQkJCXNiLmFwcGVuZCgoT2JqZWN0KSBudWxsKTsKKwkJCX0KIAkJCXNiLmFwcGVuZCgnLCcpLmFwcGVuZChjb3N0KS5hcHBlbmQoJ10nKS5hcHBlbmQoJyAnKQotCQkJCS5hcHBlbmQoc3VwZXIudG9TdHJpbmcoKSkudG9TdHJpbmcoKTsKKwkJCQkJLmFwcGVuZChzdXBlci50b1N0cmluZygpKTsKIAkJCXJldHVybiBzYi50b1N0cmluZygpOwogCQl9CiAJfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvU3Rhc2hBcHBseUNvbW1hbmQuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYXBpL1N0YXNoQXBwbHlDb21tYW5kLmphdmEKaW5kZXggZTQxNTcyOC4uMTAwNGQzZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9hcGkvU3Rhc2hBcHBseUNvbW1hbmQuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2FwaS9TdGFzaEFwcGx5Q29tbWFuZC5qYXZhCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAyMyBHaXRIdWIgSW5jLiBhbmQgb3RoZXJzCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMjEgR2l0SHViIEluYy4gYW5kIG90aGVycwogICoKICAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQogICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdApAQCAtMjMsNyArMjMsNiBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5Ob0hlYWRFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzLlN0YXNoQXBwbHlGYWlsdXJlRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5Xcm9uZ1JlcG9zaXRvcnlTdGF0ZUV4Y2VwdGlvbjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkNoZWNrb3V0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuRGlyQ2FjaGU7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZUJ1aWxkZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZUNoZWNrb3V0OwpAQCAtMzgzLDcgKzM4Miw2IEBAIHByaXZhdGUgdm9pZCByZXNldEluZGV4KFJldlRyZWUgdHJlZSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAlwcml2YXRlIHZvaWQgcmVzZXRVbnRyYWNrZWQoUmV2VHJlZSB0cmVlKSB0aHJvd3MgQ2hlY2tvdXRDb25mbGljdEV4Y2VwdGlvbiwKIAkJCUlPRXhjZXB0aW9uIHsKIAkJU2V0PFN0cmluZz4gYWN0dWFsbHlNb2RpZmllZFBhdGhzID0gbmV3IEhhc2hTZXQ8PigpOwotCQlDaGVja291dCBjaGVja291dCA9IG5ldyBDaGVja291dChyZXBvKS5zZXRSZWN1cnNpdmVEZWxldGlvbih0cnVlKTsKIAkJLy8gVE9ETyBtYXliZSBOYW1lQ29uZmxpY3RUcmVlV2FsayA/CiAJCXRyeSAoVHJlZVdhbGsgd2FsayA9IG5ldyBUcmVlV2FsayhyZXBvKSkgewogCQkJd2Fsay5hZGRUcmVlKHRyZWUpOwpAQCAtNDA3LDE3ICs0MDUsMTcgQEAgcHJpdmF0ZSB2b2lkIHJlc2V0VW50cmFja2VkKFJldlRyZWUgdHJlZSkgdGhyb3dzIENoZWNrb3V0Q29uZmxpY3RFeGNlcHRpb24sCiAKIAkJCQlGaWxlVHJlZUl0ZXJhdG9yIGZJdGVyID0gd2FsawogCQkJCQkJLmdldFRyZWUoMSwgRmlsZVRyZWVJdGVyYXRvci5jbGFzcyk7Ci0JCQkJU3RyaW5nIGdpdFBhdGggPSBlbnRyeS5nZXRQYXRoU3RyaW5nKCk7CiAJCQkJaWYgKGZJdGVyICE9IG51bGwpIHsKIAkJCQkJaWYgKGZJdGVyLmlzTW9kaWZpZWQoZW50cnksIHRydWUsIHJlYWRlcikpIHsKIAkJCQkJCS8vIGZpbGUgZXhpc3RzIGFuZCBpcyBkaXJ0eQotCQkJCQkJdGhyb3cgbmV3IENoZWNrb3V0Q29uZmxpY3RFeGNlcHRpb24oZ2l0UGF0aCk7CisJCQkJCQl0aHJvdyBuZXcgQ2hlY2tvdXRDb25mbGljdEV4Y2VwdGlvbigKKwkJCQkJCQkJZW50cnkuZ2V0UGF0aFN0cmluZygpKTsKIAkJCQkJfQogCQkJCX0KIAotCQkJCWNoZWNrb3V0UGF0aChlbnRyeSwgZ2l0UGF0aCwgcmVhZGVyLCBjaGVja291dCwKKwkJCQljaGVja291dFBhdGgoZW50cnksIHJlYWRlciwKIAkJCQkJCW5ldyBDaGVja291dE1ldGFkYXRhKGVvbFN0cmVhbVR5cGUsIG51bGwpKTsKLQkJCQlhY3R1YWxseU1vZGlmaWVkUGF0aHMuYWRkKGdpdFBhdGgpOworCQkJCWFjdHVhbGx5TW9kaWZpZWRQYXRocy5hZGQoZW50cnkuZ2V0UGF0aFN0cmluZygpKTsKIAkJCX0KIAkJfSBmaW5hbGx5IHsKIAkJCWlmICghYWN0dWFsbHlNb2RpZmllZFBhdGhzLmlzRW1wdHkoKSkgewpAQCAtNDI3LDExICs0MjUsMTEgQEAgcHJpdmF0ZSB2b2lkIHJlc2V0VW50cmFja2VkKFJldlRyZWUgdHJlZSkgdGhyb3dzIENoZWNrb3V0Q29uZmxpY3RFeGNlcHRpb24sCiAJCX0KIAl9CiAKLQlwcml2YXRlIHZvaWQgY2hlY2tvdXRQYXRoKERpckNhY2hlRW50cnkgZW50cnksIFN0cmluZyBnaXRQYXRoLAotCQkJT2JqZWN0UmVhZGVyIHJlYWRlciwKLQkJCUNoZWNrb3V0IGNoZWNrb3V0LCBDaGVja291dE1ldGFkYXRhIGNoZWNrb3V0TWV0YWRhdGEpIHsKKwlwcml2YXRlIHZvaWQgY2hlY2tvdXRQYXRoKERpckNhY2hlRW50cnkgZW50cnksIE9iamVjdFJlYWRlciByZWFkZXIsCisJCQlDaGVja291dE1ldGFkYXRhIGNoZWNrb3V0TWV0YWRhdGEpIHsKIAkJdHJ5IHsKLQkJCWNoZWNrb3V0LmNoZWNrb3V0KGVudHJ5LCBjaGVja291dE1ldGFkYXRhLCByZWFkZXIsIGdpdFBhdGgpOworCQkJRGlyQ2FjaGVDaGVja291dC5jaGVja291dEVudHJ5KHJlcG8sIGVudHJ5LCByZWFkZXIsIHRydWUsCisJCQkJCWNoZWNrb3V0TWV0YWRhdGEpOwogCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CiAJCQl0aHJvdyBuZXcgSkdpdEludGVybmFsRXhjZXB0aW9uKE1lc3NhZ2VGb3JtYXQuZm9ybWF0KAogCQkJCQlKR2l0VGV4dC5nZXQoKS5jaGVja291dENvbmZsaWN0V2l0aEZpbGUsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2JsYW1lL0NhbmRpZGF0ZS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9ibGFtZS9DYW5kaWRhdGUuamF2YQppbmRleCBiNjliYjhmLi5jYTUzNzBlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2JsYW1lL0NhbmRpZGF0ZS5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYmxhbWUvQ2FuZGlkYXRlLmphdmEKQEAgLTcxLDEyICs3MSwxMiBAQCBjbGFzcyBDYW5kaWRhdGUgewogCS8qKgogCSAqIFNjb3JlIGFzc2lnbmVkIHRvIHRoZSByZW5hbWUgdG8gdGhpcyBjYW5kaWRhdGUuCiAJICogPHA+Ci0JICogQ29uc2lkZXIgdGhlIGhpc3RvcnkgIkE8LUI8LUMiLiBJZiB0aGUgcmVzdWx0IGZpbGUgUyBpbiBDIHdhcyByZW5hbWVkIHRvCi0JICogUiBpbiBCLCB0aGUgcmVuYW1lIHNjb3JlIGZvciB0aGlzIHJlbmFtZSB3aWxsIGJlIGhlbGQgaW4gdGhpcyBmaWVsZCBieQotCSAqIHRoZSBjYW5kaWRhdGUgb2JqZWN0IGZvciBCLiBCeSBzdG9yaW5nIHRoZSBzY29yZSB3aXRoIEIsIHRoZSBhcHBsaWNhdGlvbgotCSAqIGNhbiBzZWUgd2hhdCB0aGUgcmVuYW1lIHNjb3JlIHdhcyBhcyBpdCBtYWtlcyB0aGUgdHJhbnNpdGlvbiBmcm9tIEMvUyB0bwotCSAqIEIvUi4gVGhpcyBtYXkgc2VlbSBiYWNrd2FyZHMgc2luY2UgaXQgd2FzIEMgdGhhdCBwZXJmb3JtZWQgdGhlIHJlbmFtZSwKLQkgKiBidXQgdGhlIGFwcGxpY2F0aW9uIGRvZXNuJ3QgbGVhcm4gYWJvdXQgcGF0aCBSIHVudGlsIEIuCisJICogQ29uc2lkZXIgdGhlIGhpc3RvcnkgIkEmbHQ7LUImbHQ7LUMiLiBJZiB0aGUgcmVzdWx0IGZpbGUgUyBpbiBDIHdhcworCSAqIHJlbmFtZWQgdG8gUiBpbiBCLCB0aGUgcmVuYW1lIHNjb3JlIGZvciB0aGlzIHJlbmFtZSB3aWxsIGJlIGhlbGQgaW4gdGhpcworCSAqIGZpZWxkIGJ5IHRoZSBjYW5kaWRhdGUgb2JqZWN0IGZvciBCLiBCeSBzdG9yaW5nIHRoZSBzY29yZSB3aXRoIEIsIHRoZQorCSAqIGFwcGxpY2F0aW9uIGNhbiBzZWUgd2hhdCB0aGUgcmVuYW1lIHNjb3JlIHdhcyBhcyBpdCBtYWtlcyB0aGUgdHJhbnNpdGlvbgorCSAqIGZyb20gQy9TIHRvIEIvUi4gVGhpcyBtYXkgc2VlbSBiYWNrd2FyZHMgc2luY2UgaXQgd2FzIEMgdGhhdCBwZXJmb3JtZWQKKwkgKiB0aGUgcmVuYW1lLCBidXQgdGhlIGFwcGxpY2F0aW9uIGRvZXNuJ3QgbGVhcm4gYWJvdXQgcGF0aCBSIHVudGlsIEIuCiAJICovCiAJaW50IHJlbmFtZVNjb3JlOwogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2JsYW1lL1JlZ2lvbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9ibGFtZS9SZWdpb24uamF2YQppbmRleCBlMjI2ZGJmLi4yMjM2ZWVjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2JsYW1lL1JlZ2lvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvYmxhbWUvUmVnaW9uLmphdmEKQEAgLTI3LDcgKzI3LDcgQEAgY2xhc3MgUmVnaW9uIHsKIAkvKiogRmlyc3QgcG9zaXRpb24gaW4gdGhlIHtAbGluayBDYW5kaWRhdGV9IHRoYXQgb3ducyB0aGlzIFJlZ2lvbi4gKi8KIAlpbnQgc291cmNlU3RhcnQ7CiAKLQkvKiogTGVuZ3RoIG9mIHRoZSByZWdpb24sIGFsd2F5cyA+PSAxLiAqLworCS8qKiBMZW5ndGggb2YgdGhlIHJlZ2lvbiwgYWx3YXlzICZndDs9IDEuICovCiAJaW50IGxlbmd0aDsKIAogCVJlZ2lvbihpbnQgcnMsIGludCBzcywgaW50IGxlbikgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL0RpZmZGb3JtYXR0ZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9EaWZmRm9ybWF0dGVyLmphdmEKaW5kZXggZWMyMTk1NC4uNDlkYTk1YyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL0RpZmZGb3JtYXR0ZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvRGlmZkZvcm1hdHRlci5qYXZhCkBAIC0yOSwxMiArMjksMTIgQEAKIGltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CiBpbXBvcnQgamF2YS51dGlsLkxpc3Q7CiAKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnMuQ2FuY2VsZWRFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaWZmLkRpZmZBbGdvcml0aG0uU3VwcG9ydGVkQWxnb3JpdGhtOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlmZi5EaWZmRW50cnkuQ2hhbmdlVHlwZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlSXRlcmF0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuQW1iaWd1b3VzT2JqZWN0RXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLkJpbmFyeUJsb2JFeGNlcHRpb247Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuQ2FuY2VsbGVkRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLkNvcnJ1cHRPYmplY3RFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuSW5jb3JyZWN0T2JqZWN0VHlwZUV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5NaXNzaW5nT2JqZWN0RXhjZXB0aW9uOwpAQCAtNTc4LDcgKzU3OCw3IEBAIHByaXZhdGUgTGlzdDxEaWZmRW50cnk+IGRldGVjdFJlbmFtZXMoTGlzdDxEaWZmRW50cnk+IGZpbGVzKQogCQlyZW5hbWVEZXRlY3Rvci5hZGRBbGwoZmlsZXMpOwogCQl0cnkgewogCQkJcmV0dXJuIHJlbmFtZURldGVjdG9yLmNvbXB1dGUocmVhZGVyLCBwcm9ncmVzc01vbml0b3IpOwotCQl9IGNhdGNoIChDYW5jZWxsZWRFeGNlcHRpb24gZSkgeworCQl9IGNhdGNoIChDYW5jZWxlZEV4Y2VwdGlvbiBlKSB7CiAJCQkvLyBUT0RPOiBjb25zaWRlciBwcm9wYWdhdGluZyBvbmNlIGJ1ZyA1MzYzMjMgaXMgdGFja2xlZAogCQkJLy8gKG1ha2luZyBEaWZmRW50cnkuc2NhbigpIGFuZCBEaWZmRm9ybWF0dGVyLnNjYW4oKSBhbmQKIAkJCS8vIGZvcm1hdCgpIGNhbmNlbGxhYmxlKS4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9SYXdUZXh0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvUmF3VGV4dC5qYXZhCmluZGV4IGQwOWRhMDEuLjE5OTYxYTEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9SYXdUZXh0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL1Jhd1RleHQuamF2YQpAQCAtMTcsNiArMTcsNyBAQAogaW1wb3J0IGphdmEuaW8uSW5wdXRTdHJlYW07CiBpbXBvcnQgamF2YS5pby5PdXRwdXRTdHJlYW07CiBpbXBvcnQgamF2YS5uaW8uQnl0ZUJ1ZmZlcjsKK2ltcG9ydCBqYXZhLnV0aWwuY29uY3VycmVudC5hdG9taWMuQXRvbWljSW50ZWdlcjsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLkJpbmFyeUJsb2JFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuTGFyZ2VPYmplY3RFeGNlcHRpb247CkBAIC0zOCwxMSArMzksMjAgQEAKICAqIHRoZXkgYXJlIGNvbnZlcnRpbmcgZnJvbSAibGluZSBudW1iZXIiIHRvICJlbGVtZW50IGluZGV4Ii4KICAqLwogcHVibGljIGNsYXNzIFJhd1RleHQgZXh0ZW5kcyBTZXF1ZW5jZSB7CisKIAkvKiogQSBSYXdUZXh0IG9mIGxlbmd0aCAwICovCiAJcHVibGljIHN0YXRpYyBmaW5hbCBSYXdUZXh0IEVNUFRZX1RFWFQgPSBuZXcgUmF3VGV4dChuZXcgYnl0ZVswXSk7CiAKLQkvKiogTnVtYmVyIG9mIGJ5dGVzIHRvIGNoZWNrIGZvciBoZXVyaXN0aWNzIGluIHtAbGluayAjaXNCaW5hcnkoYnl0ZVtdKX0gKi8KLQlzdGF0aWMgZmluYWwgaW50IEZJUlNUX0ZFV19CWVRFUyA9IDgwMDA7CisJLyoqCisJICogRGVmYXVsdCBhbmQgbWluaW11bSBmb3Ige0BsaW5rICNCVUZGRVJfU0laRX0uCisJICovCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgaW50IEZJUlNUX0ZFV19CWVRFUyA9IDggKiAxMDI0OworCisJLyoqCisJICogTnVtYmVyIG9mIGJ5dGVzIHRvIGNoZWNrIGZvciBoZXVyaXN0aWNzIGluIHtAbGluayAjaXNCaW5hcnkoYnl0ZVtdKX0uCisJICovCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgQXRvbWljSW50ZWdlciBCVUZGRVJfU0laRSA9IG5ldyBBdG9taWNJbnRlZ2VyKAorCQkJRklSU1RfRkVXX0JZVEVTKTsKIAogCS8qKiBUaGUgZmlsZSBjb250ZW50IGZvciB0aGlzIHNlcXVlbmNlLiAqLwogCXByb3RlY3RlZCBmaW5hbCBieXRlW10gY29udGVudDsKQEAgLTIzNiwxNSArMjQ2LDMwIEBAIHByaXZhdGUgaW50IGdldEVuZChpbnQgaSkgewogCX0KIAogCS8qKgotCSAqIERldGVybWluZSBoZXVyaXN0aWNhbGx5IHdoZXRoZXIgYSBieXRlIGFycmF5IHJlcHJlc2VudHMgYmluYXJ5IChhcwotCSAqIG9wcG9zZWQgdG8gdGV4dCkgY29udGVudC4KKwkgKiBPYnRhaW5zIHRoZSBidWZmZXIgc2l6ZSB0byB1c2UgZm9yIGFuYWx5emluZyB3aGV0aGVyIGNlcnRhaW4gY29udGVudCBpcworCSAqIHRleHQgb3IgYmluYXJ5LCBvciB3aGF0IGxpbmUgZW5kaW5ncyBhcmUgdXNlZCBpZiBpdCdzIHRleHQuCiAJICoKLQkgKiBAcGFyYW0gcmF3Ci0JICogICAgICAgICAgICB0aGUgcmF3IGZpbGUgY29udGVudC4KLQkgKiBAcmV0dXJuIHRydWUgaWYgcmF3IGlzIGxpa2VseSB0byBiZSBhIGJpbmFyeSBmaWxlLCBmYWxzZSBvdGhlcndpc2UKKwkgKiBAcmV0dXJuIHRoZSBidWZmZXIgc2l6ZSwgYnkgZGVmYXVsdCB7QGxpbmsgI0ZJUlNUX0ZFV19CWVRFU30gYnl0ZXMKKwkgKiBAc2luY2UgNi4wCiAJICovCi0JcHVibGljIHN0YXRpYyBib29sZWFuIGlzQmluYXJ5KGJ5dGVbXSByYXcpIHsKLQkJcmV0dXJuIGlzQmluYXJ5KHJhdywgcmF3Lmxlbmd0aCk7CisJcHVibGljIHN0YXRpYyBpbnQgZ2V0QnVmZmVyU2l6ZSgpIHsKKwkJcmV0dXJuIEJVRkZFUl9TSVpFLmdldCgpOworCX0KKworCS8qKgorCSAqIFNldHMgdGhlIGJ1ZmZlciBzaXplIHRvIHVzZSBmb3IgYW5hbHl6aW5nIHdoZXRoZXIgY2VydGFpbiBjb250ZW50IGlzIHRleHQKKwkgKiBvciBiaW5hcnksIG9yIHdoYXQgbGluZSBlbmRpbmdzIGFyZSB1c2VkIGlmIGl0J3MgdGV4dC4gSWYgdGhlIGdpdmVuCisJICoge0Bjb2RlIGJ1ZmZlclNpemV9IGlzIHNtYWxsZXIgdGhhbiB7QGxpbmsgI0ZJUlNUX0ZFV19CWVRFU30gc2V0IHRoZQorCSAqIGJ1ZmZlciBzaXplIHRvIHtAbGluayAjRklSU1RfRkVXX0JZVEVTfS4KKwkgKgorCSAqIEBwYXJhbSBidWZmZXJTaXplCisJICogICAgICAgICAgICBTaXplIHRvIHNldAorCSAqIEByZXR1cm4gdGhlIHNpemUgYWN0dWFsbHkgc2V0CisJICogQHNpbmNlIDYuMAorCSAqLworCXB1YmxpYyBzdGF0aWMgaW50IHNldEJ1ZmZlclNpemUoaW50IGJ1ZmZlclNpemUpIHsKKwkJaW50IG5ld1NpemUgPSBNYXRoLm1heChGSVJTVF9GRVdfQllURVMsIGJ1ZmZlclNpemUpOworCQlyZXR1cm4gQlVGRkVSX1NJWkUudXBkYXRlQW5kR2V0KGN1cnIgLT4gbmV3U2l6ZSk7CiAJfQogCiAJLyoqCkBAIC0yNjMsNyArMjg4LDcgQEAgcHVibGljIHN0YXRpYyBib29sZWFuIGlzQmluYXJ5KGJ5dGVbXSByYXcpIHsKIAkgKiAgICAgICAgICAgICBpZiBpbnB1dCBzdHJlYW0gY291bGQgbm90IGJlIHJlYWQKIAkgKi8KIAlwdWJsaWMgc3RhdGljIGJvb2xlYW4gaXNCaW5hcnkoSW5wdXRTdHJlYW0gcmF3KSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQlmaW5hbCBieXRlW10gYnVmZmVyID0gbmV3IGJ5dGVbRklSU1RfRkVXX0JZVEVTXTsKKwkJZmluYWwgYnl0ZVtdIGJ1ZmZlciA9IG5ldyBieXRlW2dldEJ1ZmZlclNpemUoKV07CiAJCWludCBjbnQgPSAwOwogCQl3aGlsZSAoY250IDwgYnVmZmVyLmxlbmd0aCkgewogCQkJZmluYWwgaW50IG4gPSByYXcucmVhZChidWZmZXIsIGNudCwgYnVmZmVyLmxlbmd0aCAtIGNudCk7CkBAIC0yNzEsNyArMjk2LDE5IEBAIHB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0JpbmFyeShJbnB1dFN0cmVhbSByYXcpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCQkJYnJlYWs7CiAJCQljbnQgKz0gbjsKIAkJfQotCQlyZXR1cm4gaXNCaW5hcnkoYnVmZmVyLCBjbnQpOworCQlyZXR1cm4gaXNCaW5hcnkoYnVmZmVyLCBjbnQsIGNudCA8IGJ1ZmZlci5sZW5ndGgpOworCX0KKworCS8qKgorCSAqIERldGVybWluZSBoZXVyaXN0aWNhbGx5IHdoZXRoZXIgYSBieXRlIGFycmF5IHJlcHJlc2VudHMgYmluYXJ5IChhcworCSAqIG9wcG9zZWQgdG8gdGV4dCkgY29udGVudC4KKwkgKgorCSAqIEBwYXJhbSByYXcKKwkgKiAgICAgICAgICAgIHRoZSByYXcgZmlsZSBjb250ZW50LgorCSAqIEByZXR1cm4gdHJ1ZSBpZiByYXcgaXMgbGlrZWx5IHRvIGJlIGEgYmluYXJ5IGZpbGUsIGZhbHNlIG90aGVyd2lzZQorCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0JpbmFyeShieXRlW10gcmF3KSB7CisJCXJldHVybiBpc0JpbmFyeShyYXcsIHJhdy5sZW5ndGgpOwogCX0KIAogCS8qKgpAQCAtMjg3LDE3ICszMjQsNjQgQEAgcHVibGljIHN0YXRpYyBib29sZWFuIGlzQmluYXJ5KElucHV0U3RyZWFtIHJhdykgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkgKiBAcmV0dXJuIHRydWUgaWYgcmF3IGlzIGxpa2VseSB0byBiZSBhIGJpbmFyeSBmaWxlLCBmYWxzZSBvdGhlcndpc2UKIAkgKi8KIAlwdWJsaWMgc3RhdGljIGJvb2xlYW4gaXNCaW5hcnkoYnl0ZVtdIHJhdywgaW50IGxlbmd0aCkgewotCQkvLyBTYW1lIGhldXJpc3RpYyBhcyBDIEdpdAotCQlpZiAobGVuZ3RoID4gRklSU1RfRkVXX0JZVEVTKQotCQkJbGVuZ3RoID0gRklSU1RfRkVXX0JZVEVTOwotCQlmb3IgKGludCBwdHIgPSAwOyBwdHIgPCBsZW5ndGg7IHB0cisrKQotCQkJaWYgKHJhd1twdHJdID09ICdcMCcpCi0JCQkJcmV0dXJuIHRydWU7CisJCXJldHVybiBpc0JpbmFyeShyYXcsIGxlbmd0aCwgZmFsc2UpOworCX0KIAorCS8qKgorCSAqIERldGVybWluZSBoZXVyaXN0aWNhbGx5IHdoZXRoZXIgYSBieXRlIGFycmF5IHJlcHJlc2VudHMgYmluYXJ5IChhcworCSAqIG9wcG9zZWQgdG8gdGV4dCkgY29udGVudC4KKwkgKgorCSAqIEBwYXJhbSByYXcKKwkgKiAgICAgICAgICAgIHRoZSByYXcgZmlsZSBjb250ZW50LgorCSAqIEBwYXJhbSBsZW5ndGgKKwkgKiAgICAgICAgICAgIG51bWJlciBvZiBieXRlcyBpbiB7QGNvZGUgcmF3fSB0byBldmFsdWF0ZS4gVGhpcyBzaG91bGQgYmUKKwkgKiAgICAgICAgICAgIHtAY29kZSByYXcubGVuZ3RofSB1bmxlc3Mge0Bjb2RlIHJhd30gd2FzIG92ZXItYWxsb2NhdGVkIGJ5CisJICogICAgICAgICAgICB0aGUgY2FsbGVyLgorCSAqIEBwYXJhbSBjb21wbGV0ZQorCSAqICAgICAgICAgICAgd2hldGhlciB7QGNvZGUgcmF3fSBjb250YWlucyB0aGUgd2hvbGUgZGF0YQorCSAqIEByZXR1cm4gdHJ1ZSBpZiByYXcgaXMgbGlrZWx5IHRvIGJlIGEgYmluYXJ5IGZpbGUsIGZhbHNlIG90aGVyd2lzZQorCSAqIEBzaW5jZSA2LjAKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGJvb2xlYW4gaXNCaW5hcnkoYnl0ZVtdIHJhdywgaW50IGxlbmd0aCwgYm9vbGVhbiBjb21wbGV0ZSkgeworCQkvLyBTaW1pbGFyIGhldXJpc3RpYyBhcyBDIEdpdC4gRGlmZmVyZW5jZXM6CisJCS8vIC0gbGltaXRlZCBidWZmZXIgc2l6ZTsgbWF5IGJlIG9ubHkgdGhlIGJlZ2lubmluZyBvZiBhIGxhcmdlIGJsb2IKKwkJLy8gLSBubyBjb3VudGluZyBvZiBwcmludGFibGUgdnMuIG5vbi1wcmludGFibGUgYnl0ZXMgPCAweDIwIGFuZCAweDdGCisJCWludCBtYXhMZW5ndGggPSBnZXRCdWZmZXJTaXplKCk7CisJCWlmIChsZW5ndGggPiBtYXhMZW5ndGgpIHsKKwkJCWxlbmd0aCA9IG1heExlbmd0aDsKKwkJfQorCQlieXRlIGxhc3QgPSAneCc7IC8vIEp1c3Qgc29tZXRoaW5nIGluY29uc3BpY3VvdXMuCisJCWZvciAoaW50IHB0ciA9IDA7IHB0ciA8IGxlbmd0aDsgcHRyKyspIHsKKwkJCWJ5dGUgY3VyciA9IHJhd1twdHJdOworCQkJaWYgKGlzQmluYXJ5KGN1cnIsIGxhc3QpKSB7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCQlsYXN0ID0gY3VycjsKKwkJfQorCQlpZiAoY29tcGxldGUpIHsKKwkJCS8vIEJ1ZmZlciBjb250YWlucyBldmVyeXRoaW5nLi4uCisJCQlyZXR1cm4gbGFzdCA9PSAnXHInOyAvLyAuLi4gc28gdGhpcyBtdXN0IGJlIGEgbG9uZSBDUgorCQl9CiAJCXJldHVybiBmYWxzZTsKIAl9CiAKIAkvKioKKwkgKiBEZXRlcm1pbmVzIGZyb20gdGhlIGxhc3QgdHdvIGJ5dGVzIHJlYWQgZnJvbSBhIHNvdXJjZSBpZiBpdCBsb29rcyBsaWtlCisJICogYmluYXJ5IGNvbnRlbnQuCisJICoKKwkgKiBAcGFyYW0gY3VycgorCSAqICAgICAgICAgICAgdGhlIGxhc3QgYnl0ZSwgcmVhZCBhZnRlciB7QGNvZGUgcHJldn0KKwkgKiBAcGFyYW0gcHJldgorCSAqICAgICAgICAgICAgdGhlIHByZXZpb3VzIGJ5dGUsIHJlYWQgYmVmb3JlIHtAY29kZSBsYXN0fQorCSAqIEByZXR1cm4ge0Bjb2RlIHRydWV9wqBpZiBlaXRoZXIgYnl0ZSBpcyBOVUwsIG9yIGlmIHByZXYgaXMgQ1IgYW5kIGN1cnIgaXMKKwkgKiAgICAgICAgIG5vdCBMRiwge0Bjb2RlIGZhbHNlfSBvdGhlcndpc2UKKwkgKiBAc2luY2UgNi4wCisJICovCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzQmluYXJ5KGJ5dGUgY3VyciwgYnl0ZSBwcmV2KSB7CisJCXJldHVybiBjdXJyID09ICdcMCcgfHwgKGN1cnIgIT0gJ1xuJyAmJiBwcmV2ID09ICdccicpIHx8IHByZXYgPT0gJ1wwJzsKKwl9CisKKwkvKioKIAkgKiBEZXRlcm1pbmUgaGV1cmlzdGljYWxseSB3aGV0aGVyIGEgYnl0ZSBhcnJheSByZXByZXNlbnRzIHRleHQgY29udGVudAogCSAqIHVzaW5nIENSLUxGIGFzIGxpbmUgc2VwYXJhdG9yLgogCSAqCkBAIC0zMjksNyArNDEzLDcgQEAgcHVibGljIHN0YXRpYyBib29sZWFuIGlzQ3JMZlRleHQoYnl0ZVtdIHJhdykgewogCSAqIEBzaW5jZSA1LjMKIAkgKi8KIAlwdWJsaWMgc3RhdGljIGJvb2xlYW4gaXNDckxmVGV4dChJbnB1dFN0cmVhbSByYXcpIHRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCWJ5dGVbXSBidWZmZXIgPSBuZXcgYnl0ZVtGSVJTVF9GRVdfQllURVNdOworCQlieXRlW10gYnVmZmVyID0gbmV3IGJ5dGVbZ2V0QnVmZmVyU2l6ZSgpXTsKIAkJaW50IGNudCA9IDA7CiAJCXdoaWxlIChjbnQgPCBidWZmZXIubGVuZ3RoKSB7CiAJCQlpbnQgbiA9IHJhdy5yZWFkKGJ1ZmZlciwgY250LCBidWZmZXIubGVuZ3RoIC0gY250KTsKQEAgLTM1NCwxMyArNDM4LDQ0IEBAIHB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0NyTGZUZXh0KElucHV0U3RyZWFtIHJhdykgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkgKiBAc2luY2UgNS4zCiAJICovCiAJcHVibGljIHN0YXRpYyBib29sZWFuIGlzQ3JMZlRleHQoYnl0ZVtdIHJhdywgaW50IGxlbmd0aCkgeworCQlyZXR1cm4gaXNDckxmVGV4dChyYXcsIGxlbmd0aCwgZmFsc2UpOworCX0KKworCS8qKgorCSAqIERldGVybWluZSBoZXVyaXN0aWNhbGx5IHdoZXRoZXIgYSBieXRlIGFycmF5IHJlcHJlc2VudHMgdGV4dCBjb250ZW50CisJICogdXNpbmcgQ1ItTEYgYXMgbGluZSBzZXBhcmF0b3IuCisJICoKKwkgKiBAcGFyYW0gcmF3CisJICogICAgICAgICAgICB0aGUgcmF3IGZpbGUgY29udGVudC4KKwkgKiBAcGFyYW0gbGVuZ3RoCisJICogICAgICAgICAgICBudW1iZXIgb2YgYnl0ZXMgaW4ge0Bjb2RlIHJhd30gdG8gZXZhbHVhdGUuCisJICogQHJldHVybiB7QGNvZGUgdHJ1ZX0gaWYgcmF3IGlzIGxpa2VseSB0byBiZSBDUi1MRiBkZWxpbWl0ZWQgdGV4dCwKKwkgKiAgICAgICAgIHtAY29kZSBmYWxzZX0gb3RoZXJ3aXNlCisJICogQHBhcmFtIGNvbXBsZXRlCisJICogICAgICAgICAgICB3aGV0aGVyIHtAY29kZSByYXd9IGNvbnRhaW5zIHRoZSB3aG9sZSBkYXRhCisJICogQHNpbmNlIDYuMAorCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0NyTGZUZXh0KGJ5dGVbXSByYXcsIGludCBsZW5ndGgsIGJvb2xlYW4gY29tcGxldGUpIHsKIAkJYm9vbGVhbiBoYXNfY3JsZiA9IGZhbHNlOwotCQlmb3IgKGludCBwdHIgPSAwOyBwdHIgPCBsZW5ndGggLSAxOyBwdHIrKykgewotCQkJaWYgKHJhd1twdHJdID09ICdcMCcpIHsKLQkJCQlyZXR1cm4gZmFsc2U7IC8vIGJpbmFyeQotCQkJfSBlbHNlIGlmIChyYXdbcHRyXSA9PSAnXHInICYmIHJhd1twdHIgKyAxXSA9PSAnXG4nKSB7CisJCWJ5dGUgbGFzdCA9ICd4JzsgLy8gSnVzdCBzb21ldGhpbmcgaW5jb25zcGljdW91cworCQlmb3IgKGludCBwdHIgPSAwOyBwdHIgPCBsZW5ndGg7IHB0cisrKSB7CisJCQlieXRlIGN1cnIgPSByYXdbcHRyXTsKKwkJCWlmIChpc0JpbmFyeShjdXJyLCBsYXN0KSkgeworCQkJCXJldHVybiBmYWxzZTsKKwkJCX0KKwkJCWlmIChjdXJyID09ICdcbicgJiYgbGFzdCA9PSAnXHInKSB7CiAJCQkJaGFzX2NybGYgPSB0cnVlOwogCQkJfQorCQkJbGFzdCA9IGN1cnI7CisJCX0KKwkJaWYgKGxhc3QgPT0gJ1xyJykgeworCQkJaWYgKGNvbXBsZXRlKSB7CisJCQkJLy8gTG9uZSBDUjogaXQncyBiaW5hcnkgYWZ0ZXIgYWxsLgorCQkJCXJldHVybiBmYWxzZTsKKwkJCX0KKwkJCS8vIFRvdWdoIGNhbGwuIElmIHRoZSBuZXh0IGJ5dGUsIHdoaWNoIHdlIGRvbid0IGhhdmUsIHdvdWxkIGJlIGEKKwkJCS8vICdcbicsIGl0J2QgYmUgYSBDUi1MRiB0ZXh0LCBvdGhlcndpc2UgaXQnZCBiZSBiaW5hcnkuIEp1c3QgZGVjaWRlCisJCQkvLyBiYXNlZCBvbiB3aGF0IHdlIGFscmVhZHkgc2Nhbm5lZDsgaXQgd2Fzbid0IGJpbmFyeSB1bnRpbCBub3cuCiAJCX0KIAkJcmV0dXJuIGhhc19jcmxmOwogCX0KQEAgLTQwOSwxOCArNTI0LDIwIEBAIHB1YmxpYyBzdGF0aWMgUmF3VGV4dCBsb2FkKE9iamVjdExvYWRlciBsZHIsIGludCB0aHJlc2hvbGQpCiAJCQl0aHJvdyBuZXcgQmluYXJ5QmxvYkV4Y2VwdGlvbigpOwogCQl9CiAKLQkJaWYgKHN6IDw9IEZJUlNUX0ZFV19CWVRFUykgewotCQkJYnl0ZVtdIGRhdGEgPSBsZHIuZ2V0Q2FjaGVkQnl0ZXMoRklSU1RfRkVXX0JZVEVTKTsKLQkJCWlmIChpc0JpbmFyeShkYXRhKSkgeworCQlpbnQgYnVmZmVyU2l6ZSA9IGdldEJ1ZmZlclNpemUoKTsKKwkJaWYgKHN6IDw9IGJ1ZmZlclNpemUpIHsKKwkJCWJ5dGVbXSBkYXRhID0gbGRyLmdldENhY2hlZEJ5dGVzKGJ1ZmZlclNpemUpOworCQkJaWYgKGlzQmluYXJ5KGRhdGEsIGRhdGEubGVuZ3RoLCB0cnVlKSkgewogCQkJCXRocm93IG5ldyBCaW5hcnlCbG9iRXhjZXB0aW9uKCk7CiAJCQl9CiAJCQlyZXR1cm4gbmV3IFJhd1RleHQoZGF0YSk7CiAJCX0KIAotCQlieXRlW10gaGVhZCA9IG5ldyBieXRlW0ZJUlNUX0ZFV19CWVRFU107CisJCWJ5dGVbXSBoZWFkID0gbmV3IGJ5dGVbYnVmZmVyU2l6ZV07CiAJCXRyeSAoSW5wdXRTdHJlYW0gc3RyZWFtID0gbGRyLm9wZW5TdHJlYW0oKSkgewogCQkJaW50IG9mZiA9IDA7CiAJCQlpbnQgbGVmdCA9IGhlYWQubGVuZ3RoOworCQkJYnl0ZSBsYXN0ID0gJ3gnOyAvLyBKdXN0IHNvbWV0aGluZyBpbmNvbnNwaWN1b3VzCiAJCQl3aGlsZSAobGVmdCA+IDApIHsKIAkJCQlpbnQgbiA9IHN0cmVhbS5yZWFkKGhlYWQsIG9mZiwgbGVmdCk7CiAJCQkJaWYgKG4gPCAwKSB7CkBAIC00MjksOSArNTQ2LDExIEBAIHB1YmxpYyBzdGF0aWMgUmF3VGV4dCBsb2FkKE9iamVjdExvYWRlciBsZHIsIGludCB0aHJlc2hvbGQpCiAJCQkJbGVmdCAtPSBuOwogCiAJCQkJd2hpbGUgKG4gPiAwKSB7Ci0JCQkJCWlmIChoZWFkW29mZl0gPT0gJ1wwJykgeworCQkJCQlieXRlIGN1cnIgPSBoZWFkW29mZl07CisJCQkJCWlmIChpc0JpbmFyeShjdXJyLCBsYXN0KSkgewogCQkJCQkJdGhyb3cgbmV3IEJpbmFyeUJsb2JFeGNlcHRpb24oKTsKIAkJCQkJfQorCQkJCQlsYXN0ID0gY3VycjsKIAkJCQkJb2ZmKys7CiAJCQkJCW4tLTsKIAkJCQl9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvUmVuYW1lRGV0ZWN0b3IuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9SZW5hbWVEZXRlY3Rvci5qYXZhCmluZGV4IGJhMWY2M2IuLmMzM2Y1M2EgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9SZW5hbWVEZXRlY3Rvci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9SZW5hbWVEZXRlY3Rvci5qYXZhCkBAIC0yMyw5ICsyMyw5IEBACiBpbXBvcnQgamF2YS51dGlsLkhhc2hNYXA7CiBpbXBvcnQgamF2YS51dGlsLkxpc3Q7CiAKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnMuQ2FuY2VsZWRFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaWZmLkRpZmZFbnRyeS5DaGFuZ2VUeXBlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlmZi5TaW1pbGFyaXR5SW5kZXguVGFibGVGdWxsRXhjZXB0aW9uOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLkNhbmNlbGxlZEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLkpHaXRUZXh0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkFiYnJldmlhdGVkT2JqZWN0SWQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuRmlsZU1vZGU7CkBAIC00MCw3ICs0MCw4IEBACiBwdWJsaWMgY2xhc3MgUmVuYW1lRGV0ZWN0b3IgewogCXByaXZhdGUgc3RhdGljIGZpbmFsIGludCBFWEFDVF9SRU5BTUVfU0NPUkUgPSAxMDA7CiAKLQlwcml2YXRlIHN0YXRpYyBmaW5hbCBDb21wYXJhdG9yPERpZmZFbnRyeT4gRElGRl9DT01QQVJBVE9SID0gbmV3IENvbXBhcmF0b3I8RGlmZkVudHJ5PigpIHsKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBDb21wYXJhdG9yPERpZmZFbnRyeT4gRElGRl9DT01QQVJBVE9SID0gbmV3IENvbXBhcmF0b3I8PigpIHsKKwogCQlAT3ZlcnJpZGUKIAkJcHVibGljIGludCBjb21wYXJlKERpZmZFbnRyeSBhLCBEaWZmRW50cnkgYikgewogCQkJaW50IGNtcCA9IG5hbWVPZihhKS5jb21wYXJlVG8obmFtZU9mKGIpKTsKQEAgLTMzNSw2ICszMzYsNyBAQCBwdWJsaWMgdm9pZCBhZGQoRGlmZkVudHJ5IGVudHJ5KSB7CiAJICogRGV0ZWN0IHJlbmFtZXMgaW4gdGhlIGN1cnJlbnQgZmlsZSBzZXQuCiAJICogPHA+CiAJICogVGhpcyBjb252ZW5pZW5jZSBmdW5jdGlvbiBydW5zIHdpdGhvdXQgYSBwcm9ncmVzcyBtb25pdG9yLgorCSAqIDwvcD4KIAkgKgogCSAqIEByZXR1cm4gYW4gdW5tb2RpZmlhYmxlIGxpc3Qgb2Yge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQuZGlmZi5EaWZmRW50cnl9cwogCSAqICAgICAgICAgcmVwcmVzZW50aW5nIGFsbCBmaWxlcyB0aGF0IGhhdmUgYmVlbiBjaGFuZ2VkLgpAQCAtMzQyLDcgKzM0NCwxMiBAQCBwdWJsaWMgdm9pZCBhZGQoRGlmZkVudHJ5IGVudHJ5KSB7CiAJICogICAgICAgICAgICAgZmlsZSBjb250ZW50cyBjYW5ub3QgYmUgcmVhZCBmcm9tIHRoZSByZXBvc2l0b3J5LgogCSAqLwogCXB1YmxpYyBMaXN0PERpZmZFbnRyeT4gY29tcHV0ZSgpIHRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCXJldHVybiBjb21wdXRlKE51bGxQcm9ncmVzc01vbml0b3IuSU5TVEFOQ0UpOworCQl0cnkgeworCQkJcmV0dXJuIGNvbXB1dGUoTnVsbFByb2dyZXNzTW9uaXRvci5JTlNUQU5DRSk7CisJCX0gY2F0Y2ggKENhbmNlbGVkRXhjZXB0aW9uIGUpIHsKKwkJCS8vIFdvbid0IGhhcHBlbiB3aXRoIGEgTnVsbFByb2dyZXNzTW9uaXRvcgorCQkJcmV0dXJuIENvbGxlY3Rpb25zLmVtcHR5TGlzdCgpOworCQl9CiAJfQogCiAJLyoqCkBAIC0zNTQsMTMgKzM2MSwxMSBAQCBwdWJsaWMgTGlzdDxEaWZmRW50cnk+IGNvbXB1dGUoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCSAqICAgICAgICAgcmVwcmVzZW50aW5nIGFsbCBmaWxlcyB0aGF0IGhhdmUgYmVlbiBjaGFuZ2VkLgogCSAqIEB0aHJvd3MgamF2YS5pby5JT0V4Y2VwdGlvbgogCSAqICAgICAgICAgICAgIGZpbGUgY29udGVudHMgY2Fubm90IGJlIHJlYWQgZnJvbSB0aGUgcmVwb3NpdG9yeS4KLQkgKiBAdGhyb3dzIENhbmNlbGxlZEV4Y2VwdGlvbgorCSAqIEB0aHJvd3MgQ2FuY2VsZWRFeGNlcHRpb24KIAkgKiAgICAgICAgICAgICBpZiByZW5hbWUgZGV0ZWN0aW9uIHdhcyBjYW5jZWxsZWQKIAkgKi8KLQkvLyBUT0RPKG1zKTogdXNlIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5DYW5jZWxlZEV4Y2VwdGlvbiBpbiBuZXh0IG1ham9yCi0JLy8gdmVyc2lvbgogCXB1YmxpYyBMaXN0PERpZmZFbnRyeT4gY29tcHV0ZShQcm9ncmVzc01vbml0b3IgcG0pCi0JCQl0aHJvd3MgSU9FeGNlcHRpb24sIENhbmNlbGxlZEV4Y2VwdGlvbiB7CisJCQl0aHJvd3MgSU9FeGNlcHRpb24sIENhbmNlbGVkRXhjZXB0aW9uIHsKIAkJaWYgKCFkb25lKSB7CiAJCQl0cnkgewogCQkJCXJldHVybiBjb21wdXRlKG9iamVjdFJlYWRlciwgcG0pOwpAQCAtMzgyLDEzICszODcsMTEgQEAgcHVibGljIExpc3Q8RGlmZkVudHJ5PiBjb21wdXRlKFByb2dyZXNzTW9uaXRvciBwbSkKIAkgKiAgICAgICAgIHJlcHJlc2VudGluZyBhbGwgZmlsZXMgdGhhdCBoYXZlIGJlZW4gY2hhbmdlZC4KIAkgKiBAdGhyb3dzIGphdmEuaW8uSU9FeGNlcHRpb24KIAkgKiAgICAgICAgICAgICBmaWxlIGNvbnRlbnRzIGNhbm5vdCBiZSByZWFkIGZyb20gdGhlIHJlcG9zaXRvcnkuCi0JICogQHRocm93cyBDYW5jZWxsZWRFeGNlcHRpb24KKwkgKiBAdGhyb3dzIENhbmNlbGVkRXhjZXB0aW9uCiAJICogICAgICAgICAgICAgaWYgcmVuYW1lIGRldGVjdGlvbiB3YXMgY2FuY2VsbGVkCiAJICovCi0JLy8gVE9ETyhtcyk6IHVzZSBvcmcuZWNsaXBzZS5qZ2l0LmFwaS5lcnJvcnMuQ2FuY2VsZWRFeGNlcHRpb24gaW4gbmV4dCBtYWpvcgotCS8vIHZlcnNpb24KIAlwdWJsaWMgTGlzdDxEaWZmRW50cnk+IGNvbXB1dGUoT2JqZWN0UmVhZGVyIHJlYWRlciwgUHJvZ3Jlc3NNb25pdG9yIHBtKQotCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxsZWRFeGNlcHRpb24geworCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxlZEV4Y2VwdGlvbiB7CiAJCWZpbmFsIENvbnRlbnRTb3VyY2UgY3MgPSBDb250ZW50U291cmNlLmNyZWF0ZShyZWFkZXIpOwogCQlyZXR1cm4gY29tcHV0ZShuZXcgQ29udGVudFNvdXJjZS5QYWlyKGNzLCBjcyksIHBtKTsKIAl9CkBAIC00MDQsMTMgKzQwNywxMSBAQCBwdWJsaWMgTGlzdDxEaWZmRW50cnk+IGNvbXB1dGUoT2JqZWN0UmVhZGVyIHJlYWRlciwgUHJvZ3Jlc3NNb25pdG9yIHBtKQogCSAqICAgICAgICAgcmVwcmVzZW50aW5nIGFsbCBmaWxlcyB0aGF0IGhhdmUgYmVlbiBjaGFuZ2VkLgogCSAqIEB0aHJvd3MgamF2YS5pby5JT0V4Y2VwdGlvbgogCSAqICAgICAgICAgICAgIGZpbGUgY29udGVudHMgY2Fubm90IGJlIHJlYWQgZnJvbSB0aGUgcmVwb3NpdG9yeS4KLQkgKiBAdGhyb3dzIENhbmNlbGxlZEV4Y2VwdGlvbgorCSAqIEB0aHJvd3MgQ2FuY2VsZWRFeGNlcHRpb24KIAkgKiAgICAgICAgICAgICBpZiByZW5hbWUgZGV0ZWN0aW9uIHdhcyBjYW5jZWxsZWQKIAkgKi8KLQkvLyBUT0RPKG1zKTogdXNlIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5DYW5jZWxlZEV4Y2VwdGlvbiBpbiBuZXh0IG1ham9yCi0JLy8gdmVyc2lvbgogCXB1YmxpYyBMaXN0PERpZmZFbnRyeT4gY29tcHV0ZShDb250ZW50U291cmNlLlBhaXIgcmVhZGVyLCBQcm9ncmVzc01vbml0b3IgcG0pCi0JCQl0aHJvd3MgSU9FeGNlcHRpb24sIENhbmNlbGxlZEV4Y2VwdGlvbiB7CisJCQl0aHJvd3MgSU9FeGNlcHRpb24sIENhbmNlbGVkRXhjZXB0aW9uIHsKIAkJaWYgKCFkb25lKSB7CiAJCQlkb25lID0gdHJ1ZTsKIApAQCAtNDUwLDE1ICs0NTEsMTUgQEAgcHVibGljIHZvaWQgcmVzZXQoKSB7CiAJCWRvbmUgPSBmYWxzZTsKIAl9CiAKLQlwcml2YXRlIHZvaWQgYWR2YW5jZU9yQ2FuY2VsKFByb2dyZXNzTW9uaXRvciBwbSkgdGhyb3dzIENhbmNlbGxlZEV4Y2VwdGlvbiB7CisJcHJpdmF0ZSB2b2lkIGFkdmFuY2VPckNhbmNlbChQcm9ncmVzc01vbml0b3IgcG0pIHRocm93cyBDYW5jZWxlZEV4Y2VwdGlvbiB7CiAJCWlmIChwbS5pc0NhbmNlbGxlZCgpKSB7Ci0JCQl0aHJvdyBuZXcgQ2FuY2VsbGVkRXhjZXB0aW9uKEpHaXRUZXh0LmdldCgpLnJlbmFtZUNhbmNlbGxlZCk7CisJCQl0aHJvdyBuZXcgQ2FuY2VsZWRFeGNlcHRpb24oSkdpdFRleHQuZ2V0KCkucmVuYW1lQ2FuY2VsbGVkKTsKIAkJfQogCQlwbS51cGRhdGUoMSk7CiAJfQogCiAJcHJpdmF0ZSB2b2lkIGJyZWFrTW9kaWZpZXMoQ29udGVudFNvdXJjZS5QYWlyIHJlYWRlciwgUHJvZ3Jlc3NNb25pdG9yIHBtKQotCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxsZWRFeGNlcHRpb24geworCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxlZEV4Y2VwdGlvbiB7CiAJCUFycmF5TGlzdDxEaWZmRW50cnk+IG5ld0VudHJpZXMgPSBuZXcgQXJyYXlMaXN0PD4oZW50cmllcy5zaXplKCkpOwogCiAJCXBtLmJlZ2luVGFzayhKR2l0VGV4dC5nZXQoKS5yZW5hbWVzQnJlYWtpbmdNb2RpZmllcywgZW50cmllcy5zaXplKCkpOwpAQCAtNDg1LDcgKzQ4Niw3IEBAIHByaXZhdGUgdm9pZCBicmVha01vZGlmaWVzKENvbnRlbnRTb3VyY2UuUGFpciByZWFkZXIsIFByb2dyZXNzTW9uaXRvciBwbSkKIAkJZW50cmllcyA9IG5ld0VudHJpZXM7CiAJfQogCi0JcHJpdmF0ZSB2b2lkIHJlam9pbk1vZGlmaWVzKFByb2dyZXNzTW9uaXRvciBwbSkgdGhyb3dzIENhbmNlbGxlZEV4Y2VwdGlvbiB7CisJcHJpdmF0ZSB2b2lkIHJlam9pbk1vZGlmaWVzKFByb2dyZXNzTW9uaXRvciBwbSkgdGhyb3dzIENhbmNlbGVkRXhjZXB0aW9uIHsKIAkJSGFzaE1hcDxTdHJpbmcsIERpZmZFbnRyeT4gbmFtZU1hcCA9IG5ldyBIYXNoTWFwPD4oKTsKIAkJQXJyYXlMaXN0PERpZmZFbnRyeT4gbmV3QWRkZWQgPSBuZXcgQXJyYXlMaXN0PD4oYWRkZWQuc2l6ZSgpKTsKIApAQCAtNTQwLDcgKzU0MSw3IEBAIHByaXZhdGUgaW50IGNhbGN1bGF0ZU1vZGlmeVNjb3JlKENvbnRlbnRTb3VyY2UuUGFpciByZWFkZXIsIERpZmZFbnRyeSBkKQogCiAJcHJpdmF0ZSB2b2lkIGZpbmRDb250ZW50UmVuYW1lcyhDb250ZW50U291cmNlLlBhaXIgcmVhZGVyLAogCQkJUHJvZ3Jlc3NNb25pdG9yIHBtKQotCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxsZWRFeGNlcHRpb24geworCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxlZEV4Y2VwdGlvbiB7CiAJCWludCBjbnQgPSBNYXRoLm1heChhZGRlZC5zaXplKCksIGRlbGV0ZWQuc2l6ZSgpKTsKIAkJaWYgKGdldFJlbmFtZUxpbWl0KCkgPT0gMCB8fCBjbnQgPD0gZ2V0UmVuYW1lTGltaXQoKSkgewogCQkJU2ltaWxhcml0eVJlbmFtZURldGVjdG9yIGQ7CkBAIC01NjEsNyArNTYyLDcgQEAgcHJpdmF0ZSB2b2lkIGZpbmRDb250ZW50UmVuYW1lcyhDb250ZW50U291cmNlLlBhaXIgcmVhZGVyLAogCiAJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCiAJcHJpdmF0ZSB2b2lkIGZpbmRFeGFjdFJlbmFtZXMoUHJvZ3Jlc3NNb25pdG9yIHBtKQotCQkJdGhyb3dzIENhbmNlbGxlZEV4Y2VwdGlvbiB7CisJCQl0aHJvd3MgQ2FuY2VsZWRFeGNlcHRpb24gewogCQlwbS5iZWdpblRhc2soSkdpdFRleHQuZ2V0KCkucmVuYW1lc0ZpbmRpbmdFeGFjdCwgLy8KIAkJCQlhZGRlZC5zaXplKCkgKyBhZGRlZC5zaXplKCkgKyBkZWxldGVkLnNpemUoKQogCQkJCQkJKyBhZGRlZC5zaXplKCkgKiBkZWxldGVkLnNpemUoKSk7CkBAIC02NTAsNyArNjUxLDcgQEAgcHJpdmF0ZSB2b2lkIGZpbmRFeGFjdFJlbmFtZXMoUHJvZ3Jlc3NNb25pdG9yIHBtKQogCQkJCQkJbWF0cml4W21OZXh0XSA9IFNpbWlsYXJpdHlSZW5hbWVEZXRlY3Rvci5lbmNvZGUoc2NvcmUsIGRlbElkeCwgYWRkSWR4KTsKIAkJCQkJCW1OZXh0Kys7CiAJCQkJCQlpZiAocG0uaXNDYW5jZWxsZWQoKSkgewotCQkJCQkJCXRocm93IG5ldyBDYW5jZWxsZWRFeGNlcHRpb24oCisJCQkJCQkJdGhyb3cgbmV3IENhbmNlbGVkRXhjZXB0aW9uKAogCQkJCQkJCQkJSkdpdFRleHQuZ2V0KCkucmVuYW1lQ2FuY2VsbGVkKTsKIAkJCQkJCX0KIAkJCQkJfQpAQCAtNzQzLDcgKzc0NCw3IEBAIHByaXZhdGUgc3RhdGljIERpZmZFbnRyeSBiZXN0UGF0aE1hdGNoKERpZmZFbnRyeSBzcmMsIExpc3Q8RGlmZkVudHJ5PiBsaXN0KSB7CiAJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCiAJcHJpdmF0ZSBIYXNoTWFwPEFiYnJldmlhdGVkT2JqZWN0SWQsIE9iamVjdD4gcG9wdWxhdGVNYXAoCiAJCQlMaXN0PERpZmZFbnRyeT4gZGlmZkVudHJpZXMsIFByb2dyZXNzTW9uaXRvciBwbSkKLQkJCXRocm93cyBDYW5jZWxsZWRFeGNlcHRpb24geworCQkJdGhyb3dzIENhbmNlbGVkRXhjZXB0aW9uIHsKIAkJSGFzaE1hcDxBYmJyZXZpYXRlZE9iamVjdElkLCBPYmplY3Q+IG1hcCA9IG5ldyBIYXNoTWFwPD4oKTsKIAkJZm9yIChEaWZmRW50cnkgZGUgOiBkaWZmRW50cmllcykgewogCQkJT2JqZWN0IG9sZCA9IG1hcC5wdXQoaWQoZGUpLCBkZSk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvU2ltaWxhcml0eUluZGV4LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvU2ltaWxhcml0eUluZGV4LmphdmEKaW5kZXggNjYxMzY5Yi4uMzQ1ODFhZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL1NpbWlsYXJpdHlJbmRleC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9TaW1pbGFyaXR5SW5kZXguamF2YQpAQCAtMTA4LDcgKzEwOCw4IEBAIHN0YXRpYyBib29sZWFuIGlzQmluYXJ5KE9iamVjdExvYWRlciBvYmopIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCQkJcmV0dXJuIFJhd1RleHQuaXNCaW5hcnkoaW4xKTsKIAkJCX0KIAkJfQotCQlyZXR1cm4gUmF3VGV4dC5pc0JpbmFyeShvYmouZ2V0Q2FjaGVkQnl0ZXMoKSk7CisJCWJ5dGVbXSByYXcgPSBvYmouZ2V0Q2FjaGVkQnl0ZXMoKTsKKwkJcmV0dXJuIFJhd1RleHQuaXNCaW5hcnkocmF3LCByYXcubGVuZ3RoLCB0cnVlKTsKIAl9CiAKIAl2b2lkIGhhc2goT2JqZWN0TG9hZGVyIG9iaikgdGhyb3dzIE1pc3NpbmdPYmplY3RFeGNlcHRpb24sIElPRXhjZXB0aW9uLApAQCAtMTMyLDcgKzEzMyw3IEBAIHByaXZhdGUgdm9pZCBoYXNoTGFyZ2VPYmplY3QoT2JqZWN0TG9hZGVyIG9iaikgdGhyb3dzIElPRXhjZXB0aW9uLAogCX0KIAogCXZvaWQgaGFzaChieXRlW10gcmF3LCBpbnQgcHRyLCBpbnQgZW5kKSB0aHJvd3MgVGFibGVGdWxsRXhjZXB0aW9uIHsKLQkJZmluYWwgYm9vbGVhbiB0ZXh0ID0gIVJhd1RleHQuaXNCaW5hcnkocmF3KTsKKwkJZmluYWwgYm9vbGVhbiB0ZXh0ID0gIVJhd1RleHQuaXNCaW5hcnkocmF3LCByYXcubGVuZ3RoLCB0cnVlKTsKIAkJaGFzaGVkQ250ID0gMDsKIAkJd2hpbGUgKHB0ciA8IGVuZCkgewogCQkJaW50IGhhc2ggPSA1MzgxOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL1NpbWlsYXJpdHlSZW5hbWVEZXRlY3Rvci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaWZmL1NpbWlsYXJpdHlSZW5hbWVEZXRlY3Rvci5qYXZhCmluZGV4IDU4NzFiNGEuLjlhYzk0ODkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlmZi9TaW1pbGFyaXR5UmVuYW1lRGV0ZWN0b3IuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpZmYvU2ltaWxhcml0eVJlbmFtZURldGVjdG9yLmphdmEKQEAgLTIwLDkgKzIwLDkgQEAKIGltcG9ydCBqYXZhLnV0aWwuQml0U2V0OwogaW1wb3J0IGphdmEudXRpbC5MaXN0OwogCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzLkNhbmNlbGVkRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlmZi5EaWZmRW50cnkuQ2hhbmdlVHlwZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuU2ltaWxhcml0eUluZGV4LlRhYmxlRnVsbEV4Y2VwdGlvbjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5DYW5jZWxsZWRFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5GaWxlTW9kZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5OdWxsUHJvZ3Jlc3NNb25pdG9yOwpAQCAtMTE1LDcgKzExNSw3IEBAIHZvaWQgc2V0U2tpcEJpbmFyeUZpbGVzKGJvb2xlYW4gdmFsdWUpIHsKIAkJc2tpcEJpbmFyeUZpbGVzID0gdmFsdWU7CiAJfQogCi0Jdm9pZCBjb21wdXRlKFByb2dyZXNzTW9uaXRvciBwbSkgdGhyb3dzIElPRXhjZXB0aW9uLCBDYW5jZWxsZWRFeGNlcHRpb24geworCXZvaWQgY29tcHV0ZShQcm9ncmVzc01vbml0b3IgcG0pIHRocm93cyBJT0V4Y2VwdGlvbiwgQ2FuY2VsZWRFeGNlcHRpb24gewogCQlpZiAocG0gPT0gbnVsbCkKIAkJCXBtID0gTnVsbFByb2dyZXNzTW9uaXRvci5JTlNUQU5DRTsKIApAQCAtMTMwLDkgKzEzMCw3IEBAIHZvaWQgY29tcHV0ZShQcm9ncmVzc01vbml0b3IgcG0pIHRocm93cyBJT0V4Y2VwdGlvbiwgQ2FuY2VsbGVkRXhjZXB0aW9uIHsKIAkJLy8KIAkJZm9yICgtLW1OZXh0OyBtTmV4dCA+PSAwOyBtTmV4dC0tKSB7CiAJCQlpZiAocG0uaXNDYW5jZWxsZWQoKSkgewotCQkJCS8vIFRPRE8obXMpOiB1c2Ugb3JnLmVjbGlwc2UuamdpdC5hcGkuZXJyb3JzLkNhbmNlbGVkRXhjZXB0aW9uCi0JCQkJLy8gaW4gbmV4dCBtYWpvciB2ZXJzaW9uCi0JCQkJdGhyb3cgbmV3IENhbmNlbGxlZEV4Y2VwdGlvbihKR2l0VGV4dC5nZXQoKS5yZW5hbWVDYW5jZWxsZWQpOworCQkJCXRocm93IG5ldyBDYW5jZWxlZEV4Y2VwdGlvbihKR2l0VGV4dC5nZXQoKS5yZW5hbWVDYW5jZWxsZWQpOwogCQkJfQogCQkJbG9uZyBlbnQgPSBtYXRyaXhbbU5leHRdOwogCQkJaW50IHNJZHggPSBzcmNGaWxlKGVudCk7CkBAIC0yMDIsNyArMjAwLDcgQEAgcHJpdmF0ZSBzdGF0aWMgTGlzdDxEaWZmRW50cnk+IGNvbXBhY3REc3RMaXN0KExpc3Q8RGlmZkVudHJ5PiBpbikgewogCX0KIAogCXByaXZhdGUgaW50IGJ1aWxkTWF0cml4KFByb2dyZXNzTW9uaXRvciBwbSkKLQkJCXRocm93cyBJT0V4Y2VwdGlvbiwgQ2FuY2VsbGVkRXhjZXB0aW9uIHsKKwkJCXRocm93cyBJT0V4Y2VwdGlvbiwgQ2FuY2VsZWRFeGNlcHRpb24gewogCQkvLyBBbGxvY2F0ZSBmb3IgdGhlIHdvcnN0LWNhc2Ugc2NlbmFyaW8gd2hlcmUgZXZlcnkgcGFpciBoYXMgYQogCQkvLyBzY29yZSB0aGF0IHdlIG5lZWQgdG8gY29uc2lkZXIuIFdlIG1pZ2h0IG5vdCBuZWVkIHRoYXQgbWFueS4KIAkJLy8KQEAgLTIyOCwxMCArMjI2LDcgQEAgcHJpdmF0ZSBpbnQgYnVpbGRNYXRyaXgoUHJvZ3Jlc3NNb25pdG9yIHBtKQogCiAJCQlmb3IgKGludCBkc3RJZHggPSAwOyBkc3RJZHggPCBkc3RzLnNpemUoKTsgZHN0SWR4KyspIHsKIAkJCQlpZiAocG0uaXNDYW5jZWxsZWQoKSkgewotCQkJCQkvLyBUT0RPKG1zKTogdXNlCi0JCQkJCS8vIG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5DYW5jZWxlZEV4Y2VwdGlvbiBpbiBuZXh0Ci0JCQkJCS8vIG1ham9yIHZlcnNpb24KLQkJCQkJdGhyb3cgbmV3IENhbmNlbGxlZEV4Y2VwdGlvbigKKwkJCQkJdGhyb3cgbmV3IENhbmNlbGVkRXhjZXB0aW9uKAogCQkJCQkJCUpHaXRUZXh0LmdldCgpLnJlbmFtZUNhbmNlbGxlZCk7CiAJCQkJfQogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpcmNhY2hlL0NoZWNrb3V0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpcmNhY2hlL0NoZWNrb3V0LmphdmEKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUxZTU5NmEuLjAwMDAwMDAKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9DaGVja291dC5qYXZhCisrKyAvZGV2L251bGwKQEAgLTEsMjM4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjMsIFRob21hcyBXb2xmIDx0d29sZkBhcGFjaGUub3JnPiBhbmQgb3RoZXJzCi0gKgotICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCi0gKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0Ci0gKiBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvZG9jdW1lbnRzL2VkbC12MTAucGhwLgotICoKLSAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKLSAqLwotcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlOwotCi1pbXBvcnQgamF2YS5pby5GaWxlOwotaW1wb3J0IGphdmEuaW8uRmlsZU91dHB1dFN0cmVhbTsKLWltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwotaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZXM7Ci1pbXBvcnQgamF2YS5uaW8uZmlsZS5MaW5rT3B0aW9uOwotaW1wb3J0IGphdmEubmlvLmZpbGUuU3RhbmRhcmRDb3B5T3B0aW9uOwotaW1wb3J0IGphdmEudGV4dC5NZXNzYWdlRm9ybWF0OwotCi1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9ucy5Ob25OdWxsOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuRGlyQ2FjaGVDaGVja291dC5DaGVja291dE1ldGFkYXRhOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuSkdpdFRleHQ7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuRmlsZU1vZGU7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuRmlsZU1vZGVDYWNoZTsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5PYmplY3RMb2FkZXI7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuT2JqZWN0UmVhZGVyOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLlJlcG9zaXRvcnk7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29yZUNvbmZpZy5Fb2xTdHJlYW1UeXBlOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvcmVDb25maWcuU3ltTGlua3M7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuRmlsZU1vZGVDYWNoZS5DYWNoZUl0ZW07Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5Xb3JraW5nVHJlZU9wdGlvbnM7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5GaWxlVXRpbHM7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlJhd1BhcnNlVXRpbHM7Ci0KLS8qKgotICogQW4gb2JqZWN0IHRoYXQgY2FuIGJlIHVzZWQgdG8gY2hlY2sgb3V0IG1hbnkgZmlsZXMuCi0gKgotICogQHNpbmNlIDUuMTMuMwotICovCi1wdWJsaWMgY2xhc3MgQ2hlY2tvdXQgewotCi0JcHJpdmF0ZSBmaW5hbCBGaWxlTW9kZUNhY2hlIGNhY2hlOwotCi0JcHJpdmF0ZSBmaW5hbCBXb3JraW5nVHJlZU9wdGlvbnMgb3B0aW9uczsKLQotCXByaXZhdGUgYm9vbGVhbiByZWN1cnNpdmVEZWxldGU7Ci0KLQkvKioKLQkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBDaGVja291dH0gZm9yIGNoZWNraW5nIG91dCBmcm9tIHRoZSBnaXZlbgotCSAqIHJlcG9zaXRvcnkuCi0JICoKLQkgKiBAcGFyYW0gcmVwbwotCSAqICAgICAgICAgICAgdGhlIHtAbGluayBSZXBvc2l0b3J5fSB0byBjaGVjayBvdXQgZnJvbQotCSAqLwotCXB1YmxpYyBDaGVja291dChATm9uTnVsbCBSZXBvc2l0b3J5IHJlcG8pIHsKLQkJdGhpcyhyZXBvLCBudWxsKTsKLQl9Ci0KLQkvKioKLQkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBDaGVja291dH0gZm9yIGNoZWNraW5nIG91dCBmcm9tIHRoZSBnaXZlbgotCSAqIHJlcG9zaXRvcnkuCi0JICoKLQkgKiBAcGFyYW0gcmVwbwotCSAqICAgICAgICAgICAgdGhlIHtAbGluayBSZXBvc2l0b3J5fSB0byBjaGVjayBvdXQgZnJvbQotCSAqIEBwYXJhbSBvcHRpb25zCi0JICogICAgICAgICAgICB0aGUge0BsaW5rIFdvcmtpbmdUcmVlT3B0aW9uc33CoHRvIHVzZTsgaWYge0Bjb2RlIG51bGx9LAotCSAqICAgICAgICAgICAgcmVhZCBmcm9tIHRoZSB7QGNvZGUgcmVwb30gY29uZmlnIHdoZW4gdGhpcyBvYmplY3QgaXMKLQkgKiAgICAgICAgICAgIGNyZWF0ZWQKLQkgKi8KLQlwdWJsaWMgQ2hlY2tvdXQoQE5vbk51bGwgUmVwb3NpdG9yeSByZXBvLCBXb3JraW5nVHJlZU9wdGlvbnMgb3B0aW9ucykgewotCQl0aGlzLmNhY2hlID0gbmV3IEZpbGVNb2RlQ2FjaGUocmVwbyk7Ci0JCXRoaXMub3B0aW9ucyA9IG9wdGlvbnMgIT0gbnVsbCA/IG9wdGlvbnMKLQkJCQk6IHJlcG8uZ2V0Q29uZmlnKCkuZ2V0KFdvcmtpbmdUcmVlT3B0aW9ucy5LRVkpOwotCX0KLQotCS8qKgotCSAqIFJldHJpZXZlcyB0aGUge0BsaW5rIFdvcmtpbmdUcmVlT3B0aW9uc30gb2YgdGhlIHJlcG9zaXRvcnkgdGhhdCBhcmUKLQkgKiB1c2VkLgotCSAqCi0JICogQHJldHVybiB0aGUge0BsaW5rIFdvcmtpbmdUcmVlT3B0aW9uc30KLQkgKi8KLQlwdWJsaWMgV29ya2luZ1RyZWVPcHRpb25zIGdldFdvcmtpbmdUcmVlT3B0aW9ucygpIHsKLQkJcmV0dXJuIG9wdGlvbnM7Ci0JfQotCi0JLyoqCi0JICogRGVmaW5lcyB3aGV0aGVyIGRpcmVjdG9yaWVzIHRoYXQgYXJlIGluIHRoZSB3YXkgb2YgdGhlIGZpbGUgdG8gYmUgY2hlY2tlZAotCSAqIG91dCBzaGFsbCBiZSBkZWxldGVkIHJlY3Vyc2l2ZWx5LgotCSAqCi0JICogQHBhcmFtIHJlY3Vyc2l2ZQotCSAqICAgICAgICAgICAgd2hldGhlciB0byBkZWxldGUgc3VjaCBkaXJlY3RvcmllcyByZWN1cnNpdmVseQotCSAqIEByZXR1cm4ge0Bjb2RlIHRoaXN9Ci0JICovCi0JcHVibGljIENoZWNrb3V0IHNldFJlY3Vyc2l2ZURlbGV0aW9uKGJvb2xlYW4gcmVjdXJzaXZlKSB7Ci0JCXRoaXMucmVjdXJzaXZlRGVsZXRlID0gcmVjdXJzaXZlOwotCQlyZXR1cm4gdGhpczsKLQl9Ci0KLQkvKioKLQkgKiBFbnN1cmUgdGhhdCB0aGUgZ2l2ZW4gcGFyZW50IGRpcmVjdG9yeSBleGlzdHMsIGFuZCBjYWNoZSB0aGUgaW5mb3JtYXRpb24KLQkgKiB0aGF0IGdpdFBhdGggcmVmZXJzIHRvIGEgZmlsZS4KLQkgKgotCSAqIEBwYXJhbSBnaXRQYXRoCi0JICogICAgICAgICAgICBvZiB0aGUgZmlsZSB0byBiZSB3cml0dGVuCi0JICogQHBhcmFtIHBhcmVudERpcgotCSAqICAgICAgICAgICAgZGlyZWN0b3J5IGluIHdoaWNoIHRoZSBmaWxlIHNoYWxsIGJlIHBsYWNlZCwgYXNzdW1lZCB0byBiZSB0aGUKLQkgKiAgICAgICAgICAgIHBhcmVudCBvZiB0aGUge0Bjb2RlIGdpdFBhdGh9Ci0JICogQHBhcmFtIG1ha2VTcGFjZQotCSAqICAgICAgICAgICAgd2hldGhlciB0byBkZWxldGUgYSBwb3NzaWJseSBleGlzdGluZyBmaWxlIGF0Ci0JICogICAgICAgICAgICB7QGNvZGUgcGFyZW50RGlyfQotCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KLQkgKiAgICAgICAgICAgICBpZiB0aGUgZGlyZWN0b3J5IGNhbm5vdCBiZSBjcmVhdGVkLCBpZiBuZWNlc3NhcnkKLQkgKi8KLQlwdWJsaWMgdm9pZCBzYWZlQ3JlYXRlUGFyZW50RGlyZWN0b3J5KFN0cmluZyBnaXRQYXRoLCBGaWxlIHBhcmVudERpciwKLQkJCWJvb2xlYW4gbWFrZVNwYWNlKSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQljYWNoZS5zYWZlQ3JlYXRlUGFyZW50RGlyZWN0b3J5KGdpdFBhdGgsIHBhcmVudERpciwgbWFrZVNwYWNlKTsKLQl9Ci0KLQkvKioKLQkgKiBDaGVja3Mgb3V0IHRoZSBnaXRsaW5rIGdpdmVuIGJ5IHRoZSB7QGxpbmsgRGlyQ2FjaGVFbnRyeX0uCi0JICoKLQkgKiBAcGFyYW0gZW50cnkKLQkgKiAgICAgICAgICAgIHtAbGluayBEaXJDYWNoZUVudHJ5fSB0byBjaGVjayBvdXQKLQkgKiBAcGFyYW0gZ2l0UGF0aAotCSAqICAgICAgICAgICAgdGhlIGdpdCBwYXRoIG9mIHRoZSBlbnRyeSwgaWYga25vd24gYWxyZWFkeTsgb3RoZXJ3aXNlCi0JICogICAgICAgICAgICB7QGNvZGUgbnVsbH0gYW5kIGl0J3MgcmVhZCBmcm9tIHRoZSBlbnRyeSBpdHNlbGYKLQkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCi0JICogICAgICAgICAgICAgaWYgdGhlIGdpdGxpbmsgY2Fubm90IGJlIGNoZWNrZWQgb3V0Ci0JICovCi0JcHVibGljIHZvaWQgY2hlY2tvdXRHaXRsaW5rKERpckNhY2hlRW50cnkgZW50cnksIFN0cmluZyBnaXRQYXRoKQotCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJRlMgZnMgPSBjYWNoZS5nZXRSZXBvc2l0b3J5KCkuZ2V0RlMoKTsKLQkJRmlsZSB3b3JraW5nVHJlZSA9IGNhY2hlLmdldFJlcG9zaXRvcnkoKS5nZXRXb3JrVHJlZSgpOwotCQlTdHJpbmcgcGF0aCA9IGdpdFBhdGggIT0gbnVsbCA/IGdpdFBhdGggOiBlbnRyeS5nZXRQYXRoU3RyaW5nKCk7Ci0JCUZpbGUgZ2l0bGlua0RpciA9IG5ldyBGaWxlKHdvcmtpbmdUcmVlLCBwYXRoKTsKLQkJRmlsZSBwYXJlbnREaXIgPSBnaXRsaW5rRGlyLmdldFBhcmVudEZpbGUoKTsKLQkJQ2FjaGVJdGVtIGNhY2hlZFBhcmVudCA9IGNhY2hlLnNhZmVDcmVhdGVEaXJlY3RvcnkocGF0aCwgcGFyZW50RGlyLAotCQkJCWZhbHNlKTsKLQkJRmlsZVV0aWxzLm1rZGlycyhnaXRsaW5rRGlyLCB0cnVlKTsKLQkJY2FjaGVkUGFyZW50Lmluc2VydChwYXRoLnN1YnN0cmluZyhwYXRoLmxhc3RJbmRleE9mKCcvJykgKyAxKSwKLQkJCQlGaWxlTW9kZS5HSVRMSU5LKTsKLQkJZW50cnkuc2V0TGFzdE1vZGlmaWVkKGZzLmxhc3RNb2RpZmllZEluc3RhbnQoZ2l0bGlua0RpcikpOwotCX0KLQotCS8qKgotCSAqIENoZWNrcyBvdXQgdGhlIGZpbGUgZ2l2ZW4gYnkgdGhlIHtAbGluayBEaXJDYWNoZUVudHJ5fS4KLQkgKgotCSAqIEBwYXJhbSBlbnRyeQotCSAqICAgICAgICAgICAge0BsaW5rIERpckNhY2hlRW50cnl9IHRvIGNoZWNrIG91dAotCSAqIEBwYXJhbSBtZXRhZGF0YQotCSAqICAgICAgICAgICAge0BsaW5rIENoZWNrb3V0TWV0YWRhdGF9IHRvIHVzZSBmb3IgQ1IvTEYgaGFuZGxpbmcgYW5kCi0JICogICAgICAgICAgICBzbXVkZ2UgZmlsdGVyaW5nCi0JICogQHBhcmFtIHJlYWRlcgotCSAqICAgICAgICAgICAge0BsaW5rIE9iamVjdFJlYWRlcn0gdG8gdXNlCi0JICogQHBhcmFtIGdpdFBhdGgKLQkgKiAgICAgICAgICAgIHRoZSBnaXQgcGF0aCBvZiB0aGUgZW50cnksIGlmIGtub3duIGFscmVhZHk7IG90aGVyd2lzZQotCSAqICAgICAgICAgICAge0Bjb2RlIG51bGx9IGFuZCBpdCdzIHJlYWQgZnJvbSB0aGUgZW50cnkgaXRzZWxmCi0JICogQHRocm93cyBJT0V4Y2VwdGlvbgotCSAqICAgICAgICAgICAgIGlmIHRoZSBmaWxlIGNhbm5vdCBiZSBjaGVja2VkIG91dAotCSAqLwotCXB1YmxpYyB2b2lkIGNoZWNrb3V0KERpckNhY2hlRW50cnkgZW50cnksIENoZWNrb3V0TWV0YWRhdGEgbWV0YWRhdGEsCi0JCQlPYmplY3RSZWFkZXIgcmVhZGVyLCBTdHJpbmcgZ2l0UGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJaWYgKG1ldGFkYXRhID09IG51bGwpIHsKLQkJCW1ldGFkYXRhID0gQ2hlY2tvdXRNZXRhZGF0YS5FTVBUWTsKLQkJfQotCQlGUyBmcyA9IGNhY2hlLmdldFJlcG9zaXRvcnkoKS5nZXRGUygpOwotCQlPYmplY3RMb2FkZXIgb2wgPSByZWFkZXIub3BlbihlbnRyeS5nZXRPYmplY3RJZCgpKTsKLQkJU3RyaW5nIHBhdGggPSBnaXRQYXRoICE9IG51bGwgPyBnaXRQYXRoIDogZW50cnkuZ2V0UGF0aFN0cmluZygpOwotCQlGaWxlIGYgPSBuZXcgRmlsZShjYWNoZS5nZXRSZXBvc2l0b3J5KCkuZ2V0V29ya1RyZWUoKSwgcGF0aCk7Ci0JCUZpbGUgcGFyZW50RGlyID0gZi5nZXRQYXJlbnRGaWxlKCk7Ci0JCUNhY2hlSXRlbSBjYWNoZWRQYXJlbnQgPSBjYWNoZS5zYWZlQ3JlYXRlRGlyZWN0b3J5KHBhdGgsIHBhcmVudERpciwKLQkJCQl0cnVlKTsKLQkJaWYgKGVudHJ5LmdldEZpbGVNb2RlKCkgPT0gRmlsZU1vZGUuU1lNTElOSwotCQkJCSYmIG9wdGlvbnMuZ2V0U3ltTGlua3MoKSA9PSBTeW1MaW5rcy5UUlVFKSB7Ci0JCQlieXRlW10gYnl0ZXMgPSBvbC5nZXRCeXRlcygpOwotCQkJU3RyaW5nIHRhcmdldCA9IFJhd1BhcnNlVXRpbHMuZGVjb2RlKGJ5dGVzKTsKLQkJCWlmIChyZWN1cnNpdmVEZWxldGUgJiYgRmlsZXMuaXNEaXJlY3RvcnkoZi50b1BhdGgoKSwKLQkJCQkJTGlua09wdGlvbi5OT0ZPTExPV19MSU5LUykpIHsKLQkJCQlGaWxlVXRpbHMuZGVsZXRlKGYsIEZpbGVVdGlscy5SRUNVUlNJVkUpOwotCQkJfQotCQkJZnMuY3JlYXRlU3ltTGluayhmLCB0YXJnZXQpOwotCQkJY2FjaGVkUGFyZW50Lmluc2VydChmLmdldE5hbWUoKSwgRmlsZU1vZGUuU1lNTElOSyk7Ci0JCQllbnRyeS5zZXRMZW5ndGgoYnl0ZXMubGVuZ3RoKTsKLQkJCWVudHJ5LnNldExhc3RNb2RpZmllZChmcy5sYXN0TW9kaWZpZWRJbnN0YW50KGYpKTsKLQkJCXJldHVybjsKLQkJfQotCi0JCVN0cmluZyBuYW1lID0gZi5nZXROYW1lKCk7Ci0JCWlmIChuYW1lLmxlbmd0aCgpID4gMjAwKSB7Ci0JCQluYW1lID0gbmFtZS5zdWJzdHJpbmcoMCwgMjAwKTsKLQkJfQotCQlGaWxlIHRtcEZpbGUgPSBGaWxlLmNyZWF0ZVRlbXBGaWxlKCIuXyIgKyBuYW1lLCBudWxsLCBwYXJlbnREaXIpOyAvLyROT04tTkxTLTEkCi0KLQkJRGlyQ2FjaGVDaGVja291dC5nZXRDb250ZW50KGNhY2hlLmdldFJlcG9zaXRvcnkoKSwgcGF0aCwgbWV0YWRhdGEsIG9sLAotCQkJCW9wdGlvbnMsCi0JCQkJbmV3IEZpbGVPdXRwdXRTdHJlYW0odG1wRmlsZSkpOwotCi0JCS8vIFRoZSBlbnRyeSBuZWVkcyB0byBjb3JyZXNwb25kIHRvIHRoZSBvbi1kaXNrIGZpbGUgc2l6ZS4gSWYgdGhlCi0JCS8vIGNvbnRlbnQgd2FzIGZpbHRlcmVkIChlaXRoZXIgYnkgYXV0b2NybGYgaGFuZGxpbmcgb3Igc211ZGdlCi0JCS8vIGZpbHRlcnMpIGFzayB0aGUgZmlsZSBzeXN0ZW0gYWdhaW4gZm9yIHRoZSBsZW5ndGguIE90aGVyd2lzZSB0aGUKLQkJLy8gb2JqZWN0IGxvYWRlciBrbm93cyB0aGUgc2l6ZQotCQlpZiAobWV0YWRhdGEuZW9sU3RyZWFtVHlwZSA9PSBFb2xTdHJlYW1UeXBlLkRJUkVDVAotCQkJCSYmIG1ldGFkYXRhLnNtdWRnZUZpbHRlckNvbW1hbmQgPT0gbnVsbCkgewotCQkJZW50cnkuc2V0TGVuZ3RoKG9sLmdldFNpemUoKSk7Ci0JCX0gZWxzZSB7Ci0JCQllbnRyeS5zZXRMZW5ndGgodG1wRmlsZS5sZW5ndGgoKSk7Ci0JCX0KLQotCQlpZiAob3B0aW9ucy5pc0ZpbGVNb2RlKCkgJiYgZnMuc3VwcG9ydHNFeGVjdXRlKCkpIHsKLQkJCWlmIChGaWxlTW9kZS5FWEVDVVRBQkxFX0ZJTEUuZXF1YWxzKGVudHJ5LmdldFJhd01vZGUoKSkpIHsKLQkJCQlpZiAoIWZzLmNhbkV4ZWN1dGUodG1wRmlsZSkpCi0JCQkJCWZzLnNldEV4ZWN1dGUodG1wRmlsZSwgdHJ1ZSk7Ci0JCQl9IGVsc2UgewotCQkJCWlmIChmcy5jYW5FeGVjdXRlKHRtcEZpbGUpKQotCQkJCQlmcy5zZXRFeGVjdXRlKHRtcEZpbGUsIGZhbHNlKTsKLQkJCX0KLQkJfQotCQl0cnkgewotCQkJaWYgKHJlY3Vyc2l2ZURlbGV0ZSAmJiBGaWxlcy5pc0RpcmVjdG9yeShmLnRvUGF0aCgpLAotCQkJCQlMaW5rT3B0aW9uLk5PRk9MTE9XX0xJTktTKSkgewotCQkJCUZpbGVVdGlscy5kZWxldGUoZiwgRmlsZVV0aWxzLlJFQ1VSU0lWRSk7Ci0JCQl9Ci0JCQlGaWxlVXRpbHMucmVuYW1lKHRtcEZpbGUsIGYsIFN0YW5kYXJkQ29weU9wdGlvbi5BVE9NSUNfTU9WRSk7Ci0JCQljYWNoZWRQYXJlbnQucmVtb3ZlKGYuZ2V0TmFtZSgpKTsKLQkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgewotCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKAotCQkJCQlNZXNzYWdlRm9ybWF0LmZvcm1hdChKR2l0VGV4dC5nZXQoKS5yZW5hbWVGaWxlRmFpbGVkLAotCQkJCQkJCXRtcEZpbGUuZ2V0UGF0aCgpLCBmLmdldFBhdGgoKSksCi0JCQkJCWUpOwotCQl9IGZpbmFsbHkgewotCQkJaWYgKHRtcEZpbGUuZXhpc3RzKCkpIHsKLQkJCQlGaWxlVXRpbHMuZGVsZXRlKHRtcEZpbGUpOwotCQkJfQotCQl9Ci0JCWVudHJ5LnNldExhc3RNb2RpZmllZChmcy5sYXN0TW9kaWZpZWRJbnN0YW50KGYpKTsKLQl9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9EaXJDYWNoZUNoZWNrb3V0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpcmNhY2hlL0RpckNhY2hlQ2hlY2tvdXQuamF2YQppbmRleCAzZDk0NTQ3Li5jOTA0YTc4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpcmNhY2hlL0RpckNhY2hlQ2hlY2tvdXQuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpcmNhY2hlL0RpckNhY2hlQ2hlY2tvdXQuamF2YQpAQCAtNCw4ICs0LDcgQEAKICAqIENvcHlyaWdodCAoQykgMjAwOCwgUm9nZXIgQy4gU29hcmVzIDxyb2dlcnNvYXJlc0BpbnRlbGluZXQuY29tLmJyPgogICogQ29weXJpZ2h0IChDKSAyMDA2LCBTaGF3biBPLiBQZWFyY2UgPHNwZWFyY2VAc3BlYXJjZS5vcmc+CiAgKiBDb3B5cmlnaHQgKEMpIDIwMTAsIENocmlzaWFuIEhhbHN0cmljayA8Y2hyaXN0aWFuLmhhbHN0cmlja0BzYXAuY29tPgotICogQ29weXJpZ2h0IChDKSAyMDE5LCAyMDIwLCBBbmRyZSBCb3NzZXJ0IDxhbmRyZS5ib3NzZXJ0QHNpZW1lbnMuY29tPgotICogQ29weXJpZ2h0IChDKSAyMDE3LCAyMDIzLCBUaG9tYXMgV29sZiA8dHdvbGZAYXBhY2hlLm9yZz4gYW5kIG90aGVycworICogQ29weXJpZ2h0IChDKSAyMDE5LTIwMjAsIEFuZHJlIEJvc3NlcnQgPGFuZHJlLmJvc3NlcnRAc2llbWVucy5jb20+CiAgKgogICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCiAgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CkBAIC0xOSw4ICsxOCwxMCBAQAogaW1wb3J0IHN0YXRpYyBvcmcuZWNsaXBzZS5qZ2l0LnRyZWV3YWxrLlRyZWVXYWxrLk9wZXJhdGlvblR5cGUuQ0hFQ0tPVVRfT1A7CiAKIGltcG9ydCBqYXZhLmlvLkZpbGU7CitpbXBvcnQgamF2YS5pby5GaWxlT3V0cHV0U3RyZWFtOwogaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CiBpbXBvcnQgamF2YS5pby5PdXRwdXRTdHJlYW07CitpbXBvcnQgamF2YS5uaW8uZmlsZS5TdGFuZGFyZENvcHlPcHRpb247CiBpbXBvcnQgamF2YS50ZXh0Lk1lc3NhZ2VGb3JtYXQ7CiBpbXBvcnQgamF2YS50aW1lLkluc3RhbnQ7CiBpbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKQEAgLTQ2LDYgKzQ3LDcgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Db25zdGFudHM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29yZUNvbmZpZy5BdXRvQ1JMRjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Db3JlQ29uZmlnLkVvbFN0cmVhbVR5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29yZUNvbmZpZy5TeW1MaW5rczsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5GaWxlTW9kZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5OdWxsUHJvZ3Jlc3NNb25pdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLk9iamVjdENoZWNrZXI7CkBAIC02NSw3ICs2Nyw5IEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5maWx0ZXIuUGF0aEZpbHRlcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTLkV4ZWN1dGlvblJlc3VsdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRmlsZVV0aWxzOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5JbnRMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5SYXdQYXJzZVV0aWxzOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvLkVvbFN0cmVhbVR5cGVVdGlsOwogaW1wb3J0IG9yZy5zbGY0ai5Mb2dnZXI7CkBAIC0xMzgsOCArMTQyLDYgQEAgcHVibGljIENoZWNrb3V0TWV0YWRhdGEoRW9sU3RyZWFtVHlwZSBlb2xTdHJlYW1UeXBlLAogCiAJcHJpdmF0ZSBib29sZWFuIHBlcmZvcm1pbmdDaGVja291dDsKIAotCXByaXZhdGUgQ2hlY2tvdXQgY2hlY2tvdXQ7Ci0KIAlwcml2YXRlIFByb2dyZXNzTW9uaXRvciBtb25pdG9yID0gTnVsbFByb2dyZXNzTW9uaXRvci5JTlNUQU5DRTsKIAogCS8qKgpAQCAtNDkwLDcgKzQ5Miw2IEBAIHByaXZhdGUgYm9vbGVhbiBkb0NoZWNrb3V0KCkgdGhyb3dzIENvcnJ1cHRPYmplY3RFeGNlcHRpb24sIElPRXhjZXB0aW9uLAogCQkJQ2hlY2tvdXRDb25mbGljdEV4Y2VwdGlvbiwgSW5kZXhXcml0ZUV4Y2VwdGlvbiwgQ2FuY2VsZWRFeGNlcHRpb24gewogCQl0b0JlRGVsZXRlZC5jbGVhcigpOwogCQl0cnkgKE9iamVjdFJlYWRlciBvYmplY3RSZWFkZXIgPSByZXBvLmdldE9iamVjdERhdGFiYXNlKCkubmV3UmVhZGVyKCkpIHsKLQkJCWNoZWNrb3V0ID0gbmV3IENoZWNrb3V0KHJlcG8sIG51bGwpOwogCQkJaWYgKGhlYWRDb21taXRUcmVlICE9IG51bGwpCiAJCQkJcHJlU2NhblR3b1RyZWVzKCk7CiAJCQllbHNlCkBAIC01NTcsOSArNTU4LDkgQEAgcHJpdmF0ZSBib29sZWFuIGRvQ2hlY2tvdXQoKSB0aHJvd3MgQ29ycnVwdE9iamVjdEV4Y2VwdGlvbiwgSU9FeGNlcHRpb24sCiAJCQkJCUNoZWNrb3V0TWV0YWRhdGEgbWV0YSA9IGUuZ2V0VmFsdWUoKTsKIAkJCQkJRGlyQ2FjaGVFbnRyeSBlbnRyeSA9IGRjLmdldEVudHJ5KHBhdGgpOwogCQkJCQlpZiAoRmlsZU1vZGUuR0lUTElOSy5lcXVhbHMoZW50cnkuZ2V0UmF3TW9kZSgpKSkgewotCQkJCQkJY2hlY2tvdXQuY2hlY2tvdXRHaXRsaW5rKGVudHJ5LCBwYXRoKTsKKwkJCQkJCWNoZWNrb3V0R2l0bGluayhwYXRoLCBlbnRyeSk7CiAJCQkJCX0gZWxzZSB7Ci0JCQkJCQljaGVja291dC5jaGVja291dChlbnRyeSwgbWV0YSwgb2JqZWN0UmVhZGVyLCBwYXRoKTsKKwkJCQkJCWNoZWNrb3V0RW50cnkocmVwbywgZW50cnksIG9iamVjdFJlYWRlciwgZmFsc2UsIG1ldGEpOwogCQkJCQl9CiAJCQkJCWUgPSBudWxsOwogCkBAIC01OTQsOCArNTk1LDggQEAgcHJpdmF0ZSBib29sZWFuIGRvQ2hlY2tvdXQoKSB0aHJvd3MgQ29ycnVwdE9iamVjdEV4Y2VwdGlvbiwgSU9FeGNlcHRpb24sCiAJCQkJCQkJYnJlYWs7CiAJCQkJCQl9CiAJCQkJCQlpZiAoZW50cnkuZ2V0U3RhZ2UoKSA9PSBEaXJDYWNoZUVudHJ5LlNUQUdFXzMpIHsKLQkJCQkJCQljaGVja291dC5jaGVja291dChlbnRyeSwgbnVsbCwgb2JqZWN0UmVhZGVyLAotCQkJCQkJCQkJY29uZmxpY3QpOworCQkJCQkJCWNoZWNrb3V0RW50cnkocmVwbywgZW50cnksIG9iamVjdFJlYWRlciwgZmFsc2UsCisJCQkJCQkJCQludWxsKTsKIAkJCQkJCQlicmVhazsKIAkJCQkJCX0KIAkJCQkJCSsrZW50cnlJZHg7CkBAIC02MTgsNiArNjE5LDE0IEBAIHByaXZhdGUgYm9vbGVhbiBkb0NoZWNrb3V0KCkgdGhyb3dzIENvcnJ1cHRPYmplY3RFeGNlcHRpb24sIElPRXhjZXB0aW9uLAogCQlyZXR1cm4gdG9CZURlbGV0ZWQuaXNFbXB0eSgpOwogCX0KIAorCXByaXZhdGUgdm9pZCBjaGVja291dEdpdGxpbmsoU3RyaW5nIHBhdGgsIERpckNhY2hlRW50cnkgZW50cnkpCisJCQl0aHJvd3MgSU9FeGNlcHRpb24geworCQlGaWxlIGdpdGxpbmtEaXIgPSBuZXcgRmlsZShyZXBvLmdldFdvcmtUcmVlKCksIHBhdGgpOworCQlGaWxlVXRpbHMubWtkaXJzKGdpdGxpbmtEaXIsIHRydWUpOworCQlGUyBmcyA9IHJlcG8uZ2V0RlMoKTsKKwkJZW50cnkuc2V0TGFzdE1vZGlmaWVkKGZzLmxhc3RNb2RpZmllZEluc3RhbnQoZ2l0bGlua0RpcikpOworCX0KKwogCXByaXZhdGUgc3RhdGljIEFycmF5TGlzdDxTdHJpbmc+IGZpbHRlck91dChBcnJheUxpc3Q8U3RyaW5nPiBzdHJpbmdzLAogCQkJSW50TGlzdCBpbmRpY2VzVG9SZW1vdmUpIHsKIAkJaW50IG4gPSBpbmRpY2VzVG9SZW1vdmUuc2l6ZSgpOwpAQCAtMTIxNiwxMSArMTIyNSwxMCBAQCBwcml2YXRlIHZvaWQga2VlcChTdHJpbmcgcGF0aCwgRGlyQ2FjaGVFbnRyeSBlLCBXb3JraW5nVHJlZUl0ZXJhdG9yIGYpCiAJCWlmIChmb3JjZSkgewogCQkJaWYgKGYgPT0gbnVsbCB8fCBmLmlzTW9kaWZpZWQoZSwgdHJ1ZSwgd2Fsay5nZXRPYmplY3RSZWFkZXIoKSkpIHsKIAkJCQlrZXB0LmFkZChwYXRoKTsKLQkJCQljaGVja291dC5jaGVja291dChlLAorCQkJCWNoZWNrb3V0RW50cnkocmVwbywgZSwgd2Fsay5nZXRPYmplY3RSZWFkZXIoKSwgZmFsc2UsCiAJCQkJCQluZXcgQ2hlY2tvdXRNZXRhZGF0YSh3YWxrLmdldEVvbFN0cmVhbVR5cGUoQ0hFQ0tPVVRfT1ApLAogCQkJCQkJCQl3YWxrLmdldEZpbHRlckNvbW1hbmQoCi0JCQkJCQkJCQkJQ29uc3RhbnRzLkFUVFJfRklMVEVSX1RZUEVfU01VREdFKSksCi0JCQkJCQl3YWxrLmdldE9iamVjdFJlYWRlcigpLCBwYXRoKTsKKwkJCQkJCQkJCQlDb25zdGFudHMuQVRUUl9GSUxURVJfVFlQRV9TTVVER0UpKSk7CiAJCQl9CiAJCX0KIAl9CkBAIC0xNDQ1LDkgKzE0NTMsNzYgQEAgcHVibGljIHN0YXRpYyB2b2lkIGNoZWNrb3V0RW50cnkoUmVwb3NpdG9yeSByZXBvLCBEaXJDYWNoZUVudHJ5IGVudHJ5LAogCXB1YmxpYyBzdGF0aWMgdm9pZCBjaGVja291dEVudHJ5KFJlcG9zaXRvcnkgcmVwbywgRGlyQ2FjaGVFbnRyeSBlbnRyeSwKIAkJCU9iamVjdFJlYWRlciBvciwgYm9vbGVhbiBkZWxldGVSZWN1cnNpdmUsCiAJCQlDaGVja291dE1ldGFkYXRhIGNoZWNrb3V0TWV0YWRhdGEpIHRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCUNoZWNrb3V0IGNoZWNrb3V0ID0gbmV3IENoZWNrb3V0KHJlcG8sIG51bGwpCi0JCQkJLnNldFJlY3Vyc2l2ZURlbGV0aW9uKGRlbGV0ZVJlY3Vyc2l2ZSk7Ci0JCWNoZWNrb3V0LmNoZWNrb3V0KGVudHJ5LCBjaGVja291dE1ldGFkYXRhLCBvciwgbnVsbCk7CisJCWlmIChjaGVja291dE1ldGFkYXRhID09IG51bGwpCisJCQljaGVja291dE1ldGFkYXRhID0gQ2hlY2tvdXRNZXRhZGF0YS5FTVBUWTsKKwkJT2JqZWN0TG9hZGVyIG9sID0gb3Iub3BlbihlbnRyeS5nZXRPYmplY3RJZCgpKTsKKwkJRmlsZSBmID0gbmV3IEZpbGUocmVwby5nZXRXb3JrVHJlZSgpLCBlbnRyeS5nZXRQYXRoU3RyaW5nKCkpOworCQlGaWxlIHBhcmVudERpciA9IGYuZ2V0UGFyZW50RmlsZSgpOworCQlpZiAocGFyZW50RGlyLmlzRmlsZSgpKSB7CisJCQlGaWxlVXRpbHMuZGVsZXRlKHBhcmVudERpcik7CisJCX0KKwkJRmlsZVV0aWxzLm1rZGlycyhwYXJlbnREaXIsIHRydWUpOworCQlGUyBmcyA9IHJlcG8uZ2V0RlMoKTsKKwkJV29ya2luZ1RyZWVPcHRpb25zIG9wdCA9IHJlcG8uZ2V0Q29uZmlnKCkuZ2V0KFdvcmtpbmdUcmVlT3B0aW9ucy5LRVkpOworCQlpZiAoZW50cnkuZ2V0RmlsZU1vZGUoKSA9PSBGaWxlTW9kZS5TWU1MSU5LCisJCQkJJiYgb3B0LmdldFN5bUxpbmtzKCkgPT0gU3ltTGlua3MuVFJVRSkgeworCQkJYnl0ZVtdIGJ5dGVzID0gb2wuZ2V0Qnl0ZXMoKTsKKwkJCVN0cmluZyB0YXJnZXQgPSBSYXdQYXJzZVV0aWxzLmRlY29kZShieXRlcyk7CisJCQlpZiAoZGVsZXRlUmVjdXJzaXZlICYmIGYuaXNEaXJlY3RvcnkoKSkgeworCQkJCUZpbGVVdGlscy5kZWxldGUoZiwgRmlsZVV0aWxzLlJFQ1VSU0lWRSk7CisJCQl9CisJCQlmcy5jcmVhdGVTeW1MaW5rKGYsIHRhcmdldCk7CisJCQllbnRyeS5zZXRMZW5ndGgoYnl0ZXMubGVuZ3RoKTsKKwkJCWVudHJ5LnNldExhc3RNb2RpZmllZChmcy5sYXN0TW9kaWZpZWRJbnN0YW50KGYpKTsKKwkJCXJldHVybjsKKwkJfQorCisJCVN0cmluZyBuYW1lID0gZi5nZXROYW1lKCk7CisJCWlmIChuYW1lLmxlbmd0aCgpID4gMjAwKSB7CisJCQluYW1lID0gbmFtZS5zdWJzdHJpbmcoMCwgMjAwKTsKKwkJfQorCQlGaWxlIHRtcEZpbGUgPSBGaWxlLmNyZWF0ZVRlbXBGaWxlKAorCQkJCSIuXyIgKyBuYW1lLCBudWxsLCBwYXJlbnREaXIpOyAvLyROT04tTkxTLTEkCisKKwkJZ2V0Q29udGVudChyZXBvLCBlbnRyeS5nZXRQYXRoU3RyaW5nKCksIGNoZWNrb3V0TWV0YWRhdGEsIG9sLCBvcHQsCisJCQkJbmV3IEZpbGVPdXRwdXRTdHJlYW0odG1wRmlsZSkpOworCisJCS8vIFRoZSBlbnRyeSBuZWVkcyB0byBjb3JyZXNwb25kIHRvIHRoZSBvbi1kaXNrIGZpbGVzaXplLiBJZiB0aGUgY29udGVudAorCQkvLyB3YXMgZmlsdGVyZWQgKGVpdGhlciBieSBhdXRvY3JsZiBoYW5kbGluZyBvciBzbXVkZ2UgZmlsdGVycykgYXNrIHRoZQorCQkvLyBmaWxlc3lzdGVtIGFnYWluIGZvciB0aGUgbGVuZ3RoLiBPdGhlcndpc2UgdGhlIG9iamVjdGxvYWRlciBrbm93cyB0aGUKKwkJLy8gc2l6ZQorCQlpZiAoY2hlY2tvdXRNZXRhZGF0YS5lb2xTdHJlYW1UeXBlID09IEVvbFN0cmVhbVR5cGUuRElSRUNUCisJCQkJJiYgY2hlY2tvdXRNZXRhZGF0YS5zbXVkZ2VGaWx0ZXJDb21tYW5kID09IG51bGwpIHsKKwkJCWVudHJ5LnNldExlbmd0aChvbC5nZXRTaXplKCkpOworCQl9IGVsc2UgeworCQkJZW50cnkuc2V0TGVuZ3RoKHRtcEZpbGUubGVuZ3RoKCkpOworCQl9CisKKwkJaWYgKG9wdC5pc0ZpbGVNb2RlKCkgJiYgZnMuc3VwcG9ydHNFeGVjdXRlKCkpIHsKKwkJCWlmIChGaWxlTW9kZS5FWEVDVVRBQkxFX0ZJTEUuZXF1YWxzKGVudHJ5LmdldFJhd01vZGUoKSkpIHsKKwkJCQlpZiAoIWZzLmNhbkV4ZWN1dGUodG1wRmlsZSkpCisJCQkJCWZzLnNldEV4ZWN1dGUodG1wRmlsZSwgdHJ1ZSk7CisJCQl9IGVsc2UgeworCQkJCWlmIChmcy5jYW5FeGVjdXRlKHRtcEZpbGUpKQorCQkJCQlmcy5zZXRFeGVjdXRlKHRtcEZpbGUsIGZhbHNlKTsKKwkJCX0KKwkJfQorCQl0cnkgeworCQkJaWYgKGRlbGV0ZVJlY3Vyc2l2ZSAmJiBmLmlzRGlyZWN0b3J5KCkpIHsKKwkJCQlGaWxlVXRpbHMuZGVsZXRlKGYsIEZpbGVVdGlscy5SRUNVUlNJVkUpOworCQkJfQorCQkJRmlsZVV0aWxzLnJlbmFtZSh0bXBGaWxlLCBmLCBTdGFuZGFyZENvcHlPcHRpb24uQVRPTUlDX01PVkUpOworCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CisJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24oCisJCQkJCU1lc3NhZ2VGb3JtYXQuZm9ybWF0KEpHaXRUZXh0LmdldCgpLnJlbmFtZUZpbGVGYWlsZWQsCisJCQkJCQkJdG1wRmlsZS5nZXRQYXRoKCksIGYuZ2V0UGF0aCgpKSwKKwkJCQkJZSk7CisJCX0gZmluYWxseSB7CisJCQlpZiAodG1wRmlsZS5leGlzdHMoKSkgeworCQkJCUZpbGVVdGlscy5kZWxldGUodG1wRmlsZSk7CisJCQl9CisJCX0KKwkJZW50cnkuc2V0TGFzdE1vZGlmaWVkKGZzLmxhc3RNb2RpZmllZEluc3RhbnQoZikpOwogCX0KIAogCS8qKgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9EaXJDYWNoZVRyZWUuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZGlyY2FjaGUvRGlyQ2FjaGVUcmVlLmphdmEKaW5kZXggMDcxNjJkYi4uZTBjMWU5MyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9kaXJjYWNoZS9EaXJDYWNoZVRyZWUuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2RpcmNhY2hlL0RpckNhY2hlVHJlZS5qYXZhCkBAIC0yODAsMTIgKzI4MCwxMiBAQCBwdWJsaWMgU3RyaW5nIGdldFBhdGhTdHJpbmcoKSB7CiAJICogICAgICAgICAgICBudW1iZXIgb2YgYnl0ZXMgb2YgPGNvZGU+Y2FjaGVbY2FjaGVJZHhdLnBhdGg8L2NvZGU+IHRoYXQKIAkgKiAgICAgICAgICAgIG1hdGNoZXMgdGhpcyB0cmVlJ3MgcGF0aC4gVGhlIHZhbHVlIGF0IGFycmF5IHBvc2l0aW9uCiAJICogICAgICAgICAgICA8Y29kZT5jYWNoZVtjYWNoZUlkeF0ucGF0aFtwYXRoT2ZmLTFdPC9jb2RlPiBpcyBhbHdheXMgJy8nIGlmCi0JICogICAgICAgICAgICA8Y29kZT5wYXRoT2ZmPC9jb2RlPiBpcyA+IDAuCisJICogICAgICAgICAgICA8Y29kZT5wYXRoT2ZmPC9jb2RlPiBpcyAmZ3Q7IDAuCiAJICogQHBhcmFtIG93CiAJICogICAgICAgICAgICB0aGUgd3JpdGVyIHRvIHVzZSB3aGVuIHNlcmlhbGl6aW5nIHRvIHRoZSBzdG9yZS4KIAkgKiBAcmV0dXJuIGlkZW50aXR5IG9mIHRoaXMgdHJlZS4KIAkgKiBAdGhyb3dzIFVubWVyZ2VkUGF0aEV4Y2VwdGlvbgotCSAqICAgICAgICAgICAgIG9uZSBvciBtb3JlIHBhdGhzIGNvbnRhaW4gaGlnaGVyLW9yZGVyIHN0YWdlcyAoc3RhZ2UgPiAwKSwKKwkgKiAgICAgICAgICAgICBvbmUgb3IgbW9yZSBwYXRocyBjb250YWluIGhpZ2hlci1vcmRlciBzdGFnZXMgKHN0YWdlICZndDsgMCksCiAJICogICAgICAgICAgICAgd2hpY2ggY2Fubm90IGJlIHN0b3JlZCBpbiBhIHRyZWUgb2JqZWN0LgogCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KIAkgKiAgICAgICAgICAgICBhbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VycmVkIHdyaXRpbmcgdG8gdGhlIG9iamVjdCBzdG9yZS4KQEAgLTQwMSw3ICs0MDEsNyBAQCBmaW5hbCBib29sZWFuIGNvbnRhaW5zKGJ5dGVbXSBhLCBpbnQgYU9mZiwgaW50IGFMZW4pIHsKIAkgKiAgICAgICAgICAgIG51bWJlciBvZiBieXRlcyBvZiA8Y29kZT5jYWNoZVtjYWNoZUlkeF0ucGF0aDwvY29kZT4gdGhhdAogCSAqICAgICAgICAgICAgbWF0Y2hlcyB0aGlzIHRyZWUncyBwYXRoLiBUaGUgdmFsdWUgYXQgYXJyYXkgcG9zaXRpb24KIAkgKiAgICAgICAgICAgIDxjb2RlPmNhY2hlW2NhY2hlSWR4XS5wYXRoW3BhdGhPZmYtMV08L2NvZGU+IGlzIGFsd2F5cyAnLycgaWYKLQkgKiAgICAgICAgICAgIDxjb2RlPnBhdGhPZmY8L2NvZGU+IGlzID4gMC4KKwkgKiAgICAgICAgICAgIDxjb2RlPnBhdGhPZmY8L2NvZGU+IGlzICZndDsgMC4KIAkgKi8KIAl2b2lkIHZhbGlkYXRlKGZpbmFsIERpckNhY2hlRW50cnlbXSBjYWNoZSwgZmluYWwgaW50IGNDbnQsIGludCBjSWR4LAogCQkJZmluYWwgaW50IHBhdGhPZmYpIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZXJyb3JzL0JpbmFyeUJsb2JFeGNlcHRpb24uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZXJyb3JzL0JpbmFyeUJsb2JFeGNlcHRpb24uamF2YQppbmRleCA1OGExMjE0Li43Njg5MzFjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2Vycm9ycy9CaW5hcnlCbG9iRXhjZXB0aW9uLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9lcnJvcnMvQmluYXJ5QmxvYkV4Y2VwdGlvbi5qYXZhCkBAIC0yMiw0ICsyMiw5IEBAIHB1YmxpYyBjbGFzcyBCaW5hcnlCbG9iRXhjZXB0aW9uIGV4dGVuZHMgRXhjZXB0aW9uIHsKIAkgKiBDb25zdHJ1Y3QgYSBCaW5hcnlCbG9iRXhjZXB0aW9uLgogCSAqLwogCXB1YmxpYyBCaW5hcnlCbG9iRXhjZXB0aW9uKCkge30KKworCUBPdmVycmlkZQorCXB1YmxpYyBzeW5jaHJvbml6ZWQgVGhyb3dhYmxlIGZpbGxJblN0YWNrVHJhY2UoKSB7CisJCXJldHVybiB0aGlzOworCX0KIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZXJyb3JzL05vUmVtb3RlUmVwb3NpdG9yeUV4Y2VwdGlvbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9lcnJvcnMvTm9SZW1vdGVSZXBvc2l0b3J5RXhjZXB0aW9uLmphdmEKaW5kZXggMWRkOTc2Yy4uMWZhNDExYiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9lcnJvcnMvTm9SZW1vdGVSZXBvc2l0b3J5RXhjZXB0aW9uLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9lcnJvcnMvTm9SZW1vdGVSZXBvc2l0b3J5RXhjZXB0aW9uLmphdmEKQEAgLTM5LDcgKzM5LDcgQEAgcHVibGljIE5vUmVtb3RlUmVwb3NpdG9yeUV4Y2VwdGlvbihVUklpc2ggdXJpLCBTdHJpbmcgcykgewogCSAqICAgICAgICAgICAgbWVzc2FnZQogCSAqIEBwYXJhbSBjYXVzZQogCSAqICAgICAgICAgICAgcm9vdCBjYXVzZSBleGNlcHRpb24KLQkgKiBAc2luY2UgNS4xMworCSAqIEBzaW5jZSA1LjEzLjEKIAkgKi8KIAlwdWJsaWMgTm9SZW1vdGVSZXBvc2l0b3J5RXhjZXB0aW9uKFVSSWlzaCB1cmksIFN0cmluZyBzLCBUaHJvd2FibGUgY2F1c2UpIHsKIAkJc3VwZXIodXJpLCBzLCBjYXVzZSk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2Vycm9ycy9TdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9lcnJvcnMvU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24uamF2YQppbmRleCAwNzA4MTIzLi5kZTIxMGIwIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2Vycm9ycy9TdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZXJyb3JzL1N0b3JlZE9iamVjdFJlcHJlc2VudGF0aW9uTm90QXZhaWxhYmxlRXhjZXB0aW9uLmphdmEKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDEwLCBHb29nbGUgSW5jLiBhbmQgb3RoZXJzCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAsIDIwMjEgR29vZ2xlIEluYy4gYW5kIG90aGVycwogICoKICAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQogICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdApAQCAtNywyOSArNywyMyBAQAogICoKICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAqLwotCiBwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzOwogCi1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnBhY2suT2JqZWN0VG9QYWNrOwotCiAvKioKICAqIEEgcHJldmlvdXNseSBzZWxlY3RlZCByZXByZXNlbnRhdGlvbiBpcyBubyBsb25nZXIgYXZhaWxhYmxlLgogICovCi1wdWJsaWMgY2xhc3MgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24gZXh0ZW5kcyBFeGNlcHRpb24geyAvL1RPRE8gcmVtb3ZlIHVudXNlZCBPYmplY3RUb1BhY2sgaW4gNS4wCitwdWJsaWMgY2xhc3MgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24gZXh0ZW5kcyBFeGNlcHRpb24geworCiAJcHJpdmF0ZSBzdGF0aWMgZmluYWwgbG9uZyBzZXJpYWxWZXJzaW9uVUlEID0gMUw7CiAKIAkvKioKLQkgKiBDb25zdHJ1Y3QgYW4gZXJyb3IgZm9yIGFuIG9iamVjdC4KKwkgKiBDcmVhdGVzIGEgbmV3IGluc3RhbmNlLgogCSAqCi0JICogQHBhcmFtIG90cAotCSAqICAgICAgICAgICAgdGhlIG9iamVjdCB3aG9zZSBjdXJyZW50IHJlcHJlc2VudGF0aW9uIGlzIG5vIGxvbmdlciBwcmVzZW50LgogCSAqIEBwYXJhbSBjYXVzZQotCSAqICAgICAgICAgICAgY2F1c2UKLQkgKiBAc2luY2UgNC4xMAorCSAqICAgICAgICAgICAge0BsaW5rIFRocm93YWJsZX0gdGhhdCBjYXVzZWQgdGhpcyBleGNlcHRpb24KKwkgKiBAc2luY2UgNi4wCiAJICovCi0JcHVibGljIFN0b3JlZE9iamVjdFJlcHJlc2VudGF0aW9uTm90QXZhaWxhYmxlRXhjZXB0aW9uKE9iamVjdFRvUGFjayBvdHAsCi0JCQlUaHJvd2FibGUgY2F1c2UpIHsKKwlwdWJsaWMgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24oVGhyb3dhYmxlIGNhdXNlKSB7CiAJCXN1cGVyKGNhdXNlKTsKLQkJLy8gRG8gbm90aGluZy4KIAl9CiB9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2dpdHJlcG8vTWFuaWZlc3RQYXJzZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZ2l0cmVwby9NYW5pZmVzdFBhcnNlci5qYXZhCmluZGV4IDZhMmMzODkuLmFhNjlhMDUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZ2l0cmVwby9NYW5pZmVzdFBhcnNlci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvZ2l0cmVwby9NYW5pZmVzdFBhcnNlci5qYXZhCkBAIC0yNCw2ICsyNCw5IEBACiBpbXBvcnQgamF2YS51dGlsLk1hcDsKIGltcG9ydCBqYXZhLnV0aWwuU2V0OwogCitpbXBvcnQgamF2YXgueG1sLnBhcnNlcnMuUGFyc2VyQ29uZmlndXJhdGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBqYXZheC54bWwucGFyc2Vycy5TQVhQYXJzZXJGYWN0b3J5OworCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9ucy5Ob25OdWxsOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5HaXRBUElFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5naXRyZXBvLlJlcG9Qcm9qZWN0LkNvcHlGaWxlOwpAQCAtMzcsNyArNDAsNiBAQAogaW1wb3J0IG9yZy54bWwuc2F4LlNBWEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcueG1sLnNheC5YTUxSZWFkZXI7CiBpbXBvcnQgb3JnLnhtbC5zYXguaGVscGVycy5EZWZhdWx0SGFuZGxlcjsKLWltcG9ydCBvcmcueG1sLnNheC5oZWxwZXJzLlhNTFJlYWRlckZhY3Rvcnk7CiAKIC8qKgogICogUmVwbyBYTUwgbWFuaWZlc3QgcGFyc2VyLgpAQCAtMTM3LDggKzEzOSw4IEBAIHB1YmxpYyB2b2lkIHJlYWQoSW5wdXRTdHJlYW0gaW5wdXRTdHJlYW0pIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCXhtbEluUmVhZCsrOwogCQlmaW5hbCBYTUxSZWFkZXIgeHI7CiAJCXRyeSB7Ci0JCQl4ciA9IFhNTFJlYWRlckZhY3RvcnkuY3JlYXRlWE1MUmVhZGVyKCk7Ci0JCX0gY2F0Y2ggKFNBWEV4Y2VwdGlvbiBlKSB7CisJCQl4ciA9IFNBWFBhcnNlckZhY3RvcnkubmV3SW5zdGFuY2UoKS5uZXdTQVhQYXJzZXIoKS5nZXRYTUxSZWFkZXIoKTsKKwkJfSBjYXRjaCAoU0FYRXhjZXB0aW9uIHwgUGFyc2VyQ29uZmlndXJhdGlvbkV4Y2VwdGlvbiBlKSB7CiAJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24oSkdpdFRleHQuZ2V0KCkubm9YTUxQYXJzZXJBdmFpbGFibGUsIGUpOwogCQl9CiAJCXhyLnNldENvbnRlbnRIYW5kbGVyKHRoaXMpOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9naXRyZXBvL1JlcG9Db21tYW5kLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2dpdHJlcG8vUmVwb0NvbW1hbmQuamF2YQppbmRleCA1NTIzMTVkLi5lMGE4MjI0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2dpdHJlcG8vUmVwb0NvbW1hbmQuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2dpdHJlcG8vUmVwb0NvbW1hbmQuamF2YQpAQCAtNTc3LDEyMiArNTc3LDExIEBAIHB1YmxpYyBSZXZDb21taXQgY2FsbCgpIHRocm93cyBHaXRBUElFeGNlcHRpb24gewogCQkJTGlzdDxSZXBvUHJvamVjdD4gcmVuYW1lZFByb2plY3RzID0gcmVuYW1lUHJvamVjdHMoZmlsdGVyZWRQcm9qZWN0cyk7CiAKIAkJCURpckNhY2hlIGluZGV4ID0gRGlyQ2FjaGUubmV3SW5Db3JlKCk7Ci0JCQlEaXJDYWNoZUJ1aWxkZXIgYnVpbGRlciA9IGluZGV4LmJ1aWxkZXIoKTsKIAkJCU9iamVjdEluc2VydGVyIGluc2VydGVyID0gcmVwby5uZXdPYmplY3RJbnNlcnRlcigpOworCiAJCQl0cnkgKFJldldhbGsgcncgPSBuZXcgUmV2V2FsayhyZXBvKSkgewotCQkJCUNvbmZpZyBjZmcgPSBuZXcgQ29uZmlnKCk7Ci0JCQkJU3RyaW5nQnVpbGRlciBhdHRyaWJ1dGVzID0gbmV3IFN0cmluZ0J1aWxkZXIoKTsKLQkJCQlmb3IgKFJlcG9Qcm9qZWN0IHByb2ogOiByZW5hbWVkUHJvamVjdHMpIHsKLQkJCQkJU3RyaW5nIG5hbWUgPSBwcm9qLmdldE5hbWUoKTsKLQkJCQkJU3RyaW5nIHBhdGggPSBwcm9qLmdldFBhdGgoKTsKLQkJCQkJU3RyaW5nIHVybCA9IHByb2ouZ2V0VXJsKCk7Ci0JCQkJCU9iamVjdElkIG9iamVjdElkOwotCQkJCQlpZiAoT2JqZWN0SWQuaXNJZChwcm9qLmdldFJldmlzaW9uKCkpKSB7Ci0JCQkJCQlvYmplY3RJZCA9IE9iamVjdElkLmZyb21TdHJpbmcocHJvai5nZXRSZXZpc2lvbigpKTsKLQkJCQkJfSBlbHNlIHsKLQkJCQkJCW9iamVjdElkID0gY2FsbGJhY2suc2hhMSh1cmwsIHByb2ouZ2V0UmV2aXNpb24oKSk7Ci0JCQkJCQlpZiAob2JqZWN0SWQgPT0gbnVsbCAmJiAhaWdub3JlUmVtb3RlRmFpbHVyZXMpIHsKLQkJCQkJCQl0aHJvdyBuZXcgUmVtb3RlVW5hdmFpbGFibGVFeGNlcHRpb24odXJsKTsKLQkJCQkJCX0KLQkJCQkJCWlmIChyZWNvcmRSZW1vdGVCcmFuY2gpIHsKLQkJCQkJCQkvLyAiYnJhbmNoIiBmaWVsZCBpcyBvbmx5IGZvciBub24tdGFnIHJlZmVyZW5jZXMuCi0JCQkJCQkJLy8gS2VlcCB0YWdzIGluICJyZWYiIGZpZWxkIGFzIGhpbnQgZm9yIG90aGVyIHRvb2xzLgotCQkJCQkJCVN0cmluZyBmaWVsZCA9IHByb2ouZ2V0UmV2aXNpb24oKS5zdGFydHNXaXRoKAotCQkJCQkJCQkJUl9UQUdTKSA/ICJyZWYiIDogImJyYW5jaCI7IC8vJE5PTi1OTFMtMSQgLy8kTk9OLU5MUy0yJAotCQkJCQkJCWNmZy5zZXRTdHJpbmcoInN1Ym1vZHVsZSIsIG5hbWUsIGZpZWxkLCAvLyROT04tTkxTLTEkCi0JCQkJCQkJCQlwcm9qLmdldFJldmlzaW9uKCkpOwotCQkJCQkJfQotCi0JCQkJCQlpZiAocmVjb3JkU2hhbGxvd1N1Ym1vZHVsZXMgJiYgcHJvai5nZXRSZWNvbW1lbmRTaGFsbG93KCkgIT0gbnVsbCkgewotCQkJCQkJCS8vIFRoZSBzaGFsbG93IHJlY29tbWVuZGF0aW9uIGlzIGxvc2luZyBpbmZvcm1hdGlvbi4KLQkJCQkJCQkvLyBBcyB0aGUgcmVwbyBtYW5pZmVzdHMgc3RvcmVzIHRoZSByZWNvbW1lbmRlZAotCQkJCQkJCS8vIGRlcHRoIGluIHRoZSAnY2xvbmUtZGVwdGgnIGZpZWxkLCB3aGlsZQotCQkJCQkJCS8vIGdpdCBjb3JlIG9ubHkgdXNlcyBhIGJpbmFyeSAnc2hhbGxvdyA9IHRydWUvZmFsc2UnCi0JCQkJCQkJLy8gaGludCwgd2UnbGwgbWFwIGFueSBkZXB0aCB0byAnc2hhbGxvdyA9IHRydWUnCi0JCQkJCQkJY2ZnLnNldEJvb2xlYW4oInN1Ym1vZHVsZSIsIG5hbWUsICJzaGFsbG93IiwgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCi0JCQkJCQkJCQl0cnVlKTsKLQkJCQkJCX0KLQkJCQkJfQotCQkJCQlpZiAocmVjb3JkU3VibW9kdWxlTGFiZWxzKSB7Ci0JCQkJCQlTdHJpbmdCdWlsZGVyIHJlYyA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7Ci0JCQkJCQlyZWMuYXBwZW5kKCIvIik7IC8vJE5PTi1OTFMtMSQKLQkJCQkJCXJlYy5hcHBlbmQocGF0aCk7Ci0JCQkJCQlmb3IgKFN0cmluZyBncm91cCA6IHByb2ouZ2V0R3JvdXBzKCkpIHsKLQkJCQkJCQlyZWMuYXBwZW5kKCIgIik7IC8vJE5PTi1OTFMtMSQKLQkJCQkJCQlyZWMuYXBwZW5kKGdyb3VwKTsKLQkJCQkJCX0KLQkJCQkJCXJlYy5hcHBlbmQoIlxuIik7IC8vJE5PTi1OTFMtMSQKLQkJCQkJCWF0dHJpYnV0ZXMuYXBwZW5kKHJlYy50b1N0cmluZygpKTsKLQkJCQkJfQotCi0JCQkJCVVSSSBzdWJtb2RVcmwgPSBVUkkuY3JlYXRlKHVybCk7Ci0JCQkJCWlmICh0YXJnZXRVcmkgIT0gbnVsbCkgewotCQkJCQkJc3VibW9kVXJsID0gcmVsYXRpdml6ZSh0YXJnZXRVcmksIHN1Ym1vZFVybCk7Ci0JCQkJCX0KLQkJCQkJY2ZnLnNldFN0cmluZygic3VibW9kdWxlIiwgbmFtZSwgInBhdGgiLCBwYXRoKTsgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCi0JCQkJCWNmZy5zZXRTdHJpbmcoInN1Ym1vZHVsZSIsIG5hbWUsICJ1cmwiLCAvLyROT04tTkxTLTEkIC8vJE5PTi1OTFMtMiQKLQkJCQkJCQlzdWJtb2RVcmwudG9TdHJpbmcoKSk7Ci0KLQkJCQkJLy8gY3JlYXRlIGdpdGxpbmsKLQkJCQkJaWYgKG9iamVjdElkICE9IG51bGwpIHsKLQkJCQkJCURpckNhY2hlRW50cnkgZGNFbnRyeSA9IG5ldyBEaXJDYWNoZUVudHJ5KHBhdGgpOwotCQkJCQkJZGNFbnRyeS5zZXRPYmplY3RJZChvYmplY3RJZCk7Ci0JCQkJCQlkY0VudHJ5LnNldEZpbGVNb2RlKEZpbGVNb2RlLkdJVExJTkspOwotCQkJCQkJYnVpbGRlci5hZGQoZGNFbnRyeSk7Ci0KLQkJCQkJCWZvciAoQ29weUZpbGUgY29weWZpbGUgOiBwcm9qLmdldENvcHlGaWxlcygpKSB7Ci0JCQkJCQkJUmVtb3RlRmlsZSByZiA9IGNhbGxiYWNrLnJlYWRGaWxlV2l0aE1vZGUoCi0JCQkJCQkJCXVybCwgcHJvai5nZXRSZXZpc2lvbigpLCBjb3B5ZmlsZS5zcmMpOwotCQkJCQkJCW9iamVjdElkID0gaW5zZXJ0ZXIuaW5zZXJ0KENvbnN0YW50cy5PQkpfQkxPQiwKLQkJCQkJCQkJCXJmLmdldENvbnRlbnRzKCkpOwotCQkJCQkJCWRjRW50cnkgPSBuZXcgRGlyQ2FjaGVFbnRyeShjb3B5ZmlsZS5kZXN0KTsKLQkJCQkJCQlkY0VudHJ5LnNldE9iamVjdElkKG9iamVjdElkKTsKLQkJCQkJCQlkY0VudHJ5LnNldEZpbGVNb2RlKHJmLmdldEZpbGVNb2RlKCkpOwotCQkJCQkJCWJ1aWxkZXIuYWRkKGRjRW50cnkpOwotCQkJCQkJfQotCQkJCQkJZm9yIChMaW5rRmlsZSBsaW5rZmlsZSA6IHByb2ouZ2V0TGlua0ZpbGVzKCkpIHsKLQkJCQkJCQlTdHJpbmcgbGluazsKLQkJCQkJCQlpZiAobGlua2ZpbGUuZGVzdC5jb250YWlucygiLyIpKSB7IC8vJE5PTi1OTFMtMSQKLQkJCQkJCQkJbGluayA9IEZpbGVVdGlscy5yZWxhdGl2aXplR2l0UGF0aCgKLQkJCQkJCQkJCWxpbmtmaWxlLmRlc3Quc3Vic3RyaW5nKDAsCi0JCQkJCQkJCQkJbGlua2ZpbGUuZGVzdC5sYXN0SW5kZXhPZignLycpKSwKLQkJCQkJCQkJCXByb2ouZ2V0UGF0aCgpICsgIi8iICsgbGlua2ZpbGUuc3JjKTsgLy8kTk9OLU5MUy0xJAotCQkJCQkJCX0gZWxzZSB7Ci0JCQkJCQkJCWxpbmsgPSBwcm9qLmdldFBhdGgoKSArICIvIiArIGxpbmtmaWxlLnNyYzsgLy8kTk9OLU5MUy0xJAotCQkJCQkJCX0KLQotCQkJCQkJCW9iamVjdElkID0gaW5zZXJ0ZXIuaW5zZXJ0KENvbnN0YW50cy5PQkpfQkxPQiwKLQkJCQkJCQkJCWxpbmsuZ2V0Qnl0ZXMoVVRGXzgpKTsKLQkJCQkJCQlkY0VudHJ5ID0gbmV3IERpckNhY2hlRW50cnkobGlua2ZpbGUuZGVzdCk7Ci0JCQkJCQkJZGNFbnRyeS5zZXRPYmplY3RJZChvYmplY3RJZCk7Ci0JCQkJCQkJZGNFbnRyeS5zZXRGaWxlTW9kZShGaWxlTW9kZS5TWU1MSU5LKTsKLQkJCQkJCQlidWlsZGVyLmFkZChkY0VudHJ5KTsKLQkJCQkJCX0KLQkJCQkJfQotCQkJCX0KLQkJCQlTdHJpbmcgY29udGVudCA9IGNmZy50b1RleHQoKTsKLQotCQkJCS8vIGNyZWF0ZSBhIG5ldyBEaXJDYWNoZUVudHJ5IGZvciAuZ2l0bW9kdWxlcyBmaWxlLgotCQkJCWZpbmFsIERpckNhY2hlRW50cnkgZGNFbnRyeSA9IG5ldyBEaXJDYWNoZUVudHJ5KENvbnN0YW50cy5ET1RfR0lUX01PRFVMRVMpOwotCQkJCU9iamVjdElkIG9iamVjdElkID0gaW5zZXJ0ZXIuaW5zZXJ0KENvbnN0YW50cy5PQkpfQkxPQiwKLQkJCQkJCWNvbnRlbnQuZ2V0Qnl0ZXMoVVRGXzgpKTsKLQkJCQlkY0VudHJ5LnNldE9iamVjdElkKG9iamVjdElkKTsKLQkJCQlkY0VudHJ5LnNldEZpbGVNb2RlKEZpbGVNb2RlLlJFR1VMQVJfRklMRSk7Ci0JCQkJYnVpbGRlci5hZGQoZGNFbnRyeSk7Ci0KLQkJCQlpZiAocmVjb3JkU3VibW9kdWxlTGFiZWxzKSB7Ci0JCQkJCS8vIGNyZWF0ZSBhIG5ldyBEaXJDYWNoZUVudHJ5IGZvciAuZ2l0YXR0cmlidXRlcyBmaWxlLgotCQkJCQlmaW5hbCBEaXJDYWNoZUVudHJ5IGRjRW50cnlBdHRyID0gbmV3IERpckNhY2hlRW50cnkoQ29uc3RhbnRzLkRPVF9HSVRfQVRUUklCVVRFUyk7Ci0JCQkJCU9iamVjdElkIGF0dHJJZCA9IGluc2VydGVyLmluc2VydChDb25zdGFudHMuT0JKX0JMT0IsCi0JCQkJCQkJYXR0cmlidXRlcy50b1N0cmluZygpLmdldEJ5dGVzKFVURl84KSk7Ci0JCQkJCWRjRW50cnlBdHRyLnNldE9iamVjdElkKGF0dHJJZCk7Ci0JCQkJCWRjRW50cnlBdHRyLnNldEZpbGVNb2RlKEZpbGVNb2RlLlJFR1VMQVJfRklMRSk7Ci0JCQkJCWJ1aWxkZXIuYWRkKGRjRW50cnlBdHRyKTsKLQkJCQl9Ci0KLQkJCQlidWlsZGVyLmZpbmlzaCgpOworCQkJCXByZXBhcmVJbmRleChyZW5hbWVkUHJvamVjdHMsIGluZGV4LCBpbnNlcnRlcik7CiAJCQkJT2JqZWN0SWQgdHJlZUlkID0gaW5kZXgud3JpdGVUcmVlKGluc2VydGVyKTsKLQogCQkJCWxvbmcgcHJldkRlbGF5ID0gMDsKIAkJCQlmb3IgKGludCBpID0gMDsgaSA8IExPQ0tfRkFJTFVSRV9NQVhfUkVUUklFUyAtIDE7IGkrKykgewogCQkJCQl0cnkgewpAQCAtNzA4LDcgKzU5Nyw3IEBAIHB1YmxpYyBSZXZDb21taXQgY2FsbCgpIHRocm93cyBHaXRBUElFeGNlcHRpb24gewogCQkJCX0KIAkJCQkvLyBJbiB0aGUgbGFzdCB0cnksIGp1c3QgcHJvcGFnYXRlIHRoZSBleGNlcHRpb25zCiAJCQkJcmV0dXJuIGNvbW1pdFRyZWVPbkN1cnJlbnRUaXAoaW5zZXJ0ZXIsIHJ3LCB0cmVlSWQpOwotCQkJfSBjYXRjaCAoR2l0QVBJRXhjZXB0aW9uIHwgSU9FeGNlcHRpb24gfCBJbnRlcnJ1cHRlZEV4Y2VwdGlvbiBlKSB7CisJCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiB8IEludGVycnVwdGVkRXhjZXB0aW9uIGUpIHsKIAkJCQl0aHJvdyBuZXcgTWFuaWZlc3RFcnJvckV4Y2VwdGlvbihlKTsKIAkJCX0KIAkJfQpAQCAtNzIwLDExICs2MDksMTI5IEBAIHB1YmxpYyBSZXZDb21taXQgY2FsbCgpIHRocm93cyBHaXRBUElFeGNlcHRpb24gewogCQkJfQogCQkJcmV0dXJuIGdpdC5jb21taXQoKS5zZXRNZXNzYWdlKFJlcG9UZXh0LmdldCgpLnJlcG9Db21taXRNZXNzYWdlKQogCQkJCQkuY2FsbCgpOwotCQl9IGNhdGNoIChHaXRBUElFeGNlcHRpb24gfCBJT0V4Y2VwdGlvbiBlKSB7CisJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIGUpIHsKIAkJCXRocm93IG5ldyBNYW5pZmVzdEVycm9yRXhjZXB0aW9uKGUpOwogCQl9CiAJfQogCisJcHJpdmF0ZSB2b2lkIHByZXBhcmVJbmRleChMaXN0PFJlcG9Qcm9qZWN0PiBwcm9qZWN0cywgRGlyQ2FjaGUgaW5kZXgsCisJCQlPYmplY3RJbnNlcnRlciBpbnNlcnRlcikgdGhyb3dzIElPRXhjZXB0aW9uLCBHaXRBUElFeGNlcHRpb24geworCQlDb25maWcgY2ZnID0gbmV3IENvbmZpZygpOworCQlTdHJpbmdCdWlsZGVyIGF0dHJpYnV0ZXMgPSBuZXcgU3RyaW5nQnVpbGRlcigpOworCQlEaXJDYWNoZUJ1aWxkZXIgYnVpbGRlciA9IGluZGV4LmJ1aWxkZXIoKTsKKwkJZm9yIChSZXBvUHJvamVjdCBwcm9qIDogcHJvamVjdHMpIHsKKwkJCVN0cmluZyBuYW1lID0gcHJvai5nZXROYW1lKCk7CisJCQlTdHJpbmcgcGF0aCA9IHByb2ouZ2V0UGF0aCgpOworCQkJU3RyaW5nIHVybCA9IHByb2ouZ2V0VXJsKCk7CisJCQlPYmplY3RJZCBvYmplY3RJZDsKKwkJCWlmIChPYmplY3RJZC5pc0lkKHByb2ouZ2V0UmV2aXNpb24oKSkpIHsKKwkJCQlvYmplY3RJZCA9IE9iamVjdElkLmZyb21TdHJpbmcocHJvai5nZXRSZXZpc2lvbigpKTsKKwkJCX0gZWxzZSB7CisJCQkJb2JqZWN0SWQgPSBjYWxsYmFjay5zaGExKHVybCwgcHJvai5nZXRSZXZpc2lvbigpKTsKKwkJCQlpZiAob2JqZWN0SWQgPT0gbnVsbCAmJiAhaWdub3JlUmVtb3RlRmFpbHVyZXMpIHsKKwkJCQkJdGhyb3cgbmV3IFJlbW90ZVVuYXZhaWxhYmxlRXhjZXB0aW9uKHVybCk7CisJCQkJfQorCQkJCWlmIChyZWNvcmRSZW1vdGVCcmFuY2gpIHsKKwkJCQkJLy8gImJyYW5jaCIgZmllbGQgaXMgb25seSBmb3Igbm9uLXRhZyByZWZlcmVuY2VzLgorCQkJCQkvLyBLZWVwIHRhZ3MgaW4gInJlZiIgZmllbGQgYXMgaGludCBmb3Igb3RoZXIgdG9vbHMuCisJCQkJCVN0cmluZyBmaWVsZCA9IHByb2ouZ2V0UmV2aXNpb24oKS5zdGFydHNXaXRoKFJfVEFHUykgPyAicmVmIiAvLyROT04tTkxTLTEkCisJCQkJCQkJOiAiYnJhbmNoIjsgLy8kTk9OLU5MUy0xJAorCQkJCQljZmcuc2V0U3RyaW5nKCJzdWJtb2R1bGUiLCBuYW1lLCBmaWVsZCwgLy8kTk9OLU5MUy0xJAorCQkJCQkJCXByb2ouZ2V0UmV2aXNpb24oKSk7CisJCQkJfQorCisJCQkJaWYgKHJlY29yZFNoYWxsb3dTdWJtb2R1bGVzCisJCQkJCQkmJiBwcm9qLmdldFJlY29tbWVuZFNoYWxsb3coKSAhPSBudWxsKSB7CisJCQkJCS8vIFRoZSBzaGFsbG93IHJlY29tbWVuZGF0aW9uIGlzIGxvc2luZyBpbmZvcm1hdGlvbi4KKwkJCQkJLy8gQXMgdGhlIHJlcG8gbWFuaWZlc3RzIHN0b3JlcyB0aGUgcmVjb21tZW5kZWQKKwkJCQkJLy8gZGVwdGggaW4gdGhlICdjbG9uZS1kZXB0aCcgZmllbGQsIHdoaWxlCisJCQkJCS8vIGdpdCBjb3JlIG9ubHkgdXNlcyBhIGJpbmFyeSAnc2hhbGxvdyA9IHRydWUvZmFsc2UnCisJCQkJCS8vIGhpbnQsIHdlJ2xsIG1hcCBhbnkgZGVwdGggdG8gJ3NoYWxsb3cgPSB0cnVlJworCQkJCQljZmcuc2V0Qm9vbGVhbigic3VibW9kdWxlIiwgbmFtZSwgInNoYWxsb3ciLCAvLyROT04tTkxTLTEkIC8vJE5PTi1OTFMtMiQKKwkJCQkJCQl0cnVlKTsKKwkJCQl9CisJCQl9CisJCQlpZiAocmVjb3JkU3VibW9kdWxlTGFiZWxzKSB7CisJCQkJU3RyaW5nQnVpbGRlciByZWMgPSBuZXcgU3RyaW5nQnVpbGRlcigpOworCQkJCXJlYy5hcHBlbmQoIi8iKTsgLy8kTk9OLU5MUy0xJAorCQkJCXJlYy5hcHBlbmQocGF0aCk7CisJCQkJZm9yIChTdHJpbmcgZ3JvdXAgOiBwcm9qLmdldEdyb3VwcygpKSB7CisJCQkJCXJlYy5hcHBlbmQoIiAiKTsgLy8kTk9OLU5MUy0xJAorCQkJCQlyZWMuYXBwZW5kKGdyb3VwKTsKKwkJCQl9CisJCQkJcmVjLmFwcGVuZCgiXG4iKTsgLy8kTk9OLU5MUy0xJAorCQkJCWF0dHJpYnV0ZXMuYXBwZW5kKHJlYy50b1N0cmluZygpKTsKKwkJCX0KKworCQkJVVJJIHN1Ym1vZFVybCA9IFVSSS5jcmVhdGUodXJsKTsKKwkJCWlmICh0YXJnZXRVcmkgIT0gbnVsbCkgeworCQkJCXN1Ym1vZFVybCA9IHJlbGF0aXZpemUodGFyZ2V0VXJpLCBzdWJtb2RVcmwpOworCQkJfQorCQkJY2ZnLnNldFN0cmluZygic3VibW9kdWxlIiwgbmFtZSwgInBhdGgiLCBwYXRoKTsgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCisJCQljZmcuc2V0U3RyaW5nKCJzdWJtb2R1bGUiLCBuYW1lLCAidXJsIiwgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCisJCQkJCXN1Ym1vZFVybC50b1N0cmluZygpKTsKKworCQkJLy8gY3JlYXRlIGdpdGxpbmsKKwkJCWlmIChvYmplY3RJZCAhPSBudWxsKSB7CisJCQkJRGlyQ2FjaGVFbnRyeSBkY0VudHJ5ID0gbmV3IERpckNhY2hlRW50cnkocGF0aCk7CisJCQkJZGNFbnRyeS5zZXRPYmplY3RJZChvYmplY3RJZCk7CisJCQkJZGNFbnRyeS5zZXRGaWxlTW9kZShGaWxlTW9kZS5HSVRMSU5LKTsKKwkJCQlidWlsZGVyLmFkZChkY0VudHJ5KTsKKworCQkJCWZvciAoQ29weUZpbGUgY29weWZpbGUgOiBwcm9qLmdldENvcHlGaWxlcygpKSB7CisJCQkJCVJlbW90ZUZpbGUgcmYgPSBjYWxsYmFjay5yZWFkRmlsZVdpdGhNb2RlKHVybCwKKwkJCQkJCQlwcm9qLmdldFJldmlzaW9uKCksIGNvcHlmaWxlLnNyYyk7CisJCQkJCW9iamVjdElkID0gaW5zZXJ0ZXIuaW5zZXJ0KENvbnN0YW50cy5PQkpfQkxPQiwKKwkJCQkJCQlyZi5nZXRDb250ZW50cygpKTsKKwkJCQkJZGNFbnRyeSA9IG5ldyBEaXJDYWNoZUVudHJ5KGNvcHlmaWxlLmRlc3QpOworCQkJCQlkY0VudHJ5LnNldE9iamVjdElkKG9iamVjdElkKTsKKwkJCQkJZGNFbnRyeS5zZXRGaWxlTW9kZShyZi5nZXRGaWxlTW9kZSgpKTsKKwkJCQkJYnVpbGRlci5hZGQoZGNFbnRyeSk7CisJCQkJfQorCQkJCWZvciAoTGlua0ZpbGUgbGlua2ZpbGUgOiBwcm9qLmdldExpbmtGaWxlcygpKSB7CisJCQkJCVN0cmluZyBsaW5rOworCQkJCQlpZiAobGlua2ZpbGUuZGVzdC5jb250YWlucygiLyIpKSB7IC8vJE5PTi1OTFMtMSQKKwkJCQkJCWxpbmsgPSBGaWxlVXRpbHMucmVsYXRpdml6ZUdpdFBhdGgoCisJCQkJCQkJCWxpbmtmaWxlLmRlc3Quc3Vic3RyaW5nKDAsCisJCQkJCQkJCQkJbGlua2ZpbGUuZGVzdC5sYXN0SW5kZXhPZignLycpKSwKKwkJCQkJCQkJcHJvai5nZXRQYXRoKCkgKyAiLyIgKyBsaW5rZmlsZS5zcmMpOyAvLyROT04tTkxTLTEkCisJCQkJCX0gZWxzZSB7CisJCQkJCQlsaW5rID0gcHJvai5nZXRQYXRoKCkgKyAiLyIgKyBsaW5rZmlsZS5zcmM7IC8vJE5PTi1OTFMtMSQKKwkJCQkJfQorCisJCQkJCW9iamVjdElkID0gaW5zZXJ0ZXIuaW5zZXJ0KENvbnN0YW50cy5PQkpfQkxPQiwKKwkJCQkJCQlsaW5rLmdldEJ5dGVzKFVURl84KSk7CisJCQkJCWRjRW50cnkgPSBuZXcgRGlyQ2FjaGVFbnRyeShsaW5rZmlsZS5kZXN0KTsKKwkJCQkJZGNFbnRyeS5zZXRPYmplY3RJZChvYmplY3RJZCk7CisJCQkJCWRjRW50cnkuc2V0RmlsZU1vZGUoRmlsZU1vZGUuU1lNTElOSyk7CisJCQkJCWJ1aWxkZXIuYWRkKGRjRW50cnkpOworCQkJCX0KKwkJCX0KKwkJfQorCQlTdHJpbmcgY29udGVudCA9IGNmZy50b1RleHQoKTsKKworCQkvLyBjcmVhdGUgYSBuZXcgRGlyQ2FjaGVFbnRyeSBmb3IgLmdpdG1vZHVsZXMgZmlsZS4KKwkJRGlyQ2FjaGVFbnRyeSBkY0VudHJ5ID0gbmV3IERpckNhY2hlRW50cnkoCisJCQkJQ29uc3RhbnRzLkRPVF9HSVRfTU9EVUxFUyk7CisJCU9iamVjdElkIG9iamVjdElkID0gaW5zZXJ0ZXIuaW5zZXJ0KENvbnN0YW50cy5PQkpfQkxPQiwKKwkJCQljb250ZW50LmdldEJ5dGVzKFVURl84KSk7CisJCWRjRW50cnkuc2V0T2JqZWN0SWQob2JqZWN0SWQpOworCQlkY0VudHJ5LnNldEZpbGVNb2RlKEZpbGVNb2RlLlJFR1VMQVJfRklMRSk7CisJCWJ1aWxkZXIuYWRkKGRjRW50cnkpOworCisJCWlmIChyZWNvcmRTdWJtb2R1bGVMYWJlbHMpIHsKKwkJCS8vIGNyZWF0ZSBhIG5ldyBEaXJDYWNoZUVudHJ5IGZvciAuZ2l0YXR0cmlidXRlcyBmaWxlLgorCQkJRGlyQ2FjaGVFbnRyeSBkY0VudHJ5QXR0ciA9IG5ldyBEaXJDYWNoZUVudHJ5KAorCQkJCQlDb25zdGFudHMuRE9UX0dJVF9BVFRSSUJVVEVTKTsKKwkJCU9iamVjdElkIGF0dHJJZCA9IGluc2VydGVyLmluc2VydChDb25zdGFudHMuT0JKX0JMT0IsCisJCQkJCWF0dHJpYnV0ZXMudG9TdHJpbmcoKS5nZXRCeXRlcyhVVEZfOCkpOworCQkJZGNFbnRyeUF0dHIuc2V0T2JqZWN0SWQoYXR0cklkKTsKKwkJCWRjRW50cnlBdHRyLnNldEZpbGVNb2RlKEZpbGVNb2RlLlJFR1VMQVJfRklMRSk7CisJCQlidWlsZGVyLmFkZChkY0VudHJ5QXR0cik7CisJCX0KKworCQlidWlsZGVyLmZpbmlzaCgpOworCX0KIAogCXByaXZhdGUgUmV2Q29tbWl0IGNvbW1pdFRyZWVPbkN1cnJlbnRUaXAoT2JqZWN0SW5zZXJ0ZXIgaW5zZXJ0ZXIsCiAJCQlSZXZXYWxrIHJ3LCBPYmplY3RJZCB0cmVlSWQpCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2hvb2tzL0dpdEhvb2suamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaG9va3MvR2l0SG9vay5qYXZhCmluZGV4IGNlM2FkMjIuLmRiZmQ0MTUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaG9va3MvR2l0SG9vay5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaG9va3MvR2l0SG9vay5qYXZhCkBAIC0xMiwxMyArMTIsMTMgQEAKIGltcG9ydCBqYXZhLmlvLkJ5dGVBcnJheU91dHB1dFN0cmVhbTsKIGltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwogaW1wb3J0IGphdmEuaW8uT3V0cHV0U3RyZWFtOwotaW1wb3J0IGphdmEubmlvLmNoYXJzZXQuQ2hhcnNldDsKIGltcG9ydCBqYXZhLnV0aWwuY29uY3VycmVudC5DYWxsYWJsZTsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYXBpLmVycm9ycy5BYm9ydGVkQnlIb29rRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLlJlcG9zaXRvcnk7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5Qcm9jZXNzUmVzdWx0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5TeXN0ZW1SZWFkZXI7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLmlvLlRlZU91dHB1dFN0cmVhbTsKIAogLyoqCkBAIC0xNzEsNyArMTcxLDggQEAgcHJvdGVjdGVkIHZvaWQgZG9SdW4oKSB0aHJvd3MgQWJvcnRlZEJ5SG9va0V4Y2VwdGlvbiwgSU9FeGNlcHRpb24gewogCQkJCWdldFN0ZGluQXJncygpKTsKIAkJaWYgKHJlc3VsdC5pc0V4ZWN1dGVkV2l0aEVycm9yKCkpIHsKIAkJCWhhbmRsZUVycm9yKG5ldyBTdHJpbmcoZXJyb3JCeXRlQXJyYXkudG9CeXRlQXJyYXkoKSwKLQkJCQkJQ2hhcnNldC5kZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSksIHJlc3VsdCk7CisJCQkJCVN5c3RlbVJlYWRlci5nZXRJbnN0YW5jZSgpLmdldERlZmF1bHRDaGFyc2V0KCkubmFtZSgpKSwKKwkJCQkJcmVzdWx0KTsKIAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9KR2l0VGV4dC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9KR2l0VGV4dC5qYXZhCmluZGV4IDI4NjA0OTEuLjYxYTJlODcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvSkdpdFRleHQuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL0pHaXRUZXh0LmphdmEKQEAgLTQ0LDggKzQ0LDYgQEAgcHVibGljIHN0YXRpYyBKR2l0VGV4dCBnZXQoKSB7CiAJLyoqKi8gcHVibGljIFN0cmluZyBhcHBseUJpbmFyeUJhc2VPaWRXcm9uZzsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGFwcGx5QmluYXJ5T2lkVG9vU2hvcnQ7CiAJLyoqKi8gcHVibGljIFN0cmluZyBhcHBseUJpbmFyeVJlc3VsdE9pZFdyb25nOwotCS8qKiovIHB1YmxpYyBTdHJpbmcgYXBwbHlQYXRjaERlc3RJbnZhbGlkOwotCS8qKiovIHB1YmxpYyBTdHJpbmcgYXBwbHlQYXRjaFNvdXJjZUludmFsaWQ7CiAJLyoqKi8gcHVibGljIFN0cmluZyBhcHBseWluZ0NvbW1pdDsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGFyY2hpdmVGb3JtYXRBbHJlYWR5QWJzZW50OwogCS8qKiovIHB1YmxpYyBTdHJpbmcgYXJjaGl2ZUZvcm1hdEFscmVhZHlSZWdpc3RlcmVkOwpAQCAtNDc2LDYgKzQ3NCw3IEBAIHB1YmxpYyBzdGF0aWMgSkdpdFRleHQgZ2V0KCkgewogCS8qKiovIHB1YmxpYyBTdHJpbmcgbG9ja1N0cmVhbUNsb3NlZDsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGxvY2tTdHJlYW1NdWx0aXBsZTsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGxvZ0luY29uc2lzdGVudEZpbGV0aW1lRGlmZjsKKwkvKioqLyBwdWJsaWMgU3RyaW5nIGxvZ0ludmFsaWREZWZhdWx0Q2hhcnNldDsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGxvZ0xhcmdlckZpbGV0aW1lRGlmZjsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGxvZ1NtYWxsZXJGaWxldGltZTsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIGxvZ1hER0NvbmZpZ0hvbWVJbnZhbGlkOwpAQCAtNTgwLDggKzU3OSw2IEBAIHB1YmxpYyBzdGF0aWMgSkdpdFRleHQgZ2V0KCkgewogCS8qKiovIHB1YmxpYyBTdHJpbmcgcGFja1dyaXRlclN0YXRpc3RpY3M7CiAJLyoqKi8gcHVibGljIFN0cmluZyBwYW5pY0NhbnRSZW5hbWVJbmRleEZpbGU7CiAJLyoqKi8gcHVibGljIFN0cmluZyBwYXRjaEFwcGx5RXhjZXB0aW9uOwotCS8qKiovIHB1YmxpYyBTdHJpbmcgcGF0Y2hBcHBseUVycm9yV2l0aEh1bms7Ci0JLyoqKi8gcHVibGljIFN0cmluZyBwYXRjaEFwcGx5RXJyb3JXaXRob3V0SHVuazsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIHBhdGNoRm9ybWF0RXhjZXB0aW9uOwogCS8qKiovIHB1YmxpYyBTdHJpbmcgcGF0aE5vdENvbmZpZ3VyZWQ7CiAJLyoqKi8gcHVibGljIFN0cmluZyBwZWVsZWRMaW5lQmVmb3JlUmVmOwpAQCAtODMzLDYgKzgzMCw3IEBAIHB1YmxpYyBzdGF0aWMgSkdpdFRleHQgZ2V0KCkgewogCS8qKiovIHB1YmxpYyBTdHJpbmcgVVJJTm90U3VwcG9ydGVkOwogCS8qKiovIHB1YmxpYyBTdHJpbmcgdXNlckNvbmZpZ0ludmFsaWQ7CiAJLyoqKi8gcHVibGljIFN0cmluZyB2YWxpZGF0aW5nR2l0TW9kdWxlczsKKwkvKioqLyBwdWJsaWMgU3RyaW5nIHZhbHVlRXhjZWVkc1JhbmdlOwogCS8qKiovIHB1YmxpYyBTdHJpbmcgdmVyaWZ5U2lnbmF0dXJlQmFkOwogCS8qKiovIHB1YmxpYyBTdHJpbmcgdmVyaWZ5U2lnbmF0dXJlRXhwaXJlZDsKIAkvKioqLyBwdWJsaWMgU3RyaW5nIHZlcmlmeVNpZ25hdHVyZUdvb2Q7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZGZzL0Rmc0Jsb2NrQ2FjaGUuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzQmxvY2tDYWNoZS5qYXZhCmluZGV4IDA5MmQwMzUuLjU0YzUyN2MgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzQmxvY2tDYWNoZS5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzQmxvY2tDYWNoZS5qYXZhCkBAIC0zOSw5ICszOSwxMCBAQAogICogSXRzIHRvbyBleHBlbnNpdmUgZHVyaW5nIG9iamVjdCBhY2Nlc3MgdG8gYmUgYWNjdXJhdGUgd2l0aCBhIGxlYXN0IHJlY2VudGx5CiAgKiB1c2VkIChMUlUpIGFsZ29yaXRobS4gU3RyaWN0bHkgb3JkZXJpbmcgZXZlcnkgcmVhZCBpcyBhIGxvdCBvZiBvdmVyaGVhZCB0aGF0CiAgKiB0eXBpY2FsbHkgZG9lc24ndCB5aWVsZCBhIGNvcnJlc3BvbmRpbmcgYmVuZWZpdCB0byB0aGUgYXBwbGljYXRpb24uIFRoaXMKLSAqIGNhY2hlIGltcGxlbWVudHMgYSBjbG9jayByZXBsYWNlbWVudCBhbGdvcml0aG0sIGdpdmluZyBlYWNoIGJsb2NrIG9uZSBjaGFuY2UKLSAqIHRvIGhhdmUgYmVlbiBhY2Nlc3NlZCBkdXJpbmcgYSBzd2VlcCBvZiB0aGUgY2FjaGUgdG8gc2F2ZSBpdHNlbGYgZnJvbQotICogZXZpY3Rpb24uCisgKiBjYWNoZSBpbXBsZW1lbnRzIGEgY2xvY2sgcmVwbGFjZW1lbnQgYWxnb3JpdGhtLCBnaXZpbmcgZWFjaCBibG9jayBhdCBsZWFzdAorICogb25lIGNoYW5jZSB0byBoYXZlIGJlZW4gYWNjZXNzZWQgZHVyaW5nIGEgc3dlZXAgb2YgdGhlIGNhY2hlIHRvIHNhdmUgaXRzZWxmCisgKiBmcm9tIGV2aWN0aW9uLiBUaGUgbnVtYmVyIG9mIHN3aXBlIGNoYW5jZXMgaXMgY29uZmlndXJhYmxlIHBlciBwYWNrCisgKiBleHRlbnNpb24uCiAgKiA8cD4KICAqIEVudGl0aWVzIGNyZWF0ZWQgYnkgdGhlIGNhY2hlIGFyZSBoZWxkIHVuZGVyIGhhcmQgcmVmZXJlbmNlcywgcHJldmVudGluZyB0aGUKICAqIEphdmEgVk0gZnJvbSBjbGVhcmluZyBhbnl0aGluZy4gQmxvY2tzIGFyZSBkaXNjYXJkZWQgYnkgdGhlIHJlcGxhY2VtZW50CkBAIC0xMDMsOSArMTA0LDEwIEBAIHB1YmxpYyBzdGF0aWMgRGZzQmxvY2tDYWNoZSBnZXRJbnN0YW5jZSgpIHsKIAlwcml2YXRlIGZpbmFsIFJlZW50cmFudExvY2tbXSBsb2FkTG9ja3M7CiAKIAkvKioKLQkgKiBBIHNlcGFyYXRlIHBvb2wgb2YgbG9ja3MgdG8gcHJldmVudCBjb25jdXJyZW50IGxvYWRzIGZvciBzYW1lIGluZGV4IG9yIGJpdG1hcCBmcm9tIFBhY2tGaWxlLgorCSAqIEEgc2VwYXJhdGUgcG9vbCBvZiBsb2NrcyBwZXIgcGFjayBleHRlbnNpb24gdG8gcHJldmVudCBjb25jdXJyZW50IGxvYWRzCisJICogZm9yIHNhbWUgaW5kZXggb3IgYml0bWFwIGZyb20gUGFja0ZpbGUuCiAJICovCi0JcHJpdmF0ZSBmaW5hbCBSZWVudHJhbnRMb2NrW10gcmVmTG9ja3M7CisJcHJpdmF0ZSBmaW5hbCBSZWVudHJhbnRMb2NrW11bXSByZWZMb2NrczsKIAogCS8qKiBNYXhpbXVtIG51bWJlciBvZiBieXRlcyB0aGUgY2FjaGUgc2hvdWxkIGhvbGQuICovCiAJcHJpdmF0ZSBmaW5hbCBsb25nIG1heEJ5dGVzOwpAQCAtMTYxLDYgKzE2Myw5IEBAIHB1YmxpYyBzdGF0aWMgRGZzQmxvY2tDYWNoZSBnZXRJbnN0YW5jZSgpIHsKIAkvKiogQ3VycmVudCBwb3NpdGlvbiBvZiB0aGUgY2xvY2suICovCiAJcHJpdmF0ZSBSZWYgY2xvY2tIYW5kOwogCisJLyoqIExpbWl0cyBvZiBjYWNoZSBob3QgY291bnQgcGVyIHBhY2sgZmlsZSBleHRlbnNpb24uICovCisJcHJpdmF0ZSBmaW5hbCBpbnRbXSBjYWNoZUhvdExpbWl0cyA9IG5ldyBpbnRbUGFja0V4dC52YWx1ZXMoKS5sZW5ndGhdOworCiAJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCiAJcHJpdmF0ZSBEZnNCbG9ja0NhY2hlKERmc0Jsb2NrQ2FjaGVDb25maWcgY2ZnKSB7CiAJCXRhYmxlU2l6ZSA9IHRhYmxlU2l6ZShjZmcpOwpAQCAtMTY5LDEzICsxNzQsMTYgQEAgcHJpdmF0ZSBEZnNCbG9ja0NhY2hlKERmc0Jsb2NrQ2FjaGVDb25maWcgY2ZnKSB7CiAJCX0KIAogCQl0YWJsZSA9IG5ldyBBdG9taWNSZWZlcmVuY2VBcnJheTw+KHRhYmxlU2l6ZSk7Ci0JCWxvYWRMb2NrcyA9IG5ldyBSZWVudHJhbnRMb2NrW2NmZy5nZXRDb25jdXJyZW5jeUxldmVsKCldOworCQlpbnQgY29uY3VycmVuY3lMZXZlbCA9IGNmZy5nZXRDb25jdXJyZW5jeUxldmVsKCk7CisJCWxvYWRMb2NrcyA9IG5ldyBSZWVudHJhbnRMb2NrW2NvbmN1cnJlbmN5TGV2ZWxdOwogCQlmb3IgKGludCBpID0gMDsgaSA8IGxvYWRMb2Nrcy5sZW5ndGg7IGkrKykgewogCQkJbG9hZExvY2tzW2ldID0gbmV3IFJlZW50cmFudExvY2sodHJ1ZSAvKiBmYWlyICovKTsKIAkJfQotCQlyZWZMb2NrcyA9IG5ldyBSZWVudHJhbnRMb2NrW2NmZy5nZXRDb25jdXJyZW5jeUxldmVsKCldOwotCQlmb3IgKGludCBpID0gMDsgaSA8IHJlZkxvY2tzLmxlbmd0aDsgaSsrKSB7Ci0JCQlyZWZMb2Nrc1tpXSA9IG5ldyBSZWVudHJhbnRMb2NrKHRydWUgLyogZmFpciAqLyk7CisJCXJlZkxvY2tzID0gbmV3IFJlZW50cmFudExvY2tbUGFja0V4dC52YWx1ZXMoKS5sZW5ndGhdW2NvbmN1cnJlbmN5TGV2ZWxdOworCQlmb3IgKGludCBpID0gMDsgaSA8IFBhY2tFeHQudmFsdWVzKCkubGVuZ3RoOyBpKyspIHsKKwkJCWZvciAoaW50IGogPSAwOyBqIDwgY29uY3VycmVuY3lMZXZlbDsgKytqKSB7CisJCQkJcmVmTG9ja3NbaV1bal0gPSBuZXcgUmVlbnRyYW50TG9jayh0cnVlIC8qIGZhaXIgKi8pOworCQkJfQogCQl9CiAKIAkJbWF4Qnl0ZXMgPSBjZmcuZ2V0QmxvY2tMaW1pdCgpOwpAQCAtMTk2LDYgKzIwNCwxNSBAQCBwcml2YXRlIERmc0Jsb2NrQ2FjaGUoRGZzQmxvY2tDYWNoZUNvbmZpZyBjZmcpIHsKIAkJbGl2ZUJ5dGVzID0gbmV3IEF0b21pY1JlZmVyZW5jZTw+KG5ld0NvdW50ZXJzKCkpOwogCiAJCXJlZkxvY2tXYWl0VGltZSA9IGNmZy5nZXRSZWZMb2NrV2FpdFRpbWVDb25zdW1lcigpOworCisJCWZvciAoaW50IGkgPSAwOyBpIDwgUGFja0V4dC52YWx1ZXMoKS5sZW5ndGg7ICsraSkgeworCQkJSW50ZWdlciBsaW1pdCA9IGNmZy5nZXRDYWNoZUhvdE1hcCgpLmdldChQYWNrRXh0LnZhbHVlcygpW2ldKTsKKwkJCWlmIChsaW1pdCAhPSBudWxsICYmIGxpbWl0LmludFZhbHVlKCkgPiAwKSB7CisJCQkJY2FjaGVIb3RMaW1pdHNbaV0gPSBsaW1pdC5pbnRWYWx1ZSgpOworCQkJfSBlbHNlIHsKKwkJCQljYWNoZUhvdExpbWl0c1tpXSA9IERmc0Jsb2NrQ2FjaGVDb25maWcuREVGQVVMVF9DQUNIRV9IT1RfTUFYOworCQkJfQorCQl9CiAJfQogCiAJYm9vbGVhbiBzaG91bGRDb3B5VGhyb3VnaENhY2hlKGxvbmcgbGVuZ3RoKSB7CkBAIC0zOTQsNyArNDExLDcgQEAgRGZzQmxvY2sgZ2V0T3JMb2FkKEJsb2NrQmFzZWRGaWxlIGZpbGUsIGxvbmcgcG9zaXRpb24sIERmc1JlYWRlciBjdHgsCiAJCQl9CiAKIAkJCVJlZjxEZnNCbG9jaz4gcmVmID0gbmV3IFJlZjw+KGtleSwgcG9zaXRpb24sIHYuc2l6ZSgpLCB2KTsKLQkJCXJlZi5ob3QgPSB0cnVlOworCQkJcmVmLm1hcmtIb3R0ZXIoKTsKIAkJCWZvciAoOzspIHsKIAkJCQlIYXNoRW50cnkgbiA9IG5ldyBIYXNoRW50cnkoY2xlYW4oZTIpLCByZWYpOwogCQkJCWlmICh0YWJsZS5jb21wYXJlQW5kU2V0KHNsb3QsIGUyLCBuKSkgewpAQCAtNDI0LDEwICs0NDEsMTAgQEAgcHJpdmF0ZSB2b2lkIHJlc2VydmVTcGFjZShsb25nIHJlc2VydmUsIERmc1N0cmVhbUtleSBrZXkpIHsKIAkJCQlSZWYgcHJldiA9IGNsb2NrSGFuZDsKIAkJCQlSZWYgaGFuZCA9IGNsb2NrSGFuZC5uZXh0OwogCQkJCWRvIHsKLQkJCQkJaWYgKGhhbmQuaG90KSB7Ci0JCQkJCQkvLyBWYWx1ZSB3YXMgcmVjZW50bHkgdG91Y2hlZC4gQ2xlYXIKLQkJCQkJCS8vIGhvdCBhbmQgZ2l2ZSBpdCBhbm90aGVyIGNoYW5jZS4KLQkJCQkJCWhhbmQuaG90ID0gZmFsc2U7CisJCQkJCWlmIChoYW5kLmlzSG90KCkpIHsKKwkJCQkJCS8vIFZhbHVlIHdhcyByZWNlbnRseSB0b3VjaGVkLiBDYWNoZSBpcyBzdGlsbCBob3Qgc28KKwkJCQkJCS8vIGdpdmUgaXQgYW5vdGhlciBjaGFuY2UsIGJ1dCBjb29sIGl0IGRvd24gYSBiaXQuCisJCQkJCQloYW5kLm1hcmtDb2xkZXIoKTsKIAkJCQkJCXByZXYgPSBoYW5kOwogCQkJCQkJaGFuZCA9IGhhbmQubmV4dDsKIAkJCQkJCWNvbnRpbnVlOwpAQCAtNTI1LDcgKzU0Miw3IEBAIDxUPiBSZWY8VD4gZ2V0T3JMb2FkUmVmKAogCQkJfQogCQkJZ2V0U3RhdChzdGF0TWlzcywga2V5KS5pbmNyZW1lbnRBbmRHZXQoKTsKIAkJCXJlZiA9IGxvYWRlci5sb2FkKCk7Ci0JCQlyZWYuaG90ID0gdHJ1ZTsKKwkJCXJlZi5tYXJrSG90dGVyKCk7CiAJCQkvLyBSZXNlcnZlIGFmdGVyIGxvYWRpbmcgdG8gZ2V0IHRoZSBzaXplIG9mIHRoZSBvYmplY3QKIAkJCXJlc2VydmVTcGFjZShyZWYuc2l6ZSwga2V5KTsKIAkJCWZvciAoOzspIHsKQEAgLTU2OCw3ICs1ODUsNyBAQCA8VD4gUmVmPFQ+IHB1dChEZnNTdHJlYW1LZXkga2V5LCBsb25nIHBvcywgbG9uZyBzaXplLCBUIHYpIHsKIAkJCX0KIAogCQkJcmVmID0gbmV3IFJlZjw+KGtleSwgcG9zLCBzaXplLCB2KTsKLQkJCXJlZi5ob3QgPSB0cnVlOworCQkJcmVmLm1hcmtIb3R0ZXIoKTsKIAkJCWZvciAoOzspIHsKIAkJCQlIYXNoRW50cnkgbiA9IG5ldyBIYXNoRW50cnkoY2xlYW4oZTIpLCByZWYpOwogCQkJCWlmICh0YWJsZS5jb21wYXJlQW5kU2V0KHNsb3QsIGUyLCBuKSkgewpAQCAtNjIzLDcgKzY0MCw4IEBAIHByaXZhdGUgUmVlbnRyYW50TG9jayBsb2NrRm9yKERmc1N0cmVhbUtleSBrZXksIGxvbmcgcG9zaXRpb24pIHsKIAl9CiAKIAlwcml2YXRlIFJlZW50cmFudExvY2sgbG9ja0ZvclJlZihEZnNTdHJlYW1LZXkga2V5KSB7Ci0JCXJldHVybiByZWZMb2Nrc1soa2V5Lmhhc2ggPj4+IDEpICUgcmVmTG9ja3MubGVuZ3RoXTsKKwkJaW50IHNsb3QgPSAoa2V5Lmhhc2ggPj4+IDEpICUgcmVmTG9ja3Nba2V5LnBhY2tFeHRQb3NdLmxlbmd0aDsKKwkJcmV0dXJuIHJlZkxvY2tzW2tleS5wYWNrRXh0UG9zXVtzbG90XTsKIAl9CiAKIAlwcml2YXRlIHN0YXRpYyBBdG9taWNMb25nW10gbmV3Q291bnRlcnMoKSB7CkBAIC02OTIsNyArNzEwLDggQEAgc3RhdGljIGZpbmFsIGNsYXNzIFJlZjxUPiB7CiAJCWZpbmFsIGxvbmcgc2l6ZTsKIAkJdm9sYXRpbGUgVCB2YWx1ZTsKIAkJUmVmIG5leHQ7Ci0JCXZvbGF0aWxlIGJvb2xlYW4gaG90OworCisJCXByaXZhdGUgdm9sYXRpbGUgaW50IGhvdENvdW50OwogCiAJCVJlZihEZnNTdHJlYW1LZXkga2V5LCBsb25nIHBvc2l0aW9uLCBsb25nIHNpemUsIFQgdikgewogCQkJdGhpcy5rZXkgPSBrZXk7CkBAIC03MDQsNyArNzIzLDcgQEAgc3RhdGljIGZpbmFsIGNsYXNzIFJlZjxUPiB7CiAJCVQgZ2V0KCkgewogCQkJVCB2ID0gdmFsdWU7CiAJCQlpZiAodiAhPSBudWxsKSB7Ci0JCQkJaG90ID0gdHJ1ZTsKKwkJCQltYXJrSG90dGVyKCk7CiAJCQl9CiAJCQlyZXR1cm4gdjsKIAkJfQpAQCAtNzEyLDYgKzczMSwyMCBAQCBUIGdldCgpIHsKIAkJYm9vbGVhbiBoYXMoKSB7CiAJCQlyZXR1cm4gdmFsdWUgIT0gbnVsbDsKIAkJfQorCisJCXZvaWQgbWFya0hvdHRlcigpIHsKKwkJCWludCBjYXAgPSBEZnNCbG9ja0NhY2hlCisJCQkJCS5nZXRJbnN0YW5jZSgpLmNhY2hlSG90TGltaXRzW2tleS5wYWNrRXh0UG9zXTsKKwkJCWhvdENvdW50ID0gTWF0aC5taW4oY2FwLCBob3RDb3VudCArIDEpOworCQl9CisKKwkJdm9pZCBtYXJrQ29sZGVyKCkgeworCQkJaG90Q291bnQgPSBNYXRoLm1heCgwLCBob3RDb3VudCAtIDEpOworCQl9CisKKwkJYm9vbGVhbiBpc0hvdCgpIHsKKwkJCXJldHVybiBob3RDb3VudCA+IDA7CisJCX0KIAl9CiAKIAlARnVuY3Rpb25hbEludGVyZmFjZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNCbG9ja0NhY2hlQ29uZmlnLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZGZzL0Rmc0Jsb2NrQ2FjaGVDb25maWcuamF2YQppbmRleCA2ZTdhZDNlLi4yNzE2Zjc5IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZGZzL0Rmc0Jsb2NrQ2FjaGVDb25maWcuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZGZzL0Rmc0Jsb2NrQ2FjaGVDb25maWcuamF2YQpAQCAtMTgsOSArMTgsMTIgQEAKIGltcG9ydCBzdGF0aWMgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uZmlnQ29uc3RhbnRzLkNPTkZJR19LRVlfU1RSRUFNX1JBVElPOwogCiBpbXBvcnQgamF2YS50ZXh0Lk1lc3NhZ2VGb3JtYXQ7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5NYXA7CiBpbXBvcnQgamF2YS51dGlsLmZ1bmN0aW9uLkNvbnN1bWVyOwogCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucGFjay5QYWNrRXh0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbmZpZzsKIAogLyoqCkBAIC0zNCw2ICszNyw5IEBAIHB1YmxpYyBjbGFzcyBEZnNCbG9ja0NhY2hlQ29uZmlnIHsKIAkvKiogMTAyNCB7QGxpbmsgI0tCfSAobnVtYmVyIG9mIGJ5dGVzIGluIG9uZSBtZWJpYnl0ZS9tZWdhYnl0ZSkgKi8KIAlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBNQiA9IDEwMjQgKiBLQjsKIAorCS8qKiBEZWZhdWx0IG51bWJlciBvZiBtYXggY2FjaGUgaGl0cy4gKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBERUZBVUxUX0NBQ0hFX0hPVF9NQVggPSAxOworCiAJcHJpdmF0ZSBsb25nIGJsb2NrTGltaXQ7CiAJcHJpdmF0ZSBpbnQgYmxvY2tTaXplOwogCXByaXZhdGUgZG91YmxlIHN0cmVhbVJhdGlvOwpAQCAtNDEsNiArNDcsOCBAQCBwdWJsaWMgY2xhc3MgRGZzQmxvY2tDYWNoZUNvbmZpZyB7CiAKIAlwcml2YXRlIENvbnN1bWVyPExvbmc+IHJlZkxvY2s7CiAKKwlwcml2YXRlIE1hcDxQYWNrRXh0LCBJbnRlZ2VyPiBjYWNoZUhvdE1hcDsKKwogCS8qKgogCSAqIENyZWF0ZSBhIGRlZmF1bHQgY29uZmlndXJhdGlvbi4KIAkgKi8KQEAgLTQ5LDYgKzU3LDcgQEAgcHVibGljIERmc0Jsb2NrQ2FjaGVDb25maWcoKSB7CiAJCXNldEJsb2NrU2l6ZSg2NCAqIEtCKTsKIAkJc2V0U3RyZWFtUmF0aW8oMC4zMCk7CiAJCXNldENvbmN1cnJlbmN5TGV2ZWwoMzIpOworCQljYWNoZUhvdE1hcCA9IENvbGxlY3Rpb25zLmVtcHR5TWFwKCk7CiAJfQogCiAJLyoqCkBAIC0xODUsNiArMTk0LDI4IEBAIHB1YmxpYyBEZnNCbG9ja0NhY2hlQ29uZmlnIHNldFJlZkxvY2tXYWl0VGltZUNvbnN1bWVyKENvbnN1bWVyPExvbmc+IGMpIHsKIAl9CiAKIAkvKioKKwkgKiBHZXQgdGhlIG1hcCBvZiBob3QgY291bnQgcGVyIHBhY2sgZXh0ZW5zaW9uIGZvciB7QGNvZGUgRGZzQmxvY2tDYWNoZX0uCisJICoKKwkgKiBAcmV0dXJuIG1hcCBvZiBob3QgY291bnQgcGVyIHBhY2sgZXh0ZW5zaW9uIGZvciB7QGNvZGUgRGZzQmxvY2tDYWNoZX0uCisJICovCisJcHVibGljIE1hcDxQYWNrRXh0LCBJbnRlZ2VyPiBnZXRDYWNoZUhvdE1hcCgpIHsKKwkJcmV0dXJuIGNhY2hlSG90TWFwOworCX0KKworCS8qKgorCSAqIFNldCB0aGUgbWFwIG9mIGhvdCBjb3VudCBwZXIgcGFjayBleHRlbnNpb24gZm9yIHtAY29kZSBEZnNCbG9ja0NhY2hlfS4KKwkgKgorCSAqIEBwYXJhbSBjYWNoZUhvdE1hcAorCSAqICAgICAgICAgICAgbWFwIG9mIGhvdCBjb3VudCBwZXIgcGFjayBleHRlbnNpb24gZm9yIHtAY29kZSBEZnNCbG9ja0NhY2hlfS4KKwkgKiBAcmV0dXJuIHtAY29kZSB0aGlzfQorCSAqLworCXB1YmxpYyBEZnNCbG9ja0NhY2hlQ29uZmlnIHNldENhY2hlSG90TWFwKAorCQkJTWFwPFBhY2tFeHQsIEludGVnZXI+IGNhY2hlSG90TWFwKSB7CisJCXRoaXMuY2FjaGVIb3RNYXAgPSBDb2xsZWN0aW9ucy51bm1vZGlmaWFibGVNYXAoY2FjaGVIb3RNYXApOworCQlyZXR1cm4gdGhpczsKKwl9CisKKwkvKioKIAkgKiBVcGRhdGUgcHJvcGVydGllcyBieSBzZXR0aW5nIGZpZWxkcyBmcm9tIHRoZSBjb25maWd1cmF0aW9uLgogCSAqIDxwPgogCSAqIElmIGEgcHJvcGVydHkgaXMgbm90IGRlZmluZWQgaW4gdGhlIGNvbmZpZ3VyYXRpb24sIHRoZW4gaXQgaXMgbGVmdApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNQYWNrRmlsZS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNQYWNrRmlsZS5qYXZhCmluZGV4IDliZTNkZjMuLmJiNzZkZjEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzUGFja0ZpbGUuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZGZzL0Rmc1BhY2tGaWxlLmphdmEKQEAgLTU5LDEzICs1OSw2IEBAIHB1YmxpYyBmaW5hbCBjbGFzcyBEZnNQYWNrRmlsZSBleHRlbmRzIEJsb2NrQmFzZWRGaWxlIHsKIAlwcml2YXRlIHN0YXRpYyBmaW5hbCBpbnQgUkVDX1NJWkUgPSBDb25zdGFudHMuT0JKRUNUX0lEX0xFTkdUSCArIDg7CiAJcHJpdmF0ZSBzdGF0aWMgZmluYWwgbG9uZyBSRUZfUE9TSVRJT04gPSAwOwogCi0JLyoqCi0JICogTG9jayBmb3IgaW5pdGlhbGl6YXRpb24gb2Yge0BsaW5rICNpbmRleH0gYW5kIHtAbGluayAjY29ycnVwdE9iamVjdHN9LgotCSAqIDxwPgotCSAqIFRoaXMgbG9jayBlbnN1cmVzIG9ubHkgb25lIHRocmVhZCBjYW4gcGVyZm9ybSB0aGUgaW5pdGlhbGl6YXRpb24gd29yay4KLQkgKi8KLQlwcml2YXRlIGZpbmFsIE9iamVjdCBpbml0TG9jayA9IG5ldyBPYmplY3QoKTsKLQogCS8qKiBJbmRleCBtYXBwaW5nIHtAbGluayBPYmplY3RJZH0gdG8gcG9zaXRpb24gd2l0aGluIHRoZSBwYWNrIHN0cmVhbS4gKi8KIAlwcml2YXRlIHZvbGF0aWxlIFBhY2tJbmRleCBpbmRleDsKIApAQCAtODQsNiArNzcsOSBAQCBwdWJsaWMgZmluYWwgY2xhc3MgRGZzUGFja0ZpbGUgZXh0ZW5kcyBCbG9ja0Jhc2VkRmlsZSB7CiAJICovCiAJcHJpdmF0ZSB2b2xhdGlsZSBMb25nTGlzdCBjb3JydXB0T2JqZWN0czsKIAorCS8qKiBMb2NrIGZvciB7QGxpbmsgI2NvcnJ1cHRPYmplY3RzfS4gKi8KKwlwcml2YXRlIGZpbmFsIE9iamVjdCBjb3JydXB0T2JqZWN0c0xvY2sgPSBuZXcgT2JqZWN0KCk7CisKIAkvKioKIAkgKiBDb25zdHJ1Y3QgYSByZWFkZXIgZm9yIGFuIGV4aXN0aW5nLCBwYWNrZmlsZS4KIAkgKgpAQCAtMTU1LDM1ICsxNTEsMjYgQEAgcHJpdmF0ZSBQYWNrSW5kZXggaWR4KERmc1JlYWRlciBjdHgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAKIAkJUmVwb3NpdG9yeS5nZXRHbG9iYWxMaXN0ZW5lckxpc3QoKQogCQkJCS5kaXNwYXRjaChuZXcgQmVmb3JlRGZzUGFja0luZGV4TG9hZGVkRXZlbnQodGhpcykpOwotCi0JCXN5bmNocm9uaXplZCAoaW5pdExvY2spIHsKLQkJCWlmIChpbmRleCAhPSBudWxsKSB7Ci0JCQkJcmV0dXJuIGluZGV4OworCQl0cnkgeworCQkJRGZzU3RyZWFtS2V5IGlkeEtleSA9IGRlc2MuZ2V0U3RyZWFtS2V5KElOREVYKTsKKwkJCUF0b21pY0Jvb2xlYW4gY2FjaGVIaXQgPSBuZXcgQXRvbWljQm9vbGVhbih0cnVlKTsKKwkJCURmc0Jsb2NrQ2FjaGUuUmVmPFBhY2tJbmRleD4gaWR4cmVmID0gY2FjaGUuZ2V0T3JMb2FkUmVmKGlkeEtleSwKKwkJCQkJUkVGX1BPU0lUSU9OLCAoKSAtPiB7CisJCQkJCQljYWNoZUhpdC5zZXQoZmFsc2UpOworCQkJCQkJcmV0dXJuIGxvYWRQYWNrSW5kZXgoY3R4LCBpZHhLZXkpOworCQkJCQl9KTsKKwkJCWlmIChjYWNoZUhpdC5nZXQoKSkgeworCQkJCWN0eC5zdGF0cy5pZHhDYWNoZUhpdCsrOwogCQkJfQotCi0JCQl0cnkgewotCQkJCURmc1N0cmVhbUtleSBpZHhLZXkgPSBkZXNjLmdldFN0cmVhbUtleShJTkRFWCk7Ci0JCQkJQXRvbWljQm9vbGVhbiBjYWNoZUhpdCA9IG5ldyBBdG9taWNCb29sZWFuKHRydWUpOwotCQkJCURmc0Jsb2NrQ2FjaGUuUmVmPFBhY2tJbmRleD4gaWR4cmVmID0gY2FjaGUuZ2V0T3JMb2FkUmVmKAotCQkJCQkJaWR4S2V5LAotCQkJCQkJUkVGX1BPU0lUSU9OLAotCQkJCQkJKCkgLT4gewotCQkJCQkJCWNhY2hlSGl0LnNldChmYWxzZSk7Ci0JCQkJCQkJcmV0dXJuIGxvYWRQYWNrSW5kZXgoY3R4LCBpZHhLZXkpOwotCQkJCQkJfSk7Ci0JCQkJaWYgKGNhY2hlSGl0LmdldCgpKSB7Ci0JCQkJCWN0eC5zdGF0cy5pZHhDYWNoZUhpdCsrOwotCQkJCX0KLQkJCQlQYWNrSW5kZXggaWR4ID0gaWR4cmVmLmdldCgpOwotCQkJCWlmIChpbmRleCA9PSBudWxsICYmIGlkeCAhPSBudWxsKSB7Ci0JCQkJCWluZGV4ID0gaWR4OwotCQkJCX0KLQkJCQlyZXR1cm4gaW5kZXg7Ci0JCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7Ci0JCQkJaW52YWxpZCA9IHRydWU7Ci0JCQkJaW52YWxpZGF0aW5nQ2F1c2UgPSBlOwotCQkJCXRocm93IGU7CisJCQlQYWNrSW5kZXggaWR4ID0gaWR4cmVmLmdldCgpOworCQkJaWYgKGluZGV4ID09IG51bGwgJiYgaWR4ICE9IG51bGwpIHsKKwkJCQlpbmRleCA9IGlkeDsKIAkJCX0KKwkJCXJldHVybiBpbmRleDsKKwkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgeworCQkJaW52YWxpZCA9IHRydWU7CisJCQlpbnZhbGlkYXRpbmdDYXVzZSA9IGU7CisJCQl0aHJvdyBlOwogCQl9CiAJfQogCkBAIC0xOTEsNyArMTc4LDE3IEBAIGZpbmFsIGJvb2xlYW4gaXNHYXJiYWdlKCkgewogCQlyZXR1cm4gZGVzYy5nZXRQYWNrU291cmNlKCkgPT0gVU5SRUFDSEFCTEVfR0FSQkFHRTsKIAl9CiAKLQlQYWNrQml0bWFwSW5kZXggZ2V0Qml0bWFwSW5kZXgoRGZzUmVhZGVyIGN0eCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkvKioKKwkgKiBHZXQgdGhlIEJpdG1hcEluZGV4IGZvciB0aGlzIFBhY2tGaWxlLgorCSAqCisJICogQHBhcmFtIGN0eAorCSAqICAgICAgICAgICAgcmVhZGVyIGNvbnRleHQgdG8gc3VwcG9ydCByZWFkaW5nIGZyb20gdGhlIGJhY2tpbmcgc3RvcmUgaWYKKwkgKiAgICAgICAgICAgIHRoZSBpbmRleCBpcyBub3QgYWxyZWFkeSBsb2FkZWQgaW4gbWVtb3J5LgorCSAqIEByZXR1cm4gdGhlIEJpdG1hcEluZGV4LgorCSAqIEB0aHJvd3MgamF2YS5pby5JT0V4Y2VwdGlvbgorCSAqICAgICAgICAgICAgIHRoZSBiaXRtYXAgaW5kZXggaXMgbm90IGF2YWlsYWJsZSwgb3IgaXMgY29ycnVwdC4KKwkgKi8KKwlwdWJsaWMgUGFja0JpdG1hcEluZGV4IGdldEJpdG1hcEluZGV4KERmc1JlYWRlciBjdHgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCWlmIChpbnZhbGlkIHx8IGlzR2FyYmFnZSgpIHx8ICFkZXNjLmhhc0ZpbGVFeHQoQklUTUFQX0lOREVYKSkgewogCQkJcmV0dXJuIG51bGw7CiAJCX0KQEAgLTIwMCwzMSArMTk3LDIxIEBAIFBhY2tCaXRtYXBJbmRleCBnZXRCaXRtYXBJbmRleChEZnNSZWFkZXIgY3R4KSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQkJcmV0dXJuIGJpdG1hcEluZGV4OwogCQl9CiAKLQkJc3luY2hyb25pemVkIChpbml0TG9jaykgewotCQkJaWYgKGJpdG1hcEluZGV4ICE9IG51bGwpIHsKLQkJCQlyZXR1cm4gYml0bWFwSW5kZXg7Ci0JCQl9Ci0KLQkJCVBhY2tJbmRleCBpZHggPSBpZHgoY3R4KTsKLQkJCVBhY2tSZXZlcnNlSW5kZXggcmV2aWR4ID0gZ2V0UmV2ZXJzZUlkeChjdHgpOwotCQkJRGZzU3RyZWFtS2V5IGJpdG1hcEtleSA9IGRlc2MuZ2V0U3RyZWFtS2V5KEJJVE1BUF9JTkRFWCk7Ci0JCQlBdG9taWNCb29sZWFuIGNhY2hlSGl0ID0gbmV3IEF0b21pY0Jvb2xlYW4odHJ1ZSk7Ci0JCQlEZnNCbG9ja0NhY2hlLlJlZjxQYWNrQml0bWFwSW5kZXg+IGlkeHJlZiA9IGNhY2hlLmdldE9yTG9hZFJlZigKLQkJCQkJYml0bWFwS2V5LAotCQkJCQlSRUZfUE9TSVRJT04sCi0JCQkJCSgpIC0+IHsKLQkJCQkJCWNhY2hlSGl0LnNldChmYWxzZSk7Ci0JCQkJCQlyZXR1cm4gbG9hZEJpdG1hcEluZGV4KGN0eCwgYml0bWFwS2V5LCBpZHgsIHJldmlkeCk7Ci0JCQkJCX0pOwotCQkJaWYgKGNhY2hlSGl0LmdldCgpKSB7Ci0JCQkJY3R4LnN0YXRzLmJpdG1hcENhY2hlSGl0Kys7Ci0JCQl9Ci0JCQlQYWNrQml0bWFwSW5kZXggYm1pZHggPSBpZHhyZWYuZ2V0KCk7Ci0JCQlpZiAoYml0bWFwSW5kZXggPT0gbnVsbCAmJiBibWlkeCAhPSBudWxsKSB7Ci0JCQkJYml0bWFwSW5kZXggPSBibWlkeDsKLQkJCX0KLQkJCXJldHVybiBiaXRtYXBJbmRleDsKKwkJRGZzU3RyZWFtS2V5IGJpdG1hcEtleSA9IGRlc2MuZ2V0U3RyZWFtS2V5KEJJVE1BUF9JTkRFWCk7CisJCUF0b21pY0Jvb2xlYW4gY2FjaGVIaXQgPSBuZXcgQXRvbWljQm9vbGVhbih0cnVlKTsKKwkJRGZzQmxvY2tDYWNoZS5SZWY8UGFja0JpdG1hcEluZGV4PiBpZHhyZWYgPSBjYWNoZQorCQkJCS5nZXRPckxvYWRSZWYoYml0bWFwS2V5LCBSRUZfUE9TSVRJT04sICgpIC0+IHsKKwkJCQkJY2FjaGVIaXQuc2V0KGZhbHNlKTsKKwkJCQkJcmV0dXJuIGxvYWRCaXRtYXBJbmRleChjdHgsIGJpdG1hcEtleSk7CisJCQkJfSk7CisJCWlmIChjYWNoZUhpdC5nZXQoKSkgeworCQkJY3R4LnN0YXRzLmJpdG1hcENhY2hlSGl0Kys7CiAJCX0KKwkJUGFja0JpdG1hcEluZGV4IGJtaWR4ID0gaWR4cmVmLmdldCgpOworCQlpZiAoYml0bWFwSW5kZXggPT0gbnVsbCAmJiBibWlkeCAhPSBudWxsKSB7CisJCQliaXRtYXBJbmRleCA9IGJtaWR4OworCQl9CisJCXJldHVybiBiaXRtYXBJbmRleDsKIAl9CiAKIAlQYWNrUmV2ZXJzZUluZGV4IGdldFJldmVyc2VJZHgoRGZzUmVhZGVyIGN0eCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKQEAgLTIzMiwzMSArMjE5LDIzIEBAIFBhY2tSZXZlcnNlSW5kZXggZ2V0UmV2ZXJzZUlkeChEZnNSZWFkZXIgY3R4KSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQkJcmV0dXJuIHJldmVyc2VJbmRleDsKIAkJfQogCi0JCXN5bmNocm9uaXplZCAoaW5pdExvY2spIHsKLQkJCWlmIChyZXZlcnNlSW5kZXggIT0gbnVsbCkgewotCQkJCXJldHVybiByZXZlcnNlSW5kZXg7Ci0JCQl9Ci0KLQkJCVBhY2tJbmRleCBpZHggPSBpZHgoY3R4KTsKLQkJCURmc1N0cmVhbUtleSByZXZLZXkgPSBuZXcgRGZzU3RyZWFtS2V5LkZvclJldmVyc2VJbmRleCgKLQkJCQkJZGVzYy5nZXRTdHJlYW1LZXkoSU5ERVgpKTsKLQkJCUF0b21pY0Jvb2xlYW4gY2FjaGVIaXQgPSBuZXcgQXRvbWljQm9vbGVhbih0cnVlKTsKLQkJCURmc0Jsb2NrQ2FjaGUuUmVmPFBhY2tSZXZlcnNlSW5kZXg+IHJldnJlZiA9IGNhY2hlLmdldE9yTG9hZFJlZigKLQkJCQkJcmV2S2V5LAotCQkJCQlSRUZfUE9TSVRJT04sCi0JCQkJCSgpIC0+IHsKLQkJCQkJCWNhY2hlSGl0LnNldChmYWxzZSk7Ci0JCQkJCQlyZXR1cm4gbG9hZFJldmVyc2VJZHgoY3R4LCByZXZLZXksIGlkeCk7Ci0JCQkJCX0pOwotCQkJaWYgKGNhY2hlSGl0LmdldCgpKSB7Ci0JCQkJY3R4LnN0YXRzLnJpZHhDYWNoZUhpdCsrOwotCQkJfQotCQkJUGFja1JldmVyc2VJbmRleCByZXZpZHggPSByZXZyZWYuZ2V0KCk7Ci0JCQlpZiAocmV2ZXJzZUluZGV4ID09IG51bGwgJiYgcmV2aWR4ICE9IG51bGwpIHsKLQkJCQlyZXZlcnNlSW5kZXggPSByZXZpZHg7Ci0JCQl9Ci0JCQlyZXR1cm4gcmV2ZXJzZUluZGV4OworCQlQYWNrSW5kZXggaWR4ID0gaWR4KGN0eCk7CisJCURmc1N0cmVhbUtleSByZXZLZXkgPSBuZXcgRGZzU3RyZWFtS2V5LkZvclJldmVyc2VJbmRleCgKKwkJCQlkZXNjLmdldFN0cmVhbUtleShJTkRFWCkpOworCQlBdG9taWNCb29sZWFuIGNhY2hlSGl0ID0gbmV3IEF0b21pY0Jvb2xlYW4odHJ1ZSk7CisJCURmc0Jsb2NrQ2FjaGUuUmVmPFBhY2tSZXZlcnNlSW5kZXg+IHJldnJlZiA9IGNhY2hlLmdldE9yTG9hZFJlZihyZXZLZXksCisJCQkJUkVGX1BPU0lUSU9OLCAoKSAtPiB7CisJCQkJCWNhY2hlSGl0LnNldChmYWxzZSk7CisJCQkJCXJldHVybiBsb2FkUmV2ZXJzZUlkeChjdHgsIHJldktleSwgaWR4KTsKKwkJCQl9KTsKKwkJaWYgKGNhY2hlSGl0LmdldCgpKSB7CisJCQljdHguc3RhdHMucmlkeENhY2hlSGl0Kys7CiAJCX0KKwkJUGFja1JldmVyc2VJbmRleCByZXZpZHggPSByZXZyZWYuZ2V0KCk7CisJCWlmIChyZXZlcnNlSW5kZXggPT0gbnVsbCAmJiByZXZpZHggIT0gbnVsbCkgeworCQkJcmV2ZXJzZUluZGV4ID0gcmV2aWR4OworCQl9CisJCXJldHVybiByZXZlcnNlSW5kZXg7CiAJfQogCiAJLyoqCkBAIC00MzYsOCArNDE1LDcgQEAgdm9pZCBjb3B5QXNJcyhQYWNrT3V0cHV0U3RyZWFtIG91dCwgRGZzT2JqZWN0VG9QYWNrIHNyYywKIAkJdHJ5IHsKIAkJCXJlYWRGdWxseShzcmMub2Zmc2V0LCBidWYsIDAsIDIwLCBjdHgpOwogCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBpb0Vycm9yKSB7Ci0JCQl0aHJvdyBuZXcgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24oc3JjLAotCQkJCQlpb0Vycm9yKTsKKwkJCXRocm93IG5ldyBTdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbihpb0Vycm9yKTsKIAkJfQogCQlpbnQgYyA9IGJ1ZlswXSAmIDB4ZmY7CiAJCWZpbmFsIGludCB0eXBlQ29kZSA9IChjID4+IDQpICYgNzsKQEAgLTU1OCwxMiArNTM2LDExIEBAIHZvaWQgY29weUFzSXMoUGFja091dHB1dFN0cmVhbSBvdXQsIERmc09iamVjdFRvUGFjayBzcmMsCiAJCQkJCQkJTG9uZy52YWx1ZU9mKHNyYy5vZmZzZXQpLCBnZXRGaWxlTmFtZSgpKSwKIAkJCQkJZGF0YUZvcm1hdCk7CiAKLQkJCXRocm93IG5ldyBTdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbihzcmMsCisJCQl0aHJvdyBuZXcgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24oCiAJCQkJCWNvcnJ1cHRPYmplY3QpOwogCiAJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIGlvRXJyb3IpIHsKLQkJCXRocm93IG5ldyBTdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbihzcmMsCi0JCQkJCWlvRXJyb3IpOworCQkJdGhyb3cgbmV3IFN0b3JlZE9iamVjdFJlcHJlc2VudGF0aW9uTm90QXZhaWxhYmxlRXhjZXB0aW9uKGlvRXJyb3IpOwogCQl9CiAKIAkJaWYgKHF1aWNrQ29weSAhPSBudWxsKSB7CkBAIC0xMDAzLDcgKzk4MCw3IEBAIGJvb2xlYW4gaXNDb3JydXB0KGxvbmcgb2Zmc2V0KSB7CiAJcHJpdmF0ZSB2b2lkIHNldENvcnJ1cHQobG9uZyBvZmZzZXQpIHsKIAkJTG9uZ0xpc3QgbGlzdCA9IGNvcnJ1cHRPYmplY3RzOwogCQlpZiAobGlzdCA9PSBudWxsKSB7Ci0JCQlzeW5jaHJvbml6ZWQgKGluaXRMb2NrKSB7CisJCQlzeW5jaHJvbml6ZWQgKGNvcnJ1cHRPYmplY3RzTG9jaykgewogCQkJCWxpc3QgPSBjb3JydXB0T2JqZWN0czsKIAkJCQlpZiAobGlzdCA9PSBudWxsKSB7CiAJCQkJCWxpc3QgPSBuZXcgTG9uZ0xpc3QoKTsKQEAgLTEwNjYsMTEgKzEwNDMsOCBAQCBwcml2YXRlIERmc0Jsb2NrQ2FjaGUuUmVmPFBhY2tSZXZlcnNlSW5kZXg+IGxvYWRSZXZlcnNlSWR4KAogCQkJCXJldmlkeCk7CiAJfQogCi0JcHJpdmF0ZSBEZnNCbG9ja0NhY2hlLlJlZjxQYWNrQml0bWFwSW5kZXg+IGxvYWRCaXRtYXBJbmRleCgKLQkJCURmc1JlYWRlciBjdHgsCi0JCQlEZnNTdHJlYW1LZXkgYml0bWFwS2V5LAotCQkJUGFja0luZGV4IGlkeCwKLQkJCVBhY2tSZXZlcnNlSW5kZXggcmV2aWR4KSB0aHJvd3MgSU9FeGNlcHRpb24geworCXByaXZhdGUgRGZzQmxvY2tDYWNoZS5SZWY8UGFja0JpdG1hcEluZGV4PiBsb2FkQml0bWFwSW5kZXgoRGZzUmVhZGVyIGN0eCwKKwkJCURmc1N0cmVhbUtleSBiaXRtYXBLZXkpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCWN0eC5zdGF0cy5yZWFkQml0bWFwKys7CiAJCWxvbmcgc3RhcnQgPSBTeXN0ZW0ubmFub1RpbWUoKTsKIAkJdHJ5IChSZWFkYWJsZUNoYW5uZWwgcmMgPSBjdHguZGIub3BlbkZpbGUoZGVzYywgQklUTUFQX0lOREVYKSkgewpAQCAtMTA4Niw3ICsxMDYwLDggQEAgcHJpdmF0ZSBEZnNCbG9ja0NhY2hlLlJlZjxQYWNrQml0bWFwSW5kZXg+IGxvYWRCaXRtYXBJbmRleCgKIAkJCQkJYnMgPSB3YW50U2l6ZTsKIAkJCQl9CiAJCQkJaW4gPSBuZXcgQnVmZmVyZWRJbnB1dFN0cmVhbShpbiwgYnMpOwotCQkJCWJtaWR4ID0gUGFja0JpdG1hcEluZGV4LnJlYWQoaW4sIGlkeCwgcmV2aWR4KTsKKwkJCQlibWlkeCA9IFBhY2tCaXRtYXBJbmRleC5yZWFkKGluLCAoKSAtPiBpZHgoY3R4KSwKKwkJCQkJCSgpIC0+IGdldFJldmVyc2VJZHgoY3R4KSk7CiAJCQl9IGZpbmFsbHkgewogCQkJCXNpemUgPSByYy5wb3NpdGlvbigpOwogCQkJCWN0eC5zdGF0cy5yZWFkQml0bWFwSWR4Qnl0ZXMgKz0gc2l6ZTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzUGFja1BhcnNlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNQYWNrUGFyc2VyLmphdmEKaW5kZXggMjlkMTExMC4uZDhlMTkxYyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNQYWNrUGFyc2VyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNQYWNrUGFyc2VyLmphdmEKQEAgLTIzLDEwICsyMywxMCBAQAogaW1wb3J0IGphdmEudXRpbC56aXAuRGVmbGF0ZXI7CiAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZS5QYWNrSW5kZXg7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGUuUGFja0xvY2s7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQW55T2JqZWN0SWQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uc3RhbnRzOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLlByb2dyZXNzTW9uaXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5QYWNrTG9jazsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5QYWNrUGFyc2VyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlBhY2tlZE9iamVjdEluZm87CiAKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzUmVhZGVyLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZGZzL0Rmc1JlYWRlci5qYXZhCmluZGV4IGU4MDE4MDMuLmQwNDNiMDUgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9kZnMvRGZzUmVhZGVyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2Rmcy9EZnNSZWFkZXIuamF2YQpAQCAtMzcxLDcgKzM3MSw3IEBAIHB1YmxpYyA8VCBleHRlbmRzIE9iamVjdElkPiBBc3luY09iamVjdExvYWRlclF1ZXVlPFQ+IG9wZW4oCiAKIAkJZmluYWwgSXRlcmF0b3I8Rm91bmRPYmplY3Q8VD4+IGlkSXRyID0gb3JkZXIuaXRlcmF0b3IoKTsKIAkJZmluYWwgSU9FeGNlcHRpb24gZmluZEFsbEVycm9yID0gZXJyb3I7Ci0JCXJldHVybiBuZXcgQXN5bmNPYmplY3RMb2FkZXJRdWV1ZTxUPigpIHsKKwkJcmV0dXJuIG5ldyBBc3luY09iamVjdExvYWRlclF1ZXVlPD4oKSB7CiAJCQlwcml2YXRlIEZvdW5kT2JqZWN0PFQ+IGN1cjsKIAogCQkJQE92ZXJyaWRlCkBAIC00MzEsNyArNDMxLDcgQEAgcHVibGljIDxUIGV4dGVuZHMgT2JqZWN0SWQ+IEFzeW5jT2JqZWN0U2l6ZVF1ZXVlPFQ+IGdldE9iamVjdFNpemUoCiAKIAkJZmluYWwgSXRlcmF0b3I8Rm91bmRPYmplY3Q8VD4+IGlkSXRyID0gb3JkZXIuaXRlcmF0b3IoKTsKIAkJZmluYWwgSU9FeGNlcHRpb24gZmluZEFsbEVycm9yID0gZXJyb3I7Ci0JCXJldHVybiBuZXcgQXN5bmNPYmplY3RTaXplUXVldWU8VD4oKSB7CisJCXJldHVybiBuZXcgQXN5bmNPYmplY3RTaXplUXVldWU8PigpIHsKIAkJCXByaXZhdGUgRm91bmRPYmplY3Q8VD4gY3VyOwogCQkJcHJpdmF0ZSBsb25nIHN6OwogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9CaXRtYXBJbmRleEltcGwuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0JpdG1hcEluZGV4SW1wbC5qYXZhCmluZGV4IDBkM2EyYjQuLjlhYTE0MTcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0JpdG1hcEluZGV4SW1wbC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0JpdG1hcEluZGV4SW1wbC5qYXZhCkBAIC0zMjUsNyArMzI1LDcgQEAgcHVibGljIEl0ZXJhdG9yPEJpdG1hcE9iamVjdD4gaXRlcmF0b3IoKSB7CiAJCQlmaW5hbCBJbnRJdGVyYXRvciB0cmVlcyA9IG9mT2JqZWN0VHlwZShDb25zdGFudHMuT0JKX1RSRUUpOwogCQkJZmluYWwgSW50SXRlcmF0b3IgYmxvYnMgPSBvZk9iamVjdFR5cGUoQ29uc3RhbnRzLk9CSl9CTE9CKTsKIAkJCWZpbmFsIEludEl0ZXJhdG9yIHRhZ3MgPSBvZk9iamVjdFR5cGUoQ29uc3RhbnRzLk9CSl9UQUcpOwotCQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxCaXRtYXBPYmplY3Q+KCkgeworCQkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJCXByaXZhdGUgZmluYWwgQml0bWFwT2JqZWN0SW1wbCBvdXQgPSBuZXcgQml0bWFwT2JqZWN0SW1wbCgpOwogCQkJCXByaXZhdGUgaW50IHR5cGU7CiAJCQkJcHJpdmF0ZSBJbnRJdGVyYXRvciBjYWNoZWQgPSBkeW5hbWljOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvRmlsZVJlcG9zaXRvcnkuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0ZpbGVSZXBvc2l0b3J5LmphdmEKaW5kZXggOTBlZThkZS4uYjM3MTU1NyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvRmlsZVJlcG9zaXRvcnkuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9GaWxlUmVwb3NpdG9yeS5qYXZhCkBAIC00MjEsOSArNDIxLDExIEBAIHByaXZhdGUgRmlsZSBkZXNjcmlwdGlvbkZpbGUoKSB7CiAJICogYWR2ZXJ0aXNlIHRoYXQgaXQgc2FmZWx5IGhhcyB0aGF0IG90aGVyIHJlcG9zaXRvcnkncyByZWZlcmVuY2VzLCB3aXRob3V0CiAJICogZXhwb3NpbmcgYW55IG90aGVyIGRldGFpbHMgYWJvdXQgdGhlIG90aGVyIHJlcG9zaXRvcnkuIFRoaXMgbWF5IGhlbHAgYQogCSAqIGNsaWVudCB0cnlpbmcgdG8gcHVzaCBjaGFuZ2VzIGF2b2lkIHB1c2hpbmcgbW9yZSB0aGFuIGl0IG5lZWRzIHRvLgorCSAqCisJICogQHRocm93cyBJT0V4Y2VwdGlvbgogCSAqLwogCUBPdmVycmlkZQotCXB1YmxpYyBTZXQ8T2JqZWN0SWQ+IGdldEFkZGl0aW9uYWxIYXZlcygpIHsKKwlwdWJsaWMgU2V0PE9iamVjdElkPiBnZXRBZGRpdGlvbmFsSGF2ZXMoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlyZXR1cm4gZ2V0QWRkaXRpb25hbEhhdmVzKG51bGwpOwogCX0KIApAQCAtNDM5LDggKzQ0MSwxMSBAQCBwdWJsaWMgU2V0PE9iamVjdElkPiBnZXRBZGRpdGlvbmFsSGF2ZXMoKSB7CiAJICogICAgICAgICAgICBTZXQgb2YgQWx0ZXJuYXRlSGFuZGxlIElkcyBhbHJlYWR5IHNlZW4KIAkgKgogCSAqIEByZXR1cm4gdW5tb2RpZmlhYmxlIGNvbGxlY3Rpb24gb2Ygb3RoZXIga25vd24gb2JqZWN0cy4KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYgZ2V0dGluZyByZWZzIGhpdHMgYW4gSU8gZXJyb3IKIAkgKi8KLQlwcml2YXRlIFNldDxPYmplY3RJZD4gZ2V0QWRkaXRpb25hbEhhdmVzKFNldDxBbHRlcm5hdGVIYW5kbGUuSWQ+IHNraXBzKSB7CisJcHJpdmF0ZSBTZXQ8T2JqZWN0SWQ+IGdldEFkZGl0aW9uYWxIYXZlcyhTZXQ8QWx0ZXJuYXRlSGFuZGxlLklkPiBza2lwcykKKwkJCXRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCUhhc2hTZXQ8T2JqZWN0SWQ+IHIgPSBuZXcgSGFzaFNldDw+KCk7CiAJCXNraXBzID0gb2JqZWN0RGF0YWJhc2UuYWRkTWUoc2tpcHMpOwogCQlmb3IgKEFsdGVybmF0ZUhhbmRsZSBkIDogb2JqZWN0RGF0YWJhc2UubXlBbHRlcm5hdGVzKCkpIHsKQEAgLTQ0OCw3ICs0NTMsNyBAQCBwcml2YXRlIFNldDxPYmplY3RJZD4gZ2V0QWRkaXRpb25hbEhhdmVzKFNldDxBbHRlcm5hdGVIYW5kbGUuSWQ+IHNraXBzKSB7CiAJCQkJRmlsZVJlcG9zaXRvcnkgcmVwbzsKIAogCQkJCXJlcG8gPSAoKEFsdGVybmF0ZVJlcG9zaXRvcnkpIGQpLnJlcG9zaXRvcnk7Ci0JCQkJZm9yIChSZWYgcmVmIDogcmVwby5nZXRBbGxSZWZzKCkudmFsdWVzKCkpIHsKKwkJCQlmb3IgKFJlZiByZWYgOiByZXBvLmdldFJlZkRhdGFiYXNlKCkuZ2V0UmVmcygpKSB7CiAJCQkJCWlmIChyZWYuZ2V0T2JqZWN0SWQoKSAhPSBudWxsKQogCQkJCQkJci5hZGQocmVmLmdldE9iamVjdElkKCkpOwogCQkJCQlpZiAocmVmLmdldFBlZWxlZE9iamVjdElkKCkgIT0gbnVsbCkKQEAgLTU5Niw2ICs2MDEsNyBAQCBwcml2YXRlIGJvb2xlYW4gc2hvdWxkQXV0b0RldGFjaCgpIHsKIAl9CiAKIAkvKioge0Bpbmhlcml0RG9jfSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJGdXR1cmVSZXR1cm5WYWx1ZUlnbm9yZWQiKQogCUBPdmVycmlkZQogCXB1YmxpYyB2b2lkIGF1dG9HQyhQcm9ncmVzc01vbml0b3IgbW9uaXRvcikgewogCQlHQyBnYyA9IG5ldyBHQyh0aGlzKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0dDLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9HQy5qYXZhCmluZGV4IGM4ZGQ3MWMuLjc5OWQwNTggMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL0dDLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvR0MuamF2YQpAQCAtNTQsOCArNTQsOSBAQAogaW1wb3J0IGphdmEudXRpbC5PcHRpb25hbDsKIGltcG9ydCBqYXZhLnV0aWwuU2V0OwogaW1wb3J0IGphdmEudXRpbC5UcmVlTWFwOwotaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LkNhbGxhYmxlOworaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LkNvbXBsZXRhYmxlRnV0dXJlOwogaW1wb3J0IGphdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9yU2VydmljZTsKK2ltcG9ydCBqYXZhLnV0aWwuZnVuY3Rpb24uU3VwcGxpZXI7CiBpbXBvcnQgamF2YS51dGlsLnJlZ2V4LlBhdHRlcm47CiBpbXBvcnQgamF2YS51dGlsLnN0cmVhbS5Db2xsZWN0b3JzOwogaW1wb3J0IGphdmEudXRpbC5zdHJlYW0uU3RyZWFtOwpAQCAtMjI3LDE5ICsyMjgsMTggQEAgcHVibGljIEdDKEZpbGVSZXBvc2l0b3J5IHJlcG8pIHsKIAkgKiAgICAgICAgICAgICBJZiB0aGUgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXIgImdjLnBydW5lZXhwaXJlIiBjb3VsZG4ndCBiZQogCSAqICAgICAgICAgICAgIHBhcnNlZAogCSAqLwotCS8vIFRPRE8obXMpOiBjaGFuZ2Ugc2lnbmF0dXJlIGFuZCByZXR1cm4gRnV0dXJlPENvbGxlY3Rpb248UGFjaz4+Ci0JQFN1cHByZXNzV2FybmluZ3MoIkZ1dHVyZVJldHVyblZhbHVlSWdub3JlZCIpCi0JcHVibGljIENvbGxlY3Rpb248UGFjaz4gZ2MoKSB0aHJvd3MgSU9FeGNlcHRpb24sIFBhcnNlRXhjZXB0aW9uIHsKKwlwdWJsaWMgQ29tcGxldGFibGVGdXR1cmU8Q29sbGVjdGlvbjxQYWNrPj4gZ2MoKQorCQkJdGhyb3dzIElPRXhjZXB0aW9uLCBQYXJzZUV4Y2VwdGlvbiB7CiAJCWlmICghYmFja2dyb3VuZCkgewotCQkJcmV0dXJuIGRvR2MoKTsKKwkJCXJldHVybiBDb21wbGV0YWJsZUZ1dHVyZS5jb21wbGV0ZWRGdXR1cmUoZG9HYygpKTsKIAkJfQogCQlmaW5hbCBHY0xvZyBnY0xvZyA9IG5ldyBHY0xvZyhyZXBvKTsKIAkJaWYgKCFnY0xvZy5sb2NrKCkpIHsKIAkJCS8vIHRoZXJlIGlzIGFscmVhZHkgYSBiYWNrZ3JvdW5kIGdjIHJ1bm5pbmcKLQkJCXJldHVybiBDb2xsZWN0aW9ucy5lbXB0eUxpc3QoKTsKKwkJCXJldHVybiBDb21wbGV0YWJsZUZ1dHVyZS5jb21wbGV0ZWRGdXR1cmUoQ29sbGVjdGlvbnMuZW1wdHlMaXN0KCkpOwogCQl9CiAKLQkJQ2FsbGFibGU8Q29sbGVjdGlvbjxQYWNrPj4gZ2NUYXNrID0gKCkgLT4geworCQlTdXBwbGllcjxDb2xsZWN0aW9uPFBhY2s+PiBnY1Rhc2sgPSAoKSAtPiB7CiAJCQl0cnkgewogCQkJCUNvbGxlY3Rpb248UGFjaz4gbmV3UGFja3MgPSBkb0djKCk7CiAJCQkJaWYgKGF1dG9tYXRpYyAmJiB0b29NYW55TG9vc2VPYmplY3RzKCkpIHsKQEAgLTI2NCw5ICsyNjQsNyBAQCBwdWJsaWMgQ29sbGVjdGlvbjxQYWNrPiBnYygpIHRocm93cyBJT0V4Y2VwdGlvbiwgUGFyc2VFeGNlcHRpb24gewogCQkJfQogCQkJcmV0dXJuIENvbGxlY3Rpb25zLmVtcHR5TGlzdCgpOwogCQl9OwotCQkvLyBUT0RPKG1zKTogY2hhbmdlIHNpZ25hdHVyZSBhbmQgcmV0dXJuIHRoZSBGdXR1cmUKLQkJZXhlY3V0b3IoKS5zdWJtaXQoZ2NUYXNrKTsKLQkJcmV0dXJuIENvbGxlY3Rpb25zLmVtcHR5TGlzdCgpOworCQlyZXR1cm4gQ29tcGxldGFibGVGdXR1cmUuc3VwcGx5QXN5bmMoZ2NUYXNrLCBleGVjdXRvcigpKTsKIAl9CiAKIAlwcml2YXRlIEV4ZWN1dG9yU2VydmljZSBleGVjdXRvcigpIHsKQEAgLTE1NzksNyArMTU3Nyw4IEBAIHByaXZhdGUgdm9pZCBhZGRSZXBhY2tBbGxPcHRpb24oKSB7CiAJfQogCiAJLyoqCi0JICogQHJldHVybiB7QGNvZGUgdHJ1ZX0gaWYgbnVtYmVyIG9mIHBhY2tzID4gZ2MuYXV0b3BhY2tsaW1pdCAoZGVmYXVsdCA1MCkKKwkgKiBAcmV0dXJuIHtAY29kZSB0cnVlfSBpZiBudW1iZXIgb2YgcGFja3MgJmd0OyBnYy5hdXRvcGFja2xpbWl0IChkZWZhdWx0CisJICogICAgICAgICA1MCkKIAkgKi8KIAlib29sZWFuIHRvb01hbnlQYWNrcygpIHsKIAkJaW50IGF1dG9wYWNrbGltaXQgPSByZXBvLmdldENvbmZpZygpLmdldEludCgKQEAgLTE1OTgsNyArMTU5Nyw4IEBAIGJvb2xlYW4gdG9vTWFueVBhY2tzKCkgewogCSAqIFF1aWNrbHkgZXN0aW1hdGUgbnVtYmVyIG9mIGxvb3NlIG9iamVjdHMsIFNIQTEgaXMgZGlzdHJpYnV0ZWQgZXZlbmx5IHNvCiAJICogY291bnRpbmcgb2JqZWN0cyBpbiBvbmUgZGlyZWN0b3J5IChidWNrZXQgMTcpIGlzIHN1ZmZpY2llbnQKIAkgKgotCSAqIEByZXR1cm4ge0Bjb2RlIHRydWV9IGlmIG51bWJlciBvZiBsb29zZSBvYmplY3RzID4gZ2MuYXV0byAoZGVmYXVsdCA2NzAwKQorCSAqIEByZXR1cm4ge0Bjb2RlIHRydWV9IGlmIG51bWJlciBvZiBsb29zZSBvYmplY3RzICZndDsgZ2MuYXV0byAoZGVmYXVsdAorCSAqICAgICAgICAgNjcwMCkKIAkgKi8KIAlib29sZWFuIHRvb01hbnlMb29zZU9iamVjdHMoKSB7CiAJCWludCBhdXRvID0gZ2V0TG9vc2VPYmplY3RMaW1pdCgpOwpAQCAtMTczNSwxNyArMTczNSw3IEBAIHByaXZhdGUgU3RyaW5nIGdldFByb2NEZXNjKCkgewogCQl9CiAKIAkJcHJpdmF0ZSBsb25nIGdldFBJRCgpIHsKLQkJCVN0cmluZyBwcm9jZXNzTmFtZSA9IGphdmEubGFuZy5tYW5hZ2VtZW50Lk1hbmFnZW1lbnRGYWN0b3J5Ci0JCQkJCS5nZXRSdW50aW1lTVhCZWFuKCkuZ2V0TmFtZSgpOwotCQkJaWYgKHByb2Nlc3NOYW1lICE9IG51bGwgJiYgcHJvY2Vzc05hbWUubGVuZ3RoKCkgPiAwKSB7Ci0JCQkJdHJ5IHsKLQkJCQkJcmV0dXJuIExvbmcucGFyc2VMb25nKHByb2Nlc3NOYW1lLnNwbGl0KCJAIilbMF0pOyAvLyROT04tTkxTLTEkCi0JCQkJfSBjYXRjaCAoRXhjZXB0aW9uIGUpIHsKLQkJCQkJcmV0dXJuIDA7Ci0JCQkJfQotCQkJfQotCi0JCQlyZXR1cm4gMDsKKwkJCXJldHVybiBQcm9jZXNzSGFuZGxlLmN1cnJlbnQoKS5waWQoKTsKIAkJfQogCiAJCXByaXZhdGUgU3RyaW5nIGdldEhvc3ROYW1lKCkgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvT2JqZWN0RGlyZWN0b3J5UGFja1BhcnNlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvT2JqZWN0RGlyZWN0b3J5UGFja1BhcnNlci5qYXZhCmluZGV4IDFkMDVmMzMuLjU1YjI2NDYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL09iamVjdERpcmVjdG9yeVBhY2tQYXJzZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9PYmplY3REaXJlY3RvcnlQYWNrUGFyc2VyLmphdmEKQEAgLTM0LDYgKzM0LDcgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5PYmplY3RJZDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Qcm9ncmVzc01vbml0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5zdG9yYWdlLnBhY2suUGFja0NvbmZpZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5QYWNrTG9jazsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5QYWNrUGFyc2VyOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0LlBhY2tlZE9iamVjdEluZm87CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZpbGVVdGlsczsKQEAgLTQzMSw3ICs0MzIsNyBAQCBwcml2YXRlIFBhY2tMb2NrIHJlbmFtZUFuZE9wZW5QYWNrKFN0cmluZyBsb2NrTWVzc2FnZSkKIAkJRmlsZSBwYWNrRGlyID0gbmV3IEZpbGUoZGIuZ2V0RGlyZWN0b3J5KCksICJwYWNrIik7IC8vJE5PTi1OTFMtMSQKIAkJUGFja0ZpbGUgZmluYWxQYWNrID0gbmV3IFBhY2tGaWxlKHBhY2tEaXIsIGlkLCBQYWNrRXh0LlBBQ0spOwogCQlQYWNrRmlsZSBmaW5hbElkeCA9IGZpbmFsUGFjay5jcmVhdGUoUGFja0V4dC5JTkRFWCk7Ci0JCWZpbmFsIFBhY2tMb2NrIGtlZXAgPSBuZXcgUGFja0xvY2soZmluYWxQYWNrLCBkYi5nZXRGUygpKTsKKwkJZmluYWwgUGFja0xvY2tJbXBsIGtlZXAgPSBuZXcgUGFja0xvY2tJbXBsKGZpbmFsUGFjaywgZGIuZ2V0RlMoKSk7CiAKIAkJaWYgKCFwYWNrRGlyLmV4aXN0cygpICYmICFwYWNrRGlyLm1rZGlyKCkgJiYgIXBhY2tEaXIuZXhpc3RzKCkpIHsKIAkJCS8vIFRoZSBvYmplY3RzL3BhY2sgZGlyZWN0b3J5IGlzbid0IHByZXNlbnQsIGFuZCB3ZSBhcmUgdW5hYmxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrLmphdmEKaW5kZXggNWVmZDRjNS4uNmU3NDEzNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFjay5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2suamF2YQpAQCAtNTAsNyArNTAsNiBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLlVuc3VwcG9ydGVkUGFja1ZlcnNpb25FeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucGFjay5CaW5hcnlEZWx0YTsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucGFjay5PYmplY3RUb1BhY2s7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLnBhY2suUGFja091dHB1dFN0cmVhbTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5BYmJyZXZpYXRlZE9iamVjdElkOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkFueU9iamVjdElkOwpAQCAtMzg0LDcgKzM4Myw3IEBAIHZvaWQgY29weVBhY2tBc0lzKFBhY2tPdXRwdXRTdHJlYW0gb3V0LCBXaW5kb3dDdXJzb3IgY3VycykKIAlmaW5hbCB2b2lkIGNvcHlBc0lzKFBhY2tPdXRwdXRTdHJlYW0gb3V0LCBMb2NhbE9iamVjdFRvUGFjayBzcmMsCiAJCQlib29sZWFuIHZhbGlkYXRlLCBXaW5kb3dDdXJzb3IgY3VycykgdGhyb3dzIElPRXhjZXB0aW9uLAogCQkJU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24gewotCQliZWdpbkNvcHlBc0lzKHNyYyk7CisJCWJlZ2luQ29weUFzSXMoKTsKIAkJdHJ5IHsKIAkJCWNvcHlBc0lzMihvdXQsIHNyYywgdmFsaWRhdGUsIGN1cnMpOwogCQl9IGZpbmFsbHkgewpAQCAtNTIxLDEyICs1MjAsMTEgQEAgcHJpdmF0ZSB2b2lkIGNvcHlBc0lzMihQYWNrT3V0cHV0U3RyZWFtIG91dCwgTG9jYWxPYmplY3RUb1BhY2sgc3JjLAogCQkJCQkJCUxvbmcudmFsdWVPZihzcmMub2Zmc2V0KSwgZ2V0UGFja0ZpbGUoKSksCiAJCQkJCWRhdGFGb3JtYXQpOwogCi0JCQl0aHJvdyBuZXcgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24oc3JjLAorCQkJdGhyb3cgbmV3IFN0b3JlZE9iamVjdFJlcHJlc2VudGF0aW9uTm90QXZhaWxhYmxlRXhjZXB0aW9uKAogCQkJCQljb3JydXB0T2JqZWN0KTsKIAogCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBpb0Vycm9yKSB7Ci0JCQl0aHJvdyBuZXcgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24oc3JjLAotCQkJCQlpb0Vycm9yKTsKKwkJCXRocm93IG5ldyBTdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbihpb0Vycm9yKTsKIAkJfQogCiAJCWlmIChxdWlja0NvcHkgIT0gbnVsbCkgewpAQCAtNjA1LDEzICs2MDMsMTMgQEAgcHJpdmF0ZSB2b2lkIHJlYWRGdWxseShmaW5hbCBsb25nIHBvc2l0aW9uLCBmaW5hbCBieXRlW10gZHN0YnVmLAogCQkJdGhyb3cgbmV3IEVPRkV4Y2VwdGlvbigpOwogCX0KIAotCXByaXZhdGUgc3luY2hyb25pemVkIHZvaWQgYmVnaW5Db3B5QXNJcyhPYmplY3RUb1BhY2sgb3RwKQorCXByaXZhdGUgc3luY2hyb25pemVkIHZvaWQgYmVnaW5Db3B5QXNJcygpCiAJCQl0aHJvd3MgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24gewogCQlpZiAoKythY3RpdmVDb3B5UmF3RGF0YSA9PSAxICYmIGFjdGl2ZVdpbmRvd3MgPT0gMCkgewogCQkJdHJ5IHsKIAkJCQlkb09wZW4oKTsKIAkJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIHRoaXNQYWNrTm90VmFsaWQpIHsKLQkJCQl0aHJvdyBuZXcgU3RvcmVkT2JqZWN0UmVwcmVzZW50YXRpb25Ob3RBdmFpbGFibGVFeGNlcHRpb24ob3RwLAorCQkJCXRocm93IG5ldyBTdG9yZWRPYmplY3RSZXByZXNlbnRhdGlvbk5vdEF2YWlsYWJsZUV4Y2VwdGlvbigKIAkJCQkJCXRoaXNQYWNrTm90VmFsaWQpOwogCQkJfQogCQl9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrQml0bWFwSW5kZXguamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tCaXRtYXBJbmRleC5qYXZhCmluZGV4IGJlYjUxZGMuLjg0MDFmMDcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tCaXRtYXBJbmRleC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tCaXRtYXBJbmRleC5qYXZhCkBAIC01NywxMSArNTcsMTAgQEAgcHVibGljIGFic3RyYWN0IGNsYXNzIFBhY2tCaXRtYXBJbmRleCB7CiAJICogQHRocm93cyBDb3JydXB0T2JqZWN0RXhjZXB0aW9uCiAJICogICAgICAgICAgICAgdGhlIHN0cmVhbSBkb2VzIG5vdCBjb250YWluIGEgdmFsaWQgcGFjayBiaXRtYXAgaW5kZXguCiAJICovCi0JcHVibGljIHN0YXRpYyBQYWNrQml0bWFwSW5kZXggb3BlbigKLQkJCUZpbGUgaWR4RmlsZSwgUGFja0luZGV4IHBhY2tJbmRleCwgUGFja1JldmVyc2VJbmRleCByZXZlcnNlSW5kZXgpCisJcHVibGljIHN0YXRpYyBQYWNrQml0bWFwSW5kZXggb3BlbihGaWxlIGlkeEZpbGUsIFBhY2tJbmRleCBwYWNrSW5kZXgsCisJCQlQYWNrUmV2ZXJzZUluZGV4IHJldmVyc2VJbmRleCkKIAkJCXRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCXRyeSAoU2lsZW50RmlsZUlucHV0U3RyZWFtIGZkID0gbmV3IFNpbGVudEZpbGVJbnB1dFN0cmVhbSgKLQkJCQlpZHhGaWxlKSkgeworCQl0cnkgKFNpbGVudEZpbGVJbnB1dFN0cmVhbSBmZCA9IG5ldyBTaWxlbnRGaWxlSW5wdXRTdHJlYW0oaWR4RmlsZSkpIHsKIAkJCXRyeSB7CiAJCQkJcmV0dXJuIHJlYWQoZmQsIHBhY2tJbmRleCwgcmV2ZXJzZUluZGV4KTsKIAkJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIGlvZSkgewpAQCAtOTQsMTAgKzkzLDM5IEBAIHB1YmxpYyBzdGF0aWMgUGFja0JpdG1hcEluZGV4IG9wZW4oCiAJICogQHRocm93cyBDb3JydXB0T2JqZWN0RXhjZXB0aW9uCiAJICogICAgICAgICAgICAgdGhlIHN0cmVhbSBkb2VzIG5vdCBjb250YWluIGEgdmFsaWQgcGFjayBiaXRtYXAgaW5kZXguCiAJICovCi0JcHVibGljIHN0YXRpYyBQYWNrQml0bWFwSW5kZXggcmVhZCgKLQkJCUlucHV0U3RyZWFtIGZkLCBQYWNrSW5kZXggcGFja0luZGV4LCBQYWNrUmV2ZXJzZUluZGV4IHJldmVyc2VJbmRleCkKKwlwdWJsaWMgc3RhdGljIFBhY2tCaXRtYXBJbmRleCByZWFkKElucHV0U3RyZWFtIGZkLCBQYWNrSW5kZXggcGFja0luZGV4LAorCQkJUGFja1JldmVyc2VJbmRleCByZXZlcnNlSW5kZXgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCXJldHVybiBuZXcgUGFja0JpdG1hcEluZGV4VjEoZmQsICgpIC0+IHBhY2tJbmRleCwgKCkgLT4gcmV2ZXJzZUluZGV4KTsKKwl9CisKKwkvKioKKwkgKiBSZWFkIGFuIGV4aXN0aW5nIHBhY2sgYml0bWFwIGluZGV4IGZpbGUgZnJvbSBhIGJ1ZmZlcmVkIHN0cmVhbS4KKwkgKiA8cD4KKwkgKiBUaGUgZm9ybWF0IG9mIHRoZSBmaWxlIHdpbGwgYmUgYXV0b21hdGljYWxseSBkZXRlY3RlZCBhbmQgYSBwcm9wZXIgYWNjZXNzCisJICogaW1wbGVtZW50YXRpb24gZm9yIHRoYXQgZm9ybWF0IHdpbGwgYmUgY29uc3RydWN0ZWQgYW5kIHJldHVybmVkIHRvIHRoZQorCSAqIGNhbGxlci4gVGhlIGZpbGUgbWF5IG9yIG1heSBub3QgYmUgaGVsZCBvcGVuIGJ5IHRoZSByZXR1cm5lZCBpbnN0YW5jZS4KKwkgKgorCSAqIEBwYXJhbSBmZAorCSAqICAgICAgICAgICAgc3RyZWFtIHRvIHJlYWQgdGhlIGJpdG1hcCBpbmRleCBmaWxlIGZyb20uIFRoZSBzdHJlYW0gbXVzdCBiZQorCSAqICAgICAgICAgICAgYnVmZmVyZWQgYXMgc29tZSBzbWFsbCBJT3MgYXJlIHBlcmZvcm1lZCBhZ2FpbnN0IHRoZSBzdHJlYW0uCisJICogICAgICAgICAgICBUaGUgY2FsbGVyIGlzIHJlc3BvbnNpYmxlIGZvciBjbG9zaW5nIHRoZSBzdHJlYW0uCisJICogQHBhcmFtIHBhY2tJbmRleFN1cHBsaWVyCisJICogICAgICAgICAgICB0aGUgc3VwcGxpZXIgZm9yIHBhY2sgaW5kZXggZm9yIHRoZSBjb3JyZXNwb25kaW5nIHBhY2sgZmlsZS4KKwkgKiBAcGFyYW0gcmV2ZXJzZUluZGV4U3VwcGxpZXIKKwkgKiAgICAgICAgICAgIHRoZSBzdXBwbGllciBmb3IgcGFjayByZXZlcnNlIGluZGV4IGZvciB0aGUgY29ycmVzcG9uZGluZyBwYWNrCisJICogICAgICAgICAgICBmaWxlLgorCSAqIEByZXR1cm4gYSBjb3B5IG9mIHRoZSBpbmRleCBpbi1tZW1vcnkuCisJICogQHRocm93cyBqYXZhLmlvLklPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgdGhlIHN0cmVhbSBjYW5ub3QgYmUgcmVhZC4KKwkgKiBAdGhyb3dzIENvcnJ1cHRPYmplY3RFeGNlcHRpb24KKwkgKiAgICAgICAgICAgICB0aGUgc3RyZWFtIGRvZXMgbm90IGNvbnRhaW4gYSB2YWxpZCBwYWNrIGJpdG1hcCBpbmRleC4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIFBhY2tCaXRtYXBJbmRleCByZWFkKElucHV0U3RyZWFtIGZkLAorCQkJU3VwcGxpZXJXaXRoSU9FeGNlcHRpb248UGFja0luZGV4PiBwYWNrSW5kZXhTdXBwbGllciwKKwkJCVN1cHBsaWVyV2l0aElPRXhjZXB0aW9uPFBhY2tSZXZlcnNlSW5kZXg+IHJldmVyc2VJbmRleFN1cHBsaWVyKQogCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJcmV0dXJuIG5ldyBQYWNrQml0bWFwSW5kZXhWMShmZCwgcGFja0luZGV4LCByZXZlcnNlSW5kZXgpOworCQlyZXR1cm4gbmV3IFBhY2tCaXRtYXBJbmRleFYxKGZkLCBwYWNrSW5kZXhTdXBwbGllciwKKwkJCQlyZXZlcnNlSW5kZXhTdXBwbGllcik7CiAJfQogCiAJLyoqIEZvb3RlciBjaGVja3N1bSBhcHBsaWVkIG9uIHRoZSBib3R0b20gb2YgdGhlIHBhY2sgZmlsZS4gKi8KQEAgLTEyMSw3ICsxNDksOCBAQCBwdWJsaWMgc3RhdGljIFBhY2tCaXRtYXBJbmRleCByZWFkKAogCSAqIEB0aHJvd3MgamF2YS5sYW5nLklsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbgogCSAqICAgICAgICAgICAgIHdoZW4gdGhlIGl0ZW0gaXMgbm90IGZvdW5kLgogCSAqLwotCXB1YmxpYyBhYnN0cmFjdCBPYmplY3RJZCBnZXRPYmplY3QoaW50IHBvc2l0aW9uKSB0aHJvd3MgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uOworCXB1YmxpYyBhYnN0cmFjdCBPYmplY3RJZCBnZXRPYmplY3QoaW50IHBvc2l0aW9uKQorCQkJdGhyb3dzIElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbjsKIAogCS8qKgogCSAqIFJldHVybnMgYSBiaXRtYXAgY29udGFpbmluZyBwb3NpdGlvbnMgZm9yIG9iamVjdHMgdGhhdCBoYXZlIHRoZSBnaXZlbiBHaXQKQEAgLTE2MSw0ICsxOTAsMTkgQEAgcHVibGljIGFic3RyYWN0IEVXQUhDb21wcmVzc2VkQml0bWFwIG9mT2JqZWN0VHlwZSgKIAkgKiBAcmV0dXJuIHRoZSBudW1iZXIgb2YgYml0bWFwcyBpbiB0aGlzIGJpdG1hcCBpbmRleC4KIAkgKi8KIAlwdWJsaWMgYWJzdHJhY3QgaW50IGdldEJpdG1hcENvdW50KCk7CisKKwkvKioKKwkgKiBTdXBwbGllciB0aGF0IHByb3BhZ2F0ZXMgSU9FeGNlcHRpb24uCisJICoKKwkgKiBAcGFyYW0gPFQ+CisJICogICAgICAgICAgICB0aGUgcmV0dXJuIHR5cGUgd2hpY2ggaXMgZXhwZWN0ZWQgZnJvbSB7QGxpbmsgI2dldCgpfQorCSAqLworCUBGdW5jdGlvbmFsSW50ZXJmYWNlCisJcHVibGljIGludGVyZmFjZSBTdXBwbGllcldpdGhJT0V4Y2VwdGlvbjxUPiB7CisJCS8qKgorCQkgKiBAcmV0dXJuIHJlc3VsdAorCQkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJCSAqLworCQlUIGdldCgpIHRocm93cyBJT0V4Y2VwdGlvbjsKKwl9CiB9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrQml0bWFwSW5kZXhSZW1hcHBlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFja0JpdG1hcEluZGV4UmVtYXBwZXIuamF2YQppbmRleCBkZDVkMDNjLi5lMWI2Zjc4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrQml0bWFwSW5kZXhSZW1hcHBlci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tCaXRtYXBJbmRleFJlbWFwcGVyLmphdmEKQEAgLTExMSw3ICsxMTEsNyBAQCBwdWJsaWMgSXRlcmF0b3I8RW50cnk+IGl0ZXJhdG9yKCkgewogCQkJcmV0dXJuIENvbGxlY3Rpb25zLjxFbnRyeT4gZW1wdHlMaXN0KCkuaXRlcmF0b3IoKTsKIAogCQlmaW5hbCBJdGVyYXRvcjxTdG9yZWRCaXRtYXA+IGl0ID0gb2xkUGFja0luZGV4LmdldEJpdG1hcHMoKS5pdGVyYXRvcigpOwotCQlyZXR1cm4gbmV3IEl0ZXJhdG9yPEVudHJ5PigpIHsKKwkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJcHJpdmF0ZSBFbnRyeSBlbnRyeTsKIAogCQkJQE92ZXJyaWRlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrQml0bWFwSW5kZXhWMS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL2ZpbGUvUGFja0JpdG1hcEluZGV4VjEuamF2YQppbmRleCBiN2QyNDFmLi42ODQ2ZTNiIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrQml0bWFwSW5kZXhWMS5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tCaXRtYXBJbmRleFYxLmphdmEKQEAgLTE0LDggKzE0LDExIEBACiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtOwogaW1wb3J0IGphdmEudGV4dC5NZXNzYWdlRm9ybWF0OworaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CiBpbXBvcnQgamF2YS51dGlsLkFycmF5czsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKIAoraW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnMuTnVsbGFibGU7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5BbnlPYmplY3RJZDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Db25zdGFudHM7CkBAIC00NiwxMSArNDksMTMgQEAgY2xhc3MgUGFja0JpdG1hcEluZGV4VjEgZXh0ZW5kcyBCYXNlUGFja0JpdG1hcEluZGV4IHsKIAogCXByaXZhdGUgZmluYWwgT2JqZWN0SWRPd25lck1hcDxTdG9yZWRCaXRtYXA+IGJpdG1hcHM7CiAKLQlQYWNrQml0bWFwSW5kZXhWMShmaW5hbCBJbnB1dFN0cmVhbSBmZCwgUGFja0luZGV4IHBhY2tJbmRleCwKLQkJCVBhY2tSZXZlcnNlSW5kZXggcmV2ZXJzZUluZGV4KSB0aHJvd3MgSU9FeGNlcHRpb24geworCVBhY2tCaXRtYXBJbmRleFYxKGZpbmFsIElucHV0U3RyZWFtIGZkLAorCQkJU3VwcGxpZXJXaXRoSU9FeGNlcHRpb248UGFja0luZGV4PiBwYWNrSW5kZXhTdXBwbGllciwKKwkJCVN1cHBsaWVyV2l0aElPRXhjZXB0aW9uPFBhY2tSZXZlcnNlSW5kZXg+IHJldmVyc2VJbmRleFN1cHBsaWVyKQorCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJLy8gQW4gZW50cnkgaXMgb2JqZWN0IGlkLCB4b3Igb2Zmc2V0LCBmbGFnIGJ5dGUsIGFuZCBhIGxlbmd0aCBlbmNvZGVkCisJCS8vIGJpdG1hcC4gVGhlIG9iamVjdCBpZCBpcyBhbiBpbnQzMiBvZiB0aGUgbnRoIHBvc2l0aW9uIHNvcnRlZCBieSBuYW1lLgogCQlzdXBlcihuZXcgT2JqZWN0SWRPd25lck1hcDxTdG9yZWRCaXRtYXA+KCkpOwotCQl0aGlzLnBhY2tJbmRleCA9IHBhY2tJbmRleDsKLQkJdGhpcy5yZXZlcnNlSW5kZXggPSByZXZlcnNlSW5kZXg7CiAJCXRoaXMuYml0bWFwcyA9IGdldEJpdG1hcHMoKTsKIAogCQlmaW5hbCBieXRlW10gc2NyYXRjaCA9IG5ldyBieXRlWzMyXTsKQEAgLTk3LDEwICsxMDIsMTAgQEAgY2xhc3MgUGFja0JpdG1hcEluZGV4VjEgZXh0ZW5kcyBCYXNlUGFja0JpdG1hcEluZGV4IHsKIAkJdGhpcy5ibG9icyA9IHJlYWRCaXRtYXAoZGF0YUlucHV0KTsKIAkJdGhpcy50YWdzID0gcmVhZEJpdG1hcChkYXRhSW5wdXQpOwogCi0JCS8vIEFuIGVudHJ5IGlzIG9iamVjdCBpZCwgeG9yIG9mZnNldCwgZmxhZyBieXRlLCBhbmQgYSBsZW5ndGggZW5jb2RlZAotCQkvLyBiaXRtYXAuIFRoZSBvYmplY3QgaWQgaXMgYW4gaW50MzIgb2YgdGhlIG50aCBwb3NpdGlvbiBzb3J0ZWQgYnkgbmFtZS4KKwkJLy8gUmVhZCBmdWxsIGJpdG1hcCBmcm9tIHN0b3JhZ2UgZmlyc3QuCisJCUxpc3Q8SWR4UG9zaXRpb25CaXRtYXA+IGlkeFBvc2l0aW9uQml0bWFwTGlzdCA9IG5ldyBBcnJheUxpc3Q8PigpOwogCQkvLyBUaGUgeG9yIG9mZnNldCBpcyBhIHNpbmdsZSBieXRlIG9mZnNldCBiYWNrIGluIHRoZSBsaXN0IG9mIGVudHJpZXMuCi0JCVN0b3JlZEJpdG1hcFtdIHJlY2VudEJpdG1hcHMgPSBuZXcgU3RvcmVkQml0bWFwW01BWF9YT1JfT0ZGU0VUXTsKKwkJSWR4UG9zaXRpb25CaXRtYXBbXSByZWNlbnRCaXRtYXBzID0gbmV3IElkeFBvc2l0aW9uQml0bWFwW01BWF9YT1JfT0ZGU0VUXTsKIAkJZm9yIChpbnQgaSA9IDA7IGkgPCAoaW50KSBudW1FbnRyaWVzOyBpKyspIHsKIAkJCUlPLnJlYWRGdWxseShmZCwgc2NyYXRjaCwgMCwgNik7CiAJCQlpbnQgbnRoT2JqZWN0SWQgPSBOQi5kZWNvZGVJbnQzMihzY3JhdGNoLCAwKTsKQEAgLTEwOCwzOCArMTEzLDU4IEBAIGNsYXNzIFBhY2tCaXRtYXBJbmRleFYxIGV4dGVuZHMgQmFzZVBhY2tCaXRtYXBJbmRleCB7CiAJCQlpbnQgZmxhZ3MgPSBzY3JhdGNoWzVdOwogCQkJRVdBSENvbXByZXNzZWRCaXRtYXAgYml0bWFwID0gcmVhZEJpdG1hcChkYXRhSW5wdXQpOwogCi0JCQlpZiAobnRoT2JqZWN0SWQgPCAwKQorCQkJaWYgKG50aE9iamVjdElkIDwgMCkgewogCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKIAkJCQkJCUpHaXRUZXh0LmdldCgpLmludmFsaWRJZCwgU3RyaW5nLnZhbHVlT2YobnRoT2JqZWN0SWQpKSk7Ci0JCQlpZiAoeG9yT2Zmc2V0IDwgMCkKKwkJCX0KKwkJCWlmICh4b3JPZmZzZXQgPCAwKSB7CiAJCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKE1lc3NhZ2VGb3JtYXQuZm9ybWF0KAogCQkJCQkJSkdpdFRleHQuZ2V0KCkuaW52YWxpZElkLCBTdHJpbmcudmFsdWVPZih4b3JPZmZzZXQpKSk7Ci0JCQlpZiAoeG9yT2Zmc2V0ID4gTUFYX1hPUl9PRkZTRVQpCisJCQl9CisJCQlpZiAoeG9yT2Zmc2V0ID4gTUFYX1hPUl9PRkZTRVQpIHsKIAkJCQl0aHJvdyBuZXcgSU9FeGNlcHRpb24oTWVzc2FnZUZvcm1hdC5mb3JtYXQoCiAJCQkJCQlKR2l0VGV4dC5nZXQoKS5leHBlY3RlZExlc3NUaGFuR290LAogCQkJCQkJU3RyaW5nLnZhbHVlT2YoTUFYX1hPUl9PRkZTRVQpLAogCQkJCQkJU3RyaW5nLnZhbHVlT2YoeG9yT2Zmc2V0KSkpOwotCQkJaWYgKHhvck9mZnNldCA+IGkpCisJCQl9CisJCQlpZiAoeG9yT2Zmc2V0ID4gaSkgewogCQkJCXRocm93IG5ldyBJT0V4Y2VwdGlvbihNZXNzYWdlRm9ybWF0LmZvcm1hdCgKIAkJCQkJCUpHaXRUZXh0LmdldCgpLmV4cGVjdGVkTGVzc1RoYW5Hb3QsIFN0cmluZy52YWx1ZU9mKGkpLAogCQkJCQkJU3RyaW5nLnZhbHVlT2YoeG9yT2Zmc2V0KSkpOwotCi0JCQlPYmplY3RJZCBvYmplY3RJZCA9IHBhY2tJbmRleC5nZXRPYmplY3RJZChudGhPYmplY3RJZCk7Ci0JCQlTdG9yZWRCaXRtYXAgeG9yQml0bWFwID0gbnVsbDsKKwkJCX0KKwkJCUlkeFBvc2l0aW9uQml0bWFwIHhvcklkeFBvc2l0aW9uQml0bWFwID0gbnVsbDsKIAkJCWlmICh4b3JPZmZzZXQgPiAwKSB7CiAJCQkJaW50IGluZGV4ID0gKGkgLSB4b3JPZmZzZXQpOwotCQkJCXhvckJpdG1hcCA9IHJlY2VudEJpdG1hcHNbaW5kZXggJSByZWNlbnRCaXRtYXBzLmxlbmd0aF07Ci0JCQkJaWYgKHhvckJpdG1hcCA9PSBudWxsKQorCQkJCXhvcklkeFBvc2l0aW9uQml0bWFwID0gcmVjZW50Qml0bWFwc1tpbmRleAorCQkJCQkJJSByZWNlbnRCaXRtYXBzLmxlbmd0aF07CisJCQkJaWYgKHhvcklkeFBvc2l0aW9uQml0bWFwID09IG51bGwpIHsKIAkJCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKE1lc3NhZ2VGb3JtYXQuZm9ybWF0KAogCQkJCQkJCUpHaXRUZXh0LmdldCgpLmludmFsaWRJZCwKIAkJCQkJCQlTdHJpbmcudmFsdWVPZih4b3JPZmZzZXQpKSk7CisJCQkJfQogCQkJfQotCi0JCQlTdG9yZWRCaXRtYXAgc2IgPSBuZXcgU3RvcmVkQml0bWFwKAotCQkJCQlvYmplY3RJZCwgYml0bWFwLCB4b3JCaXRtYXAsIGZsYWdzKTsKLQkJCWJpdG1hcHMuYWRkKHNiKTsKLQkJCXJlY2VudEJpdG1hcHNbaSAlIHJlY2VudEJpdG1hcHMubGVuZ3RoXSA9IHNiOworCQkJSWR4UG9zaXRpb25CaXRtYXAgaWR4UG9zaXRpb25CaXRtYXAgPSBuZXcgSWR4UG9zaXRpb25CaXRtYXAoCisJCQkJCW50aE9iamVjdElkLCB4b3JJZHhQb3NpdGlvbkJpdG1hcCwgYml0bWFwLCBmbGFncyk7CisJCQlpZHhQb3NpdGlvbkJpdG1hcExpc3QuYWRkKGlkeFBvc2l0aW9uQml0bWFwKTsKKwkJCXJlY2VudEJpdG1hcHNbaSAlIHJlY2VudEJpdG1hcHMubGVuZ3RoXSA9IGlkeFBvc2l0aW9uQml0bWFwOwogCQl9CisKKwkJdGhpcy5wYWNrSW5kZXggPSBwYWNrSW5kZXhTdXBwbGllci5nZXQoKTsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBpZHhQb3NpdGlvbkJpdG1hcExpc3Quc2l6ZSgpOyArK2kpIHsKKwkJCUlkeFBvc2l0aW9uQml0bWFwIGlkeFBvc2l0aW9uQml0bWFwID0gaWR4UG9zaXRpb25CaXRtYXBMaXN0LmdldChpKTsKKwkJCU9iamVjdElkIG9iamVjdElkID0gcGFja0luZGV4CisJCQkJCS5nZXRPYmplY3RJZChpZHhQb3NpdGlvbkJpdG1hcC5udGhPYmplY3RJZCk7CisJCQlTdG9yZWRCaXRtYXAgc2IgPSBuZXcgU3RvcmVkQml0bWFwKG9iamVjdElkLAorCQkJCQlpZHhQb3NpdGlvbkJpdG1hcC5iaXRtYXAsCisJCQkJCWlkeFBvc2l0aW9uQml0bWFwLmdldFhvclN0b3JlZEJpdG1hcCgpLAorCQkJCQlpZHhQb3NpdGlvbkJpdG1hcC5mbGFncyk7CisJCQkvLyBTYXZlIHRoZSBTdG9yZWRCaXRtYXAgZm9yIGEgcG9zc2libGUgZnV0dXJlIFhvclN0b3JlZEJpdG1hcAorCQkJLy8gcmVmZXJlbmNlLgorCQkJaWR4UG9zaXRpb25CaXRtYXAuc2IgPSBzYjsKKwkJCWJpdG1hcHMuYWRkKHNiKTsKKwkJfQorCisJCXRoaXMucmV2ZXJzZUluZGV4ID0gcmV2ZXJzZUluZGV4U3VwcGxpZXIuZ2V0KCk7CiAJfQogCiAJLyoqIHtAaW5oZXJpdERvY30gKi8KQEAgLTIxNCw0ICsyMzksMzQgQEAgcHJpdmF0ZSBzdGF0aWMgRVdBSENvbXByZXNzZWRCaXRtYXAgcmVhZEJpdG1hcChEYXRhSW5wdXQgZGF0YUlucHV0KQogCQliaXRtYXAuZGVzZXJpYWxpemUoZGF0YUlucHV0KTsKIAkJcmV0dXJuIGJpdG1hcDsKIAl9CisKKwkvKioKKwkgKiBUZW1wb3JhcnkgaG9sZGVyIG9mIG9iamVjdCBwb3NpdGlvbiBpbiBwYWNrIGluZGV4IGFuZCBvdGhlciBtZXRhZGF0YSBmb3IKKwkgKiB7QGNvZGUgU3RvcmVkQml0bWFwfS4KKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBjbGFzcyBJZHhQb3NpdGlvbkJpdG1hcCB7CisJCWludCBudGhPYmplY3RJZDsKKworCQlJZHhQb3NpdGlvbkJpdG1hcCB4b3JJZHhQb3NpdGlvbkJpdG1hcDsKKworCQlFV0FIQ29tcHJlc3NlZEJpdG1hcCBiaXRtYXA7CisKKwkJaW50IGZsYWdzOworCisJCVN0b3JlZEJpdG1hcCBzYjsKKworCQlJZHhQb3NpdGlvbkJpdG1hcChpbnQgbnRoT2JqZWN0SWQsCisJCQkJQE51bGxhYmxlIElkeFBvc2l0aW9uQml0bWFwIHhvcklkeFBvc2l0aW9uQml0bWFwLAorCQkJCUVXQUhDb21wcmVzc2VkQml0bWFwIGJpdG1hcCwgaW50IGZsYWdzKSB7CisJCQl0aGlzLm50aE9iamVjdElkID0gbnRoT2JqZWN0SWQ7CisJCQl0aGlzLnhvcklkeFBvc2l0aW9uQml0bWFwID0geG9ySWR4UG9zaXRpb25CaXRtYXA7CisJCQl0aGlzLmJpdG1hcCA9IGJpdG1hcDsKKwkJCXRoaXMuZmxhZ3MgPSBmbGFnczsKKwkJfQorCisJCVN0b3JlZEJpdG1hcCBnZXRYb3JTdG9yZWRCaXRtYXAoKSB7CisJCQlyZXR1cm4geG9ySWR4UG9zaXRpb25CaXRtYXAgPT0gbnVsbCA/IG51bGwKKwkJCQkJOiB4b3JJZHhQb3NpdGlvbkJpdG1hcC5zYjsKKwkJfQorCX0KIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tMb2NrLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrTG9ja0ltcGwuamF2YQpzaW1pbGFyaXR5IGluZGV4IDg4JQpyZW5hbWUgZnJvbSBvcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrTG9jay5qYXZhCnJlbmFtZSB0byBvcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrTG9ja0ltcGwuamF2YQppbmRleCA0ODJiMTQzLi43Y2M1ZjUwIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvZmlsZS9QYWNrTG9jay5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9maWxlL1BhY2tMb2NrSW1wbC5qYXZhCkBAIC0xNCw2ICsxNCw3IEBACiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbnN0YW50czsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydC5QYWNrTG9jazsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZpbGVVdGlsczsKIApAQCAtMjEsNyArMjIsNyBAQAogICogS2VlcHMgdHJhY2sgb2YgYSB7QGxpbmsgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGUuUGFja30ncwogICogYXNzb2NpYXRlZCA8Y29kZT4ua2VlcDwvY29kZT4gZmlsZS4KICAqLwotcHVibGljIGNsYXNzIFBhY2tMb2NrIHsKK3B1YmxpYyBjbGFzcyBQYWNrTG9ja0ltcGwgaW1wbGVtZW50cyBQYWNrTG9jayB7CiAJcHJpdmF0ZSBmaW5hbCBGaWxlIGtlZXBGaWxlOwogCiAJLyoqCkBAIC0zMiw3ICszMyw3IEBAIHB1YmxpYyBjbGFzcyBQYWNrTG9jayB7CiAJICogQHBhcmFtIGZzCiAJICogICAgICAgICAgICB0aGUgZmlsZXN5c3RlbSBhYnN0cmFjdGlvbiB1c2VkIGJ5IHRoZSByZXBvc2l0b3J5LgogCSAqLwotCXB1YmxpYyBQYWNrTG9jayhGaWxlIHBhY2tGaWxlLCBGUyBmcykgeworCXB1YmxpYyBQYWNrTG9ja0ltcGwoRmlsZSBwYWNrRmlsZSwgRlMgZnMpIHsKIAkJZmluYWwgRmlsZSBwID0gcGFja0ZpbGUuZ2V0UGFyZW50RmlsZSgpOwogCQlmaW5hbCBTdHJpbmcgbiA9IHBhY2tGaWxlLmdldE5hbWUoKTsKIAkJa2VlcEZpbGUgPSBuZXcgRmlsZShwLCBuLnN1YnN0cmluZygwLCBuLmxlbmd0aCgpIC0gNSkgKyAiLmtlZXAiKTsgLy8kTk9OLU5MUy0xJApAQCAtNTksMTIgKzYwLDcgQEAgcHVibGljIGJvb2xlYW4gbG9jayhTdHJpbmcgbXNnKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlyZXR1cm4gbGYuY29tbWl0KCk7CiAJfQogCi0JLyoqCi0JICogUmVtb3ZlIHRoZSA8Y29kZT4ua2VlcDwvY29kZT4gZmlsZSB0aGF0IGhvbGRzIHRoaXMgcGFjayBpbiBwbGFjZS4KLQkgKgotCSAqIEB0aHJvd3MgamF2YS5pby5JT0V4Y2VwdGlvbgotCSAqICAgICAgICAgICAgIGlmIGRlbGV0aW9uIG9mIC5rZWVwIGZpbGUgZmFpbGVkCi0JICovCisJQE92ZXJyaWRlCiAJcHVibGljIHZvaWQgdW5sb2NrKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJRmlsZVV0aWxzLmRlbGV0ZShrZWVwRmlsZSk7CiAJfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL3BhY2svUGFja1dyaXRlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL3BhY2svUGFja1dyaXRlci5qYXZhCmluZGV4IDRmMjhiMGQuLmNkM2Y1MzYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvc3RvcmFnZS9wYWNrL1BhY2tXcml0ZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvcGFjay9QYWNrV3JpdGVyLmphdmEKQEAgLTE0NCw3ICsxNDQsNyBAQCBwdWJsaWMgY2xhc3MgUGFja1dyaXRlciBpbXBsZW1lbnRzIEF1dG9DbG9zZWFibGUgewogCXByaXZhdGUgc3RhdGljIGZpbmFsIE1hcDxXZWFrUmVmZXJlbmNlPFBhY2tXcml0ZXI+LCBCb29sZWFuPiBpbnN0YW5jZXMgPQogCQkJbmV3IENvbmN1cnJlbnRIYXNoTWFwPD4oKTsKIAotCXByaXZhdGUgc3RhdGljIGZpbmFsIEl0ZXJhYmxlPFBhY2tXcml0ZXI+IGluc3RhbmNlc0l0ZXJhYmxlID0gKCkgLT4gbmV3IEl0ZXJhdG9yPFBhY2tXcml0ZXI+KCkgeworCXByaXZhdGUgc3RhdGljIGZpbmFsIEl0ZXJhYmxlPFBhY2tXcml0ZXI+IGluc3RhbmNlc0l0ZXJhYmxlID0gKCkgLT4gbmV3IEl0ZXJhdG9yPD4oKSB7CiAKIAkJcHJpdmF0ZSBmaW5hbCBJdGVyYXRvcjxXZWFrUmVmZXJlbmNlPFBhY2tXcml0ZXI+PiBpdCA9IGluc3RhbmNlcwogCQkJCS5rZXlTZXQoKS5pdGVyYXRvcigpOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC9zdG9yYWdlL3BhY2svUGFja1dyaXRlckJpdG1hcFByZXBhcmVyLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvcGFjay9QYWNrV3JpdGVyQml0bWFwUHJlcGFyZXIuamF2YQppbmRleCA5ZjJiNGQ5Li41YTE4ZjFlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvcGFjay9QYWNrV3JpdGVyQml0bWFwUHJlcGFyZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2ludGVybmFsL3N0b3JhZ2UvcGFjay9QYWNrV3JpdGVyQml0bWFwUHJlcGFyZXIuamF2YQpAQCAtNTIxLDcgKzUyMSw3IEBAIHByaXZhdGUgc3RhdGljIGZpbmFsIGNsYXNzIENvbW1pdFNlbGVjdGlvbkhlbHBlciBpbXBsZW1lbnRzIEl0ZXJhYmxlPFJldkNvbW1pdD4KIAkJcHVibGljIEl0ZXJhdG9yPFJldkNvbW1pdD4gaXRlcmF0b3IoKSB7CiAJCQkvLyBNZW1iZXIgdmFyaWFibGVzIHJlZmVyZW5jZWQgYnkgdGhpcyBpdGVyYXRvciB3aWxsIGhhdmUgc3ludGhldGljCiAJCQkvLyBhY2Nlc3NvcnMgZ2VuZXJhdGVkIGZvciB0aGVtIGlmIHRoZXkgYXJlIG1hZGUgcHJpdmF0ZS4KLQkJCXJldHVybiBuZXcgSXRlcmF0b3I8UmV2Q29tbWl0PigpIHsKKwkJCXJldHVybiBuZXcgSXRlcmF0b3I8PigpIHsKIAkJCQlpbnQgcG9zID0gbmV3Q29tbWl0U3RhcnRQb3M7CiAKIAkJCQlAT3ZlcnJpZGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvaW50ZXJuYWwvdHJhbnNwb3J0L3NzaC9PcGVuU3NoQ29uZmlnRmlsZS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL09wZW5Tc2hDb25maWdGaWxlLmphdmEKaW5kZXggMjI4YzI1Zi4uNjQ4ZDRhMSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL09wZW5Tc2hDb25maWdGaWxlLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9pbnRlcm5hbC90cmFuc3BvcnQvc3NoL09wZW5Tc2hDb25maWdGaWxlLmphdmEKQEAgLTE0Miw3ICsxNDIsNyBAQCBwdWJsaWMgT3BlblNzaENvbmZpZ0ZpbGUoQE5vbk51bGwgRmlsZSBob21lLCBATm9uTnVsbCBGaWxlIGNvbmZpZywKIAkgKiAgICAgICAgICAgIHJlYWwgaG9zdCBuYW1lLCBvciBpdCBtYXkganVzdCBiZSBhICJIb3N0IiBibG9jayBpbiB0aGUKIAkgKiAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24gZmlsZS4KIAkgKiBAcGFyYW0gcG9ydAotCSAqICAgICAgICAgICAgdGhlIHVzZXIgc3VwcGxpZWQ7IDw9IDAgaWYgbm9uZQorCSAqICAgICAgICAgICAgdGhlIHVzZXIgc3VwcGxpZWQ7ICZsdDs9IDAgaWYgbm9uZQogCSAqIEBwYXJhbSB1c2VyTmFtZQogCSAqICAgICAgICAgICAgdGhlIHVzZXIgc3VwcGxpZWQsIG1heSBiZSB7QGNvZGUgbnVsbH0gb3IgZW1wdHkgaWYgbm9uZSBnaXZlbgogCSAqIEByZXR1cm4gdGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSByZXF1ZXN0ZWQgbmFtZS4KQEAgLTE1MSw2ICsxNTEsMTggQEAgcHVibGljIE9wZW5Tc2hDb25maWdGaWxlKEBOb25OdWxsIEZpbGUgaG9tZSwgQE5vbk51bGwgRmlsZSBjb25maWcsCiAJQE5vbk51bGwKIAlwdWJsaWMgSG9zdEVudHJ5IGxvb2t1cChATm9uTnVsbCBTdHJpbmcgaG9zdE5hbWUsIGludCBwb3J0LAogCQkJU3RyaW5nIHVzZXJOYW1lKSB7CisJCXJldHVybiBsb29rdXAoaG9zdE5hbWUsIHBvcnQsIHVzZXJOYW1lLCBmYWxzZSk7CisJfQorCisJQE92ZXJyaWRlCisJQE5vbk51bGwKKwlwdWJsaWMgSG9zdEVudHJ5IGxvb2t1cERlZmF1bHQoQE5vbk51bGwgU3RyaW5nIGhvc3ROYW1lLCBpbnQgcG9ydCwKKwkJCVN0cmluZyB1c2VyTmFtZSkgeworCQlyZXR1cm4gbG9va3VwKGhvc3ROYW1lLCBwb3J0LCB1c2VyTmFtZSwgdHJ1ZSk7CisJfQorCisJcHJpdmF0ZSBIb3N0RW50cnkgbG9va3VwKEBOb25OdWxsIFN0cmluZyBob3N0TmFtZSwgaW50IHBvcnQsCisJCQlTdHJpbmcgdXNlck5hbWUsIGJvb2xlYW4gZmlsbERlZmF1bHRzKSB7CiAJCWZpbmFsIFN0YXRlIGNhY2hlID0gcmVmcmVzaCgpOwogCQlTdHJpbmcgY2FjaGVLZXkgPSB0b0NhY2hlS2V5KGhvc3ROYW1lLCBwb3J0LCB1c2VyTmFtZSk7CiAJCUhvc3RFbnRyeSBoID0gY2FjaGUuaG9zdHMuZ2V0KGNhY2hlS2V5KTsKQEAgLTE2OSw3ICsxODEsOCBAQCBwdWJsaWMgSG9zdEVudHJ5IGxvb2t1cChATm9uTnVsbCBTdHJpbmcgaG9zdE5hbWUsIGludCBwb3J0LAogCQkJCX0KIAkJCX0pOwogCQl9Ci0JCWZ1bGxDb25maWcuc3Vic3RpdHV0ZShob3N0TmFtZSwgcG9ydCwgdXNlck5hbWUsIGxvY2FsVXNlck5hbWUsIGhvbWUpOworCQlmdWxsQ29uZmlnLnN1YnN0aXR1dGUoaG9zdE5hbWUsIHBvcnQsIHVzZXJOYW1lLCBsb2NhbFVzZXJOYW1lLCBob21lLAorCQkJCWZpbGxEZWZhdWx0cyk7CiAJCWNhY2hlLmhvc3RzLnB1dChjYWNoZUtleSwgZnVsbENvbmZpZyk7CiAJCXJldHVybiBmdWxsQ29uZmlnOwogCX0KQEAgLTIxMCwzNCArMjIzLDQ2IEBAIHByaXZhdGUgTGlzdDxIb3N0RW50cnk+IHBhcnNlKEJ1ZmZlcmVkUmVhZGVyIHJlYWRlcikKIAkJLy8gVGhlIG1hbiBwYWdlIGRvZXNuJ3Qgc2F5IHNvLCBidXQgdGhlIG9wZW5zc2ggcGFyc2VyIChyZWFkY29uZi5jKQogCQkvLyBzdGFydHMgb3V0IGluIGFjdGl2ZSBtb2RlIGFuZCB0aHVzIGFsd2F5cyBhcHBsaWVzIGFueSBsaW5lcyB0aGF0CiAJCS8vIG9jY3VyIGJlZm9yZSB0aGUgZmlyc3QgaG9zdCBibG9jay4gV2UgZ2F0aGVyIHRob3NlIG9wdGlvbnMgaW4gYQotCQkvLyBIb3N0RW50cnkgZm9yIERFRkFVTFRfTkFNRS4KKwkJLy8gSG9zdEVudHJ5LgogCQlIb3N0RW50cnkgZGVmYXVsdHMgPSBuZXcgSG9zdEVudHJ5KCk7CiAJCUhvc3RFbnRyeSBjdXJyZW50ID0gZGVmYXVsdHM7CiAJCWVudHJpZXMuYWRkKGRlZmF1bHRzKTsKIAogCQlTdHJpbmcgbGluZTsKIAkJd2hpbGUgKChsaW5lID0gcmVhZGVyLnJlYWRMaW5lKCkpICE9IG51bGwpIHsKLQkJCS8vIE9wZW5Tc2ggaWdub3JlcyB0cmFpbGluZyBjb21tZW50cyBvbiBhIGxpbmUuIEFueXRoaW5nIGFmdGVyIHRoZQotCQkJLy8gZmlyc3QgIyBvbiBhIGxpbmUgaXMgdHJpbW1lZCBhd2F5ICh5ZXMsIGV2ZW4gaWYgdGhlIGhhc2ggaXMKLQkJCS8vIGluc2lkZSBxdW90ZXMpLgotCQkJLy8KLQkJCS8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vb3BlbnNzaC9vcGVuc3NoLXBvcnRhYmxlL2NvbW1pdC8yYmNiZjY3OQotCQkJaW50IGkgPSBsaW5lLmluZGV4T2YoJyMnKTsKLQkJCWlmIChpID49IDApIHsKLQkJCQlsaW5lID0gbGluZS5zdWJzdHJpbmcoMCwgaSk7Ci0JCQl9Ci0JCQlsaW5lID0gbGluZS50cmltKCk7CisJCQlsaW5lID0gbGluZS5zdHJpcCgpOwogCQkJaWYgKGxpbmUuaXNFbXB0eSgpKSB7CiAJCQkJY29udGludWU7CiAJCQl9CiAJCQlTdHJpbmdbXSBwYXJ0cyA9IGxpbmUuc3BsaXQoIlsgXHRdKls9IFx0XSIsIDIpOyAvLyROT04tTkxTLTEkCi0JCQkvLyBBbHRob3VnaCB0aGUgc3NoLWNvbmZpZyBtYW4gcGFnZSBkb2Vzbid0IHNheSBzbywgdGhlIG9wZW5zc2gKLQkJCS8vIHBhcnNlciBkb2VzIGFsbG93IHF1b3RlZCBrZXl3b3Jkcy4KLQkJCVN0cmluZyBrZXl3b3JkID0gZGVxdW90ZShwYXJ0c1swXS50cmltKCkpOworCQkJU3RyaW5nIGtleXdvcmQgPSBwYXJ0c1swXS5zdHJpcCgpOworCQkJaWYgKGtleXdvcmQuaXNFbXB0eSgpKSB7CisJCQkJY29udGludWU7CisJCQl9CisJCQlzd2l0Y2ggKGtleXdvcmQuY2hhckF0KDApKSB7CisJCQljYXNlICcjJzoKKwkJCQljb250aW51ZTsKKwkJCWNhc2UgJyInOgorCQkJCS8vIEFsdGhvdWdoIHRoZSBzc2gtY29uZmlnIG1hbiBwYWdlIGRvZXNuJ3Qgc2F5IHNvLCB0aGUgb3BlbnNzaAorCQkJCS8vIHBhcnNlciBkb2VzIGFsbG93IHF1b3RlZCBrZXl3b3Jkcy4KKwkJCQlMaXN0PFN0cmluZz4gZGVxdW90ZWQgPSBwYXJzZUxpc3Qoa2V5d29yZCk7CisJCQkJa2V5d29yZCA9IGRlcXVvdGVkLmlzRW1wdHkoKSA/ICIiIDogZGVxdW90ZWQuZ2V0KDApOyAvLyROT04tTkxTLTEkCisJCQkJYnJlYWs7CisJCQlkZWZhdWx0OgorCQkJCS8vIEtleXdvcmRzIG5ldmVyIGNvbnRhaW4gaGFzaGVzLCBub3Igd2hpdGVzcGFjZQorCQkJCWludCBpID0ga2V5d29yZC5pbmRleE9mKCcjJyk7CisJCQkJaWYgKGkgPj0gMCkgeworCQkJCQlrZXl3b3JkID0ga2V5d29yZC5zdWJzdHJpbmcoMCwgaSk7CisJCQkJfQorCQkJCWJyZWFrOworCQkJfQorCQkJaWYgKGtleXdvcmQuaXNFbXB0eSgpKSB7CisJCQkJY29udGludWU7CisJCQl9CiAJCQkvLyBtYW4gNSBzc2gtY29uZmlnIHNheXMgbGluZXMgaGFkIHRoZSBmb3JtYXQgImtleXdvcmQgYXJndW1lbnRzIiwKIAkJCS8vIHdpdGggbm8gaW5kaWNhdGlvbiB0aGF0IGFyZ3VtZW50cyB3ZXJlIG9wdGlvbmFsLiBIb3dldmVyLCBsZXQncwogCQkJLy8gbm90IGNyYXAgb3V0IG9uIG1pc3NpbmcgYXJndW1lbnRzLiBTZWUgYnVnIDQ0NDMxOS4KLQkJCVN0cmluZyBhcmdWYWx1ZSA9IHBhcnRzLmxlbmd0aCA+IDEgPyBwYXJ0c1sxXS50cmltKCkgOiAiIjsgLy8kTk9OLU5MUy0xJAorCQkJU3RyaW5nIGFyZ1ZhbHVlID0gcGFydHMubGVuZ3RoID4gMSA/IHBhcnRzWzFdLnN0cmlwKCkgOiAiIjsgLy8kTk9OLU5MUy0xJAogCiAJCQlpZiAoU3RyaW5nVXRpbHMuZXF1YWxzSWdub3JlQ2FzZShTc2hDb25zdGFudHMuSE9TVCwga2V5d29yZCkpIHsKIAkJCQljdXJyZW50ID0gbmV3IEhvc3RFbnRyeShwYXJzZUxpc3QoYXJnVmFsdWUpKTsKQEAgLTI0OSw3ICsyNzQsOSBAQCBwcml2YXRlIExpc3Q8SG9zdEVudHJ5PiBwYXJzZShCdWZmZXJlZFJlYWRlciByZWFkZXIpCiAJCQkJTGlzdDxTdHJpbmc+IGFyZ3MgPSB2YWxpZGF0ZShrZXl3b3JkLCBwYXJzZUxpc3QoYXJnVmFsdWUpKTsKIAkJCQljdXJyZW50LnNldFZhbHVlKGtleXdvcmQsIGFyZ3MpOwogCQkJfSBlbHNlIGlmICghYXJnVmFsdWUuaXNFbXB0eSgpKSB7Ci0JCQkJYXJnVmFsdWUgPSB2YWxpZGF0ZShrZXl3b3JkLCBkZXF1b3RlKGFyZ1ZhbHVlKSk7CisJCQkJTGlzdDxTdHJpbmc+IGFyZ3MgPSBwYXJzZUxpc3QoYXJnVmFsdWUpOworCQkJCVN0cmluZyBhcmcgPSBhcmdzLmlzRW1wdHkoKSA/ICIiIDogYXJncy5nZXQoMCk7IC8vJE5PTi1OTFMtMSQKKwkJCQlhcmdWYWx1ZSA9IHZhbGlkYXRlKGtleXdvcmQsIGFyZyk7CiAJCQkJY3VycmVudC5zZXRWYWx1ZShrZXl3b3JkLCBhcmdWYWx1ZSk7CiAJCQl9CiAJCX0KQEAgLTI2MCw2ICsyODcsNyBAQCBwcml2YXRlIExpc3Q8SG9zdEVudHJ5PiBwYXJzZShCdWZmZXJlZFJlYWRlciByZWFkZXIpCiAJLyoqCiAJICogU3BsaXRzIHRoZSBhcmd1bWVudCBpbnRvIGEgbGlzdCBvZiB3aGl0ZXNwYWNlLXNlcGFyYXRlZCBlbGVtZW50cy4KIAkgKiBFbGVtZW50cyBjb250YWluaW5nIHdoaXRlc3BhY2UgbXVzdCBiZSBxdW90ZWQgYW5kIHdpbGwgYmUgZGUtcXVvdGVkLgorCSAqIEJhY2tzbGFzaC1lc2NhcGVzIGFyZSBoYW5kbGVkIGZvciBxdW90ZXMgYW5kIGJsYW5rcy4KIAkgKgogCSAqIEBwYXJhbSBhcmd1bWVudAogCSAqICAgICAgICAgICAgYXJndW1lbnQgcGFydCBvZiB0aGUgY29uZmlndXJhdGlvbiBsaW5lIGFzIHJlYWQgZnJvbSB0aGUKQEAgLTI2NywzOCArMjk1LDEwOCBAQCBwcml2YXRlIExpc3Q8SG9zdEVudHJ5PiBwYXJzZShCdWZmZXJlZFJlYWRlciByZWFkZXIpCiAJICogQHJldHVybiBhIHtAbGluayBMaXN0fSBvZiBlbGVtZW50cywgcG9zc2libHkgZW1wdHkgYW5kIHBvc3NpYmx5CiAJICogICAgICAgICBjb250YWluaW5nIGVtcHR5IGVsZW1lbnRzLCBidXQgbm90IGNvbnRhaW5pbmcge0Bjb2RlIG51bGx9CiAJICovCi0JcHJpdmF0ZSBMaXN0PFN0cmluZz4gcGFyc2VMaXN0KFN0cmluZyBhcmd1bWVudCkgeworCXByaXZhdGUgc3RhdGljIExpc3Q8U3RyaW5nPiBwYXJzZUxpc3QoU3RyaW5nIGFyZ3VtZW50KSB7CiAJCUxpc3Q8U3RyaW5nPiByZXN1bHQgPSBuZXcgQXJyYXlMaXN0PD4oNCk7CiAJCWludCBzdGFydCA9IDA7CiAJCWludCBsZW5ndGggPSBhcmd1bWVudC5sZW5ndGgoKTsKIAkJd2hpbGUgKHN0YXJ0IDwgbGVuZ3RoKSB7CiAJCQkvLyBTa2lwIHdoaXRlc3BhY2UKLQkJCWlmIChDaGFyYWN0ZXIuaXNXaGl0ZXNwYWNlKGFyZ3VtZW50LmNoYXJBdChzdGFydCkpKSB7CisJCQljaGFyIGNoID0gYXJndW1lbnQuY2hhckF0KHN0YXJ0KTsKKwkJCWlmIChDaGFyYWN0ZXIuaXNXaGl0ZXNwYWNlKGNoKSkgewogCQkJCXN0YXJ0Kys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQlpZiAoYXJndW1lbnQuY2hhckF0KHN0YXJ0KSA9PSAnIicpIHsKLQkJCQlpbnQgc3RvcCA9IGFyZ3VtZW50LmluZGV4T2YoJyInLCArK3N0YXJ0KTsKLQkJCQlpZiAoc3RvcCA8IHN0YXJ0KSB7Ci0JCQkJCS8vIE5vIGNsb3NpbmcgZG91YmxlIHF1b3RlOiBza2lwCi0JCQkJCWJyZWFrOwotCQkJCX0KLQkJCQlyZXN1bHQuYWRkKGFyZ3VtZW50LnN1YnN0cmluZyhzdGFydCwgc3RvcCkpOwotCQkJCXN0YXJ0ID0gc3RvcCArIDE7CisJCQl9IGVsc2UgaWYgKGNoID09ICcjJykgeworCQkJCWJyZWFrOyAvLyBDb21tZW50IHN0YXJ0CiAJCQl9IGVsc2UgewotCQkJCWludCBzdG9wID0gc3RhcnQgKyAxOwotCQkJCXdoaWxlIChzdG9wIDwgbGVuZ3RoCi0JCQkJCQkmJiAhQ2hhcmFjdGVyLmlzV2hpdGVzcGFjZShhcmd1bWVudC5jaGFyQXQoc3RvcCkpKSB7Ci0JCQkJCXN0b3ArKzsKLQkJCQl9Ci0JCQkJcmVzdWx0LmFkZChhcmd1bWVudC5zdWJzdHJpbmcoc3RhcnQsIHN0b3ApKTsKLQkJCQlzdGFydCA9IHN0b3AgKyAxOworCQkJCS8vIFBhcnNlIG9uZSB0b2tlbiBub3cuCisJCQkJc3RhcnQgPSBwYXJzZVRva2VuKGFyZ3VtZW50LCBzdGFydCwgbGVuZ3RoLCByZXN1bHQpOwogCQkJfQogCQl9CiAJCXJldHVybiByZXN1bHQ7CiAJfQogCiAJLyoqCisJICogUGFyc2VzIGEgdG9rZW4gdXAgdG8gdGhlIG5leHQgd2hpdGVzcGFjZSBub3QgaW5zaWRlIGEgc3RyaW5nIHF1b3RlZCBieQorCSAqIHNpbmdsZSBvciBkb3VibGUgcXVvdGVzLiBJbnNpZGUgYSBzdHJpbmcsIHF1b3RlcyBjYW4gYmUgZXNjYXBlZCBieQorCSAqIGJhY2tzbGFzaCBjaGFyYWN0ZXJzLiBPdXRzaWRlIG9mIGEgc3RyaW5nLCAiXCAiIGNhbiBiZSB1c2VkIHRvIGluY2x1ZGUgYQorCSAqIHNwYWNlIGluIGEgdG9rZW47IGluc2lkZSBhIHN0cmluZyAiXCAiIGlzIHRha2VuIGxpdGVyYWxseSBhcyAnXCcgZm9sbG93ZWQKKwkgKiBieSAnICcuCisJICoKKwkgKiBAcGFyYW0gYXJndW1lbnQKKwkgKiAgICAgICAgICAgIHRvIHBhcnNlIHRoZSB0b2tlbiBvdXQgb2YKKwkgKiBAcGFyYW0gZnJvbQorCSAqICAgICAgICAgICAgaW5kZXggYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgdG9rZW4KKwkgKiBAcGFyYW0gdG8KKwkgKiAgICAgICAgICAgIGluZGV4IG9uZSBhZnRlciB0aGUgbGFzdCBjaGFyYWN0ZXIgdG8gbG9vayBhdAorCSAqIEBwYXJhbSByZXN1bHQKKwkgKiAgICAgICAgICAgIGEgbGlzdCBjb2xsZWN0aW5nIHRva2VucyB0byB3aGljaCB0aGUgcGFyc2VkIHRva2VuIGlzIGFkZGVkCisJICogQHJldHVybiB0aGUgaW5kZXggYWZ0ZXIgdGhlIHRva2VuCisJICovCisJcHJpdmF0ZSBzdGF0aWMgaW50IHBhcnNlVG9rZW4oU3RyaW5nIGFyZ3VtZW50LCBpbnQgZnJvbSwgaW50IHRvLAorCQkJTGlzdDxTdHJpbmc+IHJlc3VsdCkgeworCQlTdHJpbmdCdWlsZGVyIGIgPSBuZXcgU3RyaW5nQnVpbGRlcigpOworCQlpbnQgaSA9IGZyb207CisJCWNoYXIgcXVvdGUgPSAwOworCQlib29sZWFuIGVzY2FwZWQgPSBmYWxzZTsKKwkJU0NBTjogd2hpbGUgKGkgPCB0bykgeworCQkJY2hhciBjaCA9IGFyZ3VtZW50LmNoYXJBdChpKTsKKwkJCXN3aXRjaCAoY2gpIHsKKwkJCWNhc2UgJyInOgorCQkJY2FzZSAnXCcnOgorCQkJCWlmIChxdW90ZSA9PSAwKSB7CisJCQkJCWlmIChlc2NhcGVkKSB7CisJCQkJCQliLmFwcGVuZChjaCk7CisJCQkJCX0gZWxzZSB7CisJCQkJCQlxdW90ZSA9IGNoOworCQkJCQl9CisJCQkJfSBlbHNlIGlmICghZXNjYXBlZCAmJiBxdW90ZSA9PSBjaCkgeworCQkJCQlxdW90ZSA9IDA7CisJCQkJfSBlbHNlIHsKKwkJCQkJYi5hcHBlbmQoY2gpOworCQkJCX0KKwkJCQllc2NhcGVkID0gZmFsc2U7CisJCQkJYnJlYWs7CisJCQljYXNlICdcXCc6CisJCQkJaWYgKGVzY2FwZWQpIHsKKwkJCQkJYi5hcHBlbmQoY2gpOworCQkJCX0KKwkJCQllc2NhcGVkID0gIWVzY2FwZWQ7CisJCQkJYnJlYWs7CisJCQljYXNlICcgJzoKKwkJCQlpZiAocXVvdGUgPT0gMCkgeworCQkJCQlpZiAoZXNjYXBlZCkgeworCQkJCQkJYi5hcHBlbmQoY2gpOworCQkJCQkJZXNjYXBlZCA9IGZhbHNlOworCQkJCQl9IGVsc2UgeworCQkJCQkJYnJlYWsgU0NBTjsKKwkJCQkJfQorCQkJCX0gZWxzZSB7CisJCQkJCWlmIChlc2NhcGVkKSB7CisJCQkJCQliLmFwcGVuZCgnXFwnKTsKKwkJCQkJfQorCQkJCQliLmFwcGVuZChjaCk7CisJCQkJCWVzY2FwZWQgPSBmYWxzZTsKKwkJCQl9CisJCQkJYnJlYWs7CisJCQlkZWZhdWx0OgorCQkJCWlmIChlc2NhcGVkKSB7CisJCQkJCWIuYXBwZW5kKCdcXCcpOworCQkJCX0KKwkJCQlpZiAocXVvdGUgPT0gMCAmJiBDaGFyYWN0ZXIuaXNXaGl0ZXNwYWNlKGNoKSkgeworCQkJCQlicmVhayBTQ0FOOworCQkJCX0KKwkJCQliLmFwcGVuZChjaCk7CisJCQkJZXNjYXBlZCA9IGZhbHNlOworCQkJCWJyZWFrOworCQkJfQorCQkJaSsrOworCQl9CisJCWlmIChiLmxlbmd0aCgpID4gMCkgeworCQkJcmVzdWx0LmFkZChiLnRvU3RyaW5nKCkpOworCQl9CisJCXJldHVybiBpOworCX0KKworCS8qKgogCSAqIEhvb2sgdG8gcGVyZm9ybSB2YWxpZGF0aW9uIG9uIGEgc2luZ2xlIHZhbHVlLCBvciB0byBzYW5pdGl6ZSBpdC4gSWYgdGhpcwogCSAqIHRocm93cyBhbiAodW5jaGVja2VkKSBleGNlcHRpb24sIHBhcnNpbmcgb2YgdGhlIGZpbGUgaXMgYWJhbmRvbmVkLgogCSAqCkBAIC0zMDksOCArNDA3LDcgQEAgcHJpdmF0ZSBMaXN0PFN0cmluZz4gcGFyc2VMaXN0KFN0cmluZyBhcmd1bWVudCkgewogCSAqIEByZXR1cm4gdGhlIHZhbGlkYXRlZCBhbmQgcG9zc2libHkgc2FuaXRpemVkIHZhbHVlCiAJICovCiAJcHJvdGVjdGVkIFN0cmluZyB2YWxpZGF0ZShTdHJpbmcga2V5LCBTdHJpbmcgdmFsdWUpIHsKLQkJaWYgKFN0cmluZy5DQVNFX0lOU0VOU0lUSVZFX09SREVSLmNvbXBhcmUoa2V5LAotCQkJCVNzaENvbnN0YW50cy5QUkVGRVJSRURfQVVUSEVOVElDQVRJT05TKSA9PSAwKSB7CisJCWlmIChTc2hDb25zdGFudHMuUFJFRkVSUkVEX0FVVEhFTlRJQ0FUSU9OUy5lcXVhbHNJZ25vcmVDYXNlKGtleSkpIHsKIAkJCXJldHVybiBzdHJpcFdoaXRlc3BhY2UodmFsdWUpOwogCQl9CiAJCXJldHVybiB2YWx1ZTsKQEAgLTM0NiwxMyArNDQzLDYgQEAgcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBwYXR0ZXJuTWF0Y2hlc0hvc3QoU3RyaW5nIHBhdHRlcm4sIFN0cmluZyBuYW1lKSB7CiAJCXJldHVybiBwYXR0ZXJuLmVxdWFscyhuYW1lKTsKIAl9CiAKLQlwcml2YXRlIHN0YXRpYyBTdHJpbmcgZGVxdW90ZShTdHJpbmcgdmFsdWUpIHsKLQkJaWYgKHZhbHVlLnN0YXJ0c1dpdGgoIlwiIikgJiYgdmFsdWUuZW5kc1dpdGgoIlwiIikgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCi0JCQkJJiYgdmFsdWUubGVuZ3RoKCkgPiAxKQotCQkJcmV0dXJuIHZhbHVlLnN1YnN0cmluZygxLCB2YWx1ZS5sZW5ndGgoKSAtIDEpOwotCQlyZXR1cm4gdmFsdWU7Ci0JfQotCiAJcHJpdmF0ZSBzdGF0aWMgU3RyaW5nIHN0cmlwV2hpdGVzcGFjZShTdHJpbmcgdmFsdWUpIHsKIAkJZmluYWwgU3RyaW5nQnVpbGRlciBiID0gbmV3IFN0cmluZ0J1aWxkZXIoKTsKIAkJaW50IGxlbmd0aCA9IHZhbHVlLmxlbmd0aCgpOwpAQCAtNzI2LDEyICs4MTYsMTIgQEAgcHJpdmF0ZSBMaXN0PFN0cmluZz4gcmVwbGFjZVRpbGRlKExpc3Q8U3RyaW5nPiB2YWx1ZXMsIEZpbGUgaG9tZSkgewogCQl9CiAKIAkJdm9pZCBzdWJzdGl0dXRlKFN0cmluZyBvcmlnaW5hbEhvc3ROYW1lLCBpbnQgcG9ydCwgU3RyaW5nIHVzZXJOYW1lLAotCQkJCVN0cmluZyBsb2NhbFVzZXJOYW1lLCBGaWxlIGhvbWUpIHsKLQkJCWludCBwID0gcG9ydCA+PSAwID8gcG9ydCA6IHBvc2l0aXZlKGdldFZhbHVlKFNzaENvbnN0YW50cy5QT1JUKSk7Ci0JCQlpZiAocCA8IDApIHsKKwkJCQlTdHJpbmcgbG9jYWxVc2VyTmFtZSwgRmlsZSBob21lLCBib29sZWFuIGZpbGxEZWZhdWx0cykgeworCQkJaW50IHAgPSBwb3J0ID4gMCA/IHBvcnQgOiBwb3NpdGl2ZShnZXRWYWx1ZShTc2hDb25zdGFudHMuUE9SVCkpOworCQkJaWYgKHAgPD0gMCkgewogCQkJCXAgPSBTc2hDb25zdGFudHMuU1NIX0RFRkFVTFRfUE9SVDsKIAkJCX0KLQkJCVN0cmluZyB1ID0gdXNlck5hbWUgIT0gbnVsbCAmJiAhdXNlck5hbWUuaXNFbXB0eSgpID8gdXNlck5hbWUKKwkJCVN0cmluZyB1ID0gIVN0cmluZ1V0aWxzLmlzRW1wdHlPck51bGwodXNlck5hbWUpID8gdXNlck5hbWUKIAkJCQkJOiBnZXRWYWx1ZShTc2hDb25zdGFudHMuVVNFUik7CiAJCQlpZiAodSA9PSBudWxsIHx8IHUuaXNFbXB0eSgpKSB7CiAJCQkJdSA9IGxvY2FsVXNlck5hbWU7CkBAIC03NDgsMTggKzgzOCwyMiBAQCB2b2lkIHN1YnN0aXR1dGUoU3RyaW5nIG9yaWdpbmFsSG9zdE5hbWUsIGludCBwb3J0LCBTdHJpbmcgdXNlck5hbWUsCiAJCQkJCW9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5IT1NUX05BTUUsIGhvc3ROYW1lKTsKIAkJCQkJci51cGRhdGUoJ2gnLCBob3N0TmFtZSk7CiAJCQkJfQorCQkJfSBlbHNlIGlmIChmaWxsRGVmYXVsdHMpIHsKKwkJCQlzZXRWYWx1ZShTc2hDb25zdGFudHMuSE9TVF9OQU1FLCBvcmlnaW5hbEhvc3ROYW1lKTsKIAkJCX0KIAkJCWlmIChtdWx0aU9wdGlvbnMgIT0gbnVsbCkgewogCQkJCUxpc3Q8U3RyaW5nPiB2YWx1ZXMgPSBtdWx0aU9wdGlvbnMKIAkJCQkJCS5nZXQoU3NoQ29uc3RhbnRzLklERU5USVRZX0ZJTEUpOwogCQkJCWlmICh2YWx1ZXMgIT0gbnVsbCkgewotCQkJCQl2YWx1ZXMgPSBzdWJzdGl0dXRlKHZhbHVlcywgImRobHJ1IiwgciwgdHJ1ZSk7IC8vJE5PTi1OTFMtMSQKKwkJCQkJdmFsdWVzID0gc3Vic3RpdHV0ZSh2YWx1ZXMsIFJlcGxhY2VyLkRFRkFVTFRfVE9LRU5TLCByLAorCQkJCQkJCXRydWUpOwogCQkJCQl2YWx1ZXMgPSByZXBsYWNlVGlsZGUodmFsdWVzLCBob21lKTsKIAkJCQkJbXVsdGlPcHRpb25zLnB1dChTc2hDb25zdGFudHMuSURFTlRJVFlfRklMRSwgdmFsdWVzKTsKIAkJCQl9CiAJCQkJdmFsdWVzID0gbXVsdGlPcHRpb25zLmdldChTc2hDb25zdGFudHMuQ0VSVElGSUNBVEVfRklMRSk7CiAJCQkJaWYgKHZhbHVlcyAhPSBudWxsKSB7Ci0JCQkJCXZhbHVlcyA9IHN1YnN0aXR1dGUodmFsdWVzLCAiZGhscnUiLCByLCB0cnVlKTsgLy8kTk9OLU5MUy0xJAorCQkJCQl2YWx1ZXMgPSBzdWJzdGl0dXRlKHZhbHVlcywgUmVwbGFjZXIuREVGQVVMVF9UT0tFTlMsIHIsCisJCQkJCQkJdHJ1ZSk7CiAJCQkJCXZhbHVlcyA9IHJlcGxhY2VUaWxkZSh2YWx1ZXMsIGhvbWUpOwogCQkJCQltdWx0aU9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5DRVJUSUZJQ0FURV9GSUxFLCB2YWx1ZXMpOwogCQkJCX0KQEAgLTc2OCw2ICs4NjIsOCBAQCB2b2lkIHN1YnN0aXR1dGUoU3RyaW5nIG9yaWdpbmFsSG9zdE5hbWUsIGludCBwb3J0LCBTdHJpbmcgdXNlck5hbWUsCiAJCQkJTGlzdDxTdHJpbmc+IHZhbHVlcyA9IGxpc3RPcHRpb25zCiAJCQkJCQkuZ2V0KFNzaENvbnN0YW50cy5VU0VSX0tOT1dOX0hPU1RTX0ZJTEUpOwogCQkJCWlmICh2YWx1ZXMgIT0gbnVsbCkgeworCQkJCQl2YWx1ZXMgPSBzdWJzdGl0dXRlKHZhbHVlcywgUmVwbGFjZXIuREVGQVVMVF9UT0tFTlMsIHIsCisJCQkJCQkJdHJ1ZSk7CiAJCQkJCXZhbHVlcyA9IHJlcGxhY2VUaWxkZSh2YWx1ZXMsIGhvbWUpOwogCQkJCQlsaXN0T3B0aW9ucy5wdXQoU3NoQ29uc3RhbnRzLlVTRVJfS05PV05fSE9TVFNfRklMRSwgdmFsdWVzKTsKIAkJCQl9CkBAIC03NzYsMzQgKzg3Miw0NyBAQCB2b2lkIHN1YnN0aXR1dGUoU3RyaW5nIG9yaWdpbmFsSG9zdE5hbWUsIGludCBwb3J0LCBTdHJpbmcgdXNlck5hbWUsCiAJCQkJLy8gSE9TVE5BTUUgYWxyZWFkeSBkb25lIGFib3ZlCiAJCQkJU3RyaW5nIHZhbHVlID0gb3B0aW9ucy5nZXQoU3NoQ29uc3RhbnRzLklERU5USVRZX0FHRU5UKTsKIAkJCQlpZiAodmFsdWUgIT0gbnVsbCkgewotCQkJCQl2YWx1ZSA9IHIuc3Vic3RpdHV0ZSh2YWx1ZSwgImRobHJ1IiwgdHJ1ZSk7IC8vJE5PTi1OTFMtMSQKKwkJCQkJdmFsdWUgPSByLnN1YnN0aXR1dGUodmFsdWUsIFJlcGxhY2VyLkRFRkFVTFRfVE9LRU5TLCB0cnVlKTsKIAkJCQkJdmFsdWUgPSB0b0ZpbGUodmFsdWUsIGhvbWUpLmdldFBhdGgoKTsKIAkJCQkJb3B0aW9ucy5wdXQoU3NoQ29uc3RhbnRzLklERU5USVRZX0FHRU5ULCB2YWx1ZSk7CiAJCQkJfQogCQkJCXZhbHVlID0gb3B0aW9ucy5nZXQoU3NoQ29uc3RhbnRzLkNPTlRST0xfUEFUSCk7CiAJCQkJaWYgKHZhbHVlICE9IG51bGwpIHsKLQkJCQkJdmFsdWUgPSByLnN1YnN0aXR1dGUodmFsdWUsICJDaExsbnBydSIsIHRydWUpOyAvLyROT04tTkxTLTEkCisJCQkJCXZhbHVlID0gci5zdWJzdGl0dXRlKHZhbHVlLCBSZXBsYWNlci5ERUZBVUxUX1RPS0VOUywgdHJ1ZSk7CiAJCQkJCXZhbHVlID0gdG9GaWxlKHZhbHVlLCBob21lKS5nZXRQYXRoKCk7CiAJCQkJCW9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5DT05UUk9MX1BBVEgsIHZhbHVlKTsKIAkJCQl9CiAJCQkJdmFsdWUgPSBvcHRpb25zLmdldChTc2hDb25zdGFudHMuTE9DQUxfQ09NTUFORCk7CiAJCQkJaWYgKHZhbHVlICE9IG51bGwpIHsKLQkJCQkJdmFsdWUgPSByLnN1YnN0aXR1dGUodmFsdWUsICJDZGhsbnByVHUiLCBmYWxzZSk7IC8vJE5PTi1OTFMtMSQKKwkJCQkJdmFsdWUgPSByLnN1YnN0aXR1dGUodmFsdWUsICJDZGhMbG5wclR1IiwgZmFsc2UpOyAvLyROT04tTkxTLTEkCiAJCQkJCW9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5MT0NBTF9DT01NQU5ELCB2YWx1ZSk7CiAJCQkJfQogCQkJCXZhbHVlID0gb3B0aW9ucy5nZXQoU3NoQ29uc3RhbnRzLlJFTU9URV9DT01NQU5EKTsKIAkJCQlpZiAodmFsdWUgIT0gbnVsbCkgewotCQkJCQl2YWx1ZSA9IHIuc3Vic3RpdHV0ZSh2YWx1ZSwgIkNkaGxucHJ1IiwgZmFsc2UpOyAvLyROT04tTkxTLTEkCisJCQkJCXZhbHVlID0gci5zdWJzdGl0dXRlKHZhbHVlLCBSZXBsYWNlci5ERUZBVUxUX1RPS0VOUywgZmFsc2UpOwogCQkJCQlvcHRpb25zLnB1dChTc2hDb25zdGFudHMuUkVNT1RFX0NPTU1BTkQsIHZhbHVlKTsKIAkJCQl9CiAJCQkJdmFsdWUgPSBvcHRpb25zLmdldChTc2hDb25zdGFudHMuUFJPWFlfQ09NTUFORCk7CiAJCQkJaWYgKHZhbHVlICE9IG51bGwpIHsKLQkJCQkJdmFsdWUgPSByLnN1YnN0aXR1dGUodmFsdWUsICJocHIiLCBmYWxzZSk7IC8vJE5PTi1OTFMtMSQKKwkJCQkJdmFsdWUgPSByLnN1YnN0aXR1dGUodmFsdWUsICJobnByIiwgZmFsc2UpOyAvLyROT04tTkxTLTEkCiAJCQkJCW9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5QUk9YWV9DT01NQU5ELCB2YWx1ZSk7CiAJCQkJfQogCQkJfQogCQkJLy8gTWF0Y2ggaXMgbm90IGltcGxlbWVudGVkIGFuZCB3b3VsZCBuZWVkIHRvIGJlIGRvbmUgZWxzZXdoZXJlCiAJCQkvLyBhbnl3YXkuCisJCQlpZiAoZmlsbERlZmF1bHRzKSB7CisJCQkJU3RyaW5nIHMgPSBvcHRpb25zLmdldChTc2hDb25zdGFudHMuVVNFUik7CisJCQkJaWYgKFN0cmluZ1V0aWxzLmlzRW1wdHlPck51bGwocykpIHsKKwkJCQkJb3B0aW9ucy5wdXQoU3NoQ29uc3RhbnRzLlVTRVIsIHUpOworCQkJCX0KKwkJCQlpZiAocG9zaXRpdmUob3B0aW9ucy5nZXQoU3NoQ29uc3RhbnRzLlBPUlQpKSA8PSAwKSB7CisJCQkJCW9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5QT1JULCBJbnRlZ2VyLnRvU3RyaW5nKHApKTsKKwkJCQl9CisJCQkJaWYgKHBvc2l0aXZlKAorCQkJCQkJb3B0aW9ucy5nZXQoU3NoQ29uc3RhbnRzLkNPTk5FQ1RJT05fQVRURU1QVFMpKSA8PSAwKSB7CisJCQkJCW9wdGlvbnMucHV0KFNzaENvbnN0YW50cy5DT05ORUNUSU9OX0FUVEVNUFRTLCAiMSIpOyAvLyROT04tTkxTLTEkCisJCQkJfQorCQkJfQogCQl9CiAKIAkJLyoqCkBAIC04NTMsNiArOTYyLDE1IEBAIHB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CiAJfQogCiAJcHJpdmF0ZSBzdGF0aWMgY2xhc3MgUmVwbGFjZXIgeworCisJCS8qKgorCQkgKiBUb2tlbnMgYXBwbGljYWJsZSB0byBtb3N0IGtleXMuCisJCSAqCisJCSAqIEBzZWUgPGEgaHJlZj0iaHR0cHM6Ly9tYW4ub3BlbmJzZC5vcmcvc3NoX2NvbmZpZy41I1RPS0VOUyI+bWFuCisJCSAqICAgICAgc3NoX2NvbmZpZzwvYT4KKwkJICovCisJCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIERFRkFVTFRfVE9LRU5TID0gIkNkaExsbnBydSI7IC8vJE5PTi1OTFMtMSQKKwogCQlwcml2YXRlIGZpbmFsIE1hcDxDaGFyYWN0ZXIsIFN0cmluZz4gcmVwbGFjZW1lbnRzID0gbmV3IEhhc2hNYXA8PigpOwogCiAJCXB1YmxpYyBSZXBsYWNlcihTdHJpbmcgaG9zdCwgaW50IHBvcnQsIFN0cmluZyB1c2VyLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvQ29tbWl0Q29uZmlnLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db21taXRDb25maWcuamF2YQppbmRleCBlNGU3Y2Q2Li4yMmUxZjk4IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db21taXRDb25maWcuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db21taXRDb25maWcuamF2YQpAQCAtMTgsNiArMTgsOCBAQAogaW1wb3J0IGphdmEubmlvLmNoYXJzZXQuU3RhbmRhcmRDaGFyc2V0czsKIGltcG9ydCBqYXZhLm5pby5jaGFyc2V0LlVuc3VwcG9ydGVkQ2hhcnNldEV4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLnRleHQuTWVzc2FnZUZvcm1hdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuYW5ub3RhdGlvbnMuTm9uTnVsbDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zLk51bGxhYmxlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLkNvbmZpZ0ludmFsaWRFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKQEAgLTc3LDYgKzc5LDkgQEAgcHVibGljIFN0cmluZyBnZXRDb21taXRFbmNvZGluZygpIHsKIAkgKiB7QGNvZGUgY29tbWl0LnRlbXBsYXRlfS4gSWYgbm8ge0Bjb2RlIGkxOG4uY29tbWl0RW5jb2Rpbmd9IGlzIHNwZWNpZmllZCwKIAkgKiBVVEYtOCBmYWxsYmFjayBpcyB1c2VkLgogCSAqCisJICogQHBhcmFtIHJlcG9zaXRvcnkKKwkgKiAgICAgICAgICAgIHRvIHJlc29sdmUgcmVsYXRpdmUgcGF0aCBpbiBsb2NhbCBnaXQgcmVwbyBjb25maWcKKwkgKgogCSAqIEByZXR1cm4gY29udGVudCBvZiB0aGUgY29tbWl0IHRlbXBsYXRlIG9yIHtAY29kZSBudWxsfSBpZiBub3QgcHJlc2VudC4KIAkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCiAJICogICAgICAgICAgICAgaWYgdGhlIHRlbXBsYXRlIGZpbGUgY2FuIG5vdCBiZSByZWFkCkBAIC04NCw5ICs4OSwxMCBAQCBwdWJsaWMgU3RyaW5nIGdldENvbW1pdEVuY29kaW5nKCkgewogCSAqICAgICAgICAgICAgIGlmIHRoZSB0ZW1wbGF0ZSBmaWxlIGRvZXMgbm90IGV4aXN0cwogCSAqIEB0aHJvd3MgQ29uZmlnSW52YWxpZEV4Y2VwdGlvbgogCSAqICAgICAgICAgICAgIGlmIGEge0Bjb2RlIGNvbW1pdEVuY29kaW5nfSBpcyBzcGVjaWZpZWQgYW5kIGlzIGludmFsaWQKKwkgKiBAc2luY2UgNi4wCiAJICovCiAJQE51bGxhYmxlCi0JcHVibGljIFN0cmluZyBnZXRDb21taXRUZW1wbGF0ZUNvbnRlbnQoKQorCXB1YmxpYyBTdHJpbmcgZ2V0Q29tbWl0VGVtcGxhdGVDb250ZW50KEBOb25OdWxsIFJlcG9zaXRvcnkgcmVwb3NpdG9yeSkKIAkJCXRocm93cyBGaWxlTm90Rm91bmRFeGNlcHRpb24sIElPRXhjZXB0aW9uLCBDb25maWdJbnZhbGlkRXhjZXB0aW9uIHsKIAogCQlpZiAoY29tbWl0VGVtcGxhdGVQYXRoID09IG51bGwpIHsKQEAgLTk0LDExICsxMDAsMTcgQEAgcHVibGljIFN0cmluZyBnZXRDb21taXRUZW1wbGF0ZUNvbnRlbnQoKQogCQl9CiAKIAkJRmlsZSBjb21taXRUZW1wbGF0ZUZpbGU7CisJCUZTIGZpbGVTeXN0ZW0gPSByZXBvc2l0b3J5LmdldEZTKCk7CiAJCWlmIChjb21taXRUZW1wbGF0ZVBhdGguc3RhcnRzV2l0aCgifi8iKSkgeyAvLyROT04tTkxTLTEkCi0JCQljb21taXRUZW1wbGF0ZUZpbGUgPSBGUy5ERVRFQ1RFRC5yZXNvbHZlKEZTLkRFVEVDVEVELnVzZXJIb21lKCksCisJCQljb21taXRUZW1wbGF0ZUZpbGUgPSBmaWxlU3lzdGVtLnJlc29sdmUoZmlsZVN5c3RlbS51c2VySG9tZSgpLAogCQkJCQljb21taXRUZW1wbGF0ZVBhdGguc3Vic3RyaW5nKDIpKTsKIAkJfSBlbHNlIHsKLQkJCWNvbW1pdFRlbXBsYXRlRmlsZSA9IEZTLkRFVEVDVEVELnJlc29sdmUobnVsbCwgY29tbWl0VGVtcGxhdGVQYXRoKTsKKwkJCWNvbW1pdFRlbXBsYXRlRmlsZSA9IGZpbGVTeXN0ZW0ucmVzb2x2ZShudWxsLCBjb21taXRUZW1wbGF0ZVBhdGgpOworCQl9CisJCWlmICghY29tbWl0VGVtcGxhdGVGaWxlLmlzQWJzb2x1dGUoKSkgeworCQkJY29tbWl0VGVtcGxhdGVGaWxlID0gZmlsZVN5c3RlbS5yZXNvbHZlKAorCQkJCQlyZXBvc2l0b3J5LmdldFdvcmtUcmVlKCkuZ2V0QWJzb2x1dGVGaWxlKCksCisJCQkJCWNvbW1pdFRlbXBsYXRlUGF0aCk7CiAJCX0KIAogCQlDaGFyc2V0IGNvbW1pdE1lc3NhZ2VFbmNvZGluZyA9IGdldEVuY29kaW5nKCk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db25maWcuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0NvbmZpZy5qYXZhCmluZGV4IGEzNjkwMjYuLjFjZTNlMzEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0NvbmZpZy5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0NvbmZpZy5qYXZhCkBAIC00Miw2ICs0Miw3IEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuUmVmU3BlYzsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LnV0aWwuRlM7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlJhd1BhcnNlVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLlN0cmluZ1V0aWxzOwogCiAvKioKICAqIEdpdCBzdHlsZSB7QGNvZGUgLmNvbmZpZ30sIHtAY29kZSAuZ2l0Y29uZmlnfSwge0Bjb2RlIC5naXRtb2R1bGVzfSBmaWxlLgpAQCAtNTAsOSArNTEsNiBAQCBwdWJsaWMgY2xhc3MgQ29uZmlnIHsKIAogCXByaXZhdGUgc3RhdGljIGZpbmFsIFN0cmluZ1tdIEVNUFRZX1NUUklOR19BUlJBWSA9IHt9OwogCi0Jc3RhdGljIGZpbmFsIGxvbmcgS2lCID0gMTAyNDsKLQlzdGF0aWMgZmluYWwgbG9uZyBNaUIgPSAxMDI0ICogS2lCOwotCXN0YXRpYyBmaW5hbCBsb25nIEdpQiA9IDEwMjQgKiBNaUI7CiAJcHJpdmF0ZSBzdGF0aWMgZmluYWwgaW50IE1BWF9ERVBUSCA9IDEwOwogCiAJcHJpdmF0ZSBzdGF0aWMgZmluYWwgVHlwZWRDb25maWdHZXR0ZXIgREVGQVVMVF9HRVRURVIgPSBuZXcgRGVmYXVsdFR5cGVkQ29uZmlnR2V0dGVyKCk7CkBAIC03NjUsMTggKzc2Myw4IEBAIHB1YmxpYyB2b2lkIHNldEludChmaW5hbCBTdHJpbmcgc2VjdGlvbiwgZmluYWwgU3RyaW5nIHN1YnNlY3Rpb24sCiAJICovCiAJcHVibGljIHZvaWQgc2V0TG9uZyhmaW5hbCBTdHJpbmcgc2VjdGlvbiwgZmluYWwgU3RyaW5nIHN1YnNlY3Rpb24sCiAJCQlmaW5hbCBTdHJpbmcgbmFtZSwgZmluYWwgbG9uZyB2YWx1ZSkgewotCQlmaW5hbCBTdHJpbmcgczsKLQotCQlpZiAodmFsdWUgPj0gR2lCICYmICh2YWx1ZSAlIEdpQikgPT0gMCkKLQkJCXMgPSBTdHJpbmcudmFsdWVPZih2YWx1ZSAvIEdpQikgKyAiZyI7IC8vJE5PTi1OTFMtMSQKLQkJZWxzZSBpZiAodmFsdWUgPj0gTWlCICYmICh2YWx1ZSAlIE1pQikgPT0gMCkKLQkJCXMgPSBTdHJpbmcudmFsdWVPZih2YWx1ZSAvIE1pQikgKyAibSI7IC8vJE5PTi1OTFMtMSQKLQkJZWxzZSBpZiAodmFsdWUgPj0gS2lCICYmICh2YWx1ZSAlIEtpQikgPT0gMCkKLQkJCXMgPSBTdHJpbmcudmFsdWVPZih2YWx1ZSAvIEtpQikgKyAiayI7IC8vJE5PTi1OTFMtMSQKLQkJZWxzZQotCQkJcyA9IFN0cmluZy52YWx1ZU9mKHZhbHVlKTsKLQotCQlzZXRTdHJpbmcoc2VjdGlvbiwgc3Vic2VjdGlvbiwgbmFtZSwgcyk7CisJCXNldFN0cmluZyhzZWN0aW9uLCBzdWJzZWN0aW9uLCBuYW1lLAorCQkJCVN0cmluZ1V0aWxzLmZvcm1hdFdpdGhTdWZmaXgodmFsdWUpKTsKIAl9CiAKIAkvKioKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0NvbmZpZ1NuYXBzaG90LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9Db25maWdTbmFwc2hvdC5qYXZhCmluZGV4IDMwM2RkZjYuLjNlYWM0NGEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0NvbmZpZ1NuYXBzaG90LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvQ29uZmlnU25hcHNob3QuamF2YQpAQCAtMjUzLDcgKzI1Myw4IEBAIHB1YmxpYyBib29sZWFuIGNvbnRhaW5zKE9iamVjdCBuZWVkbGUpIHsKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyBJdGVyYXRvcjxTdHJpbmc+IGl0ZXJhdG9yKCkgewogCQkJZmluYWwgSXRlcmF0b3I8U3RyaW5nPiBpID0gbmFtZXMudmFsdWVzKCkuaXRlcmF0b3IoKTsKLQkJCXJldHVybiBuZXcgSXRlcmF0b3I8U3RyaW5nPigpIHsKKwkJCXJldHVybiBuZXcgSXRlcmF0b3I8PigpIHsKKwogCQkJCUBPdmVycmlkZQogCQkJCXB1YmxpYyBib29sZWFuIGhhc05leHQoKSB7CiAJCQkJCXJldHVybiBpLmhhc05leHQoKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0RlZmF1bHRUeXBlZENvbmZpZ0dldHRlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvRGVmYXVsdFR5cGVkQ29uZmlnR2V0dGVyLmphdmEKaW5kZXggY2MwYjk5NS4uOWY5NmJjZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvRGVmYXVsdFR5cGVkQ29uZmlnR2V0dGVyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvRGVmYXVsdFR5cGVkQ29uZmlnR2V0dGVyLmphdmEKQEAgLTEyNiwzMCArMTI2LDExIEBAIHB1YmxpYyBsb25nIGdldExvbmcoQ29uZmlnIGNvbmZpZywgU3RyaW5nIHNlY3Rpb24sIFN0cmluZyBzdWJzZWN0aW9uLAogCQlpZiAoc3RyID09IG51bGwpIHsKIAkJCXJldHVybiBkZWZhdWx0VmFsdWU7CiAJCX0KLQkJU3RyaW5nIG4gPSBzdHIudHJpbSgpOwotCQlpZiAobi5sZW5ndGgoKSA9PSAwKSB7Ci0JCQlyZXR1cm4gZGVmYXVsdFZhbHVlOwotCQl9Ci0JCWxvbmcgbXVsID0gMTsKLQkJc3dpdGNoIChTdHJpbmdVdGlscy50b0xvd2VyQ2FzZShuLmNoYXJBdChuLmxlbmd0aCgpIC0gMSkpKSB7Ci0JCWNhc2UgJ2cnOgotCQkJbXVsID0gQ29uZmlnLkdpQjsKLQkJCWJyZWFrOwotCQljYXNlICdtJzoKLQkJCW11bCA9IENvbmZpZy5NaUI7Ci0JCQlicmVhazsKLQkJY2FzZSAnayc6Ci0JCQltdWwgPSBDb25maWcuS2lCOwotCQkJYnJlYWs7Ci0JCX0KLQkJaWYgKG11bCA+IDEpIHsKLQkJCW4gPSBuLnN1YnN0cmluZygwLCBuLmxlbmd0aCgpIC0gMSkudHJpbSgpOwotCQl9Ci0JCWlmIChuLmxlbmd0aCgpID09IDApIHsKLQkJCXJldHVybiBkZWZhdWx0VmFsdWU7Ci0JCX0KIAkJdHJ5IHsKLQkJCXJldHVybiBtdWwgKiBMb25nLnBhcnNlTG9uZyhuKTsKKwkJCXJldHVybiBTdHJpbmdVdGlscy5wYXJzZUxvbmdXaXRoU3VmZml4KHN0ciwgZmFsc2UpOworCQl9IGNhdGNoIChTdHJpbmdJbmRleE91dE9mQm91bmRzRXhjZXB0aW9uIGUpIHsKKwkJCS8vIEVtcHR5CisJCQlyZXR1cm4gZGVmYXVsdFZhbHVlOwogCQl9IGNhdGNoIChOdW1iZXJGb3JtYXRFeGNlcHRpb24gbmZlKSB7CiAJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKE1lc3NhZ2VGb3JtYXQuZm9ybWF0KAogCQkJCQlKR2l0VGV4dC5nZXQoKS5pbnZhbGlkSW50ZWdlclZhbHVlLCBzZWN0aW9uLCBuYW1lLCBzdHIpLApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvRmlsZU1vZGVDYWNoZS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvRmlsZU1vZGVDYWNoZS5qYXZhCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNDlkMTI3Li4wMDAwMDAwCi0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL0ZpbGVNb2RlQ2FjaGUuamF2YQorKysgL2Rldi9udWxsCkBAIC0xLDMwOSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDIzLCBUaG9tYXMgV29sZiA8dHdvbGZAYXBhY2hlLm9yZz4gYW5kIG90aGVycwotICoKLSAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQotICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAotICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KLSAqCi0gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCi0gKi8KLXBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC5saWI7Ci0KLWltcG9ydCBqYXZhLmlvLkZpbGU7Ci1pbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKLWltcG9ydCBqYXZhLm5pby5maWxlLkludmFsaWRQYXRoRXhjZXB0aW9uOwotaW1wb3J0IGphdmEubmlvLmZpbGUuTGlua09wdGlvbjsKLWltcG9ydCBqYXZhLm5pby5maWxlLlBhdGg7Ci1pbXBvcnQgamF2YS5uaW8uZmlsZS5hdHRyaWJ1dGUuQmFzaWNGaWxlQXR0cmlidXRlVmlldzsKLWltcG9ydCBqYXZhLm5pby5maWxlLmF0dHJpYnV0ZS5CYXNpY0ZpbGVBdHRyaWJ1dGVzOwotaW1wb3J0IGphdmEudXRpbC5IYXNoTWFwOwotaW1wb3J0IGphdmEudXRpbC5NYXA7Ci0KLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmFubm90YXRpb25zLk5vbk51bGw7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5GaWxlVXRpbHM7Ci0KLS8qKgotICogQSBoaWVyYXJjaGljYWwgY2FjaGUgb2Yge0BsaW5rIEZpbGVNb2RlfXMgcGVyIGdpdCBwYXRoLgotICoKLSAqIEBzaW5jZSA1LjEzLjMKLSAqLwotcHVibGljIGNsYXNzIEZpbGVNb2RlQ2FjaGUgewotCi0JQE5vbk51bGwKLQlwcml2YXRlIGZpbmFsIENhY2hlSXRlbSByb290ID0gbmV3IENhY2hlSXRlbShGaWxlTW9kZS5UUkVFKTsKLQotCUBOb25OdWxsCi0JcHJpdmF0ZSBmaW5hbCBSZXBvc2l0b3J5IHJlcG87Ci0KLQkvKioKLQkgKiBDcmVhdGVzIGEgbmV3IHtAbGluayBGaWxlTW9kZUNhY2hlfSBmb3IgYSB7QGxpbmsgUmVwb3NpdG9yeX0uCi0JICoKLQkgKiBAcGFyYW0gcmVwbwotCSAqICAgICAgICAgICAge0BsaW5rIFJlcG9zaXRvcnl9IHRoaXMgY2FjaGUgaXMgZm9yCi0JICovCi0JcHVibGljIEZpbGVNb2RlQ2FjaGUoQE5vbk51bGwgUmVwb3NpdG9yeSByZXBvKSB7Ci0JCXRoaXMucmVwbyA9IHJlcG87Ci0JfQotCi0JLyoqCi0JICogUmV0cmlldmVzIHRoZSB7QGxpbmsgUmVwb3NpdG9yeX0uCi0JICoKLQkgKiBAcmV0dXJuIHRoZSB7QGxpbmsgUmVwb3NpdG9yeX0gdGhpcyB7QGxpbmsgRmlsZU1vZGVDYWNoZX0gd2FzIGNyZWF0ZWQgZm9yCi0JICovCi0JQE5vbk51bGwKLQlwdWJsaWMgUmVwb3NpdG9yeSBnZXRSZXBvc2l0b3J5KCkgewotCQlyZXR1cm4gcmVwbzsKLQl9Ci0KLQkvKioKLQkgKiBPYnRhaW5zIHRoZSB7QGxpbmsgQ2FjaGVJdGVtfSBmb3IgdGhlIHdvcmtpbmcgdHJlZSByb290LgotCSAqCi0JICogQHJldHVybiB0aGUge0BsaW5rIENhY2hlSXRlbX0KLQkgKi8KLQlATm9uTnVsbAotCXB1YmxpYyBDYWNoZUl0ZW0gZ2V0Um9vdCgpIHsKLQkJcmV0dXJuIHJvb3Q7Ci0JfQotCi0JLyoqCi0JICogRW5zdXJlIHRoYXQgdGhlIGdpdmVuIHBhcmVudCBkaXJlY3RvcnkgZXhpc3RzLCBhbmQgY2FjaGUgdGhlIGluZm9ybWF0aW9uCi0JICogdGhhdCBnaXRQYXRoIHJlZmVycyB0byBhIGZpbGUuCi0JICoKLQkgKiBAcGFyYW0gZ2l0UGF0aAotCSAqICAgICAgICAgICAgb2YgdGhlIGZpbGUgdG8gYmUgd3JpdHRlbgotCSAqIEBwYXJhbSBwYXJlbnREaXIKLQkgKiAgICAgICAgICAgIGRpcmVjdG9yeSBpbiB3aGljaCB0aGUgZmlsZSBzaGFsbCBiZSBwbGFjZWQsIGFzc3VtZWQgdG8gYmUgdGhlCi0JICogICAgICAgICAgICBwYXJlbnQgb2YgdGhlIHtAY29kZSBnaXRQYXRofQotCSAqIEBwYXJhbSBtYWtlU3BhY2UKLQkgKiAgICAgICAgICAgIHdoZXRoZXIgdG8gZGVsZXRlIGEgcG9zc2libHkgZXhpc3RpbmcgZmlsZSBhdAotCSAqICAgICAgICAgICAge0Bjb2RlIHBhcmVudERpcn0KLQkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCi0JICogICAgICAgICAgICAgaWYgdGhlIGRpcmVjdG9yeSBjYW5ub3QgYmUgY3JlYXRlZCwgaWYgbmVjZXNzYXJ5Ci0JICovCi0JcHVibGljIHZvaWQgc2FmZUNyZWF0ZVBhcmVudERpcmVjdG9yeShTdHJpbmcgZ2l0UGF0aCwgRmlsZSBwYXJlbnREaXIsCi0JCQlib29sZWFuIG1ha2VTcGFjZSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJQ2FjaGVJdGVtIGNhY2hlZFBhcmVudCA9IHNhZmVDcmVhdGVEaXJlY3RvcnkoZ2l0UGF0aCwgcGFyZW50RGlyLAotCQkJCW1ha2VTcGFjZSk7Ci0JCWNhY2hlZFBhcmVudC5yZW1vdmUoZ2l0UGF0aC5zdWJzdHJpbmcoZ2l0UGF0aC5sYXN0SW5kZXhPZignLycpICsgMSkpOwotCX0KLQotCS8qKgotCSAqIEVuc3VyZXMgdGhlIGdpdmVuIGRpcmVjdG9yeSB7QGNvZGUgZGlyfSB3aXRoIHRoZSBnaXZlbiBnaXQgcGF0aCBleGlzdHMuCi0JICoKLQkgKiBAcGFyYW0gZ2l0UGF0aAotCSAqICAgICAgICAgICAgb2YgYSBmaWxlIHRvIGJlIHdyaXR0ZW4KLQkgKiBAcGFyYW0gZGlyCi0JICogICAgICAgICAgICBkaXJlY3RvcnkgaW4gd2hpY2ggdGhlIGZpbGUgc2hhbGwgYmUgcGxhY2VkLCBhc3N1bWVkIHRvIGJlIHRoZQotCSAqICAgICAgICAgICAgcGFyZW50IG9mIHRoZSB7QGNvZGUgZ2l0UGF0aH0KLQkgKiBAcGFyYW0gbWFrZVNwYWNlCi0JICogICAgICAgICAgICB3aGV0aGVyIHRvIHJlbW92ZSBhIGZpbGUgdGhhdCBhbHJlYWR5IGF0IHRoYXQgbmFtZQotCSAqIEByZXR1cm4gQSB7QGxpbmsgQ2FjaGVJdGVtfSBkZXNjcmliaW5nIHRoZSBkaXJlY3RvcnksIHdoaWNoIGlzIGd1YXJhbnRlZWQKLQkgKiAgICAgICAgIHRvIGV4aXN0Ci0JICogQHRocm93cyBJT0V4Y2VwdGlvbgotCSAqICAgICAgICAgICAgIGlmIHRoZSBkaXJlY3RvcnkgY2Fubm90IGJlIG1hZGUgdG8gZXhpc3QgYXQgdGhlIGdpdmVuCi0JICogICAgICAgICAgICAgbG9jYXRpb24KLQkgKi8KLQlwdWJsaWMgQ2FjaGVJdGVtIHNhZmVDcmVhdGVEaXJlY3RvcnkoU3RyaW5nIGdpdFBhdGgsIEZpbGUgZGlyLAotCQkJYm9vbGVhbiBtYWtlU3BhY2UpIHRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCUZTIGZzID0gcmVwby5nZXRGUygpOwotCQlpbnQgaSA9IGdpdFBhdGgubGFzdEluZGV4T2YoJy8nKTsKLQkJU3RyaW5nIHBhcmVudFBhdGggPSBudWxsOwotCQlpZiAoaSA+PSAwKSB7Ci0JCQlpZiAoKG1ha2VTcGFjZSAmJiBkaXIuaXNGaWxlKCkpIHx8IGZzLmlzU3ltTGluayhkaXIpKSB7Ci0JCQkJRmlsZVV0aWxzLmRlbGV0ZShkaXIpOwotCQkJfQotCQkJcGFyZW50UGF0aCA9IGdpdFBhdGguc3Vic3RyaW5nKDAsIGkpOwotCQkJZGVsZXRlU3ltbGlua1BhcmVudChmcywgcGFyZW50UGF0aCwgcmVwby5nZXRXb3JrVHJlZSgpKTsKLQkJfQotCQlGaWxlVXRpbHMubWtkaXJzKGRpciwgdHJ1ZSk7Ci0JCUNhY2hlSXRlbSBjYWNoZWRQYXJlbnQgPSBnZXRSb290KCk7Ci0JCWlmIChwYXJlbnRQYXRoICE9IG51bGwpIHsKLQkJCWNhY2hlZFBhcmVudCA9IGFkZChwYXJlbnRQYXRoLCBGaWxlTW9kZS5UUkVFKTsKLQkJfQotCQlyZXR1cm4gY2FjaGVkUGFyZW50OwotCX0KLQotCXByaXZhdGUgdm9pZCBkZWxldGVTeW1saW5rUGFyZW50KEZTIGZzLCBTdHJpbmcgZ2l0UGF0aCwgRmlsZSB3b3JraW5nVHJlZSkKLQkJCXRocm93cyBJT0V4Y2VwdGlvbiB7Ci0JCWlmICghZnMuc3VwcG9ydHNTeW1saW5rcygpKSB7Ci0JCQlyZXR1cm47Ci0JCX0KLQkJU3RyaW5nW10gcGFydHMgPSBnaXRQYXRoLnNwbGl0KCIvIik7IC8vJE5PTi1OTFMtMSQKLQkJaW50IG4gPSBwYXJ0cy5sZW5ndGg7Ci0JCUNhY2hlSXRlbSBjYWNoZWQgPSBnZXRSb290KCk7Ci0JCUZpbGUgcCA9IHdvcmtpbmdUcmVlOwotCQlmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewotCQkJcCA9IG5ldyBGaWxlKHAsIHBhcnRzW2ldKTsKLQkJCUNhY2hlSXRlbSBjYWNoZWRDaGlsZCA9IGNhY2hlZCAhPSBudWxsID8gY2FjaGVkLmNoaWxkKHBhcnRzW2ldKQotCQkJCQk6IG51bGw7Ci0JCQlib29sZWFuIGRlbGV0ZSA9IGZhbHNlOwotCQkJaWYgKGNhY2hlZENoaWxkICE9IG51bGwpIHsKLQkJCQlpZiAoRmlsZU1vZGUuU1lNTElOSy5lcXVhbHMoY2FjaGVkQ2hpbGQuZ2V0TW9kZSgpKSkgewotCQkJCQlkZWxldGUgPSB0cnVlOwotCQkJCX0KLQkJCX0gZWxzZSB7Ci0JCQkJdHJ5IHsKLQkJCQkJUGF0aCBuaW9QYXRoID0gRmlsZVV0aWxzLnRvUGF0aChwKTsKLQkJCQkJQmFzaWNGaWxlQXR0cmlidXRlcyBhdHRyaWJ1dGVzID0gbmlvUGF0aC5nZXRGaWxlU3lzdGVtKCkKLQkJCQkJCQkucHJvdmlkZXIoKQotCQkJCQkJCS5nZXRGaWxlQXR0cmlidXRlVmlldyhuaW9QYXRoLAotCQkJCQkJCQkJQmFzaWNGaWxlQXR0cmlidXRlVmlldy5jbGFzcywKLQkJCQkJCQkJCUxpbmtPcHRpb24uTk9GT0xMT1dfTElOS1MpCi0JCQkJCQkJLnJlYWRBdHRyaWJ1dGVzKCk7Ci0JCQkJCWlmIChhdHRyaWJ1dGVzLmlzU3ltYm9saWNMaW5rKCkpIHsKLQkJCQkJCWRlbGV0ZSA9IHAuaXNEaXJlY3RvcnkoKTsKLQkJCQkJfSBlbHNlIGlmIChhdHRyaWJ1dGVzLmlzUmVndWxhckZpbGUoKSkgewotCQkJCQkJYnJlYWs7Ci0JCQkJCX0KLQkJCQl9IGNhdGNoIChJbnZhbGlkUGF0aEV4Y2VwdGlvbiB8IElPRXhjZXB0aW9uIGUpIHsKLQkJCQkJLy8gSWYgd2UgY2FuJ3QgZ2V0IHRoZSBhdHRyaWJ1dGVzIHRoZSBwYXRoIGRvZXMgbm90IGV4aXN0LAotCQkJCQkvLyBvciBpZiBpdCBkb2VzIGEgc3Vic2VxdWVudCBta2RpcnMoKSB3aWxsIGFsc28gdGhyb3cgYW4KLQkJCQkJLy8gZXhjZXB0aW9uLgotCQkJCQlicmVhazsKLQkJCQl9Ci0JCQl9Ci0JCQlpZiAoZGVsZXRlKSB7Ci0JCQkJLy8gRGVsZXRlcyB0aGUgc3ltbGluawotCQkJCUZpbGVVdGlscy5kZWxldGUocCwgRmlsZVV0aWxzLlNLSVBfTUlTU0lORyk7Ci0JCQkJaWYgKGNhY2hlZCAhPSBudWxsKSB7Ci0JCQkJCWNhY2hlZC5yZW1vdmUocGFydHNbaV0pOwotCQkJCX0KLQkJCQlicmVhazsKLQkJCX0KLQkJCWNhY2hlZCA9IGNhY2hlZENoaWxkOwotCQl9Ci0JfQotCi0JLyoqCi0JICogUmVjb3JkcyB0aGUgZ2l2ZW4ge0BsaW5rIEZpbGVNb2RlfSBmb3IgdGhlIGdpdmVuIGdpdCBwYXRoIGluIHRoZSBjYWNoZS4KLQkgKiBJZiBhbiBlbnRyeSBhbHJlYWR5IGV4aXN0cyBmb3IgdGhlIGdpdmVuIHBhdGgsIHRoZSBwcmV2aW91c2x5IGNhY2hlZCBmaWxlCi0JICogbW9kZSBpcyBvdmVyd3JpdHRlbi4KLQkgKgotCSAqIEBwYXJhbSBnaXRQYXRoCi0JICogICAgICAgICAgICB0byBjYWNoZSB0aGUge0BsaW5rIEZpbGVNb2RlfSBmb3IKLQkgKiBAcGFyYW0gZmluYWxNb2RlCi0JICogICAgICAgICAgICB7QGxpbmsgRmlsZU1vZGV9IHRvIGNhY2hlCi0JICogQHJldHVybiB0aGUge0BsaW5rIENhY2hlSXRlbX0gZm9yIHRoZSBwYXRoCi0JICovCi0JQE5vbk51bGwKLQlwcml2YXRlIENhY2hlSXRlbSBhZGQoU3RyaW5nIGdpdFBhdGgsIEZpbGVNb2RlIGZpbmFsTW9kZSkgewotCQlpZiAoZ2l0UGF0aC5pc0VtcHR5KCkpIHsKLQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oKTsKLQkJfQotCQlTdHJpbmdbXSBwYXJ0cyA9IGdpdFBhdGguc3BsaXQoIi8iKTsgLy8kTk9OLU5MUy0xJAotCQlpbnQgbiA9IHBhcnRzLmxlbmd0aDsKLQkJaW50IGkgPSAwOwotCQlDYWNoZUl0ZW0gY3VyciA9IGdldFJvb3QoKTsKLQkJd2hpbGUgKGkgPCBuKSB7Ci0JCQlDYWNoZUl0ZW0gbmV4dCA9IGN1cnIuY2hpbGQocGFydHNbaV0pOwotCQkJaWYgKG5leHQgPT0gbnVsbCkgewotCQkJCWJyZWFrOwotCQkJfQotCQkJY3VyciA9IG5leHQ7Ci0JCQlpKys7Ci0JCX0KLQkJaWYgKGkgPT0gbikgewotCQkJY3Vyci5zZXRNb2RlKGZpbmFsTW9kZSk7Ci0JCX0gZWxzZSB7Ci0JCQl3aGlsZSAoaSA8IG4pIHsKLQkJCQljdXJyID0gY3Vyci5pbnNlcnQocGFydHNbaV0sCi0JCQkJCQlpICsgMSA9PSBuID8gZmluYWxNb2RlIDogRmlsZU1vZGUuVFJFRSk7Ci0JCQkJaSsrOwotCQkJfQotCQl9Ci0JCXJldHVybiBjdXJyOwotCX0KLQotCS8qKgotCSAqIEFuIGl0ZW0gZnJvbSBhIHtAbGluayBGaWxlTW9kZUNhY2hlfSwgcmVjb3JkaW5nIGluZm9ybWF0aW9uIGFib3V0IGEgZ2l0Ci0JICogcGF0aCAoa25vd24gZnJvbSBjb250ZXh0KS4KLQkgKi8KLQlwdWJsaWMgc3RhdGljIGNsYXNzIENhY2hlSXRlbSB7Ci0KLQkJQE5vbk51bGwKLQkJcHJpdmF0ZSBGaWxlTW9kZSBtb2RlOwotCi0JCXByaXZhdGUgTWFwPFN0cmluZywgQ2FjaGVJdGVtPiBjaGlsZHJlbjsKLQotCQkvKioKLQkJICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgQ2FjaGVJdGVtfS4KLQkJICoKLQkJICogQHBhcmFtIG1vZGUKLQkJICogICAgICAgICAgICB7QGxpbmsgRmlsZU1vZGV9IHRvIGNhY2hlCi0JCSAqLwotCQlwdWJsaWMgQ2FjaGVJdGVtKEBOb25OdWxsIEZpbGVNb2RlIG1vZGUpIHsKLQkJCXRoaXMubW9kZSA9IG1vZGU7Ci0JCX0KLQotCQkvKioKLQkJICogUmV0cmlldmVzIHRoZSBjYWNoZWQge0BsaW5rIEZpbGVNb2RlfS4KLQkJICoKLQkJICogQHJldHVybiB0aGUge0BsaW5rIEZpbGVNb2RlfQotCQkgKi8KLQkJQE5vbk51bGwKLQkJcHVibGljIEZpbGVNb2RlIGdldE1vZGUoKSB7Ci0JCQlyZXR1cm4gbW9kZTsKLQkJfQotCi0JCS8qKgotCQkgKiBSZXRyaWV2ZXMgYW4gaW1tZWRpYXRlIGNoaWxkIG9mIHRoaXMge0BsaW5rIENhY2hlSXRlbX0gYnkgbmFtZS4KLQkJICoKLQkJICogQHBhcmFtIGNoaWxkTmFtZQotCQkgKiAgICAgICAgICAgIG5hbWUgb2YgdGhlIGNoaWxkIHRvIGdldAotCQkgKiBAcmV0dXJuIHRoZSB7QGxpbmsgQ2FjaGVJdGVtfSwgb3Ige0Bjb2RlIG51bGx9IGlmIG5vIHN1Y2ggY2hpbGQgaXMKLQkJICogICAgICAgICBrbm93bgotCQkgKi8KLQkJcHVibGljIENhY2hlSXRlbSBjaGlsZChTdHJpbmcgY2hpbGROYW1lKSB7Ci0JCQlpZiAoY2hpbGRyZW4gPT0gbnVsbCkgewotCQkJCXJldHVybiBudWxsOwotCQkJfQotCQkJcmV0dXJuIGNoaWxkcmVuLmdldChjaGlsZE5hbWUpOwotCQl9Ci0KLQkJLyoqCi0JCSAqIEluc2VydHMgYSBuZXcgY2FjaGVkIHtAbGluayBGaWxlTW9kZX0gYXMgYW4gaW1tZWRpYXRlIGNoaWxkIG9mIHRoaXMKLQkJICoge0BsaW5rIENhY2hlSXRlbX0uIElmIHRoZXJlIGlzIGFscmVhZHkgYSBjaGlsZCB3aXRoIHRoZSBzYW1lIG5hbWUsIGl0Ci0JCSAqIGlzIG92ZXJ3cml0dGVuLgotCQkgKgotCQkgKiBAcGFyYW0gY2hpbGROYW1lCi0JCSAqICAgICAgICAgICAgbmFtZSBvZiB0aGUgY2hpbGQgdG8gY3JlYXRlCi0JCSAqIEBwYXJhbSBjaGlsZE1vZGUKLQkJICogICAgICAgICAgICB7QGxpbmsgRmlsZU1vZGV9IHRvIGNhY2hlCi0JCSAqIEByZXR1cm4gdGhlIG5ldyB7QGxpbmsgQ2FjaGVJdGVtfSBjcmVhdGVkIGZvciB0aGUgY2hpbGQKLQkJICovCi0JCXB1YmxpYyBDYWNoZUl0ZW0gaW5zZXJ0KFN0cmluZyBjaGlsZE5hbWUsIEBOb25OdWxsIEZpbGVNb2RlIGNoaWxkTW9kZSkgewotCQkJaWYgKCFGaWxlTW9kZS5UUkVFLmVxdWFscyhtb2RlKSkgewotCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oKTsKLQkJCX0KLQkJCWlmIChjaGlsZHJlbiA9PSBudWxsKSB7Ci0JCQkJY2hpbGRyZW4gPSBuZXcgSGFzaE1hcDw+KCk7Ci0JCQl9Ci0JCQlDYWNoZUl0ZW0gbmV3SXRlbSA9IG5ldyBDYWNoZUl0ZW0oY2hpbGRNb2RlKTsKLQkJCWNoaWxkcmVuLnB1dChjaGlsZE5hbWUsIG5ld0l0ZW0pOwotCQkJcmV0dXJuIG5ld0l0ZW07Ci0JCX0KLQotCQkvKioKLQkJICogUmVtb3ZlcyB0aGUgaW1tZWRpYXRlIGNoaWxkIHdpdGggdGhlIGdpdmVuIG5hbWUuCi0JCSAqCi0JCSAqIEBwYXJhbSBjaGlsZE5hbWUKLQkJICogICAgICAgICAgICBuYW1lIG9mIHRoZSBjaGlsZCB0byByZW1vdmUKLQkJICogQHJldHVybiB0aGUgcHJldmlvdXNseSBjYWNoZWQge0BsaW5rIENhY2hlSXRlbX0sIGlmIGFueQotCQkgKi8KLQkJcHVibGljIENhY2hlSXRlbSByZW1vdmUoU3RyaW5nIGNoaWxkTmFtZSkgewotCQkJaWYgKGNoaWxkcmVuID09IG51bGwpIHsKLQkJCQlyZXR1cm4gbnVsbDsKLQkJCX0KLQkJCXJldHVybiBjaGlsZHJlbi5yZW1vdmUoY2hpbGROYW1lKTsKLQkJfQotCi0JCXZvaWQgc2V0TW9kZShATm9uTnVsbCBGaWxlTW9kZSBtb2RlKSB7Ci0JCQl0aGlzLm1vZGUgPSBtb2RlOwotCQkJaWYgKCFGaWxlTW9kZS5UUkVFLmVxdWFscyhtb2RlKSkgewotCQkJCWNoaWxkcmVuID0gbnVsbDsKLQkJCX0KLQkJfQotCX0KLQotfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0RGF0YWJhc2UuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL09iamVjdERhdGFiYXNlLmphdmEKaW5kZXggMjkzZWZlNC4uMDQyNjJjMCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0RGF0YWJhc2UuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9PYmplY3REYXRhYmFzZS5qYXZhCkBAIC0yMSw3ICsyMSw3IEBACiAgKiBBbiBvYmplY3QgZGF0YWJhc2Ugc3RvcmVzIG9uZSBvciBtb3JlIEdpdCBvYmplY3RzLCBpbmRleGVkIGJ5IHRoZWlyIHVuaXF1ZQogICoge0BsaW5rIG9yZy5lY2xpcHNlLmpnaXQubGliLk9iamVjdElkfS4KICAqLwotcHVibGljIGFic3RyYWN0IGNsYXNzIE9iamVjdERhdGFiYXNlIHsKK3B1YmxpYyBhYnN0cmFjdCBjbGFzcyBPYmplY3REYXRhYmFzZSBpbXBsZW1lbnRzIEF1dG9DbG9zZWFibGUgewogCS8qKgogCSAqIEluaXRpYWxpemUgYSBuZXcgZGF0YWJhc2UgaW5zdGFuY2UgZm9yIGFjY2Vzcy4KIAkgKi8KQEAgLTc0LDYgKzc0LDcgQEAgcHVibGljIHZvaWQgY3JlYXRlKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkvKioKIAkgKiBDbG9zZSBhbnkgcmVzb3VyY2VzIGhlbGQgYnkgdGhpcyBkYXRhYmFzZS4KIAkgKi8KKwlAT3ZlcnJpZGUKIAlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBjbG9zZSgpOwogCiAJLyoqCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9PYmplY3RJZE93bmVyTWFwLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9PYmplY3RJZE93bmVyTWFwLmphdmEKaW5kZXggYWQ1Mjk1NS4uMjkwMzkwOSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0SWRPd25lck1hcC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL09iamVjdElkT3duZXJNYXAuamF2YQpAQCAtMjAyLDcgKzIwMiw3IEBAIHB1YmxpYyBib29sZWFuIGlzRW1wdHkoKSB7CiAJLyoqIHtAaW5oZXJpdERvY30gKi8KIAlAT3ZlcnJpZGUKIAlwdWJsaWMgSXRlcmF0b3I8Vj4gaXRlcmF0b3IoKSB7Ci0JCXJldHVybiBuZXcgSXRlcmF0b3I8Vj4oKSB7CisJCXJldHVybiBuZXcgSXRlcmF0b3I8PigpIHsKIAkJCXByaXZhdGUgaW50IGZvdW5kOwogCQkJcHJpdmF0ZSBpbnQgZGlySWR4OwogCQkJcHJpdmF0ZSBpbnQgdGJsSWR4OwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0SWRTdWJjbGFzc01hcC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0SWRTdWJjbGFzc01hcC5qYXZhCmluZGV4IDY2YjI3OWEuLjBlMDE1YjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL09iamVjdElkU3ViY2xhc3NNYXAuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9PYmplY3RJZFN1YmNsYXNzTWFwLmphdmEKQEAgLTE2NSw3ICsxNjUsNyBAQCBwdWJsaWMgYm9vbGVhbiBpc0VtcHR5KCkgewogCS8qKiB7QGluaGVyaXREb2N9ICovCiAJQE92ZXJyaWRlCiAJcHVibGljIEl0ZXJhdG9yPFY+IGl0ZXJhdG9yKCkgewotCQlyZXR1cm4gbmV3IEl0ZXJhdG9yPFY+KCkgeworCQlyZXR1cm4gbmV3IEl0ZXJhdG9yPD4oKSB7CiAJCQlwcml2YXRlIGludCBmb3VuZDsKIAogCQkJcHJpdmF0ZSBpbnQgaTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL09iamVjdFJlYWRlci5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0UmVhZGVyLmphdmEKaW5kZXggNzE4ZWQ4OS4uYTJjNzM4MSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0UmVhZGVyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvT2JqZWN0UmVhZGVyLmphdmEKQEAgLTI2MSw3ICsyNjEsNyBAQCBwdWJsaWMgYWJzdHJhY3QgT2JqZWN0TG9hZGVyIG9wZW4oQW55T2JqZWN0SWQgb2JqZWN0SWQsIGludCB0eXBlSGludCkKIAlwdWJsaWMgPFQgZXh0ZW5kcyBPYmplY3RJZD4gQXN5bmNPYmplY3RMb2FkZXJRdWV1ZTxUPiBvcGVuKAogCQkJSXRlcmFibGU8VD4gb2JqZWN0SWRzLCBmaW5hbCBib29sZWFuIHJlcG9ydE1pc3NpbmcpIHsKIAkJZmluYWwgSXRlcmF0b3I8VD4gaWRJdHIgPSBvYmplY3RJZHMuaXRlcmF0b3IoKTsKLQkJcmV0dXJuIG5ldyBBc3luY09iamVjdExvYWRlclF1ZXVlPFQ+KCkgeworCQlyZXR1cm4gbmV3IEFzeW5jT2JqZWN0TG9hZGVyUXVldWU8PigpIHsKIAkJCXByaXZhdGUgVCBjdXI7CiAKIAkJCUBPdmVycmlkZQpAQCAtMzQ3LDcgKzM0Nyw3IEBAIHB1YmxpYyBsb25nIGdldE9iamVjdFNpemUoQW55T2JqZWN0SWQgb2JqZWN0SWQsIGludCB0eXBlSGludCkKIAlwdWJsaWMgPFQgZXh0ZW5kcyBPYmplY3RJZD4gQXN5bmNPYmplY3RTaXplUXVldWU8VD4gZ2V0T2JqZWN0U2l6ZSgKIAkJCUl0ZXJhYmxlPFQ+IG9iamVjdElkcywgZmluYWwgYm9vbGVhbiByZXBvcnRNaXNzaW5nKSB7CiAJCWZpbmFsIEl0ZXJhdG9yPFQ+IGlkSXRyID0gb2JqZWN0SWRzLml0ZXJhdG9yKCk7Ci0JCXJldHVybiBuZXcgQXN5bmNPYmplY3RTaXplUXVldWU8VD4oKSB7CisJCXJldHVybiBuZXcgQXN5bmNPYmplY3RTaXplUXVldWU8PigpIHsKIAkJCXByaXZhdGUgVCBjdXI7CiAKIAkJCXByaXZhdGUgbG9uZyBzejsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL1JlcG9zaXRvcnkuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbGliL1JlcG9zaXRvcnkuamF2YQppbmRleCBkM2IzYzZlLi5kYjI1NzFjIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L2xpYi9SZXBvc2l0b3J5LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9saWIvUmVwb3NpdG9yeS5qYXZhCkBAIC0xMDUxLDEzICsxMDUxLDE0IEBAIHB1YmxpYyBTdHJpbmcgZ2V0QnJhbmNoKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkgKiA8cD4KIAkgKiBXaGVuIGEgcmVwb3NpdG9yeSBib3Jyb3dzIG9iamVjdHMgZnJvbSBhbm90aGVyIHJlcG9zaXRvcnksIGl0IGNhbgogCSAqIGFkdmVydGlzZSB0aGF0IGl0IHNhZmVseSBoYXMgdGhhdCBvdGhlciByZXBvc2l0b3J5J3MgcmVmZXJlbmNlcywgd2l0aG91dAotCSAqIGV4cG9zaW5nIGFueSBvdGhlciBkZXRhaWxzIGFib3V0IHRoZSBvdGhlciByZXBvc2l0b3J5LiAgVGhpcyBtYXkgaGVscAotCSAqIGEgY2xpZW50IHRyeWluZyB0byBwdXNoIGNoYW5nZXMgYXZvaWQgcHVzaGluZyBtb3JlIHRoYW4gaXQgbmVlZHMgdG8uCisJICogZXhwb3NpbmcgYW55IG90aGVyIGRldGFpbHMgYWJvdXQgdGhlIG90aGVyIHJlcG9zaXRvcnkuIFRoaXMgbWF5IGhlbHAgYQorCSAqIGNsaWVudCB0cnlpbmcgdG8gcHVzaCBjaGFuZ2VzIGF2b2lkIHB1c2hpbmcgbW9yZSB0aGFuIGl0IG5lZWRzIHRvLgogCSAqCiAJICogQHJldHVybiB1bm1vZGlmaWFibGUgY29sbGVjdGlvbiBvZiBvdGhlciBrbm93biBvYmplY3RzLgorCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KIAkgKi8KIAlATm9uTnVsbAotCXB1YmxpYyBTZXQ8T2JqZWN0SWQ+IGdldEFkZGl0aW9uYWxIYXZlcygpIHsKKwlwdWJsaWMgU2V0PE9iamVjdElkPiBnZXRBZGRpdGlvbmFsSGF2ZXMoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlyZXR1cm4gQ29sbGVjdGlvbnMuZW1wdHlTZXQoKTsKIAl9CiAKQEAgLTExNjAsMTIgKzExNjEsMTQgQEAgcHVibGljIFJlZiBwZWVsKFJlZiByZWYpIHsKIAkgKiBHZXQgYSBtYXAgd2l0aCBhbGwgb2JqZWN0cyByZWZlcmVuY2VkIGJ5IGEgcGVlbGVkIHJlZi4KIAkgKgogCSAqIEByZXR1cm4gYSBtYXAgd2l0aCBhbGwgb2JqZWN0cyByZWZlcmVuY2VkIGJ5IGEgcGVlbGVkIHJlZi4KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCiAJICovCiAJQE5vbk51bGwKLQlwdWJsaWMgTWFwPEFueU9iamVjdElkLCBTZXQ8UmVmPj4gZ2V0QWxsUmVmc0J5UGVlbGVkT2JqZWN0SWQoKSB7Ci0JCU1hcDxTdHJpbmcsIFJlZj4gYWxsUmVmcyA9IGdldEFsbFJlZnMoKTsKKwlwdWJsaWMgTWFwPEFueU9iamVjdElkLCBTZXQ8UmVmPj4gZ2V0QWxsUmVmc0J5UGVlbGVkT2JqZWN0SWQoKQorCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJTGlzdDxSZWY+IGFsbFJlZnMgPSBnZXRSZWZEYXRhYmFzZSgpLmdldFJlZnMoKTsKIAkJTWFwPEFueU9iamVjdElkLCBTZXQ8UmVmPj4gcmV0ID0gbmV3IEhhc2hNYXA8PihhbGxSZWZzLnNpemUoKSk7Ci0JCWZvciAoUmVmIHJlZiA6IGFsbFJlZnMudmFsdWVzKCkpIHsKKwkJZm9yIChSZWYgcmVmIDogYWxsUmVmcykgewogCQkJcmVmID0gcGVlbChyZWYpOwogCQkJQW55T2JqZWN0SWQgdGFyZ2V0ID0gcmVmLmdldFBlZWxlZE9iamVjdElkKCk7CiAJCQlpZiAodGFyZ2V0ID09IG51bGwpCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L21lcmdlL01lcmdlUmVzdWx0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L21lcmdlL01lcmdlUmVzdWx0LmphdmEKaW5kZXggMDYyYTVhOC4uMjBmYzNjMyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9tZXJnZS9NZXJnZVJlc3VsdC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbWVyZ2UvTWVyZ2VSZXN1bHQuamF2YQpAQCAtMTAwLDcgKzEwMCw3IEBAIHB1YmxpYyBMaXN0PFM+IGdldFNlcXVlbmNlcygpIHsKIAkvKioge0Bpbmhlcml0RG9jfSAqLwogCUBPdmVycmlkZQogCXB1YmxpYyBJdGVyYXRvcjxNZXJnZUNodW5rPiBpdGVyYXRvcigpIHsKLQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxNZXJnZUNodW5rPigpIHsKKwkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJaW50IGlkeDsKIAogCQkJQE92ZXJyaWRlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L21lcmdlL1Jlc29sdmVNZXJnZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbWVyZ2UvUmVzb2x2ZU1lcmdlci5qYXZhCmluZGV4IDcyMDY1ZmIuLjc3Njc2NjIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbWVyZ2UvUmVzb2x2ZU1lcmdlci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbWVyZ2UvUmVzb2x2ZU1lcmdlci5qYXZhCkBAIC0zLDcgKzMsNyBAQAogICogQ29weXJpZ2h0IChDKSAyMDEwLTIwMTIsIE1hdHRoaWFzIFNvaG4gPG1hdHRoaWFzLnNvaG5Ac2FwLmNvbT4KICAqIENvcHlyaWdodCAoQykgMjAxMiwgUmVzZWFyY2ggSW4gTW90aW9uIExpbWl0ZWQKICAqIENvcHlyaWdodCAoQykgMjAxNywgT2JlbyAobWF0aGlldS5jYXJ0YXVkQG9iZW8uZnIpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTgsIDIwMjMgVGhvbWFzIFdvbGYgPHR3b2xmQGFwYWNoZS5vcmc+CisgKiBDb3B5cmlnaHQgKEMpIDIwMTgsIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzCiAgKgogICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlCiAgKiB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBEaXN0cmlidXRpb24gTGljZW5zZSB2LiAxLjAgd2hpY2ggaXMgYXZhaWxhYmxlIGF0CkBAIC00NCwxMCArNDQsMTAgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuUmF3VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuUmF3VGV4dENvbXBhcmF0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaWZmLlNlcXVlbmNlOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZGlyY2FjaGUuQ2hlY2tvdXQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlQnVpbGRJdGVyYXRvcjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlQnVpbGRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpcmNhY2hlLkRpckNhY2hlQ2hlY2tvdXQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZUNoZWNrb3V0LkNoZWNrb3V0TWV0YWRhdGE7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5kaXJjYWNoZS5EaXJDYWNoZUVudHJ5OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLkJpbmFyeUJsb2JFeGNlcHRpb247CkBAIC03Niw2ICs3Niw3IEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC50cmVld2Fsay5Xb3JraW5nVHJlZUl0ZXJhdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuV29ya2luZ1RyZWVPcHRpb25zOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudHJlZXdhbGsuZmlsdGVyLlRyZWVGaWx0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC51dGlsLkZTOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5MZnNGYWN0b3J5OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5MZnNGYWN0b3J5Lkxmc0lucHV0U3RyZWFtOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQudXRpbC5UZW1wb3JhcnlCdWZmZXI7CkBAIC04NSwxMyArODYsNiBAQAogICogQSB0aHJlZS13YXkgbWVyZ2VyIHBlcmZvcm1pbmcgYSBjb250ZW50LW1lcmdlIGlmIG5lY2Vzc2FyeQogICovCiBwdWJsaWMgY2xhc3MgUmVzb2x2ZU1lcmdlciBleHRlbmRzIFRocmVlV2F5TWVyZ2VyIHsKLQotCS8qKgotCSAqIHtAbGluayBDaGVja291dH0gdG8gdXNlIGZvciBhY3R1YWxseSBjaGVja2luZyBvdXQgZmlsZXMgaWYKLQkgKiB7QGxpbmsgI2luQ29yZX0gaXMge0Bjb2RlIGZhbHNlfS4KLQkgKi8KLQlwcml2YXRlIENoZWNrb3V0IGNoZWNrb3V0OwotCiAJLyoqCiAJICogSWYgdGhlIG1lcmdlIGZhaWxzIChtZWFuczogbm90IHN0b3BwZWQgYmVjYXVzZSBvZiB1bnJlc29sdmVkIGNvbmZsaWN0cykKIAkgKiB0aGlzIGVudW0gaXMgdXNlZCB0byBleHBsYWluIHdoeSBpdCBmYWlsZWQKQEAgLTMyOCw3ICszMjIsNiBAQCBwcm90ZWN0ZWQgUmVzb2x2ZU1lcmdlcihSZXBvc2l0b3J5IGxvY2FsLCBib29sZWFuIGluQ29yZSkgewogCQkJaW1wbGljaXREaXJDYWNoZSA9IHRydWU7CiAJCQl3b3JraW5nVHJlZU9wdGlvbnMgPSBsb2NhbC5nZXRDb25maWcoKS5nZXQoV29ya2luZ1RyZWVPcHRpb25zLktFWSk7CiAJCX0KLQkJY2hlY2tvdXQgPSBuZXcgQ2hlY2tvdXQobm9uTnVsbFJlcG8oKSwgd29ya2luZ1RyZWVPcHRpb25zKTsKIAl9CiAKIAkvKioKQEAgLTQxOCwxNCArNDExLDEyIEBAIHByaXZhdGUgdm9pZCBjaGVja291dCgpIHRocm93cyBOb1dvcmtUcmVlRXhjZXB0aW9uLCBJT0V4Y2VwdGlvbiB7CiAJCWZvciAoTWFwLkVudHJ5PFN0cmluZywgRGlyQ2FjaGVFbnRyeT4gZW50cnkgOiB0b0JlQ2hlY2tlZE91dAogCQkJCS5lbnRyeVNldCgpKSB7CiAJCQlEaXJDYWNoZUVudHJ5IGNhY2hlRW50cnkgPSBlbnRyeS5nZXRWYWx1ZSgpOwotCQkJU3RyaW5nIGdpdFBhdGggPSBlbnRyeS5nZXRLZXkoKTsKIAkJCWlmIChjYWNoZUVudHJ5LmdldEZpbGVNb2RlKCkgPT0gRmlsZU1vZGUuR0lUTElOSykgewotCQkJCWNoZWNrb3V0LmNoZWNrb3V0R2l0bGluayhjYWNoZUVudHJ5LCBnaXRQYXRoKTsKKwkJCQluZXcgRmlsZShub25OdWxsUmVwbygpLmdldFdvcmtUcmVlKCksIGVudHJ5LmdldEtleSgpKS5ta2RpcnMoKTsKIAkJCX0gZWxzZSB7Ci0JCQkJY2hlY2tvdXQuY2hlY2tvdXQoY2FjaGVFbnRyeSwKLQkJCQkJCWNoZWNrb3V0TWV0YWRhdGEuZ2V0KGVudHJ5LmdldEtleSgpKSwgcmVhZGVyLAotCQkJCQkJZ2l0UGF0aCk7Ci0JCQkJbW9kaWZpZWRGaWxlcy5hZGQoZ2l0UGF0aCk7CisJCQkJRGlyQ2FjaGVDaGVja291dC5jaGVja291dEVudHJ5KGRiLCBjYWNoZUVudHJ5LCByZWFkZXIsIGZhbHNlLAorCQkJCQkJY2hlY2tvdXRNZXRhZGF0YS5nZXQoZW50cnkuZ2V0S2V5KCkpKTsKKwkJCQltb2RpZmllZEZpbGVzLmFkZChlbnRyeS5nZXRLZXkoKSk7CiAJCQl9CiAJCX0KIAl9CkBAIC00NTUsOCArNDQ2LDggQEAgcHJvdGVjdGVkIHZvaWQgY2xlYW5VcCgpIHRocm93cyBOb1dvcmtUcmVlRXhjZXB0aW9uLAogCQkJU3RyaW5nIG1wYXRoID0gbXBhdGhzSXQubmV4dCgpOwogCQkJRGlyQ2FjaGVFbnRyeSBlbnRyeSA9IGRjLmdldEVudHJ5KG1wYXRoKTsKIAkJCWlmIChlbnRyeSAhPSBudWxsKSB7Ci0JCQkJY2hlY2tvdXQuY2hlY2tvdXQoZW50cnksIGNoZWNrb3V0TWV0YWRhdGEuZ2V0KG1wYXRoKSwKLQkJCQkJCXJlYWRlciwgbXBhdGgpOworCQkJCURpckNhY2hlQ2hlY2tvdXQuY2hlY2tvdXRFbnRyeShkYiwgZW50cnksIHJlYWRlciwgZmFsc2UsCisJCQkJCQljaGVja291dE1ldGFkYXRhLmdldChtcGF0aCkpOwogCQkJfQogCQkJbXBhdGhzSXQucmVtb3ZlKCk7CiAJCX0KQEAgLTEwODUsMTIgKzEwNzYsMTUgQEAgcHJpdmF0ZSBGaWxlIHdyaXRlTWVyZ2VkRmlsZShUZW1wb3JhcnlCdWZmZXIgcmF3TWVyZ2VkLAogCQkJQXR0cmlidXRlcyBhdHRyaWJ1dGVzKQogCQkJdGhyb3dzIEZpbGVOb3RGb3VuZEV4Y2VwdGlvbiwgSU9FeGNlcHRpb24gewogCQlGaWxlIHdvcmtUcmVlID0gbm9uTnVsbFJlcG8oKS5nZXRXb3JrVHJlZSgpOwotCQlTdHJpbmcgZ2l0UGF0aCA9IHR3LmdldFBhdGhTdHJpbmcoKTsKLQkJRmlsZSBvZiA9IG5ldyBGaWxlKHdvcmtUcmVlLCBnaXRQYXRoKTsKKwkJRlMgZnMgPSBub25OdWxsUmVwbygpLmdldEZTKCk7CisJCUZpbGUgb2YgPSBuZXcgRmlsZSh3b3JrVHJlZSwgdHcuZ2V0UGF0aFN0cmluZygpKTsKKwkJRmlsZSBwYXJlbnRGb2xkZXIgPSBvZi5nZXRQYXJlbnRGaWxlKCk7CisJCWlmICghZnMuZXhpc3RzKHBhcmVudEZvbGRlcikpIHsKKwkJCXBhcmVudEZvbGRlci5ta2RpcnMoKTsKKwkJfQogCQlFb2xTdHJlYW1UeXBlIHN0cmVhbVR5cGUgPSBFb2xTdHJlYW1UeXBlVXRpbC5kZXRlY3RTdHJlYW1UeXBlKAogCQkJCU9wZXJhdGlvblR5cGUuQ0hFQ0tPVVRfT1AsIHdvcmtpbmdUcmVlT3B0aW9ucywKIAkJCQlhdHRyaWJ1dGVzKTsKLQkJY2hlY2tvdXQuc2FmZUNyZWF0ZVBhcmVudERpcmVjdG9yeShnaXRQYXRoLCBvZi5nZXRQYXJlbnRGaWxlKCksIGZhbHNlKTsKIAkJdHJ5IChPdXRwdXRTdHJlYW0gb3MgPSBFb2xTdHJlYW1UeXBlVXRpbC53cmFwT3V0cHV0U3RyZWFtKAogCQkJCW5ldyBCdWZmZXJlZE91dHB1dFN0cmVhbShuZXcgRmlsZU91dHB1dFN0cmVhbShvZikpLAogCQkJCXN0cmVhbVR5cGUpKSB7CkBAIC0xMzY4LDkgKzEzNjIsOSBAQCBwcm90ZWN0ZWQgYm9vbGVhbiBtZXJnZVRyZWVzKEFic3RyYWN0VHJlZUl0ZXJhdG9yIGJhc2VUcmVlLAogCQkJLy8gZ28gaW50byB0aGUgbmV3IGluZGV4LgogCQkJY2hlY2tvdXQoKTsKIAotCQkJLy8gQWxsIGNvbnRlbnQtbWVyZ2VzIGFyZSBzdWNjZXNzZnVsbHkgZG9uZS4gSWYgd2UgY2FuIG5vdyB3cml0ZQotCQkJLy8gdGhlIG5ldyBpbmRleCB3ZSBhcmUgb24gcXVpdGUgc2FmZSBncm91bmQuIEV2ZW4gaWYgdGhlIGNoZWNrb3V0Ci0JCQkvLyBvZiBmaWxlcyBjb21pbmcgZnJvbSAidGhlaXJzIiBmYWlscyB0aGUgdXNlciBjYW4gd29yayBhcm91bmQgc3VjaAorCQkJLy8gQWxsIGNvbnRlbnQtbWVyZ2VzIGFyZSBzdWNjZXNzZnVsbHkgZG9uZS4gSWYgd2UgY2FuIG5vdyB3cml0ZSB0aGUKKwkJCS8vIG5ldyBpbmRleCB3ZSBhcmUgb24gcXVpdGUgc2FmZSBncm91bmQuIEV2ZW4gaWYgdGhlIGNoZWNrb3V0IG9mCisJCQkvLyBmaWxlcyBjb21pbmcgZnJvbSAidGhlaXJzIiBmYWlscyB0aGUgdXNlciBjYW4gd29yayBhcm91bmQgc3VjaAogCQkJLy8gZmFpbHVyZXMgYnkgY2hlY2tpbmcgb3V0IHRoZSBpbmRleCBhZ2Fpbi4KIAkJCWlmICghYnVpbGRlci5jb21taXQoKSkgewogCQkJCWNsZWFuVXAoKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbm90ZXMvRmFub3V0QnVja2V0LmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L25vdGVzL0Zhbm91dEJ1Y2tldC5qYXZhCmluZGV4IDVlYTUxMWMuLjQ5M2JjZmIgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbm90ZXMvRmFub3V0QnVja2V0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9ub3Rlcy9GYW5vdXRCdWNrZXQuamF2YQpAQCAtMTAyLDcgKzEwMiw3IEBAIEl0ZXJhdG9yPE5vdGU+IGl0ZXJhdG9yKEFueU9iamVjdElkIG9iaklkLCBmaW5hbCBPYmplY3RSZWFkZXIgcmVhZGVyKQogCQlmaW5hbCBNdXRhYmxlT2JqZWN0SWQgaWQgPSBuZXcgTXV0YWJsZU9iamVjdElkKCk7CiAJCWlkLmZyb21PYmplY3RJZChvYmpJZCk7CiAKLQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxOb3RlPigpIHsKKwkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJcHJpdmF0ZSBpbnQgY2VsbDsKIAogCQkJcHJpdmF0ZSBJdGVyYXRvcjxOb3RlPiBpdHI7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L25vdGVzL0xlYWZCdWNrZXQuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbm90ZXMvTGVhZkJ1Y2tldC5qYXZhCmluZGV4IDQ5NDA0NWIuLjQ2MWFkYWMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbm90ZXMvTGVhZkJ1Y2tldC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvbm90ZXMvTGVhZkJ1Y2tldC5qYXZhCkBAIC04Niw3ICs4Niw3IEBAIGludCBzaXplKCkgewogCiAJQE92ZXJyaWRlCiAJSXRlcmF0b3I8Tm90ZT4gaXRlcmF0b3IoQW55T2JqZWN0SWQgb2JqSWQsIE9iamVjdFJlYWRlciByZWFkZXIpIHsKLQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxOb3RlPigpIHsKKwkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJcHJpdmF0ZSBpbnQgaWR4OwogCiAJCQlAT3ZlcnJpZGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvcmV2cGxvdC9QbG90V2Fsay5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9yZXZwbG90L1Bsb3RXYWxrLmphdmEKaW5kZXggYjRjY2ZlMC4uMDU4MjMzOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9yZXZwbG90L1Bsb3RXYWxrLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9yZXZwbG90L1Bsb3RXYWxrLmphdmEKQEAgLTEyMSw3ICsxMjEsNyBAQCBwdWJsaWMgUmV2Q29tbWl0IG5leHQoKSB0aHJvd3MgTWlzc2luZ09iamVjdEV4Y2VwdGlvbiwKIAkJcmV0dXJuIHBjOwogCX0KIAotCXByaXZhdGUgUmVmW10gZ2V0UmVmcyhBbnlPYmplY3RJZCBjb21taXRJZCkgeworCXByaXZhdGUgUmVmW10gZ2V0UmVmcyhBbnlPYmplY3RJZCBjb21taXRJZCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJaWYgKHJldmVyc2VSZWZNYXAgPT0gbnVsbCkgewogCQkJcmV2ZXJzZVJlZk1hcCA9IHJlcG9zaXRvcnkuZ2V0QWxsUmVmc0J5UGVlbGVkT2JqZWN0SWQoKTsKIAkJCWZvciAoTWFwLkVudHJ5PEFueU9iamVjdElkLCBTZXQ8UmVmPj4gZW50cnkgOiBhZGRpdGlvbmFsUmVmTWFwCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3JldndhbGsvUmV2RmxhZ1NldC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9yZXZ3YWxrL1JldkZsYWdTZXQuamF2YQppbmRleCA3MWNjOWE0Li42YTk4MjQ5IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3JldndhbGsvUmV2RmxhZ1NldC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvcmV2d2Fsay9SZXZGbGFnU2V0LmphdmEKQEAgLTEwNCw3ICsxMDQsNyBAQCBwdWJsaWMgYm9vbGVhbiByZW1vdmUoT2JqZWN0IG8pIHsKIAlAT3ZlcnJpZGUKIAlwdWJsaWMgSXRlcmF0b3I8UmV2RmxhZz4gaXRlcmF0b3IoKSB7CiAJCWZpbmFsIEl0ZXJhdG9yPFJldkZsYWc+IGkgPSBhY3RpdmUuaXRlcmF0b3IoKTsKLQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxSZXZGbGFnPigpIHsKKwkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJcHJpdmF0ZSBSZXZGbGFnIGN1cnJlbnQ7CiAKIAkJCUBPdmVycmlkZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9yZXZ3YWxrL1JldldhbGsuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvcmV2d2Fsay9SZXZXYWxrLmphdmEKaW5kZXggNmUyOTQzOC4uOGQ1NzFmNSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC9yZXZ3YWxrL1JldldhbGsuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3JldndhbGsvUmV2V2Fsay5qYXZhCkBAIC0xNTU5LDcgKzE1NTksNyBAQCBwcml2YXRlIFJldkNvbW1pdCBuZXh0Rm9ySXRlcmF0b3IoKSB7CiAJcHVibGljIEl0ZXJhdG9yPFJldkNvbW1pdD4gaXRlcmF0b3IoKSB7CiAJCVJldkNvbW1pdCBmaXJzdCA9IG5leHRGb3JJdGVyYXRvcigpOwogCi0JCXJldHVybiBuZXcgSXRlcmF0b3I8UmV2Q29tbWl0PigpIHsKKwkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgewogCQkJUmV2Q29tbWl0IG5leHQgPSBmaXJzdDsKIAogCQkJQE92ZXJyaWRlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9BYnN0cmFjdEFkdmVydGlzZVJlZnNIb29rLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9BYnN0cmFjdEFkdmVydGlzZVJlZnNIb29rLmphdmEKaW5kZXggZWQ5MDAxMi4uZmI5YzE0NSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQWJzdHJhY3RBZHZlcnRpc2VSZWZzSG9vay5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0Fic3RyYWN0QWR2ZXJ0aXNlUmVmc0hvb2suamF2YQpAQCAtNDIsNiArNDIsNyBAQAogCiBwYWNrYWdlIG9yZy5lY2xpcHNlLmpnaXQudHJhbnNwb3J0OwogCitpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLnV0aWwuTWFwOwogaW1wb3J0IGphdmEudXRpbC5TZXQ7CiAKQEAgLTY1LDEwICs2NiwxMiBAQCBwdWJsaWMgdm9pZCBhZHZlcnRpc2VSZWZzKFVwbG9hZFBhY2sgdXBsb2FkUGFjaykKIAkJCQl1cGxvYWRQYWNrLmdldFJlcG9zaXRvcnkoKSwgdXBsb2FkUGFjay5nZXRSZXZXYWxrKCkpKTsKIAl9CiAKLQkvKioge0Bpbmhlcml0RG9jfSAqLworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KIAlAT3ZlcnJpZGUKIAlwdWJsaWMgdm9pZCBhZHZlcnRpc2VSZWZzKFJlY2VpdmVQYWNrIHJlY2VpdmVQYWNrKQotCQkJdGhyb3dzIFNlcnZpY2VNYXlOb3RDb250aW51ZUV4Y2VwdGlvbiB7CisJCQl0aHJvd3MgSU9FeGNlcHRpb24gewogCQlNYXA8U3RyaW5nLCBSZWY+IHJlZnMgPSBnZXRBZHZlcnRpc2VkUmVmcyhyZWNlaXZlUGFjay5nZXRSZXBvc2l0b3J5KCksCiAJCQkJcmVjZWl2ZVBhY2suZ2V0UmV2V2FsaygpKTsKIAkJU2V0PE9iamVjdElkPiBoYXZlcyA9IGdldEFkdmVydGlzZWRIYXZlcyhyZWNlaXZlUGFjay5nZXRSZXBvc2l0b3J5KCksCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9BZHZlcnRpc2VSZWZzSG9vay5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQWR2ZXJ0aXNlUmVmc0hvb2suamF2YQppbmRleCBlYjFhZWY5Li44NGMzNjkxIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9BZHZlcnRpc2VSZWZzSG9vay5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0FkdmVydGlzZVJlZnNIb29rLmphdmEKQEAgLTQyLDYgKzQyLDggQEAKIAogcGFja2FnZSBvcmcuZWNsaXBzZS5qZ2l0LnRyYW5zcG9ydDsKIAoraW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CisKIC8qKgogICogSG9vayB0byBhbGxvdyBjYWxsZXJzIHRvIHRha2Ugb3ZlciBhZHZlcnRpc2luZyByZWZzIHRvIHRoZSBjbGllbnQuCiAgKgpAQCAtODksOCArOTEsOSBAQCB2b2lkIGFkdmVydGlzZVJlZnMoVXBsb2FkUGFjayB1cGxvYWRQYWNrKQogCSAqICAgICAgICAgICAgaWYgbmVjZXNzYXJ5LgogCSAqIEB0aHJvd3Mgb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQuU2VydmljZU1heU5vdENvbnRpbnVlRXhjZXB0aW9uCiAJICogICAgICAgICAgICAgYWJvcnQ7IHRoZSBtZXNzYWdlIHdpbGwgYmUgc2VudCB0byB0aGUgdXNlci4KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCiAJICogQHNpbmNlIDUuNgogCSAqLwogCXZvaWQgYWR2ZXJ0aXNlUmVmcyhSZWNlaXZlUGFjayByZWNlaXZlUGFjaykKLQkJCXRocm93cyBTZXJ2aWNlTWF5Tm90Q29udGludWVFeGNlcHRpb247CisJCQl0aHJvd3MgU2VydmljZU1heU5vdENvbnRpbnVlRXhjZXB0aW9uLCBJT0V4Y2VwdGlvbjsKIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0FkdmVydGlzZVJlZnNIb29rQ2hhaW4uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0FkdmVydGlzZVJlZnNIb29rQ2hhaW4uamF2YQppbmRleCA5MWJkZjU4Li5lYjljNjczIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9BZHZlcnRpc2VSZWZzSG9va0NoYWluLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQWR2ZXJ0aXNlUmVmc0hvb2tDaGFpbi5qYXZhCkBAIC0xMCw2ICsxMCw3IEBACiAKIHBhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7CiAKK2ltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwogaW1wb3J0IGphdmEudXRpbC5MaXN0OwogCiAvKioKQEAgLTQ5LDEwICs1MCwxMiBAQCBwdWJsaWMgc3RhdGljIEFkdmVydGlzZVJlZnNIb29rIG5ld0NoYWluKExpc3Q8PyBleHRlbmRzIEFkdmVydGlzZVJlZnNIb29rPiBob29rcwogCQl9CiAJfQogCi0JLyoqIHtAaW5oZXJpdERvY30gKi8KKwkvKioKKwkgKiB7QGluaGVyaXREb2N9CisJICovCiAJQE92ZXJyaWRlCiAJcHVibGljIHZvaWQgYWR2ZXJ0aXNlUmVmcyhSZWNlaXZlUGFjayBycCkKLQkJCXRocm93cyBTZXJ2aWNlTWF5Tm90Q29udGludWVFeGNlcHRpb24geworCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJZm9yIChpbnQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKQogCQkJaG9va3NbaV0uYWR2ZXJ0aXNlUmVmcyhycCk7CiAJfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQW1hem9uUzMuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0FtYXpvblMzLmphdmEKaW5kZXggM2U1YWY3Ni4uODFhNzBhZiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQW1hem9uUzMuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9BbWF6b25TMy5qYXZhCkBAIC01MCw2ICs1MCw4IEBACiAKIGltcG9ydCBqYXZheC5jcnlwdG8uTWFjOwogaW1wb3J0IGphdmF4LmNyeXB0by5zcGVjLlNlY3JldEtleVNwZWM7CitpbXBvcnQgamF2YXgueG1sLnBhcnNlcnMuUGFyc2VyQ29uZmlndXJhdGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBqYXZheC54bWwucGFyc2Vycy5TQVhQYXJzZXJGYWN0b3J5OwogCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Db25zdGFudHM7CkBAIC02NCw3ICs2Niw2IEBACiBpbXBvcnQgb3JnLnhtbC5zYXguU0FYRXhjZXB0aW9uOwogaW1wb3J0IG9yZy54bWwuc2F4LlhNTFJlYWRlcjsKIGltcG9ydCBvcmcueG1sLnNheC5oZWxwZXJzLkRlZmF1bHRIYW5kbGVyOwotaW1wb3J0IG9yZy54bWwuc2F4LmhlbHBlcnMuWE1MUmVhZGVyRmFjdG9yeTsKIAogLyoqCiAgKiBBIHNpbXBsZSBIVFRQIFJFU1QgY2xpZW50IGZvciB0aGUgQW1hem9uIFMzIHNlcnZpY2UuCkBAIC03NDksOCArNzUwLDkgQEAgdm9pZCBsaXN0KCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAogCQkJCQlmaW5hbCBYTUxSZWFkZXIgeHI7CiAJCQkJCXRyeSB7Ci0JCQkJCQl4ciA9IFhNTFJlYWRlckZhY3RvcnkuY3JlYXRlWE1MUmVhZGVyKCk7Ci0JCQkJCX0gY2F0Y2ggKFNBWEV4Y2VwdGlvbiBlKSB7CisJCQkJCQl4ciA9IFNBWFBhcnNlckZhY3RvcnkubmV3SW5zdGFuY2UoKS5uZXdTQVhQYXJzZXIoKQorCQkJCQkJCQkuZ2V0WE1MUmVhZGVyKCk7CisJCQkJCX0gY2F0Y2ggKFNBWEV4Y2VwdGlvbiB8IFBhcnNlckNvbmZpZ3VyYXRpb25FeGNlcHRpb24gZSkgewogCQkJCQkJdGhyb3cgbmV3IElPRXhjZXB0aW9uKAogCQkJCQkJCQlKR2l0VGV4dC5nZXQoKS5ub1hNTFBhcnNlckF2YWlsYWJsZSwgZSk7CiAJCQkJCX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0F3c1JlcXVlc3RTaWduZXJWNC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQXdzUmVxdWVzdFNpZ25lclY0LmphdmEKaW5kZXggNmIzZDM5Ny4uYWIzMDEzNyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQXdzUmVxdWVzdFNpZ25lclY0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQXdzUmVxdWVzdFNpZ25lclY0LmphdmEKQEAgLTQwLDcgKzQwLDcgQEAKICAqICAgICAgImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nZW5lcmFsL2xhdGVzdC9nci9zaWduYXR1cmUtdmVyc2lvbi00Lmh0bWwiPkFXUwogICogICAgICBTaWduYXR1cmUgVmVyc2lvbiA0PC9hPgogICoKLSAqIEBzaW5jZSA1LjEzCisgKiBAc2luY2UgNS4xMy4xCiAgKi8KIHB1YmxpYyBmaW5hbCBjbGFzcyBBd3NSZXF1ZXN0U2lnbmVyVjQgewogCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9CYXNlUGFja0ZldGNoQ29ubmVjdGlvbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvQmFzZVBhY2tGZXRjaENvbm5lY3Rpb24uamF2YQppbmRleCBkMzQ0ZGVhLi5mNDhlMWU2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9CYXNlUGFja0ZldGNoQ29ubmVjdGlvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0Jhc2VQYWNrRmV0Y2hDb25uZWN0aW9uLmphdmEKQEAgLTI4LDcgKzI4LDYgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5SZW1vdGVSZXBvc2l0b3J5RXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLlRyYW5zcG9ydEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLkpHaXRUZXh0OwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlLlBhY2tMb2NrOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkFueU9iamVjdElkOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbmZpZzsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5NdXRhYmxlT2JqZWN0SWQ7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9CdW5kbGVGZXRjaENvbm5lY3Rpb24uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0J1bmRsZUZldGNoQ29ubmVjdGlvbi5qYXZhCmluZGV4IDQ3ZDE1NmIuLmYwNGU1NzMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0J1bmRsZUZldGNoQ29ubmVjdGlvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0J1bmRsZUZldGNoQ29ubmVjdGlvbi5qYXZhCkBAIC0zNSw3ICszNSw2IEBACiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuUGFja1Byb3RvY29sRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLlRyYW5zcG9ydEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLkpHaXRUZXh0OwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlLlBhY2tMb2NrOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLk51bGxQcm9ncmVzc01vbml0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuT2JqZWN0SWQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuT2JqZWN0SWRSZWY7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9GZXRjaENvbm5lY3Rpb24uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0ZldGNoQ29ubmVjdGlvbi5qYXZhCmluZGV4IGQwNmVmNjUuLjlkYzA2MjAgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0ZldGNoQ29ubmVjdGlvbi5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L0ZldGNoQ29ubmVjdGlvbi5qYXZhCkBAIC0xOCw3ICsxOCw2IEBACiBpbXBvcnQgamF2YS51dGlsLlNldDsKIAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLlRyYW5zcG9ydEV4Y2VwdGlvbjsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZS5QYWNrTG9jazsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5PYmplY3RJZDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Qcm9ncmVzc01vbml0b3I7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuUmVmOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvRmV0Y2hQcm9jZXNzLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9GZXRjaFByb2Nlc3MuamF2YQppbmRleCA1MDc3OTVhLi4xYzFhYTdiIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9GZXRjaFByb2Nlc3MuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9GZXRjaFByb2Nlc3MuamF2YQpAQCAtMzcsNyArMzcsNiBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLlRyYW5zcG9ydEV4Y2VwdGlvbjsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLkpHaXRUZXh0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlLkxvY2tGaWxlOwotaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlLlBhY2tMb2NrOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkJhdGNoUmVmVXBkYXRlOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkJhdGNoaW5nUHJvZ3Jlc3NNb25pdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbnN0YW50czsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L05ldFJDLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9OZXRSQy5qYXZhCmluZGV4IDdkZDAxOWIuLjk5OTM3ZjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L05ldFJDLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvTmV0UkMuamF2YQpAQCAtMTMxLDcgKzEzMSw3IEBAIGJvb2xlYW4gY29tcGxldGUoKSB7CiAKIAlwcml2YXRlIE1hcDxTdHJpbmcsIE5ldFJDRW50cnk+IGhvc3RzID0gbmV3IEhhc2hNYXA8PigpOwogCi0JcHJpdmF0ZSBzdGF0aWMgZmluYWwgVHJlZU1hcDxTdHJpbmcsIFN0YXRlPiBTVEFURSA9IG5ldyBUcmVlTWFwPFN0cmluZywgTmV0UkMuU3RhdGU+KCkgeworCXByaXZhdGUgc3RhdGljIGZpbmFsIFRyZWVNYXA8U3RyaW5nLCBTdGF0ZT4gU1RBVEUgPSBuZXcgVHJlZU1hcDw+KCkgewogCQlwcml2YXRlIHN0YXRpYyBmaW5hbCBsb25nIHNlcmlhbFZlcnNpb25VSUQgPSAtNDI4NTkxMDgzMTgxNDg1MzMzNEw7CiAJCXsKIAkJCXB1dCgibWFjaGluZSIsIFN0YXRlLk1BQ0hJTkUpOyAvLyROT04tTkxTLTEkCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9QYWNrTG9jay5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUGFja0xvY2suamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZjIxNDA3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUGFja0xvY2suamF2YQpAQCAtMCwwICsxLDMxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIFRob21hcyBXb2xmIDx0aG9tYXMud29sZkBwYXJhbm9yLmNoPiBhbmQgb3RoZXJzLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZQorICogdGVybXMgb2YgdGhlIEVjbGlwc2UgRGlzdHJpYnV0aW9uIExpY2Vuc2Ugdi4gMS4wIHdoaWNoIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL2RvY3VtZW50cy9lZGwtdjEwLnBocC4KKyAqCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UuamdpdC50cmFuc3BvcnQ7CisKK2ltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOworCisvKioKKyAqIEEge0Bjb2RlIFBhY2tMb2NrfSBkZXNjcmliZXMgYSB7QGNvZGUgLmtlZXB9IGZpbGUgdGhhdCBob2xkcyBhIHBhY2sgaW4gcGxhY2UuCisgKiBJZiB7QGxpbmsgUGFja1BhcnNlciNwYXJzZShvcmcuZWNsaXBzZS5qZ2l0LmxpYi5Qcm9ncmVzc01vbml0b3IpfSBjcmVhdGVzCisgKiBzdWNoIGEgcGFjayBsb2NrLCBpdCByZXR1cm5zIHRoZSBsb2NrIHNvIHRoYXQgaXQgY2FuIGJlIHVubG9ja2VkIG9uY2UgdGhlCisgKiBwYWNrIGRvZXNuJ3QgbmVlZCBhIHtAY29kZSAua2VlcH0gZmlsZSBhbnltb3JlLgorICoKKyAqIEBzaW5jZSA2LjAKKyAqLworcHVibGljIGludGVyZmFjZSBQYWNrTG9jayB7CisKKwkvKioKKwkgKiBSZW1vdmUgdGhlIHtAY29kZSAua2VlcH0gZmlsZSB0aGF0IGhvbGRzIGEgcGFjayBpbiBwbGFjZS4KKwkgKgorCSAqIEB0aHJvd3MgamF2YS5pby5JT0V4Y2VwdGlvbgorCSAqICAgICAgICAgICAgIGlmIGRlbGV0aW9uIG9mIHRoZSB7QGNvZGUgLmtlZXB9IGZpbGUgZmFpbGVkCisJICovCisJdm9pZCB1bmxvY2soKSB0aHJvd3MgSU9FeGNlcHRpb247Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9QYWNrUGFyc2VyLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9QYWNrUGFyc2VyLmphdmEKaW5kZXggNzE1Y2JiNC4uZTQzZWEwMiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUGFja1BhcnNlci5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1BhY2tQYXJzZXIuamF2YQpAQCAtMjksNyArMjksNiBAQAogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuZXJyb3JzLk1pc3NpbmdPYmplY3RFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuVG9vTGFyZ2VPYmplY3RJblBhY2tFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5KR2l0VGV4dDsKLWltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZS5QYWNrTG9jazsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UucGFjay5CaW5hcnlEZWx0YTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5BbnlPYmplY3RJZDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5CYXRjaGluZ1Byb2dyZXNzTW9uaXRvcjsKQEAgLTQ5MCw3ICs0ODksNyBAQCBwdWJsaWMgUmVjZWl2ZWRQYWNrU3RhdGlzdGljcyBnZXRSZWNlaXZlZFBhY2tTdGF0aXN0aWNzKCkgewogCSAqICAgICAgICAge0BsaW5rICNzZXRMb2NrTWVzc2FnZShTdHJpbmcpfS4KIAkgKiBAdGhyb3dzIGphdmEuaW8uSU9FeGNlcHRpb24KIAkgKiAgICAgICAgICAgICB0aGUgc3RyZWFtIGlzIG1hbGZvcm1lZCwgb3IgY29udGFpbnMgY29ycnVwdCBvYmplY3RzLgotCSAqIEBzaW5jZSAzLjAKKwkgKiBAc2luY2UgNi4wCiAJICovCiAJcHVibGljIGZpbmFsIFBhY2tMb2NrIHBhcnNlKFByb2dyZXNzTW9uaXRvciBwcm9ncmVzcykgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJcmV0dXJuIHBhcnNlKHByb2dyZXNzLCBwcm9ncmVzcyk7CkBAIC01MDksNyArNTA4LDcgQEAgcHVibGljIGZpbmFsIFBhY2tMb2NrIHBhcnNlKFByb2dyZXNzTW9uaXRvciBwcm9ncmVzcykgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkgKiAgICAgICAgIHtAbGluayAjc2V0TG9ja01lc3NhZ2UoU3RyaW5nKX0uCiAJICogQHRocm93cyBqYXZhLmlvLklPRXhjZXB0aW9uCiAJICogICAgICAgICAgICAgdGhlIHN0cmVhbSBpcyBtYWxmb3JtZWQsIG9yIGNvbnRhaW5zIGNvcnJ1cHQgb2JqZWN0cy4KLQkgKiBAc2luY2UgMy4wCisJICogQHNpbmNlIDYuMAogCSAqLwogCXB1YmxpYyBQYWNrTG9jayBwYXJzZShQcm9ncmVzc01vbml0b3IgcmVjZWl2aW5nLCBQcm9ncmVzc01vbml0b3IgcmVzb2x2aW5nKQogCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1BhY2tldExpbmVJbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUGFja2V0TGluZUluLmphdmEKaW5kZXggNjhjNWIzNC4uZWQzM2VhZSAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUGFja2V0TGluZUluLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUGFja2V0TGluZUluLmphdmEKQEAgLTM4OCw3ICszODgsOCBAQCBwdWJsaWMgc3RhdGljIGNsYXNzIFBhY2tldExpbmVJbkl0ZXJhdG9yIGltcGxlbWVudHMgSXRlcmFibGU8U3RyaW5nPiB7CiAKIAkJQE92ZXJyaWRlCiAJCXB1YmxpYyBJdGVyYXRvcjxTdHJpbmc+IGl0ZXJhdG9yKCkgewotCQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxTdHJpbmc+KCkgeworCQkJcmV0dXJuIG5ldyBJdGVyYXRvcjw+KCkgeworCiAJCQkJQE92ZXJyaWRlCiAJCQkJcHVibGljIGJvb2xlYW4gaGFzTmV4dCgpIHsKIAkJCQkJcmV0dXJuICFQYWNrZXRMaW5lSW4uaXNFbmQoY3VycmVudCk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9QdXNoQ2VydGlmaWNhdGVTdG9yZS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUHVzaENlcnRpZmljYXRlU3RvcmUuamF2YQppbmRleCA1NjM0YWMwLi5hOWU5M2I2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9QdXNoQ2VydGlmaWNhdGVTdG9yZS5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1B1c2hDZXJ0aWZpY2F0ZVN0b3JlLmphdmEKQEAgLTE1OSw3ICsxNTksNyBAQCBwdWJsaWMgUHVzaENlcnRpZmljYXRlIGdldChTdHJpbmcgcmVmTmFtZSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkgKiAgICAgICAgIGNsb3NlIHJlc291cmNlcy4KIAkgKi8KIAlwdWJsaWMgSXRlcmFibGU8UHVzaENlcnRpZmljYXRlPiBnZXRBbGwoU3RyaW5nIHJlZk5hbWUpIHsKLQkJcmV0dXJuICgpIC0+IG5ldyBJdGVyYXRvcjxQdXNoQ2VydGlmaWNhdGU+KCkgeworCQlyZXR1cm4gKCkgLT4gbmV3IEl0ZXJhdG9yPD4oKSB7CiAJCQlwcml2YXRlIGZpbmFsIFN0cmluZyBwYXRoID0gcGF0aE5hbWUocmVmTmFtZSk7CiAKIAkJCXByaXZhdGUgUHVzaENlcnRpZmljYXRlIG5leHQ7CkBAIC0yMTksMTEgKzIxOSwxMCBAQCBwdWJsaWMgYm9vbGVhbiBoYXNOZXh0KCkgewogCiAJCQlAT3ZlcnJpZGUKIAkJCXB1YmxpYyBQdXNoQ2VydGlmaWNhdGUgbmV4dCgpIHsKLQkJCQloYXNOZXh0KCk7Ci0JCQkJUHVzaENlcnRpZmljYXRlIG4gPSBuZXh0OwotCQkJCWlmIChuID09IG51bGwpIHsKKwkJCQlpZiAoIWhhc05leHQoKSkgewogCQkJCQl0aHJvdyBuZXcgTm9TdWNoRWxlbWVudEV4Y2VwdGlvbigpOwogCQkJCX0KKwkJCQlQdXNoQ2VydGlmaWNhdGUgbiA9IG5leHQ7CiAJCQkJbmV4dCA9IG51bGw7CiAJCQkJcmV0dXJuIG47CiAJCQl9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9SZWNlaXZlUGFjay5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvUmVjZWl2ZVBhY2suamF2YQppbmRleCA1OGY4ODk1Li4yNTQyMTA1IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9SZWNlaXZlUGFjay5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1JlY2VpdmVQYWNrLmphdmEKQEAgLTQ4LDcgKzQ4LDYgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5Ub29MYXJnZVBhY2tFeGNlcHRpb247CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5lcnJvcnMuVW5wYWNrRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuSkdpdFRleHQ7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGUuUGFja0xvY2s7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdWJtb2R1bGUuU3VibW9kdWxlVmFsaWRhdG9yOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3VibW9kdWxlLlN1Ym1vZHVsZVZhbGlkYXRvci5TdWJtb2R1bGVWYWxpZGF0aW9uRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwudHJhbnNwb3J0LmNvbm5lY3Rpdml0eS5GdWxsQ29ubmVjdGl2aXR5Q2hlY2tlcjsKQEAgLTQ0MSw5ICs0NDAsMTAgQEAgcHVibGljIE1hcDxTdHJpbmcsIFJlZj4gZ2V0QWR2ZXJ0aXNlZFJlZnMoKSB7CiAJICogICAgICAgICAgICBleHBsaWNpdCBzZXQgb2YgYWRkaXRpb25hbCBoYXZlcyB0byBjbGFpbSBhcyBhZHZlcnRpc2VkLiBJZgogCSAqICAgICAgICAgICAgbnVsbCwgYXNzdW1lcyB0aGUgZGVmYXVsdCBzZXQgb2YgYWRkaXRpb25hbCBoYXZlcyBmcm9tIHRoZQogCSAqICAgICAgICAgICAgcmVwb3NpdG9yeS4KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCiAJICovCiAJcHVibGljIHZvaWQgc2V0QWR2ZXJ0aXNlZFJlZnMoTWFwPFN0cmluZywgUmVmPiBhbGxSZWZzLAotCQkJU2V0PE9iamVjdElkPiBhZGRpdGlvbmFsSGF2ZXMpIHsKKwkJCVNldDxPYmplY3RJZD4gYWRkaXRpb25hbEhhdmVzKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlyZWZzID0gYWxsUmVmcyAhPSBudWxsID8gYWxsUmVmcyA6IGdldEFsbFJlZnMoKTsKIAkJcmVmcyA9IHJlZkZpbHRlci5maWx0ZXIocmVmcyk7CiAJCWFkdmVydGlzZWRIYXZlcy5jbGVhcigpOwpAQCAtMTE4OCw4ICsxMTg4LDkgQEAgcHJvdGVjdGVkIHZvaWQgaW5pdChmaW5hbCBJbnB1dFN0cmVhbSBpbnB1dCwgZmluYWwgT3V0cHV0U3RyZWFtIG91dHB1dCwKIAkgKiBHZXQgYWR2ZXJ0aXNlZCByZWZzLCBvciB0aGUgZGVmYXVsdCBpZiBub3QgZXhwbGljaXRseSBhZHZlcnRpc2VkLgogCSAqCiAJICogQHJldHVybiBhZHZlcnRpc2VkIHJlZnMsIG9yIHRoZSBkZWZhdWx0IGlmIG5vdCBleHBsaWNpdGx5IGFkdmVydGlzZWQuCisJICogQHRocm93cyBJT0V4Y2VwdGlvbgogCSAqLwotCXByaXZhdGUgTWFwPFN0cmluZywgUmVmPiBnZXRBZHZlcnRpc2VkT3JEZWZhdWx0UmVmcygpIHsKKwlwcml2YXRlIE1hcDxTdHJpbmcsIFJlZj4gZ2V0QWR2ZXJ0aXNlZE9yRGVmYXVsdFJlZnMoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCQlpZiAocmVmcyA9PSBudWxsKQogCQkJc2V0QWR2ZXJ0aXNlZFJlZnMobnVsbCwgbnVsbCk7CiAJCXJldHVybiByZWZzOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvU3NoQ29uZmlnU3RvcmUuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1NzaENvbmZpZ1N0b3JlLmphdmEKaW5kZXggMDRhNDkyMi4uMTIyNmE2YiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvU3NoQ29uZmlnU3RvcmUuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Tc2hDb25maWdTdG9yZS5qYXZhCkBAIC0yOCw3ICsyOCw3IEBAIHB1YmxpYyBpbnRlcmZhY2UgU3NoQ29uZmlnU3RvcmUgewogCSAqIEBwYXJhbSBob3N0TmFtZQogCSAqICAgICAgICAgICAgdG8gbG9vayB1cAogCSAqIEBwYXJhbSBwb3J0Ci0JICogICAgICAgICAgICB0aGUgdXNlciBzdXBwbGllZDsgPD0gMCBpZiBub25lCisJICogICAgICAgICAgICB0aGUgdXNlciBzdXBwbGllZDsgJmx0Oz0gMCBpZiBub25lCiAJICogQHBhcmFtIHVzZXJOYW1lCiAJICogICAgICAgICAgICB0aGUgdXNlciBzdXBwbGllZCwgbWF5IGJlIHtAY29kZSBudWxsfSBvciBlbXB0eSBpZiBub25lIGdpdmVuCiAJICogQHJldHVybiB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIHJlcXVlc3RlZCBuYW1lLgpAQCAtMzcsNiArMzcsNDggQEAgcHVibGljIGludGVyZmFjZSBTc2hDb25maWdTdG9yZSB7CiAJSG9zdENvbmZpZyBsb29rdXAoQE5vbk51bGwgU3RyaW5nIGhvc3ROYW1lLCBpbnQgcG9ydCwgU3RyaW5nIHVzZXJOYW1lKTsKIAogCS8qKgorCSAqIExvY2F0ZSB0aGUgY29uZmlndXJhdGlvbiBmb3IgYSBzcGVjaWZpYyBob3N0IHJlcXVlc3QgYW5kIGlmIHRoZQorCSAqIGNvbmZpZ3VyYXRpb24gaGFzIG5vIHZhbHVlcyBmb3Ige0BsaW5rIFNzaENvbnN0YW50cyNIT1NUX05BTUV9LAorCSAqIHtAbGluayBTc2hDb25zdGFudHMjUE9SVH0sIHtAbGluayBTc2hDb25zdGFudHMjVVNFUn0sIG9yCisJICoge0BsaW5rIFNzaENvbnN0YW50cyNDT05ORUNUSU9OX0FUVEVNUFRTfSwgZmlsbCB0aG9zZSB2YWx1ZXMgd2l0aCBkZWZhdWx0cworCSAqIGZyb20gdGhlIGFyZ3VtZW50czoKKwkgKiA8dGFibGU+CisJICogPHRyPgorCSAqIDx0aD5zc2ggY29uZmlnIGtleTwvdGg+CisJICogPHRoPnZhbHVlIGZyb20gYXJndW1lbnQ8L3RoPgorCSAqIDwvdHI+CisJICogPHRyPgorCSAqIDx0ZD57QGNvZGUgSG9zdE5hbWV9PC90ZD4KKwkgKiA8dGQ+e0Bjb2RlIGhvc3ROYW1lfTwvdGQ+CisJICogPC90cj4KKwkgKiA8dHI+CisJICogPHRkPntAY29kZSBQb3J0fTwvdGQ+CisJICogPHRkPntAY29kZSBwb3J0ID4gMCA/IHBvcnQgOiAyMn08L3RkPgorCSAqIDwvdHI+CisJICogPHRyPgorCSAqIDx0ZD57QGNvZGUgVXNlcn08L3RkPgorCSAqIDx0ZD57QGNvZGUgdXNlck5hbWV9PC90ZD4KKwkgKiA8L3RyPgorCSAqIDx0cj4KKwkgKiA8dGQ+e0Bjb2RlIENvbm5lY3Rpb25BdHRlbXB0c308L3RkPgorCSAqIDx0ZD57QGNvZGUgMX08L3RkPgorCSAqIDwvdHI+CisJICogPC90YWJsZT4KKwkgKgorCSAqIEBwYXJhbSBob3N0TmFtZQorCSAqICAgICAgICAgICAgaG9zdCBuYW1lIHRvIGxvb2sgdXAKKwkgKiBAcGFyYW0gcG9ydAorCSAqICAgICAgICAgICAgcG9ydCBudW1iZXI7ICZsdDs9IDAgaWYgbm9uZQorCSAqIEBwYXJhbSB1c2VyTmFtZQorCSAqICAgICAgICAgICAgdGhlIHVzZXIgbmFtZSwgbWF5IGJlIHtAY29kZSBudWxsfSBvciBlbXB0eSBpZiBub25lIGdpdmVuCisJICogQHJldHVybiB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIHJlcXVlc3RlZCBuYW1lLgorCSAqIEBzaW5jZSA2LjAKKwkgKi8KKwlATm9uTnVsbAorCUhvc3RDb25maWcgbG9va3VwRGVmYXVsdChATm9uTnVsbCBTdHJpbmcgaG9zdE5hbWUsIGludCBwb3J0LAorCQkJU3RyaW5nIHVzZXJOYW1lKTsKKworCS8qKgogCSAqIEEgaG9zdCBlbnRyeSBmcm9tIHRoZSBzc2ggY29uZmlnLiBBbnkgbWVyZ2luZyBvZiBnbG9iYWwgdmFsdWVzIGFuZCBvZgogCSAqIHNldmVyYWwgbWF0Y2hpbmcgaG9zdCBlbnRyaWVzLCAlLXN1YnN0aXR1dGlvbnMsIGFuZCB+IHJlcGxhY2VtZW50IGhhdmUKIAkgKiBhbGwgYmVlbiBkb25lLgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvU3NoQ29uc3RhbnRzLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Tc2hDb25zdGFudHMuamF2YQppbmRleCA1Y2Q1YjMzLi4yMTJhNGU0IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Tc2hDb25zdGFudHMuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Tc2hDb25zdGFudHMuamF2YQpAQCAtMTkxLDYgKzE5MSwyNiBAQCBwcml2YXRlIFNzaENvbnN0YW50cygpIHsKIAkvKiogRmxhZyB2YWx1ZS4gKi8KIAlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBGQUxTRSA9ICJmYWxzZSI7CiAKKwkvKioKKwkgKiBQcm9wZXJ0eSB2YWx1ZS4gU29tZSBrZXlzIGFjY2VwdCBhIHNwZWNpYWwgJ25vbmUnIHZhbHVlIHRvIG92ZXJyaWRlIGFuZAorCSAqIGNsZWFyIGEgc2V0dGluZyBvdGhlcndpc2UgY29udHJpYnV0ZWQgYnkgYW5vdGhlciBob3N0IGVudHJ5LCBmb3IgaW5zdGFuY2UKKwkgKiB7QGxpbmsgI1BST1hZX0NPTU1BTkR9IG9yIHtAbGluayAjUFJPWFlfSlVNUH0uIEV4YW1wbGU6CisJICoKKwkgKiA8cHJlPgorCSAqIEhvc3QgYmFzdGlvbi5leGFtcGxlLm9yZworCSAqICAgUHJveHlKdW1wIG5vbmUKKwkgKgorCSAqIEhvc3QgKi5leGFtcGxlLm9yZworCSAqICAgUHJveHlKdW1wIGJhc3Rpb24uZXhhbXBsZS5vcmcKKwkgKiA8L3ByZT4KKwkgKiA8cD4KKwkgKiBPcGVuU1NIIHN1cHBvcnRzIHRoaXMgc2luY2UgT3BlblNTSCA3LjguCisJICogPC9wPgorCSAqCisJICogQHNpbmNlIDYuMAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIE5PTkUgPSAibm9uZSI7CisKIAkvLyBEZWZhdWx0IGlkZW50aXR5IGZpbGUgbmFtZXMKIAogCS8qKiBOYW1lIG9mIHRoZSBkZWZhdWx0IFJTQSBwcml2YXRlIGlkZW50aXR5IGZpbGUuICovCkBAIC0yMDIsNyArMjIyLDcgQEAgcHJpdmF0ZSBTc2hDb25zdGFudHMoKSB7CiAJLyoqIE5hbWUgb2YgdGhlIGRlZmF1bHQgRUNEU0EgcHJpdmF0ZSBpZGVudGl0eSBmaWxlLiAqLwogCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIElEX0VDRFNBID0gImlkX2VjZHNhIjsKIAotCS8qKiBOYW1lIG9mIHRoZSBkZWZhdWx0IEVDRFNBIHByaXZhdGUgaWRlbnRpdHkgZmlsZS4gKi8KKwkvKiogTmFtZSBvZiB0aGUgZGVmYXVsdCBFRDI1NTE5IHByaXZhdGUgaWRlbnRpdHkgZmlsZS4gKi8KIAlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBJRF9FRDI1NTE5ID0gImlkX2VkMjU1MTkiOwogCiAJLyoqIEFsbCBrbm93biBkZWZhdWx0IGlkZW50aXR5IGZpbGUgbmFtZXMuICovCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Tc2hTZXNzaW9uRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvU3NoU2Vzc2lvbkZhY3RvcnkuamF2YQppbmRleCBlMjE2YTU2YS4uMWU5OGE1NiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvU3NoU2Vzc2lvbkZhY3RvcnkuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9Tc2hTZXNzaW9uRmFjdG9yeS5qYXZhCkBAIC0zNiw3ICszNiw3IEBACiAgKi8KIHB1YmxpYyBhYnN0cmFjdCBjbGFzcyBTc2hTZXNzaW9uRmFjdG9yeSB7CiAKLQlwcml2YXRlIHN0YXRpYyBTc2hTZXNzaW9uRmFjdG9yeSBJTlNUQU5DRSA9IGxvYWRTc2hTZXNzaW9uRmFjdG9yeSgpOworCXByaXZhdGUgc3RhdGljIHZvbGF0aWxlIFNzaFNlc3Npb25GYWN0b3J5IElOU1RBTkNFID0gbG9hZFNzaFNlc3Npb25GYWN0b3J5KCk7CiAKIAlwcml2YXRlIHN0YXRpYyBTc2hTZXNzaW9uRmFjdG9yeSBsb2FkU3NoU2Vzc2lvbkZhY3RvcnkoKSB7CiAJCVNlcnZpY2VMb2FkZXI8U3NoU2Vzc2lvbkZhY3Rvcnk+IGxvYWRlciA9IFNlcnZpY2VMb2FkZXIubG9hZChTc2hTZXNzaW9uRmFjdG9yeS5jbGFzcyk7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9UZXN0UHJvdG9jb2wuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1Rlc3RQcm90b2NvbC5qYXZhCmluZGV4IGM2ZWNiM2EuLjE5ODViNjYgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1Rlc3RQcm90b2NvbC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1Rlc3RQcm90b2NvbC5qYXZhCkBAIC0xNTgsNyArMTU4LDcgQEAgcHJpdmF0ZSBjbGFzcyBUcmFuc3BvcnRJbnRlcm5hbCBleHRlbmRzIFRyYW5zcG9ydCBpbXBsZW1lbnRzIFBhY2tUcmFuc3BvcnQgewogCQlwdWJsaWMgRmV0Y2hDb25uZWN0aW9uIG9wZW5GZXRjaCgpIHRocm93cyBOb3RTdXBwb3J0ZWRFeGNlcHRpb24sCiAJCQkJVHJhbnNwb3J0RXhjZXB0aW9uIHsKIAkJCWhhbmRsZS5yZW1vdGUuaW5jcmVtZW50T3BlbigpOwotCQkJcmV0dXJuIG5ldyBJbnRlcm5hbEZldGNoQ29ubmVjdGlvbjxDPih0aGlzLCB1cGxvYWRQYWNrRmFjdG9yeSwKKwkJCXJldHVybiBuZXcgSW50ZXJuYWxGZXRjaENvbm5lY3Rpb248Pih0aGlzLCB1cGxvYWRQYWNrRmFjdG9yeSwKIAkJCQkJaGFuZGxlLnJlcSwgaGFuZGxlLnJlbW90ZSkgewogCQkJCUBPdmVycmlkZQogCQkJCUZldGNoQ29uZmlnIGdldEZldGNoQ29uZmlnKCkgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvVXBsb2FkUGFjay5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvVXBsb2FkUGFjay5qYXZhCmluZGV4IDE2MGUyZTYuLjBjMjNjOGMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1VwbG9hZFBhY2suamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9VcGxvYWRQYWNrLmphdmEKQEAgLTU4LDYgKzU4LDcgQEAKIGltcG9ydCBqYXZhLnV0aWwuT3B0aW9uYWw7CiBpbXBvcnQgamF2YS51dGlsLlNldDsKIGltcG9ydCBqYXZhLnV0aWwuVHJlZU1hcDsKK2ltcG9ydCBqYXZhLnV0aWwuZnVuY3Rpb24uRnVuY3Rpb247CiBpbXBvcnQgamF2YS51dGlsLmZ1bmN0aW9uLlByZWRpY2F0ZTsKIGltcG9ydCBqYXZhLnV0aWwuc3RyZWFtLkNvbGxlY3RvcnM7CiBpbXBvcnQgamF2YS51dGlsLnN0cmVhbS5TdHJlYW07CkBAIC00MDcsMTQgKzQwOCwxNiBAQCBwdWJsaWMgZmluYWwgTWFwPFN0cmluZywgUmVmPiBnZXRBZHZlcnRpc2VkUmVmcygpIHsKIAkgKiAgICAgICAgICAgIHdlcmUgYWR2ZXJ0aXNlZC4KIAkgKi8KIAlwdWJsaWMgdm9pZCBzZXRBZHZlcnRpc2VkUmVmcyhATnVsbGFibGUgTWFwPFN0cmluZywgUmVmPiBhbGxSZWZzKSB7Ci0JCWlmIChhbGxSZWZzICE9IG51bGwpCisJCWlmIChhbGxSZWZzICE9IG51bGwpIHsKIAkJCXJlZnMgPSBhbGxSZWZzOwotCQllbHNlCi0JCQlyZWZzID0gZGIuZ2V0QWxsUmVmcygpOwotCQlpZiAocmVmRmlsdGVyID09IFJlZkZpbHRlci5ERUZBVUxUKQorCQl9IGVsc2UgeworCQkJcmVmcyA9IGdldEFsbFJlZnMoKTsKKwkJfQorCQlpZiAocmVmRmlsdGVyID09IFJlZkZpbHRlci5ERUZBVUxUKSB7CiAJCQlyZWZzID0gdHJhbnNmZXJDb25maWcuZ2V0UmVmRmlsdGVyKCkuZmlsdGVyKHJlZnMpOwotCQllbHNlCisJCX0gZWxzZSB7CiAJCQlyZWZzID0gcmVmRmlsdGVyLmZpbHRlcihyZWZzKTsKKwkJfQogCX0KIAogCS8qKgpAQCAtODc1LDYgKzg3OCwyMCBAQCBwdWJsaWMgUGFja1N0YXRpc3RpY3MgZ2V0U3RhdGlzdGljcygpIHsKIAkJcmV0dXJuIHN0YXRpc3RpY3M7CiAJfQogCisJLyoqCisJICogRXh0cmFjdCB0aGUgZnVsbCBsaXN0IG9mIHJlZnMgZnJvbSB0aGUgcmVmLWRiLgorCSAqCisJICogQHJldHVybiBNYXAgb2YgYWxsIHJlZm5hbWUvcmVmCisJICovCisJcHJpdmF0ZSBNYXA8U3RyaW5nLCBSZWY+IGdldEFsbFJlZnMoKSB7CisJCXRyeSB7CisJCQlyZXR1cm4gZGIuZ2V0UmVmRGF0YWJhc2UoKS5nZXRSZWZzKCkuc3RyZWFtKCkuY29sbGVjdCgKKwkJCQkJQ29sbGVjdG9ycy50b01hcChSZWY6OmdldE5hbWUsIEZ1bmN0aW9uLmlkZW50aXR5KCkpKTsKKwkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgeworCQkJdGhyb3cgbmV3IFVuY2hlY2tlZElPRXhjZXB0aW9uKGUpOworCQl9CisJfQorCiAJcHJpdmF0ZSBNYXA8U3RyaW5nLCBSZWY+IGdldEFkdmVydGlzZWRPckRlZmF1bHRSZWZzKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJaWYgKHJlZnMgIT0gbnVsbCkgewogCQkJcmV0dXJuIHJlZnM7CkBAIC0xODE5LDcgKzE4MzYsNyBAQCBwcml2YXRlIE9iamVjdElkIHByb2Nlc3NIYXZlTGluZXMoTGlzdDxPYmplY3RJZD4gcGVlckhhcywgT2JqZWN0SWQgbGFzdCwKIAogCXByaXZhdGUgYm9vbGVhbiBzaG91bGRHaXZlVXAoTGlzdDxPYmplY3RJZD4gcGVlckhhcywgUGFja2V0TGluZU91dCBvdXQsIGludCBtaXNzQ250KQogCQkJdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJYm9vbGVhbiBzZW50UmVhZHkgPSBmYWxzZTsKKwkJYm9vbGVhbiByZWFkeVNlbnQgPSBmYWxzZTsKIAkJYm9vbGVhbiBkaWRPa1RvR2l2ZVVwID0gZmFsc2U7CiAJCWlmICgwIDwgbWlzc0NudCkgewogCQkJZm9yIChpbnQgaSA9IHBlZXJIYXMuc2l6ZSgpIC0gMTsgaSA+PSAwOyBpLS0pIHsKQEAgLTE4MzcsNyArMTg1NCw3IEBAIHByaXZhdGUgYm9vbGVhbiBzaG91bGRHaXZlVXAoTGlzdDxPYmplY3RJZD4gcGVlckhhcywgUGFja2V0TGluZU91dCBvdXQsIGludCBtaXNzCiAJCQkJCQljYXNlIERFVEFJTEVEOgogCQkJCQkJCW91dC53cml0ZVN0cmluZygKIAkJCQkJCQkJCSJBQ0sgIiArIGlkLm5hbWUoKSArICIgcmVhZHlcbiIpOyAvLyROT04tTkxTLTEkIC8vJE5PTi1OTFMtMiQKLQkJCQkJCQlzZW50UmVhZHkgPSB0cnVlOworCQkJCQkJCXJlYWR5U2VudCA9IHRydWU7CiAJCQkJCQkJYnJlYWs7CiAJCQkJCQl9CiAJCQkJCX0KQEAgLTE4NTAsMTAgKzE4NjcsMTAgQEAgcHJpdmF0ZSBib29sZWFuIHNob3VsZEdpdmVVcChMaXN0PE9iamVjdElkPiBwZWVySGFzLCBQYWNrZXRMaW5lT3V0IG91dCwgaW50IG1pc3MKIAkJCQkmJiBva1RvR2l2ZVVwKCkpIHsKIAkJCU9iamVjdElkIGlkID0gcGVlckhhcy5nZXQocGVlckhhcy5zaXplKCkgLSAxKTsKIAkJCW91dC53cml0ZVN0cmluZygiQUNLICIgKyBpZC5uYW1lKCkgKyAiIHJlYWR5XG4iKTsgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCi0JCQlzZW50UmVhZHkgPSB0cnVlOworCQkJcmVhZHlTZW50ID0gdHJ1ZTsKIAkJfQogCi0JCXJldHVybiBzZW50UmVhZHk7CisJCXJldHVybiByZWFkeVNlbnQ7CiAJfQogCiAJcHJpdmF0ZSB2b2lkIHBhcnNlV2FudHMoUGFja1N0YXRpc3RpY3MuQWNjdW11bGF0b3IgYWNjdW11bGF0b3IpIHRocm93cyBJT0V4Y2VwdGlvbiB7CkBAIC0yMzg4LDExICsyNDA1LDExIEBAIGVsc2UgaWYgKHJlZi5nZXROYW1lKCkuc3RhcnRzV2l0aChDb25zdGFudHMuUl9IRUFEUykpCiAJCQkJCWlmIChwZWVsZWRJZCA9PSBudWxsIHx8IG9iamVjdElkID09IG51bGwpCiAJCQkJCQljb250aW51ZTsKIAotCQkJCQlvYmplY3RJZCA9IHJlZi5nZXRPYmplY3RJZCgpOwotCQkJCQlpZiAocHcud2lsbEluY2x1ZGUocGVlbGVkSWQpICYmICFwdy53aWxsSW5jbHVkZShvYmplY3RJZCkpIHsKLQkJCQkJCVJldk9iamVjdCBvID0gcncucGFyc2VBbnkob2JqZWN0SWQpOwotCQkJCQkJYWRkVGFnQ2hhaW4obywgcHcpOwotCQkJCQkJcHcuYWRkT2JqZWN0KG8pOworCQkJCQlpZiAocHcud2lsbEluY2x1ZGUocGVlbGVkSWQpKSB7CisJCQkJCQkvLyBXZSBkb24ndCBuZWVkIHRvIGhhbmRsZSBwYXJzZVRhZyB0aHJvd2luZyBhbgorCQkJCQkJLy8gSW5jb3JyZWN0T2JqZWN0VHlwZUV4Y2VwdGlvbiBhcyB3ZSBvbmx5IHJlYWNoCisJCQkJCQkvLyBoZXJlIHdoZW4gcmVmIGlzIGFuIGFubm90YXRlZCB0YWcKKwkJCQkJCWFkZFRhZ0NoYWluKHJ3LnBhcnNlVGFnKG9iamVjdElkKSwgcHcpOwogCQkJCQl9CiAJCQkJfQogCQkJfQpAQCAtMjQ0MiwxNSArMjQ1OSwxNiBAQCBwcml2YXRlIHN0YXRpYyB2b2lkIGZpbmRTeW1yZWZzKAogCX0KIAogCXByaXZhdGUgdm9pZCBhZGRUYWdDaGFpbigKLQkJCVJldk9iamVjdCBvLCBQYWNrV3JpdGVyIHB3KSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQl3aGlsZSAoQ29uc3RhbnRzLk9CSl9UQUcgPT0gby5nZXRUeXBlKCkpIHsKLQkJCVJldlRhZyB0ID0gKFJldlRhZykgbzsKLQkJCW8gPSB0LmdldE9iamVjdCgpOwotCQkJaWYgKG8uZ2V0VHlwZSgpID09IENvbnN0YW50cy5PQkpfVEFHICYmICFwdy53aWxsSW5jbHVkZShvLmdldElkKCkpKSB7Ci0JCQkJd2Fsay5wYXJzZUJvZHkobyk7Ci0JCQkJcHcuYWRkT2JqZWN0KG8pOworCQkJUmV2VGFnIHRhZywgUGFja1dyaXRlciBwdykgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJUmV2T2JqZWN0IG8gPSB0YWc7CisJCWRvIHsKKwkJCXRhZyA9IChSZXZUYWcpIG87CisJCQl3YWxrLnBhcnNlQm9keSh0YWcpOworCQkJaWYgKCFwdy53aWxsSW5jbHVkZSh0YWcuZ2V0SWQoKSkpIHsKKwkJCQlwdy5hZGRPYmplY3QodGFnKTsKIAkJCX0KLQkJfQorCQkJbyA9IHRhZy5nZXRPYmplY3QoKTsKKwkJfSB3aGlsZSAoQ29uc3RhbnRzLk9CSl9UQUcgPT0gby5nZXRUeXBlKCkpOwogCX0KIAogCXByaXZhdGUgc3RhdGljIGNsYXNzIFJlc3BvbnNlQnVmZmVyZWRPdXRwdXRTdHJlYW0gZXh0ZW5kcyBPdXRwdXRTdHJlYW0gewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvV2Fsa0ZldGNoQ29ubmVjdGlvbi5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmFuc3BvcnQvV2Fsa0ZldGNoQ29ubmVjdGlvbi5qYXZhCmluZGV4IGE2YjIwNDUuLmQ2N2ZlMDcgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdHJhbnNwb3J0L1dhbGtGZXRjaENvbm5lY3Rpb24uamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyYW5zcG9ydC9XYWxrRmV0Y2hDb25uZWN0aW9uLmphdmEKQEAgLTMyLDcgKzMyLDYgQEAKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLkpHaXRUZXh0OwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuc3RvcmFnZS5maWxlLk9iamVjdERpcmVjdG9yeTsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmludGVybmFsLnN0b3JhZ2UuZmlsZS5QYWNrSW5kZXg7Ci1pbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGUuUGFja0xvY2s7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5pbnRlcm5hbC5zdG9yYWdlLmZpbGUuVW5wYWNrZWRPYmplY3Q7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQW55T2JqZWN0SWQ7CiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5saWIuQ29uc3RhbnRzOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC90cmVld2Fsay9Xb3JraW5nVHJlZUl0ZXJhdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyZWV3YWxrL1dvcmtpbmdUcmVlSXRlcmF0b3IuamF2YQppbmRleCAwYjdjMGE5Li41MGNlMTVlIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyZWV3YWxrL1dvcmtpbmdUcmVlSXRlcmF0b3IuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3RyZWV3YWxrL1dvcmtpbmdUcmVlSXRlcmF0b3IuamF2YQpAQCAtMTUxMyw3ICsxNTEzLDggQEAgcHJpdmF0ZSBib29sZWFuIGhhc0NyTGZJbkluZGV4KERpckNhY2hlSXRlcmF0b3IgZGlyQ2FjaGUpIHsKIAkJCQkJT2JqZWN0TG9hZGVyIGxvYWRlciA9IHJlYWRlci5vcGVuKGJsb2JJZCwKIAkJCQkJCQlDb25zdGFudHMuT0JKX0JMT0IpOwogCQkJCQl0cnkgewotCQkJCQkJcmV0dXJuIFJhd1RleHQuaXNDckxmVGV4dChsb2FkZXIuZ2V0Q2FjaGVkQnl0ZXMoKSk7CisJCQkJCQlieXRlW10gcmF3ID0gbG9hZGVyLmdldENhY2hlZEJ5dGVzKCk7CisJCQkJCQlyZXR1cm4gUmF3VGV4dC5pc0NyTGZUZXh0KHJhdywgcmF3Lmxlbmd0aCwgdHJ1ZSk7CiAJCQkJCX0gY2F0Y2ggKExhcmdlT2JqZWN0RXhjZXB0aW9uIGUpIHsKIAkJCQkJCXRyeSAoSW5wdXRTdHJlYW0gaW4gPSBsb2FkZXIub3BlblN0cmVhbSgpKSB7CiAJCQkJCQkJcmV0dXJuIFJhd1RleHQuaXNDckxmVGV4dChpbik7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvRlMuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GUy5qYXZhCmluZGV4IGUwZGU5YjIuLmFlZjllNjQgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GUy5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GUy5qYXZhCkBAIC0yMyw3ICsyMyw2IEBACiBpbXBvcnQgamF2YS5pby5PdXRwdXRTdHJlYW07CiBpbXBvcnQgamF2YS5pby5PdXRwdXRTdHJlYW1Xcml0ZXI7CiBpbXBvcnQgamF2YS5pby5Xcml0ZXI7Ci1pbXBvcnQgamF2YS5uaW8uY2hhcnNldC5DaGFyc2V0OwogaW1wb3J0IGphdmEubmlvLmZpbGUuQWNjZXNzRGVuaWVkRXhjZXB0aW9uOwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZVN0b3JlOwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZXM7CkBAIC0xNTM0LDcgKzE1MzMsNyBAQCBwcm90ZWN0ZWQgRmlsZSBkaXNjb3ZlckdpdFN5c3RlbUNvbmZpZygpIHsKIAkJdHJ5IHsKIAkJCXYgPSByZWFkUGlwZShnaXRFeGUuZ2V0UGFyZW50RmlsZSgpLAogCQkJCQluZXcgU3RyaW5nW10geyBnaXRFeGUuZ2V0UGF0aCgpLCAiLS12ZXJzaW9uIiB9LCAvLyROT04tTkxTLTEkCi0JCQkJQ2hhcnNldC5kZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSk7CisJCQkJCVN5c3RlbVJlYWRlci5nZXRJbnN0YW5jZSgpLmdldERlZmF1bHRDaGFyc2V0KCkubmFtZSgpKTsKIAkJfSBjYXRjaCAoQ29tbWFuZEZhaWxlZEV4Y2VwdGlvbiBlKSB7CiAJCQlMT0cud2FybihlLmdldE1lc3NhZ2UoKSk7CiAJCQlyZXR1cm4gbnVsbDsKQEAgLTE1NTcsNyArMTU1Niw3IEBAIHByb3RlY3RlZCBGaWxlIGRpc2NvdmVyR2l0U3lzdGVtQ29uZmlnKCkgewogCQkJCXcgPSByZWFkUGlwZShnaXRFeGUuZ2V0UGFyZW50RmlsZSgpLAogCQkJCQkJbmV3IFN0cmluZ1tdIHsgZ2l0RXhlLmdldFBhdGgoKSwgImNvbmZpZyIsICItLXN5c3RlbSIsIC8vJE5PTi1OTFMtMSQgLy8kTk9OLU5MUy0yJAogCQkJCQkJCQkiLS1lZGl0IiB9LCAvLyROT04tTkxTLTEkCi0JCQkJCQlDaGFyc2V0LmRlZmF1bHRDaGFyc2V0KCkubmFtZSgpLAorCQkJCQkJU3lzdGVtUmVhZGVyLmdldEluc3RhbmNlKCkuZ2V0RGVmYXVsdENoYXJzZXQoKS5uYW1lKCksCiAJCQkJCQllbnYpOwogCQkJfSBjYXRjaCAoQ29tbWFuZEZhaWxlZEV4Y2VwdGlvbiBlKSB7CiAJCQkJTE9HLndhcm4oZS5nZXRNZXNzYWdlKCkpOwpAQCAtMTU3NCw3ICsxNTczLDcgQEAgcHJvdGVjdGVkIEZpbGUgZGlzY292ZXJHaXRTeXN0ZW1Db25maWcoKSB7CiAJCQl3ID0gcmVhZFBpcGUoZ2l0RXhlLmdldFBhcmVudEZpbGUoKSwKIAkJCQkJbmV3IFN0cmluZ1tdIHsgZ2l0RXhlLmdldFBhdGgoKSwgImNvbmZpZyIsICItLXN5c3RlbSIsIC8vJE5PTi1OTFMtMSQgLy8kTk9OLU5MUy0yJAogCQkJCQkJCSItLXNob3ctb3JpZ2luIiwgIi0tbGlzdCIsICIteiIgfSwgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkIC8vJE5PTi1OTFMtMyQKLQkJCQkJQ2hhcnNldC5kZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSk7CisJCQkJCVN5c3RlbVJlYWRlci5nZXRJbnN0YW5jZSgpLmdldERlZmF1bHRDaGFyc2V0KCkubmFtZSgpKTsKIAkJfSBjYXRjaCAoQ29tbWFuZEZhaWxlZEV4Y2VwdGlvbiBlKSB7CiAJCQkvLyBUaGlzIGNvbW1hbmQgZmFpbHMgaWYgdGhlIHN5c3RlbSBjb25maWcgZG9lc24ndCBleGlzdAogCQkJaWYgKExPRy5pc0RlYnVnRW5hYmxlZCgpKSB7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvRlNfUE9TSVguamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GU19QT1NJWC5qYXZhCmluZGV4IDk0NmQ4MWMuLjFjMTEzNjEgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GU19QT1NJWC5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9GU19QT1NJWC5qYXZhCkBAIC0xNyw3ICsxNyw2IEBACiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtUmVhZGVyOwogaW1wb3J0IGphdmEuaW8uT3V0cHV0U3RyZWFtOwotaW1wb3J0IGphdmEubmlvLmNoYXJzZXQuQ2hhcnNldDsKIGltcG9ydCBqYXZhLm5pby5maWxlLkZpbGVBbHJlYWR5RXhpc3RzRXhjZXB0aW9uOwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZVN0b3JlOwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZVN5c3RlbUV4Y2VwdGlvbjsKQEAgLTExOSw4ICsxMTgsOCBAQCBwcml2YXRlIHN0YXRpYyBpbnQgcmVhZFVtYXNrKCkgewogCQkJCQluZXcgU3RyaW5nW10geyAic2giLCAiLWMiLCAidW1hc2siIH0sIC8vJE5PTi1OTFMtMSQgLy8kTk9OLU5MUy0yJCAvLyROT04tTkxTLTMkCiAJCQkJCW51bGwsIG51bGwpOwogCQkJdHJ5IChCdWZmZXJlZFJlYWRlciBsaW5lUmVhZCA9IG5ldyBCdWZmZXJlZFJlYWRlcigKLQkJCQkJbmV3IElucHV0U3RyZWFtUmVhZGVyKHAuZ2V0SW5wdXRTdHJlYW0oKSwgQ2hhcnNldAotCQkJCQkJCS5kZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSkpKSB7CisJCQkJCW5ldyBJbnB1dFN0cmVhbVJlYWRlcihwLmdldElucHV0U3RyZWFtKCksIFN5c3RlbVJlYWRlcgorCQkJCQkJCS5nZXRJbnN0YW5jZSgpLmdldERlZmF1bHRDaGFyc2V0KCkubmFtZSgpKSkpIHsKIAkJCQlpZiAocC53YWl0Rm9yKCkgPT0gMCkgewogCQkJCQlTdHJpbmcgcyA9IGxpbmVSZWFkLnJlYWRMaW5lKCk7CiAJCQkJCWlmIChzICE9IG51bGwgJiYgcy5tYXRjaGVzKCIwP1xcZHszfSIpKSB7IC8vJE5PTi1OTFMtMSQKQEAgLTE1MCw3ICsxNDksOCBAQCBwcm90ZWN0ZWQgRmlsZSBkaXNjb3ZlckdpdEV4ZSgpIHsKIAkJCQkJdHJ5IHsKIAkJCQkJCVN0cmluZyB3ID0gcmVhZFBpcGUodXNlckhvbWUoKSwKIAkJCQkJCQluZXcgU3RyaW5nW117ImJhc2giLCAiLS1sb2dpbiIsICItYyIsICJ3aGljaCBnaXQifSwgLy8gLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkIC8vJE5PTi1OTFMtMyQgLy8kTk9OLU5MUy00JAotCQkJCQkJCUNoYXJzZXQuZGVmYXVsdENoYXJzZXQoKS5uYW1lKCkpOworCQkJCQkJCQlTeXN0ZW1SZWFkZXIuZ2V0SW5zdGFuY2UoKS5nZXREZWZhdWx0Q2hhcnNldCgpCisJCQkJCQkJCQkJLm5hbWUoKSk7CiAJCQkJCQlpZiAoIVN0cmluZ1V0aWxzLmlzRW1wdHlPck51bGwodykpIHsKIAkJCQkJCQlnaXRFeGUgPSBuZXcgRmlsZSh3KTsKIAkJCQkJCX0KQEAgLTE2OCw3ICsxNjgsOCBAQCBwcm90ZWN0ZWQgRmlsZSBkaXNjb3ZlckdpdEV4ZSgpIHsKIAkJCQl0cnkgewogCQkJCQlTdHJpbmcgdyA9IHJlYWRQaXBlKHVzZXJIb21lKCksCiAJCQkJCQkJbmV3IFN0cmluZ1tdIHsgInhjb2RlLXNlbGVjdCIsICItcCIgfSwgLy8kTk9OLU5MUy0xJCAvLyROT04tTkxTLTIkCi0JCQkJCQkJQ2hhcnNldC5kZWZhdWx0Q2hhcnNldCgpLm5hbWUoKSk7CisJCQkJCQkJU3lzdGVtUmVhZGVyLmdldEluc3RhbmNlKCkuZ2V0RGVmYXVsdENoYXJzZXQoKQorCQkJCQkJCQkJLm5hbWUoKSk7CiAJCQkJCWlmIChTdHJpbmdVdGlscy5pc0VtcHR5T3JOdWxsKHcpKSB7CiAJCQkJCQlnaXRFeGUgPSBudWxsOwogCQkJCQl9IGVsc2UgewpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL0ZTX1dpbjMyLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvRlNfV2luMzIuamF2YQppbmRleCBkNDRkYzMyLi5mZjA5NGY2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvRlNfV2luMzIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvRlNfV2luMzIuamF2YQpAQCAtMTMsNyArMTMsNiBAQAogCiBpbXBvcnQgamF2YS5pby5GaWxlOwogaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247Ci1pbXBvcnQgamF2YS5uaW8uY2hhcnNldC5DaGFyc2V0OwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZVZpc2l0T3B0aW9uOwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZVZpc2l0UmVzdWx0OwogaW1wb3J0IGphdmEubmlvLmZpbGUuRmlsZXM7CkBAIC0xNTAsOCArMTQ5LDEwIEBAIHByb3RlY3RlZCBGaWxlIGRpc2NvdmVyR2l0RXhlKCkgewogCQkJCVN0cmluZyB3OwogCQkJCXRyeSB7CiAJCQkJCXcgPSByZWFkUGlwZSh1c2VySG9tZSgpLAotCQkJCQkJbmV3IFN0cmluZ1tdeyJiYXNoIiwgIi0tbG9naW4iLCAiLWMiLCAid2hpY2ggZ2l0In0sIC8vIC8vJE5PTi1OTFMtMSQgLy8kTk9OLU5MUy0yJCAvLyROT04tTkxTLTMkIC8vJE5PTi1OTFMtNCQKLQkJCQkJCUNoYXJzZXQuZGVmYXVsdENoYXJzZXQoKS5uYW1lKCkpOworCQkJCQkJCW5ldyBTdHJpbmdbXSB7ICJiYXNoIiwgIi0tbG9naW4iLCAiLWMiLCAvLyROT04tTkxTLTEkIC8vJE5PTi1OTFMtMiQgLy8kTk9OLU5MUy0zJAorCQkJCQkJCQkJIndoaWNoIGdpdCIgfSwgLy8gLy8kTk9OLU5MUy0xJAorCQkJCQkJCVN5c3RlbVJlYWRlci5nZXRJbnN0YW5jZSgpLmdldERlZmF1bHRDaGFyc2V0KCkKKwkJCQkJCQkJCS5uYW1lKCkpOwogCQkJCX0gY2F0Y2ggKENvbW1hbmRGYWlsZWRFeGNlcHRpb24gZSkgewogCQkJCQlMT0cud2FybihlLmdldE1lc3NhZ2UoKSk7CiAJCQkJCXJldHVybiBudWxsOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL0dpdERhdGVQYXJzZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9HaXREYXRlUGFyc2VyLmphdmEKaW5kZXggMGExYTkwYS4uNmE0YjM5NiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL0dpdERhdGVQYXJzZXIuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvR2l0RGF0ZVBhcnNlci5qYXZhCkBAIC00MCw3ICs0MCw3IEBAIHB1YmxpYyBjbGFzcyBHaXREYXRlUGFyc2VyIHsKIAkvLyBiZSBjYWNoZWQuIFNpbmNlIHRoZXkgYXJlIGFsc28gbm90IHRocmVhZHNhZmUgdGhleSBhcmUgY2FjaGVkIHVzaW5nCiAJLy8gVGhyZWFkTG9jYWwuCiAJcHJpdmF0ZSBzdGF0aWMgVGhyZWFkTG9jYWw8TWFwPExvY2FsZSwgTWFwPFBhcnNlYWJsZVNpbXBsZURhdGVGb3JtYXQsIFNpbXBsZURhdGVGb3JtYXQ+Pj4gZm9ybWF0Q2FjaGUgPQotCQkJbmV3IFRocmVhZExvY2FsPE1hcDxMb2NhbGUsIE1hcDxQYXJzZWFibGVTaW1wbGVEYXRlRm9ybWF0LCBTaW1wbGVEYXRlRm9ybWF0Pj4+KCkgeworCQkJbmV3IFRocmVhZExvY2FsPD4oKSB7CiAKIAkJQE92ZXJyaWRlCiAJCXByb3RlY3RlZCBNYXA8TG9jYWxlLCBNYXA8UGFyc2VhYmxlU2ltcGxlRGF0ZUZvcm1hdCwgU2ltcGxlRGF0ZUZvcm1hdD4+IGluaXRpYWxWYWx1ZSgpIHsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9IdHRwU3VwcG9ydC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL0h0dHBTdXBwb3J0LmphdmEKaW5kZXggNjYzYTM0NC4uZTNiYTYwNiAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL0h0dHBTdXBwb3J0LmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL0h0dHBTdXBwb3J0LmphdmEKQEAgLTE5Niw3ICsxOTYsNyBAQCBwdWJsaWMgc3RhdGljIHZvaWQgZW5jb2RlKFN0cmluZ0J1aWxkZXIgdXJsc3RyLCBTdHJpbmcga2V5KSB7CiAJICogICAgICAgICAgICB0aGVtIHRvICIlMkYiKS4KIAkgKgogCSAqIEByZXR1cm4gVGhlIHRyYW5zbGF0ZWQgVVJMLgotCSAqIEBzaW5jZSA1LjEzCisJICogQHNpbmNlIDUuMTMuMQogCSAqLwogCXB1YmxpYyBzdGF0aWMgU3RyaW5nIHVybEVuY29kZShTdHJpbmcgdXJsLCBib29sZWFuIGtlZXBQYXRoU2xhc2gpIHsKIAkJU3RyaW5nIGVuY29kZWQ7CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvUmF3UGFyc2VVdGlscy5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1Jhd1BhcnNlVXRpbHMuamF2YQppbmRleCBkZjljNmM3Li4wZThlOWIzIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvUmF3UGFyc2VVdGlscy5qYXZhCisrKyBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9SYXdQYXJzZVV0aWxzLmphdmEKQEAgLTMwLDYgKzMwLDcgQEAKIGltcG9ydCBqYXZhLnV0aWwuTWFwOwogCiBpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9ucy5OdWxsYWJsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmRpZmYuUmF3VGV4dDsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmVycm9ycy5CaW5hcnlCbG9iRXhjZXB0aW9uOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQubGliLkNvbnN0YW50czsKIGltcG9ydCBvcmcuZWNsaXBzZS5qZ2l0LmxpYi5QZXJzb25JZGVudDsKQEAgLTY3OSwzNiArNjgwLDMwIEBAIHB1YmxpYyBzdGF0aWMgZmluYWwgSW50TGlzdCBsaW5lTWFwKGJ5dGVbXSBidWYsIGludCBwdHIsIGludCBlbmQpIHsKIAkgKiAgICAgICAgICAgIDEgcGFzdCB0aGUgZW5kIG9mIHRoZSBjb250ZW50IHdpdGhpbiA8Y29kZT5idWY8L2NvZGU+LgogCSAqIEByZXR1cm4gYSBsaW5lIG1hcCBpbmRpY2F0aW5nIHRoZSBzdGFydGluZyBwb3NpdGlvbiBvZiBlYWNoIGxpbmUuCiAJICogQHRocm93cyBCaW5hcnlCbG9iRXhjZXB0aW9uCi0JICogICAgICAgICAgICBpZiBhIE5VTCBieXRlIGlzIGZvdW5kLgorCSAqICAgICAgICAgICAgIGlmIGEgTlVMIGJ5dGUgb3IgYSBsb25lIENSIGlzIGZvdW5kLgogCSAqIEBzaW5jZSA1LjAKIAkgKi8KIAlwdWJsaWMgc3RhdGljIGZpbmFsIEludExpc3QgbGluZU1hcE9yQmluYXJ5KGJ5dGVbXSBidWYsIGludCBwdHIsIGludCBlbmQpCiAJCQl0aHJvd3MgQmluYXJ5QmxvYkV4Y2VwdGlvbiB7Ci0JCUludExpc3QgbWFwID0gbGluZU1hcE9yTnVsbChidWYsIHB0ciwgZW5kKTsKLQkJaWYgKG1hcCA9PSBudWxsKSB7Ci0JCQl0aHJvdyBuZXcgQmluYXJ5QmxvYkV4Y2VwdGlvbigpOwotCQl9Ci0JCXJldHVybiBtYXA7Ci0JfQotCi0JQE51bGxhYmxlCi0JcHJpdmF0ZSBzdGF0aWMgSW50TGlzdCBsaW5lTWFwT3JOdWxsKGJ5dGVbXSBidWYsIGludCBwdHIsIGludCBlbmQpIHsKIAkJLy8gRXhwZXJpbWVudGFsbHkgZGVyaXZlZCBmcm9tIG11bHRpcGxlIHNvdXJjZSByZXBvc2l0b3JpZXMKIAkJLy8gdGhlIGF2ZXJhZ2UgbnVtYmVyIG9mIGJ5dGVzL2xpbmUgaXMgMzYuIEl0cyBhIHJvdWdoIGd1ZXNzCiAJCS8vIHRvIGluaXRpYWxseSBzaXplIG91ciBtYXAgY2xvc2UgdG8gdGhlIHRhcmdldC4KIAkJSW50TGlzdCBtYXAgPSBuZXcgSW50TGlzdCgoZW5kIC0gcHRyKSAvIDM2KTsKIAkJbWFwLmFkZChJbnRlZ2VyLk1JTl9WQUxVRSk7Ci0JCWJvb2xlYW4gZm91bmRMRiA9IHRydWU7CisJCWJ5dGUgbGFzdCA9ICdcbic7IC8vIE11c3QgYmUgXG4gdG8gYWRkIHRoZSBpbml0aWFsIHB0cgogCQlmb3IgKDsgcHRyIDwgZW5kOyBwdHIrKykgewotCQkJaWYgKGZvdW5kTEYpIHsKKwkJCWlmIChsYXN0ID09ICdcbicpIHsKIAkJCQltYXAuYWRkKHB0cik7CiAJCQl9Ci0KLQkJCWlmIChidWZbcHRyXSA9PSAnXDAnKSB7Ci0JCQkJcmV0dXJuIG51bGw7CisJCQlieXRlIGN1cnIgPSBidWZbcHRyXTsKKwkJCWlmIChSYXdUZXh0LmlzQmluYXJ5KGN1cnIsIGxhc3QpKSB7CisJCQkJdGhyb3cgbmV3IEJpbmFyeUJsb2JFeGNlcHRpb24oKTsKIAkJCX0KLQotCQkJZm91bmRMRiA9IChidWZbcHRyXSA9PSAnXG4nKTsKKwkJCWxhc3QgPSBjdXJyOworCQl9CisJCWlmIChsYXN0ID09ICdccicpIHsKKwkJCS8vIENvdW50cyBhcyBiaW5hcnkKKwkJCXRocm93IG5ldyBCaW5hcnlCbG9iRXhjZXB0aW9uKCk7CiAJCX0KIAkJbWFwLmFkZChlbmQpOwogCQlyZXR1cm4gbWFwOwpAQCAtMTE2MCw3ICsxMTU1LDcgQEAgcHVibGljIHN0YXRpYyBTdHJpbmcgZGVjb2RlTm9GYWxsYmFjayhmaW5hbCBDaGFyc2V0IGNzLAogCiAJCS8vIFRyeSB0aGUgZGVmYXVsdCBjaGFyYWN0ZXIgc2V0LiBBIHNtYWxsIGdyb3VwIG9mIHBlb3BsZQogCQkvLyBtaWdodCBhY3R1YWxseSB1c2UgdGhlIHNhbWUgKG9yIHZlcnkgc2ltaWxhcikgbG9jYWxlLgotCQlDaGFyc2V0IGRlZmNzID0gQ2hhcnNldC5kZWZhdWx0Q2hhcnNldCgpOworCQlDaGFyc2V0IGRlZmNzID0gU3lzdGVtUmVhZGVyLmdldEluc3RhbmNlKCkuZ2V0RGVmYXVsdENoYXJzZXQoKTsKIAkJaWYgKCFkZWZjcy5lcXVhbHMoY3MpICYmICFkZWZjcy5lcXVhbHMoVVRGXzgpKSB7CiAJCQl0cnkgewogCQkJCXJldHVybiBkZWNvZGUoYiwgZGVmY3MpOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1JlZkxpc3QuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9SZWZMaXN0LmphdmEKaW5kZXggNmJmODU4My4uNDYyYmFiMCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1JlZkxpc3QuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvUmVmTGlzdC5qYXZhCkBAIC03Myw3ICs3Myw3IEBAIHByb3RlY3RlZCBSZWZMaXN0KFJlZkxpc3Q8VD4gc3JjKSB7CiAJLyoqIHtAaW5oZXJpdERvY30gKi8KIAlAT3ZlcnJpZGUKIAlwdWJsaWMgSXRlcmF0b3I8UmVmPiBpdGVyYXRvcigpIHsKLQkJcmV0dXJuIG5ldyBJdGVyYXRvcjxSZWY+KCkgeworCQlyZXR1cm4gbmV3IEl0ZXJhdG9yPD4oKSB7CiAJCQlwcml2YXRlIGludCBpZHg7CiAKIAkJCUBPdmVycmlkZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1JlZk1hcC5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1JlZk1hcC5qYXZhCmluZGV4IGZhYzYzYjguLmM2OGE3NmMgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9SZWZNYXAuamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvUmVmTWFwLmphdmEKQEAgLTE5OSw3ICsxOTksOCBAQCBwdWJsaWMgYm9vbGVhbiBpc0VtcHR5KCkgewogCUBPdmVycmlkZQogCXB1YmxpYyBTZXQ8RW50cnk8U3RyaW5nLCBSZWY+PiBlbnRyeVNldCgpIHsKIAkJaWYgKGVudHJ5U2V0ID09IG51bGwpIHsKLQkJCWVudHJ5U2V0ID0gbmV3IEFic3RyYWN0U2V0PEVudHJ5PFN0cmluZywgUmVmPj4oKSB7CisJCQllbnRyeVNldCA9IG5ldyBBYnN0cmFjdFNldDw+KCkgeworCiAJCQkJQE92ZXJyaWRlCiAJCQkJcHVibGljIEl0ZXJhdG9yPEVudHJ5PFN0cmluZywgUmVmPj4gaXRlcmF0b3IoKSB7CiAJCQkJCXJldHVybiBuZXcgU2V0SXRlcmF0b3IoKTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9TdHJpbmdVdGlscy5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1N0cmluZ1V0aWxzLmphdmEKaW5kZXggNjFkZTY1Yy4uOGFiMTMzOCAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1N0cmluZ1V0aWxzLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1N0cmluZ1V0aWxzLmphdmEKQEAgLTEzLDEyICsxMywyMCBAQAogaW1wb3J0IGphdmEudGV4dC5NZXNzYWdlRm9ybWF0OwogaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOwogCitpbXBvcnQgb3JnLmVjbGlwc2UuamdpdC5hbm5vdGF0aW9ucy5Ob25OdWxsOwogaW1wb3J0IG9yZy5lY2xpcHNlLmpnaXQuaW50ZXJuYWwuSkdpdFRleHQ7CiAKIC8qKgogICogTWlzY2VsbGFuZW91cyBzdHJpbmcgY29tcGFyaXNvbiB1dGlsaXR5IG1ldGhvZHMuCiAgKi8KIHB1YmxpYyBmaW5hbCBjbGFzcyBTdHJpbmdVdGlscyB7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBsb25nIEtpQiA9IDEwMjQ7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBsb25nIE1pQiA9IDEwMjQgKiBLaUI7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBsb25nIEdpQiA9IDEwMjQgKiBNaUI7CisKIAlwcml2YXRlIHN0YXRpYyBmaW5hbCBjaGFyW10gTEM7CiAKIAlzdGF0aWMgewpAQCAtMzA3LDQgKzMxNSwxMzUgQEAgcHVibGljIHN0YXRpYyBTdHJpbmcgcmVwbGFjZUxpbmVCcmVha3NXaXRoU3BhY2UoU3RyaW5nIGluKSB7CiAJCX0KIAkJcmV0dXJuIG5ldyBTdHJpbmcoYnVmLCAwLCBvKTsKIAl9CisKKwkvKioKKwkgKiBQYXJzZXMgYSBudW1iZXIgd2l0aCBvcHRpb25hbCBjYXNlLWluc2Vuc2l0aXZlIHN1ZmZpeCAnaycsICdtJywgb3IgJ2cnCisJICogaW5kaWNhdGluZyBLaUIsIE1pQiwgYW5kIEdpQiwgcmVzcGVjdGl2ZWx5LiBUaGUgc3VmZml4IG1heSBmb2xsb3cgdGhlCisJICogbnVtYmVyIHdpdGggb3B0aW9uYWwgc2VwYXJhdGlvbiBieSBvbmUgb3IgbW9yZSBibGFua3MuCisJICoKKwkgKiBAcGFyYW0gdmFsdWUKKwkgKiAgICAgICAgICAgIHtAbGluayBTdHJpbmd9wqB0byBwYXJzZTsgd2l0aCBsZWFkaW5nIGFuZCB0cmFpbGluZyB3aGl0ZXNwYWNlCisJICogICAgICAgICAgICBpZ25vcmVkCisJICogQHBhcmFtIHBvc2l0aXZlT25seQorCSAqICAgICAgICAgICAge0Bjb2RlIHRydWV9IHRvIG9ubHkgYWNjZXB0IHBvc2l0aXZlIG51bWJlcnMsIHtAY29kZSBmYWxzZX0gdG8KKwkgKiAgICAgICAgICAgIGFsbG93IG5lZ2F0aXZlIG51bWJlcnMsIHRvbworCSAqIEByZXR1cm4gdGhlIHZhbHVlIHBhcnNlZAorCSAqIEB0aHJvd3MgTnVtYmVyRm9ybWF0RXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYgdGhlIHtAdmFsdWV9IGlzIG5vdCBwYXJzZWFibGUsIG9yIGJleW9uZCB0aGUgcmFuZ2Ugb2YKKwkgKiAgICAgICAgICAgICB7QGxpbmsgTG9uZ30KKwkgKiBAdGhyb3dzIFN0cmluZ0luZGV4T3V0T2ZCb3VuZHNFeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBpZiB0aGUgc3RyaW5nIGlzIGVtcHR5IG9yIGNvbnRhaW5zIG9ubHkgd2hpdGVzcGFjZSwgb3IKKwkgKiAgICAgICAgICAgICBjb250YWlucyBvbmx5IHRoZSBsZXR0ZXIgJ2snLCAnbScsIG9yICdnJworCSAqIEBzaW5jZSA2LjAKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGxvbmcgcGFyc2VMb25nV2l0aFN1ZmZpeChATm9uTnVsbCBTdHJpbmcgdmFsdWUsCisJCQlib29sZWFuIHBvc2l0aXZlT25seSkKKwkJCXRocm93cyBOdW1iZXJGb3JtYXRFeGNlcHRpb24sIFN0cmluZ0luZGV4T3V0T2ZCb3VuZHNFeGNlcHRpb24geworCQlTdHJpbmcgbiA9IHZhbHVlLnN0cmlwKCk7CisJCWlmIChuLmlzRW1wdHkoKSkgeworCQkJdGhyb3cgbmV3IFN0cmluZ0luZGV4T3V0T2ZCb3VuZHNFeGNlcHRpb24oKTsKKwkJfQorCQlsb25nIG11bCA9IDE7CisJCXN3aXRjaCAobi5jaGFyQXQobi5sZW5ndGgoKSAtIDEpKSB7CisJCWNhc2UgJ2cnOgorCQljYXNlICdHJzoKKwkJCW11bCA9IEdpQjsKKwkJCWJyZWFrOworCQljYXNlICdtJzoKKwkJY2FzZSAnTSc6CisJCQltdWwgPSBNaUI7CisJCQlicmVhazsKKwkJY2FzZSAnayc6CisJCWNhc2UgJ0snOgorCQkJbXVsID0gS2lCOworCQkJYnJlYWs7CisJCWRlZmF1bHQ6CisJCQlicmVhazsKKwkJfQorCQlpZiAobXVsID4gMSkgeworCQkJbiA9IG4uc3Vic3RyaW5nKDAsIG4ubGVuZ3RoKCkgLSAxKS50cmltKCk7CisJCX0KKwkJaWYgKG4uaXNFbXB0eSgpKSB7CisJCQl0aHJvdyBuZXcgU3RyaW5nSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbigpOworCQl9CisJCWxvbmcgbnVtYmVyOworCQlpZiAocG9zaXRpdmVPbmx5KSB7CisJCQludW1iZXIgPSBMb25nLnBhcnNlVW5zaWduZWRMb25nKG4pOworCQkJaWYgKG51bWJlciA8IDApIHsKKwkJCQl0aHJvdyBuZXcgTnVtYmVyRm9ybWF0RXhjZXB0aW9uKAorCQkJCQkJTWVzc2FnZUZvcm1hdC5mb3JtYXQoSkdpdFRleHQuZ2V0KCkudmFsdWVFeGNlZWRzUmFuZ2UsCisJCQkJCQkJCXZhbHVlLCBMb25nLmNsYXNzLmdldFNpbXBsZU5hbWUoKSkpOworCQkJfQorCQl9IGVsc2UgeworCQkJbnVtYmVyID0gTG9uZy5wYXJzZUxvbmcobik7CisJCX0KKwkJaWYgKG11bCA9PSAxKSB7CisJCQlyZXR1cm4gbnVtYmVyOworCQl9CisJCXRyeSB7CisJCQlyZXR1cm4gTWF0aC5tdWx0aXBseUV4YWN0KG11bCwgbnVtYmVyKTsKKwkJfSBjYXRjaCAoQXJpdGhtZXRpY0V4Y2VwdGlvbiBlKSB7CisJCQlOdW1iZXJGb3JtYXRFeGNlcHRpb24gbmZlID0gbmV3IE51bWJlckZvcm1hdEV4Y2VwdGlvbigKKwkJCQkJZS5nZXRMb2NhbGl6ZWRNZXNzYWdlKCkpOworCQkJbmZlLmluaXRDYXVzZShlKTsKKwkJCXRocm93IG5mZTsKKwkJfQorCX0KKworCS8qKgorCSAqIFBhcnNlcyBhIG51bWJlciB3aXRoIG9wdGlvbmFsIGNhc2UtaW5zZW5zaXRpdmUgc3VmZml4ICdrJywgJ20nLCBvciAnZycKKwkgKiBpbmRpY2F0aW5nIEtpQiwgTWlCLCBhbmQgR2lCLCByZXNwZWN0aXZlbHkuIFRoZSBzdWZmaXggbWF5IGZvbGxvdyB0aGUKKwkgKiBudW1iZXIgd2l0aCBvcHRpb25hbCBzZXBhcmF0aW9uIGJ5IGJsYW5rcy4KKwkgKgorCSAqIEBwYXJhbSB2YWx1ZQorCSAqICAgICAgICAgICAge0BsaW5rIFN0cmluZ33CoHRvIHBhcnNlOyB3aXRoIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UKKwkgKiAgICAgICAgICAgIGlnbm9yZWQKKwkgKiBAcGFyYW0gcG9zaXRpdmVPbmx5CisJICogICAgICAgICAgICB7QGNvZGUgdHJ1ZX0gdG8gb25seSBhY2NlcHQgcG9zaXRpdmUgbnVtYmVycywge0Bjb2RlIGZhbHNlfSB0bworCSAqICAgICAgICAgICAgYWxsb3cgbmVnYXRpdmUgbnVtYmVycywgdG9vCisJICogQHJldHVybiB0aGUgdmFsdWUgcGFyc2VkCisJICogQHRocm93cyBOdW1iZXJGb3JtYXRFeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBpZiB0aGUge0B2YWx1ZX0gaXMgbm90IHBhcnNlYWJsZSBvciBiZXlvbmQgdGhlIHJhbmdlIG9mCisJICogICAgICAgICAgICAge0BsaW5rIEludGVnZXJ9CisJICogQHRocm93cyBTdHJpbmdJbmRleE91dE9mQm91bmRzRXhjZXB0aW9uCisJICogICAgICAgICAgICAgaWYgdGhlIHN0cmluZyBpcyBlbXB0eSBvciBjb250YWlucyBvbmx5IHdoaXRlc3BhY2UsIG9yCisJICogICAgICAgICAgICAgY29udGFpbnMgb25seSB0aGUgbGV0dGVyICdrJywgJ20nLCBvciAnZycKKwkgKiBAc2luY2UgNi4wCisJICovCisJcHVibGljIHN0YXRpYyBpbnQgcGFyc2VJbnRXaXRoU3VmZml4KEBOb25OdWxsIFN0cmluZyB2YWx1ZSwKKwkJCWJvb2xlYW4gcG9zaXRpdmVPbmx5KQorCQkJdGhyb3dzIE51bWJlckZvcm1hdEV4Y2VwdGlvbiwgU3RyaW5nSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbiB7CisJCXRyeSB7CisJCQlyZXR1cm4gTWF0aC50b0ludEV4YWN0KHBhcnNlTG9uZ1dpdGhTdWZmaXgodmFsdWUsIHBvc2l0aXZlT25seSkpOworCQl9IGNhdGNoIChBcml0aG1ldGljRXhjZXB0aW9uIGUpIHsKKwkJCU51bWJlckZvcm1hdEV4Y2VwdGlvbiBuZmUgPSBuZXcgTnVtYmVyRm9ybWF0RXhjZXB0aW9uKAorCQkJCQlNZXNzYWdlRm9ybWF0LmZvcm1hdChKR2l0VGV4dC5nZXQoKS52YWx1ZUV4Y2VlZHNSYW5nZSwKKwkJCQkJCQl2YWx1ZSwgSW50ZWdlci5jbGFzcy5nZXRTaW1wbGVOYW1lKCkpKTsKKwkJCW5mZS5pbml0Q2F1c2UoZSk7CisJCQl0aHJvdyBuZmU7CisJCX0KKwl9CisKKwkvKioKKwkgKiBGb3JtYXRzIGFuIGludGVncmFsIHZhbHVlIGFzIGEgZGVjaW1hbCBudW1iZXIgd2l0aCAnaycsICdtJywgb3IgJ2cnCisJICogc3VmZml4IGlmIGl0IGlzIGFuIGV4YWN0IG11bHRpcGxlIG9mIDEwMjQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSB2YWx1ZQorCSAqIHJlcHJlc2VudGF0aW9uIGFzIGEgZGVjaW1hbCBudW1iZXIgd2l0aG91dCBzdWZmaXguCisJICoKKwkgKiBAcGFyYW0gdmFsdWUKKwkgKiAgICAgICAgICAgIFZhbHVlIHRvIGZvcm1hdAorCSAqIEByZXR1cm4gdGhlIHZhbHVlJ3MgU3RyaW5nIHJlcHJlc2VudGF0aW9uCisJICogQHNpbmNlIDYuMAorCSAqLworCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGZvcm1hdFdpdGhTdWZmaXgobG9uZyB2YWx1ZSkgeworCQlpZiAodmFsdWUgPj0gR2lCICYmICh2YWx1ZSAlIEdpQikgPT0gMCkgeworCQkJcmV0dXJuIFN0cmluZy52YWx1ZU9mKHZhbHVlIC8gR2lCKSArICdnJzsKKwkJfQorCQlpZiAodmFsdWUgPj0gTWlCICYmICh2YWx1ZSAlIE1pQikgPT0gMCkgeworCQkJcmV0dXJuIFN0cmluZy52YWx1ZU9mKHZhbHVlIC8gTWlCKSArICdtJzsKKwkJfQorCQlpZiAodmFsdWUgPj0gS2lCICYmICh2YWx1ZSAlIEtpQikgPT0gMCkgeworCQkJcmV0dXJuIFN0cmluZy52YWx1ZU9mKHZhbHVlIC8gS2lCKSArICdrJzsKKwkJfQorCQlyZXR1cm4gU3RyaW5nLnZhbHVlT2YodmFsdWUpOworCX0KIH0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9TeXN0ZW1SZWFkZXIuamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9TeXN0ZW1SZWFkZXIuamF2YQppbmRleCA1NGZkNTM5Li4xNmUyNTc3IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvU3lzdGVtUmVhZGVyLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL1N5c3RlbVJlYWRlci5qYXZhCkBAIC0xNyw2ICsxNyw5IEBACiBpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLm5ldC5JbmV0QWRkcmVzczsKIGltcG9ydCBqYXZhLm5ldC5Vbmtub3duSG9zdEV4Y2VwdGlvbjsKK2ltcG9ydCBqYXZhLm5pby5jaGFyc2V0LkNoYXJzZXQ7CitpbXBvcnQgamF2YS5uaW8uY2hhcnNldC5JbGxlZ2FsQ2hhcnNldE5hbWVFeGNlcHRpb247CitpbXBvcnQgamF2YS5uaW8uY2hhcnNldC5VbnN1cHBvcnRlZENoYXJzZXRFeGNlcHRpb247CiBpbXBvcnQgamF2YS5uaW8uZmlsZS5JbnZhbGlkUGF0aEV4Y2VwdGlvbjsKIGltcG9ydCBqYXZhLm5pby5maWxlLlBhdGg7CiBpbXBvcnQgamF2YS5uaW8uZmlsZS5QYXRoczsKQEAgLTE5OCw2ICsyMDEsOCBAQCBwdWJsaWMgc3RhdGljIHZvaWQgc2V0SW5zdGFuY2UoU3lzdGVtUmVhZGVyIG5ld1JlYWRlcikgewogCiAJcHJpdmF0ZSBBdG9taWNSZWZlcmVuY2U8RmlsZUJhc2VkQ29uZmlnPiBqZ2l0Q29uZmlnID0gbmV3IEF0b21pY1JlZmVyZW5jZTw+KCk7CiAKKwlwcml2YXRlIHZvbGF0aWxlIENoYXJzZXQgZGVmYXVsdENoYXJzZXQ7CisKIAlwcml2YXRlIHZvaWQgaW5pdCgpIHsKIAkJLy8gQ3JlYXRpbmcgT2JqZWN0Q2hlY2tlciBtdXN0IGJlIGRlZmVycmVkLiBVbml0IHRlc3RzIGNoYW5nZQogCQkvLyBiZWhhdmlvciBvZiBpc3tXaW5kb3dzLE1hY09TfSBpbiBjb25zdHJ1Y3RvciBvZiBzdWJjbGFzcy4KQEAgLTQzOSw2ICs0NDQsMzUgQEAgcHVibGljIExvY2FsZSBnZXRMb2NhbGUoKSB7CiAJfQogCiAJLyoqCisJICogUmV0cmlldmVzIHRoZSBkZWZhdWx0IHtAbGluayBDaGFyc2V0fSBkZXBlbmRpbmcgb24gdGhlIHN5c3RlbSBsb2NhbGUuCisJICoKKwkgKiBAcmV0dXJuIHRoZSB7QGxpbmsgQ2hhcnNldH0KKwkgKiBAc2luY2UgNi4wCisJICogQHNlZSA8YSBocmVmPSJodHRwczovL29wZW5qZGsuamF2YS5uZXQvamVwcy80MDAiPkpFUCA0MDA8L2E+CisJICovCisJcHVibGljIENoYXJzZXQgZ2V0RGVmYXVsdENoYXJzZXQoKSB7CisJCUNoYXJzZXQgcmVzdWx0ID0gZGVmYXVsdENoYXJzZXQ7CisJCWlmIChyZXN1bHQgPT0gbnVsbCkgeworCQkJLy8gSkVQIDQwMDogSmF2YSAxOCBwb3B1bGF0ZXMgdGhpcyBzeXN0ZW0gcHJvcGVydHkuCisJCQlTdHJpbmcgZW5jb2RpbmcgPSBnZXRQcm9wZXJ0eSgibmF0aXZlLmVuY29kaW5nIik7IC8vJE5PTi1OTFMtMSQKKwkJCXRyeSB7CisJCQkJaWYgKCFTdHJpbmdVdGlscy5pc0VtcHR5T3JOdWxsKGVuY29kaW5nKSkgeworCQkJCQlyZXN1bHQgPSBDaGFyc2V0LmZvck5hbWUoZW5jb2RpbmcpOworCQkJCX0KKwkJCX0gY2F0Y2ggKElsbGVnYWxDaGFyc2V0TmFtZUV4Y2VwdGlvbgorCQkJCQl8IFVuc3VwcG9ydGVkQ2hhcnNldEV4Y2VwdGlvbiBlKSB7CisJCQkJTE9HLmVycm9yKEpHaXRUZXh0LmdldCgpLmxvZ0ludmFsaWREZWZhdWx0Q2hhcnNldCwgZW5jb2RpbmcpOworCQkJfQorCQkJaWYgKHJlc3VsdCA9PSBudWxsKSB7CisJCQkJLy8gVGhpcyBpcyBhbHdheXMgVVRGLTggb24gSmF2YSA+PSAxOC4KKwkJCQlyZXN1bHQgPSBDaGFyc2V0LmRlZmF1bHRDaGFyc2V0KCk7CisJCQl9CisJCQlkZWZhdWx0Q2hhcnNldCA9IHJlc3VsdDsKKwkJfQorCQlyZXR1cm4gcmVzdWx0OworCX0KKworCS8qKgogCSAqIFJldHVybnMgYSBzaW1wbGUgZGF0ZSBmb3JtYXQgaW5zdGFuY2UgYXMgc3BlY2lmaWVkIGJ5IHRoZSBnaXZlbiBwYXR0ZXJuLgogCSAqCiAJICogQHBhcmFtIHBhdHRlcm4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9pby9BdXRvQ1JMRklucHV0U3RyZWFtLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZJbnB1dFN0cmVhbS5qYXZhCmluZGV4IDlkYTg5MDMuLmNlZGIxNTkgMTAwNjQ0Ci0tLSBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9pby9BdXRvQ1JMRklucHV0U3RyZWFtLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9DUkxGSW5wdXRTdHJlYW0uamF2YQpAQCAtMjEsMTYgKzIxLDE1IEBACiAgKgogICogRXhpc3RpbmcgQ1JMRiBhcmUgbm90IGV4cGFuZGVkIHRvIENSQ1JMRiwgYnV0IHJldGFpbmVkIGFzIGlzLgogICoKLSAqIE9wdGlvbmFsbHksIGEgYmluYXJ5IGNoZWNrIG9uIHRoZSBmaXJzdCA4MDAwIGJ5dGVzIGlzIHBlcmZvcm1lZCBhbmQgaW4gY2FzZQotICogb2YgYmluYXJ5IGZpbGVzLCBjYW5vbmljYWxpemF0aW9uIGlzIHR1cm5lZCBvZmYgKGZvciB0aGUgY29tcGxldGUgZmlsZSkuCisgKiBPcHRpb25hbGx5LCBhIGJpbmFyeSBjaGVjayBvbiB0aGUgZmlyc3Qge0BsaW5rIFJhd1RleHQjZ2V0QnVmZmVyU2l6ZSgpfSBieXRlcworICogaXMgcGVyZm9ybWVkIGFuZCBpbiBjYXNlIG9mIGJpbmFyeSBmaWxlcywgY2Fub25pY2FsaXphdGlvbiBpcyB0dXJuZWQgb2ZmIChmb3IKKyAqIHRoZSBjb21wbGV0ZSBmaWxlKS4KICAqLwogcHVibGljIGNsYXNzIEF1dG9DUkxGSW5wdXRTdHJlYW0gZXh0ZW5kcyBJbnB1dFN0cmVhbSB7CiAKLQlzdGF0aWMgZmluYWwgaW50IEJVRkZFUl9TSVpFID0gODA5NjsKLQogCXByaXZhdGUgZmluYWwgYnl0ZVtdIHNpbmdsZSA9IG5ldyBieXRlWzFdOwogCi0JcHJpdmF0ZSBmaW5hbCBieXRlW10gYnVmID0gbmV3IGJ5dGVbQlVGRkVSX1NJWkVdOworCXByaXZhdGUgZmluYWwgYnl0ZVtdIGJ1ZiA9IG5ldyBieXRlW1Jhd1RleHQuZ2V0QnVmZmVyU2l6ZSgpXTsKIAogCXByaXZhdGUgZmluYWwgSW5wdXRTdHJlYW0gaW47CiAKQEAgLTEyNCw3ICsxMjMsNyBAQCBwcml2YXRlIGJvb2xlYW4gZmlsbEJ1ZmZlcigpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCQlyZXR1cm4gZmFsc2U7CiAJCX0KIAkJaWYgKGRldGVjdEJpbmFyeSkgewotCQkJaXNCaW5hcnkgPSBSYXdUZXh0LmlzQmluYXJ5KGJ1ZiwgY250KTsKKwkJCWlzQmluYXJ5ID0gUmF3VGV4dC5pc0JpbmFyeShidWYsIGNudCwgY250IDwgYnVmLmxlbmd0aCk7CiAJCQlkZXRlY3RCaW5hcnkgPSBmYWxzZTsKIAkJfQogCQlwdHIgPSAwOwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9DUkxGT3V0cHV0U3RyZWFtLmphdmEgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZPdXRwdXRTdHJlYW0uamF2YQppbmRleCBlYTZiNjU4Li5lNjM4YjJkIDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZPdXRwdXRTdHJlYW0uamF2YQorKysgYi9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0NSTEZPdXRwdXRTdHJlYW0uamF2YQpAQCAtMjAsMTggKzIwLDE3IEBACiAgKgogICogRXhpc3RpbmcgQ1JMRiBhcmUgbm90IGV4cGFuZGVkIHRvIENSQ1JMRiwgYnV0IHJldGFpbmVkIGFzIGlzLgogICoKLSAqIEEgYmluYXJ5IGNoZWNrIG9uIHRoZSBmaXJzdCA4MDAwIGJ5dGVzIGlzIHBlcmZvcm1lZCBhbmQgaW4gY2FzZSBvZiBiaW5hcnkKLSAqIGZpbGVzLCBjYW5vbmljYWxpemF0aW9uIGlzIHR1cm5lZCBvZmYgKGZvciB0aGUgY29tcGxldGUgZmlsZSkuCisgKiBBIGJpbmFyeSBjaGVjayBvbiB0aGUgZmlyc3Qge0BsaW5rIFJhd1RleHQjZ2V0QnVmZmVyU2l6ZSgpfSBieXRlcyBpcworICogcGVyZm9ybWVkIGFuZCBpbiBjYXNlIG9mIGJpbmFyeSBmaWxlcywgY2Fub25pY2FsaXphdGlvbiBpcyB0dXJuZWQgb2ZmIChmb3IKKyAqIHRoZSBjb21wbGV0ZSBmaWxlKS4KICAqLwogcHVibGljIGNsYXNzIEF1dG9DUkxGT3V0cHV0U3RyZWFtIGV4dGVuZHMgT3V0cHV0U3RyZWFtIHsKIAotCXN0YXRpYyBmaW5hbCBpbnQgQlVGRkVSX1NJWkUgPSA4MDAwOwotCiAJcHJpdmF0ZSBmaW5hbCBPdXRwdXRTdHJlYW0gb3V0OwogCiAJcHJpdmF0ZSBpbnQgYnVmID0gLTE7CiAKLQlwcml2YXRlIGJ5dGVbXSBiaW5idWYgPSBuZXcgYnl0ZVtCVUZGRVJfU0laRV07CisJcHJpdmF0ZSBieXRlW10gYmluYnVmID0gbmV3IGJ5dGVbUmF3VGV4dC5nZXRCdWZmZXJTaXplKCldOwogCiAJcHJpdmF0ZSBieXRlW10gb25lYnl0ZWJ1ZiA9IG5ldyBieXRlWzFdOwogCkBAIC0xMjMsMjAgKzEyMiwyNSBAQCBwdWJsaWMgdm9pZCB3cml0ZShieXRlW10gYiwgaW50IHN0YXJ0T2ZmLCBpbnQgc3RhcnRMZW4pCiAJfQogCiAJcHJpdmF0ZSBpbnQgYnVmZmVyKGJ5dGVbXSBiLCBpbnQgb2ZmLCBpbnQgbGVuKSB0aHJvd3MgSU9FeGNlcHRpb24gewotCQlpZiAoYmluYnVmY250ID4gYmluYnVmLmxlbmd0aCkKKwkJaWYgKGJpbmJ1ZmNudCA+IGJpbmJ1Zi5sZW5ndGgpIHsKIAkJCXJldHVybiBsZW47CisJCX0KIAkJaW50IGNvcHkgPSBNYXRoLm1pbihiaW5idWYubGVuZ3RoIC0gYmluYnVmY250LCBsZW4pOwogCQlTeXN0ZW0uYXJyYXljb3B5KGIsIG9mZiwgYmluYnVmLCBiaW5idWZjbnQsIGNvcHkpOwogCQliaW5idWZjbnQgKz0gY29weTsKIAkJaW50IHJlbWFpbmluZyA9IGxlbiAtIGNvcHk7Ci0JCWlmIChyZW1haW5pbmcgPiAwKQotCQkJZGVjaWRlTW9kZSgpOworCQlpZiAocmVtYWluaW5nID4gMCkgeworCQkJZGVjaWRlTW9kZShmYWxzZSk7CisJCX0KIAkJcmV0dXJuIHJlbWFpbmluZzsKIAl9CiAKLQlwcml2YXRlIHZvaWQgZGVjaWRlTW9kZSgpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJcHJpdmF0ZSB2b2lkIGRlY2lkZU1vZGUoYm9vbGVhbiBjb21wbGV0ZSkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJaWYgKGRldGVjdEJpbmFyeSkgewotCQkJaXNCaW5hcnkgPSBSYXdUZXh0LmlzQmluYXJ5KGJpbmJ1ZiwgYmluYnVmY250KTsKKwkJCWlzQmluYXJ5ID0gUmF3VGV4dC5pc0JpbmFyeShiaW5idWYsIGJpbmJ1ZmNudCwgY29tcGxldGUpOworCQkJaWYgKCFpc0JpbmFyeSkgeworCQkJCWlzQmluYXJ5ID0gUmF3VGV4dC5pc0NyTGZUZXh0KGJpbmJ1ZiwgYmluYnVmY250LCBjb21wbGV0ZSk7CisJCQl9CiAJCQlkZXRlY3RCaW5hcnkgPSBmYWxzZTsKIAkJfQogCQlpbnQgY2FjaGVkTGVuID0gYmluYnVmY250OwpAQCAtMTQ3LDggKzE1MSw5IEBAIHByaXZhdGUgdm9pZCBkZWNpZGVNb2RlKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkvKioge0Bpbmhlcml0RG9jfSAqLwogCUBPdmVycmlkZQogCXB1YmxpYyB2b2lkIGZsdXNoKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKLQkJaWYgKGJpbmJ1ZmNudCA8PSBiaW5idWYubGVuZ3RoKQotCQkJZGVjaWRlTW9kZSgpOworCQlpZiAoYmluYnVmY250IDw9IGJpbmJ1Zi5sZW5ndGgpIHsKKwkJCWRlY2lkZU1vZGUodHJ1ZSk7CisJCX0KIAkJYnVmID0gLTE7CiAJCW91dC5mbHVzaCgpOwogCX0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9pby9BdXRvTEZJbnB1dFN0cmVhbS5qYXZhIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9MRklucHV0U3RyZWFtLmphdmEKaW5kZXggMGUzMzVhOS4uN2RiODgyYyAxMDA2NDQKLS0tIGEvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9MRklucHV0U3RyZWFtLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9MRklucHV0U3RyZWFtLmphdmEKQEAgLTI1LDEwICsyNSwxMSBAQAogICogRXhpc3Rpbmcgc2luZ2xlIENSIGFyZSBub3QgY2hhbmdlZCB0byBMRiBidXQgYXJlIHJldGFpbmVkIGFzIGlzLgogICogPC9wPgogICogPHA+Ci0gKiBPcHRpb25hbGx5LCBhIGJpbmFyeSBjaGVjayBvbiB0aGUgZmlyc3QgOGtCIGlzIHBlcmZvcm1lZCBhbmQgaW4gY2FzZSBvZgotICogYmluYXJ5IGZpbGVzLCBjYW5vbmljYWxpemF0aW9uIGlzIHR1cm5lZCBvZmYgKGZvciB0aGUgY29tcGxldGUgZmlsZSkuIElmCi0gKiBiaW5hcnkgY2hlY2tpbmcgZGV0ZXJtaW5lcyB0aGF0IHRoZSBpbnB1dCBpcyBDUi9MRi1kZWxpbWl0ZWQgdGV4dCBhbmQgdGhlCi0gKiBzdHJlYW0gaGFzIGJlZW4gY3JlYXRlZCBmb3IgY2hlY2tvdXQsIGNhbm9uaWNhbGl6YXRpb24gaXMgYWxzbyB0dXJuZWQgb2ZmLgorICogT3B0aW9uYWxseSwgYSBiaW5hcnkgY2hlY2sgb24gdGhlIGZpcnN0IHtAbGluayBSYXdUZXh0I2dldEJ1ZmZlclNpemUoKX0gYnl0ZXMKKyAqIGlzIHBlcmZvcm1lZCBhbmQgaW4gY2FzZSBvZiBiaW5hcnkgZmlsZXMsIGNhbm9uaWNhbGl6YXRpb24gaXMgdHVybmVkIG9mZiAoZm9yCisgKiB0aGUgY29tcGxldGUgZmlsZSkuIElmIGJpbmFyeSBjaGVja2luZyBkZXRlcm1pbmVzIHRoYXQgdGhlIGlucHV0IGlzCisgKiBDUi9MRi1kZWxpbWl0ZWQgdGV4dCBhbmQgdGhlIHN0cmVhbSBoYXMgYmVlbiBjcmVhdGVkIGZvciBjaGVja291dCwKKyAqIGNhbm9uaWNhbGl6YXRpb24gaXMgYWxzbyB0dXJuZWQgb2ZmLgogICogPC9wPgogICoKICAqIEBzaW5jZSA0LjMKQEAgLTY0LDcgKzY1LDcgQEAgcHVibGljIGVudW0gU3RyZWFtRmxhZyB7CiAKIAlwcml2YXRlIGZpbmFsIGJ5dGVbXSBzaW5nbGUgPSBuZXcgYnl0ZVsxXTsKIAotCXByaXZhdGUgZmluYWwgYnl0ZVtdIGJ1ZiA9IG5ldyBieXRlWzggKiAxMDI0XTsKKwlwcml2YXRlIGZpbmFsIGJ5dGVbXSBidWYgPSBuZXcgYnl0ZVtSYXdUZXh0LmdldEJ1ZmZlclNpemUoKV07CiAKIAlwcml2YXRlIGZpbmFsIElucHV0U3RyZWFtIGluOwogCkBAIC0yNjEsMTQgKzI2MiwxNCBAQCBwcml2YXRlIGJvb2xlYW4gZmlsbEJ1ZmZlcigpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCQlyZXR1cm4gZmFsc2U7CiAJCX0KIAkJaWYgKGRldGVjdEJpbmFyeSkgewotCQkJaXNCaW5hcnkgPSBSYXdUZXh0LmlzQmluYXJ5KGJ1ZiwgY250KTsKKwkJCWlzQmluYXJ5ID0gUmF3VGV4dC5pc0JpbmFyeShidWYsIGNudCwgY250IDwgYnVmLmxlbmd0aCk7CiAJCQlwYXNzQXNJcyA9IGlzQmluYXJ5OwogCQkJZGV0ZWN0QmluYXJ5ID0gZmFsc2U7CiAJCQlpZiAoaXNCaW5hcnkgJiYgYWJvcnRJZkJpbmFyeSkgewogCQkJCXRocm93IG5ldyBJc0JpbmFyeUV4Y2VwdGlvbigpOwogCQkJfQogCQkJaWYgKCFwYXNzQXNJcyAmJiBmb3JDaGVja291dCkgewotCQkJCXBhc3NBc0lzID0gUmF3VGV4dC5pc0NyTGZUZXh0KGJ1ZiwgY250KTsKKwkJCQlwYXNzQXNJcyA9IFJhd1RleHQuaXNDckxmVGV4dChidWYsIGNudCwgY250IDwgYnVmLmxlbmd0aCk7CiAJCQl9CiAJCX0KIAkJcHRyID0gMDsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9pby9BdXRvTEZPdXRwdXRTdHJlYW0uamF2YSBiL29yZy5lY2xpcHNlLmpnaXQvc3JjL29yZy9lY2xpcHNlL2pnaXQvdXRpbC9pby9BdXRvTEZPdXRwdXRTdHJlYW0uamF2YQppbmRleCAxOTVmZGI0Li5hMGU5ZmI2IDEwMDY0NAotLS0gYS9vcmcuZWNsaXBzZS5qZ2l0L3NyYy9vcmcvZWNsaXBzZS9qZ2l0L3V0aWwvaW8vQXV0b0xGT3V0cHV0U3RyZWFtLmphdmEKKysrIGIvb3JnLmVjbGlwc2UuamdpdC9zcmMvb3JnL2VjbGlwc2UvamdpdC91dGlsL2lvL0F1dG9MRk91dHB1dFN0cmVhbS5qYXZhCkBAIC0yMiwyMyArMjIsMjEgQEAKICAqIEV4aXN0aW5nIHNpbmdsZSBDUiBhcmUgbm90IGNoYW5nZWQgdG8gTEYsIGJ1dCByZXRhaW5lZCBhcyBpcy4KICAqIDwvcD4KICAqIDxwPgotICogQSBiaW5hcnkgY2hlY2sgb24gdGhlIGZpcnN0IDgwMDAgYnl0ZXMgaXMgcGVyZm9ybWVkIGFuZCBpbiBjYXNlIG9mIGJpbmFyeQotICogZmlsZXMsIGNhbm9uaWNhbGl6YXRpb24gaXMgdHVybmVkIG9mZiAoZm9yIHRoZSBjb21wbGV0ZSBmaWxlKS4gSWYgdGhlIGJpbmFyeQotICogY2hlY2sgZGV0ZXJtaW5lcyB0aGF0IHRoZSBpbnB1dCBpcyBub3QgYmluYXJ5IGJ1dCB0ZXh0IHdpdGggQ1IvTEYsCi0gKiBjYW5vbmljYWxpemF0aW9uIGlzIGFsc28gdHVybmVkIG9mZi4KKyAqIEEgYmluYXJ5IGNoZWNrIG9uIHRoZSBmaXJzdCB7QGxpbmsgUmF3VGV4dCNnZXRCdWZmZXJTaXplKCl9IGJ5dGVzIGlzCisgKiBwZXJmb3JtZWQgYW5kIGluIGNhc2Ugb2YgYmluYXJ5IGZpbGVzLCBjYW5vbmljYWxpemF0aW9uIGlzIHR1cm5lZCBvZmYgKGZvcgorICogdGhlIGNvbXBsZXRlIGZpbGUpLiBJZiB0aGUgYmluYXJ5IGNoZWNrIGRldGVybWluZXMgdGhhdCB0aGUgaW5wdXQgaXMgbm90CisgKiBiaW5hcnkgYnV0IHRleHQgd2l0aCBDUi9MRiwgY2Fub25pY2FsaXphdGlvbiBpcyBhbHNvIHR1cm5lZCBvZmYuCiAgKiA8L3A+CiAgKgogICogQHNpbmNlIDQuMwogICovCiBwdWJsaWMgY2xhc3MgQXV0b0xGT3V0cHV0U3RyZWFtIGV4dGVuZHMgT3V0cHV0U3RyZWFtIHsKIAotCXN0YXRpYyBmaW5hbCBpbnQgQlVGRkVSX1NJWkUgPSA4MDAwOwotCiAJcHJpdmF0ZSBmaW5hbCBPdXRwdXRTdHJlYW0gb3V0OwogCiAJcHJpdmF0ZSBpbnQgYnVmID0gLTE7CiAKLQlwcml2YXRlIGJ5dGVbXSBiaW5idWYgPSBuZXcgYnl0ZVtCVUZGRVJfU0laRV07CisJcHJpdmF0ZSBieXRlW10gYmluYnVmID0gbmV3IGJ5dGVbUmF3VGV4dC5nZXRCdWZmZXJTaXplKCldOwogCiAJcHJpdmF0ZSBieXRlW10gb25lYnl0ZWJ1ZiA9IG5ldyBieXRlWzFdOwogCkBAIC0xNDgsMTYgKzE0NiwxNiBAQCBwcml2YXRlIGludCBidWZmZXIoYnl0ZVtdIGIsIGludCBvZmYsIGludCBsZW4pIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCWJpbmJ1ZmNudCArPSBjb3B5OwogCQlpbnQgcmVtYWluaW5nID0gbGVuIC0gY29weTsKIAkJaWYgKHJlbWFpbmluZyA+IDApIHsKLQkJCWRlY2lkZU1vZGUoKTsKKwkJCWRlY2lkZU1vZGUoZmFsc2UpOwogCQl9CiAJCXJldHVybiByZW1haW5pbmc7CiAJfQogCi0JcHJpdmF0ZSB2b2lkIGRlY2lkZU1vZGUoKSB0aHJvd3MgSU9FeGNlcHRpb24geworCXByaXZhdGUgdm9pZCBkZWNpZGVNb2RlKGJvb2xlYW4gY29tcGxldGUpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAJCWlmIChkZXRlY3RCaW5hcnkpIHsKLQkJCWlzQmluYXJ5ID0gUmF3VGV4dC5pc0JpbmFyeShiaW5idWYsIGJpbmJ1ZmNudCk7CisJCQlpc0JpbmFyeSA9IFJhd1RleHQuaXNCaW5hcnkoYmluYnVmLCBiaW5idWZjbnQsIGNvbXBsZXRlKTsKIAkJCWlmICghaXNCaW5hcnkpIHsKLQkJCQlpc0JpbmFyeSA9IFJhd1RleHQuaXNDckxmVGV4dChiaW5idWYsIGJpbmJ1ZmNudCk7CisJCQkJaXNCaW5hcnkgPSBSYXdUZXh0LmlzQ3JMZlRleHQoYmluYnVmLCBiaW5idWZjbnQsIGNvbXBsZXRlKTsKIAkJCX0KIAkJCWRldGVjdEJpbmFyeSA9IGZhbHNlOwogCQl9CkBAIC0xNzAsNyArMTY4LDcgQEAgcHJpdmF0ZSB2b2lkIGRlY2lkZU1vZGUoKSB0aHJvd3MgSU9FeGNlcHRpb24gewogCUBPdmVycmlkZQogCXB1YmxpYyB2b2lkIGZsdXNoKCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKIAkJaWYgKGJpbmJ1ZmNudCA8PSBiaW5idWYubGVuZ3RoKSB7Ci0JCQlkZWNpZGVNb2RlKCk7CisJCQlkZWNpZGVNb2RlKHRydWUpOwogCQl9CiAJCW91dC5mbHVzaCgpOwogCX0KZGlmZiAtLWdpdCBhL3BvbS54bWwgYi9wb20ueG1sCmluZGV4IDRhZjM4NzIuLmM0ODY1NjkgMTAwNjQ0Ci0tLSBhL3BvbS54bWwKKysrIGIvcG9tLnhtbApAQCAtMTgsNyArMTgsNyBAQAogICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5qZ2l0PC9ncm91cElkPgogICA8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5qZ2l0LXBhcmVudDwvYXJ0aWZhY3RJZD4KICAgPHBhY2thZ2luZz5wb208L3BhY2thZ2luZz4KLSAgPHZlcnNpb24+NS4xMy4zLVNOQVBTSE9UPC92ZXJzaW9uPgorICA8dmVyc2lvbj42LjAuMS1TTkFQU0hPVDwvdmVyc2lvbj4KIAogICA8bmFtZT5KR2l0IC0gUGFyZW50PC9uYW1lPgogICA8dXJsPiR7amdpdC11cmx9PC91cmw+CkBAIC0xNDcsMTEgKzE0NywxMSBAQAogICAgIDxwcm9qZWN0LmJ1aWxkLnNvdXJjZUVuY29kaW5nPlVURi04PC9wcm9qZWN0LmJ1aWxkLnNvdXJjZUVuY29kaW5nPgogICAgIDxwcm9qZWN0LnJlcG9ydGluZy5vdXRwdXRFbmNvZGluZz5VVEYtODwvcHJvamVjdC5yZXBvcnRpbmcub3V0cHV0RW5jb2Rpbmc+CiAgICAgPG1hdmVuLmJ1aWxkLnRpbWVzdGFtcC5mb3JtYXQ+eXl5eU1NZGRISG1tPC9tYXZlbi5idWlsZC50aW1lc3RhbXAuZm9ybWF0PgotICAgIDxtYXZlbi5jb21waWxlci5zb3VyY2U+MS44PC9tYXZlbi5jb21waWxlci5zb3VyY2U+Ci0gICAgPG1hdmVuLmNvbXBpbGVyLnRhcmdldD4xLjg8L21hdmVuLmNvbXBpbGVyLnRhcmdldD4KKyAgICA8amF2YS52ZXJzaW9uPjExPC9qYXZhLnZlcnNpb24+CiAgICAgPGJ1bmRsZS1tYW5pZmVzdD4ke3Byb2plY3QuYnVpbGQuZGlyZWN0b3J5fS9NRVRBLUlORi9NQU5JRkVTVC5NRjwvYnVuZGxlLW1hbmlmZXN0PgogCi0gICAgPGpnaXQtbGFzdC1yZWxlYXNlLXZlcnNpb24+NS4xMi4wLjIwMjEwNjA3MDMzOS1yPC9qZ2l0LWxhc3QtcmVsZWFzZS12ZXJzaW9uPgorICAgIDxqZ2l0LWxhc3QtcmVsZWFzZS12ZXJzaW9uPjUuMTMuMC4yMDIxMDkwODA4MjctcjwvamdpdC1sYXN0LXJlbGVhc2UtdmVyc2lvbj4KKyAgICA8YW50LXZlcnNpb24+MS4xMC4xMjwvYW50LXZlcnNpb24+CiAgICAgPGFwYWNoZS1zc2hkLXZlcnNpb24+Mi43LjA8L2FwYWNoZS1zc2hkLXZlcnNpb24+CiAgICAgPGpzY2gtdmVyc2lvbj4wLjEuNTU8L2pzY2gtdmVyc2lvbj4KICAgICA8anpsaWItdmVyc2lvbj4xLjEuMTwvanpsaWItdmVyc2lvbj4KQEAgLTE2MSwxNCArMTYxLDE0IEBACiAgICAgPGFyZ3M0ai12ZXJzaW9uPjIuMzM8L2FyZ3M0ai12ZXJzaW9uPgogICAgIDxjb21tb25zLWNvbXByZXNzLXZlcnNpb24+MS4yMTwvY29tbW9ucy1jb21wcmVzcy12ZXJzaW9uPgogICAgIDxvc2dpLWNvcmUtdmVyc2lvbj40LjMuMTwvb3NnaS1jb3JlLXZlcnNpb24+Ci0gICAgPHNlcnZsZXQtYXBpLXZlcnNpb24+My4xLjA8L3NlcnZsZXQtYXBpLXZlcnNpb24+Ci0gICAgPGpldHR5LXZlcnNpb24+OS40LjQzLnYyMDIxMDYyOTwvamV0dHktdmVyc2lvbj4KKyAgICA8c2VydmxldC1hcGktdmVyc2lvbj40LjAuMDwvc2VydmxldC1hcGktdmVyc2lvbj4KKyAgICA8amV0dHktdmVyc2lvbj4xMC4wLjY8L2pldHR5LXZlcnNpb24+CiAgICAgPGphcGljbXAtdmVyc2lvbj4wLjE1LjM8L2phcGljbXAtdmVyc2lvbj4KICAgICA8aHR0cGNsaWVudC12ZXJzaW9uPjQuNS4xMzwvaHR0cGNsaWVudC12ZXJzaW9uPgogICAgIDxodHRwY29yZS12ZXJzaW9uPjQuNC4xNDwvaHR0cGNvcmUtdmVyc2lvbj4KICAgICA8c2xmNGotdmVyc2lvbj4xLjcuMzA8L3NsZjRqLXZlcnNpb24+CiAgICAgPG1hdmVuLWphdmFkb2MtcGx1Z2luLXZlcnNpb24+My4zLjE8L21hdmVuLWphdmFkb2MtcGx1Z2luLXZlcnNpb24+Ci0gICAgPHR5Y2hvLWV4dHJhcy12ZXJzaW9uPjEuNy4wPC90eWNoby1leHRyYXMtdmVyc2lvbj4KKyAgICA8dHljaG8tZXh0cmFzLXZlcnNpb24+Mi41LjA8L3R5Y2hvLWV4dHJhcy12ZXJzaW9uPgogICAgIDxnc29uLXZlcnNpb24+Mi44Ljg8L2dzb24tdmVyc2lvbj4KICAgICA8Ym91bmN5Y2FzdGxlLXZlcnNpb24+MS42OTwvYm91bmN5Y2FzdGxlLXZlcnNpb24+CiAgICAgPHNwb3RidWdzLW1hdmVuLXBsdWdpbi12ZXJzaW9uPjQuMy4wPC9zcG90YnVncy1tYXZlbi1wbHVnaW4tdmVyc2lvbj4KQEAgLTE3Nyw3ICsxNzcsNyBAQAogICAgIDxtYXZlbi1zdXJlZmlyZS1wbHVnaW4tdmVyc2lvbj4zLjAuMC1NNTwvbWF2ZW4tc3VyZWZpcmUtcGx1Z2luLXZlcnNpb24+CiAgICAgPG1hdmVuLXN1cmVmaXJlLXJlcG9ydC1wbHVnaW4tdmVyc2lvbj4ke21hdmVuLXN1cmVmaXJlLXBsdWdpbi12ZXJzaW9ufTwvbWF2ZW4tc3VyZWZpcmUtcmVwb3J0LXBsdWdpbi12ZXJzaW9uPgogICAgIDxtYXZlbi1jb21waWxlci1wbHVnaW4tdmVyc2lvbj4zLjguMTwvbWF2ZW4tY29tcGlsZXItcGx1Z2luLXZlcnNpb24+Ci0gICAgPHBsZXh1cy1jb21waWxlci12ZXJzaW9uPjIuOC44PC9wbGV4dXMtY29tcGlsZXItdmVyc2lvbj4KKyAgICA8cGxleHVzLWNvbXBpbGVyLXZlcnNpb24+Mi45LjA8L3BsZXh1cy1jb21waWxlci12ZXJzaW9uPgogICAgIDxoYW1jcmVzdC12ZXJzaW9uPjIuMjwvaGFtY3Jlc3QtdmVyc2lvbj4KICAgICA8YXNzZXJ0ai12ZXJzaW9uPjMuMjAuMjwvYXNzZXJ0ai12ZXJzaW9uPgogCkBAIC0yMDMsMTQgKzIwMyw2IEBACiAgICAgICA8aWQ+cmVwby5lY2xpcHNlLm9yZy5jYmktc25hcHNob3RzPC9pZD4KICAgICAgIDx1cmw+aHR0cHM6Ly9yZXBvLmVjbGlwc2Uub3JnL2NvbnRlbnQvcmVwb3NpdG9yaWVzL2NiaS1zbmFwc2hvdHMvPC91cmw+CiAgICAgPC9wbHVnaW5SZXBvc2l0b3J5PgotICAgIDxwbHVnaW5SZXBvc2l0b3J5PgotICAgICAgPGlkPnJlcG8uZWNsaXBzZS5vcmcuZGFzaC1yZWxlYXNlczwvaWQ+Ci0gICAgICA8dXJsPmh0dHBzOi8vcmVwby5lY2xpcHNlLm9yZy9jb250ZW50L3JlcG9zaXRvcmllcy9kYXNoLWxpY2Vuc2VzLXJlbGVhc2VzLzwvdXJsPgotICAgIDwvcGx1Z2luUmVwb3NpdG9yeT4KLSAgICA8cGx1Z2luUmVwb3NpdG9yeT4KLSAgICAgIDxpZD5yZXBvLmVjbGlwc2Uub3JnLmRhc2gtc25hcHNob3RzPC9pZD4KLSAgICAgIDx1cmw+aHR0cHM6Ly9yZXBvLmVjbGlwc2Uub3JnL2NvbnRlbnQvcmVwb3NpdG9yaWVzL2Rhc2gtbGljZW5zZXMtc25hcHNob3RzLzwvdXJsPgotICAgIDwvcGx1Z2luUmVwb3NpdG9yeT4KICAgPC9wbHVnaW5SZXBvc2l0b3JpZXM+CiAKICAgPGJ1aWxkPgpAQCAtMzEyLDcgKzMwNCw3IEBACiAgICAgICAgICAgPGNvbmZpZ3VyYXRpb24+CiAgICAgICAgICAgICA8c291cmNlRW5jb2Rpbmc+dXRmLTg8L3NvdXJjZUVuY29kaW5nPgogICAgICAgICAgICAgPG1pbmltdW1Ub2tlbnM+MTAwPC9taW5pbXVtVG9rZW5zPgotICAgICAgICAgICAgPHRhcmdldEpkaz4xLjg8L3RhcmdldEpkaz4KKyAgICAgICAgICAgIDx0YXJnZXRKZGs+JHtqYXZhLnZlcnNpb259PC90YXJnZXRKZGs+CiAgICAgICAgICAgICA8Zm9ybWF0PnhtbDwvZm9ybWF0PgogICAgICAgICAgICAgPGZhaWxPblZpb2xhdGlvbj5mYWxzZTwvZmFpbE9uVmlvbGF0aW9uPgogICAgICAgICAgICAgPGV4Y2x1ZGVzPgpAQCAtMzM0LDE2ICszMjYsNiBAQAogICAgICAgICAgIDx2ZXJzaW9uPjEuMy4yPC92ZXJzaW9uPgogICAgICAgICA8L3BsdWdpbj4KICAgICAgICAgPHBsdWdpbj4KLSAgICAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNoby5leHRyYXM8L2dyb3VwSWQ+Ci0gICAgICAgICAgPGFydGlmYWN0SWQ+dHljaG8tcGFjazIwMGEtcGx1Z2luPC9hcnRpZmFjdElkPgotICAgICAgICAgIDx2ZXJzaW9uPiR7dHljaG8tZXh0cmFzLXZlcnNpb259PC92ZXJzaW9uPgotICAgICAgICA8L3BsdWdpbj4KLSAgICAgICAgPHBsdWdpbj4KLSAgICAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNoby5leHRyYXM8L2dyb3VwSWQ+Ci0gICAgICAgICAgPGFydGlmYWN0SWQ+dHljaG8tcGFjazIwMGItcGx1Z2luPC9hcnRpZmFjdElkPgotICAgICAgICAgIDx2ZXJzaW9uPiR7dHljaG8tZXh0cmFzLXZlcnNpb259PC92ZXJzaW9uPgotICAgICAgICA8L3BsdWdpbj4KLSAgICAgICAgPHBsdWdpbj4KICAgICAgICAgICA8Z3JvdXBJZD5vcmcuamFjb2NvPC9ncm91cElkPgogICAgICAgICAgIDxhcnRpZmFjdElkPmphY29jby1tYXZlbi1wbHVnaW48L2FydGlmYWN0SWQ+CiAgICAgICAgICAgPHZlcnNpb24+MC44Ljc8L3ZlcnNpb24+CkBAIC0zOTgsMTIgKzM4MCw3IEBACiAgICAgICAgIDxwbHVnaW4+CiAgICAgICAgICAgPGdyb3VwSWQ+b3JnLnNwcmluZ2ZyYW1ld29yay5ib290PC9ncm91cElkPgogICAgICAgICAgIDxhcnRpZmFjdElkPnNwcmluZy1ib290LW1hdmVuLXBsdWdpbjwvYXJ0aWZhY3RJZD4KLSAgICAgICAgICA8dmVyc2lvbj4yLjQuNDwvdmVyc2lvbj4KLSAgICAgICAgPC9wbHVnaW4+Ci0gICAgICAgIDxwbHVnaW4+Ci0gICAgICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuZGFzaDwvZ3JvdXBJZD4KLSAgICAgICAgICA8YXJ0aWZhY3RJZD5saWNlbnNlLXRvb2wtcGx1Z2luPC9hcnRpZmFjdElkPgotICAgICAgICAgIDx2ZXJzaW9uPjAuMC4xLVNOQVBTSE9UPC92ZXJzaW9uPgorICAgICAgICAgIDx2ZXJzaW9uPjIuNS40PC92ZXJzaW9uPgogICAgICAgICA8L3BsdWdpbj4KICAgICAgIDwvcGx1Z2lucz4KICAgICA8L3BsdWdpbk1hbmFnZW1lbnQ+CkBAIC00ODAsNyArNDU3LDcgQEAKICAgICAgICAgICA8cXVpZXQ+dHJ1ZTwvcXVpZXQ+CiAgICAgICAgICAgPGV4Y2x1ZGVQYWNrYWdlTmFtZXM+b3JnLmVjbGlwc2UuamdpdC5odHRwLnRlc3Q8L2V4Y2x1ZGVQYWNrYWdlTmFtZXM+CiAgICAgICAgICAgPGxpbmtzPgotICAgICAgICAgICAgPGxpbms+aHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvOC9kb2NzL2FwaTwvbGluaz4KKyAgICAgICAgICAgIDxsaW5rPmh0dHBzOi8vZG9jcy5vcmFjbGUuY29tL2VuL2phdmEvamF2YXNlLzExL2RvY3MvYXBpPC9saW5rPgogICAgICAgICAgIDwvbGlua3M+CiAgICAgICAgIDwvY29uZmlndXJhdGlvbj4KICAgICAgICAgPGV4ZWN1dGlvbnM+CkBAIC01NjMsMTAgKzU0MCw2IEBACiAgICAgICAgIDxncm91cElkPm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczwvZ3JvdXBJZD4KICAgICAgICAgPGFydGlmYWN0SWQ+bWF2ZW4tc3VyZWZpcmUtcmVwb3J0LXBsdWdpbjwvYXJ0aWZhY3RJZD4KICAgICAgIDwvcGx1Z2luPgotICAgICAgPHBsdWdpbj4KLSAgICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuZGFzaDwvZ3JvdXBJZD4KLSAgICAgICAgPGFydGlmYWN0SWQ+bGljZW5zZS10b29sLXBsdWdpbjwvYXJ0aWZhY3RJZD4KLSAgICAgIDwvcGx1Z2luPgogICAgIDwvcGx1Z2lucz4KICAgPC9idWlsZD4KIApAQCAtNjk4LDYgKzY3MSwxMiBAQAogICAgICAgPC9kZXBlbmRlbmN5PgogCiAgICAgICA8ZGVwZW5kZW5jeT4KKyAgICAgICAgPGdyb3VwSWQ+b3JnLmFwYWNoZS5hbnQ8L2dyb3VwSWQ+CisgICAgICAgIDxhcnRpZmFjdElkPmFudDwvYXJ0aWZhY3RJZD4KKyAgICAgICAgPHZlcnNpb24+JHthbnQtdmVyc2lvbn08L3ZlcnNpb24+CisgICAgICA8L2RlcGVuZGVuY3k+CisKKyAgICAgIDxkZXBlbmRlbmN5PgogICAgICAgICA8Z3JvdXBJZD5vcmcuYXBhY2hlLmNvbW1vbnM8L2dyb3VwSWQ+CiAgICAgICAgIDxhcnRpZmFjdElkPmNvbW1vbnMtY29tcHJlc3M8L2FydGlmYWN0SWQ+CiAgICAgICAgIDx2ZXJzaW9uPiR7Y29tbW9ucy1jb21wcmVzcy12ZXJzaW9ufTwvdmVyc2lvbj4KQEAgLTgxMiwxNyArNzkxLDI3IEBACiAgICAgICAgICAgICA8YXJ0aWZhY3RJZD5tYXZlbi1jb21waWxlci1wbHVnaW48L2FydGlmYWN0SWQ+CiAgICAgICAgICAgICA8Y29uZmlndXJhdGlvbj4KICAgICAgICAgICAgICAgPGVuY29kaW5nPlVURi04PC9lbmNvZGluZz4KLSAgICAgICAgICAgICAgPHNvdXJjZT4xLjg8L3NvdXJjZT4KLSAgICAgICAgICAgICAgPHRhcmdldD4xLjg8L3RhcmdldD4KKyAgICAgICAgICAgICAgPHJlbGVhc2U+JHtqYXZhLnZlcnNpb259PC9yZWxlYXNlPgorICAgICAgICAgICAgICA8Zm9yaz50cnVlPC9mb3JrPgogICAgICAgICAgICAgICA8Y29tcGlsZXJBcmdzPgogICAgICAgICAgICAgICAgIDxhcmc+LVhEY29tcGlsZVBvbGljeT1zaW1wbGU8L2FyZz4KICAgICAgICAgICAgICAgICA8YXJnPi1YcGx1Z2luOkVycm9yUHJvbmU8L2FyZz4KKyAgICAgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5hcGk9QUxMLVVOTkFNRUQ8L2FyZz4KKyAgICAgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5maWxlPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICAgICAgPGFyZz4tSi0tYWRkLWV4cG9ydHM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMubWFpbj1BTEwtVU5OQU1FRDwvYXJnPgorICAgICAgICAgICAgICAgIDxhcmc+LUotLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLm1vZGVsPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICAgICAgPGFyZz4tSi0tYWRkLWV4cG9ydHM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMucGFyc2VyPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICAgICAgPGFyZz4tSi0tYWRkLWV4cG9ydHM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMucHJvY2Vzc2luZz1BTEwtVU5OQU1FRDwvYXJnPgorICAgICAgICAgICAgICAgIDxhcmc+LUotLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLnRyZWU9QUxMLVVOTkFNRUQ8L2FyZz4KKyAgICAgICAgICAgICAgICA8YXJnPi1KLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy51dGlsPUFMTC1VTk5BTUVEPC9hcmc+CisgICAgICAgICAgICAgICAgPGFyZz4tSi0tYWRkLW9wZW5zPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLmNvZGU9QUxMLVVOTkFNRUQ8L2FyZz4KKyAgICAgICAgICAgICAgICA8YXJnPi1KLS1hZGQtb3BlbnM9amRrLmNvbXBpbGVyL2NvbS5zdW4udG9vbHMuamF2YWMuY29tcD1BTEwtVU5OQU1FRDwvYXJnPgogICAgICAgICAgICAgICA8L2NvbXBpbGVyQXJncz4KICAgICAgICAgICAgICAgPGFubm90YXRpb25Qcm9jZXNzb3JQYXRocz4KICAgICAgICAgICAgICAgICA8cGF0aD4KICAgICAgICAgICAgICAgICAgIDxncm91cElkPmNvbS5nb29nbGUuZXJyb3Jwcm9uZTwvZ3JvdXBJZD4KICAgICAgICAgICAgICAgICAgIDxhcnRpZmFjdElkPmVycm9yX3Byb25lX2NvcmU8L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgICAgICAgICA8dmVyc2lvbj4yLjQuMDwvdmVyc2lvbj4KKyAgICAgICAgICAgICAgICAgIDx2ZXJzaW9uPjIuOS4wPC92ZXJzaW9uPgogICAgICAgICAgICAgICAgIDwvcGF0aD4KICAgICAgICAgICAgICAgPC9hbm5vdGF0aW9uUHJvY2Vzc29yUGF0aHM+CiAgICAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+CkBAIC04MzEsMjkgKzgyMCw2IEBACiAgICAgICA8L2J1aWxkPgogICAgIDwvcHJvZmlsZT4KICAgICA8cHJvZmlsZT4KLSAgICAgIDxpZD5qZGs4PC9pZD4KLSAgICAgIDxhY3RpdmF0aW9uPgotICAgICAgICA8amRrPjEuODwvamRrPgotICAgICAgPC9hY3RpdmF0aW9uPgotICAgICAgPHByb3BlcnRpZXM+Ci0gICAgICAgIDxqYXZhYy52ZXJzaW9uPjkrMTgxLXI0MTczLTE8L2phdmFjLnZlcnNpb24+Ci0gICAgICA8L3Byb3BlcnRpZXM+Ci0gICAgICA8YnVpbGQ+Ci0gICAgICAgIDxwbHVnaW5zPgotICAgICAgICAgIDxwbHVnaW4+Ci0gICAgICAgICAgICA8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+Ci0gICAgICAgICAgICA8YXJ0aWZhY3RJZD5tYXZlbi1jb21waWxlci1wbHVnaW48L2FydGlmYWN0SWQ+Ci0gICAgICAgICAgICA8Y29uZmlndXJhdGlvbj4KLSAgICAgICAgICAgICAgPGZvcms+dHJ1ZTwvZm9yaz4KLSAgICAgICAgICAgICAgPGNvbXBpbGVyQXJncyBjb21iaW5lLmNoaWxkcmVuPSJhcHBlbmQiPgotICAgICAgICAgICAgICAgIDxhcmc+LUotWGJvb3RjbGFzc3BhdGgvcDoke3NldHRpbmdzLmxvY2FsUmVwb3NpdG9yeX0vY29tL2dvb2dsZS9lcnJvcnByb25lL2phdmFjLyR7amF2YWMudmVyc2lvbn0vamF2YWMtJHtqYXZhYy52ZXJzaW9ufS5qYXI8L2FyZz4KLSAgICAgICAgICAgICAgPC9jb21waWxlckFyZ3M+Ci0gICAgICAgICAgICA8L2NvbmZpZ3VyYXRpb24+Ci0gICAgICAgICAgPC9wbHVnaW4+Ci0gICAgICAgIDwvcGx1Z2lucz4KLSAgICAgIDwvYnVpbGQ+Ci0gICAgPC9wcm9maWxlPgotICAgIDxwcm9maWxlPgogICAgICAgPGlkPmVjajwvaWQ+CiAgICAgICA8YWN0aXZhdGlvbj4KICAgICAgICAgPGFjdGl2ZUJ5RGVmYXVsdD50cnVlPC9hY3RpdmVCeURlZmF1bHQ+CkBAIC04NjUsOCArODMxLDcgQEAKICAgICAgICAgICAgIDxjb25maWd1cmF0aW9uPgogICAgICAgICAgICAgICA8Y29tcGlsZXJJZD5lY2xpcHNlPC9jb21waWxlcklkPgogICAgICAgICAgICAgICA8ZW5jb2Rpbmc+VVRGLTg8L2VuY29kaW5nPgotICAgICAgICAgICAgICA8c291cmNlPjEuODwvc291cmNlPgotICAgICAgICAgICAgICA8dGFyZ2V0PjEuODwvdGFyZ2V0PgorICAgICAgICAgICAgICA8cmVsZWFzZT4ke2phdmEudmVyc2lvbn08L3JlbGVhc2U+CiAgICAgICAgICAgICAgIDwhLS0gUGFzc2luZyBhcmd1bWVudHMgaXMgYSB0cmFpbndyZWNrLCBzZWUgaHR0cHM6Ly9pc3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9NQ09NUElMRVItMTIzIC0tPgogICAgICAgICAgICAgICA8Y29tcGlsZXJBcmd1bWVudHM+CiAgICAgICAgICAgICAgICAgPHByb3BlcnRpZXM+JHtwcm9qZWN0LmJhc2VkaXJ9Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmczwvcHJvcGVydGllcz4KQEAgLTg4MSw5ICs4NDYsMTQgQEAKICAgICAgICAgICAgICAgICA8dmVyc2lvbj4ke3BsZXh1cy1jb21waWxlci12ZXJzaW9ufTwvdmVyc2lvbj4KICAgICAgICAgICAgICAgPC9kZXBlbmRlbmN5PgogICAgICAgICAgICAgICA8ZGVwZW5kZW5jeT4KKyAgICAgICAgICAgICAgICA8Z3JvdXBJZD5vcmcuY29kZWhhdXMucGxleHVzPC9ncm91cElkPgorICAgICAgICAgICAgICAgIDxhcnRpZmFjdElkPnBsZXh1cy1jb21waWxlci1hcGk8L2FydGlmYWN0SWQ+CisgICAgICAgICAgICAgICAgPHZlcnNpb24+JHtwbGV4dXMtY29tcGlsZXItdmVyc2lvbn08L3ZlcnNpb24+CisgICAgICAgICAgICAgIDwvZGVwZW5kZW5jeT4KKyAgICAgICAgICAgICAgPGRlcGVuZGVuY3k+CiAgICAgICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UuamR0PC9ncm91cElkPgogICAgICAgICAgICAgICAgIDxhcnRpZmFjdElkPmVjajwvYXJ0aWZhY3RJZD4KLSAgICAgICAgICAgICAgICA8dmVyc2lvbj4zLjI1LjA8L3ZlcnNpb24+CisgICAgICAgICAgICAgICAgPHZlcnNpb24+My4yNy4wPC92ZXJzaW9uPgogICAgICAgICAgICAgICA8L2RlcGVuZGVuY3k+CiAgICAgICAgICAgICA8L2RlcGVuZGVuY2llcz4KICAgICAgICAgICA8L3BsdWdpbj4KQEAgLTkxMCwxOSArODgwLDYgQEAKICAgICAgIDxidWlsZD4KICAgICAgICAgPHBsdWdpbnM+CiAgICAgICAgICAgPHBsdWdpbj4KLSAgICAgICAgICAgIDxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvLmV4dHJhczwvZ3JvdXBJZD4KLSAgICAgICAgICAgIDxhcnRpZmFjdElkPnR5Y2hvLXBhY2syMDBhLXBsdWdpbjwvYXJ0aWZhY3RJZD4KLSAgICAgICAgICAgIDxleGVjdXRpb25zPgotICAgICAgICAgICAgICA8ZXhlY3V0aW9uPgotICAgICAgICAgICAgICAgIDxpZD5wYWNrMjAwLW5vcm1hbGl6ZTwvaWQ+Ci0gICAgICAgICAgICAgICAgPGdvYWxzPgotICAgICAgICAgICAgICAgICAgPGdvYWw+bm9ybWFsaXplPC9nb2FsPgotICAgICAgICAgICAgICAgIDwvZ29hbHM+Ci0gICAgICAgICAgICAgICAgPHBoYXNlPnZlcmlmeTwvcGhhc2U+Ci0gICAgICAgICAgICAgIDwvZXhlY3V0aW9uPgotICAgICAgICAgICAgPC9leGVjdXRpb25zPgotICAgICAgICAgIDwvcGx1Z2luPgotICAgICAgICAgIDxwbHVnaW4+CiAgICAgICAgICAgICA8Z3JvdXBJZD5vcmcuZWNsaXBzZS5jYmkubWF2ZW4ucGx1Z2luczwvZ3JvdXBJZD4KICAgICAgICAgICAgIDxhcnRpZmFjdElkPmVjbGlwc2UtamFyc2lnbmVyLXBsdWdpbjwvYXJ0aWZhY3RJZD4KICAgICAgICAgICAgIDxleGVjdXRpb25zPgpAQCAtOTM1LDE5ICs4OTIsNiBAQAogICAgICAgICAgICAgICA8L2V4ZWN1dGlvbj4KICAgICAgICAgICAgIDwvZXhlY3V0aW9ucz4KICAgICAgICAgICA8L3BsdWdpbj4KLSAgICAgICAgICA8cGx1Z2luPgotICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG8uZXh0cmFzPC9ncm91cElkPgotICAgICAgICAgICAgPGFydGlmYWN0SWQ+dHljaG8tcGFjazIwMGItcGx1Z2luPC9hcnRpZmFjdElkPgotICAgICAgICAgICAgPGV4ZWN1dGlvbnM+Ci0gICAgICAgICAgICAgIDxleGVjdXRpb24+Ci0gICAgICAgICAgICAgICAgPGlkPnBhY2syMDAtcGFjazwvaWQ+Ci0gICAgICAgICAgICAgICAgPGdvYWxzPgotICAgICAgICAgICAgICAgICAgPGdvYWw+cGFjazwvZ29hbD4KLSAgICAgICAgICAgICAgICA8L2dvYWxzPgotICAgICAgICAgICAgICAgIDxwaGFzZT52ZXJpZnk8L3BoYXNlPgotICAgICAgICAgICAgICA8L2V4ZWN1dGlvbj4KLSAgICAgICAgICAgIDwvZXhlY3V0aW9ucz4KLSAgICAgICAgICA8L3BsdWdpbj4KICAgICAgICAgPC9wbHVnaW5zPgogICAgICAgPC9idWlsZD4KICAgICA8L3Byb2ZpbGU+CkBAIC05NjgsNiArOTEyLDcgQEAKICAgICA8bW9kdWxlPm9yZy5lY2xpcHNlLmpnaXQuaHR0cC5hcGFjaGU8L21vZHVsZT4KICAgICA8bW9kdWxlPm9yZy5lY2xpcHNlLmpnaXQuaHR0cC5zZXJ2ZXI8L21vZHVsZT4KICAgICA8bW9kdWxlPm9yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZTwvbW9kdWxlPgorICAgIDxtb2R1bGU+b3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLmFnZW50PC9tb2R1bGU+CiAgICAgPG1vZHVsZT5vcmcuZWNsaXBzZS5qZ2l0LnNzaC5qc2NoPC9tb2R1bGU+CiAgICAgPG1vZHVsZT5vcmcuZWNsaXBzZS5qZ2l0LnBnbTwvbW9kdWxlPgogICAgIDxtb2R1bGU+b3JnLmVjbGlwc2UuamdpdC5sZnM8L21vZHVsZT4KZGlmZiAtLWdpdCBhL3JlbGVhc2Utbm90ZXMudHh0IGIvcmVsZWFzZS1ub3Rlcy50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk2ZWNmNzcuLjAwMDAwMDAKLS0tIGEvcmVsZWFzZS1ub3Rlcy50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzMCArMCwwIEBACi1QZXJmb3JtYW5jZSBJbXByb3ZlbWVudHMKLQotNTgxNzIzIFN1cHBvcnQgdGhlIG5ldyBvcHRpb24gaW5kZXguc2tpcEhhc2ggd2hpY2ggd2FzIGludHJvZHVjZWQgaW4gZ2l0IDIuNDAuIAotICAgIElmIGl0IGlzIHNldCB0byB0cnVlIHNraXAgY29tcHV0aW5nIHRoZSBnaXQgaW5kZXggY2hlY2tzdW0uIFRoaXMKLSAgICBhY2NlbGVyYXRlcyBHaXQgY29tbWFuZHMgdGhhdCBtYW5pcHVsYXRlIHRoZSBpbmRleCwgc3VjaCBhcyBnaXQgYWRkLCBnaXQKLSAgICBjb21taXQsIG9yIGdpdCBzdGF0dXMuCi1BbGxvdyB0byBwZXJmb3JtIFBhY2tlZEJhdGNoUmVmVXBkYXRlIHdpdGhvdXQgbG9ja2luZyBsb29zZSByZWZzCi1TaG9ydGN1dCBkdXJpbmcgZ2l0IGZldGNoIGZvciBhdm9pZGluZyBsb29waW5nIHRocm91Z2ggYWxsIGxvY2FsIHJlZnMKLUFsbG93IHRoZSBleGNsdXNpb25zIG9mIHJlZnMgcHJlZml4ZXMgZnJvbSBiaXRtYXAgaW5kZXggZ2VuZXJhdGlvbgotNTgxMjY3IFBhY2tXcml0ZXJCaXRtYXBQcmVwYXJlcjogZG8gbm90IGluY2x1ZGUgYW5ub3RhdGVkIHRhZ3MgaW4gYml0bWFwIGluZGV4Ci1TcGVlZHVwIEdDIGxpc3Rpbmcgb2JqZWN0cyByZWZlcmVuY2VkIGZyb20gcmVmbG9ncwotNTgwMzEwIEFkZCBvcHRpb24gdG8gYWxsb3cgdXNpbmcgSkRLJ3MgU0hBMSBpbXBsZW1lbnRhdGlvbgotNTc5ODA1IERvIG5vdCBjcmVhdGUgcmVmbG9nIGZvciByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMgZHVyaW5nIGNsb25lCi1VcGxvYWRQYWNrOiBkbyBub3QgY2hlY2sgcmVhY2hhYmlsaXR5IG9mIHZpc2libGUgU0hBMXMgYXQgdGhlIHRpcHMgb2YgYW4gYWR2ZXJ0aXNlZCByZWYKLQotQnVnIEZpeGVzCi0KLTU4MjA0NCBSZXZlcnQgIlJlZkRpcmVjdG9yeTogVGhyb3cgZXhjZXB0aW9uIGlmIENBUyBvZiBwYWNrZWQgcmVmIGxpc3QgZmFpbHMiCi1QcmV2ZW50IGluZmluaXRlIGxvb3AgcmVzY2FubmluZyB0aGUgcGFjayBsaXN0IG9uIFBhY2tNaXNtYXRjaEV4Y2VwdGlvbgotR0M6IENsb3NlIEZpbGUubGluZXMgc3RyZWFtCi1JZiB0cnlMb2NrIGZhaWxzIHRvIGdldCB0aGUgbG9jayBhbm90aGVyIGdjIGhhcyBpdAotRG9uJ3Qgc3dhbGxvdyBJT0V4Y2VwdGlvbiBpbiBHQy5QaWRMb2NrI2xvY2sKLUNoZWNrIGlmIEZpbGVMb2NrIGlzIHZhbGlkIGJlZm9yZSB1c2luZyBvciByZWxlYXNpbmcgaXQKLUFjcXVpcmUgZmlsZSBsb2NrICJnYy5waWQiIGJlZm9yZSBydW5uaW5nIGdjCi1BZGQgcGFjayBvcHRpb25zIHRvIHByZXNlcnZlIGFuZCBwcnVuZSBvbGQgcGFjayBmaWxlcwotRmV0Y2hDb21tYW5kOiBmaXggZmV0Y2hTdWJtb2R1bGVzIHRvIHdvcmsgb24gYSBSZWYgdG8gYSBibG9iCi1CYXRjaGluZ1Byb2dyZXNzTW9uaXRvcjogYXZvaWQgaW50IG92ZXJmbG93IHdoZW4gY29tcHV0aW5nIHBlcmNlbnRhZ2UKLTU4MDk1MyBJZ25vcmUgSWxsZWdhbFN0YXRlRXhjZXB0aW9uIGlmIEpWTSBpcyBhbHJlYWR5IHNodXR0aW5nIGRvd24KLTU3OTY3MCBVcGxvYWRQYWNrOiBkb24ndCBwcmVtYXR1cmVseSB0ZXJtaW5hdGUgdGltZXIgaW4gY2FzZSBvZiBlcnJvcgotNTc3MDE4IEFkZCBtaXNzaW5nIHBhY2thZ2UgaW1wb3J0IGphdmF4Lm1hbmFnZW1lbnQgdG8gb3JnLmVjbGlwc2UuamdpdApkaWZmIC0tZ2l0IGEvdG9vbHMvQlVJTEQgYi90b29scy9CVUlMRAppbmRleCBlZWFjM2UwLi4xODI2MjQ5IDEwMDY0NAotLS0gYS90b29scy9CVUlMRAorKysgYi90b29scy9CVUlMRApAQCAtNSwxMCArNSwyNyBAQAogKQogbG9hZCgiQHJ1bGVzX2phdmEvL2phdmE6ZGVmcy5iemwiLCAiamF2YV9wYWNrYWdlX2NvbmZpZ3VyYXRpb24iKQogCitKREsxMV9KVk1fT1BUUyA9IFsKKyAgICAiLS1hZGQtZXhwb3J0cz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5hcGk9QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLmNvZGU9QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLmNvbXA9QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLmZpbGU9QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLm1haW49QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLnRyZWU9QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1leHBvcnRzPWpkay5jb21waWxlci9jb20uc3VuLnRvb2xzLmphdmFjLnV0aWw9QUxMLVVOTkFNRUQiLAorICAgICItLWFkZC1vcGVucz1qZGsuY29tcGlsZXIvY29tLnN1bi50b29scy5qYXZhYy5maWxlPUFMTC1VTk5BTUVEIiwKKyAgICAiLS1wYXRjaC1tb2R1bGU9amF2YS5jb21waWxlcj0kKGxvY2F0aW9uIEBiYXplbF90b29scy8vdG9vbHMvamRrOmphdmFfY29tcGlsZXJfamFyKSIsCisgICAgIi0tcGF0Y2gtbW9kdWxlPWpkay5jb21waWxlcj0kKGxvY2F0aW9uIEBiYXplbF90b29scy8vdG9vbHMvamRrOmpka19jb21waWxlcl9qYXIpIiwKKyAgICAiLS1hZGQtb3BlbnM9amF2YS5iYXNlL2phdmEubmlvPUFMTC1VTk5BTUVEIiwKKyAgICAiLS1hZGQtb3BlbnM9amF2YS5iYXNlL2phdmEubGFuZz1BTEwtVU5OQU1FRCIsCitdCisKIGRlZmF1bHRfamF2YV90b29sY2hhaW4oCiAgICAgbmFtZSA9ICJlcnJvcl9wcm9uZV93YXJuaW5nc190b29sY2hhaW4iLAogICAgIGJvb3RjbGFzc3BhdGggPSBbIkBiYXplbF90b29scy8vdG9vbHMvamRrOnBsYXRmb3JtY2xhc3NwYXRoLmphciJdLAotICAgIGp2bV9vcHRzID0gSkRLOV9KVk1fT1BUUywKKyAgICBqdm1fb3B0cyA9IEpESzExX0pWTV9PUFRTLAorICAgIHNvdXJjZV92ZXJzaW9uID0gIjExIiwKKyAgICB0YXJnZXRfdmVyc2lvbiA9ICIxMSIsCiAgICAgcGFja2FnZV9jb25maWd1cmF0aW9uID0gWwogICAgICAgICAiOmVycm9yX3Byb25lIiwKICAgICBdLApAQCAtMTAzLDYgKzEyMCw4IEBACiAgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQucGFja2FnaW5nLy4uLiIsCiAgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQucGdtLnRlc3QvLi4uIiwKICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5wZ20vLi4uIiwKKyAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC5zc2guYXBhY2hlLy4uLiIsCisgICAgICAgICIvL29yZy5lY2xpcHNlLmpnaXQuc3NoLmFwYWNoZS5hZ2VudC8uLi4iLAogICAgICAgICAiLy9vcmcuZWNsaXBzZS5qZ2l0LnRlc3QvLi4uIiwKICAgICAgICAgIi8vb3JnLmVjbGlwc2UuamdpdC51aS8uLi4iLAogICAgICAgICAiLy9vcmcuZWNsaXBzZS5qZ2l0Ly4uLiIsCmRpZmYgLS1naXQgYS90b29scy9lY2xpcHNlLUpHaXQtRm9ybWF0LnhtbCBiL3Rvb2xzL2VjbGlwc2UtSkdpdC1Gb3JtYXQueG1sCmluZGV4IDQ5MDc1OGEuLjM5MjRhOTUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2VjbGlwc2UtSkdpdC1Gb3JtYXQueG1sCisrKyBiL3Rvb2xzL2VjbGlwc2UtSkdpdC1Gb3JtYXQueG1sCkBAIC0xLDI2NyArMSwzOTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgotPHByb2ZpbGVzIHZlcnNpb249IjExIj4KLTxwcm9maWxlIGtpbmQ9IkNvZGVGb3JtYXR0ZXJQcm9maWxlIiBuYW1lPSJKR2l0IEZvcm1hdCIgdmVyc2lvbj0iMTEiPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9iZWZvcmVfcm9vdF90YWdzIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9hbm5vdGF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9wYXJhbWV0ZXJzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9jYXNlIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9hbm5vdGF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Nsb3NpbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXIiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maWVsZCIgdmFsdWU9IjEiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fd2hpbGUiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9hbm5vdGF0aW9uX3R5cGVfbWVtYmVyX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2Vsc2VfaW5faWZfc3RhdGVtZW50IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2Vsc2Vfc3RhdGVtZW50X29uX3NhbWVfbGluZSIgdmFsdWU9ImZhbHNlIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lmluc2VydF9uZXdfbGluZV9mb3JfcGFyYW1ldGVyIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcyIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXRfaW5fYW5ub3RhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9tdWx0aXBsZV9maWVsZHMiIHZhbHVlPSIxNiIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2V4cHJlc3Npb25zX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uIiB2YWx1ZT0iODAiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2ZvciIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYmluYXJ5X29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fd2lsZGNhcmQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9ImVuZF9vZl9saW5lIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfZmluYWxseV9pbl90cnlfc3RhdGVtZW50IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fZW51bV9jb25zdGFudCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbG9jYWxfdmFyaWFibGUiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9jYXRjaF9pbl90cnlfc3RhdGVtZW50IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19hZnRlcl9wYWNrYWdlIiB2YWx1ZT0iMSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fd2hpbGUiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3R5cGVfcGFyYW1ldGVycyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb250aW51YXRpb25faW5kZW50YXRpb24iIHZhbHVlPSIyIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9wb3N0Zml4X29wZXJhdG9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbiIgdmFsdWU9IjE2Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX25ld19jaHVuayIgdmFsdWU9IjEiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9iaW5hcnlfb3BlcmF0b3IiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2UiIHZhbHVlPSIwIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlIiB2YWx1ZT0iMS44Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fZW51bV9jb25zdGFudF9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfbGluZV9jb21tZW50cyIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fZW51bV9kZWNsYXJhdGlvbnMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2Jsb2NrIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGwiIHZhbHVlPSIxNiIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX21ldGhvZF9pbnZvY2F0aW9uX2FyZ3VtZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fZW51bV9jb25zdGFudCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnMiIHZhbHVlPSJmYWxzZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbWVtYmVyX3R5cGUiIHZhbHVlPSIxIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2ZvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3NlbGVjdG9yX2luX21ldGhvZF9pbnZvY2F0aW9uIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfdW5hcnlfb3BlcmF0b3IiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb2xvbl9pbl9jYXNlIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3BhcmFtZXRlcl9kZXNjcmlwdGlvbiIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmNsZWFyX2JsYW5rX2xpbmVzX2luX2Jsb2NrX2NvbW1lbnQiIHZhbHVlPSJmYWxzZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5faWYiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubGluZVNwbGl0IiB2YWx1ZT0iODAiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fYnJhY2tldHNfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9leHBsaWNpdGNvbnN0cnVjdG9yY2FsbF9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uIiB2YWx1ZT0iMCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50YXRpb24uc2l6ZSIgdmFsdWU9IjQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2VudW1fY29uc3RhbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudCIgdmFsdWU9IjAiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSIxNiIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci50YWJ1bGF0aW9uLmNoYXIiIHZhbHVlPSJ0YWIiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmFzc2VydElkZW50aWZpZXIiIHZhbHVlPSJlcnJvciIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb25fcGFyYW1ldGVycyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3ByZWZpeF9vcGVyYXRvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N0YXRlbWVudHNfY29tcGFyZV90b19ib2R5IiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbWV0aG9kIiB2YWx1ZT0iMSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2ZvciIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5mb3JtYXRfZ3VhcmRpYW5fY2xhdXNlX29uX29uZV9saW5lIiB2YWx1ZT0iZmFsc2UiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2Nhc3QiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbiIgdmFsdWU9IjE2Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb2xvbl9pbl9sYWJlbGVkX3N0YXRlbWVudCIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X21ldGhvZF9ib2R5IiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9lbnVtX2NvbnN0YW50IiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fYW5ub3RhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2F0X2luX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tZXRob2RfZGVjbGFyYXRpb25fdGhyb3dzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5faWYiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9zd2l0Y2giIHZhbHVlPSJlbmRfb2ZfbGluZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbWV0aG9kX2RlY2xhcmF0aW9uX3Rocm93cyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbl9pbl9yZXR1cm4iIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2Fubm90YXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3F1ZXN0aW9uX2luX2NvbmRpdGlvbmFsIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX2FyZ3VtZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb25faW5fdGhyb3ciIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19zd2l0Y2giIHZhbHVlPSJmYWxzZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXIiIHZhbHVlPSJlcnJvciIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYmxvY2siIHZhbHVlPSJlbmRfb2ZfbGluZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2VsbGlwc2lzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2Zvcl9pbml0cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9ImVuZF9vZl9saW5lIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbXBhY3RfZWxzZV9pZiIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2Zvcl9pbmNyZW1lbnRzIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19icmFja2V0X2luX2FycmF5X3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbmRlbnRfcm9vdF90YWdzIiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9jb25zdGFudCIgdmFsdWU9ImVuZF9vZl9saW5lIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fZW51bV9kZWNsYXJhdGlvbnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9leHBsaWNpdGNvbnN0cnVjdG9yY2FsbF9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tZXRob2RfZGVjbGFyYXRpb25fcGFyYW1ldGVycyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV90eXBlX3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplIiB2YWx1ZT0iNCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfb3BlbmluZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Nsb3NpbmdfYnJhY2VfaW5fYmxvY2siIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2luX2VtcHR5X2VudW1fY29uc3RhbnQiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfcmVmZXJlbmNlIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfYXJndW1lbnRzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb25fdGhyb3dzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9pZiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jbGVhcl9ibGFua19saW5lc19pbl9qYXZhZG9jX2NvbW1lbnQiIHZhbHVlPSJmYWxzZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb24iIHZhbHVlPSIxNiIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3IiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fzc2lnbm1lbnRfb3BlcmF0b3IiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzIiB2YWx1ZT0iZmFsc2UiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19wYXJlbl9pbl9jYXN0IiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tZXRob2RfZGVjbGFyYXRpb25fcGFyYW1ldGVycyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfYmxvY2tfaW5fY2FzZSIgdmFsdWU9ImVuZF9vZl9saW5lIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9lbXB0eV9saW5lc190b19wcmVzZXJ2ZSIgdmFsdWU9IjEiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fY2F0Y2giIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19icmFja2V0X2luX2FycmF5X3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9IjE2Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hbmRfaW5fdHlwZV9wYXJhbWV0ZXIiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlIiB2YWx1ZT0iMS44Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbnRpbnVhdGlvbl9pbmRlbnRhdGlvbl9mb3JfYXJyYXlfaW5pdGlhbGl6ZXIiIHZhbHVlPSIyIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYXRfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X2JyYWNrZXRzX2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fY2FzdCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV91bmFyeV9vcGVyYXRvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2Fub255bW91c190eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfZW1wdHlfYXJyYXlfaW5pdGlhbGl6ZXJfb25fb25lX2xpbmUiIHZhbHVlPSJmYWxzZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfZW51bV9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfaW1wbGVfaWZfb25fb25lX2xpbmUiIHZhbHVlPSJmYWxzZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2xhYmVsZWRfc3RhdGVtZW50IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29sb25faW5fZm9yIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hdF9lbmRfb2ZfZmlsZV9pZl9taXNzaW5nIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfZW51bV9kZWNsYXJhdGlvbiIgdmFsdWU9ImVuZF9vZl9saW5lIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYmluYXJ5X2V4cHJlc3Npb24iIHZhbHVlPSIxNiIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fd2hpbGUiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZSIgdmFsdWU9ImVuYWJsZWQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucHV0X2VtcHR5X3N0YXRlbWVudF9vbl9uZXdfbGluZSIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fcGFyYW1ldGVyIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9qYXZhZG9jX2NvbW1lbnRzIiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9lbnVtX2NvbnN0YW50IiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV93aGlsZV9pbl9kb19zdGF0ZW1lbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQubGluZV9sZW5ndGgiIHZhbHVlPSI4MCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHMiIHZhbHVlPSIxIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fZW51bV9jb25zdGFudF9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbiIgdmFsdWU9ImVuZF9vZl9saW5lIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYXRfYmVnaW5uaW5nX29mX21ldGhvZF9ib2R5IiB2YWx1ZT0iMCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbG9uX2luX2NvbmRpdGlvbmFsIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX3R5cGVfaGVhZGVyIiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fYW5ub3RhdGlvbl90eXBlX21lbWJlcl9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucyIgdmFsdWU9IjEiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXIiIHZhbHVlPSJ0cnVlIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpbmFyeV9vcGVyYXRvciIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbiIgdmFsdWU9IjE2Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zdGF0ZW1lbnRzX2NvbXBhcmVfdG9fYmxvY2siIHZhbHVlPSJ0cnVlIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWwiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9mb3JfaW5pdHMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb21wYWN0X2lmIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X3N3aXRjaHN0YXRlbWVudHNfY29tcGFyZV90b19jYXNlcyIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29sb25faW5fZGVmYXVsdCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hbmRfaW5fdHlwZV9wYXJhbWV0ZXIiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfaW1wb3J0cyIgdmFsdWU9IjEiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbG9uX2luX2Fzc2VydCIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9odG1sIiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9hbGxvY2F0aW9uX2V4cHJlc3Npb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9pbl9lbXB0eV9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb2xvbl9pbl9jb25kaXRpb25hbCIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fZm9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3Bvc3RmaXhfb3BlcmF0b3IiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X3NvdXJjZV9jb2RlIiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9zeW5jaHJvbml6ZWQiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uX3Rocm93cyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3BhcmFtZXRlcnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybSIgdmFsdWU9IjEuOCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2VfdGFic19vbmx5X2Zvcl9sZWFkaW5nX2luZGVudGF0aW9ucyIgdmFsdWU9ImZhbHNlIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlciIgdmFsdWU9ImZhbHNlIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX21lbWJlciIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9ibG9ja19jb21tZW50cyIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2VudW1fY29uc3RhbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfZW51bV9jb25zdGFudHMiIHZhbHVlPSIwIi8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyIiB2YWx1ZT0idHJ1ZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfaW5fZW1wdHlfYmxvY2siIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2NhdGNoIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9mb3JfaW5jcmVtZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaCIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfaW52b2NhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9hc3NlcnQiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSJlbmRfb2ZfbGluZSIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fYXJyYXlfaW5pdGlhbGl6ZXIiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfc2VtaWNvbG9uX2luX2ZvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2NhdGNoIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tdWx0aXBsZV9maWVsZF9kZWNsYXJhdGlvbnMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2Fubm90YXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlIiB2YWx1ZT0iaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tZXRob2RfaW52b2NhdGlvbl9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfaW1wb3J0cyIgdmFsdWU9IjEiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucyIgdmFsdWU9Imluc2VydCIvPgotPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b19lbnVtX2NvbnN0YW50X2hlYWRlciIgdmFsdWU9InRydWUiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3IiIHZhbHVlPSJpbnNlcnQiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2xpbmVfY29tbWVudHNfb25fZmlyc3RfY29sdW1uIiB2YWx1ZT0iZmFsc2UiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+Ci08c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfdGhlbl9zdGF0ZW1lbnRfb25fc2FtZV9saW5lIiB2YWx1ZT0iZmFsc2UiLz4KLTxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubmV2ZXJfaW5kZW50X2Jsb2NrX2NvbW1lbnRzX29uX2ZpcnN0X2NvbHVtbiIgdmFsdWU9ImZhbHNlIi8+Ci08L3Byb2ZpbGU+Cis8cHJvZmlsZXMgdmVyc2lvbj0iMjEiPgorICAgIDxwcm9maWxlIGtpbmQ9IkNvZGVGb3JtYXR0ZXJQcm9maWxlIiBuYW1lPSJKR2l0IEZvcm1hdCIgdmVyc2lvbj0iMjEiPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9lbGxpcHNpcyIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9lbnVtX2RlY2xhcmF0aW9ucyIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9mb3Jfc3RhdG1lbnQiIHZhbHVlPSJjb21tb25fbGluZXMiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50Lm5ld19saW5lc19hdF9ibG9ja19ib3VuZGFyaWVzIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbl9wYXJhbWV0ZXJzIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfZm9yX3BhcmFtZXRlciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3BhY2thZ2UiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fZW51bV9jb25zdGFudCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fd2hpbGUiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX2Fubm90YXRpb25fdHlwZV9tZW1iZXJfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfamF2YWRvY19jb21tZW50cyIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRhdGlvbi5zaXplIiB2YWx1ZT0iNCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9lbnVtX2NvbnN0YW50X2RlY2xhcmF0aW9uIiB2YWx1ZT0iY29tbW9uX2xpbmVzIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NlbWljb2xvbl9pbl9mb3IiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl93aXRoX3NwYWNlcyIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29udGludWF0aW9uX2luZGVudGF0aW9uIiB2YWx1ZT0iMiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19iZWZvcmVfY29kZV9ibG9jayIgdmFsdWU9IjAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N3aXRjaF9jYXNlX2V4cHJlc3Npb25zIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX3BhY2thZ2UiIHZhbHVlPSIxIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX211bHRpcGxlX2xvY2FsX2RlY2xhcmF0aW9ucyIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2VudW1fY29uc3RhbnQiIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9yb290X3RhZ3MiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfb3Jfb3BlcmF0b3JfbXVsdGljYXRjaCIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5lbmFibGluZ190YWciIHZhbHVlPSJAZm9ybWF0dGVyOm9uIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5jb3VudF9saW5lX2xlbmd0aF9mcm9tX3N0YXJ0aW5nX3Bvc2l0aW9uIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlY29yZF9jb21wb25lbnRzIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Rocm93c19jbGF1c2VfaW5fbWV0aG9kX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfYW5ub3RhdGlvbl9vbl9wYXJhbWV0ZXIiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3IiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF90aGVuX3N0YXRlbWVudF9vbl9zYW1lX2xpbmUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9leHBsaWNpdGNvbnN0cnVjdG9yY2FsbF9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcHJlZml4X29wZXJhdG9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2FmdGVyX2Fubm90YXRpb25fb25fbWV0aG9kIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlcyIgdmFsdWU9IjAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2xvZ2ljYWxfb3BlcmF0b3IiIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19wYXJlbl9pbl9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9hbm5vdGF0aW9uX2RlY2xhcmF0aW9uX29uX29uZV9saW5lIiB2YWx1ZT0ib25lX2xpbmVfbmV2ZXIiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fcmVjb3JkX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2VudW1fY29uc3RhbnQiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3IiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYW5kX2luX3R5cGVfcGFyYW1ldGVyIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfcGFyZW5zX2luX21ldGhvZF9pbnZvY2F0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hc3NpZ25tZW50X29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9mb3IiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5wcmVzZXJ2ZV93aGl0ZV9zcGFjZV9iZXR3ZWVuX2NvZGVfYW5kX2xpbmVfY29tbWVudHMiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2xvY2FsX3ZhcmlhYmxlIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2Fic3RyYWN0X21ldGhvZCIgdmFsdWU9IjEiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fY29uc3RhbnRfZGVjbGFyYXRpb25fb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWduX3ZhcmlhYmxlX2RlY2xhcmF0aW9uc19vbl9jb2x1bW5zIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl91bmlvbl90eXBlX2luX211bHRpY2F0Y2giIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9iZWdpbm5pbmdfb2ZfbWV0aG9kX2JvZHkiIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9lbHNlX3N0YXRlbWVudF9vbl9zYW1lX2xpbmUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9jYXRjaF9jbGF1c2UiIHZhbHVlPSJjb21tb25fbGluZXMiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fcGFyYW1ldGVyaXplZF90eXBlX3JlZmVyZW5jZSIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fYXJyYXlfaW5pdGlhbGl6ZXIiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9hbm5vdGF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2V4cGxpY2l0X2NvbnN0cnVjdG9yX2NhbGwiIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfbXVsdGlwbGljYXRpdmVfb3BlcmF0b3IiIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zd2l0Y2hfY2FzZV9leHByZXNzaW9ucyIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3NoaWZ0X29wZXJhdG9yIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9ib2R5X2RlY2xhcmF0aW9uc19jb21wYXJlX3RvX2Fubm90YXRpb25fZGVjbGFyYXRpb25faGVhZGVyIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9ibG9jayIgdmFsdWU9ImVuZF9vZl9saW5lIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2VuZF9vZl9jb2RlX2Jsb2NrIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYml0d2lzZV9vcGVyYXRvciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnB1dF9lbXB0eV9zdGF0ZW1lbnRfb25fbmV3X2xpbmUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9wYXJhbWV0ZXJzX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfcGFyYW1ldGVycyIgdmFsdWU9IjAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbXBhY3RfbG9vcHMiIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5fYmxvY2tfY29tbWVudCIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZm9yX2JvZHlfb25fc2FtZV9saW5lIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYXRfZW5kX29mX2ZpbGVfaWZfbWlzc2luZyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fYXJyYXlfaW5pdGlhbGl6ZXIiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3VuYXJ5X29wZXJhdG9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmZvcm1hdF9saW5lX2NvbW1lbnRfc3RhcnRpbmdfb25fZmlyc3RfY29sdW1uIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fYW5ub3RhdGlvbiIgdmFsdWU9ImNvbW1vbl9saW5lcyIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfZWxsaXBzaXMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fdHJ5X3Jlc291cmNlcyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29sb25faW5fYXNzZXJ0IiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9lbnVtX2NvbnN0YW50IiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfYW5kX2luX3R5cGVfcGFyYW1ldGVyIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fcGFyZW50aGVzaXplZF9leHByZXNzaW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRleHRfYmxvY2tfaW5kZW50YXRpb24iIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fdHlwZV9tZW1iZXJzX29uX2NvbHVtbnMiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXNzaWdubWVudCIgdmFsdWU9IjAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21vZHVsZV9zdGF0ZW1lbnRzIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfYm9keV9kZWNsYXJhdGlvbnNfY29tcGFyZV90b190eXBlX2hlYWRlciIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9lbXB0eV9wYXJlbnNfaW5fbWV0aG9kX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuYWxpZ25fdGFnc19uYW1lc19kZXNjcmlwdGlvbnMiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2VudW1fY29uc3RhbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pZl90aGVuX2JvZHlfYmxvY2tfb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9maXJzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfY2xvc2luZ19icmFjZV9pbl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuZm9ybWF0X2d1YXJkaWFuX2NsYXVzZV9vbl9vbmVfbGluZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2lmIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25fYXNzaWdubWVudF9zdGF0ZW1lbnRzX29uX2NvbHVtbnMiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9ibG9ja19pbl9jYXNlIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9jb25kaXRpb25hbF9leHByZXNzaW9uX2NoYWluIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2hlYWRlciIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90eXBlX2Fubm90YXRpb25zIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYXJndW1lbnRzX2luX2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzZXJ0aW9uX21lc3NhZ2Vfb3BlcmF0b3IiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3N3aXRjaCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9IjAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbl9maWVsZHNfZ3JvdXBpbmdfYmxhbmtfbGluZXMiIHZhbHVlPSIyMTQ3NDgzNjQ3Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5uZXdfbGluZXNfYXRfamF2YWRvY19ib3VuZGFyaWVzIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYml0d2lzZV9vcGVyYXRvciIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2Fubm90YXRpb25fdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9ImVuZF9vZl9saW5lIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9mb3IiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3Jlc291cmNlc19pbl90cnkiIHZhbHVlPSI4MCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2VsZWN0b3JfaW5fbWV0aG9kX2ludm9jYXRpb24iIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm5ldmVyX2luZGVudF9ibG9ja19jb21tZW50c19vbl9maXJzdF9jb2x1bW4iIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N5bmNocm9uaXplZCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfc291cmNlX2NvZGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX2ZpZWxkIiB2YWx1ZT0iMSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9tZXRob2QiIHZhbHVlPSIxIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmNsYXNzX2luX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcGFyZW50aGVzaXplZF9leHByZXNzaW9uX2luX3Rocm93IiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX25vdF9vcGVyYXRvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfdHlwZV9hbm5vdGF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3BhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmZvcm1hdF9odG1sIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX21ldGhvZF9kZWxjYXJhdGlvbiIgdmFsdWU9ImNvbW1vbl9saW5lcyIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfY29tcGFjdF9pZiIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2VtcHR5X2xpbmVzIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3R5cGVfYXJndW1lbnRzIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl91bmFyeV9vcGVyYXRvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fZW51bV9jb25zdGFudCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9hbm5vdGF0aW9uIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fZW51bV9kZWNsYXJhdGlvbnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hbm5vdGF0aW9uc19vbl9wYWNrYWdlIiB2YWx1ZT0iNDkiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX3N3aXRjaCIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV9lbHNlX2luX2lmX3N0YXRlbWVudCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fzc2lnbm1lbnRfb3BlcmF0b3IiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYWZ0ZXJfbGFiZWwiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9kZWNsYXJhdGlvbl9oZWFkZXIiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9jb25kaXRpb25hbCIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbWV0aG9kX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2Nhc3QiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2Fycm93X2luX3N3aXRjaF9jYXNlIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X25ld19saW5lX2JlZm9yZV93aGlsZV9pbl9kb19zdGF0ZW1lbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfdHlwZV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fcmVjb3JkX2hlYWRlciIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfYW5nbGVfYnJhY2tldF9pbl9wYXJhbWV0ZXJpemVkX3R5cGVfcmVmZXJlbmNlIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9vcGVuaW5nX2JyYWNlX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9icmVha3NfY29tcGFyZV90b19jYXNlcyIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX2JpdHdpc2Vfb3BlcmF0b3IiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fdHJ5IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfbGFtYmRhX2Fycm93IiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuaW5kZW50X3RhZ19kZXNjcmlwdGlvbiIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9pbXBsZV9pZl9vbl9vbmVfbGluZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX3JlY29yZF9jb25zdHJ1Y3RvciIgdmFsdWU9ImVuZF9vZl9saW5lIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2VudW1fZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmV0d2Vlbl9icmFja2V0c19pbl9hcnJheV90eXBlX3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdHJpbmdfY29uY2F0ZW5hdGlvbiIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zZW1pY29sb25faW5fZm9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX211bHRpcGxlX2ZpZWxkcyIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX2VudW1fY29uc3RhbnRfYXJndW1lbnRzIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wcmVmaXhfb3BlcmF0b3IiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NoaWZ0X29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX21ldGhvZF9kZWNsYXJhdGlvbiIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fY2F0Y2giIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3NoaWZ0X29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2VzX2luX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fbXVsdGlwbGVfbG9jYWxfZGVjbGFyYXRpb25zIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfc2ltcGxlX2RvX3doaWxlX2JvZHlfb25fc2FtZV9saW5lIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fYW5ub3RhdGlvbl90eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9yZWNvcmRfY29tcG9uZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX291dGVyX2V4cHJlc3Npb25zX3doZW5fbmVzdGVkIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX3BhcmVuX2luX2Nhc3QiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3luY2hyb25pemVkIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2Fubm90YXRpb25fdHlwZV9tZW1iZXJfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9mb3JfbG9vcF9oZWFkZXIiIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYWRkaXRpdmVfb3BlcmF0b3IiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9zaW1wbGVfZ2V0dGVyX3NldHRlcl9vbl9vbmVfbGluZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fd2hpbGUiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX3BhcmFtZXRlcnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9zdHJpbmdfY29uY2F0ZW5hdGlvbiIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9sYW1iZGFfYXJyb3ciIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5qb2luX2xpbmVzX2luX2NvbW1lbnRzIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3JlbGF0aW9uYWxfb3BlcmF0b3IiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX211bHRpcGxlX2ZpZWxkX2RlY2xhcmF0aW9ucyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX2ltcG9ydF9ncm91cHMiIHZhbHVlPSIxIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hdF9pbl9hbm5vdGF0aW9uX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfbG9naWNhbF9vcGVyYXRvciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9tZXRob2RfaW52b2NhdGlvbiIgdmFsdWU9ImNvbW1vbl9saW5lcyIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2FmdGVyX2ltcG9ydHMiIHZhbHVlPSIxIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX3Jvb3RfdGFncyIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl9yZWNvcmRfZGVjbGFyYXRpb24iIHZhbHVlPSJjb21tb25fbGluZXMiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX21ldGhvZF9kZWNsYXJhdGlvbl90aHJvd3MiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX3N3aXRjaF9zdGF0ZW1lbnQiIHZhbHVlPSJjb21tb25fbGluZXMiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfcG9zdGZpeF9vcGVyYXRvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fZm9yX2luY3JlbWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfYXJyb3dfaW5fc3dpdGNoX2RlZmF1bHQiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX2Zvcl9pbml0cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5kaXNhYmxpbmdfdGFnIiB2YWx1ZT0iQGZvcm1hdHRlcjpvZmYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2VudW1fY29uc3RhbnRzIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJsYW5rX2xpbmVzX2JlZm9yZV9pbXBvcnRzIiB2YWx1ZT0iMSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLm51bWJlcl9vZl9ibGFua19saW5lc19hdF9lbmRfb2ZfbWV0aG9kX2JvZHkiIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIucGFyZW50aGVzZXNfcG9zaXRpb25zX2luX2lmX3doaWxlX3N0YXRlbWVudCIgdmFsdWU9ImNvbW1vbl9saW5lcyIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2JyYWNlX2luX2Jsb2NrIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9wYXJlbnRoZXNpemVkX2V4cHJlc3Npb25faW5fcmV0dXJuIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9hcnJvd19pbl9zd2l0Y2hfY2FzZSIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX2ZpZWxkIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmV0d2Vlbl90eXBlX2RlY2xhcmF0aW9ucyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fZm9yIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2NhdGNoIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX3N3aXRjaCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fYW5vbnltb3VzX3R5cGVfZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5uZXZlcl9pbmRlbnRfbGluZV9jb21tZW50c19vbl9maXJzdF9jb2x1bW4iIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9mb3JfaW5pdHMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3RhdGVtZW50c19jb21wYXJlX3RvX2Jsb2NrIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9hbm9ueW1vdXNfdHlwZV9kZWNsYXJhdGlvbiIgdmFsdWU9ImVuZF9vZl9saW5lIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9xdWVzdGlvbl9pbl93aWxkY2FyZCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fYW5ub3RhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX21ldGhvZF9pbnZvY2F0aW9uX2FyZ3VtZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fc3dpdGNoIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5hbGlnbl90YWdzX2Rlc2NyaXB0aW9uc19ncm91cGVkIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmxpbmVfbGVuZ3RoIiB2YWx1ZT0iODAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci51c2Vfb25fb2ZmX3RhZ3MiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9tZXRob2RfYm9keV9vbl9vbmVfbGluZSIgdmFsdWU9Im9uZV9saW5lX25ldmVyIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JldHdlZW5fZW1wdHlfYnJhY2tldHNfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbG9vcF9ib2R5X2Jsb2NrX29uX29uZV9saW5lIiB2YWx1ZT0ib25lX2xpbmVfbmV2ZXIiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYnJhY2VfaW5fZW51bV9jb25zdGFudCIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9tZXRob2RfZGVjbGFyYXRpb24iIHZhbHVlPSJlbmRfb2ZfbGluZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb2xvbl9pbl9mb3IiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3R5cGVfZGVjbGFyYXRpb25fb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FkZGl0aXZlX29wZXJhdG9yIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbXVsdGlwbGVfZmllbGRfZGVjbGFyYXRpb25zIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX3JlY29yZF9jb25zdHJ1Y3RvciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcmVsYXRpb25hbF9vcGVyYXRvciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9zdXBlcmludGVyZmFjZXMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3JlY29yZF9kZWNsYXJhdGlvbl9vbl9vbmVfbGluZSIgdmFsdWU9Im9uZV9saW5lX25ldmVyIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9kZWZhdWx0IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl9jb25kaXRpb25hbCIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbiIgdmFsdWU9ImVuZF9vZl9saW5lIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2xhbWJkYV9ib2R5IiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21wYWN0X2Vsc2VfaWYiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl90eXBlX3BhcmFtZXRlcnMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2NhdGNoIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX21ldGhvZF9pbnZvY2F0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tZXRob2RfaW52b2NhdGlvbl9hcmd1bWVudHMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2FyZ3VtZW50c19pbl9tZXRob2RfaW52b2NhdGlvbiIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl90aHJvd3NfY2xhdXNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfbmV3X2xpbmVfYmVmb3JlX2NhdGNoX2luX3RyeV9zdGF0ZW1lbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3RyeSIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fcGFyYW1ldGVyIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuY2xlYXJfYmxhbmtfbGluZXNfaW5famF2YWRvY19jb21tZW50IiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3JlbGF0aW9uYWxfb3BlcmF0b3IiIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9leHByZXNzaW9uc19pbl9hcnJheV9pbml0aWFsaXplciIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2VtcHR5X2xpbmVzX3RvX3ByZXNlcnZlIiB2YWx1ZT0iMSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb2xvbl9pbl9jYXNlIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2FkZGl0aXZlX29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2lmIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX3N0cmluZ19jb25jYXRlbmF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5mb3JtYXRfbGluZV9jb21tZW50cyIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3JfcmVjb3JkX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29sb25faW5fbGFiZWxlZF9zdGF0ZW1lbnQiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5udW1iZXJfb2ZfYmxhbmtfbGluZXNfYWZ0ZXJfY29kZV9ibG9jayIgdmFsdWU9IjAiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX3N1cGVyaW50ZXJmYWNlc19pbl90eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2NvbmRpdGlvbmFsX2V4cHJlc3Npb24iIHZhbHVlPSI4MCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9hZnRlcl9hbm5vdGF0aW9uX29uX3R5cGUiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX3R5cGUiIHZhbHVlPSI0OSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9ibG9jayIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbG9jYWxfdmFyaWFibGUiIHZhbHVlPSI0OSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl9lbnVtX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Fycm93X2luX3N3aXRjaF9kZWZhdWx0IiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuY29tbWVudC5pbnNlcnRfbmV3X2xpbmVfYmV0d2Vlbl9kaWZmZXJlbnRfdGFncyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2FkZGl0aXZlX29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fbWV0aG9kX2ludm9jYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX3doaWxlIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuam9pbl93cmFwcGVkX2xpbmVzIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZXR3ZWVuX2VtcHR5X3BhcmVuc19pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fubm90YXRpb25zX29uX2ZpZWxkIiB2YWx1ZT0iNDkiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9jb25kaXRpb25hbF9vcGVyYXRvciIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbmRlbnRfc3dpdGNoc3RhdGVtZW50c19jb21wYXJlX3RvX2Nhc2VzIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY2xvc2luZ19icmFja2V0X2luX2FycmF5X2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2Nsb3NpbmdfcGFyZW5faW5fc3luY2hyb25pemVkIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3Jfc2hpZnRfb3BlcmF0b3IiIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudXNlX3RhYnNfb25seV9mb3JfbGVhZGluZ19pbmRlbnRhdGlvbnMiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnBhcmVudGhlc2VzX3Bvc2l0aW9uc19pbl90cnlfY2xhdXNlIiB2YWx1ZT0iY29tbW9uX2xpbmVzIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9jb2RlX2Jsb2NrX29uX29uZV9saW5lIiB2YWx1ZT0ib25lX2xpbmVfbmV2ZXIiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fY29uc3RydWN0b3JfZGVjbGFyYXRpb25fdGhyb3dzIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbW1hX2luX3JlY29yZF9jb21wb25lbnRzIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIudGFidWxhdGlvbi5zaXplIiB2YWx1ZT0iNCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9iaXR3aXNlX29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfYnJhY2tldF9pbl9hcnJheV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX2NvbG9uX2luX2NvbmRpdGlvbmFsIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX3RyeSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfc2VtaWNvbG9uX2luX3RyeV9yZXNvdXJjZXMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb250aW51YXRpb25faW5kZW50YXRpb25fZm9yX2FycmF5X2luaXRpYWxpemVyIiB2YWx1ZT0iMiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9xdWVzdGlvbl9pbl93aWxkY2FyZCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9yZWNvcmRfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fZW51bV9kZWNsYXJhdGlvbiIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfYXNzaWdubWVudF9vcGVyYXRvciIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9sYWJlbGVkX3N0YXRlbWVudCIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5icmFjZV9wb3NpdGlvbl9mb3Jfc3dpdGNoIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3N1cGVyaW50ZXJmYWNlcyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY29tbWFfaW5fbWV0aG9kX2RlY2xhcmF0aW9uX3BhcmFtZXRlcnMiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfY2xvc2luZ19hbmdsZV9icmFja2V0X2luX3R5cGVfcGFyYW1ldGVycyIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmtlZXBfbGFtYmRhX2JvZHlfYmxvY2tfb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfYW5ub3RhdGlvbnNfb25fbWV0aG9kIiB2YWx1ZT0iNDkiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX2NvbW1hX2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIua2VlcF9yZWNvcmRfY29uc3RydWN0b3Jfb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFjZV9pbl9yZWNvcmRfZGVjbGFyYXRpb24iIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VtcHR5X2FycmF5X2luaXRpYWxpemVyX29uX29uZV9saW5lIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5hbGlnbm1lbnRfZm9yX2Fzc2VydGlvbl9tZXNzYWdlIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbmV3X2NodW5rIiB2YWx1ZT0iMSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX2JyYWNrZXRfaW5fYXJyYXlfYWxsb2NhdGlvbl9leHByZXNzaW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9vcGVuaW5nX3BhcmVuX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19hbmdsZV9icmFja2V0X2luX3BhcmFtZXRlcml6ZWRfdHlwZV9yZWZlcmVuY2UiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9hc3NlcnQiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZWZvcmVfbWVtYmVyX3R5cGUiIHZhbHVlPSIxIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9sb2dpY2FsX29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9hcmd1bWVudHNfaW5fcXVhbGlmaWVkX2FsbG9jYXRpb25fZXhwcmVzc2lvbiIgdmFsdWU9IjE2Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYWxpZ25tZW50X2Zvcl9zdXBlcmludGVyZmFjZXNfaW5fcmVjb3JkX2RlY2xhcmF0aW9uIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9pZiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX3NlbWljb2xvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci53cmFwX2JlZm9yZV9yZWxhdGlvbmFsX29wZXJhdG9yIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcG9zdGZpeF9vcGVyYXRvciIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfYW5nbGVfYnJhY2tldF9pbl90eXBlX2FyZ3VtZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYWZ0ZXJfb3BlbmluZ19wYXJlbl9pbl9jYXN0IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmNvbW1lbnQuZm9ybWF0X2Jsb2NrX2NvbW1lbnRzIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmFsaWdubWVudF9mb3JfcGFyYW1ldGVyc19pbl9tZXRob2RfZGVjbGFyYXRpb24iIHZhbHVlPSIxNiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9tZXRob2RfZGVjbGFyYXRpb25fdGhyb3dzIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYWZ0ZXJfbGFzdF9jbGFzc19ib2R5X2RlY2xhcmF0aW9uIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluZGVudF9zdGF0ZW1lbnRzX2NvbXBhcmVfdG9fYm9keSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX3NpbXBsZV93aGlsZV9ib2R5X29uX3NhbWVfbGluZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIud3JhcF9iZWZvcmVfbG9naWNhbF9vcGVyYXRvciIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5ibGFua19saW5lc19iZXR3ZWVuX3N0YXRlbWVudF9ncm91cF9pbl9zd2l0Y2giIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2JyYWNrZXRfaW5fYXJyYXlfcmVmZXJlbmNlIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9hZnRlcl9jb21tYV9pbl9hbm5vdGF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9lbnVtX2NvbnN0YW50X2FyZ3VtZW50cyIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5wYXJlbnRoZXNlc19wb3NpdGlvbnNfaW5fbGFtYmRhX2RlY2xhcmF0aW9uIiB2YWx1ZT0iY29tbW9uX2xpbmVzIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb2xvbl9pbl9jYXNlIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19icmFja2V0X2luX2FycmF5X3JlZmVyZW5jZSIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5rZWVwX2VudW1fZGVjbGFyYXRpb25fb25fb25lX2xpbmUiIHZhbHVlPSJvbmVfbGluZV9uZXZlciIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfb3BlbmluZ19wYXJlbl9pbl9tZXRob2RfZGVjbGFyYXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYnJhY2VfcG9zaXRpb25fZm9yX2VudW1fY29uc3RhbnQiIHZhbHVlPSJlbmRfb2ZfbGluZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmJyYWNlX3Bvc2l0aW9uX2Zvcl90eXBlX2RlY2xhcmF0aW9uIiB2YWx1ZT0iZW5kX29mX2xpbmUiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX211bHRpcGxpY2F0aXZlX29wZXJhdG9yIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuYmxhbmtfbGluZXNfYmVmb3JlX3BhY2thZ2UiIHZhbHVlPSIwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX3BhcmVuX2luX2ZvciIgdmFsdWU9Imluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfY29tbWFfaW5fZm9yX2luY3JlbWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2VudW1fY29uc3RhbnQiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9leHBsaWNpdGNvbnN0cnVjdG9yY2FsbF9hcmd1bWVudHMiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX3BhcmVuX2luX2Fubm90YXRpb24iIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5kZW50X2JvZHlfZGVjbGFyYXRpb25zX2NvbXBhcmVfdG9fZW51bV9jb25zdGFudF9oZWFkZXIiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9vcGVuaW5nX2JyYWNlX2luX2NvbnN0cnVjdG9yX2RlY2xhcmF0aW9uIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jb21tYV9pbl9jb25zdHJ1Y3Rvcl9kZWNsYXJhdGlvbl90aHJvd3MiIHZhbHVlPSJkbyBub3QgaW5zZXJ0Ii8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2JlZm9yZV9jbG9zaW5nX2FuZ2xlX2JyYWNrZXRfaW5fdHlwZV9wYXJhbWV0ZXJzIiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9zcGFjZV9iZWZvcmVfcXVlc3Rpb25faW5fY29uZGl0aW9uYWwiIHZhbHVlPSJpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5jb21tZW50LmluZGVudF9wYXJhbWV0ZXJfZGVzY3JpcHRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIubnVtYmVyX29mX2JsYW5rX2xpbmVzX2F0X2JlZ2lubmluZ19vZl9jb2RlX2Jsb2NrIiB2YWx1ZT0iMCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmluc2VydF9uZXdfbGluZV9iZWZvcmVfZmluYWxseV9pbl90cnlfc3RhdGVtZW50IiB2YWx1ZT0iZG8gbm90IGluc2VydCIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLnRhYnVsYXRpb24uY2hhciIgdmFsdWU9InRhYiIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLndyYXBfYmVmb3JlX3N0cmluZ19jb25jYXRlbmF0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8c2V0dGluZyBpZD0ib3JnLmVjbGlwc2UuamR0LmNvcmUuZm9ybWF0dGVyLmxpbmVTcGxpdCIgdmFsdWU9IjgwIi8+CisgICAgICAgIDxzZXR0aW5nIGlkPSJvcmcuZWNsaXBzZS5qZHQuY29yZS5mb3JtYXR0ZXIuaW5zZXJ0X3NwYWNlX2FmdGVyX29wZW5pbmdfcGFyZW5faW5fYW5ub3RhdGlvbiIgdmFsdWU9ImRvIG5vdCBpbnNlcnQiLz4KKyAgICAgICAgPHNldHRpbmcgaWQ9Im9yZy5lY2xpcHNlLmpkdC5jb3JlLmZvcm1hdHRlci5pbnNlcnRfc3BhY2VfYmVmb3JlX29wZW5pbmdfcGFyZW5faW5fc3dpdGNoIiB2YWx1ZT0iaW5zZXJ0Ii8+CisgICAgPC9wcm9maWxlPgogPC9wcm9maWxlcz4KZGlmZiAtLWdpdCBhL3Rvb2xzL21hdmVuLWNlbnRyYWwvZGVwbG95LnJiIGIvdG9vbHMvbWF2ZW4tY2VudHJhbC9kZXBsb3kucmIKaW5kZXggODM0ZmE5NC4uZWNlMTMzNyAxMDA3NTUKLS0tIGEvdG9vbHMvbWF2ZW4tY2VudHJhbC9kZXBsb3kucmIKKysrIGIvdG9vbHMvbWF2ZW4tY2VudHJhbC9kZXBsb3kucmIKQEAgLTYxLDYgKzYxLDcgQEAKICAgICAgICAgICAgICBncm91cCArICcubGZzLnNlcnZlcicsCiAgICAgICAgICAgICAgZ3JvdXAgKyAnLnBnbScsCiAgICAgICAgICAgICAgZ3JvdXAgKyAnLnNzaC5hcGFjaGUnLAorICAgICAgICAgICAgIGdyb3VwICsgJy5zc2guYXBhY2hlLmFnZW50JywKICAgICAgICAgICAgICBncm91cCArICcuc3NoLmpzY2gnLAogICAgICAgICAgICAgIGdyb3VwICsgJy51aSddCiAKZGlmZiAtLWdpdCBhL3Rvb2xzL21hdmVuLWNlbnRyYWwvZG93bmxvYWQucmIgYi90b29scy9tYXZlbi1jZW50cmFsL2Rvd25sb2FkLnJiCmluZGV4IGJjNDhjODIuLmIzYzRlM2QgMTAwNzU1Ci0tLSBhL3Rvb2xzL21hdmVuLWNlbnRyYWwvZG93bmxvYWQucmIKKysrIGIvdG9vbHMvbWF2ZW4tY2VudHJhbC9kb3dubG9hZC5yYgpAQCAtMjEsNiArMjEsNyBAQAogICAgICAgICAgICAgIGdyb3VwICsgJy5sZnMuc2VydmVyJywKICAgICAgICAgICAgICBncm91cCArICcucGdtJywKICAgICAgICAgICAgICBncm91cCArICcuc3NoLmFwYWNoZScsCisgICAgICAgICAgICAgZ3JvdXAgKyAnLnNzaC5hcGFjaGUuYWdlbnQnLAogICAgICAgICAgICAgIGdyb3VwICsgJy5zc2guanNjaCcsCiAgICAgICAgICAgICAgZ3JvdXAgKyAnLnVpJ10KIAo=