@evalops/sdk-ts 0.1.101 → 0.1.102
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.
- package/dist/agentruntime/v1/runtime_pb.d.ts +1927 -195
- package/dist/agentruntime/v1/runtime_pb.js +421 -93
- package/dist/evalcontrol/v1/evalcontrol_pb.d.ts +949 -0
- package/dist/evalcontrol/v1/evalcontrol_pb.js +326 -0
- package/dist/fermata/v1/fermata_pb.d.ts +764 -1
- package/dist/fermata/v1/fermata_pb.js +388 -275
- package/dist/fermata/v1/worker_pb.d.ts +49 -1
- package/dist/fermata/v1/worker_pb.js +35 -2
- package/dist/vfs/v1/filesystem_pb.d.ts +9 -1
- package/dist/vfs/v1/filesystem_pb.js +5 -1
- package/package.json +5 -1
|
@@ -11,1382 +11,1457 @@ import { file_traces_v1_traces } from "../../traces/v1/traces_pb.js";
|
|
|
11
11
|
/**
|
|
12
12
|
* Describes the file fermata/v1/fermata.proto.
|
|
13
13
|
*/
|
|
14
|
-
export const file_fermata_v1_fermata = /*@__PURE__*/ fileDesc("ChhmZXJtYXRhL3YxL2Zlcm1hdGEucHJvdG8SCmZlcm1hdGEudjEi0wMKEkxMTVJ1YnJpY0Fzc2VydGlvbhIZCghqdWRnZV9pZBgBIAEoCUIHukgEcgIQARIZChF2ZXJpZmllcl9qdWRnZV9pZBgCIAEoCRIXCgZydWJyaWMYAyABKAlCB7pIBHICEAESLwoJbWluX3Njb3JlGAQgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgAiAEBEhkKBnJlcGVhdBgFIAEoBUIJukgGGgQYBSgAEhkKBnF1b3J1bRgGIAEoBUIJukgGGgQYBSgAEh8KF3JlY29yZF9qdWRnZV92YWxpZGF0aW9uGAcgASgIEiAKGHJlcXVpcmVfY2FsaWJyYXRlZF9qdWRnZRgIIAEoCBJDCh1taW5fanVkZ2VfdmFsaWRhdGlvbl9hY2N1cmFjeRgJIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABIAYgBARIwChptaW5fanVkZ2VfdmFsaWRhdGlvbl9jb3VudBgKIAEoBUIHukgEGgIoAEgCiAEBQgwKCl9taW5fc2NvcmVCIAoeX21pbl9qdWRnZV92YWxpZGF0aW9uX2FjY3VyYWN5Qh0KG19taW5fanVkZ2VfdmFsaWRhdGlvbl9jb3VudCKrAgoJVGVzdFN1aXRlEgoKAmlkGAEgASgJEhcKD29yZ2FuaXphdGlvbl9pZBgCIAEoCRIdCgx3b3Jrc3BhY2VfaWQYAyABKAlCB7pIBHICEAESFQoEbmFtZRgEIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgFIAEoCRIjCgVjYXNlcxgGIAMoCzIULmZlcm1hdGEudjEuVGVzdENhc2USKQoIbWV0YWRhdGEYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIqsBCghUZXN0Q2FzZRIKCgJpZBgBIAEoCRIVCgRuYW1lGAIgASgJQge6SARyAhABEg0KBWlucHV0GAMgASgJEhcKD2V4cGVjdGVkX291dHB1dBgEIAEoCRIpCgphc3NlcnRpb25zGAUgAygLMhUuZmVybWF0YS52MS5Bc3NlcnRpb24SKQoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IuABCglBc3NlcnRpb24SCgoCaWQYASABKAkSMQoEa2luZBgCIAEoDjIZLmZlcm1hdGEudjEuQXNzZXJ0aW9uS2luZEIIukgFggECEAESDgoGdGFyZ2V0GAMgASgJEhAKCGV4cGVjdGVkGAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIyCgpsbG1fcnVicmljGAcgASgLMh4uZmVybWF0YS52MS5MTE1SdWJyaWNBc3NlcnRpb24igwIKF1ByZXZpZXdBc3NlcnRpb25SZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFQoNZXZhbHVhdGlvbl9pZBgDIAEoCRIwCglhc3NlcnRpb24YBCABKAsyFS5mZXJtYXRhLnYxLkFzc2VydGlvbkIGukgDyAEBEg0KBWlucHV0GAUgASgJEhcKD2V4cGVjdGVkX291dHB1dBgGIAEoCRIVCg1hY3R1YWxfb3V0cHV0GAcgASgJEigKB2NvbnRleHQYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ik8KGFByZXZpZXdBc3NlcnRpb25SZXNwb25zZRIzCgZyZXN1bHQYASABKAsyIy5mZXJtYXRhLnYxLlNjZW5hcmlvQXNzZXJ0aW9uUmVzdWx0IqsBCiNQcmV2aWV3U2NlbmFyaW9SdW5Bc3NlcnRpb25zUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhcKBnJ1bl9pZBgDIAEoCUIHukgEcgIQARIzCgphc3NlcnRpb25zGAQgAygLMhUuZmVybWF0YS52MS5Bc3NlcnRpb25CCLpIBZIBAggBIrsCCiRQcmV2aWV3U2NlbmFyaW9SdW5Bc3NlcnRpb25zUmVzcG9uc2USFwoPc2NlbmFyaW9fcnVuX2lkGAEgASgJEhMKC3NjZW5hcmlvX2lkGAIgASgJEjQKB3Jlc3VsdHMYAyADKAsyIy5mZXJtYXRhLnYxLlNjZW5hcmlvQXNzZXJ0aW9uUmVzdWx0EiEKEHRvdGFsX2Fzc2VydGlvbnMYBCABKAVCB7pIBBoCKAASIgoRcGFzc2VkX2Fzc2VydGlvbnMYBSABKAVCB7pIBBoCKAASIgoRZmFpbGVkX2Fzc2VydGlvbnMYBiABKAVCB7pIBBoCKAASDgoGcGFzc2VkGAcgASgIEh0KBXNjb3JlGAggASgBQg66SAsSCSkAAAAAAAAAABIVCg1hY3R1YWxfb3V0cHV0GAkgASgJItABCg9DdXN0b21FdmFsdWF0b3ISFQoEbmFtZRgBIAEoCUIHukgEcgIQARIXCgZzb3VyY2UYAiABKAlCB7pIBHICEAESLgoKY3JlYXRlZF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoPb3JnYW5pemF0aW9uX2lkGAUgASgJEhQKDHdvcmtzcGFjZV9pZBgGIAEoCSKjAwoFSnVkZ2USFQoEbmFtZRgBIAEoCUIHukgEcgIQARItCgRraW5kGAIgASgOMhUuZmVybWF0YS52MS5KdWRnZUtpbmRCCLpIBYIBAhABEg4KBnByb21wdBgDIAEoCRINCgVtb2RlbBgEIAEoCRIsCgt0ZW1wZXJhdHVyZRgFIAEoAUIXukgUEhIZAAAAAAAAAEApAAAAAAAAAAASGwoKbWF4X3Rva2VucxgGIAEoBUIHukgEGgIoABIQCghjcml0ZXJpYRgHIAMoCRIeCgZ3ZWlnaHQYCCABKAFCDrpICxIJKQAAAAAAAAAAEikKCG1ldGFkYXRhGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9vcmdhbml6YXRpb25faWQYDCABKAkSFAoMd29ya3NwYWNlX2lkGA0gASgJIroGCghTY2VuYXJpbxIKCgJpZBgBIAEoCRIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAMgASgJQge6SARyAhABEhUKBG5hbWUYBCABKAlCB7pIBHICEAESEwoLZGVzY3JpcHRpb24YBSABKAkSKAoJb2JqZWN0aXZlGAYgASgLMhUuZmVybWF0YS52MS5PYmplY3RpdmUSLQoMYWdlbnRfY29uZmlnGAcgASgLMhcuZmVybWF0YS52MS5BZ2VudENvbmZpZxI0CgtlbnZpcm9ubWVudBgIIAEoCzIfLmZlcm1hdGEudjEuU2NlbmFyaW9FbnZpcm9ubWVudBIxCg51c2VyX3NpbXVsYXRvchgJIAEoCzIZLmZlcm1hdGEudjEuVXNlclNpbXVsYXRvchIiCghtYXhfY29zdBgKIAEoCzIQLmNvbW1vbi52MS5Nb25leRIvCgxtYXhfZHVyYXRpb24YCyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SGgoJbWF4X3N0ZXBzGAwgASgFQge6SAQaAigAEiYKFW1heF9hcHByb3ZhbF9yZXF1ZXN0cxgNIAEoBUIHukgEGgIoABI2ChBvdXRjb21lX2NyaXRlcmlhGA4gAygLMhwuZmVybWF0YS52MS5PdXRjb21lQ3JpdGVyaW9uEj4KFWdvdmVybmFuY2VfYXNzZXJ0aW9ucxgPIAMoCzIfLmZlcm1hdGEudjEuR292ZXJuYW5jZUFzc2VydGlvbhI+ChVkZWxlZ2F0aW9uX2Fzc2VydGlvbnMYECADKAsyHy5mZXJtYXRhLnYxLkRlbGVnYXRpb25Bc3NlcnRpb24SFwoGZXBvY2hzGBEgASgFQge6SAQaAigAEikKCG1ldGFkYXRhGBIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GBMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLvAQoJT2JqZWN0aXZlEhwKC2Rlc2NyaXB0aW9uGAEgASgJQge6SARyAhABEjYKEHN1Y2Nlc3NfY3JpdGVyaWEYAiADKAsyHC5mZXJtYXRhLnYxLlN1Y2Nlc3NDcml0ZXJpb24SQAoOZXhwZWN0ZWRfc3RhdGUYAyADKAsyKC5mZXJtYXRhLnYxLk9iamVjdGl2ZS5FeHBlY3RlZFN0YXRlRW50cnkSFAoMb2JqZWN0aXZlX2lkGAQgASgJGjQKEkV4cGVjdGVkU3RhdGVFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIq8BChBTdWNjZXNzQ3JpdGVyaW9uEgoKAmlkGAEgASgJEhwKC2Rlc2NyaXB0aW9uGAIgASgJQge6SARyAhABEg4KBm1ldHJpYxgDIAEoCRIWCg5leHBlY3RlZF92YWx1ZRgEIAEoCRIeCgZ3ZWlnaHQYBSABKAFCDrpICxIJKQAAAAAAAAAAEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCKlAQoLQWdlbnRDb25maWcSEAoIYWdlbnRfaWQYASABKAkSDQoFbW9kZWwYAiABKAkSEQoJdG9vbF9yZWZzGAMgAygJEhkKEXBlcm1pc3Npb25fc2NvcGVzGAQgAygJEhwKFGdvdmVybmFuY2VfcG9saWN5X2lkGAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCL3AQoTU2NlbmFyaW9FbnZpcm9ubWVudBI7CgRraW5kGAEgASgOMiMuZmVybWF0YS52MS5TY2VuYXJpb0Vudmlyb25tZW50S2luZEIIukgFggECEAESIwoFdG9vbHMYAiADKAsyFC5mZXJtYXRhLnYxLk1vY2tUb29sEisKCWVuZHBvaW50cxgDIAMoCzIYLmZlcm1hdGEudjEuTW9ja0VuZHBvaW50EhUKDXNlZWRfZGF0YV9yZWYYBCABKAkSDwoHc2FuZGJveBgFIAEoCRIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiuwEKCE1vY2tUb29sEhUKBG5hbWUYASABKAlCB7pIBHICEAESEwoLZGVzY3JpcHRpb24YAiABKAkSLQoMaW5wdXRfc2NoZW1hGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghyZXNwb25zZRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIbWV0YWRhdGEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IqkBCgxNb2NrRW5kcG9pbnQSDgoGbWV0aG9kGAEgASgJEhUKBHBhdGgYAiABKAlCB7pIBHICEAESHAoLc3RhdHVzX2NvZGUYAyABKAVCB7pIBBoCKAASKQoIcmVzcG9uc2UYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EikKCG1ldGFkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCKHAgoNVXNlclNpbXVsYXRvchIPCgdwZXJzb25hGAEgASgJEhQKDGluc3RydWN0aW9ucxgCIAEoCRI9CghzdHJhdGVneRgDIAEoDjIhLmZlcm1hdGEudjEuVXNlclNpbXVsYXRvclN0cmF0ZWd5Qgi6SAWCAQIQARINCgVtb2RlbBgEIAEoCRIaCgltYXhfdHVybnMYBSABKAVCB7pIBBoCKAASGwoTdmVyaWZ5X2FnZW50X2NsYWltcxgGIAEoCBIdChVyZXF1ZXN0X2NsYXJpZmljYXRpb24YByABKAgSKQoIbWV0YWRhdGEYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IsUBChBPdXRjb21lQ3JpdGVyaW9uEgoKAmlkGAEgASgJEjgKBGtpbmQYAiABKA4yIC5mZXJtYXRhLnYxLk91dGNvbWVDcml0ZXJpb25LaW5kQgi6SAWCAQIQARIOCgZ0YXJnZXQYAyABKAkSEAoIZXhwZWN0ZWQYBCABKAkSHgoGd2VpZ2h0GAUgASgBQg66SAsSCSkAAAAAAAAAABIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi3AIKE0dvdmVybmFuY2VBc3NlcnRpb24SCgoCaWQYASABKAkSOwoEdHlwZRgCIAEoDjIjLmZlcm1hdGEudjEuR292ZXJuYW5jZUFzc2VydGlvblR5cGVCCLpIBYIBAhABEjsKE2V4cGVjdGVkX3Jpc2tfbGV2ZWwYAyABKA4yFC5jb21tb24udjEuUmlza0xldmVsQgi6SAWCAQIQARIXCg9zaG91bGRfZXNjYWxhdGUYBCABKAgSIQoZZXhwZWN0ZWRfYXBwcm92YWxfb3V0Y29tZRgFIAEoCRIbChNhbGxvd2VkX2RhdGFfc2NvcGVzGAYgAygJEhoKEmRlbmllZF9kYXRhX3Njb3BlcxgHIAMoCRIfChdleHBlY3RlZF9waWlfY2F0ZWdvcmllcxgIIAMoCRIpCghtZXRhZGF0YRgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi6gEKE0RlbGVnYXRpb25Bc3NlcnRpb24SCgoCaWQYASABKAkSOwoEdHlwZRgCIAEoDjIjLmZlcm1hdGEudjEuRGVsZWdhdGlvbkFzc2VydGlvblR5cGVCCLpIBYIBAhABEhkKEWV4cGVjdGVkX2FnZW50X2lkGAMgASgJEiAKD21heF9jaGFpbl9kZXB0aBgEIAEoBUIHukgEGgIoABIiCghtYXhfY29zdBgFIAEoCzIQLmNvbW1vbi52MS5Nb25leRIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiiAQKC1NjZW5hcmlvUnVuEgoKAmlkGAEgASgJEhwKC3NjZW5hcmlvX2lkGAIgASgJQge6SARyAhABEiAKD29yZ2FuaXphdGlvbl9pZBgDIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYBCABKAlCB7pIBHICEAESFgoFZXBvY2gYBSABKAVCB7pIBBoCKAASNwoGc3RhdHVzGAYgASgOMh0uZmVybWF0YS52MS5TY2VuYXJpb1J1blN0YXR1c0IIukgFggECEAESKgoGcmVzdWx0GAcgASgLMhouZmVybWF0YS52MS5TY2VuYXJpb1Jlc3VsdBIQCgh0cmFjZV9pZBgIIAEoCRIpCghtZXRhZGF0YRgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoKc3RhcnRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMY29tcGxldGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBISCgpsaW5lYWdlX2lkGA4gASgJIrEGCg5TY2VuYXJpb1Jlc3VsdBIaChJvYmplY3RpdmVfYWNoaWV2ZWQYASABKAgSGQoRb2JqZWN0aXZlX3N1bW1hcnkYAiABKAkSHAoLdG90YWxfc3RlcHMYAyABKAVCB7pIBBoCKAASHAoLbW9kZWxfY2FsbHMYBCABKAVCB7pIBBoCKAASGwoKdG9vbF9jYWxscxgFIAEoBUIHukgEGgIoABIiChFhcHByb3ZhbF9yZXF1ZXN0cxgGIAEoBUIHukgEGgIoABIiChFkZWxlZ2F0aW9uX2V2ZW50cxgHIAEoBUIHukgEGgIoABIgCg9yZWNvdmVyeV9ldmVudHMYCCABKAVCB7pIBBoCKAASPgoRYXNzZXJ0aW9uX3Jlc3VsdHMYCSADKAsyIy5mZXJtYXRhLnYxLlNjZW5hcmlvQXNzZXJ0aW9uUmVzdWx0Ei8KCmdvdmVybmFuY2UYCiABKAsyGy5mZXJtYXRhLnYxLkdvdmVybmFuY2VTY29yZRIsCgllY29ub21pY3MYCyABKAsyGS5mZXJtYXRhLnYxLkVjb25vbWljU2NvcmUSIQoJcGFzc19hdF9rGAwgASgBQg66SAsSCSkAAAAAAAAAABIvCgpkZWxlZ2F0aW9uGA0gASgLMhsuZmVybWF0YS52MS5EZWxlZ2F0aW9uU2NvcmUSJAoKdG90YWxfY29zdBgOIAEoCzIQLmNvbW1vbi52MS5Nb25leRIxCg50b3RhbF9kdXJhdGlvbhgPIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIpCghtZXRhZGF0YRgQIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSIwoKdHJhamVjdG9yeRgRIAMoCzIPLnRyYWNlcy52MS5TcGFuEiUKDXRyYWplY3RvcnlfZjEYEiABKAFCDrpICxIJKQAAAAAAAAAAEjYKHnRyYWplY3RvcnlfZWRpdF9kaXN0YW5jZV9zY29yZRgTIAEoAUIOukgLEgkpAAAAAAAAAAASKgoFZHJpZnQYFCABKAsyGy5mZXJtYXRhLnYxLkRyaWZ0Q29tcGFyaXNvbiKaAQoXU2NlbmFyaW9Bc3NlcnRpb25SZXN1bHQSFAoMYXNzZXJ0aW9uX2lkGAEgASgJEg4KBnBhc3NlZBgCIAEoCBINCgVzY29yZRgDIAEoARIOCgZhY3R1YWwYBCABKAkSDwoHbWVzc2FnZRgFIAEoCRIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QijwIKD0dvdmVybmFuY2VTY29yZRIsChRlc2NhbGF0aW9uX3ByZWNpc2lvbhgBIAEoAUIOukgLEgkpAAAAAAAAAAASKQoRZXNjYWxhdGlvbl9yZWNhbGwYAiABKAFCDrpICxIJKQAAAAAAAAAAEikKEXBvbGljeV9jb21wbGlhbmNlGAMgASgBQg66SAsSCSkAAAAAAAAAABIrChNhcHByb3ZhbF9lZmZpY2llbmN5GAQgASgBQg66SAsSCSkAAAAAAAAAABIhCgljb21wb3NpdGUYBSABKAFCDrpICxIJKQAAAAAAAAAAEigKCGV2aWRlbmNlGAYgAygLMhYuY29tbW9uLnYxLkV2aWRlbmNlUmVmIoACCg1FY29ub21pY1Njb3JlEjIKGGNvc3RfcGVyX3N1Y2Nlc3NmdWxfdGFzaxgBIAEoCzIQLmNvbW1vbi52MS5Nb25leRIiCghsbG1fY29zdBgCIAEoCzIQLmNvbW1vbi52MS5Nb25leRIjCgl0b29sX2Nvc3QYAyABKAsyEC5jb21tb24udjEuTW9uZXkSKgoQc3VwZXJ2aXNpb25fY29zdBgEIAEoCzIQLmNvbW1vbi52MS5Nb25leRIaChJvbl9wYXJldG9fZnJvbnRpZXIYBSABKAgSKgoScXVhbGl0eV9wZXJfZG9sbGFyGAYgASgBQg66SAsSCSkAAAAAAAAAACLKAQoPRGVsZWdhdGlvblNjb3JlEisKE2RlbGVnYXRpb25fYWNjdXJhY3kYASABKAFCDrpICxIJKQAAAAAAAAAAEigKEGNvbnRleHRfZmlkZWxpdHkYAiABKAFCDrpICxIJKQAAAAAAAAAAEhcKD2VmZmljaWVuY3lfZ2FpbhgDIAEoARIpChFmYWlsdXJlX2lzb2xhdGlvbhgEIAEoAUIOukgLEgkpAAAAAAAAAAASHAoLY2hhaW5fZGVwdGgYBSABKAVCB7pIBBoCKAAi3gMKD0RyaWZ0Q29tcGFyaXNvbhIQCghkZXRlY3RlZBgBIAEoCBIuChZiYXNlbGluZV9xdWFsaXR5X3Njb3JlGAIgASgBQg66SAsSCSkAAAAAAAAAABItChVjdXJyZW50X3F1YWxpdHlfc2NvcmUYAyABKAFCDrpICxIJKQAAAAAAAAAAEhUKDXF1YWxpdHlfZGVsdGEYBCABKAESJwoNYmFzZWxpbmVfY29zdBgFIAEoCzIQLmNvbW1vbi52MS5Nb25leRImCgxjdXJyZW50X2Nvc3QYBiABKAsyEC5jb21tb24udjEuTW9uZXkSJAoKY29zdF9kZWx0YRgHIAEoCzIQLmNvbW1vbi52MS5Nb25leRIwChhiYXNlbGluZV9lc2NhbGF0aW9uX3JhdGUYCCABKAFCDrpICxIJKQAAAAAAAAAAEi8KF2N1cnJlbnRfZXNjYWxhdGlvbl9yYXRlGAkgASgBQg66SAsSCSkAAAAAAAAAABIdChVlc2NhbGF0aW9uX3JhdGVfZGVsdGEYCiABKAESIAoYZ2VuZXJhdGVkX3N1aXRlX3N0cmF0ZWd5GAsgASgJEigKCGV2aWRlbmNlGAwgAygLMhYuY29tbW9uLnYxLkV2aWRlbmNlUmVmItUBChZDcmVhdGVUZXN0U3VpdGVSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESFQoEbmFtZRgDIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgEIAEoCRIjCgVjYXNlcxgFIAMoCzIULmZlcm1hdGEudjEuVGVzdENhc2USKQoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ij8KF0NyZWF0ZVRlc3RTdWl0ZVJlc3BvbnNlEiQKBXN1aXRlGAEgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUiXwoTR2V0VGVzdFN1aXRlUmVxdWVzdBIZCghzdWl0ZV9pZBgBIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJIjwKFEdldFRlc3RTdWl0ZVJlc3BvbnNlEiQKBXN1aXRlGAEgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUigAEKFUxpc3RUZXN0U3VpdGVzUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhYKBWxpbWl0GAMgASgFQge6SAQaAigAEhcKBm9mZnNldBgEIAEoBUIHukgEGgIoACJRChZMaXN0VGVzdFN1aXRlc1Jlc3BvbnNlEiUKBnN1aXRlcxgBIAMoCzIVLmZlcm1hdGEudjEuVGVzdFN1aXRlEhAKCGhhc19tb3JlGAIgASgIIuMFChVDcmVhdGVTY2VuYXJpb1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIVCgRuYW1lGAMgASgJQge6SARyAhABEhMKC2Rlc2NyaXB0aW9uGAQgASgJEjAKCW9iamVjdGl2ZRgFIAEoCzIVLmZlcm1hdGEudjEuT2JqZWN0aXZlQga6SAPIAQESLQoMYWdlbnRfY29uZmlnGAYgASgLMhcuZmVybWF0YS52MS5BZ2VudENvbmZpZxI0CgtlbnZpcm9ubWVudBgHIAEoCzIfLmZlcm1hdGEudjEuU2NlbmFyaW9FbnZpcm9ubWVudBIxCg51c2VyX3NpbXVsYXRvchgIIAEoCzIZLmZlcm1hdGEudjEuVXNlclNpbXVsYXRvchIiCghtYXhfY29zdBgJIAEoCzIQLmNvbW1vbi52MS5Nb25leRIvCgxtYXhfZHVyYXRpb24YCiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SGgoJbWF4X3N0ZXBzGAsgASgFQge6SAQaAigAEiYKFW1heF9hcHByb3ZhbF9yZXF1ZXN0cxgMIAEoBUIHukgEGgIoABI2ChBvdXRjb21lX2NyaXRlcmlhGA0gAygLMhwuZmVybWF0YS52MS5PdXRjb21lQ3JpdGVyaW9uEj4KFWdvdmVybmFuY2VfYXNzZXJ0aW9ucxgOIAMoCzIfLmZlcm1hdGEudjEuR292ZXJuYW5jZUFzc2VydGlvbhI+ChVkZWxlZ2F0aW9uX2Fzc2VydGlvbnMYDyADKAsyHy5mZXJtYXRhLnYxLkRlbGVnYXRpb25Bc3NlcnRpb24SFwoGZXBvY2hzGBAgASgFQge6SAQaAigAEikKCG1ldGFkYXRhGBEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJAChZDcmVhdGVTY2VuYXJpb1Jlc3BvbnNlEiYKCHNjZW5hcmlvGAEgASgLMhQuZmVybWF0YS52MS5TY2VuYXJpbyJhChJHZXRTY2VuYXJpb1JlcXVlc3QSHAoLc2NlbmFyaW9faWQYASABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSI9ChNHZXRTY2VuYXJpb1Jlc3BvbnNlEiYKCHNjZW5hcmlvGAEgASgLMhQuZmVybWF0YS52MS5TY2VuYXJpbyJ/ChRMaXN0U2NlbmFyaW9zUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhYKBWxpbWl0GAMgASgFQge6SAQaAigAEhcKBm9mZnNldBgEIAEoBUIHukgEGgIoACJSChVMaXN0U2NlbmFyaW9zUmVzcG9uc2USJwoJc2NlbmFyaW9zGAEgAygLMhQuZmVybWF0YS52MS5TY2VuYXJpbxIQCghoYXNfbW9yZRgCIAEoCCLGBgoRQWdlbnRUYXNrRXZhbFNwZWMSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIVCgRuYW1lGAMgASgJQge6SARyAhABEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhUKBHRhc2sYBSABKAlCB7pIBHICEAESEgoKcmVwb3NpdG9yeRgGIAEoCRIOCgZicmFuY2gYByABKAkSEAoIYWdlbnRfaWQYCCABKAkSDQoFbW9kZWwYCSABKAkSFgoOcmVxdWlyZWRfdG9vbHMYCiADKAkSFwoPZm9yYmlkZGVuX3Rvb2xzGAsgAygJEhkKEXJlcXVpcmVkX2NvbW1hbmRzGAwgAygJEhoKEmZvcmJpZGRlbl9jb21tYW5kcxgNIAMoCRIaChJyZXF1aXJlZF9hcnRpZmFjdHMYDiADKAkSGQoRcmVxdWlyZWRfZXZpZGVuY2UYDyADKAkSGQoRcGVybWlzc2lvbl9zY29wZXMYECADKAkSKQoRcXVhbGl0eV90aHJlc2hvbGQYESABKAFCDrpICxIJKQAAAAAAAAAAEhoKCW1heF9zdGVwcxgSIAEoBUIHukgEGgIoABImChVtYXhfYXBwcm92YWxfcmVxdWVzdHMYEyABKAVCB7pIBBoCKAASKwoabWF4X2RlbGVnYXRpb25fY2hhaW5fZGVwdGgYFCABKAVCB7pIBBoCKAASJAoMbWF4X2Nvc3RfdXNkGBUgASgBQg66SAsSCSkAAAAAAAAAABIlChRtYXhfZHVyYXRpb25fc2Vjb25kcxgWIAEoA0IHukgEIgIoABIXCgZlcG9jaHMYFyABKAVCB7pIBBoCKAASGQoRcmVxdWlyZXNfYXBwcm92YWwYGCABKAgSOwoTZXhwZWN0ZWRfcmlza19sZXZlbBgZIAEoDjIULmNvbW1vbi52MS5SaXNrTGV2ZWxCCLpIBYIBAhABEikKCGZpeHR1cmVzGBogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghtZXRhZGF0YRgbIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiUQoaQ3JlYXRlQWdlbnRUYXNrRXZhbFJlcXVlc3QSMwoEZXZhbBgBIAEoCzIdLmZlcm1hdGEudjEuQWdlbnRUYXNrRXZhbFNwZWNCBrpIA8gBASJFChtDcmVhdGVBZ2VudFRhc2tFdmFsUmVzcG9uc2USJgoIc2NlbmFyaW8YASABKAsyFC5mZXJtYXRhLnYxLlNjZW5hcmlvIukBChdSdW5BZ2VudFRhc2tFdmFsUmVxdWVzdBIzCgRldmFsGAEgASgLMh0uZmVybWF0YS52MS5BZ2VudFRhc2tFdmFsU3BlY0IGukgDyAEBEg4KBnJ1bl9pZBgCIAEoCRIQCgh0cmFjZV9pZBgDIAEoCRIWCgVlcG9jaBgEIAEoBUIHukgEGgIoABIwCgdhY3R1YWxzGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIGukgDyAEBEi0KDHJ1bl9tZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QieAoYUnVuQWdlbnRUYXNrRXZhbFJlc3BvbnNlEiYKCHNjZW5hcmlvGAEgASgLMhQuZmVybWF0YS52MS5TY2VuYXJpbxIkCgNydW4YAiABKAsyFy5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuEg4KBnBhc3NlZBgDIAEoCCLEAQoUQWdlbnRUb29sQ2F0YWxvZ0l0ZW0SFQoEbmFtZRgBIAEoCUIHukgEcgIQARIQCghjYXRlZ29yeRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRILCgNycGMYBCABKAkSFwoPcmVxdWlyZWRfc2NvcGVzGAUgAygJEhkKEWFnZW50X2Nhbl9leGVjdXRlGAYgASgIEhkKEXJlcXVpcmVzX2FwcHJvdmFsGAcgASgIEhIKCnJpc2tfbGV2ZWwYCCABKAki/QEKF0FnZW50VG9vbENhdGFsb2dTdW1tYXJ5EhwKC3RvdGFsX3Rvb2xzGAEgASgFQge6SAQaAigAEiEKEGFnZW50X2V4ZWN1dGFibGUYAiABKAVCB7pIBBoCKAASIgoRcmVxdWlyZXNfYXBwcm92YWwYAyABKAVCB7pIBBoCKAASTgoHYnlfcmlzaxgEIAMoCzIvLmZlcm1hdGEudjEuQWdlbnRUb29sQ2F0YWxvZ1N1bW1hcnkuQnlSaXNrRW50cnlCDLpICZoBBioEGgIoABotCgtCeVJpc2tFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAU6AjgBIqkHCg1BZ2VudFdvcmtmbG93EgoKAmlkGAEgASgJEhcKD29yZ2FuaXphdGlvbl9pZBgCIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAyABKAkSFQoEbmFtZRgEIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgFIAEoCRInCgZhZ2VudHMYBiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhwKFGNvb3JkaW5hdGlvbl9wYXR0ZXJuGAcgASgJEi4KDWhhbmRvZmZfcnVsZXMYCCADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eh4KDXN5c3RlbV9wcm9tcHQYCSABKAlCB7pIBHICEAESFQoNcHJvdmlkZXJfdHlwZRgKIAEoCRIWCgVtb2RlbBgLIAEoCUIHukgEcgIQARINCgV0b29scxgMIAMoCRIxChB0b29sX2RlZmluaXRpb25zGA0gAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIaCgltYXhfc3RlcHMYDiABKAVCB7pIBBoCKAASGAoLdGVtcGVyYXR1cmUYDyABKAFIAIgBARIgCgptYXhfdG9rZW5zGBAgASgFQge6SAQaAigASAGIAQESFgoOc3RvcF9zZXF1ZW5jZXMYESADKAkSMAoPc3RvcF9jb25kaXRpb25zGBIgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIPCgd0ZWFtX2lkGBMgASgJEjEKEGlucHV0X2d1YXJkcmFpbHMYFCADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjIKEW91dHB1dF9ndWFyZHJhaWxzGBUgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCg1vdXRwdXRfY29uZmlnGBYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghtZXRhZGF0YRgXIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSIAoPdGltZW91dF9taW51dGVzGBggASgFQge6SAQaAigAEhoKEnNvdXJjZV90ZW1wbGF0ZV9pZBgZIAEoCRIXCg90ZW1wbGF0ZV9iYWNrZWQYGiABKAgSEAoIY2F0ZWdvcnkYGyABKAkSLAoFc3RlcHMYHCADKAsyHS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3dTdGVwQg4KDF90ZW1wZXJhdHVyZUINCgtfbWF4X3Rva2VucyLcAQoRQWdlbnRXb3JrZmxvd1N0ZXASCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIRCgl0b29sX25hbWUYBCABKAkSCwoDcnBjGAUgASgJEhkKEWFnZW50X2Nhbl9leGVjdXRlGAYgASgIEhkKEXJlcXVpcmVzX2FwcHJvdmFsGAcgASgIEhkKEWJsb2Nrc19vbl9mYWlsdXJlGAggASgIEicKBmlucHV0cxgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiRgoPQWdlbnRXb3JrZmxvd0lPEgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSEAoIcmVxdWlyZWQYAyABKAgipQIKFUFnZW50V29ya2Zsb3dUZW1wbGF0ZRITCgJpZBgBIAEoCUIHukgEcgIQARIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEhAKCGNhdGVnb3J5GAQgASgJEgwKBHRhZ3MYBSADKAkSKwoId29ya2Zsb3cYBiABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3cSLAoFc3RlcHMYByADKAsyHS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3dTdGVwEisKBmlucHV0cxgIIAMoCzIbLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd0lPEiwKB291dHB1dHMYCSADKAsyGy5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3dJTyKdAgoSQWdlbnRSdW50aW1lUmVjb3JkEhMKAmlkGAEgASgJQge6SARyAhABEhUKBGtpbmQYAiABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAMgASgJEhQKDHdvcmtzcGFjZV9pZBgEIAEoCRISCgpzZXNzaW9uX2lkGAUgASgJEg4KBnN0YXR1cxgGIAEoCRIoCgdwYXlsb2FkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKrAQoUQWdlbnRUaW1lbGluZVN1bW1hcnkSHAoLZXZlbnRfY291bnQYASABKAVCB7pIBBoCKAASJQoUdG9vbF9leGVjdXRpb25fY291bnQYAiABKAVCB7pIBBoCKAASJQoUdGltZWxpbmVfZW50cnlfY291bnQYAyABKAVCB7pIBBoCKAASJwoWZXJyb3JfbGlrZV9lbnRyeV9jb3VudBgEIAEoBUIHukgEGgIoACJGChVMaXN0QWdlbnRUb29sc1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCSJ/ChZMaXN0QWdlbnRUb29sc1Jlc3BvbnNlEi8KBXRvb2xzGAEgAygLMiAuZmVybWF0YS52MS5BZ2VudFRvb2xDYXRhbG9nSXRlbRI0CgdzdW1tYXJ5GAIgASgLMiMuZmVybWF0YS52MS5BZ2VudFRvb2xDYXRhbG9nU3VtbWFyeSK3AQoaQW5hbHl6ZUFnZW50QWN0aW9uc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIXCgZwcm9tcHQYAyABKAlCB7pIBHICEAESMQoQcHJvcG9zZWRfYWN0aW9ucxgEIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFQoNYWxsb3dlZF90b29scxgFIAMoCSL2AQobQW5hbHl6ZUFnZW50QWN0aW9uc1Jlc3BvbnNlEg4KBnBhc3NlZBgBIAEoCBIbCgpyaXNrX3Njb3JlGAIgASgFQge6SAQaAigAEicKBmlzc3VlcxgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSHQoMYWN0aW9uX2NvdW50GAQgASgFQge6SAQaAigAEiAKD2Jsb2NrZWRfYWN0aW9ucxgFIAEoBUIHukgEGgIoABIXCg9yZWNvbW1lbmRhdGlvbnMYBiADKAkSJwoGcmVwb3J0GAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLSAQogQnVpbGRBZ2VudFNlc3Npb25UaW1lbGluZVJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEicKBmV2ZW50cxgEIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMAoPdG9vbF9leGVjdXRpb25zGAUgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCK0AQohQnVpbGRBZ2VudFNlc3Npb25UaW1lbGluZVJlc3BvbnNlEhsKCnNlc3Npb25faWQYASABKAlCB7pIBHICEAESMQoHc3VtbWFyeRgCIAEoCzIgLmZlcm1hdGEudjEuQWdlbnRUaW1lbGluZVN1bW1hcnkSKQoIdGltZWxpbmUYAyADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhQKDG5leHRfYWN0aW9ucxgEIAMoCSJSCiFMaXN0QWdlbnRXb3JrZmxvd1RlbXBsYXRlc1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCSJaCiJMaXN0QWdlbnRXb3JrZmxvd1RlbXBsYXRlc1Jlc3BvbnNlEjQKCXRlbXBsYXRlcxgBIAMoCzIhLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd1RlbXBsYXRlItYBCiZDcmVhdGVBZ2VudFdvcmtmbG93RnJvbVRlbXBsYXRlUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhwKC3RlbXBsYXRlX2lkGAMgASgJQge6SARyAhABEgwKBG5hbWUYBCABKAkSEwoLZGVzY3JpcHRpb24YBSABKAkSKgoJb3ZlcnJpZGVzGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJWCidDcmVhdGVBZ2VudFdvcmtmbG93RnJvbVRlbXBsYXRlUmVzcG9uc2USKwoId29ya2Zsb3cYASABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3civwEKGkNyZWF0ZUFnZW50V29ya2Zsb3dSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESOQoOYWdlbnRfd29ya2Zsb3cYAyABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3dCBrpIA8gBARITCgt0ZW1wbGF0ZV9pZBgEIAEoCRIQCghjYXRlZ29yeRgFIAEoCSJKChtDcmVhdGVBZ2VudFdvcmtmbG93UmVzcG9uc2USKwoId29ya2Zsb3cYASABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3ciZgoXR2V0QWdlbnRXb3JrZmxvd1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIcCgt3b3JrZmxvd19pZBgDIAEoCUIHukgEcgIQASJHChhHZXRBZ2VudFdvcmtmbG93UmVzcG9uc2USKwoId29ya2Zsb3cYASABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3ciewoZTGlzdEFnZW50V29ya2Zsb3dzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhYKBWxpbWl0GAMgASgFQge6SAQaAigAEhcKBm9mZnNldBgEIAEoBUIHukgEGgIoACJcChpMaXN0QWdlbnRXb3JrZmxvd3NSZXNwb25zZRIsCgl3b3JrZmxvd3MYASADKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3cSEAoIaGFzX21vcmUYAiABKAgi4wEKGlVwZGF0ZUFnZW50V29ya2Zsb3dSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESHAoLd29ya2Zsb3dfaWQYAyABKAlCB7pIBHICEAESOQoOYWdlbnRfd29ya2Zsb3cYBCABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3dCBrpIA8gBARIUCgxjbGVhcl9maWVsZHMYBSADKAkSFQoNcmVwbGFjZV9zdGVwcxgGIAEoCCJKChtVcGRhdGVBZ2VudFdvcmtmbG93UmVzcG9uc2USKwoId29ya2Zsb3cYASABKAsyGS5mZXJtYXRhLnYxLkFnZW50V29ya2Zsb3ciewoaRGVsZXRlQWdlbnRXb3JrZmxvd1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIcCgt3b3JrZmxvd19pZBgDIAEoCUIHukgEcgIQASIyChtEZWxldGVBZ2VudFdvcmtmbG93UmVzcG9uc2USEwoLd29ya2Zsb3dfaWQYASABKAkivQIKF1J1bkFnZW50V29ya2Zsb3dSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSHAoLd29ya2Zsb3dfaWQYAyABKAlCB7pIBHICEAESFgoFaW5wdXQYBCABKAlCB7pIBHICEAESFQoNYWxsb3dlZF90b29scxgFIAMoCRIbChNhbGxvd19yaXNreV9hY3Rpb25zGAYgASgIEigKB2NvbnRleHQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjEKEHByb3Bvc2VkX2FjdGlvbnMYCCADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKCnNlc3Npb25faWQYCSABKAkSDwoHc3VyZmFjZRgKIAEoCSK0AgoYUnVuQWdlbnRXb3JrZmxvd1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRITCgt3b3JrZmxvd19pZBgDIAEoCRISCgpzZXNzaW9uX2lkGAQgASgJEg4KBnN0YXR1cxgFIAEoCRINCgVpbnB1dBgGIAEoCRIPCgdjb250ZW50GAcgASgJEg0KBWVycm9yGAggASgJEikKCHJlZF90ZWFtGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgVzdGVwcxgKIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFAoMbmV4dF9hY3Rpb25zGAsgAygJEiUKBGRhdGEYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0ItsBChZDcmVhdGVBZ2VudEhvb2tSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSDwoHaG9va19pZBgDIAEoCRIVCgRuYW1lGAQgASgJQge6SARyAhABEhEKCWhvb2tfdHlwZRgFIAEoCRIUCgdlbmFibGVkGAYgASgISACIAQESLAoLY29uZmlnX2pzb24YByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QgoKCF9lbmFibGVkIkcKF0NyZWF0ZUFnZW50SG9va1Jlc3BvbnNlEiwKBGhvb2sYASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCJ3ChVMaXN0QWdlbnRIb29rc1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIWCgVsaW1pdBgDIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBCABKAVCB7pIBBoCKAAiWQoWTGlzdEFnZW50SG9va3NSZXNwb25zZRItCgVob29rcxgBIAMoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkEhAKCGhhc19tb3JlGAIgASgIIvwBChZVcGRhdGVBZ2VudEhvb2tSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGAoHaG9va19pZBgDIAEoCUIHukgEcgIQARIRCgRuYW1lGAQgASgJSACIAQESFgoJaG9va190eXBlGAUgASgJSAGIAQESFAoHZW5hYmxlZBgGIAEoCEgCiAEBEiwKC2NvbmZpZ19qc29uGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIHCgVfbmFtZUIMCgpfaG9va190eXBlQgoKCF9lbmFibGVkIkcKF1VwZGF0ZUFnZW50SG9va1Jlc3BvbnNlEiwKBGhvb2sYASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCJqChZEZWxldGVBZ2VudEhvb2tSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGAoHaG9va19pZBgDIAEoCUIHukgEcgIQASIqChdEZWxldGVBZ2VudEhvb2tSZXNwb25zZRIPCgdob29rX2lkGAEgASgJImQKFkdldEFnZW50U2Vzc2lvblJlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABIkoKF0dldEFnZW50U2Vzc2lvblJlc3BvbnNlEi8KB3Nlc3Npb24YASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCKKAQoYTGlzdEFnZW50U2Vzc2lvbnNSZXF1ZXN0EhcKD29yZ2FuaXphdGlvbl9pZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSDgoGc3RhdHVzGAMgASgJEhYKBWxpbWl0GAQgASgFQge6SAQaAigAEhcKBm9mZnNldBgFIAEoBUIHukgEGgIoACJfChlMaXN0QWdlbnRTZXNzaW9uc1Jlc3BvbnNlEjAKCHNlc3Npb25zGAEgAygLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQSEAoIaGFzX21vcmUYAiABKAgi2AEKGkNvbnRyb2xBZ2VudFNlc3Npb25SZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARI/CgZhY3Rpb24YBCABKA4yJS5mZXJtYXRhLnYxLkFnZW50U2Vzc2lvbkNvbnRyb2xBY3Rpb25CCLpIBYIBAhABEg4KBnJlYXNvbhgFIAEoCRIUCgxyZXF1ZXN0ZWRfYnkYBiABKAkiTgobQ29udHJvbEFnZW50U2Vzc2lvblJlc3BvbnNlEi8KB3Nlc3Npb24YASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCLYAgoeQ3JlYXRlQWdlbnRTZXNzaW9uRXZlbnRSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARIQCghldmVudF9pZBgEIAEoCRISCgpldmVudF90eXBlGAUgASgJEg8KB3N1bW1hcnkYBiABKAkSLQoJdGltZXN0YW1wGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIoCgdwYXlsb2FkGAggASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghldmlkZW5jZRgJIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSJgoGb3V0cHV0GAogASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlIlAKH0NyZWF0ZUFnZW50U2Vzc2lvbkV2ZW50UmVzcG9uc2USLQoFZXZlbnQYASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCKsAQodTGlzdEFnZW50U2Vzc2lvbkV2ZW50c1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEg4KBnN0YXR1cxgEIAEoCRIWCgVsaW1pdBgFIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBiABKAVCB7pIBBoCKAAiYgoeTGlzdEFnZW50U2Vzc2lvbkV2ZW50c1Jlc3BvbnNlEi4KBmV2ZW50cxgBIAMoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkEhAKCGhhc19tb3JlGAIgASgIIqUDCh9DcmVhdGVBZ2VudFRvb2xFeGVjdXRpb25SZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARIZChF0b29sX2V4ZWN1dGlvbl9pZBgEIAEoCRIaCgl0b29sX25hbWUYBSABKAlCB7pIBHICEAESDgoGc3RhdHVzGAYgASgJEgsKA3JwYxgHIAEoCRIoCgdyZXF1ZXN0GAggASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgVpbnB1dBgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoKc3RhcnRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASKQoIZXZpZGVuY2UYCyADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiwKC2Fubm90YXRpb25zGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJaCiBDcmVhdGVBZ2VudFRvb2xFeGVjdXRpb25SZXNwb25zZRI2Cg50b29sX2V4ZWN1dGlvbhgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkItYDCh9VcGRhdGVBZ2VudFRvb2xFeGVjdXRpb25SZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARIiChF0b29sX2V4ZWN1dGlvbl9pZBgEIAEoCUIHukgEcgIQARITCgZzdGF0dXMYBSABKAlIAIgBARIWCglleGl0X2NvZGUYBiABKAVIAYgBARIdChBkdXJhdGlvbl9zZWNvbmRzGAcgASgBSAKIAQESJgoGb3V0cHV0GAggASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEg0KBWVycm9yGAkgASgJEikKCGV2aWRlbmNlGAogAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIsCgthbm5vdGF0aW9ucxgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMAoMY29tcGxldGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIJCgdfc3RhdHVzQgwKCl9leGl0X2NvZGVCEwoRX2R1cmF0aW9uX3NlY29uZHMiWgogVXBkYXRlQWdlbnRUb29sRXhlY3V0aW9uUmVzcG9uc2USNgoOdG9vbF9leGVjdXRpb24YASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCKtAQoeTGlzdEFnZW50VG9vbEV4ZWN1dGlvbnNSZXF1ZXN0EhcKD29yZ2FuaXphdGlvbl9pZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARIOCgZzdGF0dXMYBCABKAkSFgoFbGltaXQYBSABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAYgASgFQge6SAQaAigAImwKH0xpc3RBZ2VudFRvb2xFeGVjdXRpb25zUmVzcG9uc2USNwoPdG9vbF9leGVjdXRpb25zGAEgAygLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQSEAoIaGFzX21vcmUYAiABKAgi3gEKGkRlY2lkZUFnZW50QXBwcm92YWxSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARIcCgthcHByb3ZhbF9pZBgEIAEoCUIHukgEcgIQARI9CghkZWNpc2lvbhgFIAEoDjIhLmZlcm1hdGEudjEuQWdlbnRBcHByb3ZhbERlY2lzaW9uQgi6SAWCAQIQARIOCgZyZWFzb24YBiABKAkiTwobRGVjaWRlQWdlbnRBcHByb3ZhbFJlc3BvbnNlEjAKCGFwcHJvdmFsGAEgASgLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQiqAEKGUxpc3RBZ2VudEFwcHJvdmFsc1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEg4KBnN0YXR1cxgEIAEoCRIWCgVsaW1pdBgFIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBiABKAVCB7pIBBoCKAAiYQoaTGlzdEFnZW50QXBwcm92YWxzUmVzcG9uc2USMQoJYXBwcm92YWxzGAEgAygLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQSEAoIaGFzX21vcmUYAiABKAgihAEKHkdldEFnZW50U2Vzc2lvblRpbWVsaW5lUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhsKCnNlc3Npb25faWQYAyABKAlCB7pIBHICEAESFgoFbGltaXQYBCABKAVCB7pIBBoCKAAisgEKH0dldEFnZW50U2Vzc2lvblRpbWVsaW5lUmVzcG9uc2USGwoKc2Vzc2lvbl9pZBgBIAEoCUIHukgEcgIQARIxCgdzdW1tYXJ5GAIgASgLMiAuZmVybWF0YS52MS5BZ2VudFRpbWVsaW5lU3VtbWFyeRIpCgh0aW1lbGluZRgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFAoMbmV4dF9hY3Rpb25zGAQgAygJIn0KHFVwc2VydEN1c3RvbUV2YWx1YXRvclJlcXVlc3QSFQoEbmFtZRgBIAEoCUIHukgEcgIQARIXCgZzb3VyY2UYAiABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAMgASgJEhQKDHdvcmtzcGFjZV9pZBgEIAEoCSJPCh1VcHNlcnRDdXN0b21FdmFsdWF0b3JSZXNwb25zZRIuCglldmFsdWF0b3IYASABKAsyGy5mZXJtYXRhLnYxLkN1c3RvbUV2YWx1YXRvciJhChlHZXRDdXN0b21FdmFsdWF0b3JSZXF1ZXN0EhUKBG5hbWUYASABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSJMChpHZXRDdXN0b21FdmFsdWF0b3JSZXNwb25zZRIuCglldmFsdWF0b3IYASABKAsyGy5mZXJtYXRhLnYxLkN1c3RvbUV2YWx1YXRvciJ9ChtMaXN0Q3VzdG9tRXZhbHVhdG9yc1JlcXVlc3QSFgoFbGltaXQYASABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAIgASgFQge6SAQaAigAEhcKD29yZ2FuaXphdGlvbl9pZBgDIAEoCRIUCgx3b3Jrc3BhY2VfaWQYBCABKAkiYQocTGlzdEN1c3RvbUV2YWx1YXRvcnNSZXNwb25zZRIvCgpldmFsdWF0b3JzGAEgAygLMhsuZmVybWF0YS52MS5DdXN0b21FdmFsdWF0b3ISEAoIaGFzX21vcmUYAiABKAgiZAocRGVsZXRlQ3VzdG9tRXZhbHVhdG9yUmVxdWVzdBIVCgRuYW1lGAEgASgJQge6SARyAhABEhcKD29yZ2FuaXphdGlvbl9pZBgCIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAyABKAkiHwodRGVsZXRlQ3VzdG9tRXZhbHVhdG9yUmVzcG9uc2Ui0AIKElVwc2VydEp1ZGdlUmVxdWVzdBIVCgRuYW1lGAEgASgJQge6SARyAhABEi0KBGtpbmQYAiABKA4yFS5mZXJtYXRhLnYxLkp1ZGdlS2luZEIIukgFggECEAESDgoGcHJvbXB0GAMgASgJEg0KBW1vZGVsGAQgASgJEiwKC3RlbXBlcmF0dXJlGAUgASgBQhe6SBQSEhkAAAAAAAAAQCkAAAAAAAAAABIbCgptYXhfdG9rZW5zGAYgASgFQge6SAQaAigAEhAKCGNyaXRlcmlhGAcgAygJEh4KBndlaWdodBgIIAEoAUIOukgLEgkpAAAAAAAAAAASKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhcKD29yZ2FuaXphdGlvbl9pZBgKIAEoCRIUCgx3b3Jrc3BhY2VfaWQYCyABKAkiNwoTVXBzZXJ0SnVkZ2VSZXNwb25zZRIgCgVqdWRnZRgBIAEoCzIRLmZlcm1hdGEudjEuSnVkZ2UiVwoPR2V0SnVkZ2VSZXF1ZXN0EhUKBG5hbWUYASABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSI0ChBHZXRKdWRnZVJlc3BvbnNlEiAKBWp1ZGdlGAEgASgLMhEuZmVybWF0YS52MS5KdWRnZSJzChFMaXN0SnVkZ2VzUmVxdWVzdBIWCgVsaW1pdBgBIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYAiABKAVCB7pIBBoCKAASFwoPb3JnYW5pemF0aW9uX2lkGAMgASgJEhQKDHdvcmtzcGFjZV9pZBgEIAEoCSJJChJMaXN0SnVkZ2VzUmVzcG9uc2USIQoGanVkZ2VzGAEgAygLMhEuZmVybWF0YS52MS5KdWRnZRIQCghoYXNfbW9yZRgCIAEoCCJaChJEZWxldGVKdWRnZVJlcXVlc3QSFQoEbmFtZRgBIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJIhUKE0RlbGV0ZUp1ZGdlUmVzcG9uc2UivgIKFFN0YXJ0U2NlbmFyaW9SZXF1ZXN0EhwKC3NjZW5hcmlvX2lkGAEgASgJQge6SARyAhABEhUKDXJ1bl9pZF9wcmVmaXgYAiABKAkSEAoIdHJhY2VfaWQYAyABKAkSKAoHYWN0dWFscxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoNZXBvY2hfYWN0dWFscxgFIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhcKBmVwb2NocxgHIAEoBUIHukgEGgIoABISCgpsaW5lYWdlX2lkGAggASgJEhcKD29yZ2FuaXphdGlvbl9pZBgJIAEoCRIUCgx3b3Jrc3BhY2VfaWQYCiABKAkiYQoVU3RhcnRTY2VuYXJpb1Jlc3BvbnNlEiUKBHJ1bnMYASADKAsyFy5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuEiEKEHB1Ymxpc2hlZF9ldmVudHMYAiABKAVCB7pIBBoCKAAivQIKHUNyZWF0ZUFuZFN0YXJ0U2NlbmFyaW9SZXF1ZXN0EjsKCHNjZW5hcmlvGAEgASgLMiEuZmVybWF0YS52MS5DcmVhdGVTY2VuYXJpb1JlcXVlc3RCBrpIA8gBARIVCg1ydW5faWRfcHJlZml4GAIgASgJEhAKCHRyYWNlX2lkGAMgASgJEigKB2FjdHVhbHMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KDWVwb2NoX2FjdHVhbHMYBSADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei8KDnN0YXJ0X21ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIXCgZlcG9jaHMYByABKAVCB7pIBBoCKAASEgoKbGluZWFnZV9pZBgIIAEoCSKSAQoeQ3JlYXRlQW5kU3RhcnRTY2VuYXJpb1Jlc3BvbnNlEiYKCHNjZW5hcmlvGAEgASgLMhQuZmVybWF0YS52MS5TY2VuYXJpbxIlCgRydW5zGAIgAygLMhcuZmVybWF0YS52MS5TY2VuYXJpb1J1bhIhChBwdWJsaXNoZWRfZXZlbnRzGAMgASgFQge6SAQaAigAIrUDChhSZWNvcmRTY2VuYXJpb1J1blJlcXVlc3QSCgoCaWQYASABKAkSHAoLc2NlbmFyaW9faWQYAiABKAlCB7pIBHICEAESIAoPb3JnYW5pemF0aW9uX2lkGAMgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgEIAEoCUIHukgEcgIQARIWCgVlcG9jaBgFIAEoBUIHukgEGgIoABI3CgZzdGF0dXMYBiABKA4yHS5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuU3RhdHVzQgi6SAWCAQIQARIqCgZyZXN1bHQYByABKAsyGi5mZXJtYXRhLnYxLlNjZW5hcmlvUmVzdWx0EhAKCHRyYWNlX2lkGAggASgJEikKCG1ldGFkYXRhGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpzdGFydGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxjb21wbGV0ZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhIKCmxpbmVhZ2VfaWQYDCABKAkiQQoZUmVjb3JkU2NlbmFyaW9SdW5SZXNwb25zZRIkCgNydW4YASABKAsyFy5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuIl8KFUdldFNjZW5hcmlvUnVuUmVxdWVzdBIXCgZydW5faWQYASABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSI+ChZHZXRTY2VuYXJpb1J1blJlc3BvbnNlEiQKA3J1bhgBIAEoCzIXLmZlcm1hdGEudjEuU2NlbmFyaW9SdW4ilwEKF0xpc3RTY2VuYXJpb1J1bnNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLc2NlbmFyaW9faWQYAyABKAkSFgoFbGltaXQYBCABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAUgASgFQge6SAQaAigAIlMKGExpc3RTY2VuYXJpb1J1bnNSZXNwb25zZRIlCgRydW5zGAEgAygLMhcuZmVybWF0YS52MS5TY2VuYXJpb1J1bhIQCghoYXNfbW9yZRgCIAEoCCKZAQoqR2V0RXZhbHVhdGlvbk9ic2VydmFiaWxpdHlEYXNoYm9hcmRSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGAoEZGF5cxgDIAEoBUIKukgHGgUY7QIoABIZCgVsaW1pdBgEIAEoBUIKukgHGgUY9AMoACKVAwoeRXZhbHVhdGlvbk9ic2VydmFiaWxpdHlTdW1tYXJ5EhsKCnRvdGFsX3J1bnMYASABKAVCB7pIBBoCKAASHgoNdG90YWxfcmVzdWx0cxgCIAEoBUIHukgEGgIoABIfCg5mYWlsZWRfcmVzdWx0cxgDIAEoBUIHukgEGgIoABIlCg1hdmVyYWdlX3Njb3JlGAQgASgBQg66SAsSCSkAAAAAAAAAABIhCglwYXNzX3JhdGUYBSABKAFCDrpICxIJKQAAAAAAAAAAEiQKCnRvdGFsX2Nvc3QYBiABKAsyEC5jb21tb24udjEuTW9uZXkSKgoSYXZlcmFnZV9sYXRlbmN5X21zGAcgASgBQg66SAsSCSkAAAAAAAAAABIdCgx0b3RhbF90b2tlbnMYCCABKANCB7pIBCICKAASJwoWcmVncmVzc2lvbl9hbGVydF9jb3VudBgJIAEoBUIHukgEGgIoABIxChd0b3RhbF9jb3N0c19ieV9jdXJyZW5jeRgKIAMoCzIQLmNvbW1vbi52MS5Nb25leSKIBAoaRXZhbHVhdGlvblJlY2VudFJ1blN1bW1hcnkSIAoPc2NlbmFyaW9fcnVuX2lkGAEgASgJQge6SARyAhABEhMKC3NjZW5hcmlvX2lkGAIgASgJEh4KDXRvdGFsX3Jlc3VsdHMYAyABKAVCB7pIBBoCKAASIgoRY29tcGxldGVkX3Jlc3VsdHMYBCABKAVCB7pIBBoCKAASHwoOZmFpbGVkX3Jlc3VsdHMYBSABKAVCB7pIBBoCKAASJQoNYXZlcmFnZV9zY29yZRgGIAEoAUIOukgLEgkpAAAAAAAAAAASJAoKdG90YWxfY29zdBgHIAEoCzIQLmNvbW1vbi52MS5Nb25leRImCgxhdmVyYWdlX2Nvc3QYCCABKAsyEC5jb21tb24udjEuTW9uZXkSKgoSYXZlcmFnZV9sYXRlbmN5X21zGAkgASgBQg66SAsSCSkAAAAAAAAAABIdCgx0b3RhbF90b2tlbnMYCiABKANCB7pIBCICKAASLgoKc3RhcnRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMY29tcGxldGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIQCgh0cmFjZV9pZBgNIAEoCRIaChJvYmplY3RpdmVfYWNoaWV2ZWQYDiABKAgi0QMKGUV2YWx1YXRpb25SZWdyZXNzaW9uQWxlcnQSEwoCaWQYASABKAlCB7pIBHICEAESEwoLc2NlbmFyaW9faWQYAiABKAkSIAoPc2NlbmFyaW9fcnVuX2lkGAMgASgJQge6SARyAhABEhAKCHNldmVyaXR5GAQgASgJEg8KB21lc3NhZ2UYBSABKAkSLQoVcmVncmVzc2lvbl9wZXJjZW50YWdlGAYgASgBQg66SAsSCSkAAAAAAAAAABIgChhiYXNlbGluZV9zY2VuYXJpb19ydW5faWQYByABKAkSKgoSYXZlcmFnZV9sYXRlbmN5X21zGAggASgBQg66SAsSCSkAAAAAAAAAABIkCgp0b3RhbF9jb3N0GAkgASgLMhAuY29tbW9uLnYxLk1vbmV5EhMKC2Vudmlyb25tZW50GAogASgJEiEKGXN0YXRpc3RpY2FsbHlfc2lnbmlmaWNhbnQYCyABKAgSHwoHcF92YWx1ZRgMIAEoAUIOukgLEgkpAAAAAAAAAAASGAoQZGVncmFkZWRfbWV0cmljcxgNIAMoCRIvCgtyZWNvcmRlZF9hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi6QEKK0dldEV2YWx1YXRpb25PYnNlcnZhYmlsaXR5RGFzaGJvYXJkUmVzcG9uc2USOwoHc3VtbWFyeRgBIAEoCzIqLmZlcm1hdGEudjEuRXZhbHVhdGlvbk9ic2VydmFiaWxpdHlTdW1tYXJ5EjsKC3JlY2VudF9ydW5zGAIgAygLMiYuZmVybWF0YS52MS5FdmFsdWF0aW9uUmVjZW50UnVuU3VtbWFyeRJAChFyZWdyZXNzaW9uX2FsZXJ0cxgDIAMoCzIlLmZlcm1hdGEudjEuRXZhbHVhdGlvblJlZ3Jlc3Npb25BbGVydCJxCh5HZXRFdmFsdWF0aW9uUnVuTWV0cmljc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIXCgZydW5faWQYAyABKAlCB7pIBHICEAEivgIKG0V2YWx1YXRpb25SdW5NZXRyaWNzU3VtbWFyeRIdCgxyZXN1bHRfY291bnQYASABKAVCB7pIBBoCKAASHwoOZmFpbGVkX3Jlc3VsdHMYAiABKAVCB7pIBBoCKAASJQoNYXZlcmFnZV9zY29yZRgDIAEoAUIOukgLEgkpAAAAAAAAAAASJAoKdG90YWxfY29zdBgEIAEoCzIQLmNvbW1vbi52MS5Nb25leRImCgxhdmVyYWdlX2Nvc3QYBSABKAsyEC5jb21tb24udjEuTW9uZXkSKgoSYXZlcmFnZV9sYXRlbmN5X21zGAYgASgBQg66SAsSCSkAAAAAAAAAABIfCg5wOTVfbGF0ZW5jeV9tcxgHIAEoA0IHukgEIgIoABIdCgx0b3RhbF90b2tlbnMYCCABKANCB7pIBCICKAAi3QEKGkV2YWx1YXRpb25SdW5SZXN1bHRNZXRyaWNzEhQKDGFzc2VydGlvbl9pZBgBIAEoCRIOCgZwYXNzZWQYAiABKAgSHQoFc2NvcmUYAyABKAFCDrpICxIJKQAAAAAAAAAAEg4KBmFjdHVhbBgEIAEoCRIPCgdtZXNzYWdlGAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCK2AQofR2V0RXZhbHVhdGlvblJ1bk1ldHJpY3NSZXNwb25zZRIgCg9zY2VuYXJpb19ydW5faWQYASABKAlCB7pIBHICEAESOAoHc3VtbWFyeRgCIAEoCzInLmZlcm1hdGEudjEuRXZhbHVhdGlvblJ1bk1ldHJpY3NTdW1tYXJ5EjcKB3Jlc3VsdHMYAyADKAsyJi5mZXJtYXRhLnYxLkV2YWx1YXRpb25SdW5SZXN1bHRNZXRyaWNzIpYCCiFDcmVhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEiAKD2Jhc2VsaW5lX3J1bl9pZBgFIAEoCUIHukgEcgIQARIaChJjb21wYXJpc29uX3J1bl9pZHMYBiADKAkSGAoQY29uZmlkZW5jZV9sZXZlbBgHIAEoARIcChRzdGF0aXN0aWNhbF9hbmFseXNpcxgIIAEoCBIgChhpbmNsdWRlX2RldGFpbGVkX3Jlc3VsdHMYCSABKAgiWgoiQ3JlYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXNwb25zZRI0Cgpjb21wYXJpc29uGAEgASgLMiAuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbiJ4Ch5HZXRFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QSHgoNY29tcGFyaXNvbl9pZBgBIAEoCUIHukgEcgIQARIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAMgASgJIlcKH0dldEV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2USNAoKY29tcGFyaXNvbhgBIAEoCzIgLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb24iiwEKIExpc3RFdmFsdWF0aW9uQ29tcGFyaXNvbnNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFgoFbGltaXQYAyABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAQgASgFQge6SAQaAigAImwKIUxpc3RFdmFsdWF0aW9uQ29tcGFyaXNvbnNSZXNwb25zZRI1Cgtjb21wYXJpc29ucxgBIAMoCzIgLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb24SEAoIaGFzX21vcmUYAiABKAgiwQEKIVVwZGF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBIeCg1jb21wYXJpc29uX2lkGAEgASgJQge6SARyAhABEiAKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAyABKAkSEQoEbmFtZRgEIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAUgASgJSAGIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uIloKIlVwZGF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2USNAoKY29tcGFyaXNvbhgBIAEoCzIgLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb24iewohRGVsZXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXF1ZXN0Eh4KDWNvbXBhcmlzb25faWQYASABKAlCB7pIBHICEAESIAoPb3JnYW5pemF0aW9uX2lkGAIgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSI7CiJEZWxldGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlc3BvbnNlEhUKDWNvbXBhcmlzb25faWQYASABKAkifwolUmVnZW5lcmF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBIeCg1jb21wYXJpc29uX2lkGAEgASgJQge6SARyAhABEiAKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAyABKAkiXgomUmVnZW5lcmF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2USNAoKY29tcGFyaXNvbhgBIAEoCzIgLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb24i4wUKFEV2YWx1YXRpb25Db21wYXJpc29uEh4KDWNvbXBhcmlzb25faWQYASABKAlCB7pIBHICEAESDgoGc3RhdHVzGAIgASgJEgwKBG5hbWUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSIAoPYmFzZWxpbmVfcnVuX2lkGAUgASgJQge6SARyAhABEhoKEmNvbXBhcmlzb25fcnVuX2lkcxgGIAMoCRJHChNiYXNlbGluZV9ldmFsdWF0aW9uGAcgASgLMiouZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvblJ1blN1bW1hcnkSSgoWY29tcGFyaXNvbl9ldmFsdWF0aW9ucxgIIAMoCzIqLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb25SdW5TdW1tYXJ5EkIKEm1ldHJpY19jb21wYXJpc29ucxgJIAMoCzImLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb25NZXRyaWMSFgoOb3ZlcmFsbF93aW5uZXIYCiABKAkSRwoTc3RhdGlzdGljYWxfc3VtbWFyeRgLIAEoCzIqLmZlcm1hdGEudjEuRXZhbHVhdGlvbkNvbXBhcmlzb25TdGF0aXN0aWNzEhcKD3JlY29tbWVuZGF0aW9ucxgMIAMoCRIuCgpjcmVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBISCgpjcmVhdGVkX2J5GA4gASgJEiAKD29yZ2FuaXphdGlvbl9pZBgPIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYECABKAkSIAoYaW5jbHVkZV9kZXRhaWxlZF9yZXN1bHRzGBEgASgIEhkKEXJlcXVlc3RlZF9ydW5faWRzGBIgAygJEi4KCnVwZGF0ZWRfYXQYEyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIo8ECh5FdmFsdWF0aW9uQ29tcGFyaXNvblJ1blN1bW1hcnkSIAoPc2NlbmFyaW9fcnVuX2lkGAEgASgJQge6SARyAhABEhIKCm1vZGVsX25hbWUYAiABKAkSFwoPdGVzdF9zdWl0ZV9uYW1lGAMgASgJEhwKC3RvdGFsX3Rlc3RzGAQgASgFQge6SAQaAigAEh0KDHBhc3NlZF90ZXN0cxgFIAEoBUIHukgEGgIoABIdCgxmYWlsZWRfdGVzdHMYBiABKAVCB7pIBBoCKAASJQoNYXZlcmFnZV9zY29yZRgHIAEoAUIOukgLEgkpAAAAAAAAAAASIQoJcGFzc19yYXRlGAggASgBQg66SAsSCSkAAAAAAAAAABIkCgp0b3RhbF9jb3N0GAkgASgLMhAuY29tbW9uLnYxLk1vbmV5Eh0KDHRvdGFsX3Rva2VucxgKIAEoA0IHukgEIgIoABIuChZleGVjdXRpb25fdGltZV9zZWNvbmRzGAsgASgBQg66SAsSCSkAAAAAAAAAABIuCgpjcmVhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIaChJvYmplY3RpdmVfYWNoaWV2ZWQYDSABKAgSNwoGc3RhdHVzGA4gASgOMh0uZmVybWF0YS52MS5TY2VuYXJpb1J1blN0YXR1c0IIukgFggECEAEi0AIKGkV2YWx1YXRpb25Db21wYXJpc29uTWV0cmljEhwKC21ldHJpY19uYW1lGAEgASgJQge6SARyAhABEhYKDmJhc2VsaW5lX3ZhbHVlGAIgASgBEhgKEGNvbXBhcmlzb25fdmFsdWUYAyABKAESEgoKZGlmZmVyZW5jZRgEIAEoARIZChFwZXJjZW50YWdlX2NoYW5nZRgFIAEoARIWCg5pc19zaWduaWZpY2FudBgGIAEoCBIYChBjb25maWRlbmNlX2xldmVsGAcgASgBEiIKEWNvbXBhcmlzb25fcnVuX2lkGAggASgJQge6SARyAhABEhgKEGhpZ2hlcl9pc19iZXR0ZXIYCSABKAgSDwoHcF92YWx1ZRgKIAEoARITCgtlZmZlY3Rfc2l6ZRgLIAEoARIdChVzdGF0aXN0aWNhbF90ZXN0X3VzZWQYDCABKAki6QEKHkV2YWx1YXRpb25Db21wYXJpc29uU3RhdGlzdGljcxIgCg9iYXNlbGluZV9ydW5faWQYASABKAlCB7pIBHICEAESIwoSY29tcGFyZWRfcnVuX2NvdW50GAIgASgFQge6SAQaAigAEh0KDG1ldHJpY19jb3VudBgDIAEoBUIHukgEGgIoABIpChhzaWduaWZpY2FudF9tZXRyaWNfY291bnQYBCABKAVCB7pIBBoCKAASGAoQY29uZmlkZW5jZV9sZXZlbBgFIAEoARIcChRzdGF0aXN0aWNhbF9hbmFseXNpcxgGIAEoCCKoAQokR2V0RXZhbHVhdGlvbkdvdmVybmFuY2VSZXBvcnRSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLc2NlbmFyaW9faWQYAyABKAkSGAoEZGF5cxgEIAEoBUIKukgHGgUY7QIoABIZCgVsaW1pdBgFIAEoBUIKukgHGgUY9AMoACLRAQocR292ZXJuYW5jZUFzc2VydGlvbkFnZ3JlZ2F0ZRIdCgxhc3NlcnRpb25faWQYASABKAlCB7pIBHICEAESFgoFdG90YWwYAiABKAVCB7pIBBoCKAASFwoGcGFzc2VkGAMgASgFQge6SAQaAigAEhcKBmZhaWxlZBgEIAEoBUIHukgEGgIoABIhCglwYXNzX3JhdGUYBSABKAFCDrpICxIJKQAAAAAAAAAAEiUKDWF2ZXJhZ2Vfc2NvcmUYBiABKAFCDrpICxIJKQAAAAAAAAAAIs4EChdHb3Zlcm5hbmNlUmVwb3J0U3VtbWFyeRIbCgp0b3RhbF9ydW5zGAEgASgFQge6SAQaAigAEh4KDWdvdmVybmVkX3J1bnMYAiABKAVCB7pIBBoCKAASJwoWcGFzc2VkX2dvdmVybmFuY2VfcnVucxgDIAEoBUIHukgEGgIoABInChZmYWlsZWRfZ292ZXJuYW5jZV9ydW5zGAQgASgFQge6SAQaAigAEi8KF2F2ZXJhZ2VfY29tcG9zaXRlX3Njb3JlGAUgASgBQg66SAsSCSkAAAAAAAAAABIuChZwb2xpY3lfY29tcGxpYW5jZV9yYXRlGAYgASgBQg66SAsSCSkAAAAAAAAAABIsChRlc2NhbGF0aW9uX3ByZWNpc2lvbhgHIAEoAUIOukgLEgkpAAAAAAAAAAASKQoRZXNjYWxhdGlvbl9yZWNhbGwYCCABKAFCDrpICxIJKQAAAAAAAAAAEisKE2FwcHJvdmFsX2VmZmljaWVuY3kYCSABKAFCDrpICxIJKQAAAAAAAAAAEigKF3RvdGFsX2FwcHJvdmFsX3JlcXVlc3RzGAogASgFQge6SAQaAigAEjEKGWF2ZXJhZ2VfYXBwcm92YWxfcmVxdWVzdHMYCyABKAFCDrpICxIJKQAAAAAAAAAAEiIKEXJpc2tfc2lnbmFsX2NvdW50GAwgASgFQge6SAQaAigAEjwKCmFzc2VydGlvbnMYDSADKAsyKC5mZXJtYXRhLnYxLkdvdmVybmFuY2VBc3NlcnRpb25BZ2dyZWdhdGUi5gMKFEdvdmVybmFuY2VSdW5TdW1tYXJ5EiAKD3NjZW5hcmlvX3J1bl9pZBgBIAEoCUIHukgEcgIQARITCgtzY2VuYXJpb19pZBgCIAEoCRI3CgZzdGF0dXMYAyABKA4yHS5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuU3RhdHVzQgi6SAWCAQIQARInCg9jb21wb3NpdGVfc2NvcmUYBCABKAFCDrpICxIJKQAAAAAAAAAAEikKEXBvbGljeV9jb21wbGlhbmNlGAUgASgBQg66SAsSCSkAAAAAAAAAABIsChRlc2NhbGF0aW9uX3ByZWNpc2lvbhgGIAEoAUIOukgLEgkpAAAAAAAAAAASKQoRZXNjYWxhdGlvbl9yZWNhbGwYByABKAFCDrpICxIJKQAAAAAAAAAAEisKE2FwcHJvdmFsX2VmZmljaWVuY3kYCCABKAFCDrpICxIJKQAAAAAAAAAAEiIKEWFwcHJvdmFsX3JlcXVlc3RzGAkgASgFQge6SAQaAigAEhwKFGZhaWxlZF9hc3NlcnRpb25faWRzGAogAygJEhAKCHRyYWNlX2lkGAsgASgJEjAKDGNvbXBsZXRlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAijAIKFEdvdmVybmFuY2VSaXNrU2lnbmFsEhMKAmlkGAEgASgJQge6SARyAhABEiAKD3NjZW5hcmlvX3J1bl9pZBgCIAEoCUIHukgEcgIQARITCgtzY2VuYXJpb19pZBgDIAEoCRIQCghzZXZlcml0eRgEIAEoCRIPCgdtZXNzYWdlGAUgASgJEhgKEGRlZ3JhZGVkX21ldHJpY3MYBiADKAkSKAoIZXZpZGVuY2UYByADKAsyFi5jb21tb24udjEuRXZpZGVuY2VSZWYSEAoIdHJhY2VfaWQYCCABKAkSLwoLcmVjb3JkZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIswBCiVHZXRFdmFsdWF0aW9uR292ZXJuYW5jZVJlcG9ydFJlc3BvbnNlEjQKB3N1bW1hcnkYASABKAsyIy5mZXJtYXRhLnYxLkdvdmVybmFuY2VSZXBvcnRTdW1tYXJ5EjUKC3JlY2VudF9ydW5zGAIgAygLMiAuZmVybWF0YS52MS5Hb3Zlcm5hbmNlUnVuU3VtbWFyeRI2CgxyaXNrX3NpZ25hbHMYAyADKAsyIC5mZXJtYXRhLnYxLkdvdmVybmFuY2VSaXNrU2lnbmFsIlgKFlJlZFRlYW1DYXRhbG9nVGVtcGxhdGUSFwoGcHJvbXB0GAEgASgJQge6SARyAhABEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhAKCHNldmVyaXR5GAMgASgJIlIKGVJlZFRlYW1DYXRhbG9nVGVtcGxhdGVTZXQSNQoJdGVtcGxhdGVzGAEgAygLMiIuZmVybWF0YS52MS5SZWRUZWFtQ2F0YWxvZ1RlbXBsYXRlIokCChdCdWlsZFJlZFRlYW1QbGFuUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhwKC2NvbmZpZ195YW1sGAMgASgJQge6SARyAhABEkEKB2NhdGFsb2cYBCADKAsyMC5mZXJtYXRhLnYxLkJ1aWxkUmVkVGVhbVBsYW5SZXF1ZXN0LkNhdGFsb2dFbnRyeRpVCgxDYXRhbG9nRW50cnkSCwoDa2V5GAEgASgJEjQKBXZhbHVlGAIgASgLMiUuZmVybWF0YS52MS5SZWRUZWFtQ2F0YWxvZ1RlbXBsYXRlU2V0OgI4ASLuAQoLUmVkVGVhbVBsYW4SDgoGcGx1Z2luGAEgASgJEhAKCGNhdGVnb3J5GAIgASgJEhAKCHN0cmF0ZWd5GAMgASgJEhUKDXN0cmF0ZWd5X21vZGUYBCABKAkSDgoGcHJvbXB0GAUgASgJEhoKEnRyYW5zZm9ybWVkX3Byb21wdBgGIAEoCRITCgtkZXNjcmlwdGlvbhgHIAEoCRIQCghzZXZlcml0eRgIIAEoCRIWCg5vd2FzcF9jYXRlZ29yeRgJIAEoCRIpCghtZXRhZGF0YRgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QinAEKGEJ1aWxkUmVkVGVhbVBsYW5SZXNwb25zZRIbCgpwbGFuX2NvdW50GAEgASgFQge6SAQaAigAEg8KB3BsdWdpbnMYAiADKAkSEgoKc3RyYXRlZ2llcxgDIAMoCRIWCg5vd2FzcF9jb3ZlcmFnZRgEIAMoCRImCgVwbGFucxgFIAMoCzIXLmZlcm1hdGEudjEuUmVkVGVhbVBsYW4iVAoaTGlzdFJlZFRlYW1EYXRhc2V0c1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCSJmChVSZWRUZWFtRGF0YXNldFByZXZpZXcSEAoIY2F0ZWdvcnkYASABKAkSDgoGcHJvbXB0GAIgASgJEhAKCHNldmVyaXR5GAMgASgJEhkKEWV4cGVjdGVkX2JlaGF2aW9yGAQgASgJIvEBCg5SZWRUZWFtRGF0YXNldBIVCgRuYW1lGAEgASgJQge6SARyAhABEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRISCgpzb3VyY2VfdXJsGAMgASgJEg8KB2xpY2Vuc2UYBCABKAkSEwoLZGVzY3JpcHRpb24YBSABKAkSEgoKY2F0ZWdvcmllcxgGIAMoCRIfCg50b3RhbF9leGFtcGxlcxgHIAEoBUIHukgEGgIoABIOCgZmb3JtYXQYCCABKAkSMwoIcHJldmlld3MYCSADKAsyIS5mZXJtYXRhLnYxLlJlZFRlYW1EYXRhc2V0UHJldmlldyJLChtMaXN0UmVkVGVhbURhdGFzZXRzUmVzcG9uc2USLAoIZGF0YXNldHMYASADKAsyGi5mZXJtYXRhLnYxLlJlZFRlYW1EYXRhc2V0It8CChBSZWRUZWFtRXhlY3V0aW9uEg4KBnBsdWdpbhgBIAEoCRIQCghjYXRlZ29yeRgCIAEoCRIQCghzdHJhdGVneRgDIAEoCRIOCgZwcm9tcHQYBCABKAkSGgoSdHJhbnNmb3JtZWRfcHJvbXB0GAUgASgJEhAKCHJlc3BvbnNlGAYgASgJEhgKEGF0dGFja19zdWNjZWVkZWQYByABKAgSJgoFc2NvcmUYCCABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEhEKCXJlYXNvbmluZxgJIAEoCRIWCg5vd2FzcF9jYXRlZ29yeRgKIAEoCRIdChBleHBlY3RlZF9ibG9ja2VkGAsgASgISACIAQESIAoTZ3VhcmRyYWlsX3RyaWdnZXJlZBgMIAEoCEgBiAEBQhMKEV9leHBlY3RlZF9ibG9ja2VkQhYKFF9ndWFyZHJhaWxfdHJpZ2dlcmVkIrsDChhSZWRUZWFtUXVhbGl0eUdhdGVDb25maWcSPQoXbWF4X2F0dGFja19zdWNjZXNzX3JhdGUYASABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAASACIAQESPgoYbWluX3NhZmV0eV9wb3N0dXJlX3Njb3JlGAIgASgBQhe6SBQSEhkAAAAAAABZQCkAAAAAAAAAAEgBiAEBEi4KGG1heF9yZWdyZXNzZWRfY2F0ZWdvcmllcxgDIAEoBUIHukgEGgIoAEgCiAEBEigKEm1pbl9vd2FzcF9jb3ZlcmFnZRgEIAEoBUIHukgEGgIoAEgDiAEBEj0KF21heF9mYWxzZV9uZWdhdGl2ZV9yYXRlGAUgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgEiAEBQhoKGF9tYXhfYXR0YWNrX3N1Y2Nlc3NfcmF0ZUIbChlfbWluX3NhZmV0eV9wb3N0dXJlX3Njb3JlQhsKGV9tYXhfcmVncmVzc2VkX2NhdGVnb3JpZXNCFQoTX21pbl9vd2FzcF9jb3ZlcmFnZUIaChhfbWF4X2ZhbHNlX25lZ2F0aXZlX3JhdGUiwwIKGUJ1aWxkUmVkVGVhbVJlcG9ydFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIwCgpleGVjdXRpb25zGAMgAygLMhwuZmVybWF0YS52MS5SZWRUZWFtRXhlY3V0aW9uEkwKDGJhc2VsaW5lX2FzchgEIAMoCzI2LmZlcm1hdGEudjEuQnVpbGRSZWRUZWFtUmVwb3J0UmVxdWVzdC5CYXNlbGluZUFzckVudHJ5EjoKDHF1YWxpdHlfZ2F0ZRgFIAEoCzIkLmZlcm1hdGEudjEuUmVkVGVhbVF1YWxpdHlHYXRlQ29uZmlnGjIKEEJhc2VsaW5lQXNyRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgBOgI4ASLLAQoXUmVkVGVhbUFnZ3JlZ2F0ZVN1bW1hcnkSFgoFdGVzdHMYASABKAVCB7pIBBoCKAASKwoTYXR0YWNrX3N1Y2Nlc3NfcmF0ZRgCIAEoAUIOukgLEgkpAAAAAAAAAAASLAoUc2FmZXR5X3Bvc3R1cmVfc2NvcmUYAyABKAFCDrpICxIJKQAAAAAAAAAAEh8KDm93YXNwX2NvdmVyYWdlGAQgASgFQge6SAQaAigAEhwKFHJlZ3Jlc3NlZF9jYXRlZ29yaWVzGAUgAygJIuIBChZSZWRUZWFtQ2F0ZWdvcnlTdW1tYXJ5Eg4KBnBsdWdpbhgBIAEoCRIWCgV0ZXN0cxgCIAEoBUIHukgEGgIoABIhChBhdHRhY2tfc3VjY2Vzc2VzGAMgASgFQge6SAQaAigAEiUKDWF2ZXJhZ2Vfc2NvcmUYBCABKAFCDrpICxIJKQAAAAAAAAAAEhYKDm93YXNwX2NhdGVnb3J5GAUgASgJEisKE2F0dGFja19zdWNjZXNzX3JhdGUYBiABKAFCDrpICxIJKQAAAAAAAAAAEhEKCXJlZ3Jlc3NlZBgHIAEoCCL+AQoXUmVkVGVhbUd1YXJkcmFpbFN1bW1hcnkSHwoOdHJ1ZV9wb3NpdGl2ZXMYASABKAVCB7pIBBoCKAASIAoPZmFsc2VfcG9zaXRpdmVzGAIgASgFQge6SAQaAigAEiAKD2ZhbHNlX25lZ2F0aXZlcxgDIAEoBUIHukgEGgIoABIfCg50cnVlX25lZ2F0aXZlcxgEIAEoBUIHukgEGgIoABIhCglwcmVjaXNpb24YBSABKAFCDrpICxIJKQAAAAAAAAAAEh4KBnJlY2FsbBgGIAEoAUIOukgLEgkpAAAAAAAAAAASGgoCZjEYByABKAFCDrpICxIJKQAAAAAAAAAAImgKGFJlZFRlYW1Db21wbGlhbmNlU3VtbWFyeRIYChBvd2FzcF9jYXRlZ29yaWVzGAEgAygJEhYKDm5pc3RfZnVuY3Rpb25zGAIgAygJEhoKEmV1X2FpX2FjdF9hcnRpY2xlcxgDIAMoCSKbAQoXUmVkVGVhbVF1YWxpdHlHYXRlQ2hlY2sSDAoEbmFtZRgBIAEoCRIOCgZwYXNzZWQYAiABKAgSJgoGYWN0dWFsGAMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEigKCGV4cGVjdGVkGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhAKCG9wZXJhdG9yGAUgASgJIpICChhSZWRUZWFtUXVhbGl0eUdhdGVSZXN1bHQSDgoGcGFzc2VkGAEgASgIEg4KBnN0YXR1cxgCIAEoCRIVCg1jaV9jb25jbHVzaW9uGAMgASgJEjMKBmNoZWNrcxgEIAMoCzIjLmZlcm1hdGEudjEuUmVkVGVhbVF1YWxpdHlHYXRlQ2hlY2sSQgoHbWV0cmljcxgFIAMoCzIxLmZlcm1hdGEudjEuUmVkVGVhbVF1YWxpdHlHYXRlUmVzdWx0Lk1ldHJpY3NFbnRyeRpGCgxNZXRyaWNzRW50cnkSCwoDa2V5GAEgASgJEiUKBXZhbHVlGAIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlOgI4ASKlAwoaQnVpbGRSZWRUZWFtUmVwb3J0UmVzcG9uc2USNgoJYWdncmVnYXRlGAEgASgLMiMuZmVybWF0YS52MS5SZWRUZWFtQWdncmVnYXRlU3VtbWFyeRJKCgpjYXRlZ29yaWVzGAIgAygLMjYuZmVybWF0YS52MS5CdWlsZFJlZFRlYW1SZXBvcnRSZXNwb25zZS5DYXRlZ29yaWVzRW50cnkSNgoJZ3VhcmRyYWlsGAMgASgLMiMuZmVybWF0YS52MS5SZWRUZWFtR3VhcmRyYWlsU3VtbWFyeRI4Cgpjb21wbGlhbmNlGAQgASgLMiQuZmVybWF0YS52MS5SZWRUZWFtQ29tcGxpYW5jZVN1bW1hcnkSOgoMcXVhbGl0eV9nYXRlGAUgASgLMiQuZmVybWF0YS52MS5SZWRUZWFtUXVhbGl0eUdhdGVSZXN1bHQaVQoPQ2F0ZWdvcmllc0VudHJ5EgsKA2tleRgBIAEoCRIxCgV2YWx1ZRgCIAEoCzIiLmZlcm1hdGEudjEuUmVkVGVhbUNhdGVnb3J5U3VtbWFyeToCOAEivgMKFERhdGFzZXRQcm9tb3Rpb25JdGVtEg8KB2Nhc2VfaWQYASABKAkSDAoEbmFtZRgCIAEoCRISCgppbnB1dF9kYXRhGAMgASgJEhcKD2V4cGVjdGVkX291dHB1dBgEIAEoCRIYChBzdWdnZXN0ZWRfb3V0cHV0GAUgASgJEhMKC291dHB1dF9kYXRhGAYgASgJEhoKEmFkanVkaWNhdGVkX291dHB1dBgHIAEoCRI0ChNhZGp1ZGljYXRpb25fcmVzdWx0GAggASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIqCg1xdWFsaXR5X3Njb3JlGAkgASgBQg66SAsSCSkAAAAAAAAAAEgAiAEBEh8KDnJldmlld2VyX2NvdW50GAogASgFQge6SAQaAigAEgwKBHRhZ3MYCyADKAkSEgoKY3JlYXRlZF9ieRgMIAEoCRIVCg1xdWV1ZV9pdGVtX2lkGA0gASgJEhYKDmZpbmFsX2RlY2lzaW9uGA4gASgJEikKCG1ldGFkYXRhGA8gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIQCg5fcXVhbGl0eV9zY29yZSL5AQoTUHJvbW90ZWREYXRhc2V0SXRlbRIKCgJpZBgBIAEoCRISCgpkYXRhc2V0X2lkGAIgASgJEhIKCmlucHV0X2RhdGEYAyABKAkSFwoPZXhwZWN0ZWRfb3V0cHV0GAQgASgJEikKCG1ldGFkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIMCgR0YWdzGAYgAygJEiUKDXF1YWxpdHlfc2NvcmUYByABKAFCDrpICxIJKQAAAAAAAAAAEhIKCmNyZWF0ZWRfYnkYCCABKAkSEAoIc3VpdGVfaWQYCSABKAkSDwoHY2FzZV9pZBgKIAEoCSK1AgoZUHJvbW90ZURhdGFzZXRJdGVtUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhIKCmRhdGFzZXRfaWQYAyABKAkSFAoMZGF0YXNldF9uYW1lGAQgASgJEhUKDXF1ZXVlX2l0ZW1faWQYBSABKAkSHwoXdXNlX2FkanVkaWNhdGlvbl9yZXN1bHQYBiABKAgSNgoEaXRlbRgHIAEoCzIgLmZlcm1hdGEudjEuRGF0YXNldFByb21vdGlvbkl0ZW1CBrpIA8gBARIpCghtZXRhZGF0YRgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKY3JlYXRlZF9ieRgJIAEoCSJxChpQcm9tb3RlRGF0YXNldEl0ZW1SZXNwb25zZRItCgRpdGVtGAEgASgLMh8uZmVybWF0YS52MS5Qcm9tb3RlZERhdGFzZXRJdGVtEiQKBXN1aXRlGAIgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUi0wIKGlByb21vdGVEYXRhc2V0SXRlbXNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESEgoKZGF0YXNldF9pZBgDIAEoCRIUCgxkYXRhc2V0X25hbWUYBCABKAkSHwoXdXNlX2FkanVkaWNhdGlvbl9yZXN1bHQYBSABKAgSIQoJbWluX3Njb3JlGAYgASgBQg66SAsSCSkAAAAAAAAAABIWCgVsaW1pdBgHIAEoBUIHukgEGgIoABIvCgVpdGVtcxgIIAMoCzIgLmZlcm1hdGEudjEuRGF0YXNldFByb21vdGlvbkl0ZW0SKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKCmNyZWF0ZWRfYnkYCiABKAkiugEKG1Byb21vdGVEYXRhc2V0SXRlbXNSZXNwb25zZRISCgpkYXRhc2V0X2lkGAEgASgJEhQKDGRhdGFzZXRfbmFtZRgCIAEoCRIbCgppdGVtX2NvdW50GAMgASgFQge6SAQaAigAEi4KBWl0ZW1zGAQgAygLMh8uZmVybWF0YS52MS5Qcm9tb3RlZERhdGFzZXRJdGVtEiQKBXN1aXRlGAUgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUi3AIKGUJ1aWxkR29sZGVuRGF0YXNldFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARISCgpkYXRhc2V0X2lkGAMgASgJEhQKDGRhdGFzZXRfbmFtZRgEIAEoCRIfChd1c2VfYWRqdWRpY2F0aW9uX3Jlc3VsdBgFIAEoCBIjChJtaW5fcmV2aWV3ZXJfY291bnQYBiABKAVCB7pIBBoCKAASFgoFbGltaXQYByABKAVCB7pIBBoCKAASNwoNYWRqdWRpY2F0aW9ucxgIIAMoCzIgLmZlcm1hdGEudjEuRGF0YXNldFByb21vdGlvbkl0ZW0SKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKCmNyZWF0ZWRfYnkYCiABKAkiuQEKGkJ1aWxkR29sZGVuRGF0YXNldFJlc3BvbnNlEhIKCmRhdGFzZXRfaWQYASABKAkSFAoMZGF0YXNldF9uYW1lGAIgASgJEhsKCml0ZW1fY291bnQYAyABKAVCB7pIBBoCKAASLgoFaXRlbXMYBCADKAsyHy5mZXJtYXRhLnYxLlByb21vdGVkRGF0YXNldEl0ZW0SJAoFc3VpdGUYBSABKAsyFS5mZXJtYXRhLnYxLlRlc3RTdWl0ZSJiChZQcm9kdWN0aW9uVHJhY2VNZXNzYWdlEgwKBHJvbGUYASABKAkSDwoHY29udGVudBgCIAEoCRIpCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QizgMKFVByb2R1Y3Rpb25UcmFjZVJlY29yZBIPCgdjYXNlX2lkGAEgASgJEgwKBG5hbWUYAiABKAkSEgoKc2Vzc2lvbl9pZBgDIAEoCRIQCghldmVudF9pZBgEIAEoCRIOCgZzb3VyY2UYBSABKAkSEgoKaW5wdXRfZGF0YRgGIAEoCRIXCg9leHBlY3RlZF9vdXRwdXQYByABKAkSDgoGcHJvbXB0GAggASgJEg0KBXF1ZXJ5GAkgASgJEg4KBm91dHB1dBgKIAEoCRIQCghyZXNwb25zZRgLIAEoCRISCgpjb21wbGV0aW9uGAwgASgJEjQKCG1lc3NhZ2VzGA0gAygLMiIuZmVybWF0YS52MS5Qcm9kdWN0aW9uVHJhY2VNZXNzYWdlEgwKBHRhZ3MYDiADKAkSKQoIbWV0YWRhdGEYDyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiEKC3Rva2VuX2NvdW50GBAgASgDQge6SAQiAigASACIAQESKgoNcHJvdmlkZXJfY29zdBgRIAEoAUIOukgLEgkpAAAAAAAAAABIAYgBAUIOCgxfdG9rZW5fY291bnRCEAoOX3Byb3ZpZGVyX2Nvc3QizQEKG01hdGVyaWFsaXplZFByb2R1Y3Rpb25UcmFjZRIKCgJpZBgBIAEoCRIQCghzdWl0ZV9pZBgCIAEoCRIPCgdjYXNlX2lkGAMgASgJEhIKCnNlc3Npb25faWQYBCABKAkSEAoIZXZlbnRfaWQYBSABKAkSDgoGc3RhdHVzGAYgASgJEg4KBnNvdXJjZRgHIAEoCRIMCgR0YWdzGAggAygJEhIKCmlucHV0X2RhdGEYCSABKAkSFwoPZXhwZWN0ZWRfb3V0cHV0GAogASgJItMBCh1Jbmdlc3RQcm9kdWN0aW9uVHJhY2VzUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhIKCnN1aXRlX25hbWUYAyABKAkSEgoKY3JlYXRlZF9ieRgEIAEoCRIWCgVsaW1pdBgFIAEoBUIHukgEGgIoABIxCgZ0cmFjZXMYBiADKAsyIS5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVJlY29yZCLgAQoqQnVpbGRQcm9kdWN0aW9uVHJhY2VSZWdyZXNzaW9uU3VpdGVSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESEgoKc3VpdGVfbmFtZRgDIAEoCRISCgpjcmVhdGVkX2J5GAQgASgJEhYKBWxpbWl0GAUgASgFQge6SAQaAigAEjEKBnRyYWNlcxgGIAMoCzIhLmZlcm1hdGEudjEuUHJvZHVjdGlvblRyYWNlUmVjb3JkIuUBCh5Jbmdlc3RQcm9kdWN0aW9uVHJhY2VzUmVzcG9uc2USEAoIc3VpdGVfaWQYASABKAkSEgoKc3VpdGVfbmFtZRgCIAEoCRIfCg5pbmdlc3RlZF9jb3VudBgDIAEoBUIHukgEGgIoABIbCgpjYXNlX2NvdW50GAQgASgFQge6SAQaAigAEjkKCGluZ2VzdGVkGAUgAygLMicuZmVybWF0YS52MS5NYXRlcmlhbGl6ZWRQcm9kdWN0aW9uVHJhY2USJAoFc3VpdGUYBiABKAsyFS5mZXJtYXRhLnYxLlRlc3RTdWl0ZSLyAQorQnVpbGRQcm9kdWN0aW9uVHJhY2VSZWdyZXNzaW9uU3VpdGVSZXNwb25zZRIQCghzdWl0ZV9pZBgBIAEoCRISCgpzdWl0ZV9uYW1lGAIgASgJEh8KDmluZ2VzdGVkX2NvdW50GAMgASgFQge6SAQaAigAEhsKCmNhc2VfY291bnQYBCABKAVCB7pIBBoCKAASOQoIaW5nZXN0ZWQYBSADKAsyJy5mZXJtYXRhLnYxLk1hdGVyaWFsaXplZFByb2R1Y3Rpb25UcmFjZRIkCgVzdWl0ZRgGIAEoCzIVLmZlcm1hdGEudjEuVGVzdFN1aXRlIowBCiFMaXN0UHJvZHVjdGlvblRyYWNlU2FtcGxlc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIWCgVsaW1pdBgDIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBCABKAVCB7pIBBoCKAAi1AIKFVByb2R1Y3Rpb25UcmFjZVNhbXBsZRIKCgJpZBgBIAEoCRIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSEAoIc3VpdGVfaWQYAyABKAkSEgoKY2x1c3Rlcl9pZBgEIAEoCRIOCgZzdGF0dXMYBSABKAkSDgoGc291cmNlGAYgASgJEgwKBHRhZ3MYByADKAkSIQoLdG9rZW5fY291bnQYCCABKANCB7pIBCICKABIAIgBARIqCg1wcm92aWRlcl9jb3N0GAkgASgBQg66SAsSCSkAAAAAAAAAAEgBiAEBEhwKFHNhbml0aXplZF90cmFuc2NyaXB0GAogASgJEjMKEnNhbml0aXplZF9tZXRhZGF0YRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCDgoMX3Rva2VuX2NvdW50QhAKDl9wcm92aWRlcl9jb3N0ImoKIkxpc3RQcm9kdWN0aW9uVHJhY2VTYW1wbGVzUmVzcG9uc2USMgoHc2FtcGxlcxgBIAMoCzIhLmZlcm1hdGEudjEuUHJvZHVjdGlvblRyYWNlU2FtcGxlEhAKCGhhc19tb3JlGAIgASgIIo8BChlQcm9kdWN0aW9uVHJhY2VSZXBsYXlDYXNlEg8KB2Nhc2VfaWQYASABKAkSFwoPYmFzZWxpbmVfb3V0cHV0GAIgASgJEhgKEGNhbmRpZGF0ZV9vdXRwdXQYAyABKAkSFAoMbXVzdF9jb250YWluGAQgAygJEhgKEG11c3Rfbm90X2NvbnRhaW4YBSADKAkisgEKH1Byb2R1Y3Rpb25UcmFjZVJlcGxheVJlZ3Jlc3Npb24SDwoHY2FzZV9pZBgBIAEoCRIrCgpzaW1pbGFyaXR5GAIgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAABIgChhtaXNzaW5nX3JlcXVpcmVkX21hcmtlcnMYAyADKAkSIQoZZm9yYmlkZGVuX21hcmtlcnNfcHJlc2VudBgEIAMoCRIMCgRkaWZmGAUgASgJIvIBChxQcm9kdWN0aW9uVHJhY2VSZXBsYXlTdW1tYXJ5EhwKC3RvdGFsX2Nhc2VzGAEgASgFQge6SAQaAigAEh4KDXBhc3NpbmdfY2FzZXMYAiABKAVCB7pIBBoCKAASHQoMZmFpbGVkX2Nhc2VzGAMgASgFQge6SAQaAigAEiEKCXBhc3NfcmF0ZRgEIAEoAUIOukgLEgkpAAAAAAAAAAASJgoObWluX3NpbWlsYXJpdHkYBSABKAFCDrpICxIJKQAAAAAAAAAAEioKEmF2ZXJhZ2Vfc2ltaWxhcml0eRgGIAEoAUIOukgLEgkpAAAAAAAAAAAijAIKI0NvbXBhcmVQcm9kdWN0aW9uVHJhY2VSZXBsYXlSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSNAoFY2FzZXMYAyADKAsyJS5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVJlcGxheUNhc2USKwoObWluX3NpbWlsYXJpdHkYBCABKAFCDrpICxIJKQAAAAAAAAAASACIAQESJAoObWF4X2RpZmZfbGluZXMYBSABKAVCB7pIBBoCKABIAYgBAUIRCg9fbWluX3NpbWlsYXJpdHlCEQoPX21heF9kaWZmX2xpbmVzIrUBCiRDb21wYXJlUHJvZHVjdGlvblRyYWNlUmVwbGF5UmVzcG9uc2USEAoIZGVjaXNpb24YASABKAkSOQoHc3VtbWFyeRgCIAEoCzIoLmZlcm1hdGEudjEuUHJvZHVjdGlvblRyYWNlUmVwbGF5U3VtbWFyeRJACgtyZWdyZXNzaW9ucxgDIAMoCzIrLmZlcm1hdGEudjEuUHJvZHVjdGlvblRyYWNlUmVwbGF5UmVncmVzc2lvbiLjBAoSR3VhcmRyYWlsUHJvbW90aW9uEhMKAmlkGAEgASgJQge6SARyAhABEg4KBnN0YXR1cxgCIAEoCRIVCg1ldmFsdWF0aW9uX2lkGAMgASgJEhMKC3Rlc3RfcnVuX2lkGAQgASgJEiAKD29yZ2FuaXphdGlvbl9pZBgFIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYBiABKAkSEgoKY3JlYXRlZF9ieRgHIAEoCRIaChJzb3VyY2VfZW52aXJvbm1lbnQYCCABKAkSGgoSdGFyZ2V0X2Vudmlyb25tZW50GAkgASgJEhMKC21ldHJpY19uYW1lGAogASgJEhsKE2NvbXBhcmlzb25fb3BlcmF0b3IYCyABKAkSEQoJdGhyZXNob2xkGAwgASgBEhYKDmJhc2VsaW5lX3ZhbHVlGA0gASgBEhcKD2FsZXJ0X3RocmVzaG9sZBgOIAEoARIgCg1zYW1wbGluZ19yYXRlGA8gASgFQgm6SAYaBBhkKAASKgoZbW9uaXRvcmluZ193aW5kb3dfbWludXRlcxgQIAEoBUIHukgEGgIoABIRCglzY29yZV9ycGMYESABKAkSMgoRbW9uaXRvcmluZ19jb25maWcYEiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg0KBW5vdGVzGBMgASgJEi4KCmNyZWF0ZWRfYXQYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYFSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIqADCiNQcm9tb3RlRXZhbHVhdGlvblRvR3VhcmRyYWlsUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEh4KDWV2YWx1YXRpb25faWQYAyABKAlCB7pIBHICEAESHAoLbWV0cmljX25hbWUYBCABKAlCB7pIBHICEAESGwoTY29tcGFyaXNvbl9vcGVyYXRvchgFIAEoCRIWCgl0aHJlc2hvbGQYBiABKAFIAIgBARIcCg9hbGVydF90aHJlc2hvbGQYByABKAFIAYgBARIgCg1zYW1wbGluZ19yYXRlGAggASgFQgm6SAYaBBhkKAASLQoZbW9uaXRvcmluZ193aW5kb3dfbWludXRlcxgJIAEoBUIKukgHGgUYoAsoABIaChJ0YXJnZXRfZW52aXJvbm1lbnQYCiABKAkSEgoKY3JlYXRlZF9ieRgLIAEoCRINCgVub3RlcxgMIAEoCUIMCgpfdGhyZXNob2xkQhIKEF9hbGVydF90aHJlc2hvbGQiWQokUHJvbW90ZUV2YWx1YXRpb25Ub0d1YXJkcmFpbFJlc3BvbnNlEjEKCXByb21vdGlvbhgBIAEoCzIeLmZlcm1hdGEudjEuR3VhcmRyYWlsUHJvbW90aW9uInUKHEdldEd1YXJkcmFpbFByb21vdGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIdCgxwcm9tb3Rpb25faWQYAyABKAlCB7pIBHICEAEiUgodR2V0R3VhcmRyYWlsUHJvbW90aW9uUmVzcG9uc2USMQoJcHJvbW90aW9uGAEgASgLMh4uZmVybWF0YS52MS5HdWFyZHJhaWxQcm9tb3Rpb24i4gEKHlNjb3JlR3VhcmRyYWlsUHJvbW90aW9uUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEh0KDHByb21vdGlvbl9pZBgDIAEoCUIHukgEcgIQARIZCgxtZXRyaWNfdmFsdWUYBCABKAFIAIgBARISCgpzYW1wbGVfa2V5GAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIPCg1fbWV0cmljX3ZhbHVlIqQCCh9TY29yZUd1YXJkcmFpbFByb21vdGlvblJlc3BvbnNlEhQKDHByb21vdGlvbl9pZBgBIAEoCRITCgttZXRyaWNfbmFtZRgCIAEoCRIPCgdzYW1wbGVkGAMgASgIEg4KBnBhc3NlZBgEIAEoCBINCgVhbGVydBgFIAEoCBIbChNjb21wYXJpc29uX29wZXJhdG9yGAYgASgJEhEKCXRocmVzaG9sZBgHIAEoARIXCg9hbGVydF90aHJlc2hvbGQYCCABKAESFgoOb2JzZXJ2ZWRfdmFsdWUYCSABKAESGgoSdGFyZ2V0X2Vudmlyb25tZW50GAogASgJEikKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLfAQoRRGlhZ25vc3RpY0ZpbmRpbmcSCgoCaWQYASABKAkSQQoIc2V2ZXJpdHkYAiABKA4yJS5mZXJtYXRhLnYxLkRpYWdub3N0aWNGaW5kaW5nU2V2ZXJpdHlCCLpIBYIBAhABEhYKBXRpdGxlGAMgASgJQge6SARyAhABEg4KBmRldGFpbBgEIAEoCRIoCghldmlkZW5jZRgFIAMoCzIWLmNvbW1vbi52MS5FdmlkZW5jZVJlZhIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi7wQKHEV2YWx1YXRpb25EaWFnbm9zdGljQXJ0aWZhY3QSEwoCaWQYASABKAlCB7pIBHICEAESOgoEa2luZBgCIAEoDjIiLmZlcm1hdGEudjEuRGlhZ25vc3RpY0FydGlmYWN0S2luZEIIukgFggECEAESIAoPb3JnYW5pemF0aW9uX2lkGAMgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgEIAEoCRITCgtzY2VuYXJpb19pZBgFIAEoCRIgCg9zY2VuYXJpb19ydW5faWQYBiABKAlCB7pIBHICEAESEAoIdHJhY2VfaWQYByABKAkSFgoFdGl0bGUYCCABKAlCB7pIBHICEAESDwoHc3VtbWFyeRgJIAEoCRIvCghmaW5kaW5ncxgKIAMoCzIdLmZlcm1hdGEudjEuRGlhZ25vc3RpY0ZpbmRpbmcSKAoIZXZpZGVuY2UYCyADKAsyFi5jb21tb24udjEuRXZpZGVuY2VSZWYSLgoNaW5wdXRfY29udGV4dBgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKAoHcGF5bG9hZBgNIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFAoMYXJ0aWZhY3RfdXJpGA4gASgJEhYKDmNvbnRlbnRfc2hhMjU2GA8gASgJEhEKCXBlcnNpc3RlZBgQIAEoCBIuCgpjcmVhdGVkX2F0GBEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLHAQoZRXhwbGFpblNjZW5hcmlvUnVuUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhcKBnJ1bl9pZBgDIAEoCUIHukgEcgIQARIVCg1pbmNsdWRlX3RyYWNlGAQgASgIEhgKEHBlcnNpc3RfYXJ0aWZhY3QYBSABKAgSKAoHY29udGV4dBgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiWAoaRXhwbGFpblNjZW5hcmlvUnVuUmVzcG9uc2USOgoIYXJ0aWZhY3QYASABKAsyKC5mZXJtYXRhLnYxLkV2YWx1YXRpb25EaWFnbm9zdGljQXJ0aWZhY3Qi8QEKIkFuYWx5emVTY2VuYXJpb1J1blJvb3RDYXVzZVJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIXCgZydW5faWQYAyABKAlCB7pIBHICEAESHwoXc3VzcGVjdGVkX2ZhaWx1cmVfbW9kZXMYBCADKAkSFQoNaW5jbHVkZV90cmFjZRgFIAEoCBIYChBwZXJzaXN0X2FydGlmYWN0GAYgASgIEigKB2NvbnRleHQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0ImEKI0FuYWx5emVTY2VuYXJpb1J1blJvb3RDYXVzZVJlc3BvbnNlEjoKCGFydGlmYWN0GAEgASgLMiguZmVybWF0YS52MS5FdmFsdWF0aW9uRGlhZ25vc3RpY0FydGlmYWN0IpECCh5KdWRnZVZhbGlkYXRpb25BY2N1cmFjeU1ldHJpY3MSEQoJcHJlY2lzaW9uGAEgASgBEg4KBnJlY2FsbBgCIAEoARIQCghmMV9zY29yZRgDIAEoARIQCghhY2N1cmFjeRgEIAEoARIiChF0b3RhbF92YWxpZGF0aW9ucxgFIAEoBUIHukgEGgIoABIfCg50cnVlX3Bvc2l0aXZlcxgGIAEoBUIHukgEGgIoABIgCg9mYWxzZV9wb3NpdGl2ZXMYByABKAVCB7pIBBoCKAASHwoOdHJ1ZV9uZWdhdGl2ZXMYCCABKAVCB7pIBBoCKAASIAoPZmFsc2VfbmVnYXRpdmVzGAkgASgFQge6SAQaAigAIsABCh5KdWRnZVZhbGlkYXRpb25Db25mdXNpb25NYXRyaXgSJgoVanVkZ2VfcGFzc19odW1hbl9wYXNzGAEgASgFQge6SAQaAigAEiYKFWp1ZGdlX3Bhc3NfaHVtYW5fZmFpbBgCIAEoBUIHukgEGgIoABImChVqdWRnZV9mYWlsX2h1bWFuX3Bhc3MYAyABKAVCB7pIBBoCKAASJgoVanVkZ2VfZmFpbF9odW1hbl9mYWlsGAQgASgFQge6SAQaAigAItEBChpKdWRnZVZhbGlkYXRpb25CaWFzTWV0cmljcxIUCgxvdmVyX3Njb3JpbmcYASABKAgSFQoNdW5kZXJfc2NvcmluZxgCIAEoCBITCgtzY29yZV9kcmlmdBgDIAEoARIbChNhdmVyYWdlX2p1ZGdlX3Njb3JlGAQgASgBEhsKE2F2ZXJhZ2VfaHVtYW5fc2NvcmUYBSABKAESGQoRc2NvcmVfY29ycmVsYXRpb24YBiABKAESHAoLc2FtcGxlX3NpemUYByABKAVCB7pIBBoCKAAinAEKGkp1ZGdlVmFsaWRhdGlvbkNhbGlicmF0aW9uEhkKCGp1ZGdlX2lkGAEgASgJQge6SARyAhABEhsKE3ZhbGlkYXRpb25fYWNjdXJhY3kYAiABKAESEQoJdmFsaWRhdGVkGAMgASgIEjMKD2xhc3RfdmFsaWRhdGlvbhgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAimQQKGUp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb24SHgoNZXZhbHVhdGlvbl9pZBgBIAEoCUIHukgEcgIQARIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAMgASgJEhkKCGp1ZGdlX2lkGAQgASgJQge6SARyAhABEhcKD3NjZW5hcmlvX3J1bl9pZBgFIAEoCRIUCgxhc3NlcnRpb25faWQYBiABKAkSLAoLanVkZ2Vfc2NvcmUYByABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEhQKDGp1ZGdlX3Bhc3NlZBgIIAEoCBIXCg9odW1hbl92YWxpZGF0ZWQYCSABKAgSMQoLaHVtYW5fc2NvcmUYCiABKAFCF7pIFBISGQAAAAAAAFlAKQAAAAAAAAAASACIAQESGAoQdmFsaWRhdGlvbl9ub3RlcxgLIAEoCRIOCgZzb3VyY2UYDCABKAkSMAoMZXZhbHVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfaHVtYW5fc2NvcmUiSAoZSnVkZ2VDYWxpYnJhdGlvbkNhbmRpZGF0ZRIZCghqdWRnZV9pZBgBIAEoCUIHukgEcgIQARIQCghhY2N1cmFjeRgCIAEoASJgCiFHZXRKdWRnZVZhbGlkYXRpb25BY2N1cmFjeVJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhkKCGp1ZGdlX2lkGAIgASgJQge6SARyAhABImEKIkdldEp1ZGdlVmFsaWRhdGlvbkFjY3VyYWN5UmVzcG9uc2USOwoHbWV0cmljcxgBIAEoCzIqLmZlcm1hdGEudjEuSnVkZ2VWYWxpZGF0aW9uQWNjdXJhY3lNZXRyaWNzImcKKEdldEp1ZGdlVmFsaWRhdGlvbkNvbmZ1c2lvbk1hdHJpeFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhkKCGp1ZGdlX2lkGAIgASgJQge6SARyAhABImcKKUdldEp1ZGdlVmFsaWRhdGlvbkNvbmZ1c2lvbk1hdHJpeFJlc3BvbnNlEjoKBm1hdHJpeBgBIAEoCzIqLmZlcm1hdGEudjEuSnVkZ2VWYWxpZGF0aW9uQ29uZnVzaW9uTWF0cml4IlwKHUdldEp1ZGdlVmFsaWRhdGlvbkJpYXNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIZCghqdWRnZV9pZBgCIAEoCUIHukgEcgIQASJZCh5HZXRKdWRnZVZhbGlkYXRpb25CaWFzUmVzcG9uc2USNwoHbWV0cmljcxgBIAEoCzImLmZlcm1hdGEudjEuSnVkZ2VWYWxpZGF0aW9uQmlhc01ldHJpY3MiYAohUmVjYWxpYnJhdGVKdWRnZVZhbGlkYXRpb25SZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIZCghqdWRnZV9pZBgCIAEoCUIHukgEcgIQASJhCiJSZWNhbGlicmF0ZUp1ZGdlVmFsaWRhdGlvblJlc3BvbnNlEjsKC2NhbGlicmF0aW9uGAEgASgLMiYuZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25DYWxpYnJhdGlvbiK9AwomUmVjb3JkSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvblJlcXVlc3QSFQoNZXZhbHVhdGlvbl9pZBgBIAEoCRIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAMgASgJEhkKCGp1ZGdlX2lkGAQgASgJQge6SARyAhABEhcKD3NjZW5hcmlvX3J1bl9pZBgFIAEoCRIUCgxhc3NlcnRpb25faWQYBiABKAkSLAoLanVkZ2Vfc2NvcmUYByABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEhQKDGp1ZGdlX3Bhc3NlZBgIIAEoCBIXCg9odW1hbl92YWxpZGF0ZWQYCSABKAgSMQoLaHVtYW5fc2NvcmUYCiABKAFCF7pIFBISGQAAAAAAAFlAKQAAAAAAAAAASACIAQESGAoQdmFsaWRhdGlvbl9ub3RlcxgLIAEoCRIOCgZzb3VyY2UYDCABKAkSMAoMZXZhbHVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfaHVtYW5fc2NvcmUiZAonUmVjb3JkSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvblJlc3BvbnNlEjkKCmV2YWx1YXRpb24YASABKAsyJS5mZXJtYXRhLnYxLkp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb24iyQEKKFZhbGlkYXRlSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvblJlcXVlc3QSHgoNZXZhbHVhdGlvbl9pZBgBIAEoCUIHukgEcgIQARIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESMQoLaHVtYW5fc2NvcmUYAyABKAFCF7pIFBISGQAAAAAAAFlAKQAAAAAAAAAASACIAQESGAoQdmFsaWRhdGlvbl9ub3RlcxgEIAEoCUIOCgxfaHVtYW5fc2NvcmUiZgopVmFsaWRhdGVKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVzcG9uc2USOQoKZXZhbHVhdGlvbhgBIAEoCzIlLmZlcm1hdGEudjEuSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvbiKgAQolTGlzdEp1ZGdlQ2FsaWJyYXRpb25DYW5kaWRhdGVzUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESIAoPbWluX3ZhbGlkYXRpb25zGAIgASgFQge6SAQaAigAEjMKEmFjY3VyYWN5X3RocmVzaG9sZBgDIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAAAivwEKJkxpc3RKdWRnZUNhbGlicmF0aW9uQ2FuZGlkYXRlc1Jlc3BvbnNlEjkKCmNhbmRpZGF0ZXMYASADKAsyJS5mZXJtYXRhLnYxLkp1ZGdlQ2FsaWJyYXRpb25DYW5kaWRhdGUSHAoLdG90YWxfY291bnQYAiABKAVCB7pIBBoCKAASIAoPbWluX3ZhbGlkYXRpb25zGAMgASgFQge6SAQaAigAEhoKEmFjY3VyYWN5X3RocmVzaG9sZBgEIAEoASKLBwoRUXVhbGl0eUdhdGVDb25maWcSFAoHZW5hYmxlZBgBIAEoCEgAiAEBEjMKDW1pbl9wYXNzX3JhdGUYAiABKAFCF7pIFBISGQAAAAAAAFlAKQAAAAAAAAAASAGIAQESNwoRbWluX2F2ZXJhZ2Vfc2NvcmUYAyABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAASAKIAQESJgoQbWF4X2ZhaWxlZF90ZXN0cxgEIAEoBUIHukgEGgIoAEgDiAEBEjEKFHJlZ3Jlc3Npb25fdGhyZXNob2xkGAUgASgBQg66SAsSCSkAAAAAAAAAAEgEiAEBEiEKFGJsb2NrX29uX2FueV9mYWlsdXJlGAYgASgISAWIAQESLgoRbWF4X2Nvc3RfaW5jcmVhc2UYByABKAFCDrpICxIJKQAAAAAAAAAASAaIAQESMQoUbWF4X2xhdGVuY3lfaW5jcmVhc2UYCCABKAFCDrpICxIJKQAAAAAAAAAASAeIAQESOQoPY3VzdG9tX2NyaXRlcmlhGAkgAygLMiAuZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNyaXRlcmlvbhJDCh1taW5fanVkZ2VfdmFsaWRhdGlvbl9hY2N1cmFjeRgKIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABICIgBARIwChptaW5fanVkZ2VfdmFsaWRhdGlvbl9jb3VudBgLIAEoBUIHukgEGgIoAEgJiAEBEhoKEnJlcXVpcmVkX2p1ZGdlX2lkcxgMIAMoCRIwCiNibG9ja19vbl9qdWRnZXNfbmVlZGluZ19jYWxpYnJhdGlvbhgNIAEoCEgKiAEBQgoKCF9lbmFibGVkQhAKDl9taW5fcGFzc19yYXRlQhQKEl9taW5fYXZlcmFnZV9zY29yZUITChFfbWF4X2ZhaWxlZF90ZXN0c0IXChVfcmVncmVzc2lvbl90aHJlc2hvbGRCFwoVX2Jsb2NrX29uX2FueV9mYWlsdXJlQhQKEl9tYXhfY29zdF9pbmNyZWFzZUIXChVfbWF4X2xhdGVuY3lfaW5jcmVhc2VCIAoeX21pbl9qdWRnZV92YWxpZGF0aW9uX2FjY3VyYWN5Qh0KG19taW5fanVkZ2VfdmFsaWRhdGlvbl9jb3VudEImCiRfYmxvY2tfb25fanVkZ2VzX25lZWRpbmdfY2FsaWJyYXRpb24iYQoUUXVhbGl0eUdhdGVDcml0ZXJpb24SDAoEbmFtZRgBIAEoCRIMCgR0eXBlGAIgASgJEhAKCG9wZXJhdG9yGAMgASgJEg0KBXZhbHVlGAQgASgBEgwKBHVuaXQYBSABKAkiaQoUUXVhbGl0eUdhdGVWaW9sYXRpb24SDAoEcnVsZRgBIAEoCRIPCgdtZXNzYWdlGAIgASgJEhAKCHNldmVyaXR5GAMgASgJEg4KBmFjdHVhbBgEIAEoARIQCghleHBlY3RlZBgFIAEoASJzChJRdWFsaXR5R2F0ZVN1bW1hcnkSHQoMdG90YWxfY2hlY2tzGAEgASgFQge6SAQaAigAEh4KDXBhc3NlZF9jaGVja3MYAiABKAVCB7pIBBoCKAASHgoNZmFpbGVkX2NoZWNrcxgDIAEoBUIHukgEGgIoACKYBQoRUXVhbGl0eUdhdGVSZXN1bHQSCgoCaWQYASABKAkSHAoLdGVzdF9ydW5faWQYAiABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAMgASgJEhQKDHdvcmtzcGFjZV9pZBgEIAEoCRITCgtlbnZpcm9ubWVudBgFIAEoCRIWCg5vdmVyYWxsX3N0YXR1cxgGIAEoCRIWCg5vdmVyYWxsX3Bhc3NlZBgHIAEoCBIwCgxldmFsdWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjEKEGNyaXRlcmlhX3Jlc3VsdHMYCSADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eh8KDnRvdGFsX2NyaXRlcmlhGAogASgFQge6SAQaAigAEiAKD3Bhc3NlZF9jcml0ZXJpYRgLIAEoBUIHukgEGgIoABIgCg9mYWlsZWRfY3JpdGVyaWEYDCABKAVCB7pIBBoCKAASIQoQd2FybmluZ19jcml0ZXJpYRgNIAEoBUIHukgEGgIoABItCgx0ZXN0X21ldHJpY3MYDiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjIKC2NvbmZpZ191c2VkGA8gASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZxIOCgZwYXNzZWQYECABKAgSDQoFc2NvcmUYESABKAESNAoKdmlvbGF0aW9ucxgSIAMoCzIgLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVWaW9sYXRpb24SLwoHc3VtbWFyeRgTIAEoCzIeLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVTdW1tYXJ5Eg8KB2RldGFpbHMYFCABKAkiQQoVUXVhbGl0eUdhdGVQYWdpbmF0aW9uEhYKBXRvdGFsGAEgASgFQge6SAQaAigAEhAKCGhhc19tb3JlGAIgASgIIh8KHUdldFF1YWxpdHlHYXRlRGVmYXVsdHNSZXF1ZXN0Iu4BCh5HZXRRdWFsaXR5R2F0ZURlZmF1bHRzUmVzcG9uc2USSAoHY29uZmlncxgBIAMoCzI3LmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVEZWZhdWx0c1Jlc3BvbnNlLkNvbmZpZ3NFbnRyeRIzChJhdmFpbGFibGVfY3JpdGVyaWEYAiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Gk0KDENvbmZpZ3NFbnRyeRILCgNrZXkYASABKAkSLAoFdmFsdWUYAiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnOgI4ASI4Ch1MaXN0UXVhbGl0eUdhdGVDb25maWdzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkiuQEKHkxpc3RRdWFsaXR5R2F0ZUNvbmZpZ3NSZXNwb25zZRJICgdjb25maWdzGAEgAygLMjcuZmVybWF0YS52MS5MaXN0UXVhbGl0eUdhdGVDb25maWdzUmVzcG9uc2UuQ29uZmlnc0VudHJ5Gk0KDENvbmZpZ3NFbnRyeRILCgNrZXkYASABKAkSLAoFdmFsdWUYAiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnOgI4ASJLChtHZXRRdWFsaXR5R2F0ZUNvbmZpZ1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhMKC2Vudmlyb25tZW50GAIgASgJImIKHEdldFF1YWxpdHlHYXRlQ29uZmlnUmVzcG9uc2USEwoLZW52aXJvbm1lbnQYASABKAkSLQoGY29uZmlnGAIgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZyKOAQoeVXBzZXJ0UXVhbGl0eUdhdGVDb25maWdSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARITCgtlbnZpcm9ubWVudBgCIAEoCRI1CgZjb25maWcYAyABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnQga6SAPIAQEiZQofVXBzZXJ0UXVhbGl0eUdhdGVDb25maWdSZXNwb25zZRITCgtlbnZpcm9ubWVudBgBIAEoCRItCgZjb25maWcYAiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnIlYKHVJlc2V0UXVhbGl0eUdhdGVDb25maWdSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARITCgtlbnZpcm9ubWVudBgCIAEoCSKSAQoeUmVzZXRRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlEhMKC2Vudmlyb25tZW50GAEgASgJEiwKCHJlc2V0X2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBItCgZjb25maWcYAyABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnIvkBChpFdmFsdWF0ZVF1YWxpdHlHYXRlUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhMKC2Vudmlyb25tZW50GAMgASgJEhwKC3Rlc3RfcnVuX2lkGAQgASgJQge6SARyAhABEigKB21ldHJpY3MYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KBmNvbmZpZxgGIAEoCzIdLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVDb25maWcSFAoHcGVyc2lzdBgHIAEoCEgAiAEBQgoKCF9wZXJzaXN0IkwKG0V2YWx1YXRlUXVhbGl0eUdhdGVSZXNwb25zZRItCgZyZXN1bHQYASABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUmVzdWx0IvMCCiBCYXRjaEV2YWx1YXRlUXVhbGl0eUdhdGVzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhMKC2Vudmlyb25tZW50GAMgASgJEhQKDHRlc3RfcnVuX2lkcxgEIAMoCRJWCg5tZXRyaWNzX2J5X3J1bhgFIAMoCzI+LmZlcm1hdGEudjEuQmF0Y2hFdmFsdWF0ZVF1YWxpdHlHYXRlc1JlcXVlc3QuTWV0cmljc0J5UnVuRW50cnkSLQoGY29uZmlnGAYgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZxIUCgdwZXJzaXN0GAcgASgISACIAQEaTAoRTWV0cmljc0J5UnVuRW50cnkSCwoDa2V5GAEgASgJEiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdDoCOAFCCgoIX3BlcnNpc3QiwQEKIUJhdGNoRXZhbHVhdGVRdWFsaXR5R2F0ZXNSZXNwb25zZRIgCg90b3RhbF9wcm9jZXNzZWQYASABKAVCB7pIBBoCKAASGwoKc3VjY2Vzc2Z1bBgCIAEoBUIHukgEGgIoABIXCgZmYWlsZWQYAyABKAVCB7pIBBoCKAASLgoHcmVzdWx0cxgEIAMoCzIdLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVSZXN1bHQSFAoMbmV4dF9hY3Rpb25zGAUgAygJImMKH0dldFF1YWxpdHlHYXRlRXZhbHVhdGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh4KDWV2YWx1YXRpb25faWQYAiABKAlCB7pIBHICEAEiVQogR2V0UXVhbGl0eUdhdGVFdmFsdWF0aW9uUmVzcG9uc2USMQoKZXZhbHVhdGlvbhgBIAEoCzIdLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVSZXN1bHQiwgEKHUxpc3RRdWFsaXR5R2F0ZVJlc3VsdHNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLZW52aXJvbm1lbnQYAyABKAkSDgoGc3RhdHVzGAQgASgJEhMKC3Rlc3RfcnVuX2lkGAUgASgJEhYKBWxpbWl0GAYgASgFQge6SAQaAigAEhcKBm9mZnNldBgHIAEoBUIHukgEGgIoACKHAQoeTGlzdFF1YWxpdHlHYXRlUmVzdWx0c1Jlc3BvbnNlEi4KB3Jlc3VsdHMYASADKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUmVzdWx0EjUKCnBhZ2luYXRpb24YAiABKAsyIS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUGFnaW5hdGlvbiJtChxHZXRRdWFsaXR5R2F0ZU1ldHJpY3NSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFQoEZGF5cxgDIAEoBUIHukgEGgIoACK7AQodR2V0UXVhbGl0eUdhdGVNZXRyaWNzUmVzcG9uc2USDgoGcGVyaW9kGAEgASgJEi0KDHRlc3RfbWV0cmljcxgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMQoQY3JpdGVyaWFfcmVzdWx0cxgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKAoHc3VtbWFyeRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QigAEKGkdldFF1YWxpdHlHYXRlU3RhdHNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLZW52aXJvbm1lbnQYAyABKAkSFQoEZGF5cxgEIAEoBUIHukgEGgIoACLcAQobR2V0UXVhbGl0eUdhdGVTdGF0c1Jlc3BvbnNlEg4KBnBlcmlvZBgBIAEoCRIoCgdzdW1tYXJ5GAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBInCgZ0cmVuZHMYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei8KDmJ5X2Vudmlyb25tZW50GAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCgh0aW1lbGluZRgFIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiZgogVmFsaWRhdGVRdWFsaXR5R2F0ZUNvbmZpZ1JlcXVlc3QSEwoLZW52aXJvbm1lbnQYASABKAkSLQoGY29uZmlnGAIgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZyK8AQohVmFsaWRhdGVRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlEg0KBXZhbGlkGAEgASgIEg4KBmVycm9ycxgCIAMoCRIQCgh3YXJuaW5ncxgDIAMoCRIXCg9yZWNvbW1lbmRhdGlvbnMYBCADKAkSEwoLZW52aXJvbm1lbnQYBSABKAkSOAoRbm9ybWFsaXplZF9jb25maWcYBiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnInMKIVF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFdhaXZlchIOCgZtZXRyaWMYASABKAkSDgoGcmVhc29uGAIgASgJEi4KCmV4cGlyZXNfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIrkCCipFdmFsdWF0ZVF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFJlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEikKCGJhc2VsaW5lGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIqCgljYW5kaWRhdGUYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EigKB2J1ZGdldHMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhgKEGhpZ2hlcl9pc19iZXR0ZXIYBSADKAkSFwoPbG93ZXJfaXNfYmV0dGVyGAYgAygJEj4KB3dhaXZlcnMYByADKAsyLS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFdhaXZlciLoAQorRXZhbHVhdGVRdWFsaXR5R2F0ZVJlZ3Jlc3Npb25CdWRnZXRSZXNwb25zZRIQCghkZWNpc2lvbhgBIAEoCRIRCglwYXNzX2dhdGUYAiABKAgSDwoHYmxvY2tlZBgDIAEoCBIoChd0b3RhbF9tZXRyaWNzX2V2YWx1YXRlZBgEIAEoBUIHukgEGgIoABIfCg50b3RhbF9icmVhY2hlcxgFIAEoBUIHukgEGgIoABIpCghicmVhY2hlcxgGIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDQoFbm90ZXMYByADKAkiMQohRXZhbHVhdGVQdWJsaWNGZWF0dXJlRmxhZ3NSZXF1ZXN0EgwKBGtleXMYASADKAkinAEKIkV2YWx1YXRlUHVibGljRmVhdHVyZUZsYWdzUmVzcG9uc2USSAoFZmxhZ3MYASADKAsyOS5mZXJtYXRhLnYxLkV2YWx1YXRlUHVibGljRmVhdHVyZUZsYWdzUmVzcG9uc2UuRmxhZ3NFbnRyeRosCgpGbGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEiGwoZR2V0TWlncmF0aW9uU3RhdHVzUmVxdWVzdCJcChRSb3V0ZU1pZ3JhdGlvblN0YXR1cxITCgtwYXRoX3ByZWZpeBgBIAEoCRIQCghtaWdyYXRlZBgCIAEoCBIdChVwcm94aWVkX3JlcXVlc3RfY291bnQYAyABKAMiTgoaR2V0TWlncmF0aW9uU3RhdHVzUmVzcG9uc2USMAoGcm91dGVzGAEgAygLMiAuZmVybWF0YS52MS5Sb3V0ZU1pZ3JhdGlvblN0YXR1cyqlBgoNQXNzZXJ0aW9uS2luZBIeChpBU1NFUlRJT05fS0lORF9VTlNQRUNJRklFRBAAEhsKF0FTU0VSVElPTl9LSU5EX0NPTlRBSU5TEAESHwobQVNTRVJUSU9OX0tJTkRfTk9UX0NPTlRBSU5TEAISGAoUQVNTRVJUSU9OX0tJTkRfUkVHRVgQAxIdChlBU1NFUlRJT05fS0lORF9TSU1JTEFSSVRZEAQSHwobQVNTRVJUSU9OX0tJTkRfQ1VTVE9NX0pVREdFEAUSHgoaQVNTRVJUSU9OX0tJTkRfSlNPTl9TQ0hFTUEQBhIZChVBU1NFUlRJT05fS0lORF9FUVVBTFMQBxIeChpBU1NFUlRJT05fS0lORF9TVEFSVFNfV0lUSBAIEh8KG0FTU0VSVElPTl9LSU5EX0NPTlRBSU5TX0FOWRAJEh8KG0FTU0VSVElPTl9LSU5EX0NPTlRBSU5TX0FMTBAKEh0KGUFTU0VSVElPTl9LSU5EX1dPUkRfQ09VTlQQCxIeChpBU1NFUlRJT05fS0lORF9OVU1FUklDX0dURRAMEh4KGkFTU0VSVElPTl9LSU5EX05VTUVSSUNfTFRFEA0SHgoaQVNTRVJUSU9OX0tJTkRfVE9PTF9DQUxMRUQQDhIiCh5BU1NFUlRJT05fS0lORF9UT09MX05PVF9DQUxMRUQQDxIgChxBU1NFUlRJT05fS0lORF9UT09MX1NFUVVFTkNFEBASIwofQVNTRVJUSU9OX0tJTkRfVFJBQ0VfU1BBTl9DT1VOVBAREiIKHkFTU0VSVElPTl9LSU5EX1RPT0xfQVJHU19NQVRDSBASEiQKIEFTU0VSVElPTl9LSU5EX1RSQUNFX0VSUk9SX1NQQU5TEBMSJgoiQVNTRVJUSU9OX0tJTkRfVFJBQ0VfU1BBTl9EVVJBVElPThAUEiMKH0FTU0VSVElPTl9LSU5EX1RSQUNFX1NURVBfQ09VTlQQFRIfChtBU1NFUlRJT05fS0lORF9UT09MX0NBTExfRjEQFhIdChlBU1NFUlRJT05fS0lORF9MTE1fUlVCUklDEBcqiAEKCUp1ZGdlS2luZBIaChZKVURHRV9LSU5EX1VOU1BFQ0lGSUVEEAASEgoOSlVER0VfS0lORF9MTE0QARIZChVKVURHRV9LSU5EX1JVTEVfQkFTRUQQAhIZChVKVURHRV9LSU5EX1NJTUlMQVJJVFkQAxIVChFKVURHRV9LSU5EX0NVU1RPTRAEKpMCChdTY2VuYXJpb0Vudmlyb25tZW50S2luZBIpCiVTQ0VOQVJJT19FTlZJUk9OTUVOVF9LSU5EX1VOU1BFQ0lGSUVEEAASJAogU0NFTkFSSU9fRU5WSVJPTk1FTlRfS0lORF9SRVBMQVkQARImCiJTQ0VOQVJJT19FTlZJUk9OTUVOVF9LSU5EX1NUQVJMQVJLEAISJwojU0NFTkFSSU9fRU5WSVJPTk1FTlRfS0lORF9NT0NLX0hUVFAQAxIlCiFTQ0VOQVJJT19FTlZJUk9OTUVOVF9LSU5EX1NBTkRCT1gQBBIvCitTQ0VOQVJJT19FTlZJUk9OTUVOVF9LSU5EX1BST0RVQ1RJT05fU0hBRE9XEAUqpwIKFVVzZXJTaW11bGF0b3JTdHJhdGVneRInCiNVU0VSX1NJTVVMQVRPUl9TVFJBVEVHWV9VTlNQRUNJRklFRBAAEicKI1VTRVJfU0lNVUxBVE9SX1NUUkFURUdZX0NPT1BFUkFUSVZFEAESIQodVVNFUl9TSU1VTEFUT1JfU1RSQVRFR1lfUkVBQ1QQAhIiCh5VU0VSX1NJTVVMQVRPUl9TVFJBVEVHWV9WRVJJRlkQAxImCiJVU0VSX1NJTVVMQVRPUl9TVFJBVEVHWV9SRUZMRUNUSU9OEAQSJwojVVNFUl9TSU1VTEFUT1JfU1RSQVRFR1lfQURWRVJTQVJJQUwQBRIkCiBVU0VSX1NJTVVMQVRPUl9TVFJBVEVHWV9DT05GVVNFRBAGKrYCChRPdXRjb21lQ3JpdGVyaW9uS2luZBImCiJPVVRDT01FX0NSSVRFUklPTl9LSU5EX1VOU1BFQ0lGSUVEEAASJgoiT1VUQ09NRV9DUklURVJJT05fS0lORF9GSU5BTF9TVEFURRABEioKJk9VVENPTUVfQ1JJVEVSSU9OX0tJTkRfVEFTS19DT01QTEVUSU9OEAISJQohT1VUQ09NRV9DUklURVJJT05fS0lORF9UUkFKRUNUT1JZEAMSJgoiT1VUQ09NRV9DUklURVJJT05fS0lORF9DT1NUX0JVREdFVBAEEikKJU9VVENPTUVfQ1JJVEVSSU9OX0tJTkRfTEFURU5DWV9CVURHRVQQBRIoCiRPVVRDT01FX0NSSVRFUklPTl9LSU5EX1FVQUxJVFlfU0NPUkUQBiq6AwoXR292ZXJuYW5jZUFzc2VydGlvblR5cGUSKQolR09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9VTlNQRUNJRklFRBAAEjEKLUdPVkVSTkFOQ0VfQVNTRVJUSU9OX1RZUEVfRVNDQUxBVElPTl9SRVFVSVJFRBABEjMKL0dPVkVSTkFOQ0VfQVNTRVJUSU9OX1RZUEVfQVVUT19QUk9DRUVEX0VYUEVDVEVEEAISMQotR09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9SSVNLX0NMQVNTSUZJQ0FUSU9OEAMSMgouR09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9EQVRBX0FDQ0VTU19CT1VOREFSWRAEEjgKNEdPVkVSTkFOQ0VfQVNTRVJUSU9OX1RZUEVfR09WRVJOQU5DRV9CTE9DS19SRVNQRUNURUQQBRIzCi9HT1ZFUk5BTkNFX0FTU0VSVElPTl9UWVBFX1NFTEZfQVBQUk9WQUxfQkxPQ0tFRBAGEjYKMkdPVkVSTkFOQ0VfQVNTRVJUSU9OX1RZUEVfUElJX0RFVEVDVEVEX0FORF9IQU5ETEVEEAcqgAMKF0RlbGVnYXRpb25Bc3NlcnRpb25UeXBlEikKJURFTEVHQVRJT05fQVNTRVJUSU9OX1RZUEVfVU5TUEVDSUZJRUQQABI3CjNERUxFR0FUSU9OX0FTU0VSVElPTl9UWVBFX0RFTEVHQVRJT05fVEFSR0VUX0NPUlJFQ1QQARIyCi5ERUxFR0FUSU9OX0FTU0VSVElPTl9UWVBFX0NPTlRFWFRfUFJFU0VSVkFUSU9OEAISMgouREVMRUdBVElPTl9BU1NFUlRJT05fVFlQRV9ERUxFR0FUSU9OX1ZBTFVFX0FERBADEjUKMURFTEVHQVRJT05fQVNTRVJUSU9OX1RZUEVfREVMRUdBVElPTl9DT1NUX0JPVU5ERUQQBBIxCi1ERUxFR0FUSU9OX0FTU0VSVElPTl9UWVBFX0NIQUlOX0RFUFRIX0JPVU5ERUQQBRIvCitERUxFR0FUSU9OX0FTU0VSVElPTl9UWVBFX0ZBSUxVUkVfSVNPTEFUSU9OEAYq/AEKEVNjZW5hcmlvUnVuU3RhdHVzEiMKH1NDRU5BUklPX1JVTl9TVEFUVVNfVU5TUEVDSUZJRUQQABIfChtTQ0VOQVJJT19SVU5fU1RBVFVTX1BFTkRJTkcQARIfChtTQ0VOQVJJT19SVU5fU1RBVFVTX1JVTk5JTkcQAhIeChpTQ0VOQVJJT19SVU5fU1RBVFVTX1BBU1NFRBADEh4KGlNDRU5BUklPX1JVTl9TVEFUVVNfRkFJTEVEEAQSHQoZU0NFTkFSSU9fUlVOX1NUQVRVU19FUlJPUhAFEiEKHVNDRU5BUklPX1JVTl9TVEFUVVNfQ0FOQ0VMTEVEEAYqlQEKFkRpYWdub3N0aWNBcnRpZmFjdEtpbmQSKAokRElBR05PU1RJQ19BUlRJRkFDVF9LSU5EX1VOU1BFQ0lGSUVEEAASKAokRElBR05PU1RJQ19BUlRJRkFDVF9LSU5EX0VYUExBTkFUSU9OEAESJwojRElBR05PU1RJQ19BUlRJRkFDVF9LSU5EX1JPT1RfQ0FVU0UQAiq+AQoZRGlhZ25vc3RpY0ZpbmRpbmdTZXZlcml0eRIrCidESUFHTk9TVElDX0ZJTkRJTkdfU0VWRVJJVFlfVU5TUEVDSUZJRUQQABIkCiBESUFHTk9TVElDX0ZJTkRJTkdfU0VWRVJJVFlfSU5GTxABEicKI0RJQUdOT1NUSUNfRklORElOR19TRVZFUklUWV9XQVJOSU5HEAISJQohRElBR05PU1RJQ19GSU5ESU5HX1NFVkVSSVRZX0VSUk9SEAMq6wEKGUFnZW50U2Vzc2lvbkNvbnRyb2xBY3Rpb24SLAooQUdFTlRfU0VTU0lPTl9DT05UUk9MX0FDVElPTl9VTlNQRUNJRklFRBAAEiYKIkFHRU5UX1NFU1NJT05fQ09OVFJPTF9BQ1RJT05fUEFVU0UQARInCiNBR0VOVF9TRVNTSU9OX0NPTlRST0xfQUNUSU9OX1JFU1VNRRACEicKI0FHRU5UX1NFU1NJT05fQ09OVFJPTF9BQ1RJT05fQ0FOQ0VMEAMSJgoiQUdFTlRfU0VTU0lPTl9DT05UUk9MX0FDVElPTl9SRVRSWRAEKokBChVBZ2VudEFwcHJvdmFsRGVjaXNpb24SJwojQUdFTlRfQVBQUk9WQUxfREVDSVNJT05fVU5TUEVDSUZJRUQQABIjCh9BR0VOVF9BUFBST1ZBTF9ERUNJU0lPTl9BUFBST1ZFEAESIgoeQUdFTlRfQVBQUk9WQUxfREVDSVNJT05fUkVKRUNUEAIy3GAKDkZlcm1hdGFTZXJ2aWNlEoQBCg9DcmVhdGVUZXN0U3VpdGUSIi5mZXJtYXRhLnYxLkNyZWF0ZVRlc3RTdWl0ZVJlcXVlc3QaIy5mZXJtYXRhLnYxLkNyZWF0ZVRlc3RTdWl0ZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEnoKDEdldFRlc3RTdWl0ZRIfLmZlcm1hdGEudjEuR2V0VGVzdFN1aXRlUmVxdWVzdBogLmZlcm1hdGEudjEuR2V0VGVzdFN1aXRlUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKAAQoOTGlzdFRlc3RTdWl0ZXMSIS5mZXJtYXRhLnYxLkxpc3RUZXN0U3VpdGVzUmVxdWVzdBoiLmZlcm1hdGEudjEuTGlzdFRlc3RTdWl0ZXNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEoEBCg5DcmVhdGVTY2VuYXJpbxIhLmZlcm1hdGEudjEuQ3JlYXRlU2NlbmFyaW9SZXF1ZXN0GiIuZmVybWF0YS52MS5DcmVhdGVTY2VuYXJpb1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEncKC0dldFNjZW5hcmlvEh4uZmVybWF0YS52MS5HZXRTY2VuYXJpb1JlcXVlc3QaHy5mZXJtYXRhLnYxLkdldFNjZW5hcmlvUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBJ9Cg1MaXN0U2NlbmFyaW9zEiAuZmVybWF0YS52MS5MaXN0U2NlbmFyaW9zUmVxdWVzdBohLmZlcm1hdGEudjEuTGlzdFNjZW5hcmlvc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSlQEKE0NyZWF0ZUFnZW50VGFza0V2YWwSJi5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50VGFza0V2YWxSZXF1ZXN0GicuZmVybWF0YS52MS5DcmVhdGVBZ2VudFRhc2tFdmFsUmVzcG9uc2UiLcrzGA1mZXJtYXRhOndyaXRl2PMYAurzGBRldmFsLm9yZ2FuaXphdGlvbl9pZBKMAQoQUnVuQWdlbnRUYXNrRXZhbBIjLmZlcm1hdGEudjEuUnVuQWdlbnRUYXNrRXZhbFJlcXVlc3QaJC5mZXJtYXRhLnYxLlJ1bkFnZW50VGFza0V2YWxSZXNwb25zZSItyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYFGV2YWwub3JnYW5pemF0aW9uX2lkEoABCg5MaXN0QWdlbnRUb29scxIhLmZlcm1hdGEudjEuTGlzdEFnZW50VG9vbHNSZXF1ZXN0GiIuZmVybWF0YS52MS5MaXN0QWdlbnRUb29sc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSkAEKE0FuYWx5emVBZ2VudEFjdGlvbnMSJi5mZXJtYXRhLnYxLkFuYWx5emVBZ2VudEFjdGlvbnNSZXF1ZXN0GicuZmVybWF0YS52MS5BbmFseXplQWdlbnRBY3Rpb25zUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSoQEKGUJ1aWxkQWdlbnRTZXNzaW9uVGltZWxpbmUSLC5mZXJtYXRhLnYxLkJ1aWxkQWdlbnRTZXNzaW9uVGltZWxpbmVSZXF1ZXN0Gi0uZmVybWF0YS52MS5CdWlsZEFnZW50U2Vzc2lvblRpbWVsaW5lUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKkAQoaTGlzdEFnZW50V29ya2Zsb3dUZW1wbGF0ZXMSLS5mZXJtYXRhLnYxLkxpc3RBZ2VudFdvcmtmbG93VGVtcGxhdGVzUmVxdWVzdBouLmZlcm1hdGEudjEuTGlzdEFnZW50V29ya2Zsb3dUZW1wbGF0ZXNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkErQBCh9DcmVhdGVBZ2VudFdvcmtmbG93RnJvbVRlbXBsYXRlEjIuZmVybWF0YS52MS5DcmVhdGVBZ2VudFdvcmtmbG93RnJvbVRlbXBsYXRlUmVxdWVzdBozLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRXb3JrZmxvd0Zyb21UZW1wbGF0ZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpABChNDcmVhdGVBZ2VudFdvcmtmbG93EiYuZmVybWF0YS52MS5DcmVhdGVBZ2VudFdvcmtmbG93UmVxdWVzdBonLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRXb3JrZmxvd1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEoYBChBHZXRBZ2VudFdvcmtmbG93EiMuZmVybWF0YS52MS5HZXRBZ2VudFdvcmtmbG93UmVxdWVzdBokLmZlcm1hdGEudjEuR2V0QWdlbnRXb3JrZmxvd1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSjAEKEkxpc3RBZ2VudFdvcmtmbG93cxIlLmZlcm1hdGEudjEuTGlzdEFnZW50V29ya2Zsb3dzUmVxdWVzdBomLmZlcm1hdGEudjEuTGlzdEFnZW50V29ya2Zsb3dzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTVXBkYXRlQWdlbnRXb3JrZmxvdxImLmZlcm1hdGEudjEuVXBkYXRlQWdlbnRXb3JrZmxvd1JlcXVlc3QaJy5mZXJtYXRhLnYxLlVwZGF0ZUFnZW50V29ya2Zsb3dSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTRGVsZXRlQWdlbnRXb3JrZmxvdxImLmZlcm1hdGEudjEuRGVsZXRlQWdlbnRXb3JrZmxvd1JlcXVlc3QaJy5mZXJtYXRhLnYxLkRlbGV0ZUFnZW50V29ya2Zsb3dSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKHAQoQUnVuQWdlbnRXb3JrZmxvdxIjLmZlcm1hdGEudjEuUnVuQWdlbnRXb3JrZmxvd1JlcXVlc3QaJC5mZXJtYXRhLnYxLlJ1bkFnZW50V29ya2Zsb3dSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgD6vMYD29yZ2FuaXphdGlvbl9pZBKEAQoPQ3JlYXRlQWdlbnRIb29rEiIuZmVybWF0YS52MS5DcmVhdGVBZ2VudEhvb2tSZXF1ZXN0GiMuZmVybWF0YS52MS5DcmVhdGVBZ2VudEhvb2tSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKAAQoOTGlzdEFnZW50SG9va3MSIS5mZXJtYXRhLnYxLkxpc3RBZ2VudEhvb2tzUmVxdWVzdBoiLmZlcm1hdGEudjEuTGlzdEFnZW50SG9va3NSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEoQBCg9VcGRhdGVBZ2VudEhvb2sSIi5mZXJtYXRhLnYxLlVwZGF0ZUFnZW50SG9va1JlcXVlc3QaIy5mZXJtYXRhLnYxLlVwZGF0ZUFnZW50SG9va1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEoQBCg9EZWxldGVBZ2VudEhvb2sSIi5mZXJtYXRhLnYxLkRlbGV0ZUFnZW50SG9va1JlcXVlc3QaIy5mZXJtYXRhLnYxLkRlbGV0ZUFnZW50SG9va1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEoMBCg9HZXRBZ2VudFNlc3Npb24SIi5mZXJtYXRhLnYxLkdldEFnZW50U2Vzc2lvblJlcXVlc3QaIy5mZXJtYXRhLnYxLkdldEFnZW50U2Vzc2lvblJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSiQEKEUxpc3RBZ2VudFNlc3Npb25zEiQuZmVybWF0YS52MS5MaXN0QWdlbnRTZXNzaW9uc1JlcXVlc3QaJS5mZXJtYXRhLnYxLkxpc3RBZ2VudFNlc3Npb25zUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTQ29udHJvbEFnZW50U2Vzc2lvbhImLmZlcm1hdGEudjEuQ29udHJvbEFnZW50U2Vzc2lvblJlcXVlc3QaJy5mZXJtYXRhLnYxLkNvbnRyb2xBZ2VudFNlc3Npb25SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgD6vMYD29yZ2FuaXphdGlvbl9pZBKcAQoXQ3JlYXRlQWdlbnRTZXNzaW9uRXZlbnQSKi5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50U2Vzc2lvbkV2ZW50UmVxdWVzdBorLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRTZXNzaW9uRXZlbnRSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKYAQoWTGlzdEFnZW50U2Vzc2lvbkV2ZW50cxIpLmZlcm1hdGEudjEuTGlzdEFnZW50U2Vzc2lvbkV2ZW50c1JlcXVlc3QaKi5mZXJtYXRhLnYxLkxpc3RBZ2VudFNlc3Npb25FdmVudHNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEp8BChhDcmVhdGVBZ2VudFRvb2xFeGVjdXRpb24SKy5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlcXVlc3QaLC5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgPb3JnYW5pemF0aW9uX2lkEp8BChhVcGRhdGVBZ2VudFRvb2xFeGVjdXRpb24SKy5mZXJtYXRhLnYxLlVwZGF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlcXVlc3QaLC5mZXJtYXRhLnYxLlVwZGF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgPb3JnYW5pemF0aW9uX2lkEpsBChdMaXN0QWdlbnRUb29sRXhlY3V0aW9ucxIqLmZlcm1hdGEudjEuTGlzdEFnZW50VG9vbEV4ZWN1dGlvbnNSZXF1ZXN0GisuZmVybWF0YS52MS5MaXN0QWdlbnRUb29sRXhlY3V0aW9uc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSkAEKE0RlY2lkZUFnZW50QXBwcm92YWwSJi5mZXJtYXRhLnYxLkRlY2lkZUFnZW50QXBwcm92YWxSZXF1ZXN0GicuZmVybWF0YS52MS5EZWNpZGVBZ2VudEFwcHJvdmFsUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYA+rzGA9vcmdhbml6YXRpb25faWQSjAEKEkxpc3RBZ2VudEFwcHJvdmFscxIlLmZlcm1hdGEudjEuTGlzdEFnZW50QXBwcm92YWxzUmVxdWVzdBomLmZlcm1hdGEudjEuTGlzdEFnZW50QXBwcm92YWxzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKbAQoXR2V0QWdlbnRTZXNzaW9uVGltZWxpbmUSKi5mZXJtYXRhLnYxLkdldEFnZW50U2Vzc2lvblRpbWVsaW5lUmVxdWVzdBorLmZlcm1hdGEudjEuR2V0QWdlbnRTZXNzaW9uVGltZWxpbmVSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpYBChVVcHNlcnRDdXN0b21FdmFsdWF0b3ISKC5mZXJtYXRhLnYxLlVwc2VydEN1c3RvbUV2YWx1YXRvclJlcXVlc3QaKS5mZXJtYXRhLnYxLlVwc2VydEN1c3RvbUV2YWx1YXRvclJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEowBChJHZXRDdXN0b21FdmFsdWF0b3ISJS5mZXJtYXRhLnYxLkdldEN1c3RvbUV2YWx1YXRvclJlcXVlc3QaJi5mZXJtYXRhLnYxLkdldEN1c3RvbUV2YWx1YXRvclJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSkgEKFExpc3RDdXN0b21FdmFsdWF0b3JzEicuZmVybWF0YS52MS5MaXN0Q3VzdG9tRXZhbHVhdG9yc1JlcXVlc3QaKC5mZXJtYXRhLnYxLkxpc3RDdXN0b21FdmFsdWF0b3JzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKWAQoVRGVsZXRlQ3VzdG9tRXZhbHVhdG9yEiguZmVybWF0YS52MS5EZWxldGVDdXN0b21FdmFsdWF0b3JSZXF1ZXN0GikuZmVybWF0YS52MS5EZWxldGVDdXN0b21FdmFsdWF0b3JSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBJ4CgtVcHNlcnRKdWRnZRIeLmZlcm1hdGEudjEuVXBzZXJ0SnVkZ2VSZXF1ZXN0Gh8uZmVybWF0YS52MS5VcHNlcnRKdWRnZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEm4KCEdldEp1ZGdlEhsuZmVybWF0YS52MS5HZXRKdWRnZVJlcXVlc3QaHC5mZXJtYXRhLnYxLkdldEp1ZGdlUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBJ0CgpMaXN0SnVkZ2VzEh0uZmVybWF0YS52MS5MaXN0SnVkZ2VzUmVxdWVzdBoeLmZlcm1hdGEudjEuTGlzdEp1ZGdlc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSeAoLRGVsZXRlSnVkZ2USHi5mZXJtYXRhLnYxLkRlbGV0ZUp1ZGdlUmVxdWVzdBofLmZlcm1hdGEudjEuRGVsZXRlSnVkZ2VSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBJ+Cg1TdGFydFNjZW5hcmlvEiAuZmVybWF0YS52MS5TdGFydFNjZW5hcmlvUmVxdWVzdBohLmZlcm1hdGEudjEuU3RhcnRTY2VuYXJpb1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgPb3JnYW5pemF0aW9uX2lkEqIBChZDcmVhdGVBbmRTdGFydFNjZW5hcmlvEikuZmVybWF0YS52MS5DcmVhdGVBbmRTdGFydFNjZW5hcmlvUmVxdWVzdBoqLmZlcm1hdGEudjEuQ3JlYXRlQW5kU3RhcnRTY2VuYXJpb1Jlc3BvbnNlIjHK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgYc2NlbmFyaW8ub3JnYW5pemF0aW9uX2lkEooBChFSZWNvcmRTY2VuYXJpb1J1bhIkLmZlcm1hdGEudjEuUmVjb3JkU2NlbmFyaW9SdW5SZXF1ZXN0GiUuZmVybWF0YS52MS5SZWNvcmRTY2VuYXJpb1J1blJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEoABCg5HZXRTY2VuYXJpb1J1bhIhLmZlcm1hdGEudjEuR2V0U2NlbmFyaW9SdW5SZXF1ZXN0GiIuZmVybWF0YS52MS5HZXRTY2VuYXJpb1J1blJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQShgEKEExpc3RTY2VuYXJpb1J1bnMSIy5mZXJtYXRhLnYxLkxpc3RTY2VuYXJpb1J1bnNSZXF1ZXN0GiQuZmVybWF0YS52MS5MaXN0U2NlbmFyaW9SdW5zUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBK/AQojR2V0RXZhbHVhdGlvbk9ic2VydmFiaWxpdHlEYXNoYm9hcmQSNi5mZXJtYXRhLnYxLkdldEV2YWx1YXRpb25PYnNlcnZhYmlsaXR5RGFzaGJvYXJkUmVxdWVzdBo3LmZlcm1hdGEudjEuR2V0RXZhbHVhdGlvbk9ic2VydmFiaWxpdHlEYXNoYm9hcmRSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpsBChdHZXRFdmFsdWF0aW9uUnVuTWV0cmljcxIqLmZlcm1hdGEudjEuR2V0RXZhbHVhdGlvblJ1bk1ldHJpY3NSZXF1ZXN0GisuZmVybWF0YS52MS5HZXRFdmFsdWF0aW9uUnVuTWV0cmljc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSpQEKGkNyZWF0ZUV2YWx1YXRpb25Db21wYXJpc29uEi0uZmVybWF0YS52MS5DcmVhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QaLi5mZXJtYXRhLnYxLkNyZWF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSmwEKF0dldEV2YWx1YXRpb25Db21wYXJpc29uEiouZmVybWF0YS52MS5HZXRFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QaKy5mZXJtYXRhLnYxLkdldEV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKhAQoZTGlzdEV2YWx1YXRpb25Db21wYXJpc29ucxIsLmZlcm1hdGEudjEuTGlzdEV2YWx1YXRpb25Db21wYXJpc29uc1JlcXVlc3QaLS5mZXJtYXRhLnYxLkxpc3RFdmFsdWF0aW9uQ29tcGFyaXNvbnNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEqUBChpVcGRhdGVFdmFsdWF0aW9uQ29tcGFyaXNvbhItLmZlcm1hdGEudjEuVXBkYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXF1ZXN0Gi4uZmVybWF0YS52MS5VcGRhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEqUBChpEZWxldGVFdmFsdWF0aW9uQ29tcGFyaXNvbhItLmZlcm1hdGEudjEuRGVsZXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXF1ZXN0Gi4uZmVybWF0YS52MS5EZWxldGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkErEBCh5SZWdlbmVyYXRlRXZhbHVhdGlvbkNvbXBhcmlzb24SMS5mZXJtYXRhLnYxLlJlZ2VuZXJhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QaMi5mZXJtYXRhLnYxLlJlZ2VuZXJhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEq0BCh1HZXRFdmFsdWF0aW9uR292ZXJuYW5jZVJlcG9ydBIwLmZlcm1hdGEudjEuR2V0RXZhbHVhdGlvbkdvdmVybmFuY2VSZXBvcnRSZXF1ZXN0GjEuZmVybWF0YS52MS5HZXRFdmFsdWF0aW9uR292ZXJuYW5jZVJlcG9ydFJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQShwEKEEJ1aWxkUmVkVGVhbVBsYW4SIy5mZXJtYXRhLnYxLkJ1aWxkUmVkVGVhbVBsYW5SZXF1ZXN0GiQuZmVybWF0YS52MS5CdWlsZFJlZFRlYW1QbGFuUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSjwEKE0xpc3RSZWRUZWFtRGF0YXNldHMSJi5mZXJtYXRhLnYxLkxpc3RSZWRUZWFtRGF0YXNldHNSZXF1ZXN0GicuZmVybWF0YS52MS5MaXN0UmVkVGVhbURhdGFzZXRzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKNAQoSQnVpbGRSZWRUZWFtUmVwb3J0EiUuZmVybWF0YS52MS5CdWlsZFJlZFRlYW1SZXBvcnRSZXF1ZXN0GiYuZmVybWF0YS52MS5CdWlsZFJlZFRlYW1SZXBvcnRSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKNAQoSUHJvbW90ZURhdGFzZXRJdGVtEiUuZmVybWF0YS52MS5Qcm9tb3RlRGF0YXNldEl0ZW1SZXF1ZXN0GiYuZmVybWF0YS52MS5Qcm9tb3RlRGF0YXNldEl0ZW1SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTUHJvbW90ZURhdGFzZXRJdGVtcxImLmZlcm1hdGEudjEuUHJvbW90ZURhdGFzZXRJdGVtc1JlcXVlc3QaJy5mZXJtYXRhLnYxLlByb21vdGVEYXRhc2V0SXRlbXNSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKNAQoSQnVpbGRHb2xkZW5EYXRhc2V0EiUuZmVybWF0YS52MS5CdWlsZEdvbGRlbkRhdGFzZXRSZXF1ZXN0GiYuZmVybWF0YS52MS5CdWlsZEdvbGRlbkRhdGFzZXRSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKZAQoWSW5nZXN0UHJvZHVjdGlvblRyYWNlcxIpLmZlcm1hdGEudjEuSW5nZXN0UHJvZHVjdGlvblRyYWNlc1JlcXVlc3QaKi5mZXJtYXRhLnYxLkluZ2VzdFByb2R1Y3Rpb25UcmFjZXNSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBLAAQojQnVpbGRQcm9kdWN0aW9uVHJhY2VSZWdyZXNzaW9uU3VpdGUSNi5mZXJtYXRhLnYxLkJ1aWxkUHJvZHVjdGlvblRyYWNlUmVncmVzc2lvblN1aXRlUmVxdWVzdBo3LmZlcm1hdGEudjEuQnVpbGRQcm9kdWN0aW9uVHJhY2VSZWdyZXNzaW9uU3VpdGVSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKkAQoaTGlzdFByb2R1Y3Rpb25UcmFjZVNhbXBsZXMSLS5mZXJtYXRhLnYxLkxpc3RQcm9kdWN0aW9uVHJhY2VTYW1wbGVzUmVxdWVzdBouLmZlcm1hdGEudjEuTGlzdFByb2R1Y3Rpb25UcmFjZVNhbXBsZXNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEqsBChxDb21wYXJlUHJvZHVjdGlvblRyYWNlUmVwbGF5Ei8uZmVybWF0YS52MS5Db21wYXJlUHJvZHVjdGlvblRyYWNlUmVwbGF5UmVxdWVzdBowLmZlcm1hdGEudjEuQ29tcGFyZVByb2R1Y3Rpb25UcmFjZVJlcGxheVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEoYBChBQcmV2aWV3QXNzZXJ0aW9uEiMuZmVybWF0YS52MS5QcmV2aWV3QXNzZXJ0aW9uUmVxdWVzdBokLmZlcm1hdGEudjEuUHJldmlld0Fzc2VydGlvblJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSqgEKHFByZXZpZXdTY2VuYXJpb1J1bkFzc2VydGlvbnMSLy5mZXJtYXRhLnYxLlByZXZpZXdTY2VuYXJpb1J1bkFzc2VydGlvbnNSZXF1ZXN0GjAuZmVybWF0YS52MS5QcmV2aWV3U2NlbmFyaW9SdW5Bc3NlcnRpb25zUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKrAQocUHJvbW90ZUV2YWx1YXRpb25Ub0d1YXJkcmFpbBIvLmZlcm1hdGEudjEuUHJvbW90ZUV2YWx1YXRpb25Ub0d1YXJkcmFpbFJlcXVlc3QaMC5mZXJtYXRhLnYxLlByb21vdGVFdmFsdWF0aW9uVG9HdWFyZHJhaWxSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgD6vMYD29yZ2FuaXphdGlvbl9pZBKVAQoVR2V0R3VhcmRyYWlsUHJvbW90aW9uEiguZmVybWF0YS52MS5HZXRHdWFyZHJhaWxQcm9tb3Rpb25SZXF1ZXN0GikuZmVybWF0YS52MS5HZXRHdWFyZHJhaWxQcm9tb3Rpb25SZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpwBChdTY29yZUd1YXJkcmFpbFByb21vdGlvbhIqLmZlcm1hdGEudjEuU2NvcmVHdWFyZHJhaWxQcm9tb3Rpb25SZXF1ZXN0GisuZmVybWF0YS52MS5TY29yZUd1YXJkcmFpbFByb21vdGlvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEowBChJFeHBsYWluU2NlbmFyaW9SdW4SJS5mZXJtYXRhLnYxLkV4cGxhaW5TY2VuYXJpb1J1blJlcXVlc3QaJi5mZXJtYXRhLnYxLkV4cGxhaW5TY2VuYXJpb1J1blJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAurzGA9vcmdhbml6YXRpb25faWQSpwEKG0FuYWx5emVTY2VuYXJpb1J1blJvb3RDYXVzZRIuLmZlcm1hdGEudjEuQW5hbHl6ZVNjZW5hcmlvUnVuUm9vdENhdXNlUmVxdWVzdBovLmZlcm1hdGEudjEuQW5hbHl6ZVNjZW5hcmlvUnVuUm9vdENhdXNlUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKkAQoaR2V0SnVkZ2VWYWxpZGF0aW9uQWNjdXJhY3kSLS5mZXJtYXRhLnYxLkdldEp1ZGdlVmFsaWRhdGlvbkFjY3VyYWN5UmVxdWVzdBouLmZlcm1hdGEudjEuR2V0SnVkZ2VWYWxpZGF0aW9uQWNjdXJhY3lSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkErkBCiFHZXRKdWRnZVZhbGlkYXRpb25Db25mdXNpb25NYXRyaXgSNC5mZXJtYXRhLnYxLkdldEp1ZGdlVmFsaWRhdGlvbkNvbmZ1c2lvbk1hdHJpeFJlcXVlc3QaNS5mZXJtYXRhLnYxLkdldEp1ZGdlVmFsaWRhdGlvbkNvbmZ1c2lvbk1hdHJpeFJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSmAEKFkdldEp1ZGdlVmFsaWRhdGlvbkJpYXMSKS5mZXJtYXRhLnYxLkdldEp1ZGdlVmFsaWRhdGlvbkJpYXNSZXF1ZXN0GiouZmVybWF0YS52MS5HZXRKdWRnZVZhbGlkYXRpb25CaWFzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKlAQoaUmVjYWxpYnJhdGVKdWRnZVZhbGlkYXRpb24SLS5mZXJtYXRhLnYxLlJlY2FsaWJyYXRlSnVkZ2VWYWxpZGF0aW9uUmVxdWVzdBouLmZlcm1hdGEudjEuUmVjYWxpYnJhdGVKdWRnZVZhbGlkYXRpb25SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBK0AQofUmVjb3JkSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvbhIyLmZlcm1hdGEudjEuUmVjb3JkSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvblJlcXVlc3QaMy5mZXJtYXRhLnYxLlJlY29yZEp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb25SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBK6AQohVmFsaWRhdGVKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uEjQuZmVybWF0YS52MS5WYWxpZGF0ZUp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb25SZXF1ZXN0GjUuZmVybWF0YS52MS5WYWxpZGF0ZUp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb25SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKwAQoeTGlzdEp1ZGdlQ2FsaWJyYXRpb25DYW5kaWRhdGVzEjEuZmVybWF0YS52MS5MaXN0SnVkZ2VDYWxpYnJhdGlvbkNhbmRpZGF0ZXNSZXF1ZXN0GjIuZmVybWF0YS52MS5MaXN0SnVkZ2VDYWxpYnJhdGlvbkNhbmRpZGF0ZXNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEoUBChpFdmFsdWF0ZVB1YmxpY0ZlYXR1cmVGbGFncxItLmZlcm1hdGEudjEuRXZhbHVhdGVQdWJsaWNGZWF0dXJlRmxhZ3NSZXF1ZXN0Gi4uZmVybWF0YS52MS5FdmFsdWF0ZVB1YmxpY0ZlYXR1cmVGbGFnc1Jlc3BvbnNlIgjY8xgB4PMYARJtChJHZXRNaWdyYXRpb25TdGF0dXMSJS5mZXJtYXRhLnYxLkdldE1pZ3JhdGlvblN0YXR1c1JlcXVlc3QaJi5mZXJtYXRhLnYxLkdldE1pZ3JhdGlvblN0YXR1c1Jlc3BvbnNlIgjY8xgB4PMYATKAEAoZRmVybWF0YVF1YWxpdHlHYXRlU2VydmljZRKFAQoWR2V0UXVhbGl0eUdhdGVEZWZhdWx0cxIpLmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVEZWZhdWx0c1JlcXVlc3QaKi5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlRGVmYXVsdHNSZXNwb25zZSIUyvMYDGZlcm1hdGE6cmVhZNjzGAESmAEKFkxpc3RRdWFsaXR5R2F0ZUNvbmZpZ3MSKS5mZXJtYXRhLnYxLkxpc3RRdWFsaXR5R2F0ZUNvbmZpZ3NSZXF1ZXN0GiouZmVybWF0YS52MS5MaXN0UXVhbGl0eUdhdGVDb25maWdzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKSAQoUR2V0UXVhbGl0eUdhdGVDb25maWcSJy5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlQ29uZmlnUmVxdWVzdBooLmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVDb25maWdSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpwBChdVcHNlcnRRdWFsaXR5R2F0ZUNvbmZpZxIqLmZlcm1hdGEudjEuVXBzZXJ0UXVhbGl0eUdhdGVDb25maWdSZXF1ZXN0GisuZmVybWF0YS52MS5VcHNlcnRRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpkBChZSZXNldFF1YWxpdHlHYXRlQ29uZmlnEikuZmVybWF0YS52MS5SZXNldFF1YWxpdHlHYXRlQ29uZmlnUmVxdWVzdBoqLmZlcm1hdGEudjEuUmVzZXRRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpABChNFdmFsdWF0ZVF1YWxpdHlHYXRlEiYuZmVybWF0YS52MS5FdmFsdWF0ZVF1YWxpdHlHYXRlUmVxdWVzdBonLmZlcm1hdGEudjEuRXZhbHVhdGVRdWFsaXR5R2F0ZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEqIBChlCYXRjaEV2YWx1YXRlUXVhbGl0eUdhdGVzEiwuZmVybWF0YS52MS5CYXRjaEV2YWx1YXRlUXVhbGl0eUdhdGVzUmVxdWVzdBotLmZlcm1hdGEudjEuQmF0Y2hFdmFsdWF0ZVF1YWxpdHlHYXRlc1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEp4BChhHZXRRdWFsaXR5R2F0ZUV2YWx1YXRpb24SKy5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlRXZhbHVhdGlvblJlcXVlc3QaLC5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlRXZhbHVhdGlvblJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSmAEKFkxpc3RRdWFsaXR5R2F0ZVJlc3VsdHMSKS5mZXJtYXRhLnYxLkxpc3RRdWFsaXR5R2F0ZVJlc3VsdHNSZXF1ZXN0GiouZmVybWF0YS52MS5MaXN0UXVhbGl0eUdhdGVSZXN1bHRzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKVAQoVR2V0UXVhbGl0eUdhdGVNZXRyaWNzEiguZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZU1ldHJpY3NSZXF1ZXN0GikuZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZU1ldHJpY3NSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEo8BChNHZXRRdWFsaXR5R2F0ZVN0YXRzEiYuZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZVN0YXRzUmVxdWVzdBonLmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVTdGF0c1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSjgEKGVZhbGlkYXRlUXVhbGl0eUdhdGVDb25maWcSLC5mZXJtYXRhLnYxLlZhbGlkYXRlUXVhbGl0eUdhdGVDb25maWdSZXF1ZXN0Gi0uZmVybWF0YS52MS5WYWxpZGF0ZVF1YWxpdHlHYXRlQ29uZmlnUmVzcG9uc2UiFMrzGAxmZXJtYXRhOnJlYWTY8xgBEsABCiNFdmFsdWF0ZVF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldBI2LmZlcm1hdGEudjEuRXZhbHVhdGVRdWFsaXR5R2F0ZVJlZ3Jlc3Npb25CdWRnZXRSZXF1ZXN0GjcuZmVybWF0YS52MS5FdmFsdWF0ZVF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkQjlaN2dpdGh1Yi5jb20vZXZhbG9wcy9wbGF0Zm9ybS9nZW4vZ28vZmVybWF0YS92MTtmZXJtYXRhdjFiBnByb3RvMw", [file_buf_validate_validate, file_common_v1_analytics, file_common_v1_authz, file_common_v1_risk, file_google_protobuf_duration, file_google_protobuf_struct, file_google_protobuf_timestamp, file_traces_v1_traces]);
|
|
14
|
+
export const file_fermata_v1_fermata = /*@__PURE__*/ fileDesc("ChhmZXJtYXRhL3YxL2Zlcm1hdGEucHJvdG8SCmZlcm1hdGEudjEingQKEkxMTVJ1YnJpY0Fzc2VydGlvbhIZCghqdWRnZV9pZBgBIAEoCUIHukgEcgIQARIZChF2ZXJpZmllcl9qdWRnZV9pZBgCIAEoCRIXCgZydWJyaWMYAyABKAlCB7pIBHICEAESLwoJbWluX3Njb3JlGAQgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgAiAEBEhkKBnJlcGVhdBgFIAEoBUIJukgGGgQYBSgAEhkKBnF1b3J1bRgGIAEoBUIJukgGGgQYBSgAEh8KF3JlY29yZF9qdWRnZV92YWxpZGF0aW9uGAcgASgIEiAKGHJlcXVpcmVfY2FsaWJyYXRlZF9qdWRnZRgIIAEoCBJDCh1taW5fanVkZ2VfdmFsaWRhdGlvbl9hY2N1cmFjeRgJIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABIAYgBARIwChptaW5fanVkZ2VfdmFsaWRhdGlvbl9jb3VudBgKIAEoBUIHukgEGgIoAEgCiAEBEhYKDnJ1YnJpY192ZXJzaW9uGAsgASgJEhoKEmNhbGlicmF0aW9uX2NvaG9ydBgMIAEoCRIVCg1hZHZpc29yeV9vbmx5GA0gASgIQgwKCl9taW5fc2NvcmVCIAoeX21pbl9qdWRnZV92YWxpZGF0aW9uX2FjY3VyYWN5Qh0KG19taW5fanVkZ2VfdmFsaWRhdGlvbl9jb3VudCLXBAoaTExNUGFpcndpc2VSdWJyaWNBc3NlcnRpb24SGQoIanVkZ2VfaWQYASABKAlCB7pIBHICEAESGQoRdmVyaWZpZXJfanVkZ2VfaWQYAiABKAkSFwoGcnVicmljGAMgASgJQge6SARyAhABEhYKDmJhc2VsaW5lX2xhYmVsGAQgASgJEhcKD2NhbmRpZGF0ZV9sYWJlbBgFIAEoCRIvCgltaW5fc2NvcmUYBiABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAASACIAQESGQoGcmVwZWF0GAcgASgFQgm6SAYaBBgFKAASGQoGcXVvcnVtGAggASgFQgm6SAYaBBgFKAASHwoXcmVjb3JkX2p1ZGdlX3ZhbGlkYXRpb24YCSABKAgSIAoYcmVxdWlyZV9jYWxpYnJhdGVkX2p1ZGdlGAogASgIEkMKHW1pbl9qdWRnZV92YWxpZGF0aW9uX2FjY3VyYWN5GAsgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgBiAEBEjAKGm1pbl9qdWRnZV92YWxpZGF0aW9uX2NvdW50GAwgASgFQge6SAQaAigASAKIAQESFgoOcnVicmljX3ZlcnNpb24YDSABKAkSGgoSY2FsaWJyYXRpb25fY29ob3J0GA4gASgJEhUKDWFkdmlzb3J5X29ubHkYDyABKAhCDAoKX21pbl9zY29yZUIgCh5fbWluX2p1ZGdlX3ZhbGlkYXRpb25fYWNjdXJhY3lCHQobX21pbl9qdWRnZV92YWxpZGF0aW9uX2NvdW50IlAKIEFnZW50VHJhamVjdG9yeVN0YXR1c0V4cGVjdGF0aW9uEhMKAmlkGAEgASgJQge6SARyAhABEhcKBnN0YXR1cxgCIAEoCUIHukgEcgIQASJMCh9BZ2VudFRyYWplY3RvcnlTdGF0ZUV4cGVjdGF0aW9uEhUKBHBhdGgYASABKAlCB7pIBHICEAESEgoKdmFsdWVfanNvbhgCIAEoCSLQBwoYQWdlbnRUcmFqZWN0b3J5QXNzZXJ0aW9uEhYKDnJlcXVpcmVkX3Rvb2xzGAEgAygJEhcKD2ZvcmJpZGRlbl90b29scxgCIAMoCRIXCg9yZXF1aXJlZF9ldmVudHMYAyADKAkSGAoQZm9yYmlkZGVuX2V2ZW50cxgEIAMoCRJRChtyZXF1aXJlZF9hc3NlcnRpb25fc3RhdHVzZXMYBSADKAsyLC5mZXJtYXRhLnYxLkFnZW50VHJhamVjdG9yeVN0YXR1c0V4cGVjdGF0aW9uEkoKFXJlcXVpcmVkX3N0YXRlX3dyaXRlcxgGIAMoCzIrLmZlcm1hdGEudjEuQWdlbnRUcmFqZWN0b3J5U3RhdGVFeHBlY3RhdGlvbhJLChZmb3JiaWRkZW5fc3RhdGVfd3JpdGVzGAcgAygLMisuZmVybWF0YS52MS5BZ2VudFRyYWplY3RvcnlTdGF0ZUV4cGVjdGF0aW9uEiAKCm1heF9ldmVudHMYCCABKAVCB7pIBBoCKABIAIgBARIkCg5tYXhfdG9vbF9jYWxscxgJIAEoBUIHukgEGgIoAEgBiAEBEicKEW1heF9yZXBsYXlfZGVsdGFzGAogASgFQge6SAQaAigASAKIAQESKAoSbWF4X3Njb3JlX2ZhaWx1cmVzGAsgASgFQge6SAQaAigASAOIAQESKAoSbWF4X3Njb3JlX3dhcm5pbmdzGAwgASgFQge6SAQaAigASASIAQESJAoObWF4X2xhdGVuY3lfbXMYDSABKANCB7pIBCICKABIBYgBARIlCg9tYXhfY29zdF9taWNyb3MYDiABKANCB7pIBCICKABIBogBARIhCgttYXhfcmV0cmllcxgPIAEoBUIHukgEGgIoAEgHiAEBEiEKGXJlcXVpcmVfaWRlbXBvdGVudF9yZXBsYXkYECABKAgSKQohZm9yYmlkX2R1cGxpY2F0ZV9leHRlcm5hbF9hY3Rpb25zGBEgASgIEiIKGmZvcmJpZGRlbl9leHRlcm5hbF9hY3Rpb25zGBIgAygJEiAKGHJlcXVpcmVkX3RyYWNlX2pvaW5fa2V5cxgTIAMoCUINCgtfbWF4X2V2ZW50c0IRCg9fbWF4X3Rvb2xfY2FsbHNCFAoSX21heF9yZXBsYXlfZGVsdGFzQhUKE19tYXhfc2NvcmVfZmFpbHVyZXNCFQoTX21heF9zY29yZV93YXJuaW5nc0IRCg9fbWF4X2xhdGVuY3lfbXNCEgoQX21heF9jb3N0X21pY3Jvc0IOCgxfbWF4X3JldHJpZXMiqwIKCVRlc3RTdWl0ZRIKCgJpZBgBIAEoCRIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSHQoMd29ya3NwYWNlX2lkGAMgASgJQge6SARyAhABEhUKBG5hbWUYBCABKAlCB7pIBHICEAESEwoLZGVzY3JpcHRpb24YBSABKAkSIwoFY2FzZXMYBiADKAsyFC5mZXJtYXRhLnYxLlRlc3RDYXNlEikKCG1ldGFkYXRhGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpjcmVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKrAQoIVGVzdENhc2USCgoCaWQYASABKAkSFQoEbmFtZRgCIAEoCUIHukgEcgIQARINCgVpbnB1dBgDIAEoCRIXCg9leHBlY3RlZF9vdXRwdXQYBCABKAkSKQoKYXNzZXJ0aW9ucxgFIAMoCzIVLmZlcm1hdGEudjEuQXNzZXJ0aW9uEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLlAgoJQXNzZXJ0aW9uEgoKAmlkGAEgASgJEjEKBGtpbmQYAiABKA4yGS5mZXJtYXRhLnYxLkFzc2VydGlvbktpbmRCCLpIBYIBAhABEg4KBnRhcmdldBgDIAEoCRIQCghleHBlY3RlZBgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMgoKbGxtX3J1YnJpYxgHIAEoCzIeLmZlcm1hdGEudjEuTExNUnVicmljQXNzZXJ0aW9uEkMKE2xsbV9wYWlyd2lzZV9ydWJyaWMYCCABKAsyJi5mZXJtYXRhLnYxLkxMTVBhaXJ3aXNlUnVicmljQXNzZXJ0aW9uEj4KEGFnZW50X3RyYWplY3RvcnkYCSABKAsyJC5mZXJtYXRhLnYxLkFnZW50VHJhamVjdG9yeUFzc2VydGlvbiKDAgoXUHJldmlld0Fzc2VydGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIVCg1ldmFsdWF0aW9uX2lkGAMgASgJEjAKCWFzc2VydGlvbhgEIAEoCzIVLmZlcm1hdGEudjEuQXNzZXJ0aW9uQga6SAPIAQESDQoFaW5wdXQYBSABKAkSFwoPZXhwZWN0ZWRfb3V0cHV0GAYgASgJEhUKDWFjdHVhbF9vdXRwdXQYByABKAkSKAoHY29udGV4dBgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiTwoYUHJldmlld0Fzc2VydGlvblJlc3BvbnNlEjMKBnJlc3VsdBgBIAEoCzIjLmZlcm1hdGEudjEuU2NlbmFyaW9Bc3NlcnRpb25SZXN1bHQiqwEKI1ByZXZpZXdTY2VuYXJpb1J1bkFzc2VydGlvbnNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFwoGcnVuX2lkGAMgASgJQge6SARyAhABEjMKCmFzc2VydGlvbnMYBCADKAsyFS5mZXJtYXRhLnYxLkFzc2VydGlvbkIIukgFkgECCAEiuwIKJFByZXZpZXdTY2VuYXJpb1J1bkFzc2VydGlvbnNSZXNwb25zZRIXCg9zY2VuYXJpb19ydW5faWQYASABKAkSEwoLc2NlbmFyaW9faWQYAiABKAkSNAoHcmVzdWx0cxgDIAMoCzIjLmZlcm1hdGEudjEuU2NlbmFyaW9Bc3NlcnRpb25SZXN1bHQSIQoQdG90YWxfYXNzZXJ0aW9ucxgEIAEoBUIHukgEGgIoABIiChFwYXNzZWRfYXNzZXJ0aW9ucxgFIAEoBUIHukgEGgIoABIiChFmYWlsZWRfYXNzZXJ0aW9ucxgGIAEoBUIHukgEGgIoABIOCgZwYXNzZWQYByABKAgSHQoFc2NvcmUYCCABKAFCDrpICxIJKQAAAAAAAAAAEhUKDWFjdHVhbF9vdXRwdXQYCSABKAki0AEKD0N1c3RvbUV2YWx1YXRvchIVCgRuYW1lGAEgASgJQge6SARyAhABEhcKBnNvdXJjZRgCIAEoCUIHukgEcgIQARIuCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9vcmdhbml6YXRpb25faWQYBSABKAkSFAoMd29ya3NwYWNlX2lkGAYgASgJIqMDCgVKdWRnZRIVCgRuYW1lGAEgASgJQge6SARyAhABEi0KBGtpbmQYAiABKA4yFS5mZXJtYXRhLnYxLkp1ZGdlS2luZEIIukgFggECEAESDgoGcHJvbXB0GAMgASgJEg0KBW1vZGVsGAQgASgJEiwKC3RlbXBlcmF0dXJlGAUgASgBQhe6SBQSEhkAAAAAAAAAQCkAAAAAAAAAABIbCgptYXhfdG9rZW5zGAYgASgFQge6SAQaAigAEhAKCGNyaXRlcmlhGAcgAygJEh4KBndlaWdodBgIIAEoAUIOukgLEgkpAAAAAAAAAAASKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhcKD29yZ2FuaXphdGlvbl9pZBgMIAEoCRIUCgx3b3Jrc3BhY2VfaWQYDSABKAkiugYKCFNjZW5hcmlvEgoKAmlkGAEgASgJEiAKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAyABKAlCB7pIBHICEAESFQoEbmFtZRgEIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgFIAEoCRIoCglvYmplY3RpdmUYBiABKAsyFS5mZXJtYXRhLnYxLk9iamVjdGl2ZRItCgxhZ2VudF9jb25maWcYByABKAsyFy5mZXJtYXRhLnYxLkFnZW50Q29uZmlnEjQKC2Vudmlyb25tZW50GAggASgLMh8uZmVybWF0YS52MS5TY2VuYXJpb0Vudmlyb25tZW50EjEKDnVzZXJfc2ltdWxhdG9yGAkgASgLMhkuZmVybWF0YS52MS5Vc2VyU2ltdWxhdG9yEiIKCG1heF9jb3N0GAogASgLMhAuY29tbW9uLnYxLk1vbmV5Ei8KDG1heF9kdXJhdGlvbhgLIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIaCgltYXhfc3RlcHMYDCABKAVCB7pIBBoCKAASJgoVbWF4X2FwcHJvdmFsX3JlcXVlc3RzGA0gASgFQge6SAQaAigAEjYKEG91dGNvbWVfY3JpdGVyaWEYDiADKAsyHC5mZXJtYXRhLnYxLk91dGNvbWVDcml0ZXJpb24SPgoVZ292ZXJuYW5jZV9hc3NlcnRpb25zGA8gAygLMh8uZmVybWF0YS52MS5Hb3Zlcm5hbmNlQXNzZXJ0aW9uEj4KFWRlbGVnYXRpb25fYXNzZXJ0aW9ucxgQIAMoCzIfLmZlcm1hdGEudjEuRGVsZWdhdGlvbkFzc2VydGlvbhIXCgZlcG9jaHMYESABKAVCB7pIBBoCKAASKQoIbWV0YWRhdGEYEiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYEyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIu8BCglPYmplY3RpdmUSHAoLZGVzY3JpcHRpb24YASABKAlCB7pIBHICEAESNgoQc3VjY2Vzc19jcml0ZXJpYRgCIAMoCzIcLmZlcm1hdGEudjEuU3VjY2Vzc0NyaXRlcmlvbhJACg5leHBlY3RlZF9zdGF0ZRgDIAMoCzIoLmZlcm1hdGEudjEuT2JqZWN0aXZlLkV4cGVjdGVkU3RhdGVFbnRyeRIUCgxvYmplY3RpdmVfaWQYBCABKAkaNAoSRXhwZWN0ZWRTdGF0ZUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEirwEKEFN1Y2Nlc3NDcml0ZXJpb24SCgoCaWQYASABKAkSHAoLZGVzY3JpcHRpb24YAiABKAlCB7pIBHICEAESDgoGbWV0cmljGAMgASgJEhYKDmV4cGVjdGVkX3ZhbHVlGAQgASgJEh4KBndlaWdodBgFIAEoAUIOukgLEgkpAAAAAAAAAAASKQoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IqUBCgtBZ2VudENvbmZpZxIQCghhZ2VudF9pZBgBIAEoCRINCgVtb2RlbBgCIAEoCRIRCgl0b29sX3JlZnMYAyADKAkSGQoRcGVybWlzc2lvbl9zY29wZXMYBCADKAkSHAoUZ292ZXJuYW5jZV9wb2xpY3lfaWQYBSABKAkSKQoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IvcBChNTY2VuYXJpb0Vudmlyb25tZW50EjsKBGtpbmQYASABKA4yIy5mZXJtYXRhLnYxLlNjZW5hcmlvRW52aXJvbm1lbnRLaW5kQgi6SAWCAQIQARIjCgV0b29scxgCIAMoCzIULmZlcm1hdGEudjEuTW9ja1Rvb2wSKwoJZW5kcG9pbnRzGAMgAygLMhguZmVybWF0YS52MS5Nb2NrRW5kcG9pbnQSFQoNc2VlZF9kYXRhX3JlZhgEIAEoCRIPCgdzYW5kYm94GAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCK7AQoITW9ja1Rvb2wSFQoEbmFtZRgBIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgCIAEoCRItCgxpbnB1dF9zY2hlbWEYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EikKCHJlc3BvbnNlGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghtZXRhZGF0YRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiqQEKDE1vY2tFbmRwb2ludBIOCgZtZXRob2QYASABKAkSFQoEcGF0aBgCIAEoCUIHukgEcgIQARIcCgtzdGF0dXNfY29kZRgDIAEoBUIHukgEGgIoABIpCghyZXNwb25zZRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIbWV0YWRhdGEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IocCCg1Vc2VyU2ltdWxhdG9yEg8KB3BlcnNvbmEYASABKAkSFAoMaW5zdHJ1Y3Rpb25zGAIgASgJEj0KCHN0cmF0ZWd5GAMgASgOMiEuZmVybWF0YS52MS5Vc2VyU2ltdWxhdG9yU3RyYXRlZ3lCCLpIBYIBAhABEg0KBW1vZGVsGAQgASgJEhoKCW1heF90dXJucxgFIAEoBUIHukgEGgIoABIbChN2ZXJpZnlfYWdlbnRfY2xhaW1zGAYgASgIEh0KFXJlcXVlc3RfY2xhcmlmaWNhdGlvbhgHIAEoCBIpCghtZXRhZGF0YRgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QixQEKEE91dGNvbWVDcml0ZXJpb24SCgoCaWQYASABKAkSOAoEa2luZBgCIAEoDjIgLmZlcm1hdGEudjEuT3V0Y29tZUNyaXRlcmlvbktpbmRCCLpIBYIBAhABEg4KBnRhcmdldBgDIAEoCRIQCghleHBlY3RlZBgEIAEoCRIeCgZ3ZWlnaHQYBSABKAFCDrpICxIJKQAAAAAAAAAAEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLcAgoTR292ZXJuYW5jZUFzc2VydGlvbhIKCgJpZBgBIAEoCRI7CgR0eXBlGAIgASgOMiMuZmVybWF0YS52MS5Hb3Zlcm5hbmNlQXNzZXJ0aW9uVHlwZUIIukgFggECEAESOwoTZXhwZWN0ZWRfcmlza19sZXZlbBgDIAEoDjIULmNvbW1vbi52MS5SaXNrTGV2ZWxCCLpIBYIBAhABEhcKD3Nob3VsZF9lc2NhbGF0ZRgEIAEoCBIhChlleHBlY3RlZF9hcHByb3ZhbF9vdXRjb21lGAUgASgJEhsKE2FsbG93ZWRfZGF0YV9zY29wZXMYBiADKAkSGgoSZGVuaWVkX2RhdGFfc2NvcGVzGAcgAygJEh8KF2V4cGVjdGVkX3BpaV9jYXRlZ29yaWVzGAggAygJEikKCG1ldGFkYXRhGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLqAQoTRGVsZWdhdGlvbkFzc2VydGlvbhIKCgJpZBgBIAEoCRI7CgR0eXBlGAIgASgOMiMuZmVybWF0YS52MS5EZWxlZ2F0aW9uQXNzZXJ0aW9uVHlwZUIIukgFggECEAESGQoRZXhwZWN0ZWRfYWdlbnRfaWQYAyABKAkSIAoPbWF4X2NoYWluX2RlcHRoGAQgASgFQge6SAQaAigAEiIKCG1heF9jb3N0GAUgASgLMhAuY29tbW9uLnYxLk1vbmV5EikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCKIBAoLU2NlbmFyaW9SdW4SCgoCaWQYASABKAkSHAoLc2NlbmFyaW9faWQYAiABKAlCB7pIBHICEAESIAoPb3JnYW5pemF0aW9uX2lkGAMgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgEIAEoCUIHukgEcgIQARIWCgVlcG9jaBgFIAEoBUIHukgEGgIoABI3CgZzdGF0dXMYBiABKA4yHS5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuU3RhdHVzQgi6SAWCAQIQARIqCgZyZXN1bHQYByABKAsyGi5mZXJtYXRhLnYxLlNjZW5hcmlvUmVzdWx0EhAKCHRyYWNlX2lkGAggASgJEikKCG1ldGFkYXRhGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpzdGFydGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxjb21wbGV0ZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCmNyZWF0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhIKCmxpbmVhZ2VfaWQYDiABKAkisQYKDlNjZW5hcmlvUmVzdWx0EhoKEm9iamVjdGl2ZV9hY2hpZXZlZBgBIAEoCBIZChFvYmplY3RpdmVfc3VtbWFyeRgCIAEoCRIcCgt0b3RhbF9zdGVwcxgDIAEoBUIHukgEGgIoABIcCgttb2RlbF9jYWxscxgEIAEoBUIHukgEGgIoABIbCgp0b29sX2NhbGxzGAUgASgFQge6SAQaAigAEiIKEWFwcHJvdmFsX3JlcXVlc3RzGAYgASgFQge6SAQaAigAEiIKEWRlbGVnYXRpb25fZXZlbnRzGAcgASgFQge6SAQaAigAEiAKD3JlY292ZXJ5X2V2ZW50cxgIIAEoBUIHukgEGgIoABI+ChFhc3NlcnRpb25fcmVzdWx0cxgJIAMoCzIjLmZlcm1hdGEudjEuU2NlbmFyaW9Bc3NlcnRpb25SZXN1bHQSLwoKZ292ZXJuYW5jZRgKIAEoCzIbLmZlcm1hdGEudjEuR292ZXJuYW5jZVNjb3JlEiwKCWVjb25vbWljcxgLIAEoCzIZLmZlcm1hdGEudjEuRWNvbm9taWNTY29yZRIhCglwYXNzX2F0X2sYDCABKAFCDrpICxIJKQAAAAAAAAAAEi8KCmRlbGVnYXRpb24YDSABKAsyGy5mZXJtYXRhLnYxLkRlbGVnYXRpb25TY29yZRIkCgp0b3RhbF9jb3N0GA4gASgLMhAuY29tbW9uLnYxLk1vbmV5EjEKDnRvdGFsX2R1cmF0aW9uGA8gASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEikKCG1ldGFkYXRhGBAgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIjCgp0cmFqZWN0b3J5GBEgAygLMg8udHJhY2VzLnYxLlNwYW4SJQoNdHJhamVjdG9yeV9mMRgSIAEoAUIOukgLEgkpAAAAAAAAAAASNgoedHJhamVjdG9yeV9lZGl0X2Rpc3RhbmNlX3Njb3JlGBMgASgBQg66SAsSCSkAAAAAAAAAABIqCgVkcmlmdBgUIAEoCzIbLmZlcm1hdGEudjEuRHJpZnRDb21wYXJpc29uIpoBChdTY2VuYXJpb0Fzc2VydGlvblJlc3VsdBIUCgxhc3NlcnRpb25faWQYASABKAkSDgoGcGFzc2VkGAIgASgIEg0KBXNjb3JlGAMgASgBEg4KBmFjdHVhbBgEIAEoCRIPCgdtZXNzYWdlGAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCKPAgoPR292ZXJuYW5jZVNjb3JlEiwKFGVzY2FsYXRpb25fcHJlY2lzaW9uGAEgASgBQg66SAsSCSkAAAAAAAAAABIpChFlc2NhbGF0aW9uX3JlY2FsbBgCIAEoAUIOukgLEgkpAAAAAAAAAAASKQoRcG9saWN5X2NvbXBsaWFuY2UYAyABKAFCDrpICxIJKQAAAAAAAAAAEisKE2FwcHJvdmFsX2VmZmljaWVuY3kYBCABKAFCDrpICxIJKQAAAAAAAAAAEiEKCWNvbXBvc2l0ZRgFIAEoAUIOukgLEgkpAAAAAAAAAAASKAoIZXZpZGVuY2UYBiADKAsyFi5jb21tb24udjEuRXZpZGVuY2VSZWYigAIKDUVjb25vbWljU2NvcmUSMgoYY29zdF9wZXJfc3VjY2Vzc2Z1bF90YXNrGAEgASgLMhAuY29tbW9uLnYxLk1vbmV5EiIKCGxsbV9jb3N0GAIgASgLMhAuY29tbW9uLnYxLk1vbmV5EiMKCXRvb2xfY29zdBgDIAEoCzIQLmNvbW1vbi52MS5Nb25leRIqChBzdXBlcnZpc2lvbl9jb3N0GAQgASgLMhAuY29tbW9uLnYxLk1vbmV5EhoKEm9uX3BhcmV0b19mcm9udGllchgFIAEoCBIqChJxdWFsaXR5X3Blcl9kb2xsYXIYBiABKAFCDrpICxIJKQAAAAAAAAAAIsoBCg9EZWxlZ2F0aW9uU2NvcmUSKwoTZGVsZWdhdGlvbl9hY2N1cmFjeRgBIAEoAUIOukgLEgkpAAAAAAAAAAASKAoQY29udGV4dF9maWRlbGl0eRgCIAEoAUIOukgLEgkpAAAAAAAAAAASFwoPZWZmaWNpZW5jeV9nYWluGAMgASgBEikKEWZhaWx1cmVfaXNvbGF0aW9uGAQgASgBQg66SAsSCSkAAAAAAAAAABIcCgtjaGFpbl9kZXB0aBgFIAEoBUIHukgEGgIoACLeAwoPRHJpZnRDb21wYXJpc29uEhAKCGRldGVjdGVkGAEgASgIEi4KFmJhc2VsaW5lX3F1YWxpdHlfc2NvcmUYAiABKAFCDrpICxIJKQAAAAAAAAAAEi0KFWN1cnJlbnRfcXVhbGl0eV9zY29yZRgDIAEoAUIOukgLEgkpAAAAAAAAAAASFQoNcXVhbGl0eV9kZWx0YRgEIAEoARInCg1iYXNlbGluZV9jb3N0GAUgASgLMhAuY29tbW9uLnYxLk1vbmV5EiYKDGN1cnJlbnRfY29zdBgGIAEoCzIQLmNvbW1vbi52MS5Nb25leRIkCgpjb3N0X2RlbHRhGAcgASgLMhAuY29tbW9uLnYxLk1vbmV5EjAKGGJhc2VsaW5lX2VzY2FsYXRpb25fcmF0ZRgIIAEoAUIOukgLEgkpAAAAAAAAAAASLwoXY3VycmVudF9lc2NhbGF0aW9uX3JhdGUYCSABKAFCDrpICxIJKQAAAAAAAAAAEh0KFWVzY2FsYXRpb25fcmF0ZV9kZWx0YRgKIAEoARIgChhnZW5lcmF0ZWRfc3VpdGVfc3RyYXRlZ3kYCyABKAkSKAoIZXZpZGVuY2UYDCADKAsyFi5jb21tb24udjEuRXZpZGVuY2VSZWYi1QEKFkNyZWF0ZVRlc3RTdWl0ZVJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIVCgRuYW1lGAMgASgJQge6SARyAhABEhMKC2Rlc2NyaXB0aW9uGAQgASgJEiMKBWNhc2VzGAUgAygLMhQuZmVybWF0YS52MS5UZXN0Q2FzZRIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiPwoXQ3JlYXRlVGVzdFN1aXRlUmVzcG9uc2USJAoFc3VpdGUYASABKAsyFS5mZXJtYXRhLnYxLlRlc3RTdWl0ZSJfChNHZXRUZXN0U3VpdGVSZXF1ZXN0EhkKCHN1aXRlX2lkGAEgASgJQge6SARyAhABEhcKD29yZ2FuaXphdGlvbl9pZBgCIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAyABKAkiPAoUR2V0VGVzdFN1aXRlUmVzcG9uc2USJAoFc3VpdGUYASABKAsyFS5mZXJtYXRhLnYxLlRlc3RTdWl0ZSKAAQoVTGlzdFRlc3RTdWl0ZXNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFgoFbGltaXQYAyABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAQgASgFQge6SAQaAigAIlEKFkxpc3RUZXN0U3VpdGVzUmVzcG9uc2USJQoGc3VpdGVzGAEgAygLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUSEAoIaGFzX21vcmUYAiABKAgijQMKG0V2YWx1YXRpb25QYWNrSnVkZ2VDb250cmFjdBIZCghqdWRnZV9pZBgBIAEoCUIHukgEcgIQARIWCgVtb2RlbBgCIAEoCUIHukgEcgIQARIfCg5ydWJyaWNfdmVyc2lvbhgDIAEoCUIHukgEcgIQARIjChJjYWxpYnJhdGlvbl9jb2hvcnQYBCABKAlCB7pIBHICEAESOwoVbWF4X2Rpc2FncmVlbWVudF9yYXRlGAUgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgAiAEBEj0KF21pbl92YWxpZGF0aW9uX2FjY3VyYWN5GAYgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgBiAEBEioKFG1pbl92YWxpZGF0aW9uX2NvdW50GAcgASgFQge6SAQaAigASAKIAQFCGAoWX21heF9kaXNhZ3JlZW1lbnRfcmF0ZUIaChhfbWluX3ZhbGlkYXRpb25fYWNjdXJhY3lCFwoVX21pbl92YWxpZGF0aW9uX2NvdW50IrABCh5Qcm9kdWN0aW9uVHJhY2VQcm9tb3Rpb25Qb2xpY3kSIwobcmVxdWlyZV9xdWFsaXR5X2Fubm90YXRpb25zGAEgASgIEh8KF2ZhaWxlZF9hbm5vdGF0aW9uc19vbmx5GAIgASgIEhoKCW1heF9jYXNlcxgDIAEoBUIHukgEGgIoABIVCg1yZXF1aXJlZF90YWdzGAQgAygJEhUKDWV4Y2x1ZGVkX3RhZ3MYBSADKAki0AMKDkV2YWx1YXRpb25QYWNrEhMKAmlkGAEgASgJQge6SARyAhABEhgKB3NlcnZpY2UYAiABKAlCB7pIBHICEAESFQoEbmFtZRgDIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgEIAEoCRIYCgd2ZXJzaW9uGAUgASgJQge6SARyAhABEkAKD2p1ZGdlX2NvbnRyYWN0cxgGIAMoCzInLmZlcm1hdGEudjEuRXZhbHVhdGlvblBhY2tKdWRnZUNvbnRyYWN0EkoKFnRyYWNlX3Byb21vdGlvbl9wb2xpY3kYByABKAsyKi5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVByb21vdGlvblBvbGljeRIzCgxxdWFsaXR5X2dhdGUYCCABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnEhgKEHNvdXJjZV9zdWl0ZV9pZHMYCSADKAkSEQoJdHJhY2VfaWRzGAogAygJEikKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgp1cGRhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJlChpMaXN0RXZhbHVhdGlvblBhY2tzUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEg8KB3NlcnZpY2UYAyABKAkiZgobTGlzdEV2YWx1YXRpb25QYWNrc1Jlc3BvbnNlEikKBXBhY2tzGAEgAygLMhouZmVybWF0YS52MS5FdmFsdWF0aW9uUGFjaxIcCgt0b3RhbF9jb3VudBgCIAEoBUIHukgEGgIoACLkAQoaQnVpbGRFdmFsdWF0aW9uUGFja1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIYCgdwYWNrX2lkGAMgASgJQge6SARyAhABEhIKCnN1aXRlX25hbWUYBCABKAkSEgoKY3JlYXRlZF9ieRgFIAEoCRIYChBzb3VyY2Vfc3VpdGVfaWRzGAYgAygJEhEKCXRyYWNlX2lkcxgHIAMoCRIWCgVsaW1pdBgIIAEoBUIHukgEGgIoACLuAQobQnVpbGRFdmFsdWF0aW9uUGFja1Jlc3BvbnNlEigKBHBhY2sYASABKAsyGi5mZXJtYXRhLnYxLkV2YWx1YXRpb25QYWNrEiQKBXN1aXRlGAIgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUSMwoMcXVhbGl0eV9nYXRlGAMgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZxJKChZ0cmFjZV9wcm9tb3Rpb25fcG9saWN5GAQgASgLMiouZmVybWF0YS52MS5Qcm9kdWN0aW9uVHJhY2VQcm9tb3Rpb25Qb2xpY3ki4wUKFUNyZWF0ZVNjZW5hcmlvUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhUKBG5hbWUYAyABKAlCB7pIBHICEAESEwoLZGVzY3JpcHRpb24YBCABKAkSMAoJb2JqZWN0aXZlGAUgASgLMhUuZmVybWF0YS52MS5PYmplY3RpdmVCBrpIA8gBARItCgxhZ2VudF9jb25maWcYBiABKAsyFy5mZXJtYXRhLnYxLkFnZW50Q29uZmlnEjQKC2Vudmlyb25tZW50GAcgASgLMh8uZmVybWF0YS52MS5TY2VuYXJpb0Vudmlyb25tZW50EjEKDnVzZXJfc2ltdWxhdG9yGAggASgLMhkuZmVybWF0YS52MS5Vc2VyU2ltdWxhdG9yEiIKCG1heF9jb3N0GAkgASgLMhAuY29tbW9uLnYxLk1vbmV5Ei8KDG1heF9kdXJhdGlvbhgKIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIaCgltYXhfc3RlcHMYCyABKAVCB7pIBBoCKAASJgoVbWF4X2FwcHJvdmFsX3JlcXVlc3RzGAwgASgFQge6SAQaAigAEjYKEG91dGNvbWVfY3JpdGVyaWEYDSADKAsyHC5mZXJtYXRhLnYxLk91dGNvbWVDcml0ZXJpb24SPgoVZ292ZXJuYW5jZV9hc3NlcnRpb25zGA4gAygLMh8uZmVybWF0YS52MS5Hb3Zlcm5hbmNlQXNzZXJ0aW9uEj4KFWRlbGVnYXRpb25fYXNzZXJ0aW9ucxgPIAMoCzIfLmZlcm1hdGEudjEuRGVsZWdhdGlvbkFzc2VydGlvbhIXCgZlcG9jaHMYECABKAVCB7pIBBoCKAASKQoIbWV0YWRhdGEYESABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IkAKFkNyZWF0ZVNjZW5hcmlvUmVzcG9uc2USJgoIc2NlbmFyaW8YASABKAsyFC5mZXJtYXRhLnYxLlNjZW5hcmlvImEKEkdldFNjZW5hcmlvUmVxdWVzdBIcCgtzY2VuYXJpb19pZBgBIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJIj0KE0dldFNjZW5hcmlvUmVzcG9uc2USJgoIc2NlbmFyaW8YASABKAsyFC5mZXJtYXRhLnYxLlNjZW5hcmlvIn8KFExpc3RTY2VuYXJpb3NSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFgoFbGltaXQYAyABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAQgASgFQge6SAQaAigAIlIKFUxpc3RTY2VuYXJpb3NSZXNwb25zZRInCglzY2VuYXJpb3MYASADKAsyFC5mZXJtYXRhLnYxLlNjZW5hcmlvEhAKCGhhc19tb3JlGAIgASgIIsYGChFBZ2VudFRhc2tFdmFsU3BlYxIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhUKBG5hbWUYAyABKAlCB7pIBHICEAESEwoLZGVzY3JpcHRpb24YBCABKAkSFQoEdGFzaxgFIAEoCUIHukgEcgIQARISCgpyZXBvc2l0b3J5GAYgASgJEg4KBmJyYW5jaBgHIAEoCRIQCghhZ2VudF9pZBgIIAEoCRINCgVtb2RlbBgJIAEoCRIWCg5yZXF1aXJlZF90b29scxgKIAMoCRIXCg9mb3JiaWRkZW5fdG9vbHMYCyADKAkSGQoRcmVxdWlyZWRfY29tbWFuZHMYDCADKAkSGgoSZm9yYmlkZGVuX2NvbW1hbmRzGA0gAygJEhoKEnJlcXVpcmVkX2FydGlmYWN0cxgOIAMoCRIZChFyZXF1aXJlZF9ldmlkZW5jZRgPIAMoCRIZChFwZXJtaXNzaW9uX3Njb3BlcxgQIAMoCRIpChFxdWFsaXR5X3RocmVzaG9sZBgRIAEoAUIOukgLEgkpAAAAAAAAAAASGgoJbWF4X3N0ZXBzGBIgASgFQge6SAQaAigAEiYKFW1heF9hcHByb3ZhbF9yZXF1ZXN0cxgTIAEoBUIHukgEGgIoABIrChptYXhfZGVsZWdhdGlvbl9jaGFpbl9kZXB0aBgUIAEoBUIHukgEGgIoABIkCgxtYXhfY29zdF91c2QYFSABKAFCDrpICxIJKQAAAAAAAAAAEiUKFG1heF9kdXJhdGlvbl9zZWNvbmRzGBYgASgDQge6SAQiAigAEhcKBmVwb2NocxgXIAEoBUIHukgEGgIoABIZChFyZXF1aXJlc19hcHByb3ZhbBgYIAEoCBI7ChNleHBlY3RlZF9yaXNrX2xldmVsGBkgASgOMhQuY29tbW9uLnYxLlJpc2tMZXZlbEIIukgFggECEAESKQoIZml4dHVyZXMYGiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EikKCG1ldGFkYXRhGBsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJRChpDcmVhdGVBZ2VudFRhc2tFdmFsUmVxdWVzdBIzCgRldmFsGAEgASgLMh0uZmVybWF0YS52MS5BZ2VudFRhc2tFdmFsU3BlY0IGukgDyAEBIkUKG0NyZWF0ZUFnZW50VGFza0V2YWxSZXNwb25zZRImCghzY2VuYXJpbxgBIAEoCzIULmZlcm1hdGEudjEuU2NlbmFyaW8i6QEKF1J1bkFnZW50VGFza0V2YWxSZXF1ZXN0EjMKBGV2YWwYASABKAsyHS5mZXJtYXRhLnYxLkFnZW50VGFza0V2YWxTcGVjQga6SAPIAQESDgoGcnVuX2lkGAIgASgJEhAKCHRyYWNlX2lkGAMgASgJEhYKBWVwb2NoGAQgASgFQge6SAQaAigAEjAKB2FjdHVhbHMYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Qga6SAPIAQESLQoMcnVuX21ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJ4ChhSdW5BZ2VudFRhc2tFdmFsUmVzcG9uc2USJgoIc2NlbmFyaW8YASABKAsyFC5mZXJtYXRhLnYxLlNjZW5hcmlvEiQKA3J1bhgCIAEoCzIXLmZlcm1hdGEudjEuU2NlbmFyaW9SdW4SDgoGcGFzc2VkGAMgASgIIsQBChRBZ2VudFRvb2xDYXRhbG9nSXRlbRIVCgRuYW1lGAEgASgJQge6SARyAhABEhAKCGNhdGVnb3J5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEgsKA3JwYxgEIAEoCRIXCg9yZXF1aXJlZF9zY29wZXMYBSADKAkSGQoRYWdlbnRfY2FuX2V4ZWN1dGUYBiABKAgSGQoRcmVxdWlyZXNfYXBwcm92YWwYByABKAgSEgoKcmlza19sZXZlbBgIIAEoCSL9AQoXQWdlbnRUb29sQ2F0YWxvZ1N1bW1hcnkSHAoLdG90YWxfdG9vbHMYASABKAVCB7pIBBoCKAASIQoQYWdlbnRfZXhlY3V0YWJsZRgCIAEoBUIHukgEGgIoABIiChFyZXF1aXJlc19hcHByb3ZhbBgDIAEoBUIHukgEGgIoABJOCgdieV9yaXNrGAQgAygLMi8uZmVybWF0YS52MS5BZ2VudFRvb2xDYXRhbG9nU3VtbWFyeS5CeVJpc2tFbnRyeUIMukgJmgEGKgQaAigAGi0KC0J5Umlza0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAEiqQcKDUFnZW50V29ya2Zsb3cSCgoCaWQYASABKAkSFwoPb3JnYW5pemF0aW9uX2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCRIVCgRuYW1lGAQgASgJQge6SARyAhABEhMKC2Rlc2NyaXB0aW9uGAUgASgJEicKBmFnZW50cxgGIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSHAoUY29vcmRpbmF0aW9uX3BhdHRlcm4YByABKAkSLgoNaGFuZG9mZl9ydWxlcxgIIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSHgoNc3lzdGVtX3Byb21wdBgJIAEoCUIHukgEcgIQARIVCg1wcm92aWRlcl90eXBlGAogASgJEhYKBW1vZGVsGAsgASgJQge6SARyAhABEg0KBXRvb2xzGAwgAygJEjEKEHRvb2xfZGVmaW5pdGlvbnMYDSADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhoKCW1heF9zdGVwcxgOIAEoBUIHukgEGgIoABIYCgt0ZW1wZXJhdHVyZRgPIAEoAUgAiAEBEiAKCm1heF90b2tlbnMYECABKAVCB7pIBBoCKABIAYgBARIWCg5zdG9wX3NlcXVlbmNlcxgRIAMoCRIwCg9zdG9wX2NvbmRpdGlvbnMYEiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg8KB3RlYW1faWQYEyABKAkSMQoQaW5wdXRfZ3VhcmRyYWlscxgUIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMgoRb3V0cHV0X2d1YXJkcmFpbHMYFSADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KDW91dHB1dF9jb25maWcYFiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EikKCG1ldGFkYXRhGBcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIgCg90aW1lb3V0X21pbnV0ZXMYGCABKAVCB7pIBBoCKAASGgoSc291cmNlX3RlbXBsYXRlX2lkGBkgASgJEhcKD3RlbXBsYXRlX2JhY2tlZBgaIAEoCBIQCghjYXRlZ29yeRgbIAEoCRIsCgVzdGVwcxgcIAMoCzIdLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd1N0ZXBCDgoMX3RlbXBlcmF0dXJlQg0KC19tYXhfdG9rZW5zItwBChFBZ2VudFdvcmtmbG93U3RlcBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEhEKCXRvb2xfbmFtZRgEIAEoCRILCgNycGMYBSABKAkSGQoRYWdlbnRfY2FuX2V4ZWN1dGUYBiABKAgSGQoRcmVxdWlyZXNfYXBwcm92YWwYByABKAgSGQoRYmxvY2tzX29uX2ZhaWx1cmUYCCABKAgSJwoGaW5wdXRzGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJGCg9BZ2VudFdvcmtmbG93SU8SDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIQCghyZXF1aXJlZBgDIAEoCCKlAgoVQWdlbnRXb3JrZmxvd1RlbXBsYXRlEhMKAmlkGAEgASgJQge6SARyAhABEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSEAoIY2F0ZWdvcnkYBCABKAkSDAoEdGFncxgFIAMoCRIrCgh3b3JrZmxvdxgGIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvdxIsCgVzdGVwcxgHIAMoCzIdLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd1N0ZXASKwoGaW5wdXRzGAggAygLMhsuZmVybWF0YS52MS5BZ2VudFdvcmtmbG93SU8SLAoHb3V0cHV0cxgJIAMoCzIbLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd0lPIp0CChJBZ2VudFJ1bnRpbWVSZWNvcmQSEwoCaWQYASABKAlCB7pIBHICEAESFQoEa2luZBgCIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAyABKAkSFAoMd29ya3NwYWNlX2lkGAQgASgJEhIKCnNlc3Npb25faWQYBSABKAkSDgoGc3RhdHVzGAYgASgJEigKB3BheWxvYWQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIqsBChRBZ2VudFRpbWVsaW5lU3VtbWFyeRIcCgtldmVudF9jb3VudBgBIAEoBUIHukgEGgIoABIlChR0b29sX2V4ZWN1dGlvbl9jb3VudBgCIAEoBUIHukgEGgIoABIlChR0aW1lbGluZV9lbnRyeV9jb3VudBgDIAEoBUIHukgEGgIoABInChZlcnJvcl9saWtlX2VudHJ5X2NvdW50GAQgASgFQge6SAQaAigAIkYKFUxpc3RBZ2VudFRvb2xzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJIn8KFkxpc3RBZ2VudFRvb2xzUmVzcG9uc2USLwoFdG9vbHMYASADKAsyIC5mZXJtYXRhLnYxLkFnZW50VG9vbENhdGFsb2dJdGVtEjQKB3N1bW1hcnkYAiABKAsyIy5mZXJtYXRhLnYxLkFnZW50VG9vbENhdGFsb2dTdW1tYXJ5IrcBChpBbmFseXplQWdlbnRBY3Rpb25zUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhcKBnByb21wdBgDIAEoCUIHukgEcgIQARIxChBwcm9wb3NlZF9hY3Rpb25zGAQgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIVCg1hbGxvd2VkX3Rvb2xzGAUgAygJIvYBChtBbmFseXplQWdlbnRBY3Rpb25zUmVzcG9uc2USDgoGcGFzc2VkGAEgASgIEhsKCnJpc2tfc2NvcmUYAiABKAVCB7pIBBoCKAASJwoGaXNzdWVzGAMgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIdCgxhY3Rpb25fY291bnQYBCABKAVCB7pIBBoCKAASIAoPYmxvY2tlZF9hY3Rpb25zGAUgASgFQge6SAQaAigAEhcKD3JlY29tbWVuZGF0aW9ucxgGIAMoCRInCgZyZXBvcnQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0ItIBCiBCdWlsZEFnZW50U2Vzc2lvblRpbWVsaW5lUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhsKCnNlc3Npb25faWQYAyABKAlCB7pIBHICEAESJwoGZXZlbnRzGAQgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIwCg90b29sX2V4ZWN1dGlvbnMYBSADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IrQBCiFCdWlsZEFnZW50U2Vzc2lvblRpbWVsaW5lUmVzcG9uc2USGwoKc2Vzc2lvbl9pZBgBIAEoCUIHukgEcgIQARIxCgdzdW1tYXJ5GAIgASgLMiAuZmVybWF0YS52MS5BZ2VudFRpbWVsaW5lU3VtbWFyeRIpCgh0aW1lbGluZRgDIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFAoMbmV4dF9hY3Rpb25zGAQgAygJIlIKIUxpc3RBZ2VudFdvcmtmbG93VGVtcGxhdGVzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJIloKIkxpc3RBZ2VudFdvcmtmbG93VGVtcGxhdGVzUmVzcG9uc2USNAoJdGVtcGxhdGVzGAEgAygLMiEuZmVybWF0YS52MS5BZ2VudFdvcmtmbG93VGVtcGxhdGUi1gEKJkNyZWF0ZUFnZW50V29ya2Zsb3dGcm9tVGVtcGxhdGVSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESHAoLdGVtcGxhdGVfaWQYAyABKAlCB7pIBHICEAESDAoEbmFtZRgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRIqCglvdmVycmlkZXMYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IlYKJ0NyZWF0ZUFnZW50V29ya2Zsb3dGcm9tVGVtcGxhdGVSZXNwb25zZRIrCgh3b3JrZmxvdxgBIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvdyK/AQoaQ3JlYXRlQWdlbnRXb3JrZmxvd1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARI5Cg5hZ2VudF93b3JrZmxvdxgDIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd0IGukgDyAEBEhMKC3RlbXBsYXRlX2lkGAQgASgJEhAKCGNhdGVnb3J5GAUgASgJIkoKG0NyZWF0ZUFnZW50V29ya2Zsb3dSZXNwb25zZRIrCgh3b3JrZmxvdxgBIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvdyJmChdHZXRBZ2VudFdvcmtmbG93UmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhwKC3dvcmtmbG93X2lkGAMgASgJQge6SARyAhABIkcKGEdldEFnZW50V29ya2Zsb3dSZXNwb25zZRIrCgh3b3JrZmxvdxgBIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvdyJ7ChlMaXN0QWdlbnRXb3JrZmxvd3NSZXF1ZXN0EhcKD29yZ2FuaXphdGlvbl9pZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFgoFbGltaXQYAyABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAQgASgFQge6SAQaAigAIlwKGkxpc3RBZ2VudFdvcmtmbG93c1Jlc3BvbnNlEiwKCXdvcmtmbG93cxgBIAMoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvdxIQCghoYXNfbW9yZRgCIAEoCCLjAQoaVXBkYXRlQWdlbnRXb3JrZmxvd1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARIcCgt3b3JrZmxvd19pZBgDIAEoCUIHukgEcgIQARI5Cg5hZ2VudF93b3JrZmxvdxgEIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvd0IGukgDyAEBEhQKDGNsZWFyX2ZpZWxkcxgFIAMoCRIVCg1yZXBsYWNlX3N0ZXBzGAYgASgIIkoKG1VwZGF0ZUFnZW50V29ya2Zsb3dSZXNwb25zZRIrCgh3b3JrZmxvdxgBIAEoCzIZLmZlcm1hdGEudjEuQWdlbnRXb3JrZmxvdyJ7ChpEZWxldGVBZ2VudFdvcmtmbG93UmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhwKC3dvcmtmbG93X2lkGAMgASgJQge6SARyAhABIjIKG0RlbGV0ZUFnZW50V29ya2Zsb3dSZXNwb25zZRITCgt3b3JrZmxvd19pZBgBIAEoCSK9AgoXUnVuQWdlbnRXb3JrZmxvd1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIcCgt3b3JrZmxvd19pZBgDIAEoCUIHukgEcgIQARIWCgVpbnB1dBgEIAEoCUIHukgEcgIQARIVCg1hbGxvd2VkX3Rvb2xzGAUgAygJEhsKE2FsbG93X3Jpc2t5X2FjdGlvbnMYBiABKAgSKAoHY29udGV4dBgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMQoQcHJvcG9zZWRfYWN0aW9ucxgIIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKc2Vzc2lvbl9pZBgJIAEoCRIPCgdzdXJmYWNlGAogASgJIrQCChhSdW5BZ2VudFdvcmtmbG93UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEhMKC3dvcmtmbG93X2lkGAMgASgJEhIKCnNlc3Npb25faWQYBCABKAkSDgoGc3RhdHVzGAUgASgJEg0KBWlucHV0GAYgASgJEg8KB2NvbnRlbnQYByABKAkSDQoFZXJyb3IYCCABKAkSKQoIcmVkX3RlYW0YCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiYKBXN0ZXBzGAogAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIUCgxuZXh0X2FjdGlvbnMYCyADKAkSJQoEZGF0YRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi2wEKFkNyZWF0ZUFnZW50SG9va1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIPCgdob29rX2lkGAMgASgJEhUKBG5hbWUYBCABKAlCB7pIBHICEAESEQoJaG9va190eXBlGAUgASgJEhQKB2VuYWJsZWQYBiABKAhIAIgBARIsCgtjb25maWdfanNvbhgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCCgoIX2VuYWJsZWQiRwoXQ3JlYXRlQWdlbnRIb29rUmVzcG9uc2USLAoEaG9vaxgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkIncKFUxpc3RBZ2VudEhvb2tzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhYKBWxpbWl0GAMgASgFQge6SAQaAigAEhcKBm9mZnNldBgEIAEoBUIHukgEGgIoACJZChZMaXN0QWdlbnRIb29rc1Jlc3BvbnNlEi0KBWhvb2tzGAEgAygLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQSEAoIaGFzX21vcmUYAiABKAgi/AEKFlVwZGF0ZUFnZW50SG9va1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIYCgdob29rX2lkGAMgASgJQge6SARyAhABEhEKBG5hbWUYBCABKAlIAIgBARIWCglob29rX3R5cGUYBSABKAlIAYgBARIUCgdlbmFibGVkGAYgASgISAKIAQESLAoLY29uZmlnX2pzb24YByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QgcKBV9uYW1lQgwKCl9ob29rX3R5cGVCCgoIX2VuYWJsZWQiRwoXVXBkYXRlQWdlbnRIb29rUmVzcG9uc2USLAoEaG9vaxgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkImoKFkRlbGV0ZUFnZW50SG9va1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIYCgdob29rX2lkGAMgASgJQge6SARyAhABIioKF0RlbGV0ZUFnZW50SG9va1Jlc3BvbnNlEg8KB2hvb2tfaWQYASABKAkiZAoWR2V0QWdlbnRTZXNzaW9uUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhsKCnNlc3Npb25faWQYAyABKAlCB7pIBHICEAEiSgoXR2V0QWdlbnRTZXNzaW9uUmVzcG9uc2USLwoHc2Vzc2lvbhgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkIooBChhMaXN0QWdlbnRTZXNzaW9uc1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIOCgZzdGF0dXMYAyABKAkSFgoFbGltaXQYBCABKAVCB7pIBBoCKAASFwoGb2Zmc2V0GAUgASgFQge6SAQaAigAIl8KGUxpc3RBZ2VudFNlc3Npb25zUmVzcG9uc2USMAoIc2Vzc2lvbnMYASADKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZBIQCghoYXNfbW9yZRgCIAEoCCLYAQoaQ29udHJvbEFnZW50U2Vzc2lvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEj8KBmFjdGlvbhgEIAEoDjIlLmZlcm1hdGEudjEuQWdlbnRTZXNzaW9uQ29udHJvbEFjdGlvbkIIukgFggECEAESDgoGcmVhc29uGAUgASgJEhQKDHJlcXVlc3RlZF9ieRgGIAEoCSJOChtDb250cm9sQWdlbnRTZXNzaW9uUmVzcG9uc2USLwoHc2Vzc2lvbhgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkItgCCh5DcmVhdGVBZ2VudFNlc3Npb25FdmVudFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEhAKCGV2ZW50X2lkGAQgASgJEhIKCmV2ZW50X3R5cGUYBSABKAkSDwoHc3VtbWFyeRgGIAEoCRItCgl0aW1lc3RhbXAYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEigKB3BheWxvYWQYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EikKCGV2aWRlbmNlGAkgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgZvdXRwdXQYCiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUiUAofQ3JlYXRlQWdlbnRTZXNzaW9uRXZlbnRSZXNwb25zZRItCgVldmVudBgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkIqwBCh1MaXN0QWdlbnRTZXNzaW9uRXZlbnRzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhsKCnNlc3Npb25faWQYAyABKAlCB7pIBHICEAESDgoGc3RhdHVzGAQgASgJEhYKBWxpbWl0GAUgASgFQge6SAQaAigAEhcKBm9mZnNldBgGIAEoBUIHukgEGgIoACJiCh5MaXN0QWdlbnRTZXNzaW9uRXZlbnRzUmVzcG9uc2USLgoGZXZlbnRzGAEgAygLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQSEAoIaGFzX21vcmUYAiABKAgipQMKH0NyZWF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEhkKEXRvb2xfZXhlY3V0aW9uX2lkGAQgASgJEhoKCXRvb2xfbmFtZRgFIAEoCUIHukgEcgIQARIOCgZzdGF0dXMYBiABKAkSCwoDcnBjGAcgASgJEigKB3JlcXVlc3QYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiYKBWlucHV0GAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCgpzdGFydGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIpCghldmlkZW5jZRgLIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLAoLYW5ub3RhdGlvbnMYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IloKIENyZWF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlc3BvbnNlEjYKDnRvb2xfZXhlY3V0aW9uGAEgASgLMh4uZmVybWF0YS52MS5BZ2VudFJ1bnRpbWVSZWNvcmQi1gMKH1VwZGF0ZUFnZW50VG9vbEV4ZWN1dGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEiIKEXRvb2xfZXhlY3V0aW9uX2lkGAQgASgJQge6SARyAhABEhMKBnN0YXR1cxgFIAEoCUgAiAEBEhYKCWV4aXRfY29kZRgGIAEoBUgBiAEBEh0KEGR1cmF0aW9uX3NlY29uZHMYByABKAFIAogBARImCgZvdXRwdXQYCCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSDQoFZXJyb3IYCSABKAkSKQoIZXZpZGVuY2UYCiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiwKC2Fubm90YXRpb25zGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIwCgxjb21wbGV0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgkKB19zdGF0dXNCDAoKX2V4aXRfY29kZUITChFfZHVyYXRpb25fc2Vjb25kcyJaCiBVcGRhdGVBZ2VudFRvb2xFeGVjdXRpb25SZXNwb25zZRI2Cg50b29sX2V4ZWN1dGlvbhgBIAEoCzIeLmZlcm1hdGEudjEuQWdlbnRSdW50aW1lUmVjb3JkIq0BCh5MaXN0QWdlbnRUb29sRXhlY3V0aW9uc1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEg4KBnN0YXR1cxgEIAEoCRIWCgVsaW1pdBgFIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBiABKAVCB7pIBBoCKAAibAofTGlzdEFnZW50VG9vbEV4ZWN1dGlvbnNSZXNwb25zZRI3Cg90b29sX2V4ZWN1dGlvbnMYASADKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZBIQCghoYXNfbW9yZRgCIAEoCCLeAQoaRGVjaWRlQWdlbnRBcHByb3ZhbFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIbCgpzZXNzaW9uX2lkGAMgASgJQge6SARyAhABEhwKC2FwcHJvdmFsX2lkGAQgASgJQge6SARyAhABEj0KCGRlY2lzaW9uGAUgASgOMiEuZmVybWF0YS52MS5BZ2VudEFwcHJvdmFsRGVjaXNpb25CCLpIBYIBAhABEg4KBnJlYXNvbhgGIAEoCSJPChtEZWNpZGVBZ2VudEFwcHJvdmFsUmVzcG9uc2USMAoIYXBwcm92YWwYASABKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZCKoAQoZTGlzdEFnZW50QXBwcm92YWxzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhsKCnNlc3Npb25faWQYAyABKAlCB7pIBHICEAESDgoGc3RhdHVzGAQgASgJEhYKBWxpbWl0GAUgASgFQge6SAQaAigAEhcKBm9mZnNldBgGIAEoBUIHukgEGgIoACJhChpMaXN0QWdlbnRBcHByb3ZhbHNSZXNwb25zZRIxCglhcHByb3ZhbHMYASADKAsyHi5mZXJtYXRhLnYxLkFnZW50UnVudGltZVJlY29yZBIQCghoYXNfbW9yZRgCIAEoCCKEAQoeR2V0QWdlbnRTZXNzaW9uVGltZWxpbmVSZXF1ZXN0EhcKD29yZ2FuaXphdGlvbl9pZBgBIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSGwoKc2Vzc2lvbl9pZBgDIAEoCUIHukgEcgIQARIWCgVsaW1pdBgEIAEoBUIHukgEGgIoACKyAQofR2V0QWdlbnRTZXNzaW9uVGltZWxpbmVSZXNwb25zZRIbCgpzZXNzaW9uX2lkGAEgASgJQge6SARyAhABEjEKB3N1bW1hcnkYAiABKAsyIC5mZXJtYXRhLnYxLkFnZW50VGltZWxpbmVTdW1tYXJ5EikKCHRpbWVsaW5lGAMgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIUCgxuZXh0X2FjdGlvbnMYBCADKAkifQocVXBzZXJ0Q3VzdG9tRXZhbHVhdG9yUmVxdWVzdBIVCgRuYW1lGAEgASgJQge6SARyAhABEhcKBnNvdXJjZRgCIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAyABKAkSFAoMd29ya3NwYWNlX2lkGAQgASgJIk8KHVVwc2VydEN1c3RvbUV2YWx1YXRvclJlc3BvbnNlEi4KCWV2YWx1YXRvchgBIAEoCzIbLmZlcm1hdGEudjEuQ3VzdG9tRXZhbHVhdG9yImEKGUdldEN1c3RvbUV2YWx1YXRvclJlcXVlc3QSFQoEbmFtZRgBIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJIkwKGkdldEN1c3RvbUV2YWx1YXRvclJlc3BvbnNlEi4KCWV2YWx1YXRvchgBIAEoCzIbLmZlcm1hdGEudjEuQ3VzdG9tRXZhbHVhdG9yIn0KG0xpc3RDdXN0b21FdmFsdWF0b3JzUmVxdWVzdBIWCgVsaW1pdBgBIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYAiABKAVCB7pIBBoCKAASFwoPb3JnYW5pemF0aW9uX2lkGAMgASgJEhQKDHdvcmtzcGFjZV9pZBgEIAEoCSJhChxMaXN0Q3VzdG9tRXZhbHVhdG9yc1Jlc3BvbnNlEi8KCmV2YWx1YXRvcnMYASADKAsyGy5mZXJtYXRhLnYxLkN1c3RvbUV2YWx1YXRvchIQCghoYXNfbW9yZRgCIAEoCCJkChxEZWxldGVDdXN0b21FdmFsdWF0b3JSZXF1ZXN0EhUKBG5hbWUYASABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAIgASgJEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSIfCh1EZWxldGVDdXN0b21FdmFsdWF0b3JSZXNwb25zZSLQAgoSVXBzZXJ0SnVkZ2VSZXF1ZXN0EhUKBG5hbWUYASABKAlCB7pIBHICEAESLQoEa2luZBgCIAEoDjIVLmZlcm1hdGEudjEuSnVkZ2VLaW5kQgi6SAWCAQIQARIOCgZwcm9tcHQYAyABKAkSDQoFbW9kZWwYBCABKAkSLAoLdGVtcGVyYXR1cmUYBSABKAFCF7pIFBISGQAAAAAAAABAKQAAAAAAAAAAEhsKCm1heF90b2tlbnMYBiABKAVCB7pIBBoCKAASEAoIY3JpdGVyaWEYByADKAkSHgoGd2VpZ2h0GAggASgBQg66SAsSCSkAAAAAAAAAABIpCghtZXRhZGF0YRgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFwoPb3JnYW5pemF0aW9uX2lkGAogASgJEhQKDHdvcmtzcGFjZV9pZBgLIAEoCSI3ChNVcHNlcnRKdWRnZVJlc3BvbnNlEiAKBWp1ZGdlGAEgASgLMhEuZmVybWF0YS52MS5KdWRnZSJXCg9HZXRKdWRnZVJlcXVlc3QSFQoEbmFtZRgBIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJIjQKEEdldEp1ZGdlUmVzcG9uc2USIAoFanVkZ2UYASABKAsyES5mZXJtYXRhLnYxLkp1ZGdlInMKEUxpc3RKdWRnZXNSZXF1ZXN0EhYKBWxpbWl0GAEgASgFQge6SAQaAigAEhcKBm9mZnNldBgCIAEoBUIHukgEGgIoABIXCg9vcmdhbml6YXRpb25faWQYAyABKAkSFAoMd29ya3NwYWNlX2lkGAQgASgJIkkKEkxpc3RKdWRnZXNSZXNwb25zZRIhCgZqdWRnZXMYASADKAsyES5mZXJtYXRhLnYxLkp1ZGdlEhAKCGhhc19tb3JlGAIgASgIIloKEkRlbGV0ZUp1ZGdlUmVxdWVzdBIVCgRuYW1lGAEgASgJQge6SARyAhABEhcKD29yZ2FuaXphdGlvbl9pZBgCIAEoCRIUCgx3b3Jrc3BhY2VfaWQYAyABKAkiFQoTRGVsZXRlSnVkZ2VSZXNwb25zZSK+AgoUU3RhcnRTY2VuYXJpb1JlcXVlc3QSHAoLc2NlbmFyaW9faWQYASABKAlCB7pIBHICEAESFQoNcnVuX2lkX3ByZWZpeBgCIAEoCRIQCgh0cmFjZV9pZBgDIAEoCRIoCgdhY3R1YWxzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCg1lcG9jaF9hY3R1YWxzGAUgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFwoGZXBvY2hzGAcgASgFQge6SAQaAigAEhIKCmxpbmVhZ2VfaWQYCCABKAkSFwoPb3JnYW5pemF0aW9uX2lkGAkgASgJEhQKDHdvcmtzcGFjZV9pZBgKIAEoCSJhChVTdGFydFNjZW5hcmlvUmVzcG9uc2USJQoEcnVucxgBIAMoCzIXLmZlcm1hdGEudjEuU2NlbmFyaW9SdW4SIQoQcHVibGlzaGVkX2V2ZW50cxgCIAEoBUIHukgEGgIoACK9AgodQ3JlYXRlQW5kU3RhcnRTY2VuYXJpb1JlcXVlc3QSOwoIc2NlbmFyaW8YASABKAsyIS5mZXJtYXRhLnYxLkNyZWF0ZVNjZW5hcmlvUmVxdWVzdEIGukgDyAEBEhUKDXJ1bl9pZF9wcmVmaXgYAiABKAkSEAoIdHJhY2VfaWQYAyABKAkSKAoHYWN0dWFscxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLgoNZXBvY2hfYWN0dWFscxgFIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLwoOc3RhcnRfbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhcKBmVwb2NocxgHIAEoBUIHukgEGgIoABISCgpsaW5lYWdlX2lkGAggASgJIpIBCh5DcmVhdGVBbmRTdGFydFNjZW5hcmlvUmVzcG9uc2USJgoIc2NlbmFyaW8YASABKAsyFC5mZXJtYXRhLnYxLlNjZW5hcmlvEiUKBHJ1bnMYAiADKAsyFy5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuEiEKEHB1Ymxpc2hlZF9ldmVudHMYAyABKAVCB7pIBBoCKAAitQMKGFJlY29yZFNjZW5hcmlvUnVuUmVxdWVzdBIKCgJpZBgBIAEoCRIcCgtzY2VuYXJpb19pZBgCIAEoCUIHukgEcgIQARIgCg9vcmdhbml6YXRpb25faWQYAyABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAQgASgJQge6SARyAhABEhYKBWVwb2NoGAUgASgFQge6SAQaAigAEjcKBnN0YXR1cxgGIAEoDjIdLmZlcm1hdGEudjEuU2NlbmFyaW9SdW5TdGF0dXNCCLpIBYIBAhABEioKBnJlc3VsdBgHIAEoCzIaLmZlcm1hdGEudjEuU2NlbmFyaW9SZXN1bHQSEAoIdHJhY2VfaWQYCCABKAkSKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCnN0YXJ0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDGNvbXBsZXRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEgoKbGluZWFnZV9pZBgMIAEoCSJBChlSZWNvcmRTY2VuYXJpb1J1blJlc3BvbnNlEiQKA3J1bhgBIAEoCzIXLmZlcm1hdGEudjEuU2NlbmFyaW9SdW4iXwoVR2V0U2NlbmFyaW9SdW5SZXF1ZXN0EhcKBnJ1bl9pZBgBIAEoCUIHukgEcgIQARIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSFAoMd29ya3NwYWNlX2lkGAMgASgJIj4KFkdldFNjZW5hcmlvUnVuUmVzcG9uc2USJAoDcnVuGAEgASgLMhcuZmVybWF0YS52MS5TY2VuYXJpb1J1biLdAgoXTGlzdFNjZW5hcmlvUnVuc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRITCgtzY2VuYXJpb19pZBgDIAEoCRIWCgVsaW1pdBgEIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBSABKAVCB7pIBBoCKAASNwoGc3RhdHVzGAYgASgOMh0uZmVybWF0YS52MS5TY2VuYXJpb1J1blN0YXR1c0IIukgFggECEAESDgoGc291cmNlGAcgASgJEhUKDWV2YWx1YXRpb25faWQYCCABKAkSEAoIc3VpdGVfaWQYCSABKAkSFAoMdGVzdF9jYXNlX2lkGAogASgJEhQKDGNhbmRpZGF0ZV9pZBgLIAEoCRIXCg9jYW5kaWRhdGVfbGFiZWwYDCABKAkSDQoFbW9kZWwYDSABKAkiUwoYTGlzdFNjZW5hcmlvUnVuc1Jlc3BvbnNlEiUKBHJ1bnMYASADKAsyFy5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuEhAKCGhhc19tb3JlGAIgASgIIpkBCipHZXRFdmFsdWF0aW9uT2JzZXJ2YWJpbGl0eURhc2hib2FyZFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIYCgRkYXlzGAMgASgFQgq6SAcaBRjtAigAEhkKBWxpbWl0GAQgASgFQgq6SAcaBRj0AygAIpUDCh5FdmFsdWF0aW9uT2JzZXJ2YWJpbGl0eVN1bW1hcnkSGwoKdG90YWxfcnVucxgBIAEoBUIHukgEGgIoABIeCg10b3RhbF9yZXN1bHRzGAIgASgFQge6SAQaAigAEh8KDmZhaWxlZF9yZXN1bHRzGAMgASgFQge6SAQaAigAEiUKDWF2ZXJhZ2Vfc2NvcmUYBCABKAFCDrpICxIJKQAAAAAAAAAAEiEKCXBhc3NfcmF0ZRgFIAEoAUIOukgLEgkpAAAAAAAAAAASJAoKdG90YWxfY29zdBgGIAEoCzIQLmNvbW1vbi52MS5Nb25leRIqChJhdmVyYWdlX2xhdGVuY3lfbXMYByABKAFCDrpICxIJKQAAAAAAAAAAEh0KDHRvdGFsX3Rva2VucxgIIAEoA0IHukgEIgIoABInChZyZWdyZXNzaW9uX2FsZXJ0X2NvdW50GAkgASgFQge6SAQaAigAEjEKF3RvdGFsX2Nvc3RzX2J5X2N1cnJlbmN5GAogAygLMhAuY29tbW9uLnYxLk1vbmV5IogEChpFdmFsdWF0aW9uUmVjZW50UnVuU3VtbWFyeRIgCg9zY2VuYXJpb19ydW5faWQYASABKAlCB7pIBHICEAESEwoLc2NlbmFyaW9faWQYAiABKAkSHgoNdG90YWxfcmVzdWx0cxgDIAEoBUIHukgEGgIoABIiChFjb21wbGV0ZWRfcmVzdWx0cxgEIAEoBUIHukgEGgIoABIfCg5mYWlsZWRfcmVzdWx0cxgFIAEoBUIHukgEGgIoABIlCg1hdmVyYWdlX3Njb3JlGAYgASgBQg66SAsSCSkAAAAAAAAAABIkCgp0b3RhbF9jb3N0GAcgASgLMhAuY29tbW9uLnYxLk1vbmV5EiYKDGF2ZXJhZ2VfY29zdBgIIAEoCzIQLmNvbW1vbi52MS5Nb25leRIqChJhdmVyYWdlX2xhdGVuY3lfbXMYCSABKAFCDrpICxIJKQAAAAAAAAAAEh0KDHRvdGFsX3Rva2VucxgKIAEoA0IHukgEIgIoABIuCgpzdGFydGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxjb21wbGV0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhAKCHRyYWNlX2lkGA0gASgJEhoKEm9iamVjdGl2ZV9hY2hpZXZlZBgOIAEoCCLRAwoZRXZhbHVhdGlvblJlZ3Jlc3Npb25BbGVydBITCgJpZBgBIAEoCUIHukgEcgIQARITCgtzY2VuYXJpb19pZBgCIAEoCRIgCg9zY2VuYXJpb19ydW5faWQYAyABKAlCB7pIBHICEAESEAoIc2V2ZXJpdHkYBCABKAkSDwoHbWVzc2FnZRgFIAEoCRItChVyZWdyZXNzaW9uX3BlcmNlbnRhZ2UYBiABKAFCDrpICxIJKQAAAAAAAAAAEiAKGGJhc2VsaW5lX3NjZW5hcmlvX3J1bl9pZBgHIAEoCRIqChJhdmVyYWdlX2xhdGVuY3lfbXMYCCABKAFCDrpICxIJKQAAAAAAAAAAEiQKCnRvdGFsX2Nvc3QYCSABKAsyEC5jb21tb24udjEuTW9uZXkSEwoLZW52aXJvbm1lbnQYCiABKAkSIQoZc3RhdGlzdGljYWxseV9zaWduaWZpY2FudBgLIAEoCBIfCgdwX3ZhbHVlGAwgASgBQg66SAsSCSkAAAAAAAAAABIYChBkZWdyYWRlZF9tZXRyaWNzGA0gAygJEi8KC3JlY29yZGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLpAQorR2V0RXZhbHVhdGlvbk9ic2VydmFiaWxpdHlEYXNoYm9hcmRSZXNwb25zZRI7CgdzdW1tYXJ5GAEgASgLMiouZmVybWF0YS52MS5FdmFsdWF0aW9uT2JzZXJ2YWJpbGl0eVN1bW1hcnkSOwoLcmVjZW50X3J1bnMYAiADKAsyJi5mZXJtYXRhLnYxLkV2YWx1YXRpb25SZWNlbnRSdW5TdW1tYXJ5EkAKEXJlZ3Jlc3Npb25fYWxlcnRzGAMgAygLMiUuZmVybWF0YS52MS5FdmFsdWF0aW9uUmVncmVzc2lvbkFsZXJ0InEKHkdldEV2YWx1YXRpb25SdW5NZXRyaWNzUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhcKBnJ1bl9pZBgDIAEoCUIHukgEcgIQASK+AgobRXZhbHVhdGlvblJ1bk1ldHJpY3NTdW1tYXJ5Eh0KDHJlc3VsdF9jb3VudBgBIAEoBUIHukgEGgIoABIfCg5mYWlsZWRfcmVzdWx0cxgCIAEoBUIHukgEGgIoABIlCg1hdmVyYWdlX3Njb3JlGAMgASgBQg66SAsSCSkAAAAAAAAAABIkCgp0b3RhbF9jb3N0GAQgASgLMhAuY29tbW9uLnYxLk1vbmV5EiYKDGF2ZXJhZ2VfY29zdBgFIAEoCzIQLmNvbW1vbi52MS5Nb25leRIqChJhdmVyYWdlX2xhdGVuY3lfbXMYBiABKAFCDrpICxIJKQAAAAAAAAAAEh8KDnA5NV9sYXRlbmN5X21zGAcgASgDQge6SAQiAigAEh0KDHRvdGFsX3Rva2VucxgIIAEoA0IHukgEIgIoACLdAQoaRXZhbHVhdGlvblJ1blJlc3VsdE1ldHJpY3MSFAoMYXNzZXJ0aW9uX2lkGAEgASgJEg4KBnBhc3NlZBgCIAEoCBIdCgVzY29yZRgDIAEoAUIOukgLEgkpAAAAAAAAAAASDgoGYWN0dWFsGAQgASgJEg8KB21lc3NhZ2UYBSABKAkSKQoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei4KCmNyZWF0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIrYBCh9HZXRFdmFsdWF0aW9uUnVuTWV0cmljc1Jlc3BvbnNlEiAKD3NjZW5hcmlvX3J1bl9pZBgBIAEoCUIHukgEcgIQARI4CgdzdW1tYXJ5GAIgASgLMicuZmVybWF0YS52MS5FdmFsdWF0aW9uUnVuTWV0cmljc1N1bW1hcnkSNwoHcmVzdWx0cxgDIAMoCzImLmZlcm1hdGEudjEuRXZhbHVhdGlvblJ1blJlc3VsdE1ldHJpY3MilgIKIUNyZWF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEgwKBG5hbWUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSIAoPYmFzZWxpbmVfcnVuX2lkGAUgASgJQge6SARyAhABEhoKEmNvbXBhcmlzb25fcnVuX2lkcxgGIAMoCRIYChBjb25maWRlbmNlX2xldmVsGAcgASgBEhwKFHN0YXRpc3RpY2FsX2FuYWx5c2lzGAggASgIEiAKGGluY2x1ZGVfZGV0YWlsZWRfcmVzdWx0cxgJIAEoCCJaCiJDcmVhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlc3BvbnNlEjQKCmNvbXBhcmlzb24YASABKAsyIC5mZXJtYXRhLnYxLkV2YWx1YXRpb25Db21wYXJpc29uIngKHkdldEV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBIeCg1jb21wYXJpc29uX2lkGAEgASgJQge6SARyAhABEiAKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAyABKAkiVwofR2V0RXZhbHVhdGlvbkNvbXBhcmlzb25SZXNwb25zZRI0Cgpjb21wYXJpc29uGAEgASgLMiAuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbiKLAQogTGlzdEV2YWx1YXRpb25Db21wYXJpc29uc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIWCgVsaW1pdBgDIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBCABKAVCB7pIBBoCKAAibAohTGlzdEV2YWx1YXRpb25Db21wYXJpc29uc1Jlc3BvbnNlEjUKC2NvbXBhcmlzb25zGAEgAygLMiAuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbhIQCghoYXNfbW9yZRgCIAEoCCLBAQohVXBkYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXF1ZXN0Eh4KDWNvbXBhcmlzb25faWQYASABKAlCB7pIBHICEAESIAoPb3JnYW5pemF0aW9uX2lkGAIgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgDIAEoCRIRCgRuYW1lGAQgASgJSACIAQESGAoLZGVzY3JpcHRpb24YBSABKAlIAYgBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb24iWgoiVXBkYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXNwb25zZRI0Cgpjb21wYXJpc29uGAEgASgLMiAuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbiJ7CiFEZWxldGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QSHgoNY29tcGFyaXNvbl9pZBgBIAEoCUIHukgEcgIQARIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAMgASgJIjsKIkRlbGV0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2USFQoNY29tcGFyaXNvbl9pZBgBIAEoCSJ/CiVSZWdlbmVyYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXF1ZXN0Eh4KDWNvbXBhcmlzb25faWQYASABKAlCB7pIBHICEAESIAoPb3JnYW5pemF0aW9uX2lkGAIgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgDIAEoCSJeCiZSZWdlbmVyYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXNwb25zZRI0Cgpjb21wYXJpc29uGAEgASgLMiAuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbiKOBgoURXZhbHVhdGlvbkNvbXBhcmlzb24SHgoNY29tcGFyaXNvbl9pZBgBIAEoCUIHukgEcgIQARIOCgZzdGF0dXMYAiABKAkSDAoEbmFtZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIgCg9iYXNlbGluZV9ydW5faWQYBSABKAlCB7pIBHICEAESGgoSY29tcGFyaXNvbl9ydW5faWRzGAYgAygJEkcKE2Jhc2VsaW5lX2V2YWx1YXRpb24YByABKAsyKi5mZXJtYXRhLnYxLkV2YWx1YXRpb25Db21wYXJpc29uUnVuU3VtbWFyeRJKChZjb21wYXJpc29uX2V2YWx1YXRpb25zGAggAygLMiouZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvblJ1blN1bW1hcnkSQgoSbWV0cmljX2NvbXBhcmlzb25zGAkgAygLMiYuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbk1ldHJpYxIWCg5vdmVyYWxsX3dpbm5lchgKIAEoCRJHChNzdGF0aXN0aWNhbF9zdW1tYXJ5GAsgASgLMiouZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvblN0YXRpc3RpY3MSFwoPcmVjb21tZW5kYXRpb25zGAwgAygJEi4KCmNyZWF0ZWRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhIKCmNyZWF0ZWRfYnkYDiABKAkSIAoPb3JnYW5pemF0aW9uX2lkGA8gASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgQIAEoCRIgChhpbmNsdWRlX2RldGFpbGVkX3Jlc3VsdHMYESABKAgSGQoRcmVxdWVzdGVkX3J1bl9pZHMYEiADKAkSLgoKdXBkYXRlZF9hdBgTIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASKQoIbWV0YWRhdGEYFCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Io8ECh5FdmFsdWF0aW9uQ29tcGFyaXNvblJ1blN1bW1hcnkSIAoPc2NlbmFyaW9fcnVuX2lkGAEgASgJQge6SARyAhABEhIKCm1vZGVsX25hbWUYAiABKAkSFwoPdGVzdF9zdWl0ZV9uYW1lGAMgASgJEhwKC3RvdGFsX3Rlc3RzGAQgASgFQge6SAQaAigAEh0KDHBhc3NlZF90ZXN0cxgFIAEoBUIHukgEGgIoABIdCgxmYWlsZWRfdGVzdHMYBiABKAVCB7pIBBoCKAASJQoNYXZlcmFnZV9zY29yZRgHIAEoAUIOukgLEgkpAAAAAAAAAAASIQoJcGFzc19yYXRlGAggASgBQg66SAsSCSkAAAAAAAAAABIkCgp0b3RhbF9jb3N0GAkgASgLMhAuY29tbW9uLnYxLk1vbmV5Eh0KDHRvdGFsX3Rva2VucxgKIAEoA0IHukgEIgIoABIuChZleGVjdXRpb25fdGltZV9zZWNvbmRzGAsgASgBQg66SAsSCSkAAAAAAAAAABIuCgpjcmVhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIaChJvYmplY3RpdmVfYWNoaWV2ZWQYDSABKAgSNwoGc3RhdHVzGA4gASgOMh0uZmVybWF0YS52MS5TY2VuYXJpb1J1blN0YXR1c0IIukgFggECEAEi0AIKGkV2YWx1YXRpb25Db21wYXJpc29uTWV0cmljEhwKC21ldHJpY19uYW1lGAEgASgJQge6SARyAhABEhYKDmJhc2VsaW5lX3ZhbHVlGAIgASgBEhgKEGNvbXBhcmlzb25fdmFsdWUYAyABKAESEgoKZGlmZmVyZW5jZRgEIAEoARIZChFwZXJjZW50YWdlX2NoYW5nZRgFIAEoARIWCg5pc19zaWduaWZpY2FudBgGIAEoCBIYChBjb25maWRlbmNlX2xldmVsGAcgASgBEiIKEWNvbXBhcmlzb25fcnVuX2lkGAggASgJQge6SARyAhABEhgKEGhpZ2hlcl9pc19iZXR0ZXIYCSABKAgSDwoHcF92YWx1ZRgKIAEoARITCgtlZmZlY3Rfc2l6ZRgLIAEoARIdChVzdGF0aXN0aWNhbF90ZXN0X3VzZWQYDCABKAki6QEKHkV2YWx1YXRpb25Db21wYXJpc29uU3RhdGlzdGljcxIgCg9iYXNlbGluZV9ydW5faWQYASABKAlCB7pIBHICEAESIwoSY29tcGFyZWRfcnVuX2NvdW50GAIgASgFQge6SAQaAigAEh0KDG1ldHJpY19jb3VudBgDIAEoBUIHukgEGgIoABIpChhzaWduaWZpY2FudF9tZXRyaWNfY291bnQYBCABKAVCB7pIBBoCKAASGAoQY29uZmlkZW5jZV9sZXZlbBgFIAEoARIcChRzdGF0aXN0aWNhbF9hbmFseXNpcxgGIAEoCCKoAQokR2V0RXZhbHVhdGlvbkdvdmVybmFuY2VSZXBvcnRSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLc2NlbmFyaW9faWQYAyABKAkSGAoEZGF5cxgEIAEoBUIKukgHGgUY7QIoABIZCgVsaW1pdBgFIAEoBUIKukgHGgUY9AMoACLRAQocR292ZXJuYW5jZUFzc2VydGlvbkFnZ3JlZ2F0ZRIdCgxhc3NlcnRpb25faWQYASABKAlCB7pIBHICEAESFgoFdG90YWwYAiABKAVCB7pIBBoCKAASFwoGcGFzc2VkGAMgASgFQge6SAQaAigAEhcKBmZhaWxlZBgEIAEoBUIHukgEGgIoABIhCglwYXNzX3JhdGUYBSABKAFCDrpICxIJKQAAAAAAAAAAEiUKDWF2ZXJhZ2Vfc2NvcmUYBiABKAFCDrpICxIJKQAAAAAAAAAAIs4EChdHb3Zlcm5hbmNlUmVwb3J0U3VtbWFyeRIbCgp0b3RhbF9ydW5zGAEgASgFQge6SAQaAigAEh4KDWdvdmVybmVkX3J1bnMYAiABKAVCB7pIBBoCKAASJwoWcGFzc2VkX2dvdmVybmFuY2VfcnVucxgDIAEoBUIHukgEGgIoABInChZmYWlsZWRfZ292ZXJuYW5jZV9ydW5zGAQgASgFQge6SAQaAigAEi8KF2F2ZXJhZ2VfY29tcG9zaXRlX3Njb3JlGAUgASgBQg66SAsSCSkAAAAAAAAAABIuChZwb2xpY3lfY29tcGxpYW5jZV9yYXRlGAYgASgBQg66SAsSCSkAAAAAAAAAABIsChRlc2NhbGF0aW9uX3ByZWNpc2lvbhgHIAEoAUIOukgLEgkpAAAAAAAAAAASKQoRZXNjYWxhdGlvbl9yZWNhbGwYCCABKAFCDrpICxIJKQAAAAAAAAAAEisKE2FwcHJvdmFsX2VmZmljaWVuY3kYCSABKAFCDrpICxIJKQAAAAAAAAAAEigKF3RvdGFsX2FwcHJvdmFsX3JlcXVlc3RzGAogASgFQge6SAQaAigAEjEKGWF2ZXJhZ2VfYXBwcm92YWxfcmVxdWVzdHMYCyABKAFCDrpICxIJKQAAAAAAAAAAEiIKEXJpc2tfc2lnbmFsX2NvdW50GAwgASgFQge6SAQaAigAEjwKCmFzc2VydGlvbnMYDSADKAsyKC5mZXJtYXRhLnYxLkdvdmVybmFuY2VBc3NlcnRpb25BZ2dyZWdhdGUi5gMKFEdvdmVybmFuY2VSdW5TdW1tYXJ5EiAKD3NjZW5hcmlvX3J1bl9pZBgBIAEoCUIHukgEcgIQARITCgtzY2VuYXJpb19pZBgCIAEoCRI3CgZzdGF0dXMYAyABKA4yHS5mZXJtYXRhLnYxLlNjZW5hcmlvUnVuU3RhdHVzQgi6SAWCAQIQARInCg9jb21wb3NpdGVfc2NvcmUYBCABKAFCDrpICxIJKQAAAAAAAAAAEikKEXBvbGljeV9jb21wbGlhbmNlGAUgASgBQg66SAsSCSkAAAAAAAAAABIsChRlc2NhbGF0aW9uX3ByZWNpc2lvbhgGIAEoAUIOukgLEgkpAAAAAAAAAAASKQoRZXNjYWxhdGlvbl9yZWNhbGwYByABKAFCDrpICxIJKQAAAAAAAAAAEisKE2FwcHJvdmFsX2VmZmljaWVuY3kYCCABKAFCDrpICxIJKQAAAAAAAAAAEiIKEWFwcHJvdmFsX3JlcXVlc3RzGAkgASgFQge6SAQaAigAEhwKFGZhaWxlZF9hc3NlcnRpb25faWRzGAogAygJEhAKCHRyYWNlX2lkGAsgASgJEjAKDGNvbXBsZXRlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAijAIKFEdvdmVybmFuY2VSaXNrU2lnbmFsEhMKAmlkGAEgASgJQge6SARyAhABEiAKD3NjZW5hcmlvX3J1bl9pZBgCIAEoCUIHukgEcgIQARITCgtzY2VuYXJpb19pZBgDIAEoCRIQCghzZXZlcml0eRgEIAEoCRIPCgdtZXNzYWdlGAUgASgJEhgKEGRlZ3JhZGVkX21ldHJpY3MYBiADKAkSKAoIZXZpZGVuY2UYByADKAsyFi5jb21tb24udjEuRXZpZGVuY2VSZWYSEAoIdHJhY2VfaWQYCCABKAkSLwoLcmVjb3JkZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIswBCiVHZXRFdmFsdWF0aW9uR292ZXJuYW5jZVJlcG9ydFJlc3BvbnNlEjQKB3N1bW1hcnkYASABKAsyIy5mZXJtYXRhLnYxLkdvdmVybmFuY2VSZXBvcnRTdW1tYXJ5EjUKC3JlY2VudF9ydW5zGAIgAygLMiAuZmVybWF0YS52MS5Hb3Zlcm5hbmNlUnVuU3VtbWFyeRI2CgxyaXNrX3NpZ25hbHMYAyADKAsyIC5mZXJtYXRhLnYxLkdvdmVybmFuY2VSaXNrU2lnbmFsIlgKFlJlZFRlYW1DYXRhbG9nVGVtcGxhdGUSFwoGcHJvbXB0GAEgASgJQge6SARyAhABEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhAKCHNldmVyaXR5GAMgASgJIlIKGVJlZFRlYW1DYXRhbG9nVGVtcGxhdGVTZXQSNQoJdGVtcGxhdGVzGAEgAygLMiIuZmVybWF0YS52MS5SZWRUZWFtQ2F0YWxvZ1RlbXBsYXRlIokCChdCdWlsZFJlZFRlYW1QbGFuUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhwKC2NvbmZpZ195YW1sGAMgASgJQge6SARyAhABEkEKB2NhdGFsb2cYBCADKAsyMC5mZXJtYXRhLnYxLkJ1aWxkUmVkVGVhbVBsYW5SZXF1ZXN0LkNhdGFsb2dFbnRyeRpVCgxDYXRhbG9nRW50cnkSCwoDa2V5GAEgASgJEjQKBXZhbHVlGAIgASgLMiUuZmVybWF0YS52MS5SZWRUZWFtQ2F0YWxvZ1RlbXBsYXRlU2V0OgI4ASLuAQoLUmVkVGVhbVBsYW4SDgoGcGx1Z2luGAEgASgJEhAKCGNhdGVnb3J5GAIgASgJEhAKCHN0cmF0ZWd5GAMgASgJEhUKDXN0cmF0ZWd5X21vZGUYBCABKAkSDgoGcHJvbXB0GAUgASgJEhoKEnRyYW5zZm9ybWVkX3Byb21wdBgGIAEoCRITCgtkZXNjcmlwdGlvbhgHIAEoCRIQCghzZXZlcml0eRgIIAEoCRIWCg5vd2FzcF9jYXRlZ29yeRgJIAEoCRIpCghtZXRhZGF0YRgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QinAEKGEJ1aWxkUmVkVGVhbVBsYW5SZXNwb25zZRIbCgpwbGFuX2NvdW50GAEgASgFQge6SAQaAigAEg8KB3BsdWdpbnMYAiADKAkSEgoKc3RyYXRlZ2llcxgDIAMoCRIWCg5vd2FzcF9jb3ZlcmFnZRgEIAMoCRImCgVwbGFucxgFIAMoCzIXLmZlcm1hdGEudjEuUmVkVGVhbVBsYW4iVAoaTGlzdFJlZFRlYW1EYXRhc2V0c1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCSJmChVSZWRUZWFtRGF0YXNldFByZXZpZXcSEAoIY2F0ZWdvcnkYASABKAkSDgoGcHJvbXB0GAIgASgJEhAKCHNldmVyaXR5GAMgASgJEhkKEWV4cGVjdGVkX2JlaGF2aW9yGAQgASgJIvEBCg5SZWRUZWFtRGF0YXNldBIVCgRuYW1lGAEgASgJQge6SARyAhABEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRISCgpzb3VyY2VfdXJsGAMgASgJEg8KB2xpY2Vuc2UYBCABKAkSEwoLZGVzY3JpcHRpb24YBSABKAkSEgoKY2F0ZWdvcmllcxgGIAMoCRIfCg50b3RhbF9leGFtcGxlcxgHIAEoBUIHukgEGgIoABIOCgZmb3JtYXQYCCABKAkSMwoIcHJldmlld3MYCSADKAsyIS5mZXJtYXRhLnYxLlJlZFRlYW1EYXRhc2V0UHJldmlldyJLChtMaXN0UmVkVGVhbURhdGFzZXRzUmVzcG9uc2USLAoIZGF0YXNldHMYASADKAsyGi5mZXJtYXRhLnYxLlJlZFRlYW1EYXRhc2V0It8CChBSZWRUZWFtRXhlY3V0aW9uEg4KBnBsdWdpbhgBIAEoCRIQCghjYXRlZ29yeRgCIAEoCRIQCghzdHJhdGVneRgDIAEoCRIOCgZwcm9tcHQYBCABKAkSGgoSdHJhbnNmb3JtZWRfcHJvbXB0GAUgASgJEhAKCHJlc3BvbnNlGAYgASgJEhgKEGF0dGFja19zdWNjZWVkZWQYByABKAgSJgoFc2NvcmUYCCABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEhEKCXJlYXNvbmluZxgJIAEoCRIWCg5vd2FzcF9jYXRlZ29yeRgKIAEoCRIdChBleHBlY3RlZF9ibG9ja2VkGAsgASgISACIAQESIAoTZ3VhcmRyYWlsX3RyaWdnZXJlZBgMIAEoCEgBiAEBQhMKEV9leHBlY3RlZF9ibG9ja2VkQhYKFF9ndWFyZHJhaWxfdHJpZ2dlcmVkIrsDChhSZWRUZWFtUXVhbGl0eUdhdGVDb25maWcSPQoXbWF4X2F0dGFja19zdWNjZXNzX3JhdGUYASABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAASACIAQESPgoYbWluX3NhZmV0eV9wb3N0dXJlX3Njb3JlGAIgASgBQhe6SBQSEhkAAAAAAABZQCkAAAAAAAAAAEgBiAEBEi4KGG1heF9yZWdyZXNzZWRfY2F0ZWdvcmllcxgDIAEoBUIHukgEGgIoAEgCiAEBEigKEm1pbl9vd2FzcF9jb3ZlcmFnZRgEIAEoBUIHukgEGgIoAEgDiAEBEj0KF21heF9mYWxzZV9uZWdhdGl2ZV9yYXRlGAUgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgEiAEBQhoKGF9tYXhfYXR0YWNrX3N1Y2Nlc3NfcmF0ZUIbChlfbWluX3NhZmV0eV9wb3N0dXJlX3Njb3JlQhsKGV9tYXhfcmVncmVzc2VkX2NhdGVnb3JpZXNCFQoTX21pbl9vd2FzcF9jb3ZlcmFnZUIaChhfbWF4X2ZhbHNlX25lZ2F0aXZlX3JhdGUiwwIKGUJ1aWxkUmVkVGVhbVJlcG9ydFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIwCgpleGVjdXRpb25zGAMgAygLMhwuZmVybWF0YS52MS5SZWRUZWFtRXhlY3V0aW9uEkwKDGJhc2VsaW5lX2FzchgEIAMoCzI2LmZlcm1hdGEudjEuQnVpbGRSZWRUZWFtUmVwb3J0UmVxdWVzdC5CYXNlbGluZUFzckVudHJ5EjoKDHF1YWxpdHlfZ2F0ZRgFIAEoCzIkLmZlcm1hdGEudjEuUmVkVGVhbVF1YWxpdHlHYXRlQ29uZmlnGjIKEEJhc2VsaW5lQXNyRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgBOgI4ASLLAQoXUmVkVGVhbUFnZ3JlZ2F0ZVN1bW1hcnkSFgoFdGVzdHMYASABKAVCB7pIBBoCKAASKwoTYXR0YWNrX3N1Y2Nlc3NfcmF0ZRgCIAEoAUIOukgLEgkpAAAAAAAAAAASLAoUc2FmZXR5X3Bvc3R1cmVfc2NvcmUYAyABKAFCDrpICxIJKQAAAAAAAAAAEh8KDm93YXNwX2NvdmVyYWdlGAQgASgFQge6SAQaAigAEhwKFHJlZ3Jlc3NlZF9jYXRlZ29yaWVzGAUgAygJIuIBChZSZWRUZWFtQ2F0ZWdvcnlTdW1tYXJ5Eg4KBnBsdWdpbhgBIAEoCRIWCgV0ZXN0cxgCIAEoBUIHukgEGgIoABIhChBhdHRhY2tfc3VjY2Vzc2VzGAMgASgFQge6SAQaAigAEiUKDWF2ZXJhZ2Vfc2NvcmUYBCABKAFCDrpICxIJKQAAAAAAAAAAEhYKDm93YXNwX2NhdGVnb3J5GAUgASgJEisKE2F0dGFja19zdWNjZXNzX3JhdGUYBiABKAFCDrpICxIJKQAAAAAAAAAAEhEKCXJlZ3Jlc3NlZBgHIAEoCCL+AQoXUmVkVGVhbUd1YXJkcmFpbFN1bW1hcnkSHwoOdHJ1ZV9wb3NpdGl2ZXMYASABKAVCB7pIBBoCKAASIAoPZmFsc2VfcG9zaXRpdmVzGAIgASgFQge6SAQaAigAEiAKD2ZhbHNlX25lZ2F0aXZlcxgDIAEoBUIHukgEGgIoABIfCg50cnVlX25lZ2F0aXZlcxgEIAEoBUIHukgEGgIoABIhCglwcmVjaXNpb24YBSABKAFCDrpICxIJKQAAAAAAAAAAEh4KBnJlY2FsbBgGIAEoAUIOukgLEgkpAAAAAAAAAAASGgoCZjEYByABKAFCDrpICxIJKQAAAAAAAAAAImgKGFJlZFRlYW1Db21wbGlhbmNlU3VtbWFyeRIYChBvd2FzcF9jYXRlZ29yaWVzGAEgAygJEhYKDm5pc3RfZnVuY3Rpb25zGAIgAygJEhoKEmV1X2FpX2FjdF9hcnRpY2xlcxgDIAMoCSKbAQoXUmVkVGVhbVF1YWxpdHlHYXRlQ2hlY2sSDAoEbmFtZRgBIAEoCRIOCgZwYXNzZWQYAiABKAgSJgoGYWN0dWFsGAMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEigKCGV4cGVjdGVkGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhAKCG9wZXJhdG9yGAUgASgJIpICChhSZWRUZWFtUXVhbGl0eUdhdGVSZXN1bHQSDgoGcGFzc2VkGAEgASgIEg4KBnN0YXR1cxgCIAEoCRIVCg1jaV9jb25jbHVzaW9uGAMgASgJEjMKBmNoZWNrcxgEIAMoCzIjLmZlcm1hdGEudjEuUmVkVGVhbVF1YWxpdHlHYXRlQ2hlY2sSQgoHbWV0cmljcxgFIAMoCzIxLmZlcm1hdGEudjEuUmVkVGVhbVF1YWxpdHlHYXRlUmVzdWx0Lk1ldHJpY3NFbnRyeRpGCgxNZXRyaWNzRW50cnkSCwoDa2V5GAEgASgJEiUKBXZhbHVlGAIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlOgI4ASKlAwoaQnVpbGRSZWRUZWFtUmVwb3J0UmVzcG9uc2USNgoJYWdncmVnYXRlGAEgASgLMiMuZmVybWF0YS52MS5SZWRUZWFtQWdncmVnYXRlU3VtbWFyeRJKCgpjYXRlZ29yaWVzGAIgAygLMjYuZmVybWF0YS52MS5CdWlsZFJlZFRlYW1SZXBvcnRSZXNwb25zZS5DYXRlZ29yaWVzRW50cnkSNgoJZ3VhcmRyYWlsGAMgASgLMiMuZmVybWF0YS52MS5SZWRUZWFtR3VhcmRyYWlsU3VtbWFyeRI4Cgpjb21wbGlhbmNlGAQgASgLMiQuZmVybWF0YS52MS5SZWRUZWFtQ29tcGxpYW5jZVN1bW1hcnkSOgoMcXVhbGl0eV9nYXRlGAUgASgLMiQuZmVybWF0YS52MS5SZWRUZWFtUXVhbGl0eUdhdGVSZXN1bHQaVQoPQ2F0ZWdvcmllc0VudHJ5EgsKA2tleRgBIAEoCRIxCgV2YWx1ZRgCIAEoCzIiLmZlcm1hdGEudjEuUmVkVGVhbUNhdGVnb3J5U3VtbWFyeToCOAEivgMKFERhdGFzZXRQcm9tb3Rpb25JdGVtEg8KB2Nhc2VfaWQYASABKAkSDAoEbmFtZRgCIAEoCRISCgppbnB1dF9kYXRhGAMgASgJEhcKD2V4cGVjdGVkX291dHB1dBgEIAEoCRIYChBzdWdnZXN0ZWRfb3V0cHV0GAUgASgJEhMKC291dHB1dF9kYXRhGAYgASgJEhoKEmFkanVkaWNhdGVkX291dHB1dBgHIAEoCRI0ChNhZGp1ZGljYXRpb25fcmVzdWx0GAggASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIqCg1xdWFsaXR5X3Njb3JlGAkgASgBQg66SAsSCSkAAAAAAAAAAEgAiAEBEh8KDnJldmlld2VyX2NvdW50GAogASgFQge6SAQaAigAEgwKBHRhZ3MYCyADKAkSEgoKY3JlYXRlZF9ieRgMIAEoCRIVCg1xdWV1ZV9pdGVtX2lkGA0gASgJEhYKDmZpbmFsX2RlY2lzaW9uGA4gASgJEikKCG1ldGFkYXRhGA8gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIQCg5fcXVhbGl0eV9zY29yZSL5AQoTUHJvbW90ZWREYXRhc2V0SXRlbRIKCgJpZBgBIAEoCRISCgpkYXRhc2V0X2lkGAIgASgJEhIKCmlucHV0X2RhdGEYAyABKAkSFwoPZXhwZWN0ZWRfb3V0cHV0GAQgASgJEikKCG1ldGFkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIMCgR0YWdzGAYgAygJEiUKDXF1YWxpdHlfc2NvcmUYByABKAFCDrpICxIJKQAAAAAAAAAAEhIKCmNyZWF0ZWRfYnkYCCABKAkSEAoIc3VpdGVfaWQYCSABKAkSDwoHY2FzZV9pZBgKIAEoCSK1AgoZUHJvbW90ZURhdGFzZXRJdGVtUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhIKCmRhdGFzZXRfaWQYAyABKAkSFAoMZGF0YXNldF9uYW1lGAQgASgJEhUKDXF1ZXVlX2l0ZW1faWQYBSABKAkSHwoXdXNlX2FkanVkaWNhdGlvbl9yZXN1bHQYBiABKAgSNgoEaXRlbRgHIAEoCzIgLmZlcm1hdGEudjEuRGF0YXNldFByb21vdGlvbkl0ZW1CBrpIA8gBARIpCghtZXRhZGF0YRgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKY3JlYXRlZF9ieRgJIAEoCSJxChpQcm9tb3RlRGF0YXNldEl0ZW1SZXNwb25zZRItCgRpdGVtGAEgASgLMh8uZmVybWF0YS52MS5Qcm9tb3RlZERhdGFzZXRJdGVtEiQKBXN1aXRlGAIgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUi0wIKGlByb21vdGVEYXRhc2V0SXRlbXNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIdCgx3b3Jrc3BhY2VfaWQYAiABKAlCB7pIBHICEAESEgoKZGF0YXNldF9pZBgDIAEoCRIUCgxkYXRhc2V0X25hbWUYBCABKAkSHwoXdXNlX2FkanVkaWNhdGlvbl9yZXN1bHQYBSABKAgSIQoJbWluX3Njb3JlGAYgASgBQg66SAsSCSkAAAAAAAAAABIWCgVsaW1pdBgHIAEoBUIHukgEGgIoABIvCgVpdGVtcxgIIAMoCzIgLmZlcm1hdGEudjEuRGF0YXNldFByb21vdGlvbkl0ZW0SKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKCmNyZWF0ZWRfYnkYCiABKAkiugEKG1Byb21vdGVEYXRhc2V0SXRlbXNSZXNwb25zZRISCgpkYXRhc2V0X2lkGAEgASgJEhQKDGRhdGFzZXRfbmFtZRgCIAEoCRIbCgppdGVtX2NvdW50GAMgASgFQge6SAQaAigAEi4KBWl0ZW1zGAQgAygLMh8uZmVybWF0YS52MS5Qcm9tb3RlZERhdGFzZXRJdGVtEiQKBXN1aXRlGAUgASgLMhUuZmVybWF0YS52MS5UZXN0U3VpdGUi3AIKGUJ1aWxkR29sZGVuRGF0YXNldFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARISCgpkYXRhc2V0X2lkGAMgASgJEhQKDGRhdGFzZXRfbmFtZRgEIAEoCRIfChd1c2VfYWRqdWRpY2F0aW9uX3Jlc3VsdBgFIAEoCBIjChJtaW5fcmV2aWV3ZXJfY291bnQYBiABKAVCB7pIBBoCKAASFgoFbGltaXQYByABKAVCB7pIBBoCKAASNwoNYWRqdWRpY2F0aW9ucxgIIAMoCzIgLmZlcm1hdGEudjEuRGF0YXNldFByb21vdGlvbkl0ZW0SKQoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKCmNyZWF0ZWRfYnkYCiABKAkiuQEKGkJ1aWxkR29sZGVuRGF0YXNldFJlc3BvbnNlEhIKCmRhdGFzZXRfaWQYASABKAkSFAoMZGF0YXNldF9uYW1lGAIgASgJEhsKCml0ZW1fY291bnQYAyABKAVCB7pIBBoCKAASLgoFaXRlbXMYBCADKAsyHy5mZXJtYXRhLnYxLlByb21vdGVkRGF0YXNldEl0ZW0SJAoFc3VpdGUYBSABKAsyFS5mZXJtYXRhLnYxLlRlc3RTdWl0ZSJiChZQcm9kdWN0aW9uVHJhY2VNZXNzYWdlEgwKBHJvbGUYASABKAkSDwoHY29udGVudBgCIAEoCRIpCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QixwQKFVByb2R1Y3Rpb25UcmFjZVJlY29yZBIPCgdjYXNlX2lkGAEgASgJEgwKBG5hbWUYAiABKAkSEgoKc2Vzc2lvbl9pZBgDIAEoCRIQCghldmVudF9pZBgEIAEoCRIOCgZzb3VyY2UYBSABKAkSEgoKaW5wdXRfZGF0YRgGIAEoCRIXCg9leHBlY3RlZF9vdXRwdXQYByABKAkSDgoGcHJvbXB0GAggASgJEg0KBXF1ZXJ5GAkgASgJEg4KBm91dHB1dBgKIAEoCRIQCghyZXNwb25zZRgLIAEoCRISCgpjb21wbGV0aW9uGAwgASgJEjQKCG1lc3NhZ2VzGA0gAygLMiIuZmVybWF0YS52MS5Qcm9kdWN0aW9uVHJhY2VNZXNzYWdlEgwKBHRhZ3MYDiADKAkSKQoIbWV0YWRhdGEYDyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiEKC3Rva2VuX2NvdW50GBAgASgDQge6SAQiAigASACIAQESKgoNcHJvdmlkZXJfY29zdBgRIAEoAUIOukgLEgkpAAAAAAAAAABIAYgBARIUCgxtdXN0X2NvbnRhaW4YEiADKAkSGAoQbXVzdF9ub3RfY29udGFpbhgTIAMoCRI0Cg5taW5fc2ltaWxhcml0eRgUIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABIAogBAUIOCgxfdG9rZW5fY291bnRCEAoOX3Byb3ZpZGVyX2Nvc3RCEQoPX21pbl9zaW1pbGFyaXR5Is0BChtNYXRlcmlhbGl6ZWRQcm9kdWN0aW9uVHJhY2USCgoCaWQYASABKAkSEAoIc3VpdGVfaWQYAiABKAkSDwoHY2FzZV9pZBgDIAEoCRISCgpzZXNzaW9uX2lkGAQgASgJEhAKCGV2ZW50X2lkGAUgASgJEg4KBnN0YXR1cxgGIAEoCRIOCgZzb3VyY2UYByABKAkSDAoEdGFncxgIIAMoCRISCgppbnB1dF9kYXRhGAkgASgJEhcKD2V4cGVjdGVkX291dHB1dBgKIAEoCSLTAQodSW5nZXN0UHJvZHVjdGlvblRyYWNlc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh0KDHdvcmtzcGFjZV9pZBgCIAEoCUIHukgEcgIQARISCgpzdWl0ZV9uYW1lGAMgASgJEhIKCmNyZWF0ZWRfYnkYBCABKAkSFgoFbGltaXQYBSABKAVCB7pIBBoCKAASMQoGdHJhY2VzGAYgAygLMiEuZmVybWF0YS52MS5Qcm9kdWN0aW9uVHJhY2VSZWNvcmQiuQIKKkJ1aWxkUHJvZHVjdGlvblRyYWNlUmVncmVzc2lvblN1aXRlUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESHQoMd29ya3NwYWNlX2lkGAIgASgJQge6SARyAhABEhIKCnN1aXRlX25hbWUYAyABKAkSEgoKY3JlYXRlZF9ieRgEIAEoCRIWCgVsaW1pdBgFIAEoBUIHukgEGgIoABIxCgZ0cmFjZXMYBiADKAsyIS5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVJlY29yZBIRCgl0cmFjZV9pZHMYByADKAkSIwobcmVxdWlyZV9xdWFsaXR5X2Fubm90YXRpb25zGAggASgIEh8KF2ZhaWxlZF9hbm5vdGF0aW9uc19vbmx5GAkgASgIIuUBCh5Jbmdlc3RQcm9kdWN0aW9uVHJhY2VzUmVzcG9uc2USEAoIc3VpdGVfaWQYASABKAkSEgoKc3VpdGVfbmFtZRgCIAEoCRIfCg5pbmdlc3RlZF9jb3VudBgDIAEoBUIHukgEGgIoABIbCgpjYXNlX2NvdW50GAQgASgFQge6SAQaAigAEjkKCGluZ2VzdGVkGAUgAygLMicuZmVybWF0YS52MS5NYXRlcmlhbGl6ZWRQcm9kdWN0aW9uVHJhY2USJAoFc3VpdGUYBiABKAsyFS5mZXJtYXRhLnYxLlRlc3RTdWl0ZSLyAQorQnVpbGRQcm9kdWN0aW9uVHJhY2VSZWdyZXNzaW9uU3VpdGVSZXNwb25zZRIQCghzdWl0ZV9pZBgBIAEoCRISCgpzdWl0ZV9uYW1lGAIgASgJEh8KDmluZ2VzdGVkX2NvdW50GAMgASgFQge6SAQaAigAEhsKCmNhc2VfY291bnQYBCABKAVCB7pIBBoCKAASOQoIaW5nZXN0ZWQYBSADKAsyJy5mZXJtYXRhLnYxLk1hdGVyaWFsaXplZFByb2R1Y3Rpb25UcmFjZRIkCgVzdWl0ZRgGIAEoCzIVLmZlcm1hdGEudjEuVGVzdFN1aXRlIowBCiFMaXN0UHJvZHVjdGlvblRyYWNlU2FtcGxlc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIWCgVsaW1pdBgDIAEoBUIHukgEGgIoABIXCgZvZmZzZXQYBCABKAVCB7pIBBoCKAAi1AIKFVByb2R1Y3Rpb25UcmFjZVNhbXBsZRIKCgJpZBgBIAEoCRIXCg9vcmdhbml6YXRpb25faWQYAiABKAkSEAoIc3VpdGVfaWQYAyABKAkSEgoKY2x1c3Rlcl9pZBgEIAEoCRIOCgZzdGF0dXMYBSABKAkSDgoGc291cmNlGAYgASgJEgwKBHRhZ3MYByADKAkSIQoLdG9rZW5fY291bnQYCCABKANCB7pIBCICKABIAIgBARIqCg1wcm92aWRlcl9jb3N0GAkgASgBQg66SAsSCSkAAAAAAAAAAEgBiAEBEhwKFHNhbml0aXplZF90cmFuc2NyaXB0GAogASgJEjMKEnNhbml0aXplZF9tZXRhZGF0YRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCDgoMX3Rva2VuX2NvdW50QhAKDl9wcm92aWRlcl9jb3N0ImoKIkxpc3RQcm9kdWN0aW9uVHJhY2VTYW1wbGVzUmVzcG9uc2USMgoHc2FtcGxlcxgBIAMoCzIhLmZlcm1hdGEudjEuUHJvZHVjdGlvblRyYWNlU2FtcGxlEhAKCGhhc19tb3JlGAIgASgIIo8BChlQcm9kdWN0aW9uVHJhY2VSZXBsYXlDYXNlEg8KB2Nhc2VfaWQYASABKAkSFwoPYmFzZWxpbmVfb3V0cHV0GAIgASgJEhgKEGNhbmRpZGF0ZV9vdXRwdXQYAyABKAkSFAoMbXVzdF9jb250YWluGAQgAygJEhgKEG11c3Rfbm90X2NvbnRhaW4YBSADKAkisgEKH1Byb2R1Y3Rpb25UcmFjZVJlcGxheVJlZ3Jlc3Npb24SDwoHY2FzZV9pZBgBIAEoCRIrCgpzaW1pbGFyaXR5GAIgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAABIgChhtaXNzaW5nX3JlcXVpcmVkX21hcmtlcnMYAyADKAkSIQoZZm9yYmlkZGVuX21hcmtlcnNfcHJlc2VudBgEIAMoCRIMCgRkaWZmGAUgASgJIvIBChxQcm9kdWN0aW9uVHJhY2VSZXBsYXlTdW1tYXJ5EhwKC3RvdGFsX2Nhc2VzGAEgASgFQge6SAQaAigAEh4KDXBhc3NpbmdfY2FzZXMYAiABKAVCB7pIBBoCKAASHQoMZmFpbGVkX2Nhc2VzGAMgASgFQge6SAQaAigAEiEKCXBhc3NfcmF0ZRgEIAEoAUIOukgLEgkpAAAAAAAAAAASJgoObWluX3NpbWlsYXJpdHkYBSABKAFCDrpICxIJKQAAAAAAAAAAEioKEmF2ZXJhZ2Vfc2ltaWxhcml0eRgGIAEoAUIOukgLEgkpAAAAAAAAAAAikQMKI0NvbXBhcmVQcm9kdWN0aW9uVHJhY2VSZXBsYXlSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSNAoFY2FzZXMYAyADKAsyJS5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVJlcGxheUNhc2USKwoObWluX3NpbWlsYXJpdHkYBCABKAFCDrpICxIJKQAAAAAAAAAASACIAQESJAoObWF4X2RpZmZfbGluZXMYBSABKAVCB7pIBBoCKABIAYgBARIjChtwZXJzaXN0X2NvbXBhcmlzb25fYXJ0aWZhY3QYBiABKAgSFQoNYXJ0aWZhY3RfbmFtZRgHIAEoCRIXCg9iYXNlbGluZV9ydW5faWQYCCABKAkSGgoSY29tcGFyaXNvbl9ydW5faWRzGAkgAygJEhIKCmNyZWF0ZWRfYnkYCiABKAlCEQoPX21pbl9zaW1pbGFyaXR5QhEKD19tYXhfZGlmZl9saW5lcyKUAgokQ29tcGFyZVByb2R1Y3Rpb25UcmFjZVJlcGxheVJlc3BvbnNlEhAKCGRlY2lzaW9uGAEgASgJEjkKB3N1bW1hcnkYAiABKAsyKC5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVJlcGxheVN1bW1hcnkSQAoLcmVncmVzc2lvbnMYAyADKAsyKy5mZXJtYXRhLnYxLlByb2R1Y3Rpb25UcmFjZVJlcGxheVJlZ3Jlc3Npb24SHgoWY29tcGFyaXNvbl9hcnRpZmFjdF9pZBgEIAEoCRI9ChNjb21wYXJpc29uX2FydGlmYWN0GAUgASgLMiAuZmVybWF0YS52MS5FdmFsdWF0aW9uQ29tcGFyaXNvbiLjBAoSR3VhcmRyYWlsUHJvbW90aW9uEhMKAmlkGAEgASgJQge6SARyAhABEg4KBnN0YXR1cxgCIAEoCRIVCg1ldmFsdWF0aW9uX2lkGAMgASgJEhMKC3Rlc3RfcnVuX2lkGAQgASgJEiAKD29yZ2FuaXphdGlvbl9pZBgFIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYBiABKAkSEgoKY3JlYXRlZF9ieRgHIAEoCRIaChJzb3VyY2VfZW52aXJvbm1lbnQYCCABKAkSGgoSdGFyZ2V0X2Vudmlyb25tZW50GAkgASgJEhMKC21ldHJpY19uYW1lGAogASgJEhsKE2NvbXBhcmlzb25fb3BlcmF0b3IYCyABKAkSEQoJdGhyZXNob2xkGAwgASgBEhYKDmJhc2VsaW5lX3ZhbHVlGA0gASgBEhcKD2FsZXJ0X3RocmVzaG9sZBgOIAEoARIgCg1zYW1wbGluZ19yYXRlGA8gASgFQgm6SAYaBBhkKAASKgoZbW9uaXRvcmluZ193aW5kb3dfbWludXRlcxgQIAEoBUIHukgEGgIoABIRCglzY29yZV9ycGMYESABKAkSMgoRbW9uaXRvcmluZ19jb25maWcYEiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg0KBW5vdGVzGBMgASgJEi4KCmNyZWF0ZWRfYXQYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYFSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIqADCiNQcm9tb3RlRXZhbHVhdGlvblRvR3VhcmRyYWlsUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEh4KDWV2YWx1YXRpb25faWQYAyABKAlCB7pIBHICEAESHAoLbWV0cmljX25hbWUYBCABKAlCB7pIBHICEAESGwoTY29tcGFyaXNvbl9vcGVyYXRvchgFIAEoCRIWCgl0aHJlc2hvbGQYBiABKAFIAIgBARIcCg9hbGVydF90aHJlc2hvbGQYByABKAFIAYgBARIgCg1zYW1wbGluZ19yYXRlGAggASgFQgm6SAYaBBhkKAASLQoZbW9uaXRvcmluZ193aW5kb3dfbWludXRlcxgJIAEoBUIKukgHGgUYoAsoABIaChJ0YXJnZXRfZW52aXJvbm1lbnQYCiABKAkSEgoKY3JlYXRlZF9ieRgLIAEoCRINCgVub3RlcxgMIAEoCUIMCgpfdGhyZXNob2xkQhIKEF9hbGVydF90aHJlc2hvbGQiWQokUHJvbW90ZUV2YWx1YXRpb25Ub0d1YXJkcmFpbFJlc3BvbnNlEjEKCXByb21vdGlvbhgBIAEoCzIeLmZlcm1hdGEudjEuR3VhcmRyYWlsUHJvbW90aW9uInUKHEdldEd1YXJkcmFpbFByb21vdGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIdCgxwcm9tb3Rpb25faWQYAyABKAlCB7pIBHICEAEiUgodR2V0R3VhcmRyYWlsUHJvbW90aW9uUmVzcG9uc2USMQoJcHJvbW90aW9uGAEgASgLMh4uZmVybWF0YS52MS5HdWFyZHJhaWxQcm9tb3Rpb24i4gEKHlNjb3JlR3VhcmRyYWlsUHJvbW90aW9uUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEh0KDHByb21vdGlvbl9pZBgDIAEoCUIHukgEcgIQARIZCgxtZXRyaWNfdmFsdWUYBCABKAFIAIgBARISCgpzYW1wbGVfa2V5GAUgASgJEikKCG1ldGFkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIPCg1fbWV0cmljX3ZhbHVlIqQCCh9TY29yZUd1YXJkcmFpbFByb21vdGlvblJlc3BvbnNlEhQKDHByb21vdGlvbl9pZBgBIAEoCRITCgttZXRyaWNfbmFtZRgCIAEoCRIPCgdzYW1wbGVkGAMgASgIEg4KBnBhc3NlZBgEIAEoCBINCgVhbGVydBgFIAEoCBIbChNjb21wYXJpc29uX29wZXJhdG9yGAYgASgJEhEKCXRocmVzaG9sZBgHIAEoARIXCg9hbGVydF90aHJlc2hvbGQYCCABKAESFgoOb2JzZXJ2ZWRfdmFsdWUYCSABKAESGgoSdGFyZ2V0X2Vudmlyb25tZW50GAogASgJEikKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLfAQoRRGlhZ25vc3RpY0ZpbmRpbmcSCgoCaWQYASABKAkSQQoIc2V2ZXJpdHkYAiABKA4yJS5mZXJtYXRhLnYxLkRpYWdub3N0aWNGaW5kaW5nU2V2ZXJpdHlCCLpIBYIBAhABEhYKBXRpdGxlGAMgASgJQge6SARyAhABEg4KBmRldGFpbBgEIAEoCRIoCghldmlkZW5jZRgFIAMoCzIWLmNvbW1vbi52MS5FdmlkZW5jZVJlZhIpCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi7wQKHEV2YWx1YXRpb25EaWFnbm9zdGljQXJ0aWZhY3QSEwoCaWQYASABKAlCB7pIBHICEAESOgoEa2luZBgCIAEoDjIiLmZlcm1hdGEudjEuRGlhZ25vc3RpY0FydGlmYWN0S2luZEIIukgFggECEAESIAoPb3JnYW5pemF0aW9uX2lkGAMgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgEIAEoCRITCgtzY2VuYXJpb19pZBgFIAEoCRIgCg9zY2VuYXJpb19ydW5faWQYBiABKAlCB7pIBHICEAESEAoIdHJhY2VfaWQYByABKAkSFgoFdGl0bGUYCCABKAlCB7pIBHICEAESDwoHc3VtbWFyeRgJIAEoCRIvCghmaW5kaW5ncxgKIAMoCzIdLmZlcm1hdGEudjEuRGlhZ25vc3RpY0ZpbmRpbmcSKAoIZXZpZGVuY2UYCyADKAsyFi5jb21tb24udjEuRXZpZGVuY2VSZWYSLgoNaW5wdXRfY29udGV4dBgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKAoHcGF5bG9hZBgNIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFAoMYXJ0aWZhY3RfdXJpGA4gASgJEhYKDmNvbnRlbnRfc2hhMjU2GA8gASgJEhEKCXBlcnNpc3RlZBgQIAEoCBIuCgpjcmVhdGVkX2F0GBEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLHAQoZRXhwbGFpblNjZW5hcmlvUnVuUmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAIgASgJEhcKBnJ1bl9pZBgDIAEoCUIHukgEcgIQARIVCg1pbmNsdWRlX3RyYWNlGAQgASgIEhgKEHBlcnNpc3RfYXJ0aWZhY3QYBSABKAgSKAoHY29udGV4dBgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiWAoaRXhwbGFpblNjZW5hcmlvUnVuUmVzcG9uc2USOgoIYXJ0aWZhY3QYASABKAsyKC5mZXJtYXRhLnYxLkV2YWx1YXRpb25EaWFnbm9zdGljQXJ0aWZhY3Qi8QEKIkFuYWx5emVTY2VuYXJpb1J1blJvb3RDYXVzZVJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRIXCgZydW5faWQYAyABKAlCB7pIBHICEAESHwoXc3VzcGVjdGVkX2ZhaWx1cmVfbW9kZXMYBCADKAkSFQoNaW5jbHVkZV90cmFjZRgFIAEoCBIYChBwZXJzaXN0X2FydGlmYWN0GAYgASgIEigKB2NvbnRleHQYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0ImEKI0FuYWx5emVTY2VuYXJpb1J1blJvb3RDYXVzZVJlc3BvbnNlEjoKCGFydGlmYWN0GAEgASgLMiguZmVybWF0YS52MS5FdmFsdWF0aW9uRGlhZ25vc3RpY0FydGlmYWN0IpECCh5KdWRnZVZhbGlkYXRpb25BY2N1cmFjeU1ldHJpY3MSEQoJcHJlY2lzaW9uGAEgASgBEg4KBnJlY2FsbBgCIAEoARIQCghmMV9zY29yZRgDIAEoARIQCghhY2N1cmFjeRgEIAEoARIiChF0b3RhbF92YWxpZGF0aW9ucxgFIAEoBUIHukgEGgIoABIfCg50cnVlX3Bvc2l0aXZlcxgGIAEoBUIHukgEGgIoABIgCg9mYWxzZV9wb3NpdGl2ZXMYByABKAVCB7pIBBoCKAASHwoOdHJ1ZV9uZWdhdGl2ZXMYCCABKAVCB7pIBBoCKAASIAoPZmFsc2VfbmVnYXRpdmVzGAkgASgFQge6SAQaAigAIsABCh5KdWRnZVZhbGlkYXRpb25Db25mdXNpb25NYXRyaXgSJgoVanVkZ2VfcGFzc19odW1hbl9wYXNzGAEgASgFQge6SAQaAigAEiYKFWp1ZGdlX3Bhc3NfaHVtYW5fZmFpbBgCIAEoBUIHukgEGgIoABImChVqdWRnZV9mYWlsX2h1bWFuX3Bhc3MYAyABKAVCB7pIBBoCKAASJgoVanVkZ2VfZmFpbF9odW1hbl9mYWlsGAQgASgFQge6SAQaAigAItEBChpKdWRnZVZhbGlkYXRpb25CaWFzTWV0cmljcxIUCgxvdmVyX3Njb3JpbmcYASABKAgSFQoNdW5kZXJfc2NvcmluZxgCIAEoCBITCgtzY29yZV9kcmlmdBgDIAEoARIbChNhdmVyYWdlX2p1ZGdlX3Njb3JlGAQgASgBEhsKE2F2ZXJhZ2VfaHVtYW5fc2NvcmUYBSABKAESGQoRc2NvcmVfY29ycmVsYXRpb24YBiABKAESHAoLc2FtcGxlX3NpemUYByABKAVCB7pIBBoCKAAinAEKGkp1ZGdlVmFsaWRhdGlvbkNhbGlicmF0aW9uEhkKCGp1ZGdlX2lkGAEgASgJQge6SARyAhABEhsKE3ZhbGlkYXRpb25fYWNjdXJhY3kYAiABKAESEQoJdmFsaWRhdGVkGAMgASgIEjMKD2xhc3RfdmFsaWRhdGlvbhgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAimQQKGUp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb24SHgoNZXZhbHVhdGlvbl9pZBgBIAEoCUIHukgEcgIQARIgCg9vcmdhbml6YXRpb25faWQYAiABKAlCB7pIBHICEAESFAoMd29ya3NwYWNlX2lkGAMgASgJEhkKCGp1ZGdlX2lkGAQgASgJQge6SARyAhABEhcKD3NjZW5hcmlvX3J1bl9pZBgFIAEoCRIUCgxhc3NlcnRpb25faWQYBiABKAkSLAoLanVkZ2Vfc2NvcmUYByABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEhQKDGp1ZGdlX3Bhc3NlZBgIIAEoCBIXCg9odW1hbl92YWxpZGF0ZWQYCSABKAgSMQoLaHVtYW5fc2NvcmUYCiABKAFCF7pIFBISGQAAAAAAAFlAKQAAAAAAAAAASACIAQESGAoQdmFsaWRhdGlvbl9ub3RlcxgLIAEoCRIOCgZzb3VyY2UYDCABKAkSMAoMZXZhbHVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfaHVtYW5fc2NvcmUiSAoZSnVkZ2VDYWxpYnJhdGlvbkNhbmRpZGF0ZRIZCghqdWRnZV9pZBgBIAEoCUIHukgEcgIQARIQCghhY2N1cmFjeRgCIAEoASLZAQocSnVkZ2VWYWxpZGF0aW9uU291cmNlTWV0cmljcxIOCgZzb3VyY2UYASABKAkSPAoIYWNjdXJhY3kYAiABKAsyKi5mZXJtYXRhLnYxLkp1ZGdlVmFsaWRhdGlvbkFjY3VyYWN5TWV0cmljcxI0CgRiaWFzGAMgASgLMiYuZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25CaWFzTWV0cmljcxI1ChFsYXRlc3RfdmFsaWRhdGlvbhgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiugYKFkp1ZGdlQ2FsaWJyYXRpb25SZXBvcnQSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhkKCGp1ZGdlX2lkGAIgASgJQge6SARyAhABEjwKBnN0YXR1cxgDIAEoDjIiLmZlcm1hdGEudjEuSnVkZ2VDYWxpYnJhdGlvblN0YXR1c0IIukgFggECEAESDgoGcGFzc2VkGAQgASgIEjwKCGFjY3VyYWN5GAUgASgLMiouZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25BY2N1cmFjeU1ldHJpY3MSRAoQY29uZnVzaW9uX21hdHJpeBgGIAEoCzIqLmZlcm1hdGEudjEuSnVkZ2VWYWxpZGF0aW9uQ29uZnVzaW9uTWF0cml4EjQKBGJpYXMYByABKAsyJi5mZXJtYXRhLnYxLkp1ZGdlVmFsaWRhdGlvbkJpYXNNZXRyaWNzEiAKD21pbl92YWxpZGF0aW9ucxgIIAEoBUIHukgEGgIoABItCgxtaW5fYWNjdXJhY3kYCSABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEj4KGG1heF9hYnNvbHV0ZV9zY29yZV9kcmlmdBgKIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABIAIgBARIoChd0b3RhbF92YWxpZGF0ZWRfcmVjb3JkcxgLIAEoBUIHukgEGgIoABIoChdzY29yZWRfdmFsaWRhdGlvbl9jb3VudBgMIAEoBUIHukgEGgIoABIqChl1bnNjb3JlZF92YWxpZGF0aW9uX2NvdW50GA0gASgFQge6SAQaAigAEhgKEGJsb2NraW5nX3JlYXNvbnMYDiADKAkSQAoOc291cmNlX21ldHJpY3MYDyADKAsyKC5mZXJtYXRhLnYxLkp1ZGdlVmFsaWRhdGlvblNvdXJjZU1ldHJpY3MSNQoRbGF0ZXN0X3ZhbGlkYXRpb24YECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhoKEnJlY29tbWVuZGVkX2FjdGlvbhgRIAEoCUIbChlfbWF4X2Fic29sdXRlX3Njb3JlX2RyaWZ0ImAKIUdldEp1ZGdlVmFsaWRhdGlvbkFjY3VyYWN5UmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESGQoIanVkZ2VfaWQYAiABKAlCB7pIBHICEAEiYQoiR2V0SnVkZ2VWYWxpZGF0aW9uQWNjdXJhY3lSZXNwb25zZRI7CgdtZXRyaWNzGAEgASgLMiouZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25BY2N1cmFjeU1ldHJpY3MiZwooR2V0SnVkZ2VWYWxpZGF0aW9uQ29uZnVzaW9uTWF0cml4UmVxdWVzdBIgCg9vcmdhbml6YXRpb25faWQYASABKAlCB7pIBHICEAESGQoIanVkZ2VfaWQYAiABKAlCB7pIBHICEAEiZwopR2V0SnVkZ2VWYWxpZGF0aW9uQ29uZnVzaW9uTWF0cml4UmVzcG9uc2USOgoGbWF0cml4GAEgASgLMiouZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25Db25mdXNpb25NYXRyaXgiXAodR2V0SnVkZ2VWYWxpZGF0aW9uQmlhc1JlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhkKCGp1ZGdlX2lkGAIgASgJQge6SARyAhABIlkKHkdldEp1ZGdlVmFsaWRhdGlvbkJpYXNSZXNwb25zZRI3CgdtZXRyaWNzGAEgASgLMiYuZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25CaWFzTWV0cmljcyLFAgogR2V0SnVkZ2VDYWxpYnJhdGlvblJlcG9ydFJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhkKCGp1ZGdlX2lkGAIgASgJQge6SARyAhABEiAKD21pbl92YWxpZGF0aW9ucxgDIAEoBUIHukgEGgIoABIyCgxtaW5fYWNjdXJhY3kYBCABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAASACIAQESPgoYbWF4X2Fic29sdXRlX3Njb3JlX2RyaWZ0GAUgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgBiAEBEiAKGGluY2x1ZGVfc291cmNlX2JyZWFrZG93bhgGIAEoCEIPCg1fbWluX2FjY3VyYWN5QhsKGV9tYXhfYWJzb2x1dGVfc2NvcmVfZHJpZnQiVwohR2V0SnVkZ2VDYWxpYnJhdGlvblJlcG9ydFJlc3BvbnNlEjIKBnJlcG9ydBgBIAEoCzIiLmZlcm1hdGEudjEuSnVkZ2VDYWxpYnJhdGlvblJlcG9ydCJgCiFSZWNhbGlicmF0ZUp1ZGdlVmFsaWRhdGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEhkKCGp1ZGdlX2lkGAIgASgJQge6SARyAhABImEKIlJlY2FsaWJyYXRlSnVkZ2VWYWxpZGF0aW9uUmVzcG9uc2USOwoLY2FsaWJyYXRpb24YASABKAsyJi5mZXJtYXRhLnYxLkp1ZGdlVmFsaWRhdGlvbkNhbGlicmF0aW9uIr0DCiZSZWNvcmRKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVxdWVzdBIVCg1ldmFsdWF0aW9uX2lkGAEgASgJEiAKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAyABKAkSGQoIanVkZ2VfaWQYBCABKAlCB7pIBHICEAESFwoPc2NlbmFyaW9fcnVuX2lkGAUgASgJEhQKDGFzc2VydGlvbl9pZBgGIAEoCRIsCgtqdWRnZV9zY29yZRgHIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAAASFAoManVkZ2VfcGFzc2VkGAggASgIEhcKD2h1bWFuX3ZhbGlkYXRlZBgJIAEoCBIxCgtodW1hbl9zY29yZRgKIAEoAUIXukgUEhIZAAAAAAAAWUApAAAAAAAAAABIAIgBARIYChB2YWxpZGF0aW9uX25vdGVzGAsgASgJEg4KBnNvdXJjZRgMIAEoCRIwCgxldmFsdWF0ZWRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9odW1hbl9zY29yZSJkCidSZWNvcmRKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVzcG9uc2USOQoKZXZhbHVhdGlvbhgBIAEoCzIlLmZlcm1hdGEudjEuSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvbiLJAQooVmFsaWRhdGVKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVxdWVzdBIeCg1ldmFsdWF0aW9uX2lkGAEgASgJQge6SARyAhABEiAKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUIHukgEcgIQARIxCgtodW1hbl9zY29yZRgDIAEoAUIXukgUEhIZAAAAAAAAWUApAAAAAAAAAABIAIgBARIYChB2YWxpZGF0aW9uX25vdGVzGAQgASgJQg4KDF9odW1hbl9zY29yZSJmCilWYWxpZGF0ZUp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb25SZXNwb25zZRI5CgpldmFsdWF0aW9uGAEgASgLMiUuZmVybWF0YS52MS5KdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uIqABCiVMaXN0SnVkZ2VDYWxpYnJhdGlvbkNhbmRpZGF0ZXNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIgCg9taW5fdmFsaWRhdGlvbnMYAiABKAVCB7pIBBoCKAASMwoSYWNjdXJhY3lfdGhyZXNob2xkGAMgASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAACK/AQomTGlzdEp1ZGdlQ2FsaWJyYXRpb25DYW5kaWRhdGVzUmVzcG9uc2USOQoKY2FuZGlkYXRlcxgBIAMoCzIlLmZlcm1hdGEudjEuSnVkZ2VDYWxpYnJhdGlvbkNhbmRpZGF0ZRIcCgt0b3RhbF9jb3VudBgCIAEoBUIHukgEGgIoABIgCg9taW5fdmFsaWRhdGlvbnMYAyABKAVCB7pIBBoCKAASGgoSYWNjdXJhY3lfdGhyZXNob2xkGAQgASgBItUIChFRdWFsaXR5R2F0ZUNvbmZpZxIUCgdlbmFibGVkGAEgASgISACIAQESMwoNbWluX3Bhc3NfcmF0ZRgCIAEoAUIXukgUEhIZAAAAAAAAWUApAAAAAAAAAABIAYgBARI3ChFtaW5fYXZlcmFnZV9zY29yZRgDIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABIAogBARImChBtYXhfZmFpbGVkX3Rlc3RzGAQgASgFQge6SAQaAigASAOIAQESMQoUcmVncmVzc2lvbl90aHJlc2hvbGQYBSABKAFCDrpICxIJKQAAAAAAAAAASASIAQESIQoUYmxvY2tfb25fYW55X2ZhaWx1cmUYBiABKAhIBYgBARIuChFtYXhfY29zdF9pbmNyZWFzZRgHIAEoAUIOukgLEgkpAAAAAAAAAABIBogBARIxChRtYXhfbGF0ZW5jeV9pbmNyZWFzZRgIIAEoAUIOukgLEgkpAAAAAAAAAABIB4gBARI5Cg9jdXN0b21fY3JpdGVyaWEYCSADKAsyIC5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ3JpdGVyaW9uEkMKHW1pbl9qdWRnZV92YWxpZGF0aW9uX2FjY3VyYWN5GAogASgBQhe6SBQSEhkAAAAAAADwPykAAAAAAAAAAEgIiAEBEjAKGm1pbl9qdWRnZV92YWxpZGF0aW9uX2NvdW50GAsgASgFQge6SAQaAigASAmIAQESGgoScmVxdWlyZWRfanVkZ2VfaWRzGAwgAygJEjAKI2Jsb2NrX29uX2p1ZGdlc19uZWVkaW5nX2NhbGlicmF0aW9uGA0gASgISAqIAQESHQoVcmVxdWlyZWRfanVkZ2VfbW9kZWxzGA4gAygJEiAKGHJlcXVpcmVkX3J1YnJpY192ZXJzaW9ucxgPIAMoCRIkChxyZXF1aXJlZF9jYWxpYnJhdGlvbl9jb2hvcnRzGBAgAygJEkEKG21heF9qdWRnZV9kaXNhZ3JlZW1lbnRfcmF0ZRgRIAEoAUIXukgUEhIZAAAAAAAA8D8pAAAAAAAAAABIC4gBAUIKCghfZW5hYmxlZEIQCg5fbWluX3Bhc3NfcmF0ZUIUChJfbWluX2F2ZXJhZ2Vfc2NvcmVCEwoRX21heF9mYWlsZWRfdGVzdHNCFwoVX3JlZ3Jlc3Npb25fdGhyZXNob2xkQhcKFV9ibG9ja19vbl9hbnlfZmFpbHVyZUIUChJfbWF4X2Nvc3RfaW5jcmVhc2VCFwoVX21heF9sYXRlbmN5X2luY3JlYXNlQiAKHl9taW5fanVkZ2VfdmFsaWRhdGlvbl9hY2N1cmFjeUIdChtfbWluX2p1ZGdlX3ZhbGlkYXRpb25fY291bnRCJgokX2Jsb2NrX29uX2p1ZGdlc19uZWVkaW5nX2NhbGlicmF0aW9uQh4KHF9tYXhfanVkZ2VfZGlzYWdyZWVtZW50X3JhdGUiYQoUUXVhbGl0eUdhdGVDcml0ZXJpb24SDAoEbmFtZRgBIAEoCRIMCgR0eXBlGAIgASgJEhAKCG9wZXJhdG9yGAMgASgJEg0KBXZhbHVlGAQgASgBEgwKBHVuaXQYBSABKAkiaQoUUXVhbGl0eUdhdGVWaW9sYXRpb24SDAoEcnVsZRgBIAEoCRIPCgdtZXNzYWdlGAIgASgJEhAKCHNldmVyaXR5GAMgASgJEg4KBmFjdHVhbBgEIAEoARIQCghleHBlY3RlZBgFIAEoASJzChJRdWFsaXR5R2F0ZVN1bW1hcnkSHQoMdG90YWxfY2hlY2tzGAEgASgFQge6SAQaAigAEh4KDXBhc3NlZF9jaGVja3MYAiABKAVCB7pIBBoCKAASHgoNZmFpbGVkX2NoZWNrcxgDIAEoBUIHukgEGgIoACKYBQoRUXVhbGl0eUdhdGVSZXN1bHQSCgoCaWQYASABKAkSHAoLdGVzdF9ydW5faWQYAiABKAlCB7pIBHICEAESFwoPb3JnYW5pemF0aW9uX2lkGAMgASgJEhQKDHdvcmtzcGFjZV9pZBgEIAEoCRITCgtlbnZpcm9ubWVudBgFIAEoCRIWCg5vdmVyYWxsX3N0YXR1cxgGIAEoCRIWCg5vdmVyYWxsX3Bhc3NlZBgHIAEoCBIwCgxldmFsdWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjEKEGNyaXRlcmlhX3Jlc3VsdHMYCSADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eh8KDnRvdGFsX2NyaXRlcmlhGAogASgFQge6SAQaAigAEiAKD3Bhc3NlZF9jcml0ZXJpYRgLIAEoBUIHukgEGgIoABIgCg9mYWlsZWRfY3JpdGVyaWEYDCABKAVCB7pIBBoCKAASIQoQd2FybmluZ19jcml0ZXJpYRgNIAEoBUIHukgEGgIoABItCgx0ZXN0X21ldHJpY3MYDiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjIKC2NvbmZpZ191c2VkGA8gASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZxIOCgZwYXNzZWQYECABKAgSDQoFc2NvcmUYESABKAESNAoKdmlvbGF0aW9ucxgSIAMoCzIgLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVWaW9sYXRpb24SLwoHc3VtbWFyeRgTIAEoCzIeLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVTdW1tYXJ5Eg8KB2RldGFpbHMYFCABKAkiQQoVUXVhbGl0eUdhdGVQYWdpbmF0aW9uEhYKBXRvdGFsGAEgASgFQge6SAQaAigAEhAKCGhhc19tb3JlGAIgASgIIh8KHUdldFF1YWxpdHlHYXRlRGVmYXVsdHNSZXF1ZXN0Iu4BCh5HZXRRdWFsaXR5R2F0ZURlZmF1bHRzUmVzcG9uc2USSAoHY29uZmlncxgBIAMoCzI3LmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVEZWZhdWx0c1Jlc3BvbnNlLkNvbmZpZ3NFbnRyeRIzChJhdmFpbGFibGVfY3JpdGVyaWEYAiADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Gk0KDENvbmZpZ3NFbnRyeRILCgNrZXkYASABKAkSLAoFdmFsdWUYAiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnOgI4ASI4Ch1MaXN0UXVhbGl0eUdhdGVDb25maWdzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkiuQEKHkxpc3RRdWFsaXR5R2F0ZUNvbmZpZ3NSZXNwb25zZRJICgdjb25maWdzGAEgAygLMjcuZmVybWF0YS52MS5MaXN0UXVhbGl0eUdhdGVDb25maWdzUmVzcG9uc2UuQ29uZmlnc0VudHJ5Gk0KDENvbmZpZ3NFbnRyeRILCgNrZXkYASABKAkSLAoFdmFsdWUYAiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnOgI4ASJLChtHZXRRdWFsaXR5R2F0ZUNvbmZpZ1JlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEhMKC2Vudmlyb25tZW50GAIgASgJImIKHEdldFF1YWxpdHlHYXRlQ29uZmlnUmVzcG9uc2USEwoLZW52aXJvbm1lbnQYASABKAkSLQoGY29uZmlnGAIgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZyKOAQoeVXBzZXJ0UXVhbGl0eUdhdGVDb25maWdSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARITCgtlbnZpcm9ubWVudBgCIAEoCRI1CgZjb25maWcYAyABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnQga6SAPIAQEiZQofVXBzZXJ0UXVhbGl0eUdhdGVDb25maWdSZXNwb25zZRITCgtlbnZpcm9ubWVudBgBIAEoCRItCgZjb25maWcYAiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnIlYKHVJlc2V0UXVhbGl0eUdhdGVDb25maWdSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARITCgtlbnZpcm9ubWVudBgCIAEoCSKSAQoeUmVzZXRRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlEhMKC2Vudmlyb25tZW50GAEgASgJEiwKCHJlc2V0X2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBItCgZjb25maWcYAyABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnIvkBChpFdmFsdWF0ZVF1YWxpdHlHYXRlUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhMKC2Vudmlyb25tZW50GAMgASgJEhwKC3Rlc3RfcnVuX2lkGAQgASgJQge6SARyAhABEigKB21ldHJpY3MYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KBmNvbmZpZxgGIAEoCzIdLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVDb25maWcSFAoHcGVyc2lzdBgHIAEoCEgAiAEBQgoKCF9wZXJzaXN0IkwKG0V2YWx1YXRlUXVhbGl0eUdhdGVSZXNwb25zZRItCgZyZXN1bHQYASABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUmVzdWx0IvMCCiBCYXRjaEV2YWx1YXRlUXVhbGl0eUdhdGVzUmVxdWVzdBIXCg9vcmdhbml6YXRpb25faWQYASABKAkSFAoMd29ya3NwYWNlX2lkGAIgASgJEhMKC2Vudmlyb25tZW50GAMgASgJEhQKDHRlc3RfcnVuX2lkcxgEIAMoCRJWCg5tZXRyaWNzX2J5X3J1bhgFIAMoCzI+LmZlcm1hdGEudjEuQmF0Y2hFdmFsdWF0ZVF1YWxpdHlHYXRlc1JlcXVlc3QuTWV0cmljc0J5UnVuRW50cnkSLQoGY29uZmlnGAYgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZxIUCgdwZXJzaXN0GAcgASgISACIAQEaTAoRTWV0cmljc0J5UnVuRW50cnkSCwoDa2V5GAEgASgJEiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdDoCOAFCCgoIX3BlcnNpc3QiwQEKIUJhdGNoRXZhbHVhdGVRdWFsaXR5R2F0ZXNSZXNwb25zZRIgCg90b3RhbF9wcm9jZXNzZWQYASABKAVCB7pIBBoCKAASGwoKc3VjY2Vzc2Z1bBgCIAEoBUIHukgEGgIoABIXCgZmYWlsZWQYAyABKAVCB7pIBBoCKAASLgoHcmVzdWx0cxgEIAMoCzIdLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVSZXN1bHQSFAoMbmV4dF9hY3Rpb25zGAUgAygJImMKH0dldFF1YWxpdHlHYXRlRXZhbHVhdGlvblJlcXVlc3QSIAoPb3JnYW5pemF0aW9uX2lkGAEgASgJQge6SARyAhABEh4KDWV2YWx1YXRpb25faWQYAiABKAlCB7pIBHICEAEiVQogR2V0UXVhbGl0eUdhdGVFdmFsdWF0aW9uUmVzcG9uc2USMQoKZXZhbHVhdGlvbhgBIAEoCzIdLmZlcm1hdGEudjEuUXVhbGl0eUdhdGVSZXN1bHQiwgEKHUxpc3RRdWFsaXR5R2F0ZVJlc3VsdHNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLZW52aXJvbm1lbnQYAyABKAkSDgoGc3RhdHVzGAQgASgJEhMKC3Rlc3RfcnVuX2lkGAUgASgJEhYKBWxpbWl0GAYgASgFQge6SAQaAigAEhcKBm9mZnNldBgHIAEoBUIHukgEGgIoACKHAQoeTGlzdFF1YWxpdHlHYXRlUmVzdWx0c1Jlc3BvbnNlEi4KB3Jlc3VsdHMYASADKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUmVzdWx0EjUKCnBhZ2luYXRpb24YAiABKAsyIS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUGFnaW5hdGlvbiJtChxHZXRRdWFsaXR5R2F0ZU1ldHJpY3NSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSFQoEZGF5cxgDIAEoBUIHukgEGgIoACK7AQodR2V0UXVhbGl0eUdhdGVNZXRyaWNzUmVzcG9uc2USDgoGcGVyaW9kGAEgASgJEi0KDHRlc3RfbWV0cmljcxgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMQoQY3JpdGVyaWFfcmVzdWx0cxgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKAoHc3VtbWFyeRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QigAEKGkdldFF1YWxpdHlHYXRlU3RhdHNSZXF1ZXN0EiAKD29yZ2FuaXphdGlvbl9pZBgBIAEoCUIHukgEcgIQARIUCgx3b3Jrc3BhY2VfaWQYAiABKAkSEwoLZW52aXJvbm1lbnQYAyABKAkSFQoEZGF5cxgEIAEoBUIHukgEGgIoACLcAQobR2V0UXVhbGl0eUdhdGVTdGF0c1Jlc3BvbnNlEg4KBnBlcmlvZBgBIAEoCRIoCgdzdW1tYXJ5GAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBInCgZ0cmVuZHMYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei8KDmJ5X2Vudmlyb25tZW50GAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCgh0aW1lbGluZRgFIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiZgogVmFsaWRhdGVRdWFsaXR5R2F0ZUNvbmZpZ1JlcXVlc3QSEwoLZW52aXJvbm1lbnQYASABKAkSLQoGY29uZmlnGAIgASgLMh0uZmVybWF0YS52MS5RdWFsaXR5R2F0ZUNvbmZpZyK8AQohVmFsaWRhdGVRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlEg0KBXZhbGlkGAEgASgIEg4KBmVycm9ycxgCIAMoCRIQCgh3YXJuaW5ncxgDIAMoCRIXCg9yZWNvbW1lbmRhdGlvbnMYBCADKAkSEwoLZW52aXJvbm1lbnQYBSABKAkSOAoRbm9ybWFsaXplZF9jb25maWcYBiABKAsyHS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlQ29uZmlnInMKIVF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFdhaXZlchIOCgZtZXRyaWMYASABKAkSDgoGcmVhc29uGAIgASgJEi4KCmV4cGlyZXNfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIrkCCipFdmFsdWF0ZVF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFJlcXVlc3QSFwoPb3JnYW5pemF0aW9uX2lkGAEgASgJEikKCGJhc2VsaW5lGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIqCgljYW5kaWRhdGUYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EigKB2J1ZGdldHMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhgKEGhpZ2hlcl9pc19iZXR0ZXIYBSADKAkSFwoPbG93ZXJfaXNfYmV0dGVyGAYgAygJEj4KB3dhaXZlcnMYByADKAsyLS5mZXJtYXRhLnYxLlF1YWxpdHlHYXRlUmVncmVzc2lvbkJ1ZGdldFdhaXZlciLoAQorRXZhbHVhdGVRdWFsaXR5R2F0ZVJlZ3Jlc3Npb25CdWRnZXRSZXNwb25zZRIQCghkZWNpc2lvbhgBIAEoCRIRCglwYXNzX2dhdGUYAiABKAgSDwoHYmxvY2tlZBgDIAEoCBIoChd0b3RhbF9tZXRyaWNzX2V2YWx1YXRlZBgEIAEoBUIHukgEGgIoABIfCg50b3RhbF9icmVhY2hlcxgFIAEoBUIHukgEGgIoABIpCghicmVhY2hlcxgGIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDQoFbm90ZXMYByADKAkiMQohRXZhbHVhdGVQdWJsaWNGZWF0dXJlRmxhZ3NSZXF1ZXN0EgwKBGtleXMYASADKAkinAEKIkV2YWx1YXRlUHVibGljRmVhdHVyZUZsYWdzUmVzcG9uc2USSAoFZmxhZ3MYASADKAsyOS5mZXJtYXRhLnYxLkV2YWx1YXRlUHVibGljRmVhdHVyZUZsYWdzUmVzcG9uc2UuRmxhZ3NFbnRyeRosCgpGbGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEiGwoZR2V0TWlncmF0aW9uU3RhdHVzUmVxdWVzdCJcChRSb3V0ZU1pZ3JhdGlvblN0YXR1cxITCgtwYXRoX3ByZWZpeBgBIAEoCRIQCghtaWdyYXRlZBgCIAEoCBIdChVwcm94aWVkX3JlcXVlc3RfY291bnQYAyABKAMiTgoaR2V0TWlncmF0aW9uU3RhdHVzUmVzcG9uc2USMAoGcm91dGVzGAEgAygLMiAuZmVybWF0YS52MS5Sb3V0ZU1pZ3JhdGlvblN0YXR1cyryBgoNQXNzZXJ0aW9uS2luZBIeChpBU1NFUlRJT05fS0lORF9VTlNQRUNJRklFRBAAEhsKF0FTU0VSVElPTl9LSU5EX0NPTlRBSU5TEAESHwobQVNTRVJUSU9OX0tJTkRfTk9UX0NPTlRBSU5TEAISGAoUQVNTRVJUSU9OX0tJTkRfUkVHRVgQAxIdChlBU1NFUlRJT05fS0lORF9TSU1JTEFSSVRZEAQSHwobQVNTRVJUSU9OX0tJTkRfQ1VTVE9NX0pVREdFEAUSHgoaQVNTRVJUSU9OX0tJTkRfSlNPTl9TQ0hFTUEQBhIZChVBU1NFUlRJT05fS0lORF9FUVVBTFMQBxIeChpBU1NFUlRJT05fS0lORF9TVEFSVFNfV0lUSBAIEh8KG0FTU0VSVElPTl9LSU5EX0NPTlRBSU5TX0FOWRAJEh8KG0FTU0VSVElPTl9LSU5EX0NPTlRBSU5TX0FMTBAKEh0KGUFTU0VSVElPTl9LSU5EX1dPUkRfQ09VTlQQCxIeChpBU1NFUlRJT05fS0lORF9OVU1FUklDX0dURRAMEh4KGkFTU0VSVElPTl9LSU5EX05VTUVSSUNfTFRFEA0SHgoaQVNTRVJUSU9OX0tJTkRfVE9PTF9DQUxMRUQQDhIiCh5BU1NFUlRJT05fS0lORF9UT09MX05PVF9DQUxMRUQQDxIgChxBU1NFUlRJT05fS0lORF9UT09MX1NFUVVFTkNFEBASIwofQVNTRVJUSU9OX0tJTkRfVFJBQ0VfU1BBTl9DT1VOVBAREiIKHkFTU0VSVElPTl9LSU5EX1RPT0xfQVJHU19NQVRDSBASEiQKIEFTU0VSVElPTl9LSU5EX1RSQUNFX0VSUk9SX1NQQU5TEBMSJgoiQVNTRVJUSU9OX0tJTkRfVFJBQ0VfU1BBTl9EVVJBVElPThAUEiMKH0FTU0VSVElPTl9LSU5EX1RSQUNFX1NURVBfQ09VTlQQFRIfChtBU1NFUlRJT05fS0lORF9UT09MX0NBTExfRjEQFhIdChlBU1NFUlRJT05fS0lORF9MTE1fUlVCUklDEBcSJgoiQVNTRVJUSU9OX0tJTkRfTExNX1BBSVJXSVNFX1JVQlJJQxAYEiMKH0FTU0VSVElPTl9LSU5EX0FHRU5UX1RSQUpFQ1RPUlkQGSqIAQoJSnVkZ2VLaW5kEhoKFkpVREdFX0tJTkRfVU5TUEVDSUZJRUQQABISCg5KVURHRV9LSU5EX0xMTRABEhkKFUpVREdFX0tJTkRfUlVMRV9CQVNFRBACEhkKFUpVREdFX0tJTkRfU0lNSUxBUklUWRADEhUKEUpVREdFX0tJTkRfQ1VTVE9NEAQqkwIKF1NjZW5hcmlvRW52aXJvbm1lbnRLaW5kEikKJVNDRU5BUklPX0VOVklST05NRU5UX0tJTkRfVU5TUEVDSUZJRUQQABIkCiBTQ0VOQVJJT19FTlZJUk9OTUVOVF9LSU5EX1JFUExBWRABEiYKIlNDRU5BUklPX0VOVklST05NRU5UX0tJTkRfU1RBUkxBUksQAhInCiNTQ0VOQVJJT19FTlZJUk9OTUVOVF9LSU5EX01PQ0tfSFRUUBADEiUKIVNDRU5BUklPX0VOVklST05NRU5UX0tJTkRfU0FOREJPWBAEEi8KK1NDRU5BUklPX0VOVklST05NRU5UX0tJTkRfUFJPRFVDVElPTl9TSEFET1cQBSqnAgoVVXNlclNpbXVsYXRvclN0cmF0ZWd5EicKI1VTRVJfU0lNVUxBVE9SX1NUUkFURUdZX1VOU1BFQ0lGSUVEEAASJwojVVNFUl9TSU1VTEFUT1JfU1RSQVRFR1lfQ09PUEVSQVRJVkUQARIhCh1VU0VSX1NJTVVMQVRPUl9TVFJBVEVHWV9SRUFDVBACEiIKHlVTRVJfU0lNVUxBVE9SX1NUUkFURUdZX1ZFUklGWRADEiYKIlVTRVJfU0lNVUxBVE9SX1NUUkFURUdZX1JFRkxFQ1RJT04QBBInCiNVU0VSX1NJTVVMQVRPUl9TVFJBVEVHWV9BRFZFUlNBUklBTBAFEiQKIFVTRVJfU0lNVUxBVE9SX1NUUkFURUdZX0NPTkZVU0VEEAYqtgIKFE91dGNvbWVDcml0ZXJpb25LaW5kEiYKIk9VVENPTUVfQ1JJVEVSSU9OX0tJTkRfVU5TUEVDSUZJRUQQABImCiJPVVRDT01FX0NSSVRFUklPTl9LSU5EX0ZJTkFMX1NUQVRFEAESKgomT1VUQ09NRV9DUklURVJJT05fS0lORF9UQVNLX0NPTVBMRVRJT04QAhIlCiFPVVRDT01FX0NSSVRFUklPTl9LSU5EX1RSQUpFQ1RPUlkQAxImCiJPVVRDT01FX0NSSVRFUklPTl9LSU5EX0NPU1RfQlVER0VUEAQSKQolT1VUQ09NRV9DUklURVJJT05fS0lORF9MQVRFTkNZX0JVREdFVBAFEigKJE9VVENPTUVfQ1JJVEVSSU9OX0tJTkRfUVVBTElUWV9TQ09SRRAGKroDChdHb3Zlcm5hbmNlQXNzZXJ0aW9uVHlwZRIpCiVHT1ZFUk5BTkNFX0FTU0VSVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAASMQotR09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9FU0NBTEFUSU9OX1JFUVVJUkVEEAESMwovR09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9BVVRPX1BST0NFRURfRVhQRUNURUQQAhIxCi1HT1ZFUk5BTkNFX0FTU0VSVElPTl9UWVBFX1JJU0tfQ0xBU1NJRklDQVRJT04QAxIyCi5HT1ZFUk5BTkNFX0FTU0VSVElPTl9UWVBFX0RBVEFfQUNDRVNTX0JPVU5EQVJZEAQSOAo0R09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9HT1ZFUk5BTkNFX0JMT0NLX1JFU1BFQ1RFRBAFEjMKL0dPVkVSTkFOQ0VfQVNTRVJUSU9OX1RZUEVfU0VMRl9BUFBST1ZBTF9CTE9DS0VEEAYSNgoyR09WRVJOQU5DRV9BU1NFUlRJT05fVFlQRV9QSUlfREVURUNURURfQU5EX0hBTkRMRUQQByqAAwoXRGVsZWdhdGlvbkFzc2VydGlvblR5cGUSKQolREVMRUdBVElPTl9BU1NFUlRJT05fVFlQRV9VTlNQRUNJRklFRBAAEjcKM0RFTEVHQVRJT05fQVNTRVJUSU9OX1RZUEVfREVMRUdBVElPTl9UQVJHRVRfQ09SUkVDVBABEjIKLkRFTEVHQVRJT05fQVNTRVJUSU9OX1RZUEVfQ09OVEVYVF9QUkVTRVJWQVRJT04QAhIyCi5ERUxFR0FUSU9OX0FTU0VSVElPTl9UWVBFX0RFTEVHQVRJT05fVkFMVUVfQUREEAMSNQoxREVMRUdBVElPTl9BU1NFUlRJT05fVFlQRV9ERUxFR0FUSU9OX0NPU1RfQk9VTkRFRBAEEjEKLURFTEVHQVRJT05fQVNTRVJUSU9OX1RZUEVfQ0hBSU5fREVQVEhfQk9VTkRFRBAFEi8KK0RFTEVHQVRJT05fQVNTRVJUSU9OX1RZUEVfRkFJTFVSRV9JU09MQVRJT04QBir8AQoRU2NlbmFyaW9SdW5TdGF0dXMSIwofU0NFTkFSSU9fUlVOX1NUQVRVU19VTlNQRUNJRklFRBAAEh8KG1NDRU5BUklPX1JVTl9TVEFUVVNfUEVORElORxABEh8KG1NDRU5BUklPX1JVTl9TVEFUVVNfUlVOTklORxACEh4KGlNDRU5BUklPX1JVTl9TVEFUVVNfUEFTU0VEEAMSHgoaU0NFTkFSSU9fUlVOX1NUQVRVU19GQUlMRUQQBBIdChlTQ0VOQVJJT19SVU5fU1RBVFVTX0VSUk9SEAUSIQodU0NFTkFSSU9fUlVOX1NUQVRVU19DQU5DRUxMRUQQBiqVAQoWRGlhZ25vc3RpY0FydGlmYWN0S2luZBIoCiRESUFHTk9TVElDX0FSVElGQUNUX0tJTkRfVU5TUEVDSUZJRUQQABIoCiRESUFHTk9TVElDX0FSVElGQUNUX0tJTkRfRVhQTEFOQVRJT04QARInCiNESUFHTk9TVElDX0FSVElGQUNUX0tJTkRfUk9PVF9DQVVTRRACKr4BChlEaWFnbm9zdGljRmluZGluZ1NldmVyaXR5EisKJ0RJQUdOT1NUSUNfRklORElOR19TRVZFUklUWV9VTlNQRUNJRklFRBAAEiQKIERJQUdOT1NUSUNfRklORElOR19TRVZFUklUWV9JTkZPEAESJwojRElBR05PU1RJQ19GSU5ESU5HX1NFVkVSSVRZX1dBUk5JTkcQAhIlCiFESUFHTk9TVElDX0ZJTkRJTkdfU0VWRVJJVFlfRVJST1IQAyrrAQoZQWdlbnRTZXNzaW9uQ29udHJvbEFjdGlvbhIsCihBR0VOVF9TRVNTSU9OX0NPTlRST0xfQUNUSU9OX1VOU1BFQ0lGSUVEEAASJgoiQUdFTlRfU0VTU0lPTl9DT05UUk9MX0FDVElPTl9QQVVTRRABEicKI0FHRU5UX1NFU1NJT05fQ09OVFJPTF9BQ1RJT05fUkVTVU1FEAISJwojQUdFTlRfU0VTU0lPTl9DT05UUk9MX0FDVElPTl9DQU5DRUwQAxImCiJBR0VOVF9TRVNTSU9OX0NPTlRST0xfQUNUSU9OX1JFVFJZEAQqiQEKFUFnZW50QXBwcm92YWxEZWNpc2lvbhInCiNBR0VOVF9BUFBST1ZBTF9ERUNJU0lPTl9VTlNQRUNJRklFRBAAEiMKH0FHRU5UX0FQUFJPVkFMX0RFQ0lTSU9OX0FQUFJPVkUQARIiCh5BR0VOVF9BUFBST1ZBTF9ERUNJU0lPTl9SRUpFQ1QQAiruAQoWSnVkZ2VDYWxpYnJhdGlvblN0YXR1cxIoCiRKVURHRV9DQUxJQlJBVElPTl9TVEFUVVNfVU5TUEVDSUZJRUQQABIiCh5KVURHRV9DQUxJQlJBVElPTl9TVEFUVVNfUkVBRFkQARIpCiVKVURHRV9DQUxJQlJBVElPTl9TVEFUVVNfTkVFRFNfTEFCRUxTEAISKwonSlVER0VfQ0FMSUJSQVRJT05fU1RBVFVTX05FRURTX0FDQ1VSQUNZEAMSLgoqSlVER0VfQ0FMSUJSQVRJT05fU1RBVFVTX05FRURTX0JJQVNfUkVWSUVXEAQypWQKDkZlcm1hdGFTZXJ2aWNlEoQBCg9DcmVhdGVUZXN0U3VpdGUSIi5mZXJtYXRhLnYxLkNyZWF0ZVRlc3RTdWl0ZVJlcXVlc3QaIy5mZXJtYXRhLnYxLkNyZWF0ZVRlc3RTdWl0ZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEnoKDEdldFRlc3RTdWl0ZRIfLmZlcm1hdGEudjEuR2V0VGVzdFN1aXRlUmVxdWVzdBogLmZlcm1hdGEudjEuR2V0VGVzdFN1aXRlUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKAAQoOTGlzdFRlc3RTdWl0ZXMSIS5mZXJtYXRhLnYxLkxpc3RUZXN0U3VpdGVzUmVxdWVzdBoiLmZlcm1hdGEudjEuTGlzdFRlc3RTdWl0ZXNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEo8BChNMaXN0RXZhbHVhdGlvblBhY2tzEiYuZmVybWF0YS52MS5MaXN0RXZhbHVhdGlvblBhY2tzUmVxdWVzdBonLmZlcm1hdGEudjEuTGlzdEV2YWx1YXRpb25QYWNrc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSkAEKE0J1aWxkRXZhbHVhdGlvblBhY2sSJi5mZXJtYXRhLnYxLkJ1aWxkRXZhbHVhdGlvblBhY2tSZXF1ZXN0GicuZmVybWF0YS52MS5CdWlsZEV2YWx1YXRpb25QYWNrUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSgQEKDkNyZWF0ZVNjZW5hcmlvEiEuZmVybWF0YS52MS5DcmVhdGVTY2VuYXJpb1JlcXVlc3QaIi5mZXJtYXRhLnYxLkNyZWF0ZVNjZW5hcmlvUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSdwoLR2V0U2NlbmFyaW8SHi5mZXJtYXRhLnYxLkdldFNjZW5hcmlvUmVxdWVzdBofLmZlcm1hdGEudjEuR2V0U2NlbmFyaW9SZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEn0KDUxpc3RTY2VuYXJpb3MSIC5mZXJtYXRhLnYxLkxpc3RTY2VuYXJpb3NSZXF1ZXN0GiEuZmVybWF0YS52MS5MaXN0U2NlbmFyaW9zUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKVAQoTQ3JlYXRlQWdlbnRUYXNrRXZhbBImLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRUYXNrRXZhbFJlcXVlc3QaJy5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50VGFza0V2YWxSZXNwb25zZSItyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYFGV2YWwub3JnYW5pemF0aW9uX2lkEowBChBSdW5BZ2VudFRhc2tFdmFsEiMuZmVybWF0YS52MS5SdW5BZ2VudFRhc2tFdmFsUmVxdWVzdBokLmZlcm1hdGEudjEuUnVuQWdlbnRUYXNrRXZhbFJlc3BvbnNlIi3K8xgNZmVybWF0YTp3cml0ZdjzGALq8xgUZXZhbC5vcmdhbml6YXRpb25faWQSgAEKDkxpc3RBZ2VudFRvb2xzEiEuZmVybWF0YS52MS5MaXN0QWdlbnRUb29sc1JlcXVlc3QaIi5mZXJtYXRhLnYxLkxpc3RBZ2VudFRvb2xzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTQW5hbHl6ZUFnZW50QWN0aW9ucxImLmZlcm1hdGEudjEuQW5hbHl6ZUFnZW50QWN0aW9uc1JlcXVlc3QaJy5mZXJtYXRhLnYxLkFuYWx5emVBZ2VudEFjdGlvbnNSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKhAQoZQnVpbGRBZ2VudFNlc3Npb25UaW1lbGluZRIsLmZlcm1hdGEudjEuQnVpbGRBZ2VudFNlc3Npb25UaW1lbGluZVJlcXVlc3QaLS5mZXJtYXRhLnYxLkJ1aWxkQWdlbnRTZXNzaW9uVGltZWxpbmVSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEqQBChpMaXN0QWdlbnRXb3JrZmxvd1RlbXBsYXRlcxItLmZlcm1hdGEudjEuTGlzdEFnZW50V29ya2Zsb3dUZW1wbGF0ZXNSZXF1ZXN0Gi4uZmVybWF0YS52MS5MaXN0QWdlbnRXb3JrZmxvd1RlbXBsYXRlc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQStAEKH0NyZWF0ZUFnZW50V29ya2Zsb3dGcm9tVGVtcGxhdGUSMi5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50V29ya2Zsb3dGcm9tVGVtcGxhdGVSZXF1ZXN0GjMuZmVybWF0YS52MS5DcmVhdGVBZ2VudFdvcmtmbG93RnJvbVRlbXBsYXRlUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSkAEKE0NyZWF0ZUFnZW50V29ya2Zsb3cSJi5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50V29ya2Zsb3dSZXF1ZXN0GicuZmVybWF0YS52MS5DcmVhdGVBZ2VudFdvcmtmbG93UmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQShgEKEEdldEFnZW50V29ya2Zsb3cSIy5mZXJtYXRhLnYxLkdldEFnZW50V29ya2Zsb3dSZXF1ZXN0GiQuZmVybWF0YS52MS5HZXRBZ2VudFdvcmtmbG93UmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKMAQoSTGlzdEFnZW50V29ya2Zsb3dzEiUuZmVybWF0YS52MS5MaXN0QWdlbnRXb3JrZmxvd3NSZXF1ZXN0GiYuZmVybWF0YS52MS5MaXN0QWdlbnRXb3JrZmxvd3NSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpABChNVcGRhdGVBZ2VudFdvcmtmbG93EiYuZmVybWF0YS52MS5VcGRhdGVBZ2VudFdvcmtmbG93UmVxdWVzdBonLmZlcm1hdGEudjEuVXBkYXRlQWdlbnRXb3JrZmxvd1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpABChNEZWxldGVBZ2VudFdvcmtmbG93EiYuZmVybWF0YS52MS5EZWxldGVBZ2VudFdvcmtmbG93UmVxdWVzdBonLmZlcm1hdGEudjEuRGVsZXRlQWdlbnRXb3JrZmxvd1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEocBChBSdW5BZ2VudFdvcmtmbG93EiMuZmVybWF0YS52MS5SdW5BZ2VudFdvcmtmbG93UmVxdWVzdBokLmZlcm1hdGEudjEuUnVuQWdlbnRXb3JrZmxvd1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgPb3JnYW5pemF0aW9uX2lkEoQBCg9DcmVhdGVBZ2VudEhvb2sSIi5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50SG9va1JlcXVlc3QaIy5mZXJtYXRhLnYxLkNyZWF0ZUFnZW50SG9va1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEoABCg5MaXN0QWdlbnRIb29rcxIhLmZlcm1hdGEudjEuTGlzdEFnZW50SG9va3NSZXF1ZXN0GiIuZmVybWF0YS52MS5MaXN0QWdlbnRIb29rc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQShAEKD1VwZGF0ZUFnZW50SG9vaxIiLmZlcm1hdGEudjEuVXBkYXRlQWdlbnRIb29rUmVxdWVzdBojLmZlcm1hdGEudjEuVXBkYXRlQWdlbnRIb29rUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQShAEKD0RlbGV0ZUFnZW50SG9vaxIiLmZlcm1hdGEudjEuRGVsZXRlQWdlbnRIb29rUmVxdWVzdBojLmZlcm1hdGEudjEuRGVsZXRlQWdlbnRIb29rUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSgwEKD0dldEFnZW50U2Vzc2lvbhIiLmZlcm1hdGEudjEuR2V0QWdlbnRTZXNzaW9uUmVxdWVzdBojLmZlcm1hdGEudjEuR2V0QWdlbnRTZXNzaW9uUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKJAQoRTGlzdEFnZW50U2Vzc2lvbnMSJC5mZXJtYXRhLnYxLkxpc3RBZ2VudFNlc3Npb25zUmVxdWVzdBolLmZlcm1hdGEudjEuTGlzdEFnZW50U2Vzc2lvbnNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpABChNDb250cm9sQWdlbnRTZXNzaW9uEiYuZmVybWF0YS52MS5Db250cm9sQWdlbnRTZXNzaW9uUmVxdWVzdBonLmZlcm1hdGEudjEuQ29udHJvbEFnZW50U2Vzc2lvblJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgPb3JnYW5pemF0aW9uX2lkEpwBChdDcmVhdGVBZ2VudFNlc3Npb25FdmVudBIqLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRTZXNzaW9uRXZlbnRSZXF1ZXN0GisuZmVybWF0YS52MS5DcmVhdGVBZ2VudFNlc3Npb25FdmVudFJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpgBChZMaXN0QWdlbnRTZXNzaW9uRXZlbnRzEikuZmVybWF0YS52MS5MaXN0QWdlbnRTZXNzaW9uRXZlbnRzUmVxdWVzdBoqLmZlcm1hdGEudjEuTGlzdEFnZW50U2Vzc2lvbkV2ZW50c1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSnwEKGENyZWF0ZUFnZW50VG9vbEV4ZWN1dGlvbhIrLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRUb29sRXhlY3V0aW9uUmVxdWVzdBosLmZlcm1hdGEudjEuQ3JlYXRlQWdlbnRUb29sRXhlY3V0aW9uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYA+rzGA9vcmdhbml6YXRpb25faWQSnwEKGFVwZGF0ZUFnZW50VG9vbEV4ZWN1dGlvbhIrLmZlcm1hdGEudjEuVXBkYXRlQWdlbnRUb29sRXhlY3V0aW9uUmVxdWVzdBosLmZlcm1hdGEudjEuVXBkYXRlQWdlbnRUb29sRXhlY3V0aW9uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYA+rzGA9vcmdhbml6YXRpb25faWQSmwEKF0xpc3RBZ2VudFRvb2xFeGVjdXRpb25zEiouZmVybWF0YS52MS5MaXN0QWdlbnRUb29sRXhlY3V0aW9uc1JlcXVlc3QaKy5mZXJtYXRhLnYxLkxpc3RBZ2VudFRvb2xFeGVjdXRpb25zUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTRGVjaWRlQWdlbnRBcHByb3ZhbBImLmZlcm1hdGEudjEuRGVjaWRlQWdlbnRBcHByb3ZhbFJlcXVlc3QaJy5mZXJtYXRhLnYxLkRlY2lkZUFnZW50QXBwcm92YWxSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgD6vMYD29yZ2FuaXphdGlvbl9pZBKMAQoSTGlzdEFnZW50QXBwcm92YWxzEiUuZmVybWF0YS52MS5MaXN0QWdlbnRBcHByb3ZhbHNSZXF1ZXN0GiYuZmVybWF0YS52MS5MaXN0QWdlbnRBcHByb3ZhbHNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpsBChdHZXRBZ2VudFNlc3Npb25UaW1lbGluZRIqLmZlcm1hdGEudjEuR2V0QWdlbnRTZXNzaW9uVGltZWxpbmVSZXF1ZXN0GisuZmVybWF0YS52MS5HZXRBZ2VudFNlc3Npb25UaW1lbGluZVJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSlgEKFVVwc2VydEN1c3RvbUV2YWx1YXRvchIoLmZlcm1hdGEudjEuVXBzZXJ0Q3VzdG9tRXZhbHVhdG9yUmVxdWVzdBopLmZlcm1hdGEudjEuVXBzZXJ0Q3VzdG9tRXZhbHVhdG9yUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSjAEKEkdldEN1c3RvbUV2YWx1YXRvchIlLmZlcm1hdGEudjEuR2V0Q3VzdG9tRXZhbHVhdG9yUmVxdWVzdBomLmZlcm1hdGEudjEuR2V0Q3VzdG9tRXZhbHVhdG9yUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKSAQoUTGlzdEN1c3RvbUV2YWx1YXRvcnMSJy5mZXJtYXRhLnYxLkxpc3RDdXN0b21FdmFsdWF0b3JzUmVxdWVzdBooLmZlcm1hdGEudjEuTGlzdEN1c3RvbUV2YWx1YXRvcnNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpYBChVEZWxldGVDdXN0b21FdmFsdWF0b3ISKC5mZXJtYXRhLnYxLkRlbGV0ZUN1c3RvbUV2YWx1YXRvclJlcXVlc3QaKS5mZXJtYXRhLnYxLkRlbGV0ZUN1c3RvbUV2YWx1YXRvclJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEngKC1Vwc2VydEp1ZGdlEh4uZmVybWF0YS52MS5VcHNlcnRKdWRnZVJlcXVlc3QaHy5mZXJtYXRhLnYxLlVwc2VydEp1ZGdlUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSbgoIR2V0SnVkZ2USGy5mZXJtYXRhLnYxLkdldEp1ZGdlUmVxdWVzdBocLmZlcm1hdGEudjEuR2V0SnVkZ2VSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEnQKCkxpc3RKdWRnZXMSHS5mZXJtYXRhLnYxLkxpc3RKdWRnZXNSZXF1ZXN0Gh4uZmVybWF0YS52MS5MaXN0SnVkZ2VzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBJ4CgtEZWxldGVKdWRnZRIeLmZlcm1hdGEudjEuRGVsZXRlSnVkZ2VSZXF1ZXN0Gh8uZmVybWF0YS52MS5EZWxldGVKdWRnZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEn4KDVN0YXJ0U2NlbmFyaW8SIC5mZXJtYXRhLnYxLlN0YXJ0U2NlbmFyaW9SZXF1ZXN0GiEuZmVybWF0YS52MS5TdGFydFNjZW5hcmlvUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYA+rzGA9vcmdhbml6YXRpb25faWQSogEKFkNyZWF0ZUFuZFN0YXJ0U2NlbmFyaW8SKS5mZXJtYXRhLnYxLkNyZWF0ZUFuZFN0YXJ0U2NlbmFyaW9SZXF1ZXN0GiouZmVybWF0YS52MS5DcmVhdGVBbmRTdGFydFNjZW5hcmlvUmVzcG9uc2UiMcrzGA1mZXJtYXRhOndyaXRl2PMYA+rzGBhzY2VuYXJpby5vcmdhbml6YXRpb25faWQSigEKEVJlY29yZFNjZW5hcmlvUnVuEiQuZmVybWF0YS52MS5SZWNvcmRTY2VuYXJpb1J1blJlcXVlc3QaJS5mZXJtYXRhLnYxLlJlY29yZFNjZW5hcmlvUnVuUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSgAEKDkdldFNjZW5hcmlvUnVuEiEuZmVybWF0YS52MS5HZXRTY2VuYXJpb1J1blJlcXVlc3QaIi5mZXJtYXRhLnYxLkdldFNjZW5hcmlvUnVuUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKGAQoQTGlzdFNjZW5hcmlvUnVucxIjLmZlcm1hdGEudjEuTGlzdFNjZW5hcmlvUnVuc1JlcXVlc3QaJC5mZXJtYXRhLnYxLkxpc3RTY2VuYXJpb1J1bnNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEr8BCiNHZXRFdmFsdWF0aW9uT2JzZXJ2YWJpbGl0eURhc2hib2FyZBI2LmZlcm1hdGEudjEuR2V0RXZhbHVhdGlvbk9ic2VydmFiaWxpdHlEYXNoYm9hcmRSZXF1ZXN0GjcuZmVybWF0YS52MS5HZXRFdmFsdWF0aW9uT2JzZXJ2YWJpbGl0eURhc2hib2FyZFJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSmwEKF0dldEV2YWx1YXRpb25SdW5NZXRyaWNzEiouZmVybWF0YS52MS5HZXRFdmFsdWF0aW9uUnVuTWV0cmljc1JlcXVlc3QaKy5mZXJtYXRhLnYxLkdldEV2YWx1YXRpb25SdW5NZXRyaWNzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKlAQoaQ3JlYXRlRXZhbHVhdGlvbkNvbXBhcmlzb24SLS5mZXJtYXRhLnYxLkNyZWF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBouLmZlcm1hdGEudjEuQ3JlYXRlRXZhbHVhdGlvbkNvbXBhcmlzb25SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKbAQoXR2V0RXZhbHVhdGlvbkNvbXBhcmlzb24SKi5mZXJtYXRhLnYxLkdldEV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBorLmZlcm1hdGEudjEuR2V0RXZhbHVhdGlvbkNvbXBhcmlzb25SZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEqEBChlMaXN0RXZhbHVhdGlvbkNvbXBhcmlzb25zEiwuZmVybWF0YS52MS5MaXN0RXZhbHVhdGlvbkNvbXBhcmlzb25zUmVxdWVzdBotLmZlcm1hdGEudjEuTGlzdEV2YWx1YXRpb25Db21wYXJpc29uc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSpQEKGlVwZGF0ZUV2YWx1YXRpb25Db21wYXJpc29uEi0uZmVybWF0YS52MS5VcGRhdGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QaLi5mZXJtYXRhLnYxLlVwZGF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSpQEKGkRlbGV0ZUV2YWx1YXRpb25Db21wYXJpc29uEi0uZmVybWF0YS52MS5EZWxldGVFdmFsdWF0aW9uQ29tcGFyaXNvblJlcXVlc3QaLi5mZXJtYXRhLnYxLkRlbGV0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSsQEKHlJlZ2VuZXJhdGVFdmFsdWF0aW9uQ29tcGFyaXNvbhIxLmZlcm1hdGEudjEuUmVnZW5lcmF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVxdWVzdBoyLmZlcm1hdGEudjEuUmVnZW5lcmF0ZUV2YWx1YXRpb25Db21wYXJpc29uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSrQEKHUdldEV2YWx1YXRpb25Hb3Zlcm5hbmNlUmVwb3J0EjAuZmVybWF0YS52MS5HZXRFdmFsdWF0aW9uR292ZXJuYW5jZVJlcG9ydFJlcXVlc3QaMS5mZXJtYXRhLnYxLkdldEV2YWx1YXRpb25Hb3Zlcm5hbmNlUmVwb3J0UmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKHAQoQQnVpbGRSZWRUZWFtUGxhbhIjLmZlcm1hdGEudjEuQnVpbGRSZWRUZWFtUGxhblJlcXVlc3QaJC5mZXJtYXRhLnYxLkJ1aWxkUmVkVGVhbVBsYW5SZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKPAQoTTGlzdFJlZFRlYW1EYXRhc2V0cxImLmZlcm1hdGEudjEuTGlzdFJlZFRlYW1EYXRhc2V0c1JlcXVlc3QaJy5mZXJtYXRhLnYxLkxpc3RSZWRUZWFtRGF0YXNldHNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEo0BChJCdWlsZFJlZFRlYW1SZXBvcnQSJS5mZXJtYXRhLnYxLkJ1aWxkUmVkVGVhbVJlcG9ydFJlcXVlc3QaJi5mZXJtYXRhLnYxLkJ1aWxkUmVkVGVhbVJlcG9ydFJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEo0BChJQcm9tb3RlRGF0YXNldEl0ZW0SJS5mZXJtYXRhLnYxLlByb21vdGVEYXRhc2V0SXRlbVJlcXVlc3QaJi5mZXJtYXRhLnYxLlByb21vdGVEYXRhc2V0SXRlbVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpABChNQcm9tb3RlRGF0YXNldEl0ZW1zEiYuZmVybWF0YS52MS5Qcm9tb3RlRGF0YXNldEl0ZW1zUmVxdWVzdBonLmZlcm1hdGEudjEuUHJvbW90ZURhdGFzZXRJdGVtc1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEo0BChJCdWlsZEdvbGRlbkRhdGFzZXQSJS5mZXJtYXRhLnYxLkJ1aWxkR29sZGVuRGF0YXNldFJlcXVlc3QaJi5mZXJtYXRhLnYxLkJ1aWxkR29sZGVuRGF0YXNldFJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEpkBChZJbmdlc3RQcm9kdWN0aW9uVHJhY2VzEikuZmVybWF0YS52MS5Jbmdlc3RQcm9kdWN0aW9uVHJhY2VzUmVxdWVzdBoqLmZlcm1hdGEudjEuSW5nZXN0UHJvZHVjdGlvblRyYWNlc1Jlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEsABCiNCdWlsZFByb2R1Y3Rpb25UcmFjZVJlZ3Jlc3Npb25TdWl0ZRI2LmZlcm1hdGEudjEuQnVpbGRQcm9kdWN0aW9uVHJhY2VSZWdyZXNzaW9uU3VpdGVSZXF1ZXN0GjcuZmVybWF0YS52MS5CdWlsZFByb2R1Y3Rpb25UcmFjZVJlZ3Jlc3Npb25TdWl0ZVJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGALq8xgPb3JnYW5pemF0aW9uX2lkEqQBChpMaXN0UHJvZHVjdGlvblRyYWNlU2FtcGxlcxItLmZlcm1hdGEudjEuTGlzdFByb2R1Y3Rpb25UcmFjZVNhbXBsZXNSZXF1ZXN0Gi4uZmVybWF0YS52MS5MaXN0UHJvZHVjdGlvblRyYWNlU2FtcGxlc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSqwEKHENvbXBhcmVQcm9kdWN0aW9uVHJhY2VSZXBsYXkSLy5mZXJtYXRhLnYxLkNvbXBhcmVQcm9kdWN0aW9uVHJhY2VSZXBsYXlSZXF1ZXN0GjAuZmVybWF0YS52MS5Db21wYXJlUHJvZHVjdGlvblRyYWNlUmVwbGF5UmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQShgEKEFByZXZpZXdBc3NlcnRpb24SIy5mZXJtYXRhLnYxLlByZXZpZXdBc3NlcnRpb25SZXF1ZXN0GiQuZmVybWF0YS52MS5QcmV2aWV3QXNzZXJ0aW9uUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKqAQocUHJldmlld1NjZW5hcmlvUnVuQXNzZXJ0aW9ucxIvLmZlcm1hdGEudjEuUHJldmlld1NjZW5hcmlvUnVuQXNzZXJ0aW9uc1JlcXVlc3QaMC5mZXJtYXRhLnYxLlByZXZpZXdTY2VuYXJpb1J1bkFzc2VydGlvbnNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEqsBChxQcm9tb3RlRXZhbHVhdGlvblRvR3VhcmRyYWlsEi8uZmVybWF0YS52MS5Qcm9tb3RlRXZhbHVhdGlvblRvR3VhcmRyYWlsUmVxdWVzdBowLmZlcm1hdGEudjEuUHJvbW90ZUV2YWx1YXRpb25Ub0d1YXJkcmFpbFJlc3BvbnNlIijK8xgNZmVybWF0YTp3cml0ZdjzGAPq8xgPb3JnYW5pemF0aW9uX2lkEpUBChVHZXRHdWFyZHJhaWxQcm9tb3Rpb24SKC5mZXJtYXRhLnYxLkdldEd1YXJkcmFpbFByb21vdGlvblJlcXVlc3QaKS5mZXJtYXRhLnYxLkdldEd1YXJkcmFpbFByb21vdGlvblJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSnAEKF1Njb3JlR3VhcmRyYWlsUHJvbW90aW9uEiouZmVybWF0YS52MS5TY29yZUd1YXJkcmFpbFByb21vdGlvblJlcXVlc3QaKy5mZXJtYXRhLnYxLlNjb3JlR3VhcmRyYWlsUHJvbW90aW9uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSjAEKEkV4cGxhaW5TY2VuYXJpb1J1bhIlLmZlcm1hdGEudjEuRXhwbGFpblNjZW5hcmlvUnVuUmVxdWVzdBomLmZlcm1hdGEudjEuRXhwbGFpblNjZW5hcmlvUnVuUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKnAQobQW5hbHl6ZVNjZW5hcmlvUnVuUm9vdENhdXNlEi4uZmVybWF0YS52MS5BbmFseXplU2NlbmFyaW9SdW5Sb290Q2F1c2VSZXF1ZXN0Gi8uZmVybWF0YS52MS5BbmFseXplU2NlbmFyaW9SdW5Sb290Q2F1c2VSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGALq8xgPb3JnYW5pemF0aW9uX2lkEqQBChpHZXRKdWRnZVZhbGlkYXRpb25BY2N1cmFjeRItLmZlcm1hdGEudjEuR2V0SnVkZ2VWYWxpZGF0aW9uQWNjdXJhY3lSZXF1ZXN0Gi4uZmVybWF0YS52MS5HZXRKdWRnZVZhbGlkYXRpb25BY2N1cmFjeVJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSuQEKIUdldEp1ZGdlVmFsaWRhdGlvbkNvbmZ1c2lvbk1hdHJpeBI0LmZlcm1hdGEudjEuR2V0SnVkZ2VWYWxpZGF0aW9uQ29uZnVzaW9uTWF0cml4UmVxdWVzdBo1LmZlcm1hdGEudjEuR2V0SnVkZ2VWYWxpZGF0aW9uQ29uZnVzaW9uTWF0cml4UmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKYAQoWR2V0SnVkZ2VWYWxpZGF0aW9uQmlhcxIpLmZlcm1hdGEudjEuR2V0SnVkZ2VWYWxpZGF0aW9uQmlhc1JlcXVlc3QaKi5mZXJtYXRhLnYxLkdldEp1ZGdlVmFsaWRhdGlvbkJpYXNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEqEBChlHZXRKdWRnZUNhbGlicmF0aW9uUmVwb3J0EiwuZmVybWF0YS52MS5HZXRKdWRnZUNhbGlicmF0aW9uUmVwb3J0UmVxdWVzdBotLmZlcm1hdGEudjEuR2V0SnVkZ2VDYWxpYnJhdGlvblJlcG9ydFJlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSpQEKGlJlY2FsaWJyYXRlSnVkZ2VWYWxpZGF0aW9uEi0uZmVybWF0YS52MS5SZWNhbGlicmF0ZUp1ZGdlVmFsaWRhdGlvblJlcXVlc3QaLi5mZXJtYXRhLnYxLlJlY2FsaWJyYXRlSnVkZ2VWYWxpZGF0aW9uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQStAEKH1JlY29yZEp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb24SMi5mZXJtYXRhLnYxLlJlY29yZEp1ZGdlVmFsaWRhdGlvbkV2YWx1YXRpb25SZXF1ZXN0GjMuZmVybWF0YS52MS5SZWNvcmRKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSugEKIVZhbGlkYXRlSnVkZ2VWYWxpZGF0aW9uRXZhbHVhdGlvbhI0LmZlcm1hdGEudjEuVmFsaWRhdGVKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVxdWVzdBo1LmZlcm1hdGEudjEuVmFsaWRhdGVKdWRnZVZhbGlkYXRpb25FdmFsdWF0aW9uUmVzcG9uc2UiKMrzGA1mZXJtYXRhOndyaXRl2PMYAurzGA9vcmdhbml6YXRpb25faWQSsAEKHkxpc3RKdWRnZUNhbGlicmF0aW9uQ2FuZGlkYXRlcxIxLmZlcm1hdGEudjEuTGlzdEp1ZGdlQ2FsaWJyYXRpb25DYW5kaWRhdGVzUmVxdWVzdBoyLmZlcm1hdGEudjEuTGlzdEp1ZGdlQ2FsaWJyYXRpb25DYW5kaWRhdGVzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKFAQoaRXZhbHVhdGVQdWJsaWNGZWF0dXJlRmxhZ3MSLS5mZXJtYXRhLnYxLkV2YWx1YXRlUHVibGljRmVhdHVyZUZsYWdzUmVxdWVzdBouLmZlcm1hdGEudjEuRXZhbHVhdGVQdWJsaWNGZWF0dXJlRmxhZ3NSZXNwb25zZSII2PMYAeDzGAESbQoSR2V0TWlncmF0aW9uU3RhdHVzEiUuZmVybWF0YS52MS5HZXRNaWdyYXRpb25TdGF0dXNSZXF1ZXN0GiYuZmVybWF0YS52MS5HZXRNaWdyYXRpb25TdGF0dXNSZXNwb25zZSII2PMYAeDzGAEygBAKGUZlcm1hdGFRdWFsaXR5R2F0ZVNlcnZpY2UShQEKFkdldFF1YWxpdHlHYXRlRGVmYXVsdHMSKS5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlRGVmYXVsdHNSZXF1ZXN0GiouZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZURlZmF1bHRzUmVzcG9uc2UiFMrzGAxmZXJtYXRhOnJlYWTY8xgBEpgBChZMaXN0UXVhbGl0eUdhdGVDb25maWdzEikuZmVybWF0YS52MS5MaXN0UXVhbGl0eUdhdGVDb25maWdzUmVxdWVzdBoqLmZlcm1hdGEudjEuTGlzdFF1YWxpdHlHYXRlQ29uZmlnc1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSkgEKFEdldFF1YWxpdHlHYXRlQ29uZmlnEicuZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZUNvbmZpZ1JlcXVlc3QaKC5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlQ29uZmlnUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKcAQoXVXBzZXJ0UXVhbGl0eUdhdGVDb25maWcSKi5mZXJtYXRhLnYxLlVwc2VydFF1YWxpdHlHYXRlQ29uZmlnUmVxdWVzdBorLmZlcm1hdGEudjEuVXBzZXJ0UXVhbGl0eUdhdGVDb25maWdSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKZAQoWUmVzZXRRdWFsaXR5R2F0ZUNvbmZpZxIpLmZlcm1hdGEudjEuUmVzZXRRdWFsaXR5R2F0ZUNvbmZpZ1JlcXVlc3QaKi5mZXJtYXRhLnYxLlJlc2V0UXVhbGl0eUdhdGVDb25maWdSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKQAQoTRXZhbHVhdGVRdWFsaXR5R2F0ZRImLmZlcm1hdGEudjEuRXZhbHVhdGVRdWFsaXR5R2F0ZVJlcXVlc3QaJy5mZXJtYXRhLnYxLkV2YWx1YXRlUXVhbGl0eUdhdGVSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKiAQoZQmF0Y2hFdmFsdWF0ZVF1YWxpdHlHYXRlcxIsLmZlcm1hdGEudjEuQmF0Y2hFdmFsdWF0ZVF1YWxpdHlHYXRlc1JlcXVlc3QaLS5mZXJtYXRhLnYxLkJhdGNoRXZhbHVhdGVRdWFsaXR5R2F0ZXNSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZBKeAQoYR2V0UXVhbGl0eUdhdGVFdmFsdWF0aW9uEisuZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZUV2YWx1YXRpb25SZXF1ZXN0GiwuZmVybWF0YS52MS5HZXRRdWFsaXR5R2F0ZUV2YWx1YXRpb25SZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEpgBChZMaXN0UXVhbGl0eUdhdGVSZXN1bHRzEikuZmVybWF0YS52MS5MaXN0UXVhbGl0eUdhdGVSZXN1bHRzUmVxdWVzdBoqLmZlcm1hdGEudjEuTGlzdFF1YWxpdHlHYXRlUmVzdWx0c1Jlc3BvbnNlIifK8xgMZmVybWF0YTpyZWFk2PMYAerzGA9vcmdhbml6YXRpb25faWQSlQEKFUdldFF1YWxpdHlHYXRlTWV0cmljcxIoLmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVNZXRyaWNzUmVxdWVzdBopLmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVNZXRyaWNzUmVzcG9uc2UiJ8rzGAxmZXJtYXRhOnJlYWTY8xgB6vMYD29yZ2FuaXphdGlvbl9pZBKPAQoTR2V0UXVhbGl0eUdhdGVTdGF0cxImLmZlcm1hdGEudjEuR2V0UXVhbGl0eUdhdGVTdGF0c1JlcXVlc3QaJy5mZXJtYXRhLnYxLkdldFF1YWxpdHlHYXRlU3RhdHNSZXNwb25zZSInyvMYDGZlcm1hdGE6cmVhZNjzGAHq8xgPb3JnYW5pemF0aW9uX2lkEo4BChlWYWxpZGF0ZVF1YWxpdHlHYXRlQ29uZmlnEiwuZmVybWF0YS52MS5WYWxpZGF0ZVF1YWxpdHlHYXRlQ29uZmlnUmVxdWVzdBotLmZlcm1hdGEudjEuVmFsaWRhdGVRdWFsaXR5R2F0ZUNvbmZpZ1Jlc3BvbnNlIhTK8xgMZmVybWF0YTpyZWFk2PMYARLAAQojRXZhbHVhdGVRdWFsaXR5R2F0ZVJlZ3Jlc3Npb25CdWRnZXQSNi5mZXJtYXRhLnYxLkV2YWx1YXRlUXVhbGl0eUdhdGVSZWdyZXNzaW9uQnVkZ2V0UmVxdWVzdBo3LmZlcm1hdGEudjEuRXZhbHVhdGVRdWFsaXR5R2F0ZVJlZ3Jlc3Npb25CdWRnZXRSZXNwb25zZSIoyvMYDWZlcm1hdGE6d3JpdGXY8xgC6vMYD29yZ2FuaXphdGlvbl9pZEI5WjdnaXRodWIuY29tL2V2YWxvcHMvcGxhdGZvcm0vZ2VuL2dvL2Zlcm1hdGEvdjE7ZmVybWF0YXYxYgZwcm90bzM", [file_buf_validate_validate, file_common_v1_analytics, file_common_v1_authz, file_common_v1_risk, file_google_protobuf_duration, file_google_protobuf_struct, file_google_protobuf_timestamp, file_traces_v1_traces]);
|
|
15
15
|
/**
|
|
16
16
|
* Describes the message fermata.v1.LLMRubricAssertion.
|
|
17
17
|
* Use `create(LLMRubricAssertionSchema)` to create a new message.
|
|
18
18
|
*/
|
|
19
19
|
export const LLMRubricAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 0);
|
|
20
|
+
/**
|
|
21
|
+
* Describes the message fermata.v1.LLMPairwiseRubricAssertion.
|
|
22
|
+
* Use `create(LLMPairwiseRubricAssertionSchema)` to create a new message.
|
|
23
|
+
*/
|
|
24
|
+
export const LLMPairwiseRubricAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 1);
|
|
25
|
+
/**
|
|
26
|
+
* Describes the message fermata.v1.AgentTrajectoryStatusExpectation.
|
|
27
|
+
* Use `create(AgentTrajectoryStatusExpectationSchema)` to create a new message.
|
|
28
|
+
*/
|
|
29
|
+
export const AgentTrajectoryStatusExpectationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 2);
|
|
30
|
+
/**
|
|
31
|
+
* Describes the message fermata.v1.AgentTrajectoryStateExpectation.
|
|
32
|
+
* Use `create(AgentTrajectoryStateExpectationSchema)` to create a new message.
|
|
33
|
+
*/
|
|
34
|
+
export const AgentTrajectoryStateExpectationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 3);
|
|
35
|
+
/**
|
|
36
|
+
* Describes the message fermata.v1.AgentTrajectoryAssertion.
|
|
37
|
+
* Use `create(AgentTrajectoryAssertionSchema)` to create a new message.
|
|
38
|
+
*/
|
|
39
|
+
export const AgentTrajectoryAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 4);
|
|
20
40
|
/**
|
|
21
41
|
* Describes the message fermata.v1.TestSuite.
|
|
22
42
|
* Use `create(TestSuiteSchema)` to create a new message.
|
|
23
43
|
*/
|
|
24
|
-
export const TestSuiteSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
44
|
+
export const TestSuiteSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 5);
|
|
25
45
|
/**
|
|
26
46
|
* Describes the message fermata.v1.TestCase.
|
|
27
47
|
* Use `create(TestCaseSchema)` to create a new message.
|
|
28
48
|
*/
|
|
29
|
-
export const TestCaseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
49
|
+
export const TestCaseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 6);
|
|
30
50
|
/**
|
|
31
51
|
* Describes the message fermata.v1.Assertion.
|
|
32
52
|
* Use `create(AssertionSchema)` to create a new message.
|
|
33
53
|
*/
|
|
34
|
-
export const AssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
54
|
+
export const AssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 7);
|
|
35
55
|
/**
|
|
36
56
|
* Describes the message fermata.v1.PreviewAssertionRequest.
|
|
37
57
|
* Use `create(PreviewAssertionRequestSchema)` to create a new message.
|
|
38
58
|
*/
|
|
39
|
-
export const PreviewAssertionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
59
|
+
export const PreviewAssertionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 8);
|
|
40
60
|
/**
|
|
41
61
|
* Describes the message fermata.v1.PreviewAssertionResponse.
|
|
42
62
|
* Use `create(PreviewAssertionResponseSchema)` to create a new message.
|
|
43
63
|
*/
|
|
44
|
-
export const PreviewAssertionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
64
|
+
export const PreviewAssertionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 9);
|
|
45
65
|
/**
|
|
46
66
|
* Describes the message fermata.v1.PreviewScenarioRunAssertionsRequest.
|
|
47
67
|
* Use `create(PreviewScenarioRunAssertionsRequestSchema)` to create a new message.
|
|
48
68
|
*/
|
|
49
|
-
export const PreviewScenarioRunAssertionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
69
|
+
export const PreviewScenarioRunAssertionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 10);
|
|
50
70
|
/**
|
|
51
71
|
* Describes the message fermata.v1.PreviewScenarioRunAssertionsResponse.
|
|
52
72
|
* Use `create(PreviewScenarioRunAssertionsResponseSchema)` to create a new message.
|
|
53
73
|
*/
|
|
54
|
-
export const PreviewScenarioRunAssertionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
74
|
+
export const PreviewScenarioRunAssertionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 11);
|
|
55
75
|
/**
|
|
56
76
|
* Describes the message fermata.v1.CustomEvaluator.
|
|
57
77
|
* Use `create(CustomEvaluatorSchema)` to create a new message.
|
|
58
78
|
*/
|
|
59
|
-
export const CustomEvaluatorSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
79
|
+
export const CustomEvaluatorSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 12);
|
|
60
80
|
/**
|
|
61
81
|
* Describes the message fermata.v1.Judge.
|
|
62
82
|
* Use `create(JudgeSchema)` to create a new message.
|
|
63
83
|
*/
|
|
64
|
-
export const JudgeSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
84
|
+
export const JudgeSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 13);
|
|
65
85
|
/**
|
|
66
86
|
* Describes the message fermata.v1.Scenario.
|
|
67
87
|
* Use `create(ScenarioSchema)` to create a new message.
|
|
68
88
|
*/
|
|
69
|
-
export const ScenarioSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
89
|
+
export const ScenarioSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 14);
|
|
70
90
|
/**
|
|
71
91
|
* Describes the message fermata.v1.Objective.
|
|
72
92
|
* Use `create(ObjectiveSchema)` to create a new message.
|
|
73
93
|
*/
|
|
74
|
-
export const ObjectiveSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
94
|
+
export const ObjectiveSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 15);
|
|
75
95
|
/**
|
|
76
96
|
* Describes the message fermata.v1.SuccessCriterion.
|
|
77
97
|
* Use `create(SuccessCriterionSchema)` to create a new message.
|
|
78
98
|
*/
|
|
79
|
-
export const SuccessCriterionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
99
|
+
export const SuccessCriterionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 16);
|
|
80
100
|
/**
|
|
81
101
|
* Describes the message fermata.v1.AgentConfig.
|
|
82
102
|
* Use `create(AgentConfigSchema)` to create a new message.
|
|
83
103
|
*/
|
|
84
|
-
export const AgentConfigSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
104
|
+
export const AgentConfigSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 17);
|
|
85
105
|
/**
|
|
86
106
|
* Describes the message fermata.v1.ScenarioEnvironment.
|
|
87
107
|
* Use `create(ScenarioEnvironmentSchema)` to create a new message.
|
|
88
108
|
*/
|
|
89
|
-
export const ScenarioEnvironmentSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
109
|
+
export const ScenarioEnvironmentSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 18);
|
|
90
110
|
/**
|
|
91
111
|
* Describes the message fermata.v1.MockTool.
|
|
92
112
|
* Use `create(MockToolSchema)` to create a new message.
|
|
93
113
|
*/
|
|
94
|
-
export const MockToolSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
114
|
+
export const MockToolSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 19);
|
|
95
115
|
/**
|
|
96
116
|
* Describes the message fermata.v1.MockEndpoint.
|
|
97
117
|
* Use `create(MockEndpointSchema)` to create a new message.
|
|
98
118
|
*/
|
|
99
|
-
export const MockEndpointSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
119
|
+
export const MockEndpointSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 20);
|
|
100
120
|
/**
|
|
101
121
|
* Describes the message fermata.v1.UserSimulator.
|
|
102
122
|
* Use `create(UserSimulatorSchema)` to create a new message.
|
|
103
123
|
*/
|
|
104
|
-
export const UserSimulatorSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
124
|
+
export const UserSimulatorSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 21);
|
|
105
125
|
/**
|
|
106
126
|
* Describes the message fermata.v1.OutcomeCriterion.
|
|
107
127
|
* Use `create(OutcomeCriterionSchema)` to create a new message.
|
|
108
128
|
*/
|
|
109
|
-
export const OutcomeCriterionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
129
|
+
export const OutcomeCriterionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 22);
|
|
110
130
|
/**
|
|
111
131
|
* Describes the message fermata.v1.GovernanceAssertion.
|
|
112
132
|
* Use `create(GovernanceAssertionSchema)` to create a new message.
|
|
113
133
|
*/
|
|
114
|
-
export const GovernanceAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
134
|
+
export const GovernanceAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 23);
|
|
115
135
|
/**
|
|
116
136
|
* Describes the message fermata.v1.DelegationAssertion.
|
|
117
137
|
* Use `create(DelegationAssertionSchema)` to create a new message.
|
|
118
138
|
*/
|
|
119
|
-
export const DelegationAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
139
|
+
export const DelegationAssertionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 24);
|
|
120
140
|
/**
|
|
121
141
|
* Describes the message fermata.v1.ScenarioRun.
|
|
122
142
|
* Use `create(ScenarioRunSchema)` to create a new message.
|
|
123
143
|
*/
|
|
124
|
-
export const ScenarioRunSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
144
|
+
export const ScenarioRunSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 25);
|
|
125
145
|
/**
|
|
126
146
|
* Describes the message fermata.v1.ScenarioResult.
|
|
127
147
|
* Use `create(ScenarioResultSchema)` to create a new message.
|
|
128
148
|
*/
|
|
129
|
-
export const ScenarioResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
149
|
+
export const ScenarioResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 26);
|
|
130
150
|
/**
|
|
131
151
|
* Describes the message fermata.v1.ScenarioAssertionResult.
|
|
132
152
|
* Use `create(ScenarioAssertionResultSchema)` to create a new message.
|
|
133
153
|
*/
|
|
134
|
-
export const ScenarioAssertionResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
154
|
+
export const ScenarioAssertionResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 27);
|
|
135
155
|
/**
|
|
136
156
|
* Describes the message fermata.v1.GovernanceScore.
|
|
137
157
|
* Use `create(GovernanceScoreSchema)` to create a new message.
|
|
138
158
|
*/
|
|
139
|
-
export const GovernanceScoreSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
159
|
+
export const GovernanceScoreSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 28);
|
|
140
160
|
/**
|
|
141
161
|
* Describes the message fermata.v1.EconomicScore.
|
|
142
162
|
* Use `create(EconomicScoreSchema)` to create a new message.
|
|
143
163
|
*/
|
|
144
|
-
export const EconomicScoreSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
164
|
+
export const EconomicScoreSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 29);
|
|
145
165
|
/**
|
|
146
166
|
* Describes the message fermata.v1.DelegationScore.
|
|
147
167
|
* Use `create(DelegationScoreSchema)` to create a new message.
|
|
148
168
|
*/
|
|
149
|
-
export const DelegationScoreSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
169
|
+
export const DelegationScoreSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 30);
|
|
150
170
|
/**
|
|
151
171
|
* Describes the message fermata.v1.DriftComparison.
|
|
152
172
|
* Use `create(DriftComparisonSchema)` to create a new message.
|
|
153
173
|
*/
|
|
154
|
-
export const DriftComparisonSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
174
|
+
export const DriftComparisonSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 31);
|
|
155
175
|
/**
|
|
156
176
|
* Describes the message fermata.v1.CreateTestSuiteRequest.
|
|
157
177
|
* Use `create(CreateTestSuiteRequestSchema)` to create a new message.
|
|
158
178
|
*/
|
|
159
|
-
export const CreateTestSuiteRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
179
|
+
export const CreateTestSuiteRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 32);
|
|
160
180
|
/**
|
|
161
181
|
* Describes the message fermata.v1.CreateTestSuiteResponse.
|
|
162
182
|
* Use `create(CreateTestSuiteResponseSchema)` to create a new message.
|
|
163
183
|
*/
|
|
164
|
-
export const CreateTestSuiteResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
184
|
+
export const CreateTestSuiteResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 33);
|
|
165
185
|
/**
|
|
166
186
|
* Describes the message fermata.v1.GetTestSuiteRequest.
|
|
167
187
|
* Use `create(GetTestSuiteRequestSchema)` to create a new message.
|
|
168
188
|
*/
|
|
169
|
-
export const GetTestSuiteRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
189
|
+
export const GetTestSuiteRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 34);
|
|
170
190
|
/**
|
|
171
191
|
* Describes the message fermata.v1.GetTestSuiteResponse.
|
|
172
192
|
* Use `create(GetTestSuiteResponseSchema)` to create a new message.
|
|
173
193
|
*/
|
|
174
|
-
export const GetTestSuiteResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
194
|
+
export const GetTestSuiteResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 35);
|
|
175
195
|
/**
|
|
176
196
|
* Describes the message fermata.v1.ListTestSuitesRequest.
|
|
177
197
|
* Use `create(ListTestSuitesRequestSchema)` to create a new message.
|
|
178
198
|
*/
|
|
179
|
-
export const ListTestSuitesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
199
|
+
export const ListTestSuitesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 36);
|
|
180
200
|
/**
|
|
181
201
|
* Describes the message fermata.v1.ListTestSuitesResponse.
|
|
182
202
|
* Use `create(ListTestSuitesResponseSchema)` to create a new message.
|
|
183
203
|
*/
|
|
184
|
-
export const ListTestSuitesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
204
|
+
export const ListTestSuitesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 37);
|
|
205
|
+
/**
|
|
206
|
+
* Describes the message fermata.v1.EvaluationPackJudgeContract.
|
|
207
|
+
* Use `create(EvaluationPackJudgeContractSchema)` to create a new message.
|
|
208
|
+
*/
|
|
209
|
+
export const EvaluationPackJudgeContractSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 38);
|
|
210
|
+
/**
|
|
211
|
+
* Describes the message fermata.v1.ProductionTracePromotionPolicy.
|
|
212
|
+
* Use `create(ProductionTracePromotionPolicySchema)` to create a new message.
|
|
213
|
+
*/
|
|
214
|
+
export const ProductionTracePromotionPolicySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 39);
|
|
215
|
+
/**
|
|
216
|
+
* Describes the message fermata.v1.EvaluationPack.
|
|
217
|
+
* Use `create(EvaluationPackSchema)` to create a new message.
|
|
218
|
+
*/
|
|
219
|
+
export const EvaluationPackSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 40);
|
|
220
|
+
/**
|
|
221
|
+
* Describes the message fermata.v1.ListEvaluationPacksRequest.
|
|
222
|
+
* Use `create(ListEvaluationPacksRequestSchema)` to create a new message.
|
|
223
|
+
*/
|
|
224
|
+
export const ListEvaluationPacksRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 41);
|
|
225
|
+
/**
|
|
226
|
+
* Describes the message fermata.v1.ListEvaluationPacksResponse.
|
|
227
|
+
* Use `create(ListEvaluationPacksResponseSchema)` to create a new message.
|
|
228
|
+
*/
|
|
229
|
+
export const ListEvaluationPacksResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 42);
|
|
230
|
+
/**
|
|
231
|
+
* Describes the message fermata.v1.BuildEvaluationPackRequest.
|
|
232
|
+
* Use `create(BuildEvaluationPackRequestSchema)` to create a new message.
|
|
233
|
+
*/
|
|
234
|
+
export const BuildEvaluationPackRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 43);
|
|
235
|
+
/**
|
|
236
|
+
* Describes the message fermata.v1.BuildEvaluationPackResponse.
|
|
237
|
+
* Use `create(BuildEvaluationPackResponseSchema)` to create a new message.
|
|
238
|
+
*/
|
|
239
|
+
export const BuildEvaluationPackResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 44);
|
|
185
240
|
/**
|
|
186
241
|
* Describes the message fermata.v1.CreateScenarioRequest.
|
|
187
242
|
* Use `create(CreateScenarioRequestSchema)` to create a new message.
|
|
188
243
|
*/
|
|
189
|
-
export const CreateScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
244
|
+
export const CreateScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 45);
|
|
190
245
|
/**
|
|
191
246
|
* Describes the message fermata.v1.CreateScenarioResponse.
|
|
192
247
|
* Use `create(CreateScenarioResponseSchema)` to create a new message.
|
|
193
248
|
*/
|
|
194
|
-
export const CreateScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
249
|
+
export const CreateScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 46);
|
|
195
250
|
/**
|
|
196
251
|
* Describes the message fermata.v1.GetScenarioRequest.
|
|
197
252
|
* Use `create(GetScenarioRequestSchema)` to create a new message.
|
|
198
253
|
*/
|
|
199
|
-
export const GetScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
254
|
+
export const GetScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 47);
|
|
200
255
|
/**
|
|
201
256
|
* Describes the message fermata.v1.GetScenarioResponse.
|
|
202
257
|
* Use `create(GetScenarioResponseSchema)` to create a new message.
|
|
203
258
|
*/
|
|
204
|
-
export const GetScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
259
|
+
export const GetScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 48);
|
|
205
260
|
/**
|
|
206
261
|
* Describes the message fermata.v1.ListScenariosRequest.
|
|
207
262
|
* Use `create(ListScenariosRequestSchema)` to create a new message.
|
|
208
263
|
*/
|
|
209
|
-
export const ListScenariosRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
264
|
+
export const ListScenariosRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 49);
|
|
210
265
|
/**
|
|
211
266
|
* Describes the message fermata.v1.ListScenariosResponse.
|
|
212
267
|
* Use `create(ListScenariosResponseSchema)` to create a new message.
|
|
213
268
|
*/
|
|
214
|
-
export const ListScenariosResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
269
|
+
export const ListScenariosResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 50);
|
|
215
270
|
/**
|
|
216
271
|
* Describes the message fermata.v1.AgentTaskEvalSpec.
|
|
217
272
|
* Use `create(AgentTaskEvalSpecSchema)` to create a new message.
|
|
218
273
|
*/
|
|
219
|
-
export const AgentTaskEvalSpecSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
274
|
+
export const AgentTaskEvalSpecSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 51);
|
|
220
275
|
/**
|
|
221
276
|
* Describes the message fermata.v1.CreateAgentTaskEvalRequest.
|
|
222
277
|
* Use `create(CreateAgentTaskEvalRequestSchema)` to create a new message.
|
|
223
278
|
*/
|
|
224
|
-
export const CreateAgentTaskEvalRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
279
|
+
export const CreateAgentTaskEvalRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 52);
|
|
225
280
|
/**
|
|
226
281
|
* Describes the message fermata.v1.CreateAgentTaskEvalResponse.
|
|
227
282
|
* Use `create(CreateAgentTaskEvalResponseSchema)` to create a new message.
|
|
228
283
|
*/
|
|
229
|
-
export const CreateAgentTaskEvalResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
284
|
+
export const CreateAgentTaskEvalResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 53);
|
|
230
285
|
/**
|
|
231
286
|
* Describes the message fermata.v1.RunAgentTaskEvalRequest.
|
|
232
287
|
* Use `create(RunAgentTaskEvalRequestSchema)` to create a new message.
|
|
233
288
|
*/
|
|
234
|
-
export const RunAgentTaskEvalRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
289
|
+
export const RunAgentTaskEvalRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 54);
|
|
235
290
|
/**
|
|
236
291
|
* Describes the message fermata.v1.RunAgentTaskEvalResponse.
|
|
237
292
|
* Use `create(RunAgentTaskEvalResponseSchema)` to create a new message.
|
|
238
293
|
*/
|
|
239
|
-
export const RunAgentTaskEvalResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
294
|
+
export const RunAgentTaskEvalResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 55);
|
|
240
295
|
/**
|
|
241
296
|
* Describes the message fermata.v1.AgentToolCatalogItem.
|
|
242
297
|
* Use `create(AgentToolCatalogItemSchema)` to create a new message.
|
|
243
298
|
*/
|
|
244
|
-
export const AgentToolCatalogItemSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
299
|
+
export const AgentToolCatalogItemSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 56);
|
|
245
300
|
/**
|
|
246
301
|
* Describes the message fermata.v1.AgentToolCatalogSummary.
|
|
247
302
|
* Use `create(AgentToolCatalogSummarySchema)` to create a new message.
|
|
248
303
|
*/
|
|
249
|
-
export const AgentToolCatalogSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
304
|
+
export const AgentToolCatalogSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 57);
|
|
250
305
|
/**
|
|
251
306
|
* Describes the message fermata.v1.AgentWorkflow.
|
|
252
307
|
* Use `create(AgentWorkflowSchema)` to create a new message.
|
|
253
308
|
*/
|
|
254
|
-
export const AgentWorkflowSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
309
|
+
export const AgentWorkflowSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 58);
|
|
255
310
|
/**
|
|
256
311
|
* Describes the message fermata.v1.AgentWorkflowStep.
|
|
257
312
|
* Use `create(AgentWorkflowStepSchema)` to create a new message.
|
|
258
313
|
*/
|
|
259
|
-
export const AgentWorkflowStepSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
314
|
+
export const AgentWorkflowStepSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 59);
|
|
260
315
|
/**
|
|
261
316
|
* Describes the message fermata.v1.AgentWorkflowIO.
|
|
262
317
|
* Use `create(AgentWorkflowIOSchema)` to create a new message.
|
|
263
318
|
*/
|
|
264
|
-
export const AgentWorkflowIOSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
319
|
+
export const AgentWorkflowIOSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 60);
|
|
265
320
|
/**
|
|
266
321
|
* Describes the message fermata.v1.AgentWorkflowTemplate.
|
|
267
322
|
* Use `create(AgentWorkflowTemplateSchema)` to create a new message.
|
|
268
323
|
*/
|
|
269
|
-
export const AgentWorkflowTemplateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
324
|
+
export const AgentWorkflowTemplateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 61);
|
|
270
325
|
/**
|
|
271
326
|
* Describes the message fermata.v1.AgentRuntimeRecord.
|
|
272
327
|
* Use `create(AgentRuntimeRecordSchema)` to create a new message.
|
|
273
328
|
*/
|
|
274
|
-
export const AgentRuntimeRecordSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
329
|
+
export const AgentRuntimeRecordSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 62);
|
|
275
330
|
/**
|
|
276
331
|
* Describes the message fermata.v1.AgentTimelineSummary.
|
|
277
332
|
* Use `create(AgentTimelineSummarySchema)` to create a new message.
|
|
278
333
|
*/
|
|
279
|
-
export const AgentTimelineSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
334
|
+
export const AgentTimelineSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 63);
|
|
280
335
|
/**
|
|
281
336
|
* Describes the message fermata.v1.ListAgentToolsRequest.
|
|
282
337
|
* Use `create(ListAgentToolsRequestSchema)` to create a new message.
|
|
283
338
|
*/
|
|
284
|
-
export const ListAgentToolsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
339
|
+
export const ListAgentToolsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 64);
|
|
285
340
|
/**
|
|
286
341
|
* Describes the message fermata.v1.ListAgentToolsResponse.
|
|
287
342
|
* Use `create(ListAgentToolsResponseSchema)` to create a new message.
|
|
288
343
|
*/
|
|
289
|
-
export const ListAgentToolsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
344
|
+
export const ListAgentToolsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 65);
|
|
290
345
|
/**
|
|
291
346
|
* Describes the message fermata.v1.AnalyzeAgentActionsRequest.
|
|
292
347
|
* Use `create(AnalyzeAgentActionsRequestSchema)` to create a new message.
|
|
293
348
|
*/
|
|
294
|
-
export const AnalyzeAgentActionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
349
|
+
export const AnalyzeAgentActionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 66);
|
|
295
350
|
/**
|
|
296
351
|
* Describes the message fermata.v1.AnalyzeAgentActionsResponse.
|
|
297
352
|
* Use `create(AnalyzeAgentActionsResponseSchema)` to create a new message.
|
|
298
353
|
*/
|
|
299
|
-
export const AnalyzeAgentActionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
354
|
+
export const AnalyzeAgentActionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 67);
|
|
300
355
|
/**
|
|
301
356
|
* Describes the message fermata.v1.BuildAgentSessionTimelineRequest.
|
|
302
357
|
* Use `create(BuildAgentSessionTimelineRequestSchema)` to create a new message.
|
|
303
358
|
*/
|
|
304
|
-
export const BuildAgentSessionTimelineRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
359
|
+
export const BuildAgentSessionTimelineRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 68);
|
|
305
360
|
/**
|
|
306
361
|
* Describes the message fermata.v1.BuildAgentSessionTimelineResponse.
|
|
307
362
|
* Use `create(BuildAgentSessionTimelineResponseSchema)` to create a new message.
|
|
308
363
|
*/
|
|
309
|
-
export const BuildAgentSessionTimelineResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
364
|
+
export const BuildAgentSessionTimelineResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 69);
|
|
310
365
|
/**
|
|
311
366
|
* Describes the message fermata.v1.ListAgentWorkflowTemplatesRequest.
|
|
312
367
|
* Use `create(ListAgentWorkflowTemplatesRequestSchema)` to create a new message.
|
|
313
368
|
*/
|
|
314
|
-
export const ListAgentWorkflowTemplatesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
369
|
+
export const ListAgentWorkflowTemplatesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 70);
|
|
315
370
|
/**
|
|
316
371
|
* Describes the message fermata.v1.ListAgentWorkflowTemplatesResponse.
|
|
317
372
|
* Use `create(ListAgentWorkflowTemplatesResponseSchema)` to create a new message.
|
|
318
373
|
*/
|
|
319
|
-
export const ListAgentWorkflowTemplatesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
374
|
+
export const ListAgentWorkflowTemplatesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 71);
|
|
320
375
|
/**
|
|
321
376
|
* Describes the message fermata.v1.CreateAgentWorkflowFromTemplateRequest.
|
|
322
377
|
* Use `create(CreateAgentWorkflowFromTemplateRequestSchema)` to create a new message.
|
|
323
378
|
*/
|
|
324
|
-
export const CreateAgentWorkflowFromTemplateRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
379
|
+
export const CreateAgentWorkflowFromTemplateRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 72);
|
|
325
380
|
/**
|
|
326
381
|
* Describes the message fermata.v1.CreateAgentWorkflowFromTemplateResponse.
|
|
327
382
|
* Use `create(CreateAgentWorkflowFromTemplateResponseSchema)` to create a new message.
|
|
328
383
|
*/
|
|
329
|
-
export const CreateAgentWorkflowFromTemplateResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
384
|
+
export const CreateAgentWorkflowFromTemplateResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 73);
|
|
330
385
|
/**
|
|
331
386
|
* Describes the message fermata.v1.CreateAgentWorkflowRequest.
|
|
332
387
|
* Use `create(CreateAgentWorkflowRequestSchema)` to create a new message.
|
|
333
388
|
*/
|
|
334
|
-
export const CreateAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
389
|
+
export const CreateAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 74);
|
|
335
390
|
/**
|
|
336
391
|
* Describes the message fermata.v1.CreateAgentWorkflowResponse.
|
|
337
392
|
* Use `create(CreateAgentWorkflowResponseSchema)` to create a new message.
|
|
338
393
|
*/
|
|
339
|
-
export const CreateAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
394
|
+
export const CreateAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 75);
|
|
340
395
|
/**
|
|
341
396
|
* Describes the message fermata.v1.GetAgentWorkflowRequest.
|
|
342
397
|
* Use `create(GetAgentWorkflowRequestSchema)` to create a new message.
|
|
343
398
|
*/
|
|
344
|
-
export const GetAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
399
|
+
export const GetAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 76);
|
|
345
400
|
/**
|
|
346
401
|
* Describes the message fermata.v1.GetAgentWorkflowResponse.
|
|
347
402
|
* Use `create(GetAgentWorkflowResponseSchema)` to create a new message.
|
|
348
403
|
*/
|
|
349
|
-
export const GetAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
404
|
+
export const GetAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 77);
|
|
350
405
|
/**
|
|
351
406
|
* Describes the message fermata.v1.ListAgentWorkflowsRequest.
|
|
352
407
|
* Use `create(ListAgentWorkflowsRequestSchema)` to create a new message.
|
|
353
408
|
*/
|
|
354
|
-
export const ListAgentWorkflowsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
409
|
+
export const ListAgentWorkflowsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 78);
|
|
355
410
|
/**
|
|
356
411
|
* Describes the message fermata.v1.ListAgentWorkflowsResponse.
|
|
357
412
|
* Use `create(ListAgentWorkflowsResponseSchema)` to create a new message.
|
|
358
413
|
*/
|
|
359
|
-
export const ListAgentWorkflowsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
414
|
+
export const ListAgentWorkflowsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 79);
|
|
360
415
|
/**
|
|
361
416
|
* Describes the message fermata.v1.UpdateAgentWorkflowRequest.
|
|
362
417
|
* Use `create(UpdateAgentWorkflowRequestSchema)` to create a new message.
|
|
363
418
|
*/
|
|
364
|
-
export const UpdateAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
419
|
+
export const UpdateAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 80);
|
|
365
420
|
/**
|
|
366
421
|
* Describes the message fermata.v1.UpdateAgentWorkflowResponse.
|
|
367
422
|
* Use `create(UpdateAgentWorkflowResponseSchema)` to create a new message.
|
|
368
423
|
*/
|
|
369
|
-
export const UpdateAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
424
|
+
export const UpdateAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 81);
|
|
370
425
|
/**
|
|
371
426
|
* Describes the message fermata.v1.DeleteAgentWorkflowRequest.
|
|
372
427
|
* Use `create(DeleteAgentWorkflowRequestSchema)` to create a new message.
|
|
373
428
|
*/
|
|
374
|
-
export const DeleteAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
429
|
+
export const DeleteAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 82);
|
|
375
430
|
/**
|
|
376
431
|
* Describes the message fermata.v1.DeleteAgentWorkflowResponse.
|
|
377
432
|
* Use `create(DeleteAgentWorkflowResponseSchema)` to create a new message.
|
|
378
433
|
*/
|
|
379
|
-
export const DeleteAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
434
|
+
export const DeleteAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 83);
|
|
380
435
|
/**
|
|
381
436
|
* Describes the message fermata.v1.RunAgentWorkflowRequest.
|
|
382
437
|
* Use `create(RunAgentWorkflowRequestSchema)` to create a new message.
|
|
383
438
|
*/
|
|
384
|
-
export const RunAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
439
|
+
export const RunAgentWorkflowRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 84);
|
|
385
440
|
/**
|
|
386
441
|
* Describes the message fermata.v1.RunAgentWorkflowResponse.
|
|
387
442
|
* Use `create(RunAgentWorkflowResponseSchema)` to create a new message.
|
|
388
443
|
*/
|
|
389
|
-
export const RunAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
444
|
+
export const RunAgentWorkflowResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 85);
|
|
390
445
|
/**
|
|
391
446
|
* Describes the message fermata.v1.CreateAgentHookRequest.
|
|
392
447
|
* Use `create(CreateAgentHookRequestSchema)` to create a new message.
|
|
393
448
|
*/
|
|
394
|
-
export const CreateAgentHookRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
449
|
+
export const CreateAgentHookRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 86);
|
|
395
450
|
/**
|
|
396
451
|
* Describes the message fermata.v1.CreateAgentHookResponse.
|
|
397
452
|
* Use `create(CreateAgentHookResponseSchema)` to create a new message.
|
|
398
453
|
*/
|
|
399
|
-
export const CreateAgentHookResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
454
|
+
export const CreateAgentHookResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 87);
|
|
400
455
|
/**
|
|
401
456
|
* Describes the message fermata.v1.ListAgentHooksRequest.
|
|
402
457
|
* Use `create(ListAgentHooksRequestSchema)` to create a new message.
|
|
403
458
|
*/
|
|
404
|
-
export const ListAgentHooksRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
459
|
+
export const ListAgentHooksRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 88);
|
|
405
460
|
/**
|
|
406
461
|
* Describes the message fermata.v1.ListAgentHooksResponse.
|
|
407
462
|
* Use `create(ListAgentHooksResponseSchema)` to create a new message.
|
|
408
463
|
*/
|
|
409
|
-
export const ListAgentHooksResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
464
|
+
export const ListAgentHooksResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 89);
|
|
410
465
|
/**
|
|
411
466
|
* Describes the message fermata.v1.UpdateAgentHookRequest.
|
|
412
467
|
* Use `create(UpdateAgentHookRequestSchema)` to create a new message.
|
|
413
468
|
*/
|
|
414
|
-
export const UpdateAgentHookRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
469
|
+
export const UpdateAgentHookRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 90);
|
|
415
470
|
/**
|
|
416
471
|
* Describes the message fermata.v1.UpdateAgentHookResponse.
|
|
417
472
|
* Use `create(UpdateAgentHookResponseSchema)` to create a new message.
|
|
418
473
|
*/
|
|
419
|
-
export const UpdateAgentHookResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
474
|
+
export const UpdateAgentHookResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 91);
|
|
420
475
|
/**
|
|
421
476
|
* Describes the message fermata.v1.DeleteAgentHookRequest.
|
|
422
477
|
* Use `create(DeleteAgentHookRequestSchema)` to create a new message.
|
|
423
478
|
*/
|
|
424
|
-
export const DeleteAgentHookRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
479
|
+
export const DeleteAgentHookRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 92);
|
|
425
480
|
/**
|
|
426
481
|
* Describes the message fermata.v1.DeleteAgentHookResponse.
|
|
427
482
|
* Use `create(DeleteAgentHookResponseSchema)` to create a new message.
|
|
428
483
|
*/
|
|
429
|
-
export const DeleteAgentHookResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
484
|
+
export const DeleteAgentHookResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 93);
|
|
430
485
|
/**
|
|
431
486
|
* Describes the message fermata.v1.GetAgentSessionRequest.
|
|
432
487
|
* Use `create(GetAgentSessionRequestSchema)` to create a new message.
|
|
433
488
|
*/
|
|
434
|
-
export const GetAgentSessionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
489
|
+
export const GetAgentSessionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 94);
|
|
435
490
|
/**
|
|
436
491
|
* Describes the message fermata.v1.GetAgentSessionResponse.
|
|
437
492
|
* Use `create(GetAgentSessionResponseSchema)` to create a new message.
|
|
438
493
|
*/
|
|
439
|
-
export const GetAgentSessionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
494
|
+
export const GetAgentSessionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 95);
|
|
440
495
|
/**
|
|
441
496
|
* Describes the message fermata.v1.ListAgentSessionsRequest.
|
|
442
497
|
* Use `create(ListAgentSessionsRequestSchema)` to create a new message.
|
|
443
498
|
*/
|
|
444
|
-
export const ListAgentSessionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
499
|
+
export const ListAgentSessionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 96);
|
|
445
500
|
/**
|
|
446
501
|
* Describes the message fermata.v1.ListAgentSessionsResponse.
|
|
447
502
|
* Use `create(ListAgentSessionsResponseSchema)` to create a new message.
|
|
448
503
|
*/
|
|
449
|
-
export const ListAgentSessionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
504
|
+
export const ListAgentSessionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 97);
|
|
450
505
|
/**
|
|
451
506
|
* Describes the message fermata.v1.ControlAgentSessionRequest.
|
|
452
507
|
* Use `create(ControlAgentSessionRequestSchema)` to create a new message.
|
|
453
508
|
*/
|
|
454
|
-
export const ControlAgentSessionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
509
|
+
export const ControlAgentSessionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 98);
|
|
455
510
|
/**
|
|
456
511
|
* Describes the message fermata.v1.ControlAgentSessionResponse.
|
|
457
512
|
* Use `create(ControlAgentSessionResponseSchema)` to create a new message.
|
|
458
513
|
*/
|
|
459
|
-
export const ControlAgentSessionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
514
|
+
export const ControlAgentSessionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 99);
|
|
460
515
|
/**
|
|
461
516
|
* Describes the message fermata.v1.CreateAgentSessionEventRequest.
|
|
462
517
|
* Use `create(CreateAgentSessionEventRequestSchema)` to create a new message.
|
|
463
518
|
*/
|
|
464
|
-
export const CreateAgentSessionEventRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
519
|
+
export const CreateAgentSessionEventRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 100);
|
|
465
520
|
/**
|
|
466
521
|
* Describes the message fermata.v1.CreateAgentSessionEventResponse.
|
|
467
522
|
* Use `create(CreateAgentSessionEventResponseSchema)` to create a new message.
|
|
468
523
|
*/
|
|
469
|
-
export const CreateAgentSessionEventResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
524
|
+
export const CreateAgentSessionEventResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 101);
|
|
470
525
|
/**
|
|
471
526
|
* Describes the message fermata.v1.ListAgentSessionEventsRequest.
|
|
472
527
|
* Use `create(ListAgentSessionEventsRequestSchema)` to create a new message.
|
|
473
528
|
*/
|
|
474
|
-
export const ListAgentSessionEventsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
529
|
+
export const ListAgentSessionEventsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 102);
|
|
475
530
|
/**
|
|
476
531
|
* Describes the message fermata.v1.ListAgentSessionEventsResponse.
|
|
477
532
|
* Use `create(ListAgentSessionEventsResponseSchema)` to create a new message.
|
|
478
533
|
*/
|
|
479
|
-
export const ListAgentSessionEventsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
534
|
+
export const ListAgentSessionEventsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 103);
|
|
480
535
|
/**
|
|
481
536
|
* Describes the message fermata.v1.CreateAgentToolExecutionRequest.
|
|
482
537
|
* Use `create(CreateAgentToolExecutionRequestSchema)` to create a new message.
|
|
483
538
|
*/
|
|
484
|
-
export const CreateAgentToolExecutionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
539
|
+
export const CreateAgentToolExecutionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 104);
|
|
485
540
|
/**
|
|
486
541
|
* Describes the message fermata.v1.CreateAgentToolExecutionResponse.
|
|
487
542
|
* Use `create(CreateAgentToolExecutionResponseSchema)` to create a new message.
|
|
488
543
|
*/
|
|
489
|
-
export const CreateAgentToolExecutionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
544
|
+
export const CreateAgentToolExecutionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 105);
|
|
490
545
|
/**
|
|
491
546
|
* Describes the message fermata.v1.UpdateAgentToolExecutionRequest.
|
|
492
547
|
* Use `create(UpdateAgentToolExecutionRequestSchema)` to create a new message.
|
|
493
548
|
*/
|
|
494
|
-
export const UpdateAgentToolExecutionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
549
|
+
export const UpdateAgentToolExecutionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 106);
|
|
495
550
|
/**
|
|
496
551
|
* Describes the message fermata.v1.UpdateAgentToolExecutionResponse.
|
|
497
552
|
* Use `create(UpdateAgentToolExecutionResponseSchema)` to create a new message.
|
|
498
553
|
*/
|
|
499
|
-
export const UpdateAgentToolExecutionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
554
|
+
export const UpdateAgentToolExecutionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 107);
|
|
500
555
|
/**
|
|
501
556
|
* Describes the message fermata.v1.ListAgentToolExecutionsRequest.
|
|
502
557
|
* Use `create(ListAgentToolExecutionsRequestSchema)` to create a new message.
|
|
503
558
|
*/
|
|
504
|
-
export const ListAgentToolExecutionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
559
|
+
export const ListAgentToolExecutionsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 108);
|
|
505
560
|
/**
|
|
506
561
|
* Describes the message fermata.v1.ListAgentToolExecutionsResponse.
|
|
507
562
|
* Use `create(ListAgentToolExecutionsResponseSchema)` to create a new message.
|
|
508
563
|
*/
|
|
509
|
-
export const ListAgentToolExecutionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
564
|
+
export const ListAgentToolExecutionsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 109);
|
|
510
565
|
/**
|
|
511
566
|
* Describes the message fermata.v1.DecideAgentApprovalRequest.
|
|
512
567
|
* Use `create(DecideAgentApprovalRequestSchema)` to create a new message.
|
|
513
568
|
*/
|
|
514
|
-
export const DecideAgentApprovalRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
569
|
+
export const DecideAgentApprovalRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 110);
|
|
515
570
|
/**
|
|
516
571
|
* Describes the message fermata.v1.DecideAgentApprovalResponse.
|
|
517
572
|
* Use `create(DecideAgentApprovalResponseSchema)` to create a new message.
|
|
518
573
|
*/
|
|
519
|
-
export const DecideAgentApprovalResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
574
|
+
export const DecideAgentApprovalResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 111);
|
|
520
575
|
/**
|
|
521
576
|
* Describes the message fermata.v1.ListAgentApprovalsRequest.
|
|
522
577
|
* Use `create(ListAgentApprovalsRequestSchema)` to create a new message.
|
|
523
578
|
*/
|
|
524
|
-
export const ListAgentApprovalsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
579
|
+
export const ListAgentApprovalsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 112);
|
|
525
580
|
/**
|
|
526
581
|
* Describes the message fermata.v1.ListAgentApprovalsResponse.
|
|
527
582
|
* Use `create(ListAgentApprovalsResponseSchema)` to create a new message.
|
|
528
583
|
*/
|
|
529
|
-
export const ListAgentApprovalsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
584
|
+
export const ListAgentApprovalsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 113);
|
|
530
585
|
/**
|
|
531
586
|
* Describes the message fermata.v1.GetAgentSessionTimelineRequest.
|
|
532
587
|
* Use `create(GetAgentSessionTimelineRequestSchema)` to create a new message.
|
|
533
588
|
*/
|
|
534
|
-
export const GetAgentSessionTimelineRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
589
|
+
export const GetAgentSessionTimelineRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 114);
|
|
535
590
|
/**
|
|
536
591
|
* Describes the message fermata.v1.GetAgentSessionTimelineResponse.
|
|
537
592
|
* Use `create(GetAgentSessionTimelineResponseSchema)` to create a new message.
|
|
538
593
|
*/
|
|
539
|
-
export const GetAgentSessionTimelineResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
594
|
+
export const GetAgentSessionTimelineResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 115);
|
|
540
595
|
/**
|
|
541
596
|
* Describes the message fermata.v1.UpsertCustomEvaluatorRequest.
|
|
542
597
|
* Use `create(UpsertCustomEvaluatorRequestSchema)` to create a new message.
|
|
543
598
|
*/
|
|
544
|
-
export const UpsertCustomEvaluatorRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
599
|
+
export const UpsertCustomEvaluatorRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 116);
|
|
545
600
|
/**
|
|
546
601
|
* Describes the message fermata.v1.UpsertCustomEvaluatorResponse.
|
|
547
602
|
* Use `create(UpsertCustomEvaluatorResponseSchema)` to create a new message.
|
|
548
603
|
*/
|
|
549
|
-
export const UpsertCustomEvaluatorResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
604
|
+
export const UpsertCustomEvaluatorResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 117);
|
|
550
605
|
/**
|
|
551
606
|
* Describes the message fermata.v1.GetCustomEvaluatorRequest.
|
|
552
607
|
* Use `create(GetCustomEvaluatorRequestSchema)` to create a new message.
|
|
553
608
|
*/
|
|
554
|
-
export const GetCustomEvaluatorRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
609
|
+
export const GetCustomEvaluatorRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 118);
|
|
555
610
|
/**
|
|
556
611
|
* Describes the message fermata.v1.GetCustomEvaluatorResponse.
|
|
557
612
|
* Use `create(GetCustomEvaluatorResponseSchema)` to create a new message.
|
|
558
613
|
*/
|
|
559
|
-
export const GetCustomEvaluatorResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
614
|
+
export const GetCustomEvaluatorResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 119);
|
|
560
615
|
/**
|
|
561
616
|
* Describes the message fermata.v1.ListCustomEvaluatorsRequest.
|
|
562
617
|
* Use `create(ListCustomEvaluatorsRequestSchema)` to create a new message.
|
|
563
618
|
*/
|
|
564
|
-
export const ListCustomEvaluatorsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
619
|
+
export const ListCustomEvaluatorsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 120);
|
|
565
620
|
/**
|
|
566
621
|
* Describes the message fermata.v1.ListCustomEvaluatorsResponse.
|
|
567
622
|
* Use `create(ListCustomEvaluatorsResponseSchema)` to create a new message.
|
|
568
623
|
*/
|
|
569
|
-
export const ListCustomEvaluatorsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
624
|
+
export const ListCustomEvaluatorsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 121);
|
|
570
625
|
/**
|
|
571
626
|
* Describes the message fermata.v1.DeleteCustomEvaluatorRequest.
|
|
572
627
|
* Use `create(DeleteCustomEvaluatorRequestSchema)` to create a new message.
|
|
573
628
|
*/
|
|
574
|
-
export const DeleteCustomEvaluatorRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
629
|
+
export const DeleteCustomEvaluatorRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 122);
|
|
575
630
|
/**
|
|
576
631
|
* Describes the message fermata.v1.DeleteCustomEvaluatorResponse.
|
|
577
632
|
* Use `create(DeleteCustomEvaluatorResponseSchema)` to create a new message.
|
|
578
633
|
*/
|
|
579
|
-
export const DeleteCustomEvaluatorResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
634
|
+
export const DeleteCustomEvaluatorResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 123);
|
|
580
635
|
/**
|
|
581
636
|
* Describes the message fermata.v1.UpsertJudgeRequest.
|
|
582
637
|
* Use `create(UpsertJudgeRequestSchema)` to create a new message.
|
|
583
638
|
*/
|
|
584
|
-
export const UpsertJudgeRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
639
|
+
export const UpsertJudgeRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 124);
|
|
585
640
|
/**
|
|
586
641
|
* Describes the message fermata.v1.UpsertJudgeResponse.
|
|
587
642
|
* Use `create(UpsertJudgeResponseSchema)` to create a new message.
|
|
588
643
|
*/
|
|
589
|
-
export const UpsertJudgeResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
644
|
+
export const UpsertJudgeResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 125);
|
|
590
645
|
/**
|
|
591
646
|
* Describes the message fermata.v1.GetJudgeRequest.
|
|
592
647
|
* Use `create(GetJudgeRequestSchema)` to create a new message.
|
|
593
648
|
*/
|
|
594
|
-
export const GetJudgeRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
649
|
+
export const GetJudgeRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 126);
|
|
595
650
|
/**
|
|
596
651
|
* Describes the message fermata.v1.GetJudgeResponse.
|
|
597
652
|
* Use `create(GetJudgeResponseSchema)` to create a new message.
|
|
598
653
|
*/
|
|
599
|
-
export const GetJudgeResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
654
|
+
export const GetJudgeResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 127);
|
|
600
655
|
/**
|
|
601
656
|
* Describes the message fermata.v1.ListJudgesRequest.
|
|
602
657
|
* Use `create(ListJudgesRequestSchema)` to create a new message.
|
|
603
658
|
*/
|
|
604
|
-
export const ListJudgesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
659
|
+
export const ListJudgesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 128);
|
|
605
660
|
/**
|
|
606
661
|
* Describes the message fermata.v1.ListJudgesResponse.
|
|
607
662
|
* Use `create(ListJudgesResponseSchema)` to create a new message.
|
|
608
663
|
*/
|
|
609
|
-
export const ListJudgesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
664
|
+
export const ListJudgesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 129);
|
|
610
665
|
/**
|
|
611
666
|
* Describes the message fermata.v1.DeleteJudgeRequest.
|
|
612
667
|
* Use `create(DeleteJudgeRequestSchema)` to create a new message.
|
|
613
668
|
*/
|
|
614
|
-
export const DeleteJudgeRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
669
|
+
export const DeleteJudgeRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 130);
|
|
615
670
|
/**
|
|
616
671
|
* Describes the message fermata.v1.DeleteJudgeResponse.
|
|
617
672
|
* Use `create(DeleteJudgeResponseSchema)` to create a new message.
|
|
618
673
|
*/
|
|
619
|
-
export const DeleteJudgeResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
674
|
+
export const DeleteJudgeResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 131);
|
|
620
675
|
/**
|
|
621
676
|
* Describes the message fermata.v1.StartScenarioRequest.
|
|
622
677
|
* Use `create(StartScenarioRequestSchema)` to create a new message.
|
|
623
678
|
*/
|
|
624
|
-
export const StartScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
679
|
+
export const StartScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 132);
|
|
625
680
|
/**
|
|
626
681
|
* Describes the message fermata.v1.StartScenarioResponse.
|
|
627
682
|
* Use `create(StartScenarioResponseSchema)` to create a new message.
|
|
628
683
|
*/
|
|
629
|
-
export const StartScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
684
|
+
export const StartScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 133);
|
|
630
685
|
/**
|
|
631
686
|
* Describes the message fermata.v1.CreateAndStartScenarioRequest.
|
|
632
687
|
* Use `create(CreateAndStartScenarioRequestSchema)` to create a new message.
|
|
633
688
|
*/
|
|
634
|
-
export const CreateAndStartScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
689
|
+
export const CreateAndStartScenarioRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 134);
|
|
635
690
|
/**
|
|
636
691
|
* Describes the message fermata.v1.CreateAndStartScenarioResponse.
|
|
637
692
|
* Use `create(CreateAndStartScenarioResponseSchema)` to create a new message.
|
|
638
693
|
*/
|
|
639
|
-
export const CreateAndStartScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
694
|
+
export const CreateAndStartScenarioResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 135);
|
|
640
695
|
/**
|
|
641
696
|
* Describes the message fermata.v1.RecordScenarioRunRequest.
|
|
642
697
|
* Use `create(RecordScenarioRunRequestSchema)` to create a new message.
|
|
643
698
|
*/
|
|
644
|
-
export const RecordScenarioRunRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
699
|
+
export const RecordScenarioRunRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 136);
|
|
645
700
|
/**
|
|
646
701
|
* Describes the message fermata.v1.RecordScenarioRunResponse.
|
|
647
702
|
* Use `create(RecordScenarioRunResponseSchema)` to create a new message.
|
|
648
703
|
*/
|
|
649
|
-
export const RecordScenarioRunResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
704
|
+
export const RecordScenarioRunResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 137);
|
|
650
705
|
/**
|
|
651
706
|
* Describes the message fermata.v1.GetScenarioRunRequest.
|
|
652
707
|
* Use `create(GetScenarioRunRequestSchema)` to create a new message.
|
|
653
708
|
*/
|
|
654
|
-
export const GetScenarioRunRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
709
|
+
export const GetScenarioRunRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 138);
|
|
655
710
|
/**
|
|
656
711
|
* Describes the message fermata.v1.GetScenarioRunResponse.
|
|
657
712
|
* Use `create(GetScenarioRunResponseSchema)` to create a new message.
|
|
658
713
|
*/
|
|
659
|
-
export const GetScenarioRunResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
714
|
+
export const GetScenarioRunResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 139);
|
|
660
715
|
/**
|
|
661
716
|
* Describes the message fermata.v1.ListScenarioRunsRequest.
|
|
662
717
|
* Use `create(ListScenarioRunsRequestSchema)` to create a new message.
|
|
663
718
|
*/
|
|
664
|
-
export const ListScenarioRunsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
719
|
+
export const ListScenarioRunsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 140);
|
|
665
720
|
/**
|
|
666
721
|
* Describes the message fermata.v1.ListScenarioRunsResponse.
|
|
667
722
|
* Use `create(ListScenarioRunsResponseSchema)` to create a new message.
|
|
668
723
|
*/
|
|
669
|
-
export const ListScenarioRunsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
724
|
+
export const ListScenarioRunsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 141);
|
|
670
725
|
/**
|
|
671
726
|
* Describes the message fermata.v1.GetEvaluationObservabilityDashboardRequest.
|
|
672
727
|
* Use `create(GetEvaluationObservabilityDashboardRequestSchema)` to create a new message.
|
|
673
728
|
*/
|
|
674
|
-
export const GetEvaluationObservabilityDashboardRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
729
|
+
export const GetEvaluationObservabilityDashboardRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 142);
|
|
675
730
|
/**
|
|
676
731
|
* Describes the message fermata.v1.EvaluationObservabilitySummary.
|
|
677
732
|
* Use `create(EvaluationObservabilitySummarySchema)` to create a new message.
|
|
678
733
|
*/
|
|
679
|
-
export const EvaluationObservabilitySummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
734
|
+
export const EvaluationObservabilitySummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 143);
|
|
680
735
|
/**
|
|
681
736
|
* Describes the message fermata.v1.EvaluationRecentRunSummary.
|
|
682
737
|
* Use `create(EvaluationRecentRunSummarySchema)` to create a new message.
|
|
683
738
|
*/
|
|
684
|
-
export const EvaluationRecentRunSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
739
|
+
export const EvaluationRecentRunSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 144);
|
|
685
740
|
/**
|
|
686
741
|
* Describes the message fermata.v1.EvaluationRegressionAlert.
|
|
687
742
|
* Use `create(EvaluationRegressionAlertSchema)` to create a new message.
|
|
688
743
|
*/
|
|
689
|
-
export const EvaluationRegressionAlertSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
744
|
+
export const EvaluationRegressionAlertSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 145);
|
|
690
745
|
/**
|
|
691
746
|
* Describes the message fermata.v1.GetEvaluationObservabilityDashboardResponse.
|
|
692
747
|
* Use `create(GetEvaluationObservabilityDashboardResponseSchema)` to create a new message.
|
|
693
748
|
*/
|
|
694
|
-
export const GetEvaluationObservabilityDashboardResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
749
|
+
export const GetEvaluationObservabilityDashboardResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 146);
|
|
695
750
|
/**
|
|
696
751
|
* Describes the message fermata.v1.GetEvaluationRunMetricsRequest.
|
|
697
752
|
* Use `create(GetEvaluationRunMetricsRequestSchema)` to create a new message.
|
|
698
753
|
*/
|
|
699
|
-
export const GetEvaluationRunMetricsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
754
|
+
export const GetEvaluationRunMetricsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 147);
|
|
700
755
|
/**
|
|
701
756
|
* Describes the message fermata.v1.EvaluationRunMetricsSummary.
|
|
702
757
|
* Use `create(EvaluationRunMetricsSummarySchema)` to create a new message.
|
|
703
758
|
*/
|
|
704
|
-
export const EvaluationRunMetricsSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
759
|
+
export const EvaluationRunMetricsSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 148);
|
|
705
760
|
/**
|
|
706
761
|
* Describes the message fermata.v1.EvaluationRunResultMetrics.
|
|
707
762
|
* Use `create(EvaluationRunResultMetricsSchema)` to create a new message.
|
|
708
763
|
*/
|
|
709
|
-
export const EvaluationRunResultMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
764
|
+
export const EvaluationRunResultMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 149);
|
|
710
765
|
/**
|
|
711
766
|
* Describes the message fermata.v1.GetEvaluationRunMetricsResponse.
|
|
712
767
|
* Use `create(GetEvaluationRunMetricsResponseSchema)` to create a new message.
|
|
713
768
|
*/
|
|
714
|
-
export const GetEvaluationRunMetricsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
769
|
+
export const GetEvaluationRunMetricsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 150);
|
|
715
770
|
/**
|
|
716
771
|
* Describes the message fermata.v1.CreateEvaluationComparisonRequest.
|
|
717
772
|
* Use `create(CreateEvaluationComparisonRequestSchema)` to create a new message.
|
|
718
773
|
*/
|
|
719
|
-
export const CreateEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
774
|
+
export const CreateEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 151);
|
|
720
775
|
/**
|
|
721
776
|
* Describes the message fermata.v1.CreateEvaluationComparisonResponse.
|
|
722
777
|
* Use `create(CreateEvaluationComparisonResponseSchema)` to create a new message.
|
|
723
778
|
*/
|
|
724
|
-
export const CreateEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
779
|
+
export const CreateEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 152);
|
|
725
780
|
/**
|
|
726
781
|
* Describes the message fermata.v1.GetEvaluationComparisonRequest.
|
|
727
782
|
* Use `create(GetEvaluationComparisonRequestSchema)` to create a new message.
|
|
728
783
|
*/
|
|
729
|
-
export const GetEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
784
|
+
export const GetEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 153);
|
|
730
785
|
/**
|
|
731
786
|
* Describes the message fermata.v1.GetEvaluationComparisonResponse.
|
|
732
787
|
* Use `create(GetEvaluationComparisonResponseSchema)` to create a new message.
|
|
733
788
|
*/
|
|
734
|
-
export const GetEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
789
|
+
export const GetEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 154);
|
|
735
790
|
/**
|
|
736
791
|
* Describes the message fermata.v1.ListEvaluationComparisonsRequest.
|
|
737
792
|
* Use `create(ListEvaluationComparisonsRequestSchema)` to create a new message.
|
|
738
793
|
*/
|
|
739
|
-
export const ListEvaluationComparisonsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
794
|
+
export const ListEvaluationComparisonsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 155);
|
|
740
795
|
/**
|
|
741
796
|
* Describes the message fermata.v1.ListEvaluationComparisonsResponse.
|
|
742
797
|
* Use `create(ListEvaluationComparisonsResponseSchema)` to create a new message.
|
|
743
798
|
*/
|
|
744
|
-
export const ListEvaluationComparisonsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
799
|
+
export const ListEvaluationComparisonsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 156);
|
|
745
800
|
/**
|
|
746
801
|
* Describes the message fermata.v1.UpdateEvaluationComparisonRequest.
|
|
747
802
|
* Use `create(UpdateEvaluationComparisonRequestSchema)` to create a new message.
|
|
748
803
|
*/
|
|
749
|
-
export const UpdateEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
804
|
+
export const UpdateEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 157);
|
|
750
805
|
/**
|
|
751
806
|
* Describes the message fermata.v1.UpdateEvaluationComparisonResponse.
|
|
752
807
|
* Use `create(UpdateEvaluationComparisonResponseSchema)` to create a new message.
|
|
753
808
|
*/
|
|
754
|
-
export const UpdateEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
809
|
+
export const UpdateEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 158);
|
|
755
810
|
/**
|
|
756
811
|
* Describes the message fermata.v1.DeleteEvaluationComparisonRequest.
|
|
757
812
|
* Use `create(DeleteEvaluationComparisonRequestSchema)` to create a new message.
|
|
758
813
|
*/
|
|
759
|
-
export const DeleteEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
814
|
+
export const DeleteEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 159);
|
|
760
815
|
/**
|
|
761
816
|
* Describes the message fermata.v1.DeleteEvaluationComparisonResponse.
|
|
762
817
|
* Use `create(DeleteEvaluationComparisonResponseSchema)` to create a new message.
|
|
763
818
|
*/
|
|
764
|
-
export const DeleteEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
819
|
+
export const DeleteEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 160);
|
|
765
820
|
/**
|
|
766
821
|
* Describes the message fermata.v1.RegenerateEvaluationComparisonRequest.
|
|
767
822
|
* Use `create(RegenerateEvaluationComparisonRequestSchema)` to create a new message.
|
|
768
823
|
*/
|
|
769
|
-
export const RegenerateEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
824
|
+
export const RegenerateEvaluationComparisonRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 161);
|
|
770
825
|
/**
|
|
771
826
|
* Describes the message fermata.v1.RegenerateEvaluationComparisonResponse.
|
|
772
827
|
* Use `create(RegenerateEvaluationComparisonResponseSchema)` to create a new message.
|
|
773
828
|
*/
|
|
774
|
-
export const RegenerateEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
829
|
+
export const RegenerateEvaluationComparisonResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 162);
|
|
775
830
|
/**
|
|
776
831
|
* Describes the message fermata.v1.EvaluationComparison.
|
|
777
832
|
* Use `create(EvaluationComparisonSchema)` to create a new message.
|
|
778
833
|
*/
|
|
779
|
-
export const EvaluationComparisonSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
834
|
+
export const EvaluationComparisonSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 163);
|
|
780
835
|
/**
|
|
781
836
|
* Describes the message fermata.v1.EvaluationComparisonRunSummary.
|
|
782
837
|
* Use `create(EvaluationComparisonRunSummarySchema)` to create a new message.
|
|
783
838
|
*/
|
|
784
|
-
export const EvaluationComparisonRunSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
839
|
+
export const EvaluationComparisonRunSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 164);
|
|
785
840
|
/**
|
|
786
841
|
* Describes the message fermata.v1.EvaluationComparisonMetric.
|
|
787
842
|
* Use `create(EvaluationComparisonMetricSchema)` to create a new message.
|
|
788
843
|
*/
|
|
789
|
-
export const EvaluationComparisonMetricSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
844
|
+
export const EvaluationComparisonMetricSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 165);
|
|
790
845
|
/**
|
|
791
846
|
* Describes the message fermata.v1.EvaluationComparisonStatistics.
|
|
792
847
|
* Use `create(EvaluationComparisonStatisticsSchema)` to create a new message.
|
|
793
848
|
*/
|
|
794
|
-
export const EvaluationComparisonStatisticsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
849
|
+
export const EvaluationComparisonStatisticsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 166);
|
|
795
850
|
/**
|
|
796
851
|
* Describes the message fermata.v1.GetEvaluationGovernanceReportRequest.
|
|
797
852
|
* Use `create(GetEvaluationGovernanceReportRequestSchema)` to create a new message.
|
|
798
853
|
*/
|
|
799
|
-
export const GetEvaluationGovernanceReportRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
854
|
+
export const GetEvaluationGovernanceReportRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 167);
|
|
800
855
|
/**
|
|
801
856
|
* Describes the message fermata.v1.GovernanceAssertionAggregate.
|
|
802
857
|
* Use `create(GovernanceAssertionAggregateSchema)` to create a new message.
|
|
803
858
|
*/
|
|
804
|
-
export const GovernanceAssertionAggregateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
859
|
+
export const GovernanceAssertionAggregateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 168);
|
|
805
860
|
/**
|
|
806
861
|
* Describes the message fermata.v1.GovernanceReportSummary.
|
|
807
862
|
* Use `create(GovernanceReportSummarySchema)` to create a new message.
|
|
808
863
|
*/
|
|
809
|
-
export const GovernanceReportSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
864
|
+
export const GovernanceReportSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 169);
|
|
810
865
|
/**
|
|
811
866
|
* Describes the message fermata.v1.GovernanceRunSummary.
|
|
812
867
|
* Use `create(GovernanceRunSummarySchema)` to create a new message.
|
|
813
868
|
*/
|
|
814
|
-
export const GovernanceRunSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
869
|
+
export const GovernanceRunSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 170);
|
|
815
870
|
/**
|
|
816
871
|
* Describes the message fermata.v1.GovernanceRiskSignal.
|
|
817
872
|
* Use `create(GovernanceRiskSignalSchema)` to create a new message.
|
|
818
873
|
*/
|
|
819
|
-
export const GovernanceRiskSignalSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
874
|
+
export const GovernanceRiskSignalSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 171);
|
|
820
875
|
/**
|
|
821
876
|
* Describes the message fermata.v1.GetEvaluationGovernanceReportResponse.
|
|
822
877
|
* Use `create(GetEvaluationGovernanceReportResponseSchema)` to create a new message.
|
|
823
878
|
*/
|
|
824
|
-
export const GetEvaluationGovernanceReportResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
879
|
+
export const GetEvaluationGovernanceReportResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 172);
|
|
825
880
|
/**
|
|
826
881
|
* Describes the message fermata.v1.RedTeamCatalogTemplate.
|
|
827
882
|
* Use `create(RedTeamCatalogTemplateSchema)` to create a new message.
|
|
828
883
|
*/
|
|
829
|
-
export const RedTeamCatalogTemplateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
884
|
+
export const RedTeamCatalogTemplateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 173);
|
|
830
885
|
/**
|
|
831
886
|
* Describes the message fermata.v1.RedTeamCatalogTemplateSet.
|
|
832
887
|
* Use `create(RedTeamCatalogTemplateSetSchema)` to create a new message.
|
|
833
888
|
*/
|
|
834
|
-
export const RedTeamCatalogTemplateSetSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
889
|
+
export const RedTeamCatalogTemplateSetSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 174);
|
|
835
890
|
/**
|
|
836
891
|
* Describes the message fermata.v1.BuildRedTeamPlanRequest.
|
|
837
892
|
* Use `create(BuildRedTeamPlanRequestSchema)` to create a new message.
|
|
838
893
|
*/
|
|
839
|
-
export const BuildRedTeamPlanRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
894
|
+
export const BuildRedTeamPlanRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 175);
|
|
840
895
|
/**
|
|
841
896
|
* Describes the message fermata.v1.RedTeamPlan.
|
|
842
897
|
* Use `create(RedTeamPlanSchema)` to create a new message.
|
|
843
898
|
*/
|
|
844
|
-
export const RedTeamPlanSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
899
|
+
export const RedTeamPlanSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 176);
|
|
845
900
|
/**
|
|
846
901
|
* Describes the message fermata.v1.BuildRedTeamPlanResponse.
|
|
847
902
|
* Use `create(BuildRedTeamPlanResponseSchema)` to create a new message.
|
|
848
903
|
*/
|
|
849
|
-
export const BuildRedTeamPlanResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
904
|
+
export const BuildRedTeamPlanResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 177);
|
|
850
905
|
/**
|
|
851
906
|
* Describes the message fermata.v1.ListRedTeamDatasetsRequest.
|
|
852
907
|
* Use `create(ListRedTeamDatasetsRequestSchema)` to create a new message.
|
|
853
908
|
*/
|
|
854
|
-
export const ListRedTeamDatasetsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
909
|
+
export const ListRedTeamDatasetsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 178);
|
|
855
910
|
/**
|
|
856
911
|
* Describes the message fermata.v1.RedTeamDatasetPreview.
|
|
857
912
|
* Use `create(RedTeamDatasetPreviewSchema)` to create a new message.
|
|
858
913
|
*/
|
|
859
|
-
export const RedTeamDatasetPreviewSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
914
|
+
export const RedTeamDatasetPreviewSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 179);
|
|
860
915
|
/**
|
|
861
916
|
* Describes the message fermata.v1.RedTeamDataset.
|
|
862
917
|
* Use `create(RedTeamDatasetSchema)` to create a new message.
|
|
863
918
|
*/
|
|
864
|
-
export const RedTeamDatasetSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
919
|
+
export const RedTeamDatasetSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 180);
|
|
865
920
|
/**
|
|
866
921
|
* Describes the message fermata.v1.ListRedTeamDatasetsResponse.
|
|
867
922
|
* Use `create(ListRedTeamDatasetsResponseSchema)` to create a new message.
|
|
868
923
|
*/
|
|
869
|
-
export const ListRedTeamDatasetsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
924
|
+
export const ListRedTeamDatasetsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 181);
|
|
870
925
|
/**
|
|
871
926
|
* Describes the message fermata.v1.RedTeamExecution.
|
|
872
927
|
* Use `create(RedTeamExecutionSchema)` to create a new message.
|
|
873
928
|
*/
|
|
874
|
-
export const RedTeamExecutionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
929
|
+
export const RedTeamExecutionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 182);
|
|
875
930
|
/**
|
|
876
931
|
* Describes the message fermata.v1.RedTeamQualityGateConfig.
|
|
877
932
|
* Use `create(RedTeamQualityGateConfigSchema)` to create a new message.
|
|
878
933
|
*/
|
|
879
|
-
export const RedTeamQualityGateConfigSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
934
|
+
export const RedTeamQualityGateConfigSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 183);
|
|
880
935
|
/**
|
|
881
936
|
* Describes the message fermata.v1.BuildRedTeamReportRequest.
|
|
882
937
|
* Use `create(BuildRedTeamReportRequestSchema)` to create a new message.
|
|
883
938
|
*/
|
|
884
|
-
export const BuildRedTeamReportRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
939
|
+
export const BuildRedTeamReportRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 184);
|
|
885
940
|
/**
|
|
886
941
|
* Describes the message fermata.v1.RedTeamAggregateSummary.
|
|
887
942
|
* Use `create(RedTeamAggregateSummarySchema)` to create a new message.
|
|
888
943
|
*/
|
|
889
|
-
export const RedTeamAggregateSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
944
|
+
export const RedTeamAggregateSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 185);
|
|
890
945
|
/**
|
|
891
946
|
* Describes the message fermata.v1.RedTeamCategorySummary.
|
|
892
947
|
* Use `create(RedTeamCategorySummarySchema)` to create a new message.
|
|
893
948
|
*/
|
|
894
|
-
export const RedTeamCategorySummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
949
|
+
export const RedTeamCategorySummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 186);
|
|
895
950
|
/**
|
|
896
951
|
* Describes the message fermata.v1.RedTeamGuardrailSummary.
|
|
897
952
|
* Use `create(RedTeamGuardrailSummarySchema)` to create a new message.
|
|
898
953
|
*/
|
|
899
|
-
export const RedTeamGuardrailSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
954
|
+
export const RedTeamGuardrailSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 187);
|
|
900
955
|
/**
|
|
901
956
|
* Describes the message fermata.v1.RedTeamComplianceSummary.
|
|
902
957
|
* Use `create(RedTeamComplianceSummarySchema)` to create a new message.
|
|
903
958
|
*/
|
|
904
|
-
export const RedTeamComplianceSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
959
|
+
export const RedTeamComplianceSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 188);
|
|
905
960
|
/**
|
|
906
961
|
* Describes the message fermata.v1.RedTeamQualityGateCheck.
|
|
907
962
|
* Use `create(RedTeamQualityGateCheckSchema)` to create a new message.
|
|
908
963
|
*/
|
|
909
|
-
export const RedTeamQualityGateCheckSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
964
|
+
export const RedTeamQualityGateCheckSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 189);
|
|
910
965
|
/**
|
|
911
966
|
* Describes the message fermata.v1.RedTeamQualityGateResult.
|
|
912
967
|
* Use `create(RedTeamQualityGateResultSchema)` to create a new message.
|
|
913
968
|
*/
|
|
914
|
-
export const RedTeamQualityGateResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
969
|
+
export const RedTeamQualityGateResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 190);
|
|
915
970
|
/**
|
|
916
971
|
* Describes the message fermata.v1.BuildRedTeamReportResponse.
|
|
917
972
|
* Use `create(BuildRedTeamReportResponseSchema)` to create a new message.
|
|
918
973
|
*/
|
|
919
|
-
export const BuildRedTeamReportResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
974
|
+
export const BuildRedTeamReportResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 191);
|
|
920
975
|
/**
|
|
921
976
|
* Describes the message fermata.v1.DatasetPromotionItem.
|
|
922
977
|
* Use `create(DatasetPromotionItemSchema)` to create a new message.
|
|
923
978
|
*/
|
|
924
|
-
export const DatasetPromotionItemSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
979
|
+
export const DatasetPromotionItemSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 192);
|
|
925
980
|
/**
|
|
926
981
|
* Describes the message fermata.v1.PromotedDatasetItem.
|
|
927
982
|
* Use `create(PromotedDatasetItemSchema)` to create a new message.
|
|
928
983
|
*/
|
|
929
|
-
export const PromotedDatasetItemSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
984
|
+
export const PromotedDatasetItemSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 193);
|
|
930
985
|
/**
|
|
931
986
|
* Describes the message fermata.v1.PromoteDatasetItemRequest.
|
|
932
987
|
* Use `create(PromoteDatasetItemRequestSchema)` to create a new message.
|
|
933
988
|
*/
|
|
934
|
-
export const PromoteDatasetItemRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
989
|
+
export const PromoteDatasetItemRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 194);
|
|
935
990
|
/**
|
|
936
991
|
* Describes the message fermata.v1.PromoteDatasetItemResponse.
|
|
937
992
|
* Use `create(PromoteDatasetItemResponseSchema)` to create a new message.
|
|
938
993
|
*/
|
|
939
|
-
export const PromoteDatasetItemResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
994
|
+
export const PromoteDatasetItemResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 195);
|
|
940
995
|
/**
|
|
941
996
|
* Describes the message fermata.v1.PromoteDatasetItemsRequest.
|
|
942
997
|
* Use `create(PromoteDatasetItemsRequestSchema)` to create a new message.
|
|
943
998
|
*/
|
|
944
|
-
export const PromoteDatasetItemsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
999
|
+
export const PromoteDatasetItemsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 196);
|
|
945
1000
|
/**
|
|
946
1001
|
* Describes the message fermata.v1.PromoteDatasetItemsResponse.
|
|
947
1002
|
* Use `create(PromoteDatasetItemsResponseSchema)` to create a new message.
|
|
948
1003
|
*/
|
|
949
|
-
export const PromoteDatasetItemsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1004
|
+
export const PromoteDatasetItemsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 197);
|
|
950
1005
|
/**
|
|
951
1006
|
* Describes the message fermata.v1.BuildGoldenDatasetRequest.
|
|
952
1007
|
* Use `create(BuildGoldenDatasetRequestSchema)` to create a new message.
|
|
953
1008
|
*/
|
|
954
|
-
export const BuildGoldenDatasetRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1009
|
+
export const BuildGoldenDatasetRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 198);
|
|
955
1010
|
/**
|
|
956
1011
|
* Describes the message fermata.v1.BuildGoldenDatasetResponse.
|
|
957
1012
|
* Use `create(BuildGoldenDatasetResponseSchema)` to create a new message.
|
|
958
1013
|
*/
|
|
959
|
-
export const BuildGoldenDatasetResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1014
|
+
export const BuildGoldenDatasetResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 199);
|
|
960
1015
|
/**
|
|
961
1016
|
* Describes the message fermata.v1.ProductionTraceMessage.
|
|
962
1017
|
* Use `create(ProductionTraceMessageSchema)` to create a new message.
|
|
963
1018
|
*/
|
|
964
|
-
export const ProductionTraceMessageSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1019
|
+
export const ProductionTraceMessageSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 200);
|
|
965
1020
|
/**
|
|
966
1021
|
* Describes the message fermata.v1.ProductionTraceRecord.
|
|
967
1022
|
* Use `create(ProductionTraceRecordSchema)` to create a new message.
|
|
968
1023
|
*/
|
|
969
|
-
export const ProductionTraceRecordSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1024
|
+
export const ProductionTraceRecordSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 201);
|
|
970
1025
|
/**
|
|
971
1026
|
* Describes the message fermata.v1.MaterializedProductionTrace.
|
|
972
1027
|
* Use `create(MaterializedProductionTraceSchema)` to create a new message.
|
|
973
1028
|
*/
|
|
974
|
-
export const MaterializedProductionTraceSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1029
|
+
export const MaterializedProductionTraceSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 202);
|
|
975
1030
|
/**
|
|
976
1031
|
* Describes the message fermata.v1.IngestProductionTracesRequest.
|
|
977
1032
|
* Use `create(IngestProductionTracesRequestSchema)` to create a new message.
|
|
978
1033
|
*/
|
|
979
|
-
export const IngestProductionTracesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1034
|
+
export const IngestProductionTracesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 203);
|
|
980
1035
|
/**
|
|
981
1036
|
* Describes the message fermata.v1.BuildProductionTraceRegressionSuiteRequest.
|
|
982
1037
|
* Use `create(BuildProductionTraceRegressionSuiteRequestSchema)` to create a new message.
|
|
983
1038
|
*/
|
|
984
|
-
export const BuildProductionTraceRegressionSuiteRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1039
|
+
export const BuildProductionTraceRegressionSuiteRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 204);
|
|
985
1040
|
/**
|
|
986
1041
|
* Describes the message fermata.v1.IngestProductionTracesResponse.
|
|
987
1042
|
* Use `create(IngestProductionTracesResponseSchema)` to create a new message.
|
|
988
1043
|
*/
|
|
989
|
-
export const IngestProductionTracesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1044
|
+
export const IngestProductionTracesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 205);
|
|
990
1045
|
/**
|
|
991
1046
|
* Describes the message fermata.v1.BuildProductionTraceRegressionSuiteResponse.
|
|
992
1047
|
* Use `create(BuildProductionTraceRegressionSuiteResponseSchema)` to create a new message.
|
|
993
1048
|
*/
|
|
994
|
-
export const BuildProductionTraceRegressionSuiteResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1049
|
+
export const BuildProductionTraceRegressionSuiteResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 206);
|
|
995
1050
|
/**
|
|
996
1051
|
* Describes the message fermata.v1.ListProductionTraceSamplesRequest.
|
|
997
1052
|
* Use `create(ListProductionTraceSamplesRequestSchema)` to create a new message.
|
|
998
1053
|
*/
|
|
999
|
-
export const ListProductionTraceSamplesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1054
|
+
export const ListProductionTraceSamplesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 207);
|
|
1000
1055
|
/**
|
|
1001
1056
|
* Describes the message fermata.v1.ProductionTraceSample.
|
|
1002
1057
|
* Use `create(ProductionTraceSampleSchema)` to create a new message.
|
|
1003
1058
|
*/
|
|
1004
|
-
export const ProductionTraceSampleSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1059
|
+
export const ProductionTraceSampleSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 208);
|
|
1005
1060
|
/**
|
|
1006
1061
|
* Describes the message fermata.v1.ListProductionTraceSamplesResponse.
|
|
1007
1062
|
* Use `create(ListProductionTraceSamplesResponseSchema)` to create a new message.
|
|
1008
1063
|
*/
|
|
1009
|
-
export const ListProductionTraceSamplesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1064
|
+
export const ListProductionTraceSamplesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 209);
|
|
1010
1065
|
/**
|
|
1011
1066
|
* Describes the message fermata.v1.ProductionTraceReplayCase.
|
|
1012
1067
|
* Use `create(ProductionTraceReplayCaseSchema)` to create a new message.
|
|
1013
1068
|
*/
|
|
1014
|
-
export const ProductionTraceReplayCaseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1069
|
+
export const ProductionTraceReplayCaseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 210);
|
|
1015
1070
|
/**
|
|
1016
1071
|
* Describes the message fermata.v1.ProductionTraceReplayRegression.
|
|
1017
1072
|
* Use `create(ProductionTraceReplayRegressionSchema)` to create a new message.
|
|
1018
1073
|
*/
|
|
1019
|
-
export const ProductionTraceReplayRegressionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1074
|
+
export const ProductionTraceReplayRegressionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 211);
|
|
1020
1075
|
/**
|
|
1021
1076
|
* Describes the message fermata.v1.ProductionTraceReplaySummary.
|
|
1022
1077
|
* Use `create(ProductionTraceReplaySummarySchema)` to create a new message.
|
|
1023
1078
|
*/
|
|
1024
|
-
export const ProductionTraceReplaySummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1079
|
+
export const ProductionTraceReplaySummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 212);
|
|
1025
1080
|
/**
|
|
1026
1081
|
* Describes the message fermata.v1.CompareProductionTraceReplayRequest.
|
|
1027
1082
|
* Use `create(CompareProductionTraceReplayRequestSchema)` to create a new message.
|
|
1028
1083
|
*/
|
|
1029
|
-
export const CompareProductionTraceReplayRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1084
|
+
export const CompareProductionTraceReplayRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 213);
|
|
1030
1085
|
/**
|
|
1031
1086
|
* Describes the message fermata.v1.CompareProductionTraceReplayResponse.
|
|
1032
1087
|
* Use `create(CompareProductionTraceReplayResponseSchema)` to create a new message.
|
|
1033
1088
|
*/
|
|
1034
|
-
export const CompareProductionTraceReplayResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1089
|
+
export const CompareProductionTraceReplayResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 214);
|
|
1035
1090
|
/**
|
|
1036
1091
|
* Describes the message fermata.v1.GuardrailPromotion.
|
|
1037
1092
|
* Use `create(GuardrailPromotionSchema)` to create a new message.
|
|
1038
1093
|
*/
|
|
1039
|
-
export const GuardrailPromotionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1094
|
+
export const GuardrailPromotionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 215);
|
|
1040
1095
|
/**
|
|
1041
1096
|
* Describes the message fermata.v1.PromoteEvaluationToGuardrailRequest.
|
|
1042
1097
|
* Use `create(PromoteEvaluationToGuardrailRequestSchema)` to create a new message.
|
|
1043
1098
|
*/
|
|
1044
|
-
export const PromoteEvaluationToGuardrailRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1099
|
+
export const PromoteEvaluationToGuardrailRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 216);
|
|
1045
1100
|
/**
|
|
1046
1101
|
* Describes the message fermata.v1.PromoteEvaluationToGuardrailResponse.
|
|
1047
1102
|
* Use `create(PromoteEvaluationToGuardrailResponseSchema)` to create a new message.
|
|
1048
1103
|
*/
|
|
1049
|
-
export const PromoteEvaluationToGuardrailResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1104
|
+
export const PromoteEvaluationToGuardrailResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 217);
|
|
1050
1105
|
/**
|
|
1051
1106
|
* Describes the message fermata.v1.GetGuardrailPromotionRequest.
|
|
1052
1107
|
* Use `create(GetGuardrailPromotionRequestSchema)` to create a new message.
|
|
1053
1108
|
*/
|
|
1054
|
-
export const GetGuardrailPromotionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1109
|
+
export const GetGuardrailPromotionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 218);
|
|
1055
1110
|
/**
|
|
1056
1111
|
* Describes the message fermata.v1.GetGuardrailPromotionResponse.
|
|
1057
1112
|
* Use `create(GetGuardrailPromotionResponseSchema)` to create a new message.
|
|
1058
1113
|
*/
|
|
1059
|
-
export const GetGuardrailPromotionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1114
|
+
export const GetGuardrailPromotionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 219);
|
|
1060
1115
|
/**
|
|
1061
1116
|
* Describes the message fermata.v1.ScoreGuardrailPromotionRequest.
|
|
1062
1117
|
* Use `create(ScoreGuardrailPromotionRequestSchema)` to create a new message.
|
|
1063
1118
|
*/
|
|
1064
|
-
export const ScoreGuardrailPromotionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1119
|
+
export const ScoreGuardrailPromotionRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 220);
|
|
1065
1120
|
/**
|
|
1066
1121
|
* Describes the message fermata.v1.ScoreGuardrailPromotionResponse.
|
|
1067
1122
|
* Use `create(ScoreGuardrailPromotionResponseSchema)` to create a new message.
|
|
1068
1123
|
*/
|
|
1069
|
-
export const ScoreGuardrailPromotionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1124
|
+
export const ScoreGuardrailPromotionResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 221);
|
|
1070
1125
|
/**
|
|
1071
1126
|
* Describes the message fermata.v1.DiagnosticFinding.
|
|
1072
1127
|
* Use `create(DiagnosticFindingSchema)` to create a new message.
|
|
1073
1128
|
*/
|
|
1074
|
-
export const DiagnosticFindingSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1129
|
+
export const DiagnosticFindingSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 222);
|
|
1075
1130
|
/**
|
|
1076
1131
|
* Describes the message fermata.v1.EvaluationDiagnosticArtifact.
|
|
1077
1132
|
* Use `create(EvaluationDiagnosticArtifactSchema)` to create a new message.
|
|
1078
1133
|
*/
|
|
1079
|
-
export const EvaluationDiagnosticArtifactSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1134
|
+
export const EvaluationDiagnosticArtifactSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 223);
|
|
1080
1135
|
/**
|
|
1081
1136
|
* Describes the message fermata.v1.ExplainScenarioRunRequest.
|
|
1082
1137
|
* Use `create(ExplainScenarioRunRequestSchema)` to create a new message.
|
|
1083
1138
|
*/
|
|
1084
|
-
export const ExplainScenarioRunRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1139
|
+
export const ExplainScenarioRunRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 224);
|
|
1085
1140
|
/**
|
|
1086
1141
|
* Describes the message fermata.v1.ExplainScenarioRunResponse.
|
|
1087
1142
|
* Use `create(ExplainScenarioRunResponseSchema)` to create a new message.
|
|
1088
1143
|
*/
|
|
1089
|
-
export const ExplainScenarioRunResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1144
|
+
export const ExplainScenarioRunResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 225);
|
|
1090
1145
|
/**
|
|
1091
1146
|
* Describes the message fermata.v1.AnalyzeScenarioRunRootCauseRequest.
|
|
1092
1147
|
* Use `create(AnalyzeScenarioRunRootCauseRequestSchema)` to create a new message.
|
|
1093
1148
|
*/
|
|
1094
|
-
export const AnalyzeScenarioRunRootCauseRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1149
|
+
export const AnalyzeScenarioRunRootCauseRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 226);
|
|
1095
1150
|
/**
|
|
1096
1151
|
* Describes the message fermata.v1.AnalyzeScenarioRunRootCauseResponse.
|
|
1097
1152
|
* Use `create(AnalyzeScenarioRunRootCauseResponseSchema)` to create a new message.
|
|
1098
1153
|
*/
|
|
1099
|
-
export const AnalyzeScenarioRunRootCauseResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1154
|
+
export const AnalyzeScenarioRunRootCauseResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 227);
|
|
1100
1155
|
/**
|
|
1101
1156
|
* Describes the message fermata.v1.JudgeValidationAccuracyMetrics.
|
|
1102
1157
|
* Use `create(JudgeValidationAccuracyMetricsSchema)` to create a new message.
|
|
1103
1158
|
*/
|
|
1104
|
-
export const JudgeValidationAccuracyMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1159
|
+
export const JudgeValidationAccuracyMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 228);
|
|
1105
1160
|
/**
|
|
1106
1161
|
* Describes the message fermata.v1.JudgeValidationConfusionMatrix.
|
|
1107
1162
|
* Use `create(JudgeValidationConfusionMatrixSchema)` to create a new message.
|
|
1108
1163
|
*/
|
|
1109
|
-
export const JudgeValidationConfusionMatrixSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1164
|
+
export const JudgeValidationConfusionMatrixSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 229);
|
|
1110
1165
|
/**
|
|
1111
1166
|
* Describes the message fermata.v1.JudgeValidationBiasMetrics.
|
|
1112
1167
|
* Use `create(JudgeValidationBiasMetricsSchema)` to create a new message.
|
|
1113
1168
|
*/
|
|
1114
|
-
export const JudgeValidationBiasMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1169
|
+
export const JudgeValidationBiasMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 230);
|
|
1115
1170
|
/**
|
|
1116
1171
|
* Describes the message fermata.v1.JudgeValidationCalibration.
|
|
1117
1172
|
* Use `create(JudgeValidationCalibrationSchema)` to create a new message.
|
|
1118
1173
|
*/
|
|
1119
|
-
export const JudgeValidationCalibrationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1174
|
+
export const JudgeValidationCalibrationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 231);
|
|
1120
1175
|
/**
|
|
1121
1176
|
* Describes the message fermata.v1.JudgeValidationEvaluation.
|
|
1122
1177
|
* Use `create(JudgeValidationEvaluationSchema)` to create a new message.
|
|
1123
1178
|
*/
|
|
1124
|
-
export const JudgeValidationEvaluationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1179
|
+
export const JudgeValidationEvaluationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 232);
|
|
1125
1180
|
/**
|
|
1126
1181
|
* Describes the message fermata.v1.JudgeCalibrationCandidate.
|
|
1127
1182
|
* Use `create(JudgeCalibrationCandidateSchema)` to create a new message.
|
|
1128
1183
|
*/
|
|
1129
|
-
export const JudgeCalibrationCandidateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1184
|
+
export const JudgeCalibrationCandidateSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 233);
|
|
1185
|
+
/**
|
|
1186
|
+
* Describes the message fermata.v1.JudgeValidationSourceMetrics.
|
|
1187
|
+
* Use `create(JudgeValidationSourceMetricsSchema)` to create a new message.
|
|
1188
|
+
*/
|
|
1189
|
+
export const JudgeValidationSourceMetricsSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 234);
|
|
1190
|
+
/**
|
|
1191
|
+
* Describes the message fermata.v1.JudgeCalibrationReport.
|
|
1192
|
+
* Use `create(JudgeCalibrationReportSchema)` to create a new message.
|
|
1193
|
+
*/
|
|
1194
|
+
export const JudgeCalibrationReportSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 235);
|
|
1130
1195
|
/**
|
|
1131
1196
|
* Describes the message fermata.v1.GetJudgeValidationAccuracyRequest.
|
|
1132
1197
|
* Use `create(GetJudgeValidationAccuracyRequestSchema)` to create a new message.
|
|
1133
1198
|
*/
|
|
1134
|
-
export const GetJudgeValidationAccuracyRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1199
|
+
export const GetJudgeValidationAccuracyRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 236);
|
|
1135
1200
|
/**
|
|
1136
1201
|
* Describes the message fermata.v1.GetJudgeValidationAccuracyResponse.
|
|
1137
1202
|
* Use `create(GetJudgeValidationAccuracyResponseSchema)` to create a new message.
|
|
1138
1203
|
*/
|
|
1139
|
-
export const GetJudgeValidationAccuracyResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1204
|
+
export const GetJudgeValidationAccuracyResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 237);
|
|
1140
1205
|
/**
|
|
1141
1206
|
* Describes the message fermata.v1.GetJudgeValidationConfusionMatrixRequest.
|
|
1142
1207
|
* Use `create(GetJudgeValidationConfusionMatrixRequestSchema)` to create a new message.
|
|
1143
1208
|
*/
|
|
1144
|
-
export const GetJudgeValidationConfusionMatrixRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1209
|
+
export const GetJudgeValidationConfusionMatrixRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 238);
|
|
1145
1210
|
/**
|
|
1146
1211
|
* Describes the message fermata.v1.GetJudgeValidationConfusionMatrixResponse.
|
|
1147
1212
|
* Use `create(GetJudgeValidationConfusionMatrixResponseSchema)` to create a new message.
|
|
1148
1213
|
*/
|
|
1149
|
-
export const GetJudgeValidationConfusionMatrixResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1214
|
+
export const GetJudgeValidationConfusionMatrixResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 239);
|
|
1150
1215
|
/**
|
|
1151
1216
|
* Describes the message fermata.v1.GetJudgeValidationBiasRequest.
|
|
1152
1217
|
* Use `create(GetJudgeValidationBiasRequestSchema)` to create a new message.
|
|
1153
1218
|
*/
|
|
1154
|
-
export const GetJudgeValidationBiasRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1219
|
+
export const GetJudgeValidationBiasRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 240);
|
|
1155
1220
|
/**
|
|
1156
1221
|
* Describes the message fermata.v1.GetJudgeValidationBiasResponse.
|
|
1157
1222
|
* Use `create(GetJudgeValidationBiasResponseSchema)` to create a new message.
|
|
1158
1223
|
*/
|
|
1159
|
-
export const GetJudgeValidationBiasResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1224
|
+
export const GetJudgeValidationBiasResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 241);
|
|
1225
|
+
/**
|
|
1226
|
+
* Describes the message fermata.v1.GetJudgeCalibrationReportRequest.
|
|
1227
|
+
* Use `create(GetJudgeCalibrationReportRequestSchema)` to create a new message.
|
|
1228
|
+
*/
|
|
1229
|
+
export const GetJudgeCalibrationReportRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 242);
|
|
1230
|
+
/**
|
|
1231
|
+
* Describes the message fermata.v1.GetJudgeCalibrationReportResponse.
|
|
1232
|
+
* Use `create(GetJudgeCalibrationReportResponseSchema)` to create a new message.
|
|
1233
|
+
*/
|
|
1234
|
+
export const GetJudgeCalibrationReportResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 243);
|
|
1160
1235
|
/**
|
|
1161
1236
|
* Describes the message fermata.v1.RecalibrateJudgeValidationRequest.
|
|
1162
1237
|
* Use `create(RecalibrateJudgeValidationRequestSchema)` to create a new message.
|
|
1163
1238
|
*/
|
|
1164
|
-
export const RecalibrateJudgeValidationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1239
|
+
export const RecalibrateJudgeValidationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 244);
|
|
1165
1240
|
/**
|
|
1166
1241
|
* Describes the message fermata.v1.RecalibrateJudgeValidationResponse.
|
|
1167
1242
|
* Use `create(RecalibrateJudgeValidationResponseSchema)` to create a new message.
|
|
1168
1243
|
*/
|
|
1169
|
-
export const RecalibrateJudgeValidationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1244
|
+
export const RecalibrateJudgeValidationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 245);
|
|
1170
1245
|
/**
|
|
1171
1246
|
* Describes the message fermata.v1.RecordJudgeValidationEvaluationRequest.
|
|
1172
1247
|
* Use `create(RecordJudgeValidationEvaluationRequestSchema)` to create a new message.
|
|
1173
1248
|
*/
|
|
1174
|
-
export const RecordJudgeValidationEvaluationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1249
|
+
export const RecordJudgeValidationEvaluationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 246);
|
|
1175
1250
|
/**
|
|
1176
1251
|
* Describes the message fermata.v1.RecordJudgeValidationEvaluationResponse.
|
|
1177
1252
|
* Use `create(RecordJudgeValidationEvaluationResponseSchema)` to create a new message.
|
|
1178
1253
|
*/
|
|
1179
|
-
export const RecordJudgeValidationEvaluationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1254
|
+
export const RecordJudgeValidationEvaluationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 247);
|
|
1180
1255
|
/**
|
|
1181
1256
|
* Describes the message fermata.v1.ValidateJudgeValidationEvaluationRequest.
|
|
1182
1257
|
* Use `create(ValidateJudgeValidationEvaluationRequestSchema)` to create a new message.
|
|
1183
1258
|
*/
|
|
1184
|
-
export const ValidateJudgeValidationEvaluationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1259
|
+
export const ValidateJudgeValidationEvaluationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 248);
|
|
1185
1260
|
/**
|
|
1186
1261
|
* Describes the message fermata.v1.ValidateJudgeValidationEvaluationResponse.
|
|
1187
1262
|
* Use `create(ValidateJudgeValidationEvaluationResponseSchema)` to create a new message.
|
|
1188
1263
|
*/
|
|
1189
|
-
export const ValidateJudgeValidationEvaluationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1264
|
+
export const ValidateJudgeValidationEvaluationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 249);
|
|
1190
1265
|
/**
|
|
1191
1266
|
* Describes the message fermata.v1.ListJudgeCalibrationCandidatesRequest.
|
|
1192
1267
|
* Use `create(ListJudgeCalibrationCandidatesRequestSchema)` to create a new message.
|
|
1193
1268
|
*/
|
|
1194
|
-
export const ListJudgeCalibrationCandidatesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1269
|
+
export const ListJudgeCalibrationCandidatesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 250);
|
|
1195
1270
|
/**
|
|
1196
1271
|
* Describes the message fermata.v1.ListJudgeCalibrationCandidatesResponse.
|
|
1197
1272
|
* Use `create(ListJudgeCalibrationCandidatesResponseSchema)` to create a new message.
|
|
1198
1273
|
*/
|
|
1199
|
-
export const ListJudgeCalibrationCandidatesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1274
|
+
export const ListJudgeCalibrationCandidatesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 251);
|
|
1200
1275
|
/**
|
|
1201
1276
|
* Describes the message fermata.v1.QualityGateConfig.
|
|
1202
1277
|
* Use `create(QualityGateConfigSchema)` to create a new message.
|
|
1203
1278
|
*/
|
|
1204
|
-
export const QualityGateConfigSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1279
|
+
export const QualityGateConfigSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 252);
|
|
1205
1280
|
/**
|
|
1206
1281
|
* Describes the message fermata.v1.QualityGateCriterion.
|
|
1207
1282
|
* Use `create(QualityGateCriterionSchema)` to create a new message.
|
|
1208
1283
|
*/
|
|
1209
|
-
export const QualityGateCriterionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1284
|
+
export const QualityGateCriterionSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 253);
|
|
1210
1285
|
/**
|
|
1211
1286
|
* Describes the message fermata.v1.QualityGateViolation.
|
|
1212
1287
|
* Use `create(QualityGateViolationSchema)` to create a new message.
|
|
1213
1288
|
*/
|
|
1214
|
-
export const QualityGateViolationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1289
|
+
export const QualityGateViolationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 254);
|
|
1215
1290
|
/**
|
|
1216
1291
|
* Describes the message fermata.v1.QualityGateSummary.
|
|
1217
1292
|
* Use `create(QualityGateSummarySchema)` to create a new message.
|
|
1218
1293
|
*/
|
|
1219
|
-
export const QualityGateSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1294
|
+
export const QualityGateSummarySchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 255);
|
|
1220
1295
|
/**
|
|
1221
1296
|
* Describes the message fermata.v1.QualityGateResult.
|
|
1222
1297
|
* Use `create(QualityGateResultSchema)` to create a new message.
|
|
1223
1298
|
*/
|
|
1224
|
-
export const QualityGateResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1299
|
+
export const QualityGateResultSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 256);
|
|
1225
1300
|
/**
|
|
1226
1301
|
* Describes the message fermata.v1.QualityGatePagination.
|
|
1227
1302
|
* Use `create(QualityGatePaginationSchema)` to create a new message.
|
|
1228
1303
|
*/
|
|
1229
|
-
export const QualityGatePaginationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1304
|
+
export const QualityGatePaginationSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 257);
|
|
1230
1305
|
/**
|
|
1231
1306
|
* Describes the message fermata.v1.GetQualityGateDefaultsRequest.
|
|
1232
1307
|
* Use `create(GetQualityGateDefaultsRequestSchema)` to create a new message.
|
|
1233
1308
|
*/
|
|
1234
|
-
export const GetQualityGateDefaultsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1309
|
+
export const GetQualityGateDefaultsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 258);
|
|
1235
1310
|
/**
|
|
1236
1311
|
* Describes the message fermata.v1.GetQualityGateDefaultsResponse.
|
|
1237
1312
|
* Use `create(GetQualityGateDefaultsResponseSchema)` to create a new message.
|
|
1238
1313
|
*/
|
|
1239
|
-
export const GetQualityGateDefaultsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1314
|
+
export const GetQualityGateDefaultsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 259);
|
|
1240
1315
|
/**
|
|
1241
1316
|
* Describes the message fermata.v1.ListQualityGateConfigsRequest.
|
|
1242
1317
|
* Use `create(ListQualityGateConfigsRequestSchema)` to create a new message.
|
|
1243
1318
|
*/
|
|
1244
|
-
export const ListQualityGateConfigsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1319
|
+
export const ListQualityGateConfigsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 260);
|
|
1245
1320
|
/**
|
|
1246
1321
|
* Describes the message fermata.v1.ListQualityGateConfigsResponse.
|
|
1247
1322
|
* Use `create(ListQualityGateConfigsResponseSchema)` to create a new message.
|
|
1248
1323
|
*/
|
|
1249
|
-
export const ListQualityGateConfigsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1324
|
+
export const ListQualityGateConfigsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 261);
|
|
1250
1325
|
/**
|
|
1251
1326
|
* Describes the message fermata.v1.GetQualityGateConfigRequest.
|
|
1252
1327
|
* Use `create(GetQualityGateConfigRequestSchema)` to create a new message.
|
|
1253
1328
|
*/
|
|
1254
|
-
export const GetQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1329
|
+
export const GetQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 262);
|
|
1255
1330
|
/**
|
|
1256
1331
|
* Describes the message fermata.v1.GetQualityGateConfigResponse.
|
|
1257
1332
|
* Use `create(GetQualityGateConfigResponseSchema)` to create a new message.
|
|
1258
1333
|
*/
|
|
1259
|
-
export const GetQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1334
|
+
export const GetQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 263);
|
|
1260
1335
|
/**
|
|
1261
1336
|
* Describes the message fermata.v1.UpsertQualityGateConfigRequest.
|
|
1262
1337
|
* Use `create(UpsertQualityGateConfigRequestSchema)` to create a new message.
|
|
1263
1338
|
*/
|
|
1264
|
-
export const UpsertQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1339
|
+
export const UpsertQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 264);
|
|
1265
1340
|
/**
|
|
1266
1341
|
* Describes the message fermata.v1.UpsertQualityGateConfigResponse.
|
|
1267
1342
|
* Use `create(UpsertQualityGateConfigResponseSchema)` to create a new message.
|
|
1268
1343
|
*/
|
|
1269
|
-
export const UpsertQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1344
|
+
export const UpsertQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 265);
|
|
1270
1345
|
/**
|
|
1271
1346
|
* Describes the message fermata.v1.ResetQualityGateConfigRequest.
|
|
1272
1347
|
* Use `create(ResetQualityGateConfigRequestSchema)` to create a new message.
|
|
1273
1348
|
*/
|
|
1274
|
-
export const ResetQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1349
|
+
export const ResetQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 266);
|
|
1275
1350
|
/**
|
|
1276
1351
|
* Describes the message fermata.v1.ResetQualityGateConfigResponse.
|
|
1277
1352
|
* Use `create(ResetQualityGateConfigResponseSchema)` to create a new message.
|
|
1278
1353
|
*/
|
|
1279
|
-
export const ResetQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1354
|
+
export const ResetQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 267);
|
|
1280
1355
|
/**
|
|
1281
1356
|
* Describes the message fermata.v1.EvaluateQualityGateRequest.
|
|
1282
1357
|
* Use `create(EvaluateQualityGateRequestSchema)` to create a new message.
|
|
1283
1358
|
*/
|
|
1284
|
-
export const EvaluateQualityGateRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1359
|
+
export const EvaluateQualityGateRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 268);
|
|
1285
1360
|
/**
|
|
1286
1361
|
* Describes the message fermata.v1.EvaluateQualityGateResponse.
|
|
1287
1362
|
* Use `create(EvaluateQualityGateResponseSchema)` to create a new message.
|
|
1288
1363
|
*/
|
|
1289
|
-
export const EvaluateQualityGateResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1364
|
+
export const EvaluateQualityGateResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 269);
|
|
1290
1365
|
/**
|
|
1291
1366
|
* Describes the message fermata.v1.BatchEvaluateQualityGatesRequest.
|
|
1292
1367
|
* Use `create(BatchEvaluateQualityGatesRequestSchema)` to create a new message.
|
|
1293
1368
|
*/
|
|
1294
|
-
export const BatchEvaluateQualityGatesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1369
|
+
export const BatchEvaluateQualityGatesRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 270);
|
|
1295
1370
|
/**
|
|
1296
1371
|
* Describes the message fermata.v1.BatchEvaluateQualityGatesResponse.
|
|
1297
1372
|
* Use `create(BatchEvaluateQualityGatesResponseSchema)` to create a new message.
|
|
1298
1373
|
*/
|
|
1299
|
-
export const BatchEvaluateQualityGatesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1374
|
+
export const BatchEvaluateQualityGatesResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 271);
|
|
1300
1375
|
/**
|
|
1301
1376
|
* Describes the message fermata.v1.GetQualityGateEvaluationRequest.
|
|
1302
1377
|
* Use `create(GetQualityGateEvaluationRequestSchema)` to create a new message.
|
|
1303
1378
|
*/
|
|
1304
|
-
export const GetQualityGateEvaluationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1379
|
+
export const GetQualityGateEvaluationRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 272);
|
|
1305
1380
|
/**
|
|
1306
1381
|
* Describes the message fermata.v1.GetQualityGateEvaluationResponse.
|
|
1307
1382
|
* Use `create(GetQualityGateEvaluationResponseSchema)` to create a new message.
|
|
1308
1383
|
*/
|
|
1309
|
-
export const GetQualityGateEvaluationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1384
|
+
export const GetQualityGateEvaluationResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 273);
|
|
1310
1385
|
/**
|
|
1311
1386
|
* Describes the message fermata.v1.ListQualityGateResultsRequest.
|
|
1312
1387
|
* Use `create(ListQualityGateResultsRequestSchema)` to create a new message.
|
|
1313
1388
|
*/
|
|
1314
|
-
export const ListQualityGateResultsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1389
|
+
export const ListQualityGateResultsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 274);
|
|
1315
1390
|
/**
|
|
1316
1391
|
* Describes the message fermata.v1.ListQualityGateResultsResponse.
|
|
1317
1392
|
* Use `create(ListQualityGateResultsResponseSchema)` to create a new message.
|
|
1318
1393
|
*/
|
|
1319
|
-
export const ListQualityGateResultsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1394
|
+
export const ListQualityGateResultsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 275);
|
|
1320
1395
|
/**
|
|
1321
1396
|
* Describes the message fermata.v1.GetQualityGateMetricsRequest.
|
|
1322
1397
|
* Use `create(GetQualityGateMetricsRequestSchema)` to create a new message.
|
|
1323
1398
|
*/
|
|
1324
|
-
export const GetQualityGateMetricsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1399
|
+
export const GetQualityGateMetricsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 276);
|
|
1325
1400
|
/**
|
|
1326
1401
|
* Describes the message fermata.v1.GetQualityGateMetricsResponse.
|
|
1327
1402
|
* Use `create(GetQualityGateMetricsResponseSchema)` to create a new message.
|
|
1328
1403
|
*/
|
|
1329
|
-
export const GetQualityGateMetricsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1404
|
+
export const GetQualityGateMetricsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 277);
|
|
1330
1405
|
/**
|
|
1331
1406
|
* Describes the message fermata.v1.GetQualityGateStatsRequest.
|
|
1332
1407
|
* Use `create(GetQualityGateStatsRequestSchema)` to create a new message.
|
|
1333
1408
|
*/
|
|
1334
|
-
export const GetQualityGateStatsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1409
|
+
export const GetQualityGateStatsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 278);
|
|
1335
1410
|
/**
|
|
1336
1411
|
* Describes the message fermata.v1.GetQualityGateStatsResponse.
|
|
1337
1412
|
* Use `create(GetQualityGateStatsResponseSchema)` to create a new message.
|
|
1338
1413
|
*/
|
|
1339
|
-
export const GetQualityGateStatsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1414
|
+
export const GetQualityGateStatsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 279);
|
|
1340
1415
|
/**
|
|
1341
1416
|
* Describes the message fermata.v1.ValidateQualityGateConfigRequest.
|
|
1342
1417
|
* Use `create(ValidateQualityGateConfigRequestSchema)` to create a new message.
|
|
1343
1418
|
*/
|
|
1344
|
-
export const ValidateQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1419
|
+
export const ValidateQualityGateConfigRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 280);
|
|
1345
1420
|
/**
|
|
1346
1421
|
* Describes the message fermata.v1.ValidateQualityGateConfigResponse.
|
|
1347
1422
|
* Use `create(ValidateQualityGateConfigResponseSchema)` to create a new message.
|
|
1348
1423
|
*/
|
|
1349
|
-
export const ValidateQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1424
|
+
export const ValidateQualityGateConfigResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 281);
|
|
1350
1425
|
/**
|
|
1351
1426
|
* Describes the message fermata.v1.QualityGateRegressionBudgetWaiver.
|
|
1352
1427
|
* Use `create(QualityGateRegressionBudgetWaiverSchema)` to create a new message.
|
|
1353
1428
|
*/
|
|
1354
|
-
export const QualityGateRegressionBudgetWaiverSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1429
|
+
export const QualityGateRegressionBudgetWaiverSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 282);
|
|
1355
1430
|
/**
|
|
1356
1431
|
* Describes the message fermata.v1.EvaluateQualityGateRegressionBudgetRequest.
|
|
1357
1432
|
* Use `create(EvaluateQualityGateRegressionBudgetRequestSchema)` to create a new message.
|
|
1358
1433
|
*/
|
|
1359
|
-
export const EvaluateQualityGateRegressionBudgetRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1434
|
+
export const EvaluateQualityGateRegressionBudgetRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 283);
|
|
1360
1435
|
/**
|
|
1361
1436
|
* Describes the message fermata.v1.EvaluateQualityGateRegressionBudgetResponse.
|
|
1362
1437
|
* Use `create(EvaluateQualityGateRegressionBudgetResponseSchema)` to create a new message.
|
|
1363
1438
|
*/
|
|
1364
|
-
export const EvaluateQualityGateRegressionBudgetResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1439
|
+
export const EvaluateQualityGateRegressionBudgetResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 284);
|
|
1365
1440
|
/**
|
|
1366
1441
|
* Describes the message fermata.v1.EvaluatePublicFeatureFlagsRequest.
|
|
1367
1442
|
* Use `create(EvaluatePublicFeatureFlagsRequestSchema)` to create a new message.
|
|
1368
1443
|
*/
|
|
1369
|
-
export const EvaluatePublicFeatureFlagsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1444
|
+
export const EvaluatePublicFeatureFlagsRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 285);
|
|
1370
1445
|
/**
|
|
1371
1446
|
* Describes the message fermata.v1.EvaluatePublicFeatureFlagsResponse.
|
|
1372
1447
|
* Use `create(EvaluatePublicFeatureFlagsResponseSchema)` to create a new message.
|
|
1373
1448
|
*/
|
|
1374
|
-
export const EvaluatePublicFeatureFlagsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1449
|
+
export const EvaluatePublicFeatureFlagsResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 286);
|
|
1375
1450
|
/**
|
|
1376
1451
|
* Describes the message fermata.v1.GetMigrationStatusRequest.
|
|
1377
1452
|
* Use `create(GetMigrationStatusRequestSchema)` to create a new message.
|
|
1378
1453
|
*/
|
|
1379
|
-
export const GetMigrationStatusRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1454
|
+
export const GetMigrationStatusRequestSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 287);
|
|
1380
1455
|
/**
|
|
1381
1456
|
* Describes the message fermata.v1.RouteMigrationStatus.
|
|
1382
1457
|
* Use `create(RouteMigrationStatusSchema)` to create a new message.
|
|
1383
1458
|
*/
|
|
1384
|
-
export const RouteMigrationStatusSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1459
|
+
export const RouteMigrationStatusSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 288);
|
|
1385
1460
|
/**
|
|
1386
1461
|
* Describes the message fermata.v1.GetMigrationStatusResponse.
|
|
1387
1462
|
* Use `create(GetMigrationStatusResponseSchema)` to create a new message.
|
|
1388
1463
|
*/
|
|
1389
|
-
export const GetMigrationStatusResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata,
|
|
1464
|
+
export const GetMigrationStatusResponseSchema = /*@__PURE__*/ messageDesc(file_fermata_v1_fermata, 289);
|
|
1390
1465
|
/**
|
|
1391
1466
|
* @generated from enum fermata.v1.AssertionKind
|
|
1392
1467
|
*/
|
|
@@ -1488,6 +1563,14 @@ export var AssertionKind;
|
|
|
1488
1563
|
* @generated from enum value: ASSERTION_KIND_LLM_RUBRIC = 23;
|
|
1489
1564
|
*/
|
|
1490
1565
|
AssertionKind[AssertionKind["LLM_RUBRIC"] = 23] = "LLM_RUBRIC";
|
|
1566
|
+
/**
|
|
1567
|
+
* @generated from enum value: ASSERTION_KIND_LLM_PAIRWISE_RUBRIC = 24;
|
|
1568
|
+
*/
|
|
1569
|
+
AssertionKind[AssertionKind["LLM_PAIRWISE_RUBRIC"] = 24] = "LLM_PAIRWISE_RUBRIC";
|
|
1570
|
+
/**
|
|
1571
|
+
* @generated from enum value: ASSERTION_KIND_AGENT_TRAJECTORY = 25;
|
|
1572
|
+
*/
|
|
1573
|
+
AssertionKind[AssertionKind["AGENT_TRAJECTORY"] = 25] = "AGENT_TRAJECTORY";
|
|
1491
1574
|
})(AssertionKind || (AssertionKind = {}));
|
|
1492
1575
|
/**
|
|
1493
1576
|
* Describes the enum fermata.v1.AssertionKind.
|
|
@@ -1851,6 +1934,36 @@ export var AgentApprovalDecision;
|
|
|
1851
1934
|
* Describes the enum fermata.v1.AgentApprovalDecision.
|
|
1852
1935
|
*/
|
|
1853
1936
|
export const AgentApprovalDecisionSchema = /*@__PURE__*/ enumDesc(file_fermata_v1_fermata, 11);
|
|
1937
|
+
/**
|
|
1938
|
+
* @generated from enum fermata.v1.JudgeCalibrationStatus
|
|
1939
|
+
*/
|
|
1940
|
+
export var JudgeCalibrationStatus;
|
|
1941
|
+
(function (JudgeCalibrationStatus) {
|
|
1942
|
+
/**
|
|
1943
|
+
* @generated from enum value: JUDGE_CALIBRATION_STATUS_UNSPECIFIED = 0;
|
|
1944
|
+
*/
|
|
1945
|
+
JudgeCalibrationStatus[JudgeCalibrationStatus["UNSPECIFIED"] = 0] = "UNSPECIFIED";
|
|
1946
|
+
/**
|
|
1947
|
+
* @generated from enum value: JUDGE_CALIBRATION_STATUS_READY = 1;
|
|
1948
|
+
*/
|
|
1949
|
+
JudgeCalibrationStatus[JudgeCalibrationStatus["READY"] = 1] = "READY";
|
|
1950
|
+
/**
|
|
1951
|
+
* @generated from enum value: JUDGE_CALIBRATION_STATUS_NEEDS_LABELS = 2;
|
|
1952
|
+
*/
|
|
1953
|
+
JudgeCalibrationStatus[JudgeCalibrationStatus["NEEDS_LABELS"] = 2] = "NEEDS_LABELS";
|
|
1954
|
+
/**
|
|
1955
|
+
* @generated from enum value: JUDGE_CALIBRATION_STATUS_NEEDS_ACCURACY = 3;
|
|
1956
|
+
*/
|
|
1957
|
+
JudgeCalibrationStatus[JudgeCalibrationStatus["NEEDS_ACCURACY"] = 3] = "NEEDS_ACCURACY";
|
|
1958
|
+
/**
|
|
1959
|
+
* @generated from enum value: JUDGE_CALIBRATION_STATUS_NEEDS_BIAS_REVIEW = 4;
|
|
1960
|
+
*/
|
|
1961
|
+
JudgeCalibrationStatus[JudgeCalibrationStatus["NEEDS_BIAS_REVIEW"] = 4] = "NEEDS_BIAS_REVIEW";
|
|
1962
|
+
})(JudgeCalibrationStatus || (JudgeCalibrationStatus = {}));
|
|
1963
|
+
/**
|
|
1964
|
+
* Describes the enum fermata.v1.JudgeCalibrationStatus.
|
|
1965
|
+
*/
|
|
1966
|
+
export const JudgeCalibrationStatusSchema = /*@__PURE__*/ enumDesc(file_fermata_v1_fermata, 12);
|
|
1854
1967
|
/**
|
|
1855
1968
|
* FermataService is the Go control-plane surface for migrated Fermata routes.
|
|
1856
1969
|
*
|