LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICogQ29weXJpZ2h0IChjKSAyMDA1IElCTSBDb3Jwb3JhdGlvbiBhbmQgb3RoZXJzLgogKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCiAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAogKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAogKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAqgKgogKiBDb250cmlidXRvcnM6CiAqICAgIElCTSBDb3Jwb3JhdGlvbiAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgogKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KcGFja2FnZSBvcmcuZWNsaXBzZS53c3Quc2VydmVyLmNvcmUuaW50ZXJuYWw7CgppbXBvcnQgb3JnLmVjbGlwc2Uub3NnaS51dGlsLk5MUzsKLyoqCiAqIFRyYW5zbGF0ZWQgbWVzc2FnZXMuCiAqLwpwdWJsaWMgY2xhc3MgTWVzc2FnZXMgZXh0ZW5kcyBOTFMgewoJcHVibGljIHN0YXRpYyBTdHJpbmcgcHVibGlzaGluZzsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGVycm9yUnVudGltZU5hbWU7CglwdWJsaWMgc3RhdGljIFN0cmluZyBlcnJvckR1cGxpY2F0ZVJ1bnRpbWVOYW1lOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JTYXZpbmc7CglwdWJsaWMgc3RhdGljIFN0cmluZyBlcnJvckxvYWRpbmc7CglwdWJsaWMgc3RhdGljIFN0cmluZyBlcnJvckNhbm5vdEFkZE1vZHVsZTsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRWZW5kb3I7CglwdWJsaWMgc3RhdGljIFN0cmluZyBkZWZhdWx0VmVyc2lvbjsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIHNhdmluZ1Rhc2s7CglwdWJsaWMgc3RhdGljIFN0cmluZyB0YXNrUGVyZm9ybWluZzsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlbGV0aW5nVGFzazsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRTZXJ2ZXJQcm9qZWN0TmFtZTsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRSdW50aW1lTmFtZTsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRSdW50aW1lTmFtZTI7CglwdWJsaWMgc3RhdGljIFN0cmluZyBkZWZhdWx0U2VydmVyTmFtZTsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRTZXJ2ZXJOYW1lMjsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRTZXJ2ZXJOYW1lMzsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGRlZmF1bHRTZXJ2ZXJOYW1lNDsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIHRhc2tNb2RpZnlNb2R1bGVzOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JXb3JraW5nQ29weVRpbWVzdGFtcDsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGVycm9yUHVibGlzaFN0YXJ0aW5nOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JQdWJsaXNoTm9SdW50aW1lOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JQdWJsaXNoTm9Db25maWd1cmF0aW9uOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JOb0NvbmZpZ3VyYXRpb247CglwdWJsaWMgc3RhdGljIFN0cmluZyBjYW5QdWJsaXNoT2s7CglwdWJsaWMgc3RhdGljIFN0cmluZyBwdWJsaXNoaW5nU3RhdHVzT2s7CglwdWJsaWMgc3RhdGljIFN0cmluZyBwdWJsaXNoaW5nU3RhdHVzSW5mbzsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIHB1Ymxpc2hpbmdTdGF0dXNXYXJuaW5nOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgcHVibGlzaGluZ1N0YXR1c0Vycm9yOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JQdWJsaXNoaW5nOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgcHVibGlzaGluZ1N0b3A7CglwdWJsaWMgc3RhdGljIFN0cmluZyBwdWJsaXNoaW5nTW9kdWxlOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgcHVibGlzaGVkTW9kdWxlOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JTdGFydFRpbWVvdXQ7CglwdWJsaWMgc3RhdGljIFN0cmluZyBlcnJvclN0YXJ0RmFpbGVkOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JNb2R1bGVSZXN0YXJ0RmFpbGVkOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgY2FuUmVzdGFydE1vZHVsZU9rOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JSZXN0YXJ0TW9kdWxlOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgY2FuU3RhcnRFcnJvclN0YXRlOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgZXJyb3JMYXVuY2hNb2RlOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgY2FuU3RhcnRPazsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGNhblJlc3RhcnRPazsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGVycm9yUmVzdGFydE5vdFN0YXJ0ZWQ7CglwdWJsaWMgc3RhdGljIFN0cmluZyBlcnJvclN0b3BBbHJlYWR5U3RvcHBlZDsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGNhblN0b3BPazsKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIG1vZHVsZVR5cGVVbmtub3duOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgam9iU3RhcnRpbmdTZXJ2ZXI7CglwdWJsaWMgc3RhdGljIFN0cmluZyBqb2JSZXN0YXJ0aW5nU2VydmVyOwoJcHVibGljIHN0YXRpYyBTdHJpbmcgam9iVXBkYXRlU2VydmVyOwoJCglzdGF0aWMgewoJCU5MUy5pbml0aWFsaXplTWVzc2FnZXMoU2VydmVyUGx1Z2luLlBMVUdJTl9JRCArICIuaW50ZXJuYWwuTWVzc2FnZXMiLCBNZXNzYWdlcy5jbGFzcyk7Cgl9Cn0=