yv66vgAAADMAMAcAAgEANG9yZy9hcGFjaGUvaHRyYWNlL2ltcGwvSFRyYWNlZFJFU1RSZWNlaXZlciRQb3N0U3BhbnMHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQABcQEAB0xRdWV1ZTsBAAlTaWduYXR1cmUBAA9MUXVldWU8TFNwYW47PjsBABBtYXhUb1NlbmRBdEFUaW1lAQABSQEABnRoaXMkMAEALExvcmcvYXBhY2hlL2h0cmFjZS9pbXBsL0hUcmFjZWRSRVNUUmVjZWl2ZXI7AQAGPGluaXQ+AQA3KExvcmcvYXBhY2hlL2h0cmFjZS9pbXBsL0hUcmFjZWRSRVNUUmVjZWl2ZXI7TFF1ZXVlO0kpVgEAEyhMUXVldWU8TFNwYW47PjtJKVYBAARDb2RlBwASAQAPamF2YS9sYW5nL0Vycm9yCAAUARFOVW5yZXNvbHZlZCBjb21waWxhdGlvbiBwcm9ibGVtczogCglUaGUgdHlwZSBqYXZhLmxhbmcuT2JqZWN0IGNhbm5vdCBiZSByZXNvbHZlZC4gSXQgaXMgaW5kaXJlY3RseSByZWZlcmVuY2VkIGZyb20gcmVxdWlyZWQgLmNsYXNzIGZpbGVzCglUaGUgdHlwZSBqYXZhLmxhbmcuU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZC4gSXQgaXMgaW5kaXJlY3RseSByZWZlcmVuY2VkIGZyb20gcmVxdWlyZWQgLmNsYXNzIGZpbGVzCglUaGUgdHlwZSBqYXZhLmxhbmcuQ2xhc3MgY2Fubm90IGJlIHJlc29sdmVkLiBJdCBpcyBpbmRpcmVjdGx5IHJlZmVyZW5jZWQgZnJvbSByZXF1aXJlZCAuY2xhc3MgZmlsZXMKCVRoZSBpbXBvcnQgamF2YS5pbyBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgamF2YS5uZXQgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IGphdmEudXRpbCBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgamF2YS51dGlsIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBqYXZhLnV0aWwgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IGphdmEudXRpbCBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgamF2YS51dGlsIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBqYXZhLnV0aWwgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IGphdmEudXRpbCBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgamF2YS51dGlsIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuYXBhY2hlLmNvbW1vbnMgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IG9yZy5hcGFjaGUuY29tbW9ucyBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmFwYWNoZS5odHJhY2UuSFRyYWNlQ29uZmlndXJhdGlvbiBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmFwYWNoZS5odHJhY2UuU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmFwYWNoZS5odHJhY2UuU3BhblJlY2VpdmVyIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuZWNsaXBzZSBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmVjbGlwc2UgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IG9yZy5lY2xpcHNlIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuZWNsaXBzZSBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmVjbGlwc2UgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IG9yZy5lY2xpcHNlIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuZWNsaXBzZSBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmVjbGlwc2UgY2Fubm90IGJlIHJlc29sdmVkCglTcGFuUmVjZWl2ZXIgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJTG9nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUxvZ0ZhY3RvcnkgY2Fubm90IGJlIHJlc29sdmVkCglIdHRwQ2xpZW50IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTY2hlZHVsZWRFeGVjdXRvclNlcnZpY2UgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU2NoZWR1bGVkRnV0dXJlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVF1ZXVlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVNwYW4gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSW1wbGljaXQgc3VwZXIgY29uc3RydWN0b3IgT2JqZWN0KCkgaXMgdW5kZWZpbmVkLiBNdXN0IGV4cGxpY2l0bHkgaW52b2tlIGFub3RoZXIgY29uc3RydWN0b3IKCUhUcmFjZUNvbmZpZ3VyYXRpb24gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJRXhjZXB0aW9uIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUh0dHBDbGllbnQgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSHR0cENsaWVudCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglIdHRwQ2xpZW50IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUh0dHBGaWVsZCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglIdHRwSGVhZGVyIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHZhcmlhYmxlCglUaGUgbWV0aG9kIGdldENsYXNzKCkgaXMgdW5kZWZpbmVkIGZvciB0aGUgdHlwZSBIVHJhY2VkUkVTVFJlY2VpdmVyCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSHR0cENsaWVudCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglIdHRwQ2xpZW50IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglRdWV1ZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTcGFuIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUFycmF5QmxvY2tpbmdRdWV1ZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTcGFuIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVVSTCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglVUkwgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglVUkwgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJVVJMIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTY2hlZHVsZWRFeGVjdXRvclNlcnZpY2UgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJRXhlY3V0b3JzIGNhbm5vdCBiZSByZXNvbHZlZAoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTY2hlZHVsZWRGdXR1cmUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU2NoZWR1bGVkRXhlY3V0b3JTZXJ2aWNlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVNwYW4gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJUXVldWUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJVGltZVVuaXQgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdmFyaWFibGUKCUh0dHBDbGllbnQgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJUnVubmFibGUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJUXVldWUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglJbXBsaWNpdCBzdXBlciBjb25zdHJ1Y3RvciBPYmplY3QoKSBpcyB1bmRlZmluZWQuIE11c3QgZXhwbGljaXRseSBpbnZva2UgYW5vdGhlciBjb25zdHJ1Y3RvcgoJUXVldWUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTcGFuIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVF1ZXVlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCU92ZXJyaWRlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVNwYW4gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglRdWV1ZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglSZXF1ZXN0IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUh0dHBDbGllbnQgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUh0dHBNZXRob2QgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdmFyaWFibGUKCUh0dHBIZWFkZXIgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdmFyaWFibGUKCVN0cmluZ0NvbnRlbnRQcm92aWRlciBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTcGFuIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVF1ZXVlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZ0NvbnRlbnRQcm92aWRlciBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglDb250ZW50UmVzcG9uc2UgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSHR0cFN0YXR1cyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB2YXJpYWJsZQoJT3ZlcnJpZGUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJT3ZlcnJpZGUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoKABEAFgwADQAXAQAVKExqYXZhL2xhbmcvU3RyaW5nOylWAQAPTGluZU51bWJlclRhYmxlAQASTG9jYWxWYXJpYWJsZVRhYmxlAQAEdGhpcwEANkxvcmcvYXBhY2hlL2h0cmFjZS9pbXBsL0hUcmFjZWRSRVNUUmVjZWl2ZXIkUG9zdFNwYW5zOwEAA3J1bgEAAygpVgEAG1J1bnRpbWVJbnZpc2libGVBbm5vdGF0aW9ucwEACkxPdmVycmlkZTsIACEBAotVbnJlc29sdmVkIGNvbXBpbGF0aW9uIHByb2JsZW1zOiAKCU92ZXJyaWRlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVNwYW4gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglRdWV1ZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglSZXF1ZXN0IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUh0dHBDbGllbnQgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUh0dHBNZXRob2QgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdmFyaWFibGUKCUh0dHBIZWFkZXIgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdmFyaWFibGUKCVN0cmluZ0NvbnRlbnRQcm92aWRlciBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTcGFuIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVF1ZXVlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZ0NvbnRlbnRQcm92aWRlciBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglDb250ZW50UmVzcG9uc2UgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSHR0cFN0YXR1cyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB2YXJpYWJsZQoBAApTb3VyY2VGaWxlAQAYSFRyYWNlZFJFU1RSZWNlaXZlci5qYXZhAQAVSW5jb25zaXN0ZW50SGllcmFyY2h5AQAMSW5uZXJDbGFzc2VzBwAnAQAqb3JnL2FwYWNoZS9odHJhY2UvaW1wbC9IVHJhY2VkUkVTVFJlY2VpdmVyAQAJUG9zdFNwYW5zBwAqAQAFUXVldWUHACwBAAhSdW5uYWJsZQcALgEABFNwYW4BAAxNaXNzaW5nVHlwZXMAIAABAAMAAAADABIABQAGAAEABwAAAAIACAASAAkACgAAEBAACwAMAAAAAgAAAA0ADgACAAcAAAACAA8AEAAAADQAAwAEAAAACrsAEVkSE7cAFb8AAAACABgAAAAGAAEAAAABABkAAAAMAAEAAAAKABoAGwAAAAEAHAAdAAIAHgAAAAYAAQAfAAAAEAAAADQAAwABAAAACrsAEVkSILcAFb8AAAACABgAAAAGAAEAAAC2ABkAAAAMAAEAAAAKABoAGwAAAAQAIgAAAAIAIwAkAAAAAAAlAAAACgABAAEAJgAoAAIALwAAAAoABAApACsALQAD