@eide/foir-proto-ts 0.13.0 → 0.14.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eide/foir-proto-ts",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./analytics/v1/analytics_pb": "./src/analytics/v1/analytics_pb.js",
@@ -3,7 +3,7 @@
3
3
  /* eslint-disable */
4
4
  // @ts-nocheck
5
5
 
6
- import { CancelOperationExecutionRequest, CancelOperationExecutionResponse, CompleteOperationExecutionRequest, CompleteOperationExecutionResponse, CreateOperationRequest, CreateOperationResponse, DeleteOperationRequest, DeleteOperationResponse, DismissDeadLetterEntryRequest, DismissDeadLetterEntryResponse, ExecuteOperationRequest, ExecuteOperationResponse, FailOperationExecutionRequest, FailOperationExecutionResponse, GetApplicableOperationsRequest, GetApplicableOperationsResponse, GetDeadLetterStatsRequest, GetDeadLetterStatsResponse, GetOperationExecutionRequest, GetOperationExecutionResponse, GetOperationExecutionStatsRequest, GetOperationExecutionStatsResponse, GetOperationQuotaUsageRequest, GetOperationQuotaUsageResponse, GetOperationRequest, GetOperationResponse, GetSigningSecretRawRequest, GetSigningSecretRawResponse, GetSigningSecretRequest, GetSigningSecretResponse, ListCircuitStatesRequest, ListCircuitStatesResponse, ListDeadLetterEntriesRequest, ListDeadLetterEntriesResponse, ListOperationExecutionsRequest, ListOperationExecutionsResponse, ListOperationsRequest, ListOperationsResponse, RegenerateSigningSecretRequest, RegenerateSigningSecretResponse, ReportOperationProgressRequest, ReportOperationProgressResponse, ResetCircuitRequest, ResetCircuitResponse, RetryDeadLetterEntryRequest, RetryDeadLetterEntryResponse, UpdateOperationRequest, UpdateOperationResponse } from "./operations_pbjs";
6
+ import { CancelOperationExecutionRequest, CancelOperationExecutionResponse, CancelOperationExecutionsRequest, CancelOperationExecutionsResponse, CompleteOperationExecutionRequest, CompleteOperationExecutionResponse, CreateOperationRequest, CreateOperationResponse, DeleteOperationRequest, DeleteOperationResponse, DismissDeadLetterEntryRequest, DismissDeadLetterEntryResponse, ExecuteOperationRequest, ExecuteOperationResponse, FailOperationExecutionRequest, FailOperationExecutionResponse, GetApplicableOperationsRequest, GetApplicableOperationsResponse, GetDeadLetterStatsRequest, GetDeadLetterStatsResponse, GetOperationExecutionRequest, GetOperationExecutionResponse, GetOperationExecutionStatsRequest, GetOperationExecutionStatsResponse, GetOperationQuotaUsageRequest, GetOperationQuotaUsageResponse, GetOperationRequest, GetOperationResponse, GetSigningSecretRawRequest, GetSigningSecretRawResponse, GetSigningSecretRequest, GetSigningSecretResponse, ListCircuitStatesRequest, ListCircuitStatesResponse, ListDeadLetterEntriesRequest, ListDeadLetterEntriesResponse, ListOperationExecutionsRequest, ListOperationExecutionsResponse, ListOperationsRequest, ListOperationsResponse, RegenerateSigningSecretRequest, RegenerateSigningSecretResponse, ReportOperationProgressRequest, ReportOperationProgressResponse, ResetCircuitRequest, ResetCircuitResponse, RetryDeadLetterEntryRequest, RetryDeadLetterEntryResponse, UpdateOperationRequest, UpdateOperationResponse } from "./operations_pbjs";
7
7
  import { MethodKind } from "@bufbuild/protobuf";
8
8
 
9
9
  /**
@@ -177,6 +177,15 @@ export declare const OperationsService: {
177
177
  readonly O: typeof CancelOperationExecutionResponse,
178
178
  readonly kind: MethodKind.Unary,
179
179
  },
180
+ /**
181
+ * @generated from rpc operations.v1.OperationsService.CancelOperationExecutions
182
+ */
183
+ readonly cancelOperationExecutions: {
184
+ readonly name: "CancelOperationExecutions",
185
+ readonly I: typeof CancelOperationExecutionsRequest,
186
+ readonly O: typeof CancelOperationExecutionsResponse,
187
+ readonly kind: MethodKind.Unary,
188
+ },
180
189
  /**
181
190
  * Async-callback completion. Extensions normally use the REST endpoints
182
191
  * (token+HMAC); these RPCs exist for admin tooling and the SDK.
@@ -3,7 +3,7 @@
3
3
  /* eslint-disable */
4
4
  // @ts-nocheck
5
5
 
6
- import { CancelOperationExecutionRequest, CancelOperationExecutionResponse, CompleteOperationExecutionRequest, CompleteOperationExecutionResponse, CreateOperationRequest, CreateOperationResponse, DeleteOperationRequest, DeleteOperationResponse, DismissDeadLetterEntryRequest, DismissDeadLetterEntryResponse, ExecuteOperationRequest, ExecuteOperationResponse, FailOperationExecutionRequest, FailOperationExecutionResponse, GetApplicableOperationsRequest, GetApplicableOperationsResponse, GetDeadLetterStatsRequest, GetDeadLetterStatsResponse, GetOperationExecutionRequest, GetOperationExecutionResponse, GetOperationExecutionStatsRequest, GetOperationExecutionStatsResponse, GetOperationQuotaUsageRequest, GetOperationQuotaUsageResponse, GetOperationRequest, GetOperationResponse, GetSigningSecretRawRequest, GetSigningSecretRawResponse, GetSigningSecretRequest, GetSigningSecretResponse, ListCircuitStatesRequest, ListCircuitStatesResponse, ListDeadLetterEntriesRequest, ListDeadLetterEntriesResponse, ListOperationExecutionsRequest, ListOperationExecutionsResponse, ListOperationsRequest, ListOperationsResponse, RegenerateSigningSecretRequest, RegenerateSigningSecretResponse, ReportOperationProgressRequest, ReportOperationProgressResponse, ResetCircuitRequest, ResetCircuitResponse, RetryDeadLetterEntryRequest, RetryDeadLetterEntryResponse, UpdateOperationRequest, UpdateOperationResponse } from "./operations_pbjs";
6
+ import { CancelOperationExecutionRequest, CancelOperationExecutionResponse, CancelOperationExecutionsRequest, CancelOperationExecutionsResponse, CompleteOperationExecutionRequest, CompleteOperationExecutionResponse, CreateOperationRequest, CreateOperationResponse, DeleteOperationRequest, DeleteOperationResponse, DismissDeadLetterEntryRequest, DismissDeadLetterEntryResponse, ExecuteOperationRequest, ExecuteOperationResponse, FailOperationExecutionRequest, FailOperationExecutionResponse, GetApplicableOperationsRequest, GetApplicableOperationsResponse, GetDeadLetterStatsRequest, GetDeadLetterStatsResponse, GetOperationExecutionRequest, GetOperationExecutionResponse, GetOperationExecutionStatsRequest, GetOperationExecutionStatsResponse, GetOperationQuotaUsageRequest, GetOperationQuotaUsageResponse, GetOperationRequest, GetOperationResponse, GetSigningSecretRawRequest, GetSigningSecretRawResponse, GetSigningSecretRequest, GetSigningSecretResponse, ListCircuitStatesRequest, ListCircuitStatesResponse, ListDeadLetterEntriesRequest, ListDeadLetterEntriesResponse, ListOperationExecutionsRequest, ListOperationExecutionsResponse, ListOperationsRequest, ListOperationsResponse, RegenerateSigningSecretRequest, RegenerateSigningSecretResponse, ReportOperationProgressRequest, ReportOperationProgressResponse, ResetCircuitRequest, ResetCircuitResponse, RetryDeadLetterEntryRequest, RetryDeadLetterEntryResponse, UpdateOperationRequest, UpdateOperationResponse } from "./operations_pbjs";
7
7
  import { MethodKind } from "@bufbuild/protobuf";
8
8
 
9
9
  /**
@@ -177,6 +177,15 @@ export const OperationsService = {
177
177
  O: CancelOperationExecutionResponse,
178
178
  kind: MethodKind.Unary,
179
179
  },
180
+ /**
181
+ * @generated from rpc operations.v1.OperationsService.CancelOperationExecutions
182
+ */
183
+ cancelOperationExecutions: {
184
+ name: "CancelOperationExecutions",
185
+ I: CancelOperationExecutionsRequest,
186
+ O: CancelOperationExecutionsResponse,
187
+ kind: MethodKind.Unary,
188
+ },
180
189
  /**
181
190
  * Async-callback completion. Extensions normally use the REST endpoints
182
191
  * (token+HMAC); these RPCs exist for admin tooling and the SDK.
@@ -141,6 +141,19 @@ export declare type Operation = Message<"operations.v1.Operation"> & {
141
141
  */
142
142
  callbackTtlSeconds?: number;
143
143
 
144
+ /**
145
+ * Retry policy applied specifically when a callback times out. Distinct
146
+ * from `retry_policy`, which governs HTTP dispatch failures (network
147
+ * error, 5xx). Splitting these lets operators retry dispatch failures
148
+ * aggressively (they may be transient) while being conservative about
149
+ * callback timeouts (often symptom of a slow upstream; retrying burns
150
+ * another full TTL). Same shape as retry_policy — `{maxRetries: int}`.
151
+ * Falls back to `retry_policy` when unset, then to the watchdog default.
152
+ *
153
+ * @generated from field: optional google.protobuf.Struct callback_timeout_retry_policy = 24;
154
+ */
155
+ callbackTimeoutRetryPolicy?: JsonObject;
156
+
144
157
  /**
145
158
  * Attribution.
146
159
  *
@@ -707,6 +720,11 @@ export declare type CreateOperationRequest = Message<"operations.v1.CreateOperat
707
720
  * @generated from field: optional int32 callback_ttl_seconds = 20;
708
721
  */
709
722
  callbackTtlSeconds?: number;
723
+
724
+ /**
725
+ * @generated from field: optional google.protobuf.Struct callback_timeout_retry_policy = 21;
726
+ */
727
+ callbackTimeoutRetryPolicy?: JsonObject;
710
728
  };
711
729
 
712
730
  /**
@@ -819,6 +837,11 @@ export declare type UpdateOperationRequest = Message<"operations.v1.UpdateOperat
819
837
  * @generated from field: optional int32 callback_ttl_seconds = 17;
820
838
  */
821
839
  callbackTtlSeconds?: number;
