CuqQAQo3Y29uZm9ybWFuY2UvdGVzdF9wcm90b3MvdGVzdF9tZXNzYWdlc19lZGl0aW9uMjAyMy5wcm90bxIfcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucyL4RQoXVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMSJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSfgoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJ0ChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25NZXNzYWdlRWRpdGlvbjIwMjNSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USdQoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJrChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yNy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25FbnVtRWRpdGlvbjIwMjNSE29wdGlvbmFsRm9yZWlnbkVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEmUKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyM1IQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJ+ChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEnQKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uMjAyM1IWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ1ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmsKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSKAoMcGFja2VkX2ludDMyGEsgAygFQgWqAQIYAVILcGFja2VkSW50MzISKAoMcGFja2VkX2ludDY0GEwgAygDQgWqAQIYAVILcGFja2VkSW50NjQSKgoNcGFja2VkX3VpbnQzMhhNIAMoDUIFqgECGAFSDHBhY2tlZFVpbnQzMhIqCg1wYWNrZWRfdWludDY0GE4gAygEQgWqAQIYAVIMcGFja2VkVWludDY0EioKDXBhY2tlZF9zaW50MzIYTyADKBFCBaoBAhgBUgxwYWNrZWRTaW50MzISKgoNcGFja2VkX3NpbnQ2NBhQIAMoEkIFqgECGAFSDHBhY2tlZFNpbnQ2NBIsCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0IFqgECGAFSDXBhY2tlZEZpeGVkMzISLAoOcGFja2VkX2ZpeGVkNjQYUiADKAZCBaoBAhgBUg1wYWNrZWRGaXhlZDY0Ei4KD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0IFqgECGAFSDnBhY2tlZFNmaXhlZDMyEi4KD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEIFqgECGAFSDnBhY2tlZFNmaXhlZDY0EigKDHBhY2tlZF9mbG9hdBhVIAMoAkIFqgECGAFSC3BhY2tlZEZsb2F0EioKDXBhY2tlZF9kb3VibGUYViADKAFCBaoBAhgBUgxwYWNrZWREb3VibGUSJgoLcGFja2VkX2Jvb2wYVyADKAhCBaoBAhgBUgpwYWNrZWRCb29sEngKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAFSEHBhY2tlZE5lc3RlZEVudW0SLAoOdW5wYWNrZWRfaW50MzIYWSADKAVCBaoBAhgCUg11bnBhY2tlZEludDMyEiwKDnVucGFja2VkX2ludDY0GFogAygDQgWqAQIYAlINdW5wYWNrZWRJbnQ2NBIuCg91bnBhY2tlZF91aW50MzIYWyADKA1CBaoBAhgCUg51bnBhY2tlZFVpbnQzMhIuCg91bnBhY2tlZF91aW50NjQYXCADKARCBaoBAhgCUg51bnBhY2tlZFVpbnQ2NBIuCg91bnBhY2tlZF9zaW50MzIYXSADKBFCBaoBAhgCUg51bnBhY2tlZFNpbnQzMhIuCg91bnBhY2tlZF9zaW50NjQYXiADKBJCBaoBAhgCUg51bnBhY2tlZFNpbnQ2NBIwChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDMyEjAKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCBaoBAhgCUg91bnBhY2tlZEZpeGVkNjQSMgoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CBaoBAhgCUhB1bnBhY2tlZFNmaXhlZDMyEjIKEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQ2NBIsCg51bnBhY2tlZF9mbG9hdBhjIAMoAkIFqgECGAJSDXVucGFja2VkRmxvYXQSLgoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgWqAQIYAlIOdW5wYWNrZWREb3VibGUSKgoNdW5wYWNrZWRfYm9vbBhlIAMoCEIFqgECGAJSDHVucGFja2VkQm9vbBJ8ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAJSEnVucGFja2VkTmVzdGVkRW51bRJzCg9tYXBfaW50MzJfaW50MzIYOCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJzCg9tYXBfaW50NjRfaW50NjQYOSADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJ5ChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ5ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ5ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJ5ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ/ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ/ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKFAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShQEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EnMKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EnYKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEm0KDW1hcF9ib29sX2Jvb2wYRCADKAsySS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnkKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEnYKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEo8BChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USkgEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKGAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEokBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJSLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEnoKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSZAoKb25lb2ZfZW51bRh3IAEoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SdAoNZ3JvdXBsaWtldHlwZRjJASABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLkdyb3VwTGlrZVR5cGVCBaoBAigCUg1ncm91cGxpa2V0eXBlEncKD2RlbGltaXRlZF9maWVsZBjKASABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLkdyb3VwTGlrZVR5cGVCBaoBAigCUg5kZWxpbWl0ZWRGaWVsZBp5Cg1OZXN0ZWRNZXNzYWdlEgwKAWEYASABKAVSAWESWgoLY29yZWN1cnNpdmUYAiABKAsyOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqRAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElwKBXZhbHVlGAIgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEahgEKHE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSUAoFdmFsdWUYAiABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25NZXNzYWdlRWRpdGlvbjIwMjNSBXZhbHVlOgI4ARqLAQoYTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElkKBXZhbHVlGAIgASgOMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEagAEKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSTQoFdmFsdWUYAiABKA4yNy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25FbnVtRWRpdGlvbjIwMjNSBXZhbHVlOgI4ARpVCg1Hcm91cExpa2VUeXBlEiAKC2dyb3VwX2ludDMyGMoBIAEoBVIKZ3JvdXBJbnQzMhIiCgxncm91cF91aW50MzIYywEgASgNUgtncm91cFVpbnQzMiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUINCgtvbmVvZl9maWVsZCIpChlGb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzEgwKAWMYASABKAVSAWMiHQoNR3JvdXBMaWtlVHlwZRIMCgFjGAEgASgFUgFjKksKFkZvcmVpZ25FbnVtRWRpdGlvbjIwMjMSDwoLRk9SRUlHTl9GT08QABIPCgtGT1JFSUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAI6YQoPZXh0ZW5zaW9uX2ludDMyEjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMxh4IAEoBVIOZXh0ZW5zaW9uSW50MzI6lQEKDWdyb3VwbGlrZXR5cGUSOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHkgASgLMi4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Hcm91cExpa2VUeXBlQgWqAQIoAlINZ3JvdXBsaWtldHlwZTqUAQoNZGVsaW1pdGVkX2V4dBI4LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMYeiABKAsyLi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkdyb3VwTGlrZVR5cGVCBaoBAigCUgxkZWxpbWl0ZWRFeHRCPAotY29tLmdvb2dsZS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb24yMDIzUAGiAghFZGl0aW9uc0qeRQoHEgUAAMUBAQoICgEMEgMAABEKCAoBAhIDAgAoCggKAQgSAwQARgoJCgIIARIDBABGCggKAQgSAwUAIgoJCgIIChIDBQAiCggKAQgSAwYAJgoJCgIIJBIDBgAmCgsKAgQAEgUIAK4BAQoKCgMEAAESAwgIHwoMCgQEAAMAEgQJAgwDCgwKBQQAAwABEgMJChcKDQoGBAADAAIAEgMKBBAKDgoHBAADAAIABRIDCgQJCg4KBwQAAwACAAESAwoKCwoOCgcEAAMAAgADEgMKDg8KDQoGBAADAAIBEgMLBCwKDgoHBAADAAIBBhIDCwQbCg4KBwQAAwACAQESAwscJwoOCgcEAAMAAgEDEgMLKisKDAoEBAAEABIEDgITAwoMCgUEAAQAARIDDgcRCg0KBgQABAACABIDDwQMCg4KBwQABAACAAESAw8EBwoOCgcEAAQAAgACEgMPCgsKDQoGBAAEAAIBEgMQBAwKDgoHBAAEAAIBARIDEAQHCg4KBwQABAACAQISAxAKCwoNCgYEAAQAAgISAxEEDAoOCgcEAAQAAgIBEgMRBAcKDgoHBAAEAAICAhIDEQoLCigKBgQABAACAxIDEgQNIhkgSW50ZW50aW9uYWxseSBuZWdhdGl2ZS4KCg4KBwQABAACAwESAxIEBwoOCgcEAAQAAgMCEgMSCgwKFwoEBAACABIDFgIbGgogU2luZ3VsYXIKCgwKBQQAAgAFEgMWAgcKDAoFBAACAAESAxYIFgoMCgUEAAIAAxIDFhkaCgsKBAQAAgESAxcCGwoMCgUEAAIBBRIDFwIHCgwKBQQAAgEBEgMXCBYKDAoFBAACAQMSAxcZGgoLCgQEAAICEgMYAh0KDAoFBAACAgUSAxgCCAoMCgUEAAICARIDGAkYCgwKBQQAAgIDEgMYGxwKCwoEBAACAxIDGQIdCgwKBQQAAgMFEgMZAggKDAoFBAACAwESAxkJGAoMCgUEAAIDAxIDGRscCgsKBAQAAgQSAxoCHQoMCgUEAAIEBRIDGgIICgwKBQQAAgQBEgMaCRgKDAoFBAACBAMSAxobHAoLCgQEAAIFEgMbAh0KDAoFBAACBQUSAxsCCAoMCgUEAAIFARIDGwkYCgwKBQQAAgUDEgMbGxwKCwoEBAACBhIDHAIfCgwKBQQAAgYFEgMcAgkKDAoFBAACBgESAxwKGgoMCgUEAAIGAxIDHB0eCgsKBAQAAgcSAx0CHwoMCgUEAAIHBRIDHQIJCgwKBQQAAgcBEgMdChoKDAoFBAACBwMSAx0dHgoLCgQEAAIIEgMeAiEKDAoFBAACCAUSAx4CCgoMCgUEAAIIARIDHgscCgwKBQQAAggDEgMeHyAKCwoEBAACCRIDHwIiCgwKBQQAAgkFEgMfAgoKDAoFBAACCQESAx8LHAoMCgUEAAIJAxIDHx8hCgsKBAQAAgoSAyACHAoMCgUEAAIKBRIDIAIHCgwKBQQAAgoBEgMgCBYKDAoFBAACCgMSAyAZGwoLCgQEAAILEgMhAh4KDAoFBAACCwUSAyECCAoMCgUEAAILARIDIQkYCgwKBQQAAgsDEgMhGx0KCwoEBAACDBIDIgIaCgwKBQQAAgwFEgMiAgYKDAoFBAACDAESAyIHFAoMCgUEAAIMAxIDIhcZCgsKBAQAAg0SAyMCHgoMCgUEAAINBRIDIwIICgwKBQQAAg0BEgMjCRgKDAoFBAACDQMSAyMbHQoLCgQEAAIOEgMkAhwKDAoFBAACDgUSAyQCBwoMCgUEAAIOARIDJAgWCgwKBQQAAg4DEgMkGRsKCwoEBAACDxIDJgItCgwKBQQAAg8GEgMmAg8KDAoFBAACDwESAyYQJwoMCgUEAAIPAxIDJiosCgsKBAQAAhASAycCOgoMCgUEAAIQBhIDJwIbCgwKBQQAAhABEgMnHDQKDAoFBAACEAMSAyc3OQoLCgQEAAIREgMpAicKDAoFBAACEQYSAykCDAoMCgUEAAIRARIDKQ0hCgwKBQQAAhEDEgMpJCYKCwoEBAACEhIDKgI0CgwKBQQAAhIGEgMqAhgKDAoFBAACEgESAyoZLgoMCgUEAAISAxIDKjEzCgsKBAQAAhMSAywCOwoMCgUEAAITBRIDLAIICgwKBQQAAhMBEgMsCR4KDAoFBAACEwMSAywhIwoMCgUEAAITCBIDLCQ6Cg0KBgQAAhMIARIDLCU5CgsKBAQAAhQSAy0CKwoMCgUEAAIUBRIDLQIICgwKBQQAAhQBEgMtCRYKDAoFBAACFAMSAy0ZGwoMCgUEAAIUCBIDLRwqCg0KBgQAAhQIARIDLR0pCgsKBAQAAhUSAy8CMQoMCgUEAAIVBhIDLwIZCgwKBQQAAhUBEgMvGisKDAoFBAACFQMSAy8uMAoXCgQEAAIWEgMyAiUaCiBSZXBlYXRlZAoKDAoFBAACFgQSAzICCgoMCgUEAAIWBRIDMgsQCgwKBQQAAhYBEgMyER8KDAoFBAACFgMSAzIiJAoLCgQEAAIXEgMzAiUKDAoFBAACFwQSAzMCCgoMCgUEAAIXBRIDMwsQCgwKBQQAAhcBEgMzER8KDAoFBAACFwMSAzMiJAoLCgQEAAIYEgM0AicKDAoFBAACGAQSAzQCCgoMCgUEAAIYBRIDNAsRCgwKBQQAAhgBEgM0EiEKDAoFBAACGAMSAzQkJgoLCgQEAAIZEgM1AicKDAoFBAACGQQSAzUCCgoMCgUEAAIZBRIDNQsRCgwKBQQAAhkBEgM1EiEKDAoFBAACGQMSAzUkJgoLCgQEAAIaEgM2AicKDAoFBAACGgQSAzYCCgoMCgUEAAIaBRIDNgsRCgwKBQQAAhoBEgM2EiEKDAoFBAACGgMSAzYkJgoLCgQEAAIbEgM3AicKDAoFBAACGwQSAzcCCgoMCgUEAAIbBRIDNwsRCgwKBQQAAhsBEgM3EiEKDAoFBAACGwMSAzckJgoLCgQEAAIcEgM4AikKDAoFBAACHAQSAzgCCgoMCgUEAAIcBRIDOAsSCgwKBQQAAhwBEgM4EyMKDAoFBAACHAMSAzgmKAoLCgQEAAIdEgM5AikKDAoFBAACHQQSAzkCCgoMCgUEAAIdBRIDOQsSCgwKBQQAAh0BEgM5EyMKDAoFBAACHQMSAzkmKAoLCgQEAAIeEgM6AisKDAoFBAACHgQSAzoCCgoMCgUEAAIeBRIDOgsTCgwKBQQAAh4BEgM6FCUKDAoFBAACHgMSAzooKgoLCgQEAAIfEgM7AisKDAoFBAACHwQSAzsCCgoMCgUEAAIfBRIDOwsTCgwKBQQAAh8BEgM7FCUKDAoFBAACHwMSAzsoKgoLCgQEAAIgEgM8AiUKDAoFBAACIAQSAzwCCgoMCgUEAAIgBRIDPAsQCgwKBQQAAiABEgM8ER8KDAoFBAACIAMSAzwiJAoLCgQEAAIhEgM9AicKDAoFBAACIQQSAz0CCgoMCgUEAAIhBRIDPQsRCgwKBQQAAiEBEgM9EiEKDAoFBAACIQMSAz0kJgoLCgQEAAIiEgM+AiMKDAoFBAACIgQSAz4CCgoMCgUEAAIiBRIDPgsPCgwKBQQAAiIBEgM+EB0KDAoFBAACIgMSAz4gIgoLCgQEAAIjEgM/AicKDAoFBAACIwQSAz8CCgoMCgUEAAIjBRIDPwsRCgwKBQQAAiMBEgM/EiEKDAoFBAACIwMSAz8kJgoLCgQEAAIkEgNAAiUKDAoFBAACJAQSA0ACCgoMCgUEAAIkBRIDQAsQCgwKBQQAAiQBEgNAER8KDAoFBAACJAMSA0AiJAoLCgQEAAIlEgNCAjYKDAoFBAACJQQSA0ICCgoMCgUEAAIlBhIDQgsYCgwKBQQAAiUBEgNCGTAKDAoFBAACJQMSA0IzNQoLCgQEAAImEgNDAkMKDAoFBAACJgQSA0MCCgoMCgUEAAImBhIDQwskCgwKBQQAAiYBEgNDJT0KDAoFBAACJgMSA0NAQgoLCgQEAAInEgNFAjAKDAoFBAACJwQSA0UCCgoMCgUEAAInBhIDRQsVCgwKBQQAAicBEgNFFioKDAoFBAACJwMSA0UtLwoLCgQEAAIoEgNGAj0KDAoFBAACKAQSA0YCCgoMCgUEAAIoBhIDRgshCgwKBQQAAigBEgNGIjcKDAoFBAACKAMSA0Y6PAoLCgQEAAIpEgNIAkQKDAoFBAACKQQSA0gCCgoMCgUEAAIpBRIDSAsRCgwKBQQAAikBEgNIEicKDAoFBAACKQMSA0gqLAoMCgUEAAIpCBIDSC1DCg0KBgQAAikIARIDSC5CCgsKBAQAAioSA0kCNAoMCgUEAAIqBBIDSQIKCgwKBQQAAioFEgNJCxEKDAoFBAACKgESA0kSHwoMCgUEAAIqAxIDSSIkCgwKBQQAAioIEgNJJTMKDQoGBAACKggBEgNJJjIKFQoEBAACKxIDTAJPGgggUGFja2VkCgoMCgUEAAIrBBIDTAIKCgwKBQQAAisFEgNMCxAKDAoFBAACKwESA0wRHQoMCgUEAAIrAxIDTCAiCgwKBQQAAisIEgNMI04KDgoHBAACKwgVAxIDTCRNCgsKBAQAAiwSA00CTwoMCgUEAAIsBBIDTQIKCgwKBQQAAiwFEgNNCxAKDAoFBAACLAESA00RHQoMCgUEAAIsAxIDTSAiCgwKBQQAAiwIEgNNI04KDgoHBAACLAgVAxIDTSRNCgwKBAQAAi0SBE4CTzIKDAoFBAACLQQSA04CCgoMCgUEAAItBRIDTgsRCgwKBQQAAi0BEgNOEh8KDAoFBAACLQMSA04iJAoMCgUEAAItCBIDTwYxCg4KBwQAAi0IFQMSA08HMAoMCgQEAAIuEgRQAlEyCgwKBQQAAi4EEgNQAgoKDAoFBAACLgUSA1ALEQoMCgUEAAIuARIDUBIfCgwKBQQAAi4DEgNQIiQKDAoFBAACLggSA1EGMQoOCgcEAAIuCBUDEgNRBzAKDAoEBAACLxIEUgJTMgoMCgUEAAIvBBIDUgIKCgwKBQQAAi8FEgNSCxEKDAoFBAACLwESA1ISHwoMCgUEAAIvAxIDUiIkCgwKBQQAAi8IEgNTBjEKDgoHBAACLwgVAxIDUwcwCgwKBAQAAjASBFQCVTIKDAoFBAACMAQSA1QCCgoMCgUEAAIwBRIDVAsRCgwKBQQAAjABEgNUEh8KDAoFBAACMAMSA1QiJAoMCgUEAAIwCBIDVQYxCg4KBwQAAjAIFQMSA1UHMAoMCgQEAAIxEgRWAlcyCgwKBQQAAjEEEgNWAgoKDAoFBAACMQUSA1YLEgoMCgUEAAIxARIDVhMhCgwKBQQAAjEDEgNWJCYKDAoFBAACMQgSA1cGMQoOCgcEAAIxCBUDEgNXBzAKDAoEBAACMhIEWAJZMgoMCgUEAAIyBBIDWAIKCgwKBQQAAjIFEgNYCxIKDAoFBAACMgESA1gTIQoMCgUEAAIyAxIDWCQmCgwKBQQAAjIIEgNZBjEKDgoHBAACMggVAxIDWQcwCgwKBAQAAjMSBFoCWzIKDAoFBAACMwQSA1oCCgoMCgUEAAIzBRIDWgsTCgwKBQQAAjMBEgNaFCMKDAoFBAACMwMSA1omKAoMCgUEAAIzCBIDWwYxCg4KBwQAAjMIFQMSA1sHMAoMCgQEAAI0EgRcAl0yCgwKBQQAAjQEEgNcAgoKDAoFBAACNAUSA1wLEwoMCgUEAAI0ARIDXBQjCgwKBQQAAjQDEgNcJigKDAoFBAACNAgSA10GMQoOCgcEAAI0CBUDEgNdBzAKCwoEBAACNRIDXgJPCgwKBQQAAjUEEgNeAgoKDAoFBAACNQUSA14LEAoMCgUEAAI1ARIDXhEdCgwKBQQAAjUDEgNeICIKDAoFBAACNQgSA14jTgoOCgcEAAI1CBUDEgNeJE0KDAoEBAACNhIEXwJgMgoMCgUEAAI2BBIDXwIKCgwKBQQAAjYFEgNfCxEKDAoFBAACNgESA18SHwoMCgUEAAI2AxIDXyIkCgwKBQQAAjYIEgNgBjEKDgoHBAACNggVAxIDYAcwCgsKBAQAAjcSA2ECTQoMCgUEAAI3BBIDYQIKCgwKBQQAAjcFEgNhCw8KDAoFBAACNwESA2EQGwoMCgUEAAI3AxIDYR4gCgwKBQQAAjcIEgNhIUwKDgoHBAACNwgVAxIDYSJLCgwKBAQAAjgSBGICYzIKDAoFBAACOAQSA2ICCgoMCgUEAAI4BhIDYgsVCgwKBQQAAjgBEgNiFigKDAoFBAACOAMSA2IrLQoMCgUEAAI4CBIDYwYxCg4KBwQAAjgIFQMSA2MHMAoYCgQEAAI5EgRmAmc0GgogVW5wYWNrZWQKCgwKBQQAAjkEEgNmAgoKDAoFBAACOQUSA2YLEAoMCgUEAAI5ARIDZhEfCgwKBQQAAjkDEgNmIiQKDAoFBAACOQgSA2cGMwoOCgcEAAI5CBUDEgNnBzIKDAoEBAACOhIEaAJpNAoMCgUEAAI6BBIDaAIKCgwKBQQAAjoFEgNoCxAKDAoFBAACOgESA2gRHwoMCgUEAAI6AxIDaCIkCgwKBQQAAjoIEgNpBjMKDgoHBAACOggVAxIDaQcyCgwKBAQAAjsSBGoCazQKDAoFBAACOwQSA2oCCgoMCgUEAAI7BRIDagsRCgwKBQQAAjsBEgNqEiEKDAoFBAACOwMSA2okJgoMCgUEAAI7CBIDawYzCg4KBwQAAjsIFQMSA2sHMgoMCgQEAAI8EgRsAm00CgwKBQQAAjwEEgNsAgoKDAoFBAACPAUSA2wLEQoMCgUEAAI8ARIDbBIhCgwKBQQAAjwDEgNsJCYKDAoFBAACPAgSA20GMwoOCgcEAAI8CBUDEgNtBzIKDAoEBAACPRIEbgJvNAoMCgUEAAI9BBIDbgIKCgwKBQQAAj0FEgNuCxEKDAoFBAACPQESA24SIQoMCgUEAAI9AxIDbiQmCgwKBQQAAj0IEgNvBjMKDgoHBAACPQgVAxIDbwcyCgwKBAQAAj4SBHACcTQKDAoFBAACPgQSA3ACCgoMCgUEAAI+BRIDcAsRCgwKBQQAAj4BEgNwEiEKDAoFBAACPgMSA3AkJgoMCgUEAAI+CBIDcQYzCg4KBwQAAj4IFQMSA3EHMgoMCgQEAAI/EgRyAnM0CgwKBQQAAj8EEgNyAgoKDAoFBAACPwUSA3ILEgoMCgUEAAI/ARIDchMjCgwKBQQAAj8DEgNyJigKDAoFBAACPwgSA3MGMwoOCgcEAAI/CBUDEgNzBzIKDAoEBAACQBIEdAJ1NAoMCgUEAAJABBIDdAIKCgwKBQQAAkAFEgN0CxIKDAoFBAACQAESA3QTIwoMCgUEAAJAAxIDdCYoCgwKBQQAAkAIEgN1BjMKDgoHBAACQAgVAxIDdQcyCgwKBAQAAkESBHYCdzQKDAoFBAACQQQSA3YCCgoMCgUEAAJBBRIDdgsTCgwKBQQAAkEBEgN2FCUKDAoFBAACQQMSA3YoKgoMCgUEAAJBCBIDdwYzCg4KBwQAAkEIFQMSA3cHMgoM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IHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyKCBBdXRob3I6IGxpdWppc2lAZ29vZ2xlLmNvbSAoUGhlcmwgTGl1KQoKCAoBAhIDCwAhCggKAQgSAw0ANwoJCgIIJRIDDQA3CgoKAgQAEgQPABEBCgoKAwQAARIDDwgbCgsKBAQAAgASAxABDQoMCgUEAAIABRIDEAEGCgwKBQQAAgABEgMQBwgKDAoFBAACAAMSAxALDGIGcHJvdG8zCucICipjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wcm90bzMucHJvdG8SGHByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydBoxY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHVibGljX3Byb3RvMy5wcm90byIdCg1JbXBvcnRNZXNzYWdlEgwKAWQYASABKAVSAWQqWQoKSW1wb3J0RW51bRIbChdJTVBPUlRfRU5VTV9VTlNQRUNJRklFRBAAEg4KCklNUE9SVF9GT08QBxIOCgpJTVBPUlRfQkFSEAgSDgoKSU1QT1JUX0JBWhAJQh2qAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0rIBgoGEgQNAB8BCucDCgEMEgMNABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMtABIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIEEgcHJvdG8gZmlsZSB3aGljaCBpcyBpbXBvcnRlZCBieSB1bml0dGVzdF9wcm90bzMucHJvdG8gdG8gdGVzdCBpbXBvcnRpbmcuCgoICgECEgMPACEKCAoBCBIDEQA3CgkKAgglEgMRADcKHwoCAwASAxQAQhoUIFRlc3QgcHVibGljIGltcG9ydAoKCQoCCgASAxQHDQoKCgIEABIEFgAYAQoKCgMEAAESAxYIFQoLCgQEAAIAEgMXAg4KDAoFBAACAAUSAxcCBwoMCgUEAAIAARIDFwgJCgwKBQQAAgADEgMXDA0KCgoCBQASBBoAHwEKCgoDBQABEgMaBQ8KCwoEBQACABIDGwIeCgwKBQUAAgABEgMbAhkKDAoFBQACAAISAxscHQoLCgQFAAIBEgMcAhEKDAoFBQACAQESAxwCDAoMCgUFAAIBAhIDHA8QCgsKBAUAAgISAx0CEQoMCgUFAAICARIDHQIMCgwKBQUAAgICEgMdDxAKCwoEBQACAxIDHgIRCgwKBQUAAgMBEgMeAgwKDAoFBQACAwISAx4PEFAAYgZwcm90bzMKorEBCiNjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X3Byb3RvMy5wcm90bxIScHJvdG9idWZfdW5pdHRlc3QzGipjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wcm90bzMucHJvdG8iqxYKDFRlc3RBbGxUeXBlcxIhCgxzaW5nbGVfaW50MzIYASABKAVSC3NpbmdsZUludDMyEiEKDHNpbmdsZV9pbnQ2NBgCIAEoA1ILc2luZ2xlSW50NjQSIwoNc2luZ2xlX3VpbnQzMhgDIAEoDVIMc2luZ2xlVWludDMyEiMKDXNpbmdsZV91aW50NjQYBCABKARSDHNpbmdsZVVpbnQ2NBIjCg1zaW5nbGVfc2ludDMyGAUgASgRUgxzaW5nbGVTaW50MzISIwoNc2luZ2xlX3NpbnQ2NBgGIAEoElIMc2luZ2xlU2ludDY0EiUKDnNpbmdsZV9maXhlZDMyGAcgASgHUg1zaW5nbGVGaXhlZDMyEiUKDnNpbmdsZV9maXhlZDY0GAggASgGUg1zaW5nbGVGaXhlZDY0EicKD3NpbmdsZV9zZml4ZWQzMhgJIAEoD1IOc2luZ2xlU2ZpeGVkMzISJwoPc2luZ2xlX3NmaXhlZDY0GAogASgQUg5zaW5nbGVTZml4ZWQ2NBIhCgxzaW5nbGVfZmxvYXQYCyABKAJSC3NpbmdsZUZsb2F0EiMKDXNpbmdsZV9kb3VibGUYDCABKAFSDHNpbmdsZURvdWJsZRIfCgtzaW5nbGVfYm9vbBgNIAEoCFIKc2luZ2xlQm9vbBIjCg1zaW5nbGVfc3RyaW5nGA4gASgJUgxzaW5nbGVTdHJpbmcSIQoMc2luZ2xlX2J5dGVzGA8gASgMUgtzaW5nbGVCeXRlcxJiChVzaW5nbGVfbmVzdGVkX21lc3NhZ2UYEiABKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VSE3NpbmdsZU5lc3RlZE1lc3NhZ2USWAoWc2luZ2xlX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIUc2luZ2xlRm9yZWlnbk1lc3NhZ2USWwoVc2luZ2xlX2ltcG9ydF9tZXNzYWdlGBQgASgLMicucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydE1lc3NhZ2VSE3NpbmdsZUltcG9ydE1lc3NhZ2USWQoSc2luZ2xlX25lc3RlZF9lbnVtGBUgASgOMisucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhBzaW5nbGVOZXN0ZWRFbnVtEk8KE3NpbmdsZV9mb3JlaWduX2VudW0YFiABKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SEXNpbmdsZUZvcmVpZ25FbnVtElIKEnNpbmdsZV9pbXBvcnRfZW51bRgXIAEoDjIkLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRFbnVtUhBzaW5nbGVJbXBvcnRFbnVtEm4KHHNpbmdsZV9wdWJsaWNfaW1wb3J0X21lc3NhZ2UYGiABKAsyLS5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuUHVibGljSW1wb3J0TWVzc2FnZVIZc2luZ2xlUHVibGljSW1wb3J0TWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJmChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlElwKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJfChdyZXBlYXRlZF9pbXBvcnRfbWVzc2FnZRgyIAMoCzInLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRNZXNzYWdlUhVyZXBlYXRlZEltcG9ydE1lc3NhZ2USXQoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yKy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJTChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SVgoUcmVwZWF0ZWRfaW1wb3J0X2VudW0YNSADKA4yJC5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuSW1wb3J0RW51bVIScmVwZWF0ZWRJbXBvcnRFbnVtEnIKHnJlcGVhdGVkX3B1YmxpY19pbXBvcnRfbWVzc2FnZRg2IAMoCzItLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5QdWJsaWNJbXBvcnRNZXNzYWdlUhtyZXBlYXRlZFB1YmxpY0ltcG9ydE1lc3NhZ2USIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEmIKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxofCg1OZXN0ZWRNZXNzYWdlEg4KAmJiGAEgASgFUgJiYiJWCgpOZXN0ZWRFbnVtEhsKF05FU1RFRF9FTlVNX1VOU1BFQ0lGSUVEEAASBwoDRk9PEAESBwoDQkFSEAISBwoDQkFaEAMSEAoDTkVHEP///////////wFCDQoLb25lb2ZfZmllbGQi3QEKEk5lc3RlZFRlc3RBbGxUeXBlcxI8CgVjaGlsZBgBIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0My5OZXN0ZWRUZXN0QWxsVHlwZXNSBWNoaWxkEjoKB3BheWxvYWQYAiABKAsyIC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzUgdwYXlsb2FkEk0KDnJlcGVhdGVkX2NoaWxkGAMgAygLMiYucHJvdG9idWZfdW5pdHRlc3QzLk5lc3RlZFRlc3RBbGxUeXBlc1INcmVwZWF0ZWRDaGlsZCJFChRUZXN0RGVwcmVjYXRlZEZpZWxkcxItChBkZXByZWNhdGVkX2ludDMyGAEgASgFQgIYAVIPZGVwcmVjYXRlZEludDMyIh4KDkZvcmVpZ25NZXNzYWdlEgwKAWMYASABKAVSAWMiMAoSVGVzdFJlc2VydmVkRmllbGRzSgQIAhADSgQIDxAQSgQICRAMUgNiYXJSA2JheiJqChFUZXN0Rm9yZWlnbk5lc3RlZBJVCg5mb3JlaWduX25lc3RlZBgBIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVINZm9yZWlnbk5lc3RlZCI7ChhUZXN0UmVhbGx5TGFyZ2VUYWdOdW1iZXISDAoBYRgBIAEoBVIBYRIRCgJiYhj///9/IAEoBVICYmIiXAoUVGVzdFJlY3Vyc2l2ZU1lc3NhZ2USNgoBYRgBIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0UmVjdXJzaXZlTWVzc2FnZVIBYRIMCgFpGAIgASgFUgFpIlAKFFRlc3RNdXR1YWxSZWN1cnNpb25BEjgKAmJiGAEgASgLMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNdXR1YWxSZWN1cnNpb25CUgJiYiJ1ChRUZXN0TXV0dWFsUmVjdXJzaW9uQhI2CgFhGAEgASgLMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNdXR1YWxSZWN1cnNpb25BUgFhEiUKDm9wdGlvbmFsX2ludDMyGAIgASgFUg1vcHRpb25hbEludDMyIlQKElRlc3RFbnVtQWxsb3dBbGlhcxI+CgV2YWx1ZRgBIAEoDjIoLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0RW51bVdpdGhEdXBWYWx1ZVIFdmFsdWUi+wMKF1Rlc3RDYW1lbENhc2VGaWVsZE5hbWVzEiYKDlByaW1pdGl2ZUZpZWxkGAEgASgFUg5QcmltaXRpdmVGaWVsZBIgCgtTdHJpbmdGaWVsZBgCIAEoCVILU3RyaW5nRmllbGQSPQoJRW51bUZpZWxkGAMgASgOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtUglFbnVtRmllbGQSRgoMTWVzc2FnZUZpZWxkGAQgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUgxNZXNzYWdlRmllbGQSNgoWUmVwZWF0ZWRQcmltaXRpdmVGaWVsZBgHIAMoBVIWUmVwZWF0ZWRQcmltaXRpdmVGaWVsZBIwChNSZXBlYXRlZFN0cmluZ0ZpZWxkGAggAygJUhNSZXBlYXRlZFN0cmluZ0ZpZWxkEk0KEVJlcGVhdGVkRW51bUZpZWxkGAkgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtUhFSZXBlYXRlZEVudW1GaWVsZBJWChRSZXBlYXRlZE1lc3NhZ2VGaWVsZBgKIAMoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIUUmVwZWF0ZWRNZXNzYWdlRmllbGQi/wEKElRlc3RGaWVsZE9yZGVyaW5ncxIbCglteV9zdHJpbmcYCyABKAlSCG15U3RyaW5nEhUKBm15X2ludBgBIAEoA1IFbXlJbnQSGQoIbXlfZmxvYXQYZSABKAJSB215RmxvYXQSaQoVc2luZ2xlX25lc3RlZF9tZXNzYWdlGMgBIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0RmllbGRPcmRlcmluZ3MuTmVzdGVkTWVzc2FnZVITc2luZ2xlTmVzdGVkTWVzc2FnZRovCg1OZXN0ZWRNZXNzYWdlEg4KAm9vGAIgASgDUgJvbxIOCgJiYhgBIAEoBVICYmIiWAoRU3BhcnNlRW51bU1lc3NhZ2USQwoLc3BhcnNlX2VudW0YASABKA4yIi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdFNwYXJzZUVudW1SCnNwYXJzZUVudW0iHwoJT25lU3RyaW5nEhIKBGRhdGEYASABKAlSBGRhdGEiIAoKTW9yZVN0cmluZxISCgRkYXRhGAEgAygJUgRkYXRhIh4KCE9uZUJ5dGVzEhIKBGRhdGEYASABKAxSBGRhdGEiHwoJTW9yZUJ5dGVzEhIKBGRhdGEYASABKAxSBGRhdGEiIgoMSW50MzJNZXNzYWdlEhIKBGRhdGEYASABKAVSBGRhdGEiIwoNVWludDMyTWVzc2FnZRISCgRkYXRhGAEgASgNUgRkYXRhIiIKDEludDY0TWVzc2FnZRISCgRkYXRhGAEgASgDUgRkYXRhIiMKDVVpbnQ2NE1lc3NhZ2USEgoEZGF0YRgBIAEoBFIEZGF0YSIhCgtCb29sTWVzc2FnZRISCgRkYXRhGAEgASgIUgRkYXRhIpMBCglUZXN0T25lb2YSGQoHZm9vX2ludBgBIAEoBUgAUgZmb29JbnQSHwoKZm9vX3N0cmluZxgCIAEoCUgAUglmb29TdHJpbmcSQwoLZm9vX21lc3NhZ2UYAyABKAsyIC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzSABSCmZvb01lc3NhZ2VCBQoDZm9vIu4ECg9UZXN0UGFja2VkVHlwZXMSJQoMcGFja2VkX2ludDMyGFogAygFQgIQAVILcGFja2VkSW50MzISJQoMcGFja2VkX2ludDY0GFsgAygDQgIQAVILcGFja2VkSW50NjQSJwoNcGFja2VkX3VpbnQzMhhcIAMoDUICEAFSDHBhY2tlZFVpbnQzMhInCg1wYWNrZWRfdWludDY0GF0gAygEQgIQAVIMcGFja2VkVWludDY0EicKDXBhY2tlZF9zaW50MzIYXiADKBFCAhABUgxwYWNrZWRTaW50MzISJwoNcGFja2VkX3NpbnQ2NBhfIAMoEkICEAFSDHBhY2tlZFNpbnQ2NBIpCg5wYWNrZWRfZml4ZWQzMhhgIAMoB0ICEAFSDXBhY2tlZEZpeGVkMzISKQoOcGFja2VkX2ZpeGVkNjQYYSADKAZCAhABUg1wYWNrZWRGaXhlZDY0EisKD3BhY2tlZF9zZml4ZWQzMhhiIAMoD0ICEAFSDnBhY2tlZFNmaXhlZDMyEisKD3BhY2tlZF9zZml4ZWQ2NBhjIAMoEEICEAFSDnBhY2tlZFNmaXhlZDY0EiUKDHBhY2tlZF9mbG9hdBhkIAMoAkICEAFSC3BhY2tlZEZsb2F0EicKDXBhY2tlZF9kb3VibGUYZSADKAFCAhABUgxwYWNrZWREb3VibGUSIwoLcGFja2VkX2Jvb2wYZiADKAhCAhABUgpwYWNrZWRCb29sEkQKC3BhY2tlZF9lbnVtGGcgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtQgIQAVIKcGFja2VkRW51bSKoBQoRVGVzdFVucGFja2VkVHlwZXMSKQoOdW5wYWNrZWRfaW50MzIYWiADKAVCAhAAUg11bnBhY2tlZEludDMyEikKDnVucGFja2VkX2ludDY0GFsgAygDQgIQAFINdW5wYWNrZWRJbnQ2NBIrCg91bnBhY2tlZF91aW50MzIYXCADKA1CAhAAUg51bnBhY2tlZFVpbnQzMhIrCg91bnBhY2tlZF91aW50NjQYXSADKARCAhAAUg51bnBhY2tlZFVpbnQ2NBIrCg91bnBhY2tlZF9zaW50MzIYXiADKBFCAhAAUg51bnBhY2tlZFNpbnQzMhIrCg91bnBhY2tlZF9zaW50NjQYXyADKBJCAhAAUg51bnBhY2tlZFNpbnQ2NBItChB1bnBhY2tlZF9maXhlZDMyGGAgAygHQgIQAFIPdW5wYWNrZWRGaXhlZDMyEi0KEHVucGFja2VkX2ZpeGVkNjQYYSADKAZCAhAAUg91bnBhY2tlZEZpeGVkNjQSLwoRdW5wYWNrZWRfc2ZpeGVkMzIYYiADKA9CAhAAUhB1bnBhY2tlZFNmaXhlZDMyEi8KEXVucGFja2VkX3NmaXhlZDY0GGMgAygQQgIQAFIQdW5wYWNrZWRTZml4ZWQ2NBIpCg51bnBhY2tlZF9mbG9hdBhkIAMoAkICEABSDXVucGFja2VkRmxvYXQSKwoPdW5wYWNrZWRfZG91YmxlGGUgAygBQgIQAFIOdW5wYWNrZWREb3VibGUSJwoNdW5wYWNrZWRfYm9vbBhmIAMoCEICEABSDHVucGFja2VkQm9vbBJICg11bnBhY2tlZF9lbnVtGGcgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtQgIQAFIMdW5wYWNrZWRFbnVtIp8CCiNUZXN0UmVwZWF0ZWRTY2FsYXJEaWZmZXJlbnRUYWdTaXplcxIpChByZXBlYXRlZF9maXhlZDMyGAwgAygHUg9yZXBlYXRlZEZpeGVkMzISJQoOcmVwZWF0ZWRfaW50MzIYDSADKAVSDXJlcGVhdGVkSW50MzISKgoQcmVwZWF0ZWRfZml4ZWQ2NBj+DyADKAZSD3JlcGVhdGVkRml4ZWQ2NBImCg5yZXBlYXRlZF9pbnQ2NBj/DyADKANSDXJlcGVhdGVkSW50NjQSJwoOcmVwZWF0ZWRfZmxvYXQY/v8PIAMoAlINcmVwZWF0ZWRGbG9hdBIpCg9yZXBlYXRlZF91aW50NjQY//8PIAMoBFIOcmVwZWF0ZWRVaW50NjQiKwobVGVzdENvbW1lbnRJbmplY3Rpb25NZXNzYWdlEgwKAWEYASABKAlSAWEiDAoKRm9vUmVxdWVzdCINCgtGb29SZXNwb25zZSISChBGb29DbGllbnRNZXNzYWdlIhIKEEZvb1NlcnZlck1lc3NhZ2UiDAoKQmFyUmVxdWVzdCINCgtCYXJSZXNwb25zZSISChBUZXN0RW1wdHlNZXNzYWdlIoIBCg5Db21tZW50TWVzc2FnZRISCgR0ZXh0GAEgASgJUgR0ZXh0GjcKFE5lc3RlZENvbW1lbnRNZXNzYWdlEh8KC25lc3RlZF90ZXh0GAEgASgJUgpuZXN0ZWRUZXh0IiMKEU5lc3RlZENvbW1lbnRFbnVtEg4KClpFUk9fVkFMVUUQACpZCgtGb3JlaWduRW51bRIXChNGT1JFSUdOX1VOU1BFQ0lGSUVEEAASDwoLRk9SRUlHTl9GT08QBBIPCgtGT1JFSUdOX0JBUhAFEg8KC0ZPUkVJR05fQkFaEAYqdQoUVGVzdEVudW1XaXRoRHVwVmFsdWUSKAokVEVTVF9FTlVNX1dJVEhfRFVQX1ZBTFVFX1VOU1BFQ0lGSUVEEAASCAoERk9PMRABEggKBEJBUjEQAhIHCgNCQVoQAxIICgRGT08yEAESCAoEQkFSMhACGgIQASqdAQoOVGVzdFNwYXJzZUVudW0SIAocVEVTVF9TUEFSU0VfRU5VTV9VTlNQRUNJRklFRBAAEgwKCFNQQVJTRV9BEHsSDgoIU1BBUlNFX0IQpucDEg8KCFNQQVJTRV9DELKxgAYSFQoIU1BBUlNFX0QQ8f//////////ARIVCghTUEFSU0VfRRC03vz///////8BEgwKCFNQQVJTRV9HEAIqHQoLQ29tbWVudEVudW0SDgoKWkVST19WQUxVRRAAMp0BCgtUZXN0U2VydmljZRJGCgNGb28SHi5wcm90b2J1Zl91bml0dGVzdDMuRm9vUmVxdWVzdBofLnByb3RvYnVmX3VuaXR0ZXN0My5Gb29SZXNwb25zZRJGCgNCYXISHi5wcm90b2J1Zl91bml0dGVzdDMuQmFyUmVxdWVzdBofLnByb3RvYnVmX3VuaXR0ZXN0My5CYXJSZXNwb25zZUIsQg1Vbml0dGVzdFByb3RvqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NK93QKBxIFDQD/AgEKxwMKAQwSAw0AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoysAEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdlIHdpbGwgdXNlIGZvciB1bml0IHRlc3RpbmcuCgoICgEIEgMPADcKCQoCCCUSAw8ANwoICgEIEgMTAC4KYAoCCAgSAxMALhpVIE9ubHkgcHJlc2VudCBzbyB3ZSBjYW4gdGVzdCB0aGF0IHdlIGNhbiByZWFkIGl0IChhcyBhbiBleGFtcGxlCiBvZiBhIG5vbi1DIyBvcHRpb24pCgoJCgIDABIDFQA0CggKAQISAxcAGwpbCgIEABIEGwBrARpPIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAogZm9ybXMuCgoKCgMEAAESAxsIFAoMCgQEAAMAEgQcAiEDCgwKBQQAAwABEgMcChcK4wEKBgQAAwACABIDIAQRGtMBIFRoZSBmaWVsZCBuYW1lICJiIiBmYWlscyB0byBjb21waWxlIGluIHBy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Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSXAoRbWFwX3VpbnQzMl91aW50MzIYAyADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyElwKEW1hcF91aW50NjRfdWludDY0GAQgAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJcChFtYXBfc2ludDMyX3NpbnQzMhgFIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISXAoRbWFwX3NpbnQ2NF9zaW50NjQYBiADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EmIKE21hcF9maXhlZDMyX2ZpeGVkMzIYByADKAsyMi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJiChNtYXBfZml4ZWQ2NF9maXhlZDY0GAggAygLMjIucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSaAoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGAkgAygLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEmgKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBgKIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJWCg9tYXBfaW50MzJfZmxvYXQYCyADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSWQoQbWFwX2ludDMyX2RvdWJsZRgMIAMoCzIvLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlElAKDW1hcF9ib29sX2Jvb2wYDSADKAsyLC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJcChFtYXBfc3RyaW5nX3N0cmluZxgOIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSVgoPbWFwX2ludDMyX2J5dGVzGA8gAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJCeXRlc0VudHJ5Ug1tYXBJbnQzMkJ5dGVzElMKDm1hcF9pbnQzMl9lbnVtGBAgAygLMi0ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJFbnVtRW50cnlSDG1hcEludDMyRW51bRJyChltYXBfaW50MzJfZm9yZWlnbl9tZXNzYWdlGBEgAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5UhZtYXBJbnQzMkZvcmVpZ25NZXNzYWdlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJCeXRlc0VudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgMUgV2YWx1ZToCOAEaXAoRTWFwSW50MzJFbnVtRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKA4yGy5wcm90b2J1Zl91bml0dGVzdDMuTWFwRW51bVIFdmFsdWU6AjgBGm0KG01hcEludDMyRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRI4CgV2YWx1ZRgCIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIFdmFsdWU6AjgBIksKEVRlc3RNYXBTdWJtZXNzYWdlEjYKCHRlc3RfbWFwGAEgASgLMhsucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXBSB3Rlc3RNYXAi2wEKDlRlc3RNZXNzYWdlTWFwEmMKEW1hcF9pbnQzMl9tZXNzYWdlGAEgAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNZXNzYWdlTWFwLk1hcEludDMyTWVzc2FnZUVudHJ5Ug9tYXBJbnQzMk1lc3NhZ2UaZAoUTWFwSW50MzJNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSNgoFdmFsdWUYAiABKAsyIC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzUgV2YWx1ZToCOAEiiQIKD1Rlc3RTYW1lVHlwZU1hcBJBCgRtYXAxGAEgAygLMi0ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RTYW1lVHlwZU1hcC5NYXAxRW50cnlSBG1hcDESQQoEbWFwMhgCIAMoCzItLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0U2FtZVR5cGVNYXAuTWFwMkVudHJ5UgRtYXAyGjcKCU1hcDFFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGjcKCU1hcDJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBIq0UCgxUZXN0QXJlbmFNYXASWwoPbWFwX2ludDMyX2ludDMyGAEgAygLMjMucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISWwoPbWFwX2ludDY0X2ludDY0GAIgAygLMjMucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSYQoRbWFwX3VpbnQzMl91aW50MzIYAyADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISYQoRbWFwX3VpbnQ2NF91aW50NjQYBCADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQSYQoRbWFwX3NpbnQzMl9zaW50MzIYBSADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISYQoRbWFwX3NpbnQ2NF9zaW50NjQYBiADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSZwoTbWFwX2ZpeGVkMzJfZml4ZWQzMhgHIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISZwoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBgIIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSbQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGAkgAygLMjkucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISbQoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GAogAygLMjkucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSWwoPbWFwX2ludDMyX2Zsb2F0GAsgAygLMjMucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSXgoQbWFwX2ludDMyX2RvdWJsZRgMIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSVQoNbWFwX2Jvb2xfYm9vbBgNIAMoCzIxLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wSWAoObWFwX2ludDMyX2VudW0YDiADKAsyMi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMyRW51bUVudHJ5UgxtYXBJbnQzMkVudW0SdwoZbWFwX2ludDMyX2ZvcmVpZ25fbWVzc2FnZRgPIAMoCzI8LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5UhZtYXBJbnQzMkZvcmVpZ25NZXNzYWdlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGlwKEU1hcEludDMyRW51bUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgOMhsucHJvdG9idWZfdW5pdHRlc3QzLk1hcEVudW1SBXZhbHVlOgI4ARptChtNYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSOAoFdmFsdWUYAiABKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSBXZhbHVlOgI4ASL4AQofTWVzc2FnZUNvbnRhaW5pbmdFbnVtQ2FsbGVkVHlwZRJRCgR0eXBlGAEgAygLMj0ucHJvdG9idWZfdW5pdHRlc3QzLk1lc3NhZ2VDb250YWluaW5nRW51bUNhbGxlZFR5cGUuVHlwZUVudHJ5UgR0eXBlGmwKCVR5cGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRJJCgV2YWx1ZRgCIAEoCzIzLnByb3RvYnVmX3VuaXR0ZXN0My5NZXNzYWdlQ29udGFpbmluZ0VudW1DYWxsZWRUeXBlUgV2YWx1ZToCOAEiFAoEVHlwZRIMCghUWVBFX0ZPTxAAIrEBCh9NZXNzYWdlQ29udGFpbmluZ01hcENhbGxlZEVudHJ5ElQKBWVudHJ5GAEgAygLMj4ucHJvdG9idWZfdW5pdHRlc3QzLk1lc3NhZ2VDb250YWluaW5nTWFwQ2FsbGVkRW50cnkuRW50cnlFbnRyeVIFZW50cnkaOAoKRW50cnlFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBKj8KB01hcEVudW0SEAoMTUFQX0VOVU1fRk9PEAASEAoMTUFQX0VOVU1fQkFSEAESEAoMTUFQX0VOVU1fQkFaEAJCHaoCGkdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zSqoaCgYSBA0AXAEK4wQKAQwSAw0AEhrMAiBUaGlzIGZpbGUgaXMgbW9zdGx5IGVxdWl2YWxlbnQgdG8gbWFwX3VuaXR0ZXN0LnByb3RvLCBidXQgaW1wb3J0cwogdW5pdHRlc3RfcHJvdG8zLnByb3RvIGluc3RlYWQgb2YgdW5pdHRlc3QucHJvdG8sIHNvIHRoYXQgaXQgb25seQogdXNlcyBwcm90bzMgbWVzc2FnZXMuIFRoaXMgbWFrZXMgaXQgc3VpdGFibGUgZm9yIHRlc3RpbmcKIGltcGxlbWVudGF0aW9ucyB3aGljaCBvbmx5IHN1cHBvcnQgcHJvdG8zLgogVGhlIFRlc3RSZXF1aXJlZE1lc3NhZ2VNYXAgbWVzc2FnZSBoYXMgYmVlbiByZW1vdmVkIGFzIHRoZXJlIGFyZSBubwogcmVxdWlyZWQgZmllbGRzIGluIHByb3RvMy4KMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMPABsKCQoCAwASAxEALQoICgEIEgMTADcKCQoCCCUSAxMANwoZCgIEABIEFgAoARoNIFRlc3RzIG1hcHMuCgoKCgMEAAESAxYIDwoLCgQEAAIAEgMXAigKDAoFBAACAAYSAxcCEwoMCgUEAAIAARIDFxQjCgwKBQQAAgADEgMXJicKCwoEBAACARIDGAIoCgwKBQQAAgEGEgMYAhMK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c0VudHJ5UgZmaWVsZHMaUQoLRmllbGRzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSLAoFdmFsdWUYAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSBXZhbHVlOgI4ASKyAgoFVmFsdWUSOwoKbnVsbF92YWx1ZRgBIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIJbnVsbFZhbHVlEiMKDG51bWJlcl92YWx1ZRgCIAEoAUgAUgtudW1iZXJWYWx1ZRIjCgxzdHJpbmdfdmFsdWUYAyABKAlIAFILc3RyaW5nVmFsdWUSHwoKYm9vbF92YWx1ZRgEIAEoCEgAUglib29sVmFsdWUSPAoMc3RydWN0X3ZhbHVlGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAUgtzdHJ1Y3RWYWx1ZRI7CgpsaXN0X3ZhbHVlGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLkxpc3RWYWx1ZUgAUglsaXN0VmFsdWVCBgoEa2luZCI7CglMaXN0VmFsdWUSLgoGdmFsdWVzGAEgAygLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUgZ2YWx1ZXMqGwoJTnVsbFZhbHVlEg4KCk5VTExfVkFMVUUQAEJ/ChNjb20uZ29vZ2xlLnByb3RvYnVmQgtTdHJ1Y3RQcm90b1ABWi9nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9zdHJ1Y3RwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qZHQoGEgQeAF4BCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAfCgkKAggfEgMiAB8KCAoBCBIDIwBGCgkKAggLEgMjAEYKCAoBCBIDJAAsCgkKAggBEgMkACwKCAoBCBIDJQAsCgkKAggIEgMlACwKCAoBCBIDJgAiCgkKAggKEgMmACIKCAoBCBIDJwAhCgkKAggkEgMnACEKCAoBCBIDKAA7CgkKAgglEgMoADsKswMKAgQAEgQyADUBGqYDIGBTdHJ1Y3RgIHJlcHJlc2VudHMgYSBzdHJ1Y3R1cmVkIGRhdGEgdmFsdWUsIGNvbnNpc3Rpbmcgb2YgZmllbGRzCiB3aGljaCBtYXAgdG8gZHluYW1pY2FsbHkgdHlwZWQgdmFsdWVzLiBJbiBzb21lIGxhbmd1YWdlcywgYFN0cnVjdGAKIG1pZ2h0IGJlIHN1cHBvcnRlZCBieSBhIG5hdGl2ZSByZXByZXNlbnRhdGlvbi4gRm9yIGV4YW1wbGUsIGluCiBzY3JpcHRpbmcgbGFuZ3VhZ2VzIGxpa2UgSlMgYSBzdHJ1Y3QgaXMgcmVwcmVzZW50ZWQgYXMgYW4KIG9iamVjdC4gVGhlIGRldGFp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ZSLNAQoTTmVnYXRpdmVFbnVtTWVzc2FnZRIzCgV2YWx1ZRgBIAEoDjIdLnVuaXR0ZXN0X2lzc3Vlcy5OZWdhdGl2ZUVudW1SBXZhbHVlEjkKBnZhbHVlcxgCIAMoDjIdLnVuaXR0ZXN0X2lzc3Vlcy5OZWdhdGl2ZUVudW1CAhAAUgZ2YWx1ZXMSRgoNcGFja2VkX3ZhbHVlcxgDIAMoDjIdLnVuaXR0ZXN0X2lzc3Vlcy5OZWdhdGl2ZUVudW1CAhABUgxwYWNrZWRWYWx1ZXMiFQoPRGVwcmVjYXRlZENoaWxkOgIYASKLAwoXRGVwcmVjYXRlZEZpZWxkc01lc3NhZ2USKgoOUHJpbWl0aXZlVmFsdWUYASABKAVCAhgBUg5QcmltaXRpdmVWYWx1ZRIqCg5QcmltaXRpdmVBcnJheRgCIAMoBUICGAFSDlByaW1pdGl2ZUFycmF5EkgKDE1lc3NhZ2VWYWx1ZRgDIAEoCzIgLnVuaXR0ZXN0X2lzc3Vlcy5EZXByZWNhdGVkQ2hpbGRCAhgBUgxNZXNzYWdlVmFsdWUSSAoMTWVzc2FnZUFycmF5GAQgAygLMiAudW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRDaGlsZEICGAFSDE1lc3NhZ2VBcnJheRJBCglFbnVtVmFsdWUYBSABKA4yHy51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZEVudW1CAhgBUglFbnVtVmFsdWUSQQoJRW51bUFycmF5GAYgAygOMh8udW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRFbnVtQgIYAVIJRW51bUFycmF5Ih8KCUl0ZW1GaWVsZBISCgRpdGVtGAEgASgFUgRpdGVtIlcKDVJlc2VydmVkTmFtZXMSFAoFdHlwZXMYASABKAVSBXR5cGVzEh4KCmRlc2NyaXB0b3IYAiABKAVSCmRlc2NyaXB0b3IaEAoOU29tZU5lc3RlZFR5cGUi3wEKFVRlc3RKc29uRmllbGRPcmRlcmluZxIfCgtwbGFpbl9pbnQzMhgEIAEoBVIKcGxhaW5JbnQzMhIdCglvMV9zdHJpbmcYAiABKAlIAFIIbzFTdHJpbmcSGwoIbzFfaW50MzIYBSABKAVIAFIHbzFJbnQzMhIhCgxwbGFpbl9zdHJpbmcYASABKAlSC3BsYWluU3RyaW5nEhsKCG8yX2ludDMyGAYgASgFSAFSB28ySW50MzISHQoJbzJfc3RyaW5nGAMgASgJSAFSCG8yU3RyaW5nQgQKAm8xQgQKAm8yIlEKDFRlc3RKc29uTmFtZRISCgRuYW1lGAEgASgJUgRuYW1lEhkKC2Rlc2NyaXB0aW9uGAIgASgJUgRkZXNjEhIKBGd1aWQYAyABKAlSBGV4aWQikwEKDE9uZW9mTWVyZ2luZxIUCgR0ZXh0GAEgASgJSABSBHRleHQSPgoGbmVzdGVkGAIgASgLMiQudW5pdHRlc3RfaXNzdWVzLk9uZW9mTWVyZ2luZy5OZXN0ZWRIAFIGbmVzdGVkGiQKBk5lc3RlZBIMCgF4GAEgASgFUgF4EgwKAXkYAiABKAVSAXlCBwoFdmFsdWUigwEKFk51bGxWYWx1ZU91dHNpZGVTdHJ1Y3QSIwoMc3RyaW5nX3ZhbHVlGAEgASgJSABSC3N0cmluZ1ZhbHVlEjsKCm51bGxfdmFsdWUYAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSABSCW51bGxWYWx1ZUIHCgV2YWx1ZSJQChNOdWxsVmFsdWVOb3RJbk9uZW9mEjkKCm51bGxfdmFsdWUYAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlUgludWxsVmFsdWUifQoXTWl4ZWRSZWd1bGFyQW5kT3B0aW9uYWwSIwoNcmVndWxhcl9maWVsZBgBIAEoCVIMcmVndWxhckZpZWxkEioKDm9wdGlvbmFsX2ZpZWxkGAIgASgJSABSDW9wdGlvbmFsRmllbGSIAQFCEQoPX29wdGlvbmFsX2ZpZWxkIkIKEk9uZW9mV2l0aE5vbmVGaWVsZBIOCgF4GAEgASgJSABSAXgSFAoEbm9uZRgCIAEoCUgAUgRub25lQgYKBHRlc3QiOwoRT25lb2ZXaXRoTm9uZU5hbWUSDgoBeBgBIAEoCUgAUgF4Eg4KAXkYAiABKAlIAFIBeUIGCgRub25lIqIDChlEaXNhbWJpZ3VhdGVDb21tb25NZW1iZXJzEj4KG2Rpc2FtYmlndWF0ZV9jb21tb25fbWVtYmVycxgBIAEoBVIZZGlzYW1iaWd1YXRlQ29tbW9uTWVtYmVycxIUCgV0eXBlcxgCIAEoBVIFdHlwZXMSHgoKZGVzY3JpcHRvchgDIAEoBVIKZGVzY3JpcHRvchIWCgZlcXVhbHMYBCABKAVSBmVxdWFscxIbCgl0b19zdHJpbmcYBSABKAVSCHRvU3RyaW5nEiIKDWdldF9oYXNoX2NvZGUYBiABKAVSC2dldEhhc2hDb2RlEhkKCHdyaXRlX3RvGAcgASgFUgd3cml0ZVRvEhQKBWNsb25lGAggASgFUgVjbG9uZRIlCg5jYWxjdWxhdGVfc2l6ZRgJIAEoBVINY2FsY3VsYXRlU2l6ZRIdCgptZXJnZV9mcm9tGAogASgFUgltZXJnZUZyb20SJwoPb25fY29uc3RydWN0aW9uGAsgASgFUg5vbkNvbnN0cnVjdGlvbhIWCgZwYXJzZXIYDCABKAVSBnBhcnNlciI9ChFJc3N1ZTExOTg3TWVzc2FnZRIMCgFhGAEgASgFUgFiEgwKAWIYAiABKAVSAWESDAoBYxgDIAEoBVIBZCpVCgxOZWdhdGl2ZUVudW0SFgoSTkVHQVRJVkVfRU5VTV9aRVJPEAASFgoJRml2ZUJlbG93EPv//////////wESFQoITWludXNPbmUQ////////////ASo2Cg5EZXByZWNhdGVkRW51bRIXCg9ERVBSRUNBVEVEX1pFUk8QABoCCAESBwoDb25lEAEaAhgBQh2qAhpVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvc0rrMwoHEgUHAMoBAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgqOAgoBAhIDDgAYGmYgSXNzdWU6IE5vbi0iR29vZ2xlLlByb3RvYnVmZmVycyIgbmFtZXNwYWNlIHdpbGwgZW5zdXJlIHRoYXQgcHJvdG9idWZmZXIKIGxpYnJhcnkgdHlwZXMgYXJlIHF1YWxpZmllZAoymwEgVGhlc2UgcHJvdG8gZGVzY3JpcHRvcnMgaGF2ZSBhdCBvbmUgdGltZSBiZWVuIHJlcG9ydGVkIGFzIGFuIGlzc3VlIG9yIGRlZmVjdC4KIFRoZXkgYXJlIGtlcHQgaGVyZSB0byByZXBsaWNhdGUgdGhlIGlzc3VlLCBhbmQgY29udGludWUgdG8gdmVyaWZ5IHRoZSBmaXguCgoJCgIDABIDEAAmCggKAQgSAxIANwoJCgIIJRIDEgA3CnYKAgQAEgQWABoBGmogSXNzdWUgMzA3OiB3aGVuIGdlbmVyYXRpbmcgZG91Ymx5LW5lc3RlZCB0eXBlcywgYW55IHJlZmVyZW5jZXMKIHNob3VsZCBiZSBvZiB0aGUgZm9ybSBBLlR5cGVzLkIuVHlwZXMuQy4KCgoKAwQAARIDFggQCgwKBAQAAwASBBcCGQMKDAoFBAADAAESAxcKFAoNCgYEAAMAAwASAxgEGgoOCgcEAAMAAwABEgMYDBcKsAQKAgUAEgQ1ADkBMpkBIE9sZCBpc3N1ZSAxMzoKIGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9wcm90b2J1Zi1jc2hhcnAtcG9ydC9pc3N1ZXMvZGV0YWlsP2lkPTEzIE5ldyBpc3N1ZQogMzA5OiBodHRwczovL2dpdGh1Yi5jb20vcHJvdG9jb2xidWZmZXJzL3Byb3RvYnVmL2lzc3Vlcy8zMDkKMisgbWVzc2FnZSBBIHsKICAgIG9wdGlvbmFsIGludDMyIF9BID0gMTsKIH0KMisgbWVzc2FnZSBCIHsKICAgIG9wdGlvbmFsIGludDMyIEJfID0gMTsKIH0KMi4gbWVzc2FnZSBBQiB7CiAgICAgb3B0aW9uYWwgaW50MzIgYV9iID0gMTsKIH0KMtoBIFNpbWlsYXIgaXNzdWUgd2l0aCBudW1lcmljIG5hbWVzCiBKYXZhIGNvZGUgZmFpbGVkIHRvbywgc28gcHJvYmFibHkgYmVzdCBmb3IgdGhpcyB0byBiZSBhIHJlc3RyaWN0aW9uLgogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9wcm90b2NvbGJ1ZmZlcnMvcHJvdG9idWYvaXNzdWVzLzMw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cHJvdG9idWYvZGVzY3JpcHRvci5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIk0KEUZpbGVEZXNjcmlwdG9yU2V0EjgKBGZpbGUYASADKAsyJC5nb29nbGUucHJvdG9idWYuRmlsZURlc2NyaXB0b3JQcm90b1IEZmlsZSKYBQoTRmlsZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhgKB3BhY2thZ2UYAiABKAlSB3BhY2thZ2USHgoKZGVwZW5kZW5jeRgDIAMoCVIKZGVwZW5kZW5jeRIrChFwdWJsaWNfZGVwZW5kZW5jeRgKIAMoBVIQcHVibGljRGVwZW5kZW5jeRInCg93ZWFrX2RlcGVuZGVuY3kYCyADKAVSDndlYWtEZXBlbmRlbmN5EkMKDG1lc3NhZ2VfdHlwZRgEIAMoCzIgLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG9SC21lc3NhZ2VUeXBlEkEKCWVudW1fdHlwZRgFIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvUghlbnVtVHlwZRJBCgdzZXJ2aWNlGAYgAygLMicuZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VEZXNjcmlwdG9yUHJvdG9SB3NlcnZpY2USQwoJZXh0ZW5zaW9uGAcgAygLMiUuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvUglleHRlbnNpb24SNgoHb3B0aW9ucxgIIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9uc1IHb3B0aW9ucxJJChBzb3VyY2VfY29kZV9pbmZvGAkgASgLMh8uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvZGVJbmZvUg5zb3VyY2VDb2RlSW5mbxIWCgZzeW50YXgYDCABKAlSBnN5bnRheBIyCgdlZGl0aW9uGA4gASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SB2VkaXRpb24iuQYKD0Rlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEjsKBWZpZWxkGAIgAygLMiUuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvUgVmaWVsZBJDCglleHRlbnNpb24YBiADKAsyJS5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9yUHJvdG9SCWV4dGVuc2lvbhJBCgtuZXN0ZWRfdHlwZRgDIAMoCzIgLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG9SCm5lc3RlZFR5cGUSQQoJZW51bV90eXBlGAQgAygLMiQuZ29vZ2xlLnByb3RvYnVmLkVudW1EZXNjcmlwdG9yUHJvdG9SCGVudW1UeXBlElgKD2V4dGVuc2lvbl9yYW5nZRgFIAMoCzIvLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG8uRXh0ZW5zaW9uUmFuZ2VSDmV4dGVuc2lvblJhbmdlEkQKCm9uZW9mX2RlY2wYCCADKAsyJS5nb29nbGUucHJvdG9idWYuT25lb2ZEZXNjcmlwdG9yUHJvdG9SCW9uZW9mRGVjbBI5CgdvcHRpb25zGAcgASgLMh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zUgdvcHRpb25zElUKDnJlc2VydmVkX3JhbmdlGAkgAygLMi4uZ29vZ2xlLnByb3RvYnVmLkRlc2NyaXB0b3JQcm90by5SZXNlcnZlZFJhbmdlUg1yZXNlcnZlZFJhbmdlEiMKDXJlc2VydmVkX25hbWUYCiADKAlSDHJlc2VydmVkTmFtZRp6Cg5FeHRlbnNpb25SYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQSQAoHb3B0aW9ucxgDIAEoCzImLmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnNSB29wdGlvbnMaNwoNUmVzZXJ2ZWRSYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQizAQKFUV4dGVuc2lvblJhbmdlT3B0aW9ucxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbhJZCgtkZWNsYXJhdGlvbhgCIAMoCzIyLmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnMuRGVjbGFyYXRpb25CA4gBAlILZGVjbGFyYXRpb24SNwoIZmVhdHVyZXMYMiABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSbQoMdmVyaWZpY2F0aW9uGAMgASgOMjguZ29vZ2xlLnByb3RvYnVmLkV4dGVuc2lvblJhbmdlT3B0aW9ucy5WZXJpZmljYXRpb25TdGF0ZToKVU5WRVJJRklFREIDiAECUgx2ZXJpZmljYXRpb24alAEKC0RlY2xhcmF0aW9uEhYKBm51bWJlchgBIAEoBVIGbnVtYmVyEhsKCWZ1bGxfbmFtZRgCIAEoCVIIZnVsbE5hbWUSEgoEdHlwZRgDIAEoCVIEdHlwZRIaCghyZXNlcnZlZBgFIAEoCFIIcmVzZXJ2ZWQSGgoIcmVwZWF0ZWQYBiABKAhSCHJlcGVhdGVkSgQIBBAFIjQKEVZlcmlmaWNhdGlvblN0YXRlEg8KC0RFQ0xBUkFUSU9OEAASDgoKVU5WRVJJRklFRBABKgkI6AcQgICAgAIiwQYKFEZpZWxkRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSFgoGbnVtYmVyGAMgASgFUgZudW1iZXISQQoFbGFiZWwYBCABKA4yKy5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9yUHJvdG8uTGFiZWxSBWxhYmVsEj4KBHR5cGUYBSABKA4yKi5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9yUHJvdG8uVHlwZVIEdHlwZRIbCgl0eXBlX25hbWUYBiABKAlSCHR5cGVOYW1lEhoKCGV4dGVuZGVlGAIgASgJUghleHRlbmRlZRIjCg1kZWZhdWx0X3ZhbHVlGAcgASgJUgxkZWZhdWx0VmFsdWUSHwoLb25lb2ZfaW5kZXgYCSABKAVSCm9uZW9mSW5kZXgSGwoJanNvbl9uYW1lGAogASgJUghqc29uTmFtZRI3CgdvcHRpb25zGAggASgLMh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9uc1IHb3B0aW9ucxInCg9wcm90bzNfb3B0aW9uYWwYESABKAhSDnByb3RvM09wdGlvbmFsIrYCCgRUeXBlEg8KC1RZUEVfRE9VQkxFEAESDgoKVFlQRV9GTE9BVBACEg4KClRZUEVfSU5UNjQQAxIPCgtUWVBFX1VJTlQ2NBAEEg4KClRZUEVfSU5UMzIQBRIQCgxUWVBFX0ZJWEVENjQQBhIQCgxUWVBFX0ZJWEVEMzIQBxINCglUWVBFX0JPT0wQCBIPCgtUWVBFX1NUUklORxAJEg4KClRZUEVfR1JPVVAQChIQCgxUWVBFX01FU1NBR0UQCxIOCgpUWVBFX0JZVEVTEAwSDwoLVFlQRV9VSU5UMzIQDRINCglUWVBFX0VOVU0QDhIRCg1UWVBFX1NGSVhFRDMyEA8SEQoNVFlQRV9TRklYRUQ2NBAQEg8KC1RZUEVfU0lOVDMyEBESDwoLVFlQRV9TSU5UNjQQEiJDCgVMYWJlbBISCg5MQUJFTF9PUFRJT05BTBABEhIKDkxBQkVMX1JFUEVBVEVEEAMSEgoOTEFCRUxfUkVRVUlSRUQQAiJjChRPbmVvZkRlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEjcKB29wdGlvbnMYAiABKAsyHS5nb29nbGUucHJvdG9idWYuT25lb2ZPcHRpb25zUgdvcHRpb25zIuMCChNFbnVtRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSPwoFdmFsdWUYAiADKAsyKS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlRGVzY3JpcHRvclByb3RvUgV2YWx1ZRI2CgdvcHRpb25zGAMgASgLMhwuZ29vZ2xlLnByb3RvYnVmLkVudW1PcHRpb25zUgdvcHRpb25zEl0KDnJlc2VydmVkX3JhbmdlGAQgAygLMjYuZ29vZ2xlLnByb3RvYnVmLkVudW1EZXNjcmlwdG9yUHJvdG8uRW51bVJlc2VydmVkUmFuZ2VSDXJlc2VydmVkUmFuZ2USIwoNcmVzZXJ2ZWRfbmFtZRgFIAMoCVIMcmVzZXJ2ZWROYW1lGjsKEUVudW1SZXNlcnZlZFJhbmdlEhQKBXN0YXJ0GAEgASgFUgVzdGFydBIQCgNlbmQYAiABKAVSA2VuZCKDAQoYRW51bVZhbHVlRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSFgoGbnVtYmVyGAIgASgFUgZudW1iZXISOwoHb3B0aW9ucxgDIAEoCzIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zUgdvcHRpb25zIqcBChZTZXJ2aWNlRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSPgoGbWV0aG9kGAIgAygLMiYuZ29vZ2xlLnByb3RvYnVmLk1ldGhvZERlc2NyaXB0b3JQcm90b1IGbWV0aG9kEjkKB29wdGlvbnMYAyABKAsyHy5nb29nbGUucHJvdG9idWYuU2VydmljZU9wdGlvbnNSB29wdGlvbnMiiQIKFU1ldGhvZERlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEh0KCmlucHV0X3R5cGUYAiABKAlSCWlucHV0VHlwZRIfCgtvdXRwdXRfdHlwZRgDIAEoCVIKb3V0cHV0VHlwZRI4CgdvcHRpb25zGAQgASgLMh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnNSB29wdGlvbnMSMAoQY2xpZW50X3N0cmVhbWluZxgFIAEoCDoFZmFsc2VSD2NsaWVudFN0cmVhbWluZxIwChBzZXJ2ZXJfc3RyZWFtaW5nGAYgASgIOgVmYWxzZVIPc2VydmVyU3RyZWFtaW5nIq0JCgtGaWxlT3B0aW9ucxIhCgxqYXZhX3BhY2thZ2UYASABKAlSC2phdmFQYWNrYWdlEjAKFGphdmFfb3V0ZXJfY2xhc3NuYW1lGAggASgJUhJqYXZhT3V0ZXJDbGFzc25hbWUSNQoTamF2YV9tdWx0aXBsZV9maWxlcxgKIAEoCDoFZmFsc2VSEWphdmFNdWx0aXBsZUZpbGVzEkQKHWphdmFfZ2VuZXJhdGVfZXF1YWxzX2FuZF9oYXNoGBQgASgIQgIYAVIZamF2YUdlbmVyYXRlRXF1YWxzQW5kSGFzaBI6ChZqYXZhX3N0cmluZ19jaGVja191dGY4GBsgASgIOgVmYWxzZVITamF2YVN0cmluZ0NoZWNrVXRmOBJTCgxvcHRpbWl6ZV9mb3IYCSABKA4yKS5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMuT3B0aW1pemVNb2RlOgVTUEVFRFILb3B0aW1pemVGb3ISHQoKZ29fcGFja2FnZRgLIAEoCVIJZ29QYWNrYWdlEjUKE2NjX2dlbmVyaWNfc2VydmljZXMYECABKAg6BWZhbHNlUhFjY0dlbmVyaWNTZXJ2aWNlcxI5ChVqYXZhX2dlbmVyaWNfc2VydmljZXMYESABKAg6BWZhbHNlUhNqYXZhR2VuZXJpY1NlcnZpY2VzEjUKE3B5X2dlbmVyaWNfc2VydmljZXMYEiABKAg6BWZhbHNlUhFweUdlbmVyaWNTZXJ2aWNlcxIlCgpkZXByZWNhdGVkGBcgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBIuChBjY19lbmFibGVfYXJlbmFzGB8gASgIOgR0cnVlUg5jY0VuYWJsZUFyZW5hcxIqChFvYmpjX2NsYXNzX3ByZWZpeBgkIAEoCVIPb2JqY0NsYXNzUHJlZml4EikKEGNzaGFycF9uYW1lc3BhY2UYJSABKAlSD2NzaGFycE5hbWVzcGFjZRIhCgxzd2lmdF9wcmVmaXgYJyABKAlSC3N3aWZ0UHJlZml4EigKEHBocF9jbGFzc19wcmVmaXgYKCABKAlSDnBocENsYXNzUHJlZml4EiMKDXBocF9uYW1lc3BhY2UYKSABKAlSDHBocE5hbWVzcGFjZRI0ChZwaHBfbWV0YWRhdGFfbmFtZXNwYWNlGCwgASgJUhRwaHBNZXRhZGF0YU5hbWVzcGFjZRIhCgxydWJ5X3BhY2thZ2UYLSABKAlSC3J1YnlQYWNrYWdlEjcKCGZlYXR1cmVzGDIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uIjoKDE9wdGltaXplTW9kZRIJCgVTUEVFRBABEg0KCUNPREVfU0laRRACEhAKDExJVEVfUlVOVElNRRADKgkI6AcQgICAgAJKBAgqECtKBAgmECdSFHBocF9nZW5lcmljX3NlcnZpY2VzIvQDCg5NZXNzYWdlT3B0aW9ucxI8ChdtZXNzYWdlX3NldF93aXJlX2Zvcm1hdBgBIAEoCDoFZmFsc2VSFG1lc3NhZ2VTZXRXaXJlRm9ybWF0EkwKH25vX3N0YW5kYXJkX2Rlc2NyaXB0b3JfYWNjZXNzb3IYAiABKAg6BWZhbHNlUhxub1N0YW5kYXJkRGVzY3JpcHRvckFjY2Vzc29yEiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkEhsKCW1hcF9lbnRyeRgHIAEoCFIIbWFwRW50cnkSVgomZGVwcmVjYXRlZF9sZWdhY3lfanNvbl9maWVsZF9jb25mbGljdHMYCyABKAhCAhgBUiJkZXByZWNhdGVkTGVnYWN5SnNvbkZpZWxkQ29uZmxpY3RzEjcKCGZlYXR1cmVzGAwgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAJKBAgEEAVKBAgFEAZKBAgGEAdKBAgIEAlKBAgJEAoinQ0KDEZpZWxkT3B0aW9ucxJBCgVjdHlwZRgBIAEoDjIjLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuQ1R5cGU6BlNUUklOR1IFY3R5cGUSFgoGcGFja2VkGAIgASgIUgZwYWNrZWQSRwoGanN0eXBlGAYgASgOMiQuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5KU1R5cGU6CUpTX05PUk1BTFIGanN0eXBlEhkKBGxhenkYBSABKAg6BWZhbHNlUgRsYXp5Ei4KD3VudmVyaWZpZWRfbGF6eRgPIAEoCDoFZmFsc2VSDnVudmVyaWZpZWRMYXp5EiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkEhkKBHdlYWsYCiABKAg6BWZhbHNlUgR3ZWFrEigKDGRlYnVnX3JlZGFjdBgQIAEoCDoFZmFsc2VSC2RlYnVnUmVkYWN0EksKCXJldGVudGlvbhgRIAEoDjItLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuT3B0aW9uUmV0ZW50aW9uUglyZXRlbnRpb24SSAoHdGFyZ2V0cxgTIAMoDjIuLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuT3B0aW9uVGFyZ2V0VHlwZVIHdGFyZ2V0cxJXChBlZGl0aW9uX2RlZmF1bHRzGBQgAygLMiwuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5FZGl0aW9uRGVmYXVsdFIPZWRpdGlvbkRlZmF1bHRzEjcKCGZlYXR1cmVzGBUgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElUKD2ZlYXR1cmVfc3VwcG9ydBgWIAEoCzIsLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuRmVhdHVyZVN1cHBvcnRSDmZlYXR1cmVTdXBwb3J0ElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uGloKDkVkaXRpb25EZWZhdWx0EjIKB2VkaXRpb24YAyABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIHZWRpdGlvbhIUCgV2YWx1ZRgCIAEoCVIFdmFsdWUalgIKDkZlYXR1cmVTdXBwb3J0EkcKEmVkaXRpb25faW50cm9kdWNlZBgBIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUhFlZGl0aW9uSW50cm9kdWNlZBJHChJlZGl0aW9uX2RlcHJlY2F0ZWQYAiABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIRZWRpdGlvbkRlcHJlY2F0ZWQSLwoTZGVwcmVjYXRpb25fd2FybmluZxgDIAEoCVISZGVwcmVjYXRpb25XYXJuaW5nEkEKD2VkaXRpb25fcmVtb3ZlZBgEIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUg5lZGl0aW9uUmVtb3ZlZCIvCgVDVHlwZRIKCgZTVFJJTkcQABIICgRDT1JEEAESEAoMU1RSSU5HX1BJRUNFEAIiNQoGSlNUeXBlEg0KCUpTX05PUk1BTBAAEg0KCUpTX1NUUklORxABEg0KCUpTX05VTUJFUhACIlUKD09wdGlvblJldGVudGlvbhIVChFSRVRFTlRJT05fVU5LTk9XThAAEhUKEVJFVEVOVElPTl9SVU5USU1FEAESFAoQUkVURU5USU9OX1NPVVJDRRACIowCChBPcHRpb25UYXJnZXRUeXBlEhcKE1RBUkdFVF9UWVBFX1VOS05PV04QABIUChBUQVJHRVRfVFlQRV9GSUxFEAESHwobVEFSR0VUX1RZUEVfRVhURU5TSU9OX1JBTkdFEAISFwoTVEFSR0VUX1RZUEVfTUVTU0FHRRADEhUKEVRBUkdFVF9UWVBFX0ZJRUxEEAQSFQoRVEFSR0VUX1RZUEVfT05FT0YQBRIUChBUQVJHRVRfVFlQRV9FTlVNEAYSGgoWVEFSR0VUX1RZUEVfRU5VTV9FTlRSWRAHEhcKE1RBUkdFVF9UWVBFX1NFUlZJQ0UQCBIWChJUQVJHRVRfVFlQRV9NRVRIT0QQCSoJCOgHEICAgIACSgQIBBAFSgQIEhATIqwBCgxPbmVvZk9wdGlvbnMSNwoIZmVhdHVyZXMYASABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24qCQjoBxCAgICAAiLRAgoLRW51bU9wdGlvbnMSHwoLYWxsb3dfYWxpYXMYAiABKAhSCmFsbG93QWxpYXMSJQoKZGVwcmVjYXRlZBgDIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSVgomZGVwcmVjYXRlZF9sZWdhY3lfanNvbl9maWVsZF9jb25mbGljdHMYBiABKAhCAhgBUiJkZXByZWNhdGVkTGVnYWN5SnNvbkZpZWxkQ29uZmxpY3RzEjcKCGZlYXR1cmVzGAcgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAJKBAgFEAYi2AIKEEVudW1WYWx1ZU9wdGlvbnMSJQoKZGVwcmVjYXRlZBgBIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSNwoIZmVhdHVyZXMYAiABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSKAoMZGVidWdfcmVkYWN0GAMgASgIOgVmYWxzZVILZGVidWdSZWRhY3QSVQoPZmVhdHVyZV9zdXBwb3J0GAQgASgLMiwuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5GZWF0dXJlU3VwcG9ydFIOZmVhdHVyZVN1cHBvcnQSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24qCQjoBxCAgICAAiLVAQoOU2VydmljZU9wdGlvbnMSNwoIZmVhdHVyZXMYIiABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSJQoKZGVwcmVjYXRlZBghIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24qCQjoBxCAgICAAiKZAwoNTWV0aG9kT3B0aW9ucxIlCgpkZXByZWNhdGVkGCEgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBJxChFpZGVtcG90ZW5jeV9sZXZlbBgiIAEoDjIvLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zLklkZW1wb3RlbmN5TGV2ZWw6E0lERU1QT1RFTkNZX1VOS05PV05SEGlkZW1wb3RlbmN5TGV2ZWwSNwoIZmVhdHVyZXMYIyABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24iUAoQSWRlbXBvdGVuY3lMZXZlbBIXChNJREVNUE9URU5DWV9VTktOT1dOEAASEwoPTk9fU0lERV9FRkZFQ1RTEAESDgoKSURFTVBPVEVOVBACKgkI6AcQgICAgAIimgMKE1VuaW50ZXJwcmV0ZWRPcHRpb24SQQoEbmFtZRgCIAMoCzItLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uLk5hbWVQYXJ0UgRuYW1lEikKEGlkZW50aWZpZXJfdmFsdWUYAyABKAlSD2lkZW50aWZpZXJWYWx1ZRIsChJwb3NpdGl2ZV9pbnRfdmFsdWUYBCABKARSEHBvc2l0aXZlSW50VmFsdWUSLAoSbmVnYXRpdmVfaW50X3ZhbHVlGAUgASgDUhBuZWdhdGl2ZUludFZhbHVlEiEKDGRvdWJsZV92YWx1ZRgGIAEoAVILZG91YmxlVmFsdWUSIQoMc3RyaW5nX3ZhbHVlGAcgASgMUgtzdHJpbmdWYWx1ZRInCg9hZ2dyZWdhdGVfdmFsdWUYCCABKAlSDmFnZ3JlZ2F0ZVZhbHVlGkoKCE5hbWVQYXJ0EhsKCW5hbWVfcGFydBgBIAIoCVIIbmFtZVBhcnQSIQoMaXNfZXh0ZW5zaW9uGAIgAigIUgtpc0V4dGVuc2lvbiKnCgoKRmVhdHVyZVNldBKRAQoOZmllbGRfcHJlc2VuY2UYASABKA4yKS5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5GaWVsZFByZXNlbmNlQj+IAQGYAQSYAQGiAQ0SCEVYUExJQ0lUGOYHogENEghJTVBMSUNJVBjnB6IBDRIIRVhQTElDSVQY6AeyAQMI6AdSDWZpZWxkUHJlc2VuY2USbAoJZW51bV90eXBlGAIgASgOMiQuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuRW51bVR5cGVCKYgBAZgBBpgBAaIBCxIGQ0xPU0VEGOYHogEJEgRPUEVOGOcHsgEDCOgHUghlbnVtVHlwZRKYAQoXcmVwZWF0ZWRfZmllbGRfZW5jb2RpbmcYAyABKA4yMS5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5SZXBlYXRlZEZpZWxkRW5jb2RpbmdCLYgBAZgBBJgBAaIBDRIIRVhQQU5ERUQY5geiAQsSBlBBQ0tFRBjnB7IBAwjoB1IVcmVwZWF0ZWRGaWVsZEVuY29kaW5nEn4KD3V0ZjhfdmFsaWRhdGlvbhgEIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LlV0ZjhWYWxpZGF0aW9uQimIAQGYAQSYAQGiAQkSBE5PTkUY5geiAQsSBlZFUklGWRjnB7IBAwjoB1IOdXRmOFZhbGlkYXRpb24SfgoQbWVzc2FnZV9lbmNvZGluZxgFIAEoDjIrLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0Lk1lc3NhZ2VFbmNvZGluZ0ImiAEBmAEEmAEBogEUEg9MRU5HVEhfUFJFRklYRUQY5geyAQMI6AdSD21lc3NhZ2VFbmNvZGluZxKCAQoLanNvbl9mb3JtYXQYBiABKA4yJi5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5Kc29uRm9ybWF0QjmIAQGYAQOYAQaYAQGiARcSEkxFR0FDWV9CRVNUX0VGRk9SVBjmB6IBChIFQUxMT1cY5weyAQMI6AdSCmpzb25Gb3JtYXQiXAoNRmllbGRQcmVzZW5jZRIaChZGSUVMRF9QUkVTRU5DRV9VTktOT1dOEAASDAoIRVhQTElDSVQQARIMCghJTVBMSUNJVBACEhMKD0xFR0FDWV9SRVFVSVJFRBADIjcKCEVudW1UeXBlEhUKEUVOVU1fVFlQRV9VTktOT1dOEAASCAoET1BFThABEgoKBkNMT1NFRBACIlYKFVJlcGVhdGVkRmllbGRFbmNvZGluZxIjCh9SRVBFQVRFRF9GSUVMRF9FTkNPRElOR19VTktOT1dOEAASCgoGUEFDS0VEEAESDAoIRVhQQU5ERUQQAiJJCg5VdGY4VmFsaWRhdGlvbhIbChdVVEY4X1ZBTElEQVRJT05fVU5LTk9XThAAEgoKBlZFUklGWRACEggKBE5PTkUQAyIECAEQASJTCg9NZXNzYWdlRW5jb2RpbmcSHAoYTUVTU0FHRV9FTkNPRElOR19VTktOT1dOEAASEwoPTEVOR1RIX1BSRUZJWEVEEAESDQoJREVMSU1JVEVEEAIiSAoKSnNvbkZvcm1hdBIXChNKU09OX0ZPUk1BVF9VTktOT1dOEAASCQoFQUxMT1cQARIWChJMRUdBQ1lfQkVTVF9FRkZPUlQQAioGCOgHEItOKgYIi04QkE4qBgiQThCRTkoGCOcHEOgHIu8DChJGZWF0dXJlU2V0RGVmYXVsdHMSWAoIZGVmYXVsdHMYASADKAsyPC5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldERlZmF1bHRzLkZlYXR1cmVTZXRFZGl0aW9uRGVmYXVsdFIIZGVmYXVsdHMSQQoPbWluaW11bV9lZGl0aW9uGAQgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SDm1pbmltdW1FZGl0aW9uEkEKD21heGltdW1fZWRpdGlvbhgFIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUg5tYXhpbXVtRWRpdGlvbhr4AQoYRmVhdHVyZVNldEVkaXRpb25EZWZhdWx0EjIKB2VkaXRpb24YAyABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIHZWRpdGlvbhJOChRvdmVycmlkYWJsZV9mZWF0dXJlcxgEIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UhNvdmVycmlkYWJsZUZlYXR1cmVzEkIKDmZpeGVkX2ZlYXR1cmVzGAUgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSDWZpeGVkRmVhdHVyZXNKBAgBEAJKBAgCEANSCGZlYXR1cmVzIqcCCg5Tb3VyY2VDb2RlSW5mbxJECghsb2NhdGlvbhgBIAMoCzIoLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb2RlSW5mby5Mb2NhdGlvblIIbG9jYXRpb24azgEKCExvY2F0aW9uEhYKBHBhdGgYASADKAVCAhABUgRwYXRoEhYKBHNwYW4YAiADKAVCAhABUgRzcGFuEikKEGxlYWRpbmdfY29tbWVudHMYAyABKAlSD2xlYWRpbmdDb21tZW50cxIrChF0cmFpbGluZ19jb21tZW50cxgEIAEoCVIQdHJhaWxpbmdDb21tZW50cxI6ChlsZWFkaW5nX2RldGFjaGVkX2NvbW1lbnRzGAYgAygJUhdsZWFkaW5nRGV0YWNoZWRDb21tZW50cyLQAgoRR2VuZXJhdGVkQ29kZUluZm8STQoKYW5ub3RhdGlvbhgBIAMoCzItLmdvb2dsZS5wcm90b2J1Zi5HZW5lcmF0ZWRDb2RlSW5mby5Bbm5vdGF0aW9uUgphbm5vdGF0aW9uGusBCgpBbm5vdGF0aW9uEhYKBHBhdGgYASADKAVCAhABUgRwYXRoEh8KC3NvdXJjZV9maWxlGAIgASgJUgpzb3VyY2VGaWxlEhQKBWJlZ2luGAMgASgFUgViZWdpbhIQCgNlbmQYBCABKAVSA2VuZBJSCghzZW1hbnRpYxgFIAEoDjI2Lmdvb2dsZS5wcm90b2J1Zi5HZW5lcmF0ZWRDb2RlSW5mby5Bbm5vdGF0aW9uLlNlbWFudGljUghzZW1hbnRpYyIoCghTZW1hbnRpYxIICgROT05FEAASBwoDU0VUEAESCQoFQUxJQVMQAiqnAgoHRWRpdGlvbhITCg9FRElUSU9OX1VOS05PV04QABITCg5FRElUSU9OX0xFR0FDWRCEBxITCg5FRElUSU9OX1BST1RPMhDmBxITCg5FRElUSU9OX1BST1RPMxDnBxIRCgxFRElUSU9OXzIwMjMQ6AcSEQoMRURJVElPTl8yMDI0EOkHEhcKE0VESVRJT05fMV9URVNUX09OTFkQARIXChNFRElUSU9OXzJfVEVTVF9PTkxZEAISHQoXRURJVElPTl85OTk5N19URVNUX09OTFkQnY0GEh0KF0VESVRJT05fOTk5OThfVEVTVF9PTkxZEJ6NBhIdChdFRElUSU9OXzk5OTk5X1RFU1RfT05MWRCfjQYSEwoLRURJVElPTl9NQVgQ/////wdCfgoTY29tLmdvb2dsZS5wcm90b2J1ZkIQRGVzY3JpcHRvclByb3Rvc0gBWi1nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9kZXNjcmlwdG9ycGL4AQGiAgNHUEKqAhpHb29nbGUuUHJvdG9idWYuUmVmbGVjdGlvbkrbwgMKBxIFJgCUCgEKqg8KAQwSAyYAEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KMtsCIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIFRoZSBtZXNzYWdlcyBpbiB0aGlzIGZpbGUgZGVzY3JpYmUgdGhlIGRlZmluaXRpb25zIGZvdW5kIGluIC5wcm90byBmaWxlcy4KIEEgdmFsaWQgLnByb3RvIGZpbGUgY2FuIGJlIHRyYW5zbGF0ZWQgZGlyZWN0bHkgdG8gYSBGaWxlRGVzY3JpcHRvclByb3RvCiB3aXRob3V0IGFueSBvdGhlciBpbmZvcm1hdGlvbiAoZS5nLiB3aXRob3V0IHJlYWRpbmcgaXRzIGltcG9ydHMpLgoKCAoBAhIDKAAYCggKAQgSAyoARAoJCgIICxIDKgBECggKAQgSAysALAoJCgIIARIDKwAsCggKAQgSAywAMQoJCgIICBIDLAAxCggKAQgSAy0ANwoJCgIIJRIDLQA3CggKAQgSAy4AIQoJCgIIJBIDLgAhCggKAQgSAy8AHwoJCgIIHxIDLwAfCggKAQgSAzMAHAp/CgIICRIDMwAcGnQgZGVzY3JpcHRvci5wcm90byBtdXN0IGJlIG9wdGltaXplZCBmb3Igc3BlZWQgYmVjYXVzZSByZWZsZWN0aW9uLWJhc2VkCiBhbGdvcml0aG1zIGRvbid0IHdvcmsgZHVyaW5nIGJvb3RzdHJhcHBpbmcuCgpqCgIEABIENwA5ARpeIFRoZSBwcm90b2NvbCBjb21waWxlciBjYW4gb3V0cHV0IGEgRmlsZURlc2NyaXB0b3JTZXQgY29udGFpbmluZyB0aGUgLnByb3RvCiBmaWxlcyBpdCBwYXJzZXMuCgoKCgMEAAESAzcIGQoLCgQEAAIAEgM4AigKDAoFBAACAAQSAzgCCgoMCgUEAAIABhIDOAseCgwKBQQAAgABEgM4HyMKDAoFBAACAAMSAzgmJwotCgIFABIEPABdARohIFRoZSBmdWxsIHNldCBvZiBrbm93biBlZGl0aW9ucy4KCgoKAwUAARIDPAUMCjoKBAUAAgASAz4CFhotIEEgcGxhY2Vob2xkZXIgZm9yIGFuIHVua25vd24gZWRpdGlvbiB2YWx1ZS4KCgwKBQUAAgABEgM+AhEKDAoFBQACAAISAz4UFQqZAQoEBQACARIDQgIXGosBIEEgcGxhY2Vob2xkZXIgZWRpdGlvbiBmb3Igc3BlY2lmeWluZyBkZWZhdWx0IGJlaGF2aW9ycyAqYmVmb3JlKiBhIGZlYXR1cmUKIHdhcyBmaXJzdCBpbnRyb2R1Y2VkLiAgVGhpcyBpcyBlZmZlY3RpdmVseSBhbiAiaW5maW5pdGUgcGFzdCIuCgoMCgUFAAIBARIDQgIQCgwKBQUAAgECEgNCExYKggIKBAUAAgISA0gCFxr0ASBMZWdhY3kgc3ludGF4ICJlZGl0aW9ucyIuICBUaGVzZSBwcmUtZGF0ZSBlZGl0aW9ucywgYnV0IGJlaGF2ZSBtdWNoIGxpa2UKIGRpc3RpbmN0IGVkaXRpb25zLiAgVGhlc2UgY2FuJ3QgYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBlZGl0aW9uIG9mIHByb3RvCiBmaWxlcywgYnV0IGZlYXR1cmUgZGVmaW5pdGlvbnMgbXVzdCBzdXBwbHkgcHJvdG8yL3Byb3RvMyBkZWZhdWx0cyBmb3IKIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LgoKDAoFBQAC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Y2UgaXMgdHJhY2tlZCBmb3IgdGhpcyBmaWVsZC4gVGhpcyBvbmVvZgogaXMga25vd24gYXMgYSAic3ludGhldGljIiBvbmVvZiwgYW5kIHRoaXMgZmllbGQgbXVzdCBiZSBpdHMgc29sZSBtZW1iZXIKIChlYWNoIHByb3RvMyBvcHRpb25hbCBmaWVsZCBnZXRzIGl0cyBvd24gc3ludGhldGljIG9uZW9mKS4gU3ludGhldGljIG9uZW9mcwogZXhpc3QgaW4gdGhlIGRlc2NyaXB0b3Igb25seSwgYW5kIGRvIG5vdCBnZW5lcmF0ZSBhbnkgQVBJLiBTeW50aGV0aWMgb25lb2ZzCiBtdXN0IGJlIG9yZGVyZWQgYWZ0ZXIgYWxsICJyZWFsIiBvbmVvZnMuCgogRm9yIG1lc3NhZ2UgZmllbGRzLCBwcm90bzNfb3B0aW9uYWwgZG9lc24ndCBjcmVhdGUgYW55IHNlbWFudGljIGNoYW5nZSwKIHNpbmNlIG5vbi1yZXBlYXRlZCBtZXNzYWdlIGZpZWxkcyBhbHdheXMgdHJhY2sgcHJlc2VuY2UuIEhvd2V2ZXIgaXQgc3RpbGwKIGluZGljYXRlcyB0aGUgc2VtYW50aWMgZGV0YWlsIG9mIHdoZXRoZXIgdGhlIHVzZXIgd3JvdGUgIm9wdGlvbmFsIiBvciBub3QuCiBUaGlzIGNhbiBiZSB1c2VmdWwgZm9yIHJvdW5kLXRyaXBwaW5nIHRoZSAucHJvdG8gZmlsZS4gRm9yIGNvbnNpc3RlbmN5IHdlCiBnaXZlIG1lc3NhZ2UgZmllbGRzIGEgc3ludGhldGljIG9uZW9mIGFsc28sIGV2ZW4gdGhvdWdoIGl0IGlzIG5vdCByZXF1aXJlZAogdG8gdHJhY2sgcHJlc2VuY2UuIFRoaXMgaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQgYmVjYXVzZSB0aGUgcGFyc2VyIGNhbid0CiB0ZWxsIGlmIGEgZmllbGQgaXMgYSBtZXNzYWdlIG9yIGFuIGVudW0sIHNvIGl0IG11c3QgYWx3YXlzIGNyZWF0ZSBhCiBzeW50aGV0aWMgb25lb2YuCgogUHJvdG8yIG9wdGlvbmFsIGZpZWxkcyBkbyBub3Qgc2V0IHRoaXMgZmxhZywgYmVjYXVz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DQoFBAkCBAgSBIcDJTYKDQoFBAkCBAcSBIcDMDUKRQoEBAkCBRIEiQMCNxo3IElkZW50aWZpZXMgaWYgc2VydmVyIHN0cmVhbXMgbXVsdGlwbGUgc2VydmVyIG1lc3NhZ2VzCgoNCgUECQIFBBIEiQMCCgoNCgUECQIFBRIEiQMLDwoNCgUECQIFARIEiQMQIAoNCgUECQIFAxIEiQMjJAoNCgUECQIFCBIEiQMlNgoNCgUECQIFBxIEiQMwNQqvDgoCBAoSBqwDAKgEATJOID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIE9wdGlvbnMKMtANIEVhY2ggb2YgdGhlIGRlZmluaXRpb25zIGFib3ZlIG1heSBoYXZlICJvcHRpb25zIiBhdHRhY2hlZC4gIFRoZXNlIGFyZQoganVzdCBhbm5vdGF0aW9ucyB3aGljaCBtYXkgY2F1c2UgY29kZSB0byBiZSBnZW5lcmF0ZWQgc2xpZ2h0bHkgZGlmZmVyZW50bHkKIG9yIG1heSBjb250YWluIGhpbnRzIGZvciBjb2RlIHRoYXQgbWFuaXB1bGF0ZXMgcHJvdG9jb2wgbWVzc2FnZXMuCgogQ2xpZW50cyBtYXkgZGVmaW5lIGN1c3RvbSBvcHRpb25zIGFzIGV4dGVuc2lvbnMgb2YgdGhlICpPcHRpb25zIG1lc3NhZ2VzLgogVGhlc2UgZXh0ZW5zaW9ucyBtYXkgbm90IHlldCBiZSBrbm93biBhdCBwYXJzaW5nIHRpbWUsIHNvIHRoZSBwYXJzZXIgY2Fubm90CiBzdG9yZSB0aGUgdmFsdWVzIGluIHRoZW0uICBJbnN0ZWFkIGl0IHN0b3JlcyB0aGVtIGluIGEgZmllbGQgaW4gdGhlICpPcHRpb25zCiBtZXNzYWdlIGNhbGxlZCB1bmludGVycHJldGVkX29wdGlvbi4gVGhpcyBmaWVsZCBtdXN0IGhhdmUgdGhlIHNhbWUgbmFtZQogYWNyb3NzIGFsbCAqT3B0aW9ucyBtZXNzYWdlcy4gV2UgdGhlbiB1c2UgdGhpcyBmaWVsZCB0byBwb3B1bGF0ZSB0aGUKIGV4dGVuc2lvbnMgd2hlbiB3ZSBidWlsZCBhIGRlc2NyaXB0b3IsIGF0IHdoaWNoIHBvaW50IGFsbCBwcm90b3MgaGF2ZSBiZWVuCiBwYXJzZWQgYW5kIHNvIGFsbCBleHRlbnNpb25zIGFyZSBrbm93bi4KCiBFeHRlbnNpb24gbnVtYmVycyBmb3IgY3VzdG9tIG9wdGlvbnMgbWF5IGJlIGNob3NlbiBhcyBmb2xsb3dzOgogKiBGb3Igb3B0aW9ucyB3aGljaCB3aWxsIG9ubHkgYmUgdXNlZCB3aXRoaW4gYSBzaW5nbGUgYXBwbGljYXRpb24gb3IKICAgb3JnYW5pemF0aW9uLCBvciBmb3IgZXhwZXJpbWVudGFsIG9wdGlvbnMsIHVzZSBmaWVsZCBudW1iZXJzIDUwMDAwCiAgIHRocm91Z2ggOTk5OTkuICBJdCBpcyB1cCB0byB5b3UgdG8gZW5zdXJlIHRoYXQgeW91IGRvIG5vdCB1c2UgdGhlCiAgIHNhbWUgbnVtYmVyIGZvciBtdWx0aXBsZSBvcHRpb25zLgogKiBGb3Igb3B0aW9ucyB3aGljaCB3aWxsIGJlIHB1Ymxpc2hlZCBhbmQgdXNlZCBwdWJsaWNseSBieSBtdWx0aXBsZQogICBpbmRlcGVuZGVudCBlbnRpdGllcywgZS1tYWlsIHByb3RvYnVmLWdsb2JhbC1leHRlbnNpb24tcmVnaXN0cnlAZ29vZ2xlLmNvbQogICB0byByZXNlcnZlIGV4dGVuc2lvbiBudW1iZXJzLiBTaW1wbHkgcHJvdmlkZSB5b3VyIHByb2plY3QgbmFtZSAoZS5nLgogICBPYmplY3RpdmUtQyBwbHVnaW4pIGFuZCB5b3VyIHByb2plY3Qgd2Vic2l0ZSAoaWYgYXZhaWxhYmxlKSAtLSB0aGVyZSdzIG5vCiAgIG5lZWQgdG8gZXhwbGFpbiBob3cgeW91IGludGVuZCB0byB1c2UgdGhlbS4gVXN1YWxseSB5b3Ugb25seSBuZWVkIG9uZQogICBleHRlbnNpb24gbnVtYmVyLiBZb3UgY2FuIGRlY2xhcmUgbXVsdGlwbGUgb3B0aW9ucyB3aXRoIG9ubHkgb25lIGV4dGVuc2lvbgogICBudW1iZXIgYnkgcHV0dGluZyB0aGVtIGluIGEgc3ViLW1lc3NhZ2UuIFNlZSB0aGUgQ3VzdG9tIE9wdGlvbnMgc2VjdGlvbiBvZgogICB0aGUgZG9jcyBmb3IgZXhhbXBsZXM6CiAgIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvZG9jcy9wcm90byNvcHRpb25zCiAgIElmIHRoaXMgdHVybnMgb3V0IHRvIGJlIHBvcHVsYXIsIGEgd2ViIHNlcnZpY2Ugd2lsbCBiZSBzZXQgdXAKICAgdG8gYXV0b21hdGljYWxseSBhc3NpZ24gb3B0aW9uIG51bWJlcnMuCgoLCgMECgESBKwDCBMK9AEKBAQKAgASBLIDAiMa5QEgU2V0cyB0aGUgSmF2YSBwYWNrYWdlIHdoZXJlIGNsYXNzZXMgZ2VuZXJhdGVkIGZyb20gdGhpcyAucHJvdG8gd2lsbCBiZQogcGxhY2VkLiAgQnkgZGVmYXVsdCwgdGhlIHByb3RvIHBhY2thZ2UgaXMgdXNlZCwgYnV0IHRoaXMgaXMgb2Z0ZW4KIGluYXBwcm9wcmlhdGUgYmVjYXVzZSBwcm90byBwYWNrYWdlcyBkbyBub3Qgbm9ybWFsbHkgc3RhcnQgd2l0aCBiYWNrd2FyZHMKIGRvbWFpbiBuYW1lcy4KCg0KBQQKAgAEEgSyAwIKCg0KBQQKAgAFEgSyAwsRCg0KBQQKAgABEgSyAxIeCg0KBQQKAgADEgSyAyEiCvECCgQECgIBEgS5AwIrGuICIENvbnRyb2xzIHRoZSBuYW1lIG9mIHRoZSB3cmFwcGVyIEphdmEgY2xhc3MgZ2VuZXJhdGVkIGZvciB0aGUgLnByb3RvIGZpbGUuCiBUaGF0IGNsYXNzIHdpbGwgYWx3YXlzIGNvbnRhaW4gdGhlIC5wcm90byBmaWxlJ3MgZ2V0RGVzY3JpcHRvcigpIG1ldGhvZCBhcwogd2VsbCBhcyBhbnkgdG9wLWxldmVsIGV4dGVuc2lvbnMgZGVmaW5lZCBpbiB0aGUgLnByb3RvIGZpbGUuCiBJZiBqYXZhX211bHRpcGxlX2ZpbGVzIGlzIGRpc2FibGVkLCB0aGVuIGFsbCB0aGUgb3RoZXIgY2xhc3NlcyBmcm9tIHRoZQogLnByb3RvIGZpbGUgd2lsbCBiZSBuZXN0ZWQgaW5zaWRlIHRoZSBzaW5n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2QM0OQriAgoEBAoCBhIE4AMCIhrTAiBTZXRzIHRoZSBHbyBwYWNrYWdlIHdoZXJlIHN0cnVjdHMgZ2VuZXJhdGVkIGZyb20gdGhpcyAucHJvdG8gd2lsbCBiZQogcGxhY2VkLiBJZiBvbWl0dGVkLCB0aGUgR28gcGFja2FnZSB3aWxsIGJlIGRlcml2ZWQgZnJvbSB0aGUgZm9sbG93aW5nOgogICAtIFRoZSBiYXNlbmFtZSBvZiB0aGUgcGFja2FnZSBpbXBvcnQgcGF0aCwgaWYgcHJvdmlkZWQuCiAgIC0gT3RoZXJ3aXNlLCB0aGUgcGFja2FnZSBzdGF0ZW1lbnQgaW4gdGhlIC5wcm90byBmaWxlLCBpZiBwcmVzZW50LgogICAtIE90aGVyd2lzZSwgdGhlIGJhc2VuYW1lIG9mIHRoZSAucHJvdG8gZmlsZSwgd2l0aG91dCBleHRlbnNpb24uCgoNCgUECgIGBBIE4AMCCgoNCgUECgIGBRIE4AMLEQoNCgUECgIGARIE4AMSHAoNCgUECgIGAxIE4AMfIQrUBAoEBAoCBxIE7AMCOxrFBCBTaG91bGQgZ2VuZXJpYyBzZXJ2aWNlcyBiZSBnZW5lcmF0ZWQgaW4gZWFjaCBsYW5ndWFnZT8gICJHZW5lcmljIiBzZXJ2aWNlcwogYXJlIG5vdCBzcGVjaWZpYyB0byBhbnkgcGFydGljdWxhciBSUEMgc3lzdGVtLiAgVGhleSBhcmUgZ2VuZXJhdGVkIGJ5IHRoZQogbWFpbiBjb2RlIGdlbmVyYXRvcnMgaW4gZWFjaCBsYW5ndWFnZSAod2l0aG91dCBhZGRpdGlvbmFsIHBsdWdpbnMpLgogR2VuZXJpYyBzZXJ2aWNlcyB3ZXJlIHRoZSBvbmx5IGtpbmQgb2Ygc2VydmljZSBnZW5lcmF0aW9uIHN1cHBvcnRlZCBieQogZWFybHkgdmVyc2lvbnMgb2YgZ29vZ2xlLnByb3RvYnVmLgoKIEdlbmVyaWMgc2VydmljZXMgYXJlIG5vdyBjb25zaWRlcmVkIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgdXNpbmcgcGx1Z2lucwogdGhhdCBnZW5lcmF0ZSBjb2RlIHNwZWNpZmljIHRvIHlvdXIgcGFydGljdWxhciBSUEMgc3lzdGVt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c2FnZSBtdXN0IGJlIGRlZmluZWQgZXhhY3RseSBhcyBmb2xsb3dzOgogICBtZXNzYWdlIEZvbyB7CiAgICAgb3B0aW9uIG1lc3NhZ2Vfc2V0X3dpcmVfZm9ybWF0ID0gdHJ1ZTsKICAgICBleHRlbnNpb25zIDQgdG8gbWF4OwogICB9CiBOb3RlIHRoYXQgdGhlIG1lc3NhZ2UgY2Fubm90IGhhdmUgYW55IGRlZmluZWQgZmllbGRzOyBNZXNzYWdlU2V0cyBvbmx5CiBoYXZlIGV4dGVuc2lvbnMuCgogQWxsIGV4dGVuc2lvbnMgb2YgeW91ciB0eXBlIG11c3QgYmUgc2luZ3VsYXIgbWVzc2FnZXM7IGUuZy4gdGhleSBjYW5ub3QKIGJlIGludDMycywgZW51bXMsIG9yIHJlcGVhdGVkIG1lc3NhZ2VzLgoKIEJlY2F1c2UgdGhpcyBpcyBhbiBvcHRpb24sIHRoZSBhYm92ZSB0d28gcmVzdHJpY3Rpb25zIGFyZSBub3QgZW5mb3JjZWQgYnkKIHRoZSBwcm90b2NvbCBjb21waWxlci4KCg0KBQQLAgAEEgS9BAIKCg0KBQQLAgAFEgS9BAsPCg0KBQQLAgABEgS9BBAnCg0KBQQLAgADEgS9BCorCg0KBQQLAgAIEgS9BCw9Cg0KBQQLAgAHEgS9BDc8CusBCgQECwIBEgTCBAJGGtwBIERpc2FibGVzIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBzdGFuZGFyZCAiZGVzY3JpcHRvcigpIiBhY2Nlc3Nvciwgd2hpY2ggY2FuCiBjb25mbGljdCB3aXRoIGEgZmllbGQgb2YgdGhlIHNhbWUgbmFtZS4gIFRoaXMgaXMgbWVhbnQgdG8gbWFrZSBtaWdyYXRpb24KIGZyb20gcHJvdG8xIGVhc2llcjsgbmV3IGNvZGUgc2hvdWxkIGF2b2lkIGZpZWxkcyBuYW1lZCAiZGVzY3JpcHRvciIuCgoNCgUECwIBBBIEwgQCCgoNCgUECwIBBRIEwgQLDwoNCgUECwIBARIEwgQQLwoNCgUECwIBAxIEwgQyMwoNCgUECwIBCBIEwgQ0RQoNCgUECwIBBxIEwgQ/RAruAQoEBAsCAhIEyAQCMRrfASBJcyB0aGlzIG1lc3NhZ2UgZGVwcmVjYXRlZD8KIERlcGVuZGluZyBvbiB0aGUgdGFyZ2V0IHBsYXRmb3JtLCB0aGlzIGNhbiBlbWl0IERlcHJlY2F0ZWQgYW5ub3RhdGlvbnMKIGZvciB0aGUgbWVzc2FnZSwgb3IgaXQgd2lsbCBiZSBjb21wbGV0ZWx5IGlnbm9yZWQ7IGluIHRoZSB2ZXJ5IGxlYXN0LAogdGhpcyBpcyBhIGZvcm1hbGl6YXRpb24gZm9yIGRlcHJlY2F0aW5nIG1lc3NhZ2VzLgoKDQoFBAsCAgQSBMgEAgoKDQoFBAsCAgUSBMgECw8KDQoFBAsCAgESBMgEEBoKDQoFBAsCAgMSBMgEHR4KDQoFBAsCAggSBMgEHzAKDQoFBAsCAgcSBMgEKi8KCwoDBAsJEgTKBAITCgwKBAQLCQASBMoECwwKDQoFBAsJAAESBMoECwwKDQoFBAsJAAISBMoECwwKDAoEBAsJARIEygQODwoNCgUECwkBARIEygQODwoNCgUECwkBAhIEygQODwoMCgQECwkCEgTKBBESCg0KBQQLCQIBEgTKBBESCg0KBQQLCQICEgTKBBESCqAGCgQECwIDEgThBAIeGpEGIFdoZXRoZXIgdGhlIG1lc3NhZ2UgaXMgYW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgbWFwIGVudHJ5IHR5cGUgZm9yIHRoZQogbWFwcyBmaWVsZC4KCiBGb3IgbWFwcyBmaWVsZHM6CiAgICAgbWFwPEtleVR5cGUsIFZhbHVlVHlwZT4gbWFwX2ZpZWxkID0gMTsKIFRoZSBwYXJzZWQgZGVzY3JpcHRvciBsb29rcyBsaWtlOgogICAgIG1lc3NhZ2UgTWFwRmllbGRFbnRyeSB7CiAgICAgICAgIG9wdGlvbiBtYXBfZW50cnkgPSB0cnVlOwogICAgICAgICBvcHRpb25hbCBLZXlUeXBlIGtleSA9IDE7CiAgICAgICAgIG9wdGlvbmFsIFZhbHVlVHlwZSB2YWx1ZSA9IDI7CiAgICAgfQogICAgIHJlcGVhdGVkIE1hcEZpZWxkRW50cnkgbWFwX2ZpZWxkID0gMTsKCiBJbXBsZW1lbnRhdGlvbnMgbWF5IGNob29zZSBub3QgdG8gZ2VuZXJhdGUgdGhlIG1hcF9lbnRyeT10cnVlIG1lc3NhZ2UsIGJ1dAogdXNlIGEgbmF0aXZlIG1hcCBpbiB0aGUgdGFyZ2V0IGxhbmd1YWdlIHRvIGhvbGQgdGhlIGtleXMgYW5kIHZhbHVlcy4KIFRoZSByZWZsZWN0aW9uIEFQSXMgaW4gc3VjaCBpbXBsZW1lbnRhdGlvbnMgc3RpbGwgbmVlZCB0byB3b3JrIGFzCiBpZiB0aGUgZmllbGQgaXMgYSByZXBlYXRlZCBtZXNzYWdlIGZpZWxkLgoKIE5PVEU6IERvIG5vdCBzZXQgdGhlIG9wdGlvbiBpbiAucHJvdG8gZmlsZXMuIEFsd2F5cyB1c2UgdGhlIG1hcHMgc3ludGF4CiBpbnN0ZWFkLiBUaGUgb3B0aW9uIHNob3VsZCBvbmx5IGJlIGltcGxpY2l0bHkgc2V0IGJ5IHRoZSBwcm90byBjb21waWxlcgogcGFyc2VyLgoKDQoFBAsCAwQSBOEEAgoKDQoFBAsCAwUSBOEECw8KDQoFBAsCAwESBOEEEBkKDQoFBAsCAwMSBOEEHB0KJAoDBAsJEgTjBAINIhcgamF2YWxpdGVfc2VyaWFsaXphYmxlCgoMCgQECwkDEgTjBAsMCg0KBQQLCQMBEgTjBAsMCg0KBQQLCQMCEgTjBAsMCh8KAwQLCRIE5AQCDSISIGphdmFuYW5vX2FzX2xpdGUKCgwKBAQLCQQSBOQECwwKDQoFBAsJBAESBOQECwwKDQoFBAsJBAISBOQECwwK3QMKBAQLAgQSBPAEAlAazgMgRW5hYmxlIHRoZSBsZWdhY3kgaGFuZGxpbmcgb2YgSlNPTiBmaWVsZCBuYW1lIGNvbmZsaWN0cy4gIFRoaXMgbG93ZXJjYXNlcwogYW5kIHN0cmlwcyB1bmRlcnNjb3JlZCBmcm9tIHRoZSBmaWVsZHMgYmVmb3JlIGNvbXBhcmlzb24gaW4gcHJvdG8zIG9ubHkuCiBUaGUgbmV3IGJlaGF2aW9yIHRha2VzIGBqc29uX25hbWVgIGludG8gYWNjb3VudCBhbmQgYXBwbGllcyB0byBwcm90bzIgYXMKIHdlbGwuCgogVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGFzIGEgdGVtcG9yYXJ5IG1lYXN1cmUgYWdhaW5zdCBicm9rZW4gYnVpbGRzIGR1ZQogdG8gdGhlIGNoYW5nZSBpbiBiZWhh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ZWQgcHJpbWl0aXZlIGZpZWxkcyB0byBlbmFibGUKIGEgbW9yZSBlZmZpY2llbnQgcmVwcmVzZW50YXRpb24gb24gdGhlIHdpcmUuIFJhdGhlciB0aGFuIHJlcGVhdGVkbHkKIHdyaXRpbmcgdGhlIHRhZyBhbmQgdHlwZSBmb3IgZWFjaCBlbGVtZW50LCB0aGUgZW50aXJlIGFycmF5IGlzIGVuY29kZWQgYXMKIGEgc2luZ2xlIGxlbmd0aC1kZWxpbWl0ZWQgYmxvYi4gSW4gcHJvdG8zLCBvbmx5IGV4cGxpY2l0IHNldHRpbmcgaXQgdG8KIGZhbHNlIHdpbGwgYXZvaWQgdXNpbmcgcGFja2VkIGVuY29kaW5nLiAgVGhpcyBvcHRpb24gaXMgcHJvaGliaXRlZCBpbgogRWRpdGlvbnMsIGJ1dCB0aGUgYHJlcGVhdGVkX2ZpZWxkX2VuY29kaW5nYCBmZWF0dXJlIGNhbiBiZSB1c2VkIHRvIGNvbnRyb2wKIHRoZSBiZWhhdmlvci4KCg0KBQQMAgEEEgSZBQIKCg0KBQQMAgEFEgSZBQsPCg0KBQQMAgEBEgSZBRAWCg0KBQQMAgEDEgSZBRkaCpoFCgQEDAICEgSmBQIzGosFIFRoZSBqc3R5cGUgb3B0aW9uIGRldGVybWluZXMgdGhlIEphdmFTY3JpcHQgdHlwZSB1c2VkIGZvciB2YWx1ZXMgb2YgdGhlCiBmaWVsZC4gIFRoZSBvcHRpb24gaXMgcGVybWl0dGVkIG9ubHkgZm9yIDY0IGJpdCBpbnRlZ3JhbCBhbmQgZml4ZWQgdHlwZXMKIChpbnQ2NCwgdWludDY0LCBzaW50NjQsIGZpeGVkNjQsIHNmaXhlZDY0KS4gIEEgZmllbGQgd2l0aCBqc3R5cGUgSlNfU1RSSU5HCiBpcyByZXByZXNlbnRlZCBhcyBKYXZhU2NyaXB0IHN0cmluZywgd2hpY2ggYXZvaWRzIGxvc3Mgb2YgcHJlY2lzaW9uIHRoYXQKIGNhbiBoYXBwZW4gd2hlbiBhIGxhcmdlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBhIGZsb2F0aW5nIHBvaW50IEphdmFTY3JpcHQuCiBTcGVjaWZ5aW5nIEpTX05VTUJFUiBmb3IgdGhlIGpzdHlwZSBjYXVzZXMgdGhlIGdlbmVyYXRlZCBKYXZhU2NyaXB0IGNvZGUgdG8KIHVzZSB0aGUgSmF2YVNjcmlwdCAibnVtYmVyIiB0eXBlLiAgVGhlIGJlaGF2aW9yIG9mIHRoZSBkZWZhdWx0IG9wdGlvbgogSlNfTk9STUFMIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4KCiBUaGlzIG9wdGlvbiBpcyBhbiBlbnVtIHRvIHBlcm1pdCBhZGRpdGlvbmFsIHR5cGVzIHRvIGJlIGFkZGVkLCBlLmcuCiBnb29nLm1hdGguSW50ZWdlci4KCg0KBQQMAgIEEgSmBQIKCg0KBQQMAgIGEgSmBQsRCg0KBQQMAgIBEgSmBRIYCg0KBQQMAgIDEgSmBRscCg0KBQQMAgIIEgSmBR0yCg0KBQQMAgIHEgSmBSgxCg4KBAQMBAESBqcFArAFAwoNCgUEDAQBARIEpwUHDQonCgYEDAQBAgASBKkFBBIaFyBVc2UgdGhlIGRlZmF1bHQgdHlwZS4KCg8KBwQMBAECAAESBKkFBA0KDwoHBAwEAQIAAhIEqQUQEQopCgYEDAQBAgESBKwFBBIaGSBVc2UgSmF2YVNjcmlwdCBzdHJpbmdzLgoKDwoHBAwEAQIBARIErAUEDQoPCgcEDAQBAgECEgSsBRARCikKBgQMBAECAhIErwUEEhoZIFVzZSBKYXZhU2NyaXB0IG51bWJlcnMuCgoPCgcEDAQBAgIBEgSvBQQNCg8KBwQMBAECAgISBK8FEBEKmQoKBAQMAgMSBMgFAisaigogU2hvdWxkIHRoaXMgZmllbGQgYmUgcGFyc2VkIGxhemlseT8gIExhenkgYXBwbGllcyBvbmx5IHRvIG1lc3NhZ2UtdHlwZQogZmllbGRzLiAgSXQgbWVhbnMgdGhhdCB3aGVuIHRoZSBvdXRlciBtZXNzYWdlIGlzIGluaXRpYWxseSBwYXJzZWQsIHRoZQogaW5uZXIgbWVzc2FnZSdzIGNvbnRlbnRzIHdpbGwgbm90IGJlIHBhcnNlZCBidXQgaW5zdGVhZCBzdG9yZWQgaW4gZW5jb2RlZAogZm9ybS4gIFRoZSBpbm5lciBtZXNzYWdlIHdpbGwgYWN0dWFsbHkgYmUgcGFyc2VkIHdoZW4gaXQgaXMgZmlyc3QgYWNjZXNzZWQuCgogVGhpcyBpcyBvbmx5IGEgaGludC4gIEltcGxlbWVudGF0aW9ucyBhcmUgZnJlZSB0byBjaG9vc2Ugd2hldGhlciB0byB1c2UKIGVhZ2VyIG9yIGxhenkgcGFyc2luZyByZWdhcmRsZXNzIG9mIHRoZSB2YWx1ZSBvZiB0aGlzIG9wdGlvbi4gIEhvd2V2ZXIsCiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRydWUgc3VnZ2VzdHMgdGhhdCB0aGUgcHJvdG9jb2wgYXV0aG9yIGJlbGlldmVzIHRoYXQKIHVzaW5nIGxhenkgcGFyc2luZyBvbiB0aGlzIGZpZWxkIGlzIHdvcnRoIHRoZSBhZGRpdGlvbmFsIGJvb2trZWVwaW5nCiBvdmVyaGVhZCB0eXBpY2FsbHkgbmVlZGVkIHRvIGltcGxlbWVudCBpdC4KCiBUaGlzIG9wdGlvbiBkb2VzIG5vdCBhZmZlY3QgdGhlIHB1YmxpYyBpbnRlcmZhY2Ugb2YgYW55IGdlbmVyYXRlZCBjb2RlOwogYWxsIG1ldGhvZCBzaWduYXR1cmVzIHJlbWFpbiB0aGUgc2FtZS4gIEZ1cnRoZXJtb3JlLCB0aHJlYWQtc2FmZXR5IG9mIHRoZQogaW50ZXJmYWNlIGlzIG5vdCBhZmZlY3RlZCBieSB0aGlzIG9wdGlvbjsgY29uc3QgbWV0aG9kcyByZW1haW4gc2FmZSB0bwogY2FsbCBmcm9tIG11bHRpcGxlIHRocmVhZHMgY29uY3VycmVudGx5LCB3aGlsZSBub24tY29uc3QgbWV0aG9kcyBjb250aW51ZQogdG8gcmVxdWlyZSBleGNsdXNpdmUgYWNjZXNzLgoKIE5vdGUgdGhhdCBsYXp5IG1lc3NhZ2UgZmllbGRzIGFyZSBzdGlsbCBlYWdlcmx5IHZlcmlmaWVkIHRvIGNoZWNrCiBpbGwtZm9ybWVkIHdpcmVmb3JtYXQgb3IgbWlzc2luZyByZXF1aXJlZCBmaWVsZHMuIENhbGxpbmcgSXNJbml0aWFsaXplZCgpCiBvbiB0aGUgb3V0ZXIgbWVzc2FnZSB3b3VsZCBmYWlsIGlmIHRoZSBpbm5lciBtZXNzYWdlIGhhcyBtaXNzaW5nIHJlcXVpcmVkCiBmaWVsZHMuIEZhaWxlZCB2ZXJp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Q2xpZW50cyBjYW4gZGVmaW5lIGN1c3RvbSBvcHRpb25zIGluIGV4dGVuc2lvbnMgb2YgdGhpcyBtZXNzYWdlLiBTZWUgYWJvdmUuCgoMCgQEEQUAEgSdBw0YCg0KBQQRBQABEgSdBw0RCg0KBQQRBQACEgSdBxUYCosDCgIEEhIGpgcAugcBGvwCIEEgbWVzc2FnZSByZXByZXNlbnRpbmcgYSBvcHRpb24gdGhlIHBhcnNlciBkb2VzIG5vdCByZWNvZ25pemUuIFRoaXMgb25seQogYXBwZWFycyBpbiBvcHRpb25zIHByb3RvcyBjcmVhdGVkIGJ5IHRoZSBjb21waWxlcjo6UGFyc2VyIGNsYXNzLgogRGVzY3JpcHRvclBvb2wgcmVzb2x2ZXMgdGhlc2Ugd2hlbiBidWlsZGluZyBEZXNjcmlwdG9yIG9iamVjdHMuIFRoZXJlZm9yZSwKIG9wdGlvbnMgcHJvdG9zIGluIGRlc2NyaXB0b3Igb2JqZWN0cyAoZS5nLiByZXR1cm5lZCBieSBEZXNjcmlwdG9yOjpvcHRpb25zKCksCiBvciBwcm9kdWNlZCBieSBEZXNjcmlwdG9yOjpDb3B5VG8oKSkgd2lsbCBuZXZlciBoYXZlIFVuaW50ZXJwcmV0ZWRPcHRpb25zCiBpbiB0aGVtLgoKCwoDBBIBEgSmBwgbCssCCgQEEgMAEgasBwKvBwMaugIgVGhlIG5hbWUgb2YgdGhlIHVuaW50ZXJwcmV0ZWQgb3B0aW9uLiAgRWFjaCBzdHJpbmcgcmVwcmVzZW50cyBhIHNlZ21lbnQgaW4KIGEgZG90LXNlcGFyYXRlZCBuYW1lLiAgaXNfZXh0ZW5zaW9uIGlzIHRydWUgaWZmIGEgc2VnbWVudCByZXByZXNlbnRzIGFuCiBleHRlbnNpb24gKGRlbm90ZWQgd2l0aCBwYXJlbnRoZXNlcyBpbiBvcHRpb25zIHNwZWNzIGluIC5wcm90byBmaWxlcykuCiBFLmcuLHsgWyJmb28iLCBmYWxzZV0sIFsiYmFyLmJheiIsIHRydWVdLCBbIm1vbyIsIGZhbHNlXSB9IHJlcHJlc2VudHMKICJmb28uKGJhci5iYXopLm1vbyIuCgoNCgUEEgMAARIErAcKEgoOCgYEEgMAAgASBK0HBCIKDwoH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YyAgICAgZGUgIGYgIGdoaQogV2UgaGF2ZSB0aGUgZm9sbG93aW5nIGxvY2F0aW9uczoKICAgc3BhbiAgIHBhdGggICAgICAgICAgICAgICByZXByZXNlbnRzCiAgIFthLGkpICBbIDQsIDAsIDIsIDAgXSAgICAgVGhlIHdob2xlIGZpZWxkIGRlZmluaXRpb24uCiAgIFthLGIpICBbIDQsIDAsIDIsIDAsIDQgXSAgVGhlIGxhYmVsIChvcHRpb25hbCkuCiAgIFtjLGQpICBbIDQsIDAsIDIsIDAsIDUgXSAgVGhlIHR5cGUgKHN0cmluZykuCiAgIFtlLGYpICBbIDQsIDAsIDIsIDAsIDEgXSAgVGhlIG5hbWUgKGZvbykuCiAgIFtnLGgpICBbIDQsIDAsIDIsIDAsIDMgXSAgVGhlIG51bWJlciAoMSkuCgogTm90ZXM6CiAtIEEgbG9jYXRpb24gbWF5IHJlZmVyIHRvIGEgcmVwZWF0ZWQgZmllbGQgaXRzZWxmIChpLmUuIG5vdCB0byBhbnkKICAgcGFydGljdWxhciBpbmRleCB3aXRoaW4gaXQpLiAgVGhpcyBpcyB1c2VkIHdoZW5ldmVyIGEgc2V0IG9mIGVsZW1lbnRzIGFyZQogICBsb2dpY2FsbHkgZW5jbG9zZWQgaW4gYSBzaW5nbGUgY29kZSBzZWdtZW50LiAgRm9yIGV4YW1wbGUsIGFuIGVudGlyZQogICBleHRlbmQgYmxvY2sgKHBvc3NpYmx5IGNvbnRhaW5pbmcgbXVsdGlwbGUgZXh0ZW5zaW9uIGRlZmluaXRpb25zKSB3aWxsCiAgIGhhdmUgYW4gb3V0ZXIgbG9jYXRpb24gd2hvc2UgcGF0aCByZWZlcnMgdG8gdGhlICJleHRlbnNpb25zIiByZXBlYXRlZAogICBmaWVsZCB3aXRob3V0IGFuIGluZGV4LgogLSBNdWx0aXBsZSBsb2NhdGlvbnMgbWF5IGhhdmUgdGhlIHNhbWUgcGF0aC4gIFRoaXMgaGFwcGVucyB3aGVuIGEgc2luZ2xlCiAgIGxvZ2ljYWwgZGVjbGFyYXRpb24gaXMgc3ByZWFkIG91dCBhY3Jvc3MgbXVsdGlwbGUgcGxhY2VzLiAgVGhlIG1vc3QKICAgb2J2aW91cyBleGFtcGxlIGlzIHRoZSAiZXh0ZW5kIiBibG9jayBhZ2FpbiAtLSB0aGVyZSBtYXkgYmUgbXVsdGlwbGUKICAgZXh0ZW5kIGJsb2NrcyBpbiB0aGUgc2FtZSBzY29wZSwgZWFjaCBvZiB3aGljaCB3aWxsIGhhdmUgdGhlIHNhbWUgcGF0aC4KIC0gQSBsb2NhdGlvbidzIHNwYW4gaXMgbm90IGFsd2F5cyBhIHN1YnNldCBvZiBpdHMgcGFyZW50J3Mgc3Bhbi4gIEZvcgogICBleGFtcGxlLCB0aGUgImV4dGVuZGVlIiBvZiBhbiBleHRlbnNpb24gZGVjbGFyYXRpb24gYXBwZWFycyBhdCB0aGUKICAgYmVnaW5uaW5nIG9mIHRoZSAiZXh0ZW5kIiBibG9jayBhbmQgaXMgc2hhcmVkIGJ5IGFsbCBleHRlbnNpb25zIHdpdGhpbgogICB0aGUgYmxvY2suCiAtIEp1c3QgYmVjYXVzZSBhIGxvY2F0aW9uJ3Mgc3BhbiBpcyBhIHN1YnNldCBvZiBzb21lIG90aGVyIGxvY2F0aW9uJ3Mgc3BhbgogICBkb2VzIG5vdCBtZWFuIHRoYXQgaXQgaXMgYSBkZXNjZW5kYW50LiAgRm9yIGV4YW1wbGUsIGEgImdyb3VwIiBkZWZpbmVzCiAgIGJvdGggYSB0eXBlIGFuZCBhIGZpZWxkIGluIGEgc2luZ2xlIGRlY2xhcmF0aW9uLiAgVGh1cywgdGhlIGxvY2F0aW9ucwogICBjb3JyZXNwb25kaW5nIHRvIHRoZSB0eXBlIGFuZCBmaWVsZCBhbmQgdGhlaXIgY29tcG9uZW50cyB3aWxsIG92ZXJsYXAuCiAtIENvZGUgd2hpY2ggdHJpZXMgdG8gaW50ZXJwcmV0IGxvY2F0aW9ucyBzaG91bGQgcHJvYmFibHkgYmUgZGVzaWduZWQgdG8KICAgaWdub3JlIHRob3NlIHRoYXQgaXQgZG9lc24ndCB1bmRlcnN0YW5kLCBhcyBtb3JlIHR5cGVzIG9mIGxvY2F0aW9ucyBjb3VsZAogICBiZSByZWNvcmRlZCBpbiB0aGUgZnV0dXJlLgoKDQoFBBUCAAQSBJkJAgoKDQoFBBUCAAYSBJkJCxMKDQoFBBUCAAESBJkJFBwKDQoFBBUCAAMSBJkJHyAKDgoEBBUDABIGmgkC7QkDCg0KBQQVAwABEgSaCQoSCooHCgYEFQMAAgASBLIJBCwa+QYgSWRlbnRpZmllcyB3aGljaCBwYXJ0IG9mIHRoZSBGaWxlRGVzY3JpcHRvclByb3RvIHdhcyBkZWZpbmVkIGF0IHRoaXMKIGxvY2F0aW9uLgoKIEVhY2ggZWxlbWVudCBpcyBhIGZpZWxkIG51bWJlciBvciBhbiBpbmRleC4gIFRoZXkgZm9ybSBhIHBhdGggZnJvbQogdGhlIHJvb3QgRmlsZURlc2NyaXB0b3JQcm90byB0byB0aGUgcGxhY2Ugd2hlcmUgdGhlIGRlZmluaXRpb24gYXBwZWFycy4KIEZvciBleGFtcGxlLCB0aGlzIHBhdGg6CiAgIFsgNCwgMywgMiwgNywgMSBdCiByZWZlcnMgdG86CiAgIGZpbGUubWVzc2FnZV90eXBlKDMpICAvLyA0LCAzCiAgICAgICAuZmllbGQoNykgICAgICAgICAvLyAyLCA3CiAgICAgICAubmFtZSgpICAgICAgICAgICAvLyAxCiBUaGlzIGlzIGJlY2F1c2UgRmlsZURlc2NyaXB0b3JQcm90by5tZXNzYWdlX3R5cGUgaGFzIGZpZWxkIG51bWJlciA0OgogICByZXBlYXRlZCBEZXNjcmlwdG9yUHJvdG8gbWVzc2FnZV90eXBlID0gNDsKIGFuZCBEZXNjcmlwdG9yUHJvdG8uZmllbGQgaGFzIGZpZWxkIG51bWJlciAyOgogICByZXBlYXRlZCBGaWVsZERlc2NyaXB0b3JQcm90byBmaWVsZCA9IDI7CiBhbmQgRmllbGREZXNjcmlwdG9yUHJvdG8ubmFtZSBoYXMgZmllbGQgbnVtYmVyIDE6CiAgIG9wdGlvbmFsIHN0cmluZyBuYW1lID0gMTsKCiBUaHVzLCB0aGUgYWJvdmUgcGF0aCBnaXZlcyB0aGUgbG9jYXRpb24gb2YgYSBmaWVsZCBuYW1lLiAgSWYgd2UgcmVtb3ZlZAogdGhlIGxhc3QgZWxlbWVudDoKICAgWyA0LCAzLCAyLCA3IF0KIHRoaXMgcGF0aCByZWZlcnMgdG8gdGhlIHdob2xlIGZpZWxkIGRlY2xhcmF0aW9uIChmcm9tIHRoZSBiZWdpbm5pbmcKIG9mIHRoZSBsYWJlbCB0byB0aGUgdGVybWluYXRpbmcgc2VtaWNvbG9uKS4KCg8KBwQVAwACAAQSBLIJBAwKDwoHBBUDAAIABRIEsgkNEgoPCgcEFQMAAgABEgSyCRMXCg8KBwQVAwACAAMSBLIJGhsKDwoHBBUDAAIACBIEsgkcKwoQCggEFQMAAgAIAhIEsgkdKgrSAgoGBBUDAAIBEgS5CQQsGsECIEFsd2F5cyBoYXMgZXhhY3RseSB0aHJlZSBvciBmb3VyIGVsZW1lbnRzOiBzdGFydCBsaW5lLCBzdGFydCBjb2x1bW4sCiBlbmQgbGluZSAob3B0aW9uYWwsIG90aGVyd2lzZSBhc3N1bWVkIHNhbWUgYXMgc3RhcnQgbGluZSksIGVuZCBjb2x1bW4uCiBUaGVzZSBhcmUgcGFja2VkIGludG8gYSBzaW5nbGUgZmllbGQgZm9yIGVmZmljaWVuY3kuICBOb3RlIHRoYXQgbGluZQogYW5kIGNvbHVtbiBudW1iZXJzIGFyZSB6ZXJvLWJhc2VkIC0tIHR5cGljYWxseSB5b3Ugd2lsbCB3YW50IHRvIGFkZAogMSB0byBlYWNoIGJlZm9yZSBkaXNwbGF5aW5nIHRvIGEgdXNlci4KCg8KBwQVAwACAQQSBLkJBAwKDwoHBBUDAAIBBRIEuQkNEgoPCgcEFQMAAgEBEgS5CRMXCg8KBwQVAwACAQMSBLkJGhsKDwoHBBUDAAIBCBIEuQkcKwoQCggEFQMAAgEIAhIEuQkdKgqlDAoGBBUDAAICEgTqCQQpGpQMIElmIHRoaXMgU291cmNlQ29kZUluZm8gcmVwcmVzZW50cyBhIGNvbXBsZXRlIGRlY2xhcmF0aW9uLCB0aGVzZSBhcmUgYW55CiBjb21tZW50cyBhcHBlYXJpbmcgYmVmb3JlIGFuZCBhZnRlciB0aGUgZGVjbGFyYXRpb24gd2hpY2ggYXBwZWFyIHRvIGJlCiBhdHRhY2hlZCB0byB0aGUgZGVjbGFyYXRpb24uCgogQSBzZXJpZXMgb2YgbGluZSBjb21tZW50cyBhcHBlYXJpbmcgb24gY29uc2VjdXRpdmUgbGluZXMsIHdpdGggbm8gb3RoZXIKIHRva2VucyBhcHBlYXJpbmcgb24gdGhvc2UgbGluZXMsIHdpbGwgYmUgdHJlYXRlZCBhcyBhIHNpbmdsZSBjb21tZW50LgoKIGxlYWRpbmdfZGV0YWNoZWRfY29tbWVudHMgd2lsbCBrZWVwIHBhcmFncmFwaHMgb2YgY29tbWVudHMgdGhhdCBhcHBlYXIKIGJlZm9yZSAoYnV0IG5vdCBjb25uZWN0ZWQgdG8pIHRoZSBjdXJyZW50IGVsZW1lbnQuIEVhY2ggcGFyYWdyYXBoLAogc2VwYXJhdGVkIGJ5IGVtcHR5IGxpbmVzLCB3aWxsIGJlIG9uZSBjb21tZW50IGVsZW1lbnQgaW4gdGhlIHJlcGVhdGVkCiBmaWVsZC4KCiBPbmx5IHRoZSBjb21tZW50IGNvbnRlbnQgaXMgcHJvdmlkZWQ7IGNvbW1lbnQgbWFya2VycyAoZS5nLiAvLykgYXJlCiBzdHJpcHBlZCBvdXQuICBGb3IgYmxvY2sgY29tbWVudHMsIGxlYWRpbmcgd2hpdGVzcGFjZSBhbmQgYW4gYXN0ZXJpc2sKIHdpbGwgYmUgc3RyaXBwZWQgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIGVhY2ggbGluZSBvdGhlciB0aGFuIHRoZSBmaXJzdC4KIE5ld2xpbmVzIGFyZSBpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LgoKIEV4YW1wbGVzOgoKICAgb3B0aW9uYWwgaW50MzIgZm9vID0gMTsgIC8vIENvbW1lbnQgYXR0YWNoZWQgdG8gZm9vLgogICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIGJhci4KICAgb3B0aW9uYWwgaW50MzIgYmFyID0gMjsKCiAgIG9wdGlvbmFsIHN0cmluZyBiYXogPSAzOwogICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIGJhei4KICAgLy8gQW5vdGhlciBsaW5lIGF0dGFjaGVkIHRvIGJhei4KCiAgIC8vIENvbW1lbnQgYXR0YWNoZWQgdG8gbW9vLgogICAvLwogICAvLyBBbm90aGVyIGxpbmUgYXR0YWNoZWQgdG8gbW9vLgogICBvcHRpb25hbCBkb3VibGUgbW9vID0gNDsKCiAgIC8vIERldGFjaGVkIGNvbW1lbnQgZm9yIGNvcmdlLiBUaGlzIGlzIG5vdCBsZWFkaW5nIG9yIHRyYWlsaW5nIGNvbW1lbnRzCiAgIC8v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RUQQABIPCgtBTkVOVU1fVkFMMRABEhYKC0FORU5VTV9WQUwyEAIaBbCG+gV7GgjF9skd6/z//zoQCADg6cIdyP//////////AUIZCgdBbk9uZW9mEg74rMMdnf//////////ASIYChZDdXN0b21PcHRpb25Gb29SZXF1ZXN0IhkKF0N1c3RvbU9wdGlvbkZvb1Jlc3BvbnNlIh4KHEN1c3RvbU9wdGlvbkZvb0NsaWVudE1lc3NhZ2UiHgocQ3VzdG9tT3B0aW9uRm9vU2VydmVyTWVzc2FnZSKPAQoaRHVtbXlNZXNzYWdlQ29udGFpbmluZ0VudW0icQoMVGVzdEVudW1UeXBlEiAKHFRFU1RfT1BUSU9OX0VOVU1fVU5TUEVDSUZJRUQQABIaChZURVNUX09QVElPTl9FTlVNX1RZUEUxEBYSIwoWVEVTVF9PUFRJT05fRU5VTV9UWVBFMhDp//////////8BIiEKH0R1bW15TWVzc2FnZUludmFsaWRBc09wdGlvblR5cGUiigEKHEN1c3RvbU9wdGlvbk1pbkludGVnZXJWYWx1ZXM6apnWqB0AAAAAAAAAgK2Nrx0AAACAke6vHQAAAAAAAAAAnfWvHQAAAAD4l7Ad////////////AYDEsB3/////D/j1sB0AgJOyHQCwvLIdgICAgICAgICAAejGsh2AgICA+P////8B0N6yHQAikQEKHEN1c3RvbU9wdGlvbk1heEludGVnZXJWYWx1ZXM6cZnWqB3/////////f62Nrx3///9/ke6vHf//////////nfWvHf/////4l7Ad/v//////////AYDEsB3+////D/j1sB3///////////8BgJOyHf////8PsLyyHf//////////f+jGsh3/////B9Desh0BIm4KF0N1c3RvbU9wdGlvbk90aGVyVmFsdWVzOlOI2aId6f//////////AbLZoh0LSGVsbG8AV29ybGSq3KIdDkhlbGxvLCAiV29ybGQi6dyiHftZjELKwPM/9d+jHeeHRUHoxrIdnP//////////ASI0ChxTZXR0aW5nUmVhbHNGcm9tUG9zaXRpdmVJbnRzOhTp3KIdAAAAAABAY0D136MdAABAQSI0ChxTZXR0aW5nUmVhbHNGcm9tTmVnYXRpdmVJbnRzOhTp3KIdAAAAAABAY8D136MdAABAwSJiChJDb21wbGV4T3B0aW9uVHlwZTESEAoDZm9vGAEgASgFUgNmb28SEgoEZm9vMhgCIAEoBVIEZm9vMhISCgRmb28zGAMgASgFUgRmb28zEhIKBGZvbzQYBCADKAVSBGZvbzQirQMKEkNvbXBsZXhPcHRpb25UeXBlMhI3CgNiYXIYASABKAsyJS5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTFSA2JhchIQCgNiYXoYAiABKAVSA2JhehJMCgRmcmVkGAMgASgLMjgucHJvdG9idWZfdW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUyLkNvbXBsZXhPcHRpb25UeXBlNFIEZnJlZBJQCgZiYXJuZXkYBCADKAsyOC5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTIuQ29tcGxleE9wdGlvblR5cGU0UgZiYXJuZXkaqwEKEkNvbXBsZXhPcHRpb25UeXBlNBIUCgV3YWxkbxgBIAEoBVIFd2FsZG8yfwoMY29tcGxleF9vcHQ0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGIr10QMgASgLMjgucHJvdG9idWZfdW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUyLkNvbXBsZXhPcHRpb25UeXBlNFILY29tcGxleE9wdDQiJgoSQ29tcGxleE9wdGlvblR5cGUzEhAKA3F1eBgBIAEoBVIDcXV4Ik4KFVZhcmlvdXNDb21wbGV4T3B0aW9uczo10qiPHQMIsw/63pAdAggJqv2QHRYKAwjnBRDbBxoDCMECIgIIZSIDCNQBouKVHQYIKiICY1giVwoJQWdncmVnYXRlEgwKAWkYASABKAVSAWkSDAoBcxgCIAEoCVIBcxIuCgNzdWIYAyABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSA3N1YiJkChBBZ2dyZWdhdGVNZXNzYWdlEjQKCWZpZWxkbmFtZRgBIAEoBUIW8qGHOxESD0ZpZWxkQW5ub3RhdGlvblIJZmllbGRuYW1lOhrC0YY7FQhlEhFNZXNzYWdlQW5ub3RhdGlvbiKkAQoQTmVzdGVkT3B0aW9uVHlwZRpICg1OZXN0ZWRNZXNzYWdlEi8KDG5lc3RlZF9maWVsZBgBIAEoBUIMweDDHeoDAAAAAAAAUgtuZXN0ZWRGaWVsZDoG4OnCHekHIkYKCk5lc3RlZEVudW0SDwoLVU5TUEVDSUZJRUQQABIdChFORVNURURfRU5VTV9WQUxVRRABGgawhvoF7AcaCMX2yR3rAwAAKlIKCk1ldGhvZE9wdDESGgoWTUVUSE9ET1BUMV9VTlNQRUNJRklFRBAAEhMKD01FVEhPRE9QVDFfVkFMMRABEhMKD01FVEhPRE9QVDFfVkFMMhACKl4KDUFnZ3JlZ2F0ZUVudW0SDwoLVU5TUEVDSUZJRUQQABIlCgVWQUxVRRABGhrK/Ik7FRITRW51bVZhbHVlQW5ub3RhdGlvbhoVkpWIOxASDkVudW1Bbm5vdGF0aW9uMo4BChxUZXN0U2VydmljZVdpdGhDdXN0b21PcHRpb25zEmMKA0ZvbxIpLnByb3RvYnVmX3VuaXR0ZXN0LkN1c3RvbU9wdGlvbkZvb1JlcXVlc3QaKi5wcm90b2J1Zl91bml0dGVzdC5DdXN0b21PcHRpb25Gb29SZXNwb25zZSIF4PqMHgIaCZCyix7T24DLSTKZAQoQQWdncmVnYXRlU2VydmljZRJrCgZNZXRob2QSIy5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVNZXNzYWdlGiMucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlTWVzc2FnZSIXysiWOxISEE1ldGhvZEFubm90YXRpb24aGMr7jjsTEhFTZXJ2aWNlQW5ub3RhdGlvbjo8CglmaWxlX29wdDESHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYjp3YAyABKARSCGZpbGVPcHQxOkUKDG1lc3NhZ2Vfb3B0MRIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxicrdgDIAEoBVILbWVzc2FnZU9wdDE6PwoKZmllbGRfb3B0MRIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMYiLzYAyABKAZSCWZpZWxkT3B0MTo/CgpvbmVvZl9vcHQxEh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9ucxjPtdgDIAEoBVIJb25lb2ZPcHQxOjwKCWVudW1fb3B0MRIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9ucxjontkDIAEoD1IIZW51bU9wdDE6SwoPZW51bV92YWx1ZV9vcHQxEiEuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZU9wdGlvbnMY5qBfIAEoBVINZW51bVZhbHVlT3B0MTpFCgxzZXJ2aWNlX29wdDESHy5nb29nbGUucHJvdG9idWYuU2VydmljZU9wdGlvbnMYorbhAyABKBJSC3NlcnZpY2VPcHQxOmEKC21ldGhvZF9vcHQxEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYrM/hAyABKA4yHS5wcm90b2J1Zl91bml0dGVzdC5NZXRob2RPcHQxUgptZXRob2RPcHQxOj0KCGJvb2xfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGOqr1gMgASgIUgdib29sT3B0Oj8KCWludDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjtqNYDIAEoBVIIaW50MzJPcHQ6PwoJaW50NjRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGMan1gMgASgDUghpbnQ2NE9wdDpBCgp1aW50MzJfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGLCi1gMgASgNUgl1aW50MzJPcHQ6QQoKdWludDY0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjfjtYDIAEoBFIJdWludDY0T3B0OkEKCnNpbnQzMl9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYwIjWAyABKBFSCXNpbnQzMk9wdDpBCgpzaW50NjRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGP+C1gMgASgSUglzaW50NjRPcHQ6QwoLZml4ZWQzMl9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY0/7VAyABKAdSCmZpeGVkMzJPcHQ6QwoLZml4ZWQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY4v3VAyABKAZSCmZpeGVkNjRPcHQ6RQoMc2ZpeGVkMzJfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGNXx1QMgASgPUgtzZml4ZWQzMk9wdDpFCgxzZml4ZWQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY44rVAyABKBBSC3NmaXhlZDY0T3B0Oj8KCWZsb2F0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxj+u9QDIAEoAlIIZmxvYXRPcHQ6QQoKZG91YmxlX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjNq9QDIAEoAVIJZG91YmxlT3B0OkEKCnN0cmluZ19vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYxavUAyABKAlSCXN0cmluZ09wdDo/CglieXRlc19vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYlqvUAyABKAxSCGJ5dGVzT3B0OnkKCGVudW1fb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGJGr1AMgASgOMjoucHJvdG9idWZfdW5pdHRlc3QuRHVtbXlNZXNzYWdlQ29udGFpbmluZ0VudW0uVGVzdEVudW1UeXBlUgdlbnVtT3B0OoABChBtZXNzYWdlX3R5cGVfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGK/y0wMgASgLMjIucHJvdG9idWZfdW5pdHRlc3QuRHVtbXlNZXNzYWdlSW52YWxpZEFzT3B0aW9uVHlwZVIObWVzc2FnZVR5cGVPcHQ6bAoMY29tcGxleF9vcHQxEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGKTc0gMgASgLMiUucHJvdG9idWZfdW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUxUgtjb21wbGV4T3B0MTpsCgxjb21wbGV4X29wdDISHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY1Y/SAyABKAsyJS5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTJSC2NvbXBsZXhPcHQyOmwKDGNvbXBsZXhfb3B0MxIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjvi9IDIAEoCzIlLnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlM1ILY29tcGxleE9wdDM6VwoHZmlsZW9wdBIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxjP3bAHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIHZmlsZW9wdDpYCgZtc2dvcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYmOqwByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSBm1zZ29wdDpaCghmaWVsZG9wdBIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMYnvSwByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSCGZpZWxkb3B0OlcKB2VudW1vcHQSHC5nb29nbGUucHJvdG9idWYuRW51bU9wdGlvbnMY0oKxByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSB2VudW1vcHQ6YgoKZW51bXZhbG9wdBIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zGMmfsQcgASgLMhwucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlUgplbnVtdmFsb3B0OmAKCnNlcnZpY2VvcHQSHy5nb29nbGUucHJvdG9idWYuU2VydmljZU9wdGlvbnMYue+xByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSCnNlcnZpY2VvcHQ6XQoJbWV0aG9kb3B0Eh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYiemyByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSCW1ldGhvZG9wdEJVqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3Pw6MEd6q3A5ST67IU7KghkEg5GaWxlQW5ub3RhdGlvbhoWEhROZXN0ZWRGaWxlQW5ub3RhdGlvbkrKRgoHEgUUANACAQq+BgoBDBIDFAASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjLTASBBdXRob3I6IGJlbmp5QGdvb2dsZS5jb20gKEJlbmp5IFdlaW5iZXJnZXIpCiAgQmFzZWQgb24gb3JpZ2luYWwgUHJvdG9jb2wgQnVmZmVycyBkZXNpZ24gYnkKICBTYW5qYXkgR2hlbWF3YXQsIEplZmYgRGVhbiwgYW5kIG90aGVycy4KCiBBIHByb3RvIGZpbGUgdXNlZCB0byB0ZXN0IHRoZSAiY3VzdG9tIG9wdGlvbnMiIGZlYXR1cmUgb2YgZ29vZ2xlLnByb3RvYnVmLgoy0QIgVGhpcyBmaWxlIGlzIGJhc2VkIG9uIHVuaXR0ZXN0X2N1c3RvbV9vcHRpb25zLnByb3RvIGluCiBzcmMvZ29vZ2xlL3Byb3RvYnVmLCBidXQgaXMgbW9kaWZpZWQgZm9yIHByb3RvMy4gSXQgY291bGQKIHBvdGVudGlhbGx5IGJlIG1vdmVkIGludG8gc3JjL2dvb2dsZS9wcm90b2J1ZiwgYnV0IGN1cnJlbnRseSBDIwogaXMgdGhlIG9ubHkgbGFuZ3VhZ2UgdGhhdCByZWFsbHkgbmVlZHMgaXQsIGFzIHdlIGRvbid0IHN1cHBvcnQKIHByb3RvMiBzeW50YXguIEl0J3MgY3V0IGRvd24gc2lnbmlmaWNhbnRseSBhcyBwcm90bzMgb25seSBzdXBwb3J0cwogZXh0ZW5zaW9ucyBmb3Igb3B0aW9ucy4KCggKAQgSAxcAIAo1CgUIjp3YAxIDFwAgGicgQSBjdXN0b20gZmlsZSBvcHRpb24gKGRlZmluZWQgYmVsb3cpLgoKCQoCAwASAxkAKgqgAQoBAhIDHQAaGpUBIFdlIGRvbid0IHB1dCB0aGlzIGluIGEgcGFja2FnZSB3aXRoaW4gcHJvdG8yIGJlY2F1c2Ugd2UgbmVlZCB0byBt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Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yIiMKE1B1YmxpY0ltcG9ydE1lc3NhZ2USDAoBZRgBIAEoBVIBZUIkqgIhR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3MuUHJvdG8ySsUDCgYSBAkAEQEKvgIKAQwSAwkAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyKCBBdXRob3I6IGxpdWppc2lAZ29vZ2xlLmNvbSAoUGhlcmwgTGl1KQoKCAoBAhIDCwAoCggKAQgSAw0APgoJCgIIJRIDDQA+CgoKAgQAEgQPABEBCgoKAwQAARIDDwgbCgsKBAQAAgASAxACFwoMCgUEAAIABBIDEAIKCgwKBQQAAgAFEgMQCxAKDAoFBAACAAESAxAREgoMCgUEAAIAAxIDEBUWCsEMCiNjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydC5wcm90bxIfcHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMhoqY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHVibGljLnByb3RvIh0KDUltcG9ydE1lc3NhZ2USDAoBZBgBIAEoBVIBZCo8CgpJbXBvcnRFbnVtEg4KCklNUE9SVF9GT08QBxIOCgpJTVBPUlRfQkFSEAgSDgoKSU1QT1JUX0JBWhAJKjEKEEltcG9ydEVudW1Gb3JNYXASCwoHVU5LTk9XThAAEgcKA0ZPTxABEgcKA0JBUhACQilIAfgBAaoCIUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLlByb3RvMkqPCgoGEgQNACsBCuADCgEMEgMNABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMskBIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIEEgcHJvdG8gZmlsZSB3aGljaCBpcyBpbXBvcnRlZCBieSB1bml0dGVzdC5wcm90byB0byB0ZXN0IGltcG9ydGluZy4KCvUBCgECEgMTACga6gEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBuYW1lc3BhY2UuCiBJbiB0ZXN0X3V0aWwuaCB3ZSBkbwogInVzaW5nIG5hbWVzcGFjZSB1bml0dGVzdF9pbXBvcnQgPSBwcm90b2J1Zl91bml0dGVzdF9pbXBvcnQiLgoKCAoBCBIDFQAcCgkKAggJEgMVABwKCAoBCBIDFgAfCgkKAggfEgMWAB8KCAoBCBIDFwA+CgkKAgglEgMXAD4KHwoCAwASAxoAOxoUIFRlc3QgcHVibGljIGltcG9ydAoKCQoCCgASAxoHDQoKCgIEABIEHAAeAQoKCgMEAAESAxwIFQoLCgQEAAIAEgMdAhcKDAoFBAACAAQSAx0CCgoMCgUEAAIABRIDHQsQCgwKBQQAAgABEgMdERIKDAoFBAACAAMSAx0VFgoKCgIFABIEIAAkAQoKCgMFAAESAyAFDwoLCgQFAAIAEgMhAhEKDAoFBQACAAESAyECDAoMCgUFAAIAAhIDIQ8QCgsKBAUAAgESAyICEQoMCgUFAAIBARIDIgIMCgwKBQUAAgECEgMiDxAKCwoEBQACAhIDIwIRCgwKBQUAAgIBEgMjAgwKDAoFBQACAgISAyMPEApICgIFARIEJwArARo8IFRvIHVzZSBhbiBlbnVtIGluIGEgbWFwLCBpdCBtdXN0IGhhcyB0aGUgZmlyc3QgdmFsdWUgYXMgMC4KCgoKAwUBARIDJwUVCgsKBAUBAgASAygCDgoMCgUFAQIAARIDKAIJCgwKBQUBAgACEgMoDA0KCwoEBQECARIDKQIKCgwKBQUBAgEBEgMpAgUKDAoFBQECAQISAykICQoLCgQFAQICEgMqAgoKDAoFBQECAgESAyoCBQoMCgUFAQICAhIDKggJUAAKoscFChxjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0LnByb3RvEhhwcm90b2J1Zl91bml0dGVzdF9wcm90bzIaI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0LnByb3RvIo0kCgxUZXN0QWxsVHlwZXMSJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSWgoNb3B0aW9uYWxncm91cBgQIAEoCjI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuT3B0aW9uYWxHcm91cFINb3B0aW9uYWxncm91cBJsChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlEmIKGG9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduTWVzc2FnZVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJmChdvcHRpb25hbF9pbXBvcnRfbWVzc2FnZRgUIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0TWVzc2FnZVIVb3B0aW9uYWxJbXBvcnRNZXNzYWdlEmMKFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SWQoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtUhNvcHRpb25hbEZvcmVpZ25FbnVtEl0KFG9wdGlvbmFsX2ltcG9ydF9lbnVtGBcgASgOMisucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRFbnVtUhJvcHRpb25hbEltcG9ydEVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEnkKHm9wdGlvbmFsX3B1YmxpY19pbXBvcnRfbWVzc2FnZRgaIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuUHVibGljSW1wb3J0TWVzc2FnZVIbb3B0aW9uYWxQdWJsaWNJbXBvcnRNZXNzYWdlEmwKFW9wdGlvbmFsX2xhenlfbWVzc2FnZRgbIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZUICKAFSE29wdGlvbmFsTGF6eU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSWgoNcmVwZWF0ZWRncm91cBguIAMoCjI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuUmVwZWF0ZWRHcm91cFINcmVwZWF0ZWRncm91cBJsChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEmIKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzIoLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduTWVzc2FnZVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJmChdyZXBlYXRlZF9pbXBvcnRfbWVzc2FnZRgyIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0TWVzc2FnZVIVcmVwZWF0ZWRJbXBvcnRNZXNzYWdlEmMKFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SWQoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtUhNyZXBlYXRlZEZvcmVpZ25FbnVtEl0KFHJlcGVhdGVkX2ltcG9ydF9lbnVtGDUgAygOMisucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRFbnVtUhJyZXBlYXRlZEltcG9ydEVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEmgKFXJlcGVhdGVkX2xhenlfbWVzc2FnZRg5IAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVITcmVwZWF0ZWRMYXp5TWVzc2FnZRInCg1kZWZhdWx0X2ludDMyGD0gASgFOgI0MVIMZGVmYXVsdEludDMyEicKDWRlZmF1bHRfaW50NjQYPiABKAM6AjQyUgxkZWZhdWx0SW50NjQSKQoOZGVmYXVsdF91aW50MzIYPyABKA06AjQzUg1kZWZhdWx0VWludDMyEikKDmRlZmF1bHRfdWludDY0GEAgASgEOgI0NFINZGVmYXVsdFVpbnQ2NBIqCg5kZWZhdWx0X3NpbnQzMhhBIAEoEToDLTQ1Ug1kZWZhdWx0U2ludDMyEikKDmRlZmF1bHRfc2ludDY0GEIgASgSOgI0NlINZGVmYXVsdFNpbnQ2NBIrCg9kZWZhdWx0X2ZpeGVkMzIYQyABKAc6AjQ3Ug5kZWZhdWx0Rml4ZWQzMhIrCg9kZWZhdWx0X2ZpeGVkNjQYRCABKAY6AjQ4Ug5kZWZhdWx0Rml4ZWQ2NBItChBkZWZhdWx0X3NmaXhlZDMyGEUgASgPOgI0OVIPZGVmYXVsdFNmaXhlZDMyEi4KEGRlZmF1bHRfc2ZpeGVkNjQYRiABKBA6Ay01MFIPZGVmYXVsdFNmaXhlZDY0EikKDWRlZmF1bHRfZmxvYXQYRyABKAI6BDUxLjVSDGRlZmF1bHRGbG9hdBIsCg5kZWZhdWx0X2RvdWJsZRhIIAEoAToFNTIwMDBSDWRlZmF1bHREb3VibGUSJwoMZGVmYXVsdF9ib29sGEkgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIsCg5kZWZhdWx0X3N0cmluZxhKIAEoCToFaGVsbG9SDWRlZmF1bHRTdHJpbmcSKgoNZGVmYXVsdF9ieXRlcxhLIAEoDDoFd29ybGRSDGRlZmF1bHRCeXRlcxJmChNkZWZhdWx0X25lc3RlZF9lbnVtGFEgASgOMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtOgNCQVJSEWRlZmF1bHROZXN0ZWRFbnVtEmQKFGRlZmF1bHRfZm9yZWlnbl9lbnVtGFIgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtOgtGT1JFSUdOX0JBUlISZGVmYXVsdEZvcmVpZ25FbnVtEmcKE2RlZmF1bHRfaW1wb3J0X2VudW0YUyABKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW06CklNUE9SVF9CQVJSEWRlZmF1bHRJbXBvcnRFbnVtEjkKFGRlZmF1bHRfc3RyaW5nX3BpZWNlGFQgASgJOgNhYmNCAggCUhJkZWZhdWx0U3RyaW5nUGllY2USKgoMZGVmYXVsdF9jb3JkGFUgASgJOgMxMjNCAggBUgtkZWZhdWx0Q29yZBIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISaAoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyNC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzGh8KDU5lc3RlZE1lc3NhZ2USDgoCYmIYASABKAVSAmJiGh0KDU9wdGlvbmFsR3JvdXASDAoBYRgRIAEoBVIBYRodCg1SZXBlYXRlZEdyb3VwEgwKAWEYLyABKAVSAWEiOQoKTmVzdGVkRW51bRIHCgNGT08QARIHCgNCQVIQAhIHCgNCQVoQAxIQCgNORUcQ////////////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//wEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IMdGVzdEFsbFR5cGVzOoQBCiV0ZXN0X2V4dGVuc2lvbl9pbnNpZGVfdGFibGVfZXh0ZW5zaW9uEjIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RFeHRlbnNpb25JbnNpZGVUYWJsZRgFIAEoBVIhdGVzdEV4dGVuc2lvbkluc2lkZVRhYmxlRXh0ZW5zaW9uQjJIAYABAYgBAZABAfgBAaoCIUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLlByb3RvMkrJrAMKBxIFDwDGCAEK6gMKAQwSAw8AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoy0wEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdlIHdpbGwgdXNlIGZvciB1bml0IHRlc3RpbmcuCgogTElOVDogQUxMT1dfR1JPVVBTLCBMRUdBQ1lfTkFNRVMKCggKAQgSAxMAIgqAAQoCCBASAxMAIhpnIFNvbWUgZ2VuZXJpY19zZXJ2aWNlcyBvcHRpb24ocykgYWRkZWQgYXV0b21hdGljYWxseS4KIFNlZTogIGh0dHA6Ly9nby9wcm90bzItZ2VuZXJpYy1zZXJ2aWNlcy1kZWZhdWx0CiIMIGF1dG8tYWRkZWQKCggKAQgSAxQAJAoXCgIIERIDFAAkIgwgYXV0by1hZGRlZAoKCAoBCBIDFQAiChcKAggSEgMVACIiDCBhdXRvLWFkZGVkCgoICgEIEgMWAB8KCQoCCB8SAxYAHwoJCgIDABIDGAAtCuYBCgECEgMdACEa2wEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBuYW1lc3BhY2UuCiBJbiB0ZXN0X3V0aWwuaCB3ZSBkbyAidXNpbmcgbmFtZXNwYWNlIHVuaXR0ZXN0ID0gcHJvdG9idWZfdW5pdHRlc3QiLgoKCAoBCBIDIgAcCuIBCgIICRIDIgAcGtYBIFByb3RvcyBvcHRpbWl6ZWQgZm9yIFNQRUVEIHVzZSBhIHN0cmljdCBzdXBlcnNldCBvZiB0aGUgZ2VuZXJhdGVkIGNvZGUKIG9mIGVxdWl2YWxlbnQgb25lcyBvcHRpbWl6ZWQgZm9yIENPREVfU0laRSwgc28gd2Ugc2hvdWxkIG9wdGltaXplIGFsbCBvdXIKIHRlc3RzIGZvciBzcGVlZCB1bmxlc3MgZXhwbGljaXRseSB0ZXN0aW5nIGNvZGUgc2l6ZSBvcHRpbWl6YXRpb24uCgoICgEIEgMkAD4KCQoCCCUSAyQAPgpcCgIEABIFKACiAQEaTyBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKCgoDBAABEgMoCBQKDAoEBAADABIEKQIuAwoMCgUEAAMAARIDKQoXCuMBCgYEAAMAAgASAy0EGhrTASBUaGUgZmllbGQgbmFtZSAiYiIgZmFpbHMgdG8gY29tcGlsZSBpbiBwcm90bzEgYmVjYXVzZSBpdCBjb25mbGljdHMgd2l0aAogYSBsb2NhbCB2YXJpYWJsZSBuYW1lZCAiYiIgaW4gb25lIG9mIHRoZSBnZW5lcmF0ZWQgbWV0aG9kcy4gIERvaC4KIFRoaXMgZmlsZSBuZWVkcyB0byBjb21waWxlIGluIHByb3RvMSB0byB0ZXN0IGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5LgoKDgoHBAADAAIABBIDLQQMCg4KBwQAAwACAAUSAy0NEgoOCgcEAAMAAgABEgMtExUKDgoHBAADAAIAAxIDLRgZCgwKBAQABAASBDACNQMKDAoFBAAEAAESAzAHEQoNCgYEAAQAAgASAzEEDAoOCgcEAAQAAgABEgMxBAcKDgoHBAAEAAIAAhIDMQoLCg0KBgQABAACARIDMgQMCg4KBwQABAACAQESAzIEBwoOCgcEAAQAAgECEgMyCgsKDQoGBAAEAAICEgMzBAwKDgoHBAAEAAICARIDMwQHCg4KBwQABAACAgISAzMKCwooCgYEAAQAAgMSAzQEDSIZIEludGVudGlvbmFsbHkgbmVnYXRpdmUuCgoOCgcEAAQAAgMBEgM0BAcKDgoHBAAEAAIDAhIDNAoMChcKBAQAAgASAzgCJBoKIFNpbmd1bGFyCgoMCgUEAAIABBIDOAIKCgwKBQQAAgAFEgM4CxAKDAoFBAACAAESAzgRHwoMCgUEAAIAAxIDOCIjCgsKBAQAAgESAzkCJAoMCgUEAAIBBBIDOQIKCgwKBQQAAgEFEgM5CxAKDAoFBAACAQESAzkRHwoMCgUEAAIBAxIDOSIjCgsKBAQAAgISAzoCJgoMCgUEAAICBBIDOgIKCgwKBQQAAgIFEgM6CxEKDAoFBAACAgESAzoSIQoMCgUEAAICAxIDOiQlCgsKBAQAAgMSAzsCJgoMCgUEAAIDBBIDOwIKCgwKBQQAAgMFEgM7CxEKDAoFBAACAwESAzsSIQoMCgUEAAIDAxIDOyQlCgsKBAQAAgQSAzwCJgoMCgUEAAIEBBIDPAIKCgwKBQQAAgQFEgM8CxEKDAoFBAACBAESAzwSIQoMCgUEAAIEAxIDPCQlCgsKBAQAAgUSAz0CJgoMCgUEAAIFBBIDPQIKCgwKBQQAAgUFEgM9CxEKDAoFBAACBQESAz0SIQoMCgUEAAIFAxIDPSQlCgsKBAQAAgYSAz4CKAoMCgUEAAIGBBIDPgIKCgwKBQQAAgYFEgM+CxIKDAoFBAACBgESAz4TIwoMCgUEAAIGAxIDPiYnCgsKBAQAAgcSAz8CKAoMCgUEAAIHBBIDPwIKCgwKBQQAAgcFEgM/CxIKDAoFBAACBwESAz8TIwoMCgUEAAIHAxIDPyYnCgsKBAQAAggSA0ACKgoMCgUEAAIIBBIDQAIKCgwKBQQAAggFEgNACxMKDAoFBAACCAESA0AUJQoMCgUEAAIIAxIDQCgpCgsKBAQAAgkSA0ECKwoMCgUEAAIJBBIDQQIKCgwKBQQAAgkFEgNBCxMKDAoFBAACCQESA0EUJQoMCgUEAAIJAxIDQSgqCgsKBAQAAgoSA0ICJQoMCgUEAAIKBBIDQgIKCgwKBQQAAgoFEgNCCxAKDAoFBAACCgESA0IRHwoMCgUEAAIKAxIDQiIkCgsKBAQAAgsSA0MCJwoMCgUEAAILBBIDQwIKCgwKBQQAAgsFEgNDCxEKDAoFBAACCwESA0MSIQoMCgUEAAILAxIDQyQmCgsKBAQAAgwSA0QCIwoMCgUEAAIMBBIDRAIKCgwKBQQAAgwFEgNECw8KDAoFBAACDAESA0QQHQoMCgUEAAIMAxIDRCAiCgsKBAQAAg0SA0UCJwoMCgUEAAINBBIDRQIKCgwKBQQAAg0FEgNFCxEKDAoFBAACDQESA0USIQoMCgUEAAINAxIDRSQmCgsKBAQAAg4SA0YCJQoMCgUEAAIOBBIDRgIKCgwKBQQAAg4FEgNGCxAKDAoFBAACDgESA0YRHwoMCgUEAAIOAxIDRiIkCgwKBAQAAg8SBEgCSgMKDAoFBAACDwQSA0gCCgoMCgUEAAIPBRIDSAsQCgwKBQQAAg8BEgNIER4KDAoFBAACDwMSA0ghIwoMCgQEAAMBEgRIAkoDCgwKBQQAAwEBEgNIER4KDAoFBAACDwYSA0gRHgoNCgYEAAMBAgASA0kEGgoOCgcEAAMBAgAEEgNJBAwKDgoHBAADAQIABRIDSQ0SCg4KBwQAAwECAAESA0kTFAoOCgcEAAMBAgADEgNJFxkKCwoEBAACEBIDTAI2CgwKBQQAAhAEEgNMAgoKDAoFBAACEAYSA0wLGAoMCgUEAAIQARIDTBkwCgwKBQQAAhADEgNMMzUKCwoEBAACERIDTQI4CgwKBQQAAhEEEgNNAgoKDAoFBAACEQYSA00LGQoMCgUEAAIRARIDTRoyCgwKBQQAAhEDEgNNNTcKDAoEBAACEhIETgJPIwoMCgUEAAISBBIDTgIKCgwKBQQAAhIGEgNOCzgKDAoFBAACEgESA08GHQoMCgUEAAISAxIDTyAiCgsKBAQAAhMSA1ECMAoMCgUEAAITBBIDUQIKCgwKBQQAAhMGEgNRCxUKDAoFBAACEwESA1EWKgoMCgUEAAITAxIDUS0vCgsKBAQAAhQSA1ICMgoMCgUEAAIUBBIDUgIKCgwKBQQAAhQGEgNSCxYKDAoFBAACFAESA1IXLAoMCgUEAAIUAxIDUi8xCgsKBAQAAhUSA1MCUAoMCgUEAAIVBBIDUwIKCgwKBQQAAhUGEgNTCzUKDAoFBAACFQESA1M2SgoMCgUEAAIVAxIDU01PCgsKBAQAAhYSA1UCRAoMCgUEAAIWBBIDVQIKCgwKBQQAAhYFEgNVCxEKDAoFBAACFgESA1USJwoMCgUEAAIWAxIDVSosCgwKBQQAAhYIEgNVLUMKDQoGBAACFggBEgNVLkIKCwoEBAACFxIDVgI0CgwKBQQAAhcEEgNWAgoKDAoFBAACFwUSA1YLEQoMCgUEAAIXARIDVhIfCgwKBQQAAhcDEgNWIiQKDAoFBAACFwgSA1YlMwoNCgYEAAIXCAESA1YmMgo3CgQEAAIYEgRZAloqGikgRGVmaW5lZCBpbiB1bml0dGVzdF9pbXBvcnRfcHVibGljLnByb3RvCgoMCgUEAAIYBBIDWQIKCgwKBQQAAhgGEgNZCz4KDAoFBAACGAESA1oGJAoMCgUEAAIYAxIDWicpCgsKBAQAAhkSA1wCQgoMCgUEAAIZBBIDXAIKCgwKBQQAAhkGEgNcCxgKDAoFBAACGQESA1wZLgoMCgUEAAIZAxIDXDEzCgwKBQQAAhkIEgNcNEEKDQoGBAACGQgFEgNcNUAKFwoEBAACGhIDXwIlGgogUmVwZWF0ZWQKCgwKBQQAAhoEEgNfAgoKDAoFBAACGgUSA18LEAoMCgUEAAIaARIDXxEfCgwKBQQAAhoDEgNfIiQKCwoEBAACGxIDYAIlCgwKBQQAAhsEEgNgAgoKDAoFBAACGwUSA2ALEAoMCgUEAAIbARIDYBEfCgwKBQQAAhsDEgNgIiQKCwoEBAACHBIDYQInCgwKBQQAAhwEEgNhAgoKDAoFBAACHAUSA2ELEQoMCgUEAAIcARIDYRIhCgwKBQQAAhwDEgNhJCYKCwoEBAACHRIDYgInCgwKBQQAAh0EEgNiAgoKDAoFBAACHQUSA2ILEQoMCgUEAAIdARIDYhIhCgwKBQQAAh0DEgNiJCYKCwoEBAACHhIDYwInCgwKBQQAAh4EEgNjAgoKDAoFBAACHgUSA2MLEQoMCgUEAAIeARIDYxIhCgwKBQQAAh4DEgNjJCYKCwoEBAACHxIDZAInCgwKBQQAAh8EEgNkAgoKDAoFBAACHwUSA2QLEQoMCgUEAAIfARIDZBIhCgwKBQQAAh8DEgNkJCYKCwoEBAACIBIDZQIpCgwKBQQAAiAEEgNlAgoKDAoFBAACIAUSA2ULEgoMCgUEAAIgARIDZRMjCgwKBQQAAiADEgNlJigKCwoEBAACIRIDZgIpCgwKBQQAAiEEEgNmAgoKDAoFBAACIQUSA2YLEgoMCgUEAAIhARIDZhMjCgwKBQQAAiEDEgNmJigKCwoEBAACIhIDZwIrCgwKBQQAAiIEEgNnAgoKDAoFBAACIgUSA2cLEwoMCgUEAAIiARIDZxQlCgwKBQQAAiIDEgNnKCoKCwoEBAACIxIDaAIrCgwKBQQAAiMEEgNoAgoKDAoFBAACIwUSA2gLEwoMCgUEAAIjARIDaBQlCgwKBQQAAiMDEgNoKCoKCwoEBAACJBIDaQIlCgwKBQQAAiQEEgNpAgoKDAoFBAACJAUSA2kLEAoMCgUEAAIkARIDaREfCgwKBQQAAiQDEgNpIiQKCwoEBAACJRIDagInCgwKBQQAAiUEEgNqAgoKDAoFBAACJQUSA2oLEQoMCgUEAAIlARIDahIhCgwKBQQAAiUDEgNqJCYKCwoEBAACJhIDawIjCgwKBQQAAiYEEgNrAgoKDAoFBAACJgUSA2sLDwoMCgUEAAImARIDaxAdCgwKBQQAAiYDEgNrICIKCwoEBAACJxIDbAInCgwKBQQAAicEEgNsAgoKDAoFBAACJwUSA2wLEQoMCgUEAAInARIDbBIhCgwKBQQAAicDEgNsJCYKCwoEBAACKBIDbQIlCgwKBQQAAigEEgNtAgoKDAoFBAACKAUSA20LEAoMCgUEAAIoARIDbREfCgwKBQQAAigDEgNtIiQKDAoEBAACKRIEbwJxAwoMCgUEAAIpBBIDbwIKCgwKBQQAAikFEgNvCxAKDAoFBAACKQESA28RHgoMCgUEAAIpAxIDbyEjCgwKBAQAAwISBG8CcQMKDAoFBAADAgESA28RHgoMCgUEAAIpBhIDbxEeCg0KBgQAAwICABIDcAQaCg4KBwQAAwICAAQSA3AEDAoOCgcEAAMCAgAFEgNwDRIKDgoHBAADAgIAARIDcBMUCg4KBwQAAwICAAMSA3AXGQoLCgQEAAIqEgNzAjYKDAoFBAACKgQSA3MCCgoMCgUEAAIqBhIDcwsYCgwKBQQAAioBEgNzGTAKDAoFBAACKgMSA3MzNQoLCgQEAAIrEgN0AjgKDAoFBAACKwQSA3QCCgoMCgUEAAIrBhIDdAsZCgwKBQQAAisBEgN0GjIKDAoFBAACKwMSA3Q1NwoMCgQEAAIsEgR1AnYjCgwKBQQAAiwEEgN1AgoKDAoFBAACLAYSA3ULOAoMCgUEAAIsARIDdgYdCgwKBQQAAiwDEgN2ICIKCwoEBAACLRIDeAIwCgwKBQQAAi0EEgN4AgoKDAoFBAACLQYSA3gLFQoMCgUEAAItARIDeBYqCgwKBQQAAi0DEgN4LS8KCwoEBAACLhIDeQIyCgwKBQQAAi4EEgN5AgoKDAoFBAACLgYSA3kLFgoMCgUEAAIuARIDeRcsCgwKBQQAAi4DEgN5LzEKCwoEBAACLxIDegJQCgwKBQQAAi8EEgN6AgoKDAoFBAACLwYSA3oLNQoMCgUEAAIvARIDejZKCgwKBQQAAi8DEgN6TU8KCwoEBAACMBIDfAJECgwKBQQAAjAEEgN8AgoKDAoFBAACMAUSA3wLEQoMCgUEAAIwARIDfBInCgwKBQQAAjADEgN8KiwKDAoFBAACMAgSA3wtQwoNCgYEAAIwCAESA3wuQgoLCgQEAAIxEgN9AjQKDAoFBAACMQQSA30CCgoMCgUEAAIxBRIDfQsRCgwKBQQAAjEBEgN9Eh8KDAoFBAACMQMSA30iJAoMCgUEAAIxCBIDfSUzCg0KBgQAAjEIARIDfSYyCgsKBAQAAjISA38CNQoMCgUEAAIyBBIDfwIKCgwKBQQAAjIGEgN/CxgKDAoFBAACMgESA38ZLgoMCgUEAAIyAxIDfzEzCiYKBAQAAjMSBIIBAjMaGCBTaW5ndWxhciB3aXRoIGRlZmF1bHRzCgoNCgUEAAIzBBIEggECCgoNCgUEAAIzBRIEggELEAoNCgUEAAIzARIEggERHgoNCgUEAAIzAxIEggEhIwoNCgUEAAIzCBIEggEkMgoNCgUEAAIzBxIEggEvMQoMCgQEAAI0EgSDAQIzCg0KBQQAAjQEEgSDAQIKCg0KBQQAAjQFEgSDAQsQCg0KBQQAAjQBEgSDAREeCg0KBQQAAjQDEgSDASEjCg0KBQQAAjQIEgSDASQyCg0KBQQAAjQHEgSDAS8xCgwKBAQAAjUSBIQBAjUKDQoFBAACNQQSBIQBAgoKDQoFBAACNQUSBIQBCxEKDQoFBAACNQESBIQBEiAKDQoFBAACNQMSBIQBIyUKDQoFBAACNQgSBIQBJjQKDQoFBAACNQcSBIQBMTMKDAoEBAACNhIEhQECNQoNCgUEAAI2BBIEhQECCgoNCgUEAAI2BRIEhQELEQoNCgUEAAI2ARIEhQESIAoNCgUEAAI2AxIEhQEjJQoNCgUEAAI2CBIEhQEmNAoNCgUEAAI2BxIEhQExMwoMCgQEAAI3EgSGAQI2Cg0KBQQAAjcEEgSGAQIKCg0KBQQAAjcFEgSGAQsRCg0KBQQAAjcBEgSGARIgCg0KBQQAAjcDEgSGASMlCg0KBQQAAjcIEgSGASY1Cg0KBQQAAjcHEgSGATE0CgwKBAQAAjgSBIcBAjUKDQoFBAACOAQSBIcBAgoKDQoFBAACOAUSBIcBCxEKDQoFBAACOAESBIcBEiAKDQoFBAACOAMSBIcBIyUKDQoFBAACOAgSBIcBJjQKDQoFBAACOAcSBIcBMTMKDAoEBAACORIEiAECNwoNCgUEAAI5BBIEiAECCgoNCgUEAAI5BRIEiAELEgoNCgUEAAI5ARIEiAETIgoNCgUEAAI5AxIEiAElJwoNCgUEAAI5CBIEiAEoNgoNCgUEAAI5BxIEiAEzNQoMCgQEAAI6EgSJAQI3Cg0KBQQAAjoEEgSJAQIKCg0KBQQAAjoFEgSJAQsSCg0KBQQAAjoBEgSJARMiCg0KBQQAAjoDEgSJASUnCg0KBQQAAjoIEgSJASg2Cg0KBQQAAjoHEgSJATM1CgwKBAQAAjsSBIoBAjkKDQoFBAACOwQSBIoBAgoKDQoFBAACOwUSBIoBCxMKDQoFBAACOwESBIoBFCQKDQoFBAACOwMSBIoBJykKDQoFBAACOwgSBIoBKjgKDQoFBAACOwcSBIoBNTcKDAoEBAACPBIEiwECOgoNCgUEAAI8BBIEiwECCgoNCgUEAAI8BRIEiwELEwoNCgUEAAI8ARIEiwEUJAoNCgUEAAI8AxIEiwEnKQoNCgUEAAI8CBIEiwEqOQoNCgUEAAI8BxIEiwE1OAoMCgQEAAI9EgSMAQI1Cg0KBQQAAj0EEgSMAQIKCg0KBQQAAj0FEgSMAQsQCg0KBQQAAj0BEgSMAREeCg0KBQQAAj0DEgSMASEjCg0KBQQAAj0IEgSMASQ0Cg0KBQQAAj0HEgSMAS8zCgwKBAQAAj4SBI0BAjcKDQoFBAACPgQSBI0BAgoKDQoFBAACPgUSBI0BCxEKDQoFBAACPgESBI0BEiAKDQoFBAACPgMSBI0BIyUKDQoFBAACPggSBI0BJjYKDQoFBAACPgcSBI0BMTUKDAoEBAACPxIEjgECMwoNCgUEAAI/BBIEjgECCgoNCgUEAAI/BRIEjgELDwoNCgUEAAI/ARIEjgEQHAoNCgUEAAI/AxIEjgEfIQoNCgUEAAI/CBIEjgEiMgoNCgUEAAI/BxIEjgEtMQoMCgQEAAJAEgSPAQI6Cg0KBQQAAkAEEgSPAQIKCg0KBQQAAkAFEgSPAQsRCg0KBQQAAkABEgSPARIgCg0KBQQAAkADEgSPASMlCg0KBQQAAkAIEgSPASY5Cg0KBQQAAkAHEgSPATE4CgwKBAQAAkESBJABAjgKDQoFBAACQQQSBJABAgoKDQoFBAACQQUSBJABCxAKDQoFBAACQQESBJABER4KDQoFBAACQQMSBJABISMKDQoFBAACQQgSBJABJDcKDQoFBAACQQcSBJABLzYKDAoEBAACQhIEkgECPwoNCgUEAAJCBBIEkgECCgoNCgUEAAJCBhIEkgELFQoNCgUEAAJCARIEkgEWKQoNCgUEAAJCAxIEkgEsLgoNCgUEAAJCCBIEkgEvPgoNCgUEAAJCBxIEkgE6PQoMCgQEAAJDEgSTAQJJCg0KBQQAAkMEEgSTAQIKCg0KBQQAAkMGEgSTAQsWCg0KBQQAAkMBEgSTARcrCg0KBQQAAkMDEgSTAS4wCg0KBQQAAkMIEgSTATFICg0KBQQAAkMHEgSTATxHCg4KBAQAAkQSBpQBApUBHQoNCgUEAAJEBBIElAECCgoNCgUEAAJEBhIElAELNQoNCgUEAAJEARIElAE2SQoNCgUEAAJEAxIElAFMTgoNCgUEAAJECBIElQEGHAoNCgUEAAJEBxIElQERGwoOCgQEAAJFEgaXAQKYAS4KDQoFBAACRQQSBJcBAgoKDQoFBAACRQUSBJcBCxEKDQoFBAACRQESBJcBEiYKDQoFBAACRQMSBJcBKSsKDQoFBAACRQgSBJgBBi0KDgoGBAACRQgBEgSYAQcbCg0KBQQAAkUHEgSYAScsCgwKBAQAAkYSBJkBAkQKDQoFBAACRgQSBJkBAgoKDQoFBAACRgUSBJkBCxEKDQoFBAACRgESBJkBEh4KDQoFBAACRgMSBJkBISMKDQoFBAACRggSBJkBJEMKDgoGBAACRggBEgSZASUxCg0KBQQAAkYHEgSZAT1CCiAKBAQACAASBpwBAqEBAxoQIEZvciBvbmVvZiB0ZXN0CgoNCgUEAAgAARIEnAEIEwoMCgQEAAJHEgSdAQQeCg0KBQQAAkcFEgSdAQQKCg0KBQQAAkcBEgSdAQsXCg0KBQQAAkcDEgSdARodCgwKBAQAAkgSBJ4BBC0KDQoFBAACSAYSBJ4BBBEKDQoFBAACSAESBJ4BEiYKDQoFBAACSAMSBJ4BKSwKDAoEBAACSRIEnwEEHgoNCgUEAAJJBRIEnwEECgoNCgUEAAJJARIEnwELFwoNCgUEAAJJAxIEnwEaHQoMCgQEAAJKEgSgAQQcCg0KBQQAAkoFEgSgAQQJCg0KBQQAAkoBEgSgAQoVCg0KBQQAAkoDEgSgARgbCkEKAgQBEgalAQCpAQEaMyBUaGlzIHByb3RvIGluY2x1ZGVzIGEgcmVjdXJzaXZlbHkgbmVzdGVkIG1lc3NhZ2UuCgoLCgMEAQESBKUBCBoKDAoEBAECABIEpgECKAoNCgUEAQIABBIEpgECCgoNCgUEAQIABhIEpgELHQoNCgUEAQIAARIEpgEeIwoNCgUEAQIAAxIEpgEmJwoMCgQEAQIBEgSnAQIkCg0KBQQBAgEEEgSnAQIKCg0KBQQBAgEGEgSnAQsXCg0KBQQBAgEBEgSnARgfCg0KBQQBAgEDEgSnASIjCgwKBAQBAgISBKgBAjEKDQoFBAECAgQSBKgBAgoKDQoFBAECAgYSBKgBCx0KDQoFBAECAgESBKgBHiwKDQoFBAECAgMSBKgBLzAKDAoCBAISBqsBALABAQoLCgMEAgESBKsBCBwKDAoEBAICABIErAECOgoNCgUEAgIABBIErAECCgoNCgUEAgIABRIErAELEAoNCgUEAgIAARIErAERIQoNCgUEAgIAAxIErAEkJQoNCgUEAgIACBIErAEmOQoOCgYEAgIACAMSBKwBJzgKDgoEBAIIABIGrQECrwEDCg0KBQQCCAABEgStAQgUCgwKBAQCAgESBK4BBDwKDQoFBAICAQUSBK4BBAkKDQoFBAICAQESBK4BCiMKDQoFBAICAQMSBK4BJicKDQoFBAICAQgSBK4BKDsKDgoGBAICAQgDEgSuASk6CgwKAgQDEgayAQC0AQEKCwoDBAMBEgSyAQgdCgsKAwQDBxIEswECGwoMCgQEAwcDEgSzAQIbClsKAgQEEga4AQC7AQEaTSBEZWZpbmUgdGhlc2UgYWZ0ZXIgVGVzdEFsbFR5cGVzIHRvIG1ha2Ugc3VyZSB0aGUgY29tcGlsZXIgY2FuIGhhbmRsZQogdGhhdC4KCgsKAwQEARIEuAEIFgoMCgQEBAIAEgS5AQIXCg0KBQQEAgAEEgS5AQIKCg0KBQQEAgAFEgS5AQsQCg0KBQQEAgABEgS5ARESCg0KBQQEAgADEgS5ARUWCgwKBAQEAgESBLoBAhcKDQoFBAQCAQQSBLoBAgoKDQoFBAQCAQUSBLoBCxAKDQoFBAQCAQESBLoBERIKDQoFBAQCAQMSBLoBFRYKDAoCBQASBr0BAMEBAQoLCgMFAAESBL0BBRAKDAoEBQACABIEvgECEgoNCgUFAAIAARIEvgECDQoNCgUFAAIAAhIEvgEQEQoMCgQFAAIBEgS/AQISCg0KBQUAAgEBEgS/AQINCg0KBQUAAgECEgS/ARARCgwKBAUAAgISBMABAhIKDQoFBQACAgESBMABAg0KDQoFBQACAgISBMABEBEKDAoCBAUSBsMBAMYBAQoLCgMEBQESBMMBCBoKCwoDBAUJEgTEAQIaCgwKBAQFCQASBMQBCwwKDQoFBAUJAAESBMQBCwwKDQoFBAUJAAISBMQBCwwKDAoEBAUJARIExAEOEAoNCgUEBQkBARIExAEOEAoNCgUEBQkBAhIExAEOEAoMCgQEBQkCEgTEARIZCg0KBQQFCQIBEgTEARITCg0KBQQFCQICEgTEARcZCgsKAwQFChIExQECGAoMCgQEBQoAEgTFAQsQCgwKBAQFCgESBMUBEhcKDAoCBAYSBsgBAMoBAQoLCgMEBgESBMgBCBkKCwoDBAYFEgTJAQIWCgwKBAQGBQASBMkBDRUKDQoFBAYFAAESBMkBDQ4KDQoFBAYFAAISBMkBEhUKCwoBBxIGzAEAuwIBChYKAgcAEgTOAQIuGgogU2luZ3VsYXIKCgsKAwcAAhIEzAEHGAoLCgMHAAQSBM4BAgoKCwoDBwAFEgTOAQsQCgsKAwcAARIEzgERKQoLCgMHAAMSBM4BLC0KCgoCBwESBM8BAi4KCwoDBwECEgTMAQcYCgsKAwcBBBIEzwECCgoLCgMHAQUSBM8BCxAKCwoDBwEBEgTPAREpCgsKAwcBAxIEzwEsLQoKCgIHAhIE0AECMAoLCgMHAgISBMwBBxgKCwoDBwIEEgTQAQIKCgsKAwcCBRIE0AELEQoLCgMHAgESBNABEisKCwoDBwIDEgTQAS4vCgoKAgcDEgTRAQIwCgsKAwcDAhIEzAEHGAoLCgMHAwQSBNEBAgoKCwoDBwMFEgTRAQsRCgsKAwcDARIE0QESKwoLCgMHAwMSBNEBLi8KCgoCBwQSBNIBAjAKCwoDBwQCEgTMAQcYCgsKAwcEBBIE0gECCgoLCgMHBAUSBNIBCxEKCwoDBwQBEgTSARIrCgsKAwcEAxIE0gEuLwoKCgIHBRIE0wECMAoLCgMHBQISBMwBBxgKCwoDBwUEEgTTAQIKCgsKAwcFBRIE0wELEQoLCgMHBQESBNMBEisKCwoDBwUDEgTTAS4vCgoKAgcGEgTUAQIyCgsKAwcGAhIEzAEHGAoLCgMHBgQSBNQBAgoKCwoDBwYFEgTUAQsSCgsKAwcGARIE1AETLQoLCgMHBgMSBNQBMDEKCgoCBwcSBNUBAjIKCwoDBwcCEgTMAQcYCgsKAwcHBBIE1QECCgoLCgMHBwUSBNUBCxIKCwoDBwcBEgTVARMtCgsKAwcHAxIE1QEwMQoKCgIHCBIE1gECNAoLCgMHCAISBMwBBxgKCwoDBwgEEgTWAQIKCgsKAwcIBRIE1gELEwoLCgMHCAESBNYBFC8KCwoDBwgDEgTWATIzCgoKAgcJEgTXAQI1CgsKAwcJAhIEzAEHGAoLCgMHCQQSBNcBAgoKCwoDBwkFEgTXAQsTCgsKAwcJARIE1wEULwoLCgMHCQMSBNcBMjQKCgoCBwoSBNgBAi8KCwoDBwoCEgTMAQcYCgsKAwcKBBIE2AECCgoLCgMHCgUSBNgBCxAKCwoDBwoBEgTYAREpCgsKAwcKAxIE2AEsLgoKCgIHCxIE2QECMQoLCgMHCwISBMwBBxgKCwoDBwsEEgTZAQIKCgsKAwcLBRIE2QELEQoLCgMHCwESBNkBEisKCwoDBwsDEgTZAS4wCgoKAgcMEgTaAQItCgsKAwcMAhIEzAEHGAoLCgMHDAQSBNoBAgoKCwoDBwwFEgTaAQsPCgsKAwcMARIE2gEQJwoLCgMHDAMSBNoBKiwKCgoCBw0SBNsBAjEKCwoDBw0CEgTMAQcYCgsKAwcNBBIE2wECCgoLCgMHDQUSBNsBCxEKCwoDBw0BEgTbARIrCgsKAwcNAxIE2wEuMAoKCgIHDhIE3AECLwoLCgMHDgISBMwBBxgKCwoDBw4EEgTcAQIKCgsKAwcOBRIE3AELEAoLCgMHDgESBNwBESkKCwoDBw4DEgTcASwuCgwKAgcPEgbeAQLgAQMKCwoDBw8CEgTMAQcYCgsKAwcPBBIE3gECCgoLCgMHDwUSBN4BCxAKCwoDBw8BEgTeAREoCgsKAwcPAxIE3gErLQoMCgIEBxIG3gEC4AEDCgsKAwQHARIE3gERKAoLCgMHDwYSBN4BESgKDAoEBAcCABIE3wEEGgoNCgUEBwIABBIE3wEEDAoNCgUEBwIABRIE3wENEgoNCgUEBwIAARIE3wETFAoNCgUEBwIAAxIE3wEXGQoKCgIHEBIE4gECTQoLCgMHEAISBMwBBxgKCwoDBxAEEgTiAQIKCgsKAwcQBhIE4gELJQoLCgMHEAESBOIBJkcKCwoDBxADEgTiAUpMCgoKAgcREgTjAQJCCgsKAwcRAhIEzAEHGAoLCgMHEQQSBOMBAgoKCwoDBxEGEgTjAQsZCgsKAwcRARIE4wEaPAoLCgMHEQMSBOMBP0EKDAoCBxISBuQBAuUBLQoLCgMHEgISBMwBBxgKCwoDBxIEEgTkAQIKCgsKAwcSBhIE5AELOAoLCgMHEgESBOUBBicKCwoDBxIDEgTlASosCgoKAgcTEgTnAQJHCgsKAwcTAhIEzAEHGAoLCgMHEwQSBOcBAgoKCwoDBxMGEgTnAQsiCgsKAwcTARIE5wEjQQoLCgMHEwMSBOcBREYKCgoCBxQSBOgBAjwKCwoDBxQCEgTMAQcYCgsKAwcUBBIE6AECCgoLCgMHFAYSBOgBCxYKCwoDBxQBEgToARc2CgsKAwcUAxIE6AE5OwoMCgIHFRIG6QEC6gEqCgsKAwcVAhIEzAEHGAoLCgMHFQQSBOkBAgoKCwoDBxUGEgTpAQs1CgsKAwcVARIE6gEGJAoLCgMHFQMSBOoBJykKCgoCBxYSBOwBAk4KCwoDBxYCEgTMAQcYCgsKAwcWBBIE7AECCgoLCgMHFgUSBOwBCxEKCwoDBxYBEgTsARIxCgsKAwcWAxIE7AE0NgoLCgMHFggSBOwBN00KDAoEBxYIARIE7AE4TAoKCgIHFxIE7QECLwoLCgMHFwISBMwBBxgKCwoDBxcEEgTtAQIKCgsKAwcXBRIE7QELEQoLCgMHFwESBO0BEikKCwoDBxcDEgTtASwuCgwKAgcYEgbvAQLwATQKCwoDBxgCEgTMAQcYCgsKAwcYBBIE7wECCgoLCgMHGAYSBO8BCz4KCwoDBxgBEgTwAQYuCgsKAwcYAxIE8AExMwoMCgIHGRIG8gEC8wEUCgsKAwcZAhIEzAEHGAoLCgMHGQQSBPIBAgoKCwoDBxkGEgTyAQslCgsKAwcZARIE8gEmRQoLCgMHGQMSBPIBSEoKCwoDBxkIEgTzAQYTCgwKBAcZCAUSBPMBBxIKFgoCBxoSBPYBAi8aCiBSZXBlYXRlZAoKCwoDBxoCEgTMAQcYCgsKAwcaBBIE9gECCgoLCgMHGgUSBPYBCxAKCwoDBxoBEgT2AREpCgsKAwcaAxIE9gEsLgoKCgIHGxIE9wECLwoLCgMHGwISBMwBBxgKCwoDBxsEEgT3AQIKCgsKAwcbBRIE9wELEAoLCgMHGwESBPcBESkKCwoDBxsDEgT3ASwuCgoKAgccEgT4AQIxCgsKAwccAhIEzAEHGAoLCgMHHAQSBPgBAgoKCwoDBxwFEgT4AQsRCgsKAwccARIE+AESKwoLCgMHHAMSBPgBLjAKCgoCBx0SBPkBAjEKCwoDBx0CEgTMAQcYCgsKAwcdBBIE+QECCgoLCgMHHQUSBPkBCxEKCwoDBx0BEgT5ARIrCgsKAwcdAxIE+QEuMAoKCgIHHhIE+gECMQoLCgMHHgISBMwBBxgKCwoDBx4EEgT6AQIKCgsKAwceBRIE+gELEQoLCgMHHgESBPoBEisKCwoDBx4DEgT6AS4wCgoKAgcfEgT7AQIxCgsKAwcfAhIEzAEHGAoLCgMHHwQSBPsBAgoKCwoDBx8FEgT7AQsRCgsKAwcfARIE+wESKwoLCgMHHwMSBPsBLjAKCgoCByASBPwBAjMKCwoDByACEgTMAQcYCgsKAwcgBBIE/AECCgoLCgMHIAUSBPwBCxIKCwoDByABEgT8ARMtCgsKAwcgAxIE/AEwMgoKCgIHIRIE/QECMwoLCgMHIQISBMwBBxgKCwoDByEEEgT9AQIKCgsKAwchBRIE/QELEgoLCgMHIQESBP0BEy0KCwoDByEDEgT9ATAyCgoKAgciEgT+AQI1CgsKAwciAhIEzAEHGAoLCgMHIgQSBP4BAgoKCwoDByIFEgT+AQsTCgsKAwciARIE/gEULwoLCgMHIgMSBP4BMjQKCgoCByMSBP8BAjUKCwoDByMCEgTMAQcYCgsKAwcjBBIE/wECCgoLCgMHIwUSBP8BCxMKCwoDByMBEgT/ARQvCgsKAwcjAxIE/wEyNAoKCgIHJBIEgAICLwoLCgMHJAISBMwBBxgKCwoDByQEEgSAAgIKCgsKAwckBRIEgAILEAoLCgMHJAESBIACESkKCwoDByQDEgSAAiwuCgoKAgclEgSBAgIxCgsKAwclAhIEzAEHGAoLCgMHJQQSBIECAgoKCwoDByUFEgSBAgsRCgsKAwclARIEgQISKwoLCgMHJQMSBIECLjAKCgoCByYSBIICAi0KCwoDByYCEgTMAQcYCgsKAwcmBBIEggICCgoLCgMHJgUSBIICCw8KCwoDByYBEgSCAhAnCgsKAwcmAxIEggIqLAoKCgIHJxIEgwICMQoLCgMHJwISBMwBBxgKCwoDBycEEgSDAgIKCgsKAwcnBRIEgwILEQoLCgMHJwESBIMCEisKCwoDBycDEgSDAi4wCgoKAgcoEgSEAgIvCgsKAwcoAhIEzAEHGAoLCgMHKAQSBIQCAgoKCwoDBygFEgSEAgsQCgsKAwcoARIEhAIRKQoLCgMHKAMSBIQCLC4KDAoCBykSBoYCAogCAwoLCgMHKQISBMwBBxgKCwoDBykEEgSGAgIKCgsKAwcpBRIEhgILEAoLCgMHKQESBIYCESgKCwoDBykDEgSGAistCgwKAgQIEgaGAgKIAgMKCwoDBAgBEgSGAhEoCgsKAwcpBhIEhgIRKAoMCgQECAIAEgSHAgQaCg0KBQQIAgAEEgSHAgQMCg0KBQQIAgAFEgSHAg0SCg0KBQQIAgABEgSHAhMUCg0KBQQIAgADEgSHAhcZCgoKAgcqEgSKAgJNCgsKAwcqAhIEzAEHGAoLCgMHKgQSBIoCAgoKCwoDByoGEgSKAgslCgsKAwcqARIEigImRwoLCgMHKgMSBIoCSkwKCgoCBysSBIsCAkIKCwoDBysCEgTMAQcYCgsKAwcrBBIEiwICCgoLCgMHKwYSBIsCCxkKCwoDBysBEgSLAho8CgsKAwcrAxIEiwI/QQoMCgIHLBIGjAICjQItCgsKAwcsAhIEzAEHGAoLCgMHLAQSBIwCAgoKCwoDBywGEgSMAgs4CgsKAwcsARIEjQIGJwoLCgMHLAMSBI0CKiwKCgoCBy0SBI8CAkcKCwoDBy0CEgTMAQcYCgsKAwctBBIEjwICCgoLCgMHLQYSBI8CCyIKCwoDBy0BEgSPAiNBCgsKAwctAxIEjwJERgoKCgIHLhIEkAICPAoLCgMHLgISBMwBBxgKCwoDBy4EEgSQAgIKCgsKAwcuBhIEkAILFgoLCgMHLgESBJACFzYKCwoDBy4DEgSQAjk7CgwKAgcvEgaRAgKSAioKCwoDBy8CEgTMAQcYCgsKAwcvBBIEkQICCgoLCgMHLwYSBJECCzUKCwoDBy8BEgSSAgYkCgsKAwcvAxIEkgInKQoKCgIHMBIElAICTgoLCgMHMAISBMwBBxgKCwoDBzAEEgSUAgIKCgsKAwcwBRIElAILEQoLCgMHMAESBJQCEjEKCwoDBzADEgSUAjQ2CgsKAwcwCBIElAI3TQoMCgQHMAgBEgSUAjhMCgoKAgcxEgSVAgIvCgsKAwcxAhIEzAEHGAoLCgMHMQQSBJUCAgoKCwoDBzEFEgSVAgsRCgsKAwcxARIElQISKQoLCgMHMQMSBJUCLC4KDAoCBzISBpcCApgCFAoLCgMHMgISBMwBBxgKCwoDBzIEEgSXAgIKCgsKAwcyBhIElwILJQoLCgMHMgESBJcCJkUKCwoDBzIDEgSXAkhKCgsKAwcyCBIEmAIGEwoMCgQHMggFEgSYAgcSCiQKAgczEgSbAgI9GhggU2luZ3VsYXIgd2l0aCBkZWZhdWx0cwoKCwoDBzMCEgTMAQcYCgsKAwczBBIEmwICCgoLCgMHMwUSBJsCCxAKCwoDBzMBEgSbAhEoCgsKAwczAxIEmwIrLQoLCgMHMwgSBJsCLjwKCwoDBzMHEgSbAjk7CgoKAgc0EgScAgI9CgsKAwc0AhIEzAEHGAoLCgMHNAQSBJwCAgoKCwoDBzQFEgScAgsQCgsKAwc0ARIEnAIRKAoLCgMHNAMSBJwCKy0KCwoDBzQIEgScAi48CgsKAwc0BxIEnAI5OwoKCgIHNRIEnQICPwoLCgMHNQISBMwBBxgKCwoDBzUEEgSdAgIKCgsKAwc1BRIEnQILEQoLCgMHNQESBJ0CEioKCwoDBzUDEgSdAi0vCgsKAwc1CBIEnQIwPgoLCgMHNQcSBJ0COz0KCgoCBzYSBJ4CAj8KCwoDBzYCEgTMAQcYCgsKAwc2BBIEngICCgoLCgMHNgUSBJ4CCxEKCwoDBzYBEgSeAhIqCgsKAwc2AxIEngItLwoLCgMHNggSBJ4CMD4KCwoDBzYHEgSeAjs9CgoKAgc3EgSfAgJACgsKAwc3AhIEzAEHGAoLCgMHNwQSBJ8CAgoKCwoDBzcFEgSfAgsRCgsKAwc3ARIEnwISKgoLCgMHNwMSBJ8CLS8KCwoDBzcIEgSfAjA/CgsKAwc3BxIEnwI7PgoKCgIHOBIEoAICPwoLCgMHOAISBMwBBxgKCwoDBzgEEgSgAgIKCgsKAwc4BRIEoAILEQoLCgMHOAESBKACEioKCwoDBzgDEgSgAi0vCgsKAwc4CBIEoAIwPgoLCgMHOAcSBKACOz0KCgoCBzkSBKECAkEKCwoDBzkCEgTMAQcYCgsKAwc5BBIEoQICCgoLCgMHOQUSBKECCxIKCwoDBzkBEgShAhMsCgsKAwc5AxIEoQIvMQoLCgMHOQgSBKECMkAKCwoDBzkHEgShAj0/CgoKAgc6EgSiAgJBCgsKAwc6AhIEzAEHGAoLCgMHOgQSBKICAgoKCwoDBzoFEgSiAgsSCgsKAwc6ARIEogITLAoLCgMHOgMSBKICLzEKCwoDBzoIEgSiAjJACgsKAwc6BxIEogI9PwoKCgIHOxIEowICQwoLCgMHOwISBMwBBxgKCwoDBzsEEgSjAgIKCgsKAwc7BRIEowILEwoLCgMHOwESBKMCFC4KCwoDBzsDEgSjAjEzCgsKAwc7CBIEowI0QgoLCgMHOwcSBKMCP0EKCgoCBzwSBKQCAkQKCwoDBzwCEgTMAQcYCgsKAwc8BBIEpAICCgoLCgMHPAUSBKQCCxMKCwoDBzwBEgSkAhQuCgsKAwc8AxIEpAIxMwoLCgMHPAgSBKQCNEMKCwoDBzwHEgSkAj9CCgoKAgc9EgSlAgI/CgsKAwc9AhIEzAEHGAoLCgMHPQQSBKUCAgoKCwoDBz0FEgSlAgsQCgsKAwc9ARIEpQIRKAoLCgMHPQMSBKUCKy0KCwoDBz0IEgSlAi4+CgsKAwc9BxIEpQI5PQoKCgIHPhIEpgICQQoLCgMHPgISBMwBBxgKCwoDBz4EEgSmAgIKCgsKAwc+BRIEpgILEQoLCgMHPgESBKYCEioKCwoDBz4DEgSmAi0vCgsKAwc+CBIEpgIwQAoLCgMHPgcSBKYCOz8KCgoCBz8SBKcCAj0KCwoDBz8CEgTMAQcYCgsKAwc/BBIEpwICCgoLCgMHPwUSBKcCCw8KCwoDBz8BEgSnAhAmCgsKAwc/AxIEpwIpKwoLCgMHPwgSBKcCLDwKCwoDBz8HEgSnAjc7CgoKAgdAEgSoAgJECgsKAwdAAhIEzAEHGAoLCgMHQAQSBKgCAgoKCwoDB0AFEgSoAgsRCgsKAwdAARIEqAISKgoLCgMHQAMSBKgCLS8KCwoDB0AIEgSoAjBDCgsKAwdABxIEqAI7QgoKCgIHQRIEqQICQgoLCgMHQQISBMwBBxgKCwoDB0EEEgSpAgIKCgsKAwdBBRIEqQILEAoLCgMHQQESBKkCESgKCwoDB0EDEgSpAistCgsKAwdBCBIEqQIuQQoLCgMHQQcSBKkCOUAKDAoCB0ISBqsCAqwCFgoLCgMHQgISBMwBBxgKCwoDB0IEEgSrAgIKCgsKAwdCBhIEqwILIgoLCgMHQgESBKsCI0AKCwoDB0IDEgSrAkNFCgsKAwdCCBIErAIGFQoLCgMHQgcSBKwCERQKDAoCB0MSBq0CAq4CHgoLCgMHQwISBMwBBxgKCwoDB0MEEgStAgIKCgsKAwdDBhIErQILFgoLCgMHQwESBK0CFzUKCwoDB0MDEgStAjg6CgsKAwdDCBIErgIGHQoLCgMHQwcSBK4CERwKDAoCB0QSBq8CArACQAoLCgMHRAISBMwBBxgKCwoDB0QEEgSvAgIKCgsKAwdEBhIErwILNQoLCgMHRAESBLACBiMKCwoDB0QDEgSwAiYoCgsKAwdECBIEsAIpPwoLCgMHRAcSBLACND4KDAoCB0USBrICArMCLgoLCgMHRQISBMwBBxgKCwoDB0UEEgSyAgIKCgsKAwdFBRIEsgILEQoLCgMHRQESBLICEjAKCwoDB0UDEgSyAjM1CgsKAwdFCBIEswIGLQoMCgQHRQgBEgSzAgcbCgsKAwdFBxIEswInLAoKCgIHRhIEtAICQAoLCgMHRgISBMwBBxgKCwoDB0YEEgS0AgIKCgsKAwdGBRIEtAILEQoLCgMHRgESBLQCEigKCwoDB0YDEgS0AistCgsKAwdGCBIEtAIuPwoLCgMHRgcSBLQCOT4KHAoCB0cSBLcCAi8aECBGb3Igb25lb2YgdGVzdAoKCwoDB0cCEgTMAQcYCgsKAwdHBBIEtwICCgoLCgMHRwUSBLcCCxEKCwoDB0cBEgS3AhIoCgsKAwdHAxIEtwIrLgoKCgIHSBIEuAICSwoLCgMHSAISBMwBBxgKCwoDB0gEEgS4AgIKCgsKAwdIBhIEuAILJQoLCgMHSAESBLgCJkQKCwoDB0gDEgS4AkdKCgoKAgdJEgS5AgIvCgsKAwdJAhIEzAEHGAoLCgMHSQQSBLkCAgoKCwoDB0kFEgS5AgsRCgsKAwdJARIEuQISKAoLCgMHSQMSBLkCKy4KCgoCB0oSBLoCAi0KCwoDB0oCEgTMAQcYCgsKAwdKBBIEugICCgoLCgMHSgUSBLoCCxAKCwoDB0oBEgS6AhEmCgsKAwdKAxIEugIpLAoMCgIECRIGvQIAwgIBCgsKAwQJARIEvQIIEQoOCgQECQIAEga+AgLAAgMKDQoFBAkCAAQSBL4CAgoKDQoFBAkCAAUSBL4CCxAKDQoFBAkCAAESBL4CER4KDQoFBAkCAAMSBL4CISMKDgoEBAkDABIGvgICwAIDCg0KBQQJAwABEgS+AhEeCg0KBQQJAgAGEgS+AhEeCg4KBgQJAwACABIEvwIEGgoPCgcECQMAAgAEEgS/AgQMCg8KBwQJAwACAAUSBL8CDRIKDwoHBAkDAAIAARIEvwITFAoPCgcECQMAAgADEgS/AhcZCgwKBAQJAgESBMECAjIKDQoFBAkCAQQSBMECAgoKDQoFBAkCAQYSBMECCxYKDQoFBAkCAQESBMECFywKDQoFBAkCAQMSBMECLzEKDAoCBAoSBsQCAMYCAQoLCgMECgESBMQCCBoKCwoDBAoFEgTFAgIWCgwKBAQKBQASBMUCDRUKDQoFBAoFAAESBMUCDQ4KDQoFBAoFAAISBMUCEhUKDAoCBAsSBsgCANgCAQoLCgMECwESBMgCCBsKDQoDBAsGEgbJAgLQAgMKYAoEBAsGABIEzAIEMxpSIENoZWNrIGZvciBidWcgd2hlcmUgc3RyaW5nIGV4dGVuc2lvbnMgZGVjbGFyZWQgaW4gdGVzdGVkIHNjb3BlIGRpZCBub3QKIGNvbXBpbGUuCgoNCgUECwYAAhIEyQIJGgoNCgUECwYABBIEzAIEDAoNCgUECwYABRIEzAINEwoNCgUECwYAARIEzAIUGAoNCgUECwYAAxIEzAIbHwoNCgUECwYACBIEzAIgMgoNCgUECwYABxIEzAIrMQpgCgQECwYBEgTPAgQzGlIgVXNlZCB0byB0ZXN0IGlmIGdlbmVyYXRlZCBleHRlbnNpb24gbmFtZSBpcyBjb3JyZWN0IHdoZW4gdGhlcmUgYXJlCiB1bmRlcnNjb3Jlcy4KCg0KBQQLBgECEgTJAgkaCg0KBQQLBgEEEgTPAgQMCg0KBQQLBgEFEgTPAg0TCg0KBQQLBgEBEgTPAhQrCg0KBQQLBgEDEgTPAi4yCg0KAwQLBhIG0gIC1wIDCg4KBAQLBgISBtMCBNUCBQoNCgUECwYCAhIE0gIJGwoNCgUECwYCBBIE0wIEDAoNCgUECwYCBRIE0wINEgoNCgUECwYCARIE0wITKgoNCgUECwYCAxIE0wItLwoOCgQECwMAEgbTAgTVAgUKDQoFBAsDAAESBNMCEyoKDQoFBAsGAgYSBNMCEyoKDgoGBAsDAAIAEgTUAgYcCg8KBwQLAwACAAQSBNQCBg4KDwoHBAsDAAIABRIE1AIPFAoPCgcECwMAAgABEgTUAhUWCg8KBwQLAwACAAMSBNQCGRsKDAoEBAsGAxIE1gIEPgoNCgUECwYDAhIE0gIJGwoNCgUECwYDBBIE1gIEDAoNCgUECwYDBhIE1gINGAoNCgUECwYDARIE1gIZOAoNCgUECwYDAxIE1gI7PQrAAgoCBAwSBt8CAIoDARqxAiBXZSBoYXZlIHNlcGFyYXRlIG1lc3NhZ2VzIGZvciB0ZXN0aW5nIHJlcXVpcmVkIGZpZWxkcyBiZWNhdXNlIGl0J3MKIGFubm95aW5nIHRvIGhhdmUgdG8gZmlsbCBpbiByZXF1aXJlZCBmaWVsZHMgaW4gVGVzdFByb3RvIGluIG9yZGVyIHRvCiBkbyBhbnl0aGluZyB3aXRoIGl0LiAgTm90ZSB0aGF0IHdlIGRvbid0IG5lZWQgdG8gdGVzdCBldmVyeSB0eXBlIG9mCiByZXF1aXJlZCBmaWxlZCBiZWNhdXNlIHRoZSBjb2RlIG91dHB1dCBpcyBiYXNpY2FsbHkgaWRlbnRpY2FsIHRvCiBvcHRpb25hbCBmaWVsZHMgZm9yIGFsbCB0eXBlcy4KCgsKAwQMARIE3wIIFAoMCgQEDAIAEgTgAgIXCg0KBQQMAgAEEgTgAgIKCg0KBQQMAgAFEgTgAgsQCg0KBQQMAgABEgTgAhESCg0KBQQMAgADEgTgAhUWCgwKBAQMAgESBOECAhwKDQoFBAwCAQQSBOECAgoKDQoFBAwCAQUSBOECCxAKDQoFBAwCAQESBOECERcKDQoFBAwCAQMSBOECGhsKDAoEBAwCAhIE4gICFwoNCgUEDAICBBIE4gICCgoNCgUEDAICBRIE4gILEAoNCgUEDAICARIE4gIREgoNCgUEDAICAxIE4gIVFgoNCgMEDAYSBuQCAucCAwoMCgQEDAYAEgTlAgQoCg0KBQQMBgACEgTkAgkaCg0KBQQMBgAEEgTlAgQMCg0KBQQMBgAGEgTlAg0ZCg0KBQQMBgABEgTlAhogCg0KBQQMBgADEgTlAiMnCgwKBAQMBgESBOYCBCcKDQoFBAwGAQISBOQCCRoKDQoFBAwGAQQSBOYCBAwKDQoFBAwGAQYSBOYCDRkKDQoFBAwGAQESBOYCGh8KDQoFBAwGAQMSBOYCIiYKgwEKBAQMAgMSBOsCAhwadSBQYWQgdGhlIGZpZWxkIGNvdW50IHRvIDMyIHNvIHRoYXQgd2UgY2FuIHRlc3QgdGhhdCBJc0luaXRpYWxpemVkKCkKIHByb3Blcmx5IGNoZWNrcyBtdWx0aXBsZSBlbGVtZW50cyBvZiBoYXNfYml0c18uCgoNCgUEDAIDBBIE6wICCgoNCgUEDAIDBRIE6wILEAoNCgUEDAIDARIE6wIRFwoNCgUEDAIDAxIE6wIaGwoMCgQEDAIEEgTsAgIcCg0KBQQMAgQEEgTsAgIKCg0KBQQMAgQFEgTsAgsQCg0KBQQMAgQBEgTsAhEXCg0KBQQMAgQDEgTsAhobCgwKBAQMAgUSBO0CAhwKDQoFBAwCBQQSBO0CAgoKDQoFBAwCBQUSBO0CCxAKDQoFBAwCBQESBO0CERcKDQoFBAwCBQMSBO0CGhsKDAoEBAwCBhIE7gICHAoNCgUEDAIGBBIE7gICCgoNCgUEDAIGBRIE7gILEAoNCgUEDAIGARIE7gIRFwoNCgUEDAIGAxIE7gIaGwoMCgQEDAIHEgTvAgIcCg0KBQQMAgcEEgTvAgIKCg0KBQQMAgcFEgTvAgsQCg0KBQQMAgcBEgTvAhEXCg0KBQQMAgcDEgTvAhobCgwKBAQMAggSBPACAhwKDQoFBAwCCAQSBPACAgoKDQoFBAwCCAUSBPACCxAKDQoFBAwCCAESBPACERcKDQoFBAwCCAMSBPACGhsKDAoEBAwCCRIE8QICHgoNCgUEDAIJBBIE8QICCgoNCgUEDAIJBRIE8QILEAoNCgUEDAIJARIE8QIRGAoNCgUEDAIJAxIE8QIbHQoMCgQEDAIKEgTyAgIeCg0KBQQMAgoEEgTyAgIKCg0KBQQMAgoFEgTyAgsQCg0KBQQMAgoBEgTyAhEYCg0KBQQMAgoDEgTyAhsdCgwKBAQMAgsSBPMCAh4KDQoFBAwCCwQSBPMCAgoKDQoFBAwCCwUSBPMCCxAKDQoFBAwCCwESBPMCERgKDQoFBAwCCwMSBPMCGx0KDAoEBAwCDBIE9AICHgoNCgUEDAIMBBIE9AICCgoNCgUEDAIMBRIE9AILEAoNCgUEDAIMARIE9AIRGAoNCgUEDAIMAxIE9AIbHQoMCgQEDAINEgT1AgIeCg0KBQQMAg0EEgT1AgIKCg0KBQQMAg0FEgT1AgsQCg0KBQQMAg0BEgT1AhEYCg0KBQQMAg0DEgT1AhsdCgwKBAQMAg4SBPYCAh4KDQoFBAwCDgQSBPYCAgoKDQoFBAwCDgUSBPYCCxAKDQoFBAwCDgESBPYCERgKDQoFBAwCDgMSBPYCGx0KDAoEBAwCDxIE9wICHgoNCgUEDAIPBBIE9wICCgoNCgUEDAIPBRIE9wILEAoNCgUEDAIPARIE9wIRGAoNCgUEDAIPAxIE9wIbHQoMCgQEDAIQEgT4AgIeCg0KBQQMAhAEEgT4AgIKCg0KBQQMAhAFEgT4AgsQCg0KBQQMAhABEgT4AhEYCg0KBQQMAhADEgT4AhsdCgwKBAQMAhESBPkCAh4KDQoFBAwCEQQSBPkCAgoKDQoFBAwCEQUSBPkCCxAKDQoFBAwCEQESBPkCERgKDQoFBAwCEQMSBPkCGx0KDAoEBAwCEhIE+gICHgoNCgUEDAISBBIE+gICCgoNCgUEDAISBRIE+gILEAoNCgUEDAISARIE+gIRGAoNCgUEDAISAxIE+gIbHQoMCgQEDAITEgT7AgIeCg0KBQQMAhMEEgT7AgIKCg0KBQQMAhMFEgT7AgsQCg0KBQQMAhMBEgT7AhEYCg0KBQQMAhMDEgT7AhsdCgwKBAQMAhQSBPwCAh4KDQoFBAwCFAQSBPwCAgoKDQoFBAwCFAUSBPwCCxAKDQoFBAwCFAESBPwCERgKDQoFBAwCFAMSBPwCGx0KDAoEBAwCFRIE/QICHgoNCgUEDAIVBBIE/QICCgoNCgUEDAIVBRIE/QILEAoNCgUEDAIVARIE/QIRGAoNCgUEDAIVAxIE/QIbHQoMCgQEDAIWEgT+AgIeCg0KBQQMAhYEEgT+AgIKCg0KBQQMAhYFEgT+AgsQCg0KBQQMAhYBEgT+AhEYCg0KBQQMAhYDEgT+AhsdCgwKBAQMAhcSBP8CAh4KDQoFBAwCFwQSBP8CAgoKDQoFBAwCFwUSBP8CCxAKDQoFBAwCFwESBP8CERgKDQoFBAwCFwMSBP8CGx0KDAoEBAwCGBIEgAMCHgoNCgUEDAIYBBIEgAMCCgoNCgUEDAIYBRIEgAMLEAoNCgUEDAIYARIEgAMRGAoNCgUEDAIYAxIEgAMbHQoMCgQEDAIZEgSBAwIeCg0KBQQMAhkEEgSBAwIKCg0KBQQMAhkFEgSBAwsQCg0KBQQMAhkBEgSBAxEYCg0KBQQMAhkDEgSBAxsdCgwKBAQMAhoSBIIDAh4KDQoFBAwCGgQSBIIDAgoKDQoFBAwCGgUSBIIDCxAKDQoFBAwCGgESBIIDERgKDQoFBAwCGgMSBIIDGx0KDAoEBAwCGxIEgwMCHgoNCgUEDAIbBBIEgwMCCgoNCgUEDAIbBRIEgwMLEAoNCgUEDAIbARIEgwMRGAoNCgUEDAIbAxIEgwMbHQoMCgQEDAIcEgSEAwIeCg0KBQQMAhwEEgSEAwIKCg0KBQQMAhwFEgSEAwsQCg0KBQQMAhwBEgSEAxEYCg0KBQQMAhwDEgSEAxsdCgwKBAQMAh0SBIUDAh4KDQoFBAwCHQQSBIUDAgoKDQoFBAwCHQUSBIUDCxAKDQoFBAwCHQESBIUDERgKDQoFBAwCHQMSBIUDGx0KDAoEBAwCHhIEhgMCHgoNCgUEDAIeBBIEhgMCCgoNCgUEDAIeBRIEhgMLEAoNCgUEDAIeARIEhgMRGAoNCgUEDAIeAxIEhgMbHQoMCgQEDAIfEgSHAwIeCg0KBQQMAh8EEgSHAwIKCg0KBQQMAh8FEgSHAwsQCg0KBQQMAh8BEgSHAxEYCg0KBQQMAh8DEgSHAxsdCgwKBAQMAiASBIkDAhgKDQoFBAwCIAQSBIkDAgoKDQoFBAwCIAUSBIkDCxAKDQoFBAwCIAESBIkDERIKDQoFBAwCIAMSBIkDFRcKDAoCBA0SBowDAJADAQoLCgMEDQESBIwDCBsKDAoEBA0CABIEjQMCLQoNCgUEDQIABBIEjQMCCgoNCgUEDQIABhIEjQMLFwoNCgUEDQIAARIEjQMYKAoNCgUEDQIAAxIEjQMrLAoMCgQEDQIBEgSOAwItCg0KBQQNAgEEEgSOAwIKCg0KBQQNAgEGEgSOAwsXCg0KBQQNAgEBEgSOAxgoCg0KBQQNAgEDEgSOAyssCgwKBAQNAgISBI8DAhsKDQoFBA0CAgQSBI8DAgoKDQoFBA0CAgUSBI8DCxAKDQoFBA0CAgESBI8DERYKDQoFBA0CAgMSBI8DGRoKDAoCBA4SBpIDAJYDAQoLCgMEDgESBJIDCBsKDAoEBA4CABIEkwMCLQoNCgUEDgIABBIEkwMCCgoNCgUEDgIABhIEkwMLFwoNCgUEDgIAARIEkwMYKAoNCgUEDgIAAxIEkwMrLAoMCgQEDgIBEgSUAwItCg0KBQQOAgEEEgSUAwIKCg0KBQQOAgEGEgSUAwsXCg0KBQQOAgEBEgSUAxgoCg0KBQQOAgEDEgSUAyssCgwKBAQOAgISBJUDAi0KDQoFBA4CAgQSBJUDAgoKDQoFBA4CAgYSBJUDCxcKDQoFBA4CAgESBJUDGCgKDQoFBA4CAgMSBJUDKywKTQoCBA8SBpkDAJsDARo/IFRlc3QgdGhhdCB3ZSBjYW4gdXNlIE5lc3RlZE1lc3NhZ2UgZnJvbSBvdXRzaWRlIFRlc3RBbGxUeXBlcy4KCgsKAwQPARIEmQMIGQoMCgQEDwIAEgSaAwI5Cg0KBQQPAgAEEgSaAwIKCg0KBQQPAgAGEgSaAwslCg0KBQQPAgABEgSaAyY0Cg0KBQQPAgADEgSaAzc4CkUKAgQQEgSeAwAbGjkgVGVzdEVtcHR5TWVzc2FnZSBpcyB1c2VkIHRvIHRlc3QgdW5rbm93biBmaWVsZCBzdXBwb3J0LgoKCwoDBBABEgSeAwgYCpABCgIEERIGogMApAMBGoEBIExpa2UgYWJvdmUsIGJ1dCBkZWNsYXJlIGFsbCBmaWVsZCBudW1iZXJzIGFzIHBvdGVudGlhbCBleHRlbnNpb25zLiAgTm8KIGFjdHVhbCBleHRlbnNpb25zIHNob3VsZCBldmVyIGJlIGRlZmluZWQgZm9yIHRoaXMgdHlwZS4KCgsKAwQRARIEogMIJgoLCgMEEQUSBKMDAhYKDAoEBBEFABIEowMNFQoNCgUEEQUAARIEowMNDgoNCgUEEQUAAhIEowMSFQoMCgIEEhIGpgMAqgMBCgsKAwQSARIEpgMIIwoLCgMEEgUSBKcDAhAKDAoEBBIFABIEpwMNDwoNCgUEEgUAARIEpwMNDwoNCgUEEgUAAhIEpwMNDwoLCgMEEgUSBKgDAhoKDAoEBBIFARIEqAMNGQoNCgUEEgUBARIEqAMNEQoNCgUEEgUBAhIEqAMVGQoLCgMEEgUSBKkDAhoKDAoEBBIFAhIEqQMNGQoNCgUEEgUCARIEqQMNEgoNCgUEEgUCAhIEqQMWGQpICgIEExIGrQMAsgMBGjogVGVzdCB0aGF0IHJlYWxseSBsYXJnZSB0YWcgbnVtYmVycyBkb24ndCBicmVhayBhbnl0aGluZy4KCgsKAwQTARIErQMIIAp9CgQEEwIAEgSwAwIXGm8gVGhlIGxhcmdlc3QgcG9zc2libGUgdGFnIG51bWJlciBpcyAyXjI4IC0gMSwgc2luY2UgdGhlIHdpcmUgZm9ybWF0IHVzZXMKIHRocmVlIGJpdHMgdG8gY29tbXVuaWNhdGUgd2lyZSB0eXBlLgoKDQoFBBMCAAQSBLADAgoKDQoFBBMCAAUSBLADCxAKDQoFBBMCAAESBLADERIKDQoFBBMCAAMSBLADFRYKDAoEBBMCARIEsQMCIAoNCgUEEwIBBBIEsQMCCgoNCgUEEwIBBRIEsQMLEAoNCgUEEwIBARIEsQMREwoNCgUEEwIBAxIEsQMWHwoMCgIEFBIGtAMAtwMBCgsKAwQUARIEtAMIHAoMCgQEFAIAEgS1AwImCg0KBQQUAgAEEgS1AwIKCg0KBQQUAgAGEgS1AwsfCg0KBQQUAgABEgS1AyAhCg0KBQQUAgADEgS1AyQlCgwKBAQUAgESBLYDAhcKDQoFBBQCAQQSBLYDAgoKDQoFBBQCAQUSBLYDCxAKDQoFBBQCAQESBLYDERIKDQoFBBQCAQMSBLYDFRYKMQoCBBUSBroDAMMDARojIFRlc3QgdGhhdCBtdXR1YWwgcmVjdXJzaW9uIHdvcmtzLgoKCwoDBBUBEgS6AwgcCg4KBAQVAwASBrsDAr0DAwoNCgUEFQMAARIEuwMKFAoOCgYEFQMAAgASBLwDBCgKDwoHBBUDAAIABBIEvAMEDAoPCgcEFQMAAgAGEgS8Aw0hCg8KBwQVAwACAAESBLwDIiMKDwoHBBUDAAIAAxIEvAMmJwoMCgQEFQIAEgS+AwInCg0KBQQVAgAEEgS+AwIKCg0KBQQVAgAGEgS+AwsfCg0KBQQVAgABEgS+AyAiCg0KBQQVAgADEgS+AyUmCg4KBAQVAgESBr8DAsIDAwoNCgUEFQIBBBIEvwMCCgoNCgUEFQIBBRIEvwMLEAoNCgUEFQIBARIEvwMRGQoNCgUEFQIBAxIEvwMcHQoOCgQEFQMBEga/AwLCAwMKDQoFBBUDAQESBL8DERkKDQoFBBUCAQYSBL8DERkKMwoGBBUDAQIAEgTAAwQoIiMgTmVlZGVkIGJlY2F1c2Ugb2YgYnVnIGluIGphdmF0ZXN0CgoPCgcEFQMBAgAEEgTAAwQMCg8KBwQVAwECAAYSBMADDRcKDwoHBBUDAQIAARIEwAMYIwoPCgcEFQMBAgADEgTAAyYnCg4KBgQVAwECARIEwQMELgoPCgcEFQMBAgEEEgTBAwQMCg8KBwQVAwECAQYSBMEDDRkKDwoHBBUDAQIBARIEwQMaKQoPCgcEFQMBAgEDEgTBAywtCgwKAgQWEgbFAwDIAwEKCwoDBBYBEgTFAwgcCgwKBAQWAgASBMYDAiYKDQoFBBYCAAQSBMYDAgoKDQoFBBYCAAYSBMYDCx8KDQoFBBYCAAESBMYDICEKDQoFBBYCAAMSBMYDJCUKDAoEBBYCARIExwMCJAoNCgUEFgIBBBIExwMCCgoNCgUEFgIBBRIExwMLEAoNCgUEFgIBARIExwMRHwoNCgUEFgIBAxIExwMiIwoMCgIEFxIGygMA0QMBCgsKAwQXARIEygMIGQoOCgQEFwMAEgbLAwLPAwMKDQoFBBcDAAESBMsDChQKEAoGBBcDAAIAEgbMAwTOAwUKDwoHBBcDAAIABBIEzAMEDAoPCgcEFwMAAgAFEgTMAw0SCg8KBwQXAwACAAESBMwDExsKDwoHBBcDAAIAAxIEzAMeHwoQCgYEFwMAAwASBswDBM4DBQoPCgcEFwMAAwABEgTMAxMbCg8KBwQXAwACAAYSBMwDExsKEAoIBBcDAAMAAgASBM0DBhsKEQoJBBcDAAMAAgAEEgTNAwYOChEKCQQXAwADAAIABRIEzQMPFAoRCgkEFwMAAwACAAESBM0DFRYKEQoJBBcDAAMAAgADEgTNAxkaCgwKBAQXAgASBNADAiYKDQoFBBcCAAQSBNADAgoKDQoFBBcCAAYSBNADCxUKDQoFBBcCAAESBNADFiEKDQoFBBcCAAMSBNADJCUKmQIKAgQYEgbXAwDfAwEa/QEgVGVzdCB0aGF0IGdyb3VwcyBoYXZlIGRpc2pvaW50IGZpZWxkIG51bWJlcnMgZnJvbSB0aGVpciBzaWJsaW5ncyBhbmQKIHBhcmVudHMuICBUaGlzIGlzIE5PVCBwb3NzaWJsZSBpbiBwcm90bzE7IG9ubHkgZ29vZ2xlLnByb3RvYnVmLiAgV2hlbgogYXR0ZW1wdGluZyB0byBjb21waWxlIHdpdGggcHJvdG8xLCB0aGlzIHdpbGwgZW1pdCBhbiBlcnJvcjsgc28gd2Ugb25seQogaW5jbHVkZSBpdCBpbiBwcm90b2J1Zl91bml0dGVzdF9wcm90by4KIgsgTk9fUFJPVE8xCgoLCgMEGAESBNcDCBoKGQoEBBgCABIE2AMCFyILIE5PX1BST1RPMQoKDQoFBBgCAAQSBNgDAgoKDQoFBBgCAAUSBNgDCxAKDQoFBBgCAAESBNgDERIKDQoFBBgCAAMSBNgDFRYKDgoEBBgCARIG2QMC2wMDCg0KBQQYAgEEEgTZAwIKCg0KBQQYAgEFEgTZAwsQCg0KBQQYAgEBEgTZAxEUCg0KBQQYAgEDEgTZAxcYCg4KBAQYAwASBtkDAtsDAwoNCgUEGAMAARIE2QMRFAoNCgUEGAIBBhIE2QMRFAoOCgYEGAMAAgASBNoDBBkKDwoHBBgDAAIABBIE2gMEDAoPCgcEGAMAAgAFEgTaAw0SCg8KBwQYAwACAAESBNoDExQKDwoHBBgDAAIAAxIE2gMXGAoOCgQEGAICEgbcAwLeAwMKDQoFBBgCAgQSBNwDAgoKDQoFBBgCAgUSBNwDCxAKDQoFBBgCAgESBNwDERQKDQoFBBgCAgMSBNwDFxgKDgoEBBgDARIG3AMC3gMDCg0KBQQYAwEBEgTcAxEUCg0KBQQYAgIGEgTcAxEUCg4KBgQYAwECABIE3QMEGQoPCgcEGAMBAgAEEgTdAwQMCg8KBwQYAwECAAUSBN0DDRIKDwoHBBgDAQIAARIE3QMTFAoPCgcEGAMBAgADEgTdAxcYCjwKAgQZEgbiAwDkAwEaLiBBZGRpdGlvbmFsIG1lc3NhZ2VzIGZvciB0ZXN0aW5nIGxhenkgZmllbGRzLgoKCwoDBBkBEgTiAwgYCgwKBAQZAgASBOMDAjcKDQoFBBkCAAQSBOMDAgoKDQoFBBkCAAYSBOMDCxcKDQoFBBkCAAESBOMDGCMKDQoFBBkCAAMSBOMDJicKDQoFBBkCAAgSBOMDKDYKDgoGBBkCAAgFEgTjAyk1CgwKAgQaEgblAwDnAwEKCwoDBBoBEgTlAwgXCgwKBAQaAgASBOYDAjYKDQoFBBoCAAQSBOYDAgoKDQoFBBoCAAYSBOYDCxcKDQoFBBoCAAESBOYDGCMKDQoFBBoCAAMSBOYDJicKDQoFBBoCAAgSBOYDKDUKDgoGBBoCAAgFEgTmAyk0CikKAgQbEgbqAwDwAwEaGyBOZWVkZWQgZm9yIGEgUHl0aG9uIHRlc3QuCgoLCgMEGwESBOoDCCAKDgoEBBsDABIG6wMC7gMDCg0KBQQbAwABEgTrAwoXCg4KBgQbAwACABIE7AMENAoPCgcEGwMAAgAEEgTsAwQMCg8KBwQbAwACAAUSBOwDDRIKDwoHBBsDAAIAARIE7AMTLwoPCgcEGwMAAgADEgTsAzIzCg4KBgQbAwACARIE7QMERgoPCgcEGwMAAgEEEgTtAwQMCg8KBwQbAwACAQYSBO0DDRsKDwoHBBsDAAIBARIE7QMcQQoPCgcEGwMAAgEDEgTtA0RFCgwKBAQbAgASBO8DAjUKDQoFBBsCAAQSBO8DAgoKDQoFBBsCAAYSBO8DCxgKDQoFBBsCAAESBO8DGTAKDQoFBBsCAAMSBO8DMzQKSwoCBQESBvMDAPsDARo9IFRlc3QgYW4gZW51bSB0aGF0IGhhcyBtdWx0aXBsZSB2YWx1ZXMgd2l0aCB0aGUgc2FtZSBudW1iZXIuCgoLCgMFAQESBPMDBRkKCwoDBQEDEgT0AwIcCgwKBAUBAwISBPQDAhwKDAoEBQECABIE9gMCCwoNCgUFAQIAARIE9gMCBgoNCgUFAQIAAhIE9gMJCgoMCgQFAQIBEgT3AwILCg0KBQUBAgEBEgT3AwIGCg0KBQUBAgECEgT3AwkKCgwKBAUBAgISBPgDAgoKDQoFBQECAgESBPgDAgUKDQoFBQECAgISBPgDCAkKDAoEBQECAxIE+QMCCwoNCgUFAQIDARIE+QMCBgoNCgUFAQIDAhIE+QMJCgoMCgQFAQIEEgT6AwILCg0KBQUBAgQBEgT6AwIGCg0KBQUBAgQCEgT6AwkKCjoKAgUCEgb+AwCGBAEaLCBUZXN0IGFuIGVudW0gd2l0aCBsYXJnZSwgdW5vcmRlcmVkIHZhbHVlcy4KCgsKAwUCARIE/gMFEwoMCgQFAgIAEgT/AwIRCg0KBQUCAgABEgT/AwIKCg0KBQUCAgACEgT/Aw0QCgwKBAUCAgESBIAEAhMKDQoFBQICAQESBIAEAgoKDQoFBQICAQISBIAEDRIKDAoEBQICAhIEgQQCFgoNCgUFAgICARIEgQQCCgoNCgUFAgICAhIEgQQNFQoMCgQFAgIDEgSCBAIRCg0KBQUCAgMBEgSCBAIKCg0KBQUCAgMCEgSCBA0QCgwKBAUCAgQSBIMEAhQKDQoFBQICBAESBIMEAgoKDQoFBQICBAISBIMEDRMKDAoEBQICBRIEhAQCDwoNCgUFAgIFARIEhAQCCgoNCgUFAgIFAhIEhAQNDgoMCgQFAgIGEgSFBAIPCg0KBQUCAgYBEgSFBAIKCg0KBQUCAgYCEgSFBA0OCmgKAgQcEgaKBACYBAEaWiBUZXN0IG1lc3NhZ2Ugd2l0aCBDYW1lbENhc2UgZmllbGQgbmFtZXMuICBUaGlzIHZpb2xhdGVzIFByb3RvY29sIEJ1ZmZlcgogc3RhbmRhcmQgc3R5bGUuCgoLCgMEHAESBIoECB8KDAoEBBwCABIEiwQCJAoNCgUEHAIABBIEiwQCCgoNCgUEHAIABRIEiwQLEAoNCgUEHAIAARIEiwQRHwoNCgUEHAIAAxIEiwQiIwoMCgQEHAIBEgSMBAIiCg0KBQQcAgEEEgSMBAIKCg0KBQQcAgEFEgSMBAsRCg0KBQQcAgEBEgSMBBIdCg0KBQQcAgEDEgSMBCAhCgwKBAQcAgISBI0EAiUKDQoFBBwCAgQSBI0EAgoKDQoFBBwCAgYSBI0ECxYKDQoFBBwCAgESBI0EFyAKDQoFBBwCAgMSBI0EIyQKDAoEBBwCAxIEjgQCKwoNCgUEHAIDBBIEjgQCCgoNCgUEHAIDBhIEjgQLGQoNCgUEHAIDARIEjgQaJgoNCgUEHAIDAxIEjgQpKgoMCgQEHAIEEgSPBAI+Cg0KBQQcAgQEEgSPBAIKCg0KBQQcAgQFEgSPBAsRCg0KBQQcAgQBEgSPBBIiCg0KBQQcAgQDEgSPBCUmCg0KBQQcAgQIEgSPBCc9Cg4KBgQcAgQIARIEjwQoPAoMCgQEHAIFEgSQBAIvCg0KBQQcAgUEEgSQBAIKCg0KBQQcAgUFEgSQBAsRCg0KBQQcAgUBEgSQBBIbCg0KBQQcAgUDEgSQBB4fCg0KBQQcAgUIEgSQBCAuCg4KBgQcAgUIARIEkAQhLQoMCgQEHAIGEgSSBAIsCg0KBQQcAgYEEgSSBAIKCg0KBQQcAgYFEgSSBAsQCg0KBQQcAgYBEgSSBBEnCg0KBQQcAgYDEgSSBCorCgwKBAQcAgcSBJMEAioKDQoFBBwCBwQSBJMEAgoKDQoFBBwCBwUSBJMECxEKDQoFBBwCBwESBJMEEiUKDQoFBBwCBwMSBJMEKCkKDAoEBBwCCBIElAQCLQoNCgUEHAIIBBIElAQCCgoNCgUEHAIIBhIElAQLFgoNCgUEHAIIARIElAQXKAoNCgUEHAIIAxIElAQrLAoMCgQEHAIJEgSVBAI0Cg0KBQQcAgkEEgSVBAIKCg0KBQQcAgkGEgSVBAsZCg0KBQQcAgkBEgSVBBouCg0KBQQcAgkDEgSVBDEzCgwKBAQcAgoSBJYEAkcKDQoFBBwCCgQSBJYEAgoKDQoFBBwCCgUSBJYECxEKDQoFBBwCCgESBJYEEioKDQoFBBwCCgMSBJYELS8KDQoFBBwCCggSBJYEMEYKDgoGBBwCCggBEgSWBDFFCgwKBAQcAgsSBJcEAjgKDQoFBBwCCwQSBJcEAgoKDQoFBBwCCwUSBJcECxEKDQoFBBwCCwESBJcEEiMKDQoFBBwCCwMSBJcEJigKDQoFBBwCCwgSBJcEKTcKDgoGBBwCCwgBEgSXBCo2CosBCgIEHRIGnAQAqwQBGn0gV2UgbGlzdCBmaWVsZHMgb3V0IG9mIG9yZGVyLCB0byBlbnN1cmUgdGhhdCB3ZSdyZSB1c2luZyBmaWVsZCBudW1iZXIgYW5kIG5vdAogZmllbGQgaW5kZXggdG8gZGV0ZXJtaW5lIHNlcmlhbGl6YXRpb24gb3JkZXIuCgoLCgMEHQESBJwECBoKDAoEBB0CABIEnQQCIQoNCgUEHQIABBIEnQQCCgoNCgUEHQIABRIEnQQLEQoNCgUEHQIAARIEnQQSGwoNCgUEHQIAAxIEnQQeIAoLCgMEHQUSBJ4EAhUKDAoEBB0FABIEngQNFAoNCgUEHQUAARIEngQNDgoNCgUEHQUAAhIEngQSFAoMCgQEHQIBEgSfBAIcCg0KBQQdAgEEEgSfBAIKCg0KBQQdAgEFEgSfBAsQCg0KBQQdAgEBEgSfBBEXCg0KBQQdAgEDEgSfBBobCgsKAwQdBRIEoAQCFwoMCgQEHQUBEgSgBA0WCg0KBQQdBQEBEgSgBA0PCg0KBQQdBQECEgSgBBMWCgwKBAQdAgISBKEEAiAKDQoFBB0CAgQSBKEEAgoKDQoFBB0CAgUSBKEECxAKDQoFBB0CAgESBKEEERkKDQoFBB0CAgMSBKEEHB8KDgoEBB0DABIGogQCqAQDCg0KBQQdAwABEgSiBAoXCg4KBgQdAwACABIEowQEGgoPCgcEHQMAAgAEEgSjBAQMCg8KBwQdAwACAAUSBKMEDRIKDwoHBB0DAAIAARIEowQTFQoPCgcEHQMAAgADEgSjBBgZCuQBCgYEHQMAAgESBKcEBBoa0wEgVGhlIGZpZWxkIG5hbWUgImIiIGZhaWxzIHRvIGNvbXBpbGUgaW4gcHJvdG8xIGJlY2F1c2UgaXQgY29uZmxpY3RzIHdpdGgKIGEgbG9jYWwgdmFyaWFibGUgbmFtZWQgImIiIGluIG9uZSBvZiB0aGUgZ2VuZXJhdGVkIG1ldGhvZHMuICBEb2guCiBUaGlzIGZpbGUgbmVlZHMgdG8gY29tcGlsZSBpbiBwcm90bzEgdG8gdGVzdCBiYWNrd2FyZHMtY29tcGF0aWJpbGl0eS4KCg8KBwQdAwACAQQSBKcEBAwKDwoHBB0DAAIBBRIEpwQNEgoPCgcEHQMAAgEBEgSnBBMVCg8KBwQdAwACAQMSBKcEGBkKDAoEBB0CAxIEqgQCNwoNCgUEHQIDBBIEqgQCCgoNCgUEHQIDBhIEqgQLGAoNCgUEHQIDARIEqgQZMAoNCgUEHQIDAxIEqgQzNgoLCgEHEgatBACwBAEKCgoCB0sSBK4EAisKCwoDB0sCEgStBAcZCgsKAwdLBBIErgQCCgoLCgMHSwUSBK4ECxEKCwoDB0sBEgSuBBIlCgsKAwdLAxIErgQoKgoKCgIHTBIErwQCJgoLCgMHTAISBK0EBxkKCwoDB0wEEgSvBAIKCgsKAwdMBRIErwQLEAoLCgMHTAESBK8EESEKCwoDB0wDEgSvBCQlCgwKAgQeEgayBAC3BAEKCwoDBB4BEgSyBAgfCg0KAwQeBhIGswQCtQQDCgwKBAQeBgASBLQEBD4KDQoFBB4GAAISBLMECRsKDQoFBB4GAAQSBLQEBAwKDQoFBB4GAAYSBLQEDSQKDQoFBB4GAAESBLQEJTgKDQoFBB4GAAMSBLQEOz0KDAoEBB4CABIEtgQCIAoNCgUEHgIABBIEtgQCCgoNCgUEHgIABRIEtgQLEQoNCgUEHgIAARIEtgQSGwoNCgUEHgIAAxIEtgQeHwoMCgIEHxIGuQQAxAQBCgsKAwQfARIEuQQIHwoNCgMEHwYSBroEArwEAwoMCgQEHwYAEgS7BAQ+Cg0KBQQfBgACEgS6BAkbCg0KBQQfBgAEEgS7BAQMCg0KBQQfBgAGEgS7BA0kCg0KBQQfBgABEgS7BCU4Cg0KBQQfBgADEgS7BDs9Cg4KBAQfAwASBr0EAsIEAwoNCgUEHwMAARIEvQQKIQoPCgUEHwMABhIGvgQEwAQFCg4KBgQfAwAGABIEvwQGQAoPCgcEHwMABgACEgS+BAsdCg8KBwQfAwAGAAQSBL8EBg4KDwoHBB8DAAYABhIEvwQPJgoPCgcEHwMABgABEgS/BCc6Cg8KBwQfAwAGAAMSBL8EPT8KDgoGBB8DAAIAEgTBBAQiCg8KBwQfAwACAAQSBMEEBAwKDwoHBB8DAAIABRIEwQQNEwoPCgcEHwMAAgABEgTBBBQdCg8KBwQfAwACAAMSBMEEICEKDAoEBB8CABIEwwQCIAoNCgUEHwIABBIEwwQCCgoNCgUEHwIABRIEwwQLEQoNCgUEHwIAARIEwwQSGwoNCgUEHwIAAxIEwwQeHwoMCgIEIBIGxgQA9AQBCgsKAwQgARIExgQIIAoMCgQEIAIAEgTHBAJQCg0KBQQgAgAEEgTHBAIKCg0KBQQgAgAFEgTHBAsQCg0KBQQgAgABEgTHBBEeCg0KBQQgAgADEgTHBCEiCg0KBQQgAgAIEgTHBCNPCg0KBQQgAgAHEgTHBC5OCgwKBAQgAgESBMgEAjoKDQoFBCACAQQSBMgEAgoKDQoFBCACAQUSBMgECxEKDQoFBCACAQESBMgEEh4KDQoFBCACAQMSBMgEISIKDQoFBCACAQgSBMgEIzkKDQoFBCACAQcSBMgELjgKDAoEBCACAhIEyQQCQgoNCgUEIAICBBIEyQQCCgoNCgUEIAICBRIEyQQLEQoNCgUEIAICARIEyQQSHgoNCgUEIAICAxIEyQQhIgoNCgUEIAICCBIEyQQjQQoNCgUEIAICBxIEyQQuQAoMCgQEIAIDEgTKBAI5Cg0KBQQgAgMEEgTKBAIKCg0KBQQgAgMFEgTKBAsQCg0KBQQgAgMBEgTKBBEcCg0KBQQgAgMDEgTKBB8gCg0KBQQgAgMIEgTKBCE4Cg0KBQQgAgMHEgTKBCw3CgwKBAQgAgQSBMsEAkEKDQoFBCACBAQSBMsEAgoKDQoFBCACBAUSBMsECxAKDQoFBCACBAESBMsEERwKDQoFBCACBAMSBMsEHyAKDQoFBCACBAgSBMsEIUAKDQoFBCACBAcSBMsELD8KDAoEBCACBRIEzAQCQQoNCgUEIAIFBBIEzAQCCgoNCgUEIAIFBRIEzAQLEAoNCgUEIAIFARIEzAQRIwoNCgUEIAIFAxIEzAQmKAoNCgUEIAIFCBIEzAQpQAoNCgUEIAIFBxIEzAQ0PwoMCgQEIAIGEgTNBAJJCg0KBQQgAgYEEgTNBAIKCg0KBQQgAgYFEgTNBAsQCg0KBQQgAgYBEgTNBBEjCg0KBQQgAgYDEgTNBCYoCg0KBQQgAgYIEgTNBClICg0KBQQgAgYHEgTNBDRHCt0BCgQEIAIHEgTSBAI9Gs4BIFRoZSBkZWZhdWx0IHZhbHVlIGhlcmUgaXMgVVRGLTggZm9yICJcdTEyMzQiLiAgKFdlIGNvdWxkIGFsc28ganVzdCB0eXBlCiB0aGUgVVRGLTggdGV4dCBkaXJlY3RseSBpbnRvIHRoaXMgdGV4dCBmaWxlIHJhdGhlciB0aGFuIGVzY2FwZSBpdCwgYnV0CiBsb3RzIG9mIHBlb3BsZSB1c2UgZWRpdG9ycyB0aGF0IHdvdWxkIGJlIGNvbmZ1c2VkIGJ5IHRoaXMuKQoKDQoFBCACBwQSBNIEAgoKDQoFBCACBwUSBNIECxEKDQoFBCACBwESBNIEEh0KDQoFBCACBwMSBNIEICEKDQoFBCACBwgSBNIEIjwKDQoFBCACBwcSBNIELTsKQQoEBCACCBIE1QQCLhozIFRlc3RzIGZvciBzaW5nbGUtcHJlY2lzaW9uIGZsb2F0aW5nLXBvaW50IHZhbHVlcy4KCg0KBQQgAggEEgTVBAIKCg0KBQQgAggFEgTVBAsQCg0KBQQgAggBEgTVBBEbCg0KBQQgAggDEgTVBB4fCg0KBQQgAggIEgTVBCAtCg0KBQQgAggHEgTVBCssCgwKBAQgAgkSBNYEAi0KDQoFBCACCQQSBNYEAgoKDQoFBCACCQUSBNYECxAKDQoFBCACCQESBNYEERoKDQoFBCACCQMSBNYEHR4KDQoFBCACCQgSBNYEHywKDQoFBCACCQcSBNYEKisKDAoEBCACChIE1wQCMQoNCgUEIAIKBBIE1wQCCgoNCgUEIAIKBRIE1wQLEAoNCgUEIAIKARIE1wQRHAoNCgUEIAIKAxIE1wQfIAoNCgUEIAIKCBIE1wQhMAoNCgUEIAIKBxIE1wQsLwoMCgQEIAILEgTYBAI4Cg0KBQQgAgsEEgTYBAIKCg0KBQQgAgsFEgTYBAsQCg0KBQQgAgsBEgTYBBEjCg0KBQQgAgsDEgTYBCYoCg0KBQQgAgsIEgTYBCk3Cg0KBQQgAgsHEgTYBDQ2CgwKBAQgAgwSBNkEAjYKDQoFBCACDAQSBNkEAgoKDQoFBCACDAUSBNkECxAKDQoFBCACDAESBNkEER8KDQoFBCACDAMSBNkEIiQKDQoFBCACDAgSBNkEJTUKDQoFBCACDAcSBNkEMDQKHwoEBCACDRIE2wQCMhoRIFVzaW5nIGV4cG9uZW50cwoKDQoFBCACDQQSBNsEAgoKDQoFBCACDQUSBNsECxAKDQoFBCACDQESBNsEERwKDQoFBCACDQMSBNsEHyEKDQoFBCACDQgSBNsEIjEKDQoFBCACDQcSBNsELTAKDAoEBCACDhIE3AQCPgoNCgUEIAIOBBIE3AQCCgoNCgUEIAIOBRIE3AQLEAoNCgUEIAIOARIE3AQRJQoNCgUEIAIOAxIE3AQoKgoNCgUEIAIOCBIE3AQrPQoNCgUEIAIOBxIE3AQ2PAo5CgQEIAIPEgTfBAIyGisgVGV4dCBmb3Igbm9uZmluaXRlIGZsb2F0aW5nLXBvaW50IHZhbHVlcy4KCg0KBQQgAg8EEgTfBAIKCg0KBQQgAg8FEgTfBAsRCg0KBQQgAg8BEgTfBBIcCg0KBQQgAg8DEgTfBB8hCg0KBQQgAg8IEgTfBCIxCg0KBQQgAg8HEgTfBC0wCgwKBAQgAhASBOAEAjcKDQoFBCACEAQSBOAEAgoKDQoFBCACEAUSBOAECxEKDQoFBCACEAESBOAEEiAKDQoFBCACEAMSBOAEIyUKDQoFBCACEAgSBOAEJjYKDQoFBCACEAcSBOAEMTUKDAoEBCACERIE4QQCMgoNCgUEIAIRBBIE4QQCCgoNCgUEIAIRBRIE4QQLEQoNCgUEIAIRARIE4QQSHAoNCgUEIAIRAxIE4QQfIQoNCgUEIAIRCBIE4QQiMQoNCgUEIAIRBxIE4QQtMAoMCgQEIAISEgTiBAIwCg0KBQQgAhIEEgTiBAIKCg0KBQQgAhIFEgTiBAsQCg0KBQQgAhIBEgTiBBEaCg0KBQQgAhIDEgTiBB0fCg0KBQQgAhIIEgTiBCAvCg0KBQQgAhIHEgTiBCsuCgwKBAQgAhMSBOMEAjUKDQoFBCACEwQSBOMEAgoKDQoFBCACEwUSBOMECxAKDQoFBCACEwESBOMEER4KDQoFBCACEwMSBOMEISMKDQoFBCACEwgSBOMEJDQKDQoFBCACEwcSBOMELzMKDAoEBCACFBIE5AQCMAoNCgUEIAIUBBIE5AQCCgoNCgUEIAIUBRIE5AQLEAoNCgUEIAIUARIE5AQRGgoNCgUEIAIUAxIE5AQdHwoNCgUEIAIUCBIE5AQgLwoNCgUEIAIUBxIE5AQrLgrjAQoEBCACFRIE6wQCTBrUASBUZXN0cyBmb3IgQysrIHRyaWdyYXBocy4KIFRyaWdyYXBocyBzaG91bGQgYmUgZXNjYXBlZCBpbiBDKysgZ2VuZXJhdGVkIGZpbGVzLCBidXQgdGhleSBzaG91bGQgbm90IGJlCiBlc2NhcGVkIGZvciBvdGhlciBsYW5ndWFnZXMuCiBOb3RlIHRoYXQgaW4gLnByb3RvIGZpbGUsICJcPyIgaXMgYSB2YWxpZCB3YXkgdG8gZXNjYXBlID8gaW4gc3RyaW5nCiBsaXRlcmFscy4KCg0KBQQgAhUEEgTrBAIKCg0KBQQgAhUFEgTrBAsRCg0KBQQgAhUBEgTrBBIeCg0KBQQgAhUDEgTrBCEjCg0KBQQgAhUIEgTrBCRLCg0KBQQgAhUHEgTrBC9KCj8KBAQgAhYSBO4EAkAaMSBTdHJpbmcgZGVmYXVsdHMgY29udGFpbmluZyB0aGUgY2hhcmFjdGVyICdcMDAwJwoKDQoFBCACFgQSBO4EAgoKDQoFBCACFgUSBO4ECxEKDQoFBCACFgESBO4EEiIKDQoFBCACFgMSBO4EJScKDQoFBCACFggSBO4EKD8KDQoFBCACFgcSBO4EMz4KDAoEBCACFxIE7wQCPgoNCgUEIAIXBBIE7wQCCgoNCgUEIAIXBRIE7wQLEAoNCgUEIAIXARIE7wQRIAoNCgUEIAIXAxIE7wQjJQoNCgUEIAIXCBIE7wQmPQoNCgUEIAIXBxIE7wQxPAoOCgQEIAIYEgbwBALxBDIKDQoFBCACGAQSBPAEAgoKDQoFBCACGAUSBPAECxEKDQoFBCACGAESBPAEEigKDQoFBCACGAMSBPAEKy0KDQoFBCACGAgSBPEEBjEKDgoGBCACGAgBEgTxBAcbCg0KBQQgAhgHEgTxBCcwCgwKBAQgAhkSBPIEAkoKDQoFBCACGQQSBPIEAgoKDQoFBCACGQUSBPIECxEKDQoFBCACGQESBPIEEiAKDQoFBCACGQMSBPIEIyUKDQoFBCACGQgSBPIEJkkKDgoGBCACGQgBEgTyBCczCg0KBQQgAhkHEgTyBD9ICgwKBAQgAhoSBPMEAkMKDQoFBCACGgQSBPMEAgoKDQoFBCACGgUSBPMECxEKDQoFBCACGgESBPMEEiQKDQoFBCACGgMSBPMEJykKDQoFBCACGggSBPMEKkIKDQoFBCACGgcSBPMENUEKDAoCBCESBvYEAPgEAQoLCgMEIQESBPYECBkKDAoEBCECABIE9wQCKgoNCgUEIQIABBIE9wQCCgoNCgUEIQIABhIE9wQLGQoNCgUEIQIAARIE9wQaJQoNCgUEIQIAAxIE9wQoKQpICgIEIhIG+wQA/QQBGjogVGVzdCBTdHJpbmcgYW5kIEJ5dGVzOiBzdHJpbmcgaXMgZm9yIHZhbGlkIFVURi04IHN0cmluZ3MKCgsKAwQiARIE+wQIEQoMCgQEIgIAEgT8BAIbCg0KBQQiAgAEEgT8BAIKCg0KBQQiAgAFEgT8BAsRCg0KBQQiAgABEgT8BBIWCg0KBQQiAgADEgT8BBkaCgwKAgQjEgb/BACBBQEKCwoDBCMBEgT/BAgSCgwKBAQjAgASBIAFAhsKDQoFBCMCAAQSBIAFAgoKDQoFBCMCAAUSBIAFCxEKDQoFBCMCAAESBIAFEhYKDQoFBCMCAAMSBIAFGRoKDAoCBCQSBoMFAIUFAQoLCgMEJAESBIMFCBAKDAoEBCQCABIEhAUCGgoNCgUEJAIABBIEhAUCCgoNCgUEJAIABRIEhAULEAoNCgUEJAIAARIEhAURFQoNCgUEJAIAAxIEhAUYGQoMCgIEJRIGhwUAiQUBCgsKAwQlARIEhwUIEQoMCgQEJQIAEgSIBQIaCg0KBQQlAgAEEgSIBQIKCg0KBQQlAgAFEgSIBQsQCg0KBQQlAgABEgSIBREVCg0KBQQlAgADEgSIBRgZCk4KAgQmEgaMBQCOBQEaQCBUZXN0IGludDMyLCB1aW50MzIsIGludDY0LCB1aW50NjQsIGFuZCBib29sIGFyZSBhbGwgY29tcGF0aWJsZQoKCwoDBCYBEgSMBQgUCgwKBAQmAgASBI0FAhoKDQoFBCYCAAQSBI0FAgoKDQoFBCYCAAUSBI0FCxAKDQoFBCYCAAESBI0FERUKDQoFBCYCAAMSBI0FGBkKDAoCBCcSBpAFAJIFAQoLCgMEJwESBJAFCBUKDAoEBCcCABIEkQUCGwoNCgUEJwIABBIEkQUCCgoNCgUEJwIABRIEkQULEQoNCgUEJwIAARIEkQUSFgoNCgUEJwIAAxIEkQUZGgoMCgIEKBIGlAUAlgUBCgsKAwQoARIElAUIFAoMCgQEKAIAEgSVBQIaCg0KBQQoAgAEEgSVBQIKCg0KBQQoAgAFEgSVBQsQCg0KBQQoAgABEgSVBREVCg0KBQQoAgADEgSVBRgZCgwKAgQpEgaYBQCaBQEKCwoDBCkBEgSYBQgVCgwKBAQpAgASBJkFAhsKDQoFBCkCAAQSBJkFAgoKDQoFBCkCAAUSBJkFCxEKDQoFBCkCAAESBJkFEhYKDQoFBCkCAAMSBJkFGRoKDAoCBCoSBpwFAJ4FAQoLCgMEKgESBJwFCBMKDAoEBCoCABIEnQUCGQoNCgUEKgIABBIEnQUCCgoNCgUEKgIABRIEnQULDwoNCgUEKgIAARIEnQUQFAoNCgUEKgIAAxIEnQUXGAocCgIEKxIGoQUAqwUBGg4gVGVzdCBvbmVvZnMuCgoLCgMEKwESBKEFCBEKDgoEBCsIABIGogUCqgUDCg0KBQQrCAABEgSiBQgLCgwKBAQrAgASBKMFBBYKDQoFBCsCAAUSBKMFBAkKDQoFBCsCAAESBKMFChEKDQoFBCsCAAMSBKMFFBUKDAoEBCsCARIEpAUEGgoNCgUEKwIBBRIEpAUECgoNCgUEKwIBARIEpAULFQoNCgUEKwIBAxIEpAUYGQoMCgQEKwICEgSlBQQhCg0KBQQrAgIGEgSlBQQQCg0KBQQrAgIBEgSlBREcCg0KBQQrAgIDEgSlBR8gCg4KBAQrAgMSBqYFBKkFBQoNCgUEKwIDBRIEpgUECQoNCgUEKwIDARIEpgUKEgoNCgUEKwIDAxIEpgUVFgoOCgQEKwMAEgamBQSpBQUKDQoFBCsDAAESBKYFChIKDQoFBCsCAwYSBKYFChIKDgoGBCsDAAIAEgSnBQYbCg8KBwQrAwACAAQSBKcFBg4KDwoHBCsDAAIABRIEpwUPFAoPCgcEKwMAAgABEgSnBRUWCg8KBwQrAwACAAMSBKcFGRoKDgoGBCsDAAIBEgSoBQYcCg8KBwQrAwACAQQSBKgFBg4KDwoHBCsDAAIBBRIEqAUPFQoPCgcEKwMAAgEBEgSoBRYXCg8KBwQrAwACAQMSBKgFGhsKDAoCBCwSBq0FALUFAQoLCgMELAESBK0FCCQKDAoEBCwCABIErgUCHQoNCgUELAIABBIErgUCCgoNCgUELAIABRIErgULEAoNCgUELAIAARIErgURGAoNCgUELAIAAxIErgUbHAoMCgQELAIBEgSvBQIhCg0KBQQsAgEEEgSvBQIKCg0KBQQsAgEFEgSvBQsRCg0KBQQsAgEBEgSvBRIcCg0KBQQsAgEDEgSvBR8gCgwKBAQsAgISBLAFAigKDQoFBCwCAgQSBLAFAgoKDQoFBCwCAgYSBLAFCxcKDQoFBCwCAgESBLAFGCMKDQoFBCwCAgMSBLAFJicKDgoEBCwCAxIGsQUCtAUDCg0KBQQsAgMEEgSxBQIKCg0KBQQsAgMFEgSxBQsQCg0KBQQsAgMBEgSxBREZCg0KBQQsAgMDEgSxBRwdCg4KBAQsAwASBrEFArQFAwoNCgUELAMAARIEsQURGQoNCgUELAIDBhIEsQURGQoOCgYELAMAAgASBLIFBBkKDwoHBCwDAAIABBIEsgUEDAoPCgcELAMAAgAFEgSyBQ0SCg8KBwQsAwACAAESBLIFExQKDwoHBCwDAAIAAxIEsgUXGAoOCgYELAMAAgESBLMFBBoKDwoHBCwDAAIBBBIEswUEDAoPCgcELAMAAgEFEgSzBQ0TCg8KBwQsAwACAQESBLMFFBUKDwoHBCwDAAIBAxIEswUYGQoMCgIELRIGtwUA3QUBCgsKAwQtARIEtwUIEgoOCgQELQgAEga4BQLFBQMKDQoFBC0IAAESBLgFCAsKDAoEBC0CABIEuQUEFgoNCgUELQIABRIEuQUECQoNCgUELQIAARIEuQUKEQoNCgUELQIAAxIEuQUUFQoMCgQELQIBEgS6BQQaCg0KBQQtAgEFEgS6BQQKCg0KBQQtAgEBEgS6BQsVCg0KBQQtAgEDEgS6BRgZCgwKBAQtAgISBLsFBCcKDQoFBC0CAgUSBLsFBAoKDQoFBC0CAgESBLsFCxMKDQoFBC0CAgMSBLsFFhcKDQoFBC0CAggSBLsFGCYKDgoGBC0CAggBEgS7BRklCgwKBAQtAgMSBLwFBDcKDQoFBC0CAwUSBLwFBAoKDQoFBC0CAwESBLwFCxsKDQoFBC0CAwMSBLwFHh8KDQoFBC0CAwgSBLwFIDYKDgoGBC0CAwgBEgS8BSE1CgwKBAQtAgQSBL0FBBgKDQoFBC0CBAUSBL0FBAkKDQoFBC0CBAESBL0FChMKDQoFBC0CBAMSBL0FFhcKDAoEBC0CBRIEvgUEHAoNCgUELQIFBhIEvgUEDgoNCgUELQIFARIEvgUPFwoNCgUELQIFAxIEvgUaGwoMCgQELQIGEgS/BQQiCg0KBQQtAgYGEgS/BQQRCg0KBQQtAgYBEgS/BRIdCg0KBQQtAgYDEgS/BSAhCg4KBAQtAgcSBsAFBMMFBQoNCgUELQIHBRIEwAUECQoNCgUELQIHARIEwAUKEgoNCgUELQIHAxIEwAUVFgoOCgQELQMAEgbABQTDBQUKDQoFBC0DAAESBMAFChIKDQoFBC0CBwYSBMAFChIKDgoGBC0DAAIAEgTBBQYbCg8KBwQtAwACAAQSBMEFBg4KDwoHBC0DAAIABRIEwQUPFAoPCgcELQMAAgABEgTBBRUWCg8KBwQtAwACAAMSBMEFGRoKDgoGBC0DAAIBEgTCBQYdCg8KBwQtAwACAQQSBMIFBg4KDwoHBC0DAAIBBRIEwgUPFQoPCgcELQMAAgEBEgTCBRYXCg8KBwQtAwACAQMSBMIFGhwKDAoEBC0CCBIExAUENgoNCgUELQIIBhIExAUEEQoNCgUELQIIARIExAUSIgoNCgUELQIIAxIExAUlJwoNCgUELQIICBIExAUoNQoOCgYELQIICAUSBMQFKTQKDgoEBC0IARIGxwUCzgUDCg0KBQQtCAEBEgTHBQgLCgwKBAQtAgkSBMgFBCUKDQoFBC0CCQUSBMgFBAkKDQoFBC0CCQESBMgFChEKDQoFBC0CCQMSBMgFFBYKDQoFBC0CCQgSBMgFFyQKDQoFBC0CCQcSBMgFIiMKDAoEBC0CChIEyQUEMAoNCgUELQIKBRIEyQUECgoNCgUELQIKARIEyQULFQoNCgUELQIKAxIEyQUYGgoNCgUELQIKCBIEyQUbLwoNCgUELQIKBxIEyQUmLgoMCgQELQILEgTKBQQ6Cg0KBQQtAgsFEgTKBQQKCg0KBQQtAgsBEgTKBQsTCg0KBQQtAgsDEgTKBRYYCg0KBQQtAgsIEgTKBRk5Cg4KBgQtAgsIARIEygUaJgoNCgUELQILBxIEygUyOAoMCgQELQIMEgTLBQRMCg0KBQQtAgwFEgTLBQQKCg0KBQQtAgwBEgTLBQsbCg0KBQQtAgwDEgTLBR4gCg0KBQQtAgwIEgTLBSFLCg4KBgQtAgwIARIEywUiNgoNCgUELQIMBxIEywVCSgoMCgQELQINEgTMBQQtCg0KBQQtAg0FEgTMBQQJCg0KBQQtAg0BEgTMBQoTCg0KBQQtAg0DEgTMBRYYCg0KBQQtAg0IEgTMBRksCg0KBQQtAg0HEgTMBSQrCgwKBAQtAg4SBM0FBC0KDQoFBC0CDgYSBM0FBA4KDQoFBC0CDgESBM0FDxcKDQoFBC0CDgMSBM0FGhwKDQoFBC0CDggSBM0FHSwKDQoFBC0CDgcSBM0FKCsKDAoEBC0CDxIE0AUCHgoNCgUELQIPBBIE0AUCCgoNCgUELQIPBRIE0AULEAoNCgUELQIPARIE0AURGAoNCgUELQIPAxIE0AUbHQoMCgQELQIQEgTRBQI0Cg0KBQQtAhAEEgTRBQIKCg0KBQQtAhAFEgTRBQsRCg0KBQQtAhABEgTRBRIcCg0KBQQtAhADEgTRBR8hCg0KBQQtAhAIEgTRBSIzCg0KBQQtAhAHEgTRBS0yCg4KBAQtAwESBtMFAtYFAwoNCgUELQMBARIE0wUKFwoOCgYELQMBAgASBNQFBB8KDwoHBC0DAQIABBIE1AUEDAoPCgcELQMBAgAFEgTUBQ0SCg8KBwQtAwECAAESBNQFExoKDwoHBC0DAQIAAxIE1AUdHgoOCgYELQMBAgESBNUFBCEKDwoHBC0DAQIBBBIE1QUEDAoPCgcELQMBAgEFEgTVBQ0SCg8KBwQtAwECAQESBNUFExwKDwoHBC0DAQIBAxIE1QUfIAoOCgQELQQAEgbYBQLcBQMKDQoFBC0EAAESBNgFBxEKDgoGBC0EAAIAEgTZBQQMCg8KBwQtBAACAAESBNkFBAcKDwoHBC0EAAIAAhIE2QUKCwoOCgYELQQAAgESBNoFBAwKDwoHBC0EAAIBARIE2gUEBwoPCgcELQQAAgECEgTaBQoLCg4KBgQtBAACAhIE2wUEDAoPCgcELQQAAgIBEgTbBQQHCg8KBwQtBAACAgISBNsFCgsKDAoCBC4SBt8FAOgFAQoLCgMELgESBN8FCBkKDgoEBC4IABIG4AUC5AUDCg0KBQQuCAABEgTgBQgLCgwKBAQuAgASBOEFBBYKDQoFBC4CAAUSBOEFBAkKDQoFBC4CAAESBOEFChEKDQoFBC4CAAMSBOEFFBUKDAoEBC4CARIE4gUEGgoNCgUELgIBBRIE4gUECgoNCgUELgIBARIE4gULFQoNCgUELgIBAxIE4gUYGQoMCgQELgICEgTjBQQiCg0KBQQuAgIGEgTjBQQRCg0KBQQuAgIBEgTjBRIdCg0KBQQuAgIDEgTjBSAhCg4KBAQuAwASBuUFAucFAwoNCgUELgMAARIE5QUKFwoOCgYELgMAAgASBOYFBCgKDwoHBC4DAAIABBIE5gUEDAoPCgcELgMAAgAFEgTmBQ0TCg8KBwQuAwACAAESBOYFFCMKDwoHBC4DAAIAAxIE5gUmJwoMCgIELxIG6gUA7wUBCgsKAwQvARIE6gUIFwoMCgQELwIAEgTrBQIkCg0KBQQvAgAGEgTrBQIbCg0KBQQvAgABEgTrBRwfCg0KBQQvAgADEgTrBSIjCg4KBAQvAwESBuwFAu4FAwoNCgUELwMBARIE7AUKFwoOCgYELwMBAgASBO0FBCYKDwoHBC8DAQIABBIE7QUEDAoPCgcELwMBAgAFEgTtBQ0SCg8KBwQvAwECAAESBO0FEyEKDwoHBC8DAQIAAxIE7QUkJQovCgIEMBIG8wUAggYBMiEgVGVzdCBtZXNzYWdlcyBmb3IgcGFja2VkIGZpZWxkcwoKCwoDBDABEgTzBQgXCgwKBAQwAgASBPQFAjMKDQoFBDACAAQSBPQFAgoKDQoFBDACAAUSBPQFCxAKDQoFBDACAAESBPQFER0KDQoFBDACAAMSBPQFICIKDQoFBDACAAgSBPQFIzIKDgoGBDACAAgCEgT0BSQxCgwKBAQwAgESBPUFAjMKDQoFBDACAQQSBPUFAgoKDQoFBDACAQUSBPUFCxAKDQoFBDACAQESBPUFER0KDQoFBDACAQMSBPUFICIKDQoFBDACAQgSBPUFIzIKDgoGBDACAQgCEgT1BSQxCgwKBAQwAgISBPYFAjUKDQoFBDACAgQSBPYFAgoKDQoFBDACAgUSBPYFCxEKDQoFBDACAgESBPYFEh8KDQoFBDACAgMSBPYFIiQKDQoFBDACAggSBPYFJTQKDgoGBDACAggCEgT2BSYzCgwKBAQwAgMSBPcFAjUKDQoFBDACAwQSBPcFAgoKDQoFBDACAwUSBPcFCxEKDQoFBDACAwESBPcFEh8KDQoFBDACAwMSBPcFIiQKDQoFBDACAwgSBPcFJTQKDgoGBDACAwgCEgT3BSYzCgwKBAQwAgQSBPgFAjUKDQoFBDACBAQSBPgFAgoKDQoFBDACBAUSBPgFCxEKDQoFBDACBAESBPgFEh8KDQoFBDACBAMSBPgFIiQKDQoFBDACBAgSBPgFJTQKDgoGBDACBAgCEgT4BSYzCgwKBAQwAgUSBPkFAjUKDQoFBDACBQQSBPkFAgoKDQoFBDACBQUSBPkFCxEKDQoFBDACBQESBPkFEh8KDQoFBDACBQMSBPkFIiQKDQoFBDACBQgSBPkFJTQKDgoGBDACBQgCEgT5BSYzCgwKBAQwAgYSBPoFAjcKDQoFBDACBgQSBPoFAgoKDQoFBDACBgUSBPoFCxIKDQoFBDACBgESBPoFEyEKDQoFBDACBgMSBPoFJCYKDQoFBDACBggSBPoFJzYKDgoGBDACBggCEgT6BSg1CgwKBAQwAgcSBPsFAjcKDQoFBDACBwQSBPsFAgoKDQoFBDACBwUSBPsFCxIKDQoFBDACBwESBPsFEyEKDQoFBDACBwMSBPsFJCYKDQoFBDACBwgSBPsFJzYKDgoGBDACBwgCEgT7BSg1CgwKBAQwAggSBPwFAjkKDQoFBDACCAQSBPwFAgoKDQoFBDACCAUSBPwFCxMKDQoFBDACCAESBPwFFCMKDQoFBDACCAMSBPwFJigKDQoFBDACCAgSBPwFKTgKDgoGBDACCAgCEgT8BSo3CgwKBAQwAgkSBP0FAjkKDQoFBDACCQQSBP0FAgoKDQoFBDACCQUSBP0FCxMKDQoFBDACCQESBP0FFCMKDQoFBDACCQMSBP0FJigKDQoFBDACCQgSBP0FKTgKDgoGBDACCQgCEgT9BSo3CgwKBAQwAgoSBP4FAjQKDQoFBDACCgQSBP4FAgoKDQoFBDACCgUSBP4FCxAKDQoFBDACCgESBP4FER0KDQoFBDACCgMSBP4FICMKDQoFBDACCggSBP4FJDMKDgoGBDACCggCEgT+BSUyCgwKBAQwAgsSBP8FAjYKDQoFBDACCwQSBP8FAgoKDQoFBDACCwUSBP8FCxEKDQoFBDACCwESBP8FEh8KDQoFBDACCwMSBP8FIiUKDQoFBDACCwgSBP8FJjUKDgoGBDACCwgCEgT/BSc0CgwKBAQwAgwSBIAGAjIKDQoFBDACDAQSBIAGAgoKDQoFBDACDAUSBIAGCw8KDQoFBDACDAESBIAGEBsKDQoFBDACDAMSBIAGHiEKDQoFBDACDAgSBIAGIjEKDgoGBDACDAgCEgSABiMwCgwKBAQwAg0SBIEGAjkKDQoFBDACDQQSBIEGAgoKDQoFBDACDQYSBIEGCxYKDQoFBDACDQESBIEGFyIKDQoFBDACDQMSBIEGJSgKDQoFBDACDQgSBIEGKTgKDgoGBDACDQgCEgSBBio3Co0BCgIEMRIGhgYAlQYBGn8gQSBtZXNzYWdlIHdpdGggdGhlIHNhbWUgZmllbGRzIGFzIFRlc3RQYWNrZWRUeXBlcywgYnV0IHdpdGhvdXQgcGFja2luZy4gVXNlZAogdG8gdGVzdCBwYWNrZWQgPC0+IHVucGFja2VkIHdpcmUgY29tcGF0aWJpbGl0eS4KCgsKAwQxARIEhgYIGQoMCgQEMQIAEgSHBgI2Cg0KBQQxAgAEEgSHBgIKCg0KBQQxAgAFEgSHBgsQCg0KBQQxAgABEgSHBhEfCg0KBQQxAgADEgSHBiIkCg0KBQQxAgAIEgSHBiU1Cg4KBgQxAgAIAhIEhwYmNAoMCgQEMQIBEgSIBgI2Cg0KBQQxAgEEEgSIBgIKCg0KBQQxAgEFEgSIBgsQCg0KBQQxAgEBEgSIBhEfCg0KBQQxAgEDEgSIBiIkCg0KBQQxAgEIEgSIBiU1Cg4KBgQxAgEIAhIEiAYmNAoMCgQEMQICEgSJBgI4Cg0KBQQxAgIEEgSJBgIKCg0KBQQxAgIFEgSJBgsRCg0KBQQxAgIBEgSJBhIhCg0KBQQxAgIDEgSJBiQmCg0KBQQxAgIIEgSJBic3Cg4KBgQxAgIIAhIEiQYoNgoMCgQEMQIDEgSKBgI4Cg0KBQQxAgMEEgSKBgIKCg0KBQQxAgMFEgSKBgsRCg0KBQQxAgMBEgSKBhIhCg0KBQQxAgMDEgSKBiQmCg0KBQQxAgMIEgSKBic3Cg4KBgQxAgMIAhIEigYoNgoMCgQEMQIEEgSLBgI4Cg0KBQQxAgQEEgSLBgIKCg0KBQQxAgQFEgSLBgsRCg0KBQQxAgQBEgSLBhIhCg0KBQQxAgQDEgSLBiQmCg0KBQQxAgQIEgSLBic3Cg4KBgQxAgQIAhIEiwYoNgoMCgQEMQIFEgSMBgI4Cg0KBQQxAgUEEgSMBgIKCg0KBQQxAgUFEgSMBgsRCg0KBQQxAgUBEgSMBhIhCg0KBQQxAgUDEgSMBiQmCg0KBQQxAgUIEgSMBic3Cg4KBgQxAgUIAhIEjAYoNgoMCgQEMQIGEgSNBgI6Cg0KBQQxAgYEEgSNBgIKCg0KBQQxAgYFEgSNBgsSCg0KBQQxAgYBEgSNBhMjCg0KBQQxAgYDEgSNBiYoCg0KBQQxAgYIEgSNBik5Cg4KBgQxAgYIAhIEjQYqOAoMCgQEMQIHEgSOBgI6Cg0KBQQxAgcEEgSOBgIKCg0KBQQxAgcFEgSOBgsSCg0KBQQxAgcBEgSOBhMjCg0KBQQxAgcDEgSOBiYoCg0KBQQxAgcIEgSOBik5Cg4KBgQxAgcIAhIEjgYqOAoMCgQEMQIIEgSPBgI8Cg0KBQQxAggEEgSPBgIKCg0KBQQxAggFEgSPBgsTCg0KBQQxAggBEgSPBhQlCg0KBQQxAggDEgSPBigqCg0KBQQxAggIEgSPBis7Cg4KBgQxAggIAhIEjwYsOgoMCgQEMQIJEgSQBgI8Cg0KBQQxAgkEEgSQBgIKCg0KBQQxAgkFEgSQBgsTCg0KBQQxAgkBEgSQBhQlCg0KBQQxAgkDEgSQBigqCg0KBQQxAgkIEgSQBis7Cg4KBgQxAgkIAhIEkAYsOgoMCgQEMQIKEgSRBgI3Cg0KBQQxAgoEEgSRBgIKCg0KBQQxAgoFEgSRBgsQCg0KBQQxAgoBEgSRBhEfCg0KBQQxAgoDEgSRBiIlCg0KBQQxAgoIEgSRBiY2Cg4KBgQxAgoIAhIEkQYnNQoMCgQEMQILEgSSBgI5Cg0KBQQxAgsEEgSSBgIKCg0KBQQxAgsFEgSSBgsRCg0KBQQxAgsBEgSSBhIhCg0KBQQxAgsDEgSSBiQnCg0KBQQxAgsIEgSSBig4Cg4KBgQxAgsIAhIEkgYpNwoMCgQEMQIMEgSTBgI1Cg0KBQQxAgwEEgSTBgIKCg0KBQQxAgwFEgSTBgsPCg0KBQQxAgwBEgSTBhAdCg0KBQQxAgwDEgSTBiAjCg0KBQQxAgwIEgSTBiQ0Cg4KBgQxAgwIAhIEkwYlMwoMCgQEMQINEgSUBgI8Cg0KBQQxAg0EEgSUBgIKCg0KBQQxAg0GEgSUBgsWCg0KBQQxAg0BEgSUBhckCg0KBQQxAg0DEgSUBicqCg0KBQQxAg0IEgSUBis7Cg4KBgQxAg0IAhIElAYsOgoMCgIEMhIGlwYAmQYBCgsKAwQyARIElwYIHAoLCgMEMgUSBJgGAhYKDAoEBDIFABIEmAYNFQoNCgUEMgUAARIEmAYNDgoNCgUEMgUAAhIEmAYSFQoLCgEHEgabBgCqBgEKCgoCB00SBJwGAj0KCwoDB00CEgSbBgcbCgsKAwdNBBIEnAYCCgoLCgMHTQUSBJwGCxAKCwoDB00BEgScBhEnCgsKAwdNAxIEnAYqLAoLCgMHTQgSBJwGLTwKDAoEB00IAhIEnAYuOwoKCgIHThIEnQYCPQoLCgMHTgISBJsGBxsKCwoDB04EEgSdBgIKCgsKAwdOBRIEnQYLEAoLCgMHTgESBJ0GEScKCwoDB04DEgSdBiosCgsKAwdOCBIEnQYtPAoMCgQHTggCEgSdBi47CgoKAgdPEgSeBgI/CgsKAwdPAhIEmwYHGwoLCgMHTwQSBJ4GAgoKCwoDB08FEgSeBgsRCgsKAwdPARIEngYSKQoLCgMHTwMSBJ4GLC4KCwoDB08IEgSeBi8+CgwKBAdPCAISBJ4GMD0KCgoCB1ASBJ8GAj8KCwoDB1ACEgSbBgcbCgsKAwdQBBIEnwYCCgoLCgMHUAUSBJ8GCxEKCwoDB1ABEgSfBhIpCgsKAwdQAxIEnwYsLgoLCgMHUAgSBJ8GLz4KDAoEB1AIAhIEnwYwPQoKCgIHURIEoAYCPwoLCgMHUQISBJsGBxsKCwoDB1EEEgSgBgIKCgsKAwdRBRIEoAYLEQoLCgMHUQESBKAGEikKCwoDB1EDEgSgBiwuCgsKAwdRCBIEoAYvPgoMCgQHUQgCEgSgBjA9CgoKAgdSEgShBgI/CgsKAwdSAhIEmwYHGwoLCgMHUgQSBKEGAgoKCwoDB1IFEgShBgsRCgsKAwdSARIEoQYSKQoLCgMHUgMSBKEGLC4KCwoDB1IIEgShBi8+CgwKBAdSCAISBKEGMD0KCgoCB1MSBKIGAkEKCwoDB1MCEgSbBgcbCgsKAwdTBBIEogYCCgoLCgMHUwUSBKIGCxIKCwoDB1MBEgSiBhMrCgsKAwdTAxIEogYuMAoLCgMHUwgSBKIGMUAKDAoEB1MIAhIEogYyPwoKCgIHVBIEowYCQQoLCgMHVAISBJsGBxsKCwoDB1QEEgSjBgIKCgsKAwdUBRIEowYLEgoLCgMHVAESBKMGEysKCwoDB1QDEgSjBi4wCgsKAwdUCBIEowYxQAoMCgQHVAgCEgSjBjI/CgoKAgdVEgSkBgJDCgsKAwdVAhIEmwYHGwoLCgMHVQQSBKQGAgoKCwoDB1UFEgSkBgsTCgsKAwdVARIEpAYULQoLCgMHVQMSBKQGMDIKCwoDB1UIEgSkBjNCCgwKBAdVCAISBKQGNEEKCgoCB1YSBKUGAkMKCwoDB1YCEgSbBgcbCgsKAwdWBBIEpQYCCgoLCgMHVgUSBKUGCxMKCwoDB1YBEgSlBhQtCgsKAwdWAxIEpQYwMgoLCgMHVggSBKUGM0IKDAoEB1YIAhIEpQY0QQoKCgIHVxIEpgYCPgoLCgMHVwISBJsGBxsKCwoDB1cEEgSmBgIKCgsKAwdXBRIEpgYLEAoLCgMHVwESBKYGEScKCwoDB1cDEgSmBiotCgsKAwdXCBIEpgYuPQoMCgQHVwgCEgSmBi88CgoKAgdYEgSnBgJACgsKAwdYAhIEmwYHGwoLCgMHWAQSBKcGAgoKCwoDB1gFEgSnBgsRCgsKAwdYARIEpwYSKQoLCgMHWAMSBKcGLC8KCwoDB1gIEgSnBjA/CgwKBAdYCAISBKcGMT4KCgoCB1kSBKgGAjwKCwoDB1kCEgSbBgcbCgsKAwdZBBIEqAYCCgoLCgMHWQUSBKgGCw8KCwoDB1kBEgSoBhAlCgsKAwdZAxIEqAYoKwoLCgMHWQgSBKgGLDsKDAoEB1kIAhIEqAYtOgoKCgIHWhIEqQYCQwoLCgMHWgISBJsGBxsKCwoDB1oEEgSpBgIKCgsKAwdaBhIEqQYLFgoLCgMHWgESBKkGFywKCwoDB1oDEgSpBi8yCgsKAwdaCBIEqQYzQgoMCgQHWggCEgSpBjRBCgwKAgQzEgasBgCuBgEKCwoDBDMBEgSsBggeCgsKAwQzBRIErQYCFgoMCgQEMwUAEgStBg0VCg0KBQQzBQABEgStBg0OCg0KBQQzBQACEgStBhIVCgsKAQcSBrAGAL8GAQoKCgIHWxIEsQYCQAoLCgMHWwISBLAGBx0KCwoDB1sEEgSxBgIKCgsKAwdbBRIEsQYLEAoLCgMHWwESBLEGESkKCwoDB1sDEgSxBiwuCgsKAwdbCBIEsQYvPwoMCgQHWwgCEgSxBjA+CgoKAgdcEgSyBgJACgsKAwdcAhIEsAYHHQoLCgMHXAQSBLIGAgoKCwoDB1wFEgSyBgsQCgsKAwdcARIEsgYRKQoLCgMHXAMSBLIGLC4KCwoDB1wIEgSyBi8/CgwKBAdcCAISBLIGMD4KCgoCB10SBLMGAkIKCwoDB10CEgSwBgcdCgsKAwddBBIEswYCCgoLCgMHXQUSBLMGCxEKCwoDB10BEgSzBhIrCgsKAwddAxIEswYuMAoLCgMHXQgSBLMGMUEKDAoEB10IAhIEswYyQAoKCgIHXhIEtAYCQgoLCgMHXgISBLAGBx0KCwoDB14EEgS0BgIKCgsKAwdeBRIEtAYLEQoLCgMHXgESBLQGEisKCwoDB14DEgS0Bi4wCgsKAwdeCBIEtAYxQQoMCgQHXggCEgS0BjJACgoKAgdfEgS1BgJCCgsKAwdfAhIEsAYHHQoLCgMHXwQSBLUGAgoKCwoDB18FEgS1BgsRCgsKAwdfARIEtQYSKwoLCgMHXwMSBLUGLjAKCwoDB18IEgS1BjFBCgwKBAdfCAISBLUGMkAKCgoCB2ASBLYGAkIKCwoDB2ACEgSwBgcdCgsKAwdgBBIEtgYCCgoLCgMHYAUSBLYGCxEKCwoDB2ABEgS2BhIrCgsKAwdgAxIEtgYuMAoLCgMHYAgSBLYGMUEKDAoEB2AIAhIEtgYyQAoKCgIHYRIEtwYCRAoLCgMHYQISBLAGBx0KCwoDB2EEEgS3BgIKCgsKAwdhBRIEtwYLEgoLCgMHYQESBLcGEy0KCwoDB2EDEgS3BjAyCgsKAwdhCBIEtwYzQwoMCgQHYQgCEgS3BjRCCgoKAgdiEgS4BgJECgsKAwdiAhIEsAYHHQoLCgMHYgQSBLgGAgoKCwoDB2IFEgS4BgsSCgsKAwdiARIEuAYTLQoLCgMHYgMSBLgGMDIKCwoDB2IIEgS4BjNDCgwKBAdiCAISBLgGNEIKCgoCB2MSBLkGAkYKCwoDB2MCEgSwBgcdCgsKAwdjBBIEuQYCCgoLCgMHYwUSBLkGCxMKCwoDB2MBEgS5BhQvCgsKAwdjAxIEuQYyNAoLCgMHYwgSBLkGNUUKDAoEB2MIAhIEuQY2RAoKCgIHZBIEugYCRgoLCgMHZAISBLAGBx0KCwoDB2QEEgS6BgIKCgsKAwdkBRIEugYLEwoLCgMHZAESBLoGFC8KCwoDB2QDEgS6BjI0CgsKAwdkCBIEugY1RQoMCgQHZAgCEgS6BjZECgoKAgdlEgS7BgJBCgsKAwdlAhIEsAYHHQoLCgMHZQQSBLsGAgoKCwoDB2UFEgS7BgsQCgsKAwdlARIEuwYRKQoLCgMHZQMSBLsGLC8KCwoDB2UIEgS7BjBACgwKBAdlCAISBLsGMT8KCgoCB2YSBLwGAkMKCwoDB2YCEgSwBgcdCgsKAwdmBBIEvAYCCgoLCgMHZgUSBLwGCxEKCwoDB2YBEgS8BhIrCgsKAwdmAxIEvAYuMQoLCgMHZggSBLwGMkIKDAoEB2YIAhIEvAYzQQoKCgIHZxIEvQYCPwoLCgMHZwISBLAGBx0KCwoDB2cEEgS9BgIKCgsKAwdnBRIEvQYLDwoLCgMHZwESBL0GECcKCwoDB2cDEgS9BiotCgsKAwdnCBIEvQYuPgoMCgQHZwgCEgS9Bi89CgoKAgdoEgS+BgJGCgsKAwdoAhIEsAYHHQoLCgMHaAQSBL4GAgoKCwoDB2gGEgS+BgsWCgsKAwdoARIEvgYXLgoLCgMHaAMSBL4GMTQKCwoDB2gIEgS+BjVFCgwKBAdoCAISBL4GNkQKuAEKAgQ0EgbEBgDXBgEaqQEgVXNlZCBieSBFeHRlbnNpb25TZXRUZXN0L0R5bmFtaWNFeHRlbnNpb25zLiAgVGhlIHRlc3QgYWN0dWFsbHkgYnVpbGRzCiBhIHNldCBvZiBleHRlbnNpb25zIHRvIFRlc3RBbGxFeHRlbnNpb25zIGR5bmFtaWNhbGx5LCBiYXNlZCBvbiB0aGUgZmllbGRzCiBvZiB0aGlzIG1lc3NhZ2UgdHlwZS4KCgsKAwQ0ARIExAYIHQoOCgQENAQAEgbFBgLJBgMKDQoFBDQEAAESBMUGBxYKDgoGBDQEAAIAEgTGBgQXCg8KBwQ0BAACAAESBMYGBA8KDwoHBDQEAAIAAhIExgYSFgoOCgYENAQAAgESBMcGBBcKDwoHBDQEAAIBARIExwYEDwoPCgcENAQAAgECEgTHBhIWCg4KBgQ0BAACAhIEyAYEFwoPCgcENAQAAgIBEgTIBgQPCg8KBwQ0BAACAgISBMgGEhYKDgoEBDQDABIGygYCzAYDCg0KBQQ0AwABEgTKBgocCg4KBgQ0AwACABIEywYEKAoPCgcENAMAAgAEEgTLBgQMCg8KBwQ0AwACAAUSBMsGDRIKDwoHBDQDAAIAARIEywYTIAoPCgcENAMAAgADEgTLBiMnCgwKBAQ0AgASBM4GAisKDQoFBDQCAAQSBM4GAgoKDQoFBDQCAAUSBM4GCxIKDQoFBDQCAAESBM4GEyMKDQoFBDQCAAMSBM4GJioKDAoEBDQCARIEzwYCLQoNCgUENAIBBBIEzwYCCgoNCgUENAIBBhIEzwYLFgoNCgUENAIBARIEzwYXJQoNCgUENAIBAxIEzwYoLAoMCgQENAICEgTQBgI5Cg0KBQQ0AgIEEgTQBgIKCg0KBQQ0AgIGEgTQBgsaCg0KBQQ0AgIBEgTQBhsxCg0KBQQ0AgIDEgTQBjQ4CgwKBAQ0AgMSBNIGAjMKDQoFBDQCAwQSBNIGAgoKDQoFBDQCAwYSBNIGCxkKDQoFBDQCAwESBNIGGisKDQoFBDQCAwMSBNIGLjIKDAoEBDQCBBIE0wYCPwoNCgUENAIEBBIE0wYCCgoNCgUENAIEBhIE0wYLHQoNCgUENAIEARIE0wYeNwoNCgUENAIEAxIE0wY6PgoMCgQENAIFEgTVBgIsCg0KBQQ0AgUEEgTVBgIKCg0KBQQ0AgUFEgTVBgsRCg0KBQQ0AgUBEgTVBhIkCg0KBQQ0AgUDEgTVBicrCgwKBAQ0AgYSBNYGAjoKDQoFBDQCBgQSBNYGAgoKDQoFBDQCBgUSBNYGCxEKDQoFBDQCBgESBNYGEiIKDQoFBDQCBgMSBNYGJSkKDQoFBDQCBggSBNYGKjkKDgoGBDQCBggCEgTWBis4CgwKAgQ1EgbZBgDoBgEKCwoDBDUBEgTZBggrCs8BCgQENQIAEgTdBgIpGsABIFBhcnNpbmcgcmVwZWF0ZWQgZml4ZWQgc2l6ZSB2YWx1ZXMgdXNlZCB0byBmYWlsLiBUaGlzIG1lc3NhZ2UgbmVlZHMgdG8gYmUKIHVzZWQgaW4gb3JkZXIgdG8gZ2V0IGEgdGFnIG9mIHRoZSByaWdodCBzaXplOyBhbGwgb2YgdGhlIHJlcGVhdGVkIGZpZWxkcwogaW4gVGVzdEFsbFR5cGVzIGRpZG4ndCB0cmlnZ2VyIHRoZSBjaGVjay4KCg0KBQQ1AgAEEgTdBgIKCg0KBQQ1AgAFEgTdBgsSCg0KBQQ1AgABEgTdBhMjCg0KBQQ1AgADEgTdBiYoCj8KBAQ1AgESBN8GAiUaMSBDaGVjayBmb3IgYSB2YXJpbnQgdHlwZSwganVzdCBmb3IgZ29vZCBtZWFzdXJlLgoKDQoFBDUCAQQSBN8GAgoKDQoFBDUCAQUSBN8GCxAKDQoFBDUCAQESBN8GER8KDQoFBDUCAQMSBN8GIiQKKQoEBDUCAhIE4gYCKxobIFRoZXNlIGhhdmUgdHdvLWJ5dGUgdGFncy4KCg0KBQQ1AgIEEgTiBgIKCg0KBQQ1AgIFEgTiBgsSCg0KBQQ1AgIBEgTiBhMjCg0KBQQ1AgIDEgTiBiYqCgwKBAQ1AgMSBOMGAicKDQoFBDUCAwQSBOMGAgoKDQoFBDUCAwUSBOMGCxAKDQoFBDUCAwESBOMGER8KDQoFBDUCAwMSBOMGIiYKIAoEBDUCBBIE5gYCKRoSIFRocmVlIGJ5dGUgdGFncy4KCg0KBQQ1AgQEEgTmBgIKCg0KBQQ1AgQFEgTmBgsQCg0KBQQ1AgQBEgTmBhEfCg0KBQQ1AgQDEgTmBiIoCgwKBAQ1AgUSBOcGAisKDQoFBDUCBQQSBOcGAgoKDQoFBDUCBQUSBOcGCxEKDQoFBDUCBQESBOcGEiEKDQoFBDUCBQMSBOcGJCoKhgEKAgQ2EgbsBgCNBwEaeCBUZXN0IHRoYXQgaWYgYW4gb3B0aW9uYWwgb3IgcmVxdWlyZWQgbWVzc2FnZS9ncm91cCBmaWVsZCBhcHBlYXJzIG11bHRpcGxlCiB0aW1lcyBpbiB0aGUgaW5wdXQsIHRoZXkgbmVlZCB0byBiZSBtZXJnZWQuCgoLCgMENgESBOwGCBgK/gIKBAQ2AwASBvIGAv4GAxrtAiBSZXBlYXRlZEZpZWxkc0dlbmVyYXRvciBkZWZpbmVzIG1hdGNoaW5nIGZpZWxkIHR5cGVzIGFzIFRlc3RQYXJzaW5nTWVyZ2UsCiBleGNlcHQgdGhhdCBhbGwgZmllbGRzIGFyZSByZXBlYXRlZC4gSW4gdGhlIHRlc3RzLCB3ZSB3aWxsIHNlcmlhbGl6ZSB0aGUKIFJlcGVhdGVkRmllbGRzR2VuZXJhdG9yIHRvIGJ5dGVzLCBhbmQgcGFyc2UgdGhlIGJ5dGVzIHRvIFRlc3RQYXJzaW5nTWVyZ2UuCiBSZXBlYXRlZCBmaWVsZHMgaW4gUmVwZWF0ZWRGaWVsZHNHZW5lcmF0b3IgYXJlIGV4cGVjdGVkIHRvIGJlIG1lcmdlZCBpbnRvCiB0aGUgY29ycmVzcG9uZGluZyByZXF1aXJlZC9vcHRpb25hbCBmaWVsZHMgaW4gVGVzdFBhcnNpbmdNZXJnZS4KCg0KBQQ2AwABEgTyBgohCg4KBgQ2AwACABIE8wYEJQoPCgcENgMAAgAEEgTzBgQMCg8KBwQ2AwACAAYSBPMGDRkKDwoHBDYDAAIAARIE8wYaIAoPCgcENgMAAgADEgTzBiMkCg4KBgQ2AwACARIE9AYEJQoPCgcENgMAAgEEEgT0BgQMCg8KBwQ2AwACAQYSBPQGDRkKDwoHBDYDAAIBARIE9AYaIAoPCgcENgMAAgEDEgT0BiMkCg4KBgQ2AwACAhIE9QYEJQoPCgcENgMAAgIEEgT1BgQMCg8KBwQ2AwACAgYSBPUGDRkKDwoHBDYDAAICARIE9QYaIAoPCgcENgMAAgIDEgT1BiMkChAKBgQ2AwACAxIG9gYE+AYFCg8KBwQ2AwACAwQSBPYGBAwKDwoHBDYDAAIDBRIE9gYNEgoPCgcENgMAAgMBEgT2BhMZCg8KBwQ2AwACAwMSBPYGHB4KEAoGBDYDAAMAEgb2BgT4BgUKDwoHBDYDAAMAARIE9gYTGQoPCgcENgMAAgMGEgT2BhMZChAKCAQ2AwADAAIAEgT3BgYoChEKCQQ2AwADAAIABBIE9wYGDgoRCgkENgMAAwACAAYSBPcGDxsKEQoJBDYDAAMAAgABEgT3BhwiChEKCQQ2AwADAAIAAxIE9wYlJwoQCgYENgMAAgQSBvkGBPsGBQoPCgcENgMAAgQEEgT5BgQMCg8KBwQ2AwACBAUSBPkGDRIKDwoHBDYDAAIEARIE+QYTGQoPCgcENgMAAgQDEgT5BhweChAKBgQ2AwADARIG+QYE+wYFCg8KBwQ2AwADAQESBPkGExkKDwoHBDYDAAIEBhIE+QYTGQoQCggENgMAAwECABIE+gYGKAoRCgkENgMAAwECAAQSBPoGBg4KEQoJBDYDAAMBAgAGEgT6Bg8bChEKCQQ2AwADAQIAARIE+gYcIgoRCgkENgMAAwECAAMSBPoGJScKDgoGBDYDAAIFEgT8BgQmCg8KBwQ2AwACBQQSBPwGBAwKDwoHBDYDAAIFBhIE/AYNGQoPCgcENgMAAgUBEgT8BhoeCg8KBwQ2AwACBQMSBPwGISUKDgoGBDYDAAIGEgT9BgQmCg8KBwQ2AwACBgQSBP0GBAwKDwoHBDYDAAIGBhIE/QYNGQoPCgcENgMAAgYBEgT9BhoeCg8KBwQ2AwACBgMSBP0GISUKDAoEBDYCABIE/wYCLwoNCgUENgIABBIE/wYCCgoNCgUENgIABhIE/wYLFwoNCgUENgIAARIE/wYYKgoNCgUENgIAAxIE/wYtLgoMCgQENgIBEgSABwIvCg0KBQQ2AgEEEgSABwIKCg0KBQQ2AgEGEgSABwsXCg0KBQQ2AgEBEgSABxgqCg0KBQQ2AgEDEgSABy0uCgwKBAQ2AgISBIEHAi8KDQoFBDYCAgQSBIEHAgoKDQoFBDYCAgYSBIEHCxcKDQoFBDYCAgESBIEHGCoKDQoFBDYCAgMSBIEHLS4KDgoEBDYCAxIGggcChAcDCg0KBQQ2AgMEEgSCBwIKCg0KBQQ2AgMFEgSCBwsQCg0KBQQ2AgMBEgSCBxEeCg0KBQQ2AgMDEgSCByEjCg4KBAQ2AwESBoIHAoQHAwoNCgUENgMBARIEggcRHgoNCgUENgIDBhIEggcRHgoOCgYENgMBAgASBIMHBDgKDwoHBDYDAQIABBIEgwcEDAoPCgcENgMBAgAGEgSDBw0ZCg8KBwQ2AwECAAESBIMHGjIKDwoHBDYDAQIAAxIEgwc1NwoOCgQENgIEEgaFBwKHBwMKDQoFBDYCBAQSBIUHAgoKDQoFBDYCBAUSBIUHCxAKDQoFBDYCBAESBIUHER4KDQoFBDYCBAMSBIUHISMKDgoEBDYDAhIGhQcChwcDCg0KBQQ2AwIBEgSFBxEeCg0KBQQ2AgQGEgSFBxEeCg4KBgQ2AwICABIEhgcEOAoPCgcENgMCAgAEEgSGBwQMCg8KBwQ2AwICAAYSBIYHDRkKDwoHBDYDAgIAARIEhgcaMgoPCgcENgMCAgADEgSGBzU3CgsKAwQ2BRIEiAcCGQoMCgQENgUAEgSIBw0YCg0KBQQ2BQABEgSIBw0RCg0KBQQ2BQACEgSIBxUYCg0KAwQ2BhIGiQcCjAcDCgwKBAQ2BgASBIoHBC4KDQoFBDYGAAISBIkHCRkKDQoFBDYGAAQSBIoHBAwKDQoFBDYGAAYSBIoHDRkKDQoFBDYGAAESBIoHGiYKDQoFBDYGAAMSBIoHKS0KDAoEBDYGARIEiwcELgoNCgUENgYBAhIEiQcJGQoNCgUENgYBBBIEiwcEDAoNCgUENgYBBhIEiwcNGQoNCgUENgYBARIEiwcaJgoNCgUENgYBAxIEiwcpLQoMCgIENxIGjwcAkgcBCgsKAwQ3ARIEjwcIIwpFCgQENwIAEgSRBwJBGjcgKi8gPC0gVGhpcyBzaG91bGQgbm90IGNsb3NlIHRoZSBnZW5lcmF0ZWQgZG9jIGNvbW1lbnQKCg0KBQQ3AgAEEgSRBwIKCg0KBQQ3AgAFEgSRBwsRCg0KBQQ3AgABEgSRBxITCg0KBQQ3AgADEgSRBxYXCg0KBQQ3AgAIEgSRBxhACg0KBQQ3AgAHEgSRByM/CioKAgQ4EgSVBwAVGh4gVGVzdCB0aGF0IFJQQyBzZXJ2aWNlcyB3b3JrLgoKCwoDBDgBEgSVBwgSCgoKAgQ5EgSWBwAWCgsKAwQ5ARIElgcIEwoKCgIEOhIEmAcAGwoLCgMEOgESBJgHCBgKCgoCBDsSBJkHABsKCwoDBDsBEgSZBwgYCgwKAgYAEgabBwCeBwEKCwoDBgABEgSbBwgTCgwKBAYAAgASBJwHAiwKDQoFBgACAAESBJwHBgkKDQoFBgACAAISBJwHChQKDQoFBgACAAMSBJwHHyoKDAoEBgACARIEnQcCLAoNCgUGAAIBARIEnQcGCQoNCgUGAAIBAhIEnQcKFAoNCgUGAAIBAxIEnQcfKgoKCgIEPBIEoAcAFQoLCgMEPAESBKAHCBIKCgoCBD0SBKEHABYKCwoDBD0BEgShBwgTCgwKAgQ+EgajBwCqBwEKCwoDBD4BEgSjBwgUCgwKBAQ+AgASBKQHAiEKDQoFBD4CAAQSBKQHAgoKDQoFBD4CAAUSBKQHCxAKDQoFBD4CAAESBKQHERwKDQoFBD4CAAMSBKQHHyAKDAoEBD4CARIEpQcCIAoNCgUEPgIBBBIEpQcCCgoNCgUEPgIBBRIEpQcLEAoNCgUEPgIBARIEpQcRGwoNCgUEPgIBAxIEpQceHwoMCgQEPgICEgSmBwIgCg0KBQQ+AgIEEgSmBwIKCg0KBQQ+AgIFEgSmBwsQCg0KBQQ+AgIBEgSmBxEbCg0KBQQ+AgIDEgSmBx4fCgwKBAQ+AgMSBKcHAiIKDQoFBD4CAwQSBKcHAgoKDQoFBD4CAwUSBKcHCxAKDQoFBD4CAwESBKcHER0KDQoFBD4CAwMSBKcHICEKDAoEBD4CBBIEqAcCIQoNCgUEPgIEBBIEqAcCCgoNCgUEPgIEBRIEqAcLEAoNCgUEPgIEARIEqAcRHAoNCgUEPgIEAxIEqAcfIAoMCgQEPgIFEgSpBwI3Cg0KBQQ+AgUEEgSpBwIKCg0KBQQ+AgUFEgSpBwsQCg0KBQQ+AgUBEgSpBxEcCg0KBQQ+AgUDEgSpBx8gCg0KBQQ+AgUIEgSpByE2Cg0KBQQ+AgUKEgSpByI1Cg0KBQQ+AgUKEgSpBy41CgwKAgQ/EgasBwDJBwEKCwoDBD8BEgSsBwgcCgwKBAQ/AgASBK0HAiwKDQoFBD8CAAQSBK0HAgoKDQoFBD8CAAUSBK0HCxAKDQoFBD8CAAESBK0HER8KDQoFBD8CAAMSBK0HIisKDAoEBD8CARIErgcCJgoNCgUEPwIBBBIErgcCCgoNCgUEPwIBBRIErgcLEAoNCgUEPwIBARIErgcRGQoNCgUEPwIBAxIErgccJQoMCgQEPwICEgSvBwI9Cg0KBQQ/AgIEEgSvBwIKCg0KBQQ/AgIFEgSvBwsQCg0KBQQ/AgIBEgSvBxEfCg0KBQQ/AgIDEgSvByIrCg0KBQQ/AgIIEgSvByw8Cg4KBgQ/AgIIAhIErwctOwoMCgQEPwIDEgSwBwI6Cg0KBQQ/AgMEEgSwBwIKCg0KBQQ/AgMFEgSwBwsQCg0KBQQ/AgMBEgSwBxEdCg0KBQQ/AgMDEgSwByApCg0KBQQ/AgMIEgSwByo5Cg4KBgQ/AgMIAhIEsAcrOAoMCgQEPwIEEgSyBwIxCg0KBQQ/AgQEEgSyBwIKCg0KBQQ/AgQGEgSyBwsWCg0KBQQ/AgQBEgSyBxckCg0KBQQ/AgQDEgSyBycwCgwKBAQ/AgUSBLMHAi4KDQoFBD8CBQQSBLMHAgoKDQoFBD8CBQUSBLMHCxEKDQoFBD8CBQESBLMHEiEKDQoFBD8CBQMSBLMHJC0KDAoEBD8CBhIEtAcCLAoNCgUEPwIGBBIEtAcCCgoNCgUEPwIGBRIEtAcLEAoNCgUEPwIGARIEtAcRHwoNCgUEPwIGAxIEtAciKwoMCgQEPwIHEgS1BwI3Cg0KBQQ/AgcEEgS1BwIKCg0KBQQ/AgcGEgS1BwsZCg0KBQQ/AgcBEgS1BxoqCg0KBQQ/AgcDEgS1By02Cg4KBAQ/AggSBrcHArkHAwoNCgUEPwIIBBIEtwcCCgoNCgUEPwIIBRIEtwcLEAoNCgUEPwIIARIEtwcRHgoNCgUEPwIIAxIEtwchKgoOCgQEPwMAEga3BwK5BwMKDQoFBD8DAAESBLcHER4KDQoFBD8CCAYSBLcHER4KDgoGBD8DAAIAEgS4BwQnCg8KBwQ/AwACAAQSBLgHBAwKDwoHBD8DAAIABRIEuAcNEgoPCgcEPwMAAgABEgS4BxMaCg8KBwQ/AwACAAMSBLgHHSYKDAoEBD8CCRIEuwcCNAoNCgUEPwIJBhIEuwcCFQoNCgUEPwIJARIEuwcWJwoNCgUEPwIJAxIEuwcqMwoOCgQEPwgAEga9BwLCBwMKDQoFBD8IAAESBL0HCBMKDAoEBD8CChIEvgcEJAoNCgUEPwIKBRIEvgcECgoNCgUEPwIKARIEvgcLFwoNCgUEPwIKAxIEvgcaIwoMCgQEPwILEgS/BwQyCg0KBQQ/AgsGEgS/BwQQCg0KBQQ/AgsBEgS/BxElCg0KBQQ/AgsDEgS/BygxCgwKBAQ/AgwSBMAHBCQKDQoFBD8CDAUSBMAHBAoKDQoFBD8CDAESBMAHCxcKDQoFBD8CDAMSBMAHGiMKDAoEBD8CDRIEwQcEIgoNCgUEPwINBRIEwQcECQoNCgUEPwINARIEwQcKFQoNCgUEPwINAxIEwQcYIQoNCgMEPwUSBsQHAsgHBQoMCgQEPwUAEgTEBw0jCg0KBQQ/BQABEgTEBw0WCg0KBQQ/BQACEgTEBxojCgsKAQcSBssHAM0HAQoKCgIHaRIEzAcCMwoLCgMHaQISBMsHBxsKCwoDB2kEEgTMBwIKCgsKAwdpBhIEzAcLFwoLCgMHaQESBMwHGCYKCwoDB2kDEgTMBykyCgwKAgRAEgbPBwDaBwEKCwoDBEABEgTPBwggCgwKBARAAgASBNAHAhwKDQoFBEACAAQSBNAHAgoKDQoFBEACAAUSBNAHCxAKDQoFBEACAAESBNAHERcKDQoFBEACAAMSBNAHGhsKDAoEBEACARIE0QcCHAoNCgUEQAIBBBIE0QcCCgoNCgUEQAIBBRIE0QcLEAoNCgUEQAIBARIE0QcRFwoNCgUEQAIBAxIE0QcaGwoMCgQEQAICEgTSBwIcCg0KBQRAAgIEEgTSBwIKCg0KBQRAAgIFEgTSBwsQCg0KBQRAAgIBEgTSBxEXCg0KBQRAAgIDEgTSBxobCgwKBARAAgMSBNMHAhwKDQoFBEACAwQSBNMHAgoKDQoFBEACAwUSBNMHCxAKDQoFBEACAwESBNMHERcKDQoFBEACAwMSBNMHGhsKCwoDBEAFEgTUBwIUCgwKBARABQASBNQHDRMKDQoFBEAFAAESBNQHDQ4KDQoFBEAFAAISBNQHEhMKDAoEBEACBBIE1QcCHAoNCgUEQAIEBBIE1QcCCgoNCgUEQAIEBRIE1QcLEAoNCgUEQAIEARIE1QcRFwoNCgUEQAIEAxIE1QcaGwoMCgQEQAIFEgTWBwIcCg0KBQRAAgUEEgTWBwIKCg0KBQRAAgUFEgTWBwsQCg0KBQRAAgUBEgTWBxEXCg0KBQRAAgUDEgTWBxobCgwKBARAAgYSBNcHAhwKDQoFBEACBgQSBNcHAgoKDQoFBEACBgUSBNcHCxAKDQoFBEACBgESBNcHERcKDQoFBEACBgMSBNcHGhsKDAoEBEACBxIE2AcCHAoNCgUEQAIHBBIE2AcCCgoNCgUEQAIHBRIE2AcLEAoNCgUEQAIHARIE2AcRFwoNCgUEQAIHAxIE2AcaGwoMCgQEQAIIEgTZBwIeCg0KBQRAAggEEgTZBwIKCg0KBQRAAggFEgTZBwsQCg0KBQRAAggBEgTZBxEYCg0KBQRAAggDEgTZBxsdCgsKAQcSBtwHAN4HAQoKCgIHahIE3QcCOwoLCgMHagISBNwHBx8KCwoDB2oEEgTdBwIKCgsKAwdqBRIE3QcLEAoLCgMHagESBN0HETYKCwoDB2oDEgTdBzk6CgwKAgUDEgbgBwDGCAEKCwoDBQMBEgTgBwUSCgwKBAUDAgASBOEHAhkKDQoFBQMCAAESBOEHAhQKDQoFBQMCAAISBOEHFxgKDAoEBQMCARIE4gcCEwoNCgUFAwIBARIE4gcCDgoNCgUFAwIBAhIE4gcREgoMCgQFAwICEgTjBwITCg0KBQUDAgIBEgTjBwIOCg0KBQUDAgICEgTjBxESCgwKBAUDAgMSBOQHAhMKDQoFBQMCAwESBOQHAg4KDQoFBQMCAwISBOQHERIKDAoEBQMCBBIE5QcCEwoNCgUFAwIEARIE5QcCDgoNCgUFAwIEAhIE5QcREgoMCgQFAwIFEgTmBwITCg0KBQUDAgUBEgTmBwIOCg0KBQUDAgUCEgTmBxESCgwKBAUDAgYSBOcHAhMKDQoFBQMCBgESBOcHAg4KDQoFBQMCBgISBOcHERIKDAoEBQMCBxIE6AcCEwoNCgUFAwIHARIE6AcCDgoNCgUFAwIHAhIE6AcREgoMCgQFAwIIEgTpBwITCg0KBQUDAggBEgTpBwIOCg0KBQUDAggCEgTpBxESCgwKBAUDAgkSBOoHAhMKDQoFBQMCCQESBOoHAg4KDQoFBQMCCQISBOoHERIKDAoEBQMCChIE6wcCFQoNCgUFAwIKARIE6wcCDwoNCgUFAwIKAhIE6wcSFAoMCgQFAwILEgTsBwIVCg0KBQUDAgsBEgTsBwIPCg0KBQUDAgsCEgTsBxIUCgwKBAUDAgwSBO0HAhUKDQoFBQMCDAESBO0HAg8KDQoFBQMCDAISBO0HEhQKDAoEBQMCDRIE7gcCFQoNCgUFAwINARIE7gcCDwoNCgUFAwINAhIE7gcSFAoMCgQFAwIOEgTvBwIVCg0KBQUDAg4BEgTvBwIPCg0KBQUDAg4CEgTvBxIUCgwKBAUDAg8SBPAHAhUKDQoFBQMCDwESBPAHAg8KDQoFBQMCDwISBPAHEhQKDAoEBQMCEBIE8QcCFQoNCgUFAwIQARIE8QcCDwoNCgUFAwIQAhIE8QcSFAoMCgQFAwIREgTyBwIVCg0KBQUDAhEBEgTyBwIPCg0KBQUDAhECEgTyBxIUCgwKBAUDAhISBPMHAhUKDQoFBQMCEgESBPMHAg8KDQoFBQMCEgISBPMHEhQKDAoEBQMCExIE9AcCFQoNCgUFAwITARIE9AcCDwoNCgUFAwITAhIE9AcSFAoMCgQFAwIUEgT1BwIVCg0KBQUDAhQBEgT1BwIPCg0KBQUDAhQCEgT1BxIUCgwKBAUDAhUSBPYHAhUKDQoFBQMCFQESBPYHAg8KDQoFBQMCFQISBPYHEhQKDAoEBQMCFhIE9wcCFQoNCgUFAwIWARIE9wcCDwoNCgUFAwIWAhIE9wcSFAoMCgQFAwIXEgT4BwIVCg0KBQUDAhcBEgT4BwIPCg0KBQUDAhcCEgT4BxIUCgwKBAUDAhgSBPkHAhUKDQoFBQMCGAESBPkHAg8KDQoFBQMCGAISBPkHEhQKDAoEBQMCGRIE+gcCFQoNCgUFAwIZARIE+gcCDwoNCgUFAwIZAhIE+gcSFAoMCgQFAwIaEgT7BwIVCg0KBQUDAhoBEgT7BwIPCg0KBQUDAhoCEgT7BxIUCgwKBAUDAhsSBPwHAhUKDQoFBQMCGwESBPwHAg8KDQoFBQMCGwISBPwHEhQKDAoEBQMCHBIE/QcCFQoNCgUFAwIcARIE/QcCDwoNCgUFAwIcAhIE/QcSFAoMCgQFAwIdEgT+BwIVCg0KBQUDAh0BEgT+BwIPCg0KBQUDAh0CEgT+BxIUCgwKBAUDAh4SBP8HAhUKDQoFBQMCHgESBP8HAg8KDQoFBQMCHgISBP8HEhQKDAoEBQMCHxIEgAgCFQoNCgUFAwIfARIEgAgCDwoNCgUFAwIfAhIEgAgSFAoMCgQFAwIgEgSBCAIVCg0KBQUDAiABEgSBCAIPCg0KBQUDAiACEgSBCBIUCgwKBAUDAiESBIIIAhUKDQoFBQMCIQESBIIIAg8KDQoFBQMCIQISBIIIEhQKDAoEBQMCIhIEgwgCFQoNCgUFAwIiARIEgwgCDwoNCgUFAwIiAhIEgwgSFAoMCgQFAwIjEgSECAIVCg0KBQUDAiMBEgSECAIPCg0KBQUDAiMCEgSECBIUCgwKBAUDAiQSBIUIAhUKDQoFBQMCJAESBIUIAg8KDQoFBQMCJAISBIUIEhQKDAoEBQMCJRIEhggCFQoNCgUFAwIlARIEhggCDwoNCgUFAwIlAhIEhggSFAoMCgQFAwImEgSHCAIVCg0KBQUDAiYBEgSHCAIPCg0KBQUDAiYCEgSHCBIUCgwKBAUDAicSBIgIAhUKDQoFBQMCJwESBIgIAg8KDQoFBQMCJwISBIgIEhQKDAoEBQMCKBIEiQgCFQoNCgUFAwIoARIEiQgCDwoNCgUFAwIoAhIEiQgSFAoMCgQFAwIpEgSKCAIVCg0KBQUDAikBEgSKCAIPCg0KBQUDAikCEgSKCBIUCgwKBAUDAioSBIsIAhUKDQoFBQMCKgESBIsIAg8KDQoFBQMCKgISBIsIEhQKDAoEBQMCKxIEjAgCFQoNCgUFAwIrARIEjAgCDwoNCgUFAwIrAhIEjAgSFAoMCgQFAwIsEgSNCAIVCg0KBQUDAiwBEgSNCAIPCg0KBQUDAiwCEgSNCBIUCgwKBAUDAi0SBI4IAhUKDQoFBQMCLQESBI4IAg8KDQoFBQMCLQISBI4IEhQKDAoEBQMCLhIEjwgCFQoNCgUFAwIuARIEjwgCDwoNCgUFAwIuAhIEjwgSFAoMCgQFAwIvEgSQCAIVCg0KBQUDAi8BEgSQCAIPCg0KBQUDAi8CEgSQCBIUCgwKBAUDAjASBJEIAhUKDQoFBQMCMAESBJEIAg8KDQoFBQMCMAISBJEIEhQKDAoEBQMCMRIEkggCFQoNCgUFAwIxARIEkggCDwoNCgUFAwIxAhIEkggSFAoMCgQFAwIyEgSTCAIVCg0KBQUDAjIBEgSTCAIPCg0KBQUDAjICEgSTCBIUCgwKBAUDAjMSBJQIAhUKDQoFBQMCMwESBJQIAg8KDQoFBQMCMwISBJQIEhQKDAoEBQMCNBIElQgCFQoNCgUFAwI0ARIElQgCDwoNCgUFAwI0AhIElQgSFAoMCgQFAwI1EgSWCAIVCg0KBQUDAjUBEgSWCAIPCg0KBQUDAjUCEgSWCBIUCgwKBAUDAjYSBJcIAhUKDQoFBQMCNgESBJcIAg8KDQoFBQMCNgISBJcIEhQKDAoEBQMCNxIEmAgCFQoNCgUFAwI3ARIEmAgCDwoNCgUFAwI3AhIEmAgSFAoMCgQFAwI4EgSZCAIVCg0KBQUDAjgBEgSZCAIPCg0KBQUDAjgCEgSZCBIUCgwKBAUDAjkSBJoIAhUKDQoFBQMCOQESBJoIAg8KDQoFBQMCOQISBJoIEhQKDAoEBQMCOhIEmwgCFQoNCgUFAwI6ARIEmwgCDwoNCgUFAwI6AhIEmwgSFAoMCgQFAwI7EgScCAIVCg0KBQUDAjsBEgScCAIPCg0KBQUDAjsCEgScCBIUCgwKBAUDAjwSBJ0IAhUKDQoFBQMCPAESBJ0IAg8KDQoFBQMCPAISBJ0IEhQKDAoEBQMCPRIEnggCFQoNCgUFAwI9ARIEnggCDwoNCgUFAwI9AhIEnggSFAoMCgQFAwI+EgSfCAIVCg0KBQUDAj4BEgSfCAIPCg0KBQUDAj4CEgSfCBIUCgwKBAUDAj8SBKAIAhUKDQoFBQMCPwESBKAIAg8KDQoFBQMCPwISBKAIEhQKDAoEBQMCQBIEoQgCFQoNCgUFAwJAARIEoQgCDwoNCgUFAwJAAhIEoQgSFAoMCgQFAwJBEgSiCAIVCg0KBQUDAkEBEgSiCAIPCg0KBQUDAkECEgSiCBIUCgwKBAUDAkISBKMIAhUKDQoFBQMCQgESBKMIAg8KDQoFBQMCQgISBKMIEhQKDAoEBQMCQxIEpAgCFQoNCgUFAwJDARIEpAgCDwoNCgUFAwJDAhIEpAgSFAoMCgQFAwJEEgSlCAIVCg0KBQUDAkQBEgSlCAIPCg0KBQUDAkQCEgSlCBIUCgwKBAUDAkUSBKYIAhUKDQoFBQMCRQESBKYIAg8KDQoFBQMCRQISBKYIEhQKDAoEBQMCRhIEpwgCFQoNCgUFAwJGARIEpwgCDwoNCgUFAwJGAhIEpwgSFAoMCgQFAwJHEgSoCAIVCg0KBQUDAkcBEgSoCAIPCg0KBQUDAkcCEgSoCBIUCgwKBAUDAkgSBKkIAhUKDQoFBQMCSAESBKkIAg8KDQoFBQMCSAISBKkIEhQKDAoEBQMCSRIEqggCFQoNCgUFAwJJARIEqggCDwoNCgUFAwJJAhIEqggSFAoMCgQFAwJKEgSrCAIVCg0KBQUDAkoBEgSrCAIPCg0KBQUDAkoCEgSrCBIUCgwKBAUDAksSBKwIAhUKDQoFBQMCSwESBKwIAg8KDQoFBQMCSwISBKwIEhQKDAoEBQMCTBIErQgCFQoNCgUFAwJMARIErQgCDwoNCgUFAwJMAhIErQgSFAoMCgQFAwJNEgSuCAIVCg0KBQUDAk0BEgSuCAIPCg0KBQUDAk0CEgSuCBIUCgwKBAUDAk4SBK8IAhUKDQoFBQMCTgESBK8IAg8KDQoFBQMCTgISBK8IEhQKDAoEBQMCTxIEsAgCFQoNCgUFAwJPARIEsAgCDwoNCgUFAwJPAhIEsAgSFAoMCgQFAwJQEgSxCAIVCg0KBQUDAlABEgSxCAIPCg0KBQUDAlACEgSxCBIUCgwKBAUDAlESBLIIAhUKDQoFBQMCUQESBLIIAg8KDQoFBQMCUQISBLIIEhQKDAoEBQMCUhIEswgCFQoNCgUFAwJSARIEswgCDwoNCgUFAwJSAhIEswgSFAoMCgQFAwJTEgS0CAIVCg0KBQUDAlMBEgS0CAIPCg0KBQUDAlMCEgS0CBIUCgwKBAUDAlQSBLUIAhUKDQoFBQMCVAESBLUIAg8KDQoFBQMCVAISBLUIEhQKDAoEBQMCVRIEtggCFQoNCgUFAwJVARIEtggCDwoNCgUFAwJVAhIEtggSFAoMCgQFAwJWEgS3CAIVCg0KBQUDAlYBEgS3CAIPCg0KBQUDAlYCEgS3CBIUCgwKBAUDAlcSBLgIAhUKDQoFBQMCVwESBLgIAg8KDQoFBQMCVwISBLgIEhQKDAoEBQMCWBIEuQgCFQoNCgUFAwJYARIEuQgCDwoNCgUFAwJYAhIEuQgSFAoMCgQFAwJZEgS6CAIVCg0KBQUDAlkBEgS6CAIPCg0KBQUDAlkCEgS6CBIUCgwKBAUDAloSBLsIAhUKDQoFBQMCWgESBLsIAg8KDQoFBQMCWgISBLsIEhQKDAoEBQMCWxIEvAgCFQoNCgUFAwJbARIEvAgCDwoNCgUFAwJbAhIEvAgSFAoMCgQFAwJcEgS9CAIVCg0KBQUDAlwBEgS9CAIPCg0KBQUDAlwCEgS9CBIUCgwKBAUDAl0SBL4IAhUKDQoFBQMCXQESBL4IAg8KDQoFBQMCXQISBL4IEhQKDAoEBQMCXhIEvwgCFQoNCgUFAwJeARIEvwgCDwoNCgUFAwJeAhIEvwgSFAoMCgQFAwJfEgTACAIVCg0KBQUDAl8BEgTACAIPCg0KBQUDAl8CEgTACBIUCgwKBAUDAmASBMEIAhUKDQoFBQMCYAESBMEIAg8KDQoFBQMCYAISBMEIEhQKDAoEBQMCYRIEwggCFQoNCgUFAwJhARIEwggCDwoNCgUFAwJhAhIEwggSFAoMCgQFAwJiEgTDCAIVCg0KBQUDAmIBEgTDCAIPCg0KBQUDAmICEgTDCBIUCgwKBAUDAmMSBMQIAhUKDQoFBQMCYwESBMQIAg8KDQoFBQMCYwISBMQIEhQKDAoEBQMCZBIExQgCFwoNCgUFAwJkARIExQgCEAoNCgUFAwJkAhIExQgTFgqHBgooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYS5wcm90bxIPdW5pdHRlc3RfaXNzdWVzGiBnb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci5wcm90bzozCgNvcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY0IYDIAEoCVIDb3B0Qh2qAhpVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvc0rLBAoGEgQHABUBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAGAoICgEIEgMLADcKCQoCCCUSAwsANwrEAQoCAwASAxEAKjK4ASBUaGlzIGZpbGUgaXMgdXNlZCBhcyBwYXJ0IG9mIGEgdW5pdCB0ZXN0IGZvciBpc3N1ZSA2OTM2CiBXZSBkb24ndCBuZWVkIHRvIHVzZSBpdCwgd2UganVzdCBoYXZlIHRvIGltcG9ydCBpdCBpbiBib3RoCiAiZXh0ZW5zaW9uc19pc3N1ZTY5MzZfYi5wcm90byIgYW5kICJleHRlbnNpb25zX2lzc3VlNjkzNl9jLnByb3RvIgoKCQoBBxIEEwAVAQoJCgIHABIDFAIVCgoKAwcAAhIDEwclCgoKAwcABRIDFAIICgoKAwcAARIDFAkMCgoKAwcAAxIDFA8UYgZwcm90bzMKrQUKKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2IucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYS5wcm90byIOCgNGb286B4K1GANmb29CHaoCGlVuaXRUZXN0Lklzc3Vlcy5UZXN0UHJvdG9zSo4ECgYSBAcAFQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAYCgkKAgMAEgMLADIKCAoBCBIDDQA3CgkKAgglEgMNADcKmwEKAgQAEgQTABUBMo4BIFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gaW1wb3J0IGl0IGluCiAidW5pdHRlc3RfaXNzdWU2OTM2X2MucHJvdG8iCgoKCgMEAAESAxMICwoKCgMEAAcSAxQCFwoNCgYEAAfQhgMSAxQCF2IGcHJvdG8zCqgGCihjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2lzc3VlNjkzNl9jLnByb3RvEg91bml0dGVzdF9pc3N1ZXMaKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2EucHJvdG8aKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2IucHJvdG8iNgoDQmFyEiYKA2ZvbxgBIAEoCzIULnVuaXR0ZXN0X2lzc3Vlcy5Gb29SA2ZvbzoHgrUYA2JhckIdqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3NKtwQKBhIEBwAXAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABgKCQoCAwASAwsAMgoJCgIDARIDDAAyCggKAQgSAw4ANwoJCgIIJRIDDgA3CoIBCgIEABIEEwAXATJ2IFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gbG9hZCBpdCBhdCBydW50aW1lCgoKCgMEAAESAxMICwoKCgMEAAcSAxQCFwoNCgYEAAfQhgMSAxQCFwoLCgQEAAIAEgMWAg4KDAoFBAACAAYSAxYCBQoMCgUEAAIAARIDFgYJCgwKBQQAAgADEgMWDA1iBnByb3RvMwq7Dgo0Y3NoYXJwL3Byb3Rvcy91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5wcm90bxIpcHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMaIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlwdG9yLnByb3RvIlkKCkZvb09wdGlvbnMSJgoHaW50X29wdBgBIAEoBUINyj4KCAHAPgLKPgIIA1IGaW50T3B0EhgKA2ZvbxgCIAEoBUIGyj4DENIJUgNmb28qCQjoBxCAgICAAjpFCgtiYXJfb3B0aW9ucxIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMY6AcgASgFQgTAPtIJUgpiYXJPcHRpb25zOnYKC2Zvb19vcHRpb25zEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxjpByABKAsyNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zUgpmb29PcHRpb25zOlYKC2Zvb19pbnRfb3B0EjUucHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMuRm9vT3B0aW9ucxjoByABKAVSCWZvb0ludE9wdDqNAQoLZm9vX2Zvb19vcHQSNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zGOkHIAEoCzI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlvbnNSCWZvb0Zvb09wdEI0qgIxVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3MuU2VsZnJlZmVyZW50aWFsT3B0aW9uc0r9CAoGEgQHACcBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAMgoJCgIDABIDCwAqCggKAQgSAw0ATgoJCgIIJRIDDQBOCgoKAgQAEgQPABsBCgoKAwQAARIDDwgSClAKBAQAAgASBBECFQUaQiBDdXN0b20gZmllbGQgb3B0aW9uIHVzZWQgaW4gZGVmaW5pdGlvbiBvZiB0aGUgZXh0ZW5zaW9uIG1lc3NhZ2UuCgoMCgUEAAIABBIDEQIKCgwKBQQAAgAFEgMRCxAKDAoFBAACAAESAxERGAoMCgUEAAIAAxIDERscCg0KBQQAAgAIEgQRHRUECg8KBwQAAgAI6QcSBBEeFQMKVQoEBAACARIDGAI5GkggQ3VzdG9tIGZpZWxkIG9wdGlvbiB1c2VkIGluIGRlZmluaXRpb24gb2YgdGhlIGN1c3RvbSBvcHRpb24ncyBtZXNzYWdlLgoKDAoFBAACAQQSAxgCCgoMCgUEAAIBBRIDGAsQCgwKBQQAAgEBEgMYERQKDAoFBAACAQMSAxgXGAoMCgUEAAIBCBIDGBk4Cg4KBwQAAgEI6QcSAxgaNwoKCgMEAAUSAxoCGQoLCgQEAAUAEgMaDRgKDAoFBAAFAAESAxoNEQoMCgUEAAUAAhIDGhUYCgkKAQcSBB0AIgEKTQoCBwASAx8COxpCIEN1c3RvbSBmaWVsZCBvcHRpb24gdXNlZCBvbiB0aGUgZGVmaW5pdGlvbiBvZiB0aGF0IGZpZWxkIG9wdGlvbi4KCgoKAwcAAhIDHQcjCgoKAwcABBIDHwIKCgoKAwcABRIDHwsQCgoKAwcAARIDHxEcCgoKAwcAAxIDHx8jCgoKAwcACBIDHyQ6CgwKBQcACOgHEgMfJTkKCQoCBwESAyECKQoKCgMHAQISAx0HIwoKCgMHAQQSAyECCgoKCgMHAQYSAyELFQoKCgMHAQESAyEWIQoKCgMHAQMSAyEkKAoJCgEHEgQkACcBCgkKAgcCEgMlAiQKCgoDBwICEgMkBxEKCgoDBwIEEgMlAgoKCgoDBwIFEgMlCxAKCgoDBwIBEgMlERwKCgoDBwIDEgMlHyMKCQoCBwMSAyYCKQoKCgMHAwISAyQHEQoKCgMHAwQSAyYCCgoKCgMHAwYSAyYLFQoKCgMHAwESAyYWIQoKCgMHAwMSAyYkKArELgoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjYKA0FueRIZCgh0eXBlX3VybBgBIAEoCVIHdHlwZVVybBIUCgV2YWx1ZRgCIAEoDFIFdmFsdWVCdgoTY29tLmdvb2dsZS5wcm90b2J1ZkIIQW55UHJvdG9QAVosZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vYW55cGKiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK3SwKBxIFHgChAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAEMKCQoCCAsSAyIAQwoICgEIEgMjACwKCQoCCAESAyMALAoICgEIEgMkACkKCQoCCAgSAyQAKQoICgEIEgMlACIKCQoCCAoSAyUAIgoICgEIEgMmACEKCQoCCCQSAyYAIQoICgEIEgMnADsKCQoCCCUSAycAOwr8EQoCBAASBX8AoQEBGu4RIGBBbnlgIGNvbnRhaW5zIGFuIGFyYml0cmFyeSBzZXJpYWxpemVkIHByb3RvY29sIGJ1ZmZlciBtZXNzYWdlIGFsb25nIHdpdGggYQogVVJMIHRoYXQgZGVzY3JpYmVzIHRoZSB0eXBlIG9mIHRoZSBzZXJpYWxpemVkIG1lc3NhZ2UuCgogUHJvdG9idWYgbGlicmFyeSBwcm92aWRlcyBzdXBwb3J0IHRvIHBhY2svdW5wYWNrIEFueSB2YWx1ZXMgaW4gdGhlIGZvcm0KIG9mIHV0aWxpdHkgZnVuY3Rpb25zIG9yIGFkZGl0aW9uYWwgZ2VuZXJhdGVkIG1ldGhvZHMgb2YgdGhlIEFueSB0eXBlLgoKIEV4YW1wbGUgMTogUGFjayBhbmQgdW5wYWNrIGEgbWVzc2FnZSBpbiBDKysuCgogICAgIEZvbyBmb28gPSAuLi47CiAgICAgQW55IGFueTsKICAgICBhbnkuUGFja0Zyb20oZm9vKTsKICAgICAuLi4KICAgICBpZiAoYW55LlVucGFja1RvKCZmb28pKSB7CiAgICAgICAuLi4KICAgICB9CgogRXhhbXBsZSAyOiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIEphdmEuCgogICAgIEZvbyBmb28gPSAuLi47CiAgICAgQW55IGFueSA9IEFueS5wYWNrKGZvbyk7CiAgICAgLi4uCiAgICAgaWYgKGFueS5pcyhGb28uY2xhc3MpKSB7CiAgICAgICBmb28gPSBhbnkudW5wYWNrKEZvby5jbGFzcyk7CiAgICAgfQogICAgIC8vIG9yIC4uLgogICAgIGlmIChhbnkuaXNTYW1lVHlwZUFzKEZvby5nZXREZWZhdWx0SW5zdGFuY2UoKSkpIHsKICAgICAgIGZvbyA9IGFueS51bnBhY2soRm9vLmdldERlZmF1bHRJbnN0YW5jZSgpKTsKICAgICB9CgogIEV4YW1wbGUgMzogUGFjayBhbmQgdW5wYWNrIGEgbWVzc2FnZSBpbiBQeXRob24uCgogICAgIGZvbyA9IEZvbyguLi4pCiAgICAgYW55ID0gQW55KCkKICAgICBhbnkuUGFjayhmb28pCiAgICAgLi4uCiAgICAgaWYgYW55LklzKEZvby5ERVNDUklQVE9SKToKICAgICAgIGFueS5VbnBhY2soZm9vKQogICAgICAgLi4uCgogIEV4YW1wbGUgNDogUGFjayBhbmQgdW5wYWNrIGEgbWVzc2FnZSBpbiBHbwoKICAgICAgZm9vIDo9ICZwYi5Gb297Li4ufQogICAgICBhbnksIGVyciA6PSBhbnlwYi5OZXcoZm9vKQogICAgICBpZiBlcnIgIT0gbmlsIHsKICAgICAgICAuLi4KICAgICAgfQogICAgICAuLi4KICAgICAgZm9vIDo9ICZwYi5Gb297fQogICAgICBpZiBlcnIgOj0gYW55LlVubWFyc2hhbFRvKGZvbyk7IGVyciAhPSBuaWwgewogICAgICAgIC4uLgogICAgICB9CgogVGhlIHBhY2sgbWV0aG9kcyBwcm92aWRlZCBieSBwcm90b2J1ZiBsaWJyYXJ5IHdpbGwgYnkgZGVmYXVsdCB1c2UKICd0eXBlLmdvb2dsZWFwaXMuY29tL2Z1bGwudHlwZS5uYW1lJyBhcyB0aGUgdHlwZSBVUkwgYW5kIHRoZSB1bnBhY2sKIG1ldGhvZHMgb25seSB1c2UgdGhlIGZ1bGx5IHF1YWxpZmllZCB0eXBlIG5hbWUgYWZ0ZXIgdGhlIGxhc3QgJy8nCiBpbiB0aGUgdHlwZSBVUkwsIGZvciBleGFtcGxlICJmb28uYmFyLmNvbS94L3kueiIgd2lsbCB5aWVsZCB0eXBlCiBuYW1lICJ5LnoiLgoKIEpTT04KID09PT0KIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIGFuIGBBbnlgIHZhbHVlIHVzZXMgdGhlIHJlZ3VsYXIKIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkZXNlcmlhbGl6ZWQsIGVtYmVkZGVkIG1lc3NhZ2UsIHdpdGggYW4KIGFkZGl0aW9uYWwgZmllbGQgYEB0eXBlYCB3aGljaCBjb250YWlucyB0aGUgdHlwZSBVUkwuIEV4YW1wbGU6CgogICAgIHBhY2thZ2UgZ29vZ2xlLnByb2ZpbGU7CiAgICAgbWVzc2FnZSBQZXJzb24gewogICAgICAgc3RyaW5nIGZpcnN0X25hbWUgPSAxOwogICAgICAgc3RyaW5nIGxhc3RfbmFtZSA9IDI7CiAgICAgfQoKICAgICB7CiAgICAgICAiQHR5cGUiOiAidHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucHJvZmlsZS5QZXJzb24iLAogICAgICAgImZpcnN0TmFtZSI6IDxzdHJpbmc+LAogICAgICAgImxhc3ROYW1lIjogPHN0cmluZz4KICAgICB9CgogSWYgdGhlIGVtYmVkZGVkIG1lc3NhZ2UgdHlwZSBpcyB3ZWxsLWtub3duIGFuZCBoYXMgYSBjdXN0b20gSlNPTgogcmVwcmVzZW50YXRpb24sIHRoYXQgcmVwcmVzZW50YXRpb24gd2lsbCBiZSBlbWJlZGRlZCBhZGRpbmcgYSBmaWVsZAogYHZhbHVlYCB3aGljaCBob2xkcyB0aGUgY3VzdG9tIEpTT04gaW4gYWRkaXRpb24gdG8gdGhlIGBAdHlwZWAKIGZpZWxkLiBFeGFtcGxlIChmb3IgbWVzc2FnZSBbZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uXVtdKToKCiAgICAgewogICAgICAgIkB0eXBlIjogInR5cGUuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uIiwKICAgICAgICJ2YWx1ZSI6ICIxLjIxMnMiCiAgICAgfQoKCgoKAwQAARIDfwgLCrwLCgQEAAIAEgSdAQIWGq0LIEEgVVJML3Jlc291cmNlIG5hbWUgdGhhdCB1bmlxdWVseSBpZGVudGlmaWVzIHRoZSB0eXBlIG9mIHRoZSBzZXJpYWxpemVkCiBwcm90b2NvbCBidWZmZXIgbWVzc2FnZS4gVGhpcyBzdHJpbmcgbXVzdCBjb250YWluIGF0IGxlYXN0CiBvbmUgIi8iIGNoYXJhY3Rlci4gVGhlIGxhc3Qgc2VnbWVudCBvZiB0aGUgVVJMJ3MgcGF0aCBtdXN0IHJlcHJlc2VudAogdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSB0eXBlIChhcyBpbgogYHBhdGgvZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uYCkuIFRoZSBuYW1lIHNob3VsZCBiZSBpbiBhIGNhbm9uaWNhbCBmb3JtCiAoZS5nLiwgbGVhZGluZyAiLiIgaXMgbm90IGFjY2VwdGVkKS4KCiBJbiBwcmFjdGljZSwgdGVhbXMgdXN1YWxseSBwcmVjb21waWxlIGludG8gdGhlIGJpbmFyeSBhbGwgdHlwZXMgdGhhdCB0aGV5CiBleHBlY3QgaXQgdG8gdXNlIGluIHRoZSBjb250ZXh0IG9mIEFueS4gSG93ZXZlciwgZm9yIFVSTHMgd2hpY2ggdXNlIHRoZQogc2NoZW1lIGBodHRwYCwgYGh0dHBzYCwgb3Igbm8gc2NoZW1lLCBvbmUgY2FuIG9wdGlvbmFsbHkgc2V0IHVwIGEgdHlwZQogc2VydmVyIHRoYXQgbWFwcyB0eXBlIFVSTHMgdG8gbWVzc2FnZSBkZWZpbml0aW9ucyBhcyBmb2xsb3dzOgoKICogSWYgbm8gc2NoZW1lIGlzIHByb3ZpZGVkLCBgaHR0cHNgIGlzIGFzc3VtZWQuCiAqIEFuIEhUVFAgR0VUIG9uIHRoZSBVUkwgbXVzdCB5aWVsZCBhIFtnb29nbGUucHJvdG9idWYuVHlwZV1bXQogICB2YWx1ZSBpbiBiaW5hcnkgZm9ybWF0LCBvciBwcm9kdWNlIGFuIGVycm9yLgogKiBBcHBsaWNhdGlvbnMgYXJlIGFsbG93ZWQgdG8gY2FjaGUgbG9va3VwIHJlc3VsdHMgYmFzZWQgb24gdGhlCiAgIFVSTCwgb3IgaGF2ZSB0aGVtIHByZWNvbXBpbGVkIGludG8gYSBiaW5hcnkgdG8gYXZvaWQgYW55CiAgIGxvb2t1cC4gVGhlcmVmb3JlLCBiaW5hcnkgY29tcGF0aWJpbGl0eSBuZWVkcyB0byBiZSBwcmVzZXJ2ZWQKICAgb24gY2hhbmdlcyB0byB0eXBlcy4gKFVzZSB2ZXJzaW9uZWQgdHlwZSBuYW1lcyB0byBtYW5hZ2UKICAgYnJlYWtpbmcgY2hhbmdlcy4pCgogTm90ZTogdGhpcyBmdW5jdGlvbmFsaXR5IGlzIG5vdCBjdXJyZW50bHkgYXZhaWxhYmxlIGluIHRoZSBvZmZpY2lhbAogcHJvdG9idWYgcmVsZWFzZSwgYW5kIGl0IGlzIG5vdCB1c2VkIGZvciB0eXBlIFVSTHMgYmVnaW5uaW5nIHdpdGgKIHR5cGUuZ29vZ2xlYXBpcy5jb20uIEFzIG9mIE1heSAyMDIzLCB0aGVyZSBhcmUgbm8gd2lkZWx5IHVzZWQgdHlwZSBzZXJ2ZXIKIGltcGxlbWVudGF0aW9ucyBhbmQgbm8gcGxhbnMgdG8gaW1wbGVtZW50IG9uZS4KCiBTY2hlbWVzIG90aGVyIHRoYW4gYGh0dHBgLCBgaHR0cHNgIChvciB0aGUgZW1wdHkgc2NoZW1lKSBtaWdodCBiZQogdXNlZCB3aXRoIGltcGxlbWVudGF0aW9uIHNwZWNpZmljIHNlbWFudGljcy4KCgoNCgUEAAIABRIEnQECCAoNCgUEAAIAARIEnQEJEQoNCgUEAAIAAxIEnQEUFQpXCgQEAAIBEgSgAQISGkkgTXVzdCBiZSBhIHZhbGlkIHNlcmlhbGl6ZWQgcHJvdG9jb2wgYnVmZmVyIG9mIHRoZSBhYm92ZSBzcGVjaWZpZWQgdHlwZS4KCg0KBQQAAgEFEgSgAQIHCg0KBQQAAgEBEgSgAQgNCg0KBQQAAgEDEgSgARARYgZwcm90bzMK1yUKHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjoKCER1cmF0aW9uEhgKB3NlY29uZHMYASABKANSB3NlY29uZHMSFAoFbmFub3MYAiABKAVSBW5hbm9zQoMBChNjb20uZ29vZ2xlLnByb3RvYnVmQg1EdXJhdGlvblByb3RvUAFaMWdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL2R1cmF0aW9ucGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK2SMKBhIEHgByAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAHwoJCgIIHxIDIgAfCggKAQgSAyMASAoJCgIICxIDIwBICggKAQgSAyQALAoJCgIIARIDJAAsCggKAQgSAyUALgoJCgIICBIDJQAuCggKAQgSAyYAIgoJCgIIChIDJgAiCggKAQgSAycAIQoJCgIIJBIDJwAhCggKAQgSAygAOwoJCgIIJRIDKAA7Cp0QCgIEABIEZQByARqQECBBIER1cmF0aW9uIHJlcHJlc2VudHMgYSBzaWduZWQsIGZpeGVkLWxlbmd0aCBzcGFuIG9mIHRpbWUgcmVwcmVzZW50ZWQKIGFzIGEgY291bnQgb2Ygc2Vjb25kcyBhbmQgZnJhY3Rpb25zIG9mIHNlY29uZHMgYXQgbmFub3NlY29uZAogcmVzb2x1dGlvbi4gSXQgaXMgaW5kZXBlbmRlbnQgb2YgYW55IGNhbGVuZGFyIGFuZCBjb25jZXB0cyBsaWtlICJkYXkiCiBvciAibW9udGgiLiBJdCBpcyByZWxhdGVkIHRvIFRpbWVzdGFtcCBpbiB0aGF0IHRoZSBkaWZmZXJlbmNlIGJldHdlZW4KIHR3byBUaW1lc3RhbXAgdmFsdWVzIGlzIGEgRHVyYXRpb24gYW5kIGl0IGNhbiBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkCiBmcm9tIGEgVGltZXN0YW1wLiBSYW5nZSBpcyBhcHByb3hpbWF0ZWx5ICstMTAsMDAwIHllYXJzLgoKICMgRXhhbXBsZXMKCiBFeGFtcGxlIDE6IENvbXB1dGUgRHVyYXRpb24gZnJvbSB0d28gVGltZXN0YW1wcyBpbiBwc2V1ZG8gY29kZS4KCiAgICAgVGltZXN0YW1wIHN0YXJ0ID0gLi4uOwogICAgIFRpbWVzdGFtcCBlbmQgPSAuLi47CiAgICAgRHVyYXRpb24gZHVyYXRpb24gPSAuLi47CgogICAgIGR1cmF0aW9uLnNlY29uZHMgPSBlbmQuc2Vjb25kcyAtIHN0YXJ0LnNlY29uZHM7CiAgICAgZHVyYXRpb24ubmFub3MgPSBlbmQubmFub3MgLSBzdGFydC5uYW5vczsKCiAgICAgaWYgKGR1cmF0aW9uLnNlY29uZHMgPCAwICYmIGR1cmF0aW9uLm5hbm9zID4gMCkgewogICAgICAgZHVyYXRpb24uc2Vjb25kcyArPSAxOwogICAgICAgZHVyYXRpb24ubmFub3MgLT0gMTAwMDAwMDAwMDsKICAgICB9IGVsc2UgaWYgKGR1cmF0aW9uLnNlY29uZHMgPiAwICYmIGR1cmF0aW9uLm5hbm9zIDwgMCkgewogICAgICAgZHVyYXRpb24uc2Vjb25kcyAtPSAxOwogICAgICAgZHVyYXRpb24ubmFub3MgKz0gMTAwMDAwMDAwMDsKICAgICB9CgogRXhhbXBsZSAyOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFRpbWVzdGFtcCArIER1cmF0aW9uIGluIHBzZXVkbyBjb2RlLgoKICAgICBUaW1lc3RhbXAgc3RhcnQgPSAuLi47CiAgICAgRHVyYXRpb24gZHVyYXRpb24gPSAuLi47CiAgICAgVGltZXN0YW1wIGVuZCA9IC4uLjsKCiAgICAgZW5kLnNlY29uZHMgPSBzdGFydC5zZWNvbmRzICsgZHVyYXRpb24uc2Vjb25kczsKICAgICBlbmQubmFub3MgPSBzdGFydC5uYW5vcyArIGR1cmF0aW9uLm5hbm9zOwoKICAgICBpZiAoZW5kLm5hbm9zIDwgMCkgewogICAgICAgZW5kLnNlY29uZHMgLT0gMTsKICAgICAgIGVuZC5uYW5vcyArPSAxMDAwMDAwMDAwOwogICAgIH0gZWxzZSBpZiAoZW5kLm5hbm9zID49IDEwMDAwMDAwMDApIHsKICAgICAgIGVuZC5zZWNvbmRzICs9IDE7CiAgICAgICBlbmQubmFub3MgLT0gMTAwMDAwMDAwMDsKICAgICB9CgogRXhhbXBsZSAzOiBDb21wdXRlIER1cmF0aW9uIGZyb20gZGF0ZXRpbWUudGltZWRlbHRhIGluIFB5dGhvbi4KCiAgICAgdGQgPSBkYXRldGltZS50aW1lZGVsdGEoZGF5cz0zLCBtaW51dGVzPTEwKQogICAgIGR1cmF0aW9uID0gRHVyYXRpb24oKQogICAgIGR1cmF0aW9uLkZyb21UaW1lZGVsdGEodGQpCgogIyBKU09OIE1hcHBpbmcKCiBJbiBKU09OIGZvcm1hdCwgdGhlIER1cmF0aW9uIHR5cGUgaXMgZW5jb2RlZCBhcyBhIHN0cmluZyByYXRoZXIgdGhhbiBhbgogb2JqZWN0LCB3aGVyZSB0aGUgc3RyaW5nIGVuZHMgaW4gdGhlIHN1ZmZpeCAicyIgKGluZGljYXRpbmcgc2Vjb25kcykgYW5kCiBpcyBwcmVjZWRlZCBieSB0aGUgbnVtYmVyIG9mIHNlY29uZHMsIHdpdGggbmFub3NlY29uZHMgZXhwcmVzc2VkIGFzCiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBleGFtcGxlLCAzIHNlY29uZHMgd2l0aCAwIG5hbm9zZWNvbmRzIHNob3VsZCBiZQogZW5jb2RlZCBpbiBKU09OIGZvcm1hdCBhcyAiM3MiLCB3aGlsZSAzIHNlY29uZHMgYW5kIDEgbmFub3NlY29uZCBzaG91bGQKIGJlIGV4cHJlc3NlZCBpbiBKU09OIGZvcm1hdCBhcyAiMy4wMDAwMDAwMDFzIiwgYW5kIDMgc2Vjb25kcyBhbmQgMQogbWljcm9zZWNvbmQgc2hvdWxkIGJlIGV4cHJlc3NlZCBpbiBKU09OIGZvcm1hdCBhcyAiMy4wMDAwMDFzIi4KCgoKCgMEAAESA2UIEArcAQoEBAACABIDaQIUGs4BIFNpZ25lZCBzZWNvbmRzIG9mIHRoZSBzcGFuIG9mIHRpbWUuIE11c3QgYmUgZnJvbSAtMzE1LDU3NiwwMDAsMDAwCiB0byArMzE1LDU3NiwwMDAsMDAwIGluY2x1c2l2ZS4gTm90ZTogdGhlc2UgYm91bmRzIGFyZSBjb21wdXRlZCBmcm9tOgogNjAgc2VjL21pbiAqIDYwIG1pbi9ociAqIDI0IGhyL2RheSAqIDM2NS4yNSBkYXlzL3llYXIgKiAxMDAwMCB5ZWFycwoKDAoFBAACAAUSA2kCBwoMCgUEAAIAARIDaQgPCgwKBQQAAgADEgNpEhMKgwMKBAQAAgESA3ECEhr1AiBTaWduZWQgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbiBvZiB0aGUgc3Bhbgogb2YgdGltZS4gRHVyYXRpb25zIGxlc3MgdGhhbiBvbmUgc2Vjb25kIGFyZSByZXByZXNlbnRlZCB3aXRoIGEgMAogYHNlY29uZHNgIGZpZWxkIGFuZCBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIGBuYW5vc2AgZmllbGQuIEZvciBkdXJhdGlvbnMKIG9mIG9uZSBzZWNvbmQgb3IgbW9yZSwgYSBub24temVybyB2YWx1ZSBmb3IgdGhlIGBuYW5vc2AgZmllbGQgbXVzdCBiZQogb2YgdGhlIHNhbWUgc2lnbiBhcyB0aGUgYHNlY29uZHNgIGZpZWxkLiBNdXN0IGJlIGZyb20gLTk5OSw5OTksOTk5CiB0byArOTk5LDk5OSw5OTkgaW5jbHVzaXZlLgoKDAoFBAACAQUSA3ECBwoMCgUEAAIBARIDcQgNCgwKBQQAAgEDEgNxEBFiBnByb3RvMwqKPQogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIhCglGaWVsZE1hc2sSFAoFcGF0aHMYASADKAlSBXBhdGhzQoUBChNjb20uZ29vZ2xlLnByb3RvYnVmQg5GaWVsZE1hc2tQcm90b1ABWjJnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9maWVsZG1hc2twYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qhOwoHEgUeAPQBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIALAoJCgIIARIDIgAsCggKAQgSAyMALwoJCgIICBIDIwAvCggKAQgSAyQAIgoJCgIIChIDJAAiCggKAQgSAyUAIQoJCgIIJBIDJQAhCggKAQgSAyYAOwoJCgIIJRIDJgA7CggKAQgSAycASQoJCgIICxIDJwBJCggKAQgSAygAHwoJCgIIHxIDKAAfCrIsCgIEABIG8QEA9AEBGqMsIGBGaWVsZE1hc2tgIHJlcHJlc2VudHMgYSBzZXQgb2Ygc3ltYm9saWMgZmllbGQgcGF0aHMsIGZvciBleGFtcGxlOgoKICAgICBwYXRoczogImYuYSIKICAgICBwYXRoczogImYuYi5kIgoKIEhlcmUgYGZgIHJlcHJlc2VudHMgYSBmaWVsZCBpbiBzb21lIHJvb3QgbWVzc2FnZSwgYGFgIGFuZCBgYmAKIGZpZWxkcyBpbiB0aGUgbWVzc2FnZSBmb3VuZCBpbiBgZmAsIGFuZCBgZGAgYSBmaWVsZCBmb3VuZCBpbiB0aGUKIG1lc3NhZ2UgaW4gYGYuYmAuCgogRmllbGQgbWFza3MgYXJlIHVzZWQgdG8gc3BlY2lmeSBhIHN1YnNldCBvZiBmaWVsZHMgdGhhdCBzaG91bGQgYmUKIHJldHVybmVkIGJ5IGEgZ2V0IG9wZXJhdGlvbiBvciBtb2RpZmllZCBieSBhbiB1cGRhdGUgb3BlcmF0aW9uLgogRmllbGQgbWFza3MgYWxzbyBoYXZlIGEgY3VzdG9tIEpTT04gZW5jb2RpbmcgKHNlZSBiZWxvdykuCgogIyBGaWVsZCBNYXNrcyBpbiBQcm9qZWN0aW9ucwoKIFdoZW4gdXNlZCBpbiB0aGUgY29udGV4dCBvZiBhIHByb2plY3Rpb24sIGEgcmVzcG9uc2UgbWVzc2FnZSBvcgogc3ViLW1lc3NhZ2UgaXMgZmlsdGVyZWQgYnkgdGhlIEFQSSB0byBvbmx5IGNvbnRhaW4gdGhvc2UgZmllbGRzIGFzCiBzcGVjaWZpZWQgaW4gdGhlIG1hc2suIEZvciBleGFtcGxlLCBpZiB0aGUgbWFzayBpbiB0aGUgcHJldmlvdXMKIGV4YW1wbGUgaXMgYXBwbGllZCB0byBhIHJlc3BvbnNlIG1lc3NhZ2UgYXMgZm9sbG93czoKCiAgICAgZiB7CiAgICAgICBhIDogMjIKICAgICAgIGIgewogICAgICAgICBkIDogMQogICAgICAgICB4IDogMgogICAgICAgfQogICAgICAgeSA6IDEzCiAgICAgfQogICAgIHo6IDgKCiBUaGUgcmVzdWx0IHdpbGwgbm90IGNvbnRhaW4gc3BlY2lmaWMgdmFsdWVzIGZvciBmaWVsZHMgeCx5IGFuZCB6CiAodGhlaXIgdmFsdWUgd2lsbCBiZSBzZXQgdG8gdGhlIGRlZmF1bHQsIGFuZCBvbWl0dGVkIGluIHByb3RvIHRleHQKIG91dHB1dCk6CgoKICAgICBmIHsKICAgICAgIGEgOiAyMgogICAgICAgYiB7CiAgICAgICAgIGQgOiAxCiAgICAgICB9CiAgICAgfQoKIEEgcmVwZWF0ZWQgZmllbGQgaXMgbm90IGFsbG93ZWQgZXhjZXB0IGF0IHRoZSBsYXN0IHBvc2l0aW9uIG9mIGEKIHBhdGhzIHN0cmluZy4KCiBJZiBhIEZpZWxkTWFzayBvYmplY3QgaXMgbm90IHByZXNlbnQgaW4gYSBnZXQgb3BlcmF0aW9uLCB0aGUKIG9wZXJhdGlvbiBhcHBsaWVzIHRvIGFsbCBmaWVsZHMgKGFzIGlmIGEgRmllbGRNYXNrIG9mIGFsbCBmaWVsZHMKIGhhZCBiZWVuIHNwZWNpZmllZCkuCgogTm90ZSB0aGF0IGEgZmllbGQgbWFzayBkb2VzIG5vdCBuZWNlc3NhcmlseSBhcHBseSB0byB0aGUKIHRvcC1sZXZlbCByZXNwb25zZSBtZXNzYWdlLiBJbiBjYXNlIG9mIGEgUkVTVCBnZXQgb3BlcmF0aW9uLCB0aGUKIGZpZWxkIG1hc2sgYXBwbGllcyBkaXJlY3RseSB0byB0aGUgcmVzcG9uc2UsIGJ1dCBpbiBjYXNlIG9mIGEgUkVTVAogbGlzdCBvcGVyYXRpb24sIHRoZSBtYXNrIGluc3RlYWQgYXBwbGllcyB0byBlYWNoIGluZGl2aWR1YWwgbWVzc2FnZQogaW4gdGhlIHJldHVybmVkIHJlc291cmNlIGxpc3QuIEluIGNhc2Ugb2YgYSBSRVNUIGN1c3RvbSBtZXRob2QsCiBvdGhlciBkZWZpbml0aW9ucyBtYXkgYmUgdXNlZC4gV2hlcmUgdGhlIG1hc2sgYXBwbGllcyB3aWxsIGJlCiBjbGVhcmx5IGRvY3VtZW50ZWQgdG9nZXRoZXIgd2l0aCBpdHMgZGVjbGFyYXRpb24gaW4gdGhlIEFQSS4gIEluCiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvbiB0aGUgcmV0dXJuZWQgcmVzb3VyY2UvcmVzb3VyY2VzIGlzIHJlcXVpcmVkCiBiZWhhdmlvciBmb3IgQVBJcy4KCiAjIEZpZWxkIE1hc2tzIGluIFVwZGF0ZSBPcGVyYXRpb25zCgogQSBmaWVsZCBtYXNrIGluIHVwZGF0ZSBvcGVyYXRpb25zIHNwZWNpZmllcyB3aGljaCBmaWVsZHMgb2YgdGhlCiB0YXJnZXRlZCByZXNvdXJjZSBhcmUgZ29pbmcgdG8gYmUgdXBkYXRlZC4gVGhlIEFQSSBpcyByZXF1aXJlZAogdG8gb25seSBjaGFuZ2UgdGhlIHZhbHVlcyBvZiB0aGUgZmllbGRzIGFzIHNwZWNpZmllZCBpbiB0aGUgbWFzawogYW5kIGxlYXZlIHRoZSBvdGhlcnMgdW50b3VjaGVkLiBJZiBhIHJlc291cmNlIGlzIHBhc3NlZCBpbiB0bwogZGVzY3JpYmUgdGhlIHVwZGF0ZWQgdmFsdWVzLCB0aGUgQVBJIGlnbm9yZXMgdGhlIHZhbHVlcyBvZiBhbGwKIGZpZWxkcyBub3QgY292ZXJlZCBieSB0aGUgbWFzay4KCiBJZiBhIHJlcGVhdGVkIGZpZWxkIGlzIHNwZWNpZmllZCBmb3IgYW4gdXBkYXRlIG9wZXJhdGlvbiwgbmV3IHZhbHVlcyB3aWxsCiBiZSBhcHBlbmRlZCB0byB0aGUgZXhpc3RpbmcgcmVwZWF0ZWQgZmllbGQgaW4gdGhlIHRhcmdldCByZXNvdXJjZS4gTm90ZSB0aGF0CiBhIHJlcGVhdGVkIGZpZWxkIGlzIG9ubHkgYWxsb3dlZCBpbiB0aGUgbGFzdCBwb3NpdGlvbiBvZiBhIGBwYXRoc2Agc3RyaW5nLgoKIElmIGEgc3ViLW1lc3NhZ2UgaXMgc3BlY2lmaWVkIGluIHRoZSBsYXN0IHBvc2l0aW9uIG9mIHRoZSBmaWVsZCBtYXNrIGZvciBhbgogdXBkYXRlIG9wZXJhdGlvbiwgdGhlbiBuZXcgdmFsdWUgd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgZXhpc3Rpbmcgc3ViLW1lc3NhZ2UKIGluIHRoZSB0YXJnZXQgcmVzb3VyY2UuCgogRm9yIGV4YW1wbGUsIGdpdmVuIHRoZSB0YXJnZXQgbWVzc2FnZToKCiAgICAgZiB7CiAgICAgICBiIHsKICAgICAgICAgZDogMQogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMV0KICAgICB9CgogQW5kIGFuIHVwZGF0ZSBtZXNzYWdlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgfQogICAgICAgYzogWzJdCiAgICAgfQoKIHRoZW4gaWYgdGhlIGZpZWxkIG1hc2sgaXM6CgogIHBhdGhzOiBbImYuYiIsICJmLmMiXQoKIHRoZW4gdGhlIHJlc3VsdCB3aWxsIGJlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMSwgMl0KICAgICB9CgogQW4gaW1wbGVtZW50YXRpb24gbWF5IHByb3ZpZGUgb3B0aW9ucyB0byBvdmVycmlkZSB0aGlzIGRlZmF1bHQgYmVoYXZpb3IgZm9yCiByZXBlYXRlZCBhbmQgbWVzc2FnZSBmaWVsZHMuCgogSW4gb3JkZXIgdG8gcmVzZXQgYSBmaWVsZCdzIHZhbHVlIHRvIHRoZSBkZWZhdWx0LCB0aGUgZmllbGQgbXVzdAogYmUgaW4gdGhlIG1hc2sgYW5kIHNldCB0byB0aGUgZGVmYXVsdCB2YWx1ZSBpbiB0aGUgcHJvdmlkZWQgcmVzb3VyY2UuCiBIZW5jZSwgaW4gb3JkZXIgdG8gcmVzZXQgYWxsIGZpZWxkcyBvZiBhIHJlc291cmNlLCBwcm92aWRlIGEgZGVmYXVsdAogaW5zdGFuY2Ugb2YgdGhlIHJlc291cmNlIGFuZCBzZXQgYWxsIGZpZWxkcyBpbiB0aGUgbWFzaywgb3IgZG8KIG5vdCBwcm92aWRlIGEgbWFzayBhcyBkZXNjcmliZWQgYmVsb3cuCgogSWYgYSBmaWVsZCBtYXNrIGlzIG5vdCBwcmVzZW50IG9uIHVwZGF0ZSwgdGhlIG9wZXJhdGlvbiBhcHBsaWVzIHRvCiBhbGwgZmllbGRzIChhcyBpZiBhIGZpZWxkIG1hc2sgb2YgYWxsIGZpZWxkcyBoYXMgYmVlbiBzcGVjaWZpZWQpLgogTm90ZSB0aGF0IGluIHRoZSBwcmVzZW5jZSBvZiBzY2hlbWEgZXZvbHV0aW9uLCB0aGlzIG1heSBtZWFuIHRoYXQKIGZpZWxkcyB0aGUgY2xpZW50IGRvZXMgbm90IGtub3cgYW5kIGhhcyB0aGVyZWZvcmUgbm90IGZpbGxlZCBpbnRvCiB0aGUgcmVxdWVzdCB3aWxsIGJlIHJlc2V0IHRvIHRoZWlyIGRlZmF1bHQuIElmIHRoaXMgaXMgdW53YW50ZWQKIGJlaGF2aW9yLCBhIHNwZWNpZmljIHNlcnZpY2UgbWF5IHJlcXVpcmUgYSBjbGllbnQgdG8gYWx3YXlzIHNwZWNpZnkKIGEgZmllbGQgbWFzaywgcHJvZHVjaW5nIGFuIGVycm9yIGlmIG5vdC4KCiBBcyB3aXRoIGdldCBvcGVyYXRpb25zLCB0aGUgbG9jYXRpb24gb2YgdGhlIHJlc291cmNlIHdoaWNoCiBkZXNjcmliZXMgdGhlIHVwZGF0ZWQgdmFsdWVzIGluIHRoZSByZXF1ZXN0IG1lc3NhZ2UgZGVwZW5kcyBvbiB0aGUKIG9wZXJhdGlvbiBraW5kLiBJbiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvZiB0aGUgZmllbGQgbWFzayBpcwogcmVxdWlyZWQgdG8gYmUgaG9ub3JlZCBieSB0aGUgQVBJLgoKICMjIENvbnNpZGVyYXRpb25zIGZvciBIVFRQIFJFU1QKCiBUaGUgSFRUUCBraW5kIG9mIGFuIHVwZGF0ZSBvcGVyYXRpb24gd2hpY2ggdXNlcyBhIGZpZWxkIG1hc2sgbXVzdAogYmUgc2V0IHRvIFBBVENIIGluc3RlYWQgb2YgUFVUIGluIG9yZGVyIHRvIHNhdGlzZnkgSFRUUCBzZW1hbnRpY3MKIChQVVQgbXVzdCBvbmx5IGJlIHVzZWQgZm9yIGZ1bGwgdXBkYXRlcykuCgogIyBKU09OIEVuY29kaW5nIG9mIEZpZWxkIE1hc2tzCgogSW4gSlNPTiwgYSBmaWVsZCBtYXNrIGlzIGVuY29kZWQgYXMgYSBzaW5nbGUgc3RyaW5nIHdoZXJlIHBhdGhzIGFyZQogc2VwYXJhdGVkIGJ5IGEgY29tbWEuIEZpZWxkcyBuYW1lIGluIGVhY2ggcGF0aCBhcmUgY29udmVydGVkCiB0by9mcm9tIGxvd2VyLWNhbWVsIG5hbWluZyBjb252ZW50aW9ucy4KCiBBcyBhbiBleGFtcGxlLCBjb25zaWRlciB0aGUgZm9sbG93aW5nIG1lc3NhZ2UgZGVjbGFyYXRpb25zOgoKICAgICBtZXNzYWdlIFByb2ZpbGUgewogICAgICAgVXNlciB1c2VyID0gMTsKICAgICAgIFBob3RvIHBob3RvID0gMjsKICAgICB9CiAgICAgbWVzc2FnZSBVc2VyIHsKICAgICAgIHN0cmluZyBkaXNwbGF5X25hbWUgPSAxOwogICAgICAgc3RyaW5nIGFkZHJlc3MgPSAyOwogICAgIH0KCiBJbiBwcm90byBhIGZpZWxkIG1hc2sgZm9yIGBQcm9maWxlYCBtYXkgbG9vayBhcyBzdWNoOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAidXNlci5kaXNwbGF5X25hbWUiCiAgICAgICBwYXRoczogInBob3RvIgogICAgIH0KCiBJbiBKU09OLCB0aGUgc2FtZSBtYXNrIGlzIHJlcHJlc2VudGVkIGFzIGJlbG93OgoKICAgICB7CiAgICAgICBtYXNrOiAidXNlci5kaXNwbGF5TmFtZSxwaG90byIKICAgICB9CgogIyBGaWVsZCBNYXNrcyBhbmQgT25lb2YgRmllbGRzCgogRmllbGQgbWFza3MgdHJlYXQgZmllbGRzIGluIG9uZW9mcyBqdXN0IGFzIHJlZ3VsYXIgZmllbGRzLiBDb25zaWRlciB0aGUKIGZvbGxvd2luZyBtZXNzYWdlOgoKICAgICBtZXNzYWdlIFNhbXBsZU1lc3NhZ2UgewogICAgICAgb25lb2YgdGVzdF9vbmVvZiB7CiAgICAgICAgIHN0cmluZyBuYW1lID0gNDsKICAgICAgICAgU3ViTWVzc2FnZSBzdWJfbWVzc2FnZSA9IDk7CiAgICAgICB9CiAgICAgfQoKIFRoZSBmaWVsZCBtYXNrIGNhbiBiZToKCiAgICAgbWFzayB7CiAgICAgICBwYXRoczogIm5hbWUiCiAgICAgfQoKIE9yOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAic3ViX21lc3NhZ2UiCiAgICAgfQoKIE5vdGUgdGhhdCBvbmVvZiB0eXBlIG5hbWVzICgidGVzdF9vbmVvZiIgaW4gdGhpcyBjYXNlKSBjYW5ub3QgYmUgdXNlZCBpbgogcGF0aHMuCgogIyMgRmllbGQgTWFzayBWZXJpZmljYXRpb24KCiBUaGUgaW1wbGVtZW50YXRpb24gb2YgYW55IEFQSSBtZXRob2Qgd2hpY2ggaGFzIGEgRmllbGRNYXNrIHR5cGUgZmllbGQgaW4gdGhlCiByZXF1ZXN0IHNob3VsZCB2ZXJpZnkgdGhlIGluY2x1ZGVkIGZpZWxkIHBhdGhzLCBhbmQgcmV0dXJuIGFuCiBgSU5WQUxJRF9BUkdVTUVOVGAgZXJyb3IgaWYgYW55IHBhdGggaXMgdW5tYXBwYWJsZS4KCgsKAwQAARIE8QEIEQosCgQEAAIAEgTzAQIcGh4gVGhlIHNldCBvZiBmaWVsZCBtYXNrIHBhdGhzLgoKDQoFBAACAAQSBPMBAgoKDQoFBAACAAUSBPMBCxEKDQoFBAACAAESBPMBEhcKDQoFBAACAAMSBPMBGhtiBnByb3RvMwrDMQofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjsKCVRpbWVzdGFtcBIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0KFAQoTY29tLmdvb2dsZS5wcm90b2J1ZkIOVGltZXN0YW1wUHJvdG9QAVoyZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vdGltZXN0YW1wcGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKwS8KBxIFHgCPAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAB8KCQoCCB8SAyIAHwoICgEIEgMjAEkKCQoCCAsSAyMASQoICgEIEgMkACwKCQoCCAESAyQALAoICgEIEgMlAC8KCQoCCAgSAyUALwoICgEIEgMmACIKCQoCCAoSAyYAIgoICgEIEgMnACEKCQoCCCQSAycAIQoICgEIEgMoADsKCQoCCCUSAygAOwraHQoCBAASBoQBAI8BARrLHSBBIFRpbWVzdGFtcCByZXByZXNlbnRzIGEgcG9pbnQgaW4gdGltZSBpbmRlcGVuZGVudCBvZiBhbnkgdGltZSB6b25lIG9yIGxvY2FsCiBjYWxlbmRhciwgZW5jb2RlZCBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0CiBuYW5vc2Vjb25kIHJlc29sdXRpb24uIFRoZSBjb3VudCBpcyByZWxhdGl2ZSB0byBhbiBlcG9jaCBhdCBVVEMgbWlkbmlnaHQgb24KIEphbnVhcnkgMSwgMTk3MCwgaW4gdGhlIHByb2xlcHRpYyBHcmVnb3JpYW4gY2FsZW5kYXIgd2hpY2ggZXh0ZW5kcyB0aGUKIEdyZWdvcmlhbiBjYWxlbmRhciBiYWNrd2FyZHMgdG8geWVhciBvbmUuCgogQWxsIG1pbnV0ZXMgYXJlIDYwIHNlY29uZHMgbG9uZy4gTGVhcCBzZWNvbmRzIGFyZSAic21lYXJlZCIgc28gdGhhdCBubyBsZWFwCiBzZWNvbmQgdGFibGUgaXMgbmVlZGVkIGZvciBpbnRlcnByZXRhdGlvbiwgdXNpbmcgYSBbMjQtaG91ciBsaW5lYXIKIHNtZWFyXShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS90aW1lL3NtZWFyKS4KCiBUaGUgcmFuZ2UgaXMgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0byA5OTk5LTEyLTMxVDIzOjU5OjU5Ljk5OTk5OTk5OVouIEJ5CiByZXN0cmljdGluZyB0byB0aGF0IHJhbmdlLCB3ZSBlbnN1cmUgdGhhdCB3ZSBjYW4gY29udmVydCB0byBhbmQgZnJvbSBbUkZDCiAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGRhdGUgc3RyaW5ncy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFBPU0lYIGB0aW1lKClgLgoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcyh0aW1lKE5VTEwpKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKDApOwoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgZ2V0dGltZW9mZGF5KClgLgoKICAgICBzdHJ1Y3QgdGltZXZhbCB0djsKICAgICBnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModHYudHZfc2VjKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKHR2LnR2X3VzZWMgKiAxMDAwKTsKCiBFeGFtcGxlIDM6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gV2luMzIgYEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKClgLgoKICAgICBGSUxFVElNRSBmdDsKICAgICBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgmZnQpOwogICAgIFVJTlQ2NCB0aWNrcyA9ICgoKFVJTlQ2NClmdC5kd0hpZ2hEYXRlVGltZSkgPDwgMzIpIHwgZnQuZHdMb3dEYXRlVGltZTsKCiAgICAgLy8gQSBXaW5kb3dzIHRpY2sgaXMgMTAwIG5hbm9zZWNvbmRzLiBXaW5kb3dzIGVwb2NoIDE2MDEtMDEtMDFUMDA6MDA6MDBaCiAgICAgLy8gaXMgMTE2NDQ0NzM2MDAgc2Vjb25kcyBiZWZvcmUgVW5peCBlcG9jaCAxOTcwLTAxLTAxVDAwOjAwOjAwWi4KICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcygoSU5UNjQpICgodGlja3MgLyAxMDAwMDAwMCkgLSAxMTY0NDQ3MzYwMExMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygoSU5UMzIpICgodGlja3MgJSAxMDAwMDAwMCkgKiAxMDApKTsKCiBFeGFtcGxlIDQ6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gSmF2YSBgU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKClgLgoKICAgICBsb25nIG1pbGxpcyA9IFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wID0gVGltZXN0YW1wLm5ld0J1aWxkZXIoKS5zZXRTZWNvbmRzKG1pbGxpcyAvIDEwMDApCiAgICAgICAgIC5zZXROYW5vcygoaW50KSAoKG1pbGxpcyAlIDEwMDApICogMTAwMDAwMCkpLmJ1aWxkKCk7CgogRXhhbXBsZSA1OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIEphdmEgYEluc3RhbnQubm93KClgLgoKICAgICBJbnN0YW50IG5vdyA9IEluc3RhbnQubm93KCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXAgPQogICAgICAgICBUaW1lc3RhbXAubmV3QnVpbGRlcigpLnNldFNlY29uZHMobm93LmdldEVwb2NoU2Vjb25kKCkpCiAgICAgICAgICAgICAuc2V0TmFub3Mobm93LmdldE5hbm8oKSkuYnVpbGQoKTsKCiBFeGFtcGxlIDY6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gY3VycmVudCB0aW1lIGluIFB5dGhvbi4KCiAgICAgdGltZXN0YW1wID0gVGltZXN0YW1wKCkKICAgICB0aW1lc3RhbXAuR2V0Q3VycmVudFRpbWUoKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBUaW1lc3RhbXAgdHlwZSBpcyBlbmNvZGVkIGFzIGEgc3RyaW5nIGluIHRoZQogW1JGQyAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGZvcm1hdC4gVGhhdCBpcywgdGhlCiBmb3JtYXQgaXMgInt5ZWFyfS17bW9udGh9LXtkYXl9VHtob3VyfTp7bWlufTp7c2VjfVsue2ZyYWNfc2VjfV1aIgogd2hlcmUge3llYXJ9IGlzIGFsd2F5cyBleHByZXNzZWQgdXNpbmcgZm91ciBkaWdpdHMgd2hpbGUge21vbnRofSwge2RheX0sCiB7aG91cn0sIHttaW59LCBhbmQge3NlY30gYXJlIHplcm8tcGFkZGVkIHRvIHR3byBkaWdpdHMgZWFjaC4gVGhlIGZyYWN0aW9uYWwKIHNlY29uZHMsIHdoaWNoIGNhbiBnbyB1cCB0byA5IGRpZ2l0cyAoaS5lLiB1cCB0byAxIG5hbm9zZWNvbmQgcmVzb2x1dGlvbiksCiBhcmUgb3B0aW9uYWwuIFRoZSAiWiIgc3VmZml4IGluZGljYXRlcyB0aGUgdGltZXpvbmUgKCJVVEMiKTsgdGhlIHRpbWV6b25lCiBpcyByZXF1aXJlZC4gQSBwcm90bzMgSlNPTiBzZXJpYWxpemVyIHNob3VsZCBhbHdheXMgdXNlIFVUQyAoYXMgaW5kaWNhdGVkIGJ5CiAiWiIpIHdoZW4gcHJpbnRpbmcgdGhlIFRpbWVzdGFtcCB0eXBlIGFuZCBhIHByb3RvMyBKU09OIHBhcnNlciBzaG91bGQgYmUKIGFibGUgdG8gYWNjZXB0IGJvdGggVVRDIGFuZCBvdGhlciB0aW1lem9uZXMgKGFzIGluZGljYXRlZCBieSBhbiBvZmZzZXQpLgoKIEZvciBleGFtcGxlLCAiMjAxNy0wMS0xNVQwMTozMDoxNS4wMVoiIGVuY29kZXMgMTUuMDEgc2Vjb25kcyBwYXN0CiAwMTozMCBVVEMgb24gSmFudWFyeSAxNSwgMjAxNy4KCiBJbiBKYXZhU2NyaXB0LCBvbmUgY2FuIGNvbnZlcnQgYSBEYXRlIG9iamVjdCB0byB0aGlzIGZvcm1hdCB1c2luZyB0aGUKIHN0YW5kYXJkCiBbdG9JU09TdHJpbmcoKV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvRGF0ZS90b0lTT1N0cmluZykKIG1ldGhvZC4gSW4gUHl0aG9uLCBhIHN0YW5kYXJkIGBkYXRldGltZS5kYXRldGltZWAgb2JqZWN0IGNhbiBiZSBjb252ZXJ0ZWQKIHRvIHRoaXMgZm9ybWF0IHVzaW5nCiBbYHN0cmZ0aW1lYF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMi9saWJyYXJ5L3RpbWUuaHRtbCN0aW1lLnN0cmZ0aW1lKSB3aXRoCiB0aGUgdGltZSBmb3JtYXQgc3BlYyAnJVktJW0tJWRUJUg6JU06JVMuJWZaJy4gTGlrZXdpc2UsIGluIEphdmEsIG9uZSBjYW4gdXNlCiB0aGUgSm9kYSBUaW1lJ3MgW2BJU09EYXRlVGltZUZvcm1hdC5kYXRlVGltZSgpYF0oCiBodHRwOi8vam9kYS10aW1lLnNvdXJjZWZvcmdlLm5ldC9hcGlkb2NzL29yZy9qb2RhL3RpbWUvZm9ybWF0L0lTT0RhdGVUaW1lRm9ybWF0Lmh0bWwjZGF0ZVRpbWUoKQogKSB0byBvYnRhaW4gYSBmb3JtYXR0ZXIgY2FwYWJsZSBvZiBnZW5lcmF0aW5nIHRpbWVzdGFtcHMgaW4gdGhpcyBmb3JtYXQuCgoKCwoDBAABEgSEAQgRCp0BCgQEAAIAEgSIAQIUGo4BIFJlcHJlc2VudHMgc2Vjb25kcyBvZiBVVEMgdGltZSBzaW5jZSBVbml4IGVwb2NoCiAxOTcwLTAxLTAxVDAwOjAwOjAwWi4gTXVzdCBiZSBmcm9tIDAwMDEtMDEtMDFUMDA6MDA6MDBaIHRvCiA5OTk5LTEyLTMxVDIzOjU5OjU5WiBpbmNsdXNpdmUuCgoNCgUEAAIABRIEiAECBwoNCgUEAAIAARIEiAEIDwoNCgUEAAIAAxIEiAESEwrlAQoEBAACARIEjgECEhrWASBOb24tbmVnYXRpdmUgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbi4gTmVnYXRpdmUKIHNlY29uZCB2YWx1ZXMgd2l0aCBmcmFjdGlvbnMgbXVzdCBzdGlsbCBoYXZlIG5vbi1uZWdhdGl2ZSBuYW5vcyB2YWx1ZXMKIHRoYXQgY291bnQgZm9yd2FyZCBpbiB0aW1lLiBNdXN0IGJlIGZyb20gMCB0byA5OTksOTk5LDk5OQogaW5jbHVzaXZlLgoKDQoFBAACAQUSBI4BAgcKDQoFBAACAQESBI4BCA0KDQoFBAACAQMSBI4BEBFiBnByb3RvMwrNIwoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvEg9nb29nbGUucHJvdG9idWYiIwoLRG91YmxlVmFsdWUSFAoFdmFsdWUYASABKAFSBXZhbHVlIiIKCkZsb2F0VmFsdWUSFAoFdmFsdWUYASABKAJSBXZhbHVlIiIKCkludDY0VmFsdWUSFAoFdmFsdWUYASABKANSBXZhbHVlIiMKC1VJbnQ2NFZhbHVlEhQKBXZhbHVlGAEgASgEUgV2YWx1ZSIiCgpJbnQzMlZhbHVlEhQKBXZhbHVlGAEgASgFUgV2YWx1ZSIjCgtVSW50MzJWYWx1ZRIUCgV2YWx1ZRgBIAEoDVIFdmFsdWUiIQoJQm9vbFZhbHVlEhQKBXZhbHVlGAEgASgIUgV2YWx1ZSIjCgtTdHJpbmdWYWx1ZRIUCgV2YWx1ZRgBIAEoCVIFdmFsdWUiIgoKQnl0ZXNWYWx1ZRIUCgV2YWx1ZRgBIAEoDFIFdmFsdWVCgwEKE2NvbS5nb29nbGUucHJvdG9idWZCDVdyYXBwZXJzUHJvdG9QAVoxZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vd3JhcHBlcnNwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rEHwoGEgQoAHoBCtkQCgEMEgMoABIyzhAgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgogV3JhcHBlcnMgZm9yIHByaW1pdGl2ZSAobm9uLW1lc3NhZ2UpIHR5cGVzLiBUaGVzZSB0eXBlcyBhcmUgdXNlZnVsCiBmb3IgZW1iZWRkaW5nIHByaW1pdGl2ZXMgaW4gdGhlIGBnb29nbGUucHJvdG9idWYuQW55YCB0eXBlIGFuZCBmb3IgcGxhY2VzCiB3aGVyZSB3ZSBuZWVkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIGFic2VuY2Ugb2YgYSBwcmltaXRpdmUKIHR5cGVkIGZpZWxkIGFuZCBpdHMgZGVmYXVsdCB2YWx1ZS4KCiBUaGVzZSB3cmFwcGVycyBoYXZlIG5vIG1lYW5pbmdmdWwgdXNlIHdpdGhpbiByZXBlYXRlZCBmaWVsZHMgYXMgdGhleSBsYWNrCiB0aGUgYWJpbGl0eSB0byBkZXRlY3QgcHJlc2VuY2Ugb24gaW5kaXZpZHVhbCBlbGVtZW50cy4KIFRoZXNlIHdyYXBwZXJzIGhhdmUgbm8gbWVhbmluZ2Z1bCB1c2Ugd2l0aGluIGEgbWFwIG9yIGEgb25lb2Ygc2luY2UKIGluZGl2aWR1YWwgZW50cmllcyBvZiBhIG1hcCBvciBmaWVsZHMgb2YgYSBvbmVvZiBjYW4gYWxyZWFkeSBkZXRlY3QgcHJlc2VuY2UuCgoICgECEgMqABgKCAoBCBIDLAAfCgkKAggfEgMsAB8KCAoBCBIDLQBICgkKAggLEgMtAEgKCAoBCBIDLgAsCgkKAggBEgMuACwKCAoBCBIDLwAuCgkKAggIEgMvAC4KCAoBCBIDMAAiCgkKAggKEgMwACIKCAoBCBIDMQAhCgkKAggkEgMxACEKCAoBCBIDMgA7CgkKAggl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bxImcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8aHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8aH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90byLpXQoSVGVzdEFsbFR5cGVzUHJvdG8zEiUKDm9wdGlvbmFsX2ludDMyGAEgASgFUg1vcHRpb25hbEludDMyEiUKDm9wdGlvbmFsX2ludDY0GAIgASgDUg1vcHRpb25hbEludDY0EicKD29wdGlvbmFsX3VpbnQzMhgDIAEoDVIOb3B0aW9uYWxVaW50MzISJwoPb3B0aW9uYWxfdWludDY0GAQgASgEUg5vcHRpb25hbFVpbnQ2NBInCg9vcHRpb25hbF9zaW50MzIYBSABKBFSDm9wdGlvbmFsU2ludDMyEicKD29wdGlvbmFsX3NpbnQ2NBgGIAEoElIOb3B0aW9uYWxTaW50NjQSKQoQb3B0aW9uYWxfZml4ZWQzMhgHIAEoB1IPb3B0aW9uYWxGaXhlZDMyEikKEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZSD29wdGlvbmFsRml4ZWQ2NBIrChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD1IQb3B0aW9uYWxTZml4ZWQzMhIrChFvcHRpb25hbF9zZml4ZWQ2NBgKIAEoEFIQb3B0aW9uYWxTZml4ZWQ2NBIlCg5vcHRpb25hbF9mbG9hdBgLIAEoAlINb3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEoABChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2UScAoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USdwoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmcKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25FbnVtUhNvcHRpb25hbEZvcmVpZ25FbnVtEnoKFW9wdGlvbmFsX2FsaWFzZWRfZW51bRgXIAEoDjJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5BbGlhc2VkRW51bVITb3B0aW9uYWxBbGlhc2VkRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSZwoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzNSEHJlY3Vyc2l2ZU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSgAEKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJwChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyNi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ3ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SZwoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEiEKDHBhY2tlZF9pbnQzMhhLIAMoBVILcGFja2VkSW50MzISIQoMcGFja2VkX2ludDY0GEwgAygDUgtwYWNrZWRJbnQ2NBIjCg1wYWNrZWRfdWludDMyGE0gAygNUgxwYWNrZWRVaW50MzISIwoNcGFja2VkX3VpbnQ2NBhOIAMoBFIMcGFja2VkVWludDY0EiMKDXBhY2tlZF9zaW50MzIYTyADKBFSDHBhY2tlZFNpbnQzMhIjCg1wYWNrZWRfc2ludDY0GFAgAygSUgxwYWNrZWRTaW50NjQSJQoOcGFja2VkX2ZpeGVkMzIYUSADKAdSDXBhY2tlZEZpeGVkMzISJQoOcGFja2VkX2ZpeGVkNjQYUiADKAZSDXBhY2tlZEZpeGVkNjQSJwoPcGFja2VkX3NmaXhlZDMyGFMgAygPUg5wYWNrZWRTZml4ZWQzMhInCg9wYWNrZWRfc2ZpeGVkNjQYVCADKBBSDnBhY2tlZFNmaXhlZDY0EiEKDHBhY2tlZF9mbG9hdBhVIAMoAlILcGFja2VkRmxvYXQSIwoNcGFja2VkX2RvdWJsZRhWIAMoAVIMcGFja2VkRG91YmxlEh8KC3BhY2tlZF9ib29sGFcgAygIUgpwYWNrZWRCb29sEnMKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhBwYWNrZWROZXN0ZWRFbnVtEiwKDnVucGFja2VkX2ludDMyGFkgAygFQgWqAQIYAlINdW5wYWNrZWRJbnQzMhIsCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0IFqgECGAJSDXVucGFja2VkSW50NjQSLgoPdW5wYWNrZWRfdWludDMyGFsgAygNQgWqAQIYAlIOdW5wYWNrZWRVaW50MzISLgoPdW5wYWNrZWRfdWludDY0GFwgAygEQgWqAQIYAlIOdW5wYWNrZWRVaW50NjQSLgoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgWqAQIYAlIOdW5wYWNrZWRTaW50MzISLgoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgWqAQIYAlIOdW5wYWNrZWRTaW50NjQSMAoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB0IFqgECGAJSD3VucGFja2VkRml4ZWQzMhIwChB1bnBhY2tlZF9maXhlZDY0GGAgAygGQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDY0EjIKEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQzMhIyChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEIFqgECGAJSEHVucGFja2VkU2ZpeGVkNjQSLAoOdW5wYWNrZWRfZmxvYXQYYyADKAJCBaoBAhgCUg11bnBhY2tlZEZsb2F0Ei4KD3VucGFja2VkX2RvdWJsZRhkIAMoAUIFqgECGAJSDnVucGFja2VkRG91YmxlEioKDXVucGFja2VkX2Jvb2wYZSADKAhCBaoBAhgCUgx1bnBhY2tlZEJvb2wSfgoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUIFqgECGAJSEnVucGFja2VkTmVzdGVkRW51bRJ1Cg9tYXBfaW50MzJfaW50MzIYOCADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEnUKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSewoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ7ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnsKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISewoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBKBAQoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhKBAQoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBg/IAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKHAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhKHAQoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GEEgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJ1Cg9tYXBfaW50MzJfZmxvYXQYQiADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EngKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSbwoNbWFwX2Jvb2xfYm9vbBhEIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJ7ChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEngKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nQnl0ZXNFbnRyeVIObWFwU3RyaW5nQnl0ZXMSkQEKGW1hcF9zdHJpbmdfbmVzdGVkX21lc3NhZ2UYRyADKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5UhZtYXBTdHJpbmdOZXN0ZWRNZXNzYWdlEpQBChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJXLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKIAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnlSE21hcFN0cmluZ05lc3RlZEVudW0SiwEKF21hcF9zdHJpbmdfZm9yZWlnbl9lbnVtGEogAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJ8ChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSZgoKb25lb2ZfZW51bRh3IAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJGChBvbmVvZl9udWxsX3ZhbHVlGHggASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZUgAUg5vbmVvZk51bGxWYWx1ZRJPChVvcHRpb25hbF9ib29sX3dyYXBwZXIYyQEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVITb3B0aW9uYWxCb29sV3JhcHBlchJSChZvcHRpb25hbF9pbnQzMl93cmFwcGVyGMoBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUhRvcHRpb25hbEludDMyV3JhcHBlchJSChZvcHRpb25hbF9pbnQ2NF93cmFwcGVyGMsBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUhRvcHRpb25hbEludDY0V3JhcHBlchJVChdvcHRpb25hbF91aW50MzJfd3JhcHBlchjMASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSFW9wdGlvbmFsVWludDMyV3JhcHBlchJVChdvcHRpb25hbF91aW50NjRfd3JhcHBlchjNASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSFW9wdGlvbmFsVWludDY0V3JhcHBlchJSChZvcHRpb25hbF9mbG9hdF93cmFwcGVyGM4BIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUhRvcHRpb25hbEZsb2F0V3JhcHBlchJVChdvcHRpb25hbF9kb3VibGVfd3JhcHBlchjPASABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSFW9wdGlvbmFsRG91YmxlV3JhcHBlchJVChdvcHRpb25hbF9zdHJpbmdfd3JhcHBlchjQASABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSFW9wdGlvbmFsU3RyaW5nV3JhcHBlchJSChZvcHRpb25hbF9ieXRlc193cmFwcGVyGNEBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUhRvcHRpb25hbEJ5dGVzV3JhcHBlchJPChVyZXBlYXRlZF9ib29sX3dyYXBwZXIY0wEgAygLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVITcmVwZWF0ZWRCb29sV3JhcHBlchJSChZyZXBlYXRlZF9pbnQzMl93cmFwcGVyGNQBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUhRyZXBlYXRlZEludDMyV3JhcHBlchJSChZyZXBlYXRlZF9pbnQ2NF93cmFwcGVyGNUBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUhRyZXBlYXRlZEludDY0V3JhcHBlchJVChdyZXBlYXRlZF91aW50MzJfd3JhcHBlchjWASADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSFXJlcGVhdGVkVWludDMyV3JhcHBlchJVChdyZXBlYXRlZF91aW50NjRfd3JhcHBlchjXASADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSFXJlcGVhdGVkVWludDY0V3JhcHBlchJSChZyZXBlYXRlZF9mbG9hdF93cmFwcGVyGNgBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUhRyZXBlYXRlZEZsb2F0V3JhcHBlchJVChdyZXBlYXRlZF9kb3VibGVfd3JhcHBlchjZASADKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSFXJlcGVhdGVkRG91YmxlV3JhcHBlchJVChdyZXBlYXRlZF9zdHJpbmdfd3JhcHBlchjaASADKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSFXJlcGVhdGVkU3RyaW5nV3JhcHBlchJSChZyZXBlYXRlZF9ieXRlc193cmFwcGVyGNsBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUhRyZXBlYXRlZEJ5dGVzV3JhcHBlchJHChFvcHRpb25hbF9kdXJhdGlvbhitAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEG9wdGlvbmFsRHVyYXRpb24SSgoSb3B0aW9uYWxfdGltZXN0YW1wGK4CIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEW9wdGlvbmFsVGltZXN0YW1wEksKE29wdGlvbmFsX2ZpZWxkX21hc2sYrwIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IRb3B0aW9uYWxGaWVsZE1hc2sSQQoPb3B0aW9uYWxfc3RydWN0GLACIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSDm9wdGlvbmFsU3RydWN0EjgKDG9wdGlvbmFsX2FueRixAiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgtvcHRpb25hbEFueRI+Cg5vcHRpb25hbF92YWx1ZRiyAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSDW9wdGlvbmFsVmFsdWUSSwoTb3B0aW9uYWxfbnVsbF92YWx1ZRizAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlUhFvcHRpb25hbE51bGxWYWx1ZRJHChFyZXBlYXRlZF9kdXJhdGlvbhi3AiADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEHJlcGVhdGVkRHVyYXRpb24SSgoScmVwZWF0ZWRfdGltZXN0YW1wGLgCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEXJlcGVhdGVkVGltZXN0YW1wEkoKEnJlcGVhdGVkX2ZpZWxkbWFzaxi5AiADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFyZXBlYXRlZEZpZWxkbWFzaxJBCg9yZXBlYXRlZF9zdHJ1Y3QYxAIgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOcmVwZWF0ZWRTdHJ1Y3QSOAoMcmVwZWF0ZWRfYW55GLsCIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC3JlcGVhdGVkQW55Ej4KDnJlcGVhdGVkX3ZhbHVlGLwCIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINcmVwZWF0ZWRWYWx1ZRJLChNyZXBlYXRlZF9saXN0X3ZhbHVlGL0CIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5MaXN0VmFsdWVSEXJlcGVhdGVkTGlzdFZhbHVlEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgaewoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhElwKC2NvcmVjdXJzaXZlGAIgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqTAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5El4KBXZhbHVlGAIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqCAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJMCgV2YWx1ZRgCIAEoCzI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEajQEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJbCgV2YWx1ZRgCIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEafAoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJJCgV2YWx1ZRgCIAEoDjIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25FbnVtUgV2YWx1ZToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2VkRW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19CQVoQAhIHCgNNT08QAhIHCgNtb28QAhIHCgNiQXoQAhoCEAFCDQoLb25lb2ZfZmllbGRKBgj1AxD/AyIeCg5Gb3JlaWduTWVzc2FnZRIMCgFjGAEgASgFUgFjIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8zIi8KDkVudW1Pbmx5UHJvdG8zIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASpACgtGb3JlaWduRW51bRIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAkJLCjFjb20uZ29vZ2xlLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zSAGiAg5FZGl0aW9uc1Byb3RvM5IDAggCSqNkCgcSBQ0AsQIBCocDCgEMEgMNABEy/AIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCiBUZXN0IHNjaGVtYSBmb3IgcHJvdG8zIG1lc3NhZ2VzLiAgVGhpcyB0ZXN0IHNjaGVtYSBpcyB1c2VkIGJ5OgoKIC0gYmVuY2htYXJrcwogLSBmdXp6IHRlc3RzCiAtIGNvbmZvcm1hbmNlIHRlc3RzCgoICgECEgMPAC8KCQoCAwASAxEAIwoJCgIDARIDEgAoCgkKAgMCEgMTACoKCQoCAwMSAxQAJgoJCgIDBBIDFQApCgkKAgMFEgMWACgKCAoBCBIDGAAqCgoKAwgyARIDGAAqCggKAQgSAxkASgoJCgIIARIDGQBKCggKAQgSAxoALAoJCgIIJBIDGgAsCggKAQgSAx0AHApECgIICRIDHQAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoK2wIKAgQAEgUmAJ0CARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKIEFsc28sIGNydWNpYWxseSwgYWxsIG1lc3NhZ2VzIGFuZCBlbnVtcyBpbiB0aGlzIGZpbGUgYXJlIGV2ZW50dWFsbHkKIHN1Ym1lc3NhZ2VzIG9mIHRoaXMgbWVzc2FnZS4gIFNvIGZvciBleGFtcGxlLCBhIGZ1enogdGVzdCBvZiBUZXN0QWxsVHlwZXMKIGNvdWxkIHRyaWdnZXIgYnVncyB0aGF0IG9jY3VyIGluIGFueSBtZXNzYWdlIHR5cGUgaW4gdGhpcyBmaWxlLiAgV2UgdmVyaWZ5CiB0aGlzIHN0YXlzIHRydWUgaW4gYSB1bml0IHRlc3QuCgoKCgMEAAESAyYIGgoMCgQEAAMAEgQnAioDCgwKBQQAAwAB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BAMEABIGrQICsAIDCg0KBQQDBAABEgStAgcLCg4KBgQDBAACABIErgIEDwoPCgcEAwQAAgABEgSuAgQKCg8KBwQDBAACAAISBK4CDQ4KDgoGBAMEAAIBEgSvAgQOCg8KBwQDBAACAQESBK8CBAkKDwoHBAMEAAIBAhIErwIMDWIIZWRpdGlvbnNw6AcKpZUCCjNlZGl0aW9ucy9nb2xkZW4vdGVzdF9tZXNzYWdlc19wcm90bzJfZWRpdGlvbnMucHJvdG8SJnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yIp1WChJUZXN0QWxsVHlwZXNQcm90bzISJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSgAEKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJ2ChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJ3ChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SbQoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE29wdGlvbmFsRm9yZWlnbkVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEmcKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEoABChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USdgoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USdwoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEm0KFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIoCgxwYWNrZWRfaW50MzIYSyADKAVCBaoBAhgBUgtwYWNrZWRJbnQzMhIoCgxwYWNrZWRfaW50NjQYTCADKANCBaoBAhgBUgtwYWNrZWRJbnQ2NBIqCg1wYWNrZWRfdWludDMyGE0gAygNQgWqAQIYAVIMcGFja2VkVWludDMyEioKDXBhY2tlZF91aW50NjQYTiADKARCBaoBAhgBUgxwYWNrZWRVaW50NjQSKgoNcGFja2VkX3NpbnQzMhhPIAMoEUIFqgECGAFSDHBhY2tlZFNpbnQzMhIqCg1wYWNrZWRfc2ludDY0GFAgAygSQgWqAQIYAVIMcGFja2VkU2ludDY0EiwKDnBhY2tlZF9maXhlZDMyGFEgAygHQgWqAQIYAVINcGFja2VkRml4ZWQzMhIsCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkIFqgECGAFSDXBhY2tlZEZpeGVkNjQSLgoPcGFja2VkX3NmaXhlZDMyGFMgAygPQgWqAQIYAVIOcGFja2VkU2ZpeGVkMzISLgoPcGFja2VkX3NmaXhlZDY0GFQgAygQQgWqAQIYAVIOcGFja2VkU2ZpeGVkNjQSKAoMcGFja2VkX2Zsb2F0GFUgAygCQgWqAQIYAVILcGFja2VkRmxvYXQSKgoNcGFja2VkX2RvdWJsZRhWIAMoAUIFqgECGAFSDHBhY2tlZERvdWJsZRImCgtwYWNrZWRfYm9vbBhXIAMoCEIFqgECGAFSCnBhY2tlZEJvb2wSegoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1CBaoBAhgBUhBwYWNrZWROZXN0ZWRFbnVtEiUKDnVucGFja2VkX2ludDMyGFkgAygFUg11bnBhY2tlZEludDMyEiUKDnVucGFja2VkX2ludDY0GFogAygDUg11bnBhY2tlZEludDY0EicKD3VucGFja2VkX3VpbnQzMhhbIAMoDVIOdW5wYWNrZWRVaW50MzISJwoPdW5wYWNrZWRfdWludDY0GFwgAygEUg51bnBhY2tlZFVpbnQ2NBInCg91bnBhY2tlZF9zaW50MzIYXSADKBFSDnVucGFja2VkU2ludDMyEicKD3VucGFja2VkX3NpbnQ2NBheIAMoElIOdW5wYWNrZWRTaW50NjQSKQoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB1IPdW5wYWNrZWRGaXhlZDMyEikKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZSD3VucGFja2VkRml4ZWQ2NBIrChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMoD1IQdW5wYWNrZWRTZml4ZWQzMhIrChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEFIQdW5wYWNrZWRTZml4ZWQ2NBIlCg51bnBhY2tlZF9mbG9hdBhjIAMoAlINdW5wYWNrZWRGbG9hdBInCg91bnBhY2tlZF9kb3VibGUYZCADKAFSDnVucGFja2VkRG91YmxlEiMKDXVucGFja2VkX2Jvb2wYZSADKAhSDHVucGFja2VkQm9vbBJ3ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJ1bnBhY2tlZE5lc3RlZEVudW0SdQoPbWFwX2ludDMyX2ludDMyGDggAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJ1Cg9tYXBfaW50NjRfaW50NjQYOSADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EnsKEW1hcF91aW50MzJfdWludDMyGDogAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISewoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ7ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEnsKEW1hcF9zaW50NjRfc2ludDY0GD0gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSgQEKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsyUS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISgQEKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsyUS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQShwEKFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShwEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSdQoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJ4ChBtYXBfaW50MzJfZG91YmxlGEMgAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEm8KDW1hcF9ib29sX2Jvb2wYRCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wSewoRbWFwX3N0cmluZ19zdHJpbmcYRSADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJ4ChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEpEBChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeVIWbWFwU3RyaW5nTmVzdGVkTWVzc2FnZRKUAQoabWFwX3N0cmluZ19mb3JlaWduX21lc3NhZ2UYSCADKAsyVy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeVIXbWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2USiAEKFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEosBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJULnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISfAoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEmYKCm9uZW9mX2VudW0YdyABKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SWwoEZGF0YRjJASABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuRGF0YUIFqgECKAJSBGRhdGESiAEKE211bHRpd29yZGdyb3VwZmllbGQYzAEgASgLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk11bHRpV29yZEdyb3VwRmllbGRCBaoBAigCUhNtdWx0aXdvcmRncm91cGZpZWxkEjAKDWRlZmF1bHRfaW50MzIY8QEgASgFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASABKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAEoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgASgROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAEoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAEoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASABKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASABKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASABKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgaewoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhElwKC2NvcmVjdXJzaXZlGAIgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqTAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5El4KBXZhbHVlGAIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqIAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJSCgV2YWx1ZRgCIAEoCzI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUgV2YWx1ZToCOAEajQEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJbCgV2YWx1ZRgCIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEaggEKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSTwoFdmFsdWUYAiABKA4yOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlIFdmFsdWU6AjgBGkwKBERhdGESIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyGlsKE011bHRpV29yZEdyb3VwRmllbGQSIAoLZ3JvdXBfaW50MzIYzQEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjOASABKA1SC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEajAIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIQCgNzdHIYGSABKAlSA3N0cjLaAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGokCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAEoBVIBaTLbAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GJCz/AEgASgLMlYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUINCgtvbmVvZl9maWVsZEoGCOgHEJBOIiQKFEZvcmVpZ25NZXNzYWdlUHJvdG8yEgwKAWMYASABKAVSAWMiUAoKR3JvdXBGaWVsZBIfCgtncm91cF9pbnQzMhh6IAEoBVIKZ3JvdXBJbnQzMhIhCgxncm91cF91aW50MzIYeyABKA1SC2dyb3VwVWludDMyIrcDChVVbmtub3duVG9UZXN0QWxsVHlwZXMSJgoOb3B0aW9uYWxfaW50MzIY6QcgASgFUg1vcHRpb25hbEludDMyEigKD29wdGlvbmFsX3N0cmluZxjqByABKAlSDm9wdGlvbmFsU3RyaW5nEmQKDm5lc3RlZF9tZXNzYWdlGOsHIAEoCzI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUg1uZXN0ZWRNZXNzYWdlEnkKDW9wdGlvbmFsZ3JvdXAY7AcgASgLMksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVW5rbm93blRvVGVzdEFsbFR5cGVzLk9wdGlvbmFsR3JvdXBCBaoBAigCUg1vcHRpb25hbGdyb3VwEiQKDW9wdGlvbmFsX2Jvb2wY7gcgASgIUgxvcHRpb25hbEJvb2wSJgoOcmVwZWF0ZWRfaW50MzIY8wcgAygFUg1yZXBlYXRlZEludDMyGh0KDU9wdGlvbmFsR3JvdXASDAoBYRgBIAEoBVIBYSIWChROdWxsSHlwb3RoZXNpc1Byb3RvMiIvCg5FbnVtT25seVByb3RvMiIdCgRCb29sEgoKBmtGYWxzZRAAEgkKBWtUcnVlEAEiJQoPT25lU3RyaW5nUHJvdG8yEhIKBGRhdGEYASABKAlSBGRhdGEiYQoRUHJvdG9XaXRoS2V5d29yZHMSFgoGaW5saW5lGAEgASgFUgZpbmxpbmUSGAoHY29uY2VwdBgCIAEoCVIHY29uY2VwdBIaCghyZXF1aXJlcxgDIAMoCVIIcmVxdWlyZXMi9hwKGlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yEiwKDnJlcXVpcmVkX2ludDMyGAEgASgFQgWqAQIIA1INcmVxdWlyZWRJbnQzMhIsCg5yZXF1aXJlZF9pbnQ2NBgCIAEoA0IFqgECCANSDXJlcXVpcmVkSW50NjQSLgoPcmVxdWlyZWRfdWludDMyGAMgASgNQgWqAQIIA1IOcmVxdWlyZWRVaW50MzISLgoPcmVxdWlyZWRfdWludDY0GAQgASgEQgWqAQIIA1IOcmVxdWlyZWRVaW50NjQSLgoPcmVxdWlyZWRfc2ludDMyGAUgASgRQgWqAQIIA1IOcmVxdWlyZWRTaW50MzISLgoPcmVxdWlyZWRfc2ludDY0GAYgASgSQgWqAQIIA1IOcmVxdWlyZWRTaW50NjQSMAoQcmVxdWlyZWRfZml4ZWQzMhgHIAEoB0IFqgECCANSD3JlcXVpcmVkRml4ZWQzMhIwChByZXF1aXJlZF9maXhlZDY0GAggASgGQgWqAQIIA1IPcmVxdWlyZWRGaXhlZDY0EjIKEXJlcXVpcmVkX3NmaXhlZDMyGAkgASgPQgWqAQIIA1IQcmVxdWlyZWRTZml4ZWQzMhIyChFyZXF1aXJlZF9zZml4ZWQ2NBgKIAEoEEIFqgECCANSEHJlcXVpcmVkU2ZpeGVkNjQSLAoOcmVxdWlyZWRfZmxvYXQYCyABKAJCBaoBAggDUg1yZXF1aXJlZEZsb2F0Ei4KD3JlcXVpcmVkX2RvdWJsZRgMIAEoAUIFqgECCANSDnJlcXVpcmVkRG91YmxlEioKDXJlcXVpcmVkX2Jvb2wYDSABKAhCBaoBAggDUgxyZXF1aXJlZEJvb2wSLgoPcmVxdWlyZWRfc3RyaW5nGA4gASgJQgWqAQIIA1IOcmVxdWlyZWRTdHJpbmcSLAoOcmVxdWlyZWRfYnl0ZXMYDyABKAxCBaoBAggDUg1yZXF1aXJlZEJ5dGVzEo8BChdyZXF1aXJlZF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzJQLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VCBaoBAggDUhVyZXF1aXJlZE5lc3RlZE1lc3NhZ2USfQoYcmVxdWlyZWRfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJCBaoBAggDUhZyZXF1aXJlZEZvcmVpZ25NZXNzYWdlEoYBChRyZXF1aXJlZF9uZXN0ZWRfZW51bRgVIAEoDjJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZEVudW1CBaoBAggDUhJyZXF1aXJlZE5lc3RlZEVudW0SdAoVcmVxdWlyZWRfZm9yZWlnbl9lbnVtGBYgASgOMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJCBaoBAggDUhNyZXF1aXJlZEZvcmVpZ25FbnVtEjsKFXJlcXVpcmVkX3N0cmluZ19waWVjZRgYIAEoCUIHCAKqAQIIA1ITcmVxdWlyZWRTdHJpbmdQaWVjZRIsCg1yZXF1aXJlZF9jb3JkGBkgASgJQgcIAaoBAggDUgxyZXF1aXJlZENvcmQSdgoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMkIFqgECCANSEHJlY3Vyc2l2ZU1lc3NhZ2USgAEKGm9wdGlvbmFsX3JlY3Vyc2l2ZV9tZXNzYWdlGBwgASgLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSGG9wdGlvbmFsUmVjdXJzaXZlTWVzc2FnZRJlCgRkYXRhGMkBIAEoCzJHLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLkRhdGFCB6oBBAgDKAJSBGRhdGESNwoNZGVmYXVsdF9pbnQzMhjxASABKAU6Ci0xMjM0NTY3ODlCBaoBAggDUgxkZWZhdWx0SW50MzISQQoNZGVmYXVsdF9pbnQ2NBjyASABKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5QgWqAQIIA1IMZGVmYXVsdEludDY0EjkKDmRlZmF1bHRfdWludDMyGPMBIAEoDToKMjEyMzQ1Njc4OUIFqgECCANSDWRlZmF1bHRVaW50MzISQwoOZGVmYXVsdF91aW50NjQY9AEgASgEOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSDWRlZmF1bHRVaW50NjQSOQoOZGVmYXVsdF9zaW50MzIY9QEgASgROgotMTIzNDU2Nzg5QgWqAQIIA1INZGVmYXVsdFNpbnQzMhJDCg5kZWZhdWx0X3NpbnQ2NBj2ASABKBI6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5QgWqAQIIA1INZGVmYXVsdFNpbnQ2NBI7Cg9kZWZhdWx0X2ZpeGVkMzIY9wEgASgHOgoyMTIzNDU2Nzg5QgWqAQIIA1IOZGVmYXVsdEZpeGVkMzISRQoPZGVmYXVsdF9maXhlZDY0GPgBIAEoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUg5kZWZhdWx0Rml4ZWQ2NBI9ChBkZWZhdWx0X3NmaXhlZDMyGPkBIAEoDzoKLTEyMzQ1Njc4OUIFqgECCANSD2RlZmF1bHRTZml4ZWQzMhJHChBkZWZhdWx0X3NmaXhlZDY0GPoBIAEoEDoULTkxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUg9kZWZhdWx0U2ZpeGVkNjQSMgoNZGVmYXVsdF9mbG9hdBj7ASABKAI6BTllKzA5QgWqAQIIA1IMZGVmYXVsdEZsb2F0EjQKDmRlZmF1bHRfZG91YmxlGPwBIAEoAToFN2UrMjJCBaoBAggDUg1kZWZhdWx0RG91YmxlEi8KDGRlZmF1bHRfYm9vbBj9ASABKAg6BHRydWVCBaoBAggDUgtkZWZhdWx0Qm9vbBI2Cg5kZWZhdWx0X3N0cmluZxj+ASABKAk6B1Jvc2VidWRCBaoBAggDUg1kZWZhdWx0U3RyaW5nEjMKDWRlZmF1bHRfYnl0ZXMY/wEgASgMOgZqb3NodWFCBaoBAggDUgxkZWZhdWx0Qnl0ZXMaiAIKDU5lc3RlZE1lc3NhZ2USEwoBYRgBIAEoBUIFqgECCANSAWESawoLY29yZWN1cnNpdmUYAiABKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMkIFqgECCANSC2NvcmVjdXJzaXZlEnUKFG9wdGlvbmFsX2NvcmVjdXJzaXZlGAMgASgLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSE29wdGlvbmFsQ29yZWN1cnNpdmUaWgoERGF0YRInCgtncm91cF9pbnQzMhjKASABKAVCBaoBAggDUgpncm91cEludDMyEikKDGdyb3VwX3VpbnQzMhjLASABKA1CBaoBAggDUgtncm91cFVpbnQzMhohChFNZXNzYWdlU2V0Q29ycmVjdCoICAQQ/////wc6AggBGqMCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjESFwoDc3RyGBkgASgJQgWqAQIIA1IDc3RyMuoBChVtZXNzYWdlX3NldF9leHRlbnNpb24SVC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBj5u14gASgLMl4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGqACChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISEwoBaRgJIAEoBUIFqgECCANSAWky6wEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJULnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GJCz/AEgASgLMl4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24yUhNtZXNzYWdlU2V0RXh0ZW5zaW9uIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBSgYI6AcQkE4qRgoRRm9yZWlnbkVudW1Qcm90bzISDwoLRk9SRUlHTl9GT08QABIPCgtGT1JFSUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAI6YwoPZXh0ZW5zaW9uX2ludDMyEjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGHggASgFUg5leHRlbnNpb25JbnQzMjqVAQoKZ3JvdXBmaWVsZBI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhh5IAEoCzIyLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkdyb3VwRmllbGRCBaoBAigCUgpncm91cGZpZWxkQk8KMWNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzJIAaICDkVkaXRpb25zUHJvdG8ykgMGEAIYAiADSoOYAQoHEgUNAIAFAQqBAwoBDBIDDQARMuACIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgogVGVzdCBzY2hlbWEgZm9yIHByb3RvMiBtZXNzYWdlcy4gIFRoaXMgdGVzdCBzY2hlbWEgaXMgdXNlZCBieToKCiAtIGNvbmZvcm1hbmNlIHRlc3RzCjIUIExJTlQ6IEFMTE9XX0dST1VQUwoKCAoBAhIDDwAvCggKAQgSAxEAIwoKCgMIMgISAxEAIwoICgEIEgMSADMKCgoDCDIDEgMSADMKCAoBCBIDEwAnCgoKAwgyBBIDEwAnCggKAQgSAxQASgoJCgIIARIDFABKCggKAQgSAxUALAoJCgIIJBIDFQAsCggKAQgSAxgAHApECgIICRIDGAAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoK2wIKAgQAEgUhANMCARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKIEFsc28sIGNydWNpYWxseSwgYWxsIG1lc3NhZ2VzIGFuZCBlbnVtcyBpbiB0aGlzIGZpbGUgYXJlIGV2ZW50dWFsbHkKIHN1Ym1lc3NhZ2VzIG9mIHRoaXMgbWVzc2FnZS4gIFNvIGZvciBleGFtcGxlLCBhIGZ1enogdGVzdCBvZiBUZXN0QWxsVHlwZXMKIGNvdWxkIHRyaWdnZXIgYnVncyB0aGF0IG9jY3VyIGluIGFueSBtZXNzYWdlIHR5cGUgaW4gdGhpcyBmaWxlLiAgV2UgdmVyaWZ5CiB0aGlzIHN0YXlzIHRydWUgaW4gYSB1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cmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIALAoJCgIIARIDIgAsCggKAQgSAyMAMwoJCgIICBIDIwAzCggKAQgSAyQAIgoJCgIIChIDJAAiCggKAQgSAyUAIQoJCgIIJBIDJQAhCggKAQgSAyYAOwoJCgIIJRIDJgA7CggKAQgSAycATQoJCgIICxIDJwBNCoMBCgIEABIEKwAvARp3IGBTb3VyY2VDb250ZXh0YCByZXByZXNlbnRzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2Ugb2YgYQogcHJvdG9idWYgZWxlbWVudCwgbGlrZSB0aGUgZmlsZSBpbiB3aGljaCBpdCBpcyBkZWZpbmVkLgoKCgoDBAABEgMrCBUKowEKBAQAAgASAy4CFxqVASBUaGUgcGF0aC1xdWFsaWZpZWQgbmFtZSBvZiB0aGUgLnByb3RvIGZpbGUgdGhhdCBjb250YWluZWQgdGhlIGFzc29jaWF0ZWQKIHByb3RvYnVmIGVsZW1lbnQuICBGb3IgZXhhbXBsZTogYCJnb29nbGUvcHJvdG9idWYvc291cmNlX2NvbnRleHQucHJvdG8iYC4KCgwKBQQAAgAFEgMuAggKDAoFBAACAAESAy4JEgoMCgUEAAIAAxIDLhUWYgZwcm90bzMK+0kKGmdvb2dsZS9wcm90b2J1Zi90eXBlLnByb3RvEg9nb29nbGUucHJvdG9idWYaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aJGdvb2dsZS9wcm90b2J1Zi9zb3VyY2VfY29udGV4dC5wcm90byKnAgoEVHlwZRISCgRuYW1lGAEgASgJUgRuYW1lEi4KBmZpZWxkcxgCIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5GaWVsZFIGZmllbGRzEhYKBm9uZW9mcxgDIAMoCVIGb25lb2ZzEjEKB29wdGlvbnMYBCADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEkUKDnNvdXJjZV9jb250ZXh0GAUgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSDXNvdXJjZUNvbnRleHQSLwoGc3ludGF4GAYgASgOMhcuZ29vZ2xlLnByb3RvYnVmLlN5bnRheFIGc3ludGF4EhgKB2VkaXRpb24YByABKAlSB2VkaXRpb24itAYKBUZpZWxkEi8KBGtpbmQYASABKA4yGy5nb29nbGUucHJvdG9idWYuRmllbGQuS2luZFIEa2luZBJECgtjYXJkaW5hbGl0eRgCIAEoDjIiLmdvb2dsZS5wcm90b2J1Zi5GaWVsZC5DYXJkaW5hbGl0eVILY2FyZGluYWxpdHkSFgoGbnVtYmVyGAMgASgFUgZudW1iZXISEgoEbmFtZRgEIAEoCVIEbmFtZRIZCgh0eXBlX3VybBgGIAEoCVIHdHlwZVVybBIfCgtvbmVvZl9pbmRleBgHIAEoBVIKb25lb2ZJbmRleBIWCgZwYWNrZWQYCCABKAhSBnBhY2tlZBIxCgdvcHRpb25zGAkgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucxIbCglqc29uX25hbWUYCiABKAlSCGpzb25OYW1lEiMKDWRlZmF1bHRfdmFsdWUYCyABKAlSDGRlZmF1bHRWYWx1ZSLIAgoES2luZBIQCgxUWVBFX1VOS05PV04QABIPCgtUWVBFX0RPVUJMRRABEg4KClRZUEVfRkxPQVQQAhIOCgpUWVBFX0lOVDY0EAMSDwoLVFlQRV9VSU5UNjQQBBIOCgpUWVBFX0lOVDMyEAUSEAoMVFlQRV9GSVhFRDY0EAYSEAoMVFlQRV9GSVhFRDMyEAcSDQoJVFlQRV9CT09MEAgSDwoLVFlQRV9TVFJJTkcQCRIOCgpUWVBFX0dST1VQEAoSEAoMVFlQRV9NRVNTQUdFEAsSDgoKVFlQRV9CWVRFUxAMEg8KC1RZUEVfVUlOVDMyEA0SDQoJVFlQRV9FTlVNEA4SEQoNVFlQRV9TRklYRUQzMhAPEhEKDVRZUEVfU0ZJWEVENjQQEBIPCgtUWVBFX1NJTlQzMhAREg8KC1RZUEVfU0lOVDY0EBIidAoLQ2FyZGluYWxpdHkSFwoTQ0FSRElOQUxJVFlfVU5LTk9XThAAEhgKFENBUkRJTkFMSVRZX09QVElPTkFMEAESGAoUQ0FSRElOQUxJVFlfUkVRVUlSRUQQAhIYChRDQVJESU5BTElUWV9SRVBFQVRFRBADIpkCCgRFbnVtEhIKBG5hbWUYASABKAlSBG5hbWUSOAoJZW51bXZhbHVlGAIgAygLMhouZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZVIJZW51bXZhbHVlEjEKB29wdGlvbnMYAyADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEkUKDnNvdXJjZV9jb250ZXh0GAQgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSDXNvdXJjZUNvbnRleHQSLwoGc3ludGF4GAUgASgOMhcuZ29vZ2xlLnByb3RvYnVmLlN5bnRheFIGc3ludGF4EhgKB2VkaXRpb24YBiABKAlSB2VkaXRpb24iagoJRW51bVZhbHVlEhIKBG5hbWUYASABKAlSBG5hbWUSFgoGbnVtYmVyGAIgASgFUgZudW1iZXISMQoHb3B0aW9ucxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMiSAoGT3B0aW9uEhIKBG5hbWUYASABKAlSBG5hbWUSKgoFdmFsdWUYAiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgV2YWx1ZSpDCgZTeW50YXgSEQoNU1lOVEFYX1BST1RPMhAAEhEKDVNZTlRBWF9QUk9UTzMQARITCg9TWU5UQVhfRURJVElPTlMQAkJ7ChNjb20uZ29vZ2xlLnByb3RvYnVmQglUeXBlUHJvdG9QAVotZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vdHlwZXBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSo07CgcSBR4AwAEBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5F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YnVmLk9wdGlvblIHb3B0aW9ucxIYCgd2ZXJzaW9uGAQgASgJUgd2ZXJzaW9uEkUKDnNvdXJjZV9jb250ZXh0GAUgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSDXNvdXJjZUNvbnRleHQSLgoGbWl4aW5zGAYgAygLMhYuZ29vZ2xlLnByb3RvYnVmLk1peGluUgZtaXhpbnMSLwoGc3ludGF4GAcgASgOMhcuZ29vZ2xlLnByb3RvYnVmLlN5bnRheFIGc3ludGF4IrICCgZNZXRob2QSEgoEbmFtZRgBIAEoCVIEbmFtZRIoChByZXF1ZXN0X3R5cGVfdXJsGAIgASgJUg5yZXF1ZXN0VHlwZVVybBIrChFyZXF1ZXN0X3N0cmVhbWluZxgDIAEoCFIQcmVxdWVzdFN0cmVhbWluZxIqChFyZXNwb25zZV90eXBlX3VybBgEIAEoCVIPcmVzcG9uc2VUeXBlVXJsEi0KEnJlc3BvbnNlX3N0cmVhbWluZxgFIAEoCFIRcmVzcG9uc2VTdHJlYW1pbmcSMQoHb3B0aW9ucxgGIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSLwoGc3ludGF4GAcgASgOMhcuZ29vZ2xlLnByb3RvYnVmLlN5bnRheFIGc3ludGF4Ii8KBU1peGluEhIKBG5hbWUYASABKAlSBG5hbWUSEgoEcm9vdBgCIAEoCVIEcm9vdEJ2ChNjb20uZ29vZ2xlLnByb3RvYnVmQghBcGlQcm90b1ABWixnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9hcGlwYqICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0r/OwoHEgUeAM4BAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCgkKAgMAEgMiAC4KCQoCAwESAyMAJAoICgEIEgMlACwKCQoCCAESAyUALAoICgEIEgMmACkKCQoCCAgSAyYAKQoICgEIEgMnACIKCQoCCAoSAycAIgoICgEIEgMoACEKCQoCCCQSAygAIQoICgEIEgMpADsKCQoCCCUSAykAOwoICgEIEgMqAEMKCQoCCAsSAyoAQwqrBAoCBAASBDUAXwEangQgQXBpIGlzIGEgbGlnaHQtd2VpZ2h0IGRlc2NyaXB0b3IgZm9yIGFuIEFQSSBJbnRlcmZhY2UuCgogSW50ZXJmYWNlcyBhcmUgYWxzbyBkZXNjcmliZWQgYXMgInByb3RvY29sIGJ1ZmZlciBzZXJ2aWNlcyIgaW4gc29tZSBjb250ZXh0cywKIHN1Y2ggYXMgYnkgdGhlICJzZXJ2aWNlIiBrZXl3b3JkIGluIGEgLnByb3RvIGZpbGUsIGJ1dCB0aGV5IGFyZSBkaWZmZXJlbnQKIGZyb20gQVBJIFNlcnZpY2VzLCB3aGljaCByZXByZXNlbnQgYSBjb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiBvZiBhbiBpbnRlcmZhY2UKIGFzIG9wcG9zZWQgdG8gc2ltcGx5IGEgZGVzY3JpcHRpb24gb2YgbWV0aG9kcyBhbmQgYmluZGluZ3MuIFRoZXkgYXJlIGFsc28KIHNvbWV0aW1lcyBzaW1wbHkgcmVmZXJyZWQgdG8gYXMgIkFQSXMiIGluIG90aGVyIGNvbnRleHRzLCBzdWNoIGFzIHRoZSBuYW1lIG9mCiB0aGlzIG1lc3NhZ2UgaXRzZWxmLiBTZWUgaHR0cHM6Ly9jbG91ZC5nb29nbGUuY29tL2FwaXMvZGVzaWduL2dsb3NzYXJ5IGZvcgogZGV0YWlsZWQgdGVybWlub2xvZ3kuCgoKCgMEAAESAzUICwp7CgQEAAIAEgM4AhIabiBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhpcyBpbnRlcmZhY2UsIGluY2x1ZGluZyBwYWNrYWdlIG5hbWUKIGZvbGxvd2VkIGJ5IHRoZSBpbnRlcmZhY2UncyBzaW1wbGUgbmFtZS4KCgwKBQQAAgAFEgM4AggKDAoFBAACAAESAzgJDQoMCgUEAAIAAxIDOBARCkMKBAQAAgESAzsCHho2IFRoZSBtZXRob2RzIG9mIHRoaXMgaW50ZXJmYWNlLCBpbiB1bnNwZWNpZmllZCBvcmRlci4KCgwKBQQAAgEEEgM7AgoKDAoFBAACAQYSAzsLEQoMCgUEAAIBARIDOxIZCgwKBQQAAgEDEgM7HB0KNgoEBAACAhIDPgIeGikgQW55IG1ldGFkYXRhIGF0dGFjaGVkIHRvIHRoZSBpbnRlcmZhY2UuCgoMCgUEAAICBBIDPgIKCgwKBQQAAgIGEgM+CxEKDAoFBAACAgESAz4SGQoMCgUEAAICAxIDPhwdCoEICgQEAAIDEgNUAhUa8wcgQSB2ZXJzaW9uIHN0cmluZyBmb3IgdGhpcyBpbnRlcmZhY2UuIElmIHNwZWNpZmllZCwgbXVzdCBoYXZlIHRoZSBmb3JtCiBgbWFqb3ItdmVyc2lvbi5taW5vci12ZXJzaW9uYCwgYXMgaW4gYDEuMTBgLiBJZiB0aGUgbWlub3IgdmVyc2lvbiBpcwogb21pdHRlZCwgaXQgZGVmYXVsdHMgdG8gemVyby4gSWYgdGhlIGVudGlyZSB2ZXJzaW9uIGZpZWxkIGlzIGVtcHR5LCB0aGUKIG1ham9yIHZlcnNpb24gaXMgZGVyaXZlZCBmcm9tIHRoZSBwYWNrYWdlIG5hbWUsIGFzIG91dGxpbmVkIGJlbG93LiBJZiB0aGUKIGZpZWxkIGlzIG5vdCBlbXB0eSwgdGhlIHZlcnNpb24gaW4gdGhlIHBhY2thZ2UgbmFtZSB3aWxsIGJlIHZlcmlmaWVkIHRvIGJlCiBjb25zaXN0ZW50IHdpdGggd2hhdCBpcyBwcm92aWRlZCBoZXJlLgoKIFRoZSB2ZXJzaW9uaW5nIHNjaGVtYSB1c2VzIFtzZW1hbnRpYwogdmVyc2lvbmluZ10oaHR0cDovL3NlbXZlci5vcmcpIHdoZXJlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlcgogaW5kaWNhdGVzIGEgYnJlYWtpbmcgY2hhbmdlIGFuZCB0aGUgbWlub3IgdmVyc2lvbiBhbiBhZGRpdGl2ZSwKIG5vbi1icmVha2luZyBjaGFuZ2UuIEJvdGggdmVyc2lvbiBudW1iZXJzIGFyZSBzaWduYWxzIHRvIHVzZXJzCiB3aGF0IHRvIGV4cGVjdCBmcm9tIGRpZmZlcmVudCB2ZXJzaW9ucywgYW5kIHNob3VsZCBiZSBjYXJlZnVsbHkKIGNob3NlbiBiYXNlZCBvbiB0aGUgcHJvZHVjdCBwbGFuLgoKIFRoZSBtYWpvciB2ZXJzaW9uIGlzIGFsc28gcmVmbGVjdGVkIGluIHRoZSBwYWNrYWdlIG5hbWUgb2YgdGhlCiBpbnRlcmZhY2UsIHdoaWNoIG11c3QgZW5kIGluIGB2PG1ham9yLXZlcnNpb24+YCwgYXMgaW4KIGBnb29nbGUuZmVhdHVyZS52MWAuIEZvciBtYWpvciB2ZXJzaW9ucyAwIGFuZCAxLCB0aGUgc3VmZml4IGNhbgogYmUgb21pdHRlZC4gWmVybyBtYWpvciB2ZXJzaW9ucyBtdXN0IG9ubHkgYmUgdXNlZCBmb3IKIGV4cGVyaW1lbnRhbCwgbm9uLUdBIGludGVyZmFjZXMuCgoKDAoFBAACAwUSA1QCCAoMCgUEAAIDARIDVAkQCgwKBQQAAgMDEgNUExQKWwoEBAACBBIDWAIjGk4gU291cmNlIGNvbnRleHQgZm9yIHRoZSBwcm90b2NvbCBidWZmZXIgc2VydmljZSByZXByZXNlbnRlZCBieSB0aGlzCiBtZXNzYWdlLgoKDAoFBAACBAYSA1gCDwoMCgUEAAIEARIDWBAeCgwKBQQAAgQDEgNYISIKMgoEBAACBRIDWwIcGiUgSW5jbHVkZWQgaW50ZXJmYWNlcy4gU2VlIFtNaXhpbl1bXS4KCgwKBQQAAgUEEgNbAgoKDAoFBAACBQYSA1sLEAoMCgUEAAIFARIDWxEXCgwKBQQAAgUDEgNbGhsKMAoEBAACBhIDXgIUGiMgVGhlIHNvdXJjZSBzeW50YXggb2YgdGhlIHNlcnZpY2UuCgoMCgUEAAIGBhIDXgIICgwKBQQAAgYBEgNeCQ8KDAoFBAACBgMSA14SEwo9CgIEARIEYgB3ARoxIE1ldGhvZCByZXByZXNlbnRzIGEgbWV0aG9kIG9mIGFuIEFQSSBpbnRlcmZhY2UuCgoKCgMEAQESA2IIDgouCgQEAQIAEgNkAhIaISBUaGUgc2ltcGxlIG5hbWUgb2YgdGhpcyBtZXRob2QuCgoMCgUEAQIABRIDZAIICgwKBQQBAgABEgNkCQ0KDAoFBAECAAMSA2QQEQovCgQEAQIBEgNnAh4aIiBBIFVSTCBvZiB0aGUgaW5wdXQgbWVzc2FnZSB0eXBlLgoKDAoFBAECAQUSA2cCCAoMCgUEAQIBARIDZwkZCgwKBQQBAgEDEgNnHB0KMAoEBAECAhIDagIdGiMgSWYgdHJ1ZSwgdGhlIHJlcXVlc3QgaXMgc3RyZWFtZWQuCgoMCgUEAQICBRIDagIGCgwKBQQBAgIBEgNqBxgKDAoFBAECAgMSA2obHAoyCgQEAQIDEgNtAh8aJSBUaGUgVVJMIG9mIHRoZSBvdXRwdXQgbWVzc2FnZSB0eXBlLgoKDAoFBAECAwUSA20CCAoMCgUEAQIDARIDbQkaCgwKBQQBAgMDEgNtHR4KMQoEBAECBBIDcAIeGiQgSWYgdHJ1ZSwgdGhlIHJlc3BvbnNlIGlzIHN0cmVhbWVkLgoKDAoFBAECBAUSA3ACBgoMCgUEAQIEARIDcAcZCgwKBQQBAgQDEgNwHB0KMwoEBAECBRIDcwIeGiYgQW55IG1ldGFkYXRhIGF0dGFjaGVkIHRvIHRoZSBtZXRob2QuCgoMCgUEAQIFBBIDcwIKCgwKBQQBAgUGEgNzCxEKDAoFBAECBQESA3MSGQoMCgUEAQIFAxIDcxwdCjAKBAQBAgYSA3YCFBojIFRoZSBzb3VyY2Ugc3ludGF4IG9mIHRoaXMgbWV0aG9kLgoKDAoFBAECBgYSA3YCCAoMCgUEAQIGARIDdgkPCgwKBQQBAgYDEgN2EhMKyRMKAgQCEgbHAQDOAQEauhMgRGVjbGFyZXMgYW4gQVBJIEludGVyZmFjZSB0byBiZSBpbmNsdWRlZCBpbiB0aGlzIGludGVyZmFjZS4gVGhlIGluY2x1ZGluZwogaW50ZXJmYWNlIG11c3QgcmVkZWNsYXJlIGFsbCB0aGUgbWV0aG9kcyBmcm9tIHRoZSBpbmNsdWRlZCBpbnRlcmZhY2UsIGJ1dAogZG9jdW1lbnRhdGlvbiBhbmQgb3B0aW9ucyBhcmUgaW5oZXJpdGVkIGFzIGZvbGxvd3M6CgogLSBJZiBhZnRlciBjb21tZW50IGFuZCB3aGl0ZXNwYWNlIHN0cmlwcGluZywgdGhlIGRvY3VtZW50YXRpb24KICAgc3RyaW5nIG9mIHRoZSByZWRlY2xhcmVkIG1ldGhvZCBpcyBlbXB0eSwgaXQgd2lsbCBiZSBpbmhlcml0ZWQKICAgZnJvbSB0aGUgb3JpZ2luYWwgbWV0aG9kLgoKIC0gRWFjaCBhbm5vdGF0aW9uIGJlbG9uZ2luZyB0byB0aGUgc2VydmljZSBjb25maWcgKGh0dHAsCiAgIHZpc2liaWxpdHkpIHdoaWNoIGlzIG5vdCBzZXQgaW4gdGhlIHJlZGVjbGFyZWQgbWV0aG9kIHdpbGwgYmUKICAgaW5oZXJpdGVkLgoKIC0gSWYgYW4gaHR0cCBhbm5vdGF0aW9uIGlzIGluaGVyaXRlZCwgdGhlIHBhdGggcGF0dGVybiB3aWxsIGJlCiAgIG1vZGlmaWVkIGFzIGZvbGxvd3MuIEFueSB2ZXJzaW9uIHByZWZpeCB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZQogICB2ZXJzaW9uIG9mIHRoZSBpbmNsdWRpbmcgaW50ZXJmYWNlIHBsdXMgdGhlIFtyb290XVtdIHBhdGggaWYKICAgc3BlY2lmaWVkLgoKIEV4YW1wbGUgb2YgYSBzaW1wbGUgbWl4aW46CgogICAgIHBhY2thZ2UgZ29vZ2xlLmFjbC52MTsKICAgICBzZXJ2aWNlIEFjY2Vzc0NvbnRyb2wgewogICAgICAgLy8gR2V0IHRoZSB1bmRlcmx5aW5nIEFDTCBvYmplY3QuCiAgICAgICBycGMgR2V0QWNsKEdldEFjbFJlcXVlc3QpIHJldHVybnMgKEFjbCkgewogICAgICAgICBvcHRpb24gKGdvb2dsZS5hcGkuaHR0cCkuZ2V0ID0gIi92MS97cmVzb3VyY2U9Kip9OmdldEFjbCI7CiAgICAgICB9CiAgICAgfQoKICAgICBwYWNrYWdlIGdvb2dsZS5zdG9yYWdlLnYyOwogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICBycGMgR2V0QWNsKEdldEFjbFJlcXVlc3QpIHJldHVybnMgKEFjbCk7CgogICAgICAgLy8gR2V0IGEgZGF0YSByZWNvcmQuCiAgICAgICBycGMgR2V0RGF0YShHZXREYXRhUmVxdWVzdCkgcmV0dXJucyAoRGF0YSkgewogICAgICAgICBvcHRpb24gKGdvb2dsZS5hcGkuaHR0cCkuZ2V0ID0gIi92Mi97cmVzb3VyY2U9Kip9IjsKICAgICAgIH0KICAgICB9CgogRXhhbXBsZSBvZiBhIG1peGluIGNvbmZpZ3VyYXRpb246CgogICAgIGFwaXM6CiAgICAgLSBuYW1lOiBnb29nbGUuc3RvcmFnZS52Mi5TdG9yYWdlCiAgICAgICBtaXhpbnM6CiAgICAgICAtIG5hbWU6IGdvb2dsZS5hY2wudjEuQWNjZXNzQ29udHJvbAoKIFRoZSBtaXhpbiBjb25zdHJ1Y3QgaW1wbGllcyB0aGF0IGFsbCBtZXRob2RzIGluIGBBY2Nlc3NDb250cm9sYCBhcmUKIGFsc28gZGVjbGFyZWQgd2l0aCBzYW1lIG5hbWUgYW5kIHJlcXVlc3QvcmVzcG9uc2UgdHlwZXMgaW4KIGBTdG9yYWdlYC4gQSBkb2N1bWVudGF0aW9uIGdlbmVyYXRvciBvciBhbm5vdGF0aW9uIHByb2Nlc3NvciB3aWxsCiBzZWUgdGhlIGVmZmVjdGl2ZSBgU3RvcmFnZS5HZXRBY2xgIG1ldGhvZCBhZnRlciBpbmhlcnRpbmcKIGRvY3VtZW50YXRpb24gYW5kIGFubm90YXRpb25zIGFzIGZvbGxvd3M6CgogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL3tyZXNvdXJjZT0qKn06Z2V0QWNsIjsKICAgICAgIH0KICAgICAgIC4uLgogICAgIH0KCiBOb3RlIGhvdyB0aGUgdmVyc2lvbiBpbiB0aGUgcGF0aCBwYXR0ZXJuIGNoYW5nZWQgZnJvbSBgdjFgIHRvIGB2MmAuCgogSWYgdGhlIGByb290YCBmaWVsZCBpbiB0aGUgbWl4aW4gaXMgc3BlY2lmaWVkLCBpdCBzaG91bGQgYmUgYQogcmVsYXRpdmUgcGF0aCB1bmRlciB3aGljaCBpbmhlcml0ZWQgSFRUUCBwYXRocyBhcmUgcGxhY2VkLiBFeGFtcGxlOgoKICAgICBhcGlzOgogICAgIC0gbmFtZTogZ29vZ2xlLnN0b3JhZ2UudjIuU3RvcmFnZQogICAgICAgbWl4aW5zOgogICAgICAgLSBuYW1lOiBnb29nbGUuYWNsLnYxLkFjY2Vzc0NvbnRyb2wKICAgICAgICAgcm9vdDogYWNscwoKIFRoaXMgaW1wbGllcyB0aGUgZm9sbG93aW5nIGluaGVyaXRlZCBIVFRQIGFubm90YXRpb246CgogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL2FjbHMve3Jlc291cmNlPSoqfTpnZXRBY2wiOwogICAgICAgfQogICAgICAgLi4uCiAgICAgfQoKCwoDBAIBEgTHAQgNCkwKBAQCAgASBMkBAhIaPiBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIGludGVyZmFjZSB3aGljaCBpcyBpbmNsdWRlZC4KCg0KBQQCAgAFEgTJAQIICg0KBQQCAgABEgTJAQkNCg0KBQQCAgADEgTJARARClsKBAQCAgESBM0BAhIaTSBJZiBub24tZW1wdHkgc3BlY2lmaWVzIGEgcGF0aCB1bmRlciB3aGljaCBpbmhlcml0ZWQgSFRUUCBwYXRocwogYXJlIHJvb3RlZC4KCg0KBQQCAgEFEgTNAQIICg0KBQQCAgEBEgTNAQkNCg0KBQQCAgEDEgTNARARYgZwcm90bzMK/xEKG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIgcKBUVtcHR5Qn0KE2NvbS5nb29nbGUucHJvdG9idWZCCkVtcHR5UHJvdG9QAVouZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZW1wdHlwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0q+EAoGEgQeADIQCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgBFCgkKAggLEgMiAEUKCAoBCBIDIwAsCgkKAggBEgMjACwKCAoBCBIDJAArCgkKAggIEgMkACsKCAoBCBIDJQAiCgkKAggKEgMlACIKCAoBCBIDJgAhCgkKAggkEgMmACEKCAoBCBIDJwA7CgkKAgglEgMnADsKCAoBCBIDKAAfCgkKAggfEgMoAB8KuwIKAgQAEgMyABAarwIgQSBnZW5lcmljIGVtcHR5IG1lc3NhZ2UgdGhhdCB5b3UgY2FuIHJlLXVzZSB0byBhdm9pZCBkZWZpbmluZyBkdXBsaWNhdGVkCiBlbXB0eSBtZXNzYWdlcyBpbiB5b3VyIEFQSXMuIEEgdHlwaWNhbCBleGFtcGxlIGlzIHRvIHVzZSBpdCBhcyB0aGUgcmVxdWVzdAogb3IgdGhlIHJlc3BvbnNlIHR5cGUgb2YgYW4gQVBJIG1ldGhvZC4gRm9yIGluc3RhbmNlOgoKICAgICBzZXJ2aWNlIEZvbyB7CiAgICAgICBycGMgQmFyKGdvb2dsZS5wcm90b2J1Zi5FbXB0eSkgcmV0dXJucyAoZ29vZ2xlLnByb3RvYnVmLkVtcHR5KTsKICAgICB9CgoKCgoDBAABEgMyCA1iBnByb3RvMwr0YgovZ29vZ2xlL3Byb3RvYnVmL3VuaXR0ZXN0X3dlbGxfa25vd25fdHlwZXMucHJvdG8SEXByb3RvYnVmX3VuaXR0ZXN0Ghlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvGhlnb29nbGUvcHJvdG9idWYvYXBpLnByb3RvGh5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8aG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8aJGdvb2dsZS9wcm90b2J1Zi9zb3VyY2VfY29udGV4dC5wcm90bxocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90bxofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxoaZ29vZ2xlL3Byb3RvYnVmL3R5cGUucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90byK0CQoSVGVzdFdlbGxLbm93blR5cGVzEjEKCWFueV9maWVsZBgBIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSCGFueUZpZWxkEjEKCWFwaV9maWVsZBgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlSCGFwaUZpZWxkEkAKDmR1cmF0aW9uX2ZpZWxkGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUg1kdXJhdGlvbkZpZWxkEjcKC2VtcHR5X2ZpZWxkGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5UgplbXB0eUZpZWxkEkQKEGZpZWxkX21hc2tfZmllbGQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUg5maWVsZE1hc2tGaWVsZBJQChRzb3VyY2VfY29udGV4dF9maWVsZBgGIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0UhJzb3VyY2VDb250ZXh0RmllbGQSOgoMc3RydWN0X2ZpZWxkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFILc3RydWN0RmllbGQSQwoPdGltZXN0YW1wX2ZpZWxkGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIOdGltZXN0YW1wRmllbGQSNAoKdHlwZV9maWVsZBgJIAEoCzIVLmdvb2dsZS5wcm90b2J1Zi5UeXBlUgl0eXBlRmllbGQSPwoMZG91YmxlX2ZpZWxkGAogASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUgtkb3VibGVGaWVsZBI8CgtmbG9hdF9maWVsZBgLIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUgpmbG9hdEZpZWxkEjwKC2ludDY0X2ZpZWxkGAwgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSCmludDY0RmllbGQSPwoMdWludDY0X2ZpZWxkGA0gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUgt1aW50NjRGaWVsZBI8CgtpbnQzMl9maWVsZBgOIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUgppbnQzMkZpZWxkEj8KDHVpbnQzMl9maWVsZBgPIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVILdWludDMyRmllbGQSOQoKYm9vbF9maWVsZBgQIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSCWJvb2xGaWVsZBI/CgxzdHJpbmdfZmllbGQYESABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSC3N0cmluZ0ZpZWxkEjwKC2J5dGVzX2ZpZWxkGBIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSCmJ5dGVzRmllbGQSNwoLdmFsdWVfZmllbGQYEyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSCnZhbHVlRmllbGQi/wgKFlJlcGVhdGVkV2VsbEtub3duVHlwZXMSMQoJYW55X2ZpZWxkGAEgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIIYW55RmllbGQSMQoJYXBpX2ZpZWxkGAIgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaVIIYXBpRmllbGQSQAoOZHVyYXRpb25fZmllbGQYAyADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SDWR1cmF0aW9uRmllbGQSNwoLZW1wdHlfZmllbGQYBCADKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlSCmVtcHR5RmllbGQSRAoQZmllbGRfbWFza19maWVsZBgFIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSDmZpZWxkTWFza0ZpZWxkElAKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgAygLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSEnNvdXJjZUNvbnRleHRGaWVsZBI6CgxzdHJ1Y3RfZmllbGQYByADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0UgtzdHJ1Y3RGaWVsZBJDCg90aW1lc3RhbXBfZmllbGQYCCADKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUg50aW1lc3RhbXBGaWVsZBI0Cgp0eXBlX2ZpZWxkGAkgAygLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVSCXR5cGVGaWVsZBI/Cgxkb3VibGVfZmllbGQYCiADKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSC2RvdWJsZUZpZWxkEjwKC2Zsb2F0X2ZpZWxkGAsgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSCmZsb2F0RmllbGQSPAoLaW50NjRfZmllbGQYDCADKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIKaW50NjRGaWVsZBI/Cgx1aW50NjRfZmllbGQYDSADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSC3VpbnQ2NEZpZWxkEjwKC2ludDMyX2ZpZWxkGA4gAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSCmludDMyRmllbGQSPwoMdWludDMyX2ZpZWxkGA8gAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUgt1aW50MzJGaWVsZBI5Cgpib29sX2ZpZWxkGBAgAygLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVIJYm9vbEZpZWxkEj8KDHN0cmluZ19maWVsZBgRIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVILc3RyaW5nRmllbGQSPAoLYnl0ZXNfZmllbGQYEiADKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIKYnl0ZXNGaWVsZCKvCQoTT25lb2ZXZWxsS25vd25UeXBlcxIzCglhbnlfZmllbGQYASABKAsyFC5nb29nbGUucHJvdG9idWYuQW55SABSCGFueUZpZWxkEjMKCWFwaV9maWVsZBgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlIAFIIYXBpRmllbGQSQgoOZHVyYXRpb25fZmllbGQYAyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25IAFINZHVyYXRpb25GaWVsZBI5CgtlbXB0eV9maWVsZBgEIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAUgplbXB0eUZpZWxkEkYKEGZpZWxkX21hc2tfZmllbGQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrSABSDmZpZWxkTWFza0ZpZWxkElIKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRIAFISc291cmNlQ29udGV4dEZpZWxkEjwKDHN0cnVjdF9maWVsZBgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAFILc3RydWN0RmllbGQSRQoPdGltZXN0YW1wX2ZpZWxkGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAUg50aW1lc3RhbXBGaWVsZBI2Cgp0eXBlX2ZpZWxkGAkgASgLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVIAFIJdHlwZUZpZWxkEkEKDGRvdWJsZV9maWVsZBgKIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZUgAUgtkb3VibGVGaWVsZBI+CgtmbG9hdF9maWVsZBgLIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlSABSCmZsb2F0RmllbGQSPgoLaW50NjRfZmllbGQYDCABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZUgAUgppbnQ2NEZpZWxkEkEKDHVpbnQ2NF9maWVsZBgNIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZUgAUgt1aW50NjRGaWVsZBI+CgtpbnQzMl9maWVsZBgOIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlSABSCmludDMyRmllbGQSQQoMdWludDMyX2ZpZWxkGA8gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlSABSC3VpbnQzMkZpZWxkEjsKCmJvb2xfZmllbGQYECABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlSABSCWJvb2xGaWVsZBJBCgxzdHJpbmdfZmllbGQYESABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVIAFILc3RyaW5nRmllbGQSPgoLYnl0ZXNfZmllbGQYEiABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZUgAUgpieXRlc0ZpZWxkQg0KC29uZW9mX2ZpZWxkItgZChFNYXBXZWxsS25vd25UeXBlcxJPCglhbnlfZmllbGQYASADKAsyMi5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5BbnlGaWVsZEVudHJ5UghhbnlGaWVsZBJPCglhcGlfZmllbGQYAiADKAsyMi5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5BcGlGaWVsZEVudHJ5UghhcGlGaWVsZBJeCg5kdXJhdGlvbl9maWVsZBgDIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkR1cmF0aW9uRmllbGRFbnRyeVINZHVyYXRpb25GaWVsZBJVCgtlbXB0eV9maWVsZBgEIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkVtcHR5RmllbGRFbnRyeVIKZW1wdHlGaWVsZBJiChBmaWVsZF9tYXNrX2ZpZWxkGAUgAygLMjgucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRmllbGRNYXNrRmllbGRFbnRyeVIOZmllbGRNYXNrRmllbGQSbgoUc291cmNlX2NvbnRleHRfZmllbGQYBiADKAsyPC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5Tb3VyY2VDb250ZXh0RmllbGRFbnRyeVISc291cmNlQ29udGV4dEZpZWxkElgKDHN0cnVjdF9maWVsZBgHIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlN0cnVjdEZpZWxkRW50cnlSC3N0cnVjdEZpZWxkEmEKD3RpbWVzdGFtcF9maWVsZBgIIAMoCzI4LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlRpbWVzdGFtcEZpZWxkRW50cnlSDnRpbWVzdGFtcEZpZWxkElIKCnR5cGVfZmllbGQYCSADKAsyMy5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5UeXBlRmllbGRFbnRyeVIJdHlwZUZpZWxkElgKDGRvdWJsZV9maWVsZBgKIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkRvdWJsZUZpZWxkRW50cnlSC2RvdWJsZUZpZWxkElUKC2Zsb2F0X2ZpZWxkGAsgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRmxvYXRGaWVsZEVudHJ5UgpmbG9hdEZpZWxkElUKC2ludDY0X2ZpZWxkGAwgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuSW50NjRGaWVsZEVudHJ5UgppbnQ2NEZpZWxkElgKDHVpbnQ2NF9maWVsZBgNIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlVpbnQ2NEZpZWxkRW50cnlSC3VpbnQ2NEZpZWxkElUKC2ludDMyX2ZpZWxkGA4gAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuSW50MzJGaWVsZEVudHJ5UgppbnQzMkZpZWxkElgKDHVpbnQzMl9maWVsZBgPIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlVpbnQzMkZpZWxkRW50cnlSC3VpbnQzMkZpZWxkElIKCmJvb2xfZmllbGQYECADKAsyMy5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5Cb29sRmllbGRFbnRyeVIJYm9vbEZpZWxkElgKDHN0cmluZ19maWVsZBgRIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlN0cmluZ0ZpZWxkRW50cnlSC3N0cmluZ0ZpZWxkElUKC2J5dGVzX2ZpZWxkGBIgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuQnl0ZXNGaWVsZEVudHJ5UgpieXRlc0ZpZWxkGlEKDUFueUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSKgoFdmFsdWUYAiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgV2YWx1ZToCOAEaUQoNQXBpRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIqCgV2YWx1ZRgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlSBXZhbHVlOgI4ARpbChJEdXJhdGlvbkZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSLwoFdmFsdWUYAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SBXZhbHVlOgI4ARpVCg9FbXB0eUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSLAoFdmFsdWUYAiABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlSBXZhbHVlOgI4ARpdChNGaWVsZE1hc2tGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjAKBXZhbHVlGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IFdmFsdWU6AjgBGmUKF1NvdXJjZUNvbnRleHRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjQKBXZhbHVlGAIgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSBXZhbHVlOgI4ARpXChBTdHJ1Y3RGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5Ei0KBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIFdmFsdWU6AjgBGl0KE1RpbWVzdGFtcEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMAoFdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUgV2YWx1ZToCOAEaUwoOVHlwZUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSKwoFdmFsdWUYAiABKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZVIFdmFsdWU6AjgBGlwKEERvdWJsZUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMgoFdmFsdWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSBXZhbHVlOgI4ARpaCg9GbG9hdEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIFdmFsdWU6AjgBGloKD0ludDY0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUgV2YWx1ZToCOAEaXAoQVWludDY0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIFdmFsdWU6AjgBGloKD0ludDMyRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUgV2YWx1ZToCOAEaXAoQVWludDMyRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIFdmFsdWU6AjgBGlgKDkJvb2xGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjAKBXZhbHVlGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVIFdmFsdWU6AjgBGlwKEFN0cmluZ0ZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMgoFdmFsdWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSBXZhbHVlOgI4ARpaCg9CeXRlc0ZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIFdmFsdWU6AjgBQjkKGGNvbS5nb29nbGUucHJvdG9idWYudGVzdFABqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NK7ikKBhIEBwB4AQqUAgoBDBID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cHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8aHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8aH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90byKZWwoSVGVzdEFsbFR5cGVzUHJvdG8zEiUKDm9wdGlvbmFsX2ludDMyGAEgASgFUg1vcHRpb25hbEludDMyEiUKDm9wdGlvbmFsX2ludDY0GAIgASgDUg1vcHRpb25hbEludDY0EicKD29wdGlvbmFsX3VpbnQzMhgDIAEoDVIOb3B0aW9uYWxVaW50MzISJwoPb3B0aW9uYWxfdWludDY0GAQgASgEUg5vcHRpb25hbFVpbnQ2NBInCg9vcHRpb25hbF9zaW50MzIYBSABKBFSDm9wdGlvbmFsU2ludDMyEicKD29wdGlvbmFsX3NpbnQ2NBgGIAEoElIOb3B0aW9uYWxTaW50NjQSKQoQb3B0aW9uYWxfZml4ZWQzMhgHIAEoB1IPb3B0aW9uYWxGaXhlZDMyEikKEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZSD29wdGlvbmFsRml4ZWQ2NBIrChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD1IQb3B0aW9uYWxTZml4ZWQzMhIrChFvcHRpb25hbF9zZml4ZWQ2NBgKIAEoEFIQb3B0aW9uYWxTZml4ZWQ2NBIlCg5vcHRpb25hbF9mbG9hdBgLIAEoAlINb3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEncKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJnChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyLS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJuChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SXgoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMioucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbkVudW1SE29wdGlvbmFsRm9yZWlnbkVudW0ScQoVb3B0aW9uYWxfYWxpYXNlZF9lbnVtGBcgASgOMj0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLkFsaWFzZWRFbnVtUhNvcHRpb25hbEFsaWFzZWRFbnVtEjYKFW9wdGlvbmFsX3N0cmluZ19waWVjZRgYIAEoCUICCAJSE29wdGlvbmFsU3RyaW5nUGllY2USJwoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAFSDG9wdGlvbmFsQ29yZBJeChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvM1IQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJ3ChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USZwoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMi0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USbgoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEl4KFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIlCgxwYWNrZWRfaW50MzIYSyADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYTCADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGE0gAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYTiADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhhPIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GFAgAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGFEgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGFMgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GFQgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GFUgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhWIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhXIAMoCEICEAFSCnBhY2tlZEJvb2wSbgoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1CAhABUhBwYWNrZWROZXN0ZWRFbnVtEikKDnVucGFja2VkX2ludDMyGFkgAygFQgIQAFINdW5wYWNrZWRJbnQzMhIpCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0ICEABSDXVucGFja2VkSW50NjQSKwoPdW5wYWNrZWRfdWludDMyGFsgAygNQgIQAFIOdW5wYWNrZWRVaW50MzISKwoPdW5wYWNrZWRfdWludDY0GFwgAygEQgIQAFIOdW5wYWNrZWRVaW50NjQSKwoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgIQAFIOdW5wYWNrZWRTaW50MzISKwoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgIQAFIOdW5wYWNrZWRTaW50NjQSLQoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB0ICEABSD3VucGFja2VkRml4ZWQzMhItChB1bnBhY2tlZF9maXhlZDY0GGAgAygGQgIQAFIPdW5wYWNrZWRGaXhlZDY0Ei8KEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgIQAFIQdW5wYWNrZWRTZml4ZWQzMhIvChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEICEABSEHVucGFja2VkU2ZpeGVkNjQSKQoOdW5wYWNrZWRfZmxvYXQYYyADKAJCAhAAUg11bnBhY2tlZEZsb2F0EisKD3VucGFja2VkX2RvdWJsZRhkIAMoAUICEABSDnVucGFja2VkRG91YmxlEicKDXVucGFja2VkX2Jvb2wYZSADKAhCAhAAUgx1bnBhY2tlZEJvb2wScgoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUICEABSEnVucGFja2VkTmVzdGVkRW51bRJsCg9tYXBfaW50MzJfaW50MzIYOCADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEmwKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQScgoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJyChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnIKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzIScgoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ4ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEngKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSfgoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJ+ChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EmwKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSbwoQbWFwX2ludDMyX2RvdWJsZRhDIAMoCzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkRvdWJsZUVudHJ5Ug5tYXBJbnQzMkRvdWJsZRJmCg1tYXBfYm9vbF9ib29sGEQgAygLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnIKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSbwoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxKIAQoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USiwEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnlSF21hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlEn8KFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEoIBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzIScwoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEl0KCm9uZW9mX2VudW0YdyABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SRgoQb25lb2ZfbnVsbF92YWx1ZRh4IAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIOb25lb2ZOdWxsVmFsdWUSTwoVb3B0aW9uYWxfYm9vbF93cmFwcGVyGMkBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSE29wdGlvbmFsQm9vbFdyYXBwZXISUgoWb3B0aW9uYWxfaW50MzJfd3JhcHBlchjKASABKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIUb3B0aW9uYWxJbnQzMldyYXBwZXISUgoWb3B0aW9uYWxfaW50NjRfd3JhcHBlchjLASABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIUb3B0aW9uYWxJbnQ2NFdyYXBwZXISVQoXb3B0aW9uYWxfdWludDMyX3dyYXBwZXIYzAEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUhVvcHRpb25hbFVpbnQzMldyYXBwZXISVQoXb3B0aW9uYWxfdWludDY0X3dyYXBwZXIYzQEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUhVvcHRpb25hbFVpbnQ2NFdyYXBwZXISUgoWb3B0aW9uYWxfZmxvYXRfd3JhcHBlchjOASABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIUb3B0aW9uYWxGbG9hdFdyYXBwZXISVQoXb3B0aW9uYWxfZG91YmxlX3dyYXBwZXIYzwEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUhVvcHRpb25hbERvdWJsZVdyYXBwZXISVQoXb3B0aW9uYWxfc3RyaW5nX3dyYXBwZXIY0AEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUhVvcHRpb25hbFN0cmluZ1dyYXBwZXISUgoWb3B0aW9uYWxfYnl0ZXNfd3JhcHBlchjRASABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIUb3B0aW9uYWxCeXRlc1dyYXBwZXISTwoVcmVwZWF0ZWRfYm9vbF93cmFwcGVyGNMBIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSE3JlcGVhdGVkQm9vbFdyYXBwZXISUgoWcmVwZWF0ZWRfaW50MzJfd3JhcHBlchjUASADKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIUcmVwZWF0ZWRJbnQzMldyYXBwZXISUgoWcmVwZWF0ZWRfaW50NjRfd3JhcHBlchjVASADKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIUcmVwZWF0ZWRJbnQ2NFdyYXBwZXISVQoXcmVwZWF0ZWRfdWludDMyX3dyYXBwZXIY1gEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUhVyZXBlYXRlZFVpbnQzMldyYXBwZXISVQoXcmVwZWF0ZWRfdWludDY0X3dyYXBwZXIY1wEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUhVyZXBlYXRlZFVpbnQ2NFdyYXBwZXISUgoWcmVwZWF0ZWRfZmxvYXRfd3JhcHBlchjYASADKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIUcmVwZWF0ZWRGbG9hdFdyYXBwZXISVQoXcmVwZWF0ZWRfZG91YmxlX3dyYXBwZXIY2QEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUhVyZXBlYXRlZERvdWJsZVdyYXBwZXISVQoXcmVwZWF0ZWRfc3RyaW5nX3dyYXBwZXIY2gEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUhVyZXBlYXRlZFN0cmluZ1dyYXBwZXISUgoWcmVwZWF0ZWRfYnl0ZXNfd3JhcHBlchjbASADKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIUcmVwZWF0ZWRCeXRlc1dyYXBwZXISRwoRb3B0aW9uYWxfZHVyYXRpb24YrQIgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUhBvcHRpb25hbER1cmF0aW9uEkoKEm9wdGlvbmFsX3RpbWVzdGFtcBiuAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUhFvcHRpb25hbFRpbWVzdGFtcBJLChNvcHRpb25hbF9maWVsZF9tYXNrGK8CIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSEW9wdGlvbmFsRmllbGRNYXNrEkEKD29wdGlvbmFsX3N0cnVjdBiwAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ug5vcHRpb25hbFN0cnVjdBI4CgxvcHRpb25hbF9hbnkYsQIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVILb3B0aW9uYWxBbnkSPgoOb3B0aW9uYWxfdmFsdWUYsgIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUg1vcHRpb25hbFZhbHVlEksKE29wdGlvbmFsX251bGxfdmFsdWUYswIgASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZVIRb3B0aW9uYWxOdWxsVmFsdWUSRwoRcmVwZWF0ZWRfZHVyYXRpb24YtwIgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUhByZXBlYXRlZER1cmF0aW9uEkoKEnJlcGVhdGVkX3RpbWVzdGFtcBi4AiADKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUhFyZXBlYXRlZFRpbWVzdGFtcBJKChJyZXBlYXRlZF9maWVsZG1hc2sYuQIgAygLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IRcmVwZWF0ZWRGaWVsZG1hc2sSQQoPcmVwZWF0ZWRfc3RydWN0GMQCIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSDnJlcGVhdGVkU3RydWN0EjgKDHJlcGVhdGVkX2FueRi7AiADKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgtyZXBlYXRlZEFueRI+Cg5yZXBlYXRlZF92YWx1ZRi8AiADKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSDXJlcGVhdGVkVmFsdWUSSwoTcmVwZWF0ZWRfbGlzdF92YWx1ZRi9AiADKAsyGi5nb29nbGUucHJvdG9idWYuTGlzdFZhbHVlUhFyZXBlYXRlZExpc3RWYWx1ZRIfCgpmaWVsZG5hbWUxGJEDIAEoBVIKZmllbGRuYW1lMRIgCgtmaWVsZF9uYW1lMhiSAyABKAVSCmZpZWxkTmFtZTISIQoMX2ZpZWxkX25hbWUzGJMDIAEoBVIKRmllbGROYW1lMxIiCg1maWVsZF9fbmFtZTRfGJQDIAEoBVIKZmllbGROYW1lNBIhCgtmaWVsZDBuYW1lNRiVAyABKAVSC2ZpZWxkMG5hbWU1EiMKDWZpZWxkXzBfbmFtZTYYlgMgASgFUgtmaWVsZDBOYW1lNhIfCgpmaWVsZE5hbWU3GJcDIAEoBVIKZmllbGROYW1lNxIfCgpGaWVsZE5hbWU4GJgDIAEoBVIKRmllbGROYW1lOBIgCgtmaWVsZF9OYW1lORiZAyABKAVSCmZpZWxkTmFtZTkSIgoMRmllbGRfTmFtZTEwGJoDIAEoBVILRmllbGROYW1lMTASIgoMRklFTERfTkFNRTExGJsDIAEoBVILRklFTEROQU1FMTESIgoMRklFTERfbmFtZTEyGJwDIAEoBVILRklFTEROYW1lMTISJAoOX19maWVsZF9uYW1lMTMYnQMgASgFUgtGaWVsZE5hbWUxMxIkCg5fX0ZpZWxkX25hbWUxNBieAyABKAVSC0ZpZWxkTmFtZTE0EiMKDWZpZWxkX19uYW1lMTUYnwMgASgFUgtmaWVsZE5hbWUxNRIjCg1maWVsZF9fTmFtZTE2GKADIAEoBVILZmllbGROYW1lMTYSJAoOZmllbGRfbmFtZTE3X18YoQMgASgFUgtmaWVsZE5hbWUxNxIkCg5GaWVsZF9uYW1lMThfXxiiAyABKAVSC0ZpZWxkTmFtZTE4GnIKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJTCgtjb3JlY3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvM1ILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARpBChNNYXBTdHJpbmdCeXRlc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgMUgV2YWx1ZToCOAEaigEKG01hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJVCgV2YWx1ZRgCIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaeQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJDCgV2YWx1ZRgCIAEoCzItLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEahAEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJSCgV2YWx1ZRgCIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEacwoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJACgV2YWx1ZRgCIAEoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUgV2YWx1ZToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2VkRW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19CQVoQAhIHCgNNT08QAhIHCgNtb28QAhIHCgNiQXoQAhoCEAFCDQoLb25lb2ZfZmllbGRKBgj1AxD/AyIeCg5Gb3JlaWduTWVzc2FnZRIMCgFjGAEgASgFUgFjIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8zIi8KDkVudW1Pbmx5UHJvdG8zIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASpACgtGb3JlaWduRW51bRIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAkI4Cihjb20uZ29vZ2xlLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zSAH4AQGiAgZQcm90bzNK62YKBxIFDgCIAgEKiAMKAQwSAw4AEjL9AiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKIFRlc3Qgc2NoZW1hIGZvciBwcm90bzMgbWVzc2FnZXMuICBUaGlzIHRlc3Qgc2NoZW1hIGlzIHVzZWQgYnk6CgogLSBiZW5jaG1hcmtzCiAtIGZ1enogdGVzdHMKIC0gY29uZm9ybWFuY2UgdGVzdHMKCgoICgECEgMQACYKCAoBCBIDEgBBCgkKAggBEgMSAEEKCAoBCBIDEwAkCgkKAggkEgMTACQKCAoBCBIDFgAcCkQKAggJEgMW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hQIEDwoPCgcEAwQAAgABEgSFAgQKCg8KBwQDBAACAAISBIUCDQ4KDgoGBAMEAAIBEgSGAgQOCg8KBwQDBAACAQESBIYCBAkKDwoHBAMEAAIBAhIEhgIMDWIGcHJvdG8zCpKTAgoqZ29vZ2xlL3Byb3RvYnVmL3Rlc3RfbWVzc2FnZXNfcHJvdG8yLnByb3RvEh1wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMiKQUwoSVGVzdEFsbFR5cGVzUHJvdG8yEiUKDm9wdGlvbmFsX2ludDMyGAEgASgFUg1vcHRpb25hbEludDMyEiUKDm9wdGlvbmFsX2ludDY0GAIgASgDUg1vcHRpb25hbEludDY0EicKD29wdGlvbmFsX3VpbnQzMhgDIAEoDVIOb3B0aW9uYWxVaW50MzISJwoPb3B0aW9uYWxfdWludDY0GAQgASgEUg5vcHRpb25hbFVpbnQ2NBInCg9vcHRpb25hbF9zaW50MzIYBSABKBFSDm9wdGlvbmFsU2ludDMyEicKD29wdGlvbmFsX3NpbnQ2NBgGIAEoElIOb3B0aW9uYWxTaW50NjQSKQoQb3B0aW9uYWxfZml4ZWQzMhgHIAEoB1IPb3B0aW9uYWxGaXhlZDMyEikKEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZSD29wdGlvbmFsRml4ZWQ2NBIrChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD1IQb3B0aW9uYWxTZml4ZWQzMhIrChFvcHRpb25hbF9zZml4ZWQ2NBgKIAEoEFIQb3B0aW9uYWxTZml4ZWQ2NBIlCg5vcHRpb25hbF9mbG9hdBgLIAEoAlINb3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEncKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJtChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJuChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SZAoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE29wdGlvbmFsRm9yZWlnbkVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEl4KEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEncKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJtChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJuChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SZAoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE3JlcGVhdGVkRm9yZWlnbkVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEiUKDHBhY2tlZF9pbnQzMhhLIAMoBUICEAFSC3BhY2tlZEludDMyEiUKDHBhY2tlZF9pbnQ2NBhMIAMoA0ICEAFSC3BhY2tlZEludDY0EicKDXBhY2tlZF91aW50MzIYTSADKA1CAhABUgxwYWNrZWRVaW50MzISJwoNcGFja2VkX3VpbnQ2NBhOIAMoBEICEAFSDHBhY2tlZFVpbnQ2NBInCg1wYWNrZWRfc2ludDMyGE8gAygRQgIQAVIMcGFja2VkU2ludDMyEicKDXBhY2tlZF9zaW50NjQYUCADKBJCAhABUgxwYWNrZWRTaW50NjQSKQoOcGFja2VkX2ZpeGVkMzIYUSADKAdCAhABUg1wYWNrZWRGaXhlZDMyEikKDnBhY2tlZF9maXhlZDY0GFIgAygGQgIQAVINcGFja2VkRml4ZWQ2NBIrCg9wYWNrZWRfc2ZpeGVkMzIYUyADKA9CAhABUg5wYWNrZWRTZml4ZWQzMhIrCg9wYWNrZWRfc2ZpeGVkNjQYVCADKBBCAhABUg5wYWNrZWRTZml4ZWQ2NBIlCgxwYWNrZWRfZmxvYXQYVSADKAJCAhABUgtwYWNrZWRGbG9hdBInCg1wYWNrZWRfZG91YmxlGFYgAygBQgIQAVIMcGFja2VkRG91YmxlEiMKC3BhY2tlZF9ib29sGFcgAygIQgIQAVIKcGFja2VkQm9vbBJuChJwYWNrZWRfbmVzdGVkX2VudW0YWCADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUICEAFSEHBhY2tlZE5lc3RlZEVudW0SKQoOdW5wYWNrZWRfaW50MzIYWSADKAVCAhAAUg11bnBhY2tlZEludDMyEikKDnVucGFja2VkX2ludDY0GFogAygDQgIQAFINdW5wYWNrZWRJbnQ2NBIrCg91bnBhY2tlZF91aW50MzIYWyADKA1CAhAAUg51bnBhY2tlZFVpbnQzMhIrCg91bnBhY2tlZF91aW50NjQYXCADKARCAhAAUg51bnBhY2tlZFVpbnQ2NBIrCg91bnBhY2tlZF9zaW50MzIYXSADKBFCAhAAUg51bnBhY2tlZFNpbnQzMhIrCg91bnBhY2tlZF9zaW50NjQYXiADKBJCAhAAUg51bnBhY2tlZFNpbnQ2NBItChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgIQAFIPdW5wYWNrZWRGaXhlZDMyEi0KEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCAhAAUg91bnBhY2tlZEZpeGVkNjQSLwoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CAhAAUhB1bnBhY2tlZFNmaXhlZDMyEi8KEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgIQAFIQdW5wYWNrZWRTZml4ZWQ2NBIpCg51bnBhY2tlZF9mbG9hdBhjIAMoAkICEABSDXVucGFja2VkRmxvYXQSKwoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgIQAFIOdW5wYWNrZWREb3VibGUSJwoNdW5wYWNrZWRfYm9vbBhlIAMoCEICEABSDHVucGFja2VkQm9vbBJyChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtQgIQAFISdW5wYWNrZWROZXN0ZWRFbnVtEmwKD21hcF9pbnQzMl9pbnQzMhg4IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISbAoPbWFwX2ludDY0X2ludDY0GDkgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJyChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyEnIKEW1hcF91aW50NjRfdWludDY0GDsgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQScgoRbWFwX3NpbnQzMl9zaW50MzIYPCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJyChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EngKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISeAoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBg/IAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJ+ChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYQCADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEn4KFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSbAoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJvChBtYXBfaW50MzJfZG91YmxlGEMgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEmYKDW1hcF9ib29sX2Jvb2wYRCADKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wScgoRbWFwX3N0cmluZ19zdHJpbmcYRSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJvChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEogBChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeVIWbWFwU3RyaW5nTmVzdGVkTWVzc2FnZRKLAQoabWFwX3N0cmluZ19mb3JlaWduX21lc3NhZ2UYSCADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeVIXbWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2USfwoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnlSE21hcFN0cmluZ05lc3RlZEVudW0SggEKF21hcF9zdHJpbmdfZm9yZWlnbl9lbnVtGEogAygLMksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJzChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSXQoKb25lb2ZfZW51bRh3IAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJLCgRkYXRhGMkBIAEoCjI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5EYXRhUgRkYXRhEngKE211bHRpd29yZGdyb3VwZmllbGQYzAEgASgKMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk11bHRpV29yZEdyb3VwRmllbGRSE211bHRpd29yZGdyb3VwZmllbGQSMAoNZGVmYXVsdF9pbnQzMhjxASABKAU6Ci0xMjM0NTY3ODlSDGRlZmF1bHRJbnQzMhI6Cg1kZWZhdWx0X2ludDY0GPIBIAEoAzoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDGRlZmF1bHRJbnQ2NBIyCg5kZWZhdWx0X3VpbnQzMhjzASABKA06CjIxMjM0NTY3ODlSDWRlZmF1bHRVaW50MzISPAoOZGVmYXVsdF91aW50NjQY9AEgASgEOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OVINZGVmYXVsdFVpbnQ2NBIyCg5kZWZhdWx0X3NpbnQzMhj1ASABKBE6Ci0xMjM0NTY3ODlSDWRlZmF1bHRTaW50MzISPAoOZGVmYXVsdF9zaW50NjQY9gEgASgSOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVINZGVmYXVsdFNpbnQ2NBI0Cg9kZWZhdWx0X2ZpeGVkMzIY9wEgASgHOgoyMTIzNDU2Nzg5Ug5kZWZhdWx0Rml4ZWQzMhI+Cg9kZWZhdWx0X2ZpeGVkNjQY+AEgASgGOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkNjQSNgoQZGVmYXVsdF9zZml4ZWQzMhj5ASABKA86Ci0xMjM0NTY3ODlSD2RlZmF1bHRTZml4ZWQzMhJAChBkZWZhdWx0X3NmaXhlZDY0GPoBIAEoEDoULTkxMjM0NTY3ODkxMjM0NTY3ODlSD2RlZmF1bHRTZml4ZWQ2NBIrCg1kZWZhdWx0X2Zsb2F0GPsBIAEoAjoFOWUrMDlSDGRlZmF1bHRGbG9hdBItCg5kZWZhdWx0X2RvdWJsZRj8ASABKAE6BTdlKzIyUg1kZWZhdWx0RG91YmxlEigKDGRlZmF1bHRfYm9vbBj9ASABKAg6BHRydWVSC2RlZmF1bHRCb29sEi8KDmRlZmF1bHRfc3RyaW5nGP4BIAEoCToHUm9zZWJ1ZFINZGVmYXVsdFN0cmluZxIsCg1kZWZhdWx0X2J5dGVzGP8BIAEoDDoGam9zaHVhUgxkZWZhdWx0Qnl0ZXMSHwoKZmllbGRuYW1lMRiRAyABKAVSCmZpZWxkbmFtZTESIAoLZmllbGRfbmFtZTIYkgMgASgFUgpmaWVsZE5hbWUyEiEKDF9maWVsZF9uYW1lMxiTAyABKAVSCkZpZWxkTmFtZTMSIgoNZmllbGRfX25hbWU0XxiUAyABKAVSCmZpZWxkTmFtZTQSIQoLZmllbGQwbmFtZTUYlQMgASgFUgtmaWVsZDBuYW1lNRIjCg1maWVsZF8wX25hbWU2GJYDIAEoBVILZmllbGQwTmFtZTYSHwoKZmllbGROYW1lNxiXAyABKAVSCmZpZWxkTmFtZTcSHwoKRmllbGROYW1lOBiYAyABKAVSCkZpZWxkTmFtZTgSIAoLZmllbGRfTmFtZTkYmQMgASgFUgpmaWVsZE5hbWU5EiIKDEZpZWxkX05hbWUxMBiaAyABKAVSC0ZpZWxkTmFtZTEwEiIKDEZJRUxEX05BTUUxMRibAyABKAVSC0ZJRUxETkFNRTExEiIKDEZJRUxEX25hbWUxMhicAyABKAVSC0ZJRUxETmFtZTEyEiQKDl9fZmllbGRfbmFtZTEzGJ0DIAEoBVILRmllbGROYW1lMTMSJAoOX19GaWVsZF9uYW1lMTQYngMgASgFUgtGaWVsZE5hbWUxNBIjCg1maWVsZF9fbmFtZTE1GJ8DIAEoBVILZmllbGROYW1lMTUSIwoNZmllbGRfX05hbWUxNhigAyABKAVSC2ZpZWxkTmFtZTE2EiQKDmZpZWxkX25hbWUxN19fGKEDIAEoBVILZmllbGROYW1lMTcSJAoORmllbGRfbmFtZTE4X18YogMgASgFUgtGaWVsZE5hbWUxOBpyCg1OZXN0ZWRNZXNzYWdlEgwKAWEYASABKAVSAWESUwoLY29yZWN1cnNpdmUYAiABKAsyMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzJSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGooBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSVQoFdmFsdWUYAiABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGn8KHE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSSQoFdmFsdWUYAiABKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIFdmFsdWU6AjgBGoQBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSUgoFdmFsdWUYAiABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIFdmFsdWU6AjgBGnkKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSRgoFdmFsdWUYAiABKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlIFdmFsdWU6AjgBGkwKBERhdGESIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyGlsKE011bHRpV29yZEdyb3VwRmllbGQSIAoLZ3JvdXBfaW50MzIYzQEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjOASABKA1SC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEa+gEKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIQCgNzdHIYGSABKAlSA3N0cjLIAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGvcBChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAEoBVIBaTLJAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GJCz/AEgASgLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUINCgtvbmVvZl9maWVsZEoGCOgHEJBOIiQKFEZvcmVpZ25NZXNzYWdlUHJvdG8yEgwKAWMYASABKAVSAWMiUAoKR3JvdXBGaWVsZBIfCgtncm91cF9pbnQzMhh6IAEoBVIKZ3JvdXBJbnQzMhIhCgxncm91cF91aW50MzIYeyABKA1SC2dyb3VwVWludDMyIp4DChVVbmtub3duVG9UZXN0QWxsVHlwZXMSJgoOb3B0aW9uYWxfaW50MzIY6QcgASgFUg1vcHRpb25hbEludDMyEigKD29wdGlvbmFsX3N0cmluZxjqByABKAlSDm9wdGlvbmFsU3RyaW5nElsKDm5lc3RlZF9tZXNzYWdlGOsHIAEoCzIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUg1uZXN0ZWRNZXNzYWdlEmkKDW9wdGlvbmFsZ3JvdXAY7AcgASgKMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVW5rbm93blRvVGVzdEFsbFR5cGVzLk9wdGlvbmFsR3JvdXBSDW9wdGlvbmFsZ3JvdXASJAoNb3B0aW9uYWxfYm9vbBjuByABKAhSDG9wdGlvbmFsQm9vbBImCg5yZXBlYXRlZF9pbnQzMhjzByADKAVSDXJlcGVhdGVkSW50MzIaHQoNT3B0aW9uYWxHcm91cBIMCgFhGAEgASgFUgFhIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8yIi8KDkVudW1Pbmx5UHJvdG8yIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASIlCg9PbmVTdHJpbmdQcm90bzISEgoEZGF0YRgBIAEoCVIEZGF0YSJhChFQcm90b1dpdGhLZXl3b3JkcxIWCgZpbmxpbmUYASABKAVSBmlubGluZRIYCgdjb25jZXB0GAIgASgJUgdjb25jZXB0EhoKCHJlcXVpcmVzGAMgAygJUghyZXF1aXJlcyLMGQoaVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzISJQoOcmVxdWlyZWRfaW50MzIYASACKAVSDXJlcXVpcmVkSW50MzISJQoOcmVxdWlyZWRfaW50NjQYAiACKANSDXJlcXVpcmVkSW50NjQSJwoPcmVxdWlyZWRfdWludDMyGAMgAigNUg5yZXF1aXJlZFVpbnQzMhInCg9yZXF1aXJlZF91aW50NjQYBCACKARSDnJlcXVpcmVkVWludDY0EicKD3JlcXVpcmVkX3NpbnQzMhgFIAIoEVIOcmVxdWlyZWRTaW50MzISJwoPcmVxdWlyZWRfc2ludDY0GAYgAigSUg5yZXF1aXJlZFNpbnQ2NBIpChByZXF1aXJlZF9maXhlZDMyGAcgAigHUg9yZXF1aXJlZEZpeGVkMzISKQoQcmVxdWlyZWRfZml4ZWQ2NBgIIAIoBlIPcmVxdWlyZWRGaXhlZDY0EisKEXJlcXVpcmVkX3NmaXhlZDMyGAkgAigPUhByZXF1aXJlZFNmaXhlZDMyEisKEXJlcXVpcmVkX3NmaXhlZDY0GAogAigQUhByZXF1aXJlZFNmaXhlZDY0EiUKDnJlcXVpcmVkX2Zsb2F0GAsgAigCUg1yZXF1aXJlZEZsb2F0EicKD3JlcXVpcmVkX2RvdWJsZRgMIAIoAVIOcmVxdWlyZWREb3VibGUSIwoNcmVxdWlyZWRfYm9vbBgNIAIoCFIMcmVxdWlyZWRCb29sEicKD3JlcXVpcmVkX3N0cmluZxgOIAIoCVIOcmVxdWlyZWRTdHJpbmcSJQoOcmVxdWlyZWRfYnl0ZXMYDyACKAxSDXJlcXVpcmVkQnl0ZXMSfwoXcmVxdWlyZWRfbmVzdGVkX21lc3NhZ2UYEiACKAsyRy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVyZXF1aXJlZE5lc3RlZE1lc3NhZ2USbQoYcmVxdWlyZWRfZm9yZWlnbl9tZXNzYWdlGBMgAigLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFnJlcXVpcmVkRm9yZWlnbk1lc3NhZ2USdgoUcmVxdWlyZWRfbmVzdGVkX2VudW0YFSACKA4yRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJyZXF1aXJlZE5lc3RlZEVudW0SZAoVcmVxdWlyZWRfZm9yZWlnbl9lbnVtGBYgAigOMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE3JlcXVpcmVkRm9yZWlnbkVudW0SNgoVcmVxdWlyZWRfc3RyaW5nX3BpZWNlGBggAigJQgIIAlITcmVxdWlyZWRTdHJpbmdQaWVjZRInCg1yZXF1aXJlZF9jb3JkGBkgAigJQgIIAVIMcmVxdWlyZWRDb3JkEmYKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgAigLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSEHJlY3Vyc2l2ZU1lc3NhZ2USdwoab3B0aW9uYWxfcmVjdXJzaXZlX21lc3NhZ2UYHCABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIYb3B0aW9uYWxSZWN1cnNpdmVNZXNzYWdlElMKBGRhdGEYyQEgAigKMj4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuRGF0YVIEZGF0YRIwCg1kZWZhdWx0X2ludDMyGPEBIAIoBToKLTEyMzQ1Njc4OVIMZGVmYXVsdEludDMyEjoKDWRlZmF1bHRfaW50NjQY8gEgAigDOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIMZGVmYXVsdEludDY0EjIKDmRlZmF1bHRfdWludDMyGPMBIAIoDToKMjEyMzQ1Njc4OVINZGVmYXVsdFVpbnQzMhI8Cg5kZWZhdWx0X3VpbnQ2NBj0ASACKAQ6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0VWludDY0EjIKDmRlZmF1bHRfc2ludDMyGPUBIAIoEToKLTEyMzQ1Njc4OVINZGVmYXVsdFNpbnQzMhI8Cg5kZWZhdWx0X3NpbnQ2NBj2ASACKBI6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDY0EjQKD2RlZmF1bHRfZml4ZWQzMhj3ASACKAc6CjIxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDMyEj4KD2RlZmF1bHRfZml4ZWQ2NBj4ASACKAY6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug5kZWZhdWx0Rml4ZWQ2NBI2ChBkZWZhdWx0X3NmaXhlZDMyGPkBIAIoDzoKLTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDMyEkAKEGRlZmF1bHRfc2ZpeGVkNjQY+gEgAigQOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDY0EisKDWRlZmF1bHRfZmxvYXQY+wEgAigCOgU5ZSswOVIMZGVmYXVsdEZsb2F0Ei0KDmRlZmF1bHRfZG91YmxlGPwBIAIoAToFN2UrMjJSDWRlZmF1bHREb3VibGUSKAoMZGVmYXVsdF9ib29sGP0BIAIoCDoEdHJ1ZVILZGVmYXVsdEJvb2wSLwoOZGVmYXVsdF9zdHJpbmcY/gEgAigJOgdSb3NlYnVkUg1kZWZhdWx0U3RyaW5nEiwKDWRlZmF1bHRfYnl0ZXMY/wEgAigMOgZqb3NodWFSDGRlZmF1bHRCeXRlcxroAQoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgAigFUgFhElsKC2NvcmVjdXJzaXZlGAIgAigLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSC2NvcmVjdXJzaXZlEmwKFG9wdGlvbmFsX2NvcmVjdXJzaXZlGAMgASgLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJSE29wdGlvbmFsQ29yZWN1cnNpdmUaTAoERGF0YRIgCgtncm91cF9pbnQzMhjKASACKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGMsBIAIoDVILZ3JvdXBVaW50MzIaIQoRTWVzc2FnZVNldENvcnJlY3QqCAgEEP////8HOgIIARqKAgobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xEhAKA3N0chgZIAIoCVIDc3RyMtgBChVtZXNzYWdlX3NldF9leHRlbnNpb24SSy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBj5u14gASgLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGocCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAIoBVIBaTLZAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24iOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASoFCHgQyQFKBgjoBxCQTipGChFGb3JlaWduRW51bVByb3RvMhIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAjpaCg9leHRlbnNpb25faW50MzISMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIYeCABKAVSDmV4dGVuc2lvbkludDMyOnwKCmdyb3VwZmllbGQSMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIYeSABKAoyKS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Hcm91cEZpZWxkUgpncm91cGZpZWxkQjgKKGNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzJIAfgBAaICBlByb3RvMkqZnQEKBxIFDgCCAwEKggMKAQwSAw4AEjLhAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKIFRlc3Qgc2NoZW1hIGZvciBwcm90bzIgbWVzc2FnZXMuICBUaGlzIHRlc3Qgc2NoZW1hIGlzIHVzZWQgYnk6CgogLSBjb25mb3JtYW5jZSB0ZXN0cwoKMhQgTElOVDogQUxMT1dfR1JPVVBTCgoICgECEgMQACYKCAoBCBIDEgBBCgkKAggBEgMSAEEKCAoBCBIDEwAkCgkKAggkEgMTACQKCAoBCBIDFgAcCkQKAggJEgMWABwaOSBUaGlzIGlzIHRoZSBkZWZhdWx0LCBidXQgd2Ugc3BlY2lmeSBpdCBoZXJlIGV4cGxpY2l0bHkuCgoICgEIEgMYAB8KCQoCCB8SAxgAHwrbAgoCBAASBSIA8QEBGs0CIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAogZm9ybXMuCgogQWxzbywgY3J1Y2lhbGx5LCBhbGwgbWVzc2FnZXMgYW5kIGVudW1zIGluIHRoaXMgZmlsZSBhcmUgZXZlbnR1YWxseQogc3VibWVzc2FnZXMgb2YgdGhpcyBtZXNzYWdlLiAgU28gZm9yIGV4YW1wbGUsIGEgZnV6eiB0ZXN0IG9mIFRlc3RBbGxUeXBlcwogY291bGQgdHJpZ2dlciBidWdzIHRoYXQgb2NjdXIgaW4gYW55IG1lc3NhZ2UgdHlwZSBpbiB0aGlzIGZpbGUuICBXZSB2ZXJpZnkKIHRoaXMgc3RheXMgdHJ1ZSBpbiBhIHVuaXQgdGVzdC4KCgoKAwQAARIDIggaCgwKBAQAAwASBCMCJgMKDAoFBAADAAESAyMKFwoNCgYEAAMAAgASAyQEGQoOCgcEAAMAAgAEEgMkBAwKDgoHBAADAAIABRIDJA0SCg4KBwQAAwACAAESAyQT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B1IMZmllbGRGZWF0dXJlElAKDW9uZW9mX2ZlYXR1cmUYBSABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEFogELEgZWQUxVRTEYhAeyAQMI6AdSDG9uZW9mRmVhdHVyZRJOCgxlbnVtX2ZlYXR1cmUYBiABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEGogELEgZWQUxVRTEYhAeyAQMI6AdSC2VudW1GZWF0dXJlElkKEmVudW1fZW50cnlfZmVhdHVyZRgHIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQeiAQsSBlZBTFVFMRiEB7IBAwjoB1IQZW51bUVudHJ5RmVhdHVyZRJUCg9zZXJ2aWNlX2ZlYXR1cmUYCCABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEIogELEgZWQUxVRTEYhAeyAQMI6AdSDnNlcnZpY2VGZWF0dXJlElIKDm1ldGhvZF9mZWF0dXJlGAkgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBCaIBCxIGVkFMVUUxGIQHsgEDCOgHUg1tZXRob2RGZWF0dXJlEm4KEG11bHRpcGxlX2ZlYXR1cmUYCiABKA4yDy5wYi5FbnVtRmVhdHVyZUIyiAEBmAEBmAEEmAEDmAEGmAEHmAEImAEJmAEFmAECogELEgZWQUxVRTEYhAeyAQMI6AdSD211bHRpcGxlRmVhdHVyZRJUChJib29sX2ZpZWxkX2ZlYXR1cmUYCyABKAhCJogBAZgBBKIBChIFZmFsc2UYhAeiAQoSBHRydWUYnY0GsgEDCOgHUhBib29sRmllbGRGZWF0dXJlEmoKDnNvdXJjZV9mZWF0dXJlGA8gASgOMg8ucGIuRW51bUZlYXR1cmVCMogBApgBAZgBBJgBA5gBBpgBB5gBCJgBCZgBBZgBAqIBCxIGVkFMVUUxGIQHsgEDCOgHUg1zb3VyY2VGZWF0dXJlEmwKD3NvdXJjZV9mZWF0dXJlMhgQIAEoDjIPLnBiLkVudW1GZWF0dXJlQjKIAQKYAQGYAQSYAQOYAQaYAQeYAQiYAQmYAQWYAQKiAQsSBlZBTFVFMRiEB7IBAwjoB1IOc291cmNlRmVhdHVyZTISnQEKD3JlbW92ZWRfZmVhdHVyZRgRIAEoDjIPLnBiLkVudW1GZWF0dXJlQmOIAQGYAQGYAQSiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOgHogELEgZWQUxVRTMY6QeyAS0I6AcQ6AcaIkN1c3RvbSBmZWF0dXJlIGRlcHJlY2F0aW9uIHdhcm5pbmcg6QdSDnJlbW92ZWRGZWF0dXJlEmMKDmZ1dHVyZV9mZWF0dXJlGBIgASgOMg8ucGIuRW51bUZlYXR1cmVCK4gBAZgBAZgBBKIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY6QeyAQMI6QdSDWZ1dHVyZUZlYXR1cmUSZgoObGVnYWN5X2ZlYXR1cmUYEyABKA4yDy5wYi5FbnVtRmVhdHVyZUIuiAEBmAEBmAEEogELEgZWQUxVRTEYhAeiAQsSBlZBTFVFMhjoB7IBBgjmByDoB1INbGVnYWN5RmVhdHVyZSrJAgoLRW51bUZlYXR1cmUSHQoZVEVTVF9FTlVNX0ZFQVRVUkVfVU5LTk9XThAAEgoKBlZBTFVFMRABEgoKBlZBTFVFMhACEgoKBlZBTFVFMxADEgoKBlZBTFVFNBAEEgoKBlZBTFVFNRAFEgoKBlZBTFVFNhAGEgoKBlZBTFVFNxAHEgoKBlZBTFVFOBAIEgoKBlZBTFVFORAJEgsKB1ZBTFVFMTAQChILCgdWQUxVRTExEAsSCwoHVkFMVUUxMhAMEgsKB1ZBTFVFMTMQDRILCgdWQUxVRTE0EA4SCwoHVkFMVUUxNRAPEhsKE1ZBTFVFX0VNUFRZX1NVUFBPUlQQYhoCIgASRAoMVkFMVUVfRlVUVVJFEGMaMiIwCJ2NBhCejQYaIkN1c3RvbSBmZWF0dXJlIGRlcHJlY2F0aW9uIHdhcm5pbmcgn40GOkIKBHRlc3QSGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldBiPTiABKAsyEC5wYi5UZXN0RmVhdHVyZXNSBHRlc3RKuiMKBxIFBwDJAQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDIzIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxl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AQICCBYBEgNKBDUKDgoHBAECAggUABIDSwRDCgwKBAQBAgMSBE0CUgQKDAoFBAECAwQSA00CCgoMCgUEAQIDBhIDTQsWCgwKBQQBAgMBEgNNFyQKDAoFBAECAwMSA00nKAoNCgUEAQIDCBIETSlSAwoNCgYEAQIDCBESA04EIQoOCgcEAQIDCBMAEgNPBB8KDgoHBAECAwgWARIDUAQ1Cg4KBwQBAgMIFAASA1EEQwoMCgQEAQIEEgRTAlgECgwKBQQBAgQEEgNTAgoKDAoFBAECBAYSA1MLFgoMCgUEAQIEARIDUxckCgwKBQQBAgQDEgNTJygKDQoFBAECBAgSBFMpWAMKDQoGBAECBAgREgNUBCEKDgoHBAECBAgTABIDVQQfCg4KBwQBAgQIFgESA1YENQoOCgcEAQIECBQAEgNXBEMKDAoEBAECBRIEWQJeBAoMCgUEAQIFBBIDWQIKCgwKBQQBAgUGEgNZCxYKDAoFBAECBQESA1kXIwoMCgUEAQIFAxIDWSYnCg0KBQQBAgUIEgRZKF4DCg0KBgQBAgUIERIDWgQhCg4KBwQBAgUIEwASA1sEHgoOCgcEAQIFCBYBEgNcBDUKDgoHBAECBQgUABIDXQRDCgwKBAQBAgYSBF8CZAQKDAoFBAECBgQSA18CCgoMCgUEAQIGBhIDXwsWCgwKBQQBAgYBEgNfFykKDAoFBAECBgMSA18sLQoNCgUEAQIGCBIEXy5kAwoNCgYEAQIGCBESA2AEIQoOCgcEAQIGCBMAEgNhBCQKDgoHBAECBggWARIDYgQ1Cg4KBwQBAgYIFAASA2MEQwoMCgQEAQIHEgRlAmoECgwKBQQBAgcEEgNlAgoKDAoFBAECBwYSA2ULFgoMCgUEAQIHARIDZRcmCgwKBQQBAgcDEgNlKSoKDQoFBAECBwgSBGUragMKDQoGBAECBwgREgNmBCEKDgoHBAECBwgTABIDZwQhCg4KBwQBAgcIFgESA2gENQoOCgcEAQIHCBQAEgNpBEMKDAoEBAECCBIEawJwBAoMCgUEAQIIBBIDawIKCgwKBQQBAggGEgNrCxYKDAoFBAECCAESA2sXJQoMCgUEAQIIAxIDaygpCg0KBQQBAggIEgRrKnADCg0KBgQBAggIERIDbAQhCg4KBwQBAggIEwASA20EIAoOCgcEAQIICBYBEgNuBDUK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ZWRGaWVsZBJdCg9kZWxpbWl0ZWRfZmllbGQYAiABKAsyLS5sZWdhY3lfZmVhdHVyZXNfdW5pdHRlc3QuVGVzdEVkaXRpb25zTWVzc2FnZUIFqgECKAJSDmRlbGltaXRlZEZpZWxkSrkECgYSBAkAEQEK4QIKAQwSAwkAETKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoySyBUZXN0IHRoYXQgZmVhdHVyZXMgd2l0aCBsZWdhY3kgZGVzY3JpcHRvciBoZWxwZXJzIGdldCBwcm9wZXJseSBjb252ZXJ0ZWQuCgoICgECEgMLACEKCgoCBAASBA0AEQEKCgoDBAABEgMNCBsKCwoEBAACABIDDgJHCgwKBQQAAgAFEgMOAgcKDAoFBAACAAESAw4IFgoMCgUEAAIAAxIDDhkaCgwKBQQAAgAIEgMOG0YKDgoHBAACAAgVARIDDhxFCgwKBAQAAgESBA8CEC4KDAoFBAACAQYSAw8CFQoMCgUEAAIBARIDDxYlCgwKBQQAAgEDEgMPKCkKDAoFBAACAQgSAxAGLQoOCgcEAAIBCBUFEgMQByxiCGVkaXRpb25zcOgHCqAqCi5nb29nbGUvcHJvdG9idWYvdW5pdHRlc3RfcHJvdG8zX29wdGlvbmFsLnByb3RvEhFwcm90b2J1Zl91bml0dGVzdBogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8ijw0KElRlc3RQcm90bzNPcHRpb25hbBIqCg5vcHRpb25hbF9pbnQzMhgBIAEoBUgAUg1vcHRpb25hbEludDMyiAEBEioKDm9wdGlvbmFsX2ludDY0GAIgASgDSAFSDW9wdGlvbmFsSW50NjSIAQESLAoPb3B0aW9uYWxfdWludDMyGAMgASgNSAJSDm9wdGlvbmFsVWludDMyiAEBEiwKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBEgDUg5vcHRpb25hbFVpbnQ2NIgBARIsCg9vcHRpb25hbF9zaW50MzIYBSABKBFIBFIOb3B0aW9uYWxTaW50MzKIAQESLAoPb3B0aW9uYWxfc2ludDY0GAYgASgSSAVSDm9wdGlvbmFsU2ludDY0iAEBEi4KEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdIBlIPb3B0aW9uYWxGaXhlZDMyiAEBEi4KEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZIB1IPb3B0aW9uYWxGaXhlZDY0iAEBEjAKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPSAhSEG9wdGlvbmFsU2ZpeGVkMzKIAQESMAoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBICVIQb3B0aW9uYWxTZml4ZWQ2NIgBARIqCg5vcHRpb25hbF9mbG9hdBgLIAEoAkgKUg1vcHRpb25hbEZsb2F0iAEBEiwKD29wdGlvbmFsX2RvdWJsZRgMIAEoAUgLUg5vcHRpb25hbERvdWJsZYgBARIoCg1vcHRpb25hbF9ib29sGA0gASgISAxSDG9wdGlvbmFsQm9vbIgBARIsCg9vcHRpb25hbF9zdHJpbmcYDiABKAlIDVIOb3B0aW9uYWxTdHJpbmeIAQESKgoOb3B0aW9uYWxfYnl0ZXMYDyABKAxIDlINb3B0aW9uYWxCeXRlc4gBARIsCg1vcHRpb25hbF9jb3JkGBAgASgJQgIIAUgPUgxvcHRpb25hbENvcmSIAQEScAoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyMy5wcm90b2J1Zl91bml0dGVzdC5UZXN0UHJvdG8zT3B0aW9uYWwuTmVzdGVkTWVzc2FnZUgQUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2WIAQESbAoTbGF6eV9uZXN0ZWRfbWVzc2FnZRgTIAEoCzIzLnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRNZXNzYWdlQgIoAUgRUhFsYXp5TmVzdGVkTWVzc2FnZYgBARJnChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjIwLnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRFbnVtSBJSEm9wdGlvbmFsTmVzdGVkRW51bYgBARIlCg5zaW5ndWxhcl9pbnQzMhgWIAEoBVINc2luZ3VsYXJJbnQzMhIlCg5zaW5ndWxhcl9pbnQ2NBgXIAEoA1INc2luZ3VsYXJJbnQ2NBorCg1OZXN0ZWRNZXNzYWdlEhMKAmJiGAEgASgFSABSAmJiiAEBQgUKA19iYiJKCgpOZXN0ZWRFbnVtEg8KC1VOU1BFQ0lGSUVEEAASBwoDRk9PEAESBwoDQkFSEAISBwoDQkFaEAMSEAoDTkVHEP///////////wFCEQoPX29wdGlvbmFsX2ludDMyQhEKD19vcHRpb25hbF9pbnQ2NEISChBfb3B0aW9uYWxfdWludDMyQhIKEF9vcHRpb25hbF91aW50NjRCEgoQX29wdGlvbmFsX3NpbnQzMkISChBfb3B0aW9uYWxfc2ludDY0QhMKEV9vcHRpb25hbF9maXhlZDMyQhMKEV9vcHRpb25hbF9maXhlZDY0QhQKEl9vcHRpb25hbF9zZml4ZWQzMkIUChJfb3B0aW9uYWxfc2ZpeGVkNjRCEQoPX29wdGlvbmFsX2Zsb2F0QhIKEF9vcHRpb25hbF9kb3VibGVCEAoOX29wdGlvbmFsX2Jvb2xCEgoQX29wdGlvbmFsX3N0cmluZ0IRCg9fb3B0aW9uYWxfYnl0ZXNCEAoOX29wdGlvbmFsX2NvcmRCGgoYX29wdGlvbmFsX25lc3RlZF9tZXNzYWdlQhYKFF9sYXp5X25lc3RlZF9tZXNzYWdlQhcKFV9vcHRpb25hbF9uZXN0ZWRfZW51bSKyAgoZVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZRJhCg5uZXN0ZWRfbWVzc2FnZRgBIAEoCzI6LnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2UuTmVzdGVkTWVzc2FnZVINbmVzdGVkTWVzc2FnZRJ3ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgCIAEoCzI6LnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2UuTmVzdGVkTWVzc2FnZUgAUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2WIAQEaHQoNTmVzdGVkTWVzc2FnZRIMCgFzGAEgASgJUgFzQhoKGF9vcHRpb25hbF9uZXN0ZWRfbWVzc2FnZSLJAQoYUHJvdG8zT3B0aW9uYWxFeHRlbnNpb25zMksKD2V4dF9ub19vcHRpb25hbBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiIzdmpASABKAVSDWV4dE5vT3B0aW9uYWwyUgoRZXh0X3dpdGhfb3B0aW9uYWwSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYic3ZqQEgASgFUg9leHRXaXRoT3B0aW9uYWyIAQE6DMDozM0KCMjozM0KEEI4CiFjb20uZ29vZ2xlLnByb3RvYnVmLnRlc3RpbmcucHJvdG9QAaoCEFByb3RvYnVmVW5pdHRlc3RK4xcKBhIEBwBNAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABoKCQoCAwASAwsAKgoICgEIEgMNAC0KCQoCCCUSAw0ALQoICgEIEgMOACIKCQoCCAoSAw4AIgoICgEIEgMPADoKCQoCCAESAw8AOgoKCgIEABIEEQA6AQoKCgMEAAESAxEIGgoMCgQEAAMAEgQSAhcDCgwKBQQAAwABEgMSChcK4wEKBgQAAwACABIDFgQaGtMBIFRoZSBmaWVsZCBuYW1lICJiIiBmYWlscyB0byBjb21waWxlIGluIHByb3RvMSBiZWNhdXNlIGl0IGNvbmZsaWN0cyB3aXRoCiBhIGxvY2FsIHZhcmlhYmxlIG5hbWVkICJiIiBpbiBvbmUgb2Yg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dGlvbkZpZWxkEjkKFnNvdXJjZV9yZXRlbnRpb25fZmllbGQYAyABKAVCA4gBAlIUc291cmNlUmV0ZW50aW9uRmllbGQiFgoIRXh0ZW5kZWUqBAgBEAIqBAgCEAMi7AEKD1RvcExldmVsTWVzc2FnZRIYCgFmGAEgASgCQgqauu2EDwQIARACUgFmEg4KAWkYAiABKANIAFIBaRobCg1OZXN0ZWRNZXNzYWdlOgqaxd6FDwQIARACIiwKCk5lc3RlZEVudW0SEgoOTkVTVEVEX1VOS05PV04QABoK+p6qhA8ECAEQAioQCAoQZRoKopjfhQ8ECAEQAjI1CgFzEhsucHJvdG9idWZfdW5pdHRlc3QuRXh0ZW5kZWUYAiABKAlCCpq67YQPBAgBEAJSAXM6CprF3oUPBAgBEAJCDwoBbxIKitu3hA8ECAEQAio9CgxUb3BMZXZlbEVudW0SIQoRVE9QX0xFVkVMX1VOS05PV04QABoK0t2phA8ECAEQAhoK+p6qhA8ECAEQAjJ0CgdTZXJ2aWNlEl0KB0RvU3R1ZmYSIi5wcm90b2J1Zl91bml0dGVzdC5Ub3BMZXZlbE1lc3NhZ2UaIi5wcm90b2J1Zl91bml0dGVzdC5Ub3BMZXZlbE1lc3NhZ2UiCuKu+IMPBAgBEAIaCuqHi4QPBAgBEAI6QwoMcGxhaW5fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGMa17PABIAEoBVILcGxhaW5PcHRpb246XwoYcnVudGltZV9yZXRlbnRpb25fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGJyS6fABIAEoBUIDiAEBUhZydW50aW1lUmV0ZW50aW9uT3B0aW9uOl0KF3NvdXJjZV9yZXRlbnRpb25fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGNSs3/ABIAEoBUIDiAECUhVzb3VyY2VSZXRlbnRpb25PcHRpb246ZAoLZmlsZV9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYgPLe8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSCmZpbGVPcHRpb246bgoQcmVwZWF0ZWRfb3B0aW9ucxIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxiS/tvwASADKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIPcmVwZWF0ZWRPcHRpb25zOoMBChZleHRlbnNpb25fcmFuZ2Vfb3B0aW9uEiYuZ29vZ2xlLnByb3RvYnVmLkV4dGVuc2lvblJhbmdlT3B0aW9ucxiE89vwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIUZXh0ZW5zaW9uUmFuZ2VPcHRpb246bQoObWVzc2FnZV9vcHRpb24SHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY0+jb8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSDW1lc3NhZ2VPcHRpb246ZwoMZmllbGRfb3B0aW9uEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxij183wASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVILZmllbGRPcHRpb246ZwoMb25lb2Zfb3B0aW9uEh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9ucxix+8bwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVILb25lb2ZPcHRpb246ZAoLZW51bV9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRW51bU9wdGlvbnMY76PF8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSCmVudW1PcHRpb246dAoRZW51bV9lbnRyeV9vcHRpb24SIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9ucxjam8XwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIPZW51bUVudHJ5T3B0aW9uOm0KDnNlcnZpY2Vfb3B0aW9uEh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zGP2wwfABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg1zZXJ2aWNlT3B0aW9uOmoKDW1ldGhvZF9vcHRpb24SHi5nb29nbGUu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