@eide/foir-proto-ts 0.77.0 → 0.78.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.
Files changed (33) hide show
  1. package/package.json +2 -1
  2. package/src/analytics/v1/analytics_pb.d.ts +109 -8
  3. package/src/analytics/v1/analytics_pb.js +2 -1
  4. package/src/apps/v1/apps_service_pb.d.ts +28 -2
  5. package/src/apps/v1/apps_service_pb.js +2 -1
  6. package/src/billing/v1/billing_pb.d.ts +25 -4
  7. package/src/billing/v1/billing_pb.js +2 -1
  8. package/src/common/v1/pagination_pb.d.ts +57 -0
  9. package/src/common/v1/pagination_pb.js +19 -0
  10. package/src/configs/v1/configs_pb.d.ts +49 -8
  11. package/src/configs/v1/configs_pb.js +2 -1
  12. package/src/email/v1/email_pb.d.ts +25 -4
  13. package/src/email/v1/email_pb.js +2 -1
  14. package/src/hooks/v1/hooks_pb.d.ts +49 -8
  15. package/src/hooks/v1/hooks_pb.js +2 -1
  16. package/src/identity/v1/identity_pb.d.ts +193 -32
  17. package/src/identity/v1/identity_pb.js +2 -1
  18. package/src/models/v1/models_pb.d.ts +49 -8
  19. package/src/models/v1/models_pb.js +2 -1
  20. package/src/notifications/v1/notifications_pb.d.ts +97 -16
  21. package/src/notifications/v1/notifications_pb.js +2 -1
  22. package/src/operations/v1/operations_pb.d.ts +124 -18
  23. package/src/operations/v1/operations_pb.js +2 -1
  24. package/src/records/v1/records_pb.d.ts +179 -59
  25. package/src/records/v1/records_pb.js +86 -92
  26. package/src/schedules/v1/schedules_pb.d.ts +49 -8
  27. package/src/schedules/v1/schedules_pb.js +2 -1
  28. package/src/segments/v1/segments_pb.d.ts +25 -4
  29. package/src/segments/v1/segments_pb.js +2 -1
  30. package/src/settings/v1/settings_pb.d.ts +268 -42
  31. package/src/settings/v1/settings_pb.js +2 -1
  32. package/src/storage/v1/storage_pb.d.ts +30 -4
  33. package/src/storage/v1/storage_pb.js +2 -1
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@eide/foir-proto-ts",
3
- "version": "0.77.0",
3
+ "version": "0.78.0",
4
4
  "type": "module",
5
5
  "exports": {
6
+ "./common/v1/pagination_pb": "./src/common/v1/pagination_pb.js",
6
7
  "./analytics/v1/analytics_pb": "./src/analytics/v1/analytics_pb.js",
7
8
  "./analytics/v1/analytics_connect": "./src/analytics/v1/analytics_connect.js",
8
9
  "./apps/v1/apps_pb": "./src/apps/v1/apps_pb.js",
@@ -5,6 +5,7 @@
5
5
  import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
6
  import type { Message } from "@bufbuild/protobuf";
7
7
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
8
+ import type { PageInfo } from "../../common/v1/pagination_pb.js";
8
9
 
9
10
  /**
10
11
  * Describes the file analytics/v1/analytics.proto.
@@ -297,9 +298,24 @@ export declare type GetDistributionRequest = Message<"analytics.v1.GetDistributi
297
298
  metric: string;
298
299
 
299
300
  /**
300
- * @generated from field: int32 limit = 10;
301
+ * @generated from field: optional string after = 2;
301
302
  */
302
- limit: number;
303
+ after?: string | undefined;
304
+
305
+ /**
306
+ * @generated from field: optional string before = 3;
307
+ */
308
+ before?: string | undefined;
309
+
310
+ /**
311
+ * @generated from field: optional int32 first = 4;
312
+ */
313
+ first?: number | undefined;
314
+
315
+ /**
316
+ * @generated from field: optional int32 last = 5;
317
+ */
318
+ last?: number | undefined;
303
319
  };
304
320
 
305
321
  /**
@@ -316,6 +332,16 @@ export declare type GetDistributionResponse = Message<"analytics.v1.GetDistribut
316
332
  * @generated from field: repeated analytics.v1.DistributionItem items = 1;
317
333
  */
318
334
  items: DistributionItem[];
335
+
336
+ /**
337
+ * @generated from field: optional common.v1.PageInfo page_info = 2;
338
+ */
339
+ pageInfo?: PageInfo | undefined;
340
+
341
+ /**
342
+ * @generated from field: repeated string cursors = 3;
343
+ */
344
+ cursors: string[];
319
345
  };
320
346
 
321
347
  /**
@@ -371,9 +397,24 @@ export declare const GetSecuritySummaryResponseSchema: GenMessage<GetSecuritySum
371
397
  */
372
398
  export declare type GetSuspiciousLoginsRequest = Message<"analytics.v1.GetSuspiciousLoginsRequest"> & {
373
399
  /**
374
- * @generated from field: int32 limit = 1;
400
+ * @generated from field: optional string after = 3;
375
401
  */
376
- limit: number;
402
+ after?: string | undefined;
403
+
404
+ /**
405
+ * @generated from field: optional string before = 4;
406
+ */
407
+ before?: string | undefined;
408
+
409
+ /**
410
+ * @generated from field: optional int32 first = 5;
411
+ */
412
+ first?: number | undefined;
413
+
414
+ /**
415
+ * @generated from field: optional int32 last = 6;
416
+ */
417
+ last?: number | undefined;
377
418
 
378
419
  /**
379
420
  * @generated from field: optional string tenant_id = 2;
@@ -395,6 +436,16 @@ export declare type GetSuspiciousLoginsResponse = Message<"analytics.v1.GetSuspi
395
436
  * @generated from field: repeated analytics.v1.SuspiciousLogin logins = 1;
396
437
  */
397
438
  logins: SuspiciousLogin[];
439
+
440
+ /**
441
+ * @generated from field: optional common.v1.PageInfo page_info = 2;
442
+ */
443
+ pageInfo?: PageInfo | undefined;
444
+
445
+ /**
446
+ * @generated from field: repeated string cursors = 3;
447
+ */
448
+ cursors: string[];
398
449
  };
399
450
 
400
451
  /**
@@ -413,9 +464,24 @@ export declare type GetFailedLoginsRequest = Message<"analytics.v1.GetFailedLogi
413
464
  by?: string | undefined;
414
465
 
415
466
  /**
416
- * @generated from field: int32 limit = 10;
467
+ * @generated from field: optional string after = 4;
417
468
  */
418
- limit: number;
469
+ after?: string | undefined;
470
+
471
+ /**
472
+ * @generated from field: optional string before = 5;
473
+ */
474
+ before?: string | undefined;
475
+
476
+ /**
477
+ * @generated from field: optional int32 first = 6;
478
+ */
479
+ first?: number | undefined;
480
+
481
+ /**
482
+ * @generated from field: optional int32 last = 7;
483
+ */
484
+ last?: number | undefined;
419
485
 
420
486
  /**
421
487
  * @generated from field: optional string tenant_id = 3;
@@ -437,6 +503,16 @@ export declare type GetFailedLoginsResponse = Message<"analytics.v1.GetFailedLog
437
503
  * @generated from field: repeated analytics.v1.FailedLogin entries = 1;
438
504
  */
439
505
  entries: FailedLogin[];
506
+
507
+ /**
508
+ * @generated from field: optional common.v1.PageInfo page_info = 2;
509
+ */
510
+ pageInfo?: PageInfo | undefined;
511
+
512
+ /**
513
+ * @generated from field: repeated string cursors = 3;
514
+ */
515
+ cursors: string[];
440
516
  };
441
517
 
442
518
  /**
@@ -450,9 +526,24 @@ export declare const GetFailedLoginsResponseSchema: GenMessage<GetFailedLoginsRe
450
526
  */
451
527
  export declare type GetAccountLockoutsRequest = Message<"analytics.v1.GetAccountLockoutsRequest"> & {
452
528
  /**
453
- * @generated from field: int32 limit = 1;
529
+ * @generated from field: optional string after = 3;
454
530
  */
455
- limit: number;
531
+ after?: string | undefined;
532
+
533
+ /**
534
+ * @generated from field: optional string before = 4;
535
+ */
536
+ before?: string | undefined;
537
+
538
+ /**
539
+ * @generated from field: optional int32 first = 5;
540
+ */
541
+ first?: number | undefined;
542
+
543
+ /**
544
+ * @generated from field: optional int32 last = 6;
545
+ */
546
+ last?: number | undefined;
456
547
 
457
548
  /**
458
549
  * @generated from field: optional string tenant_id = 2;
@@ -474,6 +565,16 @@ export declare type GetAccountLockoutsResponse = Message<"analytics.v1.GetAccoun
474
565
  * @generated from field: repeated analytics.v1.AccountLockout lockouts = 1;
475
566
  */
476
567
  lockouts: AccountLockout[];
568
+
569
+ /**
570
+ * @generated from field: optional common.v1.PageInfo page_info = 2;
571
+ */
572
+ pageInfo?: PageInfo | undefined;
573
+
574
+ /**
575
+ * @generated from field: repeated string cursors = 3;
576
+ */
577
+ cursors: string[];
477
578
  };
478
579
 
479
580
  /**
@@ -4,12 +4,13 @@
4
4
 
5
5
  import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
6
6
  import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
7
+ import { file_common_v1_pagination } from "../../common/v1/pagination_pb.js";
7
8
 
8
9
  /**
9
10
  * Describes the file analytics/v1/analytics.proto.
10
11
  */
11
12
  export const file_analytics_v1_analytics = /*@__PURE__*/