840
+
841
+ /**
842
+ * @generated from field: optional google.protobuf.Struct callback_timeout_retry_policy = 18;
843
+ */
844
+ callbackTimeoutRetryPolicy?: JsonObject;
822
845
  };
823
846
 
824
847
  /**
@@ -1446,6 +1469,62 @@ export declare type CancelOperationExecutionResponse = Message<"operations.v1.Ca
1446
1469
  */
1447
1470
  export declare const CancelOperationExecutionResponseSchema: GenMessage<CancelOperationExecutionResponse>;
1448
1471
 
1472
+ /**
1473
+ * @generated from message operations.v1.CancelOperationExecutionsRequest
1474
+ */
1475
+ export declare type CancelOperationExecutionsRequest = Message<"operations.v1.CancelOperationExecutionsRequest"> & {
1476
+ /**
1477
+ * Operation key scopes the bulk cancel to a single operation's executions,
1478
+ * matching the "cancel everything in-flight for a misbehaving operation"
1479
+ * operator workflow.
1480
+ *
1481
+ * @generated from field: string operation_key = 1;
1482
+ */
1483
+ operationKey: string;
1484
+
1485
+ /**
1486
+ * Statuses to cancel. When empty, defaults to all non-terminal states
1487
+ * (pending, dispatched, running). Passing a subset narrows the effect
1488
+ * (e.g. only cancel `running` and leave fresh `pending` rows in place).
1489
+ *
1490
+ * @generated from field: repeated string statuses = 2;
1491
+ */
1492
+ statuses: string[];
1493
+ };
1494
+
1495
+ /**
1496
+ * Describes the message operations.v1.CancelOperationExecutionsRequest.
1497
+ * Use `create(CancelOperationExecutionsRequestSchema)` to create a new message.
1498
+ */
1499
+ export declare const CancelOperationExecutionsRequestSchema: GenMessage<CancelOperationExecutionsRequest>;
1500
+
1501
+ /**
1502
+ * @generated from message operations.v1.CancelOperationExecutionsResponse
1503
+ */
1504
+ export declare type CancelOperationExecutionsResponse = Message<"operations.v1.CancelOperationExecutionsResponse"> & {
1505
+ /**
1506
+ * Number of executions that transitioned to cancelled as part of this call.
1507
+ * Rows that were already terminal are not counted.
1508
+ *
1509
+ * @generated from field: int32 cancelled_count = 1;
1510
+ */
1511
+ cancelledCount: number;
1512
+
1513
+ /**
1514
+ * Ids of the cancelled rows, so callers can update per-row UI state without
1515
+ * refetching the full list.
1516
+ *
1517
+ * @generated from field: repeated string cancelled_ids = 2;
1518
+ */
1519
+ cancelledIds: string[];
1520
+ };
1521
+
1522
+ /**
1523
+ * Describes the message operations.v1.CancelOperationExecutionsResponse.
1524
+ * Use `create(CancelOperationExecutionsResponseSchema)` to create a new message.
1525
+ */
1526
+ export declare const CancelOperationExecutionsResponseSchema: GenMessage<CancelOperationExecutionsResponse>;
1527
+
1449
1528
  /**
1450
1529
  * @generated from message operations.v1.CompleteOperationExecutionRequest
1451
1530
  */
@@ -1923,6 +2002,14 @@ export declare const OperationsService: GenService<{
1923
2002
  input: typeof CancelOperationExecutionRequestSchema;
1924
2003
  output: typeof CancelOperationExecutionResponseSchema;
1925
2004
  },
2005
+ /**
2006
+ * @generated from rpc operations.v1.OperationsService.CancelOperationExecutions
2007
+ */
2008
+ cancelOperationExecutions: {
2009
+ methodKind: "unary";
2010
+ input: typeof CancelOperationExecutionsRequestSchema;
2011
+ output: typeof CancelOperationExecutionsResponseSchema;
2012
+ },
1926
2013
  /**
1927
2014
  * Async-callback completion. Extensions normally use the REST endpoints
1928
2015
  * (token+HMAC); these RPCs exist for admin tooling and the SDK.
@@ -9,7 +9,7 @@ import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bu
9
9
  * Describes the file operations/v1/operations.proto.
10
10
  */
11
11
  export const file_operations_v1_operations = /*@__PURE__*/
