@eide/foir-proto-ts 0.49.0 → 0.51.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.49.0",
3
+ "version": "0.51.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 { CreateModelRequest, CreateModelResponse, DeleteModelRequest, DeleteModelResponse, DropDeprecatedFieldRequest, DropDeprecatedFieldResponse, DuplicateModelRequest, DuplicateModelResponse, GetModelByKeyRequest, GetModelByKeyResponse, GetModelPublishStatusRequest, GetModelPublishStatusResponse, GetModelRequest, GetModelResponse, GetModelVersionRequest, GetModelVersionResponse, ListDeprecatedFieldCandidatesRequest, ListDeprecatedFieldCandidatesResponse, ListModelsRequest, ListModelsResponse, ListModelVersionsRequest, ListModelVersionsResponse, MarkDeprecatedFieldsQueriedRequest, MarkDeprecatedFieldsQueriedResponse, PublishModelRequest, PublishModelResponse, RestoreModelVersionRequest, RestoreModelVersionResponse, UnpublishModelRequest, UnpublishModelResponse, UpdateModelRequest, UpdateModelResponse } from "./models_pbjs";
6
+ import { CancelScheduledModelPublishRequest, CancelScheduledModelPublishResponse, CreateModelRequest, CreateModelResponse, DeleteModelRequest, DeleteModelResponse, DropDeprecatedFieldRequest, DropDeprecatedFieldResponse, DuplicateModelRequest, DuplicateModelResponse, GetModelByKeyRequest, GetModelByKeyResponse, GetModelPublishStatusRequest, GetModelPublishStatusResponse, GetModelRequest, GetModelResponse, GetModelVersionRequest, GetModelVersionResponse, ListDeprecatedFieldCandidatesRequest, ListDeprecatedFieldCandidatesResponse, ListModelsRequest, ListModelsResponse, ListModelVersionsRequest, ListModelVersionsResponse, MarkDeprecatedFieldsQueriedRequest, MarkDeprecatedFieldsQueriedResponse, PublishModelRequest, PublishModelResponse, RestoreModelVersionRequest, RestoreModelVersionResponse, ScheduleModelPublishRequest, ScheduleModelPublishResponse, UnpublishModelRequest, UnpublishModelResponse, UpdateModelRequest, UpdateModelResponse } from "./models_pbjs";
7
7
  import { MethodKind } from "@bufbuild/protobuf";
8
8
 
9
9
  /**
@@ -139,6 +139,28 @@ export declare const ModelsService: {
139
139
  readonly O: typeof GetModelPublishStatusResponse,
140
140
  readonly kind: MethodKind.Unary,
141
141
  },
142
+ /**
143
+ * Scheduled publishing. Stages the publish to fire at a future moment;
144
+ * worker picks it up via the schedules table. Cancel clears the
145
+ * pending fire.
146
+ *
147
+ * @generated from rpc models.v1.ModelsService.ScheduleModelPublish
148
+ */
149
+ readonly scheduleModelPublish: {
150
+ readonly name: "ScheduleModelPublish",
151
+ readonly I: typeof ScheduleModelPublishRequest,
152
+ readonly O: typeof ScheduleModelPublishResponse,
153
+ readonly kind: MethodKind.Unary,
154
+ },
155
+ /**
156
+ * @generated from rpc models.v1.ModelsService.CancelScheduledModelPublish
157
+ */
158
+ readonly cancelScheduledModelPublish: {
159
+ readonly name: "CancelScheduledModelPublish",
160
+ readonly I: typeof CancelScheduledModelPublishRequest,
161
+ readonly O: typeof CancelScheduledModelPublishResponse,
162
+ readonly kind: MethodKind.Unary,
163
+ },
142
164
  /**
143
165
  * Deprecated-field lifecycle. MarkDeprecatedFieldsQueried is called by
144
166
  * api-public on a batched timer; ListDeprecatedFieldCandidates and
@@ -3,7 +3,7 @@
3
3
  /* eslint-disable */
4
4
  // @ts-nocheck
5
5
 
6
- import { CreateModelRequest, CreateModelResponse, DeleteModelRequest, DeleteModelResponse, DropDeprecatedFieldRequest, DropDeprecatedFieldResponse, DuplicateModelRequest, DuplicateModelResponse, GetModelByKeyRequest, GetModelByKeyResponse, GetModelPublishStatusRequest, GetModelPublishStatusResponse, GetModelRequest, GetModelResponse, GetModelVersionRequest, GetModelVersionResponse, ListDeprecatedFieldCandidatesRequest, ListDeprecatedFieldCandidatesResponse, ListModelsRequest, ListModelsResponse, ListModelVersionsRequest, ListModelVersionsResponse, MarkDeprecatedFieldsQueriedRequest, MarkDeprecatedFieldsQueriedResponse, PublishModelRequest, PublishModelResponse, RestoreModelVersionRequest, RestoreModelVersionResponse, UnpublishModelRequest, UnpublishModelResponse, UpdateModelRequest, UpdateModelResponse } from "./models_pbjs";
6
+ import { CancelScheduledModelPublishRequest, CancelScheduledModelPublishResponse, CreateModelRequest, CreateModelResponse, DeleteModelRequest, DeleteModelResponse, DropDeprecatedFieldRequest, DropDeprecatedFieldResponse, DuplicateModelRequest, DuplicateModelResponse, GetModelByKeyRequest, GetModelByKeyResponse, GetModelPublishStatusRequest, GetModelPublishStatusResponse, GetModelRequest, GetModelResponse, GetModelVersionRequest, GetModelVersionResponse, ListDeprecatedFieldCandidatesRequest, ListDeprecatedFieldCandidatesResponse, ListModelsRequest, ListModelsResponse, ListModelVersionsRequest, ListModelVersionsResponse, MarkDeprecatedFieldsQueriedRequest, MarkDeprecatedFieldsQueriedResponse, PublishModelRequest, PublishModelResponse, RestoreModelVersionRequest, RestoreModelVersionResponse, ScheduleModelPublishRequest, ScheduleModelPublishResponse, UnpublishModelRequest, UnpublishModelResponse, UpdateModelRequest, UpdateModelResponse } from "./models_pbjs";
7
7
  import { MethodKind } from "@bufbuild/protobuf";
8
8
 
9
9
  /**
@@ -139,6 +139,28 @@ export const ModelsService = {
139
139
  O: GetModelPublishStatusResponse,
140
140
  kind: MethodKind.Unary,
141
141
  },
142
+ /**
143
+ * Scheduled publishing. Stages the publish to fire at a future moment;
144
+ * worker picks it up via the schedules table. Cancel clears the
145
+ * pending fire.
146
+ *
147
+ * @generated from rpc models.v1.ModelsService.ScheduleModelPublish
148
+ */
149
+ scheduleModelPublish: {
150
+ name: "ScheduleModelPublish",
151
+ I: ScheduleModelPublishRequest,
152
+ O: ScheduleModelPublishResponse,
153
+ kind: MethodKind.Unary,
154
+ },
155
+ /**
156
+ * @generated from rpc models.v1.ModelsService.CancelScheduledModelPublish
157
+ */
158
+ cancelScheduledModelPublish: {
159
+ name: "CancelScheduledModelPublish",
160
+ I: CancelScheduledModelPublishRequest,
161
+ O: CancelScheduledModelPublishResponse,
162
+ kind: MethodKind.Unary,
163
+ },
142
164
  /**
143
165
  * Deprecated-field lifecycle. MarkDeprecatedFieldsQueried is called by
144
166
  * api-public on a batched timer; ListDeprecatedFieldCandidates and
@@ -405,6 +405,22 @@ export declare type Model = Message<"models.v1.Model"> & {
405
405
  * @generated from field: optional string published_version_id = 42;
406
406
  */
407
407
  publishedVersionId?: string | undefined;
408
+
409
+ /**
410
+ * Scheduled publishing — mirrors records' metadata.scheduledPublishAt.
411
+ * When set, a one_shot row in the schedules table fires at the named
412
+ * moment and promotes published_version_id to current_version_id. The
413
+ * optional unpublish moment is paired for limited-time schema windows
414
+ * (e.g. campaign-bound model overlays).
415
+ *
416
+ * @generated from field: optional google.protobuf.Timestamp scheduled_publish_at = 43;
417
+ */
418
+ scheduledPublishAt?: Timestamp | undefined;
419
+
420
+ /**
421
+ * @generated from field: optional google.protobuf.Timestamp scheduled_unpublish_at = 44;
422
+ */
423
+ scheduledUnpublishAt?: Timestamp | undefined;
408
424
  };
409
425
 
410
426
  /**
@@ -1213,6 +1229,85 @@ export declare type GetModelPublishStatusResponse = Message<"models.v1.GetModelP
1213
1229
  */
1214
1230
  export declare const GetModelPublishStatusResponseSchema: GenMessage<GetModelPublishStatusResponse>;
1215
1231
 
1232
+ /**
1233
+ * @generated from message models.v1.ScheduleModelPublishRequest
1234
+ */
1235
+ export declare type ScheduleModelPublishRequest = Message<"models.v1.ScheduleModelPublishRequest"> & {
1236
+ /**
1237
+ * @generated from field: string id = 1;
1238
+ */
1239
+ id: string;
1240
+
1241
+ /**
1242
+ * When the publish should fire. Required.
1243
+ *
1244
+ * @generated from field: google.protobuf.Timestamp publish_at = 2;
1245
+ */
1246
+ publishAt?: Timestamp | undefined;
1247
+
1248
+ /**
1249
+ * Optional matching unpublish — promotes the change at publish_at,
1250
+ * retracts it at unpublish_at. Useful for limited-window campaigns.
1251
+ *
1252
+ * @generated from field: optional google.protobuf.Timestamp unpublish_at = 3;
1253
+ */
1254
+ unpublishAt?: Timestamp | undefined;
1255
+ };
1256
+
1257
+ /**
1258
+ * Describes the message models.v1.ScheduleModelPublishRequest.
1259
+ * Use `create(ScheduleModelPublishRequestSchema)` to create a new message.
1260
+ */
1261
+ export declare const ScheduleModelPublishRequestSchema: GenMessage<ScheduleModelPublishRequest>;
1262
+
1263
+ /**
1264
+ * @generated from message models.v1.ScheduleModelPublishResponse
1265
+ */
1266
+ export declare type ScheduleModelPublishResponse = Message<"models.v1.ScheduleModelPublishResponse"> & {
1267
+ /**
1268
+ * @generated from field: models.v1.Model model = 1;
1269
+ */
1270
+ model?: Model | undefined;
1271
+ };
1272
+
1273
+ /**
1274
+ * Describes the message models.v1.ScheduleModelPublishResponse.
1275
+ * Use `create(ScheduleModelPublishResponseSchema)` to create a new message.
1276
+ */
1277
+ export declare const ScheduleModelPublishResponseSchema: GenMessage<ScheduleModelPublishResponse>;
1278
+
1279
+ /**
1280
+ * @generated from message models.v1.CancelScheduledModelPublishRequest
1281
+ */
1282
+ export declare type CancelScheduledModelPublishRequest = Message<"models.v1.CancelScheduledModelPublishRequest"> & {
1283
+ /**
1284
+ * @generated from field: string id = 1;
1285
+ */
1286
+ id: string;
1287
+ };
1288
+
1289
+ /**
1290
+ * Describes the message models.v1.CancelScheduledModelPublishRequest.
1291
+ * Use `create(CancelScheduledModelPublishRequestSchema)` to create a new message.
1292
+ */
1293
+ export declare const CancelScheduledModelPublishRequestSchema: GenMessage<CancelScheduledModelPublishRequest>;
1294
+
1295
+ /**
1296
+ * @generated from message models.v1.CancelScheduledModelPublishResponse
1297
+ */
1298
+ export declare type CancelScheduledModelPublishResponse = Message<"models.v1.CancelScheduledModelPublishResponse"> & {
1299
+ /**
1300
+ * @generated from field: models.v1.Model model = 1;
1301
+ */
1302
+ model?: Model | undefined;
1303
+ };
1304
+
1305
+ /**
1306
+ * Describes the message models.v1.CancelScheduledModelPublishResponse.
1307
+ * Use `create(CancelScheduledModelPublishResponseSchema)` to create a new message.
1308
+ */
1309
+ export declare const CancelScheduledModelPublishResponseSchema: GenMessage<CancelScheduledModelPublishResponse>;
1310
+
1216
1311
  /**
1217
1312
  * Canonical set of field types the platform recognizes. The string form
1218
1313
  * stored in Field.type and persisted as JSON (e.g. "text", "content") is
@@ -1433,6 +1528,26 @@ export declare const ModelsService: GenService<{
1433
1528
  input: typeof GetModelPublishStatusRequestSchema;
1434
1529
  output: typeof GetModelPublishStatusResponseSchema;
1435
1530
  },
1531
+ /**
1532
+ * Scheduled publishing. Stages the publish to fire at a future moment;
1533
+ * worker picks it up via the schedules table. Cancel clears the
1534
+ * pending fire.
1535
+ *
1536
+ * @generated from rpc models.v1.ModelsService.ScheduleModelPublish
1537
+ */
1538
+ scheduleModelPublish: {
1539
+ methodKind: "unary";
1540
+ input: typeof ScheduleModelPublishRequestSchema;
1541
+ output: typeof ScheduleModelPublishResponseSchema;
1542
+ },
1543
+ /**
1544
+ * @generated from rpc models.v1.ModelsService.CancelScheduledModelPublish
1545
+ */
1546
+ cancelScheduledModelPublish: {
1547
+ methodKind: "unary";
1548
+ input: typeof CancelScheduledModelPublishRequestSchema;
1549
+ output: typeof CancelScheduledModelPublishResponseSchema;
1550
+ },
1436
1551
  /**
1437
1552
  * Deprecated-field lifecycle. MarkDeprecatedFieldsQueried is called by
1438
1553
  * api-public on a batched timer; ListDeprecatedFieldCandidates and
@@ -10,7 +10,7 @@ import { file_publish_v1_publish } from "../../publish/v1/publish_pb.js";
10
10
  * Describes the file models/v1/models.proto.
11
11
  */
