CsqVAQo3Y29uZm9ybWFuY2UvdGVzdF9wcm90b3MvdGVzdF9tZXNzYWdlc19lZGl0aW9uMjAyMy5wcm90bxIfcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucyIeCg5Db21wbGV4TWVzc2FnZRIMCgFkGAEgASgFUgFkIp9GChdUZXN0QWxsVHlwZXNFZGl0aW9uMjAyMxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxKFAQoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USewoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzQgWqAQIoAVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJ1ChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmsKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITb3B0aW9uYWxGb3JlaWduRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSbAoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzQgWqAQIoAVIQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxKFAQoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USewoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzQgWqAQIoAVIWcmVwZWF0ZWRGb3JlaWduTWVzc2FnZRJ1ChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmsKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1ITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSKAoMcGFja2VkX2ludDMyGEsgAygFQgWqAQIYAVILcGFja2VkSW50MzISKAoMcGFja2VkX2ludDY0GEwgAygDQgWqAQIYAVILcGFja2VkSW50NjQSKgoNcGFja2VkX3VpbnQzMhhNIAMoDUIFqgECGAFSDHBhY2tlZFVpbnQzMhIqCg1wYWNrZWRfdWludDY0GE4gAygEQgWqAQIYAVIMcGFja2VkVWludDY0EioKDXBhY2tlZF9zaW50MzIYTyADKBFCBaoBAhgBUgxwYWNrZWRTaW50MzISKgoNcGFja2VkX3NpbnQ2NBhQIAMoEkIFqgECGAFSDHBhY2tlZFNpbnQ2NBIsCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0IFqgECGAFSDXBhY2tlZEZpeGVkMzISLAoOcGFja2VkX2ZpeGVkNjQYUiADKAZCBaoBAhgBUg1wYWNrZWRGaXhlZDY0Ei4KD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0IFqgECGAFSDnBhY2tlZFNmaXhlZDMyEi4KD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEIFqgECGAFSDnBhY2tlZFNmaXhlZDY0EigKDHBhY2tlZF9mbG9hdBhVIAMoAkIFqgECGAFSC3BhY2tlZEZsb2F0EioKDXBhY2tlZF9kb3VibGUYViADKAFCBaoBAhgBUgxwYWNrZWREb3VibGUSJgoLcGFja2VkX2Jvb2wYVyADKAhCBaoBAhgBUgpwYWNrZWRCb29sEngKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAFSEHBhY2tlZE5lc3RlZEVudW0SLAoOdW5wYWNrZWRfaW50MzIYWSADKAVCBaoBAhgCUg11bnBhY2tlZEludDMyEiwKDnVucGFja2VkX2ludDY0GFogAygDQgWqAQIYAlINdW5wYWNrZWRJbnQ2NBIuCg91bnBhY2tlZF91aW50MzIYWyADKA1CBaoBAhgCUg51bnBhY2tlZFVpbnQzMhIuCg91bnBhY2tlZF91aW50NjQYXCADKARCBaoBAhgCUg51bnBhY2tlZFVpbnQ2NBIuCg91bnBhY2tlZF9zaW50MzIYXSADKBFCBaoBAhgCUg51bnBhY2tlZFNpbnQzMhIuCg91bnBhY2tlZF9zaW50NjQYXiADKBJCBaoBAhgCUg51bnBhY2tlZFNpbnQ2NBIwChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDMyEjAKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCBaoBAhgCUg91bnBhY2tlZEZpeGVkNjQSMgoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CBaoBAhgCUhB1bnBhY2tlZFNmaXhlZDMyEjIKEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQ2NBIsCg51bnBhY2tlZF9mbG9hdBhjIAMoAkIFqgECGAJSDXVucGFja2VkRmxvYXQSLgoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgWqAQIYAlIOdW5wYWNrZWREb3VibGUSKgoNdW5wYWNrZWRfYm9vbBhlIAMoCEIFqgECGAJSDHVucGFja2VkQm9vbBJ8ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJDLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkRW51bUIFqgECGAJSEnVucGFja2VkTmVzdGVkRW51bRJzCg9tYXBfaW50MzJfaW50MzIYOCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJzCg9tYXBfaW50NjRfaW50NjQYOSADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJ5ChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJ5ChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ5ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJ5ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ/ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ/ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBKFAQoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShQEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EnMKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EnYKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEm0KDW1hcF9ib29sX2Jvb2wYRCADKAsySS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnkKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEnYKEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEo8BChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USkgEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMlUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRKGAQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEokBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJSLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEoEBChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTmVzdGVkTWVzc2FnZUIFqgECKAFIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJkCgpvbmVvZl9lbnVtGHcgASgOMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRFbnVtSABSCW9uZW9mRW51bRJtCg1ncm91cGxpa2V0eXBlGMkBIAEoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuR3JvdXBMaWtlVHlwZVINZ3JvdXBsaWtldHlwZRJwCg9kZWxpbWl0ZWRfZmllbGQYygEgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5Hcm91cExpa2VUeXBlUg5kZWxpbWl0ZWRGaWVsZBqAAQoNTmVzdGVkTWVzc2FnZRIMCgFhGAEgASgFUgFhEmEKC2NvcmVjdXJzaXZlGAIgASgLMjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyM0IFqgECKAFSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGpEBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSXAoFdmFsdWUYAiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VSBXZhbHVlOgI4ARqGAQocTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAlSA2tleRJQCgV2YWx1ZRgCIAEoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uMjAyM1IFdmFsdWU6AjgBGosBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSWQoFdmFsdWUYAiABKA4yQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZEVudW1SBXZhbHVlOgI4ARqAAQoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJNCgV2YWx1ZRgCIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9uMjAyM1IFdmFsdWU6AjgBGlUKDUdyb3VwTGlrZVR5cGUSIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9mX2ZpZWxkIikKGUZvcmVpZ25NZXNzYWdlRWRpdGlvbjIwMjMSDAoBYxgBIAEoBVIBYyIdCg1Hcm91cExpa2VUeXBlEgwKAWMYASABKAVSAWMqSwoWRm9yZWlnbkVudW1FZGl0aW9uMjAyMxIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAESDwoLRk9SRUlHTl9CQVoQAjphCg9leHRlbnNpb25faW50MzISOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHggASgFUg5leHRlbnNpb25JbnQzMjqOAQoNZ3JvdXBsaWtldHlwZRI4LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMYeSABKAsyLi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkdyb3VwTGlrZVR5cGVSDWdyb3VwbGlrZXR5cGU6jQEKDWRlbGltaXRlZF9leHQSOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHogASgLMi4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Hcm91cExpa2VUeXBlUgxkZWxpbWl0ZWRFeHRCQQotY29tLmdvb2dsZS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb24yMDIzUAGiAghFZGl0aW9uc5IDAigCSsBJCgcSBQcA2AEBCpQCCgEMEgMHABEyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAyNCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJT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dG9idWZfdW5pdHRlc3RfaW1wb3J0GjFjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wdWJsaWNfcHJvdG8zLnByb3RvIh0KDUltcG9ydE1lc3NhZ2USDAoBZBgBIAEoBVIBZCpZCgpJbXBvcnRFbnVtEhsKF0lNUE9SVF9FTlVNX1VOU1BFQ0lGSUVEEAASDgoKSU1QT1JUX0ZPTxAHEg4KCklNUE9SVF9CQVIQCBIOCgpJTVBPUlRfQkFaEAlCHaoCGkdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zSsgGCgYSBA0AHwEK5wMKAQwSAw0AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoy0AEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdoaWNoIGlzIGltcG9ydGVkIGJ5IHVuaXR0ZXN0X3Byb3RvMy5wcm90byB0byB0ZXN0IGltcG9ydGluZy4KCggKAQISAw8AIQoICgEIEgMRADcKCQoCCCUSAxEANwofCgIDABIDFABCGhQgVGVzdCBwdWJsaWMgaW1wb3J0CgoJCgIKABIDFAcNCgoKAgQAEgQWABgBCgoKAwQAARIDFggVCgsKBAQAAgASAxcCDgoMCgUEAAIABRIDFwIHCgwKBQQAAgABEgMXCAkKDAoFBAACAAMSAxcMDQoKCgIFABIEGgAfAQoKCgMFAAESAxoFDwoLCgQFAAIAEgMbAh4KDAoFBQACAAESAxsCGQoMCgUFAAIAAhIDGxwdCgsKBAUAAgESAxwCEQoMCgUFAAIBARIDHAIMCgwKBQUAAgECEgMcDxAKCwoEBQACAhIDHQIRCgwKBQUAAgIBEgMdAgwKDAoFBQACAgISAx0PEAoLCgQFAAIDEgMeAhEKDAoFBQACAwESAx4CDAoMCgUFAAIDAhIDHg8QUABiBnByb3RvMwqisQEKI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfcHJvdG8zLnByb3RvEhJwcm90b2J1Zl91bml0dGVzdDMaKmNzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0X3Byb3RvMy5wcm90byKrFgoMVGVzdEFsbFR5cGVzEiEKDHNpbmdsZV9pbnQzMhgBIAEoBVILc2luZ2xlSW50MzISIQoMc2luZ2xlX2ludDY0GAIgASgDUgtzaW5nbGVJbnQ2NBIjCg1zaW5nbGVfdWludDMyGAMgASgNUgxzaW5nbGVVaW50MzISIwoNc2luZ2xlX3VpbnQ2NBgEIAEoBFIMc2luZ2xlVWludDY0EiMKDXNpbmdsZV9zaW50MzIYBSABKBFSDHNpbmdsZVNpbnQzMhIjCg1zaW5nbGVfc2ludDY0GAYgASgSUgxzaW5nbGVTaW50NjQSJQoOc2luZ2xlX2ZpeGVkMzIYByABKAdSDXNpbmdsZUZpeGVkMzISJQoOc2luZ2xlX2ZpeGVkNjQYCCABKAZSDXNpbmdsZUZpeGVkNjQSJwoPc2luZ2xlX3NmaXhlZDMyGAkgASgPUg5zaW5nbGVTZml4ZWQzMhInCg9zaW5nbGVfc2ZpeGVkNjQYCiABKBBSDnNpbmdsZVNmaXhlZDY0EiEKDHNpbmdsZV9mbG9hdBgLIAEoAlILc2luZ2xlRmxvYXQSIwoNc2luZ2xlX2RvdWJsZRgMIAEoAVIMc2luZ2xlRG91YmxlEh8KC3NpbmdsZV9ib29sGA0gASgIUgpzaW5nbGVCb29sEiMKDXNpbmdsZV9zdHJpbmcYDiABKAlSDHNpbmdsZVN0cmluZxIhCgxzaW5nbGVfYnl0ZXMYDyABKAxSC3NpbmdsZUJ5dGVzEmIKFXNpbmdsZV9uZXN0ZWRfbWVzc2FnZRgSIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVITc2luZ2xlTmVzdGVkTWVzc2FnZRJYChZzaW5nbGVfZm9yZWlnbl9tZXNzYWdlGBMgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUhRzaW5nbGVGb3JlaWduTWVzc2FnZRJbChVzaW5nbGVfaW1wb3J0X21lc3NhZ2UYFCABKAsyJy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnQuSW1wb3J0TWVzc2FnZVITc2luZ2xlSW1wb3J0TWVzc2FnZRJZChJzaW5nbGVfbmVzdGVkX2VudW0YFSABKA4yKy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEHNpbmdsZU5lc3RlZEVudW0STwoTc2luZ2xlX2ZvcmVpZ25fZW51bRgWIAEoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bVIRc2luZ2xlRm9yZWlnbkVudW0SUgoSc2luZ2xlX2ltcG9ydF9lbnVtGBcgASgOMiQucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydEVudW1SEHNpbmdsZUltcG9ydEVudW0Sbgocc2luZ2xlX3B1YmxpY19pbXBvcnRfbWVzc2FnZRgaIAEoCzItLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5QdWJsaWNJbXBvcnRNZXNzYWdlUhlzaW5nbGVQdWJsaWNJbXBvcnRNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEmYKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USXAoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEl8KF3JlcGVhdGVkX2ltcG9ydF9tZXNzYWdlGDIgAygLMicucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LkltcG9ydE1lc3NhZ2VSFXJlcGVhdGVkSW1wb3J0TWVzc2FnZRJdChRyZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjIrLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXMuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtElMKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIfLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduRW51bVITcmVwZWF0ZWRGb3JlaWduRW51bRJWChRyZXBlYXRlZF9pbXBvcnRfZW51bRg1IAMoDjIkLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydC5JbXBvcnRFbnVtUhJyZXBlYXRlZEltcG9ydEVudW0ScgoecmVwZWF0ZWRfcHVibGljX2ltcG9ydF9tZXNzYWdlGDYgAygLMi0ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0LlB1YmxpY0ltcG9ydE1lc3NhZ2VSG3JlcGVhdGVkUHVibGljSW1wb3J0TWVzc2FnZRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISYgoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzGh8KDU5lc3RlZE1lc3NhZ2USDgoCYmIYASABKAVSAmJiIlYKCk5lc3RlZEVudW0SGwoXTkVTVEVEX0VOVU1fVU5TUEVDSUZJRUQQABIHCgNGT08QARIHCgNCQVIQAhIHCgNCQVoQAxIQCgNORUcQ////////////AUINCgtvbmVvZl9maWVsZCLdAQoSTmVzdGVkVGVzdEFsbFR5cGVzEjwKBWNoaWxkGAEgASgLMiYucHJvdG9idWZfdW5pdHRlc3QzLk5lc3RlZFRlc3RBbGxUeXBlc1IFY2hpbGQSOgoHcGF5bG9hZBgCIAEoCzIgLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXNSB3BheWxvYWQSTQoOcmVwZWF0ZWRfY2hpbGQYAyADKAsyJi5wcm90b2J1Zl91bml0dGVzdDMuTmVzdGVkVGVzdEFsbFR5cGVzUg1yZXBlYXRlZENoaWxkIkUKFFRlc3REZXByZWNhdGVkRmllbGRzEi0KEGRlcHJlY2F0ZWRfaW50MzIYASABKAVCAhgBUg9kZXByZWNhdGVkSW50MzIiHgoORm9yZWlnbk1lc3NhZ2USDAoBYxgBIAEoBVIBYyIwChJUZXN0UmVzZXJ2ZWRGaWVsZHNKBAgCEANKBAgPEBBKBAgJEAxSA2JhclIDYmF6ImoKEVRlc3RGb3JlaWduTmVzdGVkElUKDmZvcmVpZ25fbmVzdGVkGAEgASgLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUg1mb3JlaWduTmVzdGVkIjsKGFRlc3RSZWFsbHlMYXJnZVRhZ051bWJlchIMCgFhGAEgASgFUgFhEhEKAmJiGP///38gASgFUgJiYiJcChRUZXN0UmVjdXJzaXZlTWVzc2FnZRI2CgFhGAEgASgLMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RSZWN1cnNpdmVNZXNzYWdlUgFhEgwKAWkYAiABKAVSAWkiUAoUVGVzdE11dHVhbFJlY3Vyc2lvbkESOAoCYmIYASABKAsyKC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE11dHVhbFJlY3Vyc2lvbkJSAmJiInUKFFRlc3RNdXR1YWxSZWN1cnNpb25CEjYKAWEYASABKAsyKC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE11dHVhbFJlY3Vyc2lvbkFSAWESJQoOb3B0aW9uYWxfaW50MzIYAiABKAVSDW9wdGlvbmFsSW50MzIiVAoSVGVzdEVudW1BbGxvd0FsaWFzEj4KBXZhbHVlGAEgASgOMigucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RFbnVtV2l0aER1cFZhbHVlUgV2YWx1ZSL7AwoXVGVzdENhbWVsQ2FzZUZpZWxkTmFtZXMSJgoOUHJpbWl0aXZlRmllbGQYASABKAVSDlByaW1pdGl2ZUZpZWxkEiAKC1N0cmluZ0ZpZWxkGAIgASgJUgtTdHJpbmdGaWVsZBI9CglFbnVtRmllbGQYAyABKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SCUVudW1GaWVsZBJGCgxNZXNzYWdlRmllbGQYBCABKAsyIi5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbk1lc3NhZ2VSDE1lc3NhZ2VGaWVsZBI2ChZSZXBlYXRlZFByaW1pdGl2ZUZpZWxkGAcgAygFUhZSZXBlYXRlZFByaW1pdGl2ZUZpZWxkEjAKE1JlcGVhdGVkU3RyaW5nRmllbGQYCCADKAlSE1JlcGVhdGVkU3RyaW5nRmllbGQSTQoRUmVwZWF0ZWRFbnVtRmllbGQYCSADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1SEVJlcGVhdGVkRW51bUZpZWxkElYKFFJlcGVhdGVkTWVzc2FnZUZpZWxkGAogAygLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUhRSZXBlYXRlZE1lc3NhZ2VGaWVsZCL/AQoSVGVzdEZpZWxkT3JkZXJpbmdzEhsKCW15X3N0cmluZxgLIAEoCVIIbXlTdHJpbmcSFQoGbXlfaW50GAEgASgDUgVteUludBIZCghteV9mbG9hdBhlIAEoAlIHbXlGbG9hdBJpChVzaW5nbGVfbmVzdGVkX21lc3NhZ2UYyAEgASgLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RGaWVsZE9yZGVyaW5ncy5OZXN0ZWRNZXNzYWdlUhNzaW5nbGVOZXN0ZWRNZXNzYWdlGi8KDU5lc3RlZE1lc3NhZ2USDgoCb28YAiABKANSAm9vEg4KAmJiGAEgASgFUgJiYiJYChFTcGFyc2VFbnVtTWVzc2FnZRJDCgtzcGFyc2VfZW51bRgBIAEoDjIiLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0U3BhcnNlRW51bVIKc3BhcnNlRW51bSIfCglPbmVTdHJpbmcSEgoEZGF0YRgBIAEoCVIEZGF0YSIgCgpNb3JlU3RyaW5nEhIKBGRhdGEYASADKAlSBGRhdGEiHgoIT25lQnl0ZXMSEgoEZGF0YRgBIAEoDFIEZGF0YSIfCglNb3JlQnl0ZXMSEgoEZGF0YRgBIAEoDFIEZGF0YSIiCgxJbnQzMk1lc3NhZ2USEgoEZGF0YRgBIAEoBVIEZGF0YSIjCg1VaW50MzJNZXNzYWdlEhIKBGRhdGEYASABKA1SBGRhdGEiIgoMSW50NjRNZXNzYWdlEhIKBGRhdGEYASABKANSBGRhdGEiIwoNVWludDY0TWVzc2FnZRISCgRkYXRhGAEgASgEUgRkYXRhIiEKC0Jvb2xNZXNzYWdlEhIKBGRhdGEYASABKAhSBGRhdGEikwEKCVRlc3RPbmVvZhIZCgdmb29faW50GAEgASgFSABSBmZvb0ludBIfCgpmb29fc3RyaW5nGAIgASgJSABSCWZvb1N0cmluZxJDCgtmb29fbWVzc2FnZRgDIAEoCzIgLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXNIAFIKZm9vTWVzc2FnZUIFCgNmb28i7gQKD1Rlc3RQYWNrZWRUeXBlcxIlCgxwYWNrZWRfaW50MzIYWiADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYWyADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGFwgAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYXSADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhheIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GF8gAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGGAgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhhIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGGIgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GGMgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GGQgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhlIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhmIAMoCEICEAFSCnBhY2tlZEJvb2wSRAoLcGFja2VkX2VudW0YZyADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1CAhABUgpwYWNrZWRFbnVtIqgFChFUZXN0VW5wYWNrZWRUeXBlcxIpCg51bnBhY2tlZF9pbnQzMhhaIAMoBUICEABSDXVucGFja2VkSW50MzISKQoOdW5wYWNrZWRfaW50NjQYWyADKANCAhAAUg11bnBhY2tlZEludDY0EisKD3VucGFja2VkX3VpbnQzMhhcIAMoDUICEABSDnVucGFja2VkVWludDMyEisKD3VucGFja2VkX3VpbnQ2NBhdIAMoBEICEABSDnVucGFja2VkVWludDY0EisKD3VucGFja2VkX3NpbnQzMhheIAMoEUICEABSDnVucGFja2VkU2ludDMyEisKD3VucGFja2VkX3NpbnQ2NBhfIAMoEkICEABSDnVucGFja2VkU2ludDY0Ei0KEHVucGFja2VkX2ZpeGVkMzIYYCADKAdCAhAAUg91bnBhY2tlZEZpeGVkMzISLQoQdW5wYWNrZWRfZml4ZWQ2NBhhIAMoBkICEABSD3VucGFja2VkRml4ZWQ2NBIvChF1bnBhY2tlZF9zZml4ZWQzMhhiIAMoD0ICEABSEHVucGFja2VkU2ZpeGVkMzISLwoRdW5wYWNrZWRfc2ZpeGVkNjQYYyADKBBCAhAAUhB1bnBhY2tlZFNmaXhlZDY0EikKDnVucGFja2VkX2Zsb2F0GGQgAygCQgIQAFINdW5wYWNrZWRGbG9hdBIrCg91bnBhY2tlZF9kb3VibGUYZSADKAFCAhAAUg51bnBhY2tlZERvdWJsZRInCg11bnBhY2tlZF9ib29sGGYgAygIQgIQAFIMdW5wYWNrZWRCb29sEkgKDXVucGFja2VkX2VudW0YZyADKA4yHy5wcm90b2J1Zl91bml0dGVzdDMuRm9yZWlnbkVudW1CAhAAUgx1bnBhY2tlZEVudW0inwIKI1Rlc3RSZXBlYXRlZFNjYWxhckRpZmZlcmVudFRhZ1NpemVzEikKEHJlcGVhdGVkX2ZpeGVkMzIYDCADKAdSD3JlcGVhdGVkRml4ZWQzMhIlCg5yZXBlYXRlZF9pbnQzMhgNIAMoBVINcmVwZWF0ZWRJbnQzMhIqChByZXBlYXRlZF9maXhlZDY0GP4PIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EiYKDnJlcGVhdGVkX2ludDY0GP8PIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg5yZXBlYXRlZF9mbG9hdBj+/w8gAygCUg1yZXBlYXRlZEZsb2F0EikKD3JlcGVhdGVkX3VpbnQ2NBj//w8gAygEUg5yZXBlYXRlZFVpbnQ2NCIrChtUZXN0Q29tbWVudEluamVjdGlvbk1lc3NhZ2USDAoBYRgBIAEoCVIBYSIMCgpGb29SZXF1ZXN0Ig0KC0Zvb1Jlc3BvbnNlIhIKEEZvb0NsaWVudE1lc3NhZ2UiEgoQRm9vU2VydmVyTWVzc2FnZSIMCgpCYXJSZXF1ZXN0Ig0KC0JhclJlc3BvbnNlIhIKEFRlc3RFbXB0eU1lc3NhZ2UiggEKDkNvbW1lbnRNZXNzYWdlEhIKBHRleHQYASABKAlSBHRleHQaNwoUTmVzdGVkQ29tbWVudE1lc3NhZ2USHwoLbmVzdGVkX3RleHQYASABKAlSCm5lc3RlZFRleHQiIwoRTmVzdGVkQ29tbWVudEVudW0SDgoKWkVST19WQUxVRRAAKlkKC0ZvcmVpZ25FbnVtEhcKE0ZPUkVJR05fVU5TUEVDSUZJRUQQABIPCgtGT1JFSUdOX0ZPTxAEEg8KC0ZPUkVJR05fQkFSEAUSDwoLRk9SRUlHTl9CQVoQBip1ChRUZXN0RW51bVdpdGhEdXBWYWx1ZRIoCiRURVNUX0VOVU1fV0lUSF9EVVBfVkFMVUVfVU5TUEVDSUZJRUQQABIICgRGT08xEAESCAoEQkFSMRACEgcKA0JBWhADEggKBEZPTzIQARIICgRCQVIyEAIaAhABKp0BCg5UZXN0U3BhcnNlRW51bRIgChxURVNUX1NQQVJTRV9FTlVNX1VOU1BFQ0lGSUVEEAASDAoIU1BBUlNFX0EQexIOCghTUEFSU0VfQhCm5wMSDwoIU1BBUlNFX0MQsrGABhIVCghTUEFSU0VfRBDx//////////8BEhUKCFNQQVJTRV9FELTe/P///////wESDAoIU1BBUlNFX0cQAiodCgtDb21tZW50RW51bRIOCgpaRVJPX1ZBTFVFEAAynQEKC1Rlc3RTZXJ2aWNlEkYKA0ZvbxIeLnByb3RvYnVmX3VuaXR0ZXN0My5Gb29SZXF1ZXN0Gh8ucHJvdG9idWZfdW5pdHRlc3QzLkZvb1Jlc3BvbnNlEkYKA0JhchIeLnByb3RvYnVmX3VuaXR0ZXN0My5CYXJSZXF1ZXN0Gh8ucHJvdG9idWZfdW5pdHRlc3QzLkJhclJlc3BvbnNlQixCDVVuaXR0ZXN0UHJvdG+qAhpHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvc0r3dAoHEgUNAP8CAQrHAwoBDBIDDQASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91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DAoEBBgCAhIEmwICNQoNCgUEGAICBBIEmwICCgoNCgUEGAICBRIEmwILEQoNCgUEGAICARIEmwISHwoNCgUEGAICAxIEmwIiJAoNCgUEGAICCBIEmwIlNAoOCgYEGAICCAISBJsCJjMKDAoEBBgCAxIEnAICNQoNCgUEGAIDBBIEnAICCgoNCgUEGAIDBRIEnAILEQoNCgUEGAIDARIEnAISHwoNCgUEGAIDAxIEnAIiJAoNCgUEGAIDCBIEnAIlNAoOCgYEGAIDCAISBJwCJjMKDAoEBBgCBBIEnQICNQoNCgUEGAIEBBIEnQICCgoNCgUEGAIEBRIEnQILEQoNCgUEGAIEARIEnQISHwoNCgUEGAIEAxIEnQIiJAoNCgUEGAIECBIEnQIlNAoOCgYEGAIECAISBJ0CJjMKDAoEBBgCBRIEngICNQoNCgUEGAIFBBIEngICCgoNCgUEGAIFBRIEngILEQoNCgUEGAIFARIEngISHwoNCgUEGAIFAxIEngIiJAoNCgUEGAIFCBIEngIlNAoOCgYEGAIFCAISBJ4CJjMKDAoEBBgCBhIEnwICNwoNCgUEGAIGBBIEnwICCgoNCgUEGAIGBRIEnwILEgoNCgUEGAIGARIEnwITIQoNCgUEGAIGAxIEnwIkJgoNCgUEGAIGCBIEnwInNgoOCgYEGAIGCAISBJ8CKDUKDAoEBBgCBxIEoAICNwoNCgUEGAIHBBIEoAICCgoNCgUEGAIHBRIEoAILEgoNCgUEGAIHARIEoAITIQoNCgUEGAIHAxIEoAIkJgoNCgUEGAIHCBIEoAInNgoOCgYEGAIHCAISBKACKDUKDAoEBBgCCBIEoQICOQoNCgUEGAIIBBIEoQICCgoNCgUEGAIIBRIEoQILEwoNCgUEGAIIARIEoQIUIwoNCgUEGAIIAxIEoQImKAoNCgUEGAIICBIEoQIpOAoOCgYEGAIICAISBKECKjcKDAoEBBgCCRIEogICOQoNCgUEGAIJBBIEogICCgoNCgUEGAIJBRIEogILEwoNCgUEGAIJARIEogIUIwoNCgUEGAIJAxIEogImKAoNCgUEGAIJCBIEogIpOAoOCgYEGAIJCAISBKICKjcKDAoEBBgCChIEowICNAoNCgUEGAIKBBIEowICCgoNCgUEGAIKBRIEowILEAoNCgUEGAIKARIEowIRHQoNCgUEGAIKAxIEowIgIwoNCgUEGAIKCBIEowIkMwoOCgYEGAIKCAISBKMCJTIKDAoEBBgCCxIEpAICNgoNCgUEGAILBBIEpAICCgoNCgUEGAILBRIEpAILEQoNCgUEGAILARIEpAISHwoNCgUEGAILAxIEpAIiJQoNCgUEGAILCBIEpAImNQoOCgYEGAILCAISBKQCJzQKDAoEBBgCDBIEpQICMgoNCgUEGAIMBBIEpQICCgoNCgUEGAIMBRIEpQILDwoNCgUEGAIMARIEpQIQGwoNCgUEGAIMAxIEpQIeIQoNCgUEGAIMCBIEpQIiMQoOCgYEGAIMCAISBKUCIzAKDAoEBBgCDRIEpgICOQoNCgUEGAINBBIEpgICCgoNCgUEGAINBhIEpgILFgoNCgUEGAINARIEpgIXIgoNCgUEGAINAxIEpgIlKAoNCgUEGAINCBIEpgIpOAoOCgYEGAINCAISBKYCKjcKjQEKAgQZEgarAgC6AgEafyBBIG1lc3NhZ2Ugd2l0aCB0aGUgc2FtZSBmaWVsZHMgYXMgVGVzdFBhY2tlZFR5cGVzLCBidXQgd2l0aG91dCBwYWNraW5nLiBVc2VkCiB0byB0ZXN0IHBhY2tlZCA8LT4gdW5wYWNrZWQgd2lyZSBjb21wYXRpYmlsaXR5LgoKCwoDBBkBEgSrAggZCgwKBAQZAgASBKwCAjYKDQoFBBkCAAQSBKwCAgoKDQoFBBkCAAUSBKwCCxAKDQoFBBkCAAESBKwCER8KDQoFBBkCAAMSBKwCIiQKDQoFBBkCAAgSBKwCJTUKDgoGBBkCAAgCEgSsAiY0CgwKBAQZAgESBK0CAjYKDQoFBBkCAQQSBK0CAgoKDQoFBBkCAQUSBK0CCxAKDQoFBBkCAQESBK0CER8KDQoFBBkCAQMSBK0CIiQKDQoFBBkCAQgSBK0CJTUKDgoGBBkCAQgCEgStAiY0CgwKBAQZAgISBK4CAjgKDQoFBBkCAgQSBK4CAgoKDQoFBBkCAgUSBK4CCxEKDQoFBBkCAgESBK4CEiEKDQoFBBkCAgMSBK4CJCYKDQoFBBkCAggSBK4CJzcKDgoGBBkCAggCEgSuAig2CgwKBAQZAgMSBK8CAjgKDQoFBBkCAwQSBK8CAgoKDQoFBBkCAwUSBK8CCxEKDQoFBBkCAwESBK8CEiEKDQoFBBkCAwMSBK8CJCYKDQoFBBkCAwgSBK8CJzcKDgoGBBkCAwgCEgSvAig2CgwKBAQZAgQSBLACAjgKDQoFBBkCBAQSBLACAgoKDQoFBBkCBAUSBLACCxEKDQoFBBkCBAESBLACEiEKDQoFBBkCBAMSBLACJCYKDQoFBBkCBAgSBLACJzcKDgoGBBkCBAgCEgSwAig2CgwKBAQZAgUSBLECAjgKDQoFBBkCBQQSBLECAgoKDQoFBBkCBQUSBLECCxEKDQoFBBkCBQESBLECEiEKDQoFBBkCBQMSBLECJCYKDQoFBBkCBQgSBLECJzcKDgoGBBkCBQgCEgSxAig2CgwKBAQZAgYSBLICAjoKDQoFBBkCBgQSBLICAgoKDQoFBBkCBgUSBLICCxIKDQoFBBkCBgESBLICEyMKDQoFBBkCBgMSBLICJigKDQoFBBkCBggSBLICKTkKDgoGBBkCBggCEgSyAio4CgwKBAQZAgcSBLMCAjoKDQoFBBkCBwQSBLMCAgoKDQoFBBkCBwUSBLMCCxIKDQoFBBkCBwESBLMCEyMKDQoFBBkCBwMSBLMCJigKDQoFBBkCBwgSBLMCKTkKDgoGBBkCBwgCEgSzAio4CgwKBAQZAggSBLQCAjwKDQoFBBkCCAQSBLQCAgoKDQoFBBkCCAUSBLQCCxMKDQoFBBkCCAESBLQCFCUKDQoFBBkCCAMSBLQCKCoKDQoFBBkCCAgSBLQCKzsKDgoGBBkCCAgCEgS0Aiw6CgwKBAQZAgkSBLUCAjwKDQoFBBkCCQQSBLUCAgoKDQoFBBkCCQUSBLUCCxMKDQoFBBkCCQESBLUCFCUKDQoFBBkCCQMSBLUCKCoKDQoFBBkCCQgSBLUCKzsKDgoGBBkCCQgCEgS1Aiw6CgwKBAQZAgoSBLYCAjcKDQoFBBkCCgQSBLYCAgoKDQoFBBkCCgUSBLYCCxAKDQoFBBkCCgESBLYCER8KDQoFBBkCCgMSBLYCIiUKDQoFBBkCCggSBLYCJjYKDgoGBBkCCggCEgS2Aic1CgwKBAQZAgsSBLcCAjkKDQoFBBkCCwQSBLcCAgoKDQoFBBkCCwUSBLcCCxEKDQoFBBkCCwESBLcCEiEKDQoFBBkCCwMSBLcCJCcKDQoFBBkCCwgSBLcCKDgKDgoGBBkCCwgCEgS3Aik3CgwKBAQZAgwSBLgCAjUKDQoFBBkCDAQS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AhkaCi0KBAQjBAASBvICAvUCAxodIExlYWRpbmcgbmVzdGVkIGVudW0gY29tbWVudAoKDQoFBCMEAAESBPICBxgKJAoGBCMEAAIAEgT0AgQTGhQgWmVybyB2YWx1ZSBjb21tZW50CgoPCgcEIwQAAgABEgT0AgQOCg8KBwQjBAACAAISBPQCERIKPwoEBCMCABIE+AICEhoXIExlYWRpbmcgZmllbGQgY29tbWVudAoiGCBUcmFpbGluZyBmaWVsZCBjb21tZW50CgoNCgUEIwIABRIE+AICCAoNCgUEIwIAARIE+AIJDQoNCgUEIwIAAxIE+AIQEQokCgIFAxIG/AIA/wIBGhYgTGVhZGluZyBlbnVtIGNvbW1lbnQKCgsKAwUDARIE/AIFEAoiCgQFAwIAEgT+AgIRGhQgWmVybyB2YWx1ZSBjb21tZW50CgoNCgUFAwIAARIE/gICDAoNCgUFAwIAAhIE/gIPEGIGcHJvdG8zCqlOCidjc2hhcnAvcHJvdG9zL21hcF91bml0dGVzdF9wcm90bzMucHJvdG8SEnByb3RvYnVmX3VuaXR0ZXN0MxojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9wcm90bzMucHJvdG8imRYKB1Rlc3RNYXASVgoPbWFwX2ludDMyX2ludDMyGAEgAygLMi4ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyElYKD21hcF9pbnQ2NF9pbnQ2NBgCIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJcChFtYXBfdWludDMyX3VpbnQzMhgDIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISXAoRbWFwX3VpbnQ2NF91aW50NjQYBCADKAsyMC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0ElwKEW1hcF9zaW50MzJfc2ludDMyGAUgAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJcChFtYXBfc2ludDY0X3NpbnQ2NBgGIAMoCzIwLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSYgoTbWFwX2ZpeGVkMzJfZml4ZWQzMhgHIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEmIKE21hcF9maXhlZDY0X2ZpeGVkNjQYCCADKAsyMi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJoChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYCSADKAsyNC5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISaAoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GAogAygLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0ElYKD21hcF9pbnQzMl9mbG9hdBgLIAMoCzIuLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJZChBtYXBfaW50MzJfZG91YmxlGAwgAygLMi8ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSUAoNbWFwX2Jvb2xfYm9vbBgNIAMoCzIsLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0TWFwLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sElwKEW1hcF9zdHJpbmdfc3RyaW5nGA4gAygLMjAucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RNYXAuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJWCg9tYXBfaW50MzJfYnl0ZXMYDyADKAsyLi5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkJ5dGVzRW50cnlSDW1hcEludDMyQnl0ZXMSUwoObWFwX2ludDMyX2VudW0YECADKAsyLS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkVudW1FbnRyeVIMbWFwSW50MzJFbnVtEnIKGW1hcF9pbnQzMl9mb3JlaWduX21lc3NhZ2UYESADKAsyNy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcC5NYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnlSFm1hcEludDMyRm9yZWlnbk1lc3NhZ2UaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQgoUTWFwU3RyaW5nU3RyaW5nRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkJ5dGVzRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAxSBXZhbHVlOgI4ARpcChFNYXBJbnQzMkVudW1FbnRyeRIQCgNrZXkYASABKAVSA2tleRIxCgV2YWx1ZRgCIAEoDjIbLnByb3RvYnVmX3VuaXR0ZXN0My5NYXBFbnVtUgV2YWx1ZToCOAEabQobTWFwSW50MzJGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjgKBXZhbHVlGAIgASgLMiIucHJvdG9idWZfdW5pdHRlc3QzLkZvcmVpZ25NZXNzYWdlUgV2YWx1ZToCOAEiSwoRVGVzdE1hcFN1Ym1lc3NhZ2USNgoIdGVzdF9tYXAYASABKAsyGy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1hcFIHdGVzdE1hcCLbAQoOVGVzdE1lc3NhZ2VNYXASYwoRbWFwX2ludDMyX21lc3NhZ2UYASADKAsyNy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdE1lc3NhZ2VNYXAuTWFwSW50MzJNZXNzYWdlRW50cnlSD21hcEludDMyTWVzc2FnZRpkChRNYXBJbnQzMk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRI2CgV2YWx1ZRgCIAEoCzIgLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QWxsVHlwZXNSBXZhbHVlOgI4ASKJAgoPVGVzdFNhbWVUeXBlTWFwEkEKBG1hcDEYASADKAsyLS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdFNhbWVUeXBlTWFwLk1hcDFFbnRyeVIEbWFwMRJBCgRtYXAyGAIgAygLMi0ucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RTYW1lVHlwZU1hcC5NYXAyRW50cnlSBG1hcDIaNwoJTWFwMUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaNwoJTWFwMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEirRQKDFRlc3RBcmVuYU1hcBJbCg9tYXBfaW50MzJfaW50MzIYASADKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJbCg9tYXBfaW50NjRfaW50NjQYAiADKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJhChFtYXBfdWludDMyX3VpbnQzMhgDIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJhChFtYXBfdWludDY0X3VpbnQ2NBgEIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJhChFtYXBfc2ludDMyX3NpbnQzMhgFIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJhChFtYXBfc2ludDY0X3NpbnQ2NBgGIAMoCzI1LnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJnChNtYXBfZml4ZWQzMl9maXhlZDMyGAcgAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJnChNtYXBfZml4ZWQ2NF9maXhlZDY0GAggAygLMjcucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5UhFtYXBGaXhlZDY0Rml4ZWQ2NBJtChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYCSADKAsyOS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJtChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYCiADKAsyOS5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJbCg9tYXBfaW50MzJfZmxvYXQYCyADKAsyMy5wcm90b2J1Zl91bml0dGVzdDMuVGVzdEFyZW5hTWFwLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJeChBtYXBfaW50MzJfZG91YmxlGAwgAygLMjQucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkRvdWJsZUVudHJ5Ug5tYXBJbnQzMkRvdWJsZRJVCg1tYXBfYm9vbF9ib29sGA0gAygLMjEucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJYCg5tYXBfaW50MzJfZW51bRgOIAMoCzIyLnByb3RvYnVmX3VuaXR0ZXN0My5UZXN0QXJlbmFNYXAuTWFwSW50MzJFbnVtRW50cnlSDG1hcEludDMyRW51bRJ3ChltYXBfaW50MzJfZm9yZWlnbl9tZXNzYWdlGA8gAygLMjwucHJvdG9idWZfdW5pdHRlc3QzLlRlc3RBcmVuYU1hcC5NYXBJbnQzMkZvcmVpZ25NZXNzYWdlRW50cnlSFm1hcEludDMyRm9yZWlnbk1lc3NhZ2UaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGkAKEk1hcEludDMyRmxvYXRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAlIFdmFsdWU6AjgBGkEKE01hcEludDMyRG91YmxlRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAFSBXZhbHVlOgI4ARo+ChBNYXBCb29sQm9vbEVudHJ5EhAKA2tleRgBIAEoCFIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaXAoRTWFwSW50MzJFbnVtRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKA4yGy5wcm90b2J1Zl91bml0dGVzdDMuTWFwRW51bVIFdmFsdWU6AjgBGm0KG01hcEludDMyRm9yZWlnbk1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRI4CgV2YWx1ZRgCIAEoCzIiLnByb3RvYnVmX3VuaXR0ZXN0My5Gb3JlaWduTWVzc2FnZVIFdmFsdWU6AjgBIvgBCh9NZXNzYWdlQ29udGFpbmluZ0VudW1DYWxsZWRUeXBlElEKBHR5cGUYASADKAsyPS5wcm90b2J1Zl91bml0dGVzdDMuTWVzc2FnZUNvbnRhaW5pbmdFbnVtQ2FsbGVkVHlwZS5UeXBlRW50cnlSBHR5cGUabAoJVHlwZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EkkKBXZhbHVlGAIgASgLMjMucHJvdG9idWZfdW5pdHRlc3QzLk1lc3NhZ2VDb250YWluaW5nRW51bUNhbGxlZFR5cGVSBXZhbHVlOgI4ASIUCgRUeXBlEgwKCFRZUEVfRk9PEAAisQEKH01lc3NhZ2VDb250YWluaW5nTWFwQ2FsbGVkRW50cnkSVAoFZW50cnkYASADKAsyPi5wcm90b2J1Zl91bml0dGVzdDMuTWVzc2FnZUNvbnRhaW5pbmdNYXBDYWxsZWRFbnRyeS5FbnRyeUVudHJ5UgVlbnRyeRo4CgpFbnRyeUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEqPwoHTWFwRW51bRIQCgxNQVBfRU5VTV9GT08QABIQCgxNQVBfRU5VTV9CQVIQARIQCgxNQVBfRU5VTV9CQVoQAkIdqgIaR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3NKqhoKBhIEDQBcAQrjBAoBDBIDDQASGswCIFRoaXMgZmlsZSBpcyBtb3N0bHkgZXF1aXZhbGVudCB0byBtYXBfdW5pdHRlc3QucHJvdG8sIGJ1dCBpbXBvcnRzCiB1bml0dGVzdF9wcm90bzMucHJvdG8gaW5zdGVhZCBvZiB1bml0dGVzdC5wcm90bywgc28gdGhhdCBpdCBvbmx5CiB1c2VzIHByb3RvMyBtZXNzYWdlcy4g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BSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SABSC3N0cnVjdFZhbHVlEjsKCmxpc3RfdmFsdWUYBiABKAsyGi5nb29nbGUucHJvdG9idWYuTGlzdFZhbHVlSABSCWxpc3RWYWx1ZUIGCgRraW5kIjsKCUxpc3RWYWx1ZRIuCgZ2YWx1ZXMYASADKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWVSBnZhbHVlcyobCglOdWxsVmFsdWUSDgoKTlVMTF9WQUxVRRAAQn8KE2NvbS5nb29nbGUucHJvdG9idWZCC1N0cnVjdFByb3RvUAFaL2dvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3N0cnVjdHBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSpkdCgYSBB4AXgEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM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YCBpcyBhIHNpbmdsZXRvbiBlbnVtZXJhdGlvbiB0byByZXByZXNlbnQgdGhlIG51bGwgdmFsdWUgZm9yIHRoZQogYFZhbHVlYCB0eXBlIHVuaW9uLgoKIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIGZvciBgTnVsbFZhbHVlYCBpcyBKU09OIGBudWxsYC4KCgoKAwUAARIDUwUOChoKBAUAAgASA1UCERoNIE51bGwgdmFsdWUuCgoMCgUFAAIAARIDVQIMCgwKBQUAAgACEgNVDxAKggEKAgQCEgRbAF4BGnYgYExpc3RWYWx1ZWAgaXMgYSB3cmFwcGVyIGFyb3VuZCBhIHJlcGVhdGVkIGZpZWxkIG9mIHZhbHVlcy4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYExpc3RWYWx1ZWAgaXMgSlNPTiBhcnJheS4KCgoKAwQCARIDWwgRCjoKBAQCAgASA10CHBotIFJlcGVhdGVkIGZpZWxkIG9mIGR5bmFtaWNhbGx5IHR5cGVkIHZhbHVlcy4KCgwKBQQCAgAEEgNdAgoKDAoFBAICAAYSA10LEAoMCgUEAgIAARIDXREXCgwKBQQCAgADEgNdGhtiBnByb3RvMwqXRwojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZXMucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90byInCghJc3N1ZTMwNxobCgpOZXN0ZWRPbmNlGg0KC05lc3RlZFR3aWNlIs0BChNOZWdhdGl2ZUVudW1NZXNzYWdlEjMKBXZhbHVlGAEgASgOMh0udW5pdHRlc3RfaXNzdWVzLk5lZ2F0aXZlRW51bVIFdmFsdWUSOQoGdmFsdWVzGAIgAygOMh0udW5pdHRlc3RfaXNzdWVzLk5lZ2F0aXZlRW51bUICEABSBnZhbHVlcxJGCg1wYWNrZWRfdmFsdWVzGAMgAygOMh0udW5pdHRlc3RfaXNzdWVzLk5lZ2F0aXZlRW51bUICEAFSDHBhY2tlZFZhbHVlcyIVCg9EZXByZWNhdGVkQ2hpbGQ6AhgBIosDChdEZXByZWNhdGVkRmllbGRzTWVzc2FnZRIqCg5QcmltaXRpdmVWYWx1ZRgBIAEoBUICGAFSDlByaW1pdGl2ZVZhbHVlEioKDlByaW1pdGl2ZUFycmF5GAIgAygFQgIYAVIOUHJpbWl0aXZlQXJyYXkSSAoMTWVzc2FnZVZhbHVlGAMgASgLMiAudW5pdHRlc3RfaXNzdWVzLkRlcHJlY2F0ZWRDaGlsZEICGAFSDE1lc3NhZ2VWYWx1ZRJICgxNZXNzYWdlQXJyYXkYBCADKAsyIC51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZENoaWxkQgIYAVIMTWVzc2FnZUFycmF5EkEKCUVudW1WYWx1ZRgFIAEoDjIfLnVuaXR0ZXN0X2lzc3Vlcy5EZXByZWNhdGVkRW51bUICGAFSCUVudW1WYWx1ZRJBCglFbnVtQXJyYXkYBiADKA4yHy51bml0dGVzdF9pc3N1ZXMuRGVwcmVjYXRlZEVudW1CAhgBUglFbnVtQXJyYXkiHwoJSXRlbUZpZWxkEhIKBGl0ZW0YASABKAVSBGl0ZW0iVwoNUmVzZXJ2ZWROYW1lcxIUCgV0eXBlcxgBIAEoBVIFdHlwZXMSHgoKZGVzY3JpcHRvchgCIAEoBVIKZGVzY3JpcHRvchoQCg5Tb21lTmVzdGVkVHlwZSLfAQoVVGVzdEpzb25GaWVsZE9yZGVyaW5nEh8KC3BsYWluX2ludDMyGAQgASgFUgpwbGFpbkludDMyEh0KCW8xX3N0cmluZxgCIAEoCUgAUghvMVN0cmluZxIbCghvMV9pbnQzMhgFIAEoBUgAUgdvMUludDMyEiEKDHBsYWluX3N0cmluZxgBIAEoCVILcGxhaW5TdHJpbmcSGwoIbzJfaW50MzIYBiABKAVIAVIHbzJJbnQzMhIdCglvMl9zdHJpbmcYAyABKAlIAVIIbzJTdHJpbmdCBAoCbzFCBAoCbzIiUQoMVGVzdEpzb25OYW1lEhIKBG5hbWUYASABKAlSBG5hbWUSGQoLZGVzY3JpcHRpb24YAiABKAlSBGRlc2MSEgoEZ3VpZBgDIAEoCVIEZXhpZCKTAQoMT25lb2ZNZXJnaW5nEhQKBHRleHQYASABKAlIAFIEdGV4dBI+CgZuZXN0ZWQYAiABKAsyJC51bml0dGVzdF9pc3N1ZXMuT25lb2ZNZXJnaW5nLk5lc3RlZEgAUgZuZXN0ZWQaJAoGTmVzdGVkEgwKAXgYASABKAVSAXgSDAoBeRgCIAEoBVIBeUIHCgV2YWx1ZSKDAQoWTnVsbFZhbHVlT3V0c2lkZVN0cnVjdBIjCgxzdHJpbmdfdmFsdWUYASABKAlIAFILc3RyaW5nVmFsdWUSOwoKbnVsbF92YWx1ZRgCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIAFIJbnVsbFZhbHVlQgcKBXZhbHVlIlAKE051bGxWYWx1ZU5vdEluT25lb2YSOQoKbnVsbF92YWx1ZRgCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVSCW51bGxWYWx1ZSJ9ChdNaXhlZFJlZ3VsYXJBbmRPcHRpb25hbBIjCg1yZWd1bGFyX2ZpZWxkGAEgASgJUgxyZWd1bGFyRmllbGQSKgoOb3B0aW9uYWxfZmllbGQYAiABKAlIAFINb3B0aW9uYWxGaWVsZIgBAUIRCg9fb3B0aW9uYWxfZmllbGQiQgoST25lb2ZXaXRoTm9uZUZpZWxkEg4KAXgYASABKAlIAFIBeBIUCgRub25lGAIgASgJSABSBG5vbmVCBgoEdGVzdCI7ChFPbmVvZldpdGhOb25lTmFtZRIOCgF4GAEgASgJSABSAXgSDgoBeRgCIAEoCUgAUgF5QgYKBG5vbmUiogMKGURpc2FtYmlndWF0ZUNvbW1vbk1lbWJlcnMSPgobZGlzYW1iaWd1YXRlX2NvbW1vbl9tZW1iZXJzGAEgASgFUhlkaXNhbWJpZ3VhdGVDb21tb25NZW1iZXJzEhQKBXR5cGVzGAIgASgFUgV0eXBlcxIeCgpkZXNjcmlwdG9yGAMgASgFUgpkZXNjcmlwdG9yEhYKBmVxdWFscxgEIAEoBVIGZXF1YWxzEhsKCXRvX3N0cmluZxgFIAEoBVIIdG9TdHJpbmcSIgoNZ2V0X2hhc2hfY29kZRgGIAEoBVILZ2V0SGFzaENvZGUSGQoId3JpdGVfdG8YByABKAVSB3dyaXRlVG8SFAoFY2xvbmUYCCABKAVSBWNsb25lEiUKDmNhbGN1bGF0ZV9zaXplGAkgASgFUg1jYWxjdWxhdGVTaXplEh0KCm1lcmdlX2Zyb20YCiABKAVSCW1lcmdlRnJvbRInCg9vbl9jb25zdHJ1Y3Rpb24YCyABKAVSDm9uQ29uc3RydWN0aW9uEhYKBnBhcnNlchgMIAEoBVIGcGFyc2VyIj0KEUlzc3VlMTE5ODdNZXNzYWdlEgwKAWEYASABKAVSAWISDAoBYhgCIAEoBVIBYRIMCgFjGAMgASgFUgFkKlUKDE5lZ2F0aXZlRW51bRIWChJORUdBVElWRV9FTlVNX1pFUk8QABIWCglGaXZlQmVsb3cQ+///////////ARIVCghNaW51c09uZRD///////////8BKjYKDkRlcHJlY2F0ZWRFbnVtEhcKD0RFUFJFQ0FURURfWkVSTxAAGgIIARIHCgNvbmUQARoCGAFCHaoCGlVuaXRUZXN0Lklzc3Vlcy5UZXN0UHJvdG9zSuszCgcSBQcAygEBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCo4CCgECEgMOABgaZiBJc3N1ZTogTm9uLSJHb29nbGUuUHJvdG9idWZmZXJzIiBuYW1lc3BhY2Ugd2lsbCBlbnN1cmUgdGhhdCBwcm90b2J1ZmZlcgogbGlicmFyeSB0eXBlcyBhcmUgcXVhbGlmaWVkCjKbASBUaGVzZSBwcm90byBkZXNjcmlwdG9ycyBoYXZlIGF0IG9uZSB0aW1lIGJlZW4gcmVwb3J0ZWQgYXMgYW4gaXNzdWUgb3IgZGVmZWN0LgogVGhleSBhcmUga2VwdCBoZXJlIHRvIHJlcGxpY2F0ZSB0aGUgaXNzdWUsIGFuZCBjb250aW51ZSB0byB2ZXJpZnkgdGhlIGZpeC4KCgkKAgMAEgMQACYKCAoBCBIDEgA3CgkKAgglEgMSADcKdgoCBAASBBYAGgEaaiBJc3N1ZSAzMDc6IHdoZW4gZ2VuZXJhdGluZyBkb3VibHktbmVzdGVkIHR5cGVzLCBhbnkgcmVmZXJlbmNlcwogc2hvdWxkIGJlIG9mIHRoZSBmb3JtIEEuVHlwZXMuQi5UeXBlcy5DLgoKCgoDBAABEgMWCBAKDAoEBAADABIEFwIZAwoMCgUEAAMAARIDFwoUCg0KBgQAAwADABIDGAQaCg4KBwQAAwADAAESAxgMFwqwBAoCBQASBDUAOQEymQEgT2xkIGlzc3VlIDEzOgogaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3Byb3RvYnVmLWNzaGFycC1wb3J0L2lzc3Vlcy9kZXRhaWw/aWQ9MTMgTmV3IGlzc3VlCiAzMDk6IGh0dHBzOi8vZ2l0aHViLmNvbS9wcm90b2NvbGJ1ZmZlcnMvcHJvdG9idWYvaXNzdWVzLzMwOQoyKyBtZXNzYWdlIEEgewogICAgb3B0aW9uYWwgaW50MzIgX0EgPSAxOwogfQoyKyBtZXNzYWdlIEIgewogICAgb3B0aW9uYWwgaW50MzIgQl8gPSAxOwogfQoyLiBtZXNzYWdlIEFCIHsKICAgICBvcHRpb25hbCBpbnQzMiBhX2IgPSAxOwogfQoy2gEgU2ltaWxhciBpc3N1ZSB3aXRoIG51bWVyaWMgbmFtZXMKIEphdmEgY29kZSBmYWlsZWQgdG9vLCBzbyBwcm9iYWJseSBiZXN0IGZvciB0aGlzIHRvIGJlIGEgcmVzdHJpY3Rpb24uCiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Byb3RvY29sYnVmZmVycy9wcm90b2J1Zi9pc3N1ZXMvMzA4CiBtZXNzYWdlIE51bWJlckZpZWxkIHsKICAgIG9wdGlvbmFsIGludDMyIF8wMSA9IDE7CiB9CjIhIGlzc3VlIDE5IC0gbmVnYXRpdmUgZW51bSB2YWx1ZXMKCgoKAwUAARIDNQURCgsKBAUAAgASAzYCGQoMCgUFAAIAARIDNgIUCgwKBQUAAgACEgM2FxgKCwoEBQACARIDNwIRCgwKBQUAAgEBEgM3AgsKDAoFBQACAQISAzcOEAoLCgQFAAICEgM4AhAKDAoFBQACAgESAzgCCgoMCgUFAAICAhIDOA0PCgoKAgQBEgQ7AD8BCgoKAwQBARIDOwgbCgsKBAQBAgASAzwCGQoMCgUEAQIABhIDPAIOCgwKBQQBAgABEgM8DxQKDAoFBAECAAMSAzwXGAoLCgQEAQIBEgM9AjQKDAoFBAECAQQSAz0CCgoMCgUEAQIBBhIDPQsXCgwKBQQBAgEBEgM9GB4KDAoFBAECAQMSAz0hIgoMCgUEAQIBCBIDPSMzCg0KBgQBAgEIAhIDPSQyCgsKBAQBAgISAz4COgoMCgUEAQICBBIDPgIKCgwKBQQBAgIGEgM+CxcKDAoFBAECAgESAz4YJQoMCgUEAQICAxIDPigpCgwKBQQBAgIIEgM+KjkKDQoGBAECAggCEgM+KzgKlwEKAgQCEgREAEYBMooBIElzc3VlIDIxOiBodHRwOi8vY29kZS5nb29nbGUuY29tL3AvcHJvdG9idWYtY3NoYXJwLXBvcnQvaXNzdWVzL2RldGFpbD9pZD0yMQogRGVjb3JhdGUgZmllbGRzIHdpdGggW2RlcHJlY2F0ZWQ9dHJ1ZV0gYXMgW1N5c3RlbS5PYnNvbGV0ZV0KCgoKAwQCARIDRAgXCgoKAwQCBxIDRQIbCgsKBAQCBwMSA0UCGwoKCgIFARIESABNAQoKCgMFAQESA0gFEwoKCgMFAQMSA0kCGwoLCgQFAQMDEgNJAhsKCwoEBQECABIDSwIqCgwKBQUBAgABEgNLAhEKDAoFBQECAAISA0sUFQoMCgUFAQIAAxIDSxYpCg0KBgUBAgADARIDSxcoCgsKBAUBAgESA0wCCgoMCgUFAQIBARIDTAIFCgwKBQUBAgECEgNMCAkKCgoCBAMSBE8AWAEKCgoDBAMBEgNPCB8KCwoEBAMCABIDUAIvCgwKBQQDAgAFEgNQAgcKDAoFBAMCAAESA1AIFgoMCgUEAwIAAxIDUBkaCgwKBQQDAgAIEgNQGy4KDQoGBAMCAAgDEgNQHC0KCwoEBAMCARIDUQI4CgwKBQQDAgEEEgNRAgoKDAoFBAMCAQUSA1ELEAoMCgUEAwIBARIDUREfCgwKBQQDAgEDEgNRIiMKDAoFBAMCAQgSA1EkNwoNCgYEAwIBCAMSA1ElNgoLCgQEAwICEgNTAjcKDAoFBAMCAgYSA1MCEQoMCgUEAwICARIDUxIeCgwKBQQDAgIDEgNTISIKDAoFBAMCAggSA1MjNgoNCgYEAwICCAMSA1MkNQoLCgQEAwIDEgNUAkAKDAoFBAMCAwQSA1QCCgoMCgUEAwIDBhIDVAsaCgwKBQQDAgMBEgNUGycKDAoFBAMCAwMSA1QqKwoMCgUEAwIDCBIDVCw/Cg0KBgQDAgMIAxIDVC0+CgsKBAQDAgQSA1YCMwoMCgUEAwIEBhIDVgIQCgwKBQQDAgQBEgNWERoKDAoFBAMCBAMSA1YdHgoMCgUEAwIECBIDVh8yCg0KBgQDAgQIAxIDViAxCgsKBAQDAgUSA1cCPAoMCgUEAwIFBBIDVwIKCgwKBQQDAgUGEgNXCxkKDAoFBAMCBQESA1caIwoMCgUEAwIFAxIDVyYnCgwKBQQDAgUIEgNXKDsKDQoGBAMCBQgDEgNXKToKWQoCBAQSBFsAXQEaTSBJc3N1ZSA0NTogaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3Byb3RvYnVmLWNzaGFycC1wb3J0L2lzc3Vlcy9kZXRhaWw/aWQ9NDUKCgoKAwQEARIDWwgRCgsKBAQEAgASA1wCEQoMCgUEBAIABRIDXAIHCgwKBQQEAgABEgNcCAwKDAoFBAQCAAMSA1wPEAoKCgIEBRIEXwBlAQoKCgMEBQESA18IFQovCgQEBQMAEgNhAhsaIiBGb3JjZSBhIG5lc3RlZCB0eXBlIGNhbGxlZCBUeXBlcwoKDAoFBAUDAAESA2EKGAoLCgQEBQIAEgNjAhIKDAoFBAUCAAUSA2MCBwoMCgUEBQIAARIDYwgNCgwKBQQFAgADEgNjEBEKCwoEBAUCARIDZAIXCgwKBQQFAgEFEgNkAgcKDAoFBAUCAQESA2QIEgoMCgUEBQIBAxIDZBUWCvMDCgIEBhIFZwCAAQEi5QMgVGhlc2UgZmllbGRzIGFyZSBkZWxpYmVyYXRlbHkgbm90IGRlY2xhcmVkIGluIG51bWVyaWMKIG9yZGVyLCBhbmQgdGhlIG9uZW9mIGZpZWxkcyBhcmVuJ3QgY29udGlndW91cyBlaXRoZXIuCiBUaGlzIGFsbG93cyBmb3IgcmVhc29uYWJseSByb2J1c3QgdGVzdHMgb2YgSlNPTiBvdXRwdXQKIG9yZGVyaW5nLgogVGVzdEZpZWxkT3JkZXJpbmdzIGluIHVuaXR0ZXN0X3Byb3RvMy5wcm90byBpcyBzaW1pbGFyLAogYnV0IGRvZXNuJ3QgaW5jbHVkZSBvbmVvZnMuCiBUT0RPOiBDb25zaWRlciBhZGRpbmcgb25lb2ZzIHRvIFRlc3RGaWVsZE9yZGVyaW5ncywgYWx0aG91Z2gKIHRoYXQgd2lsbCByZXF1aXJlIGZpeGluZyBvdGhlciB0ZXN0cyBpbiBtdWx0aXBsZSBwbGF0Zm9ybXMuCiBBbHRlcm5hdGl2ZWx5LCBjb25zaWRlciBqdXN0IGFkZGluZyB0aGlzIHRvCiB1bml0dGVzdF9wcm90bzMucHJvdG8gaWYgbXVsdGlwbGUgcGxhdGZvcm1zIHdhbnQgaXQuCgoKCgMEBgESA2cIHQoLCgQEBgIAEgNzAhgKDAoFBAYCAAUSA3MCBwoMCgUEBgIAARIDcwgTCgwKBQQGAgADEgNzFhcKDAoEBAYIABIEdQJ4AwoMCgUEBggAARIDdQgKCgsKBAQGAgESA3YEGQoMCgUEBgIBBRIDdgQKCgwKBQQGAgEBEgN2CxQKDAoFBAYCAQMSA3YXGAoLCgQEBgICEgN3BBcKDAoFBAYCAgUSA3cECQoMCgUEBgICARIDdwoSCgwKBQQGAgIDEgN3FRYKCwoEBAYCAxIDegIaCgwKBQQGAgMFEgN6AggKDAoFBAYCAwESA3oJFQoMCgUEBgIDAxIDehgZCgwKBAQGCAESBHwCfwMKDAoFBAYIAQESA3wICgoLCgQEBgIEEgN9BBcKDAoFBAYCBAUSA30ECQoMCgUEBgIEARIDfQoSCgwKBQQGAgQDEgN9FRYKCwoEBAYCBRIDfgQZCgwKBQQGAgUFEgN+BAoKDAoFBAYCBQESA34LFAoMCgUEBgIFAxIDfhcYCgwKAgQHEgaCAQCHAQEKCwoDBAcBEgSCAQgUCksKBAQHAgASBIQBAhIaPSBNZXNzYWdlIGZvciB0ZXN0aW5nIHRoZSBlZmZlY3RzIGZvciBvZiB0aGUganNvbl9uYW1lIG9wdGlvbgoKDQoFBAcCAAUSBIQBAggKDQoFBAcCAAESBIQBCQ0KDQoFBAcCAAMSBIQBEBEKDAoEBAcCARIEhQECLgoNCgUEBwIBBRIEhQECCAoNCgUEBwIBARIEhQEJFAoNCgUEBwIBAxIEhQEXGAoNCgUEBwIBCBIEhQEZLQoNCgUEBwIBChIEhQEaLAoNCgUEBwIBChIEhQEmLAoMCgQEBwICEgSGAQInCg0KBQQHAgIFEgSGAQIICg0KBQQHAgIBEgSGAQkNCg0KBQQHAgIDEgSGARARCg0KBQQHAgIIEgSGARImCg0KBQQHAgIKEgSGARMlCg0KBQQHAgIKEgSGAR8lCpkBCgIECBIGjAEAlgEBGooBIElzc3VlIDMyMDA6IFdoZW4gbWVyZ2luZyB0d28gbWVzc2FnZXMgd2hpY2ggdXNlIHRoZSBzYW1lCiBvbmVvZiBjYXNlLCB3aGljaCBpcyBpdHNlbGYgYSBtZXNzYWdlIHR5cGUsIHRoZSBzdWJtZXNzYWdlcyBzaG91bGQKIGJlIG1lcmdlZC4KCgsKAwQIARIEjAEIFAoOCgQECAMAEgaNAQKQAQMKDQoFBAgDAAESBI0BChAKDgoGBAgDAAIAEgSOAQQQCg8KBwQIAwACAAUSBI4BBAkKDwoHBAgDAAIAARIEjgEKCwoPCgcECAMAAgADEgSOAQ4PCg4KBgQIAwACARIEjwEEEAoPCgcECAMAAgEFEgSPAQQJCg8KBwQIAwACAQESBI8BCgsKDwoHBAgDAAIBAxIEjwEODwoOCgQECAgAEgaSAQKVAQMKDQoFBAgIAAESBJIBCA0KDAoEBAgCABIEkwEEFAoNCgUECAIABRIEkwEECgoNCgUECAIAARIEkwELDwoNCgUECAIAAxIEkwESEwoMCgQECAIBEgSUAQQWCg0KBQQIAgEGEgSUAQQKCg0KBQQIAgEBEgSUAQsRCg0KBQQIAgEDEgSUARQVCgwKAgQJEgaYAQCdAQEKCwoDBAkBEgSYAQgeCg4KBAQJCAASBpkBApwBAwoNCgUECQgAARIEmQEIDQoMCgQECQIAEgSaAQQcCg0KBQQJAgAFEgSaAQQKCg0KBQQJAgABEgSaAQsXCg0KBQQJAgADEgSaARobCgwKBAQJAgESBJsBBC0KDQoFBAkCAQYSBJsBBB0KDQoFBAkCAQESBJsBHigKDQoFBAkCAQMSBJsBKywKDAoCBAoSBp8BAKEBAQoLCgMECgESBJ8BCBsKDAoEBAoCABIEoAECKwoNCgUECgIABhIEoAECGwoNCgUECgIAARIEoAEcJgoNCgUECgIAAxIEoAEpKgoMCgIECxIGowEApgEBCgsKAwQLARIEowEIHwoMCgQECwIAEgSkAQIbCg0KBQQLAgAFEgSkAQIICg0KBQQLAgABEgSkAQkWCg0KBQQLAgADEgSkARkaCgwKBAQLAgESBKUBAiUKDQoFBAsCAQQSBKUBAgoKDQoFBAsCAQUSBKUBCxEKDQoFBAsCAQESBKUBEiAKDQoFBAsCAQMSBKUBIyQKDAoCBAwSBqgBAK0BAQoLCgMEDAESBKgBCBoKDgoEBAwIABIGqQECrAEDCg0KBQQMCAABEgSpAQgMCgwKBAQMAgASBKoBBBEKDQoFBAwCAAUSBKoBBAoKDQoFBAwCAAESBKoBCwwKDQoFBAwCAAMSBKoBDxAKDAoEBAwCARIEqwEEFAoNCgUEDAIBBRIEqwEECgoNCgUEDAIBARIEqwELDwoNCgUEDAIBAxIEqwESEwoMCgIEDRIGrwEAtAEBCgsKAwQNARIErwEIGQoOCgQEDQgAEgawAQKzAQMKDQoFBA0IAAESBLABCAwKDAoEBA0CABIEsQEEEQoNCgUEDQIABRIEsQEECgoNCgUEDQIAARIEsQELDAoNCgUEDQIAAxIEsQEPEAoMCgQEDQIBEgSyAQQRCg0KBQQNAgEFEgSyAQQKCg0KBQQNAgEBEgSyAQsMCg0KBQQNAgEDEgSyAQ8QChoKAgQOEga3AQDEAQEaDCBJc3N1ZSA4ODEwCgoLCgMEDgESBLcBCCEKDAoEBA4CABIEuAECKAoNCgUEDgIABRIEuAECBwoNCgUEDgIAARIEuAEIIwoNCgUEDgIAAxIEuAEmJwoMCgQEDgIBEgS5AQISCg0KBQQOAgEFEgS5AQIHCg0KBQQOAgEBEgS5AQgNCg0KBQQOAgEDEgS5ARARCgwKBAQOAgISBLoBAhcKDQoFBA4CAgUSBLoBAgcKDQoFBA4CAgESBLoBCBIKDQoFBA4CAgMSBLoBFRYKDAoEBA4CAxIEuwECEwoNCgUEDgIDBRIEuwECBwoNCgUEDgIDARIEuwEIDgoNCgUEDgIDAxIEuwEREgoMCgQEDgIEEgS8AQIWCg0KBQQOAgQFEgS8AQIHCg0KBQQOAgQBEgS8AQgRCg0KBQQOAgQDEgS8ARQVCgwKBAQOAgUSBL0BAhoKDQoFBA4CBQUSBL0BAgcKDQoFBA4CBQESBL0BCBUKDQoFBA4CBQMSBL0BGBkKDAoEBA4CBhIEvgECFQoNCgUEDgIGBRIEvgECBwoNCgUEDgIGARIEvgEIEAoNCgUEDgIGAxIEvgETFAoMCgQEDgIHEgS/AQISCg0KBQQOAgcFEgS/AQIHCg0KBQQOAgcBEgS/AQgNCg0KBQQOAgcDEgS/ARARCgwKBAQOAggSBMABAhsKDQoFBA4CCAUSBMABAgcKDQoFBA4CCAESBMABCBYKDQoFBA4CCAMSBMABGRoKDAoEBA4CCRIEwQECGAoNCgUEDgIJBRIEwQECBwoNCgUEDgIJARIEwQEIEgoNCgUEDgIJAxIEwQEVFwoMCgQEDgIKEgTCAQIdCg0KBQQOAgoFEgTCAQIHCg0KBQQOAgoBEgTCAQgXCg0KBQQOAgoDEgTCARocCgwKBAQOAgsSBMMBAhQKDQoFBA4CCwUSBMMBAgcKDQoFBA4CCwESBMMBCA4KDQoFBA4CCwMSBMMBERMKDAoCBA8SBsYBAMoBAQoLCgMEDwESBMYBCBkKDAoEBA8CABIExwECIAoNCgUEDwIABRIExwECBwoNCgUEDwIAARIExwEICQoNCgUEDwIAAxIExwEMDQoNCgUEDwIACBIExwEOHwoNCgUEDwIAChIExwEPHgoNCgUEDwIAChIExwEbHgoMCgQEDwIBEgTIAQIgCg0KBQQPAgEFEgTIAQIHCg0KBQQPAgEBEgTIAQgJCg0KBQQPAgEDEgTIAQwNCg0KBQQPAgEIEgTIAQ4fCg0KBQQPAgEKEgTIAQ8eCg0KBQQPAgEKEgTIARseCgwKBAQPAgISBMkBAiAKDQoFBA8CAgUSBMkBAgcKDQoFBA8CAgESBMkBCAkKDQoFBA8CAgMSBMkBDA0KDQoFBA8CAggSBMkBDh8KDQoFBA8CAgoSBMkBDx4KDQoFBA8CAgoSBMkBGx5iBnByb3RvMwqyuQQKIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlwdG9yLnByb3RvEg9nb29nbGUucHJvdG9idWYiWwoRRmlsZURlc2NyaXB0b3JTZXQSOAoEZmlsZRgBIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5GaWxlRGVzY3JpcHRvclByb3RvUgRmaWxlKgwIgOzK/wEQgezK/wEimAUKE0ZpbGVEZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRIYCgdwYWNrYWdlGAIgASgJUgdwYWNrYWdlEh4KCmRlcGVuZGVuY3kYAyADKAlSCmRlcGVuZGVuY3kSKwoRcHVibGljX2RlcGVuZGVuY3kYCiADKAVSEHB1YmxpY0RlcGVuZGVuY3kSJwoPd2Vha19kZXBlbmRlbmN5GAsgAygFUg53ZWFrRGVwZW5kZW5jeRJDCgxtZXNzYWdlX3R5cGUYBCADKAsyIC5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvUgttZXNzYWdlVHlwZRJBCgllbnVtX3R5cGUYBSADKAsyJC5nb29nbGUucHJvdG9idWYuRW51bURlc2NyaXB0b3JQcm90b1IIZW51bVR5cGUSQQoHc2VydmljZRgGIAMoCzInLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlRGVzY3JpcHRvclByb3RvUgdzZXJ2aWNlEkMKCWV4dGVuc2lvbhgHIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IJZXh0ZW5zaW9uEjYKB29wdGlvbnMYCCABKAsyHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnNSB29wdGlvbnMSSQoQc291cmNlX2NvZGVfaW5mbxgJIAEoCzIfLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb2RlSW5mb1IOc291cmNlQ29kZUluZm8SFgoGc3ludGF4GAwgASgJUgZzeW50YXgSMgoHZWRpdGlvbhgOIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUgdlZGl0aW9uIrkGCg9EZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI7CgVmaWVsZBgCIAMoCzIlLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90b1IFZmllbGQSQwoJZXh0ZW5zaW9uGAYgAygLMiUuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvUglleHRlbnNpb24SQQoLbmVzdGVkX3R5cGUYAyADKAsyIC5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvUgpuZXN0ZWRUeXBlEkEKCWVudW1fdHlwZRgEIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvUghlbnVtVHlwZRJYCg9leHRlbnNpb25fcmFuZ2UYBSADKAsyLy5nb29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvLkV4dGVuc2lvblJhbmdlUg5leHRlbnNpb25SYW5nZRJECgpvbmVvZl9kZWNsGAggAygLMiUuZ29vZ2xlLnByb3RvYnVmLk9uZW9mRGVzY3JpcHRvclByb3RvUglvbmVvZkRlY2wSOQoHb3B0aW9ucxgHIAEoCzIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9uc1IHb3B0aW9ucxJVCg5yZXNlcnZlZF9yYW5nZRgJIAMoCzIuLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG8uUmVzZXJ2ZWRSYW5nZVINcmVzZXJ2ZWRSYW5nZRIjCg1yZXNlcnZlZF9uYW1lGAogAygJUgxyZXNlcnZlZE5hbWUaegoORXh0ZW5zaW9uUmFuZ2USFAoFc3RhcnQYASABKAVSBXN0YXJ0EhAKA2VuZBgCIAEoBVIDZW5kEkAKB29wdGlvbnMYAyABKAsyJi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zUgdvcHRpb25zGjcKDVJlc2VydmVkUmFuZ2USFAoFc3RhcnQYASABKAVSBXN0YXJ0EhAKA2VuZBgCIAEoBVIDZW5kIswEChVFeHRlbnNpb25SYW5nZU9wdGlvbnMSWAoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb25SE3VuaW50ZXJwcmV0ZWRPcHRpb24SWQoLZGVjbGFyYXRpb24YAiADKAsyMi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zLkRlY2xhcmF0aW9uQgOIAQJSC2RlY2xhcmF0aW9uEjcKCGZlYXR1cmVzGDIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEm0KDHZlcmlmaWNhdGlvbhgDIAEoDjI4Lmdvb2dsZS5wcm90b2J1Zi5FeHRlbnNpb25SYW5nZU9wdGlvbnMuVmVyaWZpY2F0aW9uU3RhdGU6ClVOVkVSSUZJRURCA4gBAlIMdmVyaWZpY2F0aW9uGpQBCgtEZWNsYXJhdGlvbhIWCgZudW1iZXIYASABKAVSBm51bWJlchIbCglmdWxsX25hbWUYAiABKAlSCGZ1bGxOYW1lEhIKBHR5cGUYAyABKAlSBHR5cGUSGgoIcmVzZXJ2ZWQYBSABKAhSCHJlc2VydmVkEhoKCHJlcGVhdGVkGAYgASgIUghyZXBlYXRlZEoECAQQBSI0ChFWZXJpZmljYXRpb25TdGF0ZRIPCgtERUNMQVJBVElPThAAEg4KClVOVkVSSUZJRUQQASoJCOgHEICAgIACIsEGChRGaWVsZERlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgDIAEoBVIGbnVtYmVyEkEKBWxhYmVsGAQgASgOMisuZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLkxhYmVsUgVsYWJlbBI+CgR0eXBlGAUgASgOMiouZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLlR5cGVSBHR5cGUSGwoJdHlwZV9uYW1lGAYgASgJUgh0eXBlTmFtZRIaCghleHRlbmRlZRgCIAEoCVIIZXh0ZW5kZWUSIwoNZGVmYXVsdF92YWx1ZRgHIAEoCVIMZGVmYXVsdFZhbHVlEh8KC29uZW9mX2luZGV4GAkgASgFUgpvbmVvZkluZGV4EhsKCWpzb25fbmFtZRgKIAEoCVIIanNvbk5hbWUSNwoHb3B0aW9ucxgIIAEoCzIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnNSB29wdGlvbnMSJwoPcHJvdG8zX29wdGlvbmFsGBEgASgIUg5wcm90bzNPcHRpb25hbCK2AgoEVHlwZRIPCgtUWVBFX0RPVUJMRRABEg4KClRZUEVfRkxPQVQQAhIOCgpUWVBFX0lOVDY0EAMSDwoLVFlQRV9VSU5UNjQQBBIOCgpUWVBFX0lOVDMyEAUSEAoMVFlQRV9GSVhFRDY0EAYSEAoMVFlQRV9GSVhFRDMyEAcSDQoJVFlQRV9CT09MEAgSDwoLVFlQRV9TVFJJTkcQCRIOCgpUWVBFX0dST1VQEAoSEAoMVFlQRV9NRVNTQUdFEAsSDgoKVFlQRV9CWVRFUxAMEg8KC1RZUEVfVUlOVDMyEA0SDQoJVFlQRV9FTlVNEA4SEQoNVFlQRV9TRklYRUQzMhAPEhEKDVRZUEVfU0ZJWEVENjQQEBIPCgtUWVBFX1NJTlQzMhAREg8KC1RZUEVfU0lOVDY0EBIiQwoFTGFiZWwSEgoOTEFCRUxfT1BUSU9OQUwQARISCg5MQUJFTF9SRVBFQVRFRBADEhIKDkxBQkVMX1JFUVVJUkVEEAIiYwoUT25lb2ZEZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRI3CgdvcHRpb25zGAIgASgLMh0uZ29vZ2xlLnByb3RvYnVmLk9uZW9mT3B0aW9uc1IHb3B0aW9ucyLjAgoTRW51bURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEj8KBXZhbHVlGAIgAygLMikuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZURlc2NyaXB0b3JQcm90b1IFdmFsdWUSNgoHb3B0aW9ucxgDIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9uc1IHb3B0aW9ucxJdCg5yZXNlcnZlZF9yYW5nZRgEIAMoCzI2Lmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvLkVudW1SZXNlcnZlZFJhbmdlUg1yZXNlcnZlZFJhbmdlEiMKDXJlc2VydmVkX25hbWUYBSADKAlSDHJlc2VydmVkTmFtZRo7ChFFbnVtUmVzZXJ2ZWRSYW5nZRIUCgVzdGFydBgBIAEoBVIFc3RhcnQSEAoDZW5kGAIgASgFUgNlbmQigwEKGEVudW1WYWx1ZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBm51bWJlchgCIAEoBVIGbnVtYmVyEjsKB29wdGlvbnMYAyABKAsyIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9uc1IHb3B0aW9ucyKnAQoWU2VydmljZURlc2NyaXB0b3JQcm90bxISCgRuYW1lGAEgASgJUgRuYW1lEj4KBm1ldGhvZBgCIAMoCzImLmdvb2dsZS5wcm90b2J1Zi5NZXRob2REZXNjcmlwdG9yUHJvdG9SBm1ldGhvZBI5CgdvcHRpb25zGAMgASgLMh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zUgdvcHRpb25zIokCChVNZXRob2REZXNjcmlwdG9yUHJvdG8SEgoEbmFtZRgBIAEoCVIEbmFtZRIdCgppbnB1dF90eXBlGAIgASgJUglpbnB1dFR5cGUSHwoLb3V0cHV0X3R5cGUYAyABKAlSCm91dHB1dFR5cGUSOAoHb3B0aW9ucxgEIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zUgdvcHRpb25zEjAKEGNsaWVudF9zdHJlYW1pbmcYBSABKAg6BWZhbHNlUg9jbGllbnRTdHJlYW1pbmcSMAoQc2VydmVyX3N0cmVhbWluZxgGIAEoCDoFZmFsc2VSD3NlcnZlclN0cmVhbWluZyKtCQoLRmlsZU9wdGlvbnMSIQoMamF2YV9wYWNrYWdlGAEgASgJUgtqYXZhUGFja2FnZRIwChRqYXZhX291dGVyX2NsYXNzbmFtZRgIIAEoCVISamF2YU91dGVyQ2xhc3NuYW1lEjUKE2phdmFfbXVsdGlwbGVfZmlsZXMYCiABKAg6BWZhbHNlUhFqYXZhTXVsdGlwbGVGaWxlcxJECh1qYXZhX2dlbmVyYXRlX2VxdWFsc19hbmRfaGFzaBgUIAEoCEICGAFSGWphdmFHZW5lcmF0ZUVxdWFsc0FuZEhhc2gSOgoWamF2YV9zdHJpbmdfY2hlY2tfdXRmOBgbIAEoCDoFZmFsc2VSE2phdmFTdHJpbmdDaGVja1V0ZjgSUwoMb3B0aW1pemVfZm9yGAkgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zLk9wdGltaXplTW9kZToFU1BFRURSC29wdGltaXplRm9yEh0KCmdvX3BhY2thZ2UYCyABKAlSCWdvUGFja2FnZRI1ChNjY19nZW5lcmljX3NlcnZpY2VzGBAgASgIOgVmYWxzZVIRY2NHZW5lcmljU2VydmljZXMSOQoVamF2YV9nZW5lcmljX3NlcnZpY2VzGBEgASgIOgVmYWxzZVITamF2YUdlbmVyaWNTZXJ2aWNlcxI1ChNweV9nZW5lcmljX3NlcnZpY2VzGBIgASgIOgVmYWxzZVIRcHlHZW5lcmljU2VydmljZXMSJQoKZGVwcmVjYXRlZBgXIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQSLgoQY2NfZW5hYmxlX2FyZW5hcxgfIAEoCDoEdHJ1ZVIOY2NFbmFibGVBcmVuYXMSKgoRb2JqY19jbGFzc19wcmVmaXgYJCABKAlSD29iamNDbGFzc1ByZWZpeBIpChBjc2hhcnBfbmFtZXNwYWNlGCUgASgJUg9jc2hhcnBOYW1lc3BhY2USIQoMc3dpZnRfcHJlZml4GCcgASgJUgtzd2lmdFByZWZpeBIoChBwaHBfY2xhc3NfcHJlZml4GCggASgJUg5waHBDbGFzc1ByZWZpeBIjCg1waHBfbmFtZXNwYWNlGCkgASgJUgxwaHBOYW1lc3BhY2USNAoWcGhwX21ldGFkYXRhX25hbWVzcGFjZRgsIAEoCVIUcGhwTWV0YWRhdGFOYW1lc3BhY2USIQoMcnVieV9wYWNrYWdlGC0gASgJUgtydWJ5UGFja2FnZRI3CghmZWF0dXJlcxgyIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbiI6CgxPcHRpbWl6ZU1vZGUSCQoFU1BFRUQQARINCglDT0RFX1NJWkUQAhIQCgxMSVRFX1JVTlRJTUUQAyoJCOgHEICAgIACSgQIKhArSgQIJhAnUhRwaHBfZ2VuZXJpY19zZXJ2aWNlcyL0AwoOTWVzc2FnZU9wdGlvbnMSPAoXbWVzc2FnZV9zZXRfd2lyZV9mb3JtYXQYASABKAg6BWZhbHNlUhRtZXNzYWdlU2V0V2lyZUZvcm1hdBJMCh9ub19zdGFuZGFyZF9kZXNjcmlwdG9yX2FjY2Vzc29yGAIgASgIOgVmYWxzZVIcbm9TdGFuZGFyZERlc2NyaXB0b3JBY2Nlc3NvchIlCgpkZXByZWNhdGVkGAMgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBIbCgltYXBfZW50cnkYByABKAhSCG1hcEVudHJ5ElYKJmRlcHJlY2F0ZWRfbGVnYWN5X2pzb25fZmllbGRfY29uZmxpY3RzGAsgASgIQgIYAVIiZGVwcmVjYXRlZExlZ2FjeUpzb25GaWVsZENvbmZsaWN0cxI3CghmZWF0dXJlcxgMIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioJCOgHEICAgIACSgQIBBAFSgQIBRAGSgQIBhAHSgQICBAJSgQICRAKIp0NCgxGaWVsZE9wdGlvbnMSQQoFY3R5cGUYASABKA4yIy5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLkNUeXBlOgZTVFJJTkdSBWN0eXBlEhYKBnBhY2tlZBgCIAEoCFIGcGFja2VkEkcKBmpzdHlwZRgGIAEoDjIkLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuSlNUeXBlOglKU19OT1JNQUxSBmpzdHlwZRIZCgRsYXp5GAUgASgIOgVmYWxzZVIEbGF6eRIuCg91bnZlcmlmaWVkX2xhenkYDyABKAg6BWZhbHNlUg51bnZlcmlmaWVkTGF6eRIlCgpkZXByZWNhdGVkGAMgASgIOgVmYWxzZVIKZGVwcmVjYXRlZBIZCgR3ZWFrGAogASgIOgVmYWxzZVIEd2VhaxIoCgxkZWJ1Z19yZWRhY3QYECABKAg6BWZhbHNlUgtkZWJ1Z1JlZGFjdBJLCglyZXRlbnRpb24YESABKA4yLS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLk9wdGlvblJldGVudGlvblIJcmV0ZW50aW9uEkgKB3RhcmdldHMYEyADKA4yLi5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLk9wdGlvblRhcmdldFR5cGVSB3RhcmdldHMSVwoQZWRpdGlvbl9kZWZhdWx0cxgUIAMoCzIsLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuRWRpdGlvbkRlZmF1bHRSD2VkaXRpb25EZWZhdWx0cxI3CghmZWF0dXJlcxgVIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJVCg9mZWF0dXJlX3N1cHBvcnQYFiABKAsyLC5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zLkZlYXR1cmVTdXBwb3J0Ug5mZWF0dXJlU3VwcG9ydBJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbhpaCg5FZGl0aW9uRGVmYXVsdBIyCgdlZGl0aW9uGAMgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SB2VkaXRpb24SFAoFdmFsdWUYAiABKAlSBXZhbHVlGpYCCg5GZWF0dXJlU3VwcG9ydBJHChJlZGl0aW9uX2ludHJvZHVjZWQYASABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIRZWRpdGlvbkludHJvZHVjZWQSRwoSZWRpdGlvbl9kZXByZWNhdGVkGAIgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SEWVkaXRpb25EZXByZWNhdGVkEi8KE2RlcHJlY2F0aW9uX3dhcm5pbmcYAyABKAlSEmRlcHJlY2F0aW9uV2FybmluZxJBCg9lZGl0aW9uX3JlbW92ZWQYBCABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIOZWRpdGlvblJlbW92ZWQiLwoFQ1R5cGUSCgoGU1RSSU5HEAASCAoEQ09SRBABEhAKDFNUUklOR19QSUVDRRACIjUKBkpTVHlwZRINCglKU19OT1JNQUwQABINCglKU19TVFJJTkcQARINCglKU19OVU1CRVIQAiJVCg9PcHRpb25SZXRlbnRpb24SFQoRUkVURU5USU9OX1VOS05PV04QABIVChFSRVRFTlRJT05fUlVOVElNRRABEhQKEFJFVEVOVElPTl9TT1VSQ0UQAiKMAgoQT3B0aW9uVGFyZ2V0VHlwZRIXChNUQVJHRVRfVFlQRV9VTktOT1dOEAASFAoQVEFSR0VUX1RZUEVfRklMRRABEh8KG1RBUkdFVF9UWVBFX0VYVEVOU0lPTl9SQU5HRRACEhcKE1RBUkdFVF9UWVBFX01FU1NBR0UQAxIVChFUQVJHRVRfVFlQRV9GSUVMRBAEEhUKEVRBUkdFVF9UWVBFX09ORU9GEAUSFAoQVEFSR0VUX1RZUEVfRU5VTRAGEhoKFlRBUkdFVF9UWVBFX0VOVU1fRU5UUlkQBxIXChNUQVJHRVRfVFlQRV9TRVJWSUNFEAgSFgoSVEFSR0VUX1RZUEVfTUVUSE9EEAkqCQjoBxCAgICAAkoECAQQBUoECBIQEyKsAQoMT25lb2ZPcHRpb25zEjcKCGZlYXR1cmVzGAEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi0QIKC0VudW1PcHRpb25zEh8KC2FsbG93X2FsaWFzGAIgASgIUgphbGxvd0FsaWFzEiUKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlUgpkZXByZWNhdGVkElYKJmRlcHJlY2F0ZWRfbGVnYWN5X2pzb25fZmllbGRfY29uZmxpY3RzGAYgASgIQgIYAVIiZGVwcmVjYXRlZExlZ2FjeUpzb25GaWVsZENvbmZsaWN0cxI3CghmZWF0dXJlcxgHIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UghmZWF0dXJlcxJYChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvblITdW5pbnRlcnByZXRlZE9wdGlvbioJCOgHEICAgIACSgQIBRAGItgCChBFbnVtVmFsdWVPcHRpb25zEiUKCmRlcHJlY2F0ZWQYASABKAg6BWZhbHNlUgpkZXByZWNhdGVkEjcKCGZlYXR1cmVzGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEigKDGRlYnVnX3JlZGFjdBgDIAEoCDoFZmFsc2VSC2RlYnVnUmVkYWN0ElUKD2ZlYXR1cmVfc3VwcG9ydBgEIAEoCzIsLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuRmVhdHVyZVN1cHBvcnRSDmZlYXR1cmVTdXBwb3J0ElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi1QEKDlNlcnZpY2VPcHRpb25zEjcKCGZlYXR1cmVzGCIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzEiUKCmRlcHJlY2F0ZWQYISABKAg6BWZhbHNlUgpkZXByZWNhdGVkElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIimQMKDU1ldGhvZE9wdGlvbnMSJQoKZGVwcmVjYXRlZBghIAEoCDoFZmFsc2VSCmRlcHJlY2F0ZWQScQoRaWRlbXBvdGVuY3lfbGV2ZWwYIiABKA4yLy5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucy5JZGVtcG90ZW5jeUxldmVsOhNJREVNUE9URU5DWV9VTktOT1dOUhBpZGVtcG90ZW5jeUxldmVsEjcKCGZlYXR1cmVzGCMgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSCGZlYXR1cmVzElgKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uUhN1bmludGVycHJldGVkT3B0aW9uIlAKEElkZW1wb3RlbmN5TGV2ZWwSFwoTSURFTVBPVEVOQ1lfVU5LTk9XThAAEhMKD05PX1NJREVfRUZGRUNUUxABEg4KCklERU1QT1RFTlQQAioJCOgHEICAgIACIpoDChNVbmludGVycHJldGVkT3B0aW9uEkEKBG5hbWUYAiADKAsyLS5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvbi5OYW1lUGFydFIEbmFtZRIpChBpZGVudGlmaWVyX3ZhbHVlGAMgASgJUg9pZGVudGlmaWVyVmFsdWUSLAoScG9zaXRpdmVfaW50X3ZhbHVlGAQgASgEUhBwb3NpdGl2ZUludFZhbHVlEiwKEm5lZ2F0aXZlX2ludF92YWx1ZRgFIAEoA1IQbmVnYXRpdmVJbnRWYWx1ZRIhCgxkb3VibGVfdmFsdWUYBiABKAFSC2RvdWJsZVZhbHVlEiEKDHN0cmluZ192YWx1ZRgHIAEoDFILc3RyaW5nVmFsdWUSJwoPYWdncmVnYXRlX3ZhbHVlGAggASgJUg5hZ2dyZWdhdGVWYWx1ZRpKCghOYW1lUGFydBIbCgluYW1lX3BhcnQYASACKAlSCG5hbWVQYXJ0EiEKDGlzX2V4dGVuc2lvbhgCIAIoCFILaXNFeHRlbnNpb24irgwKCkZlYXR1cmVTZXQSkQEKDmZpZWxkX3ByZXNlbmNlGAEgASgOMikuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuRmllbGRQcmVzZW5jZUI/iAEBmAEEmAEBogENEghFWFBMSUNJVBiEB6IBDRIISU1QTElDSVQY5weiAQ0SCEVYUExJQ0lUGOgHsgEDCOgHUg1maWVsZFByZXNlbmNlEmwKCWVudW1fdHlwZRgCIAEoDjIkLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LkVudW1UeXBlQimIAQGYAQaYAQGiAQsSBkNMT1NFRBiEB6IBCRIET1BFThjnB7IBAwjoB1IIZW51bVR5cGUSmAEKF3JlcGVhdGVkX2ZpZWxkX2VuY29kaW5nGAMgASgOMjEuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuUmVwZWF0ZWRGaWVsZEVuY29kaW5nQi2IAQGYAQSYAQGiAQ0SCEVYUEFOREVEGIQHogELEgZQQUNLRUQY5weyAQMI6AdSFXJlcGVhdGVkRmllbGRFbmNvZGluZxJ+Cg91dGY4X3ZhbGlkYXRpb24YBCABKA4yKi5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5VdGY4VmFsaWRhdGlvbkIpiAEBmAEEmAEBogEJEgROT05FGIQHogELEgZWRVJJRlkY5weyAQMI6AdSDnV0ZjhWYWxpZGF0aW9uEn4KEG1lc3NhZ2VfZW5jb2RpbmcYBSABKA4yKy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldC5NZXNzYWdlRW5jb2RpbmdCJogBAZgBBJgBAaIBFBIPTEVOR1RIX1BSRUZJWEVEGIQHsgEDCOgHUg9tZXNzYWdlRW5jb2RpbmcSggEKC2pzb25fZm9ybWF0GAYgASgOMiYuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQuSnNvbkZvcm1hdEI5iAEBmAEDmAEGmAEBogEXEhJMRUdBQ1lfQkVTVF9FRkZPUlQYhAeiAQoSBUFMTE9XGOcHsgEDCOgHUgpqc29uRm9ybWF0EqsBChRlbmZvcmNlX25hbWluZ19zdHlsZRgHIAEoDjIuLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0LkVuZm9yY2VOYW1pbmdTdHlsZUJJiAECmAEBmAECmAEDmAEEmAEFmAEGmAEHmAEImAEJogEREgxTVFlMRV9MRUdBQ1kYhAeiAQ4SCVNUWUxFMjAyNBjpB7IBAwjpB1ISZW5mb3JjZU5hbWluZ1N0eWxlIlwKDUZpZWxkUHJlc2VuY2USGgoWRklFTERfUFJFU0VOQ0VfVU5LTk9XThAAEgwKCEVYUExJQ0lUEAESDAoISU1QTElDSVQQAhITCg9MRUdBQ1lfUkVRVUlSRUQQAyI3CghFbnVtVHlwZRIVChFFTlVNX1RZUEVfVU5LTk9XThAAEggKBE9QRU4QARIKCgZDTE9TRUQQAiJWChVSZXBlYXRlZEZpZWxkRW5jb2RpbmcSIwofUkVQRUFURURfRklFTERfRU5DT0RJTkdfVU5LTk9XThAAEgoKBlBBQ0tFRBABEgwKCEVYUEFOREVEEAIiSQoOVXRmOFZhbGlkYXRpb24SGwoXVVRGOF9WQUxJREFUSU9OX1VOS05PV04QABIKCgZWRVJJRlkQAhIICgROT05FEAMiBAgBEAEiUwoPTWVzc2FnZUVuY29kaW5nEhwKGE1FU1NBR0VfRU5DT0RJTkdfVU5LTk9XThAAEhMKD0xFTkdUSF9QUkVGSVhFRBABEg0KCURFTElNSVRFRBACIkgKCkpzb25Gb3JtYXQSFwoTSlNPTl9GT1JNQVRfVU5LTk9XThAAEgkKBUFMTE9XEAESFgoSTEVHQUNZX0JFU1RfRUZGT1JUEAIiVwoSRW5mb3JjZU5hbWluZ1N0eWxlEiAKHEVORk9SQ0VfTkFNSU5HX1NUWUxFX1VOS05PV04QABINCglTVFlMRTIwMjQQARIQCgxTVFlMRV9MRUdBQ1kQAioGCOgHEItOKgYIi04QkE4qBgiQThCRTkoGCOcHEOgHIu8DChJGZWF0dXJlU2V0RGVmYXVsdHMSWAoIZGVmYXVsdHMYASADKAsyPC5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldERlZmF1bHRzLkZlYXR1cmVTZXRFZGl0aW9uRGVmYXVsdFIIZGVmYXVsdHMSQQoPbWluaW11bV9lZGl0aW9uGAQgASgOMhguZ29vZ2xlLnByb3RvYnVmLkVkaXRpb25SDm1pbmltdW1FZGl0aW9uEkEKD21heGltdW1fZWRpdGlvbhgFIAEoDjIYLmdvb2dsZS5wcm90b2J1Zi5FZGl0aW9uUg5tYXhpbXVtRWRpdGlvbhr4AQoYRmVhdHVyZVNldEVkaXRpb25EZWZhdWx0EjIKB2VkaXRpb24YAyABKA4yGC5nb29nbGUucHJvdG9idWYuRWRpdGlvblIHZWRpdGlvbhJOChRvdmVycmlkYWJsZV9mZWF0dXJlcxgEIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0UhNvdmVycmlkYWJsZUZlYXR1cmVzEkIKDmZpeGVkX2ZlYXR1cmVzGAUgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXRSDWZpeGVkRmVhdHVyZXNKBAgBEAJKBAgCEANSCGZlYXR1cmVzIrUCCg5Tb3VyY2VDb2RlSW5mbxJECghsb2NhdGlvbhgBIAMoCzIoLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb2RlSW5mby5Mb2NhdGlvblIIbG9jYXRpb24azgEKCExvY2F0aW9uEhYKBHBhdGgYASADKAVCAhABUgRwYXRoEhYKBHNwYW4YAiADKAVCAhABUgRzcGFuEikKEGxlYWRpbmdfY29tbWVudHMYAyABKAlSD2xlYWRpbmdDb21tZW50cxIrChF0cmFpbGluZ19jb21tZW50cxgEIAEoCVIQdHJhaWxpbmdDb21tZW50cxI6ChlsZWFkaW5nX2RldGFjaGVkX2NvbW1lbnRzGAYgAygJUhdsZWFkaW5nRGV0YWNoZWRDb21tZW50cyoMCIDsyv8BEIHsyv8BItACChFHZW5lcmF0ZWRDb2RlSW5mbxJNCgphbm5vdGF0aW9uGAEgAygLMi0uZ29vZ2xlLnByb3RvYnVmLkdlbmVyYXRlZENvZGVJbmZvLkFubm90YXRpb25SCmFubm90YXRpb24a6wEKCkFubm90YXRpb24SFgoEcGF0aBgBIAMoBUICEAFSBHBhdGgSHwoLc291cmNlX2ZpbGUYAiABKAlSCnNvdXJjZUZpbGUSFAoFYmVnaW4YAyABKAVSBWJlZ2luEhAKA2VuZBgEIAEoBVIDZW5kElIKCHNlbWFudGljGAUgASgOMjYuZ29vZ2xlLnByb3RvYnVmLkdlbmVyYXRlZENvZGVJbmZvLkFubm90YXRpb24uU2VtYW50aWNSCHNlbWFudGljIigKCFNlbWFudGljEggKBE5PTkUQABIHCgNTRVQQARIJCgVBTElBUxACKqcCCgdFZGl0aW9uEhMKD0VESVRJT05fVU5LTk9XThAAEhMKDkVESVRJT05fTEVHQUNZEIQHEhMKDkVESVRJT05fUFJPVE8yEOYHEhMKDkVESVRJT05fUFJPVE8zEOcHEhEKDEVESVRJT05fMjAyMxDoBxIRCgxFRElUSU9OXzIwMjQQ6QcSFwoTRURJVElPTl8xX1RFU1RfT05MWRABEhcKE0VESVRJT05fMl9URVNUX09OTFkQAhIdChdFRElUSU9OXzk5OTk3X1RFU1RfT05MWRCdjQYSHQoXRURJVElPTl85OTk5OF9URVNUX09OTFkQno0GEh0KF0VESVRJT05fOTk5OTlfVEVTVF9PTkxZEJ+NBhITCgtFRElUSU9OX01BWBD/////B0J+ChNjb20uZ29vZ2xlLnByb3RvYnVmQhBEZXNjcmlwdG9yUHJvdG9zSAFaLWdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2Rlc2NyaXB0b3JwYvgBAaICA0dQQqoCGkdvb2dsZS5Qcm90b2J1Zi5SZWZsZWN0aW9uSp/XAwoHEgUmANQKAQqqDwoBDBIDJgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoy2wIgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogVGhlIG1lc3NhZ2VzIGluIHRoaXMgZmlsZSBkZXNjcmliZSB0aGUgZGVmaW5pdGlvbnMgZm91bmQgaW4gLnByb3RvIGZpbGVzLgogQSB2YWxpZCAucHJvdG8gZmlsZSBjYW4gYmUgdHJhbnNsYXRlZCBkaXJlY3RseSB0byBhIEZpbGVEZXNjcmlwdG9yUHJvdG8KIHdpdGhvdXQgYW55IG90aGVyIGluZm9ybWF0aW9uIChlLmcuIHdpdGhvdXQgcmVhZGluZyBpdHMgaW1wb3J0cykuCgoICgECEgMoABgKCAoBCBIDKgBECgkKAggLEgMqAEQKCAoBCBIDKwAsCgkKAggBEgMrACwKCAoBCBIDLAAxCgkKAggIEgMsADEKCAoBCBIDLQA3CgkKAgglEgMtADcKCAoBCBIDLgAhCgkKAggkEgMuACEKCAoBCBIDLwAfCgkKAggfEgMvAB8KCAoBCBIDMwAcCn8KAggJEgMzABwadCBkZXNj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IG9uIHRoaXMgZmllbGQsIHRoYXQgb3B0aW9uJ3MgdmFsdWUKIHdpbGwgYmUgdXNlZC4gT3RoZXJ3aXNlLCBpdCdzIGRlZHVjZWQgZnJvbSB0aGUgZmllbGQncyBuYW1lIGJ5IGNvbnZlcnRpbmcKIGl0IHRvIGNhbWVsQ2FzZS4KCg0KBQQEAggEEgS5AgIKCg0KBQQEAggFEgS5AgsRCg0KBQQEAggBEgS5AhIbCg0KBQQEAggDEgS5Ah4gCgwKBAQEAgkSBLsCAiQKDQoFBAQCCQQSBLsCAgoKDQoFBAQCCQYSBLsCCxcKDQoFBAQCCQESBLsCGB8KDQoFBAQCCQMSBLsCIiMKsAkKBAQEAgoSBNICAiUaoQkgSWYgdHJ1ZSwgdGhpcyBpcyBhIHByb3RvMyAib3B0aW9uYWwiLiBXaGVuIGEgcHJvdG8zIGZpZWxkIGlzIG9wdGlvbmFsLCBpdAogdHJhY2tzIHByZXNlbmNlIHJlZ2FyZGxlc3Mgb2YgZmllbGQgdHlwZS4KCiBXaGVuIHByb3RvM19vcHRpb25hbCBpcyB0cnVlLCB0aGlzIGZpZWxkIG11c3QgYmVsb25nIHRvIGEgb25lb2YgdG8gc2lnbmFsCiB0byBvbGQgcHJvdG8zIGNsaWVudHMgdGhhdCBwcmVzZW5jZSBpcyB0cmFja2VkIGZvciB0aGlzIGZpZWxkLiBUaGlzIG9uZW9mCiBpcyBrbm93biBhcyBhICJzeW50aGV0aWMiIG9uZW9mLCBhbmQgdGhpcyBmaWVsZCBtdXN0IGJlIGl0cyBzb2xlIG1lbWJlcgogKGVhY2ggcHJvdG8zIG9wdGlvbmFsIGZpZWxkIGdldHMgaXRzIG93biBzeW50aGV0aWMgb25lb2YpLiBTeW50aGV0aWMgb25lb2ZzCiBleGlzdCBpbiB0aGUgZGVzY3JpcHRvciBvbmx5LCBhbmQgZG8gbm90IGdlbmVyYXRlIGFueSBBUEkuIFN5bnRoZXRpYyBvbmVvZnMKIG11c3QgYmUgb3JkZXJlZCBhZnRlciBhbGwgInJlYWwiIG9uZW9mcy4KCiBGb3IgbWVzc2FnZSBmaWVsZHMsIHByb3RvM19vcHRpb25hbCBkb2Vzbid0IGNyZWF0ZSBhbnkgc2VtYW50aWMgY2hhbmdlLAogc2luY2Ug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ZSBjb2RlIHRvIGJlIGdlbmVyYXRlZCBzbGlnaHRseSBkaWZmZXJlbnRseQogb3IgbWF5IGNvbnRhaW4gaGludHMgZm9yIGNvZGUgdGhhdCBtYW5pcHVsYXRlcyBwcm90b2NvbCBtZXNzYWdlcy4KCiBDbGllbnRzIG1heSBkZWZpbmUgY3VzdG9tIG9wdGlvbnMgYXMgZXh0ZW5zaW9ucyBvZiB0aGUgKk9wdGlvbnMgbWVzc2FnZXMuCiBUaGVzZSBleHRlbnNpb25zIG1heSBub3QgeWV0IGJlIGtub3duIGF0IHBhcnNpbmcgdGltZSwgc28gdGhlIHBhcnNlciBjYW5ub3QKIHN0b3JlIHRoZSB2YWx1ZXMgaW4gdGhlbS4gIEluc3RlYWQgaXQgc3RvcmVzIHRoZW0gaW4gYSBmaWVsZCBpbiB0aGUgKk9wdGlvbnMKIG1lc3NhZ2UgY2FsbGVkIHVuaW50ZXJwcmV0ZWRfb3B0aW9uLiBUaGlzIGZpZWxkIG11c3QgaGF2ZSB0aGUgc2FtZSBuYW1lCiBhY3Jvc3MgYWxsICpPcHRpb25zIG1lc3NhZ2VzLiBXZSB0aGVuIHVzZSB0aGlzIGZpZWxkIHRvIHBvcHVsYXRlIHRoZQogZXh0ZW5zaW9ucyB3aGVuIHdlIGJ1aWxkIGEgZGVzY3JpcHRvciwgYXQgd2hpY2ggcG9pbnQgYWxsIHByb3RvcyBoYXZlIGJlZW4KIHBhcnNlZCBhbmQgc28gYWxsIGV4dGVuc2lvbnMgYXJlIGtub3duLgoKIEV4dGVuc2lvbiBudW1iZXJzIGZvciBjdXN0b20gb3B0aW9ucyBtYXkgYmUgY2hvc2VuIGFzIGZvbGxvd3M6CiAqIEZvciBvcHRpb25zIHdoaWNoIHdpbGwgb25seSBiZSB1c2VkIHdpdGhpbiBhIHNpbmdsZSBhcHBsaWNhdGlvbiBvcgogICBvcmdhbml6YXRpb24sIG9yIGZvciBleHBlcmltZW50YWwgb3B0aW9ucywgdXNlIGZpZWxkIG51bWJlcnMgNTAwMDAKICAgdGhyb3VnaCA5OTk5OS4gIEl0IGlzIHVwIHRvIHlvdSB0byBlbnN1cmUgdGhhdCB5b3UgZG8gbm90IHVzZSB0aGUKICAgc2FtZSBudW1iZXIgZm9yIG11bHRpcGxlIG9wdGlvbnMuCiAqIEZvciBvcHRpb25zIHdoaWNoIHdpbGwgYmUgcHVibGlzaGVkIGFuZCB1c2VkIHB1YmxpY2x5IGJ5IG11bHRpcGxlCiAgIGluZGVwZW5kZW50IGVudGl0aWVzLCBlLW1haWwgcHJvdG9idWYtZ2xvYmFsLWV4dGVuc2lvbi1yZWdpc3RyeUBnb29nbGUuY29tCiAgIHRvIHJlc2VydmUgZXh0ZW5zaW9uIG51bWJlcnMuIFNpbXBseSBwcm92aWRlIHlvdXIgcHJvamVjdCBuYW1lIChlLmcuCiAgIE9iamVjdGl2ZS1DIHBsdWdpbikgYW5kIHlvdXIgcHJvamVjdCB3ZWJzaXRlIChpZiBhdmFpbGFibGUpIC0tIHRoZXJlJ3Mgbm8KICAgbmVlZCB0byBleHBsYWluIGhvdyB5b3UgaW50ZW5kIHRvIHVzZSB0aGVtLiBVc3VhbGx5IHlvdSBvbmx5IG5lZWQgb25lCiAgIGV4dGVuc2lvbiBudW1iZXIuIFlvdSBjYW4gZGVjbGFyZSBtdWx0aXBsZSBvcHRpb25zIHdpdGggb25seSBvbmUgZXh0ZW5zaW9uCiAgIG51bWJlciBieSBwdXR0aW5nIHRoZW0gaW4gYSBzdWItbWVzc2FnZS4gU2VlIHRoZSBDdXN0b20gT3B0aW9ucyBzZWN0aW9uIG9mCiAgIHRoZSBkb2NzIGZvciBleGFtcGxlczoKICAgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy9kb2NzL3Byb3RvI29wdGlvbnMKICAgSWYgdGhpcyB0dXJucyBvdXQgdG8gYmUgcG9wdWxhciwgYSB3ZWIgc2VydmljZSB3aWxsIGJlIHNldCB1cAogICB0byBhdXRvbWF0aWNhbGx5IGFzc2lnbiBvcHRpb24gbnVtYmVycy4KCgsKAwQKARIEuQMIEwr0AQoEBAoCABIEvwMCIxrlASBTZXRzIHRoZSBKYXZhIHBhY2thZ2Ugd2hlcmUgY2xhc3NlcyBnZW5lcmF0ZWQgZnJvbSB0aGlzIC5wcm90byB3aWxsIGJlCiBwbGFjZWQuICBCeSBkZWZhdWx0LCB0aGUgcHJvdG8gcGFja2FnZSBpcyB1c2VkLCBidXQgdGhpcyBpcyBvZnRlbgogaW5hcHByb3ByaWF0ZSBiZWNhdXNlIHByb3RvIHBhY2thZ2VzIGRvIG5vdCBub3JtYWxseSBzdGFydCB3aXRoIGJhY2t3YXJkcwogZG9tYWluIG5hbWVzLgoKDQoFBAoCAAQSBL8DAgoKDQoFBAoCAAUSBL8DCxEKDQoFBAoCAAESBL8DEh4KDQoFBAoCAAMSBL8DISIK8QIKBAQKAgESBMYDAisa4gIgQ29udHJvbHMgdGhlIG5hbWUgb2YgdGhlIHdyYXBwZXIgSmF2YSBjbGFzcyBnZW5lcmF0ZWQgZm9yIHRoZSAucHJvdG8gZmlsZS4KIFRoYXQgY2xhc3Mgd2lsbCBhbHdheXMgY29udGFpbiB0aGUgLnByb3RvIGZpbGUncyBnZXREZXNjcmlwdG9yKCkgbWV0aG9kIGFzCiB3ZWxsIGFzIGFueSB0b3AtbGV2ZWwgZXh0ZW5zaW9ucyBkZWZpbmVkIGluIHRoZSAucHJvdG8gZmlsZS4KIElmIGphdmFfbXVsdGlwbGVfZmlsZXMgaXMgZGlzYWJsZWQsIHRoZW4gYWxsIHRoZSBvdGhlciBjbGFzc2VzIGZyb20gdGhlCiAucHJvdG8gZmlsZSB3aWxsIGJlIG5lc3RlZCBpbnNpZGUgdGhlIHNpbmdsZSB3cmFwcGVyIG91dGVyIGNsYXNzLgoKDQoFBAoCAQQSBMYDAgoKDQoFBAoCAQUSBMYDCxEKDQoFBAoCAQESBMYDEiYKDQoFBAoCAQMSBMYDKSoKpgMKBAQKAgISBM4DAjsalwMgSWYgZW5hYmxlZCwgdGhlbiB0aGUgSmF2YSBjb2RlIGdlbmVyYXRvciB3aWxsIGdlbmVyYXRlIGEgc2VwYXJhdGUgLmphdmEKIGZpbGUgZm9yIGVhY2ggdG9wLWxldmVsIG1lc3NhZ2UsIGVudW0sIGFuZCBzZXJ2aWNlIGRlZmluZWQgaW4gdGhlIC5wcm90bwogZmlsZS4gIFRodXMsIHRoZXNlIHR5cGVzIHdpbGwgKm5vdCogYmUgbmVzdGVkIGluc2lkZSB0aGUgd3JhcHBlciBjbGFzcwogbmFtZWQgYnkgamF2YV9vdXRlcl9jbGFzc25hbWUuICBIb3dldmVyLCB0aGUgd3JhcHBlciBjbGFzcyB3aWxsIHN0aWxs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ZCBmaWVsZHM7IE1lc3NhZ2VTZXRzIG9ubHkKIGhhdmUgZXh0ZW5zaW9ucy4KCiBBbGwgZXh0ZW5zaW9ucyBvZiB5b3VyIHR5cGUgbXVzdCBiZSBzaW5ndWxhciBtZXNzYWdlczsgZS5nLiB0aGV5IGNhbm5vdAogYmUgaW50MzJzLCBlbnVtcywgb3IgcmVwZWF0ZWQgbWVzc2FnZXMuCgogQmVjYXVzZSB0aGlzIGlzIGFuIG9wdGlvbiwgdGhlIGFib3ZlIHR3byByZXN0cmljdGlvbnMgYXJlIG5vdCBlbmZvcmNlZCBieQogdGhlIHByb3RvY29sIGNvbXBpbGVyLgoKDQoFBAsCAAQSBM0EAgoKDQoFBAsCAAUSBM0ECw8KDQoFBAsCAAESBM0EECcKDQoFBAsCAAMSBM0EKisKDQoFBAsCAAgSBM0ELD0KDQoFBAsCAAcSBM0ENzwK6wEKBAQLAgESBNIEAkYa3AEgRGlzYWJsZXMgdGhlIGdlbmVyYXRpb24gb2YgdGhlIHN0YW5kYXJkICJkZXNjcmlwdG9yKCkiIGFjY2Vzc29yLCB3aGljaCBjYW4KIGNvbmZsaWN0IHdpdGggYSBmaWVsZCBvZiB0aGUgc2FtZSBuYW1lLiAgVGhpcyBpcyBtZWFudCB0byBtYWtlIG1pZ3JhdGlvbgogZnJvbSBwcm90bzEgZWFzaWVyOyBuZXcgY29kZSBzaG91bGQgYXZvaWQgZmllbGRzIG5hbWVkICJkZXNjcmlwdG9yIi4KCg0KBQQLAgEEEgTSBAIKCg0KBQQLAgEFEgTSBAsPCg0KBQQLAgEBEgTSBBAvCg0KBQQLAgEDEgTSBDIzCg0KBQQLAgEIEgTSBDRFCg0KBQQLAgEHEgTSBD9ECu4BCgQECwICEgTYBAIxGt8BIElzIHRoaXMgbWVzc2FnZSBkZXByZWNhdGVkPwogRGVwZW5kaW5nIG9uIHRoZSB0YXJnZXQgcGxhdGZvcm0sIHRoaXMgY2FuIGVtaXQgRGVwcmVjYXRlZCBhbm5vdGF0aW9ucwogZm9yIHRoZSBtZXNzYWdlLCBvciBpdCB3aWxsIGJlIGNvbXBsZXRlbHkgaWdub3JlZDsgaW4gdGhlIHZlcnkgbGVhc3QsCiB0aGlzIGlzIGEgZm9ybWFsaXphdGlvbiBmb3IgZGVwcmVjYXRpbmcgbWVzc2FnZXMuCgoNCgUECwICBBIE2AQCCgoNCgUECwICBRIE2AQLDwoNCgUECwICARIE2AQQGgoNCgUECwICAxIE2AQdHgoNCgUECwICCBIE2AQfMAoNCgUECwICBxIE2AQqLwoLCgMECwkSBNoEAhMKDAoEBAsJABIE2gQLDAoNCgUECwkAARIE2gQLDAoNCgUECwkAAhIE2gQLDAoMCgQECwkBEgTaBA4PCg0KBQQLCQEBEgTaBA4PCg0KBQQLCQECEgTaBA4PCgwKBAQLCQISBNoEERIKDQoFBAsJAgESBNoEERIKDQoFBAsJAgISBNoEERIKoAYKBAQLAgMSBPEEAh4akQYgV2hldGhlciB0aGUgbWVzc2FnZSBpcyBhbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBtYXAgZW50cnkgdHlwZSBmb3IgdGhlCiBtYXBzIGZpZWxkLgoKIEZvciBtYXBzIGZpZWxkczoKICAgICBtYXA8S2V5VHlwZSwgVmFsdWVUeXBlPiBtYXBfZmllbGQgPSAxOwogVGhlIHBhcnNlZCBkZXNjcmlwdG9yIGxvb2tzIGxpa2U6CiAgICAgbWVzc2FnZSBNYXBGaWVsZEVudHJ5IHsKICAgICAgICAgb3B0aW9uIG1hcF9lbnRyeSA9IHRydWU7CiAgICAgICAgIG9wdGlvbmFsIEtleVR5cGUga2V5ID0gMTsKICAgICAgICAgb3B0aW9uYWwgVmFsdWVUeXBlIHZhbHVlID0gMjsKICAgICB9CiAgICAgcmVwZWF0ZWQgTWFwRmllbGRFbnRyeSBtYXBfZmllbGQgPSAxOwoKIEltcGxlbWVudGF0aW9ucyBtYXkgY2hvb3NlIG5vdCB0byBnZW5lcmF0ZSB0aGUgbWFwX2VudHJ5PXRydWUgbWVzc2FnZSwgYnV0CiB1c2UgYSBuYXRpdmUgbWFwIGluIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgdG8gaG9sZCB0aGUga2V5cyBhbmQgdmFsdWVzLgogVGhlIHJlZmxlY3Rpb24gQVBJcyBpbiBzdWNoIGltcGxlbWVudGF0aW9ucyBzdGlsbCBuZWVkIHRvIHdvcmsgYXMKIGlmIHRoZSBmaWVsZCBpcyBhIHJlcGVhdGVkIG1lc3NhZ2UgZmllbGQuCgogTk9URTogRG8gbm90IHNldCB0aGUgb3B0aW9uIGluIC5wcm90byBmaWxlcy4gQWx3YXlzIHVzZSB0aGUgbWFwcyBzeW50YXgKIGluc3RlYWQuIFRoZSBvcHRpb24gc2hvdWxkIG9ubHkgYmUgaW1wbGljaXRseSBzZXQgYnkgdGhlIHByb3RvIGNvbXBpbGVyCiBwYXJzZXIuCgoNCgUECwIDBBIE8QQCCgoNCgUECwIDBRIE8QQLDwoNCgUECwIDARIE8QQQGQoNCgUECwIDAxIE8QQcHQokCgMECwkSBPMEAg0iFyBqYXZhbGl0ZV9zZXJpYWxpemFibGUKCgwKBAQLCQMSBPMECwwKDQoFBAsJAwESBPMECwwKDQoFBAsJAwISBPMECwwKHwoDBAsJEgT0BAINIhIgamF2YW5hbm9fYXNfbGl0ZQoKDAoEBAsJBBIE9AQLDAoNCgUECwkEARIE9AQLDAoNCgUECwkEAhIE9AQLDArdAwoEBAsCBBIEgAUCUBrOAyBFbmFibGUgdGhlIGxlZ2FjeSBoYW5kbGluZyBvZiBKU09OIGZpZWxkIG5hbWUgY29uZmxpY3RzLiAgVGhpcyBsb3dlcmNhc2VzCiBhbmQgc3RyaXBzIHVuZGVyc2NvcmVkIGZyb20gdGhlIGZpZWxkcyBiZWZvcmUgY29tcGFyaXNvbiBpbiBwcm90bzMgb25seS4KIFRoZSBuZXcgYmVoYXZpb3IgdGFrZXMgYGpzb25fbmFtZWAgaW50byBhY2NvdW50IGFuZCBhcHBsaWVzIHRvIHByb3RvMiBhcwogd2VsbC4KCiBUaGlzIHNob3VsZCBvbmx5IGJlIHVzZWQgYXMgYSB0ZW1wb3JhcnkgbWVhc3VyZSBhZ2FpbnN0IGJyb2tlbiBidWlsZHMgZHVlCiB0byB0aGUgY2hhbmdlIGluIGJlaGF2aW9yIGZvciBKU09OIGZpZWxkIG5hbWUgY29uZmxpY3RzLgoKIFRPRE8gVGhpcyBpcyBsZWdhY3kgYmVoYXZpb3Igd2UgcGxhbiB0byByZW1vdmUgb25jZSBkb3duc3RyZWFtCiB0ZWFtcyBoYXZlIGhhZCB0aW1lIHRvIG1pZ3JhdGUuCgoNCgUECwIEBBIEgAUCCgoNCgUECwIEBRIEgAULDwoNCgUECwIEARIEgAUQ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pAUEEAoPCgcEDAQAAgICEgSkBRMUCtMDCgQEDAIBEgStBQIbGsQDIFRoZSBwYWNrZWQgb3B0aW9uIGNhbiBiZSBlbmFibGVkIGZvciByZXBlYXRlZCBwcmltaXRpdmUgZmllbGRzIHRvIGVuYWJsZQogYSBtb3JlIGVmZmljaWVudCByZXByZXNlbnRhdGlvbiBvbiB0aGUgd2lyZS4gUmF0aGVyIHRoYW4gcmVwZWF0ZWRseQogd3JpdGluZyB0aGUgdGFnIGFuZCB0eXBlIGZvciBlYWNoIGVsZW1lbnQsIHRoZSBlbnRpcmUgYXJyYXkgaXMgZW5jb2RlZCBhcwogYSBzaW5nbGUgbGVuZ3RoLWRlbGltaXRlZCBibG9iLiBJbiBwcm90bzMsIG9ubHkgZXhwbGljaXQgc2V0dGluZyBpdCB0bwogZmFsc2Ugd2lsbCBhdm9pZCB1c2luZyBwYWNrZWQgZW5jb2RpbmcuICBUaGlzIG9wdGlvbiBpcyBwcm9oaWJpdGVkIGluCiBFZGl0aW9ucywgYnV0IHRoZSBgcmVwZWF0ZWRfZmllbGRfZW5jb2RpbmdgIGZlYXR1cmUgY2FuIGJlIHVzZWQgdG8gY29udHJvbAogdGhlIGJlaGF2aW9yLgoKDQoFBAwCAQQSBK0FAgoKDQoFBAwCAQUSBK0FCw8KDQoFBAwCAQESBK0FEBYKDQoFBAwCAQMSBK0FGRoKmgUKBAQMAgISBLoFAjMaiwUgVGhlIGpzdHlwZSBvcHRpb24gZGV0ZXJtaW5lcyB0aGUgSmF2YVNjcmlwdCB0eXBlIHVzZWQgZm9yIHZhbHVlcyBvZiB0aGUKIGZpZWxkLiAgVGhlIG9wdGlvbiBpcyBwZXJtaXR0ZWQgb25seSBmb3IgNjQgYml0IGludGVncmFsIGFuZCBmaXhlZCB0eXBlcwogKGludDY0LCB1aW50NjQsIHNpbnQ2NCwgZml4ZWQ2NCwgc2ZpeGVkNjQpLiAgQSBmaWVsZCB3aXRoIGpzdHlwZSBKU19TVFJJTkcKIGlzIHJlcHJlc2VudGVkIGFzIEphdmFTY3JpcHQgc3RyaW5nLCB3aGljaCBhdm9pZHMgbG9zcyBvZiBwcmVjaXNpb24gdGhhdAogY2FuIGhhcHBlbiB3aGVuIGEgbGFyZ2UgdmFsdWUgaXMgY29udmVydGVkIHRvIGEgZmxvYXRpbmcgcG9pbnQgSmF2YVNjcmlwdC4KIFNwZWNpZnlpbmcgSlNfTlVNQkVSIGZvciB0aGUganN0eXBlIGNhdXNlcyB0aGUgZ2VuZXJhdGVkIEphdmFTY3JpcHQgY29kZSB0bwogdXNlIHRoZSBKYXZhU2NyaXB0ICJudW1iZXIiIHR5cGUuICBUaGUgYmVoYXZpb3Igb2YgdGhlIGRlZmF1bHQgb3B0aW9uCiBKU19OT1JNQUwgaXMgaW1wbGVtZW50YXRpb24gZGVwZW5kZW50LgoKIFRoaXMgb3B0aW9uIGlzIGFuIGVudW0gdG8gcGVybWl0IGFkZGl0aW9uYWwgdHlwZXMgdG8gYmUgYWRkZWQsIGUuZy4KIGdvb2cubWF0aC5JbnRlZ2VyLgoKDQoFBAwCAgQSBLoFAgoKDQoFBAwCAgYSBLoFCxEKDQoFBAwCAgESBLoFEhgKDQoFBAwCAgMSBLoFGxwKDQoFBAwCAggSBLoFHTIKDQoFBAwCAgcSBLoFKDEKDgoEBAwEARIGuwUCxAUDCg0KBQQMBAEBEgS7BQcNCicKBgQMBAECABIEvQUEEhoXIFVzZSB0aGUgZGVmYXVsdCB0eXBlLgoKDwoHBAwEAQIAARIEvQUEDQoPCgcEDAQBAgACEgS9BRARCikKBgQMBAECARIEwAUEEhoZIFVzZSBKYXZhU2NyaXB0IHN0cmluZ3MuCgoPCgcEDAQBAgEBEgTABQQNCg8KBwQMBAECAQISBMAFEBEKKQoGBAwEAQICEgTDBQQSGhkgVXNlIEphdmFTY3JpcHQgbnVtYmVycy4KCg8KBwQMBAECAgESBMMFBA0KDwoHBAwEAQICAhIEwwUQEQqZCgoEBAwCAxIE3AUCKxqKCiBTaG91bGQgdGhpcyBmaWVsZCBiZSBwYXJzZWQgbGF6aWx5PyAgTGF6eSBhcHBsaWVzIG9ubHkgdG8gbWVzc2FnZS10eXBlCiBmaWVsZHMuICBJdCBtZWFucyB0aGF0IHdoZW4gdGhlIG91dGVyIG1lc3NhZ2UgaXMgaW5pdGlhbGx5IHBhcnNlZCwgdGhlCiBpbm5lciBtZXNzYWdlJ3MgY29udGVudHMgd2lsbCBub3QgYmUgcGFyc2VkIGJ1dCBpbnN0ZWFkIHN0b3JlZCBpbiBlbmNvZGVkCiBmb3JtLiAgVGhlIGlubmVyIG1lc3NhZ2Ugd2lsbCBhY3R1YWxseSBiZSBwYXJzZWQgd2hlbiBpdCBpcyBmaXJzdCBhY2Nlc3NlZC4KCiBUaGlzIGlzIG9ubHkgYSBoaW50LiAgSW1wbGVtZW50YXRpb25zIGFyZSBmcmVlIHRvIGNob29zZSB3aGV0aGVyIHRvIHVzZQogZWFnZXIgb3IgbGF6eSBwYXJzaW5nIHJlZ2FyZGxlc3Mgb2YgdGhlIHZhbHVlIG9mIHRoaXMgb3B0aW9uLiAgSG93ZXZlciwKIHNldHRpbmcgdGhpcyBvcHRpb24gdHJ1ZSBzdWdnZXN0cyB0aGF0IHRoZSBwcm90b2NvbCBhdXRob3IgYmVsaWV2ZXMgdGhhdAogdXNpbmcgbGF6eSBwYXJzaW5nIG9uIHRoaXMgZmllbGQgaXMgd29ydGggdGhlIGFkZGl0aW9uYWwgYm9va2tlZXBpbmcKIG92ZXJoZWFkIHR5cGljYWxseSBuZWVkZWQgdG8gaW1wbGVtZW50IGl0LgoKIFRoaXMgb3B0aW9uIGRvZXMgbm90IGFmZmVjdCB0aGUgcHVibGljIGludGVyZmFjZSBvZiBhbnkgZ2VuZXJhdGVkIGNvZGU7CiBhbGwgbWV0aG9kIHNpZ25hdHVyZXMgcmVtYWluIHRoZSBzYW1lLiAgRnVydGhlcm1vcmUsIHRocmVhZC1zYWZldHkgb2YgdGhlCiBpbnRlcmZhY2UgaXMgbm90IGFmZmVjdGVkIGJ5IHRoaXMgb3B0aW9uOyBjb25zdCBtZXRob2RzIHJlbWFpbiBzYWZlIHRvCiBjYWxsIGZyb20gbXVsdGlwbGUgdGhyZWFkcyBjb25jdXJyZW50bHksIHdoaWxlIG5vbi1jb25zdCBtZXRob2RzIGNvbnRpbnVlCiB0byByZXF1aXJlIGV4Y2x1c2l2ZSBhY2Nlc3MuCgogTm90ZSB0aGF0IGxhenkgbWVzc2FnZSBmaWVsZHMgYXJlIHN0aWxsIGVhZ2VybHkgdmVyaWZpZWQgdG8gY2hlY2sKIGlsbC1mb3JtZWQgd2lyZWZvcm1hdCBvciBtaXNzaW5nIHJlcXVpcmVkIGZpZWxkcy4gQ2FsbGluZyBJc0luaXRpYWxpemVkKCkKIG9uIHRoZSBvdXRl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ZW5zaW9ucyBvZiB0aGlzIG1lc3NhZ2UuIFNlZSBhYm92ZS4KCgwKBAQPBQASBIEHDRgKDQoFBA8FAAESBIEHDREKDQoFBA8FAAISBIEHFRgKDAoCBBASBoQHAJwHAQoLCgMEEAESBIQHCBYKkQIKBAQQAgASBIoHAiQaggIgQW55IGZlYXR1cmVzIGRlZmluZWQgaW4gdGhlIHNwZWNpZmljIGVkaXRpb24uCiBXQVJOSU5HOiBUaGlzIGZpZWxkIHNob3VsZCBvbmx5IGJlIHVzZWQgYnkgcHJvdG9idWYgcGx1Z2lucyBvciBzcGVjaWFsCiBjYXNlcyBsaWtlIHRoZSBwcm90byBjb21waWxlci4gT3RoZXIgdXNlcyBhcmUgZGlzY291cmFnZWQgYW5kCiBkZXZlbG9wZXJzIHNob3VsZCByZWx5IG9uIHRoZSBwcm90b3JlZmxlY3QgQVBJcyBmb3IgdGhlaXIgY2xpZW50IGxhbmd1YWdlLgoKDQoFBBACAAQSBIoHAgoKDQoFBBACAAYSBIoHCxUKDQoFBBACAAESBIoHFh4KDQoFBBACAAMSBIoHISMK2QMKBAQQAgESBJUHAjIa3wEgSXMgdGhpcyBzZXJ2aWNlIGRlcHJlY2F0ZWQ/CiBEZXBlbmRpbmcgb24gdGhlIHRhcmdldCBwbGF0Zm9ybSwgdGhpcyBjYW4gZW1pdCBEZXByZWNhdGVkIGFubm90YXRpb25zCiBmb3IgdGhlIHNlcnZpY2UsIG9yIGl0IHdpbGwgYmUgY29tcGxldGVseSBpZ25vcmVkOyBpbiB0aGUgdmVyeSBsZWFzdCwKIHRoaXMgaXMgYSBmb3JtYWxpemF0aW9uIGZvciBkZXByZWNhdGluZyBzZXJ2aWNlcy4KMugBIE5vdGU6ICBGaWVsZCBudW1iZXJzIDEgdGhyb3VnaCAzMiBhcmUgcmVzZXJ2ZWQgZm9yIEdvb2dsZSdzIGludGVybmFsIFJQQwogICBmcmFtZXdvcmsuICBXZSBhcG9sb2dpemUgZm9yIGhvYXJkaW5nIHRoZXNlIG51bWJlcnMgdG8gb3Vyc2VsdmVzLCBidXQKICAgd2Ugd2VyZSBhbHJlYWR5IHVzaW5nIHRoZW0gbG9uZyBiZWZvcmUgd2UgZGVjaWRlZCB0byByZWxlYXNlIFByb3RvY29sCiAgIEJ1ZmZlcnMuCgoNCgUEEAIBBBIElQcCCgoNCgUEEAIBBRIElQcLDwoNCgUEEAIBARIElQcQGgoNCgUEEAIBAxIElQcdHwoNCgUEEAIBCBIElQcgMQoNCgUEEAIBBxIElQcrMApPCgQEEAICEgSYBwI6GkEgVGhlIHBhcnNlciBzdG9yZXMgb3B0aW9ucyBpdCBkb2Vzbid0IHJlY29nbml6ZSBoZXJlLiBTZWUgYWJvdmUuCgoNCgUEEAICBBIEmAcCCgoNCgUEEAICBhIEmAcLHgoNCgUEEAICARIEmAcfMwoNCgUEEAICAxIEmAc2OQpaCgMEEAUSBJsHAhkaTSBDbGllbnRzIGNhbiBkZWZpbmUgY3VzdG9tIG9wdGlvbnMgaW4gZXh0ZW5zaW9ucyBvZiB0aGlzIG1lc3NhZ2UuIFNlZSBhYm92ZS4KCgwKBAQQBQASBJsHDRgKDQoFBBAFAAESBJsHDREKDQoFBBAFAAISBJsHFRgKDAoCBBESBp4HAMEHAQoLCgMEEQESBJ4HCBUK1gMKBAQRAgASBKkHAjIa3AEgSXMgdGhpcyBtZXRob2QgZGVwcmVjYXRlZD8KIERlcGVuZGluZyBvbiB0aGUgdGFyZ2V0IHBsYXRmb3JtLCB0aGlzIGNhbiBlbWl0IERlcHJlY2F0ZWQgYW5ub3RhdGlvbnMKIGZvciB0aGUgbWV0aG9kLCBvciBpdCB3aWxsIGJlIGNvbXBsZXRlbHkgaWdub3JlZDsgaW4gdGhlIHZlcnkgbGVhc3QsCiB0aGlzIGlzIGEgZm9ybWFsaXphdGlvbiBmb3IgZGVwcmVjYXRpbmcgbWV0aG9kcy4KMugBIE5vdGU6ICBGaWVsZCBudW1iZXJzIDEgdGhyb3VnaCAzMiBhcmUgcmVzZXJ2ZWQgZm9yIEdvb2dsZSdzIGludGVybmFsIFJQQwogICBmcmFtZXdvcmsuICBXZSBhcG9sb2dpemUgZm9yIGhvYXJkaW5nIHRoZXNlIG51bWJlcnMgdG8gb3Vyc2VsdmVzLCBidXQKICAgd2Ugd2VyZSBhbHJlYWR5IHVzaW5nIHRoZW0gbG9uZyBiZWZvcmUgd2UgZGVjaWRlZCB0byByZWxlYXNlIFByb3RvY29sCiAgIEJ1ZmZlcnMuCgoNCgUEEQIABBIEqQcCCgoNCgUEEQIABRIEqQcLDwoNCgUEEQIAARIEqQcQGgoNCgUEEQIAAxIEqQcdHwoNCgUEEQIACBIEqQcgMQoNCgUEEQIABxIEqQcrMArwAQoEBBEEABIGrgcCsgcDGt8BIElzIHRoaXMgbWV0aG9kIHNpZGUtZWZmZWN0LWZyZWUgKG9yIHNhZmUgaW4gSFRUUCBwYXJsYW5jZSksIG9yIGlkZW1wb3RlbnQsCiBvciBuZWl0aGVyPyBIVFRQIGJhc2VkIFJQQyBpbXBsZW1lbnRhdGlvbiBtYXkgY2hvb3NlIEdFVCB2ZXJiIGZvciBzYWZlCiBtZXRob2RzLCBhbmQgUFVUIHZlcmIgZm9yIGlkZW1wb3RlbnQgbWV0aG9kcyBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0IFBPU1QuCgoNCgUEEQQAARIErgcHFwoOCgYEEQQAAgASBK8HBBwKDwoHBBEEAAIAARIErwcEFwoPCgcEEQQAAgACEgSvBxobCiQKBgQRBAACARIEsAcEGCIUIGltcGxpZXMgaWRlbXBvdGVudAoKDwoHBBEEAAIBARIEsAcEEwoPCgcEEQQAAgECEgSwBxYXCjcKBgQRBAACAhIEsQcEEyInIGlkZW1wb3RlbnQsIGJ1dCBtYXkgaGF2ZSBzaWRlIGVmZmVjdHMKCg8KBwQRBAACAgESBLEHBA4KDwoHBBEEAAICAhIEsQcREgoOCgQEEQIBEgazBwK0ByYKDQoFBBECAQQSBLMHAgoKDQoFBBECAQYSBLMHCxsKDQoFBBECAQESBLMHHC0KDQoFBBECAQMSBLMHMDIKDQoFBBECAQgSBLQHBiUKDQoFBBECAQcSBLQHESQKkQIKBAQRAgISBLoHAiQaggIgQW55IGZlYXR1cmVzIGRlZmluZWQgaW4gdGhlIHNwZWNpZmljIGVkaXRpb24uCiBXQVJOSU5HOiBUaGlzIGZpZWxkIHNob3VsZCBvbmx5IGJlIHVzZWQgYnkgcHJvdG9idWYgcGx1Z2lucyBvciBzcGVjaWFsCiBjYXNlcyBsaWtlIHRoZSBwcm90byBjb21waWxlci4gT3RoZXIgdXNlcyBhcmUgZGlzY291cmFnZWQgYW5kCiBkZXZlbG9wZXJzIHNob3VsZCByZWx5IG9uIHRoZSBwcm90b3JlZmxlY3QgQVBJcyBmb3IgdGhlaXIgY2xpZW50IGxhbmd1YWdlLgoKDQoFBBECAgQSBLoHAgoKDQoFBBECAgYSBLoHCxUKDQoFBBECAgESBLoHFh4KDQoFBBECAgMSBLoHISMKTwoEBBECAxIEvQcCOhpBIFRoZSBwYXJzZXIgc3RvcmVzIG9wdGlvbnMgaXQgZG9lc24ndCByZWNvZ25pemUgaGVyZS4gU2VlIGFib3ZlLgoKDQoFBBECAwQSBL0HAgoKDQoFBBECAwYSBL0HCx4KDQoFBBECAwESBL0HHzMKDQoFBBECAwMSBL0HNjkKWgoDBBEFEgTABwIZGk0gQ2xpZW50cyBjYW4gZGVmaW5lIGN1c3RvbSBvcHRpb25zIGluIGV4dGVuc2lvbnMgb2YgdGhpcyBtZXNzYWdlLiBTZWUgYWJvdmUuCgoMCgQEEQUAEgTABw0YCg0KBQQRBQABEgTABw0RCg0KBQQRBQACEgTABxUYCosDCgIEEhIGyQcA3QcBGvwCIEEgbWVzc2FnZSByZXByZXNlbnRpbmcgYSBvcHRpb24gdGhlIHBhcnNlciBkb2VzIG5vdCByZWNvZ25pemUuIFRoaXMgb25seQogYXBwZWFycyBpbiBvcHRpb25zIHByb3RvcyBjcmVhdGVkIGJ5IHRoZSBjb21waWxlcjo6UGFyc2VyIGNsYXNzLgogRGVzY3JpcHRvclBvb2wgcmVzb2x2ZXMgdGhlc2Ugd2hlbiBidWlsZGluZyBEZXNjcmlwdG9yIG9iamVjdHMuIFRoZXJlZm9yZSwKIG9wdGlvbnMgcHJvdG9zIGluIGRlc2NyaXB0b3Igb2JqZWN0cyAoZS5nLiByZXR1cm5lZCBieSBEZXNjcmlwdG9yOjpvcHRpb25zKCksCiBvciBwcm9kdWNlZCBieSBEZXNjcmlwdG9yOjpDb3B5VG8oKSkgd2lsbCBuZXZlciBoYXZlIFVuaW50ZXJwcmV0ZWRPcHRpb25zCiBpbiB0aGVtLgoKCwoDBBIBEgTJBwgbCssCCgQEEgMAEgbPBwLSBwMaugIgVGhlIG5hbWUgb2YgdGhlIHVuaW50ZXJwcmV0ZWQgb3B0aW9uLiAgRWFjaCBzdHJpbmcgcmVwcmVzZW50cyBhIHNlZ21lbnQgaW4KIGEgZG90LXNlcGFyYXRlZCBuYW1lLiAgaXNfZXh0ZW5zaW9uIGlzIHRydWUgaWZmIGEgc2VnbWVudCByZXByZXNlbnRzIGFuCiBleHRlbnNpb24gKGRlbm90ZWQgd2l0aCBwYXJlbnRoZXNlcyBpbiBvcHRpb25zIHNwZWNzIGluIC5wcm90byBmaWxlcykuCiBFLmcuLHsgWyJmb28iLCBmYWxzZV0sIFsiYmFyLmJheiIsIHRydWVdLCBbIm1vbyIsIGZhbHNlXSB9IHJlcHJlc2VudHMKICJmb28uKGJhci5iYXopLm1vbyIuCgoNCgUEEgMAARIEzwcKEgoOCgYEEgMAAgASBNAHBCIKDwoHBBIDAAIABBIE0AcEDAoPCgcEEgMAAgAFEgTQBw0TCg8KBwQSAwACAAESBNAHFB0KDwoHBBIDAAIAAxIE0AcgIQoOCgYEEgMAAgESBNEHBCMKDwoHBBIDAAIBBBIE0QcEDAoPCgcEEgMAAgEFEgTRBw0RCg8KBwQSAwACAQESBNEHEh4KDwoHBBIDAAIBAxIE0QchIgoMCgQEEgIAEgTTBwIdCg0KBQQSAgAEEgTTBwIKCg0KBQQSAgAGEgTTBwsTCg0KBQQSAgABEgTTBxQYCg0KBQQSAgADEgTTBxscCpwBCgQEEgIBEgTXBwInGo0BIFRoZSB2YWx1ZSBvZiB0aGUgdW5pbnRlcnByZXRlZCBvcHRpb24sIGluIHdoYXRldmVyIHR5cGUgdGhlIHRva2VuaXplcgogaWRlbnRpZmllZCBpdCBhcyBkdXJpbmcgcGFyc2luZy4gRXhhY3RseSBvbmUgb2YgdGhlc2Ugc2hvdWxkIGJlIHNldC4KCg0KBQQSAgEEEgTXBwIKCg0KBQQSAgEFEgTXBwsRCg0KBQQSAgEBEgTXBxIiCg0KBQQSAgEDEgTXByUmCgwKBAQSAgISBNgHAikKDQoFBBICAgQSBNgHAgoKDQoFBBICAgUSBNgHCxEKDQoFBBICAgESBNgHEiQKDQoFBBICAgMSBNgHJygKDAoEBBICAxIE2QcCKAoNCgUEEgIDBBIE2QcCCgoNCgUEEgIDBRIE2QcLEAoNCgUEEgIDARIE2QcRIwoNCgUEEgIDAxIE2QcmJwoMCgQEEgIEEgTaBwIjCg0KBQQSAgQEEgTaBwIKCg0KBQQSAgQFEgTaBwsRCg0KBQQSAgQBEgTaBxIeCg0KBQQSAgQDEgTaByEiCgwKBAQSAgUSBNsHAiIKDQoFBBICBQQSBNsHAgoKDQoFBBICBQUSBNsHCxAKDQoFBBICBQESBNsHER0KDQoFBBICBQMSBNsHICEKDAoEBBICBhIE3AcCJgoNCgUEEgIGBBIE3AcCCgoNCgUEEgIGBRIE3AcLEQoNCgUEEgIGARIE3AcSIQoNCgUEEgIGAxIE3AckJQrbAwoCBBMSBugHAP8IARr7AiBUT0RPIEVudW1zIGluIEMrKyBnZW5jb2RlIChhbmQgcG90ZW50aWFsbHkgb3RoZXIgbGFuZ3VhZ2VzKSBhcmUKIG5vdCB3ZWxsIHNjb3BlZC4gIFRoaXMgbWVhbnMgdGhhdCBlYWNoIG9mIHRoZSBmZWF0dXJlIGVudW1zIGJlbG93IGNhbiBjbGFzaAogd2l0aCBlYWNoIG90aGVyLiAgVGhlIHNob3J0IG5hbWVzIHdlJ3ZlIGNob3NlbiBtYXhpbWl6ZSBjYWxsLXNpdGUKIHJlYWRhYmlsaXR5LCBidXQgbGVhdmUgdXMgdmVyeSBvcGVuIHRvIHRoaXMgc2NlbmFyaW8uICBBIGZ1dHVyZSBmZWF0dXJlIHdpbGwKIGJlIGRlc2lnbmVkIGFuZCBpbXBsZW1lbnRlZCB0byBoYW5kbGUgdGhpcywgaG9wZWZ1bGx5IGJlZm9yZSB3ZSBldmVyIGhpdCBhCiBjb25mbGljdCBoZXJlLgoyTyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBGZWF0dXJlcwoKCwoDBBMBEgToBwgSCg4KBAQTBAASBukHAu4HAwoNCgUEEwQAARIE6QcHFAoOCgYEEwQAAgASBOoHBB8KDwoHBBMEAAIAARIE6gcEGgoPCgcEEwQAAgACEgTqBx0eCg4KBgQTBAACARIE6wcEEQoPCgcEEwQAAgEBEgTrBwQMCg8KBwQTBAACAQISBOsHDxAKDgoGBBMEAAICEgTsBwQRCg8KBwQTBAACAgESBOwHBAwKDwoHBBMEAAICAhIE7AcPEAoOCgYEEwQAAgMSBO0HBBgKDwoHBBMEAAIDARIE7QcEEwoPCgcEEwQAAgMCEgTtBxYXCg4KBAQTAgASBu8HAvkHBAoNCgUEEwIABBIE7wcCCgoNCgUEEwIABhIE7wcLGAoNCgUEEwIAARIE7wcZJwoNCgUEEwIAAxIE7wcqKwoPCgUEEwIACBIG7wcs+QcDCg4KBgQTAgAIERIE8AcEIQoPCgcEEwIACBMAEgTxBwQfCg8KBwQTAgAIEwESBPIHBB4KEAoGBBMCAAgWEgbzBwT1BwUKDwoHBBMCAAgUABIE9gcERQoPCgcEEwIACBQBEgT3BwRFCg8KBwQTAgAIFAISBPgHBEMKDgoEBBMEARIG+wcC/wcDCg0KBQQTBAEBEgT7BwcPCg4KBgQTBAECABIE/AcEGgoPCgcEEwQBAgABEgT8BwQVCg8KBwQTBAECAAISBPwHGBkKDgoGBBMEAQIBEgT9BwQNCg8KBwQTBAECAQESBP0HBAgKDwoHBBMEAQIBAhIE/QcLDAoOCgYEEwQBAgISBP4HBA8KDwoHBBMEAQICARIE/gcECgoPCgcEEwQBAgICEgT+Bw0OCg4KBAQTAgESBoAIAokIBAoNCgUEEwIBBBIEgAgCCgoNCgUEEwIBBhIEgAgLEwoNCgUEEwIBARIEgAgUHQoNCgUEEwIBAxIEgAggIQoPCgUEEwIBCBIGgAgiiQgDCg4KBgQTAgEIERIEgQgEIQoPCgcEEwIBCBMAEgSCCAQeCg8KBwQTAgEIEwESBIMIBB4KEAoGBBMCAQgWEgaECASGCAUKDwoHBBMCAQgUABIEhwgEQwoPCgcEEwIBCBQBEgSICARBCg4KBAQTBAISBosIAo8IAwoNCgUEEwQCARIEiwgHHAoOCgYEEwQCAgASBIwIBCgKDwoHBBMEAgIAARIEjAgEIwoPCgcEEwQCAgACEgSMCCYnCg4KBgQTBAICARIEjQgEDwoPCgcEEwQCAgEBEgSNCAQKCg8KBwQTBAICAQISBI0IDQ4KDgoGBBMEAgICEgSOCAQRCg8KBwQTBAICAgESBI4IBAwKDwoHBBMEAgICAhIEjggPEAoOCgQEEwICEgaQCAKZCAQKDQoFBBMCAgQSBJAIAgoKDQoFBBMCAgYSBJAICyAKDQoFBBMCAgESBJAIITgKDQoFBBMCAgMSBJAIOzwKDwoFBBMCAggSBpAIPZkIAwoOCgYEEwICCBESBJEIBCEKDwoHBBMCAggTABIEkggEHwoPCgcEEwICCBMBEgSTCAQeChAKBgQTAgIIFhIGlAgElggFCg8KBwQTAgIIFAASBJcIBEUKDwoHBBMCAggUARIEmAgEQwoOCgQEEwQDEgabCAKgCAMKDQoFBBMEAwESBJsIBxUKDgoGBBMEAwIAEgScCAQgCg8KBwQTBAMCAAESBJwIBBsKDwoHBBMEAwIAAhIEnAgeHwoOCgYEEwQDAgESBJ0IBA8KDwoHBBMEAwIBARIEnQgECgoPCgcEEwQDAgECEgSdCA0OCg4KBgQTBAMCAhIEnggEDQoPCgcEEwQDAgIBEgSeCAQICg8KBwQTBAMCAgISBJ4ICwwKDQoFBBMEAwQSBJ8IBA8KDgoGBBMEAwQAEgSfCA0OCg8KBwQTBAMEAAESBJ8IDQ4KDwoHBBMEAwQAAhIEnwgNDgoOCgQEEwIDEgahCAKqCAQKDQoFBBMCAwQSBKEIAgoKDQoFBBMCAwYSBKEICxkKDQoFBBMCAwESBKEIGikKDQoFBBMCAwMSBKEILC0KDwoFBBMCAwgSBqEILqoIAwoOCgYEEwIDCBESBKIIBCEKDwoHBBMCAwgTABIEowgEHwoPCgcEEwIDCBMBEgSkCAQeChAKBgQTAgMIFhIGpQgEpwgFCg8KBwQTAgMIFAASBKgIBEEKDwoHBBMCAwgUARIEqQgEQwoOCgQEEwQEEgasCAKwCAMKDQoFBBMEBAESBKwIBxYKDgoGBBMEBAIAEgStCAQhCg8KBwQTBAQCAAESBK0IBBwKDwoHBBMEBAIAAhIErQgfIAoOCgYEEwQEAgESBK4IBBgKDwoHBBMEBAIBARIErggEEwoPCgcEEwQEAgECEgSuCBYXCg4KBgQTBAQCAhIErwgEEgoPCgcEEwQEAgIBEgSvCAQNCg8KBwQTBAQCAgISBK8IEBEKDgoEBBMCBBIGsQgCuQgECg0KBQQTAgQEEgSxCAIKCg0KBQQTAgQGEgSxCAsaCg0KBQQTAgQBEgSxCBsrCg0KBQQTAgQDEgSxCC4vCg8KBQQTAgQIEgaxCDC5CAMKDgoGBBMCBAgREgSyCAQhCg8KBwQTAgQIEwASBLMIBB8KDwoHBBMCBAgTARIEtAgEHgoQCgYEEwIECBYSBrUIBLcIBQoPCgcEEwIECBQAEgS4CARMCg4KBAQTBAUSBrsIAr8IAwoNCgUEEwQFARIEuwgHEQoOCgYEEwQFAgASBLwIBBwKDwoHBBMEBQIAARIEvAgEFwoPCgcEEwQFAgACEgS8CBobCg4KBgQTBAUCARIEvQgEDgoPCgcEEwQFAgEBEgS9CAQJCg8KBwQTBAUCAQISBL0IDA0KDgoGBBMEBQICEgS+CAQbCg8KBwQTBAUCAgESBL4IBBYKDwoHBBMEBQICAhIEvggZGgoOCgQEEwIFEgbACALKCAQKDQoFBBMCBQQSBMAIAgoKDQoFBBMCBQYSBMAICxUKDQoFBBMCBQESBMAIFiEKDQoFBBMCBQMSBMAIJCUKDwoFBBMCBQgSBsAIJsoIAwoOCgYEEwIFCBESBMEIBCEKDwoHBBMCBQgTABIEwggEIQoPCgcEEwIFCBMBEgTDCAQeCg8KBwQTAgUIEwISBMQIBB4KEAoGBBMCBQgWEgbFCATHCAUKDwoHBBMCBQgUABIEyAgETwoPCgcEEwIFCBQBEgTJCARCCg4KBAQTBAYSBswIAtAIAwoNCgUEEwQGARIEzAgHGQoOCgYEEwQGAgASBM0IBCUKDwoHBBMEBgIAARIEzQgEIAoPCgcEEwQGAgACEgTNCCMkCg4KBgQTBAYCARIEzggEEgoPCgcEEwQGAgEBEgTOCAQNCg8KBwQTBAYCAQISBM4IEBEKDgoGBBMEBgICEgTPCAQVCg8KBwQTBAYCAgESBM8IBBAKDwoHBBMEBgICAhIEzwgTFAoOCgQEEwIGEgbRCALhCAQKDQoFBBMCBgQSBNEIAgoKDQoFBBMCBgYSBNEICx0KDQoFBBMCBgESBNEIHjIKDQoFBBMCBgMSBNEINTYKDwoFBBMCBggSBtEIN+EIAwoOCgYEEwIGCBESBNIIBCAKDwoHBBMCBggTABIE0wgEHgoPCgcEEwIGCBMBEgTUCAQpCg8KBwQTAgYIEwISBNUIBCEKDwoHBBMCBggTAxIE1ggEHwoPCgcEEwIGCBMEEgTXCAQfCg8KBwQTAgYIEwUSBNgIBB4KDwoHBBMCBggTBhIE2QgEJAoPCgcEEwIGCBMHEgTaCAQhCg8KBwQTAgYIEwgSBNsIBCAKEAoGBBMCBggWEgbcCATeCAUKDwoHBBMCBggUABIE3wgESQoPCgcEEwIGCBQBEgTgCARECgsKAwQTCRIE4wgCDwoMCgQEEwkAEgTjCAsOCg0KBQQTCQABEgTjCAsOCg0KBQQTCQACEgTjCAsOCg0KAwQTBRIG5QgC+wgECgwKBAQTBQASBOUIDRkKDQoFBBMFAAESBOUIDREKDQoFBBMFAAISBOUIFRkKIwoDBBMFEgT9CAIaIhYgRm9yIGludGVybmFsIHRlc3RpbmcKCgwKBAQTBQESBP0IDRkKDQoFBBMFAQESBP0IDREKDQoFBBMFAQISBP0IFRkKOgoDBBMFEgT+CAITIi0gZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9idWZidWlsZC9wcm90b2J1Zi1lcwoKDAoEBBMFAhIE/ggNEgoNCgUEEwUCARIE/ggNEgoNCgUEEwUCAhIE/ggNEgqsAgoCBBQSBoUJAJ8JARqdAiBBIGNvbXBpbGVkIHNwZWNpZmljYXRpb24gZm9yIHRoZSBkZWZhdWx0cyBvZiBhIHNldCBvZiBmZWF0dXJlcy4gIFRoZXNlCiBtZXNzYWdlcyBhcmUgZ2VuZXJhdGVkIGZyb20gRmVhdHVyZVNldCBleHRlbnNpb25zIGFuZCBjYW4gYmUgdXNlZCB0byBzZWVkCiBmZWF0dXJlIHJlc29sdXRpb24uIFRoZSByZXNvbHV0aW9uIHdpdGggdGhpcyBvYmplY3QgYmVjb21lcyBhIHNpbXBsZSBzZWFyY2gKIGZvciB0aGUgY2xvc2VzdCBtYXRjaGluZyBlZGl0aW9uLCBmb2xsb3dlZCBieSBwcm90byBtZXJnZXMuCgoLCgMEFAESBIUJCBoKsAIKBAQUAwASBooJApUJAxqfAiBBIG1hcCBmcm9tIGV2ZXJ5IGtub3duIGVkaXRpb24gd2l0aCBhIHVuaXF1ZSBzZXQgb2YgZGVmYXVsdHMgdG8gaXRzCiBkZWZhdWx0cy4gTm90IGFsbCBlZGl0aW9ucyBtYXkgYmUgY29udGFpbmVkIGhlcmUuICBGb3IgYSBnaXZlbiBlZGl0aW9uLAogdGhlIGRlZmF1bHRzIGF0IHRoZSBjbG9zZXN0IG1hdGNoaW5nIGVkaXRpb24gb3JkZXJlZCBhdCBvciBiZWZvcmUgaXQgc2hvdWxkCiBiZSB1c2VkLiAgVGhpcyBmaWVsZCBtdXN0IGJlIGluIHN0cmljdCBhc2NlbmRpbmcgb3JkZXIgYnkgZWRpdGlvbi4KCg0KBQQUAwABEgSKCQoiCg4KBgQUAwACABIEiwkEIQoPCgcEFAMAAgAEEgSLCQQMCg8KBwQUAwACAAYSBIsJDRQKDwoHBBQDAAIAARIEiwkVHAoPCgcEFAMAAgADEgSLCR8gCk4KBgQUAwACARIEjgkEMRo+IERlZmF1bHRzIG9mIGZlYXR1cmVzIHRoYXQgY2FuIGJlIG92ZXJyaWRkZW4gaW4gdGhpcyBlZGl0aW9uLgoKDwoHBBQDAAIBBBIEjgkEDAoPCgcEFAMAAgEGEgSOCQ0XCg8KBwQUAwACAQESBI4JGCwKDwoHBBQDAAIBAxIEjgkvMApQCgYEFAMAAgISBJEJBCsaQCBEZWZhdWx0cyBvZiBmZWF0dXJlcyB0aGF0IGNhbid0IGJlIG92ZXJyaWRkZW4gaW4gdGhpcyBlZGl0aW9uLgoKDwoHBBQDAAICBBIEkQkEDAoPCgcEFAMAAgIGEgSRCQ0XCg8KBwQUAwACAgESBJEJGCYKDwoHBBQDAAICAxIEkQkpKgoNCgUEFAMACRIEkwkEEgoOCgYEFAMACQASBJMJDQ4KDwoHBBQDAAkAARIEkwkNDgoPCgcEFAMACQACEgSTCQ0OCg4KBgQUAwAJARIEkwkQEQoPCgcEFAMACQEBEgSTCRARCg8KBwQUAwAJAQISBJMJEBEKDQoFBBQDAAoSBJQJBBgKDgoGBBQDAAoAEgSUCQ0XCgwKBAQUAgASBJYJAjEKDQoFBBQCAAQSBJYJAgoKDQoFBBQCAAYSBJYJCyMKDQoFBBQCAAESBJYJJCwKDQoFBBQCAAMSBJYJLzAKggEKBAQUAgESBJoJAicadCBUaGUgbWluaW11bSBzdXBwb3J0ZWQgZWRpdGlvbiAoaW5jbHVzaXZlKSB3aGVuIHRoaXMgd2FzIGNvbnN0cnVjdGVkLgogRWRpdGlvbnMgYmVmb3JlIHRoaXMgd2lsbCBub3QgaGF2ZSBkZWZhdWx0cy4KCg0KBQQUAgEEEgSaCQIKCg0KBQQUAgEGEgSaCQsSCg0KBQQUAgEBEgSaCRMiCg0KBQQUAgEDEgSaCSUmCoYBCgQEFAICEgSeCQInGnggVGhlIG1heGltdW0ga25vd24gZWRpdGlvbiAoaW5jbHVzaXZlKSB3aGVuIHRoaXMgd2FzIGNvbnN0cnVjdGVkLiBFZGl0aW9ucwogYWZ0ZXIgdGhpcyB3aWxsIG5vdCBoYXZlIHJlbGlhYmxlIGRlZmF1bHRzLgoKDQoFBBQCAgQSBJ4JAgoKDQoFBBQCAgYSBJ4JCxIKDQoFBBQCAgESBJ4JEyIKDQoFBBQCAgMSBJ4JJSYK2gEKAgQVEgamCQCuCgEaaiBFbmNhcHN1bGF0ZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIGZyb20gd2hpY2ggYQogRmlsZURlc2NyaXB0b3JQcm90byB3YXMgZ2VuZXJhdGVkLgoyYCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBPcHRpb25hbCBzb3VyY2UgY29kZSBpbmZvCgoLCgMEFQESBKYJCBYKghEKBAQVAgASBNIJAiEa8xAgQSBMb2NhdGlvbiBpZGVudGlmaWVzIGEgcGllY2Ugb2Ygc291cmNlIGNvZGUgaW4gYSAucHJvdG8gZmlsZSB3aGljaAogY29ycmVzcG9uZHMgdG8gYSBwYXJ0aWN1bGFyIGRlZmluaXRpb24uICBUaGlzIGluZm9ybWF0aW9uIGlzIGludGVuZGVkCiB0byBiZSB1c2VmdWwgdG8gSURFcywgY29kZSBpbmRleGVycywgZG9jdW1lbnRhdGlvbiBnZW5lcmF0b3JzLCBhbmQgc2ltaWxhcgogdG9vbHMuCgogRm9yIGV4YW1wbGUsIHNheSB3ZSBoYXZlIGEgZmlsZSBsaWtlOgogICBtZXNzYWdlIEZvbyB7CiAgICAgb3B0aW9uYWwgc3RyaW5nIGZvbyA9IDE7CiAgIH0KIExldCdzIGxvb2sgYXQganVzdCB0aGUgZmllbGQgZGVmaW5pdGlvbjoKICAgb3B0aW9uYWwgc3RyaW5nIGZvbyA9IDE7CiAgIF4gICAgICAgXl4gICAgIF5eICBeICBeXl4KICAgYSAgICAgICBiYyAgICAgZGUgIGYgIGdoaQogV2UgaGF2ZSB0aGUgZm9sbG93aW5nIGxvY2F0aW9uczoKICAgc3BhbiAgIHBhdGggICAgICAgICAgICAgICByZXByZXNlbnRzCiAgIFthLGkpICBbIDQsIDAsIDIsIDAgXSAgICAgVGhlIHdob2xlIGZpZWxkIGRlZmluaXRpb24uCiAgIFthLGIpICBbIDQsIDAsIDIsIDAsIDQgXSAgVGhlIGxhYmVsIChvcHRpb25hbCkuCiAgIFtjLGQpICBbIDQsIDAsIDIsIDAsIDUgXSAgVGhlIHR5cGUgKHN0cmluZykuCiAgIFtlLGYpICBbIDQsIDAsIDIsIDAsIDEgXSAgVGhlIG5hbWUgKGZvbykuCiAgIFtnLGgpICBbIDQsIDAsIDIsIDAsIDMgXSAgVGhlIG51bWJlciAoMSkuCgogTm90ZXM6CiAtIEEgbG9jYXRpb24gbWF5IHJlZmVyIHRvIGEgcmVwZWF0ZWQgZmllbGQgaXRzZWxmIChpLmUuIG5vdCB0byBhbnkKICAgcGFydGljdWxhciBpbmRleCB3aXRoaW4gaXQpLiAgVGhpcyBpcyB1c2VkIHdoZW5ldmVyIGEgc2V0IG9mIGVsZW1lbnRzIGFyZQogICBsb2dpY2FsbHkgZW5jbG9zZWQgaW4gYSBzaW5nbGUgY29kZSBzZWdtZW50LiAgRm9yIGV4YW1wbGUsIGFuIGVudGlyZQogICBleHRlbmQgYmxvY2sgKHBvc3NpYmx5IGNvbnRhaW5pbmcgbXVsdGlwbGUgZXh0ZW5zaW9uIGRlZmluaXRpb25zKSB3aWxsCiAgIGhhdmUgYW4gb3V0ZXIgbG9jYXRpb24gd2hvc2UgcGF0aCByZWZlcnMgdG8gdGhlICJleHRlbnNpb25zIiByZXBlYXRlZAogICBmaWVsZCB3aXRob3V0IGFuIGluZGV4LgogLSBNdWx0aXBsZSBsb2NhdGlvbnMgbWF5IGhhdmUgdGhlIHNhbWUgcGF0aC4gIFRoaXMgaGFwcGVucyB3aGVuIGEgc2luZ2xlCiAgIGxvZ2ljYWwgZGVjbGFyYXRpb24gaXMgc3ByZWFkIG91dCBhY3Jvc3MgbXVsdGlwbGUgcGxhY2VzLiAgVGhlIG1vc3QKICAgb2J2aW91cyBleGFtcGxlIGlzIHRoZSAiZXh0ZW5kIiBibG9jayBhZ2FpbiAtLSB0aGVyZSBtYXkgYmUgbXVsdGlwbGUKICAgZXh0ZW5kIGJsb2NrcyBpbiB0aGUgc2FtZSBzY29wZSwgZWFjaCBvZiB3aGljaCB3aWxsIGhhdmUgdGhlIHNhbWUgcGF0aC4KIC0gQSBsb2NhdGlvbidzIHNwYW4gaXMgbm90IGFsd2F5cyBhIHN1YnNldCBvZiBpdHMgcGFyZW50J3Mgc3Bhbi4gIEZvcgogICBleGFtcGxlLCB0aGUgImV4dGVuZGVlIiBvZiBhbiBleHRlbnNpb24gZGVjbGFyYXRpb24gYXBwZWFycyBhdCB0aGUKICAgYmVnaW5uaW5nIG9mIHRoZSAiZXh0ZW5kIiBibG9jayBhbmQgaXMgc2hhcmVkIGJ5IGFsbCBleHRlbnNpb25zIHdpdGhpbgogICB0aGUgYmxvY2suCiAtIEp1c3QgYmVjYXVzZSBhIGxvY2F0aW9uJ3Mgc3BhbiBpcyBhIHN1YnNldCBvZiBzb21lIG90aGVyIGxvY2F0aW9uJ3Mgc3BhbgogICBkb2VzIG5vdCBtZWFuIHRoYXQgaXQgaXMgYSBkZXNjZW5kYW50LiAgRm9yIGV4YW1wbGUsIGEgImdyb3VwIiBkZWZpbmVzCiAgIGJvdGggYSB0eXBlIGFuZCBhIGZpZWxkIGluIGEgc2luZ2xlIGRlY2xhcmF0aW9uLiAgVGh1cywgdGhlIGxvY2F0aW9ucwogICBjb3JyZXNwb25kaW5nIHRvIHRoZSB0eXBlIGFuZCBmaWVsZCBhbmQgdGhlaXIgY29tcG9uZW50cyB3aWxsIG92ZXJsYXAuCiAtIENvZGUgd2hpY2ggdHJpZXMgdG8gaW50ZXJwcmV0IGxvY2F0aW9ucyBzaG91bGQgcHJvYmFibHkgYmUgZGVzaWduZWQgdG8KICAgaWdub3JlIHRob3NlIHRoYXQgaXQgZG9lc24ndCB1bmRlcnN0YW5kLCBhcyBtb3JlIHR5cGVzIG9mIGxvY2F0aW9ucyBjb3VsZAogICBiZSByZWNvcmRlZCBpbiB0aGUgZnV0dXJlLgoKDQoFBBUCAAQSBNIJAgoKDQoFBBUCAAYSBNIJCxMKDQoFBBUCAAESBNIJFBwKDQoFBBUCAAMSBNIJHyAKDgoEBBUDABIG0wkCpgoDCg0KBQQVAwABEgTTCQoSCooHCgYEFQMAAgASBOsJBCwa+QYgSWRlbnRpZmllcyB3aGljaCBwYXJ0IG9mIHRoZSBGaWxlRGVzY3JpcHRvclByb3RvIHdhcyBkZWZpbmVkIGF0IHRoaXMKIGxvY2F0aW9uLgoKIEVhY2ggZWxlbWVudCBpcyBhIGZpZWxkIG51bWJlciBvciBhbiBpbmRleC4gIFRoZXkgZm9ybSBhIHBhdGggZnJvbQogdGhlIHJvb3QgRmlsZURlc2NyaXB0b3JQcm90byB0byB0aGUgcGxhY2Ugd2hlcmUgdGhlIGRlZmluaXRpb24gYXBwZWFycy4KIEZvciBleGFtcGxlLCB0aGlzIHBhdGg6CiAgIFsgNCwgMywgMiwgNywgMSBdCiByZWZlcnMgdG86CiAgIGZpbGUubWVzc2FnZV90eXBlKDMpICAvLyA0LCAzCiAgICAgICAuZmllbGQoNykgICAgICAgICAvLyAyLCA3CiAgICAgICAubmFtZSgpICAgICAgICAgICAvLyAxCiBUaGlzIGlzIGJlY2F1c2UgRmlsZURlc2NyaXB0b3JQcm90by5tZXNzYWdlX3R5cGUgaGFzIGZpZWxkIG51bWJlciA0OgogICByZXBlYXRlZCBEZXNjcmlwdG9yUHJvdG8gbWVzc2FnZV90eXBlID0gNDsKIGFuZCBEZXNjcmlwdG9yUHJvdG8uZmllbGQgaGFzIGZpZWxkIG51bWJlciAyOgogICByZXBlYXRlZCBGaWVsZERlc2NyaXB0b3JQcm90byBmaWVsZCA9IDI7CiBhbmQgRmllbGREZXNjcmlwdG9yUHJvdG8ubmFtZSBoYXMgZmllbGQgbnVtYmVyIDE6CiAgIG9wdGlvbmFsIHN0cmluZyBuYW1lID0gMTsKCiBUaHVzLCB0aGUgYWJvdmUgcGF0aCBnaXZlcyB0aGUgbG9jYXRpb24gb2YgYSBmaWVsZCBuYW1lLiAgSWYgd2UgcmVtb3ZlZAogdGhlIGxhc3QgZWxlbWVudDoKICAgWyA0LCAzLCAyLCA3IF0KIHRoaXMgcGF0aCByZWZlcnMgdG8gdGhlIHdob2xlIGZpZWxkIGRlY2xhcmF0aW9uIChmcm9tIHRoZSBiZWdpbm5pbmcKIG9mIHRoZSBsYWJlbCB0byB0aGUgdGVybWluYXRpbmcgc2VtaWNvbG9uKS4KCg8KBwQVAwACAAQSBOsJBAwKDwoHBBUDAAIABRIE6wkNEgoPCgcEFQMAAgABEgTrCRMXCg8KBwQVAwACAAMSBOsJGhsKDwoHBBUDAAIACBIE6wkcKwoQCggEFQMAAgAIAhIE6wkdKgrSAgoGBBUDAAIBEgTyCQQsGsECIEFsd2F5cyBoYXMgZXhhY3RseSB0aHJlZSBvciBmb3VyIGVsZW1lbnRzOiBzdGFydCBsaW5lLCBzdGFydCBjb2x1bW4sCiBlbmQgbGluZSAob3B0aW9uYWwsIG90aGVyd2lzZSBhc3N1bWVkIHNhbWUgYXMgc3RhcnQgbGluZSksIGVuZCBjb2x1bW4uCiBUaGVzZSBhcmUgcGFja2VkIGludG8gYSBzaW5nbGUgZmllbGQgZm9yIGVmZmljaWVuY3kuICBOb3RlIHRoYXQgbGluZQogYW5kIGNvbHVtbiBudW1iZXJzIGFyZSB6ZXJvLWJhc2VkIC0tIHR5cGljYWxseSB5b3Ugd2lsbCB3YW50IHRvIGFkZAogMSB0byBlYWNoIGJlZm9yZSBkaXNwbGF5aW5nIHRvIGEgdXNlci4KCg8KBwQVAwACAQQSBPIJBAwKDwoHBBUDAAIBBRIE8gkNEgoPCgcEFQMAAgEBEgTyCRMXCg8KBwQVAwACAQMSBPIJGhsKDwoHBBUDAAIBCBIE8gkcKwoQCggEFQMAAgEIAhIE8gkdKgqlDAoGBBUDAAICEgSjCgQpGpQMIElmIHRoaXMgU291cmNlQ29kZUluZm8gcmVwcmVzZW50cyBhIGNvbXBsZXRlIGRlY2xhcmF0aW9uLCB0aGVzZSBhcmUgYW55CiBjb21tZW50cyBhcHBlYXJpbmcgYmVmb3JlIGFuZCBhZnRlciB0aGUgZGVjbGFyYXRpb24gd2hpY2ggYXBwZWFyIHRvIGJlCiBhdHRhY2hlZCB0byB0aGUgZGVjbGFyYXRpb24uCgogQSBzZXJpZXMgb2YgbGluZSBjb21tZW50cyBhcHBlYXJpbmcgb24gY29uc2VjdXRpdmUgbGluZXMsIHdpdGggbm8gb3RoZXIKIHRva2VucyBhcHBlYXJpbmcgb24gdGhvc2UgbGluZXMsIHdpbGwgYmUgdHJlYXRlZCBhcyBhIHNpbmdsZSBjb21tZW50LgoKIGxlYWRpbmdfZGV0YWNoZWRfY29tbWVudHMgd2lsbCBrZWVwIHBhcmFncmFwaHMgb2YgY29tbWVudHMgdGhhdCBhcHBlYXIKIGJlZm9yZSAoYnV0IG5vdCBjb25uZWN0ZWQgdG8pIHRoZSBjdXJyZW50IGVsZW1lbnQuIEVhY2ggcGFyYWdyYXBoLAogc2VwYXJhdGVkIGJ5IGVtcHR5IGxpbmVzLCB3aWxsIGJlIG9uZSBjb21tZW50IGVsZW1lbnQgaW4gdGhlIHJlcGVhdGVkCiBmaWVsZC4KCiBPbmx5IHRoZSBjb21tZW50IGNvbnRlbnQgaXMgcHJvdmlkZWQ7IGNvbW1lbnQgbWFya2VycyAoZS5nLiAvLykgYXJlCiBzdHJpcHBlZCBvdXQuICBGb3IgYmxvY2sgY29tbWVudHMsIGxlYWRpbmcgd2hpdGVzcGFjZSBhbmQgYW4gYXN0ZXJpc2sKIHdpbGwgYmUgc3RyaXBwZWQgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIGVhY2ggbGluZSBvdGhlciB0aGFuIHRoZSBmaXJzdC4KIE5ld2xpbmVzIGFyZSBpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LgoKIEV4YW1wbGVzOgoKICAgb3B0aW9uYWwgaW50MzIgZm9vID0gMTsgIC8vIENvbW1lbnQgYXR0YWNoZWQgdG8gZm9vLgogICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIGJhci4KICAgb3B0aW9uYWwgaW50MzIgYmFyID0gMjsKCiAgIG9wdGlvbmFsIHN0cmluZyBiYXogPSAzOwogICAvLyBDb21tZW50IGF0dGFjaGVkIHRvIGJhei4KICAgLy8gQW5vdGhlciBsaW5lIGF0dGFjaGVkIHRvIGJhei4KCiAgIC8vIENvbW1lbnQgYXR0YWNoZWQgdG8gbW9vLgogICAvLwogICAvLyBBbm90aGVyIGxpbmUgYXR0YWNoZWQgdG8gbW9vLgogICBvcHRpb25hbCBkb3VibGUgbW9vID0gNDsKCiAgIC8vIERldGFjaGVkIGNvbW1lbnQgZm9yIGNvcmdlLiBUaGlzIGlzIG5vdCBsZWFkaW5nIG9yIHRyYWlsaW5nIGNvbW1lbnRzCiAgIC8vIHRvIG1vbyBvciBjb3JnZSBiZWNhdXNlIHRoZXJlIGFyZSBibGFuayBsaW5lcyBzZXBhcmF0aW5nIGl0IGZyb20KICAgLy8gYm90aC4KCiAgIC8vIERldGFjaGVkIGNvbW1lbnQgZm9yIGNvcmdlIHBhcmFncmFwaCAyLgoKICAgb3B0aW9uYWwgc3RyaW5nIGNvcmdlID0gNTsKICAg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QhkKB0FuT25lb2YSDviswx2d//////////8BIhgKFkN1c3RvbU9wdGlvbkZvb1JlcXVlc3QiGQoXQ3VzdG9tT3B0aW9uRm9vUmVzcG9uc2UiHgocQ3VzdG9tT3B0aW9uRm9vQ2xpZW50TWVzc2FnZSIeChxDdXN0b21PcHRpb25Gb29TZXJ2ZXJNZXNzYWdlIo8BChpEdW1teU1lc3NhZ2VDb250YWluaW5nRW51bSJxCgxUZXN0RW51bVR5cGUSIAocVEVTVF9PUFRJT05fRU5VTV9VTlNQRUNJRklFRBAAEhoKFlRFU1RfT1BUSU9OX0VOVU1fVFlQRTEQFhIjChZURVNUX09QVElPTl9FTlVNX1RZUEUyEOn//////////wEiIQofRHVtbXlNZXNzYWdlSW52YWxpZEFzT3B0aW9uVHlwZSKKAQocQ3VzdG9tT3B0aW9uTWluSW50ZWdlclZhbHVlczpqmdaoHQAAAAAAAACArY2vHQAAAICR7q8dAAAAAAAAAACd9a8dAAAAAPiXsB3///////////8BgMSwHf////8P+PWwHQCAk7IdALC8sh2AgICAgICAgIAB6MayHYCAgID4/////wHQ3rIdACKRAQocQ3VzdG9tT3B0aW9uTWF4SW50ZWdlclZhbHVlczpxmdaoHf////////9/rY2vHf///3+R7q8d//////////+d9a8d//////iXsB3+//////////8BgMSwHf7///8P+PWwHf///////////wGAk7Id/////w+wvLId//////////9/6MayHf////8H0N6yHQEibgoXQ3VzdG9tT3B0aW9uT3RoZXJWYWx1ZXM6U4jZoh3p//////////8BstmiHQtIZWxsbwBXb3JsZKrcoh0OSGVsbG8sICJXb3JsZCLp3KId+1mMQsrA8z/136Md54dFQejGsh2c//////////8BIjQKHFNldHRpbmdSZWFsc0Zyb21Qb3NpdGl2ZUludHM6FOncoh0AAAAAAEBjQPXfox0AAEBBIjQKHFNldHRpbmdSZWFsc0Zyb21OZWdhdGl2ZUludHM6FOncoh0AAAAAAEBjwPXfox0AAEDBImIKEkNvbXBsZXhPcHRpb25UeXBlMRIQCgNmb28YASABKAVSA2ZvbxISCgRmb28yGAIgASgFUgRmb28yEhIKBGZvbzMYAyABKAVSBGZvbzMSEgoEZm9vNBgEIAMoBVIEZm9vNCKtAwoSQ29tcGxleE9wdGlvblR5cGUyEjcKA2JhchgBIAEoCzIlLnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMVIDYmFyEhAKA2JhehgCIAEoBVIDYmF6EkwKBGZyZWQYAyABKAsyOC5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTIuQ29tcGxleE9wdGlvblR5cGU0UgRmcmVkElAKBmJhcm5leRgEIAMoCzI4LnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMi5Db21wbGV4T3B0aW9uVHlwZTRSBmJhcm5leRqrAQoSQ29tcGxleE9wdGlvblR5cGU0EhQKBXdhbGRvGAEgASgFUgV3YWxkbzJ/Cgxjb21wbGV4X29wdDQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYivXRAyABKAsyOC5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTIuQ29tcGxleE9wdGlvblR5cGU0Ugtjb21wbGV4T3B0NCImChJDb21wbGV4T3B0aW9uVHlwZTMSEAoDcXV4GAEgASgFUgNxdXgiTgoVVmFyaW91c0NvbXBsZXhPcHRpb25zOjXSqI8dAwizD/rekB0CCAmq/ZAdFgoDCOcFENsHGgMIwQIiAghlIgMI1AGi4pUdBggqIgJjWCJXCglBZ2dyZWdhdGUSDAoBaRgBIAEoBVIBaRIMCgFzGAIgASgJUgFzEi4KA3N1YhgDIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIDc3ViImQKEEFnZ3JlZ2F0ZU1lc3NhZ2USNAoJZmllbGRuYW1lGAEgASgFQhbyoYc7ERIPRmllbGRBbm5vdGF0aW9uUglmaWVsZG5hbWU6GsLRhjsVCGUSEU1lc3NhZ2VBbm5vdGF0aW9uIqQBChBOZXN0ZWRPcHRpb25UeXBlGkgKDU5lc3RlZE1lc3NhZ2USLwoMbmVzdGVkX2ZpZWxkGAEgASgFQgzB4MMd6gMAAAAAAABSC25lc3RlZEZpZWxkOgbg6cId6QciRgoKTmVzdGVkRW51bRIPCgtVTlNQRUNJRklFRBAAEh0KEU5FU1RFRF9FTlVNX1ZBTFVFEAEaBrCG+gXsBxoIxfbJHesDAAAqUgoKTWV0aG9kT3B0MRIaChZNRVRIT0RPUFQxX1VOU1BFQ0lGSUVEEAASEwoPTUVUSE9ET1BUMV9WQUwxEAESEwoPTUVUSE9ET1BUMV9WQUwyEAIqXgoNQWdncmVnYXRlRW51bRIPCgtVTlNQRUNJRklFRBAAEiUKBVZBTFVFEAEaGsr8iTsVEhNFbnVtVmFsdWVBbm5vdGF0aW9uGhWSlYg7EBIORW51bUFubm90YXRpb24yjgEKHFRlc3RTZXJ2aWNlV2l0aEN1c3RvbU9wdGlvbnMSYwoDRm9vEikucHJvdG9idWZfdW5pdHRlc3QuQ3VzdG9tT3B0aW9uRm9vUmVxdWVzdBoqLnByb3RvYnVmX3VuaXR0ZXN0LkN1c3RvbU9wdGlvbkZvb1Jlc3BvbnNlIgXg+oweAhoJkLKLHtPbgMtJMpkBChBBZ2dyZWdhdGVTZXJ2aWNlEmsKBk1ldGhvZBIjLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZU1lc3NhZ2UaIy5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVNZXNzYWdlIhfKyJY7EhIQTWV0aG9kQW5ub3RhdGlvbhoYyvuOOxMSEVNlcnZpY2VBbm5vdGF0aW9uOjwKCWZpbGVfb3B0MRIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxiOndgDIAEoBFIIZmlsZU9wdDE6RQoMbWVzc2FnZV9vcHQxEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGJyt2AMgASgFUgttZXNzYWdlT3B0MTo/CgpmaWVsZF9vcHQxEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxiIvNgDIAEoBlIJZmllbGRPcHQxOj8KCm9uZW9mX29wdDESHS5nb29nbGUucHJvdG9idWYuT25lb2ZPcHRpb25zGM+12AMgASgFUglvbmVvZk9wdDE6PAoJZW51bV9vcHQxEhwuZ29vZ2xlLnByb3RvYnVmLkVudW1PcHRpb25zGOie2QMgASgPUghlbnVtT3B0MTpLCg9lbnVtX3ZhbHVlX29wdDESIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9ucxjmoF8gASgFUg1lbnVtVmFsdWVPcHQxOkUKDHNlcnZpY2Vfb3B0MRIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxiituEDIAEoElILc2VydmljZU9wdDE6YQoLbWV0aG9kX29wdDESHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxisz+EDIAEoDjIdLnByb3RvYnVmX3VuaXR0ZXN0Lk1ldGhvZE9wdDFSCm1ldGhvZE9wdDE6PQoIYm9vbF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY6qvWAyABKAhSB2Jvb2xPcHQ6PwoJaW50MzJfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGO2o1gMgASgFUghpbnQzMk9wdDo/CglpbnQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYxqfWAyABKANSCGludDY0T3B0OkEKCnVpbnQzMl9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYsKLWAyABKA1SCXVpbnQzMk9wdDpBCgp1aW50NjRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGN+O1gMgASgEUgl1aW50NjRPcHQ6QQoKc2ludDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjAiNYDIAEoEVIJc2ludDMyT3B0OkEKCnNpbnQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY/4LWAyABKBJSCXNpbnQ2NE9wdDpDCgtmaXhlZDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjT/tUDIAEoB1IKZml4ZWQzMk9wdDpDCgtmaXhlZDY0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxji/dUDIAEoBlIKZml4ZWQ2NE9wdDpFCgxzZml4ZWQzMl9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY1fHVAyABKA9SC3NmaXhlZDMyT3B0OkUKDHNmaXhlZDY0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjjitUDIAEoEFILc2ZpeGVkNjRPcHQ6PwoJZmxvYXRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGP671AMgASgCUghmbG9hdE9wdDpBCgpkb3VibGVfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGM2r1AMgASgBUglkb3VibGVPcHQ6QQoKc3RyaW5nX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjFq9QDIAEoCVIJc3RyaW5nT3B0Oj8KCWJ5dGVzX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiWq9QDIAEoDFIIYnl0ZXNPcHQ6eQoIZW51bV9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYkavUAyABKA4yOi5wcm90b2J1Zl91bml0dGVzdC5EdW1teU1lc3NhZ2VDb250YWluaW5nRW51bS5UZXN0RW51bVR5cGVSB2VudW1PcHQ6gAEKEG1lc3NhZ2VfdHlwZV9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYr/LTAyABKAsyMi5wcm90b2J1Zl91bml0dGVzdC5EdW1teU1lc3NhZ2VJbnZhbGlkQXNPcHRpb25UeXBlUg5tZXNzYWdlVHlwZU9wdDpsCgxjb21wbGV4X29wdDESHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYpNzSAyABKAsyJS5wcm90b2J1Zl91bml0dGVzdC5Db21wbGV4T3B0aW9uVHlwZTFSC2NvbXBsZXhPcHQxOmwKDGNvbXBsZXhfb3B0MhIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjVj9IDIAEoCzIlLnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMlILY29tcGxleE9wdDI6bAoMY29tcGxleF9vcHQzEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGO+L0gMgASgLMiUucHJvdG9idWZfdW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUzUgtjb21wbGV4T3B0MzpXCgdmaWxlb3B0EhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGM/dsAcgASgLMhwucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlUgdmaWxlb3B0OlgKBm1zZ29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiY6rAHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIGbXNnb3B0OloKCGZpZWxkb3B0Eh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxie9LAHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIIZmllbGRvcHQ6VwoHZW51bW9wdBIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9ucxjSgrEHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIHZW51bW9wdDpiCgplbnVtdmFsb3B0EiEuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZU9wdGlvbnMYyZ+xByABKAsyHC5wcm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVSCmVudW12YWxvcHQ6YAoKc2VydmljZW9wdBIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxi577EHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIKc2VydmljZW9wdDpdCgltZXRob2RvcHQSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxiJ6bIHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZVIJbWV0aG9kb3B0QlWqAhpVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvc/DowR3qrcDlJPrshTsqCGQSDkZpbGVBbm5vdGF0aW9uGhYSFE5lc3RlZEZpbGVBbm5vdGF0aW9uSspGCgcSBRQA0AIBCr4GCgEMEgMUABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKMtMBIEF1dGhvcjogYmVuanlAZ29vZ2xlLmNvbSAoQmVuankgV2VpbmJlcmdlcikKICBCYXNlZCBvbiBvcmlnaW5hbCBQcm90b2NvbCBCdWZmZXJzIGRlc2lnbiBieQogIFNhbmpheSBHaGVtYXdhdCwgSmVmZiBEZWFuLCBhbmQgb3RoZXJzLgoKIEEgcHJvdG8gZmlsZSB1c2VkIHRvIHRlc3QgdGhlICJjdXN0b20gb3B0aW9ucyIgZmVhdHVyZSBvZiBnb29nbGUucHJvdG9idWYuCjLRAiBUaGlzIGZpbGUgaXMgYmFzZWQgb24gdW5pdHRlc3RfY3VzdG9tX29wdGlvbnMucHJvdG8gaW4KIHNyYy9nb29nbGUvcHJvdG9idWYsIGJ1dCBpcyBtb2RpZmllZCBmb3IgcHJvdG8zLiBJdCBjb3VsZAogcG90ZW50aWFsbHkgYmUgbW92ZWQgaW50byBzcmMvZ29vZ2xlL3Byb3RvYnVmLCBidXQgY3VycmVudGx5IEMjCiBpcyB0aGUgb25seSBsYW5ndWFnZSB0aGF0IHJlYWxseSBuZWVkcyBpdCwgYXMgd2UgZG9uJ3Qgc3VwcG9ydAogcHJvdG8yIHN5bnRheC4gSXQncyBjdXQgZG93biBzaWduaWZpY2FudGx5IGFzIHByb3RvMyBvbmx5IHN1cHBvcnRzCiBleHRlbnNpb25zIGZvciBvcHRpb25zLgoKCAoBCBIDFwAgCjUKBQiOndgDEgMXACAaJyBBIGN1c3RvbSBmaWxlIG9wdGlvbiAoZGVmaW5lZCBiZWxvdykuCgoJCgIDABIDGQAqCqABCgECEgMdABoalQEgV2UgZG9uJ3QgcHV0IHRoaXMgaW4gYSBwYWNrYWdlIHdpdGhpbiBwcm90bzIgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQogdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZG9lc24ndCBkZXBlbmQgb24gYmVpbmcgaW4gdGhlIHByb3RvMiBu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UHJvdG9idWYuVGVzdFByb3Rvcy5Qcm90bzJKxQMKBhIECQARAQq+AgoBDBIDCQASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjIoIEF1dGhvcjogbGl1amlzaUBnb29nbGUuY29tIChQaGVybCBMaXUpCgoICgECEgMLACgKCAoBCBIDDQA+CgkKAgglEgMNAD4KCgoCBAASBA8AEQEKCgoDBAABEgMPCBsKCwoEBAACABIDEAIXCgwKBQQAAgAEEgMQAgoKDAoFBAACAAUSAxALEAoMCgUEAAIAARIDEBESCgwKBQQAAgADEgMQFRYKwQwKI2NzaGFycC9wcm90b3MvdW5pdHRlc3RfaW1wb3J0LnByb3RvEh9wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yGipjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2ltcG9ydF9wdWJsaWMucHJvdG8iHQoNSW1wb3J0TWVzc2FnZRIMCgFkGAEgASgFUgFkKjwKCkltcG9ydEVudW0SDgoKSU1QT1JUX0ZPTxAHEg4KCklNUE9SVF9CQVIQCBIOCgpJTVBPUlRfQkFaEAkqMQoQSW1wb3J0RW51bUZvck1hcBILCgdVTktOT1dOEAASBwoDRk9PEAESBwoDQkFSEAJCKUgB+AEBqgIhR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3MuUHJvdG8ySo8KCgYSBA0AKwEK4AMKAQwSAw0AEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoyyQEgQXV0aG9yOiBrZW50b25AZ29vZ2xlLmNvbSAoS2VudG9uIFZhcmRhKQogIEJhc2VkIG9uIG9yaWdpbmFsIFByb3RvY29sIEJ1ZmZlcnMgZGVzaWduIGJ5CiAgU2FuamF5IEdoZW1hd2F0LCBKZWZmIERlYW4sIGFuZCBvdGhlcnMuCgogQSBwcm90byBmaWxlIHdoaWNoIGlzIGltcG9ydGVkIGJ5IHVuaXR0ZXN0LnByb3RvIHRvIHRlc3QgaW1wb3J0aW5nLgoK9QEKAQISAxMAKBrqASBXZSBkb24ndCBwdXQgdGhpcyBpbiBhIHBhY2thZ2Ugd2l0aGluIHByb3RvMiBiZWNhdXNlIHdlIG5lZWQgdG8gbWFrZSBzdXJlCiB0aGF0IHRoZSBnZW5lcmF0ZWQgY29kZSBkb2Vzbid0IGRlcGVuZCBvbiBiZWluZyBpbiB0aGUgcHJvdG8yIG5hbWVzcGFjZS4KIEluIHRlc3RfdXRpbC5oIHdlIGRvCiAidXNpbmcgbmFtZXNwYWNlIHVuaXR0ZXN0X2ltcG9ydCA9IHByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydCIuCgoICgEIEgMVABwKCQoCCAkSAxUAHAoICgEIEgMWAB8KCQoCCB8SAxYAHwoICgEIEgMXAD4KCQoCCCUSAxcAPgofCgIDABIDGgA7GhQgVGVzdCBwdWJsaWMgaW1wb3J0CgoJCgIKABIDGgcNCgoKAgQAEgQcAB4BCgoKAwQAARIDHAgVCgsKBAQAAgASAx0CFwoMCgUEAAIABBIDHQIKCgwKBQQAAgAFEgMdCxAKDAoFBAACAAESAx0REgoMCgUEAAIAAxIDHRUWCgoKAgUAEgQgACQBCgoKAwUAARIDIAUPCgsKBAUAAgASAyECEQoMCgUFAAIAARIDIQIMCgwKBQUAAgACEgMhDxAKCwoEBQACARIDIgIRCgwKBQUAAgEBEgMiAgwKDAoFBQACAQISAyIPEAoLCgQFAAICEgMjAhEKDAoFBQACAgESAyMCDAoMCgUFAAICAhIDIw8QCkgKAgUBEgQnACsBGjwgVG8gdXNlIGFuIGVudW0gaW4gYSBtYXAsIGl0IG11c3QgaGFzIHRoZSBmaXJzdCB2YWx1ZSBhcyAwLgoKCgoDBQEBEgMnBRUKCwoEBQECABIDKAIOCgwKBQUBAgABEgMoAgkKDAoFBQECAAISAygMDQoLCgQFAQIBEgMpAgoKDAoFBQECAQESAykCBQoMCgUFAQIBAhIDKQgJCgsKBAUBAgISAyoCCgoMCgUFAQICARIDKgIFCgwKBQUBAgICEgMqCAlQAAqixwUKHGNzaGFycC9wcm90b3MvdW5pdHRlc3QucHJvdG8SGHByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMhojY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pbXBvcnQucHJvdG8ijSQKDFRlc3RBbGxUeXBlcxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxJaCg1vcHRpb25hbGdyb3VwGBAgASgKMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5PcHRpb25hbEdyb3VwUg1vcHRpb25hbGdyb3VwEmwKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USYgoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUhZvcHRpb25hbEZvcmVpZ25NZXNzYWdlEmYKF29wdGlvbmFsX2ltcG9ydF9tZXNzYWdlGBQgASgLMi4ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRNZXNzYWdlUhVvcHRpb25hbEltcG9ydE1lc3NhZ2USYwoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEm9wdGlvbmFsTmVzdGVkRW51bRJZChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SE29wdGlvbmFsRm9yZWlnbkVudW0SXQoUb3B0aW9uYWxfaW1wb3J0X2VudW0YFyABKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW1SEm9wdGlvbmFsSW1wb3J0RW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSeQoeb3B0aW9uYWxfcHVibGljX2ltcG9ydF9tZXNzYWdlGBogASgLMjQucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5QdWJsaWNJbXBvcnRNZXNzYWdlUhtvcHRpb25hbFB1YmxpY0ltcG9ydE1lc3NhZ2USbAoVb3B0aW9uYWxfbGF6eV9tZXNzYWdlGBsgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlQgIoAVITb3B0aW9uYWxMYXp5TWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJaCg1yZXBlYXRlZGdyb3VwGC4gAygKMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5SZXBlYXRlZEdyb3VwUg1yZXBlYXRlZGdyb3VwEmwKF3JlcGVhdGVkX25lc3RlZF9tZXNzYWdlGDAgAygLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USYgoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEmYKF3JlcGVhdGVkX2ltcG9ydF9tZXNzYWdlGDIgAygLMi4ucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRNZXNzYWdlUhVyZXBlYXRlZEltcG9ydE1lc3NhZ2USYwoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJZChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SE3JlcGVhdGVkRm9yZWlnbkVudW0SXQoUcmVwZWF0ZWRfaW1wb3J0X2VudW0YNSADKA4yKy5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydEVudW1SEnJlcGVhdGVkSW1wb3J0RW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSaAoVcmVwZWF0ZWRfbGF6eV9tZXNzYWdlGDkgAygLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhNyZXBlYXRlZExhenlNZXNzYWdlEicKDWRlZmF1bHRfaW50MzIYPSABKAU6AjQxUgxkZWZhdWx0SW50MzISJwoNZGVmYXVsdF9pbnQ2NBg+IAEoAzoCNDJSDGRlZmF1bHRJbnQ2NBIpCg5kZWZhdWx0X3VpbnQzMhg/IAEoDToCNDNSDWRlZmF1bHRVaW50MzISKQoOZGVmYXVsdF91aW50NjQYQCABKAQ6AjQ0Ug1kZWZhdWx0VWludDY0EioKDmRlZmF1bHRfc2ludDMyGEEgASgROgMtNDVSDWRlZmF1bHRTaW50MzISKQoOZGVmYXVsdF9zaW50NjQYQiABKBI6AjQ2Ug1kZWZhdWx0U2ludDY0EisKD2RlZmF1bHRfZml4ZWQzMhhDIAEoBzoCNDdSDmRlZmF1bHRGaXhlZDMyEisKD2RlZmF1bHRfZml4ZWQ2NBhEIAEoBjoCNDhSDmRlZmF1bHRGaXhlZDY0Ei0KEGRlZmF1bHRfc2ZpeGVkMzIYRSABKA86AjQ5Ug9kZWZhdWx0U2ZpeGVkMzISLgoQZGVmYXVsdF9zZml4ZWQ2NBhGIAEoEDoDLTUwUg9kZWZhdWx0U2ZpeGVkNjQSKQoNZGVmYXVsdF9mbG9hdBhHIAEoAjoENTEuNVIMZGVmYXVsdEZsb2F0EiwKDmRlZmF1bHRfZG91YmxlGEggASgBOgU1MjAwMFINZGVmYXVsdERvdWJsZRInCgxkZWZhdWx0X2Jvb2wYSSABKAg6BHRydWVSC2RlZmF1bHRCb29sEiwKDmRlZmF1bHRfc3RyaW5nGEogASgJOgVoZWxsb1INZGVmYXVsdFN0cmluZxIqCg1kZWZhdWx0X2J5dGVzGEsgASgMOgV3b3JsZFIMZGVmYXVsdEJ5dGVzEmYKE2RlZmF1bHRfbmVzdGVkX2VudW0YUSABKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW06A0JBUlIRZGVmYXVsdE5lc3RlZEVudW0SZAoUZGVmYXVsdF9mb3JlaWduX2VudW0YUiABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW06C0ZPUkVJR05fQkFSUhJkZWZhdWx0Rm9yZWlnbkVudW0SZwoTZGVmYXVsdF9pbXBvcnRfZW51bRhTIAEoDjIrLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0RW51bToKSU1QT1JUX0JBUlIRZGVmYXVsdEltcG9ydEVudW0SOQoUZGVmYXVsdF9zdHJpbmdfcGllY2UYVCABKAk6A2FiY0ICCAJSEmRlZmF1bHRTdHJpbmdQaWVjZRIqCgxkZWZhdWx0X2NvcmQYVSABKAk6AzEyM0ICCAFSC2RlZmF1bHRDb3JkEiMKDG9uZW9mX3VpbnQzMhhvIAEoDUgAUgtvbmVvZlVpbnQzMhJoChRvbmVvZl9uZXN0ZWRfbWVzc2FnZRhwIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMaHwoNTmVzdGVkTWVzc2FnZRIOCgJiYhgBIAEoBVICYmIaHQoNT3B0aW9uYWxHcm91cBIMCgFhGBEgASgFUgFhGh0KDVJlcGVhdGVkR3JvdXASDAoBYRgvIAEoBVIBYSI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxABEgcKA0JBUhACEgcKA0JBWhADEhAKA05FRxD///////////8BQg0KC29uZW9mX2ZpZWxkIu8BChJOZXN0ZWRUZXN0QWxsVHlwZXMSQgoFY2hpbGQYASABKAsyLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuTmVzdGVkVGVzdEFsbFR5cGVzUgVjaGlsZBJACgdwYXlsb2FkGAIgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IHcGF5bG9hZBJTCg5yZXBlYXRlZF9jaGlsZBgDIAMoCzIsLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5OZXN0ZWRUZXN0QWxsVHlwZXNSDXJlcGVhdGVkQ2hpbGQilgEKFFRlc3REZXByZWNhdGVkRmllbGRzEi0KEGRlcHJlY2F0ZWRfaW50MzIYASABKAVCAhgBUg9kZXByZWNhdGVkSW50MzISPwoZZGVwcmVjYXRlZF9pbnQzMl9pbl9vbmVvZhgCIAEoBUICGAFIAFIWZGVwcmVjYXRlZEludDMySW5PbmVvZkIOCgxvbmVvZl9maWVsZHMiGwoVVGVzdERlcHJlY2F0ZWRNZXNzYWdlOgIYASIsCg5Gb3JlaWduTWVzc2FnZRIMCgFjGAEgASgFUgFjEgwKAWQYAiABKAVSAWQiMAoSVGVzdFJlc2VydmVkRmllbGRzSgQIAhADSgQIDxAQSgQICRAMUgNiYXJSA2JheiIdChFUZXN0QWxsRXh0ZW5zaW9ucyoICAEQgICAgAIiJwoXT3B0aW9uYWxHcm91cF9leHRlbnNpb24SDAoBYRgRIAEoBVIBYSInChdSZXBlYXRlZEdyb3VwX2V4dGVuc2lvbhIMCgFhGC8gASgFUgFhIt4BCglUZXN0R3JvdXASVwoNb3B0aW9uYWxncm91cBgQIAEoCjIxLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0R3JvdXAuT3B0aW9uYWxHcm91cFINb3B0aW9uYWxncm91cBJZChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SE29wdGlvbmFsRm9yZWlnbkVudW0aHQoNT3B0aW9uYWxHcm91cBIMCgFhGBEgASgFUgFhIh4KElRlc3RHcm91cEV4dGVuc2lvbioICAEQgICAgAIiuAQKE1Rlc3ROZXN0ZWRFeHRlbnNpb24aJwoXT3B0aW9uYWxHcm91cF9leHRlbnNpb24SDAoBYRgRIAEoBVIBYTJGCgR0ZXN0EisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGOoHIAEoCToEdGVzdFIEdGVzdDJkChduZXN0ZWRfc3RyaW5nX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxjrByABKAlSFW5lc3RlZFN0cmluZ0V4dGVuc2lvbjKsAQoXb3B0aW9uYWxncm91cF9leHRlbnNpb24SLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEdyb3VwRXh0ZW5zaW9uGBAgASgKMkUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3ROZXN0ZWRFeHRlbnNpb24uT3B0aW9uYWxHcm91cF9leHRlbnNpb25SFm9wdGlvbmFsZ3JvdXBFeHRlbnNpb24ymgEKH29wdGlvbmFsX2ZvcmVpZ25fZW51bV9leHRlbnNpb24SLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEdyb3VwRXh0ZW5zaW9uGBYgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtUhxvcHRpb25hbEZvcmVpZ25FbnVtRXh0ZW5zaW9uIpAICgxUZXN0UmVxdWlyZWQSDAoBYRgBIAIoBVIBYRIWCgZkdW1teTIYAiABKAVSBmR1bW15MhIMCgFiGAMgAigFUgFiEhYKBmR1bW15NBgEIAEoBVIGZHVtbXk0EhYKBmR1bW15NRgFIAEoBVIGZHVtbXk1EhYKBmR1bW15NhgGIAEoBVIGZHVtbXk2EhYKBmR1bW15NxgHIAEoBVIGZHVtbXk3EhYKBmR1bW15OBgIIAEoBVIGZHVtbXk4EhYKBmR1bW15ORgJIAEoBVIGZHVtbXk5EhgKB2R1bW15MTAYCiABKAVSB2R1bW15MTASGAoHZHVtbXkxMRgLIAEoBVIHZHVtbXkxMRIYCgdkdW1teTEyGAwgASgFUgdkdW1teTEyEhgKB2R1bW15MTMYDSABKAVSB2R1bW15MTMSGAoHZHVtbXkxNBgOIAEoBVIHZHVtbXkxNBIYCgdkdW1teTE1GA8gASgFUgdkdW1teTE1EhgKB2R1bW15MTYYECABKAVSB2R1bW15MTYSGAoHZHVtbXkxNxgRIAEoBVIHZHVtbXkxNxIYCgdkdW1teTE4GBIgASgFUgdkdW1teTE4EhgKB2R1bW15MTkYEyABKAVSB2R1bW15MTkSGAoHZHVtbXkyMBgUIAEoBVIHZHVtbXkyMBIYCgdkdW1teTIxGBUgASgFUgdkdW1teTIxEhgKB2R1bW15MjIYFiABKAVSB2R1bW15MjISGAoHZHVtbXkyMxgXIAEoBVIHZHVtbXkyMxIYCgdkdW1teTI0GBggASgFUgdkdW1teTI0EhgKB2R1bW15MjUYGSABKAVSB2R1bW15MjUSGAoHZHVtbXkyNhgaIAEoBVIHZHVtbXkyNhIYCgdkdW1teTI3GBsgASgFUgdkdW1teTI3EhgKB2R1bW15MjgYHCABKAVSB2R1bW15MjgSGAoHZHVtbXkyORgdIAEoBVIHZHVtbXkyORIYCgdkdW1teTMwGB4gASgFUgdkdW1teTMwEhgKB2R1bW15MzEYHyABKAVSB2R1bW15MzESGAoHZHVtbXkzMhggIAEoBVIHZHVtbXkzMhIMCgFjGCEgAigFUgFjMmwKBnNpbmdsZRIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxjoByABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFJlcXVpcmVkUgZzaW5nbGUyagoFbXVsdGkSKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMY6QcgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZFIFbXVsdGki0QEKE1Rlc3RSZXF1aXJlZEZvcmVpZ24SUQoQb3B0aW9uYWxfbWVzc2FnZRgBIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRSD29wdGlvbmFsTWVzc2FnZRJRChByZXBlYXRlZF9tZXNzYWdlGAIgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZFIPcmVwZWF0ZWRNZXNzYWdlEhQKBWR1bW15GAMgASgFUgVkdW1teSKOAgoTVGVzdFJlcXVpcmVkTWVzc2FnZRJRChBvcHRpb25hbF9tZXNzYWdlGAEgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZFIPb3B0aW9uYWxNZXNzYWdlElEKEHJlcGVhdGVkX21lc3NhZ2UYAiADKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFJlcXVpcmVkUg9yZXBlYXRlZE1lc3NhZ2USUQoQcmVxdWlyZWRfbWVzc2FnZRgDIAIoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UmVxdWlyZWRSD3JlcXVpcmVkTWVzc2FnZSJwChFUZXN0Rm9yZWlnbk5lc3RlZBJbCg5mb3JlaWduX25lc3RlZBgBIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVINZm9yZWlnbk5lc3RlZCISChBUZXN0RW1wdHlNZXNzYWdlIioKHlRlc3RFbXB0eU1lc3NhZ2VXaXRoRXh0ZW5zaW9ucyoICAEQgICAgAIiNwobVGVzdE11bHRpcGxlRXh0ZW5zaW9uUmFuZ2VzKgQIKhArKgYIryAQlCEqCgiAgAQQgICAgAIiOwoYVGVzdFJlYWxseUxhcmdlVGFnTnVtYmVyEgwKAWEYASABKAVSAWESEQoCYmIY////fyABKAVSAmJiImIKFFRlc3RSZWN1cnNpdmVNZXNzYWdlEjwKAWEYASABKAsyLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFJlY3Vyc2l2ZU1lc3NhZ2VSAWESDAoBaRgCIAEoBVIBaSKvAwoUVGVzdE11dHVhbFJlY3Vyc2lvbkESPgoCYmIYASABKAsyLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE11dHVhbFJlY3Vyc2lvbkJSAmJiElMKCHN1Ymdyb3VwGAIgASgKMjcucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RNdXR1YWxSZWN1cnNpb25BLlN1Ykdyb3VwUghzdWJncm91cBpKCgpTdWJNZXNzYWdlEjwKAWIYASABKAsyLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE11dHVhbFJlY3Vyc2lvbkJSAWIatQEKCFN1Ykdyb3VwEloKC3N1Yl9tZXNzYWdlGAMgASgLMjkucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RNdXR1YWxSZWN1cnNpb25BLlN1Yk1lc3NhZ2VSCnN1Yk1lc3NhZ2USTQoPbm90X2luX3RoaXNfc2NjGAQgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IMbm90SW5UaGlzU2NjInsKFFRlc3RNdXR1YWxSZWN1cnNpb25CEjwKAWEYASABKAsyLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE11dHVhbFJlY3Vyc2lvbkFSAWESJQoOb3B0aW9uYWxfaW50MzIYAiABKAVSDW9wdGlvbmFsSW50MzIi8gEKEVRlc3RJc0luaXRpYWxpemVkElcKC3N1Yl9tZXNzYWdlGAEgASgLMjYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RJc0luaXRpYWxpemVkLlN1Yk1lc3NhZ2VSCnN1Yk1lc3NhZ2UagwEKClN1Yk1lc3NhZ2USWwoIc3ViZ3JvdXAYASABKAoyPy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdElzSW5pdGlhbGl6ZWQuU3ViTWVzc2FnZS5TdWJHcm91cFIIc3ViZ3JvdXAaGAoIU3ViR3JvdXASDAoBaRgCIAIoBVIBaSLUAQoSVGVzdER1cEZpZWxkTnVtYmVyEgwKAWEYASABKAVSAWESQgoDZm9vGAIgASgKMjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3REdXBGaWVsZE51bWJlci5Gb29SA2ZvbxJCCgNiYXIYAyABKAoyMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdER1cEZpZWxkTnVtYmVyLkJhclIDYmFyGhMKA0ZvbxIMCgFhGAEgASgFUgFhGhMKA0JhchIMCgFhGAEgASgFUgFhIl8KEFRlc3RFYWdlck1lc3NhZ2USSwoLc3ViX21lc3NhZ2UYASABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzQgIoAFIKc3ViTWVzc2FnZSJeCg9UZXN0TGF6eU1lc3NhZ2USSwoLc3ViX21lc3NhZ2UYASABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzQgIoAVIKc3ViTWVzc2FnZSLmAgoYVGVzdE5lc3RlZE1lc3NhZ2VIYXNCaXRzEngKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGAEgASgLMkAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3ROZXN0ZWRNZXNzYWdlSGFzQml0cy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2UazwEKDU5lc3RlZE1lc3NhZ2USQAocbmVzdGVkbWVzc2FnZV9yZXBlYXRlZF9pbnQzMhgBIAMoBVIabmVzdGVkbWVzc2FnZVJlcGVhdGVkSW50MzISfAolbmVzdGVkbWVzc2FnZV9yZXBlYXRlZF9mb3JlaWdubWVzc2FnZRgCIAMoCzIoLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduTWVzc2FnZVIjbmVzdGVkbWVzc2FnZVJlcGVhdGVkRm9yZWlnbm1lc3NhZ2Ui1wUKF1Rlc3RDYW1lbENhc2VGaWVsZE5hbWVzEiYKDlByaW1pdGl2ZUZpZWxkGAEgASgFUg5QcmltaXRpdmVGaWVsZBIgCgtTdHJpbmdGaWVsZBgCIAEoCVILU3RyaW5nRmllbGQSQwoJRW51bUZpZWxkGAMgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtUglFbnVtRmllbGQSTAoMTWVzc2FnZUZpZWxkGAQgASgLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUgxNZXNzYWdlRmllbGQSLgoQU3RyaW5nUGllY2VGaWVsZBgFIAEoCUICCAJSEFN0cmluZ1BpZWNlRmllbGQSIAoJQ29yZEZpZWxkGAYgASgJQgIIAVIJQ29yZEZpZWxkEjYKFlJlcGVhdGVkUHJpbWl0aXZlRmllbGQYByADKAVSFlJlcGVhdGVkUHJpbWl0aXZlRmllbGQSMAoTUmVwZWF0ZWRTdHJpbmdGaWVsZBgIIAMoCVITUmVwZWF0ZWRTdHJpbmdGaWVsZBJTChFSZXBlYXRlZEVudW1GaWVsZBgJIAMoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bVIRUmVwZWF0ZWRFbnVtRmllbGQSXAoUUmVwZWF0ZWRNZXNzYWdlRmllbGQYCiADKAsyKC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbk1lc3NhZ2VSFFJlcGVhdGVkTWVzc2FnZUZpZWxkEj4KGFJlcGVhdGVkU3RyaW5nUGllY2VGaWVsZBgLIAMoCUICCAJSGFJlcGVhdGVkU3RyaW5nUGllY2VGaWVsZBIwChFSZXBlYXRlZENvcmRGaWVsZBgMIAMoCUICCAFSEVJlcGVhdGVkQ29yZEZpZWxkIpUCChJUZXN0RmllbGRPcmRlcmluZ3MSGwoJbXlfc3RyaW5nGAsgASgJUghteVN0cmluZxIVCgZteV9pbnQYASABKANSBW15SW50EhkKCG15X2Zsb2F0GGUgASgCUgdteUZsb2F0EnMKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGMgBIAEoCzI6LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RmllbGRPcmRlcmluZ3MuTmVzdGVkTWVzc2FnZVIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdlGi8KDU5lc3RlZE1lc3NhZ2USDgoCb28YAiABKANSAm9vEg4KAmJiGAEgASgFUgJiYioECAIQCyoECAwQZSLIAQoXVGVzdEV4dGVuc2lvbk9yZGVyaW5nczESGwoJbXlfc3RyaW5nGAEgASgJUghteVN0cmluZzKPAQoTdGVzdF9leHRfb3JkZXJpbmdzMRIsLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RmllbGRPcmRlcmluZ3MYDSABKAsyMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEV4dGVuc2lvbk9yZGVyaW5nczFSEXRlc3RFeHRPcmRlcmluZ3MxIqsDChdUZXN0RXh0ZW5zaW9uT3JkZXJpbmdzMhIbCglteV9zdHJpbmcYASABKAlSCG15U3RyaW5nGuABChdUZXN0RXh0ZW5zaW9uT3JkZXJpbmdzMxIbCglteV9zdHJpbmcYASABKAlSCG15U3RyaW5nMqcBChN0ZXN0X2V4dF9vcmRlcmluZ3MzEiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RGaWVsZE9yZGVyaW5ncxgOIAEoCzJJLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RXh0ZW5zaW9uT3JkZXJpbmdzMi5UZXN0RXh0ZW5zaW9uT3JkZXJpbmdzM1IRdGVzdEV4dE9yZGVyaW5nczMyjwEKE3Rlc3RfZXh0X29yZGVyaW5nczISLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEZpZWxkT3JkZXJpbmdzGAwgASgLMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RFeHRlbnNpb25PcmRlcmluZ3MyUhF0ZXN0RXh0T3JkZXJpbmdzMiKvCgoYVGVzdEV4dHJlbWVEZWZhdWx0VmFsdWVzEk0KDWVzY2FwZWRfYnl0ZXMYASABKAw6KFwwMDBcMDAxXDAwN1wwMTBcMDE0XG5cclx0XDAxM1xcXCdcIlwzNzZSDGVzY2FwZWRCeXRlcxItCgxsYXJnZV91aW50MzIYAiABKA06CjQyOTQ5NjcyOTVSC2xhcmdlVWludDMyEjcKDGxhcmdlX3VpbnQ2NBgDIAEoBDoUMTg0NDY3NDQwNzM3MDk1NTE2MTVSC2xhcmdlVWludDY0EiwKC3NtYWxsX2ludDMyGAQgASgFOgstMjE0NzQ4MzY0N1IKc21hbGxJbnQzMhI1CgtzbWFsbF9pbnQ2NBgFIAEoAzoULTkyMjMzNzIwMzY4NTQ3NzU4MDdSCnNtYWxsSW50NjQSOQoScmVhbGx5X3NtYWxsX2ludDMyGBUgASgFOgstMjE0NzQ4MzY0OFIQcmVhbGx5U21hbGxJbnQzMhJCChJyZWFsbHlfc21hbGxfaW50NjQYFiABKAM6FC05MjIzMzcyMDM2ODU0Nzc1ODA4UhByZWFsbHlTbWFsbEludDY0EiQKC3V0Zjhfc3RyaW5nGAYgASgJOgPhiLRSCnV0ZjhTdHJpbmcSIAoKemVyb19mbG9hdBgHIAEoAjoBMFIJemVyb0Zsb2F0Eh4KCW9uZV9mbG9hdBgIIAEoAjoBMVIIb25lRmxvYXQSJAoLc21hbGxfZmxvYXQYCSABKAI6AzEuNVIKc21hbGxGbG9hdBIwChJuZWdhdGl2ZV9vbmVfZmxvYXQYCiABKAI6Ai0xUhBuZWdhdGl2ZU9uZUZsb2F0EisKDm5lZ2F0aXZlX2Zsb2F0GAsgASgCOgQtMS41Ug1uZWdhdGl2ZUZsb2F0EiYKC2xhcmdlX2Zsb2F0GAwgASgCOgUyZSswOFIKbGFyZ2VGbG9hdBI4ChRzbWFsbF9uZWdhdGl2ZV9mbG9hdBgNIAEoAjoGLThlLTI4UhJzbWFsbE5lZ2F0aXZlRmxvYXQSIgoKaW5mX2RvdWJsZRgOIAEoAToDaW5mUglpbmZEb3VibGUSKgoObmVnX2luZl9kb3VibGUYDyABKAE6BC1pbmZSDG5lZ0luZkRvdWJsZRIiCgpuYW5fZG91YmxlGBAgASgBOgNuYW5SCW5hbkRvdWJsZRIgCglpbmZfZmxvYXQYESABKAI6A2luZlIIaW5mRmxvYXQSKAoNbmVnX2luZl9mbG9hdBgSIAEoAjoELWluZlILbmVnSW5mRmxvYXQSIAoJbmFuX2Zsb2F0GBMgASgCOgNuYW5SCG5hbkZsb2F0EjgKDGNwcF90cmlncmFwaBgUIAEoCToVPyA/ID8/ID8/ID8/PyA/Py8gPz8tUgtjcHBUcmlncmFwaBIwChBzdHJpbmdfd2l0aF96ZXJvGBcgASgJOgZoZWwAbG9SDnN0cmluZ1dpdGhaZXJvEjEKD2J5dGVzX3dpdGhfemVybxgYIAEoDDoJd29yXDAwMGxkUg1ieXRlc1dpdGhaZXJvEj0KFnN0cmluZ19waWVjZV93aXRoX3plcm8YGSABKAk6BGFiAGNCAggCUhNzdHJpbmdQaWVjZVdpdGhaZXJvEi4KDmNvcmRfd2l0aF96ZXJvGBogASgJOgQxMgAzQgIIAVIMY29yZFdpdGhaZXJvEjkKEnJlcGxhY2VtZW50X3N0cmluZxgbIAEoCToKJHt1bmtub3dufVIRcmVwbGFjZW1lbnRTdHJpbmciXgoRU3BhcnNlRW51bU1lc3NhZ2USSQoLc3BhcnNlX2VudW0YASABKA4yKC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFNwYXJzZUVudW1SCnNwYXJzZUVudW0iHwoJT25lU3RyaW5nEhIKBGRhdGEYASABKAlSBGRhdGEiIAoKTW9yZVN0cmluZxISCgRkYXRhGAEgAygJUgRkYXRhIh4KCE9uZUJ5dGVzEhIKBGRhdGEYASABKAxSBGRhdGEiHwoJTW9yZUJ5dGVzEhIKBGRhdGEYASADKAxSBGRhdGEiIgoMSW50MzJNZXNzYWdlEhIKBGRhdGEYASABKAVSBGRhdGEiIwoNVWludDMyTWVzc2FnZRISCgRkYXRhGAEgASgNUgRkYXRhIiIKDEludDY0TWVzc2FnZRISCgRkYXRhGAEgASgDUgRkYXRhIiMKDVVpbnQ2NE1lc3NhZ2USEgoEZGF0YRgBIAEoBFIEZGF0YSIhCgtCb29sTWVzc2FnZRISCgRkYXRhGAEgASgIUgRkYXRhIo0CCglUZXN0T25lb2YSGQoHZm9vX2ludBgBIAEoBUgAUgZmb29JbnQSHwoKZm9vX3N0cmluZxgCIAEoCUgAUglmb29TdHJpbmcSSQoLZm9vX21lc3NhZ2UYAyABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzSABSCmZvb01lc3NhZ2USSgoIZm9vZ3JvdXAYBCABKAoyLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mLkZvb0dyb3VwSABSCGZvb2dyb3VwGiYKCEZvb0dyb3VwEgwKAWEYBSABKAVSAWESDAoBYhgGIAEoCVIBYkIFCgNmb28ipAIKHFRlc3RPbmVvZkJhY2t3YXJkc0NvbXBhdGlibGUSFwoHZm9vX2ludBgBIAEoBVIGZm9vSW50Eh0KCmZvb19zdHJpbmcYAiABKAlSCWZvb1N0cmluZxJHCgtmb29fbWVzc2FnZRgDIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSCmZvb01lc3NhZ2USWwoIZm9vZ3JvdXAYBCABKAoyPy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mQmFja3dhcmRzQ29tcGF0aWJsZS5Gb29Hcm91cFIIZm9vZ3JvdXAaJgoIRm9vR3JvdXASDAoBYRgFIAEoBVIBYRIMCgFiGAYgASgJUgFiIpAICgpUZXN0T25lb2YyEhkKB2Zvb19pbnQYASABKAVIAFIGZm9vSW50Eh8KCmZvb19zdHJpbmcYAiABKAlIAFIJZm9vU3RyaW5nEh8KCGZvb19jb3JkGAMgASgJQgIIAUgAUgdmb29Db3JkEi4KEGZvb19zdHJpbmdfcGllY2UYBCABKAlCAggCSABSDmZvb1N0cmluZ1BpZWNlEh0KCWZvb19ieXRlcxgFIAEoDEgAUghmb29CeXRlcxJMCghmb29fZW51bRgGIAEoDjIvLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0T25lb2YyLk5lc3RlZEVudW1IAFIHZm9vRW51bRJVCgtmb29fbWVzc2FnZRgHIAEoCzIyLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0T25lb2YyLk5lc3RlZE1lc3NhZ2VIAFIKZm9vTWVzc2FnZRJLCghmb29ncm91cBgIIAEoCjItLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0T25lb2YyLkZvb0dyb3VwSABSCGZvb2dyb3VwEmIKEGZvb19sYXp5X21lc3NhZ2UYCyABKAsyMi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdE9uZW9mMi5OZXN0ZWRNZXNzYWdlQgIoAUgAUg5mb29MYXp5TWVzc2FnZRIcCgdiYXJfaW50GAwgASgFOgE1SAFSBmJhckludBInCgpiYXJfc3RyaW5nGA0gASgJOgZTVFJJTkdIAVIJYmFyU3RyaW5nEiUKCGJhcl9jb3JkGA4gASgJOgRDT1JEQgIIAUgBUgdiYXJDb3JkEjYKEGJhcl9zdHJpbmdfcGllY2UYDyABKAk6BlNQSUVDRUICCAJIAVIOYmFyU3RyaW5nUGllY2USJAoJYmFyX2J5dGVzGBAgASgMOgVCWVRFU0gBUghiYXJCeXRlcxJRCghiYXJfZW51bRgRIAEoDjIvLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0T25lb2YyLk5lc3RlZEVudW06A0JBUkgBUgdiYXJFbnVtEhcKB2Jhel9pbnQYEiABKAVSBmJhekludBIiCgpiYXpfc3RyaW5nGBMgASgJOgNCQVpSCWJhelN0cmluZxomCghGb29Hcm91cBIMCgFhGAkgASgFUgFhEgwKAWIYCiABKAlSAWIaRQoNTmVzdGVkTWVzc2FnZRIXCgdxdXhfaW50GAEgASgDUgZxdXhJbnQSGwoJY29yZ2VfaW50GAIgAygFUghjb3JnZUludCInCgpOZXN0ZWRFbnVtEgcKA0ZPTxABEgcKA0JBUhACEgcKA0JBWhADQgUKA2Zvb0IFCgNiYXIi7gEKEVRlc3RSZXF1aXJlZE9uZW9mEhkKB2Zvb19pbnQYASABKAVIAFIGZm9vSW50Eh8KCmZvb19zdHJpbmcYAiABKAlIAFIJZm9vU3RyaW5nElwKC2Zvb19tZXNzYWdlGAMgASgLMjkucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZE9uZW9mLk5lc3RlZE1lc3NhZ2VIAFIKZm9vTWVzc2FnZRo4Cg1OZXN0ZWRNZXNzYWdlEicKD3JlcXVpcmVkX2RvdWJsZRgBIAIoAVIOcmVxdWlyZWREb3VibGVCBQoDZm9vIoACCg9UZXN0UmVxdWlyZWRNYXASRAoDZm9vGAEgAygLMjIucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZE1hcC5Gb29FbnRyeVIDZm9vGm8KCEZvb0VudHJ5EhAKA2tleRgBIAEoBVIDa2V5Ek0KBXZhbHVlGAIgASgLMjcucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RSZXF1aXJlZE1hcC5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaNgoNTmVzdGVkTWVzc2FnZRIlCg5yZXF1aXJlZF9pbnQzMhgBIAIoBVINcmVxdWlyZWRJbnQzMiL0BAoPVGVzdFBhY2tlZFR5cGVzEiUKDHBhY2tlZF9pbnQzMhhaIAMoBUICEAFSC3BhY2tlZEludDMyEiUKDHBhY2tlZF9pbnQ2NBhbIAMoA0ICEAFSC3BhY2tlZEludDY0EicKDXBhY2tlZF91aW50MzIYXCADKA1CAhABUgxwYWNrZWRVaW50MzISJwoNcGFja2VkX3VpbnQ2NBhdIAMoBEICEAFSDHBhY2tlZFVpbnQ2NBInCg1wYWNrZWRfc2ludDMyGF4gAygRQgIQAVIMcGFja2VkU2ludDMyEicKDXBhY2tlZF9zaW50NjQYXyADKBJCAhABUgxwYWNrZWRTaW50NjQSKQoOcGFja2VkX2ZpeGVkMzIYYCADKAdCAhABUg1wYWNrZWRGaXhlZDMyEikKDnBhY2tlZF9maXhlZDY0GGEgAygGQgIQAVINcGFja2VkRml4ZWQ2NBIrCg9wYWNrZWRfc2ZpeGVkMzIYYiADKA9CAhABUg5wYWNrZWRTZml4ZWQzMhIrCg9wYWNrZWRfc2ZpeGVkNjQYYyADKBBCAhABUg5wYWNrZWRTZml4ZWQ2NBIlCgxwYWNrZWRfZmxvYXQYZCADKAJCAhABUgtwYWNrZWRGbG9hdBInCg1wYWNrZWRfZG91YmxlGGUgAygBQgIQAVIMcGFja2VkRG91YmxlEiMKC3BhY2tlZF9ib29sGGYgAygIQgIQAVIKcGFja2VkQm9vbBJKCgtwYWNrZWRfZW51bRhnIAMoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bUICEAFSCnBhY2tlZEVudW0irgUKEVRlc3RVbnBhY2tlZFR5cGVzEikKDnVucGFja2VkX2ludDMyGFogAygFQgIQAFINdW5wYWNrZWRJbnQzMhIpCg51bnBhY2tlZF9pbnQ2NBhbIAMoA0ICEABSDXVucGFja2VkSW50NjQSKwoPdW5wYWNrZWRfdWludDMyGFwgAygNQgIQAFIOdW5wYWNrZWRVaW50MzISKwoPdW5wYWNrZWRfdWludDY0GF0gAygEQgIQAFIOdW5wYWNrZWRVaW50NjQSKwoPdW5wYWNrZWRfc2ludDMyGF4gAygRQgIQAFIOdW5wYWNrZWRTaW50MzISKwoPdW5wYWNrZWRfc2ludDY0GF8gAygSQgIQAFIOdW5wYWNrZWRTaW50NjQSLQoQdW5wYWNrZWRfZml4ZWQzMhhgIAMoB0ICEABSD3VucGFja2VkRml4ZWQzMhItChB1bnBhY2tlZF9maXhlZDY0GGEgAygGQgIQAFIPdW5wYWNrZWRGaXhlZDY0Ei8KEXVucGFja2VkX3NmaXhlZDMyGGIgAygPQgIQAFIQdW5wYWNrZWRTZml4ZWQzMhIvChF1bnBhY2tlZF9zZml4ZWQ2NBhjIAMoEEICEABSEHVucGFja2VkU2ZpeGVkNjQSKQoOdW5wYWNrZWRfZmxvYXQYZCADKAJCAhAAUg11bnBhY2tlZEZsb2F0EisKD3VucGFja2VkX2RvdWJsZRhlIAMoAUICEABSDnVucGFja2VkRG91YmxlEicKDXVucGFja2VkX2Jvb2wYZiADKAhCAhAAUgx1bnBhY2tlZEJvb2wSTgoNdW5wYWNrZWRfZW51bRhnIAMoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bUICEABSDHVucGFja2VkRW51bSIgChRUZXN0UGFja2VkRXh0ZW5zaW9ucyoICAEQgICAgAIiIgoWVGVzdFVucGFja2VkRXh0ZW5zaW9ucyoICAEQgICAgAIiyAUKFVRlc3REeW5hbWljRXh0ZW5zaW9ucxIqChBzY2FsYXJfZXh0ZW5zaW9uGNAPIAEoB1IPc2NhbGFyRXh0ZW5zaW9uEk0KDmVudW1fZXh0ZW5zaW9uGNEPIAEoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bVINZW51bUV4dGVuc2lvbhJ2ChZkeW5hbWljX2VudW1fZXh0ZW5zaW9uGNIPIAEoDjI/LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0RHluYW1pY0V4dGVuc2lvbnMuRHluYW1pY0VudW1UeXBlUhRkeW5hbWljRW51bUV4dGVuc2lvbhJWChFtZXNzYWdlX2V4dGVuc2lvbhjTDyABKAsyKC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbk1lc3NhZ2VSEG1lc3NhZ2VFeHRlbnNpb24SfwoZZHluYW1pY19tZXNzYWdlX2V4dGVuc2lvbhjUDyABKAsyQi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdER5bmFtaWNFeHRlbnNpb25zLkR5bmFtaWNNZXNzYWdlVHlwZVIXZHluYW1pY01lc3NhZ2VFeHRlbnNpb24SLgoScmVwZWF0ZWRfZXh0ZW5zaW9uGNUPIAMoCVIRcmVwZWF0ZWRFeHRlbnNpb24SLgoQcGFja2VkX2V4dGVuc2lvbhjWDyADKBFCAhABUg9wYWNrZWRFeHRlbnNpb24aOgoSRHluYW1pY01lc3NhZ2VUeXBlEiQKDWR5bmFtaWNfZmllbGQYtBAgASgFUgxkeW5hbWljRmllbGQiRwoPRHluYW1pY0VudW1UeXBlEhAKC0RZTkFNSUNfRk9PEJgREhAKC0RZTkFNSUNfQkFSEJkREhAKC0RZTkFNSUNfQkFaEJoRIp8CCiNUZXN0UmVwZWF0ZWRTY2FsYXJEaWZmZXJlbnRUYWdTaXplcxIpChByZXBlYXRlZF9maXhlZDMyGAwgAygHUg9yZXBlYXRlZEZpeGVkMzISJQoOcmVwZWF0ZWRfaW50MzIYDSADKAVSDXJlcGVhdGVkSW50MzISKgoQcmVwZWF0ZWRfZml4ZWQ2NBj+DyADKAZSD3JlcGVhdGVkRml4ZWQ2NBImCg5yZXBlYXRlZF9pbnQ2NBj/DyADKANSDXJlcGVhdGVkSW50NjQSJwoOcmVwZWF0ZWRfZmxvYXQY/v8PIAMoAlINcmVwZWF0ZWRGbG9hdBIpCg9yZXBlYXRlZF91aW50NjQY//8PIAMoBFIOcmVwZWF0ZWRVaW50NjQi4wwKEFRlc3RQYXJzaW5nTWVyZ2USVAoScmVxdWlyZWRfYWxsX3R5cGVzGAEgAigLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IQcmVxdWlyZWRBbGxUeXBlcxJUChJvcHRpb25hbF9hbGxfdHlwZXMYAiABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUhBvcHRpb25hbEFsbFR5cGVzElQKEnJlcGVhdGVkX2FsbF90eXBlcxgDIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSEHJlcGVhdGVkQWxsVHlwZXMSXgoNb3B0aW9uYWxncm91cBgKIAEoCjI4LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFyc2luZ01lcmdlLk9wdGlvbmFsR3JvdXBSDW9wdGlvbmFsZ3JvdXASXgoNcmVwZWF0ZWRncm91cBgUIAMoCjI4LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFyc2luZ01lcmdlLlJlcGVhdGVkR3JvdXBSDXJlcGVhdGVkZ3JvdXAarQUKF1JlcGVhdGVkRmllbGRzR2VuZXJhdG9yEj4KBmZpZWxkMRgBIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSBmZpZWxkMRI+CgZmaWVsZDIYAiADKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUgZmaWVsZDISPgoGZmllbGQzGAMgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IGZmllbGQzEmEKBmdyb3VwMRgKIAMoCjJJLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFyc2luZ01lcmdlLlJlcGVhdGVkRmllbGRzR2VuZXJhdG9yLkdyb3VwMVIGZ3JvdXAxEmEKBmdyb3VwMhgUIAMoCjJJLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFyc2luZ01lcmdlLlJlcGVhdGVkRmllbGRzR2VuZXJhdG9yLkdyb3VwMlIGZ3JvdXAyEjsKBGV4dDEY6AcgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IEZXh0MRI7CgRleHQyGOkHIAMoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSBGV4dDIaSAoGR3JvdXAxEj4KBmZpZWxkMRgLIAEoCzImLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXNSBmZpZWxkMRpICgZHcm91cDISPgoGZmllbGQxGBUgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IGZmllbGQxGnAKDU9wdGlvbmFsR3JvdXASXwoYb3B0aW9uYWxfZ3JvdXBfYWxsX3R5cGVzGAsgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IVb3B0aW9uYWxHcm91cEFsbFR5cGVzGnAKDVJlcGVhdGVkR3JvdXASXwoYcmVwZWF0ZWRfZ3JvdXBfYWxsX3R5cGVzGBUgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1IVcmVwZWF0ZWRHcm91cEFsbFR5cGVzKgkI6AcQgICAgAIydgoMb3B0aW9uYWxfZXh0EioucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYXJzaW5nTWVyZ2UY6AcgASgLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1ILb3B0aW9uYWxFeHQydgoMcmVwZWF0ZWRfZXh0EioucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYXJzaW5nTWVyZ2UY6QcgAygLMiYucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlc1ILcmVwZWF0ZWRFeHQiRwobVGVzdENvbW1lbnRJbmplY3Rpb25NZXNzYWdlEigKAWEYASABKAk6GiovIDwtIE5laXRoZXIgc2hvdWxkIHRoaXMuUgFhIgwKCkZvb1JlcXVlc3QiDQoLRm9vUmVzcG9uc2UiEgoQRm9vQ2xpZW50TWVzc2FnZSISChBGb29TZXJ2ZXJNZXNzYWdlIgwKCkJhclJlcXVlc3QiDQoLQmFyUmVzcG9uc2UizgEKDFRlc3RKc29uTmFtZRIfCgtmaWVsZF9uYW1lMRgBIAEoBVIKZmllbGROYW1lMRIeCgpmaWVsZE5hbWUyGAIgASgFUgpmaWVsZE5hbWUyEh4KCkZpZWxkTmFtZTMYAyABKAVSCkZpZWxkTmFtZTMSIAoMX2ZpZWxkX25hbWU0GAQgASgFUgpGaWVsZE5hbWU0Eh8KC0ZJRUxEX05BTUU1GAUgASgFUgpGSUVMRE5BTUU1EhoKC2ZpZWxkX25hbWU2GAYgASgFUgVAdHlwZSL/BwoUVGVzdEh1Z2VGaWVsZE51bWJlcnMSKQoOb3B0aW9uYWxfaW50MzIY8Pj//wEgASgFUg1vcHRpb25hbEludDMyEh0KCGZpeGVkXzMyGPH4//8BIAEoBVIHZml4ZWQzMhItCg5yZXBlYXRlZF9pbnQzMhjy+P//ASADKAVCAhAAUg1yZXBlYXRlZEludDMyEikKDHBhY2tlZF9pbnQzMhjz+P//ASADKAVCAhABUgtwYWNrZWRJbnQzMhJOCg1vcHRpb25hbF9lbnVtGPT4//8BIAEoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bVIMb3B0aW9uYWxFbnVtEisKD29wdGlvbmFsX3N0cmluZxj1+P//ASABKAlSDm9wdGlvbmFsU3RyaW5nEikKDm9wdGlvbmFsX2J5dGVzGPb4//8BIAEoDFINb3B0aW9uYWxCeXRlcxJXChBvcHRpb25hbF9tZXNzYWdlGPf4//8BIAEoCzIoLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduTWVzc2FnZVIPb3B0aW9uYWxNZXNzYWdlEmYKDW9wdGlvbmFsZ3JvdXAY+Pj//wEgASgKMjwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RIdWdlRmllbGROdW1iZXJzLk9wdGlvbmFsR3JvdXBSDW9wdGlvbmFsZ3JvdXAScwoRc3RyaW5nX3N0cmluZ19tYXAY+vj//wEgAygLMkMucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RIdWdlRmllbGROdW1iZXJzLlN0cmluZ1N0cmluZ01hcEVudHJ5Ug9zdHJpbmdTdHJpbmdNYXASJwoMb25lb2ZfdWludDMyGPv4//8BIAEoDUgAUgtvbmVvZlVpbnQzMhJdChRvbmVvZl90ZXN0X2FsbF90eXBlcxj8+P//ASABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzSABSEW9uZW9mVGVzdEFsbFR5cGVzEicKDG9uZW9mX3N0cmluZxj9+P//ASABKAlIAFILb25lb2ZTdHJpbmcSJQoLb25lb2ZfYnl0ZXMY/vj//wEgASgMSABSCm9uZW9mQnl0ZXMaLAoNT3B0aW9uYWxHcm91cBIbCgdncm91cF9hGPn4//8BIAEoBVIGZ3JvdXBBGkIKFFN0cmluZ1N0cmluZ01hcEVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEqDAjgqv//ARDw+P//AUINCgtvbmVvZl9maWVsZCL6AQoYVGVzdEV4dGVuc2lvbkluc2lkZVRhYmxlEhYKBmZpZWxkMRgBIAEoBVIGZmllbGQxEhYKBmZpZWxkMhgCIAEoBVIGZmllbGQyEhYKBmZpZWxkMxgDIAEoBVIGZmllbGQzEhYKBmZpZWxkNBgEIAEoBVIGZmllbGQ0EhYKBmZpZWxkNhgGIAEoBVIGZmllbGQ2EhYKBmZpZWxkNxgHIAEoBVIGZmllbGQ3EhYKBmZpZWxkOBgIIAEoBVIGZmllbGQ4EhYKBmZpZWxkORgJIAEoBVIGZmllbGQ5EhgKB2ZpZWxkMTAYCiABKAVSB2ZpZWxkMTAqBAgFEAYqQAoLRm9yZWlnbkVudW0SDwoLRk9SRUlHTl9GT08QBBIPCgtGT1JFSUdOX0JBUhAFEg8KC0ZPUkVJR05fQkFaEAYqSwoUVGVzdEVudW1XaXRoRHVwVmFsdWUSCAoERk9PMRABEggKBEJBUjEQAhIHCgNCQVoQAxIICgRGT08yEAESCAoEQkFSMhACGgIQASqJAQoOVGVzdFNwYXJzZUVudW0SDAoIU1BBUlNFX0EQexIOCghTUEFSU0VfQhCm5wMSDwoIU1BBUlNFX0MQsrGABhIVCghTUEFSU0VfRBDx//////////8BEhUKCFNQQVJTRV9FELTe/P///////wESDAoIU1BBUlNFX0YQABIMCghTUEFSU0VfRxACKosPCg1WZXJ5TGFyZ2VFbnVtEhYKEkVOVU1fTEFCRUxfREVGQVVMVBAAEhAKDEVOVU1fTEFCRUxfMRABEhAKDEVOVU1fTEFCRUxfMhACEhAKDEVOVU1fTEFCRUxfMxADEhAKDEVOVU1fTEFCRUxfNBAEEhAKDEVOVU1fTEFCRUxfNRAFEhAKDEVOVU1fTEFCRUxfNhAGEhAKDEVOVU1fTEFCRUxfNxAHEhAKDEVOVU1fTEFCRUxfOBAIEhAKDEVOVU1fTEFCRUxfORAJEhEKDUVOVU1fTEFCRUxfMTAQChIRCg1FTlVNX0xBQkVMXzExEAsSEQoNRU5VTV9MQUJFTF8xMhAMEhEKDUVOVU1fTEFCRUxfMTMQDRIRCg1FTlVNX0xBQkVMXzE0EA4SEQoNRU5VTV9MQUJFTF8xNRAPEhEKDUVOVU1fTEFCRUxfMTYQEBIRCg1FTlVNX0xBQkVMXzE3EBESEQoNRU5VTV9MQUJFTF8xOBASEhEKDUVOVU1fTEFCRUxfMTkQExIRCg1FTlVNX0xBQkVMXzIwEBQSEQoNRU5VTV9MQUJFTF8yMRAVEhEKDUVOVU1fTEFCRUxfMjIQFhIRCg1FTlVNX0xBQkVMXzIzEBcSEQoNRU5VTV9MQUJFTF8yNBAYEhEKDUVOVU1fTEFCRUxfMjUQGRIRCg1FTlVNX0xBQkVMXzI2EBoSEQoNRU5VTV9MQUJFTF8yNxAbEhEKDUVOVU1fTEFCRUxfMjgQHBIRCg1FTlVNX0xBQkVMXzI5EB0SEQoNRU5VTV9MQUJFTF8zMBAeEhEKDUVOVU1fTEFCRUxfMzEQHxIRCg1FTlVNX0xBQkVMXzMyECASEQoNRU5VTV9MQUJFTF8zMxAhEhEKDUVOVU1fTEFCRUxfMzQQIhIRCg1FTlVNX0xBQkVMXzM1ECMSEQoNRU5VTV9MQUJFTF8zNhAkEhEKDUVOVU1fTEFCRUxfMzcQJRIRCg1FTlVNX0xBQkVMXzM4ECYSEQoNRU5VTV9MQUJFTF8zORAnEhEKDUVOVU1fTEFCRUxfNDAQKBIRCg1FTlVNX0xBQkVMXzQxECkSEQoNRU5VTV9MQUJFTF80MhAqEhEKDUVOVU1fTEFCRUxfNDMQKxIRCg1FTlVNX0xBQkVMXzQ0ECwSEQoNRU5VTV9MQUJFTF80NRAtEhEKDUVOVU1fTEFCRUxfNDYQLhIRCg1FTlVNX0xBQkVMXzQ3EC8SEQoNRU5VTV9MQUJFTF80OBAwEhEKDUVOVU1fTEFCRUxfNDkQMRIRCg1FTlVNX0xBQkVMXzUwEDISEQoNRU5VTV9MQUJFTF81MRAzEhEKDUVOVU1fTEFCRUxfNTIQNBIRCg1FTlVNX0xBQkVMXzUzEDUSEQoNRU5VTV9MQUJFTF81NBA2EhEKDUVOVU1fTEFCRUxfNTUQNxIRCg1FTlVNX0xBQkVMXzU2EDgSEQoNRU5VTV9MQUJFTF81NxA5EhEKDUVOVU1fTEFCRUxfNTgQOhIRCg1FTlVNX0xBQkVMXzU5EDsSEQoNRU5VTV9MQUJFTF82MBA8EhEKDUVOVU1fTEFCRUxfNjEQPRIRCg1FTlVNX0xBQkVMXzYyED4SEQoNRU5VTV9MQUJFTF82MxA/EhEKDUVOVU1fTEFCRUxfNjQQQBIRCg1FTlVNX0xBQkVMXzY1EEESEQoNRU5VTV9MQUJFTF82NhBCEhEKDUVOVU1fTEFCRUxfNjcQQxIRCg1FTlVNX0xBQkVMXzY4EEQSEQoNRU5VTV9MQUJFTF82ORBFEhEKDUVOVU1fTEFCRUxfNzAQRhIRCg1FTlVNX0xBQkVMXzcxEEcSEQoNRU5VTV9MQUJFTF83MhBIEhEKDUVOVU1fTEFCRUxfNzMQSRIRCg1FTlVNX0xBQkVMXzc0EEoSEQoNRU5VTV9MQUJFTF83NRBLEhEKDUVOVU1fTEFCRUxfNzYQTBIRCg1FTlVNX0xBQkVMXzc3EE0SEQoNRU5VTV9MQUJFTF83OBBOEhEKDUVOVU1fTEFCRUxfNzkQTxIRCg1FTlVNX0xBQkVMXzgwEFASEQoNRU5VTV9MQUJFTF84MRBREhEKDUVOVU1fTEFCRUxfODIQUhIRCg1FTlVNX0xBQkVMXzgzEFMSEQoNRU5VTV9MQUJFTF84NBBUEhEKDUVOVU1fTEFCRUxfODUQVRIRCg1FTlVNX0xBQkVMXzg2EFYSEQoNRU5VTV9MQUJFTF84NxBXEhEKDUVOVU1fTEFCRUxfODgQWBIRCg1FTlVNX0xBQkVMXzg5EFkSEQoNRU5VTV9MQUJFTF85MBBaEhEKDUVOVU1fTEFCRUxfOTEQWxIRCg1FTlVNX0xBQkVMXzkyEFwSEQoNRU5VTV9MQUJFTF85MxBdEhEKDUVOVU1fTEFCRUxfOTQQXhIRCg1FTlVNX0xBQkVMXzk1EF8SEQoNRU5VTV9MQUJFTF85NhBgEhEKDUVOVU1fTEFCRUxfOTcQYRIRCg1FTlVNX0xBQkVMXzk4EGISEQoNRU5VTV9MQUJFTF85ORBjEhIKDkVOVU1fTEFCRUxfMTAwEGQytQEKC1Rlc3RTZXJ2aWNlElIKA0ZvbxIkLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb29SZXF1ZXN0GiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvb1Jlc3BvbnNlElIKA0JhchIkLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5CYXJSZXF1ZXN0GiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkJhclJlc3BvbnNlOmUKGG9wdGlvbmFsX2ludDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgBIAEoBVIWb3B0aW9uYWxJbnQzMkV4dGVuc2lvbjplChhvcHRpb25hbF9pbnQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYAiABKANSFm9wdGlvbmFsSW50NjRFeHRlbnNpb246ZwoZb3B0aW9uYWxfdWludDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgDIAEoDVIXb3B0aW9uYWxVaW50MzJFeHRlbnNpb246ZwoZb3B0aW9uYWxfdWludDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgEIAEoBFIXb3B0aW9uYWxVaW50NjRFeHRlbnNpb246ZwoZb3B0aW9uYWxfc2ludDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgFIAEoEVIXb3B0aW9uYWxTaW50MzJFeHRlbnNpb246ZwoZb3B0aW9uYWxfc2ludDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgGIAEoElIXb3B0aW9uYWxTaW50NjRFeHRlbnNpb246aQoab3B0aW9uYWxfZml4ZWQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYByABKAdSGG9wdGlvbmFsRml4ZWQzMkV4dGVuc2lvbjppChpvcHRpb25hbF9maXhlZDY0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgIIAEoBlIYb3B0aW9uYWxGaXhlZDY0RXh0ZW5zaW9uOmsKG29wdGlvbmFsX3NmaXhlZDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgJIAEoD1IZb3B0aW9uYWxTZml4ZWQzMkV4dGVuc2lvbjprChtvcHRpb25hbF9zZml4ZWQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYCiABKBBSGW9wdGlvbmFsU2ZpeGVkNjRFeHRlbnNpb246ZQoYb3B0aW9uYWxfZmxvYXRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGAsgASgCUhZvcHRpb25hbEZsb2F0RXh0ZW5zaW9uOmcKGW9wdGlvbmFsX2RvdWJsZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYDCABKAFSF29wdGlvbmFsRG91YmxlRXh0ZW5zaW9uOmMKF29wdGlvbmFsX2Jvb2xfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGA0gASgIUhVvcHRpb25hbEJvb2xFeHRlbnNpb246ZwoZb3B0aW9uYWxfc3RyaW5nX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgOIAEoCVIXb3B0aW9uYWxTdHJpbmdFeHRlbnNpb246ZQoYb3B0aW9uYWxfYnl0ZXNfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGA8gASgMUhZvcHRpb25hbEJ5dGVzRXh0ZW5zaW9uOpcBChdvcHRpb25hbGdyb3VwX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgQIAEoCjIxLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5PcHRpb25hbEdyb3VwX2V4dGVuc2lvblIWb3B0aW9uYWxncm91cEV4dGVuc2lvbjqsAQohb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGBIgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUh5vcHRpb25hbE5lc3RlZE1lc3NhZ2VFeHRlbnNpb246ogEKIm9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYEyABKAsyKC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbk1lc3NhZ2VSH29wdGlvbmFsRm9yZWlnbk1lc3NhZ2VFeHRlbnNpb246pgEKIW9wdGlvbmFsX2ltcG9ydF9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgUIAEoCzIuLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0TWVzc2FnZVIeb3B0aW9uYWxJbXBvcnRNZXNzYWdlRXh0ZW5zaW9uOqMBCh5vcHRpb25hbF9uZXN0ZWRfZW51bV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYFSABKA4yMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZEVudW1SG29wdGlvbmFsTmVzdGVkRW51bUV4dGVuc2lvbjqZAQofb3B0aW9uYWxfZm9yZWlnbl9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgWIAEoDjIlLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5Gb3JlaWduRW51bVIcb3B0aW9uYWxGb3JlaWduRW51bUV4dGVuc2lvbjqdAQoeb3B0aW9uYWxfaW1wb3J0X2VudW1fZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGBcgASgOMisucHJvdG9idWZfdW5pdHRlc3RfaW1wb3J0X3Byb3RvMi5JbXBvcnRFbnVtUhtvcHRpb25hbEltcG9ydEVudW1FeHRlbnNpb246dgofb3B0aW9uYWxfc3RyaW5nX3BpZWNlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgYIAEoCUICCAJSHG9wdGlvbmFsU3RyaW5nUGllY2VFeHRlbnNpb246YwoXb3B0aW9uYWxfY29yZF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYGSABKAlSFW9wdGlvbmFsQ29yZEV4dGVuc2lvbjq5AQoob3B0aW9uYWxfcHVibGljX2ltcG9ydF9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgaIAEoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuUHVibGljSW1wb3J0TWVzc2FnZVIkb3B0aW9uYWxQdWJsaWNJbXBvcnRNZXNzYWdlRXh0ZW5zaW9uOqwBCh9vcHRpb25hbF9sYXp5X21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGBsgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlQgIoAVIcb3B0aW9uYWxMYXp5TWVzc2FnZUV4dGVuc2lvbjplChhyZXBlYXRlZF9pbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYHyADKAVSFnJlcGVhdGVkSW50MzJFeHRlbnNpb246ZQoYcmVwZWF0ZWRfaW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCAgAygDUhZyZXBlYXRlZEludDY0RXh0ZW5zaW9uOmcKGXJlcGVhdGVkX3VpbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYISADKA1SF3JlcGVhdGVkVWludDMyRXh0ZW5zaW9uOmcKGXJlcGVhdGVkX3VpbnQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYIiADKARSF3JlcGVhdGVkVWludDY0RXh0ZW5zaW9uOmcKGXJlcGVhdGVkX3NpbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYIyADKBFSF3JlcGVhdGVkU2ludDMyRXh0ZW5zaW9uOmcKGXJlcGVhdGVkX3NpbnQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYJCADKBJSF3JlcGVhdGVkU2ludDY0RXh0ZW5zaW9uOmkKGnJlcGVhdGVkX2ZpeGVkMzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCUgAygHUhhyZXBlYXRlZEZpeGVkMzJFeHRlbnNpb246aQoacmVwZWF0ZWRfZml4ZWQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYJiADKAZSGHJlcGVhdGVkRml4ZWQ2NEV4dGVuc2lvbjprChtyZXBlYXRlZF9zZml4ZWQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYJyADKA9SGXJlcGVhdGVkU2ZpeGVkMzJFeHRlbnNpb246awobcmVwZWF0ZWRfc2ZpeGVkNjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCggAygQUhlyZXBlYXRlZFNmaXhlZDY0RXh0ZW5zaW9uOmUKGHJlcGVhdGVkX2Zsb2F0X2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgpIAMoAlIWcmVwZWF0ZWRGbG9hdEV4dGVuc2lvbjpnChlyZXBlYXRlZF9kb3VibGVfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGCogAygBUhdyZXBlYXRlZERvdWJsZUV4dGVuc2lvbjpjChdyZXBlYXRlZF9ib29sX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgrIAMoCFIVcmVwZWF0ZWRCb29sRXh0ZW5zaW9uOmcKGXJlcGVhdGVkX3N0cmluZ19leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYLCADKAlSF3JlcGVhdGVkU3RyaW5nRXh0ZW5zaW9uOmUKGHJlcGVhdGVkX2J5dGVzX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgtIAMoDFIWcmVwZWF0ZWRCeXRlc0V4dGVuc2lvbjqXAQoXcmVwZWF0ZWRncm91cF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYLiADKAoyMS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuUmVwZWF0ZWRHcm91cF9leHRlbnNpb25SFnJlcGVhdGVkZ3JvdXBFeHRlbnNpb246rAEKIXJlcGVhdGVkX25lc3RlZF9tZXNzYWdlX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxgwIAMoCzI0LnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkTWVzc2FnZVIecmVwZWF0ZWROZXN0ZWRNZXNzYWdlRXh0ZW5zaW9uOqIBCiJyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDEgAygLMigucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25NZXNzYWdlUh9yZXBlYXRlZEZvcmVpZ25NZXNzYWdlRXh0ZW5zaW9uOqYBCiFyZXBlYXRlZF9pbXBvcnRfbWVzc2FnZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYMiADKAsyLi5wcm90b2J1Zl91bml0dGVzdF9pbXBvcnRfcHJvdG8yLkltcG9ydE1lc3NhZ2VSHnJlcGVhdGVkSW1wb3J0TWVzc2FnZUV4dGVuc2lvbjqjAQoecmVwZWF0ZWRfbmVzdGVkX2VudW1fZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDMgAygOMjEucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRFbnVtUhtyZXBlYXRlZE5lc3RlZEVudW1FeHRlbnNpb246mQEKH3JlcGVhdGVkX2ZvcmVpZ25fZW51bV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYNCADKA4yJS5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuRm9yZWlnbkVudW1SHHJlcGVhdGVkRm9yZWlnbkVudW1FeHRlbnNpb246nQEKHnJlcGVhdGVkX2ltcG9ydF9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxg1IAMoDjIrLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0RW51bVIbcmVwZWF0ZWRJbXBvcnRFbnVtRXh0ZW5zaW9uOnYKH3JlcGVhdGVkX3N0cmluZ19waWVjZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYNiADKAlCAggCUhxyZXBlYXRlZFN0cmluZ1BpZWNlRXh0ZW5zaW9uOmMKF3JlcGVhdGVkX2NvcmRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGDcgAygJUhVyZXBlYXRlZENvcmRFeHRlbnNpb246rAEKH3JlcGVhdGVkX2xhenlfbWVzc2FnZV9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYOSADKAsyNC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzLk5lc3RlZE1lc3NhZ2VCAigBUhxyZXBlYXRlZExhenlNZXNzYWdlRXh0ZW5zaW9uOmcKF2RlZmF1bHRfaW50MzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGD0gASgFOgI0MVIVZGVmYXVsdEludDMyRXh0ZW5zaW9uOmcKF2RlZmF1bHRfaW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGD4gASgDOgI0MlIVZGVmYXVsdEludDY0RXh0ZW5zaW9uOmkKGGRlZmF1bHRfdWludDMyX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxg/IAEoDToCNDNSFmRlZmF1bHRVaW50MzJFeHRlbnNpb246aQoYZGVmYXVsdF91aW50NjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEAgASgEOgI0NFIWZGVmYXVsdFVpbnQ2NEV4dGVuc2lvbjpqChhkZWZhdWx0X3NpbnQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYQSABKBE6Ay00NVIWZGVmYXVsdFNpbnQzMkV4dGVuc2lvbjppChhkZWZhdWx0X3NpbnQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYQiABKBI6AjQ2UhZkZWZhdWx0U2ludDY0RXh0ZW5zaW9uOmsKGWRlZmF1bHRfZml4ZWQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYQyABKAc6AjQ3UhdkZWZhdWx0Rml4ZWQzMkV4dGVuc2lvbjprChlkZWZhdWx0X2ZpeGVkNjRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEQgASgGOgI0OFIXZGVmYXVsdEZpeGVkNjRFeHRlbnNpb246bQoaZGVmYXVsdF9zZml4ZWQzMl9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYRSABKA86AjQ5UhhkZWZhdWx0U2ZpeGVkMzJFeHRlbnNpb246bgoaZGVmYXVsdF9zZml4ZWQ2NF9leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYRiABKBA6Ay01MFIYZGVmYXVsdFNmaXhlZDY0RXh0ZW5zaW9uOmkKF2RlZmF1bHRfZmxvYXRfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEcgASgCOgQ1MS41UhVkZWZhdWx0RmxvYXRFeHRlbnNpb246bAoYZGVmYXVsdF9kb3VibGVfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEggASgBOgU1MjAwMFIWZGVmYXVsdERvdWJsZUV4dGVuc2lvbjpnChZkZWZhdWx0X2Jvb2xfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEkgASgIOgR0cnVlUhRkZWZhdWx0Qm9vbEV4dGVuc2lvbjpsChhkZWZhdWx0X3N0cmluZ19leHRlbnNpb24SKy5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbEV4dGVuc2lvbnMYSiABKAk6BWhlbGxvUhZkZWZhdWx0U3RyaW5nRXh0ZW5zaW9uOmoKF2RlZmF1bHRfYnl0ZXNfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGEsgASgMOgV3b3JsZFIVZGVmYXVsdEJ5dGVzRXh0ZW5zaW9uOqYBCh1kZWZhdWx0X25lc3RlZF9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhRIAEoDjIxLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsVHlwZXMuTmVzdGVkRW51bToDQkFSUhpkZWZhdWx0TmVzdGVkRW51bUV4dGVuc2lvbjqkAQoeZGVmYXVsdF9mb3JlaWduX2VudW1fZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGFIgASgOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtOgtGT1JFSUdOX0JBUlIbZGVmYXVsdEZvcmVpZ25FbnVtRXh0ZW5zaW9uOqcBCh1kZWZhdWx0X2ltcG9ydF9lbnVtX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhTIAEoDjIrLnByb3RvYnVmX3VuaXR0ZXN0X2ltcG9ydF9wcm90bzIuSW1wb3J0RW51bToKSU1QT1JUX0JBUlIaZGVmYXVsdEltcG9ydEVudW1FeHRlbnNpb246eQoeZGVmYXVsdF9zdHJpbmdfcGllY2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGFQgASgJOgNhYmNCAggCUhtkZWZhdWx0U3RyaW5nUGllY2VFeHRlbnNpb246ZgoWZGVmYXVsdF9jb3JkX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhVIAEoCToDMTIzUhRkZWZhdWx0Q29yZEV4dGVuc2lvbjphChZvbmVvZl91aW50MzJfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGG8gASgNUhRvbmVvZlVpbnQzMkV4dGVuc2lvbjqmAQoeb25lb2ZfbmVzdGVkX21lc3NhZ2VfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGHAgASgLMjQucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxUeXBlcy5OZXN0ZWRNZXNzYWdlUhtvbmVvZk5lc3RlZE1lc3NhZ2VFeHRlbnNpb246YQoWb25lb2Zfc3RyaW5nX2V4dGVuc2lvbhIrLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0QWxsRXh0ZW5zaW9ucxhxIAEoCVIUb25lb2ZTdHJpbmdFeHRlbnNpb246XwoVb25lb2ZfYnl0ZXNfZXh0ZW5zaW9uEisucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RBbGxFeHRlbnNpb25zGHIgASgMUhNvbmVvZkJ5dGVzRXh0ZW5zaW9uOlwKE215X2V4dGVuc2lvbl9zdHJpbmcSLC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEZpZWxkT3JkZXJpbmdzGDIgASgJUhFteUV4dGVuc2lvblN0cmluZzpWChBteV9leHRlbnNpb25faW50EiwucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RGaWVsZE9yZGVyaW5ncxgFIAEoBVIObXlFeHRlbnNpb25JbnQ6aAoWcGFja2VkX2ludDMyX2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhaIAMoBUICEAFSFHBhY2tlZEludDMyRXh0ZW5zaW9uOmgKFnBhY2tlZF9pbnQ2NF9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYWyADKANCAhABUhRwYWNrZWRJbnQ2NEV4dGVuc2lvbjpqChdwYWNrZWRfdWludDMyX2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhcIAMoDUICEAFSFXBhY2tlZFVpbnQzMkV4dGVuc2lvbjpqChdwYWNrZWRfdWludDY0X2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhdIAMoBEICEAFSFXBhY2tlZFVpbnQ2NEV4dGVuc2lvbjpqChdwYWNrZWRfc2ludDMyX2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxheIAMoEUICEAFSFXBhY2tlZFNpbnQzMkV4dGVuc2lvbjpqChdwYWNrZWRfc2ludDY0X2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhfIAMoEkICEAFSFXBhY2tlZFNpbnQ2NEV4dGVuc2lvbjpsChhwYWNrZWRfZml4ZWQzMl9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYYCADKAdCAhABUhZwYWNrZWRGaXhlZDMyRXh0ZW5zaW9uOmwKGHBhY2tlZF9maXhlZDY0X2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhhIAMoBkICEAFSFnBhY2tlZEZpeGVkNjRFeHRlbnNpb246bgoZcGFja2VkX3NmaXhlZDMyX2V4dGVuc2lvbhIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0UGFja2VkRXh0ZW5zaW9ucxhiIAMoD0ICEAFSF3BhY2tlZFNmaXhlZDMyRXh0ZW5zaW9uOm4KGXBhY2tlZF9zZml4ZWQ2NF9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYYyADKBBCAhABUhdwYWNrZWRTZml4ZWQ2NEV4dGVuc2lvbjpoChZwYWNrZWRfZmxvYXRfZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGGQgAygCQgIQAVIUcGFja2VkRmxvYXRFeHRlbnNpb246agoXcGFja2VkX2RvdWJsZV9leHRlbnNpb24SLi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFBhY2tlZEV4dGVuc2lvbnMYZSADKAFCAhABUhVwYWNrZWREb3VibGVFeHRlbnNpb246ZgoVcGFja2VkX2Jvb2xfZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGGYgAygIQgIQAVITcGFja2VkQm9vbEV4dGVuc2lvbjqNAQoVcGFja2VkX2VudW1fZXh0ZW5zaW9uEi4ucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RQYWNrZWRFeHRlbnNpb25zGGcgAygOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtQgIQAVITcGFja2VkRW51bUV4dGVuc2lvbjpuChh1bnBhY2tlZF9pbnQzMl9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhaIAMoBUICEABSFnVucGFja2VkSW50MzJFeHRlbnNpb246bgoYdW5wYWNrZWRfaW50NjRfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYWyADKANCAhAAUhZ1bnBhY2tlZEludDY0RXh0ZW5zaW9uOnAKGXVucGFja2VkX3VpbnQzMl9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhcIAMoDUICEABSF3VucGFja2VkVWludDMyRXh0ZW5zaW9uOnAKGXVucGFja2VkX3VpbnQ2NF9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhdIAMoBEICEABSF3VucGFja2VkVWludDY0RXh0ZW5zaW9uOnAKGXVucGFja2VkX3NpbnQzMl9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxheIAMoEUICEABSF3VucGFja2VkU2ludDMyRXh0ZW5zaW9uOnAKGXVucGFja2VkX3NpbnQ2NF9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhfIAMoEkICEABSF3VucGFja2VkU2ludDY0RXh0ZW5zaW9uOnIKGnVucGFja2VkX2ZpeGVkMzJfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYYCADKAdCAhAAUhh1bnBhY2tlZEZpeGVkMzJFeHRlbnNpb246cgoadW5wYWNrZWRfZml4ZWQ2NF9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhhIAMoBkICEABSGHVucGFja2VkRml4ZWQ2NEV4dGVuc2lvbjp0Cht1bnBhY2tlZF9zZml4ZWQzMl9leHRlbnNpb24SMC5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdFVucGFja2VkRXh0ZW5zaW9ucxhiIAMoD0ICEABSGXVucGFja2VkU2ZpeGVkMzJFeHRlbnNpb246dAobdW5wYWNrZWRfc2ZpeGVkNjRfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYYyADKBBCAhAAUhl1bnBhY2tlZFNmaXhlZDY0RXh0ZW5zaW9uOm4KGHVucGFja2VkX2Zsb2F0X2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGGQgAygCQgIQAFIWdW5wYWNrZWRGbG9hdEV4dGVuc2lvbjpwChl1bnBhY2tlZF9kb3VibGVfZXh0ZW5zaW9uEjAucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLlRlc3RVbnBhY2tlZEV4dGVuc2lvbnMYZSADKAFCAhAAUhd1bnBhY2tlZERvdWJsZUV4dGVuc2lvbjpsChd1bnBhY2tlZF9ib29sX2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGGYgAygIQgIQAFIVdW5wYWNrZWRCb29sRXh0ZW5zaW9uOpMBChd1bnBhY2tlZF9lbnVtX2V4dGVuc2lvbhIwLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0VW5wYWNrZWRFeHRlbnNpb25zGGcgAygOMiUucHJvdG9idWZfdW5pdHRlc3RfcHJvdG8yLkZvcmVpZ25FbnVtQgIQAFIVdW5wYWNrZWRFbnVtRXh0ZW5zaW9uOoABCg50ZXN0X2FsbF90eXBlcxIuLnByb3RvYnVmX3VuaXR0ZXN0X3Byb3RvMi5UZXN0SHVnZUZpZWxkTnVtYmVycxjgqv//ASABKAsyJi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEFsbFR5cGVzUgx0ZXN0QWxsVHlwZXM6hAEKJXRlc3RfZXh0ZW5zaW9uX2luc2lkZV90YWJsZV9leHRlbnNpb24SMi5wcm90b2J1Zl91bml0dGVzdF9wcm90bzIuVGVzdEV4dGVuc2lvbkluc2lkZVRhYmxlGAUgASgFUiF0ZXN0RXh0ZW5zaW9uSW5zaWRlVGFibGVFeHRlbnNpb25CMkgBgAEBiAEBkAEB+AEBqgIhR29vZ2xlLlByb3RvYnVmLlRlc3RQcm90b3MuUHJvdG8ySsmsAwoHEgUPAMYIAQrqAwoBDBIDDwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCjLTASBBdXRob3I6IGtlbnRvbkBnb29nbGUuY29tIChLZW50b24gVmFyZGEpCiAgQmFzZWQgb24gb3JpZ2luYWwgUHJvdG9jb2wgQnVmZmVycyBkZXNpZ24gYnkKICBTYW5qYXkgR2hlbWF3YXQsIEplZmYgRGVhbiwgYW5kIG90aGVycy4KCiBBIHByb3RvIGZpbGUgd2Ugd2lsbCB1c2UgZm9yIHVuaXQgdGVzdGluZy4KCiBMSU5UOiBBTExPV19HUk9VUFMsIExFR0FDWV9OQU1FUwoKCAoBCBIDEwAiCoABCgIIEBIDEwAiGmcgU29tZSBnZW5lcmljX3NlcnZpY2VzIG9wdGlvbihzKSBhZGRlZCBhdXRvbWF0aWNhbGx5LgogU2VlOiAgaHR0cDovL2dvL3Byb3RvMi1nZW5lcmljLXNlcnZpY2VzLWRlZmF1bHQKIgwgYXV0by1hZGRlZAoKCAoBCBIDFAAkChcKAggREgMUACQiDCBhdXRvLWFkZGVkCgoICgEIEgMVACIKFwoCCBISAxUAIiIMIGF1dG8tYWRkZWQKCggKAQgSAxYAHwoJCgIIHxIDFgAfCgkKAgMAEgMYAC0K5gEKAQISAx0AIRrbASBXZSBkb24ndCBwdXQgdGhpcyBpbiBhIHBhY2thZ2Ugd2l0aGluIHByb3RvMiBiZWNhdXNlIHdlIG5lZWQgdG8gbWFrZSBzdXJlCiB0aGF0IHRoZSBnZW5lcmF0ZWQgY29kZSBkb2Vzbid0IGRlcGVuZCBvbiBiZWluZyBpbiB0aGUgcHJvdG8yIG5hbWVzcGFjZS4KIEluIHRlc3RfdXRpbC5oIHdlIGRvICJ1c2luZyBuYW1lc3BhY2UgdW5pdHRlc3QgPSBwcm90b2J1Zl91bml0dGVzdCIuCgoICgEIEgMiABwK4gEKAggJEgMiABwa1gEgUHJvdG9zIG9wdGltaXplZCBmb3IgU1BFRUQgdXNlIGEgc3RyaWN0IHN1cGVyc2V0IG9mIHRoZSBnZW5lcmF0ZWQgY29kZQogb2YgZXF1aXZhbGVudCBvbmVzIG9wdGltaXplZCBmb3IgQ09ERV9TSVpFLCBzbyB3ZSBzaG91bGQgb3B0aW1pemUgYWxsIG91cgogdGVzdHMgZm9yIHNwZWVkIHVubGVzcyBleHBsaWNpdGx5IHRlc3RpbmcgY29kZSBzaXplIG9wdGltaXphdGlvbi4KCggKAQgSAyQAPgoJCgIIJRIDJAA+ClwKAgQAEgUoAKIBARpPIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAog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ZAoKCAoBAhIDCQAYCggKAQgSAwsANwoJCgIIJRIDCwA3CsQBCgIDABIDEQAqMrgBIFRoaXMgZmlsZSBpcyB1c2VkIGFzIHBhcnQgb2YgYSB1bml0IHRlc3QgZm9yIGlzc3VlIDY5MzYKIFdlIGRvbid0IG5lZWQgdG8gdXNlIGl0LCB3ZSBqdXN0IGhhdmUgdG8gaW1wb3J0IGl0IGluIGJvdGgKICJleHRlbnNpb25zX2lzc3VlNjkzNl9iLnByb3RvIiBhbmQgImV4dGVuc2lvbnNfaXNzdWU2OTM2X2MucHJvdG8iCgoJCgEHEgQTABUBCgkKAgcAEgMUAhUKCgoDBwACEgMTByUKCgoDBwAFEgMUAggKCgoDBwABEgMUCQwKCgoDBwADEgMUDxRiBnByb3RvMwqtBQooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYi5wcm90bxIPdW5pdHRlc3RfaXNzdWVzGihjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2lzc3VlNjkzNl9hLnByb3RvIg4KA0ZvbzoHgrUYA2Zvb0IdqgIaVW5pdFRlc3QuSXNzdWVzLlRlc3RQcm90b3NKjgQKBhIEBwAVAQqUAgoBDBIDBwASMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgoICgECEgMJABgKCQoCAwASAwsAMgoICgEIEgMNADcKCQoCCCUSAw0ANwqbAQoCBAASBBMAFQEyjgEgVGhpcyBmaWxlIGlzIHVzZWQgYXMgcGFydCBvZiBhIHVuaXQgdGVzdCBmb3IgaXNzdWUgNjkzNgogV2UgZG9uJ3QgbmVlZCB0byB1c2UgaXQsIHdlIGp1c3QgaGF2ZSB0byBpbXBvcnQgaXQgaW4KICJ1bml0dGVzdF9pc3N1ZTY5MzZfYy5wcm90byIKCgoKAwQAARIDEwgLCgoKAwQABxIDFAIXCg0KBgQAB9CGAxIDFAIXYgZwcm90bzMKqAYKKGNzaGFycC9wcm90b3MvdW5pdHRlc3RfaXNzdWU2OTM2X2MucHJvdG8SD3VuaXR0ZXN0X2lzc3VlcxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYS5wcm90bxooY3NoYXJwL3Byb3Rvcy91bml0dGVzdF9pc3N1ZTY5MzZfYi5wcm90byI2CgNCYXISJgoDZm9vGAEgASgLMhQudW5pdHRlc3RfaXNzdWVzLkZvb1IDZm9vOgeCtRgDYmFyQh2qAhpVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvc0q3BAoGEgQHABcBCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCggKAQISAwkAGAoJCgIDABIDCwAyCgkKAgMBEgMMADIKCAoBCBIDDgA3CgkKAgglEgMOADcKggEKAgQAEgQTABcBMnYgVGhpcyBmaWxlIGlzIHVzZWQgYXMgcGFydCBvZiBhIHVuaXQgdGVzdCBmb3IgaXNzdWUgNjkzNgogV2UgZG9uJ3QgbmVlZCB0byB1c2UgaXQsIHdlIGp1c3QgaGF2ZSB0byBsb2FkIGl0IGF0IHJ1bnRpbWUKCgoKAwQAARIDEwgLCgoKAwQABxIDFAIXCg0KBgQAB9CGAxIDFAIXCgsKBAQAAgASAxYCDgoMCgUEAAIABhIDFgIFCgwKBQQAAgABEgMWBgkKDAoFBAACAAMSAxYMDWIGcHJvdG8zCrsOCjRjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLnByb3RvEilwcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucxogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8iWQoKRm9vT3B0aW9ucxImCgdpbnRfb3B0GAEgASgFQg3KPgoIAcA+Aso+AggDUgZpbnRPcHQSGAoDZm9vGAIgASgFQgbKPgMQ0glSA2ZvbyoJCOgHEICAgIACOkUKC2Jhcl9vcHRpb25zEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxjoByABKAVCBMA+0glSCmJhck9wdGlvbnM6dgoLZm9vX29wdGlvbnMSHS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zGOkHIAEoCzI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlvbnNSCmZvb09wdGlvbnM6VgoLZm9vX2ludF9vcHQSNS5wcm90b2J1Zl91bml0dGVzdF9zZWxmcmVmZXJlbnRpYWxfb3B0aW9ucy5Gb29PcHRpb25zGOgHIAEoBVIJZm9vSW50T3B0Oo0BCgtmb29fZm9vX29wdBI1LnByb3RvYnVmX3VuaXR0ZXN0X3NlbGZyZWZlcmVudGlhbF9vcHRpb25zLkZvb09wdGlvbnMY6QcgASgLMjUucHJvdG9idWZfdW5pdHRlc3Rfc2VsZnJlZmVyZW50aWFsX29wdGlvbnMuRm9vT3B0aW9uc1IJZm9vRm9vT3B0QjSqAjFVbml0VGVzdC5Jc3N1ZXMuVGVzdFByb3Rvcy5TZWxmcmVmZXJlbnRpYWxPcHRpb25zSv0ICgYSBAcAJwEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAyCgkKAgMAEgMLACoKCAoBCBIDDQBOCgkKAgglEgMNAE4KCgoCBAASBA8AGwEKCgoDBAABEgMPCBIKUAoEBAACABIEEQIVBRpCIEN1c3RvbSBmaWVsZCBvcHRpb24gdXNlZCBpbiBkZWZpbml0aW9uIG9mIHRoZSBleHRlbnNpb24gbWVzc2FnZS4KCgwKBQQAAgAEEgMRAgoKDAoFBAACAAUSAxELEAoMCgUEAAIAARIDEREYCgwKBQQAAgADEgMRGxwKDQoFBAACAAgSBBEdFQQKDwoHBAACAAjpBxIEER4VAwpVCgQEAAIBEgMYAjkaSCBDdXN0b20gZmllbGQgb3B0aW9uIHVzZWQgaW4gZGVmaW5pdGlvbiBvZiB0aGUgY3VzdG9tIG9wdGlvbidzIG1lc3NhZ2UuCgoMCgUEAAIBBBIDGAIKCgwKBQQAAgEFEgMYCxAKDAoFBAACAQESAxgRFAoMCgUEAAIBAxIDGBcYCgwKBQQAAgEIEgMYGTgKDgoHBAACAQjpBxIDGBo3CgoKAwQABRIDGgIZCgsKBAQABQASAxoNGAoMCgUEAAUAARIDGg0RCgwKBQQABQACEgMaFRgKCQoBBxIEHQAiAQpNCgIHABIDHwI7GkIgQ3VzdG9tIGZpZWxkIG9wdGlvbiB1c2VkIG9uIHRoZSBkZWZpbml0aW9uIG9mIHRoYXQgZmllbGQgb3B0aW9uLgoKCgoDBwACEgMdByMKCgoDBwAEEgMfAgoKCgoDBwAFEgMfCxAKCgoDBwABEgMfERwKCgoDBwADEgMfHyMKCgoDBwAIEgMfJDoKDAoFBwAI6AcSAx8lOQoJCgIHARIDIQIpCgoKAwcBAhIDHQcjCgoKAwcBBBIDIQIKCgoKAwcBBhIDIQsVCgoKAwcBARIDIRYhCgoKAwcBAxIDISQoCgkKAQcSBCQAJwEKCQoCBwISAyUCJAoKCgMHAgISAyQHEQoKCgMHAgQSAyUCCgoKCgMHAgUSAyULEAoKCgMHAgESAyURHAoKCgMHAgMSAyUfIwoJCgIHAxIDJgIpCgoKAwcDAhIDJAcRCgoKAwcDBBIDJgIKCgoKAwcDBhIDJgsVCgoKAwcDARIDJhYhCgoKAwcDAxIDJiQoCsQuChlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvEg9nb29nbGUucHJvdG9idWYiNgoDQW55EhkKCHR5cGVfdXJsGAEgASgJUgd0eXBlVXJsEhQKBXZhbHVlGAIgASgMUgV2YWx1ZUJ2ChNjb20uZ29vZ2xlLnByb3RvYnVmQghBbnlQcm90b1ABWixnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi9hbnlwYqICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rdLAoHEgUeAKEBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAQwoJCgIICxIDIgBDCggKAQgSAyMALAoJCgIIARIDIwAsCggKAQgSAyQAKQoJCgIICBIDJAApCggKAQgSAyUAIgoJCgIIChIDJQAiCggKAQgSAyYAIQoJCgIIJBIDJgAhCggKAQgSAycAOwoJCgIIJRIDJwA7CvwRCgIEABIFfwChAQEa7hEgYEFueWAgY29udGFpbnMgYW4gYXJiaXRyYXJ5IHNlcmlhbGl6ZWQgcHJvdG9jb2wgYnVmZmVyIG1lc3NhZ2UgYWxvbmcgd2l0aCBhCiBVUkwgdGhhdCBkZXNjcmliZXMgdGhlIHR5cGUgb2YgdGhlIHNlcmlhbGl6ZWQgbWVzc2FnZS4KCiBQcm90b2J1ZiBsaWJyYXJ5IHByb3ZpZGVzIHN1cHBvcnQgdG8gcGFjay91bnBhY2sgQW55IHZhbHVlcyBpbiB0aGUgZm9ybQogb2YgdXRpbGl0eSBmdW5jdGlvbnMgb3IgYWRkaXRpb25hbCBnZW5lcmF0ZWQgbWV0aG9kcyBvZiB0aGUgQW55IHR5cGUuCgogRXhhbXBsZSAxOiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIEMrKy4KCiAgICAgRm9vIGZvbyA9IC4uLjsKICAgICBBbnkgYW55OwogICAgIGFueS5QYWNrRnJvbShmb28pOwogICAgIC4uLgogICAgIGlmIChhbnkuVW5wYWNrVG8oJmZvbykpIHsKICAgICAgIC4uLgogICAgIH0KCiBFeGFtcGxlIDI6IFBhY2sgYW5kIHVucGFjayBhIG1lc3NhZ2UgaW4gSmF2YS4KCiAgICAgRm9vIGZvbyA9IC4uLjsKICAgICBBbnkgYW55ID0gQW55LnBhY2soZm9vKTsKICAgICAuLi4KICAgICBpZiAoYW55LmlzKEZvby5jbGFzcykpIHsKICAgICAgIGZvbyA9IGFueS51bnBhY2soRm9vLmNsYXNzKTsKICAgICB9CiAgICAgLy8gb3IgLi4uCiAgICAgaWYgKGFueS5pc1NhbWVUeXBlQXMoRm9vLmdldERlZmF1bHRJbnN0YW5jZSgpKSkgewogICAgICAgZm9vID0gYW55LnVucGFjayhGb28uZ2V0RGVmYXVsdEluc3RhbmNlKCkpOwogICAgIH0KCiAgRXhhbXBsZSAzOiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIFB5dGhvbi4KCiAgICAgZm9vID0gRm9vKC4uLikKICAgICBhbnkgPSBBbnkoKQogICAgIGFueS5QYWNrKGZvbykKICAgICAuLi4KICAgICBpZiBhbnkuSXMoRm9vLkRFU0NSSVBUT1IpOgogICAgICAgYW55LlVucGFjayhmb28pCiAgICAgICAuLi4KCiAgRXhhbXBsZSA0OiBQYWNrIGFuZCB1bnBhY2sgYSBtZXNzYWdlIGluIEdvCgogICAgICBmb28gOj0gJnBiLkZvb3suLi59CiAgICAgIGFueSwgZXJyIDo9IGFueXBiLk5ldyhmb28pCiAgICAgIGlmIGVyciAhPSBuaWwgewogICAgICAgIC4uLgogICAgICB9CiAgICAgIC4uLgogICAgICBmb28gOj0gJnBiLkZvb3t9CiAgICAgIGlmIGVyciA6PSBhbnkuVW5tYXJzaGFsVG8oZm9vKTsgZXJyICE9IG5pbCB7CiAgICAgICAgLi4uCiAgICAgIH0KCiBUaGUgcGFjayBtZXRob2RzIHByb3ZpZGVkIGJ5IHByb3RvYnVmIGxpYnJhcnkgd2lsbCBieSBkZWZhdWx0IHVzZQogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vZnVsbC50eXBlLm5hbWUnIGFzIHRoZSB0eXBlIFVSTCBhbmQgdGhlIHVucGFjawogbWV0aG9kcyBvbmx5IHVzZSB0aGUgZnVsbHkgcXVhbGlmaWVkIHR5cGUgbmFtZSBhZnRlciB0aGUgbGFzdCAnLycKIGluIHRoZSB0eXBlIFVSTCwgZm9yIGV4YW1wbGUgImZvby5iYXIuY29tL3gveS56IiB3aWxsIHlpZWxkIHR5cGUKIG5hbWUgInkueiIuCgogSlNPTgogPT09PQogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYW4gYEFueWAgdmFsdWUgdXNlcyB0aGUgcmVndWxhcgogcmVwcmVzZW50YXRpb24gb2YgdGhlIGRlc2VyaWFsaXplZCwgZW1iZWRkZWQgbWVzc2FnZSwgd2l0aCBhbgogYWRkaXRpb25hbCBmaWVsZCBgQHR5cGVgIHdoaWNoIGNvbnRhaW5zIHRoZSB0eXBlIFVSTC4gRXhhbXBsZToKCiAgICAgcGFja2FnZSBnb29nbGUucHJvZmlsZTsKICAgICBtZXNzYWdlIFBlcnNvbiB7CiAgICAgICBzdHJpbmcgZmlyc3RfbmFtZSA9IDE7CiAgICAgICBzdHJpbmcgbGFzdF9uYW1lID0gMjsKICAgICB9CgogICAgIHsKICAgICAgICJAdHlwZSI6ICJ0eXBlLmdvb2dsZWFwaXMuY29tL2dvb2dsZS5wcm9maWxlLlBlcnNvbiIsCiAgICAgICAiZmlyc3ROYW1lIjogPHN0cmluZz4sCiAgICAgICAibGFzdE5hbWUiOiA8c3RyaW5nPgogICAgIH0KCiBJZiB0aGUgZW1iZWRkZWQgbWVzc2FnZSB0eXBlIGlzIHdlbGwta25vd24gYW5kIGhhcyBhIGN1c3RvbSBKU09OCiByZXByZXNlbnRhdGlvbiwgdGhhdCByZXByZXNlbnRhdGlvbiB3aWxsIGJlIGVtYmVkZGVkIGFkZGluZyBhIGZpZWxkCiBgdmFsdWVgIHdoaWNoIGhvbGRzIHRoZSBjdXN0b20gSlNPTiBpbiBhZGRpdGlvbiB0byB0aGUgYEB0eXBlYAogZmllbGQuIEV4YW1wbGUgKGZvciBtZXNzYWdlIFtnb29nbGUucHJvdG9idWYuRHVyYXRpb25dW10pOgoKICAgICB7CiAgICAgICAiQHR5cGUiOiAidHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucHJvdG9idWYuRHVyYXRpb24iLAogICAgICAgInZhbHVlIjogIjEuMjEycyIKICAgICB9CgoKCgoDBAABEgN/CAsKvAsKBAQAAgASBJ0BAhYarQsgQSBVUkwvcmVzb3VyY2UgbmFtZSB0aGF0IHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIHR5cGUgb2YgdGhlIHNlcmlhbGl6ZWQKIHByb3RvY29sIGJ1ZmZlciBtZXNzYWdlLiBUaGlzIHN0cmluZyBtdXN0IGNvbnRhaW4gYXQgbGVhc3QKIG9uZSAiLyIgY2hhcmFjdGVyLiBUaGUgbGFzdCBzZWdtZW50IG9mIHRoZSBVUkwncyBwYXRoIG11c3QgcmVwcmVzZW50CiB0aGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIHR5cGUgKGFzIGluCiBgcGF0aC9nb29nbGUucHJvdG9idWYuRHVyYXRpb25gKS4gVGhlIG5hbWUgc2hvdWxkIGJlIGluIGEgY2Fub25pY2FsIGZvcm0KIChlLmcuLCBsZWFkaW5nICIuIiBpcyBub3QgYWNjZXB0ZWQpLgoKIEluIHByYWN0aWNlLCB0ZWFtcyB1c3VhbGx5IHByZWNvbXBpbGUgaW50byB0aGUgYmluYXJ5IGFsbCB0eXBlcyB0aGF0IHRoZXkKIGV4cGVjdCBpdCB0byB1c2UgaW4gdGhlIGNvbnRleHQgb2YgQW55LiBIb3dldmVyLCBmb3IgVVJMcyB3aGljaCB1c2UgdGhlCiBzY2hlbWUgYGh0dHBgLCBgaHR0cHNgLCBvciBubyBzY2hlbWUsIG9uZSBjYW4gb3B0aW9uYWxseSBzZXQgdXAgYSB0eXBlCiBzZXJ2ZXIgdGhhdCBtYXBzIHR5cGUgVVJMcyB0byBtZXNzYWdlIGRlZmluaXRpb25zIGFzIGZvbGxvd3M6CgogKiBJZiBubyBzY2hlbWUgaXMgcHJvdmlkZWQsIGBodHRwc2AgaXMgYXNzdW1lZC4KICogQW4gSFRUUCBHRVQgb24gdGhlIFVSTCBtdXN0IHlpZWxkIGEgW2dvb2dsZS5wcm90b2J1Zi5UeXBlXVtdCiAgIHZhbHVlIGluIGJpbmFyeSBmb3JtYXQsIG9yIHByb2R1Y2UgYW4gZXJyb3IuCiAqIEFwcGxpY2F0aW9ucyBhcmUgYWxsb3dlZCB0byBjYWNoZSBsb29rdXAgcmVzdWx0cyBiYXNlZCBvbiB0aGUKICAgVVJMLCBvciBoYXZlIHRoZW0gcHJlY29tcGlsZWQgaW50byBhIGJpbmFyeSB0byBhdm9pZCBhbnkKICAgbG9va3VwLiBUaGVyZWZvcmUsIGJpbmFyeSBjb21wYXRpYmlsaXR5IG5lZWRzIHRvIGJlIHByZXNlcnZlZAogICBvbiBjaGFuZ2VzIHRvIHR5cGVzLiAoVXNlIHZlcnNpb25lZCB0eXBlIG5hbWVzIHRvIG1hbmFnZQogICBicmVha2luZyBjaGFuZ2VzLikKCiBOb3RlOiB0aGlzIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGN1cnJlbnRseSBhdmFpbGFibGUgaW4gdGhlIG9mZmljaWFsCiBwcm90b2J1ZiByZWxlYXNlLCBhbmQgaXQgaXMgbm90IHVzZWQgZm9yIHR5cGUgVVJMcyBiZWdpbm5pbmcgd2l0aAogdHlwZS5nb29nbGVhcGlzLmNvbS4gQXMgb2YgTWF5IDIwMjMsIHRoZXJlIGFyZSBubyB3aWRlbHkgdXNlZCB0eXBlIHNlcnZlcgogaW1wbGVtZW50YXRpb25zIGFuZCBubyBwbGFucyB0byBpbXBsZW1lbnQgb25lLgoKIFNjaGVtZXMgb3RoZXIgdGhhbiBgaHR0cGAsIGBodHRwc2AgKG9yIHRoZSBlbXB0eSBzY2hlbWUpIG1pZ2h0IGJlCiB1c2VkIHdpdGggaW1wbGVtZW50YXRpb24gc3BlY2lmaWMgc2VtYW50aWNzLgoKCg0KBQQAAgAFEgSdAQIICg0KBQQAAgABEgSdAQkRCg0KBQQAAgADEgSdARQVClcKBAQAAgESBKABAhIaSSBNdXN0IGJlIGEgdmFsaWQgc2VyaWFsaXplZCBwcm90b2NvbCBidWZmZXIgb2YgdGhlIGFib3ZlIHNwZWNpZmllZCB0eXBlLgoKDQoFBAACAQUSBKABAgcKDQoFBAACAQESBKABCA0KDQoFBAACAQMSBKABEBFiBnByb3RvMwrXJQoeZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnByb3RvEg9nb29nbGUucHJvdG9idWYiOgoIRHVyYXRpb24SGAoHc2Vjb25kcxgBIAEoA1IHc2Vjb25kcxIUCgVuYW5vcxgCIAEoBVIFbmFub3NCgwEKE2NvbS5nb29nbGUucHJvdG9idWZCDUR1cmF0aW9uUHJvdG9QAVoxZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZHVyYXRpb25wYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rZIwoGEgQeAHIBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAfCgkKAggfEgMiAB8KCAoBCBIDIwBICgkKAggLEgMjAEgKCAoBCBIDJAAsCgkKAggBEgMkACwKCAoBCBIDJQAuCgkKAggIEgMlAC4KCAoBCBIDJgAiCgkKAggKEgMmACIKCAoBCBIDJwAhCgkKAggkEgMnACEKCAoBCBIDKAA7CgkKAgglEgMoADsKnRAKAgQAEgRlAHIBGpAQIEEgRHVyYXRpb24gcmVwcmVzZW50cyBhIHNpZ25lZCwgZml4ZWQtbGVuZ3RoIHNwYW4gb2YgdGltZSByZXByZXNlbnRlZAogYXMgYSBjb3VudCBvZiBzZWNvbmRzIGFuZCBmcmFjdGlvbnMgb2Ygc2Vjb25kcyBhdCBuYW5vc2Vjb25kCiByZXNvbHV0aW9uLiBJdCBpcyBpbmRlcGVuZGVudCBvZiBhbnkgY2FsZW5kYXIgYW5kIGNvbmNlcHRzIGxpa2UgImRheSIKIG9yICJtb250aCIuIEl0IGlzIHJlbGF0ZWQgdG8gVGltZXN0YW1wIGluIHRoYXQgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbgogdHdvIFRpbWVzdGFtcCB2YWx1ZXMgaXMgYSBEdXJhdGlvbiBhbmQgaXQgY2FuIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQKIGZyb20gYSBUaW1lc3RhbXAuIFJhbmdlIGlzIGFwcHJveGltYXRlbHkgKy0xMCwwMDAgeWVhcnMuCgogIyBFeGFtcGxlcwoKIEV4YW1wbGUgMTogQ29tcHV0ZSBEdXJhdGlvbiBmcm9tIHR3byBUaW1lc3RhbXBzIGluIHBzZXVkbyBjb2RlLgoKICAgICBUaW1lc3RhbXAgc3RhcnQgPSAuLi47CiAgICAgVGltZXN0YW1wIGVuZCA9IC4uLjsKICAgICBEdXJhdGlvbiBkdXJhdGlvbiA9IC4uLjsKCiAgICAgZHVyYXRpb24uc2Vjb25kcyA9IGVuZC5zZWNvbmRzIC0gc3RhcnQuc2Vjb25kczsKICAgICBkdXJhdGlvbi5uYW5vcyA9IGVuZC5uYW5vcyAtIHN0YXJ0Lm5hbm9zOwoKICAgICBpZiAoZHVyYXRpb24uc2Vjb25kcyA8IDAgJiYgZHVyYXRpb24ubmFub3MgPiAwKSB7CiAgICAgICBkdXJhdGlvbi5zZWNvbmRzICs9IDE7CiAgICAgICBkdXJhdGlvbi5uYW5vcyAtPSAxMDAwMDAwMDAwOwogICAgIH0gZWxzZSBpZiAoZHVyYXRpb24uc2Vjb25kcyA+IDAgJiYgZHVyYXRpb24ubmFub3MgPCAwKSB7CiAgICAgICBkdXJhdGlvbi5zZWNvbmRzIC09IDE7CiAgICAgICBkdXJhdGlvbi5uYW5vcyArPSAxMDAwMDAwMDAwOwogICAgIH0KCiBFeGFtcGxlIDI6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gVGltZXN0YW1wICsgRHVyYXRpb24gaW4gcHNldWRvIGNvZGUuCgogICAgIFRpbWVzdGFtcCBzdGFydCA9IC4uLjsKICAgICBEdXJhdGlvbiBkdXJhdGlvbiA9IC4uLjsKICAgICBUaW1lc3RhbXAgZW5kID0gLi4uOwoKICAgICBlbmQuc2Vjb25kcyA9IHN0YXJ0LnNlY29uZHMgKyBkdXJhdGlvbi5zZWNvbmRzOwogICAgIGVuZC5uYW5vcyA9IHN0YXJ0Lm5hbm9zICsgZHVyYXRpb24ubmFub3M7CgogICAgIGlmIChlbmQubmFub3MgPCAwKSB7CiAgICAgICBlbmQuc2Vjb25kcyAtPSAxOwogICAgICAgZW5kLm5hbm9zICs9IDEwMDAwMDAwMDA7CiAgICAgfSBlbHNlIGlmIChlbmQubmFub3MgPj0gMTAwMDAwMDAwMCkgewogICAgICAgZW5kLnNlY29uZHMgKz0gMTsKICAgICAgIGVuZC5uYW5vcyAtPSAxMDAwMDAwMDAwOwogICAgIH0KCiBFeGFtcGxlIDM6IENvbXB1dGUgRHVyYXRpb24gZnJvbSBkYXRldGltZS50aW1lZGVsdGEgaW4gUHl0aG9uLgoKICAgICB0ZCA9IGRhdGV0aW1lLnRpbWVkZWx0YShkYXlzPTMsIG1pbnV0ZXM9MTApCiAgICAgZHVyYXRpb24gPSBEdXJhdGlvbigpCiAgICAgZHVyYXRpb24uRnJvbVRpbWVkZWx0YSh0ZCkKCiAjIEpTT04gTWFwcGluZwoKIEluIEpTT04gZm9ybWF0LCB0aGUgRHVyYXRpb24gdHlwZSBpcyBlbmNvZGVkIGFzIGEgc3RyaW5nIHJhdGhlciB0aGFuIGFuCiBvYmplY3QsIHdoZXJlIHRoZSBzdHJpbmcgZW5kcyBpbiB0aGUgc3VmZml4ICJzIiAoaW5kaWNhdGluZyBzZWNvbmRzKSBhbmQKIGlzIHByZWNlZGVkIGJ5IHRoZSBudW1iZXIgb2Ygc2Vjb25kcywgd2l0aCBuYW5vc2Vjb25kcyBleHByZXNzZWQgYXMKIGZyYWN0aW9uYWwgc2Vjb25kcy4gRm9yIGV4YW1wbGUsIDMgc2Vjb25kcyB3aXRoIDAgbmFub3NlY29uZHMgc2hvdWxkIGJlCiBlbmNvZGVkIGluIEpTT04gZm9ybWF0IGFzICIzcyIsIHdoaWxlIDMgc2Vjb25kcyBhbmQgMSBuYW5vc2Vjb25kIHNob3VsZAogYmUgZXhwcmVzc2VkIGluIEpTT04gZm9ybWF0IGFzICIzLjAwMDAwMDAwMXMiLCBhbmQgMyBzZWNvbmRzIGFuZCAxCiBtaWNyb3NlY29uZCBzaG91bGQgYmUgZXhwcmVzc2VkIGluIEpTT04gZm9ybWF0IGFzICIzLjAwMDAwMXMiLgoKCgoKAwQAARIDZQgQCtwBCgQEAAIAEgNpAhQazgEgU2lnbmVkIHNlY29uZHMgb2YgdGhlIHNwYW4gb2YgdGltZS4gTXVzdCBiZSBmcm9tIC0zMTUsNTc2LDAwMCwwMDAKIHRvICszMTUsNTc2LDAwMCwwMDAgaW5jbHVzaXZlLiBOb3RlOiB0aGVzZSBib3VuZHMgYXJlIGNvbXB1dGVkIGZyb206CiA2MCBzZWMvbWluICogNjAgbWluL2hyICogMjQgaHIvZGF5ICogMzY1LjI1IGRheXMveWVhciAqIDEwMDAwIHllYXJzCgoMCgUEAAIABRIDaQIHCgwKBQQAAgABEgNpCA8KDAoFBAACAAMSA2kSEwqDAwoEBAACARIDcQISGvUCIFNpZ25lZCBmcmFjdGlvbnMgb2YgYSBzZWNvbmQgYXQgbmFub3NlY29uZCByZXNvbHV0aW9uIG9mIHRoZSBzcGFuCiBvZiB0aW1lLiBEdXJhdGlvbnMgbGVzcyB0aGFuIG9uZSBzZWNvbmQgYXJlIHJlcHJlc2VudGVkIHdpdGggYSAwCiBgc2Vjb25kc2AgZmllbGQgYW5kIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgYG5hbm9zYCBmaWVsZC4gRm9yIGR1cmF0aW9ucwogb2Ygb25lIHNlY29uZCBvciBtb3JlLCBhIG5vbi16ZXJvIHZhbHVlIGZvciB0aGUgYG5hbm9zYCBmaWVsZCBtdXN0IGJlCiBvZiB0aGUgc2FtZSBzaWduIGFzIHRoZSBgc2Vjb25kc2AgZmllbGQuIE11c3QgYmUgZnJvbSAtOTk5LDk5OSw5OTkKIHRvICs5OTksOTk5LDk5OSBpbmNsdXNpdmUuCgoMCgUEAAIBBRIDcQIHCgwKBQQAAgEBEgNxCA0KDAoFBAACAQMSA3EQEWIGcHJvdG8zCoo9CiBnb29nbGUvcHJvdG9idWYvZmllbGRfbWFzay5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIiEKCUZpZWxkTWFzaxIUCgVwYXRocxgBIAMoCVIFcGF0aHNChQEKE2NvbS5nb29nbGUucHJvdG9idWZCDkZpZWxkTWFza1Byb3RvUAFaMmdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL2ZpZWxkbWFza3Bi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSqE7CgcSBR4A9AEBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAsCgkKAggBEgMiACwKCAoBCBIDIwAvCgkKAggIEgMjAC8KCAoBCBIDJAAiCgkKAggKEgMkACIKCAoBCBIDJQAhCgkKAggkEgMlACEKCAoBCBIDJgA7CgkKAgglEgMmADsKCAoBCBIDJwBJCgkKAggLEgMnAEkKCAoBCBIDKAAfCgkKAggfEgMoAB8KsiwKAgQAEgbxAQD0AQEaoywgYEZpZWxkTWFza2AgcmVwcmVzZW50cyBhIHNldCBvZiBzeW1ib2xpYyBmaWVsZCBwYXRocywgZm9yIGV4YW1wbGU6CgogICAgIHBhdGhzOiAiZi5hIgogICAgIHBhdGhzOiAiZi5iLmQiCgogSGVyZSBgZmAgcmVwcmVzZW50cyBhIGZpZWxkIGluIHNvbWUgcm9vdCBtZXNzYWdlLCBgYWAgYW5kIGBiYAogZmllbGRzIGluIHRoZSBtZXNzYWdlIGZvdW5kIGluIGBmYCwgYW5kIGBkYCBhIGZpZWxkIGZvdW5kIGluIHRoZQogbWVzc2FnZSBpbiBgZi5iYC4KCiBGaWVsZCBtYXNrcyBhcmUgdXNlZCB0byBzcGVjaWZ5IGEgc3Vic2V0IG9mIGZpZWxkcyB0aGF0IHNob3VsZCBiZQogcmV0dXJuZWQgYnkgYSBnZXQgb3BlcmF0aW9uIG9yIG1vZGlmaWVkIGJ5IGFuIHVwZGF0ZSBvcGVyYXRpb24uCiBGaWVsZCBtYXNrcyBhbHNvIGhhdmUgYSBjdXN0b20gSlNPTiBlbmNvZGluZyAoc2VlIGJlbG93KS4KCiAjIEZpZWxkIE1hc2tzIGluIFByb2plY3Rpb25zCgogV2hlbiB1c2VkIGluIHRoZSBjb250ZXh0IG9mIGEgcHJvamVjdGlvbiwgYSByZXNwb25zZSBtZXNzYWdlIG9yCiBzdWItbWVzc2FnZSBpcyBmaWx0ZXJlZCBieSB0aGUgQVBJIHRvIG9ubHkgY29udGFpbiB0aG9zZSBmaWVsZHMgYXMKIHNwZWNpZmllZCBpbiB0aGUgbWFzay4gRm9yIGV4YW1wbGUsIGlmIHRoZSBtYXNrIGluIHRoZSBwcmV2aW91cwogZXhhbXBsZSBpcyBhcHBsaWVkIHRvIGEgcmVzcG9uc2UgbWVzc2FnZSBhcyBmb2xsb3dzOgoKICAgICBmIHsKICAgICAgIGEgOiAyMgogICAgICAgYiB7CiAgICAgICAgIGQgOiAxCiAgICAgICAgIHggOiAyCiAgICAgICB9CiAgICAgICB5IDogMTMKICAgICB9CiAgICAgejogOAoKIFRoZSByZXN1bHQgd2lsbCBub3QgY29udGFpbiBzcGVjaWZpYyB2YWx1ZXMgZm9yIGZpZWxkcyB4LHkgYW5kIHoKICh0aGVpciB2YWx1ZSB3aWxsIGJlIHNldCB0byB0aGUgZGVmYXVsdCwgYW5kIG9taXR0ZWQgaW4gcHJvdG8gdGV4dAogb3V0cHV0KToKCgogICAgIGYgewogICAgICAgYSA6IDIyCiAgICAgICBiIHsKICAgICAgICAgZCA6IDEKICAgICAgIH0KICAgICB9CgogQSByZXBlYXRlZCBmaWVsZCBpcyBub3QgYWxsb3dlZCBleGNlcHQgYXQgdGhlIGxhc3QgcG9zaXRpb24gb2YgYQogcGF0aHMgc3RyaW5nLgoKIElmIGEgRmllbGRNYXNrIG9iamVjdCBpcyBub3QgcHJlc2VudCBpbiBhIGdldCBvcGVyYXRpb24sIHRoZQogb3BlcmF0aW9uIGFwcGxpZXMgdG8gYWxsIGZpZWxkcyAoYXMgaWYgYSBGaWVsZE1hc2sgb2YgYWxsIGZpZWxkcwogaGFkIGJlZW4gc3BlY2lmaWVkKS4KCiBOb3RlIHRoYXQgYSBmaWVsZCBtYXNrIGRvZXMgbm90IG5lY2Vzc2FyaWx5IGFwcGx5IHRvIHRoZQogdG9wLWxldmVsIHJlc3BvbnNlIG1lc3NhZ2UuIEluIGNhc2Ugb2YgYSBSRVNUIGdldCBvcGVyYXRpb24sIHRoZQogZmllbGQgbWFzayBhcHBsaWVzIGRpcmVjdGx5IHRvIHRoZSByZXNwb25zZSwgYnV0IGluIGNhc2Ugb2YgYSBSRVNUCiBsaXN0IG9wZXJhdGlvbiwgdGhlIG1hc2sgaW5zdGVhZCBhcHBsaWVzIHRvIGVhY2ggaW5kaXZpZHVhbCBtZXNzYWdlCiBpbiB0aGUgcmV0dXJuZWQgcmVzb3VyY2UgbGlzdC4gSW4gY2FzZSBvZiBhIFJFU1QgY3VzdG9tIG1ldGhvZCwKIG90aGVyIGRlZmluaXRpb25zIG1heSBiZSB1c2VkLiBXaGVyZSB0aGUgbWFzayBhcHBsaWVzIHdpbGwgYmUKIGNsZWFybHkgZG9jdW1lbnRlZCB0b2dldGhlciB3aXRoIGl0cyBkZWNsYXJhdGlvbiBpbiB0aGUgQVBJLiAgSW4KIGFueSBjYXNlLCB0aGUgZWZmZWN0IG9uIHRoZSByZXR1cm5lZCByZXNvdXJjZS9yZXNvdXJjZXMgaXMgcmVxdWlyZWQKIGJlaGF2aW9yIGZvciBBUElzLgoKICMgRmllbGQgTWFza3MgaW4gVXBkYXRlIE9wZXJhdGlvbnMKCiBBIGZpZWxkIG1hc2sgaW4gdXBkYXRlIG9wZXJhdGlvbnMgc3BlY2lmaWVzIHdoaWNoIGZpZWxkcyBvZiB0aGUKIHRhcmdldGVkIHJlc291cmNlIGFyZSBnb2luZyB0byBiZSB1cGRhdGVkLiBUaGUgQVBJIGlzIHJlcXVpcmVkCiB0byBvbmx5IGNoYW5nZSB0aGUgdmFsdWVzIG9mIHRoZSBmaWVsZHMgYXMgc3BlY2lmaWVkIGluIHRoZSBtYXNrCiBhbmQgbGVhdmUgdGhlIG90aGVycyB1bnRvdWNoZWQuIElmIGEgcmVzb3VyY2UgaXMgcGFzc2VkIGluIHRvCiBkZXNjcmliZSB0aGUgdXBkYXRlZCB2YWx1ZXMsIHRoZSBBUEkgaWdub3JlcyB0aGUgdmFsdWVzIG9mIGFsbAogZmllbGRzIG5vdCBjb3ZlcmVkIGJ5IHRoZSBtYXNrLgoKIElmIGEgcmVwZWF0ZWQgZmllbGQgaXMgc3BlY2lmaWVkIGZvciBhbiB1cGRhdGUgb3BlcmF0aW9uLCBuZXcgdmFsdWVzIHdpbGwKIGJlIGFwcGVuZGVkIHRvIHRoZSBleGlzdGluZyByZXBlYXRlZCBmaWVsZCBpbiB0aGUgdGFyZ2V0IHJlc291cmNlLiBOb3RlIHRoYXQKIGEgcmVwZWF0ZWQgZmllbGQgaXMgb25seSBhbGxvd2VkIGluIHRoZSBsYXN0IHBvc2l0aW9uIG9mIGEgYHBhdGhzYCBzdHJpbmcuCgogSWYgYSBzdWItbWVzc2FnZSBpcyBzcGVjaWZpZWQgaW4gdGhlIGxhc3QgcG9zaXRpb24gb2YgdGhlIGZpZWxkIG1hc2sgZm9yIGFuCiB1cGRhdGUgb3BlcmF0aW9uLCB0aGVuIG5ldyB2YWx1ZSB3aWxsIGJlIG1lcmdlZCBpbnRvIHRoZSBleGlzdGluZyBzdWItbWVzc2FnZQogaW4gdGhlIHRhcmdldCByZXNvdXJjZS4KCiBGb3IgZXhhbXBsZSwgZ2l2ZW4gdGhlIHRhcmdldCBtZXNzYWdlOgoKICAgICBmIHsKICAgICAgIGIgewogICAgICAgICBkOiAxCiAgICAgICAgIHg6IDIKICAgICAgIH0KICAgICAgIGM6IFsxXQogICAgIH0KCiBBbmQgYW4gdXBkYXRlIG1lc3NhZ2U6CgogICAgIGYgewogICAgICAgYiB7CiAgICAgICAgIGQ6IDEwCiAgICAgICB9CiAgICAgICBjOiBbMl0KICAgICB9CgogdGhlbiBpZiB0aGUgZmllbGQgbWFzayBpczoKCiAgcGF0aHM6IFsiZi5iIiwgImYuYyJdCgogdGhlbiB0aGUgcmVzdWx0IHdpbGwgYmU6CgogICAgIGYgewogICAgICAgYiB7CiAgICAgICAgIGQ6IDEwCiAgICAgICAgIHg6IDIKICAgICAgIH0KICAgICAgIGM6IFsxLCAyXQogICAgIH0KCiBBbiBpbXBsZW1lbnRhdGlvbiBtYXkgcHJvdmlkZSBvcHRpb25zIHRvIG92ZXJyaWRlIHRoaXMgZGVmYXVsdCBiZWhhdmlvciBmb3IKIHJlcGVhdGVkIGFuZCBtZXNzYWdlIGZpZWxkcy4KCiBJbiBvcmRlciB0byByZXNldCBhIGZpZWxkJ3MgdmFsdWUgdG8gdGhlIGRlZmF1bHQsIHRoZSBmaWVsZCBtdXN0CiBiZSBpbiB0aGUgbWFzayBhbmQgc2V0IHRvIHRoZSBkZWZhdWx0IHZhbHVlIGluIHRoZSBwcm92aWRlZCByZXNvdXJjZS4KIEhlbmNlLCBpbiBvcmRlciB0byByZXNldCBhbGwgZmllbGRzIG9mIGEgcmVzb3VyY2UsIHByb3ZpZGUgYSBkZWZhdWx0CiBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2UgYW5kIHNldCBhbGwgZmllbGRzIGluIHRoZSBtYXNrLCBvciBkbwogbm90IHByb3ZpZGUgYSBtYXNrIGFzIGRlc2NyaWJlZCBiZWxvdy4KCiBJZiBhIGZpZWxkIG1hc2sgaXMgbm90IHByZXNlbnQgb24gdXBkYXRlLCB0aGUgb3BlcmF0aW9uIGFwcGxpZXMgdG8KIGFsbCBmaWVsZHMgKGFzIGlmIGEgZmllbGQgbWFzayBvZiBhbGwgZmllbGRzIGhhcyBiZWVuIHNwZWNpZmllZCkuCiBOb3RlIHRoYXQgaW4gdGhlIHByZXNlbmNlIG9mIHNjaGVtYSBldm9sdXRpb24sIHRoaXMgbWF5IG1lYW4gdGhhdAogZmllbGRzIHRoZSBjbGllbnQgZG9lcyBub3Qga25vdyBhbmQgaGFzIHRoZXJlZm9yZSBub3QgZmlsbGVkIGludG8KIHRoZSByZXF1ZXN0IHdpbGwgYmUgcmVzZXQgdG8gdGhlaXIgZGVmYXVsdC4gSWYgdGhpcyBpcyB1bndhbnRlZAogYmVoYXZpb3IsIGEgc3BlY2lmaWMgc2VydmljZSBtYXkgcmVxdWlyZSBhIGNsaWVudCB0byBhbHdheXMgc3BlY2lmeQogYSBmaWVsZCBtYXNrLCBwcm9kdWNpbmcgYW4gZXJyb3IgaWYgbm90LgoKIEFzIHdpdGggZ2V0IG9wZXJhdGlvbnMsIHRoZSBsb2NhdGlvbiBvZiB0aGUgcmVzb3VyY2Ugd2hpY2gKIGRlc2NyaWJlcyB0aGUgdXBkYXRlZCB2YWx1ZXMgaW4gdGhlIHJlcXVlc3QgbWVzc2FnZSBkZXBlbmRzIG9uIHRoZQogb3BlcmF0aW9uIGtpbmQuIEluIGFueSBjYXNlLCB0aGUgZWZmZWN0IG9mIHRoZSBmaWVsZCBtYXNrIGlzCiByZXF1aXJlZCB0byBiZSBob25vcmVkIGJ5IHRoZSBBUEkuCgogIyMgQ29uc2lkZXJhdGlvbnMgZm9yIEhUVFAgUkVTVAoKIFRoZSBIVFRQIGtpbmQgb2YgYW4gdXBkYXRlIG9wZXJhdGlvbiB3aGljaCB1c2VzIGEgZmllbGQgbWFzayBtdXN0CiBiZSBzZXQgdG8gUEFUQ0ggaW5zdGVhZCBvZiBQVVQgaW4gb3JkZXIgdG8gc2F0aXNmeSBIVFRQIHNlbWFudGljcwogKFBVVCBtdXN0IG9ubHkgYmUgdXNlZCBmb3IgZnVsbCB1cGRhdGVzKS4KCiAjIEpTT04gRW5jb2Rpbmcgb2YgRmllbGQgTWFza3MKCiBJbiBKU09OLCBhIGZpZWxkIG1hc2sgaXMgZW5jb2RlZCBhcyBhIHNpbmdsZSBzdHJpbmcgd2hlcmUgcGF0aHMgYXJlCiBzZXBhcmF0ZWQgYnkgYSBjb21tYS4gRmllbGRzIG5hbWUgaW4gZWFjaCBwYXRoIGFyZSBjb252ZXJ0ZWQKIHRvL2Zyb20gbG93ZXItY2FtZWwgbmFtaW5nIGNvbnZlbnRpb25zLgoKIEFzIGFuIGV4YW1wbGUsIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgbWVzc2FnZSBkZWNsYXJhdGlvbnM6CgogICAgIG1lc3NhZ2UgUHJvZmlsZSB7CiAgICAgICBVc2VyIHVzZXIgPSAxOwogICAgICAgUGhvdG8gcGhvdG8gPSAyOwogICAgIH0KICAgICBtZXNzYWdlIFVzZXIgewogICAgICAgc3RyaW5nIGRpc3BsYXlfbmFtZSA9IDE7CiAgICAgICBzdHJpbmcgYWRkcmVzcyA9IDI7CiAgICAgfQoKIEluIHByb3RvIGEgZmllbGQgbWFzayBmb3IgYFByb2ZpbGVgIG1heSBsb29rIGFzIHN1Y2g6CgogICAgIG1hc2sgewogICAgICAgcGF0aHM6ICJ1c2VyLmRpc3BsYXlfbmFtZSIKICAgICAgIHBhdGhzOiAicGhvdG8iCiAgICAgfQoKIEluIEpTT04sIHRoZSBzYW1lIG1hc2sgaXMgcmVwcmVzZW50ZWQgYXMgYmVsb3c6CgogICAgIHsKICAgICAgIG1hc2s6ICJ1c2VyLmRpc3BsYXlOYW1lLHBob3RvIgogICAgIH0KCiAjIEZpZWxkIE1hc2tzIGFuZCBPbmVvZiBGaWVsZHMKCiBGaWVsZCBtYXNrcyB0cmVhdCBmaWVsZHMgaW4gb25lb2ZzIGp1c3QgYXMgcmVndWxhciBmaWVsZHMuIENvbnNpZGVyIHRoZQogZm9sbG93aW5nIG1lc3NhZ2U6CgogICAgIG1lc3NhZ2UgU2FtcGxlTWVzc2FnZSB7CiAgICAgICBvbmVvZiB0ZXN0X29uZW9mIHsKICAgICAgICAgc3RyaW5nIG5hbWUgPSA0OwogICAgICAgICBTdWJNZXNzYWdlIHN1Yl9tZXNzYWdlID0gOTsKICAgICAgIH0KICAgICB9CgogVGhlIGZpZWxkIG1hc2sgY2FuIGJlOgoKICAgICBtYXNrIHsKICAgICAgIHBhdGhzOiAibmFtZSIKICAgICB9CgogT3I6CgogICAgIG1hc2sgewogICAgICAgcGF0aHM6ICJzdWJfbWVzc2FnZSIKICAgICB9CgogTm90ZSB0aGF0IG9uZW9mIHR5cGUgbmFtZXMgKCJ0ZXN0X29uZW9mIiBpbiB0aGlzIGNhc2UpIGNhbm5vdCBiZSB1c2VkIGluCiBwYXRocy4KCiAjIyBGaWVsZCBNYXNrIFZlcmlmaWNhdGlvbgoKIFRoZSBpbXBsZW1lbnRhdGlvbiBvZiBhbnkgQVBJIG1ldGhvZCB3aGljaCBoYXMgYSBGaWVsZE1hc2sgdHlwZSBmaWVsZCBpbiB0aGUKIHJlcXVlc3Qgc2hvdWxkIHZlcmlmeSB0aGUgaW5jbHVkZWQgZmllbGQgcGF0aHMsIGFuZCByZXR1cm4gYW4KIGBJTlZBTElEX0FSR1VNRU5UYCBlcnJvciBpZiBhbnkgcGF0aCBpcyB1bm1hcHBhYmxlLgoKCwoDBAABEgTxAQgRCiwKBAQAAgASBPMBAhwaHiBUaGUgc2V0IG9mIGZpZWxkIG1hc2sgcGF0aHMuCgoNCgUEAAIABBIE8wECCgoNCgUEAAIABRIE8wELEQoNCgUEAAIAARIE8wESFwoNCgUEAAIAAxIE8wEaG2IGcHJvdG8zCsMxCh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvEg9nb29nbGUucHJvdG9idWYiOwoJVGltZXN0YW1wEhgKB3NlY29uZHMYASABKANSB3NlY29uZHMSFAoFbmFub3MYAiABKAVSBW5hbm9zQoUBChNjb20uZ29vZ2xlLnByb3RvYnVmQg5UaW1lc3RhbXBQcm90b1ABWjJnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi90aW1lc3RhbXBwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0rBLwoHEgUeAI8BAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAHwoJCgIIHxIDIgAfCggKAQgSAyMASQoJCgIICxIDIwBJCggKAQgSAyQALAoJCgIIARIDJAAsCggKAQgSAyUALwoJCgIICBIDJQAvCggKAQgSAyYAIgoJCgIIChIDJgAiCggKAQgSAycAIQoJCgIIJBIDJwAhCggKAQgSAygAOwoJCgIIJRIDKAA7CtodCgIEABIGhAEAjwEBGssdIEEgVGltZXN0YW1wIHJlcHJlc2VudHMgYSBwb2ludCBpbiB0aW1lIGluZGVwZW5kZW50IG9mIGFueSB0aW1lIHpvbmUgb3IgbG9jYWwKIGNhbGVuZGFyLCBlbmNvZGVkIGFzIGEgY291bnQgb2Ygc2Vjb25kcyBhbmQgZnJhY3Rpb25zIG9mIHNlY29uZHMgYXQKIG5hbm9zZWNvbmQgcmVzb2x1dGlvbi4gVGhlIGNvdW50IGlzIHJlbGF0aXZlIHRvIGFuIGVwb2NoIGF0IFVUQyBtaWRuaWdodCBvbgogSmFudWFyeSAxLCAxOTcwLCBpbiB0aGUgcHJvbGVwdGljIEdyZWdvcmlhbiBjYWxlbmRhciB3aGljaCBleHRlbmRzIHRoZQogR3JlZ29yaWFuIGNhbGVuZGFyIGJhY2t3YXJkcyB0byB5ZWFyIG9uZS4KCiBBbGwgbWludXRlcyBhcmUgNjAgc2Vjb25kcyBsb25nLiBMZWFwIHNlY29uZHMgYXJlICJzbWVhcmVkIiBzbyB0aGF0IG5vIGxlYXAKIHNlY29uZCB0YWJsZSBpcyBuZWVkZWQgZm9yIGludGVycHJldGF0aW9uLCB1c2luZyBhIFsyNC1ob3VyIGxpbmVhcgogc21lYXJdKGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3RpbWUvc21lYXIpLgoKIFRoZSByYW5nZSBpcyBmcm9tIDAwMDEtMDEtMDFUMDA6MDA6MDBaIHRvIDk5OTktMTItMzFUMjM6NTk6NTkuOTk5OTk5OTk5Wi4gQnkKIHJlc3RyaWN0aW5nIHRvIHRoYXQgcmFuZ2UsIHdlIGVuc3VyZSB0aGF0IHdlIGNhbiBjb252ZXJ0IHRvIGFuZCBmcm9tIFtSRkMKIDMzMzldKGh0dHBzOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzMzM5LnR4dCkgZGF0ZSBzdHJpbmdzLgoKICMgRXhhbXBsZXMKCiBFeGFtcGxlIDE6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gUE9TSVggYHRpbWUoKWAuCgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXA7CiAgICAgdGltZXN0YW1wLnNldF9zZWNvbmRzKHRpbWUoTlVMTCkpOwogICAgIHRpbWVzdGFtcC5zZXRfbmFub3MoMCk7CgogRXhhbXBsZSAyOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFBPU0lYIGBnZXR0aW1lb2ZkYXkoKWAuCgogICAgIHN0cnVjdCB0aW1ldmFsIHR2OwogICAgIGdldHRpbWVvZmRheSgmdHYsIE5VTEwpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcyh0di50dl9zZWMpOwogICAgIHRpbWVzdGFtcC5zZXRfbmFub3ModHYudHZfdXNlYyAqIDEwMDApOwoKIEV4YW1wbGUgMzogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBXaW4zMiBgR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoKWAuCgogICAgIEZJTEVUSU1FIGZ0OwogICAgIEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKCZmdCk7CiAgICAgVUlOVDY0IHRpY2tzID0gKCgoVUlOVDY0KWZ0LmR3SGlnaERhdGVUaW1lKSA8PCAzMikgfCBmdC5kd0xvd0RhdGVUaW1lOwoKICAgICAvLyBBIFdpbmRvd3MgdGljayBpcyAxMDAgbmFub3NlY29uZHMuIFdpbmRvd3MgZXBvY2ggMTYwMS0wMS0wMVQwMDowMDowMFoKICAgICAvLyBpcyAxMTY0NDQ3MzYwMCBzZWNvbmRzIGJlZm9yZSBVbml4IGVwb2NoIDE5NzAtMDEtMDFUMDA6MDA6MDBaLgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXA7CiAgICAgdGltZXN0YW1wLnNldF9zZWNvbmRzKChJTlQ2NCkgKCh0aWNrcyAvIDEwMDAwMDAwKSAtIDExNjQ0NDczNjAwTEwpKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKChJTlQzMikgKCh0aWNrcyAlIDEwMDAwMDAwKSAqIDEwMCkpOwoKIEV4YW1wbGUgNDogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBKYXZhIGBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKWAuCgogICAgIGxvbmcgbWlsbGlzID0gU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXAgPSBUaW1lc3RhbXAubmV3QnVpbGRlcigpLnNldFNlY29uZHMobWlsbGlzIC8gMTAwMCkKICAgICAgICAgLnNldE5hbm9zKChpbnQpICgobWlsbGlzICUgMTAwMCkgKiAxMDAwMDAwKSkuYnVpbGQoKTsKCiBFeGFtcGxlIDU6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gSmF2YSBgSW5zdGFudC5ub3coKWAuCgogICAgIEluc3RhbnQgbm93ID0gSW5zdGFudC5ub3coKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcCA9CiAgICAgICAgIFRpbWVzdGFtcC5uZXdCdWlsZGVyKCkuc2V0U2Vjb25kcyhub3cuZ2V0RXBvY2hTZWNvbmQoKSkKICAgICAgICAgICAgIC5zZXROYW5vcyhub3cuZ2V0TmFubygpKS5idWlsZCgpOwoKIEV4YW1wbGUgNjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBjdXJyZW50IHRpbWUgaW4gUHl0aG9uLgoKICAgICB0aW1lc3RhbXAgPSBUaW1lc3RhbXAoKQogICAgIHRpbWVzdGFtcC5HZXRDdXJyZW50VGltZSgpCgogIyBKU09OIE1hcHBpbmcKCiBJbiBKU09OIGZvcm1hdCwgdGhlIFRpbWVzdGFtcCB0eXBlIGlzIGVuY29kZWQgYXMgYSBzdHJpbmcgaW4gdGhlCiBbUkZDIDMzMzldKGh0dHBzOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzMzM5LnR4dCkgZm9ybWF0LiBUaGF0IGlzLCB0aGUKIGZvcm1hdCBpcyAie3llYXJ9LXttb250aH0te2RheX1Ue2hvdXJ9OnttaW59OntzZWN9Wy57ZnJhY19zZWN9XVoiCiB3aGVyZSB7eWVhcn0gaXMgYWx3YXlzIGV4cHJlc3NlZCB1c2luZyBmb3VyIGRpZ2l0cyB3aGlsZSB7bW9udGh9LCB7ZGF5fSwKIHtob3VyfSwge21pbn0sIGFuZCB7c2VjfSBhcmUgemVyby1wYWRkZWQgdG8gdHdvIGRpZ2l0cyBlYWNoLiBUaGUgZnJhY3Rpb25hbAogc2Vjb25kcywgd2hpY2ggY2FuIGdvIHVwIHRvIDkgZGlnaXRzIChpLmUuIHVwIHRvIDEgbmFub3NlY29uZCByZXNvbHV0aW9uKSwKIGFyZSBvcHRpb25hbC4gVGhlICJaIiBzdWZmaXggaW5kaWNhdGVzIHRoZSB0aW1lem9uZSAoIlVUQyIpOyB0aGUgdGltZXpvbmUKIGlzIHJlcXVpcmVkLiBBIHByb3RvMyBKU09OIHNlcmlhbGl6ZXIgc2hvdWxkIGFsd2F5cyB1c2UgVVRDIChhcyBpbmRpY2F0ZWQgYnkKICJaIikgd2hlbiBwcmludGluZyB0aGUgVGltZXN0YW1wIHR5cGUgYW5kIGEgcHJvdG8zIEpTT04gcGFyc2VyIHNob3VsZCBiZQogYWJsZSB0byBhY2NlcHQgYm90aCBVVEMgYW5kIG90aGVyIHRpbWV6b25lcyAoYXMgaW5kaWNhdGVkIGJ5IGFuIG9mZnNldCkuCgogRm9yIGV4YW1wbGUsICIyMDE3LTAxLTE1VDAxOjMwOjE1LjAxWiIgZW5jb2RlcyAxNS4wMSBzZWNvbmRzIHBhc3QKIDAxOjMwIFVUQyBvbiBKYW51YXJ5IDE1LCAyMDE3LgoKIEluIEphdmFTY3JpcHQsIG9uZSBjYW4gY29udmVydCBhIERhdGUgb2JqZWN0IHRvIHRoaXMgZm9ybWF0IHVzaW5nIHRoZQogc3RhbmRhcmQKIFt0b0lTT1N0cmluZygpXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL3RvSVNPU3RyaW5nKQogbWV0aG9kLiBJbiBQeXRob24sIGEgc3RhbmRhcmQgYGRhdGV0aW1lLmRhdGV0aW1lYCBvYmplY3QgY2FuIGJlIGNvbnZlcnRlZAogdG8gdGhpcyBmb3JtYXQgdXNpbmcKIFtgc3RyZnRpbWVgXShodHRwczovL2RvY3MucHl0aG9uLm9yZy8yL2xpYnJhcnkvdGltZS5odG1sI3RpbWUuc3RyZnRpbWUpIHdpdGgKIHRoZSB0aW1lIGZvcm1hdCBzcGVjICclWS0lbS0lZFQlSDolTTolUy4lZlonLiBMaWtld2lzZSwgaW4gSmF2YSwgb25lIGNhbiB1c2UKIHRoZSBKb2RhIFRpbWUncyBbYElTT0RhdGVUaW1lRm9ybWF0LmRhdGVUaW1lKClgXSgKIGh0dHA6Ly9qb2RhLXRpbWUuc291cmNlZm9yZ2UubmV0L2FwaWRvY3Mvb3JnL2pvZGEvdGltZS9mb3JtYXQvSVNPRGF0ZVRpbWVGb3JtYXQuaHRtbCNkYXRlVGltZSgpCiApIHRvIG9idGFpbiBhIGZvcm1hdHRlciBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGltZXN0YW1wcyBpbiB0aGlzIGZvcm1hdC4KCgoLCgMEAAESBIQBCBEKnQEKBAQAAgASBIgBAhQajgEgUmVwcmVzZW50cyBzZWNvbmRzIG9mIFVUQyB0aW1lIHNpbmNlIFVuaXggZXBvY2gKIDE5NzAtMDEtMDFUMDA6MDA6MDBaLiBNdXN0IGJlIGZyb20gMDAwMS0wMS0wMVQwMDowMDowMFogdG8KIDk5OTktMTItMzFUMjM6NTk6NTlaIGluY2x1c2l2ZS4KCg0KBQQAAgAFEgSIAQIHCg0KBQQAAgABEgSIAQgPCg0KBQQAAgADEgSIARITCuUBCgQEAAIBEgSOAQISGtYBIE5vbi1uZWdhdGl2ZSBmcmFjdGlvbnMgb2YgYSBzZWNvbmQgYXQgbmFub3NlY29uZCByZXNvbHV0aW9uLiBOZWdhdGl2ZQogc2Vjb25kIHZhbHVlcyB3aXRoIGZyYWN0aW9ucyBtdXN0IHN0aWxsIGhhdmUgbm9uLW5lZ2F0aXZlIG5hbm9zIHZhbHVlcwogdGhhdCBjb3VudCBmb3J3YXJkIGluIHRpbWUuIE11c3QgYmUgZnJvbSAwIHRvIDk5OSw5OTksOTk5CiBpbmNsdXNpdmUuCgoNCgUEAAIBBRIEjgECBwoNCgUEAAIBARIEjgEIDQoNCgUEAAIBAxIEjgEQEWIGcHJvdG8zCvUtCh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIjCgtEb3VibGVWYWx1ZRIUCgV2YWx1ZRgBIAEoAVIFdmFsdWUiIgoKRmxvYXRWYWx1ZRIUCgV2YWx1ZRgBIAEoAlIFdmFsdWUiIgoKSW50NjRWYWx1ZRIUCgV2YWx1ZRgBIAEoA1IFdmFsdWUiIwoLVUludDY0VmFsdWUSFAoFdmFsdWUYASABKARSBXZhbHVlIiIKCkludDMyVmFsdWUSFAoFdmFsdWUYASABKAVSBXZhbHVlIiMKC1VJbnQzMlZhbHVlEhQKBXZhbHVlGAEgASgNUgV2YWx1ZSIhCglCb29sVmFsdWUSFAoFdmFsdWUYASABKAhSBXZhbHVlIiMKC1N0cmluZ1ZhbHVlEhQKBXZhbHVlGAEgASgJUgV2YWx1ZSIiCgpCeXRlc1ZhbHVlEhQKBXZhbHVlGAEgASgMUgV2YWx1ZUKDAQoTY29tLmdvb2dsZS5wcm90b2J1ZkINV3JhcHBlcnNQcm90b1ABWjFnb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi93cmFwcGVyc3Bi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSuwpCgcSBS8AnAEBCrETCgEMEgMvABIyphMgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgogV3JhcHBlcnMgZm9yIHByaW1pdGl2ZSAobm9uLW1lc3NhZ2UpIHR5cGVzLiBUaGVzZSB0eXBlcyB3ZXJlIG5lZWRlZAogZm9yIGxlZ2FjeSByZWFzb25zIGFuZCBhcmUgbm90IHJlY29tbWVuZGVkIGZvciB1c2UgaW4gbmV3IEFQSXMuCgogSGlzdG9yaWNhbGx5IHRoZXNlIHdyYXBwZXJzIHdlcmUgdXNlZnVsIHRvIGhhdmUgcHJlc2VuY2Ugb24gcHJvdG8zIHByaW1pdGl2ZQogZmllbGRzLCBidXQgcHJvdG8zIHN5bnRheCBoYXMgYmVlbiB1cGRhdGVkIHRvIHN1cHBvcnQgdGhlIGBvcHRpb25hbGAga2V5d29yZC4KIFVzaW5nIHRoYXQga2V5d29yZCBpcyBub3cgdGhlIHN0cm9uZ2x5IHByZWZlcnJlZCB3YXkgdG8gYWRkIHByZXNlbmNlIHRvCiBwcm90bzMgcHJpbWl0aXZlIGZpZWxkcy4KCiBBIHNlY29uZGFyeSB1c2VjYXNlIHdhcyB0byBlbWJlZCBwcmltaXRpdmVzIGluIHRoZSBgZ29vZ2xlLnByb3RvYnVmLkFueWAKIHR5cGU6IGl0IGlzIG5vdyByZWNvbW1lbmRlZCB0aGF0IHlvdSBlbWJlZCB5b3VyIHZhbHVlIGluIHlvdXIgb3duIHdyYXBwZXIKIG1lc3NhZ2Ugd2hpY2ggY2FuIGJlIHNwZWNpZmljYWxseSBkb2N1bWVudGVkLgoKIFRoZXNlIHdyYXBwZXJzIGhhdmUgbm8gbWVhbmluZ2Z1bCB1c2Ugd2l0aGluIHJlcGVhdGVkIGZpZWxkcyBhcyB0aGV5IGxhY2sKIHRoZSBhYmlsaXR5IHRvIGRldGVjdCBwcmVzZW5jZSBvbiBpbmRpdmlkdWFsIGVsZW1lbnRzLgogVGhlc2Ugd3JhcHBlcnMgaGF2ZSBubyBtZWFuaW5nZnVsIHVzZSB3aXRoaW4gYSBtYXAgb3IgYSBvbmVvZiBzaW5jZQogaW5kaXZpZHVhbCBlbnRyaWVzIG9mIGEgbWFwIG9yIGZpZWxkcyBvZiBhIG9uZW9mIGNhbiBhbHJlYWR5IGRldGVjdCBwcmVzZW5jZS4KCggKAQISAzEAGAoICgEIEgMzAB8KCQoCCB8SAzMAHwoICgEIEgM0AEgKCQoCCAsSAzQASAoICgEIEgM1ACwKCQoCCAESAzUALAoICgEIEgM2AC4KCQoCCAgSAzYALgoICgEIEgM3ACIKCQoCCAoSAzcAIgoICgEIEgM4ACEKCQoCCCQSAzgAIQoICgEIEgM5ADsKCQoCCCUSAzkAOwrQAQoCBAASBEEARAEawwEgV3JhcHBlciBtZXNzYWdlIGZvciBgZG91YmxlYC4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYERvdWJsZVZhbHVlYCBpcyBKU09OIG51bWJlci4KCiBOb3QgcmVjb21tZW5kZWQgZm9yIHVzZSBpbiBuZXcgQVBJcywgYnV0IHN0aWxsIHVzZWZ1bCBmb3IgbGVnYWN5IEFQSXMgYW5kCiBoYXMgbm8gcGxhbiB0byBiZSByZW1vdmVkLgoKCgoDBAABEgNBCBMKIAoEBAACABIDQwITGhMgVGhlIGRvdWJsZSB2YWx1ZS4KCgwKBQQAAgAFEgNDAggKDAoFBAACAAESA0MJDgoMCgUEAAIAAxIDQxESCs4BCgIEARIETABPARrBASBXcmFwcGVyIG1lc3NhZ2UgZm9yIGBmbG9hdGAuCgogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gZm9yIGBGbG9hdFZhbHVlYCBpcyBKU09OIG51bWJlci4KCiBOb3QgcmVjb21tZW5kZWQgZm9yIHVzZSBpbiBuZXcgQVBJcywgYnV0IHN0aWxsIHVzZWZ1bCBmb3IgbGVnYWN5IEFQSXMgYW5kCiBoYXMgbm8gcGxhbiB0byBiZSByZW1vdmVkLgoKCgoDBAEBEgNMCBIKHwoEBAECABIDTgISGhIgVGhlIGZsb2F0IHZhbHVlLgoKDAoFBAECAAUSA04CBwoMCgUEAQIAARIDTggNCgwKBQQBAgADEgNOEBEKzgEKAgQCEgRXAFoBGsEBIFdyYXBwZXIgbWVzc2FnZSBmb3IgYGludDY0YC4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYEludDY0VmFsdWVgIGlzIEpTT04gc3RyaW5nLgoKIE5vdCByZWNvbW1lbmRlZCBmb3IgdXNlIGluIG5ldyBBUElzLCBidXQgc3RpbGwgdXNlZnVsIGZvciBsZWdhY3kgQVBJcyBhbmQKIGhhcyBubyBwbGFuIHRvIGJlIHJlbW92ZWQuCgoKCgMEAgESA1cIEgofCgQEAgIAEgNZAhIaEiBUaGUgaW50NjQgdmFsdWUuCgoMCgUEAgIABRIDWQIHCgwKBQQCAgABEgNZCA0KDAoFBAICAAMSA1kQEQrQAQoCBAMSBGIAZQEawwEgV3JhcHBlciBtZXNzYWdlIGZvciBgdWludDY0YC4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYFVJbnQ2NFZhbHVlYCBpcyBKU09OIHN0cmluZy4KCiBOb3QgcmVjb21tZW5kZWQgZm9yIHVzZSBpbiBuZXcgQVBJcywgYnV0IHN0aWxsIHVzZWZ1bCBmb3IgbGVnYWN5IEFQSXMgYW5kCiBoYXMgbm8gcGxhbiB0byBiZSByZW1vdmVkLgoKCgoDBAMBEgNiCBMKIAoEBAMCABIDZAITGhMgVGhlIHVpbnQ2NCB2YWx1ZS4KCgwKBQQDAgAFEgNkAggKDAoFBAMCAAESA2QJDgoMCgUEAwIAAxIDZBESCs4BCgIEBBIEbQBwARrBASBXcmFwcGVyIG1lc3NhZ2UgZm9yIGBpbnQzMmAuCgogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gZm9yIGBJbnQzMlZhbHVlYCBpcyBKU09OIG51bWJlci4KCiBOb3QgcmVjb21tZW5kZWQgZm9yIHVzZSBpbiBuZXcgQVBJcywgYnV0IHN0aWxsIHVzZWZ1bCBmb3IgbGVnYWN5IEFQSXMgYW5kCiBoYXMgbm8gcGxhbiB0byBiZSByZW1vdmVkLgoKCgoDBAQBEgNtCBIKHwoEBAQCABIDbwISGhIgVGhlIGludDMyIHZhbHVlLgoKDAoFBAQCAAUSA28CBwoMCgUEBAIAARIDbwgNCgwKBQQEAgADEgNvEBEK0AEKAgQFEgR4AHsBGsMBIFdyYXBwZXIgbWVzc2FnZSBmb3IgYHVpbnQzMmAuCgogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gZm9yIGBVSW50MzJWYWx1ZWAgaXMgSlNPTiBudW1iZXIuCgogTm90IHJlY29tbWVuZGVkIGZvciB1c2UgaW4gbmV3IEFQSXMsIGJ1dCBzdGlsbCB1c2VmdWwgZm9yIGxlZ2FjeSBBUElzIGFuZAogaGFzIG5vIHBsYW4gdG8gYmUgcmVtb3ZlZC4KCgoKAwQFARIDeAgTCiAKBAQFAgASA3oCExoTIFRoZSB1aW50MzIgdmFsdWUuCgoMCgUEBQIABRIDegIICgwKBQQFAgABEgN6CQ4KDAoFBAUCAAMSA3oREgraAQoCBAYSBoMBAIYBARrLASBXcmFwcGVyIG1lc3NhZ2UgZm9yIGBib29sYC4KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYEJvb2xWYWx1ZWAgaXMgSlNPTiBgdHJ1ZWAgYW5kIGBmYWxzZWAuCgogTm90IHJlY29tbWVuZGVkIGZvciB1c2UgaW4gbmV3IEFQSXMsIGJ1dCBzdGlsbCB1c2VmdWwgZm9yIGxlZ2FjeSBBUElzIGFuZAogaGFzIG5vIHBsYW4gdG8gYmUgcmVtb3ZlZC4KCgsKAwQGARIEgwEIEQofCgQEBgIAEgSFAQIRGhEgVGhlIGJvb2wgdmFsdWUuCgoNCgUEBgIABRIEhQECBgoNCgUEBgIAARIEhQEHDAoNCgUEBgIAAxIEhQEPEArSAQoCBAcSBo4BAJEBARrDASBXcmFwcGVyIG1lc3NhZ2UgZm9yIGBzdHJpbmdgLgoKIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIGZvciBgU3RyaW5nVmFsdWVgIGlzIEpTT04gc3RyaW5nLgoKIE5vdCByZWNvbW1lbmRlZCBmb3IgdXNlIGluIG5ldyBBUElzLCBidXQgc3RpbGwgdXNlZnVsIGZvciBsZWdhY3kgQVBJcyBhbmQKIGhhcyBubyBwbGFuIHRvIGJlIHJlbW92ZWQuCgoLCgMEBwESBI4BCBMKIQoEBAcCABIEkAECExoTIFRoZSBzdHJpbmcgdmFsdWUuCgoNCgUEBwIABRIEkAECCAoNCgUEBwIAARIEkAEJDgoNCgUEBwIAAxIEkAEREgrQAQoCBAgSBpkBAJwBARrBASBXcmFwcGVyIG1lc3NhZ2UgZm9yIGBieXRlc2AuCgogVGhlIEpTT04gcmVwcmVzZW50YXRpb24gZm9yIGBCeXRlc1ZhbHVlYCBpcyBKU09OIHN0cmluZy4KCiBOb3QgcmVjb21tZW5kZWQgZm9yIHVzZSBpbiBuZXcgQVBJcywgYnV0IHN0aWxsIHVzZWZ1bCBmb3IgbGVnYWN5IEFQSXMgYW5kCiBoYXMgbm8gcGxhbiB0byBiZSByZW1vdmVkLgoKCwoDBAgBEgSZAQgSCiAKBAQIAgASBJsBAhIaEiBUaGUgYnl0ZXMgdmFsdWUuCgoNCgUECAIABRIEmwECBwoNCgUECAIAARIEmwEIDQoNCgUECAIAAxIEmwEQEWIGcHJvdG8zCuTGAQozZWRpdGlvbnMvZ29sZGVuL3Rlc3RfbWVzc2FnZXNfcHJvdG8zX2VkaXRpb25zLnByb3RvEiZwcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMxoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnByb3RvGiBnb29nbGUvcHJvdG9idWYvZmllbGRfbWFzay5wcm90bxocZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90bxofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL3dyYXBwZXJzLnByb3RvIuldChJUZXN0QWxsVHlwZXNQcm90bzMSJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSgAEKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJwChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyNi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJ3ChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SZwoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbkVudW1SE29wdGlvbmFsRm9yZWlnbkVudW0SegoVb3B0aW9uYWxfYWxpYXNlZF9lbnVtGBcgASgOMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLkFsaWFzZWRFbnVtUhNvcHRpb25hbEFsaWFzZWRFbnVtEjYKFW9wdGlvbmFsX3N0cmluZ19waWVjZRgYIAEoCUICCAJSE29wdGlvbmFsU3RyaW5nUGllY2USJwoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAFSDG9wdGlvbmFsQ29yZBJnChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvM1IQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxKAAQoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEnAKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzI2LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEncKFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJnChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5Gb3JlaWduRW51bVITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSIQoMcGFja2VkX2ludDMyGEsgAygFUgtwYWNrZWRJbnQzMhIhCgxwYWNrZWRfaW50NjQYTCADKANSC3BhY2tlZEludDY0EiMKDXBhY2tlZF91aW50MzIYTSADKA1SDHBhY2tlZFVpbnQzMhIjCg1wYWNrZWRfdWludDY0GE4gAygEUgxwYWNrZWRVaW50NjQSIwoNcGFja2VkX3NpbnQzMhhPIAMoEVIMcGFja2VkU2ludDMyEiMKDXBhY2tlZF9zaW50NjQYUCADKBJSDHBhY2tlZFNpbnQ2NBIlCg5wYWNrZWRfZml4ZWQzMhhRIAMoB1INcGFja2VkRml4ZWQzMhIlCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBlINcGFja2VkRml4ZWQ2NBInCg9wYWNrZWRfc2ZpeGVkMzIYUyADKA9SDnBhY2tlZFNmaXhlZDMyEicKD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEFIOcGFja2VkU2ZpeGVkNjQSIQoMcGFja2VkX2Zsb2F0GFUgAygCUgtwYWNrZWRGbG9hdBIjCg1wYWNrZWRfZG91YmxlGFYgAygBUgxwYWNrZWREb3VibGUSHwoLcGFja2VkX2Jvb2wYVyADKAhSCnBhY2tlZEJvb2wScwoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SEHBhY2tlZE5lc3RlZEVudW0SLAoOdW5wYWNrZWRfaW50MzIYWSADKAVCBaoBAhgCUg11bnBhY2tlZEludDMyEiwKDnVucGFja2VkX2ludDY0GFogAygDQgWqAQIYAlINdW5wYWNrZWRJbnQ2NBIuCg91bnBhY2tlZF91aW50MzIYWyADKA1CBaoBAhgCUg51bnBhY2tlZFVpbnQzMhIuCg91bnBhY2tlZF91aW50NjQYXCADKARCBaoBAhgCUg51bnBhY2tlZFVpbnQ2NBIuCg91bnBhY2tlZF9zaW50MzIYXSADKBFCBaoBAhgCUg51bnBhY2tlZFNpbnQzMhIuCg91bnBhY2tlZF9zaW50NjQYXiADKBJCBaoBAhgCUg51bnBhY2tlZFNpbnQ2NBIwChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgWqAQIYAlIPdW5wYWNrZWRGaXhlZDMyEjAKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZCBaoBAhgCUg91bnBhY2tlZEZpeGVkNjQSMgoRdW5wYWNrZWRfc2ZpeGVkMzIYYSADKA9CBaoBAhgCUhB1bnBhY2tlZFNmaXhlZDMyEjIKEXVucGFja2VkX3NmaXhlZDY0GGIgAygQQgWqAQIYAlIQdW5wYWNrZWRTZml4ZWQ2NBIsCg51bnBhY2tlZF9mbG9hdBhjIAMoAkIFqgECGAJSDXVucGFja2VkRmxvYXQSLgoPdW5wYWNrZWRfZG91YmxlGGQgAygBQgWqAQIYAlIOdW5wYWNrZWREb3VibGUSKgoNdW5wYWNrZWRfYm9vbBhlIAMoCEIFqgECGAJSDHVucGFja2VkQm9vbBJ+ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtQgWqAQIYAlISdW5wYWNrZWROZXN0ZWRFbnVtEnUKD21hcF9pbnQzMl9pbnQzMhg4IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkludDMyRW50cnlSDW1hcEludDMySW50MzISdQoPbWFwX2ludDY0X2ludDY0GDkgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDY0SW50NjRFbnRyeVINbWFwSW50NjRJbnQ2NBJ7ChFtYXBfdWludDMyX3VpbnQzMhg6IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBVaW50MzJVaW50MzJFbnRyeVIPbWFwVWludDMyVWludDMyEnsKEW1hcF91aW50NjRfdWludDY0GDsgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5Ug9tYXBVaW50NjRVaW50NjQSewoRbWFwX3NpbnQzMl9zaW50MzIYPCADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ludDMyU2ludDMyRW50cnlSD21hcFNpbnQzMlNpbnQzMhJ7ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTaW50NjRTaW50NjRFbnRyeVIPbWFwU2ludDY0U2ludDY0EoEBChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEoEBChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0EocBChVtYXBfc2ZpeGVkMzJfc2ZpeGVkMzIYQCADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5UhNtYXBTZml4ZWQzMlNmaXhlZDMyEocBChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EnUKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkZsb2F0RW50cnlSDW1hcEludDMyRmxvYXQSeAoQbWFwX2ludDMyX2RvdWJsZRhDIAMoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBJbnQzMkRvdWJsZUVudHJ5Ug5tYXBJbnQzMkRvdWJsZRJvCg1tYXBfYm9vbF9ib29sGEQgAygLMksucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnsKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSeAoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxKRAQoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJWLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USlAEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMlcucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnlSF21hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlEogBChZtYXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMlMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ05lc3RlZEVudW1FbnRyeVITbWFwU3RyaW5nTmVzdGVkRW51bRKLAQoXbWFwX3N0cmluZ19mb3JlaWduX2VudW0YSiADKAsyVC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEnwKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJmCgpvbmVvZl9lbnVtGHcgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1IAFIJb25lb2ZFbnVtEkYKEG9uZW9mX251bGxfdmFsdWUYeCABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSABSDm9uZW9mTnVsbFZhbHVlEk8KFW9wdGlvbmFsX2Jvb2xfd3JhcHBlchjJASABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUhNvcHRpb25hbEJvb2xXcmFwcGVyElIKFm9wdGlvbmFsX2ludDMyX3dyYXBwZXIYygEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSFG9wdGlvbmFsSW50MzJXcmFwcGVyElIKFm9wdGlvbmFsX2ludDY0X3dyYXBwZXIYywEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSFG9wdGlvbmFsSW50NjRXcmFwcGVyElUKF29wdGlvbmFsX3VpbnQzMl93cmFwcGVyGMwBIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIVb3B0aW9uYWxVaW50MzJXcmFwcGVyElUKF29wdGlvbmFsX3VpbnQ2NF93cmFwcGVyGM0BIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIVb3B0aW9uYWxVaW50NjRXcmFwcGVyElIKFm9wdGlvbmFsX2Zsb2F0X3dyYXBwZXIYzgEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSFG9wdGlvbmFsRmxvYXRXcmFwcGVyElUKF29wdGlvbmFsX2RvdWJsZV93cmFwcGVyGM8BIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIVb3B0aW9uYWxEb3VibGVXcmFwcGVyElUKF29wdGlvbmFsX3N0cmluZ193cmFwcGVyGNABIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIVb3B0aW9uYWxTdHJpbmdXcmFwcGVyElIKFm9wdGlvbmFsX2J5dGVzX3dyYXBwZXIY0QEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSFG9wdGlvbmFsQnl0ZXNXcmFwcGVyEk8KFXJlcGVhdGVkX2Jvb2xfd3JhcHBlchjTASADKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUhNyZXBlYXRlZEJvb2xXcmFwcGVyElIKFnJlcGVhdGVkX2ludDMyX3dyYXBwZXIY1AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSFHJlcGVhdGVkSW50MzJXcmFwcGVyElIKFnJlcGVhdGVkX2ludDY0X3dyYXBwZXIY1QEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSFHJlcGVhdGVkSW50NjRXcmFwcGVyElUKF3JlcGVhdGVkX3VpbnQzMl93cmFwcGVyGNYBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIVcmVwZWF0ZWRVaW50MzJXcmFwcGVyElUKF3JlcGVhdGVkX3VpbnQ2NF93cmFwcGVyGNcBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIVcmVwZWF0ZWRVaW50NjRXcmFwcGVyElIKFnJlcGVhdGVkX2Zsb2F0X3dyYXBwZXIY2AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSFHJlcGVhdGVkRmxvYXRXcmFwcGVyElUKF3JlcGVhdGVkX2RvdWJsZV93cmFwcGVyGNkBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIVcmVwZWF0ZWREb3VibGVXcmFwcGVyElUKF3JlcGVhdGVkX3N0cmluZ193cmFwcGVyGNoBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIVcmVwZWF0ZWRTdHJpbmdXcmFwcGVyElIKFnJlcGVhdGVkX2J5dGVzX3dyYXBwZXIY2wEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSFHJlcGVhdGVkQnl0ZXNXcmFwcGVyEkcKEW9wdGlvbmFsX2R1cmF0aW9uGK0CIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIQb3B0aW9uYWxEdXJhdGlvbhJKChJvcHRpb25hbF90aW1lc3RhbXAYrgIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIRb3B0aW9uYWxUaW1lc3RhbXASSwoTb3B0aW9uYWxfZmllbGRfbWFzaxivAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFvcHRpb25hbEZpZWxkTWFzaxJBCg9vcHRpb25hbF9zdHJ1Y3QYsAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOb3B0aW9uYWxTdHJ1Y3QSOAoMb3B0aW9uYWxfYW55GLECIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC29wdGlvbmFsQW55Ej4KDm9wdGlvbmFsX3ZhbHVlGLICIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINb3B0aW9uYWxWYWx1ZRJLChNvcHRpb25hbF9udWxsX3ZhbHVlGLMCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVSEW9wdGlvbmFsTnVsbFZhbHVlEkcKEXJlcGVhdGVkX2R1cmF0aW9uGLcCIAMoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIQcmVwZWF0ZWREdXJhdGlvbhJKChJyZXBlYXRlZF90aW1lc3RhbXAYuAIgAygLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIRcmVwZWF0ZWRUaW1lc3RhbXASSgoScmVwZWF0ZWRfZmllbGRtYXNrGLkCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSEXJlcGVhdGVkRmllbGRtYXNrEkEKD3JlcGVhdGVkX3N0cnVjdBjEAiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ug5yZXBlYXRlZFN0cnVjdBI4CgxyZXBlYXRlZF9hbnkYuwIgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVILcmVwZWF0ZWRBbnkSPgoOcmVwZWF0ZWRfdmFsdWUYvAIgAygLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUg1yZXBlYXRlZFZhbHVlEksKE3JlcGVhdGVkX2xpc3RfdmFsdWUYvQIgAygLMhouZ29vZ2xlLnByb3RvYnVmLkxpc3RWYWx1ZVIRcmVwZWF0ZWRMaXN0VmFsdWUSHwoKZmllbGRuYW1lMRiRAyABKAVSCmZpZWxkbmFtZTESIAoLZmllbGRfbmFtZTIYkgMgASgFUgpmaWVsZE5hbWUyEiEKDF9maWVsZF9uYW1lMxiTAyABKAVSCkZpZWxkTmFtZTMSIgoNZmllbGRfX25hbWU0XxiUAyABKAVSCmZpZWxkTmFtZTQSIQoLZmllbGQwbmFtZTUYlQMgASgFUgtmaWVsZDBuYW1lNRIjCg1maWVsZF8wX25hbWU2GJYDIAEoBVILZmllbGQwTmFtZTYSHwoKZmllbGROYW1lNxiXAyABKAVSCmZpZWxkTmFtZTcSHwoKRmllbGROYW1lOBiYAyABKAVSCkZpZWxkTmFtZTgSIAoLZmllbGRfTmFtZTkYmQMgASgFUgpmaWVsZE5hbWU5EiIKDEZpZWxkX05hbWUxMBiaAyABKAVSC0ZpZWxkTmFtZTEwEiIKDEZJRUxEX05BTUUxMRibAyABKAVSC0ZJRUxETkFNRTExEiIKDEZJRUxEX25hbWUxMhicAyABKAVSC0ZJRUxETmFtZTEyEiQKDl9fZmllbGRfbmFtZTEzGJ0DIAEoBVILRmllbGROYW1lMTMSJAoOX19GaWVsZF9uYW1lMTQYngMgASgFUgtGaWVsZE5hbWUxNBIjCg1maWVsZF9fbmFtZTE1GJ8DIAEoBVILZmllbGROYW1lMTUSIwoNZmllbGRfX05hbWUxNhigAyABKAVSC2ZpZWxkTmFtZTE2EiQKDmZpZWxkX25hbWUxN19fGKEDIAEoBVILZmllbGROYW1lMTcSJAoORmllbGRfbmFtZTE4X18YogMgASgFUgtGaWVsZE5hbWUxOBp7Cg1OZXN0ZWRNZXNzYWdlEgwKAWEYASABKAVSAWESXAoLY29yZWN1cnNpdmUYAiABKAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzNSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGpMBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSXgoFdmFsdWUYAiABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGoIBChxNYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkwKBXZhbHVlGAIgASgLMjYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSBXZhbHVlOgI4ARqNAQoYTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElsKBXZhbHVlGAIgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SBXZhbHVlOgI4ARp8ChlNYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkkKBXZhbHVlGAIgASgOMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzMuRm9yZWlnbkVudW1SBXZhbHVlOgI4ASI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BIlkKC0FsaWFzZWRFbnVtEg0KCUFMSUFTX0ZPTxAAEg0KCUFMSUFTX0JBUhABEg0KCUFMSUFTX0JBWhACEgcKA01PTxACEgcKA21vbxACEgcKA2JBehACGgIQAUINCgtvbmVvZl9maWVsZEoGCPUDEP8DIh4KDkZvcmVpZ25NZXNzYWdlEgwKAWMYASABKAVSAWMiFgoUTnVsbEh5cG90aGVzaXNQcm90bzMiLwoORW51bU9ubHlQcm90bzMiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABKkAKC0ZvcmVpZ25FbnVtEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQARIPCgtGT1JFSUdOX0JBWhACQk4KMWNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzNIAfgBAaICDkVkaXRpb25zUHJvdG8zkgMCCAJK1GQKBxIFDgCzAgEKmQMKAQwSAw4AETKOAyBjbGFuZy1mb3JtYXQgb2ZmCiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKIFRlc3Qgc2NoZW1hIGZvciBwcm90bzMgbWVzc2FnZXMuICBUaGlzIHRlc3Qgc2NoZW1hIGlzIHVzZWQgYnk6CgogLSBiZW5jaG1hcmtzCiAtIGZ1enogdGVzdHMKIC0gY29uZm9ybWFuY2UgdGVzdHMKCggKAQISAxAALwoJCgIDABIDEgAjCgkKAgMBEgMTACgKCQoCAwISAxQAKgoJCgIDAxIDFQAmCgkKAgMEEgMWACkKCQoCAwUSAxcAKAoICgEIEgMZACoKCgoDCDIBEgMZACoKCAoBCBIDGgBKCgkKAggBEgMaAEoKCAoBCBIDGwAsCgkKAggkEgMbACwKCAoBCBIDHgAcCkQKAggJEgMeABwaOSBUaGlzIGlzIHRoZSBkZWZhdWx0LCBidXQgd2Ugc3BlY2lmeSBpdCBoZXJlIGV4cGxpY2l0bHkuCgoICgEIEgMfAB8KCQoCCB8SAx8AHwrbAgoCBAASBSgAnwIBGs0CIFRoaXMgcHJvdG8gaW5jbHVkZXMgZXZlcnkgdHlwZSBvZiBmaWVsZCBpbiBib3RoIHNpbmd1bGFyIGFuZCByZXBlYXRlZAogZm9ybXMuCgogQWxzbywgY3J1Y2lhbGx5LCBhbGwgbWVzc2FnZXMgYW5kIGVudW1zIGluIHRoaXMgZmlsZSBhcmUgZXZlbnR1YWxseQogc3VibWVzc2FnZXMgb2YgdGhpcyBtZXNzYWdlLiAgU28gZm9yIGV4YW1wbGUsIGEgZnV6eiB0ZXN0IG9mIFRlc3RBbGxUeXBlcwogY291bGQgdHJpZ2dlciBidWdzIHRoYXQgb2NjdXIgaW4gYW55IG1lc3NhZ2UgdHlwZSBpbiB0aGlzIGZpbGUuICBXZSB2ZXJpZnkKIHRoaXMgc3RheXMgdHJ1ZSBpbiBhIHVuaXQgdGVzdC4KCgoKAwQAARIDKAgaCgwKBAQAAwASBCkCLAMKDAoFBAADAAESAykKFwoNCgYEAAMAAgASAyoEEAoOCgcEAAMAAgAFEgMqBAkKDgoHBAADAAIAARIDKgoLCg4KBwQAAwACAAMSAyoODwoNCgYEAAMAAgESAysEJwoOCgcEAAMAAgEGEgMrBBYKDgoHBAADAAIBARIDKxciCg4KBwQAAwACAQMSAyslJgoMCgQEAAQAEgQuAjMDCgwKBQQABAABEgMuBxEKDQoGBAAEAAIAEgMvBAwKDgoHBAAEAAIAARIDLwQHCg4KBwQABAACAAISAy8KCwoNCgYEAAQAAgESAzAEDAoOCgcEAAQAAgEBEgMwBAcKDgoHBAAEAAIBAhIDMAoLCg0KBgQABAACAhIDMQQMCg4KBwQABAACAgESAzEEBwoOCgcEAAQAAgICEgMxCgsKKAoGBAAEAAIDEgMyBA0iGSBJbnRlbnRpb25hbGx5IG5lZ2F0aXZlLgoKDgoHBAAEAAIDARIDMgQHCg4KBwQABAACAwISAzIKDAoMCgQEAAQBEgQ1Aj4DCgwKBQQABAEBEgM1BxIKDAoFBAAEAQMSAzYEHgoNCgYEAAQBAwISAzYEHgoNCgYEAAQBAgASAzgEEgoOCgcEAAQBAgABEgM4BA0KDgoHBAAEAQIAAhIDOBARCg0KBgQABAECARIDOQQSCg4KBwQABAECAQESAzkEDQoOCgcEAAQBAgECEgM5EBEKDQoGBAAEAQICEgM6BBIKDgoHBAAEAQICARIDOgQNCg4KBwQABAECAgISAzoQEQoNCgYEAAQBAgMSAzsEDAoOCgcEAAQBAgMBEgM7BAcKDgoHBAAEAQIDAhIDOwoLCg0KBgQABAECBBIDPAQMCg4KBwQABAECBAESAzwEBwoOCgcEAAQBAgQCEgM8CgsKDQoGBAAEAQIFEgM9BAwKDgoHBAAEAQIFARIDPQQHCg4KBwQABAECBQISAz0KCwoXCgQEAAIAEgNBAhsaCiBTaW5ndWxhcgoKDAoFBAACAAUSA0ECBwoMCgUEAAIAARIDQQgWCgwKBQQAAgADEgNBGRoKCwoEBAACARIDQgIbCgwKBQQAAgEFEgNCAgcKDAoFBAACAQESA0IIFgoMCgUEAAIBAxIDQhkaCgsKBAQAAgISA0MCHQoMCgUEAAICBRIDQwIICgwKBQQAAgIBEgNDCRgKDAoFBAACAgMSA0MbHAoLCgQEAAIDEgNEAh0KDAoFBAACAwUSA0QCCAoMCgUEAAIDARIDRAkYCgwKBQQAAgMDEgNEGxwKCwoEBAACBBIDRQIdCgwKBQQAAgQFEgNFAggKDAoFBAACBAESA0UJGAoMCgUEAAIEAxIDRRscCgsKBAQAAgUSA0YCHQoMCgUEAAIFBRIDRgIICgwKBQQAAgUBEgNGCRgKDAoFBAACBQMSA0YbHAoLCgQEAAIGEgNHAh8KDAoFBAACBgUSA0cCCQoMCgUEAAIGARIDRwoaCgwKBQQAAgYDEgNHHR4KCwoEBAACBxIDSAIfCgwKBQQAAgcFEgNIAgkKDAoFBAACBwESA0gKGgoMCgUEAAIHAxIDSB0eCgsKBAQAAggSA0kCIQoMCgUEAAIIBRIDSQIKCgwKBQQAAggBEgNJCxwKDAoFBAACCAMSA0kfIAoLCgQEAAIJEgNKAiIKDAoFBAACCQUSA0oCCgoMCgUEAAIJARIDSgscCgwKBQQAAgkDEgNKHyEKCwoEBAACChIDSwIcCgwKBQQAAgoFEgNLAgcKDAoFBAACCgESA0sIFgoMCgUEAAIKAxIDSxkbCgsKBAQAAgsSA0wCHgoMCgUEAAILBRIDTAIICgwKBQQAAgsBEgNMCRgKDAoFBAACCwMSA0wbHQoLCgQEAAIMEgNNAhoKDAoFBAACDAUSA00CBgoMCgUEAAIMARIDTQcUCgwKBQQAAgwDEgNNFxkKCwoEBAACDRIDTgIeCgwKBQQAAg0FEgNOAggKDAoFBAACDQESA04JGAoMCgUEAAINAxIDThsdCgsKBAQAAg4SA08CHAoMCgUEAAIOBRIDTwIHCgwKBQQAAg4BEgNPCBYKDAoFBAACDgMSA08ZGwoLCgQEAAIPEgNQAi0KDAoFBAACDwYSA1ACDwoMCgUEAAIPARIDUBAnCgwKBQQAAg8DEgNQKiwKCwoEBAACEBIDUQIvCgwKBQQAAhAGEgNRAhAKDAoFBAACEAESA1ERKQoMCgUEAAIQAxIDUSwuCgsKBAQAAhESA1ICJwoMCgUEAAIRBhIDUgIMCgwKBQQAAhEBEgNSDSEKDAoFBAACEQMSA1IkJgoLCgQEAAISEgNTAikKDAoFBAACEgYSA1MCDQoMCgUEAAISARIDUw4jCgwKBQQAAhIDEgNTJigKCwoEBAACExIDVAIpCgwKBQQAAhMGEgNUAg0KDAoFBAACEwESA1QOIwoMCgUEAAITAxIDVCYoCgwKBAQAAhQSBFUCVwQKDAoFBAACFAUSA1UCCAoMCgUEAAIUARIDVQkeCgwKBQQAAhQDEgNVISMKDQoFBAACFAgSBFUkVwMKDQoGBAACFAgBEgNWBBgKDAoEBAACFRIEWQJbBAoMCgUEAAIVBRIDWQIICgwKBQQAAhUBEgNZCRYKDAoFBAACFQMSA1kZGwoNCgUEAAIVCBIEWRxbAwoNCgYEAAIVCAESA1oEEAoLCgQEAAIWEgNdAiwKDAoFBAACFgYSA10CFAoMCgUEAAIWARIDXRUmCgwKBQQAAhYDEgNdKSsKFwoEBAACFxIDYAIlGgogUmVwZWF0ZWQKCgwKBQQAAhcEEgNgAgoKDAoFBAACFwUSA2ALEAoMCgUEAAIXARIDYBEfCgwKBQQAAhcDEgNgIiQKCwoEBAACGBIDYQIlCgwKBQQAAhgEEgNhAgoKDAoFBAACGAUSA2ELEAoMCgUEAAIYARIDYREfCgwKBQQAAhgDEgNhIiQKCwoEBAACGRIDYgInCgwKBQQAAhkEEgNiAgoKDAoFBAACGQUSA2ILEQoMCgUEAAIZARIDYhIhCgwKBQQAAhkDEgNiJCYKCwoEBAACGhIDYwInCgwKBQQAAhoEEgNjAgoKDAoFBAACGgUSA2MLEQoMCgUEAAIaARIDYxIhCgwKBQQAAhoDEgNjJCYKCwoEBAACGxIDZAInCgwKBQQAAhsEEgNkAgoKDAoFBAACGwUSA2QLEQoMCgUEAAIbARIDZBIhCgwKBQQAAhsDEgNkJCYKCwoEBAACHBIDZQInCgwKBQQAAhwEEgNlAgoKDAoFBAACHAUSA2ULEQoMCgUEAAIcARIDZRIhCgwKBQQAAhwDEgNlJCYKCwoEBAACHRIDZgIpCgwKBQQAAh0EEgNmAgoKDAoFBAACHQUSA2YLEgoMCgUEAAIdARIDZhMjCgwKBQQAAh0DEgNmJigKCwoEBAACHhIDZwIpCgwKBQQAAh4EEgNnAgoKDAoFBAACHgUSA2cLEgoMCgUEAAIeARIDZxMjCgwKBQQAAh4DEgNnJigKCwoEBAACHxIDaAIrCgwKBQQAAh8EEgNoAgoKDAoFBAACHwUSA2gLEwoMCgUEAAIfARIDaBQlCgwKBQQAAh8DEgNoKCoKCwoEBAACIBIDaQIrCgwKBQQAAiAEEgNpAgoKDAoFBAACIAUSA2kLEwoMCgUEAAIgARIDaRQlCgwKBQQAAiADEgNpKCoKCwoEBAACIRIDagIlCgwKBQQAAiEEEgNqAgoKDAoFBAACIQUSA2oLEAoMCgUEAAIhARIDahEfCgwKBQQAAiEDEgNqIiQKCwoEBAACIhIDawInCgwKBQQAAiIEEgNrAgoKDAoFBAACIgUSA2sLEQoMCgUEAAIiARIDaxIhCgwKBQQAAiIDEgNrJCYKCwoEBAACIxIDbAIjCgwKBQQAAiMEEgNsAgoKDAoFBAACIwUSA2wLDwoMCgUEAAIjARIDbBAdCgwKBQQAAiMDEgNsICIKCwoEBAACJBIDbQInCgwKBQQAAiQEEgNtAgoKDAoFBAACJAUSA20LEQoMCgUEAAIkARIDbRIhCgwKBQQAAiQDEgNtJCYKCwoEBAACJRIDbgIlCgwKBQQAAiUEEgNuAgoKDAoFBAACJQUSA24LEAoMCgUEAAIlARIDbhEfCgwKBQQAAiUDEgNuIiQKCwoEBAACJhIDbwI2CgwKBQQAAiYEEgNvAgoKDAoFBAACJgYSA28LGAoMCgUEAAImARIDbxkwCgwKBQQAAiYDEgNvMzUKCwoEBAACJxIDcAI4CgwKBQQAAicEEgNwAgoKDAoFBAACJwYSA3ALGQoMCgUEAAInARIDcBoyCgwKBQQAAicDEgNwNTcKCwoEBAACKBIDcQIwCgwKBQQAAigEEgNxAgoKDAoFBAACKAYSA3ELFQoMCgUEAAIoARIDcRYqCgwKBQQAAigDEgNxLS8KCwoEBAACKRIDcgIyCgwKBQQAAikEEgNyAgoKDAoFBAACKQYSA3ILFgoMCgUEAAIpARIDchcsCgwKBQQAAikDEgNyLzEKDAoEBAACKhIEcwJ1BAoMCgUEAAIqBBIDcwIKCgwKBQQAAioFEgNzCxEKDAoFBAACKgESA3MSJwoMCgUEAAIqAxIDcyosCg0KBQQAAioIEgRzLXUDCg0KBgQAAioIARIDdAQYCgwKBAQAAisSBHcCeQQKDAoFBAACKwQSA3cCCgoMCgUEAAIrBRIDdwsRCgwKBQQAAisBEgN3Eh8KDAoFBAACKwMSA3ciJAoNCgUEAAIrCBIEdyV5AwoNCgYEAAIrCAESA3gEEAoVCgQEAAIsEgN8AiMaCCBQYWNrZWQKCgwKBQQAAiwEEgN8AgoKDAoFBAACLAUSA3wLEAoMCgUEAAIsARIDfBEdCgwKBQQAAiwDEgN8ICIKCwoEBAACLRIDfQIjCgwKBQQAAi0EEgN9AgoKDAoFBAACLQUSA30LEAoMCgUEAAItARIDfREdCgwKBQQAAi0DEgN9ICIKCwoEBAACLhIDfgIlCgwKBQQAAi4EEgN+AgoKDAoFBAACLgUSA34LEQoMCgUEAAIuARIDfhIfCgwKBQQAAi4DEgN+IiQKCwoEBAACLxIDfwIlCgwKBQQAAi8EEgN/AgoKDAoFBAACLwUSA38LEQoMCgUEAAIvARIDfxIfCgwKBQQAAi8DEgN/IiQKDAoEBAACMBIEgAECJQoNCgUEAAIwBBIEgAECCgoNCgUEAAIwBRIEgAELEQoNCgUEAAIwARIEgAESHwoNCgUEAAIwAxIEgAEiJAoMCgQEAAIxEgSBAQIlCg0KBQQAAjEEEgSBAQIKCg0KBQQAAjEFEgSBAQsRCg0KBQQAAjEBEgSBARIfCg0KBQQAAjEDEgSBASIkCgwKBAQAAjISBIIBAicKDQoFBAACMgQSBIIBAgoKDQoFBAACMgUSBIIBCxIKDQoFBAACMgESBIIBEyEKDQoFBAACMgMSBIIBJCYKDAoEBAACMxIEgwECJwoNCgUEAAIzBBIEgwECCgoNCgUEAAIzBRIEgwELEgoNCgUEAAIzARIEgwETIQoNCgUEAAIzAxIEgwEkJgoMCgQEAAI0EgSEAQIpCg0KBQQAAjQEEgSEAQIKCg0KBQQAAjQFEgSEAQsTCg0KBQQAAjQBEgSEARQjCg0KBQQAAjQDEgSEASYoCgwKBAQAAjUSBIUBAikKDQoFBAACNQQSBIUBAgoKDQoFBAACNQUSBIUBCxMKDQoFBAACNQESBIUBFCMKDQoFBAACNQMSBIUBJigKDAoEBAACNhIEhgECIwoNCgUEAAI2BBIEhgECCgoNCgUEAAI2BRIEhgELEAoNCgUEAAI2ARIEhgERHQoNCgUEAAI2AxIEhgEgIgoMCgQEAAI3EgSHAQIlCg0KBQQAAjcEEgSHAQIKCg0KBQQAAjcFEgSHAQsRCg0KBQQAAjcBEgSHARIfCg0KBQQAAjcDEgSHASIkCgwKBAQAAjgSBIgBAiEKDQoFBAACOAQSBIgBAgoKDQoFBAACOAUSBIgBCw8KDQoFBAACOAESBIgBEBsKDQoFBAACOAMSBIgBHiAKDAoEBAACORIEiQECLgoNCgUEAAI5BBIEiQECCgoNCgUEAAI5BhIEiQELFQoNCgUEAAI5ARIEiQEWKAoNCgUEAAI5AxIEiQErLQoaCgQEAAI6EgaMAQKOAQQaCiBVbnBhY2tlZAoKDQoFBAACOgQSBIwBAgoKDQoFBAACOgUSBIwBCxAKDQoFBAACOgESBIwBER8KDQoFBAACOgMSBIwBIiQKDwoFBAACOggSBowBJY4BAwoPCgcEAAI6CBUDEgSNAQQvCg4KBAQAAjsSBpABApIBBAoNCgUEAAI7BBIEkAECCgoNCgUEAAI7BRIEkAELEAoNCgUEAAI7ARIEkAERHwoNCgUEAAI7AxIEkAEiJAoPCgUEAAI7CBIGkAElkgEDCg8KBwQAAjsIFQMSBJEBBC8KDgoEBAACPBIGlAEClgEECg0KBQQAAjwEEgSUAQIKCg0KBQQAAjwFEgSUAQsRCg0KBQQAAjwBEgSUARIhCg0KBQQAAjwDEgSUASQmCg8KBQQAAjwIEgaUASeWAQMKDwoHBAACPAgVAxIElQEELwoOCgQEAAI9EgaYAQKaAQQKDQoFBAACPQQSBJgBAgoKDQoFBAACPQUSBJgBCxEKDQoFBAACPQESBJgBEiEKDQoFBAACPQMSBJgBJCYKDwoFBAACPQgSBpgBJ5oBAwoPCgcEAAI9CBUDEgSZAQQvCg4KBAQAAj4SBpwBAp4BBAoNCgUEAAI+BBIEnAECCgoNCgUEAAI+BRIEnAELEQoNCgUEAAI+ARIEnAESIQoNCgUEAAI+AxIEnAEkJgoPCgUEAAI+CBIGnAEnngEDCg8KBwQAAj4IFQMSBJ0BBC8KDgoEBAACPxIGoAECogEECg0KBQQAAj8EEgSgAQIKCg0KBQQAAj8FEgSgAQsRCg0KBQQAAj8BEgSgARIhCg0KBQQAAj8DEgSgASQmCg8KBQQAAj8IEgagASeiAQMKDwoHBAACPwgVAxIEoQEELwoOCgQEAAJAEgakAQKmAQQKDQoFBAACQAQSBKQBAgoKDQoFBAACQAUSBKQBCxIKDQoFBAACQAESBKQBEyMKDQoFBAACQAMSBKQBJigKDwoFBAACQAgSBqQBKaYBAwoPCgcEAAJACBUDEgSlAQQvCg4KBAQAAkESBqgBAqoBBAoNCgUEAAJBBBIEqAECCgoNCgUEAAJBBRIEqAELEgoNCgUEAAJBARIEqAETIwoNCgUEAAJBAxIEqAEmKAoPCgUEAAJBCBIGqAEpqgEDCg8KBwQAAkEIFQMSBKkBBC8KDgoEBAACQhIGrAECrgEECg0KBQQAAkIEEgSsAQIKCg0KBQQAAkIFEgSsAQsTCg0KBQQAAkIBEgSsARQlCg0KBQQAAkIDEgSsASgqCg8KBQQAAkIIEgasASuuAQMKDwoHBAACQggVAxIErQEELwoOCgQEAAJDEgawAQKyAQQKDQoFBAACQwQSBLABAgoKDQoFBAACQwUSBLABCxMKDQoFBAACQwESBLABFCUKDQoFBAACQwMSBLABKCoKDwoFBAACQwgSBrABK7IBAwoPCgcEAAJDCBUDEgSxAQQvCg4KBAQAAkQSBrQBArYBBAoNCgUEAAJEBBIEtAECCgoNCgUEAAJEBRIEtAELEAoNCgUEAAJEARIEtAERHwoNCgUEAAJEAxIEtAEiJAoPCgUEAAJECBIGtAEltgEDCg8KBwQAAkQIFQMSBLUBBC8KDgoEBAACRRIGuAECugEECg0KBQQAAkUEEgS4AQIKCg0KBQQAAkUFEgS4AQsRCg0KBQQAAkUBEgS4ARIhCg0KBQQAAkUDEgS4ASQnCg8KBQQAAkUIEga4ASi6AQMKDwoHBAACRQgVAxIEuQEELwoOCgQEAAJGEga8AQK+AQQKDQoFBAACRgQSBLwBAgoKDQoFBAACRgUSBLwBCw8KDQoFBAACRgESBLwBEB0KDQoFBAACRgMSBLwBICMKDwoFBAACRggSBrwBJL4BAwoPCgcEAAJGCBUDEgS9AQQvCg4KBAQAAkcSBsABAsIBBAoNCgUEAAJHBBIEwAECCgoNCgUEAAJHBhIEwAELFQoNCgUEAAJHARIEwAEWKgoNCgUEAAJHAxIEwAEtMAoPCgUEAAJHCBIGwAExwgEDCg8KBwQAAkcIFQMSBMEBBC8KEwoEBAACSBIExQECKRoFIE1hcAoKDQoFBAACSAYSBMUBAhMKDQoFBAACSAESBMUBFCMKDQoFBAACSAMSBMUBJigKDAoEBAACSRIExgECKQoNCgUEAAJJBhIExgECEwoNCgUEAAJJARIExgEUIwoNCgUEAAJJAxIExgEmKAoMCgQEAAJKEgTHAQItCg0KBQQAAkoGEgTHAQIVCg0KBQQAAkoBEgTHARYnCg0KBQQAAkoDEgTHASosCgwKBAQAAksSBMgBAi0KDQoFBAACSwYSBMgBAhUKDQoFBAACSwESBMgBFicKDQoFBAACSwMSBMgBKiwKDAoEBAACTBIEyQECLQoNCgUEAAJMBhIEyQECFQoNCgUEAAJMARIEyQEWJwoNCgUEAAJMAxIEyQEqLAoMCgQEAAJNEgTKAQItCg0KBQQAAk0GEgTKAQIVCg0KBQQAAk0BEgTKARYnCg0KBQQAAk0DEgTKASosCgwKBAQAAk4SBMsBAjEKDQoFBAACTgYSBMsBAhcKDQoFBAACTgESBMsBGCsKDQoFBAACTgMSBMsBLjAKDAoEBAACTxIEzAECMQoNCgUEAAJPBhIEzAECFwoNCgUEAAJPARIEzAEYKwoNCgUEAAJPAxIEzAEuMAoMCgQEAAJQEgTNAQI1Cg0KBQQAAlAGEgTNAQIZCg0KBQQAAlABEgTNARovCg0KBQQAAlADEgTNATI0CgwKBAQAAlESBM4BAjUKDQoFBAACUQYSBM4BAhkKDQoFBAACUQESBM4BGi8KDQoFBAACUQMSBM4BMjQKDAoEBAACUhIEzwECKQoNCgUEAAJSBhIEzwECEwoNCgUEAAJSARIEzwEUIwoNCgUEAAJSAxIEzwEmKAoMCgQEAAJTEgTQAQIrCg0KBQQAAlMGEgTQAQIUCg0KBQQAAlMBEgTQARUlCg0KBQQAAlMDEgTQASgqCgwKBAQAAlQSBNEBAiUKDQoFBAACVAYSBNEBAhEKDQoFBAACVAESBNEBEh8KDQoFBAACVAMSBNEBIiQKDAoEBAACVRIE0gECLQoNCgUEAAJVBhIE0gECFQoNCgUEAAJVARIE0gEWJwoNCgUEAAJVAxIE0gEqLAoMCgQEAAJWEgTTAQIrCg0KBQQAAlYGEgTTAQIUCg0KBQQAAlYBEgTTARUlCg0KBQQAAlYDEgTTASgqCgwKBAQAAlcSBNQBAjwKDQoFBAACVwYSBNQBAhwKDQoFBAACVwESBNQBHTYKDQoFBAACVwMSBNQBOTsKDAoEBAACWBIE1QECPgoNCgUEAAJYBhIE1QECHQoNCgUEAAJYARIE1QEeOAoNCgUEAAJYAxIE1QE7PQoMCgQEAAJZEgTWAQI2Cg0KBQQAAlkGEgTWAQIZCg0KBQQAAlkBEgTWARowCg0KBQQAAlkDEgTWATM1CgwKBAQAAloSBNcBAjgKDQoFBAACWgYSBNcBAhoKDQoFBAACWgESBNcBGzIKDQoFBAACWgMSBNcBNTcKDgoEBAAIABIG2QEC5AEDCg0KBQQACAABEgTZAQgTCgwKBAQAAlsSBNoBBB4KDQoFBAACWwUSBNoBBAoKDQoFBAACWwESBNoBCxcKDQoFBAACWwMSBNoBGh0KDAoEBAACXBIE2wEELQoNCgUEAAJcBhIE2wEEEQoNCgUEAAJcARIE2wESJgoNCgUEAAJcAxIE2wEpLAoMCgQEAAJdEgTcAQQeCg0KBQQAAl0FEgTcAQQKCg0KBQQAAl0BEgTcAQsXCg0KBQQAAl0DEgTcARodCgwKBAQAAl4SBN0BBBwKDQoFBAACXgUSBN0BBAkKDQoFBAACXgESBN0BChUKDQoFBAACXgMSBN0BGBsKDAoEBAACXxIE3gEEGgoNCgUEAAJfBRIE3gEECAoNCgUEAAJfARIE3gEJEwoNCgUEAAJfAxIE3gEWGQoMCgQEAAJgEgTfAQQeCg0KBQQAAmAFEgTfAQQKCg0KBQQAAmABEgTfAQsXCg0KBQQAAmADEgTfARodCgwKBAQAAmESBOABBBwKDQoFBAACYQUSBOABBAkKDQoFBAACYQESBOABChUKDQoFBAACYQMSBOABGBsKDAoEBAACYhIE4QEEHgoNCgUEAAJiBRIE4QEECgoNCgUEAAJiARIE4QELFwoNCgUEAAJiAxIE4QEaHQoMCgQEAAJjEgTiAQQgCg0KBQQAAmMGEgTiAQQOCg0KBQQAAmMBEgTiAQ8ZCg0KBQQAAmMDEgTiARwfCgwKBAQAAmQSBOMBBDUKDQoFBAACZAYSBOMBBB0KDQoFBAACZAESBOMBHi4KDQoFBAACZAMSBOMBMTQKIAoEBAACZRIE5wECOBoSIFdlbGwta25vd24gdHlwZXMKCg0KBQQAAmUGEgTnAQIbCg0KBQQAAmUBEgTnARwxCg0KBQQAAmUDEgTnATQ3CgwKBAQAAmYSBOgBAjoKDQoFBAACZgYSBOgBAhwKDQoFBAACZgESBOgBHTMKDQoFBAACZgMSBOgBNjkKDAoEBAACZxIE6QECOgoNCgUEAAJnBhIE6QECHAoNCgUEAAJnARIE6QEdMwoNCgUEAAJnAxIE6QE2OQoMCgQEAAJoEgTqAQI8Cg0KBQQAAmgGEgTqAQIdCg0KBQQAAmgBEgTqAR41Cg0KBQQAAmgDEgTqATg7CgwKBAQAAmkSBOsBAjwKDQoFBAACaQYSBOsBAh0KDQoFBAACaQESBOsBHjUKDQoFBAACaQMSBOsBODsKDAoEBAACahIE7AECOgoNCgUEAAJqBhIE7AECHAoNCgUEAAJqARIE7AEdMwoNCgUEAAJqAxIE7AE2OQoMCgQEAAJrEgTtAQI8Cg0KBQQAAmsGEgTtAQIdCg0KBQQAAmsBEgTtAR41Cg0KBQQAAmsDEgTtATg7CgwKBAQAAmwSBO4BAjwKDQoFBAACbAYSBO4BAh0KDQoFBAACbAESBO4BHjUKDQoFBAACbAMSBO4BODsKDAoEBAACbRIE7wECOgoNCgUEAAJtBhIE7wECHAoNCgUEAAJtARIE7wEdMwoNCgUEAAJtAxIE7wE2OQoMCgQEAAJuEgTwAQJBCg0KBQQAAm4EEgTwAQIKCg0KBQQAAm4GEgTwAQskCg0KBQQAAm4BEgTwASU6Cg0KBQQAAm4DEgTwAT1ACgwKBAQAAm8SBPEBAkMKDQoFBAACbwQSBPEBAgoKDQoFBAACbwYSBPEBCyUKDQoFBAACbwESBPEBJjwKDQoFBAACbwMSBPEBP0IKDAoEBAACcBIE8gECQwoNCgUEAAJwBBIE8gECCgoNCgUEAAJwBhIE8gELJQoNCgUEAAJwARIE8gEmPAoNCgUEAAJwAxIE8gE/QgoMCgQEAAJxEgTzAQJFCg0KBQQAAnEEEgTzAQIKCg0KBQQAAnEGEgTzAQsmCg0KBQQAAnEBEgTzASc+Cg0KBQQAAnEDEgTzAUFECgwKBAQAAnISBPQBAkUKDQoFBAACcgQSBPQBAgoKDQoFBAACcgYSBPQBCyYKDQoFBAACcgESBPQBJz4KDQoFBAACcgMSBPQBQUQKDAoEBAACcxIE9QECQwoNCgUEAAJzBBIE9QECCgoNCgUEAAJzBhIE9QELJQoNCgUEAAJzARIE9QEmPAoNCgUEAAJzAxIE9QE/QgoMCgQEAAJ0EgT2AQJFCg0KBQQAAnQEEgT2AQIKCg0KBQQAAnQGEgT2AQsmCg0KBQQAAnQBEgT2ASc+Cg0KBQQAAnQDEgT2AUFECgwKBAQAAnUSBPcBAkUKDQoFBAACdQQSBPcBAgoKDQoFBAACdQYSBPcBCyYKDQoFBAACdQESBPcBJz4KDQoFBAACdQMSBPcBQUQKDAoEBAACdhIE+AECQwoNCgUEAAJ2BBIE+AECCgoNCgUEAAJ2BhIE+AELJQoNCgUEAAJ2ARIE+AEmPAoNCgUEAAJ2AxIE+AE/QgoMCgQEAAJ3EgT5AQIzCg0KBQQAAncGEgT5AQIaCg0KBQQAAncBEgT5ARssCg0KBQQAAncDEgT5AS8yCgwKBAQAAngSBPoBAjUKDQoFBAACeAYSBPoBAhsKDQoFBAACeAESBPoBHC4KDQoFBAACeAMSBPoBMTQKDAoEBAACeRIE+wECNgoNCgUEAAJ5BhIE+wECGwoNCgUEAAJ5ARIE+wEcLwoNCgUEAAJ5AxIE+wEyNQoMCgQEAAJ6EgT8AQIvCg0KBQQAAnoGEgT8AQIYCg0KBQQAAnoBEgT8ARkoCg0KBQQAAnoDEgT8ASsuCgwKBAQAAnsSBP0BAikKDQoFBAACewYSBP0BAhUKDQoFBAACewESBP0BFiIKDQoFBAACewMSBP0BJSgKDAoEBAACfBIE/gECLQoNCgUEAAJ8BhIE/gECFwoNCgUEAAJ8ARIE/gEYJgoNCgUEAAJ8AxIE/gEpLAoMCgQEAAJ9EgT/AQI2Cg0KBQQAAn0GEgT/AQIbCg0KBQQAAn0BEgT/ARwvCg0KBQQAAn0DEgT/ATI1CgwKBAQAAn4SBIACAjwKDQoFBAACfgQSBIACAgoKDQoFBAACfgYSBIACCyMKDQoFBAACfgESBIACJDUKDQoFBAACfgMSBIACODsKDAoEBAACfxIEgQICPgoNCgUEAAJ/BBIEgQICCgoNCgUEAAJ/BhIEgQILJAoNCgUEAAJ/ARIEgQIlNwoNCgUEAAJ/AxIEgQI6PQoNCgUEAAKAARIEggICPgoOCgYEAAKAAQQSBIICAgoKDgoGBAACgAEGEgSCAgskCg4KBgQAAoABARIEggIlNwoOCgYEAAKAAQMSBIICOj0KDQoFBAACgQESBIMCAjgKDgoGBAACgQEEEgSDAgIKCg4KBgQAAoEBBhIEgwILIQoOCgYEAAKBAQESBIMCIjEKDgoGBAACgQEDEgSDAjQ3Cg0KBQQAAoIBEgSEAgIyCg4KBgQAAoIBBBIEhAICCgoOCgYEAAKCAQYSBIQCCx4KDgoGBAACggEBEgSEAh8rCg4KBgQAAoIBAxIEhAIuMQoNCgUEAAKDARIEhQICNgoOCgYEAAKDAQQSBIUCAgoKDgoGBAACgwEGEgSFAgsgCg4KBgQAAoMBARIEhQIhLwoOCgYEAAKDAQMSBIUCMjUKDQoFBAAChAESBIYCAj8KDgoGBAAChAEEEgSGAgIKCg4KBgQAAoQBBhIEhgILJAoOCgYEAAKEAQESBIYCJTgKDgoGBAAChAEDEgSGAjs+CnMKBQQAAoUBEgSKAgIZGmQgVGVzdCBmaWVsZC1uYW1lLXRvLUpTT04tbmFtZSBjb252ZW50aW9uLgogKHByb3RvYnVmIHNheXMgbmFtZXMgY2FuIGJlIGFueSB2YWxpZCBDL0MrKyBpZGVudGlmaWVyLikKCg4KBgQAAoUBBRIEigICBwoOCgYEAAKFAQESBIoCCBIKDgoGBAAChQEDEgSKAhUYCg0KBQQAAoYBEgSLAgIaCg4KBgQAAoYBBRIEiwICBwoOCgYEAAKGAQESBIsCCBMKDgoGBAAChgEDEgSLAhYZCg0KBQQAAocBEgSMAgIbCg4KBgQAAocBBRIEjAICBwoOCgYEAAKHAQESBIwCCBQKDgoGBAAChwEDEgSMAhcaCg0KBQQAAogBEgSNAgIcCg4KBgQAAogBBRIEjQICBwoOCgYEAAKIAQESBI0CCBUKDgoGBAACiAEDEgSNAhgbCg0KBQQAAokBEgSOAgIaCg4KBgQAAokBBRIEjgICBwoOCgYEAAKJAQESBI4CCBMKDgoGBAACiQEDEgSOAhYZCg0KBQQAAooBEgSPAgIcCg4KBgQAAooBBRIEjwICBwoOCgYEAAKKAQESBI8CCBUKDgoGBAACigEDEgSPAhgbCg0KBQQAAosBEgSQAgIZCg4KBgQAAosBBRIEkAICBwoOCgYEAAKLAQESBJACCBIKDgoGBAACiwEDEgSQAhUYCg0KBQQAAowBEgSRAgIZCg4KBgQAAowBBRIEkQICBwoOCgYEAAKMAQESBJECCBIKDgoGBAACjAEDEgSRAhUYCg0KBQQAAo0BEgSSAgIaCg4KBgQAAo0BBRIEkgICBwoOCgYEAAKNAQESBJICCBMKDgoGBAACjQEDEgSSAhYZCg0KBQQAAo4BEgSTAgIbCg4KBgQAAo4BBRIEkwICBwoOCgYEAAKOAQESBJMCCBQKDgoGBAACjgEDEgSTAhcaCg0KBQQAAo8BEgSUAgIbCg4KBgQAAo8BBRIElAICBwoOCgYEAAKPAQESBJQCCBQKDgoGBAACjwEDEgSUAhcaCg0KBQQAApABEgSVAgIbCg4KBgQAApABBRIElQICBwoOCgYEAAKQAQESBJUCCBQKDgoGBAACkAEDEgSVAhcaCg0KBQQAApEBEgSWAgIdCg4KBgQAApEBBRIElgICBwoOCgYEAAKRAQESBJYCCBYKDgoGBAACkQEDEgSWAhkcCg0KBQQAApIBEgSXAgIdCg4KBgQAApIBBRIElwICBwoOCgYEAAKSAQESBJcCCBYKDgoGBAACkgEDEgSXAhkcCg0KBQQAApMBEgSYAgIcCg4KBgQAApMBBRIEmAICBwoOCgYEAAKTAQESBJgCCBUKDgoGBAACkwEDEgSYAhgbCg0KBQQAApQBEgSZAgIcCg4KBgQAApQBBRIEmQICBwoOCgYEAAKUAQESBJkCCBUKDgoGBAAClAEDEgSZAhgbCg0KBQQAApUBEgSaAgIdCg4KBgQAApUBBRIEmgICBwoOCgYEAAKVAQESBJoCCBYKDgoGBAAClQEDEgSaAhkcCg0KBQQAApYBEgSbAgIdCg4KBgQAApYBBRIEmwICBwoOCgYEAAKWAQESBJsCCBYKDgoGBAAClgEDEgSbAhkcCjIKAwQACRIEngICFholIFJlc2VydmVkIGZvciB0ZXN0aW5nIHVua25vd24gZmllbGRzCgoMCgQEAAkAEgSeAgsVCg0KBQQACQABEgSeAgsOCg0KBQQACQACEgSeAhIVCgwKAgQBEgahAgCjAgEKCwoDBAEBEgShAggWCgwKBAQBAgASBKICAg4KDQoFBAECAAUSBKICAgcKDQoFBAECAAESBKICCAkKDQoFBAECAAMSBKICDA0KDAoCBQASBqUCAKkCAQoLCgMFAAESBKUCBRAKDAoEBQACABIEpgICEgoNCgUFAAIAARIEpgICDQoNCgUFAAIAAhIEpgIQEQoMCgQFAAIBEgSnAgISCg0KBQUAAgEBEgSnAgINCg0KBQUAAgECEgSnAhARCgwKBAUAAgISBKgCAhIKDQoFBQACAgESBKgCAg0KDQoFBQACAgISBKgCEBEKDAoCBAISBqsCAKwCAQoLCgMEAgESBKsCCBwKDAoCBAMSBq4CALMCAQoLCgMEAwESBK4CCBYKDgoEBAMEABIGrwICsgIDCg0KBQQDBAABEgSvAgcLCg4KBgQDBAACABIEsAIEDwoPCgcEAwQAAgABEgSwAgQKCg8KBwQDBAACAAISBLACDQ4KDgoGBAMEAAIBEgSxAgQOCg8KBwQDBAACAQESBLECBAkKDwoHBAMEAAIBAhIEsQIMDWIIZWRpdGlvbnNw6AcK7KcCCjNlZGl0aW9ucy9nb2xkZW4vdGVzdF9tZXNzYWdlc19wcm90bzJfZWRpdGlvbnMucHJvdG8SJnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yIpBdChJUZXN0QWxsVHlwZXNQcm90bzISJQoOb3B0aW9uYWxfaW50MzIYASABKAVSDW9wdGlvbmFsSW50MzISJQoOb3B0aW9uYWxfaW50NjQYAiABKANSDW9wdGlvbmFsSW50NjQSJwoPb3B0aW9uYWxfdWludDMyGAMgASgNUg5vcHRpb25hbFVpbnQzMhInCg9vcHRpb25hbF91aW50NjQYBCABKARSDm9wdGlvbmFsVWludDY0EicKD29wdGlvbmFsX3NpbnQzMhgFIAEoEVIOb3B0aW9uYWxTaW50MzISJwoPb3B0aW9uYWxfc2ludDY0GAYgASgSUg5vcHRpb25hbFNpbnQ2NBIpChBvcHRpb25hbF9maXhlZDMyGAcgASgHUg9vcHRpb25hbEZpeGVkMzISKQoQb3B0aW9uYWxfZml4ZWQ2NBgIIAEoBlIPb3B0aW9uYWxGaXhlZDY0EisKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPUhBvcHRpb25hbFNmaXhlZDMyEisKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQUhBvcHRpb25hbFNmaXhlZDY0EiUKDm9wdGlvbmFsX2Zsb2F0GAsgASgCUg1vcHRpb25hbEZsb2F0EicKD29wdGlvbmFsX2RvdWJsZRgMIAEoAVIOb3B0aW9uYWxEb3VibGUSIwoNb3B0aW9uYWxfYm9vbBgNIAEoCFIMb3B0aW9uYWxCb29sEicKD29wdGlvbmFsX3N0cmluZxgOIAEoCVIOb3B0aW9uYWxTdHJpbmcSJQoOb3B0aW9uYWxfYnl0ZXMYDyABKAxSDW9wdGlvbmFsQnl0ZXMSgAEKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZRJ2ChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWb3B0aW9uYWxGb3JlaWduTWVzc2FnZRJ3ChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJvcHRpb25hbE5lc3RlZEVudW0SbQoVb3B0aW9uYWxfZm9yZWlnbl9lbnVtGBYgASgOMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbkVudW1Qcm90bzJSE29wdGlvbmFsRm9yZWlnbkVudW0SNgoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAlITb3B0aW9uYWxTdHJpbmdQaWVjZRInCg1vcHRpb25hbF9jb3JkGBkgASgJQgIIAVIMb3B0aW9uYWxDb3JkEmcKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yUhByZWN1cnNpdmVNZXNzYWdlEiUKDnJlcGVhdGVkX2ludDMyGB8gAygFUg1yZXBlYXRlZEludDMyEiUKDnJlcGVhdGVkX2ludDY0GCAgAygDUg1yZXBlYXRlZEludDY0EicKD3JlcGVhdGVkX3VpbnQzMhghIAMoDVIOcmVwZWF0ZWRVaW50MzISJwoPcmVwZWF0ZWRfdWludDY0GCIgAygEUg5yZXBlYXRlZFVpbnQ2NBInCg9yZXBlYXRlZF9zaW50MzIYIyADKBFSDnJlcGVhdGVkU2ludDMyEicKD3JlcGVhdGVkX3NpbnQ2NBgkIAMoElIOcmVwZWF0ZWRTaW50NjQSKQoQcmVwZWF0ZWRfZml4ZWQzMhglIAMoB1IPcmVwZWF0ZWRGaXhlZDMyEikKEHJlcGVhdGVkX2ZpeGVkNjQYJiADKAZSD3JlcGVhdGVkRml4ZWQ2NBIrChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoD1IQcmVwZWF0ZWRTZml4ZWQzMhIrChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEFIQcmVwZWF0ZWRTZml4ZWQ2NBIlCg5yZXBlYXRlZF9mbG9hdBgpIAMoAlINcmVwZWF0ZWRGbG9hdBInCg9yZXBlYXRlZF9kb3VibGUYKiADKAFSDnJlcGVhdGVkRG91YmxlEiMKDXJlcGVhdGVkX2Jvb2wYKyADKAhSDHJlcGVhdGVkQm9vbBInCg9yZXBlYXRlZF9zdHJpbmcYLCADKAlSDnJlcGVhdGVkU3RyaW5nEiUKDnJlcGVhdGVkX2J5dGVzGC0gAygMUg1yZXBlYXRlZEJ5dGVzEoABChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USdgoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USdwoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEm0KFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIoCgxwYWNrZWRfaW50MzIYSyADKAVCBaoBAhgBUgtwYWNrZWRJbnQzMhIoCgxwYWNrZWRfaW50NjQYTCADKANCBaoBAhgBUgtwYWNrZWRJbnQ2NBIqCg1wYWNrZWRfdWludDMyGE0gAygNQgWqAQIYAVIMcGFja2VkVWludDMyEioKDXBhY2tlZF91aW50NjQYTiADKARCBaoBAhgBUgxwYWNrZWRVaW50NjQSKgoNcGFja2VkX3NpbnQzMhhPIAMoEUIFqgECGAFSDHBhY2tlZFNpbnQzMhIqCg1wYWNrZWRfc2ludDY0GFAgAygSQgWqAQIYAVIMcGFja2VkU2ludDY0EiwKDnBhY2tlZF9maXhlZDMyGFEgAygHQgWqAQIYAVINcGFja2VkRml4ZWQzMhIsCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkIFqgECGAFSDXBhY2tlZEZpeGVkNjQSLgoPcGFja2VkX3NmaXhlZDMyGFMgAygPQgWqAQIYAVIOcGFja2VkU2ZpeGVkMzISLgoPcGFja2VkX3NmaXhlZDY0GFQgAygQQgWqAQIYAVIOcGFja2VkU2ZpeGVkNjQSKAoMcGFja2VkX2Zsb2F0GFUgAygCQgWqAQIYAVILcGFja2VkRmxvYXQSKgoNcGFja2VkX2RvdWJsZRhWIAMoAUIFqgECGAFSDHBhY2tlZERvdWJsZRImCgtwYWNrZWRfYm9vbBhXIAMoCEIFqgECGAFSCnBhY2tlZEJvb2wSegoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1CBaoBAhgBUhBwYWNrZWROZXN0ZWRFbnVtEiUKDnVucGFja2VkX2ludDMyGFkgAygFUg11bnBhY2tlZEludDMyEiUKDnVucGFja2VkX2ludDY0GFogAygDUg11bnBhY2tlZEludDY0EicKD3VucGFja2VkX3VpbnQzMhhbIAMoDVIOdW5wYWNrZWRVaW50MzISJwoPdW5wYWNrZWRfdWludDY0GFwgAygEUg51bnBhY2tlZFVpbnQ2NBInCg91bnBhY2tlZF9zaW50MzIYXSADKBFSDnVucGFja2VkU2ludDMyEicKD3VucGFja2VkX3NpbnQ2NBheIAMoElIOdW5wYWNrZWRTaW50NjQSKQoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB1IPdW5wYWNrZWRGaXhlZDMyEikKEHVucGFja2VkX2ZpeGVkNjQYYCADKAZSD3VucGFja2VkRml4ZWQ2NBIrChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMoD1IQdW5wYWNrZWRTZml4ZWQzMhIrChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEFIQdW5wYWNrZWRTZml4ZWQ2NBIlCg51bnBhY2tlZF9mbG9hdBhjIAMoAlINdW5wYWNrZWRGbG9hdBInCg91bnBhY2tlZF9kb3VibGUYZCADKAFSDnVucGFja2VkRG91YmxlEiMKDXVucGFja2VkX2Jvb2wYZSADKAhSDHVucGFja2VkQm9vbBJ3ChR1bnBhY2tlZF9uZXN0ZWRfZW51bRhmIAMoDjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtUhJ1bnBhY2tlZE5lc3RlZEVudW0SdQoPbWFwX2ludDMyX2ludDMyGDggAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJ1Cg9tYXBfaW50NjRfaW50NjQYOSADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EnsKEW1hcF91aW50MzJfdWludDMyGDogAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzISewoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJ7ChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJPLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEnsKEW1hcF9zaW50NjRfc2ludDY0GD0gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSgQEKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsyUS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeVIRbWFwRml4ZWQzMkZpeGVkMzISgQEKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsyUS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQShwEKFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzIShwEKFW1hcF9zZml4ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJTLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnlSE21hcFNmaXhlZDY0U2ZpeGVkNjQScgoObWFwX2ludDMyX2Jvb2wYaCADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJCb29sRW50cnlSDG1hcEludDMyQm9vbBJ1Cg9tYXBfaW50MzJfZmxvYXQYQiADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0EngKEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSjgEKGG1hcF9pbnQzMl9uZXN0ZWRfbWVzc2FnZRhnIAMoCzJVLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQzMk5lc3RlZE1lc3NhZ2VFbnRyeVIVbWFwSW50MzJOZXN0ZWRNZXNzYWdlEm8KDW1hcF9ib29sX2Jvb2wYRCADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwQm9vbEJvb2xFbnRyeVILbWFwQm9vbEJvb2wSewoRbWFwX3N0cmluZ19zdHJpbmcYRSADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nU3RyaW5nRW50cnlSD21hcFN0cmluZ1N0cmluZxJ4ChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0J5dGVzRW50cnlSDm1hcFN0cmluZ0J5dGVzEpEBChltYXBfc3RyaW5nX25lc3RlZF9tZXNzYWdlGEcgAygLMlYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeVIWbWFwU3RyaW5nTmVzdGVkTWVzc2FnZRKUAQoabWFwX3N0cmluZ19mb3JlaWduX21lc3NhZ2UYSCADKAsyVy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeVIXbWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2USiAEKFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsyUy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEosBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJULnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzISfAoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEmYKCm9uZW9mX2VudW0YdyABKA4yRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SWwoEZGF0YRjJASABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuRGF0YUIFqgECKAJSBGRhdGESiAEKE211bHRpd29yZGdyb3VwZmllbGQYzAEgASgLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk11bHRpV29yZEdyb3VwRmllbGRCBaoBAigCUhNtdWx0aXdvcmRncm91cGZpZWxkEjAKDWRlZmF1bHRfaW50MzIY8QEgASgFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASABKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAEoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgASgROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAEoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAEoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASABKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASABKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASABKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgSfQoTbWVzc2FnZV9zZXRfY29ycmVjdBj0AyABKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RSEW1lc3NhZ2VTZXRDb3JyZWN0GnsKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJcCgtjb3JlY3Vyc2l2ZRgCIAEoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGj8KEU1hcEludDMyQm9vbEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGpIBChpNYXBJbnQzMk5lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRJeCgV2YWx1ZRgCIAEoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGpMBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSXgoFdmFsdWUYAiABKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGogBChxNYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElIKBXZhbHVlGAIgASgLMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSBXZhbHVlOgI4ARqNAQoYTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElsKBXZhbHVlGAIgASgOMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SBXZhbHVlOgI4ARqCAQoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRIQCgNrZXkYASABKAlSA2tleRJPCgV2YWx1ZRgCIAEoDjI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUgV2YWx1ZToCOAEaTAoERGF0YRIgCgtncm91cF9pbnQzMhjKASABKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGMsBIAEoDVILZ3JvdXBVaW50MzIaWwoTTXVsdGlXb3JkR3JvdXBGaWVsZBIgCgtncm91cF9pbnQzMhjNASABKAVSCmdyb3VwSW50MzISIgoMZ3JvdXBfdWludDMyGM4BIAEoDVILZ3JvdXBVaW50MzIaIQoRTWVzc2FnZVNldENvcnJlY3QqCAgEEP////8HOgIIARqMAgobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xEhAKA3N0chgZIAEoCVIDc3RyMtoBChVtZXNzYWdlX3NldF9leHRlbnNpb24STC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QY+bteIAEoCzJWLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24aiQIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhIMCgFpGAkgASgFUgFpMtsBChVtZXNzYWdlX3NldF9leHRlbnNpb24STC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYkLP8ASABKAsyVi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24yUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGpYCChJFeHRlbnNpb25XaXRoT25lb2YSDgoBYRgBIAEoBUgAUgFhEg4KAWIYAiABKAVIAFIBYjLQAQoUZXh0ZW5zaW9uX3dpdGhfb25lb2YSTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QYlZrvOiABKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuRXh0ZW5zaW9uV2l0aE9uZW9mUhJleHRlbnNpb25XaXRoT25lb2ZCDQoLb25lb2ZfZmllbGQiOQoKTmVzdGVkRW51bRIHCgNGT08QABIHCgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASoFCHgQyQFCDQoLb25lb2ZfZmllbGRKBgjoBxCQTiIkChRGb3JlaWduTWVzc2FnZVByb3RvMhIMCgFjGAEgASgFUgFjIlAKCkdyb3VwRmllbGQSHwoLZ3JvdXBfaW50MzIYeiABKAVSCmdyb3VwSW50MzISIQoMZ3JvdXBfdWludDMyGHsgASgNUgtncm91cFVpbnQzMiK3AwoVVW5rbm93blRvVGVzdEFsbFR5cGVzEiYKDm9wdGlvbmFsX2ludDMyGOkHIAEoBVINb3B0aW9uYWxJbnQzMhIoCg9vcHRpb25hbF9zdHJpbmcY6gcgASgJUg5vcHRpb25hbFN0cmluZxJkCg5uZXN0ZWRfbWVzc2FnZRjrByABKAsyPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlINbmVzdGVkTWVzc2FnZRJ5Cg1vcHRpb25hbGdyb3VwGOwHIAEoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlVua25vd25Ub1Rlc3RBbGxUeXBlcy5PcHRpb25hbEdyb3VwQgWqAQIoAlINb3B0aW9uYWxncm91cBIkCg1vcHRpb25hbF9ib29sGO4HIAEoCFIMb3B0aW9uYWxCb29sEiYKDnJlcGVhdGVkX2ludDMyGPMHIAMoBVINcmVwZWF0ZWRJbnQzMhodCg1PcHRpb25hbEdyb3VwEgwKAWEYASABKAVSAWEiFgoUTnVsbEh5cG90aGVzaXNQcm90bzIiLwoORW51bU9ubHlQcm90bzIiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABIiUKD09uZVN0cmluZ1Byb3RvMhISCgRkYXRhGAEgASgJUgRkYXRhImEKEVByb3RvV2l0aEtleXdvcmRzEhYKBmlubGluZRgBIAEoBVIGaW5saW5lEhgKB2NvbmNlcHQYAiABKAlSB2NvbmNlcHQSGgoIcmVxdWlyZXMYAyADKAlSCHJlcXVpcmVzIvYcChpUZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMhIsCg5yZXF1aXJlZF9pbnQzMhgBIAEoBUIFqgECCANSDXJlcXVpcmVkSW50MzISLAoOcmVxdWlyZWRfaW50NjQYAiABKANCBaoBAggDUg1yZXF1aXJlZEludDY0Ei4KD3JlcXVpcmVkX3VpbnQzMhgDIAEoDUIFqgECCANSDnJlcXVpcmVkVWludDMyEi4KD3JlcXVpcmVkX3VpbnQ2NBgEIAEoBEIFqgECCANSDnJlcXVpcmVkVWludDY0Ei4KD3JlcXVpcmVkX3NpbnQzMhgFIAEoEUIFqgECCANSDnJlcXVpcmVkU2ludDMyEi4KD3JlcXVpcmVkX3NpbnQ2NBgGIAEoEkIFqgECCANSDnJlcXVpcmVkU2ludDY0EjAKEHJlcXVpcmVkX2ZpeGVkMzIYByABKAdCBaoBAggDUg9yZXF1aXJlZEZpeGVkMzISMAoQcmVxdWlyZWRfZml4ZWQ2NBgIIAEoBkIFqgECCANSD3JlcXVpcmVkRml4ZWQ2NBIyChFyZXF1aXJlZF9zZml4ZWQzMhgJIAEoD0IFqgECCANSEHJlcXVpcmVkU2ZpeGVkMzISMgoRcmVxdWlyZWRfc2ZpeGVkNjQYCiABKBBCBaoBAggDUhByZXF1aXJlZFNmaXhlZDY0EiwKDnJlcXVpcmVkX2Zsb2F0GAsgASgCQgWqAQIIA1INcmVxdWlyZWRGbG9hdBIuCg9yZXF1aXJlZF9kb3VibGUYDCABKAFCBaoBAggDUg5yZXF1aXJlZERvdWJsZRIqCg1yZXF1aXJlZF9ib29sGA0gASgIQgWqAQIIA1IMcmVxdWlyZWRCb29sEi4KD3JlcXVpcmVkX3N0cmluZxgOIAEoCUIFqgECCANSDnJlcXVpcmVkU3RyaW5nEiwKDnJlcXVpcmVkX2J5dGVzGA8gASgMQgWqAQIIA1INcmVxdWlyZWRCeXRlcxKPAQoXcmVxdWlyZWRfbmVzdGVkX21lc3NhZ2UYEiABKAsyUC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlQgWqAQIIA1IVcmVxdWlyZWROZXN0ZWRNZXNzYWdlEn0KGHJlcXVpcmVkX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25NZXNzYWdlUHJvdG8yQgWqAQIIA1IWcmVxdWlyZWRGb3JlaWduTWVzc2FnZRKGAQoUcmVxdWlyZWRfbmVzdGVkX2VudW0YFSABKA4yTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5OZXN0ZWRFbnVtQgWqAQIIA1IScmVxdWlyZWROZXN0ZWRFbnVtEnQKFXJlcXVpcmVkX2ZvcmVpZ25fZW51bRgWIAEoDjI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yQgWqAQIIA1ITcmVxdWlyZWRGb3JlaWduRW51bRI7ChVyZXF1aXJlZF9zdHJpbmdfcGllY2UYGCABKAlCBwgCqgECCANSE3JlcXVpcmVkU3RyaW5nUGllY2USLAoNcmVxdWlyZWRfY29yZBgZIAEoCUIHCAGqAQIIA1IMcmVxdWlyZWRDb3JkEnYKEXJlY3Vyc2l2ZV9tZXNzYWdlGBsgASgLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJCBaoBAggDUhByZWN1cnNpdmVNZXNzYWdlEoABChpvcHRpb25hbF9yZWN1cnNpdmVfbWVzc2FnZRgcIAEoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yUhhvcHRpb25hbFJlY3Vyc2l2ZU1lc3NhZ2USZQoEZGF0YRjJASABKAsyRy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5EYXRhQgeqAQQIAygCUgRkYXRhEjcKDWRlZmF1bHRfaW50MzIY8QEgASgFOgotMTIzNDU2Nzg5QgWqAQIIA1IMZGVmYXVsdEludDMyEkEKDWRlZmF1bHRfaW50NjQY8gEgASgDOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSDGRlZmF1bHRJbnQ2NBI5Cg5kZWZhdWx0X3VpbnQzMhjzASABKA06CjIxMjM0NTY3ODlCBaoBAggDUg1kZWZhdWx0VWludDMyEkMKDmRlZmF1bHRfdWludDY0GPQBIAEoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlCBaoBAggDUg1kZWZhdWx0VWludDY0EjkKDmRlZmF1bHRfc2ludDMyGPUBIAEoEToKLTEyMzQ1Njc4OUIFqgECCANSDWRlZmF1bHRTaW50MzISQwoOZGVmYXVsdF9zaW50NjQY9gEgASgSOhQtOTEyMzQ1Njc4OTEyMzQ1Njc4OUIFqgECCANSDWRlZmF1bHRTaW50NjQSOwoPZGVmYXVsdF9maXhlZDMyGPcBIAEoBzoKMjEyMzQ1Njc4OUIFqgECCANSDmRlZmF1bHRGaXhlZDMyEkUKD2RlZmF1bHRfZml4ZWQ2NBj4ASABKAY6FDEwMTIzNDU2Nzg5MTIzNDU2Nzg5QgWqAQIIA1IOZGVmYXVsdEZpeGVkNjQSPQoQZGVmYXVsdF9zZml4ZWQzMhj5ASABKA86Ci0xMjM0NTY3ODlCBaoBAggDUg9kZWZhdWx0U2ZpeGVkMzISRwoQZGVmYXVsdF9zZml4ZWQ2NBj6ASABKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5QgWqAQIIA1IPZGVmYXVsdFNmaXhlZDY0EjIKDWRlZmF1bHRfZmxvYXQY+wEgASgCOgU5ZSswOUIFqgECCANSDGRlZmF1bHRGbG9hdBI0Cg5kZWZhdWx0X2RvdWJsZRj8ASABKAE6BTdlKzIyQgWqAQIIA1INZGVmYXVsdERvdWJsZRIvCgxkZWZhdWx0X2Jvb2wY/QEgASgIOgR0cnVlQgWqAQIIA1ILZGVmYXVsdEJvb2wSNgoOZGVmYXVsdF9zdHJpbmcY/gEgASgJOgdSb3NlYnVkQgWqAQIIA1INZGVmYXVsdFN0cmluZxIzCg1kZWZhdWx0X2J5dGVzGP8BIAEoDDoGam9zaHVhQgWqAQIIA1IMZGVmYXVsdEJ5dGVzGogCCg1OZXN0ZWRNZXNzYWdlEhMKAWEYASABKAVCBaoBAggDUgFhEmsKC2NvcmVjdXJzaXZlGAIgASgLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzJCBaoBAggDUgtjb3JlY3Vyc2l2ZRJ1ChRvcHRpb25hbF9jb3JlY3Vyc2l2ZRgDIAEoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yUhNvcHRpb25hbENvcmVjdXJzaXZlGloKBERhdGESJwoLZ3JvdXBfaW50MzIYygEgASgFQgWqAQIIA1IKZ3JvdXBJbnQzMhIpCgxncm91cF91aW50MzIYywEgASgNQgWqAQIIA1ILZ3JvdXBVaW50MzIaIQoRTWVzc2FnZVNldENvcnJlY3QqCAgEEP////8HOgIIARqjAgobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xEhcKA3N0chgZIAEoCUIFqgECCANSA3N0cjLqAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uElQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFJlcXVpcmVkVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3QY+bteIAEoCzJeLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMVITbWVzc2FnZVNldEV4dGVuc2lvbhqgAgobTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24yEhMKAWkYCSABKAVCBaoBAggDUgFpMusBChVtZXNzYWdlX3NldF9leHRlbnNpb24SVC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJeLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUoGCOgHEJBOIr4DCg5UZXN0TGFyZ2VPbmVvZhJLCgJhMRgBIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkExSABSAmExEksKAmEyGAIgASgLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTJIAFICYTISSwoCYTMYAyABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLnByb3RvMi5UZXN0TGFyZ2VPbmVvZi5BM0gAUgJhMxJLCgJhNBgEIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkE0SABSAmE0EksKAmE1GAUgASgLMjkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTVIAFICYTUaBAoCQTEaBAoCQTIaBAoCQTMaBAoCQTQaBAoCQTVCDQoLbGFyZ2Vfb25lb2YqRgoRRm9yZWlnbkVudW1Qcm90bzISDwoLRk9SRUlHTl9GT08QABIPCgtGT1JFSUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAI6YwoPZXh0ZW5zaW9uX2ludDMyEjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGHggASgFUg5leHRlbnNpb25JbnQzMjqVAQoKZ3JvdXBmaWVsZBI6LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMhh5IAEoCzIyLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMucHJvdG8yLkdyb3VwRmllbGRCBaoBAigCUgpncm91cGZpZWxkQlIKMWNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5wcm90bzJIAfgBAaICDkVkaXRpb25zUHJvdG8ykgMGEAIYAiADSpOgAQoHEgUOAKoFAQqTAwoBDBIDDgARMvICIGNsYW5nLWZvcm1hdCBvZmYKIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUKIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBvciBhdAogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vb3Blbi1zb3VyY2UvbGljZW5zZXMvYnNkCgogVGVzdCBzY2hlbWEgZm9yIHByb3RvMiBtZXNzYWdlcy4gIFRoaXMgdGVzdCBzY2hlbWEgaXMgdXNlZCBieToKCiAtIGNvbmZvcm1hbmNlIHRlc3RzCjIUIExJTlQ6IEFMTE9XX0dST1VQUwoKCAoBAhIDEAAvCggKAQgSAxIAIwoKCgMIMgISAxIAIwoICgEIEgMTADMKCgoDCDIDEgMTADMKCAoBCBIDFAAnCgoKAwgyBBIDFAAnCggKAQgSAxUASgoJCgIIARIDFQBKCggKAQgSAxYALAoJCgIIJBIDFgAsCggKAQgSAxkAHApECgIICRIDGQAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoKCAoBCBIDGgAfCgkKAggfEgMaAB8K2wIKAgQAEgUjAOQCARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKIEFsc28sIGNydWNpYWxseSwgYWxsIG1lc3NhZ2VzIGFuZCBlbnVtcyBpbiB0aGlzIGZpbGUgYXJlIGV2ZW50dWFsbHkKIHN1Ym1lc3NhZ2VzIG9mIHRoaXMgbWVzc2FnZS4gIFNvIGZvciBleGFtcGxlLCBhIGZ1enogdGVzdCBvZiBUZXN0QWxsVHlwZXMKIGNvdWxkIHRyaWdnZXIgYnVncyB0aGF0IG9jY3VyIGluIGFueSBtZXNzYWdlIHR5cGUgaW4gdGhpcyBmaWxlLiAgV2UgdmVyaWZ5CiB0aGlzIHN0YXlzIHRydWUgaW4gYSB1bml0IHRlc3QuCgoKCgMEAAESAyMIGgoMCgQE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IEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgAsCgkKAggBEgMiACwKCAoBCBIDIwAzCgkKAggIEgMjADMKCAoBCBIDJAAiCgkKAggKEgMkACIKCAoBCBIDJQAhCgkKAggkEgMlACEKCAoBCBIDJgA7CgkKAgglEgMmADsKCAoBCBIDJwBNCgkKAggLEgMnAE0KgwEKAgQAEgQrAC8BGncgYFNvdXJjZUNvbnRleHRgIHJlcHJlc2VudHMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBvZiBhCiBwcm90b2J1ZiBlbGVtZW50LCBsaWtlIHRoZSBmaWxlIGluIHdoaWNoIGl0IGlzIGRlZmluZWQuCgoKCgMEAAESAysIFQqjAQoEBAACABIDLgIXGpUBIFRoZSBwYXRoLXF1YWxpZmllZCBuYW1lIG9mIHRoZSAucHJvdG8gZmlsZSB0aGF0IGNvbnRhaW5lZCB0aGUgYXNzb2NpYXRlZAogcHJvdG9idWYgZWxlbWVudC4gIEZvciBleGFtcGxlOiBgImdvb2dsZS9wcm90b2J1Zi9zb3VyY2VfY29udGV4dC5wcm90byJgLgoKDAoFBAACAAUSAy4CCAoMCgUEAAIAARIDLgkSCgwKBQQAAgADEgMuFRZiBnByb3RvMwr7SQoaZ29vZ2xlL3Byb3RvYnVmL3R5cGUucHJvdG8SD2dvb2dsZS5wcm90b2J1ZhoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxokZ29vZ2xlL3Byb3RvYnVmL3NvdXJjZV9jb250ZXh0LnByb3RvIqcCCgRUeXBlEhIKBG5hbWUYASABKAlSBG5hbWUSLgoGZmllbGRzGAIgAygLMhYuZ29vZ2xlLnByb3RvYnVmLkZpZWxkUgZmaWVsZHMSFgoGb25lb2ZzGAMgAygJUgZvbmVvZnMSMQoHb3B0aW9ucxgEIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSRQoOc291cmNlX2NvbnRleHQYBSABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFINc291cmNlQ29udGV4dBIvCgZzeW50YXgYBiABKA4yFy5nb29nbGUucHJvdG9idWYuU3ludGF4UgZzeW50YXgSGAoHZWRpdGlvbhgHIAEoCVIHZWRpdGlvbiK0BgoFRmllbGQSLwoEa2luZBgBIAEoDjIbLmdvb2dsZS5wcm90b2J1Zi5GaWVsZC5LaW5kUgRraW5kEkQKC2NhcmRpbmFsaXR5GAIgASgOMiIuZ29vZ2xlLnByb3RvYnVmLkZpZWxkLkNhcmRpbmFsaXR5UgtjYXJkaW5hbGl0eRIWCgZudW1iZXIYAyABKAVSBm51bWJlchISCgRuYW1lGAQgASgJUgRuYW1lEhkKCHR5cGVfdXJsGAYgASgJUgd0eXBlVXJsEh8KC29uZW9mX2luZGV4GAcgASgFUgpvbmVvZkluZGV4EhYKBnBhY2tlZBgIIAEoCFIGcGFja2VkEjEKB29wdGlvbnMYCSADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEhsKCWpzb25fbmFtZRgKIAEoCVIIanNvbk5hbWUSIwoNZGVmYXVsdF92YWx1ZRgLIAEoCVIMZGVmYXVsdFZhbHVlIsgCCgRLaW5kEhAKDFRZUEVfVU5LTk9XThAAEg8KC1RZUEVfRE9VQkxFEAESDgoKVFlQRV9GTE9BVBACEg4KClRZUEVfSU5UNjQQAxIPCgtUWVBFX1VJTlQ2NBAEEg4KClRZUEVfSU5UMzIQBRIQCgxUWVBFX0ZJWEVENjQQBhIQCgxUWVBFX0ZJWEVEMzIQBxINCglUWVBFX0JPT0wQCBIPCgtUWVBFX1NUUklORxAJEg4KClRZUEVfR1JPVVAQChIQCgxUWVBFX01FU1NBR0UQCxIOCgpUWVBFX0JZVEVTEAwSDwoLVFlQRV9VSU5UMzIQDRINCglUWVBFX0VOVU0QDhIRCg1UWVBFX1NGSVhFRDMyEA8SEQoNVFlQRV9TRklYRUQ2NBAQEg8KC1RZUEVfU0lOVDMyEBESDwoLVFlQRV9TSU5UNjQQEiJ0CgtDYXJkaW5hbGl0eRIXChNDQVJESU5BTElUWV9VTktOT1dOEAASGAoUQ0FSRElOQUxJVFlfT1BUSU9OQUwQARIYChRDQVJESU5BTElUWV9SRVFVSVJFRBACEhgKFENBUkRJTkFMSVRZX1JFUEVBVEVEEAMimQIKBEVudW0SEgoEbmFtZRgBIAEoCVIEbmFtZRI4CgllbnVtdmFsdWUYAiADKAsyGi5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlUgllbnVtdmFsdWUSMQoHb3B0aW9ucxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5PcHRpb25SB29wdGlvbnMSRQoOc291cmNlX2NvbnRleHQYBCABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFINc291cmNlQ29udGV4dBIvCgZzeW50YXgYBSABKA4yFy5nb29nbGUucHJvdG9idWYuU3ludGF4UgZzeW50YXgSGAoHZWRpdGlvbhgGIAEoCVIHZWRpdGlvbiJqCglFbnVtVmFsdWUSEgoEbmFtZRgBIAEoCVIEbmFtZRIWCgZudW1iZXIYAiABKAVSBm51bWJlchIxCgdvcHRpb25zGAMgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucyJICgZPcHRpb24SEgoEbmFtZRgBIAEoCVIEbmFtZRIqCgV2YWx1ZRgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSBXZhbHVlKkMKBlN5bnRheBIRCg1TWU5UQVhfUFJPVE8yEAASEQoNU1lOVEFYX1BST1RPMxABEhMKD1NZTlRBWF9FRElUSU9OUxACQnsKE2NvbS5nb29nbGUucHJvdG9idWZCCVR5cGVQcm90b1ABWi1nb29nbGUuZ29sYW5nLm9yZy9wcm90b2J1Zi90eXBlcy9rbm93bi90eXBlcGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNKjTsKBxIFHgDAAQEKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBP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ZHMYAiADKAsyFy5nb29nbGUucHJvdG9idWYuTWV0aG9kUgdtZXRob2RzEjEKB29wdGlvbnMYAyADKAsyFy5nb29nbGUucHJvdG9idWYuT3B0aW9uUgdvcHRpb25zEhgKB3ZlcnNpb24YBCABKAlSB3ZlcnNpb24SRQoOc291cmNlX2NvbnRleHQYBSABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFINc291cmNlQ29udGV4dBIuCgZtaXhpbnMYBiADKAsyFi5nb29nbGUucHJvdG9idWYuTWl4aW5SBm1peGlucxIvCgZzeW50YXgYByABKA4yFy5nb29nbGUucHJvdG9idWYuU3ludGF4UgZzeW50YXgisgIKBk1ldGhvZBISCgRuYW1lGAEgASgJUgRuYW1lEigKEHJlcXVlc3RfdHlwZV91cmwYAiABKAlSDnJlcXVlc3RUeXBlVXJsEisKEXJlcXVlc3Rfc3RyZWFtaW5nGAMgASgIUhByZXF1ZXN0U3RyZWFtaW5nEioKEXJlc3BvbnNlX3R5cGVfdXJsGAQgASgJUg9yZXNwb25zZVR5cGVVcmwSLQoScmVzcG9uc2Vfc3RyZWFtaW5nGAUgASgIUhFyZXNwb25zZVN0cmVhbWluZxIxCgdvcHRpb25zGAYgAygLMhcuZ29vZ2xlLnByb3RvYnVmLk9wdGlvblIHb3B0aW9ucxIvCgZzeW50YXgYByABKA4yFy5nb29nbGUucHJvdG9idWYuU3ludGF4UgZzeW50YXgiLwoFTWl4aW4SEgoEbmFtZRgBIAEoCVIEbmFtZRISCgRyb290GAIgASgJUgRyb290QnYKE2NvbS5nb29nbGUucHJvdG9idWZCCEFwaVByb3RvUAFaLGdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL2FwaXBiogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSoA8CgcSBR4AzgEBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCQoCAwASAyIALgoJCgIDARIDIwAkCggKAQgSAyUALAoJCgIIARIDJQAsCggKAQgSAyYAKQoJCgIICBIDJgApCggKAQgSAycAIgoJCgIIChIDJwAiCggKAQgSAygAIQoJCgIIJBIDKAAhCggKAQgSAykAOwoJCgIIJRIDKQA7CggKAQgSAyoAQwoJCgIICxIDKgBDCqsECgIEABIENQBfARqeBCBBcGkgaXMgYSBsaWdodC13ZWlnaHQgZGVzY3JpcHRvciBmb3IgYW4gQVBJIEludGVyZmFjZS4KCiBJbnRlcmZhY2VzIGFyZSBhbHNvIGRlc2NyaWJlZCBhcyAicHJvdG9jb2wgYnVmZmVyIHNlcnZpY2VzIiBpbiBzb21lIGNvbnRleHRzLAogc3VjaCBhcyBieSB0aGUgInNlcnZpY2UiIGtleXdvcmQgaW4gYSAucHJvdG8gZmlsZSwgYnV0IHRoZXkgYXJlIGRpZmZlcmVudAogZnJvbSBBUEkgU2VydmljZXMsIHdoaWNoIHJlcHJlc2VudCBhIGNvbmNyZXRlIGltcGxlbWVudGF0aW9uIG9mIGFuIGludGVyZmFjZQogYXMgb3Bwb3NlZCB0byBzaW1wbHkgYSBkZXNjcmlwdGlvbiBvZiBtZXRob2RzIGFuZCBiaW5kaW5ncy4gVGhleSBhcmUgYWxzbwogc29tZXRpbWVzIHNpbXBseSByZWZlcnJlZCB0byBhcyAiQVBJcyIgaW4gb3RoZXIgY29udGV4dHMsIHN1Y2ggYXMgdGhlIG5hbWUgb2YKIHRoaXMgbWVzc2FnZSBpdHNlbGYuIFNlZSBodHRwczovL2Nsb3VkLmdvb2dsZS5jb20vYXBpcy9kZXNpZ24vZ2xvc3NhcnkgZm9yCiBkZXRhaWxlZCB0ZXJtaW5vbG9neS4KCgoKAwQAARIDNQgLCnsKBAQAAgASAzgCEhpuIFRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZSBvZiB0aGlzIGludGVyZmFjZSwgaW5jbHVkaW5nIHBhY2thZ2UgbmFtZQogZm9sbG93ZWQgYnkgdGhlIGludGVyZmFjZSdzIHNpbXBsZSBuYW1lLgoKDAoFBAACAAUSAzgCCAoMCgUEAAIAARIDOAkNCgwKBQQAAgADEgM4EBEKQwoEBAACARIDOwIeGjYgVGhlIG1ldGhvZHMgb2YgdGhpcyBpbnRlcmZhY2UsIGluIHVuc3BlY2lmaWVkIG9yZGVyLgoKDAoFBAACAQQSAzsCCgoMCgUEAAIBBhIDOwsRCgwKBQQAAgEBEgM7EhkKDAoFBAACAQMSAzscHQo2CgQEAAICEgM+Ah4aKSBBbnkgbWV0YWRhdGEgYXR0YWNoZWQgdG8gdGhlIGludGVyZmFjZS4KCgwKBQQAAgIEEgM+AgoKDAoFBAACAgYSAz4LEQoMCgUEAAICARIDPhIZCgwKBQQAAgIDEgM+HB0KgQgKBAQAAgMSA1QCFRrzByBBIHZlcnNpb24gc3RyaW5nIGZvciB0aGlzIGludGVyZmFjZS4gSWYgc3BlY2lmaWVkLCBtdXN0IGhhdmUgdGhlIGZvcm0KIGBtYWpvci12ZXJzaW9uLm1pbm9yLXZlcnNpb25gLCBhcyBpbiBgMS4xMGAuIElmIHRoZSBtaW5vciB2ZXJzaW9uIGlzCiBvbWl0dGVkLCBpdCBkZWZhdWx0cyB0byB6ZXJvLiBJZiB0aGUgZW50aXJlIHZlcnNpb24gZmllbGQgaXMgZW1wdHksIHRoZQogbWFqb3IgdmVyc2lvbiBpcyBkZXJpdmVkIGZyb20gdGhlIHBhY2thZ2UgbmFtZSwgYXMgb3V0bGluZWQgYmVsb3cuIElmIHRoZQogZmllbGQgaXMgbm90IGVtcHR5LCB0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSBuYW1lIHdpbGwgYmUgdmVyaWZpZWQgdG8gYmUKIGNvbnNpc3RlbnQgd2l0aCB3aGF0IGlzIHByb3ZpZGVkIGhlcmUuCgogVGhlIHZlcnNpb25pbmcgc2NoZW1hIHVzZXMgW3NlbWFudGljCiB2ZXJzaW9uaW5nXShodHRwOi8vc2VtdmVyLm9yZykgd2hlcmUgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyCiBpbmRpY2F0ZXMgYSBicmVha2luZyBjaGFuZ2UgYW5kIHRoZSBtaW5vciB2ZXJzaW9uIGFuIGFkZGl0aXZlLAogbm9uLWJyZWFraW5nIGNoYW5nZS4gQm90aCB2ZXJzaW9uIG51bWJlcnMgYXJlIHNpZ25hbHMgdG8gdXNlcnMKIHdoYXQgdG8gZXhwZWN0IGZyb20gZGlmZmVyZW50IHZlcnNpb25zLCBhbmQgc2hvdWxkIGJlIGNhcmVmdWxseQogY2hvc2VuIGJhc2VkIG9uIHRoZSBwcm9kdWN0IHBsYW4uCgogVGhlIG1ham9yIHZlcnNpb24gaXMgYWxzbyByZWZsZWN0ZWQgaW4gdGhlIHBhY2thZ2UgbmFtZSBvZiB0aGUKIGludGVyZmFjZSwgd2hpY2ggbXVzdCBlbmQgaW4gYHY8bWFqb3ItdmVyc2lvbj5gLCBhcyBpbgogYGdvb2dsZS5mZWF0dXJlLnYxYC4gRm9yIG1ham9yIHZlcnNpb25zIDAgYW5kIDEsIHRoZSBzdWZmaXggY2FuCiBiZSBvbWl0dGVkLiBaZXJvIG1ham9yIHZlcnNpb25zIG11c3Qgb25seSBiZSB1c2VkIGZvcgogZXhwZXJpbWVudGFsLCBub24tR0EgaW50ZXJmYWNlcy4KCgoMCgUEAAIDBRIDVAIICgwKBQQAAgMBEgNUCRAKDAoFBAACAwMSA1QTFApbCgQEAAIEEgNYAiMaTiBTb3VyY2UgY29udGV4dCBmb3IgdGhlIHByb3RvY29sIGJ1ZmZlciBzZXJ2aWNlIHJlcHJlc2VudGVkIGJ5IHRoaXMKIG1lc3NhZ2UuCgoMCgUEAAIEBhIDWAIPCgwKBQQAAgQBEgNYEB4KDAoFBAACBAMSA1ghIgoyCgQEAAIFEgNbAhwaJSBJbmNsdWRlZCBpbnRlcmZhY2VzLiBTZWUgW01peGluXVtdLgoKDAoFBAACBQQSA1sCCgoMCgUEAAIFBhIDWwsQCgwKBQQAAgUBEgNbERcKDAoFBAACBQMSA1saGwowCgQEAAIGEgNeAhQaIyBUaGUgc291cmNlIHN5bnRheCBvZiB0aGUgc2VydmljZS4KCgwKBQQAAgYGEgNeAggKDAoFBAACBgESA14JDwoMCgUEAAIGAxIDXhITCj0KAgQBEgRiAHcBGjEgTWV0aG9kIHJlcHJlc2VudHMgYSBtZXRob2Qgb2YgYW4gQVBJIGludGVyZmFjZS4KCgoKAwQBARIDYggOCi4KBAQBAgASA2QCEhohIFRoZSBzaW1wbGUgbmFtZSBvZiB0aGlzIG1ldGhvZC4KCgwKBQQBAgAFEgNkAggKDAoFBAECAAESA2QJDQoMCgUEAQIAAxIDZBARCi8KBAQBAgESA2cCHhoiIEEgVVJMIG9mIHRoZSBpbnB1dCBtZXNzYWdlIHR5cGUuCgoMCgUEAQIBBRIDZwIICgwKBQQBAgEBEgNnCRkKDAoFBAECAQMSA2ccHQowCgQEAQICEgNqAh0aIyBJZiB0cnVlLCB0aGUgcmVxdWVzdCBpcyBzdHJlYW1lZC4KCgwKBQQBAgIFEgNqAgYKDAoFBAECAgESA2oHGAoMCgUEAQICAxIDahscCjIKBAQBAgMSA20CHxolIFRoZSBVUkwgb2YgdGhlIG91dHB1dCBtZXNzYWdlIHR5cGUuCgoMCgUEAQIDBRIDbQIICgwKBQQBAgMBEgNtCRoKDAoFBAECAwMSA20dHgoxCgQEAQIEEgNwAh4aJCBJZiB0cnVlLCB0aGUgcmVzcG9uc2UgaXMgc3RyZWFtZWQuCgoMCgUEAQIEBRIDcAIGCgwKBQQBAgQBEgNwBxkKDAoFBAECBAMSA3AcHQozCgQEAQIFEgNzAh4aJiBBbnkgbWV0YWRhdGEgYXR0YWNoZWQgdG8gdGhlIG1ldGhvZC4KCgwKBQQBAgUEEgNzAgoKDAoFBAECBQYSA3MLEQoMCgUEAQIFARIDcxIZCgwKBQQBAgUDEgNzHB0KMAoEBAECBhIDdgIUGiMgVGhlIHNvdXJjZSBzeW50YXggb2YgdGhpcyBtZXRob2QuCgoMCgUEAQIGBhIDdgIICgwKBQQBAgYBEgN2CQ8KDAoFBAECBgMSA3YSEwrKEwoCBAISBscBAM4BARq7EyBEZWNsYXJlcyBhbiBBUEkgSW50ZXJmYWNlIHRvIGJlIGluY2x1ZGVkIGluIHRoaXMgaW50ZXJmYWNlLiBUaGUgaW5jbHVkaW5nCiBpbnRlcmZhY2UgbXVzdCByZWRlY2xhcmUgYWxsIHRoZSBtZXRob2RzIGZyb20gdGhlIGluY2x1ZGVkIGludGVyZmFjZSwgYnV0CiBkb2N1bWVudGF0aW9uIGFuZCBvcHRpb25zIGFyZSBpbmhlcml0ZWQgYXMgZm9sbG93czoKCiAtIElmIGFmdGVyIGNvbW1lbnQgYW5kIHdoaXRlc3BhY2Ugc3RyaXBwaW5nLCB0aGUgZG9jdW1lbnRhdGlvbgogICBzdHJpbmcgb2YgdGhlIHJlZGVjbGFyZWQgbWV0aG9kIGlzIGVtcHR5LCBpdCB3aWxsIGJlIGluaGVyaXRlZAogICBmcm9tIHRoZSBvcmlnaW5hbCBtZXRob2QuCgogLSBFYWNoIGFubm90YXRpb24gYmVsb25naW5nIHRvIHRoZSBzZXJ2aWNlIGNvbmZpZyAoaHR0cCwKICAgdmlzaWJpbGl0eSkgd2hpY2ggaXMgbm90IHNldCBpbiB0aGUgcmVkZWNsYXJlZCBtZXRob2Qgd2lsbCBiZQogICBpbmhlcml0ZWQuCgogLSBJZiBhbiBodHRwIGFubm90YXRpb24gaXMgaW5oZXJpdGVkLCB0aGUgcGF0aCBwYXR0ZXJuIHdpbGwgYmUKICAgbW9kaWZpZWQgYXMgZm9sbG93cy4gQW55IHZlcnNpb24gcHJlZml4IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlCiAgIHZlcnNpb24gb2YgdGhlIGluY2x1ZGluZyBpbnRlcmZhY2UgcGx1cyB0aGUgW3Jvb3RdW10gcGF0aCBpZgogICBzcGVjaWZpZWQuCgogRXhhbXBsZSBvZiBhIHNpbXBsZSBtaXhpbjoKCiAgICAgcGFja2FnZSBnb29nbGUuYWNsLnYxOwogICAgIHNlcnZpY2UgQWNjZXNzQ29udHJvbCB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YxL3tyZXNvdXJjZT0qKn06Z2V0QWNsIjsKICAgICAgIH0KICAgICB9CgogICAgIHBhY2thZ2UgZ29vZ2xlLnN0b3JhZ2UudjI7CiAgICAgc2VydmljZSBTdG9yYWdlIHsKICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKTsKCiAgICAgICAvLyBHZXQgYSBkYXRhIHJlY29yZC4KICAgICAgIHJwYyBHZXREYXRhKEdldERhdGFSZXF1ZXN0KSByZXR1cm5zIChEYXRhKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL3tyZXNvdXJjZT0qKn0iOwogICAgICAgfQogICAgIH0KCiBFeGFtcGxlIG9mIGEgbWl4aW4gY29uZmlndXJhdGlvbjoKCiAgICAgYXBpczoKICAgICAtIG5hbWU6IGdvb2dsZS5zdG9yYWdlLnYyLlN0b3JhZ2UKICAgICAgIG1peGluczoKICAgICAgIC0gbmFtZTogZ29vZ2xlLmFjbC52MS5BY2Nlc3NDb250cm9sCgogVGhlIG1peGluIGNvbnN0cnVjdCBpbXBsaWVzIHRoYXQgYWxsIG1ldGhvZHMgaW4gYEFjY2Vzc0NvbnRyb2xgIGFyZQogYWxzbyBkZWNsYXJlZCB3aXRoIHNhbWUgbmFtZSBhbmQgcmVxdWVzdC9yZXNwb25zZSB0eXBlcyBpbgogYFN0b3JhZ2VgLiBBIGRvY3VtZW50YXRpb24gZ2VuZXJhdG9yIG9yIGFubm90YXRpb24gcHJvY2Vzc29yIHdpbGwKIHNlZSB0aGUgZWZmZWN0aXZlIGBTdG9yYWdlLkdldEFjbGAgbWV0aG9kIGFmdGVyIGluaGVyaXRpbmcKIGRvY3VtZW50YXRpb24gYW5kIGFubm90YXRpb25zIGFzIGZvbGxvd3M6CgogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL3tyZXNvdXJjZT0qKn06Z2V0QWNsIjsKICAgICAgIH0KICAgICAgIC4uLgogICAgIH0KCiBOb3RlIGhvdyB0aGUgdmVyc2lvbiBpbiB0aGUgcGF0aCBwYXR0ZXJuIGNoYW5nZWQgZnJvbSBgdjFgIHRvIGB2MmAuCgogSWYgdGhlIGByb290YCBmaWVsZCBpbiB0aGUgbWl4aW4gaXMgc3BlY2lmaWVkLCBpdCBzaG91bGQgYmUgYQogcmVsYXRpdmUgcGF0aCB1bmRlciB3aGljaCBpbmhlcml0ZWQgSFRUUCBwYXRocyBhcmUgcGxhY2VkLiBFeGFtcGxlOgoKICAgICBhcGlzOgogICAgIC0gbmFtZTogZ29vZ2xlLnN0b3JhZ2UudjIuU3RvcmFnZQogICAgICAgbWl4aW5zOgogICAgICAgLSBuYW1lOiBnb29nbGUuYWNsLnYxLkFjY2Vzc0NvbnRyb2wKICAgICAgICAgcm9vdDogYWNscwoKIFRoaXMgaW1wbGllcyB0aGUgZm9sbG93aW5nIGluaGVyaXRlZCBIVFRQIGFubm90YXRpb246CgogICAgIHNlcnZpY2UgU3RvcmFnZSB7CiAgICAgICAvLyBHZXQgdGhlIHVuZGVybHlpbmcgQUNMIG9iamVjdC4KICAgICAgIHJwYyBHZXRBY2woR2V0QWNsUmVxdWVzdCkgcmV0dXJucyAoQWNsKSB7CiAgICAgICAgIG9wdGlvbiAoZ29vZ2xlLmFwaS5odHRwKS5nZXQgPSAiL3YyL2FjbHMve3Jlc291cmNlPSoqfTpnZXRBY2wiOwogICAgICAgfQogICAgICAgLi4uCiAgICAgfQoKCwoDBAIBEgTHAQgNCkwKBAQCAgASBMkBAhIaPiBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIGludGVyZmFjZSB3aGljaCBpcyBpbmNsdWRlZC4KCg0KBQQCAgAFEgTJAQIICg0KBQQCAgABEgTJAQkNCg0KBQQCAgADEgTJARARClsKBAQCAgESBM0BAhIaTSBJZiBub24tZW1wdHkgc3BlY2lmaWVzIGEgcGF0aCB1bmRlciB3aGljaCBpbmhlcml0ZWQgSFRUUCBwYXRocwogYXJlIHJvb3RlZC4KCg0KBQQCAgEFEgTNAQIICg0KBQQCAgEBEgTNAQkNCg0KBQQCAgEDEgTNARARYgZwcm90bzMK/xEKG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIgcKBUVtcHR5Qn0KE2NvbS5nb29nbGUucHJvdG9idWZCCkVtcHR5UHJvdG9QAVouZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZW1wdHlwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0q+EAoGEgQeADIQCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgBFCgkKAggLEgMiAEUKCAoBCBIDIwAsCgkKAggBEgMjACwKCAoBCBIDJAArCgkKAggIEgMkACsKCAoBCBIDJQAiCgkKAggKEgMlACIKCAoBCBIDJgAhCgkKAggkEgMmACEKCAoBCBIDJwA7CgkKAgglEgMnADsKCAoBCBIDKAAfCgkKAggfEgMoAB8KuwIKAgQAEgMyABAarwIgQSBnZW5lcmljIGVtcHR5IG1lc3NhZ2UgdGhhdCB5b3UgY2FuIHJlLXVzZSB0byBhdm9pZCBkZWZpbmluZyBkdXBsaWNhdGVkCiBlbXB0eSBtZXNzYWdlcyBpbiB5b3VyIEFQSXMuIEEgdHlwaWNhbCBleGFtcGxlIGlzIHRvIHVzZSBpdCBhcyB0aGUgcmVxdWVzdAogb3IgdGhlIHJlc3BvbnNlIHR5cGUgb2YgYW4gQVBJIG1ldGhvZC4gRm9yIGluc3RhbmNlOgoKICAgICBzZXJ2aWNlIEZvbyB7CiAgICAgICBycGMgQmFyKGdvb2dsZS5wcm90b2J1Zi5FbXB0eSkgcmV0dXJucyAoZ29vZ2xlLnByb3RvYnVmLkVtcHR5KTsKICAgICB9CgoKCgoDBAABEgMyCA1iBnByb3RvMwrOYgovZ29vZ2xlL3Byb3RvYnVmL3VuaXR0ZXN0X3dlbGxfa25vd25fdHlwZXMucHJvdG8SD3Byb3RvMl91bml0dGVzdBoZZ29vZ2xlL3Byb3RvYnVmL2FueS5wcm90bxoZZ29vZ2xlL3Byb3RvYnVmL2FwaS5wcm90bxoeZ29vZ2xlL3Byb3RvYnVmL2R1cmF0aW9uLnByb3RvGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8aIGdvb2dsZS9wcm90b2J1Zi9maWVsZF9tYXNrLnByb3RvGiRnb29nbGUvcHJvdG9idWYvc291cmNlX2NvbnRleHQucHJvdG8aHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8aH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8aGmdvb2dsZS9wcm90b2J1Zi90eXBlLnByb3RvGh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8itAkKElRlc3RXZWxsS25vd25UeXBlcxIxCglhbnlfZmllbGQYASABKAsyFC5nb29nbGUucHJvdG9idWYuQW55UghhbnlGaWVsZBIxCglhcGlfZmllbGQYAiABKAsyFC5nb29nbGUucHJvdG9idWYuQXBpUghhcGlGaWVsZBJACg5kdXJhdGlvbl9maWVsZBgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblINZHVyYXRpb25GaWVsZBI3CgtlbXB0eV9maWVsZBgEIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eVIKZW1wdHlGaWVsZBJEChBmaWVsZF9tYXNrX2ZpZWxkGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza1IOZmllbGRNYXNrRmllbGQSUAoUc291cmNlX2NvbnRleHRfZmllbGQYBiABKAsyHi5nb29nbGUucHJvdG9idWYuU291cmNlQ29udGV4dFISc291cmNlQ29udGV4dEZpZWxkEjoKDHN0cnVjdF9maWVsZBgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSC3N0cnVjdEZpZWxkEkMKD3RpbWVzdGFtcF9maWVsZBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSDnRpbWVzdGFtcEZpZWxkEjQKCnR5cGVfZmllbGQYCSABKAsyFS5nb29nbGUucHJvdG9idWYuVHlwZVIJdHlwZUZpZWxkEj8KDGRvdWJsZV9maWVsZBgKIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVILZG91YmxlRmllbGQSPAoLZmxvYXRfZmllbGQYCyABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZVIKZmxvYXRGaWVsZBI8CgtpbnQ2NF9maWVsZBgMIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQ2NFZhbHVlUgppbnQ2NEZpZWxkEj8KDHVpbnQ2NF9maWVsZBgNIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVILdWludDY0RmllbGQSPAoLaW50MzJfZmllbGQYDiABKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIKaW50MzJGaWVsZBI/Cgx1aW50MzJfZmllbGQYDyABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSC3VpbnQzMkZpZWxkEjkKCmJvb2xfZmllbGQYECABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUglib29sRmllbGQSPwoMc3RyaW5nX2ZpZWxkGBEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUgtzdHJpbmdGaWVsZBI8CgtieXRlc19maWVsZBgSIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlUgpieXRlc0ZpZWxkEjcKC3ZhbHVlX2ZpZWxkGBMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUgp2YWx1ZUZpZWxkIv8IChZSZXBlYXRlZFdlbGxLbm93blR5cGVzEjEKCWFueV9maWVsZBgBIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSCGFueUZpZWxkEjEKCWFwaV9maWVsZBgCIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BcGlSCGFwaUZpZWxkEkAKDmR1cmF0aW9uX2ZpZWxkGAMgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUg1kdXJhdGlvbkZpZWxkEjcKC2VtcHR5X2ZpZWxkGAQgAygLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5UgplbXB0eUZpZWxkEkQKEGZpZWxkX21hc2tfZmllbGQYBSADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUg5maWVsZE1hc2tGaWVsZBJQChRzb3VyY2VfY29udGV4dF9maWVsZBgGIAMoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0UhJzb3VyY2VDb250ZXh0RmllbGQSOgoMc3RydWN0X2ZpZWxkGAcgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFILc3RydWN0RmllbGQSQwoPdGltZXN0YW1wX2ZpZWxkGAggAygLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIOdGltZXN0YW1wRmllbGQSNAoKdHlwZV9maWVsZBgJIAMoCzIVLmdvb2dsZS5wcm90b2J1Zi5UeXBlUgl0eXBlRmllbGQSPwoMZG91YmxlX2ZpZWxkGAogAygLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUgtkb3VibGVGaWVsZBI8CgtmbG9hdF9maWVsZBgLIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5GbG9hdFZhbHVlUgpmbG9hdEZpZWxkEjwKC2ludDY0X2ZpZWxkGAwgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSCmludDY0RmllbGQSPwoMdWludDY0X2ZpZWxkGA0gAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlUgt1aW50NjRGaWVsZBI8CgtpbnQzMl9maWVsZBgOIAMoCzIbLmdvb2dsZS5wcm90b2J1Zi5JbnQzMlZhbHVlUgppbnQzMkZpZWxkEj8KDHVpbnQzMl9maWVsZBgPIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVILdWludDMyRmllbGQSOQoKYm9vbF9maWVsZBgQIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSCWJvb2xGaWVsZBI/CgxzdHJpbmdfZmllbGQYESADKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWVSC3N0cmluZ0ZpZWxkEjwKC2J5dGVzX2ZpZWxkGBIgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSCmJ5dGVzRmllbGQirwkKE09uZW9mV2VsbEtub3duVHlwZXMSMwoJYW55X2ZpZWxkGAEgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueUgAUghhbnlGaWVsZBIzCglhcGlfZmllbGQYAiABKAsyFC5nb29nbGUucHJvdG9idWYuQXBpSABSCGFwaUZpZWxkEkIKDmR1cmF0aW9uX2ZpZWxkGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uSABSDWR1cmF0aW9uRmllbGQSOQoLZW1wdHlfZmllbGQYBCABKAsyFi5nb29nbGUucHJvdG9idWYuRW1wdHlIAFIKZW1wdHlGaWVsZBJGChBmaWVsZF9tYXNrX2ZpZWxkGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0gAUg5maWVsZE1hc2tGaWVsZBJSChRzb3VyY2VfY29udGV4dF9maWVsZBgGIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0SABSEnNvdXJjZUNvbnRleHRGaWVsZBI8CgxzdHJ1Y3RfZmllbGQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SABSC3N0cnVjdEZpZWxkEkUKD3RpbWVzdGFtcF9maWVsZBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAFIOdGltZXN0YW1wRmllbGQSNgoKdHlwZV9maWVsZBgJIAEoCzIVLmdvb2dsZS5wcm90b2J1Zi5UeXBlSABSCXR5cGVGaWVsZBJBCgxkb3VibGVfZmllbGQYCiABKAsyHC5nb29nbGUucHJvdG9idWYuRG91YmxlVmFsdWVIAFILZG91YmxlRmllbGQSPgoLZmxvYXRfZmllbGQYCyABKAsyGy5nb29nbGUucHJvdG9idWYuRmxvYXRWYWx1ZUgAUgpmbG9hdEZpZWxkEj4KC2ludDY0X2ZpZWxkGAwgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVIAFIKaW50NjRGaWVsZBJBCgx1aW50NjRfZmllbGQYDSABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVIAFILdWludDY0RmllbGQSPgoLaW50MzJfZmllbGQYDiABKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZUgAUgppbnQzMkZpZWxkEkEKDHVpbnQzMl9maWVsZBgPIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZUgAUgt1aW50MzJGaWVsZBI7Cgpib29sX2ZpZWxkGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZUgAUglib29sRmllbGQSQQoMc3RyaW5nX2ZpZWxkGBEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlSABSC3N0cmluZ0ZpZWxkEj4KC2J5dGVzX2ZpZWxkGBIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVIAFIKYnl0ZXNGaWVsZEINCgtvbmVvZl9maWVsZCK0GQoRTWFwV2VsbEtub3duVHlwZXMSTQoJYW55X2ZpZWxkGAEgAygLMjAucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkFueUZpZWxkRW50cnlSCGFueUZpZWxkEk0KCWFwaV9maWVsZBgCIAMoCzIwLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5BcGlGaWVsZEVudHJ5UghhcGlGaWVsZBJcCg5kdXJhdGlvbl9maWVsZBgDIAMoCzI1LnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5EdXJhdGlvbkZpZWxkRW50cnlSDWR1cmF0aW9uRmllbGQSUwoLZW1wdHlfZmllbGQYBCADKAsyMi5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRW1wdHlGaWVsZEVudHJ5UgplbXB0eUZpZWxkEmAKEGZpZWxkX21hc2tfZmllbGQYBSADKAsyNi5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRmllbGRNYXNrRmllbGRFbnRyeVIOZmllbGRNYXNrRmllbGQSbAoUc291cmNlX2NvbnRleHRfZmllbGQYBiADKAsyOi5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuU291cmNlQ29udGV4dEZpZWxkRW50cnlSEnNvdXJjZUNvbnRleHRGaWVsZBJWCgxzdHJ1Y3RfZmllbGQYByADKAsyMy5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuU3RydWN0RmllbGRFbnRyeVILc3RydWN0RmllbGQSXwoPdGltZXN0YW1wX2ZpZWxkGAggAygLMjYucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlRpbWVzdGFtcEZpZWxkRW50cnlSDnRpbWVzdGFtcEZpZWxkElAKCnR5cGVfZmllbGQYCSADKAsyMS5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuVHlwZUZpZWxkRW50cnlSCXR5cGVGaWVsZBJWCgxkb3VibGVfZmllbGQYCiADKAsyMy5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRG91YmxlRmllbGRFbnRyeVILZG91YmxlRmllbGQSUwoLZmxvYXRfZmllbGQYCyADKAsyMi5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuRmxvYXRGaWVsZEVudHJ5UgpmbG9hdEZpZWxkElMKC2ludDY0X2ZpZWxkGAwgAygLMjIucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkludDY0RmllbGRFbnRyeVIKaW50NjRGaWVsZBJWCgx1aW50NjRfZmllbGQYDSADKAsyMy5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuVWludDY0RmllbGRFbnRyeVILdWludDY0RmllbGQSUwoLaW50MzJfZmllbGQYDiADKAsyMi5wcm90bzJfdW5pdHRlc3QuTWFwV2VsbEtub3duVHlwZXMuSW50MzJGaWVsZEVudHJ5UgppbnQzMkZpZWxkElYKDHVpbnQzMl9maWVsZBgPIAMoCzIzLnByb3RvMl91bml0dGVzdC5NYXBXZWxsS25vd25UeXBlcy5VaW50MzJGaWVsZEVudHJ5Ugt1aW50MzJGaWVsZBJQCgpib29sX2ZpZWxkGBAgAygLMjEucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkJvb2xGaWVsZEVudHJ5Uglib29sRmllbGQSVgoMc3RyaW5nX2ZpZWxkGBEgAygLMjMucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLlN0cmluZ0ZpZWxkRW50cnlSC3N0cmluZ0ZpZWxkElMKC2J5dGVzX2ZpZWxkGBIgAygLMjIucHJvdG8yX3VuaXR0ZXN0Lk1hcFdlbGxLbm93blR5cGVzLkJ5dGVzRmllbGRFbnRyeVIKYnl0ZXNGaWVsZBpRCg1BbnlGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EioKBXZhbHVlGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVIFdmFsdWU6AjgBGlEKDUFwaUZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSKgoFdmFsdWUYAiABKAsyFC5nb29nbGUucHJvdG9idWYuQXBpUgV2YWx1ZToCOAEaWwoSRHVyYXRpb25GaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5Ei8KBXZhbHVlGAIgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uUgV2YWx1ZToCOAEaVQoPRW1wdHlGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EiwKBXZhbHVlGAIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5UgV2YWx1ZToCOAEaXQoTRmllbGRNYXNrRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIwCgV2YWx1ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSBXZhbHVlOgI4ARplChdTb3VyY2VDb250ZXh0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRI0CgV2YWx1ZRgCIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5Tb3VyY2VDb250ZXh0UgV2YWx1ZToCOAEaVwoQU3RydWN0RmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRItCgV2YWx1ZRgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RSBXZhbHVlOgI4ARpdChNUaW1lc3RhbXBGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjAKBXZhbHVlGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIFdmFsdWU6AjgBGlMKDlR5cGVGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EisKBXZhbHVlGAIgASgLMhUuZ29vZ2xlLnByb3RvYnVmLlR5cGVSBXZhbHVlOgI4ARpcChBEb3VibGVGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjIKBXZhbHVlGAIgASgLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlUgV2YWx1ZToCOAEaWgoPRmxvYXRGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSBXZhbHVlOgI4ARpaCg9JbnQ2NEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZVIFdmFsdWU6AjgBGlwKEFVpbnQ2NEZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMgoFdmFsdWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWVSBXZhbHVlOgI4ARpaCg9JbnQzMkZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMQoFdmFsdWUYAiABKAsyGy5nb29nbGUucHJvdG9idWYuSW50MzJWYWx1ZVIFdmFsdWU6AjgBGlwKEFVpbnQzMkZpZWxkRW50cnkSEAoDa2V5GAEgASgFUgNrZXkSMgoFdmFsdWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWVSBXZhbHVlOgI4ARpYCg5Cb29sRmllbGRFbnRyeRIQCgNrZXkYASABKAVSA2tleRIwCgV2YWx1ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFsdWVSBXZhbHVlOgI4ARpcChBTdHJpbmdGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjIKBXZhbHVlGAIgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlUgV2YWx1ZToCOAEaWgoPQnl0ZXNGaWVsZEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EjEKBXZhbHVlGAIgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSBXZhbHVlOgI4AUI5Chhjb20uZ29vZ2xlLnByb3RvYnVmLnRlc3RQAaoCGkdvb2dsZS5Q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cHJvdG9idWYvdGVzdF9tZXNzYWdlc19wcm90bzMucHJvdG8SHXByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zGhlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvGh5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8aIGdvb2dsZS9wcm90b2J1Zi9maWVsZF9tYXNrLnByb3RvGhxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvGh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8imVsKElRlc3RBbGxUeXBlc1Byb3RvMxIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxJ3ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USZwoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMi0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuRm9yZWlnbk1lc3NhZ2VSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USbgoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEl4KFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjIqLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtUhNvcHRpb25hbEZvcmVpZ25FbnVtEnEKFW9wdGlvbmFsX2FsaWFzZWRfZW51bRgXIAEoDjI9LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5BbGlhc2VkRW51bVITb3B0aW9uYWxBbGlhc2VkRW51bRI2ChVvcHRpb25hbF9zdHJpbmdfcGllY2UYGCABKAlCAggCUhNvcHRpb25hbFN0cmluZ1BpZWNlEicKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBUgxvcHRpb25hbENvcmQSXgoRcmVjdXJzaXZlX21lc3NhZ2UYGyABKAsyMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzNSEHJlY3Vyc2l2ZU1lc3NhZ2USJQoOcmVwZWF0ZWRfaW50MzIYHyADKAVSDXJlcGVhdGVkSW50MzISJQoOcmVwZWF0ZWRfaW50NjQYICADKANSDXJlcGVhdGVkSW50NjQSJwoPcmVwZWF0ZWRfdWludDMyGCEgAygNUg5yZXBlYXRlZFVpbnQzMhInCg9yZXBlYXRlZF91aW50NjQYIiADKARSDnJlcGVhdGVkVWludDY0EicKD3JlcGVhdGVkX3NpbnQzMhgjIAMoEVIOcmVwZWF0ZWRTaW50MzISJwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSUg5yZXBlYXRlZFNpbnQ2NBIpChByZXBlYXRlZF9maXhlZDMyGCUgAygHUg9yZXBlYXRlZEZpeGVkMzISKQoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBlIPcmVwZWF0ZWRGaXhlZDY0EisKEXJlcGVhdGVkX3NmaXhlZDMyGCcgAygPUhByZXBlYXRlZFNmaXhlZDMyEisKEXJlcGVhdGVkX3NmaXhlZDY0GCggAygQUhByZXBlYXRlZFNmaXhlZDY0EiUKDnJlcGVhdGVkX2Zsb2F0GCkgAygCUg1yZXBlYXRlZEZsb2F0EicKD3JlcGVhdGVkX2RvdWJsZRgqIAMoAVIOcmVwZWF0ZWREb3VibGUSIwoNcmVwZWF0ZWRfYm9vbBgrIAMoCFIMcmVwZWF0ZWRCb29sEicKD3JlcGVhdGVkX3N0cmluZxgsIAMoCVIOcmVwZWF0ZWRTdHJpbmcSJQoOcmVwZWF0ZWRfYnl0ZXMYLSADKAxSDXJlcGVhdGVkQnl0ZXMSdwoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIVcmVwZWF0ZWROZXN0ZWRNZXNzYWdlEmcKGHJlcGVhdGVkX2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzItLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlUhZyZXBlYXRlZEZvcmVpZ25NZXNzYWdlEm4KFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1SEnJlcGVhdGVkTmVzdGVkRW51bRJeChVyZXBlYXRlZF9mb3JlaWduX2VudW0YNCADKA4yKi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduRW51bVITcmVwZWF0ZWRGb3JlaWduRW51bRI2ChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiADKAlCAggCUhNyZXBlYXRlZFN0cmluZ1BpZWNlEicKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBUgxyZXBlYXRlZENvcmQSJQoMcGFja2VkX2ludDMyGEsgAygFQgIQAVILcGFja2VkSW50MzISJQoMcGFja2VkX2ludDY0GEwgAygDQgIQAVILcGFja2VkSW50NjQSJwoNcGFja2VkX3VpbnQzMhhNIAMoDUICEAFSDHBhY2tlZFVpbnQzMhInCg1wYWNrZWRfdWludDY0GE4gAygEQgIQAVIMcGFja2VkVWludDY0EicKDXBhY2tlZF9zaW50MzIYTyADKBFCAhABUgxwYWNrZWRTaW50MzISJwoNcGFja2VkX3NpbnQ2NBhQIAMoEkICEAFSDHBhY2tlZFNpbnQ2NBIpCg5wYWNrZWRfZml4ZWQzMhhRIAMoB0ICEAFSDXBhY2tlZEZpeGVkMzISKQoOcGFja2VkX2ZpeGVkNjQYUiADKAZCAhABUg1wYWNrZWRGaXhlZDY0EisKD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0ICEAFSDnBhY2tlZFNmaXhlZDMyEisKD3BhY2tlZF9zZml4ZWQ2NBhUIAMoEEICEAFSDnBhY2tlZFNmaXhlZDY0EiUKDHBhY2tlZF9mbG9hdBhVIAMoAkICEAFSC3BhY2tlZEZsb2F0EicKDXBhY2tlZF9kb3VibGUYViADKAFCAhABUgxwYWNrZWREb3VibGUSIwoLcGFja2VkX2Jvb2wYVyADKAhCAhABUgpwYWNrZWRCb29sEm4KEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtQgIQAVIQcGFja2VkTmVzdGVkRW51bRIpCg51bnBhY2tlZF9pbnQzMhhZIAMoBUICEABSDXVucGFja2VkSW50MzISKQoOdW5wYWNrZWRfaW50NjQYWiADKANCAhAAUg11bnBhY2tlZEludDY0EisKD3VucGFja2VkX3VpbnQzMhhbIAMoDUICEABSDnVucGFja2VkVWludDMyEisKD3VucGFja2VkX3VpbnQ2NBhcIAMoBEICEABSDnVucGFja2VkVWludDY0EisKD3VucGFja2VkX3NpbnQzMhhdIAMoEUICEABSDnVucGFja2VkU2ludDMyEisKD3VucGFja2VkX3NpbnQ2NBheIAMoEkICEABSDnVucGFja2VkU2ludDY0Ei0KEHVucGFja2VkX2ZpeGVkMzIYXyADKAdCAhAAUg91bnBhY2tlZEZpeGVkMzISLQoQdW5wYWNrZWRfZml4ZWQ2NBhgIAMoBkICEABSD3VucGFja2VkRml4ZWQ2NBIvChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMoD0ICEABSEHVucGFja2VkU2ZpeGVkMzISLwoRdW5wYWNrZWRfc2ZpeGVkNjQYYiADKBBCAhAAUhB1bnBhY2tlZFNmaXhlZDY0EikKDnVucGFja2VkX2Zsb2F0GGMgAygCQgIQAFINdW5wYWNrZWRGbG9hdBIrCg91bnBhY2tlZF9kb3VibGUYZCADKAFCAhAAUg51bnBhY2tlZERvdWJsZRInCg11bnBhY2tlZF9ib29sGGUgAygIQgIQAFIMdW5wYWNrZWRCb29sEnIKFHVucGFja2VkX25lc3RlZF9lbnVtGGYgAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1CAhAAUhJ1bnBhY2tlZE5lc3RlZEVudW0SbAoPbWFwX2ludDMyX2ludDMyGDggAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMySW50MzJFbnRyeVINbWFwSW50MzJJbnQzMhJsCg9tYXBfaW50NjRfaW50NjQYOSADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50NjRJbnQ2NEVudHJ5Ug1tYXBJbnQ2NEludDY0EnIKEW1hcF91aW50MzJfdWludDMyGDogAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFVpbnQzMlVpbnQzMkVudHJ5Ug9tYXBVaW50MzJVaW50MzIScgoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwVWludDY0VWludDY0RW50cnlSD21hcFVpbnQ2NFVpbnQ2NBJyChFtYXBfc2ludDMyX3NpbnQzMhg8IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTaW50MzJTaW50MzJFbnRyeVIPbWFwU2ludDMyU2ludDMyEnIKEW1hcF9zaW50NjRfc2ludDY0GD0gAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5Ug9tYXBTaW50NjRTaW50NjQSeAoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJILnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5UhFtYXBGaXhlZDMyRml4ZWQzMhJ4ChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEZpeGVkNjRGaXhlZDY0RW50cnlSEW1hcEZpeGVkNjRGaXhlZDY0En4KFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJKLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTZml4ZWQzMlNmaXhlZDMyRW50cnlSE21hcFNmaXhlZDMyU2ZpeGVkMzISfgoVbWFwX3NmaXhlZDY0X3NmaXhlZDY0GEEgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeVITbWFwU2ZpeGVkNjRTZml4ZWQ2NBJsCg9tYXBfaW50MzJfZmxvYXQYQiADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJGbG9hdEVudHJ5Ug1tYXBJbnQzMkZsb2F0Em8KEG1hcF9pbnQzMl9kb3VibGUYQyADKAsyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50MzJEb3VibGVFbnRyeVIObWFwSW50MzJEb3VibGUSZgoNbWFwX2Jvb2xfYm9vbBhEIAMoCzJCLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBCb29sQm9vbEVudHJ5UgttYXBCb29sQm9vbBJyChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdTdHJpbmdFbnRyeVIPbWFwU3RyaW5nU3RyaW5nEm8KEG1hcF9zdHJpbmdfYnl0ZXMYRiADKAsyRS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nQnl0ZXNFbnRyeVIObWFwU3RyaW5nQnl0ZXMSiAEKGW1hcF9zdHJpbmdfbmVzdGVkX21lc3NhZ2UYRyADKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nTmVzdGVkTWVzc2FnZUVudHJ5UhZtYXBTdHJpbmdOZXN0ZWRNZXNzYWdlEosBChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJOLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduTWVzc2FnZUVudHJ5UhdtYXBTdHJpbmdGb3JlaWduTWVzc2FnZRJ/ChZtYXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ05lc3RlZEVudW1FbnRyeVITbWFwU3RyaW5nTmVzdGVkRW51bRKCAQoXbWFwX3N0cmluZ19mb3JlaWduX2VudW0YSiADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeVIUbWFwU3RyaW5nRm9yZWlnbkVudW0SIwoMb25lb2ZfdWludDMyGG8gASgNSABSC29uZW9mVWludDMyEnMKFG9uZW9mX25lc3RlZF9tZXNzYWdlGHAgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VIAFISb25lb2ZOZXN0ZWRNZXNzYWdlEiMKDG9uZW9mX3N0cmluZxhxIAEoCUgAUgtvbmVvZlN0cmluZxIhCgtvbmVvZl9ieXRlcxhyIAEoDEgAUgpvbmVvZkJ5dGVzEh8KCm9uZW9mX2Jvb2wYcyABKAhIAFIJb25lb2ZCb29sEiMKDG9uZW9mX3VpbnQ2NBh0IAEoBEgAUgtvbmVvZlVpbnQ2NBIhCgtvbmVvZl9mbG9hdBh1IAEoAkgAUgpvbmVvZkZsb2F0EiMKDG9uZW9mX2RvdWJsZRh2IAEoAUgAUgtvbmVvZkRvdWJsZRJdCgpvbmVvZl9lbnVtGHcgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW1IAFIJb25lb2ZFbnVtEkYKEG9uZW9mX251bGxfdmFsdWUYeCABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSABSDm9uZW9mTnVsbFZhbHVlEk8KFW9wdGlvbmFsX2Jvb2xfd3JhcHBlchjJASABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUhNvcHRpb25hbEJvb2xXcmFwcGVyElIKFm9wdGlvbmFsX2ludDMyX3dyYXBwZXIYygEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSFG9wdGlvbmFsSW50MzJXcmFwcGVyElIKFm9wdGlvbmFsX2ludDY0X3dyYXBwZXIYywEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSFG9wdGlvbmFsSW50NjRXcmFwcGVyElUKF29wdGlvbmFsX3VpbnQzMl93cmFwcGVyGMwBIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIVb3B0aW9uYWxVaW50MzJXcmFwcGVyElUKF29wdGlvbmFsX3VpbnQ2NF93cmFwcGVyGM0BIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIVb3B0aW9uYWxVaW50NjRXcmFwcGVyElIKFm9wdGlvbmFsX2Zsb2F0X3dyYXBwZXIYzgEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSFG9wdGlvbmFsRmxvYXRXcmFwcGVyElUKF29wdGlvbmFsX2RvdWJsZV93cmFwcGVyGM8BIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIVb3B0aW9uYWxEb3VibGVXcmFwcGVyElUKF29wdGlvbmFsX3N0cmluZ193cmFwcGVyGNABIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIVb3B0aW9uYWxTdHJpbmdXcmFwcGVyElIKFm9wdGlvbmFsX2J5dGVzX3dyYXBwZXIY0QEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSFG9wdGlvbmFsQnl0ZXNXcmFwcGVyEk8KFXJlcGVhdGVkX2Jvb2xfd3JhcHBlchjTASADKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlUhNyZXBlYXRlZEJvb2xXcmFwcGVyElIKFnJlcGVhdGVkX2ludDMyX3dyYXBwZXIY1AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWVSFHJlcGVhdGVkSW50MzJXcmFwcGVyElIKFnJlcGVhdGVkX2ludDY0X3dyYXBwZXIY1QEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWVSFHJlcGVhdGVkSW50NjRXcmFwcGVyElUKF3JlcGVhdGVkX3VpbnQzMl93cmFwcGVyGNYBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZVIVcmVwZWF0ZWRVaW50MzJXcmFwcGVyElUKF3JlcGVhdGVkX3VpbnQ2NF93cmFwcGVyGNcBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50NjRWYWx1ZVIVcmVwZWF0ZWRVaW50NjRXcmFwcGVyElIKFnJlcGVhdGVkX2Zsb2F0X3dyYXBwZXIY2AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWVSFHJlcGVhdGVkRmxvYXRXcmFwcGVyElUKF3JlcGVhdGVkX2RvdWJsZV93cmFwcGVyGNkBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5Eb3VibGVWYWx1ZVIVcmVwZWF0ZWREb3VibGVXcmFwcGVyElUKF3JlcGVhdGVkX3N0cmluZ193cmFwcGVyGNoBIAMoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZVIVcmVwZWF0ZWRTdHJpbmdXcmFwcGVyElIKFnJlcGVhdGVkX2J5dGVzX3dyYXBwZXIY2wEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkJ5dGVzVmFsdWVSFHJlcGVhdGVkQnl0ZXNXcmFwcGVyEkcKEW9wdGlvbmFsX2R1cmF0aW9uGK0CIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIQb3B0aW9uYWxEdXJhdGlvbhJKChJvcHRpb25hbF90aW1lc3RhbXAYrgIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIRb3B0aW9uYWxUaW1lc3RhbXASSwoTb3B0aW9uYWxfZmllbGRfbWFzaxivAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrUhFvcHRpb25hbEZpZWxkTWFzaxJBCg9vcHRpb25hbF9zdHJ1Y3QYsAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdFIOb3B0aW9uYWxTdHJ1Y3QSOAoMb3B0aW9uYWxfYW55GLECIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlSC29wdGlvbmFsQW55Ej4KDm9wdGlvbmFsX3ZhbHVlGLICIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZVINb3B0aW9uYWxWYWx1ZRJLChNvcHRpb25hbF9udWxsX3ZhbHVlGLMCIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVSEW9wdGlvbmFsTnVsbFZhbHVlEkcKEXJlcGVhdGVkX2R1cmF0aW9uGLcCIAMoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvblIQcmVwZWF0ZWREdXJhdGlvbhJKChJyZXBlYXRlZF90aW1lc3RhbXAYuAIgAygLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIRcmVwZWF0ZWRUaW1lc3RhbXASSgoScmVwZWF0ZWRfZmllbGRtYXNrGLkCIAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tSEXJlcGVhdGVkRmllbGRtYXNrEkEKD3JlcGVhdGVkX3N0cnVjdBjEAiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ug5yZXBlYXRlZFN0cnVjdBI4CgxyZXBlYXRlZF9hbnkYuwIgAygLMhQuZ29vZ2xlLnByb3RvYnVmLkFueVILcmVwZWF0ZWRBbnkSPgoOcmVwZWF0ZWRfdmFsdWUYvAIgAygLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlUg1yZXBlYXRlZFZhbHVlEksKE3JlcGVhdGVkX2xpc3RfdmFsdWUYvQIgAygLMhouZ29vZ2xlLnByb3RvYnVmLkxpc3RWYWx1ZVIRcmVwZWF0ZWRMaXN0VmFsdWUSHwoKZmllbGRuYW1lMRiRAyABKAVSCmZpZWxkbmFtZTESIAoLZmllbGRfbmFtZTIYkgMgASgFUgpmaWVsZE5hbWUyEiEKDF9maWVsZF9uYW1lMxiTAyABKAVSCkZpZWxkTmFtZTMSIgoNZmllbGRfX25hbWU0XxiUAyABKAVSCmZpZWxkTmFtZTQSIQoLZmllbGQwbmFtZTUYlQMgASgFUgtmaWVsZDBuYW1lNRIjCg1maWVsZF8wX25hbWU2GJYDIAEoBVILZmllbGQwTmFtZTYSHwoKZmllbGROYW1lNxiXAyABKAVSCmZpZWxkTmFtZTcSHwoKRmllbGROYW1lOBiYAyABKAVSCkZpZWxkTmFtZTgSIAoLZmllbGRfTmFtZTkYmQMgASgFUgpmaWVsZE5hbWU5EiIKDEZpZWxkX05hbWUxMBiaAyABKAVSC0ZpZWxkTmFtZTEwEiIKDEZJRUxEX05BTUUxMRibAyABKAVSC0ZJRUxETkFNRTExEiIKDEZJRUxEX25hbWUxMhicAyABKAVSC0ZJRUxETmFtZTEyEiQKDl9fZmllbGRfbmFtZTEzGJ0DIAEoBVILRmllbGROYW1lMTMSJAoOX19GaWVsZF9uYW1lMTQYngMgASgFUgtGaWVsZE5hbWUxNBIjCg1maWVsZF9fbmFtZTE1GJ8DIAEoBVILZmllbGROYW1lMTUSIwoNZmllbGRfX05hbWUxNhigAyABKAVSC2ZpZWxkTmFtZTE2EiQKDmZpZWxkX25hbWUxN19fGKEDIAEoBVILZmllbGROYW1lMTcSJAoORmllbGRfbmFtZTE4X18YogMgASgFUgtGaWVsZE5hbWUxOBpyCg1OZXN0ZWRNZXNzYWdlEgwKAWEYASABKAVSAWESUwoLY29yZWN1cnNpdmUYAiABKAsyMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzNSC2NvcmVjdXJzaXZlGkAKEk1hcEludDMySW50MzJFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoBVIFdmFsdWU6AjgBGkAKEk1hcEludDY0SW50NjRFbnRyeRIQCgNrZXkYASABKANSA2tleRIUCgV2YWx1ZRgCIAEoA1IFdmFsdWU6AjgBGkIKFE1hcFVpbnQzMlVpbnQzMkVudHJ5EhAKA2tleRgBIAEoDVIDa2V5EhQKBXZhbHVlGAIgASgNUgV2YWx1ZToCOAEaQgoUTWFwVWludDY0VWludDY0RW50cnkSEAoDa2V5GAEgASgEUgNrZXkSFAoFdmFsdWUYAiABKARSBXZhbHVlOgI4ARpCChRNYXBTaW50MzJTaW50MzJFbnRyeRIQCgNrZXkYASABKBFSA2tleRIUCgV2YWx1ZRgCIAEoEVIFdmFsdWU6AjgBGkIKFE1hcFNpbnQ2NFNpbnQ2NEVudHJ5EhAKA2tleRgBIAEoElIDa2V5EhQKBXZhbHVlGAIgASgSUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRIQCgNrZXkYASABKAdSA2tleRIUCgV2YWx1ZRgCIAEoB1IFdmFsdWU6AjgBGkQKFk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSEAoDa2V5GAEgASgGUgNrZXkSFAoFdmFsdWUYAiABKAZSBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQzMlNmaXhlZDMyRW50cnkSEAoDa2V5GAEgASgPUgNrZXkSFAoFdmFsdWUYAiABKA9SBXZhbHVlOgI4ARpGChhNYXBTZml4ZWQ2NFNmaXhlZDY0RW50cnkSEAoDa2V5GAEgASgQUgNrZXkSFAoFdmFsdWUYAiABKBBSBXZhbHVlOgI4ARpAChJNYXBJbnQzMkZsb2F0RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAJSBXZhbHVlOgI4ARpBChNNYXBJbnQzMkRvdWJsZUVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgBUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGooBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSVQoFdmFsdWUYAiABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGnkKHE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSQwoFdmFsdWUYAiABKAsyLS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduTWVzc2FnZVIFdmFsdWU6AjgBGoQBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSUgoFdmFsdWUYAiABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bVIFdmFsdWU6AjgBGnMKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSQAoFdmFsdWUYAiABKA4yKi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduRW51bVIFdmFsdWU6AjgBIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEiWQoLQWxpYXNlZEVudW0SDQoJQUxJQVNfRk9PEAASDQoJQUxJQVNfQkFSEAESDQoJQUxJQVNfQkFaEAISBwoDTU9PEAISBwoDbW9vEAISBwoDYkF6EAIaAhABQg0KC29uZW9mX2ZpZWxkSgYI9QMQ/wMiHgoORm9yZWlnbk1lc3NhZ2USDAoBYxgBIAEoBVIBYyIWChROdWxsSHlwb3RoZXNpc1Byb3RvMyIvCg5FbnVtT25seVByb3RvMyIdCgRCb29sEgoKBmtGYWxzZRAAEgkKBWtUcnVlEAEqQAoLRm9yZWlnbkVudW0SDwoLRk9SRUlHTl9GT08QABIPCgtGT1JFSUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAJCOAooY29tLmdvb2dsZS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvM0gB+AEBogIGUHJvdG8zSutmCgcSBQ4AiAIBCogDCgEMEgMOABIy/QIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCiBUZXN0IHNjaGVtYSBmb3IgcHJvdG8zIG1lc3NhZ2VzLiAgVGhpcyB0ZXN0IHNjaGVtYSBpcyB1c2VkIGJ5OgoKIC0gYmVuY2htYXJrcwogLSBmdXp6IHRlc3RzCiAtIGNvbmZvcm1hbmNlIHRlc3RzCgoKCAoBAhIDEAAmCggKAQgSAxIAQQoJCgIIARIDEgBBCggKAQgSAxMAJAoJCgIIJBIDEwAkCggKAQgSAxYAHApECgIICRIDFgAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoKCQoCAwASAxgAIwoJCgIDARIDGQAoCgkKAgMCEgMaACoKCQoCAwMSAxsAJgoJCgIDBBIDHAApCgkKAgMFEgMdACgKCAoBCBIDHwAfCgkKAggfEgMfAB8K2wIKAgQAEgUoAPUBARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVwZWF0ZWQKIGZvcm1zLgoKIEFsc28sIGNydWNpYWxseSwgYWxsIG1lc3NhZ2VzIGFuZCBlbnVtcyBpbiB0aGlzIGZpbGUgYXJlIGV2ZW50dWFsbHkKIHN1Ym1lc3NhZ2VzIG9mIHRoaXMgbWVzc2FnZS4gIFNvIGZvciBleGFtcGxlLCBhIGZ1enogdGVzdCBvZiBUZXN0QWxsVHlwZXMKIGNvdWxkIHRyaWdnZXIgYnVncyB0aGF0IG9jY3VyIGluIGFueSBtZXNzYWdlIHR5cGUgaW4gdGhpcyBmaWxlLiAgV2UgdmVyaWZ5CiB0aGlzIHN0YXlzIHRydWUgaW4gYSB1bml0IHRlc3QuCgoKCgMEAAESAygIGgoMCgQEAAMAEgQpAiwDCgwKBQQAAwABEgMpChcKDQoGBAADAAIAEgMqBBAKDgoHBAADAAIABRIDKgQJCg4KBwQAAwACAAESAyoKCwoOCgcEAAMAAgADEgMqDg8KDQoGBAADAAIBEgMrBCcKDgoHBAADAAIBBhIDKwQWCg4KBwQAAwACAQESAysXIgoOCgcEAAMAAgEDEgMrJSYKDAoEBAAEABIELgIzAwoMCgUEAAQAARIDLgcRCg0KBgQABAACABIDLwQMCg4KBwQABAACAAESAy8EBwoOCgcEAAQAAgACEgMvCgsKDQoGBAAEAAIBEgMwBAwKDgoHBAAEAAIBARIDMAQHCg4KBwQABAACAQISAzAKCwoNCgYEAAQAAgISAzEEDAoOCgcEAAQAAgIBEgMxBAcKDgoHBAAEAAICAhIDMQoLCigKBgQABAACAxIDMgQNIhkgSW50ZW50aW9uYWxseSBuZWdhdGl2ZS4KCg4KBwQABAACAwESAzIEBwoOCgcEAAQAAgMCEgMyCgwKDAoEBAAEARIENQI+AwoMCgUEAAQBARIDNQcSCgwKBQQABAEDEgM2BB4KDQoGBAAEAQMCEgM2BB4KDQoGBAAEAQIAEgM4BBIKDgoHBAAEAQIAARIDOAQNCg4KBwQABAECAAISAzgQEQoNCgYEAAQBAgESAzkEEgoOCgcEAAQBAgEBEgM5BA0KDgoHBAAEAQIBAhIDORARCg0KBgQABAECAhIDOgQSCg4KBwQABAECAgESAzoEDQoOCgcEAAQBAgICEgM6EBEKDQoGBAAEAQIDEgM7BAwKDgoHBAAEAQIDARIDOwQHCg4KBwQABAECAwISAzsKCwoNCgYEAAQBAgQSAzwEDAoOCgcEAAQBAgQBEgM8BAcKDgoHBAAEAQIEAhIDPAoLCg0KBgQABAECBRIDPQQMCg4KBwQABAECBQESAz0EBwoOCgcEAAQBAgUCEgM9CgsKFwoEBAACABIDQQIbGgogU2luZ3VsYXIKCgwKBQQAAgAFEgNBAgcKDAoFBAACAAESA0EIFgoMCgUEAAIAAxIDQRkaCgsKBAQAAgESA0ICGwoMCgUEAAIBBRIDQgIHCgwKBQQAAgEBEgNCCBYKDAoFBAACAQMSA0IZGgoLCgQEAAICEgNDAh0KDAoFBAACAgUSA0MCCAoMCgUEAAICARIDQwkYCgwKBQQAAgIDEgNDGxwKCwoEBAACAxIDRAIdCgwKBQQAAgMFEgNEAggKDAoFBAACAwESA0QJGAoMCgUEAAIDAxIDRBscCgsKBAQAAgQSA0UCHQoMCgUEAAIEBRIDRQIICgwKBQQAAgQBEgNFCRgKDAoFBAACBAMSA0UbHAoLCgQEAAIFEgNGAh0KDAoFBAACBQUSA0YCCAoMCgUEAAIFARIDRgkYCgwKBQQAAgUDEgNGGxwKCwoEBAACBhIDRwIfCgwKBQQAAgYFEgNHAgkKDAoFBAACBgESA0cKGgoMCgUEAAIGAxIDRx0eCgsKBAQAAgcSA0gCHwoMCgUEAAIHBRIDSAIJCgwKBQQAAgcBEgNIChoKDAoFBAACBwMSA0gdHgoLCgQEAAIIEgNJAiEKDAoFBAACCAUSA0kCCgoMCgUEAAIIARIDSQscCgwKBQQAAggDEgNJHyAKCwoEBAACCRIDSgIiCgwKBQQAAgkFEgNKAgoKDAoFBAACCQESA0oLHAoMCgUEAAIJAxIDSh8hCgsKBAQAAgoSA0sCHAoMCgUEAAIKBRIDSwIHCgwKBQQAAgoBEgNLCBYKDAoFBAACCgMSA0sZGwoLCgQEAAILEgNMAh4KDAoFBAACCwUSA0wCCAoMCgUEAAILARIDTAkYCgwKBQQAAgsDEgNMGx0KCwoEBAACDBIDTQIaCgwKBQQAAgwFEgNNAgYKDAoFBAACDAESA00HFAoMCgUEAAIMAxIDTRcZCgsKBAQAAg0SA04CHgoMCgUEAAINBRIDTgIICgwKBQQAAg0BEgNOCRgKDAoFBAACDQMSA04bHQoLCgQEAAIOEgNPAhwKDAoFBAACDgUSA08CBwoMCgUEAAIOARIDTwgWCgwKBQQAAg4DEgNPGRsKCwoEBAACDxIDUQItCgwKBQQAAg8GEgNRAg8KDAoFBAACDwESA1EQJwoMCgUEAAIPAxIDUSosCgsKBAQAAhASA1ICLwoMCgUEAAIQBhIDUgIQCgwKBQQAAhABEgNSESkKDAoFBAACEAMSA1IsLgoLCgQEAAIREgNUAicKDAoFBAACEQYSA1QCDAoMCgUEAAIRARIDVA0hCgwKBQQAAhEDEgNUJCYKCwoEBAACEhIDVQIpCgwKBQQAAhIGEgNVAg0KDAoFBAACEgESA1UOIwoMCgUEAAISAxIDVSYoCgsKBAQAAhMSA1YCKQoMCgUEAAITBhIDVgINCgwKBQQAAhMBEgNWDiMKDAoFBAACEwMSA1YmKAoLCgQEAAIUEgNYAjsKDAoFBAACFAUSA1gCCAoMCgUEAAIUARIDWAkeCgwKBQQAAhQDEgNYISMKDAoFBAACFAgSA1gkOgoNCgYEAAIUCAESA1glOQoLCgQEAAIVEgNZAisKDAoFBAACFQUSA1kCCAoMCgUEAAIVARIDWQkWCgwKBQQAAhUDEgNZGRsKDAoFBAACFQgSA1kcKgoNCgYEAAIVCAESA1kdKQoLCgQEAAIWEgNbAiwKDAoFBAACFgYSA1sCFAoMCgUEAAIWARIDWxUmCgwKBQQAAhYDEgNbKSsKFwoEBAACFxIDXgIlGgogUmVwZWF0ZWQKCgwKBQQAAhcEEgNeAgoKDAoFBAACFwUSA14LEAoMCgUEAAIXARIDXhEfCgwKBQQAAhcDEgNeIiQKCwoEBAACGBIDXwIlCgwKBQQAAhgEEgNfAgoKDAoFBAACGAUSA18LEAoMCgUEAAIYARIDXxEfCgwKBQQAAhgDEgNfIiQKCwoEBAACGRIDYAInCgwKBQQAAhkEEgNgAgoKDAoFBAACGQUSA2ALEQoMCgUEAAIZARIDYBIhCgwKBQQAAhkDEgNgJCYKCwoEBAACGhIDYQInCgwKBQQAAhoEEgNhAgoKDAoFBAACGgUSA2ELEQoMCgUEAAIaARIDYRIhCgwKBQQAAhoDEgNhJCYKCwoEBAACGxIDYgInCgwKBQQAAhsEEgNiAgoKDAoFBAACGwUSA2ILEQoMCgUEAAIbARIDYhIhCgwKBQQAAhsDEgNiJCYKCwoEBAACHBIDYwInCgwKBQQAAhwEEgNjAgoKDAoFBAACHAUSA2MLEQoMCgUEAAIcARIDYxIhCgwKBQQAAhwDEgNjJCYKCwoEBAACHRIDZAIpCgwKBQQAAh0EEgNkAgoKDAoFBAACHQUSA2QLEgoMCgUEAAIdARIDZBMjCgwKBQQAAh0DEgNkJigKCwoEBAACHhIDZQIpCgwKBQQAAh4EEgNlAgoKDAoFBAACHgUSA2ULEgoMCgUEAAIeARIDZRMjCgwKBQQAAh4DEgNlJigKCwoEBAACHxIDZgIrCgwKBQQAAh8EEgNmAgoKDAoFBAACHwUSA2YLEwoMCgUEAAIfARIDZhQlCgwKBQQAAh8DEgNmKCoKCwoEBAACIBIDZwIrCgwKBQQAAiAEEgNnAgoKDAoFBAACIAUSA2cLEwoMCgUEAAIgARIDZxQlCgwKBQQAAiADEgNnKCoKCwoEBAACIRIDaAIlCgwKBQQAAiEEEgNoAgoKDAoFBAACIQUSA2gLEAoMCgUEAAIhARIDaBEfCgwKBQQAAiEDEgNoIiQKCwoEBAACIhIDaQInCgwKBQQAAiIEEgNpAgoKDAoFBAACIgUSA2kLEQoMCgUEAAIiARIDaRIhCgwKBQQAAiIDEgNpJCYKCwoEBAACIxIDagIjCgwKBQQAAiMEEgNqAgoKDAoFBAACIwUSA2oLDwoMCgUEAAIjARIDahAdCgwKBQQAAiMDEgNqICIKCwoEBAACJBIDawInCgwKBQQAAiQEEgNrAgoKDAoFBAACJAUSA2sLEQoMCgUEAAIkARIDaxIhCgwKBQQAAiQDEgNrJCYKCwoEBAACJRIDbAIlCgwKBQQAAiUEEgNsAgoKDAoFBAACJQUSA2wLEAoMCgUEAAIlARIDbBEfCgwKBQQAAiUDEgNsIiQKCwoEBAACJhIDbgI2CgwKBQQAAiYEEgNuAgoKDAoFBAACJgYSA24LGAoMCgUEAAImARIDbhkwCgwKBQQAAiYDEgNuMzUKCwoEBAACJxIDbwI4CgwKBQQAAicEEgNvAgoKDAoFBAACJwYSA28LGQoMCgUEAAInARIDbxoyCgwKBQQAAicDEgNvNTcKCwoEBAACKBIDcQIwCgwKBQQAAigEEgNxAgoKDAoFBAACKAYSA3ELFQoMCgUEAAIoARIDcRYqCgwKBQQAAigDEgNxLS8KCwoEBAACKRIDcgIyCgwKBQQAAikEEgNyAgoKDAoFBAACKQYSA3ILFgoMCgUEAAIpARIDchcsCgwKBQQAAikDEgNyLzEKCwoEBAACKhIDdAJECgwKBQQAAioEEgN0AgoKDAoFBAACKgUSA3QLEQoMCgUEAAIqARIDdBInCgwKBQQAAioDEgN0KiwKDAoFBAACKggSA3QtQwoNCgYEAAIqCAESA3QuQgoLCgQEAAIrEgN1AjQKDAoFBAACKwQSA3UCCgoMCgUEAAIrBRIDdQsRCgwKBQQAAisBEgN1Eh8KDAoFBAACKwMSA3UiJAoMCgUEAAIrCBIDdSUzCg0KBgQAAisIARIDdSYyChUKBAQAAiwSA3gCMxoIIFBhY2tlZAoKDAoFBAACLAQSA3gCCgoMCgUEAAIsBRIDeAsQCgwKBQQAAiwBEgN4ER0KDAoFBAACLAMSA3ggIgoMCgUEAAIsCBIDeCMyCg0KBgQAAiwIAhIDeCQxCgsKBAQAAi0SA3kCMwoMCgUEAAItBBIDeQIKCgwKBQQAAi0FEgN5CxAKDAoFBAACLQESA3kRHQoMCgUEAAItAxIDeSAiCgwKBQQAAi0IEgN5IzIKDQoGBAACLQgCEgN5JDEKCwoEBAACLhIDegI1CgwKBQQAAi4EEgN6AgoKDAoFBAACLgUSA3oLEQoMCgUEAAIuARIDehIfCgwKBQQAAi4DEgN6IiQKDAoFBAACLggSA3olNAoNCgYEAAIuCAISA3omMwoLCgQEAAIvEgN7AjUKDAoFBAACLwQSA3sCCgoMCgUEAAIvBRIDewsRCgwKBQQAAi8BEgN7Eh8KDAoFBAACLwMSA3siJAoMCgUEAAIvCBIDeyU0Cg0KBgQAAi8IAhIDeyYzCgsKBAQAAjASA3wCNQoMCgUEAAIwBBIDfAIKCgwKBQQAAjAFEgN8CxEKDAoFBAACMAESA3wSHwoMCgUEAAIwAxIDfCIkCgwKBQQAAjAIEgN8JTQKDQoGBAACMAgCEgN8JjMKCwoEBAACMRIDfQI1CgwKBQQAAjEEEgN9AgoKDAoFBAACMQUSA30LEQoMCgUEAAIxARIDfRIfCgwKBQQAAjEDEgN9IiQKDAoFBAACMQgSA30lNAoNCgYEAAIxCAISA30mMwoLCgQEAAIyEgN+AjcKDAoFBAACMgQSA34CCgoMCgUEAAIyBRIDfgsSCgwKBQQAAjIBEgN+EyEKDAoFBAACMgMSA34kJgoMCgUEAAIyCBIDfic2Cg0KBgQAAjIIAhIDfig1CgsKBAQAAjMSA38CNwoMCgUEAAIzBBIDfwIKCgwKBQQAAjMFEgN/CxIKDAoFBAACMwESA38TIQoMCgUEAAIzAxIDfyQmCgwKBQQAAjMIEgN/JzYKDQoGBAACMwgCEgN/KDUKDAoEBAACNBIEgAECOQoNCgUEAAI0BBIEgAECCgoNCgUEAAI0BRIEgAELEwoNCgUEAAI0ARIEgAEUIwoNCgUEAAI0AxIEgAEmKAoNCgUEAAI0CBIEgAEpOAoOCgYEAAI0CAISBIABKjcKDAoEBAACNRIEgQECOQoNCgUEAAI1BBIEgQECCgoNCgUEAAI1BRIEgQELEwoNCgUEAAI1ARIEgQEUIwoNCgUEAAI1AxIEgQEmKAoNCgUEAAI1CBIEgQEpOAoOCgYEAAI1CAISBIEBKjcKDAoEBAACNhIEggECMwoNCgUEAAI2BBIEggECCgoNCgUEAAI2BRIEggELEAoNCgUEAAI2ARIEggERHQoNCgUEAAI2AxIEggEgIgoNCgUEAAI2CBIEggEjMgoOCgYEAAI2CAISBIIBJDEKDAoEBAACNxIEgwECNQoNCgUEAAI3BBIEgwECCgoNCgUEAAI3BRIEgwELEQoNCgUEAAI3ARIEgwESHwoNCgUEAAI3AxIEgwEiJAoNCgUEAAI3CBIEgwElNAoOCgYEAAI3CAISBIMBJjMKDAoEBAACOBIEhAECMQoNCgUEAAI4BBIEhAECCgoNCgUEAAI4BRIEhAELDwoNCgUEAAI4ARIEhAEQGwoNCgUEAAI4AxIEhAEeIAoNCgUEAAI4CBIEhAEhMAoOCgYEAAI4CAISBIQBIi8KDAoEBAACORIEhQECPgoNCgUEAAI5BBIEhQECCgoNCgUEAAI5BhIEhQELFQoNCgUEAAI5ARIEhQEWKAoNCgUEAAI5AxIEhQErLQoNCgUEAAI5CBIEhQEuPQoOCgYEAAI5CAISBIUBLzwKGAoEBAACOhIEiAECNhoKIFVucGFja2VkCgoNCgUEAAI6BBIEiAECCgoNCgUEAAI6BRIEiAELEAoNCgUEAAI6ARIEiAERHwoNCgUEAAI6AxIEiAEiJAoNCgUEAAI6CBIEiAElNQoOCgYEAAI6CAISBIgBJjQKDAoEBAACOxIEiQECNgoNCgUEAAI7BBIEiQECCgoNCgUEAAI7BRIEiQELEAoNCgUEAAI7ARIEiQERHwoNCgUEAAI7AxIEiQEiJAoNCgUEAAI7CBIEiQElNQoOCgYEAAI7CAISBIkBJjQKDAoEBAACPBIEigECOAoNCgUEAAI8BBIEigECCgoNCgUEAAI8BRIEigELEQoNCgUEAAI8ARIEigESIQoNCgUEAAI8AxIEigEkJgoNCgUEAAI8CBIEigEnNwoOCgYEAAI8CAISBIoBKDYKDAoEBAACPRIEiwECOAoNCgUEAAI9BBIEiwECCgoNCgUEAAI9BRIEiwELEQoNCgUEAAI9ARIEiwESIQoNCgUEAAI9AxIEiwEkJgoNCgUEAAI9CBIEiwEnNwoOCgYEAAI9CAISBIsBKDYKDAoEBAACPhIEjAECOAoNCgUEAAI+BBIEjAECCgoNCgUEAAI+BRIEjAELEQoNCgUEAAI+ARIEjAESIQoNCgUEAAI+AxIEjAEkJgoNCgUEAAI+CBIEjAEnNwoOCgYEAAI+CAISBIwBKDYKDAoEBAACPxIEjQECOAoNCgUEAAI/BBIEjQECCgoNCgUEAAI/BRIEjQELEQoNCgUEAAI/ARIEjQESIQoNCgUEAAI/AxIEjQEkJgoNCgUEAAI/CBIEjQEnNwoOCgYEAAI/CAISBI0BKDYKDAoEBAACQBIEjgECOgoNCgUEAAJABBIEjgECCgoNCgUEAAJABRIEjgELEgoNCgUEAAJAARIEjgETIwoNCgUEAAJAAxIEjgEmKAoNCgUEAAJACBIEjgEpOQoOCgYEAAJACAISBI4BKjgKDAoEBAACQRIEjwECOgoNCgUEAAJBBBIEjwECCgoNCgUEAAJBBRIEjwELEgoNCgUEAAJBARIEjwETIwoNCgUEAAJBAxIEjwEmKAoNCgUEAAJBCBIEjwEpOQoOCgYEAAJBCAISBI8BKjgKDAoEBAACQhIEkAECPAoNCgUEAAJCBBIEkAECCgoNCgUEAAJCBRIEkAELEwoNCgUEAAJCARIEkAEUJQoNCgUEAAJCAxIEkAEoKgoNCgUEAAJCCBIEkAErOwoOCgYEAAJCCAISBJABLDoKDAoEBAACQxIEkQECPAoNCgUEAAJDBBIEkQECCgoNCgUEAAJDBRIEkQELEwoNCgUEAAJDARIEkQEUJQoNCgUEAAJDAxIEkQEoKgoNCgUEAAJDCBIEkQErOwoOCgYEAAJDCAISBJEBLDoKDAoEBAACRBIEkgECNgoNCgUEAAJEBBIEkgECCgoNCgUEAAJEBRIEkgELEAoNCgUEAAJEARIEkgERHwoNCgUEAAJEAxIEkgEiJAoNCgUEAAJECBIEkgElNQoOCgYEAAJECAISBJIBJjQKDAoEBAACRRIEkwECOQoNCgUEAAJFBBIEkwECCgoNCgUEAAJFBRIEkwELEQoNCgUEAAJFARIEkwESIQoNCgUEAAJFAxIEkwEkJwoNCgUEAAJFCBIEkwEoOAoOCgYEAAJFCAISBJMBKTcKDAoEBAACRhIElAECNQoNCgUEAAJGBBIElAECCgoNCgUEAAJGBRIElAELDwoNCgUEAAJGARIElAEQHQoNCgUEAAJGAxIElAEgIwoNCgUEAAJGCBIElAEkNAoOCgYEAAJGCAISBJQBJTMKDAoEBAACRxIElQECQgoNCgUEAAJHBBIElQECCgoNCgUEAAJHBhIElQELFQoNCgUEAAJHARIElQEWKgoNCgUEAAJHAxIElQEtMAoNCgUEAAJHCBIElQExQQoOCgYEAAJHCAISBJUBMkAKEwoEBAACSBIEmAECKRoFIE1hcAoKDQoFBAACSAYSBJgBAhMKDQoFBAACSAESBJgBFCMKDQoFBAACSAMSBJgBJigKDAoEBAACSRIEmQECKQoNCgUEAAJJBhIEmQECEwoNCgUEAAJJARIEmQEUIwoNCgUEAAJJAxIEmQEmKAoMCgQEAAJKEgSaAQItCg0KBQQAAkoGEgSaAQIVCg0KBQQAAkoBEgSaARYnCg0KBQQAAkoDEgSaASosCgwKBAQAAksSBJsBAi0KDQoFBAACSwYSBJsBAhUKDQoFBAACSwESBJsBFicKDQoFBAACSwMSBJsBKiwKDAoEBAACTBIEnAECLQoNCgUEAAJMBhIEnAECFQoNCgUEAAJMARIEnAEWJwoNCgUEAAJMAxIEnAEqLAoMCgQEAAJNEgSdAQItCg0KBQQAAk0GEgSdAQIVCg0KBQQAAk0BEgSdARYnCg0KBQQAAk0DEgSdASosCgwKBAQAAk4SBJ4BAjEKDQoFBAACTgYSBJ4BAhcKDQoFBAACTgESBJ4BGCsKDQoFBAACTgMSBJ4BLjAKDAoEBAACTxIEnwECMQoNCgUEAAJPBhIEnwECFwoNCgUEAAJPARIEnwEYKwoNCgUEAAJPAxIEnwEuMAoMCgQEAAJQEgSgAQI1Cg0KBQQAAlAGEgSgAQIZCg0KBQQAAlABEgSgARovCg0KBQQAAlADEgSgATI0CgwKBAQAAlESBKEBAjUKDQoFBAACUQYSBKEBAhkKDQoFBAACUQESBKEBGi8KDQoFBAACUQMSBKEBMjQKDAoEBAACUhIEogECKQoNCgUEAAJSBhIEogECEwoNCgUEAAJSARIEogEUIwoNCgUEAAJSAxIEogEmKAoMCgQEAAJTEgSjAQIrCg0KBQQAAlMGEgSjAQIUCg0KBQQAAlMBEgSjARUlCg0KBQQAAlMDEgSjASgqCgwKBAQAAlQSBKQBAiUKDQoFBAACVAYSBKQBAhEKDQoFBAACVAESBKQBEh8KDQoFBAACVAMSBKQBIiQKDAoEBAACVRIEpQECLQoNCgUEAAJVBhIEpQECFQoNCgUEAAJVARIEpQEWJwoNCgUEAAJVAxIEpQEqLAoMCgQEAAJWEgSmAQIrCg0KBQQAAlYGEgSmAQIUCg0KBQQAAlYBEgSmARUlCg0KBQQAAlYDEgSmASgqCgwKBAQAAlcSBKcBAjwKDQoFBAACVwYSBKcBAhwKDQoFBAACVwESBKcBHTYKDQoFBAACVwMSBKcBOTsKDAoEBAACWBIEqAECPgoNCgUEAAJYBhIEqAECHQoNCgUEAAJYARIEqAEeOAoNCgUEAAJYAxIEqAE7PQoMCgQEAAJZEgSpAQI2Cg0KBQQAAlkGEgSpAQIZCg0KBQQAAlkBEgSpARowCg0KBQQAAlkDEgSpATM1CgwKBAQAAloSBKoBAjgKDQoFBAACWgYSBKoBAhoKDQoFBAACWgESBKoBGzIKDQoFBAACWgMSBKoBNTcKDgoEBAAIABIGrAECtwEDCg0KBQQACAABEgSsAQgTCgwKBAQAAlsSBK0BBB4KDQoFBAACWwUSBK0BBAoKDQoFBAACWwESBK0BCxcKDQoFBAACWwMSBK0BGh0KDAoEBAACXBIErgEELQoNCgUEAAJcBhIErgEEEQoNCgUEAAJcARIErgESJgoNCgUEAAJcAxIErgEpLAoMCgQEAAJdEgSvAQQeCg0KBQQAAl0FEgSvAQQKCg0KBQQAAl0BEgSvAQsXCg0KBQQAAl0DEgSvARodCgwKBAQAAl4SBLABBBwKDQoFBAACXgUSBLABBAkKDQoFBAACXgESBLABChUKDQoFBAACXgMSBLABGBsKDAoEBAACXxIEsQEEGgoNCgUEAAJfBRIEsQEECAoNCgUEAAJfARIEsQEJEwoNCgUEAAJfAxIEsQEWGQoMCgQEAAJgEgSyAQQeCg0KBQQAAmAFEgSyAQQKCg0KBQQAAmABEgSyAQsXCg0KBQQAAmADEgSyARodCgwKBAQAAmESBLMBBBwKDQoFBAACYQUSBLMBBAkKDQoFBAACYQESBLMBChUKDQoFBAACYQMSBLMBGBsKDAoEBAACYhIEtAEEHgoNCgUEAAJiBRIEtAEECgoNCgUEAAJiARIEtAELFwoNCgUEAAJiAxIEtAEaHQoMCgQEAAJjEgS1AQQgCg0KBQQAAmMGEgS1AQQOCg0KBQQAAmMBEgS1AQ8ZCg0KBQQAAmMDEgS1ARwfCgwKBAQAAmQSBLYBBDUKDQoFBAACZAYSBLYBBB0KDQoFBAACZAESBLYBHi4KDQoFBAACZAMSBLYBMTQKIAoEBAACZRIEugECOBoSIFdlbGwta25vd24gdHlwZXMKCg0KBQQAAmUGEgS6AQIbCg0KBQQAAmUBEgS6ARwxCg0KBQQAAmUDEgS6ATQ3CgwKBAQAAmYSBLsBAjoKDQoFBAACZgYSBLsBAhwKDQoFBAACZgESBLsBHTMKDQoFBAACZgMSBLsBNjkKDAoEBAACZxIEvAECOgoNCgUEAAJnBhIEvAECHAoNCgUEAAJnARIEvAEdMwoNCgUEAAJnAxIEvAE2OQoMCgQEAAJoEgS9AQI8Cg0KBQQAAmgGEgS9AQIdCg0KBQQAAmgBEgS9AR41Cg0KBQQAAmgDEgS9ATg7CgwKBAQAAmkSBL4BAjwKDQoFBAACaQYSBL4BAh0KDQoFBAACaQESBL4BHjUKDQoFBAACaQMSBL4BODsKDAoEBAACahIEvwECOgoNCgUEAAJqBhIEvwECHAoNCgUEAAJqARIEvwEdMwoNCgUEAAJqAxIEvwE2OQoMCgQEAAJrEgTAAQI8Cg0KBQQAAmsGEgTAAQIdCg0KBQQAAmsBEgTAAR41Cg0KBQQAAmsDEgTAATg7CgwKBAQAAmwSBMEBAjwKDQoFBAACbAYSBMEBAh0KDQoFBAACbAESBMEBHjUKDQoFBAACbAMSBMEBODsKDAoEBAACbRIEwgECOgoNCgUEAAJtBhIEwgECHAoNCgUEAAJtARIEwgEdMwoNCgUEAAJtAxIEwgE2OQoMCgQEAAJuEgTEAQJBCg0KBQQAAm4EEgTEAQIKCg0KBQQAAm4GEgTEAQskCg0KBQQAAm4BEgTEASU6Cg0KBQQAAm4DEgTEAT1ACgwKBAQAAm8SBMUBAkMKDQoFBAACbwQSBMUBAgoKDQoFBAACbwYSBMUBCyUKDQoFBAACbwESBMUBJjwKDQoFBAACbwMSBMUBP0IKDAoEBAACcBIExgECQwoNCgUEAAJwBBIExgECCgoNCgUEAAJwBhIExgELJQoNCgUEAAJwARIExgEmPAoNCgUEAAJwAxIExgE/QgoMCgQEAAJxEgTHAQJFCg0KBQQAAnEEEgTHAQIKCg0KBQQAAnEGEgTHAQsmCg0KBQQAAnEBEgTHASc+Cg0KBQQAAnEDEgTHAUFECgwKBAQAAnISBMgBAkUKDQoFBAACcgQSBMgBAgoKDQoFBAACcgYSBMgBCyYKDQoFBAACcgESBMgBJz4KDQoFBAACcgMSBMgBQUQKDAoEBAACcxIEyQECQwoNCgUEAAJzBBIEyQECCgoNCgUEAAJzBhIEyQELJQoNCgUEAAJzARIEyQEmPAoNCgUEAAJzAxIEyQE/QgoMCgQEAAJ0EgTKAQJFCg0KBQQAAnQEEgTKAQIKCg0KBQQAAnQGEgTKAQsmCg0KBQQAAnQBEgTKASc+Cg0KBQQAAnQDEgTKAUFECgwKBAQAAnUSBMsBAkUKDQoFBAACdQQSBMsBAgoKDQoFBAACdQYSBMsBCyYKDQoFBAACdQESBMsBJz4KDQoFBAACdQMSBMsBQUQKDAoEBAACdhIEzAECQwoNCgUEAAJ2BBIEzAECCgoNCgUEAAJ2BhIEzAELJQoNCgUEAAJ2ARIEzAEmPAoNCgUEAAJ2AxIEzAE/QgoMCgQEAAJ3EgTOAQIzCg0KBQQAAncGEgTOAQIaCg0KBQQAAncBEgTOARssCg0KBQQAAncDEgTOAS8yCgwKBAQAAngSBM8BAjUKDQoFBAACeAYSBM8BAhsKDQoFBAACeAESBM8BHC4KDQoFBAACeAMSBM8BMTQKDAoEBAACeRIE0AECNgoNCgUEAAJ5BhIE0AECGwoNCgUEAAJ5ARIE0AEcLwoNCgUEAAJ5AxIE0AEyNQoMCgQEAAJ6EgTRAQIvCg0KBQQAAnoGEgTRAQIYCg0KBQQAAnoBEgTRARkoCg0KBQQAAnoDEgTRASsuCgwKBAQAAnsSBNIBAikKDQoFBAACewYSBNIBAhUKDQoFBAACewESBNIBFiIKDQoFBAACewMSBNIBJSgKDAoEBAACfBIE0wECLQoNCgUEAAJ8BhIE0wECFwoNCgUEAAJ8ARIE0wEYJgoNCgUEAAJ8AxIE0wEpLAoMCgQEAAJ9EgTUAQI2Cg0KBQQAAn0GEgTUAQIbCg0KBQQAAn0BEgTUARwvCg0KBQQAAn0DEgTUATI1CgwKBAQAAn4SBNYBAjwKDQoFBAACfgQSBNYBAgoKDQoFBAACfgYSBNYBCyMKDQoFBAACfgESBNYBJDUKDQoFBAACfgMSBNYBODsKDAoEBAACfxIE1wECPgoNCgUEAAJ/BBIE1wECCgoNCgUEAAJ/BhIE1wELJAoNCgUEAAJ/ARIE1wElNwoNCgUEAAJ/AxIE1wE6PQoNCgUEAAKAARIE2AECPgoOCgYEAAKAAQQSBNgBAgoKDgoGBAACgAEGEgTYAQskCg4KBgQAAoABARIE2AElNwoOCgYEAAKAAQMSBNgBOj0KDQoFBAACgQESBNkBAjgKDgoGBAACgQEEEgTZAQIKCg4KBgQAAoEBBhIE2QELIQoOCgYEAAKBAQESBNkBIjEKDgoGBAACgQEDEgTZATQ3Cg0KBQQAAoIBEgTaAQIyCg4KBgQAAoIBBBIE2gECCgoOCgYEAAKCAQYSBNoBCx4KDgoGBAACggEBEgTaAR8rCg4KBgQAAoIBAxIE2gEuMQoNCgUEAAKDARIE2wECNgoOCgYEAAKDAQQSBNsBAgoKDgoGBAACgwEGEgTbAQsgCg4KBgQAAoMBARIE2wEhLwoOCgYEAAKDAQMSBNsBMjUKDQoFBAAChAESBNwBAj8KDgoGBAAChAEEEgTcAQIKCg4KBgQAAoQBBhIE3AELJAoOCgYEAAKEAQESBNwBJTgKDgoGBAAChAEDEgTcATs+CnMKBQQAAoUBEgTgAQIZGmQgVGVzdCBmaWVsZC1uYW1lLXRvLUpTT04tbmFtZSBjb252ZW50aW9uLgogKHByb3RvYnVmIHNheXMgbmFtZXMgY2FuIGJlIGFueSB2YWxpZCBDL0MrKyBpZGVudGlmaWVyLikKCg4KBgQAAoUBBRIE4AECBwoOCgYEAAKFAQESBOABCBIKDgoGBAAChQEDEgTgARUYCg0KBQQAAoYBEgThAQIaCg4KBgQAAoYBBRIE4QECBwoOCgYEAAKGAQESBOEBCBMKDgoGBAAChgEDEgThARYZCg0KBQQAAocBEgTiAQIbCg4KBgQAAocBBRIE4gECBwoOCgYEAAKHAQESBOIBCBQKDgoGBAAChwEDEgTiARcaCg0KBQQAAogBEgTjAQIcCg4KBgQAAogBBRIE4wECBwoOCgYEAAKIAQESBOMBCBUKDgoGBAACiAEDEgTjARgbCg0KBQQAAokBEgTkAQIaCg4KBgQAAokBBRIE5AECBwoOCgYEAAKJAQESBOQBCBMKDgoGBAACiQEDEgTkARYZCg0KBQQAAooBEgTlAQIcCg4KBgQAAooBBRIE5QECBwoOCgYEAAKKAQESBOUBCBUKDgoGBAACigEDEgTlARgbCg0KBQQAAosBEgTmAQIZCg4KBgQAAosBBRIE5gECBwoOCgYEAAKLAQESBOYBCBIKDgoGBAACiwEDEgTmARUYCg0KBQQAAowBEgTnAQIZCg4KBgQAAowBBRIE5wECBwoOCgYEAAKMAQESBOcBCBIKDgoGBAACjAEDEgTnARUYCg0KBQQAAo0BEgToAQIaCg4KBgQAAo0BBRIE6AECBwoOCgYEAAKNAQESBOgBCBMKDgoGBAACjQEDEgToARYZCg0KBQQAAo4BEgTpAQIbCg4KBgQAAo4BBRIE6QECBwoOCgYEAAKOAQESBOkBCBQKDgoGBAACjgEDEgTpARcaCg0KBQQAAo8BEgTqAQIbCg4KBgQAAo8BBRIE6gECBwoOCgYEAAKPAQESBOoBCBQKDgoGBAACjwEDEgTqARcaCg0KBQQAApABEgTrAQIbCg4KBgQAApABBRIE6wECBwoOCgYEAAKQAQESBOsBCBQKDgoGBAACkAEDEgTrARcaCg0KBQQAApEBEgTsAQIdCg4KBgQAApEBBRIE7AECBwoOCgYEAAKRAQESBOwBCBYKDgoGBAACkQEDEgTsARkcCg0KBQQAApIBEgTtAQIdCg4KBgQAApIBBRIE7QECBwoOCgYEAAKSAQESBO0BCBYKDgoGBAACkgEDEgTtARkcCg0KBQQAApMBEgTuAQIcCg4KBgQAApMBBRIE7gECBwoOCgYEAAKTAQESBO4BCBUKDgoGBAACkwEDEgTuARgbCg0KBQQAApQBEgTvAQIcCg4KBgQAApQBBRIE7wECBwoOCgYEAAKUAQESBO8BCBUKDgoGBAAClAEDEgTvARgbCg0KBQQAApUBEgTwAQIdCg4KBgQAApUBBRIE8AECBwoOCgYEAAKVAQESBPABCBYKDgoGBAAClQEDEgTwARkcCg0KBQQAApYBEgTxAQIdCg4KBgQAApYBBRIE8QECBwoOCgYEAAKWAQESBPEBCBYKDgoGBAAClgEDEgTxARkcCjIKAwQACRIE9AECFholIFJlc2VydmVkIGZvciB0ZXN0aW5nIHVua25vd24gZmllbGRzCgoMCgQEAAkAEgT0AQsVCg0KBQQACQABEgT0AQsOCg0KBQQACQACEgT0ARIVCgwKAgQBEgb3AQD5AQEKCwoDBAEBEgT3AQgWCgwKBAQBAgASBPgBAg4KDQoFBAECAAUSBPgBAgcKDQoFBAECAAESBPgBCAkKDQoFBAECAAMSBPgBDA0KDAoCBQASBvsBAP8BAQoLCgMFAAESBPsBBRAKDAoEBQACABIE/AECEgoNCgUFAAIAARIE/AECDQoNCgUFAAIAAhIE/AEQEQoMCgQFAAIBEgT9AQISCg0KBQUAAgEBEgT9AQINCg0KBQUAAgECEgT9ARARCgwKBAUAAgISBP4BAhIKDQoFBQACAgESBP4BAg0KDQoFBQACAgISBP4BEBEKCgoCBAISBIECAB8KCwoDBAIBEgSBAggcCgwKAgQDEgaDAgCIAgEKCwoDBAMBEgSDAggWCg4KBAQDBAASBoQCAocCAwoNCgUEAwQAARIEhAIHCwoOCgYEAwQAAgASBIUCBA8KDwoHBAMEAAIAARIEhQIECgoPCgcEAwQAAgACEgSFAg0OCg4KBgQDBAACARIEhgIEDgoPCgcEAwQAAgEBEgSGAgQJCg8KBwQDBAACAQISBIYCDA1iBnByb3RvMwripAIKKmdvb2dsZS9wcm90b2J1Zi90ZXN0X21lc3NhZ2VzX3Byb3RvMi5wcm90bxIdcHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIizVkKElRlc3RBbGxUeXBlc1Byb3RvMhIlCg5vcHRpb25hbF9pbnQzMhgBIAEoBVINb3B0aW9uYWxJbnQzMhIlCg5vcHRpb25hbF9pbnQ2NBgCIAEoA1INb3B0aW9uYWxJbnQ2NBInCg9vcHRpb25hbF91aW50MzIYAyABKA1SDm9wdGlvbmFsVWludDMyEicKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBFIOb3B0aW9uYWxVaW50NjQSJwoPb3B0aW9uYWxfc2ludDMyGAUgASgRUg5vcHRpb25hbFNpbnQzMhInCg9vcHRpb25hbF9zaW50NjQYBiABKBJSDm9wdGlvbmFsU2ludDY0EikKEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdSD29wdGlvbmFsRml4ZWQzMhIpChBvcHRpb25hbF9maXhlZDY0GAggASgGUg9vcHRpb25hbEZpeGVkNjQSKwoRb3B0aW9uYWxfc2ZpeGVkMzIYCSABKA9SEG9wdGlvbmFsU2ZpeGVkMzISKwoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBSEG9wdGlvbmFsU2ZpeGVkNjQSJQoOb3B0aW9uYWxfZmxvYXQYCyABKAJSDW9wdGlvbmFsRmxvYXQSJwoPb3B0aW9uYWxfZG91YmxlGAwgASgBUg5vcHRpb25hbERvdWJsZRIjCg1vcHRpb25hbF9ib29sGA0gASgIUgxvcHRpb25hbEJvb2wSJwoPb3B0aW9uYWxfc3RyaW5nGA4gASgJUg5vcHRpb25hbFN0cmluZxIlCg5vcHRpb25hbF9ieXRlcxgPIAEoDFINb3B0aW9uYWxCeXRlcxJ3ChdvcHRpb25hbF9uZXN0ZWRfbWVzc2FnZRgSIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVvcHRpb25hbE5lc3RlZE1lc3NhZ2USbQoYb3B0aW9uYWxfZm9yZWlnbl9tZXNzYWdlGBMgASgLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFm9wdGlvbmFsRm9yZWlnbk1lc3NhZ2USbgoUb3B0aW9uYWxfbmVzdGVkX2VudW0YFSABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVISb3B0aW9uYWxOZXN0ZWRFbnVtEmQKFW9wdGlvbmFsX2ZvcmVpZ25fZW51bRgWIAEoDjIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNvcHRpb25hbEZvcmVpZ25FbnVtEjYKFW9wdGlvbmFsX3N0cmluZ19waWVjZRgYIAEoCUICCAJSE29wdGlvbmFsU3RyaW5nUGllY2USJwoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAFSDG9wdGlvbmFsQ29yZBJeChFyZWN1cnNpdmVfbWVzc2FnZRgbIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlIQcmVjdXJzaXZlTWVzc2FnZRIlCg5yZXBlYXRlZF9pbnQzMhgfIAMoBVINcmVwZWF0ZWRJbnQzMhIlCg5yZXBlYXRlZF9pbnQ2NBggIAMoA1INcmVwZWF0ZWRJbnQ2NBInCg9yZXBlYXRlZF91aW50MzIYISADKA1SDnJlcGVhdGVkVWludDMyEicKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBFIOcmVwZWF0ZWRVaW50NjQSJwoPcmVwZWF0ZWRfc2ludDMyGCMgAygRUg5yZXBlYXRlZFNpbnQzMhInCg9yZXBlYXRlZF9zaW50NjQYJCADKBJSDnJlcGVhdGVkU2ludDY0EikKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAdSD3JlcGVhdGVkRml4ZWQzMhIpChByZXBlYXRlZF9maXhlZDY0GCYgAygGUg9yZXBlYXRlZEZpeGVkNjQSKwoRcmVwZWF0ZWRfc2ZpeGVkMzIYJyADKA9SEHJlcGVhdGVkU2ZpeGVkMzISKwoRcmVwZWF0ZWRfc2ZpeGVkNjQYKCADKBBSEHJlcGVhdGVkU2ZpeGVkNjQSJQoOcmVwZWF0ZWRfZmxvYXQYKSADKAJSDXJlcGVhdGVkRmxvYXQSJwoPcmVwZWF0ZWRfZG91YmxlGCogAygBUg5yZXBlYXRlZERvdWJsZRIjCg1yZXBlYXRlZF9ib29sGCsgAygIUgxyZXBlYXRlZEJvb2wSJwoPcmVwZWF0ZWRfc3RyaW5nGCwgAygJUg5yZXBlYXRlZFN0cmluZxIlCg5yZXBlYXRlZF9ieXRlcxgtIAMoDFINcmVwZWF0ZWRCeXRlcxJ3ChdyZXBlYXRlZF9uZXN0ZWRfbWVzc2FnZRgwIAMoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUhVyZXBlYXRlZE5lc3RlZE1lc3NhZ2USbQoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSFnJlcGVhdGVkRm9yZWlnbk1lc3NhZ2USbgoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIScmVwZWF0ZWROZXN0ZWRFbnVtEmQKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLkZvcmVpZ25FbnVtUHJvdG8yUhNyZXBlYXRlZEZvcmVpZ25FbnVtEjYKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAJSE3JlcGVhdGVkU3RyaW5nUGllY2USJwoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAFSDHJlcGVhdGVkQ29yZBIlCgxwYWNrZWRfaW50MzIYSyADKAVCAhABUgtwYWNrZWRJbnQzMhIlCgxwYWNrZWRfaW50NjQYTCADKANCAhABUgtwYWNrZWRJbnQ2NBInCg1wYWNrZWRfdWludDMyGE0gAygNQgIQAVIMcGFja2VkVWludDMyEicKDXBhY2tlZF91aW50NjQYTiADKARCAhABUgxwYWNrZWRVaW50NjQSJwoNcGFja2VkX3NpbnQzMhhPIAMoEUICEAFSDHBhY2tlZFNpbnQzMhInCg1wYWNrZWRfc2ludDY0GFAgAygSQgIQAVIMcGFja2VkU2ludDY0EikKDnBhY2tlZF9maXhlZDMyGFEgAygHQgIQAVINcGFja2VkRml4ZWQzMhIpCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkICEAFSDXBhY2tlZEZpeGVkNjQSKwoPcGFja2VkX3NmaXhlZDMyGFMgAygPQgIQAVIOcGFja2VkU2ZpeGVkMzISKwoPcGFja2VkX3NmaXhlZDY0GFQgAygQQgIQAVIOcGFja2VkU2ZpeGVkNjQSJQoMcGFja2VkX2Zsb2F0GFUgAygCQgIQAVILcGFja2VkRmxvYXQSJwoNcGFja2VkX2RvdWJsZRhWIAMoAUICEAFSDHBhY2tlZERvdWJsZRIjCgtwYWNrZWRfYm9vbBhXIAMoCEICEAFSCnBhY2tlZEJvb2wSbgoScGFja2VkX25lc3RlZF9lbnVtGFggAygOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk5lc3RlZEVudW1CAhABUhBwYWNrZWROZXN0ZWRFbnVtEikKDnVucGFja2VkX2ludDMyGFkgAygFQgIQAFINdW5wYWNrZWRJbnQzMhIpCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0ICEABSDXVucGFja2VkSW50NjQSKwoPdW5wYWNrZWRfdWludDMyGFsgAygNQgIQAFIOdW5wYWNrZWRVaW50MzISKwoPdW5wYWNrZWRfdWludDY0GFwgAygEQgIQAFIOdW5wYWNrZWRVaW50NjQSKwoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgIQAFIOdW5wYWNrZWRTaW50MzISKwoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgIQAFIOdW5wYWNrZWRTaW50NjQSLQoQdW5wYWNrZWRfZml4ZWQzMhhfIAMoB0ICEABSD3VucGFja2VkRml4ZWQzMhItChB1bnBhY2tlZF9maXhlZDY0GGAgAygGQgIQAFIPdW5wYWNrZWRGaXhlZDY0Ei8KEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgIQAFIQdW5wYWNrZWRTZml4ZWQzMhIvChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEICEABSEHVucGFja2VkU2ZpeGVkNjQSKQoOdW5wYWNrZWRfZmxvYXQYYyADKAJCAhAAUg11bnBhY2tlZEZsb2F0EisKD3VucGFja2VkX2RvdWJsZRhkIAMoAUICEABSDnVucGFja2VkRG91YmxlEicKDXVucGFja2VkX2Jvb2wYZSADKAhCAhAAUgx1bnBhY2tlZEJvb2wScgoUdW5wYWNrZWRfbmVzdGVkX2VudW0YZiADKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUICEABSEnVucGFja2VkTmVzdGVkRW51bRJsCg9tYXBfaW50MzJfaW50MzIYOCADKAsyRC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJJbnQzMkVudHJ5Ug1tYXBJbnQzMkludDMyEmwKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBJbnQ2NEludDY0RW50cnlSDW1hcEludDY0SW50NjQScgoRbWFwX3VpbnQzMl91aW50MzIYOiADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwVWludDMyVWludDMyRW50cnlSD21hcFVpbnQzMlVpbnQzMhJyChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBVaW50NjRVaW50NjRFbnRyeVIPbWFwVWludDY0VWludDY0EnIKEW1hcF9zaW50MzJfc2ludDMyGDwgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNpbnQzMlNpbnQzMkVudHJ5Ug9tYXBTaW50MzJTaW50MzIScgoRbWFwX3NpbnQ2NF9zaW50NjQYPSADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ludDY0U2ludDY0RW50cnlSD21hcFNpbnQ2NFNpbnQ2NBJ4ChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMkgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEZpeGVkMzJGaXhlZDMyRW50cnlSEW1hcEZpeGVkMzJGaXhlZDMyEngKE21hcF9maXhlZDY0X2ZpeGVkNjQYPyADKAsySC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeVIRbWFwRml4ZWQ2NEZpeGVkNjQSfgoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeVITbWFwU2ZpeGVkMzJTZml4ZWQzMhJ+ChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5UhNtYXBTZml4ZWQ2NFNmaXhlZDY0EmkKDm1hcF9pbnQzMl9ib29sGGggAygLMkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyQm9vbEVudHJ5UgxtYXBJbnQzMkJvb2wSbAoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRmxvYXRFbnRyeVINbWFwSW50MzJGbG9hdBJvChBtYXBfaW50MzJfZG91YmxlGEMgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEludDMyRG91YmxlRW50cnlSDm1hcEludDMyRG91YmxlEoUBChhtYXBfaW50MzJfbmVzdGVkX21lc3NhZ2UYZyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwSW50MzJOZXN0ZWRNZXNzYWdlRW50cnlSFW1hcEludDMyTmVzdGVkTWVzc2FnZRJmCg1tYXBfYm9vbF9ib29sGEQgAygLMkIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcEJvb2xCb29sRW50cnlSC21hcEJvb2xCb29sEnIKEW1hcF9zdHJpbmdfc3RyaW5nGEUgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ1N0cmluZ0VudHJ5Ug9tYXBTdHJpbmdTdHJpbmcSbwoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdCeXRlc0VudHJ5Ug5tYXBTdHJpbmdCeXRlcxKIAQoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnlSFm1hcFN0cmluZ05lc3RlZE1lc3NhZ2USiwEKGm1hcF9zdHJpbmdfZm9yZWlnbl9tZXNzYWdlGEggAygLMk4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnlSF21hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlEn8KFm1hcF9zdHJpbmdfbmVzdGVkX2VudW0YSSADKAsySi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5UhNtYXBTdHJpbmdOZXN0ZWRFbnVtEoIBChdtYXBfc3RyaW5nX2ZvcmVpZ25fZW51bRhKIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5UhRtYXBTdHJpbmdGb3JlaWduRW51bRIjCgxvbmVvZl91aW50MzIYbyABKA1IAFILb25lb2ZVaW50MzIScwoUb25lb2ZfbmVzdGVkX21lc3NhZ2UYcCABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZUgAUhJvbmVvZk5lc3RlZE1lc3NhZ2USIwoMb25lb2Zfc3RyaW5nGHEgASgJSABSC29uZW9mU3RyaW5nEiEKC29uZW9mX2J5dGVzGHIgASgMSABSCm9uZW9mQnl0ZXMSHwoKb25lb2ZfYm9vbBhzIAEoCEgAUglvbmVvZkJvb2wSIwoMb25lb2ZfdWludDY0GHQgASgESABSC29uZW9mVWludDY0EiEKC29uZW9mX2Zsb2F0GHUgASgCSABSCm9uZW9mRmxvYXQSIwoMb25lb2ZfZG91YmxlGHYgASgBSABSC29uZW9mRG91YmxlEl0KCm9uZW9mX2VudW0YdyABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bUgAUglvbmVvZkVudW0SSwoEZGF0YRjJASABKAoyNi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuRGF0YVIEZGF0YRJ4ChNtdWx0aXdvcmRncm91cGZpZWxkGMwBIAEoCjJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5NdWx0aVdvcmRHcm91cEZpZWxkUhNtdWx0aXdvcmRncm91cGZpZWxkEjAKDWRlZmF1bHRfaW50MzIY8QEgASgFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASABKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgASgNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAEoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgASgROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAEoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAEoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAEoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgASgPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASABKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASABKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgASgBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgASgIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASABKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASABKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzEh8KCmZpZWxkbmFtZTEYkQMgASgFUgpmaWVsZG5hbWUxEiAKC2ZpZWxkX25hbWUyGJIDIAEoBVIKZmllbGROYW1lMhIhCgxfZmllbGRfbmFtZTMYkwMgASgFUgpGaWVsZE5hbWUzEiIKDWZpZWxkX19uYW1lNF8YlAMgASgFUgpmaWVsZE5hbWU0EiEKC2ZpZWxkMG5hbWU1GJUDIAEoBVILZmllbGQwbmFtZTUSIwoNZmllbGRfMF9uYW1lNhiWAyABKAVSC2ZpZWxkME5hbWU2Eh8KCmZpZWxkTmFtZTcYlwMgASgFUgpmaWVsZE5hbWU3Eh8KCkZpZWxkTmFtZTgYmAMgASgFUgpGaWVsZE5hbWU4EiAKC2ZpZWxkX05hbWU5GJkDIAEoBVIKZmllbGROYW1lORIiCgxGaWVsZF9OYW1lMTAYmgMgASgFUgtGaWVsZE5hbWUxMBIiCgxGSUVMRF9OQU1FMTEYmwMgASgFUgtGSUVMRE5BTUUxMRIiCgxGSUVMRF9uYW1lMTIYnAMgASgFUgtGSUVMRE5hbWUxMhIkCg5fX2ZpZWxkX25hbWUxMxidAyABKAVSC0ZpZWxkTmFtZTEzEiQKDl9fRmllbGRfbmFtZTE0GJ4DIAEoBVILRmllbGROYW1lMTQSIwoNZmllbGRfX25hbWUxNRifAyABKAVSC2ZpZWxkTmFtZTE1EiMKDWZpZWxkX19OYW1lMTYYoAMgASgFUgtmaWVsZE5hbWUxNhIkCg5maWVsZF9uYW1lMTdfXxihAyABKAVSC2ZpZWxkTmFtZTE3EiQKDkZpZWxkX25hbWUxOF9fGKIDIAEoBVILRmllbGROYW1lMTgSdAoTbWVzc2FnZV9zZXRfY29ycmVjdBj0AyABKAsyQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RSEW1lc3NhZ2VTZXRDb3JyZWN0GnIKDU5lc3RlZE1lc3NhZ2USDAoBYRgBIAEoBVIBYRJTCgtjb3JlY3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUaQAoSTWFwSW50MzJJbnQzMkVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgFUgV2YWx1ZToCOAEaQAoSTWFwSW50NjRJbnQ2NEVudHJ5EhAKA2tleRgBIAEoA1IDa2V5EhQKBXZhbHVlGAIgASgDUgV2YWx1ZToCOAEaQgoUTWFwVWludDMyVWludDMyRW50cnkSEAoDa2V5GAEgASgNUgNrZXkSFAoFdmFsdWUYAiABKA1SBXZhbHVlOgI4ARpCChRNYXBVaW50NjRVaW50NjRFbnRyeRIQCgNrZXkYASABKARSA2tleRIUCgV2YWx1ZRgCIAEoBFIFdmFsdWU6AjgBGkIKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EhAKA2tleRgBIAEoEVIDa2V5EhQKBXZhbHVlGAIgASgRUgV2YWx1ZToCOAEaQgoUTWFwU2ludDY0U2ludDY0RW50cnkSEAoDa2V5GAEgASgSUgNrZXkSFAoFdmFsdWUYAiABKBJSBXZhbHVlOgI4ARpEChZNYXBGaXhlZDMyRml4ZWQzMkVudHJ5EhAKA2tleRgBIAEoB1IDa2V5EhQKBXZhbHVlGAIgASgHUgV2YWx1ZToCOAEaRAoWTWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRIQCgNrZXkYASABKAZSA2tleRIUCgV2YWx1ZRgCIAEoBlIFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRIQCgNrZXkYASABKA9SA2tleRIUCgV2YWx1ZRgCIAEoD1IFdmFsdWU6AjgBGkYKGE1hcFNmaXhlZDY0U2ZpeGVkNjRFbnRyeRIQCgNrZXkYASABKBBSA2tleRIUCgV2YWx1ZRgCIAEoEFIFdmFsdWU6AjgBGj8KEU1hcEludDMyQm9vbEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgIUgV2YWx1ZToCOAEaQAoSTWFwSW50MzJGbG9hdEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgCUgV2YWx1ZToCOAEaQQoTTWFwSW50MzJEb3VibGVFbnRyeRIQCgNrZXkYASABKAVSA2tleRIUCgV2YWx1ZRgCIAEoAVIFdmFsdWU6AjgBGokBChpNYXBJbnQzMk5lc3RlZE1lc3NhZ2VFbnRyeRIQCgNrZXkYASABKAVSA2tleRJVCgV2YWx1ZRgCIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxUeXBlc1Byb3RvMi5OZXN0ZWRNZXNzYWdlUgV2YWx1ZToCOAEaPgoQTWFwQm9vbEJvb2xFbnRyeRIQCgNrZXkYASABKAhSA2tleRIUCgV2YWx1ZRgCIAEoCFIFdmFsdWU6AjgBGkIKFE1hcFN0cmluZ1N0cmluZ0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaQQoTTWFwU3RyaW5nQnl0ZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoDFIFdmFsdWU6AjgBGooBChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSVQoFdmFsdWUYAiABKAsyPy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkTWVzc2FnZVIFdmFsdWU6AjgBGn8KHE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSSQoFdmFsdWUYAiABKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIFdmFsdWU6AjgBGoQBChhNYXBTdHJpbmdOZXN0ZWRFbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSUgoFdmFsdWUYAiABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTmVzdGVkRW51bVIFdmFsdWU6AjgBGnkKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSRgoFdmFsdWUYAiABKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlIFdmFsdWU6AjgBGkwKBERhdGESIAoLZ3JvdXBfaW50MzIYygEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjLASABKA1SC2dyb3VwVWludDMyGlsKE011bHRpV29yZEdyb3VwRmllbGQSIAoLZ3JvdXBfaW50MzIYzQEgASgFUgpncm91cEludDMyEiIKDGdyb3VwX3VpbnQzMhjOASABKA1SC2dyb3VwVWludDMyGiEKEU1lc3NhZ2VTZXRDb3JyZWN0KggIBBD/////BzoCCAEa+gEKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMRIQCgNzdHIYGSABKAlSA3N0cjLIAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyTS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsVHlwZXNQcm90bzIuTWVzc2FnZVNldENvcnJlY3RFeHRlbnNpb24xUhNtZXNzYWdlU2V0RXh0ZW5zaW9uGvcBChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjISDAoBaRgJIAEoBVIBaTLJAQoVbWVzc2FnZV9zZXRfZXh0ZW5zaW9uEkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GJCz/AEgASgLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbhqEAgoSRXh0ZW5zaW9uV2l0aE9uZW9mEg4KAWEYASABKAVIAFIBYRIOCgFiGAIgASgFSABSAWIyvgEKFGV4dGVuc2lvbl93aXRoX29uZW9mEkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GJWa7zogASgLMkQucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yLkV4dGVuc2lvbldpdGhPbmVvZlISZXh0ZW5zaW9uV2l0aE9uZW9mQg0KC29uZW9mX2ZpZWxkIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFSEAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9mX2ZpZWxkSgYI6AcQkE4iJAoURm9yZWlnbk1lc3NhZ2VQcm90bzISDAoBYxgBIAEoBVIBYyJQCgpHcm91cEZpZWxkEh8KC2dyb3VwX2ludDMyGHogASgFUgpncm91cEludDMyEiEKDGdyb3VwX3VpbnQzMhh7IAEoDVILZ3JvdXBVaW50MzIingMKFVVua25vd25Ub1Rlc3RBbGxUeXBlcxImCg5vcHRpb25hbF9pbnQzMhjpByABKAVSDW9wdGlvbmFsSW50MzISKAoPb3B0aW9uYWxfc3RyaW5nGOoHIAEoCVIOb3B0aW9uYWxTdHJpbmcSWwoObmVzdGVkX21lc3NhZ2UY6wcgASgLMjMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuRm9yZWlnbk1lc3NhZ2VQcm90bzJSDW5lc3RlZE1lc3NhZ2USaQoNb3B0aW9uYWxncm91cBjsByABKAoyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Vbmtub3duVG9UZXN0QWxsVHlwZXMuT3B0aW9uYWxHcm91cFINb3B0aW9uYWxncm91cBIkCg1vcHRpb25hbF9ib29sGO4HIAEoCFIMb3B0aW9uYWxCb29sEiYKDnJlcGVhdGVkX2ludDMyGPMHIAMoBVINcmVwZWF0ZWRJbnQzMhodCg1PcHRpb25hbEdyb3VwEgwKAWEYASABKAVSAWEiFgoUTnVsbEh5cG90aGVzaXNQcm90bzIiLwoORW51bU9ubHlQcm90bzIiHQoEQm9vbBIKCgZrRmFsc2UQABIJCgVrVHJ1ZRABIiUKD09uZVN0cmluZ1Byb3RvMhISCgRkYXRhGAEgASgJUgRkYXRhImEKEVByb3RvV2l0aEtleXdvcmRzEhYKBmlubGluZRgBIAEoBVIGaW5saW5lEhgKB2NvbmNlcHQYAiABKAlSB2NvbmNlcHQSGgoIcmVxdWlyZXMYAyADKAlSCHJlcXVpcmVzIswZChpUZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMhIlCg5yZXF1aXJlZF9pbnQzMhgBIAIoBVINcmVxdWlyZWRJbnQzMhIlCg5yZXF1aXJlZF9pbnQ2NBgCIAIoA1INcmVxdWlyZWRJbnQ2NBInCg9yZXF1aXJlZF91aW50MzIYAyACKA1SDnJlcXVpcmVkVWludDMyEicKD3JlcXVpcmVkX3VpbnQ2NBgEIAIoBFIOcmVxdWlyZWRVaW50NjQSJwoPcmVxdWlyZWRfc2ludDMyGAUgAigRUg5yZXF1aXJlZFNpbnQzMhInCg9yZXF1aXJlZF9zaW50NjQYBiACKBJSDnJlcXVpcmVkU2ludDY0EikKEHJlcXVpcmVkX2ZpeGVkMzIYByACKAdSD3JlcXVpcmVkRml4ZWQzMhIpChByZXF1aXJlZF9maXhlZDY0GAggAigGUg9yZXF1aXJlZEZpeGVkNjQSKwoRcmVxdWlyZWRfc2ZpeGVkMzIYCSACKA9SEHJlcXVpcmVkU2ZpeGVkMzISKwoRcmVxdWlyZWRfc2ZpeGVkNjQYCiACKBBSEHJlcXVpcmVkU2ZpeGVkNjQSJQoOcmVxdWlyZWRfZmxvYXQYCyACKAJSDXJlcXVpcmVkRmxvYXQSJwoPcmVxdWlyZWRfZG91YmxlGAwgAigBUg5yZXF1aXJlZERvdWJsZRIjCg1yZXF1aXJlZF9ib29sGA0gAigIUgxyZXF1aXJlZEJvb2wSJwoPcmVxdWlyZWRfc3RyaW5nGA4gAigJUg5yZXF1aXJlZFN0cmluZxIlCg5yZXF1aXJlZF9ieXRlcxgPIAIoDFINcmVxdWlyZWRCeXRlcxJ/ChdyZXF1aXJlZF9uZXN0ZWRfbWVzc2FnZRgSIAIoCzJHLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZE1lc3NhZ2VSFXJlcXVpcmVkTmVzdGVkTWVzc2FnZRJtChhyZXF1aXJlZF9mb3JlaWduX21lc3NhZ2UYEyACKAsyMy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduTWVzc2FnZVByb3RvMlIWcmVxdWlyZWRGb3JlaWduTWVzc2FnZRJ2ChRyZXF1aXJlZF9uZXN0ZWRfZW51bRgVIAIoDjJELnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk5lc3RlZEVudW1SEnJlcXVpcmVkTmVzdGVkRW51bRJkChVyZXF1aXJlZF9mb3JlaWduX2VudW0YFiACKA4yMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5Gb3JlaWduRW51bVByb3RvMlITcmVxdWlyZWRGb3JlaWduRW51bRI2ChVyZXF1aXJlZF9zdHJpbmdfcGllY2UYGCACKAlCAggCUhNyZXF1aXJlZFN0cmluZ1BpZWNlEicKDXJlcXVpcmVkX2NvcmQYGSACKAlCAggBUgxyZXF1aXJlZENvcmQSZgoRcmVjdXJzaXZlX21lc3NhZ2UYGyACKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlIQcmVjdXJzaXZlTWVzc2FnZRJ3ChpvcHRpb25hbF9yZWN1cnNpdmVfbWVzc2FnZRgcIAEoCzI5LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yUhhvcHRpb25hbFJlY3Vyc2l2ZU1lc3NhZ2USUwoEZGF0YRjJASACKAoyPi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5EYXRhUgRkYXRhEjAKDWRlZmF1bHRfaW50MzIY8QEgAigFOgotMTIzNDU2Nzg5UgxkZWZhdWx0SW50MzISOgoNZGVmYXVsdF9pbnQ2NBjyASACKAM6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5UgxkZWZhdWx0SW50NjQSMgoOZGVmYXVsdF91aW50MzIY8wEgAigNOgoyMTIzNDU2Nzg5Ug1kZWZhdWx0VWludDMyEjwKDmRlZmF1bHRfdWludDY0GPQBIAIoBDoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRVaW50NjQSMgoOZGVmYXVsdF9zaW50MzIY9QEgAigROgotMTIzNDU2Nzg5Ug1kZWZhdWx0U2ludDMyEjwKDmRlZmF1bHRfc2ludDY0GPYBIAIoEjoULTkxMjM0NTY3ODkxMjM0NTY3ODlSDWRlZmF1bHRTaW50NjQSNAoPZGVmYXVsdF9maXhlZDMyGPcBIAIoBzoKMjEyMzQ1Njc4OVIOZGVmYXVsdEZpeGVkMzISPgoPZGVmYXVsdF9maXhlZDY0GPgBIAIoBjoUMTAxMjM0NTY3ODkxMjM0NTY3ODlSDmRlZmF1bHRGaXhlZDY0EjYKEGRlZmF1bHRfc2ZpeGVkMzIY+QEgAigPOgotMTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkMzISQAoQZGVmYXVsdF9zZml4ZWQ2NBj6ASACKBA6FC05MTIzNDU2Nzg5MTIzNDU2Nzg5Ug9kZWZhdWx0U2ZpeGVkNjQSKwoNZGVmYXVsdF9mbG9hdBj7ASACKAI6BTllKzA5UgxkZWZhdWx0RmxvYXQSLQoOZGVmYXVsdF9kb3VibGUY/AEgAigBOgU3ZSsyMlINZGVmYXVsdERvdWJsZRIoCgxkZWZhdWx0X2Jvb2wY/QEgAigIOgR0cnVlUgtkZWZhdWx0Qm9vbBIvCg5kZWZhdWx0X3N0cmluZxj+ASACKAk6B1Jvc2VidWRSDWRlZmF1bHRTdHJpbmcSLAoNZGVmYXVsdF9ieXRlcxj/ASACKAw6Bmpvc2h1YVIMZGVmYXVsdEJ5dGVzGugBCg1OZXN0ZWRNZXNzYWdlEgwKAWEYASACKAVSAWESWwoLY29yZWN1cnNpdmUYAiACKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlILY29yZWN1cnNpdmUSbAoUb3B0aW9uYWxfY29yZWN1cnNpdmUYAyABKAsyOS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMlITb3B0aW9uYWxDb3JlY3Vyc2l2ZRpMCgREYXRhEiAKC2dyb3VwX2ludDMyGMoBIAIoBVIKZ3JvdXBJbnQzMhIiCgxncm91cF91aW50MzIYywEgAigNUgtncm91cFVpbnQzMhohChFNZXNzYWdlU2V0Q29ycmVjdCoICAQQ/////wc6AggBGooCChtNZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjESEAoDc3RyGBkgAigJUgNzdHIy2AEKFW1lc3NhZ2Vfc2V0X2V4dGVuc2lvbhJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0GPm7XiABKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdEV4dGVuc2lvbjFSE21lc3NhZ2VTZXRFeHRlbnNpb24ahwIKG01lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMhIMCgFpGAkgAigFUgFpMtkBChVtZXNzYWdlX3NldF9leHRlbnNpb24SSy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0QWxsUmVxdWlyZWRUeXBlc1Byb3RvMi5NZXNzYWdlU2V0Q29ycmVjdBiQs/wBIAEoCzJVLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RBbGxSZXF1aXJlZFR5cGVzUHJvdG8yLk1lc3NhZ2VTZXRDb3JyZWN0RXh0ZW5zaW9uMlITbWVzc2FnZVNldEV4dGVuc2lvbiI5CgpOZXN0ZWRFbnVtEgcKA0ZPTxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJAUoGCOgHEJBOIpEDCg5UZXN0TGFyZ2VPbmVvZhJCCgJhMRgBIAEoCzIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkExSABSAmExEkIKAmEyGAIgASgLMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTJIAFICYTISQgoCYTMYAyABKAsyMC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMi5UZXN0TGFyZ2VPbmVvZi5BM0gAUgJhMxJCCgJhNBgEIAEoCzIwLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8yLlRlc3RMYXJnZU9uZW9mLkE0SABSAmE0EkIKAmE1GAUgASgLMjAucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdExhcmdlT25lb2YuQTVIAFICYTUaBAoCQTEaBAoCQTIaBAoCQTMaBAoCQTQaBAoCQTVCDQoLbGFyZ2Vfb25lb2YqRgoRRm9yZWlnbkVudW1Qcm90bzISDwoLRk9SRUlHTl9GT08QABIPCgtGT1JFSUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAI6WgoPZXh0ZW5zaW9uX2ludDMyEjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGHggASgFUg5leHRlbnNpb25JbnQzMjp8Cgpncm91cGZpZWxkEjEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuVGVzdEFsbFR5cGVzUHJvdG8yGHkgASgKMikucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzIuR3JvdXBGaWVsZFIKZ3JvdXBmaWVsZEI4Cihjb20uZ29vZ2xlLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8ySAH4AQGiAgZQcm90bzJKmKUBCgcSBQ4AnwMBCoIDCgEMEgMOABIy4QIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIG9yIGF0CiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9vcGVuLXNvdXJjZS9saWNlbnNlcy9ic2QKCiBUZXN0IHNjaGVtYSBmb3IgcHJvdG8yIG1lc3NhZ2VzLiAgVGhpcyB0ZXN0IHNjaGVtYSBpcyB1c2VkIGJ5OgoKIC0gY29uZm9ybWFuY2UgdGVzdHMKCjIUIExJTlQ6IEFMTE9XX0dST1VQUwoKCAoBAhIDEAAmCggKAQgSAxIAQQoJCgIIARIDEgBBCggKAQgSAxMAJAoJCgIIJBIDEwAkCggKAQgSAxYAHApECgIICRIDFgAcGjkgVGhpcyBpcyB0aGUgZGVmYXVsdCwgYnV0IHdlIHNwZWNpZnkgaXQgaGVyZSBleHBsaWNpdGx5LgoKCAoBCBIDGAAfCgkKAggfEgMYAB8K2wIKAgQAEgUiAP8BARrNAiBUaGlzIHByb3RvIGluY2x1ZGVzIGV2ZXJ5IHR5cGUgb2YgZmllbGQgaW4gYm90aCBzaW5ndWxhciBhbmQgcmVw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MlEKDHRlc3RfbWVzc2FnZRIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0GI5OIAEoCzIQLnBiLlRlc3RGZWF0dXJlc1ILdGVzdE1lc3NhZ2UiwQ4KDFRlc3RGZWF0dXJlcxKIAQoMZmlsZV9mZWF0dXJlGAEgASgOMg8ucGIuRW51bUZlYXR1cmVCVIgBAZgBAaIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY5weiAQsSBlZBTFVFMxjoB6IBDBIGVkFMVUU0GJ2NBqIBDBIGVkFMVUU1GJ6NBrIBAwjoB1ILZmlsZUZlYXR1cmUSYwoXZXh0ZW5zaW9uX3JhbmdlX2ZlYXR1cmUYAiABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAECogELEgZWQUxVRTEYhAeyAQMI6AdSFWV4dGVuc2lvblJhbmdlRmVhdHVyZRJUCg9tZXNzYWdlX2ZlYXR1cmUYAyABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEDogELEgZWQUxVRTEYhAeyAQMI6AdSDm1lc3NhZ2VGZWF0dXJlElAKDWZpZWxkX2ZlYXR1cmUYBCABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEEogELEgZWQUxVRTEYhAeyAQMI6AdSDGZpZWxkRmVhdHVyZRJQCg1vbmVvZl9mZWF0dXJlGAUgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBaIBCxIGVkFMVUUxGIQHsgEDCOgHUgxvbmVvZkZlYXR1cmUSTgoMZW51bV9mZWF0dXJlGAYgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBqIBCxIGVkFMVUUxGIQHsgEDCOgHUgtlbnVtRmVhdHVyZRJZChJlbnVtX2VudHJ5X2ZlYXR1cmUYByABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEHogELEgZWQUxVRTEYhAeyAQMI6AdSEGVudW1FbnRyeUZlYXR1cmUSVAoPc2VydmljZV9mZWF0dXJlGAggASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBCKIBCxIGVkFMVUUxGIQHsgEDCOgHUg5zZXJ2aWNlRmVhdHVyZRJSCg5tZXRob2RfZmVhdHVyZRgJIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQmiAQsSBlZBTFVFMRiEB7IBAwjoB1INbWV0aG9kRmVhdHVyZRJuChBtdWx0aXBsZV9mZWF0dXJlGAogASgOMg8ucGIuRW51bUZlYXR1cmVCMogBAZgBAZgBBJgBA5gBBpgBB5gBCJgBCZgBBZgBAqIBCxIGVkFMVUUxGIQHsgEDCOgHUg9tdWx0aXBsZUZlYXR1cmUSVAoSYm9vbF9maWVsZF9mZWF0dXJlGAsgASgIQiaIAQGYAQSiAQoSBWZhbHNlGIQHogEKEgR0cnVlGJ2NBrIBAwjoB1IQYm9vbEZpZWxkRmVhdHVyZRJqCg5zb3VyY2VfZmVhdHVyZRgPIAEoDjIPLnBiLkVudW1GZWF0dXJlQjKIAQKYAQGYAQSYAQOYAQaYAQeYAQiYAQmYAQWYAQKiAQsSBlZBTFVFMRiEB7IBAwjoB1INc291cmNlRmVhdHVyZRJsCg9zb3VyY2VfZmVhdHVyZTIYECABKA4yDy5wYi5FbnVtRmVhdHVyZUIyiAECmAEBmAEEmAEDmAEGmAEHmAEImAEJmAEFmAECogELEgZWQUxVRTEYhAeyAQMI6AdSDnNvdXJjZUZlYXR1cmUyEp0BCg9yZW1vdmVkX2ZlYXR1cmUYESABKA4yDy5wYi5FbnVtRmVhdHVyZUJjiAEBmAEBmAEEogELEgZWQUxVRTEYhAeiAQsSBlZBTFVFMhjoB6IBCxIGVkFMVUUzGOkHsgEtCOgHEOgHGiJDdXN0b20gZmVhdHVyZSBkZXByZWNhdGlvbiB3YXJuaW5nIOkHUg5yZW1vdmVkRmVhdHVyZRJjCg5mdXR1cmVfZmVhdHVyZRgSIAEoDjIPLnBiLkVudW1GZWF0dXJlQiuIAQGYAQGYAQSiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOkHsgEDCOkHUg1mdXR1cmVGZWF0dXJlEmYKDmxlZ2FjeV9mZWF0dXJlGBMgASgOMg8ucGIuRW51bUZlYXR1cmVCLogBAZgBAZgBBKIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY6AeyAQYI5wcg6AdSDWxlZ2FjeUZlYXR1cmUS5AEKFnZhbHVlX2xpZmV0aW1lX2ZlYXR1cmUYFCABKA4yGC5wYi5WYWx1ZUxpZmV0aW1lRmVhdHVyZUKTAYgBAZgBAaIBHRIYVkFMVUVfTElGRVRJTUVfSU5IRVJJVEVEGIQHogEaEhVWQUxVRV9MSUZFVElNRV9GVVRVUkUY6AeiARsSFVZBTFVFX0xJRkVUSU1FX0ZVVFVSRRifjQayAS8I6AcQno0GGiJDdXN0b20gZmVhdHVyZSBkZXByZWNhdGlvbiB3YXJuaW5nIJ+NBlIUdmFsdWVMaWZldGltZUZlYXR1cmUq5gEKC0VudW1GZWF0dXJlEh0KGVRFU1RfRU5VTV9GRUFUVVJFX1VOS05PV04QABIKCgZWQUxVRTEQARIKCgZWQUxVRTIQAhIKCgZWQUxVRTMQAxIKCgZWQUxVRTQQBBIKCgZWQUxVRTUQBRIKCgZWQUxVRTYQBhIKCgZWQUxVRTcQBxIKCgZWQUxVRTgQCBIKCgZWQUxVRTkQCRILCgdWQUxVRTEwEAoSCwoHVkFMVUUxMRALEgsKB1ZBTFVFMTIQDBILCgdWQUxVRTEzEA0SCwoHVkFMVUUxNBAOEgsKB1ZBTFVFMTUQDyrgAgoUVmFsdWVMaWZldGltZUZlYXR1cmUSHwobVEVTVF9WQUxVRV9MSUZFVElNRV9VTktOT1dOEAASHAoYVkFMVUVfTElGRVRJTUVfSU5IRVJJVEVEEAESTgoWVkFMVUVfTElGRVRJTUVfU1VQUE9SVBACGjIiMAidjQYQno0GGiJDdXN0b20gZmVhdHVyZSBkZXByZWNhdGlvbiB3YXJuaW5nIJ+NBhIkChxWQUxVRV9MSUZFVElNRV9FTVBUWV9TVVBQT1JUEAMaAiIAEiEKFVZBTFVFX0xJRkVUSU1FX0ZVVFVSRRAEGgYiBAidjQYSSQoZVkFMVUVfTElGRVRJTUVfREVQUkVDQVRFRBAFGioiKBCdjQYaIkN1c3RvbSBmZWF0dXJlIGRlcHJlY2F0aW9uIHdhcm5pbmcSJQoWVkFMVUVfTElGRVRJTUVfUkVNT1ZFRBAGGgkiBxDoByCdjQY6QgoEdGVzdBIbLmdvb2dsZS5wcm90b2J1Zi5GZWF0dXJlU2V0GI9OIAEoCzIQLnBiLlRlc3RGZWF0dXJlc1IEdGVzdEq7JQoHEgUHAPEBAQqUAgoBDBIDBwARMokCIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMjMgR29vZ2xl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DgoHBAECAAgUABIDSgRDCg4KBwQBAgAIFAESA0sEQwoOCgcEAQIACBQCEgNMBEEKDgoHBAECAAgUAxIDTQRMCg4KBwQBAgAIFAQSA04ETAoMCgQEAQIBEgRQAlUECgwKBQQBAgEGEgNQAg0KDAoFBAECAQESA1AOJQoMCgUEAQIBAxIDUCgpCg0KBQQBAgEIEgRQKlUDCg0KBgQBAgEIERIDUQQhCg4KBwQBAgEIEwASA1IEKQoOCgcEAQIBCBYBEgNTBDUKDgoHBAECAQgUABIDVARDCgwKBAQBAgISBFYCWwQKDAoFBAECAgYSA1YCDQoMCgUEAQICARIDVg4dCgwKBQQBAgIDEgNWICEKDQoFBAECAggSBFYiWwMKDQoGBAECAggREgNXBCEKDgoHBAECAggTABIDWAQhCg4KBwQBAgIIFgESA1kENQoOCgcEAQICCBQAEgNaBEMKDAoEBAECAxIEXAJhBAoMCgUEAQIDBhIDXAINCgwKBQQBAgMBEgNcDhsKDAoFBAECAwMSA1weHwoNCgUEAQIDCBIEXCBhAwoNCgYEAQIDCBESA10EIQoOCgcEAQIDCBMAEgNeBB8KDgoHBAECAwgWARIDXwQ1Cg4KBwQBAgMIFAASA2AEQwoMCgQEAQIEEgRiAmcECgwKBQQBAgQGEgNiAg0KDAoFBAECBAESA2IOGwoMCgUEAQIEAxIDYh4fCg0KBQQBAgQIEgRiIGcDCg0KBgQBAgQIERIDYwQhCg4KBwQBAgQIEwASA2QEHwoOCgcEAQIECBYBEgNlBDUKDgoHBAECBAgUABIDZgRDCgwKBAQBAgUSBGgCbQQKDAoFBAECBQYSA2gCDQoMCgUEAQIFARIDaA4aCgwKBQQBAgUDEgNoHR4KDQoFBAECBQgSBGgfbQMKDQoGBAECBQgREgNpBCEKDgoHBAECBQgTABIDagQeCg4KBwQBAgUIFgESA2sENQoOCgcEAQIFCBQAEgNsBEMKDAoEBAECBhIEbgJzBAoMCgUEAQIGBhIDbgINCgwKBQQBAgYBEgNuDiAKDAoFBAECBgMSA24jJAoNCgUEAQIGCBIEbiVzAwoNCgYEAQIGCBESA28EIQoOCgcEAQIGCBMAEgNwBCQKDgoHBAECBggWARIDcQQ1Cg4KBwQBAgYIFAASA3IEQwoMCgQEAQIHEgR0AnkECgwK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AgADEgMOGRoKDAoFBAACAAgSAw4bRgoOCgcEAAIACBUBEgMOHEUKDAoEBAACARIEDwIQLgoMCgUEAAIBBhIDDwIVCgwKBQQAAgEBEgMPFiUKDAoFBAACAQMSAw8oKQoMCgUEAAIBCBIDEAYtCg4KBwQAAgEIFQUSAxAHLGIIZWRpdGlvbnNw6AcKlCoKLmdvb2dsZS9wcm90b2J1Zi91bml0dGVzdF9wcm90bzNfb3B0aW9uYWwucHJvdG8SD3Byb3RvMl91bml0dGVzdBogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8iiQ0KElRlc3RQcm90bzNPcHRpb25hbBIqCg5vcHRpb25hbF9pbnQzMhgBIAEoBUgAUg1vcHRpb25hbEludDMyiAEBEioKDm9wdGlvbmFsX2ludDY0GAIgASgDSAFSDW9wdGlvbmFsSW50NjSIAQESLAoPb3B0aW9uYWxfdWludDMyGAMgASgNSAJSDm9wdGlvbmFsVWludDMyiAEBEiwKD29wdGlvbmFsX3VpbnQ2NBgEIAEoBEgDUg5vcHRpb25hbFVpbnQ2NIgBARIsCg9vcHRpb25hbF9zaW50MzIYBSABKBFIBFIOb3B0aW9uYWxTaW50MzKIAQESLAoPb3B0aW9uYWxfc2ludDY0GAYgASgSSAVSDm9wdGlvbmFsU2ludDY0iAEBEi4KEG9wdGlvbmFsX2ZpeGVkMzIYByABKAdIBlIPb3B0aW9uYWxGaXhlZDMyiAEBEi4KEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZIB1IPb3B0aW9uYWxGaXhlZDY0iAEBEjAKEW9wdGlvbmFsX3NmaXhlZDMyGAkgASgPSAhSEG9wdGlvbmFsU2ZpeGVkMzKIAQESMAoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBBICVIQb3B0aW9uYWxTZml4ZWQ2NIgBARIqCg5vcHRpb25hbF9mbG9hdBgLIAEoAkgKUg1vcHRpb25hbEZsb2F0iAEBEiwKD29wdGlvbmFsX2RvdWJsZRgMIAEoAUgLUg5vcHRpb25hbERvdWJsZYgBARIoCg1vcHRpb25hbF9ib29sGA0gASgISAxSDG9wdGlvbmFsQm9vbIgBARIsCg9vcHRpb25hbF9zdHJpbmcYDiABKAlIDVIOb3B0aW9uYWxTdHJpbmeIAQESKgoOb3B0aW9uYWxfYnl0ZXMYDyABKAxIDlINb3B0aW9uYWxCeXRlc4gBARIsCg1vcHRpb25hbF9jb3JkGBAgASgJQgIIAUgPUgxvcHRpb25hbENvcmSIAQESbgoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYEiABKAsyMS5wcm90bzJfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsLk5lc3RlZE1lc3NhZ2VIEFIVb3B0aW9uYWxOZXN0ZWRNZXNzYWdliAEBEmoKE2xhenlfbmVzdGVkX21lc3NhZ2UYEyABKAsyMS5wcm90bzJfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsLk5lc3RlZE1lc3NhZ2VCAigBSBFSEWxhenlOZXN0ZWRNZXNzYWdliAEBEmUKFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgOMi4ucHJvdG8yX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRFbnVtSBJSEm9wdGlvbmFsTmVzdGVkRW51bYgBARIlCg5zaW5ndWxhcl9pbnQzMhgWIAEoBVINc2luZ3VsYXJJbnQzMhIlCg5zaW5ndWxhcl9pbnQ2NBgXIAEoA1INc2luZ3VsYXJJbnQ2NBorCg1OZXN0ZWRNZXNzYWdlEhMKAmJiGAEgASgFSABSAmJiiAEBQgUKA19iYiJKCgpOZXN0ZWRFbnVtEg8KC1VOU1BFQ0lGSUVEEAASBwoDRk9PEAESBwoDQkFSEAISBwoDQkFaEAMSEAoDTkVHEP///////////wFCEQoPX29wdGlvbmFsX2ludDMyQhEKD19vcHRpb25hbF9pbnQ2NEISChBfb3B0aW9uYWxfdWludDMyQhIKEF9vcHRpb25hbF91aW50NjRCEgoQX29wdGlvbmFsX3NpbnQzMkISChBfb3B0aW9uYWxfc2ludDY0QhMKEV9vcHRpb25hbF9maXhlZDMyQhMKEV9vcHRpb25hbF9maXhlZDY0QhQKEl9vcHRpb25hbF9zZml4ZWQzMkIUChJfb3B0aW9uYWxfc2ZpeGVkNjRCEQoPX29wdGlvbmFsX2Zsb2F0QhIKEF9vcHRpb25hbF9kb3VibGVCEAoOX29wdGlvbmFsX2Jvb2xCEgoQX29wdGlvbmFsX3N0cmluZ0IRCg9fb3B0aW9uYWxfYnl0ZXNCEAoOX29wdGlvbmFsX2NvcmRCGgoYX29wdGlvbmFsX25lc3RlZF9tZXNzYWdlQhYKFF9sYXp5X25lc3RlZF9tZXNzYWdlQhcKFV9vcHRpb25hbF9uZXN0ZWRfZW51bSKuAgoZVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZRJfCg5uZXN0ZWRfbWVzc2FnZRgBIAEoCzI4LnByb3RvMl91bml0dGVzdC5UZXN0UHJvdG8zT3B0aW9uYWxNZXNzYWdlLk5lc3RlZE1lc3NhZ2VSDW5lc3RlZE1lc3NhZ2USdQoXb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UYAiABKAsyOC5wcm90bzJfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZS5OZXN0ZWRNZXNzYWdlSABSFW9wdGlvbmFsTmVzdGVkTWVzc2FnZYgBARodCg1OZXN0ZWRNZXNzYWdlEgwKAXMYASABKAlSAXNCGgoYX29wdGlvbmFsX25lc3RlZF9tZXNzYWdlIskBChhQcm90bzNPcHRpb25hbEV4dGVuc2lvbnMySwoPZXh0X25vX29wdGlvbmFsEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGIjN2akBIAEoBVINZXh0Tm9PcHRpb25hbDJSChFleHRfd2l0aF9vcHRpb25hbBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiJzdmpASABKAVSD2V4dFdpdGhPcHRpb25hbIgBAToMwOjMzQoIyOjMzQoQQjgKIWNvbS5nb29nbGUucHJvdG9idWYudGVzdGluZy5wcm90b1ABqgIQUHJvdG9idWZVbml0dGVzdErjFwoGEgQHAE0BCpQCCgEMEgMHABIyiQIgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZQogbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElD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cGxhaW5PcHRpb246XwoYcnVudGltZV9yZXRlbnRpb25fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGJyS6fABIAEoBUIDiAEBUhZydW50aW1lUmV0ZW50aW9uT3B0aW9uOl0KF3NvdXJjZV9yZXRlbnRpb25fb3B0aW9uEhwuZ29vZ2xlLnByb3RvYnVmLkZpbGVPcHRpb25zGNSs3/ABIAEoBUIDiAECUhVzb3VyY2VSZXRlbnRpb25PcHRpb246YgoLZmlsZV9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYgPLe8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgpmaWxlT3B0aW9uOmwKEHJlcGVhdGVkX29wdGlvbnMSHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYkv7b8AEgAygLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg9yZXBlYXRlZE9wdGlvbnM6gQEKFmV4dGVuc2lvbl9yYW5nZV9vcHRpb24SJi5nb29nbGUucHJvdG9idWYuRXh0ZW5zaW9uUmFuZ2VPcHRpb25zGITz2/ABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVIUZXh0ZW5zaW9uUmFuZ2VPcHRpb246awoObWVzc2FnZV9vcHRpb24SHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY0+jb8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg1tZXNzYWdlT3B0aW9uOmUKDGZpZWxkX29wdGlvbhIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMYo9fN8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgtmaWVsZE9wdGlvbjplCgxvbmVvZl9vcHRpb24SHS5nb29nbGUucHJvdG9idWYuT25lb2ZPcHRpb25zGLH7xvABIAEoCzIfLnByb3RvMl91bml0dGVzdC5PcHRpb25zTWVzc2FnZVILb25lb2ZPcHRpb246YgoLZW51bV9vcHRpb24SHC5nb29nbGUucHJvdG9idWYuRW51bU9wdGlvbnMY76PF8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUgplbnVtT3B0aW9uOnIKEWVudW1fZW50cnlfb3B0aW9uEiEuZ29vZ2xlLnByb3RvYnVmLkVudW1WYWx1ZU9wdGlvbnMY2pvF8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg9lbnVtRW50cnlPcHRpb246awoOc2VydmljZV9vcHRpb24SHy5nb29nbGUucHJvdG9idWYuU2VydmljZU9wdGlvbnMY/bDB8AEgASgLMh8ucHJvdG8yX3VuaXR0ZXN0Lk9wdGlvbnNNZXNzYWdlUg1zZXJ2aWNlT3B0aW9uOmgKDW1ldGhvZF9vcHRpb24SHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxjshb/wASABKAsyHy5wcm90bzJfdW5pdHRlc3QuT3B0aW9uc01lc3NhZ2VSDG1ldGhvZE9wdGlvbjozCgFpEhkucHJvdG8yX3VuaXR0ZXN0LkV4dGVuZGVlGAEgASgFQgqauu2EDwQIARACUgFpQjOqAhBQcm90b2J1ZlVuaXR0ZXN0kvHfhQ8ECAEQAoKQ94UPBAgBEALgkcmGDwKwrOOGDwFKuxkKBxIFBwC4AQEKlAIKAQwSAwcAEjKJAiBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlCiBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgb3IgYXQKIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL29wZW4tc291cmNlL2xpY2Vuc2VzL2JzZAoKCAoBAhIDCQAYCgkKAgMAEgMLACoKCAoBCBIDDQAtCgkKAgglEgMNAC0KQAoBBxIEEAAWARo1IFJldGVudGlvbiBhdHRyaWJ1dGVzIHNldCBkaXJlY3RseSBvbiBjdXN0b20gb3B0aW9ucwoKCQoCBwASAxECKgoKCgMHAAISAxAHIgoKCgMHAAQSAxECCgoKCgMHAAUSAxELEAoKCgMHAAESAxERHQoKCgMHAAMSAxEgKQoKCgIHARIEEgITJgoKCgMHAQISAxAHIgoKCgMHAQQSAxICCgoKCgMHAQUSAxILEAoKCgMHAQESAxIRKQoKCgMHAQMSAxIsNQoKCgMHAQgSAxMGJQoLCgQHAQgREgMTByQKCgoCBwISBBQCFSUKCgoDBwICEgMQByIKCgoDBwIEEgMUAgoKCgoDBwIFEgMUCxAKCgoDBwIBEgMUESgKCgoDBwIDEgMUKzQKCgoDBwIIEgMVBiQKCwoEBwIIERIDFQcjCggKAQgSAxgAGgoNCgYIxrXs8AESAxgAGgoICgEIEgMZACYKDQoGCJyS6fABEgMZACYKCAoBCBIDGgAlCkgKAgQAEgQdACEBGjwgUmV0ZW50aW9uIGF0dHJpYnV0ZXMgc2V0IG9uIGZpZWxkcyBuZXN0ZWQgd2l0aGluIGEgbWVzc2FnZQoKCgoDBAABEgMdCBYKCwoEBAACABIDHgIhCgwKBQQAAgAEEgMeAgoKDAoFBAACAAUSAx4LEAoMCgUEAAIAARIDHhEcCgwKBQQAAgADEgMeHyAKCwoEBAACARIDHwJNCgwKBQQAAgEEEgMfAgoKDAoFBAACAQUSAx8LEAoMCgUEAAIBARIDHxEoCgwKBQQAAgEDEgMfKywKDAoFBAACAQgSAx8tTAoNCgYEAAIBCBESAx8uSwoLCgQEAAICEgMgAksKDAoFBAACAgQSAyACCgoMCgUEAAICBRIDIAsQCgwKBQQAAgIBEgMgEScKDAoFBAACAgMSAyAqKwoMCgUEAAICCBIDICxKCg0KBgQAAgIIERIDIC1JCgkKAQcSBCMAJQEKCQoCBwMSAyQCMgoKCgMHAwISAyMHIgoKCgMHAwQSAyQCCgoKCgMHAwYSAyQLGQoKCgMHAwESAyQaJQoKCgMHAwMSAyQoMQoJCgEIEgQnACsCCg4KBgiA8t7wARIEJwArAgpHCgEHEgQuADABGjwgUmV0ZW50aW9uIGF0dHJpYnV0ZSBuZXN0ZWQgaW5zaWRlIGEgcmVwZWF0ZWQgbWVzc2FnZSBmaWVsZAoKCQoCBwQSAy8CNwoKCgMHBAISAy4HIgoKCgMHBAQSAy8CCgoKCgMHBAYSAy8LGQoKCgMHBAESAy8aKgoKCgMHBAMSAy8tNgoJCgEIEgQyADYCCg8KBwiS/tvwAQASBDIANgIKCQoBBxIEOAA6AQoJCgIHBRIDOQI9CgoKAwcFAhIDOAcsCgoKAwcFBBIDOQIKCgoKAwcFBhIDOQsZCgoKAwcFARIDORowCgoKAwcFAxIDOTM8CgkKAQcSBDwAPgEKCQoCBwYSAz0CNQoKCgMHBgISAzwHJQoKCgMHBgQSAz0CCgoKCgMHBgYSAz0LGQoKCgMHBgESAz0aKAoKCgMHBgMSAz0rNAoJCgEHEgRAAEIBCgkKAgcHEgNBAjMKCgoDBwcCEgNAByMKCgoDBwcEEgNBAgoKCgoDBwcGEgNBCxkKCgoDBwcBEgNBGiYKCgoDBwcDEgNBKTIKCQoBBxIERABGAQoJCgIHCBIDRQIzCgoKAwcIAhIDRAcjCgoKAwcIBBIDRQIKCgoKAwcIBhIDRQsZCgoKAwcIARIDRRomCgoKAwcIAxIDRSkyCgkKAQcSBEgASgEKCQoCBwkSA0kCMgoKCgMHCQISA0gHIgoKCgMHCQQSA0kCCgoKCgMHCQYSA0kLGQoKCgMHCQESA0kaJQoKCgMHCQMSA0koMQoJCgEHEgRMAE4BCgkKAgcKEgNNAjgKCgoDBwoCEgNMBycKCgoDBwoEEgNNAgoKCgoDBwoGEgNNCxkKCgoDBwoBEgNNGisKCgoDBwoDEgNNLjcKCQoBBxIEUABSAQoJCgIHCxIDUQI1CgoKAwcLAhIDUAclCgoKAwcLBBIDUQIKCgoKAwcLBhIDUQsZCgoKAwcLARIDURooCgoKAwcLAxIDUSs0CgkKAQcSBFQAVgEKCQoCBwwSA1UCNAoKCgMHDAISA1QHJAoKCgMHDAQSA1UCCgoKCgMHDAYSA1ULGQoKCgMHDAESA1UaJwoKCgMHDAMSA1UqMwoKCgIEARIEWABaAQoKCgMEAQESA1gIEAoKCgMEAQUSA1kCEgoLCgQEAQUAEgNZDQ4KDAoFBAEFAAESA1kNDgoMCgUEAQUAAhIDWQ0OCgsKBAQBBQESA1kQEQoMCgUEAQUBARIDWRARCgwKBQQBBQECEgNZEBEKCQoBBxIEXABiAQoKCgIHDRIEXQJhBQoKCgMHDQISA1wHDwoKCgMHDQQSA10CCgoKCgMHDQUSA10LEAoKCgMHDQESA10REgoKCgMHDQMSA10VFgoLCgMHDQgSBF0XYQQKEAoIBw0Io9fN8AESBF0YYQMKCwoCBAISBWQAmgEBCgoKAwQCARIDZAgXCgsKAwQCBxIEZQJpBAoQCggEAgfT6NvwARIEZQJpBAoMCgQEAgMAEgRrAnEDCgwKBQQCAwABEgNrChcKDQoFBAIDAAcSBGwEcAYKEgoKBAIDAAfT6NvwARIEbARwBgoMCgQEAgQAEgRzAnsDCgwKBQQCBAABEgNzBxEKDQoFBAIEAAMSBHQEeAYKEgoKBAIEAAPvo8XwARIEdAR4BgoNCgYEAgQAAgASA3oEFwoOCgcEAgQAAgABEgN6BBIKDgoHBAIEAAIAAhIDehUWCg0KBAQCAgASBX0CgQEFCgwKBQQCAgAEEgN9AgoKDAoFBAICAAUSA30LEAoMCgUEAgIAARIDfRESCgwKBQQCAgADEgN9FRYKDgoFBAICAAgSBX0XgQEEChMKCgQCAgAIo9fN8AESBX0YgQEDCg4KBAQCCAASBoMBAosBAwoNCgUEAggAARIEgwEICQoPCgUEAggAAhIGhAEEiAEGChQKCgQCCAACsfvG8AESBoQBBIgBBgoMCgQEAgIBEgSKAQQQCg0KBQQCAgEFEgSKAQQJCg0KBQQCAgEBEgSKAQoLCg0KBQQCAgEDEgSKAQ4PCg0KAwQCBRIGjQECkQEFCgwKBAQCBQASBI0BDRYKDQoFBAIFAAESBI0BDQ8KDQoFBAIFAAISBI0BExYKDwoFBAIFAAMSBo0BF5EBBAoUCgoEAgUAA4Tz2/ABEgaNARiRAQMKDQoDBAIGEgaTAQKZAQMKDgoEBAIGABIGlAEEmAEHCg0KBQQCBgACEgSTAQkRCg0KBQQCBgAEEgSUAQQMCg0KBQQCBgAFEgSUAQ0TCg0KBQQCBgABEgSUARQVCg0KBQQCBgADEgSUARgZCg8KBQQCBgAIEgaUARqYAQYKFAoKBAIGAAij183wARIGlAEbmAEFCgwKAgUAEgacAQCoAQEKCwoDBQABEgScAQURCg0KAwUAAxIGnQECoQEEChIKCAUAA++jxfABEgadAQKhAQQKDgoEBQACABIGowECpwEFCg0KBQUAAgABEgSjAQITCg0KBQUAAgACEgSjARYXCg8KBQUAAgADEgajARinAQQKFAoKBQACAAPam8XwARIGowEZpwEDCgwKAgYAEgaqAQC4AQEKCwoDBgABEgSqAQgPCg0KAwYAAxIGqwECrwEEChIKCAYAA/2wwfABEgarAQKvAQQKDgoEBgACABIGsQECtwEDCg0KBQYAAgABEgSxAQYNCg0KBQYAAgACEgSxAQ4dCg0KBQYAAgADEgSxASg3Cg8KBQYAAgAEEgayAQS2AQYKFAoKBgACAATshb/wARIGsgEEtgEG