12
- fileDesc("Ch5vcGVyYXRpb25zL3YxL29wZXJhdGlvbnMucHJvdG8SDW9wZXJhdGlvbnMudjEiyAgKCU9wZXJhdGlvbhIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEhEKBGljb24YBSABKAlIAYgBARIVCghjYXRlZ29yeRgGIAEoCUgCiAEBEhAKCGVuZHBvaW50GAcgASgJEhoKDWVuZHBvaW50X2F1dGgYCCABKAlIA4gBARISCgp0aW1lb3V0X21zGAkgASgFEjIKDHJldHJ5X3BvbGljeRgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBIgBARIyCgxpbnB1dF9zY2hlbWEYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQESMwoNb3V0cHV0X3NjaGVtYRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBogBARIoCgJ1aRgNIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIB4gBARIRCglpc19hY3RpdmUYDiABKAgSFQoNYWxsb3dlZF9yb2xlcxgPIAMoCRIzCg1zdHJlYW1fY29uZmlnGBAgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgIiAEBEiwKBnF1b3RhcxgRIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICYgBARIWCgljb25maWdfaWQYEiABKAlICogBARIyCgxwcmVjb25kaXRpb24YEyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAuIAQESEQoJdGVuYW50X2lkGBQgASgJEhcKCnByb2plY3RfaWQYFSABKAlIDIgBARIkChdzdXBwb3J0c19hc3luY19jYWxsYmFjaxgWIAEoCEgNiAEBEiEKFGNhbGxiYWNrX3R0bF9zZWNvbmRzGBcgASgFSA6IAQESFwoKY3JlYXRlZF9ieRgeIAEoCUgPiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9kZXNjcmlwdGlvbkIHCgVfaWNvbkILCglfY2F0ZWdvcnlCEAoOX2VuZHBvaW50X2F1dGhCDwoNX3JldHJ5X3BvbGljeUIPCg1faW5wdXRfc2NoZW1hQhAKDl9vdXRwdXRfc2NoZW1hQgUKA191aUIQCg5fc3RyZWFtX2NvbmZpZ0IJCgdfcXVvdGFzQgwKCl9jb25maWdfaWRCDwoNX3ByZWNvbmRpdGlvbkINCgtfcHJvamVjdF9pZEIaChhfc3VwcG9ydHNfYXN5bmNfY2FsbGJhY2tCFwoVX2NhbGxiYWNrX3R0bF9zZWNvbmRzQg0KC19jcmVhdGVkX2J5ItoIChJPcGVyYXRpb25FeGVjdXRpb24SCgoCaWQYASABKAkSFQoNb3BlcmF0aW9uX2tleRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSGQoMdHJpZ2dlcl90eXBlGAQgASgJSACIAQESNQoPdHJpZ2dlcl9jb250ZXh0GAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEisKBWlucHV0GAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBEhgKC3Jlc3VsdF9qc29uGAcgASgMSAOIAQESFwoKZXJyb3JfanNvbhgIIAEoDEgEiAEBEjMKCnN0YXJ0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAWIAQESNQoMY29tcGxldGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgGiAEBEhgKC2R1cmF0aW9uX21zGAsgASgFSAeIAQESEwoLcmV0cnlfY291bnQYDCABKAUSGQoMcHJvZ3Jlc3NfcGN0GA0gASgFSAiIAQESHQoQcHJvZ3Jlc3NfbWVzc2FnZRgOIAEoCUgJiAEBEjcKEXByb2dyZXNzX21ldGFkYXRhGA8gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgKiAEBEjwKE3Byb2dyZXNzX3VwZGF0ZWRfYXQYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAuIAQESPAoTY2FsbGJhY2tfZXhwaXJlc19hdBgRIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIDIgBARIgChNwYXJlbnRfZXhlY3V0aW9uX2lkGBIgASgJSA2IAQESNQoMY2FuY2VsbGVkX2F0GBMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgOiAEBEhEKCXRlbmFudF9pZBgUIAEoCRIXCgpwcm9qZWN0X2lkGBUgASgJSA+IAQESLgoKY3JlYXRlZF9hdBgyIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCDwoNX3RyaWdnZXJfdHlwZUISChBfdHJpZ2dlcl9jb250ZXh0QggKBl9pbnB1dEIOCgxfcmVzdWx0X2pzb25CDQoLX2Vycm9yX2pzb25CDQoLX3N0YXJ0ZWRfYXRCDwoNX2NvbXBsZXRlZF9hdEIOCgxfZHVyYXRpb25fbXNCDwoNX3Byb2dyZXNzX3BjdEITChFfcHJvZ3Jlc3NfbWVzc2FnZUIUChJfcHJvZ3Jlc3NfbWV0YWRhdGFCFgoUX3Byb2dyZXNzX3VwZGF0ZWRfYXRCFgoUX2NhbGxiYWNrX2V4cGlyZXNfYXRCFgoUX3BhcmVudF9leGVjdXRpb25faWRCDwoNX2NhbmNlbGxlZF9hdEINCgtfcHJvamVjdF9pZCLfBAoPRGVhZExldHRlckVudHJ5EgoKAmlkGAEgASgJEhUKDW9wZXJhdGlvbl9rZXkYAiABKAkSGQoMZXhlY3V0aW9uX2lkGAMgASgJSACIAQESKwoFaW5wdXQYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAGIAQESGQoMdHJpZ2dlcl90eXBlGAUgASgJSAKIAQESEAoIYXR0ZW1wdHMYBiABKAUSEgoKbGFzdF9lcnJvchgHIAEoCRIXCgplcnJvcl9jb2RlGAggASgJSAOIAQESDgoGc3RhdHVzGAkgASgJEi0KCWZhaWxlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoKcmV0cmllZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARI1CgxkaXNtaXNzZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAWIAQESGQoMZGlzbWlzc2VkX2J5GA0gASgJSAaIAQESEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSLgoKY3JlYXRlZF9hdBgyIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCDwoNX2V4ZWN1dGlvbl9pZEIICgZfaW5wdXRCDwoNX3RyaWdnZXJfdHlwZUINCgtfZXJyb3JfY29kZUINCgtfcmV0cmllZF9hdEIPCg1fZGlzbWlzc2VkX2F0Qg8KDV9kaXNtaXNzZWRfYnkitQIKDENpcmN1aXRTdGF0ZRIVCg1vcGVyYXRpb25fa2V5GAEgASgJEhAKCGVuZHBvaW50GAIgASgJEg0KBXN0YXRlGAMgASgJEhUKDWZhaWx1cmVfY291bnQYBCABKAUSOAoPbGFzdF9mYWlsdXJlX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjIKCW9wZW5lZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARI1CgxoYWxmX29wZW5fYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQFCEgoQX2xhc3RfZmFpbHVyZV9hdEIMCgpfb3BlbmVkX2F0Qg8KDV9oYWxmX29wZW5fYXQigQEKDkV4ZWN1dGlvblN0YXRzEhUKDW9wZXJhdGlvbl9rZXkYASABKAkSDQoFdG90YWwYAiABKAUSDwoHc3VjY2VzcxgDIAEoBRIOCgZmYWlsZWQYBCABKAUSDwoHcGVuZGluZxgFIAEoBRIXCg9hdmdfZHVyYXRpb25fbXMYBiABKAEiVQoPRGVhZExldHRlclN0YXRzEg8KB3BlbmRpbmcYASABKAUSDwoHcmV0cmllZBgCIAEoBRIRCglkaXNtaXNzZWQYAyABKAUSDQoFdG90YWwYBCABKAUixgEKFUxpc3RPcGVyYXRpb25zUmVxdWVzdBIVCghjYXRlZ29yeRgBIAEoCUgAiAEBEhYKCWlzX2FjdGl2ZRgCIAEoCEgBiAEBEhMKBnNlYXJjaBgDIAEoCUgCiAEBEhYKCWNvbmZpZ19pZBgEIAEoCUgDiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUILCglfY2F0ZWdvcnlCDAoKX2lzX2FjdGl2ZUIJCgdfc2VhcmNoQgwKCl9jb25maWdfaWQiVQoWTGlzdE9wZXJhdGlvbnNSZXNwb25zZRIsCgpvcGVyYXRpb25zGAEgAygLMhgub3BlcmF0aW9ucy52MS5PcGVyYXRpb24SDQoFdG90YWwYAiABKAUiOwoTR2V0T3BlcmF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRIQCgNrZXkYAiABKAlIAIgBAUIGCgRfa2V5IkMKFEdldE9wZXJhdGlvblJlc3BvbnNlEisKCW9wZXJhdGlvbhgBIAEoCzIYLm9wZXJhdGlvbnMudjEuT3BlcmF0aW9uIq0HChZDcmVhdGVPcGVyYXRpb25SZXF1ZXN0EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESEQoEaWNvbhgEIAEoCUgBiAEBEhUKCGNhdGVnb3J5GAUgASgJSAKIAQESEAoIZW5kcG9pbnQYBiABKAkSGgoNZW5kcG9pbnRfYXV0aBgHIAEoCUgDiAEBEhcKCnRpbWVvdXRfbXMYCCABKAVIBIgBARIyCgxpbnB1dF9zY2hlbWEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQESMwoNb3V0cHV0X3NjaGVtYRgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBogBARIoCgJ1aRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIB4gBARIWCgljb25maWdfaWQYDCABKAlICIgBARIzCg1zdHJlYW1fY29uZmlnGA0gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgJiAEBEiwKBnF1b3RhcxgOIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICogBARIVCg1hbGxvd2VkX3JvbGVzGA8gAygJEjIKDHJldHJ5X3BvbGljeRgQIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIC4gBARIyCgxwcmVjb25kaXRpb24YESABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAyIAQESFgoJaXNfYWN0aXZlGBIgASgISA2IAQESJAoXc3VwcG9ydHNfYXN5bmNfY2FsbGJhY2sYEyABKAhIDogBARIhChRjYWxsYmFja190dGxfc2Vjb25kcxgUIAEoBUgPiAEBQg4KDF9kZXNjcmlwdGlvbkIHCgVfaWNvbkILCglfY2F0ZWdvcnlCEAoOX2VuZHBvaW50X2F1dGhCDQoLX3RpbWVvdXRfbXNCDwoNX2lucHV0X3NjaGVtYUIQCg5fb3V0cHV0X3NjaGVtYUIFCgNfdWlCDAoKX2NvbmZpZ19pZEIQCg5fc3RyZWFtX2NvbmZpZ0IJCgdfcXVvdGFzQg8KDV9yZXRyeV9wb2xpY3lCDwoNX3ByZWNvbmRpdGlvbkIMCgpfaXNfYWN0aXZlQhoKGF9zdXBwb3J0c19hc3luY19jYWxsYmFja0IXChVfY2FsbGJhY2tfdHRsX3NlY29uZHMiRgoXQ3JlYXRlT3BlcmF0aW9uUmVzcG9uc2USKwoJb3BlcmF0aW9uGAEgASgLMhgub3BlcmF0aW9ucy52MS5PcGVyYXRpb24i5gYKFlVwZGF0ZU9wZXJhdGlvblJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESFQoIZW5kcG9pbnQYBCABKAlIAogBARIaCg1lbmRwb2ludF9hdXRoGAUgASgJSAOIAQESFwoKdGltZW91dF9tcxgGIAEoBUgEiAEBEjIKDGlucHV0X3NjaGVtYRgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBYgBARIzCg1vdXRwdXRfc2NoZW1hGAggASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgGiAEBEigKAnVpGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgHiAEBEhYKCWlzX2FjdGl2ZRgKIAEoCEgIiAEBEjMKDXN0cmVhbV9jb25maWcYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAmIAQESLAoGcXVvdGFzGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgKiAEBEjIKDHJldHJ5X3BvbGljeRgNIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIC4gBARIyCgxwcmVjb25kaXRpb24YDiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAyIAQESFQoNYWxsb3dlZF9yb2xlcxgPIAMoCRIkChdzdXBwb3J0c19hc3luY19jYWxsYmFjaxgQIAEoCEgNiAEBEiEKFGNhbGxiYWNrX3R0bF9zZWNvbmRzGBEgASgFSA6IAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgsKCV9lbmRwb2ludEIQCg5fZW5kcG9pbnRfYXV0aEINCgtfdGltZW91dF9tc0IPCg1faW5wdXRfc2NoZW1hQhAKDl9vdXRwdXRfc2NoZW1hQgUKA191aUIMCgpfaXNfYWN0aXZlQhAKDl9zdHJlYW1fY29uZmlnQgkKB19xdW90YXNCDwoNX3JldHJ5X3BvbGljeUIPCg1fcHJlY29uZGl0aW9uQhoKGF9zdXBwb3J0c19hc3luY19jYWxsYmFja0IXChVfY2FsbGJhY2tfdHRsX3NlY29uZHMiRgoXVXBkYXRlT3BlcmF0aW9uUmVzcG9uc2USKwoJb3BlcmF0aW9uGAEgASgLMhgub3BlcmF0aW9ucy52MS5PcGVyYXRpb24iJAoWRGVsZXRlT3BlcmF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIqChdEZWxldGVPcGVyYXRpb25SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIqgDChdFeGVjdXRlT3BlcmF0aW9uUmVxdWVzdBIVCg1vcGVyYXRpb25fa2V5GAEgASgJEisKBWlucHV0GAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEhkKDHRyaWdnZXJfdHlwZRgDIAEoCUgBiAEBEjUKD3RyaWdnZXJfY29udGV4dBgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIqCgRtb2RlGAUgASgOMhwub3BlcmF0aW9ucy52MS5FeGVjdXRpb25Nb2RlEhgKC2N1c3RvbWVyX2lkGAYgASgJSAOIAQESLAoGcmVjb3JkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEi0KB2NvbnRlbnQYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQFCCAoGX2lucHV0Qg8KDV90cmlnZ2VyX3R5cGVCEgoQX3RyaWdnZXJfY29udGV4dEIOCgxfY3VzdG9tZXJfaWRCCQoHX3JlY29yZEIKCghfY29udGVudCKpAgoYRXhlY3V0ZU9wZXJhdGlvblJlc3BvbnNlEjQKCWV4ZWN1dGlvbhgBIAEoCzIhLm9wZXJhdGlvbnMudjEuT3BlcmF0aW9uRXhlY3V0aW9uEhgKC3Jlc3VsdF9qc29uGAIgASgMSACIAQESGgoNZXJyb3JfbWVzc2FnZRgDIAEoCUgBiAEBEhEKCWNvbXBsZXRlZBgEIAEoCBIVCghwb2xsX3VybBgKIAEoCUgCiAEBEhcKCmNhbmNlbF91cmwYCyABKAlIA4gBARIUCgdtZXNzYWdlGAwgASgJSASIAQFCDgoMX3Jlc3VsdF9qc29uQhAKDl9lcnJvcl9tZXNzYWdlQgsKCV9wb2xsX3VybEINCgtfY2FuY2VsX3VybEIKCghfbWVzc2FnZSJ2Ch5MaXN0T3BlcmF0aW9uRXhlY3V0aW9uc1JlcXVlc3QSFQoNb3BlcmF0aW9uX2tleRgBIAEoCRITCgZzdGF0dXMYAiABKAlIAIgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCCQoHX3N0YXR1cyJnCh9MaXN0T3BlcmF0aW9uRXhlY3V0aW9uc1Jlc3BvbnNlEjUKCmV4ZWN1dGlvbnMYASADKAsyIS5vcGVyYXRpb25zLnYxLk9wZXJhdGlvbkV4ZWN1dGlvbhINCgV0b3RhbBgCIAEoBSJRCiFHZXRPcGVyYXRpb25FeGVjdXRpb25TdGF0c1JlcXVlc3QSGgoNb3BlcmF0aW9uX2tleRgBIAEoCUgAiAEBQhAKDl9vcGVyYXRpb25fa2V5IlIKIkdldE9wZXJhdGlvbkV4ZWN1dGlvblN0YXRzUmVzcG9uc2USLAoFc3RhdHMYASADKAsyHS5vcGVyYXRpb25zLnYxLkV4ZWN1dGlvblN0YXRzIosBChxMaXN0RGVhZExldHRlckVudHJpZXNSZXF1ZXN0EhoKDW9wZXJhdGlvbl9rZXkYASABKAlIAIgBARITCgZzdGF0dXMYAiABKAlIAYgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCEAoOX29wZXJhdGlvbl9rZXlCCQoHX3N0YXR1cyJfCh1MaXN0RGVhZExldHRlckVudHJpZXNSZXNwb25zZRIvCgdlbnRyaWVzGAEgAygLMh4ub3BlcmF0aW9ucy52MS5EZWFkTGV0dGVyRW50cnkSDQoFdG90YWwYAiABKAUiKQobUmV0cnlEZWFkTGV0dGVyRW50cnlSZXF1ZXN0EgoKAmlkGAEgASgJIi8KHFJldHJ5RGVhZExldHRlckVudHJ5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIrCh1EaXNtaXNzRGVhZExldHRlckVudHJ5UmVxdWVzdBIKCgJpZBgBIAEoCSIxCh5EaXNtaXNzRGVhZExldHRlckVudHJ5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIbChlHZXREZWFkTGV0dGVyU3RhdHNSZXF1ZXN0IksKGkdldERlYWRMZXR0ZXJTdGF0c1Jlc3BvbnNlEi0KBXN0YXRzGAEgASgLMh4ub3BlcmF0aW9ucy52MS5EZWFkTGV0dGVyU3RhdHMiGgoYTGlzdENpcmN1aXRTdGF0ZXNSZXF1ZXN0IkgKGUxpc3RDaXJjdWl0U3RhdGVzUmVzcG9uc2USKwoGc3RhdGVzGAEgAygLMhsub3BlcmF0aW9ucy52MS5DaXJjdWl0U3RhdGUiLAoTUmVzZXRDaXJjdWl0UmVxdWVzdBIVCg1vcGVyYXRpb25fa2V5GAEgASgJIicKFFJlc2V0Q2lyY3VpdFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiGQoXR2V0U2lnbmluZ1NlY3JldFJlcXVlc3QiOgoYR2V0U2lnbmluZ1NlY3JldFJlc3BvbnNlEg4KBnNlY3JldBgBIAEoCRIOCgZwcmVmaXgYAiABKAkiIAoeUmVnZW5lcmF0ZVNpZ25pbmdTZWNyZXRSZXF1ZXN0IjEKH1JlZ2VuZXJhdGVTaWduaW5nU2VjcmV0UmVzcG9uc2USDgoGc2VjcmV0GAEgASgJIkIKHkdldEFwcGxpY2FibGVPcGVyYXRpb25zUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSDQoFbGltaXQYCiABKAUiTwofR2V0QXBwbGljYWJsZU9wZXJhdGlvbnNSZXNwb25zZRIsCgpvcGVyYXRpb25zGAEgAygLMhgub3BlcmF0aW9ucy52MS5PcGVyYXRpb24iKgocR2V0T3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSJVCh1HZXRPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRI0CglleGVjdXRpb24YASABKAsyIS5vcGVyYXRpb25zLnYxLk9wZXJhdGlvbkV4ZWN1dGlvbiItCh9DYW5jZWxPcGVyYXRpb25FeGVjdXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIlMKIENhbmNlbE9wZXJhdGlvbkV4ZWN1dGlvblJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSEwoGc3RhdHVzGAIgASgJSACIAQFCCQoHX3N0YXR1cyJECiFDb21wbGV0ZU9wZXJhdGlvbkV4ZWN1dGlvblJlcXVlc3QSCgoCaWQYASABKAkSEwoLcmVzdWx0X2pzb24YAiABKAwiRwoiQ29tcGxldGVPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRIOCgZzdGF0dXMYASABKAkSEQoJY2FuY2VsbGVkGAIgASgIIqsBCh1GYWlsT3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRIMCgRjb2RlGAIgASgJEg8KB21lc3NhZ2UYAyABKAkSFgoJcmV0cnlhYmxlGAQgASgISACIAQESLQoHZGV0YWlscxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBAUIMCgpfcmV0cnlhYmxlQgoKCF9kZXRhaWxzIkMKHkZhaWxPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRIOCgZzdGF0dXMYASABKAkSEQoJY2FuY2VsbGVkGAIgASgIItsBCh5SZXBvcnRPcGVyYXRpb25Qcm9ncmVzc1JlcXVlc3QSCgoCaWQYASABKAkSGQoMcHJvZ3Jlc3NfcGN0GAIgASgFSACIAQESHQoQcHJvZ3Jlc3NfbWVzc2FnZRgDIAEoCUgBiAEBEjcKEXByb2dyZXNzX21ldGFkYXRhGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBQg8KDV9wcm9ncmVzc19wY3RCEwoRX3Byb2dyZXNzX21lc3NhZ2VCFAoSX3Byb2dyZXNzX21ldGFkYXRhIkQKH1JlcG9ydE9wZXJhdGlvblByb2dyZXNzUmVzcG9uc2USDgoGc3RhdHVzGAEgASgJEhEKCWNhbmNlbGxlZBgCIAEoCCKCAQodR2V0T3BlcmF0aW9uUXVvdGFVc2FnZVJlcXVlc3QSFQoNb3BlcmF0aW9uX2tleRgBIAEoCRIYCgtjdXN0b21lcl9pZBgCIAEoCUgAiAEBEhQKB3VzZXJfaWQYAyABKAlIAYgBAUIOCgxfY3VzdG9tZXJfaWRCCgoIX3VzZXJfaWQisgEKDlF1b3RhUnVsZVVzYWdlEhIKCnJ1bGVfaW5kZXgYASABKAUSEwoLc2VnbWVudF9rZXkYAiABKAkSDQoFbGltaXQYAyABKAUSDAoEdXNlZBgEIAEoBRIRCglyZW1haW5pbmcYBSABKAUSFQoNcmVzZXRfYXRfdW5peBgGIAEoAxINCgVzY29wZRgHIAEoCRIQCghkdXJhdGlvbhgIIAEoBRIPCgdtZXNzYWdlGAkgASgJIq0BCh5HZXRPcGVyYXRpb25RdW90YVVzYWdlUmVzcG9uc2USGAoQdG90YWxfZXhlY3V0aW9ucxgBIAEoAxIZChFwZXJpb2RfZXhlY3V0aW9ucxgCIAEoAxIYCgtxdW90YV9saW1pdBgDIAEoA0gAiAEBEiwKBXJ1bGVzGAQgAygLMh0ub3BlcmF0aW9ucy52MS5RdW90YVJ1bGVVc2FnZUIOCgxfcXVvdGFfbGltaXQiHAoaR2V0U2lnbmluZ1NlY3JldFJhd1JlcXVlc3QiLQobR2V0U2lnbmluZ1NlY3JldFJhd1Jlc3BvbnNlEg4KBnNlY3JldBgBIAEoCSpiCg1FeGVjdXRpb25Nb2RlEh4KGkVYRUNVVElPTl9NT0RFX1VOU1BFQ0lGSUVEEAASFwoTRVhFQ1VUSU9OX01PREVfU1lOQxABEhgKFEVYRUNVVElPTl9NT0RFX0FTWU5DEAIygBUKEU9wZXJhdGlvbnNTZXJ2aWNlEl0KDkxpc3RPcGVyYXRpb25zEiQub3BlcmF0aW9ucy52MS5MaXN0T3BlcmF0aW9uc1JlcXVlc3QaJS5vcGVyYXRpb25zLnYxLkxpc3RPcGVyYXRpb25zUmVzcG9uc2USVwoMR2V0T3BlcmF0aW9uEiIub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25SZXF1ZXN0GiMub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25SZXNwb25zZRJgCg9DcmVhdGVPcGVyYXRpb24SJS5vcGVyYXRpb25zLnYxLkNyZWF0ZU9wZXJhdGlvblJlcXVlc3QaJi5vcGVyYXRpb25zLnYxLkNyZWF0ZU9wZXJhdGlvblJlc3BvbnNlEmAKD1VwZGF0ZU9wZXJhdGlvbhIlLm9wZXJhdGlvbnMudjEuVXBkYXRlT3BlcmF0aW9uUmVxdWVzdBomLm9wZXJhdGlvbnMudjEuVXBkYXRlT3BlcmF0aW9uUmVzcG9uc2USYAoPRGVsZXRlT3BlcmF0aW9uEiUub3BlcmF0aW9ucy52MS5EZWxldGVPcGVyYXRpb25SZXF1ZXN0GiYub3BlcmF0aW9ucy52MS5EZWxldGVPcGVyYXRpb25SZXNwb25zZRJjChBFeGVjdXRlT3BlcmF0aW9uEiYub3BlcmF0aW9ucy52MS5FeGVjdXRlT3BlcmF0aW9uUmVxdWVzdBonLm9wZXJhdGlvbnMudjEuRXhlY3V0ZU9wZXJhdGlvblJlc3BvbnNlEngKF0xpc3RPcGVyYXRpb25FeGVjdXRpb25zEi0ub3BlcmF0aW9ucy52MS5MaXN0T3BlcmF0aW9uRXhlY3V0aW9uc1JlcXVlc3QaLi5vcGVyYXRpb25zLnYxLkxpc3RPcGVyYXRpb25FeGVjdXRpb25zUmVzcG9uc2USgQEKGkdldE9wZXJhdGlvbkV4ZWN1dGlvblN0YXRzEjAub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25FeGVjdXRpb25TdGF0c1JlcXVlc3QaMS5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvbkV4ZWN1dGlvblN0YXRzUmVzcG9uc2UScgoVTGlzdERlYWRMZXR0ZXJFbnRyaWVzEisub3BlcmF0aW9ucy52MS5MaXN0RGVhZExldHRlckVudHJpZXNSZXF1ZXN0Giwub3BlcmF0aW9ucy52MS5MaXN0RGVhZExldHRlckVudHJpZXNSZXNwb25zZRJvChRSZXRyeURlYWRMZXR0ZXJFbnRyeRIqLm9wZXJhdGlvbnMudjEuUmV0cnlEZWFkTGV0dGVyRW50cnlSZXF1ZXN0Gisub3BlcmF0aW9ucy52MS5SZXRyeURlYWRMZXR0ZXJFbnRyeVJlc3BvbnNlEnUKFkRpc21pc3NEZWFkTGV0dGVyRW50cnkSLC5vcGVyYXRpb25zLnYxLkRpc21pc3NEZWFkTGV0dGVyRW50cnlSZXF1ZXN0Gi0ub3BlcmF0aW9ucy52MS5EaXNtaXNzRGVhZExldHRlckVudHJ5UmVzcG9uc2USaQoSR2V0RGVhZExldHRlclN0YXRzEigub3BlcmF0aW9ucy52MS5HZXREZWFkTGV0dGVyU3RhdHNSZXF1ZXN0Gikub3BlcmF0aW9ucy52MS5HZXREZWFkTGV0dGVyU3RhdHNSZXNwb25zZRJmChFMaXN0Q2lyY3VpdFN0YXRlcxInLm9wZXJhdGlvbnMudjEuTGlzdENpcmN1aXRTdGF0ZXNSZXF1ZXN0Gigub3BlcmF0aW9ucy52MS5MaXN0Q2lyY3VpdFN0YXRlc1Jlc3BvbnNlElcKDFJlc2V0Q2lyY3VpdBIiLm9wZXJhdGlvbnMudjEuUmVzZXRDaXJjdWl0UmVxdWVzdBojLm9wZXJhdGlvbnMudjEuUmVzZXRDaXJjdWl0UmVzcG9uc2USeAoXR2V0QXBwbGljYWJsZU9wZXJhdGlvbnMSLS5vcGVyYXRpb25zLnYxLkdldEFwcGxpY2FibGVPcGVyYXRpb25zUmVxdWVzdBouLm9wZXJhdGlvbnMudjEuR2V0QXBwbGljYWJsZU9wZXJhdGlvbnNSZXNwb25zZRJyChVHZXRPcGVyYXRpb25FeGVjdXRpb24SKy5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvbkV4ZWN1dGlvblJlcXVlc3QaLC5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvbkV4ZWN1dGlvblJlc3BvbnNlEnsKGENhbmNlbE9wZXJhdGlvbkV4ZWN1dGlvbhIuLm9wZXJhdGlvbnMudjEuQ2FuY2VsT3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBovLm9wZXJhdGlvbnMudjEuQ2FuY2VsT3BlcmF0aW9uRXhlY3V0aW9uUmVzcG9uc2USgQEKGkNvbXBsZXRlT3BlcmF0aW9uRXhlY3V0aW9uEjAub3BlcmF0aW9ucy52MS5Db21wbGV0ZU9wZXJhdGlvbkV4ZWN1dGlvblJlcXVlc3QaMS5vcGVyYXRpb25zLnYxLkNvbXBsZXRlT3BlcmF0aW9uRXhlY3V0aW9uUmVzcG9uc2USdQoWRmFpbE9wZXJhdGlvbkV4ZWN1dGlvbhIsLm9wZXJhdGlvbnMudjEuRmFpbE9wZXJhdGlvbkV4ZWN1dGlvblJlcXVlc3QaLS5vcGVyYXRpb25zLnYxLkZhaWxPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRJ4ChdSZXBvcnRPcGVyYXRpb25Qcm9ncmVzcxItLm9wZXJhdGlvbnMudjEuUmVwb3J0T3BlcmF0aW9uUHJvZ3Jlc3NSZXF1ZXN0Gi4ub3BlcmF0aW9ucy52MS5SZXBvcnRPcGVyYXRpb25Qcm9ncmVzc1Jlc3BvbnNlEnUKFkdldE9wZXJhdGlvblF1b3RhVXNhZ2USLC5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvblF1b3RhVXNhZ2VSZXF1ZXN0Gi0ub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25RdW90YVVzYWdlUmVzcG9uc2USYwoQR2V0U2lnbmluZ1NlY3JldBImLm9wZXJhdGlvbnMudjEuR2V0U2lnbmluZ1NlY3JldFJlcXVlc3QaJy5vcGVyYXRpb25zLnYxLkdldFNpZ25pbmdTZWNyZXRSZXNwb25zZRJsChNHZXRTaWduaW5nU2VjcmV0UmF3Eikub3BlcmF0aW9ucy52MS5HZXRTaWduaW5nU2VjcmV0UmF3UmVxdWVzdBoqLm9wZXJhdGlvbnMudjEuR2V0U2lnbmluZ1NlY3JldFJhd1Jlc3BvbnNlEngKF1JlZ2VuZXJhdGVTaWduaW5nU2VjcmV0Ei0ub3BlcmF0aW9ucy52MS5SZWdlbmVyYXRlU2lnbmluZ1NlY3JldFJlcXVlc3QaLi5vcGVyYXRpb25zLnYxLlJlZ2VuZXJhdGVTaWduaW5nU2VjcmV0UmVzcG9uc2VCQVo/Z2l0aHViLmNvbS9laWRlc3R1ZGlvL2ZvaXIvZ2VuL3Byb3RvL29wZXJhdGlvbnMvdjE7b3BlcmF0aW9uc3YxYgZwcm90bzM", [file_google_protobuf_struct, file_google_protobuf_timestamp]);
12
+ fileDesc("Ch5vcGVyYXRpb25zL3YxL29wZXJhdGlvbnMucHJvdG8SDW9wZXJhdGlvbnMudjEirwkKCU9wZXJhdGlvbhIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEhEKBGljb24YBSABKAlIAYgBARIVCghjYXRlZ29yeRgGIAEoCUgCiAEBEhAKCGVuZHBvaW50GAcgASgJEhoKDWVuZHBvaW50X2F1dGgYCCABKAlIA4gBARISCgp0aW1lb3V0X21zGAkgASgFEjIKDHJldHJ5X3BvbGljeRgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBIgBARIyCgxpbnB1dF9zY2hlbWEYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQESMwoNb3V0cHV0X3NjaGVtYRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBogBARIoCgJ1aRgNIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIB4gBARIRCglpc19hY3RpdmUYDiABKAgSFQoNYWxsb3dlZF9yb2xlcxgPIAMoCRIzCg1zdHJlYW1fY29uZmlnGBAgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgIiAEBEiwKBnF1b3RhcxgRIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICYgBARIWCgljb25maWdfaWQYEiABKAlICogBARIyCgxwcmVjb25kaXRpb24YEyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAuIAQESEQoJdGVuYW50X2lkGBQgASgJEhcKCnByb2plY3RfaWQYFSABKAlIDIgBARIkChdzdXBwb3J0c19hc3luY19jYWxsYmFjaxgWIAEoCEgNiAEBEiEKFGNhbGxiYWNrX3R0bF9zZWNvbmRzGBcgASgFSA6IAQESQwodY2FsbGJhY2tfdGltZW91dF9yZXRyeV9wb2xpY3kYGCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SA+IAQESFwoKY3JlYXRlZF9ieRgeIAEoCUgQiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9kZXNjcmlwdGlvbkIHCgVfaWNvbkILCglfY2F0ZWdvcnlCEAoOX2VuZHBvaW50X2F1dGhCDwoNX3JldHJ5X3BvbGljeUIPCg1faW5wdXRfc2NoZW1hQhAKDl9vdXRwdXRfc2NoZW1hQgUKA191aUIQCg5fc3RyZWFtX2NvbmZpZ0IJCgdfcXVvdGFzQgwKCl9jb25maWdfaWRCDwoNX3ByZWNvbmRpdGlvbkINCgtfcHJvamVjdF9pZEIaChhfc3VwcG9ydHNfYXN5bmNfY2FsbGJhY2tCFwoVX2NhbGxiYWNrX3R0bF9zZWNvbmRzQiAKHl9jYWxsYmFja190aW1lb3V0X3JldHJ5X3BvbGljeUINCgtfY3JlYXRlZF9ieSLaCAoST3BlcmF0aW9uRXhlY3V0aW9uEgoKAmlkGAEgASgJEhUKDW9wZXJhdGlvbl9rZXkYAiABKAkSDgoGc3RhdHVzGAMgASgJEhkKDHRyaWdnZXJfdHlwZRgEIAEoCUgAiAEBEjUKD3RyaWdnZXJfY29udGV4dBgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIrCgVpbnB1dBgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIYCgtyZXN1bHRfanNvbhgHIAEoDEgDiAEBEhcKCmVycm9yX2pzb24YCCABKAxIBIgBARIzCgpzdGFydGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEjUKDGNvbXBsZXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBogBARIYCgtkdXJhdGlvbl9tcxgLIAEoBUgHiAEBEhMKC3JldHJ5X2NvdW50GAwgASgFEhkKDHByb2dyZXNzX3BjdBgNIAEoBUgIiAEBEh0KEHByb2dyZXNzX21lc3NhZ2UYDiABKAlICYgBARI3ChFwcm9ncmVzc19tZXRhZGF0YRgPIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICogBARI8ChNwcm9ncmVzc191cGRhdGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgLiAEBEjwKE2NhbGxiYWNrX2V4cGlyZXNfYXQYESABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAyIAQESIAoTcGFyZW50X2V4ZWN1dGlvbl9pZBgSIAEoCUgNiAEBEjUKDGNhbmNlbGxlZF9hdBgTIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIDogBARIRCgl0ZW5hbnRfaWQYFCABKAkSFwoKcHJvamVjdF9pZBgVIAEoCUgPiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg8KDV90cmlnZ2VyX3R5cGVCEgoQX3RyaWdnZXJfY29udGV4dEIICgZfaW5wdXRCDgoMX3Jlc3VsdF9qc29uQg0KC19lcnJvcl9qc29uQg0KC19zdGFydGVkX2F0Qg8KDV9jb21wbGV0ZWRfYXRCDgoMX2R1cmF0aW9uX21zQg8KDV9wcm9ncmVzc19wY3RCEwoRX3Byb2dyZXNzX21lc3NhZ2VCFAoSX3Byb2dyZXNzX21ldGFkYXRhQhYKFF9wcm9ncmVzc191cGRhdGVkX2F0QhYKFF9jYWxsYmFja19leHBpcmVzX2F0QhYKFF9wYXJlbnRfZXhlY3V0aW9uX2lkQg8KDV9jYW5jZWxsZWRfYXRCDQoLX3Byb2plY3RfaWQi3wQKD0RlYWRMZXR0ZXJFbnRyeRIKCgJpZBgBIAEoCRIVCg1vcGVyYXRpb25fa2V5GAIgASgJEhkKDGV4ZWN1dGlvbl9pZBgDIAEoCUgAiAEBEisKBWlucHV0GAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEhkKDHRyaWdnZXJfdHlwZRgFIAEoCUgCiAEBEhAKCGF0dGVtcHRzGAYgASgFEhIKCmxhc3RfZXJyb3IYByABKAkSFwoKZXJyb3JfY29kZRgIIAEoCUgDiAEBEg4KBnN0YXR1cxgJIAEoCRItCglmYWlsZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjMKCnJldHJpZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESNQoMZGlzbWlzc2VkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEhkKDGRpc21pc3NlZF9ieRgNIAEoCUgGiAEBEhEKCXRlbmFudF9pZBgUIAEoCRISCgpwcm9qZWN0X2lkGBUgASgJEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg8KDV9leGVjdXRpb25faWRCCAoGX2lucHV0Qg8KDV90cmlnZ2VyX3R5cGVCDQoLX2Vycm9yX2NvZGVCDQoLX3JldHJpZWRfYXRCDwoNX2Rpc21pc3NlZF9hdEIPCg1fZGlzbWlzc2VkX2J5IrUCCgxDaXJjdWl0U3RhdGUSFQoNb3BlcmF0aW9uX2tleRgBIAEoCRIQCghlbmRwb2ludBgCIAEoCRINCgVzdGF0ZRgDIAEoCRIVCg1mYWlsdXJlX2NvdW50GAQgASgFEjgKD2xhc3RfZmFpbHVyZV9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIyCglvcGVuZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESNQoMaGFsZl9vcGVuX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBQhIKEF9sYXN0X2ZhaWx1cmVfYXRCDAoKX29wZW5lZF9hdEIPCg1faGFsZl9vcGVuX2F0IoEBCg5FeGVjdXRpb25TdGF0cxIVCg1vcGVyYXRpb25fa2V5GAEgASgJEg0KBXRvdGFsGAIgASgFEg8KB3N1Y2Nlc3MYAyABKAUSDgoGZmFpbGVkGAQgASgFEg8KB3BlbmRpbmcYBSABKAUSFwoPYXZnX2R1cmF0aW9uX21zGAYgASgBIlUKD0RlYWRMZXR0ZXJTdGF0cxIPCgdwZW5kaW5nGAEgASgFEg8KB3JldHJpZWQYAiABKAUSEQoJZGlzbWlzc2VkGAMgASgFEg0KBXRvdGFsGAQgASgFIsYBChVMaXN0T3BlcmF0aW9uc1JlcXVlc3QSFQoIY2F0ZWdvcnkYASABKAlIAIgBARIWCglpc19hY3RpdmUYAiABKAhIAYgBARITCgZzZWFyY2gYAyABKAlIAogBARIWCgljb25maWdfaWQYBCABKAlIA4gBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCCwoJX2NhdGVnb3J5QgwKCl9pc19hY3RpdmVCCQoHX3NlYXJjaEIMCgpfY29uZmlnX2lkIlUKFkxpc3RPcGVyYXRpb25zUmVzcG9uc2USLAoKb3BlcmF0aW9ucxgBIAMoCzIYLm9wZXJhdGlvbnMudjEuT3BlcmF0aW9uEg0KBXRvdGFsGAIgASgFIjsKE0dldE9wZXJhdGlvblJlcXVlc3QSCgoCaWQYASABKAkSEAoDa2V5GAIgASgJSACIAQFCBgoEX2tleSJDChRHZXRPcGVyYXRpb25SZXNwb25zZRIrCglvcGVyYXRpb24YASABKAsyGC5vcGVyYXRpb25zLnYxLk9wZXJhdGlvbiKUCAoWQ3JlYXRlT3BlcmF0aW9uUmVxdWVzdBILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEhEKBGljb24YBCABKAlIAYgBARIVCghjYXRlZ29yeRgFIAEoCUgCiAEBEhAKCGVuZHBvaW50GAYgASgJEhoKDWVuZHBvaW50X2F1dGgYByABKAlIA4gBARIXCgp0aW1lb3V0X21zGAggASgFSASIAQESMgoMaW5wdXRfc2NoZW1hGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBEjMKDW91dHB1dF9zY2hlbWEYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAaIAQESKAoCdWkYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAeIAQESFgoJY29uZmlnX2lkGAwgASgJSAiIAQESMwoNc3RyZWFtX2NvbmZpZxgNIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICYgBARIsCgZxdW90YXMYDiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAqIAQESFQoNYWxsb3dlZF9yb2xlcxgPIAMoCRIyCgxyZXRyeV9wb2xpY3kYECABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAuIAQESMgoMcHJlY29uZGl0aW9uGBEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgMiAEBEhYKCWlzX2FjdGl2ZRgSIAEoCEgNiAEBEiQKF3N1cHBvcnRzX2FzeW5jX2NhbGxiYWNrGBMgASgISA6IAQESIQoUY2FsbGJhY2tfdHRsX3NlY29uZHMYFCABKAVID4gBARJDCh1jYWxsYmFja190aW1lb3V0X3JldHJ5X3BvbGljeRgVIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIEIgBAUIOCgxfZGVzY3JpcHRpb25CBwoFX2ljb25CCwoJX2NhdGVnb3J5QhAKDl9lbmRwb2ludF9hdXRoQg0KC190aW1lb3V0X21zQg8KDV9pbnB1dF9zY2hlbWFCEAoOX291dHB1dF9zY2hlbWFCBQoDX3VpQgwKCl9jb25maWdfaWRCEAoOX3N0cmVhbV9jb25maWdCCQoHX3F1b3Rhc0IPCg1fcmV0cnlfcG9saWN5Qg8KDV9wcmVjb25kaXRpb25CDAoKX2lzX2FjdGl2ZUIaChhfc3VwcG9ydHNfYXN5bmNfY2FsbGJhY2tCFwoVX2NhbGxiYWNrX3R0bF9zZWNvbmRzQiAKHl9jYWxsYmFja190aW1lb3V0X3JldHJ5X3BvbGljeSJGChdDcmVhdGVPcGVyYXRpb25SZXNwb25zZRIrCglvcGVyYXRpb24YASABKAsyGC5vcGVyYXRpb25zLnYxLk9wZXJhdGlvbiLNBwoWVXBkYXRlT3BlcmF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRIRCgRuYW1lGAIgASgJSACIAQESGAoLZGVzY3JpcHRpb24YAyABKAlIAYgBARIVCghlbmRwb2ludBgEIAEoCUgCiAEBEhoKDWVuZHBvaW50X2F1dGgYBSABKAlIA4gBARIXCgp0aW1lb3V0X21zGAYgASgFSASIAQESMgoMaW5wdXRfc2NoZW1hGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBEjMKDW91dHB1dF9zY2hlbWEYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAaIAQESKAoCdWkYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAeIAQESFgoJaXNfYWN0aXZlGAogASgISAiIAQESMwoNc3RyZWFtX2NvbmZpZxgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICYgBARIsCgZxdW90YXMYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAqIAQESMgoMcmV0cnlfcG9saWN5GA0gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgLiAEBEjIKDHByZWNvbmRpdGlvbhgOIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIDIgBARIVCg1hbGxvd2VkX3JvbGVzGA8gAygJEiQKF3N1cHBvcnRzX2FzeW5jX2NhbGxiYWNrGBAgASgISA2IAQESIQoUY2FsbGJhY2tfdHRsX3NlY29uZHMYESABKAVIDogBARJDCh1jYWxsYmFja190aW1lb3V0X3JldHJ5X3BvbGljeRgSIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RID4gBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CCwoJX2VuZHBvaW50QhAKDl9lbmRwb2ludF9hdXRoQg0KC190aW1lb3V0X21zQg8KDV9pbnB1dF9zY2hlbWFCEAoOX291dHB1dF9zY2hlbWFCBQoDX3VpQgwKCl9pc19hY3RpdmVCEAoOX3N0cmVhbV9jb25maWdCCQoHX3F1b3Rhc0IPCg1fcmV0cnlfcG9saWN5Qg8KDV9wcmVjb25kaXRpb25CGgoYX3N1cHBvcnRzX2FzeW5jX2NhbGxiYWNrQhcKFV9jYWxsYmFja190dGxfc2Vjb25kc0IgCh5fY2FsbGJhY2tfdGltZW91dF9yZXRyeV9wb2xpY3kiRgoXVXBkYXRlT3BlcmF0aW9uUmVzcG9uc2USKwoJb3BlcmF0aW9uGAEgASgLMhgub3BlcmF0aW9ucy52MS5PcGVyYXRpb24iJAoWRGVsZXRlT3BlcmF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIqChdEZWxldGVPcGVyYXRpb25SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIqgDChdFeGVjdXRlT3BlcmF0aW9uUmVxdWVzdBIVCg1vcGVyYXRpb25fa2V5GAEgASgJEisKBWlucHV0GAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEhkKDHRyaWdnZXJfdHlwZRgDIAEoCUgBiAEBEjUKD3RyaWdnZXJfY29udGV4dBgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIqCgRtb2RlGAUgASgOMhwub3BlcmF0aW9ucy52MS5FeGVjdXRpb25Nb2RlEhgKC2N1c3RvbWVyX2lkGAYgASgJSAOIAQESLAoGcmVjb3JkGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEi0KB2NvbnRlbnQYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQFCCAoGX2lucHV0Qg8KDV90cmlnZ2VyX3R5cGVCEgoQX3RyaWdnZXJfY29udGV4dEIOCgxfY3VzdG9tZXJfaWRCCQoHX3JlY29yZEIKCghfY29udGVudCKpAgoYRXhlY3V0ZU9wZXJhdGlvblJlc3BvbnNlEjQKCWV4ZWN1dGlvbhgBIAEoCzIhLm9wZXJhdGlvbnMudjEuT3BlcmF0aW9uRXhlY3V0aW9uEhgKC3Jlc3VsdF9qc29uGAIgASgMSACIAQESGgoNZXJyb3JfbWVzc2FnZRgDIAEoCUgBiAEBEhEKCWNvbXBsZXRlZBgEIAEoCBIVCghwb2xsX3VybBgKIAEoCUgCiAEBEhcKCmNhbmNlbF91cmwYCyABKAlIA4gBARIUCgdtZXNzYWdlGAwgASgJSASIAQFCDgoMX3Jlc3VsdF9qc29uQhAKDl9lcnJvcl9tZXNzYWdlQgsKCV9wb2xsX3VybEINCgtfY2FuY2VsX3VybEIKCghfbWVzc2FnZSJ2Ch5MaXN0T3BlcmF0aW9uRXhlY3V0aW9uc1JlcXVlc3QSFQoNb3BlcmF0aW9uX2tleRgBIAEoCRITCgZzdGF0dXMYAiABKAlIAIgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCCQoHX3N0YXR1cyJnCh9MaXN0T3BlcmF0aW9uRXhlY3V0aW9uc1Jlc3BvbnNlEjUKCmV4ZWN1dGlvbnMYASADKAsyIS5vcGVyYXRpb25zLnYxLk9wZXJhdGlvbkV4ZWN1dGlvbhINCgV0b3RhbBgCIAEoBSJRCiFHZXRPcGVyYXRpb25FeGVjdXRpb25TdGF0c1JlcXVlc3QSGgoNb3BlcmF0aW9uX2tleRgBIAEoCUgAiAEBQhAKDl9vcGVyYXRpb25fa2V5IlIKIkdldE9wZXJhdGlvbkV4ZWN1dGlvblN0YXRzUmVzcG9uc2USLAoFc3RhdHMYASADKAsyHS5vcGVyYXRpb25zLnYxLkV4ZWN1dGlvblN0YXRzIosBChxMaXN0RGVhZExldHRlckVudHJpZXNSZXF1ZXN0EhoKDW9wZXJhdGlvbl9rZXkYASABKAlIAIgBARITCgZzdGF0dXMYAiABKAlIAYgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCEAoOX29wZXJhdGlvbl9rZXlCCQoHX3N0YXR1cyJfCh1MaXN0RGVhZExldHRlckVudHJpZXNSZXNwb25zZRIvCgdlbnRyaWVzGAEgAygLMh4ub3BlcmF0aW9ucy52MS5EZWFkTGV0dGVyRW50cnkSDQoFdG90YWwYAiABKAUiKQobUmV0cnlEZWFkTGV0dGVyRW50cnlSZXF1ZXN0EgoKAmlkGAEgASgJIi8KHFJldHJ5RGVhZExldHRlckVudHJ5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIrCh1EaXNtaXNzRGVhZExldHRlckVudHJ5UmVxdWVzdBIKCgJpZBgBIAEoCSIxCh5EaXNtaXNzRGVhZExldHRlckVudHJ5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIbChlHZXREZWFkTGV0dGVyU3RhdHNSZXF1ZXN0IksKGkdldERlYWRMZXR0ZXJTdGF0c1Jlc3BvbnNlEi0KBXN0YXRzGAEgASgLMh4ub3BlcmF0aW9ucy52MS5EZWFkTGV0dGVyU3RhdHMiGgoYTGlzdENpcmN1aXRTdGF0ZXNSZXF1ZXN0IkgKGUxpc3RDaXJjdWl0U3RhdGVzUmVzcG9uc2USKwoGc3RhdGVzGAEgAygLMhsub3BlcmF0aW9ucy52MS5DaXJjdWl0U3RhdGUiLAoTUmVzZXRDaXJjdWl0UmVxdWVzdBIVCg1vcGVyYXRpb25fa2V5GAEgASgJIicKFFJlc2V0Q2lyY3VpdFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiGQoXR2V0U2lnbmluZ1NlY3JldFJlcXVlc3QiOgoYR2V0U2lnbmluZ1NlY3JldFJlc3BvbnNlEg4KBnNlY3JldBgBIAEoCRIOCgZwcmVmaXgYAiABKAkiIAoeUmVnZW5lcmF0ZVNpZ25pbmdTZWNyZXRSZXF1ZXN0IjEKH1JlZ2VuZXJhdGVTaWduaW5nU2VjcmV0UmVzcG9uc2USDgoGc2VjcmV0GAEgASgJIkIKHkdldEFwcGxpY2FibGVPcGVyYXRpb25zUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSDQoFbGltaXQYCiABKAUiTwofR2V0QXBwbGljYWJsZU9wZXJhdGlvbnNSZXNwb25zZRIsCgpvcGVyYXRpb25zGAEgAygLMhgub3BlcmF0aW9ucy52MS5PcGVyYXRpb24iKgocR2V0T3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSJVCh1HZXRPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRI0CglleGVjdXRpb24YASABKAsyIS5vcGVyYXRpb25zLnYxLk9wZXJhdGlvbkV4ZWN1dGlvbiItCh9DYW5jZWxPcGVyYXRpb25FeGVjdXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIlMKIENhbmNlbE9wZXJhdGlvbkV4ZWN1dGlvblJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSEwoGc3RhdHVzGAIgASgJSACIAQFCCQoHX3N0YXR1cyJLCiBDYW5jZWxPcGVyYXRpb25FeGVjdXRpb25zUmVxdWVzdBIVCg1vcGVyYXRpb25fa2V5GAEgASgJEhAKCHN0YXR1c2VzGAIgAygJIlMKIUNhbmNlbE9wZXJhdGlvbkV4ZWN1dGlvbnNSZXNwb25zZRIXCg9jYW5jZWxsZWRfY291bnQYASABKAUSFQoNY2FuY2VsbGVkX2lkcxgCIAMoCSJECiFDb21wbGV0ZU9wZXJhdGlvbkV4ZWN1dGlvblJlcXVlc3QSCgoCaWQYASABKAkSEwoLcmVzdWx0X2pzb24YAiABKAwiRwoiQ29tcGxldGVPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRIOCgZzdGF0dXMYASABKAkSEQoJY2FuY2VsbGVkGAIgASgIIqsBCh1GYWlsT3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRIMCgRjb2RlGAIgASgJEg8KB21lc3NhZ2UYAyABKAkSFgoJcmV0cnlhYmxlGAQgASgISACIAQESLQoHZGV0YWlscxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBAUIMCgpfcmV0cnlhYmxlQgoKCF9kZXRhaWxzIkMKHkZhaWxPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRIOCgZzdGF0dXMYASABKAkSEQoJY2FuY2VsbGVkGAIgASgIItsBCh5SZXBvcnRPcGVyYXRpb25Qcm9ncmVzc1JlcXVlc3QSCgoCaWQYASABKAkSGQoMcHJvZ3Jlc3NfcGN0GAIgASgFSACIAQESHQoQcHJvZ3Jlc3NfbWVzc2FnZRgDIAEoCUgBiAEBEjcKEXByb2dyZXNzX21ldGFkYXRhGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBQg8KDV9wcm9ncmVzc19wY3RCEwoRX3Byb2dyZXNzX21lc3NhZ2VCFAoSX3Byb2dyZXNzX21ldGFkYXRhIkQKH1JlcG9ydE9wZXJhdGlvblByb2dyZXNzUmVzcG9uc2USDgoGc3RhdHVzGAEgASgJEhEKCWNhbmNlbGxlZBgCIAEoCCKCAQodR2V0T3BlcmF0aW9uUXVvdGFVc2FnZVJlcXVlc3QSFQoNb3BlcmF0aW9uX2tleRgBIAEoCRIYCgtjdXN0b21lcl9pZBgCIAEoCUgAiAEBEhQKB3VzZXJfaWQYAyABKAlIAYgBAUIOCgxfY3VzdG9tZXJfaWRCCgoIX3VzZXJfaWQisgEKDlF1b3RhUnVsZVVzYWdlEhIKCnJ1bGVfaW5kZXgYASABKAUSEwoLc2VnbWVudF9rZXkYAiABKAkSDQoFbGltaXQYAyABKAUSDAoEdXNlZBgEIAEoBRIRCglyZW1haW5pbmcYBSABKAUSFQoNcmVzZXRfYXRfdW5peBgGIAEoAxINCgVzY29wZRgHIAEoCRIQCghkdXJhdGlvbhgIIAEoBRIPCgdtZXNzYWdlGAkgASgJIq0BCh5HZXRPcGVyYXRpb25RdW90YVVzYWdlUmVzcG9uc2USGAoQdG90YWxfZXhlY3V0aW9ucxgBIAEoAxIZChFwZXJpb2RfZXhlY3V0aW9ucxgCIAEoAxIYCgtxdW90YV9saW1pdBgDIAEoA0gAiAEBEiwKBXJ1bGVzGAQgAygLMh0ub3BlcmF0aW9ucy52MS5RdW90YVJ1bGVVc2FnZUIOCgxfcXVvdGFfbGltaXQiHAoaR2V0U2lnbmluZ1NlY3JldFJhd1JlcXVlc3QiLQobR2V0U2lnbmluZ1NlY3JldFJhd1Jlc3BvbnNlEg4KBnNlY3JldBgBIAEoCSpiCg1FeGVjdXRpb25Nb2RlEh4KGkVYRUNVVElPTl9NT0RFX1VOU1BFQ0lGSUVEEAASFwoTRVhFQ1VUSU9OX01PREVfU1lOQxABEhgKFEVYRUNVVElPTl9NT0RFX0FTWU5DEAIygBYKEU9wZXJhdGlvbnNTZXJ2aWNlEl0KDkxpc3RPcGVyYXRpb25zEiQub3BlcmF0aW9ucy52MS5MaXN0T3BlcmF0aW9uc1JlcXVlc3QaJS5vcGVyYXRpb25zLnYxLkxpc3RPcGVyYXRpb25zUmVzcG9uc2USVwoMR2V0T3BlcmF0aW9uEiIub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25SZXF1ZXN0GiMub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25SZXNwb25zZRJgCg9DcmVhdGVPcGVyYXRpb24SJS5vcGVyYXRpb25zLnYxLkNyZWF0ZU9wZXJhdGlvblJlcXVlc3QaJi5vcGVyYXRpb25zLnYxLkNyZWF0ZU9wZXJhdGlvblJlc3BvbnNlEmAKD1VwZGF0ZU9wZXJhdGlvbhIlLm9wZXJhdGlvbnMudjEuVXBkYXRlT3BlcmF0aW9uUmVxdWVzdBomLm9wZXJhdGlvbnMudjEuVXBkYXRlT3BlcmF0aW9uUmVzcG9uc2USYAoPRGVsZXRlT3BlcmF0aW9uEiUub3BlcmF0aW9ucy52MS5EZWxldGVPcGVyYXRpb25SZXF1ZXN0GiYub3BlcmF0aW9ucy52MS5EZWxldGVPcGVyYXRpb25SZXNwb25zZRJjChBFeGVjdXRlT3BlcmF0aW9uEiYub3BlcmF0aW9ucy52MS5FeGVjdXRlT3BlcmF0aW9uUmVxdWVzdBonLm9wZXJhdGlvbnMudjEuRXhlY3V0ZU9wZXJhdGlvblJlc3BvbnNlEngKF0xpc3RPcGVyYXRpb25FeGVjdXRpb25zEi0ub3BlcmF0aW9ucy52MS5MaXN0T3BlcmF0aW9uRXhlY3V0aW9uc1JlcXVlc3QaLi5vcGVyYXRpb25zLnYxLkxpc3RPcGVyYXRpb25FeGVjdXRpb25zUmVzcG9uc2USgQEKGkdldE9wZXJhdGlvbkV4ZWN1dGlvblN0YXRzEjAub3BlcmF0aW9ucy52MS5HZXRPcGVyYXRpb25FeGVjdXRpb25TdGF0c1JlcXVlc3QaMS5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvbkV4ZWN1dGlvblN0YXRzUmVzcG9uc2UScgoVTGlzdERlYWRMZXR0ZXJFbnRyaWVzEisub3BlcmF0aW9ucy52MS5MaXN0RGVhZExldHRlckVudHJpZXNSZXF1ZXN0Giwub3BlcmF0aW9ucy52MS5MaXN0RGVhZExldHRlckVudHJpZXNSZXNwb25zZRJvChRSZXRyeURlYWRMZXR0ZXJFbnRyeRIqLm9wZXJhdGlvbnMudjEuUmV0cnlEZWFkTGV0dGVyRW50cnlSZXF1ZXN0Gisub3BlcmF0aW9ucy52MS5SZXRyeURlYWRMZXR0ZXJFbnRyeVJlc3BvbnNlEnUKFkRpc21pc3NEZWFkTGV0dGVyRW50cnkSLC5vcGVyYXRpb25zLnYxLkRpc21pc3NEZWFkTGV0dGVyRW50cnlSZXF1ZXN0Gi0ub3BlcmF0aW9ucy52MS5EaXNtaXNzRGVhZExldHRlckVudHJ5UmVzcG9uc2USaQoSR2V0RGVhZExldHRlclN0YXRzEigub3BlcmF0aW9ucy52MS5HZXREZWFkTGV0dGVyU3RhdHNSZXF1ZXN0Gikub3BlcmF0aW9ucy52MS5HZXREZWFkTGV0dGVyU3RhdHNSZXNwb25zZRJmChFMaXN0Q2lyY3VpdFN0YXRlcxInLm9wZXJhdGlvbnMudjEuTGlzdENpcmN1aXRTdGF0ZXNSZXF1ZXN0Gigub3BlcmF0aW9ucy52MS5MaXN0Q2lyY3VpdFN0YXRlc1Jlc3BvbnNlElcKDFJlc2V0Q2lyY3VpdBIiLm9wZXJhdGlvbnMudjEuUmVzZXRDaXJjdWl0UmVxdWVzdBojLm9wZXJhdGlvbnMudjEuUmVzZXRDaXJjdWl0UmVzcG9uc2USeAoXR2V0QXBwbGljYWJsZU9wZXJhdGlvbnMSLS5vcGVyYXRpb25zLnYxLkdldEFwcGxpY2FibGVPcGVyYXRpb25zUmVxdWVzdBouLm9wZXJhdGlvbnMudjEuR2V0QXBwbGljYWJsZU9wZXJhdGlvbnNSZXNwb25zZRJyChVHZXRPcGVyYXRpb25FeGVjdXRpb24SKy5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvbkV4ZWN1dGlvblJlcXVlc3QaLC5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvbkV4ZWN1dGlvblJlc3BvbnNlEnsKGENhbmNlbE9wZXJhdGlvbkV4ZWN1dGlvbhIuLm9wZXJhdGlvbnMudjEuQ2FuY2VsT3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBovLm9wZXJhdGlvbnMudjEuQ2FuY2VsT3BlcmF0aW9uRXhlY3V0aW9uUmVzcG9uc2USfgoZQ2FuY2VsT3BlcmF0aW9uRXhlY3V0aW9ucxIvLm9wZXJhdGlvbnMudjEuQ2FuY2VsT3BlcmF0aW9uRXhlY3V0aW9uc1JlcXVlc3QaMC5vcGVyYXRpb25zLnYxLkNhbmNlbE9wZXJhdGlvbkV4ZWN1dGlvbnNSZXNwb25zZRKBAQoaQ29tcGxldGVPcGVyYXRpb25FeGVjdXRpb24SMC5vcGVyYXRpb25zLnYxLkNvbXBsZXRlT3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBoxLm9wZXJhdGlvbnMudjEuQ29tcGxldGVPcGVyYXRpb25FeGVjdXRpb25SZXNwb25zZRJ1ChZGYWlsT3BlcmF0aW9uRXhlY3V0aW9uEiwub3BlcmF0aW9ucy52MS5GYWlsT3BlcmF0aW9uRXhlY3V0aW9uUmVxdWVzdBotLm9wZXJhdGlvbnMudjEuRmFpbE9wZXJhdGlvbkV4ZWN1dGlvblJlc3BvbnNlEngKF1JlcG9ydE9wZXJhdGlvblByb2dyZXNzEi0ub3BlcmF0aW9ucy52MS5SZXBvcnRPcGVyYXRpb25Qcm9ncmVzc1JlcXVlc3QaLi5vcGVyYXRpb25zLnYxLlJlcG9ydE9wZXJhdGlvblByb2dyZXNzUmVzcG9uc2USdQoWR2V0T3BlcmF0aW9uUXVvdGFVc2FnZRIsLm9wZXJhdGlvbnMudjEuR2V0T3BlcmF0aW9uUXVvdGFVc2FnZVJlcXVlc3QaLS5vcGVyYXRpb25zLnYxLkdldE9wZXJhdGlvblF1b3RhVXNhZ2VSZXNwb25zZRJjChBHZXRTaWduaW5nU2VjcmV0EiYub3BlcmF0aW9ucy52MS5HZXRTaWduaW5nU2VjcmV0UmVxdWVzdBonLm9wZXJhdGlvbnMudjEuR2V0U2lnbmluZ1NlY3JldFJlc3BvbnNlEmwKE0dldFNpZ25pbmdTZWNyZXRSYXcSKS5vcGVyYXRpb25zLnYxLkdldFNpZ25pbmdTZWNyZXRSYXdSZXF1ZXN0Gioub3BlcmF0aW9ucy52MS5HZXRTaWduaW5nU2VjcmV0UmF3UmVzcG9uc2USeAoXUmVnZW5lcmF0ZVNpZ25pbmdTZWNyZXQSLS5vcGVyYXRpb25zLnYxLlJlZ2VuZXJhdGVTaWduaW5nU2VjcmV0UmVxdWVzdBouLm9wZXJhdGlvbnMudjEuUmVnZW5lcmF0ZVNpZ25pbmdTZWNyZXRSZXNwb25zZUJBWj9naXRodWIuY29tL2VpZGVzdHVkaW8vZm9pci9nZW4vcHJvdG8vb3BlcmF0aW9ucy92MTtvcGVyYXRpb25zdjFiBnByb3RvMw", [file_google_protobuf_struct, file_google_protobuf_timestamp]);
13
13
 
