yv66vgAAADMAKAcAAgEARm9yZy9hcGFjaGUvaHRyYWNlL2ltcGwvVGVzdEhUcmFjZWRSRVNUUmVjZWl2ZXIkVGVzdEhUcmFjZUNvbmZpZ3VyYXRpb24HAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAGPGluaXQ+AQAzKExvcmcvYXBhY2hlL2h0cmFjZS9pbXBsL1Rlc3RIVHJhY2VkUkVTVFJlY2VpdmVyOylWAQAEQ29kZQcACQEAD2phdmEvbGFuZy9FcnJvcggACwELLlVucmVzb2x2ZWQgY29tcGlsYXRpb24gcHJvYmxlbXM6IAoJVGhlIGltcG9ydCBvcmcuanVuaXQgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IGphdmEuaW8gY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IGphdmEubmV0IGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuYXBhY2hlLmh0cmFjZS5IVHJhY2VDb25maWd1cmF0aW9uIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuYXBhY2hlLmh0cmFjZS5TcGFuIGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuZWNsaXBzZSBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmVjbGlwc2UgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IG9yZy5qdW5pdCBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBpbXBvcnQgb3JnLmp1bml0IGNhbm5vdCBiZSByZXNvbHZlZAoJVGhlIGltcG9ydCBvcmcuanVuaXQgY2Fubm90IGJlIHJlc29sdmVkCglUaGUgaW1wb3J0IGNvbSBjYW5ub3QgYmUgcmVzb2x2ZWQKCUltcGxpY2l0IHN1cGVyIGNvbnN0cnVjdG9yIE9iamVjdCgpIGlzIHVuZGVmaW5lZCBmb3IgZGVmYXVsdCBjb25zdHJ1Y3Rvci4gTXVzdCBkZWZpbmUgYW4gZXhwbGljaXQgY29uc3RydWN0b3IKCVVSTCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglPYmplY3RNYXBwZXIgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJT2JqZWN0TWFwcGVyIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUJlZm9yZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglFeGNlcHRpb24gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJVVJMIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVVSTCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglGaWxlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVRoZSBtZXRob2QgZ2V0RGF0YURpcigpIGZyb20gdGhlIHR5cGUgRGF0YURpciByZWZlcnMgdG8gdGhlIG1pc3NpbmcgdHlwZSBGaWxlCglGaWxlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVRoZSBtZXRob2QgZ2V0RGF0YURpcigpIGZyb20gdGhlIHR5cGUgRGF0YURpciByZWZlcnMgdG8gdGhlIG1pc3NpbmcgdHlwZSBGaWxlCglVUkwgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJQWZ0ZXIgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJRXhjZXB0aW9uIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUhUcmFjZUNvbmZpZ3VyYXRpb24gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJT3ZlcnJpZGUgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglPdmVycmlkZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglUZXN0IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCUV4Y2VwdGlvbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglUaGUgY29uc3RydWN0b3IgSFRyYWNlZFJFU1RSZWNlaXZlcihIVHJhY2VDb25maWd1cmF0aW9uKSByZWZlcnMgdG8gdGhlIG1pc3NpbmcgdHlwZSBIVHJhY2VDb25maWd1cmF0aW9uCglDb250ZW50UmVzcG9uc2UgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSHR0cENsaWVudCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglVUkwgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN5c3RlbSBjYW5ub3QgYmUgcmVzb2x2ZWQKCVRoZSBtZXRob2QgY2xvc2UoKSBmcm9tIHRoZSB0eXBlIEhUcmFjZWRSRVNUUmVjZWl2ZXIgcmVmZXJzIHRvIHRoZSBtaXNzaW5nIHR5cGUgSU9FeGNlcHRpb24KCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglDb250ZW50UmVzcG9uc2UgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJSHR0cFN0YXR1cyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB2YXJpYWJsZQoJSHR0cFN0YXR1cyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB2YXJpYWJsZQoJVGVzdCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglFeGNlcHRpb24gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJVGhlIGNvbnN0cnVjdG9yIEhUcmFjZWRSRVNUUmVjZWl2ZXIoSFRyYWNlQ29uZmlndXJhdGlvbikgcmVmZXJzIHRvIHRoZSBtaXNzaW5nIHR5cGUgSFRyYWNlQ29uZmlndXJhdGlvbgoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglNaWxsaVNwYW4gY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQKCUNvbnRlbnRSZXNwb25zZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglIdHRwQ2xpZW50IGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVVSTCBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglPYmplY3RNYXBwZXIgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3BhbiBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglUaGUgbWV0aG9kIGNsb3NlKCkgZnJvbSB0aGUgdHlwZSBIVHJhY2VkUkVTVFJlY2VpdmVyIHJlZmVycyB0byB0aGUgbWlzc2luZyB0eXBlIElPRXhjZXB0aW9uCgoACAANDAAFAA4BABUoTGphdmEvbGFuZy9TdHJpbmc7KVYBAA9MaW5lTnVtYmVyVGFibGUBABJMb2NhbFZhcmlhYmxlVGFibGUBAAR0aGlzAQBITG9yZy9hcGFjaGUvaHRyYWNlL2ltcGwvVGVzdEhUcmFjZWRSRVNUUmVjZWl2ZXIkVGVzdEhUcmFjZUNvbmZpZ3VyYXRpb247AQADZ2V0AQAmKExqYXZhL2xhbmcvU3RyaW5nOylMamF2YS9sYW5nL1N0cmluZzsBABtSdW50aW1lSW52aXNpYmxlQW5ub3RhdGlvbnMBAApMT3ZlcnJpZGU7CAAYAQCTVW5yZXNvbHZlZCBjb21waWxhdGlvbiBwcm9ibGVtczogCglPdmVycmlkZSBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKAQA4KExqYXZhL2xhbmcvU3RyaW5nO0xqYXZhL2xhbmcvU3RyaW5nOylMamF2YS9sYW5nL1N0cmluZzsIABsBALhVbnJlc29sdmVkIGNvbXBpbGF0aW9uIHByb2JsZW1zOiAKCU92ZXJyaWRlIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKCVN0cmluZyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYSB0eXBlCglTdHJpbmcgY2Fubm90IGJlIHJlc29sdmVkIHRvIGEgdHlwZQoJU3RyaW5nIGNhbm5vdCBiZSByZXNvbHZlZCB0byBhIHR5cGUKAQAKU291cmNlRmlsZQEAHFRlc3RIVHJhY2VkUkVTVFJlY2VpdmVyLmphdmEBABVJbmNvbnNpc3RlbnRIaWVyYXJjaHkBAAxJbm5lckNsYXNzZXMHACEBAC5vcmcvYXBhY2hlL2h0cmFjZS9pbXBsL1Rlc3RIVHJhY2VkUkVTVFJlY2VpdmVyAQAXVGVzdEhUcmFjZUNvbmZpZ3VyYXRpb24HACQBABNIVHJhY2VDb25maWd1cmF0aW9uBwAmAQAQamF2YS9sYW5nL1N0cmluZwEADE1pc3NpbmdUeXBlcwAwAAEAAwAAAAAAAwACAAUABgABAAcAAAA0AAMAAgAAAAq7AAhZEgq3AAy/AAAAAgAPAAAABgABAAAAFAAQAAAADAABAAAACgARABIAAAABABMAFAACABUAAAAGAAEAFgAAAAcAAAA0AAMAAgAAAAq7AAhZEhe3AAy/AAAAAgAPAAAABgABAAAAPgAQAAAADAABAAAACgARABIAAAABABMAGQACABUAAAAGAAEAFgAAAAcAAAA0AAMAAwAAAAq7AAhZEhq3AAy/AAAAAgAPAAAABgABAAAAQwAQAAAADAABAAAACgARABIAAAAEABwAAAACAB0AHgAAAAAAHwAAAAoAAQABACAAIgASACcAAAAGAAIAIwAl