@slipway-systems/sdk 0.3.0 → 0.5.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.
@@ -596,6 +596,12 @@ export type ListPlansResponse = Message<"slipway.v1.ListPlansResponse"> & {
596
596
  * @generated from field: string current_plan_id = 2;
597
597
  */
598
598
  currentPlanId: string;
599
+ /**
600
+ * see GetSubscriptionResponse.online_billing
601
+ *
602
+ * @generated from field: bool online_billing = 3;
603
+ */
604
+ onlineBilling: boolean;
599
605
  };
600
606
  /**
601
607
  * Describes the message slipway.v1.ListPlansResponse.
@@ -745,6 +751,13 @@ export type GetSubscriptionResponse = Message<"slipway.v1.GetSubscriptionRespons
745
751
  * @generated from field: slipway.v1.Plan plan = 2;
746
752
  */
747
753
  plan?: Plan | undefined;
754
+ /**
755
+ * online_billing is false when this installation takes no payments (no Stripe configured, typical self-hosting):
756
+ * plans are then assigned by an instance operator (`slipway billing set-plan`), and checkout and the portal are off.
757
+ *
758
+ * @generated from field: bool online_billing = 3;
759
+ */
760
+ onlineBilling: boolean;
748
761
  };
749
762
  /**
750
763
  * Describes the message slipway.v1.GetSubscriptionResponse.
@@ -6,7 +6,7 @@ import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
6
6
  /**
7
7
  * Describes the file slipway/v1/billing.proto.
8
8
  */
9
- export const file_slipway_v1_billing = /*@__PURE__*/ fileDesc("ChhzbGlwd2F5L3YxL2JpbGxpbmcucHJvdG8SCnNsaXB3YXkudjEixgUKDEVudGl0bGVtZW50cxIfChdob3N0ZWRfbWludXRlc19pbmNsdWRlZBgBIAEoAxIbChNob3N0ZWRfb3ZlcmFnZV9tb2RlGAIgASgJEigKIGhvc3RlZF9vdmVyYWdlX21pY3Jvc19wZXJfbWludXRlGAMgASgDEiMKG2NvbmN1cnJlbnRfam9ic19zZWxmX2hvc3RlZBgEIAEoAxIeChZjb25jdXJyZW50X2pvYnNfaG9zdGVkGAUgASgDEiAKGGVudmlyb25tZW50c19wZXJfcHJvamVjdBgGIAEoAxIdChVkZXBsb3ltZW50X3N0cmF0ZWdpZXMYByADKAkSFAoMcG9saWN5X2dhdGVzGAggASgDEhkKEWNoYW5nZV9tYW5hZ2VtZW50GAkgASgIEgsKA3NzbxgKIAEoCBIRCglzYW1sX3NjaW0YCyABKAgSEwoLY3VzdG9tX3JiYWMYDCABKAgSHAoUYXVkaXRfcmV0ZW50aW9uX2RheXMYDSABKAMSFAoMYXVkaXRfZXhwb3J0GA4gASgIEhcKD2F1ZGl0X3N0cmVhbWluZxgPIAEoCBIaChJsb2dfcmV0ZW50aW9uX2RheXMYECABKAMSHwoXYXJ0aWZhY3RfcmV0ZW50aW9uX2RheXMYESABKAMSFAoMc2VjcmV0c19ieW9rGBIgASgIEhMKC3NlY3JldHNfaHNtGBMgASgIEhkKEXNpZ25lZF9wcm92ZW5hbmNlGBQgASgIEhQKDHN1cHBvcnRfdGllchgVIAEoCRIYChBzdXBwb3J0X3Jlc3BvbnNlGBYgASgJEhIKCnVwdGltZV9zbGEYFyABKAkSFgoOZGVkaWNhdGVkX2NlbGwYGCABKAgSEgoKbmVnb3RpYXRlZBgZIAEoCBIiChpob3N0ZWRfam9iX3RpbWVvdXRfbWludXRlcxgaIAEoAyLOAQoEUGxhbhIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEg8KB3RhZ2xpbmUYAyABKAkSGwoTcHJpY2VfY2VudHNfbW9udGhseRgEIAEoAxIVCg1wcmljZV9pc19mcm9tGAUgASgIEhUKDWNvbnRhY3Rfc2FsZXMYBiABKAgSEgoKdHJpYWxfZGF5cxgHIAEoBRIuCgxlbnRpdGxlbWVudHMYCCABKAsyGC5zbGlwd2F5LnYxLkVudGl0bGVtZW50cxIMCgRyYW5rGAkgASgFIskCChNCaWxsaW5nU3Vic2NyaXB0aW9uEgoKAmlkGAEgASgJEgwKBHBsYW4YAiABKAkSDgoGc3RhdHVzGAMgASgJEjgKFGN1cnJlbnRfcGVyaW9kX3N0YXJ0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI2ChJjdXJyZW50X3BlcmlvZF9lbmQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCXRyaWFsX2VuZBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHAoUY2FuY2VsX2F0X3BlcmlvZF9lbmQYByABKAgSFwoPdHJpYWxfYXZhaWxhYmxlGAggASgIEhMKC3BsYW5fc291cmNlGAkgASgJEhsKE2hhc19iaWxsaW5nX2FjY291bnQYCiABKAgiQgoMUHJvamVjdFVzYWdlEhIKCnByb2plY3RfaWQYASABKAkSEAoIcXVhbnRpdHkYAiABKAMSDAoEcGVhaxgDIAEoAyL1AQoKTWV0ZXJVc2FnZRINCgVtZXRlchgBIAEoCRIMCgR1bml0GAIgASgJEgwKBGtpbmQYAyABKAkSEAoIcXVhbnRpdHkYBCABKAMSDAoEcGVhaxgFIAEoAxINCgVsaW1pdBgGIAEoAxIPCgdwZXJjZW50GAcgASgBEhgKEG92ZXJhZ2VfcXVhbnRpdHkYCCABKAMSIAoYZXN0aW1hdGVkX292ZXJhZ2VfbWljcm9zGAkgASgDEhIKCmhhcmRfbGltaXQYCiABKAgSLAoKYnlfcHJvamVjdBgLIAMoCzIYLnNsaXB3YXkudjEuUHJvamVjdFVzYWdlIpcBCgtVc2FnZVBlcmlvZBIwCgxwZXJpb2Rfc3RhcnQYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnBlcmlvZF9lbmQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKBm1ldGVycxgDIAMoCzIWLnNsaXB3YXkudjEuTWV0ZXJVc2FnZSI3Cg1BbGVydFNldHRpbmdzEhIKCnRocmVzaG9sZHMYASADKAUSEgoKcmVjaXBpZW50cxgCIAMoCSIZChdHZXRBbGVydFNldHRpbmdzUmVxdWVzdCJHChhHZXRBbGVydFNldHRpbmdzUmVzcG9uc2USKwoIc2V0dGluZ3MYASABKAsyGS5zbGlwd2F5LnYxLkFsZXJ0U2V0dGluZ3MiSQoaVXBkYXRlQWxlcnRTZXR0aW5nc1JlcXVlc3QSKwoIc2V0dGluZ3MYASABKAsyGS5zbGlwd2F5LnYxLkFsZXJ0U2V0dGluZ3MiSgobVXBkYXRlQWxlcnRTZXR0aW5nc1Jlc3BvbnNlEisKCHNldHRpbmdzGAEgASgLMhkuc2xpcHdheS52MS5BbGVydFNldHRpbmdzInoKClVzYWdlQWxlcnQSDQoFbWV0ZXIYASABKAkSEQoJdGhyZXNob2xkGAIgASgFEg0KBXVzYWdlGAMgASgDEg0KBWxpbWl0GAQgASgDEiwKCGZpcmVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLIAgoOQmlsbGluZ0ludm9pY2USCgoCaWQYASABKAkSDgoGbnVtYmVyGAIgASgJEg4KBnN0YXR1cxgDIAEoCRIQCghjdXJyZW5jeRgEIAEoCRISCgphbW91bnRfZHVlGAUgASgDEhMKC2Ftb3VudF9wYWlkGAYgASgDEg0KBXRvdGFsGAcgASgDEhoKEmhvc3RlZF9pbnZvaWNlX3VybBgIIAEoCRITCgtpbnZvaWNlX3BkZhgJIAEoCRIwCgxwZXJpb2Rfc3RhcnQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnBlcmlvZF9lbmQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCWlzc3VlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiIQoOR2V0UGxhblJlcXVlc3QSDwoHcGxhbl9pZBgBIAEoCSIxCg9HZXRQbGFuUmVzcG9uc2USHgoEcGxhbhgBIAEoCzIQLnNsaXB3YXkudjEuUGxhbiISChBMaXN0UGxhbnNSZXF1ZXN0Ik0KEUxpc3RQbGFuc1Jlc3BvbnNlEh8KBXBsYW5zGAEgAygLMhAuc2xpcHdheS52MS5QbGFuEhcKD2N1cnJlbnRfcGxhbl9pZBgCIAEoCSIpCg9HZXRVc2FnZVJlcXVlc3QSFgoOaGlzdG9yeV9tb250aHMYASABKAUinwEKEEdldFVzYWdlUmVzcG9uc2USDwoHcGxhbl9pZBgBIAEoCRIoCgdjdXJyZW50GAIgASgLMhcuc2xpcHdheS52MS5Vc2FnZVBlcmlvZBIoCgdoaXN0b3J5GAMgAygLMhcuc2xpcHdheS52MS5Vc2FnZVBlcmlvZBImCgZhbGVydHMYBCADKAsyFi5zbGlwd2F5LnYxLlVzYWdlQWxlcnQiWQocQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uUmVxdWVzdBIPCgdwbGFuX2lkGAEgASgJEhMKC3N0YXJ0X3RyaWFsGAIgASgIEhMKC3JldHVybl9wYXRoGAMgASgJIkAKHUNyZWF0ZUNoZWNrb3V0U2Vzc2lvblJlc3BvbnNlEgsKA3VybBgBIAEoCRISCgpzZXNzaW9uX2lkGAIgASgJIjEKGkNyZWF0ZVBvcnRhbFNlc3Npb25SZXF1ZXN0EhMKC3JldHVybl9wYXRoGAEgASgJIioKG0NyZWF0ZVBvcnRhbFNlc3Npb25SZXNwb25zZRILCgN1cmwYASABKAkiGAoWR2V0U3Vic2NyaXB0aW9uUmVxdWVzdCJwChdHZXRTdWJzY3JpcHRpb25SZXNwb25zZRI1CgxzdWJzY3JpcHRpb24YASABKAsyHy5zbGlwd2F5LnYxLkJpbGxpbmdTdWJzY3JpcHRpb24SHgoEcGxhbhgCIAEoCzIQLnNsaXB3YXkudjEuUGxhbiI8ChNMaXN0SW52b2ljZXNSZXF1ZXN0EhEKCXBhZ2Vfc2l6ZRgBIAEoBRISCgpwYWdlX3Rva2VuGAIgASgJIloKFExpc3RJbnZvaWNlc1Jlc3BvbnNlEikKBWl0ZW1zGAEgAygLMhouc2xpcHdheS52MS5CaWxsaW5nSW52b2ljZRIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkiwAUKDlNldFBsYW5SZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRIPCgdwbGFuX2lkGAIgASgJEg4KBnJlYXNvbhgDIAEoCRIkChdob3N0ZWRfbWludXRlc19pbmNsdWRlZBgEIAEoA0gAiAEBEi0KIGhvc3RlZF9vdmVyYWdlX21pY3Jvc19wZXJfbWludXRlGAUgASgDSAGIAQESIwoWY29uY3VycmVudF9qb2JzX2hvc3RlZBgGIAEoA0gCiAEBEigKG2NvbmN1cnJlbnRfam9ic19zZWxmX2hvc3RlZBgHIAEoA0gDiAEBEh8KEmxvZ19yZXRlbnRpb25fZGF5cxgIIAEoA0gEiAEBEiQKF2FydGlmYWN0X3JldGVudGlvbl9kYXlzGAkgASgDSAWIAQESIQoUYXVkaXRfcmV0ZW50aW9uX2RheXMYCiABKANIBogBARInChpob3N0ZWRfb3ZlcmFnZV9jYXBfbWludXRlcxgLIAEoA0gHiAEBEhcKD2NsZWFyX292ZXJyaWRlcxgMIAEoCBInChpob3N0ZWRfam9iX3RpbWVvdXRfbWludXRlcxgNIAEoA0gIiAEBQhoKGF9ob3N0ZWRfbWludXRlc19pbmNsdWRlZEIjCiFfaG9zdGVkX292ZXJhZ2VfbWljcm9zX3Blcl9taW51dGVCGQoXX2NvbmN1cnJlbnRfam9ic19ob3N0ZWRCHgocX2NvbmN1cnJlbnRfam9ic19zZWxmX2hvc3RlZEIVChNfbG9nX3JldGVudGlvbl9kYXlzQhoKGF9hcnRpZmFjdF9yZXRlbnRpb25fZGF5c0IXChVfYXVkaXRfcmV0ZW50aW9uX2RheXNCHQobX2hvc3RlZF9vdmVyYWdlX2NhcF9taW51dGVzQh0KG19ob3N0ZWRfam9iX3RpbWVvdXRfbWludXRlcyJoCg9TZXRQbGFuUmVzcG9uc2USNQoMc3Vic2NyaXB0aW9uGAEgASgLMh8uc2xpcHdheS52MS5CaWxsaW5nU3Vic2NyaXB0aW9uEh4KBHBsYW4YAiABKAsyEC5zbGlwd2F5LnYxLlBsYW4y9QYKDkJpbGxpbmdTZXJ2aWNlEkIKB0dldFBsYW4SGi5zbGlwd2F5LnYxLkdldFBsYW5SZXF1ZXN0Ghsuc2xpcHdheS52MS5HZXRQbGFuUmVzcG9uc2USSAoJTGlzdFBsYW5zEhwuc2xpcHdheS52MS5MaXN0UGxhbnNSZXF1ZXN0Gh0uc2xpcHdheS52MS5MaXN0UGxhbnNSZXNwb25zZRJFCghHZXRVc2FnZRIbLnNsaXB3YXkudjEuR2V0VXNhZ2VSZXF1ZXN0Ghwuc2xpcHdheS52MS5HZXRVc2FnZVJlc3BvbnNlEmwKFUNyZWF0ZUNoZWNrb3V0U2Vzc2lvbhIoLnNsaXB3YXkudjEuQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uUmVxdWVzdBopLnNsaXB3YXkudjEuQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uUmVzcG9uc2USZgoTQ3JlYXRlUG9ydGFsU2Vzc2lvbhImLnNsaXB3YXkudjEuQ3JlYXRlUG9ydGFsU2Vzc2lvblJlcXVlc3QaJy5zbGlwd2F5LnYxLkNyZWF0ZVBvcnRhbFNlc3Npb25SZXNwb25zZRJaCg9HZXRTdWJzY3JpcHRpb24SIi5zbGlwd2F5LnYxLkdldFN1YnNjcmlwdGlvblJlcXVlc3QaIy5zbGlwd2F5LnYxLkdldFN1YnNjcmlwdGlvblJlc3BvbnNlElEKDExpc3RJbnZvaWNlcxIfLnNsaXB3YXkudjEuTGlzdEludm9pY2VzUmVxdWVzdBogLnNsaXB3YXkudjEuTGlzdEludm9pY2VzUmVzcG9uc2USQgoHU2V0UGxhbhIaLnNsaXB3YXkudjEuU2V0UGxhblJlcXVlc3QaGy5zbGlwd2F5LnYxLlNldFBsYW5SZXNwb25zZRJdChBHZXRBbGVydFNldHRpbmdzEiMuc2xpcHdheS52MS5HZXRBbGVydFNldHRpbmdzUmVxdWVzdBokLnNsaXB3YXkudjEuR2V0QWxlcnRTZXR0aW5nc1Jlc3BvbnNlEmYKE1VwZGF0ZUFsZXJ0U2V0dGluZ3MSJi5zbGlwd2F5LnYxLlVwZGF0ZUFsZXJ0U2V0dGluZ3NSZXF1ZXN0Gicuc2xpcHdheS52MS5VcGRhdGVBbGVydFNldHRpbmdzUmVzcG9uc2VCpwEKDmNvbS5zbGlwd2F5LnYxQgxCaWxsaW5nUHJvdG9QAVo+Z2l0aHViLmNvbS9zbGlwd2F5LXN5c3RlbXMvc2xpcHdheS1zZGsvZ28vc2xpcHdheS92MTtzbGlwd2F5djGiAgNTWFiqAgpTbGlwd2F5LlYxygIKU2xpcHdheVxWMeICFlNsaXB3YXlcVjFcR1BCTWV0YWRhdGHqAgtTbGlwd2F5OjpWMWIGcHJvdG8z", [file_google_protobuf_timestamp]);
9
+ export const file_slipway_v1_billing = /*@__PURE__*/ fileDesc("ChhzbGlwd2F5L3YxL2JpbGxpbmcucHJvdG8SCnNsaXB3YXkudjEixgUKDEVudGl0bGVtZW50cxIfChdob3N0ZWRfbWludXRlc19pbmNsdWRlZBgBIAEoAxIbChNob3N0ZWRfb3ZlcmFnZV9tb2RlGAIgASgJEigKIGhvc3RlZF9vdmVyYWdlX21pY3Jvc19wZXJfbWludXRlGAMgASgDEiMKG2NvbmN1cnJlbnRfam9ic19zZWxmX2hvc3RlZBgEIAEoAxIeChZjb25jdXJyZW50X2pvYnNfaG9zdGVkGAUgASgDEiAKGGVudmlyb25tZW50c19wZXJfcHJvamVjdBgGIAEoAxIdChVkZXBsb3ltZW50X3N0cmF0ZWdpZXMYByADKAkSFAoMcG9saWN5X2dhdGVzGAggASgDEhkKEWNoYW5nZV9tYW5hZ2VtZW50GAkgASgIEgsKA3NzbxgKIAEoCBIRCglzYW1sX3NjaW0YCyABKAgSEwoLY3VzdG9tX3JiYWMYDCABKAgSHAoUYXVkaXRfcmV0ZW50aW9uX2RheXMYDSABKAMSFAoMYXVkaXRfZXhwb3J0GA4gASgIEhcKD2F1ZGl0X3N0cmVhbWluZxgPIAEoCBIaChJsb2dfcmV0ZW50aW9uX2RheXMYECABKAMSHwoXYXJ0aWZhY3RfcmV0ZW50aW9uX2RheXMYESABKAMSFAoMc2VjcmV0c19ieW9rGBIgASgIEhMKC3NlY3JldHNfaHNtGBMgASgIEhkKEXNpZ25lZF9wcm92ZW5hbmNlGBQgASgIEhQKDHN1cHBvcnRfdGllchgVIAEoCRIYChBzdXBwb3J0X3Jlc3BvbnNlGBYgASgJEhIKCnVwdGltZV9zbGEYFyABKAkSFgoOZGVkaWNhdGVkX2NlbGwYGCABKAgSEgoKbmVnb3RpYXRlZBgZIAEoCBIiChpob3N0ZWRfam9iX3RpbWVvdXRfbWludXRlcxgaIAEoAyLOAQoEUGxhbhIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEg8KB3RhZ2xpbmUYAyABKAkSGwoTcHJpY2VfY2VudHNfbW9udGhseRgEIAEoAxIVCg1wcmljZV9pc19mcm9tGAUgASgIEhUKDWNvbnRhY3Rfc2FsZXMYBiABKAgSEgoKdHJpYWxfZGF5cxgHIAEoBRIuCgxlbnRpdGxlbWVudHMYCCABKAsyGC5zbGlwd2F5LnYxLkVudGl0bGVtZW50cxIMCgRyYW5rGAkgASgFIskCChNCaWxsaW5nU3Vic2NyaXB0aW9uEgoKAmlkGAEgASgJEgwKBHBsYW4YAiABKAkSDgoGc3RhdHVzGAMgASgJEjgKFGN1cnJlbnRfcGVyaW9kX3N0YXJ0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI2ChJjdXJyZW50X3BlcmlvZF9lbmQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCXRyaWFsX2VuZBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHAoUY2FuY2VsX2F0X3BlcmlvZF9lbmQYByABKAgSFwoPdHJpYWxfYXZhaWxhYmxlGAggASgIEhMKC3BsYW5fc291cmNlGAkgASgJEhsKE2hhc19iaWxsaW5nX2FjY291bnQYCiABKAgiQgoMUHJvamVjdFVzYWdlEhIKCnByb2plY3RfaWQYASABKAkSEAoIcXVhbnRpdHkYAiABKAMSDAoEcGVhaxgDIAEoAyL1AQoKTWV0ZXJVc2FnZRINCgVtZXRlchgBIAEoCRIMCgR1bml0GAIgASgJEgwKBGtpbmQYAyABKAkSEAoIcXVhbnRpdHkYBCABKAMSDAoEcGVhaxgFIAEoAxINCgVsaW1pdBgGIAEoAxIPCgdwZXJjZW50GAcgASgBEhgKEG92ZXJhZ2VfcXVhbnRpdHkYCCABKAMSIAoYZXN0aW1hdGVkX292ZXJhZ2VfbWljcm9zGAkgASgDEhIKCmhhcmRfbGltaXQYCiABKAgSLAoKYnlfcHJvamVjdBgLIAMoCzIYLnNsaXB3YXkudjEuUHJvamVjdFVzYWdlIpcBCgtVc2FnZVBlcmlvZBIwCgxwZXJpb2Rfc3RhcnQYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnBlcmlvZF9lbmQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKBm1ldGVycxgDIAMoCzIWLnNsaXB3YXkudjEuTWV0ZXJVc2FnZSI3Cg1BbGVydFNldHRpbmdzEhIKCnRocmVzaG9sZHMYASADKAUSEgoKcmVjaXBpZW50cxgCIAMoCSIZChdHZXRBbGVydFNldHRpbmdzUmVxdWVzdCJHChhHZXRBbGVydFNldHRpbmdzUmVzcG9uc2USKwoIc2V0dGluZ3MYASABKAsyGS5zbGlwd2F5LnYxLkFsZXJ0U2V0dGluZ3MiSQoaVXBkYXRlQWxlcnRTZXR0aW5nc1JlcXVlc3QSKwoIc2V0dGluZ3MYASABKAsyGS5zbGlwd2F5LnYxLkFsZXJ0U2V0dGluZ3MiSgobVXBkYXRlQWxlcnRTZXR0aW5nc1Jlc3BvbnNlEisKCHNldHRpbmdzGAEgASgLMhkuc2xpcHdheS52MS5BbGVydFNldHRpbmdzInoKClVzYWdlQWxlcnQSDQoFbWV0ZXIYASABKAkSEQoJdGhyZXNob2xkGAIgASgFEg0KBXVzYWdlGAMgASgDEg0KBWxpbWl0GAQgASgDEiwKCGZpcmVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLIAgoOQmlsbGluZ0ludm9pY2USCgoCaWQYASABKAkSDgoGbnVtYmVyGAIgASgJEg4KBnN0YXR1cxgDIAEoCRIQCghjdXJyZW5jeRgEIAEoCRISCgphbW91bnRfZHVlGAUgASgDEhMKC2Ftb3VudF9wYWlkGAYgASgDEg0KBXRvdGFsGAcgASgDEhoKEmhvc3RlZF9pbnZvaWNlX3VybBgIIAEoCRITCgtpbnZvaWNlX3BkZhgJIAEoCRIwCgxwZXJpb2Rfc3RhcnQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnBlcmlvZF9lbmQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCWlzc3VlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiIQoOR2V0UGxhblJlcXVlc3QSDwoHcGxhbl9pZBgBIAEoCSIxCg9HZXRQbGFuUmVzcG9uc2USHgoEcGxhbhgBIAEoCzIQLnNsaXB3YXkudjEuUGxhbiISChBMaXN0UGxhbnNSZXF1ZXN0ImUKEUxpc3RQbGFuc1Jlc3BvbnNlEh8KBXBsYW5zGAEgAygLMhAuc2xpcHdheS52MS5QbGFuEhcKD2N1cnJlbnRfcGxhbl9pZBgCIAEoCRIWCg5vbmxpbmVfYmlsbGluZxgDIAEoCCIpCg9HZXRVc2FnZVJlcXVlc3QSFgoOaGlzdG9yeV9tb250aHMYASABKAUinwEKEEdldFVzYWdlUmVzcG9uc2USDwoHcGxhbl9pZBgBIAEoCRIoCgdjdXJyZW50GAIgASgLMhcuc2xpcHdheS52MS5Vc2FnZVBlcmlvZBIoCgdoaXN0b3J5GAMgAygLMhcuc2xpcHdheS52MS5Vc2FnZVBlcmlvZBImCgZhbGVydHMYBCADKAsyFi5zbGlwd2F5LnYxLlVzYWdlQWxlcnQiWQocQ3JlYXRlQ2hlY2tvdXRTZXNzaW9uUmVxdWVzdBIPCgdwbGFuX2lkGAEgASgJEhMKC3N0YXJ0X3RyaWFsGAIgASgIEhMKC3JldHVybl9wYXRoGAMgASgJIkAKHUNyZWF0ZUNoZWNrb3V0U2Vzc2lvblJlc3BvbnNlEgsKA3VybBgBIAEoCRISCgpzZXNzaW9uX2lkGAIgASgJIjEKGkNyZWF0ZVBvcnRhbFNlc3Npb25SZXF1ZXN0EhMKC3JldHVybl9wYXRoGAEgASgJIioKG0NyZWF0ZVBvcnRhbFNlc3Npb25SZXNwb25zZRILCgN1cmwYASABKAkiGAoWR2V0U3Vic2NyaXB0aW9uUmVxdWVzdCKIAQoXR2V0U3Vic2NyaXB0aW9uUmVzcG9uc2USNQoMc3Vic2NyaXB0aW9uGAEgASgLMh8uc2xpcHdheS52MS5CaWxsaW5nU3Vic2NyaXB0aW9uEh4KBHBsYW4YAiABKAsyEC5zbGlwd2F5LnYxLlBsYW4SFgoOb25saW5lX2JpbGxpbmcYAyABKAgiPAoTTGlzdEludm9pY2VzUmVxdWVzdBIRCglwYWdlX3NpemUYASABKAUSEgoKcGFnZV90b2tlbhgCIAEoCSJaChRMaXN0SW52b2ljZXNSZXNwb25zZRIpCgVpdGVtcxgBIAMoCzIaLnNsaXB3YXkudjEuQmlsbGluZ0ludm9pY2USFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIsAFCg5TZXRQbGFuUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSDwoHcGxhbl9pZBgCIAEoCRIOCgZyZWFzb24YAyABKAkSJAoXaG9zdGVkX21pbnV0ZXNfaW5jbHVkZWQYBCABKANIAIgBARItCiBob3N0ZWRfb3ZlcmFnZV9taWNyb3NfcGVyX21pbnV0ZRgFIAEoA0gBiAEBEiMKFmNvbmN1cnJlbnRfam9ic19ob3N0ZWQYBiABKANIAogBARIoChtjb25jdXJyZW50X2pvYnNfc2VsZl9ob3N0ZWQYByABKANIA4gBARIfChJsb2dfcmV0ZW50aW9uX2RheXMYCCABKANIBIgBARIkChdhcnRpZmFjdF9yZXRlbnRpb25fZGF5cxgJIAEoA0gFiAEBEiEKFGF1ZGl0X3JldGVudGlvbl9kYXlzGAogASgDSAaIAQESJwoaaG9zdGVkX292ZXJhZ2VfY2FwX21pbnV0ZXMYCyABKANIB4gBARIXCg9jbGVhcl9vdmVycmlkZXMYDCABKAgSJwoaaG9zdGVkX2pvYl90aW1lb3V0X21pbnV0ZXMYDSABKANICIgBAUIaChhfaG9zdGVkX21pbnV0ZXNfaW5jbHVkZWRCIwohX2hvc3RlZF9vdmVyYWdlX21pY3Jvc19wZXJfbWludXRlQhkKF19jb25jdXJyZW50X2pvYnNfaG9zdGVkQh4KHF9jb25jdXJyZW50X2pvYnNfc2VsZl9ob3N0ZWRCFQoTX2xvZ19yZXRlbnRpb25fZGF5c0IaChhfYXJ0aWZhY3RfcmV0ZW50aW9uX2RheXNCFwoVX2F1ZGl0X3JldGVudGlvbl9kYXlzQh0KG19ob3N0ZWRfb3ZlcmFnZV9jYXBfbWludXRlc0IdChtfaG9zdGVkX2pvYl90aW1lb3V0X21pbnV0ZXMiaAoPU2V0UGxhblJlc3BvbnNlEjUKDHN1YnNjcmlwdGlvbhgBIAEoCzIfLnNsaXB3YXkudjEuQmlsbGluZ1N1YnNjcmlwdGlvbhIeCgRwbGFuGAIgASgLMhAuc2xpcHdheS52MS5QbGFuMvUGCg5CaWxsaW5nU2VydmljZRJCCgdHZXRQbGFuEhouc2xpcHdheS52MS5HZXRQbGFuUmVxdWVzdBobLnNsaXB3YXkudjEuR2V0UGxhblJlc3BvbnNlEkgKCUxpc3RQbGFucxIcLnNsaXB3YXkudjEuTGlzdFBsYW5zUmVxdWVzdBodLnNsaXB3YXkudjEuTGlzdFBsYW5zUmVzcG9uc2USRQoIR2V0VXNhZ2USGy5zbGlwd2F5LnYxLkdldFVzYWdlUmVxdWVzdBocLnNsaXB3YXkudjEuR2V0VXNhZ2VSZXNwb25zZRJsChVDcmVhdGVDaGVja291dFNlc3Npb24SKC5zbGlwd2F5LnYxLkNyZWF0ZUNoZWNrb3V0U2Vzc2lvblJlcXVlc3QaKS5zbGlwd2F5LnYxLkNyZWF0ZUNoZWNrb3V0U2Vzc2lvblJlc3BvbnNlEmYKE0NyZWF0ZVBvcnRhbFNlc3Npb24SJi5zbGlwd2F5LnYxLkNyZWF0ZVBvcnRhbFNlc3Npb25SZXF1ZXN0Gicuc2xpcHdheS52MS5DcmVhdGVQb3J0YWxTZXNzaW9uUmVzcG9uc2USWgoPR2V0U3Vic2NyaXB0aW9uEiIuc2xpcHdheS52MS5HZXRTdWJzY3JpcHRpb25SZXF1ZXN0GiMuc2xpcHdheS52MS5HZXRTdWJzY3JpcHRpb25SZXNwb25zZRJRCgxMaXN0SW52b2ljZXMSHy5zbGlwd2F5LnYxLkxpc3RJbnZvaWNlc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkxpc3RJbnZvaWNlc1Jlc3BvbnNlEkIKB1NldFBsYW4SGi5zbGlwd2F5LnYxLlNldFBsYW5SZXF1ZXN0Ghsuc2xpcHdheS52MS5TZXRQbGFuUmVzcG9uc2USXQoQR2V0QWxlcnRTZXR0aW5ncxIjLnNsaXB3YXkudjEuR2V0QWxlcnRTZXR0aW5nc1JlcXVlc3QaJC5zbGlwd2F5LnYxLkdldEFsZXJ0U2V0dGluZ3NSZXNwb25zZRJmChNVcGRhdGVBbGVydFNldHRpbmdzEiYuc2xpcHdheS52MS5VcGRhdGVBbGVydFNldHRpbmdzUmVxdWVzdBonLnNsaXB3YXkudjEuVXBkYXRlQWxlcnRTZXR0aW5nc1Jlc3BvbnNlQqcBCg5jb20uc2xpcHdheS52MUIMQmlsbGluZ1Byb3RvUAFaPmdpdGh1Yi5jb20vc2xpcHdheS1zeXN0ZW1zL3NsaXB3YXktc2RrL2dvL3NsaXB3YXkvdjE7c2xpcHdheXYxogIDU1hYqgIKU2xpcHdheS5WMcoCClNsaXB3YXlcVjHiAhZTbGlwd2F5XFYxXEdQQk1ldGFkYXRh6gILU2xpcHdheTo6VjFiBnByb3RvMw", [file_google_protobuf_timestamp]);
10
10
  /**
11
11
  * Describes the message slipway.v1.Entitlements.
12
12
  * Use `create(EntitlementsSchema)` to create a new message.
@@ -0,0 +1,104 @@
1
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
2
+ import type { Message } from "@bufbuild/protobuf";
3
+ /**
4
+ * Describes the file slipway/v1/cli_login.proto.
5
+ */
6
+ export declare const file_slipway_v1_cli_login: GenFile;
7
+ /**
8
+ * ApproveCliLoginRequest approves the sign-in showing user_code.
9
+ *
10
+ * @generated from message slipway.v1.ApproveCliLoginRequest
11
+ */
12
+ export type ApproveCliLoginRequest = Message<"slipway.v1.ApproveCliLoginRequest"> & {
13
+ /**
14
+ * ABCD-EFGH, as shown in the terminal and in the page URL
15
+ *
16
+ * @generated from field: string user_code = 1;
17
+ */
18
+ userCode: string;
19
+ /**
20
+ * base64url(sha256(verifier)), from the page URL
21
+ *
22
+ * @generated from field: string challenge = 2;
23
+ */
24
+ challenge: string;
25
+ /**
26
+ * the token's display name, e.g. "slipway-cli on laptop"
27
+ *
28
+ * @generated from field: string name = 3;
29
+ */
30
+ name: string;
31
+ };
32
+ /**
33
+ * Describes the message slipway.v1.ApproveCliLoginRequest.
34
+ * Use `create(ApproveCliLoginRequestSchema)` to create a new message.
35
+ */
36
+ export declare const ApproveCliLoginRequestSchema: GenMessage<ApproveCliLoginRequest>;
37
+ /**
38
+ * @generated from message slipway.v1.ApproveCliLoginResponse
39
+ */
40
+ export type ApproveCliLoginResponse = Message<"slipway.v1.ApproveCliLoginResponse"> & {
41
+ /**
42
+ * the organisation the token acts in
43
+ *
44
+ * @generated from field: string organization_slug = 1;
45
+ */
46
+ organizationSlug: string;
47
+ };
48
+ /**
49
+ * Describes the message slipway.v1.ApproveCliLoginResponse.
50
+ * Use `create(ApproveCliLoginResponseSchema)` to create a new message.
51
+ */
52
+ export declare const ApproveCliLoginResponseSchema: GenMessage<ApproveCliLoginResponse>;
53
+ /**
54
+ * DenyCliLoginRequest refuses the sign-in showing user_code; the CLI stops waiting and says so.
55
+ *
56
+ * @generated from message slipway.v1.DenyCliLoginRequest
57
+ */
58
+ export type DenyCliLoginRequest = Message<"slipway.v1.DenyCliLoginRequest"> & {
59
+ /**
60
+ * @generated from field: string user_code = 1;
61
+ */
62
+ userCode: string;
63
+ /**
64
+ * @generated from field: string challenge = 2;
65
+ */
66
+ challenge: string;
67
+ };
68
+ /**
69
+ * Describes the message slipway.v1.DenyCliLoginRequest.
70
+ * Use `create(DenyCliLoginRequestSchema)` to create a new message.
71
+ */
72
+ export declare const DenyCliLoginRequestSchema: GenMessage<DenyCliLoginRequest>;
73
+ /**
74
+ * @generated from message slipway.v1.DenyCliLoginResponse
75
+ */
76
+ export type DenyCliLoginResponse = Message<"slipway.v1.DenyCliLoginResponse"> & {};
77
+ /**
78
+ * Describes the message slipway.v1.DenyCliLoginResponse.
79
+ * Use `create(DenyCliLoginResponseSchema)` to create a new message.
80
+ */
81
+ export declare const DenyCliLoginResponseSchema: GenMessage<DenyCliLoginResponse>;
82
+ /**
83
+ * CliLoginService approves or refuses `slipway login` browser sign-ins (identity domain).
84
+ *
85
+ * @generated from service slipway.v1.CliLoginService
86
+ */
87
+ export declare const CliLoginService: GenService<{
88
+ /**
89
+ * @generated from rpc slipway.v1.CliLoginService.ApproveCliLogin
90
+ */
91
+ approveCliLogin: {
92
+ methodKind: "unary";
93
+ input: typeof ApproveCliLoginRequestSchema;
94
+ output: typeof ApproveCliLoginResponseSchema;
95
+ };
96
+ /**
97
+ * @generated from rpc slipway.v1.CliLoginService.DenyCliLogin
98
+ */
99
+ denyCliLogin: {
100
+ methodKind: "unary";
101
+ input: typeof DenyCliLoginRequestSchema;
102
+ output: typeof DenyCliLoginResponseSchema;
103
+ };
104
+ }>;
@@ -0,0 +1,34 @@
1
+ // @generated by protoc-gen-es v2.16.0 with parameter "target=ts,import_extension=js"
2
+ // @generated from file slipway/v1/cli_login.proto (package slipway.v1, syntax proto3)
3
+ /* eslint-disable */
4
+ import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
5
+ /**
6
+ * Describes the file slipway/v1/cli_login.proto.
7
+ */
8
+ export const file_slipway_v1_cli_login = /*@__PURE__*/ fileDesc("ChpzbGlwd2F5L3YxL2NsaV9sb2dpbi5wcm90bxIKc2xpcHdheS52MSJMChZBcHByb3ZlQ2xpTG9naW5SZXF1ZXN0EhEKCXVzZXJfY29kZRgBIAEoCRIRCgljaGFsbGVuZ2UYAiABKAkSDAoEbmFtZRgDIAEoCSI0ChdBcHByb3ZlQ2xpTG9naW5SZXNwb25zZRIZChFvcmdhbml6YXRpb25fc2x1ZxgBIAEoCSI7ChNEZW55Q2xpTG9naW5SZXF1ZXN0EhEKCXVzZXJfY29kZRgBIAEoCRIRCgljaGFsbGVuZ2UYAiABKAkiFgoURGVueUNsaUxvZ2luUmVzcG9uc2UywAEKD0NsaUxvZ2luU2VydmljZRJaCg9BcHByb3ZlQ2xpTG9naW4SIi5zbGlwd2F5LnYxLkFwcHJvdmVDbGlMb2dpblJlcXVlc3QaIy5zbGlwd2F5LnYxLkFwcHJvdmVDbGlMb2dpblJlc3BvbnNlElEKDERlbnlDbGlMb2dpbhIfLnNsaXB3YXkudjEuRGVueUNsaUxvZ2luUmVxdWVzdBogLnNsaXB3YXkudjEuRGVueUNsaUxvZ2luUmVzcG9uc2VCqAEKDmNvbS5zbGlwd2F5LnYxQg1DbGlMb2dpblByb3RvUAFaPmdpdGh1Yi5jb20vc2xpcHdheS1zeXN0ZW1zL3NsaXB3YXktc2RrL2dvL3NsaXB3YXkvdjE7c2xpcHdheXYxogIDU1hYqgIKU2xpcHdheS5WMcoCClNsaXB3YXlcVjHiAhZTbGlwd2F5XFYxXEdQQk1ldGFkYXRh6gILU2xpcHdheTo6VjFiBnByb3RvMw");
9
+ /**
10
+ * Describes the message slipway.v1.ApproveCliLoginRequest.
11
+ * Use `create(ApproveCliLoginRequestSchema)` to create a new message.
12
+ */
13
+ export const ApproveCliLoginRequestSchema = /*@__PURE__*/ messageDesc(file_slipway_v1_cli_login, 0);
14
+ /**
15
+ * Describes the message slipway.v1.ApproveCliLoginResponse.
16
+ * Use `create(ApproveCliLoginResponseSchema)` to create a new message.
17
+ */
18
+ export const ApproveCliLoginResponseSchema = /*@__PURE__*/ messageDesc(file_slipway_v1_cli_login, 1);
19
+ /**
20
+ * Describes the message slipway.v1.DenyCliLoginRequest.
21
+ * Use `create(DenyCliLoginRequestSchema)` to create a new message.
22
+ */
23
+ export const DenyCliLoginRequestSchema = /*@__PURE__*/ messageDesc(file_slipway_v1_cli_login, 2);
24
+ /**
25
+ * Describes the message slipway.v1.DenyCliLoginResponse.
26
+ * Use `create(DenyCliLoginResponseSchema)` to create a new message.
27
+ */
28
+ export const DenyCliLoginResponseSchema = /*@__PURE__*/ messageDesc(file_slipway_v1_cli_login, 3);
29
+ /**
30
+ * CliLoginService approves or refuses `slipway login` browser sign-ins (identity domain).
31
+ *
32
+ * @generated from service slipway.v1.CliLoginService
33
+ */
34
+ export const CliLoginService = /*@__PURE__*/ serviceDesc(file_slipway_v1_cli_login, 0);
@@ -866,6 +866,12 @@ export type Release = Message<"slipway.v1.Release"> & {
866
866
  * @generated from field: google.protobuf.Timestamp created_at = 16;
867
867
  */
868
868
  createdAt?: Timestamp | undefined;
869
+ /**
870
+ * created_by with its kind and display name, for people to read
871
+ *
872
+ * @generated from field: slipway.v1.Actor created_by_actor = 17;
873
+ */
874
+ createdByActor?: Actor | undefined;
869
875
  };