14
14
  /**
15
15
  * Describes the message operations.v1.Operation.
@@ -319,82 +319,96 @@ export const CancelOperationExecutionRequestSchema = /*@__PURE__*/
319
319
  export const CancelOperationExecutionResponseSchema = /*@__PURE__*/
320
320
  messageDesc(file_operations_v1_operations, 43);
321
321
 
322
+ /**
323
+ * Describes the message operations.v1.CancelOperationExecutionsRequest.
324
+ * Use `create(CancelOperationExecutionsRequestSchema)` to create a new message.
325
+ */
326
+ export const CancelOperationExecutionsRequestSchema = /*@__PURE__*/
327
+ messageDesc(file_operations_v1_operations, 44);
328
+
329
+ /**
330
+ * Describes the message operations.v1.CancelOperationExecutionsResponse.
331
+ * Use `create(CancelOperationExecutionsResponseSchema)` to create a new message.
332
+ */
333
+ export const CancelOperationExecutionsResponseSchema = /*@__PURE__*/
334
+ messageDesc(file_operations_v1_operations, 45);
335
+
322
336
  /**
323
337
  * Describes the message operations.v1.CompleteOperationExecutionRequest.
324
338
  * Use `create(CompleteOperationExecutionRequestSchema)` to create a new message.
325
339
  */
