CsmaAQo3Y29uZm9ybWFuY2UvdGVzdF9wcm90b3MvdGVzdF9tZXNzYWdlc19lZGl0aW9uMjAyMy5wcm90bxIfcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucyIeCg5Db21wbGV4TWVzc2FnZRIMCgFkGAEgASgFUgFkIoxIChdUZXN0QWxsVHlwZXNFZGl0aW9uMjAyMxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxKFAQoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USewoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzQgWqAQIoAVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJ1ChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmsKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITb3B0aW9uYWxGb3JlaWduRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSbAoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzQgWqAQIoAVIQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxKFAQoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USewoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzQgWqAQIoAVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ1ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmsKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSKAoMcGFja2VkX2ludDMyGEsgAygFQgWqAQIYAVILcGFja2VkSW50MzISKAoMcGFja2VkX2ludDY0GEwgAygDQgWqAQIYAVILcGFja2VkSW50NjQSKgoNcGFja2VkX3VpbnQzMhhNIAMoDUIFqgECGAFSDHBhY2tlZFVpbnQzMhIqCg1wYWNrZWRfdWludDY0GE4gAygEQgWqAQIYAVIMcGFja2VkVWludDY0EioKDXBhY2tlZF9zaW50MzIYTyADKBFCBaoBAhgBUgxwYWNrZWRTaW50MzISKgoNcGFja2VkX3NpbnQ2NBhQIAMoEkIFqgECGAFSDHBhY2tlZFNpbnQ2NBIsCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0IFqgECGAFSDXBhY2tlZEZpeGVkMzISLAoOcGFja2VkX2ZpeGVkNjQYUiADKAZCBaoBAhgBUg1wYWNrZWRGaXhlZDY0Ei4KD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0IFqgECGAFSDnBhY2tlZFNmaXhlZDMyEi4KD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEIFqgECGAFSDnBhY2tlZFNmaXhlZDY0EigKDHBhY2tlZF9mbG9hdBhVIAMoAkIFqgECGAFSC3BhY2tlZEZsb2F0EioKDXBhY2tlZF9kb3VibGUYViADKAFCBaoBAhgBUgxwYWNrZWREb3VibGUSJgoLcGFja2VkX2Jvb2wYVyADKAhCBaoBAhgBUgpwYWNrZWRCb29sEngKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAFSEHBhY2tlZE5lc3RlZEVudW0SLAoOdW5wYWNrZWRfaW50MzIYWSADKAVCBaoBAhgCUg11bnBhY2tlZEludDMyEiwKDnVucGFja2VkX2ludDY0GFogAygDQgWqAQIYAlINdW5wYWNrZWRJbnQ2NBIuCg91bnBhY2tlZF91aW50MzIYWyADKA1CBaoBAhgCUg51bnBhY2tlZFVpbnQzMhIuCg91bnBhY2tlZF91aW50NjQYXCADKARCBaoBAhgCUg51bnBhY2tlZFVpbnQ2NBIuCg91bnBhY2tlZF9zaW50MzIYXSADKBFCBaoBAhgCUg51bnBhY2tlZFNpbnQzMhIuCg91bnBhY2tlZF9zaW50NjQYXiADKBJCBaoBAhgCUg51bnBhY2tlZFNpbnQ2NBIwChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDMyEjAKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCBaoBAhgCUg91bnBhY2tlZEZpeGVkNjQSMgoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CBaoBAhgCUhB1bnBhY2tlZFNmaXhlZDMyEjIKEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQ2NBIsCg51bnBhY2tlZF9mbG9hdBhjIAMoAkIFqgECGAJSDXVucGFja2VkRmxvYXQSLgoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgWqAQIYAlIOdW5wYWNrZWREb3VibGUSKgoNdW5wYWNrZWRfYm9vbBhlIAMoCEIFqgECGAJSDHVucGFja2VkQm9vbBJ8ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAJSEnVucGFja2VkTmVzdGVkRW51bRJzCg9tYXBfaW50MzJfaW50MzIYOCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJzCg9tYXBfaW50NjRfaW50NjQYOSADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJ5ChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ5ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ5ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJ5ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ/ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ/ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKFAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShQEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EnMKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EnYKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEm0KDW1hcF9ib29sX2Jvb2wYRCADKAsySS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnkKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEnYKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEo8BChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USkgEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKGAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEokBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJSLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEoEBChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkTWVzc2FnZUIFqgECKAFIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJkCgpvbmVvZl9lbnVtGHcgASgOMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJtCg1ncm91cGxpa2V0eXBlGMkBIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuR3JvdXBMaWtlVHlwZVINZ3JvdXBsaWtldHlwZRJwCg9kZWxpbWl0ZWRfZmllbGQYygEgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5Hcm91cExpa2VUeXBlUg5kZWxpbWl0ZWRGaWVsZBJwCg1tYXBfcmVjdXJzaXZlGK0CIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwUmVjdXJzaXZlRW50cnlSDG1hcFJlY3Vyc2l2ZRqAAQoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhEmEKC2NvcmVjdXJzaXZlGAIgASgLMjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyM0IFqgECKAFSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGpEBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSXAoFdmFsdWUYAiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqGAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJQCgV2YWx1ZRgCIAEoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uMjAyM1IFdmFsdWU6AjgBGosBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSWQoFdmFsdWUYAiABKA4yQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZEVudW1SBXZhbHVlOgI4ARqAAQoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJNCgV2YWx1ZRgCIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1IFdmFsdWU6AjgBGlUKDUdyb3VwTGlrZVR5cGUSIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyGnkKEU1hcFJlY3Vyc2l2ZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5Ek4KBXZhbHVlGAIgASgLMjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyM1IFdmFsdWU6AjgBIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9mX2ZpZWxkIikKGUZvcmVpZ25NZXNzYWdlRWRpdGlvbjIwMjMSDAoBYxgBIAEoBVIBYyIdCg1Hcm91cExpa2VUeXBlEgwKAWMYASABKAVSAWMqSwoWRm9yZWlnbkVudW1FZGl0aW9uMjAyMxIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAjphCg9leHRlbnNpb25faW50MzISOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHggASgFUg5leHRlbnNpb25JbnQzMjpkChBleHRlbnNpb25fc3RyaW5nEjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMxiFASABKAlSD2V4dGVuc2lvblN0cmluZzpiCg9leHRlbnNpb25fYnl0ZXMSOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGIYBIAEoDFIOZXh0ZW5zaW9uQnl0ZXM6jgEKDWdyb3VwbGlrZXR5cGUSOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHkgASgLMi4ucHJvdG9i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bWFuY2UvdGVzdF9wcm90b3MvdGVzdF9tZXNzYWdlc19lZGl0aW9uX3Vuc3RhYmxlLnByb3RvEidwcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25fdW5zdGFibGUiHgoOQ29tcGxleE1lc3NhZ2USDAoBZBgBIAEoD1IBZCKvEQobVGVzdEFsbFR5cGVzRWRpdGlvblVuc3RhYmxlEiUKDm9wdGlvbmFsX2ludDMyGAEgASgPUg1vcHRpb25hbEludDMyEocBChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYAiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25fdW5zdGFibGUuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uVW5zdGFibGVCBaoBAigBUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEncKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgDIAEoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbl91bnN0YWJsZS5Gb3JlaWduRW51bUVkaXRpb25VbnN0YWJsZVITb3B0aW9uYWxGb3JlaWduRW51bRJ4ChFyZWN1cnNpdmVfbWVzc2FnZRgEIAEoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbl91bnN0YWJsZS5UZXN0QWxsVHlwZXNFZGl0aW9uVW5zdGFibGVCBaoBAigBUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGAUgAygPUg1yZXBlYXRlZEludDMyEocBChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYBiADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25fdW5zdGFibGUuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uVW5zdGFibGVCBaoBAigBUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEncKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRgHIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbl91bnN0YWJsZS5Gb3JlaWduRW51bUVkaXRpb25VbnN0YWJsZVITcmVwZWF0ZWRGb3JlaWduRW51bRJ/Cg9tYXBfaW50MzJfaW50MzIYCCADKAsyVy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25fdW5zdGFibGUuVGVzdEFsbFR5cGVzRWRpdGlvblVuc3RhYmxlLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJ5Cg1tYXBfYm9vbF9ib29sGAkgAygLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9uX3Vuc3RhYmxlLlRlc3RBbGxUeXBlc0VkaXRpb25VbnN0YWJsZS5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBKFAQoRbWFwX3N0cmluZ19zdHJpbmcYCiADKAsyWS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25fdW5zdGFibGUuVGVzdEFsbFR5cGVzRWRpdGlvblVuc3RhYmxlLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSngEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGAsgAygLMmEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9uX3Vuc3RhYmxlLlRlc3RBbGxUeXBlc0VkaXRpb25VbnN0YWJsZS5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKVAQoXbWFwX3N0cmluZ19mb3JlaWduX2VudW0YDCADKAsyXi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25fdW5zdGFibGUuVGVzdEFsbFR5cGVzRWRpdGlvblVuc3RhYmxlLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnlSFG1hcFN0cmluZ0ZvcmVpZ25FbnVtEiUKDm9wdGlvbmFsX2J5dGVzGA0gASgMUg1vcHRpb25hbEJ5dGVzEiUKDnJlcGVhdGVkX2J5dGVzGA4gAygMUg1yZXBlYXRlZEJ5dGVzEoIBChBtYXBfc3RyaW5nX2J5dGVzGA8gAygLMlgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9uX3Vuc3RhYmxlLlRlc3RBbGxUeXBlc0VkaXRpb25VbnN0YWJsZS5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARqSAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJcCgV2YWx1ZRgCIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbl91bnN0YWJsZS5Gb3JlaWduTWVzc2FnZUVkaXRpb25VbnN0YWJsZVIFdmFsdWU6AjgBGowBChlNYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElkKBXZhbHVlGAIgASgOMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9uX3Vuc3RhYmxlLkZvcmVpZ25FbnVtRWRpdGlvblVuc3RhYmxlUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBKgUIeBDJASItCh1Gb3JlaWduTWVzc2FnZUVkaXRpb25VbnN0YWJsZRIMCgFjGAEgASgPUgFjKk8KGkZvcmVpZ25FbnVtRWRpdGlvblVuc3RhYmxlEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACOm0KD2V4dGVuc2lvbl9pbnQzMhJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbl91bnN0YWJsZS5UZXN0QWxsVHlwZXNFZGl0aW9uVW5zdGFibGUYeCABKA9SDmV4dGVuc2lvbkludDMyQksKMmNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9uX3Vuc3RhYmxlogIPRWRpdGlvblVuc3RhYmxlkgMCKAJKsQ4KBhIEBwBBAQqUAgoBDBIDBwAVMokCIFByb3Rv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FwoKCgMHAAMSA0AaHWIIZWRpdGlvbnNwj04K0wQKMWNzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0X3B1YmxpY19wcm90bzMucHJvdG8SGHByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydCIjChNQdWJsaWNJbXBvcnRNZXNzYWdlEgwKAWUYASABKAVSAWVCHaoCGkdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zSrcDCgYSBAkAEQEKvgIKAQwSAwkAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyKCBBdXRob3I6IGxpdWppc2lAZ29vZ2xlLmNvbSAoUGhlcmwgTGl1KQoKCAoBAhIDCwAhCggKAQgSAw0ANwoJCgIIJRIDDQA3CgoKAgQAEgQPABEBCgoKAwQAARIDDwgbCgsKBAQAAgASAxABDQoMCgUEAAIABRIDEAEGCgwKBQQAAgABEgMQBwgKDAoFBAACAAMSAxALDGIGcHJvdG8zCucICipjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wcm90bzMucHJvdG8SGHByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydBoxY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHVibGljX3Byb3RvMy5wcm90byIdCg1JbXBvcnRNZXNzYWdlEgwKAWQYASABKAVSAWQqWQoKSW1wb3J0RW51bRIbChdJTVBPUlRfRU5VTV9VTlNQRUNJRklFRBAAEg4KCklNUE9SVF9GT08QBxIOCgpJTVBPUlRfQkFSEAgSDgoKSU1QT1JUX0JBWhAJQh2qAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0rIBgoGEgQNAB8BCucDCgEMEgMNABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMtABIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIEEgcHJvdG8gZmlsZSB3aGljaCBpcyBpbXBvcnRlZCBieSB1bml0dGVzdF9wcm90bzMucHJvdG8gdG8gdGVzdCBpbXBvcnRpbmcuCgoICgECEgMPACEKCAoBCBIDEQA3CgkKAgglEgMRADcKHwoCAwASAxQAQhoUIFRlc3QgcHVibGljIGltcG9ydAoKCQoCCgASAxQHDQoKCgIEABIEFgAYAQoKCgMEAAESAxYIFQoLCgQEAAIAEgMXAg4KDAoFBAACAAUSAxcCBwoMCgUEAAIAARIDFwgJCgwKBQQAAgADEgMXDA0KCgoCBQASBBoAHwEKCgoDBQABEgMaBQ8KCwoEBQACABIDGwIeCgwKBQUAAgABEgMbAhkKDAoFBQACAAISAxscHQoLCgQFAAIBEgMcAhEKDAoFBQACAQESAxwCDAoMCgUFAAIBAhIDHA8QCgsKBAUAAgISAx0CEQoMCgUFAAICARIDHQIMCgwKBQUAAgICEgMdDxAKCwoEBQACAxIDHgIRCgwKBQUAAgMBEgMeAgwKDAoFBQACAwISAx4PEFAAYgZwcm90bzMKorEBCiNjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X3Byb3RvMy5wcm90bxIScHJvdG9idWZfdW5pdHRlc3QzGipjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wcm90bzMucHJvdG8iqxYKDFRlc3RBbGxUeXBlcxIhCgxzaW5nbGVfaW50MzIYASABKAVSC3NpbmdsZUludDMyEiEKDHNpbmdsZV9pbnQ2NBgCIAEoA1ILc2luZ2xlSW50NjQSIwoNc2luZ2xlX3VpbnQzMhgDIAEoDVIMc2luZ2xlVWludDMyEiMKDXNpbmdsZV91aW50NjQYBCABKARSDHNpbmdsZVVpbnQ2NBIjCg1zaW5nbGVfc2ludDMyGAUgASgRUgxzaW5nbGVTaW50MzISIwoNc2luZ2xlX3NpbnQ2NBgGIAEoElIMc2luZ2xlU2ludDY0EiUKDnNpbmdsZV9maXhlZDMyGAcgASgHUg1zaW5nbGVGaXhlZDMyEiUKDnNpbmdsZV9maXhlZDY0GAggASgGUg1zaW5nbGVGaXhlZDY0EicKD3NpbmdsZV9zZml4ZWQzMhgJIAEoD1IOc2luZ2xlU2ZpeGVkMzISJwoPc2luZ2xlX3NmaXhlZDY0GAogASgQUg5zaW5nbGVTZml4ZWQ2NBIhCgxzaW5nbGVfZmxvYXQYCyABKAJSC3NpbmdsZUZsb2F0EiMKDXNpbmdsZV9kb3VibGUYDCABKAFSDHNpbmdsZURvdWJsZRIfCgtzaW5nbGVfYm9vbBgNIAEoCFIKc2luZ2xlQm9vbBIjCg1zaW5nbGVfc3RyaW5nGA4gASgJUgxzaW5nbGVTdHJpbmcSIQoMc2luZ2xlX2J5dGVzGA8gASgMUgtzaW5nbGVCeXRlcxJiChVzaW5nbGVfbmVzdGVkX21lc3NhZ2UYEiABKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VSE3NpbmdsZU5lc3RlZE1lc3NhZ2USWAoWc2luZ2xlX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIUc2luZ2xlRm9yZWlnbk1lc3NhZ2USWwoVc2luZ2xlX2ltcG9ydF9tZXNzYWdlGBQgASgLMicucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydE1lc3NhZ2VSE3NpbmdsZUltcG9ydE1lc3NhZ2USWQoSc2luZ2xlX25lc3RlZF9lbnVtGBUgASgOMisucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhBzaW5nbGVOZXN0ZWRFbnVtEk8KE3NpbmdsZV9mb3JlaWduX2VudW0YFiABKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SEXNpbmdsZUZvcmVpZ25FbnVtElIKEnNpbmdsZV9pbXBvcnRfZW51bRgXIAEoDjIkLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRFbnVtUhBzaW5nbGVJbXBvcnRFbnVtEm4KHHNpbmdsZV9wdWJsaWNfaW1wb3J0X21lc3NhZ2UYGiABKAsyLS5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuUHVibGljSW1wb3J0TWVzc2FnZVIZc2luZ2xlUHVibGljSW1wb3J0TWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJmChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlElwKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJfChdyZXBlYXRlZF9pbXBvcnRfbWVzc2FnZRgyIAMoCzInLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRNZXNzYWdlUhVyZXBlYXRlZEltcG9ydE1lc3NhZ2USXQoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yKy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJTChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SVgoUcmVwZWF0ZWRfaW1wb3J0X2VudW0YNSADKA4yJC5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuSW1wb3J0RW51bVIScmVwZWF0ZWRJbXBvcnRFbnVtEnIKHnJlcGVhdGVkX3B1YmxpY19pbXBvcnRfbWVzc2FnZRg2IAMoCzItLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5QdWJsaWNJbXBvcnRNZXNzYWdlUhtyZXBlYXRlZFB1YmxpY0ltcG9ydE1lc3NhZ2USIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEmIKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlSABSEm9uZW9mTmVzdGVkTWVzc2FnZRIjCgxvbmVvZl9zdHJpbmcYcSABKAlIAFILb25lb2ZTdHJpbmcSIQoLb25lb2ZfYnl0ZXMYciABKAxIAFIKb25lb2ZCeXRlcxofCg1OZXN0ZWRNZXNzYWdlEg4KAmJiGAEgASgFUgJiYiJWCgpOZXN0ZWRFbnVtEhsKF05FU1RFRF9FTlVNX1VOU1BFQ0lGSUVEEAASBwoDRk9PEAESBwoDQkFSEAISBwoDQkFaEAMSEAoDTkVHEP///////////wFCDQoLb25lb2ZfZmllbGQi3QEKEk5lc3RlZFRlc3RBbGxUeXBlcxI8CgVjaGlsZBgBIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0My5OZXN0ZWRUZXN0QWxsVHlwZXNSBWNoaWxkEjoKB3BheWxvYWQYAiABKAsyIC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzUgdwYXlsb2FkEk0KDnJlcGVhdGVkX2NoaWxkGAMgAygLMiYucHJvdG9idWZfdW5pdHRlc3QzLk5lc3RlZFRlc3RBbGxUeXBlc1INcmVwZWF0ZWRDaGlsZCJFChRUZXN0RGVwcmVjYXRlZEZpZWxkcxItChBkZXByZWNhdGVkX2ludDMyGAEgASgFQgIYAVIPZGVwcmVjYXRlZEludDMyIh4KDkZvcmVpZ25NZXNzYWdlEgwKAWMYASABKAVSAWMiMAoSVGVzdFJlc2VydmVkRmllbGRzSgQIAhADSgQIDxAQSgQICRAMUgNiYXJSA2JheiJqChFUZXN0Rm9yZWlnbk5lc3RlZBJVCg5mb3JlaWduX25lc3RlZBgBIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVINZm9yZWlnbk5lc3RlZCI7ChhUZXN0UmVhbGx5TGFyZ2VUYWdOdW1iZXISDAoBYRgBIAEoBVIBYRIRCgJiYhj///9/IAEoBVICYmIiXAoUVGVzdFJlY3Vyc2l2ZU1lc3NhZ2USNgoBYRgBIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0UmVjdXJzaXZlTWVzc2FnZVIBYRIMCgFpGAIgASgFUgFpIlAKFFRlc3RNdXR1YWxSZWN1cnNpb25BEjgKAmJiGAEgASgLMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNdXR1YWxSZWN1cnNpb25CUgJiYiJ1ChRUZXN0TXV0dWFsUmVjdXJzaW9uQhI2CgFhGAEgASgLMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNdXR1YWxSZWN1cnNpb25BUgFhEiUKDm9wdGlvbmFsX2ludDMyGAIgASgFUg1vcHRpb25hbEludDMyIlQKElRlc3RFbnVtQWxsb3dBbGlhcxI+CgV2YWx1ZRgBIAEoDjIoLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0RW51bVdpdGhEdXBWYWx1ZVIFdmFsdWUi+wMKF1Rlc3RDYW1lbENhc2VGaWVsZE5hbWVzEiYKDlByaW1pdGl2ZUZpZWxkGAEgASgFUg5QcmltaXRpdmVGaWVsZBIgCgtTdHJpbmdGaWVsZBgCIAEoCVILU3RyaW5nRmllbGQSPQoJRW51bUZpZWxkGAMgASgOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtUglFbnVtRmllbGQSRgoMTWVzc2FnZUZpZWxkGAQgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUgxNZXNzYWdlRmllbGQSNgoWUmVwZWF0ZWRQcmltaXRpdmVGaWVsZBgHIAMoBVIWUmVwZWF0ZWRQcmltaXRpdmVGaWVsZBIwChNSZXBlYXRlZFN0cmluZ0ZpZWxkGAggAygJUhNSZXBlYXRlZFN0cmluZ0ZpZWxkEk0KEVJlcGVhdGVkRW51bUZpZWxkGAkgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtUhFSZXBlYXRlZEVudW1GaWVsZBJWChRSZXBlYXRlZE1lc3NhZ2VGaWVsZBgKIAMoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIUUmVwZWF0ZWRNZXNzYWdlRmllbGQi/wEKElRlc3RGaWVsZE9yZGVyaW5ncxIbCglteV9zdHJpbmcYCyABKAlSCG15U3RyaW5nEhUKBm15X2ludBgBIAEoA1IFbXlJbnQSGQoIbXlfZmxvYXQYZSABKAJSB215RmxvYXQSaQoVc2luZ2xlX25lc3RlZF9tZXNzYWdlGMgBIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0RmllbGRPcmRlcmluZ3MuTmVzdGVkTWVzc2FnZVITc2luZ2xlTmVzdGVkTWVzc2FnZRovCg1OZXN0ZWRNZXNzYWdlEg4KAm9vGAIgASgDUgJvbxIOCgJiYhgBIAEoBVICYmIiWAoRU3BhcnNlRW51bU1lc3NhZ2USQwoLc3BhcnNlX2VudW0YASABKA4yIi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdFNwYXJzZUVudW1SCnNwYXJzZUVudW0iHwoJT25lU3RyaW5nEhIKBGRhdGEYASABKAlSBGRhdGEiIAoKTW9yZVN0cmluZxISCgRkYXRhGAEgAygJUgRkYXRhIh4KCE9uZUJ5dGVzEhIKBGRhdGEYASABKAxSBGRhdGEiHwoJTW9yZUJ5dGVzEhIKBGRhdGEYASABKAxSBGRhdGEiIgoMSW50MzJNZXNzYWdlEhIKBGRhdGEYASABKAVSBGRhdGEiIwoNVWludDMyTWVzc2FnZRISCgRkYXRhGAEgASgNUgRkYXRhIiIKDEludDY0TWVzc2FnZRISCgRkYXRhGAEgASgDUgRkYXRhIiMKDVVpbnQ2NE1lc3NhZ2USEgoEZGF0YRgBIAEoBFIEZGF0YSIhCgtCb29sTWVzc2FnZRISCgRkYXRhGAEgASgIUgRkYXRhIpMBCglUZXN0T25lb2YSGQoHZm9vX2ludBgBIAEoBUgAUgZmb29JbnQSHwoKZm9vX3N0cmluZxgCIAEoCUgAUglmb29TdHJpbmcSQwoLZm9vX21lc3NhZ2UYAyABKAsyIC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzSABSCmZvb01lc3NhZ2VCBQoDZm9vIu4ECg9UZXN0UGFja2VkVHlwZXMSJQoMcGFja2VkX2ludDMyGFogAygFQgIQAVILcGFja2VkSW50MzISJQoMcGFja2VkX2ludDY0GFsgAygDQgIQAVILcGFja2VkSW50NjQSJwoNcGFja2VkX3VpbnQzMhhcIAMoDUICEAFSDHBhY2tlZFVpbnQzMhInCg1wYWNrZWRfdWludDY0GF0gAygEQgIQAVIMcGFja2VkVWludDY0EicKDXBhY2tlZF9zaW50MzIYXiADKBFCAhABUgxwYWNrZWRTaW50MzISJwoNcGFja2VkX3NpbnQ2NBhfIAMoEkICEAFSDHBhY2tlZFNpbnQ2NBIpCg5wYWNrZWRfZml4ZWQzMhhgIAMoB0ICEAFSDXBhY2tlZEZpeGVkMzISKQoOcGFja2VkX2ZpeGVkNjQYYSADKAZCAhABUg1wYWNrZWRGaXhlZDY0EisKD3BhY2tlZF9zZml4ZWQzMhhiIAMoD0ICEAFSDnBhY2tlZFNmaXhlZDMyEisKD3BhY2tlZF9zZml4ZWQ2NBhjIAMoEEICEAFSDnBhY2tlZFNmaXhlZDY0EiUKDHBhY2tlZF9mbG9hdBhkIAMoAkICEAFSC3BhY2tlZEZsb2F0EicKDXBhY2tlZF9kb3VibGUYZSADKAFCAhABUgxwYWNrZWREb3VibGUSIwoLcGFja2VkX2Jvb2wYZiADKAhCAhABUgpwYWNrZWRCb29sEkQKC3BhY2tlZF9lbnVtGGcgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtQgIQAVIKcGFja2VkRW51bSKoBQoRVGVzdFVucGFja2VkVHlwZXMSKQoOdW5wYWNrZWRfaW50MzIYWiADKAVCAhAAUg11bnBhY2tlZEludDMyEikKDnVucGFja2VkX2ludDY0GFsgAygDQgIQAFINdW5wYWNrZWRJbnQ2NBIrCg91bnBhY2tlZF91aW50MzIYXCADKA1CAhAAUg51bnBhY2tlZFVpbnQzMhIrCg91bnBhY2tlZF91aW50NjQYXSADKARCAhAAUg51bnBhY2tlZFVpbnQ2NBIrCg91bnBhY2tlZF9zaW50MzIYXiADKBFCAhAAUg51bnBhY2tlZFNpbnQzMhIrCg91bnBhY2tlZF9zaW50NjQYXyADKBJCAhAAUg51bnBhY2tlZFNpbnQ2NBItChB1bnBhY2tlZF9maXhlZDMyGGAgAygHQgIQAFIPdW5wYWNrZWRGaXhlZDMyEi0KEHVucGFja2VkX2ZpeGVkNjQYYSADKAZCAhAAUg91bnBhY2tlZEZpeGVkNjQSLwoRdW5wYWNrZWRfc2ZpeGVkMzIYYiADKA9CAhAAUhB1bnBhY2tlZFNmaXhlZDMyEi8KEXVucGFja2VkX3NmaXhlZDY0GGMgAygQQgIQAFIQdW5wYWNrZWRTZml4ZWQ2NBIpCg51bnBhY2tlZF9mbG9hdBhkIAMoAkICEABSDXVucGFja2VkRmxvYXQSKwoPdW5wYWNrZWRfZG91YmxlGGUgAygBQgIQAFIOdW5wYWNrZWREb3VibGUSJwoNdW5wYWNrZWRfYm9vbBhmIAMoCEICEABSDHVucGFja2VkQm9vbBJICg11bnBhY2tlZF9lbnVtGGcgAygOMh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25FbnVtQgIQAFIMdW5wYWNrZWRFbnVtIp8CCiNUZXN0UmVwZWF0ZWRTY2FsYXJEaWZmZXJlbnRUYWdTaXplcxIpChByZXBlYXRlZF9maXhlZDMyGAwgAygHUg9yZXBlYXRlZEZpeGVkMzISJQoOcmVwZWF0ZWRfaW50MzIYDSADKAVSDXJlcGVhdGVkSW50MzISKgoQcmVwZWF0ZWRfZml4ZWQ2NBj+DyADKAZSD3JlcGVhdGVkRml4ZWQ2NBImCg5yZXBlYXRlZF9pbnQ2NBj/DyADKANSDXJlcGVhdGVkSW50NjQSJwoOcmVwZWF0ZWRfZmxvYXQY/v8PIAMoAlINcmVwZWF0ZWRGbG9hdBIpCg9yZXBlYXRlZF91aW50NjQY//8PIAMoBFIOcmVwZWF0ZWRVaW50NjQiKwobVGVzdENvbW1lbnRJbmplY3Rpb25NZXNzYWdlEgwKAWEYASABKAlSAWEiDAoKRm9vUmVxdWVzdCINCgtGb29SZXNwb25zZSISChBGb29DbGllbnRNZXNzYWdlIhIKEEZvb1NlcnZlck1lc3NhZ2UiDAoKQmFyUmVxdWVzdCINCgtCYXJSZXNwb25zZSISChBUZXN0RW1wdHlNZXNzYWdlIoIBCg5Db21tZW50TWVzc2FnZRISCgR0ZXh0GAEgASgJUgR0ZXh0GjcKFE5lc3RlZENvbW1lbnRNZXNzYWdlEh8KC25lc3RlZF90ZXh0GAEgASgJUgpuZXN0ZWRUZXh0IiMKEU5lc3RlZENvbW1lbnRFbnVtEg4KClpFUk9fVkFMVUUQACpZCgtGb3JlaWduRW51bRIXChNGT1JFSUdOX1VOU1BFQ0lGSUVEEAASDwoLRk9SRUlHTl9GT08QBBIPCgtGT1JFSUdOX0JBUhAFEg8KC0ZPUkVJR05fQkFaEAYqdQoUVGVzdEVudW1XaXRoRHVwVmFsdWUSKAokVEVTVF9FTlVNX1dJVEhfRFVQX1ZBTFVFX1VOU1BFQ0lGSUVEEAASCAoERk9PMRABEggKBEJBUjEQAhIHCgNCQVoQAxIICgRGT08yEAESCAoEQkFSMhACGgIQASqdAQoOVGVzdFNwYXJzZUVudW0SIAocVEVTVF9TUEFSU0VfRU5VTV9VTlNQRUNJRklFRBAAEgwKCFNQQVJTRV9BEHsSDgoIU1BBUlNFX0IQpucDEg8KCFNQQVJTRV9DELKxgAYSFQoIU1BBUlNFX0QQ8f//////////ARIVCghTUEFSU0VfRRC03vz///////8BEgwKCFNQQVJTRV9HEAIqHQoLQ29tbWVudEVudW0SDgoKWkVST19WQUxVRRAAMp0BCgtUZXN0U2VydmljZRJGCgNGb28SHi5wcm90b2J1Zl91bml0dGVzdDMuRm9vUmVxdWVzdBofLnByb3RvYnVmX3VuaXR0ZXN0My5Gb29SZXNwb25zZRJGCgNCYXISHi5wcm90b2J1Zl91bml0dGVzdDMuQmFyUmVxdWVzdBofLnByb3RvYnVmX3VuaXR0ZXN0My5CYXJSZXNwb25zZUIsQg1Vbml0dGVzdFByb3RvqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NK93QKBxIFDQD/AgEKxwMKAQwSAw0AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoysAEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdlIHdpbGwgdXNlIGZvciB1bml0IHRlc3RpbmcuCgoICgEIEgMPADcKCQoCCCUSAw8ANwoICgEIEgMTAC4KYAoCCAgSAxMALhpVIE9ubHkgcHJlc2VudCBzbyB3ZSBjYW4gdGVzdCB0aGF0IHdlIGNhbiByZWFkIGl0IChhcyBhbiBleGFtcGxlCiBvZiBhIG5vbi1DIyBvcHRpb24pCgoJCgIDABIDFQA0CggKAQISAxcAGwpbCgIEABIEGwBrARpPIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAogZm9ybXMuCgoKCgMEAAESAxsIFAoMCgQEAAMAEgQcAiEDCgwKBQQAAwABEgMcChcK4wEKBgQAAwACABIDIAQRGtMBIFRoZSBmaWVsZCBuYW1lICJiIiBmYWlscyB0byBjb21waWxlIGluIHByb3RvMSBiZWNhdXNlIGl0IGNvbmZsaWN0cyB3aXRoCiBhIGxvY2FsIHZhcmlhYmxlIG5hbWVkICJiIiBpbiBvbmUgb2YgdGhlIGdlbmVyYXRlZCBtZXRob2RzLiAgRG9oLgogVGhpcyBmaWxlIG5lZWRzIHRvIGNvbXBpbGUgaW4gcHJvdG8xIHRvIHRlc3QgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkuCgoOCgcEAAMAAgAFEgMgBAkKDgoHBAADAAIAARIDIAoMCg4KBwQAAwACAAMSAyAPEAoMCgQEAAQAEgQjAikDCgwKBQQABAABEgMjBxEKDQoGBAAEAAIAEgMkBCAKDgoHBAAEAAIAARIDJAQbCg4KBwQABAACAAISAyQeHwoNCgYEAAQAAgESAyUEDAoOCgcEAAQAAgEBEgMlBAcKDgoHBAAEAAIBAhIDJQoLCg0KBgQABAACAhIDJgQMCg4KBwQABAACAgESAyYEBwoOCgcEAAQAAgICEgMmCgsKDQoGBAAEAAIDEgMnBAwKDgoHBAAEAAIDARIDJwQHCg4KBwQABAACAwISAycKCwooCgYEAAQAAgQSAygEDSIZIEludGVudGlvbmFsbHkgbmVnYXRpdmUuCgoOCgcEAAQAAgQBEgMoBAcKDgoHBAAEAAIEAhIDKAoMChcKBAQAAgASAywCGRoKIFNpbmd1bGFyCgoMCgUEAAIABRIDLAIHCgwKBQQAAgABEgMsCBQKDAoFBAACAAMSAywXGAoLCgQEAAIBEgMtAhkKDAoFBAACAQUSAy0CBwoMCgUEAAIBARIDLQgUCgwKBQQAAgEDEgMtFxgKCwoEBAACAhIDLgIbCgwKBQQAAgIFEgMuAggKDAoFBAACAgESAy4JFgoMCgUEAAICAxIDLhkaCgsKBAQAAgMSAy8CGwoMCgUEAAIDBRIDLwIICgwKBQQAAgMBEgMvCRYKDAoFBAACAwMSAy8ZGgoLCgQEAAIEEgMwAhsKDAoFBAACBAUSAzACCAoMCgUEAAIEARIDMAkWCgwKBQQAAgQDEgMwGRoKCwoEBAACBRIDMQIbCgwKBQQAAgUFEgMxAggKDAoFBAACBQESAzEJFgoMCgUEAAIFAxIDMRkaCgsKBAQAAgYSAzICHQoMCgUEAAIGBRIDMgIJCgwKBQQAAgYBEgMyChgKDAoFBAACBgMSAzIbHAoLCgQEAAIHEgMzAh0KDAoFBAACBwUSAzMCCQoMCgUEAAIHARIDMwoYCgwKBQQAAgcDEgMzGxwKCwoEBAACCBIDNAIfCgwKBQQAAggFEgM0AgoKDAoFBAACCAESAzQLGgoMCgUEAAIIAxIDNB0eCgsKBAQAAgkSAzUCIAoMCgUEAAIJBRIDNQIKCgwKBQQAAgkBEgM1CxoKDAoFBAACCQMSAzUdHwoLCgQEAAIKEgM2AhoKDAoFBAACCgUSAzYCBwoMCgUEAAIKARIDNggUCgwKBQQAAgoDEgM2FxkKCwoEBAACCxIDNwIcCgwKBQQAAgsFEgM3AggKDAoFBAACCwESAzcJFgoMCgUEAAILAxIDNxkbCgsKBAQAAgwSAzgCGAoMCgUEAAIMBRIDOAIGCgwKBQQAAgwBEgM4BxIKDAoFBAACDAMSAzgVFwoLCgQEAAINEgM5AhwKDAoFBAACDQUSAzkCCAoMCgUEAAINARIDOQkWCgwKBQQAAg0DEgM5GRsKCwoEBAACDhIDOgIaCgwKBQQAAg4FEgM6AgcKDAoFBAACDgESAzoIFAoMCgUEAAIOAxIDOhcZCgsKBAQAAg8SAzwCKwoMCgUEAAIPBhIDPAIPCgwKBQQAAg8BEgM8ECUKDAoFBAACDwMSAzwoKgoLCgQEAAIQEgM9Ai0KDAoFBAACEAYSAz0CEAoMCgUEAAIQARIDPREnCgwKBQQAAhADEgM9KiwKCwoEBAACERIDPgJECgwKBQQAAhEGEgM+AigKDAoFBAACEQESAz4pPgoMCgUEAAIRAxIDPkFDCgsKBAQAAhISA0ACJQoMCgUEAAISBhIDQAIMCgwKBQQAAhIBEgNADR8KDAoFBAACEgMSA0AiJAoLCgQEAAITEgNBAicKDAoFBAACEwYSA0ECDQoMCgUEAAITARIDQQ4hCgwKBQQAAhMDEgNBJCYKCwoEBAACFBIDQgI+CgwKBQQAAhQGEgNCAiUKDAoFBAACFAESA0ImOAoMCgUEAAIUAxIDQjs9CjcKBAQAAhUSBEUCRgkaKSBEZWZpbmVkIGluIHVuaXR0ZXN0X2ltcG9ydF9wdWJsaWMucHJvdG8KCgwKBQQAAhUGEgNFAi4KDAoFBAACFQESA0UvSwoMCgUEAAIVAxIDRgYIChcKBAQAAhYSA0kCJRoKIFJlcGVhdGVkCgoMCgUEAAIWBBIDSQIKCgwKBQQAAhYFEgNJCxAKDAoFBAACFgESA0kRHwoMCgUEAAIWAxIDSSIkCgsKBAQAAhcSA0oCJQoMCgUEAAIXBBIDSgIKCgwKBQQAAhcFEgNKCxAKDAoFBAACFwESA0oRHwoMCgUEAAIXAxIDSiIkCgsKBAQAAhgSA0sCJwoMCgUEAAIYBBIDSwIKCgwKBQQAAhgFEgNLCxEKDAoFBAACGAESA0sSIQoMCgUEAAIYAxIDSyQmCgsKBAQAAhkSA0wCJwoMCgUEAAIZBBIDTAIKCgwKBQQAAhkFEgNMCxEKDAoFBAACGQESA0wSIQoMCgUEAAIZAxIDTCQmCgsKBAQAAhoSA00CJwoMCgUEAAIaBBIDTQIKCgwKBQQAAhoFEgNNCxEKDAoFBAACGgESA00SIQoMCgUEAAIaAxIDTSQmCgsKBAQAAhsSA04CJwoMCgUEAAIbBBIDTgIKCgwKBQQAAhsFEgNOCxEKDAoFBAACGwESA04SIQoMCgUEAAIbAxIDTiQmCgsKBAQAAhwSA08CKQoMCgUEAAIcBBIDTwIKCgwKBQQAAhwFEgNPCxIKDAoFBAACHAESA08TIwoMCgUEAAIcAxIDTyYoCgsKBAQAAh0SA1ACKQoMCgUEAAIdBBIDUAIKCgwKBQQAAh0FEgNQCxIKDAoFBAACHQESA1ATIwoMCgUEAAIdAxIDUCYoCgsKBAQAAh4SA1ECKwoMCgUEAAIeBBIDUQIKCgwKBQQAAh4FEgNRCxMKDAoFBAACHgESA1EUJQoMCgUEAAIeAxIDUSgqCgsKBAQAAh8SA1ICKwoMCgUEAAIfBBIDUgIKCgwKBQQAAh8FEgNSCxMKDAoFBAACHwESA1IUJQoMCgUEAAIfAxIDUigqCgsKBAQAAiASA1MCJQoMCgUEAAIgBBIDUwIKCgwKBQQAAiAFEgNTCxAKDAoFBAACIAESA1MRHwoMCgUEAAIgAxIDUyIkCgsKBAQAAiESA1QCJwoMCgUEAAIhBBIDVAIKCgwKBQQAAiEFEgNUCxEKDAoFBAACIQESA1QSIQoMCgUEAAIhAxIDVCQmCgsKBAQAAiISA1UCIwoMCgUEAAIiBBIDVQIKCgwKBQQAAiIFEgNVCw8KDAoFBAACIgESA1UQHQoMCgUEAAIiAxIDVSAiCgsKBAQAAiMSA1YCJwoMCgUEAAIjBBIDVgIKCgwKBQQAAiMFEgNWCxEKDAoFBAACIwESA1YSIQoMCgUEAAIjAxIDViQmCgsKBAQAAiQSA1cCJQoMCgUEAAIkBBIDVwIKCgwKBQQAAiQFEgNXCxAKDAoFBAACJAESA1cRHwoMCgUEAAIkAxIDVyIkCgsKBAQAAiUSA1kCNgoMCgUEAAIlBBIDWQIKCgwKBQQAAiUGEgNZCxgKDAoFBAACJQESA1kZMAoMCgUEAAIlAxIDWTM1CgsKBAQAAiYSA1oCOAoMCgUEAAImBBIDWgIKCgwKBQQAAiYGEgNaCxkKDAoFBAACJgESA1oaMgoMCgUEAAImAxIDWjU3CgsKBAQAAicSA1sCTwoMCgUEAAInBBIDWwIKCgwKBQQAAicGEgNbCzEKDAoFBAACJwESA1sySQoMCgUEAAInAxIDW0xOCgsKBAQAAigSA10CMAoMCgUEAAIoBBIDXQIKCgwKBQQAAigGEgNdCxUKDAoFBAACKAESA10WKgoMCgUEAAIoAxIDXS0vCgsKBAQAAikSA14CMgoMCgUEAAIpBBIDXgIKCgwKBQQAAikGEgNeCxYKDAoFBAACKQESA14XLAoMCgUEAAIpAxIDXi8xCgsKBAQAAioSA18CSQoMCgUEAAIqBBIDXwIKCgwKBQQAAioGEgNfCy4KDAoFBAACKgESA18vQwoMCgUEAAIqAxIDX0ZICjcKBAQAAisSBGECYioaKSBEZWZpbmVkIGluIHVuaXR0ZXN0X2ltcG9ydF9wdWJsaWMucHJvdG8KCgwKBQQAAisEEgNhAgoKDAoFBAACKwYSA2ELNwoMCgUEAAIrARIDYgYkCgwKBQQAAisDEgNiJykKHgoEBAAIABIEZQJqAxoQIEZvciBvbmVvZiB0ZXN0CgoMCgUEAAgAARIDZQgTCgsKBAQAAiwSA2YEHgoMCgUEAAIsBRIDZgQKCgwKBQQAAiwBEgNmCxcKDAoFBAACLAMSA2YaHQoLCgQEAAItEgNnBC0KDAoFBAACLQYSA2cEEQoMCgUEAAItARIDZxImCgwKBQQAAi0DEgNnKSwKCwoEBAACLhIDaAQeCgwKBQQAAi4FEgNoBAoKDAoFBAACLgESA2gLFwoMCgUEAAIuAxIDaBodCgsKBAQAAi8SA2kEHAoMCgUEAAIvBRIDaQQJCgwKBQQAAi8BEgNpChUKDAoFBAACLwMSA2kYGwo/CgIEARIEbgByARozIFRoaXMgcHJvdG8gaW5jbHVkZXMgYSByZWN1cnNpdmVseSBuZXN0ZWQgbWVzc2FnZS4KCgoKAwQBARIDbggaCgsKBAQBAgASA28CHwoMCgUEAQIABhIDbwIUCgwKBQQBAgABEgNvFRoKDAoFBAECAAMSA28dHgoLCgQEAQIBEgNwAhsKDAoFBAECAQYSA3ACDgoMCgUEAQIBARIDcA8WCgwKBQQBAgEDEgNwGRoKCwoEBAECAhIDcQIxCgwKBQQBAgIEEgNxAgoKDAoFBAECAgYSA3ELHQoMCgUEAQICARIDcR4sCgwKBQQBAgIDEgNxLzAKCgoCBAISBHQAdgEKCgoDBAIBEgN0CBwKCwoEBAICABIDdQIxCgwKBQQCAgAFEgN1AgcKDAoFBAICAAESA3UIGAoMCgUEAgIAAxIDdRscCgwKBQQCAgAIEgN1HTAKDQoGBAICAAgDEgN1Hi8KWQoCBAMSBHoAfAEaTSBEZWZpbmUgdGhlc2UgYWZ0ZXIgVGVzdEFsbFR5cGVzIHRvIG1ha2Ugc3VyZSB0aGUgY29tcGlsZXIgY2FuIGhhbmRsZQogdGhhdC4KCgoKAwQDARIDeggWCgsKBAQDAgASA3sCDgoMCgUEAwIABRIDewIHCgwKBQQDAgABEgN7CAkKDAoFBAMCAAMSA3sMDQoLCgIFABIFfgCDAQEKCgoDBQABEgN+BRAKCwoEBQACABIDfwIaCgwKBQUAAgABEgN/AhUKDAoFBQACAAISA38YGQoMCgQFAAIBEgSAAQISCg0KBQUAAgEBEgSAAQINCg0KBQUAAgECEgSAARARCgwKBAUAAgISBIEBAhIKDQoFBQACAgESBIEBAg0KDQoFBQACAgISBIEBEBEKDAoEBQACAxIEggECEgoNCgUFAAIDARIEggECDQoNCgUFAAIDAhIEggEQEQoMCgIEBBIGhQEAiAEBCgsKAwQEARIEhQEIGgoLCgMEBAkSBIYBAhoKDAoEBAQJABIEhgELDAoNCgUEBAkAARIEhgELDAoNCgUEBAkAAhIEhgELDAoMCgQEBAkBEgSGAQ4QCg0KBQQECQEBEgSGAQ4QCg0KBQQECQECEgSGAQ4QCgwKBAQECQISBIYBEhkKDQoFBAQJAgESBIYBEhMKDQoFBAQJAgISBIYBFxkKCwoDBAQKEgSHAQIYCgwKBAQECgASBIcBCxAKDAoEBAQKARIEhwESFwpNCgIEBRIGiwEAjQEBGj8gVGVzdCB0aGF0IHdlIGNhbiB1c2UgTmVzdGVkTWVzc2FnZSBmcm9tIG91dHNpZGUgVGVzdEFsbFR5cGVzLgoKCwoDBAUBEgSLAQgZCgwKBAQFAgASBIwBAjAKDQoFBAUCAAYSBIwBAhwKDQoFBAUCAAESBIwBHSsKDQoFBAUCAAMSBIwBLi8KSAoCBAYSBpABAJUBARo6IFRlc3QgdGhhdCByZWFsbHkgbGFyZ2UgdGFnIG51bWJlcnMgZG9uJ3QgYnJlYWsgYW55dGhpbmcuCgoLCgMEBgESBJABCCAKfQoEBAYCABIEkwECDhpvIFRoZSBsYXJnZXN0IHBvc3NpYmxlIHRhZyBudW1iZXIgaXMgMl4yOCAtIDEsIHNpbmNlIHRoZSB3aXJlIGZvcm1hdCB1c2VzCiB0aHJlZSBiaXRzIHRvIGNvbW11bmljYXRlIHdpcmUgdHlwZS4KCg0KBQQGAgAFEgSTAQIHCg0KBQQGAgABEgSTAQgJCg0KBQQGAgADEgSTAQwNCgwKBAQGAgESBJQBAhcKDQoFBAYCAQUSBJQBAgcKDQoFBAYCAQESBJQBCAoKDQoFBAYCAQMSBJQBDRYKDAoCBAcSBpcBAJoBAQoLCgMEBwESBJcBCBwKDAoEBAcCABIEmAECHQoNCgUEBwIABhIEmAECFgoNCgUEBwIAARIEmAEXGAoNCgUEBwIAAxIEmAEbHAoMCgQEBwIBEgSZAQIOCg0KBQQHAgEFEgSZAQIHCg0KBQQHAgEBEgSZAQgJCg0KBQQHAgEDEgSZAQwNCjEKAgQIEgadAQCfAQEaIyBUZXN0IHRoYXQgbXV0dWFsIHJlY3Vyc2lvbiB3b3Jrcy4KCgsKAwQIARIEnQEIHAoMCgQECAIAEgSeAQIeCg0KBQQIAgAGEgSeAQIWCg0KBQQIAgABEgSeARcZCg0KBQQIAgADEgSeARwdCgwKAgQJEgahAQCkAQEKCwoDBAkBEgShAQgcCgwKBAQJAgASBKIBAh0KDQoFBAkCAAYSBKIBAhYKDQoFBAkCAAESBKIBFxgKDQoFBAkCAAMSBKIBGxwKDAoEBAkCARIEowECGwoNCgUECQIBBRIEowECBwoNCgUECQIBARIEowEIFgoNCgUECQIBAxIEowEZGgoMCgIEChIGpgEAqAEBCgsKAwQKARIEpgEIGgoMCgQECgIAEgSnAQIhCg0KBQQKAgAGEgSnAQIWCg0KBQQKAgABEgSnARccCg0KBQQKAgADEgSnAR8gCksKAgUBEgarAQC1AQEaPSBUZXN0IGFuIGVudW0gdGhhdCBoYXMgbXVsdGlwbGUgdmFsdWVzIHdpdGggdGhlIHNhbWUgbnVtYmVyLgoKCwoDBQEBEgSrAQUZCgsKAwUBAxIErAECHAoMCgQFAQMCEgSsAQIcCgwKBAUBAgASBK4BAisKDQoFBQECAAESBK4BAiYKDQoFBQECAAISBK4BKSoKDAoEBQECARIEsAECCwoNCgUFAQIBARIEsAECBgoNCgUFAQIBAhIEsAEJCgoMCgQFAQICEgSxAQILCg0KBQUBAgIBEgSxAQIGCg0KBQUBAgICEgSxAQkKCgwKBAUBAgMSBLIBAgoKDQoFBQECAwESBLIBAgUKDQoFBQECAwISBLIBCAkKDAoEBQECBBIEswECCwoNCgUFAQIEARIEswECBgoNCgUFAQIEAhIEswEJCgoMCgQFAQIFEgS0AQILCg0KBQUBAgUBEgS0AQIGCg0KBQUBAgUCEgS0AQkKCjoKAgUCEga4AQDCAQEaLCBUZXN0IGFuIGVudW0gd2l0aCBsYXJnZSwgdW5vcmRlcmVkIHZhbHVlcy4KCgsKAwUCARIEuAEFEwoMCgQFAgIAEgS5AQIjCg0KBQUCAgABEgS5AQIeCg0KBQUCAgACEgS5ASEiCgwKBAUCAgESBLoBAhEKDQoFBQICAQESBLoBAgoKDQoFBQICAQISBLoBDRAKDAoEBQICAhIEuwECEwoNCgUFAgICARIEuwECCgoNCgUFAgICAhIEuwENEgoMCgQFAgIDEgS8AQIWCg0KBQUCAgMBEgS8AQIKCg0KBQUCAgMCEgS8AQ0VCgwKBAUCAgQSBL0BAhEKDQoFBQICBAESBL0BAgoKDQoFBQICBAISBL0BDRAKDAoEBQICBRIEvgECFAoNCgUFAgIFARIEvgECCgoNCgUFAgIFAhIEvgENEwpRCgQFAgIGEgTBAQIPGkMgSW4gcHJvdG8zLCB2YWx1ZSAwIG11c3QgYmUgdGhlIGZpcnN0IG9uZSBzcGVjaWZpZWQKIFNQQVJTRV9GID0gMDsKCg0KBQUCAgYBEgTBAQIKCg0KBQUCAgYCEgTBAQ0OCmgKAgQLEgbGAQDQAQEaWiBUZXN0IG1lc3NhZ2Ugd2l0aCBDYW1lbENhc2UgZmllbGQgbmFtZXMuICBUaGlzIHZpb2xhdGVzIFByb3RvY29sIEJ1ZmZlcgogc3RhbmRhcmQgc3R5bGUuCgoLCgMECwESBMYBCB8KDAoEBAsCABIExwECGwoNCgUECwIABRIExwECBwoNCgUECwIAARIExwEIFgoNCgUECwIAAxIExwEZGgoMCgQECwIBEgTIAQIZCg0KBQQLAgEFEgTIAQIICg0KBQQLAgEBEgTIAQkUCg0KBQQLAgEDEgTIARcYCgwKBAQLAgISBMkBAhwKDQoFBAsCAgYSBMkBAg0KDQoFBAsCAgESBMkBDhcKDQoFBAsCAgMSBMkBGhsKDAoEBAsCAxIEygECIgoNCgUECwIDBhIEygECEAoNCgUECwIDARIEygERHQoNCgUECwIDAxIEygEgIQoMCgQECwIEEgTMAQIsCg0KBQQLAgQEEgTMAQIKCg0KBQQLAgQFEgTMAQsQCg0KBQQLAgQBEgTMAREnCg0KBQQLAgQDEgTMASorCgwKBAQLAgUSBM0BAioKDQoFBAsCBQQSBM0BAgoKDQoFBAsCBQUSBM0BCxEKDQoFBAsCBQESBM0BEiUKDQoFBAsCBQMSBM0BKCkKDAoEBAsCBhIEzgECLQoNCgUECwIGBBIEzgECCgoNCgUECwIGBhIEzgELFgoNCgUECwIGARIEzgEXKAoNCgUECwIGAxIEzgErLAoMCgQECwIHEgTPAQI0Cg0KBQQLAgcEEgTPAQIKCg0KBQQLAgcGEgTPAQsZCg0KBQQLAgcBEgTPARouCg0KBQQLAgcDEgTPATEzCosBCgIEDBIG1AEA4QEBGn0gV2UgbGlzdCBmaWVsZHMgb3V0IG9mIG9yZGVyLCB0byBlbnN1cmUgdGhhdCB3ZSdyZSB1c2luZyBmaWVsZCBudW1iZXIgYW5kIG5vdAogZmllbGQgaW5kZXggdG8gZGV0ZXJtaW5lIHNlcmlhbGl6YXRpb24gb3JkZXIuCgoLCgMEDAESBNQBCBoKDAoEBAwCABIE1QECGAoNCgUEDAIABRIE1QECCAoNCgUEDAIAARIE1QEJEgoNCgUEDAIAAxIE1QEVFwoMCgQEDAIBEgTWAQITCg0KBQQMAgEFEgTWAQIHCg0KBQQMAgEBEgTWAQgOCg0KBQQMAgEDEgTWARESCgwKBAQMAgISBNcBAhcKDQoFBAwCAgUSBNcBAgcKDQoFBAwCAgESBNcBCBAKDQoFBAwCAgMSBNcBExYKDgoEBAwDABIG2AEC3gEDCg0KBQQMAwABEgTYAQoXCg4KBgQMAwACABIE2QEEEQoPCgcEDAMAAgAFEgTZAQQJCg8KBwQMAwACAAESBNkBCgwKDwoHBAwDAAIAAxIE2QEPEArkAQoGBAwDAAIBEgTdAQQRGtMBIFRoZSBmaWVsZCBuYW1lICJiIiBmYWlscyB0byBjb21waWxlIGluIHByb3RvMSBiZWNhdXNlIGl0IGNvbmZsaWN0cyB3aXRoCiBhIGxvY2FsIHZhcmlhYmxlIG5hbWVkICJiIiBpbiBvbmUgb2YgdGhlIGdlbmVyYXRlZCBtZXRob2RzLiAgRG9oLgogVGhpcyBmaWxlIG5lZWRzIHRvIGNvbXBpbGUgaW4gcHJvdG8xIHRvIHRlc3QgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkuCgoPCgcEDAMAAgEFEgTdAQQJCg8KBwQMAwACAQESBN0BCgwKDwoHBAwDAAIBAxIE3QEPEAoMCgQEDAIDEgTgAQIsCg0KBQQMAgMGEgTgAQIPCg0KBQQMAgMBEgTgARAlCg0KBQQMAgMDEgTgASgrCgwKAgQNEgbjAQDlAQEKCwoDBA0BEgTjAQgZCgwKBAQNAgASBOQBAiEKDQoFBA0CAAYSBOQBAhAKDQoFBA0CAAESBOQBERwKDQoFBA0CAAMSBOQBHyAKSAoCBA4SBugBAOoBARo6IFRlc3QgU3RyaW5nIGFuZCBCeXRlczogc3RyaW5nIGlzIGZvciB2YWxpZCBVVEYtOCBzdHJpbmdzCgoLCgMEDgESBOgBCBEKDAoEBA4CABIE6QECEgoNCgUEDgIABRIE6QECCAoNCgUEDgIAARIE6QEJDQoNCgUEDgIAAxIE6QEQEQoMCgIEDxIG7AEA7gEBCgsKAwQPARIE7AEIEgoMCgQEDwIAEgTtAQIbCg0KBQQPAgAEEgTtAQIKCg0KBQQPAgAFEgTtAQsRCg0KBQQPAgABEgTtARIWCg0KBQQPAgADEgTtARkaCgwKAgQQEgbwAQDyAQEKCwoDBBABEgTwAQgQCgwKBAQQAgASBPEBAhEKDQoFBBACAAUSBPEBAgcKDQoFBBACAAESBPEBCAwKDQoFBBACAAMSBPEBDxAKDAoCBBESBvQBAPYBAQoLCgMEEQESBPQBCBEKDAoEBBECABIE9QECEQoNCgUEEQIABRIE9QECBwoNCgUEEQIAARIE9QEIDAoNCgUEEQIAAxIE9QEPEApOCgIEEhIG+QEA+wEBGkAgVGVzdCBpbnQzMiwgdWludDMyLCBpbnQ2NCwgdWludDY0LCBhbmQgYm9vbCBhcmUgYWxsIGNvbXBhdGlibGUKCgsKAwQSARIE+QEIFAoMCgQEEgIAEgT6AQIRCg0KBQQSAgAFEgT6AQIHCg0KBQQSAgABEgT6AQgMCg0KBQQSAgADEgT6AQ8QCgwKAgQTEgb9AQD/AQEKCwoDBBMBEgT9AQgVCgwKBAQTAgASBP4BAhIKDQoFBBMCAAUSBP4BAggKDQoFBBMCAAESBP4BCQ0KDQoFBBMCAAMSBP4BEBEKDAoCBBQSBoECAIMCAQoLCgMEFAESBIECCBQKDAoEBBQCABIEggICEQoNCgUEFAIABRIEggICBwoNCgUEFAIAARIEggIIDAoNCgUEFAIAAxIEggIPEAoMCgIEFRIGhQIAhwIBCgsKAwQVARIEhQIIFQoMCgQEFQIAEgSGAgISCg0KBQQVAgAFEgSGAgIICg0KBQQVAgABEgSGAgkNCg0KBQQVAgADEgSGAhARCgwKAgQWEgaJAgCLAgEKCwoDBBYBEgSJAggTCgwKBAQWAgASBIoCAhAKDQoFBBYCAAUSBIoCAgYKDQoFBBYCAAESBIoCBwsKDQoFBBYCAAMSBIoCDg8KHAoCBBcSBo4CAJQCARoOIFRlc3Qgb25lb2ZzLgoKCwoDBBcBEgSOAggRCg4KBAQXCAASBo8CApMCAwoNCgUEFwgAARIEjwIICwoMCgQEFwIAEgSQAgQWCg0KBQQXAgAFEgSQAgQJCg0KBQQXAgABEgSQAgoRCg0KBQQXAgADEgSQAhQVCgwKBAQXAgESBJECBBoKDQoFBBcCAQUSBJECBAoKDQoFBBcCAQESBJECCxUKDQoFBBcCAQMSBJECGBkKDAoEBBcCAhIEkgIEIQoNCgUEFwICBhIEkgIEEAoNCgUEFwICARIEkgIRHAoNCgUEFwICAxIEkgIfIAovCgIEGBIGmAIApwIBMiEgVGVzdCBtZXNzYWdlcyBmb3IgcGFja2VkIGZpZWxkcwoKCwoDBBgBEgSYAggXCgwKBAQYAgASBJkCAjMKDQoFBBgCAAQSBJkCAgoKDQoFBBgCAAUSBJkCCxAKDQoFBBgCAAESBJkCER0KDQoFBBgCAAMSBJkCICIKDQoFBBgCAAgSBJkCIzIKDgoGBBgCAAgCEgSZAiQxCgwKBAQYAgESBJoCAjMKDQoFBBgCAQQSBJoCAgoKDQoFBBgCAQUSBJoCCxAKDQoFBBgCAQESBJoCER0KDQoFBBgCAQMSBJoCICIKDQoFBBgCAQgSBJoCIzIKDgoGBBgCAQgCEgSaAiQxCgwKBAQYAgISBJsCAjUKDQoFBBgCAgQSBJsCAgoKDQoFBBgCAgUSBJsCCxEKDQoFBBgCAgESBJsCEh8KDQoFBBgCAgMSBJsCIiQKDQoFBBgCAggSBJsCJTQKDgoGBBgCAggCEgSbAiYzCgwKBAQYAgMSBJwCAjUKDQoFBBgCAwQSBJwCAgoKDQoFBBgCAwUSBJwCCxEKDQoFBBgCAwESBJwCEh8KDQoFBBgCAwMSBJwCIiQKDQoFBBgCAwgSBJwCJTQKDgoGBBgCAwgCEgScAiYzCgwKBAQYAgQSBJ0CAjUKDQoFBBgCBAQSBJ0CAgoKDQoFBBgCBAUSBJ0CCxEKDQoFBBgCBAESBJ0CEh8KDQoFBBgCBAMSBJ0CIiQKDQoFBBgCBAgSBJ0CJTQKDgoGBBgCBAgCEgSdAiYzCgwKBAQYAgUSBJ4CAjUKDQoFBBgCBQQSBJ4CAgoKDQoFBBgCBQUSBJ4CCxEKDQoFBBgCBQESBJ4CEh8KDQoFBBgCBQMSBJ4CIiQKDQoFBBgCBQgSBJ4CJTQKDgoGBBgCBQgCEgSeAiYzCgwKBAQYAgYSBJ8CAjcKDQoFBBgCBgQSBJ8CAgoKDQoFBBgCBgUSBJ8CCxIKDQoFBBgCBgESBJ8CEyEKDQoFBBgCBgMSBJ8CJCYKDQoFBBgCBggSBJ8CJzYKDgoGBBgCBggCEgSfAig1CgwKBAQYAgcSBKACAjcKDQoFBBgCBwQSBKACAgoKDQoFBBgCBwUSBKACCxIKDQoFBBgCBwESBKACEyEKDQoFBBgCBwMSBKACJCYKDQoFBBgCBwgSBKACJzYKDgoGBBgCBwgCEgSgAig1CgwKBAQYAggSBKECAjkKDQoFBBgCCAQSBKECAgoKDQoFBBgCCAUSBKECCxMKDQoFBBgCCAESBKECFCMKDQoFBBgCCAMSBKECJigKDQoFBBgCCAgSBKECKTgKDgoGBBgCCAgCEgShAio3CgwKBAQYAgkSBKICAjkKDQoFBBgCCQQSBKICAgoKDQoFBBgCCQUSBKICCxMKDQoFBBgCCQESBKICFCMKDQoFBBgCCQMSBKICJigKDQoFBBgCCQgSBKICKTgKDgoGBBgCCQgCEgSiAio3CgwKBAQYAgoSBKMCAjQKDQoFBBgCCgQSBKMCAgoKDQoFBBgCCgUSBKMCCxAKDQoFBBgCCgESBKMCER0KDQoFBBgCCgMSBKMCICMKDQoFBBgCCggSBKMCJDMKDgoGBBgCCggCEgSjAiUyCgwKBAQYAgsSBKQCAjYKDQoFBBgCCwQSBKQCAgoKDQoFBBgCCwUSBKQCCxEKDQoFBBgCCwESBKQCEh8KDQoFBBgCCwMSBKQCIiUKDQoFBBgCCwgSBKQCJjUKDgoGBBgCCwgCEgSkAic0CgwKBAQYAgwSBKUCAjIKDQoFBBgCDAQSBKUCAgoKDQoFBBgCDAUSBKUCCw8KDQoFBBgCDAESBKUCEBsKDQoFBBgCDAMSBKUCHiEK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AAESBPgCCQ0KDQoFBCMCAAMSBPgCEBEKJAoCBQMSBvwCAP8CARoWIExlYWRpbmcgZW51bSBjb21tZW50CgoLCgMFAwESBPwCBRAKIgoEBQMCABIE/gICERoUIFplcm8gdmFsdWUgY29tbWVudAoKDQoFBQMCAAESBP4CAgwKDQoFBQMCAAISBP4CDxBiBnByb3RvMwqpTgonY3NoYXJwL3Byb3Rvcy9tYXBfdW5pdHRlc3RfcHJvdG8zLnByb3RvEhJwcm90b2J1Zl91bml0dGVzdDMaI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfcHJvdG8zLnByb3RvIpkWCgdUZXN0TWFwElYKD21hcF9pbnQzMl9pbnQzMhgBIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJWCg9tYXBfaW50NjRfaW50NjQYAiADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSXAoRbWFwX3VpbnQzMl91aW50MzIYAyADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyElwKEW1hcF91aW50NjRfdWludDY0GAQgAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJcChFtYXBfc2ludDMyX3NpbnQzMhgFIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISXAoRbWFwX3NpbnQ2NF9zaW50NjQYBiADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EmIKE21hcF9maXhlZDMyX2ZpeGVkMzIYByADKAsyMi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJiChNtYXBfZml4ZWQ2NF9maXhlZDY0GAggAygLMjIucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSaAoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGAkgAygLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEmgKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBgKIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJWCg9tYXBfaW50MzJfZmxvYXQYCyADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSWQoQbWFwX2ludDMyX2RvdWJsZRgMIAMoCzIvLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlElAKDW1hcF9ib29sX2Jvb2wYDSADKAsyLC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJcChFtYXBfc3RyaW5nX3N0cmluZxgOIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSVgoPbWFwX2ludDMyX2J5dGVzGA8gAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJCeXRlc0VudHJ5Ug1tYXBJbnQzMkJ5dGVzElMKDm1hcF9pbnQzMl9lbnVtGBAgAygLMi0ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJFbnVtRW50cnlSDG1hcEludDMyRW51bRJyChltYXBfaW50MzJfZm9yZWlnbl9tZXNzYWdlGBEgAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5UhZtYXBJbnQzMkZvcmVpZ25NZXNzYWdlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJCeXRlc0VudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgMUgV2YWx1ZToCOAEaXAoRTWFwSW50MzJFbnVtRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKA4yGy5wcm90b2J1Zl91bml0dGVzdDMuTWFwRW51bVIFdmFsdWU6AjgBGm0KG01hcEludDMyRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRI4CgV2YWx1ZRgCIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIFdmFsdWU6AjgBIksKEVRlc3RNYXBTdWJtZXNzYWdlEjYKCHRlc3RfbWFwGAEgASgLMhsucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXBSB3Rlc3RNYXAi2wEKDlRlc3RNZXNzYWdlTWFwEmMKEW1hcF9pbnQzMl9tZXNzYWdlGAEgAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNZXNzYWdlTWFwLk1hcEludDMyTWVzc2FnZUVudHJ5Ug9tYXBJbnQzMk1lc3NhZ2UaZAoUTWFwSW50MzJNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSNgoFdmFsdWUYAiABKAsyIC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzUgV2YWx1ZToCOAEiiQIKD1Rlc3RTYW1lVHlwZU1hcBJBCgRtYXAxGAEgAygLMi0ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RTYW1lVHlwZU1hcC5NYXAxRW50cnlSBG1hcDESQQoEbWFwMhgCIAMoCzItLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0U2FtZVR5cGVNYXAuTWFwMkVudHJ5UgRtYXAyGjcKCU1hcDFFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGjcKCU1hcDJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBIq0UCgxUZXN0QXJlbmFNYXASWwoPbWFwX2ludDMyX2ludDMyGAEgAygLMjMucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISWwoPbWFwX2ludDY0X2ludDY0GAIgAygLMjMucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQSYQoRbWFwX3VpbnQzMl91aW50MzIYAyADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISYQoRbWFwX3VpbnQ2NF91aW50NjQYBCADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQSYQoRbWFwX3NpbnQzMl9zaW50MzIYBSADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzISYQoRbWFwX3NpbnQ2NF9zaW50NjQYBiADKAsyNS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSZwoTbWFwX2ZpeGVkMzJfZml4ZWQzMhgHIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISZwoTbWFwX2ZpeGVkNjRfZml4ZWQ2NBgIIAMoCzI3LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSbQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGAkgAygLMjkucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISbQoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GAogAygLMjkucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSWwoPbWFwX2ludDMyX2Zsb2F0GAsgAygLMjMucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSXgoQbWFwX2ludDMyX2RvdWJsZRgMIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSVQoNbWFwX2Jvb2xfYm9vbBgNIAMoCzIxLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wSWAoObWFwX2ludDMyX2VudW0YDiADKAsyMi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMyRW51bUVudHJ5UgxtYXBJbnQzMkVudW0SdwoZbWFwX2ludDMyX2ZvcmVpZ25fbWVzc2FnZRgPIAMoCzI8LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5UhZtYXBJbnQzMkZvcmVpZ25NZXNzYWdlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGlwKEU1hcEludDMyRW51bUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgOMhsucHJvdG9idWZfdW5pdHRlc3QzLk1hcEVudW1SBXZhbHVlOgI4ARptChtNYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSOAoFdmFsdWUYAiABKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSBXZhbHVlOgI4ASL4AQofTWVzc2FnZUNvbnRhaW5pbmdFbnVtQ2FsbGVkVHlwZRJRCgR0eXBlGAEgAygLMj0ucHJvdG9idWZfdW5pdHRlc3QzLk1lc3NhZ2VDb250YWluaW5nRW51bUNhbGxlZFR5cGUuVHlwZUVudHJ5UgR0eXBlGmwKCVR5cGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRJJCgV2YWx1ZRgCIAEoCzIzLnByb3RvYnVmX3VuaXR0ZXN0My5NZXNzYWdlQ29udGFpbmluZ0VudW1DYWxsZWRUeXBlUgV2YWx1ZToCOAEiFAoEVHlwZRIMCghUWVBFX0ZPTxAAIrEBCh9NZXNzYWdlQ29udGFpbmluZ01hcENhbGxlZEVudHJ5ElQKBWVudHJ5GAEgAygLMj4ucHJvdG9idWZfdW5pdHRlc3QzLk1lc3NhZ2VDb250YWluaW5nTWFwQ2FsbGVkRW50cnkuRW50cnlFbnRyeVIFZW50cnkaOAoKRW50cnlFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBKj8KB01hcEVudW0SEAoMTUFQX0VOVU1fRk9PEAASEAoMTUFQX0VOVU1fQkFSEAESEAoMTUFQX0VOVU1fQkFaEAJCHaoCGkdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zSqoaCgYSBA0AXAEK4wQKAQwSAw0AEhrMAiBUaGlzIGZpbGUgaXMgbW9zdGx5IGVxdWl2YWxlbnQgdG8gbWFwX3VuaXR0ZXN0LnByb3RvLCBidXQgaW1wb3J0cwogdW5pdHRlc3RfcHJvdG8zLnByb3RvIGluc3RlYWQgb2YgdW5pdHRlc3QucHJvdG8sIHNvIHRoYXQgaXQgb25seQogdXNlcyBwcm90bzMgbWVzc2FnZXMuIFRoaXMgbWFrZXMgaXQgc3VpdGFibGUgZm9yIHRlc3RpbmcKIGltcGxlbWVudGF0aW9ucyB3aGljaCBvbmx5IHN1cHBvcnQgcHJvdG8zLgogVGhlIFRlc3RSZXF1aXJlZE1lc3NhZ2VNYXAgbWVzc2FnZSBoYXMgYmVlbiByZW1vdmVkIGFzIHRoZXJlIGFyZSBubwogcmVxdWlyZWQgZmllbGRzIGluIHByb3RvMy4KMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdl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BQQAEgRTAlUDCgwKBQQFBAABEgNTBwsKDQoGBAUEAAIAEgNUBBEKDgoHBAUEAAIAARIDVAQMCg4KBwQFBAACAAISA1QPEAoLCgQEBQIAEgNWAjcKDAoFBAUCAAYSA1YCLQoMCgUEBQIAARIDVi4yCgwKBQQFAgADEgNWNTYKSgoCBAYSBFoAXAEaPiBQcmV2aW91c2x5LCBtZXNzYWdlIGNhbm5vdCBjb250YWluIG1hcCBmaWVsZCBjYWxsZWQgImVudHJ5Ii4KCgoKAwQGARIDWggnCgsKBAQGAgASA1sCHgoMCgUEBgIABhIDWwITCgwKBQQGAgABEgNbFBkKDAoFBAYCAAMSA1scHWIGcHJvdG8zCvMmChxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvEg9nb29nbGUucHJvdG9idWYimAEKBlN0cnVjdBI7CgZmaWVsZHMYASADKAsyIy5nb29nbGUucHJvdG9idWYuU3RydWN0LkZpZWxkc0VudHJ5UgZmaWVsZHMaUQoLRmllbGRzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSLAoFdmFsdWUYAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSBXZhbHVlOgI4ASKyAgoFVmFsdWUSOwoKbnVsbF92YWx1ZRgBIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIJbnVsbFZhbHVlEiMKDG51bWJlcl92YWx1ZRgCIAEoAUgAUgtudW1iZXJWYWx1ZRIjCgxzdHJpbmdfdmFsdWUYAyABKAlIAFILc3RyaW5nVmFsdWUSHwoKYm9vbF92YWx1ZRgEIAEoCEgAUglib29sVmFsdWUSPAoMc3RydWN0X3ZhbHVlGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAUgtzdHJ1Y3RWYWx1ZRI7CgpsaXN0X3ZhbHVlGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLkxpc3RWYWx1ZUgAUglsaXN0VmFsdWVCBgoEa2luZCI7CglMaXN0VmFsdWUSLgoGdmFsdWVzGAEgAygLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUgZ2YWx1ZXMqGwoJTnVsbFZhbHVlEg4KCk5VTExfVkFMVUUQAEJ/ChNjb20uZ29vZ2xlLnByb3RvYnVmQgtTdHJ1Y3RQcm90b1ABWi9nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9zdHJ1Y3RwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qOIQoGEgQeAG4BCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAfCgkKAggfEgMiAB8KCAoBCBIDIwBGCgkKAggLEgMjAEYKCAoBCBIDJAAsCgkKAggBEgMkACwKCAoBCBIDJQAsCgkKAggIEgMlACwKCAoBCBIDJgAiCgkKAggKEgMmACIKCAoBCBIDJwAhCgkKAggkEgMnACEKCAoBCBIDKAA7CgkKAgglEgMoADsKzAQKAgQAEgQ3ADoBGr8EIFJlcHJlc2VudHMgYSBKU09OIG9iamVjdC4KCiBBbiB1bm9yZGVyZWQga2V5LXZhbHVlIG1hcCwgaW50ZW5kaW5nIHRvIHBlcmZlY3RseSBjYXB0dXJlIHRoZSBzZW1hbnRpY3Mgb2YgYQogSlNPTiBvYmplY3QuIFRoaXMgZW5hYmxlcyBwYXJzaW5nIGFueSBhcmJpdHJhcnkgSlNPTiBwYXlsb2FkIGFzIGEgbWVzc2FnZQogZmllbGQgaW4gUHJvdG9KU09OIGZvcm1hdC4KCiBUaGlzIGZvbGxvd3MgUkZDIDgyNTkgZ3VpZGVsaW5lcyBmb3IgaW50ZXJvcGVyYWJsZSBKU09OOiBub3RhYmx5IHRoaXMgdHlwZQogY2Fubm90IHJlcHJlc2VudCBsYXJnZSBJbnQ2NCB2YWx1ZXMgb3IgYE5hTmAvYEluZmluaXR5YCBudW1iZXJzLAogc2luY2UgdGhlIEpTT04gZm9ybWF0IGdlbmVyYWxseSBkb2VzIG5vdCBzdXBwb3J0IHRob3NlIHZhbHVlcyBpbiBpdHMgbnVtYmVyCiB0eXBlLgoKIElmIHlvdSBkbyBub3QgaW50ZW5kIHRvIHBhcnNlIGFyYml0cmFyeSBKU09OIGludG8geW91ciBtZXNzYWdlLCBhIGN1c3RvbQogdHlwZWQgbWVzc2FnZSBzaG91bGQgYmUgcHJlZmVycmVkIGluc3RlYWQgb2YgdXNpbmcgdGhpcyB0eXBlLgoKCgoDBAABEgM3CA4KOQoEBAACABIDOQIgGiwgVW5vcmRlcmVkIG1hcCBvZiBkeW5hbWljYWxseSB0eXBlZCB2YWx1ZXMuCgoMCgUEAAIABhIDOQIUCgwKBQQAAgABEgM5FRsKDAoFBAACAAMSAzkeHwqrAgoCBAESBEIAWgEangIgUmVwcmVzZW50cyBhIEpTT04gdmFsdWUuCgogYFZhbHVlYCByZXByZXNlbnRzIGEgZHluYW1pY2FsbHkgdHlwZWQgdmFsdWUgd2hpY2ggY2FuIGJlIGVpdGhlcgogbnVsbCwgYSBudW1iZXIsIGEgc3RyaW5nLCBhIGJvb2xlYW4sIGEgcmVjdXJzaXZlIHN0cnVjdCB2YWx1ZSwgb3IgYQogbGlzdCBvZiB2YWx1ZXMuIEEgcHJvZHVjZXIgb2YgdmFsdWUgaXMgZXhwZWN0ZWQgdG8gc2V0IG9uZSBvZiB0aGVzZQogdmFyaWFudHMuIEFic2VuY2Ugb2YgYW55IHZhcmlhbnQgaXMgYW4gaW52YWxpZCBzdGF0ZS4KCgoKAwQBARIDQggNCiIKBAQBCAASBEQCWQMaFCBUaGUga2luZCBvZiB2YWx1ZS4KCgwKBQQBCAABEgNECAwKKAoEBAECABIDRgQdGhsgUmVwcmVzZW50cyBhIEpTT04gYG51bGxgLgoKDAoFBAECAAYSA0YEDQoMCgUEAQIAARIDRg4YCgwKBQQBAgADEgNGGxwK9gEKBAQBAgESA0wEHBroASBSZXByZXNlbnRzIGEgSlNPTiBudW1iZXIuIE11c3Qgbm90IGJlIGBOYU5gLCBgSW5maW5pdHlgIG9yCiBgLUluZmluaXR5YCwgc2luY2UgdGhvc2UgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gSlNPTi4gVGhpcyBhbHNvIGNhbm5vdAogcmVwcmVzZW50IGxhcmdlIEludDY0IHZhbHVlcywgc2luY2UgSlNPTiBmb3JtYXQgZ2VuZXJhbGx5IGRvZXMgbm90CiBzdXBwb3J0IHRoZW0gaW4gaXRzIG51bWJlciB0eXBlLgoKDAoFBAECAQUSA0wECgoMCgUEAQIBARIDTAsXCgwKBQQBAgEDEgNMGhsKKAoEBAECAhIDTwQcGhsgUmVwcmVzZW50cyBhIEpTT04gc3RyaW5nLgoKDAoFBAECAgUSA08ECgoMCgUEAQICARIDTwsXCgwKBQQBAgIDEgNPGhsKTQoEBAECAxIDUgQYGkAgUmVwcmVzZW50cyBhIEpTT04gYm9vbGVhbiAoYHRydWVgIG9yIGBmYWxzZWAgbGl0ZXJhbCBpbiBKU09OKS4KCgwKBQQBAgMFEgNSBAgKDAoFBAECAwESA1IJEwoMCgUEAQIDAxIDUhYXCigKBAQBAgQSA1UEHBobIFJlcHJlc2VudHMgYSBKU09OIG9iamVjdC4KCgwKBQQBAgQGEgNVBAoKDAoFBAECBAESA1ULFwoMCgUEAQIEAxIDVRobCicKBAQBAgUSA1gEHRoaIFJlcHJlc2VudHMgYSBKU09OIGFycmF5LgoKDAoFBAECBQYSA1gEDQoMCgUEAQIFARIDWA4YCgwKBQQBAgUDEgNYGxwKlAMKAgUAEgRlAGgBGocDIFJlcHJlc2VudHMgYSBKU09OIGBudWxsYC4KCiBgTnVsbFZhbHVlYCBpcyBhIHNlbnRpbmVsLCB1c2luZyBhbiBlbnVtIHdpdGggb25seSBvbmUgdmFsdWUgdG8gcmVwcmVzZW50CiB0aGUgbnVsbCB2YWx1ZSBmb3IgdGhlIGBWYWx1ZWAgdHlwZSB1bmlvbi4KCiBBIGZpZWxkIG9mIHR5cGUgYE51bGxWYWx1ZWAgd2l0aCBhbnkgdmFsdWUgb3RoZXIgdGhhbiBgMGAgaXMgY29uc2lkZXJlZAogaW52YWxpZC4gTW9zdCBQcm90b0pTT04gc2VyaWFsaXplcnMgd2lsbCBlbWl0IGEgVmFsdWUgd2l0aCBhIGBudWxsX3ZhbHVlYCBzZXQKIGFzIGEgSlNPTiBgbnVsbGAgcmVnYXJkbGVzcyBvZiB0aGUgaW50ZWdlciB2YWx1ZSwgYW5kIHNvIHdpbGwgcm91bmQgdHJpcCB0bwogYSBgMGAgdmFsdWUuCgoKCgMFAAESA2UFDgoaCgQFAAIAEgNnAhEaDSBOdWxsIHZhbHVlLgoKDAoFBQACAAESA2cCDAoMCgUFAAIAAhIDZw8QCiYKAgQCEgRrAG4BGhogUmVwcmVzZW50cyBhIEpTT04gYXJyYXkuCgoKCgMEAgESA2sIEQo6CgQEAgIAEgNtAhwaLSBSZXBlYXRlZCBmaWVsZCBvZiBkeW5hbWljYWxseSB0eXBlZCB2YWx1ZXMuCgoMCgUEAgIABBIDbQIKCgwKBQQCAgAGEgNtCxAKDAoFBAICAAESA20RFwoMCgUEAgIAAxIDbRobYgZwcm90bzMK22QKI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWVzLnByb3RvEg91bml0dGVzdF9pc3N1ZXMaHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8iJwoISXNzdWUzMDcaGwoKTmVzdGVkT25jZRoNCgtOZXN0ZWRUd2ljZSLNAQoTTmVnYXRpdmVFbnVtTWVzc2FnZRIzCgV2YWx1ZRgBIAEoDjIdLnVuaXR0ZXN0X2lzc3Vlcy5OZWdhdGl2ZUVudW1SBXZhbHVlEjkKBnZhbHVlcxgCIAMoDjIdLnVuaXR0ZXN0X2lzc3Vlcy5OZWdhdGl2ZUVudW1CAhAAUgZ2YWx1ZXMSRgoNcGFja2VkX3ZhbHVlcxgDIAMoDjIdLnVuaXR0ZXN0X2lzc3Vlcy5OZWdhdGl2ZUVudW1CAhABUgxwYWNrZWRWYWx1ZXMiFQoPRGVwcmVjYXRlZENoaWxkOgIYASKLAwoXRGVwcmVjYXRlZEZpZWxkc01lc3NhZ2USKgoOUHJpbWl0aXZlVmFsdWUYASABKAVCAhgBUg5QcmltaXRpdmVWYWx1ZRIqCg5QcmltaXRpdmVBcnJheRgCIAMoBUICGAFSDlByaW1pdGl2ZUFycmF5EkgKDE1lc3NhZ2VWYWx1ZRgDIAEoCzIgLnVuaXR0ZXN0X2lzc3Vlcy5EZXByZWNhdGVkQ2hpbGRCAhgBUgxNZXNzYWdlVmFsdWUSSAoMTWVzc2FnZUFycmF5GAQgAygLMiAudW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRDaGlsZEICGAFSDE1lc3NhZ2VBcnJheRJBCglFbnVtVmFsdWUYBSABKA4yHy51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZEVudW1CAhgBUglFbnVtVmFsdWUSQQoJRW51bUFycmF5GAYgAygOMh8udW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRFbnVtQgIYAVIJRW51bUFycmF5Ih8KCUl0ZW1GaWVsZBISCgRpdGVtGAEgASgFUgRpdGVtIlcKDVJlc2VydmVkTmFtZXMSFAoFdHlwZXMYASABKAVSBXR5cGVzEh4KCmRlc2NyaXB0b3IYAiABKAVSCmRlc2NyaXB0b3IaEAoOU29tZU5lc3RlZFR5cGUi3wEKFVRlc3RKc29uRmllbGRPcmRlcmluZxIfCgtwbGFpbl9pbnQzMhgEIAEoBVIKcGxhaW5JbnQzMhIdCglvMV9zdHJpbmcYAiABKAlIAFIIbzFTdHJpbmcSGwoIbzFfaW50MzIYBSABKAVIAFIHbzFJbnQzMhIhCgxwbGFpbl9zdHJpbmcYASABKAlSC3BsYWluU3RyaW5nEhsKCG8yX2ludDMyGAYgASgFSAFSB28ySW50MzISHQoJbzJfc3RyaW5nGAMgASgJSAFSCG8yU3RyaW5nQgQKAm8xQgQKAm8yIlEKDFRlc3RKc29uTmFtZRISCgRuYW1lGAEgASgJUgRuYW1lEhkKC2Rlc2NyaXB0aW9uGAIgASgJUgRkZXNjEhIKBGd1aWQYAyABKAlSBGV4aWQikwEKDE9uZW9mTWVyZ2luZxIUCgR0ZXh0GAEgASgJSABSBHRleHQSPgoGbmVzdGVkGAIgASgLMiQudW5pdHRlc3RfaXNzdWVzLk9uZW9mTWVyZ2luZy5OZXN0ZWRIAFIGbmVzdGVkGiQKBk5lc3RlZBIMCgF4GAEgASgFUgF4EgwKAXkYAiABKAVSAXlCBwoFdmFsdWUigwEKFk51bGxWYWx1ZU91dHNpZGVTdHJ1Y3QSIwoMc3RyaW5nX3ZhbHVlGAEgASgJSABSC3N0cmluZ1ZhbHVlEjsKCm51bGxfdmFsdWUYAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSABSCW51bGxWYWx1ZUIHCgV2YWx1ZSJQChNOdWxsVmFsdWVOb3RJbk9uZW9mEjkKCm51bGxfdmFsdWUYAiABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlUgludWxsVmFsdWUifQoXTWl4ZWRSZWd1bGFyQW5kT3B0aW9uYWwSIwoNcmVndWxhcl9maWVsZBgBIAEoCVIMcmVndWxhckZpZWxkEioKDm9wdGlvbmFsX2ZpZWxkGAIgASgJSABSDW9wdGlvbmFsRmllbGSIAQFCEQoPX29wdGlvbmFsX2ZpZWxkIkIKEk9uZW9mV2l0aE5vbmVGaWVsZBIOCgF4GAEgASgJSABSAXgSFAoEbm9uZRgCIAEoCUgAUgRub25lQgYKBHRlc3QiOwoRT25lb2ZXaXRoTm9uZU5hbWUSDgoBeBgBIAEoCUgAUgF4Eg4KAXkYAiABKAlIAFIBeUIGCgRub25lIqIDChlEaXNhbWJpZ3VhdGVDb21tb25NZW1iZXJzEj4KG2Rpc2FtYmlndWF0ZV9jb21tb25fbWVtYmVycxgBIAEoBVIZZGlzYW1iaWd1YXRlQ29tbW9uTWVtYmVycxIUCgV0eXBlcxgCIAEoBVIFdHlwZXMSHgoKZGVzY3JpcHRvchgDIAEoBVIKZGVzY3JpcHRvchIWCgZlcXVhbHMYBCABKAVSBmVxdWFscxIbCgl0b19zdHJpbmcYBSABKAVSCHRvU3RyaW5nEiIKDWdldF9oYXNoX2NvZGUYBiABKAVSC2dldEhhc2hDb2RlEhkKCHdyaXRlX3RvGAcgASgFUgd3cml0ZVRvEhQKBWNsb25lGAggASgFUgVjbG9uZRIlCg5jYWxjdWxhdGVfc2l6ZRgJIAEoBVINY2FsY3VsYXRlU2l6ZRIdCgptZXJnZV9mcm9tGAogASgFUgltZXJnZUZyb20SJwoPb25fY29uc3RydWN0aW9uGAsgASgFUg5vbkNvbnN0cnVjdGlvbhIWCgZwYXJzZXIYDCABKAVSBnBhcnNlciI9ChFJc3N1ZTExOTg3TWVzc2FnZRIMCgFhGAEgASgFUgFiEgwKAWIYAiABKAVSAWESDAoBYxgDIAEoBVIBZCLXCgoQVGVzdFByZXNlbmNlQml0cxIbCgZmaWVsZDEYASABKAVIAFIGZmllbGQxiAEBEhsKBmZpZWxkMhgCIAEoBUgBUgZmaWVsZDKIAQESGwoGZmllbGQzGAMgASgFSAJSBmZpZWxkM4gBARIbCgZmaWVsZDQYBCABKAVIA1IGZmllbGQ0iAEBEhsKBmZpZWxkNRgFIAEoBUgEUgZmaWVsZDWIAQESGwoGZmllbGQ2GAYgASgFSAVSBmZpZWxkNogBARIbCgZmaWVsZDcYByABKAVIBlIGZmllbGQ3iAEBEhsKBmZpZWxkOBgIIAEoBUgHUgZmaWVsZDiIAQESGwoGZmllbGQ5GAkgASgFSAhSBmZpZWxkOYgBARIdCgdmaWVsZDEwGAogASgFSAlSB2ZpZWxkMTCIAQESHQoHZmllbGQxMRgLIAEoBUgKUgdmaWVsZDExiAEBEh0KB2ZpZWxkMTIYDCABKAVIC1IHZmllbGQxMogBARIdCgdmaWVsZDEzGA0gASgFSAxSB2ZpZWxkMTOIAQESHQoHZmllbGQxNBgOIAEoBUgNUgdmaWVsZDE0iAEBEh0KB2ZpZWxkMTUYDyABKAVIDlIHZmllbGQxNYgBARIdCgdmaWVsZDE2GBAgASgFSA9SB2ZpZWxkMTaIAQESHQoHZmllbGQxNxgRIAEoBUgQUgdmaWVsZDE3iAEBEh0KB2ZpZWxkMTgYEiABKAVIEVIHZmllbGQxOIgBARIdCgdmaWVsZDE5GBMgASgFSBJSB2ZpZWxkMTmIAQESHQoHZmllbGQyMBgUIAEoBUgTUgdmaWVsZDIwiAEBEh0KB2ZpZWxkMjEYFSABKAVIFFIHZmllbGQyMYgBARIdCgdmaWVsZDIyGBYgASgFSBVSB2ZpZWxkMjKIAQESHQoHZmllbGQyMxgXIAEoBUgWUgdmaWVsZDIziAEBEh0KB2ZpZWxkMjQYGCABKAVIF1IHZmllbGQyNIgBARIdCgdmaWVsZDI1GBkgASgFSBhSB2ZpZWxkMjWIAQESHQoHZmllbGQyNhgaIAEoBUgZUgdmaWVsZDI2iAEBEh0KB2ZpZWxkMjcYGyABKAVIGlIHZmllbGQyN4gBARIdCgdmaWVsZDI4GBwgASgFSBtSB2ZpZWxkMjiIAQESHQoHZmllbGQyORgdIAEoBUgcUgdmaWVsZDI5iAEBEh0KB2ZpZWxkMzAYHiABKAVIHVIHZmllbGQzMIgBARIdCgdmaWVsZDMxGB8gASgFSB5SB2ZpZWxkMzGIAQESHQoHZmllbGQzMhggIAEoBUgfUgdmaWVsZDMyiAEBQgkKB19maWVsZDFCCQoHX2ZpZWxkMkIJCgdfZmllbGQzQgkKB19maWVsZDRCCQoHX2ZpZWxkNUIJCgdfZmllbGQ2QgkKB19maWVsZDdCCQoHX2ZpZWxkOEIJCgdfZmllbGQ5QgoKCF9maWVsZDEwQgoKCF9maWVsZDExQgoKCF9maWVsZDEyQgoKCF9maWVsZDEzQgoKCF9maWVsZDE0QgoKCF9maWVsZDE1QgoKCF9maWVsZDE2QgoKCF9maWVsZDE3QgoKCF9maWVsZDE4QgoKCF9maWVsZDE5QgoKCF9maWVsZDIwQgoKCF9maWVsZDIxQgoKCF9maWVsZDIyQgoKCF9maWVsZDIzQgoKCF9maWVsZDI0QgoKCF9maWVsZDI1QgoKCF9maWVsZDI2QgoKCF9maWVsZDI3QgoKCF9maWVsZDI4QgoKCF9maWVsZDI5QgoKCF9maWVsZDMwQgoKCF9maWVsZDMxQgoKCF9maWVsZDMyKlUKDE5lZ2F0aXZlRW51bRIWChJORUdBVElWRV9FTlVNX1pFUk8QABIWCglGaXZlQmVsb3cQ+///////////ARIVCghNaW51c09uZRD///////////8BKjYKDkRlcHJlY2F0ZWRFbnVtEhcKD0RFUFJFQ0FURURfWkVSTxAAGgIIARIHCgNvbmUQARoCGAFCHaoCGlVuaXRUZXN0Lklzc3Vlcy5UZXN0UHJvdG9zStVGCgcSBQcA7gEBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCo4CCgECEgMOABgaZiBJc3N1ZTogTm9uLSJHb29nbGUuUHJvdG9idWZmZXJzIiBuYW1lc3BhY2Ugd2lsbCBlbnN1cmUgdGhhdCBwcm90b2J1ZmZlcgogbGlicmFyeSB0eXBlcyBhcmUgcXVhbGlmaWVkCjKbASBUaGVzZSBwcm90byBkZXNjcmlwdG9ycyBoYXZlIGF0IG9uZSB0aW1lIGJlZW4gcmVwb3J0ZWQgYXMgYW4gaXNzdWUgb3IgZGVmZWN0LgogVGhleSBhcmUga2VwdCBoZXJlIHRvIHJlcGxpY2F0ZSB0aGUgaXNzdWUsIGFuZCBjb250aW51ZSB0byB2ZXJpZnkgdGhlIGZpeC4KCgkKAgMAEgMQACYKCAoBCBIDEgA3CgkKAgglEgMSADcKdgoCBAASBBYAGgEaaiBJc3N1ZSAzMDc6IHdoZW4gZ2VuZXJhdGluZyBkb3VibHktbmVzdGVkIHR5cGVzLCBhbnkgcmVmZXJlbmNlcwogc2hvdWxkIGJlIG9mIHRoZSBmb3JtIEEuVHlwZXMuQi5UeXBlcy5DLgoKCgoDBAABEgMWCBAKDAoEBAADABIEFwIZAwoMCgUEAAMAARIDFwoUCg0KBgQAAwADABIDGAQaCg4KBwQAAwADAAESAxgMFwqwBAoCBQASBDUAOQEymQEgT2xkIGlzc3VlIDEzOgogaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3Byb3RvYnVmLWNzaGFycC1wb3J0L2lzc3Vlcy9kZXRhaWw/aWQ9MTMgTmV3IGlzc3VlCiAzMDk6IGh0dHBzOi8vZ2l0aHViLmNvbS9wcm90b2NvbGJ1ZmZlcnMvcHJvdG9idWYvaXNzdWVzLzMwOQoyKyBtZXNzYWdlIEEgewogICAgb3B0aW9uYWwgaW50MzIgX0EgPSAxOwogfQoyKyBtZXNzYWdlIEIgewogICAgb3B0aW9uYWwgaW50MzIgQl8gPSAxOwogfQoyLiBtZXNzYWdlIEFCIHsKICAgICBvcHRpb25hbCBpbnQzMiBhX2IgPSAxOwogfQoy2gEgU2ltaWxhciBpc3N1ZSB3aXRoIG51bWVyaWMgbmFtZXMKIEphdmEgY29kZSBmYWlsZWQgdG9vLCBzbyBwcm9iYWJseSBiZXN0IGZvciB0aGlzIHRvIGJlIGEgcmVzdHJpY3Rpb24uCiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Byb3RvY29sYnVmZmVycy9wcm90b2J1Zi9pc3N1ZXMvMzA4CiBtZXNzYWdlIE51bWJlckZpZWxkIHsKICAgIG9wdGlvbmFsIGludDMyIF8wMSA9IDE7CiB9CjIhIGlzc3VlIDE5IC0gbmVnYXRpdmUgZW51bSB2YWx1ZXMKCgoKAwUAARIDNQURCgsKBAUAAgASAzYCGQoMCgUFAAIAARIDNgIUCgwKBQUAAgACEgM2FxgKCwoEBQACARIDNwIRCgwKBQUAAgEBEgM3AgsKDAoFBQACAQISAzcOEAoLCgQFAAICEgM4AhAKDAoFBQACAgESAzgCCgoMCgUFAAICAhIDOA0PCgoKAgQBEgQ7AD8BCgoKAwQBARIDOwgbCgsKBAQBAgASAzwCGQoMCgUEAQIABhIDPAIOCgwKBQQBAgABEgM8DxQKDAoFBAECAAMSAzwXGAoLCgQEAQIBEgM9AjQKDAoFBAECAQQSAz0CCgoMCgUEAQIBBhIDPQsXCgwKBQQBAgEBEgM9GB4KDAoFBAECAQMSAz0hIgoMCgUEAQIBCBIDPSMzCg0KBgQBAgEIAhIDPSQyCgsKBAQBAgISAz4COgoMCgUEAQICBBIDPgIKCgwKBQQBAgIGEgM+CxcKDAoFBAECAgESAz4YJQoMCgUEAQICAxIDPigpCgwKBQQBAgIIEgM+KjkKDQoGBAECAggCEgM+KzgKlwEKAgQCEgREAEYBMooBIElzc3VlIDIxOiBodHRwOi8vY29kZS5nb29nbGUuY29tL3AvcHJvdG9idWYtY3NoYXJwLXBvcnQvaXNzdWVzL2RldGFpbD9pZD0yMQogRGVjb3JhdGUgZmllbGRzIHdpdGggW2RlcHJlY2F0ZWQ9dHJ1ZV0gYXMgW1N5c3RlbS5PYnNvbGV0ZV0KCgoKAwQCARIDRAgXCgoKAwQCBxIDRQIbCgsKBAQCBwMSA0UCGwoKCgIFARIESABNAQoKCgMFAQESA0gFEwoKCgMFAQMSA0kCGwoLCgQFAQMDEgNJAhsKCwoEBQECABIDSwIqCgwKBQUBAgABEgNLAhEKDAoFBQECAAISA0sUFQoMCgUFAQIAAxIDSxYpCg0KBgUBAgADARIDSxcoCgsKBAUBAgESA0wCCgoMCgUFAQIBARIDTAIFCgwKBQUBAgECEgNMCAkKCgoCBAMSBE8AWAEKCgoDBAMBEgNPCB8KCwoEBAMCABIDUAIvCgwKBQQDAgAFEgNQAgcKDAoFBAMCAAESA1AIFgoMCgUEAwIAAxIDUBkaCgwKBQQDAgAIEgNQGy4KDQoGBAMCAAgDEgNQHC0KCwoEBAMCARIDUQI4CgwKBQQDAgEEEgNRAgoKDAoFBAMCAQUSA1ELEAoMCgUEAwIBARIDUREfCgwKBQQDAgEDEgNRIiMKDAoFBAMCAQgSA1EkNwoNCgYEAwIBCAMSA1ElNgoLCgQEAwICEgNTAjcKDAoFBAMCAgYSA1MCEQoMCgUEAwICARIDUxIeCgwKBQQDAgIDEgNTISIKDAoFBAMCAggSA1MjNgoNCgYEAwICCAMSA1MkNQoLCgQEAwIDEgNUAkAKDAoFBAMCAwQSA1QCCgoMCgUEAwIDBhIDVAsaCgwKBQQDAgMBEgNUGycKDAoFBAMCAwMSA1QqKwoMCgUEAwIDCBIDVCw/Cg0KBgQDAgMIAxIDVC0+CgsKBAQDAgQSA1YCMwoMCgUEAwIEBhIDVgIQCgwKBQQDAgQBEgNWERoKDAoFBAMCBAMSA1YdHgoMCgUEAwIECBIDVh8yCg0KBgQDAgQIAxIDViAxCgsKBAQDAgUSA1cCPAoMCgUEAwIFBBIDVwIKCgwKBQQDAgUGEgNXCxkKDAoFBAMCBQESA1caIwoMCgUEAwIFAxIDVyYnCgwKBQQDAgUIEgNXKDsKDQoGBAMCBQgDEgNXKToKWQoCBAQSBFsAXQEaTSBJc3N1ZSA0NTogaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3Byb3RvYnVmLWNzaGFycC1wb3J0L2lzc3Vlcy9kZXRhaWw/aWQ9NDUKCgoKAwQEARIDWwgRCgsKBAQEAgASA1wCEQoMCgUEBAIABRIDXAIHCgwKBQQEAgABEgNcCAwKDAoFBAQCAAMSA1wPEAoKCgIEBRIEXwBlAQoKCgMEBQESA18IFQovCgQEBQMAEgNhAhsaIiBGb3JjZSBhIG5lc3RlZCB0eXBlIGNhbGxlZCBUeXBlcwoKDAoFBAUDAAESA2EKGAoLCgQEBQIAEgNjAhIKDAoFBAUCAAUSA2MCBwoMCgUEBQIAARIDYwgNCgwKBQQFAgADEgNjEBEKCwoEBAUCARIDZAIXCgwKBQQFAgEFEgNkAgcKDAoFBAUCAQESA2QIEgoMCgUEBQIBAxIDZBUWCvMDCgIEBhIFZwCAAQEi5QMgVGhlc2UgZmllbGRzIGFyZSBkZWxpYmVyYXRlbHkgbm90IGRlY2xhcmVkIGluIG51bWVyaWMKIG9yZGVyLCBhbmQgdGhlIG9uZW9mIGZpZWxkcyBhcmVuJ3QgY29udGlndW91cyBlaXRoZXIuCiBUaGlzIGFsbG93cyBmb3IgcmVhc29uYWJseSByb2J1c3QgdGVzdHMgb2YgSlNPTiBvdXRwdXQKIG9yZGVyaW5nLgogVGVzdEZpZWxkT3JkZXJpbmdzIGluIHVuaXR0ZXN0X3Byb3RvMy5wcm90byBpcyBzaW1pbGFyLAogYnV0IGRvZXNuJ3QgaW5jbHVkZSBvbmVvZnMuCiBUT0RPOiBDb25zaWRlciBhZGRpbmcgb25lb2ZzIHRvIFRlc3RGaWVsZE9yZGVyaW5ncywgYWx0aG91Z2gKIHRoYXQgd2lsbCByZXF1aXJlIGZpeGluZyBvdGhlciB0ZXN0cyBpbiBtdWx0aXBsZSBwbGF0Zm9ybXMuCiBBbHRlcm5hdGl2ZWx5LCBjb25zaWRlciBqdXN0IGFkZGluZyB0aGlzIHRvCiB1bml0dGVzdF9wcm90bzMucHJvdG8gaWYgbXVsdGlwbGUgcGxhdGZvcm1zIHdhbnQgaXQuCgoKCgMEBgESA2cIHQoLCgQEBgIAEgNzAhgKDAoFBAYCAAUSA3MCBwoMCgUEBgIAARIDcwgTCgwKBQQGAgADEgNzFhcKDAoEBAYIABIEdQJ4AwoMCgUEBggAARIDdQgKCgsKBAQGAgESA3YEGQoMCgUEBgIBBRIDdgQKCgwKBQQGAgEBEgN2CxQKDAoFBAYCAQMSA3YXGAoLCgQEBgICEgN3BBcKDAoFBAYCAgUSA3cECQoMCgUEBgICARIDdwoSCgwKBQQGAgIDEgN3FRYKCwoEBAYCAxIDegIaCgwKBQQGAgMFEgN6AggKDAoFBAYCAwESA3oJFQoMCgUEBgIDAxIDehgZCgwKBAQGCAESBHwCfwMKDAoFBAYIAQESA3wICgoLCgQEBgIEEgN9BBcKDAoFBAYCBAUSA30ECQoMCgUEBgIEARIDfQoSCgwKBQQGAgQDEgN9FRYKCwoEBAYCBRIDfgQZCgwKBQQGAgUFEgN+BAoKDAoFBAYCBQESA34LFAoMCgUEBgIFAxIDfhcYCgwKAgQHEgaCAQCHAQEKCwoDBAcBEgSCAQgUCksKBAQHAgASBIQBAhIaPSBNZXNzYWdlIGZvciB0ZXN0aW5nIHRoZSBlZmZlY3RzIGZvciBvZiB0aGUganNvbl9uYW1lIG9wdGlvbgoKDQoFBAcCAAUSBIQBAggKDQoFBAcCAAESBIQBCQ0KDQoFBAcCAAMSBIQBEBEKDAoEBAcCARIEhQECLgoNCgUEBwIBBRIEhQECCAoNCgUEBwIBARIEhQEJFAoNCgUEBwIBAxIEhQEXGAoNCgUEBwIBCBIEhQEZLQoNCgUEBwIBChIEhQEaLAoNCgUEBwIBChIEhQEmLAoMCgQEBwICEgSGAQInCg0KBQQHAgIFEgSGAQIICg0KBQQHAgIBEgSGAQkNCg0KBQQHAgIDEgSGARARCg0KBQQHAgIIEgSGARImCg0KBQQHAgIKEgSGARMlCg0KBQQHAgIKEgSGAR8lCpkBCgIECBIGjAEAlgEBGooBIElzc3VlIDMyMDA6IFdoZW4gbWVyZ2luZyB0d28gbWVzc2FnZXMgd2hpY2ggdXNlIHRoZSBzYW1lCiBvbmVvZiBjYXNlLCB3aGljaCBpcyBpdHNlbGYgYSBtZXNzYWdlIHR5cGUsIHRoZSBzdWJtZXNzYWdlcyBzaG91bGQKIGJlIG1lcmdlZC4KCgsKAwQIARIEjAEIFAoOCgQECAMAEgaNAQKQAQMKDQoFBAgDAAESBI0BChAKDgoGBAgDAAIAEgSOAQQQCg8KBwQIAwACAAUSBI4BBAkKDwoHBAgDAAIAARIEjgEKCwoPCgcECAMAAgADEgSOAQ4PCg4KBgQIAwACARIEjwEEEAoPCgcECAMAAgEFEgSPAQQJCg8KBwQIAwACAQESBI8BCgsKDwoHBAgDAAIBAxIEjwEODwoOCgQECAgAEgaSAQKVAQMKDQoFBAgIAAESBJIBCA0KDAoEBAgCABIEkwEEFAoNCgUECAIABRIEkwEECgoNCgUECAIAARIEkwELDwoNCgUECAIAAxIEkwESEwoMCgQECAIBEgSUAQQWCg0KBQQIAgEGEgSUAQQKCg0KBQQIAgEBEgSUAQsRCg0KBQQIAgEDEgSUARQVCgwKAgQJEgaYAQCdAQEKCwoDBAkBEgSYAQgeCg4KBAQJCAASBpkBApwBAwoNCgUECQgAARIEmQEIDQoMCgQECQIAEgSaAQQcCg0KBQQJAgAFEgSaAQQKCg0KBQQJAgABEgSaAQsXCg0KBQQJAgADEgSaARobCgwKBAQJAgESBJsBBC0KDQoFBAkCAQYSBJsBBB0KDQoFBAkCAQESBJsBHigKDQoFBAkCAQMSBJsBKywKDAoCBAoSBp8BAKEBAQoLCgMECgESBJ8BCBsKDAoEBAoCABIEoAECKwoNCgUECgIABhIEoAECGwoNCgUECgIAARIEoAEcJgoNCgUECgIAAxIEoAEpKgoMCgIECxIGowEApgEBCgsKAwQLARIEowEIHwoMCgQECwIAEgSkAQIbCg0KBQQLAgAFEgSkAQIICg0KBQQLAgABEgSkAQkWCg0KBQQLAgADEgSkARkaCgwKBAQLAgESBKUBAiUKDQoFBAsCAQQSBKUBAgoKDQoFBAsCAQUSBKUBCxEKDQoFBAsCAQESBKUBEiAKDQoFBAsCAQMSBKUBIyQKDAoCBAwSBqgBAK0BAQoLCgMEDAESBKgBCBoKDgoEBAwIABIGqQECrAEDCg0KBQQMCAABEgSpAQgMCgwKBAQMAgASBKoBBBEKDQoFBAwCAAUSBKoBBAoKDQoFBAwCAAESBKoBCwwKDQoFBAwCAAMSBKoBDxAKDAoEBAwCARIEqwEEFAoNCgUEDAIBBRIEqwEECgoNCgUEDAIBARIEqwELDwoNCgUEDAIBAxIEqwESEwoMCgIEDRIGrwEAtAEBCgsKAwQNARIErwEIGQoOCgQEDQgAEgawAQKzAQMKDQoFBA0IAAESBLABCAwKDAoEBA0CABIEsQEEEQoNCgUEDQIABRIEsQEECgoNCgUEDQIAARIEsQELDAoNCgUEDQIAAxIEsQEPEAoMCgQEDQIBEgSyAQQRCg0KBQQNAgEFEgSyAQQKCg0KBQQNAgEBEgSyAQsMCg0KBQQNAgEDEgSyAQ8QChoKAgQOEga3AQDEAQEaDCBJc3N1ZSA4ODEwCgoLCgMEDgESBLcBCCEKDAoEBA4CABIEuAECKAoNCgUEDgIABRIEuAECBwoNCgUEDgIAARIEuAEIIwoNCgUEDgIAAxIEuAEmJwoMCgQEDgIBEgS5AQISCg0KBQQOAgEFEgS5AQIHCg0KBQQOAgEBEgS5AQgNCg0KBQQOAgEDEgS5ARARCgwKBAQOAgISBLoBAhcKDQoFBA4CAgUSBLoBAgcKDQoFBA4CAgESBLoBCBIKDQoFBA4CAgMSBLoBFRYKDAoEBA4CAxIEuwECEwoNCgUEDgIDBRIEuwECBwoNCgUEDgIDARIEuwEIDgoNCgUEDgIDAxIEuwEREgoMCgQEDgIEEgS8AQIWCg0KBQQOAgQFEgS8AQIHCg0KBQQOAgQBEgS8AQgRCg0KBQQOAgQDEgS8ARQVCgwKBAQOAgUSBL0BAhoKDQoFBA4CBQUSBL0BAgcKDQoFBA4CBQESBL0BCBUKDQoFBA4CBQMSBL0BGBkKDAoEBA4CBhIEvgECFQoNCgUEDgIGBRIEvgECBwoNCgUEDgIGARIEvgEIEAoNCgUEDgIGAxIEvgETFAoMCgQEDgIHEgS/AQISCg0KBQQOAgcFEgS/AQIHCg0KBQQOAgcBEgS/AQgNCg0KBQQOAgcDEgS/ARARCgwKBAQOAggSBMABAhsKDQoFBA4CCAUSBMABAgcKDQoFBA4CCAESBMABCBYKDQoFBA4CCAMSBMABGRoKDAoEBA4CCRIEwQECGAoNCgUEDgIJBRIEwQECBwoNCgUEDgIJARIEwQEIEgoNCgUEDgIJAxIEwQEVFwoMCgQEDgIKEgTCAQIdCg0KBQQOAgoFEgTCAQIHCg0KBQQOAgoBEgTCAQgXCg0KBQQOAgoDEgTCARocCgwKBAQOAgsSBMMBAhQKDQoFBA4CCwUSBMMBAgcKDQoFBA4CCwESBMMBCA4KDQoFBA4CCwMSBMMBERMKDAoCBA8SBsYBAMoBAQoLCgMEDwESBMYBCBkKDAoEBA8CABIExwECIAoNCgUEDwIABRIExwECBwoNCgUEDwIAARIExwEICQoNCgUEDwIAAxIExwEMDQoNCgUEDwIACBIExwEOHwoNCgUEDwIAChIExwEPHgoNCgUEDwIAChIExwEbHgoMCgQEDwIBEgTIAQIgCg0KBQQPAgEFEgTIAQIHCg0KBQQPAgEBEgTIAQgJCg0KBQQPAgEDEgTIAQwNCg0KBQQPAgEIEgTIAQ4fCg0KBQQPAgEKEgTIAQ8eCg0KBQQPAgEKEgTIARseCgwKBAQPAgISBMkBAiAKDQoFBA8CAgUSBMkBAgcKDQoFBA8CAgESBMkBCAkKDQoFBA8CAgMSBMkBDA0KDQoFBA8CAggSBMkBDh8KDQoFBA8CAgoSBMkBDx4KDQoFBA8CAgoSBMkBGx4KGwoCBBASBs0BAO4BARoNIElzc3VlIDI2MzkxCgoLCgMEEAESBM0BCBgKDAoEBBACABIEzgECHAoNCgUEEAIABBIEzgECCgoNCgUEEAIABRIEzgELEAoNCgUEEAIAARIEzgERFwoNCgUEEAIAAxIEzgEaGwoMCgQEEAIBEgTPAQIcCg0KBQQQAgEEEgTPAQIKCg0KBQQQAgEFEgTPAQsQCg0KBQQQAgEBEgTPAREXCg0KBQQQAgEDEgTPARobCgwKBAQQAgISBNABAhwKDQoFBBACAgQSBNABAgoKDQoFBBACAgUSBNABCxAKDQoFBBACAgESBNABERcKDQoFBBACAgMSBNABGhsKDAoEBBACAxIE0QECHAoNCgUEEAIDBBIE0QECCgoNCgUEEAIDBRIE0QELEAoNCgUEEAIDARIE0QERFwoNCgUEEAIDAxIE0QEaGwoMCgQEEAIEEgTSAQIcCg0KBQQQAgQEEgTSAQIKCg0KBQQQAgQFEgTSAQsQCg0KBQQQAgQBEgTSAREXCg0KBQQQAgQDEgTSARobCgwKBAQQAgUSBNMBAhwKDQoFBBACBQQSBNMBAgoKDQoFBBACBQUSBNMBCxAKDQoFBBACBQESBNMBERcKDQoFBBACBQMSBNMBGhsKDAoEBBACBhIE1AECHAoNCgUEEAIGBBIE1AECCgoNCgUEEAIGBRIE1AELEAoNCgUEEAIGARIE1AERFwoNCgUEEAIGAxIE1AEaGwoMCgQEEAIHEgTVAQIcCg0KBQQQAgcEEgTVAQIKCg0KBQQQAgcFEgTVAQsQCg0KBQQQAgcBEgTVAREXCg0KBQQQAgcDEgTVARobCgwKBAQQAggSBNYBAhwKDQoFBBACCAQSBNYBAgoKDQoFBBACCAUSBNYBCxAKDQoFBBACCAESBNYBERcKDQoFBBACCAMSBNYBGhsKDAoEBBACCRIE1wECHgoNCgUEEAIJBBIE1wECCgoNCgUEEAIJBRIE1wELEAoNCgUEEAIJARIE1wERGAoNCgUEEAIJAxIE1wEbHQoMCgQEEAIKEgTYAQIeCg0KBQQQAgoEEgTYAQIKCg0KBQQQAgoFEgTYAQsQCg0KBQQQAgoBEgTYAREYCg0KBQQQAgoDEgTYARsdCgwKBAQQAgsSBNkBAh4KDQoFBBACCwQSBNkBAgoKDQoFBBACCwUSBNkBCxAKDQoFBBACCwESBNkBERgKDQoFBBACCwMSBNkBGx0KDAoEBBACDBIE2gECHgoNCgUEEAIMBBIE2gECCgoNCgUEEAIMBRIE2gELEAoNCgUEEAIMARIE2gERGAoNCgUEEAIMAxIE2gEbHQoMCgQEEAINEgTbAQIeCg0KBQQQAg0EEgTbAQIKCg0KBQQQAg0FEgTbAQsQCg0KBQQQAg0BEgTbAREYCg0KBQQQAg0DEgTbARsdCgwKBAQQAg4SBNwBAh4KDQoFBBACDgQSBNwBAgoKDQoFBBACDgUSBNwBCxAKDQoFBBACDgESBNwBERgKDQoFBBACDgMSBNwBGx0KDAoEBBACDxIE3QECHgoNCgUEEAIPBBIE3QECCgoNCgUEEAIPBRIE3QELEAoNCgUEEAIPARIE3QERGAoNCgUEEAIPAxIE3QEbHQoMCgQEEAIQEgTeAQIeCg0KBQQQAhAEEgTeAQIKCg0KBQQQAhAFEgTeAQsQCg0KBQQQAhABEgTeAREYCg0KBQQQAhADEgTeARsdCgwKBAQQAhESBN8BAh4KDQoFBBACEQQSBN8BAgoKDQoFBBACEQUSBN8BCxAKDQoFBBACEQESBN8BERgKDQoFBBACEQMSBN8BGx0KDAoEBBACEhIE4AECHgoNCgUEEAISBBIE4AECCgoNCgUEEAISBRIE4AELEAoNCgUEEAISARIE4AERGAoNCgUEEAISAxIE4AEbHQoMCgQEEAITEgThAQIeCg0KBQQQAhMEEgThAQIKCg0KBQQQAhMFEgThAQsQCg0KBQQQAhMBEgThAREYCg0KBQQQAhMDEgThARsdCgwKBAQQAhQSBOIBAh4KDQoFBBACFAQSBOIBAgoKDQoFBBACFAUSBOIBCxAKDQoFBBACFAESBOIBERgKDQoFBBACFAMSBOIBGx0KDAoEBBACFRIE4wECHgoNCgUEEAIVBBIE4wECCgoNCgUEEAIVBRIE4wELEAoNCgUEEAIVARIE4wERGAoNCgUEEAIVAxIE4wEbHQoMCgQEEAIWEgTkAQIeCg0KBQQQAhYEEgTkAQIKCg0KBQQQAhYFEgTkAQsQCg0KBQQQAhYBEgTkAREYCg0KBQQQAhYDEgTkARsdCgwKBAQQAhcSBOUBAh4KDQoFBBACFwQSBOUBAgoKDQoFBBACFwUSBOUBCxAKDQoFBBACFwESBOUBERgKDQoFBBACFwMSBOUBGx0KDAoEBBACGBIE5gECHgoNCgUEEAIYBBIE5gECCgoNCgUEEAIYBRIE5gELEAoNCgUEEAIYARIE5gERGAoNCgUEEAIYAxIE5gEbHQoMCgQEEAIZEgTnAQIeCg0KBQQQAhkEEgTnAQIKCg0KBQQQAhkFEgTnAQsQCg0KBQQQAhkBEgTnAREYCg0KBQQQAhkDEgTnARsdCgwKBAQQAhoSBOgBAh4KDQoFBBACGgQSBOgBAgoKDQoFBBACGgUSBOgBCxAKDQoFBBACGgESBOgBERgKDQoFBBACGgMSBOgBGx0KDAoEBBACGxIE6QECHgoNCgUEEAIbBBIE6QECCgoNCgUEEAIbBRIE6QELEAoNCgUEEAIbARIE6QERGAoNCgUEEAIbAxIE6QEbHQoMCgQEEAIcEgTqAQIeCg0KBQQQAhwEEgTqAQIKCg0KBQQQAhwFEgTqAQsQCg0KBQQQAhwBEgTqAREYCg0KBQQQAhwDEgTqARsdCgwKBAQQAh0SBOsBAh4KDQoFBBACHQQSBOsBAgoKDQoFBBACHQUSBOsBCxAKDQoFBBACHQESBOsBERgKDQoFBBACHQMSBOsBGx0KDAoEBBACHhIE7AECHgoNCgUEEAIeBBIE7AECCgoNCgUEEAIeBRIE7AELEAoNCgUEEAIeARIE7AERGAoNCgUEEAIeAxIE7AEbHQoMCgQEEAIfEgTtAQIeCg0KBQQQAh8EEgTtAQIKCg0KBQQQAh8FEgTtAQsQCg0KBQQQAh8BEgTtAREYCg0KBQQQAh8DEgTtARsdYgZwcm90bzMKgeIECiBnb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIlsKEUZpbGVEZXNjcmlwdG9yU2V0EjgKBGZpbGUYASADKAsyJC5nb29nbGUucHJvdG9idWYuRmlsZURlc2NyaXB0b3JQcm90b1IEZmlsZSoMCIDsyv8BEIHsyv8BIsUFChNGaWxlRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSGAoHcGFja2FnZRgCIAEoCVIHcGFja2FnZRIeCgpkZXBlbmRlbmN5GAMgAygJUgpkZXBlbmRlbmN5EisKEXB1YmxpY19kZXBlbmRlbmN5GAogAygFUhBwdWJsaWNEZXBlbmRlbmN5EicKD3dlYWtfZGVwZW5kZW5jeRgLIAMoBVIOd2Vha0RlcGVuZGVuY3kSKwoRb3B0aW9uX2RlcGVuZGVuY3kYDyADKAlSEG9wdGlvbkRlcGVuZGVuY3kSQwoMbWVzc2FnZV90eXBlGAQgAygLMiAuZ29vZ2xlLnByb3RvYnVmLkRlc2NyaXB0b3JQcm90b1ILbWVzc2FnZVR5cGUSQQoJZW51bV90eXBlGAUgAygLMiQuZ29vZ2xlLnByb3RvYnVmLkVudW1EZXNjcmlwdG9yUHJvdG9SCGVudW1UeXBlEkEKB3NlcnZpY2UYBiADKAsyJy5nb29nbGUucHJvdG9idWYuU2VydmljZURlc2NyaXB0b3JQcm90b1IHc2VydmljZRJDCglleHRlbnNpb24YByADKAsyJS5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9yUHJvdG9SCWV4dGVuc2lvbhI2CgdvcHRpb25zGAggASgLMhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zUgdvcHRpb25zEkkKEHNvdXJjZV9jb2RlX2luZm8YCSABKAsyHy5nb29nbGUucHJvdG9idWYuU291cmNlQ29kZUluZm9SDnNvdXJjZUNvZGVJbmZvEhYKBnN5bnRheBgMIAEoCVIGc3ludGF4EjIKB2VkaXRpb24YDiABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIHZWRpdGlvbiL8BgoPRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSOwoFZmllbGQYAiADKAsyJS5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9yUHJvdG9SBWZpZWxkEkMKCWV4dGVuc2lvbhgGIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IJZXh0ZW5zaW9uEkEKC25lc3RlZF90eXBlGAMgAygLMiAuZ29vZ2xlLnByb3RvYnVmLkRlc2NyaXB0b3JQcm90b1IKbmVzdGVkVHlwZRJBCgllbnVtX3R5cGUYBCADKAsyJC5nb29nbGUucHJvdG9idWYuRW51bURlc2NyaXB0b3JQcm90b1IIZW51bVR5cGUSWAoPZXh0ZW5zaW9uX3JhbmdlGAUgAygLMi8uZ29vZ2xlLnByb3RvYnVmLkRlc2NyaXB0b3JQcm90by5FeHRlbnNpb25SYW5nZVIOZXh0ZW5zaW9uUmFuZ2USRAoKb25lb2ZfZGVjbBgIIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5PbmVvZkRlc2NyaXB0b3JQcm90b1IJb25lb2ZEZWNsEjkKB29wdGlvbnMYByABKAsyHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnNSB29wdGlvbnMSVQoOcmVzZXJ2ZWRfcmFuZ2UYCSADKAsyLi5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvLlJlc2VydmVkUmFuZ2VSDXJlc2VydmVkUmFuZ2USIwoNcmVzZXJ2ZWRfbmFtZRgKIAMoCVIMcmVzZXJ2ZWROYW1lEkEKCnZpc2liaWxpdHkYCyABKA4yIS5nb29nbGUucHJvdG9idWYuU3ltYm9sVmlzaWJpbGl0eVIKdmlzaWJpbGl0eRp6Cg5FeHRlbnNpb25SYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQSQAoHb3B0aW9ucxgDIAEoCzImLmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnNSB29wdGlvbnMaNwoNUmVzZXJ2ZWRSYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQi1AQKFUV4dGVuc2lvblJhbmdlT3B0aW9ucxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbhJZCgtkZWNsYXJhdGlvbhgCIAMoCzIyLmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnMuRGVjbGFyYXRpb25CA4gBAlILZGVjbGFyYXRpb24SNwoIZmVhdHVyZXMYMiABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSbQoMdmVyaWZpY2F0aW9uGAMgASgOMjguZ29vZ2xlLnByb3RvYnVmLkV4dGVuc2lvblJhbmdlT3B0aW9ucy5WZXJpZmljYXRpb25TdGF0ZToKVU5WRVJJRklFREIDiAECUgx2ZXJpZmljYXRpb24alAEKC0RlY2xhcmF0aW9uEhYKBm51bWJlchgBIAEoBVIGbnVtYmVyEhsKCWZ1bGxfbmFtZRgCIAEoCVIIZnVsbE5hbWUSEgoEdHlwZRgDIAEoCVIEdHlwZRIaCghyZXNlcnZlZBgFIAEoCFIIcmVzZXJ2ZWQSGgoIcmVwZWF0ZWQYBiABKAhSCHJlcGVhdGVkSgQIBBAFIjQKEVZlcmlmaWNhdGlvblN0YXRlEg8KC0RFQ0xBUkFUSU9OEAASDgoKVU5WRVJJRklFRBABKgYI3gcQ5wcqCQjoBxCAgICAAiLBBgoURmllbGREZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRIWCgZudW1iZXIYAyABKAVSBm51bWJlchJBCgVsYWJlbBgEIAEoDjIrLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90by5MYWJlbFIFbGFiZWwSPgoEdHlwZRgFIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90by5UeXBlUgR0eXBlEhsKCXR5cGVfbmFtZRgGIAEoCVIIdHlwZU5hbWUSGgoIZXh0ZW5kZWUYAiABKAlSCGV4dGVuZGVlEiMKDWRlZmF1bHRfdmFsdWUYByABKAlSDGRlZmF1bHRWYWx1ZRIfCgtvbmVvZl9pbmRleBgJIAEoBVIKb25lb2ZJbmRleBIbCglqc29uX25hbWUYCiABKAlSCGpzb25OYW1lEjcKB29wdGlvbnMYCCABKAsyHS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zUgdvcHRpb25zEicKD3Byb3RvM19vcHRpb25hbBgRIAEoCFIOcHJvdG8zT3B0aW9uYWwitgIKBFR5cGUSDwoLVFlQRV9ET1VCTEUQARIOCgpUWVBFX0ZMT0FUEAISDgoKVFlQRV9JTlQ2NBADEg8KC1RZUEVfVUlOVDY0EAQSDgoKVFlQRV9JTlQzMhAFEhAKDFRZUEVfRklYRUQ2NBAGEhAKDFRZUEVfRklYRUQzMhAHEg0KCVRZUEVfQk9PTBAIEg8KC1RZUEVfU1RSSU5HEAkSDgoKVFlQRV9HUk9VUBAKEhAKDFRZUEVfTUVTU0FHRRALEg4KClRZUEVfQllURVMQDBIPCgtUWVBFX1VJTlQzMhANEg0KCVRZUEVfRU5VTRAOEhEKDVRZUEVfU0ZJWEVEMzIQDxIRCg1UWVBFX1NGSVhFRDY0EBASDwoLVFlQRV9TSU5UMzIQERIPCgtUWVBFX1NJTlQ2NBASIkMKBUxhYmVsEhIKDkxBQkVMX09QVElPTkFMEAESEgoOTEFCRUxfUkVQRUFURUQQAxISCg5MQUJFTF9SRVFVSVJFRBACImMKFE9uZW9mRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSNwoHb3B0aW9ucxgCIAEoCzIdLmdvb2dsZS5wcm90b2J1Zi5PbmVvZk9wdGlvbnNSB29wdGlvbnMipgMKE0VudW1EZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI/CgV2YWx1ZRgCIAMoCzIpLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVEZXNjcmlwdG9yUHJvdG9SBXZhbHVlEjYKB29wdGlvbnMYAyABKAsyHC5nb29nbGUucHJvdG9idWYuRW51bU9wdGlvbnNSB29wdGlvbnMSXQoOcmVzZXJ2ZWRfcmFuZ2UYBCADKAsyNi5nb29nbGUucHJvdG9idWYuRW51bURlc2NyaXB0b3JQcm90by5FbnVtUmVzZXJ2ZWRSYW5nZVINcmVzZXJ2ZWRSYW5nZRIjCg1yZXNlcnZlZF9uYW1lGAUgAygJUgxyZXNlcnZlZE5hbWUSQQoKdmlzaWJpbGl0eRgGIAEoDjIhLmdvb2dsZS5wcm90b2J1Zi5TeW1ib2xWaXNpYmlsaXR5Ugp2aXNpYmlsaXR5GjsKEUVudW1SZXNlcnZlZFJhbmdlEhQKBXN0YXJ0GAEgASgFUgVzdGFydBIQCgNlbmQYAiABKAVSA2VuZCKDAQoYRW51bVZhbHVlRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSFgoGbnVtYmVyGAIgASgFUgZudW1iZXISOwoHb3B0aW9ucxgDIAEoCzIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zUgdvcHRpb25zIrUBChZTZXJ2aWNlRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSPgoGbWV0aG9kGAIgAygLMiYuZ29vZ2xlLnByb3RvYnVmLk1ldGhvZERlc2NyaXB0b3JQcm90b1IGbWV0aG9kEjkKB29wdGlvbnMYAyABKAsyHy5nb29nbGUucHJvdG9idWYuU2VydmljZU9wdGlvbnNSB29wdGlvbnNKBAgEEAVSBnN0cmVhbSKJAgoVTWV0aG9kRGVzY3JpcHRvclByb3RvEhIKBG5hbWUYASABKAlSBG5hbWUSHQoKaW5wdXRfdHlwZRgCIAEoCVIJaW5wdXRUeXBlEh8KC291dHB1dF90eXBlGAMgASgJUgpvdXRwdXRUeXBlEjgKB29wdGlvbnMYBCABKAsyHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9uc1IHb3B0aW9ucxIwChBjbGllbnRfc3RyZWFtaW5nGAUgASgIOgVmYWxzZVIPY2xpZW50U3RyZWFtaW5nEjAKEHNlcnZlcl9zdHJlYW1pbmcYBiABKAg6BWZhbHNlUg9zZXJ2ZXJTdHJlYW1pbmcijAwKC0ZpbGVPcHRpb25zEiEKDGphdmFfcGFja2FnZRgBIAEoCVILamF2YVBhY2thZ2USMAoUamF2YV9vdXRlcl9jbGFzc25hbWUYCCABKAlSEmphdmFPdXRlckNsYXNzbmFtZRL5AQoTamF2YV9tdWx0aXBsZV9maWxlcxgKIAEoCDoFZmFsc2VCwQGyAb0BCOYHIOkHKrQBVGhpcyBiZWhhdmlvciBpcyBlbmFibGVkIGJ5IGRlZmF1bHQgaW4gZWRpdGlvbnMgMjAyNCBhbmQgYWJvdmUuIFRvIGRpc2FibGUgaXQsIHlvdSBjYW4gc2V0IGBmZWF0dXJlcy4ocGIuamF2YSkubmVzdF9pbl9maWxlX2NsYXNzID0gWUVTYCBvbiBpbmRpdmlkdWFsIG1lc3NhZ2VzLCBlbnVtcywgb3Igc2VydmljZXMuUhFqYXZhTXVsdGlwbGVGaWxlcxJECh1qYXZhX2dlbmVyYXRlX2VxdWFsc19hbmRfaGFzaBgUIAEoCEICGAFSGWphdmFHZW5lcmF0ZUVxdWFsc0FuZEhhc2gSOgoWamF2YV9zdHJpbmdfY2hlY2tfdXRmOBgbIAEoCDoFZmFsc2VSE2phdmFTdHJpbmdDaGVja1V0ZjgSUwoMb3B0aW1pemVfZm9yGAkgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zLk9wdGltaXplTW9kZToFU1BFRURSC29wdGltaXplRm9yEh0KCmdvX3BhY2thZ2UYCyABKAlSCWdvUGFja2FnZRI1ChNjY19nZW5lcmljX3NlcnZpY2VzGBAgASgIOgVmYWxzZVIRY2NHZW5lcmljU2VydmljZXMSOQoVamF2YV9nZW5lcmljX3NlcnZpY2VzGBEgASgIOgVmYWxzZVITamF2YUdlbmVyaWNTZXJ2aWNlcxI1ChNweV9nZW5lcmljX3NlcnZpY2VzGBIgASgIOgVmYWxzZVIRcHlHZW5lcmljU2VydmljZXMSJQoKZGVwcmVjYXRlZBgXIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSvwEKEGNjX2VuYWJsZV9hcmVuYXMYHyABKAg6BHRydWVCjgGyAYoBIOoHKoQBY2NfZW5hYmxlX2FyZW5hcyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQgaW4gZXZlcnkgZWRpdGlvbiBhbmQgb3ZlcnJpZGVzIGFyZSBpZ25vcmVkLlRoaXMgb3B0aW9uIGlzIHJlbW92ZWQgaW4gZWRpdGlvbnMgMjAyNiBhbmQgYWJvdmUuUg5jY0VuYWJsZUFyZW5hcxIqChFvYmpjX2NsYXNzX3ByZWZpeBgkIAEoCVIPb2JqY0NsYXNzUHJlZml4EikKEGNzaGFycF9uYW1lc3BhY2UYJSABKAlSD2NzaGFycE5hbWVzcGFjZRIhCgxzd2lmdF9wcmVmaXgYJyABKAlSC3N3aWZ0UHJlZml4EigKEHBocF9jbGFzc19wcmVmaXgYKCABKAlSDnBocENsYXNzUHJlZml4EiMKDXBocF9uYW1lc3BhY2UYKSABKAlSDHBocE5hbWVzcGFjZRI0ChZwaHBfbWV0YWRhdGFfbmFtZXNwYWNlGCwgASgJUhRwaHBNZXRhZGF0YU5hbWVzcGFjZRIhCgxydWJ5X3BhY2thZ2UYLSABKAlSC3J1YnlQYWNrYWdlEjcKCGZlYXR1cmVzGDIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uIjoKDE9wdGltaXplTW9kZRIJCgVTUEVFRBABEg0KCUNPREVfU0laRRACEhAKDExJVEVfUlVOVElNRRADKgYI3gcQ5wcqCQjoBxCAgICAAkoECCoQK0oECCYQJ1IUcGhwX2dlbmVyaWNfc2VydmljZXMi/AMKDk1lc3NhZ2VPcHRpb25zEjwKF21lc3NhZ2Vfc2V0X3dpcmVfZm9ybWF0GAEgASgIOgVmYWxzZVIUbWVzc2FnZVNldFdpcmVGb3JtYXQSTAofbm9fc3RhbmRhcmRfZGVzY3JpcHRvcl9hY2Nlc3NvchgCIAEoCDoFZmFsc2VSHG5vU3RhbmRhcmREZXNjcmlwdG9yQWNjZXNzb3ISJQoKZGVwcmVjYXRlZBgDIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSGwoJbWFwX2VudHJ5GAcgASgIUghtYXBFbnRyeRJWCiZkZXByZWNhdGVkX2xlZ2FjeV9qc29uX2ZpZWxkX2NvbmZsaWN0cxgLIAEoCEICGAFSImRlcHJlY2F0ZWRMZWdhY3lKc29uRmllbGRDb25mbGljdHMSNwoIZmVhdHVyZXMYDCABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24qBgjeBxDnByoJCOgHEICAgIACSgQIBBAFSgQIBRAGSgQIBhAHSgQICBAJSgQICRAKIs4NCgxGaWVsZE9wdGlvbnMSQQoFY3R5cGUYASABKA4yIy5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLkNUeXBlOgZTVFJJTkdSBWN0eXBlEhYKBnBhY2tlZBgCIAEoCFIGcGFja2VkEkcKBmpzdHlwZRgGIAEoDjIkLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuSlNUeXBlOglKU19OT1JNQUxSBmpzdHlwZRIZCgRsYXp5GAUgASgIOgVmYWxzZVIEbGF6eRIuCg91bnZlcmlmaWVkX2xhenkYDyABKAg6BWZhbHNlUg51bnZlcmlmaWVkTGF6eRIlCgpkZXByZWNhdGVkGAMgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBIdCgR3ZWFrGAogASgIOgVmYWxzZUICGAFSBHdlYWsSKAoMZGVidWdfcmVkYWN0GBAgASgIOgVmYWxzZVILZGVidWdSZWRhY3QSSwoJcmV0ZW50aW9uGBEgASgOMi0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5PcHRpb25SZXRlbnRpb25SCXJldGVudGlvbhJICgd0YXJnZXRzGBMgAygOMi4uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5PcHRpb25UYXJnZXRUeXBlUgd0YXJnZXRzElcKEGVkaXRpb25fZGVmYXVsdHMYFCADKAsyLC5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLkVkaXRpb25EZWZhdWx0Ug9lZGl0aW9uRGVmYXVsdHMSNwoIZmVhdHVyZXMYFSABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSVQoPZmVhdHVyZV9zdXBwb3J0GBYgASgLMiwuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5GZWF0dXJlU3VwcG9ydFIOZmVhdHVyZVN1cHBvcnQSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24aWgoORWRpdGlvbkRlZmF1bHQSMgoHZWRpdGlvbhgDIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUgdlZGl0aW9uEhQKBXZhbHVlGAIgASgJUgV2YWx1ZRq7AgoORmVhdHVyZVN1cHBvcnQSRwoSZWRpdGlvbl9pbnRyb2R1Y2VkGAEgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SEWVkaXRpb25JbnRyb2R1Y2VkEkcKEmVkaXRpb25fZGVwcmVjYXRlZBgCIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUhFlZGl0aW9uRGVwcmVjYXRlZBIvChNkZXByZWNhdGlvbl93YXJuaW5nGAMgASgJUhJkZXByZWNhdGlvbldhcm5pbmcSQQoPZWRpdGlvbl9yZW1vdmVkGAQgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SDmVkaXRpb25SZW1vdmVkEiMKDXJlbW92YWxfZXJyb3IYBSABKAlSDHJlbW92YWxFcnJvciIvCgVDVHlwZRIKCgZTVFJJTkcQABIICgRDT1JEEAESEAoMU1RSSU5HX1BJRUNFEAIiNQoGSlNUeXBlEg0KCUpTX05PUk1BTBAAEg0KCUpTX1NUUklORxABEg0KCUpTX05VTUJFUhACIlUKD09wdGlvblJldGVudGlvbhIVChFSRVRFTlRJT05fVU5LTk9XThAAEhUKEVJFVEVOVElPTl9SVU5USU1FEAESFAoQUkVURU5USU9OX1NPVVJDRRACIowCChBPcHRpb25UYXJnZXRUeXBlEhcKE1RBUkdFVF9UWVBFX1VOS05PV04QABIUChBUQVJHRVRfVFlQRV9GSUxFEAESHwobVEFSR0VUX1RZUEVfRVhURU5TSU9OX1JBTkdFEAISFwoTVEFSR0VUX1RZUEVfTUVTU0FHRRADEhUKEVRBUkdFVF9UWVBFX0ZJRUxEEAQSFQoRVEFSR0VUX1RZUEVfT05FT0YQBRIUChBUQVJHRVRfVFlQRV9FTlVNEAYSGgoWVEFSR0VUX1RZUEVfRU5VTV9FTlRSWRAHEhcKE1RBUkdFVF9UWVBFX1NFUlZJQ0UQCBIWChJUQVJHRVRfVFlQRV9NRVRIT0QQCSoGCN4HEOcHKgkI6AcQgICAgAJKBAgEEAVKBAgSEBMitAEKDE9uZW9mT3B0aW9ucxI3CghmZWF0dXJlcxgBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioGCN4HEOcHKgkI6AcQgICAgAIi2QIKC0VudW1PcHRpb25zEh8KC2FsbG93X2FsaWFzGAIgASgIUgphbGxvd0FsaWFzEiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkElYKJmRlcHJlY2F0ZWRfbGVnYWN5X2pzb25fZmllbGRfY29uZmxpY3RzGAYgASgIQgIYAVIiZGVwcmVjYXRlZExlZ2FjeUpzb25GaWVsZENvbmZsaWN0cxI3CghmZWF0dXJlcxgHIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioGCN4HEOcHKgkI6AcQgICAgAJKBAgFEAYi4AIKEEVudW1WYWx1ZU9wdGlvbnMSJQoKZGVwcmVjYXRlZBgBIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSNwoIZmVhdHVyZXMYAiABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFIIZmVhdHVyZXMSKAoMZGVidWdfcmVkYWN0GAMgASgIOgVmYWxzZVILZGVidWdSZWRhY3QSVQoPZmVhdHVyZV9zdXBwb3J0GAQgASgLMiwuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5GZWF0dXJlU3VwcG9ydFIOZmVhdHVyZVN1cHBvcnQSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24qBgjeBxDnByoJCOgHEICAgIACIt0BCg5TZXJ2aWNlT3B0aW9ucxI3CghmZWF0dXJlcxgiIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxIlCgpkZXByZWNhdGVkGCEgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioGCN4HEOcHKgkI6AcQgICAgAIioQMKDU1ldGhvZE9wdGlvbnMSJQoKZGVwcmVjYXRlZBghIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQScQoRaWRlbXBvdGVuY3lfbGV2ZWwYIiABKA4yLy5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucy5JZGVtcG90ZW5jeUxldmVsOhNJREVNUE9URU5DWV9VTktOT1dOUhBpZGVtcG90ZW5jeUxldmVsEjcKCGZlYXR1cmVzGCMgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uIlAKEElkZW1wb3RlbmN5TGV2ZWwSFwoTSURFTVBPVEVOQ1lfVU5LTk9XThAAEhMKD05PX1NJREVfRUZGRUNUUxABEg4KCklERU1QT1RFTlQQAioGCN4HEOcHKgkI6AcQgICAgAIimgMKE1VuaW50ZXJwcmV0ZWRPcHRpb24SQQoEbmFtZRgCIAMoCzItLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uLk5hbWVQYXJ0UgRuYW1lEikKEGlkZW50aWZpZXJfdmFsdWUYAyABKAlSD2lkZW50aWZpZXJWYWx1ZRIsChJwb3NpdGl2ZV9pbnRfdmFsdWUYBCABKARSEHBvc2l0aXZlSW50VmFsdWUSLAoSbmVnYXRpdmVfaW50X3ZhbHVlGAUgASgDUhBuZWdhdGl2ZUludFZhbHVlEiEKDGRvdWJsZV92YWx1ZRgGIAEoAVILZG91YmxlVmFsdWUSIQoMc3RyaW5nX3ZhbHVlGAcgASgMUgtzdHJpbmdWYWx1ZRInCg9hZ2dyZWdhdGVfdmFsdWUYCCABKAlSDmFnZ3JlZ2F0ZVZhbHVlGkoKCE5hbWVQYXJ0EhsKCW5hbWVfcGFydBgBIAIoCVIIbmFtZVBhcnQSIQoMaXNfZXh0ZW5zaW9uGAIgAigIUgtpc0V4dGVuc2lvbiLvEQoKRmVhdHVyZVNldBKRAQoOZmllbGRfcHJlc2VuY2UYASABKA4yKS5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5GaWVsZFByZXNlbmNlQj+IAQGYAQSYAQGiAQ0SCEVYUExJQ0lUGIQHogENEghJTVBMSUNJVBjnB6IBDRIIRVhQTElDSVQY6AeyAQMI6AdSDWZpZWxkUHJlc2VuY2USbAoJZW51bV90eXBlGAIgASgOMiQuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuRW51bVR5cGVCKYgBAZgBBpgBAaIBCxIGQ0xPU0VEGIQHogEJEgRPUEVOGOcHsgEDCOgHUghlbnVtVHlwZRKYAQoXcmVwZWF0ZWRfZmllbGRfZW5jb2RpbmcYAyABKA4yMS5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5SZXBlYXRlZEZpZWxkRW5jb2RpbmdCLYgBAZgBBJgBAaIBDRIIRVhQQU5ERUQYhAeiAQsSBlBBQ0tFRBjnB7IBAwjoB1IVcmVwZWF0ZWRGaWVsZEVuY29kaW5nEn4KD3V0ZjhfdmFsaWRhdGlvbhgEIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LlV0ZjhWYWxpZGF0aW9uQimIAQGYAQSYAQGiAQkSBE5PTkUYhAeiAQsSBlZFUklGWRjnB7IBAwjoB1IOdXRmOFZhbGlkYXRpb24SfgoQbWVzc2FnZV9lbmNvZGluZxgFIAEoDjIrLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0Lk1lc3NhZ2VFbmNvZGluZ0ImiAEBmAEEmAEBogEUEg9MRU5HVEhfUFJFRklYRUQYhAeyAQMI6AdSD21lc3NhZ2VFbmNvZGluZxKCAQoLanNvbl9mb3JtYXQYBiABKA4yJi5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5Kc29uRm9ybWF0QjmIAQGYAQOYAQaYAQGiARcSEkxFR0FDWV9CRVNUX0VGRk9SVBiEB6IBChIFQUxMT1cY5weyAQMI6AdSCmpzb25Gb3JtYXQSvAEKFGVuZm9yY2VfbmFtaW5nX3N0eWxlGAcgASgOMi4uZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuRW5mb3JjZU5hbWluZ1N0eWxlQlqIAQKYAQGYAQKYAQOYAQSYAQWYAQaYAQeYAQiYAQmiARESDFNUWUxFX0xFR0FDWRiEB6IBDhIJU1RZTEUyMDI0GOkHogEOEglTVFlMRTIwMjYY6geyAQMI6QdSEmVuZm9yY2VOYW1pbmdTdHlsZRK5AQoZZGVmYXVsdF9zeW1ib2xfdmlzaWJpbGl0eRgIIAEoDjJFLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LlZpc2liaWxpdHlGZWF0dXJlLkRlZmF1bHRTeW1ib2xWaXNpYmlsaXR5QjaIAQKYAQGiAQ8SCkVYUE9SVF9BTEwYhAeiARUSEEVYUE9SVF9UT1BfTEVWRUwY6QeyAQMI6QdSF2RlZmF1bHRTeW1ib2xWaXNpYmlsaXR5EsMBChRlbmZvcmNlX3Byb3RvX2xpbWl0cxgJIAEoDjJBLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LlByb3RvTGltaXRzRmVhdHVyZS5FbmZvcmNlUHJvdG9MaW1pdHNCTogBApgBBpgBA5gBBJgBBaIBHhIZTEVHQUNZX05PX0VYUExJQ0lUX0xJTUlUUxiEB6IBFRIQUFJPVE9fTElNSVRTMjAyNhjqB7IBAwjqB1ISZW5mb3JjZVByb3RvTGltaXRzGqEBChFWaXNpYmlsaXR5RmVhdHVyZSKBAQoXRGVmYXVsdFN5bWJvbFZpc2liaWxpdHkSJQohREVGQVVMVF9TWU1CT0xfVklTSUJJTElUWV9VTktOT1dOEAASDgoKRVhQT1JUX0FMTBABEhQKEEVYUE9SVF9UT1BfTEVWRUwQAhINCglMT0NBTF9BTEwQAxIKCgZTVFJJQ1QQBEoICAEQgICAgAIaeQoSUHJvdG9MaW1pdHNGZWF0dXJlImMKEkVuZm9yY2VQcm90b0xpbWl0cxIYChRQUk9UT19MSU1JVFNfVU5LTk9XThAAEh0KGUxFR0FDWV9OT19FWFBMSUNJVF9MSU1JVFMQARIUChBQUk9UT19MSU1JVFMyMDI2EAIiXAoNRmllbGRQcmVzZW5jZRIaChZGSUVMRF9QUkVTRU5DRV9VTktOT1dOEAASDAoIRVhQTElDSVQQARIMCghJTVBMSUNJVBACEhMKD0xFR0FDWV9SRVFVSVJFRBADIjcKCEVudW1UeXBlEhUKEUVOVU1fVFlQRV9VTktOT1dOEAASCAoET1BFThABEgoKBkNMT1NFRBACIlYKFVJlcGVhdGVkRmllbGRFbmNvZGluZxIjCh9SRVBFQVRFRF9GSUVMRF9FTkNPRElOR19VTktOT1dOEAASCgoGUEFDS0VEEAESDAoIRVhQQU5ERUQQAiJJCg5VdGY4VmFsaWRhdGlvbhIbChdVVEY4X1ZBTElEQVRJT05fVU5LTk9XThAAEgoKBlZFUklGWRACEggKBE5PTkUQAyIECAEQASJTCg9NZXNzYWdlRW5jb2RpbmcSHAoYTUVTU0FHRV9FTkNPRElOR19VTktOT1dOEAASEwoPTEVOR1RIX1BSRUZJWEVEEAESDQoJREVMSU1JVEVEEAIiSAoKSnNvbkZvcm1hdBIXChNKU09OX0ZPUk1BVF9VTktOT1dOEAASCQoFQUxMT1cQARIWChJMRUdBQ1lfQkVTVF9FRkZPUlQQAiJmChJFbmZvcmNlTmFtaW5nU3R5bGUSIAocRU5GT1JDRV9OQU1JTkdfU1RZTEVfVU5LTk9XThAAEg0KCVNUWUxFMjAyNBABEhAKDFNUWUxFX0xFR0FDWRACEg0KCVNUWUxFMjAyNhADKgYI6AcQi04qBgiLThCQTioGCJBOEJFOSgYI5wcQ6Aci7wMKEkZlYXR1cmVTZXREZWZhdWx0cxJYCghkZWZhdWx0cxgBIAMoCzI8Lmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0RGVmYXVsdHMuRmVhdHVyZVNldEVkaXRpb25EZWZhdWx0UghkZWZhdWx0cxJBCg9taW5pbXVtX2VkaXRpb24YBCABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIObWluaW11bUVkaXRpb24SQQoPbWF4aW11bV9lZGl0aW9uGAUgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SDm1heGltdW1FZGl0aW9uGvgBChhGZWF0dXJlU2V0RWRpdGlvbkRlZmF1bHQSMgoHZWRpdGlvbhgDIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUgdlZGl0aW9uEk4KFG92ZXJyaWRhYmxlX2ZlYXR1cmVzGAQgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSE292ZXJyaWRhYmxlRmVhdHVyZXMSQgoOZml4ZWRfZmVhdHVyZXMYBSABKAsyGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldFINZml4ZWRGZWF0dXJlc0oECAEQAkoECAIQA1IIZmVhdHVyZXMitQIKDlNvdXJjZUNvZGVJbmZvEkQKCGxvY2F0aW9uGAEgAygLMiguZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvZGVJbmZvLkxvY2F0aW9uUghsb2NhdGlvbhrOAQoITG9jYXRpb24SFgoEcGF0aBgBIAMoBUICEAFSBHBhdGgSFgoEc3BhbhgCIAMoBUICEAFSBHNwYW4SKQoQbGVhZGluZ19jb21tZW50cxgDIAEoCVIPbGVhZGluZ0NvbW1lbnRzEisKEXRyYWlsaW5nX2NvbW1lbnRzGAQgASgJUhB0cmFpbGluZ0NvbW1lbnRzEjoKGWxlYWRpbmdfZGV0YWNoZWRfY29tbWVudHMYBiADKAlSF2xlYWRpbmdEZXRhY2hlZENvbW1lbnRzKgwIgOzK/wEQgezK/wEi0AIKEUdlbmVyYXRlZENvZGVJbmZvEk0KCmFubm90YXRpb24YASADKAsyLS5nb29nbGUucHJvdG9idWYuR2VuZXJhdGVkQ29kZUluZm8uQW5ub3RhdGlvblIKYW5ub3RhdGlvbhrrAQoKQW5ub3RhdGlvbhIWCgRwYXRoGAEgAygFQgIQAVIEcGF0aBIfCgtzb3VyY2VfZmlsZRgCIAEoCVIKc291cmNlRmlsZRIUCgViZWdpbhgDIAEoBVIFYmVnaW4SEAoDZW5kGAQgASgFUgNlbmQSUgoIc2VtYW50aWMYBSABKA4yNi5nb29nbGUucHJvdG9idWYuR2VuZXJhdGVkQ29kZUluZm8uQW5ub3RhdGlvbi5TZW1hbnRpY1IIc2VtYW50aWMiKAoIU2VtYW50aWMSCAoETk9ORRAAEgcKA1NFVBABEgkKBUFMSUFTEAIq0QIKB0VkaXRpb24SEwoPRURJVElPTl9VTktOT1dOEAASEwoORURJVElPTl9MRUdBQ1kQhAcSEwoORURJVElPTl9QUk9UTzIQ5gcSEwoORURJVElPTl9QUk9UTzMQ5wcSEQoMRURJVElPTl8yMDIzEOgHEhEKDEVESVRJT05fMjAyNBDpBxIRCgxFRElUSU9OXzIwMjYQ6gcSFQoQRURJVElPTl9VTlNUQUJMRRCPThIXChNFRElUSU9OXzFfVEVTVF9PTkxZEAESFwoTRURJVElPTl8yX1RFU1RfT05MWRACEh0KF0VESVRJT05fOTk5OTdfVEVTVF9PTkxZEJ2NBhIdChdFRElUSU9OXzk5OTk4X1RFU1RfT05MWRCejQYSHQoXRURJVElPTl85OTk5OV9URVNUX09OTFkQn40GEhMKC0VESVRJT05fTUFYEP////8HKlUKEFN5bWJvbFZpc2liaWxpdHkSFAoQVklTSUJJTElUWV9VTlNFVBAAEhQKEFZJU0lCSUxJVFlfTE9DQUwQARIVChFWSVNJQklMSVRZX0VYUE9SVBACQn4KE2NvbS5nb29nbGUucHJvdG9idWZCEERlc2NyaXB0b3JQcm90b3NIAVotZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMvZGVzY3JpcHRvcnBi+AEBogIDR1BCqgIaR29vZ2xlLlByb3RvYnVmLlJlZmxlY3Rpb25Ko/QDCgcSBQ8A6QsBCvIECgEMEgMPABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgTExDLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMtsCIEF1dGhvcjoga2VudG9uQGdvb2dsZS5jb20gKEtlbnRvbiBWYXJkYSkKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIFRoZSBtZXNzYWdlcyBpbiB0aGlzIGZpbGUgZGVzY3JpYmUgdGhlIGRlZmluaXRpb25zIGZvdW5kIGluIC5wcm90byBmaWxlcy4KIEEgdmFsaWQgLnByb3RvIGZpbGUgY2FuIGJlIHRyYW5zbGF0ZWQgZGlyZWN0bHkgdG8gYSBGaWxlRGVzY3JpcHRvclByb3RvCiB3aXRob3V0IGFueSBvdGhlciBpbmZvcm1hdGlvbiAoZS5nLiB3aXRob3V0IHJlYWRpbmcgaXRzIGltcG9ydHMpLgoKCAoBAhIDEQAYCggKAQgSAxMARAoJCgIICxIDEwBECggKAQgSAxQALAoJCgIIARIDFAAsCggKAQgSAxUAMQoJCgIICBIDFQAxCggKAQgSAxYANwoJCgIIJRIDFgA3CggKAQgSAxcAIQoJCgIIJBIDFwAhCggKAQgSAxgAHwoJCgIIHxIDGAAfCggKAQgSAxwAHAp/CgIICRIDHAAcGnQgZGVzY3JpcHRvci5wcm90byBtdXN0IGJlIG9wdGltaXplZCBmb3Igc3BlZWQgYmVjYXVzZSByZWZsZWN0aW9uLWJhc2VkCiBhbGdvcml0aG1zIGRvbid0IHdvcmsgZHVyaW5nIGJvb3RzdHJhcHBpbmcuCgpqCgIEABIEIAApARpeIFRoZSBwcm90b2NvbCBjb21waWxlciBjYW4gb3V0cHV0IGEgRmlsZURlc2NyaXB0b3JTZXQgY29udGFpbmluZyB0aGUgLnByb3RvCiBmaWxlcyBpdCBwYXJzZXMuCgoKCgMEAAESAyAIGQoLCgQEAAIAEgMhAigKDAoFBAACAAQSAyECCgoMCgUEAAIABhIDIQseCgwKBQQAAgABEgMhHyMKDAoFBAACAAMS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ZSBpcyB0cmFja2VkIGZvciB0aGlzIGZpZWxkLiBUaGlzIG9uZW9mCiBpcyBrbm93biBhcyBhICJzeW50aGV0aWMiIG9uZW9mLCBhbmQgdGhpcyBmaWVsZCBtdXN0IGJlIGl0cyBzb2xlIG1lbWJlcgogKGVhY2ggcHJvdG8zIG9wdGlvbmFsIGZpZWxkIGdldHMgaXRzIG93biBzeW50aGV0aWMgb25lb2YpLiBTeW50aGV0aWMgb25lb2ZzCiBleGlzdCBpbiB0aGUgZGVzY3JpcHRvciBvbmx5LCBhbmQgZG8gbm90IGdlbmVyYXRlIGFueSBBUEkuIFN5bnRoZXRpYyBvbmVvZnMKIG11c3QgYmUgb3JkZXJlZCBhZnRlciBhbGwgInJlYWwiIG9uZW9mcy4KCiBGb3IgbWVzc2FnZSBmaWVsZHMsIHByb3RvM19vcHRpb25hbCBkb2Vzbid0IGNyZWF0ZSBhbnkgc2VtYW50aWMgY2hhbmdlLAogc2luY2Ugbm9uLXJlcGVhdGVkIG1lc3NhZ2UgZmllbGRzIGFsd2F5cyB0cmFjayBwcmVzZW5jZS4gSG93ZXZlciBpdCBzdGlsbAogaW5kaWNhdGVzIHRoZSBzZW1hbnRpYyBkZXRhaWwgb2Ygd2hldGhlciB0aGUgdXNlciB3cm90ZSAib3B0aW9uYWwiIG9yIG5vdC4KIFRoaXMgY2FuIGJlIHVzZWZ1bCBmb3Igcm91bmQtdHJpcHBpbmcgdGhlIC5wcm90byBmaWxlLiBGb3IgY29uc2lzdGVuY3kgd2UKIGdpdmUgbWVzc2FnZSBmaWVsZHMgYSBzeW50aGV0aWMgb25lb2YgYWxzbywgZXZlbiB0aG91Z2ggaXQgaXMgbm90IHJlcXVpcmVkCiB0byB0cmFjayBwcmVzZW5jZS4gVGhpcyBpcyBlc3BlY2lhbGx5IGltcG9ydGFudCBiZWNhdXNlIHRoZSBwYXJzZXIgY2FuJ3QKIHRlbGwgaWYgYSBmaWVsZCBpcyBhIG1lc3NhZ2Ugb3IgYW4gZW51bSwgc28gaXQgbXVzdCBhbHdheXMgY3JlYXRlIGEKIHN5bnRoZXRpYyBvbmVvZi4KCiBQcm90bzIgb3B0aW9uYWwgZmllbGRzIGRvIG5vdCBzZXQgdGhpcyBmbGFnLCBiZWNhdXNl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YWQgaXQgc3RvcmVzIHRoZW0gaW4gYSBmaWVsZCBpbiB0aGUgKk9wdGlvbnMKIG1lc3NhZ2UgY2FsbGVkIHVuaW50ZXJwcmV0ZWRfb3B0aW9uLiBUaGlzIGZpZWxkIG11c3QgaGF2ZSB0aGUgc2FtZSBuYW1lCiBhY3Jvc3MgYWxsICpPcHRpb25zIG1lc3NhZ2VzLiBXZSB0aGVuIHVzZSB0aGlzIGZpZWxkIHRvIHBvcHVsYXRlIHRoZQogZXh0ZW5zaW9ucyB3aGVuIHdlIGJ1aWxkIGEgZGVzY3JpcHRvciwgYXQgd2hpY2ggcG9pbnQgYWxsIHByb3RvcyBoYXZlIGJlZW4KIHBhcnNlZCBhbmQgc28gYWxsIGV4dGVuc2lvbnMgYXJlIGtub3duLgoKIEV4dGVuc2lvbiBudW1iZXJzIGZvciBjdXN0b20gb3B0aW9ucyBtYXkgYmUgY2hvc2VuIGFzIGZvbGxvd3M6CiAqIEZvciBvcHRpb25zIHdoaWNoIHdpbGwgb25seSBiZSB1c2VkIHdpdGhpbiBhIHNpbmdsZSBhcHBsaWNhdGlvbiBvcgogICBvcmdhbml6YXRpb24sIG9yIGZvciBleHBlcmltZW50YWwgb3B0aW9ucywgdXNlIGZpZWxkIG51bWJlcnMgNTAwMDAKICAgdGhyb3VnaCA5OTk5OS4gIEl0IGlzIHVwIHRvIHlvdSB0byBlbnN1cmUgdGhhdCB5b3UgZG8gbm90IHVzZSB0aGUKICAgc2FtZSBudW1iZXIgZm9yIG11bHRpcGxlIG9wdGlvbnMuCiAqIEZvciBvcHRpb25zIHdoaWNoIHdpbGwgYmUgcHVibGlzaGVkIGFuZCB1c2VkIHB1YmxpY2x5IGJ5IG11bHRpcGxlCiAgIGluZGVwZW5kZW50IGVudGl0aWVzLCBlLW1haWwgcHJvdG9idWYtZ2xvYmFsLWV4dGVuc2lvbi1yZWdpc3RyeUBnb29nbGUuY29tCiAgIHRvIHJlc2VydmUgZXh0ZW5zaW9uIG51bWJlcnMuIFNpbXBseSBwcm92aWRlIHlvdXIgcHJvamVjdCBuYW1lIChlLmcuCiAgIE9iamVjdGl2ZS1DIHBsdWdpbikgYW5kIHlvdXIgcHJvamVjdCB3ZWJzaXRlIChpZiBhdmFpbGFibGUpIC0tIHRoZXJlJ3Mgbm8KICAgbmVlZCB0byBleHBsYWluIGhvdyB5b3UgaW50ZW5kIHRvIHVzZSB0aGVtLiBVc3VhbGx5IHlvdSBvbmx5IG5lZWQgb25lCiAgIGV4dGVuc2lvbiBudW1iZXIuIFlvdSBjYW4gZGVjbGFyZSBtdWx0aXBsZSBvcHRpb25zIHdpdGggb25seSBvbmUgZXh0ZW5zaW9uCiAgIG51bWJlciBieSBwdXR0aW5nIHRoZW0gaW4gYSBzdWItbWVzc2FnZS4gU2VlIHRoZSBDdXN0b20gT3B0aW9ucyBzZWN0aW9uIG9mCiAgIHRoZSBkb2NzIGZvciBleGFtcGxlczoKICAgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy9kb2NzL3Byb3RvI29wdGlvbnMKICAgSWYgdGhpcyB0dXJucyBvdXQgdG8gYmUgcG9wdWxhciwgYSB3ZWIgc2VydmljZSB3aWxsIGJlIHNldCB1cAogICB0byBhdXRvbWF0aWNhbGx5IGFzc2lnbiBvcHRpb24gbnVtYmVycy4KCgsKAwQKARIEtgMIEwr0AQoEBAoCABIEvAMCIxrlASBTZXRzIHRoZSBKYXZhIHBhY2thZ2Ugd2hlcmUgY2xhc3NlcyBnZW5lcmF0ZWQgZnJvbSB0aGlzIC5wcm90byB3aWxsIGJlCiBwbGFjZWQuICBCeSBkZWZhdWx0LCB0aGUgcHJvdG8gcGFja2FnZSBpcyB1c2VkLCBidXQgdGhpcyBpcyBvZnRlbgogaW5hcHByb3ByaWF0ZSBiZWNhdXNlIHByb3RvIHBhY2thZ2VzIGRvIG5vdCBub3JtYWxseSBzdGFydCB3aXRoIGJhY2t3YXJkcwogZG9tYWluIG5hbWVzLgoKDQoFBAoCAAQSBLwDAgoKDQoFBAoCAAUSBLwDCxEKDQoFBAoCAAESBLwDEh4KDQoFBAoCAAMSBLwDISIK8QIKBAQKAgESBMMDAisa4gIgQ29udHJvbHMgdGhlIG5hbWUgb2YgdGhlIHdyYXBwZXIgSmF2YSBjbGFzcyBnZW5lcmF0ZWQgZm9yIHRoZSAucHJvdG8gZmlsZS4KIFRoYXQgY2xhc3Mgd2lsbCBhbHdheXMgY29udGFpbiB0aGUgLnByb3RvIGZpbGUncyBnZXREZXNjcmlwdG9yKCkgbWV0aG9kIGFzCiB3ZWxsIGFzIGFueSB0b3AtbGV2ZWwgZXh0ZW5zaW9ucyBkZWZpbmVkIGluIHRoZSAucHJvdG8gZmlsZS4KIElmIGphdmFfbXVsdGlwbGVfZmlsZXMgaXMgZGlzYWJsZWQsIHRoZW4gYWxsIHRoZSBvdGhlciBjbGFzc2VzIGZyb20gdGhlCiAucHJvdG8gZmlsZSB3aWxsIGJlIG5lc3RlZCBpbnNpZGUgdGhlIHNpbmdsZSB3cmFwcGVyIG91dGVyIGNsYXNzLgoKDQoFBAoCAQQSBMMDAgoKDQoFBAoCAQUSBMMDCxEKDQoFBAoCAQESBMMDEiYKDQoFBAoCAQMSBMMDKSoKqAMKBAQKAgISBssDAtUDBBqXAyBJZiBlbmFibGVkLCB0aGVuIHRoZSBKYXZhIGNvZGUgZ2VuZXJhdG9yIHdpbGwgZ2VuZXJhdGUgYSBzZXBhcmF0ZSAuamF2YQogZmlsZSBmb3IgZWFjaCB0b3AtbGV2ZWwgbWVzc2FnZSwgZW51bSwgYW5kIHNlcnZpY2UgZGVmaW5lZCBpbiB0aGUgLnByb3RvCiBmaWxlLiAgVGh1cywgdGhlc2UgdHlwZXMgd2lsbCAqbm90KiBiZSBuZXN0ZWQgaW5zaWRlIHRoZSB3cmFwcGVyIGNsYXNzCiBuYW1lZCBieSBqYXZhX291dGVyX2NsYXNzbmFtZS4gIEhvd2V2ZXIsIHRoZSB3cmFwcGVyIGNsYXNzIHdpbGwgc3RpbGwgYmUKIGdlbmVyYXRlZCB0byBjb250YWluIHRoZSBmaWxlJ3MgZ2V0RGVzY3JpcHRvcigpIG1ldGhvZCBhcyB3ZWxsIGFzIGFueQogdG9wLWxldmVsIGV4dGVuc2lvbnMgZGVmaW5lZCBpbiB0aGUgZmlsZS4KCg0KBQQKAgIEEgTLAwIKCg0KBQQKAgIFEgTLAwsPCg0KBQQKAgIBEgTLAxAjCg0KBQQKAgIDEgTLAyYoCg8KBQQKAgIIEgbLAynVAwMKDQoFBAoCAgcSBMwDDhMKEAoGBAoCAggWEgbNAwTUAwUKKQoEBAoCAxIE2AMCRRobIFRoaXMgb3B0aW9uIGRvZXMgbm90aGluZy4KCg0KBQQKAgMEEgTYAwIKCg0KBQQKAgMF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ZSB0aGUgbWFwcyBzeW50YXgKIGluc3RlYWQuIFRoZSBvcHRpb24gc2hvdWxkIG9ubHkgYmUgaW1wbGljaXRseSBzZXQgYnkgdGhlIHByb3RvIGNvbXBpbGVyCiBwYXJzZXIuCgoNCgUECwIDBBIEhwUCCgoNCgUECwIDBRIEhwULDwoNCgUECwIDARIEhwUQGQoNCgUECwIDAxIEhwUcHQokCgMECwkSBIkFAg0iFyBqYXZhbGl0ZV9zZXJpYWxpemFibGUKCgwKBAQLCQMSBIkFCwwKDQoFBAsJAwESBIkFCwwKDQoFBAsJAwISBIkFCwwKHwoDBAsJEgSKBQINIhIgamF2YW5hbm9fYXNfbGl0ZQoKDAoEBAsJBBIEigULDAoNCgUECwkEARIEigULDAoNCgUECwkEAhIEigULDArdAwoEBAsCBBIElgUCUBrOAyBFbmFibGUgdGhlIGxlZ2FjeSBoYW5kbGluZyBvZiBKU09OIGZpZWxkIG5hbWUgY29uZmxpY3RzLiAgVGhpcyBsb3dlcmNhc2VzCiBhbmQgc3RyaXBzIHVuZGVyc2NvcmVkIGZyb20gdGhlIGZpZWxkcyBiZWZvcmUgY29tcGFyaXNvbiBpbiBwcm90bzMgb25seS4KIFRoZSBuZXcgYmVoYXZpb3IgdGFrZXMgYGpzb25fbmFtZWAgaW50byBhY2NvdW50IGFuZCBhcHBsaWVzIHRvIHByb3RvMiBhcwogd2VsbC4KCiBUaGlzIHNob3VsZCBvbmx5IGJlIHVzZWQgYXMgYSB0ZW1wb3JhcnkgbWVhc3VyZSBhZ2FpbnN0IGJyb2tlbiBidWlsZHMgZHVlCiB0byB0aGUgY2hhbmdlIGluIGJlaGF2aW9yIGZvciBKU09OIGZpZWxkIG5hbWUgY29uZmxpY3RzLgoKIFRPRE8gVGhpcyBpcyBsZWdhY3kgYmVoYXZpb3Igd2UgcGxhbiB0byByZW1vdmUgb25jZSBkb3duc3RyZWFtCiB0ZWFtcyBoYXZlIGhhZCB0aW1lIHRvIG1pZ3JhdGUuCgoNCgUECwIEBBIElgUCCgoNCgUECwIEBRIElgULDwoNCgUECwIEARIElgUQNgoNCgUECwIEAxIElgU5OwoNCgUECwIECBIElgU8TwoOCgYECwIECAMSBJYFPU4KkQIKBAQLAgUSBJwFAiQaggIgQW55IGZlYXR1cmVzIGRlZmluZWQgaW4gdGhlIHNwZWNpZmljIGVkaXRpb24uCiBXQVJOSU5HOiBUaGlzIGZpZWxkIHNob3VsZCBvbmx5IGJlIHVzZWQgYnkgcHJvdG9idWYgcGx1Z2lucyBvciBzcGVjaWFsCiBjYXNlcyBsaWtlIHRoZSBwcm90byBjb21waWxlci4gT3RoZXIgdXNlcyBhcmUgZGlzY291cmFnZWQgYW5kCiBkZXZlbG9wZXJzIHNob3VsZCByZWx5IG9uIHRoZSBwcm90b3JlZmxlY3QgQVBJcyBmb3IgdGhlaXIgY2xpZW50IGxhbmd1YWdlLgoKDQoFBAsCBQQSBJwFAgoKDQoFBAsCBQYSBJwFCxUKDQoFBAsCBQESBJwFFh4KDQoFBAsCBQMSBJwFISMKkgEKAwQLBRIEoAUCGBqEASBSYW5nZSByZXNlcnZlZCBmb3IgZmlyc3QtY2xhc3MgY3VzdG9tIG9wdGlvbnMgZGVmaW5lZCBieSB0aGUgUHJvdG9idWYKIHRlYW0uIFVzZXIgY3VzdG9tIG9wdGlvbnMgbXVzdCB1c2UgdGhlIDEwMDArIHJhbmdlIGluc3RlYWQuCgoMCgQECwUAEgSgBQ0XCg0KBQQLBQABEgSgBQ0QCg0KBQQLBQACEgSgBRQXCk8KBAQLAgYSBKMFAjoaQSBUaGUgcGFyc2VyIHN0b3JlcyBvcHRpb25zIGl0IGRvZXNuJ3QgcmVjb2duaXplIGhlcmUuIFNlZSBhYm92ZS4KCg0KBQQLAgYEEgSjBQIKCg0KBQQLAgYGEgSjBQseCg0KBQQLAgYBEgSjBR8zCg0KBQQLAgYDEgSjBTY5CloKAwQLBRIEpgUCGRpNIENsaWVudHMgY2FuIGRlZmluZSBjdXN0b20gb3B0aW9ucyBpbiBleHRlbnNpb25zIG9mIHRoaXMgbWVzc2FnZS4gU2VlIGFib3ZlLgoKDAoEBAsFARIEpgUNGAoNCgUECwUBARIEpgUNEQoNCgUECwUBAhIEpgUVGAoMCgIEDBIGqQUA2AYBCgsKAwQMARIEqQUIFArCAwoEBAwCABIEsQUCRRqzAyBOT1RFOiBjdHlwZSBpcyBkZXByZWNhdGVkLiBVc2UgYGZlYXR1cmVzLihwYi5jcHApLnN0cmluZ190eXBlYCBpbnN0ZWFkLgogVGhlIGN0eXBlIG9wdGlvbiBpbnN0cnVjdHMgdGhlIEMrKyBjb2RlIGdlbmVyYXRvciB0byB1c2UgYSBkaWZmZXJlbnQKIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBmaWVsZCB0aGFuIGl0IG5vcm1hbGx5IHdvdWxkLiAgU2VlIHRoZSBzcGVjaWZpYwogb3B0aW9ucyBiZWxvdy4gIFRoaXMgb3B0aW9uIGlzIG9ubHkgaW1wbGVtZW50ZWQgdG8gc3VwcG9ydCB1c2Ugb2YKIFtjdHlwZT1DT1JEXSBhbmQgW2N0eXBlPVNUUklOR10gKHRoZSBkZWZhdWx0KSBvbiBub24tcmVwZWF0ZWQgZmllbGRzIG9mCiB0eXBlICJieXRlcyIgaW4gdGhlIG9wZW4gc291cmNlIHJlbGVhc2UuCiBUT0RPOiBtYWtlIGN0eXBlIGFjdHVhbGx5IGRlcHJlY2F0ZWQuCgoNCgUEDAIABBIEsQUCCgoNCgUEDAIABhIEsQULEAoNCgUEDAIAARIEsQURFgoNCgUEDAIAAxIEsQUZGgoNCgUEDAIACBIEsQUbRAoNCgUEDAIABxIEsQU9QwoOCgQEDAQAEgayBQK/BQMKDQoFBAwEAAESBLIFBwwKHwoGBAwEAAIAEgS0BQQPGg8gRGVmYXVsdCBtb2RlLgoKDwoHBAwEAAIAARIEtAUECgoPCgcEDAQAAgACEgS0BQ0OCpYDCgYEDAQAAgESBLwFBA0ahQMgVGhlIG9wdGlvbiBbY3R5cGU9Q09SRF0gbWF5IGJlIGFwcGxpZWQgdG8gYSBub24tcmVwZWF0ZWQgZmllbGQgb2YgdHlwZQogImJ5dGVzIi4gSXQgaW5kaWNhdGVzIHRoYXQgaW4gQysrLCB0aGUgZGF0YSBzaG91bGQgYmUgc3RvcmVkIGluIGEgQ29yZAogaW5zdGVhZCBvZiBhIHN0cmluZy4gIEZvciB2ZXJ5IGxhcmdlIHN0cmluZ3MsIHRoaXMgbWF5IHJlZHVjZSBtZW1vcnkKIGZyYWdtZW50YXRpb24uIEl0IG1heSBhbHNvIGFsbG93IGJldHRlciBwZXJmb3JtYW5jZSB3aGVuIHBhcnNpbmcgZnJvbSBhCiBDb3JkLCBvciB3aGVuIHBhcnNpbmcgd2l0aCBhbGlhc2luZyBlbmFibGVkLCBhcyB0aGUgcGFyc2VkIENvcmQgbWF5IHRoZW4KIGFsaWFzIHRoZSBvcmlnaW5hbCBidWZmZXIuCgoPCgcEDAQAAgEBEgS8BQQICg8KBwQMBAACAQISBLwFCwwKDgoGBAwEAAICEgS+BQQVCg8KBwQMBAACAgESBL4FBBAKDwoHBAwEAAICAhIEvgUTFArTAwoEBAwCARIExwUCGxrEAyBUaGUgcGFja2VkIG9wdGlvbiBjYW4gYmUgZW5hYmxlZCBmb3IgcmVwZWF0ZWQgcHJpbWl0aXZlIGZpZWxkcyB0byBlbmFibGUKIGEgbW9yZSBlZmZpY2llbnQgcmVwcmVzZW50YXRpb24gb24gdGhlIHdpcmUuIFJhdGhlciB0aGFuIHJlcGVhdGVkbHkKIHdyaXRpbmcgdGhlIHRhZyBhbmQgdHlwZSBmb3IgZWFjaCBlbGVtZW50LCB0aGUgZW50aXJlIGFycmF5IGlzIGVuY29kZWQgYXMKIGEgc2luZ2xlIGxlbmd0aC1kZWxpbWl0ZWQgYmxvYi4gSW4gcHJvdG8zLCBvbmx5IGV4cGxpY2l0IHNldHRpbmcgaXQgdG8KIGZhbHNlIHdpbGwgYXZvaWQgdXNpbmcgcGFja2VkIGVuY29kaW5nLiAgVGhpcyBvcHRpb24gaXMgcHJvaGliaXRlZCBpbgogRWRpdGlvbnMsIGJ1dCB0aGUgYHJlcGVhdGVkX2ZpZWxkX2VuY29kaW5nYCBmZWF0dXJlIGNhbiBiZSB1c2VkIHRvIGNvbnRyb2wKIHRoZSBiZWhhdmlvci4KCg0KBQQMAgEEEgTHBQIKCg0KBQQMAgEFEgTHBQsPCg0KBQQMAgEBEgTHBRAWCg0KBQQMAgEDEgTHBRkaCpoFCgQEDAICEgTUBQIzGosFIFRoZSBqc3R5cGUgb3B0aW9uIGRldGVybWluZXMgdGhlIEphdmFTY3JpcHQgdHlwZSB1c2VkIGZvciB2YWx1ZXMgb2YgdGhlCiBmaWVsZC4gIFRoZSBvcHRpb24gaXMgcGVybWl0dGVkIG9ubHkgZm9yIDY0IGJpdCBpbnRlZ3JhbCBhbmQgZml4ZWQgdHlwZXMKIChpbnQ2NCwgdWludDY0LCBzaW50NjQsIGZpeGVkNjQsIHNmaXhlZDY0KS4gIEEgZmllbGQgd2l0aCBqc3R5cGUgSlNfU1RSSU5HCiBpcyByZXByZXNlbnRlZCBhcyBKYXZhU2NyaXB0IHN0cmluZywgd2hpY2ggYXZvaWRzIGxvc3Mgb2YgcHJlY2lzaW9uIHRoYXQKIGNhbiBoYXBwZW4gd2hlbiBhIGxhcmdlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBhIGZsb2F0aW5nIHBvaW50IEphdmFTY3JpcHQuCiBTcGVjaWZ5aW5nIEpTX05VTUJFUiBmb3IgdGhlIGpzdHlwZSBjYXVzZXMgdGhlIGdlbmVyYXRlZCBKYXZhU2NyaXB0IGNvZGUgdG8KIHVzZSB0aGUgSmF2YVNjcmlwdCAibnVtYmVyIiB0eXBlLiAgVGhlIGJlaGF2aW9yIG9mIHRoZSBkZWZhdWx0IG9wdGlvbgogSlNfTk9STUFMIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4KCiBUaGlzIG9wdGlvbiBpcyBhbiBlbnVtIHRvIHBlcm1pdCBhZGRpdGlvbmFsIHR5cGVzIHRvIGJlIGFkZGVkLCBlLmcuCiBnb29nLm1hdGguSW50ZWdlci4KCg0KBQQMAgIEEgTUBQIKCg0KBQQMAgIGEgTUBQsRCg0KBQQMAgIBEgTUBRIYCg0KBQQMAgIDEgTUBRscCg0KBQQMAgIIEgTUBR0yCg0KBQQMAgIHEgTUBSgxCg4KBAQMBAESBtUFAt4FAwoNCgUEDAQBARIE1QUHDQonCgYEDAQBAgASBNcFBBIaFyBVc2UgdGhlIGRlZmF1bHQgdHlwZS4KCg8KBwQMBAECAAESBNcFBA0KDwoHBAwEAQIAAhIE1wUQEQopCgYEDAQBAgESBNoFBBIaGSBVc2UgSmF2YVNjcmlwdCBzdHJpbmdzLgoKDwoHBAwEAQIBARIE2gUEDQoPCgcEDAQBAgECEgTaBRARCikKBgQMBAECAhIE3QUEEhoZIFVzZSBKYXZhU2NyaXB0IG51bWJlcnMuCgoPCgcEDAQBAgIBEgTdBQQNCg8KBwQMBAECAgISBN0FEBEKmQoKBAQMAgMSBPYFAisaigogU2hvdWxkIHRoaXMgZmllbGQgYmUgcGFyc2VkIGxhemlseT8gIExhenkgYXBwbGllcyBvbmx5IHRvIG1lc3NhZ2UtdHlwZQogZmllbGRzLiAgSXQgbWVhbnMgdGhhdCB3aGVuIHRoZSBvdXRlciBtZXNzYWdlIGlzIGluaXRpYWxseSBwYXJzZWQsIHRoZQogaW5uZXIgbWVzc2FnZSdzIGNvbnRlbnRzIHdpbGwgbm90IGJlIHBhcnNlZCBidXQgaW5zdGVhZCBzdG9yZWQgaW4gZW5jb2RlZAogZm9ybS4gIFRoZSBpbm5lciBtZXNzYWdlIHdpbGwgYWN0dWFsbHkgYmUgcGFyc2VkIHdoZW4gaXQgaXMgZmlyc3QgYWNjZXNzZWQuCgogVGhpcyBpcyBvbmx5IGEgaGludC4gIEltcGxlbWVudGF0aW9ucyBhcmUgZnJlZSB0byBjaG9vc2Ugd2hldGhlciB0byB1c2UKIGVhZ2VyIG9yIGxhenkgcGFyc2luZyByZWdhcmRsZXNzIG9mIHRoZSB2YWx1ZSBvZiB0aGlzIG9wdGlvbi4gIEhvd2V2ZXIsCiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRydWUgc3VnZ2VzdHMgdGhhdCB0aGUgcHJvdG9jb2wgYXV0aG9yIGJlbGlldmVzIHRoYXQKIHVzaW5nIGxhenkgcGFyc2luZyBvbiB0aGlzIGZpZWxkIGlzIHdvcnRoIHRoZSBhZGRpdGlvbmFsIGJvb2trZWVwaW5nCiBvdmVyaGVhZCB0eXBpY2FsbHkgbmVlZGVkIHRvIGltcGxlbWVudCBpdC4KCiBUaGlzIG9wdGlvbiBkb2VzIG5vdCBhZmZlY3QgdGhlIHB1YmxpYyBpbnRlcmZhY2Ugb2YgYW55IGdlbmVyYXRlZCBjb2RlOwogYWxsIG1ldGhvZCBzaWduYXR1cmVzIHJlbWFpbiB0aGUgc2FtZS4gIEZ1cnRoZXJtb3JlLCB0aHJlYWQtc2FmZXR5IG9mIHRoZQogaW50ZXJmYWNlIGlzIG5vdCBhZmZlY3RlZCBieSB0aGlzIG9wdGlvbjsgY29uc3QgbWV0aG9kcyByZW1haW4gc2FmZSB0bwogY2FsbCBmcm9tIG11bHRpcGxlIHRocmVhZHMgY29uY3VycmVudGx5LCB3aGlsZSBub24tY29uc3QgbWV0aG9kcyBjb250aW51ZQogdG8gcmVxdWlyZSBleGNsdXNpdmUgYWNjZXNzLgoKIE5vdGUgdGhhdCBsYXp5IG1lc3NhZ2UgZmllbGRzIGFyZSBzdGlsbCBlYWdlcmx5IHZlcmlmaWVkIHRvIGNoZWNrCiBpbGwtZm9ybWVkIHdpcmVmb3JtYXQgb3IgbWlzc2luZyByZXF1aXJlZCBmaWVsZHMuIENhbGxpbmcgSXNJbml0aWFsaXplZCgpCiBvbiB0aGUgb3V0ZXIgbWVzc2FnZSB3b3VsZCBmYWlsIGlmIHRoZSBpbm5lciBtZXNzYWdlIGhhcyBtaXNzaW5nIHJlcXVpcmVkCiBmaWVsZHMuIEZhaWxlZCB2ZXJpZmljYXRpb24gd291bGQgcmVzdWx0IGluIHBhcnNpbmcgZmFpbHVyZSAoZXhjZXB0IHdoZW4KIHVuaW5pdGlhbGl6ZWQgbWVzc2FnZXMgYXJlIGFjY2VwdGFibGUpLgoKDQoFBAwCAwQSBPYFAgoKDQoFBAwCAwUSBPYFCw8KDQoFBAwCAwESBPYFEBQKDQoFBAwCAwMSBPYFFxgKDQoFBAwCAwgSBPYFGSoKDQoFBAwCAwcSBPYFJCkKrwEKBAQMAgQSBPsFAjcaoAEgdW52ZXJpZmllZF9sYXp5IGRvZXMgbm8gY29ycmVjdG5lc3MgY2hlY2tzIG9uIHRoZSBieXRlIHN0cmVhbS4gVGhpcyBzaG91bGQKIG9ubHkgYmUgdXNlZCB3aGVyZSBsYXp5IHdpdGggdmVyaWZpY2F0aW9uIGlzIHByb2hpYml0aXZlIGZvciBwZXJmb3JtYW5jZQogcmVhc29ucy4KCg0KBQQMAgQEEgT7BQIKCg0KBQQMAgQFEgT7BQsPCg0KBQQMAgQBEgT7BRAfCg0KBQQMAgQDEgT7BSIkCg0KBQQMAgQIEgT7BSU2Cg0KBQQMAgQHEgT7BTA1CugBCgQEDAIFEgSBBgIxGtkBIElzIHRoaXMgZmllbGQgZGVwcmVjYXRlZD8KIERlcGVuZGluZyBvbiB0aGUgdGFyZ2V0IHBsYXRmb3JtLCB0aGlzIGNhbiBlbWl0IERlcHJlY2F0ZWQgYW5ub3RhdGlvbnMKIGZvciBhY2Nlc3NvcnMsIG9yIGl0IHdpbGwgYmUgY29tcGxldGVseSBpZ25vcmVkOyBpbiB0aGUgdmVyeSBsZWFzdCwgdGhpcwogaXMgYSBmb3JtYWxpemF0aW9uIGZvciBkZXByZWNhdGluZyBm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IG9mIHRoaXMgbWVzc2FnZS4gU2VlIGFib3ZlLgoKDAoEBBEFARIE+wcNGAoNCgUEEQUBARIE+wcNEQoNCgUEEQUBAhIE+wcVGAqLAwoCBBISBoQIAJgIARr8AiBBIG1lc3NhZ2UgcmVwcmVzZW50aW5nIGEgb3B0aW9uIHRoZSBwYXJzZXIgZG9lcyBub3QgcmVjb2duaXplLiBUaGlzIG9ubHkKIGFwcGVhcnMgaW4gb3B0aW9ucyBwcm90b3MgY3JlYXRlZCBieSB0aGUgY29tcGlsZXI6OlBhcnNlciBjbGFzcy4KIERlc2NyaXB0b3JQb29sIHJlc29sdmVzIHRoZXNlIHdoZW4gYnVpbGRpbmcgRGVzY3JpcHRvciBvYmplY3RzLiBUaGVyZWZvcmUsCiBvcHRpb25zIHByb3RvcyBpbiBkZXNjcmlwdG9yIG9iamVjdHMgKGUuZy4gcmV0dXJuZWQgYnkgRGVzY3JpcHRvcjo6b3B0aW9ucygpLAogb3IgcHJvZHVjZWQgYnkgRGVzY3JpcHRvcjo6Q29weVRvKCkpIHdpbGwgbmV2ZXIgaGF2ZSBVbmludGVycHJldGVkT3B0aW9ucwogaW4gdGhlbS4KCgsKAwQSARIEhAgIGwrLAgoEBBIDABIGiggCjQgDGroCIFRoZSBuYW1lIG9mIHRoZSB1bmludGVycHJldGVkIG9wdGlvbi4gIEVhY2ggc3RyaW5nIHJlcHJlc2VudHMgYSBzZWdtZW50IGluCiBhIGRvdC1zZXBhcmF0ZWQgbmFtZS4gIGlzX2V4dGVuc2lvbiBpcyB0cnVlIGlmZiBhIHNlZ21lbnQgcmVwcmVzZW50cyBhbgogZXh0ZW5zaW9uIChkZW5vdGVkIHdpdGggcGFyZW50aGVzZXMgaW4gb3B0aW9ucyBzcGVjcyBpbiAucHJvdG8gZmlsZXMpLgogRS5nLix7IFsiZm9vIiwgZmFsc2VdLCBbImJhci5iYXoiLCB0cnVlXSwgWyJtb28iLCBmYWxzZV0gfSByZXByZXNlbnRzCiAiZm9vLihiYXIuYmF6KS5tb28iLgoKDQoFBBIDAAESBIoIChIKDgoGBBIDAAIAEgSLCAQiCg8KBwQSAwACAAQSBIsIBAwKDwoHBBIDAAIABRIEiwgNEwoPCgcEEgMAAgABEgSLCBQdCg8KBwQSAwACAAMSBIsIICEKDgoGBBIDAAIBEgSMCAQjCg8KBwQSAwACAQQSBIwIBAwKDwoHBBIDAAIBBRIEjAgNEQoPCgcEEgMAAgEBEgSMCBIeCg8KBwQSAwACAQMSBIwIISIKDAoEBBICABIEjggCHQoNCgUEEgIABBIEjggCCgoNCgUEEgIABhIEjggLEwoNCgUEEgIAARIEjggUGAoNCgUEEgIAAxIEjggbHAqcAQoEBBICARIEkggCJxqNASBUaGUgdmFsdWUgb2YgdGhlIHVuaW50ZXJwcmV0ZWQgb3B0aW9uLCBpbiB3aGF0ZXZlciB0eXBlIHRoZSB0b2tlbml6ZXIKIGlkZW50aWZpZWQgaXQgYXMgZHVyaW5nIHBhcnNpbmcuIEV4YWN0bHkgb25lIG9mIHRoZXNlIHNob3VsZCBiZSBzZXQuCgoNCgUEEgIBBBIEkggCCgoNCgUEEgIBBRIEkggLEQoNCgUEEgIBARIEkggSIgoNCgUEEgIBAxIEkgglJgoMCgQEEgICEgSTCAIpCg0KBQQSAgIEEgSTCAIKCg0KBQQSAgIFEgSTCAsRCg0KBQQSAgIBEgSTCBIkCg0KBQQSAgIDEgSTCCcoCgwKBAQSAgMSBJQIAigKDQoFBBICAwQSBJQIAgoKDQoFBBICAwUSBJQICxAKDQoFBBICAwESBJQIESMKDQoFBBICAwMSBJQIJicKDAoEBBICBBIElQgCIwoNCgUEEgIEBBIElQgCCgoNCgUEEgIEBRIElQgLEQoNCgUEEgIEARIElQgSHgoNCgUEEgIEAxIElQghIgoMCgQEEgIFEgSWCAIiCg0KBQQSAgUEEgSWCAIKCg0KBQQSAgUFEgSWCAsQCg0KBQQSAgUBEgSWCBEdCg0KBQQSAgUDEgSWCCAhCgwKBAQSAgYSBJcIAiYKDQoFBBICBgQSBJcIAgoKDQoFBBICBgUSBJcICxEKDQoFBBICBgESBJcIEiEKDQoFBBICBgMSBJcIJCUK2wMKAgQTEgajCACJCgEa+wIgVE9ETyBFbnVtcyBpbiBDKysgZ2VuY29kZSAoYW5kIHBvdGVudGlhbGx5IG90aGVyIGxhbmd1YWdlcykgYXJlCiBub3Qgd2VsbCBzY29wZWQuICBUaGlzIG1lYW5zIHRoYXQgZWFjaCBvZiB0aGUgZmVhdHVyZSBlbnVtcyBiZWxvdyBjYW4gY2xhc2gKIHdpdGggZWFjaCBvdGhlci4gIFRoZSBzaG9ydCBuYW1lcyB3ZSd2ZSBjaG9zZW4gbWF4aW1pemUgY2FsbC1zaXRlCiByZWFkYWJpbGl0eSwgYnV0IGxlYXZlIHVzIHZlcnkgb3BlbiB0byB0aGlzIHNjZW5hcmlvLiAgQSBmdXR1cmUgZmVhdHVyZSB3aWxsCiBiZSBkZXNpZ25lZCBhbmQgaW1wbGVtZW50ZWQgdG8gaGFuZGxlIHRoaXMsIGhvcGVmdWxseSBiZWZvcmUgd2UgZXZlciBoaXQgYQogY29uZmxpY3QgaGVyZS4KMk8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogRmVhdHVyZXMKCgsKAwQTARIEowgIEgoOCgQEEwQAEgakCAKpCAMKDQoFBBMEAAESBKQIBxQKDgoGBBMEAAIAEgSlCAQfCg8KBwQTBAACAAESBKUIBBoKDwoHBBMEAAIAAhIEpQgdHgoOCgYEEwQAAgESBKYIBBEKDwoHBBMEAAIBARIEpggEDAoPCgcEEwQAAgECEgSmCA8QCg4KBgQTBAACAhIEpwgEEQoPCgcEEwQAAgIBEgSnCAQMCg8KBwQTBAACAgISBKcIDxAKDgoGBBMEAAIDEgSoCAQYCg8KBwQTBAACAwESBKgIBBMKDwoHBBMEAAIDAhIEqAgWFwoOCgQEEwIAEgaqCAK0CAQKDQoFBBMCAAQSBKoIAgoKDQoFBBMCAAYSBKoICxgKDQoFBBMCAAESBKoIGScKDQoFBBMCAAMSBKoIKisKDwoFBBMCAAgSBqoILLQIAwoOCgYEEwIACBESBKsIBCEKDwoHBBMCAAgTABIErAgEHwoPCgcEEwIACBMBEgStCAQeChAKBgQTAgAIFhIGrggEsAgFCg8KBwQTAgAIFAASBLEIBEUKDwoHBBMCAAgUARIEsggERQoPCgcEEwIACBQCEgSzCARDCg4KBAQTBAESBrYIAroIAwoNCgUEEwQBARIEtggHDwoOCgYEEwQBAgASBLcIBBoKDwoHBBMEAQIAARIEtwgEFQoPCgcEEwQBAgACEgS3CBgZCg4KBgQTBAECARIEuAgEDQoPCgcEEwQBAgEBEgS4CAQICg8KBwQTBAECAQISBLgICwwKDgoGBBMEAQICEgS5CAQPCg8KBwQTBAECAgESBLkIBAoKDwoHBBMEAQICAhIEuQgNDgoOCgQEEwIBEga7CALECAQKDQoFBBMCAQQSBLsIAgoKDQoFBBMCAQYSBLsICxMKDQoFBBMCAQESBLsIFB0KDQoFBBMCAQMSBLsIICEKDwoFBBMCAQgSBrsIIsQIAwoOCgYEEwIBCBESBLwIBCEKDwoHBBMCAQgTABIEvQgEHgoPCgcEEwIBCBMBEgS+CAQeChAKBgQTAgEIFhIGvwgEwQgFCg8KBwQTAgEIFAASBMIIBEMKDwoHBBMCAQgUARIEwwgEQQoOCgQEEwQCEgbGCALKCAMKDQoFBBMEAgESBMYIBxwKDgoGBBMEAgIAEgTHCAQoCg8KBwQTBAICAAESBMcIBCMKDwoHBBMEAgIAAhIExwgmJwoOCgYEEwQCAgESBMgIBA8KDwoHBBMEAgIBARIEyAgECgoPCgcEEwQCAgECEgTICA0OCg4KBgQTBAICAhIEyQgEEQoPCgcEEwQCAgIBEgTJCAQMCg8KBwQTBAICAgISBMkIDxAKDgoEBBMCAhIGywgC1AgECg0KBQQTAgIEEgTLCAIKCg0KBQQTAgIGEgTLCAsgCg0KBQQTAgIBEgTLCCE4Cg0KBQQTAgIDEgTLCDs8Cg8KBQQTAgIIEgbLCD3UCAMKDgoGBBMCAggREgTMCAQhCg8KBwQTAgIIEwASBM0IBB8KDwoHBBMCAggTARIEzggEHgoQCgYEEwICCBYSBs8IBNEIBQoPCgcEEwICCBQAEgTSCARFCg8KBwQTAgIIFAESBNMIBEMKDgoEBBMEAxIG1ggC2wgDCg0KBQQTBAMBEgTWCAcVCg4KBgQTBAMCABIE1wgEIAoPCgcEEwQDAgABEgTXCAQbCg8KBwQTBAMCAAISBNcIHh8KDgoGBBMEAwIBEgTYCAQPCg8KBwQTBAMCAQESBNgIBAoKDwoHBBMEAwIBAhIE2AgNDgoOCgYEEwQDAgISBNkIBA0KDwoHBBMEAwICARIE2QgECAoPCgcEEwQDAgICEgTZCAsMCg0KBQQTBAMEEgTaCAQPCg4KBgQTBAMEABIE2ggNDgoPCgcEEwQDBAABEgTaCA0OCg8KBwQTBAMEAAISBNoIDQ4KDgoEBBMCAxIG3AgC5QgECg0KBQQTAgMEEgTcCAIKCg0KBQQTAgMGEgTcCAsZCg0KBQQTAgMBEgTcCBopCg0KBQQTAgMDEgTcCCwtCg8KBQQTAgMIEgbcCC7lCAMKDgoGBBMCAwgREgTdCAQhCg8KBwQTAgMIEwASBN4IBB8KDwoHBBMCAwgTARIE3wgEHgoQCgYEEwIDCBYSBuAIBOIIBQoPCgcEEwIDCBQAEgTjCARBCg8KBwQTAgMIFAESBOQIBEMKDgoEBBMEBBIG5wgC6wgDCg0KBQQTBAQBEgTnCAcWCg4KBgQTBAQCABIE6AgEIQoPCgcEEwQEAgABEgToCAQcCg8KBwQTBAQCAAISBOgIHyAKDgoGBBMEBAIBEgTpCAQYCg8KBwQTBAQCAQESBOkIBBMKDwoHBBMEBAIBAhIE6QgWFwoOCgYEEwQEAgISBOoIBBIKDwoHBBMEBAICARIE6ggEDQoPCgcEEwQEAgICEgTqCBARCg4KBAQTAgQSBuwIAvQIBAoNCgUEEwIEBBIE7AgCCgoNCgUEEwIEBhIE7AgLGgoNCgUEEwIEARIE7AgbKwoNCgUEEwIEAxIE7AguLwoPCgUEEwIECBIG7Agw9AgDCg4KBgQTAgQIERIE7QgEIQoPCgcEEwIECBMAEgTuCAQfCg8KBwQTAgQIEwESBO8IBB4KEAoGBBMCBAgWEgbwCATyCAUKDwoHBBMCBAgUABIE8wgETAoOCgQEEwQFEgb2CAL6CAMKDQoFBBMEBQESBPYIBxEKDgoGBBMEBQIAEgT3CAQcCg8KBwQTBAUCAAESBPcIBBcKDwoHBBMEBQIAAhIE9wgaGwoOCgYEEwQFAgESBPgIBA4KDwoHBBMEBQIBARIE+AgECQoPCgcEEwQFAgECEgT4CAwNCg4KBgQTBAUCAhIE+QgEGwoPCgcEEwQFAgIBEgT5CAQWCg8KBwQTBAUCAgISBPkIGRoKDgoEBBMCBRIG+wgChQkECg0KBQQTAgUEEgT7CAIKCg0KBQQTAgUGEgT7CAsVCg0KBQQTAgUBEgT7CBYhCg0KBQQTAgUDEgT7CCQlCg8KBQQTAgUIEgb7CCaFCQMKDgoGBBMCBQgREgT8CAQhCg8KBwQTAgUIEwASBP0IBCEKDwoHBBMCBQgTARIE/ggEHgoPCgcEEwIFCBMCEgT/CAQeChAKBgQTAgUIFhIGgAkEggkFCg8KBwQTAgUIFAASBIMJBE8KDwoHBBMCBQgUARIEhAkEQgoOCgQEEwQGEgaHCQKMCQMKDQoFBBMEBgESBIcJBxkKDgoGBBMEBgIAEgSICQQlCg8KBwQTBAYCAAESBIgJBCAKDwoHBBMEBgIAAhIEiAkjJAoOCgYEEwQGAgESBIkJBBIKDwoHBBMEBgIBARIEiQkEDQoPCgcEEwQGAgECEgSJCRARCg4KBgQTBAYCAhIEigkEFQoPCgcEEwQGAgIBEgSKCQQQCg8KBwQTBAYCAgISBIoJExQKDgoGBBMEBgIDEgSLCQQSCg8KBwQTBAYCAwESBIsJBA0KDwoHBBMEBgIDAhIEiwkQEQoOCgQEEwIGEgaNCQKeCQQKDQoFBBMCBgQSBI0JAgoKDQoFBBMCBgYSBI0JCx0KDQoFBBMCBgESBI0JHjIKDQoFBBMCBgMSBI0JNTYKDwoFBBMCBggSBo0JN54JAwoOCgYEEwIGCBESBI4JBCAKDwoHBBMCBggTABIEjwkEHgoPCgcEEwIGCBMBEgSQCQQpCg8KBwQTAgYIEwISBJEJBCEKDwoHBBMCBggTAxIEkgkEHwoPCgcEEwIGCBMEEgSTCQQfCg8KBwQTAgYIEwUSBJQJBB4KDwoHBBMCBggTBhIElQkEJAoPCgcEEwIGCBMHEgSWCQQhCg8KBwQTAgYIEwgSBJcJBCAKEAoGBBMCBggWEgaYCQSaCQUKDwoHBBMCBggUABIEmwkESQoPCgcEEwIGCBQBEgScCQRECg8KBwQTAgYIFAISBJ0JBEQKDgoEBBMDABIGoAkCswkDCg0KBQQTAwABEgSgCQobChAKBgQTAwAEABIGoQkEsQkFCg8KBwQTAwAEAAESBKEJCSAKEAoIBBMDAAQAAgASBKIJBiwKEQoJBBMDAAQAAgABEgSiCQYnChEKCQQTAwAEAAIAAhIEogkqKwpOCggEEwMABAACARIEpQkGFRo8IERlZmF1bHQgcHJlLUVESVRJT05fMjAyNCwgYWxsIFVOU0VUIHZpc2liaWxpdHkgYXJlIGV4cG9ydC4KChEKCQQTAwAEAAIBARIEpQkGEAoRCgkEEwMABAACAQISBKUJExQKVQoIBBMDAAQAAgISBKgJBhsaQyBBbGwgdG9wLWxldmVsIHN5bWJvbHMgZGVmYXVsdCB0byBleHBvcnQsIG5lc3RlZCBkZWZhdWx0IHRvIGxvY2FsLgoKEQoJBBMDAAQAAgIBEgSoCQYWChEKCQQTAwAEAAICAhIEqAkZGgoxCggEEwMABAACAxIEqwkGFBofIEFsbCBzeW1ib2xzIGRlZmF1bHQgdG8gbG9jYWwuCgoRCgkEEwMABAACAwESBKsJBg8KEQoJBBMDAAQAAgMCEgSrCRITCskBCggEEwMABAACBBIEsAkGERq2ASBBbGwgc3ltYm9scyBsb2NhbCBieSBkZWZhdWx0LiBOZXN0ZWQgdHlwZXMgY2Fubm90IGJlIGV4cG9ydGVkLgogV2l0aCBzcGVjaWFsIGNhc2UgY2F2ZWF0IGZvciBtZXNzYWdlIHsgZW51bSB7fSByZXNlcnZlZCAxIHRvIG1heDsgfQogVGhpcyBpcyB0aGUgcmVjb21tZW5kZWQgc2V0dGluZyBmb3IgbmV3IHByb3Rvcy4KChEKCQQTAwAEAAIEARIEsAkGDAoRCgkEEwMABAACBAISBLAJDxAKDQoFBBMDAAkSBLIJBBYKDgoGBBMDAAkAEgSyCQ0VCg8KBwQTAwAJAAESBLIJDQ4KDwoHBBMDAAkAAhIEsgkSFQoOCgQEEwIHEga0CQK9CQgKDQoFBBMCBwQSBLQJAgoKDQoFBBMCBwYSBLQJCzQKDQoFBBMCBwESBLQJNU4KDQoFBBMCBwMSBLUJBgcKDwoFBBMCBwgSBrUJCL0JBwoOCgYEEwIHCBESBLYJCCQKDwoHBBMCBwgTABIEtwkIIgoQCgYEEwIHCBYSBrgJCLoJCQoPCgcEEwIHCBQAEgS7CQhLCg8KBwQTAgcIFAESBLwJCE8KDgoEBBMDARIGvwkCzQkDCg0KBQQTAwEBEgS/CQocChAKBgQTAwEEABIGwAkEzAkFCg8KBwQTAwEEAAESBMAJCRsKEAoIBBMDAQQAAgASBMEJBh8KEQoJBBMDAQQAAgABEgTBCQYaChEKCQQTAwEEAAIAAhIEwQkdHgqBAgoIBBMDAQQAAgESBMcJBiQa7gEgRGVmYXVsdCBwcmUtRURJVElPTl8yMDI2OiB0aGVyZSBhcmUgbm8gbGltaXQgZW5mb3JjZW1lbnQgYXQgdGhlIHByb3RvYwogbGV2ZWwuIFByYWN0aWNhbCBsaW1pdHMgc3RpbGwgZXhpc3QsIGJ1dCB0aGV5IHdpbGwgdGVuZCB0byBmYWlsIHdoaWxlCiBjb21waWxpbmcgcHJvdG9jLWdlbmVyYXRlZCBjb2RlLCBhbmQgdGhlc2UgbGltaXRzIHRlbmQgdG8gYmUgbGFuZ3VhZ2UKIG9yIHRvb2xjaGFpbiBzcGVjaWZpYy4KChEKCQQTAwEEAAIBARIExwkGHwoRCgkEEwMBBAACAQISBMcJIiMKnwEKCAQTAwEEAAICEgTLCQYbGowBIEEgc2V0IG9mIGxpbWl0cyBlbmZvcmNlZCBieSBFZGl0aW9uIDIwMjYgYnkgZGVmYXVsdC4gRm9yIGEgZGV0YWlsZWQKIGxpc3Qgb2YgYWxsIHRoZSBsaW1pdHMgcGxlYXNlIGNvbnN1bHQgdGhlIEVkaXRpb24gMjAyNiBkb2N1bWVudGF0aW9uLgoKEQoJBBMDAQQAAgIBEgTLCQYWChEKCQQTAwEEAAICAhIEywkZGgoOCgQEEwIIEgbOCQLcCQQKDQoFBBMCCAQSBM4JAgoKDQoFBBMCCAYSBM4JCzAKDQoFBBMCCAESBM4JMUUKDQoFBBMCCAMSBM4JSEkKDwoFBBMCCAgSBs4JStwJAwoOCgYEEwIICBESBM8JBCAKDwoHBBMCCAgTABIE0AkEHgoPCgcEEwIICBMBEgTRCQQhCg8KBwQTAggIEwISBNIJBB8KDwoHBBMCCAgTAxIE0wkEHwoQCgYEEwIICBYSBtQJBNYJBQoRCgcEEwIICBQAEgbXCQTaCQUKDwoHBBMCCAgUARIE2wkESwoLCgMEEwkSBN4JAg8KDAoEBBMJABIE3gkLDgoNCgUEEwkAARIE3gkLDgoNCgUEEwkAAhIE3gkLDgoNCgMEEwUSBuAJAoUKBAoMCgQEEwUAEgTgCQ0ZCg0KBQQTBQABEgTgCQ0RCg0KBQQTBQACEgTgCRUZCiMKAwQTBRIEhwoCGiIWIEZvciBpbnRlcm5hbCB0ZXN0aW5nCgoMCgQEEwUBEgSHCg0ZCg0KBQQTBQEBEgSHCg0RCg0KBQQTBQECEgSHChUZCjoKAwQTBRIEiAoCEyItIGZvciBodHRwczovL2dpdGh1Yi5jb20vYnVmYnVpbGQvcHJvdG9idWYtZXMKCgwKBAQTBQISBIgKDRIKDQoFBBMFAgESBIgKDRIKDQoFBBMFAgISBIgKDRIKrAIKAgQUEgaPCgCpCgEanQIgQSBjb21waWxlZCBzcGVjaWZpY2F0aW9uIGZvciB0aGUgZGVmYXVsdHMgb2YgYSBzZXQgb2YgZmVhdHVyZXMuICBUaGVzZQogbWVzc2FnZXMgYXJlIGdlbmVyYXRlZCBmcm9tIEZlYXR1cmVTZXQgZXh0ZW5zaW9ucyBhbmQgY2FuIGJlIHVzZWQgdG8gc2VlZAogZmVhdHVyZSByZXNvbHV0aW9uLiBUaGUgcmVzb2x1dGlvbiB3aXRoIHRoaXMgb2JqZWN0IGJlY29tZXMgYSBzaW1wbGUgc2VhcmNoCiBmb3IgdGhlIGNsb3Nlc3QgbWF0Y2hpbmcgZWRpdGlvbiwgZm9sbG93ZWQgYnkgcHJvdG8gbWVyZ2VzLgoKCwoDBBQBEgSPCggaCrACCgQEFAMAEgaUCgKfCgManwIgQSBtYXAgZnJvbSBldmVyeSBrbm93biBlZGl0aW9uIHdpdGggYSB1bmlxdWUgc2V0IG9mIGRlZmF1bHRzIHRvIGl0cwogZGVmYXVsdHMuIE5vdCBhbGwgZWRpdGlvbnMgbWF5IGJlIGNvbnRhaW5lZCBoZXJlLiAgRm9yIGEgZ2l2ZW4gZWRpdGlvbiwKIHRoZSBkZWZhdWx0cyBhdCB0aGUgY2xvc2VzdCBtYXRjaGluZyBlZGl0aW9uIG9yZGVyZWQgYXQgb3IgYmVmb3JlIGl0IHNob3VsZAogYmUgdXNlZC4gIFRoaXMgZmllbGQgbXVzdCBiZSBpbiBzdHJpY3QgYXNjZW5kaW5nIG9yZGVyIGJ5IGVkaXRpb24uCgoNCgUEFAMAARIElAoKIgoOCgYEFAMAAgASBJUKBCEKDwoHBBQDAAIABBIElQoEDAoPCgcEFAMAAgAGEgSVCg0UCg8KBwQUAwACAAESBJUKFRwKDwoHBBQDAAIAAxIElQofIApOCgYEFAMAAgESBJgKBDEaPiBEZWZhdWx0cyBvZiBmZWF0dXJlcyB0aGF0IGNhbiBiZSBvdmVycmlkZGVuIGluIHRoaXMgZWRpdGlvbi4KCg8KBwQUAwACAQQSBJgKBAwKDwoHBBQDAAIBBhIEmAoNFwoPCgcEFAMAAgEBEgSYChgsCg8KBwQUAwACAQMSBJgKLzAKUAoGBBQDAAICEgSbCgQrGkAgRGVmYXVsdHMgb2YgZmVhdHVyZXMgdGhhdCBjYW4ndCBiZSBvdmVycmlkZGVuIGluIHRoaXMgZWRpdGlvbi4KCg8KBwQUAwACAgQSBJsKBAwKDwoHBBQDAAICBhIEmwoNFwoPCgcEFAMAAgIBEgSbChgmCg8KBwQUAwACAgMSBJsKKSoKDQoFBBQDAAkSBJ0KBBIKDgoGBBQDAAkAEgSdCg0OCg8KBwQUAwAJAAESBJ0KDQ4KDwoHBBQDAAkAAhIEnQoNDgoOCgYEFAMACQESBJ0KEBEKDwoHBBQDAAkBARIEnQoQEQoPCgcEFAMACQECEgSdChARCg0KBQQUAwAKEgSeCgQYCg4KBgQUAwAKABIEngoNFwoMCgQEFAIAEgSgCgIxCg0KBQQUAgAEEgSgCgIKCg0KBQQUAgAGEgSgCgsjCg0KBQQUAgABEgSgCiQsCg0KBQQUAgADEgSgCi8wCoIBCgQEFAIBEgSkCgInGnQgVGhlIG1pbmltdW0gc3VwcG9ydGVkIGVkaXRpb24gKGluY2x1c2l2ZSkgd2hlbiB0aGlzIHdhcyBjb25zdHJ1Y3RlZC4KIEVkaXRpb25zIGJlZm9yZSB0aGlzIHdpbGwgbm90IGhhdmUgZGVmYXVsdHMuCgoNCgUEFAIBBBIEpAoCCgoNCgUEFAIBBhIEpAoLEgoNCgUEFAIBARIEpAoTIgoNCgUEFAIBAxIEpAolJgqGAQoEBBQCAhIEqAoCJxp4IFRoZSBtYXhpbXVtIGtub3duIGVkaXRpb24gKGluY2x1c2l2ZSkgd2hlbiB0aGlzIHdhcyBjb25zdHJ1Y3RlZC4gRWRpdGlvbnMKIGFmdGVyIHRoaXMgd2lsbCBub3QgaGF2ZSByZWxpYWJsZSBkZWZhdWx0cy4KCg0KBQQUAgIEEgSoCgIKCg0KBQQUAgIGEgSoCgsSCg0KBQQUAgIBEgSoChMiCg0KBQQUAgIDEgSoCiUmCtoBCgIEFRIGsAoAuAsBGmogRW5jYXBzdWxhdGVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSBmcm9tIHdoaWNoIGEKIEZpbGVEZXNjcmlwdG9yUHJvdG8gd2FzIGdlbmVyYXRlZC4KMmAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogT3B0aW9uYWwgc291cmNlIGNvZGUgaW5mbwoKCwoDBBUBEgSwCggWCoIRCgQEFQIAEgTcCgIhGvMQIEEgTG9jYXRpb24gaWRlbnRpZmllcyBhIHBpZWNlIG9mIHNvdXJjZSBjb2RlIGluIGEgLnByb3RvIGZpbGUgd2hpY2gKIGNvcnJlc3BvbmRzIHRvIGEgcGFydGljdWxhciBkZWZpbml0aW9uLiAgVGhpcyBpbmZvcm1hdGlvbiBpcyBpbnRlbmRlZAogdG8gYmUgdXNlZnVsIHRvIElERXMsIGNvZGUgaW5kZXhlcnMsIGRvY3VtZW50YXRpb24gZ2VuZXJhdG9ycywgYW5kIHNpbWlsYXIKIHRvb2xzLgoKIEZvciBleGFtcGxlLCBzYXkgd2UgaGF2ZSBhIGZpbGUgbGlrZToKICAgbWVzc2FnZSBGb28gewogICAgIG9wdGlvbmFsIHN0cmluZyBmb28gPSAxOwogICB9CiBMZXQncyBsb29rIGF0IGp1c3QgdGhlIGZpZWxkIGRlZmluaXRpb246CiAgIG9wdGlvbmFsIHN0cmluZyBmb28gPSAxOwogICBeICAgICAgIF5eICAgICBeXiAgXiAgXl5eCiAgIGEgICAgICAgYmMgICAgIGRlICBmICBnaGkKIFdlIGhhdmUgdGhlIGZvbGxvd2luZyBsb2NhdGlvbnM6CiAgIHNwYW4gICBwYXRoICAgICAgICAgICAgICAgcmVwcmVzZW50cwogICBbYSxpKSAgWyA0LCAwLCAyLCAwIF0gICAgIFRoZSB3aG9sZSBmaWVsZCBkZWZpbml0aW9uLgogICBbYSxiKSAgWyA0LCAwLCAyLCAwLCA0IF0gIFRoZSBsYWJlbCAob3B0aW9uYWwpLgogICBbYyxkKSAgWyA0LCAwLCAyLCAwLCA1IF0gIFRoZSB0eXBlIChzdHJpbmcpLgogICBbZSxmKSAgWyA0LCAwLCAyLCAwLCAxIF0gIFRoZSBuYW1lIChmb28pLgogICBbZyxoKSAgWyA0LCAwLCAyLCAwLCAzIF0gIFRoZSBudW1iZXIgKDEpLgoKIE5vdGVzOgogLSBBIGxvY2F0aW9uIG1heSByZWZlciB0byBhIHJlcGVhdGVkIGZpZWxkIGl0c2VsZiAoaS5lLiBub3QgdG8gYW55CiAgIHBhcnRpY3VsYXIgaW5kZXggd2l0aGluIGl0KS4gIFRoaXMgaXMgdXNlZCB3aGVuZXZlciBhIHNldCBvZiBlbGVtZW50cyBhcmUKICAgbG9naWNhbGx5IGVuY2xvc2VkIGluIGEgc2luZ2xlIGNvZGUgc2VnbWVudC4gIEZvciBleGFtcGxlLCBhbiBlbnRpcmUKICAgZXh0ZW5kIGJsb2NrIChwb3NzaWJseSBjb250YWluaW5nIG11bHRpcGxlIGV4dGVuc2lvbiBkZWZpbml0aW9ucykgd2lsbAogICBoYXZlIGFuIG91dGVyIGxvY2F0aW9uIHdob3NlIHBhdGggcmVmZXJzIHRvIHRoZSAiZXh0ZW5zaW9ucyIgcmVwZWF0ZWQKICAgZmllbGQgd2l0aG91dCBhbiBpbmRleC4KIC0gTXVsdGlwbGUgbG9jYXRpb25zIG1heSBoYXZlIHRoZSBzYW1lIHBhdGguICBUaGlzIGhhcHBlbnMgd2hlbiBhIHNpbmdsZQogICBsb2dpY2FsIGRlY2xhcmF0aW9uIGlzIHNwcmVhZCBvdXQgYWNyb3NzIG11bHRpcGxlIHBsYWNlcy4gIFRoZSBtb3N0CiAgIG9idmlvdXMgZXhhbXBsZSBpcyB0aGUgImV4dGVuZCIgYmxvY2sgYWdhaW4gLS0gdGhlcmUgbWF5IGJlIG11bHRpcGxlCiAgIGV4dGVuZCBibG9ja3MgaW4gdGhlIHNhbWUgc2NvcGUsIGVhY2ggb2Ygd2hpY2ggd2lsbCBoYXZlIHRoZSBzYW1lIHBhdGguCiAtIEEgbG9jYXRpb24ncyBzcGFuIGlzIG5vdCBhbHdheXMgYSBzdWJzZXQgb2YgaXRzIHBhcmVudCdzIHNwYW4uICBGb3IKICAgZXhhbXBsZSwgdGhlICJleHRlbmRlZSIgb2YgYW4gZXh0ZW5zaW9uIGRlY2xhcmF0aW9uIGFwcGVhcnMgYXQgdGhlCiAgIGJlZ2lubmluZyBvZiB0aGUgImV4dGVuZCIgYmxvY2sgYW5kIGlzIHNoYXJlZCBieSBhbGwgZXh0ZW5zaW9ucyB3aXRoaW4KICAgdGhlIGJsb2NrLgogLSBKdXN0IGJlY2F1c2UgYSBsb2NhdGlvbidzIHNwYW4gaXMgYSBzdWJzZXQgb2Ygc29tZSBvdGhlciBsb2NhdGlvbidzIHNwYW4KICAgZG9lcyBub3QgbWVhbiB0aGF0IGl0IGlzIGEgZGVzY2VuZGFudC4gIEZvciBleGFtcGxlLCBhICJncm91cCIgZGVmaW5lcwogICBib3RoIGEgdHlwZSBhbmQgYSBmaWVsZCBpbiBhIHNpbmdsZSBkZWNsYXJhdGlvbi4gIFRodXMsIHRoZSBsb2NhdGlvbnMKICAgY29ycmVzcG9uZGluZyB0byB0aGUgdHlwZSBhbmQgZmllbGQgYW5kIHRoZWlyIGNvbXBvbmVudHMgd2lsbCBvdmVybGFwLgogLSBDb2RlIHdoaWNoIHRyaWVzIHRvIGludGVycHJldCBsb2NhdGlvbnMgc2hvdWxkIHByb2JhYmx5IGJlIGRlc2lnbmVkIHRvCiAgIGlnbm9yZSB0aG9zZSB0aGF0IGl0IGRvZXNuJ3QgdW5kZXJzdGFuZCwgYXMgbW9yZSB0eXBlcyBvZiBsb2NhdGlvbnMgY291bGQKICAgYmUgcmVjb3JkZWQgaW4gdGhlIGZ1dHVyZS4KCg0KBQQVAgAEEgTcCgIKCg0KBQQVAgAGEgTcCgsTCg0KBQQVAgABEgTcChQcCg0KBQQVAgADEgTcCh8gCg4KBAQVAwASBt0KArALAwoNCgUEFQMAARIE3QoKEgqKBwoGBBUDAAIAEgT1CgQsGvkGIElkZW50aWZpZXMgd2hpY2ggcGFydCBvZiB0aGUgRmlsZURlc2NyaXB0b3JQcm90byB3YXMgZGVmaW5lZCBhdCB0aGlzCiBsb2NhdGlvbi4KCiBFYWNoIGVsZW1lbnQgaXMgYSBmaWVsZCBudW1iZXIgb3IgYW4gaW5kZXguICBUaGV5IGZvcm0gYSBwYXRoIGZyb20KIHRoZSByb290IEZpbGVEZXNjcmlwdG9yUHJvdG8gdG8gdGhlIHBsYWNlIHdoZXJlIHRoZSBkZWZpbml0aW9uIGFwcGVhcnMuCiBGb3IgZXhhbXBsZSwgdGhpcyBwYXRoOgogICBbIDQsIDMsIDIsIDcsIDEgXQogcmVmZXJzIHRvOgogICBmaWxlLm1lc3NhZ2VfdHlwZSgzKSAgLy8gNCwgMwogICAgICAgLmZpZWxkKDcpICAgICAgICAgLy8gMiwgNwogICAgICAgLm5hbWUoKSAgICAgICAgICAgLy8gMQogVGhpcyBpcyBiZWNhdXNlIEZpbGVEZXNjcmlwdG9yUHJvdG8ubWVzc2FnZV90eXBlIGhhcyBmaWVsZCBudW1iZXIgNDoKICAgcmVwZWF0ZWQgRGVzY3JpcHRvclByb3RvIG1lc3NhZ2VfdHlwZSA9IDQ7CiBhbmQgRGVzY3JpcHRvclByb3RvLmZpZWxkIGhhcyBmaWVsZCBudW1iZXIgMjoKICAgcmVwZWF0ZWQgRmllbGREZXNjcmlwdG9yUHJvdG8gZmllbGQgPSAyOwogYW5kIEZpZWxkRGVzY3JpcHRvclByb3RvLm5hbWUgaGFzIGZpZWxkIG51bWJlciAxOgogICBvcHRpb25hbCBzdHJpbmcgbmFtZSA9IDE7CgogVGh1cywgdGhlIGFib3ZlIHBhdGggZ2l2ZXMgdGhlIGxvY2F0aW9uIG9mIGEgZmllbGQgbmFtZS4gIElmIHdlIHJlbW92ZWQKIHRoZSBsYXN0IGVsZW1lbnQ6CiAgIFsgNCwgMywgMiwgNyBdCiB0aGlzIHBhdGggcmVmZXJzIHRvIHRoZSB3aG9sZSBmaWVsZCBkZWNsYXJhdGlvbiAoZnJvbSB0aGUgYmVnaW5uaW5nCiBvZiB0aGUgbGFiZWwgdG8gdGhlIHRlcm1pbmF0aW5nIHNlbWljb2xvbikuCgoPCgcEFQMAAgAEEgT1CgQMCg8KBwQVAwACAAUSBPUKDRIKDwoHBBUDAAIAARIE9QoTFwoPCgcEFQMAAgADEgT1ChobCg8KBwQVAwACAAgSBPUKHCsKEAoIBBUDAAIACAISBPUKHSoK0gIKBgQVAwACARIE/AoELBrBAiBBbHdheXMgaGFzIGV4YWN0bHkgdGhyZWUgb3IgZm91ciBlbGVtZW50czogc3RhcnQgbGluZSwgc3RhcnQgY29sdW1uLAogZW5kIGxpbmUgKG9wdGlvbmFsLCBvdGhlcndpc2UgYXNzdW1lZCBzYW1lIGFzIHN0YXJ0IGxpbmUpLCBlbmQgY29sdW1uLgogVGhlc2UgYXJlIHBhY2tlZCBpbnRvIGEgc2luZ2xlIGZpZWxkIGZvciBlZmZpY2llbmN5LiAgTm90ZSB0aGF0IGxpbmUKIGFuZCBjb2x1bW4gbnVtYmVycyBhcmUgemVyby1iYXNlZCAtLSB0eXBpY2FsbHkgeW91IHdpbGwgd2FudCB0byBhZGQKIDEgdG8gZWFjaCBiZWZvcmUgZGlzcGxheWluZyB0byBhIHVzZXIuCgoPCgcEFQMAAgEEEgT8CgQMCg8KBwQVAwACAQUSBPwKDRIKDwoHBBUDAAIBARIE/AoTFwoPCgcEFQMAAgEDEgT8ChobCg8KBwQVAwACAQgSBPwKHCsKEAoIBBUDAAIBCAISBPwKHSoKpQwKBgQVAwACAhIErQsEKRqUDCBJZiB0aGlzIFNvdXJjZUNvZGVJbmZvIHJlcHJlc2VudHMgYSBjb21wbGV0ZSBkZWNsYXJhdGlvbiwgdGhlc2UgYXJlIGFueQogY29tbWVudHMgYXBwZWFyaW5nIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGRlY2xhcmF0aW9uIHdoaWNoIGFwcGVhciB0byBiZQogYXR0YWNoZWQgdG8gdGhlIGRlY2xhcmF0aW9uLgoKIEEgc2VyaWVzIG9mIGxpbmUgY29tbWVudHMgYXBwZWFyaW5nIG9uIGNvbnNlY3V0aXZlIGxpbmVzLCB3aXRoIG5vIG90aGVyCiB0b2tlbnMgYXBwZWFyaW5nIG9uIHRob3NlIGxpbmVzLCB3aWxsIGJlIHRyZWF0ZWQgYXMgYSBzaW5nbGUgY29tbWVudC4KCiBsZWFkaW5nX2RldGFjaGVkX2NvbW1lbnRzIHdpbGwga2VlcCBwYXJhZ3JhcGhzIG9mIGNvbW1lbnRzIHRoYXQgYXBwZWFyCiBiZWZvcmUgKGJ1dCBub3QgY29ubmVjdGVkIHRvKSB0aGUgY3VycmVudCBlbGVtZW50LiBFYWNoIHBhcmFncmFwaCwKIHNlcGFyYXRlZCBieSBlbXB0eSBsaW5lcywgd2lsbCBiZSBvbmUgY29tbWVudCBlbGVtZW50IGluIHRoZSByZXBlYXRlZAogZmllbGQuCgogT25seSB0aGUgY29tbWVudCBjb250ZW50IGlzIHByb3ZpZGVkOyBjb21tZW50IG1hcmtlcnMgKGUuZy4gLy8pIGFyZQogc3RyaXBwZWQgb3V0LiAgRm9yIGJsb2NrIGNvbW1lbnRzLCBsZWFkaW5nIHdoaXRlc3BhY2UgYW5kIGFuIGFzdGVyaXNrCiB3aWxsIGJlIHN0cmlwcGVkIGZyb20gdGhlIGJlZ2lubmluZyBvZiBlYWNoIGxpbmUgb3RoZXIgdGhhbiB0aGUgZmlyc3QuCiBOZXdsaW5lcyBhcmUgaW5jbHVkZWQgaW4gdGhlIG91dHB1dC4KCiBFeGFtcGxlczoKCiAgIG9wdGlvbmFsIGludDMyIGZvbyA9IDE7ICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIGZvby4KICAgLy8gQ29tbWVudCBhdHRhY2hlZCB0byBiYXIuCiAgIG9wdGlvbmFsIGludDMyIGJhciA9IDI7CgogICBvcHRpb25hbCBzdHJpbmcgYmF6ID0gMzsKICAgLy8gQ29tbWVudCBhdHRhY2hlZCB0byBiYXouCiAgIC8vIEFub3RoZXIgbGluZSBhdHRhY2hlZCB0byBiYXouCgogICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIG1vby4KICAgLy8KICAgLy8gQW5vdGhlciBsaW5lIGF0dGFjaGVkIHRvIG1vby4KICAgb3B0aW9uYWwgZG91YmxlIG1vbyA9IDQ7CgogICAvLyBEZXRhY2hlZCBjb21tZW50IGZvciBjb3JnZS4gVGhpcyBpcyBub3QgbGVhZGluZyBvciB0cmFpbGluZyBjb21tZW50cwogICAvLyB0byBtb28gb3IgY29yZ2UgYmVjYXVzZSB0aGVyZSBhcmUgYmxhbmsgbGluZXMgc2VwYXJhdGluZyBpdCBmcm9tCiAgIC8vIGJvdGguCgogICAvLyBEZXRhY2hlZCBjb21tZW50IGZvciBjb3JnZSBwYXJhZ3JhcGggMi4KCiAgIG9wdGlvbmFsIHN0cmluZyBjb3JnZSA9IDU7CiAgIC8qIEJsb2NrIGNvbW1lbnQgYXR0YWNoZWQKICAgICogdG8gY29yZ2UuICBMZWFkaW5nIGFzdGVyaXNrcwogICAgKiB3aWxsIGJlIHJlbW92ZWQuICovCiAgIC8qIEJsb2NrIGNvbW1lbnQgYXR0YWNoZWQgdG8KICAgICogZ3JhdWx0LiAqLwogICBvcHRpb25hbCBpbnQzMiBncmF1bHQgPSA2OwoKICAgLy8gaWdub3JlZCBkZXRhY2hlZCBjb21tZW50cy4KCg8KBwQVAwACAgQSBK0LBAwKDwoHBBUDAAICBRIErQsNEwoP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dWZfdW5pdHRlc3QaIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlwdG9yLnByb3RvIusBChxUZXN0TWVzc2FnZVdpdGhDdXN0b21PcHRpb25zEiYKBmZpZWxkMRgBIAEoCUIOCAHB4MMdLeF1CgIAAABSBmZpZWxkMRIhCgtvbmVvZl9maWVsZBgCIAEoBUgAUgpvbmVvZkZpZWxkIlMKBkFuRW51bRIWChJBTkVOVU1fVU5TUEVDSUZJRUQQABIPCgtBTkVOVU1fVkFMMRABEhYKC0FORU5VTV9WQUwyEAIaBbCG+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+BgoBDBIDFAASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjLTASBBdXRob3I6IGJlbmp5QGdvb2dsZS5jb20gKEJlbmp5IFdlaW5iZXJnZXIpCiAgQmFzZWQgb24gb3JpZ2luYWwgUHJvdG9jb2wgQnVmZmVycyBkZXNpZ24gYnkKICBTYW5qYXkgR2hlbWF3YXQsIEplZmYgRGVhbiwgYW5kIG90aGVycy4KCiBBIHByb3RvIGZpbGUgdXNlZCB0byB0ZXN0IHRoZSAiY3VzdG9tIG9wdGlvbnMiIGZlYXR1cmUgb2YgZ29vZ2xlLnByb3RvYnVmLgoy0QIgVGhpcyBmaWxlIGlzIGJhc2VkIG9uIHVuaXR0ZXN0X2N1c3RvbV9vcHRpb25zLnByb3RvIGluCiBzcmMvZ29vZ2xlL3Byb3RvYnVmLCBidXQgaXMgbW9kaWZpZWQgZm9yIHByb3RvMy4gSXQgY291bGQKIHBvdGVudGlhbGx5IGJlIG1vdmVkIGludG8gc3JjL2dvb2dsZS9wcm90b2J1ZiwgYnV0IGN1cnJlbnRseSBDIwogaXMgdGhlIG9ubHkgbGFuZ3VhZ2UgdGhhdCByZWFsbHkgbmVlZHMgaXQsIGFzIHdlIGRvbid0IHN1cHBvcnQKIHByb3RvMiBzeW50YXguIEl0J3MgY3V0IGRvd24gc2lnbmlmaWNhbnRseSBhcyBwcm90bzMgb25seSBzdXBwb3J0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CgcEEgQAAgABEgTNAgQPCg8KBwQSBAACAAISBM0CEhMKDgoGBBIEAAIBEgTOAgQ1Cg8KBwQSBAACAQESBM4CBBUKDwoHBBIEAAIBAhIEzgIYGQoPCgcEEgQAAgEDEgTOAho0ChIKCgQSBAACAQPmoF8SBM4CGzNiBnByb3RvMwrgBAoqY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnRfcHVibGljLnByb3RvEh9wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yIiMKE1B1YmxpY0ltcG9ydE1lc3NhZ2USDAoBZRgBIAEoBVIBZUIkqgIhR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3MuUHJvdG8ySsUDCgYSBAkAEQEKvgIKAQwSAwkAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyKCBBdXRob3I6IGxpdWppc2lAZ29vZ2xlLmNvbSAoUGhlcmwgTGl1KQoKCAoBAhIDCwAoCggKAQgSAw0APgoJCgIIJRIDDQA+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//wEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IMdGVzdEFsbFR5cGVzOoQBCiV0ZXN0X2V4dGVuc2lvbl9pbnNpZGVfdGFibGVfZXh0ZW5zaW9uEjIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RFeHRlbnNpb25JbnNpZGVUYWJsZRgFIAEoBVIhdGVzdEV4dGVuc2lvbkluc2lkZVRhYmxlRXh0ZW5zaW9uQjJIAYABAYgBAZABAfgBAaoCIUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLlByb3RvMkrJrAMKBxIFDwDGCAEK6gMKAQwSAw8AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoy0wEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdlIHdpbGwgdXNlIGZvciB1bml0IHRlc3RpbmcuCgogTElOVDogQUxMT1dfR1JPVVBTLCBMRUdBQ1lfTkFNRVMKCggKAQgSAxMAIgqAAQoCCBASAxMAIhpnIFNvbWUgZ2VuZXJpY19zZXJ2aWNlcyBvcHRpb24ocykgYWRkZWQgYXV0b21hdGljYWxseS4KIFNlZTogIGh0dHA6Ly9nby9wcm90bzItZ2VuZXJpYy1zZXJ2aWNlcy1kZWZhdWx0CiIMIGF1dG8tYWRkZWQKCggKAQgSAxQAJAoXCgIIERIDFAAkIgwgYXV0by1hZGRlZAoKCAoBCBIDFQAiChcKAggSEgMVACIiDCBhdXRvLWFkZGVkCgoICgEIEgMWAB8KCQoCCB8SAxYAHwoJCgIDABIDGAAtCuYBCgECEgMdACEa2wEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBuYW1lc3BhY2UuCiBJbiB0ZXN0X3V0aWwuaCB3ZSBkbyAidXNpbmcgbmFtZXNwYWNlIHVuaXR0ZXN0ID0gcHJvdG9idWZfdW5pdHRlc3QiLgoKCAoBCBIDIgAcCuIBCgIICRIDIgAcGtYBIFByb3RvcyBvcHRpbWl6ZWQgZm9yIFNQRUVEIHVzZSBhIHN0cmljdCBzdXBlcnNldCBvZiB0aGUgZ2VuZXJhdGVk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b2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAGAoICgEIEgMLADcKCQoCCCUSAwsANwrEAQoCAwASAxEAKjK4ASBUaGlzIGZpbGUgaXMgdXNlZCBhcyBwYXJ0IG9mIGEgdW5pdCB0ZXN0IGZvciBpc3N1ZSA2OTM2CiBXZSBkb24ndCBuZWVkIHRvIHVzZSBpdCwgd2UganVzdCBoYXZlIHRvIGltcG9ydCBpdCBpbiBib3RoCiAiZXh0ZW5zaW9uc19pc3N1ZTY5MzZfYi5wcm90byIgYW5kICJleHRlbnNpb25zX2lzc3VlNjkzNl9jLnByb3RvIgoKCQoBBxIEEwAVAQoJCgIHABIDFAIVCgoKAwcAAhIDEwclCgoKAwcABRIDFAIICgoKAwcAARIDFAkMCgoKAwcAAxIDFA8UYgZwcm90bzMKrQUKKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2IucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYS5wcm90byIOCgNGb286B4K1GANmb29CHaoCGlVuaXRUZXN0Lklzc3Vlcy5UZXN0UHJvdG9zSo4ECgYSBAcAFQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAYCgkKAgMAEgMLADIKCAoBCBIDDQA3CgkKAgglEgMNADcKmwEKAgQAEgQTABUBMo4BIFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gaW1wb3J0IGl0IGluCiAidW5pdHRlc3RfaXNzdWU2OTM2X2MucHJvdG8iCgoKCgMEAAESAxMICwoKCgMEAAcSAxQCFwoNCgYEAAfQhgMSAxQCF2IGcHJvdG8zCqgGCihjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2lzc3VlNjkzNl9jLnByb3RvEg91bml0dGVzdF9pc3N1ZXMaKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2EucHJvdG8aKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2IucHJvdG8iNgoDQmFyEiYKA2ZvbxgBIAEoCzIULnVuaXR0ZXN0X2lzc3Vlcy5Gb29SA2ZvbzoHgrUYA2JhckIdqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3NKtwQKBhIEBwAXAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABgKCQoCAwASAwsAMgoJCgIDARIDDAAyCggKAQgSAw4ANwoJCgIIJRIDDgA3CoIBCgIEABIEEwAXATJ2IFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gbG9hZCBpdCBhdCBydW50aW1lCgoKCgMEAAESAxMICwoKCgMEAAcSAxQCFwoNCgYEAAfQhgMSAxQCFwoLCgQEAAIAEgMWAg4KDAoFBAACAAYSAxYCBQoMCgUEAAIAARIDFgYJCgwKBQQAAgADEgMWDA1iBnByb3RvMwq7Dgo0Y3NoYXJwL3Byb3Rvcy91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5wcm90bxIpcHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMaIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlwdG9yLnByb3RvIlkKCkZvb09wdGlvbnMSJgoHaW50X29wdBgBIAEoBUINyj4KCAHAPgLKPgIIA1IGaW50T3B0EhgKA2ZvbxgCIAEoBUIGyj4DENIJUgNmb28qCQjoBxCAgICAAjpFCgtiYXJfb3B0aW9ucxIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMY6AcgASgFQgTAPtIJUgpiYXJPcHRpb25zOnYKC2Zvb19vcHRpb25zEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxjpByABKAsyNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zUgpmb29PcHRpb25zOlYKC2Zvb19pbnRfb3B0EjUucHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMuRm9vT3B0aW9ucxjoByABKAVSCWZvb0ludE9wdDqNAQoLZm9vX2Zvb19vcHQSNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zGOkHIAEoCzI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlv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Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAQwoJCgIICxIDIgBDCggKAQgSAyMALAoJCgIIARIDIwAsCggKAQgSAyQAKQoJCgIICBIDJAApCggKAQgSAyUAIgoJCgIIChIDJQAiCggKAQgSAyYAIQoJCgIIJBIDJgAhCggKAQgSAycAOwoJCgIIJRIDJwA7CtwMCgIEABIERwBpARrPDCBgQW55YCBjb250YWlucyBhbiBhcmJpdHJhcnkgc2VyaWFsaXplZCBwcm90b2NvbCBidWZmZXIgbWVzc2FnZSBhbG9uZyB3aXRoIGEKIFVSTCB0aGF0IGRlc2NyaWJlcyB0aGUgdHlwZSBvZiB0aGUgc2VyaWFsaXplZCBtZXNzYWdlLgoKIEluIGl0cyBiaW5hcnkgZW5jb2RpbmcsIGFuIGBBbnlgIGlzIGFuIG9yZGluYXJ5IG1lc3NhZ2U7IGJ1dCBpbiBvdGhlciB3aXJlCiBmb3JtcyBsaWtlIEpTT04sIGl0IGhhcyBhIHNwZWNpYWwgZW5jb2RpbmcuIFRoZSBmb3JtYXQgb2YgdGhlIHR5cGUgVVJMIGlzCiBkZXNjcmliZWQgb24gdGhlIGB0eXBlX3VybGAgZmllbGQuCgogUHJvdG9idWYgQVBJcyBwcm92aWRlIHV0aWxpdGllcyB0byBpbnRlcmFjdCB3aXRoIGBBbnlgIHZhbHVlczoKCiAtIEEgJ3BhY2snIG9wZXJhdGlvbiBhY2NlcHRzIGEgbWVzc2FnZSBhbmQgY29uc3RydWN0cyBhIGdlbmVyaWMgYEFueWAgd3JhcHBlcgogICBhcm91bmQgaXQuCiAtIEFuICd1bnBhY2snIG9wZXJhdGlvbiByZWFkcyB0aGUgY29udGVudCBvZiBhbiBgQW55YCBtZXNzYWdlLCBlaXRoZXIgaW50byBhbgogICBleGlzdGluZyBtZXNzYWdlIG9yIGEgbmV3IG9uZS4gVW5wYWNrIG9wZXJhdGlvbnMgbXVzdCBjaGVjayB0aGUgdHlwZSBvZiB0aGUKICAgdmFsdWUgdGhleSB1bnBhY2sgYWdhaW5zdCB0aGUgZGVjbGFyZWQgYHR5cGVfdXJsYC4KIC0gQW4gJ2lzJyBvcGVyYXRpb24gZGVjaWRlcyB3aGV0aGVyIGFuIGBBbnlgIGNvbnRhaW5zIGEgbWVzc2FnZSBvZiB0aGUgZ2l2ZW4KICAgdHlwZSwgaS5lLiB3aGV0aGVyIGl0IGNhbiAndW5wYWNrJyB0aGF0IHR5cGUuCgogVGhlIEpTT04gZm9ybWF0IHJlcHJlc2VudGF0aW9uIG9mIGFuIGBBbnlgIGZvbGxvd3Mgb25lIG9mIHRoZXNlIGNhc2VzOgoKIC0gRm9yIHR5cGVzIHdpdGhvdXQgc3BlY2lhbC1jYXNlZCBKU09OIGVuY29kaW5ncywgdGhlIEpTT04gZm9ybWF0CiAgIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBgQW55YCBpcyB0aGUgc2FtZSBhcyB0aGF0IG9mIHRoZSBtZXNzYWdlLCB3aXRoIGFuCiAgIGFkZGl0aW9uYWwgYEB0eXBlYCBmaWVsZCB3aGljaCBjb250YWlucyB0aGUgdHlwZSBVUkwuCiAtIEZvciB0eXBlcyB3aXRoIHNwZWNpYWwtY2FzZWQgSlNPTiBlbmNvZGluZ3MgKHR5cGljYWxseSBjYWxsZWQgJ3dlbGwta25vd24nCiAgIHR5cGVzLCBsaXN0ZWQgaW4gaHR0cHM6Ly9wcm90b2J1Zi5kZXYvcHJvZ3JhbW1pbmctZ3VpZGVzL2pzb24vI2FueSksIHRoZQogICBKU09OIGZvcm1hdCByZXByZXNlbnRhdGlvbiBoYXMgYSBrZXkgYEB0eXBlYCB3aGljaCBjb250YWlucyB0aGUgdHlwZSBVUkwKICAgYW5kIGEga2V5IGB2YWx1ZWAgd2hpY2ggY29udGFpbnMgdGhlIEpTT04tc2VyaWFsaXplZCB2YWx1ZS4KCiBUaGUgdGV4dCBmb3JtYXQgcmVwcmVzZW50YXRpb24gb2YgYW4gYEFueWAgaXMgbGlrZSBhIG1lc3NhZ2Ugd2l0aCBvbmUgZmllbGQKIHdob3NlIG5hbWUgaXMgdGhlIHR5cGUgVVJMIGluIGJyYWNrZXRzLiBGb3IgZXhhbXBsZSwgYW4gYEFueWAgY29udGFpbmluZyBhCiBgZm9vLkJhcmAgbWVzc2FnZSBtYXkgYmUgd3JpdHRlbiBgW3R5cGUuZ29vZ2xlYXBpcy5jb20vZm9vLkJhcl0geyBhOiAyIH1gLgoKCgoDBAABEgNHCAsK9gwKBAQAAgASA2UCFhroDCBJZGVudGlmaWVzIHRoZSB0eXBlIG9mIHRoZSBzZXJpYWxpemVkIFByb3RvYnVmIG1lc3NhZ2Ugd2l0aCBhIFVSSSByZWZlcmVuY2UKIGNvbnNpc3Rpbmcgb2YgYSBwcmVmaXggZW5kaW5nIGluIGEgc2xhc2ggYW5kIHRoZSBmdWxseS1xdWFsaWZpZWQgdHlwZSBuYW1lLgoKIEV4YW1wbGU6IHR5cGUuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlCgogVGhpcyBzdHJpbmcgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBgL2AgY2hhcmFjdGVyLCBhbmQgdGhlIGNvbnRlbnQgYWZ0ZXIKIHRoZSBsYXN0IGAvYCBtdXN0IGJlIHRoZSBmdWxseS1xdWFsaWZpZWQgbmFtZSBvZiB0aGUgdHlwZSBpbiBjYW5vbmljYWwKIGZvcm0sIHdpdGhvdXQgYSBsZWFkaW5nIGRvdC4gRG8gbm90IHdyaXRlIGEgc2NoZW1lIG9uIHRoZXNlIFVSSSByZWZlcmVuY2VzCiBzbyB0aGF0IGNsaWVudHMgZG8gbm90IGF0dGVtcHQgdG8gY29udGFjdCB0aGVtLgoKIFRoZSBwcmVmaXggaXMgYXJiaXRyYXJ5IGFuZCBQcm90b2J1ZiBpbXBsZW1lbnRhdGlvbnMgYXJlIGV4cGVjdGVkIHRvCiBzaW1wbHkgc3RyaXAgb2ZmIGV2ZXJ5dGhpbmcgdXAgdG8gYW5kIGluY2x1ZGluZyB0aGUgbGFzdCBgL2AgdG8gaWRlbnRpZnkKIHRoZSB0eXBlLiBgdHlwZS5nb29nbGVhcGlzLmNvbS9gIGlzIGEgY29tbW9uIGRlZmF1bHQgcHJlZml4IHRoYXQgc29tZQogbGVnYWN5IGltcGxlbWVudGF0aW9ucyByZXF1aXJlLiBUaGlzIHByZWZpeCBkb2VzIG5vdCBpbmRpY2F0ZSB0aGUgb3JpZ2luIG9mCiB0aGUgdHlwZSwgYW5kIFVSSXMgY29udGFpbmluZyBpdCBhcmUgbm90IGV4cGVjdGVkIHRvIHJlc3BvbmQgdG8gYW55CiByZXF1ZXN0cy4KCiBBbGwgdHlwZSBVUkwgc3RyaW5ncyBtdXN0IGJlIGxlZ2FsIFVSSSByZWZlcmVuY2VzIHdpdGggdGhlIGFkZGl0aW9uYWwKIHJlc3RyaWN0aW9uIChmb3IgdGhlIHRleHQgZm9ybWF0KSB0aGF0IHRoZSBjb250ZW50IG9mIHRoZSByZWZlcmVuY2UKIG11c3QgY29uc2lzdCBvbmx5IG9mIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBwZXJjZW50LWVuY29kZWQgZXNjYXBlcywgYW5kCiBjaGFyYWN0ZXJzIGluIHRoZSBmb2xsb3dpbmcgc2V0IChub3QgaW5jbHVkaW5nIHRoZSBvdXRlciBiYWNrdGlja3MpOgogYC8tLn5fISQmKCkqKyw7PWAuIERlc3BpdGUgb3VyIGFsbG93aW5nIHBlcmNlbnQgZW5jb2RpbmdzLCBpbXBsZW1lbnRhdGlvbnMKIHNob3VsZCBub3QgdW5lc2NhcGUgdGhlbSB0byBwcmV2ZW50IGNvbmZ1c2lvbiB3aXRoIGV4aXN0aW5nIHBhcnNlcnMuIEZvcgogZXhhbXBsZSwgYHR5cGUuZ29vZ2xlYXBpcy5jb20lMkZGb29gIHNob3VsZCBiZSByZWplY3RlZC4KCiBJbiB0aGUgb3JpZ2luYWwgZGVzaWduIG9mIGBBbnlgLCB0aGUgcG9zc2liaWxpdHkgb2YgbGF1bmNoaW5nIGEgdHlwZQogcmVzb2x1dGlvbiBzZXJ2aWNlIGF0IHRoZXNlIHR5cGUgVVJMcyB3YXMgY29uc2lkZXJlZCBidXQgUHJvdG9idWYgbmV2ZXIKIGltcGxlbWVudGVkIG9uZSBhbmQgY29uc2lkZXJzIGNvbnRhY3RpbmcgdGhlc2UgVVJMcyB0byBiZSBwcm9ibGVtYXRpYyBhbmQKIGEgcG90ZW50aWFsIHNlY3VyaXR5IGlzc3VlLiBEbyBub3QgYXR0ZW1wdCB0byBjb250YWN0IHR5cGUgVVJMcy4KCgwKBQQAAgAFEgNlAggKDAoFBAACAAESA2UJEQoMCgUEAAIAAxIDZRQVClAKBAQAAgESA2gCEhpDIEhvbGRzIGEgUHJvdG9idWYgc2VyaWFsaXphdGlvbiBvZiB0aGUgdHlwZSBkZXNjcmliZWQgYnkgdHlwZV91cmwuCgoMCgUEAAIBBRIDaAIHCgwKBQQAAgEBEgNoCA0KDAoFBAACAQMSA2gQEWIGcHJvdG8zCtclCh5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiI6CghEdXJhdGlvbhIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0KDAQoTY29tLmdvb2dsZS5wcm90b2J1ZkINRHVyYXRpb25Qcm90b1ABWjFnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9kdXJhdGlvbnBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzStkjCgYSBB4AcgEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiAB8KCQoCCB8SAyIAHwoICgEIEgMjAEgKCQoCCAsSAyMASAoICgEIEgMkACwKCQoCCAESAyQALAoICgEIEgMlAC4KCQoCCAgSAyUALgoICgEIEgMmACIKCQoCCAoSAyYAIgoICgEIEgMnACEKCQoCCCQSAycAIQoICgEIEgMoADsKCQoCCCUSAygAOwqdEAoCBAASBGUAcgEakBAgQSBEdXJhdGlvbiByZXByZXNlbnRzIGEgc2lnbmVkLCBmaXhlZC1sZW5ndGggc3BhbiBvZiB0aW1lIHJlcHJlc2VudGVkCiBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0IG5hbm9zZWNvbmQKIHJlc29sdXRpb24uIEl0IGlzIGluZGVwZW5kZW50IG9mIGFueSBjYWxlbmRhciBhbmQgY29uY2VwdHMgbGlrZSAiZGF5Igogb3IgIm1vbnRoIi4gSXQgaXMgcmVsYXRlZCB0byBUaW1lc3RhbXAgaW4gdGhhdCB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuCiB0d28gVGltZXN0YW1wIHZhbHVlcyBpcyBhIER1cmF0aW9uIGFuZCBpdCBjYW4gYmUgYWRkZWQgb3Igc3VidHJhY3RlZAogZnJvbSBhIFRpbWVzdGFtcC4gUmFuZ2UgaXMgYXBwcm94aW1hdGVseSArLTEwLDAwMCB5ZWFycy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIER1cmF0aW9uIGZyb20gdHdvIFRpbWVzdGFtcHMgaW4gcHNldWRvIGNvZGUuCgogICAgIFRpbWVzdGFtcCBzdGFydCA9IC4uLjsKICAgICBUaW1lc3RhbXAgZW5kID0gLi4uOwogICAgIER1cmF0aW9uIGR1cmF0aW9uID0gLi4uOwoKICAgICBkdXJhdGlvbi5zZWNvbmRzID0gZW5kLnNlY29uZHMgLSBzdGFydC5zZWNvbmRzOwogICAgIGR1cmF0aW9uLm5hbm9zID0gZW5kLm5hbm9zIC0gc3RhcnQubmFub3M7CgogICAgIGlmIChkdXJhdGlvbi5zZWNvbmRzIDwgMCAmJiBkdXJhdGlvbi5uYW5vcyA+IDApIHsKICAgICAgIGR1cmF0aW9uLnNlY29uZHMgKz0gMTsKICAgICAgIGR1cmF0aW9uLm5hbm9zIC09IDEwMDAwMDAwMDA7CiAgICAgfSBlbHNlIGlmIChkdXJhdGlvbi5zZWNvbmRzID4gMCAmJiBkdXJhdGlvbi5uYW5vcyA8IDApIHsKICAgICAgIGR1cmF0aW9uLnNlY29uZHMgLT0gMTsKICAgICAgIGR1cmF0aW9uLm5hbm9zICs9IDEwMDAwMDAwMDA7CiAgICAgfQoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBUaW1lc3RhbXAgKyBEdXJhdGlvbiBpbiBwc2V1ZG8gY29kZS4KCiAgICAgVGltZXN0YW1wIHN0YXJ0ID0gLi4uOwogICAgIER1cmF0aW9uIGR1cmF0aW9uID0gLi4uOwogICAgIFRpbWVzdGFtcCBlbmQgPSAuLi47CgogICAgIGVuZC5zZWNvbmRzID0gc3RhcnQuc2Vjb25kcyArIGR1cmF0aW9uLnNlY29uZHM7CiAgICAgZW5kLm5hbm9zID0gc3RhcnQubmFub3MgKyBkdXJhdGlvbi5uYW5vczsKCiAgICAgaWYgKGVuZC5uYW5vcyA8IDApIHsKICAgICAgIGVuZC5zZWNvbmRzIC09IDE7CiAgICAgICBlbmQubmFub3MgKz0gMTAwMDAwMDAwMDsKICAgICB9IGVsc2UgaWYgKGVuZC5uYW5vcyA+PSAxMDAwMDAwMDAwKSB7CiAgICAgICBlbmQuc2Vjb25kcyArPSAxOwogICAgICAgZW5kLm5hbm9zIC09IDEwMDAwMDAwMDA7CiAgICAgfQoKIEV4YW1wbGUgMzogQ29tcHV0ZSBEdXJhdGlvbiBmcm9tIGRhdGV0aW1lLnRpbWVkZWx0YSBpbiBQeXRob24uCgogICAgIHRkID0gZGF0ZXRpbWUudGltZWRlbHRhKGRheXM9MywgbWludXRlcz0xMCkKICAgICBkdXJhdGlvbiA9IER1cmF0aW9uKCkKICAgICBkdXJhdGlvbi5Gcm9tVGltZWRlbHRhKHRkKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBEdXJhdGlvbiB0eXBlIGlzIGVuY29kZWQgYXMgYSBzdHJpbmcgcmF0aGVyIHRoYW4gYW4KIG9iamVjdCwgd2hlcmUgdGhlIHN0cmluZyBlbmRzIGluIHRoZSBzdWZmaXggInMiIChpbmRpY2F0aW5nIHNlY29uZHMpIGFuZAogaXMgcHJlY2VkZWQgYnkgdGhlIG51bWJlciBvZiBzZWNvbmRzLCB3aXRoIG5hbm9zZWNvbmRzIGV4cHJlc3NlZCBhcwogZnJhY3Rpb25hbCBzZWNvbmRzLiBGb3IgZXhhbXBsZSwgMyBzZWNvbmRzIHdpdGggMCBuYW5vc2Vjb25kcyBzaG91bGQgYmUKIGVuY29kZWQgaW4gSlNPTiBmb3JtYXQgYXMgIjNzIiwgd2hpbGUgMyBzZWNvbmRzIGFuZCAxIG5hbm9zZWNvbmQgc2hvdWxkCiBiZSBleHByZXNzZWQgaW4gSlNPTiBmb3JtYXQgYXMgIjMuMDAwMDAwMDAxcyIsIGFuZCAzIHNlY29uZHMgYW5kIDEKIG1pY3Jvc2Vjb25kIHNob3VsZCBiZSBleHByZXNzZWQgaW4gSlNPTiBmb3JtYXQgYXMgIjMuMDAwMDAxcyIuCgoKCgoDBAABEgNlCBAK3AEKBAQAAgASA2kCFBrOASBTaWduZWQgc2Vjb25kcyBvZiB0aGUgc3BhbiBvZiB0aW1lLiBNdXN0IGJlIGZyb20gLTMxNSw1NzYsMDAwLDAwMAogdG8gKzMxNSw1NzYsMDAwLDAwMCBpbmNsdXNpdmUuIE5vdGU6IHRoZXNlIGJvdW5kcyBhcmUgY29tcHV0ZWQgZnJvbToKIDYwIHNlYy9taW4gKiA2MCBtaW4vaHIgKiAyNCBoci9kYXkgKiAzNjUuMjUgZGF5cy95ZWFyICogMTAwMDAgeWVhcnMKCgwKBQQAAgAFEgNpAgcKDAoFBAACAAESA2kIDwoMCgUEAAIAAxIDaRITCoMDCgQEAAIBEgNxAhIa9QIgU2lnbmVkIGZyYWN0aW9ucyBvZiBhIHNlY29uZCBhdCBuYW5vc2Vjb25kIHJlc29sdXRpb24gb2YgdGhlIHNwYW4KIG9mIHRpbWUuIER1cmF0aW9ucyBsZXNzIHRoYW4gb25lIHNlY29uZCBhcmUgcmVwcmVzZW50ZWQgd2l0aCBhIDAKIGBzZWNvbmRzYCBmaWVsZCBhbmQgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBgbmFub3NgIGZpZWxkLiBGb3IgZHVyYXRpb25zCiBvZiBvbmUgc2Vjb25kIG9yIG1vcmUsIGEgbm9uLXplcm8gdmFsdWUgZm9yIHRoZSBgbmFub3NgIGZpZWxkIG11c3QgYmUKIG9mIHRoZSBzYW1lIHNpZ24gYXMgdGhlIGBzZWNvbmRzYCBmaWVsZC4gTXVzdCBiZSBmcm9tIC05OTksOTk5LDk5OQogdG8gKzk5OSw5OTksOTk5IGluY2x1c2l2ZS4KCgwKBQQAAgEFEgNxAgcKDAoFBAACAQESA3EIDQoMCgUEAAIBAxIDcRARYgZwcm90bzMK/xEKG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIgcKBUVtcHR5Qn0KE2NvbS5nb29nbGUucHJvdG9idWZCCkVtcHR5UHJvdG9QAVouZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZW1wdHlwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0q+EAoGEgQeADIQCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgBFCgkKAggLEgMiAEUKCAoBCBIDIwAsCgkKAggBEgMjACwKCAoBCBIDJAArCgkKAggIEgMkACsKCAoBCBIDJQAiCgkKAggKEgMlACIKCAoBCBIDJgAhCgkKAggkEgMmACEKCAoBCBIDJwA7CgkKAgglEgMnADsKCAoBCBIDKAAfCgkKAggfEgMoAB8KuwIKAgQAEgMyABAarwIgQSBnZW5lcmljIGVtcHR5IG1lc3NhZ2UgdGhhdCB5b3UgY2FuIHJlLXVzZSB0byBhdm9pZCBkZWZpbmluZyBkdXBsaWNhdGVkCiBlbXB0eSBtZXNzYWdlcyBpbiB5b3VyIEFQSXMuIEEgdHlwaWNhbCBleGFtcGxlIGlzIHRvIHVzZSBpdCBhcyB0aGUgcmVxdWVzdAogb3IgdGhlIHJlc3BvbnNlIHR5cGUgb2YgYW4gQVBJIG1ldGhvZC4gRm9yIGluc3RhbmNlOgoKICAgICBzZXJ2aWNlIEZvbyB7CiAgICAgICBycGMgQmFyKGdvb2dsZS5wcm90b2J1Zi5FbXB0eSkgcmV0dXJucyAoZ29vZ2xlLnByb3RvYnVmLkVtcHR5KTsKICAgICB9CgoKCgoDBAABEgMyCA1iBnByb3RvMwr+OwogZ29vZ2xlL3Byb3RvYnVmL2ZpZWxkX21hc2sucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIhCglGaWVsZE1hc2sSFAoFcGF0aHMYASADKAlSBXBhdGhzQoUBChNjb20uZ29vZ2xlLnByb3RvYnVmQg5GaWVsZE1hc2tQcm90b1ABWjJnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9maWVsZG1hc2twYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0qVOgoHEgUeAPIBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIALAoJCgIIARIDIgAsCggKAQgSAyMALwoJCgIICBIDIwAvCggKAQgSAyQAIgoJCgIIChIDJAAiCggKAQgSAyUAIQoJCgIIJBIDJQAhCggKAQgSAyYAOwoJCgIIJRIDJgA7CggKAQgSAycASQoJCgIICxIDJwBJCggKAQgSAygAHwoJCgIIHxIDKAAfCqYrCgIEABIG7wEA8gEBGpcrIGBGaWVsZE1hc2tgIHJlcHJlc2VudHMgYSBzZXQgb2Ygc3ltYm9saWMgZmllbGQgcGF0aHMsIGZvciBleGFtcGxlOgoKICAgICBwYXRoczogImYuYSIKICAgICBwYXRoczogImYuYi5kIgoKIEhlcmUgYGZgIHJlcHJlc2VudHMgYSBmaWVsZCBpbiBzb21lIHJvb3QgbWVzc2FnZSwgYGFgIGFuZCBgYmAKIGZpZWxkcyBpbiB0aGUgbWVzc2FnZSBmb3VuZCBpbiBgZmAsIGFuZCBgZGAgYSBmaWVsZCBmb3VuZCBpbiB0aGUKIG1lc3NhZ2UgaW4gYGYuYmAuCgogRmllbGQgbWFza3MgYXJlIHVzZWQgdG8gc3BlY2lmeSBhIHN1YnNldCBvZiBmaWVsZHMgdGhhdCBzaG91bGQgYmUKIHJldHVybmVkIGJ5IGEgZ2V0IG9wZXJhdGlvbiBvciBtb2RpZmllZCBieSBhbiB1cGRhdGUgb3BlcmF0aW9uLgogRmllbGQgbWFza3MgYWxzbyBoYXZlIGEgY3VzdG9tIEpTT04gZW5jb2RpbmcgKHNlZSBiZWxvdykuCgogIyBGaWVsZCBNYXNrcyBpbiBQcm9qZWN0aW9ucwoKIFdoZW4gdXNlZCBpbiB0aGUgY29udGV4dCBvZiBhIHByb2plY3Rpb24sIGEgcmVzcG9uc2UgbWVzc2FnZSBvcgogc3ViLW1lc3NhZ2UgaXMgZmlsdGVyZWQgYnkgdGhlIEFQSSB0byBvbmx5IGNvbnRhaW4gdGhvc2UgZmllbGRzIGFzCiBzcGVjaWZpZWQgaW4gdGhlIG1hc2suIEZvciBleGFtcGxlLCBpZiB0aGUgbWFzayBpbiB0aGUgcHJldmlvdXMKIGV4YW1wbGUgaXMgYXBwbGllZCB0byBhIHJlc3BvbnNlIG1lc3NhZ2UgYXMgZm9sbG93czoKCiAgICAgZiB7CiAgICAgICBhIDogMjIKICAgICAgIGIgewogICAgICAgICBkIDogMQogICAgICAgICB4IDogMgogICAgICAgfQogICAgICAgeSA6IDEzCiAgICAgfQogICAgIHo6IDgKCiBUaGUgcmVzdWx0IHdpbGwgbm90IGNvbnRhaW4gc3BlY2lmaWMgdmFsdWVzIGZvciBmaWVsZHMgeCx5IGFuZCB6CiAodGhlaXIgdmFsdWUgd2lsbCBiZSBzZXQgdG8gdGhlIGRlZmF1bHQsIGFuZCBvbWl0dGVkIGluIHByb3RvIHRleHQKIG91dHB1dCk6CgoKICAgICBmIHsKICAgICAgIGEgOiAyMgogICAgICAgYiB7CiAgICAgICAgIGQgOiAxCiAgICAgICB9CiAgICAgfQoKIEEgcmVwZWF0ZWQgZmllbGQgaXMgbm90IGFsbG93ZWQgZXhjZXB0IGF0IHRoZSBsYXN0IHBvc2l0aW9uIG9mIGEKIHBhdGhzIHN0cmluZy4KCiBJZiBhIEZpZWxkTWFzayBvYmplY3QgaXMgbm90IHByZXNlbnQgaW4gYSBnZXQgb3BlcmF0aW9uLCB0aGUKIG9wZXJhdGlvbiBhcHBsaWVzIHRvIGFsbCBmaWVsZHMgKGFzIGlmIGEgRmllbGRNYXNrIG9mIGFsbCBmaWVsZHMKIGhhZCBiZWVuIHNwZWNpZmllZCkuCgogTm90ZSB0aGF0IGEgZmllbGQgbWFzayBkb2VzIG5vdCBuZWNlc3NhcmlseSBhcHBseSB0byB0aGUKIHRvcC1sZXZlbCByZXNwb25zZSBtZXNzYWdlLiBJbiBjYXNlIG9mIGEgUkVTVCBnZXQgb3BlcmF0aW9uLCB0aGUKIGZpZWxkIG1hc2sgYXBwbGllcyBkaXJlY3RseSB0byB0aGUgcmVzcG9uc2UsIGJ1dCBpbiBjYXNlIG9mIGEgUkVTVAogbGlzdCBvcGVyYXRpb24sIHRoZSBtYXNrIGluc3RlYWQgYXBwbGllcyB0byBlYWNoIGluZGl2aWR1YWwgbWVzc2FnZQogaW4gdGhlIHJldHVybmVkIHJlc291cmNlIGxpc3QuIEluIGNhc2Ugb2YgYSBSRVNUIGN1c3RvbSBtZXRob2QsCiBvdGhlciBkZWZpbml0aW9ucyBtYXkgYmUgdXNlZC4gV2hlcmUgdGhlIG1hc2sgYXBwbGllcyB3aWxsIGJlCiBjbGVhcmx5IGRvY3VtZW50ZWQgdG9nZXRoZXIgd2l0aCBpdHMgZGVjbGFyYXRpb24gaW4gdGhlIEFQSS4gIEluCiBhbnkgY2FzZSwgdGhlIGVmZmVjdCBvbiB0aGUgcmV0dXJuZWQgcmVzb3VyY2UvcmVzb3VyY2VzIGlzIHJlcXVpcmVkCiBiZWhhdmlvciBmb3IgQVBJcy4KCiAjIEZpZWxkIE1hc2tzIGluIFVwZGF0ZSBPcGVyYXRpb25zCgogQSBmaWVsZCBtYXNrIGluIHVwZGF0ZSBvcGVyYXRpb25zIHNwZWNpZmllcyB3aGljaCBmaWVsZHMgb2YgdGhlCiB0YXJnZXRlZCByZXNvdXJjZSBhcmUgZ29pbmcgdG8gYmUgdXBkYXRlZC4gVGhlIEFQSSBpcyByZXF1aXJlZAogdG8gb25seSBjaGFuZ2UgdGhlIHZhbHVlcyBvZiB0aGUgZmllbGRzIGFzIHNwZWNpZmllZCBpbiB0aGUgbWFzawogYW5kIGxlYXZlIHRoZSBvdGhlcnMgdW50b3VjaGVkLiBJZiBhIHJlc291cmNlIGlzIHBhc3NlZCBpbiB0bwogZGVzY3JpYmUgdGhlIHVwZGF0ZWQgdmFsdWVzLCB0aGUgQVBJIGlnbm9yZXMgdGhlIHZhbHVlcyBvZiBhbGwKIGZpZWxkcyBub3QgY292ZXJlZCBieSB0aGUgbWFzay4KCiBJZiBhIHJlcGVhdGVkIGZpZWxkIGlzIHNwZWNpZmllZCBmb3IgYW4gdXBkYXRlIG9wZXJhdGlvbiwgbmV3IHZhbHVlcyB3aWxsCiBiZSBhcHBlbmRlZCB0byB0aGUgZXhpc3RpbmcgcmVwZWF0ZWQgZmllbGQgaW4gdGhlIHRhcmdldCByZXNvdXJjZS4gTm90ZSB0aGF0CiBhIHJlcGVhdGVkIGZpZWxkIGlzIG9ubHkgYWxsb3dlZCBpbiB0aGUgbGFzdCBwb3NpdGlvbiBvZiBhIGBwYXRoc2Agc3RyaW5nLgoKIElmIGEgc3ViLW1lc3NhZ2UgaXMgc3BlY2lmaWVkIGluIHRoZSBsYXN0IHBvc2l0aW9uIG9mIHRoZSBmaWVsZCBtYXNrIGZvciBhbgogdXBkYXRlIG9wZXJhdGlvbiwgdGhlbiBuZXcgdmFsdWUgd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgZXhpc3Rpbmcgc3ViLW1lc3NhZ2UKIGluIHRoZSB0YXJnZXQgcmVzb3VyY2UuCgogRm9yIGV4YW1wbGUsIGdpdmVuIHRoZSB0YXJnZXQgbWVzc2FnZToKCiAgICAgZiB7CiAgICAgICBiIHsKICAgICAgICAgZDogMQogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMV0KICAgICB9CgogQW5kIGFuIHVwZGF0ZSBtZXNzYWdlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgfQogICAgICAgYzogWzJdCiAgICAgfQoKIHRoZW4gaWYgdGhlIGZpZWxkIG1hc2sgaXM6CgogIHBhdGhzOiBbImYuYiIsICJmLmMiXQoKIHRoZW4gdGhlIHJlc3VsdCB3aWxsIGJlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxMAogICAgICAgICB4OiAyCiAgICAgICB9CiAgICAgICBjOiBbMSwgMl0KICAgICB9CgogQW4gaW1wbGVtZW50YXRpb24gbWF5IHByb3ZpZGUgb3B0aW9ucyB0byBvdmVycmlkZSB0aGlzIGRlZmF1bHQgYmVoYXZpb3IgZm9yCiByZXBlYXRlZCBhbmQgbWVzc2FnZSBmaWVsZHMuCgogTm90ZSB0aGF0IGxpYnJhcmllcyB3aGljaCBpbXBsZW1lbnQgRmllbGRNYXNrIHJlc29sdXRpb24gaGF2ZSB2YXJpb3VzCiBkaWZmZXJlbnQgYmVoYXZpb3JzIGluIHRoZSBmYWNlIG9mIGVtcHR5IG1hc2tzIG9yIHRoZSBzcGVjaWFsICIqIiBtYXNrLgogV2hlbiBpbXBsZW1lbnRpbmcgYSBzZXJ2aWNlIHlvdSBzaG91bGQgY29uZmlybSB0aGVzZSBjYXNlcyBoYXZlIHRoZQogYXBwcm9wcmlhdGUgYmVoYXZpb3IgaW4gdGhlIHVuZGVybHlpbmcgRmllbGRNYXNrIGxpYnJhcnkgdGhhdCB5b3UgZGVzaXJlLAogYW5kIHlvdSBtYXkgbmVlZCB0byBzcGVjaWFsIGNhc2UgdGhvc2UgY2FzZXMgaW4geW91ciBhcHBsaWNhdGlvbiBjb2RlIGlmCiB0aGUgdW5kZXJseWluZyBmaWVsZCBtYXNrIGxpYnJhcnkgYmVoYXZpb3IgZGlmZmVycyBmcm9tIHlvdXIgaW50ZW5kZWQKIHNlcnZpY2Ugc2VtYW50aWNzLgoKIFVwZGF0ZSBtZXRob2RzIGltcGxlbWVudGluZyBodHRwczovL2dvb2dsZS5haXAuZGV2LzEzNAogLSBNVVNUIHN1cHBvcnQgdGhlIHNwZWNpYWwgdmFsdWUgKiBtZWFuaW5nICJmdWxsIHJlcGxhY2UiCiAtIE1VU1QgdHJlYXQgYW4gb21pdHRlZCBmaWVsZCBtYXNrIGFzICJyZXBsYWNlIGZpZWxkcyB3aGljaCBhcmUgcHJlc2VudCIuCgogT3RoZXIgbWV0aG9kcyBpbXBsZW1lbnRpbmcgaHR0cHM6Ly9nb29nbGUuYWlwLmRldi8xNTcKIC0gU0hPVUxEIHN1cHBvcnQgdGhlIHNwZWNpYWwgdmFsdWUgIioiIHRvIG1lYW4gImdldCBhbGwiLgogLSBNVVNUIHRyZWF0IGFuIG9taXR0ZWQgZmllbGQgbWFzayB0byBtZWFuICJnZXQgYWxsIiwgdW5sZXNzIG90aGVyd2lzZQogZG9jdW1lbnRlZC4KCiAjIyBDb25zaWRlcmF0aW9ucyBmb3IgSFRUUCBSRVNUCgogVGhlIEhUVFAga2luZCBvZiBhbiB1cGRhdGUgb3BlcmF0aW9uIHdoaWNoIHVzZXMgYSBmaWVsZCBtYXNrIG11c3QKIGJlIHNldCB0byBQQVRDSCBpbnN0ZWFkIG9mIFBVVCBpbiBvcmRlciB0byBzYXRpc2Z5IEhUVFAgc2VtYW50aWNzCiAoUFVUIG11c3Qgb25seSBiZSB1c2VkIGZvciBmdWxsIHVwZGF0ZXMpLgoKICMgSlNPTiBFbmNvZGluZyBvZiBGaWVsZCBNYXNrcwoKIEluIEpTT04sIGEgZmllbGQgbWFzayBpcyBlbmNvZGVkIGFzIGEgc2luZ2xlIHN0cmluZyB3aGVyZSBwYXRocyBhcmUKIHNlcGFyYXRlZCBieSBhIGNvbW1hLiBGaWVsZHMgbmFtZSBpbiBlYWNoIHBhdGggYXJlIGNvbnZlcnRlZAogdG8vZnJvbSBsb3dlci1jYW1lbCBuYW1pbmcgY29udmVudGlvbnMuCgogQXMgYW4gZXhhbXBsZSwgY29uc2lkZXIgdGhlIGZvbGxvd2luZyBtZXNzYWdlIGRlY2xhcmF0aW9uczoKCiAgICAgbWVzc2FnZSBQcm9maWxlIHsKICAgICAgIFVzZXIgdXNlciA9IDE7CiAgICAgICBQaG90byBwaG90byA9IDI7CiAgICAgfQogICAgIG1lc3NhZ2UgVXNlciB7CiAgICAgICBzdHJpbmcgZGlzcGxheV9uYW1lID0gMTsKICAgICAgIHN0cmluZyBhZGRyZXNzID0gMjsKICAgICB9CgogSW4gcHJvdG8gYSBmaWVsZCBtYXNrIGZvciBgUHJvZmlsZWAgbWF5IGxvb2sgYXMgc3VjaDoKCiAgICAgbWFzayB7CiAgICAgICBwYXRoczogInVzZXIuZGlzcGxheV9uYW1lIgogICAgICAgcGF0aHM6ICJwaG90byIKICAgICB9CgogSW4gSlNPTiwgdGhlIHNhbWUgbWFzayBpcyByZXByZXNlbnRlZCBhcyBiZWxvdzoKCiAgICAgewogICAgICAgbWFzazogInVzZXIuZGlzcGxheU5hbWUscGhvdG8iCiAgICAgfQoKICMgRmllbGQgTWFza3MgYW5kIE9uZW9mIEZpZWxkcwoKIEZpZWxkIG1hc2tzIHRyZWF0IGZpZWxkcyBpbiBvbmVvZnMganVzdCBhcyByZWd1bGFyIGZpZWxkcy4gQ29uc2lkZXIgdGhlCiBmb2xsb3dpbmcgbWVzc2FnZToKCiAgICAgbWVzc2FnZSBTYW1wbGVNZXNzYWdlIHsKICAgICAgIG9uZW9mIHRlc3Rfb25lb2YgewogICAgICAgICBzdHJpbmcgbmFtZSA9IDQ7CiAgICAgICAgIFN1Yk1lc3NhZ2Ugc3ViX21lc3NhZ2UgPSA5OwogICAgICAgfQogICAgIH0KCiBUaGUgZmllbGQgbWFzayBjYW4gYmU6CgogICAgIG1hc2sgewogICAgICAgcGF0aHM6ICJuYW1lIgogICAgIH0KCiBPcjoKCiAgICAgbWFzayB7CiAgICAgICBwYXRoczogInN1Yl9tZXNzYWdlIgogICAgIH0KCiBOb3RlIHRoYXQgb25lb2YgdHlwZSBuYW1lcyAoInRlc3Rfb25lb2YiIGluIHRoaXMgY2FzZSkgY2Fubm90IGJlIHVzZWQgaW4KIHBhdGhzLgoKICMjIEZpZWxkIE1hc2sgVmVyaWZpY2F0aW9uCgogVGhlIGltcGxlbWVudGF0aW9uIG9mIGFueSBBUEkgbWV0aG9kIHdoaWNoIGhhcyBhIEZpZWxkTWFzayB0eXBlIGZpZWxkIGluIHRoZQogcmVxdWVzdCBzaG91bGQgdmVyaWZ5IHRoZSBpbmNsdWRlZCBmaWVsZCBwYXRocywgYW5kIHJldHVybiBhbgogYElOVkFMSURfQVJHVU1FTlRgIGVycm9yIGlmIGFueSBwYXRoIGlzIHVubWFwcGFibGUuCgoLCgMEAAESBO8BCBEKLAoEBAACABIE8QECHBoeIFRoZSBzZXQgb2YgZmllbGQgbWFzayBwYXRocy4KCg0KBQQAAgAEEgTxAQIKCg0KBQQAAgAFEgTxAQsRCg0KBQQAAgABEgTxARIXCg0KBQQAAgADEgTxARobYgZwcm90bzMK0TIKH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiI7CglUaW1lc3RhbXASGAoHc2Vjb25kcxgBIAEoA1IHc2Vjb25kcxIUCgVuYW5vcxgCIAEoBVIFbmFub3NChQEKE2NvbS5nb29nbGUucHJvdG9idWZCDlRpbWVzdGFtcFByb3RvUAFaMmdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3RpbWVzdGFtcHBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSs8wCgcSBR4AkAEBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAfCgkKAggfEgMiAB8KCAoBCBIDIwBJCgkKAggLEgMjAEkKCAoBCBIDJAAsCgkKAggBEgMkACwKCAoBCBIDJQAvCgkKAggIEgMlAC8KCAoBCBIDJgAiCgkKAggKEgMmACIKCAoBCBIDJwAhCgkKAggkEgMnACEKCAoBCBIDKAA7CgkKAgglEgMoADsK1h0KAgQAEgaEAQCQAQEaxx0gQSBUaW1lc3RhbXAgcmVwcmVzZW50cyBhIHBvaW50IGluIHRpbWUgaW5kZXBlbmRlbnQgb2YgYW55IHRpbWUgem9uZSBvciBsb2NhbAogY2FsZW5kYXIsIGVuY29kZWQgYXMgYSBjb3VudCBvZiBzZWNvbmRzIGFuZCBmcmFjdGlvbnMgb2Ygc2Vjb25kcyBhdAogbmFub3NlY29uZCByZXNvbHV0aW9uLiBUaGUgY291bnQgaXMgcmVsYXRpdmUgdG8gYW4gZXBvY2ggYXQgVVRDIG1pZG5pZ2h0IG9uCiBKYW51YXJ5IDEsIDE5NzAsIGluIHRoZSBwcm9sZXB0aWMgR3JlZ29yaWFuIGNhbGVuZGFyIHdoaWNoIGV4dGVuZHMgdGhlCiBHcmVnb3JpYW4gY2FsZW5kYXIgYmFja3dhcmRzIHRvIHllYXIgb25lLgoKIEFsbCBtaW51dGVzIGFyZSA2MCBzZWNvbmRzIGxvbmcuIExlYXAgc2Vjb25kcyBhcmUgInNtZWFyZWQiIHNvIHRoYXQgbm8gbGVhcAogc2Vjb25kIHRhYmxlIGlzIG5lZWRlZCBmb3IgaW50ZXJwcmV0YXRpb24sIHVzaW5nIGEgWzI0LWhvdXIgbGluZWFyCiBzbWVhcl0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vdGltZS9zbWVhcikuCgogVGhlIHJhbmdlIGlzIGZyb20gMDAwMS0wMS0wMVQwMDowMDowMFogdG8gOTk5OS0xMi0zMVQyMzo1OTo1OS45OTk5OTk5OTlaLiBCeQogcmVzdHJpY3RpbmcgdG8gdGhhdCByYW5nZSwgd2UgZW5zdXJlIHRoYXQgd2UgY2FuIGNvbnZlcnQgdG8gYW5kIGZyb20gW1JGQwogMzMzOV0oaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzMzMzkudHh0KSBkYXRlIHN0cmluZ3MuCgogIyBFeGFtcGxlcwoKIEV4YW1wbGUgMTogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgdGltZSgpYC4KCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModGltZShOVUxMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygwKTsKCiBFeGFtcGxlIDI6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gUE9TSVggYGdldHRpbWVvZmRheSgpYC4KCiAgICAgc3RydWN0IHRpbWV2YWwgdHY7CiAgICAgZ2V0dGltZW9mZGF5KCZ0diwgTlVMTCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXA7CiAgICAgdGltZXN0YW1wLnNldF9zZWNvbmRzKHR2LnR2X3NlYyk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcyh0di50dl91c2VjICogMTAwMCk7CgogRXhhbXBsZSAzOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFdpbjMyIGBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgpYC4KCiAgICAgRklMRVRJTUUgZnQ7CiAgICAgR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoJmZ0KTsKICAgICBVSU5UNjQgdGlja3MgPSAoKChVSU5UNjQpZnQuZHdIaWdoRGF0ZVRpbWUpIDw8IDMyKSB8IGZ0LmR3TG93RGF0ZVRpbWU7CgogICAgIC8vIEEgV2luZG93cyB0aWNrIGlzIDEwMCBuYW5vc2Vjb25kcy4gV2luZG93cyBlcG9jaCAxNjAxLTAxLTAxVDAwOjAwOjAwWgogICAgIC8vIGlzIDExNjQ0NDczNjAwIHNlY29uZHMgYmVmb3JlIFVuaXggZXBvY2ggMTk3MC0wMS0wMVQwMDowMDowMFouCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHMoKElOVDY0KSAoKHRpY2tzIC8gMTAwMDAwMDApIC0gMTE2NDQ0NzM2MDBMTCkpOwogICAgIHRpbWVzdGFtcC5zZXRfbmFub3MoKElOVDMyKSAoKHRpY2tzICUgMTAwMDAwMDApICogMTAwKSk7CgogRXhhbXBsZSA0OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIEphdmEgYFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpYC4KCiAgICAgbG9uZyBtaWxsaXMgPSBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcCA9IFRpbWVzdGFtcC5uZXdCdWlsZGVyKCkuc2V0U2Vjb25kcyhtaWxsaXMgLyAxMDAwKQogICAgICAgICAuc2V0TmFub3MoKGludCkgKChtaWxsaXMgJSAxMDAwKSAqIDEwMDAwMDApKS5idWlsZCgpOwoKIEV4YW1wbGUgNTogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBKYXZhIGBJbnN0YW50Lm5vdygpYC4KCiAgICAgSW5zdGFudCBub3cgPSBJbnN0YW50Lm5vdygpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wID0KICAgICAgICAgVGltZXN0YW1wLm5ld0J1aWxkZXIoKS5zZXRTZWNvbmRzKG5vdy5nZXRFcG9jaFNlY29uZCgpKQogICAgICAgICAgICAgLnNldE5hbm9zKG5vdy5nZXROYW5vKCkpLmJ1aWxkKCk7CgogRXhhbXBsZSA2OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIGN1cnJlbnQgdGltZSBpbiBQeXRob24uCgogICAgIHRpbWVzdGFtcCA9IFRpbWVzdGFtcCgpCiAgICAgdGltZXN0YW1wLkdldEN1cnJlbnRUaW1lKCkKCiAjIEpTT04gTWFwcGluZwoKIEluIEpTT04gZm9ybWF0LCB0aGUgVGltZXN0YW1wIHR5cGUgaXMgZW5jb2RlZCBhcyBhIHN0cmluZyBpbiB0aGUKIFtSRkMgMzMzOV0oaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzMzMzkudHh0KSBmb3JtYXQuIFRoYXQgaXMsIHRoZQogZm9ybWF0IGlzICJ7eWVhcn0te21vbnRofS17ZGF5fVR7aG91cn06e21pbn06e3NlY31bLntmcmFjX3NlY31dWiIKIHdoZXJlIHt5ZWFyfSBpcyBhbHdheXMgZXhwcmVzc2VkIHVzaW5nIGZvdXIgZGlnaXRzIHdoaWxlIHttb250aH0sIHtkYXl9LAoge2hvdXJ9LCB7bWlufSwgYW5kIHtzZWN9IGFyZSB6ZXJvLXBhZGRlZCB0byB0d28gZGlnaXRzIGVhY2guIFRoZSBmcmFjdGlvbmFsCiBzZWNvbmRzLCB3aGljaCBjYW4gZ28gdXAgdG8gOSBkaWdpdHMgKGkuZS4gdXAgdG8gMSBuYW5vc2Vjb25kIHJlc29sdXRpb24pLAogYXJlIG9wdGlvbmFsLiBUaGUgIloiIHN1ZmZpeCBpbmRpY2F0ZXMgdGhlIHRpbWV6b25lICgiVVRDIik7IHRoZSB0aW1lem9uZQogaXMgcmVxdWlyZWQuIEEgUHJvdG9KU09OIHNlcmlhbGl6ZXIgc2hvdWxkIGFsd2F5cyB1c2UgVVRDIChhcyBpbmRpY2F0ZWQgYnkKICJaIikgd2hlbiBwcmludGluZyB0aGUgVGltZXN0YW1wIHR5cGUgYW5kIGEgUHJvdG9KU09OIHBhcnNlciBzaG91bGQgYmUKIGFibGUgdG8gYWNjZXB0IGJvdGggVVRDIGFuZCBvdGhlciB0aW1lem9uZXMgKGFzIGluZGljYXRlZCBieSBhbiBvZmZzZXQpLgoKIEZvciBleGFtcGxlLCAiMjAxNy0wMS0xNVQwMTozMDoxNS4wMVoiIGVuY29kZXMgMTUuMDEgc2Vjb25kcyBwYXN0CiAwMTozMCBVVEMgb24gSmFudWFyeSAxNSwgMjAxNy4KCiBJbiBKYXZhU2NyaXB0LCBvbmUgY2FuIGNvbnZlcnQgYSBEYXRlIG9iamVjdCB0byB0aGlzIGZvcm1hdCB1c2luZyB0aGUKIHN0YW5kYXJkCiBbdG9JU09TdHJpbmcoKV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvRGF0ZS90b0lTT1N0cmluZykKIG1ldGhvZC4gSW4gUHl0aG9uLCBhIHN0YW5kYXJkIGBkYXRldGltZS5kYXRldGltZWAgb2JqZWN0IGNhbiBiZSBjb252ZXJ0ZWQKIHRvIHRoaXMgZm9ybWF0IHVzaW5nCiBbYHN0cmZ0aW1lYF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMi9saWJyYXJ5L3RpbWUuaHRtbCN0aW1lLnN0cmZ0aW1lKSB3aXRoCiB0aGUgdGltZSBmb3JtYXQgc3BlYyAnJVktJW0tJWRUJUg6JU06JVMuJWZaJy4gTGlrZXdpc2UsIGluIEphdmEsIG9uZSBjYW4gdXNlCiB0aGUgSm9kYSBUaW1lJ3MgW2BJU09EYXRlVGltZUZvcm1hdC5kYXRlVGltZSgpYF0oCiBodHRwOi8vam9kYS10aW1lLnNvdXJjZWZvcmdlLm5ldC9hcGlkb2NzL29yZy9qb2RhL3RpbWUvZm9ybWF0L0lTT0RhdGVUaW1lRm9ybWF0Lmh0bWwjZGF0ZVRpbWUoKQogKSB0byBvYnRhaW4gYSBmb3JtYXR0ZXIgY2FwYWJsZSBvZiBnZW5lcmF0aW5nIHRpbWVzdGFtcHMgaW4gdGhpcyBmb3JtYXQuCgoKCwoDBAABEgSEAQgRCtUBCgQEAAIAEgSIAQIUGsYBIFJlcHJlc2VudHMgc2Vjb25kcyBvZiBVVEMgdGltZSBzaW5jZSBVbml4IGVwb2NoIDE5NzAtMDEtMDFUMDA6MDA6MDBaLiBNdXN0CiBiZSBiZXR3ZWVuIC02MjEzNTU5NjgwMCBhbmQgMjUzNDAyMzAwNzk5IGluY2x1c2l2ZSAod2hpY2ggY29ycmVzcG9uZHMgdG8KIDAwMDEtMDEtMDFUMDA6MDA6MDBaIHRvIDk5OTktMTItMzFUMjM6NTk6NTlaKS4KCg0KBQQAAgAFEgSIAQIHCg0KBQQAAgABEgSIAQgPCg0KBQQAAgADEgSIARITCr8CCgQEAAIBEgSPAQISGrACIE5vbi1uZWdhdGl2ZSBmcmFjdGlvbnMgb2YgYSBzZWNvbmQgYXQgbmFub3NlY29uZCByZXNvbHV0aW9uLiBUaGlzIGZpZWxkIGlzCiB0aGUgbmFub3NlY29uZCBwb3J0aW9uIG9mIHRoZSBkdXJhdGlvbiwgbm90IGFuIGFsdGVybmF0aXZlIHRvIHNlY29uZHMuCiBOZWdhdGl2ZSBzZWNvbmQgdmFsdWVzIHdpdGggZnJhY3Rpb25zIG11c3Qgc3RpbGwgaGF2ZSBub24tbmVnYXRpdmUgbmFub3MKIHZhbHVlcyB0aGF0IGNvdW50IGZvcndhcmQgaW4gdGltZS4gTXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDk5OSw5OTksOTk5CiBpbmNsdXNpdmUuCgoNCgUEAAIBBRIEjwECBwoNCgUEAAIBARIEjwEIDQoNCgUEAAIBAxIEjwEQEWIGcHJvdG8zCvUtCh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIjCgtEb3VibGVWYWx1ZRIUCgV2YWx1ZRgBIAEoAVIFdmFsdWUiIgoKRmxvYXRWYWx1ZRIUCgV2YWx1ZRgBIAEoAlIFdmFsdWUiIgoKSW50NjRWYWx1ZRIUCgV2YWx1ZRgBIAEoA1IFdmFsdWUiIwoLVUludDY0VmFsdWUSFAoFdmFsdWUYASABKARSBXZhbHVlIiIKCkludDMyVmFsdWUSFAoFdmFsdWUYASABKAVSBXZhbHVlIiMKC1VJbnQzMlZhbHVlEhQKBXZhbHVlGAEgASgNUgV2YWx1ZSIhCglCb29sVmFsdWUSFAoFdmFsdWUYASABKAhSBXZhbHVlIiMKC1N0cmluZ1ZhbHVlEhQKBXZhbHVlGAEgASgJUgV2YWx1ZSIiCgpCeXRlc1ZhbHVlEhQKBXZhbHVlGAEgASgMUgV2YWx1ZUKDAQoTY29tLmdvb2dsZS5wcm90b2J1ZkINV3JhcHBlcnNQcm90b1ABWjFnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi93cmFwcGVyc3Bi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSuwpCgcSBS8AnAEBCrETCgEMEgMvABIyphMgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgogV3JhcHBlcnMgZm9yIHByaW1pdGl2ZSAobm9uLW1lc3NhZ2UpIHR5cGVzLiBUaGVzZSB0eXBlcyB3ZXJlIG5lZWRlZAogZm9yIGxlZ2FjeSByZWFzb25zIGFuZCBhcmUgbm90IHJlY29tbWVuZGVkIGZvciB1c2UgaW4gbmV3IEFQSXMuCgogSGlzdG9yaWNhbGx5IHRoZXNlIHdyYXBwZXJzIHdlcmUgdXNlZnVsIHRvIGhhdmUgcHJlc2VuY2Ugb24gcHJvdG8zIHByaW1pdGl2ZQogZmllbGRzLCBidXQgcHJvdG8zIHN5bnRheCBoYXMgYmVlbiB1cGRhdGVkIHRvIHN1cHBvcnQgdGhlIGBvcHRpb25hbGAga2V5d29yZC4KIFVzaW5nIHRoYXQga2V5d29yZCBpcyBub3cgdGhlIHN0cm9uZ2x5IHByZWZlcnJlZCB3YXkgdG8gYWRkIHByZXNlbmNlIHRvCiBwcm90bzMgcHJpbWl0aXZlIGZpZWxkcy4KCiBBIHNlY29uZGFyeSB1c2VjYXNlIHdhcyB0byBlbWJlZCBwcmltaXRpdmVzIGluIHRoZSBgZ29vZ2xlLnByb3RvYnVmLkFueWAKIHR5cGU6IGl0IGlzIG5vdyBy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cHJlc2VudGF0aW9uIGZvciBgU3RyaW5nVmFsdWVgIGlzIEpTT04gc3RyaW5nLgoKIE5vdCByZWNvbW1lbmRlZCBmb3IgdXNlIGluIG5ldyBBUElzLCBidXQgc3RpbGwgdXNlZnVsIGZvciBsZWdhY3kgQVBJcyBhbmQKIGhhcyBubyBwbGFuIHRvIGJlIHJlbW92ZWQuCgoLCgMEBwESBI4BCBMKIQoEBAcCABIEkAECExoTIFRoZSBzdHJpbmcgdmFsdWUuCgoNCgUEBwIABRIEkAECCAoNCgUEBwIAARIEkAEJDgoNCgUEBwIAAxIEkAEREgrQAQoCBAgSBpkBAJwBARrBASBXcmFwcGVyIG1lc3NhZ2UgZm9yIGBieXRlc2AuCgogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gZm9yIGBCeXRlc1ZhbHVlYCBpcyBKU09OIHN0cmluZy4KCiBOb3QgcmVjb21tZW5kZWQgZm9yIHVzZSBpbiBuZXcgQVBJcywgYnV0IHN0aWxsIHVzZWZ1bCBmb3IgbGVnYWN5IEFQSXMgYW5kCiBoYXMgbm8gcGxhbiB0byBiZSByZW1vdmVkLgoKCwoDBAgBEgSZAQgSCiAKBAQIAgASBJsBAhIaEiBUaGUgYnl0ZXMgdmFsdWUuCgoNCgUECAIABRIEmwECBwoNCgUECAIAARIEmwEIDQoNCgUECAIAAxIEmwEQEWIGcHJvdG8zCqrKAQozZWRpdGlvbnMvZ29sZGVuL3Rlc3RfbWVzc2FnZXNfcHJvdG8zX2VkaXRpb25zLnByb3RvEiZwcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMxoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnByb3RvGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8aIGdvb2dsZS9wcm90b2J1Zi9maWVsZF9tYXNrLnByb3RvGhxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvGh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8ig18KElRlc3RBbGxUeXBlc1Byb3RvMxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxKAAQoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlEnAKGG9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEncKFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJnChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5Gb3JlaWduRW51bVITb3B0aW9uYWxGb3JlaWduRW51bRJ6ChVvcHRpb25hbF9hbGlhc2VkX2VudW0YFyABKA4yRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuQWxpYXNlZEVudW1SE29wdGlvbmFsQWxpYXNlZEVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEmcKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEoABChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2UScAoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USdwoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmcKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25FbnVtUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIhCgxwYWNrZWRfaW50MzIYSyADKAVSC3BhY2tlZEludDMyEiEKDHBhY2tlZF9pbnQ2NBhMIAMoA1ILcGFja2VkSW50NjQSIwoNcGFja2VkX3VpbnQzMhhNIAMoDVIMcGFja2VkVWludDMyEiMKDXBhY2tlZF91aW50NjQYTiADKARSDHBhY2tlZFVpbnQ2NBIjCg1wYWNrZWRfc2ludDMyGE8gAygRUgxwYWNrZWRTaW50MzISIwoNcGFja2VkX3NpbnQ2NBhQIAMoElIMcGFja2VkU2ludDY0EiUKDnBhY2tlZF9maXhlZDMyGFEgAygHUg1wYWNrZWRGaXhlZDMyEiUKDnBhY2tlZF9maXhlZDY0GFIgAygGUg1wYWNrZWRGaXhlZDY0EicKD3BhY2tlZF9zZml4ZWQzMhhTIAMoD1IOcGFja2VkU2ZpeGVkMzISJwoPcGFja2VkX3NmaXhlZDY0GFQgAygQUg5wYWNrZWRTZml4ZWQ2NBIhCgxwYWNrZWRfZmxvYXQYVSADKAJSC3BhY2tlZEZsb2F0EiMKDXBhY2tlZF9kb3VibGUYViADKAFSDHBhY2tlZERvdWJsZRIfCgtwYWNrZWRfYm9vbBhXIAMoCFIKcGFja2VkQm9vbBJzChJwYWNrZWRfbmVzdGVkX2VudW0YWCADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVIQcGFja2VkTmVzdGVkRW51bRIsCg51bnBhY2tlZF9pbnQzMhhZIAMoBUIFqgECGAJSDXVucGFja2VkSW50MzISLAoOdW5wYWNrZWRfaW50NjQYWiADKANCBaoBAhgCUg11bnBhY2tlZEludDY0Ei4KD3VucGFja2VkX3VpbnQzMhhbIAMoDUIFqgECGAJSDnVucGFja2VkVWludDMyEi4KD3VucGFja2VkX3VpbnQ2NBhcIAMoBEIFqgECGAJSDnVucGFja2VkVWludDY0Ei4KD3VucGFja2VkX3NpbnQzMhhdIAMoEUIFqgECGAJSDnVucGFja2VkU2ludDMyEi4KD3VucGFja2VkX3NpbnQ2NBheIAMoEkIFqgECGAJSDnVucGFja2VkU2ludDY0EjAKEHVucGFja2VkX2ZpeGVkMzIYXyADKAdCBaoBAhgCUg91bnBhY2tlZEZpeGVkMzISMAoQdW5wYWNrZWRfZml4ZWQ2NBhgIAMoBkIFqgECGAJSD3VucGFja2VkRml4ZWQ2NBIyChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMoD0IFqgECGAJSEHVucGFja2VkU2ZpeGVkMzISMgoRdW5wYWNrZWRfc2ZpeGVkNjQYYiADKBBCBaoBAhgCUhB1bnBhY2tlZFNmaXhlZDY0EiwKDnVucGFja2VkX2Zsb2F0GGMgAygCQgWqAQIYAlINdW5wYWNrZWRGbG9hdBIuCg91bnBhY2tlZF9kb3VibGUYZCADKAFCBaoBAhgCUg51bnBhY2tlZERvdWJsZRIqCg11bnBhY2tlZF9ib29sGGUgAygIQgWqAQIYAlIMdW5wYWNrZWRCb29sEn4KFHVucGFja2VkX25lc3RlZF9lbnVtGGYgAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1CBaoBAhgCUhJ1bnBhY2tlZE5lc3RlZEVudW0SdQoPbWFwX2ludDMyX2ludDMyGDggAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJ1Cg9tYXBfaW50NjRfaW50NjQYOSADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EnsKEW1hcF91aW50MzJfdWludDMyGDogAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISewoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ7ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEnsKEW1hcF9zaW50NjRfc2ludDY0GD0gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSgQEKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsyUS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISgQEKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsyUS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQShwEKFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShwEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQSdQoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJ4ChBtYXBfaW50MzJfZG91YmxlGEMgAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEm8KDW1hcF9ib29sX2Jvb2wYRCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wSewoRbWFwX3N0cmluZ19zdHJpbmcYRSADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJ4ChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEpEBChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeVIWbWFwU3RyaW5nTmVzdGVkTWVzc2FnZRKUAQoabWFwX3N0cmluZ19mb3JlaWduX21lc3NhZ2UYSCADKAsyVy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeVIXbWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2USiAEKFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEosBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJULnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISfAoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEmYKCm9uZW9mX2VudW0YdyABKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SRgoQb25lb2ZfbnVsbF92YWx1ZRh4IAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIOb25lb2ZOdWxsVmFsdWUSTwoVb3B0aW9uYWxfYm9vbF93cmFwcGVyGMkBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSE29wdGlvbmFsQm9vbFdyYXBwZXISUgoWb3B0aW9uYWxfaW50MzJfd3JhcHBlchjKASABKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIUb3B0aW9uYWxJbnQzMldyYXBwZXISUgoWb3B0aW9uYWxfaW50NjRfd3JhcHBlchjLASABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIUb3B0aW9uYWxJbnQ2NFdyYXBwZXISVQoXb3B0aW9uYWxfdWludDMyX3dyYXBwZXIYzAEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUhVvcHRpb25hbFVpbnQzMldyYXBwZXISVQoXb3B0aW9uYWxfdWludDY0X3dyYXBwZXIYzQEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUhVvcHRpb25hbFVpbnQ2NFdyYXBwZXISUgoWb3B0aW9uYWxfZmxvYXRfd3JhcHBlchjOASABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIUb3B0aW9uYWxGbG9hdFdyYXBwZXISVQoXb3B0aW9uYWxfZG91YmxlX3dyYXBwZXIYzwEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUhVvcHRpb25hbERvdWJsZVdyYXBwZXISVQoXb3B0aW9uYWxfc3RyaW5nX3dyYXBwZXIY0AEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUhVvcHRpb25hbFN0cmluZ1dyYXBwZXISUgoWb3B0aW9uYWxfYnl0ZXNfd3JhcHBlchjRASABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIUb3B0aW9uYWxCeXRlc1dyYXBwZXISTwoVcmVwZWF0ZWRfYm9vbF93cmFwcGVyGNMBIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSE3JlcGVhdGVkQm9vbFdyYXBwZXISUgoWcmVwZWF0ZWRfaW50MzJfd3JhcHBlchjUASADKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIUcmVwZWF0ZWRJbnQzMldyYXBwZXISUgoWcmVwZWF0ZWRfaW50NjRfd3JhcHBlchjVASADKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIUcmVwZWF0ZWRJbnQ2NFdyYXBwZXISVQoXcmVwZWF0ZWRfdWludDMyX3dyYXBwZXIY1gEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUhVyZXBlYXRlZFVpbnQzMldyYXBwZXISVQoXcmVwZWF0ZWRfdWludDY0X3dyYXBwZXIY1wEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUhVyZXBlYXRlZFVpbnQ2NFdyYXBwZXISUgoWcmVwZWF0ZWRfZmxvYXRfd3JhcHBlchjYASADKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIUcmVwZWF0ZWRGbG9hdFdyYXBwZXISVQoXcmVwZWF0ZWRfZG91YmxlX3dyYXBwZXIY2QEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUhVyZXBlYXRlZERvdWJsZVdyYXBwZXISVQoXcmVwZWF0ZWRfc3RyaW5nX3dyYXBwZXIY2gEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUhVyZXBlYXRlZFN0cmluZ1dyYXBwZXISUgoWcmVwZWF0ZWRfYnl0ZXNfd3JhcHBlchjbASADKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIUcmVwZWF0ZWRCeXRlc1dyYXBwZXISRwoRb3B0aW9uYWxfZHVyYXRpb24YrQIgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUhBvcHRpb25hbER1cmF0aW9uEkoKEm9wdGlvbmFsX3RpbWVzdGFtcBiuAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUhFvcHRpb25hbFRpbWVzdGFtcBJLChNvcHRpb25hbF9maWVsZF9tYXNrGK8CIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSEW9wdGlvbmFsRmllbGRNYXNrEkEKD29wdGlvbmFsX3N0cnVjdBiwAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ug5vcHRpb25hbFN0cnVjdBI4CgxvcHRpb25hbF9hbnkYsQIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVILb3B0aW9uYWxBbnkSPgoOb3B0aW9uYWxfdmFsdWUYsgIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUg1vcHRpb25hbFZhbHVlEksKE29wdGlvbmFsX251bGxfdmFsdWUYswIgASgOMhouZ29vZ2xlLnByb3RvYnVmLk51bGxWYWx1ZVIRb3B0aW9uYWxOdWxsVmFsdWUSPgoOb3B0aW9uYWxfZW1wdHkYtAIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ug1vcHRpb25hbEVtcHR5EkcKEXJlcGVhdGVkX2R1cmF0aW9uGLcCIAMoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIQcmVwZWF0ZWREdXJhdGlvbhJKChJyZXBlYXRlZF90aW1lc3RhbXAYuAIgAygLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIRcmVwZWF0ZWRUaW1lc3RhbXASSgoScmVwZWF0ZWRfZmllbGRtYXNrGLkCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSEXJlcGVhdGVkRmllbGRtYXNrEkEKD3JlcGVhdGVkX3N0cnVjdBjEAiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ug5yZXBlYXRlZFN0cnVjdBI4CgxyZXBlYXRlZF9hbnkYuwIgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVILcmVwZWF0ZWRBbnkSPgoOcmVwZWF0ZWRfdmFsdWUYvAIgAygLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUg1yZXBlYXRlZFZhbHVlEksKE3JlcGVhdGVkX2xpc3RfdmFsdWUYvQIgAygLMhouZ29vZ2xlLnByb3RvYnVmLkxpc3RWYWx1ZVIRcmVwZWF0ZWRMaXN0VmFsdWUSPgoOcmVwZWF0ZWRfZW1wdHkYvgIgAygLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ug1yZXBlYXRlZEVtcHR5Eh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgaewoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhElwKC2NvcmVjdXJzaXZlGAIgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zUgtjb3JlY3Vyc2l2ZRpAChJNYXBJbnQzMkludDMyRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAVSBXZhbHVlOgI4ARpAChJNYXBJbnQ2NEludDY0RW50cnkSEAoDa2V5GAEgASgDUgNrZXkSFAoFdmFsdWUYAiABKANSBXZhbHVlOgI4ARpCChRNYXBVaW50MzJVaW50MzJFbnRyeRIQCgNrZXkYASABKA1SA2tleRIUCgV2YWx1ZRgCIAEoDVIFdmFsdWU6AjgBGkIKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EhAKA2tleRgBIAEoBFIDa2V5EhQKBXZhbHVlGAIgASgEUgV2YWx1ZToCOAEaQgoUTWFwU2ludDMyU2ludDMyRW50cnkSEAoDa2V5GAEgASgRUgNrZXkSFAoFdmFsdWUYAiABKBFSBXZhbHVlOgI4ARpCChRNYXBTaW50NjRTaW50NjRFbnRyeRIQCgNrZXkYASABKBJSA2tleRIUCgV2YWx1ZRgCIAEoElIFdmFsdWU6AjgBGkQKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkSEAoDa2V5GAEgASgHUgNrZXkSFAoFdmFsdWUYAiABKAdSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoBlIDa2V5EhQKBXZhbHVlGAIgASgGUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoD1IDa2V5EhQKBXZhbHVlGAIgASgPUgV2YWx1ZToCOAEaRgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EhAKA2tleRgBIAEoEFIDa2V5EhQKBXZhbHVlGAIgASgQUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqTAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5El4KBXZhbHVlGAIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqCAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJMCgV2YWx1ZRgCIAEoCzI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEajQEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJbCgV2YWx1ZRgCIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEafAoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJJCgV2YWx1ZRgCIAEoDjIzLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25FbnVtUgV2YWx1ZToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2VkRW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19CQVoQAhIHCgNNT08QAhIHCgNtb28QAhIHCgNiQXoQAhoCEAFCDQoLb25lb2ZfZmllbGRKBgj1AxD/A0oICL+EPRDAhD1SDnJlc2VydmVkX2ZpZWxkIh4KDkZvcmVpZ25NZXNzYWdlEgwKAWMYASABKAVSAWMiFgoUTnVsbEh5cG90aGVzaXNQcm90bzMiLwoORW51bU9ubHlQcm90bzMiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABKkAKC0ZvcmVpZ25FbnVtEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACQk4KMWNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzNIAfgBAaICDkVkaXRpb25zUHJvdG8zkgMCCAJK42YKBxIFDgC7AgEKmQMKAQwSAw4AETKOAyBjbGFuZy1mb3JtYXQgb2ZmCiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQg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cHRpb25hbF9mbG9hdBgLIAEoAlINb3B0aW9uYWxGbG9hdBInCg9vcHRpb25hbF9kb3VibGUYDCABKAFSDm9wdGlvbmFsRG91YmxlEiMKDW9wdGlvbmFsX2Jvb2wYDSABKAhSDG9wdGlvbmFsQm9vbBInCg9vcHRpb25hbF9zdHJpbmcYDiABKAlSDm9wdGlvbmFsU3RyaW5nEiUKDm9wdGlvbmFsX2J5dGVzGA8gASgMUg1vcHRpb25hbEJ5dGVzEoABChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USdgoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USdwoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEm0KFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNvcHRpb25hbEZvcmVpZ25FbnVtEjYKFW9wdGlvbmFsX3N0cmluZ19waWVjZRgYIAEoCUICCAJSE29wdGlvbmFsU3RyaW5nUGllY2USJwoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAFSDG9wdGlvbmFsQ29yZBJnChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlIQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxKAAQoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEnYKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEncKFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJtChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSKAoMcGFja2VkX2ludDMyGEsgAygFQgWqAQIYAVILcGFja2VkSW50MzISKAoMcGFja2VkX2ludDY0GEwgAygDQgWqAQIYAVILcGFja2VkSW50NjQSKgoNcGFja2VkX3VpbnQzMhhNIAMoDUIFqgECGAFSDHBhY2tlZFVpbnQzMhIqCg1wYWNrZWRfdWludDY0GE4gAygEQgWqAQIYAVIMcGFja2VkVWludDY0EioKDXBhY2tlZF9zaW50MzIYTyADKBFCBaoBAhgBUgxwYWNrZWRTaW50MzISKgoNcGFja2VkX3NpbnQ2NBhQIAMoEkIFqgECGAFSDHBhY2tlZFNpbnQ2NBIsCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0IFqgECGAFSDXBhY2tlZEZpeGVkMzISLAoOcGFja2VkX2ZpeGVkNjQYUiADKAZCBaoBAhgBUg1wYWNrZWRGaXhlZDY0Ei4KD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0IFqgECGAFSDnBhY2tlZFNmaXhlZDMyEi4KD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEIFqgECGAFSDnBhY2tlZFNmaXhlZDY0EigKDHBhY2tlZF9mbG9hdBhVIAMoAkIFqgECGAFSC3BhY2tlZEZsb2F0EioKDXBhY2tlZF9kb3VibGUYViADKAFCBaoBAhgBUgxwYWNrZWREb3VibGUSJgoLcGFja2VkX2Jvb2wYVyADKAhCBaoBAhgBUgpwYWNrZWRCb29sEnoKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtQgWqAQIYAVIQcGFja2VkTmVzdGVkRW51bRIlCg51bnBhY2tlZF9pbnQzMhhZIAMoBVINdW5wYWNrZWRJbnQzMhIlCg51bnBhY2tlZF9pbnQ2NBhaIAMoA1INdW5wYWNrZWRJbnQ2NBInCg91bnBhY2tlZF91aW50MzIYWyADKA1SDnVucGFja2VkVWludDMyEicKD3VucGFja2VkX3VpbnQ2NBhcIAMoBFIOdW5wYWNrZWRVaW50NjQSJwoPdW5wYWNrZWRfc2ludDMyGF0gAygRUg51bnBhY2tlZFNpbnQzMhInCg91bnBhY2tlZF9zaW50NjQYXiADKBJSDnVucGFja2VkU2ludDY0EikKEHVucGFja2VkX2ZpeGVkMzIYXyADKAdSD3VucGFja2VkRml4ZWQzMhIpChB1bnBhY2tlZF9maXhlZDY0GGAgAygGUg91bnBhY2tlZEZpeGVkNjQSKwoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9SEHVucGFja2VkU2ZpeGVkMzISKwoRdW5wYWNrZWRfc2ZpeGVkNjQYYiADKBBSEHVucGFja2VkU2ZpeGVkNjQSJQoOdW5wYWNrZWRfZmxvYXQYYyADKAJSDXVucGFja2VkRmxvYXQSJwoPdW5wYWNrZWRfZG91YmxlGGQgAygBUg51bnBhY2tlZERvdWJsZRIjCg11bnBhY2tlZF9ib29sGGUgAygIUgx1bnBhY2tlZEJvb2wSdwoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVISdW5wYWNrZWROZXN0ZWRFbnVtEnUKD21hcF9pbnQzMl9pbnQzMhg4IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISdQoPbWFwX2ludDY0X2ludDY0GDkgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJ7ChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyEnsKEW1hcF91aW50NjRfdWludDY0GDsgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQSewoRbWFwX3NpbnQzMl9zaW50MzIYPCADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJ7ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EoEBChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEoEBChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0EocBChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYQCADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEocBChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EnIKDm1hcF9pbnQzMl9ib29sGGggAygLMkwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyQm9vbEVudHJ5UgxtYXBJbnQzMkJvb2wSdQoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJ4ChBtYXBfaW50MzJfZG91YmxlGEMgAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEo4BChhtYXBfaW50MzJfbmVzdGVkX21lc3NhZ2UYZyADKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJOZXN0ZWRNZXNzYWdlRW50cnlSFW1hcEludDMyTmVzdGVkTWVzc2FnZRJvCg1tYXBfYm9vbF9ib29sGEQgAygLMksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnsKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSeAoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxKRAQoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJWLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USlAEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMlcucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnlSF21hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlEogBChZtYXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ05lc3RlZEVudW1FbnRyeVITbWFwU3RyaW5nTmVzdGVkRW51bRKLAQoXbWFwX3N0cmluZ19mb3JlaWduX2VudW0YSiADKAsyVC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEnwKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJmCgpvbmVvZl9lbnVtGHcgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1IAFIJb25lb2ZFbnVtElsKBGRhdGEYyQEgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLkRhdGFCBaoBAigCUgRkYXRhEogBChNtdWx0aXdvcmRncm91cGZpZWxkGMwBIAEoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NdWx0aVdvcmRHcm91cEZpZWxkQgWqAQIoAlITbXVsdGl3b3JkZ3JvdXBmaWVsZBIwCg1kZWZhdWx0X2ludDMyGPEBIAEoBToKLTEyMzQ1Njc4OVIMZGVmYXVsdEludDMyEjoKDWRlZmF1bHRfaW50NjQY8gEgASgDOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIMZGVmYXVsdEludDY0EjIKDmRlZmF1bHRfdWludDMyGPMBIAEoDToKMjEyMzQ1Njc4OVINZGVmYXVsdFVpbnQzMhI8Cg5kZWZhdWx0X3VpbnQ2NBj0ASABKAQ6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0VWludDY0EjIKDmRlZmF1bHRfc2ludDMyGPUBIAEoEToKLTEyMzQ1Njc4OVINZGVmYXVsdFNpbnQzMhI8Cg5kZWZhdWx0X3NpbnQ2NBj2ASABKBI6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDY0EjQKD2RlZmF1bHRfZml4ZWQzMhj3ASABKAc6CjIxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDMyEj4KD2RlZmF1bHRfZml4ZWQ2NBj4ASABKAY6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5Ug5kZWZhdWx0Rml4ZWQ2NBI2ChBkZWZhdWx0X3NmaXhlZDMyGPkBIAEoDzoKLTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDMyEkAKEGRlZmF1bHRfc2ZpeGVkNjQY+gEgASgQOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OVIPZGVmYXVsdFNmaXhlZDY0EisKDWRlZmF1bHRfZmxvYXQY+wEgASgCOgU5ZSswOVIMZGVmYXVsdEZsb2F0Ei0KDmRlZmF1bHRfZG91YmxlGPwBIAEoAToFN2UrMjJSDWRlZmF1bHREb3VibGUSKAoMZGVmYXVsdF9ib29sGP0BIAEoCDoEdHJ1ZVILZGVmYXVsdEJvb2wSLwoOZGVmYXVsdF9zdHJpbmcY/gEgASgJOgdSb3NlYnVkUg1kZWZhdWx0U3RyaW5nEiwKDWRlZmF1bHRfYnl0ZXMY/wEgASgMOgZqb3NodWFSDGRlZmF1bHRCeXRlcxIfCgpmaWVsZG5hbWUxGJEDIAEoBVIKZmllbGRuYW1lMRIgCgtmaWVsZF9uYW1lMhiSAyABKAVSCmZpZWxkTmFtZTISIQoMX2ZpZWxkX25hbWUzGJMDIAEoBVIKRmllbGROYW1lMxIiCg1maWVsZF9fbmFtZTRfGJQDIAEoBVIKZmllbGROYW1lNBIhCgtmaWVsZDBuYW1lNRiVAyABKAVSC2ZpZWxkMG5hbWU1EiMKDWZpZWxkXzBfbmFtZTYYlgMgASgFUgtmaWVsZDBOYW1lNhIfCgpmaWVsZE5hbWU3GJcDIAEoBVIKZmllbGROYW1lNxIfCgpGaWVsZE5hbWU4GJgDIAEoBVIKRmllbGROYW1lOBIgCgtmaWVsZF9OYW1lORiZAyABKAVSCmZpZWxkTmFtZTkSIgoMRmllbGRfTmFtZTEwGJoDIAEoBVILRmllbGROYW1lMTASIgoMRklFTERfTkFNRTExGJsDIAEoBVILRklFTEROQU1FMTESIgoMRklFTERfbmFtZTEyGJwDIAEoBVILRklFTEROYW1lMTISJAoOX19maWVsZF9uYW1lMTMYnQMgASgFUgtGaWVsZE5hbWUxMxIkCg5fX0ZpZWxkX25hbWUxNBieAyABKAVSC0ZpZWxkTmFtZTE0EiMKDWZpZWxkX19uYW1lMTUYnwMgASgFUgtmaWVsZE5hbWUxNRIjCg1maWVsZF9fTmFtZTE2GKADIAEoBVILZmllbGROYW1lMTYSJAoOZmllbGRfbmFtZTE3X18YoQMgASgFUgtmaWVsZE5hbWUxNxIkCg5GaWVsZF9uYW1lMThfXxiiAyABKAVSC0ZpZWxkTmFtZTE4En0KE21lc3NhZ2Vfc2V0X2NvcnJlY3QY9AMgASgLMkwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0UhFtZXNzYWdlU2V0Q29ycmVjdBp7Cg1OZXN0ZWRNZXNzYWdlEgwKAWEYASABKAVSAWESXAoLY29yZWN1cnNpdmUYAiABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzJSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARo/ChFNYXBJbnQzMkJvb2xFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARqSAQoaTWFwSW50MzJOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSXgoFdmFsdWUYAiABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGj4KEE1hcEJvb2xCb29sRW50cnkSEAoDa2V5GAEgASgIUgNrZXkSFAoFdmFsdWUYAiABKAhSBXZhbHVlOgI4ARpCChRNYXBTdHJpbmdTdHJpbmdFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBGkEKE01hcFN0cmluZ0J5dGVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARqTAQobTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5El4KBXZhbHVlGAIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqIAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJSCgV2YWx1ZRgCIAEoCzI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yUgV2YWx1ZToCOAEajQEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJbCgV2YWx1ZRgCIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEaggEKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSTwoFdmFsdWUYAiABKA4yOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlIFdmFsdWU6AjgBGkwKBERhdGESIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyGlsKE011bHRpV29yZEdyb3VwRmllbGQSIAoLZ3JvdXBfaW50MzIYzQEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjOASABKA1SC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEajAIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIQCgNzdHIYGSABKAlSA3N0cjLaAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGvACChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAEoBVIBaRJlCgdzdWJfbXNnGAogASgLMkwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0UgZzdWJNc2cy2wEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJMLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJWLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24algIKEkV4dGVuc2lvbldpdGhPbmVvZhIOCgFhGAEgASgFSABSAWESDgoBYhgCIAEoBUgAUgFiMtABChRleHRlbnNpb25fd2l0aF9vbmVvZhJMLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiVmu86IAEoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5FeHRlbnNpb25XaXRoT25lb2ZSEmV4dGVuc2lvbldpdGhPbmVvZkINCgtvbmVvZl9maWVsZCI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUINCgtvbmVvZl9maWVsZEoGCOgHEJBOSggIv4Q9EMCEPVIOcmVzZXJ2ZWRfZmllbGQiJAoURm9yZWlnbk1lc3NhZ2VQcm90bzISDAoBYxgBIAEoBVIBYyJQCgpHcm91cEZpZWxkEh8KC2dyb3VwX2ludDMyGHogASgFUgpncm91cEludDMyEiEKDGdyb3VwX3VpbnQzMhh7IAEoDVILZ3JvdXBVaW50MzIitwMKFVVua25vd25Ub1Rlc3RBbGxUeXBlcxImCg5vcHRpb25hbF9pbnQzMhjpByABKAVSDW9wdGlvbmFsSW50MzISKAoPb3B0aW9uYWxfc3RyaW5nGOoHIAEoCVIOb3B0aW9uYWxTdHJpbmcSZAoObmVzdGVkX21lc3NhZ2UY6wcgASgLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSDW5lc3RlZE1lc3NhZ2USeQoNb3B0aW9uYWxncm91cBjsByABKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Vbmtub3duVG9UZXN0QWxsVHlwZXMuT3B0aW9uYWxHcm91cEIFqgECKAJSDW9wdGlvbmFsZ3JvdXASJAoNb3B0aW9uYWxfYm9vbBjuByABKAhSDG9wdGlvbmFsQm9vbBImCg5yZXBlYXRlZF9pbnQzMhjzByADKAVSDXJlcGVhdGVkSW50MzIaHQoNT3B0aW9uYWxHcm91cBIMCgFhGAEgASgFUgFhIhYKFE51bGxIeXBvdGhlc2lzUHJvdG8yIi8KDkVudW1Pbmx5UHJvdG8yIh0KBEJvb2wSCgoGa0ZhbHNlEAASCQoFa1RydWUQASIlCg9PbmVTdHJpbmdQcm90bzISEgoEZGF0YRgBIAEoCVIEZGF0YSJhChFQcm90b1dpdGhLZXl3b3JkcxIWCgZpbmxpbmUYASABKAVSBmlubGluZRIYCgdjb25jZXB0GAIgASgJUgdjb25jZXB0EhoKCHJlcXVpcmVzGAMgAygJUghyZXF1aXJlcyL2HAoaVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzISLAoOcmVxdWlyZWRfaW50MzIYASABKAVCBaoBAggDUg1yZXF1aXJlZEludDMyEiwKDnJlcXVpcmVkX2ludDY0GAIgASgDQgWqAQIIA1INcmVxdWlyZWRJbnQ2NBIuCg9yZXF1aXJlZF91aW50MzIYAyABKA1CBaoBAggDUg5yZXF1aXJlZFVpbnQzMhIuCg9yZXF1aXJlZF91aW50NjQYBCABKARCBaoBAggDUg5yZXF1aXJlZFVpbnQ2NBIuCg9yZXF1aXJlZF9zaW50MzIYBSABKBFCBaoBAggDUg5yZXF1aXJlZFNpbnQzMhIuCg9yZXF1aXJlZF9zaW50NjQYBiABKBJCBaoBAggDUg5yZXF1aXJlZFNpbnQ2NBIwChByZXF1aXJlZF9maXhlZDMyGAcgASgHQgWqAQIIA1IPcmVxdWlyZWRGaXhlZDMyEjAKEHJlcXVpcmVkX2ZpeGVkNjQYCCABKAZCBaoBAggDUg9yZXF1aXJlZEZpeGVkNjQSMgoRcmVxdWlyZWRfc2ZpeGVkMzIYCSABKA9CBaoBAggDUhByZXF1aXJlZFNmaXhlZDMyEjIKEXJlcXVpcmVkX3NmaXhlZDY0GAogASgQQgWqAQIIA1IQcmVxdWlyZWRTZml4ZWQ2NBIsCg5yZXF1aXJlZF9mbG9hdBgLIAEoAkIFqgECCANSDXJlcXVpcmVkRmxvYXQSLgoPcmVxdWlyZWRfZG91YmxlGAwgASgBQgWqAQIIA1IOcmVxdWlyZWREb3VibGUSKgoNcmVxdWlyZWRfYm9vbBgNIAEoCEIFqgECCANSDHJlcXVpcmVkQm9vbBIuCg9yZXF1aXJlZF9zdHJpbmcYDiABKAlCBaoBAggDUg5yZXF1aXJlZFN0cmluZxIsCg5yZXF1aXJlZF9ieXRlcxgPIAEoDEIFqgECCANSDXJlcXVpcmVkQnl0ZXMSjwEKF3JlcXVpcmVkX25lc3RlZF9tZXNzYWdlGBIgASgLMlAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZUIFqgECCANSFXJlcXVpcmVkTmVzdGVkTWVzc2FnZRJ9ChhyZXF1aXJlZF9mb3JlaWduX21lc3NhZ2UYEyABKAsyPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMkIFqgECCANSFnJlcXVpcmVkRm9yZWlnbk1lc3NhZ2UShgEKFHJlcXVpcmVkX25lc3RlZF9lbnVtGBUgASgOMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTmVzdGVkRW51bUIFqgECCANSEnJlcXVpcmVkTmVzdGVkRW51bRJ0ChVyZXF1aXJlZF9mb3JlaWduX2VudW0YFiABKA4yOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMkIFqgECCANSE3JlcXVpcmVkRm9yZWlnbkVudW0SOwoVcmVxdWlyZWRfc3RyaW5nX3BpZWNlGBggASgJQgcIAqoBAggDUhNyZXF1aXJlZFN0cmluZ1BpZWNlEiwKDXJlcXVpcmVkX2NvcmQYGSABKAlCBwgBqgECCANSDHJlcXVpcmVkQ29yZBJ2ChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yQgWqAQIIA1IQcmVjdXJzaXZlTWVzc2FnZRKAAQoab3B0aW9uYWxfcmVjdXJzaXZlX21lc3NhZ2UYHCABKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIYb3B0aW9uYWxSZWN1cnNpdmVNZXNzYWdlEmUKBGRhdGEYyQEgASgLMkcucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuRGF0YUIHqgEECAMoAlIEZGF0YRI3Cg1kZWZhdWx0X2ludDMyGPEBIAEoBToKLTEyMzQ1Njc4OUIFqgECCANSDGRlZmF1bHRJbnQzMhJBCg1kZWZhdWx0X2ludDY0GPIBIAEoAzoULTkxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUgxkZWZhdWx0SW50NjQSOQoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5QgWqAQIIA1INZGVmYXVsdFVpbnQzMhJDCg5kZWZhdWx0X3VpbnQ2NBj0ASABKAQ6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5QgWqAQIIA1INZGVmYXVsdFVpbnQ2NBI5Cg5kZWZhdWx0X3NpbnQzMhj1ASABKBE6Ci0xMjM0NTY3ODlCBaoBAggDUg1kZWZhdWx0U2ludDMyEkMKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUg1kZWZhdWx0U2ludDY0EjsKD2RlZmF1bHRfZml4ZWQzMhj3ASABKAc6CjIxMjM0NTY3ODlCBaoBAggDUg5kZWZhdWx0Rml4ZWQzMhJFCg9kZWZhdWx0X2ZpeGVkNjQY+AEgASgGOhQxMDEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSDmRlZmF1bHRGaXhlZDY0Ej0KEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5QgWqAQIIA1IPZGVmYXVsdFNmaXhlZDMyEkcKEGRlZmF1bHRfc2ZpeGVkNjQY+gEgASgQOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSD2RlZmF1bHRTZml4ZWQ2NBIyCg1kZWZhdWx0X2Zsb2F0GPsBIAEoAjoFOWUrMDlCBaoBAggDUgxkZWZhdWx0RmxvYXQSNAoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMkIFqgECCANSDWRlZmF1bHREb3VibGUSLwoMZGVmYXVsdF9ib29sGP0BIAEoCDoEdHJ1ZUIFqgECCANSC2RlZmF1bHRCb29sEjYKDmRlZmF1bHRfc3RyaW5nGP4BIAEoCToHUm9zZWJ1ZEIFqgECCANSDWRlZmF1bHRTdHJpbmcSMwoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YUIFqgECCANSDGRlZmF1bHRCeXRlcxqIAgoNTmVzdGVkTWVzc2FnZRITCgFhGAEgASgFQgWqAQIIA1IBYRJrCgtjb3JlY3Vyc2l2ZRgCIAEoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yQgWqAQIIA1ILY29yZWN1cnNpdmUSdQoUb3B0aW9uYWxfY29yZWN1cnNpdmUYAyABKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlITb3B0aW9uYWxDb3JlY3Vyc2l2ZRpaCgREYXRhEicKC2dyb3VwX2ludDMyGMoBIAEoBUIFqgECCANSCmdyb3VwSW50MzISKQoMZ3JvdXBfdWludDMyGMsBIAEoDUIFqgECCANSC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEaowIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIXCgNzdHIYGSABKAlCBaoBAggDUgNzdHIy6gEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJULnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyXi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24aoAIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhITCgFpGAkgASgFQgWqAQIIA1IBaTLrAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uElQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyXi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24iOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASoFCHgQyQFKBgjoBxCQTiK+AwoOVGVzdExhcmdlT25lb2YSSwoCYTEYASABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0TGFyZ2VPbmVvZi5BMUgAUgJhMRJLCgJhMhgCIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkEySABSAmEyEksKAmEzGAMgASgLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTNIAFICYTMSSwoCYTQYBCABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0TGFyZ2VPbmVvZi5BNEgAUgJhNBJLCgJhNRgFIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkE1SABSAmE1GgQKAkExGgQKAkEyGgQKAkEzGgQKAkE0GgQKAkE1Qg0KC2xhcmdlX29uZW9mKkYKEUZvcmVpZ25FbnVtUHJvdG8yEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACOmMKD2V4dGVuc2lvbl9pbnQzMhI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhh4IAEoBVIOZXh0ZW5zaW9uSW50MzI6ZgoQZXh0ZW5zaW9uX3N0cmluZxI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhiFASABKAlSD2V4dGVuc2lvblN0cmluZzpkCg9leHRlbnNpb25fYnl0ZXMSOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIYhgEgASgMUg5leHRlbnNpb25CeXRlczqVAQoKZ3JvdXBmaWVsZBI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhh5IAEoCzIyLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkdyb3VwRmllbGRCBaoBAigCUgpncm91cGZpZWxkQlIKMWNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzJIAfgBAaICDkVkaXRpb25zUHJvdG8ykgMGEAIYAiADSqqiAQoHEgUOALEFAQqTAwoBDBIDDgARMvICIGNsYW5nLWZvcm1hdCBvZmYKIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgogVGVzdCBzY2hlbWEgZm9yIHByb3RvMiBtZXNzYWdlcy4gIFRoaXMgdGVzdCBzY2hlbWEgaXMgdXNlZCBieToKCiAtIGNvbmZvcm1hbmNlIHRlc3RzCjIUIExJTlQ6IEFMTE9XX0dST1VQUwoKCAoBAhIDEAAvCggKAQgSAxIAIwoKCgMIMgISAxIAIwoICgEIEgMTADMKCgoDCDIDEgMTADMKCAoBCBIDFAAnCgoKAwgyBBIDFAAnCggKAQgSAxUASgoJCgIIARIDFQBKCggKAQgSAxYALAoJCgIIJBIDFgAsCggKAQgSAxkAHApECgIICRIDGQAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoKCAoBCBIDGgAfCgkKAggfEgMaAB8K2wIKAgQAEgUjAOkCARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKIEFsc28sIGNydWNpYWxseSwgYWxsIG1lc3NhZ2VzIGFuZCBlbnVtcyBpbiB0aGlzIGZpbGUgYXJlIGV2ZW50dWFsbHkKIHN1Ym1lc3NhZ2VzIG9mIHRoaXMgbWVzc2FnZS4gIFNvIGZvciBleGFtcGxlLCBh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BQQJAgIDEgStBQwNCgwKBAQJAgMSBK4FBA4KDQoFBAkCAwYSBK4FBAYKDQoFBAkCAwESBK4FBwkKDQoFBAkCAwMSBK4FDA0KDAoEBAkCBBIErwUEDgoNCgUECQIEBhIErwUEBgoNCgUECQIEARIErwUHCQoNCgUECQIEAxIErwUMDWIIZWRpdGlvbnNw6AcKvhIKJGdvb2dsZS9wcm90b2J1Zi9zb3VyY2VfY29udGV4dC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIiwKDVNvdXJjZUNvbnRleHQSGwoJZmlsZV9uYW1lGAEgASgJUghmaWxlTmFtZUKKAQoTY29tLmdvb2dsZS5wcm90b2J1ZkISU291cmNlQ29udGV4dFByb3RvUAFaNmdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3NvdXJjZWNvbnRleHRwYqICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rBEAoGEgQeAC8BCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAsCgkKAggBEgMiACwKCAoBCBIDIwAzCgkKAggIEgMjADMKCAoBCBIDJAAiCgkKAggKEgMkACIKCAoBCBIDJQAhCgkKAggkEgMlACEKCAoBCBIDJgA7CgkKAgglEgMmADsKCAoBCBIDJwBNCgkKAggLEgMnAE0KgwEKAgQAEgQrAC8BGncgYFNvdXJjZUNvbnRleHRgIHJlcHJlc2VudHMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBvZiBhCiBwcm90b2J1ZiBlbGVtZW50LCBsaWtlIHRoZSBmaWxlIGluIHdoaWNoIGl0IGlzIGRlZmluZWQuCgoKCgMEAAESAysIFQqjAQoEBAACABIDLgIXGpUBIFRoZSBwYXRoLXF1YWxpZmllZCBuYW1lIG9mIHRoZSAucHJvdG8gZmlsZSB0aGF0IGNvbnRhaW5lZCB0aGUgYXNzb2NpYXRlZAogcHJvdG9idWYgZWxlbWVudC4gIEZvciBleGFtcGxlOiBgImdvb2dsZS9wcm90b2J1Zi9zb3VyY2VfY29udGV4dC5wcm90byJgLgoKDAoFBAACAAUSAy4CCAoMCgUEAAIAARIDLgkSCgwKBQQAAgADEgMuFRZiBnByb3RvMwrkVAoaZ29vZ2xlL3Byb3RvYnVmL3R5cGUucHJvdG8SD2dvb2dsZS5wcm90b2J1ZhoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvIqcCCgRUeXBlEhIKBG5hbWUYASABKAlSBG5hbWUSLgoGZmllbGRzGAIgAygLMhYuZ29vZ2xlLnByb3RvYnVmLkZpZWxkUgZmaWVsZHMSFgoGb25lb2ZzGAMgAygJUgZvbmVvZnMSMQoHb3B0aW9ucxgEIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSRQoOc291cmNlX2NvbnRleHQYBSABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFINc291cmNlQ29udGV4dBIvCgZzeW50YXgYBiABKA4yFy5nb29nbGUucHJvdG9idWYuU3ludGF4UgZzeW50YXgSGAoHZWRpdGlvbhgHIAEoCVIHZWRpdGlvbiK0BgoFRmllbGQSLwoEa2luZBgBIAEoDjIbLmdvb2dsZS5wcm90b2J1Zi5GaWVsZC5LaW5kUgRraW5kEkQKC2NhcmRpbmFsaXR5GAIgASgOMiIuZ29vZ2xlLnByb3RvYnVmLkZpZWxkLkNhcmRpbmFsaXR5UgtjYXJkaW5hbGl0eRIWCgZudW1iZXIYAyABKAVSBm51bWJlchISCgRuYW1lGAQgASgJUgRuYW1lEhkKCHR5cGVfdXJsGAYgASgJUgd0eXBlVXJsEh8KC29uZW9mX2luZGV4GAcgASgFUgpvbmVvZkluZGV4EhYKBnBhY2tlZBgIIAEoCFIGcGFja2VkEjEKB29wdGlvbnMYCSADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEhsKCWpzb25fbmFtZRgKIAEoCVIIanNvbk5hbWUSIwoNZGVmYXVsdF92YWx1ZRgLIAEoCVIMZGVmYXVsdFZhbHVlIsgCCgRLaW5kEhAKDFRZUEVfVU5LTk9XThAAEg8KC1RZUEVfRE9VQkxFEAESDgoKVFlQRV9GTE9BVBACEg4KClRZUEVfSU5UNjQQAxIPCgtUWVBFX1VJTlQ2NBAEEg4KClRZUEVfSU5UMzIQBRIQCgxUWVBFX0ZJWEVENjQQBhIQCgxUWVBFX0ZJWEVEMzIQBxINCglUWVBFX0JPT0wQCBIPCgtUWVBFX1NUUklORxAJEg4KClRZUEVfR1JPVVAQChIQCgxUWVBFX01FU1NBR0UQCxIOCgpUWVBFX0JZVEVTEAwSDwoLVFlQRV9VSU5UMzIQDRINCglUWVBFX0VOVU0QDhIRCg1UWVBFX1NGSVhFRDMyEA8SEQoNVFlQRV9TRklYRUQ2NBAQEg8KC1RZUEVfU0lOVDMyEBESDwoLVFlQRV9TSU5UNjQQEiJ0CgtDYXJkaW5hbGl0eRIXChNDQVJESU5BTElUWV9VTktOT1dOEAASGAoUQ0FSRElOQUxJVFlfT1BUSU9OQUwQARIYChRDQVJESU5BTElUWV9SRVFVSVJFRBACEhgKFENBUkRJTkFMSVRZX1JFUEVBVEVEEAMimQIKBEVudW0SEgoEbmFtZRgBIAEoCVIEbmFtZRI4CgllbnVtdmFsdWUYAiADKAsyGi5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlUgllbnVtdmFsdWUSMQoHb3B0aW9ucxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSRQoOc291cmNlX2NvbnRleHQYBCABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFINc291cmNlQ29udGV4dBIvCgZzeW50YXgYBSABKA4yFy5nb29nbGUucHJvdG9idWYuU3ludGF4UgZzeW50YXgSGAoHZWRpdGlvbhgGIAEoCVIHZWRpdGlvbiJqCglFbnVtVmFsdWUSEgoEbmFtZRgBIAEoCVIEbmFtZRIWCgZudW1iZXIYAiABKAVSBm51bWJlchIxCgdvcHRpb25zGAMgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucyJICgZPcHRpb24SEgoEbmFtZRgBIAEoCVIEbmFtZRIqCgV2YWx1ZRgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSBXZhbHVlKkMKBlN5bnRheBIRCg1TWU5UQVhfUFJPVE8yEAASEQoNU1lOVEFYX1BST1RPMxABEhMKD1NZTlRBWF9FRElUSU9OUxACQnsKE2NvbS5nb29nbGUucHJvdG9idWZCCVR5cGVQcm90b1ABWi1nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi90eXBlcGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK9kUKBxIFHgDYAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO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cmVzZXJ2ZSBhbGwKIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSB0byBtb2RlbCB0aGUgc2NoZW1hIGFuZCBwcmVzZXJ2ZSBzZW1hbnRpY3MuIEluc3RlYWQKIG1ha2UgdXNlIG9mIEZpbGVEZXNjcmlwdG9yU2V0IHdoaWNoIHByZXNlcnZlcyB0aGUgbmVjZXNzYXJ5IGluZm9ybWF0aW9uLgoKCwoDBAMBEgS0AQgRCiAKBAQDAgASBLYBAhIaEiBFbnVtIHZhbHVlIG5hbWUuCgoNCgUEAwIABRIEtgECCAoNCgUEAwIAARIEtgEJDQoNCgUEAwIAAxIEtgEQEQoiCgQEAwIBEgS4AQITGhQgRW51bSB2YWx1ZSBudW1iZXIuCgoNCgUEAwIBBRIEuAECBwoNCgUEAwIBARIEuAEIDgoNCgUEAwIBAxIEuAEREgooCgQEAwICEgS6AQIeGhogUHJvdG9jb2wgYnVmZmVyIG9wdGlvbnMuCgoNCgUEAwICBBIEugECCgoNCgUEAwICBhIEugELEQoNCgUEAwICARIEugESGQoNCgUEAwICAxIEugEcHQqhAgoCBAQSBsMBAM4BARqSAiBBIHByb3RvY29sIGJ1ZmZlciBvcHRpb24sIHdoaWNoIGNhbiBiZSBhdHRhY2hlZCB0byBhIG1lc3NhZ2UsIGZpZWxkLAogZW51bWVyYXRpb24sIGV0Yy4KCiBOZXcgdXNhZ2VzIG9mIHRoaXMgbWVzc2FnZSBhcyBhbiBhbHRlcm5hdGl2ZSB0byBGaWxlT3B0aW9ucywgTWVzc2FnZU9wdGlvbnMsCiBGaWVsZE9wdGlvbnMsIEVudW1PcHRpb25zLCBFbnVtVmFsdWVPcHRpb25zLCBTZXJ2aWNlT3B0aW9ucywgb3IgTWV0aG9kT3B0aW9ucwogYXJlIHN0cm9uZ2x5IGRpc2NvdXJhZ2VkLgoKCwoDBAQBEgTDAQgOCvwBCgQEBAIAEgTIAQISGu0BIFRoZSBvcHRpb24ncyBuYW1lLiBGb3IgcHJvdG9idWYgYnVpbHQtaW4gb3B0aW9ucyAob3B0aW9ucyBkZWZpbmVkIGluCiBkZXNjcmlwdG9yLnByb3RvKSwgdGhpcyBpcyB0aGUgc2hvcnQgbmFtZS4gRm9yIGV4YW1wbGUsIGAibWFwX2VudHJ5ImAuCiBGb3IgY3VzdG9tIG9wdGlvbnMsIGl0IHNob3VsZCBiZSB0aGUgZnVsbHktcXVhbGlmaWVkIG5hbWUuIEZvciBleGFtcGxlLAogYCJnb29nbGUuYXBpLmh0dHAiYC4KCg0KBQQEAgAFEgTIAQIICg0KBQQEAgABEgTIAQkNCg0KBQQEAgADEgTIARARCqACCgQEBAIBEgTNAQIQGpECIFRoZSBvcHRpb24ncyB2YWx1ZSBwYWNrZWQgaW4gYW4gQW55IG1lc3NhZ2UuIElmIHRoZSB2YWx1ZSBpcyBhIHByaW1pdGl2ZSwKIHRoZSBjb3JyZXNwb25kaW5nIHdyYXBwZXIgdHlwZSBkZWZpbmVkIGluIGdvb2dsZS9wcm90b2J1Zi93cmFwcGVycy5wcm90bwogc2hvdWxkIGJlIHVzZWQuIElmIHRoZSB2YWx1ZSBpcyBhbiBlbnVtLCBpdCBzaG91bGQgYmUgc3RvcmVkIGFzIGFuIGludDMyCiB2YWx1ZSB1c2luZyB0aGUgZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWUgdHlwZS4KCg0KBQQEAgEGEgTNAQIFCg0KBQQEAgEBEgTNAQYLCg0KBQQEAgEDEgTNAQ4PCkkKAgUAEgbRAQDYAQEaOyBUaGUgc3ludGF4IGluIHdoaWNoIGEgcHJvdG9jb2wgYnVmZmVyIGVsZW1lbnQgaXMgZGVmaW5lZC4KCgsKAwUAARIE0QEFCwogCgQFAAIAEgTTAQIUGhIgU3ludGF4IGBwcm90bzJgLgoKDQoFBQACAAESBNMBAg8KDQoFBQACAAISBNMBEhMKIAoEBQACARIE1QECFBoSIFN5bnRheCBgcHJvdG8zYC4KCg0KBQUAAgEBEgTVAQIPCg0KBQUAAgECEgTVARITCiIKBAUAAgISBNcBAhYaFCBTeW50YXggYGVkaXRpb25zYC4KCg0KBQUAAgIBEgTXAQIRCg0KBQUAAgICEgTXARQVYgZwcm90bzMK7UwKGWdvb2dsZS9wcm90b2J1Zi9hcGkucHJvdG8SD2dvb2dsZS5wcm90b2J1ZhokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvGhpnb29nbGUvcHJvdG9idWYvdHlwZS5wcm90byLbAgoDQXBpEhIKBG5hbWUYASABKAlSBG5hbWUSMQoHbWV0aG9kcxgCIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RSB21ldGhvZHMSMQoHb3B0aW9ucxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSGAoHdmVyc2lvbhgEIAEoCVIHdmVyc2lvbhJFCg5zb3VyY2VfY29udGV4dBgFIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0Ug1zb3VyY2VDb250ZXh0Ei4KBm1peGlucxgGIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5NaXhpblIGbWl4aW5zEi8KBnN5bnRheBgHIAEoDjIXLmdvb2dsZS5wcm90b2J1Zi5TeW50YXhSBnN5bnRheBIYCgdlZGl0aW9uGAggASgJUgdlZGl0aW9uItQCCgZNZXRob2QSEgoEbmFtZRgBIAEoCVIEbmFtZRIoChByZXF1ZXN0X3R5cGVfdXJsGAIgASgJUg5yZXF1ZXN0VHlwZVVybBIrChFyZXF1ZXN0X3N0cmVhbWluZxgDIAEoCFIQcmVxdWVzdFN0cmVhbWluZxIqChFyZXNwb25zZV90eXBlX3VybBgEIAEoCVIPcmVzcG9uc2VUeXBlVXJsEi0KEnJlc3BvbnNlX3N0cmVhbWluZxgFIAEoCFIRcmVzcG9uc2VTdHJlYW1pbmcSMQoHb3B0aW9ucxgGIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSMwoGc3ludGF4GAcgASgOMhcuZ29vZ2xlLnByb3RvYnVmLlN5bnRheEICGAFSBnN5bnRheBIcCgdlZGl0aW9uGAggASgJQgIYAVIHZWRpdGlvbiIvCgVNaXhpbhISCgRuYW1lGAEgASgJUgRuYW1lEhIKBHJvb3QYAiABKAlSBHJvb3RCdgoTY29tLmdvb2dsZS5wcm90b2J1ZkIIQXBpUHJvdG9QAVosZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vYXBpcGKiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKlkUKBxIFHgDkAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoJCgIDABIDIgAuCgkKAgMBEgMjACQKCAoBCBIDJQAsCgkKAggBEgMlACwKCAoBCBIDJgApCgkKAggIEgMmACkKCAoBCBIDJwAiCgkKAggKEgMnACIKCAoBCBIDKAAhCgkKAggkEgMoACEKCAoBCBIDKQA7CgkKAgglEgMpADsKCAoBCBIDKgBDCgkKAggLEgMqAEMK0wYKAgQAEgQ6AGcBGsYGIEFwaSBpcyBhIGxpZ2h0LXdlaWdodCBkZXNjcmlwdG9yIGZvciBhbiBBUEkgSW50ZXJmYWNlLgoKIEludGVyZmFjZXMgYXJlIGFsc28gZGVzY3JpYmVkIGFzICJwcm90b2NvbCBidWZmZXIgc2VydmljZXMiIGluIHNvbWUgY29udGV4dHMsCiBzdWNoIGFzIGJ5IHRoZSAic2VydmljZSIga2V5d29yZCBpbiBhIC5wcm90byBmaWxlLCBidXQgdGhleSBhcmUgZGlmZmVyZW50CiBmcm9tIEFQSSBTZXJ2aWNlcywgd2hpY2ggcmVwcmVzZW50IGEgY29uY3JldGUgaW1wbGVtZW50YXRpb24gb2YgYW4gaW50ZXJmYWNlCiBhcyBvcHBvc2VkIHRvIHNpbXBseSBhIGRlc2NyaXB0aW9uIG9mIG1ldGhvZHMgYW5kIGJpbmRpbmdzLiBUaGV5IGFyZSBhbHNvCiBzb21ldGltZXMgc2ltcGx5IHJlZmVycmVkIHRvIGFzICJBUElzIiBpbiBvdGhlciBjb250ZXh0cywgc3VjaCBhcyB0aGUgbmFtZSBvZgogdGhpcyBtZXNzYWdlIGl0c2VsZi4gU2VlIGh0dHBzOi8vY2xvdWQuZ29vZ2xlLmNvbS9hcGlzL2Rlc2lnbi9nbG9zc2FyeSBmb3IKIGRldGFpbGVkIHRlcm1pbm9sb2d5LgoKIE5ldyB1c2FnZXMgb2YgdGhpcyBtZXNzYWdlIGFzIGFuIGFsdGVybmF0aXZlIHRvIFNlcnZpY2VEZXNjcmlwdG9yUHJvdG8gYXJlCiBzdHJvbmdseSBkaXNjb3VyYWdlZC4gVGhpcyBtZXNzYWdlIGRvZXMgbm90IHJlbGlhYmlsaXR5IHByZXNlcnZlIGFsbAogaW5mb3JtYXRpb24gbmVjZXNzYXJ5IHRvIG1vZGVsIHRoZSBzY2hlbWEgYW5kIHByZXNlcnZlIHNlbWFudGljcy4gSW5zdGVhZAogbWFrZSB1c2Ugb2YgRmlsZURlc2NyaXB0b3JTZXQgd2hpY2ggcHJlc2VydmVzIHRoZSBuZWNlc3NhcnkgaW5mb3JtYXRpb24uCgoKCgMEAAESAzoICwp7CgQEAAIAEgM9AhIabiBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhpcyBpbnRlcmZhY2UsIGluY2x1ZGluZyBwYWNrYWdlIG5hbWUKIGZvbGxvd2VkIGJ5IHRoZSBpbnRlcmZhY2UncyBzaW1wbGUgbmFtZS4KCgwKBQQAAgAFEgM9AggKDAoFBAACAAESAz0JDQoMCgUEAAIAAxIDPRARCkMKBAQAAgESA0ACHho2IFRoZSBtZXRob2RzIG9mIHRoaXMgaW50ZXJmYWNlLCBpbiB1bnNwZWNpZmllZCBvcmRlci4KCgwKBQQAAgEEEgNAAgoKDAoFBAACAQYSA0ALEQoMCgUEAAIBARIDQBIZCgwKBQQAAgEDEgNAHB0KNgoEBAACAhIDQwIeGikgQW55IG1ldGFkYXRhIGF0dGFjaGVkIHRvIHRoZSBpbnRlcmZhY2UuCgoMCgUEAAICBBIDQwIKCgwKBQQAAgIGEgNDCxEKDAoFBAACAgESA0MSGQoMCgUEAAICAxIDQxwdCoEICgQEAAIDEgNZAhUa8wcgQSB2ZXJzaW9uIHN0cmluZyBmb3IgdGhpcyBpbnRlcmZhY2UuIElmIHNwZWNpZmllZCwgbXVzdCBoYXZlIHRoZSBmb3JtCiBgbWFqb3ItdmVyc2lvbi5taW5vci12ZXJzaW9uYCwgYXMgaW4gYDEuMTBgLiBJZiB0aGUgbWlub3IgdmVyc2lvbiBpcwogb21pdHRlZCwgaXQgZGVmYXVsdHMgdG8gemVyby4gSWYgdGhlIGVudGlyZSB2ZXJzaW9uIGZpZWxkIGlzIGVtcHR5LCB0aGUKIG1ham9yIHZlcnNpb24gaXMgZGVyaXZlZCBmcm9tIHRoZSBwYWNrYWdlIG5hbWUsIGFzIG91dGxpbmVkIGJlbG93LiBJZiB0aGUKIGZpZWxkIGlzIG5vdCBlbXB0eSwgdGhlIHZlcnNpb24gaW4gdGhlIHBhY2thZ2UgbmFtZSB3aWxsIGJlIHZlcmlmaWVkIHRvIGJlCiBjb25zaXN0ZW50IHdpdGggd2hhdCBpcyBwcm92aWRlZCBoZXJlLgoKIFRoZSB2ZXJzaW9uaW5nIHNjaGVtYSB1c2VzIFtzZW1hbnRpYwogdmVyc2lvbmluZ10oaHR0cDovL3NlbXZlci5vcmcpIHdoZXJlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlcgogaW5kaWNhdGVzIGEgYnJlYWtpbmcgY2hhbmdlIGFuZCB0aGUgbWlub3IgdmVyc2lvbiBhbiBhZGRpdGl2ZSwKIG5vbi1icmVha2luZyBj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bgogICBzdHJpbmcgb2YgdGhlIHJlZGVjbGFyZWQgbWV0aG9kIGlzIGVtcHR5LCBpdCB3aWxsIGJlIGluaGVyaXRlZAogICBmcm9tIHRoZSBvcmlnaW5hbCBtZXRob2QuCgogLSBFYWNoIGFubm90YXRpb24gYmVsb25naW5nIHRvIHRoZSBzZXJ2aWNlIGNvbmZpZyAoaHR0cCwKICAgdmlzaWJpbGl0eSkgd2hpY2ggaXMgbm90IHNldCBpbiB0aGUgcmVkZWNsYXJlZCBtZXRob2Qgd2lsbCBiZQogICBpbmhlcml0ZWQuCgogLSBJZiBhbiBodHRwIGFubm90YXRpb24gaXMgaW5oZXJpdGVkLCB0aGUgcGF0aCBwYXR0ZXJuIHdpbGwgYmUKICAgbW9kaWZpZWQgYXMgZm9sbG93cy4gQW55IHZlcnNpb24gcHJlZml4IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlCiAgIHZlcnNpb24gb2YgdGhlIGluY2x1ZGluZyBpbnRlcmZhY2UgcGx1cyB0aGUgW3Jvb3RdW10gcGF0aCBpZgogICBzcGVjaWZpZWQuCgogRXhhbXBsZSBvZiBhIHNpbXBsZSBtaXhpbjoKCiAgICAgcGFja2FnZSBnb29nbGUuYWNsLnYxOwogICAgIHNlcnZpY2UgQWNjZXNzQ29udHJvbCB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YxL3tyZXNvdXJjZT0qKn06Z2V0QWNsIjsKICAgICAgIH0KICAgICB9CgogICAgIHBhY2thZ2UgZ29vZ2xlLnN0b3JhZ2UudjI7CiAgICAgc2VydmljZSBTdG9yYWdlIHsKICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKTsKCiAgICAgICAvLyBHZXQgYSBkYXRhIHJlY29yZC4KICAgICAgIHJwYyBHZXREYXRhKEdldERhdGFSZXF1ZXN0KSByZXR1cm5zIChEYXRhKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL3tyZXNvdXJjZT0qKn0iOwogICAgICAgfQogICAgIH0KCiBFeGFtcGxlIG9mIGEgbWl4aW4gY29uZmlndXJhdGlvbjoKCiAgICAgYXBpczoKICAgICAtIG5hbWU6IGdvb2dsZS5zdG9yYWdlLnYyLlN0b3JhZ2UKICAgICAgIG1peGluczoKICAgICAgIC0gbmFtZTogZ29vZ2xlLmFjbC52MS5BY2Nlc3NDb250cm9sCgogVGhlIG1peGluIGNvbnN0cnVjdCBpbXBsaWVzIHRoYXQgYWxsIG1ldGhvZHMgaW4gYEFjY2Vzc0NvbnRyb2xgIGFyZQogYWxzbyBkZWNsYXJlZCB3aXRoIHNhbWUgbmFtZSBhbmQgcmVxdWVzdC9yZXNwb25zZSB0eXBlcyBpbgogYFN0b3JhZ2VgLiBBIGRvY3VtZW50YXRpb24gZ2VuZXJhdG9yIG9yIGFubm90YXRpb24gcHJvY2Vzc29yIHdpbGwKIHNlZSB0aGUgZWZmZWN0aXZlIGBTdG9yYWdlLkdldEFjbGAgbWV0aG9kIGFmdGVyIGluaGVyaXRpbmcKIGRvY3VtZW50YXRpb24gYW5kIGFubm90YXRpb25zIGFzIGZvbGxvd3M6CgogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL3tyZXNvdXJjZT0qKn06Z2V0QWNsIjsKICAgICAgIH0KICAgICAgIC4uLgogICAgIH0KCiBOb3RlIGhvdyB0aGUgdmVyc2lvbiBpbiB0aGUgcGF0aCBwYXR0ZXJuIGNoYW5nZWQgZnJvbSBgdjFgIHRvIGB2MmAuCgogSWYgdGhlIGByb290YCBmaWVsZCBpbiB0aGUgbWl4aW4gaXMgc3BlY2lmaWVkLCBpdCBzaG91bGQgYmUgYQogcmVsYXRpdmUgcGF0aCB1bmRlciB3aGljaCBpbmhlcml0ZWQgSFRUUCBwYXRocyBhcmUgcGxhY2VkLiBFeGFtcGxlOgoKICAgICBhcGlzOgogICAgIC0gbmFtZTogZ29vZ2xlLnN0b3JhZ2UudjIuU3RvcmFnZQogICAgICAgbWl4aW5zOgogICAgICAgLSBuYW1lOiBnb29nbGUuYWNsLnYxLkFjY2Vzc0NvbnRyb2wKICAgICAgICAgcm9vdDogYWNscwoKIFRoaXMgaW1wbGllcyB0aGUgZm9sbG93aW5nIGluaGVyaXRlZCBIVFRQIGFubm90YXRpb246CgogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL2FjbHMve3Jlc291cmNlPSoqfTpnZXRBY2wiOwogICAgICAgfQogICAgICAgLi4uCiAgICAgfQoKCwoDBAIBEgTdAQgNCkwKBAQCAgASBN8BAhIaPiBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIGludGVyZmFjZSB3aGljaCBpcyBpbmNsdWRlZC4KCg0KBQQCAgAFEgTfAQIICg0KBQQCAgABEgTfAQkNCg0KBQQCAgADEgTfARARClsKBAQCAgESBOMBAhIaTSBJZiBub24tZW1wdHkgc3BlY2lmaWVzIGEgcGF0aCB1bmRlciB3aGljaCBpbmhlcml0ZWQgSFRUUCBwYXRocwogYXJlIHJvb3RlZC4KCg0KBQQCAgEFEgTjAQIICg0KBQQCAgEBEgTjAQkNCg0KBQQCAgEDEgTjARARYgZwcm90bzMKzmIKL2dvb2dsZS9wcm90b2J1Zi91bml0dGVzdF93ZWxsX2tub3duX3R5cGVzLnByb3RvEg9wcm90bzJfdW5pdHRlc3QaGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8aGWdvb2dsZS9wcm90b2J1Zi9hcGkucHJvdG8aHmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvGiBnb29nbGUvcHJvdG9idWYvZmllbGRfbWFzay5wcm90bxokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvGhxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvGhpnb29nbGUvcHJvdG9idWYvdHlwZS5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvIrQJChJUZXN0V2VsbEtub3duVHlwZXMSMQoJYW55X2ZpZWxkGAEgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIIYW55RmllbGQSMQoJYXBpX2ZpZWxkGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaVIIYXBpRmllbGQSQAoOZHVyYXRpb25fZmllbGQYAyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SDWR1cmF0aW9uRmllbGQSNwoLZW1wdHlfZmllbGQYBCABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlSCmVtcHR5RmllbGQSRAoQZmllbGRfbWFza19maWVsZBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSDmZpZWxkTWFza0ZpZWxkElAKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgASgLMh4uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvbnRleHRSEnNvdXJjZUNvbnRleHRGaWVsZBI6CgxzdHJ1Y3RfZmllbGQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0UgtzdHJ1Y3RGaWVsZBJDCg90aW1lc3RhbXBfZmllbGQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUg50aW1lc3RhbXBGaWVsZBI0Cgp0eXBlX2ZpZWxkGAkgASgLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVSCXR5cGVGaWVsZBI/Cgxkb3VibGVfZmllbGQYCiABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVSC2RvdWJsZUZpZWxkEjwKC2Zsb2F0X2ZpZWxkGAsgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSCmZsb2F0RmllbGQSPAoLaW50NjRfZmllbGQYDCABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIKaW50NjRGaWVsZBI/Cgx1aW50NjRfZmllbGQYDSABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSC3VpbnQ2NEZpZWxkEjwKC2ludDMyX2ZpZWxkGA4gASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSCmludDMyRmllbGQSPwoMdWludDMyX2ZpZWxkGA8gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUgt1aW50MzJGaWVsZBI5Cgpib29sX2ZpZWxkGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZVIJYm9vbEZpZWxkEj8KDHN0cmluZ19maWVsZBgRIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVILc3RyaW5nRmllbGQSPAoLYnl0ZXNfZmllbGQYEiABKAsyGy5nb29nbGUucHJvdG9idWYuQnl0ZXNWYWx1ZVIKYnl0ZXNGaWVsZBI3Cgt2YWx1ZV9maWVsZBgTIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVIKdmFsdWVGaWVsZCL/CAoWUmVwZWF0ZWRXZWxsS25vd25UeXBlcxIxCglhbnlfZmllbGQYASADKAsyFC5nb29nbGUucHJvdG9idWYuQW55UghhbnlGaWVsZBIxCglhcGlfZmllbGQYAiADKAsyFC5nb29nbGUucHJvdG9idWYuQXBpUghhcGlGaWVsZBJACg5kdXJhdGlvbl9maWVsZBgDIAMoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblINZHVyYXRpb25GaWVsZBI3CgtlbXB0eV9maWVsZBgEIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVIKZW1wdHlGaWVsZBJEChBmaWVsZF9tYXNrX2ZpZWxkGAUgAygLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IOZmllbGRNYXNrRmllbGQSUAoUc291cmNlX2NvbnRleHRfZmllbGQYBiADKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFISc291cmNlQ29udGV4dEZpZWxkEjoKDHN0cnVjdF9maWVsZBgHIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSC3N0cnVjdEZpZWxkEkMKD3RpbWVzdGFtcF9maWVsZBgIIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSDnRpbWVzdGFtcEZpZWxkEjQKCnR5cGVfZmllbGQYCSADKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZVIJdHlwZUZpZWxkEj8KDGRvdWJsZV9maWVsZBgKIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVILZG91YmxlRmllbGQSPAoLZmxvYXRfZmllbGQYCyADKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIKZmxvYXRGaWVsZBI8CgtpbnQ2NF9maWVsZBgMIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUgppbnQ2NEZpZWxkEj8KDHVpbnQ2NF9maWVsZBgNIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVILdWludDY0RmllbGQSPAoLaW50MzJfZmllbGQYDiADKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIKaW50MzJGaWVsZBI/Cgx1aW50MzJfZmllbGQYDyADKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSC3VpbnQzMkZpZWxkEjkKCmJvb2xfZmllbGQYECADKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUglib29sRmllbGQSPwoMc3RyaW5nX2ZpZWxkGBEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUgtzdHJpbmdGaWVsZBI8CgtieXRlc19maWVsZBgSIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUgpieXRlc0ZpZWxkIq8JChNPbmVvZldlbGxLbm93blR5cGVzEjMKCWFueV9maWVsZBgBIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlIAFIIYW55RmllbGQSMwoJYXBpX2ZpZWxkGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaUgAUghhcGlGaWVsZBJCCg5kdXJhdGlvbl9maWVsZBgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkgAUg1kdXJhdGlvbkZpZWxkEjkKC2VtcHR5X2ZpZWxkGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5SABSCmVtcHR5RmllbGQSRgoQZmllbGRfbWFza19maWVsZBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tIAFIOZmllbGRNYXNrRmllbGQSUgoUc291cmNlX2NvbnRleHRfZmllbGQYBiABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dEgAUhJzb3VyY2VDb250ZXh0RmllbGQSPAoMc3RydWN0X2ZpZWxkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAUgtzdHJ1Y3RGaWVsZBJFCg90aW1lc3RhbXBfZmllbGQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSABSDnRpbWVzdGFtcEZpZWxkEjYKCnR5cGVfZmllbGQYCSABKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZUgAUgl0eXBlRmllbGQSQQoMZG91YmxlX2ZpZWxkGAogASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlSABSC2RvdWJsZUZpZWxkEj4KC2Zsb2F0X2ZpZWxkGAsgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVIAFIKZmxvYXRGaWVsZBI+CgtpbnQ2NF9maWVsZBgMIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlSABSCmludDY0RmllbGQSQQoMdWludDY0X2ZpZWxkGA0gASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlSABSC3VpbnQ2NEZpZWxkEj4KC2ludDMyX2ZpZWxkGA4gASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVIAFIKaW50MzJGaWVsZBJBCgx1aW50MzJfZmllbGQYDyABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVIAFILdWludDMyRmllbGQSOwoKYm9vbF9maWVsZBgQIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVIAFIJYm9vbEZpZWxkEkEKDHN0cmluZ19maWVsZBgRIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZUgAUgtzdHJpbmdGaWVsZBI+CgtieXRlc19maWVsZBgSIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlSABSCmJ5dGVzRmllbGRCDQoLb25lb2ZfZmllbGQitBkKEU1hcFdlbGxLbm93blR5cGVzEk0KCWFueV9maWVsZBgBIAMoCzIwLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5BbnlGaWVsZEVudHJ5UghhbnlGaWVsZBJNCglhcGlfZmllbGQYAiADKAsyMC5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuQXBpRmllbGRFbnRyeVIIYXBpRmllbGQSXAoOZHVyYXRpb25fZmllbGQYAyADKAsyNS5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRHVyYXRpb25GaWVsZEVudHJ5Ug1kdXJhdGlvbkZpZWxkElMKC2VtcHR5X2ZpZWxkGAQgAygLMjIucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkVtcHR5RmllbGRFbnRyeVIKZW1wdHlGaWVsZBJgChBmaWVsZF9tYXNrX2ZpZWxkGAUgAygLMjYucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkZpZWxkTWFza0ZpZWxkRW50cnlSDmZpZWxkTWFza0ZpZWxkEmwKFHNvdXJjZV9jb250ZXh0X2ZpZWxkGAYgAygLMjoucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlNvdXJjZUNvbnRleHRGaWVsZEVudHJ5UhJzb3VyY2VDb250ZXh0RmllbGQSVgoMc3RydWN0X2ZpZWxkGAcgAygLMjMucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlN0cnVjdEZpZWxkRW50cnlSC3N0cnVjdEZpZWxkEl8KD3RpbWVzdGFtcF9maWVsZBgIIAMoCzI2LnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5UaW1lc3RhbXBGaWVsZEVudHJ5Ug50aW1lc3RhbXBGaWVsZBJQCgp0eXBlX2ZpZWxkGAkgAygLMjEucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlR5cGVGaWVsZEVudHJ5Ugl0eXBlRmllbGQSVgoMZG91YmxlX2ZpZWxkGAogAygLMjMucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkRvdWJsZUZpZWxkRW50cnlSC2RvdWJsZUZpZWxkElMKC2Zsb2F0X2ZpZWxkGAsgAygLMjIucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkZsb2F0RmllbGRFbnRyeVIKZmxvYXRGaWVsZBJTCgtpbnQ2NF9maWVsZBgMIAMoCzIyLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5JbnQ2NEZpZWxkRW50cnlSCmludDY0RmllbGQSVgoMdWludDY0X2ZpZWxkGA0gAygLMjMucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlVpbnQ2NEZpZWxkRW50cnlSC3VpbnQ2NEZpZWxkElMKC2ludDMyX2ZpZWxkGA4gAygLMjIucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkludDMyRmllbGRFbnRyeVIKaW50MzJGaWVsZBJWCgx1aW50MzJfZmllbGQYDyADKAsyMy5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuVWludDMyRmllbGRFbnRyeVILdWludDMyRmllbGQSUAoKYm9vbF9maWVsZBgQIAMoCzIxLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5Cb29sRmllbGRFbnRyeVIJYm9vbEZpZWxkElYKDHN0cmluZ19maWVsZBgRIAMoCzIzLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5TdHJpbmdGaWVsZEVudHJ5UgtzdHJpbmdGaWVsZBJTCgtieXRlc19maWVsZBgSIAMoCzIyLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5CeXRlc0ZpZWxkRW50cnlSCmJ5dGVzRmllbGQaUQoNQW55RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIqCgV2YWx1ZRgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSBXZhbHVlOgI4ARpRCg1BcGlGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EioKBXZhbHVlGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFwaVIFdmFsdWU6AjgBGlsKEkR1cmF0aW9uRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIvCgV2YWx1ZRgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIFdmFsdWU6AjgBGlUKD0VtcHR5RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIsCgV2YWx1ZRgCIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVIFdmFsdWU6AjgBGl0KE0ZpZWxkTWFza0ZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMAoFdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUgV2YWx1ZToCOAEaZQoXU291cmNlQ29udGV4dEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSNAoFdmFsdWUYAiABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFIFdmFsdWU6AjgBGlcKEFN0cnVjdEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSLQoFdmFsdWUYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0UgV2YWx1ZToCOAEaXQoTVGltZXN0YW1wRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIwCgV2YWx1ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSBXZhbHVlOgI4ARpTCg5UeXBlRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIrCgV2YWx1ZRgCIAEoCzIVLmdvb2dsZS5wcm90b2J1Zi5UeXBlUgV2YWx1ZToCOAEaXAoQRG91YmxlRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIFdmFsdWU6AjgBGloKD0Zsb2F0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUgV2YWx1ZToCOAEaWgoPSW50NjRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSBXZhbHVlOgI4ARpcChBVaW50NjRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjIKBXZhbHVlGAIgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUgV2YWx1ZToCOAEaWgoPSW50MzJGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSBXZhbHVlOgI4ARpcChBVaW50MzJGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjIKBXZhbHVlGAIgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQzMlZhbHVlUgV2YWx1ZToCOAEaWAoOQm9vbEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMAoFdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUgV2YWx1ZToCOAEaXAoQU3RyaW5nRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIyCgV2YWx1ZRgCIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIFdmFsdWU6AjgBGloKD0J5dGVzRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUgV2YWx1ZToCOAFCOQoYY29tLmdvb2dsZS5wcm90b2J1Zi50ZXN0UAGqAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0ruKQoGEgQHAHgBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2Yg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IGdvb2dsZS9wcm90b2J1Zi9maWVsZF9tYXNrLnByb3RvGhxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvGh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8is1wKElRlc3RBbGxUeXBlc1Byb3RvMxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxJ3ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USZwoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMi0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USbgoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEl4KFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUhNvcHRpb25hbEZvcmVpZ25FbnVtEnEKFW9wdGlvbmFsX2FsaWFzZWRfZW51bRgXIAEoDjI9LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5BbGlhc2VkRW51bVITb3B0aW9uYWxBbGlhc2VkRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSXgoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzNSEHJlY3Vyc2l2ZU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSdwoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEmcKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzItLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEm4KFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJeChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yKi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduRW51bVITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSJQoMcGFja2VkX2ludDMyGEsgAygFQgIQAVILcGFja2VkSW50MzISJQoMcGFja2VkX2ludDY0GEwgAygDQgIQAVILcGFja2VkSW50NjQSJwoNcGFja2VkX3VpbnQzMhhNIAMoDUICEAFSDHBhY2tlZFVpbnQzMhInCg1wYWNrZWRfdWludDY0GE4gAygEQgIQAVIMcGFja2VkVWludDY0EicKDXBhY2tlZF9zaW50MzIYTyADKBFCAhABUgxwYWNrZWRTaW50MzISJwoNcGFja2VkX3NpbnQ2NBhQIAMoEkICEAFSDHBhY2tlZFNpbnQ2NBIpCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0ICEAFSDXBhY2tlZEZpeGVkMzISKQoOcGFja2VkX2ZpeGVkNjQYUiADKAZCAhABUg1wYWNrZWRGaXhlZDY0EisKD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0ICEAFSDnBhY2tlZFNmaXhlZDMyEisKD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEICEAFSDnBhY2tlZFNmaXhlZDY0EiUKDHBhY2tlZF9mbG9hdBhVIAMoAkICEAFSC3BhY2tlZEZsb2F0EicKDXBhY2tlZF9kb3VibGUYViADKAFCAhABUgxwYWNrZWREb3VibGUSIwoLcGFja2VkX2Jvb2wYVyADKAhCAhABUgpwYWNrZWRCb29sEm4KEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtQgIQAVIQcGFja2VkTmVzdGVkRW51bRIpCg51bnBhY2tlZF9pbnQzMhhZIAMoBUICEABSDXVucGFja2VkSW50MzISKQoOdW5wYWNrZWRfaW50NjQYWiADKANCAhAAUg11bnBhY2tlZEludDY0EisKD3VucGFja2VkX3VpbnQzMhhbIAMoDUICEABSDnVucGFja2VkVWludDMyEisKD3VucGFja2VkX3VpbnQ2NBhcIAMoBEICEABSDnVucGFja2VkVWludDY0EisKD3VucGFja2VkX3NpbnQzMhhdIAMoEUICEABSDnVucGFja2VkU2ludDMyEisKD3VucGFja2VkX3NpbnQ2NBheIAMoEkICEABSDnVucGFja2VkU2ludDY0Ei0KEHVucGFja2VkX2ZpeGVkMzIYXyADKAdCAhAAUg91bnBhY2tlZEZpeGVkMzISLQoQdW5wYWNrZWRfZml4ZWQ2NBhgIAMoBkICEABSD3VucGFja2VkRml4ZWQ2NBIvChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMoD0ICEABSEHVucGFja2VkU2ZpeGVkMzISLwoRdW5wYWNrZWRfc2ZpeGVkNjQYYiADKBBCAhAAUhB1bnBhY2tlZFNmaXhlZDY0EikKDnVucGFja2VkX2Zsb2F0GGMgAygCQgIQAFINdW5wYWNrZWRGbG9hdBIrCg91bnBhY2tlZF9kb3VibGUYZCADKAFCAhAAUg51bnBhY2tlZERvdWJsZRInCg11bnBhY2tlZF9ib29sGGUgAygIQgIQAFIMdW5wYWNrZWRCb29sEnIKFHVucGFja2VkX25lc3RlZF9lbnVtGGYgAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1CAhAAUhJ1bnBhY2tlZE5lc3RlZEVudW0SbAoPbWFwX2ludDMyX2ludDMyGDggAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJsCg9tYXBfaW50NjRfaW50NjQYOSADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EnIKEW1hcF91aW50MzJfdWludDMyGDogAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzIScgoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJyChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEnIKEW1hcF9zaW50NjRfc2ludDY0GD0gAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSeAoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ4ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0En4KFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISfgoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GEEgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJsCg9tYXBfaW50MzJfZmxvYXQYQiADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0Em8KEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSZgoNbWFwX2Jvb2xfYm9vbBhEIAMoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJyChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEm8KEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nQnl0ZXNFbnRyeVIObWFwU3RyaW5nQnl0ZXMSiAEKGW1hcF9zdHJpbmdfbmVzdGVkX21lc3NhZ2UYRyADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5UhZtYXBTdHJpbmdOZXN0ZWRNZXNzYWdlEosBChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRJ/ChZtYXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ05lc3RlZEVudW1FbnRyeVITbWFwU3RyaW5nTmVzdGVkRW51bRKCAQoXbWFwX3N0cmluZ19mb3JlaWduX2VudW0YSiADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEnMKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJdCgpvbmVvZl9lbnVtGHcgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1IAFIJb25lb2ZFbnVtEkYKEG9uZW9mX251bGxfdmFsdWUYeCABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSABSDm9uZW9mTnVsbFZhbHVlEk8KFW9wdGlvbmFsX2Jvb2xfd3JhcHBlchjJASABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUhNvcHRpb25hbEJvb2xXcmFwcGVyElIKFm9wdGlvbmFsX2ludDMyX3dyYXBwZXIYygEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSFG9wdGlvbmFsSW50MzJXcmFwcGVyElIKFm9wdGlvbmFsX2ludDY0X3dyYXBwZXIYywEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSFG9wdGlvbmFsSW50NjRXcmFwcGVyElUKF29wdGlvbmFsX3VpbnQzMl93cmFwcGVyGMwBIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIVb3B0aW9uYWxVaW50MzJXcmFwcGVyElUKF29wdGlvbmFsX3VpbnQ2NF93cmFwcGVyGM0BIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIVb3B0aW9uYWxVaW50NjRXcmFwcGVyElIKFm9wdGlvbmFsX2Zsb2F0X3dyYXBwZXIYzgEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSFG9wdGlvbmFsRmxvYXRXcmFwcGVyElUKF29wdGlvbmFsX2RvdWJsZV93cmFwcGVyGM8BIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIVb3B0aW9uYWxEb3VibGVXcmFwcGVyElUKF29wdGlvbmFsX3N0cmluZ193cmFwcGVyGNABIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIVb3B0aW9uYWxTdHJpbmdXcmFwcGVyElIKFm9wdGlvbmFsX2J5dGVzX3dyYXBwZXIY0QEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSFG9wdGlvbmFsQnl0ZXNXcmFwcGVyEk8KFXJlcGVhdGVkX2Jvb2xfd3JhcHBlchjTASADKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUhNyZXBlYXRlZEJvb2xXcmFwcGVyElIKFnJlcGVhdGVkX2ludDMyX3dyYXBwZXIY1AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSFHJlcGVhdGVkSW50MzJXcmFwcGVyElIKFnJlcGVhdGVkX2ludDY0X3dyYXBwZXIY1QEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSFHJlcGVhdGVkSW50NjRXcmFwcGVyElUKF3JlcGVhdGVkX3VpbnQzMl93cmFwcGVyGNYBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIVcmVwZWF0ZWRVaW50MzJXcmFwcGVyElUKF3JlcGVhdGVkX3VpbnQ2NF93cmFwcGVyGNcBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIVcmVwZWF0ZWRVaW50NjRXcmFwcGVyElIKFnJlcGVhdGVkX2Zsb2F0X3dyYXBwZXIY2AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSFHJlcGVhdGVkRmxvYXRXcmFwcGVyElUKF3JlcGVhdGVkX2RvdWJsZV93cmFwcGVyGNkBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIVcmVwZWF0ZWREb3VibGVXcmFwcGVyElUKF3JlcGVhdGVkX3N0cmluZ193cmFwcGVyGNoBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIVcmVwZWF0ZWRTdHJpbmdXcmFwcGVyElIKFnJlcGVhdGVkX2J5dGVzX3dyYXBwZXIY2wEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSFHJlcGVhdGVkQnl0ZXNXcmFwcGVyEkcKEW9wdGlvbmFsX2R1cmF0aW9uGK0CIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIQb3B0aW9uYWxEdXJhdGlvbhJKChJvcHRpb25hbF90aW1lc3RhbXAYrgIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIRb3B0aW9uYWxUaW1lc3RhbXASSwoTb3B0aW9uYWxfZmllbGRfbWFzaxivAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFvcHRpb25hbEZpZWxkTWFzaxJBCg9vcHRpb25hbF9zdHJ1Y3QYsAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOb3B0aW9uYWxTdHJ1Y3QSOAoMb3B0aW9uYWxfYW55GLECIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC29wdGlvbmFsQW55Ej4KDm9wdGlvbmFsX3ZhbHVlGLICIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINb3B0aW9uYWxWYWx1ZRJLChNvcHRpb25hbF9udWxsX3ZhbHVlGLMCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVSEW9wdGlvbmFsTnVsbFZhbHVlEj4KDm9wdGlvbmFsX2VtcHR5GLQCIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVINb3B0aW9uYWxFbXB0eRJHChFyZXBlYXRlZF9kdXJhdGlvbhi3AiADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25SEHJlcGVhdGVkRHVyYXRpb24SSgoScmVwZWF0ZWRfdGltZXN0YW1wGLgCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEXJlcGVhdGVkVGltZXN0YW1wEkoKEnJlcGVhdGVkX2ZpZWxkbWFzaxi5AiADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFyZXBlYXRlZEZpZWxkbWFzaxJBCg9yZXBlYXRlZF9zdHJ1Y3QYxAIgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOcmVwZWF0ZWRTdHJ1Y3QSOAoMcmVwZWF0ZWRfYW55GLsCIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC3JlcGVhdGVkQW55Ej4KDnJlcGVhdGVkX3ZhbHVlGLwCIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINcmVwZWF0ZWRWYWx1ZRJLChNyZXBlYXRlZF9saXN0X3ZhbHVlGL0CIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5MaXN0VmFsdWVSEXJlcGVhdGVkTGlzdFZhbHVlEj4KDnJlcGVhdGVkX2VtcHR5GL4CIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVINcmVwZWF0ZWRFbXB0eRIfCgpmaWVsZG5hbWUxGJEDIAEoBVIKZmllbGRuYW1lMRIgCgtmaWVsZF9uYW1lMhiSAyABKAVSCmZpZWxkTmFtZTISIQoMX2ZpZWxkX25hbWUzGJMDIAEoBVIKRmllbGROYW1lMxIiCg1maWVsZF9fbmFtZTRfGJQDIAEoBVIKZmllbGROYW1lNBIhCgtmaWVsZDBuYW1lNRiVAyABKAVSC2ZpZWxkMG5hbWU1EiMKDWZpZWxkXzBfbmFtZTYYlgMgASgFUgtmaWVsZDBOYW1lNhIfCgpmaWVsZE5hbWU3GJcDIAEoBVIKZmllbGROYW1lNxIfCgpGaWVsZE5hbWU4GJgDIAEoBVIKRmllbGROYW1lOBIgCgtmaWVsZF9OYW1lORiZAyABKAVSCmZpZWxkTmFtZTkSIgoMRmllbGRfTmFtZTEwGJoDIAEoBVILRmllbGROYW1lMTASIgoMRklFTERfTkFNRTExGJsDIAEoBVILRklFTEROQU1FMTESIgoMRklFTERfbmFtZTEyGJwDIAEoBVILRklFTEROYW1lMTISJAoOX19maWVsZF9uYW1lMTMYnQMgASgFUgtGaWVsZE5hbWUxMxIkCg5fX0ZpZWxkX25hbWUxNBieAyABKAVSC0ZpZWxkTmFtZTE0EiMKDWZpZWxkX19uYW1lMTUYnwMgASgFUgtmaWVsZE5hbWUxNRIjCg1maWVsZF9fTmFtZTE2GKADIAEoBVILZmllbGROYW1lMTYSJAoOZmllbGRfbmFtZTE3X18YoQMgASgFUgtmaWVsZE5hbWUxNxIkCg5GaWVsZF9uYW1lMThfXxiiAyABKAVSC0ZpZWxkTmFtZTE4GnIKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJTCgtjb3JlY3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvM1ILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARpBChNNYXBTdHJpbmdCeXRlc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgMUgV2YWx1ZToCOAEaigEKG01hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJVCgV2YWx1ZRgCIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaeQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJDCgV2YWx1ZRgCIAEoCzItLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEahAEKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJSCgV2YWx1ZRgCIAEoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUgV2YWx1ZToCOAEacwoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJACgV2YWx1ZRgCIAEoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUgV2YWx1ZToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2VkRW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19CQVoQAhIHCgNNT08QAhIHCgNtb28QAhIHCgNiQXoQAhoCEAFCDQoLb25lb2ZfZmllbGRKBgj1AxD/A0oICL+EPRDAhD1SDnJlc2VydmVkX2ZpZWxkIh4KDkZvcmVpZ25NZXNzYWdlEgwKAWMYASABKAVSAWMiFgoUTnVsbEh5cG90aGVzaXNQcm90bzMiLwoORW51bU9ubHlQcm90bzMiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABKkAKC0ZvcmVpZ25FbnVtEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACQjgKKGNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzNIAfgBAaICBlByb3RvM0r+aAoHEgUOAI8CAQqIAwoBDBIDDgASMv0CIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgogVGVzdCBzY2hlbWEgZm9yIHByb3RvMyBtZXNzYWdlcy4gIFRoaXMgdGVzdCBzY2hlbWEgaXMgdXNlZCBieToKCiAtIGJlbmNobWFya3MKIC0gZnV6eiB0ZXN0cwogLSBjb25mb3JtYW5jZSB0ZXN0cwoKCggKAQIS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bmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxJ3ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USbQoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USbgoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmQKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNvcHRpb25hbEZvcmVpZ25FbnVtEjYKFW9wdGlvbmFsX3N0cmluZ19waWVjZRgYIAEoCUICCAJSE29wdGlvbmFsU3RyaW5nUGllY2USJwoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAFSDG9wdGlvbmFsQ29yZBJeChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlIQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJ3ChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USbQoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USbgoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmQKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIlCgxwYWNrZWRfaW50MzIYSyADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYTCADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGE0gAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYTiADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhhPIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GFAgAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGFEgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGFMgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GFQgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GFUgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhWIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhXIAMoCEICEAFSCnBhY2tlZEJvb2wSbgoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1CAhABUhBwYWNrZWROZXN0ZWRFbnVtEikKDnVucGFja2VkX2ludDMyGFkgAygFQgIQAFINdW5wYWNrZWRJbnQzMhIpCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0ICEABSDXVucGFja2VkSW50NjQSKwoPdW5wYWNrZWRfdWludDMyGFsgAygNQgIQAFIOdW5wYWNrZWRVaW50MzISKwoPdW5wYWNrZWRfdWludDY0GFwgAygEQgIQAFIOdW5wYWNrZWRVaW50NjQSKwoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgIQAFIOdW5wYWNrZWRTaW50MzISKwoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgIQAFIOdW5wYWNrZWRTaW50NjQSLQoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB0ICEABSD3VucGFja2VkRml4ZWQzMhItChB1bnBhY2tlZF9maXhlZDY0GGAgAygGQgIQAFIPdW5wYWNrZWRGaXhlZDY0Ei8KEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgIQAFIQdW5wYWNrZWRTZml4ZWQzMhIvChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEICEABSEHVucGFja2VkU2ZpeGVkNjQSKQoOdW5wYWNrZWRfZmxvYXQYYyADKAJCAhAAUg11bnBhY2tlZEZsb2F0EisKD3VucGFja2VkX2RvdWJsZRhkIAMoAUICEABSDnVucGFja2VkRG91YmxlEicKDXVucGFja2VkX2Jvb2wYZSADKAhCAhAAUgx1bnBhY2tlZEJvb2wScgoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUICEABSEnVucGFja2VkTmVzdGVkRW51bRJsCg9tYXBfaW50MzJfaW50MzIYOCADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEmwKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQScgoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJyChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnIKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzIScgoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ4ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEngKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSfgoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJ+ChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EmkKDm1hcF9pbnQzMl9ib29sGGggAygLMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyQm9vbEVudHJ5UgxtYXBJbnQzMkJvb2wSbAoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJvChBtYXBfaW50MzJfZG91YmxlGEMgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEoUBChhtYXBfaW50MzJfbmVzdGVkX21lc3NhZ2UYZyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJOZXN0ZWRNZXNzYWdlRW50cnlSFW1hcEludDMyTmVzdGVkTWVzc2FnZRJmCg1tYXBfYm9vbF9ib29sGEQgAygLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnIKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSbwoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxKIAQoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USiwEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnlSF21hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlEn8KFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEoIBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzIScwoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEl0KCm9uZW9mX2VudW0YdyABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SSwoEZGF0YRjJASABKAoyNi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuRGF0YVIEZGF0YRJ4ChNtdWx0aXdvcmRncm91cGZpZWxkGMwBIAEoCjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NdWx0aVdvcmRHcm91cEZpZWxkUhNtdWx0aXdvcmRncm91cGZpZWxkEjAKDWRlZmF1bHRfaW50MzIY8QEgASgFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASABKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAEoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgASgROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAEoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAEoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASABKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASABKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASABKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgSdAoTbWVzc2FnZV9zZXRfY29ycmVjdBj0AyABKAsyQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RSEW1lc3NhZ2VTZXRDb3JyZWN0GnIKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJTCgtjb3JlY3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGj8KEU1hcEludDMyQm9vbEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGokBChpNYXBJbnQzMk5lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRJVCgV2YWx1ZRgCIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGooBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSVQoFdmFsdWUYAiABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGn8KHE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSSQoFdmFsdWUYAiABKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIFdmFsdWU6AjgBGoQBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSUgoFdmFsdWUYAiABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIFdmFsdWU6AjgBGnkKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSRgoFdmFsdWUYAiABKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlIFdmFsdWU6AjgBGkwKBERhdGESIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyGlsKE011bHRpV29yZEdyb3VwRmllbGQSIAoLZ3JvdXBfaW50MzIYzQEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjOASABKA1SC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEa+gEKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIQCgNzdHIYGSABKAlSA3N0cjLIAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGtUCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAEoBVIBaRJcCgdzdWJfbXNnGAogASgLMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0UgZzdWJNc2cyyQEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjJSE21lc3NhZ2VTZXRFeHRlbnNpb24ahAIKEkV4dGVuc2lvbldpdGhPbmVvZhIOCgFhGAEgASgFSABSAWESDgoBYhgCIAEoBUgAUgFiMr4BChRleHRlbnNpb25fd2l0aF9vbmVvZhJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiVmu86IAEoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5FeHRlbnNpb25XaXRoT25lb2ZSEmV4dGVuc2lvbldpdGhPbmVvZkINCgtvbmVvZl9maWVsZCI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUINCgtvbmVvZl9maWVsZEoGCOgHEJBOSggIv4Q9EMCEPVIOcmVzZXJ2ZWRfZmllbGQiJAoURm9yZWlnbk1lc3NhZ2VQcm90bzISDAoBYxgBIAEoBVIBYyJQCgpHcm91cEZpZWxkEh8KC2dyb3VwX2ludDMyGHogASgFUgpncm91cEludDMyEiEKDGdyb3VwX3VpbnQzMhh7IAEoDVILZ3JvdXBVaW50MzIingMKFVVua25vd25Ub1Rlc3RBbGxUeXBlcxImCg5vcHRpb25hbF9pbnQzMhjpByABKAVSDW9wdGlvbmFsSW50MzISKAoPb3B0aW9uYWxfc3RyaW5nGOoHIAEoCVIOb3B0aW9uYWxTdHJpbmcSWwoObmVzdGVkX21lc3NhZ2UY6wcgASgLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSDW5lc3RlZE1lc3NhZ2USaQoNb3B0aW9uYWxncm91cBjsByABKAoyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Vbmtub3duVG9UZXN0QWxsVHlwZXMuT3B0aW9uYWxHcm91cFINb3B0aW9uYWxncm91cBIkCg1vcHRpb25hbF9ib29sGO4HIAEoCFIMb3B0aW9uYWxCb29sEiYKDnJlcGVhdGVkX2ludDMyGPMHIAMoBVINcmVwZWF0ZWRJbnQzMhodCg1PcHRpb25hbEdyb3VwEgwKAWEYASABKAVSAWEiFgoUTnVsbEh5cG90aGVzaXNQcm90bzIiLwoORW51bU9ubHlQcm90bzIiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABIiUKD09uZVN0cmluZ1Byb3RvMhISCgRkYXRhGAEgASgJUgRkYXRhImEKEVByb3RvV2l0aEtleXdvcmRzEhYKBmlubGluZRgBIAEoBVIGaW5saW5lEhgKB2NvbmNlcHQYAiABKAlSB2NvbmNlcHQSGgoIcmVxdWlyZXMYAyADKAlSCHJlcXVpcmVzIswZChpUZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMhIlCg5yZXF1aXJlZF9pbnQzMhgBIAIoBVINcmVxdWlyZWRJbnQzMhIlCg5yZXF1aXJlZF9pbnQ2NBgCIAIoA1INcmVxdWlyZWRJbnQ2NBInCg9yZXF1aXJlZF91aW50MzIYAyACKA1SDnJlcXVpcmVkVWludDMyEicKD3JlcXVpcmVkX3VpbnQ2NBgEIAIoBFIOcmVxdWlyZWRVaW50NjQSJwoPcmVxdWlyZWRfc2ludDMyGAUgAigRUg5yZXF1aXJlZFNpbnQzMhInCg9yZXF1aXJlZF9zaW50NjQYBiACKBJSDnJlcXVpcmVkU2ludDY0EikKEHJlcXVpcmVkX2ZpeGVkMzIYByACKAdSD3JlcXVpcmVkRml4ZWQzMhIpChByZXF1aXJlZF9maXhlZDY0GAggAigGUg9yZXF1aXJlZEZpeGVkNjQSKwoRcmVxdWlyZWRfc2ZpeGVkMzIYCSACKA9SEHJlcXVpcmVkU2ZpeGVkMzISKwoRcmVxdWlyZWRfc2ZpeGVkNjQYCiACKBBSEHJlcXVpcmVkU2ZpeGVkNjQSJQoOcmVxdWlyZWRfZmxvYXQYCyACKAJSDXJlcXVpcmVkRmxvYXQSJwoPcmVxdWlyZWRfZG91YmxlGAwgAigBUg5yZXF1aXJlZERvdWJsZRIjCg1yZXF1aXJlZF9ib29sGA0gAigIUgxyZXF1aXJlZEJvb2wSJwoPcmVxdWlyZWRfc3RyaW5nGA4gAigJUg5yZXF1aXJlZFN0cmluZxIlCg5yZXF1aXJlZF9ieXRlcxgPIAIoDFINcmVxdWlyZWRCeXRlcxJ/ChdyZXF1aXJlZF9uZXN0ZWRfbWVzc2FnZRgSIAIoCzJHLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFXJlcXVpcmVkTmVzdGVkTWVzc2FnZRJtChhyZXF1aXJlZF9mb3JlaWduX21lc3NhZ2UYEyACKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWcmVxdWlyZWRGb3JlaWduTWVzc2FnZRJ2ChRyZXF1aXJlZF9uZXN0ZWRfZW51bRgVIAIoDjJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEnJlcXVpcmVkTmVzdGVkRW51bRJkChVyZXF1aXJlZF9mb3JlaWduX2VudW0YFiACKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITcmVxdWlyZWRGb3JlaWduRW51bRI2ChVyZXF1aXJlZF9zdHJpbmdfcGllY2UYGCACKAlCAggCUhNyZXF1aXJlZFN0cmluZ1BpZWNlEicKDXJlcXVpcmVkX2NvcmQYGSACKAlCAggBUgxyZXF1aXJlZENvcmQSZgoRcmVjdXJzaXZlX21lc3NhZ2UYGyACKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIQcmVjdXJzaXZlTWVzc2FnZRJ3ChpvcHRpb25hbF9yZWN1cnNpdmVfbWVzc2FnZRgcIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yUhhvcHRpb25hbFJlY3Vyc2l2ZU1lc3NhZ2USUwoEZGF0YRjJASACKAoyPi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5EYXRhUgRkYXRhEjAKDWRlZmF1bHRfaW50MzIY8QEgAigFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASACKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgAigNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAIoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgAigROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAIoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAIoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAIoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgAigPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASACKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASACKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgAigBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgAigIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASACKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASACKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzGugBCg1OZXN0ZWRNZXNzYWdlEgwKAWEYASACKAVSAWESWwoLY29yZWN1cnNpdmUYAiACKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUSbAoUb3B0aW9uYWxfY29yZWN1cnNpdmUYAyABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlITb3B0aW9uYWxDb3JlY3Vyc2l2ZRpMCgREYXRhEiAKC2dyb3VwX2ludDMyGMoBIAIoBVIKZ3JvdXBJbnQzMhIiCgxncm91cF91aW50MzIYywEgAigNUgtncm91cFVpbnQzMhohChFNZXNzYWdlU2V0Q29ycmVjdCoICAQQ/////wc6AggBGooCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjESEAoDc3RyGBkgAigJUgNzdHIy2AEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24ahwIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhIMCgFpGAkgAigFUgFpMtkBChVtZXNzYWdlX3NldF9leHRlbnNpb24SSy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJVLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUoGCOgHEJBOIpEDCg5UZXN0TGFyZ2VPbmVvZhJCCgJhMRgBIAEoCzIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkExSABSAmExEkIKAmEyGAIgASgLMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTJIAFICYTISQgoCYTMYAyABKAsyMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0TGFyZ2VPbmVvZi5BM0gAUgJhMxJCCgJhNBgEIAEoCzIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkE0SABSAmE0EkIKAmE1GAUgASgLMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTVIAFICYTUaBAoCQTEaBAoCQTIaBAoCQTMaBAoCQTQaBAoCQTVCDQoLbGFyZ2Vfb25lb2YqRgoRRm9yZWlnbkVudW1Qcm90bzISDwoLRk9SRUlHTl9GT08QABIPCgtGT1JFSUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAI6WgoPZXh0ZW5zaW9uX2ludDMyEjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGHggASgFUg5leHRlbnNpb25JbnQzMjpdChBleHRlbnNpb25fc3RyaW5nEjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGIUBIAEoCVIPZXh0ZW5zaW9uU3RyaW5nOlsKD2V4dGVuc2lvbl9ieXRlcxIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhiGASABKAxSDmV4dGVuc2lvbkJ5dGVzOnwKCmdyb3VwZmllbGQSMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIYeSABKAoyKS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Hcm91cEZpZWxkUgpncm91cGZpZWxkQjgKKGNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzJIAfgBAaICBlByb3RvMkrapwEKBxIFDgClAwEKggMKAQwSAw4AEjLhAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKIFRlc3Qgc2NoZW1hIGZvciBwcm90bzIgbWVzc2FnZXMuICBUaGlzIHRlc3Qgc2NoZW1hIGlzIHVzZWQgYnk6CgogLSBjb25mb3JtYW5jZSB0ZXN0cwoKMhQgTElOVDogQUxMT1dfR1JPVVBTCgoICgECEgMQACYKCAoBCBIDEgBBCgkKAggBEgMSAEEKCAoBCBIDEwAkCgkKAggkEgMTACQKCAoBCBIDFgAcCkQKAggJEgMWABwaOSBUaGlzIGlzIHRoZSBkZWZhdWx0LCBidXQgd2Ugc3BlY2lmeSBpdCBoZXJlIGV4cGxpY2l0bHkuCgoICgEIEgMYAB8KCQoCCB8SAxgAHwrbAgoCBAASBSIAgwIBGs0CIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAogZm9ybXMuCgogQWxzbywgY3J1Y2lhbGx5LCBhbGwgbWVzc2FnZXMgYW5kIGVudW1zIGluIHRoaXMgZmlsZSBhcmUgZXZlbnR1YWxseQogc3VibWVzc2FnZXMgb2YgdGhpcyBtZXNzYWdlLiAgU28gZm9yIGV4YW1wbGUsIGEgZnV6eiB0ZXN0IG9mIFRlc3RBbGxUeXBlcwogY291bGQgdHJpZ2dlciBidWdzIHRoYXQgb2NjdXIgaW4gYW55IG1lc3NhZ2UgdHlwZSBpbiB0aGlzIGZpbGUuICBXZSB2ZXJpZnkKIHRoaXMgc3RheXMgdHJ1ZSBpbiBhIHVuaXQgdGVzdC4KCgoKAwQAARIDIggaCgwKBAQAAwAS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ZmV0aW1lc0VudW1SCmN1c3RvbUVudW0STwoUcmVwZWF0ZWRfY3VzdG9tX2VudW0YAiADKA4yHS5wYi5DdXN0b21PcHRpb25MaWZldGltZXNFbnVtUhJyZXBlYXRlZEN1c3RvbUVudW0iyAEKC1Rlc3RNZXNzYWdlGl8KBk5lc3RlZDJVCgt0ZXN0X25lc3RlZBIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0GI1OIAEoCzIWLnBiLlRlc3ROZXN0ZWRGZWF0dXJlc1IKdGVzdE5lc3RlZDJYCgx0ZXN0X21lc3NhZ2USGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldBiOTiABKAsyFy5wYi5UZXN0TWVzc2FnZUZlYXR1cmVzUgt0ZXN0TWVzc2FnZSKgAQoTVGVzdE1lc3NhZ2VGZWF0dXJlcxKIAQoMZmlsZV9mZWF0dXJlGAEgASgOMg8ucGIuRW51bUZlYXR1cmVCVIgBAZgBAaIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY5weiAQsSBlZBTFVFMxjoB6IBDBIGVkFMVUU0GJ2NBqIBDBIGVkFMVUU1GJ6NBrIBAwjoB1ILZmlsZUZlYXR1cmUinwEKElRlc3ROZXN0ZWRGZWF0dXJlcxKIAQoMZmlsZV9mZWF0dXJlGAEgASgOMg8ucGIuRW51bUZlYXR1cmVCVIgBAZgBAaIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY5weiAQsSBlZBTFVFMxjoB6IBDBIGVkFMVUU0GJ2NBqIBDBIGVkFMVUU1GJ6NBrIBAwjoB1ILZmlsZUZlYXR1cmUiuhMKDFRlc3RGZWF0dXJlcxKIAQoMZmlsZV9mZWF0dXJlGAEgASgOMg8ucGIuRW51bUZlYXR1cmVCVIgBAZgBAaIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY5weiAQsSBlZBTFVFMxjoB6IBDBIGVkFMVUU0GJ2NBqIBDBIGVkFMVUU1GJ6NBrIBAwjoB1ILZmlsZUZlYXR1cmUSYwoXZXh0ZW5zaW9uX3JhbmdlX2ZlYXR1cmUYAiABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAECogELEgZWQUxVRTEYhAeyAQMI6AdSFWV4dGVuc2lvblJhbmdlRmVhdHVyZRJUCg9tZXNzYWdlX2ZlYXR1cmUYAyABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEDogELEgZWQUxVRTEYhAeyAQMI6AdSDm1lc3NhZ2VGZWF0dXJlElAKDWZpZWxkX2ZlYXR1cmUYBCABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEEogELEgZWQUxVRTEYhAeyAQMI6AdSDGZpZWxkRmVhdHVyZRJQCg1vbmVvZl9mZWF0dXJlGAUgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBaIBCxIGVkFMVUUxGIQHsgEDCOgHUgxvbmVvZkZlYXR1cmUSTgoMZW51bV9mZWF0dXJlGAYgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBqIBCxIGVkFMVUUxGIQHsgEDCOgHUgtlbnVtRmVhdHVyZRJZChJlbnVtX2VudHJ5X2ZlYXR1cmUYByABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEHogELEgZWQUxVRTEYhAeyAQMI6AdSEGVudW1FbnRyeUZlYXR1cmUSVAoPc2VydmljZV9mZWF0dXJlGAggASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBCKIBCxIGVkFMVUUxGIQHsgEDCOgHUg5zZXJ2aWNlRmVhdHVyZRJSCg5tZXRob2RfZmVhdHVyZRgJIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQmiAQsSBlZBTFVFMRiEB7IBAwjoB1INbWV0aG9kRmVhdHVyZRJuChBtdWx0aXBsZV9mZWF0dXJlGAogASgOMg8ucGIuRW51bUZlYXR1cmVCMogBAZgBAZgBBJgBA5gBBpgBB5gBCJgBCZgBBZgBAqIBCxIGVkFMVUUxGIQHsgEDCOgHUg9tdWx0aXBsZUZlYXR1cmUSVAoSYm9vbF9maWVsZF9mZWF0dXJlGAsgASgIQiaIAQGYAQSiAQoSBWZhbHNlGIQHogEKEgR0cnVlGJ2NBrIBAwjoB1IQYm9vbEZpZWxkRmVhdHVyZRJqCg5zb3VyY2VfZmVhdHVyZRgPIAEoDjIPLnBiLkVudW1GZWF0dXJlQjKIAQKYAQGYAQSYAQOYAQaYAQeYAQiYAQmYAQWYAQKiAQsSBlZBTFVFMRiEB7IBAwjoB1INc291cmNlRmVhdHVyZRJsCg9zb3VyY2VfZmVhdHVyZTIYECABKA4yDy5wYi5FbnVtRmVhdHVyZUIyiAECmAEBmAEEmAEDmAEGmAEHmAEImAEJmAEFmAECogELEgZWQUxVRTEYhAeyAQMI6AdSDnNvdXJjZUZlYXR1cmUyErwBCg9yZW1vdmVkX2ZlYXR1cmUYESABKA4yDy5wYi5FbnVtRmVhdHVyZUKBAYgBAZgBAZgBBKIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY6AeiAQsSBlZBTFVFMxjpB7IBSwjoBxDoBxoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyDpByocQ3VzdG9tIGZlYXR1cmUgcmVtb3ZhbCBlcnJvclIOcmVtb3ZlZEZlYXR1cmUScgocc2FtZV9lZGl0aW9uX3JlbW92ZWRfZmVhdHVyZRgVIAEoDjIPLnBiLkVudW1GZWF0dXJlQiCIAQGYAQGYAQSiAQsSBlZBTFVFMRiEB7IBBgjoByDoB1IZc2FtZUVkaXRpb25SZW1vdmVkRmVhdHVyZRJjCg5mdXR1cmVfZmVhdHVyZRgSIAEoDjIPLnBiLkVudW1GZWF0dXJlQiuIAQGYAQGYAQSiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOkHsgEDCOkHUg1mdXR1cmVGZWF0dXJlEoQBCg5sZWdhY3lfZmVhdHVyZRgTIAEoDjIPLnBiLkVudW1GZWF0dXJlQkyIAQGYAQGYAQSiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOgHsgEkCOcHIOgHKhxDdXN0b20gZmVhdHVyZSByZW1vdmFsIGVycm9yUg1sZWdhY3lGZWF0dXJlEoICChZ2YWx1ZV9saWZldGltZV9mZWF0dXJlGBQgASgOMhgucGIuVmFsdWVMaWZldGltZUZlYXR1cmVCsQGIAQGYAQGiAR0SGFZBTFVFX0xJRkVUSU1FX0lOSEVSSVRFRBiEB6IBGhIVVkFMVUVfTElGRVRJTUVfRlVUVVJFGOgHogEbEhVWQUxVRV9MSUZFVElNRV9GVVRVUkUYn40GsgFNCOgHEJ6NBhoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyCfjQYqHEN1c3RvbSBmZWF0dXJlIHJlbW92YWwgZXJyb3JSFHZhbHVlTGlmZXRpbWVGZWF0dXJlEnwKFG5ld191bnN0YWJsZV9mZWF0dXJlGBYgASgOMhcucGIuVW5zdGFibGVFbnVtRmVhdHVyZUIxiAEBmAEBmAEEogEOEglVTlNUQUJMRTEYhAeiAQ4SCVVOU1RBQkxFMhiPTrIBAwiPTlISbmV3VW5zdGFibGVGZWF0dXJlEpQBChl1bnN0YWJsZV9leGlzdGluZ19mZWF0dXJlGBcgASgOMhcucGIuVW5zdGFibGVFbnVtRmVhdHVyZUI/iAEBmAEGogEOEglVTlNUQUJMRTEYhAeiAQ4SCVVOU1RBQkxFMhjoB6IBDhIJVU5TVEFCTEUzGI9OsgEDCOgHUhd1bnN0YWJsZUV4aXN0aW5nRmVhdHVyZRKRAQoYcmVtb3ZlZF91bnN0YWJsZV9mZWF0dXJlGBggASgOMhcucGIuVW5zdGFibGVFbnVtRmVhdHVyZUI+iAEBmAEJogEOEglVTlNUQUJMRTEYhAeyASQI6Acgj04qHEN1c3RvbSBmZWF0dXJlIHJlbW92YWwgZXJyb3JSFnJlbW92ZWRVbnN0YWJsZUZlYXR1cmUqRwoZQ3VzdG9tT3B0aW9uTGlmZXRpbWVzRW51bRIWChJURVNUX0NVU1RPTV9PUFRJT04QABISCg5DVVNUT01fT1BUSU9OMRABKuYBCgtFbnVtRmVhdHVyZRIdChlURVNUX0VOVU1fRkVBVFVSRV9VTktOT1dOEAASCgoGVkFMVUUxEAESCgoGVkFMVUUyEAISCgoGVkFMVUUzEAMSCgoGVkFMVUU0EAQSCgoGVkFMVUU1EAUSCgoGVkFMVUU2EAYSCgoGVkFMVUU3EAcSCgoGVkFMVUU4EAgSCgoGVkFMVUU5EAkSCwoHVkFMVUUxMBAKEgsKB1ZBTFVFMTEQCxILCgdWQUxVRTEyEAwSCwoHVkFMVUUxMxANEgsKB1ZBTFVFMTQQDhILCgdWQUxVRTE1EA8qgAEKE1Vuc3RhYmxlRW51bUZlYXR1cmUSJgoiVEVTVF9VTlNUQUJMRV9FTlVNX0ZFQVRVUkVfVU5LTk9XThAAEg0KCVVOU1RBQkxFMRABEg0KCVVOU1RBQkxFMhACEhQKCVVOU1RBQkxFMxADGgUiAwiPThINCglVTlNUQUJMRTQQBCrAAwoUVmFsdWVMaWZldGltZUZlYXR1cmUSHwobVEVTVF9WQUxVRV9MSUZFVElNRV9VTktOT1dOEAASHAoYVkFMVUVfTElGRVRJTUVfSU5IRVJJVEVEEAESbAoWVkFMVUVfTElGRVRJTUVfU1VQUE9SVBACGlAiTgidjQYQno0GGiJDdXN0b20gZmVhdHVyZSBkZXByZWNhdGlvbiB3YXJuaW5nIJ+NBiocQ3VzdG9tIGZlYXR1cmUgcmVtb3ZhbCBlcnJvchIkChxWQUxVRV9MSUZFVElNRV9FTVBUWV9TVVBQT1JUEAMaAiIAEiEKFVZBTFVFX0xJRkVUSU1FX0ZVVFVSRRAEGgYiBAidjQYSSQoZVkFMVUVfTElGRVRJTUVfREVQUkVDQVRFRBAFGioiKBCdjQYaIkN1c3RvbSBmZWF0dXJlIGRlcHJlY2F0aW9uIHdhcm5pbmcSZwoWVkFMVUVfTElGRVRJTUVfUkVNT1ZFRBAGGksiSRDoBxoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyCdjQYqHEN1c3RvbSBmZWF0dXJlIHJlbW92YWwgZXJyb3I6iwEKH2N1c3RvbV9vcHRpb25fbGlmZXRpbWVzX21lc3NhZ2USHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYtJ3YAyABKAsyIC5wYi5DdXN0b21PcHRpb25MaWZldGltZXNNZXNzYWdlUhxjdXN0b21PcHRpb25MaWZldGltZXNNZXNzYWdlOkIKBHRlc3QSGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldBiPTiABKAsyEC5wYi5UZXN0RmVhdHVyZXNSBHRlc3RCEkIQVW5pdHRlc3RGZWF0dXJlc0qANAoHEgUHANICAQqUAgoBDBIDBwARMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMjMgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdv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Fi4KDQoFBAQCFAMSBMgCMTMKDwoFBAQCFAgSBsgCNNECAwoOCgYEBAIUCBESBMkCBCEKDwoHBAQCFAgTABIEygIEIAoQCgYEBAIUCBYSBssCBM8CBQoPCgcEBAIUCBQAEgTQAgRGYghlZGl0aW9uc3DpBwqwJAojZ29vZ2xlL3Byb3RvYnVmL2phdmFfZmVhdHVyZXMucHJvdG8SAnBiGiBnb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci5wcm90byLfCAoMSmF2YUZlYXR1cmVzEpACChJsZWdhY3lfY2xvc2VkX2VudW0YASABKAhC4QGIAQGYAQSYAQGiAQkSBHRydWUYhAeiAQoSBWZhbHNlGOcHsgG7AQjoBxDoBxqyAVRoZSBsZWdhY3kgY2xvc2VkIGVudW0gYmVoYXZpb3IgaW4gSmF2YSBpcyBkZXByZWNhdGVkIGFuZCBpcyBzY2hlZHVsZWQgdG8gYmUgcmVtb3ZlZCBpbiBlZGl0aW9uIDIwMjUuICBTZWUgaHR0cDovL3Byb3RvYnVmLmRldi9wcm9ncmFtbWluZy1ndWlkZXMvZW51bS8jamF2YSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5SEGxlZ2FjeUNsb3NlZEVudW0SrwIKD3V0ZjhfdmFsaWRhdGlvbhgCIAEoDjIfLnBiLkphdmFGZWF0dXJlcy5VdGY4VmFsaWRhdGlvbkLkAYgBAZgBBJgBAaIBDBIHREVGQVVMVBiEB7IByAEI6AcQ6QcavwFUaGUgSmF2YS1zcGVjaWZpYyB1dGY4IHZhbGlkYXRpb24gZmVhdHVyZSBpcyBkZXByZWNhdGVkIGFuZCBpcyBzY2hlZHVsZWQgdG8gYmUgcmVtb3ZlZCBpbiBlZGl0aW9uIDIwMjUuICBVdGY4IHZhbGlkYXRpb24gYmVoYXZpb3Igc2hvdWxkIHVzZSB0aGUgZ2xvYmFsIGNyb3NzLWxhbmd1YWdlIHV0ZjhfdmFsaWRhdGlvbiBmZWF0dXJlLlIOdXRmOFZhbGlkYXRpb24SOwoKbGFyZ2VfZW51bRgDIAEoCEIciAEBmAEGmAEBogEKEgVmYWxzZRiEB7IBAwjpB1IJbGFyZ2VFbnVtEm4KH3VzZV9vbGRfb3V0ZXJfY2xhc3NuYW1lX2RlZmF1bHQYBCABKAhCKIgBAZgBAaIBCRIEdHJ1ZRiEB6IBChIFZmFsc2UY6QeyAQYI6Qcg6QdSG3VzZU9sZE91dGVyQ2xhc3NuYW1lRGVmYXVsdBKQAQoSbmVzdF9pbl9maWxlX2NsYXNzGAUgASgOMjcucGIuSmF2YUZlYXR1cmVzLk5lc3RJbkZpbGVDbGFzc0ZlYXR1cmUuTmVzdEluRmlsZUNsYXNzQiqIAQGYAQOYAQaYAQiiAQsSBkxFR0FDWRiEB6IBBxICTk8Y6QeyAQMI6QdSD25lc3RJbkZpbGVDbGFzcxp8ChZOZXN0SW5GaWxlQ2xhc3NGZWF0dXJlIlgKD05lc3RJbkZpbGVDbGFzcxIeChpORVNUX0lOX0ZJTEVfQ0xBU1NfVU5LTk9XThAAEgYKAk5PEAESBwoDWUVTEAISFAoGTEVHQUNZEAMaCCIGCOkHIOkHSggIARCAgICAAiJGCg5VdGY4VmFsaWRhdGlvbhIbChdVVEY4X1ZBTElEQVRJT05fVU5LTk9XThAAEgsKB0RFRkFVTFQQARIKCgZWRVJJRlkQAkoECAYQBzpCCgRqYXZhEhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQY6QcgASgLMhAucGIuSmF2YUZlYXR1cmVzUgRqYXZhQigKE2NvbS5nb29nbGUucHJvdG9idWZCEUphdmFGZWF0dXJlc1Byb3RvSpIaCgcSBQgAgwEBCpQCCgEMEgMIABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAyMyBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwoACwoJCgIDABIDDAAqCggKAQgSAw4ALAoJCgIIARIDDgAsCggKAQgSAw8AMgoJCgIICBIDDwAyCgkKAQcSBBEAEwEKCQoCBwASAxIC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CgoMCgUEAAIEBhIDdgsxCgwKBQQAAgQBEgN2MkQKDAoFBAACBAMSA3ZHSAoOCgUEAAIECBIFdkmAAQMKDQoGBAACBAgREgN3BCEKDgoHBAACBAgTABIDeAQhCg4KBwQAAgQIEwESA3kEHgoOCgcEAAIECBMCEgN6BCEKDgoGBAACBAgWEgR7BH0FCg4KBwQAAgQIFAASA34EQwoOCgcEAAIECBQBEgN/BD0KOgoDBAAJEgSCAQINIi0gZmllbGQgYG11dGFibGVfbmVzdF9pbl9maWxlX2NsYXNzYCByZW1vdmVkLgoKDAoEBAAJABIEggELDAoNCgUEAAkAARIEggELDAoNCgUEAAkAAhIEggELDAq8BwouZ29vZ2xlL3Byb3RvYnVmL3VuaXR0ZXN0X2xlZ2FjeV9mZWF0dXJlcy5wcm90bxIYbGVnYWN5X2ZlYXR1cmVzX3VuaXR0ZXN0IqsBChNUZXN0RWRpdGlvbnNNZXNzYWdlEiwKDnJlcXVpcmVkX2ZpZWxkGAEgASgFQgWqAQIIA1INcmVxdWlyZWRGaWVsZBJdCg9kZWxpbWl0ZWRfZmllbGQYAiABKAsyLS5sZWdhY3lfZmVhdHVyZXNfdW5pdHRlc3QuVGVzdEVkaXRpb25zTWVzc2FnZUIFqgECKAJSDmRlbGltaXRlZEZpZWxkOgdiBco+AigCQhhCFlVuaXR0ZXN0TGVnYWN5RmVhdHVyZXNK9QQKBhIECQAXAQrhAgoBDBIDCQARMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjJLIFRlc3QgdGhhdCBmZWF0dXJlcyB3aXRoIGxlZ2FjeSBkZXNjcmlwdG9yIGhlbHBlcnMgZ2V0IHByb3Blcmx5IGNvbnZlcnRlZC4KCggKAQISAwsAIQoICgEIEgMNADcKCQoCCAgSAw0ANwoJCgIPABIDDwA0CgoKAgQAEgQRABcBCgoKAwQAARIDEQgbCgoKAwQABxIDEgI1Cg4KBwQABwzpBwUSAxICNQoLCgQEAAIAEgMUAkcKDAoFBAACAAUSAxQCBwoMCgUEAAIAARIDFAgWCgwKBQQAAgADEgMUGRoKDAoFBAACAAgSAxQbRgoOCgcEAAIACBUBEgMUHEUKDAoEBAACARIEFQIWLgoMCgUEAAIBBhIDFQIVCgwKBQQAAgEBEgMVFiUKDAoFBAACAQMSAxUoKQoMCgUEAAIBCBIDFgYtCg4KBwQAAgEIFQUSAxYHLGIIZWRpdGlvbnNw6Qd6I2dvb2dsZS9wcm90b2J1Zi9qYXZhX2ZlYXR1cmVzLnByb3RvCpQqCi5nb29nbGUvcHJvdG9idWYvdW5pdHRlc3RfcHJvdG8zX29wdGlvbmFsLnByb3RvEg9wcm90bzJfdW5pdHRlc3QaIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlwdG9yLnByb3RvIokNChJUZXN0UHJvdG8zT3B0aW9uYWwSKgoOb3B0aW9uYWxfaW50MzIYASABKAVIAFINb3B0aW9uYWxJbnQzMogBARIqCg5vcHRpb25hbF9pbnQ2NBgCIAEoA0gBUg1vcHRpb25hbEludDY0iAEBEiwKD29wdGlvbmFsX3VpbnQzMhgDIAEoDUgCUg5vcHRpb25hbFVpbnQzMogBARIsCg9vcHRpb25hbF91aW50NjQYBCABKARIA1IOb3B0aW9uYWxVaW50NjSIAQESLAoPb3B0aW9uYWxfc2ludDMyGAUgASgRSARSDm9wdGlvbmFsU2ludDMyiAEBEiwKD29wdGlvbmFsX3NpbnQ2NBgGIAEoEkgFUg5vcHRpb25hbFNpbnQ2NIgBARIuChBvcHRpb25hbF9maXhlZDMyGAcgASgHSAZSD29wdGlvbmFsRml4ZWQzMogBARIuChBvcHRpb25hbF9maXhlZDY0GAggASgGSAdSD29wdGlvbmFsRml4ZWQ2NIgBARIwChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD0gIUhBvcHRpb25hbFNmaXhlZDMyiAEBEjAKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQSAlSEG9wdGlvbmFsU2ZpeGVkNjSIAQESKgoOb3B0aW9uYWxfZmxvYXQYCyABKAJIClINb3B0aW9uYWxGbG9hdIgBARIsCg9vcHRpb25hbF9kb3VibGUYDCABKAFIC1IOb3B0aW9uYWxEb3VibGWIAQESKAoNb3B0aW9uYWxfYm9vbBgNIAEoCEgMUgxvcHRpb25hbEJvb2yIAQESLAoPb3B0aW9uYWxfc3RyaW5nGA4gASgJSA1SDm9wdGlvbmFsU3RyaW5niAEBEioKDm9wdGlvbmFsX2J5dGVzGA8gASgMSA5SDW9wdGlvbmFsQnl0ZXOIAQESLAoNb3B0aW9uYWxfY29yZBgQIAEoCUICCAFID1IMb3B0aW9uYWxDb3JkiAEBEm4KF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMjEucHJvdG8yX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRNZXNzYWdlSBBSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZYgBARJqChNsYXp5X25lc3RlZF9tZXNzYWdlGBMgASgLMjEucHJvdG8yX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRNZXNzYWdlQgIoAUgRUhFsYXp5TmVzdGVkTWVzc2FnZYgBARJlChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjIuLnByb3RvMl91bml0dGVzdC5UZXN0UHJvdG8zT3B0aW9uYWwuTmVzdGVkRW51bUgSUhJvcHRpb25hbE5lc3RlZEVudW2IAQESJQoOc2luZ3VsYXJfaW50MzIYFiABKAVSDXNpbmd1bGFySW50MzISJQoOc2luZ3VsYXJfaW50NjQYFyABKANSDXNpbmd1bGFySW50NjQaKwoNTmVzdGVkTWVzc2FnZRITCgJiYhgBIAEoBUgAUgJiYogBAUIFCgNfYmIiSgoKTmVzdGVkRW51bRIPCgtVTlNQRUNJRklFRBAAEgcKA0ZPTxABEgcKA0JBUhACEgcKA0JBWhADEhAKA05FRxD///////////8BQhEKD19vcHRpb25hbF9pbnQzMkIRCg9fb3B0aW9uYWxfaW50NjRCEgoQX29wdGlvbmFsX3VpbnQzMkISChBfb3B0aW9uYWxfdWludDY0QhIKEF9vcHRpb25hbF9zaW50MzJCEgoQX29wdGlvbmFsX3NpbnQ2NEITChFfb3B0aW9uYWxfZml4ZWQzMkITChFfb3B0aW9uYWxfZml4ZWQ2NEIUChJfb3B0aW9uYWxfc2ZpeGVkMzJCFAoSX29wdGlvbmFsX3NmaXhlZDY0QhEKD19vcHRpb25hbF9mbG9hdEISChBfb3B0aW9uYWxfZG91YmxlQhAKDl9vcHRpb25hbF9ib29sQhIKEF9vcHRpb25hbF9zdHJpbmdCEQoPX29wdGlvbmFsX2J5dGVzQhAKDl9vcHRpb25hbF9jb3JkQhoKGF9vcHRpb25hbF9uZXN0ZWRfbWVzc2FnZUIWChRfbGF6eV9uZXN0ZWRfbWVzc2FnZUIXChVfb3B0aW9uYWxfbmVzdGVkX2VudW0irgIKGVRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2USXwoObmVzdGVkX21lc3NhZ2UYASABKAsyOC5wcm90bzJfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZS5OZXN0ZWRNZXNzYWdlUg1uZXN0ZWRNZXNzYWdlEnUKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGAIgASgLMjgucHJvdG8yX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2UuTmVzdGVkTWVzc2FnZUgAUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2WIAQEaHQoNTmVzdGVkTWVzc2FnZRIMCgFzGAEgASgJUgFzQhoKGF9vcHRpb25hbF9uZXN0ZWRfbWVzc2FnZSLJAQoYUHJvdG8zT3B0aW9uYWxFeHRlbnNpb25zMksKD2V4dF9ub19vcHRpb25hbBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiIzdmpASABKAVSDWV4dE5vT3B0aW9uYWwyUgoRZXh0X3dpdGhfb3B0aW9uYWwSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYic3ZqQEgASgFUg9leHRXaXRoT3B0aW9uYWyIAQE6DMDozM0KCMjozM0KEEI4CiFjb20uZ29vZ2xlLnByb3RvYnVmLnRlc3RpbmcucHJvdG9QAaoCEFByb3RvYnVmVW5pdHRlc3RK4xcKBhIEBwBNAQqUAgoBDBIDBwAS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GgrS3amEDwQIARACGgr6nqqEDwQIARACMnAKB1NlcnZpY2USWQoHRG9TdHVmZhIgLnByb3RvMl91bml0dGVzdC5Ub3BMZXZlbE1lc3NhZ2UaIC5wcm90bzJfdW5pdHRlc3QuVG9wTGV2ZWxNZXNzYWdlIgrirviDDwQIARACGgrqh4uEDwQIARACOkMKDHBsYWluX29wdGlvbhIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxjGtezwASABKAVSC3BsYWluT3B0aW9uOl8KGHJ1bnRpbWVfcmV0ZW50aW9uX29wdGlvbhIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxickunwASABKAVCA4gBAVIWcnVudGltZVJldGVudGlvbk9wdGlvbjpdChdzb3VyY2VfcmV0ZW50aW9uX29wdGlvbhIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxjUrN/wASABKAVCA4gBAlIVc291cmNlUmV0ZW50aW9uT3B0aW9uOmIKC2ZpbGVfb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGIDy3vABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIKZmlsZU9wdGlvbjpsChByZXBlYXRlZF9vcHRpb25zEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGJL+2/ABIAMoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIPcmVwZWF0ZWRPcHRpb25zOoEBChZleHRlbnNpb25fcmFuZ2Vfb3B0aW9uEiYuZ29vZ2xlLnByb3RvYnVmLkV4dGVuc2lvblJhbmdlT3B0aW9ucxiE89vwASABKAsyHy5wcm90bzJfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSFGV4dGVuc2lvblJhbmdlT3B0aW9uOmsKDm1lc3NhZ2Vfb3B0aW9uEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGNPo2/ABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVINbWVzc2FnZU9wdGlvbjplCgxmaWVsZF9vcHRpb24SHS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zGKPXzfABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVILZmllbGRPcHRpb246ZQoMb25lb2Zfb3B0aW9uEh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9ucxix+8bwASABKAsyHy5wcm90bzJfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSC29uZW9mT3B0aW9uOmIKC2VudW1fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkVudW1PcHRpb25zGO+jxfABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIKZW51bU9wdGlvbjpyChFlbnVtX2VudHJ5X29wdGlvbhIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zGNqbxfABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIPZW51bUVudHJ5T3B0aW9uOmsKDnNlcnZpY2Vfb3B0aW9uEh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zGP2wwfABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVINc2VydmljZU9wdGlvbjpoCg1tZXRob2Rfb3B0aW9uEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY7IW/8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgxtZXRob2RPcHRpb246MwoBaRIZLnByb3RvMl91bml0dGVzdC5FeHRlbmRlZRgBIAEoBUIKmrrthA8ECAEQAlIBaUIzqgIQUHJvdG9idWZVbml0dGVzdJLx34UPBAgBEAKCkPeFDwQIARAC4JHJhg8CsKzjhg8BSrsZCgcSBQcAuAEBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAGAoJCgIDABIDCwAqCggKAQgSAw0ALQoJCgIIJRIDDQAtCkAKAQcSBBAAFgEaNSBSZXRlbnRpb24gYXR0cmlidXRlcyBzZXQgZGlyZWN0bHkgb24gY3VzdG9tIG9wdGlvbnMKCgkKAgcAEgMRAioKCgoDBwACEgMQByIKCgoDBwAEEgMRAgoKCgoDBwAFEgMRCxAKCgoDBwABEgMRER0KCgoDBwADEgMRICkKCgoCBwESBBICEyYKCgoDBwECEgMQByIKCgoDBwEEEgMSAgoKCgoDBwEFEgMSCxAKCgoDBwEBEgMSESkKCgoDBwEDEgMSLDUKCgoDBwEIEgMTBiUKCwoEBwEIERIDEwckCgoKAgcCEgQUAhUlCgoKAwcCAhIDEAciCgoKAwcCBBIDFAIKCgoKAwcCBRIDFAsQCgoKAwcCARIDFBEoCgoKAwcCAxIDFCs0CgoKAwcCCBIDFQYkCgsKBAcCCBESAxUHIwoICgEIEgMYABoKDQoGCMa17PABEgMYABoKCAoBCBIDGQAmCg0KBgickunwARIDGQAmCggKAQgSAxoAJQpICgIEABIEHQAhARo8IFJldGVudGlvbiBhdHRyaWJ1dGVzIHNldCBvbiBmaWVsZHMgbmVzdGVkIHdpdGhpbiBhIG1lc3NhZ2UKCgoKAwQAARIDHQgWCgsKBAQAAgASAx4CIQoMCgUEAAIABBIDHgIKCgwKBQQAAgAFEgMeCxAKDAoFBAACAAESAx4RHAoMCgUEAAIAAxIDHh8gCgsKBAQAAgESAx8CTQoMCgUEAAIBBBIDHwIKCgwKBQQAAgEFEgMfCxAKDAoFBAACAQESAx8RKAoMCgUEAAIBAxIDHyssCgwKBQQAAgEIEgMfLUwKDQoGBAACAQgREgMfLksKCwoEBAACAhIDIAJLCgwKBQQAAgIEEgMgAgoKDAoFBAACAgUSAyALEAoMCgUEAAICARIDIBEnCgwKBQQAAgIDEgMgKisKDAoFBAACAggSAyAsSgoNCgYEAAICCBESAyAtSQoJCgEHEgQjACUBCgkKAgcDEgMkAjIKCgoDBwMCEgMjByIKCgoDBwMEEgMkAgoKCgoDBwMGEgMkCxkKCgoDBwMBEgMkGiUKCgoDBwMDEgMkKDEKCQoBCBIEJwArAgoOCgYIgPLe8AESBCcAKwIKRwoBBxIELgAwARo8IFJldGVudGlvbiBhdHRyaWJ1dGUgbmVzdGVkIGluc2lkZSBhIHJlcGVhdGVkIG1lc3NhZ2UgZmllbGQKCgkKAgcEEgMvAjcKCgoDBwQCEgMuByIKCgoDBwQEEgMvAgoKCgoDBwQGEgMvCxkKCgoDBwQBEgMvGioKCgoDBwQDEgMvLTYKCQoBCBIEMgA2AgoPCgcIkv7b8AEAEgQyADYCCgkKAQcSBDgAOgEKCQoCBwUSAzkCPQoKCgMHBQISAzgHLAoKCgMHBQQSAzkCCgoKCgMHBQYSAzkLGQoKCgMHBQESAzkaMAoKCgMHBQMSAzkzPAoJCgEHEgQ8AD4BCgkKAgcGEgM9AjUKCgoDBwYCEgM8ByUKCgoDBwYEEgM9AgoKCgoDBwYGEgM9CxkKCgoDBwYBEgM9GigKCgoDBwYDEgM9KzQKCQoBBxIEQABCAQoJCgIHBxIDQQIzCgoKAwcHAhIDQAcjCgoKAwcHBBIDQQIKCgoKAwcHBhIDQQsZCgoKAwcHARIDQRomCgoKAwcHAxIDQSkyCgkKAQcSBEQARgEKCQoCBwgSA0UCMwoKCgMHCAISA0QHIwoKCgMHCAQSA0UCCgoKCgMHCAYSA0ULGQoKCgMHCAESA0UaJgoKCgMHCAMSA0UpMgoJCgEHEgRIAEoBCgkKAgcJEgNJAjIKCgoDBwkCEgNIByIKCgoDBwkEEgNJAgoKCgoDBwkGEgNJCxkKCgoDBwkBEgNJGiUKCgoDBwkDEgNJKDEKCQoBBxIETABOAQoJCgIHChIDTQI4CgoKAwcKAhIDTAcnCgoKAwcKBBIDTQIKCgoKAwcKBhIDTQsZCgoKAwcKARIDTRorCgoKAwcKAxIDTS43CgkKAQcSBFAAUgEKCQoCBwsSA1ECNQoKCgMHCwISA1AHJQoKCgMHCwQSA1ECCgoKCgMHCwYSA1ELGQoKCgMHCwESA1EaKAoKCgMHCwMSA1ErNAoJCgEHEgRUAFYBCgkKAgcMEgNVAjQKCgoDBwwCEgNUByQKCgoDBwwEEgNVAgoKCgoDBwwGEgNVCxkKCgoDBwwBEgNVGicKCgoDBwwDEgNVKjMKCgoCBAESBFgAWgEKCgoDBAEBEgNYCBAKCgoDBAEFEgNZAhIKCwoEBAEFABIDWQ0OCgwKBQQBBQABEgNZDQ4KDAoFBAEFAAISA1kNDgoLCgQEAQUBEgNZEBEKDAoFBAEFAQESA1kQEQoMCgUEAQUBAhIDWRARCgkKAQcSBFwAYgEKCgoCBw0SBF0CYQUKCgoDBw0CEgNcBw8KCgoDBw0EEgNdAgoKCgoDBw0FEgNdCxAKCgoDBw0BEgNdERIKCgoDBw0DEgNdFRYKCwoDBw0IEgRdF2EEChAKCAcNCKPXzfABEgRdGGEDCgsKAgQCEgVkAJoBAQoKCgMEAgESA2QIFwoLCgMEAgcSBGUCaQQKEAoIBAIH0+jb8AESBGUCaQQKDAoEBAIDABIEawJxAwoMCgUEAgMAARIDawoXCg0KBQQCAwAHEgRsBHAGChIKCgQCAwAH0+jb8AESBGwEcAYKDAoEBAIEABIEcwJ7AwoMCgUEAgQAARIDcwcRCg0KBQQCBAADEgR0BHgGChIKCgQCBAAD76PF8AESBHQEeAYKDQoGBAIEAAIAEgN6BBcKDgoHBAIEAAIAARIDegQSCg4KBwQCBAACAAISA3oVFgoNCgQEAgIAEgV9AoEBBQoMCgUEAgIABBIDfQIKCgwKBQQCAgAFEgN9CxAKDAoFBAICAAESA30REgoMCgUEAgIAAxIDfRUWCg4KBQQCAgAIEgV9F4EBBAoTCgoEAgIACKPXzfABEgV9GIEBAwoOCgQEAggAEgaDAQKLAQMKDQoFBAIIAAESBIMBCAkKDwoFBAIIAAISBoQBBIgBBgoUCgoEAggAArH7xvABEgaEAQSIAQYKDAoEBAICARIEigEEEAoNCgUEAgIBBRIEigEECQoNCgUEAgIBARIEigEKCwoNCgUEAgIBAxIEigEODwoNCgMEAgUSBo0BApEBBQoMCgQEAgUAEgSNAQ0WCg0KBQQCBQABEgSNAQ0PCg0KBQQCBQACEgSNARMWCg8KBQQCBQADEgaNAReRAQQKFAoKBAIFAAOE89vwARIGjQEYkQEDCg0KAwQCBhIGkwECmQEDCg4KBAQCBgASBpQBBJgBBwoNCgUEAgYAAhIEkwEJEQoNCgUEAgYABBIElAEEDAoNCgUEAgYABRIElAENEwoNCgUEAgYAARIElAEUFQoNCgUEAgYAAxIElAEYGQoPCgUEAgYACBIGlAEamAEGChQKCgQCBgAIo9fN8AESBpQBG5gBBQoMCgIFABIGnAEAqAEBCgsKAwUAARIEnAEFEQoNCgMFAAMSBp0BAqEBBAoSCggFAAPvo8XwARIGnQECoQEECg4KBAUAAgASBqMBAqcBBQoNCgUFAAIAARIEowECEwoNCgUFAAIAAhIEowEWFwoPCgUFAAIAAxIGowEYpwEEChQKCgUAAgAD2pvF8AESBqMBGacBAwoMCgIGABIGqgEAuAEBCgsKAwYAARIEqgEIDwoNCgMGAAMSBqsBAq8BBAoSCggGAAP9sMHwARIGqwECrwEECg4KBAYAAgASBrEBArcBAwoNCgUGAAIAARIEsQEGDQoNCgUGAAIAAhIEsQEOHQoNCgUGAAIAAxIEsQEoNwoPCgUGAAIABBIGsgEEtgEGChQKCgYAAgAE7IW/8AESBrIBBLYBBg==