12
- fileDesc("ChxhbmFseXRpY3MvdjEvYW5hbHl0aWNzLnByb3RvEgxhbmFseXRpY3MudjEihgEKEEFuYWx5dGljc1N1bW1hcnkSFQoNdG90YWxfcmVjb3JkcxgBIAEoBRIUCgx0b3RhbF9tb2RlbHMYAiABKAUSFwoPdG90YWxfY3VzdG9tZXJzGAMgASgFEhMKC3RvdGFsX3VzZXJzGAQgASgFEhcKD2FjdGl2ZV9zZWdtZW50cxgGIAEoBSIpCgpUcmVuZFBvaW50EgwKBGRhdGUYASABKAkSDQoFdmFsdWUYAiABKAMiLgoQRGlzdHJpYnV0aW9uSXRlbRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAMicAoPU2VjdXJpdHlTdW1tYXJ5EhQKDHRvdGFsX2xvZ2lucxgBIAEoBRIVCg1mYWlsZWRfbG9naW5zGAIgASgFEhgKEGFjY291bnRfbG9ja291dHMYAyABKAUSFgoOc3VzcGljaW91c19pcHMYBCABKAUibgoPU3VzcGljaW91c0xvZ2luEg0KBWVtYWlsGAEgASgJEhAKCGlwX2NvdW50GAIgASgFEgsKA2lwcxgDIAMoCRItCglsYXN0X3NlZW4YBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wImIKC0ZhaWxlZExvZ2luEhIKCmlkZW50aWZpZXIYASABKAkSDQoFY291bnQYAiABKAUSMAoMbGFzdF9hdHRlbXB0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJuCg5BY2NvdW50TG9ja291dBINCgVlbWFpbBgBIAEoCRItCglsb2NrZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhMKBnJlYXNvbhgDIAEoCUgAiAEBQgkKB19yZWFzb24iiAEKGkdldEFuYWx5dGljc1N1bW1hcnlSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCBwoFX2Zyb21CBQoDX3RvIk4KG0dldEFuYWx5dGljc1N1bW1hcnlSZXNwb25zZRIvCgdzdW1tYXJ5GAEgASgLMh4uYW5hbHl0aWNzLnYxLkFuYWx5dGljc1N1bW1hcnkitwEKD0dldFRyZW5kUmVxdWVzdBIOCgZtZXRyaWMYASABKAkSLQoEZnJvbRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIrCgJ0bxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIYCgtncmFudWxhcml0eRgEIAEoCUgCiAEBQgcKBV9mcm9tQgUKA190b0IOCgxfZ3JhbnVsYXJpdHkiPAoQR2V0VHJlbmRSZXNwb25zZRIoCgZwb2ludHMYASADKAsyGC5hbmFseXRpY3MudjEuVHJlbmRQb2ludCI3ChZHZXREaXN0cmlidXRpb25SZXF1ZXN0Eg4KBm1ldHJpYxgBIAEoCRINCgVsaW1pdBgKIAEoBSJIChdHZXREaXN0cmlidXRpb25SZXNwb25zZRItCgVpdGVtcxgBIAMoCzIeLmFuYWx5dGljcy52MS5EaXN0cmlidXRpb25JdGVtIq0BChlHZXRTZWN1cml0eVN1bW1hcnlSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESFgoJdGVuYW50X2lkGAMgASgJSAKIAQFCBwoFX2Zyb21CBQoDX3RvQgwKCl90ZW5hbnRfaWQiTAoaR2V0U2VjdXJpdHlTdW1tYXJ5UmVzcG9uc2USLgoHc3VtbWFyeRgBIAEoCzIdLmFuYWx5dGljcy52MS5TZWN1cml0eVN1bW1hcnkiUQoaR2V0U3VzcGljaW91c0xvZ2luc1JlcXVlc3QSDQoFbGltaXQYASABKAUSFgoJdGVuYW50X2lkGAIgASgJSACIAQFCDAoKX3RlbmFudF9pZCJMChtHZXRTdXNwaWNpb3VzTG9naW5zUmVzcG9uc2USLQoGbG9naW5zGAEgAygLMh0uYW5hbHl0aWNzLnYxLlN1c3BpY2lvdXNMb2dpbiJlChZHZXRGYWlsZWRMb2dpbnNSZXF1ZXN0Eg8KAmJ5GAEgASgJSACIAQESDQoFbGltaXQYCiABKAUSFgoJdGVuYW50X2lkGAMgASgJSAGIAQFCBQoDX2J5QgwKCl90ZW5hbnRfaWQiRQoXR2V0RmFpbGVkTG9naW5zUmVzcG9uc2USKgoHZW50cmllcxgBIAMoCzIZLmFuYWx5dGljcy52MS5GYWlsZWRMb2dpbiJQChlHZXRBY2NvdW50TG9ja291dHNSZXF1ZXN0Eg0KBWxpbWl0GAEgASgFEhYKCXRlbmFudF9pZBgCIAEoCUgAiAEBQgwKCl90ZW5hbnRfaWQiTAoaR2V0QWNjb3VudExvY2tvdXRzUmVzcG9uc2USLgoIbG9ja291dHMYASADKAsyHC5hbmFseXRpY3MudjEuQWNjb3VudExvY2tvdXQiXAoWVmFyaWFudFBlcmZvcm1hbmNlSXRlbRITCgt2YXJpYW50X2tleRgBIAEoCRITCgtyZXNvbHV0aW9ucxgCIAEoAxIYChB1bmlxdWVfY3VzdG9tZXJzGAMgASgDIooBChxHZXRWYXJpYW50UGVyZm9ybWFuY2VSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCBwoFX2Zyb21CBQoDX3RvIlQKHUdldFZhcmlhbnRQZXJmb3JtYW5jZVJlc3BvbnNlEjMKBWl0ZW1zGAEgAygLMiQuYW5hbHl0aWNzLnYxLlZhcmlhbnRQZXJmb3JtYW5jZUl0ZW0iWAoVU2VnbWVudEVuZ2FnZW1lbnRJdGVtEhMKC3NlZ21lbnRfa2V5GAEgASgJEhQKDG1lbWJlcl9jb3VudBgCIAEoAxIUCgxhY3RpdmVfY291bnQYAyABKAMiiQEKG0dldFNlZ21lbnRFbmdhZ2VtZW50UmVxdWVzdBItCgRmcm9tGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEisKAnRvGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBQgcKBV9mcm9tQgUKA190byJSChxHZXRTZWdtZW50RW5nYWdlbWVudFJlc3BvbnNlEjIKBWl0ZW1zGAEgAygLMiMuYW5hbHl0aWNzLnYxLlNlZ21lbnRFbmdhZ2VtZW50SXRlbTKoBwoQQW5hbHl0aWNzU2VydmljZRJqChNHZXRBbmFseXRpY3NTdW1tYXJ5EiguYW5hbHl0aWNzLnYxLkdldEFuYWx5dGljc1N1bW1hcnlSZXF1ZXN0GikuYW5hbHl0aWNzLnYxLkdldEFuYWx5dGljc1N1bW1hcnlSZXNwb25zZRJJCghHZXRUcmVuZBIdLmFuYWx5dGljcy52MS5HZXRUcmVuZFJlcXVlc3QaHi5hbmFseXRpY3MudjEuR2V0VHJlbmRSZXNwb25zZRJeCg9HZXREaXN0cmlidXRpb24SJC5hbmFseXRpY3MudjEuR2V0RGlzdHJpYnV0aW9uUmVxdWVzdBolLmFuYWx5dGljcy52MS5HZXREaXN0cmlidXRpb25SZXNwb25zZRJnChJHZXRTZWN1cml0eVN1bW1hcnkSJy5hbmFseXRpY3MudjEuR2V0U2VjdXJpdHlTdW1tYXJ5UmVxdWVzdBooLmFuYWx5dGljcy52MS5HZXRTZWN1cml0eVN1bW1hcnlSZXNwb25zZRJqChNHZXRTdXNwaWNpb3VzTG9naW5zEiguYW5hbHl0aWNzLnYxLkdldFN1c3BpY2lvdXNMb2dpbnNSZXF1ZXN0GikuYW5hbHl0aWNzLnYxLkdldFN1c3BpY2lvdXNMb2dpbnNSZXNwb25zZRJeCg9HZXRGYWlsZWRMb2dpbnMSJC5hbmFseXRpY3MudjEuR2V0RmFpbGVkTG9naW5zUmVxdWVzdBolLmFuYWx5dGljcy52MS5HZXRGYWlsZWRMb2dpbnNSZXNwb25zZRJnChJHZXRBY2NvdW50TG9ja291dHMSJy5hbmFseXRpY3MudjEuR2V0QWNjb3VudExvY2tvdXRzUmVxdWVzdBooLmFuYWx5dGljcy52MS5HZXRBY2NvdW50TG9ja291dHNSZXNwb25zZRJwChVHZXRWYXJpYW50UGVyZm9ybWFuY2USKi5hbmFseXRpY3MudjEuR2V0VmFyaWFudFBlcmZvcm1hbmNlUmVxdWVzdBorLmFuYWx5dGljcy52MS5HZXRWYXJpYW50UGVyZm9ybWFuY2VSZXNwb25zZRJtChRHZXRTZWdtZW50RW5nYWdlbWVudBIpLmFuYWx5dGljcy52MS5HZXRTZWdtZW50RW5nYWdlbWVudFJlcXVlc3QaKi5hbmFseXRpY3MudjEuR2V0U2VnbWVudEVuZ2FnZW1lbnRSZXNwb25zZUI/Wj1naXRodWIuY29tL2VpZGVzdHVkaW8vZm9pci9nZW4vcHJvdG8vYW5hbHl0aWNzL3YxO2FuYWx5dGljc3YxYgZwcm90bzM", [file_google_protobuf_timestamp]);
13
+ fileDesc("ChxhbmFseXRpY3MvdjEvYW5hbHl0aWNzLnByb3RvEgxhbmFseXRpY3MudjEihgEKEEFuYWx5dGljc1N1bW1hcnkSFQoNdG90YWxfcmVjb3JkcxgBIAEoBRIUCgx0b3RhbF9tb2RlbHMYAiABKAUSFwoPdG90YWxfY3VzdG9tZXJzGAMgASgFEhMKC3RvdGFsX3VzZXJzGAQgASgFEhcKD2FjdGl2ZV9zZWdtZW50cxgGIAEoBSIpCgpUcmVuZFBvaW50EgwKBGRhdGUYASABKAkSDQoFdmFsdWUYAiABKAMiLgoQRGlzdHJpYnV0aW9uSXRlbRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAMicAoPU2VjdXJpdHlTdW1tYXJ5EhQKDHRvdGFsX2xvZ2lucxgBIAEoBRIVCg1mYWlsZWRfbG9naW5zGAIgASgFEhgKEGFjY291bnRfbG9ja291dHMYAyABKAUSFgoOc3VzcGljaW91c19pcHMYBCABKAUibgoPU3VzcGljaW91c0xvZ2luEg0KBWVtYWlsGAEgASgJEhAKCGlwX2NvdW50GAIgASgFEgsKA2lwcxgDIAMoCRItCglsYXN0X3NlZW4YBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wImIKC0ZhaWxlZExvZ2luEhIKCmlkZW50aWZpZXIYASABKAkSDQoFY291bnQYAiABKAUSMAoMbGFzdF9hdHRlbXB0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJuCg5BY2NvdW50TG9ja291dBINCgVlbWFpbBgBIAEoCRItCglsb2NrZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhMKBnJlYXNvbhgDIAEoCUgAiAEBQgkKB19yZWFzb24iiAEKGkdldEFuYWx5dGljc1N1bW1hcnlSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCBwoFX2Zyb21CBQoDX3RvIk4KG0dldEFuYWx5dGljc1N1bW1hcnlSZXNwb25zZRIvCgdzdW1tYXJ5GAEgASgLMh4uYW5hbHl0aWNzLnYxLkFuYWx5dGljc1N1bW1hcnkitwEKD0dldFRyZW5kUmVxdWVzdBIOCgZtZXRyaWMYASABKAkSLQoEZnJvbRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIrCgJ0bxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIYCgtncmFudWxhcml0eRgEIAEoCUgCiAEBQgcKBV9mcm9tQgUKA190b0IOCgxfZ3JhbnVsYXJpdHkiPAoQR2V0VHJlbmRSZXNwb25zZRIoCgZwb2ludHMYASADKAsyGC5hbmFseXRpY3MudjEuVHJlbmRQb2ludCKgAQoWR2V0RGlzdHJpYnV0aW9uUmVxdWVzdBIOCgZtZXRyaWMYASABKAkSEgoFYWZ0ZXIYAiABKAlIAIgBARITCgZiZWZvcmUYAyABKAlIAYgBARISCgVmaXJzdBgEIAEoBUgCiAEBEhEKBGxhc3QYBSABKAVIA4gBAUIICgZfYWZ0ZXJCCQoHX2JlZm9yZUIICgZfZmlyc3RCBwoFX2xhc3QilAEKF0dldERpc3RyaWJ1dGlvblJlc3BvbnNlEi0KBWl0ZW1zGAEgAygLMh4uYW5hbHl0aWNzLnYxLkRpc3RyaWJ1dGlvbkl0ZW0SKwoJcGFnZV9pbmZvGAIgASgLMhMuY29tbW9uLnYxLlBhZ2VJbmZvSACIAQESDwoHY3Vyc29ycxgDIAMoCUIMCgpfcGFnZV9pbmZvIq0BChlHZXRTZWN1cml0eVN1bW1hcnlSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESFgoJdGVuYW50X2lkGAMgASgJSAKIAQFCBwoFX2Zyb21CBQoDX3RvQgwKCl90ZW5hbnRfaWQiTAoaR2V0U2VjdXJpdHlTdW1tYXJ5UmVzcG9uc2USLgoHc3VtbWFyeRgBIAEoCzIdLmFuYWx5dGljcy52MS5TZWN1cml0eVN1bW1hcnkiugEKGkdldFN1c3BpY2lvdXNMb2dpbnNSZXF1ZXN0EhIKBWFmdGVyGAMgASgJSACIAQESEwoGYmVmb3JlGAQgASgJSAGIAQESEgoFZmlyc3QYBSABKAVIAogBARIRCgRsYXN0GAYgASgFSAOIAQESFgoJdGVuYW50X2lkGAIgASgJSASIAQFCCAoGX2FmdGVyQgkKB19iZWZvcmVCCAoGX2ZpcnN0QgcKBV9sYXN0QgwKCl90ZW5hbnRfaWQimAEKG0dldFN1c3BpY2lvdXNMb2dpbnNSZXNwb25zZRItCgZsb2dpbnMYASADKAsyHS5hbmFseXRpY3MudjEuU3VzcGljaW91c0xvZ2luEisKCXBhZ2VfaW5mbxgCIAEoCzITLmNvbW1vbi52MS5QYWdlSW5mb0gAiAEBEg8KB2N1cnNvcnMYAyADKAlCDAoKX3BhZ2VfaW5mbyLOAQoWR2V0RmFpbGVkTG9naW5zUmVxdWVzdBIPCgJieRgBIAEoCUgAiAEBEhIKBWFmdGVyGAQgASgJSAGIAQESEwoGYmVmb3JlGAUgASgJSAKIAQESEgoFZmlyc3QYBiABKAVIA4gBARIRCgRsYXN0GAcgASgFSASIAQESFgoJdGVuYW50X2lkGAMgASgJSAWIAQFCBQoDX2J5QggKBl9hZnRlckIJCgdfYmVmb3JlQggKBl9maXJzdEIHCgVfbGFzdEIMCgpfdGVuYW50X2lkIpEBChdHZXRGYWlsZWRMb2dpbnNSZXNwb25zZRIqCgdlbnRyaWVzGAEgAygLMhkuYW5hbHl0aWNzLnYxLkZhaWxlZExvZ2luEisKCXBhZ2VfaW5mbxgCIAEoCzITLmNvbW1vbi52MS5QYWdlSW5mb0gAiAEBEg8KB2N1cnNvcnMYAyADKAlCDAoKX3BhZ2VfaW5mbyK5AQoZR2V0QWNjb3VudExvY2tvdXRzUmVxdWVzdBISCgVhZnRlchgDIAEoCUgAiAEBEhMKBmJlZm9yZRgEIAEoCUgBiAEBEhIKBWZpcnN0GAUgASgFSAKIAQESEQoEbGFzdBgGIAEoBUgDiAEBEhYKCXRlbmFudF9pZBgCIAEoCUgEiAEBQggKBl9hZnRlckIJCgdfYmVmb3JlQggKBl9maXJzdEIHCgVfbGFzdEIMCgpfdGVuYW50X2lkIpgBChpHZXRBY2NvdW50TG9ja291dHNSZXNwb25zZRIuCghsb2Nrb3V0cxgBIAMoCzIcLmFuYWx5dGljcy52MS5BY2NvdW50TG9ja291dBIrCglwYWdlX2luZm8YAiABKAsyEy5jb21tb24udjEuUGFnZUluZm9IAIgBARIPCgdjdXJzb3JzGAMgAygJQgwKCl9wYWdlX2luZm8iXAoWVmFyaWFudFBlcmZvcm1hbmNlSXRlbRITCgt2YXJpYW50X2tleRgBIAEoCRITCgtyZXNvbHV0aW9ucxgCIAEoAxIYChB1bmlxdWVfY3VzdG9tZXJzGAMgASgDIooBChxHZXRWYXJpYW50UGVyZm9ybWFuY2VSZXF1ZXN0Ei0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESKwoCdG8YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCBwoFX2Zyb21CBQoDX3RvIlQKHUdldFZhcmlhbnRQZXJmb3JtYW5jZVJlc3BvbnNlEjMKBWl0ZW1zGAEgAygLMiQuYW5hbHl0aWNzLnYxLlZhcmlhbnRQZXJmb3JtYW5jZUl0ZW0iWAoVU2VnbWVudEVuZ2FnZW1lbnRJdGVtEhMKC3NlZ21lbnRfa2V5GAEgASgJEhQKDG1lbWJlcl9jb3VudBgCIAEoAxIUCgxhY3RpdmVfY291bnQYAyABKAMiiQEKG0dldFNlZ21lbnRFbmdhZ2VtZW50UmVxdWVzdBItCgRmcm9tGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEisKAnRvGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBQgcKBV9mcm9tQgUKA190byJSChxHZXRTZWdtZW50RW5nYWdlbWVudFJlc3BvbnNlEjIKBWl0ZW1zGAEgAygLMiMuYW5hbHl0aWNzLnYxLlNlZ21lbnRFbmdhZ2VtZW50SXRlbTKoBwoQQW5hbHl0aWNzU2VydmljZRJqChNHZXRBbmFseXRpY3NTdW1tYXJ5EiguYW5hbHl0aWNzLnYxLkdldEFuYWx5dGljc1N1bW1hcnlSZXF1ZXN0GikuYW5hbHl0aWNzLnYxLkdldEFuYWx5dGljc1N1bW1hcnlSZXNwb25zZRJJCghHZXRUcmVuZBIdLmFuYWx5dGljcy52MS5HZXRUcmVuZFJlcXVlc3QaHi5hbmFseXRpY3MudjEuR2V0VHJlbmRSZXNwb25zZRJeCg9HZXREaXN0cmlidXRpb24SJC5hbmFseXRpY3MudjEuR2V0RGlzdHJpYnV0aW9uUmVxdWVzdBolLmFuYWx5dGljcy52MS5HZXREaXN0cmlidXRpb25SZXNwb25zZRJnChJHZXRTZWN1cml0eVN1bW1hcnkSJy5hbmFseXRpY3MudjEuR2V0U2VjdXJpdHlTdW1tYXJ5UmVxdWVzdBooLmFuYWx5dGljcy52MS5HZXRTZWN1cml0eVN1bW1hcnlSZXNwb25zZRJqChNHZXRTdXNwaWNpb3VzTG9naW5zEiguYW5hbHl0aWNzLnYxLkdldFN1c3BpY2lvdXNMb2dpbnNSZXF1ZXN0GikuYW5hbHl0aWNzLnYxLkdldFN1c3BpY2lvdXNMb2dpbnNSZXNwb25zZRJeCg9HZXRGYWlsZWRMb2dpbnMSJC5hbmFseXRpY3MudjEuR2V0RmFpbGVkTG9naW5zUmVxdWVzdBolLmFuYWx5dGljcy52MS5HZXRGYWlsZWRMb2dpbnNSZXNwb25zZRJnChJHZXRBY2NvdW50TG9ja291dHMSJy5hbmFseXRpY3MudjEuR2V0QWNjb3VudExvY2tvdXRzUmVxdWVzdBooLmFuYWx5dGljcy52MS5HZXRBY2NvdW50TG9ja291dHNSZXNwb25zZRJwChVHZXRWYXJpYW50UGVyZm9ybWFuY2USKi5hbmFseXRpY3MudjEuR2V0VmFyaWFudFBlcmZvcm1hbmNlUmVxdWVzdBorLmFuYWx5dGljcy52MS5HZXRWYXJpYW50UGVyZm9ybWFuY2VSZXNwb25zZRJtChRHZXRTZWdtZW50RW5nYWdlbWVudBIpLmFuYWx5dGljcy52MS5HZXRTZWdtZW50RW5nYWdlbWVudFJlcXVlc3QaKi5hbmFseXRpY3MudjEuR2V0U2VnbWVudEVuZ2FnZW1lbnRSZXNwb25zZUI/Wj1naXRodWIuY29tL2VpZGVzdHVkaW8vZm9pci9nZW4vcHJvdG8vYW5hbHl0aWNzL3YxO2FuYWx5dGljc3YxYgZwcm90bzM", [file_google_protobuf_timestamp, file_common_v1_pagination]);
13
14
 
14
15
  /**
15
16
  * Describes the message analytics.v1.AnalyticsSummary.
@@ -6,6 +6,7 @@ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobu
6
6
  import type { JsonObject, Message } from "@bufbuild/protobuf";
7
7
  import type { AppConfig, Credentials_Strategy } from "./apps_pb.js";
8
8
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
9
+ import type { PageInfo } from "../../common/v1/pagination_pb.js";
9
10
 
10
11
  /**
11
12
  * Describes the file apps/v1/apps_service.proto.
@@ -1475,9 +1476,24 @@ export declare type ListAppEventsRequest = Message<"apps.v1.ListAppEventsRequest
1475
1476
  appName: string;
1476
1477
 
1477
1478
  /**
1478
- * @generated from field: int32 limit = 4;
1479
+ * @generated from field: optional string after = 4;
1479
1480
  */
1480
- limit: number;
1481
+ after?: string | undefined;
1482
+
1483
+ /**
1484
+ * @generated from field: optional string before = 5;
1485
+ */
1486
+ before?: string | undefined;
1487
+
1488
+ /**
1489
+ * @generated from field: optional int32 first = 6;
1490
+ */
1491
+ first?: number | undefined;
1492
+
1493
+ /**
1494
+ * @generated from field: optional int32 last = 7;
1495
+ */
1496
+ last?: number | undefined;
1481
1497
  };
1482
1498
 
1483
1499
  /**
@@ -1494,6 +1510,16 @@ export declare type ListAppEventsResponse = Message<"apps.v1.ListAppEventsRespon
1494
1510
  * @generated from field: repeated apps.v1.AppEvent events = 1;
1495
1511
  */
1496
1512
  events: AppEvent[];
1513
+
1514
+ /**
1515
+ * @generated from field: optional common.v1.PageInfo page_info = 2;
1516
+ */
1517
+ pageInfo?: PageInfo | undefined;
1518
+
1519
+ /**
1520
+ * @generated from field: repeated string cursors = 3;
1521
+ */
1522
+ cursors: string[];
1497
1523
  };
1498
1524
 
1499
1525
  /**
@@ -5,12 +5,13 @@
5
5
  import { enumDesc, fileDesc, messageDesc, serviceDesc, tsEnum } from "@bufbuild/protobuf/codegenv2";
6
6
  import { file_apps_v1_apps } from "./apps_pb.js";
7
7
  import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
8
+ import { file_common_v1_pagination } from "../../common/v1/pagination_pb.js";
8
9
 
9
10
  /**
10
11
  * Describes the file apps/v1/apps_service.proto.
11
12
  */
12
13
  export const file_apps_v1_apps_service = /*@__PURE__*/