326
340
  export const CompleteOperationExecutionRequestSchema = /*@__PURE__*/
327
- messageDesc(file_operations_v1_operations, 44);
341
+ messageDesc(file_operations_v1_operations, 46);
328
342
 
329
343
  /**
330
344
  * Describes the message operations.v1.CompleteOperationExecutionResponse.
331
345
  * Use `create(CompleteOperationExecutionResponseSchema)` to create a new message.
332
346
  */
333
347
  export const CompleteOperationExecutionResponseSchema = /*@__PURE__*/
334
- messageDesc(file_operations_v1_operations, 45);
348
+ messageDesc(file_operations_v1_operations, 47);
335
349
 
336
350
  /**
337
351
  * Describes the message operations.v1.FailOperationExecutionRequest.
338
352
  * Use `create(FailOperationExecutionRequestSchema)` to create a new message.
339
353
  */
340
354
  export const FailOperationExecutionRequestSchema = /*@__PURE__*/
341
- messageDesc(file_operations_v1_operations, 46);
355
+ messageDesc(file_operations_v1_operations, 48);
342
356
 
343
357
  /**
344
358
  * Describes the message operations.v1.FailOperationExecutionResponse.
345
359
  * Use `create(FailOperationExecutionResponseSchema)` to create a new message.
346
360
  */