12
12
  export const file_models_v1_models = /*@__PURE__*/
13
- fileDesc("ChZtb2RlbHMvdjEvbW9kZWxzLnByb3RvEgltb2RlbHMudjEiuQQKBUZpZWxkEgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRINCgVsYWJlbBgDIAEoCRIMCgR0eXBlGAQgASgJEhAKCHJlcXVpcmVkGAUgASgIEhYKCWhlbHBfdGV4dBgGIAEoCUgAiAEBEhgKC3BsYWNlaG9sZGVyGAcgASgJSAGIAQESMgoNZGVmYXVsdF92YWx1ZRgIIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZUgCiAEBEicKBmNvbmZpZxgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFgoJaXRlbV90eXBlGAogASgJSAOIAQESFAoHc3RvcmFnZRgLIAEoCUgEiAEBEhoKDXRlbXBsYXRlX3pvbmUYDCABKAlIBYgBARIXCgp6b25lX29yZGVyGA0gASgFSAaIAQESNgoQcmVmZXJlbmNlX2ZpbHRlchgOIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIB4gBARIvCgp2YWxpZGF0aW9uGA8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlSAiIAQFCDAoKX2hlbHBfdGV4dEIOCgxfcGxhY2Vob2xkZXJCEAoOX2RlZmF1bHRfdmFsdWVCDAoKX2l0ZW1fdHlwZUIKCghfc3RvcmFnZUIQCg5fdGVtcGxhdGVfem9uZUINCgtfem9uZV9vcmRlckITChFfcmVmZXJlbmNlX2ZpbHRlckINCgtfdmFsaWRhdGlvbiI8Cg1TaGFyaW5nQ29uZmlnEg8KB2VuYWJsZWQYASABKAgSGgoScmVxdWlyZV9hY2NlcHRhbmNlGAIgASgIIq8FCgtNb2RlbENvbmZpZxISCgp2ZXJzaW9uaW5nGAEgASgIEhIKCnB1Ymxpc2hpbmcYAiABKAgSEAoIdmFyaWFudHMYAyABKAgSDgoGaW5saW5lGAQgASgIEhcKD2N1c3RvbWVyX3Njb3BlZBgFIAEoCBIuCgdzaGFyaW5nGAYgASgLMhgubW9kZWxzLnYxLlNoYXJpbmdDb25maWdIAIgBARIYCgtwbHVyYWxfbmFtZRgHIAEoCUgBiAEBEhgKC2Rlc2NyaXB0aW9uGAggASgJSAKIAQESFQoIY2F0ZWdvcnkYCSABKAlIA4gBARIRCgRpY29uGAogASgJSASIAQESGgoNZGlzcGxheV9maWVsZBgLIAEoCUgFiAEBEh4KEW5hdHVyYWxfa2V5X2ZpZWxkGAwgASgJSAaIAQESFQoNc3lzdGVtX2VudGl0eRgNIAEoCBIWCglkZWxldGFibGUYDiABKAhIB4gBARIVCghlZGl0YWJsZRgPIAEoCEgIiAEBEjUKD21ldGFkYXRhX3NjaGVtYRgQIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICYgBARIrCgVob29rcxgRIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICogBARIXCgpwbHVyYWxfa2V5GBIgASgJSAuIAQFCCgoIX3NoYXJpbmdCDgoMX3BsdXJhbF9uYW1lQg4KDF9kZXNjcmlwdGlvbkILCglfY2F0ZWdvcnlCBwoFX2ljb25CEAoOX2Rpc3BsYXlfZmllbGRCFAoSX25hdHVyYWxfa2V5X2ZpZWxkQgwKCl9kZWxldGFibGVCCwoJX2VkaXRhYmxlQhIKEF9tZXRhZGF0YV9zY2hlbWFCCAoGX2hvb2tzQg0KC19wbHVyYWxfa2V5IokBChFNb2RlbENhcGFiaWxpdGllcxIUCgxpc192ZXJzaW9uZWQYASABKAgSFgoOaXNfcHVibGlzaGFibGUYAiABKAgSFAoMaGFzX3ZhcmlhbnRzGAMgASgIEhcKD2N1c3RvbWVyX3Njb3BlZBgEIAEoCBIXCg9zaGFyaW5nX2VuYWJsZWQYBSABKAgi2wUKBU1vZGVsEgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRIMCgRuYW1lGAMgASgJEiAKBmZpZWxkcxgEIAMoCzIQLm1vZGVscy52MS5GaWVsZBImCgZjb25maWcYBSABKAsyFi5tb2RlbHMudjEuTW9kZWxDb25maWcSFgoJY29uZmlnX2lkGAYgASgJSACIAQESMgoMY2FwYWJpbGl0aWVzGAcgASgLMhwubW9kZWxzLnYxLk1vZGVsQ2FwYWJpbGl0aWVzEh8KEmN1cnJlbnRfdmVyc2lvbl9pZBgIIAEoCUgBiAEBEiUKGHB1Ymxpc2hlZF92ZXJzaW9uX251bWJlchgJIAEoBUgCiAEBEhEKCXRlbmFudF9pZBgKIAEoCRISCgpwcm9qZWN0X2lkGAsgASgJEhcKCmNyZWF0ZWRfYnkYFCABKAlIA4gBARIXCgp1cGRhdGVkX2J5GBUgASgJSASIAQESLgoKY3JlYXRlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgfIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLAoSbGFzdF9wdXNoZWRfZmllbGRzGCggAygLMhAubW9kZWxzLnYxLkZpZWxkEjcKDmxhc3RfcHVzaGVkX2F0GCkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEiEKFHB1Ymxpc2hlZF92ZXJzaW9uX2lkGCogASgJSAaIAQFCDAoKX2NvbmZpZ19pZEIVChNfY3VycmVudF92ZXJzaW9uX2lkQhsKGV9wdWJsaXNoZWRfdmVyc2lvbl9udW1iZXJCDQoLX2NyZWF0ZWRfYnlCDQoLX3VwZGF0ZWRfYnlCEQoPX2xhc3RfcHVzaGVkX2F0QhcKFV9wdWJsaXNoZWRfdmVyc2lvbl9pZCLCAgoMTW9kZWxWZXJzaW9uEgoKAmlkGAEgASgJEhAKCG1vZGVsX2lkGAIgASgJEhYKDnZlcnNpb25fbnVtYmVyGAMgASgFEiAKBmZpZWxkcxgEIAMoCzIQLm1vZGVscy52MS5GaWVsZBIUCgxjb250ZW50X2hhc2gYBSABKAkSHgoRc291cmNlX3ZlcnNpb25faWQYBiABKAlIAIgBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YByABKAlIAYgBARIuCgpjcmVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCgpjcmVhdGVkX2J5GAkgASgJSAKIAQFCFAoSX3NvdXJjZV92ZXJzaW9uX2lkQhUKE19jaGFuZ2VfZGVzY3JpcHRpb25CDQoLX2NyZWF0ZWRfYnkizQEKEkNyZWF0ZU1vZGVsUmVxdWVzdBILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIgCgZmaWVsZHMYAyADKAsyEC5tb2RlbHMudjEuRmllbGQSKwoGY29uZmlnGAQgASgLMhYubW9kZWxzLnYxLk1vZGVsQ29uZmlnSACIAQESFgoJY29uZmlnX2lkGAUgASgJSAGIAQESHAoUdXBkYXRlX3B1c2hfc25hcHNob3QYBiABKAhCCQoHX2NvbmZpZ0IMCgpfY29uZmlnX2lkIjYKE0NyZWF0ZU1vZGVsUmVzcG9uc2USHwoFbW9kZWwYASABKAsyEC5tb2RlbHMudjEuTW9kZWwiHQoPR2V0TW9kZWxSZXF1ZXN0EgoKAmlkGAEgASgJIjMKEEdldE1vZGVsUmVzcG9uc2USHwoFbW9kZWwYASABKAsyEC5tb2RlbHMudjEuTW9kZWwiIwoUR2V0TW9kZWxCeUtleVJlcXVlc3QSCwoDa2V5GAEgASgJIjgKFUdldE1vZGVsQnlLZXlSZXNwb25zZRIfCgVtb2RlbBgBIAEoCzIQLm1vZGVscy52MS5Nb2RlbCKcAQoRTGlzdE1vZGVsc1JlcXVlc3QSEwoGc2VhcmNoGAEgASgJSACIAQESFQoIY2F0ZWdvcnkYAiABKAlIAYgBARINCgVsaW1pdBgDIAEoBRIOCgZvZmZzZXQYBCABKAUSFgoJY29uZmlnX2lkGAUgASgJSAKIAQFCCQoHX3NlYXJjaEILCglfY2F0ZWdvcnlCDAoKX2NvbmZpZ19pZCJFChJMaXN0TW9kZWxzUmVzcG9uc2USIAoGbW9kZWxzGAEgAygLMhAubW9kZWxzLnYxLk1vZGVsEg0KBXRvdGFsGAIgASgFIpoCChJVcGRhdGVNb2RlbFJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEiAKBmZpZWxkcxgDIAMoCzIQLm1vZGVscy52MS5GaWVsZBIrCgZjb25maWcYBCABKAsyFi5tb2RlbHMudjEuTW9kZWxDb25maWdIAYgBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YBSABKAlIAogBARIVCg11cGRhdGVfZmllbGRzGAYgASgIEhwKFHVwZGF0ZV9wdXNoX3NuYXBzaG90GAcgASgIEhUKDXNuYXBzaG90X29ubHkYCCABKAhCBwoFX25hbWVCCQoHX2NvbmZpZ0IVChNfY2hhbmdlX2Rlc2NyaXB0aW9uIjYKE1VwZGF0ZU1vZGVsUmVzcG9uc2USHwoFbW9kZWwYASABKAsyEC5tb2RlbHMudjEuTW9kZWwiIAoSRGVsZXRlTW9kZWxSZXF1ZXN0EgoKAmlkGAEgASgJIiYKE0RlbGV0ZU1vZGVsUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCJGChVEdXBsaWNhdGVNb2RlbFJlcXVlc3QSCgoCaWQYASABKAkSDwoHbmV3X2tleRgCIAEoCRIQCghuZXdfbmFtZRgDIAEoCSI5ChZEdXBsaWNhdGVNb2RlbFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsIksKGExpc3RNb2RlbFZlcnNpb25zUmVxdWVzdBIQCghtb2RlbF9pZBgBIAEoCRINCgVsaW1pdBgCIAEoBRIOCgZvZmZzZXQYAyABKAUiVQoZTGlzdE1vZGVsVmVyc2lvbnNSZXNwb25zZRIpCgh2ZXJzaW9ucxgBIAMoCzIXLm1vZGVscy52MS5Nb2RlbFZlcnNpb24SDQoFdG90YWwYAiABKAUiPgoWR2V0TW9kZWxWZXJzaW9uUmVxdWVzdBIQCghtb2RlbF9pZBgBIAEoCRISCgp2ZXJzaW9uX2lkGAIgASgJIkMKF0dldE1vZGVsVmVyc2lvblJlc3BvbnNlEigKB3ZlcnNpb24YASABKAsyFy5tb2RlbHMudjEuTW9kZWxWZXJzaW9uIkIKGlJlc3RvcmVNb2RlbFZlcnNpb25SZXF1ZXN0EhAKCG1vZGVsX2lkGAEgASgJEhIKCnZlcnNpb25faWQYAiABKAkiPgobUmVzdG9yZU1vZGVsVmVyc2lvblJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsImMKFERlcHJlY2F0ZWRGaWVsZFRvdWNoEhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhEKCW1vZGVsX2tleRgDIAEoCRIRCglmaWVsZF9rZXkYBCABKAkiVgoiTWFya0RlcHJlY2F0ZWRGaWVsZHNRdWVyaWVkUmVxdWVzdBIwCgd0b3VjaGVzGAEgAygLMh8ubW9kZWxzLnYxLkRlcHJlY2F0ZWRGaWVsZFRvdWNoIjYKI01hcmtEZXByZWNhdGVkRmllbGRzUXVlcmllZFJlc3BvbnNlEg8KB3VwZGF0ZWQYASABKAUi9wEKGERlcHJlY2F0ZWRGaWVsZENhbmRpZGF0ZRIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghtb2RlbF9pZBgDIAEoCRIRCgltb2RlbF9rZXkYBCABKAkSEQoJZmllbGRfa2V5GAUgASgJEi4KCmRlbGV0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjgKD2xhc3RfcXVlcmllZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUISChBfbGFzdF9xdWVyaWVkX2F0IkQKJExpc3REZXByZWNhdGVkRmllbGRDYW5kaWRhdGVzUmVxdWVzdBIcChRncmFjZV9wZXJpb2Rfc2Vjb25kcxgBIAEoAyJgCiVMaXN0RGVwcmVjYXRlZEZpZWxkQ2FuZGlkYXRlc1Jlc3BvbnNlEjcKCmNhbmRpZGF0ZXMYASADKAsyIy5tb2RlbHMudjEuRGVwcmVjYXRlZEZpZWxkQ2FuZGlkYXRlIkEKGkRyb3BEZXByZWNhdGVkRmllbGRSZXF1ZXN0EhAKCG1vZGVsX2lkGAEgASgJEhEKCWZpZWxkX2tleRgCIAEoCSIuChtEcm9wRGVwcmVjYXRlZEZpZWxkUmVzcG9uc2USDwoHZHJvcHBlZBgBIAEoCCIhChNQdWJsaXNoTW9kZWxSZXF1ZXN0EgoKAmlkGAEgASgJIm0KFFB1Ymxpc2hNb2RlbFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsEjQKEGJyZWFraW5nX2NoYW5nZXMYAiADKAsyGi5wdWJsaXNoLnYxLkJyZWFraW5nQ2hhbmdlIiMKFVVucHVibGlzaE1vZGVsUmVxdWVzdBIKCgJpZBgBIAEoCSI5ChZVbnB1Ymxpc2hNb2RlbFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsIioKHEdldE1vZGVsUHVibGlzaFN0YXR1c1JlcXVlc3QSCgoCaWQYASABKAkiSgodR2V0TW9kZWxQdWJsaXNoU3RhdHVzUmVzcG9uc2USKQoGc3RhdHVzGAEgASgLMhkucHVibGlzaC52MS5QdWJsaXNoU3RhdHVzKvgCCglGaWVsZFR5cGUSGgoWRklFTERfVFlQRV9VTlNQRUNJRklFRBAAEhMKD0ZJRUxEX1RZUEVfVEVYVBABEhUKEUZJRUxEX1RZUEVfTlVNQkVSEAISFgoSRklFTERfVFlQRV9CT09MRUFOEAMSEwoPRklFTERfVFlQRV9EQVRFEAQSFQoRRklFTERfVFlQRV9TRUxFQ1QQBRITCg9GSUVMRF9UWVBFX0pTT04QBhITCg9GSUVMRF9UWVBFX0xJU1QQBxIUChBGSUVMRF9UWVBFX01PREVMEAgSGAoURklFTERfVFlQRV9SRUZFUkVOQ0UQCRITCg9GSUVMRF9UWVBFX0ZJTEUQChIUChBGSUVMRF9UWVBFX0lNQUdFEAsSFAoQRklFTERfVFlQRV9WSURFTxAMEhYKEkZJRUxEX1RZUEVfQ09OVEVOVBANEhcKE0ZJRUxEX1RZUEVfRkxFWElCTEUQDhITCg9GSUVMRF9UWVBFX0VOVU0QDzLRCwoNTW9kZWxzU2VydmljZRJDCghHZXRNb2RlbBIaLm1vZGVscy52MS5HZXRNb2RlbFJlcXVlc3QaGy5tb2RlbHMudjEuR2V0TW9kZWxSZXNwb25zZRJSCg1HZXRNb2RlbEJ5S2V5Eh8ubW9kZWxzLnYxLkdldE1vZGVsQnlLZXlSZXF1ZXN0GiAubW9kZWxzLnYxLkdldE1vZGVsQnlLZXlSZXNwb25zZRJJCgpMaXN0TW9kZWxzEhwubW9kZWxzLnYxLkxpc3RNb2RlbHNSZXF1ZXN0Gh0ubW9kZWxzLnYxLkxpc3RNb2RlbHNSZXNwb25zZRJMCgtDcmVhdGVNb2RlbBIdLm1vZGVscy52MS5DcmVhdGVNb2RlbFJlcXVlc3QaHi5tb2RlbHMudjEuQ3JlYXRlTW9kZWxSZXNwb25zZRJMCgtVcGRhdGVNb2RlbBIdLm1vZGVscy52MS5VcGRhdGVNb2RlbFJlcXVlc3QaHi5tb2RlbHMudjEuVXBkYXRlTW9kZWxSZXNwb25zZRJMCgtEZWxldGVNb2RlbBIdLm1vZGVscy52MS5EZWxldGVNb2RlbFJlcXVlc3QaHi5tb2RlbHMudjEuRGVsZXRlTW9kZWxSZXNwb25zZRJVCg5EdXBsaWNhdGVNb2RlbBIgLm1vZGVscy52MS5EdXBsaWNhdGVNb2RlbFJlcXVlc3QaIS5tb2RlbHMudjEuRHVwbGljYXRlTW9kZWxSZXNwb25zZRJYCg9HZXRNb2RlbFZlcnNpb24SIS5tb2RlbHMudjEuR2V0TW9kZWxWZXJzaW9uUmVxdWVzdBoiLm1vZGVscy52MS5HZXRNb2RlbFZlcnNpb25SZXNwb25zZRJeChFMaXN0TW9kZWxWZXJzaW9ucxIjLm1vZGVscy52MS5MaXN0TW9kZWxWZXJzaW9uc1JlcXVlc3QaJC5tb2RlbHMudjEuTGlzdE1vZGVsVmVyc2lvbnNSZXNwb25zZRJkChNSZXN0b3JlTW9kZWxWZXJzaW9uEiUubW9kZWxzLnYxLlJlc3RvcmVNb2RlbFZlcnNpb25SZXF1ZXN0GiYubW9kZWxzLnYxLlJlc3RvcmVNb2RlbFZlcnNpb25SZXNwb25zZRJPCgxQdWJsaXNoTW9kZWwSHi5tb2RlbHMudjEuUHVibGlzaE1vZGVsUmVxdWVzdBofLm1vZGVscy52MS5QdWJsaXNoTW9kZWxSZXNwb25zZRJVCg5VbnB1Ymxpc2hNb2RlbBIgLm1vZGVscy52MS5VbnB1Ymxpc2hNb2RlbFJlcXVlc3QaIS5tb2RlbHMudjEuVW5wdWJsaXNoTW9kZWxSZXNwb25zZRJqChVHZXRNb2RlbFB1Ymxpc2hTdGF0dXMSJy5tb2RlbHMudjEuR2V0TW9kZWxQdWJsaXNoU3RhdHVzUmVxdWVzdBooLm1vZGVscy52MS5HZXRNb2RlbFB1Ymxpc2hTdGF0dXNSZXNwb25zZRJ8ChtNYXJrRGVwcmVjYXRlZEZpZWxkc1F1ZXJpZWQSLS5tb2RlbHMudjEuTWFya0RlcHJlY2F0ZWRGaWVsZHNRdWVyaWVkUmVxdWVzdBouLm1vZGVscy52MS5NYXJrRGVwcmVjYXRlZEZpZWxkc1F1ZXJpZWRSZXNwb25zZRKCAQodTGlzdERlcHJlY2F0ZWRGaWVsZENhbmRpZGF0ZXMSLy5tb2RlbHMudjEuTGlzdERlcHJlY2F0ZWRGaWVsZENhbmRpZGF0ZXNSZXF1ZXN0GjAubW9kZWxzLnYxLkxpc3REZXByZWNhdGVkRmllbGRDYW5kaWRhdGVzUmVzcG9uc2USZAoTRHJvcERlcHJlY2F0ZWRGaWVsZBIlLm1vZGVscy52MS5Ecm9wRGVwcmVjYXRlZEZpZWxkUmVxdWVzdBomLm1vZGVscy52MS5Ecm9wRGVwcmVjYXRlZEZpZWxkUmVzcG9uc2VCOVo3Z2l0aHViLmNvbS9laWRlc3R1ZGlvL2ZvaXIvZ2VuL3Byb3RvL21vZGVscy92MTttb2RlbHN2MWIGcHJvdG8z", [file_google_protobuf_struct, file_google_protobuf_timestamp, file_publish_v1_publish]);
13
+ fileDesc("ChZtb2RlbHMvdjEvbW9kZWxzLnByb3RvEgltb2RlbHMudjEiuQQKBUZpZWxkEgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRINCgVsYWJlbBgDIAEoCRIMCgR0eXBlGAQgASgJEhAKCHJlcXVpcmVkGAUgASgIEhYKCWhlbHBfdGV4dBgGIAEoCUgAiAEBEhgKC3BsYWNlaG9sZGVyGAcgASgJSAGIAQESMgoNZGVmYXVsdF92YWx1ZRgIIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZUgCiAEBEicKBmNvbmZpZxgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFgoJaXRlbV90eXBlGAogASgJSAOIAQESFAoHc3RvcmFnZRgLIAEoCUgEiAEBEhoKDXRlbXBsYXRlX3pvbmUYDCABKAlIBYgBARIXCgp6b25lX29yZGVyGA0gASgFSAaIAQESNgoQcmVmZXJlbmNlX2ZpbHRlchgOIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIB4gBARIvCgp2YWxpZGF0aW9uGA8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlSAiIAQFCDAoKX2hlbHBfdGV4dEIOCgxfcGxhY2Vob2xkZXJCEAoOX2RlZmF1bHRfdmFsdWVCDAoKX2l0ZW1fdHlwZUIKCghfc3RvcmFnZUIQCg5fdGVtcGxhdGVfem9uZUINCgtfem9uZV9vcmRlckITChFfcmVmZXJlbmNlX2ZpbHRlckINCgtfdmFsaWRhdGlvbiI8Cg1TaGFyaW5nQ29uZmlnEg8KB2VuYWJsZWQYASABKAgSGgoScmVxdWlyZV9hY2NlcHRhbmNlGAIgASgIIq8FCgtNb2RlbENvbmZpZxISCgp2ZXJzaW9uaW5nGAEgASgIEhIKCnB1Ymxpc2hpbmcYAiABKAgSEAoIdmFyaWFudHMYAyABKAgSDgoGaW5saW5lGAQgASgIEhcKD2N1c3RvbWVyX3Njb3BlZBgFIAEoCBIuCgdzaGFyaW5nGAYgASgLMhgubW9kZWxzLnYxLlNoYXJpbmdDb25maWdIAIgBARIYCgtwbHVyYWxfbmFtZRgHIAEoCUgBiAEBEhgKC2Rlc2NyaXB0aW9uGAggASgJSAKIAQESFQoIY2F0ZWdvcnkYCSABKAlIA4gBARIRCgRpY29uGAogASgJSASIAQESGgoNZGlzcGxheV9maWVsZBgLIAEoCUgFiAEBEh4KEW5hdHVyYWxfa2V5X2ZpZWxkGAwgASgJSAaIAQESFQoNc3lzdGVtX2VudGl0eRgNIAEoCBIWCglkZWxldGFibGUYDiABKAhIB4gBARIVCghlZGl0YWJsZRgPIAEoCEgIiAEBEjUKD21ldGFkYXRhX3NjaGVtYRgQIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICYgBARIrCgVob29rcxgRIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RICogBARIXCgpwbHVyYWxfa2V5GBIgASgJSAuIAQFCCgoIX3NoYXJpbmdCDgoMX3BsdXJhbF9uYW1lQg4KDF9kZXNjcmlwdGlvbkILCglfY2F0ZWdvcnlCBwoFX2ljb25CEAoOX2Rpc3BsYXlfZmllbGRCFAoSX25hdHVyYWxfa2V5X2ZpZWxkQgwKCl9kZWxldGFibGVCCwoJX2VkaXRhYmxlQhIKEF9tZXRhZGF0YV9zY2hlbWFCCAoGX2hvb2tzQg0KC19wbHVyYWxfa2V5IokBChFNb2RlbENhcGFiaWxpdGllcxIUCgxpc192ZXJzaW9uZWQYASABKAgSFgoOaXNfcHVibGlzaGFibGUYAiABKAgSFAoMaGFzX3ZhcmlhbnRzGAMgASgIEhcKD2N1c3RvbWVyX3Njb3BlZBgEIAEoCBIXCg9zaGFyaW5nX2VuYWJsZWQYBSABKAgijwcKBU1vZGVsEgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRIMCgRuYW1lGAMgASgJEiAKBmZpZWxkcxgEIAMoCzIQLm1vZGVscy52MS5GaWVsZBImCgZjb25maWcYBSABKAsyFi5tb2RlbHMudjEuTW9kZWxDb25maWcSFgoJY29uZmlnX2lkGAYgASgJSACIAQESMgoMY2FwYWJpbGl0aWVzGAcgASgLMhwubW9kZWxzLnYxLk1vZGVsQ2FwYWJpbGl0aWVzEh8KEmN1cnJlbnRfdmVyc2lvbl9pZBgIIAEoCUgBiAEBEiUKGHB1Ymxpc2hlZF92ZXJzaW9uX251bWJlchgJIAEoBUgCiAEBEhEKCXRlbmFudF9pZBgKIAEoCRISCgpwcm9qZWN0X2lkGAsgASgJEhcKCmNyZWF0ZWRfYnkYFCABKAlIA4gBARIXCgp1cGRhdGVkX2J5GBUgASgJSASIAQESLgoKY3JlYXRlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgfIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLAoSbGFzdF9wdXNoZWRfZmllbGRzGCggAygLMhAubW9kZWxzLnYxLkZpZWxkEjcKDmxhc3RfcHVzaGVkX2F0GCkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEiEKFHB1Ymxpc2hlZF92ZXJzaW9uX2lkGCogASgJSAaIAQESPQoUc2NoZWR1bGVkX3B1Ymxpc2hfYXQYKyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAeIAQESPwoWc2NoZWR1bGVkX3VucHVibGlzaF9hdBgsIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBICIgBAUIMCgpfY29uZmlnX2lkQhUKE19jdXJyZW50X3ZlcnNpb25faWRCGwoZX3B1Ymxpc2hlZF92ZXJzaW9uX251bWJlckINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieUIRCg9fbGFzdF9wdXNoZWRfYXRCFwoVX3B1Ymxpc2hlZF92ZXJzaW9uX2lkQhcKFV9zY2hlZHVsZWRfcHVibGlzaF9hdEIZChdfc2NoZWR1bGVkX3VucHVibGlzaF9hdCLCAgoMTW9kZWxWZXJzaW9uEgoKAmlkGAEgASgJEhAKCG1vZGVsX2lkGAIgASgJEhYKDnZlcnNpb25fbnVtYmVyGAMgASgFEiAKBmZpZWxkcxgEIAMoCzIQLm1vZGVscy52MS5GaWVsZBIUCgxjb250ZW50X2hhc2gYBSABKAkSHgoRc291cmNlX3ZlcnNpb25faWQYBiABKAlIAIgBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YByABKAlIAYgBARIuCgpjcmVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCgpjcmVhdGVkX2J5GAkgASgJSAKIAQFCFAoSX3NvdXJjZV92ZXJzaW9uX2lkQhUKE19jaGFuZ2VfZGVzY3JpcHRpb25CDQoLX2NyZWF0ZWRfYnkizQEKEkNyZWF0ZU1vZGVsUmVxdWVzdBILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIgCgZmaWVsZHMYAyADKAsyEC5tb2RlbHMudjEuRmllbGQSKwoGY29uZmlnGAQgASgLMhYubW9kZWxzLnYxLk1vZGVsQ29uZmlnSACIAQESFgoJY29uZmlnX2lkGAUgASgJSAGIAQESHAoUdXBkYXRlX3B1c2hfc25hcHNob3QYBiABKAhCCQoHX2NvbmZpZ0IMCgpfY29uZmlnX2lkIjYKE0NyZWF0ZU1vZGVsUmVzcG9uc2USHwoFbW9kZWwYASABKAsyEC5tb2RlbHMudjEuTW9kZWwiHQoPR2V0TW9kZWxSZXF1ZXN0EgoKAmlkGAEgASgJIjMKEEdldE1vZGVsUmVzcG9uc2USHwoFbW9kZWwYASABKAsyEC5tb2RlbHMudjEuTW9kZWwiIwoUR2V0TW9kZWxCeUtleVJlcXVlc3QSCwoDa2V5GAEgASgJIjgKFUdldE1vZGVsQnlLZXlSZXNwb25zZRIfCgVtb2RlbBgBIAEoCzIQLm1vZGVscy52MS5Nb2RlbCKcAQoRTGlzdE1vZGVsc1JlcXVlc3QSEwoGc2VhcmNoGAEgASgJSACIAQESFQoIY2F0ZWdvcnkYAiABKAlIAYgBARINCgVsaW1pdBgDIAEoBRIOCgZvZmZzZXQYBCABKAUSFgoJY29uZmlnX2lkGAUgASgJSAKIAQFCCQoHX3NlYXJjaEILCglfY2F0ZWdvcnlCDAoKX2NvbmZpZ19pZCJFChJMaXN0TW9kZWxzUmVzcG9uc2USIAoGbW9kZWxzGAEgAygLMhAubW9kZWxzLnYxLk1vZGVsEg0KBXRvdGFsGAIgASgFIpoCChJVcGRhdGVNb2RlbFJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEiAKBmZpZWxkcxgDIAMoCzIQLm1vZGVscy52MS5GaWVsZBIrCgZjb25maWcYBCABKAsyFi5tb2RlbHMudjEuTW9kZWxDb25maWdIAYgBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YBSABKAlIAogBARIVCg11cGRhdGVfZmllbGRzGAYgASgIEhwKFHVwZGF0ZV9wdXNoX3NuYXBzaG90GAcgASgIEhUKDXNuYXBzaG90X29ubHkYCCABKAhCBwoFX25hbWVCCQoHX2NvbmZpZ0IVChNfY2hhbmdlX2Rlc2NyaXB0aW9uIjYKE1VwZGF0ZU1vZGVsUmVzcG9uc2USHwoFbW9kZWwYASABKAsyEC5tb2RlbHMudjEuTW9kZWwiIAoSRGVsZXRlTW9kZWxSZXF1ZXN0EgoKAmlkGAEgASgJIiYKE0RlbGV0ZU1vZGVsUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCJGChVEdXBsaWNhdGVNb2RlbFJlcXVlc3QSCgoCaWQYASABKAkSDwoHbmV3X2tleRgCIAEoCRIQCghuZXdfbmFtZRgDIAEoCSI5ChZEdXBsaWNhdGVNb2RlbFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsIksKGExpc3RNb2RlbFZlcnNpb25zUmVxdWVzdBIQCghtb2RlbF9pZBgBIAEoCRINCgVsaW1pdBgCIAEoBRIOCgZvZmZzZXQYAyABKAUiVQoZTGlzdE1vZGVsVmVyc2lvbnNSZXNwb25zZRIpCgh2ZXJzaW9ucxgBIAMoCzIXLm1vZGVscy52MS5Nb2RlbFZlcnNpb24SDQoFdG90YWwYAiABKAUiPgoWR2V0TW9kZWxWZXJzaW9uUmVxdWVzdBIQCghtb2RlbF9pZBgBIAEoCRISCgp2ZXJzaW9uX2lkGAIgASgJIkMKF0dldE1vZGVsVmVyc2lvblJlc3BvbnNlEigKB3ZlcnNpb24YASABKAsyFy5tb2RlbHMudjEuTW9kZWxWZXJzaW9uIkIKGlJlc3RvcmVNb2RlbFZlcnNpb25SZXF1ZXN0EhAKCG1vZGVsX2lkGAEgASgJEhIKCnZlcnNpb25faWQYAiABKAkiPgobUmVzdG9yZU1vZGVsVmVyc2lvblJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsImMKFERlcHJlY2F0ZWRGaWVsZFRvdWNoEhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhEKCW1vZGVsX2tleRgDIAEoCRIRCglmaWVsZF9rZXkYBCABKAkiVgoiTWFya0RlcHJlY2F0ZWRGaWVsZHNRdWVyaWVkUmVxdWVzdBIwCgd0b3VjaGVzGAEgAygLMh8ubW9kZWxzLnYxLkRlcHJlY2F0ZWRGaWVsZFRvdWNoIjYKI01hcmtEZXByZWNhdGVkRmllbGRzUXVlcmllZFJlc3BvbnNlEg8KB3VwZGF0ZWQYASABKAUi9wEKGERlcHJlY2F0ZWRGaWVsZENhbmRpZGF0ZRIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghtb2RlbF9pZBgDIAEoCRIRCgltb2RlbF9rZXkYBCABKAkSEQoJZmllbGRfa2V5GAUgASgJEi4KCmRlbGV0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjgKD2xhc3RfcXVlcmllZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUISChBfbGFzdF9xdWVyaWVkX2F0IkQKJExpc3REZXByZWNhdGVkRmllbGRDYW5kaWRhdGVzUmVxdWVzdBIcChRncmFjZV9wZXJpb2Rfc2Vjb25kcxgBIAEoAyJgCiVMaXN0RGVwcmVjYXRlZEZpZWxkQ2FuZGlkYXRlc1Jlc3BvbnNlEjcKCmNhbmRpZGF0ZXMYASADKAsyIy5tb2RlbHMudjEuRGVwcmVjYXRlZEZpZWxkQ2FuZGlkYXRlIkEKGkRyb3BEZXByZWNhdGVkRmllbGRSZXF1ZXN0EhAKCG1vZGVsX2lkGAEgASgJEhEKCWZpZWxkX2tleRgCIAEoCSIuChtEcm9wRGVwcmVjYXRlZEZpZWxkUmVzcG9uc2USDwoHZHJvcHBlZBgBIAEoCCIhChNQdWJsaXNoTW9kZWxSZXF1ZXN0EgoKAmlkGAEgASgJIm0KFFB1Ymxpc2hNb2RlbFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsEjQKEGJyZWFraW5nX2NoYW5nZXMYAiADKAsyGi5wdWJsaXNoLnYxLkJyZWFraW5nQ2hhbmdlIiMKFVVucHVibGlzaE1vZGVsUmVxdWVzdBIKCgJpZBgBIAEoCSI5ChZVbnB1Ymxpc2hNb2RlbFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsIioKHEdldE1vZGVsUHVibGlzaFN0YXR1c1JlcXVlc3QSCgoCaWQYASABKAkiSgodR2V0TW9kZWxQdWJsaXNoU3RhdHVzUmVzcG9uc2USKQoGc3RhdHVzGAEgASgLMhkucHVibGlzaC52MS5QdWJsaXNoU3RhdHVzIqEBChtTY2hlZHVsZU1vZGVsUHVibGlzaFJlcXVlc3QSCgoCaWQYASABKAkSLgoKcHVibGlzaF9hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNQoMdW5wdWJsaXNoX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQg8KDV91bnB1Ymxpc2hfYXQiPwocU2NoZWR1bGVNb2RlbFB1Ymxpc2hSZXNwb25zZRIfCgVtb2RlbBgBIAEoCzIQLm1vZGVscy52MS5Nb2RlbCIwCiJDYW5jZWxTY2hlZHVsZWRNb2RlbFB1Ymxpc2hSZXF1ZXN0EgoKAmlkGAEgASgJIkYKI0NhbmNlbFNjaGVkdWxlZE1vZGVsUHVibGlzaFJlc3BvbnNlEh8KBW1vZGVsGAEgASgLMhAubW9kZWxzLnYxLk1vZGVsKvgCCglGaWVsZFR5cGUSGgoWRklFTERfVFlQRV9VTlNQRUNJRklFRBAAEhMKD0ZJRUxEX1RZUEVfVEVYVBABEhUKEUZJRUxEX1RZUEVfTlVNQkVSEAISFgoSRklFTERfVFlQRV9CT09MRUFOEAMSEwoPRklFTERfVFlQRV9EQVRFEAQSFQoRRklFTERfVFlQRV9TRUxFQ1QQBRITCg9GSUVMRF9UWVBFX0pTT04QBhITCg9GSUVMRF9UWVBFX0xJU1QQBxIUChBGSUVMRF9UWVBFX01PREVMEAgSGAoURklFTERfVFlQRV9SRUZFUkVOQ0UQCRITCg9GSUVMRF9UWVBFX0ZJTEUQChIUChBGSUVMRF9UWVBFX0lNQUdFEAsSFAoQRklFTERfVFlQRV9WSURFTxAMEhYKEkZJRUxEX1RZUEVfQ09OVEVOVBANEhcKE0ZJRUxEX1RZUEVfRkxFWElCTEUQDhITCg9GSUVMRF9UWVBFX0VOVU0QDzK4DQoNTW9kZWxzU2VydmljZRJDCghHZXRNb2RlbBIaLm1vZGVscy52MS5HZXRNb2RlbFJlcXVlc3QaGy5tb2RlbHMudjEuR2V0TW9kZWxSZXNwb25zZRJSCg1HZXRNb2RlbEJ5S2V5Eh8ubW9kZWxzLnYxLkdldE1vZGVsQnlLZXlSZXF1ZXN0GiAubW9kZWxzLnYxLkdldE1vZGVsQnlLZXlSZXNwb25zZRJJCgpMaXN0TW9kZWxzEhwubW9kZWxzLnYxLkxpc3RNb2RlbHNSZXF1ZXN0Gh0ubW9kZWxzLnYxLkxpc3RNb2RlbHNSZXNwb25zZRJMCgtDcmVhdGVNb2RlbBIdLm1vZGVscy52MS5DcmVhdGVNb2RlbFJlcXVlc3QaHi5tb2RlbHMudjEuQ3JlYXRlTW9kZWxSZXNwb25zZRJMCgtVcGRhdGVNb2RlbBIdLm1vZGVscy52MS5VcGRhdGVNb2RlbFJlcXVlc3QaHi5tb2RlbHMudjEuVXBkYXRlTW9kZWxSZXNwb25zZRJMCgtEZWxldGVNb2RlbBIdLm1vZGVscy52MS5EZWxldGVNb2RlbFJlcXVlc3QaHi5tb2RlbHMudjEuRGVsZXRlTW9kZWxSZXNwb25zZRJVCg5EdXBsaWNhdGVNb2RlbBIgLm1vZGVscy52MS5EdXBsaWNhdGVNb2RlbFJlcXVlc3QaIS5tb2RlbHMudjEuRHVwbGljYXRlTW9kZWxSZXNwb25zZRJYCg9HZXRNb2RlbFZlcnNpb24SIS5tb2RlbHMudjEuR2V0TW9kZWxWZXJzaW9uUmVxdWVzdBoiLm1vZGVscy52MS5HZXRNb2RlbFZlcnNpb25SZXNwb25zZRJeChFMaXN0TW9kZWxWZXJzaW9ucxIjLm1vZGVscy52MS5MaXN0TW9kZWxWZXJzaW9uc1JlcXVlc3QaJC5tb2RlbHMudjEuTGlzdE1vZGVsVmVyc2lvbnNSZXNwb25zZRJkChNSZXN0b3JlTW9kZWxWZXJzaW9uEiUubW9kZWxzLnYxLlJlc3RvcmVNb2RlbFZlcnNpb25SZXF1ZXN0GiYubW9kZWxzLnYxLlJlc3RvcmVNb2RlbFZlcnNpb25SZXNwb25zZRJPCgxQdWJsaXNoTW9kZWwSHi5tb2RlbHMudjEuUHVibGlzaE1vZGVsUmVxdWVzdBofLm1vZGVscy52MS5QdWJsaXNoTW9kZWxSZXNwb25zZRJVCg5VbnB1Ymxpc2hNb2RlbBIgLm1vZGVscy52MS5VbnB1Ymxpc2hNb2RlbFJlcXVlc3QaIS5tb2RlbHMudjEuVW5wdWJsaXNoTW9kZWxSZXNwb25zZRJqChVHZXRNb2RlbFB1Ymxpc2hTdGF0dXMSJy5tb2RlbHMudjEuR2V0TW9kZWxQdWJsaXNoU3RhdHVzUmVxdWVzdBooLm1vZGVscy52MS5HZXRNb2RlbFB1Ymxpc2hTdGF0dXNSZXNwb25zZRJnChRTY2hlZHVsZU1vZGVsUHVibGlzaBImLm1vZGVscy52MS5TY2hlZHVsZU1vZGVsUHVibGlzaFJlcXVlc3QaJy5tb2RlbHMudjEuU2NoZWR1bGVNb2RlbFB1Ymxpc2hSZXNwb25zZRJ8ChtDYW5jZWxTY2hlZHVsZWRNb2RlbFB1Ymxpc2gSLS5tb2RlbHMudjEuQ2FuY2VsU2NoZWR1bGVkTW9kZWxQdWJsaXNoUmVxdWVzdBouLm1vZGVscy52MS5DYW5jZWxTY2hlZHVsZWRNb2RlbFB1Ymxpc2hSZXNwb25zZRJ8ChtNYXJrRGVwcmVjYXRlZEZpZWxkc1F1ZXJpZWQSLS5tb2RlbHMudjEuTWFya0RlcHJlY2F0ZWRGaWVsZHNRdWVyaWVkUmVxdWVzdBouLm1vZGVscy52MS5NYXJrRGVwcmVjYXRlZEZpZWxkc1F1ZXJpZWRSZXNwb25zZRKCAQodTGlzdERlcHJlY2F0ZWRGaWVsZENhbmRpZGF0ZXMSLy5tb2RlbHMudjEuTGlzdERlcHJlY2F0ZWRGaWVsZENhbmRpZGF0ZXNSZXF1ZXN0GjAubW9kZWxzLnYxLkxpc3REZXByZWNhdGVkRmllbGRDYW5kaWRhdGVzUmVzcG9uc2USZAoTRHJvcERlcHJlY2F0ZWRGaWVsZBIlLm1vZGVscy52MS5Ecm9wRGVwcmVjYXRlZEZpZWxkUmVxdWVzdBomLm1vZGVscy52MS5Ecm9wRGVwcmVjYXRlZEZpZWxkUmVzcG9uc2VCOVo3Z2l0aHViLmNvbS9laWRlc3R1ZGlvL2ZvaXIvZ2VuL3Byb3RvL21vZGVscy92MTttb2RlbHN2MWIGcHJvdG8z", [file_google_protobuf_struct, file_google_protobuf_timestamp, file_publish_v1_publish]);
14
14
 