870
876
  /**
871
877
  * Describes the message slipway.v1.Release.
@@ -1332,6 +1338,24 @@ export type DeploymentStep = Message<"slipway.v1.DeploymentStep"> & {
1332
1338
  * @generated from field: google.protobuf.Timestamp finished_at = 16;
1333
1339
  */
1334
1340
  finishedAt?: Timestamp | undefined;
1341
+ /**
1342
+ * the run that executes a job step (runner = job); its logs are the step's output
1343
+ *
1344
+ * @generated from field: string run_id = 17;
1345
+ */
1346
+ runId: string;
1347
+ /**
1348
+ * that run's job, for LogService.Tail
1349
+ *
1350
+ * @generated from field: string job_id = 18;
1351
+ */
1352
+ jobId: string;
1353
+ /**
1354
+ * why a dispatched job is not running yet (no runner online, no pool, capacity)
1355
+ *
1356
+ * @generated from field: string waiting_reason = 19;
1357
+ */
1358
+ waitingReason: string;
1335
1359
  };
1336
1360
  /**
1337
1361
  * Describes the message slipway.v1.DeploymentStep.
@@ -1526,6 +1550,12 @@ export type Approval = Message<"slipway.v1.Approval"> & {
1526
1550
  * @generated from field: string environment_name = 22;
1527
1551
  */
1528
1552
  environmentName: string;
1553
+ /**
1554
+ * display name of requested_by, for people to read
1555
+ *
1556
+ * @generated from field: string requested_by_name = 23;
1557
+ */
1558
+ requestedByName: string;
1529
1559
  };
1530
1560
  /**
1531
1561
  * Describes the message slipway.v1.Approval.
@@ -1830,6 +1860,12 @@ export type Deployment = Message<"slipway.v1.Deployment"> & {
1830
1860
  * @generated from field: string environment_name = 34;
1831
1861
  */
1832
1862
  environmentName: string;
1863
+ /**
1864
+ * created through an active freeze on explicit request
1865
+ *
1866
+ * @generated from field: bool override_freeze = 35;
1867
+ */
1868
+ overrideFreeze: boolean;
1833
1869
  };
1834
1870
  /**
1835
1871
  * Describes the message slipway.v1.Deployment.
@@ -2260,6 +2296,18 @@ export type RunbookRun = Message<"slipway.v1.RunbookRun"> & {
2260
2296
  * @generated from field: google.protobuf.Timestamp created_at = 15;
2261
2297
  */
2262
2298
  createdAt?: Timestamp | undefined;
2299
+ /**
2300
+ * the run that executes the runbook's job; its logs are the runbook run's output
2301
+ *
2302
+ * @generated from field: string run_id = 16;
2303
+ */
2304
+ runId: string;
2305
+ /**
2306
+ * that run's job, for LogService.Tail
2307
+ *
2308
+ * @generated from field: string job_id = 17;
2309
+ */
2310
+ jobId: string;
2263
2311
  };
2264
2312
  /**
2265
2313
  * Describes the message slipway.v1.RunbookRun.
@@ -2721,6 +2769,17 @@ export type CreateDeploymentRequest = Message<"slipway.v1.CreateDeploymentReques
2721
2769
  * @generated from field: bool disable_auto_rollback = 14;
2722
2770
  */
2723
2771
  disableAutoRollback: boolean;
2772
+ /**
2773
+ * Deploy through an active freeze that allows emergency overrides: needs deployments.override_freeze and a
2774
+ * reason, and is audited (deployment.freeze_overridden). The permission alone never bypasses a freeze.
2775
+ *
2776
+ * @generated from field: bool override_freeze = 15;
2777
+ */
2778
+ overrideFreeze: boolean;
2779
+ /**
2780
+ * @generated from field: string override_reason = 16;
2781
+ */
2782
+ overrideReason: string;
2724
2783
  };
2725
2784
  /**
2726
2785
  * Describes the message slipway.v1.CreateDeploymentRequest.
@@ -2769,6 +2828,12 @@ export type PreviewDeploymentRequest = Message<"slipway.v1.PreviewDeploymentRequ
2769
2828
  * @generated from field: string tenant = 6;
2770
2829
  */
2771
2830
  tenant: string;
2831
+ /**
2832
+ * evaluate the freeze gate as if the caller asked to override it
2833
+ *
2834
+ * @generated from field: bool override_freeze = 7;
2835
+ */
2836
+ overrideFreeze: boolean;
2772
2837
  };
2773
2838
  /**
2774
2839
  * Describes the message slipway.v1.PreviewDeploymentRequest.
@@ -3511,6 +3576,16 @@ export type PromoteReleaseRequest = Message<"slipway.v1.PromoteReleaseRequest">
3511
3576
  * @generated from field: bool force = 6;
3512
3577
  */
3513
3578
  force: boolean;
3579
+ /**
3580
+ * as CreateDeploymentRequest.override_freeze
3581
+ *
3582
+ * @generated from field: bool override_freeze = 7;
3583
+ */
3584
+ overrideFreeze: boolean;
3585
+ /**
3586
+ * @generated from field: string override_reason = 8;
3587
+ */
3588
+ overrideReason: string;
3514
3589
  };
3515
3590
  /**
3516
3591
  * Describes the message slipway.v1.PromoteReleaseRequest.
@@ -3846,6 +3921,8 @@ export type CreateEnvironmentRequest = Message<"slipway.v1.CreateEnvironmentRequ
3846
3921
  */
3847
3922
  description: string;
3848
3923
  /**
3924
+ * 0 = placed by kind: after the last environment whose kind (dev, test, staging, prod, custom) comes no later
3925
+ *
3849
3926
  * @generated from field: int32 order = 5;
3850
3927
  */
3851
3928
  order: number;
@@ -5151,6 +5228,18 @@ export type RunRunbookRequest = Message<"slipway.v1.RunRunbookRequest"> & {
5151
5228
  parameters: {
5152
5229
  [key: string]: string;
5153
5230
  };
5231
+ /**
5232
+ * Run through an active freeze (environments with apply_to_runbooks) that allows emergency overrides: needs
5233
+ * deployments.override_freeze and a reason, and is audited (runbook.freeze_overridden). The permission alone
5234
+ * never bypasses a freeze.
5235
+ *
5236
+ * @generated from field: bool override_freeze = 5;
5237
+ */
5238
+ overrideFreeze: boolean;
5239
+ /**
5240
+ * @generated from field: string override_reason = 6;
5241
+ */
5242
+ overrideReason: string;
5154
5243
  };
5155
5244
  /**
5156
5245
  * Describes the message slipway.v1.RunRunbookRequest.
@@ -7,7 +7,7 @@ import { file_slipway_v1_common } from "./common_pb.js";
7
7
  /**
8
8
  * Describes the file slipway/v1/deploy.proto.
9
9
  */