347
361
  export const FailOperationExecutionResponseSchema = /*@__PURE__*/
348
- messageDesc(file_operations_v1_operations, 47);
362
+ messageDesc(file_operations_v1_operations, 49);
349
363
 
350
364
  /**
351
365
  * Describes the message operations.v1.ReportOperationProgressRequest.
352
366
  * Use `create(ReportOperationProgressRequestSchema)` to create a new message.
353
367
  */
354
368
  export const ReportOperationProgressRequestSchema = /*@__PURE__*/
355
- messageDesc(file_operations_v1_operations, 48);
369
+ messageDesc(file_operations_v1_operations, 50);
356
370
 
357
371
  /**
358
372
  * Describes the message operations.v1.ReportOperationProgressResponse.
359
373
  * Use `create(ReportOperationProgressResponseSchema)` to create a new message.
360
374
  */
361
375
  export const ReportOperationProgressResponseSchema = /*@__PURE__*/
362
- messageDesc(file_operations_v1_operations, 49);
376
+ messageDesc(file_operations_v1_operations, 51);
363
377
 
364
378
  /**
365
379
  * Describes the message operations.v1.GetOperationQuotaUsageRequest.
366
380
  * Use `create(GetOperationQuotaUsageRequestSchema)` to create a new message.
367
381
  */
