CtMECjFjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wdWJsaWNfcHJvdG8zLnByb3RvEhhwcm90b2J1Zl91bml0dGVzdF9pbXBvcnQiIwoTUHVibGljSW1wb3J0TWVzc2FnZRIMCgFlGAEgASgFUgFlQh2qAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0q3AwoGEgQJABEBCr4CCgEMEgMJABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMiggQXV0aG9yOiBsaXVqaXNpQGdvb2dsZS5jb20gKFBoZXJsIExpdSkKCggKAQISAwsAIQoICgEIEgMNADcKCQoCCCUSAw0ANwoKCgIEABIEDwARAQoKCgMEAAESAw8IGwoLCgQEAAIAEgMQAQ0KDAoFBAACAAUSAxABBgoMCgUEAAIAARIDEAcICgwKBQQAAgADEgMQCwxiBnByb3RvMwrnCAoqY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHJvdG8zLnByb3RvEhhwcm90b2J1Zl91bml0dGVzdF9pbXBvcnQaMWNzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0X3B1YmxpY19wcm90bzMucHJvdG8iHQoNSW1wb3J0TWVzc2FnZRIMCgFkGAEgASgFUgFkKlkKCkltcG9ydEVudW0SGwoXSU1QT1JUX0VOVU1fVU5TUEVDSUZJRUQQABIOCgpJTVBPUlRfRk9PEAcSDgoKSU1QT1JUX0JBUhAIEg4KCklNUE9SVF9CQVoQCUIdqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NKyAYKBhIEDQAfAQrnAwoBDBIDDQASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjLQASBBdXRob3I6IGtlbnRvbkBnb29nbGUuY29tIChLZW50b24gVmFyZGEpCiAgQmFzZWQgb24gb3JpZ2luYWwgUHJvdG9jb2wgQnVmZmVycyBkZXNpZ24gYnkKICBTYW5qYXkgR2hlbWF3YXQsIEplZmYgRGVhbiwgYW5kIG90aGVycy4KCiBBIHByb3RvIGZpbGUgd2hpY2ggaXMgaW1wb3J0ZWQgYnkgdW5pdHRlc3RfcHJvdG8zLnByb3RvIHRvIHRlc3QgaW1wb3J0aW5nLgoKCAoBAhIDDwAhCggKAQgSAxEANwoJCgIIJRIDEQA3Ch8KAgMAEgMUAEIaFCBUZXN0IHB1YmxpYyBpbXBvcnQKCgkKAgoAEgMUBw0KCgoCBAASBBYAGAEKCgoDBAABEgMWCBUKCwoEBAACABIDFwIOCgwKBQQAAgAFEgMXAgcKDAoFBAACAAESAxcICQoMCgUEAAIAAxIDFwwNCgoKAgUAEgQaAB8BCgoKAwUAARIDGgUPCgsKBAUAAgASAxsCHgoMCgUFAAIAARIDGwIZCgwKBQUAAgACEgMbHB0KCwoEBQACARIDHAIRCgwKBQUAAgEBEgMcAgwKDAoFBQACAQISAxwPEAoLCgQFAAICEgMdAhEKDAoFBQACAgESAx0CDAoMCgUFAAICAhIDHQ8QCgsKBAUAAgMSAx4CEQoMCgUFAAIDARIDHgIMCgwKBQUAAgMCEgMeDxBQAGIGcHJvdG8zCqKxAQojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9wcm90bzMucHJvdG8SEnByb3RvYnVmX3VuaXR0ZXN0MxoqY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHJvdG8zLnByb3RvIqsWCgxUZXN0QWxsVHlwZXMSIQoMc2luZ2xlX2ludDMyGAEgASgFUgtzaW5nbGVJbnQzMhIhCgxzaW5nbGVfaW50NjQYAiABKANSC3NpbmdsZUludDY0EiMKDXNpbmdsZV91aW50MzIYAyABKA1SDHNpbmdsZVVpbnQzMhIjCg1zaW5nbGVfdWludDY0GAQgASgEUgxzaW5nbGVVaW50NjQSIwoNc2luZ2xlX3NpbnQzMhgFIAEoEVIMc2luZ2xlU2ludDMyEiMKDXNpbmdsZV9zaW50NjQYBiABKBJSDHNpbmdsZVNpbnQ2NBIlCg5zaW5nbGVfZml4ZWQzMhgHIAEoB1INc2luZ2xlRml4ZWQzMhIlCg5zaW5nbGVfZml4ZWQ2NBgIIAEoBlINc2luZ2xlRml4ZWQ2NBInCg9zaW5nbGVfc2ZpeGVkMzIYCSABKA9SDnNpbmdsZVNmaXhlZDMyEicKD3NpbmdsZV9zZml4ZWQ2NBgKIAEoEFIOc2luZ2xlU2ZpeGVkNjQSIQoMc2luZ2xlX2Zsb2F0GAsgASgCUgtzaW5nbGVGbG9hdBIjCg1zaW5nbGVfZG91YmxlGAwgASgBUgxzaW5nbGVEb3VibGUSHwoLc2luZ2xlX2Jvb2wYDSABKAhSCnNpbmdsZUJvb2wSIwoNc2luZ2xlX3N0cmluZxgOIAEoCVIMc2luZ2xlU3RyaW5nEiEKDHNpbmdsZV9ieXRlcxgPIAEoDFILc2luZ2xlQnl0ZXMSYgoVc2luZ2xlX25lc3RlZF9tZXNzYWdlGBIgASgLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhNzaW5nbGVOZXN0ZWRNZXNzYWdlElgKFnNpbmdsZV9mb3JlaWduX21lc3NhZ2UYEyABKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSFHNpbmdsZUZvcmVpZ25NZXNzYWdlElsKFXNpbmdsZV9pbXBvcnRfbWVzc2FnZRgUIAEoCzInLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRNZXNzYWdlUhNzaW5nbGVJbXBvcnRNZXNzYWdlElkKEnNpbmdsZV9uZXN0ZWRfZW51bRgVIAEoDjIrLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkRW51bVIQc2luZ2xlTmVzdGVkRW51bRJPChNzaW5nbGVfZm9yZWlnbl9lbnVtGBYgASgOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtUhFzaW5nbGVGb3JlaWduRW51bRJSChJzaW5nbGVfaW1wb3J0X2VudW0YFyABKA4yJC5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuSW1wb3J0RW51bVIQc2luZ2xlSW1wb3J0RW51bRJuChxzaW5nbGVfcHVibGljX2ltcG9ydF9tZXNzYWdlGBogASgLMi0ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LlB1YmxpY0ltcG9ydE1lc3NhZ2VSGXNpbmdsZVB1YmxpY0ltcG9ydE1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSZgoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJcChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USXwoXcmVwZWF0ZWRfaW1wb3J0X21lc3NhZ2UYMiADKAsyJy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuSW1wb3J0TWVzc2FnZVIVcmVwZWF0ZWRJbXBvcnRNZXNzYWdlEl0KFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMisucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SUwoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtUhNyZXBlYXRlZEZvcmVpZ25FbnVtElYKFHJlcGVhdGVkX2ltcG9ydF9lbnVtGDUgAygOMiQucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydEVudW1SEnJlcGVhdGVkSW1wb3J0RW51bRJyCh5yZXBlYXRlZF9wdWJsaWNfaW1wb3J0X21lc3NhZ2UYNiADKAsyLS5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuUHVibGljSW1wb3J0TWVzc2FnZVIbcmVwZWF0ZWRQdWJsaWNJbXBvcnRNZXNzYWdlEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJiChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMaHwoNTmVzdGVkTWVzc2FnZRIOCgJiYhgBIAEoBVICYmIiVgoKTmVzdGVkRW51bRIbChdORVNURURfRU5VTV9VTlNQRUNJRklFRBAAEgcKA0ZPTxABEgcKA0JBUhACEgcKA0JBWhADEhAKA05FRxD///////////8BQg0KC29uZW9mX2ZpZWxkIt0BChJOZXN0ZWRUZXN0QWxsVHlwZXMSPAoFY2hpbGQYASABKAsyJi5wcm90b2J1Zl91bml0dGVzdDMuTmVzdGVkVGVzdEFsbFR5cGVzUgVjaGlsZBI6CgdwYXlsb2FkGAIgASgLMiAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlc1IHcGF5bG9hZBJNCg5yZXBlYXRlZF9jaGlsZBgDIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0My5OZXN0ZWRUZXN0QWxsVHlwZXNSDXJlcGVhdGVkQ2hpbGQiRQoUVGVzdERlcHJlY2F0ZWRGaWVsZHMSLQoQZGVwcmVjYXRlZF9pbnQzMhgBIAEoBUICGAFSD2RlcHJlY2F0ZWRJbnQzMiIeCg5Gb3JlaWduTWVzc2FnZRIMCgFjGAEgASgFUgFjIjAKElRlc3RSZXNlcnZlZEZpZWxkc0oECAIQA0oECA8QEEoECAkQDFIDYmFyUgNiYXoiagoRVGVzdEZvcmVpZ25OZXN0ZWQSVQoOZm9yZWlnbl9uZXN0ZWQYASABKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VSDWZvcmVpZ25OZXN0ZWQiOwoYVGVzdFJlYWxseUxhcmdlVGFnTnVtYmVyEgwKAWEYASABKAVSAWESEQoCYmIY////fyABKAVSAmJiIlwKFFRlc3RSZWN1cnNpdmVNZXNzYWdlEjYKAWEYASABKAsyKC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdFJlY3Vyc2l2ZU1lc3NhZ2VSAWESDAoBaRgCIAEoBVIBaSJQChRUZXN0TXV0dWFsUmVjdXJzaW9uQRI4CgJiYhgBIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TXV0dWFsUmVjdXJzaW9uQlICYmIidQoUVGVzdE11dHVhbFJlY3Vyc2lvbkISNgoBYRgBIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TXV0dWFsUmVjdXJzaW9uQVIBYRIlCg5vcHRpb25hbF9pbnQzMhgCIAEoBVINb3B0aW9uYWxJbnQzMiJUChJUZXN0RW51bUFsbG93QWxpYXMSPgoFdmFsdWUYASABKA4yKC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEVudW1XaXRoRHVwVmFsdWVSBXZhbHVlIvsDChdUZXN0Q2FtZWxDYXNlRmllbGROYW1lcxImCg5QcmltaXRpdmVGaWVsZBgBIAEoBVIOUHJpbWl0aXZlRmllbGQSIAoLU3RyaW5nRmllbGQYAiABKAlSC1N0cmluZ0ZpZWxkEj0KCUVudW1GaWVsZBgDIAEoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bVIJRW51bUZpZWxkEkYKDE1lc3NhZ2VGaWVsZBgEIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIMTWVzc2FnZUZpZWxkEjYKFlJlcGVhdGVkUHJpbWl0aXZlRmllbGQYByADKAVSFlJlcGVhdGVkUHJpbWl0aXZlRmllbGQSMAoTUmVwZWF0ZWRTdHJpbmdGaWVsZBgIIAMoCVITUmVwZWF0ZWRTdHJpbmdGaWVsZBJNChFSZXBlYXRlZEVudW1GaWVsZBgJIAMoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bVIRUmVwZWF0ZWRFbnVtRmllbGQSVgoUUmVwZWF0ZWRNZXNzYWdlRmllbGQYCiADKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSFFJlcGVhdGVkTWVzc2FnZUZpZWxkIv8BChJUZXN0RmllbGRPcmRlcmluZ3MSGwoJbXlfc3RyaW5nGAsgASgJUghteVN0cmluZxIVCgZteV9pbnQYASABKANSBW15SW50EhkKCG15X2Zsb2F0GGUgASgCUgdteUZsb2F0EmkKFXNpbmdsZV9uZXN0ZWRfbWVzc2FnZRjIASABKAsyNC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEZpZWxkT3JkZXJpbmdzLk5lc3RlZE1lc3NhZ2VSE3NpbmdsZU5lc3RlZE1lc3NhZ2UaLwoNTmVzdGVkTWVzc2FnZRIOCgJvbxgCIAEoA1ICb28SDgoCYmIYASABKAVSAmJiIlgKEVNwYXJzZUVudW1NZXNzYWdlEkMKC3NwYXJzZV9lbnVtGAEgASgOMiIucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RTcGFyc2VFbnVtUgpzcGFyc2VFbnVtIh8KCU9uZVN0cmluZxISCgRkYXRhGAEgASgJUgRkYXRhIiAKCk1vcmVTdHJpbmcSEgoEZGF0YRgBIAMoCVIEZGF0YSIeCghPbmVCeXRlcxISCgRkYXRhGAEgASgMUgRkYXRhIh8KCU1vcmVCeXRlcxISCgRkYXRhGAEgASgMUgRkYXRhIiIKDEludDMyTWVzc2FnZRISCgRkYXRhGAEgASgFUgRkYXRhIiMKDVVpbnQzMk1lc3NhZ2USEgoEZGF0YRgBIAEoDVIEZGF0YSIiCgxJbnQ2NE1lc3NhZ2USEgoEZGF0YRgBIAEoA1IEZGF0YSIjCg1VaW50NjRNZXNzYWdlEhIKBGRhdGEYASABKARSBGRhdGEiIQoLQm9vbE1lc3NhZ2USEgoEZGF0YRgBIAEoCFIEZGF0YSKTAQoJVGVzdE9uZW9mEhkKB2Zvb19pbnQYASABKAVIAFIGZm9vSW50Eh8KCmZvb19zdHJpbmcYAiABKAlIAFIJZm9vU3RyaW5nEkMKC2Zvb19tZXNzYWdlGAMgASgLMiAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlc0gAUgpmb29NZXNzYWdlQgUKA2ZvbyLuBAoPVGVzdFBhY2tlZFR5cGVzEiUKDHBhY2tlZF9pbnQzMhhaIAMoBUICEAFSC3BhY2tlZEludDMyEiUKDHBhY2tlZF9pbnQ2NBhbIAMoA0ICEAFSC3BhY2tlZEludDY0EicKDXBhY2tlZF91aW50MzIYXCADKA1CAhABUgxwYWNrZWRVaW50MzISJwoNcGFja2VkX3VpbnQ2NBhdIAMoBEICEAFSDHBhY2tlZFVpbnQ2NBInCg1wYWNrZWRfc2ludDMyGF4gAygRQgIQAVIMcGFja2VkU2ludDMyEicKDXBhY2tlZF9zaW50NjQYXyADKBJCAhABUgxwYWNrZWRTaW50NjQSKQoOcGFja2VkX2ZpeGVkMzIYYCADKAdCAhABUg1wYWNrZWRGaXhlZDMyEikKDnBhY2tlZF9maXhlZDY0GGEgAygGQgIQAVINcGFja2VkRml4ZWQ2NBIrCg9wYWNrZWRfc2ZpeGVkMzIYYiADKA9CAhABUg5wYWNrZWRTZml4ZWQzMhIrCg9wYWNrZWRfc2ZpeGVkNjQYYyADKBBCAhABUg5wYWNrZWRTZml4ZWQ2NBIlCgxwYWNrZWRfZmxvYXQYZCADKAJCAhABUgtwYWNrZWRGbG9hdBInCg1wYWNrZWRfZG91YmxlGGUgAygBQgIQAVIMcGFja2VkRG91YmxlEiMKC3BhY2tlZF9ib29sGGYgAygIQgIQAVIKcGFja2VkQm9vbBJECgtwYWNrZWRfZW51bRhnIAMoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bUICEAFSCnBhY2tlZEVudW0iqAUKEVRlc3RVbnBhY2tlZFR5cGVzEikKDnVucGFja2VkX2ludDMyGFogAygFQgIQAFINdW5wYWNrZWRJbnQzMhIpCg51bnBhY2tlZF9pbnQ2NBhbIAMoA0ICEABSDXVucGFja2VkSW50NjQSKwoPdW5wYWNrZWRfdWludDMyGFwgAygNQgIQAFIOdW5wYWNrZWRVaW50MzISKwoPdW5wYWNrZWRfdWludDY0GF0gAygEQgIQAFIOdW5wYWNrZWRVaW50NjQSKwoPdW5wYWNrZWRfc2ludDMyGF4gAygRQgIQAFIOdW5wYWNrZWRTaW50MzISKwoPdW5wYWNrZWRfc2ludDY0GF8gAygSQgIQAFIOdW5wYWNrZWRTaW50NjQSLQoQdW5wYWNrZWRfZml4ZWQzMhhgIAMoB0ICEABSD3VucGFja2VkRml4ZWQzMhItChB1bnBhY2tlZF9maXhlZDY0GGEgAygGQgIQAFIPdW5wYWNrZWRGaXhlZDY0Ei8KEXVucGFja2VkX3NmaXhlZDMyGGIgAygPQgIQAFIQdW5wYWNrZWRTZml4ZWQzMhIvChF1bnBhY2tlZF9zZml4ZWQ2NBhjIAMoEEICEABSEHVucGFja2VkU2ZpeGVkNjQSKQoOdW5wYWNrZWRfZmxvYXQYZCADKAJCAhAAUg11bnBhY2tlZEZsb2F0EisKD3VucGFja2VkX2RvdWJsZRhlIAMoAUICEABSDnVucGFja2VkRG91YmxlEicKDXVucGFja2VkX2Jvb2wYZiADKAhCAhAAUgx1bnBhY2tlZEJvb2wSSAoNdW5wYWNrZWRfZW51bRhnIAMoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bUICEABSDHVucGFja2VkRW51bSKfAgojVGVzdFJlcGVhdGVkU2NhbGFyRGlmZmVyZW50VGFnU2l6ZXMSKQoQcmVwZWF0ZWRfZml4ZWQzMhgMIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEiUKDnJlcGVhdGVkX2ludDMyGA0gAygFUg1yZXBlYXRlZEludDMyEioKEHJlcGVhdGVkX2ZpeGVkNjQY/g8gAygGUg9yZXBlYXRlZEZpeGVkNjQSJgoOcmVwZWF0ZWRfaW50NjQY/w8gAygDUg1yZXBlYXRlZEludDY0EicKDnJlcGVhdGVkX2Zsb2F0GP7/DyADKAJSDXJlcGVhdGVkRmxvYXQSKQoPcmVwZWF0ZWRfdWludDY0GP//DyADKARSDnJlcGVhdGVkVWludDY0IisKG1Rlc3RDb21tZW50SW5qZWN0aW9uTWVzc2FnZRIMCgFhGAEgASgJUgFhIgwKCkZvb1JlcXVlc3QiDQoLRm9vUmVzcG9uc2UiEgoQRm9vQ2xpZW50TWVzc2FnZSISChBGb29TZXJ2ZXJNZXNzYWdlIgwKCkJhclJlcXVlc3QiDQoLQmFyUmVzcG9uc2UiEgoQVGVzdEVtcHR5TWVzc2FnZSKCAQoOQ29tbWVudE1lc3NhZ2USEgoEdGV4dBgBIAEoCVIEdGV4dBo3ChROZXN0ZWRDb21tZW50TWVzc2FnZRIfCgtuZXN0ZWRfdGV4dBgBIAEoCVIKbmVzdGVkVGV4dCIjChFOZXN0ZWRDb21tZW50RW51bRIOCgpaRVJPX1ZBTFVFEAAqWQoLRm9yZWlnbkVudW0SFwoTRk9SRUlHTl9VTlNQRUNJRklFRBAAEg8KC0ZPUkVJR05fRk9PEAQSDwoLRk9SRUlHTl9CQVIQBRIPCgtGT1JFSUdOX0JBWhAGKnUKFFRlc3RFbnVtV2l0aER1cFZhbHVlEigKJFRFU1RfRU5VTV9XSVRIX0RVUF9WQUxVRV9VTlNQRUNJRklFRBAAEggKBEZPTzEQARIICgRCQVIxEAISBwoDQkFaEAMSCAoERk9PMhABEggKBEJBUjIQAhoCEAEqnQEKDlRlc3RTcGFyc2VFbnVtEiAKHFRFU1RfU1BBUlNFX0VOVU1fVU5TUEVDSUZJRUQQABIMCghTUEFSU0VfQRB7Eg4KCFNQQVJTRV9CEKbnAxIPCghTUEFSU0VfQxCysYAGEhUKCFNQQVJTRV9EEPH//////////wESFQoIU1BBUlNFX0UQtN78////////ARIMCghTUEFSU0VfRxACKh0KC0NvbW1lbnRFbnVtEg4KClpFUk9fVkFMVUUQADKdAQoLVGVzdFNlcnZpY2USRgoDRm9vEh4ucHJvdG9idWZfdW5pdHRlc3QzLkZvb1JlcXVlc3QaHy5wcm90b2J1Zl91bml0dGVzdDMuRm9vUmVzcG9uc2USRgoDQmFyEh4ucHJvdG9idWZfdW5pdHRlc3QzLkJhclJlcXVlc3QaHy5wcm90b2J1Zl91bml0dGVzdDMuQmFyUmVzcG9uc2VCLEINVW5pdHRlc3RQcm90b6oCGkdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zSvd0CgcSBQ0A/wIBCscDCgEMEgMNABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMrABIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIEEgcHJvdG8gZmlsZSB3ZSB3aWxsIHVzZSBmb3Ig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AgUDEgb8AgD/AgEaFiBMZWFkaW5nIGVudW0gY29tbWVudAoKCwoDBQMBEgT8AgUQCiIKBAUDAgASBP4CAhEaFCBaZXJvIHZhbHVlIGNvbW1lbnQKCg0KBQUDAgABEgT+AgIMCg0KBQUDAgACEgT+Ag8QYgZwcm90bzMKqU4KJ2NzaGFycC9wcm90b3MvbWFwX3VuaXR0ZXN0X3Byb3RvMy5wcm90bxIScHJvdG9idWZfdW5pdHRlc3QzGiNjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X3Byb3RvMy5wcm90byKZFgoHVGVzdE1hcBJWCg9tYXBfaW50MzJfaW50MzIYASADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISVgoPbWFwX2ludDY0X2ludDY0GAIgAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0ElwKEW1hcF91aW50MzJfdWludDMyGAMgAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJcChFtYXBfdWludDY0X3VpbnQ2NBgEIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQSXAoRbWFwX3NpbnQzMl9zaW50MzIYBSADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyElwKEW1hcF9zaW50NjRfc2ludDY0GAYgAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJiChNtYXBfZml4ZWQzMl9maXhlZDMyGAcgAygLMjIucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISYgoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBgIIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0EmgKFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhgJIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJoChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYCiADKAsyNC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSVgoPbWFwX2ludDMyX2Zsb2F0GAsgAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0ElkKEG1hcF9pbnQzMl9kb3VibGUYDCADKAsyLy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkRvdWJsZUVudHJ5Ug5tYXBJbnQzMkRvdWJsZRJQCg1tYXBfYm9vbF9ib29sGA0gAygLMiwucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wSXAoRbWFwX3N0cmluZ19zdHJpbmcYDiADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nElYKD21hcF9pbnQzMl9ieXRlcxgPIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyQnl0ZXNFbnRyeVINbWFwSW50MzJCeXRlcxJTCg5tYXBfaW50MzJfZW51bRgQIAMoCzItLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyRW51bUVudHJ5UgxtYXBJbnQzMkVudW0ScgoZbWFwX2ludDMyX2ZvcmVpZ25fbWVzc2FnZRgRIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyRm9yZWlnbk1lc3NhZ2VFbnRyeVIWbWFwSW50MzJGb3JlaWduTWVzc2FnZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkAKEk1hcEludDMyQnl0ZXNFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGlwKEU1hcEludDMyRW51bUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgOMhsucHJvdG9idWZfdW5pdHRlc3QzLk1hcEVudW1SBXZhbHVlOgI4ARptChtNYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSOAoFdmFsdWUYAiABKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSBXZhbHVlOgI4ASJLChFUZXN0TWFwU3VibWVzc2FnZRI2Cgh0ZXN0X21hcBgBIAEoCzIbLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwUgd0ZXN0TWFwItsBCg5UZXN0TWVzc2FnZU1hcBJjChFtYXBfaW50MzJfbWVzc2FnZRgBIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWVzc2FnZU1hcC5NYXBJbnQzMk1lc3NhZ2VFbnRyeVIPbWFwSW50MzJNZXNzYWdlGmQKFE1hcEludDMyTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjYKBXZhbHVlGAIgASgLMiAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlc1IFdmFsdWU6AjgBIokCCg9UZXN0U2FtZVR5cGVNYXASQQoEbWFwMRgBIAMoCzItLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0U2FtZVR5cGVNYXAuTWFwMUVudHJ5UgRtYXAxEkEKBG1hcDIYAiADKAsyLS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdFNhbWVUeXBlTWFwLk1hcDJFbnRyeVIEbWFwMho3CglNYXAxRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARo3CglNYXAyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ASKtFAoMVGVzdEFyZW5hTWFwElsKD21hcF9pbnQzMl9pbnQzMhgBIAMoCzIzLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyElsKD21hcF9pbnQ2NF9pbnQ2NBgCIAMoCzIzLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EmEKEW1hcF91aW50MzJfdWludDMyGAMgAygLMjUucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyEmEKEW1hcF91aW50NjRfdWludDY0GAQgAygLMjUucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EmEKEW1hcF9zaW50MzJfc2ludDMyGAUgAygLMjUucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEmEKEW1hcF9zaW50NjRfc2ludDY0GAYgAygLMjUucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EmcKE21hcF9maXhlZDMyX2ZpeGVkMzIYByADKAsyNy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEmcKE21hcF9maXhlZDY0X2ZpeGVkNjQYCCADKAsyNy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0Em0KFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhgJIAMoCzI5LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEm0KFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBgKIAMoCzI5LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0ElsKD21hcF9pbnQzMl9mbG9hdBgLIAMoCzIzLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0El4KEG1hcF9pbnQzMl9kb3VibGUYDCADKAsyNC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlElUKDW1hcF9ib29sX2Jvb2wYDSADKAsyMS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sElgKDm1hcF9pbnQzMl9lbnVtGA4gAygLMjIucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkVudW1FbnRyeVIMbWFwSW50MzJFbnVtEncKGW1hcF9pbnQzMl9mb3JlaWduX21lc3NhZ2UYDyADKAsyPC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMyRm9yZWlnbk1lc3NhZ2VFbnRyeVIWbWFwSW50MzJGb3JlaWduTWVzc2FnZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpcChFNYXBJbnQzMkVudW1FbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoDjIbLnByb3RvYnVmX3VuaXR0ZXN0My5NYXBFbnVtUgV2YWx1ZToCOAEabQobTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjgKBXZhbHVlGAIgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEi+AEKH01lc3NhZ2VDb250YWluaW5nRW51bUNhbGxlZFR5cGUSUQoEdHlwZRgBIAMoCzI9LnByb3RvYnVmX3VuaXR0ZXN0My5NZXNzYWdlQ29udGFpbmluZ0VudW1DYWxsZWRUeXBlLlR5cGVFbnRyeVIEdHlwZRpsCglUeXBlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSSQoFdmFsdWUYAiABKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuTWVzc2FnZUNvbnRhaW5pbmdFbnVtQ2FsbGVkVHlwZVIFdmFsdWU6AjgBIhQKBFR5cGUSDAoIVFlQRV9GT08QACKxAQofTWVzc2FnZUNvbnRhaW5pbmdNYXBDYWxsZWRFbnRyeRJUCgVlbnRyeRgBIAMoCzI+LnByb3RvYnVmX3VuaXR0ZXN0My5NZXNzYWdlQ29udGFpbmluZ01hcENhbGxlZEVudHJ5LkVudHJ5RW50cnlSBWVudHJ5GjgKCkVudHJ5RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ASo/CgdNYXBFbnVtEhAKDE1BUF9FTlVNX0ZPTxAAEhAKDE1BUF9FTlVNX0JBUhABEhAKDE1BUF9FTlVNX0JBWhACQh2qAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0qqGgoGEgQNAFwBCuMECgEMEgMNABIazAIgVGhpcyBmaWxlIGlzIG1vc3RseSBlcXVpdmFsZW50IHRvIG1hcF91bml0dGVzdC5wcm90bywgYnV0IGltcG9ydHMKIHVuaXR0ZXN0X3Byb3RvMy5wcm90byBpbnN0ZWFkIG9mIHVuaXR0ZXN0LnByb3RvLCBzbyB0aGF0IGl0IG9ubHkKIHVzZXMgcHJvdG8zIG1lc3NhZ2VzLiBUaGlzIG1ha2VzIGl0IHN1aXRhYmxlIGZvciB0ZXN0aW5nCiBpbXBsZW1lbnRhdGlvbnMgd2hpY2ggb25seSBzdXBwb3J0IHByb3RvMy4KIFRoZSBUZXN0UmVxdWlyZWRNZXNzYWdlTWFwIG1lc3NhZ2UgaGFzIGJlZW4gcmVtb3ZlZCBhcyB0aGVyZSBhcmUgbm8KIHJlcXVpcmVkIGZpZWxkcyBpbiBwcm90bzMuCjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdv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BgQFBAACABIDVAQRCg4KBwQFBAACAAESA1QEDAoOCgcEBQQAAgACEgNUDxAKCwoEBAUCABIDVgI3CgwKBQQFAgAGEgNWAi0KDAoFBAUCAAESA1YuMgoMCgUEBQIAAxIDVjU2CkoKAgQGEgRaAFwBGj4gUHJldmlvdXNseSwgbWVzc2FnZSBjYW5ub3QgY29udGFpbiBtYXAgZmllbGQgY2FsbGVkICJlbnRyeSIuCgoKCgMEBgESA1oIJwoLCgQEBgIAEgNbAh4KDAoFBAYCAAYSA1sCEwoMCgUEBgIAARIDWxQZCgwKBQQGAgADEgNbHB1iBnByb3RvMwr+IgocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIpgBCgZTdHJ1Y3QSOwoGZmllbGRzGAEgAygLMiMuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdC5GaWVsZHNFbnRyeVIGZmllbGRzGlEKC0ZpZWxkc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EiwKBXZhbHVlGAIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUgV2YWx1ZToCOAEisgIKBVZhbHVlEjsKCm51bGxfdmFsdWUYASABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSABSCW51bGxWYWx1ZRIjCgxudW1iZXJfdmFsdWUYAiABKAFIAFILbnVtYmVyVmFsdWUSIwoMc3RyaW5nX3ZhbHVlGAMgASgJSABSC3N0cmluZ1ZhbHVlEh8KCmJvb2xfdmFsdWUYBCABKAhIAFIJYm9vbFZhbHVlEjwKDHN0cnVjdF92YWx1ZRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAFILc3RydWN0VmFsdWUSOwoKbGlzdF92YWx1ZRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5MaXN0VmFsdWVIAFIJbGlzdFZhbHVlQgYKBGtpbmQiOwoJTGlzdFZhbHVlEi4KBnZhbHVlcxgBIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVIGdmFsdWVzKhsKCU51bGxWYWx1ZRIOCgpOVUxMX1ZBTFVFEABCfwoTY29tLmdvb2dsZS5wcm90b2J1ZkILU3RydWN0UHJvdG9QAVovZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vc3RydWN0cGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKmR0KBhIEHgBeAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAHwoJCgIIHxIDIgAfCggKAQgSAyMARgoJCgIICxIDIwBGCggKAQgSAyQALAoJCgIIARIDJAAsCggKAQgSAyUALAoJCgIICBIDJQAsCggKAQgSAyYAIgoJCgIIChIDJgAiCggKAQgSAycAIQoJCgIIJBIDJwAhCggKAQgSAygAOwoJCgIIJRIDKAA7CrMDCgIEABIEMgA1ARqmAyBgU3RydWN0YCByZXByZXNlbnRzIGEgc3RydWN0dXJlZCBkYXRhIHZhbHVlLCBjb25zaXN0aW5nIG9mIGZpZWxkcwogd2hpY2ggbWFwIHRvIGR5bmFtaWNhbGx5IHR5cGVkIHZhbHVlcy4gSW4gc29tZSBsYW5ndWFnZXMsIGBTdHJ1Y3RgCiBtaWdodCBiZSBzdXBwb3J0ZWQgYnkgYSBuYXRpdmUgcmVwcmVzZW50YXRpb24uIEZvciBleGFtcGxlLCBpbgogc2NyaXB0aW5nIGxhbmd1YWdlcyBsaWtlIEpTIGEgc3RydWN0IGlzIHJlcHJlc2VudGVkIGFzIGFuCiBvYmplY3QuIFRoZSBkZXRhaWxzIG9mIHRoYXQgcmVwcmVzZW50YXRpb24gYXJlIGRlc2NyaWJlZCB0b2dldGhlcgogd2l0aCB0aGUgcHJvdG8gc3VwcG9ydCBmb3IgdGhlIGxhbmd1YWdlLgoKIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIGZvciBgU3RydWN0YCBpcyBKU09OIG9iamVjdC4KCgoKAwQAARIDMggOCjkKBAQAAgASAzQCIBosIFVub3JkZXJlZCBtYXAgb2YgZHluYW1pY2FsbHkgdHlwZWQgdmFsdWVzLgoKDAoFBAACAAYSAzQCFAoMCgUEAAIAARIDNBUbCgwKBQQAAgADEgM0Hh8KxAIKAgQBEgQ9AE0BGrcCIGBWYWx1ZWAgcmVwcmVzZW50cyBhIGR5bmFtaWNhbGx5IHR5cGVkIHZhbHVlIHdoaWNoIGNhbiBiZSBlaXRoZXIKIG51bGwsIGEgbnVtYmVyLCBhIHN0cmluZywgYSBib29sZWFuLCBhIHJlY3Vyc2l2ZSBzdHJ1Y3QgdmFsdWUsIG9yIGEKIGxpc3Qgb2YgdmFsdWVzLiBBIHByb2R1Y2VyIG9mIHZhbHVlIGlzIGV4cGVjdGVkIHRvIHNldCBvbmUgb2YgdGhlc2UKIHZhcmlhbnRzLiBBYnNlbmNlIG9mIGFueSB2YXJpYW50IGluZGljYXRlcyBhbiBlcnJvci4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYFZhbHVlYCBpcyBKU09OIHZhbHVlLgoKCgoDBAEBEgM9CA0KIgoEBAEIABIEPwJMAxoUIFRoZSBraW5kIG9mIHZhbHVlLgoKDAoFBAEIAAESAz8IDAonCgQEAQIAEgNBBB0aGiBSZXByZXNlbnRzIGEgbnVsbCB2YWx1ZS4KCgwKBQQBAgAGEgNBBA0KDAoFBAECAAESA0EOGAoMCgUEAQIAAxIDQRscCikKBAQBAgESA0MEHBocIFJlcHJlc2VudHMgYSBkb3VibGUgdmFsdWUuCgoMCgUEAQIBBRIDQwQKCgwKBQQBAgEBEgNDCxcKDAoFBAECAQMSA0MaGwopCgQEAQICEgNFBBwaHCBSZXByZXNlbnRzIGEgc3RyaW5nIHZhbHVlLgoKDAoFBAECAgUSA0UECgoMCgUEAQICARIDRQsXCgwKBQQBAgIDEgNFGhsKKgoEBAECAxIDRwQYGh0gUmVwcmVzZW50cyBhIGJvb2xlYW4gdmFsdWUuCgoMCgUEAQIDBRIDRwQICgwKBQQBAgMBEgNHCRMKDAoFBAECAwMSA0cWFwotCgQEAQIEEgNJBBwaICBSZXByZXNlbnRzIGEgc3RydWN0dXJlZCB2YWx1ZS4KCgwKBQQBAgQGEgNJBAoKDAoFBAECBAESA0kLFwoMCgUEAQIEAxIDSRobCi0KBAQBAgUSA0sEHRogIFJlcHJlc2VudHMgYSByZXBlYXRlZCBgVmFsdWVgLgoKDAoFBAECBQYSA0sEDQoMCgUEAQIFARIDSw4YCgwKBQQBAgUDEgNLGxwKqAEKAgUAEgRTAFYBGpsBIGBOdWxsVmFsdWVgIGlzIGEgc2luZ2xldG9uIGVudW1lcmF0aW9uIHRvIHJlcHJlc2VudCB0aGUgbnVsbCB2YWx1ZSBmb3IgdGhlCiBgVmFsdWVgIHR5cGUgdW5pb24uCgogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gZm9yIGBOdWxsVmFsdWVgIGlzIEpTT04gYG51bGxgLgoKCgoDBQABEgNTBQ4KGgoEBQACABIDVQIRGg0gTnVsbCB2YWx1ZS4KCgwKBQUAAgABEgNVAgwKDAoFBQACAAISA1UPEAqCAQoCBAISBFsAXgEadiBgTGlzdFZhbHVlYCBpcyBhIHdyYXBwZXIgYXJvdW5kIGEgcmVwZWF0ZWQgZmllbGQgb2YgdmFsdWVzLgoKIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIGZvciBgTGlzdFZhbHVlYCBpcyBKU09OIGFycmF5LgoKCgoDBAIBEgNbCBEKOgoEBAICABIDXQIcGi0gUmVwZWF0ZWQgZmllbGQgb2YgZHluYW1pY2FsbHkgdHlwZWQgdmFsdWVzLgoKDAoFBAICAAQSA10CCgoMCgUEAgIABhIDXQsQCgwKBQQCAgABEgNdERcKDAoFBAICAAMSA10aG2IGcHJvdG8zCpdHCiNjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2lzc3Vlcy5wcm90bxIPdW5pdHRlc3RfaXNzdWVzGhxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvIicKCElzc3VlMzA3GhsKCk5lc3RlZE9uY2UaDQoLTmVzdGVkVHdpY2UizQEKE05lZ2F0aXZlRW51bU1lc3NhZ2USMwoFdmFsdWUYASABKA4yHS51bml0dGVzdF9pc3N1ZXMuTmVnYXRpdmVFbnVtUgV2YWx1ZRI5CgZ2YWx1ZXMYAiADKA4yHS51bml0dGVzdF9pc3N1ZXMuTmVnYXRpdmVFbnVtQgIQAFIGdmFsdWVzEkYKDXBhY2tlZF92YWx1ZXMYAyADKA4yHS51bml0dGVzdF9pc3N1ZXMuTmVnYXRpdmVFbnVtQgIQAVIMcGFja2VkVmFsdWVzIhUKD0RlcHJlY2F0ZWRDaGlsZDoCGAEiiwMKF0RlcHJlY2F0ZWRGaWVsZHNNZXNzYWdlEioKDlByaW1pdGl2ZVZhbHVlGAEgASgFQgIYAVIOUHJpbWl0aXZlVmFsdWUSKgoOUHJpbWl0aXZlQXJyYXkYAiADKAVCAhgBUg5QcmltaXRpdmVBcnJheRJICgxNZXNzYWdlVmFsdWUYAyABKAsyIC51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZENoaWxkQgIYAVIMTWVzc2FnZVZhbHVlEkgKDE1lc3NhZ2VBcnJheRgEIAMoCzIgLnVuaXR0ZXN0X2lzc3Vlcy5EZXByZWNhdGVkQ2hpbGRCAhgBUgxNZXNzYWdlQXJyYXkSQQoJRW51bVZhbHVlGAUgASgOMh8udW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRFbnVtQgIYAVIJRW51bVZhbHVlEkEKCUVudW1BcnJheRgGIAMoDjIfLnVuaXR0ZXN0X2lzc3Vlcy5EZXByZWNhdGVkRW51bUICGAFSCUVudW1BcnJheSIfCglJdGVtRmllbGQSEgoEaXRlbRgBIAEoBVIEaXRlbSJXCg1SZXNlcnZlZE5hbWVzEhQKBXR5cGVzGAEgASgFUgV0eXBlcxIeCgpkZXNjcmlwdG9yGAIgASgFUgpkZXNjcmlwdG9yGhAKDlNvbWVOZXN0ZWRUeXBlIt8BChVUZXN0SnNvbkZpZWxkT3JkZXJpbmcSHwoLcGxhaW5faW50MzIYBCABKAVSCnBsYWluSW50MzISHQoJbzFfc3RyaW5nGAIgASgJSABSCG8xU3RyaW5nEhsKCG8xX2ludDMyGAUgASgFSABSB28xSW50MzISIQoMcGxhaW5fc3RyaW5nGAEgASgJUgtwbGFpblN0cmluZxIbCghvMl9pbnQzMhgGIAEoBUgBUgdvMkludDMyEh0KCW8yX3N0cmluZxgDIAEoCUgBUghvMlN0cmluZ0IECgJvMUIECgJvMiJRCgxUZXN0SnNvbk5hbWUSEgoEbmFtZRgBIAEoCVIEbmFtZRIZCgtkZXNjcmlwdGlvbhgCIAEoCVIEZGVzYxISCgRndWlkGAMgASgJUgRleGlkIpMBCgxPbmVvZk1lcmdpbmcSFAoEdGV4dBgBIAEoCUgAUgR0ZXh0Ej4KBm5lc3RlZBgCIAEoCzIkLnVuaXR0ZXN0X2lzc3Vlcy5PbmVvZk1lcmdpbmcuTmVzdGVkSABSBm5lc3RlZBokCgZOZXN0ZWQSDAoBeBgBIAEoBVIBeBIMCgF5GAIgASgFUgF5QgcKBXZhbHVlIoMBChZOdWxsVmFsdWVPdXRzaWRlU3RydWN0EiMKDHN0cmluZ192YWx1ZRgBIAEoCUgAUgtzdHJpbmdWYWx1ZRI7CgpudWxsX3ZhbHVlGAIgASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZUgAUgludWxsVmFsdWVCBwoFdmFsdWUiUAoTTnVsbFZhbHVlTm90SW5PbmVvZhI5CgpudWxsX3ZhbHVlGAIgASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZVIJbnVsbFZhbHVlIn0KF01peGVkUmVndWxhckFuZE9wdGlvbmFsEiMKDXJlZ3VsYXJfZmllbGQYASABKAlSDHJlZ3VsYXJGaWVsZBIqCg5vcHRpb25hbF9maWVsZBgCIAEoCUgAUg1vcHRpb25hbEZpZWxkiAEBQhEKD19vcHRpb25hbF9maWVsZCJCChJPbmVvZldpdGhOb25lRmllbGQSDgoBeBgBIAEoCUgAUgF4EhQKBG5vbmUYAiABKAlIAFIEbm9uZUIGCgR0ZXN0IjsKEU9uZW9mV2l0aE5vbmVOYW1lEg4KAXgYASABKAlIAFIBeBIOCgF5GAIgASgJSABSAXlCBgoEbm9uZSKiAwoZRGlzYW1iaWd1YXRlQ29tbW9uTWVtYmVycxI+ChtkaXNhbWJpZ3VhdGVfY29tbW9uX21lbWJlcnMYASABKAVSGWRpc2FtYmlndWF0ZUNvbW1vbk1lbWJlcnMSFAoFdHlwZXMYAiABKAVSBXR5cGVzEh4KCmRlc2NyaXB0b3IYAyABKAVSCmRlc2NyaXB0b3ISFgoGZXF1YWxzGAQgASgFUgZlcXVhbHMSGwoJdG9fc3RyaW5nGAUgASgFUgh0b1N0cmluZxIiCg1nZXRfaGFzaF9jb2RlGAYgASgFUgtnZXRIYXNoQ29kZRIZCgh3cml0ZV90bxgHIAEoBVIHd3JpdGVUbxIUCgVjbG9uZRgIIAEoBVIFY2xvbmUSJQoOY2FsY3VsYXRlX3NpemUYCSABKAVSDWNhbGN1bGF0ZVNpemUSHQoKbWVyZ2VfZnJvbRgKIAEoBVIJbWVyZ2VGcm9tEicKD29uX2NvbnN0cnVjdGlvbhgLIAEoBVIOb25Db25zdHJ1Y3Rpb24SFgoGcGFyc2VyGAwgASgFUgZwYXJzZXIiPQoRSXNzdWUxMTk4N01lc3NhZ2USDAoBYRgBIAEoBVIBYhIMCgFiGAIgASgFUgFhEgwKAWMYAyABKAVSAWQqVQoMTmVnYXRpdmVFbnVtEhYKEk5FR0FUSVZFX0VOVU1fWkVSTxAAEhYKCUZpdmVCZWxvdxD7//////////8BEhUKCE1pbnVzT25lEP///////////wEqNgoORGVwcmVjYXRlZEVudW0SFwoPREVQUkVDQVRFRF9aRVJPEAAaAggBEgcKA29uZRABGgIYAUIdqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3NK6zMKBxIFBwDKAQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKjgIKAQISAw4AGBpmIElzc3VlOiBOb24tIkdvb2dsZS5Qcm90b2J1ZmZlcnMiIG5hbWVzcGFjZSB3aWxsIGVuc3VyZSB0aGF0IHByb3RvYnVmZmVyCiBsaWJyYXJ5IHR5cGVzIGFyZSBxdWFsaWZpZWQKMpsBIFRoZXNlIHByb3RvIGRlc2NyaXB0b3JzIGhhdmUgYXQgb25lIHRpbWUgYmVlbiByZXBvcnRlZCBhcyBhbiBpc3N1ZSBvciBkZWZlY3QuCiBUaGV5IGFyZSBrZXB0IGhlcmUgdG8gcmVwbGljYXRlIHRoZSBpc3N1ZSwgYW5kIGNvbnRpbnVlIHRvIHZlcmlmeSB0aGUgZml4LgoKCQoCAwASAxAAJgoICgEIEgMSADcKCQoCCCUSAxIANwp2CgIEABIEFgAaARpqIElzc3VlIDMwNzogd2hlbiBnZW5lcmF0aW5nIGRvdWJseS1uZXN0ZWQgdHlwZXMsIGFueSByZWZlcmVuY2VzCiBzaG91bGQgYmUgb2YgdGhlIGZvcm0gQS5UeXBlcy5CLlR5cGVzLkMuCgoKCgMEAAESAxYIEAoMCgQEAAMAEgQXAhkDCgwKBQQAAwABEgMXChQKDQoGBAADAAMAEgMYBBoKDgoHBAADAAMAARIDGAwXCrAECgIFABIENQA5ATKZASBPbGQgaXNzdWUgMTM6CiBodHRwOi8vY29kZS5nb29nbGUuY29tL3AvcHJvdG9idWYtY3NoYXJwLXBvcnQvaXNzdWVzL2RldGFpbD9pZD0xMyBOZXcgaXNzdWUKIDMwOTog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cm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IJZXh0ZW5zaW9uEjYKB29wdGlvbnMYCCABKAsyHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnNSB29wdGlvbnMSSQoQc291cmNlX2NvZGVfaW5mbxgJIAEoCzIfLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb2RlSW5mb1IOc291cmNlQ29kZUluZm8SFgoGc3ludGF4GAwgASgJUgZzeW50YXgSMgoHZWRpdGlvbhgOIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUgdlZGl0aW9uIrkGCg9EZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI7CgVmaWVsZBgCIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IFZmllbGQSQwoJZXh0ZW5zaW9uGAYgAygLMiUuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvUglleHRlbnNpb24SQQoLbmVzdGVkX3R5cGUYAyADKAsyIC5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvUgpuZXN0ZWRUeXBlEkEKCWVudW1fdHlwZRgEIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvUghlbnVtVHlwZRJYCg9leHRlbnNpb25fcmFuZ2UYBSADKAsyLy5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvLkV4dGVuc2lvblJhbmdlUg5leHRlbnNpb25SYW5nZRJECgpvbmVvZl9kZWNsGAggAygLMiUuZ29vZ2xlLnByb3RvYnVmLk9uZW9mRGVzY3JpcHRvclByb3RvUglvbmVvZkRlY2wSOQoHb3B0aW9ucxgHIAEoCzIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9uc1IHb3B0aW9ucxJVCg5yZXNlcnZlZF9yYW5nZRgJIAMoCzIuLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG8uUmVzZXJ2ZWRSYW5nZVINcmVzZXJ2ZWRSYW5nZRIjCg1yZXNlcnZlZF9uYW1lGAogAygJUgxyZXNlcnZlZE5hbWUaegoORXh0ZW5zaW9uUmFuZ2USFAoFc3RhcnQYASABKAVSBXN0YXJ0EhAKA2VuZBgCIAEoBVIDZW5kEkAKB29wdGlvbnMYAyABKAsyJi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zUgdvcHRpb25zGjcKDVJlc2VydmVkUmFuZ2USFAoFc3RhcnQYASABKAVSBXN0YXJ0EhAKA2VuZBgCIAEoBVIDZW5kIswEChVFeHRlbnNpb25SYW5nZU9wdGlvbnMSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24SWQoLZGVjbGFyYXRpb24YAiADKAsyMi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zLkRlY2xhcmF0aW9uQgOIAQJSC2RlY2xhcmF0aW9uEjcKCGZlYXR1cmVzGDIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEm0KDHZlcmlmaWNhdGlvbhgDIAEoDjI4Lmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnMuVmVyaWZpY2F0aW9uU3RhdGU6ClVOVkVSSUZJRURCA4gBAlIMdmVyaWZpY2F0aW9uGpQBCgtEZWNsYXJhdGlvbhIWCgZudW1iZXIYASABKAVSBm51bWJlchIbCglmdWxsX25hbWUYAiABKAlSCGZ1bGxOYW1lEhIKBHR5cGUYAyABKAlSBHR5cGUSGgoIcmVzZXJ2ZWQYBSABKAhSCHJlc2VydmVkEhoKCHJlcGVhdGVkGAYgASgIUghyZXBlYXRlZEoECAQQBSI0ChFWZXJpZmljYXRpb25TdGF0ZRIPCgtERUNMQVJBVElPThAAEg4KClVOVkVSSUZJRUQQASoJCOgHEICAgIACIsEGChRGaWVsZERlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgDIAEoBVIGbnVtYmVyEkEKBWxhYmVsGAQgASgOMisuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLkxhYmVsUgVsYWJlbBI+CgR0eXBlGAUgASgOMiouZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLlR5cGVSBHR5cGUSGwoJdHlwZV9uYW1lGAYgASgJUgh0eXBlTmFtZRIaCghleHRlbmRlZRgCIAEoCVIIZXh0ZW5kZWUSIwoNZGVmYXVsdF92YWx1ZRgHIAEoCVIMZGVmYXVsdFZhbHVlEh8KC29uZW9mX2luZGV4GAkgASgFUgpvbmVvZkluZGV4EhsKCWpzb25fbmFtZRgKIAEoCVIIanNvbk5hbWUSNwoHb3B0aW9ucxgIIAEoCzIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnNSB29wdGlvbnMSJwoPcHJvdG8zX29wdGlvbmFsGBEgASgIUg5wcm90bzNPcHRpb25hbCK2AgoEVHlwZRIPCgtUWVBFX0RPVUJMRRABEg4KClRZUEVfRkxPQVQQAhIOCgpUWVBFX0lOVDY0EAMSDwoLVFlQRV9VSU5UNjQQBBIOCgpUWVBFX0lOVDMyEAUSEAoMVFlQRV9GSVhFRDY0EAYSEAoMVFlQRV9GSVhFRDMyEAcSDQoJVFlQRV9CT09MEAgSDwoLVFlQRV9TVFJJTkcQCRIOCgpUWVBFX0dST1VQEAoSEAoMVFlQRV9NRVNTQUdFEAsSDgoKVFlQRV9CWVRFUxAMEg8KC1RZUEVfVUlOVDMyEA0SDQoJVFlQRV9FTlVNEA4SEQoNVFlQRV9TRklYRUQzMhAPEhEKDVRZUEVfU0ZJWEVENjQQEBIPCgtUWVBFX1NJTlQzMhAREg8KC1RZUEVfU0lOVDY0EBIiQwoFTGFiZWwSEgoOTEFCRUxfT1BUSU9OQUwQARISCg5MQUJFTF9SRVBFQVRFRBADEhIKDkxBQkVMX1JFUVVJUkVEEAIiYwoUT25lb2ZEZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI3CgdvcHRpb25zGAIgASgLMh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9uc1IHb3B0aW9ucyLjAgoTRW51bURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEj8KBXZhbHVlGAIgAygLMikuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZURlc2NyaXB0b3JQcm90b1IFdmFsdWUSNgoHb3B0aW9ucxgDIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9uc1IHb3B0aW9ucxJdCg5yZXNlcnZlZF9yYW5nZRgEIAMoCzI2Lmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvLkVudW1SZXNlcnZlZFJhbmdlUg1yZXNlcnZlZFJhbmdlEiMKDXJlc2VydmVkX25hbWUYBSADKAlSDHJlc2VydmVkTmFtZRo7ChFFbnVtUmVzZXJ2ZWRSYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQigwEKGEVudW1WYWx1ZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgCIAEoBVIGbnVtYmVyEjsKB29wdGlvbnMYAyABKAsyIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9uc1IHb3B0aW9ucyKnAQoWU2VydmljZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEj4KBm1ldGhvZBgCIAMoCzImLmdvb2dsZS5wcm90b2J1Zi5NZXRob2REZXNjcmlwdG9yUHJvdG9SBm1ldGhvZBI5CgdvcHRpb25zGAMgASgLMh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zUgdvcHRpb25zIokCChVNZXRob2REZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRIdCgppbnB1dF90eXBlGAIgASgJUglpbnB1dFR5cGUSHwoLb3V0cHV0X3R5cGUYAyABKAlSCm91dHB1dFR5cGUSOAoHb3B0aW9ucxgEIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zUgdvcHRpb25zEjAKEGNsaWVudF9zdHJlYW1pbmcYBSABKAg6BWZhbHNlUg9jbGllbnRTdHJlYW1pbmcSMAoQc2VydmVyX3N0cmVhbWluZxgGIAEoCDoFZmFsc2VSD3NlcnZlclN0cmVhbWluZyLKCQoLRmlsZU9wdGlvbnMSIQoMamF2YV9wYWNrYWdlGAEgASgJUgtqYXZhUGFja2FnZRIwChRqYXZhX291dGVyX2NsYXNzbmFtZRgIIAEoCVISamF2YU91dGVyQ2xhc3NuYW1lEjUKE2phdmFfbXVsdGlwbGVfZmlsZXMYCiABKAg6BWZhbHNlUhFqYXZhTXVsdGlwbGVGaWxlcxJECh1qYXZhX2dlbmVyYXRlX2VxdWFsc19hbmRfaGFzaBgUIAEoCEICGAFSGWphdmFHZW5lcmF0ZUVxdWFsc0FuZEhhc2gSOgoWamF2YV9zdHJpbmdfY2hlY2tfdXRmOBgbIAEoCDoFZmFsc2VSE2phdmFTdHJpbmdDaGVja1V0ZjgSUwoMb3B0aW1pemVfZm9yGAkgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zLk9wdGltaXplTW9kZToFU1BFRURSC29wdGltaXplRm9yEh0KCmdvX3BhY2thZ2UYCyABKAlSCWdvUGFja2FnZRI1ChNjY19nZW5lcmljX3NlcnZpY2VzGBAgASgIOgVmYWxzZVIRY2NHZW5lcmljU2VydmljZXMSOQoVamF2YV9nZW5lcmljX3NlcnZpY2VzGBEgASgIOgVmYWxzZVITamF2YUdlbmVyaWNTZXJ2aWNlcxI1ChNweV9nZW5lcmljX3NlcnZpY2VzGBIgASgIOgVmYWxzZVIRcHlHZW5lcmljU2VydmljZXMSNwoUcGhwX2dlbmVyaWNfc2VydmljZXMYKiABKAg6BWZhbHNlUhJwaHBHZW5lcmljU2VydmljZXMSJQoKZGVwcmVjYXRlZBgXIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSLgoQY2NfZW5hYmxlX2FyZW5hcxgfIAEoCDoEdHJ1ZVIOY2NFbmFibGVBcmVuYXMSKgoRb2JqY19jbGFzc19wcmVmaXgYJCABKAlSD29iamNDbGFzc1ByZWZpeBIpChBjc2hhcnBfbmFtZXNwYWNlGCUgASgJUg9jc2hhcnBOYW1lc3BhY2USIQoMc3dpZnRfcHJlZml4GCcgASgJUgtzd2lmdFByZWZpeBIoChBwaHBfY2xhc3NfcHJlZml4GCggASgJUg5waHBDbGFzc1ByZWZpeBIjCg1waHBfbmFtZXNwYWNlGCkgASgJUgxwaHBOYW1lc3BhY2USNAoWcGhwX21ldGFkYXRhX25hbWVzcGFjZRgsIAEoCVIUcGhwTWV0YWRhdGFOYW1lc3BhY2USIQoMcnVieV9wYWNrYWdlGC0gASgJUgtydWJ5UGFja2FnZRI3CghmZWF0dXJlcxgyIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbiI6CgxPcHRpbWl6ZU1vZGUSCQoFU1BFRUQQARINCglDT0RFX1NJWkUQAhIQCgxMSVRFX1JVTlRJTUUQAyoJCOgHEICAgIACSgQIJhAnIvQDCg5NZXNzYWdlT3B0aW9ucxI8ChdtZXNzYWdlX3NldF93aXJlX2Zvcm1hdBgBIAEoCDoFZmFsc2VSFG1lc3NhZ2VTZXRXaXJlRm9ybWF0EkwKH25vX3N0YW5kYXJkX2Rlc2NyaXB0b3JfYWNjZXNzb3IYAiABKAg6BWZhbHNlUhxub1N0YW5kYXJkRGVzY3JpcHRvckFjY2Vzc29yEiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkEhsKCW1hcF9lbnRyeRgHIAEoCFIIbWFwRW50cnkSVgomZGVwcmVjYXRlZF9sZWdhY3lfanNvbl9maWVsZF9jb25mbGljdHMYCyABKAhCAhgBUiJkZXByZWNhdGVkTGVnYWN5SnNvbkZpZWxkQ29uZmxpY3RzEjcKCGZlYXR1cmVzGAwgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAJKBAgEEAVKBAgFEAZKBAgGEAdKBAgIEAlKBAgJEAoirQoKDEZpZWxkT3B0aW9ucxJBCgVjdHlwZRgBIAEoDjIjLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuQ1R5cGU6BlNUUklOR1IFY3R5cGUSFgoGcGFja2VkGAIgASgIUgZwYWNrZWQSRwoGanN0eXBlGAYgASgOMiQuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5KU1R5cGU6CUpTX05PUk1BTFIGanN0eXBlEhkKBGxhenkYBSABKAg6BWZhbHNlUgRsYXp5Ei4KD3VudmVyaWZpZWRfbGF6eRgPIAEoCDoFZmFsc2VSDnVudmVyaWZpZWRMYXp5EiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkEhkKBHdlYWsYCiABKAg6BWZhbHNlUgR3ZWFrEigKDGRlYnVnX3JlZGFjdBgQIAEoCDoFZmFsc2VSC2RlYnVnUmVkYWN0EksKCXJldGVudGlvbhgRIAEoDjItLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuT3B0aW9uUmV0ZW50aW9uUglyZXRlbnRpb24SSAoHdGFyZ2V0cxgTIAMoDjIuLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuT3B0aW9uVGFyZ2V0VHlwZVIHdGFyZ2V0cxJXChBlZGl0aW9uX2RlZmF1bHRzGBQgAygLMiwuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5FZGl0aW9uRGVmYXVsdFIPZWRpdGlvbkRlZmF1bHRzEjcKCGZlYXR1cmVzGBUgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uGloKDkVkaXRpb25EZWZhdWx0EjIKB2VkaXRpb24YAyABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIHZWRpdGlvbhIUCgV2YWx1ZRgCIAEoCVIFdmFsdWUiLwoFQ1R5cGUSCgoGU1RSSU5HEAASCAoEQ09SRBABEhAKDFNUUklOR19QSUVDRRACIjUKBkpTVHlwZRINCglKU19OT1JNQUwQABINCglKU19TVFJJTkcQARINCglKU19OVU1CRVIQAiJVCg9PcHRpb25SZXRlbnRpb24SFQoRUkVURU5USU9OX1VOS05PV04QABIVChFSRVRFTlRJT05fUlVOVElNRRABEhQKEFJFVEVOVElPTl9TT1VSQ0UQAiKMAgoQT3B0aW9uVGFyZ2V0VHlwZRIXChNUQVJHRVRfVFlQRV9VTktOT1dOEAASFAoQVEFSR0VUX1RZUEVfRklMRRABEh8KG1RBUkdFVF9UWVBFX0VYVEVOU0lPTl9SQU5HRRACEhcKE1RBUkdFVF9UWVBFX01FU1NBR0UQAxIVChFUQVJHRVRfVFlQRV9GSUVMRBAEEhUKEVRBUkdFVF9UWVBFX09ORU9GEAUSFAoQVEFSR0VUX1RZUEVfRU5VTRAGEhoKFlRBUkdFVF9UWVBFX0VOVU1fRU5UUlkQBxIXChNUQVJHRVRfVFlQRV9TRVJWSUNFEAgSFgoSVEFSR0VUX1RZUEVfTUVUSE9EEAkqCQjoBxCAgICAAkoECAQQBUoECBIQEyKsAQoMT25lb2ZPcHRpb25zEjcKCGZlYXR1cmVzGAEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi0QIKC0VudW1PcHRpb25zEh8KC2FsbG93X2FsaWFzGAIgASgIUgphbGxvd0FsaWFzEiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkElYKJmRlcHJlY2F0ZWRfbGVnYWN5X2pzb25fZmllbGRfY29uZmxpY3RzGAYgASgIQgIYAVIiZGVwcmVjYXRlZExlZ2FjeUpzb25GaWVsZENvbmZsaWN0cxI3CghmZWF0dXJlcxgHIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioJCOgHEICAgIACSgQIBRAGIoECChBFbnVtVmFsdWVPcHRpb25zEiUKCmRlcHJlY2F0ZWQYASABKAg6BWZhbHNlUgpkZXByZWNhdGVkEjcKCGZlYXR1cmVzGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEigKDGRlYnVnX3JlZGFjdBgDIAEoCDoFZmFsc2VSC2RlYnVnUmVkYWN0ElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi1QEKDlNlcnZpY2VPcHRpb25zEjcKCGZlYXR1cmVzGCIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEiUKCmRlcHJlY2F0ZWQYISABKAg6BWZhbHNlUgpkZXByZWNhdGVkElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIimQMKDU1ldGhvZE9wdGlvbnMSJQoKZGVwcmVjYXRlZBghIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQScQoRaWRlbXBvdGVuY3lfbGV2ZWwYIiABKA4yLy5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucy5JZGVtcG90ZW5jeUxldmVsOhNJREVNUE9URU5DWV9VTktOT1dOUhBpZGVtcG90ZW5jeUxldmVsEjcKCGZlYXR1cmVzGCMgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uIlAKEElkZW1wb3RlbmN5TGV2ZWwSFwoTSURFTVBPVEVOQ1lfVU5LTk9XThAAEhMKD05PX1NJREVfRUZGRUNUUxABEg4KCklERU1QT1RFTlQQAioJCOgHEICAgIACIpoDChNVbmludGVycHJldGVkT3B0aW9uEkEKBG5hbWUYAiADKAsyLS5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvbi5OYW1lUGFydFIEbmFtZRIpChBpZGVudGlmaWVyX3ZhbHVlGAMgASgJUg9pZGVudGlmaWVyVmFsdWUSLAoScG9zaXRpdmVfaW50X3ZhbHVlGAQgASgEUhBwb3NpdGl2ZUludFZhbHVlEiwKEm5lZ2F0aXZlX2ludF92YWx1ZRgFIAEoA1IQbmVnYXRpdmVJbnRWYWx1ZRIhCgxkb3VibGVfdmFsdWUYBiABKAFSC2RvdWJsZVZhbHVlEiEKDHN0cmluZ192YWx1ZRgHIAEoDFILc3RyaW5nVmFsdWUSJwoPYWdncmVnYXRlX3ZhbHVlGAggASgJUg5hZ2dyZWdhdGVWYWx1ZRpKCghOYW1lUGFydBIbCgluYW1lX3BhcnQYASACKAlSCG5hbWVQYXJ0EiEKDGlzX2V4dGVuc2lvbhgCIAIoCFILaXNFeHRlbnNpb24i/AkKCkZlYXR1cmVTZXQSiwEKDmZpZWxkX3ByZXNlbmNlGAEgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuRmllbGRQcmVzZW5jZUI5iAEBmAEEmAEBogENEghFWFBMSUNJVBjmB6IBDRIISU1QTElDSVQY5weiAQ0SCEVYUExJQ0lUGOgHUg1maWVsZFByZXNlbmNlEmYKCWVudW1fdHlwZRgCIAEoDjIkLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LkVudW1UeXBlQiOIAQGYAQaYAQGiAQsSBkNMT1NFRBjmB6IBCRIET1BFThjnB1IIZW51bVR5cGUSkgEKF3JlcGVhdGVkX2ZpZWxkX2VuY29kaW5nGAMgASgOMjEuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuUmVwZWF0ZWRGaWVsZEVuY29kaW5nQieIAQGYAQSYAQGiAQ0SCEVYUEFOREVEGOYHogELEgZQQUNLRUQY5wdSFXJlcGVhdGVkRmllbGRFbmNvZGluZxJ4Cg91dGY4X3ZhbGlkYXRpb24YBCABKA4yKi5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5VdGY4VmFsaWRhdGlvbkIjiAEBmAEEmAEBogEJEgROT05FGOYHogELEgZWRVJJRlkY5wdSDnV0ZjhWYWxpZGF0aW9uEngKEG1lc3NhZ2VfZW5jb2RpbmcYBSABKA4yKy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5NZXNzYWdlRW5jb2RpbmdCIIgBAZgBBJgBAaIBFBIPTEVOR1RIX1BSRUZJWEVEGOYHUg9tZXNzYWdlRW5jb2RpbmcSfAoLanNvbl9mb3JtYXQYBiABKA4yJi5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5Kc29uRm9ybWF0QjOIAQGYAQOYAQaYAQGiARcSEkxFR0FDWV9CRVNUX0VGRk9SVBjmB6IBChIFQUxMT1cY5wdSCmpzb25Gb3JtYXQiXAoNRmllbGRQcmVzZW5jZRIaChZGSUVMRF9QUkVTRU5DRV9VTktOT1dOEAASDAoIRVhQTElDSVQQARIMCghJTVBMSUNJVBACEhMKD0xFR0FDWV9SRVFVSVJFRBADIjcKCEVudW1UeXBlEhUKEUVOVU1fVFlQRV9VTktOT1dOEAASCAoET1BFThABEgoKBkNMT1NFRBACIlYKFVJlcGVhdGVkRmllbGRFbmNvZGluZxIjCh9SRVBFQVRFRF9GSUVMRF9FTkNPRElOR19VTktOT1dOEAASCgoGUEFDS0VEEAESDAoIRVhQQU5ERUQQAiJDCg5VdGY4VmFsaWRhdGlvbhIbChdVVEY4X1ZBTElEQVRJT05fVU5LTk9XThAAEgoKBlZFUklGWRACEggKBE5PTkUQAyJTCg9NZXNzYWdlRW5jb2RpbmcSHAoYTUVTU0FHRV9FTkNPRElOR19VTktOT1dOEAASEwoPTEVOR1RIX1BSRUZJWEVEEAESDQoJREVMSU1JVEVEEAIiSAoKSnNvbkZvcm1hdBIXChNKU09OX0ZPUk1BVF9VTktOT1dOEAASCQoFQUxMT1cQARIWChJMRUdBQ1lfQkVTVF9FRkZPUlQQAioGCOgHEOkHKgYI6QcQ6gcqBgiLThCQTkoGCOcHEOgHIv4CChJGZWF0dXJlU2V0RGVmYXVsdHMSWAoIZGVmYXVsdHMYASADKAsyPC5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldERlZmF1bHRzLkZlYXR1cmVTZXRFZGl0aW9uRGVmYXVsdFIIZGVmYXVsdHMSQQoPbWluaW11bV9lZGl0aW9uGAQgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SDm1pbmltdW1FZGl0aW9uEkEKD21heGltdW1fZWRpdGlvbhgFIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUg5tYXhpbXVtRWRpdGlvbhqHAQoYRmVhdHVyZVNldEVkaXRpb25EZWZhdWx0EjIKB2VkaXRpb24YAyABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIHZWRpdGlvbhI3CghmZWF0dXJlcxgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcyKnAgoOU291cmNlQ29kZUluZm8SRAoIbG9jYXRpb24YASADKAsyKC5nb29nbGUucHJvdG9idWYuU291cmNlQ29kZUluZm8uTG9jYXRpb25SCGxvY2F0aW9uGs4BCghMb2NhdGlvbhIWCgRwYXRoGAEgAygFQgIQAVIEcGF0aBIWCgRzcGFuGAIgAygFQgIQAVIEc3BhbhIpChBsZWFkaW5nX2NvbW1lbnRzGAMgASgJUg9sZWFkaW5nQ29tbWVudHMSKwoRdHJhaWxpbmdfY29tbWVudHMYBCABKAlSEHRyYWlsaW5nQ29tbWVudHMSOgoZbGVhZGluZ19kZXRhY2hlZF9jb21tZW50cxgGIAMoCVIXbGVhZGluZ0RldGFjaGVkQ29tbWVudHMi0AIKEUdlbmVyYXRlZENvZGVJbmZvEk0KCmFubm90YXRpb24YASADKAsyLS5nb29nbGUucHJvdG9idWYuR2VuZXJhdGVkQ29kZUluZm8uQW5ub3RhdGlvblIKYW5ub3RhdGlvbhrrAQoKQW5ub3RhdGlvbhIWCgRwYXRoGAEgAygFQgIQAVIEcGF0aBIfCgtzb3VyY2VfZmlsZRgCIAEoCVIKc291cmNlRmlsZRIUCgViZWdpbhgDIAEoBVIFYmVnaW4SEAoDZW5kGAQgASgFUgNlbmQSUgoIc2VtYW50aWMYBSABKA4yNi5nb29nbGUucHJvdG9idWYuR2VuZXJhdGVkQ29kZUluZm8uQW5ub3RhdGlvbi5TZW1hbnRpY1IIc2VtYW50aWMiKAoIU2VtYW50aWMSCAoETk9ORRAAEgcKA1NFVBABEgkKBUFMSUFTEAIq/wEKB0VkaXRpb24SEwoPRURJVElPTl9VTktOT1dOEAASEwoORURJVElPTl9QUk9UTzIQ5gcSEwoORURJVElPTl9QUk9UTzMQ5wcSEQoMRURJVElPTl8yMDIzEOgHEhcKE0VESVRJT05fMV9URVNUX09OTFkQARIXChNFRElUSU9OXzJfVEVTVF9PTkxZEAISHQoXRURJVElPTl85OTk5N19URVNUX09OTFkQnY0GEh0KF0VESVRJT05fOTk5OThfVEVTVF9PTkxZEJ6NBhIdChdFRElUSU9OXzk5OTk5X1RFU1RfT05MWRCfjQYSEwoLRURJVElPTl9NQVgQ/////wdCfgoTY29tLmdvb2dsZS5wcm90b2J1ZkIQRGVzY3JpcHRvclByb3Rvc0gBWi1nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9kZXNjcmlwdG9ycGL4AQGiAgNHUEKqAhpHb29nbGUuUHJvdG9idWYuUmVmbGVjdGlvbkqJtgMKBxIFJgDHCQEKqg8KAQwSAyYAEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KMtsCIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIFRoZSBtZXNzYWdlcyBpbiB0aGlzIGZpbGUgZGVzY3JpYmUgdGhlIGRlZmluaXRpb25zIGZvdW5kIGluIC5wcm90byBmaWxlcy4KIEEgdmFsaWQgLnByb3RvIGZpbGUgY2FuIGJlIHRyYW5zbGF0ZWQgZGlyZWN0bHkgdG8gYSBGaWxlRGVzY3JpcHRvclByb3RvCiB3aXRob3V0IGFueSBvdGhlciBpbmZvcm1hdGlvbiAoZS5nLiB3aXRob3V0IHJlYWRpbmcgaXRzIGltcG9ydHMpLgoKCAoBAhIDKAAYCggKAQgSAyoARAoJCgIICxIDKgBECggKAQgSAysALAoJCgIIARIDKwAsCggKAQgSAywAMQoJCgIICBIDLAAxCggKAQgSAy0ANwoJCgIIJRIDLQA3CggKAQgSAy4AIQoJCgIIJBIDLgAhCggKAQgSAy8AHwoJCgIIHxIDLwAfCggKAQgSAzMAHAp/CgIICRIDMwAcGnQgZGVzY3JpcHRvci5wcm90byBtdXN0IGJlIG9wdGltaXplZCBmb3Igc3BlZWQgYmVjYXVzZSByZWZsZWN0aW9uLWJhc2VkCiBhbGdvcml0aG1zIGRvbid0IHdvcmsgZHVyaW5nIGJvb3RzdHJhcHBpbmcuCgpqCgIEABIENwA5ARpeIFRoZSBwcm90b2NvbCBjb21waWxlciBjYW4gb3V0cHV0IGEgRmlsZURlc2NyaXB0b3JTZXQgY29udGFpbmluZyB0aGUgLnByb3RvCiBmaWxlcyBpdCBwYXJzZXMuCgoKCgMEAAESAzcIGQoLCgQEAAIAEgM4AigKDAoFBAACAAQSAzgCCgoMCgUE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ZXJ0aW5nCiBpdCB0byBjYW1lbENhc2UuCgoNCgUEBAIIBBIEpwICCgoNCgUEBAIIBRIEpwILEQoNCgUEBAIIARIEpwISGwoNCgUEBAIIAxIEpwIeIAoMCgQEBAIJEgSpAgIkCg0KBQQEAgkEEgSpAgIKCg0KBQQEAgkGEgSpAgsXCg0KBQQEAgkBEgSpAhgfCg0KBQQEAgkDEgSpAiIjCrAJCgQEBAIKEgTAAgIlGqEJIElmIHRydWUsIHRoaXMgaXMgYSBwcm90bzMgIm9wdGlvbmFsIi4gV2hlbiBhIHByb3RvMyBmaWVsZCBpcyBvcHRpb25hbCwgaXQKIHRyYWNrcyBwcmVzZW5jZSByZWdhcmRsZXNzIG9mIGZpZWxkIHR5cGUuCgogV2hlbiBwcm90bzNfb3B0aW9uYWwgaXMgdHJ1ZSwgdGhpcyBmaWVsZCBtdXN0IGJlbG9uZyB0byBhIG9uZW9mIHRvIHNpZ25hbAogdG8gb2xkIHByb3RvMyBjbGllbnRzIHRoYXQgcHJlc2VuY2UgaXMgdHJhY2tlZCBmb3IgdGhpcyBmaWVsZC4gVGhpcyBvbmVvZgogaXMga25vd24gYXMgYSAic3ludGhldGljIiBvbmVvZiwgYW5kIHRoaXMgZmllbGQgbXVzdCBiZSBpdHMgc29sZSBtZW1iZXIKIChlYWNoIHByb3RvMyBvcHRpb25hbCBmaWVsZCBnZXRzIGl0cyBvd24gc3ludGhldGljIG9uZW9mKS4gU3ludGhldGljIG9uZW9mcwogZXhpc3QgaW4gdGhlIGRlc2NyaXB0b3Igb25seSwgYW5kIGRvIG5vdCBnZW5lcmF0ZSBhbnkgQVBJLiBTeW50aGV0aWMgb25lb2ZzCiBtdXN0IGJlIG9yZGVyZWQgYWZ0ZXIgYWxsICJyZWFsIiBvbmVvZnMuCgogRm9yIG1lc3NhZ2UgZmllbGRzLCBwcm90bzNfb3B0aW9uYWwgZG9lc24ndCBjcmVhdGUgYW55IHNlbWFudGljIGNoYW5nZSwKIHNpbmNlIG5vbi1yZXBlYXRlZCBtZXNzYWdlIGZpZWxkcyBhbHdheXMgdHJhY2sgcHJlc2VuY2UuIEhvd2V2ZXIgaXQgc3RpbGwKIGluZGljYXRlcyB0aGUgc2VtYW50aWMgZGV0YWlsIG9mIHdo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c2FnZXMuCgogQ2xpZW50cyBtYXkgZGVmaW5lIGN1c3RvbSBvcHRpb25zIGFzIGV4dGVuc2lvbnMgb2YgdGhlICpPcHRpb25zIG1lc3NhZ2VzLgogVGhlc2UgZXh0ZW5zaW9ucyBtYXkgbm90IHlldCBiZSBrbm93biBhdCBwYXJzaW5nIHRpbWUsIHNvIHRoZSBwYXJzZXIgY2Fubm90CiBzdG9yZSB0aGUgdmFsdWVzIGluIHRoZW0uICBJbnN0ZWFkIGl0IHN0b3JlcyB0aGVtIGluIGEgZmllbGQgaW4gdGhlICpPcHRpb25zCiBtZXNzYWdlIGNhbGxlZCB1bmludGVycHJldGVkX29wdGlvbi4gVGhpcyBmaWVsZCBtdXN0IGhhdmUgdGhlIHNhbWUgbmFtZQogYWNyb3NzIGFsbCAqT3B0aW9ucyBtZXNzYWdlcy4gV2UgdGhlbiB1c2UgdGhpcyBmaWVsZCB0byBwb3B1bGF0ZSB0aGUKIGV4dGVuc2lvbnMgd2hlbiB3ZSBidWlsZCBhIGRlc2NyaXB0b3IsIGF0IHdoaWNoIHBvaW50IGFsbCBwcm90b3MgaGF2ZSBiZWVuCiBwYXJzZWQgYW5kIHNvIGFsbCBleHRlbnNpb25zIGFyZSBrbm93bi4KCiBFeHRlbnNpb24gbnVtYmVycyBmb3IgY3VzdG9tIG9wdGlvbnMgbWF5IGJlIGNob3NlbiBhcyBmb2xsb3dzOgogKiBGb3Igb3B0aW9ucyB3aGljaCB3aWxsIG9ubHkgYmUgdXNlZCB3aXRoaW4gYSBzaW5nbGUgYXBwbGljYXRpb24gb3IKICAgb3JnYW5pemF0aW9uLCBvciBmb3IgZXhwZXJpbWVudGFsIG9wdGlvbnMsIHVzZSBmaWVsZCBudW1iZXJzIDUwMDAwCiAgIHRocm91Z2ggOTk5OTkuICBJdCBpcyB1cCB0byB5b3UgdG8gZW5zdXJlIHRoYXQgeW91IGRvIG5vdCB1c2UgdGhlCiAgIHNhbWUgbnVtYmVyIGZvciBtdWx0aXBsZSBvcHRpb25zLgogKiBGb3Igb3B0aW9ucyB3aGljaCB3aWxsIGJlIHB1Ymxpc2hlZCBhbmQgdXNlZCBwdWJsaWNseSBieSBtdWx0aXBsZQogICBpbmRlcGVuZGVudCBlbnRpdGllcywgZS1tYWlsIHByb3RvYnVmLWdsb2JhbC1leHRlbnNpb24tcmVnaXN0cnlAZ29vZ2xlLmNvbQogICB0byByZXNlcnZlIGV4dGVuc2lvbiBudW1iZXJzLiBTaW1wbHkgcHJvdmlkZSB5b3VyIHByb2plY3QgbmFtZSAoZS5nLgogICBPYmplY3RpdmUtQyBwbHVnaW4pIGFuZCB5b3VyIHByb2plY3Qgd2Vic2l0ZSAoaWYgYXZhaWxhYmxlKSAtLSB0aGVyZSdzIG5vCiAgIG5lZWQgdG8gZXhwbGFpbiBob3cgeW91IGludGVuZCB0byB1c2UgdGhlbS4gVXN1YWxseSB5b3Ugb25seSBuZWVkIG9uZQogICBleHRlbnNpb24gbnVtYmVyLiBZb3UgY2FuIGRlY2xhcmUgbXVsdGlwbGUgb3B0aW9ucyB3aXRoIG9ubHkgb25lIGV4dGVuc2lvbgogICBudW1iZXIgYnkgcHV0dGluZyB0aGVtIGluIGEgc3ViLW1lc3NhZ2UuIFNlZSB0aGUgQ3VzdG9tIE9wdGlvbnMgc2VjdGlvbiBvZgogICB0aGUgZG9jcyBmb3IgZXhhbXBsZXM6CiAgIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvZG9jcy9wcm90byNvcHRpb25zCiAgIElmIHRoaXMgdHVybnMgb3V0IHRvIGJlIHBvcHVsYXIsIGEgd2ViIHNlcnZpY2Ugd2lsbCBiZSBzZXQgdXAKICAgdG8gYXV0b21hdGljYWxseSBhc3NpZ24gb3B0aW9uIG51bWJlcnMuCgoLCgMECgESBKcDCBMK9AEKBAQKAgASBK0DAiMa5QEgU2V0cyB0aGUgSmF2YSBwYWNrYWdlIHdoZXJlIGNsYXNzZXMgZ2VuZXJhdGVkIGZyb20gdGhpcyAucHJvdG8gd2lsbCBiZQogcGxhY2VkLiAgQnkgZGVmYXVsdCwgdGhlIHByb3RvIHBhY2thZ2UgaXMgdXNlZCwgYnV0IHRoaXMgaXMgb2Z0ZW4KIGluYXBwcm9wcmlhdGUgYmVjYXVzZSBwcm90byBwYWNrYWdlcyBkbyBub3Qgbm9ybWFsbHkgc3RhcnQgd2l0aCBiYWNrd2FyZHMKIGRvbWFpbiBuYW1lcy4KCg0KBQQKAgAEEgStAwIKCg0KBQQKAgAFEgStAwsRCg0KBQQKAgABEgStAxIeCg0KBQQKAgADEgStAyEiCvECCgQECgIBEgS0AwIrGuICIENvbnRyb2xzIHRoZSBuYW1lIG9mIHRoZSB3cmFwcGVyIEphdmEgY2xhc3MgZ2VuZXJhdGVkIGZvciB0aGUgLnByb3RvIGZpbGUuCiBUaGF0IGNsYXNzIHdpbGwgYWx3YXlzIGNvbnRhaW4gdGhlIC5wcm90byBmaWxlJ3MgZ2V0RGVzY3JpcHRvcigpIG1ldGhvZCBhcwogd2VsbCBhcyBhbnkgdG9wLWxldmVsIGV4dGVuc2lvbnMgZGVmaW5lZCBpbiB0aGUgLnByb3RvIGZpbGUuCiBJZiBqYXZhX211bHRpcGxlX2ZpbGVzIGlzIGRpc2FibGVkLCB0aGVuIGFsbCB0aGUgb3RoZXIgY2xhc3NlcyBmcm9tIHRoZQogLnByb3RvIGZpbGUgd2lsbCBiZSBuZXN0ZWQgaW5zaWRlIHRoZSBzaW5nbGUgd3JhcHBlciBvdXRlciBjbGFzcy4KCg0KBQQKAgEEEgS0AwIKCg0KBQQKAgEFEgS0AwsRCg0KBQQKAgEBEgS0AxImCg0KBQQKAgEDEgS0AykqCqYDCgQECgICEgS8AwI7GpcDIElmIGVuYWJsZWQsIHRoZW4gdGhlIEphdmEgY29kZSBnZW5lcmF0b3Igd2lsbCBnZW5lcmF0ZSBhIHNlcGFyYXRlIC5qYXZhCiBmaWxlIGZvciBlYWNoIHRvcC1sZXZlbCBtZXNzYWdlLCBlbnVtLCBhbmQgc2VydmljZSBkZWZpbmVkIGluIHRoZSAucHJvdG8KIGZpbGUuICBUaHVzLCB0aGVzZSB0eXBlcyB3aWxsICpub3QqIGJlIG5lc3RlZCBpbnNpZGUgdGhlIHdyYXBwZXIgY2xhc3MKIG5hbWVkIGJ5IGphdmFfb3V0ZXJfY2xhc3NuYW1lLiAgSG93ZXZlciwgdGhlIHdyYXBwZXIgY2xhc3Mgd2lsbCBzdGlsbCBiZQogZ2VuZXJhdGVkIHRvIGNvbnRhaW4gdGhlIGZpbGUncyBnZXREZXNjcmlwdG9yKCkgbWV0aG9kIGFzIHdlbGwgYXMgYW55CiB0b3AtbGV2ZWwgZXh0ZW5zaW9ucyBkZWZpbmVk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BAsCABIEswQCPhrJBSBTZXQgdHJ1ZSB0byB1c2UgdGhlIG9sZCBwcm90bzEgTWVzc2FnZVNldCB3aXJlIGZvcm1hdCBmb3IgZXh0ZW5zaW9ucy4KIFRoaXMgaXMgcHJvdmlkZWQgZm9yIGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5IHdpdGggdGhlIE1lc3NhZ2VTZXQgd2lyZQogZm9ybWF0LiAgWW91IHNob3VsZCBub3QgdXNlIHRoaXMgZm9yIGFueSBvdGhlciByZWFzb246ICBJdCdzIGxlc3MKIGVmZmljaWVudCwgaGFzIGZld2VyIGZlYXR1cmVzLCBhbmQgaXMgbW9yZSBjb21wbGljYXRlZC4KCiBUaGUgbWVzc2FnZSBtdXN0IGJlIGRlZmluZWQgZXhhY3RseSBhcyBmb2xsb3dzOgogICBtZXNzYWdlIEZvbyB7CiAgICAgb3B0aW9uIG1lc3NhZ2Vfc2V0X3dpcmVfZm9ybWF0ID0gdHJ1ZTsKICAgICBleHRlbnNpb25zIDQgdG8gbWF4OwogICB9CiBOb3RlIHRoYXQgdGhlIG1lc3NhZ2UgY2Fubm90IGhhdmUgYW55IGRlZmluZWQgZmllbGRzOyBNZXNzYWdlU2V0cyBvbmx5CiBoYXZlIGV4dGVuc2lvbnMuCgogQWxsIGV4dGVuc2lvbnMgb2YgeW91ciB0eXBlIG11c3QgYmUgc2luZ3VsYXIgbWVzc2FnZXM7IGUuZy4gdGhleSBjYW5ub3QKIGJlIGludDMycywgZW51bXMsIG9yIHJlcGVhdGVkIG1lc3NhZ2VzLgoKIEJlY2F1c2UgdGhpcyBpcyBhbiBvcHRpb24sIHRoZSBhYm92ZSB0d28gcmVzdHJpY3Rpb25zIGFyZSBub3QgZW5mb3JjZWQgYnkKIHRoZSBwcm90b2NvbCBjb21waWxlci4KCg0KBQQLAgAEEgSzBAIKCg0KBQQLAgAFEgSzBAsPCg0KBQQLAgABEgSzBBAnCg0KBQQLAgADEgSzBCorCg0KBQQLAgAIEgSzBCw9Cg0KBQQLAgAHEgSzBDc8CusBCgQECwIBEgS4BAJGGtwBIERpc2FibGVzIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBzdGFuZGFyZCAiZGVzY3JpcHRvcigpIiBhY2Nlc3Nvciwg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IGJldHRlciBwZXJmb3JtYW5jZSB3aGVuIHBhcnNpbmcgZnJvbSBhCiBDb3JkLCBvciB3aGVuIHBhcnNpbmcgd2l0aCBhbGlhc2luZyBlbmFibGVkLCBhcyB0aGUgcGFyc2VkIENvcmQgbWF5IHRoZW4KIGFsaWFzIHRoZSBvcmlnaW5hbCBidWZmZXIuCgoPCgcEDAQAAgEBEgSEBQQICg8KBwQMBAACAQISBIQFCwwKDgoGBAwEAAICEgSGBQQVCg8KBwQMBAACAgESBIYFBBAKDwoHBAwEAAICAhIEhgUTFArTAwoEBAwCARIEjwUCGxrEAyBUaGUgcGFja2VkIG9wdGlvbiBjYW4gYmUgZW5hYmxlZCBmb3IgcmVwZWF0ZWQgcHJpbWl0aXZlIGZpZWxkcyB0byBlbmFibGUKIGEgbW9yZSBlZmZpY2llbnQgcmVwcmVzZW50YXRpb24gb24gdGhlIHdpcmUuIFJhdGhlciB0aGFuIHJlcGVhdGVkbHkKIHdyaXRpbmcgdGhlIHRhZyBhbmQgdHlwZSBmb3IgZWFjaCBlbGVtZW50LCB0aGUgZW50aXJlIGFycmF5IGlzIGVuY29kZWQgYXMKIGEgc2luZ2xlIGxlbmd0aC1kZWxpbWl0ZWQgYmxvYi4gSW4gcHJvdG8zLCBvbmx5IGV4cGxpY2l0IHNldHRpbmcgaXQgdG8KIGZhbHNlIHdpbGwgYXZvaWQgdXNpbmcgcGFja2VkIGVuY29kaW5nLiAgVGhpcyBvcHRpb24gaXMgcHJvaGliaXRlZCBpbgogRWRpdGlvbnMsIGJ1dCB0aGUgYHJlcGVhdGVkX2ZpZWxkX2VuY29kaW5nYCBmZWF0dXJlIGNhbiBiZSB1c2VkIHRvIGNvbnRyb2wKIHRoZSBiZWhhdmlvci4KCg0KBQQMAgEEEgSPBQIKCg0KBQQMAgEFEgSPBQsPCg0KBQQMAgEBEgSPBRAWCg0KBQQMAgEDEgSPBRkaCpoFCgQEDAICEgScBQIzGosFIFRoZSBqc3R5cGUgb3B0aW9uIGRldGVybWluZXMgdGhlIEphdmFTY3JpcHQgdHlwZSB1c2VkIGZvciB2YWx1ZXMgb2YgdGhlCiBmaWVsZC4gIFRoZSBvcHRpb24gaXMgcGVybWl0dGVkIG9ubHkgZm9yIDY0IGJpdCBpbnRlZ3JhbCBhbmQgZml4ZWQgdHlwZXMKIChpbnQ2NCwgdWludDY0LCBzaW50NjQsIGZpeGVkNjQsIHNmaXhlZDY0KS4gIEEgZmllbGQgd2l0aCBqc3R5cGUgSlNfU1RSSU5HCiBpcyByZXByZXNlbnRlZCBhcyBKYXZhU2NyaXB0IHN0cmluZywgd2hpY2ggYXZvaWRzIGxvc3Mgb2YgcHJlY2lzaW9uIHRoYXQKIGNhbiBoYXBwZW4gd2hlbiBhIGxhcmdlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBhIGZsb2F0aW5nIHBvaW50IEphdmFTY3JpcHQuCiBTcGVjaWZ5aW5nIEpTX05VTUJFUiBmb3IgdGhlIGpzdHlwZSBjYXVzZXMgdGhlIGdlbmVyYXRlZCBKYXZhU2NyaXB0IGNvZGUgdG8KIHVzZSB0aGUgSmF2YVNjcmlwdCAibnVtYmVyIiB0eXBlLiAgVGhlIGJlaGF2aW9yIG9mIHRoZSBkZWZhdWx0IG9wdGlvbgogSlNfTk9STUFMIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4KCiBUaGlzIG9wdGlvbiBpcyBhbiBlbnVtIHRvIHBlcm1pdCBhZGRpdGlvbmFsIHR5cGVzIHRvIGJlIGFkZGVkLCBlLmcuCiBnb29nLm1hdGguSW50ZWdlci4KCg0KBQQMAgIEEgScBQIKCg0KBQQMAgIGEgScBQsRCg0KBQQMAgIBEgScBRIYCg0KBQQMAgIDEgScBRscCg0KBQQMAgIIEgScBR0yCg0KBQQMAgIHEgScBSgxCg4KBAQMBAESBp0FAqYFAwoNCgUEDAQBARIEnQUHDQonCgYEDAQBAgASBJ8FBBIaFyBVc2UgdGhlIGRlZmF1bHQgdHlwZS4KCg8KBwQMBAECAAESBJ8FBA0KDwoHBAwEAQIAAhIEnwUQEQopCgYEDAQBAgESBKIFBBIaGSBVc2UgSmF2YVNjcmlwdCBzdHJpbmdzLgoKDwoHBAwEAQIBARIEogUEDQoPCgcEDAQBAgECEgSiBRARCikKBgQMBAECAhIEpQUEEhoZIFVzZSBKYXZhU2NyaXB0IG51bWJlcnMuCgoPCgcEDAQBAgIBEgSlBQQNCg8KBwQMBAECAgISBKUFEBEK/w0KBAQMAgMSBMYFAisa8A0gU2hvdWxkIHRoaXMgZmllbGQgYmUgcGFyc2VkIGxhemlseT8gIExhenkgYXBwbGllcyBvbmx5IHRvIG1lc3NhZ2UtdHlwZQogZmllbGRzLiAgSXQgbWVhbnMgdGhhdCB3aGVuIHRoZSBvdXRlciBtZXNzYWdlIGlzIGluaXRpYWxseSBwYXJzZWQsIHRoZQogaW5uZXIgbWVzc2FnZSdzIGNvbnRlbnRzIHdpbGwgbm90IGJlIHBhcnNlZCBidXQgaW5zdGVhZCBzdG9yZWQgaW4gZW5jb2RlZAogZm9ybS4gIFRoZSBpbm5lciBtZXNzYWdlIHdpbGwgYWN0dWFsbHkgYmUgcGFyc2VkIHdoZW4gaXQgaXMgZmlyc3QgYWNjZXNzZWQuCgogVGhpcyBpcyBvbmx5IGEgaGludC4gIEltcGxlbWVudGF0aW9ucyBhcmUgZnJlZSB0byBjaG9vc2Ugd2hldGhlciB0byB1c2UKIGVhZ2VyIG9yIGxhenkgcGFyc2luZyByZWdhcmRsZXNzIG9mIHRoZSB2YWx1ZSBvZiB0aGlzIG9wdGlvbi4gIEhvd2V2ZXIsCiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRydWUgc3VnZ2VzdHMgdGhhdCB0aGUgcHJvdG9jb2wgYXV0aG9yIGJlbGlldmVzIHRoYXQKIHVzaW5nIGxhenkgcGFyc2luZyBvbiB0aGlzIGZpZWxkIGlzIHdvcnRoIHRoZSBhZGRpdGlvbmFsIGJvb2trZWVwaW5nCiBvdmVyaGVhZCB0eXBpY2FsbHkgbmVlZGVkIHRvIGltcGxlbWVudCBpdC4KCiBUaGlzIG9wdGlvbiBkb2VzIG5vdCBhZmZlY3QgdGhlIHB1YmxpYyBpbnRlcmZhY2Ugb2YgYW55IGdlbmVyYXRlZCBjb2RlOwogYWxsIG1ldGhvZCBzaWduYXR1cmVzIHJlbWFpbiB0aGUgc2FtZS4gIEZ1cnRoZXJtb3JlLCB0aHJlYWQtc2FmZXR5IG9mIHRoZQogaW50ZXJmYWNlIGlzIG5vdCBhZmZlY3RlZCBieSB0aGlzIG9wdGlvbjsgY29uc3QgbWV0aG9kcyByZW1haW4gc2FmZSB0bwogY2FsbCBmcm9tIG11bHRpcGxlIHRocmVhZHMgY29uY3VycmVudGx5LCB3aGlsZSBub24tY29uc3QgbWV0aG9kcyBjb250aW51ZQogdG8gcmVxdWlyZSBleGNsdXNpdmUgYWNjZXNzLgoKIE5vdGUgdGhhdCBpbXBsZW1lbnRhdGlvbnMgbWF5IGNob29zZSBub3QgdG8gY2hlY2sgcmVxdWlyZWQgZmllbGRzIHdpdGhpbgogYSBsYXp5IHN1Yi1tZXNzYWdlLiAgVGhhdCBpcywgY2FsbGluZyBJc0luaXRpYWxpemVkKCkgb24gdGhlIG91dGVyIG1lc3NhZ2UKIG1heSByZXR1cm4gdHJ1ZSBldmVuIGlmIHRoZSBpbm5lciBtZXNzYWdlIGhhcyBtaXNzaW5nIHJlcXVpcmVkIGZpZWxkcy4KIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2Ugb3RoZXJ3aXNlIHRoZSBpbm5lciBtZXNzYWdlIHdvdWxkIGhhdmUgdG8gYmUKIHBhcnNlZCBpbiBvcmRlciB0byBwZXJmb3JtIHRoZSBjaGVjaywgZGVmZWF0aW5nIHRoZSBwdXJwb3NlIG9mIGxhenkKIHBhcnNpbmcuICBBbiBpbXBsZW1lbnRhdGlvbiB3aGljaCBjaG9vc2VzIG5vdCB0byBjaGVjayByZXF1aXJlZCBmaWVsZHMKIG11c3QgYmUgY29uc2lzdGVudCBhYm91dCBpdC4gIFRoYXQgaXMsIGZvciBhbnkgcGFydGljdWxhciBzdWItbWVzc2FnZSwgdGhlCiBpbXBsZW1lbnRhdGlvbiBtdXN0IGVpdGhlciAqYWx3YXlzKiBjaGVjayBpdHMgcmVxdWlyZWQgZmllbGRzLCBvciAqbmV2ZXIqCiBjaGVjayBpdHMgcmVxdWlyZWQgZmllbGRzLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgb3Igbm90IHRoZSBtZXNzYWdlIGhhcwogYmVlbiBwYXJzZWQuCgogQXMgb2YgTWF5IDIwMjIsIGxhenkgdmVyaWZpZXMgdGhlIGNvbnRlbnRzIG9mIHRoZSBieXRlIHN0cmVhbSBkdXJpbmcKIHBhcnNpbmcuICBBbiBpbnZhbGlkIGJ5dGUgc3RyZWFtIHdpbGwgY2F1c2UgdGhlIG92ZXJhbGwgcGFyc2luZyB0byBmYWlsLgoKDQoFBAwCAwQSBMYFAgoKDQoFBAwCAwUSBMYFCw8K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ZXByZXNlbnRzCiAgIFthLGkpICBbIDQsIDAsIDIsIDAgXSAgICAgVGhlIHdob2xlIGZpZWxkIGRlZmluaXRpb24uCiAgIFthLGIpICBbIDQsIDAsIDIsIDAsIDQgXSAgVGhlIGxhYmVsIChvcHRpb25hbCkuCiAgIFtjLGQpICBbIDQsIDAsIDIsIDAsIDUgXSAgVGhlIHR5cGUgKHN0cmluZykuCiAgIFtlLGYpICBbIDQsIDAsIDIsIDAsIDEgXSAgVGhlIG5hbWUgKGZvbykuCiAgIFtnLGgpICBbIDQsIDAsIDIsIDAsIDMgXSAgVGhlIG51bWJlciAoMSkuCgogTm90ZXM6CiAtIEEgbG9jYXRpb24gbWF5IHJlZmVyIHRvIGEgcmVwZWF0ZWQgZmllbGQgaXRzZWxmIChpLmUuIG5vdCB0byBhbnkKICAgcGFydGljdWxhciBpbmRleCB3aXRoaW4gaXQpLiAgVGhpcyBpcyB1c2VkIHdoZW5ldmVyIGEgc2V0IG9mIGVsZW1lbnRzIGFyZQogICBsb2dpY2FsbHkgZW5jbG9zZWQgaW4gYSBzaW5nbGUgY29kZSBzZWdtZW50LiAgRm9yIGV4YW1wbGUsIGFuIGVudGlyZQogICBleHRlbmQgYmxvY2sgKHBvc3NpYmx5IGNvbnRhaW5pbmcgbXVsdGlwbGUgZXh0ZW5zaW9uIGRlZmluaXRpb25zKSB3aWxsCiAgIGhhdmUgYW4gb3V0ZXIgbG9jYXRpb24gd2hvc2UgcGF0aCByZWZlcnMgdG8gdGhlICJleHRlbnNpb25zIiByZXBlYXRlZAogICBmaWVsZCB3aXRob3V0IGFuIGluZGV4LgogLSBNdWx0aXBsZSBsb2NhdGlvbnMgbWF5IGhhdmUgdGhlIHNhbWUgcGF0aC4gIFRoaXMgaGFwcGVucyB3aGVuIGEgc2luZ2xlCiAgIGxvZ2ljYWwgZGVjbGFyYXRpb24gaXMgc3ByZWFkIG91dCBhY3Jvc3MgbXVsdGlwbGUgcGxhY2VzLiAgVGhlIG1vc3QKICAgb2J2aW91cyBleGFtcGxlIGlzIHRoZSAiZXh0ZW5kIiBibG9jayBhZ2FpbiAtLSB0aGVyZSBtYXkgYmUgbXVsdGlwbGUKICAgZXh0ZW5kIGJsb2NrcyBpbiB0aGUgc2FtZSBzY29wZSwgZWFjaCBvZiB3aGljaCB3aWxsIGhhdmUgdGhlIHNhbWUgcGF0aC4KIC0gQSBsb2NhdGlvbidzIHNwYW4gaXMgbm90IGFsd2F5cyBhIHN1YnNldCBvZiBpdHMgcGFyZW50J3Mgc3Bhbi4gIEZvcgogICBleGFtcGxlLCB0aGUgImV4dGVuZGVlIiBvZiBhbiBleHRlbnNpb24gZGVjbGFyYXRpb24gYXBwZWFycyBhdCB0aGUKICAgYmVnaW5uaW5nIG9mIHRoZSAiZXh0ZW5kIiBibG9jayBhbmQgaXMgc2hhcmVkIGJ5IGFsbCBleHRlbnNpb25zIHdpdGhpbgogICB0aGUgYmxvY2suCiAtIEp1c3QgYmVjYXVzZSBhIGxvY2F0aW9uJ3Mgc3BhbiBpcyBhIHN1YnNldCBvZiBzb21lIG90aGVyIGxvY2F0aW9uJ3Mgc3BhbgogICBkb2VzIG5vdCBtZWFuIHRoYXQgaXQgaXMgYSBkZXNjZW5kYW50LiAgRm9yIGV4YW1wbGUsIGEgImdyb3VwIiBkZWZpbmVzCiAgIGJvdGggYSB0eXBlIGFuZCBhIGZpZWxkIGluIGEgc2luZ2xlIGRlY2xhcmF0aW9uLiAgVGh1cywgdGhlIGxvY2F0aW9ucwogICBjb3JyZXNwb25kaW5nIHRvIHRoZSB0eXBlIGFuZCBmaWVsZCBhbmQgdGhlaXIgY29tcG9uZW50cyB3aWxsIG92ZXJsYXAuCiAtIENvZGUgd2hpY2ggdHJpZXMgdG8gaW50ZXJwcmV0IGxvY2F0aW9ucyBzaG91bGQgcHJvYmFibHkgYmUgZGVzaWduZWQgdG8KICAgaWdub3JlIHRob3NlIHRoYXQgaXQgZG9lc24ndCB1bmRlcnN0YW5kLCBhcyBtb3JlIHR5cGVzIG9mIGxvY2F0aW9ucyBjb3VsZAogICBiZSByZWNvcmRlZCBpbiB0aGUgZnV0dXJlLgoKDQoFBBUCAAQSBMwIAgoKDQoFBBUCAAYSBMwICxMKDQoFBBUCAAESBMwIFBwKDQoFBBUCAAMSBMwIHyAKDgoEBBUDABIGzQgCoAkDCg0KBQQVAwABEgTNCAoSCokHCgYEFQMAAgASBOUIBCwa+AYgSWRlbnRpZmllcyB3aGljaCBwYXJ0IG9mIHRoZSBGaWxlRGVzY3JpcHRvclByb3RvIHdhcyBkZWZpbmVkIGF0IHRoaXMKIGxvY2F0aW9uLgoKIEVhY2ggZWxlbWVudCBpcyBhIGZpZWxkIG51bWJlciBvciBhbiBpbmRleC4gIFRoZXkgZm9ybSBhIHBhdGggZnJvbQogdGhlIHJvb3QgRmlsZURlc2NyaXB0b3JQcm90byB0byB0aGUgcGxhY2Ugd2hlcmUgdGhlIGRlZmluaXRpb24gb2NjdXJzLgogRm9yIGV4YW1wbGUsIHRoaXMgcGF0aDoKICAgWyA0LCAzLCAyLCA3LCAxIF0KIHJlZmVycyB0bzoKICAgZmlsZS5tZXNzYWdlX3R5cGUoMykgIC8vIDQsIDMKICAgICAgIC5maWVsZCg3KSAgICAgICAgIC8vIDIsIDcKICAgICAgIC5uYW1lKCkgICAgICAgICAgIC8vIDEKIFRoaXMgaXMgYmVjYXVzZSBGaWxlRGVzY3JpcHRvclByb3RvLm1lc3NhZ2VfdHlwZSBoYXMgZmllbGQgbnVtYmVyIDQ6CiAgIHJlcGVhdGVkIERlc2NyaXB0b3JQcm90byBtZXNzYWdlX3R5cGUgPSA0OwogYW5kIERlc2NyaXB0b3JQcm90by5maWVsZCBoYXMgZmllbGQgbnVtYmVyIDI6CiAgIHJlcGVhdGVkIEZpZWxkRGVzY3JpcHRvclByb3RvIGZpZWxkID0gMjsKIGFuZCBGaWVsZERlc2NyaXB0b3JQcm90by5uYW1lIGhhcyBmaWVsZCBudW1iZXIgMToKICAgb3B0aW9uYWwgc3RyaW5nIG5hbWUgPSAxOwoKIFRodXMsIHRoZSBhYm92ZSBwYXRoIGdpdmVzIHRoZSBsb2NhdGlvbiBvZiBhIGZpZWxkIG5hbWUuICBJZiB3ZSByZW1vdmVkCiB0aGUgbGFzdCBlbGVtZW50OgogICBbIDQsIDMsIDIsIDcgXQogdGhpcyBwYXRoIHJlZmVycyB0byB0aGUgd2hvbGUgZmllbGQgZGVjbGFyYXRpb24gKGZyb20gdGhlIGJlZ2lubmluZwogb2YgdGhlIGxhYmVsIHRvIHRoZSB0ZXJtaW5hdGluZyBzZW1pY29sb24pLgoKDwoHBBUDAAIABBIE5QgEDAoPCgcEFQMAAgAFEgTlCA0SCg8KBwQVAwACAAESBOUIExcKDwoHBBUDAAIAAxIE5QgaGwoPCgcEFQMAAgAIEgTlCBwrChAKCAQVAwACAAgCEgTlCB0qCtICCgYEFQMAAgESBOwIBCwawQIgQWx3YXlzIGhhcyBleGFjdGx5IHRocmVlIG9yIGZvdXIgZWxlbWVudHM6IHN0YXJ0IGxpbmUsIHN0YXJ0IGNvbHVtbiwKIGVuZCBsaW5lIChvcHRpb25hbCwgb3RoZXJ3aXNlIGFzc3VtZWQgc2FtZSBhcyBzdGFydCBsaW5lKSwgZW5kIGNvbHVtbi4KIFRoZXNlIGFyZSBwYWNrZWQgaW50byBhIHNpbmdsZSBmaWVsZCBmb3IgZWZmaWNpZW5jeS4gIE5vdGUgdGhhdCBsaW5lCiBhbmQgY29sdW1uIG51bWJlcnMgYXJlIHplcm8tYmFzZWQgLS0gdHlwaWNhbGx5IHlvdSB3aWxsIHdhbnQgdG8gYWRkCiAxIHRvIGVhY2ggYmVmb3JlIGRpc3BsYXlpbmcgdG8gYSB1c2VyLgoKDwoHBBUDAAIBBBIE7AgEDAoPCgcEFQMAAgEFEgTsCA0SCg8KBwQVAwACAQESBOwIExcKDwoHBBUDAAIBAxIE7AgaGwoPCgcEFQMAAgEIEgTsCBwrChAKCAQVAwACAQgCEgTsCB0qCqUMCgYEFQMAAgISBJ0JBCkalAwgSWYgdGhpcyBTb3VyY2VDb2RlSW5mbyByZXByZXNlbnRzIGEgY29tcGxldGUgZGVjbGFyYXRpb24sIHRoZXNlIGFyZSBhbnkKIGNvbW1lbnRzIGFwcGVhcmluZyBiZWZvcmUgYW5kIGFmdGVyIHRoZSBkZWNsYXJhdGlvbiB3aGljaCBhcHBlYXIgdG8gYmUKIGF0dGFjaGVkIHRvIHRoZSBkZWNsYXJhdGlvbi4KCiBBIHNlcmllcyBvZiBsaW5lIGNvbW1lbnRzIGFwcGVhcmluZyBvbiBjb25zZWN1dGl2ZSBsaW5lcywgd2l0aCBubyBvdGhlcgogdG9rZW5zIGFwcGVhcmluZyBvbiB0aG9zZSBsaW5lcywgd2lsbCBiZSB0cmVhdGVkIGFzIGEgc2luZ2xlIGNvbW1lbnQuCgogbGVhZGluZ19kZXRhY2hlZF9jb21tZW50cyB3aWxsIGtlZXAgcGFyYWdyYXBocyBvZiBjb21tZW50cyB0aGF0IGFwcGVhcgogYmVmb3JlIChidXQgbm90IGNvbm5lY3RlZCB0bykgdGhlIGN1cnJlbnQgZWxlbWVudC4gRWFjaCBwYXJhZ3JhcGgsCiBzZXBhcmF0ZWQgYnkgZW1wdHkgbGluZXMsIHdpbGwgYmUgb25lIGNvbW1lbnQgZWxlbWVudCBpbiB0aGUgcmVwZWF0ZWQKIGZpZWxkLgoKIE9ubHkgdGhlIGNvbW1lbnQgY29udGVudCBpcyBwcm92aWRlZDsgY29tbWVudCBtYXJrZXJzIChlLmcuIC8vKSBhcmUKIHN0cmlwcGVkIG91dC4gIEZvciBibG9jayBjb21tZW50cywgbGVhZGluZyB3aGl0ZXNwYWNlIGFuZCBhbiBhc3Rlcmlzawogd2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBsaW5lIG90aGVyIHRoYW4gdGhlIGZpcnN0LgogTmV3bGluZXMgYXJlIGluY2x1ZGVkIGluIHRoZSBvdXRwdXQuCgogRXhhbXBsZXM6CgogICBvcHRpb25hbCBpbnQzMiBmb28gPSAxOyAgLy8gQ29tbWVudCBhdHRhY2hlZCB0byBmb28uCiAgIC8vIENvbW1lbnQgYXR0YWNoZWQgdG8gYmFyLgogICBvcHRpb25hbCBpbnQzMiBiYXIgPSAyOwoKICAgb3B0aW9uYWwgc3RyaW5nIGJheiA9IDM7CiAgIC8vIENvbW1lbnQgYXR0YWNoZWQgdG8gYmF6LgogICAvLyBBbm90aGVyIGxpbmUgYXR0YWNoZWQgdG8gYmF6LgoKICAgLy8gQ29tbWVudCBhdHRhY2hlZCB0byBtb28uCiAgIC8vCiAgIC8vIEFub3RoZXIgbGluZSBhdHRhY2hlZCB0byBtb28uCiAgIG9wdGlvbmFsIGRvdWJsZSBtb28gPSA0OwoKICAgLy8gRGV0YWNoZWQgY29tbWVudCBmb3IgY29yZ2UuIFRoaXMgaXMgbm90IGxlYWRpbmcgb3IgdHJhaWxpbmcgY29tbWVudHMKICAgLy8gdG8gbW9vIG9yIGNvcmdlIGJlY2F1c2UgdGhlcmUgYXJlIGJsYW5rIGxpbmVzIHNlcGFyYXRpbmcgaXQgZnJvbQogICAvLyBib3RoLgoKICAgLy8gRGV0YWNoZWQgY29tbWVudCBmb3IgY29yZ2UgcGFyYWdyYXBoIDIuCgogICBvcHRpb25hbCBzdHJpbmcgY29yZ2UgPSA1OwogICAvKiBCbG9jayBjb21tZW50IGF0dGFjaGVkCiAgICAqIHRvIGNvcmdlLiAgTGVhZGluZyBhc3Rlcmlza3MKICAgICogd2lsbCBiZSByZW1vdmVkLiAqLwogICAvKiBCbG9jayBjb21tZW50IGF0dGFjaGVkIHRvCiAgICAqIGdyYXVsdC4gKi8KICAgb3B0aW9uYWwgaW50MzIgZ3JhdWx0ID0gNjsKCiAgIC8vIGlnbm9yZWQgZGV0YWNoZWQgY29tbWVudHMuCgoPCgcEFQMAAgIEEgSdCQQMCg8KBwQVAwACAgUSBJ0JDRMKDwoHBBUDAAICARIEnQkUJAoPCgcEFQMAAgIDEgSdCScoCg4KBgQVAwACAxIEngkEKgoPCgcEFQMAAgMEEgSeCQQMCg8KBwQVAwACAwUSBJ4JDRMKDwoHBBUDAAIDARIEngkUJQoPCgcEFQMAAgMDEgSeCSgpCg4KBgQVAwACBBIEnwkEMgoPCgcEFQMAAgQEEgSfCQQMCg8KBwQVAwACBAUSBJ8JDRMKDwoHBBUDAAIEARIEnwkULQoPCgcEFQMAAgQDEgSfCTAxCu4BCgIEFhIGpgkAxwkBGt8BIERlc2NyaWJlcyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gZ2VuZXJhdGVkIGNvZGUgYW5kIGl0cyBvcmlnaW5hbCBzb3VyY2UKIGZpbGUuIEEgR2VuZXJhdGVkQ29kZUluZm8gbWVzc2FnZSBpcyBhc3NvY2lhdGVkIHdpdGggb25seSBvbmUgZ2VuZXJhdGVkCiBzb3VyY2UgZmlsZSwgYnV0IG1heSBjb250YWluIHJlZmVyZW5jZXMgdG8gZGlmZmVyZW50IHNvdXJjZSAucHJvdG8gZmlsZXMuCgoLCgMEFgESBKYJCBkKeAoEBBYCABIEqQkCJRpqIEFuIEFubm90YXRpb24gY29ubmVjdHMgc29tZSBzcGFuIG9mIHRleHQgaW4gZ2VuZXJhdGVkIGNvZGUgdG8gYW4gZWxlbWVudAogb2YgaXRzIGdlbmVyYXRpbmcgLnByb3RvIGZpbGUuCgoNCgUEFgIABBIEqQkCCgoNCgUEFgIABhIEqQkLFQoNCgUEFgIAARIEqQkWIAoNCgUEFgIAAxIEqQkjJAoOCgQEFgMAEgaqCQLGCQMKDQoFBBYDAAESBKoJChQKjwEKBgQWAwACABIErQkELBp/IElkZW50aWZpZXMgdGhlIGVsZW1lbnQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAucHJvdG8gZmlsZS4gVGhpcyBmaWVsZAogaXMgZm9ybWF0dGVkIHRoZSBzYW1lIGFzIFNvdXJjZUNvZGVJbmZvLkxvY2F0aW9uLnBhdGguCgoPCgcEFgMAAgAEEgStCQQMCg8KBwQWAwACAAUSBK0JDRIKDwoHBBYDAAIAARIErQkTFwoPCgcEFgMAAgADEgStCRobCg8KBwQWAwACAAgSBK0JHCsKEAoIBBYDAAIACAISBK0JHSoKTwoGBBYDAAIBEgSwCQQkGj8gSWRlbnRpZmllcyB0aGUgZmlsZXN5c3RlbSBwYXRoIHRvIHRoZSBvcmlnaW5hbCBzb3VyY2UgLnByb3RvLgoKDwoHBBYDAAIBBBIEsAkEDAoPCgcEFgMAAgEFEgSwCQ0TCg8KBwQWAwACAQESBLAJFB8KDwoHBBYDAAIBAxIEsAkiIwp3CgYEFgMAAgISBLQJBB0aZyBJZGVudGlmaWVzIHRoZSBzdGFydGluZyBvZmZzZXQgaW4gYnl0ZXMgaW4gdGhlIGdlbmVyYXRlZCBjb2RlCiB0aGF0IHJlbGF0ZXMgdG8gdGhlIGlkZW50aWZpZWQgb2JqZWN0LgoKDwoHBBYDAAICBBIEtAkEDAoPCgcEFgMAAgIFEgS0CQ0SCg8KBwQWAwACAgESBLQJExgKDwoHBBYDAAICAxIEtAkbHArbAQoGBBYDAAIDEgS5CQQbGsoBIElkZW50aWZpZXMgdGhlIGVuZGluZyBvZmZzZXQgaW4gYnl0ZXMgaW4gdGhlIGdlbmVyYXRlZCBjb2RlIHRoYXQKIHJlbGF0ZXMgdG8gdGhlIGlkZW50aWZpZWQgb2JqZWN0LiBUaGUgZW5kIG9mZnNldCBzaG91bGQgYmUgb25lIHBhc3QKIHRoZSBsYXN0IHJlbGV2YW50IGJ5dGUgKHNvIHRoZSBsZW5ndGggb2YgdGhlIHRleHQgPSBlbmQgLSBiZWdpbikuCgoPCgcEFgMAAgMEEgS5CQQMCg8KBwQWAwACAwUSBLkJDRIKDwoHBBYDAAIDARIEuQkTFgoPCgcEFgMAAgMDEgS5CRkaCmoKBgQWAwAEABIGvQkExAkFGlggUmVwcmVzZW50cyB0aGUgaWRlbnRpZmllZCBvYmplY3QncyBlZmZlY3Qgb24gdGhlIGVsZW1lbnQgaW4gdGhlIG9yaWdpbmFsCiAucHJvdG8gZmlsZS4KCg8KBwQWAwAEAAESBL0JCREKRgoIBBYDAAQAAgASBL8JBg8aNCBUaGVyZSBpcyBubyBlZmZlY3Qgb3IgdGhlIGVmZmVjdCBpcyBpbmRlc2NyaWJhYmxlLgoKEQoJBBYDAAQAAgABEgS/CQYKChEKCQQWAwAEAAIAAhIEvwkNDgo8CggEFgMABAACARIEwQkGDhoqIFRoZSBlbGVtZW50IGlzIHNldCBvciBvdGhlcndpc2UgbXV0YXRlZC4KChEKCQQWAwAEAAIBARIEwQkGCQoRCgkEFgMABAACAQISBMEJDA0KOAoIBBYDAAQAAgISBMMJBhAaJiBBbiBhbGlhcyB0byB0aGUgZWxlbWVudCBpcyByZXR1cm5lZC4KChEKCQQWAwAEAAICARIEwwkGCwoRCgkEFgMABAACAgISBMMJDg8KDgoGBBYDAAIEEgTFCQQjCg8KBwQWAwACBAQSBMUJBAwKDwoHBBYDAAIEBhIExQkNFQoPCgcEFgMAAgQBEgTFCRYeCg8KBwQWAwACBAMSBMUJISIK+3EKMmNzaGFycC9wcm90b3MvdW5pdHRlc3RfY3VzdG9tX29wdGlvbnNfcHJvdG8zLnByb3RvEhFwcm90b2J1Zl91bml0dGVzdBogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8i6wEKHFRlc3RNZXNzYWdlV2l0aEN1c3RvbU9wdGlvbnMSJgoGZmllbGQxGAEgASgJQg4IAcHgwx0t4XUKAgAAAFIGZmllbGQxEiEKC29uZW9mX2ZpZWxkGAIgASgFSABSCm9uZW9mRmllbGQiUwoGQW5FbnVtEhYKEkFORU5VTV9VTlNQRUNJRklFRBAAEg8KC0FORU5VTV9WQUwxEAESFgoLQU5FTlVNX1ZBTDIQAhoFsIb6BXsaCMX2yR3r/P//OhAIAODpwh3I//////////8BQhkKB0FuT25lb2YSDviswx2d//////////8BIhgKFkN1c3RvbU9wdGlvbkZvb1JlcXVlc3QiGQoXQ3VzdG9tT3B0aW9uRm9vUmVzcG9uc2UiHgocQ3VzdG9tT3B0aW9uRm9vQ2xpZW50TWVzc2FnZSIeChxDdXN0b21PcHRpb25Gb29TZXJ2ZXJNZXNzYWdlIo8BChpEdW1teU1lc3NhZ2VDb250YWluaW5nRW51bSJxCgxUZXN0RW51bVR5cGUSIAocVEVTVF9PUFRJT05fRU5VTV9VTlNQRUNJRklFRBAAEhoKFlRFU1RfT1BUSU9OX0VOVU1fVFlQRTEQFhIjChZURVNUX09QVElPTl9FTlVNX1RZUEUyEOn//////////wEiIQofRHVtbXlNZXNzYWdlSW52YWxpZEFzT3B0aW9uVHlwZSKKAQocQ3VzdG9tT3B0aW9uTWluSW50ZWdlclZhbHVlczpqmdaoHQAAAAAAAACArY2vHQAAAICR7q8dAAAAAAAAAACd9a8dAAAAAPiXsB3///////////8BgMSwHf////8P+PWwHQCAk7IdALC8sh2AgICAgICAgIAB6MayHYCAgID4/////wHQ3rIdACKRAQocQ3VzdG9tT3B0aW9uTWF4SW50ZWdlclZhbHVlczpxmdaoHf////////9/rY2vHf///3+R7q8d//////////+d9a8d//////iXsB3+//////////8BgMSwHf7///8P+PWwHf///////////wGAk7Id/////w+wvLId//////////9/6MayHf////8H0N6yHQEibgoXQ3VzdG9tT3B0aW9uT3RoZXJWYWx1ZXM6U4jZoh3p//////////8BstmiHQtIZWxsbwBXb3JsZKrcoh0OSGVsbG8sICJXb3JsZCLp3KId+1mMQsrA8z/136Md54dFQejGsh2c//////////8BIjQKHFNldHRpbmdSZWFsc0Zyb21Qb3NpdGl2ZUludHM6FOncoh0AAAAAAEBjQPXfox0AAEBBIjQKHFNldHRpbmdSZWFsc0Zyb21OZWdhdGl2ZUludHM6FOncoh0AAAAAAEBjwPXfox0AAEDBImIKEkNvbXBsZXhPcHRpb25UeXBlMRIQCgNmb28YASABKAVSA2ZvbxISCgRmb28yGAIgASgFUgRmb28yEhIKBGZvbzMYAyABKAVSBGZvbzMSEgoEZm9vNBgEIAMoBVIEZm9vNCKtAwoSQ29tcGxleE9wdGlvblR5cGUyEjcKA2JhchgBIAEoCzIlLnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMVIDYmFyEhAKA2JhehgCIAEoBVIDYmF6EkwKBGZyZWQYAyABKAsyOC5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTIuQ29tcGxleE9wdGlvblR5cGU0UgRmcmVkElAKBmJhcm5leRgEIAMoCzI4LnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMi5Db21wbGV4T3B0aW9uVHlwZTRSBmJhcm5leRqrAQoSQ29tcGxleE9wdGlvblR5cGU0EhQKBXdhbGRvGAEgASgFUgV3YWxkbzJ/Cgxjb21wbGV4X29wdDQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYivXRAyABKAsyOC5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTIuQ29tcGxleE9wdGlvblR5cGU0Ugtjb21wbGV4T3B0NCImChJDb21wbGV4T3B0aW9uVHlwZTMSEAoDcXV4GAEgASgFUgNxdXgiTgoVVmFyaW91c0NvbXBsZXhPcHRpb25zOjXSqI8dAwizD/rekB0CCAmq/ZAdFgoDCOcFENsHGgMIwQIiAghlIgMI1AGi4pUdBggqIgJjWCJXCglBZ2dyZWdhdGUSDAoBaRgBIAEoBVIBaRIMCgFzGAIgASgJUgFzEi4KA3N1YhgDIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIDc3ViImQKEEFnZ3JlZ2F0ZU1lc3NhZ2USNAoJZmllbGRuYW1lGAEgASgFQhbyoYc7ERIPRmllbGRBbm5vdGF0aW9uUglmaWVsZG5hbWU6GsLRhjsVCGUSEU1lc3NhZ2VBbm5vdGF0aW9uIqQBChBOZXN0ZWRPcHRpb25UeXBlGkgKDU5lc3RlZE1lc3NhZ2USLwoMbmVzdGVkX2ZpZWxkGAEgASgFQgzB4MMd6gMAAAAAAABSC25lc3RlZEZpZWxkOgbg6cId6QciRgoKTmVzdGVkRW51bRIPCgtVTlNQRUNJRklFRBAAEh0KEU5FU1RFRF9FTlVNX1ZBTFVFEAEaBrCG+gXsBxoIxfbJHesDAAAqUgoKTWV0aG9kT3B0MRIaChZNRVRIT0RPUFQxX1VOU1BFQ0lGSUVEEAASEwoPTUVUSE9ET1BUMV9WQUwxEAESEwoPTUVUSE9ET1BUMV9WQUwyEAIqXgoNQWdncmVnYXRlRW51bRIPCgtVTlNQRUNJRklFRBAAEiUKBVZBTFVFEAEaGsr8iTsVEhNFbnVtVmFsdWVBbm5vdGF0aW9uGhWSlYg7EBIORW51bUFubm90YXRpb24yjgEKHFRlc3RTZXJ2aWNlV2l0aEN1c3RvbU9wdGlvbnMSYwoDRm9vEikucHJvdG9idWZfdW5pdHRlc3QuQ3VzdG9tT3B0aW9uRm9vUmVxdWVzdBoqLnByb3RvYnVmX3VuaXR0ZXN0LkN1c3RvbU9wdGlvbkZvb1Jlc3BvbnNlIgXg+oweAhoJkLKLHtPbgMtJMpkBChBBZ2dyZWdhdGVTZXJ2aWNlEmsKBk1ldGhvZBIjLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZU1lc3NhZ2UaIy5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVNZXNzYWdlIhfKyJY7EhIQTWV0aG9kQW5ub3RhdGlvbhoYyvuOOxMSEVNlcnZpY2VBbm5vdGF0aW9uOjwKCWZpbGVfb3B0MRIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxiOndgDIAEoBFIIZmlsZU9wdDE6RQoMbWVzc2FnZV9vcHQxEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGJyt2AMgASgFUgttZXNzYWdlT3B0MTo/CgpmaWVsZF9vcHQxEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxiIvNgDIAEoBlIJZmllbGRPcHQxOj8KCm9uZW9mX29wdDESHS5nb29nbGUucHJvdG9idWYuT25lb2ZPcHRpb25zGM+12AMgASgFUglvbmVvZk9wdDE6PAoJZW51bV9vcHQxEhwuZ29vZ2xlLnByb3RvYnVmLkVudW1PcHRpb25zGOie2QMgASgPUghlbnVtT3B0MTpLCg9lbnVtX3ZhbHVlX29wdDESIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9ucxjmoF8gASgFUg1lbnVtVmFsdWVPcHQxOkUKDHNlcnZpY2Vfb3B0MRIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxiituEDIAEoElILc2VydmljZU9wdDE6YQoLbWV0aG9kX29wdDESHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxisz+EDIAEoDjIdLnByb3RvYnVmX3VuaXR0ZXN0Lk1ldGhvZE9wdDFSCm1ldGhvZE9wdDE6PQoIYm9vbF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY6qvWAyABKAhSB2Jvb2xPcHQ6PwoJaW50MzJfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGO2o1gMgASgFUghpbnQzMk9wdDo/CglpbnQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYxqfWAyABKANSCGludDY0T3B0OkEKCnVpbnQzMl9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYsKLWAyABKA1SCXVpbnQzMk9wdDpBCgp1aW50NjRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGN+O1gMgASgEUgl1aW50NjRPcHQ6QQoKc2ludDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjAiNYDIAEoEVIJc2ludDMyT3B0OkEKCnNpbnQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY/4LWAyABKBJSCXNpbnQ2NE9wdDpDCgtmaXhlZDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjT/tUDIAEoB1IKZml4ZWQzMk9wdDpDCgtmaXhlZDY0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxji/dUDIAEoBlIKZml4ZWQ2NE9wdDpFCgxzZml4ZWQzMl9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY1fHVAyABKA9SC3NmaXhlZDMyT3B0OkUKDHNmaXhlZDY0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjjitUDIAEoEFILc2ZpeGVkNjRPcHQ6PwoJZmxvYXRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGP671AMgASgCUghmbG9hdE9wdDpBCgpkb3VibGVfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGM2r1AMgASgBUglkb3VibGVPcHQ6QQoKc3RyaW5nX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjFq9QDIAEoCVIJc3RyaW5nT3B0Oj8KCWJ5dGVzX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiWq9QDIAEoDFIIYnl0ZXNPcHQ6eQoIZW51bV9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYkavUAyABKA4yOi5wcm90b2J1Zl91bml0dGVzdC5EdW1teU1lc3NhZ2VDb250YWluaW5nRW51bS5UZXN0RW51bVR5cGVSB2VudW1PcHQ6gAEKEG1lc3NhZ2VfdHlwZV9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYr/LTAyABKAsyMi5wcm90b2J1Zl91bml0dGVzdC5EdW1teU1lc3NhZ2VJbnZhbGlkQXNPcHRpb25UeXBlUg5tZXNzYWdlVHlwZU9wdDpsCgxjb21wbGV4X29wdDESHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYpNzSAyABKAsyJS5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTFSC2NvbXBsZXhPcHQxOmwKDGNvbXBsZXhfb3B0MhIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjVj9IDIAEoCzIlLnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMlILY29tcGxleE9wdDI6bAoMY29tcGxleF9vcHQzEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGO+L0gMgASgLMiUucHJvdG9idWZfdW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUzUgtjb21wbGV4T3B0MzpXCgdmaWxlb3B0EhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGM/dsAcgASgLMhwucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlUgdmaWxlb3B0OlgKBm1zZ29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiY6rAHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIGbXNnb3B0OloKCGZpZWxkb3B0Eh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxie9LAHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIIZmllbGRvcHQ6VwoHZW51bW9wdBIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9ucxjSgrEHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIHZW51bW9wdDpiCgplbnVtdmFsb3B0EiEuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZU9wdGlvbnMYyZ+xByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSCmVudW12YWxvcHQ6YAoKc2VydmljZW9wdBIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxi577EHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIKc2VydmljZW9wdDpdCgltZXRob2RvcHQSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxiJ6bIHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIJbWV0aG9kb3B0QlWqAhpVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvc/DowR3qrcDlJPrshTsqCGQSDkZpbGVBbm5vdGF0aW9uGhYSFE5lc3RlZEZpbGVBbm5vdGF0aW9uSspGCgcSBRQA0AIBCr4GCgEMEgMUABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMtMBIEF1dGhvcjogYmVuanlAZ29vZ2xlLmNvbSAoQmVuankgV2VpbmJlcmdlcikKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIEEgcHJvdG8gZmlsZSB1c2VkIHRvIHRlc3QgdGhlICJjdXN0b20gb3B0aW9ucyIgZmVhdHVyZSBvZiBnb29nbGUucHJvdG9idWYuCjLRAiBUaGlzIGZpbGUgaXMgYmFzZWQgb24gdW5pdHRlc3RfY3VzdG9tX29wdGlvbnMucHJvdG8gaW4KIHNyYy9nb29nbGUvcHJvdG9idWYsIGJ1dCBpcyBtb2RpZmllZCBmb3IgcHJvdG8zLiBJdCBjb3VsZAogcG90ZW50aWFsbHkgYmUgbW92ZWQgaW50byBzcmMvZ29vZ2xlL3Byb3RvYnVmLCBidXQgY3VycmVudGx5IEMjCiBpcyB0aGUgb25seSBsYW5ndWFnZSB0aGF0IHJlYWxseSBuZWVkcyBpdCwgYXMgd2UgZG9uJ3Qgc3VwcG9ydAogcHJvdG8yIHN5bnRheC4gSXQncyBjdXQgZG93biBzaWduaWZpY2FudGx5IGFzIHByb3RvMyBvbmx5IHN1cHBvcnRzCiBleHRlbnNpb25zIGZvciBvcHRpb25zLgoKCAoBCBIDFwAgCjUKBQiOndgDEgMXACAaJyBBIGN1c3RvbSBmaWxlIG9wdGlvbiAoZGVmaW5lZCBiZWxvdykuCgoJCgIDABIDGQAqCqABCgECEgMdABoalQEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBuYW1lc3BhY2Uu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VGVzdFByb3Rvcy5Qcm90bzJKxQMKBhIECQARAQq+AgoBDBIDCQASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjIoIEF1dGhvcjogbGl1amlzaUBnb29nbGUuY29tIChQaGVybCBMaXUpCgoICgECEgMLACgKCAoBCBIDDQA+CgkKAgglEgMNAD4KCgoCBAASBA8AEQEKCgoDBAABEgMPCBsKCwoEBAACABIDEAIXCgwKBQQAAgAEEgMQAgoKDAoFBAACAAUSAxALEAoMCgUEAAIAARIDEBESCgwKBQQAAgADEgMQFRYKwQwKI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0LnByb3RvEh9wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yGipjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wdWJsaWMucHJvdG8iHQoNSW1wb3J0TWVzc2FnZRIMCgFkGAEgASgFUgFkKjwKCkltcG9ydEVudW0SDgoKSU1QT1JUX0ZPTxAHEg4KCklNUE9SVF9CQVIQCBIOCgpJTVBPUlRfQkFaEAkqMQoQSW1wb3J0RW51bUZvck1hcBILCgdVTktOT1dOEAASBwoDRk9PEAESBwoDQkFSEAJCKUgB+AEBqgIhR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3MuUHJvdG8ySo8KCgYSBA0AKwEK4AMKAQwSAw0AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyyQEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdoaWNoIGlzIGltcG9ydGVkIGJ5IHVuaXR0ZXN0LnByb3RvIHRvIHRlc3QgaW1wb3J0aW5nLgoK9QEKAQISAxMAKBrqASBXZSBkb24ndCBwdXQgdGhpcyBpbiBhIHBhY2thZ2Ugd2l0aGluIHByb3RvMiBiZWNhdXNlIHdlIG5lZWQgdG8gbWFrZSBzdXJlCiB0aGF0IHRoZSBnZW5lcmF0ZWQgY29kZSBkb2Vzbid0IGRlcGVuZCBvbiBiZWluZyBpbiB0aGUgcHJvdG8yIG5hbWVzcGFjZS4KIEluIHRlc3RfdXRpbC5oIHdlIGRvCiAidXNpbmcgbmFtZXNwYWNlIHVuaXR0ZXN0X2ltcG9ydCA9IHByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydCIuCgoICgEIEgMVABwKCQoCCAkSAxUAHAoICgEIEgMWAB8KCQoCCB8SAxYAHwoICgEIEgMXAD4KCQoCCCUSAxcAPgofCgIDABIDGgA7GhQgVGVzdCBwdWJsaWMgaW1wb3J0CgoJCgIKABIDGgcNCgoKAgQAEgQcAB4BCgoKAwQAARIDHAgVCgsKBAQAAgASAx0CFwoMCgUEAAIABBIDHQIKCgwKBQQAAgAFEgMdCxAKDAoFBAACAAESAx0REgoMCgUEAAIAAxIDHRUWCgoKAgUAEgQgACQBCgoKAwUAARIDIAUPCgsKBAUAAgASAyECEQoMCgUFAAIAARIDIQIMCgwKBQUAAgACEgMhDxAKCwoEBQACARIDIgIRCgwKBQUAAgEBEgMiAgwKDAoFBQACAQISAyIPEAoLCgQFAAICEgMjAhEKDAoFBQACAgESAyMCDAoMCgUFAAICAhIDIw8QCkgKAgUBEgQnACsBGjwgVG8gdXNlIGFuIGVudW0gaW4gYSBtYXAsIGl0IG11c3QgaGFzIHRoZSBmaXJzdCB2YWx1ZSBhcyAwLgoKCgoDBQEBEgMnBRUKCwoEBQECABIDKAIOCgwKBQUBAgABEgMoAgkKDAoFBQECAAISAygMDQoLCgQFAQIBEgMpAgoKDAoFBQECAQESAykCBQoMCgUFAQIBAhIDKQgJCgsKBAUBAgISAyoCCgoMCgUFAQICARIDKgIFCgwKBQUBAgICEgMqCAlQAArDxwUKHGNzaGFycC9wcm90b3MvdW5pdHRlc3QucHJvdG8SGHByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMhojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnQucHJvdG8ikSQKDFRlc3RBbGxUeXBlcxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxJaCg1vcHRpb25hbGdyb3VwGBAgASgKMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5PcHRpb25hbEdyb3VwUg1vcHRpb25hbGdyb3VwEmwKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USYgoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEmYKF29wdGlvbmFsX2ltcG9ydF9tZXNzYWdlGBQgASgLMi4ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRNZXNzYWdlUhVvcHRpb25hbEltcG9ydE1lc3NhZ2USYwoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJZChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SE29wdGlvbmFsRm9yZWlnbkVudW0SXQoUb3B0aW9uYWxfaW1wb3J0X2VudW0YFyABKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW1SEm9wdGlvbmFsSW1wb3J0RW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSeQoeb3B0aW9uYWxfcHVibGljX2ltcG9ydF9tZXNzYWdlGBogASgLMjQucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5QdWJsaWNJbXBvcnRNZXNzYWdlUhtvcHRpb25hbFB1YmxpY0ltcG9ydE1lc3NhZ2USbAoVb3B0aW9uYWxfbGF6eV9tZXNzYWdlGBsgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlQgIoAVITb3B0aW9uYWxMYXp5TWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJaCg1yZXBlYXRlZGdyb3VwGC4gAygKMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5SZXBlYXRlZEdyb3VwUg1yZXBlYXRlZGdyb3VwEmwKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USYgoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEmYKF3JlcGVhdGVkX2ltcG9ydF9tZXNzYWdlGDIgAygLMi4ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRNZXNzYWdlUhVyZXBlYXRlZEltcG9ydE1lc3NhZ2USYwoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJZChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SXQoUcmVwZWF0ZWRfaW1wb3J0X2VudW0YNSADKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW1SEnJlcGVhdGVkSW1wb3J0RW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSbAoVcmVwZWF0ZWRfbGF6eV9tZXNzYWdlGDkgAygLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlQgIoAVITcmVwZWF0ZWRMYXp5TWVzc2FnZRInCg1kZWZhdWx0X2ludDMyGD0gASgFOgI0MVIMZGVmYXVsdEludDMyEicKDWRlZmF1bHRfaW50NjQYPiABKAM6AjQyUgxkZWZhdWx0SW50NjQSKQoOZGVmYXVsdF91aW50MzIYPyABKA06AjQzUg1kZWZhdWx0VWludDMyEikKDmRlZmF1bHRfdWludDY0GEAgASgEOgI0NFINZGVmYXVsdFVpbnQ2NBIqCg5kZWZhdWx0X3NpbnQzMhhBIAEoEToDLTQ1Ug1kZWZhdWx0U2ludDMyEikKDmRlZmF1bHRfc2ludDY0GEIgASgSOgI0NlINZGVmYXVsdFNpbnQ2NBIrCg9kZWZhdWx0X2ZpeGVkMzIYQyABKAc6AjQ3Ug5kZWZhdWx0Rml4ZWQzMhIrCg9kZWZhdWx0X2ZpeGVkNjQYRCABKAY6AjQ4Ug5kZWZhdWx0Rml4ZWQ2NBItChBkZWZhdWx0X3NmaXhlZDMyGEUgASgPOgI0OVIPZGVmYXVsdFNmaXhlZDMyEi4KEGRlZmF1bHRfc2ZpeGVkNjQYRiABKBA6Ay01MFIPZGVmYXVsdFNmaXhlZDY0EikKDWRlZmF1bHRfZmxvYXQYRyABKAI6BDUxLjVSDGRlZmF1bHRGbG9hdBIsCg5kZWZhdWx0X2RvdWJsZRhIIAEoAToFNTIwMDBSDWRlZmF1bHREb3VibGUSJwoMZGVmYXVsdF9ib29sGEkgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIsCg5kZWZhdWx0X3N0cmluZxhKIAEoCToFaGVsbG9SDWRlZmF1bHRTdHJpbmcSKgoNZGVmYXVsdF9ieXRlcxhLIAEoDDoFd29ybGRSDGRlZmF1bHRCeXRlcxJmChNkZWZhdWx0X25lc3RlZF9lbnVtGFEgASgOMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtOgNCQVJSEWRlZmF1bHROZXN0ZWRFbnVtEmQKFGRlZmF1bHRfZm9yZWlnbl9lbnVtGFIgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtOgtGT1JFSUdOX0JBUlISZGVmYXVsdEZvcmVpZ25FbnVtEmcKE2RlZmF1bHRfaW1wb3J0X2VudW0YUyABKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW06CklNUE9SVF9CQVJSEWRlZmF1bHRJbXBvcnRFbnVtEjkKFGRlZmF1bHRfc3RyaW5nX3BpZWNlGFQgASgJOgNhYmNCAggCUhJkZWZhdWx0U3RyaW5nUGllY2USKgoMZGVmYXVsdF9jb3JkGFUgASgJOgMxMjNCAggBUgtkZWZhdWx0Q29yZBIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISaAoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyNC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzGh8KDU5lc3RlZE1lc3NhZ2USDgoCYmIYASABKAVSAmJiGh0KDU9wdGlvbmFsR3JvdXASDAoBYRgRIAEoBVIBYRodCg1SZXBlYXRlZEdyb3VwEgwKAWEYLyABKAVSAWEiOQoKTmVzdGVkRW51bRIHCgNGT08QARIHCgNCQVIQAhIHCgNCQVoQAxIQCgNORUcQ////////////AUINCgtvbmVvZl9maWVsZCLvAQoSTmVzdGVkVGVzdEFsbFR5cGVzEkIKBWNoaWxkGAEgASgLMiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLk5lc3RlZFRlc3RBbGxUeXBlc1IFY2hpbGQSQAoHcGF5bG9hZBgCIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSB3BheWxvYWQSUwoOcmVwZWF0ZWRfY2hpbGQYAyADKAsyLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuTmVzdGVkVGVzdEFsbFR5cGVzUg1yZXBlYXRlZENoaWxkIpYBChRUZXN0RGVwcmVjYXRlZEZpZWxkcxItChBkZXByZWNhdGVkX2ludDMyGAEgASgFQgIYAVIPZGVwcmVjYXRlZEludDMyEj8KGWRlcHJlY2F0ZWRfaW50MzJfaW5fb25lb2YYAiABKAVCAhgBSABSFmRlcHJlY2F0ZWRJbnQzMkluT25lb2ZCDgoMb25lb2ZfZmllbGRzIhsKFVRlc3REZXByZWNhdGVkTWVzc2FnZToCGAEiLAoORm9yZWlnbk1lc3NhZ2USDAoBYxgBIAEoBVIBYxIMCgFkGAIgASgFUgFkIjAKElRlc3RSZXNlcnZlZEZpZWxkc0oECAIQA0oECA8QEEoECAkQDFIDYmFyUgNiYXoiHQoRVGVzdEFsbEV4dGVuc2lvbnMqCAgBEICAgIACIicKF09wdGlvbmFsR3JvdXBfZXh0ZW5zaW9uEgwKAWEYESABKAVSAWEiJwoXUmVwZWF0ZWRHcm91cF9leHRlbnNpb24SDAoBYRgvIAEoBVIBYSLeAQoJVGVzdEdyb3VwElcKDW9wdGlvbmFsZ3JvdXAYECABKAoyMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEdyb3VwLk9wdGlvbmFsR3JvdXBSDW9wdGlvbmFsZ3JvdXASWQoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtUhNvcHRpb25hbEZvcmVpZ25FbnVtGh0KDU9wdGlvbmFsR3JvdXASDAoBYRgRIAEoBVIBYSIeChJUZXN0R3JvdXBFeHRlbnNpb24qCAgBEICAgIACIrgEChNUZXN0TmVzdGVkRXh0ZW5zaW9uGicKF09wdGlvbmFsR3JvdXBfZXh0ZW5zaW9uEgwKAWEYESABKAVSAWEyRgoEdGVzdBIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxjqByABKAk6BHRlc3RSBHRlc3QyZAoXbmVzdGVkX3N0cmluZ19leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMY6wcgASgJUhVuZXN0ZWRTdHJpbmdFeHRlbnNpb24yrAEKF29wdGlvbmFsZ3JvdXBfZXh0ZW5zaW9uEiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RHcm91cEV4dGVuc2lvbhgQIAEoCjJFLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0TmVzdGVkRXh0ZW5zaW9uLk9wdGlvbmFsR3JvdXBfZXh0ZW5zaW9uUhZvcHRpb25hbGdyb3VwRXh0ZW5zaW9uMpoBCh9vcHRpb25hbF9mb3JlaWduX2VudW1fZXh0ZW5zaW9uEiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RHcm91cEV4dGVuc2lvbhgWIAEoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bVIcb3B0aW9uYWxGb3JlaWduRW51bUV4dGVuc2lvbiKQCAoMVGVzdFJlcXVpcmVkEgwKAWEYASACKAVSAWESFgoGZHVtbXkyGAIgASgFUgZkdW1teTISDAoBYhgDIAIoBVIBYhIWCgZkdW1teTQYBCABKAVSBmR1bW15NBIWCgZkdW1teTUYBSABKAVSBmR1bW15NRIWCgZkdW1teTYYBiABKAVSBmR1bW15NhIWCgZkdW1teTcYByABKAVSBmR1bW15NxIWCgZkdW1teTgYCCABKAVSBmR1bW15OBIWCgZkdW1teTkYCSABKAVSBmR1bW15ORIYCgdkdW1teTEwGAogASgFUgdkdW1teTEwEhgKB2R1bW15MTEYCyABKAVSB2R1bW15MTESGAoHZHVtbXkxMhgMIAEoBVIHZHVtbXkxMhIYCgdkdW1teTEzGA0gASgFUgdkdW1teTEzEhgKB2R1bW15MTQYDiABKAVSB2R1bW15MTQSGAoHZHVtbXkxNRgPIAEoBVIHZHVtbXkxNRIYCgdkdW1teTE2GBAgASgFUgdkdW1teTE2EhgKB2R1bW15MTcYESABKAVSB2R1bW15MTcSGAoHZHVtbXkxOBgSIAEoBVIHZHVtbXkxOBIYCgdkdW1teTE5GBMgASgFUgdkdW1teTE5EhgKB2R1bW15MjAYFCABKAVSB2R1bW15MjASGAoHZHVtbXkyMRgVIAEoBVIHZHVtbXkyMRIYCgdkdW1teTIyGBYgASgFUgdkdW1teTIyEhgKB2R1bW15MjMYFyABKAVSB2R1bW15MjMSGAoHZHVtbXkyNBgYIAEoBVIHZHVtbXkyNBIYCgdkdW1teTI1GBkgASgFUgdkdW1teTI1EhgKB2R1bW15MjYYGiABKAVSB2R1bW15MjYSGAoHZHVtbXkyNxgbIAEoBVIHZHVtbXkyNxIYCgdkdW1teTI4GBwgASgFUgdkdW1teTI4EhgKB2R1bW15MjkYHSABKAVSB2R1bW15MjkSGAoHZHVtbXkzMBgeIAEoBVIHZHVtbXkzMBIYCgdkdW1teTMxGB8gASgFUgdkdW1teTMxEhgKB2R1bW15MzIYICABKAVSB2R1bW15MzISDAoBYxghIAIoBVIBYzJsCgZzaW5nbGUSKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMY6AcgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZFIGc2luZ2xlMmoKBW11bHRpEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGOkHIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRSBW11bHRpItEBChNUZXN0UmVxdWlyZWRGb3JlaWduElEKEG9wdGlvbmFsX21lc3NhZ2UYASABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFJlcXVpcmVkUg9vcHRpb25hbE1lc3NhZ2USUQoQcmVwZWF0ZWRfbWVzc2FnZRgCIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRSD3JlcGVhdGVkTWVzc2FnZRIUCgVkdW1teRgDIAEoBVIFZHVtbXkijgIKE1Rlc3RSZXF1aXJlZE1lc3NhZ2USUQoQb3B0aW9uYWxfbWVzc2FnZRgBIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRSD29wdGlvbmFsTWVzc2FnZRJRChByZXBlYXRlZF9tZXNzYWdlGAIgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZFIPcmVwZWF0ZWRNZXNzYWdlElEKEHJlcXVpcmVkX21lc3NhZ2UYAyACKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFJlcXVpcmVkUg9yZXF1aXJlZE1lc3NhZ2UicAoRVGVzdEZvcmVpZ25OZXN0ZWQSWwoOZm9yZWlnbl9uZXN0ZWQYASABKAsyNC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VSDWZvcmVpZ25OZXN0ZWQiEgoQVGVzdEVtcHR5TWVzc2FnZSIqCh5UZXN0RW1wdHlNZXNzYWdlV2l0aEV4dGVuc2lvbnMqCAgBEICAgIACIjcKG1Rlc3RNdWx0aXBsZUV4dGVuc2lvblJhbmdlcyoECCoQKyoGCK8gEJQhKgoIgIAEEICAgIACIjsKGFRlc3RSZWFsbHlMYXJnZVRhZ051bWJlchIMCgFhGAEgASgFUgFhEhEKAmJiGP///38gASgFUgJiYiJiChRUZXN0UmVjdXJzaXZlTWVzc2FnZRI8CgFhGAEgASgLMi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZWN1cnNpdmVNZXNzYWdlUgFhEgwKAWkYAiABKAVSAWkirwMKFFRlc3RNdXR1YWxSZWN1cnNpb25BEj4KAmJiGAEgASgLMi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RNdXR1YWxSZWN1cnNpb25CUgJiYhJTCghzdWJncm91cBgCIAEoCjI3LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0TXV0dWFsUmVjdXJzaW9uQS5TdWJHcm91cFIIc3ViZ3JvdXAaSgoKU3ViTWVzc2FnZRI8CgFiGAEgASgLMi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RNdXR1YWxSZWN1cnNpb25CUgFiGrUBCghTdWJHcm91cBJaCgtzdWJfbWVzc2FnZRgDIAEoCzI5LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0TXV0dWFsUmVjdXJzaW9uQS5TdWJNZXNzYWdlUgpzdWJNZXNzYWdlEk0KD25vdF9pbl90aGlzX3NjYxgEIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSDG5vdEluVGhpc1NjYyJ7ChRUZXN0TXV0dWFsUmVjdXJzaW9uQhI8CgFhGAEgASgLMi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RNdXR1YWxSZWN1cnNpb25BUgFhEiUKDm9wdGlvbmFsX2ludDMyGAIgASgFUg1vcHRpb25hbEludDMyIvIBChFUZXN0SXNJbml0aWFsaXplZBJXCgtzdWJfbWVzc2FnZRgBIAEoCzI2LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0SXNJbml0aWFsaXplZC5TdWJNZXNzYWdlUgpzdWJNZXNzYWdlGoMBCgpTdWJNZXNzYWdlElsKCHN1Ymdyb3VwGAEgASgKMj8ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RJc0luaXRpYWxpemVkLlN1Yk1lc3NhZ2UuU3ViR3JvdXBSCHN1Ymdyb3VwGhgKCFN1Ykdyb3VwEgwKAWkYAiACKAVSAWki1AEKElRlc3REdXBGaWVsZE51bWJlchIMCgFhGAEgASgFUgFhEkIKA2ZvbxgCIAEoCjIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RHVwRmllbGROdW1iZXIuRm9vUgNmb28SQgoDYmFyGAMgASgKMjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3REdXBGaWVsZE51bWJlci5CYXJSA2JhchoTCgNGb28SDAoBYRgBIAEoBVIBYRoTCgNCYXISDAoBYRgBIAEoBVIBYSJfChBUZXN0RWFnZXJNZXNzYWdlEksKC3N1Yl9tZXNzYWdlGAEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc0ICKABSCnN1Yk1lc3NhZ2UiXgoPVGVzdExhenlNZXNzYWdlEksKC3N1Yl9tZXNzYWdlGAEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc0ICKAFSCnN1Yk1lc3NhZ2Ui5gIKGFRlc3ROZXN0ZWRNZXNzYWdlSGFzQml0cxJ4ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgBIAEoCzJALnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0TmVzdGVkTWVzc2FnZUhhc0JpdHMuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlGs8BCg1OZXN0ZWRNZXNzYWdlEkAKHG5lc3RlZG1lc3NhZ2VfcmVwZWF0ZWRfaW50MzIYASADKAVSGm5lc3RlZG1lc3NhZ2VSZXBlYXRlZEludDMyEnwKJW5lc3RlZG1lc3NhZ2VfcmVwZWF0ZWRfZm9yZWlnbm1lc3NhZ2UYAiADKAsyKC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbk1lc3NhZ2VSI25lc3RlZG1lc3NhZ2VSZXBlYXRlZEZvcmVpZ25tZXNzYWdlItcFChdUZXN0Q2FtZWxDYXNlRmllbGROYW1lcxImCg5QcmltaXRpdmVGaWVsZBgBIAEoBVIOUHJpbWl0aXZlRmllbGQSIAoLU3RyaW5nRmllbGQYAiABKAlSC1N0cmluZ0ZpZWxkEkMKCUVudW1GaWVsZBgDIAEoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bVIJRW51bUZpZWxkEkwKDE1lc3NhZ2VGaWVsZBgEIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduTWVzc2FnZVIMTWVzc2FnZUZpZWxkEi4KEFN0cmluZ1BpZWNlRmllbGQYBSABKAlCAggCUhBTdHJpbmdQaWVjZUZpZWxkEiAKCUNvcmRGaWVsZBgGIAEoCUICCAFSCUNvcmRGaWVsZBI2ChZSZXBlYXRlZFByaW1pdGl2ZUZpZWxkGAcgAygFUhZSZXBlYXRlZFByaW1pdGl2ZUZpZWxkEjAKE1JlcGVhdGVkU3RyaW5nRmllbGQYCCADKAlSE1JlcGVhdGVkU3RyaW5nRmllbGQSUwoRUmVwZWF0ZWRFbnVtRmllbGQYCSADKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SEVJlcGVhdGVkRW51bUZpZWxkElwKFFJlcGVhdGVkTWVzc2FnZUZpZWxkGAogAygLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUhRSZXBlYXRlZE1lc3NhZ2VGaWVsZBI+ChhSZXBlYXRlZFN0cmluZ1BpZWNlRmllbGQYCyADKAlCAggCUhhSZXBlYXRlZFN0cmluZ1BpZWNlRmllbGQSMAoRUmVwZWF0ZWRDb3JkRmllbGQYDCADKAlCAggBUhFSZXBlYXRlZENvcmRGaWVsZCKVAgoSVGVzdEZpZWxkT3JkZXJpbmdzEhsKCW15X3N0cmluZxgLIAEoCVIIbXlTdHJpbmcSFQoGbXlfaW50GAEgASgDUgVteUludBIZCghteV9mbG9hdBhlIAEoAlIHbXlGbG9hdBJzChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRjIASABKAsyOi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEZpZWxkT3JkZXJpbmdzLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRovCg1OZXN0ZWRNZXNzYWdlEg4KAm9vGAIgASgDUgJvbxIOCgJiYhgBIAEoBVICYmIqBAgCEAsqBAgMEGUiyAEKF1Rlc3RFeHRlbnNpb25PcmRlcmluZ3MxEhsKCW15X3N0cmluZxgBIAEoCVIIbXlTdHJpbmcyjwEKE3Rlc3RfZXh0X29yZGVyaW5nczESLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEZpZWxkT3JkZXJpbmdzGA0gASgLMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RFeHRlbnNpb25PcmRlcmluZ3MxUhF0ZXN0RXh0T3JkZXJpbmdzMSKrAwoXVGVzdEV4dGVuc2lvbk9yZGVyaW5nczISGwoJbXlfc3RyaW5nGAEgASgJUghteVN0cmluZxrgAQoXVGVzdEV4dGVuc2lvbk9yZGVyaW5nczMSGwoJbXlfc3RyaW5nGAEgASgJUghteVN0cmluZzKnAQoTdGVzdF9leHRfb3JkZXJpbmdzMxIsLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RmllbGRPcmRlcmluZ3MYDiABKAsySS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEV4dGVuc2lvbk9yZGVyaW5nczIuVGVzdEV4dGVuc2lvbk9yZGVyaW5nczNSEXRlc3RFeHRPcmRlcmluZ3MzMo8BChN0ZXN0X2V4dF9vcmRlcmluZ3MyEiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RGaWVsZE9yZGVyaW5ncxgMIAEoCzIxLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RXh0ZW5zaW9uT3JkZXJpbmdzMlIRdGVzdEV4dE9yZGVyaW5nczIirwoKGFRlc3RFeHRyZW1lRGVmYXVsdFZhbHVlcxJNCg1lc2NhcGVkX2J5dGVzGAEgASgMOihcMDAwXDAwMVwwMDdcMDEwXDAxNFxuXHJcdFwwMTNcXFwnXCJcMzc2Ugxlc2NhcGVkQnl0ZXMSLQoMbGFyZ2VfdWludDMyGAIgASgNOgo0Mjk0OTY3Mjk1UgtsYXJnZVVpbnQzMhI3CgxsYXJnZV91aW50NjQYAyABKAQ6FDE4NDQ2NzQ0MDczNzA5NTUxNjE1UgtsYXJnZVVpbnQ2NBIsCgtzbWFsbF9pbnQzMhgEIAEoBToLLTIxNDc0ODM2NDdSCnNtYWxsSW50MzISNQoLc21hbGxfaW50NjQYBSABKAM6FC05MjIzMzcyMDM2ODU0Nzc1ODA3UgpzbWFsbEludDY0EjkKEnJlYWxseV9zbWFsbF9pbnQzMhgVIAEoBToLLTIxNDc0ODM2NDhSEHJlYWxseVNtYWxsSW50MzISQgoScmVhbGx5X3NtYWxsX2ludDY0GBYgASgDOhQtOTIyMzM3MjAzNjg1NDc3NTgwOFIQcmVhbGx5U21hbGxJbnQ2NBIkCgt1dGY4X3N0cmluZxgGIAEoCToD4Yi0Ugp1dGY4U3RyaW5nEiAKCnplcm9fZmxvYXQYByABKAI6ATBSCXplcm9GbG9hdBIeCglvbmVfZmxvYXQYCCABKAI6ATFSCG9uZUZsb2F0EiQKC3NtYWxsX2Zsb2F0GAkgASgCOgMxLjVSCnNtYWxsRmxvYXQSMAoSbmVnYXRpdmVfb25lX2Zsb2F0GAogASgCOgItMVIQbmVnYXRpdmVPbmVGbG9hdBIrCg5uZWdhdGl2ZV9mbG9hdBgLIAEoAjoELTEuNVINbmVnYXRpdmVGbG9hdBImCgtsYXJnZV9mbG9hdBgMIAEoAjoFMmUrMDhSCmxhcmdlRmxvYXQSOAoUc21hbGxfbmVnYXRpdmVfZmxvYXQYDSABKAI6Bi04ZS0yOFISc21hbGxOZWdhdGl2ZUZsb2F0EiIKCmluZl9kb3VibGUYDiABKAE6A2luZlIJaW5mRG91YmxlEioKDm5lZ19pbmZfZG91YmxlGA8gASgBOgQtaW5mUgxuZWdJbmZEb3VibGUSIgoKbmFuX2RvdWJsZRgQIAEoAToDbmFuUgluYW5Eb3VibGUSIAoJaW5mX2Zsb2F0GBEgASgCOgNpbmZSCGluZkZsb2F0EigKDW5lZ19pbmZfZmxvYXQYEiABKAI6BC1pbmZSC25lZ0luZkZsb2F0EiAKCW5hbl9mbG9hdBgTIAEoAjoDbmFuUghuYW5GbG9hdBI4CgxjcHBfdHJpZ3JhcGgYFCABKAk6FT8gPyA/PyA/PyA/Pz8gPz8vID8/LVILY3BwVHJpZ3JhcGgSMAoQc3RyaW5nX3dpdGhfemVybxgXIAEoCToGaGVsAGxvUg5zdHJpbmdXaXRoWmVybxIxCg9ieXRlc193aXRoX3plcm8YGCABKAw6CXdvclwwMDBsZFINYnl0ZXNXaXRoWmVybxI9ChZzdHJpbmdfcGllY2Vfd2l0aF96ZXJvGBkgASgJOgRhYgBjQgIIAlITc3RyaW5nUGllY2VXaXRoWmVybxIuCg5jb3JkX3dpdGhfemVybxgaIAEoCToEMTIAM0ICCAFSDGNvcmRXaXRoWmVybxI5ChJyZXBsYWNlbWVudF9zdHJpbmcYGyABKAk6CiR7dW5rbm93bn1SEXJlcGxhY2VtZW50U3RyaW5nIl4KEVNwYXJzZUVudW1NZXNzYWdlEkkKC3NwYXJzZV9lbnVtGAEgASgOMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RTcGFyc2VFbnVtUgpzcGFyc2VFbnVtIh8KCU9uZVN0cmluZxISCgRkYXRhGAEgASgJUgRkYXRhIiAKCk1vcmVTdHJpbmcSEgoEZGF0YRgBIAMoCVIEZGF0YSIeCghPbmVCeXRlcxISCgRkYXRhGAEgASgMUgRkYXRhIh8KCU1vcmVCeXRlcxISCgRkYXRhGAEgAygMUgRkYXRhIiIKDEludDMyTWVzc2FnZRISCgRkYXRhGAEgASgFUgRkYXRhIiMKDVVpbnQzMk1lc3NhZ2USEgoEZGF0YRgBIAEoDVIEZGF0YSIiCgxJbnQ2NE1lc3NhZ2USEgoEZGF0YRgBIAEoA1IEZGF0YSIjCg1VaW50NjRNZXNzYWdlEhIKBGRhdGEYASABKARSBGRhdGEiIQoLQm9vbE1lc3NhZ2USEgoEZGF0YRgBIAEoCFIEZGF0YSKNAgoJVGVzdE9uZW9mEhkKB2Zvb19pbnQYASABKAVIAFIGZm9vSW50Eh8KCmZvb19zdHJpbmcYAiABKAlIAFIJZm9vU3RyaW5nEkkKC2Zvb19tZXNzYWdlGAMgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc0gAUgpmb29NZXNzYWdlEkoKCGZvb2dyb3VwGAQgASgKMiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RPbmVvZi5Gb29Hcm91cEgAUghmb29ncm91cBomCghGb29Hcm91cBIMCgFhGAUgASgFUgFhEgwKAWIYBiABKAlSAWJCBQoDZm9vIqQCChxUZXN0T25lb2ZCYWNrd2FyZHNDb21wYXRpYmxlEhcKB2Zvb19pbnQYASABKAVSBmZvb0ludBIdCgpmb29fc3RyaW5nGAIgASgJUglmb29TdHJpbmcSRwoLZm9vX21lc3NhZ2UYAyABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUgpmb29NZXNzYWdlElsKCGZvb2dyb3VwGAQgASgKMj8ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RPbmVvZkJhY2t3YXJkc0NvbXBhdGlibGUuRm9vR3JvdXBSCGZvb2dyb3VwGiYKCEZvb0dyb3VwEgwKAWEYBSABKAVSAWESDAoBYhgGIAEoCVIBYiKQCAoKVGVzdE9uZW9mMhIZCgdmb29faW50GAEgASgFSABSBmZvb0ludBIfCgpmb29fc3RyaW5nGAIgASgJSABSCWZvb1N0cmluZxIfCghmb29fY29yZBgDIAEoCUICCAFIAFIHZm9vQ29yZBIuChBmb29fc3RyaW5nX3BpZWNlGAQgASgJQgIIAkgAUg5mb29TdHJpbmdQaWVjZRIdCglmb29fYnl0ZXMYBSABKAxIAFIIZm9vQnl0ZXMSTAoIZm9vX2VudW0YBiABKA4yLy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mMi5OZXN0ZWRFbnVtSABSB2Zvb0VudW0SVQoLZm9vX21lc3NhZ2UYByABKAsyMi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mMi5OZXN0ZWRNZXNzYWdlSABSCmZvb01lc3NhZ2USSwoIZm9vZ3JvdXAYCCABKAoyLS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mMi5Gb29Hcm91cEgAUghmb29ncm91cBJiChBmb29fbGF6eV9tZXNzYWdlGAsgASgLMjIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RPbmVvZjIuTmVzdGVkTWVzc2FnZUICKAFIAFIOZm9vTGF6eU1lc3NhZ2USHAoHYmFyX2ludBgMIAEoBToBNUgBUgZiYXJJbnQSJwoKYmFyX3N0cmluZxgNIAEoCToGU1RSSU5HSAFSCWJhclN0cmluZxIlCghiYXJfY29yZBgOIAEoCToEQ09SREICCAFIAVIHYmFyQ29yZBI2ChBiYXJfc3RyaW5nX3BpZWNlGA8gASgJOgZTUElFQ0VCAggCSAFSDmJhclN0cmluZ1BpZWNlEiQKCWJhcl9ieXRlcxgQIAEoDDoFQllURVNIAVIIYmFyQnl0ZXMSUQoIYmFyX2VudW0YESABKA4yLy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mMi5OZXN0ZWRFbnVtOgNCQVJIAVIHYmFyRW51bRIXCgdiYXpfaW50GBIgASgFUgZiYXpJbnQSIgoKYmF6X3N0cmluZxgTIAEoCToDQkFaUgliYXpTdHJpbmcaJgoIRm9vR3JvdXASDAoBYRgJIAEoBVIBYRIMCgFiGAogASgJUgFiGkUKDU5lc3RlZE1lc3NhZ2USFwoHcXV4X2ludBgBIAEoA1IGcXV4SW50EhsKCWNvcmdlX2ludBgCIAMoBVIIY29yZ2VJbnQiJwoKTmVzdGVkRW51bRIHCgNGT08QARIHCgNCQVIQAhIHCgNCQVoQA0IFCgNmb29CBQoDYmFyIu4BChFUZXN0UmVxdWlyZWRPbmVvZhIZCgdmb29faW50GAEgASgFSABSBmZvb0ludBIfCgpmb29fc3RyaW5nGAIgASgJSABSCWZvb1N0cmluZxJcCgtmb29fbWVzc2FnZRgDIAEoCzI5LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRPbmVvZi5OZXN0ZWRNZXNzYWdlSABSCmZvb01lc3NhZ2UaOAoNTmVzdGVkTWVzc2FnZRInCg9yZXF1aXJlZF9kb3VibGUYASACKAFSDnJlcXVpcmVkRG91YmxlQgUKA2ZvbyKAAgoPVGVzdFJlcXVpcmVkTWFwEkQKA2ZvbxgBIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRNYXAuRm9vRW50cnlSA2ZvbxpvCghGb29FbnRyeRIQCgNrZXkYASABKAVSA2tleRJNCgV2YWx1ZRgCIAEoCzI3LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRNYXAuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGjYKDU5lc3RlZE1lc3NhZ2USJQoOcmVxdWlyZWRfaW50MzIYASACKAVSDXJlcXVpcmVkSW50MzIi9AQKD1Rlc3RQYWNrZWRUeXBlcxIlCgxwYWNrZWRfaW50MzIYWiADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYWyADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGFwgAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYXSADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhheIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GF8gAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGGAgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhhIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGGIgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GGMgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GGQgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhlIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhmIAMoCEICEAFSCnBhY2tlZEJvb2wSSgoLcGFja2VkX2VudW0YZyADKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1CAhABUgpwYWNrZWRFbnVtIq4FChFUZXN0VW5wYWNrZWRUeXBlcxIpCg51bnBhY2tlZF9pbnQzMhhaIAMoBUICEABSDXVucGFja2VkSW50MzISKQoOdW5wYWNrZWRfaW50NjQYWyADKANCAhAAUg11bnBhY2tlZEludDY0EisKD3VucGFja2VkX3VpbnQzMhhcIAMoDUICEABSDnVucGFja2VkVWludDMyEisKD3VucGFja2VkX3VpbnQ2NBhdIAMoBEICEABSDnVucGFja2VkVWludDY0EisKD3VucGFja2VkX3NpbnQzMhheIAMoEUICEABSDnVucGFja2VkU2ludDMyEisKD3VucGFja2VkX3NpbnQ2NBhfIAMoEkICEABSDnVucGFja2VkU2ludDY0Ei0KEHVucGFja2VkX2ZpeGVkMzIYYCADKAdCAhAAUg91bnBhY2tlZEZpeGVkMzISLQoQdW5wYWNrZWRfZml4ZWQ2NBhhIAMoBkICEABSD3VucGFja2VkRml4ZWQ2NBIvChF1bnBhY2tlZF9zZml4ZWQzMhhiIAMoD0ICEABSEHVucGFja2VkU2ZpeGVkMzISLwoRdW5wYWNrZWRfc2ZpeGVkNjQYYyADKBBCAhAAUhB1bnBhY2tlZFNmaXhlZDY0EikKDnVucGFja2VkX2Zsb2F0GGQgAygCQgIQAFINdW5wYWNrZWRGbG9hdBIrCg91bnBhY2tlZF9kb3VibGUYZSADKAFCAhAAUg51bnBhY2tlZERvdWJsZRInCg11bnBhY2tlZF9ib29sGGYgAygIQgIQAFIMdW5wYWNrZWRCb29sEk4KDXVucGFja2VkX2VudW0YZyADKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1CAhAAUgx1bnBhY2tlZEVudW0iIAoUVGVzdFBhY2tlZEV4dGVuc2lvbnMqCAgBEICAgIACIiIKFlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMqCAgBEICAgIACIsgFChVUZXN0RHluYW1pY0V4dGVuc2lvbnMSKgoQc2NhbGFyX2V4dGVuc2lvbhjQDyABKAdSD3NjYWxhckV4dGVuc2lvbhJNCg5lbnVtX2V4dGVuc2lvbhjRDyABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SDWVudW1FeHRlbnNpb24SdgoWZHluYW1pY19lbnVtX2V4dGVuc2lvbhjSDyABKA4yPy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdER5bmFtaWNFeHRlbnNpb25zLkR5bmFtaWNFbnVtVHlwZVIUZHluYW1pY0VudW1FeHRlbnNpb24SVgoRbWVzc2FnZV9leHRlbnNpb24Y0w8gASgLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUhBtZXNzYWdlRXh0ZW5zaW9uEn8KGWR5bmFtaWNfbWVzc2FnZV9leHRlbnNpb24Y1A8gASgLMkIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3REeW5hbWljRXh0ZW5zaW9ucy5EeW5hbWljTWVzc2FnZVR5cGVSF2R5bmFtaWNNZXNzYWdlRXh0ZW5zaW9uEi4KEnJlcGVhdGVkX2V4dGVuc2lvbhjVDyADKAlSEXJlcGVhdGVkRXh0ZW5zaW9uEi4KEHBhY2tlZF9leHRlbnNpb24Y1g8gAygRQgIQAVIPcGFja2VkRXh0ZW5zaW9uGjoKEkR5bmFtaWNNZXNzYWdlVHlwZRIkCg1keW5hbWljX2ZpZWxkGLQQIAEoBVIMZHluYW1pY0ZpZWxkIkcKD0R5bmFtaWNFbnVtVHlwZRIQCgtEWU5BTUlDX0ZPTxCYERIQCgtEWU5BTUlDX0JBUhCZERIQCgtEWU5BTUlDX0JBWhCaESKfAgojVGVzdFJlcGVhdGVkU2NhbGFyRGlmZmVyZW50VGFnU2l6ZXMSKQoQcmVwZWF0ZWRfZml4ZWQzMhgMIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEiUKDnJlcGVhdGVkX2ludDMyGA0gAygFUg1yZXBlYXRlZEludDMyEioKEHJlcGVhdGVkX2ZpeGVkNjQY/g8gAygGUg9yZXBlYXRlZEZpeGVkNjQSJgoOcmVwZWF0ZWRfaW50NjQY/w8gAygDUg1yZXBlYXRlZEludDY0EicKDnJlcGVhdGVkX2Zsb2F0GP7/DyADKAJSDXJlcGVhdGVkRmxvYXQSKQoPcmVwZWF0ZWRfdWludDY0GP//DyADKARSDnJlcGVhdGVkVWludDY0IuMMChBUZXN0UGFyc2luZ01lcmdlElQKEnJlcXVpcmVkX2FsbF90eXBlcxgBIAIoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSEHJlcXVpcmVkQWxsVHlwZXMSVAoSb3B0aW9uYWxfYWxsX3R5cGVzGAIgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IQb3B0aW9uYWxBbGxUeXBlcxJUChJyZXBlYXRlZF9hbGxfdHlwZXMYAyADKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUhByZXBlYXRlZEFsbFR5cGVzEl4KDW9wdGlvbmFsZ3JvdXAYCiABKAoyOC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhcnNpbmdNZXJnZS5PcHRpb25hbEdyb3VwUg1vcHRpb25hbGdyb3VwEl4KDXJlcGVhdGVkZ3JvdXAYFCADKAoyOC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhcnNpbmdNZXJnZS5SZXBlYXRlZEdyb3VwUg1yZXBlYXRlZGdyb3VwGq0FChdSZXBlYXRlZEZpZWxkc0dlbmVyYXRvchI+CgZmaWVsZDEYASADKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUgZmaWVsZDESPgoGZmllbGQyGAIgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IGZmllbGQyEj4KBmZpZWxkMxgDIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSBmZpZWxkMxJhCgZncm91cDEYCiADKAoySS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhcnNpbmdNZXJnZS5SZXBlYXRlZEZpZWxkc0dlbmVyYXRvci5Hcm91cDFSBmdyb3VwMRJhCgZncm91cDIYFCADKAoySS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhcnNpbmdNZXJnZS5SZXBlYXRlZEZpZWxkc0dlbmVyYXRvci5Hcm91cDJSBmdyb3VwMhI7CgRleHQxGOgHIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSBGV4dDESOwoEZXh0MhjpByADKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUgRleHQyGkgKBkdyb3VwMRI+CgZmaWVsZDEYCyABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUgZmaWVsZDEaSAoGR3JvdXAyEj4KBmZpZWxkMRgVIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSBmZpZWxkMRpwCg1PcHRpb25hbEdyb3VwEl8KGG9wdGlvbmFsX2dyb3VwX2FsbF90eXBlcxgLIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSFW9wdGlvbmFsR3JvdXBBbGxUeXBlcxpwCg1SZXBlYXRlZEdyb3VwEl8KGHJlcGVhdGVkX2dyb3VwX2FsbF90eXBlcxgVIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSFXJlcGVhdGVkR3JvdXBBbGxUeXBlcyoJCOgHEICAgIACMnYKDG9wdGlvbmFsX2V4dBIqLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFyc2luZ01lcmdlGOgHIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSC29wdGlvbmFsRXh0MnYKDHJlcGVhdGVkX2V4dBIqLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFyc2luZ01lcmdlGOkHIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSC3JlcGVhdGVkRXh0IkcKG1Rlc3RDb21tZW50SW5qZWN0aW9uTWVzc2FnZRIoCgFhGAEgASgJOhoqLyA8LSBOZWl0aGVyIHNob3VsZCB0aGlzLlIBYSIMCgpGb29SZXF1ZXN0Ig0KC0Zvb1Jlc3BvbnNlIhIKEEZvb0NsaWVudE1lc3NhZ2UiEgoQRm9vU2VydmVyTWVzc2FnZSIMCgpCYXJSZXF1ZXN0Ig0KC0JhclJlc3BvbnNlIs4BCgxUZXN0SnNvbk5hbWUSHwoLZmllbGRfbmFtZTEYASABKAVSCmZpZWxkTmFtZTESHgoKZmllbGROYW1lMhgCIAEoBVIKZmllbGROYW1lMhIeCgpGaWVsZE5hbWUzGAMgASgFUgpGaWVsZE5hbWUzEiAKDF9maWVsZF9uYW1lNBgEIAEoBVIKRmllbGROYW1lNBIfCgtGSUVMRF9OQU1FNRgFIAEoBVIKRklFTEROQU1FNRIaCgtmaWVsZF9uYW1lNhgGIAEoBVIFQHR5cGUi/wcKFFRlc3RIdWdlRmllbGROdW1iZXJzEikKDm9wdGlvbmFsX2ludDMyGPD4//8BIAEoBVINb3B0aW9uYWxJbnQzMhIdCghmaXhlZF8zMhjx+P//ASABKAVSB2ZpeGVkMzISLQoOcmVwZWF0ZWRfaW50MzIY8vj//wEgAygFQgIQAFINcmVwZWF0ZWRJbnQzMhIpCgxwYWNrZWRfaW50MzIY8/j//wEgAygFQgIQAVILcGFja2VkSW50MzISTgoNb3B0aW9uYWxfZW51bRj0+P//ASABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SDG9wdGlvbmFsRW51bRIrCg9vcHRpb25hbF9zdHJpbmcY9fj//wEgASgJUg5vcHRpb25hbFN0cmluZxIpCg5vcHRpb25hbF9ieXRlcxj2+P//ASABKAxSDW9wdGlvbmFsQnl0ZXMSVwoQb3B0aW9uYWxfbWVzc2FnZRj3+P//ASABKAsyKC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbk1lc3NhZ2VSD29wdGlvbmFsTWVzc2FnZRJmCg1vcHRpb25hbGdyb3VwGPj4//8BIAEoCjI8LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0SHVnZUZpZWxkTnVtYmVycy5PcHRpb25hbEdyb3VwUg1vcHRpb25hbGdyb3VwEnMKEXN0cmluZ19zdHJpbmdfbWFwGPr4//8BIAMoCzJDLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0SHVnZUZpZWxkTnVtYmVycy5TdHJpbmdTdHJpbmdNYXBFbnRyeVIPc3RyaW5nU3RyaW5nTWFwEicKDG9uZW9mX3VpbnQzMhj7+P//ASABKA1IAFILb25lb2ZVaW50MzISXQoUb25lb2ZfdGVzdF9hbGxfdHlwZXMY/Pj//wEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc0gAUhFvbmVvZlRlc3RBbGxUeXBlcxInCgxvbmVvZl9zdHJpbmcY/fj//wEgASgJSABSC29uZW9mU3RyaW5nEiUKC29uZW9mX2J5dGVzGP74//8BIAEoDEgAUgpvbmVvZkJ5dGVzGiwKDU9wdGlvbmFsR3JvdXASGwoHZ3JvdXBfYRj5+P//ASABKAVSBmdyb3VwQRpCChRTdHJpbmdTdHJpbmdNYXBFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBKgwI4Kr//wEQ8Pj//wFCDQoLb25lb2ZfZmllbGQi+gEKGFRlc3RFeHRlbnNpb25JbnNpZGVUYWJsZRIWCgZmaWVsZDEYASABKAVSBmZpZWxkMRIWCgZmaWVsZDIYAiABKAVSBmZpZWxkMhIWCgZmaWVsZDMYAyABKAVSBmZpZWxkMxIWCgZmaWVsZDQYBCABKAVSBmZpZWxkNBIWCgZmaWVsZDYYBiABKAVSBmZpZWxkNhIWCgZmaWVsZDcYByABKAVSBmZpZWxkNxIWCgZmaWVsZDgYCCABKAVSBmZpZWxkOBIWCgZmaWVsZDkYCSABKAVSBmZpZWxkORIYCgdmaWVsZDEwGAogASgFUgdmaWVsZDEwKgQIBRAGKkAKC0ZvcmVpZ25FbnVtEg8KC0ZPUkVJR05fRk9PEAQSDwoLRk9SRUlHTl9CQVIQBRIPCgtGT1JFSUdOX0JBWhAGKksKFFRlc3RFbnVtV2l0aER1cFZhbHVlEggKBEZPTzEQARIICgRCQVIxEAISBwoDQkFaEAMSCAoERk9PMhABEggKBEJBUjIQAhoCEAEqiQEKDlRlc3RTcGFyc2VFbnVtEgwKCFNQQVJTRV9BEHsSDgoIU1BBUlNFX0IQpucDEg8KCFNQQVJTRV9DELKxgAYSFQoIU1BBUlNFX0QQ8f//////////ARIVCghTUEFSU0VfRRC03vz///////8BEgwKCFNQQVJTRV9GEAASDAoIU1BBUlNFX0cQAiqLDwoNVmVyeUxhcmdlRW51bRIWChJFTlVNX0xBQkVMX0RFRkFVTFQQABIQCgxFTlVNX0xBQkVMXzEQARIQCgxFTlVNX0xBQkVMXzIQAhIQCgxFTlVNX0xBQkVMXzMQAxIQCgxFTlVNX0xBQkVMXzQQBBIQCgxFTlVNX0xBQkVMXzUQBRIQCgxFTlVNX0xBQkVMXzYQBhIQCgxFTlVNX0xBQkVMXzcQBxIQCgxFTlVNX0xBQkVMXzgQCBIQCgxFTlVNX0xBQkVMXzkQCRIRCg1FTlVNX0xBQkVMXzEwEAoSEQoNRU5VTV9MQUJFTF8xMRALEhEKDUVOVU1fTEFCRUxfMTIQDBIRCg1FTlVNX0xBQkVMXzEzEA0SEQoNRU5VTV9MQUJFTF8xNBAOEhEKDUVOVU1fTEFCRUxfMTUQDxIRCg1FTlVNX0xBQkVMXzE2EBASEQoNRU5VTV9MQUJFTF8xNxAREhEKDUVOVU1fTEFCRUxfMTgQEhIRCg1FTlVNX0xBQkVMXzE5EBMSEQoNRU5VTV9MQUJFTF8yMBAUEhEKDUVOVU1fTEFCRUxfMjEQFRIRCg1FTlVNX0xBQkVMXzIyEBYSEQoNRU5VTV9MQUJFTF8yMxAXEhEKDUVOVU1fTEFCRUxfMjQQGBIRCg1FTlVNX0xBQkVMXzI1EBkSEQoNRU5VTV9MQUJFTF8yNhAaEhEKDUVOVU1fTEFCRUxfMjcQGxIRCg1FTlVNX0xBQkVMXzI4EBwSEQoNRU5VTV9MQUJFTF8yORAdEhEKDUVOVU1fTEFCRUxfMzAQHhIRCg1FTlVNX0xBQkVMXzMxEB8SEQoNRU5VTV9MQUJFTF8zMhAgEhEKDUVOVU1fTEFCRUxfMzMQIRIRCg1FTlVNX0xBQkVMXzM0ECISEQoNRU5VTV9MQUJFTF8zNRAjEhEKDUVOVU1fTEFCRUxfMzYQJBIRCg1FTlVNX0xBQkVMXzM3ECUSEQoNRU5VTV9MQUJFTF8zOBAmEhEKDUVOVU1fTEFCRUxfMzkQJxIRCg1FTlVNX0xBQkVMXzQwECgSEQoNRU5VTV9MQUJFTF80MRApEhEKDUVOVU1fTEFCRUxfNDIQKhIRCg1FTlVNX0xBQkVMXzQzECsSEQoNRU5VTV9MQUJFTF80NBAsEhEKDUVOVU1fTEFCRUxfNDUQLRIRCg1FTlVNX0xBQkVMXzQ2EC4SEQoNRU5VTV9MQUJFTF80NxAvEhEKDUVOVU1fTEFCRUxfNDgQMBIRCg1FTlVNX0xBQkVMXzQ5EDESEQoNRU5VTV9MQUJFTF81MBAyEhEKDUVOVU1fTEFCRUxfNTEQMxIRCg1FTlVNX0xBQkVMXzUyEDQSEQoNRU5VTV9MQUJFTF81MxA1EhEKDUVOVU1fTEFCRUxfNTQQNhIRCg1FTlVNX0xBQkVMXzU1EDcSEQoNRU5VTV9MQUJFTF81NhA4EhEKDUVOVU1fTEFCRUxfNTcQORIRCg1FTlVNX0xBQkVMXzU4EDoSEQoNRU5VTV9MQUJFTF81ORA7EhEKDUVOVU1fTEFCRUxfNjAQPBIRCg1FTlVNX0xBQkVMXzYxED0SEQoNRU5VTV9MQUJFTF82MhA+EhEKDUVOVU1fTEFCRUxfNjMQPxIRCg1FTlVNX0xBQkVMXzY0EEASEQoNRU5VTV9MQUJFTF82NRBBEhEKDUVOVU1fTEFCRUxfNjYQQhIRCg1FTlVNX0xBQkVMXzY3EEMSEQoNRU5VTV9MQUJFTF82OBBEEhEKDUVOVU1fTEFCRUxfNjkQRRIRCg1FTlVNX0xBQkVMXzcwEEYSEQoNRU5VTV9MQUJFTF83MRBHEhEKDUVOVU1fTEFCRUxfNzIQSBIRCg1FTlVNX0xBQkVMXzczEEkSEQoNRU5VTV9MQUJFTF83NBBKEhEKDUVOVU1fTEFCRUxfNzUQSxIRCg1FTlVNX0xBQkVMXzc2EEwSEQoNRU5VTV9MQUJFTF83NxBNEhEKDUVOVU1fTEFCRUxfNzgQThIRCg1FTlVNX0xBQkVMXzc5EE8SEQoNRU5VTV9MQUJFTF84MBBQEhEKDUVOVU1fTEFCRUxfODEQURIRCg1FTlVNX0xBQkVMXzgyEFISEQoNRU5VTV9MQUJFTF84MxBTEhEKDUVOVU1fTEFCRUxfODQQVBIRCg1FTlVNX0xBQkVMXzg1EFUSEQoNRU5VTV9MQUJFTF84NhBWEhEKDUVOVU1fTEFCRUxfODcQVxIRCg1FTlVNX0xBQkVMXzg4EFgSEQoNRU5VTV9MQUJFTF84ORBZEhEKDUVOVU1fTEFCRUxfOTAQWhIRCg1FTlVNX0xBQkVMXzkxEFsSEQoNRU5VTV9MQUJFTF85MhBcEhEKDUVOVU1fTEFCRUxfOTMQXRIRCg1FTlVNX0xBQkVMXzk0EF4SEQoNRU5VTV9MQUJFTF85NRBfEhEKDUVOVU1fTEFCRUxfOTYQYBIRCg1FTlVNX0xBQkVMXzk3EGESEQoNRU5VTV9MQUJFTF85OBBiEhEKDUVOVU1fTEFCRUxfOTkQYxISCg5FTlVNX0xBQkVMXzEwMBBkMrUBCgtUZXN0U2VydmljZRJSCgNGb28SJC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9vUmVxdWVzdBolLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb29SZXNwb25zZRJSCgNCYXISJC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuQmFyUmVxdWVzdBolLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5CYXJSZXNwb25zZTplChhvcHRpb25hbF9pbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYASABKAVSFm9wdGlvbmFsSW50MzJFeHRlbnNpb246ZQoYb3B0aW9uYWxfaW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGAIgASgDUhZvcHRpb25hbEludDY0RXh0ZW5zaW9uOmcKGW9wdGlvbmFsX3VpbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYAyABKA1SF29wdGlvbmFsVWludDMyRXh0ZW5zaW9uOmcKGW9wdGlvbmFsX3VpbnQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYBCABKARSF29wdGlvbmFsVWludDY0RXh0ZW5zaW9uOmcKGW9wdGlvbmFsX3NpbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYBSABKBFSF29wdGlvbmFsU2ludDMyRXh0ZW5zaW9uOmcKGW9wdGlvbmFsX3NpbnQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYBiABKBJSF29wdGlvbmFsU2ludDY0RXh0ZW5zaW9uOmkKGm9wdGlvbmFsX2ZpeGVkMzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGAcgASgHUhhvcHRpb25hbEZpeGVkMzJFeHRlbnNpb246aQoab3B0aW9uYWxfZml4ZWQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYCCABKAZSGG9wdGlvbmFsRml4ZWQ2NEV4dGVuc2lvbjprChtvcHRpb25hbF9zZml4ZWQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYCSABKA9SGW9wdGlvbmFsU2ZpeGVkMzJFeHRlbnNpb246awobb3B0aW9uYWxfc2ZpeGVkNjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGAogASgQUhlvcHRpb25hbFNmaXhlZDY0RXh0ZW5zaW9uOmUKGG9wdGlvbmFsX2Zsb2F0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgLIAEoAlIWb3B0aW9uYWxGbG9hdEV4dGVuc2lvbjpnChlvcHRpb25hbF9kb3VibGVfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGAwgASgBUhdvcHRpb25hbERvdWJsZUV4dGVuc2lvbjpjChdvcHRpb25hbF9ib29sX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgNIAEoCFIVb3B0aW9uYWxCb29sRXh0ZW5zaW9uOmcKGW9wdGlvbmFsX3N0cmluZ19leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYDiABKAlSF29wdGlvbmFsU3RyaW5nRXh0ZW5zaW9uOmUKGG9wdGlvbmFsX2J5dGVzX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgPIAEoDFIWb3B0aW9uYWxCeXRlc0V4dGVuc2lvbjqXAQoXb3B0aW9uYWxncm91cF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYECABKAoyMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuT3B0aW9uYWxHcm91cF9leHRlbnNpb25SFm9wdGlvbmFsZ3JvdXBFeHRlbnNpb246rAEKIW9wdGlvbmFsX25lc3RlZF9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgSIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIeb3B0aW9uYWxOZXN0ZWRNZXNzYWdlRXh0ZW5zaW9uOqIBCiJvcHRpb25hbF9mb3JlaWduX21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGBMgASgLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUh9vcHRpb25hbEZvcmVpZ25NZXNzYWdlRXh0ZW5zaW9uOqYBCiFvcHRpb25hbF9pbXBvcnRfbWVzc2FnZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYFCABKAsyLi5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydE1lc3NhZ2VSHm9wdGlvbmFsSW1wb3J0TWVzc2FnZUV4dGVuc2lvbjqjAQoeb3B0aW9uYWxfbmVzdGVkX2VudW1fZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGBUgASgOMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhtvcHRpb25hbE5lc3RlZEVudW1FeHRlbnNpb246mQEKH29wdGlvbmFsX2ZvcmVpZ25fZW51bV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYFiABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SHG9wdGlvbmFsRm9yZWlnbkVudW1FeHRlbnNpb246nQEKHm9wdGlvbmFsX2ltcG9ydF9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgXIAEoDjIrLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0RW51bVIbb3B0aW9uYWxJbXBvcnRFbnVtRXh0ZW5zaW9uOnYKH29wdGlvbmFsX3N0cmluZ19waWVjZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYGCABKAlCAggCUhxvcHRpb25hbFN0cmluZ1BpZWNlRXh0ZW5zaW9uOmMKF29wdGlvbmFsX2NvcmRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGBkgASgJUhVvcHRpb25hbENvcmRFeHRlbnNpb246uQEKKG9wdGlvbmFsX3B1YmxpY19pbXBvcnRfbWVzc2FnZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYGiABKAsyNC5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLlB1YmxpY0ltcG9ydE1lc3NhZ2VSJG9wdGlvbmFsUHVibGljSW1wb3J0TWVzc2FnZUV4dGVuc2lvbjqsAQofb3B0aW9uYWxfbGF6eV9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgbIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZUICKAFSHG9wdGlvbmFsTGF6eU1lc3NhZ2VFeHRlbnNpb246ZQoYcmVwZWF0ZWRfaW50MzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGB8gAygFUhZyZXBlYXRlZEludDMyRXh0ZW5zaW9uOmUKGHJlcGVhdGVkX2ludDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxggIAMoA1IWcmVwZWF0ZWRJbnQ2NEV4dGVuc2lvbjpnChlyZXBlYXRlZF91aW50MzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCEgAygNUhdyZXBlYXRlZFVpbnQzMkV4dGVuc2lvbjpnChlyZXBlYXRlZF91aW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCIgAygEUhdyZXBlYXRlZFVpbnQ2NEV4dGVuc2lvbjpnChlyZXBlYXRlZF9zaW50MzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCMgAygRUhdyZXBlYXRlZFNpbnQzMkV4dGVuc2lvbjpnChlyZXBlYXRlZF9zaW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCQgAygSUhdyZXBlYXRlZFNpbnQ2NEV4dGVuc2lvbjppChpyZXBlYXRlZF9maXhlZDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxglIAMoB1IYcmVwZWF0ZWRGaXhlZDMyRXh0ZW5zaW9uOmkKGnJlcGVhdGVkX2ZpeGVkNjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCYgAygGUhhyZXBlYXRlZEZpeGVkNjRFeHRlbnNpb246awobcmVwZWF0ZWRfc2ZpeGVkMzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCcgAygPUhlyZXBlYXRlZFNmaXhlZDMyRXh0ZW5zaW9uOmsKG3JlcGVhdGVkX3NmaXhlZDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgoIAMoEFIZcmVwZWF0ZWRTZml4ZWQ2NEV4dGVuc2lvbjplChhyZXBlYXRlZF9mbG9hdF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYKSADKAJSFnJlcGVhdGVkRmxvYXRFeHRlbnNpb246ZwoZcmVwZWF0ZWRfZG91YmxlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgqIAMoAVIXcmVwZWF0ZWREb3VibGVFeHRlbnNpb246YwoXcmVwZWF0ZWRfYm9vbF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYKyADKAhSFXJlcGVhdGVkQm9vbEV4dGVuc2lvbjpnChlyZXBlYXRlZF9zdHJpbmdfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCwgAygJUhdyZXBlYXRlZFN0cmluZ0V4dGVuc2lvbjplChhyZXBlYXRlZF9ieXRlc19leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYLSADKAxSFnJlcGVhdGVkQnl0ZXNFeHRlbnNpb246lwEKF3JlcGVhdGVkZ3JvdXBfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGC4gAygKMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlJlcGVhdGVkR3JvdXBfZXh0ZW5zaW9uUhZyZXBlYXRlZGdyb3VwRXh0ZW5zaW9uOqwBCiFyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYMCADKAsyNC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VSHnJlcGVhdGVkTmVzdGVkTWVzc2FnZUV4dGVuc2lvbjqiAQoicmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgxIAMoCzIoLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduTWVzc2FnZVIfcmVwZWF0ZWRGb3JlaWduTWVzc2FnZUV4dGVuc2lvbjqmAQohcmVwZWF0ZWRfaW1wb3J0X21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDIgAygLMi4ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRNZXNzYWdlUh5yZXBlYXRlZEltcG9ydE1lc3NhZ2VFeHRlbnNpb246owEKHnJlcGVhdGVkX25lc3RlZF9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgzIAMoDjIxLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkRW51bVIbcmVwZWF0ZWROZXN0ZWRFbnVtRXh0ZW5zaW9uOpkBCh9yZXBlYXRlZF9mb3JlaWduX2VudW1fZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDQgAygOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtUhxyZXBlYXRlZEZvcmVpZ25FbnVtRXh0ZW5zaW9uOp0BCh5yZXBlYXRlZF9pbXBvcnRfZW51bV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYNSADKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW1SG3JlcGVhdGVkSW1wb3J0RW51bUV4dGVuc2lvbjp2Ch9yZXBlYXRlZF9zdHJpbmdfcGllY2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDYgAygJQgIIAlIccmVwZWF0ZWRTdHJpbmdQaWVjZUV4dGVuc2lvbjpjChdyZXBlYXRlZF9jb3JkX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxg3IAMoCVIVcmVwZWF0ZWRDb3JkRXh0ZW5zaW9uOqwBCh9yZXBlYXRlZF9sYXp5X21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDkgAygLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlQgIoAVIccmVwZWF0ZWRMYXp5TWVzc2FnZUV4dGVuc2lvbjpnChdkZWZhdWx0X2ludDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxg9IAEoBToCNDFSFWRlZmF1bHRJbnQzMkV4dGVuc2lvbjpnChdkZWZhdWx0X2ludDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxg+IAEoAzoCNDJSFWRlZmF1bHRJbnQ2NEV4dGVuc2lvbjppChhkZWZhdWx0X3VpbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYPyABKA06AjQzUhZkZWZhdWx0VWludDMyRXh0ZW5zaW9uOmkKGGRlZmF1bHRfdWludDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhAIAEoBDoCNDRSFmRlZmF1bHRVaW50NjRFeHRlbnNpb246agoYZGVmYXVsdF9zaW50MzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEEgASgROgMtNDVSFmRlZmF1bHRTaW50MzJFeHRlbnNpb246aQoYZGVmYXVsdF9zaW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEIgASgSOgI0NlIWZGVmYXVsdFNpbnQ2NEV4dGVuc2lvbjprChlkZWZhdWx0X2ZpeGVkMzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEMgASgHOgI0N1IXZGVmYXVsdEZpeGVkMzJFeHRlbnNpb246awoZZGVmYXVsdF9maXhlZDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhEIAEoBjoCNDhSF2RlZmF1bHRGaXhlZDY0RXh0ZW5zaW9uOm0KGmRlZmF1bHRfc2ZpeGVkMzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEUgASgPOgI0OVIYZGVmYXVsdFNmaXhlZDMyRXh0ZW5zaW9uOm4KGmRlZmF1bHRfc2ZpeGVkNjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEYgASgQOgMtNTBSGGRlZmF1bHRTZml4ZWQ2NEV4dGVuc2lvbjppChdkZWZhdWx0X2Zsb2F0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhHIAEoAjoENTEuNVIVZGVmYXVsdEZsb2F0RXh0ZW5zaW9uOmwKGGRlZmF1bHRfZG91YmxlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhIIAEoAToFNTIwMDBSFmRlZmF1bHREb3VibGVFeHRlbnNpb246ZwoWZGVmYXVsdF9ib29sX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhJIAEoCDoEdHJ1ZVIUZGVmYXVsdEJvb2xFeHRlbnNpb246bAoYZGVmYXVsdF9zdHJpbmdfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEogASgJOgVoZWxsb1IWZGVmYXVsdFN0cmluZ0V4dGVuc2lvbjpqChdkZWZhdWx0X2J5dGVzX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhLIAEoDDoFd29ybGRSFWRlZmF1bHRCeXRlc0V4dGVuc2lvbjqmAQodZGVmYXVsdF9uZXN0ZWRfZW51bV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYUSABKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW06A0JBUlIaZGVmYXVsdE5lc3RlZEVudW1FeHRlbnNpb246pAEKHmRlZmF1bHRfZm9yZWlnbl9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhSIAEoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bToLRk9SRUlHTl9CQVJSG2RlZmF1bHRGb3JlaWduRW51bUV4dGVuc2lvbjqnAQodZGVmYXVsdF9pbXBvcnRfZW51bV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYUyABKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW06CklNUE9SVF9CQVJSGmRlZmF1bHRJbXBvcnRFbnVtRXh0ZW5zaW9uOnkKHmRlZmF1bHRfc3RyaW5nX3BpZWNlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhUIAEoCToDYWJjQgIIAlIbZGVmYXVsdFN0cmluZ1BpZWNlRXh0ZW5zaW9uOmYKFmRlZmF1bHRfY29yZF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYVSABKAk6AzEyM1IUZGVmYXVsdENvcmRFeHRlbnNpb246YQoWb25lb2ZfdWludDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhvIAEoDVIUb25lb2ZVaW50MzJFeHRlbnNpb246pgEKHm9uZW9mX25lc3RlZF9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhwIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIbb25lb2ZOZXN0ZWRNZXNzYWdlRXh0ZW5zaW9uOmEKFm9uZW9mX3N0cmluZ19leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYcSABKAlSFG9uZW9mU3RyaW5nRXh0ZW5zaW9uOl8KFW9uZW9mX2J5dGVzX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhyIAEoDFITb25lb2ZCeXRlc0V4dGVuc2lvbjpcChNteV9leHRlbnNpb25fc3RyaW5nEiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RGaWVsZE9yZGVyaW5ncxgyIAEoCVIRbXlFeHRlbnNpb25TdHJpbmc6VgoQbXlfZXh0ZW5zaW9uX2ludBIsLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RmllbGRPcmRlcmluZ3MYBSABKAVSDm15RXh0ZW5zaW9uSW50OmgKFnBhY2tlZF9pbnQzMl9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYWiADKAVCAhABUhRwYWNrZWRJbnQzMkV4dGVuc2lvbjpoChZwYWNrZWRfaW50NjRfZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGFsgAygDQgIQAVIUcGFja2VkSW50NjRFeHRlbnNpb246agoXcGFja2VkX3VpbnQzMl9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYXCADKA1CAhABUhVwYWNrZWRVaW50MzJFeHRlbnNpb246agoXcGFja2VkX3VpbnQ2NF9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYXSADKARCAhABUhVwYWNrZWRVaW50NjRFeHRlbnNpb246agoXcGFja2VkX3NpbnQzMl9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYXiADKBFCAhABUhVwYWNrZWRTaW50MzJFeHRlbnNpb246agoXcGFja2VkX3NpbnQ2NF9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYXyADKBJCAhABUhVwYWNrZWRTaW50NjRFeHRlbnNpb246bAoYcGFja2VkX2ZpeGVkMzJfZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGGAgAygHQgIQAVIWcGFja2VkRml4ZWQzMkV4dGVuc2lvbjpsChhwYWNrZWRfZml4ZWQ2NF9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYYSADKAZCAhABUhZwYWNrZWRGaXhlZDY0RXh0ZW5zaW9uOm4KGXBhY2tlZF9zZml4ZWQzMl9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYYiADKA9CAhABUhdwYWNrZWRTZml4ZWQzMkV4dGVuc2lvbjpuChlwYWNrZWRfc2ZpeGVkNjRfZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGGMgAygQQgIQAVIXcGFja2VkU2ZpeGVkNjRFeHRlbnNpb246aAoWcGFja2VkX2Zsb2F0X2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhkIAMoAkICEAFSFHBhY2tlZEZsb2F0RXh0ZW5zaW9uOmoKF3BhY2tlZF9kb3VibGVfZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGGUgAygBQgIQAVIVcGFja2VkRG91YmxlRXh0ZW5zaW9uOmYKFXBhY2tlZF9ib29sX2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhmIAMoCEICEAFSE3BhY2tlZEJvb2xFeHRlbnNpb246jQEKFXBhY2tlZF9lbnVtX2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhnIAMoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bUICEAFSE3BhY2tlZEVudW1FeHRlbnNpb246bgoYdW5wYWNrZWRfaW50MzJfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYWiADKAVCAhAAUhZ1bnBhY2tlZEludDMyRXh0ZW5zaW9uOm4KGHVucGFja2VkX2ludDY0X2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGFsgAygDQgIQAFIWdW5wYWNrZWRJbnQ2NEV4dGVuc2lvbjpwChl1bnBhY2tlZF91aW50MzJfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYXCADKA1CAhAAUhd1bnBhY2tlZFVpbnQzMkV4dGVuc2lvbjpwChl1bnBhY2tlZF91aW50NjRfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYXSADKARCAhAAUhd1bnBhY2tlZFVpbnQ2NEV4dGVuc2lvbjpwChl1bnBhY2tlZF9zaW50MzJfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYXiADKBFCAhAAUhd1bnBhY2tlZFNpbnQzMkV4dGVuc2lvbjpwChl1bnBhY2tlZF9zaW50NjRfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYXyADKBJCAhAAUhd1bnBhY2tlZFNpbnQ2NEV4dGVuc2lvbjpyChp1bnBhY2tlZF9maXhlZDMyX2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGGAgAygHQgIQAFIYdW5wYWNrZWRGaXhlZDMyRXh0ZW5zaW9uOnIKGnVucGFja2VkX2ZpeGVkNjRfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYYSADKAZCAhAAUhh1bnBhY2tlZEZpeGVkNjRFeHRlbnNpb246dAobdW5wYWNrZWRfc2ZpeGVkMzJfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYYiADKA9CAhAAUhl1bnBhY2tlZFNmaXhlZDMyRXh0ZW5zaW9uOnQKG3VucGFja2VkX3NmaXhlZDY0X2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGGMgAygQQgIQAFIZdW5wYWNrZWRTZml4ZWQ2NEV4dGVuc2lvbjpuChh1bnBhY2tlZF9mbG9hdF9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhkIAMoAkICEABSFnVucGFja2VkRmxvYXRFeHRlbnNpb246cAoZdW5wYWNrZWRfZG91YmxlX2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGGUgAygBQgIQAFIXdW5wYWNrZWREb3VibGVFeHRlbnNpb246bAoXdW5wYWNrZWRfYm9vbF9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhmIAMoCEICEABSFXVucGFja2VkQm9vbEV4dGVuc2lvbjqTAQoXdW5wYWNrZWRfZW51bV9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhnIAMoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bUICEABSFXVucGFja2VkRW51bUV4dGVuc2lvbjqAAQoOdGVzdF9hbGxfdHlwZXMSLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEh1Z2VGaWVsZE51bWJlcnMY4Kr//wEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IMdGVzdEFsbFR5cGVzOoQBCiV0ZXN0X2V4dGVuc2lvbl9pbnNpZGVfdGFibGVfZXh0ZW5zaW9uEjIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RFeHRlbnNpb25JbnNpZGVUYWJsZRgFIAEoBVIhdGVzdEV4dGVuc2lvbkluc2lkZVRhYmxlRXh0ZW5zaW9uQjJIAYABAYgBAZABAfgBAaoCIUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLlByb3RvMkrmrAMKBxIFDwDGCAEK6gMKAQwSAw8AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoy0wEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdlIHdpbGwgdXNlIGZvciB1bml0IHRlc3RpbmcuCgogTElOVDogQUxMT1dfR1JPVVBTLCBMRUdBQ1lfTkFNRVMKCggKAQgSAxMAIgqAAQoCCBASAxMAIhpnIFNvbWUgZ2VuZXJpY19zZXJ2aWNlcyBvcHRpb24ocykgYWRkZWQgYXV0b21hdGljYWxseS4KIFNlZTogIGh0dHA6Ly9nby9wcm90bzItZ2VuZXJpYy1zZXJ2aWNlcy1kZWZhdWx0CiIMIGF1dG8tYWRkZWQKCggKAQgSAxQAJAoXCgIIERIDFAAkIgwgYXV0by1hZGRlZAoKCAoBCBIDFQAiChcKAggSEgMVACIiDCBhdXRvLWFkZGVkCgoICgEIEgMWAB8KCQoCCB8SAxYAHwoJCgIDABIDGAAtCuYBCgECEgMdACEa2wEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBuYW1lc3BhY2UuCiBJbiB0ZXN0X3V0aWwuaCB3ZSBkbyAidXNpbmcgbmFtZXNwYWNlIHVuaXR0ZXN0ID0gcHJvdG9idWZfdW5pdHRlc3QiLgoKCAoBCBIDIgAcCuIBCgIICRIDIgAcGtYBIFByb3RvcyBvcHRpbWl6ZWQgZm9yIFNQRUVEIHVzZSBhIHN0cmljdCBzdXBlcnNldCBvZiB0aGUgZ2VuZXJhdGVkIGNvZGUKIG9mIGVxdWl2YWxlbnQgb25lcyBvcHRpbWl6ZWQgZm9yIENPREVfU0laRSwgc28gd2Ugc2hvdWxkIG9wdGltaXplIGFsbCBvdXIKIHRlc3RzIGZvciBzcGVlZCB1bmxlc3MgZXhwbGljaXRseSB0ZXN0aW5nIGNvZGUgc2l6ZSBvcHRpbWl6YXRpb24uCgoICgEIEgMkAD4KCQoCCCUSAyQAPgpcCgIEABIFKACiAQEaTyBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1z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L29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAYCggKAQgSAwsANwoJCgIIJRIDCwA3CsQBCgIDABIDEQAqMrgBIFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gaW1wb3J0IGl0IGluIGJvdGgKICJleHRlbnNpb25zX2lzc3VlNjkzNl9iLnByb3RvIiBhbmQgImV4dGVuc2lvbnNfaXNzdWU2OTM2X2MucHJvdG8iCgoJCgEHEgQTABUBCgkKAgcAEgMUAhUKCgoDBwACEgMTByUKCgoDBwAFEgMUAggKCgoDBwABEgMUCQwKCgoDBwADEgMUDxRiBnByb3RvMwqtBQooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYi5wcm90bxIPdW5pdHRlc3RfaXNzdWVzGihjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2lzc3VlNjkzNl9hLnByb3RvIg4KA0ZvbzoHgrUYA2Zvb0IdqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3NKjgQKBhIEBwAVAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABgKCQoCAwASAwsAMgoICgEIEgMNADcKCQoCCCUSAw0ANwqbAQoCBAASBBMAFQEyjgEgVGhpcyBmaWxlIGlzIHVzZWQgYXMgcGFydCBvZiBhIHVuaXQgdGVzdCBmb3IgaXNzdWUgNjkzNgogV2UgZG9uJ3QgbmVlZCB0byB1c2UgaXQsIHdlIGp1c3QgaGF2ZSB0byBpbXBvcnQgaXQgaW4KICJ1bml0dGVzdF9pc3N1ZTY5MzZfYy5wcm90byIKCgoKAwQAARIDEwgLCgoKAwQABxIDFAIXCg0KBgQAB9CGAxIDFAIXYgZwcm90bzMKqAYKKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2MucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYS5wcm90bxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYi5wcm90byI2CgNCYXISJgoDZm9vGAEgASgLMhQudW5pdHRlc3RfaXNzdWVzLkZvb1IDZm9vOgeCtRgDYmFyQh2qAhpVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvc0q3BAoGEgQHABcBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAGAoJCgIDABIDCwAyCgkKAgMBEgMMADIKCAoBCBIDDgA3CgkKAgglEgMOADcKggEKAgQAEgQTABcBMnYgVGhpcyBmaWxlIGlzIHVzZWQgYXMgcGFydCBvZiBhIHVuaXQgdGVzdCBmb3IgaXNzdWUgNjkzNgogV2UgZG9uJ3QgbmVlZCB0byB1c2UgaXQsIHdlIGp1c3QgaGF2ZSB0byBsb2FkIGl0IGF0IHJ1bnRpbWUKCgoKAwQAARIDEwgLCgoKAwQABxIDFAIXCg0KBgQAB9CGAxIDFAIXCgsKBAQAAgASAxYCDgoMCgUEAAIABhIDFgIFCgwKBQQAAgABEgMWBgkKDAoFBAACAAMSAxYMDWIGcHJvdG8zCrsOCjRjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLnByb3RvEilwcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucxogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8iWQoKRm9vT3B0aW9ucxImCgdpbnRfb3B0GAEgASgFQg3KPgoIAcA+Aso+AggDUgZpbnRPcHQSGAoDZm9vGAIgASgFQgbKPgMQ0glSA2ZvbyoJCOgHEICAgIACOkUKC2Jhcl9vcHRpb25zEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxjoByABKAVCBMA+0glSCmJhck9wdGlvbnM6dgoLZm9vX29wdGlvbnMSHS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zGOkHIAEoCzI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlvbnNSCmZvb09wdGlvbnM6VgoLZm9vX2ludF9vcHQSNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zGOgHIAEoBVIJZm9vSW50T3B0Oo0BCgtmb29fZm9vX29wdBI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlvbnMY6QcgASgLMjUucHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMuRm9vT3B0aW9uc1IJZm9vRm9vT3B0QjSqAjFVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvcy5TZWxmcmVmZXJlbnRpYWxPcHRpb25zSv0ICgYSBAcAJwEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAyCgkKAgMAEgMLACoKCAoBCBIDDQBOCgkKAgglEgMNAE4KCgoCBAASBA8AGwEKCgoDBAABEgMPCBIKUAoEBAACABIEEQIVBRpCIEN1c3RvbSBmaWVsZCBvcHRpb24gdXNlZCBpbiBkZWZpbml0aW9uIG9mIHRoZSBleHRlbnNpb24gbWVzc2FnZS4KCgwKBQQAAgAEEgMRAgoKDAoFBAACAAUSAxELEAoMCgUEAAIAARIDEREYCgwKBQQAAgADEgMRGxwKDQoFBAACAAgSBBEdFQQKDwoHBAACAAjpBxIEER4VAwpVCgQEAAIBEgMYAjkaSCBDdXN0b20gZmllbGQgb3B0aW9uIHVzZWQgaW4gZGVmaW5pdGlvbiBvZiB0aGUgY3VzdG9tIG9wdGlvbidzIG1lc3NhZ2UuCgoMCgUEAAIBBBIDGAIKCgwKBQQAAgEFEgMYCxAKDAoFBAACAQESAxgRFAoMCgUEAAIBAxIDGBcYCgwKBQQAAgEIEgMYGTgKDgoHBAACAQjpBxIDGBo3CgoKAwQABRIDGgIZCgsKBAQABQASAxoNGAoMCgUEAAUAARIDGg0RCgwKBQQABQACEgMaFRgKCQoBBxIEHQAiAQpNCgIHABIDHwI7GkIgQ3VzdG9tIGZpZWxkIG9wdGlvbiB1c2VkIG9uIHRoZSBkZWZpbml0aW9uIG9mIHRoYXQgZmllbGQgb3B0aW9uLgoKCgoDBwACEgMdByMKCgoDBwAEEgMfAgoKCgoDBwAFEgMfCxAKCgoDBwABEgMfERwKCgoDBwADEgMfHyMKCgoDBwAIEgMfJDoKDAoFBwAI6AcSAx8lOQoJCgIHARIDIQIpCgoKAwcBAhIDHQcjCgoKAwcBBBIDIQIKCgoKAwcBBhIDIQsVCgoKAwcBARIDIRYhCgoKAwcBAxIDISQoCgkKAQcSBCQAJwEKCQoCBwISAyUCJAoKCgMHAgISAyQHEQoKCgMHAgQSAyUCCgoKCgMHAgUSAyULEAoKCgMHAgESAyURHAoKCgMHAgMSAyUfIwoJCgIHAxIDJgIpCgoKAwcDAhIDJAcRCgoKAwcDBBIDJgIKCgoKAwcDBhIDJgsVCgoKAwcDARIDJhYhCgoKAwcDAxIDJiQoCsQuChlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvEg9nb29nbGUucHJvdG9idWYiNgoDQW55EhkKCHR5cGVfdXJsGAEgASgJUgd0eXBlVXJsEhQKBXZhbHVlGAIgASgMUgV2YWx1ZUJ2ChNjb20uZ29vZ2xlLnByb3RvYnVmQghBbnlQcm90b1ABWixnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9hbnlwYqICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rdLAoHEgUeAKEBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAQwoJCgIICxIDIgBDCggKAQgSAyMALAoJCgIIARIDIwAsCggKAQgSAyQAKQoJCgIICBIDJAApCggKAQgSAyUAIgoJCgIIChIDJQAiCggKAQgSAyYAIQoJCgIIJBIDJgAhCggKAQgSAycAOwoJCgIIJRIDJwA7CvwRCgIEABIFfwChAQEa7hEgYEFueWAgY29udGFpbnMgYW4gYXJiaXRyYXJ5IHNlcmlhbGl6ZWQgcHJvdG9jb2wgYnVmZmVyIG1lc3NhZ2UgYWxvbmcgd2l0aCBhCiBVUkwgdGhhdCBkZXNjcmliZXMgdGhlIHR5cGUgb2YgdGhlIHNlcmlhbGl6ZWQgbWVzc2FnZS4KCiBQcm90b2J1ZiBsaWJyYXJ5IHByb3ZpZGVzIHN1cHBvcnQgdG8gcGFjay91bnBhY2sgQW55IHZhbHVlcyBpbiB0aGUgZm9ybQogb2YgdXRpbGl0eSBmdW5jdGlvbnMgb3IgYWRkaXRpb25hbCBnZW5lcmF0ZWQgbWV0aG9kcyBvZiB0aGUgQW55IHR5cGUuCgogRXhhbXBsZSAxOiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIEMrKy4KCiAgICAgRm9vIGZvbyA9IC4uLjsKICAgICBBbnkgYW55OwogICAgIGFueS5QYWNrRnJvbShmb28pOwogICAgIC4uLgogICAgIGlmIChhbnkuVW5wYWNrVG8oJmZvbykpIHsKICAgICAgIC4uLgogICAgIH0KCiBFeGFtcGxlIDI6IFBhY2sgYW5kIHVucGFjayBhIG1lc3NhZ2UgaW4gSmF2YS4KCiAgICAgRm9vIGZvbyA9IC4uLjsKICAgICBBbnkgYW55ID0gQW55LnBhY2soZm9vKTsKICAgICAuLi4KICAgICBpZiAoYW55LmlzKEZvby5jbGFzcykpIHsKICAgICAgIGZvbyA9IGFueS51bnBhY2soRm9vLmNsYXNzKTsKICAgICB9CiAgICAgLy8gb3IgLi4uCiAgICAgaWYgKGFueS5pc1NhbWVUeXBlQXMoRm9vLmdldERlZmF1bHRJbnN0YW5jZSgpKSkgewogICAgICAgZm9vID0gYW55LnVucGFjayhGb28uZ2V0RGVmYXVsdEluc3RhbmNlKCkpOwogICAgIH0KCiAgRXhhbXBsZSAzOiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIFB5dGhvbi4KCiAgICAgZm9vID0gRm9vKC4uLikKICAgICBhbnkgPSBBbnkoKQogICAgIGFueS5QYWNrKGZvbykKICAgICAuLi4KICAgICBpZiBhbnkuSXMoRm9vLkRFU0NSSVBUT1IpOgogICAgICAgYW55LlVucGFjayhmb28pCiAgICAgICAuLi4KCiAgRXhhbXBsZSA0OiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIEdvCgogICAgICBmb28gOj0gJnBiLkZvb3suLi59CiAgICAgIGFueSwgZXJyIDo9IGFueXBiLk5ldyhmb28pCiAgICAgIGlmIGVyciAhPSBuaWwgewogICAgICAgIC4uLgogICAgICB9CiAgICAgIC4uLgogICAgICBmb28gOj0gJnBiLkZvb3t9CiAgICAgIGlmIGVyciA6PSBhbnkuVW5tYXJzaGFsVG8oZm9vKTsgZXJyICE9IG5pbCB7CiAgICAgICAgLi4uCiAgICAgIH0KCiBUaGUgcGFjayBtZXRob2RzIHByb3ZpZGVkIGJ5IHByb3RvYnVmIGxpYnJhcnkgd2lsbCBieSBkZWZhdWx0IHVzZQogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vZnVsbC50eXBlLm5hbWUnIGFzIHRoZSB0eXBlIFVSTCBhbmQgdGhlIHVucGFjawogbWV0aG9kcyBvbmx5IHVzZSB0aGUgZnVsbHkgcXVhbGlmaWVkIHR5cGUgbmFtZSBhZnRlciB0aGUgbGFzdCAnLycKIGluIHRoZSB0eXBlIFVSTCwgZm9yIGV4YW1wbGUgImZvby5iYXIuY29tL3gveS56IiB3aWxsIHlpZWxkIHR5cGUKIG5hbWUgInkueiIuCgogSlNPTgogPT09PQogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYW4gYEFueWAgdmFsdWUgdXNlcyB0aGUgcmVndWxhcgogcmVwcmVzZW50YXRpb24gb2YgdGhlIGRlc2VyaWFsaXplZCwgZW1iZWRkZWQgbWVzc2FnZSwgd2l0aCBhbgogYWRkaXRpb25hbCBmaWVsZCBgQHR5cGVgIHdoaWNoIGNvbnRhaW5zIHRoZSB0eXBlIFVSTC4gRXhhbXBsZToKCiAgICAgcGFja2FnZSBnb29nbGUucHJvZmlsZTsKICAgICBtZXNzYWdlIFBlcnNvbiB7CiAgICAgICBzdHJpbmcgZmlyc3RfbmFtZSA9IDE7CiAgICAgICBzdHJpbmcgbGFzdF9uYW1lID0gMjsKICAgICB9CgogICAgIHsKICAgICAgICJAdHlwZSI6ICJ0eXBlLmdvb2dsZWFwaXMuY29tL2dvb2dsZS5wcm9maWxlLlBlcnNvbiIsCiAgICAgICAiZmlyc3ROYW1lIjogPHN0cmluZz4sCiAgICAgICAibGFzdE5hbWUiOiA8c3RyaW5nPgogICAgIH0KCiBJZiB0aGUgZW1iZWRkZWQgbWVzc2FnZSB0eXBlIGlzIHdlbGwta25vd24gYW5kIGhhcyBhIGN1c3RvbSBKU09OCiByZXByZXNlbnRhdGlvbiwgdGhhdCByZXByZXNlbnRhdGlvbiB3aWxsIGJlIGVtYmVkZGVkIGFkZGluZyBhIGZpZWxkCiBgdmFsdWVgIHdoaWNoIGhvbGRzIHRoZSBjdXN0b20gSlNPTiBpbiBhZGRpdGlvbiB0byB0aGUgYEB0eXBlYAogZmllbGQuIEV4YW1wbGUgKGZvciBtZXNzYWdlIFtnb29nbGUucHJvdG9idWYuRHVyYXRpb25dW10pOgoKICAgICB7CiAgICAgICAiQHR5cGUiOiAidHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucHJvdG9idWYuRHVyYXRpb24iLAogICAgICAgInZhbHVlIjogIjEuMjEycyIKICAgICB9CgoKCgoDBAABEgN/CAsKvAsKBAQAAgASBJ0BAhYarQsgQSBVUkwvcmVzb3VyY2UgbmFtZSB0aGF0IHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIHR5cGUgb2YgdGhlIHNlcmlhbGl6ZWQKIHByb3RvY29sIGJ1ZmZlciBtZXNzYWdlLiBUaGlzIHN0cmluZyBtdXN0IGNvbnRhaW4gYXQgbGVhc3QKIG9uZSAiLyIgY2hhcmFjdGVyLiBUaGUgbGFzdCBzZWdtZW50IG9mIHRoZSBVUkwncyBwYXRoIG11c3QgcmVwcmVzZW50CiB0aGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIHR5cGUgKGFzIGluCiBgcGF0aC9nb29nbGUucHJvdG9idWYuRHVyYXRpb25gKS4gVGhlIG5hbWUgc2hvdWxkIGJlIGluIGEgY2Fub25pY2FsIGZvcm0KIChlLmcuLCBsZWFkaW5nICIuIiBpcyBub3QgYWNjZXB0ZWQpLgoKIEluIHByYWN0aWNlLCB0ZWFtcyB1c3VhbGx5IHByZWNvbXBpbGUgaW50byB0aGUgYmluYXJ5IGFsbCB0eXBlcyB0aGF0IHRoZXkKIGV4cGVjdCBpdCB0byB1c2UgaW4gdGhlIGNvbnRleHQgb2YgQW55LiBIb3dldmVyLCBmb3IgVVJMcyB3aGljaCB1c2UgdGhlCiBzY2hlbWUgYGh0dHBgLCBgaHR0cHNgLCBvciBubyBzY2hlbWUsIG9uZSBjYW4gb3B0aW9uYWxseSBzZXQgdXAgYSB0eXBlCiBzZXJ2ZXIgdGhhdCBtYXBzIHR5cGUgVVJMcyB0byBtZXNzYWdlIGRlZmluaXRpb25zIGFzIGZvbGxvd3M6CgogKiBJZiBubyBzY2hlbWUgaXMgcHJvdmlkZWQsIGBodHRwc2AgaXMgYXNzdW1lZC4KICogQW4gSFRUUCBHRVQgb24gdGhlIFVSTCBtdXN0IHlpZWxkIGEgW2dvb2dsZS5wcm90b2J1Zi5UeXBlXVtdCiAgIHZhbHVlIGluIGJpbmFyeSBmb3JtYXQsIG9yIHByb2R1Y2UgYW4gZXJyb3IuCiAqIEFwcGxpY2F0aW9ucyBhcmUgYWxsb3dlZCB0byBjYWNoZSBsb29rdXAgcmVzdWx0cyBiYXNlZCBvbiB0aGUKICAgVVJMLCBvciBoYXZlIHRoZW0gcHJlY29tcGlsZWQgaW50byBhIGJpbmFyeSB0byBhdm9pZCBhbnkKICAgbG9va3VwLiBUaGVyZWZvcmUsIGJpbmFyeSBjb21wYXRpYmlsaXR5IG5lZWRzIHRvIGJlIHByZXNlcnZlZAogICBvbiBjaGFuZ2VzIHRvIHR5cGVzLiAoVXNlIHZlcnNpb25lZCB0eXBlIG5hbWVzIHRvIG1hbmFnZQogICBicmVha2luZyBjaGFuZ2VzLikKCiBOb3RlOiB0aGlzIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGN1cnJlbnRseSBhdmFpbGFibGUgaW4gdGhlIG9mZmljaWFsCiBwcm90b2J1ZiByZWxlYXNlLCBhbmQgaXQgaXMgbm90IHVzZWQgZm9yIHR5cGUgVVJMcyBiZWdpbm5pbmcgd2l0aAogdHlwZS5nb29nbGVhcGlzLmNvbS4gQXMgb2YgTWF5IDIwMjMsIHRoZXJlIGFyZSBubyB3aWRlbHkgdXNlZCB0eXBlIHNlcnZlcgogaW1wbGVtZW50YXRpb25zIGFuZCBubyBwbGFucyB0byBpbXBsZW1lbnQgb25lLgoKIFNjaGVtZXMgb3RoZXIgdGhhbiBgaHR0cGAsIGBodHRwc2AgKG9yIHRoZSBlbXB0eSBzY2hlbWUpIG1pZ2h0IGJlCiB1c2VkIHdpdGggaW1wbGVtZW50YXRpb24gc3BlY2lmaWMgc2VtYW50aWNzLgoKCg0KBQQAAgAFEgSdAQIICg0KBQQAAgABEgSdAQkRCg0KBQQAAgADEgSdARQVClcKBAQAAgESBKABAhIaSSBNdXN0IGJlIGEgdmFsaWQgc2VyaWFsaXplZCBwcm90b2NvbCBidWZmZXIgb2YgdGhlIGFib3ZlIHNwZWNpZmllZCB0eXBlLgoKDQoFBAACAQUSBKABAgcKDQoFBAACAQESBKABCA0KDQoFBAACAQMSBKABEBFiBnByb3RvMwq+EgokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvEg9nb29nbGUucHJvdG9idWYiLAoNU291cmNlQ29udGV4dBIbCglmaWxlX25hbWUYASABKAlSCGZpbGVOYW1lQooBChNjb20uZ29vZ2xlLnByb3RvYnVmQhJTb3VyY2VDb250ZXh0UHJvdG9QAVo2Z29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vc291cmNlY29udGV4dHBiogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSsEQCgYSBB4ALwEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiACwKCQoCCAESAyIALAoICgEIEgMjADMKCQoCCAgSAyMAMwoICgEIEgMkACIKCQoCCAoSAyQAIgoICgEIEgMlACEKCQoCCCQSAyUAIQoICgEIEgMmADsKCQoCCCUSAyYAOwoICgEIEgMnAE0KCQoCCAsSAycATQqDAQoCBAASBCsALwEadyBgU291cmNlQ29udGV4dGAgcmVwcmVzZW50cyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIG9mIGEKIHByb3RvYnVmIGVsZW1lbnQsIGxpa2UgdGhlIGZpbGUgaW4gd2hpY2ggaXQgaXMgZGVmaW5lZC4KCgoKAwQAARIDKwgVCqMBCgQEAAIAEgMuAhcalQEgVGhlIHBhdGgtcXVhbGlmaWVkIG5hbWUgb2YgdGhlIC5wcm90byBmaWxlIHRoYXQgY29udGFpbmVkIHRoZSBhc3NvY2lhdGVkCiBwcm90b2J1ZiBlbGVtZW50LiAgRm9yIGV4YW1wbGU6IGAiZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvImAuCgoMCgUEAAIABRIDLgIICgwKBQQAAgABEgMuCRIKDAoFBAACAAMSAy4VFmIGcHJvdG8zCvtJChpnb29nbGUvcHJvdG9idWYvdHlwZS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmGhlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvGiRnb29nbGUvcHJvdG9idWYvc291cmNlX2NvbnRleHQucHJvdG8ipwIKBFR5cGUSEgoEbmFtZRgBIAEoCVIEbmFtZRIuCgZmaWVsZHMYAiADKAsyFi5nb29nbGUucHJvdG9idWYuRmllbGRSBmZpZWxkcxIWCgZvbmVvZnMYAyADKAlSBm9uZW9mcxIxCgdvcHRpb25zGAQgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucxJFCg5zb3VyY2VfY29udGV4dBgFIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei8KBnN5bnRheBgGIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheBIYCgdlZGl0aW9uGAcgASgJUgdlZGl0aW9uIrQGCgVGaWVsZBIvCgRraW5kGAEgASgOMhsuZ29vZ2xlLnByb3RvYnVmLkZpZWxkLktpbmRSBGtpbmQSRAoLY2FyZGluYWxpdHkYAiABKA4yIi5nb29nbGUucHJvdG9idWYuRmllbGQuQ2FyZGluYWxpdHlSC2NhcmRpbmFsaXR5EhYKBm51bWJlchgDIAEoBVIGbnVtYmVyEhIKBG5hbWUYBCABKAlSBG5hbWUSGQoIdHlwZV91cmwYBiABKAlSB3R5cGVVcmwSHwoLb25lb2ZfaW5kZXgYByABKAVSCm9uZW9mSW5kZXgSFgoGcGFja2VkGAggASgIUgZwYWNrZWQSMQoHb3B0aW9ucxgJIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSGwoJanNvbl9uYW1lGAogASgJUghqc29uTmFtZRIjCg1kZWZhdWx0X3ZhbHVlGAsgASgJUgxkZWZhdWx0VmFsdWUiyAIKBEtpbmQSEAoMVFlQRV9VTktOT1dOEAASDwoLVFlQRV9ET1VCTEUQARIOCgpUWVBFX0ZMT0FUEAISDgoKVFlQRV9JTlQ2NBADEg8KC1RZUEVfVUlOVDY0EAQSDgoKVFlQRV9JTlQzMhAFEhAKDFRZUEVfRklYRUQ2NBAGEhAKDFRZUEVfRklYRUQzMhAHEg0KCVRZUEVfQk9PTBAIEg8KC1RZUEVfU1RSSU5HEAkSDgoKVFlQRV9HUk9VUBAKEhAKDFRZUEVfTUVTU0FHRRALEg4KClRZUEVfQllURVMQDBIPCgtUWVBFX1VJTlQzMhANEg0KCVRZUEVfRU5VTRAOEhEKDVRZUEVfU0ZJWEVEMzIQDxIRCg1UWVBFX1NGSVhFRDY0EBASDwoLVFlQRV9TSU5UMzIQERIPCgtUWVBFX1NJTlQ2NBASInQKC0NhcmRpbmFsaXR5EhcKE0NBUkRJTkFMSVRZX1VOS05PV04QABIYChRDQVJESU5BTElUWV9PUFRJT05BTBABEhgKFENBUkRJTkFMSVRZX1JFUVVJUkVEEAISGAoUQ0FSRElOQUxJVFlfUkVQRUFURUQQAyKZAgoERW51bRISCgRuYW1lGAEgASgJUgRuYW1lEjgKCWVudW12YWx1ZRgCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVSCWVudW12YWx1ZRIxCgdvcHRpb25zGAMgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucxJFCg5zb3VyY2VfY29udGV4dBgEIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei8KBnN5bnRheBgFIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheBIYCgdlZGl0aW9uGAYgASgJUgdlZGl0aW9uImoKCUVudW1WYWx1ZRISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgCIAEoBVIGbnVtYmVyEjEKB29wdGlvbnMYAyADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zIkgKBk9wdGlvbhISCgRuYW1lGAEgASgJUgRuYW1lEioKBXZhbHVlGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIFdmFsdWUqQwoGU3ludGF4EhEKDVNZTlRBWF9QUk9UTzIQABIRCg1TWU5UQVhfUFJPVE8zEAESEwoPU1lOVEFYX0VESVRJT05TEAJCewoTY29tLmdvb2dsZS5wcm90b2J1ZkIJVHlwZVByb3RvUAFaLWdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3R5cGVwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qNOwoHEgUeAMABAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCgkKAgMAEgMiACMKCQoCAwESAyMALgoICgEIEgMlAB8KCQoCCB8SAyUAHwoICgEIEgMmACwKCQoCCAESAyYALAoICgEIEgMnACoKCQoCCAgSAycAKgoICgEIEgMoACIKCQoCCAoSAygAIgoICgEIEgMpACEKCQoCCCQSAykAIQoICgEIEgMqADsKCQoCCCUSAyoAOwoICgEIEgMrAEQKCQoCCAsSAysARAotCgIEABIELgA9ARohIEEgcHJvdG9jb2wgYnVmZmVyIG1lc3NhZ2UgdHlwZS4KCgoKAwQAARIDLggMCjAKBAQAAgASAzACEhojIFRoZSBmdWxseSBxdWFsaWZpZWQgbWVzc2FnZSBuYW1lLgoKDAoFBAACAAUSAzACCAoMCgUEAAIAARIDMAkNCgwKBQQAAgADEgMwEBEKIgoEBAACARIDMgIcGhUgVGhlIGxpc3Qgb2YgZmllbGRzLgoKDAoFBAACAQQSAzICCgoMCgUEAAIBBhIDMgsQCgwKBQQAAgEBEgMyERcKDAoFBAACAQMSAzIaGwpPCgQEAAICEgM0Ah0aQiBUaGUgbGlzdCBvZiB0eXBlcyBhcHBlYXJpbmcgaW4gYG9uZW9mYCBkZWZpbml0aW9ucyBpbiB0aGlzIHR5cGUuCgoMCgUEAAICBBIDNAIKCgwKBQQAAgIFEgM0CxEKDAoFBAACAgESAzQSGAoMCgUEAAICAxIDNBscCisKBAQAAgMSAzYCHhoeIFRoZSBwcm90b2NvbCBidWZmZXIgb3B0aW9ucy4KCgwKBQQAAgMEEgM2AgoKDAoFBAACAwYSAzYLEQoMCgUEAAIDARIDNhIZCgwKBQQAAgMDEgM2HB0KIgoEBAACBBIDOAIjGhUgVGhlIHNvdXJjZSBjb250ZXh0LgoKDAoFBAACBAYSAzgCDwoMCgUEAAIEARIDOBAeCgwKBQQAAgQDEgM4ISIKIQoEBAACBRIDOgIUGhQgVGhlIHNvdXJjZSBzeW50YXguCgoMCgUEAAIFBhIDOgIICgwKBQQAAgUBEgM6CQ8KDAoFBAACBQMSAzoSEwpUCgQEAAIGEgM8AhUaRyBUaGUgc291cmNlIGVkaXRpb24gc3RyaW5nLCBvbmx5IHZhbGlkIHdoZW4gc3ludGF4IGlzIFNZTlRBWF9FRElUSU9OUy4KCgwKBQQAAgYFEgM8AggKDAoFBAACBgESAzwJEAoMCgUEAAIGAxIDPBMUCjAKAgQBEgVAAI0BARojIEEgc2luZ2xlIGZpZWxkIG9mIGEgbWVzc2FnZSB0eXBlLgoKCgoDBAEBEgNACA0KIgoEBAEEABIEQgJpAxoUIEJhc2ljIGZpZWxkIHR5cGVzLgoKDAoFBAEEAAESA0IHCwokCgYEAQQAAgASA0QEFRoVIEZpZWxkIHR5cGUgdW5rbm93bi4KCg4KBwQBBAACAAESA0QEEAoOCgcEAQQAAgACEgNEExQKIwoGBAEEAAIBEgNGBBQaFCBGaWVsZCB0eXBlIGRvdWJsZS4KCg4KBwQBBAACAQESA0YEDwoOCgcEAQQAAgECEgNGEhMKIgoGBAEEAAICEgNIBBMaEyBGaWVsZCB0eXBlIGZsb2F0LgoKDgoHBAEEAAICARIDSAQOCg4KBwQBBAACAgISA0gREgoiCgYEAQQAAgMSA0oEExoTIEZpZWxkIHR5cGUgaW50NjQuCgoOCgcEAQQAAgMBEgNKBA4KDgoHBAEEAAIDAhIDShESCiMKBgQBBAACBBIDTAQUGhQgRmllbGQgdHlwZSB1aW50NjQuCgoOCgcEAQQAAgQBEgNMBA8KDgoHBAEEAAIEAhIDTBITCiIKBgQBBAACBRIDTgQTGhMgRmllbGQgdHlwZSBpbnQzMi4KCg4KBwQBBAACBQESA04EDgoOCgcEAQQAAgUCEgNOERIKJAoGBAEEAAIGEgNQBBUaFSBGaWVsZCB0eXBlIGZpeGVkNjQuCgoOCgcEAQQAAgYBEgNQBBAKDgoHBAEEAAIGAhIDUBMUCiQKBgQBBAACBxIDUgQVGhUgRmllbGQgdHlwZSBmaXhlZDMyLgoKDgoHBAEEAAIHARIDUgQQCg4KBwQBBAACBwISA1ITFAohCgYEAQQAAggSA1QEEhoSIEZpZWxkIHR5cGUgYm9vbC4KCg4KBwQBBAACCAESA1QEDQoOCgcEAQQAAggCEgNUEBEKIwoGBAEEAAIJEgNWBBQaFCBGaWVsZCB0eXBlIHN0cmluZy4KCg4KBwQBBAACCQESA1YEDwoOCgcEAQQAAgkCEgNWEhMKRgoGBAEEAAIKEgNYBBQaNyBGaWVsZCB0eXBlIGdyb3VwLiBQcm90bzIgc3ludGF4IG9ubHksIGFuZCBkZXByZWNhdGVkLgoKDgoHBAEEAAIKARIDWAQOCg4KBwQBBAACCgISA1gREwokCgYEAQQAAgsSA1oEFhoVIEZpZWxkIHR5cGUgbWVzc2FnZS4KCg4KBwQBBAACCwESA1oEEAoOCgcEAQQAAgsCEgNaExUKIgoGBAEEAAIMEgNcBBQaEyBGaWVsZCB0eXBlIGJ5dGVzLgoKDgoHBAEEAAIMARIDXAQOCg4KBwQBBAACDAISA1wREwojCgYEAQQAAg0SA14EFRoUIEZpZWxkIHR5cGUgdWludDMyLgoKDgoHBAEEAAINARIDXgQPCg4KBwQBBAACDQISA14SFAohCgYEAQQAAg4SA2AEExoSIEZpZWxkIHR5cGUgZW51bS4KCg4KBwQBBAACDgESA2AEDQoOCgcEAQQAAg4CEgNgEBIKJQoGBAEEAAIPEgNiBBcaFiBGaWVsZCB0eXBlIHNmaXhlZDMyLgoKDgoHBAEEAAIPARIDYgQRCg4KBwQBBAACDwISA2IUFgolCgYEAQQAAhASA2QEFxoWIEZpZWxkIHR5cGUgc2ZpeGVkNjQuCgoOCgcEAQQAAhABEgNkBBEKDgoHBAEEAAIQAhIDZBQWCiMKBgQBBAACERIDZgQVGhQgRmllbGQgdHlwZSBzaW50MzIuCgoOCgcEAQQAAhEBEgNmBA8KDgoHBAEEAAIRAhIDZhIUCiMKBgQBBAACEhIDaAQVGhQgRmllbGQgdHlwZSBzaW50NjQuCgoOCgcEAQQAAhIBEgNoBA8KDgoHBAEEAAISAhIDaBIUCkMKBAQBBAESBGwCdQMaNSBXaGV0aGVyIGEgZmllbGQgaXMgb3B0aW9uYWwsIHJlcXVpcmVkLCBvciByZXBlYXRlZC4KCgwKBQQBBAEBEgNsBxIKNQoGBAEEAQIAEgNuBBwaJiBGb3IgZmllbGRzIHdpdGggdW5rbm93biBjYXJkaW5hbGl0eS4KCg4KBwQBBAECAAESA24EFwoOCgcEAQQBAgACEgNuGhsKJQoGBAEEAQIBEgNwBB0aFiBGb3Igb3B0aW9uYWwgZmllbGRzLgoKDgoHBAEEAQIBARIDcAQYCg4KBwQBBAECAQISA3AbHAo5CgYEAQQBAgISA3IEHRoqIEZvciByZXF1aXJlZCBmaWVsZHMuIFByb3RvMiBzeW50YXggb25seS4KCg4KBwQBBAECAgESA3IEGAoOCgcEAQQBAgICEgNyGxwKJQoGBAEEAQIDEgN0BB0aFiBGb3IgcmVwZWF0ZWQgZmllbGRzLgoKDgoHBAEEAQIDARIDdAQYCg4KBwQBBAECAwISA3QbHAoeCgQEAQIAEgN4AhAaESBUaGUgZmllbGQgdHlwZS4KCgwKBQQBAgAGEgN4AgYKDAoFBAECAAESA3gHCwoMCgUEAQIAAxIDeA4PCiUKBAQBAgESA3oCHhoYIFRoZSBmaWVsZCBjYXJkaW5hbGl0eS4KCgwKBQQBAgEGEgN6Ag0KDAoFBAECAQESA3oOGQoMCgUEAQIBAxIDehwdCiAKBAQBAgISA3wCExoTIFRoZSBmaWVsZCBudW1iZXIuCgoMCgUEAQICBRIDfAIHCgwKBQQBAgIBEgN8CA4KDAoFBAECAgMSA3wREgoeCgQEAQIDEgN+AhIaESBUaGUgZmllbGQgbmFtZS4KCgwKBQQBAgMFEgN+AggKDAoFBAECAwESA34JDQoMCgUEAQIDAxIDfhARCpcBCgQEAQIEEgSBAQIWGogBIFRoZSBmaWVsZCB0eXBlIFVSTCwgd2l0aG91dCB0aGUgc2NoZW1lLCBmb3IgbWVzc2FnZSBvciBlbnVtZXJhdGlvbgogdHlwZXMuIEV4YW1wbGU6IGAidHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucHJvdG9idWYuVGltZXN0YW1wImAuCgoNCgUEAQIEBRIEgQECCAoNCgUEAQIEARIEgQEJEQoNCgUEAQIEAxIEgQEUFQqlAQoEBAECBRIEhAECGBqWASBUaGUgaW5kZXggb2YgdGhlIGZpZWxkIHR5cGUgaW4gYFR5cGUub25lb2ZzYCwgZm9yIG1lc3NhZ2Ugb3IgZW51bWVyYXRpb24KIHR5cGVzLiBUaGUgZmlyc3QgdHlwZSBoYXMgaW5kZXggMTsgemVybyBtZWFucyB0aGUgdHlwZSBpcyBub3QgaW4gdGhlIGxpc3QuCgoNCgUEAQIFBRIEhAECBwoNCgUEAQIFARIEhAEIEwoNCgUEAQIFAxIEhAEWFwpGCgQEAQIGEgSGAQISGjggV2hldGhlciB0byB1c2UgYWx0ZXJuYXRpdmUgcGFja2VkIHdpcmUgcmVwcmVzZW50YXRpb24uCgoNCgUEAQIGBRIEhgECBgoNCgUEAQIGARIEhgEHDQoNCgUEAQIGAxIEhgEQEQosCgQEAQIHEgSIAQIeGh4gVGhlIHByb3RvY29sIGJ1ZmZlciBvcHRpb25zLgoKDQoFBAECBwQSBIgBAgoKDQoFBAECBwYSBIgBCxEKDQoFBAECBwESBIgBEhkKDQoFBAECBwMSBIgBHB0KJAoEBAECCBIEigECGBoWIFRoZSBmaWVsZCBKU09OIG5hbWUuCgoNCgUEAQIIBRIEigECCAoNCgUEAQIIARIEigEJEgoNCgUEAQIIAxIEigEVFwpYCgQEAQIJEgSMAQIcGkogVGhlIHN0cmluZyB2YWx1ZSBvZiB0aGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGlzIGZpZWxkLiBQcm90bzIgc3ludGF4IG9ubHkuCgoNCgUEAQIJBRIEjAECCAoNCgUEAQIJARIEjAEJFgoNCgUEAQIJAxIEjAEZGwolCgIEAhIGkAEAnQEBGhcgRW51bSB0eXBlIGRlZmluaXRpb24uCgoLCgMEAgESBJABCAwKHwoEBAICABIEkgECEhoRIEVudW0gdHlwZSBuYW1lLgoKDQoFBAICAAUSBJIBAggKDQoFBAICAAESBJIBCQ0KDQoFBAICAAMSBJIBEBEKJwoEBAICARIElAECIxoZIEVudW0gdmFsdWUgZGVmaW5pdGlvbnMuCgoNCgUEAgIBBBIElAECCgoNCgUEAgIBBhIElAELFAoNCgUEAgIBARIElAEVHgoNCgUEAgIBAxIElAEhIgooCgQEAgICEgSWAQIeGhogUHJvdG9jb2wgYnVmZmVyIG9wdGlvbnMuCgoNCgUEAgICBBIElgECCgoNCgUEAgICBhIElgELEQoNCgUEAgICARIElgESGQoNCgUEAgICAxIElgEcHQojCgQEAgIDEgSYAQIjGhUgVGhlIHNvdXJjZSBjb250ZXh0LgoKDQoFBAICAwYSBJgBAg8KDQoFBAICAwESBJgBEB4KDQoFBAICAwMSBJgBISIKIgoEBAICBBIEmgECFBoUIFRoZSBzb3VyY2Ugc3ludGF4LgoKDQoFBAICBAYSBJoBAggKDQoFBAICBAESBJoBCQ8KDQoFBAICBAMSBJoBEhMKVQoEBAICBRIEnAECFRpHIFRoZSBzb3VyY2UgZWRpdGlvbiBzdHJpbmcsIG9ubHkgdmFsaWQgd2hlbiBzeW50YXggaXMgU1lOVEFYX0VESVRJT05TLgoKDQoFBAICBQUSBJwBAggKDQoFBAICBQESBJwBCRAKDQoFBAICBQMSBJwBExQKJgoCBAMSBqABAKcBARoYIEVudW0gdmFsdWUgZGVmaW5pdGlvbi4KCgsKAwQDARIEoAEIEQogCgQEAwIAEgSiAQISGhIgRW51bSB2YWx1ZSBuYW1lLgoKDQoFBAMCAAUSBKIBAggKDQoFBAMCAAESBKIBCQ0KDQoFBAMCAAMSBKIBEBEKIgoEBAMCARIEpAECExoUIEVudW0gdmFsdWUgbnVtYmVyLgoKDQoFBAMCAQUSBKQBAgcKDQoFBAMCAQESBKQBCA4KDQoFBAMCAQMSBKQBERIKKAoEBAMCAhIEpgECHhoaIFByb3RvY29sIGJ1ZmZlciBvcHRpb25zLgoKDQoFBAMCAgQSBKYBAgoKDQoFBAMCAgYSBKYBCxEKDQoFBAMCAgESBKYBEhkKDQoFBAMCAgMSBKYBHB0KZwoCBAQSBqsBALYBARpZIEEgcHJvdG9jb2wgYnVmZmVyIG9wdGlvbiwgd2hpY2ggY2FuIGJlIGF0dGFjaGVkIHRvIGEgbWVzc2FnZSwgZmllbGQsCiBlbnVtZXJhdGlvbiwgZXRjLgoKCwoDBAQBEgSrAQgOCvwBCgQEBAIAEgSwAQISGu0BIFRoZSBvcHRpb24ncyBuYW1lLiBGb3IgcHJvdG9idWYgYnVpbHQtaW4gb3B0aW9ucyAob3B0aW9ucyBkZWZpbmVkIGluCiBkZXNjcmlwdG9yLnByb3RvKSwgdGhpcyBpcyB0aGUgc2hvcnQgbmFtZS4gRm9yIGV4YW1wbGUsIGAibWFwX2VudHJ5ImAuCiBGb3IgY3VzdG9tIG9wdGlvbnMsIGl0IHNob3VsZCBiZSB0aGUgZnVsbHktcXVhbGlmaWVkIG5hbWUuIEZvciBleGFtcGxlLAogYCJnb29nbGUuYXBpLmh0dHAiYC4KCg0KBQQEAgAFEgSwAQIICg0KBQQEAgABEgSwAQkNCg0KBQQEAgADEgSwARARCqACCgQEBAIBEgS1AQIQGpECIFRoZSBvcHRpb24ncyB2YWx1ZSBwYWNrZWQgaW4gYW4gQW55IG1lc3NhZ2UuIElmIHRoZSB2YWx1ZSBpcyBhIHByaW1pdGl2ZSwKIHRoZSBjb3JyZXNwb25kaW5nIHdyYXBwZXIgdHlwZSBkZWZpbmVkIGluIGdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90bwogc2hvdWxkIGJlIHVzZWQuIElmIHRoZSB2YWx1ZSBpcyBhbiBlbnVtLCBpdCBzaG91bGQgYmUgc3RvcmVkIGFzIGFuIGludDMyCiB2YWx1ZSB1c2luZyB0aGUgZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWUgdHlwZS4KCg0KBQQEAgEGEgS1AQIFCg0KBQQEAgEBEgS1AQYLCg0KBQQEAgEDEgS1AQ4PCkkKAgUAEga5AQDAAQEaOyBUaGUgc3ludGF4IGluIHdoaWNoIGEgcHJvdG9jb2wgYnVmZmVyIGVsZW1lbnQgaXMgZGVmaW5lZC4KCgsKAwUAARIEuQEFCwogCgQFAAIAEgS7AQIUGhIgU3ludGF4IGBwcm90bzJgLgoKDQoFBQACAAESBLsBAg8KDQoFBQACAAISBLsBEhMKIAoEBQACARIEvQECFBoSIFN5bnRheCBgcHJvdG8zYC4KCg0KBQUAAgEBEgS9AQIPCg0KBQUAAgECEgS9ARITCiIKBAUAAgISBL8BAhYaFCBTeW50YXggYGVkaXRpb25zYC4KCg0KBQUAAgIBEgS/AQIRCg0KBQUAAgICEgS/ARQVYgZwcm90bzMKmkMKGWdvb2dsZS9wcm90b2J1Zi9hcGkucHJvdG8SD2dvb2dsZS5wcm90b2J1ZhokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvGhpnb29nbGUvcHJvdG9idWYvdHlwZS5wcm90byLBAgoDQXBpEhIKBG5hbWUYASABKAlSBG5hbWUSMQoHbWV0aG9kcxgCIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RSB21ldGhvZHMSMQoHb3B0aW9ucxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSGAoHdmVyc2lvbhgEIAEoCVIHdmVyc2lvbhJFCg5zb3VyY2VfY29udGV4dBgFIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei4KBm1peGlucxgGIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5NaXhpblIGbWl4aW5zEi8KBnN5bnRheBgHIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheCKyAgoGTWV0aG9kEhIKBG5hbWUYASABKAlSBG5hbWUSKAoQcmVxdWVzdF90eXBlX3VybBgCIAEoCVIOcmVxdWVzdFR5cGVVcmwSKwoRcmVxdWVzdF9zdHJlYW1pbmcYAyABKAhSEHJlcXVlc3RTdHJlYW1pbmcSKgoRcmVzcG9uc2VfdHlwZV91cmwYBCABKAlSD3Jlc3BvbnNlVHlwZVVybBItChJyZXNwb25zZV9zdHJlYW1pbmcYBSABKAhSEXJlc3BvbnNlU3RyZWFtaW5nEjEKB29wdGlvbnMYBiADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEi8KBnN5bnRheBgHIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheCIvCgVNaXhpbhISCgRuYW1lGAEgASgJUgRuYW1lEhIKBHJvb3QYAiABKAlSBHJvb3RCdgoTY29tLmdvb2dsZS5wcm90b2J1ZkIIQXBpUHJvdG9QAVosZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vYXBpcGKiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK/zsKBxIFHgDOAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoJCgIDABIDIgAuCgkKAgMBEgMjACQKCAoBCBIDJQAsCgkKAggBEgMlACwKCAoBCBIDJgApCgkKAggIEgMmACkKCAoBCBIDJwAiCgkKAggKEgMnACIKCAoBCBIDKAAhCgkKAggkEgMoACEKCAoBCBIDKQA7CgkKAgglEgMpADsKCAoBCBIDKgBDCgkKAggLEgMqAEMKqwQKAgQAEgQ1AF8BGp4EIEFwaSBpcyBhIGxpZ2h0LXdlaWdodCBkZXNjcmlwdG9yIGZvciBhbiBBUEkgSW50ZXJmYWNlLgoKIEludGVyZmFjZXMgYXJlIGFsc28gZGVzY3JpYmVkIGFzICJwcm90b2NvbCBidWZmZXIgc2VydmljZXMiIGluIHNvbWUgY29udGV4dHMsCiBzdWNoIGFzIGJ5IHRoZSAic2VydmljZSIga2V5d29yZCBpbiBhIC5wcm90byBmaWxlLCBidXQgdGhleSBhcmUgZGlmZmVyZW50CiBmcm9tIEFQSSBTZXJ2aWNlcywgd2hpY2ggcmVwcmVzZW50IGEgY29uY3JldGUgaW1wbGVtZW50YXRpb24gb2YgYW4gaW50ZXJmYWNlCiBhcyBvcHBvc2VkIHRvIHNpbXBseSBhIGRlc2NyaXB0aW9uIG9mIG1ldGhvZHMgYW5kIGJpbmRpbmdzLiBUaGV5IGFyZSBhbHNvCiBzb21ldGltZXMgc2ltcGx5IHJlZmVycmVkIHRvIGFzICJBUElzIiBpbiBvdGhlciBjb250ZXh0cywgc3VjaCBhcyB0aGUgbmFtZSBvZgogdGhpcyBtZXNzYWdlIGl0c2VsZi4gU2VlIGh0dHBzOi8vY2xvdWQuZ29vZ2xlLmNvbS9hcGlzL2Rlc2lnbi9nbG9zc2FyeSBmb3IKIGRldGFpbGVkIHRlcm1pbm9sb2d5LgoKCgoDBAABEgM1CAsKewoEBAACABIDOAISGm4gVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoaXMgaW50ZXJmYWNlLCBpbmNsdWRpbmcgcGFja2FnZSBuYW1lCiBmb2xsb3dlZCBieSB0aGUgaW50ZXJmYWNlJ3Mgc2ltcGxlIG5hbWUuCgoMCgUEAAIABRIDOAIICgwKBQQAAgABEgM4CQ0KDAoFBAACAAMSAzgQEQpDCgQEAAIBEgM7Ah4aNiBUaGUgbWV0aG9kcyBvZiB0aGlzIGludGVyZmFjZSwgaW4gdW5zcGVjaWZpZWQgb3JkZXIuCgoMCgUEAAIBBBIDOwIKCgwKBQQAAgEGEgM7CxEKDAoFBAACAQESAzsSGQoMCgUEAAIBAxIDOxwdCjYKBAQAAgISAz4CHhopIEFueSBtZXRhZGF0YSBhdHRhY2hlZCB0byB0aGUgaW50ZXJmYWNlLgoKDAoFBAACAgQSAz4CCgoMCgUEAAICBhIDPgsRCgwKBQQAAgIBEgM+EhkKDAoFBAACAgMSAz4cHQqBCAoEBAACAxIDVAIVGvMHIEEgdmVyc2lvbiBzdHJpbmcgZm9yIHRoaXMgaW50ZXJmYWNlLiBJZiBzcGVjaWZpZWQsIG11c3QgaGF2ZSB0aGUgZm9ybQogYG1ham9yLXZlcnNpb24ubWlub3ItdmVyc2lvbmAsIGFzIGluIGAxLjEwYC4gSWYgdGhlIG1pbm9yIHZlcnNpb24gaXMKIG9taXR0ZWQsIGl0IGRlZmF1bHRzIHRvIHplcm8uIElmIHRoZSBlbnRpcmUgdmVyc2lvbiBmaWVsZCBpcyBlbXB0eSwgdGhlCiBtYWpvciB2ZXJzaW9uIGlzIGRlcml2ZWQgZnJvbSB0aGUgcGFja2FnZSBuYW1lLCBhcyBvdXRsaW5lZCBiZWxvdy4gSWYgdGhlCiBmaWVsZCBpcyBub3QgZW1wdHksIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIG5hbWUgd2lsbCBiZSB2ZXJpZmllZCB0byBiZQogY29uc2lzdGVudCB3aXRoIHdoYXQgaXMgcHJvdmlkZWQgaGVyZS4KCiBUaGUgdmVyc2lvbmluZyBzY2hlbWEgdXNlcyBbc2VtYW50aWMKIHZlcnNpb25pbmddKGh0dHA6Ly9zZW12ZXIub3JnKSB3aGVyZSB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIKIGluZGljYXRlcyBhIGJyZWFraW5nIGNoYW5nZSBhbmQgdGhlIG1pbm9yIHZlcnNpb24gYW4gYWRkaXRpdmUsCiBub24tYnJlYWtpbmcgY2hhbmdlLiBCb3RoIHZlcnNpb24gbnVtYmVycyBhcmUgc2lnbmFscyB0byB1c2Vycwogd2hhdCB0byBleHBlY3QgZnJvbSBkaWZmZXJlbnQgdmVyc2lvbnMsIGFuZCBzaG91bGQgYmUgY2FyZWZ1bGx5CiBjaG9zZW4gYmFzZWQgb24gdGhlIHByb2R1Y3QgcGxhbi4KCiBUaGUgbWFqb3IgdmVyc2lvbiBpcyBhbHNvIHJlZmxlY3RlZCBpbiB0aGUgcGFja2FnZSBuYW1lIG9mIHRoZQogaW50ZXJmYWNlLCB3aGljaCBtdXN0IGVuZCBpbiBgdjxtYWpvci12ZXJzaW9uPmAsIGFzIGluCiBgZ29vZ2xlLmZlYXR1cmUudjFgLiBGb3IgbWFqb3IgdmVyc2lvbnMgMCBhbmQgMSwgdGhlIHN1ZmZpeCBjYW4KIGJl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b2xsb3dzLiBBbnkgdmVyc2lvbiBwcmVmaXggd2lsbCBiZSByZXBsYWNlZCBieSB0aGUKICAgdmVyc2lvbiBvZiB0aGUgaW5jbHVkaW5nIGludGVyZmFjZSBwbHVzIHRoZSBbcm9vdF1bXSBwYXRoIGlmCiAgIHNwZWNpZmllZC4KCiBFeGFtcGxlIG9mIGEgc2ltcGxlIG1peGluOgoKICAgICBwYWNrYWdlIGdvb2dsZS5hY2wudjE7CiAgICAgc2VydmljZSBBY2Nlc3NDb250cm9sIHsKICAgICAgIC8vIEdldCB0aGUgdW5kZXJseWluZyBBQ0wgb2JqZWN0LgogICAgICAgcnBjIEdldEFjbChHZXRBY2xSZXF1ZXN0KSByZXR1cm5zIChBY2wpIHsKICAgICAgICAgb3B0aW9uIChnb29nbGUuYXBpLmh0dHApLmdldCA9ICIvdjEve3Jlc291cmNlPSoqfTpnZXRBY2wiOwogICAgICAgfQogICAgIH0KCiAgICAgcGFja2FnZSBnb29nbGUuc3RvcmFnZS52MjsKICAgICBzZXJ2aWNlIFN0b3JhZ2UgewogICAgICAgcnBjIEdldEFjbChHZXRBY2xSZXF1ZXN0KSByZXR1cm5zIChBY2wpOwoKICAgICAgIC8vIEdldCBhIGRhdGEgcmVjb3JkLgogICAgICAgcnBjIEdldERhdGEoR2V0RGF0YVJlcXVlc3QpIHJldHVybnMgKERhdGEpIHsKICAgICAgICAgb3B0aW9uIChnb29nbGUuYXBpLmh0dHApLmdldCA9ICIvdjIve3Jlc291cmNlPSoqfSI7CiAgICAgICB9CiAgICAgfQoKIEV4YW1wbGUgb2YgYSBtaXhpbiBjb25maWd1cmF0aW9uOgoKICAgICBhcGlzOgogICAgIC0gbmFtZTogZ29vZ2xlLnN0b3JhZ2UudjIuU3RvcmFnZQogICAgICAgbWl4aW5zOgogICAgICAgLSBuYW1lOiBnb29nbGUuYWNsLnYxLkFjY2Vzc0NvbnRyb2wKCiBUaGUgbWl4aW4gY29uc3RydWN0IGltcGxpZXMgdGhhdCBhbGwgbWV0aG9kcyBpbiBgQWNjZXNzQ29udHJvbGAgYXJlCiBhbHNvIGRlY2xhcmVkIHdpdGggc2FtZSBuYW1lIGFuZCByZXF1ZXN0L3Jlc3BvbnNlIHR5cGVzIGluCiBgU3RvcmFnZWAuIEEgZG9jdW1lbnRhdGlvbiBnZW5lcmF0b3Igb3IgYW5ub3RhdGlvbiBwcm9jZXNzb3Igd2lsbAogc2VlIHRoZSBlZmZlY3RpdmUgYFN0b3JhZ2UuR2V0QWNsYCBtZXRob2QgYWZ0ZXIgaW5oZXJ0aW5nCiBkb2N1bWVudGF0aW9uIGFuZCBhbm5vdGF0aW9ucyBhcyBmb2xsb3dzOgoKICAgICBzZXJ2aWNlIFN0b3JhZ2UgewogICAgICAgLy8gR2V0IHRoZSB1bmRlcmx5aW5nIEFDTCBvYmplY3QuCiAgICAgICBycGMgR2V0QWNsKEdldEFjbFJlcXVlc3QpIHJldHVybnMgKEFjbCkgewogICAgICAgICBvcHRpb24gKGdvb2dsZS5hcGkuaHR0cCkuZ2V0ID0gIi92Mi97cmVzb3VyY2U9Kip9OmdldEFjbCI7CiAgICAgICB9CiAgICAgICAuLi4KICAgICB9CgogTm90ZSBob3cgdGhlIHZlcnNpb24gaW4gdGhlIHBhdGggcGF0dGVybiBjaGFuZ2VkIGZyb20gYHYxYCB0byBgdjJgLgoKIElmIHRoZSBgcm9vdGAgZmllbGQgaW4gdGhlIG1peGluIGlzIHNwZWNpZmllZCwgaXQgc2hvdWxkIGJlIGEKIHJlbGF0aXZlIHBhdGggdW5kZXIgd2hpY2ggaW5oZXJpdGVkIEhUVFAgcGF0aHMgYXJlIHBsYWNlZC4gRXhhbXBsZToKCiAgICAgYXBpczoKICAgICAtIG5hbWU6IGdvb2dsZS5zdG9yYWdlLnYyLlN0b3JhZ2UKICAgICAgIG1peGluczoKICAgICAgIC0gbmFtZTogZ29vZ2xlLmFjbC52MS5BY2Nlc3NDb250cm9sCiAgICAgICAgIHJvb3Q6IGFjbHMKCiBUaGlzIGltcGxpZXMgdGhlIGZvbGxvd2luZyBpbmhlcml0ZWQgSFRUUCBhbm5vdGF0aW9uOgoKICAgICBzZXJ2aWNlIFN0b3JhZ2UgewogICAgICAgLy8gR2V0IHRoZSB1bmRlcmx5aW5nIEFDTCBvYmplY3QuCiAgICAgICBycGMgR2V0QWNsKEdldEFjbFJlcXVlc3QpIHJldHVybnMgKEFjbCkgewogICAgICAgICBvcHRpb24gKGdvb2dsZS5hcGkuaHR0cCkuZ2V0ID0gIi92Mi9hY2xzL3tyZXNvdXJjZT0qKn06Z2V0QWNsIjsKICAgICAgIH0KICAgICAgIC4uLgogICAgIH0KCgsKAwQCARIExwEIDQpMCgQEAgIAEgTJAQISGj4gVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSBpbnRlcmZhY2Ugd2hpY2ggaXMgaW5jbHVkZWQuCgoNCgUEAgIABRIEyQECCAoNCgUEAgIAARIEyQEJDQoNCgUEAgIAAxIEyQEQEQpbCgQEAgIBEgTNAQISGk0gSWYgbm9uLWVtcHR5IHNwZWNpZmllcyBhIHBhdGggdW5kZXIgd2hpY2ggaW5oZXJpdGVkIEhUVFAgcGF0aHMKIGFyZSByb290ZWQuCgoNCgUEAgIBBRIEzQECCAoNCgUEAgIBARIEzQEJDQoNCgUEAgIBAxIEzQEQEWIGcHJvdG8zCtclCh5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiI6CghEdXJhdGlvbhIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0KDAQoTY29tLmdvb2dsZS5wcm90b2J1ZkINRHVyYXRpb25Qcm90b1ABWjFnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9kdXJhdGlvbnBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzStkjCgYSBB4AcgEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAB8KCQoCCB8SAyIAHwoICgEIEgMjAEgKCQoCCAsSAyMASAoICgEIEgMkACwKCQoCCAESAyQALAoICgEIEgMlAC4KCQoCCAgSAyUALgoICgEIEgMmACIKCQoCCAoSAyYAIgoICgEIEgMnACEKCQoCCCQSAycAIQoICgEIEgMoADsKCQoCCCUSAygAOwqdEAoCBAASBGUAcgEakBAgQSBEdXJhdGlvbiByZXByZXNlbnRzIGEgc2lnbmVkLCBmaXhlZC1sZW5ndGggc3BhbiBvZiB0aW1lIHJlcHJlc2VudGVkCiBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0IG5hbm9zZWNvbmQKIHJlc29sdXRpb24uIEl0IGlzIGluZGVwZW5kZW50IG9mIGFueSBjYWxlbmRhciBhbmQgY29uY2VwdHMgbGlrZSAiZGF5Igogb3IgIm1vbnRoIi4gSXQgaXMgcmVsYXRlZCB0byBUaW1lc3RhbXAgaW4gdGhhdCB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuCiB0d28gVGltZXN0YW1wIHZhbHVlcyBpcyBhIER1cmF0aW9uIGFuZCBpdCBjYW4gYmUgYWRkZWQgb3Igc3VidHJhY3RlZAogZnJvbSBhIFRpbWVzdGFtcC4gUmFuZ2UgaXMgYXBwcm94aW1hdGVseSArLTEwLDAwMCB5ZWFycy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIER1cmF0aW9uIGZyb20gdHdvIFRpbWVzdGFtcHMgaW4gcHNldWRvIGNvZGUuCgogICAgIFRpbWVzdGFtcCBzdGFydCA9IC4uLjsKICAgICBUaW1lc3RhbXAgZW5kID0gLi4uOwogICAgIER1cmF0aW9uIGR1cmF0aW9uID0gLi4uOwoKICAgICBkdXJhdGlvbi5zZWNvbmRzID0gZW5kLnNlY29uZHMgLSBzdGFydC5zZWNvbmRzOwogICAgIGR1cmF0aW9uLm5hbm9zID0gZW5kLm5hbm9zIC0gc3RhcnQubmFub3M7CgogICAgIGlmIChkdXJhdGlvbi5zZWNvbmRzIDwgMCAmJiBkdXJhdGlvbi5uYW5vcyA+IDApIHsKICAgICAgIGR1cmF0aW9uLnNlY29uZHMgKz0gMTsKICAgICAgIGR1cmF0aW9uLm5hbm9zIC09IDEwMDAwMDAwMDA7CiAgICAgfSBlbHNlIGlmIChkdXJhdGlvbi5zZWNvbmRzID4gMCAmJiBkdXJhdGlvbi5uYW5vcyA8IDApIHsKICAgICAgIGR1cmF0aW9uLnNlY29uZHMgLT0gMTsKICAgICAgIGR1cmF0aW9uLm5hbm9zICs9IDEwMDAwMDAwMDA7CiAgICAgfQoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBUaW1lc3RhbXAgKyBEdXJhdGlvbiBpbiBwc2V1ZG8gY29kZS4KCiAgICAgVGltZXN0YW1wIHN0YXJ0ID0gLi4uOwogICAgIER1cmF0aW9uIGR1cmF0aW9uID0gLi4uOwogICAgIFRpbWVzdGFtcCBlbmQgPSAuLi47CgogICAgIGVuZC5zZWNvbmRzID0gc3RhcnQuc2Vjb25kcyArIGR1cmF0aW9uLnNlY29uZHM7CiAgICAgZW5kLm5hbm9zID0gc3RhcnQubmFub3MgKyBkdXJhdGlvbi5uYW5vczsKCiAgICAgaWYgKGVuZC5uYW5vcyA8IDApIHsKICAgICAgIGVuZC5zZWNvbmRzIC09IDE7CiAgICAgICBlbmQubmFub3MgKz0gMTAwMDAwMDAwMDsKICAgICB9IGVsc2UgaWYgKGVuZC5uYW5vcyA+PSAxMDAwMDAwMDAwKSB7CiAgICAgICBlbmQuc2Vjb25kcyArPSAxOwogICAgICAgZW5kLm5hbm9zIC09IDEwMDAwMDAwMDA7CiAgICAgfQoKIEV4YW1wbGUgMzogQ29tcHV0ZSBEdXJhdGlvbiBmcm9tIGRhdGV0aW1lLnRpbWVkZWx0YSBpbiBQeXRob24uCgogICAgIHRkID0gZGF0ZXRpbWUudGltZWRlbHRhKGRheXM9MywgbWludXRlcz0xMCkKICAgICBkdXJhdGlvbiA9IER1cmF0aW9uKCkKICAgICBkdXJhdGlvbi5Gcm9tVGltZWRlbHRhKHRkKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBEdXJhdGlvbiB0eXBlIGlzIGVuY29kZWQgYXMgYSBzdHJpbmcgcmF0aGVyIHRoYW4gYW4KIG9iamVjdCwgd2hlcmUgdGhlIHN0cmluZyBlbmRzIGluIHRoZSBzdWZmaXggInMiIChpbmRpY2F0aW5nIHNlY29uZHMpIGFuZAogaXMgcHJlY2VkZWQgYnkgdGhlIG51bWJlciBvZiBzZWNvbmRzLCB3aXRoIG5hbm9zZWNvbmRzIGV4cHJlc3NlZCBhcwogZnJhY3Rpb25hbCBzZWNvbmRzLiBGb3IgZXhhbXBsZSwgMyBzZWNvbmRzIHdpdGggMCBuYW5vc2Vjb25kcyBzaG91bGQgYmUKIGVuY29kZWQgaW4gSlNPTiBmb3JtYXQgYXMgIjNzIiwgd2hpbGUgMyBzZWNvbmRzIGFuZCAxIG5hbm9zZWNvbmQgc2hvdWxkCiBiZSBleHByZXNzZWQgaW4gSlNPTiBmb3JtYXQgYXMgIjMuMDAwMDAwMDAxcyIsIGFuZCAzIHNlY29uZHMgYW5kIDEKIG1pY3Jvc2Vjb25kIHNob3VsZCBiZSBleHByZXNzZWQgaW4gSlNPTiBmb3JtYXQgYXMgIjMuMDAwMDAxcyIuCgoKCgoDBAABEgNlCBAK3AEKBAQAAgASA2kCFBrOASBTaWduZWQgc2Vjb25kcyBvZiB0aGUgc3BhbiBvZiB0aW1lLiBNdXN0IGJlIGZyb20gLTMxNSw1NzYsMDAwLDAwMAogdG8gKzMxNSw1NzYsMDAwLDAwMCBpbmNsdXNpdmUuIE5vdGU6IHRoZXNlIGJvdW5kcyBhcmUgY29tcHV0ZWQgZnJvbToKIDYwIHNlYy9taW4gKiA2MCBtaW4vaHIgKiAyNCBoci9kYXkgKiAzNjUuMjUgZGF5cy95ZWFyICogMTAwMDAgeWVhcnMKCgwKBQQAAgAFEgNpAgcKDAoFBAACAAESA2kIDwoMCgUEAAIAAxIDaRITCoMDCgQEAAIBEgNxAhIa9QIgU2lnbmVkIGZyYWN0aW9ucyBvZiBhIHNlY29uZCBhdCBuYW5vc2Vjb25kIHJlc29sdXRpb24gb2YgdGhlIHNwYW4KIG9mIHRpbWUuIER1cmF0aW9ucyBsZXNzIHRoYW4gb25lIHNlY29uZCBhcmUgcmVwcmVzZW50ZWQgd2l0aCBhIDAKIGBzZWNvbmRzYCBmaWVsZCBhbmQgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBgbmFub3NgIGZpZWxkLiBGb3IgZHVyYXRpb25zCiBvZiBvbmUgc2Vjb25kIG9yIG1vcmUsIGEgbm9uLXplcm8gdmFsdWUgZm9yIHRoZSBgbmFub3NgIGZpZWxkIG11c3QgYmUKIG9mIHRoZSBzYW1lIHNpZ24gYXMgdGhlIGBzZWNvbmRzYCBmaWVsZC4gTXVzdCBiZSBmcm9tIC05OTksOTk5LDk5OQogdG8gKzk5OSw5OTksOTk5IGluY2x1c2l2ZS4KCgwKBQQAAgEFEgNxAgcKDAoFBAACAQESA3EIDQoMCgUEAAIBAxIDcRARYgZwcm90bzMK/xEKG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIgcKBUVtcHR5Qn0KE2NvbS5nb29nbGUucHJvdG9idWZCCkVtcHR5UHJvdG9QAVouZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZW1wdHlwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0q+EAoGEgQeADIQCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgBFCgkKAggLEgMiAEUKCAoBCBIDIwAsCgkKAggBEgMjACwKCAoBCBIDJAArCgkKAggIEgMkACsKCAoBCBIDJQAiCgkKAggKEgMlACIKCAoBCBIDJgAhCgkKAggkEgMmACEKCAoBCBIDJwA7CgkKAgglEgMnADsKCAoBCBIDKAAfCgkKAggfEgMoAB8KuwIKAgQAEgMyABAarwIgQSBnZW5lcmljIGVtcHR5IG1lc3NhZ2UgdGhhdCB5b3UgY2FuIHJlLXVzZSB0byBhdm9pZCBkZWZpbmluZyBkdXBsaWNhdGVkCiBlbXB0eSBtZXNzYWdlcyBpbiB5b3VyIEFQSXMuIEEgdHlwaWNhbCBleGFtcGxlIGlzIHRvIHVzZSBpdCBhcyB0aGUgcmVxdWVzdAogb3IgdGhlIHJlc3BvbnNlIHR5cGUgb2YgYW4gQVBJIG1ldGhvZC4gRm9yIGluc3RhbmNlOgoKICAgICBzZXJ2aWNlIEZvbyB7CiAgICAgICBycGMgQmFyKGdvb2dsZS5wcm90b2J1Zi5FbXB0eSkgcmV0dXJucyAoZ29vZ2xlLnByb3RvYnVmLkVtcHR5KTsKICAgICB9CgoKCgoDBAABEgMyCA1iBnByb3RvMwqKPQogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIhCglGaWVsZE1hc2sSFAoFcGF0aHMYASADKAlSBXBhdGhzQoUBChNjb20uZ29vZ2xlLnByb3RvYnVmQg5GaWVsZE1hc2tQcm90b1ABWjJnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9maWVsZG1hc2twYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qhOwoHEgUeAPQBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIALAoJCgIIARIDIgAsCggKAQgSAyMALwoJCgIICBIDIwAvCggKAQgSAyQAIgoJCgIIChIDJAAiCggKAQgSAyUAIQoJCgIIJBIDJQAhCggKAQgSAyYAOwoJCgIIJRIDJgA7CggKAQgSAycASQoJCgIICxIDJwBJCggKAQgSAygAHwoJCgIIHxIDKAAfCrIsCgIEABIG8QEA9AEBGqMsIGBGaWVsZE1hc2tgIHJlcHJlc2VudHMgYSBzZXQgb2Ygc3ltYm9saWMgZmllbGQgcGF0aHMsIGZvciBleGFtcGxlOgoKICAgICBwYXRoczogImYuYSIKICAgICBwYXRoczogImYuYi5kIgoKIEhlcmUgYGZgIHJlcHJlc2VudHMgYSBmaWVsZCBpbiBzb21lIHJvb3QgbWVzc2FnZSwgYGFgIGFuZCBgYmAKIGZpZWxkcyBpbiB0aGUgbWVzc2FnZSBmb3VuZCBpbiBgZmAsIGFuZCBgZGAgYSBmaWVsZCBmb3VuZCBpbiB0aGUKIG1lc3NhZ2UgaW4gYGYuYmAuCgogRmllbGQgbWFza3MgYXJlIHVzZWQgdG8gc3BlY2lmeSBhIHN1YnNldCBvZiBmaWVsZHMgdGhhdCBzaG91bGQgYmUKIHJldHVybmVkIGJ5IGEgZ2V0IG9wZXJhdGlvbiBvciBtb2RpZmllZCBieSBhbiB1cGRhdGUgb3BlcmF0aW9uLgogRmllbGQgbWFza3MgYWxzbyBoYXZlIGEgY3VzdG9tIEpTT04gZW5jb2RpbmcgKHNlZSBiZWxvdykuCgogIyBGaWVsZCBNYXNrcyBpbiBQcm9qZWN0aW9ucwoKIFdoZW4gdXNlZCBpbiB0aGUgY29udGV4dCBvZiBhIHByb2plY3Rpb24sIGEgcmVzcG9uc2UgbWVzc2FnZSBvcgogc3ViLW1lc3NhZ2UgaXMgZmlsdGVyZWQgYnkgdGhlIEFQSSB0byBvbmx5IGNvbnRhaW4gdGhvc2UgZmllbGRzIGFzCiBzcGVjaWZpZWQgaW4gdGhlIG1hc2suIEZvciBleGFtcGxlLCBpZiB0aGUgbWFzayBpbiB0aGUgcHJldmlvdXMKIGV4YW1wbGUgaXMgYXBwbGllZCB0byBhIHJlc3BvbnNlIG1lc3NhZ2UgYXMgZm9sbG93czoKCiAgICAgZiB7CiAgICAgICBhIDogMjIKICAgICAgIGIgewogICAgICAgICBkIDogMQogICAgICAgICB4IDogMgogICAgICAgfQogICAgICAgeSA6IDEzCiAgICAgfQogICAgIHo6IDgKCiBUaGUgcmVzdWx0IHdpbGwgbm90IGNvbnRhaW4gc3BlY2lmaWMgdmFsdWVzIGZvciBmaWVsZHMgeCx5IGFuZCB6CiAodGhlaXIgdmFsdWUgd2lsbCBiZSBzZXQgdG8gdGhlIGRlZmF1bHQsIGFuZCBvbWl0dGVkIGluIHByb3RvIHRleHQKIG91dHB1dCk6CgoKICAgICBmIHsKICAgICAgIGEgOiAyMgogICAgICAgYiB7CiAgICAgICAgIGQgOiAxCiAgICAgICB9CiAgICAgfQoKIEEgcmVwZWF0ZWQgZmllbGQgaXMgbm90IGFsbG93ZWQgZXhjZXB0IGF0IHRoZSBsYXN0IHBvc2l0aW9uIG9mIGEKIHBhdGhzIHN0cmluZy4KCiBJZiBhIEZpZWxkTWFzayBvYmplY3QgaXMgbm90IHByZXNlbnQgaW4gYSBnZXQgb3BlcmF0aW9uLCB0aGUKIG9wZXJhdGlvbiBhcHBsaWVzIHRvIGFsbCBmaWVsZHMgKGFzIGlmIGEgRmllbGRNYXNrIG9mIGFsbCBmaWVsZHMKIGhhZCBiZWVuIHNwZWNpZmllZCkuCgogTm90ZSB0aGF0IGEgZmllbGQgbWFzayBkb2VzIG5vdCBuZWNlc3NhcmlseSBhcHBseSB0byB0aGUKIHRvcC1sZXZlbCByZXNwb25zZSBtZXNzYWdlLiBJbiBjYXNlIG9mIGEgUkVTVCBnZXQgb3BlcmF0aW9uLCB0aGUKIGZpZWxkIG1hc2sgYXBwbGllcyBkaXJlY3RseSB0byB0aGUgcmVzcG9uc2UsIGJ1dCBpbiBjYXNlIG9mIGEgUkVTVAogbGlzdCBvcGVyYXRpb24sIHRoZSBtYXNrIGluc3RlYWQgYXBwbGllcyB0byBlYWNoIGluZGl2aWR1YWwgbWVzc2FnZQogaW4gdGhlIHJldHVybmVkIHJlc291cmNlIGxpc3QuIEluIGNhc2Ugb2YgYSBSRVNUIGN1c3RvbSBtZXRob2QsCiBvdGhlciBkZWZpbml0aW9ucyBtYXkgYmUgdXNlZC4gV2hlcmUgdGhlIG1hc2sgYXBwbGllcyB3aWxsIGJlCiBjbGVhcmx5IGRvY3VtZW50ZWQgdG9nZXRoZXIgd2l0aCBpdHMgZGVjbGFyYXRpb24gaW4gdGhlIEFQSS4gIEluCiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvbiB0aGUgcmV0dXJuZWQgcmVzb3VyY2UvcmVzb3VyY2VzIGlzIHJlcXVpcmVkCiBiZWhhdmlvciBmb3IgQVBJcy4KCiAjIEZpZWxkIE1hc2tzIGluIFVwZGF0ZSBPcGVyYXRpb25zCgogQSBmaWVsZCBtYXNrIGluIHVwZGF0ZSBvcGVyYXRpb25zIHNwZWNpZmllcyB3aGljaCBmaWVsZHMgb2YgdGhlCiB0YXJnZXRlZCByZXNvdXJjZSBhcmUgZ29pbmcgdG8gYmUgdXBkYXRlZC4gVGhlIEFQSSBpcyByZXF1aXJlZAogdG8gb25seSBjaGFuZ2UgdGhlIHZhbHVlcyBvZiB0aGUgZmllbGRzIGFzIHNwZWNpZmllZCBpbiB0aGUgbWFzawogYW5kIGxlYXZlIHRoZSBvdGhlcnMgdW50b3VjaGVkLiBJZiBhIHJlc291cmNlIGlzIHBhc3NlZCBpbiB0bwogZGVzY3JpYmUgdGhlIHVwZGF0ZWQgdmFsdWVzLCB0aGUgQVBJIGlnbm9yZXMgdGhlIHZhbHVlcyBvZiBhbGwKIGZpZWxkcyBub3QgY292ZXJlZCBieSB0aGUgbWFzay4KCiBJZiBhIHJlcGVhdGVkIGZpZWxkIGlzIHNwZWNpZmllZCBmb3IgYW4gdXBkYXRlIG9wZXJhdGlvbiwgbmV3IHZhbHVlcyB3aWxsCiBiZSBhcHBlbmRlZCB0byB0aGUgZXhpc3RpbmcgcmVwZWF0ZWQgZmllbGQgaW4gdGhlIHRhcmdldCByZXNvdXJjZS4gTm90ZSB0aGF0CiBhIHJlcGVhdGVkIGZpZWxkIGlzIG9ubHkgYWxsb3dlZCBpbiB0aGUgbGFzdCBwb3NpdGlvbiBvZiBhIGBwYXRoc2Agc3RyaW5nLgoKIElmIGEgc3ViLW1lc3NhZ2UgaXMgc3BlY2lmaWVkIGluIHRoZSBsYXN0IHBvc2l0aW9uIG9mIHRoZSBmaWVsZCBtYXNrIGZvciBhbgogdXBkYXRlIG9wZXJhdGlvbiwgdGhlbiBuZXcgdmFsdWUgd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgZXhpc3Rpbmcgc3ViLW1lc3NhZ2UKIGluIHRoZSB0YXJnZXQgcmVzb3VyY2UuCgogRm9yIGV4YW1wbGUsIGdpdmVuIHRoZSB0YXJnZXQgbWVzc2FnZToKCiAgICAgZiB7CiAgICAgICBiIHsKICAgICAgICAgZDogMQogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMV0KICAgICB9CgogQW5kIGFuIHVwZGF0ZSBtZXNzYWdlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgfQogICAgICAgYzogWzJdCiAgICAgfQoKIHRoZW4gaWYgdGhlIGZpZWxkIG1hc2sgaXM6CgogIHBhdGhzOiBbImYuYiIsICJmLmMiXQoKIHRoZW4gdGhlIHJlc3VsdCB3aWxsIGJlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMSwgMl0KICAgICB9CgogQW4gaW1wbGVtZW50YXRpb24gbWF5IHByb3ZpZGUgb3B0aW9ucyB0byBvdmVycmlkZSB0aGlzIGRlZmF1bHQgYmVoYXZpb3IgZm9yCiByZXBlYXRlZCBhbmQgbWVzc2FnZSBmaWVsZHMuCgogSW4gb3JkZXIgdG8gcmVzZXQgYSBmaWVsZCdzIHZhbHVlIHRvIHRoZSBkZWZhdWx0LCB0aGUgZmllbGQgbXVzdAogYmUgaW4gdGhlIG1hc2sgYW5kIHNldCB0byB0aGUgZGVmYXVsdCB2YWx1ZSBpbiB0aGUgcHJvdmlkZWQgcmVzb3VyY2UuCiBIZW5jZSwgaW4gb3JkZXIgdG8gcmVzZXQgYWxsIGZpZWxkcyBvZiBhIHJlc291cmNlLCBwcm92aWRlIGEgZGVmYXVsdAogaW5zdGFuY2Ugb2YgdGhlIHJlc291cmNlIGFuZCBzZXQgYWxsIGZpZWxkcyBpbiB0aGUgbWFzaywgb3IgZG8KIG5vdCBwcm92aWRlIGEgbWFzayBhcyBkZXNjcmliZWQgYmVsb3cuCgogSWYgYSBmaWVsZCBtYXNrIGlzIG5vdCBwcmVzZW50IG9uIHVwZGF0ZSwgdGhlIG9wZXJhdGlvbiBhcHBsaWVzIHRvCiBhbGwgZmllbGRzIChhcyBpZiBhIGZpZWxkIG1hc2sgb2YgYWxsIGZpZWxkcyBoYXMgYmVlbiBzcGVjaWZpZWQpLgogTm90ZSB0aGF0IGluIHRoZSBwcmVzZW5jZSBvZiBzY2hlbWEgZXZvbHV0aW9uLCB0aGlzIG1heSBtZWFuIHRoYXQKIGZpZWxkcyB0aGUgY2xpZW50IGRvZXMgbm90IGtub3cgYW5kIGhhcyB0aGVyZWZvcmUgbm90IGZpbGxlZCBpbnRvCiB0aGUgcmVxdWVzdCB3aWxsIGJlIHJlc2V0IHRvIHRoZWlyIGRlZmF1bHQuIElmIHRoaXMgaXMgdW53YW50ZWQKIGJlaGF2aW9yLCBhIHNwZWNpZmljIHNlcnZpY2UgbWF5IHJlcXVpcmUgYSBjbGllbnQgdG8gYWx3YXlzIHNwZWNpZnkKIGEgZmllbGQgbWFzaywgcHJvZHVjaW5nIGFuIGVycm9yIGlmIG5vdC4KCiBBcyB3aXRoIGdldCBvcGVyYXRpb25zLCB0aGUgbG9jYXRpb24gb2YgdGhlIHJlc291cmNlIHdoaWNoCiBkZXNjcmliZXMgdGhlIHVwZGF0ZWQgdmFsdWVzIGluIHRoZSByZXF1ZXN0IG1lc3NhZ2UgZGVwZW5kcyBvbiB0aGUKIG9wZXJhdGlvbiBraW5kLiBJbiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvZiB0aGUgZmllbGQgbWFzayBpcwogcmVxdWlyZWQgdG8gYmUgaG9ub3JlZCBieSB0aGUgQVBJLgoKICMjIENvbnNpZGVyYXRpb25zIGZvciBIVFRQIFJFU1QKCiBUaGUgSFRUUCBraW5kIG9mIGFuIHVwZGF0ZSBvcGVyYXRpb24gd2hpY2ggdXNlcyBhIGZpZWxkIG1hc2sgbXVzdAogYmUgc2V0IHRvIFBBVENIIGluc3RlYWQgb2YgUFVUIGluIG9yZGVyIHRvIHNhdGlzZnkgSFRUUCBzZW1hbnRpY3MKIChQVVQgbXVzdCBvbmx5IGJlIHVzZWQgZm9yIGZ1bGwgdXBkYXRlcykuCgogIyBKU09OIEVuY29kaW5nIG9mIEZpZWxkIE1hc2tzCgogSW4gSlNPTiwgYSBmaWVsZCBtYXNrIGlzIGVuY29kZWQgYXMgYSBzaW5nbGUgc3RyaW5nIHdoZXJlIHBhdGhzIGFyZQogc2VwYXJhdGVkIGJ5IGEgY29tbWEuIEZpZWxkcyBuYW1lIGluIGVhY2ggcGF0aCBhcmUgY29udmVydGVkCiB0by9mcm9tIGxvd2VyLWNhbWVsIG5hbWluZyBjb252ZW50aW9ucy4KCiBBcyBhbiBleGFtcGxlLCBjb25zaWRlciB0aGUgZm9sbG93aW5nIG1lc3NhZ2UgZGVjbGFyYXRpb25zOgoKICAgICBtZXNzYWdlIFByb2ZpbGUgewogICAgICAgVXNlciB1c2VyID0gMTsKICAgICAgIFBob3RvIHBob3RvID0gMjsKICAgICB9CiAgICAgbWVzc2FnZSBVc2VyIHsKICAgICAgIHN0cmluZyBkaXNwbGF5X25hbWUgPSAxOwogICAgICAgc3RyaW5nIGFkZHJlc3MgPSAyOwogICAgIH0KCiBJbiBwcm90byBhIGZpZWxkIG1hc2sgZm9yIGBQcm9maWxlYCBtYXkgbG9vayBhcyBzdWNoOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAidXNlci5kaXNwbGF5X25hbWUiCiAgICAgICBwYXRoczogInBob3RvIgogICAgIH0KCiBJbiBKU09OLCB0aGUgc2FtZSBtYXNrIGlzIHJlcHJlc2VudGVkIGFzIGJlbG93OgoKICAgICB7CiAgICAgICBtYXNrOiAidXNlci5kaXNwbGF5TmFtZSxwaG90byIKICAgICB9CgogIyBGaWVsZCBNYXNrcyBhbmQgT25lb2YgRmllbGRzCgogRmllbGQgbWFza3MgdHJlYXQgZmllbGRzIGluIG9uZW9mcyBqdXN0IGFzIHJlZ3VsYXIgZmllbGRzLiBDb25zaWRlciB0aGUKIGZvbGxvd2luZyBtZXNzYWdlOgoKICAgICBtZXNzYWdlIFNhbXBsZU1lc3NhZ2UgewogICAgICAgb25lb2YgdGVzdF9vbmVvZiB7CiAgICAgICAgIHN0cmluZyBuYW1lID0gNDsKICAgICAgICAgU3ViTWVzc2FnZSBzdWJfbWVzc2FnZSA9IDk7CiAgICAgICB9CiAgICAgfQoKIFRoZSBmaWVsZCBtYXNrIGNhbiBiZToKCiAgICAgbWFzayB7CiAgICAgICBwYXRoczogIm5hbWUiCiAgICAgfQoKIE9yOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAic3ViX21lc3NhZ2UiCiAgICAgfQoKIE5vdGUgdGhhdCBvbmVvZiB0eXBlIG5hbWVzICgidGVzdF9vbmVvZiIgaW4gdGhpcyBjYXNlKSBjYW5ub3QgYmUgdXNlZCBpbgogcGF0aHMuCgogIyMgRmllbGQgTWFzayBWZXJpZmljYXRpb24KCiBUaGUgaW1wbGVtZW50YXRpb24gb2YgYW55IEFQSSBtZXRob2Qgd2hpY2ggaGFzIGEgRmllbGRNYXNrIHR5cGUgZmllbGQgaW4gdGhlCiByZXF1ZXN0IHNob3VsZCB2ZXJpZnkgdGhlIGluY2x1ZGVkIGZpZWxkIHBhdGhzLCBhbmQgcmV0dXJuIGFuCiBgSU5WQUxJRF9BUkdVTUVOVGAgZXJyb3IgaWYgYW55IHBhdGggaXMgdW5tYXBwYWJsZS4KCgsKAwQAARIE8QEIEQosCgQEAAIAEgTzAQIcGh4gVGhlIHNldCBvZiBmaWVsZCBtYXNrIHBhdGhzLgoKDQoFBAACAAQSBPMBAgoKDQoFBAACAAUSBPMBCxEKDQoFBAACAAESBPMBEhcKDQoFBAACAAMSBPMBGhtiBnByb3RvMwrDMQofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjsKCVRpbWVzdGFtcBIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0KFAQoTY29tLmdvb2dsZS5wcm90b2J1ZkIOVGltZXN0YW1wUHJvdG9QAVoyZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vdGltZXN0YW1wcGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKwS8KBxIFHgCPAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAB8KCQoCCB8SAyIAHwoICgEIEgMjAEkKCQoCCAsSAyMASQoICgEIEgMkACwKCQoCCAESAyQALAoICgEIEgMlAC8KCQoCCAgSAyUALwoICgEIEgMmACIKCQoCCAoSAyYAIgoICgEIEgMnACEKCQoCCCQSAycAIQoICgEIEgMoADsKCQoCCCUSAygAOwraHQoCBAASBoQBAI8BARrLHSBBIFRpbWVzdGFtcCByZXByZXNlbnRzIGEgcG9pbnQgaW4gdGltZSBpbmRlcGVuZGVudCBvZiBhbnkgdGltZSB6b25lIG9yIGxvY2FsCiBjYWxlbmRhciwgZW5jb2RlZCBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0CiBuYW5vc2Vjb25kIHJlc29sdXRpb24uIFRoZSBjb3VudCBpcyByZWxhdGl2ZSB0byBhbiBlcG9jaCBhdCBVVEMgbWlkbmlnaHQgb24KIEphbnVhcnkgMSwgMTk3MCwgaW4gdGhlIHByb2xlcHRpYyBHcmVnb3JpYW4gY2FsZW5kYXIgd2hpY2ggZXh0ZW5kcyB0aGUKIEdyZWdvcmlhbiBjYWxlbmRhciBiYWNrd2FyZHMgdG8geWVhciBvbmUuCgogQWxsIG1pbnV0ZXMgYXJlIDYwIHNlY29uZHMgbG9uZy4gTGVhcCBzZWNvbmRzIGFyZSAic21lYXJlZCIgc28gdGhhdCBubyBsZWFwCiBzZWNvbmQgdGFibGUgaXMgbmVlZGVkIGZvciBpbnRlcnByZXRhdGlvbiwgdXNpbmcgYSBbMjQtaG91ciBsaW5lYXIKIHNtZWFyXShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS90aW1lL3NtZWFyKS4KCiBUaGUgcmFuZ2UgaXMgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0byA5OTk5LTEyLTMxVDIzOjU5OjU5Ljk5OTk5OTk5OVouIEJ5CiByZXN0cmljdGluZyB0byB0aGF0IHJhbmdlLCB3ZSBlbnN1cmUgdGhhdCB3ZSBjYW4gY29udmVydCB0byBhbmQgZnJvbSBbUkZDCiAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGRhdGUgc3RyaW5ncy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFBPU0lYIGB0aW1lKClgLgoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcyh0aW1lKE5VTEwpKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKDApOwoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgZ2V0dGltZW9mZGF5KClgLgoKICAgICBzdHJ1Y3QgdGltZXZhbCB0djsKICAgICBnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModHYudHZfc2VjKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKHR2LnR2X3VzZWMgKiAxMDAwKTsKCiBFeGFtcGxlIDM6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gV2luMzIgYEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKClgLgoKICAgICBGSUxFVElNRSBmdDsKICAgICBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgmZnQpOwogICAgIFVJTlQ2NCB0aWNrcyA9ICgoKFVJTlQ2NClmdC5kd0hpZ2hEYXRlVGltZSkgPDwgMzIpIHwgZnQuZHdMb3dEYXRlVGltZTsKCiAgICAgLy8gQSBXaW5kb3dzIHRpY2sgaXMgMTAwIG5hbm9zZWNvbmRzLiBXaW5kb3dzIGVwb2NoIDE2MDEtMDEtMDFUMDA6MDA6MDBaCiAgICAgLy8gaXMgMTE2NDQ0NzM2MDAgc2Vjb25kcyBiZWZvcmUgVW5peCBlcG9jaCAxOTcwLTAxLTAxVDAwOjAwOjAwWi4KICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcygoSU5UNjQpICgodGlja3MgLyAxMDAwMDAwMCkgLSAxMTY0NDQ3MzYwMExMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygoSU5UMzIpICgodGlja3MgJSAxMDAwMDAwMCkgKiAxMDApKTsKCiBFeGFtcGxlIDQ6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gSmF2YSBgU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKClgLgoKICAgICBsb25nIG1pbGxpcyA9IFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wID0gVGltZXN0YW1wLm5ld0J1aWxkZXIoKS5zZXRTZWNvbmRzKG1pbGxpcyAvIDEwMDApCiAgICAgICAgIC5zZXROYW5vcygoaW50KSAoKG1pbGxpcyAlIDEwMDApICogMTAwMDAwMCkpLmJ1aWxkKCk7CgogRXhhbXBsZSA1OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIEphdmEgYEluc3RhbnQubm93KClgLgoKICAgICBJbnN0YW50IG5vdyA9IEluc3RhbnQubm93KCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXAgPQogICAgICAgICBUaW1lc3RhbXAubmV3QnVpbGRlcigpLnNldFNlY29uZHMobm93LmdldEVwb2NoU2Vjb25kKCkpCiAgICAgICAgICAgICAuc2V0TmFub3Mobm93LmdldE5hbm8oKSkuYnVpbGQoKTsKCiBFeGFtcGxlIDY6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gY3VycmVudCB0aW1lIGluIFB5dGhvbi4KCiAgICAgdGltZXN0YW1wID0gVGltZXN0YW1wKCkKICAgICB0aW1lc3RhbXAuR2V0Q3VycmVudFRpbWUoKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBUaW1lc3RhbXAgdHlwZSBpcyBlbmNvZGVkIGFzIGEgc3RyaW5nIGluIHRoZQogW1JGQyAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGZvcm1hdC4gVGhhdCBpcywgdGhlCiBmb3JtYXQgaXMgInt5ZWFyfS17bW9udGh9LXtkYXl9VHtob3VyfTp7bWlufTp7c2VjfVsue2ZyYWNfc2VjfV1aIgogd2hlcmUge3llYXJ9IGlzIGFsd2F5cyBleHByZXNzZWQgdXNpbmcgZm91ciBkaWdpdHMgd2hpbGUge21vbnRofSwge2RheX0sCiB7aG91cn0sIHttaW59LCBhbmQge3NlY30gYXJlIHplcm8tcGFkZGVkIHRvIHR3byBkaWdpdHMgZWFjaC4gVGhlIGZyYWN0aW9uYWwKIHNlY29uZHMsIHdoaWNoIGNhbiBnbyB1cCB0byA5IGRpZ2l0cyAoaS5lLiB1cCB0byAxIG5hbm9zZWNvbmQgcmVzb2x1dGlvbiksCiBhcmUgb3B0aW9uYWwuIFRoZSAiWiIgc3VmZml4IGluZGljYXRlcyB0aGUgdGltZXpvbmUgKCJVVEMiKTsgdGhlIHRpbWV6b25lCiBpcyByZXF1aXJlZC4gQSBwcm90bzMgSlNPTiBzZXJpYWxpemVyIHNob3VsZCBhbHdheXMgdXNlIFVUQyAoYXMgaW5kaWNhdGVkIGJ5CiAiWiIpIHdoZW4gcHJpbnRpbmcgdGhlIFRpbWVzdGFtcCB0eXBlIGFuZCBhIHByb3RvMyBKU09OIHBhcnNlciBzaG91bGQgYmUKIGFibGUgdG8gYWNjZXB0IGJvdGggVVRDIGFuZCBvdGhlciB0aW1lem9uZXMgKGFzIGluZGljYXRlZCBieSBhbiBvZmZzZXQpLgoKIEZvciBleGFtcGxlLCAiMjAxNy0wMS0xNVQwMTozMDoxNS4wMVoiIGVuY29kZXMgMTUuMDEgc2Vjb25kcyBwYXN0CiAwMTozMCBVVEMgb24gSmFudWFyeSAxNSwgMjAxNy4KCiBJbiBKYXZhU2NyaXB0LCBvbmUgY2FuIGNvbnZlcnQgYSBEYXRlIG9iamVjdCB0byB0aGlzIGZvcm1hdCB1c2luZyB0aGUKIHN0YW5kYXJkCiBbdG9JU09TdHJpbmcoKV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvRGF0ZS90b0lTT1N0cmluZykKIG1ldGhvZC4gSW4gUHl0aG9uLCBhIHN0YW5kYXJkIGBkYXRldGltZS5kYXRldGltZWAgb2JqZWN0IGNhbiBiZSBjb252ZXJ0ZWQKIHRvIHRoaXMgZm9ybWF0IHVzaW5nCiBbYHN0cmZ0aW1lYF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMi9saWJyYXJ5L3RpbWUuaHRtbCN0aW1lLnN0cmZ0aW1lKSB3aXRoCiB0aGUgdGltZSBmb3JtYXQgc3BlYyAnJVktJW0tJWRUJUg6JU06JVMuJWZaJy4gTGlrZXdpc2UsIGluIEphdmEsIG9uZSBjYW4gdXNlCiB0aGUgSm9kYSBUaW1lJ3MgW2BJU09EYXRlVGltZUZvcm1hdC5kYXRlVGltZSgpYF0oCiBodHRwOi8vam9kYS10aW1lLnNvdXJjZWZvcmdlLm5ldC9hcGlkb2NzL29yZy9qb2RhL3RpbWUvZm9ybWF0L0lTT0RhdGVUaW1lRm9ybWF0Lmh0bWwjZGF0ZVRpbWUoKQogKSB0byBvYnRhaW4gYSBmb3JtYXR0ZXIgY2FwYWJsZSBvZiBnZW5lcmF0aW5nIHRpbWVzdGFtcHMgaW4gdGhpcyBmb3JtYXQuCgoKCwoDBAABEgSEAQgRCp0BCgQEAAIAEgSIAQIUGo4BIFJlcHJlc2VudHMgc2Vjb25kcyBvZiBVVEMgdGltZSBzaW5jZSBVbml4IGVwb2NoCiAxOTcwLTAxLTAxVDAwOjAwOjAwWi4gTXVzdCBiZSBmcm9tIDAwMDEtMDEtMDFUMDA6MDA6MDBaIHRvCiA5OTk5LTEyLTMxVDIzOjU5OjU5WiBpbmNsdXNpdmUuCgoNCgUEAAIABRIEiAECBwoNCgUEAAIAARIEiAEIDwoNCgUEAAIAAxIEiAESEwrlAQoEBAACARIEjgECEhrWASBOb24tbmVnYXRpdmUgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbi4gTmVnYXRpdmUKIHNlY29uZCB2YWx1ZXMgd2l0aCBmcmFjdGlvbnMgbXVzdCBzdGlsbCBoYXZlIG5vbi1uZWdhdGl2ZSBuYW5vcyB2YWx1ZXMKIHRoYXQgY291bnQgZm9yd2FyZCBpbiB0aW1lLiBNdXN0IGJlIGZyb20gMCB0byA5OTksOTk5LDk5OQogaW5jbHVzaXZlLgoKDQoFBAACAQUSBI4BAgcKDQoFBAACAQESBI4BCA0KDQoFBAACAQMSBI4BEBFiBnByb3RvMwrNIwoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvEg9nb29nbGUucHJvdG9idWYiIwoLRG91YmxlVmFsdWUSFAoFdmFsdWUYASABKAFSBXZhbHVlIiIKCkZsb2F0VmFsdWUSFAoFdmFsdWUYASABKAJSBXZhbHVlIiIKCkludDY0VmFsdWUSFAoFdmFsdWUYASABKANSBXZhbHVlIiMKC1VJbnQ2NFZhbHVlEhQKBXZhbHVlGAEgASgEUgV2YWx1ZSIiCgpJbnQzMlZhbHVlEhQKBXZhbHVlGAEgASgFUgV2YWx1ZSIjCgtVSW50MzJWYWx1ZRIUCgV2YWx1ZRgBIAEoDVIFdmFsdWUiIQoJQm9vbFZhbHVlEhQKBXZhbHVlGAEgASgIUgV2YWx1ZSIjCgtTdHJpbmdWYWx1ZRIUCgV2YWx1ZRgBIAEoCVIFdmFsdWUiIgoKQnl0ZXNWYWx1ZRIUCgV2YWx1ZRgBIAEoDFIFdmFsdWVCgwEKE2NvbS5nb29nbGUucHJvdG9idWZCDVdyYXBwZXJzUHJvdG9QAVoxZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vd3JhcHBlcnNwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rEHwoGEgQoAHoBCtkQCgEMEgMoABIyzhAgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgogV3JhcHBlcnMgZm9yIHByaW1pdGl2ZSAobm9uLW1lc3NhZ2UpIHR5cGVzLiBUaGVzZSB0eXBlcyBhcmUgdXNlZnVsCiBmb3IgZW1iZWRkaW5nIHByaW1pdGl2ZXMgaW4gdGhlIGBnb29nbGUucHJvdG9idWYuQW55YCB0eXBlIGFuZCBmb3IgcGxhY2VzCiB3aGVyZSB3ZSBuZWVkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIGFic2VuY2Ugb2YgYSBwcmltaXRpdmUKIHR5cGVkIGZpZWxkIGFuZCBpdHMgZGVmYXVsdCB2YWx1ZS4KCiBUaGVzZSB3cmFwcGVycyBoYXZlIG5vIG1lYW5pbmdmdWwgdXNlIHdpdGhpbiByZXBlYXRlZCBmaWVsZHMgYXMgdGhleSBsYWNrCiB0aGUgYWJpbGl0eSB0byBkZXRlY3QgcHJlc2VuY2Ugb24gaW5kaXZpZHVhbCBlbGVtZW50cy4KIFRoZXNlIHdyYXBwZXJzIGhhdmUgbm8gbWVhbmluZ2Z1bCB1c2Ugd2l0aGluIGEgbWFwIG9yIGEgb25lb2Ygc2luY2UKIGluZGl2aWR1YWwgZW50cmllcyBvZiBhIG1hcCBv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TiByZXByZXNlbnRhdGlvbiBmb3IgYEJ5dGVzVmFsdWVgIGlzIEpTT04gc3RyaW5nLgoKCgoDBAgBEgN3CBIKHwoEBAgCABIDeQISGhIgVGhlIGJ5dGVzIHZhbHVlLgoKDAoFBAgCAAUSA3kCBwoMCgUECAIAARIDeQgNCgwKBQQIAgADEgN5EBFiBnByb3RvMwr0YgovZ29vZ2xlL3Byb3RvYnVmL3VuaXR0ZXN0X3dlbGxfa25vd25fdHlwZXMucHJvdG8SEXByb3RvYnVmX3VuaXR0ZXN0Ghlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvGhlnb29nbGUvcHJvdG9idWYvYXBpLnByb3RvGh5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8aG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8aJGdvb2dsZS9wcm90b2J1Zi9zb3VyY2VfY29udGV4dC5wcm90bxocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90bxofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxoaZ29vZ2xlL3Byb3RvYnVmL3R5cGUucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90byK0CQoSVGVzdFdlbGxLbm93blR5cGVzEjEKCWFueV9maWVsZBgBIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSCGFueUZpZWxkEjEKCWFwaV9maWVsZBgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlSCGFwaUZpZWxkEkAKDmR1cmF0aW9uX2ZpZWxkGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUg1kdXJhdGlvbkZpZWxkEjcKC2VtcHR5X2ZpZWxkGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5UgplbXB0eUZpZWxkEkQKEGZpZWxkX21hc2tfZmllbGQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUg5maWVsZE1hc2tGaWVsZBJQChRzb3VyY2VfY29udGV4dF9maWVsZBgGIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0UhJzb3VyY2VDb250ZXh0RmllbGQSOgoMc3RydWN0X2ZpZWxkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFILc3RydWN0RmllbGQSQwoPdGltZXN0YW1wX2ZpZWxkGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIOdGltZXN0YW1wRmllbGQSNAoKdHlwZV9maWVsZBgJIAEoCzIVLmdvb2dsZS5wcm90b2J1Zi5UeXBlUgl0eXBlRmllbGQSPwoMZG91YmxlX2ZpZWxkGAogASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUgtkb3VibGVGaWVsZBI8CgtmbG9hdF9maWVsZBgLIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUgpmbG9hdEZpZWxkEjwKC2ludDY0X2ZpZWxkGAwgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSCmludDY0RmllbGQSPwoMdWludDY0X2ZpZWxkGA0gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUgt1aW50NjRGaWVsZBI8CgtpbnQzMl9maWVsZBgOIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUgppbnQzMkZpZWxkEj8KDHVpbnQzMl9maWVsZBgPIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVILdWludDMyRmllbGQSOQoKYm9vbF9maWVsZBgQIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSCWJvb2xGaWVsZBI/CgxzdHJpbmdfZmllbGQYESABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSC3N0cmluZ0ZpZWxkEjwKC2J5dGVzX2ZpZWxkGBIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSCmJ5dGVzRmllbGQSNwoLdmFsdWVfZmllbGQYEyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSCnZhbHVlRmllbGQi/wgKFlJlcGVhdGVkV2VsbEtub3duVHlwZXMSMQoJYW55X2ZpZWxkGAEgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIIYW55RmllbGQSMQoJYXBpX2ZpZWxkGAIgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaVIIYXBpRmllbGQSQAoOZHVyYXRpb25fZmllbGQYAyADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SDWR1cmF0aW9uRmllbGQSNwoLZW1wdHlfZmllbGQYBCADKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlSCmVtcHR5RmllbGQSRAoQZmllbGRfbWFza19maWVsZBgFIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSDmZpZWxkTWFza0ZpZWxkElAKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgAygLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSEnNvdXJjZUNvbnRleHRGaWVsZBI6CgxzdHJ1Y3RfZmllbGQYByADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0UgtzdHJ1Y3RGaWVsZBJDCg90aW1lc3RhbXBfZmllbGQYCCADKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUg50aW1lc3RhbXBGaWVsZBI0Cgp0eXBlX2ZpZWxkGAkgAygLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVSCXR5cGVGaWVsZBI/Cgxkb3VibGVfZmllbGQYCiADKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSC2RvdWJsZUZpZWxkEjwKC2Zsb2F0X2ZpZWxkGAsgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSCmZsb2F0RmllbGQSPAoLaW50NjRfZmllbGQYDCADKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIKaW50NjRGaWVsZBI/Cgx1aW50NjRfZmllbGQYDSADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSC3VpbnQ2NEZpZWxkEjwKC2ludDMyX2ZpZWxkGA4gAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSCmludDMyRmllbGQSPwoMdWludDMyX2ZpZWxkGA8gAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUgt1aW50MzJGaWVsZBI5Cgpib29sX2ZpZWxkGBAgAygLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVIJYm9vbEZpZWxkEj8KDHN0cmluZ19maWVsZBgRIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVILc3RyaW5nRmllbGQSPAoLYnl0ZXNfZmllbGQYEiADKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIKYnl0ZXNGaWVsZCKvCQoTT25lb2ZXZWxsS25vd25UeXBlcxIzCglhbnlfZmllbGQYASABKAsyFC5nb29nbGUucHJvdG9idWYuQW55SABSCGFueUZpZWxkEjMKCWFwaV9maWVsZBgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlIAFIIYXBpRmllbGQSQgoOZHVyYXRpb25fZmllbGQYAyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25IAFINZHVyYXRpb25GaWVsZBI5CgtlbXB0eV9maWVsZBgEIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAUgplbXB0eUZpZWxkEkYKEGZpZWxkX21hc2tfZmllbGQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrSABSDmZpZWxkTWFza0ZpZWxkElIKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRIAFISc291cmNlQ29udGV4dEZpZWxkEjwKDHN0cnVjdF9maWVsZBgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAFILc3RydWN0RmllbGQSRQoPdGltZXN0YW1wX2ZpZWxkGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAUg50aW1lc3RhbXBGaWVsZBI2Cgp0eXBlX2ZpZWxkGAkgASgLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVIAFIJdHlwZUZpZWxkEkEKDGRvdWJsZV9maWVsZBgKIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZUgAUgtkb3VibGVGaWVsZBI+CgtmbG9hdF9maWVsZBgLIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlSABSCmZsb2F0RmllbGQSPgoLaW50NjRfZmllbGQYDCABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZUgAUgppbnQ2NEZpZWxkEkEKDHVpbnQ2NF9maWVsZBgNIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZUgAUgt1aW50NjRGaWVsZBI+CgtpbnQzMl9maWVsZBgOIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlSABSCmludDMyRmllbGQSQQoMdWludDMyX2ZpZWxkGA8gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlSABSC3VpbnQzMkZpZWxkEjsKCmJvb2xfZmllbGQYECABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlSABSCWJvb2xGaWVsZBJBCgxzdHJpbmdfZmllbGQYESABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVIAFILc3RyaW5nRmllbGQSPgoLYnl0ZXNfZmllbGQYEiABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZUgAUgpieXRlc0ZpZWxkQg0KC29uZW9mX2ZpZWxkItgZChFNYXBXZWxsS25vd25UeXBlcxJPCglhbnlfZmllbGQYASADKAsyMi5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5BbnlGaWVsZEVudHJ5UghhbnlGaWVsZBJPCglhcGlfZmllbGQYAiADKAsyMi5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5BcGlGaWVsZEVudHJ5UghhcGlGaWVsZBJeCg5kdXJhdGlvbl9maWVsZBgDIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkR1cmF0aW9uRmllbGRFbnRyeVINZHVyYXRpb25GaWVsZBJVCgtlbXB0eV9maWVsZBgEIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkVtcHR5RmllbGRFbnRyeVIKZW1wdHlGaWVsZBJiChBmaWVsZF9tYXNrX2ZpZWxkGAUgAygLMjgucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRmllbGRNYXNrRmllbGRFbnRyeVIOZmllbGRNYXNrRmllbGQSbgoUc291cmNlX2NvbnRleHRfZmllbGQYBiADKAsyPC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5Tb3VyY2VDb250ZXh0RmllbGRFbnRyeVISc291cmNlQ29udGV4dEZpZWxkElgKDHN0cnVjdF9maWVsZBgHIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlN0cnVjdEZpZWxkRW50cnlSC3N0cnVjdEZpZWxkEmEKD3RpbWVzdGFtcF9maWVsZBgIIAMoCzI4LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlRpbWVzdGFtcEZpZWxkRW50cnlSDnRpbWVzdGFtcEZpZWxkElIKCnR5cGVfZmllbGQYCSADKAsyMy5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5UeXBlRmllbGRFbnRyeVIJdHlwZUZpZWxkElgKDGRvdWJsZV9maWVsZBgKIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkRvdWJsZUZpZWxkRW50cnlSC2RvdWJsZUZpZWxkElUKC2Zsb2F0X2ZpZWxkGAsgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRmxvYXRGaWVsZEVudHJ5UgpmbG9hdEZpZWxkElUKC2ludDY0X2ZpZWxkGAwgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuSW50NjRGaWVsZEVudHJ5UgppbnQ2NEZpZWxkElgKDHVpbnQ2NF9maWVsZBgNIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlVpbnQ2NEZpZWxkRW50cnlSC3VpbnQ2NEZpZWxkElUKC2ludDMyX2ZpZWxkGA4gAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuSW50MzJGaWVsZEVudHJ5UgppbnQzMkZpZWxkElgKDHVpbnQzMl9maWVsZBgPIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlVpbnQzMkZpZWxkRW50cnlSC3VpbnQzMkZpZWxkElIKCmJvb2xfZmllbGQYECADKAsyMy5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5Cb29sRmllbGRFbnRyeVIJYm9vbEZpZWxkElgKDHN0cmluZ19maWVsZBgRIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlN0cmluZ0ZpZWxkRW50cnlSC3N0cmluZ0ZpZWxkElUKC2J5dGVzX2ZpZWxkGBIgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuQnl0ZXNGaWVsZEVudHJ5UgpieXRlc0ZpZWxkGlEKDUFueUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSKgoFdmFsdWUYAiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgV2YWx1ZToCOAEaUQoNQXBpRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIqCgV2YWx1ZRgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlSBXZhbHVlOgI4ARpbChJEdXJhdGlvbkZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSLwoFdmFsdWUYAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SBXZhbHVlOgI4ARpVCg9FbXB0eUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSLAoFdmFsdWUYAiABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlSBXZhbHVlOgI4ARpdChNGaWVsZE1hc2tGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjAKBXZhbHVlGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IFdmFsdWU6AjgBGmUKF1NvdXJjZUNvbnRleHRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjQKBXZhbHVlGAIgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSBXZhbHVlOgI4ARpXChBTdHJ1Y3RGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5Ei0KBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIFdmFsdWU6AjgBGl0KE1RpbWVzdGFtcEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMAoFdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUgV2YWx1ZToCOAEaUwoOVHlwZUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSKwoFdmFsdWUYAiABKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZVIFdmFsdWU6AjgBGlwKEERvdWJsZUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMgoFdmFsdWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSBXZhbHVlOgI4ARpaCg9GbG9hdEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIFdmFsdWU6AjgBGloKD0ludDY0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUgV2YWx1ZToCOAEaXAoQVWludDY0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIFdmFsdWU6AjgBGloKD0ludDMyRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUgV2YWx1ZToCOAEaXAoQVWludDMyRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIFdmFsdWU6AjgBGlgKDkJvb2xGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjAKBXZhbHVlGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVIFdmFsdWU6AjgBGlwKEFN0cmluZ0ZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMgoFdmFsdWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSBXZhbHVlOgI4ARpaCg9CeXRlc0ZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIFdmFsdWU6AjgBQjkKGGNvbS5nb29nbGUucHJvdG9idWYudGVzdFABqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NK7ikKBhIEBwB4AQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABoKCAoBCBIDCwA3CgkKAgglEgMLADcKCAoBCBIDDAAiCgkKAggKEgMMACIKCAoBCBIDDQAxCgkKAggBEgMNADEKCQoCAwASAw8AIwoJCgIDARIDEAAjCgkKAgMCEgMRACgKCQoCAwMSAxIAJQoJCgIDBBIDEwAqCgkKAgMFEgMUAC4KCQoCAwYSAxUAJgoJCgIDBxIDFgApCgkKAgMIEgMXACQKCQoCAwkSAxgAKAqnAQoCBAASBB0AMgEamgEgVGVzdCB0aGF0IHdlIGNhbiBpbmNsdWRlIGFsbCB3ZWxsLWtub3duIHR5cGVzLgogRWFjaCB3cmFwcGVyIHR5cGUgaXMgaW5jbHVkZWQgc2VwYXJhdGVseSwgYXMgbGFuZ3VhZ2VzCiBtYXAgaGFuZGxlIGRpZmZlcmVudCB3cmFwcGVycyBpbiBkaWZmZXJlbnQgd2F5cy4KCgoKAwQAARIDHQgaCgsKBAQA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DgYSA3QCKAoMCgUEAwIOARIDdCk1CgwKBQQDAg4DEgN0ODoKCwoEBAMCDxIDdQI3CgwKBQQDAg8GEgN1AiYKDAoFBAMCDwESA3UnMQoMCgUEAwIPAxIDdTQ2CgsKBAQDAhASA3YCOwoMCgUEAwIQBhIDdgIoCgwKBQQDAhABEgN2KTUKDAoFBAMCEAMSA3Y4OgoLCgQEAwIREgN3AjkKDAoFBAMCEQYSA3cCJwoMCgUEAwIRARIDdygzCgwKBQQDAhEDEgN3NjhiBnByb3RvMwr+xQEKKmdvb2dsZS9wcm90b2J1Zi90ZXN0X21lc3NhZ2VzX3Byb3RvMy5wcm90bxIdcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8aHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8aH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90byKZWwoSVGVzdEFsbFR5cGVzUHJvdG8zEiUKDm9wdGlvbmFsX2ludDMyGAEgASgFUg1vcHRpb25hbEludDMyEiUKDm9wdGlvbmFsX2ludDY0GAIgASgDUg1vcHRpb25hbEludDY0EicKD29wdGlvbmFsX3VpbnQzMhgDIAEoDVIOb3B0aW9uYWxVaW50MzISJwoPb3B0aW9uYWxfdWludDY0GAQgASgEUg5vcHRpb25hbFVpbnQ2NBInCg9vcHRpb25hbF9zaW50MzIYBSABKBFSDm9wdGlvbmFsU2ludDMyEicKD29wdGlvbmFsX3NpbnQ2NBgGIAEoElIOb3B0aW9uYWxTaW50NjQSKQoQb3B0aW9uYWxfZml4ZWQzMhgHIAEoB1IPb3B0aW9uYWxGaXhlZDMyEikKEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZSD29wdGlvbmFsRml4ZWQ2NBIrChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD1IQb3B0aW9uYWxTZml4ZWQzMhIrChFvcHRpb25hbF9zZml4ZWQ2NBgKIAEoEFIQb3B0aW9uYWxTZml4ZWQ2NBIlCg5vcHRpb25hbF9mbG9hdBgLIAEoAlINb3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEncKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJnChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyLS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJuChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SXgoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMioucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbkVudW1SE29wdGlvbmFsRm9yZWlnbkVudW0ScQoVb3B0aW9uYWxfYWxpYXNlZF9lbnVtGBcgASgOMj0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLkFsaWFzZWRFbnVtUhNvcHRpb25hbEFsaWFzZWRFbnVtEjYKFW9wdGlvbmFsX3N0cmluZ19waWVjZRgYIAEoCUICCAJSE29wdGlvbmFsU3RyaW5nUGllY2USJwoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAFSDG9wdGlvbmFsQ29yZBJeChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvM1IQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJ3ChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USZwoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMi0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USbgoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEl4KFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIlCgxwYWNrZWRfaW50MzIYSyADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYTCADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGE0gAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYTiADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhhPIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GFAgAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGFEgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGFMgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GFQgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GFUgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhWIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhXIAMoCEICEAFSCnBhY2tlZEJvb2wSbgoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1CAhABUhBwYWNrZWROZXN0ZWRFbnVtEikKDnVucGFja2VkX2ludDMyGFkgAygFQgIQAFINdW5wYWNrZWRJbnQzMhIpCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0ICEABSDXVucGFja2VkSW50NjQSKwoPdW5wYWNrZWRfdWludDMyGFsgAygNQgIQAFIOdW5wYWNrZWRVaW50MzISKwoPdW5wYWNrZWRfdWludDY0GFwgAygEQgIQAFIOdW5wYWNrZWRVaW50NjQSKwoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgIQAFIOdW5wYWNrZWRTaW50MzISKwoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgIQAFIOdW5wYWNrZWRTaW50NjQSLQoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB0ICEABSD3VucGFja2VkRml4ZWQzMhItChB1bnBhY2tlZF9maXhlZDY0GGAgAygGQgIQAFIPdW5wYWNrZWRGaXhlZDY0Ei8KEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgIQAFIQdW5wYWNrZWRTZml4ZWQzMhIvChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEICEABSEHVucGFja2VkU2ZpeGVkNjQSKQoOdW5wYWNrZWRfZmxvYXQYYyADKAJCAhAAUg11bnBhY2tlZEZsb2F0EisKD3VucGFja2VkX2RvdWJsZRhkIAMoAUICEABSDnVucGFja2VkRG91YmxlEicKDXVucGFja2VkX2Jvb2wYZSADKAhCAhAAUgx1bnBhY2tlZEJvb2wScgoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUICEABSEnVucGFja2VkTmVzdGVkRW51bRJsCg9tYXBfaW50MzJfaW50MzIYOCADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEmwKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQScgoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJyChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnIKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzIScgoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ4ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEngKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSfgoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJ+ChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EmwKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSbwoQbWFwX2ludDMyX2RvdWJsZRhDIAMoCzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkRvdWJsZUVudHJ5Ug5tYXBJbnQzMkRvdWJsZRJmCg1tYXBfYm9vbF9ib29sGEQgAygLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnIKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSbwoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxKIAQoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USiwEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnlSF21hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlEn8KFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEoIBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzIScwoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEl0KCm9uZW9mX2VudW0YdyABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SRgoQb25lb2ZfbnVsbF92YWx1ZRh4IAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIOb25lb2ZOdWxsVmFsdWUSTwoVb3B0aW9uYWxfYm9vbF93cmFwcGVyGMkBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSE29wdGlvbmFsQm9vbFdyYXBwZXISUgoWb3B0aW9uYWxfaW50MzJfd3JhcHBlchjKASABKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIUb3B0aW9uYWxJbnQzMldyYXBwZXISUgoWb3B0aW9uYWxfaW50NjRfd3JhcHBlchjLASABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIUb3B0aW9uYWxJbnQ2NFdyYXBwZXISVQoXb3B0aW9uYWxfdWludDMyX3dyYXBwZXIYzAEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUhVvcHRpb25hbFVpbnQzMldyYXBwZXISVQoXb3B0aW9uYWxfdWludDY0X3dyYXBwZXIYzQEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUhVvcHRpb25hbFVpbnQ2NFdyYXBwZXISUgoWb3B0aW9uYWxfZmxvYXRfd3JhcHBlchjOASABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIUb3B0aW9uYWxGbG9hdFdyYXBwZXISVQoXb3B0aW9uYWxfZG91YmxlX3dyYXBwZXIYzwEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUhVvcHRpb25hbERvdWJsZVdyYXBwZXISVQoXb3B0aW9uYWxfc3RyaW5nX3dyYXBwZXIY0AEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUhVvcHRpb25hbFN0cmluZ1dyYXBwZXISUgoWb3B0aW9uYWxfYnl0ZXNfd3JhcHBlchjRASABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIUb3B0aW9uYWxCeXRlc1dyYXBwZXISTwoVcmVwZWF0ZWRfYm9vbF93cmFwcGVyGNMBIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSE3JlcGVhdGVkQm9vbFdyYXBwZXISUgoWcmVwZWF0ZWRfaW50MzJfd3JhcHBlchjUASADKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIUcmVwZWF0ZWRJbnQzMldyYXBwZXISUgoWcmVwZWF0ZWRfaW50NjRfd3JhcHBlchjVASADKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIUcmVwZWF0ZWRJbnQ2NFdyYXBwZXISVQoXcmVwZWF0ZWRfdWludDMyX3dyYXBwZXIY1gEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUhVyZXBlYXRlZFVpbnQzMldyYXBwZXISVQoXcmVwZWF0ZWRfdWludDY0X3dyYXBwZXIY1wEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUhVyZXBlYXRlZFVpbnQ2NFdyYXBwZXISUgoWcmVwZWF0ZWRfZmxvYXRfd3JhcHBlchjYASADKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIUcmVwZWF0ZWRGbG9hdFdyYXBwZXISVQoXcmVwZWF0ZWRfZG91YmxlX3dyYXBwZXIY2QEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUhVyZXBlYXRlZERvdWJsZVdyYXBwZXISVQoXcmVwZWF0ZWRfc3RyaW5nX3dyYXBwZXIY2gEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUhVyZXBlYXRlZFN0cmluZ1dyYXBwZXISUgoWcmVwZWF0ZWRfYnl0ZXNfd3JhcHBlchjbASADKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIUcmVwZWF0ZWRCeXRlc1dyYXBwZXISRwoRb3B0aW9uYWxfZHVyYXRpb24YrQIgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUhBvcHRpb25hbER1cmF0aW9uEkoKEm9wdGlvbmFsX3RpbWVzdGFtcBiuAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUhFvcHRpb25hbFRpbWVzdGFtcBJLChNvcHRpb25hbF9maWVsZF9tYXNrGK8CIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSEW9wdGlvbmFsRmllbGRNYXNrEkEKD29wdGlvbmFsX3N0cnVjdBiwAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ug5vcHRpb25hbFN0cnVjdBI4CgxvcHRpb25hbF9hbnkYsQIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVILb3B0aW9uYWxBbnkSPgoOb3B0aW9uYWxfdmFsdWUYsgIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUg1vcHRpb25hbFZhbHVlEksKE29wdGlvbmFsX251bGxfdmFsdWUYswIgASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZVIRb3B0aW9uYWxOdWxsVmFsdWUSRwoRcmVwZWF0ZWRfZHVyYXRpb24YtwIgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUhByZXBlYXRlZER1cmF0aW9uEkoKEnJlcGVhdGVkX3RpbWVzdGFtcBi4AiADKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUhFyZXBlYXRlZFRpbWVzdGFtcBJKChJyZXBlYXRlZF9maWVsZG1hc2sYuQIgAygLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IRcmVwZWF0ZWRGaWVsZG1hc2sSQQoPcmVwZWF0ZWRfc3RydWN0GMQCIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSDnJlcGVhdGVkU3RydWN0EjgKDHJlcGVhdGVkX2FueRi7AiADKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgtyZXBlYXRlZEFueRI+Cg5yZXBlYXRlZF92YWx1ZRi8AiADKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSDXJlcGVhdGVkVmFsdWUSSwoTcmVwZWF0ZWRfbGlzdF92YWx1ZRi9AiADKAsyGi5nb29nbGUucHJvdG9idWYuTGlzdFZhbHVlUhFyZXBlYXRlZExpc3RWYWx1ZRIfCgpmaWVsZG5hbWUxGJEDIAEoBVIKZmllbGRuYW1lMRIgCgtmaWVsZF9uYW1lMhiSAyABKAVSCmZpZWxkTmFtZTISIQoMX2ZpZWxkX25hbWUzGJMDIAEoBVIKRmllbGROYW1lMxIiCg1maWVsZF9fbmFtZTRfGJQDIAEoBVIKZmllbGROYW1lNBIhCgtmaWVsZDBuYW1lNRiVAyABKAVSC2ZpZWxkMG5hbWU1EiMKDWZpZWxkXzBfbmFtZTYYlgMgASgFUgtmaWVsZDBOYW1lNhIfCgpmaWVsZE5hbWU3GJcDIAEoBVIKZmllbGROYW1lNxIfCgpGaWVsZE5hbWU4GJgDIAEoBVIKRmllbGROYW1lOBIgCgtmaWVsZF9OYW1lORiZAyABKAVSCmZpZWxkTmFtZTkSIgoMRmllbGRfTmFtZTEwGJoDIAEoBVILRmllbGROYW1lMTASIgoMRklFTERfTkFNRTExGJsDIAEoBVILRklFTEROQU1FMTESIgoMRklFTERfbmFtZTEyGJwDIAEoBVILRklFTEROYW1lMTISJAoOX19maWVsZF9uYW1lMTMYnQMgASgFUgtGaWVsZE5hbWUxMxIkCg5fX0ZpZWxkX25hbWUxNBieAyABKAVSC0ZpZWxkTmFtZTE0EiMKDWZpZWxkX19uYW1lMTUYnwMgASgFUgtmaWVsZE5hbWUxNRIjCg1maWVsZF9fTmFtZTE2GKADIAEoBVILZmllbGROYW1lMTYSJAoOZmllbGRfbmFtZTE3X18YoQMgASgFUgtmaWVsZE5hbWUxNxIkCg5GaWVsZF9uYW1lMThfXxiiAyABKAVSC0ZpZWxkTmFtZTE4GnIKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJTCgtjb3JlY3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvM1ILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARpBChNNYXBTdHJpbmdCeXRlc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgMUgV2YWx1ZToCOAEaigEKG01hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJVCgV2YWx1ZRgCIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaeQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJDCgV2YWx1ZRgCIAEoCzItLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEahAEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJSCgV2YWx1ZRgCIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEacwoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJACgV2YWx1ZRgCIAEoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUgV2YWx1ZToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2VkRW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19CQVoQAhIHCgNNT08QAhIHCgNtb28QAhIHCgNiQXoQAhoCEAFCDQoLb25lb2ZfZmllbGRKBgj1AxD/AyIeCg5Gb3JlaWduTWVzc2FnZRIMCgFjGAEgASgFUgFjIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8zIi8KDkVudW1Pbmx5UHJvdG8zIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASpACgtGb3JlaWduRW51bRIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAkI4Cihjb20uZ29vZ2xlLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zSAH4AQGiAgZQcm90bzNK62YKBxIFDgCIAgEKiAMKAQwSAw4AEjL9AiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNF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b3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEncKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJtChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJuChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SZAoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE29wdGlvbmFsRm9yZWlnbkVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEl4KEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEncKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJtChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJuChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SZAoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE3JlcGVhdGVkRm9yZWlnbkVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEiUKDHBhY2tlZF9pbnQzMhhLIAMoBUICEAFSC3BhY2tlZEludDMyEiUKDHBhY2tlZF9pbnQ2NBhMIAMoA0ICEAFSC3BhY2tlZEludDY0EicKDXBhY2tlZF91aW50MzIYTSADKA1CAhABUgxwYWNrZWRVaW50MzISJwoNcGFja2VkX3VpbnQ2NBhOIAMoBEICEAFSDHBhY2tlZFVpbnQ2NBInCg1wYWNrZWRfc2ludDMyGE8gAygRQgIQAVIMcGFja2VkU2ludDMyEicKDXBhY2tlZF9zaW50NjQYUCADKBJCAhABUgxwYWNrZWRTaW50NjQSKQoOcGFja2VkX2ZpeGVkMzIYUSADKAdCAhABUg1wYWNrZWRGaXhlZDMyEikKDnBhY2tlZF9maXhlZDY0GFIgAygGQgIQAVINcGFja2VkRml4ZWQ2NBIrCg9wYWNrZWRfc2ZpeGVkMzIYUyADKA9CAhABUg5wYWNrZWRTZml4ZWQzMhIrCg9wYWNrZWRfc2ZpeGVkNjQYVCADKBBCAhABUg5wYWNrZWRTZml4ZWQ2NBIlCgxwYWNrZWRfZmxvYXQYVSADKAJCAhABUgtwYWNrZWRGbG9hdBInCg1wYWNrZWRfZG91YmxlGFYgAygBQgIQAVIMcGFja2VkRG91YmxlEiMKC3BhY2tlZF9ib29sGFcgAygIQgIQAVIKcGFja2VkQm9vbBJuChJwYWNrZWRfbmVzdGVkX2VudW0YWCADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUICEAFSEHBhY2tlZE5lc3RlZEVudW0SKQoOdW5wYWNrZWRfaW50MzIYWSADKAVCAhAAUg11bnBhY2tlZEludDMyEikKDnVucGFja2VkX2ludDY0GFogAygDQgIQAFINdW5wYWNrZWRJbnQ2NBIrCg91bnBhY2tlZF91aW50MzIYWyADKA1CAhAAUg51bnBhY2tlZFVpbnQzMhIrCg91bnBhY2tlZF91aW50NjQYXCADKARCAhAAUg51bnBhY2tlZFVpbnQ2NBIrCg91bnBhY2tlZF9zaW50MzIYXSADKBFCAhAAUg51bnBhY2tlZFNpbnQzMhIrCg91bnBhY2tlZF9zaW50NjQYXiADKBJCAhAAUg51bnBhY2tlZFNpbnQ2NBItChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgIQAFIPdW5wYWNrZWRGaXhlZDMyEi0KEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCAhAAUg91bnBhY2tlZEZpeGVkNjQSLwoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CAhAAUhB1bnBhY2tlZFNmaXhlZDMyEi8KEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgIQAFIQdW5wYWNrZWRTZml4ZWQ2NBIpCg51bnBhY2tlZF9mbG9hdBhjIAMoAkICEABSDXVucGFja2VkRmxvYXQSKwoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgIQAFIOdW5wYWNrZWREb3VibGUSJwoNdW5wYWNrZWRfYm9vbBhlIAMoCEICEABSDHVucGFja2VkQm9vbBJyChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtQgIQAFISdW5wYWNrZWROZXN0ZWRFbnVtEmwKD21hcF9pbnQzMl9pbnQzMhg4IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISbAoPbWFwX2ludDY0X2ludDY0GDkgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJyChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyEnIKEW1hcF91aW50NjRfdWludDY0GDsgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQScgoRbWFwX3NpbnQzMl9zaW50MzIYPCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJyChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EngKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISeAoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBg/IAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJ+ChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYQCADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEn4KFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSbAoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJvChBtYXBfaW50MzJfZG91YmxlGEMgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEmYKDW1hcF9ib29sX2Jvb2wYRCADKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wScgoRbWFwX3N0cmluZ19zdHJpbmcYRSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJvChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEogBChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeVIWbWFwU3RyaW5nTmVzdGVkTWVzc2FnZRKLAQoabWFwX3N0cmluZ19mb3JlaWduX21lc3NhZ2UYSCADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeVIXbWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2USfwoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnlSE21hcFN0cmluZ05lc3RlZEVudW0SggEKF21hcF9zdHJpbmdfZm9yZWlnbl9lbnVtGEogAygLMksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJzChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSXQoKb25lb2ZfZW51bRh3IAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJLCgRkYXRhGMkBIAEoCjI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5EYXRhUgRkYXRhEjAKDWRlZmF1bHRfaW50MzIY8QEgASgFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASABKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAEoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgASgROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAEoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAEoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASABKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASABKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASABKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgacgoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhElMKC2NvcmVjdXJzaXZlGAIgASgLMjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqKAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElUKBXZhbHVlGAIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARp/ChxNYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkkKBXZhbHVlGAIgASgLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSBXZhbHVlOgI4ARqEAQoYTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElIKBXZhbHVlGAIgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SBXZhbHVlOgI4ARp5ChlNYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkYKBXZhbHVlGAIgASgOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSBXZhbHVlOgI4ARpMCgREYXRhEiAKC2dyb3VwX2ludDMyGMoBIAEoBVIKZ3JvdXBJbnQzMhIiCgxncm91cF91aW50MzIYywEgASgNUgtncm91cFVpbnQzMhohChFNZXNzYWdlU2V0Q29ycmVjdCoICAQQ/////wc6AggBGvoBChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjESEAoDc3RyGBkgASgJUgNzdHIyyAEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBj5u14gASgLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMVITbWVzc2FnZVNldEV4dGVuc2lvbhr3AQobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24yEgwKAWkYCSABKAVSAWkyyQEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24iOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASoFCHgQyQFCDQoLb25lb2ZfZmllbGRKBgjoBxCQTiIkChRGb3JlaWduTWVzc2FnZVByb3RvMhIMCgFjGAEgASgFUgFjIp4DChVVbmtub3duVG9UZXN0QWxsVHlwZXMSJgoOb3B0aW9uYWxfaW50MzIY6QcgASgFUg1vcHRpb25hbEludDMyEigKD29wdGlvbmFsX3N0cmluZxjqByABKAlSDm9wdGlvbmFsU3RyaW5nElsKDm5lc3RlZF9tZXNzYWdlGOsHIAEoCzIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUg1uZXN0ZWRNZXNzYWdlEmkKDW9wdGlvbmFsZ3JvdXAY7AcgASgKMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVW5rbm93blRvVGVzdEFsbFR5cGVzLk9wdGlvbmFsR3JvdXBSDW9wdGlvbmFsZ3JvdXASJAoNb3B0aW9uYWxfYm9vbBjuByABKAhSDG9wdGlvbmFsQm9vbBImCg5yZXBlYXRlZF9pbnQzMhjzByADKAVSDXJlcGVhdGVkSW50MzIaHQoNT3B0aW9uYWxHcm91cBIMCgFhGAEgASgFUgFhIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8yIi8KDkVudW1Pbmx5UHJvdG8yIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASIlCg9PbmVTdHJpbmdQcm90bzISEgoEZGF0YRgBIAEoCVIEZGF0YSJhChFQcm90b1dpdGhLZXl3b3JkcxIWCgZpbmxpbmUYASABKAVSBmlubGluZRIYCgdjb25jZXB0GAIgASgJUgdjb25jZXB0EhoKCHJlcXVpcmVzGAMgAygJUghyZXF1aXJlcyLMGQoaVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzISJQoOcmVxdWlyZWRfaW50MzIYASACKAVSDXJlcXVpcmVkSW50MzISJQoOcmVxdWlyZWRfaW50NjQYAiACKANSDXJlcXVpcmVkSW50NjQSJwoPcmVxdWlyZWRfdWludDMyGAMgAigNUg5yZXF1aXJlZFVpbnQzMhInCg9yZXF1aXJlZF91aW50NjQYBCACKARSDnJlcXVpcmVkVWludDY0EicKD3JlcXVpcmVkX3NpbnQzMhgFIAIoEVIOcmVxdWlyZWRTaW50MzISJwoPcmVxdWlyZWRfc2ludDY0GAYgAigSUg5yZXF1aXJlZFNpbnQ2NBIpChByZXF1aXJlZF9maXhlZDMyGAcgAigHUg9yZXF1aXJlZEZpeGVkMzISKQoQcmVxdWlyZWRfZml4ZWQ2NBgIIAIoBlIPcmVxdWlyZWRGaXhlZDY0EisKEXJlcXVpcmVkX3NmaXhlZDMyGAkgAigPUhByZXF1aXJlZFNmaXhlZDMyEisKEXJlcXVpcmVkX3NmaXhlZDY0GAogAigQUhByZXF1aXJlZFNmaXhlZDY0EiUKDnJlcXVpcmVkX2Zsb2F0GAsgAigCUg1yZXF1aXJlZEZsb2F0EicKD3JlcXVpcmVkX2RvdWJsZRgMIAIoAVIOcmVxdWlyZWREb3VibGUSIwoNcmVxdWlyZWRfYm9vbBgNIAIoCFIMcmVxdWlyZWRCb29sEicKD3JlcXVpcmVkX3N0cmluZxgOIAIoCVIOcmVxdWlyZWRTdHJpbmcSJQoOcmVxdWlyZWRfYnl0ZXMYDyACKAxSDXJlcXVpcmVkQnl0ZXMSfwoXcmVxdWlyZWRfbmVzdGVkX21lc3NhZ2UYEiACKAsyRy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVyZXF1aXJlZE5lc3RlZE1lc3NhZ2USbQoYcmVxdWlyZWRfZm9yZWlnbl9tZXNzYWdlGBMgAigLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFnJlcXVpcmVkRm9yZWlnbk1lc3NhZ2USdgoUcmVxdWlyZWRfbmVzdGVkX2VudW0YFSACKA4yRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJyZXF1aXJlZE5lc3RlZEVudW0SZAoVcmVxdWlyZWRfZm9yZWlnbl9lbnVtGBYgAigOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE3JlcXVpcmVkRm9yZWlnbkVudW0SNgoVcmVxdWlyZWRfc3RyaW5nX3BpZWNlGBggAigJQgIIAlITcmVxdWlyZWRTdHJpbmdQaWVjZRInCg1yZXF1aXJlZF9jb3JkGBkgAigJQgIIAVIMcmVxdWlyZWRDb3JkEmYKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgAigLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSEHJlY3Vyc2l2ZU1lc3NhZ2USdwoab3B0aW9uYWxfcmVjdXJzaXZlX21lc3NhZ2UYHCABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIYb3B0aW9uYWxSZWN1cnNpdmVNZXNzYWdlElMKBGRhdGEYyQEgAigKMj4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuRGF0YVIEZGF0YRIwCg1kZWZhdWx0X2ludDMyGPEBIAIoBToKLTEyMzQ1Njc4OVIMZGVmYXVsdEludDMyEjoKDWRlZmF1bHRfaW50NjQY8gEgAigDOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIMZGVmYXVsdEludDY0EjIKDmRlZmF1bHRfdWludDMyGPMBIAIoDToKMjEyMzQ1Njc4OVINZGVmYXVsdFVpbnQzMhI8Cg5kZWZhdWx0X3VpbnQ2NBj0ASACKAQ6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0VWludDY0EjIKDmRlZmF1bHRfc2ludDMyGPUBIAIoEToKLTEyMzQ1Njc4OVINZGVmYXVsdFNpbnQzMhI8Cg5kZWZhdWx0X3NpbnQ2NBj2ASACKBI6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDY0EjQKD2RlZmF1bHRfZml4ZWQzMhj3ASACKAc6CjIxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDMyEj4KD2RlZmF1bHRfZml4ZWQ2NBj4ASACKAY6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug5kZWZhdWx0Rml4ZWQ2NBI2ChBkZWZhdWx0X3NmaXhlZDMyGPkBIAIoDzoKLTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDMyEkAKEGRlZmF1bHRfc2ZpeGVkNjQY+gEgAigQOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDY0EisKDWRlZmF1bHRfZmxvYXQY+wEgAigCOgU5ZSswOVIMZGVmYXVsdEZsb2F0Ei0KDmRlZmF1bHRfZG91YmxlGPwBIAIoAToFN2UrMjJSDWRlZmF1bHREb3VibGUSKAoMZGVmYXVsdF9ib29sGP0BIAIoCDoEdHJ1ZVILZGVmYXVsdEJvb2wSLwoOZGVmYXVsdF9zdHJpbmcY/gEgAigJOgdSb3NlYnVkUg1kZWZhdWx0U3RyaW5nEiwKDWRlZmF1bHRfYnl0ZXMY/wEgAigMOgZqb3NodWFSDGRlZmF1bHRCeXRlcxroAQoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgAigFUgFhElsKC2NvcmVjdXJzaXZlGAIgAigLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSC2NvcmVjdXJzaXZlEmwKFG9wdGlvbmFsX2NvcmVjdXJzaXZlGAMgASgLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSE29wdGlvbmFsQ29yZWN1cnNpdmUaTAoERGF0YRIgCgtncm91cF9pbnQzMhjKASACKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGMsBIAIoDVILZ3JvdXBVaW50MzIaIQoRTWVzc2FnZVNldENvcnJlY3QqCAgEEP////8HOgIIARqKAgobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xEhAKA3N0chgZIAIoCVIDc3RyMtgBChVtZXNzYWdlX3NldF9leHRlbnNpb24SSy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBj5u14gASgLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGocCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAIoBVIBaTLZAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24iOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASoFCHgQyQFKBgjoBxCQTipGChFGb3JlaWduRW51bVByb3RvMhIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAjpaCg9leHRlbnNpb25faW50MzISMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIYeCABKAVSDmV4dGVuc2lvbkludDMyQjgKKGNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzJIAfgBAaICBlByb3RvMkrTmAEKBxIFDgD1AgEKggMKAQwSAw4AEjLhAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4t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aW9uYWxTZml4ZWQzMogBARIwChFvcHRpb25hbF9zZml4ZWQ2NBgKIAEoEEgJUhBvcHRpb25hbFNmaXhlZDY0iAEBEioKDm9wdGlvbmFsX2Zsb2F0GAsgASgCSApSDW9wdGlvbmFsRmxvYXSIAQESLAoPb3B0aW9uYWxfZG91YmxlGAwgASgBSAtSDm9wdGlvbmFsRG91YmxliAEBEigKDW9wdGlvbmFsX2Jvb2wYDSABKAhIDFIMb3B0aW9uYWxCb29siAEBEiwKD29wdGlvbmFsX3N0cmluZxgOIAEoCUgNUg5vcHRpb25hbFN0cmluZ4gBARIqCg5vcHRpb25hbF9ieXRlcxgPIAEoDEgOUg1vcHRpb25hbEJ5dGVziAEBEiwKDW9wdGlvbmFsX2NvcmQYECABKAlCAggBSA9SDG9wdGlvbmFsQ29yZIgBARJwChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzIzLnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRNZXNzYWdlSBBSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZYgBARJsChNsYXp5X25lc3RlZF9tZXNzYWdlGBMgASgLMjMucHJvdG9idWZfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsLk5lc3RlZE1lc3NhZ2VCAigBSBFSEWxhenlOZXN0ZWRNZXNzYWdliAEBEmcKFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMjAucHJvdG9idWZfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsLk5lc3RlZEVudW1IElISb3B0aW9uYWxOZXN0ZWRFbnVtiAEBEiUKDnNpbmd1bGFyX2ludDMyGBYgASgFUg1zaW5ndWxhckludDMyEiUKDnNpbmd1bGFyX2ludDY0GBcgASgDUg1zaW5ndWxhckludDY0GisKDU5lc3RlZE1lc3NhZ2USEwoCYmIYASABKAVIAFICYmKIAQFCBQoDX2JiIkoKCk5lc3RlZEVudW0SDwoLVU5TUEVDSUZJRUQQABIHCgNGT08QARIHCgNCQVIQAhIHCgNCQVoQAxIQCgNORUcQ////////////AUIRCg9fb3B0aW9uYWxfaW50MzJCEQoPX29wdGlvbmFsX2ludDY0QhIKEF9vcHRpb25hbF91aW50MzJCEgoQX29wdGlvbmFsX3VpbnQ2NEISChBfb3B0aW9uYWxfc2ludDMyQhIKEF9vcHRpb25hbF9zaW50NjRCEwoRX29wdGlvbmFsX2ZpeGVkMzJCEwoRX29wdGlvbmFsX2ZpeGVkNjRCFAoSX29wdGlvbmFsX3NmaXhlZDMyQhQKEl9vcHRpb25hbF9zZml4ZWQ2NEIRCg9fb3B0aW9uYWxfZmxvYXRCEgoQX29wdGlvbmFsX2RvdWJsZUIQCg5fb3B0aW9uYWxfYm9vbEISChBfb3B0aW9uYWxfc3RyaW5nQhEKD19vcHRpb25hbF9ieXRlc0IQCg5fb3B0aW9uYWxfY29yZEIaChhfb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2VCFgoUX2xhenlfbmVzdGVkX21lc3NhZ2VCFwoVX29wdGlvbmFsX25lc3RlZF9lbnVtIrICChlUZXN0UHJvdG8zT3B0aW9uYWxNZXNzYWdlEmEKDm5lc3RlZF9tZXNzYWdlGAEgASgLMjoucHJvdG9idWZfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZS5OZXN0ZWRNZXNzYWdlUg1uZXN0ZWRNZXNzYWdlEncKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGAIgASgLMjoucHJvdG9idWZfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZS5OZXN0ZWRNZXNzYWdlSABSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZYgBARodCg1OZXN0ZWRNZXNzYWdlEgwKAXMYASABKAlSAXNCGgoYX29wdGlvbmFsX25lc3RlZF9tZXNzYWdlIskBChhQcm90bzNPcHRpb25hbEV4dGVuc2lvbnMySwoPZXh0X25vX29wdGlvbmFsEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGIjN2akBIAEoBVINZXh0Tm9PcHRpb25hbDJSChFleHRfd2l0aF9vcHRpb25hbBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiJzdmpASABKAVSD2V4dFdpdGhPcHRpb25hbIgBAToMwOjMzQoIyOjMzQoQQjgKIWNvbS5nb29nbGUucHJvdG9idWYudGVzdGlu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CgFvEgqK27eEDwQIARACKj0KDFRvcExldmVsRW51bRIhChFUT1BfTEVWRUxfVU5LTk9XThAAGgrS3amEDwQIARACGgr6nqqEDwQIARACMnQKB1NlcnZpY2USXQoHRG9TdHVmZhIiLnByb3RvYnVmX3VuaXR0ZXN0LlRvcExldmVsTWVzc2FnZRoiLnByb3RvYnVmX3VuaXR0ZXN0LlRvcExldmVsTWVzc2FnZSIK4q74gw8ECAEQAhoK6oeLhA8ECAEQAjpDCgxwbGFpbl9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYxrXs8AEgASgFUgtwbGFpbk9wdGlvbjpfChhydW50aW1lX3JldGVudGlvbl9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYnJLp8AEgASgFQgOIAQFSFnJ1bnRpbWVSZXRlbnRpb25PcHRpb246XQoXc291cmNlX3JldGVudGlvbl9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMY1Kzf8AEgASgFQgOIAQJSFXNvdXJjZVJldGVudGlvbk9wdGlvbjpkCgtmaWxlX29wdGlvbhIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxiA8t7wASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIKZmlsZU9wdGlvbjpuChByZXBlYXRlZF9vcHRpb25zEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGJL+2/ABIAMoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg9yZXBlYXRlZE9wdGlvbnM6gwEKFmV4dGVuc2lvbl9yYW5nZV9vcHRpb24SJi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zGITz2/ABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUhRleHRlbnNpb25SYW5nZU9wdGlvbjptCg5tZXNzYWdlX29wdGlvbhIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjT6NvwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVINbWVzc2FnZU9wdGlvbjpnCgxmaWVsZF9vcHRpb24SHS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zGKPXzfABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgtmaWVsZE9wdGlvbjpnCgxvbmVvZl9vcHRpb24SHS5nb29nbGUucHJvdG9idWYuT25lb2ZPcHRpb25zGLH7xvABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgtvbmVvZk9wdGlvbjpkCgtlbnVtX29wdGlvbhIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9ucxjvo8XwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIKZW51bU9wdGlvbjp0ChFlbnVtX2VudHJ5X29wdGlvbhIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zGNqbxfABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg9lbnVtRW50cnlPcHRpb246bQoOc2VydmljZV9vcHRpb24SHy5nb29nbGUucHJvdG9idWYuU2VydmljZU9wdGlvbnMY/bDB8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSDXNlcnZpY2VPcHRpb246agoNbWV0aG9kX29wdGlvbhIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGOyFv/ABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgxtZXRob2RPcHRpb246NQoBaRIbLnByb3RvYnVmX3VuaXR0ZXN0LkV4dGVuZGVlGAEgASgFQgqauu2EDwQIARACUgFpQjOqAhBQcm90b2J1ZlVuaXR0ZXN0kvHfhQ8ECAEQAoKQ94UPBAgBEALgkcmGDwKwrOOGDwFKuxkKBxIFBwC4AQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVk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