@evalops/sdk-ts 0.1.104 → 0.1.105

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,7 @@ import { file_objectives_v1_objectives } from "../../objectives/v1/objectives_pb
11
11
  /**
12
12
  * Describes the file agentruntime/v1/runtime.proto.
13
13
  */
14
- export const file_agentruntime_v1_runtime = /*@__PURE__*/ fileDesc("Ch1hZ2VudHJ1bnRpbWUvdjEvcnVudGltZS5wcm90bxIPYWdlbnRydW50aW1lLnYxIqMDChVSdW50aW1lQ2hhbm5lbENvbnRleHQSQwoMY2hhbm5lbF9raW5kGAEgASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsS2luZEIIukgFggECEAESHQoVcHJvdmlkZXJfd29ya3NwYWNlX2lkGAIgASgJEhIKCmNoYW5uZWxfaWQYAyABKAkSEQoJdGhyZWFkX2lkGAQgASgJEhIKCm1lc3NhZ2VfaWQYBSABKAkSEAoIYWN0b3JfaWQYBiABKAkSEQoJcGVybWFsaW5rGAcgASgJEkoKCmF0dHJpYnV0ZXMYCCADKAsyNi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxDb250ZXh0LkF0dHJpYnV0ZXNFbnRyeRIYChBhY3Rvcl9jaGFubmVsX2lkGAkgASgJEhcKD2FjdG9yX2VudGl0eV9pZBgKIAEoCRIUCgxwcmluY2lwYWxfaWQYCyABKAkaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEijQIKE1J1bnRpbWVXb3JrRW52ZWxvcGUSEwoCaWQYASABKAlCB7pIBHICEAESQAoEa2luZBgCIAEoDjIoLmFnZW50cnVudGltZS52MS5SdW50aW1lV29ya0VudmVsb3BlS2luZEIIukgFggECEAESDwoHcm9vdF9pZBgDIAEoCRIRCglwYXJlbnRfaWQYBCABKAkSSAoKYXR0cmlidXRlcxgFIAMoCzI0LmFnZW50cnVudGltZS52MS5SdW50aW1lV29ya0VudmVsb3BlLkF0dHJpYnV0ZXNFbnRyeRoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKoAQobUnVudGltZVByb2FjdGl2ZVNvdXJjZUV2ZW50Eg4KBnN0cmVhbRgBIAEoCRIPCgdzdWJqZWN0GAIgASgJEhAKCHNlcXVlbmNlGAMgASgEEhAKCGV2ZW50X2lkGAQgASgJEhQKDGV2ZW50X2ZhbWlseRgFIAEoCRISCgpldmVudF90eXBlGAYgASgJEhoKEnByb3ZpZGVyX29iamVjdF9pZBgHIAEoCSKUAQoWUnVudGltZVByb2FjdGl2ZVBvbGljeRIZCgx3YWtlX2VuYWJsZWQYASABKAhIAIgBARIVCg10cmlnZ2VyX2tpbmRzGAIgAygJEh0KFWFsbG93X2N1c3RvbWVyX2ZhY2luZxgDIAEoCBIYChBwb3N0X3J1bl9zdGFydGVkGAQgASgIQg8KDV93YWtlX2VuYWJsZWQibQoaUnVudGltZVNvdXJjZUhlYWx0aFN1bW1hcnkSDgoGc3RhdHVzGAEgASgJEhcKD2NoZWNrZWRfc291cmNlcxgCIAMoCRIVCg1zdGFsZV9zb3VyY2VzGAMgAygJEg8KB3N1bW1hcnkYBCABKAki3AMKGlJ1bnRpbWVDZXJlYnJvRmFjdHNDb250ZXh0EhAKCHByb3ZpZGVyGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRINCgVxdWVyeRgDIAEoCRIRCgl0aGluZ19pZHMYBCADKAkSEAoIZmFjdF9pZHMYBSADKAkSEQoJZXZlbnRfaWRzGAYgAygJEkoKFXNvdXJjZV9oZWFsdGhfc3VtbWFyeRgHIAEoCzIrLmFnZW50cnVudGltZS52MS5SdW50aW1lU291cmNlSGVhbHRoU3VtbWFyeRIcChRiZWxpZWZfZGVidWdfc3VtbWFyeRgIIAEoCRISCgpyb2xsb3V0X2lkGAkgASgJEhcKD3JvbGxvdXRfc3VtbWFyeRgKIAEoCRIWCg5yb2xsb3V0X3Jlc3VsdBgLIAEoCRJoChByZXRyaWV2YWxfY291bnRzGAwgAygLMkAuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDZXJlYnJvRmFjdHNDb250ZXh0LlJldHJpZXZhbENvdW50c0VudHJ5Qgy6SAmaAQYqBCICKAAaNgoUUmV0cmlldmFsQ291bnRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgDOgI4ASLqAgoXUnVudGltZVByb2FjdGl2ZUNvbnRleHQSGQoRcHJvYWN0aXZlX3J1bnRpbWUYASABKAgSGAoQcHJvYWN0aXZlX2luZ2VzdBgCIAEoCRJCCgxzb3VyY2VfZXZlbnQYAyABKAsyLC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVByb2FjdGl2ZVNvdXJjZUV2ZW50EhEKCXRoaW5nX2lkcxgEIAMoCRIUCgxhY3Rpb25fY2xhc3MYBSABKAkSEgoKcmlza19sZXZlbBgGIAEoCRIcChRleHRlcm5hbF9zaWRlX2VmZmVjdBgHIAEoCBJCCg1mYWN0c19jb250ZXh0GAggASgLMisuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDZXJlYnJvRmFjdHNDb250ZXh0EjcKBnBvbGljeRgJIAEoCzInLmFnZW50cnVudGltZS52MS5SdW50aW1lUHJvYWN0aXZlUG9saWN5IooBChBSdW50aW1lUmVkYWN0aW9uEj0KBGtpbmQYASABKA4yJS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVJlZGFjdGlvbktpbmRCCLpIBYIBAhABEhIKCmZpZWxkX3BhdGgYAiABKAkSEwoLcmVwbGFjZW1lbnQYAyABKAkSDgoGcmVhc29uGAQgASgJIrUDChlSdW50aW1lVmlzaWJpbGl0eU1ldGFkYXRhEkAKBWxldmVsGAEgASgOMicuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXNpYmlsaXR5TGV2ZWxCCLpIBYIBAhABEkIKCWF1ZGllbmNlcxgCIAMoDjIgLmFnZW50cnVudGltZS52MS5SdW50aW1lQXVkaWVuY2VCDbpICpIBByIFggECEAESQgoLc2Vuc2l0aXZpdHkYAyABKA4yIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVNlbnNpdGl2aXR5Qgi6SAWCAQIQARIUCgxzYWZlX3N1bW1hcnkYBCABKAkSNQoKcmVkYWN0aW9ucxgFIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uEk4KCmF0dHJpYnV0ZXMYBiADKAsyOi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpc2liaWxpdHlNZXRhZGF0YS5BdHRyaWJ1dGVzRW50cnkaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEioAMKEkNoYW5uZWxBY3Rpb25BY3RvchJDCgxjaGFubmVsX2tpbmQYASABKA4yIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxLaW5kQgi6SAWCAQIQARIdChVwcm92aWRlcl93b3Jrc3BhY2VfaWQYAiABKAkSEgoKY2hhbm5lbF9pZBgDIAEoCRIRCgl0aHJlYWRfaWQYBCABKAkSEgoKbWVzc2FnZV9pZBgFIAEoCRIRCglhY3Rpb25faWQYBiABKAkSEwoLY2FsbGJhY2tfaWQYByABKAkSGAoQYWN0b3JfY2hhbm5lbF9pZBgIIAEoCRIXCg9hY3Rvcl9lbnRpdHlfaWQYCSABKAkSFAoMcHJpbmNpcGFsX2lkGAogASgJEkcKCmF0dHJpYnV0ZXMYCyADKAsyMy5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvbkFjdG9yLkF0dHJpYnV0ZXNFbnRyeRoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLRBwoUQ2hhbm5lbEFjdGlvblJlY2VpcHQSCgoCaWQYASABKAkSHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEiAKD2lkZW1wb3RlbmN5X2tleRgDIAEoCUIHukgEcgIQARIUCgxyZXF1ZXN0X2hhc2gYBCABKAkSMgoMc3VyZmFjZV90eXBlGAUgASgOMhIuY29tbW9uLnYxLlN1cmZhY2VCCLpIBYIBAhABEkEKC2FjdGlvbl9raW5kGAYgASgOMiIuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxBY3Rpb25LaW5kQgi6SAWCAQIQARJHCgt0YXJnZXRfa2luZBgHIAEoDjIoLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uVGFyZ2V0S2luZEIIukgFggECEAESEQoJdGFyZ2V0X2lkGAggASgJEg4KBnJ1bl9pZBgJIAEoCRIPCgd3YWl0X2lkGAogASgJEhsKE2FwcHJvdmFsX3JlcXVlc3RfaWQYCyABKAkSFAoMb2JqZWN0aXZlX2lkGAwgASgJEjIKBWFjdG9yGA0gASgLMiMuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxBY3Rpb25BY3RvchIoCgdwYXlsb2FkGA4gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBJbChVhdXRob3JpemF0aW9uX291dGNvbWUYDyABKA4yMi5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvbkF1dGhvcml6YXRpb25PdXRjb21lQgi6SAWCAQIQARJTChFleGVjdXRpb25fb3V0Y29tZRgQIAEoDjIuLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uRXhlY3V0aW9uT3V0Y29tZUIIukgFggECEAESUQoQZGVsaXZlcnlfb3V0Y29tZRgRIAEoDjItLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uRGVsaXZlcnlPdXRjb21lQgi6SAWCAQIQARIOCgZyZWFzb24YEiABKAkSFAoMZXJyb3JfcmVhc29uGBMgASgJEi4KCmNyZWF0ZWRfYXQYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYFSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkYKGmNvZGV4X2ludGVyYWN0aW9uX2RlY2lzaW9uGBYgASgLMiIuY29kZXgudjEuQ29kZXhJbnRlcmFjdGlvbkRlY2lzaW9uIsEFChFOb3JtYWxpemVkVHJpZ2dlchIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESGQoIYWdlbnRfaWQYAiABKAlCB7pIBHICEAESEwoHc3VyZmFjZRgDIAEoCUICGAESEgoKY2hhbm5lbF9pZBgEIAEoCRIgCg9pZGVtcG90ZW5jeV9rZXkYBSABKAlCB7pIBHICEAESFwoPc291cmNlX2V2ZW50X2lkGAYgASgJEh0KEXNvdXJjZV9ldmVudF90eXBlGAcgASgJQgIYARIQCghhY3Rvcl9pZBgIIAEoCRIWCg5jb3JyZWxhdGlvbl9pZBgJIAEoCRIoCgdwYXlsb2FkGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIvCgtyZWNlaXZlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMgoMc3VyZmFjZV90eXBlGAwgASgOMhIuY29tbW9uLnYxLlN1cmZhY2VCCLpIBYIBAhABEj8KD2NoYW5uZWxfY29udGV4dBgNIAEoCzImLmFnZW50cnVudGltZS52MS5SdW50aW1lQ2hhbm5lbENvbnRleHQSQwoMdHJpZ2dlcl9raW5kGA4gASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVUcmlnZ2VyS2luZEIIukgFggECEAESOwoNd29ya19lbnZlbG9wZRgPIAEoCzIkLmFnZW50cnVudGltZS52MS5SdW50aW1lV29ya0VudmVsb3BlEi4KCmNvZGV4X3dvcmsYECABKAsyGi5jb2RleC52MS5Db2RleFdvcmtSZXF1ZXN0EkMKEXByb2FjdGl2ZV9jb250ZXh0GBEgASgLMiguYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVQcm9hY3RpdmVDb250ZXh0Iv4BCg5SdW50aW1lQ29udGV4dBI4CgxkZXBlbmRlbmNpZXMYASADKAsyIi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZURlcGVuZGVuY3kSQwoKYXR0cmlidXRlcxgCIAMoCzIvLmFnZW50cnVudGltZS52MS5SdW50aW1lQ29udGV4dC5BdHRyaWJ1dGVzRW50cnkSOgoNdmlydHVhbF9maWxlcxgDIAMoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEijwQKElJ1bnRpbWVWaXJ0dWFsRmlsZRIVCgRwYXRoGAEgASgJQge6SARyAhABEhIKCm1lZGlhX3R5cGUYAiABKAkSDwoHY29udGVudBgDIAEoCRIWCg5zb3VyY2Vfc2VydmljZRgEIAEoCRIbChNzb3VyY2VfcmVmZXJlbmNlX2lkGAUgASgJEkMKCG1ldGFkYXRhGAYgAygLMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZS5NZXRhZGF0YUVudHJ5EkEKCnByb3ZlbmFuY2UYByABKAsyLS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlUHJvdmVuYW5jZRJCCgtzZW5zaXRpdml0eRgIIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lU2Vuc2l0aXZpdHlCCLpIBYIBAhABElQKD3JlZGFjdGlvbl9zdGF0ZRgJIAEoDjIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWRhY3Rpb25TdGF0ZUIIukgFggECEAESNQoKcmVkYWN0aW9ucxgKIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKQAwocUnVudGltZVZpcnR1YWxGaWxlUHJvdmVuYW5jZRIYChBwcm9kdWNlcl9zZXJ2aWNlGAEgASgJEhUKDXByb2R1Y2VyX2tpbmQYAiABKAkSGwoTc291cmNlX3JlZmVyZW5jZV9pZBgDIAEoCRIYChBydW50aW1lX2V2ZW50X2lkGAQgASgJEhMKC2FydGlmYWN0X2lkGAUgASgJEg8KB3N0ZXBfaWQYBiABKAkSGQoRdG9vbF9leGVjdXRpb25faWQYByABKAkSFAoMaHlkcmF0aW9uX2lkGAggASgJEhYKDnRyYW5zYWN0aW9uX2lkGAkgASgJEhQKDHByb21vdGlvbl9pZBgKIAEoCRIXCg9ldmlkZW5jZV9oYW5kbGUYCyABKAkSEAoIdHJhY2VfaWQYDCABKAkSDwoHc3Bhbl9pZBgNIAEoCRIbChNwYXJlbnRfcmV2aXNpb25faWRzGA4gAygJEhMKC3Byb3ZpZGVyX2lkGA8gASgJEhUKDWNvbm5lY3Rpb25faWQYECABKAki/AgKF1J1bnRpbWVWaXJ0dWFsRmlsZUVudHJ5EgwKBHBhdGgYASABKAkSEgoKbWVkaWFfdHlwZRgCIAEoCRIWCg5zb3VyY2Vfc2VydmljZRgDIAEoCRIbChNzb3VyY2VfcmVmZXJlbmNlX2lkGAQgASgJEkgKCG1ldGFkYXRhGAUgAygLMjYuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUVudHJ5Lk1ldGFkYXRhRW50cnkSGwoKc2l6ZV9ieXRlcxgGIAEoA0IHukgEIgIoABIWCg5jb250ZW50X3NoYTI1NhgHIAEoCRIZChFjb250ZW50X3RydW5jYXRlZBgIIAEoCBINCgVtb3VudBgJIAEoCRIMCgRraW5kGAogASgJEhMKC3Blcm1pc3Npb25zGAsgASgJEgwKBHZpZXcYDCABKAkSEwoLcmV2aXNpb25faWQYDSABKAkSGgoScGFyZW50X3JldmlzaW9uX2lkGA4gASgJEhMKC3Byb3ZpZGVyX2lkGA8gASgJEhUKDWNvbm5lY3Rpb25faWQYECABKAkSFAoMY2FjaGVfcG9saWN5GBEgASgJEg4KBnBvbGljeRgSIAEoCRIMCgRsYXp5GBMgASgIEiEKEHNlY3JldF9yZWZfY291bnQYFCABKAVCB7pIBBoCKAASFQoNY2VyZWJyb19pbmRleBgVIAEoCRIXCg9jb250ZW50X2FkZHJlc3MYFiABKAkSQQoKcHJvdmVuYW5jZRgXIAEoCzItLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVQcm92ZW5hbmNlEkIKC3NlbnNpdGl2aXR5GBggASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVTZW5zaXRpdml0eUIIukgFggECEAESVAoPcmVkYWN0aW9uX3N0YXRlGBkgASgOMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlZGFjdGlvblN0YXRlQgi6SAWCAQIQARI1CgpyZWRhY3Rpb25zGBogAygLMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVSZWRhY3Rpb24SSQoJb3BlcmF0aW9uGBsgASgOMiwuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZU9wZXJhdGlvbkIIukgFggECEAESEQoJdG9tYnN0b25lGBwgASgIEhMKC3JlbmFtZV9mcm9tGB0gASgJEhEKCXJlbmFtZV90bxgeIAEoCRIUCgxjYXBhYmlsaXRpZXMYHyADKAkSEAoId3JpdGFibGUYICABKAgSEQoJcmVhZF9vbmx5GCEgASgIEhEKCWdlbmVyYXRlZBgiIAEoCBIXCg9ldmlkZW5jZV9iYWNrZWQYIyABKAgSGgoSZXh0ZXJuYWxseV9pbmRleGVkGCQgASgIGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKPAgoXUnVudGltZVZpcnR1YWxGaWxlTWF0Y2gSDAoEcGF0aBgBIAEoCRIcCgtsaW5lX251bWJlchgCIAEoBUIHukgEGgIoABIPCgdzbmlwcGV0GAMgASgJEg0KBW1vdW50GAQgASgJEhYKDnNvdXJjZV9zZXJ2aWNlGAUgASgJEhYKDmJlZm9yZV9jb250ZXh0GAYgAygJEhUKDWFmdGVyX2NvbnRleHQYByADKAkSFgoFc2NvcmUYCCABKAVCB7pIBBoCKAASFQoNbWF0Y2hfcmVhc29ucxgJIAMoCRIMCgR2aWV3GAogASgJEgwKBGtpbmQYCyABKAkSFgoOdHJhbnNhY3Rpb25faWQYDCABKAkiwwEKEVJ1bnRpbWVEZXBlbmRlbmN5EhgKB3NlcnZpY2UYASABKAlCB7pIBHICEAESDwoHcHVycG9zZRgCIAEoCRIQCghyZXF1aXJlZBgDIAEoCBISCgZzdGF0dXMYBCABKAlCAhgBEhQKDHJlZmVyZW5jZV9pZBgFIAEoCRJHCgtzdGF0dXNfdHlwZRgGIAEoDjIoLmFnZW50cnVudGltZS52MS5SdW50aW1lRGVwZW5kZW5jeVN0YXR1c0IIukgFggECEAEiXwoPQWdlbnRSdW5MaW5rYWdlEg4KBnJ1bl9pZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEAoIYWdlbnRfaWQYAyABKAkSFAoMb2JqZWN0aXZlX2lkGAQgASgJInkKE1J1bnRpbWVUcmFjZUNvbnRleHQSEAoIdHJhY2VfaWQYASABKAkSDwoHc3Bhbl9pZBgCIAEoCRIWCg5wYXJlbnRfc3Bhbl9pZBgDIAEoCRITCgt0cmFjZXBhcmVudBgEIAEoCRISCgp0cmFjZXN0YXRlGAUgASgJIokLCghBZ2VudFJ1bhIKCgJpZBgBIAEoCRIzCgd0cmlnZ2VyGAIgASgLMiIuYWdlbnRydW50aW1lLnYxLk5vcm1hbGl6ZWRUcmlnZ2VyEi0KBXN0YXRlGAMgASgOMh4uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RhdGUSHwoFYWdlbnQYBCABKAsyEC5hZ2VudHMudjEuQWdlbnQSLAoMYWdlbnRfY29uZmlnGAUgASgLMhYuYWdlbnRzLnYxLkFnZW50Q29uZmlnEisKCW9iamVjdGl2ZRgGIAEoCzIYLm9iamVjdGl2ZXMudjEuT2JqZWN0aXZlEjAKB2NvbnRleHQYByABKAsyHy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNvbnRleHQSFAoMd29ya2VyX3F1ZXVlGAggASgJEhUKDWVycm9yX21lc3NhZ2UYCSABKAkSLgoKY3JlYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMQoHbGlua2FnZRgMIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USDwoHYXR0ZW1wdBgPIAEoBRIUCgxtYXhfYXR0ZW1wdHMYECABKAUSLQoFbGVhc2UYESABKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MZWFzZRI+ChFsYXRlc3RfY2hlY2twb2ludBgSIAEoCzIjLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNoZWNrcG9pbnQSLAoFc3RlcHMYEyADKAsyHS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdGVwEiwKBXdhaXRzGBQgAygLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdBI0CglhcnRpZmFjdHMYFSADKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdBIsCgVjb3N0cxgWIAMoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNvc3QSPQoOc3RyZWFtX2N1cnNvcnMYFyADKAsyJS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdHJlYW1DdXJzb3ISLQoJcXVldWVkX2F0GBggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpzdGFydGVkX2F0GBkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp3YWl0aW5nX2F0GBogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxjb21wbGV0ZWRfYXQYGyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDGNhbmNlbGxlZF9hdBgcIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMQoNbmV4dF9yZXRyeV9hdBgdIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNAoQZGVhZF9sZXR0ZXJlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoTY2FuY2VsbGF0aW9uX3JlYXNvbhgfIAEoCRIaChJkZWFkX2xldHRlcl9yZWFzb24YICABKAkSOAoLY2hlY2twb2ludHMYISADKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50EjsKDXRyYWNlX2NvbnRleHQYIiABKAsyJC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVRyYWNlQ29udGV4dCKpAgoNQWdlbnRSdW5MZWFzZRIKCgJpZBgBIAEoCRIxCgdsaW5rYWdlGAIgASgLMiAuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGlua2FnZRIRCgl3b3JrZXJfaWQYBiABKAkSDQoFdG9rZW4YByABKAkSFAoMd29ya2VyX3F1ZXVlGAggASgJEg8KB2F0dGVtcHQYCSABKAUSLgoKY2xhaW1lZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMaGVhcnRiZWF0X2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpleHBpcmVzX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCK/BAoMQWdlbnRSdW5TdGVwEgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEgwKBG5hbWUYBiABKAkSEAoEa2luZBgHIAEoCUICGAESMQoFc3RhdGUYCCABKA4yIi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdGVwU3RhdGUSDwoHYXR0ZW1wdBgJIAEoBRImCgVpbnB1dBgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSJwoGb3V0cHV0GAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIVCg1lcnJvcl9tZXNzYWdlGAwgASgJEhUKDWNoZWNrcG9pbnRfaWQYDSABKAkSLgoKc3RhcnRlZF9hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLAoIZW5kZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEj4KCXN0ZXBfa2luZBgQIAEoDjIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1blN0ZXBLaW5kQgi6SAWCAQIQARIyCg5jb2RleF9wcm9ncmVzcxgRIAEoCzIaLmNvZGV4LnYxLkNvZGV4UnVuUHJvZ3Jlc3MSOwoNdHJhY2VfY29udGV4dBgSIAEoCzIkLmFnZW50cnVudGltZS52MS5SdW50aW1lVHJhY2VDb250ZXh0IuYBChJBZ2VudFJ1bkNoZWNrcG9pbnQSCgoCaWQYASABKAkSMQoHbGlua2FnZRgCIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USDwoHc3RlcF9pZBgGIAEoCRIQCghzZXF1ZW5jZRgHIAEoAxIUCgxyZXN1bWVfdG9rZW4YCCABKAkSKAoHcGF5bG9hZBgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoKY3JlYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAivgQKDEFnZW50UnVuV2FpdBIKCgJpZBgBIAEoCRIxCgdsaW5rYWdlGAIgASgLMiAuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGlua2FnZRIPCgdzdGVwX2lkGAYgASgJEi8KBHR5cGUYByABKA4yIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0VHlwZRIUCgxleHRlcm5hbF9yZWYYCCABKAkSDgoGcmVhc29uGAkgASgJEigKB3BheWxvYWQYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDHJlc3VtZV9hZnRlchgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKZXhwaXJlc19hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLwoLcmVzb2x2ZWRfYXQYDiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhwKFHJlc29sdmVkX2J5X2V2ZW50X2lkGA8gASgJEj4KCnZpc2liaWxpdHkYECABKAsyKi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpc2liaWxpdHlNZXRhZGF0YRI8ChFjb2RleF9pbnRlcmFjdGlvbhgRIAEoCzIhLmNvZGV4LnYxLkNvZGV4SW50ZXJhY3Rpb25SZXF1ZXN0IoYDChBBZ2VudFJ1bkFydGlmYWN0EgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEg8KB3N0ZXBfaWQYBiABKAkSGQoNYXJ0aWZhY3RfdHlwZRgHIAEoCUICGAESCwoDdXJpGAggASgJEhQKDGNvbnRlbnRfdHlwZRgJIAEoCRIOCgZkaWdlc3QYCiABKAkSKQoIbWV0YWRhdGEYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkYKDWFydGlmYWN0X2tpbmQYECABKA4yJS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdEtpbmRCCLpIBYIBAhABEjEKDGNvZGV4X291dHB1dBgRIAEoCzIbLmNvZGV4LnYxLkNvZGV4T3V0cHV0VGFyZ2V0IrcCCgxBZ2VudFJ1bkNvc3QSCgoCaWQYASABKAkSMQoHbGlua2FnZRgCIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USDwoHc3RlcF9pZBgGIAEoCRIRCgltZXRlcl9yZWYYByABKAkSEAoIcHJvdmlkZXIYCCABKAkSDQoFbW9kZWwYCSABKAkSFAoMaW5wdXRfdG9rZW5zGAogASgDEhUKDW91dHB1dF90b2tlbnMYCyABKAMSFAoMdG90YWxfdG9rZW5zGAwgASgDEhAKCGN1cnJlbmN5GA0gASgJEh0KFWVzdGltYXRlZF9jb3N0X21pY3JvcxgOIAEoAxIvCgtyZWNvcmRlZF9hdBgPIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAirgEKFEFnZW50UnVuU3RyZWFtQ3Vyc29yEgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEhAKCGNvbnN1bWVyGAQgASgJEhUKDW5leHRfc2VxdWVuY2UYBSABKAMSLgoKdXBkYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAikgUKDFJ1bnRpbWVFdmVudBIKCgJpZBgBIAEoCRIOCgZydW5faWQYAiABKAkSEAoIc2VxdWVuY2UYAyABKAMSLwoEdHlwZRgEIAEoDjIhLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnRUeXBlEg8KB21lc3NhZ2UYBSABKAkSKwoKYXR0cmlidXRlcxgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLwoLb2NjdXJyZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB3N0ZXBfaWQYCyABKAkSFQoNY2hlY2twb2ludF9pZBgMIAEoCRITCgthcnRpZmFjdF9pZBgNIAEoCRIPCgdjb3N0X2lkGA4gASgJEg8KB3dhaXRfaWQYDyABKAkSMQoHbGlua2FnZRgQIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USPgoKdmlzaWJpbGl0eRgRIAEoCzIqLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlzaWJpbGl0eU1ldGFkYXRhEjIKDmNvZGV4X3Byb2dyZXNzGBIgASgLMhouY29kZXgudjEuQ29kZXhSdW5Qcm9ncmVzcxI8ChFjb2RleF9pbnRlcmFjdGlvbhgTIAEoCzIhLmNvZGV4LnYxLkNvZGV4SW50ZXJhY3Rpb25SZXF1ZXN0EjMKDWNvZGV4X291dGNvbWUYFCABKAsyHC5jb2RleC52MS5Db2RleE91dGNvbWVTaWduYWwSOwoNdHJhY2VfY29udGV4dBgVIAEoCzIkLmFnZW50cnVudGltZS52MS5SdW50aW1lVHJhY2VDb250ZXh0IlMKFEhhbmRsZVRyaWdnZXJSZXF1ZXN0EjsKB3RyaWdnZXIYASABKAsyIi5hZ2VudHJ1bnRpbWUudjEuTm9ybWFsaXplZFRyaWdnZXJCBrpIA8gBASKJAQoVSGFuZGxlVHJpZ2dlclJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhItCgZldmVudHMYAiADKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50EhkKEWlkZW1wb3RlbnRfcmVwbGF5GAMgASgIImcKE0NsYWltTmV4dFJ1blJlcXVlc3QSGgoJd29ya2VyX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtlcl9xdWV1ZRgCIAEoCRIeCg1sZWFzZV9zZWNvbmRzGAMgASgFQge6SAQaAigAIpwBChRDbGFpbU5leHRSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLQoFbGVhc2UYAiABKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MZWFzZRItCgZldmVudHMYAyADKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50Im0KE0hlYXJ0YmVhdFJ1blJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEh8KDmV4dGVuZF9zZWNvbmRzGAMgASgFQge6SAQaAigAIpsBChRIZWFydGJlYXRSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLQoFbGVhc2UYAiABKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MZWFzZRIsCgVldmVudBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQibgoUUmVuZXdSdW5MZWFzZVJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEh8KDmV4dGVuZF9zZWNvbmRzGAMgASgFQge6SAQaAigAIroBChVSZW5ld1J1bkxlYXNlUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEi0KBWxlYXNlGAIgASgLMh4uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGVhc2USLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50EhwKFHJlbmV3ZWRfYWZ0ZXJfZXhwaXJ5GAQgASgIIoIBChRSZWNvcmRSdW5TdGVwUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESMwoEc3RlcBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1blN0ZXBCBrpIA8gBASKaAQoVUmVjb3JkUnVuU3RlcFJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIrCgRzdGVwGAIgASgLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RlcBIsCgVldmVudBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQilAEKGlJlY29yZFJ1bkNoZWNrcG9pbnRSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARI/CgpjaGVja3BvaW50GAMgASgLMiMuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ2hlY2twb2ludEIGukgDyAEBIqwBChtSZWNvcmRSdW5DaGVja3BvaW50UmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjcKCmNoZWNrcG9pbnQYAiABKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50EiwKBWV2ZW50GAMgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCKOAQoYUmVjb3JkUnVuQXJ0aWZhY3RSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARI7CghhcnRpZmFjdBgDIAEoCzIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0Qga6SAPIAQEipgEKGVJlY29yZFJ1bkFydGlmYWN0UmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjMKCGFydGlmYWN0GAIgASgLMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQXJ0aWZhY3QSLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IoIBChRSZWNvcmRSdW5Db3N0UmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESMwoEY29zdBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNvc3RCBrpIA8gBASKaAQoVUmVjb3JkUnVuQ29zdFJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIrCgRjb3N0GAIgASgLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ29zdBIsCgVldmVudBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQidgocUmVjb3JkUnVuU3RyZWFtQ3Vyc29yUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESPQoGY3Vyc29yGAIgASgLMiUuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RyZWFtQ3Vyc29yQga6SAPIAQEirAEKHVJlY29yZFJ1blN0cmVhbUN1cnNvclJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI1CgZjdXJzb3IYAiABKAsyJS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdHJlYW1DdXJzb3ISLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50ItECChVSZWNvcmRSdW5FdmVudFJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEjkKBHR5cGUYAiABKA4yIS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50VHlwZUIIukgFggECEAESGAoHbWVzc2FnZRgDIAEoCUIHukgEcgIQARIrCgphdHRyaWJ1dGVzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIPCgdzdGVwX2lkGAUgASgJEhUKDWNoZWNrcG9pbnRfaWQYBiABKAkSEwoLYXJ0aWZhY3RfaWQYByABKAkSDwoHY29zdF9pZBgIIAEoCRIPCgd3YWl0X2lkGAkgASgJEj4KCnZpc2liaWxpdHkYCiABKAsyKi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpc2liaWxpdHlNZXRhZGF0YSJuChZSZWNvcmRSdW5FdmVudFJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIsCgVldmVudBgCIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQitQEKDldhaXRSdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIzCgR3YWl0GAMgASgLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdEIGukgDyAEBEjcKCmNoZWNrcG9pbnQYBCABKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50Is0BCg9XYWl0UnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEisKBHdhaXQYAiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0EjcKCmNoZWNrcG9pbnQYAyABKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50EiwKBWV2ZW50GAQgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCLQAQoQUmVzdW1lUnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESGAoHd2FpdF9pZBgCIAEoCUIHukgEcgIQARIXCg9yZXN1bWVfZXZlbnRfaWQYAyABKAkSKAoHcGF5bG9hZBgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSRgoaY29kZXhfaW50ZXJhY3Rpb25fZGVjaXNpb24YBSABKAsyIi5jb2RleC52MS5Db2RleEludGVyYWN0aW9uRGVjaXNpb24iaQoRUmVzdW1lUnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEiwKBWV2ZW50GAIgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCKtAQoSQ29tcGxldGVSdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARInCgZyZXN1bHQYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjcKCmNoZWNrcG9pbnQYBCABKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50IqQBChNDb21wbGV0ZVJ1blJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI3CgpjaGVja3BvaW50GAIgASgLMiMuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ2hlY2twb2ludBIsCgVldmVudBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQioAEKDkZhaWxSdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIeCg1lcnJvcl9tZXNzYWdlGAMgASgJQge6SARyAhABEhEKCXJldHJ5YWJsZRgEIAEoCBIkChNyZXRyeV9kZWxheV9zZWNvbmRzGAUgASgFQge6SAQaAigAImcKD0ZhaWxSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLAoFZXZlbnQYAiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IjsKEENhbmNlbFJ1blJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEg4KBnJlYXNvbhgCIAEoCSJpChFDYW5jZWxSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLAoFZXZlbnQYAiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50ImAKD1JldHJ5UnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESJAoTcmV0cnlfZGVsYXlfc2Vjb25kcxgCIAEoBUIHukgEGgIoABIOCgZyZWFzb24YAyABKAkiaAoQUmV0cnlSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLAoFZXZlbnQYAiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50Ij8KFERlYWRMZXR0ZXJSdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIOCgZyZWFzb24YAiABKAkibQoVRGVhZExldHRlclJ1blJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIsCgVldmVudBgCIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQiJAoNR2V0UnVuUmVxdWVzdBITCgJpZBgBIAEoCUIHukgEcgIQASI4Cg5HZXRSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4iNwocR2V0VGVhbW1hdGVXb3JrTGVkZ2VyUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAEijgEKHUdldFRlYW1tYXRlV29ya0xlZGdlclJlc3BvbnNlEjMKBmxlZGdlchgBIAEoCzIjLmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXISOAoLbGVkZ2VyX2ZpbGUYAiABKAsyIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlIugHChJUZWFtbWF0ZVdvcmtMZWRnZXISFgoOc2NoZW1hX3ZlcnNpb24YASABKAkSDgoGcnVuX2lkGAIgASgJEjEKB2xpbmthZ2UYAyABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEi0KBXN0YXRlGAQgASgOMh4uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RhdGUSFwoPb2JqZWN0aXZlX3RpdGxlGAUgASgJEhQKDHdvcmtlcl9xdWV1ZRgGIAEoCRIYCgdhdHRlbXB0GAcgASgFQge6SAQaAigAEhgKEHdvcmtfZW52ZWxvcGVfaWQYCCABKAkSGgoSd29ya19lbnZlbG9wZV9raW5kGAkgASgJEhUKDXdvcmtzdHJlYW1faWQYCiABKAkSEwoLbmV4dF9hY3Rpb24YCyABKAkSPAoIYmxvY2tlcnMYDCADKAsyKi5hZ2VudHJ1bnRpbWUudjEuVGVhbW1hdGVXb3JrTGVkZ2VyQmxvY2tlchJMChBjb25uZWN0b3JfYWNjZXNzGA0gAygLMjIuYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlckNvbm5lY3RvckFjY2VzcxJLChBtZW1vcnlfY2l0YXRpb25zGA4gAygLMjEuYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlck1lbW9yeUNpdGF0aW9uEkIKC3Zmc19zdW1tYXJ5GA8gASgLMi0uYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlclZmc1N1bW1hcnkSSgoPY2VyZWJyb19jb250ZXh0GBAgASgLMjEuYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlckNlcmVicm9Db250ZXh0EkwKEHByb2FjdGl2ZV9wb2xpY3kYESABKAsyMi5hZ2VudHJ1bnRpbWUudjEuVGVhbW1hdGVXb3JrTGVkZ2VyUHJvYWN0aXZlUG9saWN5EkgKDmNoYW5uZWxfc3RhdHVzGBIgASgLMjAuYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlckNoYW5uZWxTdGF0dXMSFgoOZXZpZGVuY2VfcGF0aHMYEyADKAkSFgoOaGFuZG9mZl9wb2xpY3kYFCABKAkSHgoWcmVzdW1lX2NoZWNrcG9pbnRfcGF0aBgVIAEoCRIuCgp1cGRhdGVkX2F0GBYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIcCgtldmVudF9jb3VudBgXIAEoBUIHukgEGgIoACKhAgoZVGVhbW1hdGVXb3JrTGVkZ2VyQmxvY2tlchIPCgd3YWl0X2lkGAEgASgJEi8KBHR5cGUYAiABKA4yIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0VHlwZRIOCgZyZWFzb24YAyABKAkSFAoMZXh0ZXJuYWxfcmVmGAQgASgJEjAKDHJlc3VtZV9hZnRlchgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGgoSdmlzaWJpbGl0eV9zdW1tYXJ5GAYgASgJEk4KD3Jlc3VtZV9jb250cmFjdBgHIAEoCzI1LmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXJXYWl0UmVzdW1lQ29udHJhY3QiwwIKJFRlYW1tYXRlV29ya0xlZGdlcldhaXRSZXN1bWVDb250cmFjdBIWCg5zY2hlbWFfdmVyc2lvbhgBIAEoCRISCgpyZXN1bWVfcnBjGAIgASgJEhIKCmxvb2t1cF9ycGMYAyABKAkSIQoZbG9va3VwX2V4dGVybmFsX3JlZl9maWVsZBgEIAEoCRIeChZyZXF1aXJlZF9yZXN1bWVfZmllbGRzGAUgAygJEhkKEWFsbG93ZWRfZGVjaXNpb25zGAYgAygJEiMKG2NoYW5uZWxfYWN0aW9uX3ZhbHVlX2ZpZWxkcxgHIAMoCRIcChRpZGVtcG90ZW5jeV9qb2luX2tleRgIIAEoCRIbChNhcHByb3ZhbF9yZXF1ZXN0X2lkGAkgASgJEh0KFXJlcXVpcmVzX3NhZmVfc3VtbWFyeRgKIAEoCCKkAgohVGVhbW1hdGVXb3JrTGVkZ2VyQ29ubmVjdG9yQWNjZXNzEhIKCm1vdW50X3BhdGgYASABKAkSEwoLcHJvdmlkZXJfaWQYAiABKAkSFQoNY29ubmVjdGlvbl9pZBgDIAEoCRIUCgxjYXBhYmlsaXRpZXMYBCADKAkSFgoOZ3JhbnRfcmVxdWlyZWQYBSABKAgSFAoMbGVhc2VfcG9saWN5GAYgASgJEhUKDWlkZW50aXR5X21vZGUYByABKAkSIwobY3JlZGVudGlhbF92ZXJzaW9uX3N0cmF0ZWd5GAggASgJEiEKEHNlY3JldF9yZWZfY291bnQYCSABKAVCB7pIBBoCKAASHAoUY3JlZGVudGlhbF9yZWZfbmFtZXMYCiADKAki8gEKIFRlYW1tYXRlV29ya0xlZGdlck1lbW9yeUNpdGF0aW9uEhEKCW1lbW9yeV9pZBgBIAEoCRITCgttZW1vcnlfdHlwZRgCIAEoCRIOCgZzb3VyY2UYAyABKAkSEwoLc291cmNlX3VyaXMYBCADKAkSHAoUc3VwZXJzZWRlc19tZW1vcnlfaWQYBSABKAkSHwoXc3VwZXJzZWRlZF9ieV9tZW1vcnlfaWQYBiABKAkSFQoNcmV2aWV3X3N0YXR1cxgHIAEoCRISCgplbnRpdHlfaWRzGAggAygJEhcKD2NvbnRlbnRfcHJldmlldxgJIAEoCSKeAgocVGVhbW1hdGVXb3JrTGVkZ2VyVmZzU3VtbWFyeRIbCgpmaWxlX2NvdW50GAEgASgFQge6SAQaAigAEhwKC21vdW50X2NvdW50GAIgASgFQge6SAQaAigAEiYKFWNvbm5lY3Rvcl9tb3VudF9jb3VudBgDIAEoBUIHukgEGgIoABIkChNtZW1vcnlfcmVjb3JkX2NvdW50GAQgASgFQge6SAQaAigAEiIKEXRyYW5zYWN0aW9uX2NvdW50GAUgASgFQge6SAQaAigAEjIKIWNlcmVicm9faW5kZXhfZWxpZ2libGVfZmlsZV9jb3VudBgGIAEoBUIHukgEGgIoABIdChVoYXNfcmVzdW1lX2NoZWNrcG9pbnQYByABKAgioQEKIFRlYW1tYXRlV29ya0xlZGdlckNlcmVicm9Db250ZXh0EhAKCHByb3ZpZGVyGAEgASgJEg0KBXF1ZXJ5GAIgASgJEhEKCXRoaW5nX2lkcxgDIAMoCRIQCghmYWN0X2lkcxgEIAMoCRIRCglldmVudF9pZHMYBSADKAkSJAoTZWxpZ2libGVfZmlsZV9jb3VudBgGIAEoBUIHukgEGgIoACKmAQohVGVhbW1hdGVXb3JrTGVkZ2VyUHJvYWN0aXZlUG9saWN5Eg8KB2VuYWJsZWQYASABKAgSFQoNdHJpZ2dlcl9raW5kcxgCIAMoCRIgChhwcm9ncmVzc191cGRhdGVfdHJpZ2dlcnMYAyADKAkSFwoPcHJlc2VuY2VfcG9saWN5GAQgASgJEh4KDXVwZGF0ZV9idWRnZXQYBSABKAVCB7pIBBoCKAAimwEKH1RlYW1tYXRlV29ya0xlZGdlckNoYW5uZWxTdGF0dXMSFAoMY2hhbm5lbF9raW5kGAEgASgJEhIKCmNoYW5uZWxfaWQYAiABKAkSEQoJdGhyZWFkX2lkGAMgASgJEh0KFWxhc3RfdmlzaWJsZV9ldmVudF9pZBgEIAEoCRIcChRsYXN0X3Zpc2libGVfc3VtbWFyeRgFIAEoCSJ5Ch1MaXN0UnVuc0J5V29ya0VudmVsb3BlUmVxdWVzdBIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESIQoQd29ya19lbnZlbG9wZV9pZBgCIAEoCUIHukgEcgIQARIWCgVsaW1pdBgDIAEoBUIHukgEGgIoACJJCh5MaXN0UnVuc0J5V29ya0VudmVsb3BlUmVzcG9uc2USJwoEcnVucxgBIAMoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1biL0BQoVQ2hhbm5lbFRocmVhZEFkb3B0aW9uEgoKAmlkGAEgASgJEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIZCghhZ2VudF9pZBgDIAEoCUIHukgEcgIQARJDCgxjaGFubmVsX2tpbmQYBCABKA4yIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxLaW5kQgi6SAWCAQIQARIdChVwcm92aWRlcl93b3Jrc3BhY2VfaWQYBSABKAkSGwoKY2hhbm5lbF9pZBgGIAEoCUIHukgEcgIQARIaCgl0aHJlYWRfaWQYByABKAlCB7pIBHICEAESGAoQd29ya19lbnZlbG9wZV9pZBgIIAEoCRIcChRmaXJzdF9hZG9wdGVkX3J1bl9pZBgJIAEoCRITCgtsYXN0X3J1bl9pZBgKIAEoCRI0ChBmaXJzdF9hZG9wdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpleHBpcmVzX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9sYXN0X21lc3NhZ2VfaWQYDiABKAkSHAoUbGFzdF9zb3VyY2VfZXZlbnRfaWQYDyABKAkSHAoUbGFzdF9hZG9wdGlvbl9yZWFzb24YECABKAkSFwoPYWRvcHRpb25fcG9saWN5GBEgASgJEikKCG1ldGFkYXRhGBIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBI/Cg9jaGFubmVsX2NvbnRleHQYEyABKAsyJi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxDb250ZXh0EjsKDXdvcmtfZW52ZWxvcGUYFCABKAsyJC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVdvcmtFbnZlbG9wZSKRAgofR2V0Q2hhbm5lbFRocmVhZEFkb3B0aW9uUmVxdWVzdBIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESGQoIYWdlbnRfaWQYAiABKAlCB7pIBHICEAESQwoMY2hhbm5lbF9raW5kGAMgASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsS2luZEIIukgFggECEAESHQoVcHJvdmlkZXJfd29ya3NwYWNlX2lkGAQgASgJEhsKCmNoYW5uZWxfaWQYBSABKAlCB7pIBHICEAESGgoJdGhyZWFkX2lkGAYgASgJQge6SARyAhABEhcKD2luY2x1ZGVfZXhwaXJlZBgHIAEoCCJcCiBHZXRDaGFubmVsVGhyZWFkQWRvcHRpb25SZXNwb25zZRI4CghhZG9wdGlvbhgBIAEoCzImLmFnZW50cnVudGltZS52MS5DaGFubmVsVGhyZWFkQWRvcHRpb24iqgIKIUxpc3RDaGFubmVsVGhyZWFkQWRvcHRpb25zUmVxdWVzdBIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESEAoIYWdlbnRfaWQYAiABKAkSQwoMY2hhbm5lbF9raW5kGAMgASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsS2luZEIIukgFggECEAESHQoVcHJvdmlkZXJfd29ya3NwYWNlX2lkGAQgASgJEhIKCmNoYW5uZWxfaWQYBSABKAkSEQoJdGhyZWFkX2lkGAYgASgJEhgKEHdvcmtfZW52ZWxvcGVfaWQYByABKAkSFwoPaW5jbHVkZV9leHBpcmVkGAggASgIEhYKBWxpbWl0GAkgASgFQge6SAQaAigAIl8KIkxpc3RDaGFubmVsVGhyZWFkQWRvcHRpb25zUmVzcG9uc2USOQoJYWRvcHRpb25zGAEgAygLMiYuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxUaHJlYWRBZG9wdGlvbiL+AgoTTGlzdFJ1bldhaXRzUmVxdWVzdBIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESDgoGcnVuX2lkGAIgASgJEhAKCGFnZW50X2lkGAMgASgJEhQKDG9iamVjdGl2ZV9pZBgEIAEoCRIYChB3b3JrX2VudmVsb3BlX2lkGAUgASgJEjsKBXN0YXRlGAYgASgOMiIuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdFN0YXRlQgi6SAWCAQIQARI5CgR0eXBlGAcgASgOMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdFR5cGVCCLpIBYIBAhABEjwKCGF1ZGllbmNlGAggASgOMiAuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVBdWRpZW5jZUIIukgFggECEAESFgoFbGltaXQYCSABKAVCB7pIBBoCKAASEgoKcGFnZV90b2tlbhgKIAEoCRIUCgxleHRlcm5hbF9yZWYYCyABKAki2AUKE0FnZW50UnVuV2FpdFN1bW1hcnkSDgoGcnVuX2lkGAEgASgJEg8KB3dhaXRfaWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJEhAKCGFnZW50X2lkGAQgASgJEhQKDG9iamVjdGl2ZV9pZBgFIAEoCRIPCgdzdGVwX2lkGAYgASgJEi8KBHR5cGUYByABKA4yIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0VHlwZRIxCgVzdGF0ZRgIIAEoDjIiLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRTdGF0ZRIUCgxleHRlcm5hbF9yZWYYCSABKAkSDgoGcmVhc29uGAogASgJEigKB3BheWxvYWQYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDHJlc3VtZV9hZnRlchgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKZXhwaXJlc19hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLwoLcmVzb2x2ZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhwKFHJlc29sdmVkX2J5X2V2ZW50X2lkGBAgASgJEj4KCnZpc2liaWxpdHkYESABKAsyKi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpc2liaWxpdHlNZXRhZGF0YRI/Cg9jaGFubmVsX2NvbnRleHQYEiABKAsyJi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxDb250ZXh0EjsKDXdvcmtfZW52ZWxvcGUYEyABKAsyJC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVdvcmtFbnZlbG9wZSJkChRMaXN0UnVuV2FpdHNSZXNwb25zZRIzCgV3YWl0cxgBIAMoCzIkLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRTdW1tYXJ5EhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSJjCiFSZWNvcmRDaGFubmVsQWN0aW9uUmVjZWlwdFJlcXVlc3QSPgoHcmVjZWlwdBgBIAEoCzIlLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uUmVjZWlwdEIGukgDyAEBIncKIlJlY29yZENoYW5uZWxBY3Rpb25SZWNlaXB0UmVzcG9uc2USNgoHcmVjZWlwdBgBIAEoCzIlLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uUmVjZWlwdBIZChFpZGVtcG90ZW50X3JlcGxheRgCIAEoCCI1Ch5HZXRDaGFubmVsQWN0aW9uUmVjZWlwdFJlcXVlc3QSEwoCaWQYASABKAlCB7pIBHICEAEiWQofR2V0Q2hhbm5lbEFjdGlvblJlY2VpcHRSZXNwb25zZRI2CgdyZWNlaXB0GAEgASgLMiUuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxBY3Rpb25SZWNlaXB0Iu0DCiBMaXN0Q2hhbm5lbEFjdGlvblJlY2VpcHRzUmVxdWVzdBIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESFwoPaWRlbXBvdGVuY3lfa2V5GAIgASgJEhcKD2FjdG9yX2VudGl0eV9pZBgDIAEoCRJHCgt0YXJnZXRfa2luZBgEIAEoDjIoLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uVGFyZ2V0S2luZEIIukgFggECEAESEQoJdGFyZ2V0X2lkGAUgASgJEg4KBnJ1bl9pZBgGIAEoCRIPCgd3YWl0X2lkGAcgASgJEhsKE2FwcHJvdmFsX3JlcXVlc3RfaWQYCCABKAkSFAoMb2JqZWN0aXZlX2lkGAkgASgJEkMKDGNoYW5uZWxfa2luZBgKIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lQ2hhbm5lbEtpbmRCCLpIBYIBAhABEh0KFXByb3ZpZGVyX3dvcmtzcGFjZV9pZBgLIAEoCRISCgpjaGFubmVsX2lkGAwgASgJEhEKCXRocmVhZF9pZBgNIAEoCRISCgptZXNzYWdlX2lkGA4gASgJEhEKCWFjdGlvbl9pZBgPIAEoCRIWCgVsaW1pdBgQIAEoBUIHukgEGgIoACJcCiFMaXN0Q2hhbm5lbEFjdGlvblJlY2VpcHRzUmVzcG9uc2USNwoIcmVjZWlwdHMYASADKAsyJS5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvblJlY2VpcHQibQoUTGlzdFJ1bkV2ZW50c1JlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEjwKCGF1ZGllbmNlGAIgASgOMiAuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVBdWRpZW5jZUIIukgFggECEAEiRgoVTGlzdFJ1bkV2ZW50c1Jlc3BvbnNlEi0KBmV2ZW50cxgBIAMoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQifgoaTGlzdFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhMKC3BhdGhfcHJlZml4GAIgASgJEhYKBWxpbWl0GAMgASgFQge6SAQaAigAEhoKEmluY2x1ZGVfdG9tYnN0b25lcxgEIAEoCCJYChtMaXN0UnVuVmlydHVhbEZpbGVzUmVzcG9uc2USOQoHZW50cmllcxgBIAMoCzIoLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVFbnRyeSKYAQoZUmVhZFJ1blZpcnR1YWxGaWxlUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESFQoEcGF0aBgCIAEoCUIHukgEcgIQARIXCgZvZmZzZXQYAyABKAVCB7pIBBoCKAASFgoFbGltaXQYBCABKAVCB7pIBBoCKAASGgoSaW5jbHVkZV90b21ic3RvbmVzGAUgASgIIqUCChpSZWFkUnVuVmlydHVhbEZpbGVSZXNwb25zZRI3CgVlbnRyeRgBIAEoCzIoLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVFbnRyeRIPCgdjb250ZW50GAIgASgJEg4KBm9mZnNldBgDIAEoBRITCgtuZXh0X29mZnNldBgEIAEoBRILCgNlb2YYBSABKAgSVAoPcmVkYWN0aW9uX3N0YXRlGAYgASgOMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlZGFjdGlvblN0YXRlQgi6SAWCAQIQARI1CgpyZWRhY3Rpb25zGAcgAygLMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVSZWRhY3Rpb24iZwoZU3RhdFJ1blZpcnR1YWxGaWxlUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESFQoEcGF0aBgCIAEoCUIHukgEcgIQARIaChJpbmNsdWRlX3RvbWJzdG9uZXMYAyABKAgiVQoaU3RhdFJ1blZpcnR1YWxGaWxlUmVzcG9uc2USNwoFZW50cnkYASABKAsyKC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRW50cnkiswEKG1dhdGNoUnVuVmlydHVhbEZpbGVzUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESFAoMc2luY2VfY3Vyc29yGAIgASgJEhYKBWxpbWl0GAMgASgFQge6SAQaAigAEg4KBmZvbGxvdxgEIAEoCBI9CghzZWxlY3RvchgFIAEoCzIrLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVTZWxlY3RvciJcChxXYXRjaFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlEjwKBWV2ZW50GAEgASgLMi0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVdhdGNoRXZlbnQi7wMKHFJ1bnRpbWVWaXJ0dWFsRmlsZVdhdGNoRXZlbnQSDgoGY3Vyc29yGAEgASgJEhEKCW9wZXJhdGlvbhgCIAEoCRIMCgRwYXRoGAMgASgJEhMKC3JldmlzaW9uX2lkGAQgASgJEhoKEnBhcmVudF9yZXZpc2lvbl9pZBgFIAEoCRIWCg50cmFuc2FjdGlvbl9pZBgGIAEoCRIMCgR2aWV3GAcgASgJEg8KB3NwYW5faWQYCCABKAkSFwoPZXZpZGVuY2VfaGFuZGxlGAkgASgJEhgKEHJ1bnRpbWVfZXZlbnRfaWQYCiABKAkSEwoLYXJ0aWZhY3RfaWQYCyABKAkSEAoIdHJhY2VfaWQYDCABKAkSFAoMaHlkcmF0aW9uX2lkGA0gASgJEhQKDHByb21vdGlvbl9pZBgOIAEoCRIYChBwcm9kdWNlcl9zZXJ2aWNlGA8gASgJEhUKDXByb2R1Y2VyX2tpbmQYECABKAkSLwoLb2NjdXJyZWRfYXQYESABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhUKDWNoZWNrcG9pbnRfaWQYEiABKAkSNwoFZW50cnkYEyABKAsyKC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRW50cnki5wEKGlJ1bnRpbWVWaXJ0dWFsRmlsZVNlbGVjdG9yEg0KBXBhdGhzGAEgAygJEhMKC3BhdGhfcHJlZml4GAIgASgJEg0KBXZpZXdzGAMgAygJEg0KBWtpbmRzGAQgAygJEg4KBm1vdW50cxgFIAMoCRIXCg90cmFuc2FjdGlvbl9pZHMYBiADKAkSEAoIcG9saWNpZXMYByADKAkSFwoPc291cmNlX3NlcnZpY2VzGAggAygJEhcKD2NlcmVicm9faW5kZXhlcxgJIAMoCRIaChJpbmNsdWRlX3RvbWJzdG9uZXMYCiABKAgi+QMKHFJ1bnRpbWVWaXJ0dWFsRmlsZVJlYWRSZXN1bHQSDAoEcGF0aBgBIAEoCRI3CgVlbnRyeRgCIAEoCzIoLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVFbnRyeRIPCgdjb250ZW50GAMgASgJEhcKBm9mZnNldBgEIAEoBUIHukgEGgIoABIcCgtuZXh0X29mZnNldBgFIAEoBUIHukgEGgIoABILCgNlb2YYBiABKAgSDwoHc2tpcHBlZBgHIAEoCBITCgtza2lwX3JlYXNvbhgIIAEoCRIQCghjaXRhdGlvbhgJIAEoCRIVCgRyYW5rGAogASgFQge6SAQaAigAEhMKC3JhbmtfcmVhc29uGAsgASgJEkwKC3JlYXNvbl9jb2RlGAwgASgOMi0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlYXNvbkNvZGVCCLpIBYIBAhABElQKD3JlZGFjdGlvbl9zdGF0ZRgNIAEoDjIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWRhY3Rpb25TdGF0ZUIIukgFggECEAESNQoKcmVkYWN0aW9ucxgOIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uItABCh9CYXRjaFJlYWRSdW5WaXJ0dWFsRmlsZXNSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARI9CghzZWxlY3RvchgCIAEoCzIrLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVTZWxlY3RvchIfCg5wZXJfZmlsZV9saW1pdBgDIAEoBUIHukgEGgIoABIcCgt0b3RhbF9saW1pdBgEIAEoBUIHukgEGgIoABIWCgVsaW1pdBgFIAEoBUIHukgEGgIoACLAAQogQmF0Y2hSZWFkUnVuVmlydHVhbEZpbGVzUmVzcG9uc2USPAoFZmlsZXMYASADKAsyLS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlUmVhZFJlc3VsdBIkChN0b3RhbF9jb250ZW50X2J5dGVzGAIgASgFQge6SAQaAigAEhgKEGJ1ZGdldF9leGhhdXN0ZWQYAyABKAgSHgoNc2tpcHBlZF9jb3VudBgEIAEoBUIHukgEGgIoACL5AQolQnVpbGRSdW5WaXJ0dWFsRmlsZUNvbnRleHRQYWNrUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESDQoFcXVlcnkYAiABKAkSPQoIc2VsZWN0b3IYAyABKAsyKy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlU2VsZWN0b3ISEgoKc2VlZF9wYXRocxgEIAMoCRIfCg5wZXJfZmlsZV9saW1pdBgFIAEoBUIHukgEGgIoABIcCgt0b3RhbF9saW1pdBgGIAEoBUIHukgEGgIoABIWCgVsaW1pdBgHIAEoBUIHukgEGgIoACLgAQomQnVpbGRSdW5WaXJ0dWFsRmlsZUNvbnRleHRQYWNrUmVzcG9uc2USPwoIc25pcHBldHMYASADKAsyLS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlUmVhZFJlc3VsdBIkChN0b3RhbF9jb250ZW50X2J5dGVzGAIgASgFQge6SAQaAigAEhgKEGJ1ZGdldF9leGhhdXN0ZWQYAyABKAgSHgoNc2tpcHBlZF9jb3VudBgEIAEoBUIHukgEGgIoABIVCg1za2lwcGVkX3BhdGhzGAUgAygJIoICChxTZWFyY2hSdW5WaXJ0dWFsRmlsZXNSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIWCgVxdWVyeRgCIAEoCUIHukgEcgIQARITCgtwYXRoX3ByZWZpeBgDIAEoCRIWCgVsaW1pdBgEIAEoBUIHukgEGgIoABI9CghzZWxlY3RvchgFIAEoCzIrLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVTZWxlY3RvchINCgVyZWdleBgGIAEoCBIeCg1jb250ZXh0X2xpbmVzGAcgASgFQge6SAQaAigAEhYKDmNhc2Vfc2Vuc2l0aXZlGAggASgIIpMBCh1TZWFyY2hSdW5WaXJ0dWFsRmlsZXNSZXNwb25zZRI5CgdtYXRjaGVzGAEgAygLMiguYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZU1hdGNoEh4KDXRvdGFsX21hdGNoZXMYAiABKAVCB7pIBBoCKAASFwoPbGltaXRfZXhoYXVzdGVkGAMgASgIIrEECiNSZWNvcmRSdW5WaXJ0dWFsRmlsZVByb3Bvc2FsUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESFQoEcGF0aBgDIAEoCUIHukgEcgIQARISCgptZWRpYV90eXBlGAQgASgJEg8KB2NvbnRlbnQYBSABKAkSFQoNcHJvcG9zYWxfa2luZBgGIAEoCRIPCgdzdGVwX2lkGAcgASgJElQKCG1ldGFkYXRhGAggAygLMkIuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blZpcnR1YWxGaWxlUHJvcG9zYWxSZXF1ZXN0Lk1ldGFkYXRhRW50cnkSFwoPaWRlbXBvdGVuY3lfa2V5GAkgASgJEkIKC3NlbnNpdGl2aXR5GAogASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVTZW5zaXRpdml0eUIIukgFggECEAESVAoPcmVkYWN0aW9uX3N0YXRlGAsgASgOMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlZGFjdGlvblN0YXRlQgi6SAWCAQIQARI1CgpyZWRhY3Rpb25zGAwgAygLMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVSZWRhY3Rpb24aLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuQBCiRSZWNvcmRSdW5WaXJ0dWFsRmlsZVByb3Bvc2FsUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjMKCGFydGlmYWN0GAIgASgLMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQXJ0aWZhY3QSMQoEZmlsZRgDIAEoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUSLAoFZXZlbnQYBCABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IqsEChhSdW50aW1lVmlydHVhbEZpbGVDaGFuZ2USFQoEcGF0aBgBIAEoCUIHukgEcgIQARISCgptZWRpYV90eXBlGAIgASgJEg8KB2NvbnRlbnQYAyABKAkSFQoNcHJvcG9zYWxfa2luZBgEIAEoCRIPCgdzdGVwX2lkGAUgASgJEkkKCG1ldGFkYXRhGAYgAygLMjcuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUNoYW5nZS5NZXRhZGF0YUVudHJ5EkIKC3NlbnNpdGl2aXR5GAcgASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVTZW5zaXRpdml0eUIIukgFggECEAESVAoPcmVkYWN0aW9uX3N0YXRlGAggASgOMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlZGFjdGlvblN0YXRlQgi6SAWCAQIQARI1CgpyZWRhY3Rpb25zGAkgAygLMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVSZWRhY3Rpb24SSQoJb3BlcmF0aW9uGAogASgOMiwuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZU9wZXJhdGlvbkIIukgFggECEAESEwoLcmVuYW1lX2Zyb20YCyABKAkaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIvICCiZSZWNvcmRSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESFgoOdHJhbnNhY3Rpb25faWQYAyABKAkSGgoScGFyZW50X3JldmlzaW9uX2lkGAQgASgJEjoKB2NoYW5nZXMYBSADKAsyKS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlQ2hhbmdlElcKCG1ldGFkYXRhGAYgAygLMkUuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0Lk1ldGFkYXRhRW50cnkSFwoPaWRlbXBvdGVuY3lfa2V5GAcgASgJGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLpAQonUmVjb3JkUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI0CglhcnRpZmFjdHMYAiADKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdBIyCgVmaWxlcxgDIAMoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUSLAoFZXZlbnQYBCABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IsYCCidQcm9tb3RlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEh8KDnRyYW5zYWN0aW9uX2lkGAMgASgJQge6SARyAhABEiMKG2V4cGVjdGVkX3BhcmVudF9yZXZpc2lvbl9pZBgEIAEoCRITCgthcHByb3Zlcl9pZBgFIAEoCRJYCghtZXRhZGF0YRgGIAMoCzJGLmFnZW50cnVudGltZS52MS5Qcm9tb3RlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QuTWV0YWRhdGFFbnRyeRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi6gEKKFByb21vdGVSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjQKCWFydGlmYWN0cxgCIAMoCzIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0EjIKBWZpbGVzGAMgAygLMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZRIsCgVldmVudBgEIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQixgEKGlJ1bnRpbWVWaXJ0dWFsRmlsZURpZmZIdW5rEh8KDm9sZF9zdGFydF9saW5lGAEgASgFQge6SAQaAigAEh8KDm9sZF9saW5lX2NvdW50GAIgASgFQge6SAQaAigAEh8KDm5ld19zdGFydF9saW5lGAMgASgFQge6SAQaAigAEh8KDm5ld19saW5lX2NvdW50GAQgASgFQge6SAQaAigAEg4KBmhlYWRlchgFIAEoCRIUCgx1bmlmaWVkX2RpZmYYBiABKAki/wQKJVJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uRmlsZURpZmYSDAoEcGF0aBgBIAEoCRJJCglvcGVyYXRpb24YAiABKA4yLC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlT3BlcmF0aW9uQgi6SAWCAQIQARJZCgxhcHBseV9zdGF0dXMYAyABKA4yOS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25BcHBseVN0YXR1c0IIukgFggECEAESGgoScGFyZW50X3JldmlzaW9uX2lkGAQgASgJEhgKEGJhc2VfcmV2aXNpb25faWQYBSABKAkSGwoTY3VycmVudF9yZXZpc2lvbl9pZBgGIAEoCRIcChRwcm9wb3NlZF9yZXZpc2lvbl9pZBgHIAEoCRIbChNiYXNlX2NvbnRlbnRfc2hhMjU2GAggASgJEh4KFmN1cnJlbnRfY29udGVudF9zaGEyNTYYCSABKAkSHwoXcHJvcG9zZWRfY29udGVudF9zaGEyNTYYCiABKAkSGgoJYWRkaXRpb25zGAsgASgFQge6SAQaAigAEhoKCWRlbGV0aW9ucxgMIAEoBUIHukgEGgIoABIOCgZiaW5hcnkYDSABKAgSEQoJdG9tYnN0b25lGA4gASgIEhMKC3JlbmFtZV9mcm9tGA8gASgJEhEKCXJlbmFtZV90bxgQIAEoCRIUCgx1bmlmaWVkX2RpZmYYESABKAkSOgoFaHVua3MYEiADKAsyKy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRGlmZkh1bmsinAMKJVJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uQ29uZmxpY3QSDAoEcGF0aBgBIAEoCRJMCgtyZWFzb25fY29kZRgCIAEoDjItLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWFzb25Db2RlQgi6SAWCAQIQARJZCgxhcHBseV9zdGF0dXMYAyABKA4yOS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25BcHBseVN0YXR1c0IIukgFggECEAESDwoHbWVzc2FnZRgEIAEoCRIaChJwYXJlbnRfcmV2aXNpb25faWQYBSABKAkSGAoQYmFzZV9yZXZpc2lvbl9pZBgGIAEoCRIbChNjdXJyZW50X3JldmlzaW9uX2lkGAcgASgJEhwKFHByb3Bvc2VkX3JldmlzaW9uX2lkGAggASgJEjoKBWh1bmtzGAkgAygLMisuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZURpZmZIdW5rIr4DCiFSdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbkRpZmYSFgoOdHJhbnNhY3Rpb25faWQYASABKAkSRQoFZmlsZXMYAiADKAsyNi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25GaWxlRGlmZhIUCgx1bmlmaWVkX2RpZmYYAyABKAkSGwoKZmlsZV9jb3VudBgEIAEoBUIHukgEGgIoABIjChJjaGFuZ2VkX2ZpbGVfY291bnQYBSABKAVCB7pIBBoCKAASGgoJYWRkaXRpb25zGAYgASgFQge6SAQaAigAEhoKCWRlbGV0aW9ucxgHIAEoBUIHukgEGgIoABINCgVzdGFsZRgIIAEoCBJQCgdvdXRjb21lGAkgASgOMjUuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uT3V0Y29tZUIIukgFggECEAESSQoJY29uZmxpY3RzGAogAygLMjYuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uQ29uZmxpY3QigAEKJERpZmZSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHwoOdHJhbnNhY3Rpb25faWQYAiABKAlCB7pIBHICEAESHgoNY29udGV4dF9saW5lcxgDIAEoBUIHukgEGgIoACJpCiVEaWZmUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlc3BvbnNlEkAKBGRpZmYYASABKAsyMi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25EaWZmIuICCiVBcHBseVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIfCg50cmFuc2FjdGlvbl9pZBgDIAEoCUIHukgEcgIQARIjChtleHBlY3RlZF9wYXJlbnRfcmV2aXNpb25faWQYBCABKAkSEwoLYXBwcm92ZXJfaWQYBSABKAkSVgoIbWV0YWRhdGEYBiADKAsyRC5hZ2VudHJ1bnRpbWUudjEuQXBwbHlSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdC5NZXRhZGF0YUVudHJ5Eh4KDWNvbnRleHRfbGluZXMYByABKAVCB7pIBBoCKAAaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIvwCCiZBcHBseVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRJQCgdvdXRjb21lGAEgASgOMjUuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uT3V0Y29tZUIIukgFggECEAESQAoEZGlmZhgCIAEoCzIyLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbkRpZmYSJgoDcnVuGAMgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjQKCWFydGlmYWN0cxgEIAMoCzIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0EjIKBWZpbGVzGAUgAygLMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZRIsCgVldmVudBgGIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQi4gIKJlJlYmFzZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARImChVzb3VyY2VfdHJhbnNhY3Rpb25faWQYAyABKAlCB7pIBHICEAESFgoOdHJhbnNhY3Rpb25faWQYBCABKAkSVwoIbWV0YWRhdGEYBSADKAsyRS5hZ2VudHJ1bnRpbWUudjEuUmViYXNlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QuTWV0YWRhdGFFbnRyeRIXCg9pZGVtcG90ZW5jeV9rZXkYBiABKAkSHgoNY29udGV4dF9saW5lcxgHIAEoBUIHukgEGgIoABovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEitAMKJ1JlYmFzZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRJQCgdvdXRjb21lGAEgASgOMjUuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uT3V0Y29tZUIIukgFggECEAESHQoVc291cmNlX3RyYW5zYWN0aW9uX2lkGAIgASgJEhYKDnRyYW5zYWN0aW9uX2lkGAMgASgJEkAKBGRpZmYYBCABKAsyMi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25EaWZmEiYKA3J1bhgFIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI0CglhcnRpZmFjdHMYBiADKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdBIyCgVmaWxlcxgHIAMoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUSLAoFZXZlbnQYCCABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IuMCCiFIeWRyYXRlUnVuVmlydHVhbEZpbGVNb3VudFJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEhYKBW1vdW50GAMgASgJQge6SARyAhABEhMKC3Byb3ZpZGVyX2lkGAQgASgJEhUKDWNvbm5lY3Rpb25faWQYBSABKAkSDQoFcXVlcnkYBiABKAkSFgoFbGltaXQYByABKAVCB7pIBBoCKAASUgoIbWV0YWRhdGEYCCADKAsyQC5hZ2VudHJ1bnRpbWUudjEuSHlkcmF0ZVJ1blZpcnR1YWxGaWxlTW91bnRSZXF1ZXN0Lk1ldGFkYXRhRW50cnkSFwoPaWRlbXBvdGVuY3lfa2V5GAkgASgJGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLkAQoiSHlkcmF0ZVJ1blZpcnR1YWxGaWxlTW91bnRSZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SNAoJYXJ0aWZhY3RzGAIgAygLMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQXJ0aWZhY3QSMgoFZmlsZXMYAyADKAsyIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlEiwKBWV2ZW50GAQgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCI4Ch1JbnNwZWN0UnVuVmlydHVhbEZpbGVzUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAEi7AUKIlJ1bnRpbWVWaXJ0dWFsRmlsZUluc3BlY3RvclN1bW1hcnkSGwoKZmlsZV9jb3VudBgBIAEoBUIHukgEGgIoABIcCgttb3VudF9jb3VudBgCIAEoBUIHukgEGgIoABIiChF0cmFuc2FjdGlvbl9jb3VudBgDIAEoBUIHukgEGgIoABIhChBsYXp5X21vdW50X2NvdW50GAQgASgFQge6SAQaAigAEiQKE2h5ZHJhdGVkX2ZpbGVfY291bnQYBSABKAVCB7pIBBoCKAASKAoXY2VyZWJyb19jYW5kaWRhdGVfY291bnQYBiABKAVCB7pIBBoCKAASJAoTY2VyZWJyb19yZWFkeV9jb3VudBgHIAEoBUIHukgEGgIoABIkChNhY2NlcHRlZF9maWxlX2NvdW50GAggASgFQge6SAQaAigAEiYKFWNvbnRlbnRfYWRkcmVzc19jb3VudBgJIAEoBUIHukgEGgIoABIqChloeWRyYXRpb25fY2FjaGVfaGl0X2NvdW50GAogASgFQge6SAQaAigAEigKF3N0YWxlX3RyYW5zYWN0aW9uX2NvdW50GAsgASgFQge6SAQaAigAEiQKE3NoYWRvd2VkX2ZpbGVfY291bnQYDCABKAVCB7pIBBoCKAASHwoOcHJvZHVjZXJfY291bnQYDSABKAVCB7pIBBoCKAASKAoXcHJldmlld19vbmx5X2ZpbGVfY291bnQYDiABKAVCB7pIBBoCKAASIgoRZGVuaWVkX2ZpbGVfY291bnQYDyABKAVCB7pIBBoCKAASJgoVcmVzdHJpY3RlZF9maWxlX2NvdW50GBAgASgFQge6SAQaAigAEiUKFHRvbWJzdG9uZV9maWxlX2NvdW50GBEgASgFQge6SAQaAigAEiIKEWRlbGV0ZV9maWxlX2NvdW50GBIgASgFQge6SAQaAigAEiIKEXJlbmFtZV9maWxlX2NvdW50GBMgASgFQge6SAQaAigAIpYECiBSdW50aW1lVmlydHVhbEZpbGVJbnNwZWN0b3JNb3VudBIMCgRwYXRoGAEgASgJEhsKCmZpbGVfY291bnQYAiABKAVCB7pIBBoCKAASGwoKc2l6ZV9ieXRlcxgDIAEoA0IHukgEIgIoABIMCgRsYXp5GAQgASgIEhMKC3Byb3ZpZGVyX2lkGAUgASgJEhUKDWNvbm5lY3Rpb25faWQYBiABKAkSFAoMY2FjaGVfcG9saWN5GAcgASgJEg4KBnBvbGljeRgIIAEoCRIVCg1jZXJlYnJvX2luZGV4GAkgASgJEiEKEHNlY3JldF9yZWZfY291bnQYCiABKAVCB7pIBBoCKAASFwoPc291cmNlX3NlcnZpY2VzGAsgAygJEigKF3ByZXZpZXdfb25seV9maWxlX2NvdW50GAwgASgFQge6SAQaAigAEiIKEWRlbmllZF9maWxlX2NvdW50GA0gASgFQge6SAQaAigAEiYKFXJlc3RyaWN0ZWRfZmlsZV9jb3VudBgOIAEoBUIHukgEGgIoABIUCgxjYXBhYmlsaXRpZXMYDyADKAkSEAoId3JpdGFibGUYECABKAgSEQoJcmVhZF9vbmx5GBEgASgIEhEKCWdlbmVyYXRlZBgSIAEoCBIXCg9ldmlkZW5jZV9iYWNrZWQYEyABKAgSGgoSZXh0ZXJuYWxseV9pbmRleGVkGBQgASgIIrgCCiZSdW50aW1lVmlydHVhbEZpbGVJbnNwZWN0b3JUcmFuc2FjdGlvbhIWCg50cmFuc2FjdGlvbl9pZBgBIAEoCRIMCgR2aWV3GAIgASgJEhoKEnBhcmVudF9yZXZpc2lvbl9pZBgDIAEoCRIbCgpmaWxlX2NvdW50GAQgASgFQge6SAQaAigAEg4KBnBvbGljeRgFIAEoCRIVCg1jZXJlYnJvX2luZGV4GAYgASgJEhkKEWNvbnRlbnRfYWRkcmVzc2VzGAcgAygJEiUKFHRvbWJzdG9uZV9maWxlX2NvdW50GAggASgFQge6SAQaAigAEiIKEWRlbGV0ZV9maWxlX2NvdW50GAkgASgFQge6SAQaAigAEiIKEXJlbmFtZV9maWxlX2NvdW50GAogASgFQge6SAQaAigAItMCCiNSdW50aW1lVmlydHVhbEZpbGVJbnNwZWN0b3JQcm9kdWNlchIYChBwcm9kdWNlcl9zZXJ2aWNlGAEgASgJEhUKDXByb2R1Y2VyX2tpbmQYAiABKAkSGwoKZmlsZV9jb3VudBgDIAEoBUIHukgEGgIoABIfCg5yZXZpc2lvbl9jb3VudBgEIAEoBUIHukgEGgIoABIZChFydW50aW1lX2V2ZW50X2lkcxgFIAMoCRIUCgxhcnRpZmFjdF9pZHMYBiADKAkSEAoIc3RlcF9pZHMYByADKAkSGgoSdG9vbF9leGVjdXRpb25faWRzGAggAygJEhEKCXRyYWNlX2lkcxgJIAMoCRIVCg1oeWRyYXRpb25faWRzGAogAygJEhcKD3RyYW5zYWN0aW9uX2lkcxgLIAMoCRIbChNwYXJlbnRfcmV2aXNpb25faWRzGAwgAygJIvwCCh5JbnNwZWN0UnVuVmlydHVhbEZpbGVzUmVzcG9uc2USRAoHc3VtbWFyeRgBIAEoCzIzLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVJbnNwZWN0b3JTdW1tYXJ5EkEKBm1vdW50cxgCIAMoCzIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVJbnNwZWN0b3JNb3VudBJNCgx0cmFuc2FjdGlvbnMYAyADKAsyNy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yVHJhbnNhY3Rpb24SOQoHZW50cmllcxgEIAMoCzIoLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVFbnRyeRJHCglwcm9kdWNlcnMYBSADKAsyNC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yUHJvZHVjZXIqvwIKDUFnZW50UnVuU3RhdGUSHwobQUdFTlRfUlVOX1NUQVRFX1VOU1BFQ0lGSUVEEAASHAoYQUdFTlRfUlVOX1NUQVRFX0FDQ0VQVEVEEAESGgoWQUdFTlRfUlVOX1NUQVRFX1FVRVVFRBACEhsKF0FHRU5UX1JVTl9TVEFURV9SVU5OSU5HEAMSGwoXQUdFTlRfUlVOX1NUQVRFX1dBSVRJTkcQBBIdChlBR0VOVF9SVU5fU1RBVEVfU1VDQ0VFREVEEAUSGgoWQUdFTlRfUlVOX1NUQVRFX0ZBSUxFRBAGEh0KGUFHRU5UX1JVTl9TVEFURV9DQU5DRUxMRUQQBxIcChhBR0VOVF9SVU5fU1RBVEVfUkVUUllJTkcQCBIhCh1BR0VOVF9SVU5fU1RBVEVfREVBRF9MRVRURVJFRBAJKqoCChFBZ2VudFJ1blN0ZXBTdGF0ZRIkCiBBR0VOVF9SVU5fU1RFUF9TVEFURV9VTlNQRUNJRklFRBAAEiAKHEFHRU5UX1JVTl9TVEVQX1NUQVRFX1BFTkRJTkcQARIgChxBR0VOVF9SVU5fU1RFUF9TVEFURV9SVU5OSU5HEAISIAocQUdFTlRfUlVOX1NURVBfU1RBVEVfV0FJVElORxADEiIKHkFHRU5UX1JVTl9TVEVQX1NUQVRFX1NVQ0NFRURFRBAEEh8KG0FHRU5UX1JVTl9TVEVQX1NUQVRFX0ZBSUxFRBAFEiIKHkFHRU5UX1JVTl9TVEVQX1NUQVRFX0NBTkNFTExFRBAGEiAKHEFHRU5UX1JVTl9TVEVQX1NUQVRFX1NLSVBQRUQQByrnAwoQQWdlbnRSdW5TdGVwS2luZBIjCh9BR0VOVF9SVU5fU1RFUF9LSU5EX1VOU1BFQ0lGSUVEEAASIgoeQUdFTlRfUlVOX1NURVBfS0lORF9NT0RFTF9DQUxMEAESKAokQUdFTlRfUlVOX1NURVBfS0lORF9UT09MX0NBTExfSU5URU5UEAISIwofQUdFTlRfUlVOX1NURVBfS0lORF9UT09MX1JFU1VMVBADEiUKIUFHRU5UX1JVTl9TVEVQX0tJTkRfQVBQUk9WQUxfV0FJVBAEEh0KGUFHRU5UX1JVTl9TVEVQX0tJTkRfRVJST1IQBRIeChpBR0VOVF9SVU5fU1RFUF9LSU5EX1NZU1RFTRAGEioKJkFHRU5UX1JVTl9TVEVQX0tJTkRfQ09OVEVYVF9FTlJJQ0hNRU5UEAcSHAoYQUdFTlRfUlVOX1NURVBfS0lORF9QTEFOEAgSHQoZQUdFTlRfUlVOX1NURVBfS0lORF9QQVRDSBAJEhwKGEFHRU5UX1JVTl9TVEVQX0tJTkRfVEVTVBAKEikKJUFHRU5UX1JVTl9TVEVQX0tJTkRfUFVMTF9SRVFVRVNUX1NZTkMQCxIjCh9BR0VOVF9SVU5fU1RFUF9LSU5EX1JFVklFV19TWU5DEAwqtgEKEEFnZW50UnVuV2FpdFR5cGUSIwofQUdFTlRfUlVOX1dBSVRfVFlQRV9VTlNQRUNJRklFRBAAEiAKHEFHRU5UX1JVTl9XQUlUX1RZUEVfQVBQUk9WQUwQARIdChlBR0VOVF9SVU5fV0FJVF9UWVBFX0lOUFVUEAISHQoZQUdFTlRfUlVOX1dBSVRfVFlQRV9FVkVOVBADEh0KGUFHRU5UX1JVTl9XQUlUX1RZUEVfVElNRVIQBCrEAQoRQWdlbnRSdW5XYWl0U3RhdGUSJAogQUdFTlRfUlVOX1dBSVRfU1RBVEVfVU5TUEVDSUZJRUQQABIgChxBR0VOVF9SVU5fV0FJVF9TVEFURV9QRU5ESU5HEAESIQodQUdFTlRfUlVOX1dBSVRfU1RBVEVfUkVTT0xWRUQQAhIgChxBR0VOVF9SVU5fV0FJVF9TVEFURV9FWFBJUkVEEAMSIgoeQUdFTlRfUlVOX1dBSVRfU1RBVEVfQ0FOQ0VMTEVEEAQqxQQKFEFnZW50UnVuQXJ0aWZhY3RLaW5kEicKI0FHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1VOU1BFQ0lGSUVEEAASJwojQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfVE9PTF9SRVNVTFQQARIhCh1BR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9DSEFSVBACEiIKHkFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1JFUE9SVBADEiAKHEFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX0ZJTEUQBBImCiJBR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9UUkFOU0NSSVBUEAUSKQolQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfQVBQUk9WQUxfUExBThAGEiIKHkFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1NZU1RFTRAHEiEKHUFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1BBVENIEAgSKAokQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfUFVMTF9SRVFVRVNUEAkSMAosQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfUFVMTF9SRVFVRVNUX0NPTU1FTlQQChIlCiFBR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9DSV9TVEFUVVMQCxIlCiFBR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9SVU5fUEFORUwQDBIuCipBR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9FVkFMVUFUSU9OX0VYQU1QTEUQDSqFCwoQUnVudGltZUV2ZW50VHlwZRIiCh5SVU5USU1FX0VWRU5UX1RZUEVfVU5TUEVDSUZJRUQQABInCiNSVU5USU1FX0VWRU5UX1RZUEVfVFJJR0dFUl9BQ0NFUFRFRBABEiwKKFJVTlRJTUVfRVZFTlRfVFlQRV9BR0VOVF9DT05GSUdfUkVTT0xWRUQQAhIpCiVSVU5USU1FX0VWRU5UX1RZUEVfT0JKRUNUSVZFX1JFU09MVkVEEAMSJAogUlVOVElNRV9FVkVOVF9UWVBFX0NPTlRFWFRfQlVJTFQQBBIoCiRSVU5USU1FX0VWRU5UX1RZUEVfV09SS0VSX0RJU1BBVENIRUQQBRIhCh1SVU5USU1FX0VWRU5UX1RZUEVfUlVOX0ZBSUxFRBAGEiEKHVJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fUVVFVUVEEAcSIgoeUlVOVElNRV9FVkVOVF9UWVBFX1JVTl9DTEFJTUVEEAgSJgoiUlVOVElNRV9FVkVOVF9UWVBFX0xFQVNFX0hFQVJUQkVBVBAJEiQKIFJVTlRJTUVfRVZFTlRfVFlQRV9TVEVQX1JFQ09SREVEEAoSKgomUlVOVElNRV9FVkVOVF9UWVBFX0NIRUNLUE9JTlRfUkVDT1JERUQQCxIoCiRSVU5USU1FX0VWRU5UX1RZUEVfQVJUSUZBQ1RfUkVDT1JERUQQDBIkCiBSVU5USU1FX0VWRU5UX1RZUEVfQ09TVF9SRUNPUkRFRBANEiIKHlJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fV0FJVElORxAOEiIKHlJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fUkVTVU1FRBAPEiQKIFJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fU1VDQ0VFREVEEBASJAogUlVOVElNRV9FVkVOVF9UWVBFX1JVTl9DQU5DRUxMRUQQERIqCiZSVU5USU1FX0VWRU5UX1RZUEVfUlVOX1JFVFJZX1NDSEVEVUxFRBASEigKJFJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fREVBRF9MRVRURVJFRBATEi0KKVJVTlRJTUVfRVZFTlRfVFlQRV9TVFJFQU1fQ1VSU09SX1JFQ09SREVEEBQSMgouUlVOVElNRV9FVkVOVF9UWVBFX0NPREVYX0lOVEVSQUNUSU9OX1JFUVVFU1RFRBAVEjEKLVJVTlRJTUVfRVZFTlRfVFlQRV9DT0RFWF9JTlRFUkFDVElPTl9SRVNPTFZFRBAWEi4KKlJVTlRJTUVfRVZFTlRfVFlQRV9DT0RFWF9QUk9HUkVTU19SRUNPUkRFRBAXEioKJlJVTlRJTUVfRVZFTlRfVFlQRV9DT0RFWF9PVVRQVVRfU1lOQ0VEEBgSLQopUlVOVElNRV9FVkVOVF9UWVBFX0NPREVYX09VVENPTUVfT0JTRVJWRUQQGRIvCitSVU5USU1FX0VWRU5UX1RZUEVfQ0hBTk5FTF9NRVNTQUdFX1JFQ09SREVEEBoSLgoqUlVOVElNRV9FVkVOVF9UWVBFX01PREVMX1JFU1BPTlNFX1JFQ09SREVEEBsSKQolUlVOVElNRV9FVkVOVF9UWVBFX1RPT0xfQ0FMTF9SRUNPUkRFRBAcEisKJ1JVTlRJTUVfRVZFTlRfVFlQRV9UT09MX1JFU1VMVF9SRUNPUkRFRBAdEikKJVJVTlRJTUVfRVZFTlRfVFlQRV9BUFBST1ZBTF9SRVFVRVNURUQQHhIoCiRSVU5USU1FX0VWRU5UX1RZUEVfQVBQUk9WQUxfUkVTT0xWRUQQHxIuCipSVU5USU1FX0VWRU5UX1RZUEVfQUdFTlRfUFJPR1JFU1NfUkVDT1JERUQQICrpAQoXUnVudGltZURlcGVuZGVuY3lTdGF0dXMSKQolUlVOVElNRV9ERVBFTkRFTkNZX1NUQVRVU19VTlNQRUNJRklFRBAAEiYKIlJVTlRJTUVfREVQRU5ERU5DWV9TVEFUVVNfUkVTT0xWRUQQARInCiNSVU5USU1FX0RFUEVOREVOQ1lfU1RBVFVTX05PVF9GT1VORBACEiwKKFJVTlRJTUVfREVQRU5ERU5DWV9TVEFUVVNfTk9UX0NPTkZJR1VSRUQQAxIkCiBSVU5USU1FX0RFUEVOREVOQ1lfU1RBVFVTX0xPQURFRBAEKoQDChdSdW50aW1lV29ya0VudmVsb3BlS2luZBIqCiZSVU5USU1FX1dPUktfRU5WRUxPUEVfS0lORF9VTlNQRUNJRklFRBAAEjIKLlJVTlRJTUVfV09SS19FTlZFTE9QRV9LSU5EX0NPTlZFUlNBVElPTl9USFJFQUQQARIyCi5SVU5USU1FX1dPUktfRU5WRUxPUEVfS0lORF9ESVJFQ1RfQ09OVkVSU0FUSU9OEAISJQohUlVOVElNRV9XT1JLX0VOVkVMT1BFX0tJTkRfVElDS0VUEAMSLQopUlVOVElNRV9XT1JLX0VOVkVMT1BFX0tJTkRfQ0FMRU5EQVJfRVZFTlQQBBIrCidSVU5USU1FX1dPUktfRU5WRUxPUEVfS0lORF9QVUxMX1JFUVVFU1QQBRInCiNSVU5USU1FX1dPUktfRU5WRUxPUEVfS0lORF9JTkNJREVOVBAGEikKJVJVTlRJTUVfV09SS19FTlZFTE9QRV9LSU5EX1JFUE9TSVRPUlkQByqvAwoSUnVudGltZUNoYW5uZWxLaW5kEiQKIFJVTlRJTUVfQ0hBTk5FTF9LSU5EX1VOU1BFQ0lGSUVEEAASHgoaUlVOVElNRV9DSEFOTkVMX0tJTkRfU0xBQ0sQARIcChhSVU5USU1FX0NIQU5ORUxfS0lORF9XRUIQAhIcChhSVU5USU1FX0NIQU5ORUxfS0lORF9BUEkQAxIeChpSVU5USU1FX0NIQU5ORUxfS0lORF9FTUFJTBAEEh8KG1JVTlRJTUVfQ0hBTk5FTF9LSU5EX0dJVEhVQhAFEh8KG1JVTlRJTUVfQ0hBTk5FTF9LSU5EX0xJTkVBUhAGEh0KGVJVTlRJTUVfQ0hBTk5FTF9LSU5EX0pJUkEQBxIcChhSVU5USU1FX0NIQU5ORUxfS0lORF9JREUQCBIjCh9SVU5USU1FX0NIQU5ORUxfS0lORF9NT05JVE9SSU5HEAkSKgomUlVOVElNRV9DSEFOTkVMX0tJTkRfQlJPV1NFUl9FWFRFTlNJT04QChInCiNSVU5USU1FX0NIQU5ORUxfS0lORF9ERVNLVE9QX0hFTFBFUhALKqcHChJSdW50aW1lVHJpZ2dlcktpbmQSJAogUlVOVElNRV9UUklHR0VSX0tJTkRfVU5TUEVDSUZJRUQQABIqCiZSVU5USU1FX1RSSUdHRVJfS0lORF9TTEFDS19BUFBfTUVOVElPThABEi0KKVJVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX0RJUkVDVF9NRVNTQUdFEAISLAooUlVOVElNRV9UUklHR0VSX0tJTkRfU0xBQ0tfU0xBU0hfQ09NTUFORBADEiUKIVJVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX0FDVElPThAEEjIKLlJVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX1RIUkVBRF9DT05USU5VQVRJT04QBRIkCiBSVU5USU1FX1RSSUdHRVJfS0lORF9TTEFDS19FVkVOVBAGEi0KKVJVTlRJTUVfVFJJR0dFUl9LSU5EX0VOU0VNQkxFX1dFQl9NRVNTQUdFEAcSLworUlVOVElNRV9UUklHR0VSX0tJTkRfRU5TRU1CTEVfV0VCSE9PS19FVkVOVBAIEiEKHVJVTlRJTUVfVFJJR0dFUl9LSU5EX1NDSEVEVUxFEAkSHgoaUlVOVElNRV9UUklHR0VSX0tJTkRfRU1BSUwQChIcChhSVU5USU1FX1RSSUdHRVJfS0lORF9BUEkQCxIcChhSVU5USU1FX1RSSUdHRVJfS0lORF9XRUIQDBItCilSVU5USU1FX1RSSUdHRVJfS0lORF9HSVRIVUJfSVNTVUVfQ09NTUVOVBANEjQKMFJVTlRJTUVfVFJJR0dFUl9LSU5EX0dJVEhVQl9QVUxMX1JFUVVFU1RfQ09NTUVOVBAOEiYKIlJVTlRJTUVfVFJJR0dFUl9LSU5EX0xJTkVBUl9BQ1RJT04QDxIkCiBSVU5USU1FX1RSSUdHRVJfS0lORF9JREVfQ09NTUFORBAQEikKJVJVTlRJTUVfVFJJR0dFUl9LSU5EX01PTklUT1JJTkdfQUxFUlQQERIqCiZSVU5USU1FX1RSSUdHRVJfS0lORF9QUk9BQ1RJVkVfUEFUVEVSThASEjcKM1JVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX0FTU0lTVEFOVF9USFJFQURfU1RBUlRFRBATEj8KO1JVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX0FTU0lTVEFOVF9USFJFQURfQ09OVEVYVF9DSEFOR0VEEBQqmQIKFlJ1bnRpbWVWaXNpYmlsaXR5TGV2ZWwSKAokUlVOVElNRV9WSVNJQklMSVRZX0xFVkVMX1VOU1BFQ0lGSUVEEAASJwojUlVOVElNRV9WSVNJQklMSVRZX0xFVkVMX0FHRU5UX09OTFkQARIpCiVSVU5USU1FX1ZJU0lCSUxJVFlfTEVWRUxfVVNFUl9WSVNJQkxFEAISLAooUlVOVElNRV9WSVNJQklMSVRZX0xFVkVMX0NIQU5ORUxfVklTSUJMRRADEioKJlJVTlRJTUVfVklTSUJJTElUWV9MRVZFTF9BRE1JTl9WSVNJQkxFEAQSJwojUlVOVElNRV9WSVNJQklMSVRZX0xFVkVMX0FVRElUX09OTFkQBSrxAQoPUnVudGltZUF1ZGllbmNlEiAKHFJVTlRJTUVfQVVESUVOQ0VfVU5TUEVDSUZJRUQQABIaChZSVU5USU1FX0FVRElFTkNFX0FHRU5UEAESIgoeUlVOVElNRV9BVURJRU5DRV9UUklHR0VSX0FDVE9SEAISHAoYUlVOVElNRV9BVURJRU5DRV9DSEFOTkVMEAMSJQohUlVOVElNRV9BVURJRU5DRV9XT1JLU1BBQ0VfQURNSU5TEAQSGgoWUlVOVElNRV9BVURJRU5DRV9BVURJVBAFEhsKF1JVTlRJTUVfQVVESUVOQ0VfU1lTVEVNEAYqnwMKEUNoYW5uZWxBY3Rpb25LaW5kEiMKH0NIQU5ORUxfQUNUSU9OX0tJTkRfVU5TUEVDSUZJRUQQABIpCiVDSEFOTkVMX0FDVElPTl9LSU5EX0FQUFJPVkFMX0RFQ0lTSU9OEAESIwofQ0hBTk5FTF9BQ1RJT05fS0lORF9XQUlUX1JFU1VNRRACEikKJUNIQU5ORUxfQUNUSU9OX0tJTkRfT0JKRUNUSVZFX0NPTlRST0wQAxInCiNDSEFOTkVMX0FDVElPTl9LSU5EX01FTU9SWV9ERUNJU0lPThAEEiMKH0NIQU5ORUxfQUNUSU9OX0tJTkRfT1BTX0NPTU1BTkQQBRIfChtDSEFOTkVMX0FDVElPTl9LSU5EX0dFTkVSSUMQBhIpCiVDSEFOTkVMX0FDVElPTl9LSU5EX0NPREVYX0lOVEVSQUNUSU9OEAcSJwojQ0hBTk5FTF9BQ1RJT05fS0lORF9CUk9XU0VSX0NPTlRST0wQCBInCiNDSEFOTkVMX0FDVElPTl9LSU5EX0RFU0tUT1BfQ09OVFJPTBAJKqsFChdDaGFubmVsQWN0aW9uVGFyZ2V0S2luZBIqCiZDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9VTlNQRUNJRklFRBAAEiIKHkNIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX1JVThABEiMKH0NIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX1dBSVQQAhInCiNDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9BUFBST1ZBTBADEigKJENIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX09CSkVDVElWRRAEEicKI0NIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX0FSVElGQUNUEAUSLworQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfTUVNT1JZX0NBTkRJREFURRAGEi0KKUNIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX1RPT0xfRVhFQ1VUSU9OEAcSLAooQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfQ09ERVhfU0VTU0lPThAIEiQKIENIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX1BBVENIEAkSKwonQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfUFVMTF9SRVFVRVNUEAoSLgoqQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfQlJPV1NFUl9TRVNTSU9OEAsSKgomQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfQlJPV1NFUl9UQUIQDBIyCi5DSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9CUk9XU0VSX05BVElWRV9IT1NUEA0SLgoqQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfREVTS1RPUF9TRVNTSU9OEA4qkAMKIUNoYW5uZWxBY3Rpb25BdXRob3JpemF0aW9uT3V0Y29tZRI0CjBDSEFOTkVMX0FDVElPTl9BVVRIT1JJWkFUSU9OX09VVENPTUVfVU5TUEVDSUZJRUQQABIwCixDSEFOTkVMX0FDVElPTl9BVVRIT1JJWkFUSU9OX09VVENPTUVfQUxMT1dFRBABEi8KK0NIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9ERU5JRUQQAhI3CjNDSEFOTkVMX0FDVElPTl9BVVRIT1JJWkFUSU9OX09VVENPTUVfVU5NQVBQRURfQUNUT1IQAxI3CjNDSEFOTkVMX0FDVElPTl9BVVRIT1JJWkFUSU9OX09VVENPTUVfV1JPTkdfQVBQUk9WRVIQBBIwCixDSEFOTkVMX0FDVElPTl9BVVRIT1JJWkFUSU9OX09VVENPTUVfRVhQSVJFRBAFEi4KKkNIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9TVEFMRRAGKocECh1DaGFubmVsQWN0aW9uRXhlY3V0aW9uT3V0Y29tZRIwCixDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9VTlNQRUNJRklFRBAAEiwKKENIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX1BFTkRJTkcQARIuCipDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9TVUNDRUVERUQQAhIrCidDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9GQUlMRUQQAxIuCipDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9EVVBMSUNBVEUQBBI1CjFDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9UQVJHRVRfTk9UX0ZPVU5EEAUSNQoxQ0hBTk5FTF9BQ1RJT05fRVhFQ1VUSU9OX09VVENPTUVfQUxSRUFEWV9SRVNPTFZFRBAGEjEKLUNIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX1VOQVVUSE9SSVpFRBAHEiwKKENIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX0VYUElSRUQQCBIqCiZDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9TVEFMRRAJKogCChxDaGFubmVsQWN0aW9uRGVsaXZlcnlPdXRjb21lEi8KK0NIQU5ORUxfQUNUSU9OX0RFTElWRVJZX09VVENPTUVfVU5TUEVDSUZJRUQQABIxCi1DSEFOTkVMX0FDVElPTl9ERUxJVkVSWV9PVVRDT01FX05PVF9BVFRFTVBURUQQARIrCidDSEFOTkVMX0FDVElPTl9ERUxJVkVSWV9PVVRDT01FX1VQREFURUQQAhIqCiZDSEFOTkVMX0FDVElPTl9ERUxJVkVSWV9PVVRDT01FX0ZBSUxFRBADEisKJ0NIQU5ORUxfQUNUSU9OX0RFTElWRVJZX09VVENPTUVfU0tJUFBFRBAEKsUBChJSdW50aW1lU2Vuc2l0aXZpdHkSIwofUlVOVElNRV9TRU5TSVRJVklUWV9VTlNQRUNJRklFRBAAEh4KGlJVTlRJTUVfU0VOU0lUSVZJVFlfUFVCTElDEAESIAocUlVOVElNRV9TRU5TSVRJVklUWV9JTlRFUk5BTBACEiQKIFJVTlRJTUVfU0VOU0lUSVZJVFlfQ09ORklERU5USUFMEAMSIgoeUlVOVElNRV9TRU5TSVRJVklUWV9SRVNUUklDVEVEEAQqggIKFFJ1bnRpbWVSZWRhY3Rpb25LaW5kEiYKIlJVTlRJTUVfUkVEQUNUSU9OX0tJTkRfVU5TUEVDSUZJRUQQABIeChpSVU5USU1FX1JFREFDVElPTl9LSU5EX1BJSRABEiUKIVJVTlRJTUVfUkVEQUNUSU9OX0tJTkRfQ1JFREVOVElBTBACEiQKIFJVTlRJTUVfUkVEQUNUSU9OX0tJTkRfVE9PTF9BUkdTEAMSKAokUlVOVElNRV9SRURBQ1RJT05fS0lORF9QT0xJQ1lfREVUQUlMEAQSKwonUlVOVElNRV9SRURBQ1RJT05fS0lORF9JTlRFUk5BTF9DT05URVhUEAUqoQIKIFJ1bnRpbWVWaXJ0dWFsRmlsZVJlZGFjdGlvblN0YXRlEjQKMFJVTlRJTUVfVklSVFVBTF9GSUxFX1JFREFDVElPTl9TVEFURV9VTlNQRUNJRklFRBAAEiwKKFJVTlRJTUVfVklSVFVBTF9GSUxFX1JFREFDVElPTl9TVEFURV9SQVcQARIxCi1SVU5USU1FX1ZJUlRVQUxfRklMRV9SRURBQ1RJT05fU1RBVEVfUkVEQUNURUQQAhI1CjFSVU5USU1FX1ZJUlRVQUxfRklMRV9SRURBQ1RJT05fU1RBVEVfUFJFVklFV19PTkxZEAMSLworUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVEQUNUSU9OX1NUQVRFX0RFTklFRBAEKs0BChtSdW50aW1lVmlydHVhbEZpbGVPcGVyYXRpb24SLgoqUlVOVElNRV9WSVJUVUFMX0ZJTEVfT1BFUkFUSU9OX1VOU1BFQ0lGSUVEEAASKAokUlVOVElNRV9WSVJUVUFMX0ZJTEVfT1BFUkFUSU9OX1dSSVRFEAESKQolUlVOVElNRV9WSVJUVUFMX0ZJTEVfT1BFUkFUSU9OX0RFTEVURRACEikKJVJVTlRJTUVfVklSVFVBTF9GSUxFX09QRVJBVElPTl9SRU5BTUUQAyqFBAocUnVudGltZVZpcnR1YWxGaWxlUmVhc29uQ29kZRIwCixSVU5USU1FX1ZJUlRVQUxfRklMRV9SRUFTT05fQ09ERV9VTlNQRUNJRklFRBAAEi4KKlJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX05PVF9GT1VORBABEjEKLVJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX0ZJTFRFUkVEX09VVBACEjsKN1JVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX1RPVEFMX0JVREdFVF9FWEhBVVNURUQQAxIxCi1SVU5USU1FX1ZJUlRVQUxfRklMRV9SRUFTT05fQ09ERV9QQVRIX0lOVkFMSUQQBBI2CjJSVU5USU1FX1ZJUlRVQUxfRklMRV9SRUFTT05fQ09ERV9DQVBBQklMSVRZX0RFTklFRBAFEjYKMlJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX1JFVklTSU9OX0NPTkZMSUNUEAYSMgouUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVBU09OX0NPREVfQ1VSU09SX0xBR0dFRBAHEjwKOFJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX1RFTVBPUkFSSUxZX1VOQVZBSUxBQkxFEAgqnQMKKFJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uQXBwbHlTdGF0dXMSPQo5UlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fQVBQTFlfU1RBVFVTX1VOU1BFQ0lGSUVEEAASNwozUlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fQVBQTFlfU1RBVFVTX0NMRUFOEAESOwo3UlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fQVBQTFlfU1RBVFVTX0lERU5USUNBTBACEjoKNlJVTlRJTUVfVklSVFVBTF9GSUxFX1RSQU5TQUNUSU9OX0FQUExZX1NUQVRVU19DT05GTElDVBADEj4KOlJVTlRJTUVfVklSVFVBTF9GSUxFX1RSQU5TQUNUSU9OX0FQUExZX1NUQVRVU19NSVNTSU5HX0JBU0UQBBJACjxSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9BUFBMWV9TVEFUVVNfTUlTU0lOR19UQVJHRVQQBSrqAgokUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25PdXRjb21lEjgKNFJVTlRJTUVfVklSVFVBTF9GSUxFX1RSQU5TQUNUSU9OX09VVENPTUVfVU5TUEVDSUZJRUQQABIyCi5SVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9PVVRDT01FX0NMRUFOEAESNAowUlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fT1VUQ09NRV9BUFBMSUVEEAISNAowUlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fT1VUQ09NRV9SRUJBU0VEEAMSNQoxUlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fT1VUQ09NRV9DT05GTElDVBAEEjEKLVJVTlRJTUVfVklSVFVBTF9GSUxFX1RSQU5TQUNUSU9OX09VVENPTUVfTk9PUBAFMrglChNBZ2VudFJ1bnRpbWVTZXJ2aWNlEl4KDUhhbmRsZVRyaWdnZXISJS5hZ2VudHJ1bnRpbWUudjEuSGFuZGxlVHJpZ2dlclJlcXVlc3QaJi5hZ2VudHJ1bnRpbWUudjEuSGFuZGxlVHJpZ2dlclJlc3BvbnNlElsKDENsYWltTmV4dFJ1bhIkLmFnZW50cnVudGltZS52MS5DbGFpbU5leHRSdW5SZXF1ZXN0GiUuYWdlbnRydW50aW1lLnYxLkNsYWltTmV4dFJ1blJlc3BvbnNlElsKDEhlYXJ0YmVhdFJ1bhIkLmFnZW50cnVudGltZS52MS5IZWFydGJlYXRSdW5SZXF1ZXN0GiUuYWdlbnRydW50aW1lLnYxLkhlYXJ0YmVhdFJ1blJlc3BvbnNlEl4KDVJlbmV3UnVuTGVhc2USJS5hZ2VudHJ1bnRpbWUudjEuUmVuZXdSdW5MZWFzZVJlcXVlc3QaJi5hZ2VudHJ1bnRpbWUudjEuUmVuZXdSdW5MZWFzZVJlc3BvbnNlEl4KDVJlY29yZFJ1blN0ZXASJS5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuU3RlcFJlcXVlc3QaJi5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuU3RlcFJlc3BvbnNlEnAKE1JlY29yZFJ1bkNoZWNrcG9pbnQSKy5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuQ2hlY2twb2ludFJlcXVlc3QaLC5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuQ2hlY2twb2ludFJlc3BvbnNlEmoKEVJlY29yZFJ1bkFydGlmYWN0EikuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1bkFydGlmYWN0UmVxdWVzdBoqLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5BcnRpZmFjdFJlc3BvbnNlEl4KDVJlY29yZFJ1bkNvc3QSJS5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuQ29zdFJlcXVlc3QaJi5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuQ29zdFJlc3BvbnNlEnYKFVJlY29yZFJ1blN0cmVhbUN1cnNvchItLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5TdHJlYW1DdXJzb3JSZXF1ZXN0Gi4uYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blN0cmVhbUN1cnNvclJlc3BvbnNlEmEKDlJlY29yZFJ1bkV2ZW50EiYuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1bkV2ZW50UmVxdWVzdBonLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5FdmVudFJlc3BvbnNlEkwKB1dhaXRSdW4SHy5hZ2VudHJ1bnRpbWUudjEuV2FpdFJ1blJlcXVlc3QaIC5hZ2VudHJ1bnRpbWUudjEuV2FpdFJ1blJlc3BvbnNlElIKCVJlc3VtZVJ1bhIhLmFnZW50cnVudGltZS52MS5SZXN1bWVSdW5SZXF1ZXN0GiIuYWdlbnRydW50aW1lLnYxLlJlc3VtZVJ1blJlc3BvbnNlElgKC0NvbXBsZXRlUnVuEiMuYWdlbnRydW50aW1lLnYxLkNvbXBsZXRlUnVuUmVxdWVzdBokLmFnZW50cnVudGltZS52MS5Db21wbGV0ZVJ1blJlc3BvbnNlEkwKB0ZhaWxSdW4SHy5hZ2VudHJ1bnRpbWUudjEuRmFpbFJ1blJlcXVlc3QaIC5hZ2VudHJ1bnRpbWUudjEuRmFpbFJ1blJlc3BvbnNlElIKCUNhbmNlbFJ1bhIhLmFnZW50cnVudGltZS52MS5DYW5jZWxSdW5SZXF1ZXN0GiIuYWdlbnRydW50aW1lLnYxLkNhbmNlbFJ1blJlc3BvbnNlEk8KCFJldHJ5UnVuEiAuYWdlbnRydW50aW1lLnYxLlJldHJ5UnVuUmVxdWVzdBohLmFnZW50cnVudGltZS52MS5SZXRyeVJ1blJlc3BvbnNlEl4KDURlYWRMZXR0ZXJSdW4SJS5hZ2VudHJ1bnRpbWUudjEuRGVhZExldHRlclJ1blJlcXVlc3QaJi5hZ2VudHJ1bnRpbWUudjEuRGVhZExldHRlclJ1blJlc3BvbnNlEkkKBkdldFJ1bhIeLmFnZW50cnVudGltZS52MS5HZXRSdW5SZXF1ZXN0Gh8uYWdlbnRydW50aW1lLnYxLkdldFJ1blJlc3BvbnNlEnYKFUdldFRlYW1tYXRlV29ya0xlZGdlchItLmFnZW50cnVudGltZS52MS5HZXRUZWFtbWF0ZVdvcmtMZWRnZXJSZXF1ZXN0Gi4uYWdlbnRydW50aW1lLnYxLkdldFRlYW1tYXRlV29ya0xlZGdlclJlc3BvbnNlEnkKFkxpc3RSdW5zQnlXb3JrRW52ZWxvcGUSLi5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1bnNCeVdvcmtFbnZlbG9wZVJlcXVlc3QaLy5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1bnNCeVdvcmtFbnZlbG9wZVJlc3BvbnNlEn8KGEdldENoYW5uZWxUaHJlYWRBZG9wdGlvbhIwLmFnZW50cnVudGltZS52MS5HZXRDaGFubmVsVGhyZWFkQWRvcHRpb25SZXF1ZXN0GjEuYWdlbnRydW50aW1lLnYxLkdldENoYW5uZWxUaHJlYWRBZG9wdGlvblJlc3BvbnNlEoUBChpMaXN0Q2hhbm5lbFRocmVhZEFkb3B0aW9ucxIyLmFnZW50cnVudGltZS52MS5MaXN0Q2hhbm5lbFRocmVhZEFkb3B0aW9uc1JlcXVlc3QaMy5hZ2VudHJ1bnRpbWUudjEuTGlzdENoYW5uZWxUaHJlYWRBZG9wdGlvbnNSZXNwb25zZRJbCgxMaXN0UnVuV2FpdHMSJC5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1bldhaXRzUmVxdWVzdBolLmFnZW50cnVudGltZS52MS5MaXN0UnVuV2FpdHNSZXNwb25zZRKFAQoaUmVjb3JkQ2hhbm5lbEFjdGlvblJlY2VpcHQSMi5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkQ2hhbm5lbEFjdGlvblJlY2VpcHRSZXF1ZXN0GjMuYWdlbnRydW50aW1lLnYxLlJlY29yZENoYW5uZWxBY3Rpb25SZWNlaXB0UmVzcG9uc2USfAoXR2V0Q2hhbm5lbEFjdGlvblJlY2VpcHQSLy5hZ2VudHJ1bnRpbWUudjEuR2V0Q2hhbm5lbEFjdGlvblJlY2VpcHRSZXF1ZXN0GjAuYWdlbnRydW50aW1lLnYxLkdldENoYW5uZWxBY3Rpb25SZWNlaXB0UmVzcG9uc2USggEKGUxpc3RDaGFubmVsQWN0aW9uUmVjZWlwdHMSMS5hZ2VudHJ1bnRpbWUudjEuTGlzdENoYW5uZWxBY3Rpb25SZWNlaXB0c1JlcXVlc3QaMi5hZ2VudHJ1bnRpbWUudjEuTGlzdENoYW5uZWxBY3Rpb25SZWNlaXB0c1Jlc3BvbnNlEl4KDUxpc3RSdW5FdmVudHMSJS5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1bkV2ZW50c1JlcXVlc3QaJi5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1bkV2ZW50c1Jlc3BvbnNlEnAKE0xpc3RSdW5WaXJ0dWFsRmlsZXMSKy5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QaLC5hZ2VudHJ1bnRpbWUudjEuTGlzdFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlEm0KElJlYWRSdW5WaXJ0dWFsRmlsZRIqLmFnZW50cnVudGltZS52MS5SZWFkUnVuVmlydHVhbEZpbGVSZXF1ZXN0GisuYWdlbnRydW50aW1lLnYxLlJlYWRSdW5WaXJ0dWFsRmlsZVJlc3BvbnNlEm0KElN0YXRSdW5WaXJ0dWFsRmlsZRIqLmFnZW50cnVudGltZS52MS5TdGF0UnVuVmlydHVhbEZpbGVSZXF1ZXN0GisuYWdlbnRydW50aW1lLnYxLlN0YXRSdW5WaXJ0dWFsRmlsZVJlc3BvbnNlEnUKFFdhdGNoUnVuVmlydHVhbEZpbGVzEiwuYWdlbnRydW50aW1lLnYxLldhdGNoUnVuVmlydHVhbEZpbGVzUmVxdWVzdBotLmFnZW50cnVudGltZS52MS5XYXRjaFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlMAESfwoYQmF0Y2hSZWFkUnVuVmlydHVhbEZpbGVzEjAuYWdlbnRydW50aW1lLnYxLkJhdGNoUmVhZFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QaMS5hZ2VudHJ1bnRpbWUudjEuQmF0Y2hSZWFkUnVuVmlydHVhbEZpbGVzUmVzcG9uc2USkQEKHkJ1aWxkUnVuVmlydHVhbEZpbGVDb250ZXh0UGFjaxI2LmFnZW50cnVudGltZS52MS5CdWlsZFJ1blZpcnR1YWxGaWxlQ29udGV4dFBhY2tSZXF1ZXN0GjcuYWdlbnRydW50aW1lLnYxLkJ1aWxkUnVuVmlydHVhbEZpbGVDb250ZXh0UGFja1Jlc3BvbnNlEnYKFVNlYXJjaFJ1blZpcnR1YWxGaWxlcxItLmFnZW50cnVudGltZS52MS5TZWFyY2hSdW5WaXJ0dWFsRmlsZXNSZXF1ZXN0Gi4uYWdlbnRydW50aW1lLnYxLlNlYXJjaFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlEosBChxSZWNvcmRSdW5WaXJ0dWFsRmlsZVByb3Bvc2FsEjQuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blZpcnR1YWxGaWxlUHJvcG9zYWxSZXF1ZXN0GjUuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blZpcnR1YWxGaWxlUHJvcG9zYWxSZXNwb25zZRKUAQofUmVjb3JkUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvbhI3LmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBo4LmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2USlwEKIFByb21vdGVSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uEjguYWdlbnRydW50aW1lLnYxLlByb21vdGVSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBo5LmFnZW50cnVudGltZS52MS5Qcm9tb3RlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlc3BvbnNlEo4BCh1EaWZmUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvbhI1LmFnZW50cnVudGltZS52MS5EaWZmUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QaNi5hZ2VudHJ1bnRpbWUudjEuRGlmZlJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRKRAQoeQXBwbHlSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uEjYuYWdlbnRydW50aW1lLnYxLkFwcGx5UnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QaNy5hZ2VudHJ1bnRpbWUudjEuQXBwbHlSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2USlAEKH1JlYmFzZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb24SNy5hZ2VudHJ1bnRpbWUudjEuUmViYXNlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QaOC5hZ2VudHJ1bnRpbWUudjEuUmViYXNlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlc3BvbnNlEoUBChpIeWRyYXRlUnVuVmlydHVhbEZpbGVNb3VudBIyLmFnZW50cnVudGltZS52MS5IeWRyYXRlUnVuVmlydHVhbEZpbGVNb3VudFJlcXVlc3QaMy5hZ2VudHJ1bnRpbWUudjEuSHlkcmF0ZVJ1blZpcnR1YWxGaWxlTW91bnRSZXNwb25zZRJ5ChZJbnNwZWN0UnVuVmlydHVhbEZpbGVzEi4uYWdlbnRydW50aW1lLnYxLkluc3BlY3RSdW5WaXJ0dWFsRmlsZXNSZXF1ZXN0Gi8uYWdlbnRydW50aW1lLnYxLkluc3BlY3RSdW5WaXJ0dWFsRmlsZXNSZXNwb25zZUJDWkFnaXRodWIuY29tL2V2YWxvcHMvcGxhdGZvcm0vZ2VuL2dvL2FnZW50cnVudGltZS92MTthZ2VudHJ1bnRpbWV2MWIGcHJvdG8z", [file_agents_v1_agents, file_buf_validate_validate, file_codex_v1_codex, file_common_v1_surface, file_google_protobuf_struct, file_google_protobuf_timestamp, file_objectives_v1_objectives]);
14
+ export const file_agentruntime_v1_runtime = /*@__PURE__*/ fileDesc("Ch1hZ2VudHJ1bnRpbWUvdjEvcnVudGltZS5wcm90bxIPYWdlbnRydW50aW1lLnYxIqMDChVSdW50aW1lQ2hhbm5lbENvbnRleHQSQwoMY2hhbm5lbF9raW5kGAEgASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsS2luZEIIukgFggECEAESHQoVcHJvdmlkZXJfd29ya3NwYWNlX2lkGAIgASgJEhIKCmNoYW5uZWxfaWQYAyABKAkSEQoJdGhyZWFkX2lkGAQgASgJEhIKCm1lc3NhZ2VfaWQYBSABKAkSEAoIYWN0b3JfaWQYBiABKAkSEQoJcGVybWFsaW5rGAcgASgJEkoKCmF0dHJpYnV0ZXMYCCADKAsyNi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxDb250ZXh0LkF0dHJpYnV0ZXNFbnRyeRIYChBhY3Rvcl9jaGFubmVsX2lkGAkgASgJEhcKD2FjdG9yX2VudGl0eV9pZBgKIAEoCRIUCgxwcmluY2lwYWxfaWQYCyABKAkaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEijQIKE1J1bnRpbWVXb3JrRW52ZWxvcGUSEwoCaWQYASABKAlCB7pIBHICEAESQAoEa2luZBgCIAEoDjIoLmFnZW50cnVudGltZS52MS5SdW50aW1lV29ya0VudmVsb3BlS2luZEIIukgFggECEAESDwoHcm9vdF9pZBgDIAEoCRIRCglwYXJlbnRfaWQYBCABKAkSSAoKYXR0cmlidXRlcxgFIAMoCzI0LmFnZW50cnVudGltZS52MS5SdW50aW1lV29ya0VudmVsb3BlLkF0dHJpYnV0ZXNFbnRyeRoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKoAQobUnVudGltZVByb2FjdGl2ZVNvdXJjZUV2ZW50Eg4KBnN0cmVhbRgBIAEoCRIPCgdzdWJqZWN0GAIgASgJEhAKCHNlcXVlbmNlGAMgASgEEhAKCGV2ZW50X2lkGAQgASgJEhQKDGV2ZW50X2ZhbWlseRgFIAEoCRISCgpldmVudF90eXBlGAYgASgJEhoKEnByb3ZpZGVyX29iamVjdF9pZBgHIAEoCSKUAQoWUnVudGltZVByb2FjdGl2ZVBvbGljeRIZCgx3YWtlX2VuYWJsZWQYASABKAhIAIgBARIVCg10cmlnZ2VyX2tpbmRzGAIgAygJEh0KFWFsbG93X2N1c3RvbWVyX2ZhY2luZxgDIAEoCBIYChBwb3N0X3J1bl9zdGFydGVkGAQgASgIQg8KDV93YWtlX2VuYWJsZWQibQoaUnVudGltZVNvdXJjZUhlYWx0aFN1bW1hcnkSDgoGc3RhdHVzGAEgASgJEhcKD2NoZWNrZWRfc291cmNlcxgCIAMoCRIVCg1zdGFsZV9zb3VyY2VzGAMgAygJEg8KB3N1bW1hcnkYBCABKAki3AMKGlJ1bnRpbWVDZXJlYnJvRmFjdHNDb250ZXh0EhAKCHByb3ZpZGVyGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRINCgVxdWVyeRgDIAEoCRIRCgl0aGluZ19pZHMYBCADKAkSEAoIZmFjdF9pZHMYBSADKAkSEQoJZXZlbnRfaWRzGAYgAygJEkoKFXNvdXJjZV9oZWFsdGhfc3VtbWFyeRgHIAEoCzIrLmFnZW50cnVudGltZS52MS5SdW50aW1lU291cmNlSGVhbHRoU3VtbWFyeRIcChRiZWxpZWZfZGVidWdfc3VtbWFyeRgIIAEoCRISCgpyb2xsb3V0X2lkGAkgASgJEhcKD3JvbGxvdXRfc3VtbWFyeRgKIAEoCRIWCg5yb2xsb3V0X3Jlc3VsdBgLIAEoCRJoChByZXRyaWV2YWxfY291bnRzGAwgAygLMkAuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDZXJlYnJvRmFjdHNDb250ZXh0LlJldHJpZXZhbENvdW50c0VudHJ5Qgy6SAmaAQYqBCICKAAaNgoUUmV0cmlldmFsQ291bnRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgDOgI4ASLqAgoXUnVudGltZVByb2FjdGl2ZUNvbnRleHQSGQoRcHJvYWN0aXZlX3J1bnRpbWUYASABKAgSGAoQcHJvYWN0aXZlX2luZ2VzdBgCIAEoCRJCCgxzb3VyY2VfZXZlbnQYAyABKAsyLC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVByb2FjdGl2ZVNvdXJjZUV2ZW50EhEKCXRoaW5nX2lkcxgEIAMoCRIUCgxhY3Rpb25fY2xhc3MYBSABKAkSEgoKcmlza19sZXZlbBgGIAEoCRIcChRleHRlcm5hbF9zaWRlX2VmZmVjdBgHIAEoCBJCCg1mYWN0c19jb250ZXh0GAggASgLMisuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDZXJlYnJvRmFjdHNDb250ZXh0EjcKBnBvbGljeRgJIAEoCzInLmFnZW50cnVudGltZS52MS5SdW50aW1lUHJvYWN0aXZlUG9saWN5IooBChBSdW50aW1lUmVkYWN0aW9uEj0KBGtpbmQYASABKA4yJS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVJlZGFjdGlvbktpbmRCCLpIBYIBAhABEhIKCmZpZWxkX3BhdGgYAiABKAkSEwoLcmVwbGFjZW1lbnQYAyABKAkSDgoGcmVhc29uGAQgASgJIrUDChlSdW50aW1lVmlzaWJpbGl0eU1ldGFkYXRhEkAKBWxldmVsGAEgASgOMicuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXNpYmlsaXR5TGV2ZWxCCLpIBYIBAhABEkIKCWF1ZGllbmNlcxgCIAMoDjIgLmFnZW50cnVudGltZS52MS5SdW50aW1lQXVkaWVuY2VCDbpICpIBByIFggECEAESQgoLc2Vuc2l0aXZpdHkYAyABKA4yIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVNlbnNpdGl2aXR5Qgi6SAWCAQIQARIUCgxzYWZlX3N1bW1hcnkYBCABKAkSNQoKcmVkYWN0aW9ucxgFIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uEk4KCmF0dHJpYnV0ZXMYBiADKAsyOi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpc2liaWxpdHlNZXRhZGF0YS5BdHRyaWJ1dGVzRW50cnkaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEioAMKEkNoYW5uZWxBY3Rpb25BY3RvchJDCgxjaGFubmVsX2tpbmQYASABKA4yIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxLaW5kQgi6SAWCAQIQARIdChVwcm92aWRlcl93b3Jrc3BhY2VfaWQYAiABKAkSEgoKY2hhbm5lbF9pZBgDIAEoCRIRCgl0aHJlYWRfaWQYBCABKAkSEgoKbWVzc2FnZV9pZBgFIAEoCRIRCglhY3Rpb25faWQYBiABKAkSEwoLY2FsbGJhY2tfaWQYByABKAkSGAoQYWN0b3JfY2hhbm5lbF9pZBgIIAEoCRIXCg9hY3Rvcl9lbnRpdHlfaWQYCSABKAkSFAoMcHJpbmNpcGFsX2lkGAogASgJEkcKCmF0dHJpYnV0ZXMYCyADKAsyMy5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvbkFjdG9yLkF0dHJpYnV0ZXNFbnRyeRoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLRBwoUQ2hhbm5lbEFjdGlvblJlY2VpcHQSCgoCaWQYASABKAkSHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEiAKD2lkZW1wb3RlbmN5X2tleRgDIAEoCUIHukgEcgIQARIUCgxyZXF1ZXN0X2hhc2gYBCABKAkSMgoMc3VyZmFjZV90eXBlGAUgASgOMhIuY29tbW9uLnYxLlN1cmZhY2VCCLpIBYIBAhABEkEKC2FjdGlvbl9raW5kGAYgASgOMiIuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxBY3Rpb25LaW5kQgi6SAWCAQIQARJHCgt0YXJnZXRfa2luZBgHIAEoDjIoLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uVGFyZ2V0S2luZEIIukgFggECEAESEQoJdGFyZ2V0X2lkGAggASgJEg4KBnJ1bl9pZBgJIAEoCRIPCgd3YWl0X2lkGAogASgJEhsKE2FwcHJvdmFsX3JlcXVlc3RfaWQYCyABKAkSFAoMb2JqZWN0aXZlX2lkGAwgASgJEjIKBWFjdG9yGA0gASgLMiMuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxBY3Rpb25BY3RvchIoCgdwYXlsb2FkGA4gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBJbChVhdXRob3JpemF0aW9uX291dGNvbWUYDyABKA4yMi5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvbkF1dGhvcml6YXRpb25PdXRjb21lQgi6SAWCAQIQARJTChFleGVjdXRpb25fb3V0Y29tZRgQIAEoDjIuLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uRXhlY3V0aW9uT3V0Y29tZUIIukgFggECEAESUQoQZGVsaXZlcnlfb3V0Y29tZRgRIAEoDjItLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uRGVsaXZlcnlPdXRjb21lQgi6SAWCAQIQARIOCgZyZWFzb24YEiABKAkSFAoMZXJyb3JfcmVhc29uGBMgASgJEi4KCmNyZWF0ZWRfYXQYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYFSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkYKGmNvZGV4X2ludGVyYWN0aW9uX2RlY2lzaW9uGBYgASgLMiIuY29kZXgudjEuQ29kZXhJbnRlcmFjdGlvbkRlY2lzaW9uIsEFChFOb3JtYWxpemVkVHJpZ2dlchIdCgx3b3Jrc3BhY2VfaWQYASABKAlCB7pIBHICEAESGQoIYWdlbnRfaWQYAiABKAlCB7pIBHICEAESEwoHc3VyZmFjZRgDIAEoCUICGAESEgoKY2hhbm5lbF9pZBgEIAEoCRIgCg9pZGVtcG90ZW5jeV9rZXkYBSABKAlCB7pIBHICEAESFwoPc291cmNlX2V2ZW50X2lkGAYgASgJEh0KEXNvdXJjZV9ldmVudF90eXBlGAcgASgJQgIYARIQCghhY3Rvcl9pZBgIIAEoCRIWCg5jb3JyZWxhdGlvbl9pZBgJIAEoCRIoCgdwYXlsb2FkGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIvCgtyZWNlaXZlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMgoMc3VyZmFjZV90eXBlGAwgASgOMhIuY29tbW9uLnYxLlN1cmZhY2VCCLpIBYIBAhABEj8KD2NoYW5uZWxfY29udGV4dBgNIAEoCzImLmFnZW50cnVudGltZS52MS5SdW50aW1lQ2hhbm5lbENvbnRleHQSQwoMdHJpZ2dlcl9raW5kGA4gASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVUcmlnZ2VyS2luZEIIukgFggECEAESOwoNd29ya19lbnZlbG9wZRgPIAEoCzIkLmFnZW50cnVudGltZS52MS5SdW50aW1lV29ya0VudmVsb3BlEi4KCmNvZGV4X3dvcmsYECABKAsyGi5jb2RleC52MS5Db2RleFdvcmtSZXF1ZXN0EkMKEXByb2FjdGl2ZV9jb250ZXh0GBEgASgLMiguYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVQcm9hY3RpdmVDb250ZXh0Iv4BCg5SdW50aW1lQ29udGV4dBI4CgxkZXBlbmRlbmNpZXMYASADKAsyIi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZURlcGVuZGVuY3kSQwoKYXR0cmlidXRlcxgCIAMoCzIvLmFnZW50cnVudGltZS52MS5SdW50aW1lQ29udGV4dC5BdHRyaWJ1dGVzRW50cnkSOgoNdmlydHVhbF9maWxlcxgDIAMoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEijwQKElJ1bnRpbWVWaXJ0dWFsRmlsZRIVCgRwYXRoGAEgASgJQge6SARyAhABEhIKCm1lZGlhX3R5cGUYAiABKAkSDwoHY29udGVudBgDIAEoCRIWCg5zb3VyY2Vfc2VydmljZRgEIAEoCRIbChNzb3VyY2VfcmVmZXJlbmNlX2lkGAUgASgJEkMKCG1ldGFkYXRhGAYgAygLMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZS5NZXRhZGF0YUVudHJ5EkEKCnByb3ZlbmFuY2UYByABKAsyLS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlUHJvdmVuYW5jZRJCCgtzZW5zaXRpdml0eRgIIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lU2Vuc2l0aXZpdHlCCLpIBYIBAhABElQKD3JlZGFjdGlvbl9zdGF0ZRgJIAEoDjIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWRhY3Rpb25TdGF0ZUIIukgFggECEAESNQoKcmVkYWN0aW9ucxgKIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKQAwocUnVudGltZVZpcnR1YWxGaWxlUHJvdmVuYW5jZRIYChBwcm9kdWNlcl9zZXJ2aWNlGAEgASgJEhUKDXByb2R1Y2VyX2tpbmQYAiABKAkSGwoTc291cmNlX3JlZmVyZW5jZV9pZBgDIAEoCRIYChBydW50aW1lX2V2ZW50X2lkGAQgASgJEhMKC2FydGlmYWN0X2lkGAUgASgJEg8KB3N0ZXBfaWQYBiABKAkSGQoRdG9vbF9leGVjdXRpb25faWQYByABKAkSFAoMaHlkcmF0aW9uX2lkGAggASgJEhYKDnRyYW5zYWN0aW9uX2lkGAkgASgJEhQKDHByb21vdGlvbl9pZBgKIAEoCRIXCg9ldmlkZW5jZV9oYW5kbGUYCyABKAkSEAoIdHJhY2VfaWQYDCABKAkSDwoHc3Bhbl9pZBgNIAEoCRIbChNwYXJlbnRfcmV2aXNpb25faWRzGA4gAygJEhMKC3Byb3ZpZGVyX2lkGA8gASgJEhUKDWNvbm5lY3Rpb25faWQYECABKAki/AgKF1J1bnRpbWVWaXJ0dWFsRmlsZUVudHJ5EgwKBHBhdGgYASABKAkSEgoKbWVkaWFfdHlwZRgCIAEoCRIWCg5zb3VyY2Vfc2VydmljZRgDIAEoCRIbChNzb3VyY2VfcmVmZXJlbmNlX2lkGAQgASgJEkgKCG1ldGFkYXRhGAUgAygLMjYuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUVudHJ5Lk1ldGFkYXRhRW50cnkSGwoKc2l6ZV9ieXRlcxgGIAEoA0IHukgEIgIoABIWCg5jb250ZW50X3NoYTI1NhgHIAEoCRIZChFjb250ZW50X3RydW5jYXRlZBgIIAEoCBINCgVtb3VudBgJIAEoCRIMCgRraW5kGAogASgJEhMKC3Blcm1pc3Npb25zGAsgASgJEgwKBHZpZXcYDCABKAkSEwoLcmV2aXNpb25faWQYDSABKAkSGgoScGFyZW50X3JldmlzaW9uX2lkGA4gASgJEhMKC3Byb3ZpZGVyX2lkGA8gASgJEhUKDWNvbm5lY3Rpb25faWQYECABKAkSFAoMY2FjaGVfcG9saWN5GBEgASgJEg4KBnBvbGljeRgSIAEoCRIMCgRsYXp5GBMgASgIEiEKEHNlY3JldF9yZWZfY291bnQYFCABKAVCB7pIBBoCKAASFQoNY2VyZWJyb19pbmRleBgVIAEoCRIXCg9jb250ZW50X2FkZHJlc3MYFiABKAkSQQoKcHJvdmVuYW5jZRgXIAEoCzItLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVQcm92ZW5hbmNlEkIKC3NlbnNpdGl2aXR5GBggASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVTZW5zaXRpdml0eUIIukgFggECEAESVAoPcmVkYWN0aW9uX3N0YXRlGBkgASgOMjEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlZGFjdGlvblN0YXRlQgi6SAWCAQIQARI1CgpyZWRhY3Rpb25zGBogAygLMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVSZWRhY3Rpb24SSQoJb3BlcmF0aW9uGBsgASgOMiwuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZU9wZXJhdGlvbkIIukgFggECEAESEQoJdG9tYnN0b25lGBwgASgIEhMKC3JlbmFtZV9mcm9tGB0gASgJEhEKCXJlbmFtZV90bxgeIAEoCRIUCgxjYXBhYmlsaXRpZXMYHyADKAkSEAoId3JpdGFibGUYICABKAgSEQoJcmVhZF9vbmx5GCEgASgIEhEKCWdlbmVyYXRlZBgiIAEoCBIXCg9ldmlkZW5jZV9iYWNrZWQYIyABKAgSGgoSZXh0ZXJuYWxseV9pbmRleGVkGCQgASgIGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKPAgoXUnVudGltZVZpcnR1YWxGaWxlTWF0Y2gSDAoEcGF0aBgBIAEoCRIcCgtsaW5lX251bWJlchgCIAEoBUIHukgEGgIoABIPCgdzbmlwcGV0GAMgASgJEg0KBW1vdW50GAQgASgJEhYKDnNvdXJjZV9zZXJ2aWNlGAUgASgJEhYKDmJlZm9yZV9jb250ZXh0GAYgAygJEhUKDWFmdGVyX2NvbnRleHQYByADKAkSFgoFc2NvcmUYCCABKAVCB7pIBBoCKAASFQoNbWF0Y2hfcmVhc29ucxgJIAMoCRIMCgR2aWV3GAogASgJEgwKBGtpbmQYCyABKAkSFgoOdHJhbnNhY3Rpb25faWQYDCABKAkiwwEKEVJ1bnRpbWVEZXBlbmRlbmN5EhgKB3NlcnZpY2UYASABKAlCB7pIBHICEAESDwoHcHVycG9zZRgCIAEoCRIQCghyZXF1aXJlZBgDIAEoCBISCgZzdGF0dXMYBCABKAlCAhgBEhQKDHJlZmVyZW5jZV9pZBgFIAEoCRJHCgtzdGF0dXNfdHlwZRgGIAEoDjIoLmFnZW50cnVudGltZS52MS5SdW50aW1lRGVwZW5kZW5jeVN0YXR1c0IIukgFggECEAEiXwoPQWdlbnRSdW5MaW5rYWdlEg4KBnJ1bl9pZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEAoIYWdlbnRfaWQYAyABKAkSFAoMb2JqZWN0aXZlX2lkGAQgASgJInkKE1J1bnRpbWVUcmFjZUNvbnRleHQSEAoIdHJhY2VfaWQYASABKAkSDwoHc3Bhbl9pZBgCIAEoCRIWCg5wYXJlbnRfc3Bhbl9pZBgDIAEoCRITCgt0cmFjZXBhcmVudBgEIAEoCRISCgp0cmFjZXN0YXRlGAUgASgJIqYLCghBZ2VudFJ1bhIKCgJpZBgBIAEoCRIzCgd0cmlnZ2VyGAIgASgLMiIuYWdlbnRydW50aW1lLnYxLk5vcm1hbGl6ZWRUcmlnZ2VyEi0KBXN0YXRlGAMgASgOMh4uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RhdGUSHwoFYWdlbnQYBCABKAsyEC5hZ2VudHMudjEuQWdlbnQSLAoMYWdlbnRfY29uZmlnGAUgASgLMhYuYWdlbnRzLnYxLkFnZW50Q29uZmlnEisKCW9iamVjdGl2ZRgGIAEoCzIYLm9iamVjdGl2ZXMudjEuT2JqZWN0aXZlEjAKB2NvbnRleHQYByABKAsyHy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNvbnRleHQSFAoMd29ya2VyX3F1ZXVlGAggASgJEhUKDWVycm9yX21lc3NhZ2UYCSABKAkSLgoKY3JlYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMQoHbGlua2FnZRgMIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USDwoHYXR0ZW1wdBgPIAEoBRIUCgxtYXhfYXR0ZW1wdHMYECABKAUSLQoFbGVhc2UYESABKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MZWFzZRI+ChFsYXRlc3RfY2hlY2twb2ludBgSIAEoCzIjLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNoZWNrcG9pbnQSLAoFc3RlcHMYEyADKAsyHS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdGVwEiwKBXdhaXRzGBQgAygLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdBI0CglhcnRpZmFjdHMYFSADKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdBIsCgVjb3N0cxgWIAMoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNvc3QSPQoOc3RyZWFtX2N1cnNvcnMYFyADKAsyJS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdHJlYW1DdXJzb3ISLQoJcXVldWVkX2F0GBggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpzdGFydGVkX2F0GBkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp3YWl0aW5nX2F0GBogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxjb21wbGV0ZWRfYXQYGyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDGNhbmNlbGxlZF9hdBgcIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMQoNbmV4dF9yZXRyeV9hdBgdIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNAoQZGVhZF9sZXR0ZXJlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoTY2FuY2VsbGF0aW9uX3JlYXNvbhgfIAEoCRIaChJkZWFkX2xldHRlcl9yZWFzb24YICABKAkSOAoLY2hlY2twb2ludHMYISADKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50EjsKDXRyYWNlX2NvbnRleHQYIiABKAsyJC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVRyYWNlQ29udGV4dBIbChNhdXRvbm9teV9zZXNzaW9uX2lkGCMgASgJIqkCCg1BZ2VudFJ1bkxlYXNlEgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEhEKCXdvcmtlcl9pZBgGIAEoCRINCgV0b2tlbhgHIAEoCRIUCgx3b3JrZXJfcXVldWUYCCABKAkSDwoHYXR0ZW1wdBgJIAEoBRIuCgpjbGFpbWVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxoZWFydGJlYXRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCmV4cGlyZXNfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIr8ECgxBZ2VudFJ1blN0ZXASCgoCaWQYASABKAkSMQoHbGlua2FnZRgCIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USDAoEbmFtZRgGIAEoCRIQCgRraW5kGAcgASgJQgIYARIxCgVzdGF0ZRgIIAEoDjIiLmFnZW50cnVudGltZS52MS5BZ2VudFJ1blN0ZXBTdGF0ZRIPCgdhdHRlbXB0GAkgASgFEiYKBWlucHV0GAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBInCgZvdXRwdXQYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhUKDWVycm9yX21lc3NhZ2UYDCABKAkSFQoNY2hlY2twb2ludF9pZBgNIAEoCRIuCgpzdGFydGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCghlbmRlZF9hdBgPIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASPgoJc3RlcF9raW5kGBAgASgOMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RlcEtpbmRCCLpIBYIBAhABEjIKDmNvZGV4X3Byb2dyZXNzGBEgASgLMhouY29kZXgudjEuQ29kZXhSdW5Qcm9ncmVzcxI7Cg10cmFjZV9jb250ZXh0GBIgASgLMiQuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVUcmFjZUNvbnRleHQi5gEKEkFnZW50UnVuQ2hlY2twb2ludBIKCgJpZBgBIAEoCRIxCgdsaW5rYWdlGAIgASgLMiAuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGlua2FnZRIPCgdzdGVwX2lkGAYgASgJEhAKCHNlcXVlbmNlGAcgASgDEhQKDHJlc3VtZV90b2tlbhgIIAEoCRIoCgdwYXlsb2FkGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCK+BAoMQWdlbnRSdW5XYWl0EgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEg8KB3N0ZXBfaWQYBiABKAkSLwoEdHlwZRgHIAEoDjIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRUeXBlEhQKDGV4dGVybmFsX3JlZhgIIAEoCRIOCgZyZWFzb24YCSABKAkSKAoHcGF5bG9hZBgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoKY3JlYXRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMcmVzdW1lX2FmdGVyGAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpleHBpcmVzX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIvCgtyZXNvbHZlZF9hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHAoUcmVzb2x2ZWRfYnlfZXZlbnRfaWQYDyABKAkSPgoKdmlzaWJpbGl0eRgQIAEoCzIqLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlzaWJpbGl0eU1ldGFkYXRhEjwKEWNvZGV4X2ludGVyYWN0aW9uGBEgASgLMiEuY29kZXgudjEuQ29kZXhJbnRlcmFjdGlvblJlcXVlc3QihgMKEEFnZW50UnVuQXJ0aWZhY3QSCgoCaWQYASABKAkSMQoHbGlua2FnZRgCIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USDwoHc3RlcF9pZBgGIAEoCRIZCg1hcnRpZmFjdF90eXBlGAcgASgJQgIYARILCgN1cmkYCCABKAkSFAoMY29udGVudF90eXBlGAkgASgJEg4KBmRpZ2VzdBgKIAEoCRIpCghtZXRhZGF0YRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoKY3JlYXRlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRgoNYXJ0aWZhY3Rfa2luZBgQIAEoDjIlLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0S2luZEIIukgFggECEAESMQoMY29kZXhfb3V0cHV0GBEgASgLMhsuY29kZXgudjEuQ29kZXhPdXRwdXRUYXJnZXQitwIKDEFnZW50UnVuQ29zdBIKCgJpZBgBIAEoCRIxCgdsaW5rYWdlGAIgASgLMiAuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGlua2FnZRIPCgdzdGVwX2lkGAYgASgJEhEKCW1ldGVyX3JlZhgHIAEoCRIQCghwcm92aWRlchgIIAEoCRINCgVtb2RlbBgJIAEoCRIUCgxpbnB1dF90b2tlbnMYCiABKAMSFQoNb3V0cHV0X3Rva2VucxgLIAEoAxIUCgx0b3RhbF90b2tlbnMYDCABKAMSEAoIY3VycmVuY3kYDSABKAkSHQoVZXN0aW1hdGVkX2Nvc3RfbWljcm9zGA4gASgDEi8KC3JlY29yZGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKuAQoUQWdlbnRSdW5TdHJlYW1DdXJzb3ISCgoCaWQYASABKAkSMQoHbGlua2FnZRgCIAEoCzIgLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxpbmthZ2USEAoIY29uc3VtZXIYBCABKAkSFQoNbmV4dF9zZXF1ZW5jZRgFIAEoAxIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKSBQoMUnVudGltZUV2ZW50EgoKAmlkGAEgASgJEg4KBnJ1bl9pZBgCIAEoCRIQCghzZXF1ZW5jZRgDIAEoAxIvCgR0eXBlGAQgASgOMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudFR5cGUSDwoHbWVzc2FnZRgFIAEoCRIrCgphdHRyaWJ1dGVzGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIvCgtvY2N1cnJlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDwoHc3RlcF9pZBgLIAEoCRIVCg1jaGVja3BvaW50X2lkGAwgASgJEhMKC2FydGlmYWN0X2lkGA0gASgJEg8KB2Nvc3RfaWQYDiABKAkSDwoHd2FpdF9pZBgPIAEoCRIxCgdsaW5rYWdlGBAgASgLMiAuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGlua2FnZRI+Cgp2aXNpYmlsaXR5GBEgASgLMiouYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXNpYmlsaXR5TWV0YWRhdGESMgoOY29kZXhfcHJvZ3Jlc3MYEiABKAsyGi5jb2RleC52MS5Db2RleFJ1blByb2dyZXNzEjwKEWNvZGV4X2ludGVyYWN0aW9uGBMgASgLMiEuY29kZXgudjEuQ29kZXhJbnRlcmFjdGlvblJlcXVlc3QSMwoNY29kZXhfb3V0Y29tZRgUIAEoCzIcLmNvZGV4LnYxLkNvZGV4T3V0Y29tZVNpZ25hbBI7Cg10cmFjZV9jb250ZXh0GBUgASgLMiQuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVUcmFjZUNvbnRleHQiqwYKFEFnZW50QXV0b25vbXlTZXNzaW9uEgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEhgKEHdvcmtfZW52ZWxvcGVfaWQYAyABKAkSTgoSd29ya19lbnZlbG9wZV9raW5kGAQgASgOMiguYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVXb3JrRW52ZWxvcGVLaW5kQgi6SAWCAQIQARI/Cg9jaGFubmVsX2NvbnRleHQYBSABKAsyJi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxDb250ZXh0Ej4KBXN0YXRlGAYgASgOMiUuYWdlbnRydW50aW1lLnYxLkF1dG9ub215U2Vzc2lvblN0YXRlQgi6SAWCAQIQARJMChBwcm9jZXNzaW5nX3N0YXRlGAcgASgOMiguYWdlbnRydW50aW1lLnYxLkF1dG9ub215UHJvY2Vzc2luZ1N0YXRlQgi6SAWCAQIQARIaChJwcm9jZXNzaW5nX3N1bW1hcnkYCCABKAkSEwoLcm9vdF9ydW5faWQYCSABKAkSFQoNYWN0aXZlX3J1bl9pZBgKIAEoCRIUCgxjdXJyZW50X2dvYWwYCyABKAkSEwoLbmV4dF9hY3Rpb24YDCABKAkSDwoHYmxvY2tlchgNIAEoCRIdChVwcm9jZXNzaW5nX21lc3NhZ2VfdHMYDiABKAkSGwoTYXNzaXN0YW50X3N0cmVhbV90cxgPIAEoCRIeChZsYXN0X3ByZXNlbmNlX2V2ZW50X2lkGBAgASgJEjsKF2xhc3RfcHJlc2VuY2VfdXBkYXRlX2F0GBEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIeChZmaW5hbF9yZXNwb25zZV9wZW5kaW5nGBIgASgIEi4KCmNyZWF0ZWRfYXQYEyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIrQGCg1BZ2VudFdvcmtJdGVtEgoKAmlkGAEgASgJEjEKB2xpbmthZ2UYAiABKAsyIC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5MaW5rYWdlEhsKE2F1dG9ub215X3Nlc3Npb25faWQYAyABKAkSDgoGcnVuX2lkGAQgASgJEhgKEHdvcmtfZW52ZWxvcGVfaWQYBSABKAkSGwoTcGFyZW50X3dvcmtfaXRlbV9pZBgGIAEoCRIaChJvd25lcl9jaGlsZF9ydW5faWQYByABKAkSOgoEa2luZBgIIAEoDjIiLmFnZW50cnVudGltZS52MS5BZ2VudFdvcmtJdGVtS2luZEIIukgFggECEAESPAoFc3RhdGUYCSABKA4yIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRXb3JrSXRlbVN0YXRlQgi6SAWCAQIQARINCgV0aXRsZRgKIAEoCRIMCgRnb2FsGAsgASgJEhMKC25leHRfYWN0aW9uGAwgASgJEg8KB2Jsb2NrZXIYDSABKAkSDwoHd2FpdF9pZBgOIAEoCRIZChF0b29sX2V4ZWN1dGlvbl9pZBgPIAEoCRIVCg1ldmlkZW5jZV9yZWZzGBAgAygJEhcKD2NvbXBsZXRpb25fZ2F0ZRgRIAEoCRIoCgdwYXlsb2FkGBIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GBMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpzdGFydGVkX2F0GBUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxjb21wbGV0ZWRfYXQYFiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCWZhaWxlZF9hdBgXIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMY2FuY2VsbGVkX2F0GBggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJTChRIYW5kbGVUcmlnZ2VyUmVxdWVzdBI7Cgd0cmlnZ2VyGAEgASgLMiIuYWdlbnRydW50aW1lLnYxLk5vcm1hbGl6ZWRUcmlnZ2VyQga6SAPIAQEiiQEKFUhhbmRsZVRyaWdnZXJSZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLQoGZXZlbnRzGAIgAygLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudBIZChFpZGVtcG90ZW50X3JlcGxheRgDIAEoCCJnChNDbGFpbU5leHRSdW5SZXF1ZXN0EhoKCXdvcmtlcl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3JrZXJfcXVldWUYAiABKAkSHgoNbGVhc2Vfc2Vjb25kcxgDIAEoBUIHukgEGgIoACKcAQoUQ2xhaW1OZXh0UnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEi0KBWxlYXNlGAIgASgLMh4uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGVhc2USLQoGZXZlbnRzGAMgAygLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCJtChNIZWFydGJlYXRSdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIfCg5leHRlbmRfc2Vjb25kcxgDIAEoBUIHukgEGgIoACKbAQoUSGVhcnRiZWF0UnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEi0KBWxlYXNlGAIgASgLMh4uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGVhc2USLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50Im4KFFJlbmV3UnVuTGVhc2VSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIfCg5leHRlbmRfc2Vjb25kcxgDIAEoBUIHukgEGgIoACK6AQoVUmVuZXdSdW5MZWFzZVJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhItCgVsZWFzZRgCIAEoCzIeLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkxlYXNlEiwKBWV2ZW50GAMgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudBIcChRyZW5ld2VkX2FmdGVyX2V4cGlyeRgEIAEoCCKCAQoUUmVjb3JkUnVuU3RlcFJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEjMKBHN0ZXAYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5TdGVwQga6SAPIAQEimgEKFVJlY29yZFJ1blN0ZXBSZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SKwoEc3RlcBgCIAEoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1blN0ZXASLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IpQBChpSZWNvcmRSdW5DaGVja3BvaW50UmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESPwoKY2hlY2twb2ludBgDIAEoCzIjLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNoZWNrcG9pbnRCBrpIA8gBASKsAQobUmVjb3JkUnVuQ2hlY2twb2ludFJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI3CgpjaGVja3BvaW50GAIgASgLMiMuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ2hlY2twb2ludBIsCgVldmVudBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQijgEKGFJlY29yZFJ1bkFydGlmYWN0UmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESOwoIYXJ0aWZhY3QYAyABKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdEIGukgDyAEBIqYBChlSZWNvcmRSdW5BcnRpZmFjdFJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIzCghhcnRpZmFjdBgCIAEoCzIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0EiwKBWV2ZW50GAMgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCKCAQoUUmVjb3JkUnVuQ29zdFJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEjMKBGNvc3QYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5Db3N0Qga6SAPIAQEimgEKFVJlY29yZFJ1bkNvc3RSZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SKwoEY29zdBgCIAEoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNvc3QSLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50InYKHFJlY29yZFJ1blN0cmVhbUN1cnNvclJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEj0KBmN1cnNvchgCIAEoCzIlLmFnZW50cnVudGltZS52MS5BZ2VudFJ1blN0cmVhbUN1cnNvckIGukgDyAEBIqwBCh1SZWNvcmRSdW5TdHJlYW1DdXJzb3JSZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SNQoGY3Vyc29yGAIgASgLMiUuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuU3RyZWFtQ3Vyc29yEiwKBWV2ZW50GAMgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCLRAgoVUmVjb3JkUnVuRXZlbnRSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARI5CgR0eXBlGAIgASgOMiEuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudFR5cGVCCLpIBYIBAhABEhgKB21lc3NhZ2UYAyABKAlCB7pIBHICEAESKwoKYXR0cmlidXRlcxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDwoHc3RlcF9pZBgFIAEoCRIVCg1jaGVja3BvaW50X2lkGAYgASgJEhMKC2FydGlmYWN0X2lkGAcgASgJEg8KB2Nvc3RfaWQYCCABKAkSDwoHd2FpdF9pZBgJIAEoCRI+Cgp2aXNpYmlsaXR5GAogASgLMiouYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXNpYmlsaXR5TWV0YWRhdGEibgoWUmVjb3JkUnVuRXZlbnRSZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLAoFZXZlbnQYAiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IpADChFDb250cm9sUnVuUmVxdWVzdBIOCgZydW5faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhAKCGFnZW50X2lkGAMgASgJEhgKEHdvcmtfZW52ZWxvcGVfaWQYBCABKAkSGwoTYXV0b25vbXlfc2Vzc2lvbl9pZBgFIAEoCRI3CgRtb2RlGAYgASgOMh8uYWdlbnRydW50aW1lLnYxLlJ1bkNvbnRyb2xNb2RlQgi6SAWCAQIQARIPCgdtZXNzYWdlGAcgASgJEhcKD2lkZW1wb3RlbmN5X2tleRgIIAEoCRI/Cg9jaGFubmVsX2NvbnRleHQYCSABKAsyJi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxDb250ZXh0EigKB3BheWxvYWQYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ej4KCnZpc2liaWxpdHkYCyABKAsyKi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpc2liaWxpdHlNZXRhZGF0YSKsAQoSQ29udHJvbFJ1blJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIsCgVldmVudBgCIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQSEgoKY29udHJvbF9pZBgDIAEoCRIRCgljYW5jZWxsZWQYBCABKAgSGQoRcXVldWVkX2Zvcl93b3JrZXIYBSABKAgibgoYUmVjb3JkUnVuV29ya0l0ZW1SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARI5Cgl3b3JrX2l0ZW0YAiABKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRXb3JrSXRlbUIGukgDyAEBIqQBChlSZWNvcmRSdW5Xb3JrSXRlbVJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIxCgl3b3JrX2l0ZW0YAiABKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRXb3JrSXRlbRIsCgVldmVudBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQipwMKGFVwZGF0ZVJ1bldvcmtJdGVtUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHQoMd29ya19pdGVtX2lkGAIgASgJQge6SARyAhABEjwKBXN0YXRlGAMgASgOMiMuYWdlbnRydW50aW1lLnYxLkFnZW50V29ya0l0ZW1TdGF0ZUIIukgFggECEAESGAoLbmV4dF9hY3Rpb24YBCABKAlIAIgBARIUCgdibG9ja2VyGAUgASgJSAGIAQESFAoHd2FpdF9pZBgGIAEoCUgCiAEBEh4KEXRvb2xfZXhlY3V0aW9uX2lkGAcgASgJSAOIAQESFQoNZXZpZGVuY2VfcmVmcxgIIAMoCRIcCg9jb21wbGV0aW9uX2dhdGUYCSABKAlIBIgBARIoCgdwYXlsb2FkGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIOCgxfbmV4dF9hY3Rpb25CCgoIX2Jsb2NrZXJCCgoIX3dhaXRfaWRCFAoSX3Rvb2xfZXhlY3V0aW9uX2lkQhIKEF9jb21wbGV0aW9uX2dhdGUipAEKGVVwZGF0ZVJ1bldvcmtJdGVtUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjEKCXdvcmtfaXRlbRgCIAEoCzIeLmFnZW50cnVudGltZS52MS5BZ2VudFdvcmtJdGVtEiwKBWV2ZW50GAMgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCLMAQoXTGlzdFJ1bldvcmtJdGVtc1JlcXVlc3QSDgoGcnVuX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIYChB3b3JrX2VudmVsb3BlX2lkGAMgASgJEhsKE2F1dG9ub215X3Nlc3Npb25faWQYBCABKAkSPAoFc3RhdGUYBSABKA4yIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRXb3JrSXRlbVN0YXRlQgi6SAWCAQIQARIWCgVsaW1pdBgGIAEoBUIHukgEGgIoACJOChhMaXN0UnVuV29ya0l0ZW1zUmVzcG9uc2USMgoKd29ya19pdGVtcxgBIAMoCzIeLmFnZW50cnVudGltZS52MS5BZ2VudFdvcmtJdGVtIvoCCg9ZaWVsZFJ1blJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEkIKDGNvbnRpbnVhdGlvbhgDIAEoDjIiLmFnZW50cnVudGltZS52MS5ZaWVsZENvbnRpbnVhdGlvbkIIukgFggECEAESNwoKY2hlY2twb2ludBgEIAEoCzIjLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNoZWNrcG9pbnQSMAoMcmVzdW1lX2FmdGVyGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIrCgR3YWl0GAYgASgLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdBIcChRwcmVzZW5jZV9zdGF0dXNfdGV4dBgHIAEoCRIXCg9pZGVtcG90ZW5jeV9rZXkYCCABKAkSHQoMeWllbGRfYnVkZ2V0GAkgASgFQge6SAQaAigAIu4CChBZaWVsZFJ1blJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIwCg1zdWNjZXNzb3JfcnVuGAIgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEisKBHdhaXQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0EjcKCmNoZWNrcG9pbnQYBCABKAsyIy5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5DaGVja3BvaW50EiwKBWV2ZW50GAUgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudBI1Cg5wcmVzZW5jZV9ldmVudBgGIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQSFwoPc2Vzc2lvbl9ibG9ja2VkGAcgASgIEhwKC3lpZWxkX2NvdW50GAggASgFQge6SAQaAigAIrUBCg5XYWl0UnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESMwoEd2FpdBgDIAEoCzIdLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRCBrpIA8gBARI3CgpjaGVja3BvaW50GAQgASgLMiMuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ2hlY2twb2ludCLNAQoPV2FpdFJ1blJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIrCgR3YWl0GAIgASgLMh0uYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdBI3CgpjaGVja3BvaW50GAMgASgLMiMuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ2hlY2twb2ludBIsCgVldmVudBgEIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQi0AEKEFJlc3VtZVJ1blJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhgKB3dhaXRfaWQYAiABKAlCB7pIBHICEAESFwoPcmVzdW1lX2V2ZW50X2lkGAMgASgJEigKB3BheWxvYWQYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EkYKGmNvZGV4X2ludGVyYWN0aW9uX2RlY2lzaW9uGAUgASgLMiIuY29kZXgudjEuQ29kZXhJbnRlcmFjdGlvbkRlY2lzaW9uImkKEVJlc3VtZVJ1blJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIsCgVldmVudBgCIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQirQEKEkNvbXBsZXRlUnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESJwoGcmVzdWx0GAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBI3CgpjaGVja3BvaW50GAQgASgLMiMuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQ2hlY2twb2ludCKkAQoTQ29tcGxldGVSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SNwoKY2hlY2twb2ludBgCIAEoCzIjLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkNoZWNrcG9pbnQSLAoFZXZlbnQYAyABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IqABCg5GYWlsUnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESHgoNZXJyb3JfbWVzc2FnZRgDIAEoCUIHukgEcgIQARIRCglyZXRyeWFibGUYBCABKAgSJAoTcmV0cnlfZGVsYXlfc2Vjb25kcxgFIAEoBUIHukgEGgIoACJnCg9GYWlsUnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEiwKBWV2ZW50GAIgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCI7ChBDYW5jZWxSdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIOCgZyZWFzb24YAiABKAkiaQoRQ2FuY2VsUnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEiwKBWV2ZW50GAIgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCJgCg9SZXRyeVJ1blJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEiQKE3JldHJ5X2RlbGF5X3NlY29uZHMYAiABKAVCB7pIBBoCKAASDgoGcmVhc29uGAMgASgJImgKEFJldHJ5UnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEiwKBWV2ZW50GAIgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCI/ChREZWFkTGV0dGVyUnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESDgoGcmVhc29uGAIgASgJIm0KFURlYWRMZXR0ZXJSdW5SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SLAoFZXZlbnQYAiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IiQKDUdldFJ1blJlcXVlc3QSEwoCaWQYASABKAlCB7pIBHICEAEiOAoOR2V0UnVuUmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuIjcKHEdldFRlYW1tYXRlV29ya0xlZGdlclJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABIo4BCh1HZXRUZWFtbWF0ZVdvcmtMZWRnZXJSZXNwb25zZRIzCgZsZWRnZXIYASABKAsyIy5hZ2VudHJ1bnRpbWUudjEuVGVhbW1hdGVXb3JrTGVkZ2VyEjgKC2xlZGdlcl9maWxlGAIgASgLMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZSL2CAoSVGVhbW1hdGVXb3JrTGVkZ2VyEhYKDnNjaGVtYV92ZXJzaW9uGAEgASgJEg4KBnJ1bl9pZBgCIAEoCRIxCgdsaW5rYWdlGAMgASgLMiAuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuTGlua2FnZRItCgVzdGF0ZRgEIAEoDjIeLmFnZW50cnVudGltZS52MS5BZ2VudFJ1blN0YXRlEhcKD29iamVjdGl2ZV90aXRsZRgFIAEoCRIUCgx3b3JrZXJfcXVldWUYBiABKAkSGAoHYXR0ZW1wdBgHIAEoBUIHukgEGgIoABIYChB3b3JrX2VudmVsb3BlX2lkGAggASgJEhoKEndvcmtfZW52ZWxvcGVfa2luZBgJIAEoCRIVCg13b3Jrc3RyZWFtX2lkGAogASgJEhMKC25leHRfYWN0aW9uGAsgASgJEjwKCGJsb2NrZXJzGAwgAygLMiouYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlckJsb2NrZXISTAoQY29ubmVjdG9yX2FjY2VzcxgNIAMoCzIyLmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXJDb25uZWN0b3JBY2Nlc3MSSwoQbWVtb3J5X2NpdGF0aW9ucxgOIAMoCzIxLmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXJNZW1vcnlDaXRhdGlvbhJCCgt2ZnNfc3VtbWFyeRgPIAEoCzItLmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXJWZnNTdW1tYXJ5EkoKD2NlcmVicm9fY29udGV4dBgQIAEoCzIxLmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXJDZXJlYnJvQ29udGV4dBJMChBwcm9hY3RpdmVfcG9saWN5GBEgASgLMjIuYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlclByb2FjdGl2ZVBvbGljeRJICg5jaGFubmVsX3N0YXR1cxgSIAEoCzIwLmFnZW50cnVudGltZS52MS5UZWFtbWF0ZVdvcmtMZWRnZXJDaGFubmVsU3RhdHVzEhYKDmV2aWRlbmNlX3BhdGhzGBMgAygJEhYKDmhhbmRvZmZfcG9saWN5GBQgASgJEh4KFnJlc3VtZV9jaGVja3BvaW50X3BhdGgYFSABKAkSLgoKdXBkYXRlZF9hdBgWIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHAoLZXZlbnRfY291bnQYFyABKAVCB7pIBBoCKAASOQoRYWN0aXZlX3dvcmtfaXRlbXMYGCADKAsyHi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRXb3JrSXRlbRInChZhY3RpdmVfd29ya19pdGVtX2NvdW50GBkgASgFQge6SAQaAigAEigKF2Jsb2NrZWRfd29ya19pdGVtX2NvdW50GBogASgFQge6SAQaAigAIqECChlUZWFtbWF0ZVdvcmtMZWRnZXJCbG9ja2VyEg8KB3dhaXRfaWQYASABKAkSLwoEdHlwZRgCIAEoDjIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRUeXBlEg4KBnJlYXNvbhgDIAEoCRIUCgxleHRlcm5hbF9yZWYYBCABKAkSMAoMcmVzdW1lX2FmdGVyGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIaChJ2aXNpYmlsaXR5X3N1bW1hcnkYBiABKAkSTgoPcmVzdW1lX2NvbnRyYWN0GAcgASgLMjUuYWdlbnRydW50aW1lLnYxLlRlYW1tYXRlV29ya0xlZGdlcldhaXRSZXN1bWVDb250cmFjdCLDAgokVGVhbW1hdGVXb3JrTGVkZ2VyV2FpdFJlc3VtZUNvbnRyYWN0EhYKDnNjaGVtYV92ZXJzaW9uGAEgASgJEhIKCnJlc3VtZV9ycGMYAiABKAkSEgoKbG9va3VwX3JwYxgDIAEoCRIhChlsb29rdXBfZXh0ZXJuYWxfcmVmX2ZpZWxkGAQgASgJEh4KFnJlcXVpcmVkX3Jlc3VtZV9maWVsZHMYBSADKAkSGQoRYWxsb3dlZF9kZWNpc2lvbnMYBiADKAkSIwobY2hhbm5lbF9hY3Rpb25fdmFsdWVfZmllbGRzGAcgAygJEhwKFGlkZW1wb3RlbmN5X2pvaW5fa2V5GAggASgJEhsKE2FwcHJvdmFsX3JlcXVlc3RfaWQYCSABKAkSHQoVcmVxdWlyZXNfc2FmZV9zdW1tYXJ5GAogASgIIqQCCiFUZWFtbWF0ZVdvcmtMZWRnZXJDb25uZWN0b3JBY2Nlc3MSEgoKbW91bnRfcGF0aBgBIAEoCRITCgtwcm92aWRlcl9pZBgCIAEoCRIVCg1jb25uZWN0aW9uX2lkGAMgASgJEhQKDGNhcGFiaWxpdGllcxgEIAMoCRIWCg5ncmFudF9yZXF1aXJlZBgFIAEoCBIUCgxsZWFzZV9wb2xpY3kYBiABKAkSFQoNaWRlbnRpdHlfbW9kZRgHIAEoCRIjChtjcmVkZW50aWFsX3ZlcnNpb25fc3RyYXRlZ3kYCCABKAkSIQoQc2VjcmV0X3JlZl9jb3VudBgJIAEoBUIHukgEGgIoABIcChRjcmVkZW50aWFsX3JlZl9uYW1lcxgKIAMoCSLyAQogVGVhbW1hdGVXb3JrTGVkZ2VyTWVtb3J5Q2l0YXRpb24SEQoJbWVtb3J5X2lkGAEgASgJEhMKC21lbW9yeV90eXBlGAIgASgJEg4KBnNvdXJjZRgDIAEoCRITCgtzb3VyY2VfdXJpcxgEIAMoCRIcChRzdXBlcnNlZGVzX21lbW9yeV9pZBgFIAEoCRIfChdzdXBlcnNlZGVkX2J5X21lbW9yeV9pZBgGIAEoCRIVCg1yZXZpZXdfc3RhdHVzGAcgASgJEhIKCmVudGl0eV9pZHMYCCADKAkSFwoPY29udGVudF9wcmV2aWV3GAkgASgJIp4CChxUZWFtbWF0ZVdvcmtMZWRnZXJWZnNTdW1tYXJ5EhsKCmZpbGVfY291bnQYASABKAVCB7pIBBoCKAASHAoLbW91bnRfY291bnQYAiABKAVCB7pIBBoCKAASJgoVY29ubmVjdG9yX21vdW50X2NvdW50GAMgASgFQge6SAQaAigAEiQKE21lbW9yeV9yZWNvcmRfY291bnQYBCABKAVCB7pIBBoCKAASIgoRdHJhbnNhY3Rpb25fY291bnQYBSABKAVCB7pIBBoCKAASMgohY2VyZWJyb19pbmRleF9lbGlnaWJsZV9maWxlX2NvdW50GAYgASgFQge6SAQaAigAEh0KFWhhc19yZXN1bWVfY2hlY2twb2ludBgHIAEoCCKhAQogVGVhbW1hdGVXb3JrTGVkZ2VyQ2VyZWJyb0NvbnRleHQSEAoIcHJvdmlkZXIYASABKAkSDQoFcXVlcnkYAiABKAkSEQoJdGhpbmdfaWRzGAMgAygJEhAKCGZhY3RfaWRzGAQgAygJEhEKCWV2ZW50X2lkcxgFIAMoCRIkChNlbGlnaWJsZV9maWxlX2NvdW50GAYgASgFQge6SAQaAigAIqYBCiFUZWFtbWF0ZVdvcmtMZWRnZXJQcm9hY3RpdmVQb2xpY3kSDwoHZW5hYmxlZBgBIAEoCBIVCg10cmlnZ2VyX2tpbmRzGAIgAygJEiAKGHByb2dyZXNzX3VwZGF0ZV90cmlnZ2VycxgDIAMoCRIXCg9wcmVzZW5jZV9wb2xpY3kYBCABKAkSHgoNdXBkYXRlX2J1ZGdldBgFIAEoBUIHukgEGgIoACLbAwofVGVhbW1hdGVXb3JrTGVkZ2VyQ2hhbm5lbFN0YXR1cxIUCgxjaGFubmVsX2tpbmQYASABKAkSEgoKY2hhbm5lbF9pZBgCIAEoCRIRCgl0aHJlYWRfaWQYAyABKAkSHQoVbGFzdF92aXNpYmxlX2V2ZW50X2lkGAQgASgJEhwKFGxhc3RfdmlzaWJsZV9zdW1tYXJ5GAUgASgJEkwKEHByb2Nlc3Npbmdfc3RhdGUYBiABKA4yKC5hZ2VudHJ1bnRpbWUudjEuQXV0b25vbXlQcm9jZXNzaW5nU3RhdGVCCLpIBYIBAhABEhoKEnByb2Nlc3Npbmdfc3VtbWFyeRgHIAEoCRIdChVwcm9jZXNzaW5nX21lc3NhZ2VfdHMYCCABKAkSGwoTYXNzaXN0YW50X3N0cmVhbV90cxgJIAEoCRIeChZsYXN0X3ByZXNlbmNlX2V2ZW50X2lkGAogASgJEjsKF2xhc3RfcHJlc2VuY2VfdXBkYXRlX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIeChZmaW5hbF9yZXNwb25zZV9wZW5kaW5nGAwgASgIEhsKE2F1dG9ub215X3Nlc3Npb25faWQYDSABKAkieQodTGlzdFJ1bnNCeVdvcmtFbnZlbG9wZVJlcXVlc3QSHQoMd29ya3NwYWNlX2lkGAEgASgJQge6SARyAhABEiEKEHdvcmtfZW52ZWxvcGVfaWQYAiABKAlCB7pIBHICEAESFgoFbGltaXQYAyABKAVCB7pIBBoCKAAiSQoeTGlzdFJ1bnNCeVdvcmtFbnZlbG9wZVJlc3BvbnNlEicKBHJ1bnMYASADKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4i9AUKFUNoYW5uZWxUaHJlYWRBZG9wdGlvbhIKCgJpZBgBIAEoCRIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESGQoIYWdlbnRfaWQYAyABKAlCB7pIBHICEAESQwoMY2hhbm5lbF9raW5kGAQgASgOMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsS2luZEIIukgFggECEAESHQoVcHJvdmlkZXJfd29ya3NwYWNlX2lkGAUgASgJEhsKCmNoYW5uZWxfaWQYBiABKAlCB7pIBHICEAESGgoJdGhyZWFkX2lkGAcgASgJQge6SARyAhABEhgKEHdvcmtfZW52ZWxvcGVfaWQYCCABKAkSHAoUZmlyc3RfYWRvcHRlZF9ydW5faWQYCSABKAkSEwoLbGFzdF9ydW5faWQYCiABKAkSNAoQZmlyc3RfYWRvcHRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKZXhwaXJlc19hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoPbGFzdF9tZXNzYWdlX2lkGA4gASgJEhwKFGxhc3Rfc291cmNlX2V2ZW50X2lkGA8gASgJEhwKFGxhc3RfYWRvcHRpb25fcmVhc29uGBAgASgJEhcKD2Fkb3B0aW9uX3BvbGljeRgRIAEoCRIpCghtZXRhZGF0YRgSIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSPwoPY2hhbm5lbF9jb250ZXh0GBMgASgLMiYuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsQ29udGV4dBI7Cg13b3JrX2VudmVsb3BlGBQgASgLMiQuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVXb3JrRW52ZWxvcGUikQIKH0dldENoYW5uZWxUaHJlYWRBZG9wdGlvblJlcXVlc3QSHQoMd29ya3NwYWNlX2lkGAEgASgJQge6SARyAhABEhkKCGFnZW50X2lkGAIgASgJQge6SARyAhABEkMKDGNoYW5uZWxfa2luZBgDIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lQ2hhbm5lbEtpbmRCCLpIBYIBAhABEh0KFXByb3ZpZGVyX3dvcmtzcGFjZV9pZBgEIAEoCRIbCgpjaGFubmVsX2lkGAUgASgJQge6SARyAhABEhoKCXRocmVhZF9pZBgGIAEoCUIHukgEcgIQARIXCg9pbmNsdWRlX2V4cGlyZWQYByABKAgiXAogR2V0Q2hhbm5lbFRocmVhZEFkb3B0aW9uUmVzcG9uc2USOAoIYWRvcHRpb24YASABKAsyJi5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbFRocmVhZEFkb3B0aW9uIqoCCiFMaXN0Q2hhbm5lbFRocmVhZEFkb3B0aW9uc1JlcXVlc3QSHQoMd29ya3NwYWNlX2lkGAEgASgJQge6SARyAhABEhAKCGFnZW50X2lkGAIgASgJEkMKDGNoYW5uZWxfa2luZBgDIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lQ2hhbm5lbEtpbmRCCLpIBYIBAhABEh0KFXByb3ZpZGVyX3dvcmtzcGFjZV9pZBgEIAEoCRISCgpjaGFubmVsX2lkGAUgASgJEhEKCXRocmVhZF9pZBgGIAEoCRIYChB3b3JrX2VudmVsb3BlX2lkGAcgASgJEhcKD2luY2x1ZGVfZXhwaXJlZBgIIAEoCBIWCgVsaW1pdBgJIAEoBUIHukgEGgIoACJfCiJMaXN0Q2hhbm5lbFRocmVhZEFkb3B0aW9uc1Jlc3BvbnNlEjkKCWFkb3B0aW9ucxgBIAMoCzImLmFnZW50cnVudGltZS52MS5DaGFubmVsVGhyZWFkQWRvcHRpb24i/gIKE0xpc3RSdW5XYWl0c1JlcXVlc3QSHQoMd29ya3NwYWNlX2lkGAEgASgJQge6SARyAhABEg4KBnJ1bl9pZBgCIAEoCRIQCghhZ2VudF9pZBgDIAEoCRIUCgxvYmplY3RpdmVfaWQYBCABKAkSGAoQd29ya19lbnZlbG9wZV9pZBgFIAEoCRI7CgVzdGF0ZRgGIAEoDjIiLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRTdGF0ZUIIukgFggECEAESOQoEdHlwZRgHIAEoDjIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bldhaXRUeXBlQgi6SAWCAQIQARI8CghhdWRpZW5jZRgIIAEoDjIgLmFnZW50cnVudGltZS52MS5SdW50aW1lQXVkaWVuY2VCCLpIBYIBAhABEhYKBWxpbWl0GAkgASgFQge6SAQaAigAEhIKCnBhZ2VfdG9rZW4YCiABKAkSFAoMZXh0ZXJuYWxfcmVmGAsgASgJItgFChNBZ2VudFJ1bldhaXRTdW1tYXJ5Eg4KBnJ1bl9pZBgBIAEoCRIPCgd3YWl0X2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCRIQCghhZ2VudF9pZBgEIAEoCRIUCgxvYmplY3RpdmVfaWQYBSABKAkSDwoHc3RlcF9pZBgGIAEoCRIvCgR0eXBlGAcgASgOMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuV2FpdFR5cGUSMQoFc3RhdGUYCCABKA4yIi5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0U3RhdGUSFAoMZXh0ZXJuYWxfcmVmGAkgASgJEg4KBnJlYXNvbhgKIAEoCRIoCgdwYXlsb2FkGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxyZXN1bWVfYWZ0ZXIYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCmV4cGlyZXNfYXQYDiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC3Jlc29sdmVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIcChRyZXNvbHZlZF9ieV9ldmVudF9pZBgQIAEoCRI+Cgp2aXNpYmlsaXR5GBEgASgLMiouYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXNpYmlsaXR5TWV0YWRhdGESPwoPY2hhbm5lbF9jb250ZXh0GBIgASgLMiYuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVDaGFubmVsQ29udGV4dBI7Cg13b3JrX2VudmVsb3BlGBMgASgLMiQuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVXb3JrRW52ZWxvcGUiZAoUTGlzdFJ1bldhaXRzUmVzcG9uc2USMwoFd2FpdHMYASADKAsyJC5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5XYWl0U3VtbWFyeRIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkiYwohUmVjb3JkQ2hhbm5lbEFjdGlvblJlY2VpcHRSZXF1ZXN0Ej4KB3JlY2VpcHQYASABKAsyJS5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvblJlY2VpcHRCBrpIA8gBASJ3CiJSZWNvcmRDaGFubmVsQWN0aW9uUmVjZWlwdFJlc3BvbnNlEjYKB3JlY2VpcHQYASABKAsyJS5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvblJlY2VpcHQSGQoRaWRlbXBvdGVudF9yZXBsYXkYAiABKAgiNQoeR2V0Q2hhbm5lbEFjdGlvblJlY2VpcHRSZXF1ZXN0EhMKAmlkGAEgASgJQge6SARyAhABIlkKH0dldENoYW5uZWxBY3Rpb25SZWNlaXB0UmVzcG9uc2USNgoHcmVjZWlwdBgBIAEoCzIlLmFnZW50cnVudGltZS52MS5DaGFubmVsQWN0aW9uUmVjZWlwdCLtAwogTGlzdENoYW5uZWxBY3Rpb25SZWNlaXB0c1JlcXVlc3QSHQoMd29ya3NwYWNlX2lkGAEgASgJQge6SARyAhABEhcKD2lkZW1wb3RlbmN5X2tleRgCIAEoCRIXCg9hY3Rvcl9lbnRpdHlfaWQYAyABKAkSRwoLdGFyZ2V0X2tpbmQYBCABKA4yKC5hZ2VudHJ1bnRpbWUudjEuQ2hhbm5lbEFjdGlvblRhcmdldEtpbmRCCLpIBYIBAhABEhEKCXRhcmdldF9pZBgFIAEoCRIOCgZydW5faWQYBiABKAkSDwoHd2FpdF9pZBgHIAEoCRIbChNhcHByb3ZhbF9yZXF1ZXN0X2lkGAggASgJEhQKDG9iamVjdGl2ZV9pZBgJIAEoCRJDCgxjaGFubmVsX2tpbmQYCiABKA4yIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUNoYW5uZWxLaW5kQgi6SAWCAQIQARIdChVwcm92aWRlcl93b3Jrc3BhY2VfaWQYCyABKAkSEgoKY2hhbm5lbF9pZBgMIAEoCRIRCgl0aHJlYWRfaWQYDSABKAkSEgoKbWVzc2FnZV9pZBgOIAEoCRIRCglhY3Rpb25faWQYDyABKAkSFgoFbGltaXQYECABKAVCB7pIBBoCKAAiXAohTGlzdENoYW5uZWxBY3Rpb25SZWNlaXB0c1Jlc3BvbnNlEjcKCHJlY2VpcHRzGAEgAygLMiUuYWdlbnRydW50aW1lLnYxLkNoYW5uZWxBY3Rpb25SZWNlaXB0Im0KFExpc3RSdW5FdmVudHNSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARI8CghhdWRpZW5jZRgCIAEoDjIgLmFnZW50cnVudGltZS52MS5SdW50aW1lQXVkaWVuY2VCCLpIBYIBAhABIkYKFUxpc3RSdW5FdmVudHNSZXNwb25zZRItCgZldmVudHMYASADKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50In4KGkxpc3RSdW5WaXJ0dWFsRmlsZXNSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARITCgtwYXRoX3ByZWZpeBgCIAEoCRIWCgVsaW1pdBgDIAEoBUIHukgEGgIoABIaChJpbmNsdWRlX3RvbWJzdG9uZXMYBCABKAgiWAobTGlzdFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlEjkKB2VudHJpZXMYASADKAsyKC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRW50cnkimAEKGVJlYWRSdW5WaXJ0dWFsRmlsZVJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhUKBHBhdGgYAiABKAlCB7pIBHICEAESFwoGb2Zmc2V0GAMgASgFQge6SAQaAigAEhYKBWxpbWl0GAQgASgFQge6SAQaAigAEhoKEmluY2x1ZGVfdG9tYnN0b25lcxgFIAEoCCKlAgoaUmVhZFJ1blZpcnR1YWxGaWxlUmVzcG9uc2USNwoFZW50cnkYASABKAsyKC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRW50cnkSDwoHY29udGVudBgCIAEoCRIOCgZvZmZzZXQYAyABKAUSEwoLbmV4dF9vZmZzZXQYBCABKAUSCwoDZW9mGAUgASgIElQKD3JlZGFjdGlvbl9zdGF0ZRgGIAEoDjIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWRhY3Rpb25TdGF0ZUIIukgFggECEAESNQoKcmVkYWN0aW9ucxgHIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uImcKGVN0YXRSdW5WaXJ0dWFsRmlsZVJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhUKBHBhdGgYAiABKAlCB7pIBHICEAESGgoSaW5jbHVkZV90b21ic3RvbmVzGAMgASgIIlUKGlN0YXRSdW5WaXJ0dWFsRmlsZVJlc3BvbnNlEjcKBWVudHJ5GAEgASgLMiguYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUVudHJ5IrMBChtXYXRjaFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhQKDHNpbmNlX2N1cnNvchgCIAEoCRIWCgVsaW1pdBgDIAEoBUIHukgEGgIoABIOCgZmb2xsb3cYBCABKAgSPQoIc2VsZWN0b3IYBSABKAsyKy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlU2VsZWN0b3IiXAocV2F0Y2hSdW5WaXJ0dWFsRmlsZXNSZXNwb25zZRI8CgVldmVudBgBIAEoCzItLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVXYXRjaEV2ZW50Iu8DChxSdW50aW1lVmlydHVhbEZpbGVXYXRjaEV2ZW50Eg4KBmN1cnNvchgBIAEoCRIRCglvcGVyYXRpb24YAiABKAkSDAoEcGF0aBgDIAEoCRITCgtyZXZpc2lvbl9pZBgEIAEoCRIaChJwYXJlbnRfcmV2aXNpb25faWQYBSABKAkSFgoOdHJhbnNhY3Rpb25faWQYBiABKAkSDAoEdmlldxgHIAEoCRIPCgdzcGFuX2lkGAggASgJEhcKD2V2aWRlbmNlX2hhbmRsZRgJIAEoCRIYChBydW50aW1lX2V2ZW50X2lkGAogASgJEhMKC2FydGlmYWN0X2lkGAsgASgJEhAKCHRyYWNlX2lkGAwgASgJEhQKDGh5ZHJhdGlvbl9pZBgNIAEoCRIUCgxwcm9tb3Rpb25faWQYDiABKAkSGAoQcHJvZHVjZXJfc2VydmljZRgPIAEoCRIVCg1wcm9kdWNlcl9raW5kGBAgASgJEi8KC29jY3VycmVkX2F0GBEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIVCg1jaGVja3BvaW50X2lkGBIgASgJEjcKBWVudHJ5GBMgASgLMiguYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUVudHJ5IucBChpSdW50aW1lVmlydHVhbEZpbGVTZWxlY3RvchINCgVwYXRocxgBIAMoCRITCgtwYXRoX3ByZWZpeBgCIAEoCRINCgV2aWV3cxgDIAMoCRINCgVraW5kcxgEIAMoCRIOCgZtb3VudHMYBSADKAkSFwoPdHJhbnNhY3Rpb25faWRzGAYgAygJEhAKCHBvbGljaWVzGAcgAygJEhcKD3NvdXJjZV9zZXJ2aWNlcxgIIAMoCRIXCg9jZXJlYnJvX2luZGV4ZXMYCSADKAkSGgoSaW5jbHVkZV90b21ic3RvbmVzGAogASgIIvkDChxSdW50aW1lVmlydHVhbEZpbGVSZWFkUmVzdWx0EgwKBHBhdGgYASABKAkSNwoFZW50cnkYAiABKAsyKC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRW50cnkSDwoHY29udGVudBgDIAEoCRIXCgZvZmZzZXQYBCABKAVCB7pIBBoCKAASHAoLbmV4dF9vZmZzZXQYBSABKAVCB7pIBBoCKAASCwoDZW9mGAYgASgIEg8KB3NraXBwZWQYByABKAgSEwoLc2tpcF9yZWFzb24YCCABKAkSEAoIY2l0YXRpb24YCSABKAkSFQoEcmFuaxgKIAEoBUIHukgEGgIoABITCgtyYW5rX3JlYXNvbhgLIAEoCRJMCgtyZWFzb25fY29kZRgMIAEoDjItLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWFzb25Db2RlQgi6SAWCAQIQARJUCg9yZWRhY3Rpb25fc3RhdGUYDSABKA4yMS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlUmVkYWN0aW9uU3RhdGVCCLpIBYIBAhABEjUKCnJlZGFjdGlvbnMYDiADKAsyIS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVJlZGFjdGlvbiLQAQofQmF0Y2hSZWFkUnVuVmlydHVhbEZpbGVzUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESPQoIc2VsZWN0b3IYAiABKAsyKy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlU2VsZWN0b3ISHwoOcGVyX2ZpbGVfbGltaXQYAyABKAVCB7pIBBoCKAASHAoLdG90YWxfbGltaXQYBCABKAVCB7pIBBoCKAASFgoFbGltaXQYBSABKAVCB7pIBBoCKAAiwAEKIEJhdGNoUmVhZFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlEjwKBWZpbGVzGAEgAygLMi0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlYWRSZXN1bHQSJAoTdG90YWxfY29udGVudF9ieXRlcxgCIAEoBUIHukgEGgIoABIYChBidWRnZXRfZXhoYXVzdGVkGAMgASgIEh4KDXNraXBwZWRfY291bnQYBCABKAVCB7pIBBoCKAAi+QEKJUJ1aWxkUnVuVmlydHVhbEZpbGVDb250ZXh0UGFja1JlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEg0KBXF1ZXJ5GAIgASgJEj0KCHNlbGVjdG9yGAMgASgLMisuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVNlbGVjdG9yEhIKCnNlZWRfcGF0aHMYBCADKAkSHwoOcGVyX2ZpbGVfbGltaXQYBSABKAVCB7pIBBoCKAASHAoLdG90YWxfbGltaXQYBiABKAVCB7pIBBoCKAASFgoFbGltaXQYByABKAVCB7pIBBoCKAAi4AEKJkJ1aWxkUnVuVmlydHVhbEZpbGVDb250ZXh0UGFja1Jlc3BvbnNlEj8KCHNuaXBwZXRzGAEgAygLMi0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVJlYWRSZXN1bHQSJAoTdG90YWxfY29udGVudF9ieXRlcxgCIAEoBUIHukgEGgIoABIYChBidWRnZXRfZXhoYXVzdGVkGAMgASgIEh4KDXNraXBwZWRfY291bnQYBCABKAVCB7pIBBoCKAASFQoNc2tpcHBlZF9wYXRocxgFIAMoCSKCAgocU2VhcmNoUnVuVmlydHVhbEZpbGVzUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESFgoFcXVlcnkYAiABKAlCB7pIBHICEAESEwoLcGF0aF9wcmVmaXgYAyABKAkSFgoFbGltaXQYBCABKAVCB7pIBBoCKAASPQoIc2VsZWN0b3IYBSABKAsyKy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlU2VsZWN0b3ISDQoFcmVnZXgYBiABKAgSHgoNY29udGV4dF9saW5lcxgHIAEoBUIHukgEGgIoABIWCg5jYXNlX3NlbnNpdGl2ZRgIIAEoCCKTAQodU2VhcmNoUnVuVmlydHVhbEZpbGVzUmVzcG9uc2USOQoHbWF0Y2hlcxgBIAMoCzIoLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVNYXRjaBIeCg10b3RhbF9tYXRjaGVzGAIgASgFQge6SAQaAigAEhcKD2xpbWl0X2V4aGF1c3RlZBgDIAEoCCKxBAojUmVjb3JkUnVuVmlydHVhbEZpbGVQcm9wb3NhbFJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEhUKBHBhdGgYAyABKAlCB7pIBHICEAESEgoKbWVkaWFfdHlwZRgEIAEoCRIPCgdjb250ZW50GAUgASgJEhUKDXByb3Bvc2FsX2tpbmQYBiABKAkSDwoHc3RlcF9pZBgHIAEoCRJUCghtZXRhZGF0YRgIIAMoCzJCLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5WaXJ0dWFsRmlsZVByb3Bvc2FsUmVxdWVzdC5NZXRhZGF0YUVudHJ5EhcKD2lkZW1wb3RlbmN5X2tleRgJIAEoCRJCCgtzZW5zaXRpdml0eRgKIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lU2Vuc2l0aXZpdHlCCLpIBYIBAhABElQKD3JlZGFjdGlvbl9zdGF0ZRgLIAEoDjIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWRhY3Rpb25TdGF0ZUIIukgFggECEAESNQoKcmVkYWN0aW9ucxgMIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLkAQokUmVjb3JkUnVuVmlydHVhbEZpbGVQcm9wb3NhbFJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhIzCghhcnRpZmFjdBgCIAEoCzIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0EjEKBGZpbGUYAyABKAsyIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlEiwKBWV2ZW50GAQgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCKrBAoYUnVudGltZVZpcnR1YWxGaWxlQ2hhbmdlEhUKBHBhdGgYASABKAlCB7pIBHICEAESEgoKbWVkaWFfdHlwZRgCIAEoCRIPCgdjb250ZW50GAMgASgJEhUKDXByb3Bvc2FsX2tpbmQYBCABKAkSDwoHc3RlcF9pZBgFIAEoCRJJCghtZXRhZGF0YRgGIAMoCzI3LmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVDaGFuZ2UuTWV0YWRhdGFFbnRyeRJCCgtzZW5zaXRpdml0eRgHIAEoDjIjLmFnZW50cnVudGltZS52MS5SdW50aW1lU2Vuc2l0aXZpdHlCCLpIBYIBAhABElQKD3JlZGFjdGlvbl9zdGF0ZRgIIAEoDjIxLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVSZWRhY3Rpb25TdGF0ZUIIukgFggECEAESNQoKcmVkYWN0aW9ucxgJIAMoCzIhLmFnZW50cnVudGltZS52MS5SdW50aW1lUmVkYWN0aW9uEkkKCW9wZXJhdGlvbhgKIAEoDjIsLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVPcGVyYXRpb25CCLpIBYIBAhABEhMKC3JlbmFtZV9mcm9tGAsgASgJGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLyAgomUmVjb3JkUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEhwKC2xlYXNlX3Rva2VuGAIgASgJQge6SARyAhABEhYKDnRyYW5zYWN0aW9uX2lkGAMgASgJEhoKEnBhcmVudF9yZXZpc2lvbl9pZBgEIAEoCRI6CgdjaGFuZ2VzGAUgAygLMikuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUNoYW5nZRJXCghtZXRhZGF0YRgGIAMoCzJFLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdC5NZXRhZGF0YUVudHJ5EhcKD2lkZW1wb3RlbmN5X2tleRgHIAEoCRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi6QEKJ1JlY29yZFJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRImCgNydW4YASABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SNAoJYXJ0aWZhY3RzGAIgAygLMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQXJ0aWZhY3QSMgoFZmlsZXMYAyADKAsyIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlEiwKBWV2ZW50GAQgASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCLGAgonUHJvbW90ZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIfCg50cmFuc2FjdGlvbl9pZBgDIAEoCUIHukgEcgIQARIjChtleHBlY3RlZF9wYXJlbnRfcmV2aXNpb25faWQYBCABKAkSEwoLYXBwcm92ZXJfaWQYBSABKAkSWAoIbWV0YWRhdGEYBiADKAsyRi5hZ2VudHJ1bnRpbWUudjEuUHJvbW90ZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0Lk1ldGFkYXRhRW50cnkaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuoBCihQcm9tb3RlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlc3BvbnNlEiYKA3J1bhgBIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI0CglhcnRpZmFjdHMYAiADKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdBIyCgVmaWxlcxgDIAMoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUSLAoFZXZlbnQYBCABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IsYBChpSdW50aW1lVmlydHVhbEZpbGVEaWZmSHVuaxIfCg5vbGRfc3RhcnRfbGluZRgBIAEoBUIHukgEGgIoABIfCg5vbGRfbGluZV9jb3VudBgCIAEoBUIHukgEGgIoABIfCg5uZXdfc3RhcnRfbGluZRgDIAEoBUIHukgEGgIoABIfCg5uZXdfbGluZV9jb3VudBgEIAEoBUIHukgEGgIoABIOCgZoZWFkZXIYBSABKAkSFAoMdW5pZmllZF9kaWZmGAYgASgJIv8ECiVSdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbkZpbGVEaWZmEgwKBHBhdGgYASABKAkSSQoJb3BlcmF0aW9uGAIgASgOMiwuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZU9wZXJhdGlvbkIIukgFggECEAESWQoMYXBwbHlfc3RhdHVzGAMgASgOMjkuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uQXBwbHlTdGF0dXNCCLpIBYIBAhABEhoKEnBhcmVudF9yZXZpc2lvbl9pZBgEIAEoCRIYChBiYXNlX3JldmlzaW9uX2lkGAUgASgJEhsKE2N1cnJlbnRfcmV2aXNpb25faWQYBiABKAkSHAoUcHJvcG9zZWRfcmV2aXNpb25faWQYByABKAkSGwoTYmFzZV9jb250ZW50X3NoYTI1NhgIIAEoCRIeChZjdXJyZW50X2NvbnRlbnRfc2hhMjU2GAkgASgJEh8KF3Byb3Bvc2VkX2NvbnRlbnRfc2hhMjU2GAogASgJEhoKCWFkZGl0aW9ucxgLIAEoBUIHukgEGgIoABIaCglkZWxldGlvbnMYDCABKAVCB7pIBBoCKAASDgoGYmluYXJ5GA0gASgIEhEKCXRvbWJzdG9uZRgOIAEoCBITCgtyZW5hbWVfZnJvbRgPIAEoCRIRCglyZW5hbWVfdG8YECABKAkSFAoMdW5pZmllZF9kaWZmGBEgASgJEjoKBWh1bmtzGBIgAygLMisuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZURpZmZIdW5rIpwDCiVSdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbkNvbmZsaWN0EgwKBHBhdGgYASABKAkSTAoLcmVhc29uX2NvZGUYAiABKA4yLS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlUmVhc29uQ29kZUIIukgFggECEAESWQoMYXBwbHlfc3RhdHVzGAMgASgOMjkuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uQXBwbHlTdGF0dXNCCLpIBYIBAhABEg8KB21lc3NhZ2UYBCABKAkSGgoScGFyZW50X3JldmlzaW9uX2lkGAUgASgJEhgKEGJhc2VfcmV2aXNpb25faWQYBiABKAkSGwoTY3VycmVudF9yZXZpc2lvbl9pZBgHIAEoCRIcChRwcm9wb3NlZF9yZXZpc2lvbl9pZBgIIAEoCRI6CgVodW5rcxgJIAMoCzIrLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVEaWZmSHVuayK+AwohUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25EaWZmEhYKDnRyYW5zYWN0aW9uX2lkGAEgASgJEkUKBWZpbGVzGAIgAygLMjYuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uRmlsZURpZmYSFAoMdW5pZmllZF9kaWZmGAMgASgJEhsKCmZpbGVfY291bnQYBCABKAVCB7pIBBoCKAASIwoSY2hhbmdlZF9maWxlX2NvdW50GAUgASgFQge6SAQaAigAEhoKCWFkZGl0aW9ucxgGIAEoBUIHukgEGgIoABIaCglkZWxldGlvbnMYByABKAVCB7pIBBoCKAASDQoFc3RhbGUYCCABKAgSUAoHb3V0Y29tZRgJIAEoDjI1LmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbk91dGNvbWVCCLpIBYIBAhABEkkKCWNvbmZsaWN0cxgKIAMoCzI2LmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbkNvbmZsaWN0IoABCiREaWZmUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABEh8KDnRyYW5zYWN0aW9uX2lkGAIgASgJQge6SARyAhABEh4KDWNvbnRleHRfbGluZXMYAyABKAVCB7pIBBoCKAAiaQolRGlmZlJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRJACgRkaWZmGAEgASgLMjIuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uRGlmZiLiAgolQXBwbHlSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESHwoOdHJhbnNhY3Rpb25faWQYAyABKAlCB7pIBHICEAESIwobZXhwZWN0ZWRfcGFyZW50X3JldmlzaW9uX2lkGAQgASgJEhMKC2FwcHJvdmVyX2lkGAUgASgJElYKCG1ldGFkYXRhGAYgAygLMkQuYWdlbnRydW50aW1lLnYxLkFwcGx5UnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlcXVlc3QuTWV0YWRhdGFFbnRyeRIeCg1jb250ZXh0X2xpbmVzGAcgASgFQge6SAQaAigAGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASL8AgomQXBwbHlSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2USUAoHb3V0Y29tZRgBIAEoDjI1LmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbk91dGNvbWVCCLpIBYIBAhABEkAKBGRpZmYYAiABKAsyMi5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25EaWZmEiYKA3J1bhgDIAEoCzIZLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bhI0CglhcnRpZmFjdHMYBCADKAsyIS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW5BcnRpZmFjdBIyCgVmaWxlcxgFIAMoCzIjLmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGUSLAoFZXZlbnQYBiABKAsyHS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZUV2ZW50IuICCiZSZWJhc2VSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESHAoLbGVhc2VfdG9rZW4YAiABKAlCB7pIBHICEAESJgoVc291cmNlX3RyYW5zYWN0aW9uX2lkGAMgASgJQge6SARyAhABEhYKDnRyYW5zYWN0aW9uX2lkGAQgASgJElcKCG1ldGFkYXRhGAUgAygLMkUuYWdlbnRydW50aW1lLnYxLlJlYmFzZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0Lk1ldGFkYXRhRW50cnkSFwoPaWRlbXBvdGVuY3lfa2V5GAYgASgJEh4KDWNvbnRleHRfbGluZXMYByABKAVCB7pIBBoCKAAaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIrQDCidSZWJhc2VSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2USUAoHb3V0Y29tZRgBIAEoDjI1LmFnZW50cnVudGltZS52MS5SdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbk91dGNvbWVCCLpIBYIBAhABEh0KFXNvdXJjZV90cmFuc2FjdGlvbl9pZBgCIAEoCRIWCg50cmFuc2FjdGlvbl9pZBgDIAEoCRJACgRkaWZmGAQgASgLMjIuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZVRyYW5zYWN0aW9uRGlmZhImCgNydW4YBSABKAsyGS5hZ2VudHJ1bnRpbWUudjEuQWdlbnRSdW4SNAoJYXJ0aWZhY3RzGAYgAygLMiEuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuQXJ0aWZhY3QSMgoFZmlsZXMYByADKAsyIy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlEiwKBWV2ZW50GAggASgLMh0uYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVFdmVudCLjAgohSHlkcmF0ZVJ1blZpcnR1YWxGaWxlTW91bnRSZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIcCgtsZWFzZV90b2tlbhgCIAEoCUIHukgEcgIQARIWCgVtb3VudBgDIAEoCUIHukgEcgIQARITCgtwcm92aWRlcl9pZBgEIAEoCRIVCg1jb25uZWN0aW9uX2lkGAUgASgJEg0KBXF1ZXJ5GAYgASgJEhYKBWxpbWl0GAcgASgFQge6SAQaAigAElIKCG1ldGFkYXRhGAggAygLMkAuYWdlbnRydW50aW1lLnYxLkh5ZHJhdGVSdW5WaXJ0dWFsRmlsZU1vdW50UmVxdWVzdC5NZXRhZGF0YUVudHJ5EhcKD2lkZW1wb3RlbmN5X2tleRgJIAEoCRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi5AEKIkh5ZHJhdGVSdW5WaXJ0dWFsRmlsZU1vdW50UmVzcG9uc2USJgoDcnVuGAEgASgLMhkuYWdlbnRydW50aW1lLnYxLkFnZW50UnVuEjQKCWFydGlmYWN0cxgCIAMoCzIhLmFnZW50cnVudGltZS52MS5BZ2VudFJ1bkFydGlmYWN0EjIKBWZpbGVzGAMgAygLMiMuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZRIsCgVldmVudBgEIAEoCzIdLmFnZW50cnVudGltZS52MS5SdW50aW1lRXZlbnQiOAodSW5zcGVjdFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QSFwoGcnVuX2lkGAEgASgJQge6SARyAhABIuwFCiJSdW50aW1lVmlydHVhbEZpbGVJbnNwZWN0b3JTdW1tYXJ5EhsKCmZpbGVfY291bnQYASABKAVCB7pIBBoCKAASHAoLbW91bnRfY291bnQYAiABKAVCB7pIBBoCKAASIgoRdHJhbnNhY3Rpb25fY291bnQYAyABKAVCB7pIBBoCKAASIQoQbGF6eV9tb3VudF9jb3VudBgEIAEoBUIHukgEGgIoABIkChNoeWRyYXRlZF9maWxlX2NvdW50GAUgASgFQge6SAQaAigAEigKF2NlcmVicm9fY2FuZGlkYXRlX2NvdW50GAYgASgFQge6SAQaAigAEiQKE2NlcmVicm9fcmVhZHlfY291bnQYByABKAVCB7pIBBoCKAASJAoTYWNjZXB0ZWRfZmlsZV9jb3VudBgIIAEoBUIHukgEGgIoABImChVjb250ZW50X2FkZHJlc3NfY291bnQYCSABKAVCB7pIBBoCKAASKgoZaHlkcmF0aW9uX2NhY2hlX2hpdF9jb3VudBgKIAEoBUIHukgEGgIoABIoChdzdGFsZV90cmFuc2FjdGlvbl9jb3VudBgLIAEoBUIHukgEGgIoABIkChNzaGFkb3dlZF9maWxlX2NvdW50GAwgASgFQge6SAQaAigAEh8KDnByb2R1Y2VyX2NvdW50GA0gASgFQge6SAQaAigAEigKF3ByZXZpZXdfb25seV9maWxlX2NvdW50GA4gASgFQge6SAQaAigAEiIKEWRlbmllZF9maWxlX2NvdW50GA8gASgFQge6SAQaAigAEiYKFXJlc3RyaWN0ZWRfZmlsZV9jb3VudBgQIAEoBUIHukgEGgIoABIlChR0b21ic3RvbmVfZmlsZV9jb3VudBgRIAEoBUIHukgEGgIoABIiChFkZWxldGVfZmlsZV9jb3VudBgSIAEoBUIHukgEGgIoABIiChFyZW5hbWVfZmlsZV9jb3VudBgTIAEoBUIHukgEGgIoACKWBAogUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yTW91bnQSDAoEcGF0aBgBIAEoCRIbCgpmaWxlX2NvdW50GAIgASgFQge6SAQaAigAEhsKCnNpemVfYnl0ZXMYAyABKANCB7pIBCICKAASDAoEbGF6eRgEIAEoCBITCgtwcm92aWRlcl9pZBgFIAEoCRIVCg1jb25uZWN0aW9uX2lkGAYgASgJEhQKDGNhY2hlX3BvbGljeRgHIAEoCRIOCgZwb2xpY3kYCCABKAkSFQoNY2VyZWJyb19pbmRleBgJIAEoCRIhChBzZWNyZXRfcmVmX2NvdW50GAogASgFQge6SAQaAigAEhcKD3NvdXJjZV9zZXJ2aWNlcxgLIAMoCRIoChdwcmV2aWV3X29ubHlfZmlsZV9jb3VudBgMIAEoBUIHukgEGgIoABIiChFkZW5pZWRfZmlsZV9jb3VudBgNIAEoBUIHukgEGgIoABImChVyZXN0cmljdGVkX2ZpbGVfY291bnQYDiABKAVCB7pIBBoCKAASFAoMY2FwYWJpbGl0aWVzGA8gAygJEhAKCHdyaXRhYmxlGBAgASgIEhEKCXJlYWRfb25seRgRIAEoCBIRCglnZW5lcmF0ZWQYEiABKAgSFwoPZXZpZGVuY2VfYmFja2VkGBMgASgIEhoKEmV4dGVybmFsbHlfaW5kZXhlZBgUIAEoCCK4AgomUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yVHJhbnNhY3Rpb24SFgoOdHJhbnNhY3Rpb25faWQYASABKAkSDAoEdmlldxgCIAEoCRIaChJwYXJlbnRfcmV2aXNpb25faWQYAyABKAkSGwoKZmlsZV9jb3VudBgEIAEoBUIHukgEGgIoABIOCgZwb2xpY3kYBSABKAkSFQoNY2VyZWJyb19pbmRleBgGIAEoCRIZChFjb250ZW50X2FkZHJlc3NlcxgHIAMoCRIlChR0b21ic3RvbmVfZmlsZV9jb3VudBgIIAEoBUIHukgEGgIoABIiChFkZWxldGVfZmlsZV9jb3VudBgJIAEoBUIHukgEGgIoABIiChFyZW5hbWVfZmlsZV9jb3VudBgKIAEoBUIHukgEGgIoACLTAgojUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yUHJvZHVjZXISGAoQcHJvZHVjZXJfc2VydmljZRgBIAEoCRIVCg1wcm9kdWNlcl9raW5kGAIgASgJEhsKCmZpbGVfY291bnQYAyABKAVCB7pIBBoCKAASHwoOcmV2aXNpb25fY291bnQYBCABKAVCB7pIBBoCKAASGQoRcnVudGltZV9ldmVudF9pZHMYBSADKAkSFAoMYXJ0aWZhY3RfaWRzGAYgAygJEhAKCHN0ZXBfaWRzGAcgAygJEhoKEnRvb2xfZXhlY3V0aW9uX2lkcxgIIAMoCRIRCgl0cmFjZV9pZHMYCSADKAkSFQoNaHlkcmF0aW9uX2lkcxgKIAMoCRIXCg90cmFuc2FjdGlvbl9pZHMYCyADKAkSGwoTcGFyZW50X3JldmlzaW9uX2lkcxgMIAMoCSL8AgoeSW5zcGVjdFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlEkQKB3N1bW1hcnkYASABKAsyMy5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yU3VtbWFyeRJBCgZtb3VudHMYAiADKAsyMS5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlSW5zcGVjdG9yTW91bnQSTQoMdHJhbnNhY3Rpb25zGAMgAygLMjcuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUluc3BlY3RvclRyYW5zYWN0aW9uEjkKB2VudHJpZXMYBCADKAsyKC5hZ2VudHJ1bnRpbWUudjEuUnVudGltZVZpcnR1YWxGaWxlRW50cnkSRwoJcHJvZHVjZXJzGAUgAygLMjQuYWdlbnRydW50aW1lLnYxLlJ1bnRpbWVWaXJ0dWFsRmlsZUluc3BlY3RvclByb2R1Y2VyKr8CCg1BZ2VudFJ1blN0YXRlEh8KG0FHRU5UX1JVTl9TVEFURV9VTlNQRUNJRklFRBAAEhwKGEFHRU5UX1JVTl9TVEFURV9BQ0NFUFRFRBABEhoKFkFHRU5UX1JVTl9TVEFURV9RVUVVRUQQAhIbChdBR0VOVF9SVU5fU1RBVEVfUlVOTklORxADEhsKF0FHRU5UX1JVTl9TVEFURV9XQUlUSU5HEAQSHQoZQUdFTlRfUlVOX1NUQVRFX1NVQ0NFRURFRBAFEhoKFkFHRU5UX1JVTl9TVEFURV9GQUlMRUQQBhIdChlBR0VOVF9SVU5fU1RBVEVfQ0FOQ0VMTEVEEAcSHAoYQUdFTlRfUlVOX1NUQVRFX1JFVFJZSU5HEAgSIQodQUdFTlRfUlVOX1NUQVRFX0RFQURfTEVUVEVSRUQQCSqqAgoRQWdlbnRSdW5TdGVwU3RhdGUSJAogQUdFTlRfUlVOX1NURVBfU1RBVEVfVU5TUEVDSUZJRUQQABIgChxBR0VOVF9SVU5fU1RFUF9TVEFURV9QRU5ESU5HEAESIAocQUdFTlRfUlVOX1NURVBfU1RBVEVfUlVOTklORxACEiAKHEFHRU5UX1JVTl9TVEVQX1NUQVRFX1dBSVRJTkcQAxIiCh5BR0VOVF9SVU5fU1RFUF9TVEFURV9TVUNDRUVERUQQBBIfChtBR0VOVF9SVU5fU1RFUF9TVEFURV9GQUlMRUQQBRIiCh5BR0VOVF9SVU5fU1RFUF9TVEFURV9DQU5DRUxMRUQQBhIgChxBR0VOVF9SVU5fU1RFUF9TVEFURV9TS0lQUEVEEAcq5wMKEEFnZW50UnVuU3RlcEtpbmQSIwofQUdFTlRfUlVOX1NURVBfS0lORF9VTlNQRUNJRklFRBAAEiIKHkFHRU5UX1JVTl9TVEVQX0tJTkRfTU9ERUxfQ0FMTBABEigKJEFHRU5UX1JVTl9TVEVQX0tJTkRfVE9PTF9DQUxMX0lOVEVOVBACEiMKH0FHRU5UX1JVTl9TVEVQX0tJTkRfVE9PTF9SRVNVTFQQAxIlCiFBR0VOVF9SVU5fU1RFUF9LSU5EX0FQUFJPVkFMX1dBSVQQBBIdChlBR0VOVF9SVU5fU1RFUF9LSU5EX0VSUk9SEAUSHgoaQUdFTlRfUlVOX1NURVBfS0lORF9TWVNURU0QBhIqCiZBR0VOVF9SVU5fU1RFUF9LSU5EX0NPTlRFWFRfRU5SSUNITUVOVBAHEhwKGEFHRU5UX1JVTl9TVEVQX0tJTkRfUExBThAIEh0KGUFHRU5UX1JVTl9TVEVQX0tJTkRfUEFUQ0gQCRIcChhBR0VOVF9SVU5fU1RFUF9LSU5EX1RFU1QQChIpCiVBR0VOVF9SVU5fU1RFUF9LSU5EX1BVTExfUkVRVUVTVF9TWU5DEAsSIwofQUdFTlRfUlVOX1NURVBfS0lORF9SRVZJRVdfU1lOQxAMKrYBChBBZ2VudFJ1bldhaXRUeXBlEiMKH0FHRU5UX1JVTl9XQUlUX1RZUEVfVU5TUEVDSUZJRUQQABIgChxBR0VOVF9SVU5fV0FJVF9UWVBFX0FQUFJPVkFMEAESHQoZQUdFTlRfUlVOX1dBSVRfVFlQRV9JTlBVVBACEh0KGUFHRU5UX1JVTl9XQUlUX1RZUEVfRVZFTlQQAxIdChlBR0VOVF9SVU5fV0FJVF9UWVBFX1RJTUVSEAQqxAEKEUFnZW50UnVuV2FpdFN0YXRlEiQKIEFHRU5UX1JVTl9XQUlUX1NUQVRFX1VOU1BFQ0lGSUVEEAASIAocQUdFTlRfUlVOX1dBSVRfU1RBVEVfUEVORElORxABEiEKHUFHRU5UX1JVTl9XQUlUX1NUQVRFX1JFU09MVkVEEAISIAocQUdFTlRfUlVOX1dBSVRfU1RBVEVfRVhQSVJFRBADEiIKHkFHRU5UX1JVTl9XQUlUX1NUQVRFX0NBTkNFTExFRBAEKsUEChRBZ2VudFJ1bkFydGlmYWN0S2luZBInCiNBR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9VTlNQRUNJRklFRBAAEicKI0FHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1RPT0xfUkVTVUxUEAESIQodQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfQ0hBUlQQAhIiCh5BR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9SRVBPUlQQAxIgChxBR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9GSUxFEAQSJgoiQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfVFJBTlNDUklQVBAFEikKJUFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX0FQUFJPVkFMX1BMQU4QBhIiCh5BR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9TWVNURU0QBxIhCh1BR0VOVF9SVU5fQVJUSUZBQ1RfS0lORF9QQVRDSBAIEigKJEFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1BVTExfUkVRVUVTVBAJEjAKLEFHRU5UX1JVTl9BUlRJRkFDVF9LSU5EX1BVTExfUkVRVUVTVF9DT01NRU5UEAoSJQohQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfQ0lfU1RBVFVTEAsSJQohQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfUlVOX1BBTkVMEAwSLgoqQUdFTlRfUlVOX0FSVElGQUNUX0tJTkRfRVZBTFVBVElPTl9FWEFNUExFEA0qkg0KEFJ1bnRpbWVFdmVudFR5cGUSIgoeUlVOVElNRV9FVkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASJwojUlVOVElNRV9FVkVOVF9UWVBFX1RSSUdHRVJfQUNDRVBURUQQARIsCihSVU5USU1FX0VWRU5UX1RZUEVfQUdFTlRfQ09ORklHX1JFU09MVkVEEAISKQolUlVOVElNRV9FVkVOVF9UWVBFX09CSkVDVElWRV9SRVNPTFZFRBADEiQKIFJVTlRJTUVfRVZFTlRfVFlQRV9DT05URVhUX0JVSUxUEAQSKAokUlVOVElNRV9FVkVOVF9UWVBFX1dPUktFUl9ESVNQQVRDSEVEEAUSIQodUlVOVElNRV9FVkVOVF9UWVBFX1JVTl9GQUlMRUQQBhIhCh1SVU5USU1FX0VWRU5UX1RZUEVfUlVOX1FVRVVFRBAHEiIKHlJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fQ0xBSU1FRBAIEiYKIlJVTlRJTUVfRVZFTlRfVFlQRV9MRUFTRV9IRUFSVEJFQVQQCRIkCiBSVU5USU1FX0VWRU5UX1RZUEVfU1RFUF9SRUNPUkRFRBAKEioKJlJVTlRJTUVfRVZFTlRfVFlQRV9DSEVDS1BPSU5UX1JFQ09SREVEEAsSKAokUlVOVElNRV9FVkVOVF9UWVBFX0FSVElGQUNUX1JFQ09SREVEEAwSJAogUlVOVElNRV9FVkVOVF9UWVBFX0NPU1RfUkVDT1JERUQQDRIiCh5SVU5USU1FX0VWRU5UX1RZUEVfUlVOX1dBSVRJTkcQDhIiCh5SVU5USU1FX0VWRU5UX1RZUEVfUlVOX1JFU1VNRUQQDxIkCiBSVU5USU1FX0VWRU5UX1RZUEVfUlVOX1NVQ0NFRURFRBAQEiQKIFJVTlRJTUVfRVZFTlRfVFlQRV9SVU5fQ0FOQ0VMTEVEEBESKgomUlVOVElNRV9FVkVOVF9UWVBFX1JVTl9SRVRSWV9TQ0hFRFVMRUQQEhIoCiRSVU5USU1FX0VWRU5UX1RZUEVfUlVOX0RFQURfTEVUVEVSRUQQExItCilSVU5USU1FX0VWRU5UX1RZUEVfU1RSRUFNX0NVUlNPUl9SRUNPUkRFRBAUEjIKLlJVTlRJTUVfRVZFTlRfVFlQRV9DT0RFWF9JTlRFUkFDVElPTl9SRVFVRVNURUQQFRIxCi1SVU5USU1FX0VWRU5UX1RZUEVfQ09ERVhfSU5URVJBQ1RJT05fUkVTT0xWRUQQFhIuCipSVU5USU1FX0VWRU5UX1RZUEVfQ09ERVhfUFJPR1JFU1NfUkVDT1JERUQQFxIqCiZSVU5USU1FX0VWRU5UX1RZUEVfQ09ERVhfT1VUUFVUX1NZTkNFRBAYEi0KKVJVTlRJTUVfRVZFTlRfVFlQRV9DT0RFWF9PVVRDT01FX09CU0VSVkVEEBkSLworUlVOVElNRV9FVkVOVF9UWVBFX0NIQU5ORUxfTUVTU0FHRV9SRUNPUkRFRBAaEi4KKlJVTlRJTUVfRVZFTlRfVFlQRV9NT0RFTF9SRVNQT05TRV9SRUNPUkRFRBAbEikKJVJVTlRJTUVfRVZFTlRfVFlQRV9UT09MX0NBTExfUkVDT1JERUQQHBIrCidSVU5USU1FX0VWRU5UX1RZUEVfVE9PTF9SRVNVTFRfUkVDT1JERUQQHRIpCiVSVU5USU1FX0VWRU5UX1RZUEVfQVBQUk9WQUxfUkVRVUVTVEVEEB4SKAokUlVOVElNRV9FVkVOVF9UWVBFX0FQUFJPVkFMX1JFU09MVkVEEB8SLgoqUlVOVElNRV9FVkVOVF9UWVBFX0FHRU5UX1BST0dSRVNTX1JFQ09SREVEECASKwonUlVOVElNRV9FVkVOVF9UWVBFX1JVTl9DT05UUk9MX1JFQ09SREVEECESKQolUlVOVElNRV9FVkVOVF9UWVBFX1dPUktfSVRFTV9SRUNPUkRFRBAiEigKJFJVTlRJTUVfRVZFTlRfVFlQRV9XT1JLX0lURU1fVVBEQVRFRBAjEjMKL1JVTlRJTUVfRVZFTlRfVFlQRV9QUk9DRVNTSU5HX1BSRVNFTkNFX1JFQ09SREVEECQSMAosUlVOVElNRV9FVkVOVF9UWVBFX0FVVE9OT01ZX1NFU1NJT05fUkVDT1JERUQQJRIiCh5SVU5USU1FX0VWRU5UX1RZUEVfUlVOX1lJRUxERUQQJirqAQoOUnVuQ29udHJvbE1vZGUSIAocUlVOX0NPTlRST0xfTU9ERV9VTlNQRUNJRklFRBAAEhoKFlJVTl9DT05UUk9MX01PREVfU1RFRVIQARIdChlSVU5fQ09OVFJPTF9NT0RFX0ZPTExPV1VQEAISHAoYUlVOX0NPTlRST0xfTU9ERV9DT0xMRUNUEAMSHgoaUlVOX0NPTlRST0xfTU9ERV9JTlRFUlJVUFQQBBIbChdSVU5fQ09OVFJPTF9NT0RFX0NBTkNFTBAFEiAKHFJVTl9DT05UUk9MX01PREVfU1lTVEVNX1dBS0UQBiqZBAoXQXV0b25vbXlQcm9jZXNzaW5nU3RhdGUSKQolQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9VTlNQRUNJRklFRBAAEiQKIEFVVE9OT01ZX1BST0NFU1NJTkdfU1RBVEVfUVVFVUVEEAESJwojQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9PUklFTlRJTkcQAhImCiJBVVRPTk9NWV9QUk9DRVNTSU5HX1NUQVRFX1RISU5LSU5HEAMSKAokQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9VU0lOR19UT09MEAQSLworQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9TUEFXTklOR19DSElMRFJFThAFEjEKLUFVVE9OT01ZX1BST0NFU1NJTkdfU1RBVEVfV0FJVElOR19PTl9BUFBST1ZBTBAGEi4KKkFVVE9OT01ZX1BST0NFU1NJTkdfU1RBVEVfV0FJVElOR19PTl9FVkVOVBAHEioKJkFVVE9OT01ZX1BST0NFU1NJTkdfU1RBVEVfU1lOVEhFU0laSU5HEAgSKAokQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9DT01QTEVUSU5HEAkSIgoeQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9JRExFEAoSJAogQVVUT05PTVlfUFJPQ0VTU0lOR19TVEFURV9GQUlMRUQQCyrwAgoRQWdlbnRXb3JrSXRlbUtpbmQSJAogQUdFTlRfV09SS19JVEVNX0tJTkRfVU5TUEVDSUZJRUQQABIdChlBR0VOVF9XT1JLX0lURU1fS0lORF9ST09UEAESIwofQUdFTlRfV09SS19JVEVNX0tJTkRfTU9ERUxfQ0FMTBACEiIKHkFHRU5UX1dPUktfSVRFTV9LSU5EX1RPT0xfQ0FMTBADEiIKHkFHRU5UX1dPUktfSVRFTV9LSU5EX0NISUxEX1JVThAEEh0KGUFHRU5UX1dPUktfSVRFTV9LSU5EX1dBSVQQBRIfChtBR0VOVF9XT1JLX0lURU1fS0lORF9NRU1PUlkQBhIjCh9BR0VOVF9XT1JLX0lURU1fS0lORF9VU0VSX0lOUFVUEAcSIQodQUdFTlRfV09SS19JVEVNX0tJTkRfRk9MTE9XVVAQCBIhCh1BR0VOVF9XT1JLX0lURU1fS0lORF9SRUNPVkVSWRAJKrMCChJBZ2VudFdvcmtJdGVtU3RhdGUSJQohQUdFTlRfV09SS19JVEVNX1NUQVRFX1VOU1BFQ0lGSUVEEAASIQodQUdFTlRfV09SS19JVEVNX1NUQVRFX1BFTkRJTkcQARIhCh1BR0VOVF9XT1JLX0lURU1fU1RBVEVfUlVOTklORxACEiEKHUFHRU5UX1dPUktfSVRFTV9TVEFURV9XQUlUSU5HEAMSIQodQUdFTlRfV09SS19JVEVNX1NUQVRFX0JMT0NLRUQQBBIjCh9BR0VOVF9XT1JLX0lURU1fU1RBVEVfU1VDQ0VFREVEEAUSIAocQUdFTlRfV09SS19JVEVNX1NUQVRFX0ZBSUxFRBAGEiMKH0FHRU5UX1dPUktfSVRFTV9TVEFURV9DQU5DRUxMRUQQByrvAQoUQXV0b25vbXlTZXNzaW9uU3RhdGUSJgoiQVVUT05PTVlfU0VTU0lPTl9TVEFURV9VTlNQRUNJRklFRBAAEiEKHUFVVE9OT01ZX1NFU1NJT05fU1RBVEVfQUNUSVZFEAESHwobQVVUT05PTVlfU0VTU0lPTl9TVEFURV9JRExFEAISIgoeQVVUT05PTVlfU0VTU0lPTl9TVEFURV9XQUlUSU5HEAMSIQodQVVUT05PTVlfU0VTU0lPTl9TVEFURV9GQUlMRUQQBBIkCiBBVVRPTk9NWV9TRVNTSU9OX1NUQVRFX0NBTkNFTExFRBAFKsMBChFZaWVsZENvbnRpbnVhdGlvbhIiCh5ZSUVMRF9DT05USU5VQVRJT05fVU5TUEVDSUZJRUQQABInCiNZSUVMRF9DT05USU5VQVRJT05fSU5MSU5FX05FWFRfU1RFUBABEiAKHFlJRUxEX0NPTlRJTlVBVElPTl9TQ0hFRFVMRUQQAhIbChdZSUVMRF9DT05USU5VQVRJT05fV0FJVBADEiIKHllJRUxEX0NPTlRJTlVBVElPTl9FTkRfU0VTU0lPThAEKukBChdSdW50aW1lRGVwZW5kZW5jeVN0YXR1cxIpCiVSVU5USU1FX0RFUEVOREVOQ1lfU1RBVFVTX1VOU1BFQ0lGSUVEEAASJgoiUlVOVElNRV9ERVBFTkRFTkNZX1NUQVRVU19SRVNPTFZFRBABEicKI1JVTlRJTUVfREVQRU5ERU5DWV9TVEFUVVNfTk9UX0ZPVU5EEAISLAooUlVOVElNRV9ERVBFTkRFTkNZX1NUQVRVU19OT1RfQ09ORklHVVJFRBADEiQKIFJVTlRJTUVfREVQRU5ERU5DWV9TVEFUVVNfTE9BREVEEAQqhAMKF1J1bnRpbWVXb3JrRW52ZWxvcGVLaW5kEioKJlJVTlRJTUVfV09SS19FTlZFTE9QRV9LSU5EX1VOU1BFQ0lGSUVEEAASMgouUlVOVElNRV9XT1JLX0VOVkVMT1BFX0tJTkRfQ09OVkVSU0FUSU9OX1RIUkVBRBABEjIKLlJVTlRJTUVfV09SS19FTlZFTE9QRV9LSU5EX0RJUkVDVF9DT05WRVJTQVRJT04QAhIlCiFSVU5USU1FX1dPUktfRU5WRUxPUEVfS0lORF9USUNLRVQQAxItCilSVU5USU1FX1dPUktfRU5WRUxPUEVfS0lORF9DQUxFTkRBUl9FVkVOVBAEEisKJ1JVTlRJTUVfV09SS19FTlZFTE9QRV9LSU5EX1BVTExfUkVRVUVTVBAFEicKI1JVTlRJTUVfV09SS19FTlZFTE9QRV9LSU5EX0lOQ0lERU5UEAYSKQolUlVOVElNRV9XT1JLX0VOVkVMT1BFX0tJTkRfUkVQT1NJVE9SWRAHKq8DChJSdW50aW1lQ2hhbm5lbEtpbmQSJAogUlVOVElNRV9DSEFOTkVMX0tJTkRfVU5TUEVDSUZJRUQQABIeChpSVU5USU1FX0NIQU5ORUxfS0lORF9TTEFDSxABEhwKGFJVTlRJTUVfQ0hBTk5FTF9LSU5EX1dFQhACEhwKGFJVTlRJTUVfQ0hBTk5FTF9LSU5EX0FQSRADEh4KGlJVTlRJTUVfQ0hBTk5FTF9LSU5EX0VNQUlMEAQSHwobUlVOVElNRV9DSEFOTkVMX0tJTkRfR0lUSFVCEAUSHwobUlVOVElNRV9DSEFOTkVMX0tJTkRfTElORUFSEAYSHQoZUlVOVElNRV9DSEFOTkVMX0tJTkRfSklSQRAHEhwKGFJVTlRJTUVfQ0hBTk5FTF9LSU5EX0lERRAIEiMKH1JVTlRJTUVfQ0hBTk5FTF9LSU5EX01PTklUT1JJTkcQCRIqCiZSVU5USU1FX0NIQU5ORUxfS0lORF9CUk9XU0VSX0VYVEVOU0lPThAKEicKI1JVTlRJTUVfQ0hBTk5FTF9LSU5EX0RFU0tUT1BfSEVMUEVSEAsqpwcKElJ1bnRpbWVUcmlnZ2VyS2luZBIkCiBSVU5USU1FX1RSSUdHRVJfS0lORF9VTlNQRUNJRklFRBAAEioKJlJVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX0FQUF9NRU5USU9OEAESLQopUlVOVElNRV9UUklHR0VSX0tJTkRfU0xBQ0tfRElSRUNUX01FU1NBR0UQAhIsCihSVU5USU1FX1RSSUdHRVJfS0lORF9TTEFDS19TTEFTSF9DT01NQU5EEAMSJQohUlVOVElNRV9UUklHR0VSX0tJTkRfU0xBQ0tfQUNUSU9OEAQSMgouUlVOVElNRV9UUklHR0VSX0tJTkRfU0xBQ0tfVEhSRUFEX0NPTlRJTlVBVElPThAFEiQKIFJVTlRJTUVfVFJJR0dFUl9LSU5EX1NMQUNLX0VWRU5UEAYSLQopUlVOVElNRV9UUklHR0VSX0tJTkRfRU5TRU1CTEVfV0VCX01FU1NBR0UQBxIvCitSVU5USU1FX1RSSUdHRVJfS0lORF9FTlNFTUJMRV9XRUJIT09LX0VWRU5UEAgSIQodUlVOVElNRV9UUklHR0VSX0tJTkRfU0NIRURVTEUQCRIeChpSVU5USU1FX1RSSUdHRVJfS0lORF9FTUFJTBAKEhwKGFJVTlRJTUVfVFJJR0dFUl9LSU5EX0FQSRALEhwKGFJVTlRJTUVfVFJJR0dFUl9LSU5EX1dFQhAMEi0KKVJVTlRJTUVfVFJJR0dFUl9LSU5EX0dJVEhVQl9JU1NVRV9DT01NRU5UEA0SNAowUlVOVElNRV9UUklHR0VSX0tJTkRfR0lUSFVCX1BVTExfUkVRVUVTVF9DT01NRU5UEA4SJgoiUlVOVElNRV9UUklHR0VSX0tJTkRfTElORUFSX0FDVElPThAPEiQKIFJVTlRJTUVfVFJJR0dFUl9LSU5EX0lERV9DT01NQU5EEBASKQolUlVOVElNRV9UUklHR0VSX0tJTkRfTU9OSVRPUklOR19BTEVSVBAREioKJlJVTlRJTUVfVFJJR0dFUl9LSU5EX1BST0FDVElWRV9QQVRURVJOEBISNwozUlVOVElNRV9UUklHR0VSX0tJTkRfU0xBQ0tfQVNTSVNUQU5UX1RIUkVBRF9TVEFSVEVEEBMSPwo7UlVOVElNRV9UUklHR0VSX0tJTkRfU0xBQ0tfQVNTSVNUQU5UX1RIUkVBRF9DT05URVhUX0NIQU5HRUQQFCqZAgoWUnVudGltZVZpc2liaWxpdHlMZXZlbBIoCiRSVU5USU1FX1ZJU0lCSUxJVFlfTEVWRUxfVU5TUEVDSUZJRUQQABInCiNSVU5USU1FX1ZJU0lCSUxJVFlfTEVWRUxfQUdFTlRfT05MWRABEikKJVJVTlRJTUVfVklTSUJJTElUWV9MRVZFTF9VU0VSX1ZJU0lCTEUQAhIsCihSVU5USU1FX1ZJU0lCSUxJVFlfTEVWRUxfQ0hBTk5FTF9WSVNJQkxFEAMSKgomUlVOVElNRV9WSVNJQklMSVRZX0xFVkVMX0FETUlOX1ZJU0lCTEUQBBInCiNSVU5USU1FX1ZJU0lCSUxJVFlfTEVWRUxfQVVESVRfT05MWRAFKvEBCg9SdW50aW1lQXVkaWVuY2USIAocUlVOVElNRV9BVURJRU5DRV9VTlNQRUNJRklFRBAAEhoKFlJVTlRJTUVfQVVESUVOQ0VfQUdFTlQQARIiCh5SVU5USU1FX0FVRElFTkNFX1RSSUdHRVJfQUNUT1IQAhIcChhSVU5USU1FX0FVRElFTkNFX0NIQU5ORUwQAxIlCiFSVU5USU1FX0FVRElFTkNFX1dPUktTUEFDRV9BRE1JTlMQBBIaChZSVU5USU1FX0FVRElFTkNFX0FVRElUEAUSGwoXUlVOVElNRV9BVURJRU5DRV9TWVNURU0QBiqfAwoRQ2hhbm5lbEFjdGlvbktpbmQSIwofQ0hBTk5FTF9BQ1RJT05fS0lORF9VTlNQRUNJRklFRBAAEikKJUNIQU5ORUxfQUNUSU9OX0tJTkRfQVBQUk9WQUxfREVDSVNJT04QARIjCh9DSEFOTkVMX0FDVElPTl9LSU5EX1dBSVRfUkVTVU1FEAISKQolQ0hBTk5FTF9BQ1RJT05fS0lORF9PQkpFQ1RJVkVfQ09OVFJPTBADEicKI0NIQU5ORUxfQUNUSU9OX0tJTkRfTUVNT1JZX0RFQ0lTSU9OEAQSIwofQ0hBTk5FTF9BQ1RJT05fS0lORF9PUFNfQ09NTUFORBAFEh8KG0NIQU5ORUxfQUNUSU9OX0tJTkRfR0VORVJJQxAGEikKJUNIQU5ORUxfQUNUSU9OX0tJTkRfQ09ERVhfSU5URVJBQ1RJT04QBxInCiNDSEFOTkVMX0FDVElPTl9LSU5EX0JST1dTRVJfQ09OVFJPTBAIEicKI0NIQU5ORUxfQUNUSU9OX0tJTkRfREVTS1RPUF9DT05UUk9MEAkqqwUKF0NoYW5uZWxBY3Rpb25UYXJnZXRLaW5kEioKJkNIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX1VOU1BFQ0lGSUVEEAASIgoeQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfUlVOEAESIwofQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfV0FJVBACEicKI0NIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX0FQUFJPVkFMEAMSKAokQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfT0JKRUNUSVZFEAQSJwojQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfQVJUSUZBQ1QQBRIvCitDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9NRU1PUllfQ0FORElEQVRFEAYSLQopQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfVE9PTF9FWEVDVVRJT04QBxIsCihDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9DT0RFWF9TRVNTSU9OEAgSJAogQ0hBTk5FTF9BQ1RJT05fVEFSR0VUX0tJTkRfUEFUQ0gQCRIrCidDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9QVUxMX1JFUVVFU1QQChIuCipDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9CUk9XU0VSX1NFU1NJT04QCxIqCiZDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9CUk9XU0VSX1RBQhAMEjIKLkNIQU5ORUxfQUNUSU9OX1RBUkdFVF9LSU5EX0JST1dTRVJfTkFUSVZFX0hPU1QQDRIuCipDSEFOTkVMX0FDVElPTl9UQVJHRVRfS0lORF9ERVNLVE9QX1NFU1NJT04QDiqQAwohQ2hhbm5lbEFjdGlvbkF1dGhvcml6YXRpb25PdXRjb21lEjQKMENIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9VTlNQRUNJRklFRBAAEjAKLENIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9BTExPV0VEEAESLworQ0hBTk5FTF9BQ1RJT05fQVVUSE9SSVpBVElPTl9PVVRDT01FX0RFTklFRBACEjcKM0NIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9VTk1BUFBFRF9BQ1RPUhADEjcKM0NIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9XUk9OR19BUFBST1ZFUhAEEjAKLENIQU5ORUxfQUNUSU9OX0FVVEhPUklaQVRJT05fT1VUQ09NRV9FWFBJUkVEEAUSLgoqQ0hBTk5FTF9BQ1RJT05fQVVUSE9SSVpBVElPTl9PVVRDT01FX1NUQUxFEAYqhwQKHUNoYW5uZWxBY3Rpb25FeGVjdXRpb25PdXRjb21lEjAKLENIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX1VOU1BFQ0lGSUVEEAASLAooQ0hBTk5FTF9BQ1RJT05fRVhFQ1VUSU9OX09VVENPTUVfUEVORElORxABEi4KKkNIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX1NVQ0NFRURFRBACEisKJ0NIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX0ZBSUxFRBADEi4KKkNIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX0RVUExJQ0FURRAEEjUKMUNIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX1RBUkdFVF9OT1RfRk9VTkQQBRI1CjFDSEFOTkVMX0FDVElPTl9FWEVDVVRJT05fT1VUQ09NRV9BTFJFQURZX1JFU09MVkVEEAYSMQotQ0hBTk5FTF9BQ1RJT05fRVhFQ1VUSU9OX09VVENPTUVfVU5BVVRIT1JJWkVEEAcSLAooQ0hBTk5FTF9BQ1RJT05fRVhFQ1VUSU9OX09VVENPTUVfRVhQSVJFRBAIEioKJkNIQU5ORUxfQUNUSU9OX0VYRUNVVElPTl9PVVRDT01FX1NUQUxFEAkqiAIKHENoYW5uZWxBY3Rpb25EZWxpdmVyeU91dGNvbWUSLworQ0hBTk5FTF9BQ1RJT05fREVMSVZFUllfT1VUQ09NRV9VTlNQRUNJRklFRBAAEjEKLUNIQU5ORUxfQUNUSU9OX0RFTElWRVJZX09VVENPTUVfTk9UX0FUVEVNUFRFRBABEisKJ0NIQU5ORUxfQUNUSU9OX0RFTElWRVJZX09VVENPTUVfVVBEQVRFRBACEioKJkNIQU5ORUxfQUNUSU9OX0RFTElWRVJZX09VVENPTUVfRkFJTEVEEAMSKwonQ0hBTk5FTF9BQ1RJT05fREVMSVZFUllfT1VUQ09NRV9TS0lQUEVEEAQqxQEKElJ1bnRpbWVTZW5zaXRpdml0eRIjCh9SVU5USU1FX1NFTlNJVElWSVRZX1VOU1BFQ0lGSUVEEAASHgoaUlVOVElNRV9TRU5TSVRJVklUWV9QVUJMSUMQARIgChxSVU5USU1FX1NFTlNJVElWSVRZX0lOVEVSTkFMEAISJAogUlVOVElNRV9TRU5TSVRJVklUWV9DT05GSURFTlRJQUwQAxIiCh5SVU5USU1FX1NFTlNJVElWSVRZX1JFU1RSSUNURUQQBCqCAgoUUnVudGltZVJlZGFjdGlvbktpbmQSJgoiUlVOVElNRV9SRURBQ1RJT05fS0lORF9VTlNQRUNJRklFRBAAEh4KGlJVTlRJTUVfUkVEQUNUSU9OX0tJTkRfUElJEAESJQohUlVOVElNRV9SRURBQ1RJT05fS0lORF9DUkVERU5USUFMEAISJAogUlVOVElNRV9SRURBQ1RJT05fS0lORF9UT09MX0FSR1MQAxIoCiRSVU5USU1FX1JFREFDVElPTl9LSU5EX1BPTElDWV9ERVRBSUwQBBIrCidSVU5USU1FX1JFREFDVElPTl9LSU5EX0lOVEVSTkFMX0NPTlRFWFQQBSqhAgogUnVudGltZVZpcnR1YWxGaWxlUmVkYWN0aW9uU3RhdGUSNAowUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVEQUNUSU9OX1NUQVRFX1VOU1BFQ0lGSUVEEAASLAooUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVEQUNUSU9OX1NUQVRFX1JBVxABEjEKLVJVTlRJTUVfVklSVFVBTF9GSUxFX1JFREFDVElPTl9TVEFURV9SRURBQ1RFRBACEjUKMVJVTlRJTUVfVklSVFVBTF9GSUxFX1JFREFDVElPTl9TVEFURV9QUkVWSUVXX09OTFkQAxIvCitSVU5USU1FX1ZJUlRVQUxfRklMRV9SRURBQ1RJT05fU1RBVEVfREVOSUVEEAQqzQEKG1J1bnRpbWVWaXJ0dWFsRmlsZU9wZXJhdGlvbhIuCipSVU5USU1FX1ZJUlRVQUxfRklMRV9PUEVSQVRJT05fVU5TUEVDSUZJRUQQABIoCiRSVU5USU1FX1ZJUlRVQUxfRklMRV9PUEVSQVRJT05fV1JJVEUQARIpCiVSVU5USU1FX1ZJUlRVQUxfRklMRV9PUEVSQVRJT05fREVMRVRFEAISKQolUlVOVElNRV9WSVJUVUFMX0ZJTEVfT1BFUkFUSU9OX1JFTkFNRRADKoUEChxSdW50aW1lVmlydHVhbEZpbGVSZWFzb25Db2RlEjAKLFJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX1VOU1BFQ0lGSUVEEAASLgoqUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVBU09OX0NPREVfTk9UX0ZPVU5EEAESMQotUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVBU09OX0NPREVfRklMVEVSRURfT1VUEAISOwo3UlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVBU09OX0NPREVfVE9UQUxfQlVER0VUX0VYSEFVU1RFRBADEjEKLVJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX1BBVEhfSU5WQUxJRBAEEjYKMlJVTlRJTUVfVklSVFVBTF9GSUxFX1JFQVNPTl9DT0RFX0NBUEFCSUxJVFlfREVOSUVEEAUSNgoyUlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVBU09OX0NPREVfUkVWSVNJT05fQ09ORkxJQ1QQBhIyCi5SVU5USU1FX1ZJUlRVQUxfRklMRV9SRUFTT05fQ09ERV9DVVJTT1JfTEFHR0VEEAcSPAo4UlVOVElNRV9WSVJUVUFMX0ZJTEVfUkVBU09OX0NPREVfVEVNUE9SQVJJTFlfVU5BVkFJTEFCTEUQCCqdAwooUnVudGltZVZpcnR1YWxGaWxlVHJhbnNhY3Rpb25BcHBseVN0YXR1cxI9CjlSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9BUFBMWV9TVEFUVVNfVU5TUEVDSUZJRUQQABI3CjNSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9BUFBMWV9TVEFUVVNfQ0xFQU4QARI7CjdSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9BUFBMWV9TVEFUVVNfSURFTlRJQ0FMEAISOgo2UlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fQVBQTFlfU1RBVFVTX0NPTkZMSUNUEAMSPgo6UlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fQVBQTFlfU1RBVFVTX01JU1NJTkdfQkFTRRAEEkAKPFJVTlRJTUVfVklSVFVBTF9GSUxFX1RSQU5TQUNUSU9OX0FQUExZX1NUQVRVU19NSVNTSU5HX1RBUkdFVBAFKuoCCiRSdW50aW1lVmlydHVhbEZpbGVUcmFuc2FjdGlvbk91dGNvbWUSOAo0UlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fT1VUQ09NRV9VTlNQRUNJRklFRBAAEjIKLlJVTlRJTUVfVklSVFVBTF9GSUxFX1RSQU5TQUNUSU9OX09VVENPTUVfQ0xFQU4QARI0CjBSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9PVVRDT01FX0FQUExJRUQQAhI0CjBSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9PVVRDT01FX1JFQkFTRUQQAxI1CjFSVU5USU1FX1ZJUlRVQUxfRklMRV9UUkFOU0FDVElPTl9PVVRDT01FX0NPTkZMSUNUEAQSMQotUlVOVElNRV9WSVJUVUFMX0ZJTEVfVFJBTlNBQ1RJT05fT1VUQ09NRV9OT09QEAUyoSkKE0FnZW50UnVudGltZVNlcnZpY2USXgoNSGFuZGxlVHJpZ2dlchIlLmFnZW50cnVudGltZS52MS5IYW5kbGVUcmlnZ2VyUmVxdWVzdBomLmFnZW50cnVudGltZS52MS5IYW5kbGVUcmlnZ2VyUmVzcG9uc2USWwoMQ2xhaW1OZXh0UnVuEiQuYWdlbnRydW50aW1lLnYxLkNsYWltTmV4dFJ1blJlcXVlc3QaJS5hZ2VudHJ1bnRpbWUudjEuQ2xhaW1OZXh0UnVuUmVzcG9uc2USWwoMSGVhcnRiZWF0UnVuEiQuYWdlbnRydW50aW1lLnYxLkhlYXJ0YmVhdFJ1blJlcXVlc3QaJS5hZ2VudHJ1bnRpbWUudjEuSGVhcnRiZWF0UnVuUmVzcG9uc2USXgoNUmVuZXdSdW5MZWFzZRIlLmFnZW50cnVudGltZS52MS5SZW5ld1J1bkxlYXNlUmVxdWVzdBomLmFnZW50cnVudGltZS52MS5SZW5ld1J1bkxlYXNlUmVzcG9uc2USXgoNUmVjb3JkUnVuU3RlcBIlLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5TdGVwUmVxdWVzdBomLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5TdGVwUmVzcG9uc2UScAoTUmVjb3JkUnVuQ2hlY2twb2ludBIrLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5DaGVja3BvaW50UmVxdWVzdBosLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5DaGVja3BvaW50UmVzcG9uc2USagoRUmVjb3JkUnVuQXJ0aWZhY3QSKS5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuQXJ0aWZhY3RSZXF1ZXN0GiouYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1bkFydGlmYWN0UmVzcG9uc2USXgoNUmVjb3JkUnVuQ29zdBIlLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5Db3N0UmVxdWVzdBomLmFnZW50cnVudGltZS52MS5SZWNvcmRSdW5Db3N0UmVzcG9uc2USdgoVUmVjb3JkUnVuU3RyZWFtQ3Vyc29yEi0uYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blN0cmVhbUN1cnNvclJlcXVlc3QaLi5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuU3RyZWFtQ3Vyc29yUmVzcG9uc2USYQoOUmVjb3JkUnVuRXZlbnQSJi5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuRXZlbnRSZXF1ZXN0GicuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1bkV2ZW50UmVzcG9uc2USVQoKQ29udHJvbFJ1bhIiLmFnZW50cnVudGltZS52MS5Db250cm9sUnVuUmVxdWVzdBojLmFnZW50cnVudGltZS52MS5Db250cm9sUnVuUmVzcG9uc2USagoRUmVjb3JkUnVuV29ya0l0ZW0SKS5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuV29ya0l0ZW1SZXF1ZXN0GiouYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1bldvcmtJdGVtUmVzcG9uc2USagoRVXBkYXRlUnVuV29ya0l0ZW0SKS5hZ2VudHJ1bnRpbWUudjEuVXBkYXRlUnVuV29ya0l0ZW1SZXF1ZXN0GiouYWdlbnRydW50aW1lLnYxLlVwZGF0ZVJ1bldvcmtJdGVtUmVzcG9uc2USZwoQTGlzdFJ1bldvcmtJdGVtcxIoLmFnZW50cnVudGltZS52MS5MaXN0UnVuV29ya0l0ZW1zUmVxdWVzdBopLmFnZW50cnVudGltZS52MS5MaXN0UnVuV29ya0l0ZW1zUmVzcG9uc2USTwoIWWllbGRSdW4SIC5hZ2VudHJ1bnRpbWUudjEuWWllbGRSdW5SZXF1ZXN0GiEuYWdlbnRydW50aW1lLnYxLllpZWxkUnVuUmVzcG9uc2USTAoHV2FpdFJ1bhIfLmFnZW50cnVudGltZS52MS5XYWl0UnVuUmVxdWVzdBogLmFnZW50cnVudGltZS52MS5XYWl0UnVuUmVzcG9uc2USUgoJUmVzdW1lUnVuEiEuYWdlbnRydW50aW1lLnYxLlJlc3VtZVJ1blJlcXVlc3QaIi5hZ2VudHJ1bnRpbWUudjEuUmVzdW1lUnVuUmVzcG9uc2USWAoLQ29tcGxldGVSdW4SIy5hZ2VudHJ1bnRpbWUudjEuQ29tcGxldGVSdW5SZXF1ZXN0GiQuYWdlbnRydW50aW1lLnYxLkNvbXBsZXRlUnVuUmVzcG9uc2USTAoHRmFpbFJ1bhIfLmFnZW50cnVudGltZS52MS5GYWlsUnVuUmVxdWVzdBogLmFnZW50cnVudGltZS52MS5GYWlsUnVuUmVzcG9uc2USUgoJQ2FuY2VsUnVuEiEuYWdlbnRydW50aW1lLnYxLkNhbmNlbFJ1blJlcXVlc3QaIi5hZ2VudHJ1bnRpbWUudjEuQ2FuY2VsUnVuUmVzcG9uc2USTwoIUmV0cnlSdW4SIC5hZ2VudHJ1bnRpbWUudjEuUmV0cnlSdW5SZXF1ZXN0GiEuYWdlbnRydW50aW1lLnYxLlJldHJ5UnVuUmVzcG9uc2USXgoNRGVhZExldHRlclJ1bhIlLmFnZW50cnVudGltZS52MS5EZWFkTGV0dGVyUnVuUmVxdWVzdBomLmFnZW50cnVudGltZS52MS5EZWFkTGV0dGVyUnVuUmVzcG9uc2USSQoGR2V0UnVuEh4uYWdlbnRydW50aW1lLnYxLkdldFJ1blJlcXVlc3QaHy5hZ2VudHJ1bnRpbWUudjEuR2V0UnVuUmVzcG9uc2USdgoVR2V0VGVhbW1hdGVXb3JrTGVkZ2VyEi0uYWdlbnRydW50aW1lLnYxLkdldFRlYW1tYXRlV29ya0xlZGdlclJlcXVlc3QaLi5hZ2VudHJ1bnRpbWUudjEuR2V0VGVhbW1hdGVXb3JrTGVkZ2VyUmVzcG9uc2USeQoWTGlzdFJ1bnNCeVdvcmtFbnZlbG9wZRIuLmFnZW50cnVudGltZS52MS5MaXN0UnVuc0J5V29ya0VudmVsb3BlUmVxdWVzdBovLmFnZW50cnVudGltZS52MS5MaXN0UnVuc0J5V29ya0VudmVsb3BlUmVzcG9uc2USfwoYR2V0Q2hhbm5lbFRocmVhZEFkb3B0aW9uEjAuYWdlbnRydW50aW1lLnYxLkdldENoYW5uZWxUaHJlYWRBZG9wdGlvblJlcXVlc3QaMS5hZ2VudHJ1bnRpbWUudjEuR2V0Q2hhbm5lbFRocmVhZEFkb3B0aW9uUmVzcG9uc2UShQEKGkxpc3RDaGFubmVsVGhyZWFkQWRvcHRpb25zEjIuYWdlbnRydW50aW1lLnYxLkxpc3RDaGFubmVsVGhyZWFkQWRvcHRpb25zUmVxdWVzdBozLmFnZW50cnVudGltZS52MS5MaXN0Q2hhbm5lbFRocmVhZEFkb3B0aW9uc1Jlc3BvbnNlElsKDExpc3RSdW5XYWl0cxIkLmFnZW50cnVudGltZS52MS5MaXN0UnVuV2FpdHNSZXF1ZXN0GiUuYWdlbnRydW50aW1lLnYxLkxpc3RSdW5XYWl0c1Jlc3BvbnNlEoUBChpSZWNvcmRDaGFubmVsQWN0aW9uUmVjZWlwdBIyLmFnZW50cnVudGltZS52MS5SZWNvcmRDaGFubmVsQWN0aW9uUmVjZWlwdFJlcXVlc3QaMy5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkQ2hhbm5lbEFjdGlvblJlY2VpcHRSZXNwb25zZRJ8ChdHZXRDaGFubmVsQWN0aW9uUmVjZWlwdBIvLmFnZW50cnVudGltZS52MS5HZXRDaGFubmVsQWN0aW9uUmVjZWlwdFJlcXVlc3QaMC5hZ2VudHJ1bnRpbWUudjEuR2V0Q2hhbm5lbEFjdGlvblJlY2VpcHRSZXNwb25zZRKCAQoZTGlzdENoYW5uZWxBY3Rpb25SZWNlaXB0cxIxLmFnZW50cnVudGltZS52MS5MaXN0Q2hhbm5lbEFjdGlvblJlY2VpcHRzUmVxdWVzdBoyLmFnZW50cnVudGltZS52MS5MaXN0Q2hhbm5lbEFjdGlvblJlY2VpcHRzUmVzcG9uc2USXgoNTGlzdFJ1bkV2ZW50cxIlLmFnZW50cnVudGltZS52MS5MaXN0UnVuRXZlbnRzUmVxdWVzdBomLmFnZW50cnVudGltZS52MS5MaXN0UnVuRXZlbnRzUmVzcG9uc2UScAoTTGlzdFJ1blZpcnR1YWxGaWxlcxIrLmFnZW50cnVudGltZS52MS5MaXN0UnVuVmlydHVhbEZpbGVzUmVxdWVzdBosLmFnZW50cnVudGltZS52MS5MaXN0UnVuVmlydHVhbEZpbGVzUmVzcG9uc2USbQoSUmVhZFJ1blZpcnR1YWxGaWxlEiouYWdlbnRydW50aW1lLnYxLlJlYWRSdW5WaXJ0dWFsRmlsZVJlcXVlc3QaKy5hZ2VudHJ1bnRpbWUudjEuUmVhZFJ1blZpcnR1YWxGaWxlUmVzcG9uc2USbQoSU3RhdFJ1blZpcnR1YWxGaWxlEiouYWdlbnRydW50aW1lLnYxLlN0YXRSdW5WaXJ0dWFsRmlsZVJlcXVlc3QaKy5hZ2VudHJ1bnRpbWUudjEuU3RhdFJ1blZpcnR1YWxGaWxlUmVzcG9uc2USdQoUV2F0Y2hSdW5WaXJ0dWFsRmlsZXMSLC5hZ2VudHJ1bnRpbWUudjEuV2F0Y2hSdW5WaXJ0dWFsRmlsZXNSZXF1ZXN0Gi0uYWdlbnRydW50aW1lLnYxLldhdGNoUnVuVmlydHVhbEZpbGVzUmVzcG9uc2UwARJ/ChhCYXRjaFJlYWRSdW5WaXJ0dWFsRmlsZXMSMC5hZ2VudHJ1bnRpbWUudjEuQmF0Y2hSZWFkUnVuVmlydHVhbEZpbGVzUmVxdWVzdBoxLmFnZW50cnVudGltZS52MS5CYXRjaFJlYWRSdW5WaXJ0dWFsRmlsZXNSZXNwb25zZRKRAQoeQnVpbGRSdW5WaXJ0dWFsRmlsZUNvbnRleHRQYWNrEjYuYWdlbnRydW50aW1lLnYxLkJ1aWxkUnVuVmlydHVhbEZpbGVDb250ZXh0UGFja1JlcXVlc3QaNy5hZ2VudHJ1bnRpbWUudjEuQnVpbGRSdW5WaXJ0dWFsRmlsZUNvbnRleHRQYWNrUmVzcG9uc2USdgoVU2VhcmNoUnVuVmlydHVhbEZpbGVzEi0uYWdlbnRydW50aW1lLnYxLlNlYXJjaFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QaLi5hZ2VudHJ1bnRpbWUudjEuU2VhcmNoUnVuVmlydHVhbEZpbGVzUmVzcG9uc2USiwEKHFJlY29yZFJ1blZpcnR1YWxGaWxlUHJvcG9zYWwSNC5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuVmlydHVhbEZpbGVQcm9wb3NhbFJlcXVlc3QaNS5hZ2VudHJ1bnRpbWUudjEuUmVjb3JkUnVuVmlydHVhbEZpbGVQcm9wb3NhbFJlc3BvbnNlEpQBCh9SZWNvcmRSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uEjcuYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0GjguYWdlbnRydW50aW1lLnYxLlJlY29yZFJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRKXAQogUHJvbW90ZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb24SOC5hZ2VudHJ1bnRpbWUudjEuUHJvbW90ZVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXF1ZXN0GjkuYWdlbnRydW50aW1lLnYxLlByb21vdGVSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2USjgEKHURpZmZSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uEjUuYWdlbnRydW50aW1lLnYxLkRpZmZSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBo2LmFnZW50cnVudGltZS52MS5EaWZmUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvblJlc3BvbnNlEpEBCh5BcHBseVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb24SNi5hZ2VudHJ1bnRpbWUudjEuQXBwbHlSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBo3LmFnZW50cnVudGltZS52MS5BcHBseVJ1blZpcnR1YWxGaWxlVHJhbnNhY3Rpb25SZXNwb25zZRKUAQofUmViYXNlUnVuVmlydHVhbEZpbGVUcmFuc2FjdGlvbhI3LmFnZW50cnVudGltZS52MS5SZWJhc2VSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVxdWVzdBo4LmFnZW50cnVudGltZS52MS5SZWJhc2VSdW5WaXJ0dWFsRmlsZVRyYW5zYWN0aW9uUmVzcG9uc2UShQEKGkh5ZHJhdGVSdW5WaXJ0dWFsRmlsZU1vdW50EjIuYWdlbnRydW50aW1lLnYxLkh5ZHJhdGVSdW5WaXJ0dWFsRmlsZU1vdW50UmVxdWVzdBozLmFnZW50cnVudGltZS52MS5IeWRyYXRlUnVuVmlydHVhbEZpbGVNb3VudFJlc3BvbnNlEnkKFkluc3BlY3RSdW5WaXJ0dWFsRmlsZXMSLi5hZ2VudHJ1bnRpbWUudjEuSW5zcGVjdFJ1blZpcnR1YWxGaWxlc1JlcXVlc3QaLy5hZ2VudHJ1bnRpbWUudjEuSW5zcGVjdFJ1blZpcnR1YWxGaWxlc1Jlc3BvbnNlQkNaQWdpdGh1Yi5jb20vZXZhbG9wcy9wbGF0Zm9ybS9nZW4vZ28vYWdlbnRydW50aW1lL3YxO2FnZW50cnVudGltZXYxYgZwcm90bzM", [file_agents_v1_agents, file_buf_validate_validate, file_codex_v1_codex, file_common_v1_surface, file_google_protobuf_struct, file_google_protobuf_timestamp, file_objectives_v1_objectives]);
15
15
  /**
16
16
  * Describes the message agentruntime.v1.RuntimeChannelContext.
17
17
  * Use `create(RuntimeChannelContextSchema)` to create a new message.
@@ -157,541 +157,601 @@ export const AgentRunStreamCursorSchema = /*@__PURE__*/ messageDesc(file_agentru
157
157
  * Use `create(RuntimeEventSchema)` to create a new message.
158
158
  */
159
159
  export const RuntimeEventSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 28);
160
+ /**
161
+ * Describes the message agentruntime.v1.AgentAutonomySession.
162
+ * Use `create(AgentAutonomySessionSchema)` to create a new message.
163
+ */
164
+ export const AgentAutonomySessionSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 29);
165
+ /**
166
+ * Describes the message agentruntime.v1.AgentWorkItem.
167
+ * Use `create(AgentWorkItemSchema)` to create a new message.
168
+ */
169
+ export const AgentWorkItemSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 30);
160
170
  /**
161
171
  * Describes the message agentruntime.v1.HandleTriggerRequest.
162
172
  * Use `create(HandleTriggerRequestSchema)` to create a new message.
163
173
  */
164
- export const HandleTriggerRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 29);
174
+ export const HandleTriggerRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 31);
165
175
  /**
166
176
  * Describes the message agentruntime.v1.HandleTriggerResponse.
167
177
  * Use `create(HandleTriggerResponseSchema)` to create a new message.
168
178
  */
169
- export const HandleTriggerResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 30);
179
+ export const HandleTriggerResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 32);
170
180
  /**
171
181
  * Describes the message agentruntime.v1.ClaimNextRunRequest.
172
182
  * Use `create(ClaimNextRunRequestSchema)` to create a new message.
173
183
  */
174
- export const ClaimNextRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 31);
184
+ export const ClaimNextRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 33);
175
185
  /**
176
186
  * Describes the message agentruntime.v1.ClaimNextRunResponse.
177
187
  * Use `create(ClaimNextRunResponseSchema)` to create a new message.
178
188
  */
179
- export const ClaimNextRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 32);
189
+ export const ClaimNextRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 34);
180
190
  /**
181
191
  * Describes the message agentruntime.v1.HeartbeatRunRequest.
182
192
  * Use `create(HeartbeatRunRequestSchema)` to create a new message.
183
193
  */
184
- export const HeartbeatRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 33);
194
+ export const HeartbeatRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 35);
185
195
  /**
186
196
  * Describes the message agentruntime.v1.HeartbeatRunResponse.
187
197
  * Use `create(HeartbeatRunResponseSchema)` to create a new message.
188
198
  */
189
- export const HeartbeatRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 34);
199
+ export const HeartbeatRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 36);
190
200
  /**
191
201
  * Describes the message agentruntime.v1.RenewRunLeaseRequest.
192
202
  * Use `create(RenewRunLeaseRequestSchema)` to create a new message.
193
203
  */
194
- export const RenewRunLeaseRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 35);
204
+ export const RenewRunLeaseRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 37);
195
205
  /**
196
206
  * Describes the message agentruntime.v1.RenewRunLeaseResponse.
197
207
  * Use `create(RenewRunLeaseResponseSchema)` to create a new message.
198
208
  */
199
- export const RenewRunLeaseResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 36);
209
+ export const RenewRunLeaseResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 38);
200
210
  /**
201
211
  * Describes the message agentruntime.v1.RecordRunStepRequest.
202
212
  * Use `create(RecordRunStepRequestSchema)` to create a new message.
203
213
  */
204
- export const RecordRunStepRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 37);
214
+ export const RecordRunStepRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 39);
205
215
  /**
206
216
  * Describes the message agentruntime.v1.RecordRunStepResponse.
207
217
  * Use `create(RecordRunStepResponseSchema)` to create a new message.
208
218
  */
209
- export const RecordRunStepResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 38);
219
+ export const RecordRunStepResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 40);
210
220
  /**
211
221
  * Describes the message agentruntime.v1.RecordRunCheckpointRequest.
212
222
  * Use `create(RecordRunCheckpointRequestSchema)` to create a new message.
213
223
  */
214
- export const RecordRunCheckpointRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 39);
224
+ export const RecordRunCheckpointRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 41);
215
225
  /**
216
226
  * Describes the message agentruntime.v1.RecordRunCheckpointResponse.
217
227
  * Use `create(RecordRunCheckpointResponseSchema)` to create a new message.
218
228
  */
219
- export const RecordRunCheckpointResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 40);
229
+ export const RecordRunCheckpointResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 42);
220
230
  /**
221
231
  * Describes the message agentruntime.v1.RecordRunArtifactRequest.
222
232
  * Use `create(RecordRunArtifactRequestSchema)` to create a new message.
223
233
  */
224
- export const RecordRunArtifactRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 41);
234
+ export const RecordRunArtifactRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 43);
225
235
  /**
226
236
  * Describes the message agentruntime.v1.RecordRunArtifactResponse.
227
237
  * Use `create(RecordRunArtifactResponseSchema)` to create a new message.
228
238
  */
229
- export const RecordRunArtifactResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 42);
239
+ export const RecordRunArtifactResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 44);
230
240
  /**
231
241
  * Describes the message agentruntime.v1.RecordRunCostRequest.
232
242
  * Use `create(RecordRunCostRequestSchema)` to create a new message.
233
243
  */
234
- export const RecordRunCostRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 43);
244
+ export const RecordRunCostRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 45);
235
245
  /**
236
246
  * Describes the message agentruntime.v1.RecordRunCostResponse.
237
247
  * Use `create(RecordRunCostResponseSchema)` to create a new message.
238
248
  */
239
- export const RecordRunCostResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 44);
249
+ export const RecordRunCostResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 46);
240
250
  /**
241
251
  * Describes the message agentruntime.v1.RecordRunStreamCursorRequest.
242
252
  * Use `create(RecordRunStreamCursorRequestSchema)` to create a new message.
243
253
  */
244
- export const RecordRunStreamCursorRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 45);
254
+ export const RecordRunStreamCursorRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 47);
245
255
  /**
246
256
  * Describes the message agentruntime.v1.RecordRunStreamCursorResponse.
247
257
  * Use `create(RecordRunStreamCursorResponseSchema)` to create a new message.
248
258
  */
249
- export const RecordRunStreamCursorResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 46);
259
+ export const RecordRunStreamCursorResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 48);
250
260
  /**
251
261
  * Describes the message agentruntime.v1.RecordRunEventRequest.
252
262
  * Use `create(RecordRunEventRequestSchema)` to create a new message.
253
263
  */
254
- export const RecordRunEventRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 47);
264
+ export const RecordRunEventRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 49);
255
265
  /**
256
266
  * Describes the message agentruntime.v1.RecordRunEventResponse.
257
267
  * Use `create(RecordRunEventResponseSchema)` to create a new message.
258
268
  */
259
- export const RecordRunEventResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 48);
269
+ export const RecordRunEventResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 50);
270
+ /**
271
+ * Describes the message agentruntime.v1.ControlRunRequest.
272
+ * Use `create(ControlRunRequestSchema)` to create a new message.
273
+ */
274
+ export const ControlRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 51);
275
+ /**
276
+ * Describes the message agentruntime.v1.ControlRunResponse.
277
+ * Use `create(ControlRunResponseSchema)` to create a new message.
278
+ */
279
+ export const ControlRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 52);
280
+ /**
281
+ * Describes the message agentruntime.v1.RecordRunWorkItemRequest.
282
+ * Use `create(RecordRunWorkItemRequestSchema)` to create a new message.
283
+ */
284
+ export const RecordRunWorkItemRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 53);
285
+ /**
286
+ * Describes the message agentruntime.v1.RecordRunWorkItemResponse.
287
+ * Use `create(RecordRunWorkItemResponseSchema)` to create a new message.
288
+ */
289
+ export const RecordRunWorkItemResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 54);
290
+ /**
291
+ * Describes the message agentruntime.v1.UpdateRunWorkItemRequest.
292
+ * Use `create(UpdateRunWorkItemRequestSchema)` to create a new message.
293
+ */
294
+ export const UpdateRunWorkItemRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 55);
295
+ /**
296
+ * Describes the message agentruntime.v1.UpdateRunWorkItemResponse.
297
+ * Use `create(UpdateRunWorkItemResponseSchema)` to create a new message.
298
+ */
299
+ export const UpdateRunWorkItemResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 56);
300
+ /**
301
+ * Describes the message agentruntime.v1.ListRunWorkItemsRequest.
302
+ * Use `create(ListRunWorkItemsRequestSchema)` to create a new message.
303
+ */
304
+ export const ListRunWorkItemsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 57);
305
+ /**
306
+ * Describes the message agentruntime.v1.ListRunWorkItemsResponse.
307
+ * Use `create(ListRunWorkItemsResponseSchema)` to create a new message.
308
+ */
309
+ export const ListRunWorkItemsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 58);
310
+ /**
311
+ * Describes the message agentruntime.v1.YieldRunRequest.
312
+ * Use `create(YieldRunRequestSchema)` to create a new message.
313
+ */
314
+ export const YieldRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 59);
315
+ /**
316
+ * Describes the message agentruntime.v1.YieldRunResponse.
317
+ * Use `create(YieldRunResponseSchema)` to create a new message.
318
+ */
319
+ export const YieldRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 60);
260
320
  /**
261
321
  * Describes the message agentruntime.v1.WaitRunRequest.
262
322
  * Use `create(WaitRunRequestSchema)` to create a new message.
263
323
  */
264
- export const WaitRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 49);
324
+ export const WaitRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 61);
265
325
  /**
266
326
  * Describes the message agentruntime.v1.WaitRunResponse.
267
327
  * Use `create(WaitRunResponseSchema)` to create a new message.
268
328
  */
269
- export const WaitRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 50);
329
+ export const WaitRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 62);
270
330
  /**
271
331
  * Describes the message agentruntime.v1.ResumeRunRequest.
272
332
  * Use `create(ResumeRunRequestSchema)` to create a new message.
273
333
  */
274
- export const ResumeRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 51);
334
+ export const ResumeRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 63);
275
335
  /**
276
336
  * Describes the message agentruntime.v1.ResumeRunResponse.
277
337
  * Use `create(ResumeRunResponseSchema)` to create a new message.
278
338
  */
279
- export const ResumeRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 52);
339
+ export const ResumeRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 64);
280
340
  /**
281
341
  * Describes the message agentruntime.v1.CompleteRunRequest.
282
342
  * Use `create(CompleteRunRequestSchema)` to create a new message.
283
343
  */
284
- export const CompleteRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 53);
344
+ export const CompleteRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 65);
285
345
  /**
286
346
  * Describes the message agentruntime.v1.CompleteRunResponse.
287
347
  * Use `create(CompleteRunResponseSchema)` to create a new message.
288
348
  */
289
- export const CompleteRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 54);
349
+ export const CompleteRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 66);
290
350
  /**
291
351
  * Describes the message agentruntime.v1.FailRunRequest.
292
352
  * Use `create(FailRunRequestSchema)` to create a new message.
293
353
  */
294
- export const FailRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 55);
354
+ export const FailRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 67);
295
355
  /**
296
356
  * Describes the message agentruntime.v1.FailRunResponse.
297
357
  * Use `create(FailRunResponseSchema)` to create a new message.
298
358
  */
299
- export const FailRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 56);
359
+ export const FailRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 68);
300
360
  /**
301
361
  * Describes the message agentruntime.v1.CancelRunRequest.
302
362
  * Use `create(CancelRunRequestSchema)` to create a new message.
303
363
  */
304
- export const CancelRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 57);
364
+ export const CancelRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 69);
305
365
  /**
306
366
  * Describes the message agentruntime.v1.CancelRunResponse.
307
367
  * Use `create(CancelRunResponseSchema)` to create a new message.
308
368
  */
309
- export const CancelRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 58);
369
+ export const CancelRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 70);
310
370
  /**
311
371
  * Describes the message agentruntime.v1.RetryRunRequest.
312
372
  * Use `create(RetryRunRequestSchema)` to create a new message.
313
373
  */
314
- export const RetryRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 59);
374
+ export const RetryRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 71);
315
375
  /**
316
376
  * Describes the message agentruntime.v1.RetryRunResponse.
317
377
  * Use `create(RetryRunResponseSchema)` to create a new message.
318
378
  */
319
- export const RetryRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 60);
379
+ export const RetryRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 72);
320
380
  /**
321
381
  * Describes the message agentruntime.v1.DeadLetterRunRequest.
322
382
  * Use `create(DeadLetterRunRequestSchema)` to create a new message.
323
383
  */
324
- export const DeadLetterRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 61);
384
+ export const DeadLetterRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 73);
325
385
  /**
326
386
  * Describes the message agentruntime.v1.DeadLetterRunResponse.
327
387
  * Use `create(DeadLetterRunResponseSchema)` to create a new message.
328
388
  */
329
- export const DeadLetterRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 62);
389
+ export const DeadLetterRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 74);
330
390
  /**
331
391
  * Describes the message agentruntime.v1.GetRunRequest.
332
392
  * Use `create(GetRunRequestSchema)` to create a new message.
333
393
  */
334
- export const GetRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 63);
394
+ export const GetRunRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 75);
335
395
  /**
336
396
  * Describes the message agentruntime.v1.GetRunResponse.
337
397
  * Use `create(GetRunResponseSchema)` to create a new message.
338
398
  */
339
- export const GetRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 64);
399
+ export const GetRunResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 76);
340
400
  /**
341
401
  * Describes the message agentruntime.v1.GetTeammateWorkLedgerRequest.
342
402
  * Use `create(GetTeammateWorkLedgerRequestSchema)` to create a new message.
343
403
  */
344
- export const GetTeammateWorkLedgerRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 65);
404
+ export const GetTeammateWorkLedgerRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 77);
345
405
  /**
346
406
  * Describes the message agentruntime.v1.GetTeammateWorkLedgerResponse.
347
407
  * Use `create(GetTeammateWorkLedgerResponseSchema)` to create a new message.
348
408
  */
349
- export const GetTeammateWorkLedgerResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 66);
409
+ export const GetTeammateWorkLedgerResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 78);
350
410
  /**
351
411
  * Describes the message agentruntime.v1.TeammateWorkLedger.
352
412
  * Use `create(TeammateWorkLedgerSchema)` to create a new message.
353
413
  */
354
- export const TeammateWorkLedgerSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 67);
414
+ export const TeammateWorkLedgerSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 79);
355
415
  /**
356
416
  * Describes the message agentruntime.v1.TeammateWorkLedgerBlocker.
357
417
  * Use `create(TeammateWorkLedgerBlockerSchema)` to create a new message.
358
418
  */
359
- export const TeammateWorkLedgerBlockerSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 68);
419
+ export const TeammateWorkLedgerBlockerSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 80);
360
420
  /**
361
421
  * Describes the message agentruntime.v1.TeammateWorkLedgerWaitResumeContract.
362
422
  * Use `create(TeammateWorkLedgerWaitResumeContractSchema)` to create a new message.
363
423
  */
364
- export const TeammateWorkLedgerWaitResumeContractSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 69);
424
+ export const TeammateWorkLedgerWaitResumeContractSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 81);
365
425
  /**
366
426
  * Describes the message agentruntime.v1.TeammateWorkLedgerConnectorAccess.
367
427
  * Use `create(TeammateWorkLedgerConnectorAccessSchema)` to create a new message.
368
428
  */
369
- export const TeammateWorkLedgerConnectorAccessSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 70);
429
+ export const TeammateWorkLedgerConnectorAccessSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 82);
370
430
  /**
371
431
  * Describes the message agentruntime.v1.TeammateWorkLedgerMemoryCitation.
372
432
  * Use `create(TeammateWorkLedgerMemoryCitationSchema)` to create a new message.
373
433
  */
374
- export const TeammateWorkLedgerMemoryCitationSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 71);
434
+ export const TeammateWorkLedgerMemoryCitationSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 83);
375
435
  /**
376
436
  * Describes the message agentruntime.v1.TeammateWorkLedgerVfsSummary.
377
437
  * Use `create(TeammateWorkLedgerVfsSummarySchema)` to create a new message.
378
438
  */
379
- export const TeammateWorkLedgerVfsSummarySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 72);
439
+ export const TeammateWorkLedgerVfsSummarySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 84);
380
440
  /**
381
441
  * Describes the message agentruntime.v1.TeammateWorkLedgerCerebroContext.
382
442
  * Use `create(TeammateWorkLedgerCerebroContextSchema)` to create a new message.
383
443
  */
384
- export const TeammateWorkLedgerCerebroContextSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 73);
444
+ export const TeammateWorkLedgerCerebroContextSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 85);
385
445
  /**
386
446
  * Describes the message agentruntime.v1.TeammateWorkLedgerProactivePolicy.
387
447
  * Use `create(TeammateWorkLedgerProactivePolicySchema)` to create a new message.
388
448
  */
389
- export const TeammateWorkLedgerProactivePolicySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 74);
449
+ export const TeammateWorkLedgerProactivePolicySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 86);
390
450
  /**
391
451
  * Describes the message agentruntime.v1.TeammateWorkLedgerChannelStatus.
392
452
  * Use `create(TeammateWorkLedgerChannelStatusSchema)` to create a new message.
393
453
  */
394
- export const TeammateWorkLedgerChannelStatusSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 75);
454
+ export const TeammateWorkLedgerChannelStatusSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 87);
395
455
  /**
396
456
  * Describes the message agentruntime.v1.ListRunsByWorkEnvelopeRequest.
397
457
  * Use `create(ListRunsByWorkEnvelopeRequestSchema)` to create a new message.
398
458
  */
399
- export const ListRunsByWorkEnvelopeRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 76);
459
+ export const ListRunsByWorkEnvelopeRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 88);
400
460
  /**
401
461
  * Describes the message agentruntime.v1.ListRunsByWorkEnvelopeResponse.
402
462
  * Use `create(ListRunsByWorkEnvelopeResponseSchema)` to create a new message.
403
463
  */
404
- export const ListRunsByWorkEnvelopeResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 77);
464
+ export const ListRunsByWorkEnvelopeResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 89);
405
465
  /**
406
466
  * Describes the message agentruntime.v1.ChannelThreadAdoption.
407
467
  * Use `create(ChannelThreadAdoptionSchema)` to create a new message.
408
468
  */
409
- export const ChannelThreadAdoptionSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 78);
469
+ export const ChannelThreadAdoptionSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 90);
410
470
  /**
411
471
  * Describes the message agentruntime.v1.GetChannelThreadAdoptionRequest.
412
472
  * Use `create(GetChannelThreadAdoptionRequestSchema)` to create a new message.
413
473
  */
414
- export const GetChannelThreadAdoptionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 79);
474
+ export const GetChannelThreadAdoptionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 91);
415
475
  /**
416
476
  * Describes the message agentruntime.v1.GetChannelThreadAdoptionResponse.
417
477
  * Use `create(GetChannelThreadAdoptionResponseSchema)` to create a new message.
418
478
  */
419
- export const GetChannelThreadAdoptionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 80);
479
+ export const GetChannelThreadAdoptionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 92);
420
480
  /**
421
481
  * Describes the message agentruntime.v1.ListChannelThreadAdoptionsRequest.
422
482
  * Use `create(ListChannelThreadAdoptionsRequestSchema)` to create a new message.
423
483
  */
424
- export const ListChannelThreadAdoptionsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 81);
484
+ export const ListChannelThreadAdoptionsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 93);
425
485
  /**
426
486
  * Describes the message agentruntime.v1.ListChannelThreadAdoptionsResponse.
427
487
  * Use `create(ListChannelThreadAdoptionsResponseSchema)` to create a new message.
428
488
  */
429
- export const ListChannelThreadAdoptionsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 82);
489
+ export const ListChannelThreadAdoptionsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 94);
430
490
  /**
431
491
  * Describes the message agentruntime.v1.ListRunWaitsRequest.
432
492
  * Use `create(ListRunWaitsRequestSchema)` to create a new message.
433
493
  */
434
- export const ListRunWaitsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 83);
494
+ export const ListRunWaitsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 95);
435
495
  /**
436
496
  * Describes the message agentruntime.v1.AgentRunWaitSummary.
437
497
  * Use `create(AgentRunWaitSummarySchema)` to create a new message.
438
498
  */
439
- export const AgentRunWaitSummarySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 84);
499
+ export const AgentRunWaitSummarySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 96);
440
500
  /**
441
501
  * Describes the message agentruntime.v1.ListRunWaitsResponse.
442
502
  * Use `create(ListRunWaitsResponseSchema)` to create a new message.
443
503
  */
444
- export const ListRunWaitsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 85);
504
+ export const ListRunWaitsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 97);
445
505
  /**
446
506
  * Describes the message agentruntime.v1.RecordChannelActionReceiptRequest.
447
507
  * Use `create(RecordChannelActionReceiptRequestSchema)` to create a new message.
448
508
  */
449
- export const RecordChannelActionReceiptRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 86);
509
+ export const RecordChannelActionReceiptRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 98);
450
510
  /**
451
511
  * Describes the message agentruntime.v1.RecordChannelActionReceiptResponse.
452
512
  * Use `create(RecordChannelActionReceiptResponseSchema)` to create a new message.
453
513
  */
454
- export const RecordChannelActionReceiptResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 87);
514
+ export const RecordChannelActionReceiptResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 99);
455
515
  /**
456
516
  * Describes the message agentruntime.v1.GetChannelActionReceiptRequest.
457
517
  * Use `create(GetChannelActionReceiptRequestSchema)` to create a new message.
458
518
  */
459
- export const GetChannelActionReceiptRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 88);
519
+ export const GetChannelActionReceiptRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 100);
460
520
  /**
461
521
  * Describes the message agentruntime.v1.GetChannelActionReceiptResponse.
462
522
  * Use `create(GetChannelActionReceiptResponseSchema)` to create a new message.
463
523
  */
464
- export const GetChannelActionReceiptResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 89);
524
+ export const GetChannelActionReceiptResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 101);
465
525
  /**
466
526
  * Describes the message agentruntime.v1.ListChannelActionReceiptsRequest.
467
527
  * Use `create(ListChannelActionReceiptsRequestSchema)` to create a new message.
468
528
  */
469
- export const ListChannelActionReceiptsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 90);
529
+ export const ListChannelActionReceiptsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 102);
470
530
  /**
471
531
  * Describes the message agentruntime.v1.ListChannelActionReceiptsResponse.
472
532
  * Use `create(ListChannelActionReceiptsResponseSchema)` to create a new message.
473
533
  */
474
- export const ListChannelActionReceiptsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 91);
534
+ export const ListChannelActionReceiptsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 103);
475
535
  /**
476
536
  * Describes the message agentruntime.v1.ListRunEventsRequest.
477
537
  * Use `create(ListRunEventsRequestSchema)` to create a new message.
478
538
  */
479
- export const ListRunEventsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 92);
539
+ export const ListRunEventsRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 104);
480
540
  /**
481
541
  * Describes the message agentruntime.v1.ListRunEventsResponse.
482
542
  * Use `create(ListRunEventsResponseSchema)` to create a new message.
483
543
  */
484
- export const ListRunEventsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 93);
544
+ export const ListRunEventsResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 105);
485
545
  /**
486
546
  * Describes the message agentruntime.v1.ListRunVirtualFilesRequest.
487
547
  * Use `create(ListRunVirtualFilesRequestSchema)` to create a new message.
488
548
  */
489
- export const ListRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 94);
549
+ export const ListRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 106);
490
550
  /**
491
551
  * Describes the message agentruntime.v1.ListRunVirtualFilesResponse.
492
552
  * Use `create(ListRunVirtualFilesResponseSchema)` to create a new message.
493
553
  */
494
- export const ListRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 95);
554
+ export const ListRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 107);
495
555
  /**
496
556
  * Describes the message agentruntime.v1.ReadRunVirtualFileRequest.
497
557
  * Use `create(ReadRunVirtualFileRequestSchema)` to create a new message.
498
558
  */
499
- export const ReadRunVirtualFileRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 96);
559
+ export const ReadRunVirtualFileRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 108);
500
560
  /**
501
561
  * Describes the message agentruntime.v1.ReadRunVirtualFileResponse.
502
562
  * Use `create(ReadRunVirtualFileResponseSchema)` to create a new message.
503
563
  */
504
- export const ReadRunVirtualFileResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 97);
564
+ export const ReadRunVirtualFileResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 109);
505
565
  /**
506
566
  * Describes the message agentruntime.v1.StatRunVirtualFileRequest.
507
567
  * Use `create(StatRunVirtualFileRequestSchema)` to create a new message.
508
568
  */
509
- export const StatRunVirtualFileRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 98);
569
+ export const StatRunVirtualFileRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 110);
510
570
  /**
511
571
  * Describes the message agentruntime.v1.StatRunVirtualFileResponse.
512
572
  * Use `create(StatRunVirtualFileResponseSchema)` to create a new message.
513
573
  */
514
- export const StatRunVirtualFileResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 99);
574
+ export const StatRunVirtualFileResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 111);
515
575
  /**
516
576
  * Describes the message agentruntime.v1.WatchRunVirtualFilesRequest.
517
577
  * Use `create(WatchRunVirtualFilesRequestSchema)` to create a new message.
518
578
  */
519
- export const WatchRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 100);
579
+ export const WatchRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 112);
520
580
  /**
521
581
  * Describes the message agentruntime.v1.WatchRunVirtualFilesResponse.
522
582
  * Use `create(WatchRunVirtualFilesResponseSchema)` to create a new message.
523
583
  */
524
- export const WatchRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 101);
584
+ export const WatchRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 113);
525
585
  /**
526
586
  * Describes the message agentruntime.v1.RuntimeVirtualFileWatchEvent.
527
587
  * Use `create(RuntimeVirtualFileWatchEventSchema)` to create a new message.
528
588
  */
529
- export const RuntimeVirtualFileWatchEventSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 102);
589
+ export const RuntimeVirtualFileWatchEventSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 114);
530
590
  /**
531
591
  * Describes the message agentruntime.v1.RuntimeVirtualFileSelector.
532
592
  * Use `create(RuntimeVirtualFileSelectorSchema)` to create a new message.
533
593
  */
534
- export const RuntimeVirtualFileSelectorSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 103);
594
+ export const RuntimeVirtualFileSelectorSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 115);
535
595
  /**
536
596
  * Describes the message agentruntime.v1.RuntimeVirtualFileReadResult.
537
597
  * Use `create(RuntimeVirtualFileReadResultSchema)` to create a new message.
538
598
  */
539
- export const RuntimeVirtualFileReadResultSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 104);
599
+ export const RuntimeVirtualFileReadResultSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 116);
540
600
  /**
541
601
  * Describes the message agentruntime.v1.BatchReadRunVirtualFilesRequest.
542
602
  * Use `create(BatchReadRunVirtualFilesRequestSchema)` to create a new message.
543
603
  */
544
- export const BatchReadRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 105);
604
+ export const BatchReadRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 117);
545
605
  /**
546
606
  * Describes the message agentruntime.v1.BatchReadRunVirtualFilesResponse.
547
607
  * Use `create(BatchReadRunVirtualFilesResponseSchema)` to create a new message.
548
608
  */
549
- export const BatchReadRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 106);
609
+ export const BatchReadRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 118);
550
610
  /**
551
611
  * Describes the message agentruntime.v1.BuildRunVirtualFileContextPackRequest.
552
612
  * Use `create(BuildRunVirtualFileContextPackRequestSchema)` to create a new message.
553
613
  */
554
- export const BuildRunVirtualFileContextPackRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 107);
614
+ export const BuildRunVirtualFileContextPackRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 119);
555
615
  /**
556
616
  * Describes the message agentruntime.v1.BuildRunVirtualFileContextPackResponse.
557
617
  * Use `create(BuildRunVirtualFileContextPackResponseSchema)` to create a new message.
558
618
  */
559
- export const BuildRunVirtualFileContextPackResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 108);
619
+ export const BuildRunVirtualFileContextPackResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 120);
560
620
  /**
561
621
  * Describes the message agentruntime.v1.SearchRunVirtualFilesRequest.
562
622
  * Use `create(SearchRunVirtualFilesRequestSchema)` to create a new message.
563
623
  */
564
- export const SearchRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 109);
624
+ export const SearchRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 121);
565
625
  /**
566
626
  * Describes the message agentruntime.v1.SearchRunVirtualFilesResponse.
567
627
  * Use `create(SearchRunVirtualFilesResponseSchema)` to create a new message.
568
628
  */
569
- export const SearchRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 110);
629
+ export const SearchRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 122);
570
630
  /**
571
631
  * Describes the message agentruntime.v1.RecordRunVirtualFileProposalRequest.
572
632
  * Use `create(RecordRunVirtualFileProposalRequestSchema)` to create a new message.
573
633
  */
574
- export const RecordRunVirtualFileProposalRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 111);
634
+ export const RecordRunVirtualFileProposalRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 123);
575
635
  /**
576
636
  * Describes the message agentruntime.v1.RecordRunVirtualFileProposalResponse.
577
637
  * Use `create(RecordRunVirtualFileProposalResponseSchema)` to create a new message.
578
638
  */
579
- export const RecordRunVirtualFileProposalResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 112);
639
+ export const RecordRunVirtualFileProposalResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 124);
580
640
  /**
581
641
  * Describes the message agentruntime.v1.RuntimeVirtualFileChange.
582
642
  * Use `create(RuntimeVirtualFileChangeSchema)` to create a new message.
583
643
  */
584
- export const RuntimeVirtualFileChangeSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 113);
644
+ export const RuntimeVirtualFileChangeSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 125);
585
645
  /**
586
646
  * Describes the message agentruntime.v1.RecordRunVirtualFileTransactionRequest.
587
647
  * Use `create(RecordRunVirtualFileTransactionRequestSchema)` to create a new message.
588
648
  */
589
- export const RecordRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 114);
649
+ export const RecordRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 126);
590
650
  /**
591
651
  * Describes the message agentruntime.v1.RecordRunVirtualFileTransactionResponse.
592
652
  * Use `create(RecordRunVirtualFileTransactionResponseSchema)` to create a new message.
593
653
  */
594
- export const RecordRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 115);
654
+ export const RecordRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 127);
595
655
  /**
596
656
  * Describes the message agentruntime.v1.PromoteRunVirtualFileTransactionRequest.
597
657
  * Use `create(PromoteRunVirtualFileTransactionRequestSchema)` to create a new message.
598
658
  */
599
- export const PromoteRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 116);
659
+ export const PromoteRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 128);
600
660
  /**
601
661
  * Describes the message agentruntime.v1.PromoteRunVirtualFileTransactionResponse.
602
662
  * Use `create(PromoteRunVirtualFileTransactionResponseSchema)` to create a new message.
603
663
  */
604
- export const PromoteRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 117);
664
+ export const PromoteRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 129);
605
665
  /**
606
666
  * Describes the message agentruntime.v1.RuntimeVirtualFileDiffHunk.
607
667
  * Use `create(RuntimeVirtualFileDiffHunkSchema)` to create a new message.
608
668
  */
609
- export const RuntimeVirtualFileDiffHunkSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 118);
669
+ export const RuntimeVirtualFileDiffHunkSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 130);
610
670
  /**
611
671
  * Describes the message agentruntime.v1.RuntimeVirtualFileTransactionFileDiff.
612
672
  * Use `create(RuntimeVirtualFileTransactionFileDiffSchema)` to create a new message.
613
673
  */
614
- export const RuntimeVirtualFileTransactionFileDiffSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 119);
674
+ export const RuntimeVirtualFileTransactionFileDiffSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 131);
615
675
  /**
616
676
  * Describes the message agentruntime.v1.RuntimeVirtualFileTransactionConflict.
617
677
  * Use `create(RuntimeVirtualFileTransactionConflictSchema)` to create a new message.
618
678
  */
619
- export const RuntimeVirtualFileTransactionConflictSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 120);
679
+ export const RuntimeVirtualFileTransactionConflictSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 132);
620
680
  /**
621
681
  * Describes the message agentruntime.v1.RuntimeVirtualFileTransactionDiff.
622
682
  * Use `create(RuntimeVirtualFileTransactionDiffSchema)` to create a new message.
623
683
  */
624
- export const RuntimeVirtualFileTransactionDiffSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 121);
684
+ export const RuntimeVirtualFileTransactionDiffSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 133);
625
685
  /**
626
686
  * Describes the message agentruntime.v1.DiffRunVirtualFileTransactionRequest.
627
687
  * Use `create(DiffRunVirtualFileTransactionRequestSchema)` to create a new message.
628
688
  */
629
- export const DiffRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 122);
689
+ export const DiffRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 134);
630
690
  /**
631
691
  * Describes the message agentruntime.v1.DiffRunVirtualFileTransactionResponse.
632
692
  * Use `create(DiffRunVirtualFileTransactionResponseSchema)` to create a new message.
633
693
  */
634
- export const DiffRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 123);
694
+ export const DiffRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 135);
635
695
  /**
636
696
  * Describes the message agentruntime.v1.ApplyRunVirtualFileTransactionRequest.
637
697
  * Use `create(ApplyRunVirtualFileTransactionRequestSchema)` to create a new message.
638
698
  */
639
- export const ApplyRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 124);
699
+ export const ApplyRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 136);
640
700
  /**
641
701
  * Describes the message agentruntime.v1.ApplyRunVirtualFileTransactionResponse.
642
702
  * Use `create(ApplyRunVirtualFileTransactionResponseSchema)` to create a new message.
643
703
  */
644
- export const ApplyRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 125);
704
+ export const ApplyRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 137);
645
705
  /**
646
706
  * Describes the message agentruntime.v1.RebaseRunVirtualFileTransactionRequest.
647
707
  * Use `create(RebaseRunVirtualFileTransactionRequestSchema)` to create a new message.
648
708
  */
649
- export const RebaseRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 126);
709
+ export const RebaseRunVirtualFileTransactionRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 138);
650
710
  /**
651
711
  * Describes the message agentruntime.v1.RebaseRunVirtualFileTransactionResponse.
652
712
  * Use `create(RebaseRunVirtualFileTransactionResponseSchema)` to create a new message.
653
713
  */
654
- export const RebaseRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 127);
714
+ export const RebaseRunVirtualFileTransactionResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 139);
655
715
  /**
656
716
  * Describes the message agentruntime.v1.HydrateRunVirtualFileMountRequest.
657
717
  * Use `create(HydrateRunVirtualFileMountRequestSchema)` to create a new message.
658
718
  */
659
- export const HydrateRunVirtualFileMountRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 128);
719
+ export const HydrateRunVirtualFileMountRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 140);
660
720
  /**
661
721
  * Describes the message agentruntime.v1.HydrateRunVirtualFileMountResponse.
662
722
  * Use `create(HydrateRunVirtualFileMountResponseSchema)` to create a new message.
663
723
  */
664
- export const HydrateRunVirtualFileMountResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 129);
724
+ export const HydrateRunVirtualFileMountResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 141);
665
725
  /**
666
726
  * Describes the message agentruntime.v1.InspectRunVirtualFilesRequest.
667
727
  * Use `create(InspectRunVirtualFilesRequestSchema)` to create a new message.
668
728
  */
669
- export const InspectRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 130);
729
+ export const InspectRunVirtualFilesRequestSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 142);
670
730
  /**
671
731
  * Describes the message agentruntime.v1.RuntimeVirtualFileInspectorSummary.
672
732
  * Use `create(RuntimeVirtualFileInspectorSummarySchema)` to create a new message.
673
733
  */
674
- export const RuntimeVirtualFileInspectorSummarySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 131);
734
+ export const RuntimeVirtualFileInspectorSummarySchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 143);
675
735
  /**
676
736
  * Describes the message agentruntime.v1.RuntimeVirtualFileInspectorMount.
677
737
  * Use `create(RuntimeVirtualFileInspectorMountSchema)` to create a new message.
678
738
  */
679
- export const RuntimeVirtualFileInspectorMountSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 132);
739
+ export const RuntimeVirtualFileInspectorMountSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 144);
680
740
  /**
681
741
  * Describes the message agentruntime.v1.RuntimeVirtualFileInspectorTransaction.
682
742
  * Use `create(RuntimeVirtualFileInspectorTransactionSchema)` to create a new message.
683
743
  */
684
- export const RuntimeVirtualFileInspectorTransactionSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 133);
744
+ export const RuntimeVirtualFileInspectorTransactionSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 145);
685
745
  /**
686
746
  * Describes the message agentruntime.v1.RuntimeVirtualFileInspectorProducer.
687
747
  * Use `create(RuntimeVirtualFileInspectorProducerSchema)` to create a new message.
688
748
  */
689
- export const RuntimeVirtualFileInspectorProducerSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 134);
749
+ export const RuntimeVirtualFileInspectorProducerSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 146);
690
750
  /**
691
751
  * Describes the message agentruntime.v1.InspectRunVirtualFilesResponse.
692
752
  * Use `create(InspectRunVirtualFilesResponseSchema)` to create a new message.
693
753
  */
694
- export const InspectRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 135);
754
+ export const InspectRunVirtualFilesResponseSchema = /*@__PURE__*/ messageDesc(file_agentruntime_v1_runtime, 147);
695
755
  /**
696
756
  * AgentRunState describes the runtime lifecycle of one durable attempt.
697
757
  *
@@ -1123,11 +1183,304 @@ export var RuntimeEventType;
1123
1183
  * @generated from enum value: RUNTIME_EVENT_TYPE_AGENT_PROGRESS_RECORDED = 32;
1124
1184
  */
1125
1185
  RuntimeEventType[RuntimeEventType["AGENT_PROGRESS_RECORDED"] = 32] = "AGENT_PROGRESS_RECORDED";
1186
+ /**
1187
+ * @generated from enum value: RUNTIME_EVENT_TYPE_RUN_CONTROL_RECORDED = 33;
1188
+ */
1189
+ RuntimeEventType[RuntimeEventType["RUN_CONTROL_RECORDED"] = 33] = "RUN_CONTROL_RECORDED";
1190
+ /**
1191
+ * @generated from enum value: RUNTIME_EVENT_TYPE_WORK_ITEM_RECORDED = 34;
1192
+ */
1193
+ RuntimeEventType[RuntimeEventType["WORK_ITEM_RECORDED"] = 34] = "WORK_ITEM_RECORDED";
1194
+ /**
1195
+ * @generated from enum value: RUNTIME_EVENT_TYPE_WORK_ITEM_UPDATED = 35;
1196
+ */
1197
+ RuntimeEventType[RuntimeEventType["WORK_ITEM_UPDATED"] = 35] = "WORK_ITEM_UPDATED";
1198
+ /**
1199
+ * @generated from enum value: RUNTIME_EVENT_TYPE_PROCESSING_PRESENCE_RECORDED = 36;
1200
+ */
1201
+ RuntimeEventType[RuntimeEventType["PROCESSING_PRESENCE_RECORDED"] = 36] = "PROCESSING_PRESENCE_RECORDED";
1202
+ /**
1203
+ * @generated from enum value: RUNTIME_EVENT_TYPE_AUTONOMY_SESSION_RECORDED = 37;
1204
+ */
1205
+ RuntimeEventType[RuntimeEventType["AUTONOMY_SESSION_RECORDED"] = 37] = "AUTONOMY_SESSION_RECORDED";
1206
+ /**
1207
+ * @generated from enum value: RUNTIME_EVENT_TYPE_RUN_YIELDED = 38;
1208
+ */
1209
+ RuntimeEventType[RuntimeEventType["RUN_YIELDED"] = 38] = "RUN_YIELDED";
1126
1210
  })(RuntimeEventType || (RuntimeEventType = {}));
1127
1211
  /**
1128
1212
  * Describes the enum agentruntime.v1.RuntimeEventType.
1129
1213
  */
1130
1214
  export const RuntimeEventTypeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 6);
1215
+ /**
1216
+ * RunControlMode describes durable input applied to an autonomous run/session.
1217
+ * Steering and followups are optional controls; they are not the worker loop.
1218
+ *
1219
+ * @generated from enum agentruntime.v1.RunControlMode
1220
+ */
1221
+ export var RunControlMode;
1222
+ (function (RunControlMode) {
1223
+ /**
1224
+ * @generated from enum value: RUN_CONTROL_MODE_UNSPECIFIED = 0;
1225
+ */
1226
+ RunControlMode[RunControlMode["UNSPECIFIED"] = 0] = "UNSPECIFIED";
1227
+ /**
1228
+ * @generated from enum value: RUN_CONTROL_MODE_STEER = 1;
1229
+ */
1230
+ RunControlMode[RunControlMode["STEER"] = 1] = "STEER";
1231
+ /**
1232
+ * @generated from enum value: RUN_CONTROL_MODE_FOLLOWUP = 2;
1233
+ */
1234
+ RunControlMode[RunControlMode["FOLLOWUP"] = 2] = "FOLLOWUP";
1235
+ /**
1236
+ * @generated from enum value: RUN_CONTROL_MODE_COLLECT = 3;
1237
+ */
1238
+ RunControlMode[RunControlMode["COLLECT"] = 3] = "COLLECT";
1239
+ /**
1240
+ * @generated from enum value: RUN_CONTROL_MODE_INTERRUPT = 4;
1241
+ */
1242
+ RunControlMode[RunControlMode["INTERRUPT"] = 4] = "INTERRUPT";
1243
+ /**
1244
+ * @generated from enum value: RUN_CONTROL_MODE_CANCEL = 5;
1245
+ */
1246
+ RunControlMode[RunControlMode["CANCEL"] = 5] = "CANCEL";
1247
+ /**
1248
+ * @generated from enum value: RUN_CONTROL_MODE_SYSTEM_WAKE = 6;
1249
+ */
1250
+ RunControlMode[RunControlMode["SYSTEM_WAKE"] = 6] = "SYSTEM_WAKE";
1251
+ })(RunControlMode || (RunControlMode = {}));
1252
+ /**
1253
+ * Describes the enum agentruntime.v1.RunControlMode.
1254
+ */
1255
+ export const RunControlModeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 7);
1256
+ /**
1257
+ * AutonomyProcessingState is the channel-safe processing presence for a
1258
+ * long-lived autonomous teammate. Adapters update the same visible Slack
1259
+ * message from this state instead of posting one reply per runtime turn.
1260
+ *
1261
+ * @generated from enum agentruntime.v1.AutonomyProcessingState
1262
+ */
1263
+ export var AutonomyProcessingState;
1264
+ (function (AutonomyProcessingState) {
1265
+ /**
1266
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_UNSPECIFIED = 0;
1267
+ */
1268
+ AutonomyProcessingState[AutonomyProcessingState["UNSPECIFIED"] = 0] = "UNSPECIFIED";
1269
+ /**
1270
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_QUEUED = 1;
1271
+ */
1272
+ AutonomyProcessingState[AutonomyProcessingState["QUEUED"] = 1] = "QUEUED";
1273
+ /**
1274
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_ORIENTING = 2;
1275
+ */
1276
+ AutonomyProcessingState[AutonomyProcessingState["ORIENTING"] = 2] = "ORIENTING";
1277
+ /**
1278
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_THINKING = 3;
1279
+ */
1280
+ AutonomyProcessingState[AutonomyProcessingState["THINKING"] = 3] = "THINKING";
1281
+ /**
1282
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_USING_TOOL = 4;
1283
+ */
1284
+ AutonomyProcessingState[AutonomyProcessingState["USING_TOOL"] = 4] = "USING_TOOL";
1285
+ /**
1286
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_SPAWNING_CHILDREN = 5;
1287
+ */
1288
+ AutonomyProcessingState[AutonomyProcessingState["SPAWNING_CHILDREN"] = 5] = "SPAWNING_CHILDREN";
1289
+ /**
1290
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_WAITING_ON_APPROVAL = 6;
1291
+ */
1292
+ AutonomyProcessingState[AutonomyProcessingState["WAITING_ON_APPROVAL"] = 6] = "WAITING_ON_APPROVAL";
1293
+ /**
1294
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_WAITING_ON_EVENT = 7;
1295
+ */
1296
+ AutonomyProcessingState[AutonomyProcessingState["WAITING_ON_EVENT"] = 7] = "WAITING_ON_EVENT";
1297
+ /**
1298
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_SYNTHESIZING = 8;
1299
+ */
1300
+ AutonomyProcessingState[AutonomyProcessingState["SYNTHESIZING"] = 8] = "SYNTHESIZING";
1301
+ /**
1302
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_COMPLETING = 9;
1303
+ */
1304
+ AutonomyProcessingState[AutonomyProcessingState["COMPLETING"] = 9] = "COMPLETING";
1305
+ /**
1306
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_IDLE = 10;
1307
+ */
1308
+ AutonomyProcessingState[AutonomyProcessingState["IDLE"] = 10] = "IDLE";
1309
+ /**
1310
+ * @generated from enum value: AUTONOMY_PROCESSING_STATE_FAILED = 11;
1311
+ */
1312
+ AutonomyProcessingState[AutonomyProcessingState["FAILED"] = 11] = "FAILED";
1313
+ })(AutonomyProcessingState || (AutonomyProcessingState = {}));
1314
+ /**
1315
+ * Describes the enum agentruntime.v1.AutonomyProcessingState.
1316
+ */
1317
+ export const AutonomyProcessingStateSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 8);
1318
+ /**
1319
+ * AgentWorkItemKind classifies nodes in the autonomous work graph.
1320
+ *
1321
+ * @generated from enum agentruntime.v1.AgentWorkItemKind
1322
+ */
1323
+ export var AgentWorkItemKind;
1324
+ (function (AgentWorkItemKind) {
1325
+ /**
1326
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_UNSPECIFIED = 0;
1327
+ */
1328
+ AgentWorkItemKind[AgentWorkItemKind["UNSPECIFIED"] = 0] = "UNSPECIFIED";
1329
+ /**
1330
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_ROOT = 1;
1331
+ */
1332
+ AgentWorkItemKind[AgentWorkItemKind["ROOT"] = 1] = "ROOT";
1333
+ /**
1334
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_MODEL_CALL = 2;
1335
+ */
1336
+ AgentWorkItemKind[AgentWorkItemKind["MODEL_CALL"] = 2] = "MODEL_CALL";
1337
+ /**
1338
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_TOOL_CALL = 3;
1339
+ */
1340
+ AgentWorkItemKind[AgentWorkItemKind["TOOL_CALL"] = 3] = "TOOL_CALL";
1341
+ /**
1342
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_CHILD_RUN = 4;
1343
+ */
1344
+ AgentWorkItemKind[AgentWorkItemKind["CHILD_RUN"] = 4] = "CHILD_RUN";
1345
+ /**
1346
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_WAIT = 5;
1347
+ */
1348
+ AgentWorkItemKind[AgentWorkItemKind["WAIT"] = 5] = "WAIT";
1349
+ /**
1350
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_MEMORY = 6;
1351
+ */
1352
+ AgentWorkItemKind[AgentWorkItemKind["MEMORY"] = 6] = "MEMORY";
1353
+ /**
1354
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_USER_INPUT = 7;
1355
+ */
1356
+ AgentWorkItemKind[AgentWorkItemKind["USER_INPUT"] = 7] = "USER_INPUT";
1357
+ /**
1358
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_FOLLOWUP = 8;
1359
+ */
1360
+ AgentWorkItemKind[AgentWorkItemKind["FOLLOWUP"] = 8] = "FOLLOWUP";
1361
+ /**
1362
+ * @generated from enum value: AGENT_WORK_ITEM_KIND_RECOVERY = 9;
1363
+ */
1364
+ AgentWorkItemKind[AgentWorkItemKind["RECOVERY"] = 9] = "RECOVERY";
1365
+ })(AgentWorkItemKind || (AgentWorkItemKind = {}));
1366
+ /**
1367
+ * Describes the enum agentruntime.v1.AgentWorkItemKind.
1368
+ */
1369
+ export const AgentWorkItemKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 9);
1370
+ /**
1371
+ * AgentWorkItemState describes durable progress for a work graph node.
1372
+ *
1373
+ * @generated from enum agentruntime.v1.AgentWorkItemState
1374
+ */
1375
+ export var AgentWorkItemState;
1376
+ (function (AgentWorkItemState) {
1377
+ /**
1378
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_UNSPECIFIED = 0;
1379
+ */
1380
+ AgentWorkItemState[AgentWorkItemState["UNSPECIFIED"] = 0] = "UNSPECIFIED";
1381
+ /**
1382
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_PENDING = 1;
1383
+ */
1384
+ AgentWorkItemState[AgentWorkItemState["PENDING"] = 1] = "PENDING";
1385
+ /**
1386
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_RUNNING = 2;
1387
+ */
1388
+ AgentWorkItemState[AgentWorkItemState["RUNNING"] = 2] = "RUNNING";
1389
+ /**
1390
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_WAITING = 3;
1391
+ */
1392
+ AgentWorkItemState[AgentWorkItemState["WAITING"] = 3] = "WAITING";
1393
+ /**
1394
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_BLOCKED = 4;
1395
+ */
1396
+ AgentWorkItemState[AgentWorkItemState["BLOCKED"] = 4] = "BLOCKED";
1397
+ /**
1398
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_SUCCEEDED = 5;
1399
+ */
1400
+ AgentWorkItemState[AgentWorkItemState["SUCCEEDED"] = 5] = "SUCCEEDED";
1401
+ /**
1402
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_FAILED = 6;
1403
+ */
1404
+ AgentWorkItemState[AgentWorkItemState["FAILED"] = 6] = "FAILED";
1405
+ /**
1406
+ * @generated from enum value: AGENT_WORK_ITEM_STATE_CANCELLED = 7;
1407
+ */
1408
+ AgentWorkItemState[AgentWorkItemState["CANCELLED"] = 7] = "CANCELLED";
1409
+ })(AgentWorkItemState || (AgentWorkItemState = {}));
1410
+ /**
1411
+ * Describes the enum agentruntime.v1.AgentWorkItemState.
1412
+ */
1413
+ export const AgentWorkItemStateSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 10);
1414
+ /**
1415
+ * AutonomySessionState is the coarse lifecycle for the long-lived teammate
1416
+ * session attached to a work envelope.
1417
+ *
1418
+ * @generated from enum agentruntime.v1.AutonomySessionState
1419
+ */
1420
+ export var AutonomySessionState;
1421
+ (function (AutonomySessionState) {
1422
+ /**
1423
+ * @generated from enum value: AUTONOMY_SESSION_STATE_UNSPECIFIED = 0;
1424
+ */
1425
+ AutonomySessionState[AutonomySessionState["UNSPECIFIED"] = 0] = "UNSPECIFIED";
1426
+ /**
1427
+ * @generated from enum value: AUTONOMY_SESSION_STATE_ACTIVE = 1;
1428
+ */
1429
+ AutonomySessionState[AutonomySessionState["ACTIVE"] = 1] = "ACTIVE";
1430
+ /**
1431
+ * @generated from enum value: AUTONOMY_SESSION_STATE_IDLE = 2;
1432
+ */
1433
+ AutonomySessionState[AutonomySessionState["IDLE"] = 2] = "IDLE";
1434
+ /**
1435
+ * @generated from enum value: AUTONOMY_SESSION_STATE_WAITING = 3;
1436
+ */
1437
+ AutonomySessionState[AutonomySessionState["WAITING"] = 3] = "WAITING";
1438
+ /**
1439
+ * @generated from enum value: AUTONOMY_SESSION_STATE_FAILED = 4;
1440
+ */
1441
+ AutonomySessionState[AutonomySessionState["FAILED"] = 4] = "FAILED";
1442
+ /**
1443
+ * @generated from enum value: AUTONOMY_SESSION_STATE_CANCELLED = 5;
1444
+ */
1445
+ AutonomySessionState[AutonomySessionState["CANCELLED"] = 5] = "CANCELLED";
1446
+ })(AutonomySessionState || (AutonomySessionState = {}));
1447
+ /**
1448
+ * Describes the enum agentruntime.v1.AutonomySessionState.
1449
+ */
1450
+ export const AutonomySessionStateSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 11);
1451
+ /**
1452
+ * YieldContinuation describes how Platform should continue an autonomous
1453
+ * session after the current run releases its lease.
1454
+ *
1455
+ * @generated from enum agentruntime.v1.YieldContinuation
1456
+ */
1457
+ export var YieldContinuation;
1458
+ (function (YieldContinuation) {
1459
+ /**
1460
+ * @generated from enum value: YIELD_CONTINUATION_UNSPECIFIED = 0;
1461
+ */
1462
+ YieldContinuation[YieldContinuation["UNSPECIFIED"] = 0] = "UNSPECIFIED";
1463
+ /**
1464
+ * @generated from enum value: YIELD_CONTINUATION_INLINE_NEXT_STEP = 1;
1465
+ */
1466
+ YieldContinuation[YieldContinuation["INLINE_NEXT_STEP"] = 1] = "INLINE_NEXT_STEP";
1467
+ /**
1468
+ * @generated from enum value: YIELD_CONTINUATION_SCHEDULED = 2;
1469
+ */
1470
+ YieldContinuation[YieldContinuation["SCHEDULED"] = 2] = "SCHEDULED";
1471
+ /**
1472
+ * @generated from enum value: YIELD_CONTINUATION_WAIT = 3;
1473
+ */
1474
+ YieldContinuation[YieldContinuation["WAIT"] = 3] = "WAIT";
1475
+ /**
1476
+ * @generated from enum value: YIELD_CONTINUATION_END_SESSION = 4;
1477
+ */
1478
+ YieldContinuation[YieldContinuation["END_SESSION"] = 4] = "END_SESSION";
1479
+ })(YieldContinuation || (YieldContinuation = {}));
1480
+ /**
1481
+ * Describes the enum agentruntime.v1.YieldContinuation.
1482
+ */
1483
+ export const YieldContinuationSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 12);
1131
1484
  /**
1132
1485
  * RuntimeDependencyStatus describes the readiness of a platform boundary that
1133
1486
  * contributed context to an AgentRun.
@@ -1160,7 +1513,7 @@ export var RuntimeDependencyStatus;
1160
1513
  /**
1161
1514
  * Describes the enum agentruntime.v1.RuntimeDependencyStatus.
1162
1515
  */
1163
- export const RuntimeDependencyStatusSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 7);
1516
+ export const RuntimeDependencyStatusSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 13);
1164
1517
  /**
1165
1518
  * RuntimeWorkEnvelopeKind classifies the durable human/work object a trigger
1166
1519
  * belongs to. Envelopes group retries and follow-up messages across channels
@@ -1206,7 +1559,7 @@ export var RuntimeWorkEnvelopeKind;
1206
1559
  /**
1207
1560
  * Describes the enum agentruntime.v1.RuntimeWorkEnvelopeKind.
1208
1561
  */
1209
- export const RuntimeWorkEnvelopeKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 8);
1562
+ export const RuntimeWorkEnvelopeKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 14);
1210
1563
  /**
1211
1564
  * RuntimeChannelKind classifies the inbound or outbound channel adapter that
1212
1565
  * owns the human conversation surface for a run.
@@ -1267,7 +1620,7 @@ export var RuntimeChannelKind;
1267
1620
  /**
1268
1621
  * Describes the enum agentruntime.v1.RuntimeChannelKind.
1269
1622
  */
1270
- export const RuntimeChannelKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 9);
1623
+ export const RuntimeChannelKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 15);
1271
1624
  /**
1272
1625
  * RuntimeTriggerKind classifies the normalized source event that started or
1273
1626
  * resumed a run. The legacy string source_event_type remains for compatibility
@@ -1365,7 +1718,7 @@ export var RuntimeTriggerKind;
1365
1718
  /**
1366
1719
  * Describes the enum agentruntime.v1.RuntimeTriggerKind.
1367
1720
  */
1368
- export const RuntimeTriggerKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 10);
1721
+ export const RuntimeTriggerKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 16);
1369
1722
  /**
1370
1723
  * RuntimeVisibilityLevel declares whether runtime state can be projected to
1371
1724
  * humans or should remain internal/audit-only. Unspecified values are treated
@@ -1403,7 +1756,7 @@ export var RuntimeVisibilityLevel;
1403
1756
  /**
1404
1757
  * Describes the enum agentruntime.v1.RuntimeVisibilityLevel.
1405
1758
  */
1406
- export const RuntimeVisibilityLevelSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 11);
1759
+ export const RuntimeVisibilityLevelSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 17);
1407
1760
  /**
1408
1761
  * RuntimeAudience identifies the audience allowed to see a runtime event or
1409
1762
  * wait projection. Audience is separate from visibility so clients can render a
@@ -1445,7 +1798,7 @@ export var RuntimeAudience;
1445
1798
  /**
1446
1799
  * Describes the enum agentruntime.v1.RuntimeAudience.
1447
1800
  */
1448
- export const RuntimeAudienceSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 12);
1801
+ export const RuntimeAudienceSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 18);
1449
1802
  /**
1450
1803
  * ChannelActionKind classifies the user or integration action submitted from a
1451
1804
  * durable channel surface.
@@ -1498,7 +1851,7 @@ export var ChannelActionKind;
1498
1851
  /**
1499
1852
  * Describes the enum agentruntime.v1.ChannelActionKind.
1500
1853
  */
1501
- export const ChannelActionKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 13);
1854
+ export const ChannelActionKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 19);
1502
1855
  /**
1503
1856
  * ChannelActionTargetKind identifies the platform object controlled by a
1504
1857
  * channel action.
@@ -1571,7 +1924,7 @@ export var ChannelActionTargetKind;
1571
1924
  /**
1572
1925
  * Describes the enum agentruntime.v1.ChannelActionTargetKind.
1573
1926
  */
1574
- export const ChannelActionTargetKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 14);
1927
+ export const ChannelActionTargetKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 20);
1575
1928
  /**
1576
1929
  * ChannelActionAuthorizationOutcome records the actor-resolution and policy
1577
1930
  * decision for a channel action.
@@ -1612,7 +1965,7 @@ export var ChannelActionAuthorizationOutcome;
1612
1965
  /**
1613
1966
  * Describes the enum agentruntime.v1.ChannelActionAuthorizationOutcome.
1614
1967
  */
1615
- export const ChannelActionAuthorizationOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 15);
1968
+ export const ChannelActionAuthorizationOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 21);
1616
1969
  /**
1617
1970
  * ChannelActionExecutionOutcome records the durable side-effect result for a
1618
1971
  * channel action.
@@ -1665,7 +2018,7 @@ export var ChannelActionExecutionOutcome;
1665
2018
  /**
1666
2019
  * Describes the enum agentruntime.v1.ChannelActionExecutionOutcome.
1667
2020
  */
1668
- export const ChannelActionExecutionOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 16);
2021
+ export const ChannelActionExecutionOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 22);
1669
2022
  /**
1670
2023
  * ChannelActionDeliveryOutcome records whether the channel message/update was
1671
2024
  * reconciled after handling an action.
@@ -1698,7 +2051,7 @@ export var ChannelActionDeliveryOutcome;
1698
2051
  /**
1699
2052
  * Describes the enum agentruntime.v1.ChannelActionDeliveryOutcome.
1700
2053
  */
1701
- export const ChannelActionDeliveryOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 17);
2054
+ export const ChannelActionDeliveryOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 23);
1702
2055
  /**
1703
2056
  * RuntimeSensitivity classifies how carefully runtime payloads must be handled
1704
2057
  * before projection outside Platform.
@@ -1731,7 +2084,7 @@ export var RuntimeSensitivity;
1731
2084
  /**
1732
2085
  * Describes the enum agentruntime.v1.RuntimeSensitivity.
1733
2086
  */
1734
- export const RuntimeSensitivitySchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 18);
2087
+ export const RuntimeSensitivitySchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 24);
1735
2088
  /**
1736
2089
  * RuntimeRedactionKind identifies data categories that were removed or must be
1737
2090
  * removed before channel/user rendering.
@@ -1768,7 +2121,7 @@ export var RuntimeRedactionKind;
1768
2121
  /**
1769
2122
  * Describes the enum agentruntime.v1.RuntimeRedactionKind.
1770
2123
  */
1771
- export const RuntimeRedactionKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 19);
2124
+ export const RuntimeRedactionKindSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 25);
1772
2125
  /**
1773
2126
  * RuntimeVirtualFileRedactionState mirrors the workspace VFS byte plane's
1774
2127
  * redaction contract so Runtime VFS callers can discover whether content is
@@ -1802,7 +2155,7 @@ export var RuntimeVirtualFileRedactionState;
1802
2155
  /**
1803
2156
  * Describes the enum agentruntime.v1.RuntimeVirtualFileRedactionState.
1804
2157
  */
1805
- export const RuntimeVirtualFileRedactionStateSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 20);
2158
+ export const RuntimeVirtualFileRedactionStateSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 26);
1806
2159
  /**
1807
2160
  * @generated from enum agentruntime.v1.RuntimeVirtualFileOperation
1808
2161
  */
@@ -1828,7 +2181,7 @@ export var RuntimeVirtualFileOperation;
1828
2181
  /**
1829
2182
  * Describes the enum agentruntime.v1.RuntimeVirtualFileOperation.
1830
2183
  */
1831
- export const RuntimeVirtualFileOperationSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 21);
2184
+ export const RuntimeVirtualFileOperationSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 27);
1832
2185
  /**
1833
2186
  * RuntimeVirtualFileReasonCode is a stable, machine-readable reason taxonomy
1834
2187
  * for VFS skips and precondition failures. Human strings may evolve; clients
@@ -1878,7 +2231,7 @@ export var RuntimeVirtualFileReasonCode;
1878
2231
  /**
1879
2232
  * Describes the enum agentruntime.v1.RuntimeVirtualFileReasonCode.
1880
2233
  */
1881
- export const RuntimeVirtualFileReasonCodeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 22);
2234
+ export const RuntimeVirtualFileReasonCodeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 28);
1882
2235
  /**
1883
2236
  * @generated from enum agentruntime.v1.RuntimeVirtualFileTransactionApplyStatus
1884
2237
  */
@@ -1912,7 +2265,7 @@ export var RuntimeVirtualFileTransactionApplyStatus;
1912
2265
  /**
1913
2266
  * Describes the enum agentruntime.v1.RuntimeVirtualFileTransactionApplyStatus.
1914
2267
  */
1915
- export const RuntimeVirtualFileTransactionApplyStatusSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 23);
2268
+ export const RuntimeVirtualFileTransactionApplyStatusSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 29);
1916
2269
  /**
1917
2270
  * @generated from enum agentruntime.v1.RuntimeVirtualFileTransactionOutcome
1918
2271
  */
@@ -1946,7 +2299,7 @@ export var RuntimeVirtualFileTransactionOutcome;
1946
2299
  /**
1947
2300
  * Describes the enum agentruntime.v1.RuntimeVirtualFileTransactionOutcome.
1948
2301
  */
1949
- export const RuntimeVirtualFileTransactionOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 24);
2302
+ export const RuntimeVirtualFileTransactionOutcomeSchema = /*@__PURE__*/ enumDesc(file_agentruntime_v1_runtime, 30);
1950
2303
  /**
1951
2304
  * AgentRuntimeService accepts normalized triggers and manages durable
1952
2305
  * AgentRun execution attempts. Workers claim runs by lease, checkpoint their