368
382
  export const GetOperationQuotaUsageRequestSchema = /*@__PURE__*/
369
- messageDesc(file_operations_v1_operations, 50);
383
+ messageDesc(file_operations_v1_operations, 52);
370
384
 
371
385
  /**
372
386
  * Describes the message operations.v1.QuotaRuleUsage.
373
387
  * Use `create(QuotaRuleUsageSchema)` to create a new message.
374
388
  */
375
389
  export const QuotaRuleUsageSchema = /*@__PURE__*/
376
- messageDesc(file_operations_v1_operations, 51);
390
+ messageDesc(file_operations_v1_operations, 53);
377
391
 
378
392
  /**
379
393
  * Describes the message operations.v1.GetOperationQuotaUsageResponse.
380
394
  * Use `create(GetOperationQuotaUsageResponseSchema)` to create a new message.
381
395
  */
382
396
  export const GetOperationQuotaUsageResponseSchema = /*@__PURE__*/
383
- messageDesc(file_operations_v1_operations, 52);
397
+ messageDesc(file_operations_v1_operations, 54);
384
398
 
385
399
  /**
386
400
  * Describes the message operations.v1.GetSigningSecretRawRequest.
387
401
  * Use `create(GetSigningSecretRawRequestSchema)` to create a new message.
388
402
  */
389
403
  export const GetSigningSecretRawRequestSchema = /*@__PURE__*/
390
- messageDesc(file_operations_v1_operations, 53);
404
+ messageDesc(file_operations_v1_operations, 55);
391
405
 
392
406
  /**
393
407
  * Describes the message operations.v1.GetSigningSecretRawResponse.
394
408
  * Use `create(GetSigningSecretRawResponseSchema)` to create a new message.
395
409
  */
396
410
  export const GetSigningSecretRawResponseSchema = /*@__PURE__*/
397
- messageDesc(file_operations_v1_operations, 54);
411
+ messageDesc(file_operations_v1_operations, 56);
398
412
 
399
413
  /**
400
414
  * Describes the enum operations.v1.ExecutionMode.