15
15
  /**
16
16
  * Describes the message models.v1.Field.
@@ -292,6 +292,34 @@ export const GetModelPublishStatusRequestSchema = /*@__PURE__*/
292
292
  export const GetModelPublishStatusResponseSchema = /*@__PURE__*/
293
293
  messageDesc(file_models_v1_models, 39);
294
294
 
295
+ /**
296
+ * Describes the message models.v1.ScheduleModelPublishRequest.
297
+ * Use `create(ScheduleModelPublishRequestSchema)` to create a new message.
298
+ */
299
+ export const ScheduleModelPublishRequestSchema = /*@__PURE__*/
300
+ messageDesc(file_models_v1_models, 40);
301
+
302
+ /**
303
+ * Describes the message models.v1.ScheduleModelPublishResponse.
304
+ * Use `create(ScheduleModelPublishResponseSchema)` to create a new message.
305
+ */
306
+ export const ScheduleModelPublishResponseSchema = /*@__PURE__*/
307
+ messageDesc(file_models_v1_models, 41);
308
+
309
+ /**
310
+ * Describes the message models.v1.CancelScheduledModelPublishRequest.
311
+ * Use `create(CancelScheduledModelPublishRequestSchema)` to create a new message.
312
+ */
313
+ export const CancelScheduledModelPublishRequestSchema = /*@__PURE__*/
314
+ messageDesc(file_models_v1_models, 42);
315
+
316
+ /**
317
+ * Describes the message models.v1.CancelScheduledModelPublishResponse.
318
+ * Use `create(CancelScheduledModelPublishResponseSchema)` to create a new message.
319
+ */
320
+ export const CancelScheduledModelPublishResponseSchema = /*@__PURE__*/
321
+ messageDesc(file_models_v1_models, 43);
322
+
295
323
  /**
296
324
  * Describes the enum models.v1.FieldType.
297
325
  */
