PD9waHAgIAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCXJlcXVpcmVfb25jZSgkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddIC4gIi9lY2xpcHNlLm9yZy1jb21tb24vc3lzdGVtL2FwcC5jbGFzcy5waHAiKTsJcmVxdWlyZV9vbmNlKCRfU0VSVkVSWydET0NVTUVOVF9ST09UJ10gLiAiL2VjbGlwc2Uub3JnLWNvbW1vbi9zeXN0ZW0vbmF2LmNsYXNzLnBocCIpOyAJcmVxdWlyZV9vbmNlKCRfU0VSVkVSWydET0NVTUVOVF9ST09UJ10gLiAiL2VjbGlwc2Uub3JnLWNvbW1vbi9zeXN0ZW0vbWVudS5jbGFzcy5waHAiKTsgCSRBcHAgCT0gbmV3IEFwcCgpOwkkTmF2CT0gbmV3IE5hdigpOwkkTWVudSAJPSBuZXcgTWVudSgpOwkJaW5jbHVkZSgiX3Byb2plY3RDb21tb24ucGhwIik7ICAgICMgQWxsIG9uIHRoZSBzYW1lIGxpbmUgdG8gdW5jbHV0dGVyIHRoZSB1c2VyJ3MgZGVza3RvcCcKCgkKCSMKCSMgQmVnaW46IHBhZ2Utc3BlY2lmaWMgc2V0dGluZ3MuICBDaGFuZ2UgdGhlc2UuIAoJJHBhZ2VUaXRsZSAJCT0gIkVjbGlwc2UgUGFydHkgYXQgSmF2YU9uZSI7CgkkcGFnZUtleXdvcmRzCT0gIkVjbGlwc2UgRm91bmRhdGlvbiwgamF2YSBvbmUsIHBhcnR5LCBjb21tdW5pdHksIGJ1bGxldGluIjsKCSRwYWdlQXV0aG9yCQk9ICJOYXRoYW4gR2VydmFpcyI7CgkKCSMgQWRkIHBhZ2Utc3BlY2lmaWMgTmF2IGJhcnMgaGVyZQoJIyBGb3JtYXQgaXMgTGluayB0ZXh0LCBsaW5rIFVSTCAoY2FuIGJlIGh0dHA6Ly93d3cuc29tZW90aGVyc2l0ZS5jb20vKSwgdGFyZ2V0IChfc2VsZiwgX2JsYW5rKQoJIyAkTmF2LT5hZGRDdXN0b21OYXYoIk15IExpbmsiLCAibXlwYWdlLnBocCIsICJfc2VsZiIpOwoJIyAkTmF2LT5hZGRDdXN0b21OYXYoIkdvb2dsZSIsICJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiwgIl9ibGFuayIpOwoKCSMgRW5kOiBwYWdlLXNwZWNpZmljIHNldHRpbmdzCgkjCgkKCSMgUGFzdGUgeW91ciBIVE1MIGNvbnRlbnQgYmV0d2VlbiB0aGUgRU9IVE1MIG1hcmtlcnMhCQoJJGh0bWwgPSA8PDxFT0hUTUwKPGRpdiBpZD0ibWFpbmNvbnRlbnQiPgoJPGRpdiBpZD0ibWlkY29sdW1uIj4KCQk8aDE+JHBhZ2VUaXRsZTwvaDE+CgkJPGgyPkNvbW11bml0eSBCdWxsZXRpbjwvaDI+CiAgICAgIAk8cD4KICAgICAgICBUaGUgRWNsaXBzZSBGb3VuZGF0aW9uIGlzIGhvc3RpbmcgYSBwYXJ0eSBmb3IgdGhlIEVjbGlwc2UgY29tbXVuaXR5IGF0IEphdmFPbmUuIElmIHlvdSB3aWxsIGJlIGF0dGVuZGluZyB0aGUgY29uZmVyZW5jZSwgdGhpcyBpcyB5b3VyIG9wcG9ydHVuaXR5IHRvIGNvbm5lY3Qgd2l0aCBvdGhlciBFY2xpcHNlIGZhbnMgYW5kIHRvIGhhdmUgc29tZSBmdW4uIFRoZSBwYXJ0eSB3aWxsIGhhcHBlbiBXZWRuZXNkYXksIE1heSA5IGZyb20gNzowMHBtLTEwOjAwcG0gYXQgSmlsbGlhbpJzICg8YSBocmVmPSJodHRwOi8vd3d3LmppbGxpYW5zYmlsbGlhcmRzLmNvbSI+d3d3LmppbGxpYW5zYmlsbGlhcmRzLmNvbTwvYT4pLiBUaGlzIGlzIGp1c3QgYXJvdW5kIHRoZSBjb3JuZXIgZnJvbSB0aGUgTW9zY29uZSBDZW50ZXIgaW4gdGhlIHNvdXRod2VzdCBjb3JuZXIgb2YgdGhlIE1ldHJlb24uICBJZiB5b3UgYXJlIGludGVyZXN0ZWQgaW4gYXR0ZW5kaW5nLCBwbGVhc2Ugc2VuZCBhbiBlLW1haWwgdG8gPGEgaHJlZj0ibWFpbHRvOkphdmFPbmVQYXJ0eUBlY2xpcHNlLm9yZyI+SmF2YU9uZVBhcnR5QGVjbGlwc2Uub3JnPC9hPiB0byBiZSBhZGRlZCB0byB0aGUgZ3Vlc3QgbGlzdC4gIFdlIGxvb2sgZm9yd2FyZCB0byBzZWVpbmcgeW91IHRoZXJlITxici8+PGJyLz4KICAgICAgICBEZXRhaWxzOjxici8+PGJyLz4KICAgICAgICBMb2NhdGlvbjogSmlsbGlhbpJzIEAgTWV0cmVvbjxici8+CgkJQWRkcmVzczogMTAxIEZvdXJ0aCBTdHJlZXQsIFN1aXRlIDE3MCAoPGEgaHJlZj0iaHR0cDovL21hcHMuZ29vZ2xlLmNhL21hcHMvbXM/aWU9VVRGOCZobD1lbiZtc2E9MCZtc2lkPTEwMjUzNTM5NzA4MzY1MjQzNTY3Ny4wMDAwMDExMjAwYWMxMTJjZmVkYzEiPnNlZSBtYXA8L2E+KTxici8+CgkJRGF0ZSBhbmQgVGltZTogV2VkbmVzZGF5IE1heSA5LCBmcm9tIDc6MDAgcG0gLSAxMDowMCBQTTxici8+CgkJUlNWUDogPGEgaHJlZj0ibWFpbHRvOkphdmFPbmVQYXJ0eUBlY2xpcHNlLm9yZyAiPkphdmFPbmVQYXJ0eUBlY2xpcHNlLm9yZyA8L2E+PGJyLz4KICAgICAgICA8L3A+Cgk8L2Rpdj4KPC9kaXY+CgoKCgoKCQkKCkVPSFRNTDsKCgoJIyBHZW5lcmF0ZSB0aGUgd2ViIHBhZ2UKCSRBcHAtPmdlbmVyYXRlUGFnZSgkdGhlbWUsICRNZW51LCAkTmF2LCAkcGFnZUF1dGhvciwgJHBhZ2VLZXl3b3JkcywgJHBhZ2VUaXRsZSwgJGh0bWwpOwo/PgoK