10
- export const file_slipway_v1_deploy = /*@__PURE__*/ fileDesc("ChdzbGlwd2F5L3YxL2RlcGxveS5wcm90bxIKc2xpcHdheS52MSJNCghBcHByb3ZlchIMCgRraW5kGAEgASgJEgoKAmlkGAIgASgJEhEKCW1pbl9jb3VudBgDIAEoBRIUCgxkaXNwbGF5X25hbWUYBCABKAki9QEKDERlcGxveVdpbmRvdxIMCgRuYW1lGAEgASgJEgwKBGRheXMYAiADKAkSDQoFc3RhcnQYAyABKAkSCwoDZW5kGAQgASgJEhAKCHRpbWV6b25lGAUgASgJEigKBGZyb20YBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKAnRvGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIMCgRjcm9uGAggASgJEisKCGR1cmF0aW9uGAkgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEg4KBnJlYXNvbhgKIAEoCSJ3CgxEZXBsb3lQb2xpY3kSDAoEbmFtZRgBIAEoCRISCgpleHByZXNzaW9uGAIgASgJEg8KB21lc3NhZ2UYAyABKAkSEAoIc2V2ZXJpdHkYBCABKAkSIgoDb3BhGAUgASgLMhUuc2xpcHdheS52MS5PcGFQb2xpY3kiLgoJT3BhUG9saWN5EhMKC2ludGVncmF0aW9uGAEgASgJEgwKBHBhdGgYAiABKAkitgMKD1Byb3RlY3Rpb25SdWxlcxIaChJyZXF1aXJlZF9hcHByb3ZhbHMYASABKAUSJwoJYXBwcm92ZXJzGAIgAygLMhQuc2xpcHdheS52MS5BcHByb3ZlchIbChNhbGxvd19zZWxmX2FwcHJvdmFsGAMgASgIEhgKEGFsbG93ZWRfYnJhbmNoZXMYBCADKAkSNAoSZGVwbG95bWVudF93aW5kb3dzGAUgAygLMhguc2xpcHdheS52MS5EZXBsb3lXaW5kb3cSMAoOZnJlZXplX3BlcmlvZHMYBiADKAsyGC5zbGlwd2F5LnYxLkRlcGxveVdpbmRvdxIqCghwb2xpY2llcxgHIAMoCzIYLnNsaXB3YXkudjEuRGVwbG95UG9saWN5Eh4KFmNoYW5nZV90aWNrZXRfcmVxdWlyZWQYCCABKAgSMwoQYXBwcm92YWxfdGltZW91dBgJIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIZChFhcHBseV90b19ydW5ib29rcxgKIAEoCBIjChtyZXF1aXJlX3ZlcmlmaWVkX3Byb3ZlbmFuY2UYCyABKAgidwoNVmFyaWFibGVTY29wZRISCgpzZXJ2aWNlX2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAMgASgJEg4KBnRlbmFudBgEIAEoCRIPCgdjaGFubmVsGAUgASgJIt0DChFEZXBsb3lhYmxlU2VydmljZRIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDAoEc2x1ZxgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRIMCgRraW5kGAYgASgJEi4KDWFydGlmYWN0X3NwZWMYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KDGhlYWx0aF9jaGVjaxgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKcmVwb3NpdG9yeRgJIAEoCRIYChBkZWZhdWx0X3N0cmF0ZWd5GAogASgJEjkKBmxhYmVscxgLIAMoCzIpLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2UuTGFiZWxzRW50cnkSEgoKY3JlYXRlZF9ieRgMIAEoCRIuCgpjcmVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIrkCCgtFbnZpcm9ubWVudBIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDAoEc2x1ZxgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRINCgVvcmRlchgGIAEoBRIMCgRraW5kGAcgASgJEgsKA3VybBgIIAEoCRI1ChBwcm90ZWN0aW9uX3J1bGVzGAkgASgLMhsuc2xpcHdheS52MS5Qcm90ZWN0aW9uUnVsZXMSGAoQZGVmYXVsdF9zdHJhdGVneRgKIAEoCRIuCgpjcmVhdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCK5BAoOSW5mcmFzdHJ1Y3R1cmUSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEgwKBGtpbmQYBSABKAkSJwoGY29uZmlnGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIVCg1jb25uZWN0aW9uX2lkGAcgASgJEhYKDnJ1bm5lcl9wb29sX2lkGAggASgJEhMKC3NlcnZpY2VfaWRzGAkgAygJEg4KBnJlZ2lvbhgKIAEoCRI2CgZsYWJlbHMYCyADKAsyJi5zbGlwd2F5LnYxLkluZnJhc3RydWN0dXJlLkxhYmVsc0VudHJ5EicKBmhlYWx0aBgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMwoPbGFzdF9jaGVja2VkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIxCg5kcmlmdF9pbnRlcnZhbBgOIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIuCgpjcmVhdGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIpMCCg5EZXBsb3lWYXJpYWJsZRIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDQoFdmFsdWUYBCABKAkSEgoKc2VjcmV0X3JlZhgFIAEoCRIRCglzZW5zaXRpdmUYBiABKAgSEwoLZGVzY3JpcHRpb24YByABKAkSKAoFc2NvcGUYCCABKAsyGS5zbGlwd2F5LnYxLlZhcmlhYmxlU2NvcGUSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiuAEKEFJlc29sdmVkVmFyaWFibGUSDAoEbmFtZRgBIAEoCRINCgV2YWx1ZRgCIAEoCRIRCglzZW5zaXRpdmUYAyABKAgSEwoLdmFyaWFibGVfaWQYBCABKAkSKAoFc2NvcGUYBSABKAsyGS5zbGlwd2F5LnYxLlZhcmlhYmxlU2NvcGUSEgoKb3ZlcnJpZGRlbhgGIAEoBRISCgpzZWNyZXRfcmVmGAcgASgJEg0KBWVycm9yGAggASgJItABCgZGcmVlemUSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEg4KBnJlYXNvbhgFIAEoCRIoCgZ3aW5kb3cYBiABKAsyGC5zbGlwd2F5LnYxLkRlcGxveVdpbmRvdxIWCg5hbGxvd19vdmVycmlkZRgHIAEoCBIuCgpjcmVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLVAQoORnJlZXplSW50ZXJ2YWwSDgoGc291cmNlGAEgASgJEhEKCWZyZWV6ZV9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEg4KBnJlYXNvbhgFIAEoCRIpCgVzdGFydBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJwoDZW5kGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIWCg5hbGxvd19vdmVycmlkZRgIIAEoCCK7AQoPUmVsZWFzZUFydGlmYWN0EgwKBGtpbmQYASABKAkSCwoDcmVmGAIgASgJEg8KB3ZlcnNpb24YAyABKAkSDgoGZGlnZXN0GAQgASgJEjsKCG1ldGFkYXRhGAUgAygLMikuc2xpcHdheS52MS5SZWxlYXNlQXJ0aWZhY3QuTWV0YWRhdGFFbnRyeRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiYQoSUmVsZWFzZUF0dGVzdGF0aW9uEgwKBHR5cGUYASABKAkSCwoDdXJpGAIgASgJEg4KBmRpZ2VzdBgDIAEoCRIQCgh2ZXJpZmllZBgEIAEoCBIOCgZzaWduZXIYBSABKAki8wEKEVJlbGVhc2VQcm92ZW5hbmNlEg4KBnJ1bl9pZBgBIAEoCRITCgtwaXBlbGluZV9pZBgCIAEoCRIOCgZqb2JfaWQYAyABKAkSHwoDZ2l0GAQgASgLMhIuc2xpcHdheS52MS5HaXRSZWYSLQoJY29tbWl0X2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIPCgdidWlsZGVyGAYgASgJEjQKDGF0dGVzdGF0aW9ucxgHIAMoCzIeLnNsaXB3YXkudjEuUmVsZWFzZUF0dGVzdGF0aW9uEhIKCnJlcG9zaXRvcnkYCCABKAkikgEKEFNuYXBzaG90VmFyaWFibGUSDAoEbmFtZRgBIAEoCRINCgV2YWx1ZRgCIAEoCRISCgpzZWNyZXRfcmVmGAMgASgJEhEKCXNlbnNpdGl2ZRgEIAEoCBIoCgVzY29wZRgFIAEoCzIZLnNsaXB3YXkudjEuVmFyaWFibGVTY29wZRIQCghvcmdfd2lkZRgGIAEoCCKvBAoHUmVsZWFzZRIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhIKCnNlcnZpY2VfaWQYAyABKAkSDwoHdmVyc2lvbhgEIAEoCRISCgpjaGFubmVsX2lkGAUgASgJEhQKDGNoYW5uZWxfbmFtZRgGIAEoCRIUCgxsaWZlY3ljbGVfaWQYByABKAkSNQoJYXJ0aWZhY3RzGAggAygLMiIuc2xpcHdheS52MS5SZWxlYXNlLkFydGlmYWN0c0VudHJ5EjgKEnZhcmlhYmxlc19zbmFwc2hvdBgJIAMoCzIcLnNsaXB3YXkudjEuU25hcHNob3RWYXJpYWJsZRIxCgpwcm92ZW5hbmNlGAogASgLMh0uc2xpcHdheS52MS5SZWxlYXNlUHJvdmVuYW5jZRISCgpjb21taXRfc2hhGAsgASgJEi0KCWNvbW1pdF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGcnVuX2lkGA0gASgJEhUKDXJlbGVhc2Vfbm90ZXMYDiABKAkSEgoKY3JlYXRlZF9ieRgPIAEoCRIuCgpjcmVhdGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBpNCg5BcnRpZmFjdHNFbnRyeRILCgNrZXkYASABKAkSKgoFdmFsdWUYAiABKAsyGy5zbGlwd2F5LnYxLlJlbGVhc2VBcnRpZmFjdDoCOAEipgEKDkxpZmVjeWNsZVBoYXNlEgwKBG5hbWUYASABKAkSFwoPZW52aXJvbm1lbnRfaWRzGAIgAygJEhQKDGF1dG9fcHJvbW90ZRgDIAEoCBIrCghtaW5fc29haxgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIYChBtaW5fZW52aXJvbm1lbnRzGAUgASgFEhAKCG9wdGlvbmFsGAYgASgIIu4BCglMaWZlY3ljbGUSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEioKBnBoYXNlcxgFIAMoCzIaLnNsaXB3YXkudjEuTGlmZWN5Y2xlUGhhc2USEgoKaXNfZGVmYXVsdBgGIAEoCBIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIsCgtWZXJzaW9uUnVsZRIMCgRraW5kGAEgASgJEg8KB3BhdHRlcm4YAiABKAkioAIKDlJlbGVhc2VDaGFubmVsEgoKAmlkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEgoKc2VydmljZV9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJEi0KDHZlcnNpb25fcnVsZRgGIAEoCzIXLnNsaXB3YXkudjEuVmVyc2lvblJ1bGUSFAoMbGlmZWN5Y2xlX2lkGAcgASgJEhIKCmlzX2RlZmF1bHQYCCABKAgSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiigUKC1JlbGVhc2VEaWZmEiEKBGZyb20YASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USHwoCdG8YAiABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USOQoJYXJ0aWZhY3RzGAMgAygLMiYuc2xpcHdheS52MS5SZWxlYXNlRGlmZi5BcnRpZmFjdENoYW5nZRI5Cgl2YXJpYWJsZXMYBCADKAsyJi5zbGlwd2F5LnYxLlJlbGVhc2VEaWZmLlZhcmlhYmxlQ2hhbmdlEi8KB2NvbW1pdHMYBSADKAsyHi5zbGlwd2F5LnYxLlJlbGVhc2VEaWZmLkNvbW1pdBIPCgd0aWNrZXRzGAYgAygJEhsKE2NvbW1pdHNfdW5hdmFpbGFibGUYByABKAgSEwoLY29tcGFyZV91cmwYCCABKAkaggEKDkFydGlmYWN0Q2hhbmdlEgwKBG5hbWUYASABKAkSDgoGY2hhbmdlGAIgASgJEikKBGZyb20YAyABKAsyGy5zbGlwd2F5LnYxLlJlbGVhc2VBcnRpZmFjdBInCgJ0bxgEIAEoCzIbLnNsaXB3YXkudjEuUmVsZWFzZUFydGlmYWN0GlsKDlZhcmlhYmxlQ2hhbmdlEgwKBG5hbWUYASABKAkSDgoGY2hhbmdlGAIgASgJEgwKBGZyb20YAyABKAkSCgoCdG8YBCABKAkSEQoJc2Vuc2l0aXZlGAUgASgIGmsKBkNvbW1pdBILCgNzaGEYASABKAkSDwoHbWVzc2FnZRgCIAEoCRIOCgZhdXRob3IYAyABKAkSJgoCYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEgsKA3VybBgFIAEoCSKWBAoPUmVsZWFzZVByb2dyZXNzEiQKB3JlbGVhc2UYASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USKAoJbGlmZWN5Y2xlGAIgASgLMhUuc2xpcHdheS52MS5MaWZlY3ljbGUSMQoGcGhhc2VzGAMgAygLMiEuc2xpcHdheS52MS5SZWxlYXNlUHJvZ3Jlc3MuUGhhc2Ua+wEKEEVudmlyb25tZW50U3RhdGUSFgoOZW52aXJvbm1lbnRfaWQYASABKAkSGAoQZW52aXJvbm1lbnRfbmFtZRgCIAEoCRINCgVzdGF0ZRgDIAEoCRIOCgZyZWFzb24YBCABKAkSFQoNZGVwbG95bWVudF9pZBgFIAEoCRIZChFkZXBsb3ltZW50X3N0YXR1cxgGIAEoCRIvCgtmaW5pc2hlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoPYXV0b19wcm9tb3RlX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBqBAQoFUGhhc2USDAoEbmFtZRgBIAEoCRIQCghjb21wbGV0ZRgCIAEoCBIUCgxhdXRvX3Byb21vdGUYAyABKAgSQgoMZW52aXJvbm1lbnRzGAQgAygLMiwuc2xpcHdheS52MS5SZWxlYXNlUHJvZ3Jlc3MuRW52aXJvbm1lbnRTdGF0ZSKJAwoORGVwbG95bWVudFN0ZXASCgoCaWQYASABKAkSDQoFaW5kZXgYAiABKAUSDAoEbmFtZRgDIAEoCRIKCgJvcBgEIAEoCRINCgVwaGFzZRgFIAEoCRIOCgZydW5uZXIYBiABKAkSEwoLaXNfcm9sbGJhY2sYByABKAgSDgoGc3RhdHVzGAggASgJEicKBnBhcmFtcxgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSJwoGcmVzdWx0GAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBINCgVlcnJvchgLIAEoCRIQCghhdHRlbXB0cxgMIAEoBRIPCgdqb2JfcmVmGA0gASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGA4gASgJEi4KCnN0YXJ0ZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC2ZpbmlzaGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLnAQoORGVwbG95bWVudEdhdGUSCgoCaWQYASABKAkSDAoEa2luZBgCIAEoCRIMCgRuYW1lGAMgASgJEg4KBnN0YXR1cxgEIAEoCRIPCgdtZXNzYWdlGAUgASgJEicKBmRldGFpbBgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMQoNbmV4dF9jaGVja19hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMZXZhbHVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKmAQoQQXBwcm92YWxEZWNpc2lvbhIKCgJpZBgBIAEoCRIPCgd1c2VyX2lkGAIgASgJEhEKCXVzZXJfbmFtZRgDIAEoCRIQCghkZWNpc2lvbhgEIAEoCRIPCgdjb21tZW50GAUgASgJEg8KB2NoYW5uZWwYBiABKAkSLgoKY3JlYXRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi9AQKCEFwcHJvdmFsEgoKAmlkGAEgASgJEhQKDHN1YmplY3Rfa2luZBgCIAEoCRISCgpzdWJqZWN0X2lkGAMgASgJEhUKDWRlcGxveW1lbnRfaWQYBCABKAkSFgoOZW52aXJvbm1lbnRfaWQYBSABKAkSDgoGc3RhdHVzGAYgASgJEhAKCHJlcXVpcmVkGAcgASgFEhYKDmFwcHJvdmVkX2NvdW50GAggASgFEicKCWFwcHJvdmVycxgJIAMoCzIULnNsaXB3YXkudjEuQXBwcm92ZXISGwoTYWxsb3dfc2VsZl9hcHByb3ZhbBgKIAEoCBIUCgxyZXF1ZXN0ZWRfYnkYCyABKAkSDwoHbWVzc2FnZRgMIAEoCRIuCgpleHBpcmVzX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIvCgtyZXNvbHZlZF9hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoPcmVzb2x2ZWRfcmVhc29uGA8gASgJEi8KCWRlY2lzaW9ucxgQIAMoCzIcLnNsaXB3YXkudjEuQXBwcm92YWxEZWNpc2lvbhIuCgpjcmVhdGVkX2F0GBEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIZChF2aWV3ZXJfY2FuX2RlY2lkZRgSIAEoCBIdChV2aWV3ZXJfYmxvY2tlZF9yZWFzb24YEyABKAkSFAoMc2VydmljZV9uYW1lGBQgASgJEhcKD3JlbGVhc2VfdmVyc2lvbhgVIAEoCRIYChBlbnZpcm9ubWVudF9uYW1lGBYgASgJIuwBChRJbnRlcnZhbE1ldHJpY1Jlc3VsdBIMCgRuYW1lGAEgASgJEgwKBGtpbmQYAiABKAkSFAoMY2FuYXJ5X3ZhbHVlGAMgASgBEhYKDmJhc2VsaW5lX3ZhbHVlGAQgASgBEhQKDGhhc19iYXNlbGluZRgFIAEoCBIPCgd2ZXJkaWN0GAYgASgJEg4KBnJlYXNvbhgHIAEoCRIQCghjcml0aWNhbBgIIAEoCBIWCg5jYW5hcnlfc2FtcGxlcxgJIAEoBRIYChBiYXNlbGluZV9zYW1wbGVzGAogASgFEg8KB3BfdmFsdWUYCyABKAEioAEKFFZlcmlmaWNhdGlvbkludGVydmFsEg0KBWluZGV4GAEgASgFEiYKAmF0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIPCgd2ZXJkaWN0GAMgASgJEg0KBXNjb3JlGAQgASgBEjEKB21ldHJpY3MYBSADKAsyIC5zbGlwd2F5LnYxLkludGVydmFsTWV0cmljUmVzdWx0IosDCg9WZXJpZmljYXRpb25SdW4SCgoCaWQYASABKAkSFQoNZGVwbG95bWVudF9pZBgCIAEoCRIPCgdzdGVwX2lkGAMgASgJEhAKCHByb3ZpZGVyGAQgASgJEicKBmNvbmZpZxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDgoGc3RhdHVzGAYgASgJEg8KB3ZlcmRpY3QYByABKAkSMwoJaW50ZXJ2YWxzGAggAygLMiAuc2xpcHdheS52MS5WZXJpZmljYXRpb25JbnRlcnZhbBIcChRjb25zZWN1dGl2ZV9mYWlsdXJlcxgJIAEoBRIuCgpzdGFydGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI0ChBuZXh0X2ludGVydmFsX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIvCgtmaW5pc2hlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi8gcKCkRlcGxveW1lbnQSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRISCgpzZXJ2aWNlX2lkGAMgASgJEhIKCnJlbGVhc2VfaWQYBCABKAkSFwoPcmVsZWFzZV92ZXJzaW9uGAUgASgJEhYKDmVudmlyb25tZW50X2lkGAYgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAcgASgJEg4KBnRlbmFudBgIIAEoCRIQCghzdHJhdGVneRgJIAEoCRIwCg9zdHJhdGVneV9jb25maWcYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg4KBnN0YXR1cxgLIAEoCRIVCg1zdGF0dXNfcmVhc29uGAwgASgJEhQKDHRyaWdnZXJlZF9ieRgNIAEoCRIgCgVhY3RvchgOIAEoCzIRLnNsaXB3YXkudjEuQWN0b3ISDgoGcnVuX2lkGA8gASgJEg4KBmpvYl9pZBgQIAEoCRIeChZwcmV2aW91c19kZXBsb3ltZW50X2lkGBEgASgJEiEKGXJvbGxiYWNrX29mX2RlcGxveW1lbnRfaWQYEiABKAkSFAoMY3VycmVudF9zdGVwGBMgASgFEhQKDHJvbGxpbmdfYmFjaxgUIAEoCBIVCg1hdXRvX3JvbGxiYWNrGBUgASgIEg0KBWZvcmNlGBYgASgIEg8KB2NvbW1lbnQYFyABKAkSKQoFc3RlcHMYGCADKAsyGi5zbGlwd2F5LnYxLkRlcGxveW1lbnRTdGVwEikKBWdhdGVzGBkgAygLMhouc2xpcHdheS52MS5EZXBsb3ltZW50R2F0ZRImCghhcHByb3ZhbBgaIAEoCzIULnNsaXB3YXkudjEuQXBwcm92YWwSNgoRdmVyaWZpY2F0aW9uX3J1bnMYGyADKAsyGy5zbGlwd2F5LnYxLlZlcmlmaWNhdGlvblJ1bhIxCg1zY2hlZHVsZWRfZm9yGBwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBItCglxdWV1ZWRfYXQYHSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnN0YXJ0ZWRfYXQYHiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC2ZpbmlzaGVkX2F0GB8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GCAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIUCgxzZXJ2aWNlX25hbWUYISABKAkSGAoQZW52aXJvbm1lbnRfbmFtZRgiIAEoCSKoAgoRRGVwbG95bWVudFN1bW1hcnkSFQoNZGVwbG95bWVudF9pZBgBIAEoCRISCgpyZWxlYXNlX2lkGAIgASgJEg8KB3ZlcnNpb24YAyABKAkSDwoHY2hhbm5lbBgEIAEoCRIOCgZzdGF0dXMYBSABKAkSEAoIc3RyYXRlZ3kYBiABKAkSFAoMdHJpZ2dlcmVkX2J5GAcgASgJEhIKCmFjdG9yX25hbWUYCCABKAkSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYCSABKAkSLgoKc3RhcnRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLwoLZmluaXNoZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIoQCCglCb2FyZENlbGwSFgoOZW52aXJvbm1lbnRfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCRIOCgZ0ZW5hbnQYAyABKAkSLgoHY3VycmVudBgEIAEoCzIdLnNsaXB3YXkudjEuRGVwbG95bWVudFN1bW1hcnkSMAoJaW5fZmxpZ2h0GAUgASgLMh0uc2xpcHdheS52MS5EZXBsb3ltZW50U3VtbWFyeRIzCgxsYXN0X2ZhaWx1cmUYBiABKAsyHS5zbGlwd2F5LnYxLkRlcGxveW1lbnRTdW1tYXJ5EhQKDGRyaWZ0X3N0YXR1cxgHIAEoCRIOCgZmcm96ZW4YCCABKAgizAEKEEVudmlyb25tZW50Qm9hcmQSLQoMZW52aXJvbm1lbnRzGAEgAygLMhcuc2xpcHdheS52MS5FbnZpcm9ubWVudBIvCghzZXJ2aWNlcxgCIAMoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2USJAoFY2VsbHMYAyADKAsyFS5zbGlwd2F5LnYxLkJvYXJkQ2VsbBIyCg5hY3RpdmVfZnJlZXplcxgEIAMoCzIaLnNsaXB3YXkudjEuRnJlZXplSW50ZXJ2YWwiPQoORHJpZnRGaWVsZERpZmYSDAoEcGF0aBgBIAEoCRIPCgdkZXNpcmVkGAIgASgJEgwKBGxpdmUYAyABKAkidgoJRHJpZnRJdGVtEgwKBGtpbmQYASABKAkSDAoEbmFtZRgCIAEoCRIRCgluYW1lc3BhY2UYAyABKAkSDgoGc3RhdHVzGAQgASgJEioKBmZpZWxkcxgFIAMoCzIaLnNsaXB3YXkudjEuRHJpZnRGaWVsZERpZmYi/gEKC0RyaWZ0UmVwb3J0EgoKAmlkGAEgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAIgASgJEhYKDmVudmlyb25tZW50X2lkGAMgASgJEhIKCnNlcnZpY2VfaWQYBCABKAkSFQoNZGVwbG95bWVudF9pZBgFIAEoCRIOCgZzdGF0dXMYBiABKAkSJAoFaXRlbXMYByADKAsyFS5zbGlwd2F5LnYxLkRyaWZ0SXRlbRIPCgdzdW1tYXJ5GAggASgJEi4KCmNoZWNrZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBnRlbmFudBgKIAEoCSKdAQoQUnVuYm9va1BhcmFtZXRlchIMCgRuYW1lGAEgASgJEg0KBWxhYmVsGAIgASgJEgwKBHR5cGUYAyABKAkSEAoIcmVxdWlyZWQYBCABKAgSFQoNZGVmYXVsdF92YWx1ZRgFIAEoCRIPCgdvcHRpb25zGAYgAygJEhMKC2Rlc2NyaXB0aW9uGAcgASgJEg8KB3BhdHRlcm4YCCABKAkiqgMKB1J1bmJvb2sSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRISCgpzZXJ2aWNlX2lkGAMgASgJEgwKBG5hbWUYBCABKAkSDAoEc2x1ZxgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIwCgpwYXJhbWV0ZXJzGAcgAygLMhwuc2xpcHdheS52MS5SdW5ib29rUGFyYW1ldGVyEiYKBXN0ZXBzGAggAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIXCg9lbnZpcm9ubWVudF9pZHMYCSADKAkSGQoRcmVxdWlyZXNfYXBwcm92YWwYCiABKAgSDwoHcnVuc19vbhgLIAMoCRIqCgd0aW1lb3V0GAwgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEg8KB2VuYWJsZWQYDSABKAgSLgoKY3JlYXRlZF9hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgPIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAigwQKClJ1bmJvb2tSdW4SCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRISCgpydW5ib29rX2lkGAMgASgJEhYKDmVudmlyb25tZW50X2lkGAQgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAUgASgJEg4KBnN0YXR1cxgGIAEoCRI6CgpwYXJhbWV0ZXJzGAcgAygLMiYuc2xpcHdheS52MS5SdW5ib29rUnVuLlBhcmFtZXRlcnNFbnRyeRITCgthcHByb3ZhbF9pZBgIIAEoCRIPCgdqb2JfcmVmGAkgASgJEg0KBWVycm9yGAogASgJEicKBnJlc3VsdBgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSIAoFYWN0b3IYDCABKAsyES5zbGlwd2F5LnYxLkFjdG9yEi4KCnN0YXJ0ZWRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC2ZpbmlzaGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBoxCg9QYXJhbWV0ZXJzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJbCgpEb3JhQnVja2V0EioKBmJ1Y2tldBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEQoJc3VjY2VlZGVkGAIgASgDEg4KBmZhaWxlZBgDIAEoAyKCAQoSRG9yYVNlcnZpY2VNZXRyaWNzEhIKCnNlcnZpY2VfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSEwoLZGVwbG95bWVudHMYAyABKAMSDgoGZmFpbGVkGAQgASgDEhsKE2RlcGxveW1lbnRzX3Blcl9kYXkYBSABKAEi2AYKC0RvcmFNZXRyaWNzEj8KFGRlcGxveW1lbnRfZnJlcXVlbmN5GAEgASgLMiEuc2xpcHdheS52MS5Eb3JhTWV0cmljcy5GcmVxdWVuY3kSMwoJbGVhZF90aW1lGAIgASgLMiAuc2xpcHdheS52MS5Eb3JhTWV0cmljcy5MZWFkVGltZRJCChNjaGFuZ2VfZmFpbHVyZV9yYXRlGAMgASgLMiUuc2xpcHdheS52MS5Eb3JhTWV0cmljcy5DaGFuZ2VGYWlsdXJlEjgKD3RpbWVfdG9fcmVzdG9yZRgEIAEoCzIfLnNsaXB3YXkudjEuRG9yYU1ldHJpY3MuUmVzdG9yZRIyCgpieV9zZXJ2aWNlGAUgAygLMh4uc2xpcHdheS52MS5Eb3JhU2VydmljZU1ldHJpY3MSKAoEZnJvbRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJgoCdG8YByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGmEKCUZyZXF1ZW5jeRINCgV0b3RhbBgBIAEoAxIPCgdwZXJfZGF5GAIgASgBEgwKBGJhbmQYAyABKAkSJgoGc2VyaWVzGAQgAygLMhYuc2xpcHdheS52MS5Eb3JhQnVja2V0GqIBCghMZWFkVGltZRIPCgdzYW1wbGVzGAEgASgDEiYKA3A1MBgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhImCgNwOTAYAyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SJwoEbWVhbhgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIMCgRiYW5kGAUgASgJGkwKDUNoYW5nZUZhaWx1cmUSDQoFdG90YWwYASABKAMSEAoIZmFpbHVyZXMYAiABKAMSDAoEcmF0ZRgDIAEoARIMCgRiYW5kGAQgASgJGnkKB1Jlc3RvcmUSDwoHc2FtcGxlcxgBIAEoAxImCgNwNTAYAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SJwoEbWVhbhgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIMCgRiYW5kGAQgASgJIuMCChRDcmVhdGVTZXJ2aWNlUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEgwKBG5hbWUYAiABKAkSDAoEc2x1ZxgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIMCgRraW5kGAUgASgJEi4KDWFydGlmYWN0X3NwZWMYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KDGhlYWx0aF9jaGVjaxgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKcmVwb3NpdG9yeRgIIAEoCRIYChBkZWZhdWx0X3N0cmF0ZWd5GAkgASgJEjwKBmxhYmVscxgKIAMoCzIsLnNsaXB3YXkudjEuQ3JlYXRlU2VydmljZVJlcXVlc3QuTGFiZWxzRW50cnkaLQoLTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJHChVDcmVhdGVTZXJ2aWNlUmVzcG9uc2USLgoHc2VydmljZRgBIAEoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2UiHwoRR2V0U2VydmljZVJlcXVlc3QSCgoCaWQYASABKAkiRAoSR2V0U2VydmljZVJlc3BvbnNlEi4KB3NlcnZpY2UYASABKAsyHS5zbGlwd2F5LnYxLkRlcGxveWFibGVTZXJ2aWNlIlAKE0xpc3RTZXJ2aWNlc1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIlCgRwYWdlGAIgASgLMhcuc2xpcHdheS52MS5QYWdlUmVxdWVzdCJsChRMaXN0U2VydmljZXNSZXNwb25zZRIsCgVpdGVtcxgBIAMoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2USJgoEcGFnZRgCIAEoCzIYLnNsaXB3YXkudjEuUGFnZVJlc3BvbnNlIncKFFVwZGF0ZVNlcnZpY2VSZXF1ZXN0Ei4KB3NlcnZpY2UYASABKAsyHS5zbGlwd2F5LnYxLkRlcGxveWFibGVTZXJ2aWNlEi8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJHChVVcGRhdGVTZXJ2aWNlUmVzcG9uc2USLgoHc2VydmljZRgBIAEoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2UiIgoURGVsZXRlU2VydmljZVJlcXVlc3QSCgoCaWQYASABKAkiFwoVRGVsZXRlU2VydmljZVJlc3BvbnNlIuICChdDcmVhdGVEZXBsb3ltZW50UmVxdWVzdBISCgpyZWxlYXNlX2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAMgASgJEhAKCHN0cmF0ZWd5GAQgASgJEjAKD3N0cmF0ZWd5X2NvbmZpZxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDgoGdGVuYW50GAYgASgJEg8KB2NvbW1lbnQYByABKAkSDQoFZm9yY2UYCCABKAgSMQoNc2NoZWR1bGVkX2ZvchgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGcnVuX2lkGAsgASgJEg4KBmpvYl9pZBgMIAEoCRIUCgx0cmlnZ2VyZWRfYnkYDSABKAkSHQoVZGlzYWJsZV9hdXRvX3JvbGxiYWNrGA4gASgISgQIChALIkYKGENyZWF0ZURlcGxveW1lbnRSZXNwb25zZRIqCgpkZXBsb3ltZW50GAEgASgLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50IrUBChhQcmV2aWV3RGVwbG95bWVudFJlcXVlc3QSEgoKcmVsZWFzZV9pZBgBIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCRIZChFpbmZyYXN0cnVjdHVyZV9pZBgDIAEoCRIQCghzdHJhdGVneRgEIAEoCRIwCg9zdHJhdGVneV9jb25maWcYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg4KBnRlbmFudBgGIAEoCSKyAwoZUHJldmlld0RlcGxveW1lbnRSZXNwb25zZRIQCghzdHJhdGVneRgBIAEoCRIZChFpbmZyYXN0cnVjdHVyZV9pZBgCIAEoCRIpCgVzdGVwcxgDIAMoCzIaLnNsaXB3YXkudjEuRGVwbG95bWVudFN0ZXASKQoFZ2F0ZXMYBCADKAsyGi5zbGlwd2F5LnYxLkRlcGxveW1lbnRHYXRlEhkKEWFwcHJvdmFsX3JlcXVpcmVkGAUgASgIEhoKEmFwcHJvdmFsc19yZXF1aXJlZBgGIAEoBRInCglhcHByb3ZlcnMYByADKAsyFC5zbGlwd2F5LnYxLkFwcHJvdmVyEi8KCXZhcmlhYmxlcxgIIAMoCzIcLnNsaXB3YXkudjEuUmVzb2x2ZWRWYXJpYWJsZRIYChBsaWZlY3ljbGVfYWxsb3dzGAkgASgIEhgKEGxpZmVjeWNsZV9yZWFzb24YCiABKAkSJAoHcmVsZWFzZRgLIAEoCzITLnNsaXB3YXkudjEuUmVsZWFzZRInCgdjdXJyZW50GAwgASgLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50IiIKFEdldERlcGxveW1lbnRSZXF1ZXN0EgoKAmlkGAEgASgJIkMKFUdldERlcGxveW1lbnRSZXNwb25zZRIqCgpkZXBsb3ltZW50GAEgASgLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50IrUBChZMaXN0RGVwbG95bWVudHNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRISCgpyZWxlYXNlX2lkGAQgASgJEhAKCHN0YXR1c2VzGAUgAygJEg4KBnJ1bl9pZBgGIAEoCRIlCgRwYWdlGAcgASgLMhcuc2xpcHdheS52MS5QYWdlUmVxdWVzdCJoChdMaXN0RGVwbG95bWVudHNSZXNwb25zZRIlCgVpdGVtcxgBIAMoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudBImCgRwYWdlGAIgASgLMhguc2xpcHdheS52MS5QYWdlUmVzcG9uc2UiWQoXQ2FuY2VsRGVwbG95bWVudFJlcXVlc3QSCgoCaWQYASABKAkSDgoGcmVhc29uGAIgASgJEhUKCHJvbGxiYWNrGAMgASgISACIAQFCCwoJX3JvbGxiYWNrIkYKGENhbmNlbERlcGxveW1lbnRSZXNwb25zZRIqCgpkZXBsb3ltZW50GAEgASgLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50IjQKFlBhdXNlRGVwbG95bWVudFJlcXVlc3QSCgoCaWQYASABKAkSDgoGcmVhc29uGAIgASgJIkUKF1BhdXNlRGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiJQoXUmVzdW1lRGVwbG95bWVudFJlcXVlc3QSCgoCaWQYASABKAkiRgoYUmVzdW1lRGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiJAoWUmV0cnlEZXBsb3ltZW50UmVxdWVzdBIKCgJpZBgBIAEoCSJFChdSZXRyeURlcGxveW1lbnRSZXNwb25zZRIqCgpkZXBsb3ltZW50GAEgASgLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50IpYBChlSb2xsYmFja0RlcGxveW1lbnRSZXF1ZXN0EgoKAmlkGAEgASgJEhkKEXRhcmdldF9yZWxlYXNlX2lkGAIgASgJEg4KBnJlYXNvbhgDIAEoCRIQCghzdHJhdGVneRgEIAEoCRIwCg9zdHJhdGVneV9jb25maWcYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IkgKGlJvbGxiYWNrRGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiJAoWV2F0Y2hEZXBsb3ltZW50UmVxdWVzdBIKCgJpZBgBIAEoCSJXChdXYXRjaERlcGxveW1lbnRSZXNwb25zZRIqCgpkZXBsb3ltZW50GAEgASgLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50EhAKCHRlcm1pbmFsGAIgASgIIjQKG0xpc3RWZXJpZmljYXRpb25SdW5zUmVxdWVzdBIVCg1kZXBsb3ltZW50X2lkGAEgASgJIkoKHExpc3RWZXJpZmljYXRpb25SdW5zUmVzcG9uc2USKgoFaXRlbXMYASADKAsyGy5zbGlwd2F5LnYxLlZlcmlmaWNhdGlvblJ1biLZAQoVR2V0RG9yYU1ldHJpY3NSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIoCgRmcm9tGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBImCgJ0bxgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGYnVja2V0GAYgASgJEh4KFmluY2x1ZGVfbm9uX3Byb2R1Y3Rpb24YByABKAgiQgoWR2V0RG9yYU1ldHJpY3NSZXNwb25zZRIoCgdtZXRyaWNzGAEgASgLMhcuc2xpcHdheS52MS5Eb3JhTWV0cmljcyLcAwoUQ3JlYXRlUmVsZWFzZVJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRISCgpzZXJ2aWNlX2lkGAIgASgJEg8KB3ZlcnNpb24YAyABKAkSDwoHY2hhbm5lbBgEIAEoCRJCCglhcnRpZmFjdHMYBSADKAsyLy5zbGlwd2F5LnYxLkNyZWF0ZVJlbGVhc2VSZXF1ZXN0LkFydGlmYWN0c0VudHJ5ElMKEnZhcmlhYmxlX292ZXJyaWRlcxgGIAMoCzI3LnNsaXB3YXkudjEuQ3JlYXRlUmVsZWFzZVJlcXVlc3QuVmFyaWFibGVPdmVycmlkZXNFbnRyeRIxCgpwcm92ZW5hbmNlGAcgASgLMh0uc2xpcHdheS52MS5SZWxlYXNlUHJvdmVuYW5jZRIVCg1yZWxlYXNlX25vdGVzGAggASgJEg4KBnJ1bl9pZBgJIAEoCRpNCg5BcnRpZmFjdHNFbnRyeRILCgNrZXkYASABKAkSKgoFdmFsdWUYAiABKAsyGy5zbGlwd2F5LnYxLlJlbGVhc2VBcnRpZmFjdDoCOAEaOAoWVmFyaWFibGVPdmVycmlkZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIm8KFUNyZWF0ZVJlbGVhc2VSZXNwb25zZRIkCgdyZWxlYXNlGAEgASgLMhMuc2xpcHdheS52MS5SZWxlYXNlEjAKEGF1dG9fZGVwbG95bWVudHMYAiADKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiHwoRR2V0UmVsZWFzZVJlcXVlc3QSCgoCaWQYASABKAkiOgoSR2V0UmVsZWFzZVJlc3BvbnNlEiQKB3JlbGVhc2UYASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2UijQEKE0xpc3RSZWxlYXNlc1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRISCgpzZXJ2aWNlX2lkGAIgASgJEg8KB2NoYW5uZWwYAyABKAkSFgoOdmVyc2lvbl9wcmVmaXgYBCABKAkSJQoEcGFnZRgFIAEoCzIXLnNsaXB3YXkudjEuUGFnZVJlcXVlc3QiYgoUTGlzdFJlbGVhc2VzUmVzcG9uc2USIgoFaXRlbXMYASADKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USJgoEcGFnZRgCIAEoCzIYLnNsaXB3YXkudjEuUGFnZVJlc3BvbnNlIjkKFFVwZGF0ZVJlbGVhc2VSZXF1ZXN0EgoKAmlkGAEgASgJEhUKDXJlbGVhc2Vfbm90ZXMYAiABKAkiPQoVVXBkYXRlUmVsZWFzZVJlc3BvbnNlEiQKB3JlbGVhc2UYASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2UiIgoURGVsZXRlUmVsZWFzZVJlcXVlc3QSCgoCaWQYASABKAkiFwoVRGVsZXRlUmVsZWFzZVJlc3BvbnNlIkUKE0RpZmZSZWxlYXNlc1JlcXVlc3QSFwoPZnJvbV9yZWxlYXNlX2lkGAEgASgJEhUKDXRvX3JlbGVhc2VfaWQYAiABKAkiPQoURGlmZlJlbGVhc2VzUmVzcG9uc2USJQoEZGlmZhgBIAEoCzIXLnNsaXB3YXkudjEuUmVsZWFzZURpZmYiLwoZR2V0UmVsZWFzZVByb2dyZXNzUmVxdWVzdBISCgpyZWxlYXNlX2lkGAEgASgJIksKGkdldFJlbGVhc2VQcm9ncmVzc1Jlc3BvbnNlEi0KCHByb2dyZXNzGAEgASgLMhsuc2xpcHdheS52MS5SZWxlYXNlUHJvZ3Jlc3MihQEKFVByb21vdGVSZWxlYXNlUmVxdWVzdBISCgpyZWxlYXNlX2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhAKCHN0cmF0ZWd5GAMgASgJEg4KBnRlbmFudBgEIAEoCRIPCgdjb21tZW50GAUgASgJEg0KBWZvcmNlGAYgASgIIkUKFlByb21vdGVSZWxlYXNlUmVzcG9uc2USKwoLZGVwbG95bWVudHMYASADKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQijwEKFkNyZWF0ZUxpZmVjeWNsZVJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEioKBnBoYXNlcxgEIAMoCzIaLnNsaXB3YXkudjEuTGlmZWN5Y2xlUGhhc2USEgoKaXNfZGVmYXVsdBgFIAEoCCJDChdDcmVhdGVMaWZlY3ljbGVSZXNwb25zZRIoCglsaWZlY3ljbGUYASABKAsyFS5zbGlwd2F5LnYxLkxpZmVjeWNsZSIhChNHZXRMaWZlY3ljbGVSZXF1ZXN0EgoKAmlkGAEgASgJIkAKFEdldExpZmVjeWNsZVJlc3BvbnNlEigKCWxpZmVjeWNsZRgBIAEoCzIVLnNsaXB3YXkudjEuTGlmZWN5Y2xlIisKFUxpc3RMaWZlY3ljbGVzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJIj4KFkxpc3RMaWZlY3ljbGVzUmVzcG9uc2USJAoFaXRlbXMYASADKAsyFS5zbGlwd2F5LnYxLkxpZmVjeWNsZSJzChZVcGRhdGVMaWZlY3ljbGVSZXF1ZXN0EigKCWxpZmVjeWNsZRgBIAEoCzIVLnNsaXB3YXkudjEuTGlmZWN5Y2xlEi8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJDChdVcGRhdGVMaWZlY3ljbGVSZXNwb25zZRIoCglsaWZlY3ljbGUYASABKAsyFS5zbGlwd2F5LnYxLkxpZmVjeWNsZSIkChZEZWxldGVMaWZlY3ljbGVSZXF1ZXN0EgoKAmlkGAEgASgJIhkKF0RlbGV0ZUxpZmVjeWNsZVJlc3BvbnNlIroBChRDcmVhdGVDaGFubmVsUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnNlcnZpY2VfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRItCgx2ZXJzaW9uX3J1bGUYBSABKAsyFy5zbGlwd2F5LnYxLlZlcnNpb25SdWxlEhQKDGxpZmVjeWNsZV9pZBgGIAEoCRISCgppc19kZWZhdWx0GAcgASgIIkQKFUNyZWF0ZUNoYW5uZWxSZXNwb25zZRIrCgdjaGFubmVsGAEgASgLMhouc2xpcHdheS52MS5SZWxlYXNlQ2hhbm5lbCI9ChNMaXN0Q2hhbm5lbHNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCSJBChRMaXN0Q2hhbm5lbHNSZXNwb25zZRIpCgVpdGVtcxgBIAMoCzIaLnNsaXB3YXkudjEuUmVsZWFzZUNoYW5uZWwidAoUVXBkYXRlQ2hhbm5lbFJlcXVlc3QSKwoHY2hhbm5lbBgBIAEoCzIaLnNsaXB3YXkudjEuUmVsZWFzZUNoYW5uZWwSLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIkQKFVVwZGF0ZUNoYW5uZWxSZXNwb25zZRIrCgdjaGFubmVsGAEgASgLMhouc2xpcHdheS52MS5SZWxlYXNlQ2hhbm5lbCIiChREZWxldGVDaGFubmVsUmVxdWVzdBIKCgJpZBgBIAEoCSIXChVEZWxldGVDaGFubmVsUmVzcG9uc2Ui2gEKGENyZWF0ZUVudmlyb25tZW50UmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEgwKBG5hbWUYAiABKAkSDAoEc2x1ZxgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRINCgVvcmRlchgFIAEoBRIMCgRraW5kGAYgASgJEgsKA3VybBgHIAEoCRI1ChBwcm90ZWN0aW9uX3J1bGVzGAggASgLMhsuc2xpcHdheS52MS5Qcm90ZWN0aW9uUnVsZXMSGAoQZGVmYXVsdF9zdHJhdGVneRgJIAEoCSJJChlDcmVhdGVFbnZpcm9ubWVudFJlc3BvbnNlEiwKC2Vudmlyb25tZW50GAEgASgLMhcuc2xpcHdheS52MS5FbnZpcm9ubWVudCIjChVHZXRFbnZpcm9ubWVudFJlcXVlc3QSCgoCaWQYASABKAkiRgoWR2V0RW52aXJvbm1lbnRSZXNwb25zZRIsCgtlbnZpcm9ubWVudBgBIAEoCzIXLnNsaXB3YXkudjEuRW52aXJvbm1lbnQiLQoXTGlzdEVudmlyb25tZW50c1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCSJCChhMaXN0RW52aXJvbm1lbnRzUmVzcG9uc2USJgoFaXRlbXMYASADKAsyFy5zbGlwd2F5LnYxLkVudmlyb25tZW50InkKGFVwZGF0ZUVudmlyb25tZW50UmVxdWVzdBIsCgtlbnZpcm9ubWVudBgBIAEoCzIXLnNsaXB3YXkudjEuRW52aXJvbm1lbnQSLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIkkKGVVwZGF0ZUVudmlyb25tZW50UmVzcG9uc2USLAoLZW52aXJvbm1lbnQYASABKAsyFy5zbGlwd2F5LnYxLkVudmlyb25tZW50IiYKGERlbGV0ZUVudmlyb25tZW50UmVxdWVzdBIKCgJpZBgBIAEoCSIbChlEZWxldGVFbnZpcm9ubWVudFJlc3BvbnNlIkkKGlJlb3JkZXJFbnZpcm9ubWVudHNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSFwoPZW52aXJvbm1lbnRfaWRzGAIgAygJIkUKG1Jlb3JkZXJFbnZpcm9ubWVudHNSZXNwb25zZRImCgVpdGVtcxgBIAMoCzIXLnNsaXB3YXkudjEuRW52aXJvbm1lbnQiVQoaR2V0RW52aXJvbm1lbnRCb2FyZFJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRITCgtzZXJ2aWNlX2lkcxgCIAMoCRIOCgZ0ZW5hbnQYAyABKAkiSgobR2V0RW52aXJvbm1lbnRCb2FyZFJlc3BvbnNlEisKBWJvYXJkGAEgASgLMhwuc2xpcHdheS52MS5FbnZpcm9ubWVudEJvYXJkIokDChtDcmVhdGVJbmZyYXN0cnVjdHVyZVJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEgwKBGtpbmQYBCABKAkSJwoGY29uZmlnGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIVCg1jb25uZWN0aW9uX2lkGAYgASgJEhYKDnJ1bm5lcl9wb29sX2lkGAcgASgJEhMKC3NlcnZpY2VfaWRzGAggAygJEg4KBnJlZ2lvbhgJIAEoCRJDCgZsYWJlbHMYCiADKAsyMy5zbGlwd2F5LnYxLkNyZWF0ZUluZnJhc3RydWN0dXJlUmVxdWVzdC5MYWJlbHNFbnRyeRIxCg5kcmlmdF9pbnRlcnZhbBgLIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIlIKHENyZWF0ZUluZnJhc3RydWN0dXJlUmVzcG9uc2USMgoOaW5mcmFzdHJ1Y3R1cmUYASABKAsyGi5zbGlwd2F5LnYxLkluZnJhc3RydWN0dXJlIiYKGEdldEluZnJhc3RydWN0dXJlUmVxdWVzdBIKCgJpZBgBIAEoCSJPChlHZXRJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEjIKDmluZnJhc3RydWN0dXJlGAEgASgLMhouc2xpcHdheS52MS5JbmZyYXN0cnVjdHVyZSJIChpMaXN0SW5mcmFzdHJ1Y3R1cmVzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJIkgKG0xpc3RJbmZyYXN0cnVjdHVyZXNSZXNwb25zZRIpCgVpdGVtcxgBIAMoCzIaLnNsaXB3YXkudjEuSW5mcmFzdHJ1Y3R1cmUiggEKG1VwZGF0ZUluZnJhc3RydWN0dXJlUmVxdWVzdBIyCg5pbmZyYXN0cnVjdHVyZRgBIAEoCzIaLnNsaXB3YXkudjEuSW5mcmFzdHJ1Y3R1cmUSLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIlIKHFVwZGF0ZUluZnJhc3RydWN0dXJlUmVzcG9uc2USMgoOaW5mcmFzdHJ1Y3R1cmUYASABKAsyGi5zbGlwd2F5LnYxLkluZnJhc3RydWN0dXJlIikKG0RlbGV0ZUluZnJhc3RydWN0dXJlUmVxdWVzdBIKCgJpZBgBIAEoCSIeChxEZWxldGVJbmZyYXN0cnVjdHVyZVJlc3BvbnNlIicKGVRlc3RJbmZyYXN0cnVjdHVyZVJlcXVlc3QSCgoCaWQYASABKAkiYwoaVGVzdEluZnJhc3RydWN0dXJlUmVzcG9uc2USCgoCb2sYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIoCgdkZXRhaWxzGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCIZChdHZXRBd3NFeHRlcm5hbElkUmVxdWVzdCJPChhHZXRBd3NFeHRlcm5hbElkUmVzcG9uc2USEwoLZXh0ZXJuYWxfaWQYASABKAkSHgoWdHJ1c3RfcG9saWN5X2NvbmRpdGlvbhgCIAEoCSKuAQoVQ3JlYXRlVmFyaWFibGVSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgV2YWx1ZRgDIAEoCRISCgpzZWNyZXRfcmVmGAQgASgJEhEKCXNlbnNpdGl2ZRgFIAEoCBITCgtkZXNjcmlwdGlvbhgGIAEoCRIoCgVzY29wZRgHIAEoCzIZLnNsaXB3YXkudjEuVmFyaWFibGVTY29wZSJGChZDcmVhdGVWYXJpYWJsZVJlc3BvbnNlEiwKCHZhcmlhYmxlGAEgASgLMhouc2xpcHdheS52MS5EZXBsb3lWYXJpYWJsZSIqChRMaXN0VmFyaWFibGVzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJIkIKFUxpc3RWYXJpYWJsZXNSZXNwb25zZRIpCgVpdGVtcxgBIAMoCzIaLnNsaXB3YXkudjEuRGVwbG95VmFyaWFibGUidgoVVXBkYXRlVmFyaWFibGVSZXF1ZXN0EiwKCHZhcmlhYmxlGAEgASgLMhouc2xpcHdheS52MS5EZXBsb3lWYXJpYWJsZRIvCgt1cGRhdGVfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siRgoWVXBkYXRlVmFyaWFibGVSZXNwb25zZRIsCgh2YXJpYWJsZRgBIAEoCzIaLnNsaXB3YXkudjEuRGVwbG95VmFyaWFibGUiIwoVRGVsZXRlVmFyaWFibGVSZXF1ZXN0EgoKAmlkGAEgASgJIhgKFkRlbGV0ZVZhcmlhYmxlUmVzcG9uc2Ui5AEKF1ByZXZpZXdWYXJpYWJsZXNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSKAoFc2NvcGUYAiABKAsyGS5zbGlwd2F5LnYxLlZhcmlhYmxlU2NvcGUSEgoKcmVsZWFzZV9pZBgDIAEoCRJFCglvdmVycmlkZXMYBCADKAsyMi5zbGlwd2F5LnYxLlByZXZpZXdWYXJpYWJsZXNSZXF1ZXN0Lk92ZXJyaWRlc0VudHJ5GjAKDk92ZXJyaWRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiRwoYUHJldmlld1ZhcmlhYmxlc1Jlc3BvbnNlEisKBWl0ZW1zGAEgAygLMhwuc2xpcHdheS52MS5SZXNvbHZlZFZhcmlhYmxlIqEBChNDcmVhdGVGcmVlemVSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRIOCgZyZWFzb24YBCABKAkSKAoGd2luZG93GAUgASgLMhguc2xpcHdheS52MS5EZXBsb3lXaW5kb3cSFgoOYWxsb3dfb3ZlcnJpZGUYBiABKAgiOgoUQ3JlYXRlRnJlZXplUmVzcG9uc2USIgoGZnJlZXplGAEgASgLMhIuc2xpcHdheS52MS5GcmVlemUiQAoSTGlzdEZyZWV6ZXNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkiOAoTTGlzdEZyZWV6ZXNSZXNwb25zZRIhCgVpdGVtcxgBIAMoCzISLnNsaXB3YXkudjEuRnJlZXplImoKE1VwZGF0ZUZyZWV6ZVJlcXVlc3QSIgoGZnJlZXplGAEgASgLMhIuc2xpcHdheS52MS5GcmVlemUSLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIjoKFFVwZGF0ZUZyZWV6ZVJlc3BvbnNlEiIKBmZyZWV6ZRgBIAEoCzISLnNsaXB3YXkudjEuRnJlZXplIiEKE0RlbGV0ZUZyZWV6ZVJlcXVlc3QSCgoCaWQYASABKAkiFgoURGVsZXRlRnJlZXplUmVzcG9uc2UimAEKGEdldEZyZWV6ZUNhbGVuZGFyUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEigKBGZyb20YAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKAnRvGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJGChlHZXRGcmVlemVDYWxlbmRhclJlc3BvbnNlEikKBWl0ZW1zGAEgAygLMhouc2xpcHdheS52MS5GcmVlemVJbnRlcnZhbCIuChFDaGVja0RyaWZ0UmVxdWVzdBIZChFpbmZyYXN0cnVjdHVyZV9pZBgBIAEoCSJnChJDaGVja0RyaWZ0UmVzcG9uc2USJwoGcmVwb3J0GAEgASgLMhcuc2xpcHdheS52MS5EcmlmdFJlcG9ydBIoCgdyZXBvcnRzGAIgAygLMhcuc2xpcHdheS52MS5EcmlmdFJlcG9ydCJgChdMaXN0RHJpZnRSZXBvcnRzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAMgASgJIkIKGExpc3REcmlmdFJlcG9ydHNSZXNwb25zZRImCgVpdGVtcxgBIAMoCzIXLnNsaXB3YXkudjEuRHJpZnRSZXBvcnQijAEKFExpc3RBcHByb3ZhbHNSZXF1ZXN0EhAKCHN0YXR1c2VzGAEgAygJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhUKDWRlcGxveW1lbnRfaWQYAyABKAkSDAoEbWluZRgEIAEoCBIlCgRwYWdlGAUgASgLMhcuc2xpcHdheS52MS5QYWdlUmVxdWVzdCJkChVMaXN0QXBwcm92YWxzUmVzcG9uc2USIwoFaXRlbXMYASADKAsyFC5zbGlwd2F5LnYxLkFwcHJvdmFsEiYKBHBhZ2UYAiABKAsyGC5zbGlwd2F5LnYxLlBhZ2VSZXNwb25zZSIgChJHZXRBcHByb3ZhbFJlcXVlc3QSCgoCaWQYASABKAkiPQoTR2V0QXBwcm92YWxSZXNwb25zZRImCghhcHByb3ZhbBgBIAEoCzIULnNsaXB3YXkudjEuQXBwcm92YWwiRgoVRGVjaWRlQXBwcm92YWxSZXF1ZXN0EgoKAmlkGAEgASgJEhAKCGRlY2lzaW9uGAIgASgJEg8KB2NvbW1lbnQYAyABKAkibAoWRGVjaWRlQXBwcm92YWxSZXNwb25zZRImCghhcHByb3ZhbBgBIAEoCzIULnNsaXB3YXkudjEuQXBwcm92YWwSKgoKZGVwbG95bWVudBgCIAEoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudCIzChVDYW5jZWxBcHByb3ZhbFJlcXVlc3QSCgoCaWQYASABKAkSDgoGcmVhc29uGAIgASgJIkAKFkNhbmNlbEFwcHJvdmFsUmVzcG9uc2USJgoIYXBwcm92YWwYASABKAsyFC5zbGlwd2F5LnYxLkFwcHJvdmFsIlIKFEV2YWx1YXRlR2F0ZXNSZXF1ZXN0EhIKCnJlbGVhc2VfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSDgoGdGVuYW50GAMgASgJInIKFUV2YWx1YXRlR2F0ZXNSZXNwb25zZRIpCgVnYXRlcxgBIAMoCzIaLnNsaXB3YXkudjEuRGVwbG95bWVudEdhdGUSEwoLd291bGRfYmxvY2sYAiABKAgSGQoRYXBwcm92YWxfcmVxdWlyZWQYAyABKAgiugIKFENyZWF0ZVJ1bmJvb2tSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEgwKBHNsdWcYBCABKAkSEwoLZGVzY3JpcHRpb24YBSABKAkSMAoKcGFyYW1ldGVycxgGIAMoCzIcLnNsaXB3YXkudjEuUnVuYm9va1BhcmFtZXRlchImCgVzdGVwcxgHIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFwoPZW52aXJvbm1lbnRfaWRzGAggAygJEhkKEXJlcXVpcmVzX2FwcHJvdmFsGAkgASgIEg8KB3J1bnNfb24YCiADKAkSKgoHdGltZW91dBgLIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbiI9ChVDcmVhdGVSdW5ib29rUmVzcG9uc2USJAoHcnVuYm9vaxgBIAEoCzITLnNsaXB3YXkudjEuUnVuYm9vayIfChFHZXRSdW5ib29rUmVxdWVzdBIKCgJpZBgBIAEoCSI6ChJHZXRSdW5ib29rUmVzcG9uc2USJAoHcnVuYm9vaxgBIAEoCzITLnNsaXB3YXkudjEuUnVuYm9vayI9ChNMaXN0UnVuYm9va3NSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCSI6ChRMaXN0UnVuYm9va3NSZXNwb25zZRIiCgVpdGVtcxgBIAMoCzITLnNsaXB3YXkudjEuUnVuYm9vayJtChRVcGRhdGVSdW5ib29rUmVxdWVzdBIkCgdydW5ib29rGAEgASgLMhMuc2xpcHdheS52MS5SdW5ib29rEi8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayI9ChVVcGRhdGVSdW5ib29rUmVzcG9uc2USJAoHcnVuYm9vaxgBIAEoCzITLnNsaXB3YXkudjEuUnVuYm9vayIiChREZWxldGVSdW5ib29rUmVxdWVzdBIKCgJpZBgBIAEoCSIXChVEZWxldGVSdW5ib29rUmVzcG9uc2Ui0AEKEVJ1blJ1bmJvb2tSZXF1ZXN0EhIKCnJ1bmJvb2tfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYAyABKAkSQQoKcGFyYW1ldGVycxgEIAMoCzItLnNsaXB3YXkudjEuUnVuUnVuYm9va1JlcXVlc3QuUGFyYW1ldGVyc0VudHJ5GjEKD1BhcmFtZXRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIjkKElJ1blJ1bmJvb2tSZXNwb25zZRIjCgNydW4YASABKAsyFi5zbGlwd2F5LnYxLlJ1bmJvb2tSdW4iIgoUR2V0UnVuYm9va1J1blJlcXVlc3QSCgoCaWQYASABKAkiPAoVR2V0UnVuYm9va1J1blJlc3BvbnNlEiMKA3J1bhgBIAEoCzIWLnNsaXB3YXkudjEuUnVuYm9va1J1biJ/ChZMaXN0UnVuYm9va1J1bnNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKcnVuYm9va19pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIlCgRwYWdlGAQgASgLMhcuc2xpcHdheS52MS5QYWdlUmVxdWVzdCJoChdMaXN0UnVuYm9va1J1bnNSZXNwb25zZRIlCgVpdGVtcxgBIAMoCzIWLnNsaXB3YXkudjEuUnVuYm9va1J1bhImCgRwYWdlGAIgASgLMhguc2xpcHdheS52MS5QYWdlUmVzcG9uc2UiNQoXQ2FuY2VsUnVuYm9va1J1blJlcXVlc3QSCgoCaWQYASABKAkSDgoGcmVhc29uGAIgASgJIj8KGENhbmNlbFJ1bmJvb2tSdW5SZXNwb25zZRIjCgNydW4YASABKAsyFi5zbGlwd2F5LnYxLlJ1bmJvb2tSdW4yoQwKDURlcGxveVNlcnZpY2USVAoNQ3JlYXRlU2VydmljZRIgLnNsaXB3YXkudjEuQ3JlYXRlU2VydmljZVJlcXVlc3QaIS5zbGlwd2F5LnYxLkNyZWF0ZVNlcnZpY2VSZXNwb25zZRJLCgpHZXRTZXJ2aWNlEh0uc2xpcHdheS52MS5HZXRTZXJ2aWNlUmVxdWVzdBoeLnNsaXB3YXkudjEuR2V0U2VydmljZVJlc3BvbnNlElEKDExpc3RTZXJ2aWNlcxIfLnNsaXB3YXkudjEuTGlzdFNlcnZpY2VzUmVxdWVzdBogLnNsaXB3YXkudjEuTGlzdFNlcnZpY2VzUmVzcG9uc2USVAoNVXBkYXRlU2VydmljZRIgLnNsaXB3YXkudjEuVXBkYXRlU2VydmljZVJlcXVlc3QaIS5zbGlwd2F5LnYxLlVwZGF0ZVNlcnZpY2VSZXNwb25zZRJUCg1EZWxldGVTZXJ2aWNlEiAuc2xpcHdheS52MS5EZWxldGVTZXJ2aWNlUmVxdWVzdBohLnNsaXB3YXkudjEuRGVsZXRlU2VydmljZVJlc3BvbnNlEl0KEENyZWF0ZURlcGxveW1lbnQSIy5zbGlwd2F5LnYxLkNyZWF0ZURlcGxveW1lbnRSZXF1ZXN0GiQuc2xpcHdheS52MS5DcmVhdGVEZXBsb3ltZW50UmVzcG9uc2USYAoRUHJldmlld0RlcGxveW1lbnQSJC5zbGlwd2F5LnYxLlByZXZpZXdEZXBsb3ltZW50UmVxdWVzdBolLnNsaXB3YXkudjEuUHJldmlld0RlcGxveW1lbnRSZXNwb25zZRJUCg1HZXREZXBsb3ltZW50EiAuc2xpcHdheS52MS5HZXREZXBsb3ltZW50UmVxdWVzdBohLnNsaXB3YXkudjEuR2V0RGVwbG95bWVudFJlc3BvbnNlEloKD0xpc3REZXBsb3ltZW50cxIiLnNsaXB3YXkudjEuTGlzdERlcGxveW1lbnRzUmVxdWVzdBojLnNsaXB3YXkudjEuTGlzdERlcGxveW1lbnRzUmVzcG9uc2USXQoQQ2FuY2VsRGVwbG95bWVudBIjLnNsaXB3YXkudjEuQ2FuY2VsRGVwbG95bWVudFJlcXVlc3QaJC5zbGlwd2F5LnYxLkNhbmNlbERlcGxveW1lbnRSZXNwb25zZRJaCg9QYXVzZURlcGxveW1lbnQSIi5zbGlwd2F5LnYxLlBhdXNlRGVwbG95bWVudFJlcXVlc3QaIy5zbGlwd2F5LnYxLlBhdXNlRGVwbG95bWVudFJlc3BvbnNlEl0KEFJlc3VtZURlcGxveW1lbnQSIy5zbGlwd2F5LnYxLlJlc3VtZURlcGxveW1lbnRSZXF1ZXN0GiQuc2xpcHdheS52MS5SZXN1bWVEZXBsb3ltZW50UmVzcG9uc2USWgoPUmV0cnlEZXBsb3ltZW50EiIuc2xpcHdheS52MS5SZXRyeURlcGxveW1lbnRSZXF1ZXN0GiMuc2xpcHdheS52MS5SZXRyeURlcGxveW1lbnRSZXNwb25zZRJjChJSb2xsYmFja0RlcGxveW1lbnQSJS5zbGlwd2F5LnYxLlJvbGxiYWNrRGVwbG95bWVudFJlcXVlc3QaJi5zbGlwd2F5LnYxLlJvbGxiYWNrRGVwbG95bWVudFJlc3BvbnNlElwKD1dhdGNoRGVwbG95bWVudBIiLnNsaXB3YXkudjEuV2F0Y2hEZXBsb3ltZW50UmVxdWVzdBojLnNsaXB3YXkudjEuV2F0Y2hEZXBsb3ltZW50UmVzcG9uc2UwARJpChRMaXN0VmVyaWZpY2F0aW9uUnVucxInLnNsaXB3YXkudjEuTGlzdFZlcmlmaWNhdGlvblJ1bnNSZXF1ZXN0Giguc2xpcHdheS52MS5MaXN0VmVyaWZpY2F0aW9uUnVuc1Jlc3BvbnNlElcKDkdldERvcmFNZXRyaWNzEiEuc2xpcHdheS52MS5HZXREb3JhTWV0cmljc1JlcXVlc3QaIi5zbGlwd2F5LnYxLkdldERvcmFNZXRyaWNzUmVzcG9uc2Uy2AsKDlJlbGVhc2VTZXJ2aWNlElQKDUNyZWF0ZVJlbGVhc2USIC5zbGlwd2F5LnYxLkNyZWF0ZVJlbGVhc2VSZXF1ZXN0GiEuc2xpcHdheS52MS5DcmVhdGVSZWxlYXNlUmVzcG9uc2USSwoKR2V0UmVsZWFzZRIdLnNsaXB3YXkudjEuR2V0UmVsZWFzZVJlcXVlc3QaHi5zbGlwd2F5LnYxLkdldFJlbGVhc2VSZXNwb25zZRJRCgxMaXN0UmVsZWFzZXMSHy5zbGlwd2F5LnYxLkxpc3RSZWxlYXNlc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkxpc3RSZWxlYXNlc1Jlc3BvbnNlElQKDVVwZGF0ZVJlbGVhc2USIC5zbGlwd2F5LnYxLlVwZGF0ZVJlbGVhc2VSZXF1ZXN0GiEuc2xpcHdheS52MS5VcGRhdGVSZWxlYXNlUmVzcG9uc2USVAoNRGVsZXRlUmVsZWFzZRIgLnNsaXB3YXkudjEuRGVsZXRlUmVsZWFzZVJlcXVlc3QaIS5zbGlwd2F5LnYxLkRlbGV0ZVJlbGVhc2VSZXNwb25zZRJRCgxEaWZmUmVsZWFzZXMSHy5zbGlwd2F5LnYxLkRpZmZSZWxlYXNlc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkRpZmZSZWxlYXNlc1Jlc3BvbnNlEmMKEkdldFJlbGVhc2VQcm9ncmVzcxIlLnNsaXB3YXkudjEuR2V0UmVsZWFzZVByb2dyZXNzUmVxdWVzdBomLnNsaXB3YXkudjEuR2V0UmVsZWFzZVByb2dyZXNzUmVzcG9uc2USVwoOUHJvbW90ZVJlbGVhc2USIS5zbGlwd2F5LnYxLlByb21vdGVSZWxlYXNlUmVxdWVzdBoiLnNsaXB3YXkudjEuUHJvbW90ZVJlbGVhc2VSZXNwb25zZRJaCg9DcmVhdGVMaWZlY3ljbGUSIi5zbGlwd2F5LnYxLkNyZWF0ZUxpZmVjeWNsZVJlcXVlc3QaIy5zbGlwd2F5LnYxLkNyZWF0ZUxpZmVjeWNsZVJlc3BvbnNlElEKDEdldExpZmVjeWNsZRIfLnNsaXB3YXkudjEuR2V0TGlmZWN5Y2xlUmVxdWVzdBogLnNsaXB3YXkudjEuR2V0TGlmZWN5Y2xlUmVzcG9uc2USVwoOTGlzdExpZmVjeWNsZXMSIS5zbGlwd2F5LnYxLkxpc3RMaWZlY3ljbGVzUmVxdWVzdBoiLnNsaXB3YXkudjEuTGlzdExpZmVjeWNsZXNSZXNwb25zZRJaCg9VcGRhdGVMaWZlY3ljbGUSIi5zbGlwd2F5LnYxLlVwZGF0ZUxpZmVjeWNsZVJlcXVlc3QaIy5zbGlwd2F5LnYxLlVwZGF0ZUxpZmVjeWNsZVJlc3BvbnNlEloKD0RlbGV0ZUxpZmVjeWNsZRIiLnNsaXB3YXkudjEuRGVsZXRlTGlmZWN5Y2xlUmVxdWVzdBojLnNsaXB3YXkudjEuRGVsZXRlTGlmZWN5Y2xlUmVzcG9uc2USVAoNQ3JlYXRlQ2hhbm5lbBIgLnNsaXB3YXkudjEuQ3JlYXRlQ2hhbm5lbFJlcXVlc3QaIS5zbGlwd2F5LnYxLkNyZWF0ZUNoYW5uZWxSZXNwb25zZRJRCgxMaXN0Q2hhbm5lbHMSHy5zbGlwd2F5LnYxLkxpc3RDaGFubmVsc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkxpc3RDaGFubmVsc1Jlc3BvbnNlElQKDVVwZGF0ZUNoYW5uZWwSIC5zbGlwd2F5LnYxLlVwZGF0ZUNoYW5uZWxSZXF1ZXN0GiEuc2xpcHdheS52MS5VcGRhdGVDaGFubmVsUmVzcG9uc2USVAoNRGVsZXRlQ2hhbm5lbBIgLnNsaXB3YXkudjEuRGVsZXRlQ2hhbm5lbFJlcXVlc3QaIS5zbGlwd2F5LnYxLkRlbGV0ZUNoYW5uZWxSZXNwb25zZTKoEwoSRW52aXJvbm1lbnRTZXJ2aWNlEmAKEUNyZWF0ZUVudmlyb25tZW50EiQuc2xpcHdheS52MS5DcmVhdGVFbnZpcm9ubWVudFJlcXVlc3QaJS5zbGlwd2F5LnYxLkNyZWF0ZUVudmlyb25tZW50UmVzcG9uc2USVwoOR2V0RW52aXJvbm1lbnQSIS5zbGlwd2F5LnYxLkdldEVudmlyb25tZW50UmVxdWVzdBoiLnNsaXB3YXkudjEuR2V0RW52aXJvbm1lbnRSZXNwb25zZRJdChBMaXN0RW52aXJvbm1lbnRzEiMuc2xpcHdheS52MS5MaXN0RW52aXJvbm1lbnRzUmVxdWVzdBokLnNsaXB3YXkudjEuTGlzdEVudmlyb25tZW50c1Jlc3BvbnNlEmAKEVVwZGF0ZUVudmlyb25tZW50EiQuc2xpcHdheS52MS5VcGRhdGVFbnZpcm9ubWVudFJlcXVlc3QaJS5zbGlwd2F5LnYxLlVwZGF0ZUVudmlyb25tZW50UmVzcG9uc2USYAoRRGVsZXRlRW52aXJvbm1lbnQSJC5zbGlwd2F5LnYxLkRlbGV0ZUVudmlyb25tZW50UmVxdWVzdBolLnNsaXB3YXkudjEuRGVsZXRlRW52aXJvbm1lbnRSZXNwb25zZRJmChNSZW9yZGVyRW52aXJvbm1lbnRzEiYuc2xpcHdheS52MS5SZW9yZGVyRW52aXJvbm1lbnRzUmVxdWVzdBonLnNsaXB3YXkudjEuUmVvcmRlckVudmlyb25tZW50c1Jlc3BvbnNlEmYKE0dldEVudmlyb25tZW50Qm9hcmQSJi5zbGlwd2F5LnYxLkdldEVudmlyb25tZW50Qm9hcmRSZXF1ZXN0Gicuc2xpcHdheS52MS5HZXRFbnZpcm9ubWVudEJvYXJkUmVzcG9uc2USaQoUQ3JlYXRlSW5mcmFzdHJ1Y3R1cmUSJy5zbGlwd2F5LnYxLkNyZWF0ZUluZnJhc3RydWN0dXJlUmVxdWVzdBooLnNsaXB3YXkudjEuQ3JlYXRlSW5mcmFzdHJ1Y3R1cmVSZXNwb25zZRJgChFHZXRJbmZyYXN0cnVjdHVyZRIkLnNsaXB3YXkudjEuR2V0SW5mcmFzdHJ1Y3R1cmVSZXF1ZXN0GiUuc2xpcHdheS52MS5HZXRJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEmYKE0xpc3RJbmZyYXN0cnVjdHVyZXMSJi5zbGlwd2F5LnYxLkxpc3RJbmZyYXN0cnVjdHVyZXNSZXF1ZXN0Gicuc2xpcHdheS52MS5MaXN0SW5mcmFzdHJ1Y3R1cmVzUmVzcG9uc2USaQoUVXBkYXRlSW5mcmFzdHJ1Y3R1cmUSJy5zbGlwd2F5LnYxLlVwZGF0ZUluZnJhc3RydWN0dXJlUmVxdWVzdBooLnNsaXB3YXkudjEuVXBkYXRlSW5mcmFzdHJ1Y3R1cmVSZXNwb25zZRJpChREZWxldGVJbmZyYXN0cnVjdHVyZRInLnNsaXB3YXkudjEuRGVsZXRlSW5mcmFzdHJ1Y3R1cmVSZXF1ZXN0Giguc2xpcHdheS52MS5EZWxldGVJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEmMKElRlc3RJbmZyYXN0cnVjdHVyZRIlLnNsaXB3YXkudjEuVGVzdEluZnJhc3RydWN0dXJlUmVxdWVzdBomLnNsaXB3YXkudjEuVGVzdEluZnJhc3RydWN0dXJlUmVzcG9uc2USXQoQR2V0QXdzRXh0ZXJuYWxJZBIjLnNsaXB3YXkudjEuR2V0QXdzRXh0ZXJuYWxJZFJlcXVlc3QaJC5zbGlwd2F5LnYxLkdldEF3c0V4dGVybmFsSWRSZXNwb25zZRJXCg5DcmVhdGVWYXJpYWJsZRIhLnNsaXB3YXkudjEuQ3JlYXRlVmFyaWFibGVSZXF1ZXN0GiIuc2xpcHdheS52MS5DcmVhdGVWYXJpYWJsZVJlc3BvbnNlElQKDUxpc3RWYXJpYWJsZXMSIC5zbGlwd2F5LnYxLkxpc3RWYXJpYWJsZXNSZXF1ZXN0GiEuc2xpcHdheS52MS5MaXN0VmFyaWFibGVzUmVzcG9uc2USVwoOVXBkYXRlVmFyaWFibGUSIS5zbGlwd2F5LnYxLlVwZGF0ZVZhcmlhYmxlUmVxdWVzdBoiLnNsaXB3YXkudjEuVXBkYXRlVmFyaWFibGVSZXNwb25zZRJXCg5EZWxldGVWYXJpYWJsZRIhLnNsaXB3YXkudjEuRGVsZXRlVmFyaWFibGVSZXF1ZXN0GiIuc2xpcHdheS52MS5EZWxldGVWYXJpYWJsZVJlc3BvbnNlEl0KEFByZXZpZXdWYXJpYWJsZXMSIy5zbGlwd2F5LnYxLlByZXZpZXdWYXJpYWJsZXNSZXF1ZXN0GiQuc2xpcHdheS52MS5QcmV2aWV3VmFyaWFibGVzUmVzcG9uc2USUQoMQ3JlYXRlRnJlZXplEh8uc2xpcHdheS52MS5DcmVhdGVGcmVlemVSZXF1ZXN0GiAuc2xpcHdheS52MS5DcmVhdGVGcmVlemVSZXNwb25zZRJOCgtMaXN0RnJlZXplcxIeLnNsaXB3YXkudjEuTGlzdEZyZWV6ZXNSZXF1ZXN0Gh8uc2xpcHdheS52MS5MaXN0RnJlZXplc1Jlc3BvbnNlElEKDFVwZGF0ZUZyZWV6ZRIfLnNsaXB3YXkudjEuVXBkYXRlRnJlZXplUmVxdWVzdBogLnNsaXB3YXkudjEuVXBkYXRlRnJlZXplUmVzcG9uc2USUQoMRGVsZXRlRnJlZXplEh8uc2xpcHdheS52MS5EZWxldGVGcmVlemVSZXF1ZXN0GiAuc2xpcHdheS52MS5EZWxldGVGcmVlemVSZXNwb25zZRJgChFHZXRGcmVlemVDYWxlbmRhchIkLnNsaXB3YXkudjEuR2V0RnJlZXplQ2FsZW5kYXJSZXF1ZXN0GiUuc2xpcHdheS52MS5HZXRGcmVlemVDYWxlbmRhclJlc3BvbnNlEksKCkNoZWNrRHJpZnQSHS5zbGlwd2F5LnYxLkNoZWNrRHJpZnRSZXF1ZXN0Gh4uc2xpcHdheS52MS5DaGVja0RyaWZ0UmVzcG9uc2USXQoQTGlzdERyaWZ0UmVwb3J0cxIjLnNsaXB3YXkudjEuTGlzdERyaWZ0UmVwb3J0c1JlcXVlc3QaJC5zbGlwd2F5LnYxLkxpc3REcmlmdFJlcG9ydHNSZXNwb25zZTK/AwoPQXBwcm92YWxTZXJ2aWNlElQKDUxpc3RBcHByb3ZhbHMSIC5zbGlwd2F5LnYxLkxpc3RBcHByb3ZhbHNSZXF1ZXN0GiEuc2xpcHdheS52MS5MaXN0QXBwcm92YWxzUmVzcG9uc2USTgoLR2V0QXBwcm92YWwSHi5zbGlwd2F5LnYxLkdldEFwcHJvdmFsUmVxdWVzdBofLnNsaXB3YXkudjEuR2V0QXBwcm92YWxSZXNwb25zZRJXCg5EZWNpZGVBcHByb3ZhbBIhLnNsaXB3YXkudjEuRGVjaWRlQXBwcm92YWxSZXF1ZXN0GiIuc2xpcHdheS52MS5EZWNpZGVBcHByb3ZhbFJlc3BvbnNlElcKDkNhbmNlbEFwcHJvdmFsEiEuc2xpcHdheS52MS5DYW5jZWxBcHByb3ZhbFJlcXVlc3QaIi5zbGlwd2F5LnYxLkNhbmNlbEFwcHJvdmFsUmVzcG9uc2USVAoNRXZhbHVhdGVHYXRlcxIgLnNsaXB3YXkudjEuRXZhbHVhdGVHYXRlc1JlcXVlc3QaIS5zbGlwd2F5LnYxLkV2YWx1YXRlR2F0ZXNSZXNwb25zZTKQBgoOUnVuYm9va1NlcnZpY2USVAoNQ3JlYXRlUnVuYm9vaxIgLnNsaXB3YXkudjEuQ3JlYXRlUnVuYm9va1JlcXVlc3QaIS5zbGlwd2F5LnYxLkNyZWF0ZVJ1bmJvb2tSZXNwb25zZRJLCgpHZXRSdW5ib29rEh0uc2xpcHdheS52MS5HZXRSdW5ib29rUmVxdWVzdBoeLnNsaXB3YXkudjEuR2V0UnVuYm9va1Jlc3BvbnNlElEKDExpc3RSdW5ib29rcxIfLnNsaXB3YXkudjEuTGlzdFJ1bmJvb2tzUmVxdWVzdBogLnNsaXB3YXkudjEuTGlzdFJ1bmJvb2tzUmVzcG9uc2USVAoNVXBkYXRlUnVuYm9vaxIgLnNsaXB3YXkudjEuVXBkYXRlUnVuYm9va1JlcXVlc3QaIS5zbGlwd2F5LnYxLlVwZGF0ZVJ1bmJvb2tSZXNwb25zZRJUCg1EZWxldGVSdW5ib29rEiAuc2xpcHdheS52MS5EZWxldGVSdW5ib29rUmVxdWVzdBohLnNsaXB3YXkudjEuRGVsZXRlUnVuYm9va1Jlc3BvbnNlEksKClJ1blJ1bmJvb2sSHS5zbGlwd2F5LnYxLlJ1blJ1bmJvb2tSZXF1ZXN0Gh4uc2xpcHdheS52MS5SdW5SdW5ib29rUmVzcG9uc2USVAoNR2V0UnVuYm9va1J1bhIgLnNsaXB3YXkudjEuR2V0UnVuYm9va1J1blJlcXVlc3QaIS5zbGlwd2F5LnYxLkdldFJ1bmJvb2tSdW5SZXNwb25zZRJaCg9MaXN0UnVuYm9va1J1bnMSIi5zbGlwd2F5LnYxLkxpc3RSdW5ib29rUnVuc1JlcXVlc3QaIy5zbGlwd2F5LnYxLkxpc3RSdW5ib29rUnVuc1Jlc3BvbnNlEl0KEENhbmNlbFJ1bmJvb2tSdW4SIy5zbGlwd2F5LnYxLkNhbmNlbFJ1bmJvb2tSdW5SZXF1ZXN0GiQuc2xpcHdheS52MS5DYW5jZWxSdW5ib29rUnVuUmVzcG9uc2VCpgEKDmNvbS5zbGlwd2F5LnYxQgtEZXBsb3lQcm90b1ABWj5naXRodWIuY29tL3NsaXB3YXktc3lzdGVtcy9zbGlwd2F5LXNkay9nby9zbGlwd2F5L3YxO3NsaXB3YXl2MaICA1NYWKoCClNsaXB3YXkuVjHKAgpTbGlwd2F5XFYx4gIWU2xpcHdheVxWMVxHUEJNZXRhZGF0YeoCC1NsaXB3YXk6OlYxYgZwcm90bzM", [file_google_protobuf_duration, file_google_protobuf_field_mask, file_google_protobuf_struct, file_google_protobuf_timestamp, file_slipway_v1_common]);
10
+ export const file_slipway_v1_deploy = /*@__PURE__*/ fileDesc("ChdzbGlwd2F5L3YxL2RlcGxveS5wcm90bxIKc2xpcHdheS52MSJNCghBcHByb3ZlchIMCgRraW5kGAEgASgJEgoKAmlkGAIgASgJEhEKCW1pbl9jb3VudBgDIAEoBRIUCgxkaXNwbGF5X25hbWUYBCABKAki9QEKDERlcGxveVdpbmRvdxIMCgRuYW1lGAEgASgJEgwKBGRheXMYAiADKAkSDQoFc3RhcnQYAyABKAkSCwoDZW5kGAQgASgJEhAKCHRpbWV6b25lGAUgASgJEigKBGZyb20YBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKAnRvGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIMCgRjcm9uGAggASgJEisKCGR1cmF0aW9uGAkgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEg4KBnJlYXNvbhgKIAEoCSJ3CgxEZXBsb3lQb2xpY3kSDAoEbmFtZRgBIAEoCRISCgpleHByZXNzaW9uGAIgASgJEg8KB21lc3NhZ2UYAyABKAkSEAoIc2V2ZXJpdHkYBCABKAkSIgoDb3BhGAUgASgLMhUuc2xpcHdheS52MS5PcGFQb2xpY3kiLgoJT3BhUG9saWN5EhMKC2ludGVncmF0aW9uGAEgASgJEgwKBHBhdGgYAiABKAkitgMKD1Byb3RlY3Rpb25SdWxlcxIaChJyZXF1aXJlZF9hcHByb3ZhbHMYASABKAUSJwoJYXBwcm92ZXJzGAIgAygLMhQuc2xpcHdheS52MS5BcHByb3ZlchIbChNhbGxvd19zZWxmX2FwcHJvdmFsGAMgASgIEhgKEGFsbG93ZWRfYnJhbmNoZXMYBCADKAkSNAoSZGVwbG95bWVudF93aW5kb3dzGAUgAygLMhguc2xpcHdheS52MS5EZXBsb3lXaW5kb3cSMAoOZnJlZXplX3BlcmlvZHMYBiADKAsyGC5zbGlwd2F5LnYxLkRlcGxveVdpbmRvdxIqCghwb2xpY2llcxgHIAMoCzIYLnNsaXB3YXkudjEuRGVwbG95UG9saWN5Eh4KFmNoYW5nZV90aWNrZXRfcmVxdWlyZWQYCCABKAgSMwoQYXBwcm92YWxfdGltZW91dBgJIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIZChFhcHBseV90b19ydW5ib29rcxgKIAEoCBIjChtyZXF1aXJlX3ZlcmlmaWVkX3Byb3ZlbmFuY2UYCyABKAgidwoNVmFyaWFibGVTY29wZRISCgpzZXJ2aWNlX2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAMgASgJEg4KBnRlbmFudBgEIAEoCRIPCgdjaGFubmVsGAUgASgJIt0DChFEZXBsb3lhYmxlU2VydmljZRIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDAoEc2x1ZxgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRIMCgRraW5kGAYgASgJEi4KDWFydGlmYWN0X3NwZWMYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KDGhlYWx0aF9jaGVjaxgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEgoKcmVwb3NpdG9yeRgJIAEoCRIYChBkZWZhdWx0X3N0cmF0ZWd5GAogASgJEjkKBmxhYmVscxgLIAMoCzIpLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2UuTGFiZWxzRW50cnkSEgoKY3JlYXRlZF9ieRgMIAEoCRIuCgpjcmVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIrkCCgtFbnZpcm9ubWVudBIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDAoEc2x1ZxgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRINCgVvcmRlchgGIAEoBRIMCgRraW5kGAcgASgJEgsKA3VybBgIIAEoCRI1ChBwcm90ZWN0aW9uX3J1bGVzGAkgASgLMhsuc2xpcHdheS52MS5Qcm90ZWN0aW9uUnVsZXMSGAoQZGVmYXVsdF9zdHJhdGVneRgKIAEoCRIuCgpjcmVhdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCK5BAoOSW5mcmFzdHJ1Y3R1cmUSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEgwKBGtpbmQYBSABKAkSJwoGY29uZmlnGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIVCg1jb25uZWN0aW9uX2lkGAcgASgJEhYKDnJ1bm5lcl9wb29sX2lkGAggASgJEhMKC3NlcnZpY2VfaWRzGAkgAygJEg4KBnJlZ2lvbhgKIAEoCRI2CgZsYWJlbHMYCyADKAsyJi5zbGlwd2F5LnYxLkluZnJhc3RydWN0dXJlLkxhYmVsc0VudHJ5EicKBmhlYWx0aBgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSMwoPbGFzdF9jaGVja2VkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIxCg5kcmlmdF9pbnRlcnZhbBgOIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIuCgpjcmVhdGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIpMCCg5EZXBsb3lWYXJpYWJsZRIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDQoFdmFsdWUYBCABKAkSEgoKc2VjcmV0X3JlZhgFIAEoCRIRCglzZW5zaXRpdmUYBiABKAgSEwoLZGVzY3JpcHRpb24YByABKAkSKAoFc2NvcGUYCCABKAsyGS5zbGlwd2F5LnYxLlZhcmlhYmxlU2NvcGUSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiuAEKEFJlc29sdmVkVmFyaWFibGUSDAoEbmFtZRgBIAEoCRINCgV2YWx1ZRgCIAEoCRIRCglzZW5zaXRpdmUYAyABKAgSEwoLdmFyaWFibGVfaWQYBCABKAkSKAoFc2NvcGUYBSABKAsyGS5zbGlwd2F5LnYxLlZhcmlhYmxlU2NvcGUSEgoKb3ZlcnJpZGRlbhgGIAEoBRISCgpzZWNyZXRfcmVmGAcgASgJEg0KBWVycm9yGAggASgJItABCgZGcmVlemUSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEg4KBnJlYXNvbhgFIAEoCRIoCgZ3aW5kb3cYBiABKAsyGC5zbGlwd2F5LnYxLkRlcGxveVdpbmRvdxIWCg5hbGxvd19vdmVycmlkZRgHIAEoCBIuCgpjcmVhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLVAQoORnJlZXplSW50ZXJ2YWwSDgoGc291cmNlGAEgASgJEhEKCWZyZWV6ZV9pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEg4KBnJlYXNvbhgFIAEoCRIpCgVzdGFydBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJwoDZW5kGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIWCg5hbGxvd19vdmVycmlkZRgIIAEoCCK7AQoPUmVsZWFzZUFydGlmYWN0EgwKBGtpbmQYASABKAkSCwoDcmVmGAIgASgJEg8KB3ZlcnNpb24YAyABKAkSDgoGZGlnZXN0GAQgASgJEjsKCG1ldGFkYXRhGAUgAygLMikuc2xpcHdheS52MS5SZWxlYXNlQXJ0aWZhY3QuTWV0YWRhdGFFbnRyeRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiYQoSUmVsZWFzZUF0dGVzdGF0aW9uEgwKBHR5cGUYASABKAkSCwoDdXJpGAIgASgJEg4KBmRpZ2VzdBgDIAEoCRIQCgh2ZXJpZmllZBgEIAEoCBIOCgZzaWduZXIYBSABKAki8wEKEVJlbGVhc2VQcm92ZW5hbmNlEg4KBnJ1bl9pZBgBIAEoCRITCgtwaXBlbGluZV9pZBgCIAEoCRIOCgZqb2JfaWQYAyABKAkSHwoDZ2l0GAQgASgLMhIuc2xpcHdheS52MS5HaXRSZWYSLQoJY29tbWl0X2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIPCgdidWlsZGVyGAYgASgJEjQKDGF0dGVzdGF0aW9ucxgHIAMoCzIeLnNsaXB3YXkudjEuUmVsZWFzZUF0dGVzdGF0aW9uEhIKCnJlcG9zaXRvcnkYCCABKAkikgEKEFNuYXBzaG90VmFyaWFibGUSDAoEbmFtZRgBIAEoCRINCgV2YWx1ZRgCIAEoCRISCgpzZWNyZXRfcmVmGAMgASgJEhEKCXNlbnNpdGl2ZRgEIAEoCBIoCgVzY29wZRgFIAEoCzIZLnNsaXB3YXkudjEuVmFyaWFibGVTY29wZRIQCghvcmdfd2lkZRgGIAEoCCLcBAoHUmVsZWFzZRIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhIKCnNlcnZpY2VfaWQYAyABKAkSDwoHdmVyc2lvbhgEIAEoCRISCgpjaGFubmVsX2lkGAUgASgJEhQKDGNoYW5uZWxfbmFtZRgGIAEoCRIUCgxsaWZlY3ljbGVfaWQYByABKAkSNQoJYXJ0aWZhY3RzGAggAygLMiIuc2xpcHdheS52MS5SZWxlYXNlLkFydGlmYWN0c0VudHJ5EjgKEnZhcmlhYmxlc19zbmFwc2hvdBgJIAMoCzIcLnNsaXB3YXkudjEuU25hcHNob3RWYXJpYWJsZRIxCgpwcm92ZW5hbmNlGAogASgLMh0uc2xpcHdheS52MS5SZWxlYXNlUHJvdmVuYW5jZRISCgpjb21taXRfc2hhGAsgASgJEi0KCWNvbW1pdF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGcnVuX2lkGA0gASgJEhUKDXJlbGVhc2Vfbm90ZXMYDiABKAkSEgoKY3JlYXRlZF9ieRgPIAEoCRIuCgpjcmVhdGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIrChBjcmVhdGVkX2J5X2FjdG9yGBEgASgLMhEuc2xpcHdheS52MS5BY3RvchpNCg5BcnRpZmFjdHNFbnRyeRILCgNrZXkYASABKAkSKgoFdmFsdWUYAiABKAsyGy5zbGlwd2F5LnYxLlJlbGVhc2VBcnRpZmFjdDoCOAEipgEKDkxpZmVjeWNsZVBoYXNlEgwKBG5hbWUYASABKAkSFwoPZW52aXJvbm1lbnRfaWRzGAIgAygJEhQKDGF1dG9fcHJvbW90ZRgDIAEoCBIrCghtaW5fc29haxgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIYChBtaW5fZW52aXJvbm1lbnRzGAUgASgFEhAKCG9wdGlvbmFsGAYgASgIIu4BCglMaWZlY3ljbGUSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEioKBnBoYXNlcxgFIAMoCzIaLnNsaXB3YXkudjEuTGlmZWN5Y2xlUGhhc2USEgoKaXNfZGVmYXVsdBgGIAEoCBIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIsCgtWZXJzaW9uUnVsZRIMCgRraW5kGAEgASgJEg8KB3BhdHRlcm4YAiABKAkioAIKDlJlbGVhc2VDaGFubmVsEgoKAmlkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSEgoKc2VydmljZV9pZBgDIAEoCRIMCgRuYW1lGAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJEi0KDHZlcnNpb25fcnVsZRgGIAEoCzIXLnNsaXB3YXkudjEuVmVyc2lvblJ1bGUSFAoMbGlmZWN5Y2xlX2lkGAcgASgJEhIKCmlzX2RlZmF1bHQYCCABKAgSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiigUKC1JlbGVhc2VEaWZmEiEKBGZyb20YASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USHwoCdG8YAiABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USOQoJYXJ0aWZhY3RzGAMgAygLMiYuc2xpcHdheS52MS5SZWxlYXNlRGlmZi5BcnRpZmFjdENoYW5nZRI5Cgl2YXJpYWJsZXMYBCADKAsyJi5zbGlwd2F5LnYxLlJlbGVhc2VEaWZmLlZhcmlhYmxlQ2hhbmdlEi8KB2NvbW1pdHMYBSADKAsyHi5zbGlwd2F5LnYxLlJlbGVhc2VEaWZmLkNvbW1pdBIPCgd0aWNrZXRzGAYgAygJEhsKE2NvbW1pdHNfdW5hdmFpbGFibGUYByABKAgSEwoLY29tcGFyZV91cmwYCCABKAkaggEKDkFydGlmYWN0Q2hhbmdlEgwKBG5hbWUYASABKAkSDgoGY2hhbmdlGAIgASgJEikKBGZyb20YAyABKAsyGy5zbGlwd2F5LnYxLlJlbGVhc2VBcnRpZmFjdBInCgJ0bxgEIAEoCzIbLnNsaXB3YXkudjEuUmVsZWFzZUFydGlmYWN0GlsKDlZhcmlhYmxlQ2hhbmdlEgwKBG5hbWUYASABKAkSDgoGY2hhbmdlGAIgASgJEgwKBGZyb20YAyABKAkSCgoCdG8YBCABKAkSEQoJc2Vuc2l0aXZlGAUgASgIGmsKBkNvbW1pdBILCgNzaGEYASABKAkSDwoHbWVzc2FnZRgCIAEoCRIOCgZhdXRob3IYAyABKAkSJgoCYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEgsKA3VybBgFIAEoCSKWBAoPUmVsZWFzZVByb2dyZXNzEiQKB3JlbGVhc2UYASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USKAoJbGlmZWN5Y2xlGAIgASgLMhUuc2xpcHdheS52MS5MaWZlY3ljbGUSMQoGcGhhc2VzGAMgAygLMiEuc2xpcHdheS52MS5SZWxlYXNlUHJvZ3Jlc3MuUGhhc2Ua+wEKEEVudmlyb25tZW50U3RhdGUSFgoOZW52aXJvbm1lbnRfaWQYASABKAkSGAoQZW52aXJvbm1lbnRfbmFtZRgCIAEoCRINCgVzdGF0ZRgDIAEoCRIOCgZyZWFzb24YBCABKAkSFQoNZGVwbG95bWVudF9pZBgFIAEoCRIZChFkZXBsb3ltZW50X3N0YXR1cxgGIAEoCRIvCgtmaW5pc2hlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoPYXV0b19wcm9tb3RlX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBqBAQoFUGhhc2USDAoEbmFtZRgBIAEoCRIQCghjb21wbGV0ZRgCIAEoCBIUCgxhdXRvX3Byb21vdGUYAyABKAgSQgoMZW52aXJvbm1lbnRzGAQgAygLMiwuc2xpcHdheS52MS5SZWxlYXNlUHJvZ3Jlc3MuRW52aXJvbm1lbnRTdGF0ZSLBAwoORGVwbG95bWVudFN0ZXASCgoCaWQYASABKAkSDQoFaW5kZXgYAiABKAUSDAoEbmFtZRgDIAEoCRIKCgJvcBgEIAEoCRINCgVwaGFzZRgFIAEoCRIOCgZydW5uZXIYBiABKAkSEwoLaXNfcm9sbGJhY2sYByABKAgSDgoGc3RhdHVzGAggASgJEicKBnBhcmFtcxgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSJwoGcmVzdWx0GAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBINCgVlcnJvchgLIAEoCRIQCghhdHRlbXB0cxgMIAEoBRIPCgdqb2JfcmVmGA0gASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGA4gASgJEi4KCnN0YXJ0ZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC2ZpbmlzaGVkX2F0GBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZydW5faWQYESABKAkSDgoGam9iX2lkGBIgASgJEhYKDndhaXRpbmdfcmVhc29uGBMgASgJIucBCg5EZXBsb3ltZW50R2F0ZRIKCgJpZBgBIAEoCRIMCgRraW5kGAIgASgJEgwKBG5hbWUYAyABKAkSDgoGc3RhdHVzGAQgASgJEg8KB21lc3NhZ2UYBSABKAkSJwoGZGV0YWlsGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIxCg1uZXh0X2NoZWNrX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIwCgxldmFsdWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIqYBChBBcHByb3ZhbERlY2lzaW9uEgoKAmlkGAEgASgJEg8KB3VzZXJfaWQYAiABKAkSEQoJdXNlcl9uYW1lGAMgASgJEhAKCGRlY2lzaW9uGAQgASgJEg8KB2NvbW1lbnQYBSABKAkSDwoHY2hhbm5lbBgGIAEoCRIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKPBQoIQXBwcm92YWwSCgoCaWQYASABKAkSFAoMc3ViamVjdF9raW5kGAIgASgJEhIKCnN1YmplY3RfaWQYAyABKAkSFQoNZGVwbG95bWVudF9pZBgEIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgFIAEoCRIOCgZzdGF0dXMYBiABKAkSEAoIcmVxdWlyZWQYByABKAUSFgoOYXBwcm92ZWRfY291bnQYCCABKAUSJwoJYXBwcm92ZXJzGAkgAygLMhQuc2xpcHdheS52MS5BcHByb3ZlchIbChNhbGxvd19zZWxmX2FwcHJvdmFsGAogASgIEhQKDHJlcXVlc3RlZF9ieRgLIAEoCRIPCgdtZXNzYWdlGAwgASgJEi4KCmV4cGlyZXNfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC3Jlc29sdmVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9yZXNvbHZlZF9yZWFzb24YDyABKAkSLwoJZGVjaXNpb25zGBAgAygLMhwuc2xpcHdheS52MS5BcHByb3ZhbERlY2lzaW9uEi4KCmNyZWF0ZWRfYXQYESABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhkKEXZpZXdlcl9jYW5fZGVjaWRlGBIgASgIEh0KFXZpZXdlcl9ibG9ja2VkX3JlYXNvbhgTIAEoCRIUCgxzZXJ2aWNlX25hbWUYFCABKAkSFwoPcmVsZWFzZV92ZXJzaW9uGBUgASgJEhgKEGVudmlyb25tZW50X25hbWUYFiABKAkSGQoRcmVxdWVzdGVkX2J5X25hbWUYFyABKAki7AEKFEludGVydmFsTWV0cmljUmVzdWx0EgwKBG5hbWUYASABKAkSDAoEa2luZBgCIAEoCRIUCgxjYW5hcnlfdmFsdWUYAyABKAESFgoOYmFzZWxpbmVfdmFsdWUYBCABKAESFAoMaGFzX2Jhc2VsaW5lGAUgASgIEg8KB3ZlcmRpY3QYBiABKAkSDgoGcmVhc29uGAcgASgJEhAKCGNyaXRpY2FsGAggASgIEhYKDmNhbmFyeV9zYW1wbGVzGAkgASgFEhgKEGJhc2VsaW5lX3NhbXBsZXMYCiABKAUSDwoHcF92YWx1ZRgLIAEoASKgAQoUVmVyaWZpY2F0aW9uSW50ZXJ2YWwSDQoFaW5kZXgYASABKAUSJgoCYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB3ZlcmRpY3QYAyABKAkSDQoFc2NvcmUYBCABKAESMQoHbWV0cmljcxgFIAMoCzIgLnNsaXB3YXkudjEuSW50ZXJ2YWxNZXRyaWNSZXN1bHQiiwMKD1ZlcmlmaWNhdGlvblJ1bhIKCgJpZBgBIAEoCRIVCg1kZXBsb3ltZW50X2lkGAIgASgJEg8KB3N0ZXBfaWQYAyABKAkSEAoIcHJvdmlkZXIYBCABKAkSJwoGY29uZmlnGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIOCgZzdGF0dXMYBiABKAkSDwoHdmVyZGljdBgHIAEoCRIzCglpbnRlcnZhbHMYCCADKAsyIC5zbGlwd2F5LnYxLlZlcmlmaWNhdGlvbkludGVydmFsEhwKFGNvbnNlY3V0aXZlX2ZhaWx1cmVzGAkgASgFEi4KCnN0YXJ0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjQKEG5leHRfaW50ZXJ2YWxfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC2ZpbmlzaGVkX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKLCAoKRGVwbG95bWVudBIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEhIKCnNlcnZpY2VfaWQYAyABKAkSEgoKcmVsZWFzZV9pZBgEIAEoCRIXCg9yZWxlYXNlX3ZlcnNpb24YBSABKAkSFgoOZW52aXJvbm1lbnRfaWQYBiABKAkSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYByABKAkSDgoGdGVuYW50GAggASgJEhAKCHN0cmF0ZWd5GAkgASgJEjAKD3N0cmF0ZWd5X2NvbmZpZxgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDgoGc3RhdHVzGAsgASgJEhUKDXN0YXR1c19yZWFzb24YDCABKAkSFAoMdHJpZ2dlcmVkX2J5GA0gASgJEiAKBWFjdG9yGA4gASgLMhEuc2xpcHdheS52MS5BY3RvchIOCgZydW5faWQYDyABKAkSDgoGam9iX2lkGBAgASgJEh4KFnByZXZpb3VzX2RlcGxveW1lbnRfaWQYESABKAkSIQoZcm9sbGJhY2tfb2ZfZGVwbG95bWVudF9pZBgSIAEoCRIUCgxjdXJyZW50X3N0ZXAYEyABKAUSFAoMcm9sbGluZ19iYWNrGBQgASgIEhUKDWF1dG9fcm9sbGJhY2sYFSABKAgSDQoFZm9yY2UYFiABKAgSDwoHY29tbWVudBgXIAEoCRIpCgVzdGVwcxgYIAMoCzIaLnNsaXB3YXkudjEuRGVwbG95bWVudFN0ZXASKQoFZ2F0ZXMYGSADKAsyGi5zbGlwd2F5LnYxLkRlcGxveW1lbnRHYXRlEiYKCGFwcHJvdmFsGBogASgLMhQuc2xpcHdheS52MS5BcHByb3ZhbBI2ChF2ZXJpZmljYXRpb25fcnVucxgbIAMoCzIbLnNsaXB3YXkudjEuVmVyaWZpY2F0aW9uUnVuEjEKDXNjaGVkdWxlZF9mb3IYHCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCXF1ZXVlZF9hdBgdIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKc3RhcnRlZF9hdBgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLwoLZmluaXNoZWRfYXQYHyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCmNyZWF0ZWRfYXQYICABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhQKDHNlcnZpY2VfbmFtZRghIAEoCRIYChBlbnZpcm9ubWVudF9uYW1lGCIgASgJEhcKD292ZXJyaWRlX2ZyZWV6ZRgjIAEoCCKoAgoRRGVwbG95bWVudFN1bW1hcnkSFQoNZGVwbG95bWVudF9pZBgBIAEoCRISCgpyZWxlYXNlX2lkGAIgASgJEg8KB3ZlcnNpb24YAyABKAkSDwoHY2hhbm5lbBgEIAEoCRIOCgZzdGF0dXMYBSABKAkSEAoIc3RyYXRlZ3kYBiABKAkSFAoMdHJpZ2dlcmVkX2J5GAcgASgJEhIKCmFjdG9yX25hbWUYCCABKAkSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYCSABKAkSLgoKc3RhcnRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLwoLZmluaXNoZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIoQCCglCb2FyZENlbGwSFgoOZW52aXJvbm1lbnRfaWQYASABKAkSEgoKc2VydmljZV9pZBgCIAEoCRIOCgZ0ZW5hbnQYAyABKAkSLgoHY3VycmVudBgEIAEoCzIdLnNsaXB3YXkudjEuRGVwbG95bWVudFN1bW1hcnkSMAoJaW5fZmxpZ2h0GAUgASgLMh0uc2xpcHdheS52MS5EZXBsb3ltZW50U3VtbWFyeRIzCgxsYXN0X2ZhaWx1cmUYBiABKAsyHS5zbGlwd2F5LnYxLkRlcGxveW1lbnRTdW1tYXJ5EhQKDGRyaWZ0X3N0YXR1cxgHIAEoCRIOCgZmcm96ZW4YCCABKAgizAEKEEVudmlyb25tZW50Qm9hcmQSLQoMZW52aXJvbm1lbnRzGAEgAygLMhcuc2xpcHdheS52MS5FbnZpcm9ubWVudBIvCghzZXJ2aWNlcxgCIAMoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2USJAoFY2VsbHMYAyADKAsyFS5zbGlwd2F5LnYxLkJvYXJkQ2VsbBIyCg5hY3RpdmVfZnJlZXplcxgEIAMoCzIaLnNsaXB3YXkudjEuRnJlZXplSW50ZXJ2YWwiPQoORHJpZnRGaWVsZERpZmYSDAoEcGF0aBgBIAEoCRIPCgdkZXNpcmVkGAIgASgJEgwKBGxpdmUYAyABKAkidgoJRHJpZnRJdGVtEgwKBGtpbmQYASABKAkSDAoEbmFtZRgCIAEoCRIRCgluYW1lc3BhY2UYAyABKAkSDgoGc3RhdHVzGAQgASgJEioKBmZpZWxkcxgFIAMoCzIaLnNsaXB3YXkudjEuRHJpZnRGaWVsZERpZmYi/gEKC0RyaWZ0UmVwb3J0EgoKAmlkGAEgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAIgASgJEhYKDmVudmlyb25tZW50X2lkGAMgASgJEhIKCnNlcnZpY2VfaWQYBCABKAkSFQoNZGVwbG95bWVudF9pZBgFIAEoCRIOCgZzdGF0dXMYBiABKAkSJAoFaXRlbXMYByADKAsyFS5zbGlwd2F5LnYxLkRyaWZ0SXRlbRIPCgdzdW1tYXJ5GAggASgJEi4KCmNoZWNrZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBnRlbmFudBgKIAEoCSKdAQoQUnVuYm9va1BhcmFtZXRlchIMCgRuYW1lGAEgASgJEg0KBWxhYmVsGAIgASgJEgwKBHR5cGUYAyABKAkSEAoIcmVxdWlyZWQYBCABKAgSFQoNZGVmYXVsdF92YWx1ZRgFIAEoCRIPCgdvcHRpb25zGAYgAygJEhMKC2Rlc2NyaXB0aW9uGAcgASgJEg8KB3BhdHRlcm4YCCABKAkiqgMKB1J1bmJvb2sSCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRISCgpzZXJ2aWNlX2lkGAMgASgJEgwKBG5hbWUYBCABKAkSDAoEc2x1ZxgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIwCgpwYXJhbWV0ZXJzGAcgAygLMhwuc2xpcHdheS52MS5SdW5ib29rUGFyYW1ldGVyEiYKBXN0ZXBzGAggAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIXCg9lbnZpcm9ubWVudF9pZHMYCSADKAkSGQoRcmVxdWlyZXNfYXBwcm92YWwYCiABKAgSDwoHcnVuc19vbhgLIAMoCRIqCgd0aW1lb3V0GAwgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEg8KB2VuYWJsZWQYDSABKAgSLgoKY3JlYXRlZF9hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgPIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiowQKClJ1bmJvb2tSdW4SCgoCaWQYASABKAkSEgoKcHJvamVjdF9pZBgCIAEoCRISCgpydW5ib29rX2lkGAMgASgJEhYKDmVudmlyb25tZW50X2lkGAQgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAUgASgJEg4KBnN0YXR1cxgGIAEoCRI6CgpwYXJhbWV0ZXJzGAcgAygLMiYuc2xpcHdheS52MS5SdW5ib29rUnVuLlBhcmFtZXRlcnNFbnRyeRITCgthcHByb3ZhbF9pZBgIIAEoCRIPCgdqb2JfcmVmGAkgASgJEg0KBWVycm9yGAogASgJEicKBnJlc3VsdBgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSIAoFYWN0b3IYDCABKAsyES5zbGlwd2F5LnYxLkFjdG9yEi4KCnN0YXJ0ZWRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC2ZpbmlzaGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpjcmVhdGVkX2F0GA8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZydW5faWQYECABKAkSDgoGam9iX2lkGBEgASgJGjEKD1BhcmFtZXRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIlsKCkRvcmFCdWNrZXQSKgoGYnVja2V0GAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIRCglzdWNjZWVkZWQYAiABKAMSDgoGZmFpbGVkGAMgASgDIoIBChJEb3JhU2VydmljZU1ldHJpY3MSEgoKc2VydmljZV9pZBgBIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCRITCgtkZXBsb3ltZW50cxgDIAEoAxIOCgZmYWlsZWQYBCABKAMSGwoTZGVwbG95bWVudHNfcGVyX2RheRgFIAEoASLYBgoLRG9yYU1ldHJpY3MSPwoUZGVwbG95bWVudF9mcmVxdWVuY3kYASABKAsyIS5zbGlwd2F5LnYxLkRvcmFNZXRyaWNzLkZyZXF1ZW5jeRIzCglsZWFkX3RpbWUYAiABKAsyIC5zbGlwd2F5LnYxLkRvcmFNZXRyaWNzLkxlYWRUaW1lEkIKE2NoYW5nZV9mYWlsdXJlX3JhdGUYAyABKAsyJS5zbGlwd2F5LnYxLkRvcmFNZXRyaWNzLkNoYW5nZUZhaWx1cmUSOAoPdGltZV90b19yZXN0b3JlGAQgASgLMh8uc2xpcHdheS52MS5Eb3JhTWV0cmljcy5SZXN0b3JlEjIKCmJ5X3NlcnZpY2UYBSADKAsyHi5zbGlwd2F5LnYxLkRvcmFTZXJ2aWNlTWV0cmljcxIoCgRmcm9tGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBImCgJ0bxgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAaYQoJRnJlcXVlbmN5Eg0KBXRvdGFsGAEgASgDEg8KB3Blcl9kYXkYAiABKAESDAoEYmFuZBgDIAEoCRImCgZzZXJpZXMYBCADKAsyFi5zbGlwd2F5LnYxLkRvcmFCdWNrZXQaogEKCExlYWRUaW1lEg8KB3NhbXBsZXMYASABKAMSJgoDcDUwGAIgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEiYKA3A5MBgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhInCgRtZWFuGAQgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEgwKBGJhbmQYBSABKAkaTAoNQ2hhbmdlRmFpbHVyZRINCgV0b3RhbBgBIAEoAxIQCghmYWlsdXJlcxgCIAEoAxIMCgRyYXRlGAMgASgBEgwKBGJhbmQYBCABKAkaeQoHUmVzdG9yZRIPCgdzYW1wbGVzGAEgASgDEiYKA3A1MBgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhInCgRtZWFuGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEgwKBGJhbmQYBCABKAki4wIKFENyZWF0ZVNlcnZpY2VSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSDAoEbmFtZRgCIAEoCRIMCgRzbHVnGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEgwKBGtpbmQYBSABKAkSLgoNYXJ0aWZhY3Rfc3BlYxgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSLQoMaGVhbHRoX2NoZWNrGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBISCgpyZXBvc2l0b3J5GAggASgJEhgKEGRlZmF1bHRfc3RyYXRlZ3kYCSABKAkSPAoGbGFiZWxzGAogAygLMiwuc2xpcHdheS52MS5DcmVhdGVTZXJ2aWNlUmVxdWVzdC5MYWJlbHNFbnRyeRotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIkcKFUNyZWF0ZVNlcnZpY2VSZXNwb25zZRIuCgdzZXJ2aWNlGAEgASgLMh0uc2xpcHdheS52MS5EZXBsb3lhYmxlU2VydmljZSIfChFHZXRTZXJ2aWNlUmVxdWVzdBIKCgJpZBgBIAEoCSJEChJHZXRTZXJ2aWNlUmVzcG9uc2USLgoHc2VydmljZRgBIAEoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2UiUAoTTGlzdFNlcnZpY2VzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEiUKBHBhZ2UYAiABKAsyFy5zbGlwd2F5LnYxLlBhZ2VSZXF1ZXN0ImwKFExpc3RTZXJ2aWNlc1Jlc3BvbnNlEiwKBWl0ZW1zGAEgAygLMh0uc2xpcHdheS52MS5EZXBsb3lhYmxlU2VydmljZRImCgRwYWdlGAIgASgLMhguc2xpcHdheS52MS5QYWdlUmVzcG9uc2UidwoUVXBkYXRlU2VydmljZVJlcXVlc3QSLgoHc2VydmljZRgBIAEoCzIdLnNsaXB3YXkudjEuRGVwbG95YWJsZVNlcnZpY2USLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIkcKFVVwZGF0ZVNlcnZpY2VSZXNwb25zZRIuCgdzZXJ2aWNlGAEgASgLMh0uc2xpcHdheS52MS5EZXBsb3lhYmxlU2VydmljZSIiChREZWxldGVTZXJ2aWNlUmVxdWVzdBIKCgJpZBgBIAEoCSIXChVEZWxldGVTZXJ2aWNlUmVzcG9uc2UilAMKF0NyZWF0ZURlcGxveW1lbnRSZXF1ZXN0EhIKCnJlbGVhc2VfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYAyABKAkSEAoIc3RyYXRlZ3kYBCABKAkSMAoPc3RyYXRlZ3lfY29uZmlnGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIOCgZ0ZW5hbnQYBiABKAkSDwoHY29tbWVudBgHIAEoCRINCgVmb3JjZRgIIAEoCBIxCg1zY2hlZHVsZWRfZm9yGAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZydW5faWQYCyABKAkSDgoGam9iX2lkGAwgASgJEhQKDHRyaWdnZXJlZF9ieRgNIAEoCRIdChVkaXNhYmxlX2F1dG9fcm9sbGJhY2sYDiABKAgSFwoPb3ZlcnJpZGVfZnJlZXplGA8gASgIEhcKD292ZXJyaWRlX3JlYXNvbhgQIAEoCUoECAoQCyJGChhDcmVhdGVEZXBsb3ltZW50UmVzcG9uc2USKgoKZGVwbG95bWVudBgBIAEoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudCLOAQoYUHJldmlld0RlcGxveW1lbnRSZXF1ZXN0EhIKCnJlbGVhc2VfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYAyABKAkSEAoIc3RyYXRlZ3kYBCABKAkSMAoPc3RyYXRlZ3lfY29uZmlnGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIOCgZ0ZW5hbnQYBiABKAkSFwoPb3ZlcnJpZGVfZnJlZXplGAcgASgIIrIDChlQcmV2aWV3RGVwbG95bWVudFJlc3BvbnNlEhAKCHN0cmF0ZWd5GAEgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAIgASgJEikKBXN0ZXBzGAMgAygLMhouc2xpcHdheS52MS5EZXBsb3ltZW50U3RlcBIpCgVnYXRlcxgEIAMoCzIaLnNsaXB3YXkudjEuRGVwbG95bWVudEdhdGUSGQoRYXBwcm92YWxfcmVxdWlyZWQYBSABKAgSGgoSYXBwcm92YWxzX3JlcXVpcmVkGAYgASgFEicKCWFwcHJvdmVycxgHIAMoCzIULnNsaXB3YXkudjEuQXBwcm92ZXISLwoJdmFyaWFibGVzGAggAygLMhwuc2xpcHdheS52MS5SZXNvbHZlZFZhcmlhYmxlEhgKEGxpZmVjeWNsZV9hbGxvd3MYCSABKAgSGAoQbGlmZWN5Y2xlX3JlYXNvbhgKIAEoCRIkCgdyZWxlYXNlGAsgASgLMhMuc2xpcHdheS52MS5SZWxlYXNlEicKB2N1cnJlbnQYDCABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiIgoUR2V0RGVwbG95bWVudFJlcXVlc3QSCgoCaWQYASABKAkiQwoVR2V0RGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQitQEKFkxpc3REZXBsb3ltZW50c1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRISCgpzZXJ2aWNlX2lkGAIgASgJEhYKDmVudmlyb25tZW50X2lkGAMgASgJEhIKCnJlbGVhc2VfaWQYBCABKAkSEAoIc3RhdHVzZXMYBSADKAkSDgoGcnVuX2lkGAYgASgJEiUKBHBhZ2UYByABKAsyFy5zbGlwd2F5LnYxLlBhZ2VSZXF1ZXN0ImgKF0xpc3REZXBsb3ltZW50c1Jlc3BvbnNlEiUKBWl0ZW1zGAEgAygLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50EiYKBHBhZ2UYAiABKAsyGC5zbGlwd2F5LnYxLlBhZ2VSZXNwb25zZSJZChdDYW5jZWxEZXBsb3ltZW50UmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZyZWFzb24YAiABKAkSFQoIcm9sbGJhY2sYAyABKAhIAIgBAUILCglfcm9sbGJhY2siRgoYQ2FuY2VsRGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiNAoWUGF1c2VEZXBsb3ltZW50UmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZyZWFzb24YAiABKAkiRQoXUGF1c2VEZXBsb3ltZW50UmVzcG9uc2USKgoKZGVwbG95bWVudBgBIAEoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudCIlChdSZXN1bWVEZXBsb3ltZW50UmVxdWVzdBIKCgJpZBgBIAEoCSJGChhSZXN1bWVEZXBsb3ltZW50UmVzcG9uc2USKgoKZGVwbG95bWVudBgBIAEoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudCIkChZSZXRyeURlcGxveW1lbnRSZXF1ZXN0EgoKAmlkGAEgASgJIkUKF1JldHJ5RGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQilgEKGVJvbGxiYWNrRGVwbG95bWVudFJlcXVlc3QSCgoCaWQYASABKAkSGQoRdGFyZ2V0X3JlbGVhc2VfaWQYAiABKAkSDgoGcmVhc29uGAMgASgJEhAKCHN0cmF0ZWd5GAQgASgJEjAKD3N0cmF0ZWd5X2NvbmZpZxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiSAoaUm9sbGJhY2tEZXBsb3ltZW50UmVzcG9uc2USKgoKZGVwbG95bWVudBgBIAEoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudCIkChZXYXRjaERlcGxveW1lbnRSZXF1ZXN0EgoKAmlkGAEgASgJIlcKF1dhdGNoRGVwbG95bWVudFJlc3BvbnNlEioKCmRlcGxveW1lbnQYASABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQSEAoIdGVybWluYWwYAiABKAgiNAobTGlzdFZlcmlmaWNhdGlvblJ1bnNSZXF1ZXN0EhUKDWRlcGxveW1lbnRfaWQYASABKAkiSgocTGlzdFZlcmlmaWNhdGlvblJ1bnNSZXNwb25zZRIqCgVpdGVtcxgBIAMoCzIbLnNsaXB3YXkudjEuVmVyaWZpY2F0aW9uUnVuItkBChVHZXREb3JhTWV0cmljc1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRISCgpzZXJ2aWNlX2lkGAIgASgJEhYKDmVudmlyb25tZW50X2lkGAMgASgJEigKBGZyb20YBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKAnRvGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZidWNrZXQYBiABKAkSHgoWaW5jbHVkZV9ub25fcHJvZHVjdGlvbhgHIAEoCCJCChZHZXREb3JhTWV0cmljc1Jlc3BvbnNlEigKB21ldHJpY3MYASABKAsyFy5zbGlwd2F5LnYxLkRvcmFNZXRyaWNzItwDChRDcmVhdGVSZWxlYXNlUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnNlcnZpY2VfaWQYAiABKAkSDwoHdmVyc2lvbhgDIAEoCRIPCgdjaGFubmVsGAQgASgJEkIKCWFydGlmYWN0cxgFIAMoCzIvLnNsaXB3YXkudjEuQ3JlYXRlUmVsZWFzZVJlcXVlc3QuQXJ0aWZhY3RzRW50cnkSUwoSdmFyaWFibGVfb3ZlcnJpZGVzGAYgAygLMjcuc2xpcHdheS52MS5DcmVhdGVSZWxlYXNlUmVxdWVzdC5WYXJpYWJsZU92ZXJyaWRlc0VudHJ5EjEKCnByb3ZlbmFuY2UYByABKAsyHS5zbGlwd2F5LnYxLlJlbGVhc2VQcm92ZW5hbmNlEhUKDXJlbGVhc2Vfbm90ZXMYCCABKAkSDgoGcnVuX2lkGAkgASgJGk0KDkFydGlmYWN0c0VudHJ5EgsKA2tleRgBIAEoCRIqCgV2YWx1ZRgCIAEoCzIbLnNsaXB3YXkudjEuUmVsZWFzZUFydGlmYWN0OgI4ARo4ChZWYXJpYWJsZU92ZXJyaWRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEibwoVQ3JlYXRlUmVsZWFzZVJlc3BvbnNlEiQKB3JlbGVhc2UYASABKAsyEy5zbGlwd2F5LnYxLlJlbGVhc2USMAoQYXV0b19kZXBsb3ltZW50cxgCIAMoCzIWLnNsaXB3YXkudjEuRGVwbG95bWVudCIfChFHZXRSZWxlYXNlUmVxdWVzdBIKCgJpZBgBIAEoCSI6ChJHZXRSZWxlYXNlUmVzcG9uc2USJAoHcmVsZWFzZRgBIAEoCzITLnNsaXB3YXkudjEuUmVsZWFzZSKNAQoTTGlzdFJlbGVhc2VzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnNlcnZpY2VfaWQYAiABKAkSDwoHY2hhbm5lbBgDIAEoCRIWCg52ZXJzaW9uX3ByZWZpeBgEIAEoCRIlCgRwYWdlGAUgASgLMhcuc2xpcHdheS52MS5QYWdlUmVxdWVzdCJiChRMaXN0UmVsZWFzZXNSZXNwb25zZRIiCgVpdGVtcxgBIAMoCzITLnNsaXB3YXkudjEuUmVsZWFzZRImCgRwYWdlGAIgASgLMhguc2xpcHdheS52MS5QYWdlUmVzcG9uc2UiOQoUVXBkYXRlUmVsZWFzZVJlcXVlc3QSCgoCaWQYASABKAkSFQoNcmVsZWFzZV9ub3RlcxgCIAEoCSI9ChVVcGRhdGVSZWxlYXNlUmVzcG9uc2USJAoHcmVsZWFzZRgBIAEoCzITLnNsaXB3YXkudjEuUmVsZWFzZSIiChREZWxldGVSZWxlYXNlUmVxdWVzdBIKCgJpZBgBIAEoCSIXChVEZWxldGVSZWxlYXNlUmVzcG9uc2UiRQoTRGlmZlJlbGVhc2VzUmVxdWVzdBIXCg9mcm9tX3JlbGVhc2VfaWQYASABKAkSFQoNdG9fcmVsZWFzZV9pZBgCIAEoCSI9ChREaWZmUmVsZWFzZXNSZXNwb25zZRIlCgRkaWZmGAEgASgLMhcuc2xpcHdheS52MS5SZWxlYXNlRGlmZiIvChlHZXRSZWxlYXNlUHJvZ3Jlc3NSZXF1ZXN0EhIKCnJlbGVhc2VfaWQYASABKAkiSwoaR2V0UmVsZWFzZVByb2dyZXNzUmVzcG9uc2USLQoIcHJvZ3Jlc3MYASABKAsyGy5zbGlwd2F5LnYxLlJlbGVhc2VQcm9ncmVzcyK3AQoVUHJvbW90ZVJlbGVhc2VSZXF1ZXN0EhIKCnJlbGVhc2VfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSEAoIc3RyYXRlZ3kYAyABKAkSDgoGdGVuYW50GAQgASgJEg8KB2NvbW1lbnQYBSABKAkSDQoFZm9yY2UYBiABKAgSFwoPb3ZlcnJpZGVfZnJlZXplGAcgASgIEhcKD292ZXJyaWRlX3JlYXNvbhgIIAEoCSJFChZQcm9tb3RlUmVsZWFzZVJlc3BvbnNlEisKC2RlcGxveW1lbnRzGAEgAygLMhYuc2xpcHdheS52MS5EZXBsb3ltZW50Io8BChZDcmVhdGVMaWZlY3ljbGVSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIqCgZwaGFzZXMYBCADKAsyGi5zbGlwd2F5LnYxLkxpZmVjeWNsZVBoYXNlEhIKCmlzX2RlZmF1bHQYBSABKAgiQwoXQ3JlYXRlTGlmZWN5Y2xlUmVzcG9uc2USKAoJbGlmZWN5Y2xlGAEgASgLMhUuc2xpcHdheS52MS5MaWZlY3ljbGUiIQoTR2V0TGlmZWN5Y2xlUmVxdWVzdBIKCgJpZBgBIAEoCSJAChRHZXRMaWZlY3ljbGVSZXNwb25zZRIoCglsaWZlY3ljbGUYASABKAsyFS5zbGlwd2F5LnYxLkxpZmVjeWNsZSIrChVMaXN0TGlmZWN5Y2xlc1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCSI+ChZMaXN0TGlmZWN5Y2xlc1Jlc3BvbnNlEiQKBWl0ZW1zGAEgAygLMhUuc2xpcHdheS52MS5MaWZlY3ljbGUicwoWVXBkYXRlTGlmZWN5Y2xlUmVxdWVzdBIoCglsaWZlY3ljbGUYASABKAsyFS5zbGlwd2F5LnYxLkxpZmVjeWNsZRIvCgt1cGRhdGVfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siQwoXVXBkYXRlTGlmZWN5Y2xlUmVzcG9uc2USKAoJbGlmZWN5Y2xlGAEgASgLMhUuc2xpcHdheS52MS5MaWZlY3ljbGUiJAoWRGVsZXRlTGlmZWN5Y2xlUmVxdWVzdBIKCgJpZBgBIAEoCSIZChdEZWxldGVMaWZlY3ljbGVSZXNwb25zZSK6AQoUQ3JlYXRlQ2hhbm5lbFJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRISCgpzZXJ2aWNlX2lkGAIgASgJEgwKBG5hbWUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSLQoMdmVyc2lvbl9ydWxlGAUgASgLMhcuc2xpcHdheS52MS5WZXJzaW9uUnVsZRIUCgxsaWZlY3ljbGVfaWQYBiABKAkSEgoKaXNfZGVmYXVsdBgHIAEoCCJEChVDcmVhdGVDaGFubmVsUmVzcG9uc2USKwoHY2hhbm5lbBgBIAEoCzIaLnNsaXB3YXkudjEuUmVsZWFzZUNoYW5uZWwiPQoTTGlzdENoYW5uZWxzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnNlcnZpY2VfaWQYAiABKAkiQQoUTGlzdENoYW5uZWxzUmVzcG9uc2USKQoFaXRlbXMYASADKAsyGi5zbGlwd2F5LnYxLlJlbGVhc2VDaGFubmVsInQKFFVwZGF0ZUNoYW5uZWxSZXF1ZXN0EisKB2NoYW5uZWwYASABKAsyGi5zbGlwd2F5LnYxLlJlbGVhc2VDaGFubmVsEi8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJEChVVcGRhdGVDaGFubmVsUmVzcG9uc2USKwoHY2hhbm5lbBgBIAEoCzIaLnNsaXB3YXkudjEuUmVsZWFzZUNoYW5uZWwiIgoURGVsZXRlQ2hhbm5lbFJlcXVlc3QSCgoCaWQYASABKAkiFwoVRGVsZXRlQ2hhbm5lbFJlc3BvbnNlItoBChhDcmVhdGVFbnZpcm9ubWVudFJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIMCgRuYW1lGAIgASgJEgwKBHNsdWcYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSDQoFb3JkZXIYBSABKAUSDAoEa2luZBgGIAEoCRILCgN1cmwYByABKAkSNQoQcHJvdGVjdGlvbl9ydWxlcxgIIAEoCzIbLnNsaXB3YXkudjEuUHJvdGVjdGlvblJ1bGVzEhgKEGRlZmF1bHRfc3RyYXRlZ3kYCSABKAkiSQoZQ3JlYXRlRW52aXJvbm1lbnRSZXNwb25zZRIsCgtlbnZpcm9ubWVudBgBIAEoCzIXLnNsaXB3YXkudjEuRW52aXJvbm1lbnQiIwoVR2V0RW52aXJvbm1lbnRSZXF1ZXN0EgoKAmlkGAEgASgJIkYKFkdldEVudmlyb25tZW50UmVzcG9uc2USLAoLZW52aXJvbm1lbnQYASABKAsyFy5zbGlwd2F5LnYxLkVudmlyb25tZW50Ii0KF0xpc3RFbnZpcm9ubWVudHNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkiQgoYTGlzdEVudmlyb25tZW50c1Jlc3BvbnNlEiYKBWl0ZW1zGAEgAygLMhcuc2xpcHdheS52MS5FbnZpcm9ubWVudCJ5ChhVcGRhdGVFbnZpcm9ubWVudFJlcXVlc3QSLAoLZW52aXJvbm1lbnQYASABKAsyFy5zbGlwd2F5LnYxLkVudmlyb25tZW50Ei8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJJChlVcGRhdGVFbnZpcm9ubWVudFJlc3BvbnNlEiwKC2Vudmlyb25tZW50GAEgASgLMhcuc2xpcHdheS52MS5FbnZpcm9ubWVudCImChhEZWxldGVFbnZpcm9ubWVudFJlcXVlc3QSCgoCaWQYASABKAkiGwoZRGVsZXRlRW52aXJvbm1lbnRSZXNwb25zZSJJChpSZW9yZGVyRW52aXJvbm1lbnRzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhcKD2Vudmlyb25tZW50X2lkcxgCIAMoCSJFChtSZW9yZGVyRW52aXJvbm1lbnRzUmVzcG9uc2USJgoFaXRlbXMYASADKAsyFy5zbGlwd2F5LnYxLkVudmlyb25tZW50IlUKGkdldEVudmlyb25tZW50Qm9hcmRSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEwoLc2VydmljZV9pZHMYAiADKAkSDgoGdGVuYW50GAMgASgJIkoKG0dldEVudmlyb25tZW50Qm9hcmRSZXNwb25zZRIrCgVib2FyZBgBIAEoCzIcLnNsaXB3YXkudjEuRW52aXJvbm1lbnRCb2FyZCKJAwobQ3JlYXRlSW5mcmFzdHJ1Y3R1cmVSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSFgoOZW52aXJvbm1lbnRfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRIMCgRraW5kGAQgASgJEicKBmNvbmZpZxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSFQoNY29ubmVjdGlvbl9pZBgGIAEoCRIWCg5ydW5uZXJfcG9vbF9pZBgHIAEoCRITCgtzZXJ2aWNlX2lkcxgIIAMoCRIOCgZyZWdpb24YCSABKAkSQwoGbGFiZWxzGAogAygLMjMuc2xpcHdheS52MS5DcmVhdGVJbmZyYXN0cnVjdHVyZVJlcXVlc3QuTGFiZWxzRW50cnkSMQoOZHJpZnRfaW50ZXJ2YWwYCyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24aLQoLTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJSChxDcmVhdGVJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEjIKDmluZnJhc3RydWN0dXJlGAEgASgLMhouc2xpcHdheS52MS5JbmZyYXN0cnVjdHVyZSImChhHZXRJbmZyYXN0cnVjdHVyZVJlcXVlc3QSCgoCaWQYASABKAkiTwoZR2V0SW5mcmFzdHJ1Y3R1cmVSZXNwb25zZRIyCg5pbmZyYXN0cnVjdHVyZRgBIAEoCzIaLnNsaXB3YXkudjEuSW5mcmFzdHJ1Y3R1cmUiSAoaTGlzdEluZnJhc3RydWN0dXJlc1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCSJIChtMaXN0SW5mcmFzdHJ1Y3R1cmVzUmVzcG9uc2USKQoFaXRlbXMYASADKAsyGi5zbGlwd2F5LnYxLkluZnJhc3RydWN0dXJlIoIBChtVcGRhdGVJbmZyYXN0cnVjdHVyZVJlcXVlc3QSMgoOaW5mcmFzdHJ1Y3R1cmUYASABKAsyGi5zbGlwd2F5LnYxLkluZnJhc3RydWN0dXJlEi8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJSChxVcGRhdGVJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEjIKDmluZnJhc3RydWN0dXJlGAEgASgLMhouc2xpcHdheS52MS5JbmZyYXN0cnVjdHVyZSIpChtEZWxldGVJbmZyYXN0cnVjdHVyZVJlcXVlc3QSCgoCaWQYASABKAkiHgocRGVsZXRlSW5mcmFzdHJ1Y3R1cmVSZXNwb25zZSInChlUZXN0SW5mcmFzdHJ1Y3R1cmVSZXF1ZXN0EgoKAmlkGAEgASgJImMKGlRlc3RJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEgoKAm9rGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSKAoHZGV0YWlscxgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiGQoXR2V0QXdzRXh0ZXJuYWxJZFJlcXVlc3QiTwoYR2V0QXdzRXh0ZXJuYWxJZFJlc3BvbnNlEhMKC2V4dGVybmFsX2lkGAEgASgJEh4KFnRydXN0X3BvbGljeV9jb25kaXRpb24YAiABKAkirgEKFUNyZWF0ZVZhcmlhYmxlUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEgwKBG5hbWUYAiABKAkSDQoFdmFsdWUYAyABKAkSEgoKc2VjcmV0X3JlZhgEIAEoCRIRCglzZW5zaXRpdmUYBSABKAgSEwoLZGVzY3JpcHRpb24YBiABKAkSKAoFc2NvcGUYByABKAsyGS5zbGlwd2F5LnYxLlZhcmlhYmxlU2NvcGUiRgoWQ3JlYXRlVmFyaWFibGVSZXNwb25zZRIsCgh2YXJpYWJsZRgBIAEoCzIaLnNsaXB3YXkudjEuRGVwbG95VmFyaWFibGUiKgoUTGlzdFZhcmlhYmxlc1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCSJCChVMaXN0VmFyaWFibGVzUmVzcG9uc2USKQoFaXRlbXMYASADKAsyGi5zbGlwd2F5LnYxLkRlcGxveVZhcmlhYmxlInYKFVVwZGF0ZVZhcmlhYmxlUmVxdWVzdBIsCgh2YXJpYWJsZRgBIAEoCzIaLnNsaXB3YXkudjEuRGVwbG95VmFyaWFibGUSLwoLdXBkYXRlX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIkYKFlVwZGF0ZVZhcmlhYmxlUmVzcG9uc2USLAoIdmFyaWFibGUYASABKAsyGi5zbGlwd2F5LnYxLkRlcGxveVZhcmlhYmxlIiMKFURlbGV0ZVZhcmlhYmxlUmVxdWVzdBIKCgJpZBgBIAEoCSIYChZEZWxldGVWYXJpYWJsZVJlc3BvbnNlIuQBChdQcmV2aWV3VmFyaWFibGVzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEigKBXNjb3BlGAIgASgLMhkuc2xpcHdheS52MS5WYXJpYWJsZVNjb3BlEhIKCnJlbGVhc2VfaWQYAyABKAkSRQoJb3ZlcnJpZGVzGAQgAygLMjIuc2xpcHdheS52MS5QcmV2aWV3VmFyaWFibGVzUmVxdWVzdC5PdmVycmlkZXNFbnRyeRowCg5PdmVycmlkZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIkcKGFByZXZpZXdWYXJpYWJsZXNSZXNwb25zZRIrCgVpdGVtcxgBIAMoCzIcLnNsaXB3YXkudjEuUmVzb2x2ZWRWYXJpYWJsZSKhAQoTQ3JlYXRlRnJlZXplUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEgwKBG5hbWUYAyABKAkSDgoGcmVhc29uGAQgASgJEigKBndpbmRvdxgFIAEoCzIYLnNsaXB3YXkudjEuRGVwbG95V2luZG93EhYKDmFsbG93X292ZXJyaWRlGAYgASgIIjoKFENyZWF0ZUZyZWV6ZVJlc3BvbnNlEiIKBmZyZWV6ZRgBIAEoCzISLnNsaXB3YXkudjEuRnJlZXplIkAKEkxpc3RGcmVlemVzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJIjgKE0xpc3RGcmVlemVzUmVzcG9uc2USIQoFaXRlbXMYASADKAsyEi5zbGlwd2F5LnYxLkZyZWV6ZSJqChNVcGRhdGVGcmVlemVSZXF1ZXN0EiIKBmZyZWV6ZRgBIAEoCzISLnNsaXB3YXkudjEuRnJlZXplEi8KC3VwZGF0ZV9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayI6ChRVcGRhdGVGcmVlemVSZXNwb25zZRIiCgZmcmVlemUYASABKAsyEi5zbGlwd2F5LnYxLkZyZWV6ZSIhChNEZWxldGVGcmVlemVSZXF1ZXN0EgoKAmlkGAEgASgJIhYKFERlbGV0ZUZyZWV6ZVJlc3BvbnNlIpgBChhHZXRGcmVlemVDYWxlbmRhclJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCRIoCgRmcm9tGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBImCgJ0bxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiRgoZR2V0RnJlZXplQ2FsZW5kYXJSZXNwb25zZRIpCgVpdGVtcxgBIAMoCzIaLnNsaXB3YXkudjEuRnJlZXplSW50ZXJ2YWwiLgoRQ2hlY2tEcmlmdFJlcXVlc3QSGQoRaW5mcmFzdHJ1Y3R1cmVfaWQYASABKAkiZwoSQ2hlY2tEcmlmdFJlc3BvbnNlEicKBnJlcG9ydBgBIAEoCzIXLnNsaXB3YXkudjEuRHJpZnRSZXBvcnQSKAoHcmVwb3J0cxgCIAMoCzIXLnNsaXB3YXkudjEuRHJpZnRSZXBvcnQiYAoXTGlzdERyaWZ0UmVwb3J0c1JlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCRIZChFpbmZyYXN0cnVjdHVyZV9pZBgDIAEoCSJCChhMaXN0RHJpZnRSZXBvcnRzUmVzcG9uc2USJgoFaXRlbXMYASADKAsyFy5zbGlwd2F5LnYxLkRyaWZ0UmVwb3J0IowBChRMaXN0QXBwcm92YWxzUmVxdWVzdBIQCghzdGF0dXNlcxgBIAMoCRIWCg5lbnZpcm9ubWVudF9pZBgCIAEoCRIVCg1kZXBsb3ltZW50X2lkGAMgASgJEgwKBG1pbmUYBCABKAgSJQoEcGFnZRgFIAEoCzIXLnNsaXB3YXkudjEuUGFnZVJlcXVlc3QiZAoVTGlzdEFwcHJvdmFsc1Jlc3BvbnNlEiMKBWl0ZW1zGAEgAygLMhQuc2xpcHdheS52MS5BcHByb3ZhbBImCgRwYWdlGAIgASgLMhguc2xpcHdheS52MS5QYWdlUmVzcG9uc2UiIAoSR2V0QXBwcm92YWxSZXF1ZXN0EgoKAmlkGAEgASgJIj0KE0dldEFwcHJvdmFsUmVzcG9uc2USJgoIYXBwcm92YWwYASABKAsyFC5zbGlwd2F5LnYxLkFwcHJvdmFsIkYKFURlY2lkZUFwcHJvdmFsUmVxdWVzdBIKCgJpZBgBIAEoCRIQCghkZWNpc2lvbhgCIAEoCRIPCgdjb21tZW50GAMgASgJImwKFkRlY2lkZUFwcHJvdmFsUmVzcG9uc2USJgoIYXBwcm92YWwYASABKAsyFC5zbGlwd2F5LnYxLkFwcHJvdmFsEioKCmRlcGxveW1lbnQYAiABKAsyFi5zbGlwd2F5LnYxLkRlcGxveW1lbnQiMwoVQ2FuY2VsQXBwcm92YWxSZXF1ZXN0EgoKAmlkGAEgASgJEg4KBnJlYXNvbhgCIAEoCSJAChZDYW5jZWxBcHByb3ZhbFJlc3BvbnNlEiYKCGFwcHJvdmFsGAEgASgLMhQuc2xpcHdheS52MS5BcHByb3ZhbCJSChRFdmFsdWF0ZUdhdGVzUmVxdWVzdBISCgpyZWxlYXNlX2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEg4KBnRlbmFudBgDIAEoCSJyChVFdmFsdWF0ZUdhdGVzUmVzcG9uc2USKQoFZ2F0ZXMYASADKAsyGi5zbGlwd2F5LnYxLkRlcGxveW1lbnRHYXRlEhMKC3dvdWxkX2Jsb2NrGAIgASgIEhkKEWFwcHJvdmFsX3JlcXVpcmVkGAMgASgIIroCChRDcmVhdGVSdW5ib29rUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnNlcnZpY2VfaWQYAiABKAkSDAoEbmFtZRgDIAEoCRIMCgRzbHVnGAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJEjAKCnBhcmFtZXRlcnMYBiADKAsyHC5zbGlwd2F5LnYxLlJ1bmJvb2tQYXJhbWV0ZXISJgoFc3RlcHMYByADKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhcKD2Vudmlyb25tZW50X2lkcxgIIAMoCRIZChFyZXF1aXJlc19hcHByb3ZhbBgJIAEoCBIPCgdydW5zX29uGAogAygJEioKB3RpbWVvdXQYCyABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24iPQoVQ3JlYXRlUnVuYm9va1Jlc3BvbnNlEiQKB3J1bmJvb2sYASABKAsyEy5zbGlwd2F5LnYxLlJ1bmJvb2siHwoRR2V0UnVuYm9va1JlcXVlc3QSCgoCaWQYASABKAkiOgoSR2V0UnVuYm9va1Jlc3BvbnNlEiQKB3J1bmJvb2sYASABKAsyEy5zbGlwd2F5LnYxLlJ1bmJvb2siPQoTTGlzdFJ1bmJvb2tzUmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnNlcnZpY2VfaWQYAiABKAkiOgoUTGlzdFJ1bmJvb2tzUmVzcG9uc2USIgoFaXRlbXMYASADKAsyEy5zbGlwd2F5LnYxLlJ1bmJvb2sibQoUVXBkYXRlUnVuYm9va1JlcXVlc3QSJAoHcnVuYm9vaxgBIAEoCzITLnNsaXB3YXkudjEuUnVuYm9vaxIvCgt1cGRhdGVfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siPQoVVXBkYXRlUnVuYm9va1Jlc3BvbnNlEiQKB3J1bmJvb2sYASABKAsyEy5zbGlwd2F5LnYxLlJ1bmJvb2siIgoURGVsZXRlUnVuYm9va1JlcXVlc3QSCgoCaWQYASABKAkiFwoVRGVsZXRlUnVuYm9va1Jlc3BvbnNlIoICChFSdW5SdW5ib29rUmVxdWVzdBISCgpydW5ib29rX2lkGAEgASgJEhYKDmVudmlyb25tZW50X2lkGAIgASgJEhkKEWluZnJhc3RydWN0dXJlX2lkGAMgASgJEkEKCnBhcmFtZXRlcnMYBCADKAsyLS5zbGlwd2F5LnYxLlJ1blJ1bmJvb2tSZXF1ZXN0LlBhcmFtZXRlcnNFbnRyeRIXCg9vdmVycmlkZV9mcmVlemUYBSABKAgSFwoPb3ZlcnJpZGVfcmVhc29uGAYgASgJGjEKD1BhcmFtZXRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIjkKElJ1blJ1bmJvb2tSZXNwb25zZRIjCgNydW4YASABKAsyFi5zbGlwd2F5LnYxLlJ1bmJvb2tSdW4iIgoUR2V0UnVuYm9va1J1blJlcXVlc3QSCgoCaWQYASABKAkiPAoVR2V0UnVuYm9va1J1blJlc3BvbnNlEiMKA3J1bhgBIAEoCzIWLnNsaXB3YXkudjEuUnVuYm9va1J1biJ/ChZMaXN0UnVuYm9va1J1bnNSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEgoKcnVuYm9va19pZBgCIAEoCRIWCg5lbnZpcm9ubWVudF9pZBgDIAEoCRIlCgRwYWdlGAQgASgLMhcuc2xpcHdheS52MS5QYWdlUmVxdWVzdCJoChdMaXN0UnVuYm9va1J1bnNSZXNwb25zZRIlCgVpdGVtcxgBIAMoCzIWLnNsaXB3YXkudjEuUnVuYm9va1J1bhImCgRwYWdlGAIgASgLMhguc2xpcHdheS52MS5QYWdlUmVzcG9uc2UiNQoXQ2FuY2VsUnVuYm9va1J1blJlcXVlc3QSCgoCaWQYASABKAkSDgoGcmVhc29uGAIgASgJIj8KGENhbmNlbFJ1bmJvb2tSdW5SZXNwb25zZRIjCgNydW4YASABKAsyFi5zbGlwd2F5LnYxLlJ1bmJvb2tSdW4yoQwKDURlcGxveVNlcnZpY2USVAoNQ3JlYXRlU2VydmljZRIgLnNsaXB3YXkudjEuQ3JlYXRlU2VydmljZVJlcXVlc3QaIS5zbGlwd2F5LnYxLkNyZWF0ZVNlcnZpY2VSZXNwb25zZRJLCgpHZXRTZXJ2aWNlEh0uc2xpcHdheS52MS5HZXRTZXJ2aWNlUmVxdWVzdBoeLnNsaXB3YXkudjEuR2V0U2VydmljZVJlc3BvbnNlElEKDExpc3RTZXJ2aWNlcxIfLnNsaXB3YXkudjEuTGlzdFNlcnZpY2VzUmVxdWVzdBogLnNsaXB3YXkudjEuTGlzdFNlcnZpY2VzUmVzcG9uc2USVAoNVXBkYXRlU2VydmljZRIgLnNsaXB3YXkudjEuVXBkYXRlU2VydmljZVJlcXVlc3QaIS5zbGlwd2F5LnYxLlVwZGF0ZVNlcnZpY2VSZXNwb25zZRJUCg1EZWxldGVTZXJ2aWNlEiAuc2xpcHdheS52MS5EZWxldGVTZXJ2aWNlUmVxdWVzdBohLnNsaXB3YXkudjEuRGVsZXRlU2VydmljZVJlc3BvbnNlEl0KEENyZWF0ZURlcGxveW1lbnQSIy5zbGlwd2F5LnYxLkNyZWF0ZURlcGxveW1lbnRSZXF1ZXN0GiQuc2xpcHdheS52MS5DcmVhdGVEZXBsb3ltZW50UmVzcG9uc2USYAoRUHJldmlld0RlcGxveW1lbnQSJC5zbGlwd2F5LnYxLlByZXZpZXdEZXBsb3ltZW50UmVxdWVzdBolLnNsaXB3YXkudjEuUHJldmlld0RlcGxveW1lbnRSZXNwb25zZRJUCg1HZXREZXBsb3ltZW50EiAuc2xpcHdheS52MS5HZXREZXBsb3ltZW50UmVxdWVzdBohLnNsaXB3YXkudjEuR2V0RGVwbG95bWVudFJlc3BvbnNlEloKD0xpc3REZXBsb3ltZW50cxIiLnNsaXB3YXkudjEuTGlzdERlcGxveW1lbnRzUmVxdWVzdBojLnNsaXB3YXkudjEuTGlzdERlcGxveW1lbnRzUmVzcG9uc2USXQoQQ2FuY2VsRGVwbG95bWVudBIjLnNsaXB3YXkudjEuQ2FuY2VsRGVwbG95bWVudFJlcXVlc3QaJC5zbGlwd2F5LnYxLkNhbmNlbERlcGxveW1lbnRSZXNwb25zZRJaCg9QYXVzZURlcGxveW1lbnQSIi5zbGlwd2F5LnYxLlBhdXNlRGVwbG95bWVudFJlcXVlc3QaIy5zbGlwd2F5LnYxLlBhdXNlRGVwbG95bWVudFJlc3BvbnNlEl0KEFJlc3VtZURlcGxveW1lbnQSIy5zbGlwd2F5LnYxLlJlc3VtZURlcGxveW1lbnRSZXF1ZXN0GiQuc2xpcHdheS52MS5SZXN1bWVEZXBsb3ltZW50UmVzcG9uc2USWgoPUmV0cnlEZXBsb3ltZW50EiIuc2xpcHdheS52MS5SZXRyeURlcGxveW1lbnRSZXF1ZXN0GiMuc2xpcHdheS52MS5SZXRyeURlcGxveW1lbnRSZXNwb25zZRJjChJSb2xsYmFja0RlcGxveW1lbnQSJS5zbGlwd2F5LnYxLlJvbGxiYWNrRGVwbG95bWVudFJlcXVlc3QaJi5zbGlwd2F5LnYxLlJvbGxiYWNrRGVwbG95bWVudFJlc3BvbnNlElwKD1dhdGNoRGVwbG95bWVudBIiLnNsaXB3YXkudjEuV2F0Y2hEZXBsb3ltZW50UmVxdWVzdBojLnNsaXB3YXkudjEuV2F0Y2hEZXBsb3ltZW50UmVzcG9uc2UwARJpChRMaXN0VmVyaWZpY2F0aW9uUnVucxInLnNsaXB3YXkudjEuTGlzdFZlcmlmaWNhdGlvblJ1bnNSZXF1ZXN0Giguc2xpcHdheS52MS5MaXN0VmVyaWZpY2F0aW9uUnVuc1Jlc3BvbnNlElcKDkdldERvcmFNZXRyaWNzEiEuc2xpcHdheS52MS5HZXREb3JhTWV0cmljc1JlcXVlc3QaIi5zbGlwd2F5LnYxLkdldERvcmFNZXRyaWNzUmVzcG9uc2Uy2AsKDlJlbGVhc2VTZXJ2aWNlElQKDUNyZWF0ZVJlbGVhc2USIC5zbGlwd2F5LnYxLkNyZWF0ZVJlbGVhc2VSZXF1ZXN0GiEuc2xpcHdheS52MS5DcmVhdGVSZWxlYXNlUmVzcG9uc2USSwoKR2V0UmVsZWFzZRIdLnNsaXB3YXkudjEuR2V0UmVsZWFzZVJlcXVlc3QaHi5zbGlwd2F5LnYxLkdldFJlbGVhc2VSZXNwb25zZRJRCgxMaXN0UmVsZWFzZXMSHy5zbGlwd2F5LnYxLkxpc3RSZWxlYXNlc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkxpc3RSZWxlYXNlc1Jlc3BvbnNlElQKDVVwZGF0ZVJlbGVhc2USIC5zbGlwd2F5LnYxLlVwZGF0ZVJlbGVhc2VSZXF1ZXN0GiEuc2xpcHdheS52MS5VcGRhdGVSZWxlYXNlUmVzcG9uc2USVAoNRGVsZXRlUmVsZWFzZRIgLnNsaXB3YXkudjEuRGVsZXRlUmVsZWFzZVJlcXVlc3QaIS5zbGlwd2F5LnYxLkRlbGV0ZVJlbGVhc2VSZXNwb25zZRJRCgxEaWZmUmVsZWFzZXMSHy5zbGlwd2F5LnYxLkRpZmZSZWxlYXNlc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkRpZmZSZWxlYXNlc1Jlc3BvbnNlEmMKEkdldFJlbGVhc2VQcm9ncmVzcxIlLnNsaXB3YXkudjEuR2V0UmVsZWFzZVByb2dyZXNzUmVxdWVzdBomLnNsaXB3YXkudjEuR2V0UmVsZWFzZVByb2dyZXNzUmVzcG9uc2USVwoOUHJvbW90ZVJlbGVhc2USIS5zbGlwd2F5LnYxLlByb21vdGVSZWxlYXNlUmVxdWVzdBoiLnNsaXB3YXkudjEuUHJvbW90ZVJlbGVhc2VSZXNwb25zZRJaCg9DcmVhdGVMaWZlY3ljbGUSIi5zbGlwd2F5LnYxLkNyZWF0ZUxpZmVjeWNsZVJlcXVlc3QaIy5zbGlwd2F5LnYxLkNyZWF0ZUxpZmVjeWNsZVJlc3BvbnNlElEKDEdldExpZmVjeWNsZRIfLnNsaXB3YXkudjEuR2V0TGlmZWN5Y2xlUmVxdWVzdBogLnNsaXB3YXkudjEuR2V0TGlmZWN5Y2xlUmVzcG9uc2USVwoOTGlzdExpZmVjeWNsZXMSIS5zbGlwd2F5LnYxLkxpc3RMaWZlY3ljbGVzUmVxdWVzdBoiLnNsaXB3YXkudjEuTGlzdExpZmVjeWNsZXNSZXNwb25zZRJaCg9VcGRhdGVMaWZlY3ljbGUSIi5zbGlwd2F5LnYxLlVwZGF0ZUxpZmVjeWNsZVJlcXVlc3QaIy5zbGlwd2F5LnYxLlVwZGF0ZUxpZmVjeWNsZVJlc3BvbnNlEloKD0RlbGV0ZUxpZmVjeWNsZRIiLnNsaXB3YXkudjEuRGVsZXRlTGlmZWN5Y2xlUmVxdWVzdBojLnNsaXB3YXkudjEuRGVsZXRlTGlmZWN5Y2xlUmVzcG9uc2USVAoNQ3JlYXRlQ2hhbm5lbBIgLnNsaXB3YXkudjEuQ3JlYXRlQ2hhbm5lbFJlcXVlc3QaIS5zbGlwd2F5LnYxLkNyZWF0ZUNoYW5uZWxSZXNwb25zZRJRCgxMaXN0Q2hhbm5lbHMSHy5zbGlwd2F5LnYxLkxpc3RDaGFubmVsc1JlcXVlc3QaIC5zbGlwd2F5LnYxLkxpc3RDaGFubmVsc1Jlc3BvbnNlElQKDVVwZGF0ZUNoYW5uZWwSIC5zbGlwd2F5LnYxLlVwZGF0ZUNoYW5uZWxSZXF1ZXN0GiEuc2xpcHdheS52MS5VcGRhdGVDaGFubmVsUmVzcG9uc2USVAoNRGVsZXRlQ2hhbm5lbBIgLnNsaXB3YXkudjEuRGVsZXRlQ2hhbm5lbFJlcXVlc3QaIS5zbGlwd2F5LnYxLkRlbGV0ZUNoYW5uZWxSZXNwb25zZTKoEwoSRW52aXJvbm1lbnRTZXJ2aWNlEmAKEUNyZWF0ZUVudmlyb25tZW50EiQuc2xpcHdheS52MS5DcmVhdGVFbnZpcm9ubWVudFJlcXVlc3QaJS5zbGlwd2F5LnYxLkNyZWF0ZUVudmlyb25tZW50UmVzcG9uc2USVwoOR2V0RW52aXJvbm1lbnQSIS5zbGlwd2F5LnYxLkdldEVudmlyb25tZW50UmVxdWVzdBoiLnNsaXB3YXkudjEuR2V0RW52aXJvbm1lbnRSZXNwb25zZRJdChBMaXN0RW52aXJvbm1lbnRzEiMuc2xpcHdheS52MS5MaXN0RW52aXJvbm1lbnRzUmVxdWVzdBokLnNsaXB3YXkudjEuTGlzdEVudmlyb25tZW50c1Jlc3BvbnNlEmAKEVVwZGF0ZUVudmlyb25tZW50EiQuc2xpcHdheS52MS5VcGRhdGVFbnZpcm9ubWVudFJlcXVlc3QaJS5zbGlwd2F5LnYxLlVwZGF0ZUVudmlyb25tZW50UmVzcG9uc2USYAoRRGVsZXRlRW52aXJvbm1lbnQSJC5zbGlwd2F5LnYxLkRlbGV0ZUVudmlyb25tZW50UmVxdWVzdBolLnNsaXB3YXkudjEuRGVsZXRlRW52aXJvbm1lbnRSZXNwb25zZRJmChNSZW9yZGVyRW52aXJvbm1lbnRzEiYuc2xpcHdheS52MS5SZW9yZGVyRW52aXJvbm1lbnRzUmVxdWVzdBonLnNsaXB3YXkudjEuUmVvcmRlckVudmlyb25tZW50c1Jlc3BvbnNlEmYKE0dldEVudmlyb25tZW50Qm9hcmQSJi5zbGlwd2F5LnYxLkdldEVudmlyb25tZW50Qm9hcmRSZXF1ZXN0Gicuc2xpcHdheS52MS5HZXRFbnZpcm9ubWVudEJvYXJkUmVzcG9uc2USaQoUQ3JlYXRlSW5mcmFzdHJ1Y3R1cmUSJy5zbGlwd2F5LnYxLkNyZWF0ZUluZnJhc3RydWN0dXJlUmVxdWVzdBooLnNsaXB3YXkudjEuQ3JlYXRlSW5mcmFzdHJ1Y3R1cmVSZXNwb25zZRJgChFHZXRJbmZyYXN0cnVjdHVyZRIkLnNsaXB3YXkudjEuR2V0SW5mcmFzdHJ1Y3R1cmVSZXF1ZXN0GiUuc2xpcHdheS52MS5HZXRJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEmYKE0xpc3RJbmZyYXN0cnVjdHVyZXMSJi5zbGlwd2F5LnYxLkxpc3RJbmZyYXN0cnVjdHVyZXNSZXF1ZXN0Gicuc2xpcHdheS52MS5MaXN0SW5mcmFzdHJ1Y3R1cmVzUmVzcG9uc2USaQoUVXBkYXRlSW5mcmFzdHJ1Y3R1cmUSJy5zbGlwd2F5LnYxLlVwZGF0ZUluZnJhc3RydWN0dXJlUmVxdWVzdBooLnNsaXB3YXkudjEuVXBkYXRlSW5mcmFzdHJ1Y3R1cmVSZXNwb25zZRJpChREZWxldGVJbmZyYXN0cnVjdHVyZRInLnNsaXB3YXkudjEuRGVsZXRlSW5mcmFzdHJ1Y3R1cmVSZXF1ZXN0Giguc2xpcHdheS52MS5EZWxldGVJbmZyYXN0cnVjdHVyZVJlc3BvbnNlEmMKElRlc3RJbmZyYXN0cnVjdHVyZRIlLnNsaXB3YXkudjEuVGVzdEluZnJhc3RydWN0dXJlUmVxdWVzdBomLnNsaXB3YXkudjEuVGVzdEluZnJhc3RydWN0dXJlUmVzcG9uc2USXQoQR2V0QXdzRXh0ZXJuYWxJZBIjLnNsaXB3YXkudjEuR2V0QXdzRXh0ZXJuYWxJZFJlcXVlc3QaJC5zbGlwd2F5LnYxLkdldEF3c0V4dGVybmFsSWRSZXNwb25zZRJXCg5DcmVhdGVWYXJpYWJsZRIhLnNsaXB3YXkudjEuQ3JlYXRlVmFyaWFibGVSZXF1ZXN0GiIuc2xpcHdheS52MS5DcmVhdGVWYXJpYWJsZVJlc3BvbnNlElQKDUxpc3RWYXJpYWJsZXMSIC5zbGlwd2F5LnYxLkxpc3RWYXJpYWJsZXNSZXF1ZXN0GiEuc2xpcHdheS52MS5MaXN0VmFyaWFibGVzUmVzcG9uc2USVwoOVXBkYXRlVmFyaWFibGUSIS5zbGlwd2F5LnYxLlVwZGF0ZVZhcmlhYmxlUmVxdWVzdBoiLnNsaXB3YXkudjEuVXBkYXRlVmFyaWFibGVSZXNwb25zZRJXCg5EZWxldGVWYXJpYWJsZRIhLnNsaXB3YXkudjEuRGVsZXRlVmFyaWFibGVSZXF1ZXN0GiIuc2xpcHdheS52MS5EZWxldGVWYXJpYWJsZVJlc3BvbnNlEl0KEFByZXZpZXdWYXJpYWJsZXMSIy5zbGlwd2F5LnYxLlByZXZpZXdWYXJpYWJsZXNSZXF1ZXN0GiQuc2xpcHdheS52MS5QcmV2aWV3VmFyaWFibGVzUmVzcG9uc2USUQoMQ3JlYXRlRnJlZXplEh8uc2xpcHdheS52MS5DcmVhdGVGcmVlemVSZXF1ZXN0GiAuc2xpcHdheS52MS5DcmVhdGVGcmVlemVSZXNwb25zZRJOCgtMaXN0RnJlZXplcxIeLnNsaXB3YXkudjEuTGlzdEZyZWV6ZXNSZXF1ZXN0Gh8uc2xpcHdheS52MS5MaXN0RnJlZXplc1Jlc3BvbnNlElEKDFVwZGF0ZUZyZWV6ZRIfLnNsaXB3YXkudjEuVXBkYXRlRnJlZXplUmVxdWVzdBogLnNsaXB3YXkudjEuVXBkYXRlRnJlZXplUmVzcG9uc2USUQoMRGVsZXRlRnJlZXplEh8uc2xpcHdheS52MS5EZWxldGVGcmVlemVSZXF1ZXN0GiAuc2xpcHdheS52MS5EZWxldGVGcmVlemVSZXNwb25zZRJgChFHZXRGcmVlemVDYWxlbmRhchIkLnNsaXB3YXkudjEuR2V0RnJlZXplQ2FsZW5kYXJSZXF1ZXN0GiUuc2xpcHdheS52MS5HZXRGcmVlemVDYWxlbmRhclJlc3BvbnNlEksKCkNoZWNrRHJpZnQSHS5zbGlwd2F5LnYxLkNoZWNrRHJpZnRSZXF1ZXN0Gh4uc2xpcHdheS52MS5DaGVja0RyaWZ0UmVzcG9uc2USXQoQTGlzdERyaWZ0UmVwb3J0cxIjLnNsaXB3YXkudjEuTGlzdERyaWZ0UmVwb3J0c1JlcXVlc3QaJC5zbGlwd2F5LnYxLkxpc3REcmlmdFJlcG9ydHNSZXNwb25zZTK/AwoPQXBwcm92YWxTZXJ2aWNlElQKDUxpc3RBcHByb3ZhbHMSIC5zbGlwd2F5LnYxLkxpc3RBcHByb3ZhbHNSZXF1ZXN0GiEuc2xpcHdheS52MS5MaXN0QXBwcm92YWxzUmVzcG9uc2USTgoLR2V0QXBwcm92YWwSHi5zbGlwd2F5LnYxLkdldEFwcHJvdmFsUmVxdWVzdBofLnNsaXB3YXkudjEuR2V0QXBwcm92YWxSZXNwb25zZRJXCg5EZWNpZGVBcHByb3ZhbBIhLnNsaXB3YXkudjEuRGVjaWRlQXBwcm92YWxSZXF1ZXN0GiIuc2xpcHdheS52MS5EZWNpZGVBcHByb3ZhbFJlc3BvbnNlElcKDkNhbmNlbEFwcHJvdmFsEiEuc2xpcHdheS52MS5DYW5jZWxBcHByb3ZhbFJlcXVlc3QaIi5zbGlwd2F5LnYxLkNhbmNlbEFwcHJvdmFsUmVzcG9uc2USVAoNRXZhbHVhdGVHYXRlcxIgLnNsaXB3YXkudjEuRXZhbHVhdGVHYXRlc1JlcXVlc3QaIS5zbGlwd2F5LnYxLkV2YWx1YXRlR2F0ZXNSZXNwb25zZTKQBgoOUnVuYm9va1NlcnZpY2USVAoNQ3JlYXRlUnVuYm9vaxIgLnNsaXB3YXkudjEuQ3JlYXRlUnVuYm9va1JlcXVlc3QaIS5zbGlwd2F5LnYxLkNyZWF0ZVJ1bmJvb2tSZXNwb25zZRJLCgpHZXRSdW5ib29rEh0uc2xpcHdheS52MS5HZXRSdW5ib29rUmVxdWVzdBoeLnNsaXB3YXkudjEuR2V0UnVuYm9va1Jlc3BvbnNlElEKDExpc3RSdW5ib29rcxIfLnNsaXB3YXkudjEuTGlzdFJ1bmJvb2tzUmVxdWVzdBogLnNsaXB3YXkudjEuTGlzdFJ1bmJvb2tzUmVzcG9uc2USVAoNVXBkYXRlUnVuYm9vaxIgLnNsaXB3YXkudjEuVXBkYXRlUnVuYm9va1JlcXVlc3QaIS5zbGlwd2F5LnYxLlVwZGF0ZVJ1bmJvb2tSZXNwb25zZRJUCg1EZWxldGVSdW5ib29rEiAuc2xpcHdheS52MS5EZWxldGVSdW5ib29rUmVxdWVzdBohLnNsaXB3YXkudjEuRGVsZXRlUnVuYm9va1Jlc3BvbnNlEksKClJ1blJ1bmJvb2sSHS5zbGlwd2F5LnYxLlJ1blJ1bmJvb2tSZXF1ZXN0Gh4uc2xpcHdheS52MS5SdW5SdW5ib29rUmVzcG9uc2USVAoNR2V0UnVuYm9va1J1bhIgLnNsaXB3YXkudjEuR2V0UnVuYm9va1J1blJlcXVlc3QaIS5zbGlwd2F5LnYxLkdldFJ1bmJvb2tSdW5SZXNwb25zZRJaCg9MaXN0UnVuYm9va1J1bnMSIi5zbGlwd2F5LnYxLkxpc3RSdW5ib29rUnVuc1JlcXVlc3QaIy5zbGlwd2F5LnYxLkxpc3RSdW5ib29rUnVuc1Jlc3BvbnNlEl0KEENhbmNlbFJ1bmJvb2tSdW4SIy5zbGlwd2F5LnYxLkNhbmNlbFJ1bmJvb2tSdW5SZXF1ZXN0GiQuc2xpcHdheS52MS5DYW5jZWxSdW5ib29rUnVuUmVzcG9uc2VCpgEKDmNvbS5zbGlwd2F5LnYxQgtEZXBsb3lQcm90b1ABWj5naXRodWIuY29tL3NsaXB3YXktc3lzdGVtcy9zbGlwd2F5LXNkay9nby9zbGlwd2F5L3YxO3NsaXB3YXl2MaICA1NYWKoCClNsaXB3YXkuVjHKAgpTbGlwd2F5XFYx4gIWU2xpcHdheVxWMVxHUEJNZXRhZGF0YeoCC1NsaXB3YXk6OlYxYgZwcm90bzM", [file_google_protobuf_duration, file_google_protobuf_field_mask, file_google_protobuf_struct, file_google_protobuf_timestamp, file_slipway_v1_common]);
11
11
  /**
12
12
  * Describes the message slipway.v1.Approver.
13
13
  * Use `create(ApproverSchema)` to create a new message.
@@ -425,6 +425,13 @@ export type WhoAmIResponse = Message<"slipway.v1.WhoAmIResponse"> & {
425
425
  * @generated from field: bool org_requires_mfa = 8;
426
426
  */