@@ -678,6 +678,8 @@ export declare type PublishBatchItem = Message<"schedules.v1.PublishBatchItem">
678
678
  batchId: string;
679
679
 
680
680
  /**
681
+ * Populated when target_kind is "record_version" — empty otherwise.
682
+ *
681
683
  * @generated from field: string version_id = 3;
682
684
  */
683
685
  versionId: string;
@@ -693,6 +695,10 @@ export declare type PublishBatchItem = Message<"schedules.v1.PublishBatchItem">
693
695
  errorMessage?: string | undefined;
694
696
 
695
697
  /**
698
+ * For record_version items, the prior published version_id (republish on
699
+ * rollback). For model items, the prior published_version_id snapshot
700
+ * pointer (republish that snapshot on rollback).
701
+ *
696
702
  * @generated from field: optional string previous_published_version_id = 6;
697
703
  */
698
704
  previousPublishedVersionId?: string | undefined;
@@ -744,6 +750,31 @@ export declare type PublishBatchItem = Message<"schedules.v1.PublishBatchItem">
744
750
  * @generated from field: google.protobuf.Timestamp created_at = 50;
745
751
  */
746
752
  createdAt?: Timestamp | undefined;
753
+
754
+ /**
755
+ * Polymorphic batch items: a single rollout can publish a mix of record
756
+ * versions and model schema changes coordinated as one transaction.
757
+ * target_kind is "record_version" (default, legacy) or "model".
758
+ *
759
+ * @generated from field: string target_kind = 60;
760
+ */
761
+ targetKind: string;
762
+
763
+ /**
764
+ * Populated when target_kind is "model" — empty otherwise. Mirrors
765
+ * version_id for record items.
766
+ *
767
+ * @generated from field: optional string model_id = 61;
768
+ */
769
+ modelId?: string | undefined;
770
+
771
+ /**
772
+ * Denormalized model name for display in the rollout editor (parallel
773
+ * to natural_key/variant_name for record items).
774
+ *
775
+ * @generated from field: optional string model_name = 62;
776
+ */
777
+ modelName?: string | undefined;
747
778
  };
