@eide/foir-proto-ts 0.76.0 → 0.77.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.76.0",
3
+ "version": "0.77.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 { BackfillModelIndexesRequest, BackfillModelIndexesResponse, BackfillQueryableIndexRequest, BackfillQueryableIndexResponse, BatchPublishVersionsRequest, BatchPublishVersionsResponse, BatchRecordOperationsRequest, BatchRecordOperationsResponse, BatchResolveRecordsRequest, BatchResolveRecordsResponse, BulkUpdateRecordsRequest, BulkUpdateRecordsResponse, CancelScheduledRecordPublishRequest, CancelScheduledRecordPublishResponse, CheckLookupAvailabilityRequest, CheckLookupAvailabilityResponse, CreateRecordRequest, CreateRecordResponse, CreateVariantRequest, CreateVariantResponse, CreateVersionRequest, CreateVersionResponse, DeleteEmbeddingsRequest, DeleteEmbeddingsResponse, DeleteRecordRequest, DeleteRecordResponse, DeleteVariantRequest, DeleteVariantResponse, DuplicateRecordRequest, DuplicateRecordResponse, DuplicateRecordsBulkRequest, DuplicateRecordsBulkResponse, EnqueueGenerateEmbeddingRequest, EnqueueGenerateEmbeddingResponse, FindSimilarRecordsRequest, FindSimilarRecordsResponse, GetEmbeddingStatsRequest, GetEmbeddingStatsResponse, GetRecordByKeyOrIdRequest, GetRecordByKeyOrIdResponse, GetRecordByKeyRequest, GetRecordByKeyResponse, GetRecordEmbeddingsRequest, GetRecordEmbeddingsResponse, GetRecordRequest, GetRecordResponse, GetScheduledPublishRequest, GetScheduledPublishResponse, GlobalSearchRequest, GlobalSearchResponse, ListDraftVersionsRequest, ListDraftVersionsResponse, ListLookupConflictsRequest, ListLookupConflictsResponse, ListRecordsRequest, ListRecordsResponse, ListRecordVariantsRequest, ListRecordVariantsResponse, ListRecordVersionsRequest, ListRecordVersionsResponse, ListScheduledPublishesRequest, ListScheduledPublishesResponse, LookupRecordModelsRequest, LookupRecordModelsResponse, LookupRecordRequest, LookupRecordResponse, PublishVersionRequest, PublishVersionResponse, RebuildModelLookupsRequest, RebuildModelLookupsResponse, RevertToVersionRequest, RevertToVersionResponse, SaveContentRequest, SaveContentResponse, ScheduleRecordPublishRequest, ScheduleRecordPublishResponse, SearchEmbeddingsRequest, SearchEmbeddingsResponse, SetDefaultVariantRequest, SetDefaultVariantResponse, UnpublishRecordRequest, UnpublishRecordResponse, UpdateRecordRequest, UpdateRecordResponse, UpdateVariantRequest, UpdateVariantResponse, UpsertRecordRequest, UpsertRecordResponse, WriteEmbeddingsRequest, WriteEmbeddingsResponse } from "./records_pbjs";
6
+ import { BackfillModelIndexesRequest, BackfillModelIndexesResponse, BackfillQueryableIndexRequest, BackfillQueryableIndexResponse, BatchPublishVersionsRequest, BatchPublishVersionsResponse, BatchRecordOperationsRequest, BatchRecordOperationsResponse, BatchResolveRecordsRequest, BatchResolveRecordsResponse, BulkUpdateRecordsRequest, BulkUpdateRecordsResponse, CancelScheduledRecordPublishRequest, CancelScheduledRecordPublishResponse, CheckLookupAvailabilityRequest, CheckLookupAvailabilityResponse, CreateRecordRequest, CreateRecordResponse, CreateVariantRequest, CreateVariantResponse, DeleteEmbeddingsRequest, DeleteEmbeddingsResponse, DeleteRecordRequest, DeleteRecordResponse, DeleteVariantRequest, DeleteVariantResponse, DuplicateRecordRequest, DuplicateRecordResponse, DuplicateRecordsBulkRequest, DuplicateRecordsBulkResponse, EnqueueGenerateEmbeddingRequest, EnqueueGenerateEmbeddingResponse, FindSimilarRecordsRequest, FindSimilarRecordsResponse, GetEmbeddingStatsRequest, GetEmbeddingStatsResponse, GetRecordByKeyOrIdRequest, GetRecordByKeyOrIdResponse, GetRecordByKeyRequest, GetRecordByKeyResponse, GetRecordEmbeddingsRequest, GetRecordEmbeddingsResponse, GetRecordRequest, GetRecordResponse, GetScheduledPublishRequest, GetScheduledPublishResponse, GlobalSearchRequest, GlobalSearchResponse, ListDraftVersionsRequest, ListDraftVersionsResponse, ListLookupConflictsRequest, ListLookupConflictsResponse, ListRecordsRequest, ListRecordsResponse, ListRecordVariantsRequest, ListRecordVariantsResponse, ListRecordVersionsRequest, ListRecordVersionsResponse, ListScheduledPublishesRequest, ListScheduledPublishesResponse, LookupRecordModelsRequest, LookupRecordModelsResponse, LookupRecordRequest, LookupRecordResponse, PublishVersionRequest, PublishVersionResponse, RebuildModelLookupsRequest, RebuildModelLookupsResponse, RevertToVersionRequest, RevertToVersionResponse, ScheduleRecordPublishRequest, ScheduleRecordPublishResponse, SearchEmbeddingsRequest, SearchEmbeddingsResponse, SetDefaultVariantRequest, SetDefaultVariantResponse, UnpublishRecordRequest, UnpublishRecordResponse, UpdateRecordRequest, UpdateRecordResponse, UpdateVariantRequest, UpdateVariantResponse, UpsertRecordRequest, UpsertRecordResponse, WriteEmbeddingsRequest, WriteEmbeddingsResponse } from "./records_pbjs";
7
7
  import { MethodKind } from "@bufbuild/protobuf";
8
8
 
9
9
  /**
@@ -141,17 +141,11 @@ export declare const RecordsService: {
141
141
  readonly kind: MethodKind.Unary,
142
142
  },
143
143
  /**
144
- * Versioning.
144
+ * Versioning. "Save the full content blob as a new version" lives on
145
+ * UpdateRecord with replace_data (+ optional variant_key /
146
+ * change_description) — that one RPC subsumed CreateVersion and
147
+ * SaveContent.
145
148
  *
146
- * @generated from rpc records.v1.RecordsService.CreateVersion
147
- */
148
- readonly createVersion: {
149
- readonly name: "CreateVersion",
150
- readonly I: typeof CreateVersionRequest,
151
- readonly O: typeof CreateVersionResponse,
152
- readonly kind: MethodKind.Unary,
153
- },
154
- /**
155
149
  * @generated from rpc records.v1.RecordsService.PublishVersion
156
150
  */