427
427
  orgRequiresMfa: boolean;
428
+ /**
429
+ * The current org requires a second factor this session has not verified: every RPC except the enrolment ones is
430
+ * refused until the caller sets one up (or, when one is already enrolled, signs in again with it).
431
+ *
432
+ * @generated from field: bool mfa_setup_required = 9;
433
+ */
434
+ mfaSetupRequired: boolean;
428
435
  };
429
436
  /**
430
437
  * Describes the message slipway.v1.WhoAmIResponse.
@@ -1152,6 +1159,17 @@ export type ListAuthProvidersResponse = Message<"slipway.v1.ListAuthProvidersRes
1152
1159
  * @generated from field: bool webauthn_enabled = 4;
1153
1160
  */
1154
1161
  webauthnEnabled: boolean;
1162
+ /**
1163
+ * The operator's terms of service and privacy policy (SLIPWAY_TERMS_URL, SLIPWAY_PRIVACY_URL). Sign-up links them
1164
+ * where it asks for consent; empty when the installation publishes none, and then no consent is asked.
1165
+ *
1166
+ * @generated from field: string terms_url = 5;
1167
+ */
1168
+ termsUrl: string;
1169
+ /**
1170
+ * @generated from field: string privacy_url = 6;
1171
+ */
1172
+ privacyUrl: string;
1155
1173
  };
1156
1174
  /**
1157
1175
  * Describes the message slipway.v1.ListAuthProvidersResponse.
@@ -1871,6 +1889,8 @@ export type GetInvitationResponse = Message<"slipway.v1.GetInvitationResponse">
1871
1889
  */
1872
1890
  email: string;
1873
1891
  /**
1892
+ * role ID ("developer", "role_…")
1893
+ *
1874
1894
  * @generated from field: string role = 4;
1875
1895
  */
1876
1896
  role: string;
@@ -1878,6 +1898,12 @@ export type GetInvitationResponse = Message<"slipway.v1.GetInvitationResponse">
1878
1898
  * @generated from field: bool user_exists = 5;
1879
1899
  */
1880
1900
  userExists: boolean;
1901
+ /**
1902
+ * the role's display name ("Developer")
1903
+ *
1904
+ * @generated from field: string role_name = 6;
1905
+ */
1906
+ roleName: string;
1881
1907
  };
1882
1908
  /**
1883
1909
  * Describes the message slipway.v1.GetInvitationResponse.