13
- fileDesc("ChphcHBzL3YxL2FwcHNfc2VydmljZS5wcm90bxIHYXBwcy52MSKRBAoDQXBwEgoKAmlkGAEgASgJEhEKCXRlbmFudF9pZBgCIAEoCRISCgpwcm9qZWN0X2lkGAMgASgJEgwKBG5hbWUYBCABKAkSFAoMbWFuaWZlc3RfdXJsGAUgASgJEhUKDW1hbmlmZXN0X2hhc2gYBiABKAkSJAoIbWFuaWZlc3QYByABKAsyEi5hcHBzLnYxLkFwcENvbmZpZxIpCghzZXR0aW5ncxgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIbWFwcGluZ3MYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg8KB2VuYWJsZWQYCiABKAgSMAoMaW5zdGFsbGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIZCgxpbnN0YWxsZWRfYnkYDCABKAlIAIgBARIuCgp1cGRhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI1ChRsYXN0X3B1c2hlZF9tYXBwaW5ncxgOIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSNwoObGFzdF9wdXNoZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCDwoNX2luc3RhbGxlZF9ieUIRCg9fbGFzdF9wdXNoZWRfYXQimQEKDVNvdXJjZU1hcHBpbmcSEAoIdG9fbW9kZWwYASABKAkSEwoLbmF0dXJhbF9rZXkYAiABKAkSMgoGZmllbGRzGAMgAygLMiIuYXBwcy52MS5Tb3VyY2VNYXBwaW5nLkZpZWxkc0VudHJ5Gi0KC0ZpZWxkc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEilQEKC1NpbmtNYXBwaW5nEhAKCHRvX21vZGVsGAEgASgJEhMKC25hdHVyYWxfa2V5GAIgASgJEjAKBmZpZWxkcxgDIAMoCzIgLmFwcHMudjEuU2lua01hcHBpbmcuRmllbGRzRW50cnkaLQoLRmllbGRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASI0ChRQbGFjZW1lbnRGaWVsZENob2ljZRINCgVtb2RlbBgBIAEoCRINCgVmaWVsZBgCIAEoCSLdAgoRQXBwSW5zdGFsbFByZXZpZXcSJAoIbWFuaWZlc3QYASABKAsyEi5hcHBzLnYxLkFwcENvbmZpZxIVCg1tYW5pZmVzdF9oYXNoGAIgASgJEhwKFG9wZXJhdGlvbnNfdG9fY3JlYXRlGAMgAygJEhcKD2hvb2tzX3RvX2NyZWF0ZRgEIAMoCRIcChRwbGFjZW1lbnRzX3RvX2NyZWF0ZRgFIAMoCRI6ChNjcmVkZW50aWFsX3N0cmF0ZWd5GAYgASgOMh0uYXBwcy52MS5DcmVkZW50aWFscy5TdHJhdGVneRIbChNzb3VyY2VfdHlwZXNfdG9fbWFwGAcgAygJEh0KFXNpbmtfY29udHJhY3RzX3RvX21hcBgIIAMoCRIpCiFwbGFjZW1lbnRzX3JlcXVpcmluZ19maWVsZF9jaG9pY2UYCSADKAkSEwoLd2ViaG9va191cmwYCiABKAkiOAoPTGlzdEFwcHNSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJIi4KEExpc3RBcHBzUmVzcG9uc2USGgoEYXBwcxgBIAMoCzIMLmFwcHMudjEuQXBwIkQKDUdldEFwcFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCSIrCg5HZXRBcHBSZXNwb25zZRIZCgNhcHAYASABKAsyDC5hcHBzLnYxLkFwcCJQChFJbnN0YWxsQXBwUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIUCgxtYW5pZmVzdF91cmwYAyABKAkiiQEKEkluc3RhbGxBcHBSZXNwb25zZRIWCg5pbnN0YWxsX3RpY2tldBgBIAEoCRIrCgdwcmV2aWV3GAIgASgLMhouYXBwcy52MS5BcHBJbnN0YWxsUHJldmlldxIuCgpleHBpcmVzX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCL/BAoYQ29uZmlybUluc3RhbGxBcHBSZXF1ZXN0EhYKDmluc3RhbGxfdGlja2V0GAEgASgJEk4KD3NvdXJjZV9tYXBwaW5ncxgCIAMoCzI1LmFwcHMudjEuQ29uZmlybUluc3RhbGxBcHBSZXF1ZXN0LlNvdXJjZU1hcHBpbmdzRW50cnkSSgoNc2lua19tYXBwaW5ncxgDIAMoCzIzLmFwcHMudjEuQ29uZmlybUluc3RhbGxBcHBSZXF1ZXN0LlNpbmtNYXBwaW5nc0VudHJ5Ei4KCHNldHRpbmdzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEl0KF3BsYWNlbWVudF9maWVsZF9jaG9pY2VzGAUgAygLMjwuYXBwcy52MS5Db25maXJtSW5zdGFsbEFwcFJlcXVlc3QuUGxhY2VtZW50RmllbGRDaG9pY2VzRW50cnkSHAoUdXBkYXRlX3B1c2hfc25hcHNob3QYBiABKAgaTQoTU291cmNlTWFwcGluZ3NFbnRyeRILCgNrZXkYASABKAkSJQoFdmFsdWUYAiABKAsyFi5hcHBzLnYxLlNvdXJjZU1hcHBpbmc6AjgBGkkKEVNpbmtNYXBwaW5nc0VudHJ5EgsKA2tleRgBIAEoCRIjCgV2YWx1ZRgCIAEoCzIULmFwcHMudjEuU2lua01hcHBpbmc6AjgBGlsKGlBsYWNlbWVudEZpZWxkQ2hvaWNlc0VudHJ5EgsKA2tleRgBIAEoCRIsCgV2YWx1ZRgCIAEoCzIdLmFwcHMudjEuUGxhY2VtZW50RmllbGRDaG9pY2U6AjgBQgsKCV9zZXR0aW5ncyI2ChlDb25maXJtSW5zdGFsbEFwcFJlc3BvbnNlEhkKA2FwcBgBIAEoCzIMLmFwcHMudjEuQXBwIkcKEFVwZGF0ZUFwcFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCSKWAQoRVXBkYXRlQXBwUmVzcG9uc2USGQoRbmV3X21hbmlmZXN0X2hhc2gYASABKAkSKAoMbmV3X21hbmlmZXN0GAIgASgLMhIuYXBwcy52MS5BcHBDb25maWcSKAoHY2hhbmdlcxgDIAMoCzIXLmFwcHMudjEuTWFuaWZlc3RDaGFuZ2USEgoKbm9fY2hhbmdlcxgEIAEoCCLLAQoOTWFuaWZlc3RDaGFuZ2USLAoFY2xhc3MYASABKA4yHS5hcHBzLnYxLk1hbmlmZXN0Q2hhbmdlLkNsYXNzEgwKBHBhdGgYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkiaAoFQ2xhc3MSFQoRQ0xBU1NfVU5TUEVDSUZJRUQQABITCg9DTEFTU19TQUZFX0FVVE8QARIfChtDTEFTU19SRVFVSVJFU19DT05GSVJNQVRJT04QAhISCg5DTEFTU19SRUpFQ1RFRBADIngKF0NvbmZpcm1VcGRhdGVBcHBSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSGQoRbmV3X21hbmlmZXN0X2hhc2gYBCABKAkSDQoFZm9yY2UYBSABKAgiNQoYQ29uZmlybVVwZGF0ZUFwcFJlc3BvbnNlEhkKA2FwcBgBIAEoCzIMLmFwcHMudjEuQXBwIlkKE1VuaW5zdGFsbEFwcFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRINCgVmb3JjZRgEIAEoCCI3ChRVbmluc3RhbGxBcHBSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg4KBmZvcmNlZBgCIAEoCCLmBAoUU2V0QXBwTWFwcGluZ1JlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRJKCg9zb3VyY2VfbWFwcGluZ3MYBCADKAsyMS5hcHBzLnYxLlNldEFwcE1hcHBpbmdSZXF1ZXN0LlNvdXJjZU1hcHBpbmdzRW50cnkSRgoNc2lua19tYXBwaW5ncxgFIAMoCzIvLmFwcHMudjEuU2V0QXBwTWFwcGluZ1JlcXVlc3QuU2lua01hcHBpbmdzRW50cnkSWQoXcGxhY2VtZW50X2ZpZWxkX2Nob2ljZXMYBiADKAsyOC5hcHBzLnYxLlNldEFwcE1hcHBpbmdSZXF1ZXN0LlBsYWNlbWVudEZpZWxkQ2hvaWNlc0VudHJ5EhwKFHVwZGF0ZV9wdXNoX3NuYXBzaG90GAcgASgIEhUKDXNuYXBzaG90X29ubHkYCCABKAgaTQoTU291cmNlTWFwcGluZ3NFbnRyeRILCgNrZXkYASABKAkSJQoFdmFsdWUYAiABKAsyFi5hcHBzLnYxLlNvdXJjZU1hcHBpbmc6AjgBGkkKEVNpbmtNYXBwaW5nc0VudHJ5EgsKA2tleRgBIAEoCRIjCgV2YWx1ZRgCIAEoCzIULmFwcHMudjEuU2lua01hcHBpbmc6AjgBGlsKGlBsYWNlbWVudEZpZWxkQ2hvaWNlc0VudHJ5EgsKA2tleRgBIAEoCRIsCgV2YWx1ZRgCIAEoCzIdLmFwcHMudjEuUGxhY2VtZW50RmllbGRDaG9pY2U6AjgBIjIKFVNldEFwcE1hcHBpbmdSZXNwb25zZRIZCgNhcHAYASABKAsyDC5hcHBzLnYxLkFwcCJUChdWYWxpZGF0ZU1hbmlmZXN0UmVxdWVzdBIWCgxtYW5pZmVzdF91cmwYASABKAlIABIXCg1tYW5pZmVzdF9qc29uGAIgASgJSABCCAoGc291cmNlIrUBCg9WYWxpZGF0aW9uSXNzdWUSMwoIc2V2ZXJpdHkYASABKA4yIS5hcHBzLnYxLlZhbGlkYXRpb25Jc3N1ZS5TZXZlcml0eRIMCgRwYXRoGAIgASgJEg8KB21lc3NhZ2UYAyABKAkiTgoIU2V2ZXJpdHkSGAoUU0VWRVJJVFlfVU5TUEVDSUZJRUQQABISCg5TRVZFUklUWV9FUlJPUhABEhQKEFNFVkVSSVRZX1dBUk5JTkcQAiJQChhWYWxpZGF0ZU1hbmlmZXN0UmVzcG9uc2USKAoGaXNzdWVzGAEgAygLMhguYXBwcy52MS5WYWxpZGF0aW9uSXNzdWUSCgoCb2sYAiABKAgijgEKF1RyaWdnZXJPcGVyYXRpb25SZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhUKDW9wZXJhdGlvbl9rZXkYAyABKAkSKwoFaW5wdXQYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQFCCAoGX2lucHV0IjAKGFRyaWdnZXJPcGVyYXRpb25SZXNwb25zZRIUCgxleGVjdXRpb25faWQYASABKAkifQoZQ29tcGxldGVBcHBJbnN0YWxsUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghhcHBfbmFtZRgDIAEoCRInCgZ2YWx1ZXMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ii0KGkNvbXBsZXRlQXBwSW5zdGFsbFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgifAoaUm90YXRlQXBwQ3JlZGVudGlhbFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkSEgoKZmllbGRfbmFtZRgEIAEoCRIRCglwbGFpbnRleHQYBSABKAwiLgobUm90YXRlQXBwQ3JlZGVudGlhbFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiWAodR2V0QXBwQ3JlZGVudGlhbFN0cnVjdFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkiXAoeR2V0QXBwQ3JlZGVudGlhbFN0cnVjdFJlc3BvbnNlEicKBnZhbHVlcxgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEQoJcG9wdWxhdGVkGAIgASgIImQKKUFwcEluc3RhbGxhdGlvblNlcnZpY2VVbmluc3RhbGxBcHBSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhAKCGFwcF9uYW1lGAMgASgJIj0KKkFwcEluc3RhbGxhdGlvblNlcnZpY2VVbmluc3RhbGxBcHBSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIlUKGklzc3VlRXhjaGFuZ2VUaWNrZXRSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhAKCGFwcF9uYW1lGAMgASgJIl0KG0lzc3VlRXhjaGFuZ2VUaWNrZXRSZXNwb25zZRIOCgZ0aWNrZXQYASABKAkSLgoKZXhwaXJlc19hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiLQobUmVkZWVtRXhjaGFuZ2VUaWNrZXRSZXF1ZXN0Eg4KBnRpY2tldBgBIAEoCSJkChxSZWRlZW1FeGNoYW5nZVRpY2tldFJlc3BvbnNlEhQKDHNjb3BlZF90b2tlbhgBIAEoCRIuCgpleHBpcmVzX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIyChlSZWZyZXNoU2NvcGVkVG9rZW5SZXF1ZXN0EhUKDWN1cnJlbnRfdG9rZW4YASABKAkiYgoaUmVmcmVzaFNjb3BlZFRva2VuUmVzcG9uc2USFAoMc2NvcGVkX3Rva2VuGAEgASgJEi4KCmV4cGlyZXNfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIvsECglBcHBTdGF0dXMSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkSNQoMbGFzdF9zeW5jX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEiIKFWxhc3Rfc3luY19kdXJhdGlvbl9tcxgFIAEoA0gBiAEBEiMKFmxhc3Rfc3luY19yZWNvcmRfY291bnQYBiABKANIAogBARIXCgpsYXN0X2Vycm9yGAcgASgJSAOIAQESNgoNbGFzdF9lcnJvcl9hdBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARIbChNzdWJzY3JpcHRpb25faGVhbHRoGAkgASgJEhMKC2F1dGhfc3RhdHVzGAogASgJEh4KEWRlbGV0aW9uX3N0cmF0ZWd5GAsgASgJSAWIAQESKwoFZXh0cmEYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAaIAQESLgoKdXBkYXRlZF9hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoOdXBkYXRlZF9ieV9qdGkYDiABKAlIB4gBAUIPCg1fbGFzdF9zeW5jX2F0QhgKFl9sYXN0X3N5bmNfZHVyYXRpb25fbXNCGQoXX2xhc3Rfc3luY19yZWNvcmRfY291bnRCDQoLX2xhc3RfZXJyb3JCEAoOX2xhc3RfZXJyb3JfYXRCFAoSX2RlbGV0aW9uX3N0cmF0ZWd5QggKBl9leHRyYUIRCg9fdXBkYXRlZF9ieV9qdGkiTgoTR2V0QXBwU3RhdHVzUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghhcHBfbmFtZRgDIAEoCSI6ChRHZXRBcHBTdGF0dXNSZXNwb25zZRIiCgZzdGF0dXMYASABKAsyEi5hcHBzLnYxLkFwcFN0YXR1cyI8ChZVcHNlcnRBcHBTdGF0dXNSZXF1ZXN0EiIKBnN0YXR1cxgBIAEoCzISLmFwcHMudjEuQXBwU3RhdHVzIioKF1Vwc2VydEFwcFN0YXR1c1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgi5gEKCEFwcEV2ZW50EgoKAmlkGAEgASgJEhEKCXRlbmFudF9pZBgCIAEoCRISCgpwcm9qZWN0X2lkGAMgASgJEhAKCGFwcF9uYW1lGAQgASgJEg0KBWV2ZW50GAUgASgJEhIKBWFjdG9yGAYgASgJSACIAQESLAoGZGV0YWlsGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEi8KC29jY3VycmVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIICgZfYWN0b3JCCQoHX2RldGFpbCJeChRMaXN0QXBwRXZlbnRzUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghhcHBfbmFtZRgDIAEoCRINCgVsaW1pdBgEIAEoBSI6ChVMaXN0QXBwRXZlbnRzUmVzcG9uc2USIQoGZXZlbnRzGAEgAygLMhEuYXBwcy52MS5BcHBFdmVudDKYBgoLQXBwc1NlcnZpY2USPwoITGlzdEFwcHMSGC5hcHBzLnYxLkxpc3RBcHBzUmVxdWVzdBoZLmFwcHMudjEuTGlzdEFwcHNSZXNwb25zZRI5CgZHZXRBcHASFi5hcHBzLnYxLkdldEFwcFJlcXVlc3QaFy5hcHBzLnYxLkdldEFwcFJlc3BvbnNlEkUKCkluc3RhbGxBcHASGi5hcHBzLnYxLkluc3RhbGxBcHBSZXF1ZXN0GhsuYXBwcy52MS5JbnN0YWxsQXBwUmVzcG9uc2USWgoRQ29uZmlybUluc3RhbGxBcHASIS5hcHBzLnYxLkNvbmZpcm1JbnN0YWxsQXBwUmVxdWVzdBoiLmFwcHMudjEuQ29uZmlybUluc3RhbGxBcHBSZXNwb25zZRJCCglVcGRhdGVBcHASGS5hcHBzLnYxLlVwZGF0ZUFwcFJlcXVlc3QaGi5hcHBzLnYxLlVwZGF0ZUFwcFJlc3BvbnNlElcKEENvbmZpcm1VcGRhdGVBcHASIC5hcHBzLnYxLkNvbmZpcm1VcGRhdGVBcHBSZXF1ZXN0GiEuYXBwcy52MS5Db25maXJtVXBkYXRlQXBwUmVzcG9uc2USSwoMVW5pbnN0YWxsQXBwEhwuYXBwcy52MS5Vbmluc3RhbGxBcHBSZXF1ZXN0Gh0uYXBwcy52MS5Vbmluc3RhbGxBcHBSZXNwb25zZRJOCg1TZXRBcHBNYXBwaW5nEh0uYXBwcy52MS5TZXRBcHBNYXBwaW5nUmVxdWVzdBoeLmFwcHMudjEuU2V0QXBwTWFwcGluZ1Jlc3BvbnNlElcKEFZhbGlkYXRlTWFuaWZlc3QSIC5hcHBzLnYxLlZhbGlkYXRlTWFuaWZlc3RSZXF1ZXN0GiEuYXBwcy52MS5WYWxpZGF0ZU1hbmlmZXN0UmVzcG9uc2USVwoQVHJpZ2dlck9wZXJhdGlvbhIgLmFwcHMudjEuVHJpZ2dlck9wZXJhdGlvblJlcXVlc3QaIS5hcHBzLnYxLlRyaWdnZXJPcGVyYXRpb25SZXNwb25zZTK9AwoWQXBwSW5zdGFsbGF0aW9uU2VydmljZRJdChJDb21wbGV0ZUFwcEluc3RhbGwSIi5hcHBzLnYxLkNvbXBsZXRlQXBwSW5zdGFsbFJlcXVlc3QaIy5hcHBzLnYxLkNvbXBsZXRlQXBwSW5zdGFsbFJlc3BvbnNlEmAKE1JvdGF0ZUFwcENyZWRlbnRpYWwSIy5hcHBzLnYxLlJvdGF0ZUFwcENyZWRlbnRpYWxSZXF1ZXN0GiQuYXBwcy52MS5Sb3RhdGVBcHBDcmVkZW50aWFsUmVzcG9uc2USaQoWR2V0QXBwQ3JlZGVudGlhbFN0cnVjdBImLmFwcHMudjEuR2V0QXBwQ3JlZGVudGlhbFN0cnVjdFJlcXVlc3QaJy5hcHBzLnYxLkdldEFwcENyZWRlbnRpYWxTdHJ1Y3RSZXNwb25zZRJ3CgxVbmluc3RhbGxBcHASMi5hcHBzLnYxLkFwcEluc3RhbGxhdGlvblNlcnZpY2VVbmluc3RhbGxBcHBSZXF1ZXN0GjMuYXBwcy52MS5BcHBJbnN0YWxsYXRpb25TZXJ2aWNlVW5pbnN0YWxsQXBwUmVzcG9uc2UytgIKDkFwcEF1dGhTZXJ2aWNlEmAKE0lzc3VlRXhjaGFuZ2VUaWNrZXQSIy5hcHBzLnYxLklzc3VlRXhjaGFuZ2VUaWNrZXRSZXF1ZXN0GiQuYXBwcy52MS5Jc3N1ZUV4Y2hhbmdlVGlja2V0UmVzcG9uc2USYwoUUmVkZWVtRXhjaGFuZ2VUaWNrZXQSJC5hcHBzLnYxLlJlZGVlbUV4Y2hhbmdlVGlja2V0UmVxdWVzdBolLmFwcHMudjEuUmVkZWVtRXhjaGFuZ2VUaWNrZXRSZXNwb25zZRJdChJSZWZyZXNoU2NvcGVkVG9rZW4SIi5hcHBzLnYxLlJlZnJlc2hTY29wZWRUb2tlblJlcXVlc3QaIy5hcHBzLnYxLlJlZnJlc2hTY29wZWRUb2tlblJlc3BvbnNlMoUCChBBcHBTdGF0dXNTZXJ2aWNlEksKDEdldEFwcFN0YXR1cxIcLmFwcHMudjEuR2V0QXBwU3RhdHVzUmVxdWVzdBodLmFwcHMudjEuR2V0QXBwU3RhdHVzUmVzcG9uc2USVAoPVXBzZXJ0QXBwU3RhdHVzEh8uYXBwcy52MS5VcHNlcnRBcHBTdGF0dXNSZXF1ZXN0GiAuYXBwcy52MS5VcHNlcnRBcHBTdGF0dXNSZXNwb25zZRJOCg1MaXN0QXBwRXZlbnRzEh0uYXBwcy52MS5MaXN0QXBwRXZlbnRzUmVxdWVzdBoeLmFwcHMudjEuTGlzdEFwcEV2ZW50c1Jlc3BvbnNlQjVaM2dpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9hcHBzL3YxO2FwcHN2MWIGcHJvdG8z", [file_apps_v1_apps, file_google_protobuf_struct, file_google_protobuf_timestamp]);
14
+ fileDesc("ChphcHBzL3YxL2FwcHNfc2VydmljZS5wcm90bxIHYXBwcy52MSKRBAoDQXBwEgoKAmlkGAEgASgJEhEKCXRlbmFudF9pZBgCIAEoCRISCgpwcm9qZWN0X2lkGAMgASgJEgwKBG5hbWUYBCABKAkSFAoMbWFuaWZlc3RfdXJsGAUgASgJEhUKDW1hbmlmZXN0X2hhc2gYBiABKAkSJAoIbWFuaWZlc3QYByABKAsyEi5hcHBzLnYxLkFwcENvbmZpZxIpCghzZXR0aW5ncxgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIbWFwcGluZ3MYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg8KB2VuYWJsZWQYCiABKAgSMAoMaW5zdGFsbGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIZCgxpbnN0YWxsZWRfYnkYDCABKAlIAIgBARIuCgp1cGRhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI1ChRsYXN0X3B1c2hlZF9tYXBwaW5ncxgOIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSNwoObGFzdF9wdXNoZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCDwoNX2luc3RhbGxlZF9ieUIRCg9fbGFzdF9wdXNoZWRfYXQimQEKDVNvdXJjZU1hcHBpbmcSEAoIdG9fbW9kZWwYASABKAkSEwoLbmF0dXJhbF9rZXkYAiABKAkSMgoGZmllbGRzGAMgAygLMiIuYXBwcy52MS5Tb3VyY2VNYXBwaW5nLkZpZWxkc0VudHJ5Gi0KC0ZpZWxkc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEilQEKC1NpbmtNYXBwaW5nEhAKCHRvX21vZGVsGAEgASgJEhMKC25hdHVyYWxfa2V5GAIgASgJEjAKBmZpZWxkcxgDIAMoCzIgLmFwcHMudjEuU2lua01hcHBpbmcuRmllbGRzRW50cnkaLQoLRmllbGRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASI0ChRQbGFjZW1lbnRGaWVsZENob2ljZRINCgVtb2RlbBgBIAEoCRINCgVmaWVsZBgCIAEoCSLdAgoRQXBwSW5zdGFsbFByZXZpZXcSJAoIbWFuaWZlc3QYASABKAsyEi5hcHBzLnYxLkFwcENvbmZpZxIVCg1tYW5pZmVzdF9oYXNoGAIgASgJEhwKFG9wZXJhdGlvbnNfdG9fY3JlYXRlGAMgAygJEhcKD2hvb2tzX3RvX2NyZWF0ZRgEIAMoCRIcChRwbGFjZW1lbnRzX3RvX2NyZWF0ZRgFIAMoCRI6ChNjcmVkZW50aWFsX3N0cmF0ZWd5GAYgASgOMh0uYXBwcy52MS5DcmVkZW50aWFscy5TdHJhdGVneRIbChNzb3VyY2VfdHlwZXNfdG9fbWFwGAcgAygJEh0KFXNpbmtfY29udHJhY3RzX3RvX21hcBgIIAMoCRIpCiFwbGFjZW1lbnRzX3JlcXVpcmluZ19maWVsZF9jaG9pY2UYCSADKAkSEwoLd2ViaG9va191cmwYCiABKAkiOAoPTGlzdEFwcHNSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJIi4KEExpc3RBcHBzUmVzcG9uc2USGgoEYXBwcxgBIAMoCzIMLmFwcHMudjEuQXBwIkQKDUdldEFwcFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCSIrCg5HZXRBcHBSZXNwb25zZRIZCgNhcHAYASABKAsyDC5hcHBzLnYxLkFwcCJQChFJbnN0YWxsQXBwUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIUCgxtYW5pZmVzdF91cmwYAyABKAkiiQEKEkluc3RhbGxBcHBSZXNwb25zZRIWCg5pbnN0YWxsX3RpY2tldBgBIAEoCRIrCgdwcmV2aWV3GAIgASgLMhouYXBwcy52MS5BcHBJbnN0YWxsUHJldmlldxIuCgpleHBpcmVzX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCL/BAoYQ29uZmlybUluc3RhbGxBcHBSZXF1ZXN0EhYKDmluc3RhbGxfdGlja2V0GAEgASgJEk4KD3NvdXJjZV9tYXBwaW5ncxgCIAMoCzI1LmFwcHMudjEuQ29uZmlybUluc3RhbGxBcHBSZXF1ZXN0LlNvdXJjZU1hcHBpbmdzRW50cnkSSgoNc2lua19tYXBwaW5ncxgDIAMoCzIzLmFwcHMudjEuQ29uZmlybUluc3RhbGxBcHBSZXF1ZXN0LlNpbmtNYXBwaW5nc0VudHJ5Ei4KCHNldHRpbmdzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEl0KF3BsYWNlbWVudF9maWVsZF9jaG9pY2VzGAUgAygLMjwuYXBwcy52MS5Db25maXJtSW5zdGFsbEFwcFJlcXVlc3QuUGxhY2VtZW50RmllbGRDaG9pY2VzRW50cnkSHAoUdXBkYXRlX3B1c2hfc25hcHNob3QYBiABKAgaTQoTU291cmNlTWFwcGluZ3NFbnRyeRILCgNrZXkYASABKAkSJQoFdmFsdWUYAiABKAsyFi5hcHBzLnYxLlNvdXJjZU1hcHBpbmc6AjgBGkkKEVNpbmtNYXBwaW5nc0VudHJ5EgsKA2tleRgBIAEoCRIjCgV2YWx1ZRgCIAEoCzIULmFwcHMudjEuU2lua01hcHBpbmc6AjgBGlsKGlBsYWNlbWVudEZpZWxkQ2hvaWNlc0VudHJ5EgsKA2tleRgBIAEoCRIsCgV2YWx1ZRgCIAEoCzIdLmFwcHMudjEuUGxhY2VtZW50RmllbGRDaG9pY2U6AjgBQgsKCV9zZXR0aW5ncyI2ChlDb25maXJtSW5zdGFsbEFwcFJlc3BvbnNlEhkKA2FwcBgBIAEoCzIMLmFwcHMudjEuQXBwIkcKEFVwZGF0ZUFwcFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCSKWAQoRVXBkYXRlQXBwUmVzcG9uc2USGQoRbmV3X21hbmlmZXN0X2hhc2gYASABKAkSKAoMbmV3X21hbmlmZXN0GAIgASgLMhIuYXBwcy52MS5BcHBDb25maWcSKAoHY2hhbmdlcxgDIAMoCzIXLmFwcHMudjEuTWFuaWZlc3RDaGFuZ2USEgoKbm9fY2hhbmdlcxgEIAEoCCLLAQoOTWFuaWZlc3RDaGFuZ2USLAoFY2xhc3MYASABKA4yHS5hcHBzLnYxLk1hbmlmZXN0Q2hhbmdlLkNsYXNzEgwKBHBhdGgYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkiaAoFQ2xhc3MSFQoRQ0xBU1NfVU5TUEVDSUZJRUQQABITCg9DTEFTU19TQUZFX0FVVE8QARIfChtDTEFTU19SRVFVSVJFU19DT05GSVJNQVRJT04QAhISCg5DTEFTU19SRUpFQ1RFRBADIngKF0NvbmZpcm1VcGRhdGVBcHBSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSGQoRbmV3X21hbmlmZXN0X2hhc2gYBCABKAkSDQoFZm9yY2UYBSABKAgiNQoYQ29uZmlybVVwZGF0ZUFwcFJlc3BvbnNlEhkKA2FwcBgBIAEoCzIMLmFwcHMudjEuQXBwIlkKE1VuaW5zdGFsbEFwcFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRINCgVmb3JjZRgEIAEoCCI3ChRVbmluc3RhbGxBcHBSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg4KBmZvcmNlZBgCIAEoCCLmBAoUU2V0QXBwTWFwcGluZ1JlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRJKCg9zb3VyY2VfbWFwcGluZ3MYBCADKAsyMS5hcHBzLnYxLlNldEFwcE1hcHBpbmdSZXF1ZXN0LlNvdXJjZU1hcHBpbmdzRW50cnkSRgoNc2lua19tYXBwaW5ncxgFIAMoCzIvLmFwcHMudjEuU2V0QXBwTWFwcGluZ1JlcXVlc3QuU2lua01hcHBpbmdzRW50cnkSWQoXcGxhY2VtZW50X2ZpZWxkX2Nob2ljZXMYBiADKAsyOC5hcHBzLnYxLlNldEFwcE1hcHBpbmdSZXF1ZXN0LlBsYWNlbWVudEZpZWxkQ2hvaWNlc0VudHJ5EhwKFHVwZGF0ZV9wdXNoX3NuYXBzaG90GAcgASgIEhUKDXNuYXBzaG90X29ubHkYCCABKAgaTQoTU291cmNlTWFwcGluZ3NFbnRyeRILCgNrZXkYASABKAkSJQoFdmFsdWUYAiABKAsyFi5hcHBzLnYxLlNvdXJjZU1hcHBpbmc6AjgBGkkKEVNpbmtNYXBwaW5nc0VudHJ5EgsKA2tleRgBIAEoCRIjCgV2YWx1ZRgCIAEoCzIULmFwcHMudjEuU2lua01hcHBpbmc6AjgBGlsKGlBsYWNlbWVudEZpZWxkQ2hvaWNlc0VudHJ5EgsKA2tleRgBIAEoCRIsCgV2YWx1ZRgCIAEoCzIdLmFwcHMudjEuUGxhY2VtZW50RmllbGRDaG9pY2U6AjgBIjIKFVNldEFwcE1hcHBpbmdSZXNwb25zZRIZCgNhcHAYASABKAsyDC5hcHBzLnYxLkFwcCJUChdWYWxpZGF0ZU1hbmlmZXN0UmVxdWVzdBIWCgxtYW5pZmVzdF91cmwYASABKAlIABIXCg1tYW5pZmVzdF9qc29uGAIgASgJSABCCAoGc291cmNlIrUBCg9WYWxpZGF0aW9uSXNzdWUSMwoIc2V2ZXJpdHkYASABKA4yIS5hcHBzLnYxLlZhbGlkYXRpb25Jc3N1ZS5TZXZlcml0eRIMCgRwYXRoGAIgASgJEg8KB21lc3NhZ2UYAyABKAkiTgoIU2V2ZXJpdHkSGAoUU0VWRVJJVFlfVU5TUEVDSUZJRUQQABISCg5TRVZFUklUWV9FUlJPUhABEhQKEFNFVkVSSVRZX1dBUk5JTkcQAiJQChhWYWxpZGF0ZU1hbmlmZXN0UmVzcG9uc2USKAoGaXNzdWVzGAEgAygLMhguYXBwcy52MS5WYWxpZGF0aW9uSXNzdWUSCgoCb2sYAiABKAgijgEKF1RyaWdnZXJPcGVyYXRpb25SZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhUKDW9wZXJhdGlvbl9rZXkYAyABKAkSKwoFaW5wdXQYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQFCCAoGX2lucHV0IjAKGFRyaWdnZXJPcGVyYXRpb25SZXNwb25zZRIUCgxleGVjdXRpb25faWQYASABKAkifQoZQ29tcGxldGVBcHBJbnN0YWxsUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghhcHBfbmFtZRgDIAEoCRInCgZ2YWx1ZXMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ii0KGkNvbXBsZXRlQXBwSW5zdGFsbFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgifAoaUm90YXRlQXBwQ3JlZGVudGlhbFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkSEgoKZmllbGRfbmFtZRgEIAEoCRIRCglwbGFpbnRleHQYBSABKAwiLgobUm90YXRlQXBwQ3JlZGVudGlhbFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiWAodR2V0QXBwQ3JlZGVudGlhbFN0cnVjdFJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkiXAoeR2V0QXBwQ3JlZGVudGlhbFN0cnVjdFJlc3BvbnNlEicKBnZhbHVlcxgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEQoJcG9wdWxhdGVkGAIgASgIImQKKUFwcEluc3RhbGxhdGlvblNlcnZpY2VVbmluc3RhbGxBcHBSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhAKCGFwcF9uYW1lGAMgASgJIj0KKkFwcEluc3RhbGxhdGlvblNlcnZpY2VVbmluc3RhbGxBcHBSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIlUKGklzc3VlRXhjaGFuZ2VUaWNrZXRSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhAKCGFwcF9uYW1lGAMgASgJIl0KG0lzc3VlRXhjaGFuZ2VUaWNrZXRSZXNwb25zZRIOCgZ0aWNrZXQYASABKAkSLgoKZXhwaXJlc19hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiLQobUmVkZWVtRXhjaGFuZ2VUaWNrZXRSZXF1ZXN0Eg4KBnRpY2tldBgBIAEoCSJkChxSZWRlZW1FeGNoYW5nZVRpY2tldFJlc3BvbnNlEhQKDHNjb3BlZF90b2tlbhgBIAEoCRIuCgpleHBpcmVzX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIyChlSZWZyZXNoU2NvcGVkVG9rZW5SZXF1ZXN0EhUKDWN1cnJlbnRfdG9rZW4YASABKAkiYgoaUmVmcmVzaFNjb3BlZFRva2VuUmVzcG9uc2USFAoMc2NvcGVkX3Rva2VuGAEgASgJEi4KCmV4cGlyZXNfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIvsECglBcHBTdGF0dXMSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkSNQoMbGFzdF9zeW5jX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEiIKFWxhc3Rfc3luY19kdXJhdGlvbl9tcxgFIAEoA0gBiAEBEiMKFmxhc3Rfc3luY19yZWNvcmRfY291bnQYBiABKANIAogBARIXCgpsYXN0X2Vycm9yGAcgASgJSAOIAQESNgoNbGFzdF9lcnJvcl9hdBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARIbChNzdWJzY3JpcHRpb25faGVhbHRoGAkgASgJEhMKC2F1dGhfc3RhdHVzGAogASgJEh4KEWRlbGV0aW9uX3N0cmF0ZWd5GAsgASgJSAWIAQESKwoFZXh0cmEYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAaIAQESLgoKdXBkYXRlZF9hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoOdXBkYXRlZF9ieV9qdGkYDiABKAlIB4gBAUIPCg1fbGFzdF9zeW5jX2F0QhgKFl9sYXN0X3N5bmNfZHVyYXRpb25fbXNCGQoXX2xhc3Rfc3luY19yZWNvcmRfY291bnRCDQoLX2xhc3RfZXJyb3JCEAoOX2xhc3RfZXJyb3JfYXRCFAoSX2RlbGV0aW9uX3N0cmF0ZWd5QggKBl9leHRyYUIRCg9fdXBkYXRlZF9ieV9qdGkiTgoTR2V0QXBwU3RhdHVzUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIQCghhcHBfbmFtZRgDIAEoCSI6ChRHZXRBcHBTdGF0dXNSZXNwb25zZRIiCgZzdGF0dXMYASABKAsyEi5hcHBzLnYxLkFwcFN0YXR1cyI8ChZVcHNlcnRBcHBTdGF0dXNSZXF1ZXN0EiIKBnN0YXR1cxgBIAEoCzISLmFwcHMudjEuQXBwU3RhdHVzIioKF1Vwc2VydEFwcFN0YXR1c1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgi5gEKCEFwcEV2ZW50EgoKAmlkGAEgASgJEhEKCXRlbmFudF9pZBgCIAEoCRISCgpwcm9qZWN0X2lkGAMgASgJEhAKCGFwcF9uYW1lGAQgASgJEg0KBWV2ZW50GAUgASgJEhIKBWFjdG9yGAYgASgJSACIAQESLAoGZGV0YWlsGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEi8KC29jY3VycmVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIICgZfYWN0b3JCCQoHX2RldGFpbCLHAQoUTGlzdEFwcEV2ZW50c1JlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEAoIYXBwX25hbWUYAyABKAkSEgoFYWZ0ZXIYBCABKAlIAIgBARITCgZiZWZvcmUYBSABKAlIAYgBARISCgVmaXJzdBgGIAEoBUgCiAEBEhEKBGxhc3QYByABKAVIA4gBAUIICgZfYWZ0ZXJCCQoHX2JlZm9yZUIICgZfZmlyc3RCBwoFX2xhc3QihgEKFUxpc3RBcHBFdmVudHNSZXNwb25zZRIhCgZldmVudHMYASADKAsyES5hcHBzLnYxLkFwcEV2ZW50EisKCXBhZ2VfaW5mbxgCIAEoCzITLmNvbW1vbi52MS5QYWdlSW5mb0gAiAEBEg8KB2N1cnNvcnMYAyADKAlCDAoKX3BhZ2VfaW5mbzKYBgoLQXBwc1NlcnZpY2USPwoITGlzdEFwcHMSGC5hcHBzLnYxLkxpc3RBcHBzUmVxdWVzdBoZLmFwcHMudjEuTGlzdEFwcHNSZXNwb25zZRI5CgZHZXRBcHASFi5hcHBzLnYxLkdldEFwcFJlcXVlc3QaFy5hcHBzLnYxLkdldEFwcFJlc3BvbnNlEkUKCkluc3RhbGxBcHASGi5hcHBzLnYxLkluc3RhbGxBcHBSZXF1ZXN0GhsuYXBwcy52MS5JbnN0YWxsQXBwUmVzcG9uc2USWgoRQ29uZmlybUluc3RhbGxBcHASIS5hcHBzLnYxLkNvbmZpcm1JbnN0YWxsQXBwUmVxdWVzdBoiLmFwcHMudjEuQ29uZmlybUluc3RhbGxBcHBSZXNwb25zZRJCCglVcGRhdGVBcHASGS5hcHBzLnYxLlVwZGF0ZUFwcFJlcXVlc3QaGi5hcHBzLnYxLlVwZGF0ZUFwcFJlc3BvbnNlElcKEENvbmZpcm1VcGRhdGVBcHASIC5hcHBzLnYxLkNvbmZpcm1VcGRhdGVBcHBSZXF1ZXN0GiEuYXBwcy52MS5Db25maXJtVXBkYXRlQXBwUmVzcG9uc2USSwoMVW5pbnN0YWxsQXBwEhwuYXBwcy52MS5Vbmluc3RhbGxBcHBSZXF1ZXN0Gh0uYXBwcy52MS5Vbmluc3RhbGxBcHBSZXNwb25zZRJOCg1TZXRBcHBNYXBwaW5nEh0uYXBwcy52MS5TZXRBcHBNYXBwaW5nUmVxdWVzdBoeLmFwcHMudjEuU2V0QXBwTWFwcGluZ1Jlc3BvbnNlElcKEFZhbGlkYXRlTWFuaWZlc3QSIC5hcHBzLnYxLlZhbGlkYXRlTWFuaWZlc3RSZXF1ZXN0GiEuYXBwcy52MS5WYWxpZGF0ZU1hbmlmZXN0UmVzcG9uc2USVwoQVHJpZ2dlck9wZXJhdGlvbhIgLmFwcHMudjEuVHJpZ2dlck9wZXJhdGlvblJlcXVlc3QaIS5hcHBzLnYxLlRyaWdnZXJPcGVyYXRpb25SZXNwb25zZTK9AwoWQXBwSW5zdGFsbGF0aW9uU2VydmljZRJdChJDb21wbGV0ZUFwcEluc3RhbGwSIi5hcHBzLnYxLkNvbXBsZXRlQXBwSW5zdGFsbFJlcXVlc3QaIy5hcHBzLnYxLkNvbXBsZXRlQXBwSW5zdGFsbFJlc3BvbnNlEmAKE1JvdGF0ZUFwcENyZWRlbnRpYWwSIy5hcHBzLnYxLlJvdGF0ZUFwcENyZWRlbnRpYWxSZXF1ZXN0GiQuYXBwcy52MS5Sb3RhdGVBcHBDcmVkZW50aWFsUmVzcG9uc2USaQoWR2V0QXBwQ3JlZGVudGlhbFN0cnVjdBImLmFwcHMudjEuR2V0QXBwQ3JlZGVudGlhbFN0cnVjdFJlcXVlc3QaJy5hcHBzLnYxLkdldEFwcENyZWRlbnRpYWxTdHJ1Y3RSZXNwb25zZRJ3CgxVbmluc3RhbGxBcHASMi5hcHBzLnYxLkFwcEluc3RhbGxhdGlvblNlcnZpY2VVbmluc3RhbGxBcHBSZXF1ZXN0GjMuYXBwcy52MS5BcHBJbnN0YWxsYXRpb25TZXJ2aWNlVW5pbnN0YWxsQXBwUmVzcG9uc2UytgIKDkFwcEF1dGhTZXJ2aWNlEmAKE0lzc3VlRXhjaGFuZ2VUaWNrZXQSIy5hcHBzLnYxLklzc3VlRXhjaGFuZ2VUaWNrZXRSZXF1ZXN0GiQuYXBwcy52MS5Jc3N1ZUV4Y2hhbmdlVGlja2V0UmVzcG9uc2USYwoUUmVkZWVtRXhjaGFuZ2VUaWNrZXQSJC5hcHBzLnYxLlJlZGVlbUV4Y2hhbmdlVGlja2V0UmVxdWVzdBolLmFwcHMudjEuUmVkZWVtRXhjaGFuZ2VUaWNrZXRSZXNwb25zZRJdChJSZWZyZXNoU2NvcGVkVG9rZW4SIi5hcHBzLnYxLlJlZnJlc2hTY29wZWRUb2tlblJlcXVlc3QaIy5hcHBzLnYxLlJlZnJlc2hTY29wZWRUb2tlblJlc3BvbnNlMoUCChBBcHBTdGF0dXNTZXJ2aWNlEksKDEdldEFwcFN0YXR1cxIcLmFwcHMudjEuR2V0QXBwU3RhdHVzUmVxdWVzdBodLmFwcHMudjEuR2V0QXBwU3RhdHVzUmVzcG9uc2USVAoPVXBzZXJ0QXBwU3RhdHVzEh8uYXBwcy52MS5VcHNlcnRBcHBTdGF0dXNSZXF1ZXN0GiAuYXBwcy52MS5VcHNlcnRBcHBTdGF0dXNSZXNwb25zZRJOCg1MaXN0QXBwRXZlbnRzEh0uYXBwcy52MS5MaXN0QXBwRXZlbnRzUmVxdWVzdBoeLmFwcHMudjEuTGlzdEFwcEV2ZW50c1Jlc3BvbnNlQjVaM2dpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9hcHBzL3YxO2FwcHN2MWIGcHJvdG8z", [file_apps_v1_apps, file_google_protobuf_struct, file_google_protobuf_timestamp, file_common_v1_pagination]);
14
15
 
