UNPKG

@gitpod/sdk

Version:
295 lines 94.1 kB
"use strict"; // @generated by protoc-gen-es v2.11.0 with parameter "target=ts" // @generated from file gitpod/v1/agent.proto (package gitpod.v1, syntax proto3) /* eslint-disable */ Object.defineProperty(exports, "__esModule", { value: true }); exports.NextStepsProposal_ActionSchema = exports.NextStepsProposalSchema = exports.ClarifyingQuestions_QuestionSchema = exports.ClarifyingQuestions_ChoiceSchema = exports.ClarifyingQuestionsSchema = exports.AgentExecution_PhaseSchema = exports.AgentExecution_Phase = exports.AgentExecution_WaitingInfo_InterestSchema = exports.AgentExecution_WaitingInfo_DevcontainerRebuildInterestSchema = exports.AgentExecution_WaitingInfo_EnvironmentInterestSchema = exports.AgentExecution_WaitingInfo_UserMessageInterestSchema = exports.AgentExecution_WaitingInfo_SubAgentInterestSchema = exports.AgentExecution_WaitingInfo_TimerInterestSchema = exports.AgentExecution_WaitingInfoSchema = exports.AgentExecution_Status_Goal_GoalStatusSchema = exports.AgentExecution_Status_Goal_GoalStatus = exports.AgentExecution_Status_GoalSchema = exports.AgentExecution_Status_MCPIntegrationStatusSchema = exports.AgentExecution_Status_LLMCapabilitiesSchema = exports.AgentExecution_Status_OutputValueSchema = exports.AgentExecution_Status_SubagentSchema = exports.AgentExecution_Status_ConversationURLsSchema = exports.AgentExecution_Status_EnvironmentUsageSchema = exports.AgentExecution_Status_CurrentOperationSchema = exports.AgentExecution_Status_LLMSchema = exports.AgentExecution_Status_ToolUseSchema = exports.AgentExecution_StatusSchema = exports.AgentExecution_Spec_LimitsSchema = exports.AgentExecution_SpecSchema = exports.AgentExecution_MetadataSchema = exports.AgentExecutionSchema = exports.DeleteAgentExecutionResponseSchema = exports.DeleteAgentExecutionRequestSchema = exports.GetAgentExecutionResponseSchema = exports.GetAgentExecutionRequestSchema = exports.ListAgentExecutionsResponseSchema = exports.ListAgentExecutionsRequest_FilterSchema = exports.ListAgentExecutionsRequestSchema = exports.StartAgentResponseSchema = exports.StartAgentRequestSchema = exports.AgentCodeContext_ContextURLSchema = exports.AgentCodeContextSchema = exports.AgentMetadataSchema = exports.AgentSchema = exports.CodexSettingsSchema = exports.PullRequest_StateSchema = exports.PullRequest_State = exports.PullRequest_RepositorySchema = exports.PullRequestSchema = exports.file_gitpod_v1_agent = void 0; exports.AgentControlInputSchema = exports.TurnOptionsSchema = exports.SendToAgentExecutionResponseSchema = exports.SendToAgentExecutionRequestSchema = exports.WakeEvent_DevcontainerPhaseReachedSchema = exports.WakeEvent_EnvironmentPhaseReachedSchema = exports.WakeEvent_LoopRetrigger_UnmetConditionSchema = exports.WakeEvent_LoopRetriggerSchema = exports.WakeEvent_TimerFiredSchema = exports.WakeEventSchema = exports.AgentMessage_RoleSchema = exports.AgentMessage_Role = exports.AgentMessage_TypeSchema = exports.AgentMessage_Type = exports.AgentMessageSchema = exports.UserInputMetadataSchema = exports.UserInputBlock_InputSchema = exports.UserInputBlock_ImageInputSchema = exports.UserInputBlock_TextInputSchema = exports.UserInputBlockSchema = exports.AgentResponseBlock_PhaseSchema = exports.AgentResponseBlock_Phase = exports.AgentResponseBlock_UserInputQueueUpdatedSchema = exports.AgentResponseBlock_AvailableCommandsSchema = exports.AgentResponseBlock_AvailableCommandSchema = exports.AgentResponseBlock_AgentModeChange_StateSchema = exports.AgentResponseBlock_AgentModeChange_State = exports.AgentResponseBlock_AgentModeChangeSchema = exports.AgentResponseBlock_UserInputBlockDeletedSchema = exports.AgentResponseBlock_UserInputBlockSeenSchema = exports.AgentResponseBlock_ThoughtSchema = exports.AgentResponseBlock_TodoItem_PhaseSchema = exports.AgentResponseBlock_TodoItem_Phase = exports.AgentResponseBlock_TodoItemSchema = exports.AgentResponseBlock_TodoGroupSchema = exports.AgentResponseBlock_CodeAnnotationSchema = exports.AgentResponseBlock_HostAuthenticationRequiredSchema = exports.AgentResponseBlock_EnvironmentCreationSchema = exports.AgentResponseBlock_FileModification_DiffSchema = exports.AgentResponseBlock_FileModification_DiffStatsSchema = exports.AgentResponseBlock_FileModification_DiffGroup_TypeSchema = exports.AgentResponseBlock_FileModification_DiffGroup_Type = exports.AgentResponseBlock_FileModification_DiffGroupSchema = exports.AgentResponseBlock_FileModificationSchema = exports.AgentResponseBlock_ActionCompletedSchema = exports.AgentResponseBlock_ActionStartedSchema = exports.AgentResponseBlock_TextOutput_TypeSchema = exports.AgentResponseBlock_TextOutput_Type = exports.AgentResponseBlock_TextOutputSchema = exports.AgentResponseBlockSchema = void 0; exports.AgentExecutionRole = exports.AgentExecutionFailureReasonSchema = exports.AgentExecutionFailureReason = exports.LLMDisabledCapabilitySchema = exports.LLMDisabledCapability = exports.CodexServiceTierSchema = exports.CodexServiceTier = exports.CodexReasoningEffortSchema = exports.CodexReasoningEffort = exports.CodexOpenAIModelSchema = exports.CodexOpenAIModel = exports.AgentModeSchema = exports.AgentMode = exports.DeletePromptResponseSchema = exports.DeletePromptRequestSchema = exports.UpdatePromptResponseSchema = exports.UpdatePromptRequest_SpecSchema = exports.UpdatePromptRequest_MetadataSchema = exports.UpdatePromptRequestSchema = exports.CreatePromptResponseSchema = exports.CreatePromptRequestSchema = exports.GetPromptResponseSchema = exports.GetPromptRequestSchema = exports.ListPromptsResponseSchema = exports.ListPromptsRequest_FilterSchema = exports.ListPromptsRequestSchema = exports.PromptSpecSchema = exports.PromptMetadataSchema = exports.PromptSchema = exports.MCPIntegrationSchema = exports.StopAgentExecutionResponseSchema = exports.StopAgentExecutionRequestSchema = exports.InEnvironmentAgentSpecSchema = exports.RunnerSideAgentSpec_PromptsSchema = exports.RunnerSideAgentSpecSchema = exports.CreateAgentExecutionTranscriptTokenResponseSchema = exports.CreateAgentExecutionTranscriptTokenRequestSchema = exports.CreateAgentExecutionConversationTokenResponseSchema = exports.CreateAgentExecutionConversationTokenRequestSchema = exports.PromptValidationErrorDetailsSchema = exports.AgentControlInput_MoveQueuedMessageSchema = exports.AgentControlInput_SteerQueuedMessageSchema = exports.AgentControlInput_Goal_SetSchema = exports.AgentControlInput_Goal_ClearSchema = exports.AgentControlInput_Goal_CompleteSchema = exports.AgentControlInput_Goal_ResumeSchema = exports.AgentControlInput_Goal_PauseSchema = exports.AgentControlInput_GoalSchema = exports.AgentControlInput_DeleteQueuedMessageSchema = exports.AgentControlInput_CompactSchema = void 0; exports.AgentService = exports.MCPIntegrationPhaseSchema = exports.MCPIntegrationPhase = exports.AgentExecutionRoleSchema = void 0; const codegenv2_1 = require("@bufbuild/protobuf/codegenv2"); const validate_pb_1 = require("../../buf/validate/validate_pb"); const environment_automation_pb_1 = require("./environment_automation_pb"); const identity_pb_1 = require("./identity_pb"); const model_pb_1 = require("./model_pb"); const pagination_pb_1 = require("./pagination_pb"); const wkt_1 = require("@bufbuild/protobuf/wkt"); /** * Describes the file gitpod/v1/agent.proto. */ exports.file_gitpod_v1_agent = (0, codegenv2_1.fileDesc)("ChVnaXRwb2QvdjEvYWdlbnQucHJvdG8SCWdpdHBvZC52MSKSAwoLUHVsbFJlcXVlc3QSCgoCaWQYASABKAkSDQoFdGl0bGUYAiABKAkSEwoLZnJvbV9icmFuY2gYAyABKAkSEQoJdG9fYnJhbmNoGAQgASgJEgsKA3VybBgFIAEoCRIOCgZhdXRob3IYBiABKAkSNQoKcmVwb3NpdG9yeRgHIAEoCzIhLmdpdHBvZC52MS5QdWxsUmVxdWVzdC5SZXBvc2l0b3J5Eg0KBWRyYWZ0GAggASgIEisKBXN0YXRlGAkgASgOMhwuZ2l0cG9kLnYxLlB1bGxSZXF1ZXN0LlN0YXRlEhAKCGhlYWRfc2hhGAogASgJGkoKClJlcG9zaXRvcnkSEQoJY2xvbmVfdXJsGAEgASgJEgwKBGhvc3QYAiABKAkSDQoFb3duZXIYAyABKAkSDAoEbmFtZRgEIAEoCSJSCgVTdGF0ZRIVChFTVEFURV9VTlNQRUNJRklFRBAAEg4KClNUQVRFX09QRU4QARIQCgxTVEFURV9DTE9TRUQQAhIQCgxTVEFURV9NRVJHRUQQAyLHAQoNQ29kZXhTZXR0aW5ncxI0CgVtb2RlbBgBIAEoDjIbLmdpdHBvZC52MS5Db2RleE9wZW5BSU1vZGVsQgi6SAWCAQIQARJDChByZWFzb25pbmdfZWZmb3J0GAIgASgOMh8uZ2l0cG9kLnYxLkNvZGV4UmVhc29uaW5nRWZmb3J0Qgi6SAWCAQIQARI7CgxzZXJ2aWNlX3RpZXIYAyABKA4yGy5naXRwb2QudjEuQ29kZXhTZXJ2aWNlVGllckIIukgFggECEAEi8wEKBUFnZW50EgoKAmlkGAEgASgJEioKCG1ldGFkYXRhGAIgASgLMhguZ2l0cG9kLnYxLkFnZW50TWV0YWRhdGESMAoEc3BlYxgDIAEoCzIeLmdpdHBvZC52MS5SdW5uZXJTaWRlQWdlbnRTcGVjQgIYARI1CgtydW5uZXJfc2lkZRgEIAEoCzIeLmdpdHBvZC52MS5SdW5uZXJTaWRlQWdlbnRTcGVjSAASOwoOaW5fZW52aXJvbm1lbnQYBSABKAsyIS5naXRwb2QudjEuSW5FbnZpcm9ubWVudEFnZW50U3BlY0gAQgwKCmFnZW50X3NwZWMiMgoNQWdlbnRNZXRhZGF0YRIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJIrECChBBZ2VudENvZGVDb250ZXh0Eh4KCnByb2plY3RfaWQYASABKAlCCLpIBXIDsAEBSAASIgoOZW52aXJvbm1lbnRfaWQYAiABKAlCCLpIBXIDsAEBSAASPQoLY29udGV4dF91cmwYAyABKAsyJi5naXRwb2QudjEuQWdlbnRDb2RlQ29udGV4dC5Db250ZXh0VVJMSAASMQoMcHVsbF9yZXF1ZXN0GAQgASgLMhYuZ2l0cG9kLnYxLlB1bGxSZXF1ZXN0SAGIAQEaSwoKQ29udGV4dFVSTBIVCgN1cmwYASABKAlCCLpIBXIDiAEBEiYKFGVudmlyb25tZW50X2NsYXNzX2lkGAIgASgJQgi6SAVyA7ABAUIJCgdjb250ZXh0Qg8KDV9wdWxsX3JlcXVlc3Qi+wMKEVN0YXJ0QWdlbnRSZXF1ZXN0Eh0KCGFnZW50X2lkGAEgASgJQgu6SAjYAQFyA7ABARIxCgxjb2RlX2NvbnRleHQYAiABKAsyGy5naXRwb2QudjEuQWdlbnRDb2RlQ29udGV4dBIVCgRuYW1lGAMgASgJQge6SARyAhhkEikKEndvcmtmbG93X2FjdGlvbl9pZBgEIAEoCUIIukgFcgOwAQFIAIgBARIiCgRtb2RlGAUgASgOMhQuZ2l0cG9kLnYxLkFnZW50TW9kZRIeCglydW5uZXJfaWQYBiABKAlCC7pICNgBAXIDsAEBEkIKC2Fubm90YXRpb25zGAcgAygLMi0uZ2l0cG9kLnYxLlN0YXJ0QWdlbnRSZXF1ZXN0LkFubm90YXRpb25zRW50cnkSHwoKc2Vzc2lvbl9pZBgIIAEoCUILukgI2AEBcgOwAQESMAoOY29kZXhfc2V0dGluZ3MYCSABKAsyGC5naXRwb2QudjEuQ29kZXhTZXR0aW5ncxIsCgx0dXJuX29wdGlvbnMYCiABKAsyFi5naXRwb2QudjEuVHVybk9wdGlvbnMaMgoQQW5ub3RhdGlvbnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQhUKE193b3JrZmxvd19hY3Rpb25faWQiOgoSU3RhcnRBZ2VudFJlc3BvbnNlEiQKEmFnZW50X2V4ZWN1dGlvbl9pZBgBIAEoCUIIukgFcgOwAQEiiQUKGkxpc3RBZ2VudEV4ZWN1dGlvbnNSZXF1ZXN0EjAKCnBhZ2luYXRpb24YASABKAsyHC5naXRwb2QudjEuUGFnaW5hdGlvblJlcXVlc3QSPAoGZmlsdGVyGAIgASgLMiwuZ2l0cG9kLnYxLkxpc3RBZ2VudEV4ZWN1dGlvbnNSZXF1ZXN0LkZpbHRlchr6AwoGRmlsdGVyEh0KCWFnZW50X2lkcxgBIAMoCUIKukgHkgEECAAQGRImCgtwcm9qZWN0X2lkcxgCIAMoCUIRukgOkgELCAAQGSIFcgOwAQESIwoPZW52aXJvbm1lbnRfaWRzGAMgAygJQgq6SAeSAQQIABAZEh8KC2NyZWF0b3JfaWRzGAQgAygJQgq6SAeSAQQIABAZEkIKDXN0YXR1c19waGFzZXMYBSADKA4yHy5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uUGhhc2VCCrpIB5IBBAgAEBkSPwoFcm9sZXMYBiADKA4yHS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb25Sb2xlQhG6SA6SAQsIABAZIgWCAQIQARJSCgthbm5vdGF0aW9ucxgHIAMoCzI9LmdpdHBvZC52MS5MaXN0QWdlbnRFeGVjdXRpb25zUmVxdWVzdC5GaWx0ZXIuQW5ub3RhdGlvbnNFbnRyeRImCgtzZXNzaW9uX2lkcxgIIAMoCUIRukgOkgELCAAQGSIFcgOwAQESLgoTYWdlbnRfZXhlY3V0aW9uX2lkcxgJIAMoCUIRukgOkgELCAAQZCIFcgOwAQEaMgoQQW5ub3RhdGlvbnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIoUBChtMaXN0QWdlbnRFeGVjdXRpb25zUmVzcG9uc2USMQoKcGFnaW5hdGlvbhgBIAEoCzIdLmdpdHBvZC52MS5QYWdpbmF0aW9uUmVzcG9uc2USMwoQYWdlbnRfZXhlY3V0aW9ucxgCIAMoCzIZLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbiJAChhHZXRBZ2VudEV4ZWN1dGlvblJlcXVlc3QSJAoSYWdlbnRfZXhlY3V0aW9uX2lkGAEgASgJQgi6SAVyA7ABASJPChlHZXRBZ2VudEV4ZWN1dGlvblJlc3BvbnNlEjIKD2FnZW50X2V4ZWN1dGlvbhgBIAEoCzIZLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbiJDChtEZWxldGVBZ2VudEV4ZWN1dGlvblJlcXVlc3QSJAoSYWdlbnRfZXhlY3V0aW9uX2lkGAEgASgJQgi6SAVyA7ABASIeChxEZWxldGVBZ2VudEV4ZWN1dGlvblJlc3BvbnNlIrQoCg5BZ2VudEV4ZWN1dGlvbhIKCgJpZBgBIAEoCRI0CghtZXRhZGF0YRgCIAEoCzIiLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5NZXRhZGF0YRIsCgRzcGVjGAMgASgLMh4uZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLlNwZWMSMAoGc3RhdHVzGAQgASgLMiAuZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLlN0YXR1cxq2AwoITWV0YWRhdGESDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIjCgdjcmVhdG9yGAMgASgLMhIuZ2l0cG9kLnYxLlN1YmplY3QSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASKwoEcm9sZRgGIAEoDjIdLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvblJvbGUSLAoSd29ya2Zsb3dfYWN0aW9uX2lkGAcgASgJQgu6SAjYAQFyA7ABAUgAiAEBEkgKC2Fubm90YXRpb25zGAggAygLMjMuZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLk1ldGFkYXRhLkFubm90YXRpb25zRW50cnkSEgoKc2Vzc2lvbl9pZBgJIAEoCRoyChBBbm5vdGF0aW9uc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCFQoTX3dvcmtmbG93X2FjdGlvbl9pZBqAAwoEU3BlYxIUCgxzcGVjX3ZlcnNpb24YASABKAQSDwoHc2Vzc2lvbhgCIAEoCRI2Cg1kZXNpcmVkX3BoYXNlGAMgASgOMh8uZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLlBoYXNlEhoKCGFnZW50X2lkGAQgASgJQgi6SAVyA7ABARIxCgxjb2RlX2NvbnRleHQYBSABKAsyGy5naXRwb2QudjEuQWdlbnRDb2RlQ29udGV4dBI1CgZsaW1pdHMYBiABKAsyJS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3BlYy5MaW1pdHMSMAoOY29kZXhfc2V0dGluZ3MYCSABKAsyGC5naXRwb2QudjEuQ29kZXhTZXR0aW5ncxpVCgZMaW1pdHMSFgoObWF4X2l0ZXJhdGlvbnMYASABKAMSGQoRbWF4X291dHB1dF90b2tlbnMYAiABKAMSGAoQbWF4X2lucHV0X3Rva2VucxgDIAEoA0oECAcQCEoECAgQCRqFGAoGU3RhdHVzEhYKDnN0YXR1c192ZXJzaW9uGAEgASgEEg8KB3Nlc3Npb24YAiABKAkSLgoFcGhhc2UYAyABKA4yHy5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uUGhhc2USFwoPZmFpbHVyZV9tZXNzYWdlGAQgASgJEhcKD3dhcm5pbmdfbWVzc2FnZRgFIAEoCRI+Cg5mYWlsdXJlX3JlYXNvbhgGIAEoDjImLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbkZhaWx1cmVSZWFzb24SGAoQY29udmVyc2F0aW9uX3VybBgKIAEoCRIWCg50cmFuc2NyaXB0X3VybBgLIAEoCRIaChJzdXBwb3J0X2J1bmRsZV91cmwYDCABKAkSTAoRY29udmVyc2F0aW9uX3VybHMYDSABKAsyMS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3RhdHVzLkNvbnZlcnNhdGlvblVSTHMSEgoKaXRlcmF0aW9ucxgUIAEoAxIZChFpbnB1dF90b2tlbnNfdXNlZBgVIAEoAxIaChJvdXRwdXRfdG9rZW5zX3VzZWQYFiABKAMSHQoVY29udGV4dF93aW5kb3dfbGVuZ3RoGBcgASgDEiMKG2NhY2hlZF9jcmVhdGlvbl90b2tlbnNfdXNlZBgYIAEoAxIgChhjYWNoZWRfaW5wdXRfdG9rZW5zX3VzZWQYGSABKAMSHAoUY29udGV4dF93aW5kb3dfbGltaXQYGiABKAMSEQoJanVkZ2VtZW50GB4gASgJEkwKEWN1cnJlbnRfb3BlcmF0aW9uGCggASgLMjEuZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLlN0YXR1cy5DdXJyZW50T3BlcmF0aW9uEkwKEXVzZWRfZW52aXJvbm1lbnRzGDIgAygLMjEuZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLlN0YXR1cy5FbnZpcm9ubWVudFVzYWdlEhgKEGN1cnJlbnRfYWN0aXZpdHkYPCABKAkSTwoHb3V0cHV0cxhGIAMoCzItLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5TdGF0dXMuT3V0cHV0c0VudHJ5Qg+6SAyaAQkiB3IFEAEYgAESMgoPc3VwcG9ydGVkX21vZGVsGFAgASgOMhkuZ2l0cG9kLnYxLlN1cHBvcnRlZE1vZGVsEkoKEGxsbV9jYXBhYmlsaXRpZXMYUSABKAsyMC5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3RhdHVzLkxMTUNhcGFiaWxpdGllcxIiCgRtb2RlGFogASgOMhQuZ2l0cG9kLnYxLkFnZW50TW9kZRJXChhtY3BfaW50ZWdyYXRpb25fc3RhdHVzZXMYZCADKAsyNS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3RhdHVzLk1DUEludGVncmF0aW9uU3RhdHVzEjsKDHdhaXRpbmdfaW5mbxhuIAEoCzIlLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5XYWl0aW5nSW5mbxIUCgt0ZXJtaW5hbF9pZBiCASABKAkSNAoEZ29hbBiMASABKAsyJS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3RhdHVzLkdvYWwSMQoOY29kZXhfc2V0dGluZ3MYlgEgASgLMhguZ2l0cG9kLnYxLkNvZGV4U2V0dGluZ3MSPQoJc3ViYWdlbnRzGKABIAMoCzIpLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5TdGF0dXMuU3ViYWdlbnQaNwoHVG9vbFVzZRIaCgl0b29sX25hbWUYASABKAlCB7pIBHICEAESEAoIY29tcGxldGUYAiABKAgaFwoDTExNEhAKCGNvbXBsZXRlGAEgASgIGrQBChBDdXJyZW50T3BlcmF0aW9uEg8KB3Nlc3Npb24YASABKAkSDwoHcmV0cmllcxgCIAEoAxI8Cgh0b29sX3VzZRgDIAEoCzIoLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5TdGF0dXMuVG9vbFVzZUgAEjMKA2xsbRgEIAEoCzIkLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5TdGF0dXMuTExNSABCCwoJb3BlcmF0aW9uGk4KEEVudmlyb25tZW50VXNhZ2USIAoOZW52aXJvbm1lbnRfaWQYASABKAlCCLpIBXIDsAEBEhgKEGNyZWF0ZWRfYnlfYWdlbnQYAiABKAgaQAoQQ29udmVyc2F0aW9uVVJMcxIPCgdoaXN0b3J5GAEgASgJEgwKBGxpdmUYAiABKAkSDQoFYmxvYnMYAyABKAkaxwIKCFN1YmFnZW50EgoKAmlkGAEgASgJEhEKCXBhcmVudF9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEhgKEGN1cnJlbnRfYWN0aXZpdHkYBCABKAkSFgoOc3RhdHVzX21lc3NhZ2UYBSABKAkSLgoFcGhhc2UYBiABKA4yHy5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uUGhhc2USTAoRY29udmVyc2F0aW9uX3VybHMYByABKAsyMS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3RhdHVzLkNvbnZlcnNhdGlvblVSTHMSLgoKY3JlYXRlZF9hdBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAaegoLT3V0cHV0VmFsdWUSIAoMc3RyaW5nX3ZhbHVlGAEgASgJQgi6SAVyAxiAIEgAEhMKCWludF92YWx1ZRgCIAEoA0gAEhUKC2Zsb2F0X3ZhbHVlGAMgASgBSAASFAoKYm9vbF92YWx1ZRgEIAEoCEgAQgcKBXZhbHVlGlIKD0xMTUNhcGFiaWxpdGllcxI/ChVkaXNhYmxlZF9jYXBhYmlsaXRpZXMYASADKA4yIC5naXRwb2QudjEuTExNRGlzYWJsZWRDYXBhYmlsaXR5GpsBChRNQ1BJbnRlZ3JhdGlvblN0YXR1cxIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEjcKBXBoYXNlGAMgASgOMh4uZ2l0cG9kLnYxLk1DUEludGVncmF0aW9uUGhhc2VCCLpIBYIBAhABEhcKD2ZhaWx1cmVfbWVzc2FnZRgEIAEoCRIXCg93YXJuaW5nX21lc3NhZ2UYBSABKAkaXAoMT3V0cHV0c0VudHJ5EgsKA2tleRgBIAEoCRI7CgV2YWx1ZRgCIAEoCzIsLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5TdGF0dXMuT3V0cHV0VmFsdWU6AjgBGvsDCgRHb2FsEhEKCW9iamVjdGl2ZRgBIAEoCRJACgZzdGF0dXMYAiABKA4yMC5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uU3RhdHVzLkdvYWwuR29hbFN0YXR1cxIuCgp1cGRhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgl0aW1lX3VzZWQYBSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SEwoLdG9rZW5zX3VzZWQYBiABKAMSGQoMdG9rZW5fYnVkZ2V0GAcgASgDSACIAQEizgEKCkdvYWxTdGF0dXMSGwoXR09BTF9TVEFUVVNfVU5TUEVDSUZJRUQQABIWChJHT0FMX1NUQVRVU19BQ1RJVkUQARIWChJHT0FMX1NUQVRVU19QQVVTRUQQAhIZChVHT0FMX1NUQVRVU19DT01QTEVURUQQAxIgChxHT0FMX1NUQVRVU19CVURHRVRfRVhIQVVTVEVEEAQSFwoTR09BTF9TVEFUVVNfQkxPQ0tFRBAFEh0KGUdPQUxfU1RBVFVTX1VTQUdFX0xJTUlURUQQBkIPCg1fdG9rZW5fYnVkZ2V0SgQIeBB5GsUHCgtXYWl0aW5nSW5mbxIPCgd3YWl0X2lkGAEgASgJEkEKCWludGVyZXN0cxgCIAMoCzIuLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5XYWl0aW5nSW5mby5JbnRlcmVzdBIxCg13YWl0aW5nX3NpbmNlGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBpdCg1UaW1lckludGVyZXN0EhAKCGR1cmF0aW9uGAEgASgJEgwKBGNyb24YAiABKAkSLAoIZmlyZXNfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGigKEFN1YkFnZW50SW50ZXJlc3QSFAoMZXhlY3V0aW9uX2lkGAEgASgJGhUKE1VzZXJNZXNzYWdlSW50ZXJlc3QaagoTRW52aXJvbm1lbnRJbnRlcmVzdBIgCg5lbnZpcm9ubWVudF9pZBgBIAEoCUIIukgFcgOwAQESMQoFcGhhc2UYAiABKAlCIrpIH3IdUgBSB3J1bm5pbmdSB3N0b3BwZWRSB2RlbGV0ZWQaYwobRGV2Y29udGFpbmVyUmVidWlsZEludGVyZXN0EiAKDmVudmlyb25tZW50X2lkGAEgASgJQgi6SAVyA7ABARISCgpzZXNzaW9uX2lkGAIgASgJEg4KBnBoYXNlcxgDIAMoCRq9AwoISW50ZXJlc3QSCgoCaWQYASABKAkSRAoFdGltZXIYAiABKAsyMy5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uV2FpdGluZ0luZm8uVGltZXJJbnRlcmVzdEgAEksKCXN1Yl9hZ2VudBgDIAEoCzI2LmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5XYWl0aW5nSW5mby5TdWJBZ2VudEludGVyZXN0SAASUQoMdXNlcl9tZXNzYWdlGAQgASgLMjkuZ2l0cG9kLnYxLkFnZW50RXhlY3V0aW9uLldhaXRpbmdJbmZvLlVzZXJNZXNzYWdlSW50ZXJlc3RIABJQCgtlbnZpcm9ubWVudBgFIAEoCzI5LmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5XYWl0aW5nSW5mby5FbnZpcm9ubWVudEludGVyZXN0SAASYQoUZGV2Y29udGFpbmVyX3JlYnVpbGQYBiABKAsyQS5naXRwb2QudjEuQWdlbnRFeGVjdXRpb24uV2FpdGluZ0luZm8uRGV2Y29udGFpbmVyUmVidWlsZEludGVyZXN0SABCCgoIaW50ZXJlc3QidAoFUGhhc2USFQoRUEhBU0VfVU5TUEVDSUZJRUQQABIRCg1QSEFTRV9QRU5ESU5HEAoSEQoNUEhBU0VfUlVOTklORxAUEhsKF1BIQVNFX1dBSVRJTkdfRk9SX0lOUFVUEB4SEQoNUEhBU0VfU1RPUFBFRBAoIsgCChNDbGFyaWZ5aW5nUXVlc3Rpb25zEkQKCXF1ZXN0aW9ucxgBIAMoCzInLmdpdHBvZC52MS5DbGFyaWZ5aW5nUXVlc3Rpb25zLlF1ZXN0aW9uQgi6SAWSAQIIARpMCgZDaG9pY2USFgoFbGFiZWwYASABKAlCB7pIBHICEAESFQoEdGV4dBgCIAEoCUIHukgEcgIQARITCgtkZXNjcmlwdGlvbhgDIAEoCRqcAQoIUXVlc3Rpb24SHAoLcXVlc3Rpb25faWQYASABKAlCB7pIBHICEAESGQoIcXVlc3Rpb24YAiABKAlCB7pIBHICEAESQgoHY2hvaWNlcxgDIAMoCzIlLmdpdHBvZC52MS5DbGFyaWZ5aW5nUXVlc3Rpb25zLkNob2ljZUIKukgHkgEECAIQBhITCgthbGxvd19vdGhlchgEIAEoCCKhAQoRTmV4dFN0ZXBzUHJvcG9zYWwSQAoHYWN0aW9ucxgBIAMoCzIjLmdpdHBvZC52MS5OZXh0U3RlcHNQcm9wb3NhbC5BY3Rpb25CCrpIB5IBBAgBEAQaSgoGQWN0aW9uEhYKBXRpdGxlGAEgASgJQge6SARyAhABEhcKBnByb21wdBgCIAEoCUIHukgEcgIQARIPCgd2YXJpYW50GAMgASgJIpEdChJBZ2VudFJlc3BvbnNlQmxvY2sSFAoCaWQYASABKAlCCLpIBXIDsAEBEjIKBXBoYXNlGAIgASgOMiMuZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5QaGFzZRJLCg91c2VyX2lucHV0X3NlZW4YCCABKAsyMC5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLlVzZXJJbnB1dEJsb2NrU2VlbkgAEi8KCnVzZXJfaW5wdXQYCSABKAsyGS5naXRwb2QudjEuVXNlcklucHV0QmxvY2tIABJRChJ1c2VyX2lucHV0X2RlbGV0ZWQYCyABKAsyMy5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLlVzZXJJbnB1dEJsb2NrRGVsZXRlZEgAElcKGHVzZXJfaW5wdXRfcXVldWVfdXBkYXRlZBgMIAEoCzIzLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suVXNlcklucHV0UXVldWVVcGRhdGVkSAASOAoEdGV4dBgKIAEoCzIoLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suVGV4dE91dHB1dEgAEkUKDmFjdGlvbl9zdGFydGVkGBQgASgLMisuZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5BY3Rpb25TdGFydGVkSAASSQoQYWN0aW9uX2NvbXBsZXRlZBgVIAEoCzItLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suQWN0aW9uQ29tcGxldGVkSAASSwoRZmlsZV9tb2RpZmljYXRpb24YHiABKAsyLi5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLkZpbGVNb2RpZmljYXRpb25IABJRChRlbnZpcm9ubWVudF9jcmVhdGlvbhgoIAEoCzIxLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suRW52aXJvbm1lbnRDcmVhdGlvbkgAEkcKD2NvZGVfYW5ub3RhdGlvbhgyIAEoCzIsLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suQ29kZUFubm90YXRpb25IABJgChxob3N0X2F1dGhlbnRpY2F0aW9uX3JlcXVpcmVkGDwgASgLMjguZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5Ib3N0QXV0aGVudGljYXRpb25SZXF1aXJlZEgAEj0KCnRvZG9fZ3JvdXAYQSABKAsyJy5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLlRvZG9Hcm91cEgAEjsKCXRvZG9faXRlbRhGIAEoCzImLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suVG9kb0l0ZW1IABI4Cgd0aG91Z2h0GFAgASgLMiUuZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5UaG91Z2h0SAASSgoRYWdlbnRfbW9kZV9jaGFuZ2UYWiABKAsyLS5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLkFnZW50TW9kZUNoYW5nZUgAEj4KFGNsYXJpZnlpbmdfcXVlc3Rpb25zGFsgASgLMh4uZ2l0cG9kLnYxLkNsYXJpZnlpbmdRdWVzdGlvbnNIABI7ChNuZXh0X3N0ZXBzX3Byb3Bvc2FsGFwgASgLMhwuZ2l0cG9kLnYxLk5leHRTdGVwc1Byb3Bvc2FsSAASTQoSYXZhaWxhYmxlX2NvbW1hbmRzGF0gASgLMi8uZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5BdmFpbGFibGVDb21tYW5kc0gAEi4KCmNyZWF0ZWRfYXQYZCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhUKDXRvZG9fZ3JvdXBfaWQYbiABKAkSFAoMdG9kb19pdGVtX2lkGG8gASgJGr0BCgpUZXh0T3V0cHV0EjsKBHR5cGUYASABKA4yLS5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLlRleHRPdXRwdXQuVHlwZRIPCgdjb250ZW50GAIgASgJEhMKC3NlcXVlbmNlX2lkGAMgASgEIkwKBFR5cGUSFAoQVFlQRV9VTlNQRUNJRklFRBAAEhsKF1RZUEVfVVNFUl9GQUNJTkdfT1VUUFVUEAESEQoNVFlQRV9USE9VR0hUUxACGkcKDUFjdGlvblN0YXJ0ZWQSGgoJYWN0aW9uX2lkGAEgASgJQge6SARyAhABEhoKEmludGVudF9kZXNjcmlwdGlvbhgCIAEoCRpZCg9BY3Rpb25Db21wbGV0ZWQSGgoJYWN0aW9uX2lkGAEgASgJQge6SARyAhABEhoKEnJlc3VsdF9kZXNjcmlwdGlvbhgCIAEoCRIOCgZmYWlsZWQYAyABKAgavwQKEEZpbGVNb2RpZmljYXRpb24SEQoJYWN0aW9uX2lkGAEgASgJEhoKCWZpbGVfcGF0aBgCIAEoCUIHukgEcgIQARITCgdjb250ZW50GAMgASgJQgIYARISCgpzdGFydF9saW5lGAQgASgFEkEKBGRpZmYYBSABKAsyMy5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLkZpbGVNb2RpZmljYXRpb24uRGlmZhq7AQoJRGlmZkdyb3VwEksKBHR5cGUYASABKA4yPS5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLkZpbGVNb2RpZmljYXRpb24uRGlmZkdyb3VwLlR5cGUSDQoFbGluZXMYAiADKAkiUgoEVHlwZRIUChBUWVBFX1VOU1BFQ0lGSUVEEAASDgoKVFlQRV9BRERFRBABEhAKDFRZUEVfUkVNT1ZFRBACEhIKDlRZUEVfVU5DSEFOR0VEEAMaMQoJRGlmZlN0YXRzEhEKCWFkZGl0aW9ucxgBIAEoBRIRCglkZWxldGlvbnMYAiABKAUangEKBERpZmYSTQoLZGlmZl9ncm91cHMYASADKAsyOC5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLkZpbGVNb2RpZmljYXRpb24uRGlmZkdyb3VwEkcKBXN0YXRzGAIgASgLMjguZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5GaWxlTW9kaWZpY2F0aW9uLkRpZmZTdGF0cxpTChNFbnZpcm9ubWVudENyZWF0aW9uEhoKCWFjdGlvbl9pZBgBIAEoCUIHukgEcgIQARIgCg5lbnZpcm9ubWVudF9pZBgCIAEoCUIIukgFcgOwAQEaYwoaSG9zdEF1dGhlbnRpY2F0aW9uUmVxdWlyZWQSGgoJYWN0aW9uX2lkGAEgASgJQge6SARyAhABEgwKBGhvc3QYAiABKAkSGwoJcnVubmVyX2lkGAMgASgJQgi6SAVyA7ABARp2Cg5Db2RlQW5ub3RhdGlvbhIaCglmaWxlX3BhdGgYASABKAlCB7pIBHICEAESEgoKc3RhcnRfbGluZRgCIAEoBRIQCghlbmRfbGluZRgDIAEoBRITCgtkZXNjcmlwdGlvbhgEIAEoCRINCgV0aXRsZRgFIAEoCRqNAQoJVG9kb0dyb3VwEhkKCGdyb3VwX2lkGAEgASgJQge6SARyAhABEi4KCnVwZGF0ZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKBXRvZG9zGAMgAygLMiYuZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5Ub2RvSXRlbRrYAQoIVG9kb0l0ZW0SEwoCaWQYASABKAlCB7pIBHICEAESDQoFdGl0bGUYAiABKAkSOwoFcGhhc2UYAyABKA4yLC5naXRwb2QudjEuQWdlbnRSZXNwb25zZUJsb2NrLlRvZG9JdGVtLlBoYXNlImsKBVBoYXNlEhUKEVBIQVNFX1VOU1BFQ0lGSUVEEAASEQoNUEhBU0VfUEVORElORxABEhUKEVBIQVNFX0lOX1BST0dSRVNTEAISDgoKUEhBU0VfRE9ORRADEhEKDVBIQVNFX0NMRUFSRUQQBBoaCgdUaG91Z2h0Eg8KB2NvbnRlbnQYASABKAkaIAoSVXNlcklucHV0QmxvY2tTZWVuEgoKAmlkGAEgASgJGiMKFVVzZXJJbnB1dEJsb2NrRGVsZXRlZBIKCgJpZBgBIAEoCRrvAQoPQWdlbnRNb2RlQ2hhbmdlEkIKBXN0YXRlGAEgASgOMjMuZ2l0cG9kLnYxLkFnZW50UmVzcG9uc2VCbG9jay5BZ2VudE1vZGVDaGFuZ2UuU3RhdGUSDwoHbWVzc2FnZRgCIAEoCSKGAQoFU3RhdGUSFQoRU1RBVEVfVU5TUEVDSUZJRUQQABIXChNTVEFURV9TUEVDX0NPTVBMRVRFEAESHAoYU1RBVEVfSVRFUkFUSU9OX0NPTVBMRVRFEAISEgoOU1RBVEVfQ09NUExFVEUQAxIbChdTVEFURV9PTkFfU1BFQ19DT01QTEVURRAEGjUKEEF2YWlsYWJsZUNvbW1hbmQSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRpVChFBdmFpbGFibGVDb21tYW5kcxJACghjb21tYW5kcxgBIAMoCzIuLmdpdHBvZC52MS5BZ2VudFJlc3BvbnNlQmxvY2suQXZhaWxhYmxlQ29tbWFuZBo2ChVVc2VySW5wdXRRdWV1ZVVwZGF0ZWQSHQoVcXVldWVkX3VzZXJfaW5wdXRfaWRzGAEgAygJIlYKBVBoYXNlEhUKEVBIQVNFX1VOU1BFQ0lGSUVEEAASEAoMUEhBU0VfVVBEQVRFEAESEwoPUEhBU0VfQ09NUExFVEVEEAISDwoLUEhBU0VfREVMVEEQA0IPCgZvdXRwdXQSBbpIAggBIs4ECg5Vc2VySW5wdXRCbG9jaxIKCgJpZBgBIAEoCRI3CgR0ZXh0GBQgASgLMiMuZ2l0cG9kLnYxLlVzZXJJbnB1dEJsb2NrLlRleHRJbnB1dEICGAFIABI5CgVpbWFnZRgVIAEoCzIkLmdpdHBvZC52MS5Vc2VySW5wdXRCbG9jay5JbWFnZUlucHV0QgIYAUgAEjkKBmlucHV0cxgeIAMoCzIfLmdpdHBvZC52MS5Vc2VySW5wdXRCbG9jay5JbnB1dEIIukgFkgECEAoSLgoKY3JlYXRlZF9hdBhkIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoIbWV0YWRhdGEYeCABKAsyHC5naXRwb2QudjEuVXNlcklucHV0TWV0YWRhdGEaJQoJVGV4dElucHV0EhgKB2NvbnRlbnQYASABKAlCB7pIBHICEAEaawoKSW1hZ2VJbnB1dBIaCgRkYXRhGAEgASgMQgy6SAl6BxABGICAgAISLwoJbWltZV90eXBlGAIgASgJQhy6SBlyF1IJaW1hZ2UvcG5nUgppbWFnZS9qcGVnEhAKCGRhdGFfcmVmGAMgASgJGoMBCgVJbnB1dBIzCgR0ZXh0GBQgASgLMiMuZ2l0cG9kLnYxLlVzZXJJbnB1dEJsb2NrLlRleHRJbnB1dEgAEjUKBWltYWdlGBUgASgLMiQuZ2l0cG9kLnYxLlVzZXJJbnB1dEJsb2NrLkltYWdlSW5wdXRIAEIOCgVpbnB1dBIFukgCCAFCBwoFaW5wdXQiUgoRVXNlcklucHV0TWV0YWRhdGESDgoGc291cmNlGAEgASgJEi0KBW1vZGVzGAIgAygOMhQuZ2l0cG9kLnYxLkFnZW50TW9kZUIIukgFkgECEAQilQIKDEFnZW50TWVzc2FnZRIqCgR0eXBlGAEgASgOMhwuZ2l0cG9kLnYxLkFnZW50TWVzc2FnZS5UeXBlEg8KB3BheWxvYWQYAiABKAkSKgoEcm9sZRgDIAEoDjIcLmdpdHBvZC52MS5BZ2VudE1lc3NhZ2UuUm9sZRIbChNzZW5kZXJfZXhlY3V0aW9uX2lkGAQgASgJIkAKBFR5cGUSFAoQVFlQRV9VTlNQRUNJRklFRBAAEg8KC1RZUEVfVVBEQVRFEAESEQoNVFlQRV9DT01QTEVURRACIj0KBFJvbGUSFAoQUk9MRV9VTlNQRUNJRklFRBAAEg8KC1JPTEVfUEFSRU5UEAESDgoKUk9MRV9DSElMRBACIooHCglXYWtlRXZlbnQSEwoLaW50ZXJlc3RfaWQYASABKAkSMAoFdGltZXIYAiABKAsyHy5naXRwb2QudjEuV2FrZUV2ZW50LlRpbWVyRmlyZWRIABI8Cg5sb29wX3JldHJpZ2dlchgDIAEoCzIiLmdpdHBvZC52MS5XYWtlRXZlbnQuTG9vcFJldHJpZ2dlckgAEkMKC2Vudmlyb25tZW50GAQgASgLMiwuZ2l0cG9kLnYxLldha2VFdmVudC5FbnZpcm9ubWVudFBoYXNlUmVhY2hlZEgAEk0KFGRldmNvbnRhaW5lcl9yZWJ1aWxkGAUgASgLMi0uZ2l0cG9kLnYxLldha2VFdmVudC5EZXZjb250YWluZXJQaGFzZVJlYWNoZWRIABo6CgpUaW1lckZpcmVkEiwKCGZpcmVkX2F0GAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBrRAgoNTG9vcFJldHJpZ2dlchJLChB1bm1ldF9jb25kaXRpb25zGAEgAygLMjEuZ2l0cG9kLnYxLldha2VFdmVudC5Mb29wUmV0cmlnZ2VyLlVubWV0Q29uZGl0aW9uEkAKB291dHB1dHMYAiADKAsyLy5naXRwb2QudjEuV2FrZUV2ZW50Lkxvb3BSZXRyaWdnZXIuT3V0cHV0c0VudHJ5GoABCg5Vbm1ldENvbmRpdGlvbhIKCgJpZBgBIAEoCRISCgpleHByZXNzaW9uGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEhEKCWl0ZXJhdGlvbhgEIAEoBRIWCg5tYXhfaXRlcmF0aW9ucxgFIAEoBRIOCgZyZWFzb24YBiABKAkaLgoMT3V0cHV0c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaWQoXRW52aXJvbm1lbnRQaGFzZVJlYWNoZWQSFgoOZW52aXJvbm1lbnRfaWQYASABKAkSDQoFcGhhc2UYAiABKAkSFwoPZmFpbHVyZV9tZXNzYWdlGAMgAygJGm4KGERldmNvbnRhaW5lclBoYXNlUmVhY2hlZBIWCg5lbnZpcm9ubWVudF9pZBgBIAEoCRINCgVwaGFzZRgCIAEoCRISCgpzZXNzaW9uX2lkGAMgASgJEhcKD2ZhaWx1cmVfbWVzc2FnZRgEIAMoCUIJCgdwYXlsb2FkIvICChtTZW5kVG9BZ2VudEV4ZWN1dGlvblJlcXVlc3QSJAoSYWdlbnRfZXhlY3V0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIvCgp1c2VyX2lucHV0GAIgASgLMhkuZ2l0cG9kLnYxLlVzZXJJbnB1dEJsb2NrSAASMAoNYWdlbnRfbWVzc2FnZRgDIAEoCzIXLmdpdHBvZC52MS5BZ2VudE1lc3NhZ2VIABIqCgp3YWtlX2V2ZW50GAQgASgLMhQuZ2l0cG9kLnYxLldha2VFdmVudEgAEjUKDWNvbnRyb2xfaW5wdXQYBiABKAsyHC5naXRwb2QudjEuQWdlbnRDb250cm9sSW5wdXRIABIwCg5jb2RleF9zZXR0aW5ncxgFIAEoCzIYLmdpdHBvZC52MS5Db2RleFNldHRpbmdzEiwKDHR1cm5fb3B0aW9ucxgHIAEoCzIWLmdpdHBvZC52MS5UdXJuT3B0aW9uc0IHCgVpbnB1dCIeChxTZW5kVG9BZ2VudEV4ZWN1dGlvblJlc3BvbnNlIjwKC1R1cm5PcHRpb25zEi0KBW1vZGVzGAEgAygOMhQuZ2l0cG9kLnYxLkFnZW50TW9kZUIIukgFkgECEAQinggKEUFnZW50Q29udHJvbElucHV0EjcKB2NvbXBhY3QYASABKAsyJC5naXRwb2QudjEuQWdlbnRDb250cm9sSW5wdXQuQ29tcGFjdEgAEjEKBGdvYWwYAiABKAsyIS5naXRwb2QudjEuQWdlbnRDb250cm9sSW5wdXQuR29hbEgAElEKFWRlbGV0ZV9xdWV1ZWRfbWVzc2FnZRgDIAEoCzIwLmdpdHBvZC52MS5BZ2VudENvbnRyb2xJbnB1dC5EZWxldGVRdWV1ZWRNZXNzYWdlSAASTwoUc3RlZXJfcXVldWVkX21lc3NhZ2UYBCABKAsyLy5naXRwb2QudjEuQWdlbnRDb250cm9sSW5wdXQuU3RlZXJRdWV1ZWRNZXNzYWdlSAASTQoTbW92ZV9xdWV1ZWRfbWVzc2FnZRgFIAEoCzIuLmdpdHBvZC52MS5BZ2VudENvbnRyb2xJbnB1dC5Nb3ZlUXVldWVkTWVzc2FnZUgAGgkKB0NvbXBhY3QaNQoTRGVsZXRlUXVldWVkTWVzc2FnZRIeCg11c2VyX2lucHV0X2lkGAEgASgJQge6SARyAhABGtMDCgRHb2FsEjgKBXBhdXNlGAEgASgLMicuZ2l0cG9kLnYxLkFnZW50Q29udHJvbElucHV0LkdvYWwuUGF1c2VIABI6CgZyZXN1bWUYAiABKAsyKC5naXRwb2QudjEuQWdlbnRDb250cm9sSW5wdXQuR29hbC5SZXN1bWVIABI+Cghjb21wbGV0ZRgDIAEoCzIqLmdpdHBvZC52MS5BZ2VudENvbnRyb2xJbnB1dC5Hb2FsLkNvbXBsZXRlSAASOAoFY2xlYXIYBCABKAsyJy5naXRwb2QudjEuQWdlbnRDb250cm9sSW5wdXQuR29hbC5DbGVhckgAEjQKA3NldBgFIAEoCzIlLmdpdHBvZC52MS5BZ2VudENvbnRyb2xJbnB1dC5Hb2FsLlNldEgAGgcKBVBhdXNlGggKBlJlc3VtZRoKCghDb21wbGV0ZRoHCgVDbGVhchpzCgNTZXQSGgoJb2JqZWN0aXZlGAEgASgJQge6SARyAhABEkUKBnN0YXR1cxgCIAEoDjIwLmdpdHBvZC52MS5BZ2VudEV4ZWN1dGlvbi5TdGF0dXMuR29hbC5Hb2FsU3RhdHVzSACIAQFCCQoHX3N0YXR1c0IICgZhY3Rpb24aNAoSU3RlZXJRdWV1ZWRNZXNzYWdlEh4KDXVzZXJfaW5wdXRfaWQYASABKAlCB7pIBHICEAEaUQoRTW92ZVF1ZXVlZE1lc3NhZ2USHgoNdXNlcl9pbnB1dF9pZBgBIAEoCUIHukgEcgIQARIcChRiZWZvcmVfdXNlcl9pbnB1dF9pZBgCIAEoCUIJCgdjb250cm9sIksKHFByb21wdFZhbGlkYXRpb25FcnJvckRldGFpbHMSFAoMY2xlYW5lZF90ZXh0GAEgASgJEhUKDXJlbW92ZWRfY291bnQYAiABKAUiVAosQ3JlYXRlQWdlbnRFeGVjdXRpb25Db252ZXJzYXRpb25Ub2tlblJlcXVlc3QSJAoSYWdlbnRfZXhlY3V0aW9uX2lkGAEgASgJQgi6SAVyA7ABASI+Ci1DcmVhdGVBZ2VudEV4ZWN1dGlvbkNvbnZlcnNhdGlvblRva2VuUmVzcG9uc2USDQoFdG9rZW4YASABKAkiUgoqQ3JlYXRlQWdlbnRFeGVjdXRpb25UcmFuc2NyaXB0VG9rZW5SZXF1ZXN0EiQKEmFnZW50X2V4ZWN1dGlvbl9pZBgBIAEoCUIIukgFcgOwAQEiPAorQ3JlYXRlQWdlbnRFeGVjdXRpb25UcmFuc2NyaXB0VG9rZW5SZXNwb25zZRINCgV0b2tlbhgBIAEoCSKzAgoTUnVubmVyU2lkZUFnZW50U3BlYxI3Cgdwcm9tcHRzGAEgAygLMiYuZ2l0cG9kLnYxLlJ1bm5lclNpZGVBZ2VudFNwZWMuUHJvbXB0cxIWCg5yZXF1aXJlZF90b29scxgCIAMoCRIzChBwcmVmZXJyZWRfbW9kZWxzGAMgAygOMhkuZ2l0cG9kLnYxLlN1cHBvcnRlZE1vZGVsGpUBCgdQcm9tcHRzEigKBW1vZGVsGAEgASgOMhkuZ2l0cG9kLnYxLlN1cHBvcnRlZE1vZGVsEhUKDXN5c3RlbV9wcm9tcHQYAiABKAkSFwoPaW5pdGlhbF9tZXNzYWdlGAMgASgJEhgKEGp1ZGdlbWVudF9wcm9tcHQYBCABKAkSFgoOaW1wcm92ZV9wcm9tcHQYBSABKAkiqwEKFkluRW52aXJvbm1lbnRBZ2VudFNwZWMSJwoHc2VydmljZRgBIAEoCzIWLmdpdHBvZC52MS5TZXJ2aWNlU3BlYxIyCg9yZXF1aXJlZF9tb2RlbHMYAiADKA4yGS5naXRwb2QudjEuU3VwcG9ydGVkTW9kZWwSNAoQc2VydmljZV9tZXRhZGF0YRgDIAEoCzIaLmdpdHBvZC52MS5TZXJ2aWNlTWV0YWRhdGEiQQoZU3RvcEFnZW50RXhlY3V0aW9uUmVxdWVzdBIkChJhZ2VudF9leGVjdXRpb25faWQYASABKAlCCLpIBXIDsAEBIhwKGlN0b3BBZ2VudEV4ZWN1dGlvblJlc3BvbnNlIkgKDk1DUEludGVncmF0aW9uEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSCwoDdXJsGAMgASgJEg8KB2VuYWJsZWQYBCABKAgiZgoGUHJvbXB0EgoKAmlkGAEgASgJEisKCG1ldGFkYXRhGAIgASgLMhkuZ2l0cG9kLnYxLlByb21wdE1ldGFkYXRhEiMKBHNwZWMYAyABKAsyFS5naXRwb2QudjEuUHJvbXB0U3BlYyLbAQoOUHJvbXB0TWV0YWRhdGESIQoPb3JnYW5pemF0aW9uX2lkGAEgASgJQgi6SAVyA7ABARIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEiMKB2NyZWF0b3IYBCABKAsyEi5naXRwb2QudjEuU3ViamVjdBIuCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKOAQoKUHJvbXB0U3BlYxIZCgZwcm9tcHQYASABKAlCCbpIBnIEGKCcARITCgtpc190ZW1wbGF0ZRgCIAEoCBISCgppc19jb21tYW5kGAMgASgIEioKB2NvbW1hbmQYBCABKAlCGbpIFnIUGDIyEF5bYS16QS1aMC05Xy1dKiQSEAoIaXNfc2tpbGwYBSABKAgirgIKEkxpc3RQcm9tcHRzUmVxdWVzdBIwCgpwYWdpbmF0aW9uGAEgASgLMhwuZ2l0cG9kLnYxLlBhZ2luYXRpb25SZXF1ZXN0EjQKBmZpbHRlchgCIAEoCzIkLmdpdHBvZC52MS5MaXN0UHJvbXB0c1JlcXVlc3QuRmlsdGVyGq8BCgZGaWx0ZXISEwoLaXNfdGVtcGxhdGUYASABKAgSEgoKaXNfY29tbWFuZBgCIAEoCBIPCgdjb21tYW5kGAMgASgJEh8KDmNvbW1hbmRfcHJlZml4GAQgASgJQge6SARyAhgyEhAKCGlzX3NraWxsGAUgASgIEh4KFmV4Y2x1ZGVfcHJvbXB0X2NvbnRlbnQYBiABKAgSGAoGc2VhcmNoGAcgASgJQgi6SAVyAxiAAiJsChNMaXN0UHJvbXB0c1Jlc3BvbnNlEjEKCnBhZ2luYXRpb24YASABKAsyHS5naXRwb2QudjEuUGFnaW5hdGlvblJlc3BvbnNlEiIKB3Byb21wdHMYAiADKAsyES5naXRwb2QudjEuUHJvbXB0Ii8KEEdldFByb21wdFJlcXVlc3QSGwoJcHJvbXB0X2lkGAEgASgJQgi6SAVyA7ABASI2ChFHZXRQcm9tcHRSZXNwb25zZRIhCgZwcm9tcHQYASABKAsyES5naXRwb2QudjEuUHJvbXB0ItQBChNDcmVhdGVQcm9tcHRSZXF1ZXN0EhgKBG5hbWUYASABKAlCCrpIB3IFEAEY/wESHwoLZGVzY3JpcHRpb24YAiABKAlCCrpIB3IFEAEY9AMSGwoGcHJvbXB0GAMgASgJQgu6SAhyBhABGKCcARITCgtpc190ZW1wbGF0ZRgEIAEoCBISCgppc19jb21tYW5kGAUgASgIEioKB2NvbW1hbmQYBiABKAlCGbpIFnIUGDIyEF5bYS16QS1aMC05Xy1dKiQSEAoIaXNfc2tpbGwYByABKAgiOQoUQ3JlYXRlUHJvbXB0UmVzcG9uc2USIQoGcHJvbXB0GAEgASgLMhEuZ2l0cG9kLnYxLlByb21wdCKPBAoTVXBkYXRlUHJvbXB0UmVxdWVzdBIbCglwcm9tcHRfaWQYASABKAlCCLpIBXIDsAEBEj4KCG1ldGFkYXRhGAIgASgLMicuZ2l0cG9kLnYxLlVwZGF0ZVByb21wdFJlcXVlc3QuTWV0YWRhdGFIAIgBARI2CgRzcGVjGAMgASgLMiMuZ2l0cG9kLnYxLlVwZGF0ZVByb21wdFJlcXVlc3QuU3BlY0gBiAEBGmYKCE1ldGFkYXRhEhsKBG5hbWUYASABKAlCCLpIBXIDGP8BSACIAQESJAoLZGVzY3JpcHRpb24YAiABKAlCCrpIB3IFEAEY9ANIAYgBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb24a5AEKBFNwZWMSHgoGcHJvbXB0GAEgASgJQgm6SAZyBBignAFIAIgBARIYCgtpc190ZW1wbGF0ZRgCIAEoCEgBiAEBEhcKCmlzX2NvbW1hbmQYAyABKAhIAogBARIvCgdjb21tYW5kGAQgASgJQhm6SBZyFBgyMhBeW2EtekEtWjAtOV8tXSokSAOIAQESFQoIaXNfc2tpbGwYBSABKAhIBIgBAUIJCgdfcHJvbXB0Qg4KDF9pc190ZW1wbGF0ZUINCgtfaXNfY29tbWFuZEIKCghfY29tbWFuZEILCglfaXNfc2tpbGxCCwoJX21ldGFkYXRhQgcKBV9zcGVjIjkKFFVwZGF0ZVByb21wdFJlc3BvbnNlEiEKBnByb21wdBgBIAEoCzIRLmdpdHBvZC52MS5Qcm9tcHQiMgoTRGVsZXRlUHJvbXB0UmVxdWVzdBIbCglwcm9tcHRfaWQYASABKAlCCLpIBXIDsAEBIhYKFERlbGV0ZVByb21wdFJlc3BvbnNlKpoBCglBZ2VudE1vZGUSGgoWQUdFTlRfTU9ERV9VTlNQRUNJRklFRBAAEhgKFEFHRU5UX01PREVfRVhFQ1VUSU9OEAESFwoTQUdFTlRfTU9ERV9QTEFOTklORxACEhQKEEFHRU5UX01PREVfUkFMUEgQAxITCg9BR0VOVF9NT0RFX1NQRUMQBBITCg9BR0VOVF9NT0RFX0dPQUwQBSqWAwoQQ29kZXhPcGVuQUlNb2RlbBIjCh9DT0RFWF9PUEVOX0FJX01PREVMX1VOU1BFQ0lGSUVEEAASHwobQ09ERVhfT1BFTl9BSV9NT0RFTF9HUFRfNV81EAESHwobQ09ERVhfT1BFTl9BSV9NT0RFTF9HUFRfNV80EAISKAogQ09ERVhfT1BFTl9BSV9NT0RFTF9HUFRfNV80X01JTkkQAxoCCAESKQohQ09ERVhfT1BFTl9BSV9NT0RFTF9HUFRfNV8zX0NPREVYEAQaAggBEi8KJ0NPREVYX09QRU5fQUlfTU9ERUxfR1BUXzVfM19DT0RFWF9TUEFSSxAFGgIIARIjChtDT0RFWF9PUEVOX0FJX01PREVMX0dQVF81XzIQBhoCCAESIwofQ09ERVhfT1BFTl9BSV9NT0RFTF9HUFRfNV82X1NPTBAHEiUKIUNPREVYX09QRU5fQUlfTU9ERUxfR1BUXzVfNl9URVJSQRAIEiQKIENPREVYX09QRU5fQUlfTU9ERUxfR1BUXzVfNl9MVU5BEAkqiwIKFENvZGV4UmVhc29uaW5nRWZmb3J0EiYKIkNPREVYX1JFQVNPTklOR19FRkZPUlRfVU5TUEVDSUZJRUQQABIeChpDT0RFWF9SRUFTT05JTkdfRUZGT1JUX0xPVxABEiEKHUNPREVYX1JFQVNPTklOR19FRkZPUlRfTUVESVVNEAISHwobQ09ERVhfUkVBU09OSU5HX0VGRk9SVF9ISUdIEAMSJQohQ09ERVhfUkVBU09OSU5HX0VGRk9SVF9FWFRSQV9ISUdIEAQSHgoaQ09ERVhfUkVBU09OSU5HX0VGRk9SVF9NQVgQBRIgChxDT0RFWF9SRUFTT05JTkdfRUZGT1JUX1VMVFJBEAYqUwoQQ29kZXhTZXJ2aWNlVGllchIiCh5DT0RFWF9TRVJWSUNFX1RJRVJfVU5TUEVDSUZJRUQQABIbChdDT0RFWF9TRVJWSUNFX1RJRVJfRkFTVBABKvMBChVMTE1EaXNhYmxlZENhcGFiaWxpdHkSJwojTExNX0RJU0FCTEVEX0NBUEFCSUxJVFlfVU5TUEVDSUZJRUQQABImCiJMTE1fRElTQUJMRURfQ0FQQUJJTElUWV9XRUJfU0VBUkNIEAESLQopTExNX0RJU0FCTEVEX0NBUEFCSUxJVFlfRkFTVF9TRVJWSUNFX1RJRVIQAhIzCi9MTE1fRElTQUJMRURfQ0FQQUJJTElUWV9TRVJWRVJfU0lERV9UT09MX1NFQVJDSBADEiUKIUxMTV9ESVNBQkxFRF9DQVBBQklMSVRZX0dPQUxfTU9ERRAEKsICChtBZ2VudEV4ZWN1dGlvbkZhaWx1cmVSZWFzb24SLgoqQUdFTlRfRVhFQ1VUSU9OX0ZBSUxVUkVfUkVBU09OX1VOU1BFQ0lGSUVEEAASLgoqQUdFTlRfRVhFQ1VUSU9OX0ZBSUxVUkVfUkVBU09OX0VOVklST05NRU5UEAESKgomQUdFTlRfRVhFQ1VUSU9OX0ZBSUxVUkVfUkVBU09OX1NFUlZJQ0UQAhIyCi5BR0VOVF9FWEVDVVRJT05fRkFJTFVSRV9SRUFTT05fTExNX0lOVEVHUkFUSU9OEAMSLwonQUdFTlRfRVhFQ1VUSU9OX0ZBSUxVUkVfUkVBU09OX0lOVEVSTkFMEAQaAggBEjIKLkFHRU5UX0VYRUNVVElPTl9GQUlMVVJFX1JFQVNPTl9BR0VOVF9FWEVDVVRJT04QBSp/ChJBZ2VudEV4ZWN1dGlvblJvbGUSJAogQUdFTlRfRVhFQ1VUSU9OX1JPTEVfVU5TUEVDSUZJRUQQABIgChxBR0VOVF9FWEVDVVRJT05fUk9MRV9ERUZBVUxUEAESIQodQUdFTlRfRVhFQ1VUSU9OX1JPTEVfV09SS0ZMT1cQAirOAQoTTUNQSW50ZWdyYXRpb25QaGFzZRIlCiFNQ1BfSU5URUdSQVRJT05fUEhBU0VfVU5TUEVDSUZJRUQQABImCiJNQ1BfSU5URUdSQVRJT05fUEhBU0VfSU5JVElBTElaSU5HEAoSHwobTUNQX0lOVEVHUkFUSU9OX1BIQVNFX1JFQURZEBQSIAocTUNQX0lOVEVHUkFUSU9OX1BIQVNFX0ZBSUxFRBAeEiUKIU1DUF9JTlRFR1JBVElPTl9QSEFTRV9VTkFWQUlMQUJMRRAoMpIJCgxBZ2VudFNlcnZpY2USSwoKU3RhcnRBZ2VudBIcLmdpdHBvZC52MS5TdGFydEFnZW50UmVxdWVzdBodLmdpdHBvZC52MS5TdGFydEFnZW50UmVzcG9uc2UiABJmChNMaXN0QWdlbnRFeGVjdXRpb25zEiUuZ2l0cG9kLnYxLkxpc3RBZ2VudEV4ZWN1dGlvbnNSZXF1ZXN0GiYuZ2l0cG9kLnYxLkxpc3RBZ2VudEV4ZWN1dGlvbnNSZXNwb25zZSIAEmAKEUdldEFnZW50RXhlY3V0aW9uEiMuZ2l0cG9kLnYxLkdldEFnZW50RXhlY3V0aW9uUmVxdWVzdBokLmdpdHBvZC52MS5HZXRBZ2VudEV4ZWN1dGlvblJlc3BvbnNlIgASaQoURGVsZXRlQWdlbnRFeGVjdXRpb24SJi5naXRwb2QudjEuRGVsZXRlQWdlbnRFeGVjdXRpb25SZXF1ZXN0GicuZ2l0cG9kLnYxLkRlbGV0ZUFnZW50RXhlY3V0aW9uUmVzcG9uc2UiABJpChRTZW5kVG9BZ2VudEV4ZWN1dGlvbhImLmdpdHBvZC52MS5TZW5kVG9BZ2VudEV4ZWN1dGlvblJlcXVlc3QaJy5naXRwb2QudjEuU2VuZFRvQWdlbnRFeGVjdXRpb25SZXNwb25zZSIAEpwBCiVDcmVhdGVBZ2VudEV4ZWN1dGlvbkNvbnZlcnNhdGlvblRva2VuEjcuZ2l0cG9kLnYxLkNyZWF0ZUFnZW50RXhlY3V0aW9uQ29udmVyc2F0aW9uVG9rZW5SZXF1ZXN0GjguZ2l0cG9kLnYxLkNyZWF0ZUFnZW50RXhlY3V0aW9uQ29udmVyc2F0aW9uVG9rZW5SZXNwb25zZSIAEmMKElN0b3BBZ2VudEV4ZWN1dGlvbhIkLmdpdHBvZC52MS5TdG9wQWdlbnRFeGVjdXRpb25SZXF1ZXN0GiUuZ2l0cG9kLnYxLlN0b3BBZ2VudEV4ZWN1dGlvblJlc3BvbnNlIgASTgoLTGlzdFByb21wdHMSHS5naXRwb2QudjEuTGlzdFByb21wdHNSZXF1ZXN0Gh4uZ2l0cG9kLnYxLkxpc3RQcm9tcHRzUmVzcG9uc2UiABJICglHZXRQcm9tcHQSGy5naXRwb2QudjEuR2V0UHJvbXB0UmVxdWVzdBocLmdpdHBvZC52MS5HZXRQcm9tcHRSZXNwb25zZSIAElEKDENyZWF0ZVByb21wdBIeLmdpdHBvZC52MS5DcmVhdGVQcm9tcHRSZXF1ZXN0Gh8uZ2l0cG9kLnYxLkNyZWF0ZVByb21wdFJlc3BvbnNlIgASUQoMVXBkYXRlUHJvbXB0Eh4uZ2l0cG9kLnYxLlVwZGF0ZVByb21wdFJlcXVlc3QaHy5naXRwb2QudjEuVXBkYXRlUHJvbXB0UmVzcG9uc2UiABJRCgxEZWxldGVQcm9tcHQSHi5naXRwb2QudjEuRGVsZXRlUHJvbXB0UmVxdWVzdBofLmdpdHBvZC52MS5EZWxldGVQcm9tcHRSZXNwb25zZSIAQidaJWdpdGh1Yi5jb20vZ2l0cG9kLWlvL2dpdHBvZC1zZGstZ28vdjFiBnByb3RvMw", [validate_pb_1.file_buf_validate_validate, environment_automation_pb_1.file_gitpod_v1_environment_automation, identity_pb_1.file_gitpod_v1_identity, model_pb_1.file_gitpod_v1_model, pagination_pb_1.file_gitpod_v1_pagination, wkt_1.file_google_protobuf_duration, wkt_1.file_google_protobuf_timestamp]); /** * Describes the message gitpod.v1.PullRequest. * Use `create(PullRequestSchema)` to create a new message. */ exports.PullRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 0); /** * Describes the message gitpod.v1.PullRequest.Repository. * Use `create(PullRequest_RepositorySchema)` to create a new message. */ exports.PullRequest_RepositorySchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 0, 0); /** * Current state of the pull request * * @generated from enum gitpod.v1.PullRequest.State */ var PullRequest_State; (function (PullRequest_State) { /** * @generated from enum value: STATE_UNSPECIFIED = 0; */ PullRequest_State[PullRequest_State["UNSPECIFIED"] = 0] = "UNSPECIFIED"; /** * @generated from enum value: STATE_OPEN = 1; */ PullRequest_State[PullRequest_State["OPEN"] = 1] = "OPEN"; /** * @generated from enum value: STATE_CLOSED = 2; */ PullRequest_State[PullRequest_State["CLOSED"] = 2] = "CLOSED"; /** * @generated from enum value: STATE_MERGED = 3; */ PullRequest_State[PullRequest_State["MERGED"] = 3] = "MERGED"; })(PullRequest_State || (exports.PullRequest_State = PullRequest_State = {})); /** * Describes the enum gitpod.v1.PullRequest.State. */ exports.PullRequest_StateSchema = (0, codegenv2_1.enumDesc)(exports.file_gitpod_v1_agent, 0, 0); /** * Describes the message gitpod.v1.CodexSettings. * Use `create(CodexSettingsSchema)` to create a new message. */ exports.CodexSettingsSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 1); /** * Describes the message gitpod.v1.Agent. * Use `create(AgentSchema)` to create a new message. */ exports.AgentSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 2); /** * Describes the message gitpod.v1.AgentMetadata. * Use `create(AgentMetadataSchema)` to create a new message. */ exports.AgentMetadataSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 3); /** * Describes the message gitpod.v1.AgentCodeContext. * Use `create(AgentCodeContextSchema)` to create a new message. */ exports.AgentCodeContextSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 4); /** * Describes the message gitpod.v1.AgentCodeContext.ContextURL. * Use `create(AgentCodeContext_ContextURLSchema)` to create a new message. */ exports.AgentCodeContext_ContextURLSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 4, 0); /** * Describes the message gitpod.v1.StartAgentRequest. * Use `create(StartAgentRequestSchema)` to create a new message. */ exports.StartAgentRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 5); /** * Describes the message gitpod.v1.StartAgentResponse. * Use `create(StartAgentResponseSchema)` to create a new message. */ exports.StartAgentResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 6); /** * Describes the message gitpod.v1.ListAgentExecutionsRequest. * Use `create(ListAgentExecutionsRequestSchema)` to create a new message. */ exports.ListAgentExecutionsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 7); /** * Describes the message gitpod.v1.ListAgentExecutionsRequest.Filter. * Use `create(ListAgentExecutionsRequest_FilterSchema)` to create a new message. */ exports.ListAgentExecutionsRequest_FilterSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 7, 0); /** * Describes the message gitpod.v1.ListAgentExecutionsResponse. * Use `create(ListAgentExecutionsResponseSchema)` to create a new message. */ exports.ListAgentExecutionsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 8); /** * Describes the message gitpod.v1.GetAgentExecutionRequest. * Use `create(GetAgentExecutionRequestSchema)` to create a new message. */ exports.GetAgentExecutionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 9); /** * Describes the message gitpod.v1.GetAgentExecutionResponse. * Use `create(GetAgentExecutionResponseSchema)` to create a new message. */ exports.GetAgentExecutionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 10); /** * Describes the message gitpod.v1.DeleteAgentExecutionRequest. * Use `create(DeleteAgentExecutionRequestSchema)` to create a new message. */ exports.DeleteAgentExecutionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 11); /** * Describes the message gitpod.v1.DeleteAgentExecutionResponse. * Use `create(DeleteAgentExecutionResponseSchema)` to create a new message. */ exports.DeleteAgentExecutionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 12); /** * Describes the message gitpod.v1.AgentExecution. * Use `create(AgentExecutionSchema)` to create a new message. */ exports.AgentExecutionSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13); /** * Describes the message gitpod.v1.AgentExecution.Metadata. * Use `create(AgentExecution_MetadataSchema)` to create a new message. */ exports.AgentExecution_MetadataSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 0); /** * Describes the message gitpod.v1.AgentExecution.Spec. * Use `create(AgentExecution_SpecSchema)` to create a new message. */ exports.AgentExecution_SpecSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 1); /** * Describes the message gitpod.v1.AgentExecution.Spec.Limits. * Use `create(AgentExecution_Spec_LimitsSchema)` to create a new message. */ exports.AgentExecution_Spec_LimitsSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 1, 0); /** * Describes the message gitpod.v1.AgentExecution.Status. * Use `create(AgentExecution_StatusSchema)` to create a new message. */ exports.AgentExecution_StatusSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2); /** * Describes the message gitpod.v1.AgentExecution.Status.ToolUse. * Use `create(AgentExecution_Status_ToolUseSchema)` to create a new message. */ exports.AgentExecution_Status_ToolUseSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 0); /** * Describes the message gitpod.v1.AgentExecution.Status.LLM. * Use `create(AgentExecution_Status_LLMSchema)` to create a new message. */ exports.AgentExecution_Status_LLMSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 1); /** * Describes the message gitpod.v1.AgentExecution.Status.CurrentOperation. * Use `create(AgentExecution_Status_CurrentOperationSchema)` to create a new message. */ exports.AgentExecution_Status_CurrentOperationSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 2); /** * Describes the message gitpod.v1.AgentExecution.Status.EnvironmentUsage. * Use `create(AgentExecution_Status_EnvironmentUsageSchema)` to create a new message. */ exports.AgentExecution_Status_EnvironmentUsageSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 3); /** * Describes the message gitpod.v1.AgentExecution.Status.ConversationURLs. * Use `create(AgentExecution_Status_ConversationURLsSchema)` to create a new message. */ exports.AgentExecution_Status_ConversationURLsSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 4); /** * Describes the message gitpod.v1.AgentExecution.Status.Subagent. * Use `create(AgentExecution_Status_SubagentSchema)` to create a new message. */ exports.AgentExecution_Status_SubagentSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 5); /** * Describes the message gitpod.v1.AgentExecution.Status.OutputValue. * Use `create(AgentExecution_Status_OutputValueSchema)` to create a new message. */ exports.AgentExecution_Status_OutputValueSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 6); /** * Describes the message gitpod.v1.AgentExecution.Status.LLMCapabilities. * Use `create(AgentExecution_Status_LLMCapabilitiesSchema)` to create a new message. */ exports.AgentExecution_Status_LLMCapabilitiesSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 7); /** * Describes the message gitpod.v1.AgentExecution.Status.MCPIntegrationStatus. * Use `create(AgentExecution_Status_MCPIntegrationStatusSchema)` to create a new message. */ exports.AgentExecution_Status_MCPIntegrationStatusSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 8); /** * Describes the message gitpod.v1.AgentExecution.Status.Goal. * Use `create(AgentExecution_Status_GoalSchema)` to create a new message. */ exports.AgentExecution_Status_GoalSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 2, 9); /** * @generated from enum gitpod.v1.AgentExecution.Status.Goal.GoalStatus */ var AgentExecution_Status_Goal_GoalStatus; (function (AgentExecution_Status_Goal_GoalStatus) { /** * The agent did not report a goal status. * * @generated from enum value: GOAL_STATUS_UNSPECIFIED = 0; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["UNSPECIFIED"] = 0] = "UNSPECIFIED"; /** * The goal is active and the agent may continue working toward it. * * @generated from enum value: GOAL_STATUS_ACTIVE = 1; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["ACTIVE"] = 1] = "ACTIVE"; /** * The goal is paused and should not continue until resumed. * * @generated from enum value: GOAL_STATUS_PAUSED = 2; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["PAUSED"] = 2] = "PAUSED"; /** * The goal is complete and no further work is required. * * @generated from enum value: GOAL_STATUS_COMPLETED = 3; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["COMPLETED"] = 3] = "COMPLETED"; /** * The goal stopped because its configured token budget was exhausted. * * @generated from enum value: GOAL_STATUS_BUDGET_EXHAUSTED = 4; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["BUDGET_EXHAUSTED"] = 4] = "BUDGET_EXHAUSTED"; /** * The goal is blocked because the agent needs user input or an external state change before it can make progress. * * @generated from enum value: GOAL_STATUS_BLOCKED = 5; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["BLOCKED"] = 5] = "BLOCKED"; /** * The goal stopped because execution was limited by account, plan, or system usage limits rather than its explicit token budget. * * @generated from enum value: GOAL_STATUS_USAGE_LIMITED = 6; */ AgentExecution_Status_Goal_GoalStatus[AgentExecution_Status_Goal_GoalStatus["USAGE_LIMITED"] = 6] = "USAGE_LIMITED"; })(AgentExecution_Status_Goal_GoalStatus || (exports.AgentExecution_Status_Goal_GoalStatus = AgentExecution_Status_Goal_GoalStatus = {})); /** * Describes the enum gitpod.v1.AgentExecution.Status.Goal.GoalStatus. */ exports.AgentExecution_Status_Goal_GoalStatusSchema = (0, codegenv2_1.enumDesc)(exports.file_gitpod_v1_agent, 13, 2, 9, 0); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo. * Use `create(AgentExecution_WaitingInfoSchema)` to create a new message. */ exports.AgentExecution_WaitingInfoSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo.TimerInterest. * Use `create(AgentExecution_WaitingInfo_TimerInterestSchema)` to create a new message. */ exports.AgentExecution_WaitingInfo_TimerInterestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3, 0); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo.SubAgentInterest. * Use `create(AgentExecution_WaitingInfo_SubAgentInterestSchema)` to create a new message. */ exports.AgentExecution_WaitingInfo_SubAgentInterestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3, 1); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo.UserMessageInterest. * Use `create(AgentExecution_WaitingInfo_UserMessageInterestSchema)` to create a new message. */ exports.AgentExecution_WaitingInfo_UserMessageInterestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3, 2); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo.EnvironmentInterest. * Use `create(AgentExecution_WaitingInfo_EnvironmentInterestSchema)` to create a new message. */ exports.AgentExecution_WaitingInfo_EnvironmentInterestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3, 3); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo.DevcontainerRebuildInterest. * Use `create(AgentExecution_WaitingInfo_DevcontainerRebuildInterestSchema)` to create a new message. */ exports.AgentExecution_WaitingInfo_DevcontainerRebuildInterestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3, 4); /** * Describes the message gitpod.v1.AgentExecution.WaitingInfo.Interest. * Use `create(AgentExecution_WaitingInfo_InterestSchema)` to create a new message. */ exports.AgentExecution_WaitingInfo_InterestSchema = (0, codegenv2_1.messageDesc)(exports.file_gitpod_v1_agent, 13, 3, 5); /** * @generated from enum gitpod.v1.AgentExecution.Phase */ var AgentExecution_Phase; (function (AgentExecutio