748
779
 
749
780
  /**
@@ -856,9 +887,21 @@ export declare type CreatePublishBatchRequest = Message<"schedules.v1.CreatePubl
856
887
  scheduledAt?: Timestamp | undefined;
857
888
 
858
889
  /**
890
+ * Record version ids to add as items at create time. Optional — items
891
+ * can also be added later via AddItemsToPublishBatch.
892
+ *
859
893
  * @generated from field: repeated string version_ids = 4;
860
894
  */
861
895
  versionIds: string[];
896
+
897
+ /**
898
+ * Model ids to add as items at create time. A single rollout can mix
899
+ * record and model items so a coordinated schema-and-content publish
900
+ * ships in one transaction.
901
+ *
902
+ * @generated from field: repeated string model_ids = 5;
903
+ */
904
+ modelIds: string[];
862
905
  };
863
906
 
864
907
  /**
@@ -1177,6 +1220,14 @@ export declare type AddItemsToPublishBatchRequest = Message<"schedules.v1.AddIte
1177
1220
  * @generated from field: repeated string version_ids = 2;
1178
1221
  */
1179
1222
  versionIds: string[];
1223
+
1224
+ /**
1225
+ * Model items to add. Polymorphic with version_ids — both lists are
1226
+ * independent and either may be empty.
1227
+ *
1228
+ * @generated from field: repeated string model_ids = 3;
1229
+ */
1230
+ modelIds: string[];
1180
1231
  };
1181
1232
 
1182
1233
  /**
@@ -1211,9 +1262,19 @@ export declare type RemoveItemsFromPublishBatchRequest = Message<"schedules.v1.R
1211
1262
  batchId: string;
1212
1263
 
1213
1264
  /**
1265
+ * Item ids to remove (from publish_batch_items.id), independent of
1266
+ * target_kind. Callers passing version_ids continue to work — the
1267
+ * platform handler resolves them by joining on version_id for
1268
+ * record-kind items.
1269
+ *
1214
1270
  * @generated from field: repeated string version_ids = 2;
1215
1271
  */
1216
1272
  versionIds: string[];
1273
+
1274
+ /**
1275
+ * @generated from field: repeated string model_ids = 3;
1276
+ */
1277
+ modelIds: string[];
1217
1278
  };
1218
1279
 
1219
1280
  /**
@@ -9,7 +9,7 @@ import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bu
9
9
  * Describes the file schedules/v1/schedules.proto.
10
10
  */
11
11
  export const file_schedules_v1_schedules = /*@__PURE__*/