15
16
  /**
16
17
  * Describes the message apps.v1.App.
@@ -5,6 +5,7 @@
5
5
  import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
6
  import type { Message } from "@bufbuild/protobuf";
7
7
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
8
+ import type { PageInfo } from "../../common/v1/pagination_pb.js";
8
9
 
9
10
  /**
10
11
  * Describes the file billing/v1/billing.proto.
@@ -1644,14 +1645,24 @@ export declare const TenantBillingStatusItemSchema: GenMessage<TenantBillingStat
1644
1645
  */
1645
1646
  export declare type GetTenantBillingStatusRequest = Message<"billing.v1.GetTenantBillingStatusRequest"> & {
1646
1647
  /**
1647
- * @generated from field: int32 limit = 1;
1648
+ * @generated from field: optional string after = 1;
1648
1649
  */
1649
- limit: number;
1650
+ after?: string | undefined;
1650
1651
 
1651
1652
  /**
1652
- * @generated from field: int32 offset = 2;
1653
+ * @generated from field: optional string before = 2;
1653
1654
  */
1654
- offset: number;
1655
+ before?: string | undefined;
1656
+
1657
+ /**
1658
+ * @generated from field: optional int32 first = 3;
1659
+ */
1660
+ first?: number | undefined;
1661
+
1662
+ /**
1663
+ * @generated from field: optional int32 last = 4;
1664
+ */
1665
+ last?: number | undefined;
1655
1666
  };