157
151
  readonly publishVersion: {
@@ -187,17 +181,6 @@ export declare const RecordsService: {
187
181
  readonly O: typeof ListRecordVersionsResponse,
188
182
  readonly kind: MethodKind.Unary,
189
183
  },
190
- /**
191
- * Content save (consolidated editor save path).
192
- *
193
- * @generated from rpc records.v1.RecordsService.SaveContent
194
- */
195
- readonly saveContent: {
196
- readonly name: "SaveContent",
197
- readonly I: typeof SaveContentRequest,
198
- readonly O: typeof SaveContentResponse,
199
- readonly kind: MethodKind.Unary,
200
- },
201
184
  /**
202
185
  * Variants.
203
186
  *
@@ -3,7 +3,7 @@
3
3
  /* eslint-disable */
4
4
  // @ts-nocheck
5
5
 
6
- import { BackfillModelIndexesRequest, BackfillModelIndexesResponse, BackfillQueryableIndexRequest, BackfillQueryableIndexResponse, BatchPublishVersionsRequest, BatchPublishVersionsResponse, BatchRecordOperationsRequest, BatchRecordOperationsResponse, BatchResolveRecordsRequest, BatchResolveRecordsResponse, BulkUpdateRecordsRequest, BulkUpdateRecordsResponse, CancelScheduledRecordPublishRequest, CancelScheduledRecordPublishResponse, CheckLookupAvailabilityRequest, CheckLookupAvailabilityResponse, CreateRecordRequest, CreateRecordResponse, CreateVariantRequest, CreateVariantResponse, CreateVersionRequest, CreateVersionResponse, DeleteEmbeddingsRequest, DeleteEmbeddingsResponse, DeleteRecordRequest, DeleteRecordResponse, DeleteVariantRequest, DeleteVariantResponse, DuplicateRecordRequest, DuplicateRecordResponse, DuplicateRecordsBulkRequest, DuplicateRecordsBulkResponse, EnqueueGenerateEmbeddingRequest, EnqueueGenerateEmbeddingResponse, FindSimilarRecordsRequest, FindSimilarRecordsResponse, GetEmbeddingStatsRequest, GetEmbeddingStatsResponse, GetRecordByKeyOrIdRequest, GetRecordByKeyOrIdResponse, GetRecordByKeyRequest, GetRecordByKeyResponse, GetRecordEmbeddingsRequest, GetRecordEmbeddingsResponse, GetRecordRequest, GetRecordResponse, GetScheduledPublishRequest, GetScheduledPublishResponse, GlobalSearchRequest, GlobalSearchResponse, ListDraftVersionsRequest, ListDraftVersionsResponse, ListLookupConflictsRequest, ListLookupConflictsResponse, ListRecordsRequest, ListRecordsResponse, ListRecordVariantsRequest, ListRecordVariantsResponse, ListRecordVersionsRequest, ListRecordVersionsResponse, ListScheduledPublishesRequest, ListScheduledPublishesResponse, LookupRecordModelsRequest, LookupRecordModelsResponse, LookupRecordRequest, LookupRecordResponse, PublishVersionRequest, PublishVersionResponse, RebuildModelLookupsRequest, RebuildModelLookupsResponse, RevertToVersionRequest, RevertToVersionResponse, SaveContentRequest, SaveContentResponse, ScheduleRecordPublishRequest, ScheduleRecordPublishResponse, SearchEmbeddingsRequest, SearchEmbeddingsResponse, SetDefaultVariantRequest, SetDefaultVariantResponse, UnpublishRecordRequest, UnpublishRecordResponse, UpdateRecordRequest, UpdateRecordResponse, UpdateVariantRequest, UpdateVariantResponse, UpsertRecordRequest, UpsertRecordResponse, WriteEmbeddingsRequest, WriteEmbeddingsResponse } from "./records_pbjs";
6
+ import { BackfillModelIndexesRequest, BackfillModelIndexesResponse, BackfillQueryableIndexRequest, BackfillQueryableIndexResponse, BatchPublishVersionsRequest, BatchPublishVersionsResponse, BatchRecordOperationsRequest, BatchRecordOperationsResponse, BatchResolveRecordsRequest, BatchResolveRecordsResponse, BulkUpdateRecordsRequest, BulkUpdateRecordsResponse, CancelScheduledRecordPublishRequest, CancelScheduledRecordPublishResponse, CheckLookupAvailabilityRequest, CheckLookupAvailabilityResponse, CreateRecordRequest, CreateRecordResponse, CreateVariantRequest, CreateVariantResponse, DeleteEmbeddingsRequest, DeleteEmbeddingsResponse, DeleteRecordRequest, DeleteRecordResponse, DeleteVariantRequest, DeleteVariantResponse, DuplicateRecordRequest, DuplicateRecordResponse, DuplicateRecordsBulkRequest, DuplicateRecordsBulkResponse, EnqueueGenerateEmbeddingRequest, EnqueueGenerateEmbeddingResponse, FindSimilarRecordsRequest, FindSimilarRecordsResponse, GetEmbeddingStatsRequest, GetEmbeddingStatsResponse, GetRecordByKeyOrIdRequest, GetRecordByKeyOrIdResponse, GetRecordByKeyRequest, GetRecordByKeyResponse, GetRecordEmbeddingsRequest, GetRecordEmbeddingsResponse, GetRecordRequest, GetRecordResponse, GetScheduledPublishRequest, GetScheduledPublishResponse, GlobalSearchRequest, GlobalSearchResponse, ListDraftVersionsRequest, ListDraftVersionsResponse, ListLookupConflictsRequest, ListLookupConflictsResponse, ListRecordsRequest, ListRecordsResponse, ListRecordVariantsRequest, ListRecordVariantsResponse, ListRecordVersionsRequest, ListRecordVersionsResponse, ListScheduledPublishesRequest, ListScheduledPublishesResponse, LookupRecordModelsRequest, LookupRecordModelsResponse, LookupRecordRequest, LookupRecordResponse, PublishVersionRequest, PublishVersionResponse, RebuildModelLookupsRequest, RebuildModelLookupsResponse, RevertToVersionRequest, RevertToVersionResponse, ScheduleRecordPublishRequest, ScheduleRecordPublishResponse, SearchEmbeddingsRequest, SearchEmbeddingsResponse, SetDefaultVariantRequest, SetDefaultVariantResponse, UnpublishRecordRequest, UnpublishRecordResponse, UpdateRecordRequest, UpdateRecordResponse, UpdateVariantRequest, UpdateVariantResponse, UpsertRecordRequest, UpsertRecordResponse, WriteEmbeddingsRequest, WriteEmbeddingsResponse } from "./records_pbjs";
7
7
  import { MethodKind } from "@bufbuild/protobuf";
8
8
 
9
9
  /**
@@ -141,17 +141,11 @@ export const RecordsService = {
141
141
  kind: MethodKind.Unary,
142
142
  },
143
143
  /**
144
- * Versioning.
144
+ * Versioning. "Save the full content blob as a new version" lives on
145
+ * UpdateRecord with replace_data (+ optional variant_key /
146
+ * change_description) — that one RPC subsumed CreateVersion and
147
+ * SaveContent.
145
148
  *
146
- * @generated from rpc records.v1.RecordsService.CreateVersion
147
- */
148
- createVersion: {
149
- name: "CreateVersion",
150
- I: CreateVersionRequest,
151
- O: CreateVersionResponse,
152
- kind: MethodKind.Unary,
153
- },
154
- /**
155
149
  * @generated from rpc records.v1.RecordsService.PublishVersion
156
150
  */
157
151
  publishVersion: {
@@ -187,17 +181,6 @@ export const RecordsService = {
187
181
  O: ListRecordVersionsResponse,
188
182
  kind: MethodKind.Unary,
189
183
  },
190
- /**
191
- * Content save (consolidated editor save path).
192
- *
193
- * @generated from rpc records.v1.RecordsService.SaveContent
194
- */
195
- saveContent: {
196
- name: "SaveContent",
197
- I: SaveContentRequest,
198
- O: SaveContentResponse,
199
- kind: MethodKind.Unary,
200
- },
201
184
  /**
202
185
  * Variants.
203
186
  *
@@ -1140,48 +1140,6 @@ export declare type DuplicateRecordsBulkResponse = Message<"records.v1.Duplicate
1140
1140
  */
1141
1141
  export declare const DuplicateRecordsBulkResponseSchema: GenMessage<DuplicateRecordsBulkResponse>;
1142
1142
 
1143
- /**
1144
- * @generated from message records.v1.CreateVersionRequest
1145
- */
1146
- export declare type CreateVersionRequest = Message<"records.v1.CreateVersionRequest"> & {
1147
- /**
1148
- * @generated from field: string parent_id = 1;
1149
- */
1150
- parentId: string;
1151
-
1152
- /**
1153
- * @generated from field: google.protobuf.Struct data = 2;
1154
- */
1155
- data?: JsonObject | undefined;
1156
-
1157
- /**
1158
- * @generated from field: optional string change_description = 3;
1159
- */
1160
- changeDescription?: string | undefined;
1161
- };
1162
-
1163
- /**
1164
- * Describes the message records.v1.CreateVersionRequest.
1165
- * Use `create(CreateVersionRequestSchema)` to create a new message.
1166
- */
1167
- export declare const CreateVersionRequestSchema: GenMessage<CreateVersionRequest>;
1168
-
1169
- /**
1170
- * @generated from message records.v1.CreateVersionResponse
1171
- */
1172
- export declare type CreateVersionResponse = Message<"records.v1.CreateVersionResponse"> & {
1173
- /**
1174
- * @generated from field: records.v1.Record version = 1;
1175
- */
1176
- version?: Record | undefined;
1177
- };
1178
-
1179
- /**
1180
- * Describes the message records.v1.CreateVersionResponse.
1181
- * Use `create(CreateVersionResponseSchema)` to create a new message.
1182
- */
1183
- export declare const CreateVersionResponseSchema: GenMessage<CreateVersionResponse>;
1184
-
1185
1143
  /**
1186
1144
  * @generated from message records.v1.PublishVersionRequest
1187
1145
  */
@@ -1529,58 +1487,6 @@ export declare type ListRecordVariantsResponse = Message<"records.v1.ListRecordV
1529
1487
  */
1530
1488
  export declare const ListRecordVariantsResponseSchema: GenMessage<ListRecordVariantsResponse>;
1531
1489
 
1532
- /**
1533
- * @generated from message records.v1.SaveContentRequest
1534
- */
1535
- export declare type SaveContentRequest = Message<"records.v1.SaveContentRequest"> & {
1536
- /**
1537
- * @generated from field: string record_id = 1;
1538
- */
1539
- recordId: string;
1540
-
1541
- /**
1542
- * @generated from field: google.protobuf.Struct data = 2;
1543
- */
1544
- data?: JsonObject | undefined;
1545
-
1546
- /**
1547
- * @generated from field: optional string variant_key = 3;
1548
- */
1549
- variantKey?: string | undefined;
1550
-
1551
- /**
1552
- * @generated from field: optional string change_description = 4;
1553
- */
1554
- changeDescription?: string | undefined;
1555
- };
1556
-
1557
- /**
1558
- * Describes the message records.v1.SaveContentRequest.
1559
- * Use `create(SaveContentRequestSchema)` to create a new message.
1560
- */
1561
- export declare const SaveContentRequestSchema: GenMessage<SaveContentRequest>;
1562
-
1563
- /**
1564
- * @generated from message records.v1.SaveContentResponse
1565
- */
1566
- export declare type SaveContentResponse = Message<"records.v1.SaveContentResponse"> & {
1567
- /**
1568
- * @generated from field: records.v1.Record record = 1;
1569
- */
1570
- record?: Record | undefined;
1571
-
1572
- /**
1573
- * @generated from field: records.v1.Record version = 2;
1574
- */
1575
- version?: Record | undefined;
1576
- };
1577
-
1578
- /**
1579
- * Describes the message records.v1.SaveContentResponse.
1580
- * Use `create(SaveContentResponseSchema)` to create a new message.
1581
- */
1582
- export declare const SaveContentResponseSchema: GenMessage<SaveContentResponse>;
1583
-
1584
1490
  /**
1585
1491
  * @generated from message records.v1.ScheduleRecordPublishRequest
1586
1492
  */
@@ -3030,16 +2936,11 @@ export declare const RecordsService: GenService<{
3030
2936
  output: typeof DuplicateRecordsBulkResponseSchema;
3031
2937
  },
3032
2938
  /**
3033
- * Versioning.
2939
+ * Versioning. "Save the full content blob as a new version" lives on
2940
+ * UpdateRecord with replace_data (+ optional variant_key /
2941
+ * change_description) — that one RPC subsumed CreateVersion and
2942
+ * SaveContent.
3034
2943
  *
3035
- * @generated from rpc records.v1.RecordsService.CreateVersion
3036
- */
3037
- createVersion: {
3038
- methodKind: "unary";
3039
- input: typeof CreateVersionRequestSchema;
3040
- output: typeof CreateVersionResponseSchema;
3041
- },
3042
- /**
3043
2944
  * @generated from rpc records.v1.RecordsService.PublishVersion
3044
2945
  */
3045
2946
  publishVersion: {
@@ -3071,16 +2972,6 @@ export declare const RecordsService: GenService<{
3071
2972
  input: typeof ListRecordVersionsRequestSchema;
3072
2973
  output: typeof ListRecordVersionsResponseSchema;
3073
2974
  },
3074
- /**
3075
- * Content save (consolidated editor save path).
3076
- *
3077
- * @generated from rpc records.v1.RecordsService.SaveContent
3078
- */
3079
- saveContent: {
3080
- methodKind: "unary";
3081
- input: typeof SaveContentRequestSchema;
3082
- output: typeof SaveContentResponseSchema;
3083
- },
3084
2975
  /**
3085
2976
  * Variants.
3086
2977
  *
@@ -10,7 +10,7 @@ import { file_expressions_v1_expressions } from "../../expressions/v1/expression
10
10
  * Describes the file records/v1/records.proto.
11
11
  */
12
12
  export const file_records_v1_records = /*@__PURE__*/
13
- fileDesc("ChhyZWNvcmRzL3YxL3JlY29yZHMucHJvdG8SCnJlY29yZHMudjEihA0KBlJlY29yZBIKCgJpZBgBIAEoCRIRCgltb2RlbF9rZXkYAiABKAkSGAoLbmF0dXJhbF9rZXkYAyABKAlIAIgBARIWCglwYXJlbnRfaWQYBCABKAlIAYgBARIrCgtyZWNvcmRfdHlwZRgFIAEoDjIWLnJlY29yZHMudjEuUmVjb3JkVHlwZRIlCgRkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCghtZXRhZGF0YRgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIYCgtjdXN0b21lcl9pZBgIIAEoCUgDiAEBEhEKCXRlbmFudF9pZBgKIAEoCRISCgpwcm9qZWN0X2lkGAsgASgJEhcKCmNyZWF0ZWRfYnkYFCABKAlIBIgBARIXCgp1cGRhdGVkX2J5GBUgASgJSAWIAQESLgoKY3JlYXRlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgfIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoOdmVyc2lvbl9udW1iZXIYKCABKAVIBogBARIZCgxjb250ZW50X2hhc2gYKSABKAlIB4gBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YKiABKAlICIgBARIbCg5wdWJsaXNoX3N0YXR1cxgrIAEoCUgJiAEBEj0KFHNjaGVkdWxlZF9wdWJsaXNoX2F0GCwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgKiAEBEj8KFnNjaGVkdWxlZF91bnB1Ymxpc2hfYXQYLSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAuIAQESGAoLdmFyaWFudF9rZXkYMiABKAlIDIgBARIZCgx2YXJpYW50X25hbWUYMyABKAlIDYgBARIgChN2YXJpYW50X2Rlc2NyaXB0aW9uGDQgASgJSA6IAQESFwoKY2F0YWxvZ19pZBg1IAEoCUgPiAEBEhUKCHByaW9yaXR5GDYgASgFSBCIAQESPAoPdGFyZ2V0aW5nX3J1bGVzGDcgASgLMh4uZXhwcmVzc2lvbnMudjEuUnVsZUV4cHJlc3Npb25IEYgBARIXCgppc19kZWZhdWx0GDggASgISBKIAQESHwoSY3VycmVudF92ZXJzaW9uX2lkGDwgASgJSBOIAQESIQoUcHVibGlzaGVkX3ZlcnNpb25faWQYPSABKAlIFIgBARIlChhwdWJsaXNoZWRfdmVyc2lvbl9udW1iZXIYPiABKAVIFYgBARI1CgxwdWJsaXNoZWRfYXQYPyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSBaIAQESGQoMcHVibGlzaGVkX2J5GEAgASgJSBeIAQESEwoLY2FuX3B1Ymxpc2gYQSABKAgSFQoNY2FuX3VucHVibGlzaBhCIAEoCBIfChdoYXNfdW5wdWJsaXNoZWRfY2hhbmdlcxhDIAEoCBIdChBtb2RlbF92ZXJzaW9uX2lkGEYgASgJSBiIAQFCDgoMX25hdHVyYWxfa2V5QgwKCl9wYXJlbnRfaWRCCwoJX21ldGFkYXRhQg4KDF9jdXN0b21lcl9pZEINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieUIRCg9fdmVyc2lvbl9udW1iZXJCDwoNX2NvbnRlbnRfaGFzaEIVChNfY2hhbmdlX2Rlc2NyaXB0aW9uQhEKD19wdWJsaXNoX3N0YXR1c0IXChVfc2NoZWR1bGVkX3B1Ymxpc2hfYXRCGQoXX3NjaGVkdWxlZF91bnB1Ymxpc2hfYXRCDgoMX3ZhcmlhbnRfa2V5Qg8KDV92YXJpYW50X25hbWVCFgoUX3ZhcmlhbnRfZGVzY3JpcHRpb25CDQoLX2NhdGFsb2dfaWRCCwoJX3ByaW9yaXR5QhIKEF90YXJnZXRpbmdfcnVsZXNCDQoLX2lzX2RlZmF1bHRCFQoTX2N1cnJlbnRfdmVyc2lvbl9pZEIXChVfcHVibGlzaGVkX3ZlcnNpb25faWRCGwoZX3B1Ymxpc2hlZF92ZXJzaW9uX251bWJlckIPCg1fcHVibGlzaGVkX2F0Qg8KDV9wdWJsaXNoZWRfYnlCEwoRX21vZGVsX3ZlcnNpb25faWQi9QEKD1B1Ymxpc2hTY2hlZHVsZRISCgp2ZXJzaW9uX2lkGAEgASgJEi4KCnB1Ymxpc2hfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKDHVucHVibGlzaF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIuCgpjcmVhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCgpjcmVhdGVkX2J5GAUgASgJSAGIAQFCDwoNX3VucHVibGlzaF9hdEINCgtfY3JlYXRlZF9ieSIuCglTb3J0RmllbGQSDQoFZmllbGQYASABKAkSEgoKZGVzY2VuZGluZxgCIAEoCCKFAgoOQmF0Y2hPcGVyYXRpb24SLAoEdHlwZRgBIAEoDjIeLnJlY29yZHMudjEuQmF0Y2hPcGVyYXRpb25UeXBlEg8KAmlkGAIgASgJSACIAQESFgoJbW9kZWxfa2V5GAMgASgJSAGIAQESGAoLbmF0dXJhbF9rZXkYBCABKAlIAogBARIqCgRkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBEhgKC2N1c3RvbWVyX2lkGAYgASgJSASIAQFCBQoDX2lkQgwKCl9tb2RlbF9rZXlCDgoMX25hdHVyYWxfa2V5QgcKBV9kYXRhQg4KDF9jdXN0b21lcl9pZCKIAQoUQmF0Y2hPcGVyYXRpb25SZXN1bHQSDQoFaW5kZXgYASABKAUSDwoHc3VjY2VzcxgCIAEoCBInCgZyZWNvcmQYAyABKAsyEi5yZWNvcmRzLnYxLlJlY29yZEgAiAEBEhIKBWVycm9yGAQgASgJSAGIAQFCCQoHX3JlY29yZEIICgZfZXJyb3IimAIKE0NyZWF0ZVJlY29yZFJlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJEhgKC25hdHVyYWxfa2V5GAIgASgJSACIAQESJQoEZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSGAoLY3VzdG9tZXJfaWQYBCABKAlIAYgBARIuCghtZXRhZGF0YRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YBiABKAlIA4gBAUIOCgxfbmF0dXJhbF9rZXlCDgoMX2N1c3RvbWVyX2lkQgsKCV9tZXRhZGF0YUIVChNfY2hhbmdlX2Rlc2NyaXB0aW9uIqYBChRDcmVhdGVSZWNvcmRSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZBIoCgd2YXJpYW50GAIgASgLMhIucmVjb3Jkcy52MS5SZWNvcmRIAIgBARIoCgd2ZXJzaW9uGAMgASgLMhIucmVjb3Jkcy52MS5SZWNvcmRIAYgBAUIKCghfdmFyaWFudEIKCghfdmVyc2lvbiIeChBHZXRSZWNvcmRSZXF1ZXN0EgoKAmlkGAEgASgJIjcKEUdldFJlY29yZFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIj8KFUdldFJlY29yZEJ5S2V5UmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSEwoLbmF0dXJhbF9rZXkYAiABKAkiPAoWR2V0UmVjb3JkQnlLZXlSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCJCChlHZXRSZWNvcmRCeUtleU9ySWRSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCRISCgppZGVudGlmaWVyGAIgASgJIkAKGkdldFJlY29yZEJ5S2V5T3JJZFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkItYCChJMaXN0UmVjb3Jkc1JlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJEiMKBHNvcnQYAiADKAsyFS5yZWNvcmRzLnYxLlNvcnRGaWVsZBIYCgtjdXN0b21lcl9pZBgDIAEoCUgAiAEBEhMKBnNlYXJjaBgEIAEoCUgBiAEBEg8KB3ByZXZpZXcYBSABKAgSKwoFd2hlcmUYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQESEgoFYWZ0ZXIYByABKAlIA4gBARITCgZiZWZvcmUYCCABKAlIBIgBARISCgVmaXJzdBgJIAEoBUgFiAEBEhEKBGxhc3QYCiABKAVIBogBAUIOCgxfY3VzdG9tZXJfaWRCCQoHX3NlYXJjaEIICgZfd2hlcmVCCAoGX2FmdGVyQgkKB19iZWZvcmVCCAoGX2ZpcnN0QgcKBV9sYXN0IpYBChNMaXN0UmVjb3Jkc1Jlc3BvbnNlEiMKB3JlY29yZHMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZBINCgV0b3RhbBgCIAEoBRIsCglwYWdlX2luZm8YAyABKAsyFC5yZWNvcmRzLnYxLlBhZ2VJbmZvSACIAQESDwoHY3Vyc29ycxgEIAMoCUIMCgpfcGFnZV9pbmZvIpABCghQYWdlSW5mbxIVCg1oYXNfbmV4dF9wYWdlGAEgASgIEhkKEWhhc19wcmV2aW91c19wYWdlGAIgASgIEhkKDHN0YXJ0X2N1cnNvchgDIAEoCUgAiAEBEhcKCmVuZF9jdXJzb3IYBCABKAlIAYgBAUIPCg1fc3RhcnRfY3Vyc29yQg0KC19lbmRfY3Vyc29yIpsCChNVcGRhdGVSZWNvcmRSZXF1ZXN0EgoKAmlkGAEgASgJEicKBnVwZGF0ZRgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSGAoLbmF0dXJhbF9rZXkYAyABKAlIAIgBARIYCgt2YXJpYW50X2tleRgEIAEoCUgBiAEBEh8KEmNoYW5nZV9kZXNjcmlwdGlvbhgFIAEoCUgCiAEBEjIKDHJlcGxhY2VfZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBAUIOCgxfbmF0dXJhbF9rZXlCDgoMX3ZhcmlhbnRfa2V5QhUKE19jaGFuZ2VfZGVzY3JpcHRpb25CDwoNX3JlcGxhY2VfZGF0YSI6ChRVcGRhdGVSZWNvcmRSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCIhChNEZWxldGVSZWNvcmRSZXF1ZXN0EgoKAmlkGAEgASgJIicKFERlbGV0ZVJlY29yZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgipwEKE1Vwc2VydFJlY29yZFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEQoJbW9kZWxfa2V5GAMgASgJEhMKC25hdHVyYWxfa2V5GAQgASgJEiUKBGRhdGEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhoKEmNoYW5nZV9kZXNjcmlwdGlvbhgGIAEoCSJLChRVcHNlcnRSZWNvcmRSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZBIPCgdjcmVhdGVkGAIgASgIIk4KHEJhdGNoUmVjb3JkT3BlcmF0aW9uc1JlcXVlc3QSLgoKb3BlcmF0aW9ucxgBIAMoCzIaLnJlY29yZHMudjEuQmF0Y2hPcGVyYXRpb24iUgodQmF0Y2hSZWNvcmRPcGVyYXRpb25zUmVzcG9uc2USMQoHcmVzdWx0cxgBIAMoCzIgLnJlY29yZHMudjEuQmF0Y2hPcGVyYXRpb25SZXN1bHQinQEKGEJ1bGtVcGRhdGVSZWNvcmRzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSKwoFd2hlcmUYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESLAoGdXBkYXRlGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBQggKBl93aGVyZUIJCgdfdXBkYXRlIjcKGUJ1bGtVcGRhdGVSZWNvcmRzUmVzcG9uc2USDQoFY291bnQYASABKAUSCwoDaWRzGAIgAygJIjIKHUJhY2tmaWxsUXVlcnlhYmxlSW5kZXhSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCSI5Ch5CYWNrZmlsbFF1ZXJ5YWJsZUluZGV4UmVzcG9uc2USFwoPcmVjb3Jkc19pbmRleGVkGAEgASgFIjAKG0JhY2tmaWxsTW9kZWxJbmRleGVzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkiYQocQmFja2ZpbGxNb2RlbEluZGV4ZXNSZXNwb25zZRIeChZsb29rdXBzX3JlY29yZHNfd2Fsa2VkGAEgASgFEiEKGXF1ZXJ5YWJsZV9yZWNvcmRzX2luZGV4ZWQYAiABKAUiVgoWRHVwbGljYXRlUmVjb3JkUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9uZXdfbmF0dXJhbF9rZXkYAiABKAlIAIgBAUISChBfbmV3X25hdHVyYWxfa2V5Ij0KF0R1cGxpY2F0ZVJlY29yZFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIlAKG0R1cGxpY2F0ZVJlY29yZHNCdWxrUmVxdWVzdBILCgNpZHMYASADKAkSFgoJbW9kZWxfa2V5GAIgASgJSACIAQFCDAoKX21vZGVsX2tleSJDChxEdXBsaWNhdGVSZWNvcmRzQnVsa1Jlc3BvbnNlEiMKB3JlY29yZHMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZCKIAQoUQ3JlYXRlVmVyc2lvblJlcXVlc3QSEQoJcGFyZW50X2lkGAEgASgJEiUKBGRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eh8KEmNoYW5nZV9kZXNjcmlwdGlvbhgDIAEoCUgAiAEBQhUKE19jaGFuZ2VfZGVzY3JpcHRpb24iPAoVQ3JlYXRlVmVyc2lvblJlc3BvbnNlEiMKB3ZlcnNpb24YASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCIrChVQdWJsaXNoVmVyc2lvblJlcXVlc3QSEgoKdmVyc2lvbl9pZBgBIAEoCSI8ChZQdWJsaXNoVmVyc2lvblJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIisKFlVucHVibGlzaFJlY29yZFJlcXVlc3QSEQoJcmVjb3JkX2lkGAEgASgJIioKF1VucHVibGlzaFJlY29yZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiLAoWUmV2ZXJ0VG9WZXJzaW9uUmVxdWVzdBISCgp2ZXJzaW9uX2lkGAEgASgJIj0KF1JldmVydFRvVmVyc2lvblJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIk0KGUxpc3RSZWNvcmRWZXJzaW9uc1JlcXVlc3QSEQoJcGFyZW50X2lkGAEgASgJEg0KBWxpbWl0GAIgASgFEg4KBm9mZnNldBgDIAEoBSJRChpMaXN0UmVjb3JkVmVyc2lvbnNSZXNwb25zZRIkCgh2ZXJzaW9ucxgBIAMoCzISLnJlY29yZHMudjEuUmVjb3JkEg0KBXRvdGFsGAIgASgFImUKFENyZWF0ZVZhcmlhbnRSZXF1ZXN0EhEKCXJlY29yZF9pZBgBIAEoCRITCgt2YXJpYW50X2tleRgCIAEoCRIlCgRkYXRhGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCI8ChVDcmVhdGVWYXJpYW50UmVzcG9uc2USIwoHdmFyaWFudBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIpoBChRVcGRhdGVWYXJpYW50UmVxdWVzdBISCgp2YXJpYW50X2lkGAEgASgJEiUKBGRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjQKDm1ldGFkYXRhX3BhdGNoGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQhEKD19tZXRhZGF0YV9wYXRjaCI8ChVVcGRhdGVWYXJpYW50UmVzcG9uc2USIwoHdmFyaWFudBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIioKFERlbGV0ZVZhcmlhbnRSZXF1ZXN0EhIKCnZhcmlhbnRfaWQYASABKAkiKAoVRGVsZXRlVmFyaWFudFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiQQoYU2V0RGVmYXVsdFZhcmlhbnRSZXF1ZXN0EhEKCXJlY29yZF9pZBgBIAEoCRISCgp2YXJpYW50X2lkGAIgASgJIj8KGVNldERlZmF1bHRWYXJpYW50UmVzcG9uc2USIgoGcmVjb3JkGAEgASgLMhIucmVjb3Jkcy52MS5SZWNvcmQiTQoZTGlzdFJlY29yZFZhcmlhbnRzUmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkSDQoFbGltaXQYAiABKAUSDgoGb2Zmc2V0GAMgASgFIlEKGkxpc3RSZWNvcmRWYXJpYW50c1Jlc3BvbnNlEiQKCHZhcmlhbnRzGAEgAygLMhIucmVjb3Jkcy52MS5SZWNvcmQSDQoFdG90YWwYAiABKAUisAEKElNhdmVDb250ZW50UmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkSJQoEZGF0YRgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSGAoLdmFyaWFudF9rZXkYAyABKAlIAIgBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YBCABKAlIAYgBAUIOCgxfdmFyaWFudF9rZXlCFQoTX2NoYW5nZV9kZXNjcmlwdGlvbiJeChNTYXZlQ29udGVudFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkEiMKB3ZlcnNpb24YAiABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCKqAQocU2NoZWR1bGVSZWNvcmRQdWJsaXNoUmVxdWVzdBISCgp2ZXJzaW9uX2lkGAEgASgJEi4KCnB1Ymxpc2hfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKDHVucHVibGlzaF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIPCg1fdW5wdWJsaXNoX2F0IkQKHVNjaGVkdWxlUmVjb3JkUHVibGlzaFJlc3BvbnNlEiMKB3ZlcnNpb24YASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCI5CiNDYW5jZWxTY2hlZHVsZWRSZWNvcmRQdWJsaXNoUmVxdWVzdBISCgp2ZXJzaW9uX2lkGAEgASgJIksKJENhbmNlbFNjaGVkdWxlZFJlY29yZFB1Ymxpc2hSZXNwb25zZRIjCgd2ZXJzaW9uGAEgASgLMhIucmVjb3Jkcy52MS5SZWNvcmQi0AEKHUxpc3RTY2hlZHVsZWRQdWJsaXNoZXNSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESFgoJbW9kZWxfa2V5GAMgASgJSAKIAQESDQoFbGltaXQYBCABKAUSDgoGb2Zmc2V0GAUgASgFQgcKBV9mcm9tQgUKA190b0IMCgpfbW9kZWxfa2V5IlUKHkxpc3RTY2hlZHVsZWRQdWJsaXNoZXNSZXNwb25zZRIkCgh2ZXJzaW9ucxgBIAMoCzISLnJlY29yZHMudjEuUmVjb3JkEg0KBXRvdGFsGAIgASgFIjAKGkdldFNjaGVkdWxlZFB1Ymxpc2hSZXF1ZXN0EhIKCnZlcnNpb25faWQYASABKAkiTAobR2V0U2NoZWR1bGVkUHVibGlzaFJlc3BvbnNlEi0KCHNjaGVkdWxlGAEgASgLMhsucmVjb3Jkcy52MS5QdWJsaXNoU2NoZWR1bGUimQEKGExpc3REcmFmdFZlcnNpb25zUmVxdWVzdBIWCgltb2RlbF9rZXkYASABKAlIAIgBARITCgZzZWFyY2gYAiABKAlIAYgBARINCgVsaW1pdBgDIAEoBRIOCgZvZmZzZXQYBCABKAUSGAoQZGVkdXBlX2J5X3BhcmVudBgFIAEoCEIMCgpfbW9kZWxfa2V5QgkKB19zZWFyY2giUAoZTGlzdERyYWZ0VmVyc2lvbnNSZXNwb25zZRIkCgh2ZXJzaW9ucxgBIAMoCzISLnJlY29yZHMudjEuUmVjb3JkEg0KBXRvdGFsGAIgASgFIjIKG0JhdGNoUHVibGlzaFZlcnNpb25zUmVxdWVzdBITCgt2ZXJzaW9uX2lkcxgBIAMoCSJcChxCYXRjaFB1Ymxpc2hWZXJzaW9uc1Jlc3BvbnNlEiMKB3JlY29yZHMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZBIXCg9wdWJsaXNoZWRfY291bnQYAiABKAUiuQEKGkJhdGNoUmVzb2x2ZVJlY29yZHNSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCRISCgpyZWNvcmRfaWRzGAIgAygJEhgKC2N1c3RvbWVyX2lkGAMgASgJSACIAQESLQoHY29udGV4dBgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIPCgdwcmV2aWV3GAUgASgIQg4KDF9jdXN0b21lcl9pZEIKCghfY29udGV4dCJKChtCYXRjaFJlc29sdmVSZWNvcmRzUmVzcG9uc2USKwoHcmVjb3JkcxgBIAMoCzIaLnJlY29yZHMudjEuUmVzb2x2ZWRSZWNvcmQizQIKDlJlc29sdmVkUmVjb3JkEhEKCXJlY29yZF9pZBgBIAEoCRIRCgltb2RlbF9rZXkYAiABKAkSGAoLbmF0dXJhbF9rZXkYAyABKAlIAIgBARIlCgRkYXRhGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghtZXRhZGF0YRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFwoKdmFyaWFudF9pZBgGIAEoCUgBiAEBEhEKCWhhc19kcmFmdBgIIAEoCBIuCgpjcmVhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfbmF0dXJhbF9rZXlCDQoLX3ZhcmlhbnRfaWQiLwoZTG9va3VwUmVjb3JkTW9kZWxzUmVxdWVzdBISCgpyZWNvcmRfaWRzGAEgAygJIjgKEFJlY29yZE1vZGVsRW50cnkSEQoJcmVjb3JkX2lkGAEgASgJEhEKCW1vZGVsX2tleRgCIAEoCSJLChpMb29rdXBSZWNvcmRNb2RlbHNSZXNwb25zZRItCgdlbnRyaWVzGAEgAygLMhwucmVjb3Jkcy52MS5SZWNvcmRNb2RlbEVudHJ5IkcKE0dsb2JhbFNlYXJjaFJlcXVlc3QSDQoFcXVlcnkYASABKAkSEgoKbW9kZWxfa2V5cxgCIAMoCRINCgVsaW1pdBgKIAEoBSKRAQoQU2VhcmNoUmVzdWx0SXRlbRIKCgJpZBgBIAEoCRIRCgltb2RlbF9rZXkYAiABKAkSGAoLbmF0dXJhbF9rZXkYAyABKAlIAIgBARIlCgRkYXRhGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBINCgVzY29yZRgFIAEoAUIOCgxfbmF0dXJhbF9rZXkiVAoUR2xvYmFsU2VhcmNoUmVzcG9uc2USLQoHcmVjb3JkcxgBIAMoCzIcLnJlY29yZHMudjEuU2VhcmNoUmVzdWx0SXRlbRINCgV0b3RhbBgCIAEoBSKhAQoORW1iZWRkaW5nU3RhdHMSEQoJbW9kZWxfa2V5GAEgASgJEhUKDXRvdGFsX3JlY29yZHMYAiABKAUSGAoQZW1iZWRkZWRfcmVjb3JkcxgDIAEoBRIXCg9wZW5kaW5nX3JlY29yZHMYBCABKAUSHQoQbGFzdF9lbWJlZGRlZF9hdBgFIAEoCUgAiAEBQhMKEV9sYXN0X2VtYmVkZGVkX2F0InUKD1JlY29yZEVtYmVkZGluZxIRCglyZWNvcmRfaWQYASABKAkSEQoJbW9kZWxfa2V5GAIgASgJEhIKCmRpbWVuc2lvbnMYAyABKAUSGAoLZW1iZWRkZWRfYXQYBCABKAlIAIgBAUIOCgxfZW1iZWRkZWRfYXQikwEKDVNpbWlsYXJSZWNvcmQSCgoCaWQYASABKAkSEQoJbW9kZWxfa2V5GAIgASgJEhgKC25hdHVyYWxfa2V5GAMgASgJSACIAQESJQoEZGF0YRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKc2ltaWxhcml0eRgFIAEoAUIOCgxfbmF0dXJhbF9rZXkiQAoYR2V0RW1iZWRkaW5nU3RhdHNSZXF1ZXN0EhYKCW1vZGVsX2tleRgBIAEoCUgAiAEBQgwKCl9tb2RlbF9rZXkiRgoZR2V0RW1iZWRkaW5nU3RhdHNSZXNwb25zZRIpCgVzdGF0cxgBIAMoCzIaLnJlY29yZHMudjEuRW1iZWRkaW5nU3RhdHMiLwoaR2V0UmVjb3JkRW1iZWRkaW5nc1JlcXVlc3QSEQoJcmVjb3JkX2lkGAEgASgJIk4KG0dldFJlY29yZEVtYmVkZGluZ3NSZXNwb25zZRIvCgplbWJlZGRpbmdzGAEgAygLMhsucmVjb3Jkcy52MS5SZWNvcmRFbWJlZGRpbmciYwoZRmluZFNpbWlsYXJSZWNvcmRzUmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkSFgoJbW9kZWxfa2V5GAIgASgJSACIAQESDQoFbGltaXQYCiABKAVCDAoKX21vZGVsX2tleSJIChpGaW5kU2ltaWxhclJlY29yZHNSZXNwb25zZRIqCgdyZWNvcmRzGAEgAygLMhkucmVjb3Jkcy52MS5TaW1pbGFyUmVjb3JkIpsBChZXcml0ZUVtYmVkZGluZ3NSZXF1ZXN0EhEKCXJlY29yZF9pZBgBIAEoCRIOCgZ2ZWN0b3IYAiADKAISEgoKZGltZW5zaW9ucxgDIAEoBRIVCghwcm92aWRlchgEIAEoCUgAiAEBEhcKCm1vZGVsX25hbWUYBSABKAlIAYgBAUILCglfcHJvdmlkZXJCDQoLX21vZGVsX25hbWUiKgoXV3JpdGVFbWJlZGRpbmdzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIsChdEZWxldGVFbWJlZGRpbmdzUmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkiKwoYRGVsZXRlRW1iZWRkaW5nc1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiZwofRW5xdWV1ZUdlbmVyYXRlRW1iZWRkaW5nUmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkSEQoJbW9kZWxfa2V5GAIgASgJEhMKBnNvdXJjZRgDIAEoCUgAiAEBQgkKB19zb3VyY2UiNAogRW5xdWV1ZUdlbmVyYXRlRW1iZWRkaW5nUmVzcG9uc2USEAoIZW5xdWV1ZWQYASABKAgiZAoXU2VhcmNoRW1iZWRkaW5nc1JlcXVlc3QSFAoMcXVlcnlfdmVjdG9yGAEgAygCEhYKCW1vZGVsX2tleRgCIAEoCUgAiAEBEg0KBWxpbWl0GAogASgFQgwKCl9tb2RlbF9rZXkiRgoYU2VhcmNoRW1iZWRkaW5nc1Jlc3BvbnNlEioKB3Jlc3VsdHMYASADKAsyGS5yZWNvcmRzLnYxLlNpbWlsYXJSZWNvcmQinwIKE0xvb2t1cFJlY29yZFJlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJEhMKC2xvb2t1cF9uYW1lGAIgASgJEhAKCGtleV9oYXNoGAMgASgMEg8KB2NoYW5uZWwYBCABKAkSFwoKdmFyaWFudF9pZBgFIAEoCUgAiAEBEhMKBmxvY2FsZRgGIAEoCUgBiAEBEhgKC2N1c3RvbWVyX2lkGAcgASgJSAKIAQESNgoQY3VzdG9tZXJfY29udGV4dBgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBAUINCgtfdmFyaWFudF9pZEIJCgdfbG9jYWxlQg4KDF9jdXN0b21lcl9pZEITChFfY3VzdG9tZXJfY29udGV4dCI8ChRMb29rdXBSZWNvcmRSZXNwb25zZRIWCglyZWNvcmRfaWQYASABKAlIAIgBAUIMCgpfcmVjb3JkX2lkIukBCh5DaGVja0xvb2t1cEF2YWlsYWJpbGl0eVJlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJEhMKC2xvb2t1cF9uYW1lGAIgASgJEhAKCGtleV9oYXNoGAMgASgMEg8KB2NoYW5uZWwYBCABKAkSFwoKdmFyaWFudF9pZBgFIAEoCUgAiAEBEhMKBmxvY2FsZRgGIAEoCUgBiAEBEh4KEWV4Y2x1ZGVfcmVjb3JkX2lkGAcgASgJSAKIAQFCDQoLX3ZhcmlhbnRfaWRCCQoHX2xvY2FsZUIUChJfZXhjbHVkZV9yZWNvcmRfaWQiNAofQ2hlY2tMb29rdXBBdmFpbGFiaWxpdHlSZXNwb25zZRIRCglhdmFpbGFibGUYASABKAgilwEKFExvb2t1cENvbmZsaWN0RGV0YWlsEhEKCW1vZGVsX2tleRgBIAEoCRITCgtsb29rdXBfbmFtZRgCIAEoCRIPCgdjaGFubmVsGAMgASgJEhcKCnZhcmlhbnRfaWQYBCABKAlIAIgBARITCgZsb2NhbGUYBSABKAlIAYgBAUINCgtfdmFyaWFudF9pZEIJCgdfbG9jYWxlImoKGkxpc3RMb29rdXBDb25mbGljdHNSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCRIYCgtsb29rdXBfbmFtZRgCIAEoCUgAiAEBEg8KB2NoYW5uZWwYAyABKAlCDgoMX2xvb2t1cF9uYW1lIkgKG0xpc3RMb29rdXBDb25mbGljdHNSZXNwb25zZRIpCgZncm91cHMYASADKAsyGS5yZWNvcmRzLnYxLkNvbmZsaWN0R3JvdXAimwEKDUNvbmZsaWN0R3JvdXASEwoLZW5jb2RlZF9rZXkYASABKAkSDwoHY2hhbm5lbBgCIAEoCRIXCgp2YXJpYW50X2lkGAMgASgJSACIAQESGAoLY3VzdG9tZXJfaWQYBCABKAlIAYgBARISCgpyZWNvcmRfaWRzGAUgAygJQg0KC192YXJpYW50X2lkQg4KDF9jdXN0b21lcl9pZCIvChpSZWJ1aWxkTW9kZWxMb29rdXBzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkiNQobUmVidWlsZE1vZGVsTG9va3Vwc1Jlc3BvbnNlEhYKDnJlY29yZHNfd2Fsa2VkGAEgASgFKnMKClJlY29yZFR5cGUSGwoXUkVDT1JEX1RZUEVfVU5TUEVDSUZJRUQQABIWChJSRUNPUkRfVFlQRV9SRUNPUkQQARIXChNSRUNPUkRfVFlQRV9WQVJJQU5UEAISFwoTUkVDT1JEX1RZUEVfVkVSU0lPThADKp0BChJCYXRjaE9wZXJhdGlvblR5cGUSJAogQkFUQ0hfT1BFUkFUSU9OX1RZUEVfVU5TUEVDSUZJRUQQABIfChtCQVRDSF9PUEVSQVRJT05fVFlQRV9DUkVBVEUQARIfChtCQVRDSF9PUEVSQVRJT05fVFlQRV9VUERBVEUQAhIfChtCQVRDSF9PUEVSQVRJT05fVFlQRV9ERUxFVEUQAzKbIgoOUmVjb3Jkc1NlcnZpY2USUQoMQ3JlYXRlUmVjb3JkEh8ucmVjb3Jkcy52MS5DcmVhdGVSZWNvcmRSZXF1ZXN0GiAucmVjb3Jkcy52MS5DcmVhdGVSZWNvcmRSZXNwb25zZRJICglHZXRSZWNvcmQSHC5yZWNvcmRzLnYxLkdldFJlY29yZFJlcXVlc3QaHS5yZWNvcmRzLnYxLkdldFJlY29yZFJlc3BvbnNlElcKDkdldFJlY29yZEJ5S2V5EiEucmVjb3Jkcy52MS5HZXRSZWNvcmRCeUtleVJlcXVlc3QaIi5yZWNvcmRzLnYxLkdldFJlY29yZEJ5S2V5UmVzcG9uc2USYwoSR2V0UmVjb3JkQnlLZXlPcklkEiUucmVjb3Jkcy52MS5HZXRSZWNvcmRCeUtleU9ySWRSZXF1ZXN0GiYucmVjb3Jkcy52MS5HZXRSZWNvcmRCeUtleU9ySWRSZXNwb25zZRJOCgtMaXN0UmVjb3JkcxIeLnJlY29yZHMudjEuTGlzdFJlY29yZHNSZXF1ZXN0Gh8ucmVjb3Jkcy52MS5MaXN0UmVjb3Jkc1Jlc3BvbnNlElEKDFVwZGF0ZVJlY29yZBIfLnJlY29yZHMudjEuVXBkYXRlUmVjb3JkUmVxdWVzdBogLnJlY29yZHMudjEuVXBkYXRlUmVjb3JkUmVzcG9uc2USUQoMVXBzZXJ0UmVjb3JkEh8ucmVjb3Jkcy52MS5VcHNlcnRSZWNvcmRSZXF1ZXN0GiAucmVjb3Jkcy52MS5VcHNlcnRSZWNvcmRSZXNwb25zZRJRCgxEZWxldGVSZWNvcmQSHy5yZWNvcmRzLnYxLkRlbGV0ZVJlY29yZFJlcXVlc3QaIC5yZWNvcmRzLnYxLkRlbGV0ZVJlY29yZFJlc3BvbnNlEmwKFUJhdGNoUmVjb3JkT3BlcmF0aW9ucxIoLnJlY29yZHMudjEuQmF0Y2hSZWNvcmRPcGVyYXRpb25zUmVxdWVzdBopLnJlY29yZHMudjEuQmF0Y2hSZWNvcmRPcGVyYXRpb25zUmVzcG9uc2USYAoRQnVsa1VwZGF0ZVJlY29yZHMSJC5yZWNvcmRzLnYxLkJ1bGtVcGRhdGVSZWNvcmRzUmVxdWVzdBolLnJlY29yZHMudjEuQnVsa1VwZGF0ZVJlY29yZHNSZXNwb25zZRJvChZCYWNrZmlsbFF1ZXJ5YWJsZUluZGV4EikucmVjb3Jkcy52MS5CYWNrZmlsbFF1ZXJ5YWJsZUluZGV4UmVxdWVzdBoqLnJlY29yZHMudjEuQmFja2ZpbGxRdWVyeWFibGVJbmRleFJlc3BvbnNlEmkKFEJhY2tmaWxsTW9kZWxJbmRleGVzEicucmVjb3Jkcy52MS5CYWNrZmlsbE1vZGVsSW5kZXhlc1JlcXVlc3QaKC5yZWNvcmRzLnYxLkJhY2tmaWxsTW9kZWxJbmRleGVzUmVzcG9uc2USWgoPRHVwbGljYXRlUmVjb3JkEiIucmVjb3Jkcy52MS5EdXBsaWNhdGVSZWNvcmRSZXF1ZXN0GiMucmVjb3Jkcy52MS5EdXBsaWNhdGVSZWNvcmRSZXNwb25zZRJpChREdXBsaWNhdGVSZWNvcmRzQnVsaxInLnJlY29yZHMudjEuRHVwbGljYXRlUmVjb3Jkc0J1bGtSZXF1ZXN0GigucmVjb3Jkcy52MS5EdXBsaWNhdGVSZWNvcmRzQnVsa1Jlc3BvbnNlElQKDUNyZWF0ZVZlcnNpb24SIC5yZWNvcmRzLnYxLkNyZWF0ZVZlcnNpb25SZXF1ZXN0GiEucmVjb3Jkcy52MS5DcmVhdGVWZXJzaW9uUmVzcG9uc2USVwoOUHVibGlzaFZlcnNpb24SIS5yZWNvcmRzLnYxLlB1Ymxpc2hWZXJzaW9uUmVxdWVzdBoiLnJlY29yZHMudjEuUHVibGlzaFZlcnNpb25SZXNwb25zZRJaCg9VbnB1Ymxpc2hSZWNvcmQSIi5yZWNvcmRzLnYxLlVucHVibGlzaFJlY29yZFJlcXVlc3QaIy5yZWNvcmRzLnYxLlVucHVibGlzaFJlY29yZFJlc3BvbnNlEloKD1JldmVydFRvVmVyc2lvbhIiLnJlY29yZHMudjEuUmV2ZXJ0VG9WZXJzaW9uUmVxdWVzdBojLnJlY29yZHMudjEuUmV2ZXJ0VG9WZXJzaW9uUmVzcG9uc2USYwoSTGlzdFJlY29yZFZlcnNpb25zEiUucmVjb3Jkcy52MS5MaXN0UmVjb3JkVmVyc2lvbnNSZXF1ZXN0GiYucmVjb3Jkcy52MS5MaXN0UmVjb3JkVmVyc2lvbnNSZXNwb25zZRJOCgtTYXZlQ29udGVudBIeLnJlY29yZHMudjEuU2F2ZUNvbnRlbnRSZXF1ZXN0Gh8ucmVjb3Jkcy52MS5TYXZlQ29udGVudFJlc3BvbnNlElQKDUNyZWF0ZVZhcmlhbnQSIC5yZWNvcmRzLnYxLkNyZWF0ZVZhcmlhbnRSZXF1ZXN0GiEucmVjb3Jkcy52MS5DcmVhdGVWYXJpYW50UmVzcG9uc2USVAoNVXBkYXRlVmFyaWFudBIgLnJlY29yZHMudjEuVXBkYXRlVmFyaWFudFJlcXVlc3QaIS5yZWNvcmRzLnYxLlVwZGF0ZVZhcmlhbnRSZXNwb25zZRJUCg1EZWxldGVWYXJpYW50EiAucmVjb3Jkcy52MS5EZWxldGVWYXJpYW50UmVxdWVzdBohLnJlY29yZHMudjEuRGVsZXRlVmFyaWFudFJlc3BvbnNlEmAKEVNldERlZmF1bHRWYXJpYW50EiQucmVjb3Jkcy52MS5TZXREZWZhdWx0VmFyaWFudFJlcXVlc3QaJS5yZWNvcmRzLnYxLlNldERlZmF1bHRWYXJpYW50UmVzcG9uc2USYwoSTGlzdFJlY29yZFZhcmlhbnRzEiUucmVjb3Jkcy52MS5MaXN0UmVjb3JkVmFyaWFudHNSZXF1ZXN0GiYucmVjb3Jkcy52MS5MaXN0UmVjb3JkVmFyaWFudHNSZXNwb25zZRJsChVTY2hlZHVsZVJlY29yZFB1Ymxpc2gSKC5yZWNvcmRzLnYxLlNjaGVkdWxlUmVjb3JkUHVibGlzaFJlcXVlc3QaKS5yZWNvcmRzLnYxLlNjaGVkdWxlUmVjb3JkUHVibGlzaFJlc3BvbnNlEoEBChxDYW5jZWxTY2hlZHVsZWRSZWNvcmRQdWJsaXNoEi8ucmVjb3Jkcy52MS5DYW5jZWxTY2hlZHVsZWRSZWNvcmRQdWJsaXNoUmVxdWVzdBowLnJlY29yZHMudjEuQ2FuY2VsU2NoZWR1bGVkUmVjb3JkUHVibGlzaFJlc3BvbnNlEm8KFkxpc3RTY2hlZHVsZWRQdWJsaXNoZXMSKS5yZWNvcmRzLnYxLkxpc3RTY2hlZHVsZWRQdWJsaXNoZXNSZXF1ZXN0GioucmVjb3Jkcy52MS5MaXN0U2NoZWR1bGVkUHVibGlzaGVzUmVzcG9uc2USZgoTR2V0U2NoZWR1bGVkUHVibGlzaBImLnJlY29yZHMudjEuR2V0U2NoZWR1bGVkUHVibGlzaFJlcXVlc3QaJy5yZWNvcmRzLnYxLkdldFNjaGVkdWxlZFB1Ymxpc2hSZXNwb25zZRJgChFMaXN0RHJhZnRWZXJzaW9ucxIkLnJlY29yZHMudjEuTGlzdERyYWZ0VmVyc2lvbnNSZXF1ZXN0GiUucmVjb3Jkcy52MS5MaXN0RHJhZnRWZXJzaW9uc1Jlc3BvbnNlEmkKFEJhdGNoUHVibGlzaFZlcnNpb25zEicucmVjb3Jkcy52MS5CYXRjaFB1Ymxpc2hWZXJzaW9uc1JlcXVlc3QaKC5yZWNvcmRzLnYxLkJhdGNoUHVibGlzaFZlcnNpb25zUmVzcG9uc2USZgoTQmF0Y2hSZXNvbHZlUmVjb3JkcxImLnJlY29yZHMudjEuQmF0Y2hSZXNvbHZlUmVjb3Jkc1JlcXVlc3QaJy5yZWNvcmRzLnYxLkJhdGNoUmVzb2x2ZVJlY29yZHNSZXNwb25zZRJjChJMb29rdXBSZWNvcmRNb2RlbHMSJS5yZWNvcmRzLnYxLkxvb2t1cFJlY29yZE1vZGVsc1JlcXVlc3QaJi5yZWNvcmRzLnYxLkxvb2t1cFJlY29yZE1vZGVsc1Jlc3BvbnNlElEKDEdsb2JhbFNlYXJjaBIfLnJlY29yZHMudjEuR2xvYmFsU2VhcmNoUmVxdWVzdBogLnJlY29yZHMudjEuR2xvYmFsU2VhcmNoUmVzcG9uc2USUQoMTG9va3VwUmVjb3JkEh8ucmVjb3Jkcy52MS5Mb29rdXBSZWNvcmRSZXF1ZXN0GiAucmVjb3Jkcy52MS5Mb29rdXBSZWNvcmRSZXNwb25zZRJyChdDaGVja0xvb2t1cEF2YWlsYWJpbGl0eRIqLnJlY29yZHMudjEuQ2hlY2tMb29rdXBBdmFpbGFiaWxpdHlSZXF1ZXN0GisucmVjb3Jkcy52MS5DaGVja0xvb2t1cEF2YWlsYWJpbGl0eVJlc3BvbnNlEmYKE0xpc3RMb29rdXBDb25mbGljdHMSJi5yZWNvcmRzLnYxLkxpc3RMb29rdXBDb25mbGljdHNSZXF1ZXN0GicucmVjb3Jkcy52MS5MaXN0TG9va3VwQ29uZmxpY3RzUmVzcG9uc2USZgoTUmVidWlsZE1vZGVsTG9va3VwcxImLnJlY29yZHMudjEuUmVidWlsZE1vZGVsTG9va3Vwc1JlcXVlc3QaJy5yZWNvcmRzLnYxLlJlYnVpbGRNb2RlbExvb2t1cHNSZXNwb25zZRJgChFHZXRFbWJlZGRpbmdTdGF0cxIkLnJlY29yZHMudjEuR2V0RW1iZWRkaW5nU3RhdHNSZXF1ZXN0GiUucmVjb3Jkcy52MS5HZXRFbWJlZGRpbmdTdGF0c1Jlc3BvbnNlEmYKE0dldFJlY29yZEVtYmVkZGluZ3MSJi5yZWNvcmRzLnYxLkdldFJlY29yZEVtYmVkZGluZ3NSZXF1ZXN0GicucmVjb3Jkcy52MS5HZXRSZWNvcmRFbWJlZGRpbmdzUmVzcG9uc2USYwoSRmluZFNpbWlsYXJSZWNvcmRzEiUucmVjb3Jkcy52MS5GaW5kU2ltaWxhclJlY29yZHNSZXF1ZXN0GiYucmVjb3Jkcy52MS5GaW5kU2ltaWxhclJlY29yZHNSZXNwb25zZRJaCg9Xcml0ZUVtYmVkZGluZ3MSIi5yZWNvcmRzLnYxLldyaXRlRW1iZWRkaW5nc1JlcXVlc3QaIy5yZWNvcmRzLnYxLldyaXRlRW1iZWRkaW5nc1Jlc3BvbnNlEl0KEERlbGV0ZUVtYmVkZGluZ3MSIy5yZWNvcmRzLnYxLkRlbGV0ZUVtYmVkZGluZ3NSZXF1ZXN0GiQucmVjb3Jkcy52MS5EZWxldGVFbWJlZGRpbmdzUmVzcG9uc2USXQoQU2VhcmNoRW1iZWRkaW5ncxIjLnJlY29yZHMudjEuU2VhcmNoRW1iZWRkaW5nc1JlcXVlc3QaJC5yZWNvcmRzLnYxLlNlYXJjaEVtYmVkZGluZ3NSZXNwb25zZRJ1ChhFbnF1ZXVlR2VuZXJhdGVFbWJlZGRpbmcSKy5yZWNvcmRzLnYxLkVucXVldWVHZW5lcmF0ZUVtYmVkZGluZ1JlcXVlc3QaLC5yZWNvcmRzLnYxLkVucXVldWVHZW5lcmF0ZUVtYmVkZGluZ1Jlc3BvbnNlQjtaOWdpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9yZWNvcmRzL3YxO3JlY29yZHN2MWIGcHJvdG8z", [file_google_protobuf_struct, file_google_protobuf_timestamp, file_expressions_v1_expressions]);
13
+ fileDesc("ChhyZWNvcmRzL3YxL3JlY29yZHMucHJvdG8SCnJlY29yZHMudjEihA0KBlJlY29yZBIKCgJpZBgBIAEoCRIRCgltb2RlbF9rZXkYAiABKAkSGAoLbmF0dXJhbF9rZXkYAyABKAlIAIgBARIWCglwYXJlbnRfaWQYBCABKAlIAYgBARIrCgtyZWNvcmRfdHlwZRgFIAEoDjIWLnJlY29yZHMudjEuUmVjb3JkVHlwZRIlCgRkYXRhGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIuCghtZXRhZGF0YRgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIYCgtjdXN0b21lcl9pZBgIIAEoCUgDiAEBEhEKCXRlbmFudF9pZBgKIAEoCRISCgpwcm9qZWN0X2lkGAsgASgJEhcKCmNyZWF0ZWRfYnkYFCABKAlIBIgBARIXCgp1cGRhdGVkX2J5GBUgASgJSAWIAQESLgoKY3JlYXRlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgfIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoOdmVyc2lvbl9udW1iZXIYKCABKAVIBogBARIZCgxjb250ZW50X2hhc2gYKSABKAlIB4gBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YKiABKAlICIgBARIbCg5wdWJsaXNoX3N0YXR1cxgrIAEoCUgJiAEBEj0KFHNjaGVkdWxlZF9wdWJsaXNoX2F0GCwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgKiAEBEj8KFnNjaGVkdWxlZF91bnB1Ymxpc2hfYXQYLSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAuIAQESGAoLdmFyaWFudF9rZXkYMiABKAlIDIgBARIZCgx2YXJpYW50X25hbWUYMyABKAlIDYgBARIgChN2YXJpYW50X2Rlc2NyaXB0aW9uGDQgASgJSA6IAQESFwoKY2F0YWxvZ19pZBg1IAEoCUgPiAEBEhUKCHByaW9yaXR5GDYgASgFSBCIAQESPAoPdGFyZ2V0aW5nX3J1bGVzGDcgASgLMh4uZXhwcmVzc2lvbnMudjEuUnVsZUV4cHJlc3Npb25IEYgBARIXCgppc19kZWZhdWx0GDggASgISBKIAQESHwoSY3VycmVudF92ZXJzaW9uX2lkGDwgASgJSBOIAQESIQoUcHVibGlzaGVkX3ZlcnNpb25faWQYPSABKAlIFIgBARIlChhwdWJsaXNoZWRfdmVyc2lvbl9udW1iZXIYPiABKAVIFYgBARI1CgxwdWJsaXNoZWRfYXQYPyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSBaIAQESGQoMcHVibGlzaGVkX2J5GEAgASgJSBeIAQESEwoLY2FuX3B1Ymxpc2gYQSABKAgSFQoNY2FuX3VucHVibGlzaBhCIAEoCBIfChdoYXNfdW5wdWJsaXNoZWRfY2hhbmdlcxhDIAEoCBIdChBtb2RlbF92ZXJzaW9uX2lkGEYgASgJSBiIAQFCDgoMX25hdHVyYWxfa2V5QgwKCl9wYXJlbnRfaWRCCwoJX21ldGFkYXRhQg4KDF9jdXN0b21lcl9pZEINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieUIRCg9fdmVyc2lvbl9udW1iZXJCDwoNX2NvbnRlbnRfaGFzaEIVChNfY2hhbmdlX2Rlc2NyaXB0aW9uQhEKD19wdWJsaXNoX3N0YXR1c0IXChVfc2NoZWR1bGVkX3B1Ymxpc2hfYXRCGQoXX3NjaGVkdWxlZF91bnB1Ymxpc2hfYXRCDgoMX3ZhcmlhbnRfa2V5Qg8KDV92YXJpYW50X25hbWVCFgoUX3ZhcmlhbnRfZGVzY3JpcHRpb25CDQoLX2NhdGFsb2dfaWRCCwoJX3ByaW9yaXR5QhIKEF90YXJnZXRpbmdfcnVsZXNCDQoLX2lzX2RlZmF1bHRCFQoTX2N1cnJlbnRfdmVyc2lvbl9pZEIXChVfcHVibGlzaGVkX3ZlcnNpb25faWRCGwoZX3B1Ymxpc2hlZF92ZXJzaW9uX251bWJlckIPCg1fcHVibGlzaGVkX2F0Qg8KDV9wdWJsaXNoZWRfYnlCEwoRX21vZGVsX3ZlcnNpb25faWQi9QEKD1B1Ymxpc2hTY2hlZHVsZRISCgp2ZXJzaW9uX2lkGAEgASgJEi4KCnB1Ymxpc2hfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKDHVucHVibGlzaF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIuCgpjcmVhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCgpjcmVhdGVkX2J5GAUgASgJSAGIAQFCDwoNX3VucHVibGlzaF9hdEINCgtfY3JlYXRlZF9ieSIuCglTb3J0RmllbGQSDQoFZmllbGQYASABKAkSEgoKZGVzY2VuZGluZxgCIAEoCCKFAgoOQmF0Y2hPcGVyYXRpb24SLAoEdHlwZRgBIAEoDjIeLnJlY29yZHMudjEuQmF0Y2hPcGVyYXRpb25UeXBlEg8KAmlkGAIgASgJSACIAQESFgoJbW9kZWxfa2V5GAMgASgJSAGIAQESGAoLbmF0dXJhbF9rZXkYBCABKAlIAogBARIqCgRkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBEhgKC2N1c3RvbWVyX2lkGAYgASgJSASIAQFCBQoDX2lkQgwKCl9tb2RlbF9rZXlCDgoMX25hdHVyYWxfa2V5QgcKBV9kYXRhQg4KDF9jdXN0b21lcl9pZCKIAQoUQmF0Y2hPcGVyYXRpb25SZXN1bHQSDQoFaW5kZXgYASABKAUSDwoHc3VjY2VzcxgCIAEoCBInCgZyZWNvcmQYAyABKAsyEi5yZWNvcmRzLnYxLlJlY29yZEgAiAEBEhIKBWVycm9yGAQgASgJSAGIAQFCCQoHX3JlY29yZEIICgZfZXJyb3IimAIKE0NyZWF0ZVJlY29yZFJlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJEhgKC25hdHVyYWxfa2V5GAIgASgJSACIAQESJQoEZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSGAoLY3VzdG9tZXJfaWQYBCABKAlIAYgBARIuCghtZXRhZGF0YRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIfChJjaGFuZ2VfZGVzY3JpcHRpb24YBiABKAlIA4gBAUIOCgxfbmF0dXJhbF9rZXlCDgoMX2N1c3RvbWVyX2lkQgsKCV9tZXRhZGF0YUIVChNfY2hhbmdlX2Rlc2NyaXB0aW9uIqYBChRDcmVhdGVSZWNvcmRSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZBIoCgd2YXJpYW50GAIgASgLMhIucmVjb3Jkcy52MS5SZWNvcmRIAIgBARIoCgd2ZXJzaW9uGAMgASgLMhIucmVjb3Jkcy52MS5SZWNvcmRIAYgBAUIKCghfdmFyaWFudEIKCghfdmVyc2lvbiIeChBHZXRSZWNvcmRSZXF1ZXN0EgoKAmlkGAEgASgJIjcKEUdldFJlY29yZFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIj8KFUdldFJlY29yZEJ5S2V5UmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSEwoLbmF0dXJhbF9rZXkYAiABKAkiPAoWR2V0UmVjb3JkQnlLZXlSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCJCChlHZXRSZWNvcmRCeUtleU9ySWRSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCRISCgppZGVudGlmaWVyGAIgASgJIkAKGkdldFJlY29yZEJ5S2V5T3JJZFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkItYCChJMaXN0UmVjb3Jkc1JlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJEiMKBHNvcnQYAiADKAsyFS5yZWNvcmRzLnYxLlNvcnRGaWVsZBIYCgtjdXN0b21lcl9pZBgDIAEoCUgAiAEBEhMKBnNlYXJjaBgEIAEoCUgBiAEBEg8KB3ByZXZpZXcYBSABKAgSKwoFd2hlcmUYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQESEgoFYWZ0ZXIYByABKAlIA4gBARITCgZiZWZvcmUYCCABKAlIBIgBARISCgVmaXJzdBgJIAEoBUgFiAEBEhEKBGxhc3QYCiABKAVIBogBAUIOCgxfY3VzdG9tZXJfaWRCCQoHX3NlYXJjaEIICgZfd2hlcmVCCAoGX2FmdGVyQgkKB19iZWZvcmVCCAoGX2ZpcnN0QgcKBV9sYXN0IpYBChNMaXN0UmVjb3Jkc1Jlc3BvbnNlEiMKB3JlY29yZHMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZBINCgV0b3RhbBgCIAEoBRIsCglwYWdlX2luZm8YAyABKAsyFC5yZWNvcmRzLnYxLlBhZ2VJbmZvSACIAQESDwoHY3Vyc29ycxgEIAMoCUIMCgpfcGFnZV9pbmZvIpABCghQYWdlSW5mbxIVCg1oYXNfbmV4dF9wYWdlGAEgASgIEhkKEWhhc19wcmV2aW91c19wYWdlGAIgASgIEhkKDHN0YXJ0X2N1cnNvchgDIAEoCUgAiAEBEhcKCmVuZF9jdXJzb3IYBCABKAlIAYgBAUIPCg1fc3RhcnRfY3Vyc29yQg0KC19lbmRfY3Vyc29yIpsCChNVcGRhdGVSZWNvcmRSZXF1ZXN0EgoKAmlkGAEgASgJEicKBnVwZGF0ZRgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSGAoLbmF0dXJhbF9rZXkYAyABKAlIAIgBARIYCgt2YXJpYW50X2tleRgEIAEoCUgBiAEBEh8KEmNoYW5nZV9kZXNjcmlwdGlvbhgFIAEoCUgCiAEBEjIKDHJlcGxhY2VfZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBAUIOCgxfbmF0dXJhbF9rZXlCDgoMX3ZhcmlhbnRfa2V5QhUKE19jaGFuZ2VfZGVzY3JpcHRpb25CDwoNX3JlcGxhY2VfZGF0YSI6ChRVcGRhdGVSZWNvcmRSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZCIhChNEZWxldGVSZWNvcmRSZXF1ZXN0EgoKAmlkGAEgASgJIicKFERlbGV0ZVJlY29yZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgipwEKE1Vwc2VydFJlY29yZFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEQoJbW9kZWxfa2V5GAMgASgJEhMKC25hdHVyYWxfa2V5GAQgASgJEiUKBGRhdGEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhoKEmNoYW5nZV9kZXNjcmlwdGlvbhgGIAEoCSJLChRVcHNlcnRSZWNvcmRSZXNwb25zZRIiCgZyZWNvcmQYASABKAsyEi5yZWNvcmRzLnYxLlJlY29yZBIPCgdjcmVhdGVkGAIgASgIIk4KHEJhdGNoUmVjb3JkT3BlcmF0aW9uc1JlcXVlc3QSLgoKb3BlcmF0aW9ucxgBIAMoCzIaLnJlY29yZHMudjEuQmF0Y2hPcGVyYXRpb24iUgodQmF0Y2hSZWNvcmRPcGVyYXRpb25zUmVzcG9uc2USMQoHcmVzdWx0cxgBIAMoCzIgLnJlY29yZHMudjEuQmF0Y2hPcGVyYXRpb25SZXN1bHQinQEKGEJ1bGtVcGRhdGVSZWNvcmRzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSKwoFd2hlcmUYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESLAoGdXBkYXRlGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBQggKBl93aGVyZUIJCgdfdXBkYXRlIjcKGUJ1bGtVcGRhdGVSZWNvcmRzUmVzcG9uc2USDQoFY291bnQYASABKAUSCwoDaWRzGAIgAygJIjIKHUJhY2tmaWxsUXVlcnlhYmxlSW5kZXhSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCSI5Ch5CYWNrZmlsbFF1ZXJ5YWJsZUluZGV4UmVzcG9uc2USFwoPcmVjb3Jkc19pbmRleGVkGAEgASgFIjAKG0JhY2tmaWxsTW9kZWxJbmRleGVzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkiYQocQmFja2ZpbGxNb2RlbEluZGV4ZXNSZXNwb25zZRIeChZsb29rdXBzX3JlY29yZHNfd2Fsa2VkGAEgASgFEiEKGXF1ZXJ5YWJsZV9yZWNvcmRzX2luZGV4ZWQYAiABKAUiVgoWRHVwbGljYXRlUmVjb3JkUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9uZXdfbmF0dXJhbF9rZXkYAiABKAlIAIgBAUISChBfbmV3X25hdHVyYWxfa2V5Ij0KF0R1cGxpY2F0ZVJlY29yZFJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIlAKG0R1cGxpY2F0ZVJlY29yZHNCdWxrUmVxdWVzdBILCgNpZHMYASADKAkSFgoJbW9kZWxfa2V5GAIgASgJSACIAQFCDAoKX21vZGVsX2tleSJDChxEdXBsaWNhdGVSZWNvcmRzQnVsa1Jlc3BvbnNlEiMKB3JlY29yZHMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZCIrChVQdWJsaXNoVmVyc2lvblJlcXVlc3QSEgoKdmVyc2lvbl9pZBgBIAEoCSI8ChZQdWJsaXNoVmVyc2lvblJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIisKFlVucHVibGlzaFJlY29yZFJlcXVlc3QSEQoJcmVjb3JkX2lkGAEgASgJIioKF1VucHVibGlzaFJlY29yZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiLAoWUmV2ZXJ0VG9WZXJzaW9uUmVxdWVzdBISCgp2ZXJzaW9uX2lkGAEgASgJIj0KF1JldmVydFRvVmVyc2lvblJlc3BvbnNlEiIKBnJlY29yZBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIk0KGUxpc3RSZWNvcmRWZXJzaW9uc1JlcXVlc3QSEQoJcGFyZW50X2lkGAEgASgJEg0KBWxpbWl0GAIgASgFEg4KBm9mZnNldBgDIAEoBSJRChpMaXN0UmVjb3JkVmVyc2lvbnNSZXNwb25zZRIkCgh2ZXJzaW9ucxgBIAMoCzISLnJlY29yZHMudjEuUmVjb3JkEg0KBXRvdGFsGAIgASgFImUKFENyZWF0ZVZhcmlhbnRSZXF1ZXN0EhEKCXJlY29yZF9pZBgBIAEoCRITCgt2YXJpYW50X2tleRgCIAEoCRIlCgRkYXRhGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCI8ChVDcmVhdGVWYXJpYW50UmVzcG9uc2USIwoHdmFyaWFudBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIpoBChRVcGRhdGVWYXJpYW50UmVxdWVzdBISCgp2YXJpYW50X2lkGAEgASgJEiUKBGRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjQKDm1ldGFkYXRhX3BhdGNoGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQhEKD19tZXRhZGF0YV9wYXRjaCI8ChVVcGRhdGVWYXJpYW50UmVzcG9uc2USIwoHdmFyaWFudBgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkIioKFERlbGV0ZVZhcmlhbnRSZXF1ZXN0EhIKCnZhcmlhbnRfaWQYASABKAkiKAoVRGVsZXRlVmFyaWFudFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiQQoYU2V0RGVmYXVsdFZhcmlhbnRSZXF1ZXN0EhEKCXJlY29yZF9pZBgBIAEoCRISCgp2YXJpYW50X2lkGAIgASgJIj8KGVNldERlZmF1bHRWYXJpYW50UmVzcG9uc2USIgoGcmVjb3JkGAEgASgLMhIucmVjb3Jkcy52MS5SZWNvcmQiTQoZTGlzdFJlY29yZFZhcmlhbnRzUmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkSDQoFbGltaXQYAiABKAUSDgoGb2Zmc2V0GAMgASgFIlEKGkxpc3RSZWNvcmRWYXJpYW50c1Jlc3BvbnNlEiQKCHZhcmlhbnRzGAEgAygLMhIucmVjb3Jkcy52MS5SZWNvcmQSDQoFdG90YWwYAiABKAUiqgEKHFNjaGVkdWxlUmVjb3JkUHVibGlzaFJlcXVlc3QSEgoKdmVyc2lvbl9pZBgBIAEoCRIuCgpwdWJsaXNoX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI1Cgx1bnB1Ymxpc2hfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCDwoNX3VucHVibGlzaF9hdCJECh1TY2hlZHVsZVJlY29yZFB1Ymxpc2hSZXNwb25zZRIjCgd2ZXJzaW9uGAEgASgLMhIucmVjb3Jkcy52MS5SZWNvcmQiOQojQ2FuY2VsU2NoZWR1bGVkUmVjb3JkUHVibGlzaFJlcXVlc3QSEgoKdmVyc2lvbl9pZBgBIAEoCSJLCiRDYW5jZWxTY2hlZHVsZWRSZWNvcmRQdWJsaXNoUmVzcG9uc2USIwoHdmVyc2lvbhgBIAEoCzISLnJlY29yZHMudjEuUmVjb3JkItABCh1MaXN0U2NoZWR1bGVkUHVibGlzaGVzUmVxdWVzdBItCgRmcm9tGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEisKAnRvGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBEhYKCW1vZGVsX2tleRgDIAEoCUgCiAEBEg0KBWxpbWl0GAQgASgFEg4KBm9mZnNldBgFIAEoBUIHCgVfZnJvbUIFCgNfdG9CDAoKX21vZGVsX2tleSJVCh5MaXN0U2NoZWR1bGVkUHVibGlzaGVzUmVzcG9uc2USJAoIdmVyc2lvbnMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZBINCgV0b3RhbBgCIAEoBSIwChpHZXRTY2hlZHVsZWRQdWJsaXNoUmVxdWVzdBISCgp2ZXJzaW9uX2lkGAEgASgJIkwKG0dldFNjaGVkdWxlZFB1Ymxpc2hSZXNwb25zZRItCghzY2hlZHVsZRgBIAEoCzIbLnJlY29yZHMudjEuUHVibGlzaFNjaGVkdWxlIpkBChhMaXN0RHJhZnRWZXJzaW9uc1JlcXVlc3QSFgoJbW9kZWxfa2V5GAEgASgJSACIAQESEwoGc2VhcmNoGAIgASgJSAGIAQESDQoFbGltaXQYAyABKAUSDgoGb2Zmc2V0GAQgASgFEhgKEGRlZHVwZV9ieV9wYXJlbnQYBSABKAhCDAoKX21vZGVsX2tleUIJCgdfc2VhcmNoIlAKGUxpc3REcmFmdFZlcnNpb25zUmVzcG9uc2USJAoIdmVyc2lvbnMYASADKAsyEi5yZWNvcmRzLnYxLlJlY29yZBINCgV0b3RhbBgCIAEoBSIyChtCYXRjaFB1Ymxpc2hWZXJzaW9uc1JlcXVlc3QSEwoLdmVyc2lvbl9pZHMYASADKAkiXAocQmF0Y2hQdWJsaXNoVmVyc2lvbnNSZXNwb25zZRIjCgdyZWNvcmRzGAEgAygLMhIucmVjb3Jkcy52MS5SZWNvcmQSFwoPcHVibGlzaGVkX2NvdW50GAIgASgFIrkBChpCYXRjaFJlc29sdmVSZWNvcmRzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSEgoKcmVjb3JkX2lkcxgCIAMoCRIYCgtjdXN0b21lcl9pZBgDIAEoCUgAiAEBEi0KB2NvbnRleHQYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAGIAQESDwoHcHJldmlldxgFIAEoCEIOCgxfY3VzdG9tZXJfaWRCCgoIX2NvbnRleHQiSgobQmF0Y2hSZXNvbHZlUmVjb3Jkc1Jlc3BvbnNlEisKB3JlY29yZHMYASADKAsyGi5yZWNvcmRzLnYxLlJlc29sdmVkUmVjb3JkIs0CCg5SZXNvbHZlZFJlY29yZBIRCglyZWNvcmRfaWQYASABKAkSEQoJbW9kZWxfa2V5GAIgASgJEhgKC25hdHVyYWxfa2V5GAMgASgJSACIAQESJQoEZGF0YRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIbWV0YWRhdGEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhcKCnZhcmlhbnRfaWQYBiABKAlIAYgBARIRCgloYXNfZHJhZnQYCCABKAgSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCDgoMX25hdHVyYWxfa2V5Qg0KC192YXJpYW50X2lkIi8KGUxvb2t1cFJlY29yZE1vZGVsc1JlcXVlc3QSEgoKcmVjb3JkX2lkcxgBIAMoCSI4ChBSZWNvcmRNb2RlbEVudHJ5EhEKCXJlY29yZF9pZBgBIAEoCRIRCgltb2RlbF9rZXkYAiABKAkiSwoaTG9va3VwUmVjb3JkTW9kZWxzUmVzcG9uc2USLQoHZW50cmllcxgBIAMoCzIcLnJlY29yZHMudjEuUmVjb3JkTW9kZWxFbnRyeSJHChNHbG9iYWxTZWFyY2hSZXF1ZXN0Eg0KBXF1ZXJ5GAEgASgJEhIKCm1vZGVsX2tleXMYAiADKAkSDQoFbGltaXQYCiABKAUikQEKEFNlYXJjaFJlc3VsdEl0ZW0SCgoCaWQYASABKAkSEQoJbW9kZWxfa2V5GAIgASgJEhgKC25hdHVyYWxfa2V5GAMgASgJSACIAQESJQoEZGF0YRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDQoFc2NvcmUYBSABKAFCDgoMX25hdHVyYWxfa2V5IlQKFEdsb2JhbFNlYXJjaFJlc3BvbnNlEi0KB3JlY29yZHMYASADKAsyHC5yZWNvcmRzLnYxLlNlYXJjaFJlc3VsdEl0ZW0SDQoFdG90YWwYAiABKAUioQEKDkVtYmVkZGluZ1N0YXRzEhEKCW1vZGVsX2tleRgBIAEoCRIVCg10b3RhbF9yZWNvcmRzGAIgASgFEhgKEGVtYmVkZGVkX3JlY29yZHMYAyABKAUSFwoPcGVuZGluZ19yZWNvcmRzGAQgASgFEh0KEGxhc3RfZW1iZWRkZWRfYXQYBSABKAlIAIgBAUITChFfbGFzdF9lbWJlZGRlZF9hdCJ1Cg9SZWNvcmRFbWJlZGRpbmcSEQoJcmVjb3JkX2lkGAEgASgJEhEKCW1vZGVsX2tleRgCIAEoCRISCgpkaW1lbnNpb25zGAMgASgFEhgKC2VtYmVkZGVkX2F0GAQgASgJSACIAQFCDgoMX2VtYmVkZGVkX2F0IpMBCg1TaW1pbGFyUmVjb3JkEgoKAmlkGAEgASgJEhEKCW1vZGVsX2tleRgCIAEoCRIYCgtuYXR1cmFsX2tleRgDIAEoCUgAiAEBEiUKBGRhdGEYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKCnNpbWlsYXJpdHkYBSABKAFCDgoMX25hdHVyYWxfa2V5IkAKGEdldEVtYmVkZGluZ1N0YXRzUmVxdWVzdBIWCgltb2RlbF9rZXkYASABKAlIAIgBAUIMCgpfbW9kZWxfa2V5IkYKGUdldEVtYmVkZGluZ1N0YXRzUmVzcG9uc2USKQoFc3RhdHMYASADKAsyGi5yZWNvcmRzLnYxLkVtYmVkZGluZ1N0YXRzIi8KGkdldFJlY29yZEVtYmVkZGluZ3NSZXF1ZXN0EhEKCXJlY29yZF9pZBgBIAEoCSJOChtHZXRSZWNvcmRFbWJlZGRpbmdzUmVzcG9uc2USLwoKZW1iZWRkaW5ncxgBIAMoCzIbLnJlY29yZHMudjEuUmVjb3JkRW1iZWRkaW5nImMKGUZpbmRTaW1pbGFyUmVjb3Jkc1JlcXVlc3QSEQoJcmVjb3JkX2lkGAEgASgJEhYKCW1vZGVsX2tleRgCIAEoCUgAiAEBEg0KBWxpbWl0GAogASgFQgwKCl9tb2RlbF9rZXkiSAoaRmluZFNpbWlsYXJSZWNvcmRzUmVzcG9uc2USKgoHcmVjb3JkcxgBIAMoCzIZLnJlY29yZHMudjEuU2ltaWxhclJlY29yZCKbAQoWV3JpdGVFbWJlZGRpbmdzUmVxdWVzdBIRCglyZWNvcmRfaWQYASABKAkSDgoGdmVjdG9yGAIgAygCEhIKCmRpbWVuc2lvbnMYAyABKAUSFQoIcHJvdmlkZXIYBCABKAlIAIgBARIXCgptb2RlbF9uYW1lGAUgASgJSAGIAQFCCwoJX3Byb3ZpZGVyQg0KC19tb2RlbF9uYW1lIioKF1dyaXRlRW1iZWRkaW5nc1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiLAoXRGVsZXRlRW1iZWRkaW5nc1JlcXVlc3QSEQoJcmVjb3JkX2lkGAEgASgJIisKGERlbGV0ZUVtYmVkZGluZ3NSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIImcKH0VucXVldWVHZW5lcmF0ZUVtYmVkZGluZ1JlcXVlc3QSEQoJcmVjb3JkX2lkGAEgASgJEhEKCW1vZGVsX2tleRgCIAEoCRITCgZzb3VyY2UYAyABKAlIAIgBAUIJCgdfc291cmNlIjQKIEVucXVldWVHZW5lcmF0ZUVtYmVkZGluZ1Jlc3BvbnNlEhAKCGVucXVldWVkGAEgASgIImQKF1NlYXJjaEVtYmVkZGluZ3NSZXF1ZXN0EhQKDHF1ZXJ5X3ZlY3RvchgBIAMoAhIWCgltb2RlbF9rZXkYAiABKAlIAIgBARINCgVsaW1pdBgKIAEoBUIMCgpfbW9kZWxfa2V5IkYKGFNlYXJjaEVtYmVkZGluZ3NSZXNwb25zZRIqCgdyZXN1bHRzGAEgAygLMhkucmVjb3Jkcy52MS5TaW1pbGFyUmVjb3JkIp8CChNMb29rdXBSZWNvcmRSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCRITCgtsb29rdXBfbmFtZRgCIAEoCRIQCghrZXlfaGFzaBgDIAEoDBIPCgdjaGFubmVsGAQgASgJEhcKCnZhcmlhbnRfaWQYBSABKAlIAIgBARITCgZsb2NhbGUYBiABKAlIAYgBARIYCgtjdXN0b21lcl9pZBgHIAEoCUgCiAEBEjYKEGN1c3RvbWVyX2NvbnRleHQYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAOIAQFCDQoLX3ZhcmlhbnRfaWRCCQoHX2xvY2FsZUIOCgxfY3VzdG9tZXJfaWRCEwoRX2N1c3RvbWVyX2NvbnRleHQiPAoUTG9va3VwUmVjb3JkUmVzcG9uc2USFgoJcmVjb3JkX2lkGAEgASgJSACIAQFCDAoKX3JlY29yZF9pZCLpAQoeQ2hlY2tMb29rdXBBdmFpbGFiaWxpdHlSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCRITCgtsb29rdXBfbmFtZRgCIAEoCRIQCghrZXlfaGFzaBgDIAEoDBIPCgdjaGFubmVsGAQgASgJEhcKCnZhcmlhbnRfaWQYBSABKAlIAIgBARITCgZsb2NhbGUYBiABKAlIAYgBARIeChFleGNsdWRlX3JlY29yZF9pZBgHIAEoCUgCiAEBQg0KC192YXJpYW50X2lkQgkKB19sb2NhbGVCFAoSX2V4Y2x1ZGVfcmVjb3JkX2lkIjQKH0NoZWNrTG9va3VwQXZhaWxhYmlsaXR5UmVzcG9uc2USEQoJYXZhaWxhYmxlGAEgASgIIpcBChRMb29rdXBDb25mbGljdERldGFpbBIRCgltb2RlbF9rZXkYASABKAkSEwoLbG9va3VwX25hbWUYAiABKAkSDwoHY2hhbm5lbBgDIAEoCRIXCgp2YXJpYW50X2lkGAQgASgJSACIAQESEwoGbG9jYWxlGAUgASgJSAGIAQFCDQoLX3ZhcmlhbnRfaWRCCQoHX2xvY2FsZSJqChpMaXN0TG9va3VwQ29uZmxpY3RzUmVxdWVzdBIRCgltb2RlbF9rZXkYASABKAkSGAoLbG9va3VwX25hbWUYAiABKAlIAIgBARIPCgdjaGFubmVsGAMgASgJQg4KDF9sb29rdXBfbmFtZSJIChtMaXN0TG9va3VwQ29uZmxpY3RzUmVzcG9uc2USKQoGZ3JvdXBzGAEgAygLMhkucmVjb3Jkcy52MS5Db25mbGljdEdyb3VwIpsBCg1Db25mbGljdEdyb3VwEhMKC2VuY29kZWRfa2V5GAEgASgJEg8KB2NoYW5uZWwYAiABKAkSFwoKdmFyaWFudF9pZBgDIAEoCUgAiAEBEhgKC2N1c3RvbWVyX2lkGAQgASgJSAGIAQESEgoKcmVjb3JkX2lkcxgFIAMoCUINCgtfdmFyaWFudF9pZEIOCgxfY3VzdG9tZXJfaWQiLwoaUmVidWlsZE1vZGVsTG9va3Vwc1JlcXVlc3QSEQoJbW9kZWxfa2V5GAEgASgJIjUKG1JlYnVpbGRNb2RlbExvb2t1cHNSZXNwb25zZRIWCg5yZWNvcmRzX3dhbGtlZBgBIAEoBSpzCgpSZWNvcmRUeXBlEhsKF1JFQ09SRF9UWVBFX1VOU1BFQ0lGSUVEEAASFgoSUkVDT1JEX1RZUEVfUkVDT1JEEAESFwoTUkVDT1JEX1RZUEVfVkFSSUFOVBACEhcKE1JFQ09SRF9UWVBFX1ZFUlNJT04QAyqdAQoSQmF0Y2hPcGVyYXRpb25UeXBlEiQKIEJBVENIX09QRVJBVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAASHwobQkFUQ0hfT1BFUkFUSU9OX1RZUEVfQ1JFQVRFEAESHwobQkFUQ0hfT1BFUkFUSU9OX1RZUEVfVVBEQVRFEAISHwobQkFUQ0hfT1BFUkFUSU9OX1RZUEVfREVMRVRFEAMy9SAKDlJlY29yZHNTZXJ2aWNlElEKDENyZWF0ZVJlY29yZBIfLnJlY29yZHMudjEuQ3JlYXRlUmVjb3JkUmVxdWVzdBogLnJlY29yZHMudjEuQ3JlYXRlUmVjb3JkUmVzcG9uc2USSAoJR2V0UmVjb3JkEhwucmVjb3Jkcy52MS5HZXRSZWNvcmRSZXF1ZXN0Gh0ucmVjb3Jkcy52MS5HZXRSZWNvcmRSZXNwb25zZRJXCg5HZXRSZWNvcmRCeUtleRIhLnJlY29yZHMudjEuR2V0UmVjb3JkQnlLZXlSZXF1ZXN0GiIucmVjb3Jkcy52MS5HZXRSZWNvcmRCeUtleVJlc3BvbnNlEmMKEkdldFJlY29yZEJ5S2V5T3JJZBIlLnJlY29yZHMudjEuR2V0UmVjb3JkQnlLZXlPcklkUmVxdWVzdBomLnJlY29yZHMudjEuR2V0UmVjb3JkQnlLZXlPcklkUmVzcG9uc2USTgoLTGlzdFJlY29yZHMSHi5yZWNvcmRzLnYxLkxpc3RSZWNvcmRzUmVxdWVzdBofLnJlY29yZHMudjEuTGlzdFJlY29yZHNSZXNwb25zZRJRCgxVcGRhdGVSZWNvcmQSHy5yZWNvcmRzLnYxLlVwZGF0ZVJlY29yZFJlcXVlc3QaIC5yZWNvcmRzLnYxLlVwZGF0ZVJlY29yZFJlc3BvbnNlElEKDFVwc2VydFJlY29yZBIfLnJlY29yZHMudjEuVXBzZXJ0UmVjb3JkUmVxdWVzdBogLnJlY29yZHMudjEuVXBzZXJ0UmVjb3JkUmVzcG9uc2USUQoMRGVsZXRlUmVjb3JkEh8ucmVjb3Jkcy52MS5EZWxldGVSZWNvcmRSZXF1ZXN0GiAucmVjb3Jkcy52MS5EZWxldGVSZWNvcmRSZXNwb25zZRJsChVCYXRjaFJlY29yZE9wZXJhdGlvbnMSKC5yZWNvcmRzLnYxLkJhdGNoUmVjb3JkT3BlcmF0aW9uc1JlcXVlc3QaKS5yZWNvcmRzLnYxLkJhdGNoUmVjb3JkT3BlcmF0aW9uc1Jlc3BvbnNlEmAKEUJ1bGtVcGRhdGVSZWNvcmRzEiQucmVjb3Jkcy52MS5CdWxrVXBkYXRlUmVjb3Jkc1JlcXVlc3QaJS5yZWNvcmRzLnYxLkJ1bGtVcGRhdGVSZWNvcmRzUmVzcG9uc2USbwoWQmFja2ZpbGxRdWVyeWFibGVJbmRleBIpLnJlY29yZHMudjEuQmFja2ZpbGxRdWVyeWFibGVJbmRleFJlcXVlc3QaKi5yZWNvcmRzLnYxLkJhY2tmaWxsUXVlcnlhYmxlSW5kZXhSZXNwb25zZRJpChRCYWNrZmlsbE1vZGVsSW5kZXhlcxInLnJlY29yZHMudjEuQmFja2ZpbGxNb2RlbEluZGV4ZXNSZXF1ZXN0GigucmVjb3Jkcy52MS5CYWNrZmlsbE1vZGVsSW5kZXhlc1Jlc3BvbnNlEloKD0R1cGxpY2F0ZVJlY29yZBIiLnJlY29yZHMudjEuRHVwbGljYXRlUmVjb3JkUmVxdWVzdBojLnJlY29yZHMudjEuRHVwbGljYXRlUmVjb3JkUmVzcG9uc2USaQoURHVwbGljYXRlUmVjb3Jkc0J1bGsSJy5yZWNvcmRzLnYxLkR1cGxpY2F0ZVJlY29yZHNCdWxrUmVxdWVzdBooLnJlY29yZHMudjEuRHVwbGljYXRlUmVjb3Jkc0J1bGtSZXNwb25zZRJXCg5QdWJsaXNoVmVyc2lvbhIhLnJlY29yZHMudjEuUHVibGlzaFZlcnNpb25SZXF1ZXN0GiIucmVjb3Jkcy52MS5QdWJsaXNoVmVyc2lvblJlc3BvbnNlEloKD1VucHVibGlzaFJlY29yZBIiLnJlY29yZHMudjEuVW5wdWJsaXNoUmVjb3JkUmVxdWVzdBojLnJlY29yZHMudjEuVW5wdWJsaXNoUmVjb3JkUmVzcG9uc2USWgoPUmV2ZXJ0VG9WZXJzaW9uEiIucmVjb3Jkcy52MS5SZXZlcnRUb1ZlcnNpb25SZXF1ZXN0GiMucmVjb3Jkcy52MS5SZXZlcnRUb1ZlcnNpb25SZXNwb25zZRJjChJMaXN0UmVjb3JkVmVyc2lvbnMSJS5yZWNvcmRzLnYxLkxpc3RSZWNvcmRWZXJzaW9uc1JlcXVlc3QaJi5yZWNvcmRzLnYxLkxpc3RSZWNvcmRWZXJzaW9uc1Jlc3BvbnNlElQKDUNyZWF0ZVZhcmlhbnQSIC5yZWNvcmRzLnYxLkNyZWF0ZVZhcmlhbnRSZXF1ZXN0GiEucmVjb3Jkcy52MS5DcmVhdGVWYXJpYW50UmVzcG9uc2USVAoNVXBkYXRlVmFyaWFudBIgLnJlY29yZHMudjEuVXBkYXRlVmFyaWFudFJlcXVlc3QaIS5yZWNvcmRzLnYxLlVwZGF0ZVZhcmlhbnRSZXNwb25zZRJUCg1EZWxldGVWYXJpYW50EiAucmVjb3Jkcy52MS5EZWxldGVWYXJpYW50UmVxdWVzdBohLnJlY29yZHMudjEuRGVsZXRlVmFyaWFudFJlc3BvbnNlEmAKEVNldERlZmF1bHRWYXJpYW50EiQucmVjb3Jkcy52MS5TZXREZWZhdWx0VmFyaWFudFJlcXVlc3QaJS5yZWNvcmRzLnYxLlNldERlZmF1bHRWYXJpYW50UmVzcG9uc2USYwoSTGlzdFJlY29yZFZhcmlhbnRzEiUucmVjb3Jkcy52MS5MaXN0UmVjb3JkVmFyaWFudHNSZXF1ZXN0GiYucmVjb3Jkcy52MS5MaXN0UmVjb3JkVmFyaWFudHNSZXNwb25zZRJsChVTY2hlZHVsZVJlY29yZFB1Ymxpc2gSKC5yZWNvcmRzLnYxLlNjaGVkdWxlUmVjb3JkUHVibGlzaFJlcXVlc3QaKS5yZWNvcmRzLnYxLlNjaGVkdWxlUmVjb3JkUHVibGlzaFJlc3BvbnNlEoEBChxDYW5jZWxTY2hlZHVsZWRSZWNvcmRQdWJsaXNoEi8ucmVjb3Jkcy52MS5DYW5jZWxTY2hlZHVsZWRSZWNvcmRQdWJsaXNoUmVxdWVzdBowLnJlY29yZHMudjEuQ2FuY2VsU2NoZWR1bGVkUmVjb3JkUHVibGlzaFJlc3BvbnNlEm8KFkxpc3RTY2hlZHVsZWRQdWJsaXNoZXMSKS5yZWNvcmRzLnYxLkxpc3RTY2hlZHVsZWRQdWJsaXNoZXNSZXF1ZXN0GioucmVjb3Jkcy52MS5MaXN0U2NoZWR1bGVkUHVibGlzaGVzUmVzcG9uc2USZgoTR2V0U2NoZWR1bGVkUHVibGlzaBImLnJlY29yZHMudjEuR2V0U2NoZWR1bGVkUHVibGlzaFJlcXVlc3QaJy5yZWNvcmRzLnYxLkdldFNjaGVkdWxlZFB1Ymxpc2hSZXNwb25zZRJgChFMaXN0RHJhZnRWZXJzaW9ucxIkLnJlY29yZHMudjEuTGlzdERyYWZ0VmVyc2lvbnNSZXF1ZXN0GiUucmVjb3Jkcy52MS5MaXN0RHJhZnRWZXJzaW9uc1Jlc3BvbnNlEmkKFEJhdGNoUHVibGlzaFZlcnNpb25zEicucmVjb3Jkcy52MS5CYXRjaFB1Ymxpc2hWZXJzaW9uc1JlcXVlc3QaKC5yZWNvcmRzLnYxLkJhdGNoUHVibGlzaFZlcnNpb25zUmVzcG9uc2USZgoTQmF0Y2hSZXNvbHZlUmVjb3JkcxImLnJlY29yZHMudjEuQmF0Y2hSZXNvbHZlUmVjb3Jkc1JlcXVlc3QaJy5yZWNvcmRzLnYxLkJhdGNoUmVzb2x2ZVJlY29yZHNSZXNwb25zZRJjChJMb29rdXBSZWNvcmRNb2RlbHMSJS5yZWNvcmRzLnYxLkxvb2t1cFJlY29yZE1vZGVsc1JlcXVlc3QaJi5yZWNvcmRzLnYxLkxvb2t1cFJlY29yZE1vZGVsc1Jlc3BvbnNlElEKDEdsb2JhbFNlYXJjaBIfLnJlY29yZHMudjEuR2xvYmFsU2VhcmNoUmVxdWVzdBogLnJlY29yZHMudjEuR2xvYmFsU2VhcmNoUmVzcG9uc2USUQoMTG9va3VwUmVjb3JkEh8ucmVjb3Jkcy52MS5Mb29rdXBSZWNvcmRSZXF1ZXN0GiAucmVjb3Jkcy52MS5Mb29rdXBSZWNvcmRSZXNwb25zZRJyChdDaGVja0xvb2t1cEF2YWlsYWJpbGl0eRIqLnJlY29yZHMudjEuQ2hlY2tMb29rdXBBdmFpbGFiaWxpdHlSZXF1ZXN0GisucmVjb3Jkcy52MS5DaGVja0xvb2t1cEF2YWlsYWJpbGl0eVJlc3BvbnNlEmYKE0xpc3RMb29rdXBDb25mbGljdHMSJi5yZWNvcmRzLnYxLkxpc3RMb29rdXBDb25mbGljdHNSZXF1ZXN0GicucmVjb3Jkcy52MS5MaXN0TG9va3VwQ29uZmxpY3RzUmVzcG9uc2USZgoTUmVidWlsZE1vZGVsTG9va3VwcxImLnJlY29yZHMudjEuUmVidWlsZE1vZGVsTG9va3Vwc1JlcXVlc3QaJy5yZWNvcmRzLnYxLlJlYnVpbGRNb2RlbExvb2t1cHNSZXNwb25zZRJgChFHZXRFbWJlZGRpbmdTdGF0cxIkLnJlY29yZHMudjEuR2V0RW1iZWRkaW5nU3RhdHNSZXF1ZXN0GiUucmVjb3Jkcy52MS5HZXRFbWJlZGRpbmdTdGF0c1Jlc3BvbnNlEmYKE0dldFJlY29yZEVtYmVkZGluZ3MSJi5yZWNvcmRzLnYxLkdldFJlY29yZEVtYmVkZGluZ3NSZXF1ZXN0GicucmVjb3Jkcy52MS5HZXRSZWNvcmRFbWJlZGRpbmdzUmVzcG9uc2USYwoSRmluZFNpbWlsYXJSZWNvcmRzEiUucmVjb3Jkcy52MS5GaW5kU2ltaWxhclJlY29yZHNSZXF1ZXN0GiYucmVjb3Jkcy52MS5GaW5kU2ltaWxhclJlY29yZHNSZXNwb25zZRJaCg9Xcml0ZUVtYmVkZGluZ3MSIi5yZWNvcmRzLnYxLldyaXRlRW1iZWRkaW5nc1JlcXVlc3QaIy5yZWNvcmRzLnYxLldyaXRlRW1iZWRkaW5nc1Jlc3BvbnNlEl0KEERlbGV0ZUVtYmVkZGluZ3MSIy5yZWNvcmRzLnYxLkRlbGV0ZUVtYmVkZGluZ3NSZXF1ZXN0GiQucmVjb3Jkcy52MS5EZWxldGVFbWJlZGRpbmdzUmVzcG9uc2USXQoQU2VhcmNoRW1iZWRkaW5ncxIjLnJlY29yZHMudjEuU2VhcmNoRW1iZWRkaW5nc1JlcXVlc3QaJC5yZWNvcmRzLnYxLlNlYXJjaEVtYmVkZGluZ3NSZXNwb25zZRJ1ChhFbnF1ZXVlR2VuZXJhdGVFbWJlZGRpbmcSKy5yZWNvcmRzLnYxLkVucXVldWVHZW5lcmF0ZUVtYmVkZGluZ1JlcXVlc3QaLC5yZWNvcmRzLnYxLkVucXVldWVHZW5lcmF0ZUVtYmVkZGluZ1Jlc3BvbnNlQjtaOWdpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9yZWNvcmRzL3YxO3JlY29yZHN2MWIGcHJvdG8z", [file_google_protobuf_struct, file_google_protobuf_timestamp, file_expressions_v1_expressions]);
14
14
 
15
15
  /**
16
16
  * Describes the message records.v1.Record.
@@ -250,495 +250,467 @@ export const DuplicateRecordsBulkRequestSchema = /*@__PURE__*/
250
250
  export const DuplicateRecordsBulkResponseSchema = /*@__PURE__*/
251
251
  messageDesc(file_records_v1_records, 33);
252
252
 
253
- /**
254
- * Describes the message records.v1.CreateVersionRequest.
255
- * Use `create(CreateVersionRequestSchema)` to create a new message.
256
- */
257
- export const CreateVersionRequestSchema = /*@__PURE__*/
258
- messageDesc(file_records_v1_records, 34);
259
-
260
- /**
261
- * Describes the message records.v1.CreateVersionResponse.
262
- * Use `create(CreateVersionResponseSchema)` to create a new message.
263
- */
264
- export const CreateVersionResponseSchema = /*@__PURE__*/
265
- messageDesc(file_records_v1_records, 35);
266
-
267
253
  /**
268
254
  * Describes the message records.v1.PublishVersionRequest.
269
255
  * Use `create(PublishVersionRequestSchema)` to create a new message.
270
256
  */
271
257
  export const PublishVersionRequestSchema = /*@__PURE__*/
272
- messageDesc(file_records_v1_records, 36);
258
+ messageDesc(file_records_v1_records, 34);
273
259
 
274
260
  /**
275
261
  * Describes the message records.v1.PublishVersionResponse.
276
262
  * Use `create(PublishVersionResponseSchema)` to create a new message.
277
263
  */
278
264
  export const PublishVersionResponseSchema = /*@__PURE__*/
279
- messageDesc(file_records_v1_records, 37);
265
+ messageDesc(file_records_v1_records, 35);
280
266
 
281
267
  /**
282
268
  * Describes the message records.v1.UnpublishRecordRequest.
283
269
  * Use `create(UnpublishRecordRequestSchema)` to create a new message.
284
270
  */
285
271
  export const UnpublishRecordRequestSchema = /*@__PURE__*/
286
- messageDesc(file_records_v1_records, 38);
272
+ messageDesc(file_records_v1_records, 36);
287
273
 
288
274
  /**
289
275
  * Describes the message records.v1.UnpublishRecordResponse.
290
276
  * Use `create(UnpublishRecordResponseSchema)` to create a new message.
291
277
  */
292
278
  export const UnpublishRecordResponseSchema = /*@__PURE__*/
293
- messageDesc(file_records_v1_records, 39);
279
+ messageDesc(file_records_v1_records, 37);
294
280
 
295
281
  /**
296
282
  * Describes the message records.v1.RevertToVersionRequest.
297
283
  * Use `create(RevertToVersionRequestSchema)` to create a new message.
298
284
  */
299
285
  export const RevertToVersionRequestSchema = /*@__PURE__*/
300
- messageDesc(file_records_v1_records, 40);
286
+ messageDesc(file_records_v1_records, 38);
301
287
 
302
288
  /**
303
289
  * Describes the message records.v1.RevertToVersionResponse.
304
290
  * Use `create(RevertToVersionResponseSchema)` to create a new message.
305
291
  */
306
292
  export const RevertToVersionResponseSchema = /*@__PURE__*/
307
- messageDesc(file_records_v1_records, 41);
293
+ messageDesc(file_records_v1_records, 39);
308
294
 
309
295
  /**
310
296
  * Describes the message records.v1.ListRecordVersionsRequest.
311
297
  * Use `create(ListRecordVersionsRequestSchema)` to create a new message.
312
298
  */
313
299
  export const ListRecordVersionsRequestSchema = /*@__PURE__*/
314
- messageDesc(file_records_v1_records, 42);
300
+ messageDesc(file_records_v1_records, 40);
315
301
 
316
302
  /**
317
303
  * Describes the message records.v1.ListRecordVersionsResponse.
318
304
  * Use `create(ListRecordVersionsResponseSchema)` to create a new message.
319
305
  */
320
306
  export const ListRecordVersionsResponseSchema = /*@__PURE__*/
321
- messageDesc(file_records_v1_records, 43);
307
+ messageDesc(file_records_v1_records, 41);
322
308
 
323
309
  /**
324
310
  * Describes the message records.v1.CreateVariantRequest.
325
311
  * Use `create(CreateVariantRequestSchema)` to create a new message.
326
312
  */
327
313
  export const CreateVariantRequestSchema = /*@__PURE__*/
328
- messageDesc(file_records_v1_records, 44);
314
+ messageDesc(file_records_v1_records, 42);
329
315
 
330
316
  /**
331
317
  * Describes the message records.v1.CreateVariantResponse.
332
318
  * Use `create(CreateVariantResponseSchema)` to create a new message.
333
319
  */
334
320
  export const CreateVariantResponseSchema = /*@__PURE__*/
335
- messageDesc(file_records_v1_records, 45);
321
+ messageDesc(file_records_v1_records, 43);
336
322
 
337
323
  /**
338
324
  * Describes the message records.v1.UpdateVariantRequest.
339
325
  * Use `create(UpdateVariantRequestSchema)` to create a new message.
340
326
  */
341
327
  export const UpdateVariantRequestSchema = /*@__PURE__*/
342
- messageDesc(file_records_v1_records, 46);
328
+ messageDesc(file_records_v1_records, 44);
343
329
 
344
330
  /**
345
331
  * Describes the message records.v1.UpdateVariantResponse.
346
332
  * Use `create(UpdateVariantResponseSchema)` to create a new message.
347
333
  */
348
334
  export const UpdateVariantResponseSchema = /*@__PURE__*/
349
- messageDesc(file_records_v1_records, 47);
335
+ messageDesc(file_records_v1_records, 45);
350
336
 
351
337
  /**
352
338
  * Describes the message records.v1.DeleteVariantRequest.
353
339
  * Use `create(DeleteVariantRequestSchema)` to create a new message.
354
340
  */
355
341
  export const DeleteVariantRequestSchema = /*@__PURE__*/
356
- messageDesc(file_records_v1_records, 48);
342
+ messageDesc(file_records_v1_records, 46);
357
343
 
358
344
  /**
359
345
  * Describes the message records.v1.DeleteVariantResponse.
360
346
  * Use `create(DeleteVariantResponseSchema)` to create a new message.
361
347
  */
362
348
  export const DeleteVariantResponseSchema = /*@__PURE__*/
363
- messageDesc(file_records_v1_records, 49);
349
+ messageDesc(file_records_v1_records, 47);
364
350
 
365
351
  /**
366
352
  * Describes the message records.v1.SetDefaultVariantRequest.
367
353
  * Use `create(SetDefaultVariantRequestSchema)` to create a new message.
368
354
  */
369
355
  export const SetDefaultVariantRequestSchema = /*@__PURE__*/
370
- messageDesc(file_records_v1_records, 50);
356
+ messageDesc(file_records_v1_records, 48);
371
357
 
372
358
  /**
373
359
  * Describes the message records.v1.SetDefaultVariantResponse.
374
360
  * Use `create(SetDefaultVariantResponseSchema)` to create a new message.
375
361
  */
376
362
  export const SetDefaultVariantResponseSchema = /*@__PURE__*/
377
- messageDesc(file_records_v1_records, 51);
363
+ messageDesc(file_records_v1_records, 49);
378
364
 
379
365
  /**
380
366
  * Describes the message records.v1.ListRecordVariantsRequest.
381
367
  * Use `create(ListRecordVariantsRequestSchema)` to create a new message.
382
368
  */
383
369
  export const ListRecordVariantsRequestSchema = /*@__PURE__*/
384
- messageDesc(file_records_v1_records, 52);
370
+ messageDesc(file_records_v1_records, 50);
385
371
 
386
372
  /**
387
373
  * Describes the message records.v1.ListRecordVariantsResponse.
388
374
  * Use `create(ListRecordVariantsResponseSchema)` to create a new message.
389
375
  */
390
376
  export const ListRecordVariantsResponseSchema = /*@__PURE__*/
391
- messageDesc(file_records_v1_records, 53);
392
-
393
- /**
394
- * Describes the message records.v1.SaveContentRequest.
395
- * Use `create(SaveContentRequestSchema)` to create a new message.
396
- */
397
- export const SaveContentRequestSchema = /*@__PURE__*/
398
- messageDesc(file_records_v1_records, 54);
399
-
400
- /**
401
- * Describes the message records.v1.SaveContentResponse.
402
- * Use `create(SaveContentResponseSchema)` to create a new message.
403
- */
404
- export const SaveContentResponseSchema = /*@__PURE__*/
405
- messageDesc(file_records_v1_records, 55);
377
+ messageDesc(file_records_v1_records, 51);
406
378
 
407
379
  /**
408
380
  * Describes the message records.v1.ScheduleRecordPublishRequest.
409
381
  * Use `create(ScheduleRecordPublishRequestSchema)` to create a new message.
410
382
  */
411
383
  export const ScheduleRecordPublishRequestSchema = /*@__PURE__*/
412
- messageDesc(file_records_v1_records, 56);
384
+ messageDesc(file_records_v1_records, 52);
413
385
 
414
386
  /**
415
387
  * Describes the message records.v1.ScheduleRecordPublishResponse.
416
388
  * Use `create(ScheduleRecordPublishResponseSchema)` to create a new message.
417
389
  */
418
390
  export const ScheduleRecordPublishResponseSchema = /*@__PURE__*/
419
- messageDesc(file_records_v1_records, 57);
391
+ messageDesc(file_records_v1_records, 53);
420
392
 
421
393
  /**
422
394
  * Describes the message records.v1.CancelScheduledRecordPublishRequest.
423
395
  * Use `create(CancelScheduledRecordPublishRequestSchema)` to create a new message.
424
396
  */
425
397
  export const CancelScheduledRecordPublishRequestSchema = /*@__PURE__*/
426
- messageDesc(file_records_v1_records, 58);
398
+ messageDesc(file_records_v1_records, 54);
427
399
 
428
400
  /**
429
401
  * Describes the message records.v1.CancelScheduledRecordPublishResponse.
430
402
  * Use `create(CancelScheduledRecordPublishResponseSchema)` to create a new message.
431
403
  */
432
404
  export const CancelScheduledRecordPublishResponseSchema = /*@__PURE__*/
433
- messageDesc(file_records_v1_records, 59);
405
+ messageDesc(file_records_v1_records, 55);
434
406
 
435
407
  /**
436
408
  * Describes the message records.v1.ListScheduledPublishesRequest.
437
409
  * Use `create(ListScheduledPublishesRequestSchema)` to create a new message.
438
410
  */
439
411
  export const ListScheduledPublishesRequestSchema = /*@__PURE__*/
440
- messageDesc(file_records_v1_records, 60);
412
+ messageDesc(file_records_v1_records, 56);
441
413
 
442
414
  /**
443
415
  * Describes the message records.v1.ListScheduledPublishesResponse.
444
416
  * Use `create(ListScheduledPublishesResponseSchema)` to create a new message.
445
417
  */
446
418
  export const ListScheduledPublishesResponseSchema = /*@__PURE__*/
447
- messageDesc(file_records_v1_records, 61);
419
+ messageDesc(file_records_v1_records, 57);
448
420
 
449
421
  /**
450
422
  * Describes the message records.v1.GetScheduledPublishRequest.
451
423
  * Use `create(GetScheduledPublishRequestSchema)` to create a new message.
452
424
  */
453
425
  export const GetScheduledPublishRequestSchema = /*@__PURE__*/
454
- messageDesc(file_records_v1_records, 62);
426
+ messageDesc(file_records_v1_records, 58);
455
427
 
456
428
  /**
457
429
  * Describes the message records.v1.GetScheduledPublishResponse.
458
430
  * Use `create(GetScheduledPublishResponseSchema)` to create a new message.
459
431
  */
460
432
  export const GetScheduledPublishResponseSchema = /*@__PURE__*/
461
- messageDesc(file_records_v1_records, 63);
433
+ messageDesc(file_records_v1_records, 59);
462
434
 
463
435
  /**
464
436
  * Describes the message records.v1.ListDraftVersionsRequest.
465
437
  * Use `create(ListDraftVersionsRequestSchema)` to create a new message.
466
438
  */
467
439
  export const ListDraftVersionsRequestSchema = /*@__PURE__*/
468
- messageDesc(file_records_v1_records, 64);
440
+ messageDesc(file_records_v1_records, 60);
469
441
 
470
442
  /**
471
443
  * Describes the message records.v1.ListDraftVersionsResponse.
472
444
  * Use `create(ListDraftVersionsResponseSchema)` to create a new message.
473
445
  */
474
446
  export const ListDraftVersionsResponseSchema = /*@__PURE__*/
475
- messageDesc(file_records_v1_records, 65);
447
+ messageDesc(file_records_v1_records, 61);
476
448
 
477
449
  /**
478
450
  * Describes the message records.v1.BatchPublishVersionsRequest.
479
451
  * Use `create(BatchPublishVersionsRequestSchema)` to create a new message.
480
452
  */
481
453
  export const BatchPublishVersionsRequestSchema = /*@__PURE__*/
482
- messageDesc(file_records_v1_records, 66);
454
+ messageDesc(file_records_v1_records, 62);
483
455
 
484
456
  /**
485
457
  * Describes the message records.v1.BatchPublishVersionsResponse.
486
458
  * Use `create(BatchPublishVersionsResponseSchema)` to create a new message.
487
459
  */
488
460
  export const BatchPublishVersionsResponseSchema = /*@__PURE__*/
489
- messageDesc(file_records_v1_records, 67);
461
+ messageDesc(file_records_v1_records, 63);
490
462
 
491
463
  /**
492
464
  * Describes the message records.v1.BatchResolveRecordsRequest.
493
465
  * Use `create(BatchResolveRecordsRequestSchema)` to create a new message.
494
466
  */
495
467
  export const BatchResolveRecordsRequestSchema = /*@__PURE__*/
496
- messageDesc(file_records_v1_records, 68);
468
+ messageDesc(file_records_v1_records, 64);
497
469
 
498
470
  /**
499
471
  * Describes the message records.v1.BatchResolveRecordsResponse.
500
472
  * Use `create(BatchResolveRecordsResponseSchema)` to create a new message.
501
473
  */
502
474
  export const BatchResolveRecordsResponseSchema = /*@__PURE__*/
503
- messageDesc(file_records_v1_records, 69);
475
+ messageDesc(file_records_v1_records, 65);
504
476
 
505
477
  /**
506
478
  * Describes the message records.v1.ResolvedRecord.
507
479
  * Use `create(ResolvedRecordSchema)` to create a new message.
508
480
  */
509
481
  export const ResolvedRecordSchema = /*@__PURE__*/
510
- messageDesc(file_records_v1_records, 70);
482
+ messageDesc(file_records_v1_records, 66);
511
483
 
512
484
  /**
513
485
  * Describes the message records.v1.LookupRecordModelsRequest.
514
486
  * Use `create(LookupRecordModelsRequestSchema)` to create a new message.
515
487
  */
516
488
  export const LookupRecordModelsRequestSchema = /*@__PURE__*/
517
- messageDesc(file_records_v1_records, 71);
489
+ messageDesc(file_records_v1_records, 67);
518
490
 
519
491
  /**
520
492
  * Describes the message records.v1.RecordModelEntry.
521
493
  * Use `create(RecordModelEntrySchema)` to create a new message.
522
494
  */
523
495
  export const RecordModelEntrySchema = /*@__PURE__*/
524
- messageDesc(file_records_v1_records, 72);
496
+ messageDesc(file_records_v1_records, 68);
525
497
 
526
498
  /**
527
499
  * Describes the message records.v1.LookupRecordModelsResponse.
528
500
  * Use `create(LookupRecordModelsResponseSchema)` to create a new message.
529
501
  */
530
502
  export const LookupRecordModelsResponseSchema = /*@__PURE__*/
531
- messageDesc(file_records_v1_records, 73);
503
+ messageDesc(file_records_v1_records, 69);
532
504
 
533
505
  /**
534
506
  * Describes the message records.v1.GlobalSearchRequest.
535
507
  * Use `create(GlobalSearchRequestSchema)` to create a new message.
536
508
  */
537
509
  export const GlobalSearchRequestSchema = /*@__PURE__*/
538
- messageDesc(file_records_v1_records, 74);
510
+ messageDesc(file_records_v1_records, 70);
539
511
 
540
512
  /**
541
513
  * Describes the message records.v1.SearchResultItem.
542
514
  * Use `create(SearchResultItemSchema)` to create a new message.
543
515
  */
544
516
  export const SearchResultItemSchema = /*@__PURE__*/
545
- messageDesc(file_records_v1_records, 75);
517
+ messageDesc(file_records_v1_records, 71);
546
518
 
547
519
  /**
548
520
  * Describes the message records.v1.GlobalSearchResponse.
549
521
  * Use `create(GlobalSearchResponseSchema)` to create a new message.
550
522
  */
551
523
  export const GlobalSearchResponseSchema = /*@__PURE__*/
552
- messageDesc(file_records_v1_records, 76);
524
+ messageDesc(file_records_v1_records, 72);
553
525
 
554
526
  /**
555
527
  * Describes the message records.v1.EmbeddingStats.
556
528
  * Use `create(EmbeddingStatsSchema)` to create a new message.
557
529
  */
558
530
  export const EmbeddingStatsSchema = /*@__PURE__*/
559
- messageDesc(file_records_v1_records, 77);
531
+ messageDesc(file_records_v1_records, 73);
560
532
 
561
533
  /**
562
534
  * Describes the message records.v1.RecordEmbedding.
563
535
  * Use `create(RecordEmbeddingSchema)` to create a new message.
564
536
  */
565
537
  export const RecordEmbeddingSchema = /*@__PURE__*/
566
- messageDesc(file_records_v1_records, 78);
538
+ messageDesc(file_records_v1_records, 74);
567
539
 
568
540
  /**
569
541
  * Describes the message records.v1.SimilarRecord.
570
542
  * Use `create(SimilarRecordSchema)` to create a new message.
571
543
  */
572
544
  export const SimilarRecordSchema = /*@__PURE__*/
573
- messageDesc(file_records_v1_records, 79);
545
+ messageDesc(file_records_v1_records, 75);
574
546
 
575
547
  /**
576
548
  * Describes the message records.v1.GetEmbeddingStatsRequest.
577
549
  * Use `create(GetEmbeddingStatsRequestSchema)` to create a new message.
578
550
  */
579
551
  export const GetEmbeddingStatsRequestSchema = /*@__PURE__*/
580
- messageDesc(file_records_v1_records, 80);
552
+ messageDesc(file_records_v1_records, 76);
581
553
 
582
554
  /**
583
555
  * Describes the message records.v1.GetEmbeddingStatsResponse.
584
556
  * Use `create(GetEmbeddingStatsResponseSchema)` to create a new message.
585
557
  */
586
558
  export const GetEmbeddingStatsResponseSchema = /*@__PURE__*/
587
- messageDesc(file_records_v1_records, 81);
559
+ messageDesc(file_records_v1_records, 77);
588
560
 
589
561
  /**
590
562
  * Describes the message records.v1.GetRecordEmbeddingsRequest.
591
563
  * Use `create(GetRecordEmbeddingsRequestSchema)` to create a new message.
592
564
  */
593
565
  export const GetRecordEmbeddingsRequestSchema = /*@__PURE__*/
594
- messageDesc(file_records_v1_records, 82);
566
+ messageDesc(file_records_v1_records, 78);
595
567
 
596
568
  /**
597
569
  * Describes the message records.v1.GetRecordEmbeddingsResponse.
598
570
  * Use `create(GetRecordEmbeddingsResponseSchema)` to create a new message.
599
571
  */
600
572
  export const GetRecordEmbeddingsResponseSchema = /*@__PURE__*/
601
- messageDesc(file_records_v1_records, 83);
573
+ messageDesc(file_records_v1_records, 79);
602
574
 
603
575
  /**
604
576
  * Describes the message records.v1.FindSimilarRecordsRequest.
605
577
  * Use `create(FindSimilarRecordsRequestSchema)` to create a new message.
606
578
  */
607
579
  export const FindSimilarRecordsRequestSchema = /*@__PURE__*/
608
- messageDesc(file_records_v1_records, 84);
580
+ messageDesc(file_records_v1_records, 80);
609
581
 
610
582
  /**
611
583
  * Describes the message records.v1.FindSimilarRecordsResponse.
612
584
  * Use `create(FindSimilarRecordsResponseSchema)` to create a new message.
613
585
  */
614
586
  export const FindSimilarRecordsResponseSchema = /*@__PURE__*/
615
- messageDesc(file_records_v1_records, 85);
587
+ messageDesc(file_records_v1_records, 81);
616
588
 
617
589
  /**
618
590
  * Describes the message records.v1.WriteEmbeddingsRequest.
619
591
  * Use `create(WriteEmbeddingsRequestSchema)` to create a new message.
620
592
  */
621
593
  export const WriteEmbeddingsRequestSchema = /*@__PURE__*/
622
- messageDesc(file_records_v1_records, 86);
594
+ messageDesc(file_records_v1_records, 82);
623
595
 
624
596
  /**
625
597
  * Describes the message records.v1.WriteEmbeddingsResponse.
626
598
  * Use `create(WriteEmbeddingsResponseSchema)` to create a new message.
627
599
  */
628
600
  export const WriteEmbeddingsResponseSchema = /*@__PURE__*/
629
- messageDesc(file_records_v1_records, 87);
601
+ messageDesc(file_records_v1_records, 83);
630
602
 
631
603
  /**
632
604
  * Describes the message records.v1.DeleteEmbeddingsRequest.
633
605
  * Use `create(DeleteEmbeddingsRequestSchema)` to create a new message.
634
606
  */
635
607
  export const DeleteEmbeddingsRequestSchema = /*@__PURE__*/
636
- messageDesc(file_records_v1_records, 88);
608
+ messageDesc(file_records_v1_records, 84);
637
609
 
638
610
  /**
639
611
  * Describes the message records.v1.DeleteEmbeddingsResponse.
640
612
  * Use `create(DeleteEmbeddingsResponseSchema)` to create a new message.
641
613
  */
642
614
  export const DeleteEmbeddingsResponseSchema = /*@__PURE__*/
643
- messageDesc(file_records_v1_records, 89);
615
+ messageDesc(file_records_v1_records, 85);
644
616
 
645
617
  /**
646
618
  * Describes the message records.v1.EnqueueGenerateEmbeddingRequest.
647
619
  * Use `create(EnqueueGenerateEmbeddingRequestSchema)` to create a new message.
648
620
  */
649
621
  export const EnqueueGenerateEmbeddingRequestSchema = /*@__PURE__*/
650
- messageDesc(file_records_v1_records, 90);
622
+ messageDesc(file_records_v1_records, 86);
651
623
 
652
624
  /**
653
625
  * Describes the message records.v1.EnqueueGenerateEmbeddingResponse.
654
626
  * Use `create(EnqueueGenerateEmbeddingResponseSchema)` to create a new message.
655
627
  */
656
628
  export const EnqueueGenerateEmbeddingResponseSchema = /*@__PURE__*/
657
- messageDesc(file_records_v1_records, 91);
629
+ messageDesc(file_records_v1_records, 87);
658
630
 
659
631
  /**
660
632
  * Describes the message records.v1.SearchEmbeddingsRequest.
661
633
  * Use `create(SearchEmbeddingsRequestSchema)` to create a new message.
662
634
  */
663
635
  export const SearchEmbeddingsRequestSchema = /*@__PURE__*/
664
- messageDesc(file_records_v1_records, 92);
636
+ messageDesc(file_records_v1_records, 88);
665
637
 
666
638
  /**
667
639
  * Describes the message records.v1.SearchEmbeddingsResponse.
668
640
  * Use `create(SearchEmbeddingsResponseSchema)` to create a new message.
669
641
  */
670
642
  export const SearchEmbeddingsResponseSchema = /*@__PURE__*/
671
- messageDesc(file_records_v1_records, 93);
643
+ messageDesc(file_records_v1_records, 89);
672
644
 
673
645
  /**
674
646
  * Describes the message records.v1.LookupRecordRequest.
675
647
  * Use `create(LookupRecordRequestSchema)` to create a new message.
676
648
  */
677
649
  export const LookupRecordRequestSchema = /*@__PURE__*/
678
- messageDesc(file_records_v1_records, 94);
650
+ messageDesc(file_records_v1_records, 90);
679
651
 
680
652
  /**
681
653
  * Describes the message records.v1.LookupRecordResponse.
682
654
  * Use `create(LookupRecordResponseSchema)` to create a new message.
683
655
  */
684
656
  export const LookupRecordResponseSchema = /*@__PURE__*/
685
- messageDesc(file_records_v1_records, 95);
657
+ messageDesc(file_records_v1_records, 91);
686
658
 
687
659
  /**
688
660
  * Describes the message records.v1.CheckLookupAvailabilityRequest.
689
661
  * Use `create(CheckLookupAvailabilityRequestSchema)` to create a new message.
690
662
  */
691
663
  export const CheckLookupAvailabilityRequestSchema = /*@__PURE__*/
692
- messageDesc(file_records_v1_records, 96);
664
+ messageDesc(file_records_v1_records, 92);
693
665
 
694
666
  /**
695
667
  * Describes the message records.v1.CheckLookupAvailabilityResponse.
696
668
  * Use `create(CheckLookupAvailabilityResponseSchema)` to create a new message.
697
669
  */
698
670
  export const CheckLookupAvailabilityResponseSchema = /*@__PURE__*/
699
- messageDesc(file_records_v1_records, 97);
671
+ messageDesc(file_records_v1_records, 93);
700
672
 
701
673
  /**
702
674
  * Describes the message records.v1.LookupConflictDetail.
703
675
  * Use `create(LookupConflictDetailSchema)` to create a new message.
704
676
  */
705
677
  export const LookupConflictDetailSchema = /*@__PURE__*/
706
- messageDesc(file_records_v1_records, 98);
678
+ messageDesc(file_records_v1_records, 94);
707
679
 
708
680
  /**
709
681
  * Describes the message records.v1.ListLookupConflictsRequest.
710
682
  * Use `create(ListLookupConflictsRequestSchema)` to create a new message.
711
683
  */
712
684
  export const ListLookupConflictsRequestSchema = /*@__PURE__*/
713
- messageDesc(file_records_v1_records, 99);
685
+ messageDesc(file_records_v1_records, 95);
714
686
 
715
687
  /**
716
688
  * Describes the message records.v1.ListLookupConflictsResponse.
717
689
  * Use `create(ListLookupConflictsResponseSchema)` to create a new message.
718
690
  */
719
691
  export const ListLookupConflictsResponseSchema = /*@__PURE__*/
720
- messageDesc(file_records_v1_records, 100);
692
+ messageDesc(file_records_v1_records, 96);
721
693
 
722
694
  /**
723
695
  * Describes the message records.v1.ConflictGroup.
724
696
  * Use `create(ConflictGroupSchema)` to create a new message.
725
697
  */
726
698
  export const ConflictGroupSchema = /*@__PURE__*/
727
- messageDesc(file_records_v1_records, 101);
699
+ messageDesc(file_records_v1_records, 97);
728
700
 
729
701
  /**
730
702
  * Describes the message records.v1.RebuildModelLookupsRequest.
731
703
  * Use `create(RebuildModelLookupsRequestSchema)` to create a new message.
732
704
  */
733
705
  export const RebuildModelLookupsRequestSchema = /*@__PURE__*/
734
- messageDesc(file_records_v1_records, 102);
706
+ messageDesc(file_records_v1_records, 98);
735
707
 
736
708
  /**
737
709
  * Describes the message records.v1.RebuildModelLookupsResponse.
738
710
  * Use `create(RebuildModelLookupsResponseSchema)` to create a new message.
739
711
  */
740
712
  export const RebuildModelLookupsResponseSchema = /*@__PURE__*/
741
- messageDesc(file_records_v1_records, 103);
713
+ messageDesc(file_records_v1_records, 99);
742
714
 
743
715
  /**
744
716
  * Describes the enum records.v1.RecordType.