12
- fileDesc("ChxzY2hlZHVsZXMvdjEvc2NoZWR1bGVzLnByb3RvEgxzY2hlZHVsZXMudjEixAYKDENyb25TY2hlZHVsZRIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEgwKBGNyb24YBSABKAkSEAoIdGltZXpvbmUYBiABKAkSFQoNb3BlcmF0aW9uX2tleRgHIAEoCRIWCgljb25maWdfaWQYCSABKAlIAYgBARIRCglpc19hY3RpdmUYCiABKAgSMgoJcGF1c2VkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhYKCXBhdXNlZF9ieRgMIAEoCUgDiAEBEjQKC2xhc3RfcnVuX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBEhwKD2xhc3RfcnVuX3N0YXR1cxgOIAEoCUgFiAEBEhsKDmxhc3RfcnVuX2Vycm9yGA8gASgJSAaIAQESNAoLbmV4dF9ydW5fYXQYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAeIAQESEQoJcnVuX2NvdW50GBEgASgFEhUKDWZhaWx1cmVfY291bnQYEiABKAUSHAoUY29uc2VjdXRpdmVfZmFpbHVyZXMYEyABKAUSEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSLgoKY3JlYXRlZF9hdBgyIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgzIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoKY3JlYXRlZF9ieRg0IAEoCUgIiAEBEhcKCnVwZGF0ZWRfYnkYNSABKAlICYgBAUIOCgxfZGVzY3JpcHRpb25CDAoKX2NvbmZpZ19pZEIMCgpfcGF1c2VkX2F0QgwKCl9wYXVzZWRfYnlCDgoMX2xhc3RfcnVuX2F0QhIKEF9sYXN0X3J1bl9zdGF0dXNCEQoPX2xhc3RfcnVuX2Vycm9yQg4KDF9uZXh0X3J1bl9hdEINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieSKFAQoYTGlzdENyb25TY2hlZHVsZXNSZXF1ZXN0EhYKCWNvbmZpZ19pZBgBIAEoCUgAiAEBEhYKCWlzX2FjdGl2ZRgCIAEoCEgBiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIMCgpfY29uZmlnX2lkQgwKCl9pc19hY3RpdmUiWQoZTGlzdENyb25TY2hlZHVsZXNSZXNwb25zZRItCglzY2hlZHVsZXMYASADKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlEg0KBXRvdGFsGAIgASgFIiQKFkdldENyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiRwoXR2V0Q3JvblNjaGVkdWxlUmVzcG9uc2USLAoIc2NoZWR1bGUYASABKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlIioKG0dldENyb25TY2hlZHVsZUJ5S2V5UmVxdWVzdBILCgNrZXkYASABKAkiTAocR2V0Q3JvblNjaGVkdWxlQnlLZXlSZXNwb25zZRIsCghzY2hlZHVsZRgBIAEoCzIaLnNjaGVkdWxlcy52MS5Dcm9uU2NoZWR1bGUizwEKGUNyZWF0ZUNyb25TY2hlZHVsZVJlcXVlc3QSCwoDa2V5GAEgASgJEgwKBG5hbWUYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBARIMCgRjcm9uGAQgASgJEhUKCHRpbWV6b25lGAUgASgJSAGIAQESFQoNb3BlcmF0aW9uX2tleRgGIAEoCRIWCgljb25maWdfaWQYByABKAlIAogBAUIOCgxfZGVzY3JpcHRpb25CCwoJX3RpbWV6b25lQgwKCl9jb25maWdfaWQiSgoaQ3JlYXRlQ3JvblNjaGVkdWxlUmVzcG9uc2USLAoIc2NoZWR1bGUYASABKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlIoECChlVcGRhdGVDcm9uU2NoZWR1bGVSZXF1ZXN0EgoKAmlkGAEgASgJEhEKBG5hbWUYAiABKAlIAIgBARIYCgtkZXNjcmlwdGlvbhgDIAEoCUgBiAEBEhEKBGNyb24YBCABKAlIAogBARIVCgh0aW1lem9uZRgFIAEoCUgDiAEBEhoKDW9wZXJhdGlvbl9rZXkYBiABKAlIBIgBARIWCglpc19hY3RpdmUYByABKAhIBYgBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CBwoFX2Nyb25CCwoJX3RpbWV6b25lQhAKDl9vcGVyYXRpb25fa2V5QgwKCl9pc19hY3RpdmUiSgoaVXBkYXRlQ3JvblNjaGVkdWxlUmVzcG9uc2USLAoIc2NoZWR1bGUYASABKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlIicKGURlbGV0ZUNyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiLQoaRGVsZXRlQ3JvblNjaGVkdWxlUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCImChhQYXVzZUNyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiSQoZUGF1c2VDcm9uU2NoZWR1bGVSZXNwb25zZRIsCghzY2hlZHVsZRgBIAEoCzIaLnNjaGVkdWxlcy52MS5Dcm9uU2NoZWR1bGUiJwoZUmVzdW1lQ3JvblNjaGVkdWxlUmVxdWVzdBIKCgJpZBgBIAEoCSJKChpSZXN1bWVDcm9uU2NoZWR1bGVSZXNwb25zZRIsCghzY2hlZHVsZRgBIAEoCzIaLnNjaGVkdWxlcy52MS5Dcm9uU2NoZWR1bGUiKAoaVHJpZ2dlckNyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiSwobVHJpZ2dlckNyb25TY2hlZHVsZVJlc3BvbnNlEiwKCHNjaGVkdWxlGAEgASgLMhouc2NoZWR1bGVzLnYxLkNyb25TY2hlZHVsZSKaCAoMUHVibGlzaEJhdGNoEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBARIwCgxzY2hlZHVsZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBnN0YXR1cxgFIAEoCRISCgppdGVtX2NvdW50GAYgASgFEhcKD2NvbXBsZXRlZF9jb3VudBgHIAEoBRIUCgxmYWlsZWRfY291bnQYCCABKAUSMwoKc3RhcnRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARI1Cgxjb21wbGV0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESMwoNZXJyb3Jfc3VtbWFyeRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIdChBzY2hlZHVsZWRfam9iX2lkGAwgASgJSASIAQESHgoRcm9sbGJhY2tfYmF0Y2hfaWQYDSABKAlIBYgBARITCgtpc19yb2xsYmFjaxgOIAEoCBIeChFvcmlnaW5hbF9iYXRjaF9pZBgPIAEoCUgGiAEBEiMKFmRpc3BhdGNoX2ZhaWx1cmVfY291bnQYECABKAVIB4gBARIqCh1kaXNwYXRjaF9jb25zZWN1dGl2ZV9mYWlsdXJlcxgRIAEoBUgIiAEBEiAKE2Rpc3BhdGNoX2xhc3RfZXJyb3IYEiABKAlICYgBARIRCgl0ZW5hbnRfaWQYFCABKAkSEgoKcHJvamVjdF9pZBgVIAEoCRIXCgpjcmVhdGVkX2J5GB4gASgJSAqIAQESGQoMY2FuY2VsbGVkX2J5GB8gASgJSAuIAQESNQoMY2FuY2VsbGVkX2F0GCAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgMiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9kZXNjcmlwdGlvbkINCgtfc3RhcnRlZF9hdEIPCg1fY29tcGxldGVkX2F0QhAKDl9lcnJvcl9zdW1tYXJ5QhMKEV9zY2hlZHVsZWRfam9iX2lkQhQKEl9yb2xsYmFja19iYXRjaF9pZEIUChJfb3JpZ2luYWxfYmF0Y2hfaWRCGQoXX2Rpc3BhdGNoX2ZhaWx1cmVfY291bnRCIAoeX2Rpc3BhdGNoX2NvbnNlY3V0aXZlX2ZhaWx1cmVzQhYKFF9kaXNwYXRjaF9sYXN0X2Vycm9yQg0KC19jcmVhdGVkX2J5Qg8KDV9jYW5jZWxsZWRfYnlCDwoNX2NhbmNlbGxlZF9hdCLNBAoQUHVibGlzaEJhdGNoSXRlbRIKCgJpZBgBIAEoCRIQCghiYXRjaF9pZBgCIAEoCRISCgp2ZXJzaW9uX2lkGAMgASgJEg4KBnN0YXR1cxgEIAEoCRIaCg1lcnJvcl9tZXNzYWdlGAUgASgJSACIAQESKgodcHJldmlvdXNfcHVibGlzaGVkX3ZlcnNpb25faWQYBiABKAlIAYgBARIcCg9yb2xsYmFja19hY3Rpb24YByABKAlIAogBARI1Cgxwcm9jZXNzZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQESGwoOdmVyc2lvbl9udW1iZXIYCSABKAVIBIgBARIZCgx2YXJpYW50X25hbWUYCiABKAlIBYgBARIYCgtuYXR1cmFsX2tleRgLIAEoCUgGiAEBEhYKCW1vZGVsX2tleRgMIAEoCUgHiAEBEhEKCXRlbmFudF9pZBgUIAEoCRISCgpwcm9qZWN0X2lkGBUgASgJEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhAKDl9lcnJvcl9tZXNzYWdlQiAKHl9wcmV2aW91c19wdWJsaXNoZWRfdmVyc2lvbl9pZEISChBfcm9sbGJhY2tfYWN0aW9uQg8KDV9wcm9jZXNzZWRfYXRCEQoPX3ZlcnNpb25fbnVtYmVyQg8KDV92YXJpYW50X25hbWVCDgoMX25hdHVyYWxfa2V5QgwKCl9tb2RlbF9rZXkiWgoZTGlzdFB1Ymxpc2hCYXRjaGVzUmVxdWVzdBITCgZzdGF0dXMYASABKAlIAIgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCCQoHX3N0YXR1cyJYChpMaXN0UHVibGlzaEJhdGNoZXNSZXNwb25zZRIrCgdiYXRjaGVzGAEgAygLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaBINCgV0b3RhbBgCIAEoBSIkChZHZXRQdWJsaXNoQmF0Y2hSZXF1ZXN0EgoKAmlkGAEgASgJInMKF0dldFB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaBItCgVpdGVtcxgCIAMoCzIeLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2hJdGVtIpoBChlDcmVhdGVQdWJsaXNoQmF0Y2hSZXF1ZXN0EgwKBG5hbWUYASABKAkSGAoLZGVzY3JpcHRpb24YAiABKAlIAIgBARIwCgxzY2hlZHVsZWRfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhMKC3ZlcnNpb25faWRzGAQgAygJQg4KDF9kZXNjcmlwdGlvbiJHChpDcmVhdGVQdWJsaXNoQmF0Y2hSZXNwb25zZRIpCgViYXRjaBgBIAEoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2gitQEKGVVwZGF0ZVB1Ymxpc2hCYXRjaFJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESNQoMc2NoZWR1bGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIPCg1fc2NoZWR1bGVkX2F0IkcKGlVwZGF0ZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaCInChlEZWxldGVQdWJsaXNoQmF0Y2hSZXF1ZXN0EgoKAmlkGAEgASgJIi0KGkRlbGV0ZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiKAoaVHJpZ2dlclB1Ymxpc2hCYXRjaFJlcXVlc3QSCgoCaWQYASABKAkiSAobVHJpZ2dlclB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaCImChhQYXVzZVB1Ymxpc2hCYXRjaFJlcXVlc3QSCgoCaWQYASABKAkiRgoZUGF1c2VQdWJsaXNoQmF0Y2hSZXNwb25zZRIpCgViYXRjaBgBIAEoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2giJwoZUmVzdW1lUHVibGlzaEJhdGNoUmVxdWVzdBIKCgJpZBgBIAEoCSJHChpSZXN1bWVQdWJsaXNoQmF0Y2hSZXNwb25zZRIpCgViYXRjaBgBIAEoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2giLwobUHJldmlld1JvbGxiYWNrQmF0Y2hSZXF1ZXN0EhAKCGJhdGNoX2lkGAEgASgJIlwKHFByZXZpZXdSb2xsYmFja0JhdGNoUmVzcG9uc2USLQoFaXRlbXMYASADKAsyHi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoSXRlbRINCgV0b3RhbBgCIAEoBSIvChtSb2xsYmFja1B1Ymxpc2hCYXRjaFJlcXVlc3QSEAoIYmF0Y2hfaWQYASABKAkiSQocUm9sbGJhY2tQdWJsaXNoQmF0Y2hSZXNwb25zZRIpCgViYXRjaBgBIAEoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2giMAocUmV0cnlGYWlsZWRCYXRjaEl0ZW1zUmVxdWVzdBIQCghiYXRjaF9pZBgBIAEoCSJhCh1SZXRyeUZhaWxlZEJhdGNoSXRlbXNSZXNwb25zZRIpCgViYXRjaBgBIAEoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2gSFQoNcmV0cmllZF9jb3VudBgCIAEoBSJGCh1BZGRJdGVtc1RvUHVibGlzaEJhdGNoUmVxdWVzdBIQCghiYXRjaF9pZBgBIAEoCRITCgt2ZXJzaW9uX2lkcxgCIAMoCSJLCh5BZGRJdGVtc1RvUHVibGlzaEJhdGNoUmVzcG9uc2USKQoFYmF0Y2gYASABKAsyGi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoIksKIlJlbW92ZUl0ZW1zRnJvbVB1Ymxpc2hCYXRjaFJlcXVlc3QSEAoIYmF0Y2hfaWQYASABKAkSEwoLdmVyc2lvbl9pZHMYAiADKAkiUAojUmVtb3ZlSXRlbXNGcm9tUHVibGlzaEJhdGNoUmVzcG9uc2USKQoFYmF0Y2gYASABKAsyGi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoMsYSChBTY2hlZHVsZXNTZXJ2aWNlEmQKEUxpc3RDcm9uU2NoZWR1bGVzEiYuc2NoZWR1bGVzLnYxLkxpc3RDcm9uU2NoZWR1bGVzUmVxdWVzdBonLnNjaGVkdWxlcy52MS5MaXN0Q3JvblNjaGVkdWxlc1Jlc3BvbnNlEl4KD0dldENyb25TY2hlZHVsZRIkLnNjaGVkdWxlcy52MS5HZXRDcm9uU2NoZWR1bGVSZXF1ZXN0GiUuc2NoZWR1bGVzLnYxLkdldENyb25TY2hlZHVsZVJlc3BvbnNlEm0KFEdldENyb25TY2hlZHVsZUJ5S2V5Eikuc2NoZWR1bGVzLnYxLkdldENyb25TY2hlZHVsZUJ5S2V5UmVxdWVzdBoqLnNjaGVkdWxlcy52MS5HZXRDcm9uU2NoZWR1bGVCeUtleVJlc3BvbnNlEmcKEkNyZWF0ZUNyb25TY2hlZHVsZRInLnNjaGVkdWxlcy52MS5DcmVhdGVDcm9uU2NoZWR1bGVSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLkNyZWF0ZUNyb25TY2hlZHVsZVJlc3BvbnNlEmcKElVwZGF0ZUNyb25TY2hlZHVsZRInLnNjaGVkdWxlcy52MS5VcGRhdGVDcm9uU2NoZWR1bGVSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLlVwZGF0ZUNyb25TY2hlZHVsZVJlc3BvbnNlEmcKEkRlbGV0ZUNyb25TY2hlZHVsZRInLnNjaGVkdWxlcy52MS5EZWxldGVDcm9uU2NoZWR1bGVSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLkRlbGV0ZUNyb25TY2hlZHVsZVJlc3BvbnNlEmQKEVBhdXNlQ3JvblNjaGVkdWxlEiYuc2NoZWR1bGVzLnYxLlBhdXNlQ3JvblNjaGVkdWxlUmVxdWVzdBonLnNjaGVkdWxlcy52MS5QYXVzZUNyb25TY2hlZHVsZVJlc3BvbnNlEmcKElJlc3VtZUNyb25TY2hlZHVsZRInLnNjaGVkdWxlcy52MS5SZXN1bWVDcm9uU2NoZWR1bGVSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLlJlc3VtZUNyb25TY2hlZHVsZVJlc3BvbnNlEmoKE1RyaWdnZXJDcm9uU2NoZWR1bGUSKC5zY2hlZHVsZXMudjEuVHJpZ2dlckNyb25TY2hlZHVsZVJlcXVlc3QaKS5zY2hlZHVsZXMudjEuVHJpZ2dlckNyb25TY2hlZHVsZVJlc3BvbnNlEmcKEkxpc3RQdWJsaXNoQmF0Y2hlcxInLnNjaGVkdWxlcy52MS5MaXN0UHVibGlzaEJhdGNoZXNSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLkxpc3RQdWJsaXNoQmF0Y2hlc1Jlc3BvbnNlEl4KD0dldFB1Ymxpc2hCYXRjaBIkLnNjaGVkdWxlcy52MS5HZXRQdWJsaXNoQmF0Y2hSZXF1ZXN0GiUuc2NoZWR1bGVzLnYxLkdldFB1Ymxpc2hCYXRjaFJlc3BvbnNlEmcKEkNyZWF0ZVB1Ymxpc2hCYXRjaBInLnNjaGVkdWxlcy52MS5DcmVhdGVQdWJsaXNoQmF0Y2hSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLkNyZWF0ZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEmcKElVwZGF0ZVB1Ymxpc2hCYXRjaBInLnNjaGVkdWxlcy52MS5VcGRhdGVQdWJsaXNoQmF0Y2hSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLlVwZGF0ZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEmcKEkRlbGV0ZVB1Ymxpc2hCYXRjaBInLnNjaGVkdWxlcy52MS5EZWxldGVQdWJsaXNoQmF0Y2hSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLkRlbGV0ZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEmoKE1RyaWdnZXJQdWJsaXNoQmF0Y2gSKC5zY2hlZHVsZXMudjEuVHJpZ2dlclB1Ymxpc2hCYXRjaFJlcXVlc3QaKS5zY2hlZHVsZXMudjEuVHJpZ2dlclB1Ymxpc2hCYXRjaFJlc3BvbnNlEmQKEVBhdXNlUHVibGlzaEJhdGNoEiYuc2NoZWR1bGVzLnYxLlBhdXNlUHVibGlzaEJhdGNoUmVxdWVzdBonLnNjaGVkdWxlcy52MS5QYXVzZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEmcKElJlc3VtZVB1Ymxpc2hCYXRjaBInLnNjaGVkdWxlcy52MS5SZXN1bWVQdWJsaXNoQmF0Y2hSZXF1ZXN0Giguc2NoZWR1bGVzLnYxLlJlc3VtZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEm0KFFByZXZpZXdSb2xsYmFja0JhdGNoEikuc2NoZWR1bGVzLnYxLlByZXZpZXdSb2xsYmFja0JhdGNoUmVxdWVzdBoqLnNjaGVkdWxlcy52MS5QcmV2aWV3Um9sbGJhY2tCYXRjaFJlc3BvbnNlEm0KFFJvbGxiYWNrUHVibGlzaEJhdGNoEikuc2NoZWR1bGVzLnYxLlJvbGxiYWNrUHVibGlzaEJhdGNoUmVxdWVzdBoqLnNjaGVkdWxlcy52MS5Sb2xsYmFja1B1Ymxpc2hCYXRjaFJlc3BvbnNlEnAKFVJldHJ5RmFpbGVkQmF0Y2hJdGVtcxIqLnNjaGVkdWxlcy52MS5SZXRyeUZhaWxlZEJhdGNoSXRlbXNSZXF1ZXN0Gisuc2NoZWR1bGVzLnYxLlJldHJ5RmFpbGVkQmF0Y2hJdGVtc1Jlc3BvbnNlEnMKFkFkZEl0ZW1zVG9QdWJsaXNoQmF0Y2gSKy5zY2hlZHVsZXMudjEuQWRkSXRlbXNUb1B1Ymxpc2hCYXRjaFJlcXVlc3QaLC5zY2hlZHVsZXMudjEuQWRkSXRlbXNUb1B1Ymxpc2hCYXRjaFJlc3BvbnNlEoIBChtSZW1vdmVJdGVtc0Zyb21QdWJsaXNoQmF0Y2gSMC5zY2hlZHVsZXMudjEuUmVtb3ZlSXRlbXNGcm9tUHVibGlzaEJhdGNoUmVxdWVzdBoxLnNjaGVkdWxlcy52MS5SZW1vdmVJdGVtc0Zyb21QdWJsaXNoQmF0Y2hSZXNwb25zZUI/Wj1naXRodWIuY29tL2VpZGVzdHVkaW8vZm9pci9nZW4vcHJvdG8vc2NoZWR1bGVzL3YxO3NjaGVkdWxlc3YxYgZwcm90bzM", [file_google_protobuf_struct, file_google_protobuf_timestamp]);
12
+ fileDesc("ChxzY2hlZHVsZXMvdjEvc2NoZWR1bGVzLnByb3RvEgxzY2hlZHVsZXMudjEixAYKDENyb25TY2hlZHVsZRIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEgwKBGNyb24YBSABKAkSEAoIdGltZXpvbmUYBiABKAkSFQoNb3BlcmF0aW9uX2tleRgHIAEoCRIWCgljb25maWdfaWQYCSABKAlIAYgBARIRCglpc19hY3RpdmUYCiABKAgSMgoJcGF1c2VkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhYKCXBhdXNlZF9ieRgMIAEoCUgDiAEBEjQKC2xhc3RfcnVuX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBEhwKD2xhc3RfcnVuX3N0YXR1cxgOIAEoCUgFiAEBEhsKDmxhc3RfcnVuX2Vycm9yGA8gASgJSAaIAQESNAoLbmV4dF9ydW5fYXQYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAeIAQESEQoJcnVuX2NvdW50GBEgASgFEhUKDWZhaWx1cmVfY291bnQYEiABKAUSHAoUY29uc2VjdXRpdmVfZmFpbHVyZXMYEyABKAUSEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSLgoKY3JlYXRlZF9hdBgyIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgzIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoKY3JlYXRlZF9ieRg0IAEoCUgIiAEBEhcKCnVwZGF0ZWRfYnkYNSABKAlICYgBAUIOCgxfZGVzY3JpcHRpb25CDAoKX2NvbmZpZ19pZEIMCgpfcGF1c2VkX2F0QgwKCl9wYXVzZWRfYnlCDgoMX2xhc3RfcnVuX2F0QhIKEF9sYXN0X3J1bl9zdGF0dXNCEQoPX2xhc3RfcnVuX2Vycm9yQg4KDF9uZXh0X3J1bl9hdEINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieSKFAQoYTGlzdENyb25TY2hlZHVsZXNSZXF1ZXN0EhYKCWNvbmZpZ19pZBgBIAEoCUgAiAEBEhYKCWlzX2FjdGl2ZRgCIAEoCEgBiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIMCgpfY29uZmlnX2lkQgwKCl9pc19hY3RpdmUiWQoZTGlzdENyb25TY2hlZHVsZXNSZXNwb25zZRItCglzY2hlZHVsZXMYASADKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlEg0KBXRvdGFsGAIgASgFIiQKFkdldENyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiRwoXR2V0Q3JvblNjaGVkdWxlUmVzcG9uc2USLAoIc2NoZWR1bGUYASABKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlIioKG0dldENyb25TY2hlZHVsZUJ5S2V5UmVxdWVzdBILCgNrZXkYASABKAkiTAocR2V0Q3JvblNjaGVkdWxlQnlLZXlSZXNwb25zZRIsCghzY2hlZHVsZRgBIAEoCzIaLnNjaGVkdWxlcy52MS5Dcm9uU2NoZWR1bGUizwEKGUNyZWF0ZUNyb25TY2hlZHVsZVJlcXVlc3QSCwoDa2V5GAEgASgJEgwKBG5hbWUYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBARIMCgRjcm9uGAQgASgJEhUKCHRpbWV6b25lGAUgASgJSAGIAQESFQoNb3BlcmF0aW9uX2tleRgGIAEoCRIWCgljb25maWdfaWQYByABKAlIAogBAUIOCgxfZGVzY3JpcHRpb25CCwoJX3RpbWV6b25lQgwKCl9jb25maWdfaWQiSgoaQ3JlYXRlQ3JvblNjaGVkdWxlUmVzcG9uc2USLAoIc2NoZWR1bGUYASABKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlIoECChlVcGRhdGVDcm9uU2NoZWR1bGVSZXF1ZXN0EgoKAmlkGAEgASgJEhEKBG5hbWUYAiABKAlIAIgBARIYCgtkZXNjcmlwdGlvbhgDIAEoCUgBiAEBEhEKBGNyb24YBCABKAlIAogBARIVCgh0aW1lem9uZRgFIAEoCUgDiAEBEhoKDW9wZXJhdGlvbl9rZXkYBiABKAlIBIgBARIWCglpc19hY3RpdmUYByABKAhIBYgBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CBwoFX2Nyb25CCwoJX3RpbWV6b25lQhAKDl9vcGVyYXRpb25fa2V5QgwKCl9pc19hY3RpdmUiSgoaVXBkYXRlQ3JvblNjaGVkdWxlUmVzcG9uc2USLAoIc2NoZWR1bGUYASABKAsyGi5zY2hlZHVsZXMudjEuQ3JvblNjaGVkdWxlIicKGURlbGV0ZUNyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiLQoaRGVsZXRlQ3JvblNjaGVkdWxlUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCImChhQYXVzZUNyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiSQoZUGF1c2VDcm9uU2NoZWR1bGVSZXNwb25zZRIsCghzY2hlZHVsZRgBIAEoCzIaLnNjaGVkdWxlcy52MS5Dcm9uU2NoZWR1bGUiJwoZUmVzdW1lQ3JvblNjaGVkdWxlUmVxdWVzdBIKCgJpZBgBIAEoCSJKChpSZXN1bWVDcm9uU2NoZWR1bGVSZXNwb25zZRIsCghzY2hlZHVsZRgBIAEoCzIaLnNjaGVkdWxlcy52MS5Dcm9uU2NoZWR1bGUiKAoaVHJpZ2dlckNyb25TY2hlZHVsZVJlcXVlc3QSCgoCaWQYASABKAkiSwobVHJpZ2dlckNyb25TY2hlZHVsZVJlc3BvbnNlEiwKCHNjaGVkdWxlGAEgASgLMhouc2NoZWR1bGVzLnYxLkNyb25TY2hlZHVsZSKaCAoMUHVibGlzaEJhdGNoEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBARIwCgxzY2hlZHVsZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBnN0YXR1cxgFIAEoCRISCgppdGVtX2NvdW50GAYgASgFEhcKD2NvbXBsZXRlZF9jb3VudBgHIAEoBRIUCgxmYWlsZWRfY291bnQYCCABKAUSMwoKc3RhcnRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARI1Cgxjb21wbGV0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESMwoNZXJyb3Jfc3VtbWFyeRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIdChBzY2hlZHVsZWRfam9iX2lkGAwgASgJSASIAQESHgoRcm9sbGJhY2tfYmF0Y2hfaWQYDSABKAlIBYgBARITCgtpc19yb2xsYmFjaxgOIAEoCBIeChFvcmlnaW5hbF9iYXRjaF9pZBgPIAEoCUgGiAEBEiMKFmRpc3BhdGNoX2ZhaWx1cmVfY291bnQYECABKAVIB4gBARIqCh1kaXNwYXRjaF9jb25zZWN1dGl2ZV9mYWlsdXJlcxgRIAEoBUgIiAEBEiAKE2Rpc3BhdGNoX2xhc3RfZXJyb3IYEiABKAlICYgBARIRCgl0ZW5hbnRfaWQYFCABKAkSEgoKcHJvamVjdF9pZBgVIAEoCRIXCgpjcmVhdGVkX2J5GB4gASgJSAqIAQESGQoMY2FuY2VsbGVkX2J5GB8gASgJSAuIAQESNQoMY2FuY2VsbGVkX2F0GCAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgMiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9kZXNjcmlwdGlvbkINCgtfc3RhcnRlZF9hdEIPCg1fY29tcGxldGVkX2F0QhAKDl9lcnJvcl9zdW1tYXJ5QhMKEV9zY2hlZHVsZWRfam9iX2lkQhQKEl9yb2xsYmFja19iYXRjaF9pZEIUChJfb3JpZ2luYWxfYmF0Y2hfaWRCGQoXX2Rpc3BhdGNoX2ZhaWx1cmVfY291bnRCIAoeX2Rpc3BhdGNoX2NvbnNlY3V0aXZlX2ZhaWx1cmVzQhYKFF9kaXNwYXRjaF9sYXN0X2Vycm9yQg0KC19jcmVhdGVkX2J5Qg8KDV9jYW5jZWxsZWRfYnlCDwoNX2NhbmNlbGxlZF9hdCKuBQoQUHVibGlzaEJhdGNoSXRlbRIKCgJpZBgBIAEoCRIQCghiYXRjaF9pZBgCIAEoCRISCgp2ZXJzaW9uX2lkGAMgASgJEg4KBnN0YXR1cxgEIAEoCRIaCg1lcnJvcl9tZXNzYWdlGAUgASgJSACIAQESKgodcHJldmlvdXNfcHVibGlzaGVkX3ZlcnNpb25faWQYBiABKAlIAYgBARIcCg9yb2xsYmFja19hY3Rpb24YByABKAlIAogBARI1Cgxwcm9jZXNzZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQESGwoOdmVyc2lvbl9udW1iZXIYCSABKAVIBIgBARIZCgx2YXJpYW50X25hbWUYCiABKAlIBYgBARIYCgtuYXR1cmFsX2tleRgLIAEoCUgGiAEBEhYKCW1vZGVsX2tleRgMIAEoCUgHiAEBEhEKCXRlbmFudF9pZBgUIAEoCRISCgpwcm9qZWN0X2lkGBUgASgJEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhMKC3RhcmdldF9raW5kGDwgASgJEhUKCG1vZGVsX2lkGD0gASgJSAiIAQESFwoKbW9kZWxfbmFtZRg+IAEoCUgJiAEBQhAKDl9lcnJvcl9tZXNzYWdlQiAKHl9wcmV2aW91c19wdWJsaXNoZWRfdmVyc2lvbl9pZEISChBfcm9sbGJhY2tfYWN0aW9uQg8KDV9wcm9jZXNzZWRfYXRCEQoPX3ZlcnNpb25fbnVtYmVyQg8KDV92YXJpYW50X25hbWVCDgoMX25hdHVyYWxfa2V5QgwKCl9tb2RlbF9rZXlCCwoJX21vZGVsX2lkQg0KC19tb2RlbF9uYW1lIloKGUxpc3RQdWJsaXNoQmF0Y2hlc1JlcXVlc3QSEwoGc3RhdHVzGAEgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQgkKB19zdGF0dXMiWAoaTGlzdFB1Ymxpc2hCYXRjaGVzUmVzcG9uc2USKwoHYmF0Y2hlcxgBIAMoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2gSDQoFdG90YWwYAiABKAUiJAoWR2V0UHVibGlzaEJhdGNoUmVxdWVzdBIKCgJpZBgBIAEoCSJzChdHZXRQdWJsaXNoQmF0Y2hSZXNwb25zZRIpCgViYXRjaBgBIAEoCzIaLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2gSLQoFaXRlbXMYAiADKAsyHi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoSXRlbSKtAQoZQ3JlYXRlUHVibGlzaEJhdGNoUmVxdWVzdBIMCgRuYW1lGAEgASgJEhgKC2Rlc2NyaXB0aW9uGAIgASgJSACIAQESMAoMc2NoZWR1bGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBITCgt2ZXJzaW9uX2lkcxgEIAMoCRIRCgltb2RlbF9pZHMYBSADKAlCDgoMX2Rlc2NyaXB0aW9uIkcKGkNyZWF0ZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaCK1AQoZVXBkYXRlUHVibGlzaEJhdGNoUmVxdWVzdBIKCgJpZBgBIAEoCRIRCgRuYW1lGAIgASgJSACIAQESGAoLZGVzY3JpcHRpb24YAyABKAlIAYgBARI1CgxzY2hlZHVsZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQg8KDV9zY2hlZHVsZWRfYXQiRwoaVXBkYXRlUHVibGlzaEJhdGNoUmVzcG9uc2USKQoFYmF0Y2gYASABKAsyGi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoIicKGURlbGV0ZVB1Ymxpc2hCYXRjaFJlcXVlc3QSCgoCaWQYASABKAkiLQoaRGVsZXRlUHVibGlzaEJhdGNoUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIoChpUcmlnZ2VyUHVibGlzaEJhdGNoUmVxdWVzdBIKCgJpZBgBIAEoCSJIChtUcmlnZ2VyUHVibGlzaEJhdGNoUmVzcG9uc2USKQoFYmF0Y2gYASABKAsyGi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoIiYKGFBhdXNlUHVibGlzaEJhdGNoUmVxdWVzdBIKCgJpZBgBIAEoCSJGChlQYXVzZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaCInChlSZXN1bWVQdWJsaXNoQmF0Y2hSZXF1ZXN0EgoKAmlkGAEgASgJIkcKGlJlc3VtZVB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaCIvChtQcmV2aWV3Um9sbGJhY2tCYXRjaFJlcXVlc3QSEAoIYmF0Y2hfaWQYASABKAkiXAocUHJldmlld1JvbGxiYWNrQmF0Y2hSZXNwb25zZRItCgVpdGVtcxgBIAMoCzIeLnNjaGVkdWxlcy52MS5QdWJsaXNoQmF0Y2hJdGVtEg0KBXRvdGFsGAIgASgFIi8KG1JvbGxiYWNrUHVibGlzaEJhdGNoUmVxdWVzdBIQCghiYXRjaF9pZBgBIAEoCSJJChxSb2xsYmFja1B1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaCIwChxSZXRyeUZhaWxlZEJhdGNoSXRlbXNSZXF1ZXN0EhAKCGJhdGNoX2lkGAEgASgJImEKHVJldHJ5RmFpbGVkQmF0Y2hJdGVtc1Jlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaBIVCg1yZXRyaWVkX2NvdW50GAIgASgFIlkKHUFkZEl0ZW1zVG9QdWJsaXNoQmF0Y2hSZXF1ZXN0EhAKCGJhdGNoX2lkGAEgASgJEhMKC3ZlcnNpb25faWRzGAIgAygJEhEKCW1vZGVsX2lkcxgDIAMoCSJLCh5BZGRJdGVtc1RvUHVibGlzaEJhdGNoUmVzcG9uc2USKQoFYmF0Y2gYASABKAsyGi5zY2hlZHVsZXMudjEuUHVibGlzaEJhdGNoIl4KIlJlbW92ZUl0ZW1zRnJvbVB1Ymxpc2hCYXRjaFJlcXVlc3QSEAoIYmF0Y2hfaWQYASABKAkSEwoLdmVyc2lvbl9pZHMYAiADKAkSEQoJbW9kZWxfaWRzGAMgAygJIlAKI1JlbW92ZUl0ZW1zRnJvbVB1Ymxpc2hCYXRjaFJlc3BvbnNlEikKBWJhdGNoGAEgASgLMhouc2NoZWR1bGVzLnYxLlB1Ymxpc2hCYXRjaDLGEgoQU2NoZWR1bGVzU2VydmljZRJkChFMaXN0Q3JvblNjaGVkdWxlcxImLnNjaGVkdWxlcy52MS5MaXN0Q3JvblNjaGVkdWxlc1JlcXVlc3QaJy5zY2hlZHVsZXMudjEuTGlzdENyb25TY2hlZHVsZXNSZXNwb25zZRJeCg9HZXRDcm9uU2NoZWR1bGUSJC5zY2hlZHVsZXMudjEuR2V0Q3JvblNjaGVkdWxlUmVxdWVzdBolLnNjaGVkdWxlcy52MS5HZXRDcm9uU2NoZWR1bGVSZXNwb25zZRJtChRHZXRDcm9uU2NoZWR1bGVCeUtleRIpLnNjaGVkdWxlcy52MS5HZXRDcm9uU2NoZWR1bGVCeUtleVJlcXVlc3QaKi5zY2hlZHVsZXMudjEuR2V0Q3JvblNjaGVkdWxlQnlLZXlSZXNwb25zZRJnChJDcmVhdGVDcm9uU2NoZWR1bGUSJy5zY2hlZHVsZXMudjEuQ3JlYXRlQ3JvblNjaGVkdWxlUmVxdWVzdBooLnNjaGVkdWxlcy52MS5DcmVhdGVDcm9uU2NoZWR1bGVSZXNwb25zZRJnChJVcGRhdGVDcm9uU2NoZWR1bGUSJy5zY2hlZHVsZXMudjEuVXBkYXRlQ3JvblNjaGVkdWxlUmVxdWVzdBooLnNjaGVkdWxlcy52MS5VcGRhdGVDcm9uU2NoZWR1bGVSZXNwb25zZRJnChJEZWxldGVDcm9uU2NoZWR1bGUSJy5zY2hlZHVsZXMudjEuRGVsZXRlQ3JvblNjaGVkdWxlUmVxdWVzdBooLnNjaGVkdWxlcy52MS5EZWxldGVDcm9uU2NoZWR1bGVSZXNwb25zZRJkChFQYXVzZUNyb25TY2hlZHVsZRImLnNjaGVkdWxlcy52MS5QYXVzZUNyb25TY2hlZHVsZVJlcXVlc3QaJy5zY2hlZHVsZXMudjEuUGF1c2VDcm9uU2NoZWR1bGVSZXNwb25zZRJnChJSZXN1bWVDcm9uU2NoZWR1bGUSJy5zY2hlZHVsZXMudjEuUmVzdW1lQ3JvblNjaGVkdWxlUmVxdWVzdBooLnNjaGVkdWxlcy52MS5SZXN1bWVDcm9uU2NoZWR1bGVSZXNwb25zZRJqChNUcmlnZ2VyQ3JvblNjaGVkdWxlEiguc2NoZWR1bGVzLnYxLlRyaWdnZXJDcm9uU2NoZWR1bGVSZXF1ZXN0Gikuc2NoZWR1bGVzLnYxLlRyaWdnZXJDcm9uU2NoZWR1bGVSZXNwb25zZRJnChJMaXN0UHVibGlzaEJhdGNoZXMSJy5zY2hlZHVsZXMudjEuTGlzdFB1Ymxpc2hCYXRjaGVzUmVxdWVzdBooLnNjaGVkdWxlcy52MS5MaXN0UHVibGlzaEJhdGNoZXNSZXNwb25zZRJeCg9HZXRQdWJsaXNoQmF0Y2gSJC5zY2hlZHVsZXMudjEuR2V0UHVibGlzaEJhdGNoUmVxdWVzdBolLnNjaGVkdWxlcy52MS5HZXRQdWJsaXNoQmF0Y2hSZXNwb25zZRJnChJDcmVhdGVQdWJsaXNoQmF0Y2gSJy5zY2hlZHVsZXMudjEuQ3JlYXRlUHVibGlzaEJhdGNoUmVxdWVzdBooLnNjaGVkdWxlcy52MS5DcmVhdGVQdWJsaXNoQmF0Y2hSZXNwb25zZRJnChJVcGRhdGVQdWJsaXNoQmF0Y2gSJy5zY2hlZHVsZXMudjEuVXBkYXRlUHVibGlzaEJhdGNoUmVxdWVzdBooLnNjaGVkdWxlcy52MS5VcGRhdGVQdWJsaXNoQmF0Y2hSZXNwb25zZRJnChJEZWxldGVQdWJsaXNoQmF0Y2gSJy5zY2hlZHVsZXMudjEuRGVsZXRlUHVibGlzaEJhdGNoUmVxdWVzdBooLnNjaGVkdWxlcy52MS5EZWxldGVQdWJsaXNoQmF0Y2hSZXNwb25zZRJqChNUcmlnZ2VyUHVibGlzaEJhdGNoEiguc2NoZWR1bGVzLnYxLlRyaWdnZXJQdWJsaXNoQmF0Y2hSZXF1ZXN0Gikuc2NoZWR1bGVzLnYxLlRyaWdnZXJQdWJsaXNoQmF0Y2hSZXNwb25zZRJkChFQYXVzZVB1Ymxpc2hCYXRjaBImLnNjaGVkdWxlcy52MS5QYXVzZVB1Ymxpc2hCYXRjaFJlcXVlc3QaJy5zY2hlZHVsZXMudjEuUGF1c2VQdWJsaXNoQmF0Y2hSZXNwb25zZRJnChJSZXN1bWVQdWJsaXNoQmF0Y2gSJy5zY2hlZHVsZXMudjEuUmVzdW1lUHVibGlzaEJhdGNoUmVxdWVzdBooLnNjaGVkdWxlcy52MS5SZXN1bWVQdWJsaXNoQmF0Y2hSZXNwb25zZRJtChRQcmV2aWV3Um9sbGJhY2tCYXRjaBIpLnNjaGVkdWxlcy52MS5QcmV2aWV3Um9sbGJhY2tCYXRjaFJlcXVlc3QaKi5zY2hlZHVsZXMudjEuUHJldmlld1JvbGxiYWNrQmF0Y2hSZXNwb25zZRJtChRSb2xsYmFja1B1Ymxpc2hCYXRjaBIpLnNjaGVkdWxlcy52MS5Sb2xsYmFja1B1Ymxpc2hCYXRjaFJlcXVlc3QaKi5zY2hlZHVsZXMudjEuUm9sbGJhY2tQdWJsaXNoQmF0Y2hSZXNwb25zZRJwChVSZXRyeUZhaWxlZEJhdGNoSXRlbXMSKi5zY2hlZHVsZXMudjEuUmV0cnlGYWlsZWRCYXRjaEl0ZW1zUmVxdWVzdBorLnNjaGVkdWxlcy52MS5SZXRyeUZhaWxlZEJhdGNoSXRlbXNSZXNwb25zZRJzChZBZGRJdGVtc1RvUHVibGlzaEJhdGNoEisuc2NoZWR1bGVzLnYxLkFkZEl0ZW1zVG9QdWJsaXNoQmF0Y2hSZXF1ZXN0Giwuc2NoZWR1bGVzLnYxLkFkZEl0ZW1zVG9QdWJsaXNoQmF0Y2hSZXNwb25zZRKCAQobUmVtb3ZlSXRlbXNGcm9tUHVibGlzaEJhdGNoEjAuc2NoZWR1bGVzLnYxLlJlbW92ZUl0ZW1zRnJvbVB1Ymxpc2hCYXRjaFJlcXVlc3QaMS5zY2hlZHVsZXMudjEuUmVtb3ZlSXRlbXNGcm9tUHVibGlzaEJhdGNoUmVzcG9uc2VCP1o9Z2l0aHViLmNvbS9laWRlc3R1ZGlvL2ZvaXIvZ2VuL3Byb3RvL3NjaGVkdWxlcy92MTtzY2hlZHVsZXN2MWIGcHJvdG8z", [file_google_protobuf_struct, file_google_protobuf_timestamp]);
13
13
 
14
14
  /**
15
15
  * Describes the message schedules.v1.CronSchedule.