1656
1667
 
1657
1668
  /**
@@ -1673,6 +1684,16 @@ export declare type GetTenantBillingStatusResponse = Message<"billing.v1.GetTena
1673
1684
  * @generated from field: int32 total = 2;
1674
1685
  */
1675
1686
  total: number;
1687
+
1688
+ /**
1689
+ * @generated from field: optional common.v1.PageInfo page_info = 3;
1690
+ */
1691
+ pageInfo?: PageInfo | undefined;
1692
+
1693
+ /**
1694
+ * @generated from field: repeated string cursors = 4;
1695
+ */
1696
+ cursors: string[];
1676
1697
  };
1677
1698
 
1678
1699
  /**
@@ -4,12 +4,13 @@
4
4
 
5
5
  import { enumDesc, fileDesc, messageDesc, serviceDesc, tsEnum } from "@bufbuild/protobuf/codegenv2";
6
6
  import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
7
+ import { file_common_v1_pagination } from "../../common/v1/pagination_pb.js";
7
8
 
8
9
  /**
9
10
  * Describes the file billing/v1/billing.proto.
10
11
  */
11
12
  export const file_billing_v1_billing = /*@__PURE__*/
12
- fileDesc("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SCmJpbGxpbmcudjEiVwoJUGxhbkxpbWl0Eg4KBm1ldHJpYxgBIAEoCRIQCghpbmNsdWRlZBgCIAEoAxILCgNtYXgYAyABKAMSGwoTb3ZlcmFnZV9wcmljZV9jZW50cxgEIAEoBSKTBQoLQmlsbGluZ1BsYW4SCgoCaWQYASABKAkSDAoEc2x1ZxgCIAEoCRIMCgRuYW1lGAMgASgJEhgKC2Rlc2NyaXB0aW9uGAQgASgJSACIAQESEwoLcHJpY2VfY2VudHMYBSABKAUSNQoQYmlsbGluZ19pbnRlcnZhbBgGIAEoDjIbLmJpbGxpbmcudjEuQmlsbGluZ0ludGVydmFsEhUKCGN1cnJlbmN5GAcgASgJSAGIAQESEQoJaXNfYWN0aXZlGAggASgIEhIKCnNvcnRfb3JkZXIYCSABKAUSJQoGbGltaXRzGBQgAygLMhUuYmlsbGluZy52MS5QbGFuTGltaXQSEAoIZmVhdHVyZXMYFSADKAkSPwoMY2FwYWJpbGl0aWVzGBYgAygLMikuYmlsbGluZy52MS5CaWxsaW5nUGxhbi5DYXBhYmlsaXRpZXNFbnRyeRIeChFzdHJpcGVfcHJvZHVjdF9pZBgeIAEoCUgCiAEBEhwKD3N0cmlwZV9wcmljZV9pZBgfIAEoCUgDiAEBEhYKCXRlbmFudF9pZBgoIAEoCUgEiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGjMKEUNhcGFiaWxpdGllc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAFCDgoMX2Rlc2NyaXB0aW9uQgsKCV9jdXJyZW5jeUIUChJfc3RyaXBlX3Byb2R1Y3RfaWRCEgoQX3N0cmlwZV9wcmljZV9pZEIMCgpfdGVuYW50X2lkIu0FCgxTdWJzY3JpcHRpb24SCgoCaWQYASABKAkSEQoJdGVuYW50X2lkGAIgASgJEhEKCXBsYW5fc2x1ZxgDIAEoCRIeChFjdXN0b21fcGFja2FnZV9pZBgEIAEoCUgAiAEBEiMKFnN0cmlwZV9zdWJzY3JpcHRpb25faWQYBSABKAlIAYgBARIaChJzdHJpcGVfY3VzdG9tZXJfaWQYBiABKAkSLgoGc3RhdHVzGBQgASgOMh4uYmlsbGluZy52MS5TdWJzY3JpcHRpb25TdGF0dXMSPQoUY3VycmVudF9wZXJpb2Rfc3RhcnQYHiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESOwoSY3VycmVudF9wZXJpb2RfZW5kGB8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgDiAEBEjQKC3RyaWFsX3N0YXJ0GCMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBEjIKCXRyaWFsX2VuZBgkIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBARI0CgtjYW5jZWxlZF9hdBgoIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBogBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIPCgdwbGFuX2lkGDwgASgJQhQKEl9jdXN0b21fcGFja2FnZV9pZEIZChdfc3RyaXBlX3N1YnNjcmlwdGlvbl9pZEIXChVfY3VycmVudF9wZXJpb2Rfc3RhcnRCFQoTX2N1cnJlbnRfcGVyaW9kX2VuZEIOCgxfdHJpYWxfc3RhcnRCDAoKX3RyaWFsX2VuZEIOCgxfY2FuY2VsZWRfYXQiigQKDUN1c3RvbVBhY2thZ2USCgoCaWQYASABKAkSEQoJdGVuYW50X2lkGAIgASgJEhcKCnByb2plY3RfaWQYAyABKAlIAIgBARIMCgRuYW1lGAQgASgJEhgKC2Rlc2NyaXB0aW9uGAUgASgJSAGIAQESHQoQYmFzZV9wcmljZV9jZW50cxgGIAEoBUgCiAEBEjoKEGJpbGxpbmdfaW50ZXJ2YWwYByABKA4yGy5iaWxsaW5nLnYxLkJpbGxpbmdJbnRlcnZhbEgDiAEBEhUKCGN1cnJlbmN5GAggASgJSASIAQESGwoOYmFzZV9wbGFuX3NsdWcYCSABKAlIBYgBARIRCglpc19hY3RpdmUYCiABKAgSLgoGbGltaXRzGBQgAygLMh4uYmlsbGluZy52MS5DdXN0b21QYWNrYWdlTGltaXQSLgoKY3JlYXRlZF9hdBgyIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgzIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCDQoLX3Byb2plY3RfaWRCDgoMX2Rlc2NyaXB0aW9uQhMKEV9iYXNlX3ByaWNlX2NlbnRzQhMKEV9iaWxsaW5nX2ludGVydmFsQgsKCV9jdXJyZW5jeUIRCg9fYmFzZV9wbGFuX3NsdWci4AEKEkN1c3RvbVBhY2thZ2VMaW1pdBIKCgJpZBgBIAEoCRISCgpwYWNrYWdlX2lkGAIgASgJEg4KBm1ldHJpYxgDIAEoCRIeChFpbmNsdWRlZF9xdWFudGl0eRgEIAEoA0gAiAEBEhkKDG1heF9xdWFudGl0eRgFIAEoA0gBiAEBEiAKE292ZXJhZ2VfcHJpY2VfY2VudHMYBiABKAVIAogBAUIUChJfaW5jbHVkZWRfcXVhbnRpdHlCDwoNX21heF9xdWFudGl0eUIWChRfb3ZlcmFnZV9wcmljZV9jZW50cyK4AgoMVXNhZ2VTdW1tYXJ5EgoKAmlkGAEgASgJEhEKCXRlbmFudF9pZBgCIAEoCRIXCgpwcm9qZWN0X2lkGAMgASgJSACIAQESMAoMcGVyaW9kX3N0YXJ0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpwZXJpb2RfZW5kGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIVCg1yZWNvcmRzX2NvdW50GAYgASgDEhsKE21lZGlhX3N0b3JhZ2VfYnl0ZXMYByABKAMSHQoVbWVkaWFfdHJhbnNmb3JtYXRpb25zGAggASgDEhQKDGFjdGl2ZV91c2VycxgJIAEoBRIWCg5wcm9qZWN0c19jb3VudBgKIAEoBUINCgtfcHJvamVjdF9pZCKKAgoKVXNhZ2VBbGVydBIKCgJpZBgBIAEoCRIRCgl0ZW5hbnRfaWQYAiABKAkSDgoGbWV0cmljGAMgASgJEhEKCXRocmVzaG9sZBgEIAEoBRIVCg1jdXJyZW50X3VzYWdlGAUgASgDEhMKC2xpbWl0X3ZhbHVlGAYgASgDEhQKDHBlcmNlbnRfdXNlZBgHIAEoBRIwCgxwZXJpb2Rfc3RhcnQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKDGRpc21pc3NlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIPCg1fZGlzbWlzc2VkX2F0InMKF0xpc3RCaWxsaW5nUGxhbnNSZXF1ZXN0Eh0KEGluY2x1ZGVfaW5hY3RpdmUYASABKAhIAIgBARIWCgl0ZW5hbnRfaWQYAiABKAlIAYgBAUITChFfaW5jbHVkZV9pbmFjdGl2ZUIMCgpfdGVuYW50X2lkIkIKGExpc3RCaWxsaW5nUGxhbnNSZXNwb25zZRImCgVwbGFucxgBIAMoCzIXLmJpbGxpbmcudjEuQmlsbGluZ1BsYW4iJQoVR2V0QmlsbGluZ1BsYW5SZXF1ZXN0EgwKBHNsdWcYASABKAkiPwoWR2V0QmlsbGluZ1BsYW5SZXNwb25zZRIlCgRwbGFuGAEgASgLMhcuYmlsbGluZy52MS5CaWxsaW5nUGxhbiIbChlHZXREZWZhdWx0RnJlZVBsYW5SZXF1ZXN0IkMKGkdldERlZmF1bHRGcmVlUGxhblJlc3BvbnNlEiUKBHBsYW4YASABKAsyFy5iaWxsaW5nLnYxLkJpbGxpbmdQbGFuIsEEChhDcmVhdGVCaWxsaW5nUGxhblJlcXVlc3QSDAoEc2x1ZxgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESEwoLcHJpY2VfY2VudHMYBCABKAUSNQoQYmlsbGluZ19pbnRlcnZhbBgFIAEoDjIbLmJpbGxpbmcudjEuQmlsbGluZ0ludGVydmFsEhUKCGN1cnJlbmN5GAYgASgJSAGIAQESEQoJaXNfYWN0aXZlGAcgASgIEhIKCnNvcnRfb3JkZXIYCCABKAUSJQoGbGltaXRzGBQgAygLMhUuYmlsbGluZy52MS5QbGFuTGltaXQSEAoIZmVhdHVyZXMYFSADKAkSTAoMY2FwYWJpbGl0aWVzGBYgAygLMjYuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nUGxhblJlcXVlc3QuQ2FwYWJpbGl0aWVzRW50cnkSHgoRc3RyaXBlX3Byb2R1Y3RfaWQYHiABKAlIAogBARIcCg9zdHJpcGVfcHJpY2VfaWQYHyABKAlIA4gBARIWCgl0ZW5hbnRfaWQYKCABKAlIBIgBARozChFDYXBhYmlsaXRpZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBQg4KDF9kZXNjcmlwdGlvbkILCglfY3VycmVuY3lCFAoSX3N0cmlwZV9wcm9kdWN0X2lkQhIKEF9zdHJpcGVfcHJpY2VfaWRCDAoKX3RlbmFudF9pZCJCChlDcmVhdGVCaWxsaW5nUGxhblJlc3BvbnNlEiUKBHBsYW4YASABKAsyFy5iaWxsaW5nLnYxLkJpbGxpbmdQbGFuIpkFChhVcGRhdGVCaWxsaW5nUGxhblJlcXVlc3QSCgoCaWQYASABKAkSEQoEc2x1ZxgCIAEoCUgAiAEBEhEKBG5hbWUYAyABKAlIAYgBARIYCgtkZXNjcmlwdGlvbhgEIAEoCUgCiAEBEhgKC3ByaWNlX2NlbnRzGAUgASgFSAOIAQESOgoQYmlsbGluZ19pbnRlcnZhbBgGIAEoDjIbLmJpbGxpbmcudjEuQmlsbGluZ0ludGVydmFsSASIAQESFQoIY3VycmVuY3kYByABKAlIBYgBARIWCglpc19hY3RpdmUYCCABKAhIBogBARIXCgpzb3J0X29yZGVyGAkgASgFSAeIAQESJQoGbGltaXRzGBQgAygLMhUuYmlsbGluZy52MS5QbGFuTGltaXQSEAoIZmVhdHVyZXMYFSADKAkSTAoMY2FwYWJpbGl0aWVzGBYgAygLMjYuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nUGxhblJlcXVlc3QuQ2FwYWJpbGl0aWVzRW50cnkSHgoRc3RyaXBlX3Byb2R1Y3RfaWQYHiABKAlICIgBARIcCg9zdHJpcGVfcHJpY2VfaWQYHyABKAlICYgBARozChFDYXBhYmlsaXRpZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBQgcKBV9zbHVnQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIOCgxfcHJpY2VfY2VudHNCEwoRX2JpbGxpbmdfaW50ZXJ2YWxCCwoJX2N1cnJlbmN5QgwKCl9pc19hY3RpdmVCDQoLX3NvcnRfb3JkZXJCFAoSX3N0cmlwZV9wcm9kdWN0X2lkQhIKEF9zdHJpcGVfcHJpY2VfaWQiQgoZVXBkYXRlQmlsbGluZ1BsYW5SZXNwb25zZRIlCgRwbGFuGAEgASgLMhcuYmlsbGluZy52MS5CaWxsaW5nUGxhbiImChhEZWxldGVCaWxsaW5nUGxhblJlcXVlc3QSCgoCaWQYASABKAkiLAoZRGVsZXRlQmlsbGluZ1BsYW5SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIj4KFkdldFN1YnNjcmlwdGlvblJlcXVlc3QSFgoJdGVuYW50X2lkGAEgASgJSACIAQFCDAoKX3RlbmFudF9pZCJJChdHZXRTdWJzY3JpcHRpb25SZXNwb25zZRIuCgxzdWJzY3JpcHRpb24YASABKAsyGC5iaWxsaW5nLnYxLlN1YnNjcmlwdGlvbiJaChxDcmVhdGVDaGVja291dFNlc3Npb25SZXF1ZXN0EhEKCXBsYW5fc2x1ZxgBIAEoCRITCgtzdWNjZXNzX3VybBgCIAEoCRISCgpjYW5jZWxfdXJsGAMgASgJIjQKHUNyZWF0ZUNoZWNrb3V0U2Vzc2lvblJlc3BvbnNlEhMKC3Nlc3Npb25fdXJsGAEgASgJIjcKIUNyZWF0ZUJpbGxpbmdQb3J0YWxTZXNzaW9uUmVxdWVzdBISCgpyZXR1cm5fdXJsGAEgASgJIjkKIkNyZWF0ZUJpbGxpbmdQb3J0YWxTZXNzaW9uUmVzcG9uc2USEwoLc2Vzc2lvbl91cmwYASABKAkiQQoZQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdBIWCglpbW1lZGlhdGUYASABKAhIAIgBAUIMCgpfaW1tZWRpYXRlIkwKGkNhbmNlbFN1YnNjcmlwdGlvblJlc3BvbnNlEi4KDHN1YnNjcmlwdGlvbhgBIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIh8KHVJlYWN0aXZhdGVTdWJzY3JpcHRpb25SZXF1ZXN0IlAKHlJlYWN0aXZhdGVTdWJzY3JpcHRpb25SZXNwb25zZRIuCgxzdWJzY3JpcHRpb24YASABKAsyGC5iaWxsaW5nLnYxLlN1YnNjcmlwdGlvbiJmChZHZXRVc2FnZVN1bW1hcnlSZXF1ZXN0EhcKCnByb2plY3RfaWQYASABKAlIAIgBARIWCgl0ZW5hbnRfaWQYAiABKAlIAYgBAUINCgtfcHJvamVjdF9pZEIMCgpfdGVuYW50X2lkIkIKF0dldFVzYWdlU3VtbWFyeVJlc3BvbnNlEicKBXVzYWdlGAEgASgLMhguYmlsbGluZy52MS5Vc2FnZVN1bW1hcnkitAMKGENyZWF0ZUN1c3RvbVBhY2thZ2VJbnB1dBIMCgRuYW1lGAEgASgJEhgKC2Rlc2NyaXB0aW9uGAIgASgJSACIAQESHQoQYmFzZV9wcmljZV9jZW50cxgDIAEoBUgBiAEBEjoKEGJpbGxpbmdfaW50ZXJ2YWwYBCABKA4yGy5iaWxsaW5nLnYxLkJpbGxpbmdJbnRlcnZhbEgCiAEBEhUKCGN1cnJlbmN5GAUgASgJSAOIAQESGwoOYmFzZV9wbGFuX3NsdWcYBiABKAlIBIgBARIWCgl0ZW5hbnRfaWQYByABKAlIBYgBARIXCgpwcm9qZWN0X2lkGAggASgJSAaIAQESOQoGbGltaXRzGAkgAygLMikuYmlsbGluZy52MS5DcmVhdGVDdXN0b21QYWNrYWdlTGltaXRJbnB1dEIOCgxfZGVzY3JpcHRpb25CEwoRX2Jhc2VfcHJpY2VfY2VudHNCEwoRX2JpbGxpbmdfaW50ZXJ2YWxCCwoJX2N1cnJlbmN5QhEKD19iYXNlX3BsYW5fc2x1Z0IMCgpfdGVuYW50X2lkQg0KC19wcm9qZWN0X2lkIssBCh1DcmVhdGVDdXN0b21QYWNrYWdlTGltaXRJbnB1dBIOCgZtZXRyaWMYASABKAkSHgoRaW5jbHVkZWRfcXVhbnRpdHkYAiABKANIAIgBARIZCgxtYXhfcXVhbnRpdHkYAyABKANIAYgBARIgChNvdmVyYWdlX3ByaWNlX2NlbnRzGAQgASgFSAKIAQFCFAoSX2luY2x1ZGVkX3F1YW50aXR5Qg8KDV9tYXhfcXVhbnRpdHlCFgoUX292ZXJhZ2VfcHJpY2VfY2VudHMiUQoaQ3JlYXRlQ3VzdG9tUGFja2FnZVJlcXVlc3QSMwoFaW5wdXQYASABKAsyJC5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbVBhY2thZ2VJbnB1dCJJChtDcmVhdGVDdXN0b21QYWNrYWdlUmVzcG9uc2USKgoHcGFja2FnZRgBIAEoCzIZLmJpbGxpbmcudjEuQ3VzdG9tUGFja2FnZSKaAwoYVXBkYXRlQ3VzdG9tUGFja2FnZUlucHV0EhEKBG5hbWUYASABKAlIAIgBARIYCgtkZXNjcmlwdGlvbhgCIAEoCUgBiAEBEh0KEGJhc2VfcHJpY2VfY2VudHMYAyABKAVIAogBARI6ChBiaWxsaW5nX2ludGVydmFsGAQgASgOMhsuYmlsbGluZy52MS5CaWxsaW5nSW50ZXJ2YWxIA4gBARIVCghjdXJyZW5jeRgFIAEoCUgEiAEBEhsKDmJhc2VfcGxhbl9zbHVnGAYgASgJSAWIAQESFgoJaXNfYWN0aXZlGAcgASgISAaIAQESOQoGbGltaXRzGAggAygLMikuYmlsbGluZy52MS5DcmVhdGVDdXN0b21QYWNrYWdlTGltaXRJbnB1dEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CEwoRX2Jhc2VfcHJpY2VfY2VudHNCEwoRX2JpbGxpbmdfaW50ZXJ2YWxCCwoJX2N1cnJlbmN5QhEKD19iYXNlX3BsYW5fc2x1Z0IMCgpfaXNfYWN0aXZlIl0KGlVwZGF0ZUN1c3RvbVBhY2thZ2VSZXF1ZXN0EgoKAmlkGAEgASgJEjMKBWlucHV0GAIgASgLMiQuYmlsbGluZy52MS5VcGRhdGVDdXN0b21QYWNrYWdlSW5wdXQiSQobVXBkYXRlQ3VzdG9tUGFja2FnZVJlc3BvbnNlEioKB3BhY2thZ2UYASABKAsyGS5iaWxsaW5nLnYxLkN1c3RvbVBhY2thZ2UiKAoaRGVsZXRlQ3VzdG9tUGFja2FnZVJlcXVlc3QSCgoCaWQYASABKAkiLgobRGVsZXRlQ3VzdG9tUGFja2FnZVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiQQoZTGlzdEN1c3RvbVBhY2thZ2VzUmVxdWVzdBIWCgl0ZW5hbnRfaWQYASABKAlIAIgBAUIMCgpfdGVuYW50X2lkIkkKGkxpc3RDdXN0b21QYWNrYWdlc1Jlc3BvbnNlEisKCHBhY2thZ2VzGAEgAygLMhkuYmlsbGluZy52MS5DdXN0b21QYWNrYWdlIkoKEUFzc2lnblBsYW5SZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRIRCglwbGFuX3NsdWcYAiABKAkSDwoHcGxhbl9pZBgDIAEoCSJEChJBc3NpZ25QbGFuUmVzcG9uc2USLgoMc3Vic2NyaXB0aW9uGAEgASgLMhguYmlsbGluZy52MS5TdWJzY3JpcHRpb24iQwoaQXNzaWduQ3VzdG9tUGFja2FnZVJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnBhY2thZ2VfaWQYAiABKAkiTQobQXNzaWduQ3VzdG9tUGFja2FnZVJlc3BvbnNlEi4KDHN1YnNjcmlwdGlvbhgBIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIhgKFkxpc3RVc2FnZUFsZXJ0c1JlcXVlc3QiQQoXTGlzdFVzYWdlQWxlcnRzUmVzcG9uc2USJgoGYWxlcnRzGAEgAygLMhYuYmlsbGluZy52MS5Vc2FnZUFsZXJ0IiYKGERpc21pc3NVc2FnZUFsZXJ0UmVxdWVzdBIKCgJpZBgBIAEoCSIsChlEaXNtaXNzVXNhZ2VBbGVydFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgioAIKGFNlbGZTZXJ2aWNlU2lnbnVwUmVxdWVzdBINCgVlbWFpbBgBIAEoCRIQCghwYXNzd29yZBgCIAEoCRITCgt0ZW5hbnRfbmFtZRgDIAEoCRIWCglwbGFuX3NsdWcYBCABKAlIAIgBARIXCgpmaXJzdF9uYW1lGAUgASgJSAGIAQESFgoJbGFzdF9uYW1lGAYgASgJSAKIAQESGQoMcHJvamVjdF9uYW1lGAcgASgJSAOIAQESGwoOY3JlYXRlX3Nlc3Npb24YCCABKAhIBIgBAUIMCgpfcGxhbl9zbHVnQg0KC19maXJzdF9uYW1lQgwKCl9sYXN0X25hbWVCDwoNX3Byb2plY3RfbmFtZUIRCg9fY3JlYXRlX3Nlc3Npb24idQoKU2lnbnVwVXNlchIKCgJpZBgBIAEoCRINCgVlbWFpbBgCIAEoCRIXCgpmaXJzdF9uYW1lGAMgASgJSACIAQESFgoJbGFzdF9uYW1lGAQgASgJSAGIAQFCDQoLX2ZpcnN0X25hbWVCDAoKX2xhc3RfbmFtZSIoCgxTaWdudXBUZW5hbnQSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCSIpCg1TaWdudXBQcm9qZWN0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkixwEKGVNlbGZTZXJ2aWNlU2lnbnVwUmVzcG9uc2USJAoEdXNlchgBIAEoCzIWLmJpbGxpbmcudjEuU2lnbnVwVXNlchIoCgZ0ZW5hbnQYAiABKAsyGC5iaWxsaW5nLnYxLlNpZ251cFRlbmFudBIqCgdwcm9qZWN0GAMgASgLMhkuYmlsbGluZy52MS5TaWdudXBQcm9qZWN0Ei4KDHN1YnNjcmlwdGlvbhgEIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIiwKHkdldEJpbGxpbmdDdXN0b21QYWNrYWdlUmVxdWVzdBIKCgJpZBgBIAEoCSJNCh9HZXRCaWxsaW5nQ3VzdG9tUGFja2FnZVJlc3BvbnNlEioKB3BhY2thZ2UYASABKAsyGS5iaWxsaW5nLnYxLkN1c3RvbVBhY2thZ2UifgoXVGVuYW50QmlsbGluZ1N0YXR1c0l0ZW0SEQoJdGVuYW50X2lkGAEgASgJEhEKCXBsYW5fbmFtZRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSFgoObW9udGhseV9hbW91bnQYBCABKAUSFQoNdXNhZ2VfcGVyY2VudBgFIAEoBSI+Ch1HZXRUZW5hbnRCaWxsaW5nU3RhdHVzUmVxdWVzdBINCgVsaW1pdBgBIAEoBRIOCgZvZmZzZXQYAiABKAUiYwoeR2V0VGVuYW50QmlsbGluZ1N0YXR1c1Jlc3BvbnNlEjIKBWl0ZW1zGAEgAygLMiMuYmlsbGluZy52MS5UZW5hbnRCaWxsaW5nU3RhdHVzSXRlbRINCgV0b3RhbBgCIAEoBSI1CiBDcmVhdGVCaWxsaW5nU3Vic2NyaXB0aW9uUmVxdWVzdBIRCglwbGFuX3NsdWcYASABKAkiUwohQ3JlYXRlQmlsbGluZ1N1YnNjcmlwdGlvblJlc3BvbnNlEi4KDHN1YnNjcmlwdGlvbhgBIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIjUKIFVwZGF0ZUJpbGxpbmdTdWJzY3JpcHRpb25SZXF1ZXN0EhEKCXBsYW5fc2x1ZxgBIAEoCSJTCiFVcGRhdGVCaWxsaW5nU3Vic2NyaXB0aW9uUmVzcG9uc2USLgoMc3Vic2NyaXB0aW9uGAEgASgLMhguYmlsbGluZy52MS5TdWJzY3JpcHRpb24ijAEKDVN0cmlwZVByb2R1Y3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEg4KBmFjdGl2ZRgEIAEoCBInCgZwcmljZXMYBSADKAsyFy5iaWxsaW5nLnYxLlN0cmlwZVByaWNlQg4KDF9kZXNjcmlwdGlvbiJ0CgtTdHJpcGVQcmljZRIKCgJpZBgBIAEoCRITCgt1bml0X2Ftb3VudBgCIAEoBRIQCghjdXJyZW5jeRgDIAEoCRIVCghpbnRlcnZhbBgEIAEoCUgAiAEBEg4KBmFjdGl2ZRgFIAEoCEILCglfaW50ZXJ2YWwiGwoZTGlzdFN0cmlwZVByb2R1Y3RzUmVxdWVzdCJJChpMaXN0U3RyaXBlUHJvZHVjdHNSZXNwb25zZRIrCghwcm9kdWN0cxgBIAMoCzIZLmJpbGxpbmcudjEuU3RyaXBlUHJvZHVjdCrjAQoSU3Vic2NyaXB0aW9uU3RhdHVzEiMKH1NVQlNDUklQVElPTl9TVEFUVVNfVU5TUEVDSUZJRUQQABIeChpTVUJTQ1JJUFRJT05fU1RBVFVTX0FDVElWRRABEiAKHFNVQlNDUklQVElPTl9TVEFUVVNfUEFTVF9EVUUQAhIgChxTVUJTQ1JJUFRJT05fU1RBVFVTX0NBTkNFTEVEEAMSIAocU1VCU0NSSVBUSU9OX1NUQVRVU19UUklBTElORxAEEiIKHlNVQlNDUklQVElPTl9TVEFUVVNfSU5DT01QTEVURRAFKmoKD0JpbGxpbmdJbnRlcnZhbBIgChxCSUxMSU5HX0lOVEVSVkFMX1VOU1BFQ0lGSUVEEAASGgoWQklMTElOR19JTlRFUlZBTF9NT05USBABEhkKFUJJTExJTkdfSU5URVJWQUxfWUVBUhACMvwUCg5CaWxsaW5nU2VydmljZRJdChBMaXN0QmlsbGluZ1BsYW5zEiMuYmlsbGluZy52MS5MaXN0QmlsbGluZ1BsYW5zUmVxdWVzdBokLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdQbGFuc1Jlc3BvbnNlElcKDkdldEJpbGxpbmdQbGFuEiEuYmlsbGluZy52MS5HZXRCaWxsaW5nUGxhblJlcXVlc3QaIi5iaWxsaW5nLnYxLkdldEJpbGxpbmdQbGFuUmVzcG9uc2USYwoSR2V0RGVmYXVsdEZyZWVQbGFuEiUuYmlsbGluZy52MS5HZXREZWZhdWx0RnJlZVBsYW5SZXF1ZXN0GiYuYmlsbGluZy52MS5HZXREZWZhdWx0RnJlZVBsYW5SZXNwb25zZRJgChFDcmVhdGVCaWxsaW5nUGxhbhIkLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ1BsYW5SZXF1ZXN0GiUuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nUGxhblJlc3BvbnNlEmAKEVVwZGF0ZUJpbGxpbmdQbGFuEiQuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nUGxhblJlcXVlc3QaJS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdQbGFuUmVzcG9uc2USYAoRRGVsZXRlQmlsbGluZ1BsYW4SJC5iaWxsaW5nLnYxLkRlbGV0ZUJpbGxpbmdQbGFuUmVxdWVzdBolLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ1BsYW5SZXNwb25zZRJaCg9HZXRTdWJzY3JpcHRpb24SIi5iaWxsaW5nLnYxLkdldFN1YnNjcmlwdGlvblJlcXVlc3QaIy5iaWxsaW5nLnYxLkdldFN1YnNjcmlwdGlvblJlc3BvbnNlEmwKFUNyZWF0ZUNoZWNrb3V0U2Vzc2lvbhIoLmJpbGxpbmcudjEuQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uUmVxdWVzdBopLmJpbGxpbmcudjEuQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uUmVzcG9uc2USewoaQ3JlYXRlQmlsbGluZ1BvcnRhbFNlc3Npb24SLS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdQb3J0YWxTZXNzaW9uUmVxdWVzdBouLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ1BvcnRhbFNlc3Npb25SZXNwb25zZRJjChJDYW5jZWxTdWJzY3JpcHRpb24SJS5iaWxsaW5nLnYxLkNhbmNlbFN1YnNjcmlwdGlvblJlcXVlc3QaJi5iaWxsaW5nLnYxLkNhbmNlbFN1YnNjcmlwdGlvblJlc3BvbnNlEm8KFlJlYWN0aXZhdGVTdWJzY3JpcHRpb24SKS5iaWxsaW5nLnYxLlJlYWN0aXZhdGVTdWJzY3JpcHRpb25SZXF1ZXN0GiouYmlsbGluZy52MS5SZWFjdGl2YXRlU3Vic2NyaXB0aW9uUmVzcG9uc2USWgoPR2V0VXNhZ2VTdW1tYXJ5EiIuYmlsbGluZy52MS5HZXRVc2FnZVN1bW1hcnlSZXF1ZXN0GiMuYmlsbGluZy52MS5HZXRVc2FnZVN1bW1hcnlSZXNwb25zZRJaCg9MaXN0VXNhZ2VBbGVydHMSIi5iaWxsaW5nLnYxLkxpc3RVc2FnZUFsZXJ0c1JlcXVlc3QaIy5iaWxsaW5nLnYxLkxpc3RVc2FnZUFsZXJ0c1Jlc3BvbnNlEmAKEURpc21pc3NVc2FnZUFsZXJ0EiQuYmlsbGluZy52MS5EaXNtaXNzVXNhZ2VBbGVydFJlcXVlc3QaJS5iaWxsaW5nLnYxLkRpc21pc3NVc2FnZUFsZXJ0UmVzcG9uc2USZgoTQ3JlYXRlQ3VzdG9tUGFja2FnZRImLmJpbGxpbmcudjEuQ3JlYXRlQ3VzdG9tUGFja2FnZVJlcXVlc3QaJy5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbVBhY2thZ2VSZXNwb25zZRJmChNVcGRhdGVDdXN0b21QYWNrYWdlEiYuYmlsbGluZy52MS5VcGRhdGVDdXN0b21QYWNrYWdlUmVxdWVzdBonLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9tUGFja2FnZVJlc3BvbnNlEmYKE0RlbGV0ZUN1c3RvbVBhY2thZ2USJi5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbVBhY2thZ2VSZXF1ZXN0GicuYmlsbGluZy52MS5EZWxldGVDdXN0b21QYWNrYWdlUmVzcG9uc2USYwoSTGlzdEN1c3RvbVBhY2thZ2VzEiUuYmlsbGluZy52MS5MaXN0Q3VzdG9tUGFja2FnZXNSZXF1ZXN0GiYuYmlsbGluZy52MS5MaXN0Q3VzdG9tUGFja2FnZXNSZXNwb25zZRJmChNBc3NpZ25DdXN0b21QYWNrYWdlEiYuYmlsbGluZy52MS5Bc3NpZ25DdXN0b21QYWNrYWdlUmVxdWVzdBonLmJpbGxpbmcudjEuQXNzaWduQ3VzdG9tUGFja2FnZVJlc3BvbnNlEksKCkFzc2lnblBsYW4SHS5iaWxsaW5nLnYxLkFzc2lnblBsYW5SZXF1ZXN0Gh4uYmlsbGluZy52MS5Bc3NpZ25QbGFuUmVzcG9uc2USeAoZQ3JlYXRlQmlsbGluZ1N1YnNjcmlwdGlvbhIsLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ1N1YnNjcmlwdGlvblJlcXVlc3QaLS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdTdWJzY3JpcHRpb25SZXNwb25zZRJ4ChlVcGRhdGVCaWxsaW5nU3Vic2NyaXB0aW9uEiwuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nU3Vic2NyaXB0aW9uUmVxdWVzdBotLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ1N1YnNjcmlwdGlvblJlc3BvbnNlEnIKF0dldEJpbGxpbmdDdXN0b21QYWNrYWdlEiouYmlsbGluZy52MS5HZXRCaWxsaW5nQ3VzdG9tUGFja2FnZVJlcXVlc3QaKy5iaWxsaW5nLnYxLkdldEJpbGxpbmdDdXN0b21QYWNrYWdlUmVzcG9uc2USbwoWR2V0VGVuYW50QmlsbGluZ1N0YXR1cxIpLmJpbGxpbmcudjEuR2V0VGVuYW50QmlsbGluZ1N0YXR1c1JlcXVlc3QaKi5iaWxsaW5nLnYxLkdldFRlbmFudEJpbGxpbmdTdGF0dXNSZXNwb25zZRJjChJMaXN0U3RyaXBlUHJvZHVjdHMSJS5iaWxsaW5nLnYxLkxpc3RTdHJpcGVQcm9kdWN0c1JlcXVlc3QaJi5iaWxsaW5nLnYxLkxpc3RTdHJpcGVQcm9kdWN0c1Jlc3BvbnNlEmAKEVNlbGZTZXJ2aWNlU2lnbnVwEiQuYmlsbGluZy52MS5TZWxmU2VydmljZVNpZ251cFJlcXVlc3QaJS5iaWxsaW5nLnYxLlNlbGZTZXJ2aWNlU2lnbnVwUmVzcG9uc2VCO1o5Z2l0aHViLmNvbS9laWRlc3R1ZGlvL2ZvaXIvZ2VuL3Byb3RvL2JpbGxpbmcvdjE7YmlsbGluZ3YxYgZwcm90bzM", [file_google_protobuf_timestamp]);
13
+ fileDesc("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SCmJpbGxpbmcudjEiVwoJUGxhbkxpbWl0Eg4KBm1ldHJpYxgBIAEoCRIQCghpbmNsdWRlZBgCIAEoAxILCgNtYXgYAyABKAMSGwoTb3ZlcmFnZV9wcmljZV9jZW50cxgEIAEoBSKTBQoLQmlsbGluZ1BsYW4SCgoCaWQYASABKAkSDAoEc2x1ZxgCIAEoCRIMCgRuYW1lGAMgASgJEhgKC2Rlc2NyaXB0aW9uGAQgASgJSACIAQESEwoLcHJpY2VfY2VudHMYBSABKAUSNQoQYmlsbGluZ19pbnRlcnZhbBgGIAEoDjIbLmJpbGxpbmcudjEuQmlsbGluZ0ludGVydmFsEhUKCGN1cnJlbmN5GAcgASgJSAGIAQESEQoJaXNfYWN0aXZlGAggASgIEhIKCnNvcnRfb3JkZXIYCSABKAUSJQoGbGltaXRzGBQgAygLMhUuYmlsbGluZy52MS5QbGFuTGltaXQSEAoIZmVhdHVyZXMYFSADKAkSPwoMY2FwYWJpbGl0aWVzGBYgAygLMikuYmlsbGluZy52MS5CaWxsaW5nUGxhbi5DYXBhYmlsaXRpZXNFbnRyeRIeChFzdHJpcGVfcHJvZHVjdF9pZBgeIAEoCUgCiAEBEhwKD3N0cmlwZV9wcmljZV9pZBgfIAEoCUgDiAEBEhYKCXRlbmFudF9pZBgoIAEoCUgEiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGjMKEUNhcGFiaWxpdGllc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAFCDgoMX2Rlc2NyaXB0aW9uQgsKCV9jdXJyZW5jeUIUChJfc3RyaXBlX3Byb2R1Y3RfaWRCEgoQX3N0cmlwZV9wcmljZV9pZEIMCgpfdGVuYW50X2lkIu0FCgxTdWJzY3JpcHRpb24SCgoCaWQYASABKAkSEQoJdGVuYW50X2lkGAIgASgJEhEKCXBsYW5fc2x1ZxgDIAEoCRIeChFjdXN0b21fcGFja2FnZV9pZBgEIAEoCUgAiAEBEiMKFnN0cmlwZV9zdWJzY3JpcHRpb25faWQYBSABKAlIAYgBARIaChJzdHJpcGVfY3VzdG9tZXJfaWQYBiABKAkSLgoGc3RhdHVzGBQgASgOMh4uYmlsbGluZy52MS5TdWJzY3JpcHRpb25TdGF0dXMSPQoUY3VycmVudF9wZXJpb2Rfc3RhcnQYHiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESOwoSY3VycmVudF9wZXJpb2RfZW5kGB8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgDiAEBEjQKC3RyaWFsX3N0YXJ0GCMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBEjIKCXRyaWFsX2VuZBgkIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBARI0CgtjYW5jZWxlZF9hdBgoIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBogBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIPCgdwbGFuX2lkGDwgASgJQhQKEl9jdXN0b21fcGFja2FnZV9pZEIZChdfc3RyaXBlX3N1YnNjcmlwdGlvbl9pZEIXChVfY3VycmVudF9wZXJpb2Rfc3RhcnRCFQoTX2N1cnJlbnRfcGVyaW9kX2VuZEIOCgxfdHJpYWxfc3RhcnRCDAoKX3RyaWFsX2VuZEIOCgxfY2FuY2VsZWRfYXQiigQKDUN1c3RvbVBhY2thZ2USCgoCaWQYASABKAkSEQoJdGVuYW50X2lkGAIgASgJEhcKCnByb2plY3RfaWQYAyABKAlIAIgBARIMCgRuYW1lGAQgASgJEhgKC2Rlc2NyaXB0aW9uGAUgASgJSAGIAQESHQoQYmFzZV9wcmljZV9jZW50cxgGIAEoBUgCiAEBEjoKEGJpbGxpbmdfaW50ZXJ2YWwYByABKA4yGy5iaWxsaW5nLnYxLkJpbGxpbmdJbnRlcnZhbEgDiAEBEhUKCGN1cnJlbmN5GAggASgJSASIAQESGwoOYmFzZV9wbGFuX3NsdWcYCSABKAlIBYgBARIRCglpc19hY3RpdmUYCiABKAgSLgoGbGltaXRzGBQgAygLMh4uYmlsbGluZy52MS5DdXN0b21QYWNrYWdlTGltaXQSLgoKY3JlYXRlZF9hdBgyIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgzIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCDQoLX3Byb2plY3RfaWRCDgoMX2Rlc2NyaXB0aW9uQhMKEV9iYXNlX3ByaWNlX2NlbnRzQhMKEV9iaWxsaW5nX2ludGVydmFsQgsKCV9jdXJyZW5jeUIRCg9fYmFzZV9wbGFuX3NsdWci4AEKEkN1c3RvbVBhY2thZ2VMaW1pdBIKCgJpZBgBIAEoCRISCgpwYWNrYWdlX2lkGAIgASgJEg4KBm1ldHJpYxgDIAEoCRIeChFpbmNsdWRlZF9xdWFudGl0eRgEIAEoA0gAiAEBEhkKDG1heF9xdWFudGl0eRgFIAEoA0gBiAEBEiAKE292ZXJhZ2VfcHJpY2VfY2VudHMYBiABKAVIAogBAUIUChJfaW5jbHVkZWRfcXVhbnRpdHlCDwoNX21heF9xdWFudGl0eUIWChRfb3ZlcmFnZV9wcmljZV9jZW50cyK4AgoMVXNhZ2VTdW1tYXJ5EgoKAmlkGAEgASgJEhEKCXRlbmFudF9pZBgCIAEoCRIXCgpwcm9qZWN0X2lkGAMgASgJSACIAQESMAoMcGVyaW9kX3N0YXJ0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpwZXJpb2RfZW5kGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIVCg1yZWNvcmRzX2NvdW50GAYgASgDEhsKE21lZGlhX3N0b3JhZ2VfYnl0ZXMYByABKAMSHQoVbWVkaWFfdHJhbnNmb3JtYXRpb25zGAggASgDEhQKDGFjdGl2ZV91c2VycxgJIAEoBRIWCg5wcm9qZWN0c19jb3VudBgKIAEoBUINCgtfcHJvamVjdF9pZCKKAgoKVXNhZ2VBbGVydBIKCgJpZBgBIAEoCRIRCgl0ZW5hbnRfaWQYAiABKAkSDgoGbWV0cmljGAMgASgJEhEKCXRocmVzaG9sZBgEIAEoBRIVCg1jdXJyZW50X3VzYWdlGAUgASgDEhMKC2xpbWl0X3ZhbHVlGAYgASgDEhQKDHBlcmNlbnRfdXNlZBgHIAEoBRIwCgxwZXJpb2Rfc3RhcnQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKDGRpc21pc3NlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIPCg1fZGlzbWlzc2VkX2F0InMKF0xpc3RCaWxsaW5nUGxhbnNSZXF1ZXN0Eh0KEGluY2x1ZGVfaW5hY3RpdmUYASABKAhIAIgBARIWCgl0ZW5hbnRfaWQYAiABKAlIAYgBAUITChFfaW5jbHVkZV9pbmFjdGl2ZUIMCgpfdGVuYW50X2lkIkIKGExpc3RCaWxsaW5nUGxhbnNSZXNwb25zZRImCgVwbGFucxgBIAMoCzIXLmJpbGxpbmcudjEuQmlsbGluZ1BsYW4iJQoVR2V0QmlsbGluZ1BsYW5SZXF1ZXN0EgwKBHNsdWcYASABKAkiPwoWR2V0QmlsbGluZ1BsYW5SZXNwb25zZRIlCgRwbGFuGAEgASgLMhcuYmlsbGluZy52MS5CaWxsaW5nUGxhbiIbChlHZXREZWZhdWx0RnJlZVBsYW5SZXF1ZXN0IkMKGkdldERlZmF1bHRGcmVlUGxhblJlc3BvbnNlEiUKBHBsYW4YASABKAsyFy5iaWxsaW5nLnYxLkJpbGxpbmdQbGFuIsEEChhDcmVhdGVCaWxsaW5nUGxhblJlcXVlc3QSDAoEc2x1ZxgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESEwoLcHJpY2VfY2VudHMYBCABKAUSNQoQYmlsbGluZ19pbnRlcnZhbBgFIAEoDjIbLmJpbGxpbmcudjEuQmlsbGluZ0ludGVydmFsEhUKCGN1cnJlbmN5GAYgASgJSAGIAQESEQoJaXNfYWN0aXZlGAcgASgIEhIKCnNvcnRfb3JkZXIYCCABKAUSJQoGbGltaXRzGBQgAygLMhUuYmlsbGluZy52MS5QbGFuTGltaXQSEAoIZmVhdHVyZXMYFSADKAkSTAoMY2FwYWJpbGl0aWVzGBYgAygLMjYuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nUGxhblJlcXVlc3QuQ2FwYWJpbGl0aWVzRW50cnkSHgoRc3RyaXBlX3Byb2R1Y3RfaWQYHiABKAlIAogBARIcCg9zdHJpcGVfcHJpY2VfaWQYHyABKAlIA4gBARIWCgl0ZW5hbnRfaWQYKCABKAlIBIgBARozChFDYXBhYmlsaXRpZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBQg4KDF9kZXNjcmlwdGlvbkILCglfY3VycmVuY3lCFAoSX3N0cmlwZV9wcm9kdWN0X2lkQhIKEF9zdHJpcGVfcHJpY2VfaWRCDAoKX3RlbmFudF9pZCJCChlDcmVhdGVCaWxsaW5nUGxhblJlc3BvbnNlEiUKBHBsYW4YASABKAsyFy5iaWxsaW5nLnYxLkJpbGxpbmdQbGFuIpkFChhVcGRhdGVCaWxsaW5nUGxhblJlcXVlc3QSCgoCaWQYASABKAkSEQoEc2x1ZxgCIAEoCUgAiAEBEhEKBG5hbWUYAyABKAlIAYgBARIYCgtkZXNjcmlwdGlvbhgEIAEoCUgCiAEBEhgKC3ByaWNlX2NlbnRzGAUgASgFSAOIAQESOgoQYmlsbGluZ19pbnRlcnZhbBgGIAEoDjIbLmJpbGxpbmcudjEuQmlsbGluZ0ludGVydmFsSASIAQESFQoIY3VycmVuY3kYByABKAlIBYgBARIWCglpc19hY3RpdmUYCCABKAhIBogBARIXCgpzb3J0X29yZGVyGAkgASgFSAeIAQESJQoGbGltaXRzGBQgAygLMhUuYmlsbGluZy52MS5QbGFuTGltaXQSEAoIZmVhdHVyZXMYFSADKAkSTAoMY2FwYWJpbGl0aWVzGBYgAygLMjYuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nUGxhblJlcXVlc3QuQ2FwYWJpbGl0aWVzRW50cnkSHgoRc3RyaXBlX3Byb2R1Y3RfaWQYHiABKAlICIgBARIcCg9zdHJpcGVfcHJpY2VfaWQYHyABKAlICYgBARozChFDYXBhYmlsaXRpZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBQgcKBV9zbHVnQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIOCgxfcHJpY2VfY2VudHNCEwoRX2JpbGxpbmdfaW50ZXJ2YWxCCwoJX2N1cnJlbmN5QgwKCl9pc19hY3RpdmVCDQoLX3NvcnRfb3JkZXJCFAoSX3N0cmlwZV9wcm9kdWN0X2lkQhIKEF9zdHJpcGVfcHJpY2VfaWQiQgoZVXBkYXRlQmlsbGluZ1BsYW5SZXNwb25zZRIlCgRwbGFuGAEgASgLMhcuYmlsbGluZy52MS5CaWxsaW5nUGxhbiImChhEZWxldGVCaWxsaW5nUGxhblJlcXVlc3QSCgoCaWQYASABKAkiLAoZRGVsZXRlQmlsbGluZ1BsYW5SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIj4KFkdldFN1YnNjcmlwdGlvblJlcXVlc3QSFgoJdGVuYW50X2lkGAEgASgJSACIAQFCDAoKX3RlbmFudF9pZCJJChdHZXRTdWJzY3JpcHRpb25SZXNwb25zZRIuCgxzdWJzY3JpcHRpb24YASABKAsyGC5iaWxsaW5nLnYxLlN1YnNjcmlwdGlvbiJaChxDcmVhdGVDaGVja291dFNlc3Npb25SZXF1ZXN0EhEKCXBsYW5fc2x1ZxgBIAEoCRITCgtzdWNjZXNzX3VybBgCIAEoCRISCgpjYW5jZWxfdXJsGAMgASgJIjQKHUNyZWF0ZUNoZWNrb3V0U2Vzc2lvblJlc3BvbnNlEhMKC3Nlc3Npb25fdXJsGAEgASgJIjcKIUNyZWF0ZUJpbGxpbmdQb3J0YWxTZXNzaW9uUmVxdWVzdBISCgpyZXR1cm5fdXJsGAEgASgJIjkKIkNyZWF0ZUJpbGxpbmdQb3J0YWxTZXNzaW9uUmVzcG9uc2USEwoLc2Vzc2lvbl91cmwYASABKAkiQQoZQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdBIWCglpbW1lZGlhdGUYASABKAhIAIgBAUIMCgpfaW1tZWRpYXRlIkwKGkNhbmNlbFN1YnNjcmlwdGlvblJlc3BvbnNlEi4KDHN1YnNjcmlwdGlvbhgBIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIh8KHVJlYWN0aXZhdGVTdWJzY3JpcHRpb25SZXF1ZXN0IlAKHlJlYWN0aXZhdGVTdWJzY3JpcHRpb25SZXNwb25zZRIuCgxzdWJzY3JpcHRpb24YASABKAsyGC5iaWxsaW5nLnYxLlN1YnNjcmlwdGlvbiJmChZHZXRVc2FnZVN1bW1hcnlSZXF1ZXN0EhcKCnByb2plY3RfaWQYASABKAlIAIgBARIWCgl0ZW5hbnRfaWQYAiABKAlIAYgBAUINCgtfcHJvamVjdF9pZEIMCgpfdGVuYW50X2lkIkIKF0dldFVzYWdlU3VtbWFyeVJlc3BvbnNlEicKBXVzYWdlGAEgASgLMhguYmlsbGluZy52MS5Vc2FnZVN1bW1hcnkitAMKGENyZWF0ZUN1c3RvbVBhY2thZ2VJbnB1dBIMCgRuYW1lGAEgASgJEhgKC2Rlc2NyaXB0aW9uGAIgASgJSACIAQESHQoQYmFzZV9wcmljZV9jZW50cxgDIAEoBUgBiAEBEjoKEGJpbGxpbmdfaW50ZXJ2YWwYBCABKA4yGy5iaWxsaW5nLnYxLkJpbGxpbmdJbnRlcnZhbEgCiAEBEhUKCGN1cnJlbmN5GAUgASgJSAOIAQESGwoOYmFzZV9wbGFuX3NsdWcYBiABKAlIBIgBARIWCgl0ZW5hbnRfaWQYByABKAlIBYgBARIXCgpwcm9qZWN0X2lkGAggASgJSAaIAQESOQoGbGltaXRzGAkgAygLMikuYmlsbGluZy52MS5DcmVhdGVDdXN0b21QYWNrYWdlTGltaXRJbnB1dEIOCgxfZGVzY3JpcHRpb25CEwoRX2Jhc2VfcHJpY2VfY2VudHNCEwoRX2JpbGxpbmdfaW50ZXJ2YWxCCwoJX2N1cnJlbmN5QhEKD19iYXNlX3BsYW5fc2x1Z0IMCgpfdGVuYW50X2lkQg0KC19wcm9qZWN0X2lkIssBCh1DcmVhdGVDdXN0b21QYWNrYWdlTGltaXRJbnB1dBIOCgZtZXRyaWMYASABKAkSHgoRaW5jbHVkZWRfcXVhbnRpdHkYAiABKANIAIgBARIZCgxtYXhfcXVhbnRpdHkYAyABKANIAYgBARIgChNvdmVyYWdlX3ByaWNlX2NlbnRzGAQgASgFSAKIAQFCFAoSX2luY2x1ZGVkX3F1YW50aXR5Qg8KDV9tYXhfcXVhbnRpdHlCFgoUX292ZXJhZ2VfcHJpY2VfY2VudHMiUQoaQ3JlYXRlQ3VzdG9tUGFja2FnZVJlcXVlc3QSMwoFaW5wdXQYASABKAsyJC5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbVBhY2thZ2VJbnB1dCJJChtDcmVhdGVDdXN0b21QYWNrYWdlUmVzcG9uc2USKgoHcGFja2FnZRgBIAEoCzIZLmJpbGxpbmcudjEuQ3VzdG9tUGFja2FnZSKaAwoYVXBkYXRlQ3VzdG9tUGFja2FnZUlucHV0EhEKBG5hbWUYASABKAlIAIgBARIYCgtkZXNjcmlwdGlvbhgCIAEoCUgBiAEBEh0KEGJhc2VfcHJpY2VfY2VudHMYAyABKAVIAogBARI6ChBiaWxsaW5nX2ludGVydmFsGAQgASgOMhsuYmlsbGluZy52MS5CaWxsaW5nSW50ZXJ2YWxIA4gBARIVCghjdXJyZW5jeRgFIAEoCUgEiAEBEhsKDmJhc2VfcGxhbl9zbHVnGAYgASgJSAWIAQESFgoJaXNfYWN0aXZlGAcgASgISAaIAQESOQoGbGltaXRzGAggAygLMikuYmlsbGluZy52MS5DcmVhdGVDdXN0b21QYWNrYWdlTGltaXRJbnB1dEIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CEwoRX2Jhc2VfcHJpY2VfY2VudHNCEwoRX2JpbGxpbmdfaW50ZXJ2YWxCCwoJX2N1cnJlbmN5QhEKD19iYXNlX3BsYW5fc2x1Z0IMCgpfaXNfYWN0aXZlIl0KGlVwZGF0ZUN1c3RvbVBhY2thZ2VSZXF1ZXN0EgoKAmlkGAEgASgJEjMKBWlucHV0GAIgASgLMiQuYmlsbGluZy52MS5VcGRhdGVDdXN0b21QYWNrYWdlSW5wdXQiSQobVXBkYXRlQ3VzdG9tUGFja2FnZVJlc3BvbnNlEioKB3BhY2thZ2UYASABKAsyGS5iaWxsaW5nLnYxLkN1c3RvbVBhY2thZ2UiKAoaRGVsZXRlQ3VzdG9tUGFja2FnZVJlcXVlc3QSCgoCaWQYASABKAkiLgobRGVsZXRlQ3VzdG9tUGFja2FnZVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiQQoZTGlzdEN1c3RvbVBhY2thZ2VzUmVxdWVzdBIWCgl0ZW5hbnRfaWQYASABKAlIAIgBAUIMCgpfdGVuYW50X2lkIkkKGkxpc3RDdXN0b21QYWNrYWdlc1Jlc3BvbnNlEisKCHBhY2thZ2VzGAEgAygLMhkuYmlsbGluZy52MS5DdXN0b21QYWNrYWdlIkoKEUFzc2lnblBsYW5SZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRIRCglwbGFuX3NsdWcYAiABKAkSDwoHcGxhbl9pZBgDIAEoCSJEChJBc3NpZ25QbGFuUmVzcG9uc2USLgoMc3Vic2NyaXB0aW9uGAEgASgLMhguYmlsbGluZy52MS5TdWJzY3JpcHRpb24iQwoaQXNzaWduQ3VzdG9tUGFja2FnZVJlcXVlc3QSEQoJdGVuYW50X2lkGAEgASgJEhIKCnBhY2thZ2VfaWQYAiABKAkiTQobQXNzaWduQ3VzdG9tUGFja2FnZVJlc3BvbnNlEi4KDHN1YnNjcmlwdGlvbhgBIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIhgKFkxpc3RVc2FnZUFsZXJ0c1JlcXVlc3QiQQoXTGlzdFVzYWdlQWxlcnRzUmVzcG9uc2USJgoGYWxlcnRzGAEgAygLMhYuYmlsbGluZy52MS5Vc2FnZUFsZXJ0IiYKGERpc21pc3NVc2FnZUFsZXJ0UmVxdWVzdBIKCgJpZBgBIAEoCSIsChlEaXNtaXNzVXNhZ2VBbGVydFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgioAIKGFNlbGZTZXJ2aWNlU2lnbnVwUmVxdWVzdBINCgVlbWFpbBgBIAEoCRIQCghwYXNzd29yZBgCIAEoCRITCgt0ZW5hbnRfbmFtZRgDIAEoCRIWCglwbGFuX3NsdWcYBCABKAlIAIgBARIXCgpmaXJzdF9uYW1lGAUgASgJSAGIAQESFgoJbGFzdF9uYW1lGAYgASgJSAKIAQESGQoMcHJvamVjdF9uYW1lGAcgASgJSAOIAQESGwoOY3JlYXRlX3Nlc3Npb24YCCABKAhIBIgBAUIMCgpfcGxhbl9zbHVnQg0KC19maXJzdF9uYW1lQgwKCl9sYXN0X25hbWVCDwoNX3Byb2plY3RfbmFtZUIRCg9fY3JlYXRlX3Nlc3Npb24idQoKU2lnbnVwVXNlchIKCgJpZBgBIAEoCRINCgVlbWFpbBgCIAEoCRIXCgpmaXJzdF9uYW1lGAMgASgJSACIAQESFgoJbGFzdF9uYW1lGAQgASgJSAGIAQFCDQoLX2ZpcnN0X25hbWVCDAoKX2xhc3RfbmFtZSIoCgxTaWdudXBUZW5hbnQSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCSIpCg1TaWdudXBQcm9qZWN0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkixwEKGVNlbGZTZXJ2aWNlU2lnbnVwUmVzcG9uc2USJAoEdXNlchgBIAEoCzIWLmJpbGxpbmcudjEuU2lnbnVwVXNlchIoCgZ0ZW5hbnQYAiABKAsyGC5iaWxsaW5nLnYxLlNpZ251cFRlbmFudBIqCgdwcm9qZWN0GAMgASgLMhkuYmlsbGluZy52MS5TaWdudXBQcm9qZWN0Ei4KDHN1YnNjcmlwdGlvbhgEIAEoCzIYLmJpbGxpbmcudjEuU3Vic2NyaXB0aW9uIiwKHkdldEJpbGxpbmdDdXN0b21QYWNrYWdlUmVxdWVzdBIKCgJpZBgBIAEoCSJNCh9HZXRCaWxsaW5nQ3VzdG9tUGFja2FnZVJlc3BvbnNlEioKB3BhY2thZ2UYASABKAsyGS5iaWxsaW5nLnYxLkN1c3RvbVBhY2thZ2UifgoXVGVuYW50QmlsbGluZ1N0YXR1c0l0ZW0SEQoJdGVuYW50X2lkGAEgASgJEhEKCXBsYW5fbmFtZRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSFgoObW9udGhseV9hbW91bnQYBCABKAUSFQoNdXNhZ2VfcGVyY2VudBgFIAEoBSKXAQodR2V0VGVuYW50QmlsbGluZ1N0YXR1c1JlcXVlc3QSEgoFYWZ0ZXIYASABKAlIAIgBARITCgZiZWZvcmUYAiABKAlIAYgBARISCgVmaXJzdBgDIAEoBUgCiAEBEhEKBGxhc3QYBCABKAVIA4gBAUIICgZfYWZ0ZXJCCQoHX2JlZm9yZUIICgZfZmlyc3RCBwoFX2xhc3QirwEKHkdldFRlbmFudEJpbGxpbmdTdGF0dXNSZXNwb25zZRIyCgVpdGVtcxgBIAMoCzIjLmJpbGxpbmcudjEuVGVuYW50QmlsbGluZ1N0YXR1c0l0ZW0SDQoFdG90YWwYAiABKAUSKwoJcGFnZV9pbmZvGAMgASgLMhMuY29tbW9uLnYxLlBhZ2VJbmZvSACIAQESDwoHY3Vyc29ycxgEIAMoCUIMCgpfcGFnZV9pbmZvIjUKIENyZWF0ZUJpbGxpbmdTdWJzY3JpcHRpb25SZXF1ZXN0EhEKCXBsYW5fc2x1ZxgBIAEoCSJTCiFDcmVhdGVCaWxsaW5nU3Vic2NyaXB0aW9uUmVzcG9uc2USLgoMc3Vic2NyaXB0aW9uGAEgASgLMhguYmlsbGluZy52MS5TdWJzY3JpcHRpb24iNQogVXBkYXRlQmlsbGluZ1N1YnNjcmlwdGlvblJlcXVlc3QSEQoJcGxhbl9zbHVnGAEgASgJIlMKIVVwZGF0ZUJpbGxpbmdTdWJzY3JpcHRpb25SZXNwb25zZRIuCgxzdWJzY3JpcHRpb24YASABKAsyGC5iaWxsaW5nLnYxLlN1YnNjcmlwdGlvbiKMAQoNU3RyaXBlUHJvZHVjdBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESDgoGYWN0aXZlGAQgASgIEicKBnByaWNlcxgFIAMoCzIXLmJpbGxpbmcudjEuU3RyaXBlUHJpY2VCDgoMX2Rlc2NyaXB0aW9uInQKC1N0cmlwZVByaWNlEgoKAmlkGAEgASgJEhMKC3VuaXRfYW1vdW50GAIgASgFEhAKCGN1cnJlbmN5GAMgASgJEhUKCGludGVydmFsGAQgASgJSACIAQESDgoGYWN0aXZlGAUgASgIQgsKCV9pbnRlcnZhbCIbChlMaXN0U3RyaXBlUHJvZHVjdHNSZXF1ZXN0IkkKGkxpc3RTdHJpcGVQcm9kdWN0c1Jlc3BvbnNlEisKCHByb2R1Y3RzGAEgAygLMhkuYmlsbGluZy52MS5TdHJpcGVQcm9kdWN0KuMBChJTdWJzY3JpcHRpb25TdGF0dXMSIwofU1VCU0NSSVBUSU9OX1NUQVRVU19VTlNQRUNJRklFRBAAEh4KGlNVQlNDUklQVElPTl9TVEFUVVNfQUNUSVZFEAESIAocU1VCU0NSSVBUSU9OX1NUQVRVU19QQVNUX0RVRRACEiAKHFNVQlNDUklQVElPTl9TVEFUVVNfQ0FOQ0VMRUQQAxIgChxTVUJTQ1JJUFRJT05fU1RBVFVTX1RSSUFMSU5HEAQSIgoeU1VCU0NSSVBUSU9OX1NUQVRVU19JTkNPTVBMRVRFEAUqagoPQmlsbGluZ0ludGVydmFsEiAKHEJJTExJTkdfSU5URVJWQUxfVU5TUEVDSUZJRUQQABIaChZCSUxMSU5HX0lOVEVSVkFMX01PTlRIEAESGQoVQklMTElOR19JTlRFUlZBTF9ZRUFSEAIy/BQKDkJpbGxpbmdTZXJ2aWNlEl0KEExpc3RCaWxsaW5nUGxhbnMSIy5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nUGxhbnNSZXF1ZXN0GiQuYmlsbGluZy52MS5MaXN0QmlsbGluZ1BsYW5zUmVzcG9uc2USVwoOR2V0QmlsbGluZ1BsYW4SIS5iaWxsaW5nLnYxLkdldEJpbGxpbmdQbGFuUmVxdWVzdBoiLmJpbGxpbmcudjEuR2V0QmlsbGluZ1BsYW5SZXNwb25zZRJjChJHZXREZWZhdWx0RnJlZVBsYW4SJS5iaWxsaW5nLnYxLkdldERlZmF1bHRGcmVlUGxhblJlcXVlc3QaJi5iaWxsaW5nLnYxLkdldERlZmF1bHRGcmVlUGxhblJlc3BvbnNlEmAKEUNyZWF0ZUJpbGxpbmdQbGFuEiQuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nUGxhblJlcXVlc3QaJS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdQbGFuUmVzcG9uc2USYAoRVXBkYXRlQmlsbGluZ1BsYW4SJC5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdQbGFuUmVxdWVzdBolLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ1BsYW5SZXNwb25zZRJgChFEZWxldGVCaWxsaW5nUGxhbhIkLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ1BsYW5SZXF1ZXN0GiUuYmlsbGluZy52MS5EZWxldGVCaWxsaW5nUGxhblJlc3BvbnNlEloKD0dldFN1YnNjcmlwdGlvbhIiLmJpbGxpbmcudjEuR2V0U3Vic2NyaXB0aW9uUmVxdWVzdBojLmJpbGxpbmcudjEuR2V0U3Vic2NyaXB0aW9uUmVzcG9uc2USbAoVQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uEiguYmlsbGluZy52MS5DcmVhdGVDaGVja291dFNlc3Npb25SZXF1ZXN0GikuYmlsbGluZy52MS5DcmVhdGVDaGVja291dFNlc3Npb25SZXNwb25zZRJ7ChpDcmVhdGVCaWxsaW5nUG9ydGFsU2Vzc2lvbhItLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ1BvcnRhbFNlc3Npb25SZXF1ZXN0Gi4uYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nUG9ydGFsU2Vzc2lvblJlc3BvbnNlEmMKEkNhbmNlbFN1YnNjcmlwdGlvbhIlLmJpbGxpbmcudjEuQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdBomLmJpbGxpbmcudjEuQ2FuY2VsU3Vic2NyaXB0aW9uUmVzcG9uc2USbwoWUmVhY3RpdmF0ZVN1YnNjcmlwdGlvbhIpLmJpbGxpbmcudjEuUmVhY3RpdmF0ZVN1YnNjcmlwdGlvblJlcXVlc3QaKi5iaWxsaW5nLnYxLlJlYWN0aXZhdGVTdWJzY3JpcHRpb25SZXNwb25zZRJaCg9HZXRVc2FnZVN1bW1hcnkSIi5iaWxsaW5nLnYxLkdldFVzYWdlU3VtbWFyeVJlcXVlc3QaIy5iaWxsaW5nLnYxLkdldFVzYWdlU3VtbWFyeVJlc3BvbnNlEloKD0xpc3RVc2FnZUFsZXJ0cxIiLmJpbGxpbmcudjEuTGlzdFVzYWdlQWxlcnRzUmVxdWVzdBojLmJpbGxpbmcudjEuTGlzdFVzYWdlQWxlcnRzUmVzcG9uc2USYAoRRGlzbWlzc1VzYWdlQWxlcnQSJC5iaWxsaW5nLnYxLkRpc21pc3NVc2FnZUFsZXJ0UmVxdWVzdBolLmJpbGxpbmcudjEuRGlzbWlzc1VzYWdlQWxlcnRSZXNwb25zZRJmChNDcmVhdGVDdXN0b21QYWNrYWdlEiYuYmlsbGluZy52MS5DcmVhdGVDdXN0b21QYWNrYWdlUmVxdWVzdBonLmJpbGxpbmcudjEuQ3JlYXRlQ3VzdG9tUGFja2FnZVJlc3BvbnNlEmYKE1VwZGF0ZUN1c3RvbVBhY2thZ2USJi5iaWxsaW5nLnYxLlVwZGF0ZUN1c3RvbVBhY2thZ2VSZXF1ZXN0GicuYmlsbGluZy52MS5VcGRhdGVDdXN0b21QYWNrYWdlUmVzcG9uc2USZgoTRGVsZXRlQ3VzdG9tUGFja2FnZRImLmJpbGxpbmcudjEuRGVsZXRlQ3VzdG9tUGFja2FnZVJlcXVlc3QaJy5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbVBhY2thZ2VSZXNwb25zZRJjChJMaXN0Q3VzdG9tUGFja2FnZXMSJS5iaWxsaW5nLnYxLkxpc3RDdXN0b21QYWNrYWdlc1JlcXVlc3QaJi5iaWxsaW5nLnYxLkxpc3RDdXN0b21QYWNrYWdlc1Jlc3BvbnNlEmYKE0Fzc2lnbkN1c3RvbVBhY2thZ2USJi5iaWxsaW5nLnYxLkFzc2lnbkN1c3RvbVBhY2thZ2VSZXF1ZXN0GicuYmlsbGluZy52MS5Bc3NpZ25DdXN0b21QYWNrYWdlUmVzcG9uc2USSwoKQXNzaWduUGxhbhIdLmJpbGxpbmcudjEuQXNzaWduUGxhblJlcXVlc3QaHi5iaWxsaW5nLnYxLkFzc2lnblBsYW5SZXNwb25zZRJ4ChlDcmVhdGVCaWxsaW5nU3Vic2NyaXB0aW9uEiwuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nU3Vic2NyaXB0aW9uUmVxdWVzdBotLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ1N1YnNjcmlwdGlvblJlc3BvbnNlEngKGVVwZGF0ZUJpbGxpbmdTdWJzY3JpcHRpb24SLC5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdTdWJzY3JpcHRpb25SZXF1ZXN0Gi0uYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nU3Vic2NyaXB0aW9uUmVzcG9uc2UScgoXR2V0QmlsbGluZ0N1c3RvbVBhY2thZ2USKi5iaWxsaW5nLnYxLkdldEJpbGxpbmdDdXN0b21QYWNrYWdlUmVxdWVzdBorLmJpbGxpbmcudjEuR2V0QmlsbGluZ0N1c3RvbVBhY2thZ2VSZXNwb25zZRJvChZHZXRUZW5hbnRCaWxsaW5nU3RhdHVzEikuYmlsbGluZy52MS5HZXRUZW5hbnRCaWxsaW5nU3RhdHVzUmVxdWVzdBoqLmJpbGxpbmcudjEuR2V0VGVuYW50QmlsbGluZ1N0YXR1c1Jlc3BvbnNlEmMKEkxpc3RTdHJpcGVQcm9kdWN0cxIlLmJpbGxpbmcudjEuTGlzdFN0cmlwZVByb2R1Y3RzUmVxdWVzdBomLmJpbGxpbmcudjEuTGlzdFN0cmlwZVByb2R1Y3RzUmVzcG9uc2USYAoRU2VsZlNlcnZpY2VTaWdudXASJC5iaWxsaW5nLnYxLlNlbGZTZXJ2aWNlU2lnbnVwUmVxdWVzdBolLmJpbGxpbmcudjEuU2VsZlNlcnZpY2VTaWdudXBSZXNwb25zZUI7WjlnaXRodWIuY29tL2VpZGVzdHVkaW8vZm9pci9nZW4vcHJvdG8vYmlsbGluZy92MTtiaWxsaW5ndjFiBnByb3RvMw", [file_google_protobuf_timestamp, file_common_v1_pagination]);
13
14
 
