CsqVAQo3Y29uZm9ybWFuY2UvdGVzdF9wcm90b3MvdGVzdF9tZXNzYWdlc19lZGl0aW9uMjAyMy5wcm90bxIfcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucyIeCg5Db21wbGV4TWVzc2FnZRIMCgFkGAEgASgFUgFkIp9GChdUZXN0QWxsVHlwZXNFZGl0aW9uMjAyMxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxKFAQoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USewoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzQgWqAQIoAVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJ1ChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmsKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITb3B0aW9uYWxGb3JlaWduRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSbAoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzQgWqAQIoAVIQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxKFAQoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USewoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzQgWqAQIoAVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ1ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmsKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSKAoMcGFja2VkX2ludDMyGEsgAygFQgWqAQIYAVILcGFja2VkSW50MzISKAoMcGFja2VkX2ludDY0GEwgAygDQgWqAQIYAVILcGFja2VkSW50NjQSKgoNcGFja2VkX3VpbnQzMhhNIAMoDUIFqgECGAFSDHBhY2tlZFVpbnQzMhIqCg1wYWNrZWRfdWludDY0GE4gAygEQgWqAQIYAVIMcGFja2VkVWludDY0EioKDXBhY2tlZF9zaW50MzIYTyADKBFCBaoBAhgBUgxwYWNrZWRTaW50MzISKgoNcGFja2VkX3NpbnQ2NBhQIAMoEkIFqgECGAFSDHBhY2tlZFNpbnQ2NBIsCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0IFqgECGAFSDXBhY2tlZEZpeGVkMzISLAoOcGFja2VkX2ZpeGVkNjQYUiADKAZCBaoBAhgBUg1wYWNrZWRGaXhlZDY0Ei4KD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0IFqgECGAFSDnBhY2tlZFNmaXhlZDMyEi4KD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEIFqgECGAFSDnBhY2tlZFNmaXhlZDY0EigKDHBhY2tlZF9mbG9hdBhVIAMoAkIFqgECGAFSC3BhY2tlZEZsb2F0EioKDXBhY2tlZF9kb3VibGUYViADKAFCBaoBAhgBUgxwYWNrZWREb3VibGUSJgoLcGFja2VkX2Jvb2wYVyADKAhCBaoBAhgBUgpwYWNrZWRCb29sEngKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAFSEHBhY2tlZE5lc3RlZEVudW0SLAoOdW5wYWNrZWRfaW50MzIYWSADKAVCBaoBAhgCUg11bnBhY2tlZEludDMyEiwKDnVucGFja2VkX2ludDY0GFogAygDQgWqAQIYAlINdW5wYWNrZWRJbnQ2NBIuCg91bnBhY2tlZF91aW50MzIYWyADKA1CBaoBAhgCUg51bnBhY2tlZFVpbnQzMhIuCg91bnBhY2tlZF91aW50NjQYXCADKARCBaoBAhgCUg51bnBhY2tlZFVpbnQ2NBIuCg91bnBhY2tlZF9zaW50MzIYXSADKBFCBaoBAhgCUg51bnBhY2tlZFNpbnQzMhIuCg91bnBhY2tlZF9zaW50NjQYXiADKBJCBaoBAhgCUg51bnBhY2tlZFNpbnQ2NBIwChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDMyEjAKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCBaoBAhgCUg91bnBhY2tlZEZpeGVkNjQSMgoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CBaoBAhgCUhB1bnBhY2tlZFNmaXhlZDMyEjIKEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQ2NBIsCg51bnBhY2tlZF9mbG9hdBhjIAMoAkIFqgECGAJSDXVucGFja2VkRmxvYXQSLgoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgWqAQIYAlIOdW5wYWNrZWREb3VibGUSKgoNdW5wYWNrZWRfYm9vbBhlIAMoCEIFqgECGAJSDHVucGFja2VkQm9vbBJ8ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAJSEnVucGFja2VkTmVzdGVkRW51bRJzCg9tYXBfaW50MzJfaW50MzIYOCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJzCg9tYXBfaW50NjRfaW50NjQYOSADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJ5ChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ5ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ5ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJ5ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ/ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ/ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKFAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShQEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EnMKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EnYKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEm0KDW1hcF9ib29sX2Jvb2wYRCADKAsySS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnkKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEnYKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEo8BChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USkgEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKGAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEokBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJSLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEoEBChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkTWVzc2FnZUIFqgECKAFIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJkCgpvbmVvZl9lbnVtGHcgASgOMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJtCg1ncm91cGxpa2V0eXBlGMkBIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuR3JvdXBMaWtlVHlwZVINZ3JvdXBsaWtldHlwZRJwCg9kZWxpbWl0ZWRfZmllbGQYygEgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5Hcm91cExpa2VUeXBlUg5kZWxpbWl0ZWRGaWVsZBqAAQoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhEmEKC2NvcmVjdXJzaXZlGAIgASgLMjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyM0IFqgECKAFSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGpEBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSXAoFdmFsdWUYAiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqGAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJQCgV2YWx1ZRgCIAEoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uMjAyM1IFdmFsdWU6AjgBGosBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSWQoFdmFsdWUYAiABKA4yQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZEVudW1SBXZhbHVlOgI4ARqAAQoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJNCgV2YWx1ZRgCIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1IFdmFsdWU6AjgBGlUKDUdyb3VwTGlrZVR5cGUSIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9mX2ZpZWxkIikKGUZvcmVpZ25NZXNzYWdlRWRpdGlvbjIwMjMSDAoBYxgBIAEoBVIBYyIdCg1Hcm91cExpa2VUeXBlEgwKAWMYASABKAVSAWMqSwoWRm9yZWlnbkVudW1FZGl0aW9uMjAyMxIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAjphCg9leHRlbnNpb25faW50MzISOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHggASgFUg5leHRlbnNpb25JbnQzMjqOAQoNZ3JvdXBsaWtldHlwZRI4LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMYeSABKAsyLi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkdyb3VwTGlrZVR5cGVSDWdyb3VwbGlrZXR5cGU6jQEKDWRlbGltaXRlZF9leHQSOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHogASgLMi4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Hcm91cExpa2VUeXBlUgxkZWxpbWl0ZWRFeHRCQQotY29tLmdvb2dsZS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb24yMDIzUAGiAghFZGl0aW9uc5IDAigCSsBJCgcSBQcA2AEBCpQCCgEMEgMHABEyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAyNCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJT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dG9idWZfdW5pdHRlc3RfaW1wb3J0GjFjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wdWJsaWNfcHJvdG8zLnByb3RvIh0KDUltcG9ydE1lc3NhZ2USDAoBZBgBIAEoBVIBZCpZCgpJbXBvcnRFbnVtEhsKF0lNUE9SVF9FTlVNX1VOU1BFQ0lGSUVEEAASDgoKSU1QT1JUX0ZPTxAHEg4KCklNUE9SVF9CQVIQCBIOCgpJTVBPUlRfQkFaEAlCHaoCGkdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zSsgGCgYSBA0AHwEK5wMKAQwSAw0AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoy0AEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdoaWNoIGlzIGltcG9ydGVkIGJ5IHVuaXR0ZXN0X3Byb3RvMy5wcm90byB0byB0ZXN0IGltcG9ydGluZy4KCggKAQISAw8AIQoICgEIEgMRADcKCQoCCCUSAxEANwofCgIDABIDFABCGhQgVGVzdCBwdWJsaWMgaW1wb3J0CgoJCgIKABIDFAcNCgoKAgQAEgQWABgBCgoKAwQAARIDFggVCgsKBAQAAgASAxcCDgoMCgUEAAIABRIDFwIHCgwKBQQAAgABEgMXCAkKDAoFBAACAAMSAxcMDQoKCgIFABIEGgAfAQoKCgMFAAESAxoFDwoLCgQFAAIAEgMbAh4KDAoFBQACAAESAxsCGQoMCgUFAAIAAhIDGxwdCgsKBAUAAgESAxwCEQoMCgUFAAIBARIDHAIMCgwKBQUAAgECEgMcDxAKCwoEBQACAhIDHQIRCgwKBQUAAgIBEgMdAgwKDAoFBQACAgISAx0PEAoLCgQFAAIDEgMeAhEKDAoFBQACAwESAx4CDAoMCgUFAAIDAhIDHg8QUABiBnByb3RvMwqisQEKI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfcHJvdG8zLnByb3RvEhJwcm90b2J1Zl91bml0dGVzdDMaKmNzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0X3Byb3RvMy5wcm90byKrFgoMVGVzdEFsbFR5cGVzEiEKDHNpbmdsZV9pbnQzMhgBIAEoBVILc2luZ2xlSW50MzISIQoMc2luZ2xlX2ludDY0GAIgASgDUgtzaW5nbGVJbnQ2NBIjCg1zaW5nbGVfdWludDMyGAMgASgNUgxzaW5nbGVVaW50MzISIwoNc2luZ2xlX3VpbnQ2NBgEIAEoBFIMc2luZ2xlVWludDY0EiMKDXNpbmdsZV9zaW50MzIYBSABKBFSDHNpbmdsZVNpbnQzMhIjCg1zaW5nbGVfc2ludDY0GAYgASgSUgxzaW5nbGVTaW50NjQSJQoOc2luZ2xlX2ZpeGVkMzIYByABKAdSDXNpbmdsZUZpeGVkMzISJQoOc2luZ2xlX2ZpeGVkNjQYCCABKAZSDXNpbmdsZUZpeGVkNjQSJwoPc2luZ2xlX3NmaXhlZDMyGAkgASgPUg5zaW5nbGVTZml4ZWQzMhInCg9zaW5nbGVfc2ZpeGVkNjQYCiABKBBSDnNpbmdsZVNmaXhlZDY0EiEKDHNpbmdsZV9mbG9hdBgLIAEoAlILc2luZ2xlRmxvYXQSIwoNc2luZ2xlX2RvdWJsZRgMIAEoAVIMc2luZ2xlRG91YmxlEh8KC3NpbmdsZV9ib29sGA0gASgIUgpzaW5nbGVCb29sEiMKDXNpbmdsZV9zdHJpbmcYDiABKAlSDHNpbmdsZVN0cmluZxIhCgxzaW5nbGVfYnl0ZXMYDyABKAxSC3NpbmdsZUJ5dGVzEmIKFXNpbmdsZV9uZXN0ZWRfbWVzc2FnZRgSIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVITc2luZ2xlTmVzdGVkTWVzc2FnZRJYChZzaW5nbGVfZm9yZWlnbl9tZXNzYWdlGBMgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUhRzaW5nbGVGb3JlaWduTWVzc2FnZRJbChVzaW5nbGVfaW1wb3J0X21lc3NhZ2UYFCABKAsyJy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuSW1wb3J0TWVzc2FnZVITc2luZ2xlSW1wb3J0TWVzc2FnZRJZChJzaW5nbGVfbmVzdGVkX2VudW0YFSABKA4yKy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEHNpbmdsZU5lc3RlZEVudW0STwoTc2luZ2xlX2ZvcmVpZ25fZW51bRgWIAEoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bVIRc2luZ2xlRm9yZWlnbkVudW0SUgoSc2luZ2xlX2ltcG9ydF9lbnVtGBcgASgOMiQucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydEVudW1SEHNpbmdsZUltcG9ydEVudW0Sbgocc2luZ2xlX3B1YmxpY19pbXBvcnRfbWVzc2FnZRgaIAEoCzItLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5QdWJsaWNJbXBvcnRNZXNzYWdlUhlzaW5nbGVQdWJsaWNJbXBvcnRNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEmYKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USXAoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEl8KF3JlcGVhdGVkX2ltcG9ydF9tZXNzYWdlGDIgAygLMicucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydE1lc3NhZ2VSFXJlcGVhdGVkSW1wb3J0TWVzc2FnZRJdChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjIrLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtElMKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bVITcmVwZWF0ZWRGb3JlaWduRW51bRJWChRyZXBlYXRlZF9pbXBvcnRfZW51bRg1IAMoDjIkLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRFbnVtUhJyZXBlYXRlZEltcG9ydEVudW0ScgoecmVwZWF0ZWRfcHVibGljX2ltcG9ydF9tZXNzYWdlGDYgAygLMi0ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LlB1YmxpY0ltcG9ydE1lc3NhZ2VSG3JlcGVhdGVkUHVibGljSW1wb3J0TWVzc2FnZRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISYgoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzGh8KDU5lc3RlZE1lc3NhZ2USDgoCYmIYASABKAVSAmJiIlYKCk5lc3RlZEVudW0SGwoXTkVTVEVEX0VOVU1fVU5TUEVDSUZJRUQQABIHCgNGT08QARIHCgNCQVIQAhIHCgNCQVoQAxIQCgNORUcQ////////////AUINCgtvbmVvZl9maWVsZCLdAQoSTmVzdGVkVGVzdEFsbFR5cGVzEjwKBWNoaWxkGAEgASgLMiYucHJvdG9idWZfdW5pdHRlc3QzLk5lc3RlZFRlc3RBbGxUeXBlc1IFY2hpbGQSOgoHcGF5bG9hZBgCIAEoCzIgLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXNSB3BheWxvYWQSTQoOcmVwZWF0ZWRfY2hpbGQYAyADKAsyJi5wcm90b2J1Zl91bml0dGVzdDMuTmVzdGVkVGVzdEFsbFR5cGVzUg1yZXBlYXRlZENoaWxkIkUKFFRlc3REZXByZWNhdGVkRmllbGRzEi0KEGRlcHJlY2F0ZWRfaW50MzIYASABKAVCAhgBUg9kZXByZWNhdGVkSW50MzIiHgoORm9yZWlnbk1lc3NhZ2USDAoBYxgBIAEoBVIBYyIwChJUZXN0UmVzZXJ2ZWRGaWVsZHNKBAgCEANKBAgPEBBKBAgJEAxSA2JhclIDYmF6ImoKEVRlc3RGb3JlaWduTmVzdGVkElUKDmZvcmVpZ25fbmVzdGVkGAEgASgLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUg1mb3JlaWduTmVzdGVkIjsKGFRlc3RSZWFsbHlMYXJnZVRhZ051bWJlchIMCgFhGAEgASgFUgFhEhEKAmJiGP///38gASgFUgJiYiJcChRUZXN0UmVjdXJzaXZlTWVzc2FnZRI2CgFhGAEgASgLMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RSZWN1cnNpdmVNZXNzYWdlUgFhEgwKAWkYAiABKAVSAWkiUAoUVGVzdE11dHVhbFJlY3Vyc2lvbkESOAoCYmIYASABKAsyKC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE11dHVhbFJlY3Vyc2lvbkJSAmJiInUKFFRlc3RNdXR1YWxSZWN1cnNpb25CEjYKAWEYASABKAsyKC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE11dHVhbFJlY3Vyc2lvbkFSAWESJQoOb3B0aW9uYWxfaW50MzIYAiABKAVSDW9wdGlvbmFsSW50MzIiVAoSVGVzdEVudW1BbGxvd0FsaWFzEj4KBXZhbHVlGAEgASgOMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RFbnVtV2l0aER1cFZhbHVlUgV2YWx1ZSL7AwoXVGVzdENhbWVsQ2FzZUZpZWxkTmFtZXMSJgoOUHJpbWl0aXZlRmllbGQYASABKAVSDlByaW1pdGl2ZUZpZWxkEiAKC1N0cmluZ0ZpZWxkGAIgASgJUgtTdHJpbmdGaWVsZBI9CglFbnVtRmllbGQYAyABKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SCUVudW1GaWVsZBJGCgxNZXNzYWdlRmllbGQYBCABKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSDE1lc3NhZ2VGaWVsZBI2ChZSZXBlYXRlZFByaW1pdGl2ZUZpZWxkGAcgAygFUhZSZXBlYXRlZFByaW1pdGl2ZUZpZWxkEjAKE1JlcGVhdGVkU3RyaW5nRmllbGQYCCADKAlSE1JlcGVhdGVkU3RyaW5nRmllbGQSTQoRUmVwZWF0ZWRFbnVtRmllbGQYCSADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SEVJlcGVhdGVkRW51bUZpZWxkElYKFFJlcGVhdGVkTWVzc2FnZUZpZWxkGAogAygLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUhRSZXBlYXRlZE1lc3NhZ2VGaWVsZCL/AQoSVGVzdEZpZWxkT3JkZXJpbmdzEhsKCW15X3N0cmluZxgLIAEoCVIIbXlTdHJpbmcSFQoGbXlfaW50GAEgASgDUgVteUludBIZCghteV9mbG9hdBhlIAEoAlIHbXlGbG9hdBJpChVzaW5nbGVfbmVzdGVkX21lc3NhZ2UYyAEgASgLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RGaWVsZE9yZGVyaW5ncy5OZXN0ZWRNZXNzYWdlUhNzaW5nbGVOZXN0ZWRNZXNzYWdlGi8KDU5lc3RlZE1lc3NhZ2USDgoCb28YAiABKANSAm9vEg4KAmJiGAEgASgFUgJiYiJYChFTcGFyc2VFbnVtTWVzc2FnZRJDCgtzcGFyc2VfZW51bRgBIAEoDjIiLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0U3BhcnNlRW51bVIKc3BhcnNlRW51bSIfCglPbmVTdHJpbmcSEgoEZGF0YRgBIAEoCVIEZGF0YSIgCgpNb3JlU3RyaW5nEhIKBGRhdGEYASADKAlSBGRhdGEiHgoIT25lQnl0ZXMSEgoEZGF0YRgBIAEoDFIEZGF0YSIfCglNb3JlQnl0ZXMSEgoEZGF0YRgBIAEoDFIEZGF0YSIiCgxJbnQzMk1lc3NhZ2USEgoEZGF0YRgBIAEoBVIEZGF0YSIjCg1VaW50MzJNZXNzYWdlEhIKBGRhdGEYASABKA1SBGRhdGEiIgoMSW50NjRNZXNzYWdlEhIKBGRhdGEYASABKANSBGRhdGEiIwoNVWludDY0TWVzc2FnZRISCgRkYXRhGAEgASgEUgRkYXRhIiEKC0Jvb2xNZXNzYWdlEhIKBGRhdGEYASABKAhSBGRhdGEikwEKCVRlc3RPbmVvZhIZCgdmb29faW50GAEgASgFSABSBmZvb0ludBIfCgpmb29fc3RyaW5nGAIgASgJSABSCWZvb1N0cmluZxJDCgtmb29fbWVzc2FnZRgDIAEoCzIgLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXNIAFIKZm9vTWVzc2FnZUIFCgNmb28i7gQKD1Rlc3RQYWNrZWRUeXBlcxIlCgxwYWNrZWRfaW50MzIYWiADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYWyADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGFwgAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYXSADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhheIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GF8gAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGGAgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhhIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGGIgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GGMgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GGQgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhlIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhmIAMoCEICEAFSCnBhY2tlZEJvb2wSRAoLcGFja2VkX2VudW0YZyADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1CAhABUgpwYWNrZWRFbnVtIqgFChFUZXN0VW5wYWNrZWRUeXBlcxIpCg51bnBhY2tlZF9pbnQzMhhaIAMoBUICEABSDXVucGFja2VkSW50MzISKQoOdW5wYWNrZWRfaW50NjQYWyADKANCAhAAUg11bnBhY2tlZEludDY0EisKD3VucGFja2VkX3VpbnQzMhhcIAMoDUICEABSDnVucGFja2VkVWludDMyEisKD3VucGFja2VkX3VpbnQ2NBhdIAMoBEICEABSDnVucGFja2VkVWludDY0EisKD3VucGFja2VkX3NpbnQzMhheIAMoEUICEABSDnVucGFja2VkU2ludDMyEisKD3VucGFja2VkX3NpbnQ2NBhfIAMoEkICEABSDnVucGFja2VkU2ludDY0Ei0KEHVucGFja2VkX2ZpeGVkMzIYYCADKAdCAhAAUg91bnBhY2tlZEZpeGVkMzISLQoQdW5wYWNrZWRfZml4ZWQ2NBhhIAMoBkICEABSD3VucGFja2VkRml4ZWQ2NBIvChF1bnBhY2tlZF9zZml4ZWQzMhhiIAMoD0ICEABSEHVucGFja2VkU2ZpeGVkMzISLwoRdW5wYWNrZWRfc2ZpeGVkNjQYYyADKBBCAhAAUhB1bnBhY2tlZFNmaXhlZDY0EikKDnVucGFja2VkX2Zsb2F0GGQgAygCQgIQAFINdW5wYWNrZWRGbG9hdBIrCg91bnBhY2tlZF9kb3VibGUYZSADKAFCAhAAUg51bnBhY2tlZERvdWJsZRInCg11bnBhY2tlZF9ib29sGGYgAygIQgIQAFIMdW5wYWNrZWRCb29sEkgKDXVucGFja2VkX2VudW0YZyADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1CAhAAUgx1bnBhY2tlZEVudW0inwIKI1Rlc3RSZXBlYXRlZFNjYWxhckRpZmZlcmVudFRhZ1NpemVzEikKEHJlcGVhdGVkX2ZpeGVkMzIYDCADKAdSD3JlcGVhdGVkRml4ZWQzMhIlCg5yZXBlYXRlZF9pbnQzMhgNIAMoBVINcmVwZWF0ZWRJbnQzMhIqChByZXBlYXRlZF9maXhlZDY0GP4PIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EiYKDnJlcGVhdGVkX2ludDY0GP8PIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg5yZXBlYXRlZF9mbG9hdBj+/w8gAygCUg1yZXBlYXRlZEZsb2F0EikKD3JlcGVhdGVkX3VpbnQ2NBj//w8gAygEUg5yZXBlYXRlZFVpbnQ2NCIrChtUZXN0Q29tbWVudEluamVjdGlvbk1lc3NhZ2USDAoBYRgBIAEoCVIBYSIMCgpGb29SZXF1ZXN0Ig0KC0Zvb1Jlc3BvbnNlIhIKEEZvb0NsaWVudE1lc3NhZ2UiEgoQRm9vU2VydmVyTWVzc2FnZSIMCgpCYXJSZXF1ZXN0Ig0KC0JhclJlc3BvbnNlIhIKEFRlc3RFbXB0eU1lc3NhZ2UiggEKDkNvbW1lbnRNZXNzYWdlEhIKBHRleHQYASABKAlSBHRleHQaNwoUTmVzdGVkQ29tbWVudE1lc3NhZ2USHwoLbmVzdGVkX3RleHQYASABKAlSCm5lc3RlZFRleHQiIwoRTmVzdGVkQ29tbWVudEVudW0SDgoKWkVST19WQUxVRRAAKlkKC0ZvcmVpZ25FbnVtEhcKE0ZPUkVJR05fVU5TUEVDSUZJRUQQABIPCgtGT1JFSUdOX0ZPTxAEEg8KC0ZPUkVJR05fQkFSEAUSDwoLRk9SRUlHTl9CQVoQBip1ChRUZXN0RW51bVdpdGhEdXBWYWx1ZRIoCiRURVNUX0VOVU1fV0lUSF9EVVBfVkFMVUVfVU5TUEVDSUZJRUQQABIICgRGT08xEAESCAoEQkFSMRACEgcKA0JBWhADEggKBEZPTzIQARIICgRCQVIyEAIaAhABKp0BCg5UZXN0U3BhcnNlRW51bRIgChxURVNUX1NQQVJTRV9FTlVNX1VOU1BFQ0lGSUVEEAASDAoIU1BBUlNFX0EQexIOCghTUEFSU0VfQhCm5wMSDwoIU1BBUlNFX0MQsrGABhIVCghTUEFSU0VfRBDx//////////8BEhUKCFNQQVJTRV9FELTe/P///////wESDAoIU1BBUlNFX0cQAiodCgtDb21tZW50RW51bRIOCgpaRVJPX1ZBTFVFEAAynQEKC1Rlc3RTZXJ2aWNlEkYKA0ZvbxIeLnByb3RvYnVmX3VuaXR0ZXN0My5Gb29SZXF1ZXN0Gh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvb1Jlc3BvbnNlEkYKA0JhchIeLnByb3RvYnVmX3VuaXR0ZXN0My5CYXJSZXF1ZXN0Gh8ucHJvdG9idWZfdW5pdHRlc3QzLkJhclJlc3BvbnNlQixCDVVuaXR0ZXN0UHJvdG+qAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0r3dAoHEgUNAP8CAQrHAwoBDBIDDQASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91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DAoEBBgCAhIEmwICNQoNCgUEGAICBBIEmwICCgoNCgUEGAICBRIEmwILEQoNCgUEGAICARIEmwISHwoNCgUEGAICAxIEmwIiJAoNCgUEGAICCBIEmwIlNAoOCgYEGAICCAISBJsCJjMKDAoEBBgCAxIEnAICNQoNCgUEGAIDBBIEnAICCgoNCgUEGAIDBRIEnAILEQoNCgUEGAIDARIEnAISHwoNCgUEGAIDAxIEnAIiJAoNCgUEGAIDCBIEnAIlNAoOCgYEGAIDCAISBJwCJjMKDAoEBBgCBBIEnQICNQoNCgUEGAIEBBIEnQICCgoNCgUEGAIEBRIEnQILEQoNCgUEGAIEARIEnQISHwoNCgUEGAIEAxIEnQIiJAoNCgUEGAIECBIEnQIlNAoOCgYEGAIECAISBJ0CJjMKDAoEBBgCBRIEngICNQoNCgUEGAIFBBIEngICCgoNCgUEGAIFBRIEngILEQoNCgUEGAIFARIEngISHwoNCgUEGAIFAxIEngIiJAoNCgUEGAIFCBIEngIlNAoOCgYEGAIFCAISBJ4CJjMKDAoEBBgCBhIEnwICNwoNCgUEGAIGBBIEnwICCgoNCgUEGAIGBRIEnwILEgoNCgUEGAIGARIEnwITIQoNCgUEGAIGAxIEnwIkJgoNCgUEGAIGCBIEnwInNgoOCgYEGAIGCAISBJ8CKDUKDAoEBBgCBxIEoAICNwoNCgUEGAIHBBIEoAICCgoNCgUEGAIHBRIEoAILEgoNCgUEGAIHARIEoAITIQoNCgUEGAIHAxIEoAIkJgoNCgUEGAIHCBIEoAInNgoOCgYEGAIHCAISBKACKDUKDAoEBBgCCBIEoQICOQoNCgUEGAIIBBIEoQICCgoNCgUEGAIIBRIEoQILEwoNCgUEGAIIARIEoQIUIwoNCgUEGAIIAxIEoQImKAoNCgUEGAIICBIEoQIpOAoOCgYEGAIICAISBKECKjcKDAoEBBgCCRIEogICOQoNCgUEGAIJBBIEogICCgoNCgUEGAIJBRIEogILEwoNCgUEGAIJARIEogIUIwoNCgUEGAIJAxIEogImKAoNCgUEGAIJCBIEogIpOAoOCgYEGAIJCAISBKICKjcKDAoEBBgCChIEowICNAoNCgUEGAIKBBIEowICCgoNCgUEGAIKBRIEowILEAoNCgUEGAIKARIEowIRHQoNCgUEGAIKAxIEowIgIwoNCgUEGAIKCBIEowIkMwoOCgYEGAIKCAISBKMCJTIKDAoEBBgCCxIEpAICNgoNCgUEGAILBBIEpAICCgoNCgUEGAILBRIEpAILEQoNCgUEGAILARIEpAISHwoNCgUEGAILAxIEpAIiJQoNCgUEGAILCBIEpAImNQoOCgYEGAILCAISBKQCJzQKDAoEBBgCDBIEpQICMgoNCgUEGAIMBBIEpQICCgoNCgUEGAIMBRIEpQILDwoNCgUEGAIMARIEpQIQGwoNCgUEGAIMAxIEpQIeIQoNCgUEGAIMCBIEpQIiMQoOCgYEGAIMCAISBKUCIzAKDAoEBBgCDRIEpgICOQoNCgUEGAINBBIEpgICCgoNCgUEGAINBhIEpgILFgoNCgUEGAINARIEpgIXIgoNCgUEGAINAxIEpgIlKAoNCgUEGAINCBIEpgIpOAoOCgYEGAINCAISBKYCKjcKjQEKAgQZEgarAgC6AgEafyBBIG1lc3NhZ2Ugd2l0aCB0aGUgc2FtZSBmaWVsZHMgYXMgVGVzdFBhY2tlZFR5cGVzLCBidXQgd2l0aG91dCBwYWNraW5nLiBVc2VkCiB0byB0ZXN0IHBhY2tlZCA8LT4gdW5wYWNrZWQgd2lyZSBjb21wYXRpYmlsaXR5LgoKCwoDBBkBEgSrAggZCgwKBAQZAgASBKwCAjYKDQoFBBkCAAQSBKwCAgoKDQoFBBkCAAUSBKwCCxAKDQoFBBkCAAESBKwCER8KDQoFBBkCAAMSBKwCIiQKDQoFBBkCAAgSBKwCJTUKDgoGBBkCAAgCEgSsAiY0CgwKBAQZAgESBK0CAjYKDQoFBBkCAQQSBK0CAgoKDQoFBBkCAQUSBK0CCxAKDQoFBBkCAQESBK0CER8KDQoFBBkCAQMSBK0CIiQKDQoFBBkCAQgSBK0CJTUKDgoGBBkCAQgCEgStAiY0CgwKBAQZAgISBK4CAjgKDQoFBBkCAgQSBK4CAgoKDQoFBBkCAgUSBK4CCxEKDQoFBBkCAgESBK4CEiEKDQoFBBkCAgMSBK4CJCYKDQoFBBkCAggSBK4CJzcKDgoGBBkCAggCEgSuAig2CgwKBAQZAgMSBK8CAjgKDQoFBBkCAwQSBK8CAgoKDQoFBBkCAwUSBK8CCxEKDQoFBBkCAwESBK8CEiEKDQoFBBkCAwMSBK8CJCYKDQoFBBkCAwgSBK8CJzcKDgoGBBkCAwgCEgSvAig2CgwKBAQZAgQSBLACAjgKDQoFBBkCBAQSBLACAgoKDQoFBBkCBAUSBLACCxEKDQoFBBkCBAESBLACEiEKDQoFBBkCBAMSBLACJCYKDQoFBBkCBAgSBLACJzcKDgoGBBkCBAgCEgSwAig2CgwKBAQZAgUSBLECAjgKDQoFBBkCBQQSBLECAgoKDQoFBBkCBQUSBLECCxEKDQoFBBkCBQESBLECEiEKDQoFBBkCBQMSBLECJCYKDQoFBBkCBQgSBLECJzcKDgoGBBkCBQgCEgSxAig2CgwKBAQZAgYSBLICAjoKDQoFBBkCBgQSBLICAgoKDQoFBBkCBgUSBLICCxIKDQoFBBkCBgESBLICEyMKDQoFBBkCBgMSBLICJigKDQoFBBkCBggSBLICKTkKDgoGBBkCBggCEgSyAio4CgwKBAQZAgcSBLMCAjoKDQoFBBkCBwQSBLMCAgoKDQoFBBkCBwUSBLMCCxIKDQoFBBkCBwESBLMCEyMKDQoFBBkCBwMSBLMCJigKDQoFBBkCBwgSBLMCKTkKDgoGBBkCBwgCEgSzAio4CgwKBAQZAggSBLQCAjwKDQoFBBkCCAQSBLQCAgoKDQoFBBkCCAUSBLQCCxMKDQoFBBkCCAESBLQCFCUKDQoFBBkCCAMSBLQCKCoKDQoFBBkCCAgSBLQCKzsKDgoGBBkCCAgCEgS0Aiw6CgwKBAQZAgkSBLUCAjwKDQoFBBkCCQQSBLUCAgoKDQoFBBkCCQUSBLUCCxMKDQoFBBkCCQESBLUCFCUKDQoFBBkCCQMSBLUCKCoKDQoFBBkCCQgSBLUCKzsKDgoGBBkCCQgCEgS1Aiw6CgwKBAQZAgoSBLYCAjcKDQoFBBkCCgQSBLYCAgoKDQoFBBkCCgUSBLYCCxAKDQoFBBkCCgESBLYCER8KDQoFBBkCCgMSBLYCIiUKDQoFBBkCCggSBLYCJjYKDgoGBBkCCggCEgS2Aic1CgwKBAQZAgsSBLcCAjkKDQoFBBkCCwQSBLcCAgoKDQoFBBkCCwUSBLcCCxEKDQoFBBkCCwESBLcCEiEKDQoFBBkCCwMSBLcCJCcKDQoFBBkCCwgSBLcCKDgKDgoGBBkCCwgCEgS3Aik3CgwKBAQZAgwSBLgCAjUKDQoFBBkCDAQS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AhkaCi0KBAQjBAASBvICAvUCAxodIExlYWRpbmcgbmVzdGVkIGVudW0gY29tbWVudAoKDQoFBCMEAAESBPICBxgKJAoGBCMEAAIAEgT0AgQTGhQgWmVybyB2YWx1ZSBjb21tZW50CgoPCgcEIwQAAgABEgT0AgQOCg8KBwQjBAACAAISBPQCERIKPwoEBCMCABIE+AICEhoXIExlYWRpbmcgZmllbGQgY29tbWVudAoiGCBUcmFpbGluZyBmaWVsZCBjb21tZW50CgoNCgUEIwIABRIE+AICCAoNCgUEIwIAARIE+AIJDQoNCgUEIwIAAxIE+AIQEQokCgIFAxIG/AIA/wIBGhYgTGVhZGluZyBlbnVtIGNvbW1lbnQKCgsKAwUDARIE/AIFEAoiCgQFAwIAEgT+AgIRGhQgWmVybyB2YWx1ZSBjb21tZW50CgoNCgUFAwIAARIE/gICDAoNCgUFAwIAAhIE/gIPEGIGcHJvdG8zCqlOCidjc2hhcnAvcHJvdG9zL21hcF91bml0dGVzdF9wcm90bzMucHJvdG8SEnByb3RvYnVmX3VuaXR0ZXN0MxojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9wcm90bzMucHJvdG8imRYKB1Rlc3RNYXASVgoPbWFwX2ludDMyX2ludDMyGAEgAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyElYKD21hcF9pbnQ2NF9pbnQ2NBgCIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJcChFtYXBfdWludDMyX3VpbnQzMhgDIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISXAoRbWFwX3VpbnQ2NF91aW50NjQYBCADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0ElwKEW1hcF9zaW50MzJfc2ludDMyGAUgAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJcChFtYXBfc2ludDY0X3NpbnQ2NBgGIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSYgoTbWFwX2ZpeGVkMzJfZml4ZWQzMhgHIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEmIKE21hcF9maXhlZDY0X2ZpeGVkNjQYCCADKAsyMi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJoChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYCSADKAsyNC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISaAoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GAogAygLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0ElYKD21hcF9pbnQzMl9mbG9hdBgLIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJZChBtYXBfaW50MzJfZG91YmxlGAwgAygLMi8ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSUAoNbWFwX2Jvb2xfYm9vbBgNIAMoCzIsLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sElwKEW1hcF9zdHJpbmdfc3RyaW5nGA4gAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJWCg9tYXBfaW50MzJfYnl0ZXMYDyADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkJ5dGVzRW50cnlSDW1hcEludDMyQnl0ZXMSUwoObWFwX2ludDMyX2VudW0YECADKAsyLS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkVudW1FbnRyeVIMbWFwSW50MzJFbnVtEnIKGW1hcF9pbnQzMl9mb3JlaWduX21lc3NhZ2UYESADKAsyNy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnlSFm1hcEludDMyRm9yZWlnbk1lc3NhZ2UaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkJ5dGVzRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARpcChFNYXBJbnQzMkVudW1FbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoDjIbLnByb3RvYnVmX3VuaXR0ZXN0My5NYXBFbnVtUgV2YWx1ZToCOAEabQobTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjgKBXZhbHVlGAIgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEiSwoRVGVzdE1hcFN1Ym1lc3NhZ2USNgoIdGVzdF9tYXAYASABKAsyGy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcFIHdGVzdE1hcCLbAQoOVGVzdE1lc3NhZ2VNYXASYwoRbWFwX2ludDMyX21lc3NhZ2UYASADKAsyNy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1lc3NhZ2VNYXAuTWFwSW50MzJNZXNzYWdlRW50cnlSD21hcEludDMyTWVzc2FnZRpkChRNYXBJbnQzMk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRI2CgV2YWx1ZRgCIAEoCzIgLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXNSBXZhbHVlOgI4ASKJAgoPVGVzdFNhbWVUeXBlTWFwEkEKBG1hcDEYASADKAsyLS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdFNhbWVUeXBlTWFwLk1hcDFFbnRyeVIEbWFwMRJBCgRtYXAyGAIgAygLMi0ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RTYW1lVHlwZU1hcC5NYXAyRW50cnlSBG1hcDIaNwoJTWFwMUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaNwoJTWFwMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEirRQKDFRlc3RBcmVuYU1hcBJbCg9tYXBfaW50MzJfaW50MzIYASADKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJbCg9tYXBfaW50NjRfaW50NjQYAiADKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJhChFtYXBfdWludDMyX3VpbnQzMhgDIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJhChFtYXBfdWludDY0X3VpbnQ2NBgEIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJhChFtYXBfc2ludDMyX3NpbnQzMhgFIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJhChFtYXBfc2ludDY0X3NpbnQ2NBgGIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJnChNtYXBfZml4ZWQzMl9maXhlZDMyGAcgAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJnChNtYXBfZml4ZWQ2NF9maXhlZDY0GAggAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJtChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYCSADKAsyOS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJtChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYCiADKAsyOS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJbCg9tYXBfaW50MzJfZmxvYXQYCyADKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJeChBtYXBfaW50MzJfZG91YmxlGAwgAygLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkRvdWJsZUVudHJ5Ug5tYXBJbnQzMkRvdWJsZRJVCg1tYXBfYm9vbF9ib29sGA0gAygLMjEucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJYCg5tYXBfaW50MzJfZW51bRgOIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJFbnVtRW50cnlSDG1hcEludDMyRW51bRJ3ChltYXBfaW50MzJfZm9yZWlnbl9tZXNzYWdlGA8gAygLMjwucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnlSFm1hcEludDMyRm9yZWlnbk1lc3NhZ2UaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaXAoRTWFwSW50MzJFbnVtRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKA4yGy5wcm90b2J1Zl91bml0dGVzdDMuTWFwRW51bVIFdmFsdWU6AjgBGm0KG01hcEludDMyRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRI4CgV2YWx1ZRgCIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIFdmFsdWU6AjgBIvgBCh9NZXNzYWdlQ29udGFpbmluZ0VudW1DYWxsZWRUeXBlElEKBHR5cGUYASADKAsyPS5wcm90b2J1Zl91bml0dGVzdDMuTWVzc2FnZUNvbnRhaW5pbmdFbnVtQ2FsbGVkVHlwZS5UeXBlRW50cnlSBHR5cGUabAoJVHlwZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EkkKBXZhbHVlGAIgASgLMjMucHJvdG9idWZfdW5pdHRlc3QzLk1lc3NhZ2VDb250YWluaW5nRW51bUNhbGxlZFR5cGVSBXZhbHVlOgI4ASIUCgRUeXBlEgwKCFRZUEVfRk9PEAAisQEKH01lc3NhZ2VDb250YWluaW5nTWFwQ2FsbGVkRW50cnkSVAoFZW50cnkYASADKAsyPi5wcm90b2J1Zl91bml0dGVzdDMuTWVzc2FnZUNvbnRhaW5pbmdNYXBDYWxsZWRFbnRyeS5FbnRyeUVudHJ5UgVlbnRyeRo4CgpFbnRyeUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEqPwoHTWFwRW51bRIQCgxNQVBfRU5VTV9GT08QABIQCgxNQVBfRU5VTV9CQVIQARIQCgxNQVBfRU5VTV9CQVoQAkIdqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NKqhoKBhIEDQBcAQrjBAoBDBIDDQASGswCIFRoaXMgZmlsZSBpcyBtb3N0bHkgZXF1aXZhbGVudCB0byBtYXBfdW5pdHRlc3QucHJvdG8sIGJ1dCBpbXBvcnRzCiB1bml0dGVzdF9wcm90bzMucHJvdG8gaW5zdGVhZCBvZiB1bml0dGVzdC5wcm90bywgc28gdGhhdCBpdCBvbmx5CiB1c2VzIHByb3RvMyBtZXNzYWdlcy4g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BSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SABSC3N0cnVjdFZhbHVlEjsKCmxpc3RfdmFsdWUYBiABKAsyGi5nb29nbGUucHJvdG9idWYuTGlzdFZhbHVlSABSCWxpc3RWYWx1ZUIGCgRraW5kIjsKCUxpc3RWYWx1ZRIuCgZ2YWx1ZXMYASADKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSBnZhbHVlcyobCglOdWxsVmFsdWUSDgoKTlVMTF9WQUxVRRAAQn8KE2NvbS5nb29nbGUucHJvdG9idWZCC1N0cnVjdFByb3RvUAFaL2dvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3N0cnVjdHBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSpkdCgYSBB4AXgEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM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YCBpcyBhIHNpbmdsZXRvbiBlbnVtZXJhdGlvbiB0byByZXByZXNlbnQgdGhlIG51bGwgdmFsdWUgZm9yIHRoZQogYFZhbHVlYCB0eXBlIHVuaW9uLgoKIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIGZvciBgTnVsbFZhbHVlYCBpcyBKU09OIGBudWxsYC4KCgoKAwUAARIDUwUOChoKBAUAAgASA1UCERoNIE51bGwgdmFsdWUuCgoMCgUFAAIAARIDVQIMCgwKBQUAAgACEgNVDxAKggEKAgQCEgRbAF4BGnYgYExpc3RWYWx1ZWAgaXMgYSB3cmFwcGVyIGFyb3VuZCBhIHJlcGVhdGVkIGZpZWxkIG9mIHZhbHVlcy4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYExpc3RWYWx1ZWAgaXMgSlNPTiBhcnJheS4KCgoKAwQCARIDWwgRCjoKBAQCAgASA10CHBotIFJlcGVhdGVkIGZpZWxkIG9mIGR5bmFtaWNhbGx5IHR5cGVkIHZhbHVlcy4KCgwKBQQCAgAEEgNdAgoKDAoFBAICAAYSA10LEAoMCgUEAgIAARIDXREXCgwKBQQCAgADEgNdGhtiBnByb3RvMwqXRwojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZXMucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90byInCghJc3N1ZTMwNxobCgpOZXN0ZWRPbmNlGg0KC05lc3RlZFR3aWNlIs0BChNOZWdhdGl2ZUVudW1NZXNzYWdlEjMKBXZhbHVlGAEgASgOMh0udW5pdHRlc3RfaXNzdWVzLk5lZ2F0aXZlRW51bVIFdmFsdWUSOQoGdmFsdWVzGAIgAygOMh0udW5pdHRlc3RfaXNzdWVzLk5lZ2F0aXZlRW51bUICEABSBnZhbHVlcxJGCg1wYWNrZWRfdmFsdWVzGAMgAygOMh0udW5pdHRlc3RfaXNzdWVzLk5lZ2F0aXZlRW51bUICEAFSDHBhY2tlZFZhbHVlcyIVCg9EZXByZWNhdGVkQ2hpbGQ6AhgBIosDChdEZXByZWNhdGVkRmllbGRzTWVzc2FnZRIqCg5QcmltaXRpdmVWYWx1ZRgBIAEoBUICGAFSDlByaW1pdGl2ZVZhbHVlEioKDlByaW1pdGl2ZUFycmF5GAIgAygFQgIYAVIOUHJpbWl0aXZlQXJyYXkSSAoMTWVzc2FnZVZhbHVlGAMgASgLMiAudW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRDaGlsZEICGAFSDE1lc3NhZ2VWYWx1ZRJICgxNZXNzYWdlQXJyYXkYBCADKAsyIC51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZENoaWxkQgIYAVIMTWVzc2FnZUFycmF5EkEKCUVudW1WYWx1ZRgFIAEoDjIfLnVuaXR0ZXN0X2lzc3Vlcy5EZXByZWNhdGVkRW51bUICGAFSCUVudW1WYWx1ZRJBCglFbnVtQXJyYXkYBiADKA4yHy51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZEVudW1CAhgBUglFbnVtQXJyYXkiHwoJSXRlbUZpZWxkEhIKBGl0ZW0YASABKAVSBGl0ZW0iVwoNUmVzZXJ2ZWROYW1lcxIUCgV0eXBlcxgBIAEoBVIFdHlwZXMSHgoKZGVzY3JpcHRvchgCIAEoBVIKZGVzY3JpcHRvchoQCg5Tb21lTmVzdGVkVHlwZSLfAQoVVGVzdEpzb25GaWVsZE9yZGVyaW5nEh8KC3BsYWluX2ludDMyGAQgASgFUgpwbGFpbkludDMyEh0KCW8xX3N0cmluZxgCIAEoCUgAUghvMVN0cmluZxIbCghvMV9pbnQzMhgFIAEoBUgAUgdvMUludDMyEiEKDHBsYWluX3N0cmluZxgBIAEoCVILcGxhaW5TdHJpbmcSGwoIbzJfaW50MzIYBiABKAVIAVIHbzJJbnQzMhIdCglvMl9zdHJpbmcYAyABKAlIAVIIbzJTdHJpbmdCBAoCbzFCBAoCbzIiUQoMVGVzdEpzb25OYW1lEhIKBG5hbWUYASABKAlSBG5hbWUSGQoLZGVzY3JpcHRpb24YAiABKAlSBGRlc2MSEgoEZ3VpZBgDIAEoCVIEZXhpZCKTAQoMT25lb2ZNZXJnaW5nEhQKBHRleHQYASABKAlIAFIEdGV4dBI+CgZuZXN0ZWQYAiABKAsyJC51bml0dGVzdF9pc3N1ZXMuT25lb2ZNZXJnaW5nLk5lc3RlZEgAUgZuZXN0ZWQaJAoGTmVzdGVkEgwKAXgYASABKAVSAXgSDAoBeRgCIAEoBVIBeUIHCgV2YWx1ZSKDAQoWTnVsbFZhbHVlT3V0c2lkZVN0cnVjdBIjCgxzdHJpbmdfdmFsdWUYASABKAlIAFILc3RyaW5nVmFsdWUSOwoKbnVsbF92YWx1ZRgCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIJbnVsbFZhbHVlQgcKBXZhbHVlIlAKE051bGxWYWx1ZU5vdEluT25lb2YSOQoKbnVsbF92YWx1ZRgCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVSCW51bGxWYWx1ZSJ9ChdNaXhlZFJlZ3VsYXJBbmRPcHRpb25hbBIjCg1yZWd1bGFyX2ZpZWxkGAEgASgJUgxyZWd1bGFyRmllbGQSKgoOb3B0aW9uYWxfZmllbGQYAiABKAlIAFINb3B0aW9uYWxGaWVsZIgBAUIRCg9fb3B0aW9uYWxfZmllbGQiQgoST25lb2ZXaXRoTm9uZUZpZWxkEg4KAXgYASABKAlIAFIBeBIUCgRub25lGAIgASgJSABSBG5vbmVCBgoEdGVzdCI7ChFPbmVvZldpdGhOb25lTmFtZRIOCgF4GAEgASgJSABSAXgSDgoBeRgCIAEoCUgAUgF5QgYKBG5vbmUiogMKGURpc2FtYmlndWF0ZUNvbW1vbk1lbWJlcnMSPgobZGlzYW1iaWd1YXRlX2NvbW1vbl9tZW1iZXJzGAEgASgFUhlkaXNhbWJpZ3VhdGVDb21tb25NZW1iZXJzEhQKBXR5cGVzGAIgASgFUgV0eXBlcxIeCgpkZXNjcmlwdG9yGAMgASgFUgpkZXNjcmlwdG9yEhYKBmVxdWFscxgEIAEoBVIGZXF1YWxzEhsKCXRvX3N0cmluZxgFIAEoBVIIdG9TdHJpbmcSIgoNZ2V0X2hhc2hfY29kZRgGIAEoBVILZ2V0SGFzaENvZGUSGQoId3JpdGVfdG8YByABKAVSB3dyaXRlVG8SFAoFY2xvbmUYCCABKAVSBWNsb25lEiUKDmNhbGN1bGF0ZV9zaXplGAkgASgFUg1jYWxjdWxhdGVTaXplEh0KCm1lcmdlX2Zyb20YCiABKAVSCW1lcmdlRnJvbRInCg9vbl9jb25zdHJ1Y3Rpb24YCyABKAVSDm9uQ29uc3RydWN0aW9uEhYKBnBhcnNlchgMIAEoBVIGcGFyc2VyIj0KEUlzc3VlMTE5ODdNZXNzYWdlEgwKAWEYASABKAVSAWISDAoBYhgCIAEoBVIBYRIMCgFjGAMgASgFUgFkKlUKDE5lZ2F0aXZlRW51bRIWChJORUdBVElWRV9FTlVNX1pFUk8QABIWCglGaXZlQmVsb3cQ+///////////ARIVCghNaW51c09uZRD///////////8BKjYKDkRlcHJlY2F0ZWRFbnVtEhcKD0RFUFJFQ0FURURfWkVSTxAAGgIIARIHCgNvbmUQARoCGAFCHaoCGlVuaXRUZXN0Lklzc3Vlcy5UZXN0UHJvdG9zSuszCgcSBQcAygEBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCo4CCgECEgMOABgaZiBJc3N1ZTogTm9uLSJHb29nbGUuUHJvdG9idWZmZXJzIiBuYW1lc3BhY2Ugd2lsbCBlbnN1cmUgdGhhdCBwcm90b2J1ZmZlcgogbGlicmFyeSB0eXBlcyBhcmUgcXVhbGlmaWVkCjKbASBUaGVzZSBwcm90byBkZXNjcmlwdG9ycyBoYXZlIGF0IG9uZSB0aW1lIGJlZW4gcmVwb3J0ZWQgYXMgYW4gaXNzdWUgb3IgZGVmZWN0LgogVGhleSBhcmUga2VwdCBoZXJlIHRvIHJlcGxpY2F0ZSB0aGUgaXNzdWUsIGFuZCBjb250aW51ZSB0byB2ZXJpZnkgdGhlIGZpeC4KCgkKAgMAEgMQACYKCAoBCBIDEgA3CgkKAgglEgMSADcKdgoCBAASBBYAGgEaaiBJc3N1ZSAzMDc6IHdoZW4gZ2VuZXJhdGluZyBkb3VibHktbmVzdGVk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ZXBlbmRlbmN5GAsgAygFUg53ZWFrRGVwZW5kZW5jeRJDCgxtZXNzYWdlX3R5cGUYBCADKAsyIC5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvUgttZXNzYWdlVHlwZRJBCgllbnVtX3R5cGUYBSADKAsyJC5nb29nbGUucHJvdG9idWYuRW51bURlc2NyaXB0b3JQcm90b1IIZW51bVR5cGUSQQoHc2VydmljZRgGIAMoCzInLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlRGVzY3JpcHRvclByb3RvUgdzZXJ2aWNlEkMKCWV4dGVuc2lvbhgHIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IJZXh0ZW5zaW9uEjYKB29wdGlvbnMYCCABKAsyHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnNSB29wdGlvbnMSSQoQc291cmNlX2NvZGVfaW5mbxgJIAEoCzIfLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb2RlSW5mb1IOc291cmNlQ29kZUluZm8SFgoGc3ludGF4GAwgASgJUgZzeW50YXgSMgoHZWRpdGlvbhgOIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUgdlZGl0aW9uIrkGCg9EZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI7CgVmaWVsZBgCIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IFZmllbGQSQwoJZXh0ZW5zaW9uGAYgAygLMiUuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvUglleHRlbnNpb24SQQoLbmVzdGVkX3R5cGUYAyADKAsyIC5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvUgpuZXN0ZWRUeXBlEkEKCWVudW1fdHlwZRgEIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvUghlbnVtVHlwZRJYCg9leHRlbnNpb25fcmFuZ2UYBSADKAsyLy5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvLkV4dGVuc2lvblJhbmdlUg5leHRlbnNpb25SYW5nZRJECgpvbmVvZl9kZWNsGAggAygLMiUuZ29vZ2xlLnByb3RvYnVmLk9uZW9mRGVzY3JpcHRvclByb3RvUglvbmVvZkRlY2wSOQoHb3B0aW9ucxgHIAEoCzIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9uc1IHb3B0aW9ucxJVCg5yZXNlcnZlZF9yYW5nZRgJIAMoCzIuLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG8uUmVzZXJ2ZWRSYW5nZVINcmVzZXJ2ZWRSYW5nZRIjCg1yZXNlcnZlZF9uYW1lGAogAygJUgxyZXNlcnZlZE5hbWUaegoORXh0ZW5zaW9uUmFuZ2USFAoFc3RhcnQYASABKAVSBXN0YXJ0EhAKA2VuZBgCIAEoBVIDZW5kEkAKB29wdGlvbnMYAyABKAsyJi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zUgdvcHRpb25zGjcKDVJlc2VydmVkUmFuZ2USFAoFc3RhcnQYASABKAVSBXN0YXJ0EhAKA2VuZBgCIAEoBVIDZW5kIswEChVFeHRlbnNpb25SYW5nZU9wdGlvbnMSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24SWQoLZGVjbGFyYXRpb24YAiADKAsyMi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zLkRlY2xhcmF0aW9uQgOIAQJSC2RlY2xhcmF0aW9uEjcKCGZlYXR1cmVzGDIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEm0KDHZlcmlmaWNhdGlvbhgDIAEoDjI4Lmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnMuVmVyaWZpY2F0aW9uU3RhdGU6ClVOVkVSSUZJRURCA4gBAlIMdmVyaWZpY2F0aW9uGpQBCgtEZWNsYXJhdGlvbhIWCgZudW1iZXIYASABKAVSBm51bWJlchIbCglmdWxsX25hbWUYAiABKAlSCGZ1bGxOYW1lEhIKBHR5cGUYAyABKAlSBHR5cGUSGgoIcmVzZXJ2ZWQYBSABKAhSCHJlc2VydmVkEhoKCHJlcGVhdGVkGAYgASgIUghyZXBlYXRlZEoECAQQBSI0ChFWZXJpZmljYXRpb25TdGF0ZRIPCgtERUNMQVJBVElPThAAEg4KClVOVkVSSUZJRUQQASoJCOgHEICAgIACIsEGChRGaWVsZERlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgDIAEoBVIGbnVtYmVyEkEKBWxhYmVsGAQgASgOMisuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLkxhYmVsUgVsYWJlbBI+CgR0eXBlGAUgASgOMiouZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLlR5cGVSBHR5cGUSGwoJdHlwZV9uYW1lGAYgASgJUgh0eXBlTmFtZRIaCghleHRlbmRlZRgCIAEoCVIIZXh0ZW5kZWUSIwoNZGVmYXVsdF92YWx1ZRgHIAEoCVIMZGVmYXVsdFZhbHVlEh8KC29uZW9mX2luZGV4GAkgASgFUgpvbmVvZkluZGV4EhsKCWpzb25fbmFtZRgKIAEoCVIIanNvbk5hbWUSNwoHb3B0aW9ucxgIIAEoCzIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnNSB29wdGlvbnMSJwoPcHJvdG8zX29wdGlvbmFsGBEgASgIUg5wcm90bzNPcHRpb25hbCK2AgoEVHlwZRIPCgtUWVBFX0RPVUJMRRABEg4KClRZUEVfRkxPQVQQAhIOCgpUWVBFX0lOVDY0EAMSDwoLVFlQRV9VSU5UNjQQBBIOCgpUWVBFX0lOVDMyEAUSEAoMVFlQRV9GSVhFRDY0EAYSEAoMVFlQRV9GSVhFRDMyEAcSDQoJVFlQRV9CT09MEAgSDwoLVFlQRV9TVFJJTkcQCRIOCgpUWVBFX0dST1VQEAoSEAoMVFlQRV9NRVNTQUdFEAsSDgoKVFlQRV9CWVRFUxAMEg8KC1RZUEVfVUlOVDMyEA0SDQoJVFlQRV9FTlVNEA4SEQoNVFlQRV9TRklYRUQzMhAPEhEKDVRZUEVfU0ZJWEVENjQQEBIPCgtUWVBFX1NJTlQzMhAREg8KC1RZUEVfU0lOVDY0EBIiQwoFTGFiZWwSEgoOTEFCRUxfT1BUSU9OQUwQARISCg5MQUJFTF9SRVBFQVRFRBADEhIKDkxBQkVMX1JFUVVJUkVEEAIiYwoUT25lb2ZEZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI3CgdvcHRpb25zGAIgASgLMh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9uc1IHb3B0aW9ucyLjAgoTRW51bURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEj8KBXZhbHVlGAIgAygLMikuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZURlc2NyaXB0b3JQcm90b1IFdmFsdWUSNgoHb3B0aW9ucxgDIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9uc1IHb3B0aW9ucxJdCg5yZXNlcnZlZF9yYW5nZRgEIAMoCzI2Lmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvLkVudW1SZXNlcnZlZFJhbmdlUg1yZXNlcnZlZFJhbmdlEiMKDXJlc2VydmVkX25hbWUYBSADKAlSDHJlc2VydmVkTmFtZRo7ChFFbnVtUmVzZXJ2ZWRSYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQigwEKGEVudW1WYWx1ZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgCIAEoBVIGbnVtYmVyEjsKB29wdGlvbnMYAyABKAsyIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9uc1IHb3B0aW9ucyKnAQoWU2VydmljZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEj4KBm1ldGhvZBgCIAMoCzImLmdvb2dsZS5wcm90b2J1Zi5NZXRob2REZXNjcmlwdG9yUHJvdG9SBm1ldGhvZBI5CgdvcHRpb25zGAMgASgLMh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zUgdvcHRpb25zIokCChVNZXRob2REZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRIdCgppbnB1dF90eXBlGAIgASgJUglpbnB1dFR5cGUSHwoLb3V0cHV0X3R5cGUYAyABKAlSCm91dHB1dFR5cGUSOAoHb3B0aW9ucxgEIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zUgdvcHRpb25zEjAKEGNsaWVudF9zdHJlYW1pbmcYBSABKAg6BWZhbHNlUg9jbGllbnRTdHJlYW1pbmcSMAoQc2VydmVyX3N0cmVhbWluZxgGIAEoCDoFZmFsc2VSD3NlcnZlclN0cmVhbWluZyKtCQoLRmlsZU9wdGlvbnMSIQoMamF2YV9wYWNrYWdlGAEgASgJUgtqYXZhUGFja2FnZRIwChRqYXZhX291dGVyX2NsYXNzbmFtZRgIIAEoCVISamF2YU91dGVyQ2xhc3NuYW1lEjUKE2phdmFfbXVsdGlwbGVfZmlsZXMYCiABKAg6BWZhbHNlUhFqYXZhTXVsdGlwbGVGaWxlcxJECh1qYXZhX2dlbmVyYXRlX2VxdWFsc19hbmRfaGFzaBgUIAEoCEICGAFSGWphdmFHZW5lcmF0ZUVxdWFsc0FuZEhhc2gSOgoWamF2YV9zdHJpbmdfY2hlY2tfdXRmOBgbIAEoCDoFZmFsc2VSE2phdmFTdHJpbmdDaGVja1V0ZjgSUwoMb3B0aW1pemVfZm9yGAkgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zLk9wdGltaXplTW9kZToFU1BFRURSC29wdGltaXplRm9yEh0KCmdvX3BhY2thZ2UYCyABKAlSCWdvUGFja2FnZRI1ChNjY19nZW5lcmljX3NlcnZpY2VzGBAgASgIOgVmYWxzZVIRY2NHZW5lcmljU2VydmljZXMSOQoVamF2YV9nZW5lcmljX3NlcnZpY2VzGBEgASgIOgVmYWxzZVITamF2YUdlbmVyaWNTZXJ2aWNlcxI1ChNweV9nZW5lcmljX3NlcnZpY2VzGBIgASgIOgVmYWxzZVIRcHlHZW5lcmljU2VydmljZXMSJQoKZGVwcmVjYXRlZBgXIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSLgoQY2NfZW5hYmxlX2FyZW5hcxgfIAEoCDoEdHJ1ZVIOY2NFbmFibGVBcmVuYXMSKgoRb2JqY19jbGFzc19wcmVmaXgYJCABKAlSD29iamNDbGFzc1ByZWZpeBIpChBjc2hhcnBfbmFtZXNwYWNlGCUgASgJUg9jc2hhcnBOYW1lc3BhY2USIQoMc3dpZnRfcHJlZml4GCcgASgJUgtzd2lmdFByZWZpeBIoChBwaHBfY2xhc3NfcHJlZml4GCggASgJUg5waHBDbGFzc1ByZWZpeBIjCg1waHBfbmFtZXNwYWNlGCkgASgJUgxwaHBOYW1lc3BhY2USNAoWcGhwX21ldGFkYXRhX25hbWVzcGFjZRgsIAEoCVIUcGhwTWV0YWRhdGFOYW1lc3BhY2USIQoMcnVieV9wYWNrYWdlGC0gASgJUgtydWJ5UGFja2FnZRI3CghmZWF0dXJlcxgyIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbiI6CgxPcHRpbWl6ZU1vZGUSCQoFU1BFRUQQARINCglDT0RFX1NJWkUQAhIQCgxMSVRFX1JVTlRJTUUQAyoJCOgHEICAgIACSgQIKhArSgQIJhAnUhRwaHBfZ2VuZXJpY19zZXJ2aWNlcyL0AwoOTWVzc2FnZU9wdGlvbnMSPAoXbWVzc2FnZV9zZXRfd2lyZV9mb3JtYXQYASABKAg6BWZhbHNlUhRtZXNzYWdlU2V0V2lyZUZvcm1hdBJMCh9ub19zdGFuZGFyZF9kZXNjcmlwdG9yX2FjY2Vzc29yGAIgASgIOgVmYWxzZVIcbm9TdGFuZGFyZERlc2NyaXB0b3JBY2Nlc3NvchIlCgpkZXByZWNhdGVkGAMgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBIbCgltYXBfZW50cnkYByABKAhSCG1hcEVudHJ5ElYKJmRlcHJlY2F0ZWRfbGVnYWN5X2pzb25fZmllbGRfY29uZmxpY3RzGAsgASgIQgIYAVIiZGVwcmVjYXRlZExlZ2FjeUpzb25GaWVsZENvbmZsaWN0cxI3CghmZWF0dXJlcxgMIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioJCOgHEICAgIACSgQIBBAFSgQIBRAGSgQIBhAHSgQICBAJSgQICRAKIp0NCgxGaWVsZE9wdGlvbnMSQQoFY3R5cGUYASABKA4yIy5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLkNUeXBlOgZTVFJJTkdSBWN0eXBlEhYKBnBhY2tlZBgCIAEoCFIGcGFja2VkEkcKBmpzdHlwZRgGIAEoDjIkLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuSlNUeXBlOglKU19OT1JNQUxSBmpzdHlwZRIZCgRsYXp5GAUgASgIOgVmYWxzZVIEbGF6eRIuCg91bnZlcmlmaWVkX2xhenkYDyABKAg6BWZhbHNlUg51bnZlcmlmaWVkTGF6eRIlCgpkZXByZWNhdGVkGAMgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBIZCgR3ZWFrGAogASgIOgVmYWxzZVIEd2VhaxIoCgxkZWJ1Z19yZWRhY3QYECABKAg6BWZhbHNlUgtkZWJ1Z1JlZGFjdBJLCglyZXRlbnRpb24YESABKA4yLS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLk9wdGlvblJldGVudGlvblIJcmV0ZW50aW9uEkgKB3RhcmdldHMYEyADKA4yLi5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLk9wdGlvblRhcmdldFR5cGVSB3RhcmdldHMSVwoQZWRpdGlvbl9kZWZhdWx0cxgUIAMoCzIsLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuRWRpdGlvbkRlZmF1bHRSD2VkaXRpb25EZWZhdWx0cxI3CghmZWF0dXJlcxgVIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJVCg9mZWF0dXJlX3N1cHBvcnQYFiABKAsyLC5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLkZlYXR1cmVTdXBwb3J0Ug5mZWF0dXJlU3VwcG9ydBJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbhpaCg5FZGl0aW9uRGVmYXVsdBIyCgdlZGl0aW9uGAMgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SB2VkaXRpb24SFAoFdmFsdWUYAiABKAlSBXZhbHVlGpYCCg5GZWF0dXJlU3VwcG9ydBJHChJlZGl0aW9uX2ludHJvZHVjZWQYASABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIRZWRpdGlvbkludHJvZHVjZWQSRwoSZWRpdGlvbl9kZXByZWNhdGVkGAIgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SEWVkaXRpb25EZXByZWNhdGVkEi8KE2RlcHJlY2F0aW9uX3dhcm5pbmcYAyABKAlSEmRlcHJlY2F0aW9uV2FybmluZxJBCg9lZGl0aW9uX3JlbW92ZWQYBCABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIOZWRpdGlvblJlbW92ZWQiLwoFQ1R5cGUSCgoGU1RSSU5HEAASCAoEQ09SRBABEhAKDFNUUklOR19QSUVDRRACIjUKBkpTVHlwZRINCglKU19OT1JNQUwQABINCglKU19TVFJJTkcQARINCglKU19OVU1CRVIQAiJVCg9PcHRpb25SZXRlbnRpb24SFQoRUkVURU5USU9OX1VOS05PV04QABIVChFSRVRFTlRJT05fUlVOVElNRRABEhQKEFJFVEVOVElPTl9TT1VSQ0UQAiKMAgoQT3B0aW9uVGFyZ2V0VHlwZRIXChNUQVJHRVRfVFlQRV9VTktOT1dOEAASFAoQVEFSR0VUX1RZUEVfRklMRRABEh8KG1RBUkdFVF9UWVBFX0VYVEVOU0lPTl9SQU5HRRACEhcKE1RBUkdFVF9UWVBFX01FU1NBR0UQAxIVChFUQVJHRVRfVFlQRV9GSUVMRBAEEhUKEVRBUkdFVF9UWVBFX09ORU9GEAUSFAoQVEFSR0VUX1RZUEVfRU5VTRAGEhoKFlRBUkdFVF9UWVBFX0VOVU1fRU5UUlkQBxIXChNUQVJHRVRfVFlQRV9TRVJWSUNFEAgSFgoSVEFSR0VUX1RZUEVfTUVUSE9EEAkqCQjoBxCAgICAAkoECAQQBUoECBIQEyKsAQoMT25lb2ZPcHRpb25zEjcKCGZlYXR1cmVzGAEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi0QIKC0VudW1PcHRpb25zEh8KC2FsbG93X2FsaWFzGAIgASgIUgphbGxvd0FsaWFzEiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkElYKJmRlcHJlY2F0ZWRfbGVnYWN5X2pzb25fZmllbGRfY29uZmxpY3RzGAYgASgIQgIYAVIiZGVwcmVjYXRlZExlZ2FjeUpzb25GaWVsZENvbmZsaWN0cxI3CghmZWF0dXJlcxgHIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioJCOgHEICAgIACSgQIBRAGItgCChBFbnVtVmFsdWVPcHRpb25zEiUKCmRlcHJlY2F0ZWQYASABKAg6BWZhbHNlUgpkZXByZWNhdGVkEjcKCGZlYXR1cmVzGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEigKDGRlYnVnX3JlZGFjdBgDIAEoCDoFZmFsc2VSC2RlYnVnUmVkYWN0ElUKD2ZlYXR1cmVfc3VwcG9ydBgEIAEoCzIsLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuRmVhdHVyZVN1cHBvcnRSDmZlYXR1cmVTdXBwb3J0ElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi1QEKDlNlcnZpY2VPcHRpb25zEjcKCGZlYXR1cmVzGCIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEiUKCmRlcHJlY2F0ZWQYISABKAg6BWZhbHNlUgpkZXByZWNhdGVkElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIimQMKDU1ldGhvZE9wdGlvbnMSJQoKZGVwcmVjYXRlZBghIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQScQoRaWRlbXBvdGVuY3lfbGV2ZWwYIiABKA4yLy5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucy5JZGVtcG90ZW5jeUxldmVsOhNJREVNUE9URU5DWV9VTktOT1dOUhBpZGVtcG90ZW5jeUxldmVsEjcKCGZlYXR1cmVzGCMgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uIlAKEElkZW1wb3RlbmN5TGV2ZWwSFwoTSURFTVBPVEVOQ1lfVU5LTk9XThAAEhMKD05PX1NJREVfRUZGRUNUUxABEg4KCklERU1QT1RFTlQQAioJCOgHEICAgIACIpoDChNVbmludGVycHJldGVkT3B0aW9uEkEKBG5hbWUYAiADKAsyLS5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvbi5OYW1lUGFydFIEbmFtZRIpChBpZGVudGlmaWVyX3ZhbHVlGAMgASgJUg9pZGVudGlmaWVyVmFsdWUSLAoScG9zaXRpdmVfaW50X3ZhbHVlGAQgASgEUhBwb3NpdGl2ZUludFZhbHVlEiwKEm5lZ2F0aXZlX2ludF92YWx1ZRgFIAEoA1IQbmVnYXRpdmVJbnRWYWx1ZRIhCgxkb3VibGVfdmFsdWUYBiABKAFSC2RvdWJsZVZhbHVlEiEKDHN0cmluZ192YWx1ZRgHIAEoDFILc3RyaW5nVmFsdWUSJwoPYWdncmVnYXRlX3ZhbHVlGAggASgJUg5hZ2dyZWdhdGVWYWx1ZRpKCghOYW1lUGFydBIbCgluYW1lX3BhcnQYASACKAlSCG5hbWVQYXJ0EiEKDGlzX2V4dGVuc2lvbhgCIAIoCFILaXNFeHRlbnNpb24ipwoKCkZlYXR1cmVTZXQSkQEKDmZpZWxkX3ByZXNlbmNlGAEgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuRmllbGRQcmVzZW5jZUI/iAEBmAEEmAEBogENEghFWFBMSUNJVBiEB6IBDRIISU1QTElDSVQY5weiAQ0SCEVYUExJQ0lUGOgHsgEDCOgHUg1maWVsZFByZXNlbmNlEmwKCWVudW1fdHlwZRgCIAEoDjIkLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LkVudW1UeXBlQimIAQGYAQaYAQGiAQsSBkNMT1NFRBiEB6IBCRIET1BFThjnB7IBAwjoB1IIZW51bVR5cGUSmAEKF3JlcGVhdGVkX2ZpZWxkX2VuY29kaW5nGAMgASgOMjEuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuUmVwZWF0ZWRGaWVsZEVuY29kaW5nQi2IAQGYAQSYAQGiAQ0SCEVYUEFOREVEGIQHogELEgZQQUNLRUQY5weyAQMI6AdSFXJlcGVhdGVkRmllbGRFbmNvZGluZxJ+Cg91dGY4X3ZhbGlkYXRpb24YBCABKA4yKi5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5VdGY4VmFsaWRhdGlvbkIpiAEBmAEEmAEBogEJEgROT05FGIQHogELEgZWRVJJRlkY5weyAQMI6AdSDnV0ZjhWYWxpZGF0aW9uEn4KEG1lc3NhZ2VfZW5jb2RpbmcYBSABKA4yKy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5NZXNzYWdlRW5jb2RpbmdCJogBAZgBBJgBAaIBFBIPTEVOR1RIX1BSRUZJWEVEGIQHsgEDCOgHUg9tZXNzYWdlRW5jb2RpbmcSggEKC2pzb25fZm9ybWF0GAYgASgOMiYuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuSnNvbkZvcm1hdEI5iAEBmAEDmAEGmAEBogEXEhJMRUdBQ1lfQkVTVF9FRkZPUlQYhAeiAQoSBUFMTE9XGOcHsgEDCOgHUgpqc29uRm9ybWF0IlwKDUZpZWxkUHJlc2VuY2USGgoWRklFTERfUFJFU0VOQ0VfVU5LTk9XThAAEgwKCEVYUExJQ0lUEAESDAoISU1QTElDSVQQAhITCg9MRUdBQ1lfUkVRVUlSRUQQAyI3CghFbnVtVHlwZRIVChFFTlVNX1RZUEVfVU5LTk9XThAAEggKBE9QRU4QARIKCgZDTE9TRUQQAiJWChVSZXBlYXRlZEZpZWxkRW5jb2RpbmcSIwofUkVQRUFURURfRklFTERfRU5DT0RJTkdfVU5LTk9XThAAEgoKBlBBQ0tFRBABEgwKCEVYUEFOREVEEAIiSQoOVXRmOFZhbGlkYXRpb24SGwoXVVRGOF9WQUxJREFUSU9OX1VOS05PV04QABIKCgZWRVJJRlkQAhIICgROT05FEAMiBAgBEAEiUwoPTWVzc2FnZUVuY29kaW5nEhwKGE1FU1NBR0VfRU5DT0RJTkdfVU5LTk9XThAAEhMKD0xFTkdUSF9QUkVGSVhFRBABEg0KCURFTElNSVRFRBACIkgKCkpzb25Gb3JtYXQSFwoTSlNPTl9GT1JNQVRfVU5LTk9XThAAEgkKBUFMTE9XEAESFgoSTEVHQUNZX0JFU1RfRUZGT1JUEAIqBgjoBxCLTioGCItOEJBOKgYIkE4QkU5KBgjnBxDoByLvAwoSRmVhdHVyZVNldERlZmF1bHRzElgKCGRlZmF1bHRzGAEgAygLMjwuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXREZWZhdWx0cy5GZWF0dXJlU2V0RWRpdGlvbkRlZmF1bHRSCGRlZmF1bHRzEkEKD21pbmltdW1fZWRpdGlvbhgEIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUg5taW5pbXVtRWRpdGlvbhJBCg9tYXhpbXVtX2VkaXRpb24YBSABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIObWF4aW11bUVkaXRpb24a+AEKGEZlYXR1cmVTZXRFZGl0aW9uRGVmYXVsdBIyCgdlZGl0aW9uGAMgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SB2VkaXRpb24STgoUb3ZlcnJpZGFibGVfZmVhdHVyZXMYBCABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFITb3ZlcnJpZGFibGVGZWF0dXJlcxJCCg5maXhlZF9mZWF0dXJlcxgFIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0Ug1maXhlZEZlYXR1cmVzSgQIARACSgQIAhADUghmZWF0dXJlcyK1AgoOU291cmNlQ29kZUluZm8SRAoIbG9jYXRpb24YASADKAsyKC5nb29nbGUucHJvdG9idWYuU291cmNlQ29kZUluZm8uTG9jYXRpb25SCGxvY2F0aW9uGs4BCghMb2NhdGlvbhIWCgRwYXRoGAEgAygFQgIQAVIEcGF0aBIWCgRzcGFuGAIgAygFQgIQAVIEc3BhbhIpChBsZWFkaW5nX2NvbW1lbnRzGAMgASgJUg9sZWFkaW5nQ29tbWVudHMSKwoRdHJhaWxpbmdfY29tbWVudHMYBCABKAlSEHRyYWlsaW5nQ29tbWVudHMSOgoZbGVhZGluZ19kZXRhY2hlZF9jb21tZW50cxgGIAMoCVIXbGVhZGluZ0RldGFjaGVkQ29tbWVudHMqDAiA7Mr/ARCB7Mr/ASLQAgoRR2VuZXJhdGVkQ29kZUluZm8STQoKYW5ub3RhdGlvbhgBIAMoCzItLmdvb2dsZS5wcm90b2J1Zi5HZW5lcmF0ZWRDb2RlSW5mby5Bbm5vdGF0aW9uUgphbm5vdGF0aW9uGusBCgpBbm5vdGF0aW9uEhYKBHBhdGgYASADKAVCAhABUgRwYXRoEh8KC3NvdXJjZV9maWxlGAIgASgJUgpzb3VyY2VGaWxlEhQKBWJlZ2luGAMgASgFUgViZWdpbhIQCgNlbmQYBCABKAVSA2VuZBJSCghzZW1hbnRpYxgFIAEoDjI2Lmdvb2dsZS5wcm90b2J1Zi5HZW5lcmF0ZWRDb2RlSW5mby5Bbm5vdGF0aW9uLlNlbWFudGljUghzZW1hbnRpYyIoCghTZW1hbnRpYxIICgROT05FEAASBwoDU0VUEAESCQoFQUxJQVMQAiqnAgoHRWRpdGlvbhITCg9FRElUSU9OX1VOS05PV04QABITCg5FRElUSU9OX0xFR0FDWRCEBxITCg5FRElUSU9OX1BST1RPMhDmBxITCg5FRElUSU9OX1BST1RPMxDnBxIRCgxFRElUSU9OXzIwMjMQ6AcSEQoMRURJVElPTl8yMDI0EOkHEhcKE0VESVRJT05fMV9URVNUX09OTFkQARIXChNFRElUSU9OXzJfVEVTVF9PTkxZEAISHQoXRURJVElPTl85OTk5N19URVNUX09OTFkQnY0GEh0KF0VESVRJT05fOTk5OThfVEVTVF9PTkxZEJ6NBhIdChdFRElUSU9OXzk5OTk5X1RFU1RfT05MWRCfjQYSEwoLRURJVElPTl9NQVgQ/////wdCfgoTY29tLmdvb2dsZS5wcm90b2J1ZkIQRGVzY3JpcHRvclByb3Rvc0gBWi1nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9kZXNjcmlwdG9ycGL4AQGiAgNHUEKqAhpHb29nbGUuUHJvdG9idWYuUmVmbGVjdGlvbkqw0wMKBxIFJgC4CgEKqg8KAQwSAyYAEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KMtsCIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIFRoZSBtZXNzYWdlcyBpbiB0aGlzIGZpbGUgZGVzY3JpYmUgdGhlIGRlZmluaXRpb25zIGZvdW5kIGluIC5wcm90byBmaWxlcy4KIEEgdmFsaWQgLnByb3RvIGZpbGUgY2FuIGJlIHRyYW5zbGF0ZWQgZGlyZWN0bHkgdG8gYSBGaWxlRGVzY3JpcHRvclByb3RvCiB3aXRob3V0IGFueSBvdGhlciBpbmZvcm1hdGlvbiAoZS5nLiB3aXRob3V0IHJlYWRpbmcgaXRzIGltcG9ydHMpLgoKCAoBAhIDKAAYCggKAQgSAyoARAoJCgIICxIDKgBECggKAQgSAysALAoJCgIIARIDKwAsCggKAQgSAywAMQoJCgIICBIDLAAxCggKAQgSAy0ANwoJCgIIJRIDLQA3CggKAQgSAy4AIQoJCgIIJBIDLgAhCggKAQgSAy8AHwoJCgIIHxIDLwAfCggKAQgSAzMAHAp/CgIICRIDMwAcGnQgZGVzY3JpcHRvci5wcm90byBtdXN0IGJlIG9wdGltaXplZCBmb3Igc3BlZWQgYmVjYXVzZSByZWZsZWN0aW9uLWJhc2VkCiBhbGdvcml0aG1zIGRvbid0IHdvcmsgZHVyaW5nIGJvb3RzdHJhcHBpbmcuCgpqCgIEABIENwBAARpeIFRoZSBwcm90b2NvbCBjb21waWxlciBjYW4gb3V0cHV0IGEgRmlsZURlc2NyaXB0b3JTZXQgY29udGFpbmluZyB0aGUgLnByb3RvCiBmaWxlcyBpdCBwYXJzZXMuCgoKCgMEAAESAzcIGQoLCgQEAAIAEgM4AigKDAoFBAACAAQSAzgCCgoMCgUEAAIABhIDOAseCgwKBQQAAgABEgM4HyMKDAoFBAACAAMSAzgmJwomCgMEAAUSBDsCPwUaGSBFeHRlbnNpb25zIGZvciB0b29saW5nLgoKCwoEBAAFABIDOw0WCgwKBQQABQABEgM7DRYKDAoFBAAFAAISAzsNFgotCgIFABIEQwBkARohIFRoZSBmdWxsIHNldCBvZiBrbm93biBlZGl0aW9ucy4KCgoKAwUAARIDQwUMCjoKBAUAAgASA0UCFhotIEEgcGxhY2Vob2xkZXIgZm9yIGFuIHVua25vd24gZWRpdGlvbiB2YWx1ZS4KCgwKBQUAAgABEgNFAhEKDAoFBQACAAISA0UUFQqZAQoEBQACARIDSQIXGosBIEEgcGxhY2Vob2xkZXIgZWRpdGlvbiBmb3Igc3BlY2lmeWluZyBkZWZhdWx0IGJlaGF2aW9ycyAqYmVmb3JlKiBhIGZlYXR1cmUKIHdhcyBmaXJzdCBpbnRyb2R1Y2VkLiAgVGhpcyBpcyBlZmZlY3RpdmVseSBhbiAiaW5maW5pdGUgcGFzdCIuCgoMCgUFAAIBARIDSQIQCgwKBQUAAgECEgNJExYKggIKBAUAAgISA08CFxr0ASBMZWdhY3kgc3ludGF4ICJlZGl0aW9ucyIuICBUaGVzZSBwcmUtZGF0ZSBlZGl0aW9ucywgYnV0IGJlaGF2ZSBtdWNoIGxpa2UKIGRpc3RpbmN0IGVkaXRpb25zLiAgVGhlc2UgY2FuJ3QgYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBlZGl0aW9uIG9mIHByb3RvCiBmaWxlcywgYnV0IGZlYXR1cmUgZGVmaW5pdGlvbnMgbXVzdCBzdXBwbHkgcHJvdG8yL3Byb3RvMyBkZWZhdWx0cyBmb3IKIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LgoKDAoFBQACAgESA08CEAoMCgUFAAICAhIDTxMWCgsKBAUAAgMSA1ACFwoMCgUFAAIDARIDUAIQCgwKBQUAAgMCEgNQExYKrwEKBAUAAgQSA1UCFhqhASBFZGl0aW9ucyB0aGF0IGhhdmUgYmVlbiByZWxlYXNlZC4gIFRoZSBzcGVjaWZpYyB2YWx1ZXMgYXJlIGFyYml0cmFyeSBhbmQKIHNob3VsZCBub3QgYmUgZGVwZW5kZWQgb24sIGJ1dCB0aGV5IHdpbGwgYWx3YXlzIGJlIHRpbWUtb3JkZXJlZCBmb3IgZWFzeQogY29tcGFyaXNvbi4KCgwKBQUAAgQBEgNVAg4KDAoFBQACBAISA1URFQoLCgQFAAIFEgNWAhYKDAoFBQACBQESA1YCDgoMCgUFAAIFAhIDVhEVCn0KBAUAAgYSA1oCGhpwIFBsYWNlaG9sZGVyIGVkaXRpb25zIGZvciB0ZXN0aW5nIGZlYXR1cmUgcmVzb2x1dGlvbi4gIFRoZXNlIHNob3VsZCBub3QgYmUKIHVzZWQgb3IgcmVsaWVkIG9uIG91dHNpZGUgb2YgdGVzdHMuCgoMCgUFAAIGARIDWgIVCgwKBQUAAgYCEgNaGBkKCwoEBQACBxIDWwIaCgwKBQUAAgcBEgNbAhUKDAoFBQACBwISA1sYGQoLCgQFAAIIEgNcAiIKDAoFBQACCAESA1wCGQoMCgUFAAIIAhIDXBwhCgsKBAUAAgkSA10CIgoMCgUFAAIJARIDXQIZCgwKBQUAAgkCEgNdHCEKCwoEBQACChIDXgIiCgwKBQUAAgoBEgNeAhkKDAoFBQACCgISA14cIQq4AQoEBQACCxIDYwIbGqoBIFBsYWNlaG9sZGVyIGZvciBzcGVjaWZ5aW5nIHVuYm91bmRlZCBlZGl0aW9uIHN1cHBvcnQuICBUaGlzIHNob3VsZCBvbmx5CiBldmVyIGJlIHVzZWQgYnkgcGx1Z2lucyB0aGF0IGNhbiBleHBlY3QgdG8gbmV2ZXIgcmVxdWlyZSBhbnkgY2hhbmdlcyB0bwogc3VwcG9ydCBhIG5ldyBlZGl0aW9uLgoKDAoFBQACCwESA2MCDQoMCgUFAAILAhIDYxAaCjAKAgQBEgVnAI8BARojIERlc2NyaWJlcyBhIGNvbXBsZXRlIC5wcm90byBmaWxlLgoKCgoDBAEBEgNnCBsKOQoEBAECABIDaAIbIiwgZmlsZSBuYW1lLCByZWxhdGl2ZSB0byByb290IG9mIHNvdXJjZSB0cmVlCgoMCgUEAQIABBIDaAIKCgwKBQQBAgAFEgNoCxEKDAoFBAECAAESA2gSFgoMCgUEAQIAAxIDaBkaCioKBAQBAgESA2kCHiIdIGUuZy4gImZvbyIsICJmb28uYmFyIiwgZXRjLgoKDAoFBAECAQQSA2kCCgoMCgUEAQIBBRIDaQsRCgwKBQQBAgEBEgNpEhkKDAoFBAECAQMSA2kcHQo0CgQEAQICEgNsAiEaJyBOYW1lcyBvZiBmaWxlcyBpbXBvcnRlZCBieSB0aGlzIGZpbGUuCgoMCgUEAQICBBIDbAIKCgwKBQQBAgIFEgNsCxEKDAoFBAECAgESA2wSHAoMCgUEAQICAxIDbB8gClEKBAQBAgMSA24CKBpEIEluZGV4ZXMgb2YgdGhlIHB1YmxpYyBpbXBvcnRlZCBmaWxlcyBpbiB0aGUgZGVwZW5kZW5jeSBsaXN0IGFib3ZlLgoKDAoFBAECAwQSA24CCgoMCgUEAQIDBRIDbgsQCgwKBQQBAgMBEgNuESIKDAoFBAECAwMSA24lJwp6CgQEAQIEEgNxAiYabSBJbmRleGVzIG9mIHRoZSB3ZWFrIGltcG9ydGVkIGZpbGVzIGluIHRoZSBkZXBlbmRlbmN5IGxpc3QuCiBGb3IgR29vZ2xlLWludGVybmFsIG1pZ3JhdGlvbiBvbmx5LiBEbyBub3QgdXNlLgoKDAoFBAECBAQSA3ECCgoMCgUEAQIEBRIDcQsQCgwKBQQBAgQBEgNxESAKDAoFBAECBAMSA3EjJQo2CgQEAQIFEgN0AiwaKSBBbGwgdG9wLWxldmVsIGRlZmluaXRpb25zIGluIHRoaXMgZmlsZS4KCgwKBQQBAgUEEgN0AgoKDAoFBAECBQYSA3QLGgoMCgUEAQIFARIDdBsnCgwKBQQBAgUDEgN0KisKCwoEBAECBhIDdQItCgwKBQQBAgYEEgN1AgoKDAoFBAECBgYSA3ULHgoMCgUEAQIGARIDdR8oCgwKBQQBAgYDEgN1KywKCwoEBAECBxIDdgIuCgwKBQQBAgcEEgN2AgoKDAoFBAECBwYSA3YLIQoMCgUEAQIHARIDdiIpCgwKBQQBAgcDEgN2LC0KCwoEBAECCBIDdwIuCgwKBQQBAggEEgN3AgoKDAoFBAECCAYSA3cLHwoMCgUEAQIIARIDdyApCgwKBQQBAggDEgN3LC0KCwoEBAECCRIDeQIjCgwKBQQBAgkEEgN5AgoKDAoFBAECCQYSA3kLFgoMCgUEAQIJARIDeRceCgwKBQQBAgkDEgN5ISIK9AEKBAQBAgoSA38CLxrmASBUaGlzIGZpZWxkIGNvbnRhaW5zIG9wdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBvcmlnaW5hbCBzb3VyY2UgY29kZS4KIFlvdSBtYXkgc2FmZWx5IHJlbW92ZSB0aGlzIGVudGlyZSBmaWVsZCB3aXRob3V0IGhhcm1pbmcgcnVudGltZQogZnVuY3Rpb25hbGl0eSBvZiB0aGUgZGVzY3JpcHRvcnMgLS0gdGhlIGluZm9ybWF0aW9uIGlzIG5lZWRlZCBvbmx5IGJ5CiBkZXZlbG9wbWVudCB0b29scy4KCgwKBQQBAgoEEgN/AgoKDAoFBAECCgYSA38LGQoMCgUEAQIKARIDfxoqCgwKBQQBAgoDEgN/LS4K+QIKBAQBAgsSBIgBAh4a6gIgVGhlIHN5bnRheCBvZiB0aGUgcHJvdG8gZmlsZS4KIFRoZSBzdXBwb3J0ZWQgdmFsdWVzIGFyZSAicHJvdG8yIiwgInByb3RvMyIsIGFuZCAiZWRpdGlvbnMiLgoKIElmIGBlZGl0aW9uYCBpcyBwcmVzZW50LCB0aGlzIHZhbHVlIG11c3QgYmUgImVkaXRpb25zIi4KIFdBUk5JTkc6IFRoaXMgZmllbGQgc2hvdWxkIG9ubHkgYmUgdXNlZCBieSBwcm90b2J1ZiBwbHVnaW5zIG9yIHNwZWNpYWwKIGNhc2VzIGxpa2UgdGhlIHByb3RvIGNvbXBpbGVyLiBPdGhlciB1c2VzIGFyZSBkaXNjb3VyYWdlZCBhbmQKIGRldmVsb3BlcnMgc2hvdWxkIHJlbHkgb24gdGhlIHByb3RvcmVmbGVjdCBBUElzIGZvciB0aGVpciBjbGllbnQgbGFuZ3VhZ2UuCgoNCgUEAQILBBIEiAECCgoNCgUEAQILBRIEiAELEQoNCgUEAQILARIEiAESGAoNCgUEAQILAxIEiAEbHQqCAgoEBAECDBIEjgECIBrzASBUaGUgZWRpdGlvbiBvZiB0aGUgcHJvdG8gZmlsZS4KIFdBUk5JTkc6IFRoaXMgZmllbGQgc2hvdWxkIG9ubHkgYmUgdXNlZCBieSBwcm90b2J1ZiBwbHVnaW5zIG9yIHNwZWNpYWwKIGNhc2VzIGxpa2UgdGhlIHByb3RvIGNvbXBpbGVyLiBPdGhlciB1c2VzIGFyZSBkaXNjb3VyYWdlZCBhbmQKIGRldmVsb3BlcnMgc2hvdWxk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CrAJCgQEBAIKEgTSAgIlGqEJIElmIHRydWUsIHRoaXMgaXMgYSBwcm90bzMgIm9wdGlvbmFsIi4gV2hlbiBhIHByb3RvMyBmaWVsZCBpcyBvcHRpb25hbCwgaXQKIHRyYWNrcyBwcmVzZW5jZSByZWdhcmRsZXNzIG9mIGZpZWxkIHR5cGUuCgogV2hlbiBwcm90bzNfb3B0aW9uYWwgaXMgdHJ1ZSwgdGhpcyBmaWVsZCBtdXN0IGJlbG9uZyB0byBhIG9uZW9mIHRvIHNpZ25hbAogdG8gb2xkIHByb3RvMyBjbGllbnRzIHRoYXQgcHJlc2VuY2UgaXMgdHJhY2tlZCBmb3IgdGhpcyBmaWVsZC4gVGhpcyBvbmVvZgogaXMga25vd24gYXMgYSAic3ludGhldGljIiBvbmVvZiwgYW5kIHRoaXMgZmllbGQgbXVzdCBiZSBpdHMgc29sZSBtZW1iZXIKIChlYWNoIHByb3RvMyBvcHRpb25hbCBmaWVsZCBnZXRzIGl0cyBvd24gc3ludGhldGljIG9uZW9mKS4gU3ludGhldGljIG9uZW9mcwogZXhpc3QgaW4gdGhlIGRlc2NyaXB0b3Igb25seSwgYW5kIGRvIG5vdCBnZW5lcmF0ZSBhbnkgQVBJLiBTeW50aGV0aWMgb25lb2ZzCiBtdXN0IGJlIG9yZGVyZWQgYWZ0ZXIgYWxsICJyZWFsIiBvbmVvZnMuCgogRm9yIG1lc3NhZ2UgZmllbGRzLCBwcm90bzNfb3B0aW9uYWwgZG9lc24ndCBjcmVhdGUgYW55IHNlbWFudGljIGNoYW5nZSwKIHNpbmNlIG5vbi1yZXBlYXRlZCBtZXNzYWdlIGZpZWxkcyBhbHdheXMgdHJhY2sgcHJlc2VuY2UuIEhvd2V2ZXIgaXQgc3RpbGwKIGluZGljYXRlcyB0aGUgc2VtYW50aWMgZGV0YWlsIG9mIHdoZXRoZXIgdGhlIHVzZXIgd3JvdGUgIm9wdGlvbmFsIiBvciBub3QuCiBUaGlzIGNhbiBiZSB1c2VmdWwgZm9yIHJvdW5kLXRyaXBwaW5nIHRoZSAucHJvdG8gZmlsZS4gRm9yIGNvbnNpc3RlbmN5IHdlCiBnaXZlIG1lc3NhZ2UgZmllbGRzIGEgc3ludGhldGljIG9uZW9mIGFsc28s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CiBzdG9yZSB0aGUgdmFsdWVzIGluIHRoZW0uICBJbnN0ZWFkIGl0IHN0b3JlcyB0aGVtIGluIGEgZmllbGQgaW4gdGhlICpPcHRpb25zCiBtZXNzYWdlIGNhbGxlZCB1bmludGVycHJldGVkX29wdGlvbi4gVGhpcyBmaWVsZCBtdXN0IGhhdmUgdGhlIHNhbWUgbmFtZQogYWNyb3NzIGFsbCAqT3B0aW9ucyBtZXNzYWdlcy4gV2UgdGhlbiB1c2UgdGhpcyBmaWVsZCB0byBwb3B1bGF0ZSB0aGUKIGV4dGVuc2lvbnMgd2hlbiB3ZSBidWlsZCBhIGRlc2NyaXB0b3IsIGF0IHdoaWNoIHBvaW50IGFsbCBwcm90b3MgaGF2ZSBiZWVuCiBwYXJzZWQgYW5kIHNvIGFsbCBleHRlbnNpb25zIGFyZSBrbm93bi4KCiBFeHRlbnNpb24gbnVtYmVycyBmb3IgY3VzdG9tIG9wdGlvbnMgbWF5IGJlIGNob3NlbiBhcyBmb2xsb3dzOgogKiBGb3Igb3B0aW9ucyB3aGljaCB3aWxsIG9ubHkgYmUgdXNlZCB3aXRoaW4gYSBzaW5nbGUgYXBwbGljYXRpb24gb3IKICAgb3JnYW5pemF0aW9uLCBvciBmb3IgZXhwZXJpbWVudGFsIG9wdGlvbnMsIHVzZSBmaWVsZCBudW1iZXJzIDUwMDAwCiAgIHRocm91Z2ggOTk5OTkuICBJdCBpcyB1cCB0byB5b3UgdG8gZW5zdXJlIHRoYXQgeW91IGRvIG5vdCB1c2UgdGhlCiAgIHNhbWUgbnVtYmVyIGZvciBtdWx0aXBsZSBvcHRpb25zLgogKiBGb3Igb3B0aW9ucyB3aGljaCB3aWxsIGJlIHB1Ymxpc2hlZCBhbmQgdXNlZCBwdWJsaWNseSBieSBtdWx0aXBsZQogICBpbmRlcGVuZGVudCBlbnRpdGllcywgZS1tYWlsIHByb3RvYnVmLWdsb2JhbC1leHRlbnNpb24tcmVnaXN0cnlAZ29vZ2xlLmNvbQogICB0byByZXNlcnZlIGV4dGVuc2lvbiBudW1iZXJzLiBTaW1wbHkgcHJvdmlkZSB5b3VyIHByb2plY3QgbmFtZSAoZS5nLgogICBPYmplY3RpdmUtQyBwbHVnaW4pIGFuZCB5b3VyIHByb2plY3Qgd2Vic2l0ZSAoaWYgYXZhaWxhYmxlKSAtLSB0aGVyZSdzIG5vCiAgIG5lZWQgdG8gZXhwbGFpbiBob3cgeW91IGludGVuZCB0byB1c2UgdGhlbS4gVXN1YWxseSB5b3Ugb25seSBuZWVkIG9uZQogICBleHRlbnNpb24gbnVtYmVyLiBZb3UgY2FuIGRlY2xhcmUgbXVsdGlwbGUgb3B0aW9ucyB3aXRoIG9ubHkgb25lIGV4dGVuc2lvbgogICBudW1iZXIgYnkgcHV0dGluZyB0aGVtIGluIGEgc3ViLW1lc3NhZ2UuIFNlZSB0aGUgQ3VzdG9tIE9wdGlvbnMgc2VjdGlvbiBvZgogICB0aGUgZG9jcyBmb3IgZXhhbXBsZXM6CiAgIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvZG9jcy9wcm90byNvcHRpb25zCiAgIElmIHRoaXMgdHVybnMgb3V0IHRvIGJlIHBvcHVsYXIsIGEgd2ViIHNlcnZpY2Ugd2lsbCBiZSBzZXQgdXAKICAgdG8gYXV0b21hdGljYWxseSBhc3NpZ24gb3B0aW9uIG51bWJlcnMuCgoLCgMECgESBLkDCBMK9AEKBAQKAgASBL8DAiMa5QEgU2V0cyB0aGUgSmF2YSBwYWNrYWdlIHdoZXJlIGNsYXNzZXMgZ2VuZXJhdGVkIGZyb20gdGhpcyAucHJvdG8gd2lsbCBiZQogcGxhY2VkLiAgQnkgZGVmYXVsdCwgdGhlIHByb3RvIHBhY2thZ2UgaXMgdXNlZCwgYnV0IHRoaXMgaXMgb2Z0ZW4KIGluYXBwcm9wcmlhdGUgYmVjYXVzZSBwcm90byBwYWNrYWdlcyBkbyBub3Qgbm9ybWFsbHkgc3RhcnQgd2l0aCBiYWNrd2FyZHMKIGRvbWFpbiBuYW1lcy4KCg0KBQQKAgAEEgS/AwIKCg0KBQQKAgAFEgS/AwsRCg0KBQQKAgABEgS/AxIeCg0KBQQKAgADEgS/AyEiCvECCgQECgIBEgTGAwIrGuICIENvbnRyb2xzIHRoZSBuYW1lIG9mIHRoZSB3cmFwcGVyIEphdmEgY2xhc3MgZ2VuZXJhdGVkIGZvciB0aGUgLnByb3RvIGZpbGUuCiBUaGF0IGNsYXNzIHdpbGwgYWx3YXlzIGNvbnRhaW4gdGhlIC5wcm90byBmaWxlJ3MgZ2V0RGVzY3JpcHRvcigpIG1ldGhvZCBhcwogd2VsbCBhcyBhbnkgdG9wLWxldmVsIGV4dGVuc2lvbnMgZGVmaW5lZCBpbiB0aGUgLnByb3RvIGZpbGUuCiBJZiBqYXZhX211bHRpcGxlX2ZpbGVzIGlzIGRpc2FibGVkLCB0aGVuIGFsbCB0aGUgb3RoZXIgY2xhc3NlcyBmcm9tIHRoZQogLnByb3RvIGZpbGUgd2lsbCBiZSBuZXN0ZWQgaW5zaWRlIHRoZSBzaW5nbGUgd3JhcHBlciBvdXRlciBjbGFzcy4KCg0KBQQKAgEEEgTGAwIKCg0KBQQKAgEFEgTGAwsRCg0KBQQKAgEBEgTGAxImCg0KBQQKAgEDEgTGAykqCqYDCgQECgICEgTOAwI7GpcDIElmIGVuYWJsZWQsIHRoZW4gdGhlIEphdmEgY29kZSBnZW5lcmF0b3Igd2lsbCBnZW5lcmF0ZSBhIHNlcGFyYXRlIC5qYXZhCiBmaWxlIGZvciBlYWNoIHRvcC1sZXZlbCBtZXNzYWdlLCBlbnVtLCBhbmQgc2VydmljZSBkZWZpbmVkIGluIHRoZSAucHJvdG8KIGZpbGUuICBUaHVzLCB0aGVzZSB0eXBlcyB3aWxsICpub3QqIGJlIG5lc3RlZCBpbnNpZGUgdGhlIHdyYXBwZXIgY2xhc3MKIG5hbWVkIGJ5IGphdmFfb3V0ZXJfY2xhc3NuYW1lLiAgSG93ZXZlciwgdGhlIHdyYXBwZXIgY2xhc3Mgd2lsbCBzdGlsbCBiZQogZ2VuZXJhdGVkIHRvIGNvbnRhaW4gdGhlIGZpbGUncyBnZXREZXNjcmlwdG9yKCkgbWV0aG9kIGFzIHdlbGwgYXMgYW55CiB0b3AtbGV2ZWwgZXh0ZW5zaW9ucyBkZWZpbmVkIGluIHRoZSBmaWxlLgoKDQoFBAoCAgQSBM4DAgoKDQoFBAoCAgUSBM4DCw8KDQoFBAoCAgESBM4DECMKDQoFBAoCAgMSBM4DJigKDQoFBAoCAggSBM4DKToKDQoFBAoCAgcSBM4DNDkKKQoEBAoCAxIE0QMCRRobIFRoaXMgb3B0aW9uIGRvZXMgbm90aGluZy4KCg0KBQQKAgMEEgTR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dGlvbiBmb3IgdGhlICJPcHRpb25zIiBzZWN0aW9uIGFib3ZlLgoKDAoEBAoFABIEtQQNGAoNCgUECgUAARIEtQQNEQoNCgUECgUAAhIEtQQVGAoLCgMECgkSBLcEAg4KDAoEBAoJARIEtwQLDQoNCgUECgkBARIEtwQLDQoNCgUECgkBAhIEtwQLDQoMCgIECxIGugQAjQUBCgsKAwQLARIEugQIFgrYBQoEBAsCABIEzQQCPhrJBSBTZXQgdHJ1ZSB0byB1c2UgdGhlIG9sZCBwcm90bzEgTWVzc2FnZVNldCB3aXJlIGZvcm1hdCBmb3IgZXh0ZW5zaW9ucy4KIFRoaXMgaXMgcHJvdmlkZWQgZm9yIGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5IHdpdGggdGhlIE1lc3NhZ2VTZXQgd2lyZQogZm9ybWF0LiAgWW91IHNob3VsZCBub3QgdXNlIHRoaXMgZm9yIGFueSBvdGhlciByZWFzb246ICBJdCdzIGxlc3MKIGVmZmljaWVudCwgaGFzIGZld2VyIGZlYXR1cmVzLCBhbmQgaXMgbW9yZSBjb21wbGljYXRlZC4KCiBUaGUgbWVzc2FnZSBtdXN0IGJlIGRlZmluZWQgZXhhY3RseSBhcyBmb2xsb3dzOgogICBtZXNzYWdlIEZvbyB7CiAgICAgb3B0aW9uIG1lc3NhZ2Vfc2V0X3dpcmVfZm9ybWF0ID0gdHJ1ZTsKICAgICBleHRlbnNpb25zIDQgdG8gbWF4OwogICB9CiBOb3RlIHRoYXQgdGhlIG1lc3NhZ2UgY2Fubm90IGhhdmUgYW55IGRlZmluZWQgZmllbGRzOyBNZXNzYWdlU2V0cyBvbmx5CiBoYXZlIGV4dGVuc2lvbnMuCgogQWxsIGV4dGVuc2lvbnMgb2YgeW91ciB0eXBlIG11c3QgYmUgc2luZ3VsYXIgbWVzc2FnZXM7IGUuZy4gdGhleSBjYW5ub3QKIGJlIGludDMycywgZW51bXMsIG9yIHJlcGVhdGVkIG1lc3NhZ2VzLgoKIEJlY2F1c2UgdGhpcyBpcyBhbiBvcHRpb24sIHRoZSBhYm92ZSB0d28gcmVzdHJpY3Rpb25zIGFyZSBub3QgZW5mb3JjZWQgYnkKIHRoZSBwcm90b2NvbCBjb21waWxlci4KCg0KBQQLAgAEEgTNBAIKCg0KBQQLAgAFEgTNBAsPCg0KBQQLAgABEgTNBBAnCg0KBQQLAgADEgTNBCorCg0KBQQLAgAIEgTNBCw9Cg0KBQQLAgAHEgTNBDc8CusBCgQECwIBEgTSBAJGGtwBIERpc2FibGVzIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBzdGFuZGFyZCAiZGVzY3JpcHRvcigpIiBhY2Nlc3Nvciwgd2hpY2ggY2FuCiBjb25mbGljdCB3aXRoIGEgZmllbGQgb2YgdGhlIHNhbWUgbmFtZS4gIFRoaXMgaXMgbWVhbnQgdG8gbWFrZSBtaWdyYXRpb24KIGZyb20gcHJvdG8xIGVhc2llcjsgbmV3IGNvZGUgc2hvdWxkIGF2b2lkIGZpZWxkcyBuYW1lZCAiZGVzY3JpcHRvciIuCgoNCgUECwIBBBIE0gQCCgoNCgUECwIBBRIE0gQLDwoNCgUECwIBARIE0gQQLwoNCgUECwIBAxIE0gQyMwoNCgUECwIBCBIE0gQ0RQoNCgUECwIBBxIE0gQ/RAruAQoEBAsCAhIE2AQCMRrfASBJcyB0aGlzIG1lc3NhZ2UgZGVwcmVjYXRlZD8KIERlcGVuZGluZyBvbiB0aGUgdGFyZ2V0IHBsYXRmb3JtLCB0aGlzIGNhbiBlbWl0IERlcHJlY2F0ZWQgYW5ub3RhdGlvbnMKIGZvciB0aGUgbWVzc2FnZSwgb3IgaXQgd2lsbCBiZSBjb21wbGV0ZWx5IGlnbm9yZWQ7IGluIHRoZSB2ZXJ5IGxlYXN0LAogdGhpcyBpcyBhIGZvcm1hbGl6YXRpb24gZm9yIGRlcHJlY2F0aW5nIG1lc3NhZ2VzLgoKDQoFBAsCAgQSBNgEAgoKDQoFBAsCAgUSBNgECw8KDQoFBAsCAgESBNgEEBoKDQoFBAsCAgMSBNgEHR4KDQoFBAsCAggSBNgEHzAKDQoFBAsCAgcSBNgEKi8KCwoDBAsJEgTaBAITCgwKBAQLCQASBNoECwwKDQoFBAsJAAESBNoECwwKDQoFBAsJAAISBNoECwwKDAoEBAsJARIE2gQODwoNCgUECwkBARIE2gQODwoNCgUECwkBAhIE2gQODwoMCgQECwkCEgTaBBESCg0KBQQLCQIBEgTaBBESCg0KBQQLCQICEgTaBBESCqAGCgQECwIDEgTxBAIeGpEGIFdoZXRoZXIgdGhlIG1lc3NhZ2UgaXMgYW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgbWFwIGVudHJ5IHR5cGUgZm9yIHRoZQogbWFwcyBmaWVsZC4KCiBGb3IgbWFwcyBmaWVsZHM6CiAgICAgbWFwPEtleVR5cGUsIFZhbHVlVHlwZT4gbWFwX2ZpZWxkID0gMTsKIFRoZSBwYXJzZWQgZGVzY3JpcHRvciBsb29rcyBsaWtlOgogICAgIG1lc3NhZ2UgTWFwRmllbGRFbnRyeSB7CiAgICAgICAgIG9wdGlvbiBtYXBfZW50cnkgPSB0cnVlOwogICAgICAgICBvcHRpb25hbCBLZXlUeXBlIGtleSA9IDE7CiAgICAgICAgIG9wdGlvbmFsIFZhbHVlVHlwZSB2YWx1ZSA9IDI7CiAgICAgfQogICAgIHJlcGVhdGVkIE1hcEZpZWxkRW50cnkgbWFwX2ZpZWxkID0gMTsKCiBJbXBsZW1lbnRhdGlvbnMgbWF5IGNob29zZSBub3QgdG8gZ2VuZXJhdGUgdGhlIG1hcF9lbnRyeT10cnVlIG1lc3NhZ2UsIGJ1dAogdXNlIGEgbmF0aXZlIG1hcCBpbiB0aGUgdGFyZ2V0IGxhbmd1YWdlIHRvIGhvbGQgdGhlIGtleXMgYW5kIHZhbHVlcy4KIFRoZSByZWZsZWN0aW9uIEFQSXMgaW4gc3VjaCBpbXBsZW1lbnRhdGlvbnMgc3RpbGwgbmVlZCB0byB3b3JrIGFzCiBpZiB0aGUgZmllbGQgaXMgYSByZXBlYXRlZCBtZXNzYWdlIGZpZWxkLgoKIE5PVEU6IERvIG5vdCBzZXQgdGhlIG9wdGlvbiBpbiAucHJvdG8gZmlsZXMuIEFsd2F5cyB1c2UgdGhlIG1hcHMgc3ludGF4CiBpbnN0ZWFkLiBUaGUgb3B0aW9uIHNob3VsZCBvbmx5IGJlIGltcGxpY2l0bHkgc2V0IGJ5IHRoZSBwcm90byBjb21waWxlcgogcGFyc2VyLgoKDQoFBAsCAwQSBPEEAgoKDQoFBAsCAwUSBPEECw8KDQoFBAsCAwESBPEEEBkKDQoFBAsCAwMSBPEEHB0KJAoDBAsJEgTzBAINIhcgamF2YWxpdGVfc2VyaWFsaXphYmxlCgoMCgQECwkDEgTzBAsMCg0KBQQLCQMBEgTzBAsMCg0KBQQLCQMCEgTzBAsMCh8KAwQLCRIE9AQCDSISIGphdmFuYW5vX2FzX2xpdGUKCgwKBAQLCQQSBPQECwwKDQoFBAsJBAESBPQECwwKDQoFBAsJBAISBPQECwwK3QMKBAQLAgQSBIAFAlAazgMgRW5hYmxlIHRoZSBsZWdhY3kgaGFuZGxpbmcgb2YgSlNPTiBmaWVsZCBuYW1lIGNvbmZsaWN0cy4gIFRoaXMgbG93ZXJjYXNlcwogYW5kIHN0cmlwcyB1bmRlcnNjb3JlZCBmcm9tIHRoZSBmaWVsZHMgYmVmb3JlIGNvbXBhcmlzb24gaW4gcHJvdG8zIG9ubHkuCiBUaGUgbmV3IGJlaGF2aW9yIHRha2VzIGBqc29uX25hbWVgIGludG8gYWNjb3VudCBhbmQgYXBwbGllcyB0byBwcm90bzIgYXMKIHdlbGwuCgogVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGFzIGEgdGVtcG9yYXJ5IG1lYXN1cmUgYWdhaW5zdCBicm9rZW4gYnVpbGRzIGR1ZQogdG8gdGhlIGNoYW5nZSBpbiBiZWhhdmlvciBmb3IgSlNPTiBmaWVsZCBuYW1lIGNvbmZsaWN0cy4KCiBUT0RPIFRoaXMgaXMgbGVnYWN5IGJlaGF2aW9yIHdlIHBsYW4gdG8gcmVtb3ZlIG9uY2UgZG93bnN0cmVhbQogdGVhbXMgaGF2ZSBoYWQgdGltZSB0byBtaWdyYXRlLgoKDQoFBAsCBAQSBIAFAgoKDQoFBAsCBAUSBIAFCw8KDQoFBAsCBAESBIAFEDYKDQoFBAsCBAMSBIAFOTsKDQoFBAsCBAgSBIAFPE8KDgoGBAsCBAgDEgSABT1OCpECCgQECwIFEgSGBQIkGoICIEFueSBmZWF0dXJlcyBkZWZpbmVkIGluIHRoZSBzcGVjaWZpYyBlZGl0aW9uLgogV0FSTklORzogVGhpcyBmaWVsZCBzaG91bGQgb25seSBiZSB1c2VkIGJ5IHByb3RvYnVmIHBsdWdpbnMgb3Igc3BlY2lhbAogY2FzZXMgbGlrZSB0aGUgcHJvdG8gY29tcGlsZXIuIE90aGVyIHVzZXMgYXJlIGRpc2NvdXJhZ2VkIGFuZAogZGV2ZWxvcGVycyBzaG91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Z2xlIGxlbmd0aC1kZWxpbWl0ZWQgYmxvYi4gSW4gcHJvdG8zLCBvbmx5IGV4cGxpY2l0IHNldHRpbmcgaXQgdG8KIGZhbHNlIHdpbGwgYXZvaWQgdXNpbmcgcGFja2VkIGVuY29kaW5nLiAgVGhpcyBvcHRpb24gaXMgcHJvaGliaXRlZCBpbgogRWRpdGlvbnMsIGJ1dCB0aGUgYHJlcGVhdGVkX2ZpZWxkX2VuY29kaW5nYCBmZWF0dXJlIGNhbiBiZSB1c2VkIHRvIGNvbnRyb2wKIHRoZSBiZWhhdmlvci4KCg0KBQQMAgEEEgStBQIKCg0KBQQMAgEFEgStBQsPCg0KBQQMAgEBEgStBRAWCg0KBQQMAgEDEgStBRkaCpoFCgQEDAICEgS6BQIzGosFIFRoZSBqc3R5cGUgb3B0aW9uIGRldGVybWluZXMgdGhlIEphdmFTY3JpcHQgdHlwZSB1c2VkIGZvciB2YWx1ZXMgb2YgdGhlCiBmaWVsZC4gIFRoZSBvcHRpb24gaXMgcGVybWl0dGVkIG9ubHkgZm9yIDY0IGJpdCBpbnRlZ3JhbCBhbmQgZml4ZWQgdHlwZXMKIChpbnQ2NCwgdWludDY0LCBzaW50NjQsIGZpeGVkNjQsIHNmaXhlZDY0KS4gIEEgZmllbGQgd2l0aCBqc3R5cGUgSlNfU1RSSU5HCiBpcyByZXByZXNlbnRlZCBhcyBKYXZhU2NyaXB0IHN0cmluZywgd2hpY2ggYXZvaWRzIGxvc3Mgb2YgcHJlY2lzaW9uIHRoYXQKIGNhbiBoYXBwZW4gd2hlbiBhIGxhcmdlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBhIGZsb2F0aW5nIHBvaW50IEphdmFTY3JpcHQuCiBTcGVjaWZ5aW5nIEpTX05VTUJFUiBmb3IgdGhlIGpzdHlwZSBjYXVzZXMgdGhlIGdlbmVyYXRlZCBKYXZhU2NyaXB0IGNvZGUgdG8KIHVzZSB0aGUgSmF2YVNjcmlwdCAibnVtYmVyIiB0eXBlLiAgVGhlIGJlaGF2aW9yIG9mIHRoZSBkZWZhdWx0IG9wdGlvbgogSlNfTk9STUFMIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4KCiBUaGlzIG9wdGlvbiBpcyBhbiBlbnVtIHRvIHBlcm1pdCBhZGRpdGlvbmFsIHR5cGVzIHRvIGJlIGFkZGVkLCBlLmcuCiBnb29nLm1hdGguSW50ZWdlci4KCg0KBQQMAgIEEgS6BQIKCg0KBQQMAgIGEgS6BQsRCg0KBQQMAgIBEgS6BRIYCg0KBQQMAgIDEgS6BRscCg0KBQQMAgIIEgS6BR0yCg0KBQQMAgIHEgS6BSgxCg4KBAQMBAESBrsFAsQFAwoNCgUEDAQBARIEuwUHDQonCgYEDAQBAgASBL0FBBIaFyBVc2UgdGhlIGRlZmF1bHQgdHlwZS4KCg8KBwQMBAECAAESBL0FBA0KDwoHBAwEAQIAAhIEvQUQEQopCgYEDAQBAgESBMAFBBIaGSBVc2UgSmF2YVNjcmlwdCBzdHJpbmdzLgoKDwoHBAwEAQIBARIEwAUEDQoPCgcEDAQBAgECEgTABRARCikKBgQMBAECAhIEwwUEEhoZIFVzZSBKYXZhU2NyaXB0IG51bWJlcnMuCgoPCgcEDAQBAgIBEgTDBQQNCg8KBwQMBAECAgISBMMFEBEKmQoKBAQMAgMSBNwFAisaigogU2hvdWxkIHRoaXMgZmllbGQgYmUgcGFyc2VkIGxhemlseT8gIExhenkgYXBwbGllcyBvbmx5IHRvIG1lc3NhZ2UtdHlwZQogZmllbGRzLiAgSXQgbWVhbnMgdGhhdCB3aGVuIHRoZSBvdXRlciBtZXNzYWdlIGlzIGluaXRpYWxseSBwYXJzZWQsIHRoZQogaW5uZXIgbWVzc2FnZSdzIGNvbnRlbnRzIHdpbGwgbm90IGJlIHBhcnNlZCBidXQgaW5zdGVhZCBzdG9yZWQgaW4gZW5jb2RlZAogZm9ybS4gIFRoZSBpbm5lciBtZXNzYWdlIHdpbGwgYWN0dWFsbHkgYmUgcGFyc2VkIHdoZW4gaXQgaXMgZmlyc3QgYWNjZXNzZWQuCgogVGhpcyBpcyBvbmx5IGEgaGludC4gIEltcGxlbWVudGF0aW9ucyBhcmUgZnJlZSB0byBjaG9vc2Ugd2hldGhlciB0byB1c2UKIGVhZ2VyIG9yIGxhenkgcGFyc2luZyByZWdhcmRsZXNzIG9mIHRoZSB2YWx1ZSBvZiB0aGlzIG9wdGlvbi4gIEhvd2V2ZXIsCiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRydWUgc3VnZ2VzdHMgdGhhdCB0aGUgcHJvdG9jb2wgYXV0aG9yIGJlbGlldmVzIHRoYXQKIHVzaW5nIGxhenkgcGFyc2luZyBvbiB0aGlzIGZpZWxkIGlzIHdvcnRoIHRoZSBhZGRpdGlvbmFsIGJvb2trZWVwaW5nCiBvdmVyaGVhZCB0eXBpY2FsbHkgbmVlZGVkIHRvIGltcGxlbWVudCBpdC4KCiBUaGlzIG9wdGlvbiBkb2VzIG5vdCBhZmZlY3QgdGhlIHB1YmxpYyBpbnRlcmZhY2Ugb2YgYW55IGdlbmVyYXRlZCBjb2RlOwogYWxsIG1ldGhvZCBzaWduYXR1cmVzIHJlbWFpbiB0aGUgc2FtZS4gIEZ1cnRoZXJtb3JlLCB0aHJlYWQtc2FmZXR5IG9mIHRoZQogaW50ZXJmYWNlIGlzIG5vdCBhZmZlY3RlZCBieSB0aGlzIG9wdGlvbjsgY29uc3QgbWV0aG9kcyByZW1haW4gc2FmZSB0bwogY2FsbCBmcm9tIG11bHRpcGxlIHRocmVhZHMgY29uY3VycmVudGx5LCB3aGlsZSBub24tY29uc3QgbWV0aG9kcyBjb250aW51ZQogdG8gcmVxdWlyZSBleGNsdXNpdmUgYWNjZXNzLgoKIE5vdGUgdGhhdCBsYXp5IG1lc3NhZ2UgZmllbGRzIGFyZSBzdGlsbCBlYWdlcmx5IHZlcmlmaWVkIHRvIGNoZWNrCiBpbGwtZm9ybWVkIHdpcmVmb3JtYXQgb3IgbWlzc2luZyByZXF1aXJlZCBmaWVsZHMuIENhbGxpbmcgSXNJbml0aWFsaXplZCgpCiBvbiB0aGUgb3V0ZXIgbWVzc2FnZSB3b3VsZCBmYWlsIGlmIHRoZSBpbm5lciBtZXNzYWdlIGhhcyBtaXNzaW5nIHJlcXVpcmVkCiBmaWVsZHMuIEZhaWxlZCB2ZXJpZmljYXRpb24gd291bGQgcmVzdWx0IGluIHBhcnNpbmcgZmFpbHVyZSAoZXhjZXB0IHdoZW4KIHVuaW5pdGlhbGl6ZWQgbWVzc2FnZXMgYXJlIGFjY2VwdGFibGUpLgoKDQoFBAwCAwQSBNwFAgoKDQoFBAwCAwUSBNwFCw8KDQoFBAwCAwESBNwFEBQKDQoFBAwCAwMSBNwFFxgKDQoFBAwCAwgSBNwFGSoKDQoFBAwCAwcS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Gk0gQ2xpZW50cyBjYW4gZGVmaW5lIGN1c3RvbSBvcHRpb25zIGluIGV4dGVuc2lvbnMgb2YgdGhpcyBtZXNzYWdlLiBTZWUgYWJvdmUuCgoMCgQEEAUAEgSbBw0YCg0KBQQQBQABEgSbBw0RCg0KBQQQBQACEgSbBxUYCgwKAgQREgaeBwDBBwEKCwoDBBEBEgSeBwgVCtYDCgQEEQIAEgSpBwIyGtwBIElzIHRoaXMgbWV0aG9kIGRlcHJlY2F0ZWQ/CiBEZXBlbmRpbmcgb24gdGhlIHRhcmdldCBwbGF0Zm9ybSwgdGhpcyBjYW4gZW1pdCBEZXByZWNhdGVkIGFubm90YXRpb25zCiBmb3IgdGhlIG1ldGhvZCwgb3IgaXQgd2lsbCBiZSBjb21wbGV0ZWx5IGlnbm9yZWQ7IGluIHRoZSB2ZXJ5IGxlYXN0LAogdGhpcyBpcyBhIGZvcm1hbGl6YXRpb24gZm9yIGRlcHJlY2F0aW5nIG1ldGhvZHMuCjLoASBOb3RlOiAgRmllbGQgbnVtYmVycyAxIHRocm91Z2ggMzIgYXJlIHJlc2VydmVkIGZvciBHb29nbGUncyBpbnRlcm5hbCBSUEMKICAgZnJhbWV3b3JrLiAgV2UgYXBvbG9naXplIGZvciBob2FyZGluZyB0aGVzZSBudW1iZXJzIHRvIG91cnNlbHZlcywgYnV0CiAgIHdlIHdlcmUgYWxyZWFkeSB1c2luZyB0aGVtIGxvbmcgYmVmb3JlIHdlIGRlY2lkZWQgdG8gcmVsZWFzZSBQcm90b2NvbAogICBCdWZmZXJzLgoKDQoFBBECAAQSBKkHAgoKDQoFBBECAAUSBKkHCw8KDQoFBBECAAESBKkHEBoKDQoFBBECAAMSBKkHHR8KDQoFBBECAAgSBKkHIDEKDQoFBBECAAcSBKkHKzAK8AEKBAQRBAASBq4HArIHAxrfASBJcyB0aGlzIG1ldGhvZCBzaWRlLWVmZmVjdC1mcmVlIChvciBzYWZlIGluIEhUVFAgcGFybGFuY2UpLCBvciBpZGVtcG90ZW50LAogb3IgbmVpdGhlcj8gSFRUUCBiYXNlZCBSUEMgaW1wbGVtZW50YXRpb24gbWF5IGNob29zZSBHRVQgdmVyYiBmb3Igc2FmZQogbWV0aG9kcywgYW5kIFBVVCB2ZXJiIGZvciBpZGVtcG90ZW50IG1ldGhvZHMgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBQT1NULgoKDQoFBBEEAAESBK4HBxcKDgoGBBEEAAIAEgSvBwQcCg8KBwQRBAACAAESBK8HBBcKDwoHBBEEAAIAAhIErwcaGwokCgYEEQQAAgESBLAHBBgiFCBpbXBsaWVzIGlkZW1wb3RlbnQKCg8KBwQRBAACAQESBLAHBBMKDwoHBBEEAAIBAhIEsAcWFwo3CgYEEQQAAgISBLEHBBMiJyBpZGVtcG90ZW50LCBidXQgbWF5IGhhdmUgc2lkZSBlZmZlY3RzCgoPCgcEEQQAAgIBEgSxBwQOCg8KBwQRBAACAgISBLEHERIKDgoEBBECARIGswcCtAcmCg0KBQQRAgEEEgSzBwIKCg0KBQQRAgEGEgSzBwsbCg0KBQQRAgEBEgSzBxwtCg0KBQQRAgEDEgSzBzAyCg0KBQQRAgEIEgS0BwYlCg0KBQQRAgEHEgS0BxEkCpECCgQEEQICEgS6BwIkGoICIEFueSBmZWF0dXJlcyBkZWZpbmVkIGluIHRoZSBzcGVjaWZpYyBlZGl0aW9uLgogV0FSTklORzogVGhpcyBmaWVsZCBzaG91bGQgb25seSBiZSB1c2VkIGJ5IHByb3RvYnVmIHBsdWdpbnMgb3Igc3BlY2lhbAogY2FzZXMgbGlrZSB0aGUgcHJvdG8gY29tcGlsZXIuIE90aGVyIHVzZXMgYXJlIGRpc2NvdXJhZ2VkIGFuZAogZGV2ZWxvcGVycyBzaG91bGQgcmVseSBvbiB0aGUgcHJvdG9yZWZsZWN0IEFQSXMgZm9yIHRoZWlyIGNsaWVudCBsYW5ndWFnZS4KCg0KBQQRAgIEEgS6BwIKCg0KBQQRAgIGEgS6BwsVCg0KBQQRAgIBEgS6BxYeCg0KBQQRAgIDEgS6ByEjCk8KBAQRAgMSBL0HAjoaQSBUaGUgcGFyc2VyIHN0b3JlcyBvcHRpb25zIGl0IGRvZXNuJ3QgcmVjb2duaXplIGhlcmUuIFNlZSBhYm92ZS4KCg0KBQQRAgMEEgS9BwIKCg0KBQQRAgMGEgS9BwseCg0KBQQRAgMBEgS9Bx8zCg0KBQQRAgMDEgS9BzY5CloKAwQRBRIEwAcCGRpNIENsaWVudHMgY2FuIGRlZmluZSBjdXN0b20gb3B0aW9ucyBpbiBleHRlbnNpb25zIG9mIHRoaXMgbWVzc2FnZS4gU2VlIGFib3ZlLgoKDAoEBBEFABIEwAcNGAoNCgUEEQUAARIEwAcNEQoNCgUEEQUAAhIEwAcVGAqLAwoCBBISBskHAN0HARr8AiBBIG1lc3NhZ2UgcmVwcmVzZW50aW5nIGEgb3B0aW9uIHRoZSBwYXJzZXIgZG9lcyBub3QgcmVjb2duaXplLiBUaGlzIG9ubHkKIGFwcGVhcnMgaW4gb3B0aW9ucyBwcm90b3MgY3JlYXRlZCBieSB0aGUgY29tcGlsZXI6OlBhcnNlciBjbGFzcy4KIERlc2NyaXB0b3JQb29sIHJlc29sdmVzIHRoZXNlIHdoZW4gYnVpbGRpbmcgRGVzY3JpcHRvciBvYmplY3RzLiBUaGVyZWZvcmUsCiBvcHRpb25zIHByb3RvcyBpbiBkZXNjcmlwdG9yIG9iamVjdHMgKGUuZy4gcmV0dXJuZWQgYnkgRGVzY3JpcHRvcjo6b3B0aW9ucygpLAogb3IgcHJvZHVjZWQgYnkgRGVzY3JpcHRvcjo6Q29weVRvKCkpIHdpbGwgbmV2ZXIgaGF2ZSBVbmludGVycHJldGVkT3B0aW9ucwogaW4gdGhlbS4KCgsKAwQSARIEyQcIGwrLAgoEBBIDABIGzwcC0gcDGroCIFRoZSBuYW1lIG9mIHRoZSB1bmludGVycHJldGVkIG9wdGlvbi4gIEVhY2ggc3RyaW5nIHJlcHJlc2VudHMgYSBzZWdtZW50IGluCiBhIGRvdC1zZXBhcmF0ZWQgbmFtZS4gIGlzX2V4dGVuc2lvbiBpcyB0cnVlIGlmZiBhIHNlZ21lbnQgcmVwcmVzZW50cyBhbgogZXh0ZW5zaW9uIChkZW5vdGVkIHdpdGggcGFyZW50aGVzZXMgaW4gb3B0aW9ucyBzcGVjcyBpbiAucHJvdG8gZmlsZXMpLgogRS5nLix7IFsiZm9vIiwgZmFsc2VdLCBbImJhci5iYXoiLCB0cnVlXSwgWyJtb28iLCBmYWxzZV0gfSByZXByZXNlbnRzCiAiZm9vLihiYXIuYmF6KS5tb28iLgoKDQoFBBIDAAESBM8HChIKDgoGBBIDAAIAEgTQBwQiCg8KBwQSAwACAAQSBNAHBAwKDwoH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IFdlIGhhdmUgdGhlIGZvbGxvd2luZyBsb2NhdGlvbnM6CiAgIHNwYW4gICBwYXRoICAgICAgICAgICAgICAgcmVwcmVzZW50cwogICBbYSxpKSAgWyA0LCAwLCAyLCAwIF0gICAgIFRoZSB3aG9sZSBmaWVsZCBkZWZpbml0aW9uLgogICBbYSxiKSAgWyA0LCAwLCAyLCAwLCA0IF0gIFRoZSBsYWJlbCAob3B0aW9uYWwpLgogICBbYyxkKSAgWyA0LCAwLCAyLCAwLCA1IF0gIFRoZSB0eXBlIChzdHJpbmcpLgogICBbZSxmKSAgWyA0LCAwLCAyLCAwLCAxIF0gIFRoZSBuYW1lIChmb28pLgogICBbZyxoKSAgWyA0LCAwLCAyLCAwLCAzIF0gIFRoZSBudW1iZXIgKDEpLgoKIE5vdGVzOgogLSBBIGxvY2F0aW9uIG1heSByZWZlciB0byBhIHJlcGVhdGVkIGZpZWxkIGl0c2VsZiAoaS5lLiBub3QgdG8gYW55CiAgIHBhcnRpY3VsYXIgaW5kZXggd2l0aGluIGl0KS4gIFRoaXMgaXMgdXNlZCB3aGVuZXZlciBhIHNldCBvZiBlbGVtZW50cyBhcmUKICAgbG9naWNhbGx5IGVuY2xvc2VkIGluIGEgc2luZ2xlIGNvZGUgc2VnbWVudC4gIEZvciBleGFtcGxlLCBhbiBlbnRpcmUKICAgZXh0ZW5kIGJsb2NrIChwb3NzaWJseSBjb250YWluaW5nIG11bHRpcGxlIGV4dGVuc2lvbiBkZWZpbml0aW9ucykgd2lsbAogICBoYXZlIGFuIG91dGVyIGxvY2F0aW9uIHdob3NlIHBhdGggcmVmZXJzIHRvIHRoZSAiZXh0ZW5zaW9ucyIgcmVwZWF0ZWQKICAgZmllbGQgd2l0aG91dCBhbiBpbmRleC4KIC0gTXVsdGlwbGUgbG9jYXRpb25zIG1heSBoYXZlIHRoZSBzYW1lIHBhdGguICBUaGlzIGhhcHBlbnMgd2hlbiBhIHNpbmdsZQogICBsb2dpY2FsIGRlY2xhcmF0aW9uIGlzIHNwcmVhZCBvdXQgYWNyb3NzIG11bHRpcGxlIHBsYWNlcy4gIFRoZSBtb3N0CiAgIG9idmlvdXMgZXhhbXBsZSBpcyB0aGUgImV4dGVuZCIgYmxvY2sgYWdhaW4gLS0gdGhlcmUgbWF5IGJlIG11bHRpcGxlCiAgIGV4dGVuZCBibG9ja3MgaW4gdGhlIHNhbWUgc2NvcGUsIGVhY2ggb2Ygd2hpY2ggd2lsbCBoYXZlIHRoZSBzYW1lIHBhdGguCiAtIEEgbG9jYXRpb24ncyBzcGFuIGlzIG5vdCBhbHdheXMgYSBzdWJzZXQgb2YgaXRzIHBhcmVudCdzIHNwYW4uICBGb3IKICAgZXhhbXBsZSwgdGhlICJleHRlbmRlZSIgb2YgYW4gZXh0ZW5zaW9uIGRlY2xhcmF0aW9uIGFwcGVhcnMgYXQgdGhlCiAgIGJlZ2lubmluZyBvZiB0aGUgImV4dGVuZCIgYmxvY2sgYW5kIGlzIHNoYXJlZCBieSBhbGwgZXh0ZW5zaW9ucyB3aXRoaW4KICAgdGhlIGJsb2NrLgogLSBKdXN0IGJlY2F1c2UgYSBsb2NhdGlvbidzIHNwYW4gaXMgYSBzdWJzZXQgb2Ygc29tZSBvdGhlciBsb2NhdGlvbidzIHNwYW4KICAgZG9lcyBub3QgbWVhbiB0aGF0IGl0IGlzIGEgZGVzY2VuZGFudC4gIEZvciBleGFtcGxlLCBhICJncm91cCIgZGVmaW5lcwogICBib3RoIGEgdHlwZSBhbmQgYSBmaWVsZCBpbiBhIHNpbmdsZSBkZWNsYXJhdGlvbi4gIFRodXMsIHRoZSBsb2NhdGlvbnMKICAgY29ycmVzcG9uZGluZyB0byB0aGUgdHlwZSBhbmQgZmllbGQgYW5kIHRoZWlyIGNvbXBvbmVudHMgd2lsbCBvdmVybGFwLgogLSBDb2RlIHdoaWNoIHRyaWVzIHRvIGludGVycHJldCBsb2NhdGlvbnMgc2hvdWxkIHByb2JhYmx5IGJlIGRlc2lnbmVkIHRvCiAgIGlnbm9yZSB0aG9zZSB0aGF0IGl0IGRvZXNuJ3QgdW5kZXJzdGFuZCwgYXMgbW9yZSB0eXBlcyBvZiBsb2NhdGlvbnMgY291bGQKICAgYmUgcmVjb3JkZWQgaW4gdGhlIGZ1dHVyZS4KCg0KBQQVAgAEEgS2CQIKCg0KBQQVAgAGEgS2CQsTCg0KBQQVAgABEgS2CRQcCg0KBQQVAgADEgS2CR8gCg4KBAQVAwASBrcJAooKAwoNCgUEFQMAARIEtwkKEgqKBwoGBBUDAAIAEgTPCQQsGvkGIElkZW50aWZpZXMgd2hpY2ggcGFydCBvZiB0aGUgRmlsZURlc2NyaXB0b3JQcm90byB3YXMgZGVmaW5lZCBhdCB0aGlzCiBsb2NhdGlvbi4KCiBFYWNoIGVsZW1lbnQgaXMgYSBmaWVsZCBudW1iZXIgb3IgYW4gaW5kZXguICBUaGV5IGZvcm0gYSBwYXRoIGZyb20KIHRoZSByb290IEZpbGVEZXNjcmlwdG9yUHJvdG8gdG8gdGhlIHBsYWNlIHdoZXJlIHRoZSBkZWZpbml0aW9uIGFwcGVhcnMuCiBGb3IgZXhhbXBsZSwgdGhpcyBwYXRoOgogICBbIDQsIDMsIDIsIDcsIDEgXQogcmVmZXJzIHRvOgogICBmaWxlLm1lc3NhZ2VfdHlwZSgzKSAgLy8gNCwgMwogICAgICAgLmZpZWxkKDcpICAgICAgICAgLy8gMiwgNwogICAgICAgLm5hbWUoKSAgICAgICAgICAgLy8gMQogVGhpcyBpcyBiZWNhdXNlIEZpbGVEZXNjcmlwdG9yUHJvdG8ubWVzc2FnZV90eXBlIGhhcyBmaWVsZCBudW1iZXIgNDoKICAgcmVwZWF0ZWQgRGVzY3JpcHRvclByb3RvIG1lc3NhZ2VfdHlwZSA9IDQ7CiBhbmQgRGVzY3JpcHRvclByb3RvLmZpZWxkIGhhcyBmaWVsZCBudW1iZXIgMjoKICAgcmVwZWF0ZWQgRmllbGREZXNjcmlwdG9yUHJvdG8gZmllbGQgPSAyOwogYW5kIEZpZWxkRGVzY3JpcHRvclByb3RvLm5hbWUgaGFzIGZpZWxkIG51bWJlciAxOgogICBvcHRpb25hbCBzdHJpbmcgbmFtZSA9IDE7CgogVGh1cywgdGhlIGFib3ZlIHBhdGggZ2l2ZXMgdGhlIGxvY2F0aW9uIG9mIGEgZmllbGQgbmFtZS4gIElmIHdlIHJlbW92ZWQKIHRoZSBsYXN0IGVsZW1lbnQ6CiAgIFsgNCwgMywgMiwgNyBdCiB0aGlzIHBhdGggcmVmZXJzIHRvIHRoZSB3aG9sZSBmaWVsZCBkZWNsYXJhdGlvbiAoZnJvbSB0aGUgYmVnaW5uaW5nCiBvZiB0aGUgbGFiZWwgdG8gdGhlIHRlcm1pbmF0aW5nIHNlbWljb2xvbikuCgoPCgcEFQMAAgAEEgTPCQQMCg8KBwQVAwACAAUSBM8JDRIKDwoHBBUDAAIAARIEzwkTFwoPCgcEFQMAAgADEgTPCRobCg8KBwQVAwACAAgSBM8JHCsKEAoIBBUDAAIACAISBM8JHSoK0gIKBgQVAwACARIE1gkELBrBAiBBbHdheXMgaGFzIGV4YWN0bHkgdGhyZWUgb3IgZm91ciBlbGVtZW50czogc3RhcnQgbGluZSwgc3RhcnQgY29sdW1uLAogZW5kIGxpbmUgKG9wdGlvbmFsLCBvdGhlcndpc2UgYXNzdW1lZCBzYW1lIGFzIHN0YXJ0IGxpbmUpLCBlbmQgY29sdW1uLgogVGhlc2UgYXJlIHBhY2tlZCBpbnRvIGEgc2luZ2xlIGZpZWxkIGZvciBlZmZpY2llbmN5LiAgTm90ZSB0aGF0IGxpbmUKIGFuZCBjb2x1bW4gbnVtYmVycyBhcmUgemVyby1iYXNlZCAtLSB0eXBpY2FsbHkgeW91IHdpbGwgd2FudCB0byBhZGQKIDEgdG8gZWFjaCBiZWZvcmUgZGlzcGxheWluZyB0byBhIHVzZXIuCgoPCgcEFQMAAgEEEgTWCQQMCg8KBwQVAwACAQUSBNYJDRIKDwoHBBUDAAIBARIE1gkTFwoPCgcEFQMAAgEDEgTWCRobCg8KBwQVAwACAQgSBNYJHCsKEAoIBBUDAAIBCAISBNYJHSoKpQwKBgQVAwACAhIEhwoEKRqUDCBJZiB0aGlzIFNvdXJjZUNvZGVJbmZvIHJlcHJlc2VudHMgYSBjb21wbGV0ZSBkZWNsYXJhdGlvbiwgdGhlc2UgYXJlIGFueQogY29tbWVudHMgYXBwZWFyaW5nIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGRlY2xhcmF0aW9uIHdoaWNoIGFwcGVhciB0byBiZQogYXR0YWNoZWQgdG8gdGhlIGRlY2xhcmF0aW9uLgoKIEEgc2VyaWVzIG9mIGxpbmUgY29tbWVudHMgYXBwZWFyaW5nIG9uIGNvbnNlY3V0aXZlIGxpbmVzLCB3aXRoIG5vIG90aGVyCiB0b2tlbnMgYXBwZWFyaW5nIG9uIHRob3NlIGxpbmVzLCB3aWxsIGJlIHRyZWF0ZWQgYXMgYSBzaW5nbGUgY29tbWVudC4KCiBsZWFkaW5nX2RldGFjaGVkX2NvbW1lbnRzIHdpbGwga2VlcCBwYXJhZ3JhcGhzIG9mIGNvbW1lbnRzIHRoYXQgYXBwZWFyCiBiZWZvcmUgKGJ1dCBub3QgY29ubmVjdGVkIHRvKSB0aGUgY3VycmVudCBlbGVtZW50LiBFYWNoIHBhcmFncmFwaCwKIHNlcGFyYXRlZCBieSBlbXB0eSBsaW5lcywgd2lsbCBiZSBvbmUgY29tbWVudCBlbGVtZW50IGluIHRoZSByZXBlYXRlZAogZmllbGQuCgogT25seSB0aGUgY29tbWVudCBjb250ZW50IGlzIHByb3ZpZGVkOyBjb21tZW50IG1hcmtlcnMgKGUuZy4gLy8pIGFyZQogc3RyaXBwZWQgb3V0LiAgRm9yIGJsb2NrIGNvbW1lbnRzLCBsZWFkaW5nIHdoaXRlc3BhY2UgYW5kIGFuIGFzdGVyaXNrCiB3aWxsIGJlIHN0cmlwcGVkIGZyb20gdGhlIGJlZ2lubmluZyBvZiBlYWNoIGxpbmUgb3RoZXIgdGhhbiB0aGUgZmlyc3QuCiBOZXdsaW5lcyBhcmUgaW5jbHVkZWQgaW4gdGhlIG91dHB1dC4KCiBFeGFtcGxlczoKCiAgIG9wdGlvbmFsIGludDMyIGZvbyA9IDE7ICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIGZvby4KICAgLy8gQ29tbWVudCBhdHRhY2hlZCB0byBiYXIuCiAgIG9wdGlvbmFsIGludDMyIGJhciA9IDI7CgogICBvcHRpb25hbCBzdHJpbmcgYmF6ID0gMzsKICAgLy8gQ29tbWVudCBhdHRhY2hlZCB0byBiYXouCiAgIC8vIEFub3RoZXIgbGluZSBhdHRhY2hlZCB0byBiYXouCgogICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIG1vby4KICAgLy8KICAgLy8gQW5vdGhlciBsaW5lIGF0dGFjaGVkIHRvIG1vby4KICAgb3B0aW9uYWwgZG91YmxlIG1vbyA9IDQ7CgogICAvLyBEZXRhY2hlZCBjb21tZW50IGZvciBjb3JnZS4gVGhpcyBpcyBub3QgbGVhZGluZyBvciB0cmFpbGluZyBjb21tZW50cwogICAvLyB0byBtb28gb3IgY29yZ2Ug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ZWxkMRIhCgtvbmVvZl9maWVsZBgCIAEoBUgAUgpvbmVvZkZpZWxkIlMKBkFuRW51bRIWChJBTkVOVU1fVU5TUEVDSUZJRUQQABIPCgtBTkVOVU1fVkFMMRABEhYKC0FORU5VTV9WQUwyEAIaBbCG+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+BgoBDBIDFAASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjLTASBBdXRob3I6IGJlbmp5QGdvb2dsZS5jb20gKEJlbmp5IFdlaW5iZXJnZXIpCiAgQmFzZWQgb24gb3JpZ2luYWwgUHJvdG9jb2wgQnVmZmVycyBkZXNpZ24gYnkKICBTYW5qYXkgR2hlbWF3YXQsIEplZmYgRGVhbiwgYW5kIG90aGVycy4KCiBBIHByb3RvIGZpbGUgdXNlZCB0byB0ZXN0IHRoZSAiY3VzdG9tIG9wdGlvbnMiIGZlYXR1cmUgb2YgZ29vZ2xlLnByb3RvYnVmLgoy0QIgVGhpcyBmaWxlIGlzIGJhc2VkIG9uIHVuaXR0ZXN0X2N1c3RvbV9vcHRpb25zLnByb3RvIGluCiBzcmMvZ29vZ2xlL3Byb3RvYnVmLCBidXQgaXMgbW9kaWZpZWQgZm9yIHByb3RvMy4gSXQgY291bGQKIHBvdGVudGlhbGx5IGJlIG1vdmVkIGludG8gc3JjL2dvb2dsZS9wcm90b2J1ZiwgYnV0IGN1cnJlbnRseSBDIwogaXMgdGhlIG9ubHkgbGFuZ3VhZ2UgdGhhdCByZWFsbHkgbmVlZHMgaXQsIGFzIHdlIGRvbid0IHN1cHBvcnQKIHByb3RvMiBzeW50YXguIEl0J3MgY3V0IGRvd24gc2lnbmlmaWNhbnRseSBhcyBwcm90bzMgb25seSBzdXBwb3J0cwogZXh0ZW5zaW9ucyBmb3Igb3B0aW9ucy4KCggKAQgSAxcAIAo1CgUIjp3YAxIDFwAgGicgQSBjdXN0b20gZmlsZSBvcHRpb24gKGRlZmluZWQgYmVsb3cpLgoKCQoCAwASAxkAKgqgAQoBAhIDHQAa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BM4CGzNiBnByb3RvMwrgBAoqY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHVibGljLnByb3RvEh9wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yIiMKE1B1YmxpY0ltcG9ydE1lc3NhZ2USDAoBZRgBIAEoBVIBZUIkqgIhR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3MuUHJvdG8ySsUDCgYSBAkAEQEKvgIKAQwSAwkAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyKCBBdXRob3I6IGxpdWppc2lAZ29vZ2xlLmNvbSAoUGhlcmwgTGl1KQoKCAoBAhIDCwAoCggKAQgSAw0APgoJCgIIJRIDDQA+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//wEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IMdGVzdEFsbFR5cGVzOoQBCiV0ZXN0X2V4dGVuc2lvbl9pbnNpZGVfdGFibGVfZXh0ZW5zaW9uEjIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RFeHRlbnNpb25JbnNpZGVUYWJsZRgFIAEoBVIhdGVzdEV4dGVuc2lvbkluc2lkZVRhYmxlRXh0ZW5zaW9uQjJIAYABAYgBAZABAfgBAaoCIUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLlByb3RvMkrJrAMKBxIFDwDGCAEK6gMKAQwSAw8AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoy0wEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdlIHdpbGwgdXNlIGZvciB1bml0IHRlc3RpbmcuCgogTElOVDogQUxMT1dfR1JPVVBTLCBMRUdBQ1lfTkFNRVMKCggKAQgSAxMAIgqAAQoCCBASAxMAIhpnIFNvbWUgZ2VuZXJpY19zZXJ2aWNlcyBvcHRpb24ocykgYWRkZWQgYXV0b21hdGljYWxseS4KIFNlZTogIGh0dHA6Ly9nby9wcm90bzItZ2VuZXJpYy1zZXJ2aWNlcy1kZWZhdWx0CiIMIGF1dG8tYWRkZWQKCggKAQgSAxQAJAoXCgIIERIDFAAkIgwgYXV0by1hZGRlZAoKCAoBCBIDFQAiChcKAggSEgMVACIiDCBhdXRvLWFkZGVkCgoICgEIEgMWAB8KCQoCCB8SAxYAHwoJCgIDABIDGAAtCuYBCgECEgMdACEa2wEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBuYW1lc3BhY2UuCiBJbiB0ZXN0X3V0aWwuaCB3ZSBkbyAidXNpbmcgbmFtZXNwYWNlIHVuaXR0ZXN0ID0gcHJvdG9idWZfdW5pdHRlc3QiLgoKCAoBCBIDIgAcCuIBCgIICRIDIgAcGtYBIFByb3RvcyBvcHRpbWl6ZWQgZm9yIFNQRUVEIHVzZSBhIHN0cmljdCBzdXBlcnNldCBvZiB0aGUgZ2VuZXJhdGVkIGNvZGUKIG9mIGVxdWl2YWxlbnQgb25lcyBvcHRpbWl6ZWQgZm9yIENPREVfU0laRSwgc28gd2Ugc2hvdWxkIG9wdGltaXplIGFsbCBvdXIKIHRlc3RzIGZvciBzcGVlZCB1bmxlc3MgZXhwbGljaXRs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Y2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAGAoICgEIEgMLADcKCQoCCCUSAwsANwrEAQoCAwASAxEAKjK4ASBUaGlzIGZpbGUgaXMgdXNlZCBhcyBwYXJ0IG9mIGEgdW5pdCB0ZXN0IGZvciBpc3N1ZSA2OTM2CiBXZSBkb24ndCBuZWVkIHRvIHVzZSBpdCwgd2UganVzdCBoYXZlIHRvIGltcG9ydCBpdCBpbiBib3RoCiAiZXh0ZW5zaW9uc19pc3N1ZTY5MzZfYi5wcm90byIgYW5kICJleHRlbnNpb25zX2lzc3VlNjkzNl9jLnByb3RvIgoKCQoBBxIEEwAVAQoJCgIHABIDFAIVCgoKAwcAAhIDEwclCgoKAwcABRIDFAIICgoKAwcAARIDFAkMCgoKAwcAAxIDFA8UYgZwcm90bzMKrQUKKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2IucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYS5wcm90byIOCgNGb286B4K1GANmb29CHaoCGlVuaXRUZXN0Lklzc3Vlcy5UZXN0UHJvdG9zSo4ECgYSBAcAFQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAYCgkKAgMAEgMLADIKCAoBCBIDDQA3CgkKAgglEgMNADcKmwEKAgQAEgQTABUBMo4BIFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gaW1wb3J0IGl0IGluCiAidW5pdHRlc3RfaXNzdWU2OTM2X2MucHJvdG8iCgoKCgMEAAESAxMICwoKCgMEAAcSAxQCFwoNCgYEAAfQhgMSAxQCF2IGcHJvdG8zCqgGCihjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2lzc3VlNjkzNl9jLnByb3RvEg91bml0dGVzdF9pc3N1ZXMaKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2EucHJvdG8aKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2IucHJvdG8iNgoDQmFyEiYKA2ZvbxgBIAEoCzIULnVuaXR0ZXN0X2lzc3Vlcy5Gb29SA2ZvbzoHgrUYA2JhckIdqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3NKtwQKBhIEBwAXAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABgKCQoCAwASAwsAMgoJCgIDARIDDAAyCggKAQgSAw4ANwoJCgIIJRIDDgA3CoIBCgIEABIEEwAXATJ2IFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gbG9hZCBpdCBhdCBydW50aW1lCgoKCgMEAAESAxMICwoKCgMEAAcSAxQCFwoNCgYEAAfQhgMSAxQCFwoLCgQEAAIAEgMWAg4KDAoFBAACAAYSAxYCBQoMCgUEAAIAARIDFgYJCgwKBQQAAgADEgMWDA1iBnByb3RvMwq7Dgo0Y3NoYXJwL3Byb3Rvcy91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5wcm90bxIpcHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMaIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlwdG9yLnByb3RvIlkKCkZvb09wdGlvbnMSJgoHaW50X29wdBgBIAEoBUINyj4KCAHAPgLKPgIIA1IGaW50T3B0EhgKA2ZvbxgCIAEoBUIGyj4DENIJUgNmb28qCQjoBxCAgICAAjpFCgtiYXJfb3B0aW9ucxIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMY6AcgASgFQgTAPtIJUgpiYXJPcHRpb25zOnYKC2Zvb19vcHRpb25zEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxjpByABKAsyNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zUgpmb29PcHRpb25zOlYKC2Zvb19pbnRfb3B0EjUucHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMuRm9vT3B0aW9ucxjoByABKAVSCWZvb0ludE9wdDqNAQoLZm9vX2Zvb19vcHQSNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zGOkHIAEoCzI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlvbnNSCWZvb0Zvb09wdEI0qgIxVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3MuU2VsZnJlZmVyZW50aWFsT3B0aW9uc0r9CAoGEgQHACcBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAMgoJCgIDABIDCwAqCggKAQgSAw0ATgoJCgIIJRIDDQBOCgoKAgQAEgQPABsBCgoKAwQAARIDDwgSClAKBAQAAgASBBECFQUaQiBDdXN0b20gZmllbGQgb3B0aW9uIHVzZWQgaW4gZGVmaW5pdGlvbiBvZiB0aGUgZXh0ZW5zaW9uIG1lc3NhZ2UuCgoMCgUEAAIABBIDEQIKCgwKBQQAAgAFEgMRCxAKDAoFBAACAAESAxERGAoMCgUEAAIAAxIDERscCg0KBQQAAgAIEgQRHRUECg8KBwQAAgAI6QcSBBEeFQMKVQoEBAACARIDGAI5GkggQ3VzdG9tIGZpZWxkIG9wdGlvbiB1c2VkIGluIGRlZmluaXRpb24gb2YgdGhlIGN1c3RvbSBvcHRpb24ncyBtZXNzYWdlLgoKDAoFBAACAQQSAxgCCgoMCgUEAAIBBRIDGAsQCgwKBQQAAgEBEgMYERQKDAoFBAACAQMSAxgXGAoMCgUEAAIBCBIDGBk4Cg4KBwQAAgEI6QcSAxgaNwoKCgMEAAUSAxoCGQoLCgQEAAUAEgMaDRgKDAoFBAAFAAESAxoNEQoMCgUEAAUAAhIDGhUYCgkKAQcSBB0AIgEKTQoCBwASAx8COxpCIEN1c3RvbSBmaWVsZCBvcHRpb24gdXNlZCBvbiB0aGUgZGVmaW5pdGlvbiBvZiB0aGF0IGZpZWxkIG9wdGlvbi4KCgoKAwcAAhIDHQcjCgoKAwcABBIDHwIKCgoKAwcABRIDHwsQCgoKAwcAARIDHxEcCgoKAwcAAxIDHx8jCgoKAwcACBIDHyQ6CgwKBQcACOgHEgMfJTkKCQoCBwESAyECKQoKCgMHAQISAx0HIwoKCgMHAQQSAyECCgoKCgMHAQYSAyELFQoKCgMHAQESAyEWIQoKCgMHAQMSAyEkKAoJCgEHEgQkACcBCgkKAgcCEgMlAiQKCgoDBwICEgMkBxEKCgoDBwIEEgMlAgoKCgoDBwIFEgMlCxAKCgoDBwIBEgMlERwKCgoDBwIDEgMlHyMKCQoCBwMSAyYCKQoKCgMHAwISAyQHEQoKCgMHAwQSAyYCCgoKCgMHAwYSAyYLFQoKCgMHAwESAyYWIQoKCgMHAwMSAyYkKArELgoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjYKA0FueRIZCgh0eXBlX3VybBgBIAEoCVIHdHlwZVVybBIUCgV2YWx1ZRgCIAEoDFIFdmFsdWVCdgoTY29tLmdvb2dsZS5wcm90b2J1ZkIIQW55UHJvdG9QAVosZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vYW55cGKiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK3SwKBxIFHgChAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAEMKCQoCCAsSAyIAQwoICgEIEgMjACwKCQoCCAESAyMALAoICgEIEgMkACkKCQoCCAgSAyQAKQoICgEIEgMlACIKCQoCCAoSAyUAIgoICgEIEgMmACEKCQoCCCQSAyYAIQoICgEIEgMnADsKCQoCCCUSAycAOwr8EQoCBAASBX8AoQEBGu4RIGBBbnlgIGNvbnRhaW5zIGFuIGFyYml0cmFyeSBzZXJpYWxpemVkIHByb3RvY29sIGJ1ZmZlciBtZXNzYWdlIGFsb25nIHdpdGggYQogVVJMIHRoYXQgZGVzY3JpYmVzIHRoZSB0eXBlIG9mIHRoZSBzZXJpYWxpemVkIG1lc3NhZ2UuCgogUHJvdG9idWYgbGlicmFyeSBwcm92aWRlcyBzdXBwb3J0IHRvIHBhY2svdW5wYWNrIEFueSB2YWx1ZXMgaW4gdGhlIGZvcm0KIG9mIHV0aWxpdHkgZnVuY3Rpb25zIG9yIGFkZGl0aW9uYWwgZ2VuZXJhdGVkIG1ldGhvZHMgb2YgdGhlIEFueSB0eXBlLgoKIEV4YW1wbGUgMTogUGFjayBhbmQgdW5wYWNrIGEgbWVzc2FnZSBpbiBDKysuCgogICAgIEZvbyBmb28gPSAuLi47CiAgICAgQW55IGFueTsKICAgICBhbnkuUGFja0Zyb20oZm9vKTsKICAgICAuLi4KICAgICBpZiAoYW55LlVucGFja1RvKCZmb28pKSB7CiAgICAgICAuLi4KICAgICB9CgogRXhhbXBsZSAyOiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIEphdmEuCgogICAgIEZvbyBmb28gPSAuLi47CiAgICAgQW55IGFueSA9IEFueS5wYWNrKGZvbyk7CiAgICAgLi4uCiAgICAgaWYgKGFueS5pcyhGb28uY2xhc3MpKSB7CiAgICAgICBmb28gPSBhbnkudW5wYWNrKEZvby5jbGFzcyk7CiAgICAgfQogICAgIC8vIG9yIC4uLgogICAgIGlmIChhbnkuaXNTYW1lVHlwZUFzKEZvby5nZXREZWZhdWx0SW5zdGFuY2UoKSkpIHsKICAgICAgIGZvbyA9IGFueS51bnBhY2soRm9vLmdldERlZmF1bHRJbnN0YW5jZSgpKTsKICAgICB9CgogIEV4YW1wbGUgMzogUGFjayBhbmQgdW5wYWNrIGEgbWVzc2FnZSBpbiBQeXRob24uCgogICAgIGZvbyA9IEZvbyguLi4pCiAgICAgYW55ID0gQW55KCkKICAgICBhbnkuUGFjayhmb28pCiAgICAgLi4uCiAgICAgaWYgYW55LklzKEZvby5ERVNDUklQVE9SKToKICAgICAgIGFueS5VbnBhY2soZm9vKQogICAgICAgLi4uCgogIEV4YW1wbGUgNDogUGFjayBhbmQgdW5wYWNrIGEgbWVzc2FnZSBpbiBHbwoKICAgICAgZm9vIDo9ICZwYi5Gb297Li4ufQogICAgICBhbnksIGVyciA6PSBhbnlwYi5OZXcoZm9vKQogICAgICBpZiBlcnIgIT0gbmlsIHsKICAgICAgICAuLi4KICAgICAgfQogICAgICAuLi4KICAgICAgZm9vIDo9ICZwYi5Gb297fQogICAgICBpZiBlcnIgOj0gYW55LlVubWFyc2hhbFRvKGZvbyk7IGVyciAhPSBuaWwgewogICAgICAgIC4uLgogICAgICB9CgogVGhlIHBhY2sgbWV0aG9kcyBwcm92aWRlZCBieSBwcm90b2J1ZiBsaWJyYXJ5IHdpbGwgYnkgZGVmYXVsdCB1c2UKICd0eXBlLmdvb2dsZWFwaXMuY29tL2Z1bGwudHlwZS5uYW1lJyBhcyB0aGUgdHlwZSBVUkwgYW5kIHRoZSB1bnBhY2sKIG1ldGhvZHMgb25seSB1c2UgdGhlIGZ1bGx5IHF1YWxpZmllZCB0eXBlIG5hbWUgYWZ0ZXIgdGhlIGxhc3QgJy8nCiBpbiB0aGUgdHlwZSBVUkwsIGZvciBleGFtcGxlICJmb28uYmFyLmNvbS94L3kueiIgd2lsbCB5aWVsZCB0eXBlCiBuYW1lICJ5LnoiLgoKIEpTT04KID09PT0KIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIGFuIGBBbnlgIHZhbHVlIHVzZXMgdGhlIHJlZ3VsYXIKIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkZXNlcmlhbGl6ZWQsIGVtYmVkZGVkIG1lc3NhZ2UsIHdpdGggYW4KIGFkZGl0aW9uYWwgZmllbGQgYEB0eXBlYCB3aGljaCBjb250YWlucyB0aGUgdHlwZSBVUkwuIEV4YW1wbGU6CgogICAgIHBhY2thZ2UgZ29vZ2xlLnByb2ZpbGU7CiAgICAgbWVzc2FnZSBQZXJzb24gewogICAgICAgc3RyaW5nIGZpcnN0X25hbWUgPSAxOwogICAgICAgc3RyaW5nIGxhc3RfbmFtZSA9IDI7CiAgICAgfQoKICAgICB7CiAgICAgICAiQHR5cGUiOiAidHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucHJvZmlsZS5QZXJzb24iLAogICAgICAgImZpcnN0TmFtZSI6IDxzdHJpbmc+LAogICAgICAgImxhc3ROYW1lIjogPHN0cmluZz4KICAgICB9CgogSWYgdGhlIGVtYmVkZGVkIG1lc3NhZ2UgdHlwZSBpcyB3ZWxsLWtub3duIGFuZCBoYXMgYSBjdXN0b20gSlNPTgogcmVwcmVzZW50YXRpb24sIHRoYXQgcmVwcmVzZW50YXRpb24gd2lsbCBiZSBlbWJlZGRlZCBhZGRpbmcgYSBmaWVsZAogYHZhbHVlYCB3aGljaCBob2xkcyB0aGUgY3VzdG9tIEpTT04gaW4gYWRkaXRpb24gdG8gdGhlIGBAdHlwZWAKIGZpZWxkLiBFeGFtcGxlIChmb3IgbWVzc2FnZSBbZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uXVtdKToKCiAgICAgewogICAgICAgIkB0eXBlIjogInR5cGUuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uIiwKICAgICAgICJ2YWx1ZSI6ICIxLjIxMnMiCiAgICAgfQoKCgoKAwQAARIDfwgLCrwLCgQEAAIAEgSdAQIWGq0LIEEgVVJML3Jlc291cmNlIG5hbWUgdGhhdCB1bmlxdWVseSBpZGVudGlmaWVzIHRoZSB0eXBlIG9mIHRoZSBzZXJpYWxpemVkCiBwcm90b2NvbCBidWZmZXIgbWVzc2FnZS4gVGhpcyBzdHJpbmcgbXVzdCBjb250YWluIGF0IGxlYXN0CiBvbmUgIi8iIGNoYXJhY3Rlci4gVGhlIGxhc3Qgc2VnbWVudCBvZiB0aGUgVVJMJ3MgcGF0aCBtdXN0IHJlcHJlc2VudAogdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSB0eXBlIChhcyBpbgogYHBhdGgvZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uYCkuIFRoZSBuYW1lIHNob3VsZCBiZSBpbiBhIGNhbm9uaWNhbCBmb3JtCiAoZS5nLiwgbGVhZGluZyAiLiIgaXMgbm90IGFjY2VwdGVkKS4KCiBJbiBwcmFjdGljZSwgdGVhbXMgdXN1YWxseSBwcmVjb21waWxlIGludG8gdGhlIGJpbmFyeSBhbGwgdHlwZXMgdGhhdCB0aGV5CiBleHBlY3QgaXQgdG8gdXNlIGluIHRoZSBjb250ZXh0IG9mIEFueS4gSG93ZXZlciwgZm9yIFVSTHMgd2hpY2ggdXNlIHRoZQogc2NoZW1lIGBodHRwYCwgYGh0dHBzYCwgb3Igbm8gc2NoZW1lLCBvbmUgY2FuIG9wdGlvbmFsbHkgc2V0IHVwIGEgdHlwZQogc2VydmVyIHRoYXQgbWFwcyB0eXBlIFVSTHMgdG8gbWVzc2FnZSBkZWZpbml0aW9ucyBhcyBmb2xsb3dzOgoKICogSWYgbm8gc2NoZW1lIGlzIHByb3ZpZGVkLCBgaHR0cHNgIGlzIGFzc3VtZWQuCiAqIEFuIEhUVFAgR0VUIG9uIHRoZSBVUkwgbXVzdCB5aWVsZCBhIFtnb29nbGUucHJvdG9idWYuVHlwZV1bXQogICB2YWx1ZSBpbiBiaW5hcnkgZm9ybWF0LCBvciBwcm9kdWNlIGFuIGVycm9yLgogKiBBcHBsaWNhdGlvbnMgYXJlIGFsbG93ZWQgdG8gY2FjaGUgbG9va3VwIHJlc3VsdHMgYmFzZWQgb24gdGhlCiAgIFVSTCwgb3IgaGF2ZSB0aGVtIHByZWNvbXBpbGVkIGludG8gYSBiaW5hcnkgdG8gYXZvaWQgYW55CiAgIGxvb2t1cC4gVGhlcmVmb3JlLCBiaW5hcnkgY29tcGF0aWJpbGl0eSBuZWVkcyB0byBiZSBwcmVzZXJ2ZWQKICAgb24gY2hhbmdlcyB0byB0eXBlcy4gKFVzZSB2ZXJzaW9uZWQgdHlwZSBuYW1lcyB0byBtYW5hZ2UKICAgYnJlYWtpbmcgY2hhbmdlcy4pCgogTm90ZTogdGhpcyBmdW5jdGlvbmFsaXR5IGlzIG5vdCBjdXJyZW50bHkgYXZhaWxhYmxlIGluIHRoZSBvZmZpY2lhbAogcHJvdG9idWYgcmVsZWFzZSwgYW5kIGl0IGlzIG5vdCB1c2VkIGZvciB0eXBlIFVSTHMgYmVnaW5uaW5nIHdpdGgKIHR5cGUuZ29vZ2xlYXBpcy5jb20uIEFzIG9mIE1heSAyMDIzLCB0aGVyZSBhcmUgbm8gd2lkZWx5IHVzZWQgdHlwZSBzZXJ2ZXIKIGltcGxlbWVudGF0aW9ucyBhbmQgbm8gcGxhbnMgdG8gaW1wbGVtZW50IG9uZS4KCiBTY2hlbWVzIG90aGVyIHRoYW4gYGh0dHBgLCBgaHR0cHNgIChvciB0aGUgZW1wdHkgc2NoZW1lKSBtaWdodCBiZQogdXNlZCB3aXRoIGltcGxlbWVudGF0aW9uIHNwZWNpZmljIHNlbWFudGljcy4KCgoNCgUEAAIABRIEnQECCAoNCgUEAAIAARIEnQEJEQoNCgUEAAIAAxIEnQEUFQpXCgQEAAIBEgSgAQISGkkgTXVzdCBiZSBhIHZhbGlkIHNlcmlhbGl6ZWQgcHJvdG9jb2wgYnVmZmVyIG9mIHRoZSBhYm92ZSBzcGVjaWZpZWQgdHlwZS4KCg0KBQQAAgEFEgSgAQIHCg0KBQQAAgEBEgSgAQgNCg0KBQQAAgEDEgSgARARYgZwcm90bzMK1yUKHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjoKCER1cmF0aW9uEhgKB3NlY29uZHMYASABKANSB3NlY29uZHMSFAoFbmFub3MYAiABKAVSBW5hbm9zQoMBChNjb20uZ29vZ2xlLnByb3RvYnVmQg1EdXJhdGlvblByb3RvUAFaMWdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL2R1cmF0aW9ucGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK2SMKBhIEHgByAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAHwoJCgIIHxIDIgAfCggKAQgSAyMASAoJCgIICxIDIwBICggKAQgSAyQALAoJCgIIARIDJAAsCggKAQgSAyUALgoJCgIICBIDJQAuCggKAQgSAyYAIgoJCgIIChIDJgAiCggKAQgSAycAIQoJCgIIJBIDJwAhCggKAQgSAygAOwoJCgIIJRIDKAA7Cp0QCgIEABIEZQByARqQECBBIER1cmF0aW9uIHJlcHJlc2VudHMgYSBzaWduZWQsIGZpeGVkLWxlbmd0aCBzcGFuIG9mIHRpbWUgcmVwcmVzZW50ZWQKIGFzIGEgY291bnQgb2Ygc2Vjb25kcyBhbmQgZnJhY3Rpb25zIG9mIHNlY29uZHMgYXQgbmFub3NlY29uZAogcmVzb2x1dGlvbi4gSXQgaXMgaW5kZXBlbmRlbnQgb2YgYW55IGNhbGVuZGFyIGFuZCBjb25jZXB0cyBsaWtlICJkYXkiCiBvciAibW9udGgiLiBJdCBpcyByZWxhdGVkIHRvIFRpbWVzdGFtcCBpbiB0aGF0IHRoZSBkaWZmZXJlbmNlIGJldHdlZW4KIHR3byBUaW1lc3RhbXAgdmFsdWVzIGlzIGEgRHVyYXRpb24gYW5kIGl0IGNhbiBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkCiBmcm9tIGEgVGltZXN0YW1wLiBSYW5nZSBpcyBhcHByb3hpbWF0ZWx5ICstMTAsMDAwIHllYXJzLgoKICMgRXhhbXBsZXMKCiBFeGFtcGxlIDE6IENvbXB1dGUgRHVyYXRpb24gZnJvbSB0d28gVGltZXN0YW1wcyBpbiBwc2V1ZG8gY29kZS4KCiAgICAgVGltZXN0YW1wIHN0YXJ0ID0gLi4uOwogICAgIFRpbWVzdGFtcCBlbmQgPSAuLi47CiAgICAgRHVyYXRpb24gZHVyYXRpb24gPSAuLi47CgogICAgIGR1cmF0aW9uLnNlY29uZHMgPSBlbmQuc2Vjb25kcyAtIHN0YXJ0LnNlY29uZHM7CiAgICAgZHVyYXRpb24ubmFub3MgPSBlbmQubmFub3MgLSBzdGFydC5uYW5vczsKCiAgICAgaWYgKGR1cmF0aW9uLnNlY29uZHMgPCAwICYmIGR1cmF0aW9uLm5hbm9zID4gMCkgewogICAgICAgZHVyYXRpb24uc2Vjb25kcyArPSAxOwogICAgICAgZHVyYXRpb24ubmFub3MgLT0gMTAwMDAwMDAwMDsKICAgICB9IGVsc2UgaWYgKGR1cmF0aW9uLnNlY29uZHMgPiAwICYmIGR1cmF0aW9uLm5hbm9zIDwgMCkgewogICAgICAgZHVyYXRpb24uc2Vjb25kcyAtPSAxOwogICAgICAgZHVyYXRpb24ubmFub3MgKz0gMTAwMDAwMDAwMDsKICAgICB9CgogRXhhbXBsZSAyOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFRpbWVzdGFtcCArIER1cmF0aW9uIGluIHBzZXVkbyBjb2RlLgoKICAgICBUaW1lc3RhbXAgc3RhcnQgPSAuLi47CiAgICAgRHVyYXRpb24gZHVyYXRpb24gPSAuLi47CiAgICAgVGltZXN0YW1wIGVuZCA9IC4uLjsKCiAgICAgZW5kLnNlY29uZHMgPSBzdGFydC5zZWNvbmRzICsgZHVyYXRpb24uc2Vjb25kczsKICAgICBlbmQubmFub3MgPSBzdGFydC5uYW5vcyArIGR1cmF0aW9uLm5hbm9zOwoKICAgICBpZiAoZW5kLm5hbm9zIDwgMCkgewogICAgICAgZW5kLnNlY29uZHMgLT0gMTsKICAgICAgIGVuZC5uYW5vcyArPSAxMDAwMDAwMDAwOwogICAgIH0gZWxzZSBpZiAoZW5kLm5hbm9zID49IDEwMDAwMDAwMDApIHsKICAgICAgIGVuZC5zZWNvbmRzICs9IDE7CiAgICAgICBlbmQubmFub3MgLT0gMTAwMDAwMDAwMDsKICAgICB9CgogRXhhbXBsZSAzOiBDb21wdXRlIER1cmF0aW9uIGZyb20gZGF0ZXRpbWUudGltZWRlbHRhIGluIFB5dGhvbi4KCiAgICAgdGQgPSBkYXRldGltZS50aW1lZGVsdGEoZGF5cz0zLCBtaW51dGVzPTEwKQogICAgIGR1cmF0aW9uID0gRHVyYXRpb24oKQogICAgIGR1cmF0aW9uLkZyb21UaW1lZGVsdGEodGQpCgogIyBKU09OIE1hcHBpbmcKCiBJbiBKU09OIGZvcm1hdCwgdGhlIER1cmF0aW9uIHR5cGUgaXMgZW5jb2RlZCBhcyBhIHN0cmluZyByYXRoZXIgdGhhbiBhbgogb2JqZWN0LCB3aGVyZSB0aGUgc3RyaW5nIGVuZHMgaW4gdGhlIHN1ZmZpeCAicyIgKGluZGljYXRpbmcgc2Vjb25kcykgYW5kCiBpcyBwcmVjZWRlZCBieSB0aGUgbnVtYmVyIG9mIHNlY29uZHMsIHdpdGggbmFub3NlY29uZHMgZXhwcmVzc2VkIGFzCiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBleGFtcGxlLCAzIHNlY29uZHMgd2l0aCAwIG5hbm9zZWNvbmRzIHNob3VsZCBiZQogZW5jb2RlZCBpbiBKU09OIGZvcm1hdCBhcyAiM3MiLCB3aGlsZSAzIHNlY29uZHMgYW5kIDEgbmFub3NlY29uZCBzaG91bGQKIGJlIGV4cHJlc3NlZCBpbiBKU09OIGZvcm1hdCBhcyAiMy4wMDAwMDAwMDFzIiwgYW5kIDMgc2Vjb25kcyBhbmQgMQogbWljcm9zZWNvbmQgc2hvdWxkIGJlIGV4cHJlc3NlZCBpbiBKU09OIGZvcm1hdCBhcyAiMy4wMDAwMDFzIi4KCgoKCgMEAAESA2UIEArcAQoEBAACABIDaQIUGs4BIFNpZ25lZCBzZWNvbmRzIG9mIHRoZSBzcGFuIG9mIHRpbWUuIE11c3QgYmUgZnJvbSAtMzE1LDU3NiwwMDAsMDAwCiB0byArMzE1LDU3NiwwMDAsMDAwIGluY2x1c2l2ZS4gTm90ZTogdGhlc2UgYm91bmRzIGFyZSBjb21wdXRlZCBmcm9tOgogNjAgc2VjL21pbiAqIDYwIG1pbi9ociAqIDI0IGhyL2RheSAqIDM2NS4yNSBkYXlzL3llYXIgKiAxMDAwMCB5ZWFycwoKDAoFBAACAAUSA2kCBwoMCgUEAAIAARIDaQgPCgwKBQQAAgADEgNpEhMKgwMKBAQAAgESA3ECEhr1AiBTaWduZWQgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbiBvZiB0aGUgc3Bhbgogb2YgdGltZS4gRHVyYXRpb25zIGxlc3MgdGhhbiBvbmUgc2Vjb25kIGFyZSByZXByZXNlbnRlZCB3aXRoIGEgMAogYHNlY29uZHNgIGZpZWxkIGFuZCBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIGBuYW5vc2AgZmllbGQuIEZvciBkdXJhdGlvbnMKIG9mIG9uZSBzZWNvbmQgb3IgbW9yZSwgYSBub24temVybyB2YWx1ZSBmb3IgdGhlIGBuYW5vc2AgZmllbGQgbXVzdCBiZQogb2YgdGhlIHNhbWUgc2lnbiBhcyB0aGUgYHNlY29uZHNgIGZpZWxkLiBNdXN0IGJlIGZyb20gLTk5OSw5OTksOTk5CiB0byArOTk5LDk5OSw5OTkgaW5jbHVzaXZlLgoKDAoFBAACAQUSA3ECBwoMCgUEAAIBARIDcQgNCgwKBQQAAgEDEgNxEBFiBnByb3RvMwqKPQogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIhCglGaWVsZE1hc2sSFAoFcGF0aHMYASADKAlSBXBhdGhzQoUBChNjb20uZ29vZ2xlLnByb3RvYnVmQg5GaWVsZE1hc2tQcm90b1ABWjJnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9maWVsZG1hc2twYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qhOwoHEgUeAPQBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIALAoJCgIIARIDIgAsCggKAQgSAyMALwoJCgIICBIDIwAvCggKAQgSAyQAIgoJCgIIChIDJAAiCggKAQgSAyUAIQoJCgIIJBIDJQAhCggKAQgSAyYAOwoJCgIIJRIDJgA7CggKAQgSAycASQoJCgIICxIDJwBJCggKAQgSAygAHwoJCgIIHxIDKAAfCrIsCgIEABIG8QEA9AEBGqMsIGBGaWVsZE1hc2tgIHJlcHJlc2VudHMgYSBzZXQgb2Ygc3ltYm9saWMgZmllbGQgcGF0aHMsIGZvciBleGFtcGxlOgoKICAgICBwYXRoczogImYuYSIKICAgICBwYXRoczogImYuYi5kIgoKIEhlcmUgYGZgIHJlcHJlc2VudHMgYSBmaWVsZCBpbiBzb21lIHJvb3QgbWVzc2FnZSwgYGFgIGFuZCBgYmAKIGZpZWxkcyBpbiB0aGUgbWVzc2FnZSBmb3VuZCBpbiBgZmAsIGFuZCBgZGAgYSBmaWVsZCBmb3VuZCBpbiB0aGUKIG1lc3NhZ2UgaW4gYGYuYmAuCgogRmllbGQgbWFza3MgYXJlIHVzZWQgdG8gc3BlY2lmeSBhIHN1YnNldCBvZiBmaWVsZHMgdGhhdCBzaG91bGQgYmUKIHJldHVybmVkIGJ5IGEgZ2V0IG9wZXJhdGlvbiBvciBtb2RpZmllZCBieSBhbiB1cGRhdGUgb3BlcmF0aW9uLgogRmllbGQgbWFza3MgYWxzbyBoYXZlIGEgY3VzdG9tIEpTT04gZW5jb2RpbmcgKHNlZSBiZWxvdykuCgogIyBGaWVsZCBNYXNrcyBpbiBQcm9qZWN0aW9ucwoKIFdoZW4gdXNlZCBpbiB0aGUgY29udGV4dCBvZiBhIHByb2plY3Rpb24sIGEgcmVzcG9uc2UgbWVzc2FnZSBvcgogc3ViLW1lc3NhZ2UgaXMgZmlsdGVyZWQgYnkgdGhlIEFQSSB0byBvbmx5IGNvbnRhaW4gdGhvc2UgZmllbGRzIGFzCiBzcGVjaWZpZWQgaW4gdGhlIG1hc2suIEZvciBleGFtcGxlLCBpZiB0aGUgbWFzayBpbiB0aGUgcHJldmlvdXMKIGV4YW1wbGUgaXMgYXBwbGllZCB0byBhIHJlc3BvbnNlIG1lc3NhZ2UgYXMgZm9sbG93czoKCiAgICAgZiB7CiAgICAgICBhIDogMjIKICAgICAgIGIgewogICAgICAgICBkIDogMQogICAgICAgICB4IDogMgogICAgICAgfQogICAgICAgeSA6IDEzCiAgICAgfQogICAgIHo6IDgKCiBUaGUgcmVzdWx0IHdpbGwgbm90IGNvbnRhaW4gc3BlY2lmaWMgdmFsdWVzIGZvciBmaWVsZHMgeCx5IGFuZCB6CiAodGhlaXIgdmFsdWUgd2lsbCBiZSBzZXQgdG8gdGhlIGRlZmF1bHQsIGFuZCBvbWl0dGVkIGluIHByb3RvIHRleHQKIG91dHB1dCk6CgoKICAgICBmIHsKICAgICAgIGEgOiAyMgogICAgICAgYiB7CiAgICAgICAgIGQgOiAxCiAgICAgICB9CiAgICAgfQoKIEEgcmVwZWF0ZWQgZmllbGQgaXMgbm90IGFsbG93ZWQgZXhjZXB0IGF0IHRoZSBsYXN0IHBvc2l0aW9uIG9mIGEKIHBhdGhzIHN0cmluZy4KCiBJZiBhIEZpZWxkTWFzayBvYmplY3QgaXMgbm90IHByZXNlbnQgaW4gYSBnZXQgb3BlcmF0aW9uLCB0aGUKIG9wZXJhdGlvbiBhcHBsaWVzIHRvIGFsbCBmaWVsZHMgKGFzIGlmIGEgRmllbGRNYXNrIG9mIGFsbCBmaWVsZHMKIGhhZCBiZWVuIHNwZWNpZmllZCkuCgogTm90ZSB0aGF0IGEgZmllbGQgbWFzayBkb2VzIG5vdCBuZWNlc3NhcmlseSBhcHBseSB0byB0aGUKIHRvcC1sZXZlbCByZXNwb25zZSBtZXNzYWdlLiBJbiBjYXNlIG9mIGEgUkVTVCBnZXQgb3BlcmF0aW9uLCB0aGUKIGZpZWxkIG1hc2sgYXBwbGllcyBkaXJlY3RseSB0byB0aGUgcmVzcG9uc2UsIGJ1dCBpbiBjYXNlIG9mIGEgUkVTVAogbGlzdCBvcGVyYXRpb24sIHRoZSBtYXNrIGluc3RlYWQgYXBwbGllcyB0byBlYWNoIGluZGl2aWR1YWwgbWVzc2FnZQogaW4gdGhlIHJldHVybmVkIHJlc291cmNlIGxpc3QuIEluIGNhc2Ugb2YgYSBSRVNUIGN1c3RvbSBtZXRob2QsCiBvdGhlciBkZWZpbml0aW9ucyBtYXkgYmUgdXNlZC4gV2hlcmUgdGhlIG1hc2sgYXBwbGllcyB3aWxsIGJlCiBjbGVhcmx5IGRvY3VtZW50ZWQgdG9nZXRoZXIgd2l0aCBpdHMgZGVjbGFyYXRpb24gaW4gdGhlIEFQSS4gIEluCiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvbiB0aGUgcmV0dXJuZWQgcmVzb3VyY2UvcmVzb3VyY2VzIGlzIHJlcXVpcmVkCiBiZWhhdmlvciBmb3IgQVBJcy4KCiAjIEZpZWxkIE1hc2tzIGluIFVwZGF0ZSBPcGVyYXRpb25zCgogQSBmaWVsZCBtYXNrIGluIHVwZGF0ZSBvcGVyYXRpb25zIHNwZWNpZmllcyB3aGljaCBmaWVsZHMgb2YgdGhlCiB0YXJnZXRlZCByZXNvdXJjZSBhcmUgZ29pbmcgdG8gYmUgdXBkYXRlZC4gVGhlIEFQSSBpcyByZXF1aXJlZAogdG8gb25seSBjaGFuZ2UgdGhlIHZhbHVlcyBvZiB0aGUgZmllbGRzIGFzIHNwZWNpZmllZCBpbiB0aGUgbWFzawogYW5kIGxlYXZlIHRoZSBvdGhlcnMgdW50b3VjaGVkLiBJZiBhIHJlc291cmNlIGlzIHBhc3NlZCBpbiB0bwogZGVzY3JpYmUgdGhlIHVwZGF0ZWQgdmFsdWVzLCB0aGUgQVBJIGlnbm9yZXMgdGhlIHZhbHVlcyBvZiBhbGwKIGZpZWxkcyBub3QgY292ZXJlZCBieSB0aGUgbWFzay4KCiBJZiBhIHJlcGVhdGVkIGZpZWxkIGlzIHNwZWNpZmllZCBmb3IgYW4gdXBkYXRlIG9wZXJhdGlvbiwgbmV3IHZhbHVlcyB3aWxsCiBiZSBhcHBlbmRlZCB0byB0aGUgZXhpc3RpbmcgcmVwZWF0ZWQgZmllbGQgaW4gdGhlIHRhcmdldCByZXNvdXJjZS4gTm90ZSB0aGF0CiBhIHJlcGVhdGVkIGZpZWxkIGlzIG9ubHkgYWxsb3dlZCBpbiB0aGUgbGFzdCBwb3NpdGlvbiBvZiBhIGBwYXRoc2Agc3RyaW5nLgoKIElmIGEgc3ViLW1lc3NhZ2UgaXMgc3BlY2lmaWVkIGluIHRoZSBsYXN0IHBvc2l0aW9uIG9mIHRoZSBmaWVsZCBtYXNrIGZvciBhbgogdXBkYXRlIG9wZXJhdGlvbiwgdGhlbiBuZXcgdmFsdWUgd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgZXhpc3Rpbmcgc3ViLW1lc3NhZ2UKIGluIHRoZSB0YXJnZXQgcmVzb3VyY2UuCgogRm9yIGV4YW1wbGUsIGdpdmVuIHRoZSB0YXJnZXQgbWVzc2FnZToKCiAgICAgZiB7CiAgICAgICBiIHsKICAgICAgICAgZDogMQogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMV0KICAgICB9CgogQW5kIGFuIHVwZGF0ZSBtZXNzYWdlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgfQogICAgICAgYzogWzJdCiAgICAgfQoKIHRoZW4gaWYgdGhlIGZpZWxkIG1hc2sgaXM6CgogIHBhdGhzOiBbImYuYiIsICJmLmMiXQoKIHRoZW4gdGhlIHJlc3VsdCB3aWxsIGJlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMSwgMl0KICAgICB9CgogQW4gaW1wbGVtZW50YXRpb24gbWF5IHByb3ZpZGUgb3B0aW9ucyB0byBvdmVycmlkZSB0aGlzIGRlZmF1bHQgYmVoYXZpb3IgZm9yCiByZXBlYXRlZCBhbmQgbWVzc2FnZSBmaWVsZHMuCgogSW4gb3JkZXIgdG8gcmVzZXQgYSBmaWVsZCdzIHZhbHVlIHRvIHRoZSBkZWZhdWx0LCB0aGUgZmllbGQgbXVzdAogYmUgaW4gdGhlIG1hc2sgYW5kIHNldCB0byB0aGUgZGVmYXVsdCB2YWx1ZSBpbiB0aGUgcHJvdmlkZWQgcmVzb3VyY2UuCiBIZW5jZSwgaW4gb3JkZXIgdG8gcmVzZXQgYWxsIGZpZWxkcyBvZiBhIHJlc291cmNlLCBwcm92aWRlIGEgZGVmYXVsdAogaW5zdGFuY2Ugb2YgdGhlIHJlc291cmNlIGFuZCBzZXQgYWxsIGZpZWxkcyBpbiB0aGUgbWFzaywgb3IgZG8KIG5vdCBwcm92aWRlIGEgbWFzayBhcyBkZXNjcmliZWQgYmVsb3cuCgogSWYgYSBmaWVsZCBtYXNrIGlzIG5vdCBwcmVzZW50IG9uIHVwZGF0ZSwgdGhlIG9wZXJhdGlvbiBhcHBsaWVzIHRvCiBhbGwgZmllbGRzIChhcyBpZiBhIGZpZWxkIG1hc2sgb2YgYWxsIGZpZWxkcyBoYXMgYmVlbiBzcGVjaWZpZWQpLgogTm90ZSB0aGF0IGluIHRoZSBwcmVzZW5jZSBvZiBzY2hlbWEgZXZvbHV0aW9uLCB0aGlzIG1heSBtZWFuIHRoYXQKIGZpZWxkcyB0aGUgY2xpZW50IGRvZXMgbm90IGtub3cgYW5kIGhhcyB0aGVyZWZvcmUgbm90IGZpbGxlZCBpbnRvCiB0aGUgcmVxdWVzdCB3aWxsIGJlIHJlc2V0IHRvIHRoZWlyIGRlZmF1bHQuIElmIHRoaXMgaXMgdW53YW50ZWQKIGJlaGF2aW9yLCBhIHNwZWNpZmljIHNlcnZpY2UgbWF5IHJlcXVpcmUgYSBjbGllbnQgdG8gYWx3YXlzIHNwZWNpZnkKIGEgZmllbGQgbWFzaywgcHJvZHVjaW5nIGFuIGVycm9yIGlmIG5vdC4KCiBBcyB3aXRoIGdldCBvcGVyYXRpb25zLCB0aGUgbG9jYXRpb24gb2YgdGhlIHJlc291cmNlIHdoaWNoCiBkZXNjcmliZXMgdGhlIHVwZGF0ZWQgdmFsdWVzIGluIHRoZSByZXF1ZXN0IG1lc3NhZ2UgZGVwZW5kcyBvbiB0aGUKIG9wZXJhdGlvbiBraW5kLiBJbiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvZiB0aGUgZmllbGQgbWFzayBpcwogcmVxdWlyZWQgdG8gYmUgaG9ub3JlZCBieSB0aGUgQVBJLgoKICMjIENvbnNpZGVyYXRpb25zIGZvciBIVFRQIFJFU1QKCiBUaGUgSFRUUCBraW5kIG9mIGFuIHVwZGF0ZSBvcGVyYXRpb24gd2hpY2ggdXNlcyBhIGZpZWxkIG1hc2sgbXVzdAogYmUgc2V0IHRvIFBBVENIIGluc3RlYWQgb2YgUFVUIGluIG9yZGVyIHRvIHNhdGlzZnkgSFRUUCBzZW1hbnRpY3MKIChQVVQgbXVzdCBvbmx5IGJlIHVzZWQgZm9yIGZ1bGwgdXBkYXRlcykuCgogIyBKU09OIEVuY29kaW5nIG9mIEZpZWxkIE1hc2tzCgogSW4gSlNPTiwgYSBmaWVsZCBtYXNrIGlzIGVuY29kZWQgYXMgYSBzaW5nbGUgc3RyaW5nIHdoZXJlIHBhdGhzIGFyZQogc2VwYXJhdGVkIGJ5IGEgY29tbWEuIEZpZWxkcyBuYW1lIGluIGVhY2ggcGF0aCBhcmUgY29udmVydGVkCiB0by9mcm9tIGxvd2VyLWNhbWVsIG5hbWluZyBjb252ZW50aW9ucy4KCiBBcyBhbiBleGFtcGxlLCBjb25zaWRlciB0aGUgZm9sbG93aW5nIG1lc3NhZ2UgZGVjbGFyYXRpb25zOgoKICAgICBtZXNzYWdlIFByb2ZpbGUgewogICAgICAgVXNlciB1c2VyID0gMTsKICAgICAgIFBob3RvIHBob3RvID0gMjsKICAgICB9CiAgICAgbWVzc2FnZSBVc2VyIHsKICAgICAgIHN0cmluZyBkaXNwbGF5X25hbWUgPSAxOwogICAgICAgc3RyaW5nIGFkZHJlc3MgPSAyOwogICAgIH0KCiBJbiBwcm90byBhIGZpZWxkIG1hc2sgZm9yIGBQcm9maWxlYCBtYXkgbG9vayBhcyBzdWNoOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAidXNlci5kaXNwbGF5X25hbWUiCiAgICAgICBwYXRoczogInBob3RvIgogICAgIH0KCiBJbiBKU09OLCB0aGUgc2FtZSBtYXNrIGlzIHJlcHJlc2VudGVkIGFzIGJlbG93OgoKICAgICB7CiAgICAgICBtYXNrOiAidXNlci5kaXNwbGF5TmFtZSxwaG90byIKICAgICB9CgogIyBGaWVsZCBNYXNrcyBhbmQgT25lb2YgRmllbGRzCgogRmllbGQgbWFza3MgdHJlYXQgZmllbGRzIGluIG9uZW9mcyBqdXN0IGFzIHJlZ3VsYXIgZmllbGRzLiBDb25zaWRlciB0aGUKIGZvbGxvd2luZyBtZXNzYWdlOgoKICAgICBtZXNzYWdlIFNhbXBsZU1lc3NhZ2UgewogICAgICAgb25lb2YgdGVzdF9vbmVvZiB7CiAgICAgICAgIHN0cmluZyBuYW1lID0gNDsKICAgICAgICAgU3ViTWVzc2FnZSBzdWJfbWVzc2FnZSA9IDk7CiAgICAgICB9CiAgICAgfQoKIFRoZSBmaWVsZCBtYXNrIGNhbiBiZToKCiAgICAgbWFzayB7CiAgICAgICBwYXRoczogIm5hbWUiCiAgICAgfQoKIE9yOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAic3ViX21lc3NhZ2UiCiAgICAgfQoKIE5vdGUgdGhhdCBvbmVvZiB0eXBlIG5hbWVzICgidGVzdF9vbmVvZiIgaW4gdGhpcyBjYXNlKSBjYW5ub3QgYmUgdXNlZCBpbgogcGF0aHMuCgogIyMgRmllbGQgTWFzayBWZXJpZmljYXRpb24KCiBUaGUgaW1wbGVtZW50YXRpb24gb2YgYW55IEFQSSBtZXRob2Qgd2hpY2ggaGFzIGEgRmllbGRNYXNrIHR5cGUgZmllbGQgaW4gdGhlCiByZXF1ZXN0IHNob3VsZCB2ZXJpZnkgdGhlIGluY2x1ZGVkIGZpZWxkIHBhdGhzLCBhbmQgcmV0dXJuIGFuCiBgSU5WQUxJRF9BUkdVTUVOVGAgZXJyb3IgaWYgYW55IHBhdGggaXMgdW5tYXBwYWJsZS4KCgsKAwQAARIE8QEIEQosCgQEAAIAEgTzAQIcGh4gVGhlIHNldCBvZiBmaWVsZCBtYXNrIHBhdGhzLgoKDQoFBAACAAQSBPMBAgoKDQoFBAACAAUSBPMBCxEKDQoFBAACAAESBPMBEhcKDQoFBAACAAMSBPMBGhtiBnByb3RvMwrDMQofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjsKCVRpbWVzdGFtcBIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0KFAQoTY29tLmdvb2dsZS5wcm90b2J1ZkIOVGltZXN0YW1wUHJvdG9QAVoyZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vdGltZXN0YW1wcGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKwS8KBxIFHgCPAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAB8KCQoCCB8SAyIAHwoICgEIEgMjAEkKCQoCCAsSAyMASQoICgEIEgMkACwKCQoCCAESAyQALAoICgEIEgMlAC8KCQoCCAgSAyUALwoICgEIEgMmACIKCQoCCAoSAyYAIgoICgEIEgMnACEKCQoCCCQSAycAIQoICgEIEgMoADsKCQoCCCUSAygAOwraHQoCBAASBoQBAI8BARrLHSBBIFRpbWVzdGFtcCByZXByZXNlbnRzIGEgcG9pbnQgaW4gdGltZSBpbmRlcGVuZGVudCBvZiBhbnkgdGltZSB6b25lIG9yIGxvY2FsCiBjYWxlbmRhciwgZW5jb2RlZCBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0CiBuYW5vc2Vjb25kIHJlc29sdXRpb24uIFRoZSBjb3VudCBpcyByZWxhdGl2ZSB0byBhbiBlcG9jaCBhdCBVVEMgbWlkbmlnaHQgb24KIEphbnVhcnkgMSwgMTk3MCwgaW4gdGhlIHByb2xlcHRpYyBHcmVnb3JpYW4gY2FsZW5kYXIgd2hpY2ggZXh0ZW5kcyB0aGUKIEdyZWdvcmlhbiBjYWxlbmRhciBiYWNrd2FyZHMgdG8geWVhciBvbmUuCgogQWxsIG1pbnV0ZXMgYXJlIDYwIHNlY29uZHMgbG9uZy4gTGVhcCBzZWNvbmRzIGFyZSAic21lYXJlZCIgc28gdGhhdCBubyBsZWFwCiBzZWNvbmQgdGFibGUgaXMgbmVlZGVkIGZvciBpbnRlcnByZXRhdGlvbiwgdXNpbmcgYSBbMjQtaG91ciBsaW5lYXIKIHNtZWFyXShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS90aW1lL3NtZWFyKS4KCiBUaGUgcmFuZ2UgaXMgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0byA5OTk5LTEyLTMxVDIzOjU5OjU5Ljk5OTk5OTk5OVouIEJ5CiByZXN0cmljdGluZyB0byB0aGF0IHJhbmdlLCB3ZSBlbnN1cmUgdGhhdCB3ZSBjYW4gY29udmVydCB0byBhbmQgZnJvbSBbUkZDCiAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGRhdGUgc3RyaW5ncy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFBPU0lYIGB0aW1lKClgLgoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcyh0aW1lKE5VTEwpKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKDApOwoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgZ2V0dGltZW9mZGF5KClgLgoKICAgICBzdHJ1Y3QgdGltZXZhbCB0djsKICAgICBnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModHYudHZfc2VjKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKHR2LnR2X3VzZWMgKiAxMDAwKTsKCiBFeGFtcGxlIDM6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gV2luMzIgYEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKClgLgoKICAgICBGSUxFVElNRSBmdDsKICAgICBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgmZnQpOwogICAgIFVJTlQ2NCB0aWNrcyA9ICgoKFVJTlQ2NClmdC5kd0hpZ2hEYXRlVGltZSkgPDwgMzIpIHwgZnQuZHdMb3dEYXRlVGltZTsKCiAgICAgLy8gQSBXaW5kb3dzIHRpY2sgaXMgMTAwIG5hbm9zZWNvbmRzLiBXaW5kb3dzIGVwb2NoIDE2MDEtMDEtMDFUMDA6MDA6MDBaCiAgICAgLy8gaXMgMTE2NDQ0NzM2MDAgc2Vjb25kcyBiZWZvcmUgVW5peCBlcG9jaCAxOTcwLTAxLTAxVDAwOjAwOjAwWi4KICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcygoSU5UNjQpICgodGlja3MgLyAxMDAwMDAwMCkgLSAxMTY0NDQ3MzYwMExMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygoSU5UMzIpICgodGlja3MgJSAxMDAwMDAwMCkgKiAxMDApKTsKCiBFeGFtcGxlIDQ6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gSmF2YSBgU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKClgLgoKICAgICBsb25nIG1pbGxpcyA9IFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wID0gVGltZXN0YW1wLm5ld0J1aWxkZXIoKS5zZXRTZWNvbmRzKG1pbGxpcyAvIDEwMDApCiAgICAgICAgIC5zZXROYW5vcygoaW50KSAoKG1pbGxpcyAlIDEwMDApICogMTAwMDAwMCkpLmJ1aWxkKCk7CgogRXhhbXBsZSA1OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIEphdmEgYEluc3RhbnQubm93KClgLgoKICAgICBJbnN0YW50IG5vdyA9IEluc3RhbnQubm93KCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXAgPQogICAgICAgICBUaW1lc3RhbXAubmV3QnVpbGRlcigpLnNldFNlY29uZHMobm93LmdldEVwb2NoU2Vjb25kKCkpCiAgICAgICAgICAgICAuc2V0TmFub3Mobm93LmdldE5hbm8oKSkuYnVpbGQoKTsKCiBFeGFtcGxlIDY6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gY3VycmVudCB0aW1lIGluIFB5dGhvbi4KCiAgICAgdGltZXN0YW1wID0gVGltZXN0YW1wKCkKICAgICB0aW1lc3RhbXAuR2V0Q3VycmVudFRpbWUoKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBUaW1lc3RhbXAgdHlwZSBpcyBlbmNvZGVkIGFzIGEgc3RyaW5nIGluIHRoZQogW1JGQyAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGZvcm1hdC4gVGhhdCBpcywgdGhlCiBmb3JtYXQgaXMgInt5ZWFyfS17bW9udGh9LXtkYXl9VHtob3VyfTp7bWlufTp7c2VjfVsue2ZyYWNfc2VjfV1aIgogd2hlcmUge3llYXJ9IGlzIGFsd2F5cyBleHByZXNzZWQgdXNpbmcgZm91ciBkaWdpdHMgd2hpbGUge21vbnRofSwge2RheX0sCiB7aG91cn0sIHttaW59LCBhbmQge3NlY30gYXJlIHplcm8tcGFkZGVkIHRvIHR3byBkaWdpdHMgZWFjaC4gVGhlIGZyYWN0aW9uYWwKIHNlY29uZHMsIHdoaWNoIGNhbiBnbyB1cCB0byA5IGRpZ2l0cyAoaS5lLiB1cCB0byAxIG5hbm9zZWNvbmQgcmVzb2x1dGlvbiksCiBhcmUgb3B0aW9uYWwuIFRoZSAiWiIgc3VmZml4IGluZGljYXRlcyB0aGUgdGltZXpvbmUgKCJVVEMiKTsgdGhlIHRpbWV6b25lCiBpcyByZXF1aXJlZC4gQSBwcm90bzMgSlNPTiBzZXJpYWxpemVyIHNob3VsZCBhbHdheXMgdXNlIFVUQyAoYXMgaW5kaWNhdGVkIGJ5CiAiWiIpIHdoZW4gcHJpbnRpbmcgdGhlIFRpbWVzdGFtcCB0eXBlIGFuZCBhIHByb3RvMyBKU09OIHBhcnNlciBzaG91bGQgYmUKIGFibGUgdG8gYWNjZXB0IGJvdGggVVRDIGFuZCBvdGhlciB0aW1lem9uZXMgKGFzIGluZGljYXRlZCBieSBhbiBvZmZzZXQpLgoKIEZvciBleGFtcGxlLCAiMjAxNy0wMS0xNVQwMTozMDoxNS4wMVoiIGVuY29kZXMgMTUuMDEgc2Vjb25kcyBwYXN0CiAwMTozMCBVVEMgb24gSmFudWFyeSAxNSwgMjAxNy4KCiBJbiBKYXZhU2NyaXB0LCBvbmUgY2FuIGNvbnZlcnQgYSBEYXRlIG9iamVjdCB0byB0aGlzIGZvcm1hdCB1c2luZyB0aGUKIHN0YW5kYXJkCiBbdG9JU09TdHJpbmcoKV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvRGF0ZS90b0lTT1N0cmluZykKIG1ldGhvZC4gSW4gUHl0aG9uLCBhIHN0YW5kYXJkIGBkYXRldGltZS5kYXRldGltZWAgb2JqZWN0IGNhbiBiZSBjb252ZXJ0ZWQKIHRvIHRoaXMgZm9ybWF0IHVzaW5nCiBbYHN0cmZ0aW1lYF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMi9saWJyYXJ5L3RpbWUuaHRtbCN0aW1lLnN0cmZ0aW1lKSB3aXRoCiB0aGUgdGltZSBmb3JtYXQgc3BlYyAnJVktJW0tJWRUJUg6JU06JVMuJWZaJy4gTGlrZXdpc2UsIGluIEphdmEsIG9uZSBjYW4gdXNlCiB0aGUgSm9kYSBUaW1lJ3MgW2BJU09EYXRlVGltZUZvcm1hdC5kYXRlVGltZSgpYF0oCiBodHRwOi8vam9kYS10aW1lLnNvdXJjZWZvcmdlLm5ldC9hcGlkb2NzL29yZy9qb2RhL3RpbWUvZm9ybWF0L0lTT0RhdGVUaW1lRm9ybWF0Lmh0bWwjZGF0ZVRpbWUoKQogKSB0byBvYnRhaW4gYSBmb3JtYXR0ZXIgY2FwYWJsZSBvZiBnZW5lcmF0aW5nIHRpbWVzdGFtcHMgaW4gdGhpcyBmb3JtYXQuCgoKCwoDBAABEgSEAQgRCp0BCgQEAAIAEgSIAQIUGo4BIFJlcHJlc2VudHMgc2Vjb25kcyBvZiBVVEMgdGltZSBzaW5jZSBVbml4IGVwb2NoCiAxOTcwLTAxLTAxVDAwOjAwOjAwWi4gTXVzdCBiZSBmcm9tIDAwMDEtMDEtMDFUMDA6MDA6MDBaIHRvCiA5OTk5LTEyLTMxVDIzOjU5OjU5WiBpbmNsdXNpdmUuCgoNCgUEAAIABRIEiAECBwoNCgUEAAIAARIEiAEIDwoNCgUEAAIAAxIEiAESEwrlAQoEBAACARIEjgECEhrWASBOb24tbmVnYXRpdmUgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbi4gTmVnYXRpdmUKIHNlY29uZCB2YWx1ZXMgd2l0aCBmcmFjdGlvbnMgbXVzdCBzdGlsbCBoYXZlIG5vbi1uZWdhdGl2ZSBuYW5vcyB2YWx1ZXMKIHRoYXQgY291bnQgZm9yd2FyZCBpbiB0aW1lLiBNdXN0IGJlIGZyb20gMCB0byA5OTksOTk5LDk5OQogaW5jbHVzaXZlLgoKDQoFBAACAQUSBI4BAgcKDQoFBAACAQESBI4BCA0KDQoFBAACAQMSBI4BEBFiBnByb3RvMwrNIwoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvEg9nb29nbGUucHJvdG9idWYiIwoLRG91YmxlVmFsdWUSFAoFdmFsdWUYASABKAFSBXZhbHVlIiIKCkZsb2F0VmFsdWUSFAoFdmFsdWUYASABKAJSBXZhbHVlIiIKCkludDY0VmFsdWUSFAoFdmFsdWUYASABKANSBXZhbHVlIiMKC1VJbnQ2NFZhbHVlEhQKBXZhbHVlGAEgASgEUgV2YWx1ZSIiCgpJbnQzMlZhbHVlEhQKBXZhbHVlGAEgASgFUgV2YWx1ZSIjCgtVSW50MzJWYWx1ZRIUCgV2YWx1ZRgBIAEoDVIFdmFsdWUiIQoJQm9vbFZhbHVlEhQKBXZhbHVlGAEgASgIUgV2YWx1ZSIjCgtTdHJpbmdWYWx1ZRIUCgV2YWx1ZRgBIAEoCVIFdmFsdWUiIgoKQnl0ZXNWYWx1ZRIUCgV2YWx1ZRgBIAEoDFIFdmFsdWVCgwEKE2NvbS5nb29nbGUucHJvdG9idWZCDVdyYXBwZXJzUHJvdG9QAVoxZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vd3JhcHBlcnNwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rEHwoGEgQoAHoBCtkQCgEMEgMoABIyzhAgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgogV3JhcHBlcnMgZm9yIHByaW1pdGl2ZSAobm9uLW1lc3NhZ2UpIHR5cGVzLiBUaGVzZSB0eXBlcyBhcmUgdXNlZnVsCiBmb3IgZW1iZWRkaW5nIHByaW1pdGl2ZXMgaW4gdGhlIGBnb29nbGUucHJvdG9idWYuQW55YCB0eXBlIGFuZCBmb3IgcGxhY2VzCiB3aGVyZSB3ZSBuZWVkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIGFic2VuY2Ugb2YgYSBwcmltaXRpdmUKIHR5cGVkIGZpZWxkIGFuZCBpdHMgZGVmYXVsdCB2YWx1ZS4KCiBUaGVzZSB3cmFwcGVycyBoYXZlIG5vIG1lYW5pbmdmdWwgdXNlIHdpdGhpbiByZXBlYXRlZCBmaWVsZHMgYXMgdGhleSBsYWNrCiB0aGUgYWJpbGl0eSB0byBkZXRlY3QgcHJlc2VuY2Ugb24gaW5kaXZpZHVhbCBlbGVtZW50cy4KIFRoZXNlIHdyYXBwZXJzIGhhdmUgbm8gbWVhbmluZ2Z1bCB1c2Ugd2l0aGluIGEgbWFwIG9yIGEgb25lb2Ygc2luY2UKIGluZGl2aWR1YWwgZW50cmllcyBvZiBhIG1hcCBvciBmaWVsZHMgb2YgYSBvbmVvZiBjYW4gYWxyZWFkeSBkZXRlY3QgcHJlc2VuY2UuCgoICgECEgMqABgKCAoBCBIDLAAfCgkKAggfEgMsAB8KCAoBCBIDLQBICgkKAggLEgMtAEgKCAoBCBIDLgAsCgkKAggBEgMuACwKCAoBCBIDLwAu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EgN5EBFiBnByb3RvMwrNxgEKM2VkaXRpb25zL2dvbGRlbi90ZXN0X21lc3NhZ2VzX3Byb3RvM19lZGl0aW9ucy5wcm90bxImcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8aHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8aH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90byLpXQoSVGVzdEFsbFR5cGVzUHJvdG8zEiUKDm9wdGlvbmFsX2ludDMyGAEgASgFUg1vcHRpb25hbEludDMyEiUKDm9wdGlvbmFsX2ludDY0GAIgASgDUg1vcHRpb25hbEludDY0EicKD29wdGlvbmFsX3VpbnQzMhgDIAEoDVIOb3B0aW9uYWxVaW50MzISJwoPb3B0aW9uYWxfdWludDY0GAQgASgEUg5vcHRpb25hbFVpbnQ2NBInCg9vcHRpb25hbF9zaW50MzIYBSABKBFSDm9wdGlvbmFsU2ludDMyEicKD29wdGlvbmFsX3NpbnQ2NBgGIAEoElIOb3B0aW9uYWxTaW50NjQSKQoQb3B0aW9uYWxfZml4ZWQzMhgHIAEoB1IPb3B0aW9uYWxGaXhlZDMyEikKEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZSD29wdGlvbmFsRml4ZWQ2NBIrChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD1IQb3B0aW9uYWxTZml4ZWQzMhIrChFvcHRpb25hbF9zZml4ZWQ2NBgKIAEoEFIQb3B0aW9uYWxTZml4ZWQ2NBIlCg5vcHRpb25hbF9mbG9hdBgLIAEoAlINb3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEoABChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2UScAoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USdwoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmcKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25FbnVtUhNvcHRpb25hbEZvcmVpZ25FbnVtEnoKFW9wdGlvbmFsX2FsaWFzZWRfZW51bRgXIAEoDjJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5BbGlhc2VkRW51bVITb3B0aW9uYWxBbGlhc2VkRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSZwoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzNSEHJlY3Vyc2l2ZU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSgAEKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJwChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyNi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ3ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SZwoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEiEKDHBhY2tlZF9pbnQzMhhLIAMoBVILcGFja2VkSW50MzISIQoMcGFja2VkX2ludDY0GEwgAygDUgtwYWNrZWRJbnQ2NBIjCg1wYWNrZWRfdWludDMyGE0gAygNUgxwYWNrZWRVaW50MzISIwoNcGFja2VkX3VpbnQ2NBhOIAMoBFIMcGFja2VkVWludDY0EiMKDXBhY2tlZF9zaW50MzIYTyADKBFSDHBhY2tlZFNpbnQzMhIjCg1wYWNrZWRfc2ludDY0GFAgAygSUgxwYWNrZWRTaW50NjQSJQoOcGFja2VkX2ZpeGVkMzIYUSADKAdSDXBhY2tlZEZpeGVkMzISJQoOcGFja2VkX2ZpeGVkNjQYUiADKAZSDXBhY2tlZEZpeGVkNjQSJwoPcGFja2VkX3NmaXhlZDMyGFMgAygPUg5wYWNrZWRTZml4ZWQzMhInCg9wYWNrZWRfc2ZpeGVkNjQYVCADKBBSDnBhY2tlZFNmaXhlZDY0EiEKDHBhY2tlZF9mbG9hdBhVIAMoAlILcGFja2VkRmxvYXQSIwoNcGFja2VkX2RvdWJsZRhWIAMoAVIMcGFja2VkRG91YmxlEh8KC3BhY2tlZF9ib29sGFcgAygIUgpwYWNrZWRCb29sEnMKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhBwYWNrZWROZXN0ZWRFbnVtEiwKDnVucGFja2VkX2ludDMyGFkgAygFQgWqAQIYAlINdW5wYWNrZWRJbnQzMhIsCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0IFqgECGAJSDXVucGFja2VkSW50NjQSLgoPdW5wYWNrZWRfdWludDMyGFsgAygNQgWqAQIYAlIOdW5wYWNrZWRVaW50MzISLgoPdW5wYWNrZWRfdWludDY0GFwgAygEQgWqAQIYAlIOdW5wYWNrZWRVaW50NjQSLgoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgWqAQIYAlIOdW5wYWNrZWRTaW50MzISLgoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgWqAQIYAlIOdW5wYWNrZWRTaW50NjQSMAoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB0IFqgECGAJSD3VucGFja2VkRml4ZWQzMhIwChB1bnBhY2tlZF9maXhlZDY0GGAgAygGQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDY0EjIKEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQzMhIyChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEIFqgECGAJSEHVucGFja2VkU2ZpeGVkNjQSLAoOdW5wYWNrZWRfZmxvYXQYYyADKAJCBaoBAhgCUg11bnBhY2tlZEZsb2F0Ei4KD3VucGFja2VkX2RvdWJsZRhkIAMoAUIFqgECGAJSDnVucGFja2VkRG91YmxlEioKDXVucGFja2VkX2Jvb2wYZSADKAhCBaoBAhgCUgx1bnBhY2tlZEJvb2wSfgoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUIFqgECGAJSEnVucGFja2VkTmVzdGVkRW51bRJ1Cg9tYXBfaW50MzJfaW50MzIYOCADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEnUKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSewoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ7ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnsKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISewoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBKBAQoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhKBAQoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBg/IAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKHAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhKHAQoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GEEgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJ1Cg9tYXBfaW50MzJfZmxvYXQYQiADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EngKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSbwoNbWFwX2Jvb2xfYm9vbBhEIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJ7ChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEngKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nQnl0ZXNFbnRyeVIObWFwU3RyaW5nQnl0ZXMSkQEKGW1hcF9zdHJpbmdfbmVzdGVkX21lc3NhZ2UYRyADKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5UhZtYXBTdHJpbmdOZXN0ZWRNZXNzYWdlEpQBChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJXLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKIAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnlSE21hcFN0cmluZ05lc3RlZEVudW0SiwEKF21hcF9zdHJpbmdfZm9yZWlnbl9lbnVtGEogAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJ8ChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSZgoKb25lb2ZfZW51bRh3IAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJGChBvbmVvZl9udWxsX3ZhbHVlGHggASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZUgAUg5vbmVvZk51bGxWYWx1ZRJPChVvcHRpb25hbF9ib29sX3dyYXBwZXIYyQEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVITb3B0aW9uYWxCb29sV3JhcHBlchJSChZvcHRpb25hbF9pbnQzMl93cmFwcGVyGMoBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUhRvcHRpb25hbEludDMyV3JhcHBlchJSChZvcHRpb25hbF9pbnQ2NF93cmFwcGVyGMsBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUhRvcHRpb25hbEludDY0V3JhcHBlchJVChdvcHRpb25hbF91aW50MzJfd3JhcHBlchjMASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSFW9wdGlvbmFsVWludDMyV3JhcHBlchJVChdvcHRpb25hbF91aW50NjRfd3JhcHBlchjNASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSFW9wdGlvbmFsVWludDY0V3JhcHBlchJSChZvcHRpb25hbF9mbG9hdF93cmFwcGVyGM4BIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUhRvcHRpb25hbEZsb2F0V3JhcHBlchJVChdvcHRpb25hbF9kb3VibGVfd3JhcHBlchjPASABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSFW9wdGlvbmFsRG91YmxlV3JhcHBlchJVChdvcHRpb25hbF9zdHJpbmdfd3JhcHBlchjQASABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSFW9wdGlvbmFsU3RyaW5nV3JhcHBlchJSChZvcHRpb25hbF9ieXRlc193cmFwcGVyGNEBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUhRvcHRpb25hbEJ5dGVzV3JhcHBlchJPChVyZXBlYXRlZF9ib29sX3dyYXBwZXIY0wEgAygLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVITcmVwZWF0ZWRCb29sV3JhcHBlchJSChZyZXBlYXRlZF9pbnQzMl93cmFwcGVyGNQBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUhRyZXBlYXRlZEludDMyV3JhcHBlchJSChZyZXBlYXRlZF9pbnQ2NF93cmFwcGVyGNUBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUhRyZXBlYXRlZEludDY0V3JhcHBlchJVChdyZXBlYXRlZF91aW50MzJfd3JhcHBlchjWASADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSFXJlcGVhdGVkVWludDMyV3JhcHBlchJVChdyZXBlYXRlZF91aW50NjRfd3JhcHBlchjXASADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSFXJlcGVhdGVkVWludDY0V3JhcHBlchJSChZyZXBlYXRlZF9mbG9hdF93cmFwcGVyGNgBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUhRyZXBlYXRlZEZsb2F0V3JhcHBlchJVChdyZXBlYXRlZF9kb3VibGVfd3JhcHBlchjZASADKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSFXJlcGVhdGVkRG91YmxlV3JhcHBlchJVChdyZXBlYXRlZF9zdHJpbmdfd3JhcHBlchjaASADKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSFXJlcGVhdGVkU3RyaW5nV3JhcHBlchJSChZyZXBlYXRlZF9ieXRlc193cmFwcGVyGNsBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUhRyZXBlYXRlZEJ5dGVzV3JhcHBlchJHChFvcHRpb25hbF9kdXJhdGlvbhitAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEG9wdGlvbmFsRHVyYXRpb24SSgoSb3B0aW9uYWxfdGltZXN0YW1wGK4CIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEW9wdGlvbmFsVGltZXN0YW1wEksKE29wdGlvbmFsX2ZpZWxkX21hc2sYrwIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IRb3B0aW9uYWxGaWVsZE1hc2sSQQoPb3B0aW9uYWxfc3RydWN0GLACIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSDm9wdGlvbmFsU3RydWN0EjgKDG9wdGlvbmFsX2FueRixAiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgtvcHRpb25hbEFueRI+Cg5vcHRpb25hbF92YWx1ZRiyAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSDW9wdGlvbmFsVmFsdWUSSwoTb3B0aW9uYWxfbnVsbF92YWx1ZRizAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlUhFvcHRpb25hbE51bGxWYWx1ZRJHChFyZXBlYXRlZF9kdXJhdGlvbhi3AiADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEHJlcGVhdGVkRHVyYXRpb24SSgoScmVwZWF0ZWRfdGltZXN0YW1wGLgCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEXJlcGVhdGVkVGltZXN0YW1wEkoKEnJlcGVhdGVkX2ZpZWxkbWFzaxi5AiADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFyZXBlYXRlZEZpZWxkbWFzaxJBCg9yZXBlYXRlZF9zdHJ1Y3QYxAIgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOcmVwZWF0ZWRTdHJ1Y3QSOAoMcmVwZWF0ZWRfYW55GLsCIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC3JlcGVhdGVkQW55Ej4KDnJlcGVhdGVkX3ZhbHVlGLwCIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINcmVwZWF0ZWRWYWx1ZRJLChNyZXBlYXRlZF9saXN0X3ZhbHVlGL0CIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5MaXN0VmFsdWVSEXJlcGVhdGVkTGlzdFZhbHVlEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgaewoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhElwKC2NvcmVjdXJzaXZlGAIgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqTAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5El4KBXZhbHVlGAIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqCAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJMCgV2YWx1ZRgCIAEoCzI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEajQEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJbCgV2YWx1ZRgCIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEafAoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJJCgV2YWx1ZRgCIAEoDjIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25FbnVtUgV2YWx1ZToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2VkRW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19CQVoQAhIHCgNNT08QAhIHCgNtb28QAhIHCgNiQXoQAhoCEAFCDQoLb25lb2ZfZmllbGRKBgj1AxD/AyIeCg5Gb3JlaWduTWVzc2FnZRIMCgFjGAEgASgFUgFjIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8zIi8KDkVudW1Pbmx5UHJvdG8zIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASpACgtGb3JlaWduRW51bRIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAkJOCjFjb20uZ29vZ2xlLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zSAH4AQGiAg5FZGl0aW9uc1Byb3RvM5IDAggCSr1kCgcSBQ0AsgIBCocDCgEMEgMNABEy/AIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCiBUZXN0IHNjaGVtYSBmb3IgcHJvdG8zIG1lc3NhZ2VzLiAgVGhpcyB0ZXN0IHNjaGVtYSBpcyB1c2VkIGJ5OgoKIC0gYmVuY2htYXJrcwogLSBmdXp6IHRlc3RzCiAtIGNvbmZvcm1hbmNlIHRlc3RzCgoICgECEgMPAC8KCQoCAwASAxEAIwoJCgIDARIDEgAoCgkKAgMCEgMTACoKCQoCAwMSAxQAJgoJCgIDBBIDFQApCgkKAgMFEgMWACgKCAoBCBIDGAAqCgoKAwgyARIDGAAqCggKAQgSAxkASgoJCgIIARIDGQBKCggKAQgSAxoALAoJCgIIJBIDGgAsCggKAQgSAx0AHApECgIICRIDHQAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoKCAoBCBIDHgAfCgkKAggfEgMeAB8K2wIKAgQAEgUnAJ4CARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKIEFsc28sIGNydWNpYWxseSwgYWxsIG1lc3NhZ2VzIGFuZCBlbnVtcyBpbiB0aGlzIGZpbGUgYXJlIGV2ZW50dWFsbHkKIHN1Ym1lc3NhZ2VzIG9mIHRoaXMgbWVzc2FnZS4gIFNvIGZvciBleGFtcGxlLCBhIGZ1enogdGVzdCBvZiBUZXN0QWxsVHlwZXMKIGNvdWxkIHRyaWdnZXIgYnVncyB0aGF0IG9jY3VyIGluIGFueSBtZXNzYWdlIHR5cGUg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BQACAhIEpwICEgoNCgUFAAICARIEpwICDQoNCgUFAAICAhIEpwIQEQoMCgIEAhIGqgIAqwIBCgsKAwQCARIEqgIIHAoMCgIEAxIGrQIAsgIBCgsKAwQDARIErQIIFgoOCgQEAwQAEgauAgKxAgMKDQoFBAMEAAESBK4CBwsKDgoGBAMEAAIAEgSvAgQPCg8KBwQDBAACAAESBK8CBAoKDwoHBAMEAAIAAhIErwINDgoOCgYEAwQAAgESBLACBA4KDwoHBAMEAAIBARIEsAIECQoPCgcEAwQAAgECEgSwAgwNYghlZGl0aW9uc3DoBwq/lQIKM2VkaXRpb25zL2dvbGRlbi90ZXN0X21lc3NhZ2VzX3Byb3RvMl9lZGl0aW9ucy5wcm90bxImcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIinVYKElRlc3RBbGxUeXBlc1Byb3RvMhIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxKAAQoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlEnYKGG9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEncKFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJtChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITb3B0aW9uYWxGb3JlaWduRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSZwoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzJSEHJlY3Vyc2l2ZU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSgAEKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJ2ChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ3ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SbQoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE3JlcGVhdGVkRm9yZWlnbkVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEigKDHBhY2tlZF9pbnQzMhhLIAMoBUIFqgECGAFSC3BhY2tlZEludDMyEigKDHBhY2tlZF9pbnQ2NBhMIAMoA0IFqgECGAFSC3BhY2tlZEludDY0EioKDXBhY2tlZF91aW50MzIYTSADKA1CBaoBAhgBUgxwYWNrZWRVaW50MzISKgoNcGFja2VkX3VpbnQ2NBhOIAMoBEIFqgECGAFSDHBhY2tlZFVpbnQ2NBIqCg1wYWNrZWRfc2ludDMyGE8gAygRQgWqAQIYAVIMcGFja2VkU2ludDMyEioKDXBhY2tlZF9zaW50NjQYUCADKBJCBaoBAhgBUgxwYWNrZWRTaW50NjQSLAoOcGFja2VkX2ZpeGVkMzIYUSADKAdCBaoBAhgBUg1wYWNrZWRGaXhlZDMyEiwKDnBhY2tlZF9maXhlZDY0GFIgAygGQgWqAQIYAVINcGFja2VkRml4ZWQ2NBIuCg9wYWNrZWRfc2ZpeGVkMzIYUyADKA9CBaoBAhgBUg5wYWNrZWRTZml4ZWQzMhIuCg9wYWNrZWRfc2ZpeGVkNjQYVCADKBBCBaoBAhgBUg5wYWNrZWRTZml4ZWQ2NBIoCgxwYWNrZWRfZmxvYXQYVSADKAJCBaoBAhgBUgtwYWNrZWRGbG9hdBIqCg1wYWNrZWRfZG91YmxlGFYgAygBQgWqAQIYAVIMcGFja2VkRG91YmxlEiYKC3BhY2tlZF9ib29sGFcgAygIQgWqAQIYAVIKcGFja2VkQm9vbBJ6ChJwYWNrZWRfbmVzdGVkX2VudW0YWCADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUIFqgECGAFSEHBhY2tlZE5lc3RlZEVudW0SJQoOdW5wYWNrZWRfaW50MzIYWSADKAVSDXVucGFja2VkSW50MzISJQoOdW5wYWNrZWRfaW50NjQYWiADKANSDXVucGFja2VkSW50NjQSJwoPdW5wYWNrZWRfdWludDMyGFsgAygNUg51bnBhY2tlZFVpbnQzMhInCg91bnBhY2tlZF91aW50NjQYXCADKARSDnVucGFja2VkVWludDY0EicKD3VucGFja2VkX3NpbnQzMhhdIAMoEVIOdW5wYWNrZWRTaW50MzISJwoPdW5wYWNrZWRfc2ludDY0GF4gAygSUg51bnBhY2tlZFNpbnQ2NBIpChB1bnBhY2tlZF9maXhlZDMyGF8gAygHUg91bnBhY2tlZEZpeGVkMzISKQoQdW5wYWNrZWRfZml4ZWQ2NBhgIAMoBlIPdW5wYWNrZWRGaXhlZDY0EisKEXVucGFja2VkX3NmaXhlZDMyGGEgAygPUhB1bnBhY2tlZFNmaXhlZDMyEisKEXVucGFja2VkX3NmaXhlZDY0GGIgAygQUhB1bnBhY2tlZFNmaXhlZDY0EiUKDnVucGFja2VkX2Zsb2F0GGMgAygCUg11bnBhY2tlZEZsb2F0EicKD3VucGFja2VkX2RvdWJsZRhkIAMoAVIOdW5wYWNrZWREb3VibGUSIwoNdW5wYWNrZWRfYm9vbBhlIAMoCFIMdW5wYWNrZWRCb29sEncKFHVucGFja2VkX25lc3RlZF9lbnVtGGYgAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEnVucGFja2VkTmVzdGVkRW51bRJ1Cg9tYXBfaW50MzJfaW50MzIYOCADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEnUKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSewoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ7ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnsKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISewoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBKBAQoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhKBAQoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBg/IAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKHAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhKHAQoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GEEgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJ1Cg9tYXBfaW50MzJfZmxvYXQYQiADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EngKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSbwoNbWFwX2Jvb2xfYm9vbBhEIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJ7ChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEngKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nQnl0ZXNFbnRyeVIObWFwU3RyaW5nQnl0ZXMSkQEKGW1hcF9zdHJpbmdfbmVzdGVkX21lc3NhZ2UYRyADKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5UhZtYXBTdHJpbmdOZXN0ZWRNZXNzYWdlEpQBChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJXLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKIAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnlSE21hcFN0cmluZ05lc3RlZEVudW0SiwEKF21hcF9zdHJpbmdfZm9yZWlnbl9lbnVtGEogAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJ8ChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSZgoKb25lb2ZfZW51bRh3IAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJbCgRkYXRhGMkBIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5EYXRhQgWqAQIoAlIEZGF0YRKIAQoTbXVsdGl3b3JkZ3JvdXBmaWVsZBjMASABKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTXVsdGlXb3JkR3JvdXBGaWVsZEIFqgECKAJSE211bHRpd29yZGdyb3VwZmllbGQSMAoNZGVmYXVsdF9pbnQzMhjxASABKAU6Ci0xMjM0NTY3ODlSDGRlZmF1bHRJbnQzMhI6Cg1kZWZhdWx0X2ludDY0GPIBIAEoAzoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDGRlZmF1bHRJbnQ2NBIyCg5kZWZhdWx0X3VpbnQzMhjzASABKA06CjIxMjM0NTY3ODlSDWRlZmF1bHRVaW50MzISPAoOZGVmYXVsdF91aW50NjQY9AEgASgEOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OVINZGVmYXVsdFVpbnQ2NBIyCg5kZWZhdWx0X3NpbnQzMhj1ASABKBE6Ci0xMjM0NTY3ODlSDWRlZmF1bHRTaW50MzISPAoOZGVmYXVsdF9zaW50NjQY9gEgASgSOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVINZGVmYXVsdFNpbnQ2NBI0Cg9kZWZhdWx0X2ZpeGVkMzIY9wEgASgHOgoyMTIzNDU2Nzg5Ug5kZWZhdWx0Rml4ZWQzMhI+Cg9kZWZhdWx0X2ZpeGVkNjQY+AEgASgGOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkNjQSNgoQZGVmYXVsdF9zZml4ZWQzMhj5ASABKA86Ci0xMjM0NTY3ODlSD2RlZmF1bHRTZml4ZWQzMhJAChBkZWZhdWx0X3NmaXhlZDY0GPoBIAEoEDoULTkxMjM0NTY3ODkxMjM0NTY3ODlSD2RlZmF1bHRTZml4ZWQ2NBIrCg1kZWZhdWx0X2Zsb2F0GPsBIAEoAjoFOWUrMDlSDGRlZmF1bHRGbG9hdBItCg5kZWZhdWx0X2RvdWJsZRj8ASABKAE6BTdlKzIyUg1kZWZhdWx0RG91YmxlEigKDGRlZmF1bHRfYm9vbBj9ASABKAg6BHRydWVSC2RlZmF1bHRCb29sEi8KDmRlZmF1bHRfc3RyaW5nGP4BIAEoCToHUm9zZWJ1ZFINZGVmYXVsdFN0cmluZxIsCg1kZWZhdWx0X2J5dGVzGP8BIAEoDDoGam9zaHVhUgxkZWZhdWx0Qnl0ZXMSHwoKZmllbGRuYW1lMRiRAyABKAVSCmZpZWxkbmFtZTESIAoLZmllbGRfbmFtZTIYkgMgASgFUgpmaWVsZE5hbWUyEiEKDF9maWVsZF9uYW1lMxiTAyABKAVSCkZpZWxkTmFtZTMSIgoNZmllbGRfX25hbWU0XxiUAyABKAVSCmZpZWxkTmFtZTQSIQoLZmllbGQwbmFtZTUYlQMgASgFUgtmaWVsZDBuYW1lNRIjCg1maWVsZF8wX25hbWU2GJYDIAEoBVILZmllbGQwTmFtZTYSHwoKZmllbGROYW1lNxiXAyABKAVSCmZpZWxkTmFtZTcSHwoKRmllbGROYW1lOBiYAyABKAVSCkZpZWxkTmFtZTgSIAoLZmllbGRfTmFtZTkYmQMgASgFUgpmaWVsZE5hbWU5EiIKDEZpZWxkX05hbWUxMBiaAyABKAVSC0ZpZWxkTmFtZTEwEiIKDEZJRUxEX05BTUUxMRibAyABKAVSC0ZJRUxETkFNRTExEiIKDEZJRUxEX25hbWUxMhicAyABKAVSC0ZJRUxETmFtZTEyEiQKDl9fZmllbGRfbmFtZTEzGJ0DIAEoBVILRmllbGROYW1lMTMSJAoOX19GaWVsZF9uYW1lMTQYngMgASgFUgtGaWVsZE5hbWUxNBIjCg1maWVsZF9fbmFtZTE1GJ8DIAEoBVILZmllbGROYW1lMTUSIwoNZmllbGRfX05hbWUxNhigAyABKAVSC2ZpZWxkTmFtZTE2EiQKDmZpZWxkX25hbWUxN19fGKEDIAEoBVILZmllbGROYW1lMTcSJAoORmllbGRfbmFtZTE4X18YogMgASgFUgtGaWVsZE5hbWUxOBp7Cg1OZXN0ZWRNZXNzYWdlEgwKAWEYASABKAVSAWESXAoLY29yZWN1cnNpdmUYAiABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzJSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGpMBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSXgoFdmFsdWUYAiABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGogBChxNYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElIKBXZhbHVlGAIgASgLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSBXZhbHVlOgI4ARqNAQoYTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElsKBXZhbHVlGAIgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SBXZhbHVlOgI4ARqCAQoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJPCgV2YWx1ZRgCIAEoDjI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUgV2YWx1ZToCOAEaTAoERGF0YRIgCgtncm91cF9pbnQzMhjKASABKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGMsBIAEoDVILZ3JvdXBVaW50MzIaWwoTTXVsdGlXb3JkR3JvdXBGaWVsZBIgCgtncm91cF9pbnQzMhjNASABKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGM4BIAEoDVILZ3JvdXBVaW50MzIaIQoRTWVzc2FnZVNldENvcnJlY3QqCAgEEP////8HOgIIARqMAgobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xEhAKA3N0chgZIAEoCVIDc3RyMtoBChVtZXNzYWdlX3NldF9leHRlbnNpb24STC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QY+bteIAEoCzJWLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24aiQIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhIMCgFpGAkgASgFUgFpMtsBChVtZXNzYWdlX3NldF9leHRlbnNpb24STC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24yUhNtZXNzYWdlU2V0RXh0ZW5zaW9uIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9mX2ZpZWxkSgYI6AcQkE4iJAoURm9yZWlnbk1lc3NhZ2VQcm90bzISDAoBYxgBIAEoBVIBYyJQCgpHcm91cEZpZWxkEh8KC2dyb3VwX2ludDMyGHogASgFUgpncm91cEludDMyEiEKDGdyb3VwX3VpbnQzMhh7IAEoDVILZ3JvdXBVaW50MzIitwMKFVVua25vd25Ub1Rlc3RBbGxUeXBlcxImCg5vcHRpb25hbF9pbnQzMhjpByABKAVSDW9wdGlvbmFsSW50MzISKAoPb3B0aW9uYWxfc3RyaW5nGOoHIAEoCVIOb3B0aW9uYWxTdHJpbmcSZAoObmVzdGVkX21lc3NhZ2UY6wcgASgLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSDW5lc3RlZE1lc3NhZ2USeQoNb3B0aW9uYWxncm91cBjsByABKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Vbmtub3duVG9UZXN0QWxsVHlwZXMuT3B0aW9uYWxHcm91cEIFqgECKAJSDW9wdGlvbmFsZ3JvdXASJAoNb3B0aW9uYWxfYm9vbBjuByABKAhSDG9wdGlvbmFsQm9vbBImCg5yZXBlYXRlZF9pbnQzMhjzByADKAVSDXJlcGVhdGVkSW50MzIaHQoNT3B0aW9uYWxHcm91cBIMCgFhGAEgASgFUgFhIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8yIi8KDkVudW1Pbmx5UHJvdG8yIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASIlCg9PbmVTdHJpbmdQcm90bzISEgoEZGF0YRgBIAEoCVIEZGF0YSJhChFQcm90b1dpdGhLZXl3b3JkcxIWCgZpbmxpbmUYASABKAVSBmlubGluZRIYCgdjb25jZXB0GAIgASgJUgdjb25jZXB0EhoKCHJlcXVpcmVzGAMgAygJUghyZXF1aXJlcyL2HAoaVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzISLAoOcmVxdWlyZWRfaW50MzIYASABKAVCBaoBAggDUg1yZXF1aXJlZEludDMyEiwKDnJlcXVpcmVkX2ludDY0GAIgASgDQgWqAQIIA1INcmVxdWlyZWRJbnQ2NBIuCg9yZXF1aXJlZF91aW50MzIYAyABKA1CBaoBAggDUg5yZXF1aXJlZFVpbnQzMhIuCg9yZXF1aXJlZF91aW50NjQYBCABKARCBaoBAggDUg5yZXF1aXJlZFVpbnQ2NBIuCg9yZXF1aXJlZF9zaW50MzIYBSABKBFCBaoBAggDUg5yZXF1aXJlZFNpbnQzMhIuCg9yZXF1aXJlZF9zaW50NjQYBiABKBJCBaoBAggDUg5yZXF1aXJlZFNpbnQ2NBIwChByZXF1aXJlZF9maXhlZDMyGAcgASgHQgWqAQIIA1IPcmVxdWlyZWRGaXhlZDMyEjAKEHJlcXVpcmVkX2ZpeGVkNjQYCCABKAZCBaoBAggDUg9yZXF1aXJlZEZpeGVkNjQSMgoRcmVxdWlyZWRfc2ZpeGVkMzIYCSABKA9CBaoBAggDUhByZXF1aXJlZFNmaXhlZDMyEjIKEXJlcXVpcmVkX3NmaXhlZDY0GAogASgQQgWqAQIIA1IQcmVxdWlyZWRTZml4ZWQ2NBIsCg5yZXF1aXJlZF9mbG9hdBgLIAEoAkIFqgECCANSDXJlcXVpcmVkRmxvYXQSLgoPcmVxdWlyZWRfZG91YmxlGAwgASgBQgWqAQIIA1IOcmVxdWlyZWREb3VibGUSKgoNcmVxdWlyZWRfYm9vbBgNIAEoCEIFqgECCANSDHJlcXVpcmVkQm9vbBIuCg9yZXF1aXJlZF9zdHJpbmcYDiABKAlCBaoBAggDUg5yZXF1aXJlZFN0cmluZxIsCg5yZXF1aXJlZF9ieXRlcxgPIAEoDEIFqgECCANSDXJlcXVpcmVkQnl0ZXMSjwEKF3JlcXVpcmVkX25lc3RlZF9tZXNzYWdlGBIgASgLMlAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZUIFqgECCANSFXJlcXVpcmVkTmVzdGVkTWVzc2FnZRJ9ChhyZXF1aXJlZF9mb3JlaWduX21lc3NhZ2UYEyABKAsyPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMkIFqgECCANSFnJlcXVpcmVkRm9yZWlnbk1lc3NhZ2UShgEKFHJlcXVpcmVkX25lc3RlZF9lbnVtGBUgASgOMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTmVzdGVkRW51bUIFqgECCANSEnJlcXVpcmVkTmVzdGVkRW51bRJ0ChVyZXF1aXJlZF9mb3JlaWduX2VudW0YFiABKA4yOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMkIFqgECCANSE3JlcXVpcmVkRm9yZWlnbkVudW0SOwoVcmVxdWlyZWRfc3RyaW5nX3BpZWNlGBggASgJQgcIAqoBAggDUhNyZXF1aXJlZFN0cmluZ1BpZWNlEiwKDXJlcXVpcmVkX2NvcmQYGSABKAlCBwgBqgECCANSDHJlcXVpcmVkQ29yZBJ2ChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yQgWqAQIIA1IQcmVjdXJzaXZlTWVzc2FnZRKAAQoab3B0aW9uYWxfcmVjdXJzaXZlX21lc3NhZ2UYHCABKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIYb3B0aW9uYWxSZWN1cnNpdmVNZXNzYWdlEmUKBGRhdGEYyQEgASgLMkcucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuRGF0YUIHqgEECAMoAlIEZGF0YRI3Cg1kZWZhdWx0X2ludDMyGPEBIAEoBToKLTEyMzQ1Njc4OUIFqgECCANSDGRlZmF1bHRJbnQzMhJBCg1kZWZhdWx0X2ludDY0GPIBIAEoAzoULTkxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUgxkZWZhdWx0SW50NjQSOQoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5QgWqAQIIA1INZGVmYXVsdFVpbnQzMhJDCg5kZWZhdWx0X3VpbnQ2NBj0ASABKAQ6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5QgWqAQIIA1INZGVmYXVsdFVpbnQ2NBI5Cg5kZWZhdWx0X3NpbnQzMhj1ASABKBE6Ci0xMjM0NTY3ODlCBaoBAggDUg1kZWZhdWx0U2ludDMyEkMKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUg1kZWZhdWx0U2ludDY0EjsKD2RlZmF1bHRfZml4ZWQzMhj3ASABKAc6CjIxMjM0NTY3ODlCBaoBAggDUg5kZWZhdWx0Rml4ZWQzMhJFCg9kZWZhdWx0X2ZpeGVkNjQY+AEgASgGOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSDmRlZmF1bHRGaXhlZDY0Ej0KEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5QgWqAQIIA1IPZGVmYXVsdFNmaXhlZDMyEkcKEGRlZmF1bHRfc2ZpeGVkNjQY+gEgASgQOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSD2RlZmF1bHRTZml4ZWQ2NBIyCg1kZWZhdWx0X2Zsb2F0GPsBIAEoAjoFOWUrMDlCBaoBAggDUgxkZWZhdWx0RmxvYXQSNAoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMkIFqgECCANSDWRlZmF1bHREb3VibGUSLwoMZGVmYXVsdF9ib29sGP0BIAEoCDoEdHJ1ZUIFqgECCANSC2RlZmF1bHRCb29sEjYKDmRlZmF1bHRfc3RyaW5nGP4BIAEoCToHUm9zZWJ1ZEIFqgECCANSDWRlZmF1bHRTdHJpbmcSMwoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YUIFqgECCANSDGRlZmF1bHRCeXRlcxqIAgoNTmVzdGVkTWVzc2FnZRITCgFhGAEgASgFQgWqAQIIA1IBYRJrCgtjb3JlY3Vyc2l2ZRgCIAEoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yQgWqAQIIA1ILY29yZWN1cnNpdmUSdQoUb3B0aW9uYWxfY29yZWN1cnNpdmUYAyABKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlITb3B0aW9uYWxDb3JlY3Vyc2l2ZRpaCgREYXRhEicKC2dyb3VwX2ludDMyGMoBIAEoBUIFqgECCANSCmdyb3VwSW50MzISKQoMZ3JvdXBfdWludDMyGMsBIAEoDUIFqgECCANSC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEaowIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIXCgNzdHIYGSABKAlCBaoBAggDUgNzdHIy6gEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJULnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyXi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24aoAIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhITCgFpGAkgASgFQgWqAQIIA1IBaTLrAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uElQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyXi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24iOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASoFCHgQyQFKBgjoBxCQTipGChFGb3JlaWduRW51bVByb3RvMhIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAjpjCg9leHRlbnNpb25faW50MzISOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIYeCABKAVSDmV4dGVuc2lvbkludDMyOpUBCgpncm91cGZpZWxkEjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGHkgASgLMjIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuR3JvdXBGaWVsZEIFqgECKAJSCmdyb3VwZmllbGRCUgoxY29tLmdvb2dsZS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMkgB+AEBogIORWRpdGlvbnNQcm90bzKSAwYQAhgCIANKmpgBCgcSBQ0AgQUBCoEDCgEMEgMNABEy4AIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCiBUZXN0IHNjaGVtYSBmb3IgcHJvdG8yIG1lc3NhZ2VzLiAgVGhpcyB0ZXN0IHNjaGVtYSBpcyB1c2VkIGJ5OgoKIC0gY29uZm9ybWFuY2UgdGVzdHMKMhQgTElOVDogQUxMT1dfR1JPVVBTCgoICgECEgMPAC8KCAoBCBIDEQAjCgoKAwgyAhIDEQAjCggKAQgSAxIAMwoKCgMIMgMSAxIAMwoICgEIEgMTACcKCgoDCDIEEgMTACcKCAoBCBIDFABKCgkKAggBEgMUAEoKCAoBCBIDFQAsCgkKAggkEgMVACwKCAoBCBIDGAAcCkQKAggJEgMYABwaOSBUaGlzIGlzIHRoZSBkZWZhdWx0LCBidXQgd2Ugc3BlY2lmeSBpdCBoZXJlIGV4cGxpY2l0bHkuCgoICgEIEgMZAB8KCQoCCB8SAxkAHwrbAgoCBAASBSIA1AIBGs0CIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAogZm9ybXMuCgogQWxzbywgY3J1Y2lhbGx5LCBhbGwgbWVzc2FnZXMgYW5kIGVudW1zIGluIHRoaXMgZmlsZSBhcmUgZXZlbnR1YWxseQogc3VibWVzc2FnZXMgb2YgdGhpcyBtZXNzYWdlLiAgU28gZm9yIGV4YW1wbGUsIGEgZnV6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blR5cGVzSsEQCgYSBB4ALwEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiACwKCQoCCAESAyIALAoICgEIEgMjADMKCQoCCAgSAyMAMwoICgEIEgMkACIKCQoCCAoSAyQAIgoICgEIEgMlACEKCQoCCCQSAyUAIQoICgEIEgMmADsKCQoCCCUSAyYAOwoICgEIEgMnAE0KCQoCCAsSAycATQqDAQoCBAASBCsALwEadyBgU291cmNlQ29udGV4dGAgcmVwcmVzZW50cyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIG9mIGEKIHByb3RvYnVmIGVsZW1lbnQsIGxpa2UgdGhlIGZpbGUgaW4gd2hpY2ggaXQgaXMgZGVmaW5lZC4KCgoKAwQAARIDKwgVCqMBCgQEAAIAEgMuAhcalQEgVGhlIHBhdGgtcXVhbGlmaWVkIG5hbWUgb2YgdGhlIC5wcm90byBmaWxlIHRoYXQgY29udGFpbmVkIHRoZSBhc3NvY2lhdGVkCiBwcm90b2J1ZiBlbGVtZW50LiAgRm9yIGV4YW1wbGU6IGAiZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvImAuCgoMCgUEAAIABRIDLgIICgwKBQQAAgABEgMuCRIKDAoFBAACAAMSAy4VFmIGcHJvdG8zCvtJChpnb29nbGUvcHJvdG9idWYvdHlwZS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmGhlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvGiRnb29nbGUvcHJvdG9idWYvc291cmNlX2NvbnRleHQucHJvdG8ipwIKBFR5cGUSEgoEbmFtZRgBIAEoCVIEbmFtZRIuCgZmaWVsZHMYAiADKAsyFi5nb29nbGUucHJvdG9idWYuRmllbGRSBmZpZWxkcxIWCgZvbmVvZnMYAyADKAlSBm9uZW9mcxIxCgdvcHRpb25zGAQgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucxJFCg5zb3VyY2VfY29udGV4dBgFIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei8KBnN5bnRheBgGIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheBIYCgdlZGl0aW9uGAcgASgJUgdlZGl0aW9uIrQGCgVGaWVsZBIvCgRraW5kGAEgASgOMhsuZ29vZ2xlLnByb3RvYnVmLkZpZWxkLktpbmRSBGtpbmQSRAoLY2FyZGluYWxpdHkYAiABKA4yIi5nb29nbGUucHJvdG9idWYuRmllbGQuQ2FyZGluYWxpdHlSC2NhcmRpbmFsaXR5EhYKBm51bWJlchgDIAEoBVIGbnVtYmVyEhIKBG5hbWUYBCABKAlSBG5hbWUSGQoIdHlwZV91cmwYBiABKAlSB3R5cGVVcmwSHwoLb25lb2ZfaW5kZXgYByABKAVSCm9uZW9mSW5kZXgSFgoGcGFja2VkGAggASgIUgZwYWNrZWQSMQoHb3B0aW9ucxgJIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSGwoJanNvbl9uYW1lGAogASgJUghqc29uTmFtZRIjCg1kZWZhdWx0X3ZhbHVlGAsgASgJUgxkZWZhdWx0VmFsdWUiyAIKBEtpbmQSEAoMVFlQRV9VTktOT1dOEAASDwoLVFlQRV9ET1VCTEUQARIOCgpUWVBFX0ZMT0FUEAISDgoKVFlQRV9JTlQ2NBADEg8KC1RZUEVfVUlOVDY0EAQSDgoKVFlQRV9JTlQzMhAFEhAKDFRZUEVfRklYRUQ2NBAGEhAKDFRZUEVfRklYRUQzMhAHEg0KCVRZUEVfQk9PTBAIEg8KC1RZUEVfU1RSSU5HEAkSDgoKVFlQRV9HUk9VUBAKEhAKDFRZUEVfTUVTU0FHRRALEg4KClRZUEVfQllURVMQDBIPCgtUWVBFX1VJTlQzMhANEg0KCVRZUEVfRU5VTRAOEhEKDVRZUEVfU0ZJWEVEMzIQDxIRCg1UWVBFX1NGSVhFRDY0EBASDwoLVFlQRV9TSU5UMzIQERIPCgtUWVBFX1NJTlQ2NBASInQKC0NhcmRpbmFsaXR5EhcKE0NBUkRJTkFMSVRZX1VOS05PV04QABIYChRDQVJESU5BTElUWV9PUFRJT05BTBABEhgKFENBUkRJTkFMSVRZX1JFUVVJUkVEEAISGAoUQ0FSRElOQUxJVFlfUkVQRUFURUQQAyKZAgoERW51bRISCgRuYW1lGAEgASgJUgRuYW1lEjgKCWVudW12YWx1ZRgCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVSCWVudW12YWx1ZRIxCgdvcHRpb25zGAMgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucxJFCg5zb3VyY2VfY29udGV4dBgEIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei8KBnN5bnRheBgFIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheBIYCgdlZGl0aW9uGAYgASgJUgdlZGl0aW9uImoKCUVudW1WYWx1ZRISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgCIAEoBVIGbnVtYmVyEjEKB29wdGlvbnMYAyADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zIkgKBk9wdGlvbhISCgRuYW1lGAEgASgJUgRuYW1lEioKBXZhbHVlGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIFdmFsdWUqQwoGU3ludGF4EhEKDVNZTlRBWF9QUk9UTzIQABIRCg1TWU5UQVhfUFJPVE8zEAESEwoPU1lOVEFYX0VESVRJT05TEAJCewoTY29tLmdvb2dsZS5wcm90b2J1ZkIJVHlwZVByb3RvUAFaLWdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3R5cGVwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qNOwoHEgUeAMABAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT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dWYvdHlwZS5wcm90byLBAgoDQXBpEhIKBG5hbWUYASABKAlSBG5hbWUSMQoHbWV0aG9kcxgCIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RSB21ldGhvZHMSMQoHb3B0aW9ucxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSGAoHdmVyc2lvbhgEIAEoCVIHdmVyc2lvbhJFCg5zb3VyY2VfY29udGV4dBgFIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei4KBm1peGlucxgGIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5NaXhpblIGbWl4aW5zEi8KBnN5bnRheBgHIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheCKyAgoGTWV0aG9kEhIKBG5hbWUYASABKAlSBG5hbWUSKAoQcmVxdWVzdF90eXBlX3VybBgCIAEoCVIOcmVxdWVzdFR5cGVVcmwSKwoRcmVxdWVzdF9zdHJlYW1pbmcYAyABKAhSEHJlcXVlc3RTdHJlYW1pbmcSKgoRcmVzcG9uc2VfdHlwZV91cmwYBCABKAlSD3Jlc3BvbnNlVHlwZVVybBItChJyZXNwb25zZV9zdHJlYW1pbmcYBSABKAhSEXJlc3BvbnNlU3RyZWFtaW5nEjEKB29wdGlvbnMYBiADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEi8KBnN5bnRheBgHIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheCIvCgVNaXhpbhISCgRuYW1lGAEgASgJUgRuYW1lEhIKBHJvb3QYAiABKAlSBHJvb3RCdgoTY29tLmdvb2dsZS5wcm90b2J1ZkIIQXBpUHJvdG9QAVosZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vYXBpcGKiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKgDwKBxIFHgDOAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoJCgIDABIDIgAuCgkKAgMBEgMjACQKCAoBCBIDJQAsCgkKAggBEgMlACwKCAoBCBIDJgApCgkKAggIEgMmACkKCAoBCBIDJwAiCgkKAggKEgMnACIKCAoBCBIDKAAhCgkKAggkEgMoACEKCAoBCBIDKQA7CgkKAgglEgMpADsKCAoBCBIDKgBDCgkKAggLEgMqAEMKqwQKAgQAEgQ1AF8BGp4EIEFwaSBpcyBhIGxpZ2h0LXdlaWdodCBkZXNjcmlwdG9yIGZvciBhbiBBUEkgSW50ZXJmYWNlLgoKIEludGVyZmFjZXMgYXJlIGFsc28gZGVzY3JpYmVkIGFzICJwcm90b2NvbCBidWZmZXIgc2VydmljZXMiIGluIHNvbWUgY29udGV4dHMsCiBzdWNoIGFzIGJ5IHRoZSAic2VydmljZSIga2V5d29yZCBpbiBhIC5wcm90byBmaWxlLCBidXQgdGhleSBhcmUgZGlmZmVyZW50CiBmcm9tIEFQSSBTZXJ2aWNlcywgd2hpY2ggcmVwcmVzZW50IGEgY29uY3JldGUgaW1wbGVtZW50YXRpb24gb2YgYW4gaW50ZXJmYWNlCiBhcyBvcHBvc2VkIHRvIHNpbXBseSBhIGRlc2NyaXB0aW9uIG9mIG1ldGhvZHMgYW5kIGJpbmRpbmdzLiBUaGV5IGFyZSBhbHNvCiBzb21ldGltZXMgc2ltcGx5IHJlZmVycmVkIHRvIGFzICJBUElzIiBpbiBvdGhlciBjb250ZXh0cywgc3VjaCBhcyB0aGUgbmFtZSBvZgogdGhpcyBtZXNzYWdlIGl0c2VsZi4gU2VlIGh0dHBzOi8vY2xvdWQuZ29vZ2xlLmNvbS9hcGlzL2Rlc2lnbi9nbG9zc2FyeSBmb3IKIGRldGFpbGVkIHRlcm1pbm9sb2d5LgoKCgoDBAABEgM1CAsKewoEBAACABIDOAISGm4gVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoaXMgaW50ZXJmYWNlLCBpbmNsdWRpbmcgcGFja2FnZSBuYW1lCiBmb2xsb3dlZCBieSB0aGUgaW50ZXJmYWNlJ3Mgc2ltcGxlIG5hbWUuCgoMCgUEAAIABRIDOAIICgwKBQQAAgABEgM4CQ0KDAoFBAACAAMSAzgQEQpDCgQEAAIBEgM7Ah4aNiBUaGUgbWV0aG9kcyBvZiB0aGlzIGludGVyZmFjZSwgaW4gdW5zcGVjaWZpZWQgb3JkZXIuCgoMCgUEAAIBBBIDOwIKCgwKBQQAAgEGEgM7CxEKDAoFBAACAQESAzsSGQoMCgUEAAIBAxIDOxwdCjYKBAQAAgISAz4CHhopIEFueSBtZXRhZGF0YSBhdHRhY2hlZCB0byB0aGUgaW50ZXJmYWNlLgoKDAoFBAACAgQSAz4CCgoMCgUEAAICBhIDPgsRCgwKBQQAAgIBEgM+EhkKDAoFBAACAgMSAz4cHQqBCAoEBAACAxIDVAIVGvMHIEEgdmVyc2lvbiBzdHJpbmcgZm9yIHRoaXMgaW50ZXJmYWNlLiBJZiBzcGVjaWZpZWQsIG11c3QgaGF2ZSB0aGUgZm9ybQogYG1ham9yLXZlcnNpb24ubWlub3ItdmVyc2lvbmAsIGFzIGluIGAxLjEwYC4gSWYgdGhlIG1pbm9yIHZlcnNpb24gaXMKIG9taXR0ZWQsIGl0IGRlZmF1bHRzIHRvIHplcm8uIElmIHRoZSBlbnRpcmUgdmVyc2lvbiBmaWVsZCBpcyBlbXB0eSwgdGhlCiBtYWpvciB2ZXJzaW9uIGlzIGRlcml2ZWQgZnJvbSB0aGUgcGFja2FnZSBuYW1lLCBhcyBvdXRsaW5lZCBiZWxvdy4gSWYgdGhlCiBmaWVsZCBpcyBub3QgZW1wdHksIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIG5hbWUgd2lsbCBiZSB2ZXJpZmllZCB0byBiZQogY29uc2lzdGVudCB3aXRoIHdoYXQgaXMgcHJvdmlkZWQgaGVyZS4KCiBUaGUgdmVyc2lvbmluZyBzY2hlbWEgdXNlcyBbc2VtYW50aWMKIHZlcnNpb25pbmddKGh0dHA6Ly9zZW12ZXIub3JnKSB3aGVyZSB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIKIGluZGljYXRlcyBhIGJyZWFraW5nIGNoYW5nZSBhbmQgdGhlIG1pbm9yIHZlcnNpb24gYW4gYWRkaXRpdmUsCiBub24tYnJlYWtpbmcgY2hhbmdlLiBCb3RoIHZlcnNpb24gbnVtYmVycyBhcmUgc2lnbmFscyB0byB1c2Vycwogd2hhdCB0byBleHBlY3QgZnJvbSBkaWZmZXJlbnQgdmVyc2lvbnMsIGFuZCBzaG91bGQgYmUgY2FyZWZ1bGx5CiBjaG9zZW4gYmFzZWQgb24gdGhlIHByb2R1Y3QgcGxhbi4KCiBUaGUgbWFqb3IgdmVyc2lvbiBpcyBhbHNvIHJlZmxlY3RlZCBpbiB0aGUgcGFja2FnZSBuYW1lIG9mIHRoZQogaW50ZXJmYWNlLCB3aGljaCBtdXN0IGVuZCBpbiBgdjxtYWpvci12ZXJzaW9uPmAsIGFzIGluCiBgZ29vZ2xlLmZlYXR1cmUudjFgLiBGb3IgbWFqb3IgdmVyc2lvbnMgMCBhbmQgMSwgdGhlIHN1ZmZpeCBjYW4KIGJlIG9taXR0ZWQuIFplcm8gbWFqb3IgdmVyc2lvbnMgbXVzdCBvbmx5IGJlIHVzZWQgZm9yCiBleHBlcmltZW50YWwsIG5vbi1HQSBpbnRlcmZhY2VzLgoKCgwKBQQAAgMFEgNUAggKDAoFBAACAwESA1QJEAoMCgUEAAIDAxIDVBMUClsKBAQAAgQSA1gCIxpOIFNvdXJjZSBjb250ZXh0IGZvciB0aGUgcHJvdG9jb2wgYnVmZmVyIHNlcnZpY2UgcmVwcmVzZW50ZWQgYnkgdGhpcwogbWVzc2FnZS4KCgwKBQQAAgQGEgNYAg8KDAoFBAACBAESA1gQHgoMCgUEAAIEAxIDWCEiCjIKBAQAAgUSA1sCHBolIEluY2x1ZGVkIGludGVyZmFjZXMuIFNlZSBbTWl4aW5dW10uCgoMCgUEAAIFBBIDWwIKCgwKBQQAAgUGEgNbCxAKDAoFBAACBQESA1sRFwoMCgUEAAIFAxIDWxobCjAKBAQAAgYSA14CFBojIFRoZSBzb3VyY2Ugc3ludGF4IG9mIHRoZSBzZXJ2aWNlLgoKDAoFBAACBgYSA14CCAoMCgUEAAIGARIDXgkPCgwKBQQAAgYDEgNeEhMKPQoCBAESBGIAdwEaMSBNZXRob2QgcmVwcmVzZW50cyBhIG1ldGhvZCBvZiBhbiBBUEkgaW50ZXJmYWNlLgoKCgoDBAEBEgNiCA4KLgoEBAECABIDZAISGiEgVGhlIHNpbXBsZSBuYW1lIG9mIHRoaXMgbWV0aG9kLgoKDAoFBAECAAUSA2QCCAoMCgUEAQIAARIDZAkNCgwKBQQBAgADEgNkEBEKLwoEBAECARIDZwIeGiIgQSBVUkwgb2YgdGhlIGlucHV0IG1lc3NhZ2UgdHlwZS4KCgwKBQQBAgEFEgNnAggKDAoFBAECAQESA2cJGQoMCgUEAQIBAxIDZxwdCjAKBAQBAgISA2oCHRojIElmIHRydWUsIHRoZSByZXF1ZXN0IGlzIHN0cmVhbWVkLgoKDAoFBAECAgUSA2oCBgoMCgUEAQICARIDagcYCgwKBQQBAgIDEgNqGxwKMgoEBAECAxIDbQIfGiUgVGhlIFVSTCBvZiB0aGUgb3V0cHV0IG1lc3NhZ2UgdHlwZS4KCgwKBQQBAgMFEgNtAggKDAoFBAECAwESA20JGgoMCgUEAQIDAxIDbR0eCjEKBAQBAgQSA3ACHhokIElmIHRydWUsIHRoZSByZXNwb25zZSBpcyBzdHJlYW1lZC4KCgwKBQQBAgQFEgNwAgYKDAoFBAECBAESA3AHGQoMCgUEAQIEAxIDcBwdCjMKBAQBAgUSA3MCHhomIEFueSBtZXRhZGF0YSBhdHRhY2hlZCB0byB0aGUgbWV0aG9kLgoKDAoFBAECBQQSA3MCCgoMCgUEAQIFBhIDcwsRCgwKBQQBAgUBEgNzEhkKDAoFBAECBQMSA3McHQowCgQEAQIGEgN2AhQaIyBUaGUgc291cmNlIHN5bnRheCBvZiB0aGlzIG1ldGhvZC4KCgwKBQQBAgYGEgN2AggKDAoFBAECBgESA3YJDwoMCgUEAQIGAxIDdhITCsoTCgIEAhIGxwEAzgEBGrsTIERlY2xhcmVzIGFuIEFQSSBJbnRlcmZhY2UgdG8gYmUgaW5jbHVkZWQgaW4gdGhpcyBpbnRlcmZhY2UuIFRoZSBpbmNsdWRpbmcKIGludGVyZmFjZSBtdXN0IHJlZGVjbGFyZSBhbGwgdGhlIG1ldGhvZHMgZnJvbSB0aGUgaW5jbHVkZWQgaW50ZXJmYWNlLCBidXQKIGRvY3VtZW50YXRpb24gYW5kIG9wdGlvbnMgYXJlIGluaGVyaXRlZCBhcyBmb2xsb3dzOgoKIC0gSWYgYWZ0ZXIgY29tbWVudCBhbmQgd2hpdGVzcGFjZSBzdHJpcHBpbmcsIHRoZSBkb2N1bWVudGF0aW9uCiAgIHN0cmluZyBvZiB0aGUgcmVkZWNsYXJlZCBtZXRob2QgaXMgZW1wdHksIGl0IHdpbGwgYmUgaW5oZXJpdGVkCiAgIGZyb20gdGhlIG9yaWdpbmFsIG1ldGhvZC4KCiAtIEVhY2ggYW5ub3RhdGlvbiBiZWxvbmdpbmcgdG8gdGhlIHNlcnZpY2UgY29uZmlnIChodHRwLAogICB2aXNpYmlsaXR5KSB3aGljaCBpcyBub3Qgc2V0IGluIHRoZSByZWRlY2xhcmVkIG1ldGhvZCB3aWxsIGJlCiAgIGluaGVyaXRlZC4KCiAtIElmIGFuIGh0dHAgYW5ub3RhdGlvbiBpcyBpbmhlcml0ZWQsIHRoZSBwYXRoIHBhdHRlcm4gd2lsbCBiZQogICBtb2RpZmllZCBhcyBmb2xsb3dzLiBBbnkgdmVyc2lvbiBwcmVmaXggd2lsbCBiZSByZXBsYWNlZCBieSB0aGUKICAgdmVyc2lvbiBvZiB0aGUgaW5jbHVkaW5nIGludGVyZmFjZSBwbHVzIHRoZSBbcm9vdF1bXSBwYXRoIGlmCiAgIHNwZWNpZmllZC4KCiBFeGFtcGxlIG9mIGEgc2ltcGxlIG1peGluOgoKICAgICBwYWNrYWdlIGdvb2dsZS5hY2wudjE7CiAgICAgc2VydmljZSBBY2Nlc3NDb250cm9sIHsKICAgICAgIC8vIEdldCB0aGUgdW5kZXJseWluZyBBQ0wgb2JqZWN0LgogICAgICAgcnBjIEdldEFjbChHZXRBY2xSZXF1ZXN0KSByZXR1cm5zIChBY2wpIHsKICAgICAgICAgb3B0aW9uIChnb29nbGUuYXBpLmh0dHApLmdldCA9ICIvdjEve3Jlc291cmNlPSoqfTpnZXRBY2wiOwogICAgICAgfQogICAgIH0KCiAgICAgcGFja2FnZSBnb29nbGUuc3RvcmFnZS52MjsKICAgICBzZXJ2aWNlIFN0b3JhZ2UgewogICAgICAgcnBjIEdldEFjbChHZXRBY2xSZXF1ZXN0KSByZXR1cm5zIChBY2wpOwoKICAgICAgIC8vIEdldCBhIGRhdGEgcmVjb3JkLgogICAgICAgcnBjIEdldERhdGEoR2V0RGF0YVJlcXVlc3QpIHJldHVybnMgKERhdGEpIHsKICAgICAgICAgb3B0aW9uIChnb29nbGUuYXBpLmh0dHApLmdldCA9ICIvdjIve3Jlc291cmNlPSoqfSI7CiAgICAgICB9CiAgICAgfQoKIEV4YW1wbGUgb2YgYSBtaXhpbiBjb25maWd1cmF0aW9uOgoKICAgICBhcGlzOgogICAgIC0gbmFtZTogZ29vZ2xlLnN0b3JhZ2UudjIuU3RvcmFnZQogICAgICAgbWl4aW5zOgogICAgICAgLSBuYW1lOiBnb29nbGUuYWNsLnYxLkFjY2Vzc0NvbnRyb2wKCiBUaGUgbWl4aW4gY29uc3RydWN0IGltcGxpZXMgdGhhdCBhbGwgbWV0aG9kcyBpbiBgQWNjZXNzQ29udHJvbGAgYXJlCiBhbHNvIGRlY2xhcmVkIHdpdGggc2FtZSBuYW1lIGFuZCByZXF1ZXN0L3Jlc3BvbnNlIHR5cGVzIGluCiBgU3RvcmFnZWAuIEEgZG9jdW1lbnRhdGlvbiBnZW5lcmF0b3Igb3IgYW5ub3RhdGlvbiBwcm9jZXNzb3Igd2lsbAogc2VlIHRoZSBlZmZlY3RpdmUgYFN0b3JhZ2UuR2V0QWNsYCBtZXRob2QgYWZ0ZXIgaW5oZXJpdGluZwogZG9jdW1lbnRhdGlvbiBhbmQgYW5ub3RhdGlvbnMgYXMgZm9sbG93czoKCiAgICAgc2VydmljZSBTdG9yYWdlIHsKICAgICAgIC8vIEdldCB0aGUgdW5kZXJseWluZyBBQ0wgb2JqZWN0LgogICAgICAgcnBjIEdldEFjbChHZXRBY2xSZXF1ZXN0KSByZXR1cm5zIChBY2wpIHsKICAgICAgICAgb3B0aW9uIChnb29nbGUuYXBpLmh0dHApLmdldCA9ICIvdjIve3Jlc291cmNlPSoqfTpnZXRBY2wiOwogICAgICAgfQogICAgICAgLi4uCiAgICAgfQoKIE5vdGUgaG93IHRoZSB2ZXJzaW9uIGluIHRoZSBwYXRoIHBhdHRlcm4gY2hhbmdlZCBmcm9tIGB2MWAgdG8gYHYyYC4KCiBJZiB0aGUgYHJvb3RgIGZpZWxkIGluIHRoZSBtaXhpbiBpcyBzcGVjaWZpZWQsIGl0IHNob3VsZCBiZSBhCiByZWxhdGl2ZSBwYXRoIHVuZGVyIHdoaWNoIGluaGVyaXRlZCBIVFRQIHBhdGhzIGFyZSBwbGFjZWQuIEV4YW1wbGU6CgogICAgIGFwaXM6CiAgICAgLSBuYW1lOiBnb29nbGUuc3RvcmFnZS52Mi5TdG9yYWdlCiAgICAgICBtaXhpbnM6CiAgICAgICAtIG5hbWU6IGdvb2dsZS5hY2wudjEuQWNjZXNzQ29udHJvbAogICAgICAgICByb290OiBhY2xzCgogVGhpcyBpbXBsaWVzIHRoZSBmb2xsb3dpbmcgaW5oZXJpdGVkIEhUVFAgYW5ub3RhdGlvbjoKCiAgICAgc2VydmljZSBTdG9yYWdlIHsKICAgICAgIC8vIEdldCB0aGUgdW5kZXJseWluZyBBQ0wgb2JqZWN0LgogICAgICAgcnBjIEdldEFjbChHZXRBY2xSZXF1ZXN0KSByZXR1cm5zIChBY2wpIHsKICAgICAgICAgb3B0aW9uIChnb29nbGUuYXBpLmh0dHApLmdldCA9ICIvdjIvYWNscy97cmVzb3VyY2U9Kip9OmdldEFjbCI7CiAgICAgICB9CiAgICAgICAuLi4KICAgICB9CgoLCgMEAgESBMcBCA0KTAoEBAICABIEyQECEho+IFRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZSBvZiB0aGUgaW50ZXJmYWNlIHdoaWNoIGlzIGluY2x1ZGVkLgoKDQoFBAICAAUSBMkBAggKDQoFBAICAAESBMkBCQ0KDQoFBAICAAMSBMkBEBEKWwoEBAICARIEzQECEhpNIElmIG5vbi1lbXB0eSBzcGVjaWZpZXMgYSBwYXRoIHVuZGVyIHdoaWNoIGluaGVyaXRlZCBIVFRQIHBhdGhzCiBhcmUgcm9vdGVkLgoKDQoFBAICAQUSBM0BAggKDQoFBAICAQESBM0BCQ0KDQoFBAICAQMSBM0BEBFiBnByb3RvMwr/EQobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvEg9nb29nbGUucHJvdG9idWYiBwoFRW1wdHlCfQoTY29tLmdvb2dsZS5wcm90b2J1ZkIKRW1wdHlQcm90b1ABWi5nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9lbXB0eXBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSr4QCgYSBB4AMhAKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAEUKCQoCCAsSAyIARQoICgEIEgMjACwKCQoCCAESAyMALAoICgEIEgMkACsKCQoCCAgSAyQAKwoICgEIEgMlACIKCQoCCAoSAyUAIgoICgEIEgMmACEKCQoCCCQSAyYAIQoICgEIEgMnADsKCQoCCCUSAycAOwoICgEIEgMoAB8KCQoCCB8SAygAHwq7AgoCBAASAzIAEBqvAiBBIGdlbmVyaWMgZW1wdHkgbWVzc2FnZSB0aGF0IHlvdSBjYW4gcmUtdXNlIHRvIGF2b2lkIGRlZmluaW5nIGR1cGxpY2F0ZWQKIGVtcHR5IG1lc3NhZ2VzIGluIHlvdXIgQVBJcy4gQSB0eXBpY2FsIGV4YW1wbGUgaXMgdG8gdXNlIGl0IGFzIHRoZSByZXF1ZXN0CiBvciB0aGUgcmVzcG9uc2UgdHlwZSBvZiBhbiBBUEkgbWV0aG9kLiBGb3IgaW5zdGFuY2U6CgogICAgIHNlcnZpY2UgRm9vIHsKICAgICAgIHJwYyBCYXIoZ29vZ2xlLnByb3RvYnVmLkVtcHR5KSByZXR1cm5zIChnb29nbGUucHJvdG9idWYuRW1wdHkpOwogICAgIH0KCgoKCgMEAAESAzIIDWIGcHJvdG8zCvRiCi9nb29nbGUvcHJvdG9idWYvdW5pdHRlc3Rfd2VsbF9rbm93bl90eXBlcy5wcm90bxIRcHJvdG9idWZfdW5pdHRlc3QaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aGWdvb2dsZS9wcm90b2J1Zi9hcGkucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvGiBnb29nbGUvcHJvdG9idWYvZmllbGRfbWFzay5wcm90bxokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvGhxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvGhpnb29nbGUvcHJvdG9idWYvdHlwZS5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvIrQJChJUZXN0V2VsbEtub3duVHlwZXMSMQoJYW55X2ZpZWxkGAEgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIIYW55RmllbGQSMQoJYXBpX2ZpZWxkGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaVIIYXBpRmllbGQSQAoOZHVyYXRpb25fZmllbGQYAyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SDWR1cmF0aW9uRmllbGQSNwoLZW1wdHlfZmllbGQYBCABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlSCmVtcHR5RmllbGQSRAoQZmllbGRfbWFza19maWVsZBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSDmZpZWxkTWFza0ZpZWxkElAKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSEnNvdXJjZUNvbnRleHRGaWVsZBI6CgxzdHJ1Y3RfZmllbGQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0UgtzdHJ1Y3RGaWVsZBJDCg90aW1lc3RhbXBfZmllbGQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUg50aW1lc3RhbXBGaWVsZBI0Cgp0eXBlX2ZpZWxkGAkgASgLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVSCXR5cGVGaWVsZBI/Cgxkb3VibGVfZmllbGQYCiABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSC2RvdWJsZUZpZWxkEjwKC2Zsb2F0X2ZpZWxkGAsgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSCmZsb2F0RmllbGQSPAoLaW50NjRfZmllbGQYDCABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIKaW50NjRGaWVsZBI/Cgx1aW50NjRfZmllbGQYDSABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSC3VpbnQ2NEZpZWxkEjwKC2ludDMyX2ZpZWxkGA4gASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSCmludDMyRmllbGQSPwoMdWludDMyX2ZpZWxkGA8gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUgt1aW50MzJGaWVsZBI5Cgpib29sX2ZpZWxkGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVIJYm9vbEZpZWxkEj8KDHN0cmluZ19maWVsZBgRIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVILc3RyaW5nRmllbGQSPAoLYnl0ZXNfZmllbGQYEiABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIKYnl0ZXNGaWVsZBI3Cgt2YWx1ZV9maWVsZBgTIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVIKdmFsdWVGaWVsZCL/CAoWUmVwZWF0ZWRXZWxsS25vd25UeXBlcxIxCglhbnlfZmllbGQYASADKAsyFC5nb29nbGUucHJvdG9idWYuQW55UghhbnlGaWVsZBIxCglhcGlfZmllbGQYAiADKAsyFC5nb29nbGUucHJvdG9idWYuQXBpUghhcGlGaWVsZBJACg5kdXJhdGlvbl9maWVsZBgDIAMoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblINZHVyYXRpb25GaWVsZBI3CgtlbXB0eV9maWVsZBgEIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVIKZW1wdHlGaWVsZBJEChBmaWVsZF9tYXNrX2ZpZWxkGAUgAygLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IOZmllbGRNYXNrRmllbGQSUAoUc291cmNlX2NvbnRleHRfZmllbGQYBiADKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFISc291cmNlQ29udGV4dEZpZWxkEjoKDHN0cnVjdF9maWVsZBgHIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSC3N0cnVjdEZpZWxkEkMKD3RpbWVzdGFtcF9maWVsZBgIIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSDnRpbWVzdGFtcEZpZWxkEjQKCnR5cGVfZmllbGQYCSADKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZVIJdHlwZUZpZWxkEj8KDGRvdWJsZV9maWVsZBgKIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVILZG91YmxlRmllbGQSPAoLZmxvYXRfZmllbGQYCyADKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIKZmxvYXRGaWVsZBI8CgtpbnQ2NF9maWVsZBgMIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUgppbnQ2NEZpZWxkEj8KDHVpbnQ2NF9maWVsZBgNIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVILdWludDY0RmllbGQSPAoLaW50MzJfZmllbGQYDiADKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIKaW50MzJGaWVsZBI/Cgx1aW50MzJfZmllbGQYDyADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSC3VpbnQzMkZpZWxkEjkKCmJvb2xfZmllbGQYECADKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUglib29sRmllbGQSPwoMc3RyaW5nX2ZpZWxkGBEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUgtzdHJpbmdGaWVsZBI8CgtieXRlc19maWVsZBgSIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUgpieXRlc0ZpZWxkIq8JChNPbmVvZldlbGxLbm93blR5cGVzEjMKCWFueV9maWVsZBgBIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlIAFIIYW55RmllbGQSMwoJYXBpX2ZpZWxkGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaUgAUghhcGlGaWVsZBJCCg5kdXJhdGlvbl9maWVsZBgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkgAUg1kdXJhdGlvbkZpZWxkEjkKC2VtcHR5X2ZpZWxkGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5SABSCmVtcHR5RmllbGQSRgoQZmllbGRfbWFza19maWVsZBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tIAFIOZmllbGRNYXNrRmllbGQSUgoUc291cmNlX2NvbnRleHRfZmllbGQYBiABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dEgAUhJzb3VyY2VDb250ZXh0RmllbGQSPAoMc3RydWN0X2ZpZWxkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAUgtzdHJ1Y3RGaWVsZBJFCg90aW1lc3RhbXBfZmllbGQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSABSDnRpbWVzdGFtcEZpZWxkEjYKCnR5cGVfZmllbGQYCSABKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZUgAUgl0eXBlRmllbGQSQQoMZG91YmxlX2ZpZWxkGAogASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlSABSC2RvdWJsZUZpZWxkEj4KC2Zsb2F0X2ZpZWxkGAsgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVIAFIKZmxvYXRGaWVsZBI+CgtpbnQ2NF9maWVsZBgMIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlSABSCmludDY0RmllbGQSQQoMdWludDY0X2ZpZWxkGA0gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlSABSC3VpbnQ2NEZpZWxkEj4KC2ludDMyX2ZpZWxkGA4gASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVIAFIKaW50MzJGaWVsZBJBCgx1aW50MzJfZmllbGQYDyABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVIAFILdWludDMyRmllbGQSOwoKYm9vbF9maWVsZBgQIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVIAFIJYm9vbEZpZWxkEkEKDHN0cmluZ19maWVsZBgRIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZUgAUgtzdHJpbmdGaWVsZBI+CgtieXRlc19maWVsZBgSIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlSABSCmJ5dGVzRmllbGRCDQoLb25lb2ZfZmllbGQi2BkKEU1hcFdlbGxLbm93blR5cGVzEk8KCWFueV9maWVsZBgBIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkFueUZpZWxkRW50cnlSCGFueUZpZWxkEk8KCWFwaV9maWVsZBgCIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkFwaUZpZWxkRW50cnlSCGFwaUZpZWxkEl4KDmR1cmF0aW9uX2ZpZWxkGAMgAygLMjcucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRHVyYXRpb25GaWVsZEVudHJ5Ug1kdXJhdGlvbkZpZWxkElUKC2VtcHR5X2ZpZWxkGAQgAygLMjQucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRW1wdHlGaWVsZEVudHJ5UgplbXB0eUZpZWxkEmIKEGZpZWxkX21hc2tfZmllbGQYBSADKAsyOC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5GaWVsZE1hc2tGaWVsZEVudHJ5Ug5maWVsZE1hc2tGaWVsZBJuChRzb3VyY2VfY29udGV4dF9maWVsZBgGIAMoCzI8LnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlNvdXJjZUNvbnRleHRGaWVsZEVudHJ5UhJzb3VyY2VDb250ZXh0RmllbGQSWAoMc3RydWN0X2ZpZWxkGAcgAygLMjUucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuU3RydWN0RmllbGRFbnRyeVILc3RydWN0RmllbGQSYQoPdGltZXN0YW1wX2ZpZWxkGAggAygLMjgucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuVGltZXN0YW1wRmllbGRFbnRyeVIOdGltZXN0YW1wRmllbGQSUgoKdHlwZV9maWVsZBgJIAMoCzIzLnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlR5cGVGaWVsZEVudHJ5Ugl0eXBlRmllbGQSWAoMZG91YmxlX2ZpZWxkGAogAygLMjUucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRG91YmxlRmllbGRFbnRyeVILZG91YmxlRmllbGQSVQoLZmxvYXRfZmllbGQYCyADKAsyNC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5GbG9hdEZpZWxkRW50cnlSCmZsb2F0RmllbGQSVQoLaW50NjRfZmllbGQYDCADKAsyNC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5JbnQ2NEZpZWxkRW50cnlSCmludDY0RmllbGQSWAoMdWludDY0X2ZpZWxkGA0gAygLMjUucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuVWludDY0RmllbGRFbnRyeVILdWludDY0RmllbGQSVQoLaW50MzJfZmllbGQYDiADKAsyNC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5JbnQzMkZpZWxkRW50cnlSCmludDMyRmllbGQSWAoMdWludDMyX2ZpZWxkGA8gAygLMjUucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuVWludDMyRmllbGRFbnRyeVILdWludDMyRmllbGQSUgoKYm9vbF9maWVsZBgQIAMoCzIzLnByb3RvYnVmX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkJvb2xGaWVsZEVudHJ5Uglib29sRmllbGQSWAoMc3RyaW5nX2ZpZWxkGBEgAygLMjUucHJvdG9idWZfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuU3RyaW5nRmllbGRFbnRyeVILc3RyaW5nRmllbGQSVQoLYnl0ZXNfZmllbGQYEiADKAsyNC5wcm90b2J1Zl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5CeXRlc0ZpZWxkRW50cnlSCmJ5dGVzRmllbGQaUQoNQW55RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIqCgV2YWx1ZRgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSBXZhbHVlOgI4ARpRCg1BcGlGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EioKBXZhbHVlGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaVIFdmFsdWU6AjgBGlsKEkR1cmF0aW9uRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIvCgV2YWx1ZRgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIFdmFsdWU6AjgBGlUKD0VtcHR5RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIsCgV2YWx1ZRgCIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVIFdmFsdWU6AjgBGl0KE0ZpZWxkTWFza0ZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMAoFdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUgV2YWx1ZToCOAEaZQoXU291cmNlQ29udGV4dEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSNAoFdmFsdWUYAiABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFIFdmFsdWU6AjgBGlcKEFN0cnVjdEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSLQoFdmFsdWUYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0UgV2YWx1ZToCOAEaXQoTVGltZXN0YW1wRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIwCgV2YWx1ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSBXZhbHVlOgI4ARpTCg5UeXBlRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIrCgV2YWx1ZRgCIAEoCzIVLmdvb2dsZS5wcm90b2J1Zi5UeXBlUgV2YWx1ZToCOAEaXAoQRG91YmxlRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIFdmFsdWU6AjgBGloKD0Zsb2F0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUgV2YWx1ZToCOAEaWgoPSW50NjRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSBXZhbHVlOgI4ARpcChBVaW50NjRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjIKBXZhbHVlGAIgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUgV2YWx1ZToCOAEaWgoPSW50MzJGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSBXZhbHVlOgI4ARpcChBVaW50MzJGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjIKBXZhbHVlGAIgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUgV2YWx1ZToCOAEaWAoOQm9vbEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMAoFdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUgV2YWx1ZToCOAEaXAoQU3RyaW5nRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIFdmFsdWU6AjgBGloKD0J5dGVzRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1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CgUEAwIQAxIDdjk7CgsKBAQDAhESA3cCOgoMCgUEAwIRBhIDdwIoCgwKBQQDAhEBEgN3KTQKDAoFBAMCEQMSA3c3OWIGcHJvdG8zCv7FAQoqZ29vZ2xlL3Byb3RvYnVmL3Rlc3RfbWVzc2FnZXNfcHJvdG8zLnByb3RvEh1wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMxoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnByb3RvGiBnb29nbGUvcHJvdG9idWYvZmllbGRfbWFzay5wcm90bxocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90bxofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvIplbChJUZXN0QWxsVHlwZXNQcm90bzMSJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSdwoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlEmcKGG9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzItLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEm4KFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJeChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yKi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduRW51bVITb3B0aW9uYWxGb3JlaWduRW51bRJxChVvcHRpb25hbF9hbGlhc2VkX2VudW0YFyABKA4yPS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuQWxpYXNlZEVudW1SE29wdGlvbmFsQWxpYXNlZEVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEl4KEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEncKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSFXJlcGVhdGVkTmVzdGVkTWVzc2FnZRJnChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyLS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJuChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhJyZXBlYXRlZE5lc3RlZEVudW0SXgoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMioucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SNgoVcmVwZWF0ZWRfc3RyaW5nX3BpZWNlGDYgAygJQgIIAlITcmVwZWF0ZWRTdHJpbmdQaWVjZRInCg1yZXBlYXRlZF9jb3JkGDcgAygJQgIIAVIMcmVwZWF0ZWRDb3JkEiUKDHBhY2tlZF9pbnQzMhhLIAMoBUICEAFSC3BhY2tlZEludDMyEiUKDHBhY2tlZF9pbnQ2NBhMIAMoA0ICEAFSC3BhY2tlZEludDY0EicKDXBhY2tlZF91aW50MzIYTSADKA1CAhABUgxwYWNrZWRVaW50MzISJwoNcGFja2VkX3VpbnQ2NBhOIAMoBEICEAFSDHBhY2tlZFVpbnQ2NBInCg1wYWNrZWRfc2ludDMyGE8gAygRQgIQAVIMcGFja2VkU2ludDMyEicKDXBhY2tlZF9zaW50NjQYUCADKBJCAhABUgxwYWNrZWRTaW50NjQSKQoOcGFja2VkX2ZpeGVkMzIYUSADKAdCAhABUg1wYWNrZWRGaXhlZDMyEikKDnBhY2tlZF9maXhlZDY0GFIgAygGQgIQAVINcGFja2VkRml4ZWQ2NBIrCg9wYWNrZWRfc2ZpeGVkMzIYUyADKA9CAhABUg5wYWNrZWRTZml4ZWQzMhIrCg9wYWNrZWRfc2ZpeGVkNjQYVCADKBBCAhABUg5wYWNrZWRTZml4ZWQ2NBIlCgxwYWNrZWRfZmxvYXQYVSADKAJCAhABUgtwYWNrZWRGbG9hdBInCg1wYWNrZWRfZG91YmxlGFYgAygBQgIQAVIMcGFja2VkRG91YmxlEiMKC3BhY2tlZF9ib29sGFcgAygIQgIQAVIKcGFja2VkQm9vbBJuChJwYWNrZWRfbmVzdGVkX2VudW0YWCADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUICEAFSEHBhY2tlZE5lc3RlZEVudW0SKQoOdW5wYWNrZWRfaW50MzIYWSADKAVCAhAAUg11bnBhY2tlZEludDMyEikKDnVucGFja2VkX2ludDY0GFogAygDQgIQAFINdW5wYWNrZWRJbnQ2NBIrCg91bnBhY2tlZF91aW50MzIYWyADKA1CAhAAUg51bnBhY2tlZFVpbnQzMhIrCg91bnBhY2tlZF91aW50NjQYXCADKARCAhAAUg51bnBhY2tlZFVpbnQ2NBIrCg91bnBhY2tlZF9zaW50MzIYXSADKBFCAhAAUg51bnBhY2tlZFNpbnQzMhIrCg91bnBhY2tlZF9zaW50NjQYXiADKBJCAhAAUg51bnBhY2tlZFNpbnQ2NBItChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgIQAFIPdW5wYWNrZWRGaXhlZDMyEi0KEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCAhAAUg91bnBhY2tlZEZpeGVkNjQSLwoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CAhAAUhB1bnBhY2tlZFNmaXhlZDMyEi8KEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgIQAFIQdW5wYWNrZWRTZml4ZWQ2NBIpCg51bnBhY2tlZF9mbG9hdBhjIAMoAkICEABSDXVucGFja2VkRmxvYXQSKwoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgIQAFIOdW5wYWNrZWREb3VibGUSJwoNdW5wYWNrZWRfYm9vbBhlIAMoCEICEABSDHVucGFja2VkQm9vbBJyChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtQgIQAFISdW5wYWNrZWROZXN0ZWRFbnVtEmwKD21hcF9pbnQzMl9pbnQzMhg4IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISbAoPbWFwX2ludDY0X2ludDY0GDkgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJyChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyEnIKEW1hcF91aW50NjRfdWludDY0GDsgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQScgoRbWFwX3NpbnQzMl9zaW50MzIYPCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJyChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EngKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISeAoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBg/IAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJ+ChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYQCADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEn4KFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSbAoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJvChBtYXBfaW50MzJfZG91YmxlGEMgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEmYKDW1hcF9ib29sX2Jvb2wYRCADKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wScgoRbWFwX3N0cmluZ19zdHJpbmcYRSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJvChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEogBChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeVIWbWFwU3RyaW5nTmVzdGVkTWVzc2FnZRKLAQoabWFwX3N0cmluZ19mb3JlaWduX21lc3NhZ2UYSCADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeVIXbWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2USfwoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnlSE21hcFN0cmluZ05lc3RlZEVudW0SggEKF21hcF9zdHJpbmdfZm9yZWlnbl9lbnVtGEogAygLMksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJzChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxIfCgpvbmVvZl9ib29sGHMgASgISABSCW9uZW9mQm9vbBIjCgxvbmVvZl91aW50NjQYdCABKARIAFILb25lb2ZVaW50NjQSIQoLb25lb2ZfZmxvYXQYdSABKAJIAFIKb25lb2ZGbG9hdBIjCgxvbmVvZl9kb3VibGUYdiABKAFIAFILb25lb2ZEb3VibGUSXQoKb25lb2ZfZW51bRh3IAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJGChBvbmVvZl9udWxsX3ZhbHVlGHggASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZUgAUg5vbmVvZk51bGxWYWx1ZRJPChVvcHRpb25hbF9ib29sX3dyYXBwZXIYyQEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVITb3B0aW9uYWxCb29sV3JhcHBlchJSChZvcHRpb25hbF9pbnQzMl93cmFwcGVyGMoBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUhRvcHRpb25hbEludDMyV3JhcHBlchJSChZvcHRpb25hbF9pbnQ2NF93cmFwcGVyGMsBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUhRvcHRpb25hbEludDY0V3JhcHBlchJVChdvcHRpb25hbF91aW50MzJfd3JhcHBlchjMASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSFW9wdGlvbmFsVWludDMyV3JhcHBlchJVChdvcHRpb25hbF91aW50NjRfd3JhcHBlchjNASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSFW9wdGlvbmFsVWludDY0V3JhcHBlchJSChZvcHRpb25hbF9mbG9hdF93cmFwcGVyGM4BIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUhRvcHRpb25hbEZsb2F0V3JhcHBlchJVChdvcHRpb25hbF9kb3VibGVfd3JhcHBlchjPASABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSFW9wdGlvbmFsRG91YmxlV3JhcHBlchJVChdvcHRpb25hbF9zdHJpbmdfd3JhcHBlchjQASABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSFW9wdGlvbmFsU3RyaW5nV3JhcHBlchJSChZvcHRpb25hbF9ieXRlc193cmFwcGVyGNEBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUhRvcHRpb25hbEJ5dGVzV3JhcHBlchJPChVyZXBlYXRlZF9ib29sX3dyYXBwZXIY0wEgAygLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVITcmVwZWF0ZWRCb29sV3JhcHBlchJSChZyZXBlYXRlZF9pbnQzMl93cmFwcGVyGNQBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUhRyZXBlYXRlZEludDMyV3JhcHBlchJSChZyZXBlYXRlZF9pbnQ2NF93cmFwcGVyGNUBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUhRyZXBlYXRlZEludDY0V3JhcHBlchJVChdyZXBlYXRlZF91aW50MzJfd3JhcHBlchjWASADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSFXJlcGVhdGVkVWludDMyV3JhcHBlchJVChdyZXBlYXRlZF91aW50NjRfd3JhcHBlchjXASADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSFXJlcGVhdGVkVWludDY0V3JhcHBlchJSChZyZXBlYXRlZF9mbG9hdF93cmFwcGVyGNgBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUhRyZXBlYXRlZEZsb2F0V3JhcHBlchJVChdyZXBlYXRlZF9kb3VibGVfd3JhcHBlchjZASADKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSFXJlcGVhdGVkRG91YmxlV3JhcHBlchJVChdyZXBlYXRlZF9zdHJpbmdfd3JhcHBlchjaASADKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSFXJlcGVhdGVkU3RyaW5nV3JhcHBlchJSChZyZXBlYXRlZF9ieXRlc193cmFwcGVyGNsBIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUhRyZXBlYXRlZEJ5dGVzV3JhcHBlchJHChFvcHRpb25hbF9kdXJhdGlvbhitAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEG9wdGlvbmFsRHVyYXRpb24SSgoSb3B0aW9uYWxfdGltZXN0YW1wGK4CIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEW9wdGlvbmFsVGltZXN0YW1wEksKE29wdGlvbmFsX2ZpZWxkX21hc2sYrwIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IRb3B0aW9uYWxGaWVsZE1hc2sSQQoPb3B0aW9uYWxfc3RydWN0GLACIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSDm9wdGlvbmFsU3RydWN0EjgKDG9wdGlvbmFsX2FueRixAiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UgtvcHRpb25hbEFueRI+Cg5vcHRpb25hbF92YWx1ZRiyAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSDW9wdGlvbmFsVmFsdWUSSwoTb3B0aW9uYWxfbnVsbF92YWx1ZRizAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlUhFvcHRpb25hbE51bGxWYWx1ZRJHChFyZXBlYXRlZF9kdXJhdGlvbhi3AiADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEHJlcGVhdGVkRHVyYXRpb24SSgoScmVwZWF0ZWRfdGltZXN0YW1wGLgCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEXJlcGVhdGVkVGltZXN0YW1wEkoKEnJlcGVhdGVkX2ZpZWxkbWFzaxi5AiADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFyZXBlYXRlZEZpZWxkbWFzaxJBCg9yZXBlYXRlZF9zdHJ1Y3QYxAIgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOcmVwZWF0ZWRTdHJ1Y3QSOAoMcmVwZWF0ZWRfYW55GLsCIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC3JlcGVhdGVkQW55Ej4KDnJlcGVhdGVkX3ZhbHVlGLwCIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINcmVwZWF0ZWRWYWx1ZRJLChNyZXBlYXRlZF9saXN0X3ZhbHVlGL0CIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5MaXN0VmFsdWVSEXJlcGVhdGVkTGlzdFZhbHVlEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgacgoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhElMKC2NvcmVjdXJzaXZlGAIgASgLMjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqKAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElUKBXZhbHVlGAIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARp5ChxNYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkMKBXZhbHVlGAIgASgLMi0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSBXZhbHVlOgI4ARqEAQoYTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElIKBXZhbHVlGAIgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SBXZhbHVlOgI4ARpzChlNYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkAKBXZhbHVlGAIgASgOMioucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbkVudW1SBXZhbHVlOgI4ASI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BIlkKC0FsaWFzZWRFbnVtEg0KCUFMSUFTX0ZPTxAAEg0KCUFMSUFTX0JBUhABEg0KCUFMSUFTX0JBWhACEgcKA01PTxACEgcKA21vbxACEgcKA2JBehACGgIQAUINCgtvbmVvZl9maWVsZEoGCPUDEP8DIh4KDkZvcmVpZ25NZXNzYWdlEgwKAWMYASABKAVSAWMiFgoUTnVsbEh5cG90aGVzaXNQcm90bzMiLwoORW51bU9ubHlQcm90bzMiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABKkAKC0ZvcmVpZ25FbnVtEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACQjgKKGNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzNIAfgBAaICBlByb3RvM0rrZgoHEgUOAIgCAQqIAwoBDBIDDgASMv0CIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgogVGVzdCBzY2hlbWEgZm9yIHByb3RvMyBtZXNzYWdlcy4gIFRoaXMgdGVzdCBzY2hlbWEgaXMgdXNlZCBi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Cg0KBQUAAgIBEgT+AQINCg0KBQUAAgICEgT+ARARCgoKAgQCEgSBAgAfCgsKAwQCARIEgQIIHAoMCgIEAxIGgwIAiAIBCgsKAwQDARIEgwIIFgoOCgQEAwQAEgaEAgKHAgMKDQoFBAMEAAESBIQCBwsKDgoGBAMEAAIAEgSFAgQPCg8KBwQDBAACAAESBIUCBAoKDwoHBAMEAAIAAhIEhQINDgoOCgYEAwQAAgESBIYCBA4KDwoHBAMEAAIBARIEhgIECQoPCgcEAwQAAgECEgSGAgwNYgZwcm90bzMKkpMCCipnb29nbGUvcHJvdG9idWYvdGVzdF9tZXNzYWdlc19wcm90bzIucHJvdG8SHXByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yIpBTChJUZXN0QWxsVHlwZXNQcm90bzISJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSdwoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlEm0KGG9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEm4KFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJkChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITb3B0aW9uYWxGb3JlaWduRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSXgoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzJSEHJlY3Vyc2l2ZU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSdwoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEm0KGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEm4KFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJkChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSJQoMcGFja2VkX2ludDMyGEsgAygFQgIQAVILcGFja2VkSW50MzISJQoMcGFja2VkX2ludDY0GEwgAygDQgIQAVILcGFja2VkSW50NjQSJwoNcGFja2VkX3VpbnQzMhhNIAMoDUICEAFSDHBhY2tlZFVpbnQzMhInCg1wYWNrZWRfdWludDY0GE4gAygEQgIQAVIMcGFja2VkVWludDY0EicKDXBhY2tlZF9zaW50MzIYTyADKBFCAhABUgxwYWNrZWRTaW50MzISJwoNcGFja2VkX3NpbnQ2NBhQIAMoEkICEAFSDHBhY2tlZFNpbnQ2NBIpCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0ICEAFSDXBhY2tlZEZpeGVkMzISKQoOcGFja2VkX2ZpeGVkNjQYUiADKAZCAhABUg1wYWNrZWRGaXhlZDY0EisKD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0ICEAFSDnBhY2tlZFNmaXhlZDMyEisKD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEICEAFSDnBhY2tlZFNmaXhlZDY0EiUKDHBhY2tlZF9mbG9hdBhVIAMoAkICEAFSC3BhY2tlZEZsb2F0EicKDXBhY2tlZF9kb3VibGUYViADKAFCAhABUgxwYWNrZWREb3VibGUSIwoLcGFja2VkX2Jvb2wYVyADKAhCAhABUgpwYWNrZWRCb29sEm4KEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtQgIQAVIQcGFja2VkTmVzdGVkRW51bRIpCg51bnBhY2tlZF9pbnQzMhhZIAMoBUICEABSDXVucGFja2VkSW50MzISKQoOdW5wYWNrZWRfaW50NjQYWiADKANCAhAAUg11bnBhY2tlZEludDY0EisKD3VucGFja2VkX3VpbnQzMhhbIAMoDUICEABSDnVucGFja2VkVWludDMyEisKD3VucGFja2VkX3VpbnQ2NBhcIAMoBEICEABSDnVucGFja2VkVWludDY0EisKD3VucGFja2VkX3NpbnQzMhhdIAMoEUICEABSDnVucGFja2VkU2ludDMyEisKD3VucGFja2VkX3NpbnQ2NBheIAMoEkICEABSDnVucGFja2VkU2ludDY0Ei0KEHVucGFja2VkX2ZpeGVkMzIYXyADKAdCAhAAUg91bnBhY2tlZEZpeGVkMzISLQoQdW5wYWNrZWRfZml4ZWQ2NBhgIAMoBkICEABSD3VucGFja2VkRml4ZWQ2NBIvChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMoD0ICEABSEHVucGFja2VkU2ZpeGVkMzISLwoRdW5wYWNrZWRfc2ZpeGVkNjQYYiADKBBCAhAAUhB1bnBhY2tlZFNmaXhlZDY0EikKDnVucGFja2VkX2Zsb2F0GGMgAygCQgIQAFINdW5wYWNrZWRGbG9hdBIrCg91bnBhY2tlZF9kb3VibGUYZCADKAFCAhAAUg51bnBhY2tlZERvdWJsZRInCg11bnBhY2tlZF9ib29sGGUgAygIQgIQAFIMdW5wYWNrZWRCb29sEnIKFHVucGFja2VkX25lc3RlZF9lbnVtGGYgAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1CAhAAUhJ1bnBhY2tlZE5lc3RlZEVudW0SbAoPbWFwX2ludDMyX2ludDMyGDggAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJsCg9tYXBfaW50NjRfaW50NjQYOSADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EnIKEW1hcF91aW50MzJfdWludDMyGDogAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzIScgoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJyChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEnIKEW1hcF9zaW50NjRfc2ludDY0GD0gAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSeAoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ4ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0En4KFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISfgoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GEEgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJsCg9tYXBfaW50MzJfZmxvYXQYQiADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0Em8KEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSZgoNbWFwX2Jvb2xfYm9vbBhEIAMoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJyChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEm8KEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nQnl0ZXNFbnRyeVIObWFwU3RyaW5nQnl0ZXMSiAEKGW1hcF9zdHJpbmdfbmVzdGVkX21lc3NhZ2UYRyADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5UhZtYXBTdHJpbmdOZXN0ZWRNZXNzYWdlEosBChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRJ/ChZtYXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ05lc3RlZEVudW1FbnRyeVITbWFwU3RyaW5nTmVzdGVkRW51bRKCAQoXbWFwX3N0cmluZ19mb3JlaWduX2VudW0YSiADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEnMKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJdCgpvbmVvZl9lbnVtGHcgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1IAFIJb25lb2ZFbnVtEksKBGRhdGEYyQEgASgKMjYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLkRhdGFSBGRhdGESeAoTbXVsdGl3b3JkZ3JvdXBmaWVsZBjMASABKAoyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTXVsdGlXb3JkR3JvdXBGaWVsZFITbXVsdGl3b3JkZ3JvdXBmaWVsZBIwCg1kZWZhdWx0X2ludDMyGPEBIAEoBToKLTEyMzQ1Njc4OVIMZGVmYXVsdEludDMyEjoKDWRlZmF1bHRfaW50NjQY8gEgASgDOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIMZGVmYXVsdEludDY0EjIKDmRlZmF1bHRfdWludDMyGPMBIAEoDToKMjEyMzQ1Njc4OVINZGVmYXVsdFVpbnQzMhI8Cg5kZWZhdWx0X3VpbnQ2NBj0ASABKAQ6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0VWludDY0EjIKDmRlZmF1bHRfc2ludDMyGPUBIAEoEToKLTEyMzQ1Njc4OVINZGVmYXVsdFNpbnQzMhI8Cg5kZWZhdWx0X3NpbnQ2NBj2ASABKBI6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDY0EjQKD2RlZmF1bHRfZml4ZWQzMhj3ASABKAc6CjIxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDMyEj4KD2RlZmF1bHRfZml4ZWQ2NBj4ASABKAY6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug5kZWZhdWx0Rml4ZWQ2NBI2ChBkZWZhdWx0X3NmaXhlZDMyGPkBIAEoDzoKLTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDMyEkAKEGRlZmF1bHRfc2ZpeGVkNjQY+gEgASgQOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDY0EisKDWRlZmF1bHRfZmxvYXQY+wEgASgCOgU5ZSswOVIMZGVmYXVsdEZsb2F0Ei0KDmRlZmF1bHRfZG91YmxlGPwBIAEoAToFN2UrMjJSDWRlZmF1bHREb3VibGUSKAoMZGVmYXVsdF9ib29sGP0BIAEoCDoEdHJ1ZVILZGVmYXVsdEJvb2wSLwoOZGVmYXVsdF9zdHJpbmcY/gEgASgJOgdSb3NlYnVkUg1kZWZhdWx0U3RyaW5nEiwKDWRlZmF1bHRfYnl0ZXMY/wEgASgMOgZqb3NodWFSDGRlZmF1bHRCeXRlcxIfCgpmaWVsZG5hbWUxGJEDIAEoBVIKZmllbGRuYW1lMRIgCgtmaWVsZF9uYW1lMhiSAyABKAVSCmZpZWxkTmFtZTISIQoMX2ZpZWxkX25hbWUzGJMDIAEoBVIKRmllbGROYW1lMxIiCg1maWVsZF9fbmFtZTRfGJQDIAEoBVIKZmllbGROYW1lNBIhCgtmaWVsZDBuYW1lNRiVAyABKAVSC2ZpZWxkMG5hbWU1EiMKDWZpZWxkXzBfbmFtZTYYlgMgASgFUgtmaWVsZDBOYW1lNhIfCgpmaWVsZE5hbWU3GJcDIAEoBVIKZmllbGROYW1lNxIfCgpGaWVsZE5hbWU4GJgDIAEoBVIKRmllbGROYW1lOBIgCgtmaWVsZF9OYW1lORiZAyABKAVSCmZpZWxkTmFtZTkSIgoMRmllbGRfTmFtZTEwGJoDIAEoBVILRmllbGROYW1lMTASIgoMRklFTERfTkFNRTExGJsDIAEoBVILRklFTEROQU1FMTESIgoMRklFTERfbmFtZTEyGJwDIAEoBVILRklFTEROYW1lMTISJAoOX19maWVsZF9uYW1lMTMYnQMgASgFUgtGaWVsZE5hbWUxMxIkCg5fX0ZpZWxkX25hbWUxNBieAyABKAVSC0ZpZWxkTmFtZTE0EiMKDWZpZWxkX19uYW1lMTUYnwMgASgFUgtmaWVsZE5hbWUxNRIjCg1maWVsZF9fTmFtZTE2GKADIAEoBVILZmllbGROYW1lMTYSJAoOZmllbGRfbmFtZTE3X18YoQMgASgFUgtmaWVsZE5hbWUxNxIkCg5GaWVsZF9uYW1lMThfXxiiAyABKAVSC0ZpZWxkTmFtZTE4GnIKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJTCgtjb3JlY3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARpBChNNYXBTdHJpbmdCeXRlc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgMUgV2YWx1ZToCOAEaigEKG01hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJVCgV2YWx1ZRgCIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEafwocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJJCgV2YWx1ZRgCIAEoCzIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUgV2YWx1ZToCOAEahAEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJSCgV2YWx1ZRgCIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEaeQoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJGCgV2YWx1ZRgCIAEoDjIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUgV2YWx1ZToCOAEaTAoERGF0YRIgCgtncm91cF9pbnQzMhjKASABKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGMsBIAEoDVILZ3JvdXBVaW50MzIaWwoTTXVsdGlXb3JkR3JvdXBGaWVsZBIgCgtncm91cF9pbnQzMhjNASABKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGM4BIAEoDVILZ3JvdXBVaW50MzIaIQoRTWVzc2FnZVNldENvcnJlY3QqCAgEEP////8HOgIIARr6AQobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xEhAKA3N0chgZIAEoCVIDc3RyMsgBChVtZXNzYWdlX3NldF9leHRlbnNpb24SQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QY+bteIAEoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24a9wEKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhIMCgFpGAkgASgFUgFpMskBChVtZXNzYWdlX3NldF9leHRlbnNpb24SQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24yUhNtZXNzYWdlU2V0RXh0ZW5zaW9uIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9mX2ZpZWxkSgYI6AcQkE4iJAoURm9yZWlnbk1lc3NhZ2VQcm90bzISDAoBYxgBIAEoBVIBYyJQCgpHcm91cEZpZWxkEh8KC2dyb3VwX2ludDMyGHogASgFUgpncm91cEludDMyEiEKDGdyb3VwX3VpbnQzMhh7IAEoDVILZ3JvdXBVaW50MzIingMKFVVua25vd25Ub1Rlc3RBbGxUeXBlcxImCg5vcHRpb25hbF9pbnQzMhjpByABKAVSDW9wdGlvbmFsSW50MzISKAoPb3B0aW9uYWxfc3RyaW5nGOoHIAEoCVIOb3B0aW9uYWxTdHJpbmcSWwoObmVzdGVkX21lc3NhZ2UY6wcgASgLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSDW5lc3RlZE1lc3NhZ2USaQoNb3B0aW9uYWxncm91cBjsByABKAoyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Vbmtub3duVG9UZXN0QWxsVHlwZXMuT3B0aW9uYWxHcm91cFINb3B0aW9uYWxncm91cBIkCg1vcHRpb25hbF9ib29sGO4HIAEoCFIMb3B0aW9uYWxCb29sEiYKDnJlcGVhdGVkX2ludDMyGPMHIAMoBVINcmVwZWF0ZWRJbnQzMhodCg1PcHRpb25hbEdyb3VwEgwKAWEYASABKAVSAWEiFgoUTnVsbEh5cG90aGVzaXNQcm90bzIiLwoORW51bU9ubHlQcm90bzIiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABIiUKD09uZVN0cmluZ1Byb3RvMhISCgRkYXRhGAEgASgJUgRkYXRhImEKEVByb3RvV2l0aEtleXdvcmRzEhYKBmlubGluZRgBIAEoBVIGaW5saW5lEhgKB2NvbmNlcHQYAiABKAlSB2NvbmNlcHQSGgoIcmVxdWlyZXMYAyADKAlSCHJlcXVpcmVzIswZChpUZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMhIlCg5yZXF1aXJlZF9pbnQzMhgBIAIoBVINcmVxdWlyZWRJbnQzMhIlCg5yZXF1aXJlZF9pbnQ2NBgCIAIoA1INcmVxdWlyZWRJbnQ2NBInCg9yZXF1aXJlZF91aW50MzIYAyACKA1SDnJlcXVpcmVkVWludDMyEicKD3JlcXVpcmVkX3VpbnQ2NBgEIAIoBFIOcmVxdWlyZWRVaW50NjQSJwoPcmVxdWlyZWRfc2ludDMyGAUgAigRUg5yZXF1aXJlZFNpbnQzMhInCg9yZXF1aXJlZF9zaW50NjQYBiACKBJSDnJlcXVpcmVkU2ludDY0EikKEHJlcXVpcmVkX2ZpeGVkMzIYByACKAdSD3JlcXVpcmVkRml4ZWQzMhIpChByZXF1aXJlZF9maXhlZDY0GAggAigGUg9yZXF1aXJlZEZpeGVkNjQSKwoRcmVxdWlyZWRfc2ZpeGVkMzIYCSACKA9SEHJlcXVpcmVkU2ZpeGVkMzISKwoRcmVxdWlyZWRfc2ZpeGVkNjQYCiACKBBSEHJlcXVpcmVkU2ZpeGVkNjQSJQoOcmVxdWlyZWRfZmxvYXQYCyACKAJSDXJlcXVpcmVkRmxvYXQSJwoPcmVxdWlyZWRfZG91YmxlGAwgAigBUg5yZXF1aXJlZERvdWJsZRIjCg1yZXF1aXJlZF9ib29sGA0gAigIUgxyZXF1aXJlZEJvb2wSJwoPcmVxdWlyZWRfc3RyaW5nGA4gAigJUg5yZXF1aXJlZFN0cmluZxIlCg5yZXF1aXJlZF9ieXRlcxgPIAIoDFINcmVxdWlyZWRCeXRlcxJ/ChdyZXF1aXJlZF9uZXN0ZWRfbWVzc2FnZRgSIAIoCzJHLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFXJlcXVpcmVkTmVzdGVkTWVzc2FnZRJtChhyZXF1aXJlZF9mb3JlaWduX21lc3NhZ2UYEyACKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWcmVxdWlyZWRGb3JlaWduTWVzc2FnZRJ2ChRyZXF1aXJlZF9uZXN0ZWRfZW51bRgVIAIoDjJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEnJlcXVpcmVkTmVzdGVkRW51bRJkChVyZXF1aXJlZF9mb3JlaWduX2VudW0YFiACKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITcmVxdWlyZWRGb3JlaWduRW51bRI2ChVyZXF1aXJlZF9zdHJpbmdfcGllY2UYGCACKAlCAggCUhNyZXF1aXJlZFN0cmluZ1BpZWNlEicKDXJlcXVpcmVkX2NvcmQYGSACKAlCAggBUgxyZXF1aXJlZENvcmQSZgoRcmVjdXJzaXZlX21lc3NhZ2UYGyACKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIQcmVjdXJzaXZlTWVzc2FnZRJ3ChpvcHRpb25hbF9yZWN1cnNpdmVfbWVzc2FnZRgcIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yUhhvcHRpb25hbFJlY3Vyc2l2ZU1lc3NhZ2USUwoEZGF0YRjJASACKAoyPi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5EYXRhUgRkYXRhEjAKDWRlZmF1bHRfaW50MzIY8QEgAigFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASACKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgAigNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAIoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgAigROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAIoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAIoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAIoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgAigPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASACKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASACKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgAigBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgAigIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASACKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASACKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzGugBCg1OZXN0ZWRNZXNzYWdlEgwKAWEYASACKAVSAWESWwoLY29yZWN1cnNpdmUYAiACKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUSbAoUb3B0aW9uYWxfY29yZWN1cnNpdmUYAyABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlITb3B0aW9uYWxDb3JlY3Vyc2l2ZRpMCgREYXRhEiAKC2dyb3VwX2ludDMyGMoBIAIoBVIKZ3JvdXBJbnQzMhIiCgxncm91cF91aW50MzIYywEgAigNUgtncm91cFVpbnQzMhohChFNZXNzYWdlU2V0Q29ycmVjdCoICAQQ/////wc6AggBGooCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjESEAoDc3RyGBkgAigJUgNzdHIy2AEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24ahwIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhIMCgFpGAkgAigFUgFpMtkBChVtZXNzYWdlX3NldF9leHRlbnNpb24SSy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJVLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUoGCOgHEJBOKkYKEUZvcmVpZ25FbnVtUHJvdG8yEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACOloKD2V4dGVuc2lvbl9pbnQzMhIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhh4IAEoBVIOZXh0ZW5zaW9uSW50MzI6fAoKZ3JvdXBmaWVsZBIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhh5IAEoCjIpLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkdyb3VwRmllbGRSCmdyb3VwZmllbGRCOAooY29tLmdvb2dsZS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMkgB+AEBogIGUHJvdG8ySpmdAQoHEgUOAIIDAQqCAwoBDBIDDgASMuECIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgogVGVzdCBzY2hlbWEgZm9yIHByb3RvMiBtZXNzYWdlcy4gIFRoaXMgdGVzdCBzY2hlbWEgaXMgdXNlZCBieToKCiAtIGNvbmZvcm1hbmNlIHRlc3RzCgoyFCBMSU5UOiBBTExPV19HUk9VUFMKCggKAQISAxAAJgoICgEIEgMSAEEKCQoCCAESAxIAQQoICgEIEgMTACQKCQoCCCQSAxMAJAoICgEIEgMWABwKRAoCCAkSAxYAHBo5IFRoaXMgaXMgdGhlIGRlZmF1bHQsIGJ1dCB3ZSBzcGVjaWZ5IGl0IGhlcmUgZXhwbGljaXRseS4KCggKAQgSAxgAHwoJCgIIHxIDGAAfCtsCCgIEABIFIgDxAQEazQIgVGhpcyBwcm90byBpbmNsdWRlcyBldmVyeSB0eXBlIG9mIGZpZWxkIGluIGJvdGggc2luZ3VsYXIgYW5kIHJlcGVhdGVkCiBmb3Jtcy4KCiBBbHNvLCBjcnVjaWFsbHksIGFsbCBtZXNzYWdlcyBhbmQgZW51bXMgaW4gdGhpcyBmaWxlIGFyZSBldmVudHVhbGx5CiBzdWJtZXNzYWdlcyBvZiB0aGlzIG1lc3NhZ2UuICBTbyBmb3IgZXhhbXBsZSwgYSBmdXp6IHRlc3Qgb2YgVGVzdEFsbFR5cGVzCiBjb3VsZCB0cmlnZ2VyIGJ1Z3MgdGhhdCBvY2N1ciBpbiBhbnkgbWVzc2FnZSB0eXBlIGluIHRoaXMgZmlsZS4gIFdlIHZlcmlmeQogdGhpcyBzdGF5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cGIuRW51bUZlYXR1cmVCGogBAZgBA6IBCxIGVkFMVUUxGIQHsgEDCOgHUg5tZXNzYWdlRmVhdHVyZRJQCg1maWVsZF9mZWF0dXJlGAQgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBKIBCxIGVkFMVUUxGIQHsgEDCOgHUgxmaWVsZEZlYXR1cmUSUAoNb25lb2ZfZmVhdHVyZRgFIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQWiAQsSBlZBTFVFMRiEB7IBAwjoB1IMb25lb2ZGZWF0dXJlEk4KDGVudW1fZmVhdHVyZRgGIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQaiAQsSBlZBTFVFMRiEB7IBAwjoB1ILZW51bUZlYXR1cmUSWQoSZW51bV9lbnRyeV9mZWF0dXJlGAcgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBB6IBCxIGVkFMVUUxGIQHsgEDCOgHUhBlbnVtRW50cnlGZWF0dXJlElQKD3NlcnZpY2VfZmVhdHVyZRgIIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQiiAQsSBlZBTFVFMRiEB7IBAwjoB1IOc2VydmljZUZlYXR1cmUSUgoObWV0aG9kX2ZlYXR1cmUYCSABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEJogELEgZWQUxVRTEYhAeyAQMI6AdSDW1ldGhvZEZlYXR1cmUSbgoQbXVsdGlwbGVfZmVhdHVyZRgKIAEoDjIPLnBiLkVudW1GZWF0dXJlQjKIAQGYAQGYAQSYAQOYAQaYAQeYAQiYAQmYAQWYAQKiAQsSBlZBTFVFMRiEB7IBAwjoB1IPbXVsdGlwbGVGZWF0dXJlElQKEmJvb2xfZmllbGRfZmVhdHVyZRgLIAEoCEImiAEBmAEEogEKEgVmYWxzZRiEB6IBChIEdHJ1ZRidjQayAQMI6AdSEGJvb2xGaWVsZEZlYXR1cmUSagoOc291cmNlX2ZlYXR1cmUYDyABKA4yDy5wYi5FbnVtRmVhdHVyZUIyiAECmAEBmAEEmAEDmAEGmAEHmAEImAEJmAEFmAECogELEgZWQUxVRTEYhAeyAQMI6AdSDXNvdXJjZUZlYXR1cmUSbAoPc291cmNlX2ZlYXR1cmUyGBAgASgOMg8ucGIuRW51bUZlYXR1cmVCMogBApgBAZgBBJgBA5gBBpgBB5gBCJgBCZgBBZgBAqIBCxIGVkFMVUUxGIQHsgEDCOgHUg5zb3VyY2VGZWF0dXJlMhKdAQoPcmVtb3ZlZF9mZWF0dXJlGBEgASgOMg8ucGIuRW51bUZlYXR1cmVCY4gBAZgBAZgBBKIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY6AeiAQsSBlZBTFVFMxjpB7IBLQjoBxDoBxoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyDpB1IOcmVtb3ZlZEZlYXR1cmUSYwoOZnV0dXJlX2ZlYXR1cmUYEiABKA4yDy5wYi5FbnVtRmVhdHVyZUIriAEBmAEBmAEEogELEgZWQUxVRTEYhAeiAQsSBlZBTFVFMhjpB7IBAwjpB1INZnV0dXJlRmVhdHVyZRJmCg5sZWdhY3lfZmVhdHVyZRgTIAEoDjIPLnBiLkVudW1GZWF0dXJlQi6IAQGYAQGYAQSiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOgHsgEGCOcHIOgHUg1sZWdhY3lGZWF0dXJlEuQBChZ2YWx1ZV9saWZldGltZV9mZWF0dXJlGBQgASgOMhgucGIuVmFsdWVMaWZldGltZUZlYXR1cmVCkwGIAQGYAQGiAR0SGFZBTFVFX0xJRkVUSU1FX0lOSEVSSVRFRBiEB6IBGhIVVkFMVUVfTElGRVRJTUVfRlVUVVJFGOgHogEbEhVWQUxVRV9MSUZFVElNRV9GVVRVUkUYn40GsgEvCOgHEJ6NBhoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyCfjQZSFHZhbHVlTGlmZXRpbWVGZWF0dXJlKuYBCgtFbnVtRmVhdHVyZRIdChlURVNUX0VOVU1fRkVBVFVSRV9VTktOT1dOEAASCgoGVkFMVUUxEAESCgoGVkFMVUUyEAISCgoGVkFMVUUzEAMSCgoGVkFMVUU0EAQSCgoGVkFMVUU1EAUSCgoGVkFMVUU2EAYSCgoGVkFMVUU3EAcSCgoGVkFMVUU4EAgSCgoGVkFMVUU5EAkSCwoHVkFMVUUxMBAKEgsKB1ZBTFVFMTEQCxILCgdWQUxVRTEyEAwSCwoHVkFMVUUxMxANEgsKB1ZBTFVFMTQQDhILCgdWQUxVRTE1EA8q4AIKFFZhbHVlTGlmZXRpbWVGZWF0dXJlEh8KG1RFU1RfVkFMVUVfTElGRVRJTUVfVU5LTk9XThAAEhwKGFZBTFVFX0xJRkVUSU1FX0lOSEVSSVRFRBABEk4KFlZBTFVFX0xJRkVUSU1FX1NVUFBPUlQQAhoyIjAInY0GEJ6NBhoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyCfjQYSJAocVkFMVUVfTElGRVRJTUVfRU1QVFlfU1VQUE9SVBADGgIiABIhChVWQUxVRV9MSUZFVElNRV9GVVRVUkUQBBoGIgQInY0GEkkKGVZBTFVFX0xJRkVUSU1FX0RFUFJFQ0FURUQQBRoqIigQnY0GGiJDdXN0b20gZmVhdHVyZSBkZXByZWNhdGlvbiB3YXJuaW5nEiUKFlZBTFVFX0xJRkVUSU1FX1JFTU9WRUQQBhoJIgcQ6AcgnY0GOkIKBHRlc3QSGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldBiPTiABKAsyEC5wYi5UZXN0RmVhdHVyZXNSBHRlc3RKuyUKBxIFBwDxAQEKlAIKAQwSAwcAETKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDIzIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQALCgkKAgMAEgMLACoKCQoBBxIEDQAPAQoJCgIHABIDDgIbCgoKAwcAAhIDDQchCgoKAwcABhIDDgIOCgoKAwcAARIDDg8TCgoKAwcAAxIDDhYaCgoKAgQAEgQRABoBCgoKAwQAARIDEQgTCgsKAwQABhIEEgIUAwoLCgQEAAYAEgMTBCUKDAoFBAAGAAISAxIJIwoMCgUEAAYABhIDEwQQCgwKBQQABgAB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AwYSA1wCDQoMCgUEAQIDARIDXA4bCgwKBQQBAgMDEgNcHh8KDQoFBAECAwgSBFwgYQMKDQoGBAECAwgREgNdBCEKDgoHBAECAwgTABIDXgQfCg4KBwQBAgMIFgESA18ENQoOCgcEAQIDCBQAEgNgBEMKDAoEBAECBBIEYgJnBAoMCgUEAQIEBhIDYgINCgwKBQQBAgQBEgNiDhsKDAoFBAECBAMSA2IeHwoNCgUEAQIECBIEYiBnAwoNCgYEAQIECBESA2MEIQoOCgcEAQIECBMAEgNkBB8KDgoHBAECBAgWARIDZQQ1Cg4KBwQBAgQIFAASA2YEQwoMCgQEAQIFEgRoAm0ECgwKBQQBAgUGEgNoAg0KDAoFBAECBQESA2gOGgoMCgUEAQIFAxIDaB0eCg0KBQQBAgUIEgRoH20DCg0KBgQBAgUIERIDaQQhCg4KBwQBAgUIEwASA2oEHgoOCgcEAQIFCBYBEgNrBDUKDgoHBAECBQgUABIDbARDCgwKBAQBAgYSBG4CcwQKDAoFBAECBgYSA24CDQoMCgUEAQIGARIDbg4gCgwKBQQBAgYDEgNuIyQKDQoFBAECBggSBG4lcwMKDQoGBAECBggREgNvBCEKDgoHBAECBggTABIDcAQkCg4KBwQBAgYIFgESA3EENQoOCgcEAQIGCBQAEgNyBEMKDAoEBAECBxIEdAJ5BAoMCgUEAQIHBhIDdAINCgwKBQQBAgcBEgN0Dh0KDAoFBAECBwMSA3QgIQoNCgUEAQIHCBIEdCJ5AwoNCgYEAQIHCBESA3UEIQoOCgcEAQIHCBMAEgN2BCEKDgoHBAECBwgWARIDdwQ1Cg4KBwQBAgcIFAASA3gEQwoMCgQEAQIIEgR6An8ECgwKBQQBAggGEgN6Ag0KDAoFBAECCAESA3oOHAoMCgUEAQIIAxIDeh8gCg0KBQQBAggIEgR6IX8DCg0KBgQBAggIERIDewQhCg4KBwQBAggIEwASA3wEIAoOCgcEAQIICBYBEgN9BDUKDgoHBAECCAgUABIDfgRDCg4KBAQBAgkSBoABAo0BBAoNCgUEAQIJBhIEgAECDQoNCgUEAQIJARIEgAEOHgoNCgUEAQIJAxIEgAEhIwoPCgUEAQIJCBIGgAEkjQEDCg4KBgQBAgkIERIEgQEEIQoPCgcEAQIJCBMAEgSCAQQeCg8KBwQB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ZWRfZmllbGQYAiABKAsyLS5sZWdhY3lfZmVhdHVyZXNfdW5pdHRlc3QuVGVzdEVkaXRpb25zTWVzc2FnZUIFqgECKAJSDmRlbGltaXRlZEZpZWxkSrkECgYSBAkAEQEK4QIKAQwSAwkAETKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoySyBUZXN0IHRoYXQgZmVhdHVyZXMgd2l0aCBsZWdhY3kgZGVzY3JpcHRvciBoZWxwZXJzIGdldCBwcm9wZXJseSBjb252ZXJ0ZWQuCgoICgECEgMLACEKCgoCBAASBA0AEQEKCgoDBAABEgMNCBsKCwoEBAACABIDDgJHCgwKBQQAAgAFEgMOAgcKDAoFBAACAAESAw4IFgoMCgUEAAIAAxIDDhkaCgwKBQQAAgAIEgMOG0YKDgoHBAACAAgVARIDDhxFCgwKBAQAAgESBA8CEC4KDAoFBAACAQYSAw8CFQoMCgUEAAIBARIDDxYlCgwKBQQAAgEDEgMPKCkKDAoFBAACAQgSAxAGLQoOCgcEAAIBCBUFEgMQByxiCGVkaXRpb25zcOgHCqAqCi5nb29nbGUvcHJvdG9idWYvdW5pdHRlc3RfcHJvdG8zX29wdGlvbmFsLnByb3RvEhFwcm90b2J1Zl91bml0dGVzdBogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8ijw0KElRlc3RQcm90bzNPcHRpb25hbBIqCg5vcHRpb25hbF9pbnQzMhgBIAEoBUgAUg1vcHRpb25hbEludDMyiAEBEioKDm9wdGlvbmFsX2ludDY0GAIgASgDSAFSDW9wdGlvbmFsSW50NjSIAQESLAoPb3B0aW9uYWxfdWludDMyGAMgASgNSAJSDm9wdGlvbmFsVWludDMyiAEBEiwKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBEgDUg5vcHRpb25hbFVpbnQ2NIgBARIsCg9vcHRpb25hbF9zaW50MzIYBSABKBFIBFIOb3B0aW9uYWxTaW50MzKIAQESLAoPb3B0aW9uYWxfc2ludDY0GAYgASgSSAVSDm9wdGlvbmFsU2ludDY0iAEBEi4KEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdIBlIPb3B0aW9uYWxGaXhlZDMyiAEBEi4KEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZIB1IPb3B0aW9uYWxGaXhlZDY0iAEBEjAKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPSAhSEG9wdGlvbmFsU2ZpeGVkMzKIAQESMAoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBICVIQb3B0aW9uYWxTZml4ZWQ2NIgBARIqCg5vcHRpb25hbF9mbG9hdBgLIAEoAkgKUg1vcHRpb25hbEZsb2F0iAEBEiwKD29wdGlvbmFsX2RvdWJsZRgMIAEoAUgLUg5vcHRpb25hbERvdWJsZYgBARIoCg1vcHRpb25hbF9ib29sGA0gASgISAxSDG9wdGlvbmFsQm9vbIgBARIsCg9vcHRpb25hbF9zdHJpbmcYDiABKAlIDVIOb3B0aW9uYWxTdHJpbmeIAQESKgoOb3B0aW9uYWxfYnl0ZXMYDyABKAxIDlINb3B0aW9uYWxCeXRlc4gBARIsCg1vcHRpb25hbF9jb3JkGBAgASgJQgIIAUgPUgxvcHRpb25hbENvcmSIAQEScAoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyMy5wcm90b2J1Zl91bml0dGVzdC5UZXN0UHJvdG8zT3B0aW9uYWwuTmVzdGVkTWVzc2FnZUgQUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2WIAQESbAoTbGF6eV9uZXN0ZWRfbWVzc2FnZRgTIAEoCzIzLnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRNZXNzYWdlQgIoAUgRUhFsYXp5TmVzdGVkTWVzc2FnZYgBARJnChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjIwLnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRFbnVtSBJSEm9wdGlvbmFsTmVzdGVkRW51bYgBARIlCg5zaW5ndWxhcl9pbnQzMhgWIAEoBVINc2luZ3VsYXJJbnQzMhIlCg5zaW5ndWxhcl9pbnQ2NBgXIAEoA1INc2luZ3VsYXJJbnQ2NBorCg1OZXN0ZWRNZXNzYWdlEhMKAmJiGAEgASgFSABSAmJiiAEBQgUKA19iYiJKCgpOZXN0ZWRFbnVtEg8KC1VOU1BFQ0lGSUVEEAASBwoDRk9PEAESBwoDQkFSEAISBwoDQkFaEAMSEAoDTkVHEP///////////wFCEQoPX29wdGlvbmFsX2ludDMyQhEKD19vcHRpb25hbF9pbnQ2NEISChBfb3B0aW9uYWxfdWludDMyQhIKEF9vcHRpb25hbF91aW50NjRCEgoQX29wdGlvbmFsX3NpbnQzMkISChBfb3B0aW9uYWxfc2ludDY0QhMKEV9vcHRpb25hbF9maXhlZDMyQhMKEV9vcHRpb25hbF9maXhlZDY0QhQKEl9vcHRpb25hbF9zZml4ZWQzMkIUChJfb3B0aW9uYWxfc2ZpeGVkNjRCEQoPX29wdGlvbmFsX2Zsb2F0QhIKEF9vcHRpb25hbF9kb3VibGVCEAoOX29wdGlvbmFsX2Jvb2xCEgoQX29wdGlvbmFsX3N0cmluZ0IRCg9fb3B0aW9uYWxfYnl0ZXNCEAoOX29wdGlvbmFsX2NvcmRCGgoYX29wdGlvbmFsX25lc3RlZF9tZXNzYWdlQhYKFF9sYXp5X25lc3RlZF9tZXNzYWdlQhcKFV9vcHRpb25hbF9uZXN0ZWRfZW51bSKyAgoZVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZRJhCg5uZXN0ZWRfbWVzc2FnZRgBIAEoCzI6LnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2UuTmVzdGVkTWVzc2FnZVINbmVzdGVkTWVzc2FnZRJ3ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgCIAEoCzI6LnByb3RvYnVmX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2UuTmVzdGVkTWVzc2FnZUgAUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2WIAQEaHQoNTmVzdGVkTWVzc2FnZRIMCgFzGAEgASgJUgFzQhoKGF9vcHRpb25hbF9uZXN0ZWRfbWVzc2FnZSLJAQoYUHJvdG8zT3B0aW9uYWxFeHRlbnNpb25zMksKD2V4dF9ub19vcHRpb25hbBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiIzdmpASABKAVSDWV4dE5vT3B0aW9uYWwyUgoRZXh0X3dpdGhfb3B0aW9uYWwSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYic3ZqQEgASgFUg9leHRXaXRoT3B0aW9uYWyIAQE6DMDozM0KCMjozM0KEEI4CiFjb20uZ29vZ2xlLnByb3RvYnVmLnRlc3RpbmcucHJvdG9QAaoCEFByb3RvYnVmVW5pdHRlc3RK4xcKBhIEBwBNAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABoKCQoCAwASAwsAKgoICgEIEgMNAC0KCQoCCCUSAw0ALQoICgEIEgMOACIKCQoCCAoSAw4AIgoICgEIEgMPADoKCQoCCAESAw8AOgoKCgIEABIEEQA6AQoKCgMEAAESAxEIGgoMCgQEAAMAEgQSAhcDCgwKBQQAAwABEgMSChcK4wEKBgQAAwACABIDFgQaGtMBIFRoZSBmaWVsZCBuYW1lICJiIiBmYWlscyB0byBjb21waWxlIGluIHByb3RvMSBiZWNhdXNlIGl0IGNvbmZsaWN0cyB3aXRoCiBhIGxvY2FsIHZhcmlhYmxlIG5hbWVkICJiIiBpbiBvbmUgb2YgdGhlIGdlbmVyYXRlZCBtZXRo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ZV9yZXRlbnRpb25fZmllbGQYAyABKAVCA4gBAlIUc291cmNlUmV0ZW50aW9uRmllbGQiFgoIRXh0ZW5kZWUqBAgBEAIqBAgCEAMi7AEKD1RvcExldmVsTWVzc2FnZRIYCgFmGAEgASgCQgqauu2EDwQIARACUgFmEg4KAWkYAiABKANIAFIBaRobCg1OZXN0ZWRNZXNzYWdlOgqaxd6FDwQIARACIiwKCk5lc3RlZEVudW0SEgoOTkVTVEVEX1VOS05PV04QABoK+p6qhA8ECAEQAioQCAoQZRoKopjfhQ8ECAEQAjI1CgFzEhsucHJvdG9idWZfdW5pdHRlc3QuRXh0ZW5kZWUYAiABKAlCCpq67YQPBAgBEAJSAXM6CprF3oUPBAgBEAJCDwoBbxIKitu3hA8ECAEQAio9CgxUb3BMZXZlbEVudW0SIQoRVE9QX0xFVkVMX1VOS05PV04QABoK0t2phA8ECAEQAhoK+p6qhA8ECAEQAjJ0CgdTZXJ2aWNlEl0KB0RvU3R1ZmYSIi5wcm90b2J1Zl91bml0dGVzdC5Ub3BMZXZlbE1lc3NhZ2UaIi5wcm90b2J1Zl91bml0dGVzdC5Ub3BMZXZlbE1lc3NhZ2UiCuKu+IMPBAgBEAIaCuqHi4QPBAgBEAI6QwoMcGxhaW5fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGMa17PABIAEoBVILcGxhaW5PcHRpb246XwoYcnVudGltZV9yZXRlbnRpb25fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGJyS6fABIAEoBUIDiAEBUhZydW50aW1lUmV0ZW50aW9uT3B0aW9uOl0KF3NvdXJjZV9yZXRlbnRpb25fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGNSs3/ABIAEoBUIDiAECUhVzb3VyY2VSZXRlbnRpb25PcHRpb246ZAoLZmlsZV9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYgPLe8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSCmZpbGVPcHRpb246bgoQcmVwZWF0ZWRfb3B0aW9ucxIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxiS/tvwASADKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIPcmVwZWF0ZWRPcHRpb25zOoMBChZleHRlbnNpb25fcmFuZ2Vfb3B0aW9uEiYuZ29vZ2xlLnByb3RvYnVmLkV4dGVuc2lvblJhbmdlT3B0aW9ucxiE89vwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIUZXh0ZW5zaW9uUmFuZ2VPcHRpb246bQoObWVzc2FnZV9vcHRpb24SHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY0+jb8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSDW1lc3NhZ2VPcHRpb246ZwoMZmllbGRfb3B0aW9uEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxij183wASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVILZmllbGRPcHRpb246ZwoMb25lb2Zfb3B0aW9uEh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9ucxix+8bwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVILb25lb2ZPcHRpb246ZAoLZW51bV9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRW51bU9wdGlvbnMY76PF8AEgASgLMiEucHJvdG9idWZfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSCmVudW1PcHRpb246dAoRZW51bV9lbnRyeV9vcHRpb24SIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9ucxjam8XwASABKAsyIS5wcm90b2J1Zl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIPZW51bUVudHJ5T3B0aW9uOm0KDnNlcnZpY2Vfb3B0aW9uEh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zGP2wwfABIAEoCzIhLnByb3RvYnVmX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg1zZXJ2aWNlT3B0aW9uOmoKDW1ldGhvZF9vcHRpb24SHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0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