14
15
  /**
15
16
  * Describes the message billing.v1.PlanLimit.
@@ -0,0 +1,57 @@
1
+ // @generated by protoc-gen-es v2.12.0 with parameter "import_extension=js"
2
+ // @generated from file common/v1/pagination.proto (package common.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
6
+ import type { Message } from "@bufbuild/protobuf";
7
+
8
+ /**
9
+ * Describes the file common/v1/pagination.proto.
10
+ */
11
+ export declare const file_common_v1_pagination: GenFile;
12
+
13
+ /**
14
+ * PageInfo carries Relay-style cursor-pagination metadata for any
15
+ * paginated list response on the platform.
16
+ *
17
+ * has_next_page / has_previous_page are relative to the requested
18
+ * direction: under forward pagination (first/after) has_previous_page
19
+ * is true when `after` was supplied; under backward (last/before)
20
+ * it's the inverse. start_cursor / end_cursor are the cursors of the
21
+ * first and last item on the returned page; the per-row cursors are
22
+ * alongside the items array in each response message.
23
+ *
24
+ * Stage 9 of the query/mutate redesign hoisted this out of
25
+ * records/v1 so every paginated list across the platform shares one
26
+ * shape. See foir-platform/docs/query-mutate-redesign.md § Stage 9.
27
+ *
28
+ * @generated from message common.v1.PageInfo
29
+ */
30
+ export declare type PageInfo = Message<"common.v1.PageInfo"> & {
31
+ /**
32
+ * @generated from field: bool has_next_page = 1;
33
+ */
34
+ hasNextPage: boolean;
35
+
36
+ /**
37
+ * @generated from field: bool has_previous_page = 2;
38
+ */
39
+ hasPreviousPage: boolean;
40
+
41
+ /**
42
+ * @generated from field: optional string start_cursor = 3;
43
+ */
44
+ startCursor?: string | undefined;
45
+
46
+ /**
47
+ * @generated from field: optional string end_cursor = 4;
48
+ */
49
+ endCursor?: string | undefined;
50
+ };
51
+
52
+ /**
53
+ * Describes the message common.v1.PageInfo.
54
+ * Use `create(PageInfoSchema)` to create a new message.
55
+ */
56
+ export declare const PageInfoSchema: GenMessage<PageInfo>;
57
+
@@ -0,0 +1,19 @@
1
+ // @generated by protoc-gen-es v2.12.0 with parameter "import_extension=js"
2
+ // @generated from file common/v1/pagination.proto (package common.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
6
+
7
+ /**
8
+ * Describes the file common/v1/pagination.proto.
9
+ */
10
+ export const file_common_v1_pagination = /*@__PURE__*/
11
+ fileDesc("Chpjb21tb24vdjEvcGFnaW5hdGlvbi5wcm90bxIJY29tbW9uLnYxIpABCghQYWdlSW5mbxIVCg1oYXNfbmV4dF9wYWdlGAEgASgIEhkKEWhhc19wcmV2aW91c19wYWdlGAIgASgIEhkKDHN0YXJ0X2N1cnNvchgDIAEoCUgAiAEBEhcKCmVuZF9jdXJzb3IYBCABKAlIAYgBAUIPCg1fc3RhcnRfY3Vyc29yQg0KC19lbmRfY3Vyc29yQjlaN2dpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9jb21tb24vdjE7Y29tbW9udjFiBnByb3RvMw");
12
+
13
+ /**
14
+ * Describes the message common.v1.PageInfo.
15
+ * Use `create(PageInfoSchema)` to create a new message.
16
+ */
17
+ export const PageInfoSchema = /*@__PURE__*/
18
+ messageDesc(file_common_v1_pagination, 0);
19
+