@alphauspkgs/blue-sdk-ts 1.0.51 → 1.0.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/gc/v1/gc_pb.ts CHANGED
@@ -15,7 +15,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
15
15
  * Describes the file gc/v1/gc.proto.
16
16
  */
17
17
  export const file_gc_v1_gc: GenFile = /*@__PURE__*/
18
- fileDesc("Cg5nYy92MS9nYy5wcm90bxINYmx1ZWFwaS5nYy52MSIeChxHZXRUZXJtc0NvbnNlbnRTdGF0dXNSZXF1ZXN0IjEKF0dldFRlcm1zRG9jdW1lbnRSZXF1ZXN0EhYKCGxhbmd1YWdlGAEgASgJQgTiQQECIi0KEkFjY2VwdFRlcm1zUmVxdWVzdBIXCgl2ZXJzaW9uSWQYASABKAlCBOJBAQIiEQoPTGlzdE9yZ3NSZXF1ZXN0IiwKGkNvbW1pdG1lbnRQbGFuQXBwbHlSZXF1ZXN0Eg4KBnBsYW5JZBgBIAEoCSIYChZMaXN0Q29tbWl0bWVudHNSZXF1ZXN0ImcKGkdldENvbW1pdG1lbnRzQ2hhcnRSZXF1ZXN0EhQKDGNvbW1pdG1lbnRJZBgBIAEoCRIPCgdncm91cEJ5GAIgASgJEhEKCXN0YXJ0RGF0ZRgDIAEoCRIPCgdlbmREYXRlGAQgASgJIjgKIEdldENvbW1pdG1lbnRzVXRpbGl6YXRpb25SZXF1ZXN0EhQKDGNvbW1pdG1lbnRJZBgBIAEoCSIeChxSZWFkQ29tbWl0bWVudFJlcG9ydHNSZXF1ZXN0IjoKI1JlYWRDb21taXRtZW50UmVwb3J0QWNjb3VudHNSZXF1ZXN0EhMKBW1vbnRoGAEgASgJQgTiQQECIj4KEUdldE1ldHJpY3NSZXF1ZXN0EikKCHByb3ZpZGVyGAEgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlciKjAQoUTGlzdFJlc291cmNlc1JlcXVlc3QSKQoIcHJvdmlkZXIYASABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEhEKCXNlZ21lbnRJZBgCIAEoCRIOCgZzZWFyY2gYAyABKAkSDAoEZGVzYxgEIAEoCBIPCgdvcmRlckJ5GAUgASgJEgwKBHBhZ2UYBiABKAUSEAoIcGFnZVNpemUYByABKAUijAEKHEdldFJlc291cmNlRGFpbHlVc2FnZVJlcXVlc3QSEgoKcmVzb3VyY2VJZBgBIAEoCRIRCglzdGFydERhdGUYAiABKAkSDwoHZW5kRGF0ZRgDIAEoCRIUCgxjYXRhbG9nU2t1SWQYBCABKAkSDAoEcGFnZRgFIAEoBRIQCghwYWdlU2l6ZRgGIAEoBSIzCh5MaXN0UmVzZXJ2YWJsZVJlc291cmNlc1JlcXVlc3QSEQoJY29tcGFueUlkGAEgASgJIiMKIUxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdCIwCh5HZXRQdXJjaGFzZVBsYW5zRGV0YWlsc1JlcXVlc3QSDgoGcGxhbklkGAEgASgJIikKJ0dldFVwZGF0ZWRQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdCImCgdPcmdVc2VyEg0KBWVtYWlsGAEgASgJEgwKBHJvbGUYAiABKAkiLAoKTWVtYmVyc2hpcBIMCgRyb2xlGAEgASgJEhAKCHVzZXJuYW1lGAIgASgJImIKB0FkZHJlc3MSDQoFbGluZTEYASABKAkSDAoEY2l0eRgCIAEoCRINCgVzdGF0ZRgDIAEoCRILCgN6aXAYBCABKAkSDwoHY291bnRyeRgFIAEoCRINCgVsaW5lMhgGIAEoCSJUCg5Bd3NFeGlzdGluZ0N1chIOCgZyZWdpb24YASABKAkSDgoGYnVja2V0GAIgASgJEg4KBnByZWZpeBgDIAEoCRISCgpyZXBvcnROYW1lGAQgASgJIksKD1Rlcm1zQWNjZXB0YW5jZRIQCghhY2NlcHRlZBgBIAEoCBISCgphY2NlcHRlZEF0GAIgASgJEhIKCmFjY2VwdGVkQnkYAyABKAkiiwIKElJlZ2lzdGVyT3JnUmVxdWVzdBIMCgRuYW1lGAEgASgJEhsKE2xhYnJhU3Vic2NyaXB0aW9uSWQYAiABKAkSJQoFdXNlcnMYAyADKAsyFi5ibHVlYXBpLmdjLnYxLk9yZ1VzZXISDgoGZG9tYWluGAQgASgJEi4KDnByaW1hcnlBZGRyZXNzGAUgASgLMhYuYmx1ZWFwaS5nYy52MS5BZGRyZXNzEh8KF2F3c01hcmtldHBsYWNlT2ZmZXJMaW5rGAYgASgJEiEKGWF6dXJlTWFya2V0cGxhY2VPZmZlckxpbmsYByABKAkSHwoXZ2NwTWFya2V0cGxhY2VPZmZlckxpbmsYCCABKAkiiQEKGVN0YXJ0QXdzT25ib2FyZGluZ1JlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkSFgoOcGF5ZXJBY2NvdW50SWQYBCABKAkSGAoQcGF5ZXJBY2NvdW50TmFtZRgFIAEoCSKTAQojR2V0QXdzQ2xvdWRGb3JtYXRpb25UZW1wbGF0ZVJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkSFgoOcGF5ZXJBY2NvdW50SWQYBCABKAkSGAoQcGF5ZXJBY2NvdW50TmFtZRgFIAEoCSKLAQobR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIPCgdnY09yZ0lkGAMgASgJEhYKDnBheWVyQWNjb3VudElkGAQgASgJEhgKEHBheWVyQWNjb3VudE5hbWUYBSABKAkitQEKGlZlcmlmeUF3c09uYm9hcmRpbmdSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIPCgdnY09yZ0lkGAMgASgJEhQKDG9uYm9hcmRpbmdJZBgEIAEoCRIRCglhY2NvdW50SWQYBSABKAkSMgoLZXhpc3RpbmdDdXIYBiABKAsyHS5ibHVlYXBpLmdjLnYxLkF3c0V4aXN0aW5nQ3VyIl8KGkdldE9uYm9hcmRpbmdTdGF0dXNSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIWCg5wYXllckFjY291bnRJZBgDIAEoCSIaChhMaXN0UGF5ZXJBY2NvdW50c1JlcXVlc3QiQwodU2V0UGF5ZXJBY2NvdW50RW5hYmxlZFJlcXVlc3QSEQoJY29tcGFueUlkGAEgASgJEg8KB2VuYWJsZWQYAiABKAgiHgocR2V0UGF5ZXJBY2NvdW50U3RhdHVzUmVxdWVzdCIaChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QiVgocU2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVxdWVzdBIRCgljb21wYW55SWQYASABKAkSDwoHZW5hYmxlZBgCIAEoCBISCgpuZXdWZXJzaW9uGAMgASgIIh4KHEdldEJpbGxpbmdHcm91cFN0YXR1c1JlcXVlc3QiRAobVmFsaWRhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0EhEKCWNvbXBhbnlJZBgBIAEoCRISCgpuZXdWZXJzaW9uGAIgASgIIkUKGUdldEF3c1ByaXZhdGVPZmZlclJlcXVlc3QSFgoOcGF5ZXJBY2NvdW50SWQYASABKAkSEAoIcmVjcmVhdGUYAiABKAgiIAoeQWNjZXB0QmlsbGluZ0dyb3VwVGVybXNSZXF1ZXN0IsIHCiFTYXZlQ29tbWl0bWVudHNQbGFuQXNEcmFmdFJlcXVlc3QSDgoGcGxhbklkGAEgASgJEhYKDnJlc2VydmF0aW9uSWRzGAIgAygJEhMKC3Jlc291cmNlSWRzGAMgAygJEhYKDm1heFVwZnJvbnRDb3N0GAQgASgBEikKCHByb3ZpZGVyGAUgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIPCgdlbmREYXRlGAYgASgJEhEKCXN0YXJ0RGF0ZRgHIAEoCRIRCglzZWdtZW50SWQYCCABKAkSDgoGc3RhdHVzGAkgASgJEhMKC2Rlc2NyaXB0aW9uGAogASgJEgwKBG5hbWUYCyABKAkSHgoWcHJlZmVycmVkUGF5bWVudE9wdGlvbhgMIAEoCRIdChVpbmNsdWRlZENvbnRyYWN0VGVybXMYDSADKAkSOgoVaW5jbHVkZWRDb250cmFjdFNwZWNzGA4gAygLMhsuYmx1ZWFwaS5nYy52MS5Db250cmFjdFNwZWMSKgoKY292ZXJhZ2VJZBgPIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIRCgljcmVhdGVkQXQYECABKAkSKQoJY3JlYXRlZEJ5GBEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhIKCmRhdGFTb3VyY2UYEiABKAkSLwoPZXhlY3V0aW9uUG9saWN5GBMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhYKDmZsYWdnZWRBY3Rpb25zGBQgAygJEgoKAmlkGBUgASgJEhUKDWlzQ2FsY3VsYXRpbmcYFiABKAgSEQoJaXNEZWZhdWx0GBcgASgIEhAKCGlzTG9ja2VkGBggASgIEhUKDWlzUmVjb21tZW5kZWQYGSABKAgSEQoJaXNSZW5ld2FsGBogASgIEg8KB2lzU2F2ZWQYGyABKAgSFAoMbGFzdE1vZGlmaWVkGBwgASgJEhIKCm1ldGFQbGFuSWQYHSABKAkSOgoabWluaW11bVVwZnJvbnRJbnRlcmVzdFJhdGUYHiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSDQoFb3JnSWQYHyABKAkSEAoIcGxhblR5cGUYICABKAkSPgoecmVjb21tZW5kV2l0aGluQ292ZXJlZEFjY291bnRzGCEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEicKB3NlZ21lbnQYIiABKAsyFi5ibHVlYXBpLmdjLnYxLlNlZ21lbnQiQwodTGlzdERyYWZ0UHVyY2hhc2VQbGFuc1JlcXVlc3QSDwoHaXNEcmFmdBgBIAEoCBIRCgljb21wYW55SWQYAiABKAkiSAoeRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW5SZXF1ZXN0EhMKC2RyYWZ0UGxhbklkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCSI2CiJHZXRBdmFpbGFibGVDb21taXRtZW50VHlwZXNSZXF1ZXN0EhAKCHByb3ZpZGVyGAEgASgJIqMCCiFDcmVhdGVDdXN0b21Db21taXRtZW50UGxhblJlcXVlc3QSEAoIcHJvdmlkZXIYASABKAkSEQoJc3RhcnREYXRlGAIgASgJEg8KB2VuZERhdGUYAyABKAkSEQoJY29tcGFueUlkGAQgASgJEg4KBnN0YXR1cxgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIMCgRuYW1lGAcgASgJEjoKFWluY2x1ZGVkQ29udHJhY3RTcGVjcxgIIAMoCzIbLmJsdWVhcGkuZ2MudjEuQ29udHJhY3RTcGVjEh0KFWluY2x1ZGVkQ29udHJhY3RUZXJtcxgJIAMoCRITCgtyZXNvdXJjZUlkcxgKIAMoCRISCgpjb21wYW55SWRzGAsgAygJIj8KKUdldEd1YXJhbnRlZWRDb21taXRtZW50VGVtcGxhdGVVcmxSZXF1ZXN0EhIKCmV4dGVybmFsSWQYASABKAkiTQonQ3JlYXRlR3VhcmFudGVlZENvbW1pdG1lbnRBY2Nlc3NSZXF1ZXN0Eg4KBnRhcmdldBgBIAEoCRISCgpleHRlcm5hbElkGAIgASgJIoMBChtTdGFydEF6dXJlT25ib2FyZGluZ1JlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkSEAoIdGVuYW50SWQYBCABKAkSFgoOc3Vic2NyaXB0aW9uSWQYBSABKAki0gUKHFVwZGF0ZUF6dXJlT25ib2FyZGluZ1JlcXVlc3QSFAoMb25ib2FyZGluZ0lkGAEgASgJEg8KB2djT3JnSWQYAiABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAyABKAkSEQoJY29tcGFueUlkGAQgASgJEhAKCHRlbmFudElkGAUgASgJEhYKDnN1YnNjcmlwdGlvbklkGAYgASgJEhMKC2FjY291bnRLaW5kGAcgASgJEhIKCmFjY291bnRJZHMYCCADKAkSFQoNYmxvYkNvbnRhaW5lchgJIAEoCRIVCg1yZXNvdXJjZUdyb3VwGAogASgJEhYKDnN0b3JhZ2VBY2NvdW50GAsgASgJEhAKCHJvbGVOYW1lGAwgASgJEjMKE3Jlc291cmNlR3JvdXBSZWdpb24YDSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNAoUc3RvcmFnZUFjY291bnRSZWdpb24YDiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMQoRcmVzb3VyY2VHcm91cFRhZ3MYDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMgoSc3RvcmFnZUFjY291bnRUYWdzGBAgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCWNvbXBsZXRlZBgRIAEoCBIRCgljcmVhdGVkQXQYEiABKAkSOgoJY3JlYXRlZEJ5GBMgASgLMicuYmx1ZWFwaS5nYy52MS5BenVyZU9uYm9hcmRpbmdDcmVhdGVkQnkSKwoLaW50ZWdyYXRpb24YFCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSFQoNaW50ZWdyYXRpb25JZBgVIAEoCRIQCghwcm92aWRlchgWIAEoCRIrCgNvcmcYFyABKAsyHi5ibHVlYXBpLmdjLnYxLkF6dXJlQXJjaGVyYU9yZyJzCiBHZXRBenVyZU9uYm9hcmRpbmdBdXRoVXJsUmVxdWVzdBIUCgxvbmJvYXJkaW5nSWQYASABKAkSDwoHZ2NPcmdJZBgCIAEoCRIQCgh0ZW5hbnRJZBgDIAEoCRIWCg5zdWJzY3JpcHRpb25JZBgEIAEoCSK3BQoeVmFsaWRhdGVBenVyZUFwcEluc3RhbGxSZXF1ZXN0EhQKDG9uYm9hcmRpbmdJZBgBIAEoCRIPCgdnY09yZ0lkGAIgASgJEgwKBHR5cGUYAyABKAkSEAoIdGVuYW50SWQYBCABKAkSFgoOc3Vic2NyaXB0aW9uSWQYBSABKAkSEwoLYWNjb3VudEtpbmQYBiABKAkSEgoKYWNjb3VudElkcxgHIAMoCRIVCg1ibG9iQ29udGFpbmVyGAggASgJEhUKDXJlc291cmNlR3JvdXAYCSABKAkSFgoOc3RvcmFnZUFjY291bnQYCiABKAkSEAoIcm9sZU5hbWUYCyABKAkSMwoTcmVzb3VyY2VHcm91cFJlZ2lvbhgMIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRI0ChRzdG9yYWdlQWNjb3VudFJlZ2lvbhgNIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIxChFyZXNvdXJjZUdyb3VwVGFncxgOIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIyChJzdG9yYWdlQWNjb3VudFRhZ3MYDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJY29tcGxldGVkGBAgASgIEhEKCWNyZWF0ZWRBdBgRIAEoCRI6CgljcmVhdGVkQnkYEiABKAsyJy5ibHVlYXBpLmdjLnYxLkF6dXJlT25ib2FyZGluZ0NyZWF0ZWRCeRIrCgtpbnRlZ3JhdGlvbhgTIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIVCg1pbnRlZ3JhdGlvbklkGBQgASgJEhAKCHByb3ZpZGVyGBUgASgJEisKA29yZxgWIAEoCzIeLmJsdWVhcGkuZ2MudjEuQXp1cmVBcmNoZXJhT3JnIksKIkxpc3RBenVyZU9uYm9hcmRpbmdBY2NvdW50c1JlcXVlc3QSFAoMb25ib2FyZGluZ0lkGAEgASgJEg8KB2djT3JnSWQYAiABKAkilAQKHUNyZWF0ZUF6dXJlSW50ZWdyYXRpb25SZXF1ZXN0Eg8KB2djT3JnSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSEQoJY29tcGFueUlkGAMgASgJEhYKDnBheWVyQWNjb3VudElkGAQgASgJEgwKBHR5cGUYBSABKAkSEAoIdGVuYW50SWQYBiABKAkSFgoOc3Vic2NyaXB0aW9uSWQYByABKAkSFAoMb25ib2FyZGluZ0lkGAggASgJEhMKC2FjY291bnRLaW5kGAkgASgJEhIKCmFjY291bnRJZHMYCiADKAkSFQoNYmxvYkNvbnRhaW5lchgLIAEoCRIVCg1yZXNvdXJjZUdyb3VwGAwgASgJEhYKDnN0b3JhZ2VBY2NvdW50GA0gASgJEhAKCHJvbGVOYW1lGA4gASgJEjMKE3Jlc291cmNlR3JvdXBSZWdpb24YDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNAoUc3RvcmFnZUFjY291bnRSZWdpb24YECABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMQoRcmVzb3VyY2VHcm91cFRhZ3MYESABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMgoSc3RvcmFnZUFjY291bnRUYWdzGBIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlIi8KHExpc3RBenVyZUludGVncmF0aW9uc1JlcXVlc3QSDwoHZ2NPcmdJZBgBIAEoCSJ3ChVUZXJtc09mU2VydmljZVZlcnNpb24SCgoCaWQYASABKAkSDwoHcHJvZHVjdBgCIAEoCRIUCgx2ZXJzaW9uTGFiZWwYAyABKAkSFgoOY2xhc3NpZmljYXRpb24YBCABKAkSEwoLcHVibGlzaGVkQXQYBSABKAki6QEKHUdldFRlcm1zQ29uc2VudFN0YXR1c1Jlc3BvbnNlEi8KBXN0YXRlGAEgASgOMiAuYmx1ZWFwaS5nYy52MS5UZXJtc0NvbnNlbnRTdGF0ZRIVCg1hY2Nlc3NBbGxvd2VkGAIgASgIEhAKCGJsb2NraW5nGAMgASgIEhgKEHNob3dVcGRhdGVCYW5uZXIYBCABKAgSFwoPYmFubmVyRXhwaXJlc0F0GAUgASgJEjsKDWFjdGl2ZVZlcnNpb24YBiABKAsyJC5ibHVlYXBpLmdjLnYxLlRlcm1zT2ZTZXJ2aWNlVmVyc2lvbiKFAQoYR2V0VGVybXNEb2N1bWVudFJlc3BvbnNlEhEKCXZlcnNpb25JZBgBIAEoCRIPCgdwcm9kdWN0GAIgASgJEhAKCGxhbmd1YWdlGAMgASgJEhMKC2NvbnRlbnRUeXBlGAQgASgJEgsKA3VybBgFIAEoCRIRCglleHBpcmVzQXQYBiABKAkiaAoSVGVybXNDb25zZW50UmVjb3JkEg8KB3Byb2R1Y3QYASABKAkSGQoRYWNjZXB0ZWRWZXJzaW9uSWQYAiABKAkSEgoKYWNjZXB0ZWRCeRgDIAEoCRISCgphY2NlcHRlZEF0GAQgASgJIo4BChNBY2NlcHRUZXJtc1Jlc3BvbnNlEjIKB2NvbnNlbnQYASABKAsyIS5ibHVlYXBpLmdjLnYxLlRlcm1zQ29uc2VudFJlY29yZBJDCg1jb25zZW50U3RhdHVzGAIgASgLMiwuYmx1ZWFwaS5nYy52MS5HZXRUZXJtc0NvbnNlbnRTdGF0dXNSZXNwb25zZSIxCgNPcmcSDQoFb3JnSWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgVlbWFpbBgDIAEoCSLzBAoVQ29tbWl0bWVudFBsYW5EZXRhaWxzEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDQoFb3JnSWQYBCABKAkSEQoJY3JlYXRlZEF0GAUgASgJEhUKDWlzQ2FsY3VsYXRpbmcYBiABKAgSDgoGc3RhdHVzGAcgASgJEg8KB21heFRlcm0YCCABKAkSIQoZY292ZXJlZE9uZGVtYW5kQ29zdEhvdXJseRgJIAEoARIgChhiZWZvcmVPbmRlbWFuZENvc3RIb3VybHkYCiABKAESIAoYYmVmb3JlUmVzZXJ2ZWRDb3N0SG91cmx5GAsgASgBEhsKE2Ftb3J0aXplZENvc3RIb3VybHkYDCABKAESGwoTcmVjdXJyaW5nQ29zdEhvdXJseRgNIAEoARIZChF1cGZyb250Q29zdEhvdXJseRgOIAEoARIYChBiZWZvcmVDb3N0SG91cmx5GA8gASgBEhcKD2FmdGVyQ29zdEhvdXJseRgQIAEoARIXCg90b3RhbENvc3RIb3VybHkYESABKAESFQoNc2F2aW5nc0hvdXJseRgSIAEoARIRCglmZWVIb3VybHkYEyABKAESGgoSY29tbWl0bWVudENvdmVyYWdlGBQgASgBEh0KFW1pbmltdW1Db21taXRtZW50Q29zdBgVIAEoARIWCg5icmVha2V2ZW5Ib3VycxgWIAEoARIUCgx0b3RhbFNhdmluZ3MYFyABKAESFgoObW9udGhseVNhdmluZ3MYGCABKAESHgoWdG90YWxNb250aGx5QmVmb3JlQ29zdBgZIAEoASK0BgoWQ29tbWl0bWVudFBsYW5MaW5lSXRlbRIKCgJpZBgBIAEoCRIOCgZwbGFuSWQYAiABKAkSDwoHb2ZmZXJJZBgDIAEoCRIXCg9sZWFzZU1lbnVJdGVtSWQYBCABKAkSEQoJYWNjb3VudElkGAUgASgJEhsKE3JlY29tbWVuZGVkUXVhbnRpdHkYBiABKAESGAoQc2VsZWN0ZWRRdWFudGl0eRgHIAEoARIdChVyZWNvbW1lbmRlZENvbW1pdG1lbnQYCCABKAESGgoSc2VsZWN0ZWRDb21taXRtZW50GAkgASgBEhIKCmlzU2VsZWN0ZWQYCiABKAgSGgoSYWZ0ZXJBbW9ydGl6ZWRDb3N0GAsgASgBEhMKC3VwZnJvbnRDb3N0GAwgASgBEhUKDXJlY3VycmluZ0Nvc3QYDSABKAESEgoKYmVmb3JlQ29zdBgOIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYDyABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GBAgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYESABKAESGQoRYWZ0ZXJDb3ZlcmVkVW5pdHMYEiABKAESEQoJdG90YWxDb3N0GBMgASgBEhMKC21vbnRobHlDb3N0GBQgASgBEg8KB3NhdmluZ3MYFSABKAESFgoObW9udGhseVNhdmluZ3MYFiABKAESFAoMdG90YWxTYXZpbmdzGBcgASgBEgsKA2ZlZRgYIAEoARIUCgxkaXNjb3VudFJhdGUYGSABKAESFgoOYnJlYWtldmVuSG91cnMYGiABKAESFAoMY29udHJhY3RUZXJtGBsgASgJEhUKDXBheW1lbnRPcHRpb24YHCABKAkSLQoMY29udHJhY3RTcGVjGB0gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgVvZmZlchgeIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSHAoUcmVuZXdhbFJlc2VydmF0aW9uSWQYHyABKAkSFAoMY292ZXJlZFVuaXRzGCAgASgBEhUKDWFtb3J0aXplZENvc3QYISABKAEi1wUKG0NvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaBIKCgJpZBgBIAEoCRISCgp0b3RhbFVuaXRzGAIgASgBEhwKFGJlZm9yZVVuY292ZXJlZFVuaXRzGAMgASgBEhkKEWFmdGVyQ292ZXJlZFVuaXRzGAQgASgBEhsKE2FmdGVyVW5jb3ZlcmVkVW5pdHMYBSABKAESFQoNb25kZW1hbmRQcmljZRgGIAEoARIZChFpZkFsbE9uZGVtYW5kQ29zdBgHIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYCCABKAESGQoRYWZ0ZXJPbmRlbWFuZENvc3QYCSABKAESGwoTY292ZXJlZE9uZGVtYW5kQ29zdBgKIAEoARIaChJiZWZvcmVSZXNlcnZlZENvc3QYCyABKAESGQoRYWZ0ZXJSZXNlcnZlZENvc3QYDCABKAESEgoKYmVmb3JlQ29zdBgNIAEoARIRCglhZnRlckNvc3QYDiABKAESGQoRbW9udGhseUJlZm9yZUNvc3QYDyABKAESGAoQbW9udGhseUFmdGVyQ29zdBgQIAEoARIgChhtb250aGx5QWZ0ZXJSZXNlcnZlZENvc3QYESABKAESIAoYbW9udGhseUFmdGVyT25kZW1hbmRDb3N0GBIgASgBEhYKDmF2ZXJhZ2VTYXZpbmdzGBMgASgBEh0KFWF2ZXJhZ2VNb250aGx5U2F2aW5ncxgUIAEoARIRCgl1c2FnZVR5cGUYFSABKAkSEAoIY292ZXJhZ2UYFiABKAESKQoIcmVzb3VyY2UYFyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhQKDGNvdmVyZWRVbml0cxgYIAEoARIcChRleHBsYW5hdGlvblVubWF0Y2hlZBgZIAEoARIUCgxvbmRlbWFuZENvc3QYGiABKAESFAoMcmVzZXJ2ZWRDb3N0GBsgASgBIu4BCgVMZWFzZRIKCgJpZBgBIAEoCRINCgVvcmdJZBgCIAEoCRIdChVwcm92aWRlclJlc2VydmF0aW9uSWQYAyABKAkSEQoJYWNjb3VudElkGAQgASgJEg4KBnN0YXR1cxgFIAEoCRIRCglzdGFydERhdGUYBiABKAkSDwoHZW5kRGF0ZRgHIAEoCRISCgpsb2NraW5EYXRlGAggASgJEhMKC3VwZnJvbnRDb3N0GAkgASgBEhUKDXJlY3VycmluZ0Nvc3QYCiABKAESEQoJY3JlYXRlZEF0GAsgASgJEhEKCXVwZGF0ZWRBdBgMIAEoCSJJChBEYWlseVV0aWxpemF0aW9uEgwKBGRhdGUYASABKAkSEwoLdXRpbGl6YXRpb24YAiABKAESEgoKbmV0U2F2aW5ncxgDIAEoASLQBwoKQ29tbWl0bWVudBIKCgJpZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSFQoNYW1vcnRpemVkQ29zdBgDIAEoARIYChBiaWxsaW5nQWNjb3VudElkGAQgASgJEhEKCWNhblJlYmF0ZRgFIAEoCBIUCgxjb250cmFjdFRlcm0YBiABKAkSEwoLZGlzcGxheU5hbWUYByABKAkSFwoPZHVyYXRpb25TZWNvbmRzGAggASgBEh4KFmVmZmVjdGl2ZUluc3RhbmNlQ291bnQYCSABKAMSDwoHZW5kRGF0ZRgKIAEoCRIVCg1pbnN0YW5jZUNvdW50GAsgASgDEhYKDmluc3RhbmNlRmFtaWx5GAwgASgJEhQKDGluc3RhbmNlVHlwZRgNIAEoCRIQCghpc0FjdGl2ZRgOIAEoCBISCgppc0ZsZXhpYmxlGA8gASgIEhAKCGlzTGVhc2VkGBAgASgIEhEKCWlzTXVsdGlBehgRIAEoCBIXCg9sZWFzZUxvY2tpbkRhdGUYEiABKAkSEgoKbGVhc2VTdGFydBgTIAEoCRIZChFsZWFzZWREaXNwbGF5TmFtZRgUIAEoCRITCgttb250aGx5Q29zdBgVIAEoARIWCg5tb250aGx5U2F2aW5ncxgWIAEoARIMCgRuYW1lGBcgASgJEhIKCm5ldFNhdmluZ3MYGCABKAESEgoKb2ZmZXJpbmdJZBgZIAEoCRIVCg1wYXltZW50T3B0aW9uGBogASgJEhgKEHBvdGVudGlhbFNhdmluZ3MYGyABKAESGgoScHJvZHVjdERlc2NyaXB0aW9uGBwgASgJEhAKCHByb3ZpZGVyGB0gASgJEh4KFnByb3ZpZGVyUmVzZXJ2YXRpb25faWQYHiABKAkSFQoNcmVjdXJyaW5nQ29zdBgfIAEoARIOCgZyZWdpb24YICABKAkSEwoLcmVuZXdhbFBsYW4YISABKAkSFgoOcmVzZXJ2YXRpb25FbmQYIiABKAkSGAoQcmVzZXJ2YXRpb25TdGFydBgjIAEoCRIUCgxydW5uaW5nSG91cnMYJCABKAESDwoHc2F2aW5ncxglIAEoARIRCglzdGFydERhdGUYJiABKAkSDgoGc3RhdHVzGCcgASgJEh4KFnRyYW5zZmVyUmVzZXJ2YXRpb25FbmQYKCABKAkSIAoYdHJhbnNmZXJSZXNlcnZhdGlvblN0YXJ0GCkgASgJEgwKBHR5cGUYKiABKAkSEwoLdXBmcm9udENvc3QYKyABKAESEwoLdXRpbGl6YXRpb24YLCABKAEiSQoXTGlzdENvbW1pdG1lbnRzUmVzcG9uc2USLgoLY29tbWl0bWVudHMYASADKAsyGS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnQiSgoUQ29tbWl0bWVudHNDaGFydERhdGESDAoEZGF0ZRgBIAEoCRIQCghjaGFydEtleRgCIAEoCRISCgpjaGFydFZhbHVlGAMgASgBIk0KGENvbW1pdG1lbnRzQ2hhcnRSZXNwb25zZRIxCgRkYXRhGAEgAygLMiMuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50c0NoYXJ0RGF0YSL8AQoaQ29tbWl0bWVudHNVdGlsaXphdGlvbkRhdGESFwoPdXRpbGl6YXRpb25EYXRlGAEgASgJEgwKBGNvc3QYAiABKAESEwoLY292ZXJlZENvc3QYAyABKAESDwoHZ3JpRmVlcxgEIAEoARISCgpuZXRTYXZpbmdzGAUgASgBEhgKEHBvdGVudGlhbFNhdmluZ3MYBiABKAESHgoWcmVzZXJ2YXRpb25VdGlsaXphdGlvbhgHIAEoARIUCgxydW5uaW5nSG91cnMYCCABKAESDwoHc2F2aW5ncxgJIAEoARIcChR1bnV0aWxpemVkQ29tbWl0bWVudBgKIAEoASJZCh5Db21taXRtZW50c1V0aWxpemF0aW9uUmVzcG9uc2USNwoEZGF0YRgBIAMoCzIpLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudHNVdGlsaXphdGlvbkRhdGEi0AEKEENvbW1pdG1lbnRSZXBvcnQSDQoFbW9udGgYASABKAkSFgoOYmlsbFVuYWRqdXN0ZWQYAiABKAESFQoNYmlsbE9wdGltaXplZBgDIAEoARIUCgxncm9zc1NhdmluZ3MYBCABKAESEwoLcmlza1ByZW1pdW0YBSABKAESDwoHcmViYXRlcxgGIAEoARISCgpuZXRTYXZpbmdzGAcgASgBEhQKDHJldmVudWVTaGFyZRgIIAEoARIYChByZXZlbnVlU2hhcmVSYXRlGAkgASgBIugBChdDb21taXRtZW50UmVwb3J0QWNjb3VudBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhEKCWFjY291bnRJZBgDIAEoCRITCgthY2NvdW50TmFtZRgEIAEoCRINCgVjbG91ZBgFIAEoCRIUCgxncm9zc1NhdmluZ3MYBiABKAESEwoLcmlza1ByZW1pdW0YByABKAESDwoHcmViYXRlcxgIIAEoARISCgpuZXRTYXZpbmdzGAkgASgBEhQKDHJldmVudWVTaGFyZRgKIAEoASLNAwoPTWV0cmljc1Jlc3BvbnNlEhcKD2xpZmV0aW1lU2F2aW5ncxgBIAEoARISCgptdGRTYXZpbmdzGAIgASgBEiEKGXB1cmNoYXNlQXV0b21hdGlvbkVuYWJsZWQYAyABKAgSIAoYYnV5YmFja0F1dG9tYXRpb25FbmFibGVkGAQgASgIEhcKD2hhc0FjdGlvbmVkUGxhbhgFIAEoCBIZChFoYXNQZW5kaW5nQWN0aW9ucxgGIAEoCBIbChNsYXRlc3RFeGVjdXRpb25EYXRlGAcgASgJEh0KFXB1cmNoYXNlTWlzc2VkU2F2aW5ncxgIIAEoARIcChRidXliYWNrTWlzc2VkU2F2aW5ncxgJIAEoARIfChd0b3RhbERhaWx5TWlzc2VkU2F2aW5ncxgKIAEoARIbChNob3VybHlNaXNzZWRTYXZpbmdzGAsgASgBEh4KFm1pc3NlZFNhdmluZ3NTdGFydERhdGUYDCABKAkSHAoUbWlzc2VkU2F2aW5nc0VuZERhdGUYDSABKAkSFwoPZXhwaXJpbmdTYXZpbmdzGA4gASgBEhAKCGNvdmVyYWdlGA8gASgBEhMKC3V0aWxpemF0aW9uGBAgASgBIogICghSZXNvdXJjZRIKCgJpZBgBIAEoCRISCgpyZXNvdXJjZUlkGAIgASgJEikKCHByb3ZpZGVyGAMgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIaChJwcm92aWRlclJlc291cmNlSWQYBCABKAkSDgoGaXNTcG90GAUgASgIEgwKBG5hbWUYBiABKAkSFQoNcmVzb3VyY2VHcm91cBgHIAEoCRIQCgh1c2FnZUVuZBgIIAEoCRISCgp1c2FnZVN0YXJ0GAkgASgJEiUKBHRhZ3MYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhEKCWNyZWF0ZWRBdBgLIAEoCRIRCgl1cGRhdGVkQXQYDCABKAkSEgoKaW5zdGFuY2VJZBgNIAEoCRIYChBiaWxsaW5nQWNjb3VudElkGA4gASgJEhQKDHN1YkFjY291bnRJZBgPIAEoCRIbChNtYW5hZ2VtZW50QWNjb3VudElkGBAgASgJEhYKDm93bmVyQWNjb3VudElkGBEgASgJEhAKCHNrdVRpdGxlGBIgASgJEg8KB3NrdU5hbWUYEyABKAkSGAoQYXZhaWxhYmlsaXR5Wm9uZRgUIAEoCRITCgtjYWNoZUVuZ2luZRgVIAEoCRIWCg5kYXRhYmFzZUVuZ2luZRgWIAEoCRITCgtkZXNjcmlwdGlvbhgXIAEoCRIOCgZmYW1pbHkYGCABKAkSFgoOZnVsbFJlZ2lvbk5hbWUYGSABKAkSGAoQaGFzT25kZW1hbmRUZXJtcxgaIAEoCBIUCgxpbnN0YW5jZVR5cGUYGyABKAkSGgoSaW5zdGFuY2VUeXBlRmFtaWx5GBwgASgJEhQKDGlzUmVzZXJ2YWJsZRgdIAEoCBIUCgxsaWNlbnNlTW9kZWwYHiABKAkSFAoMbG9jYXRpb25UeXBlGB8gASgJEh8KF25vcm1hbGl6YXRpb25TaXplRmFjdG9yGCAgASgJEhcKD29wZXJhdGluZ1N5c3RlbRghIAEoCRIWCg5wcmVJbnN0YWxsZWRTdxgiIAEoCRIVCg1wcmljZUN1cnJlbmN5GCMgASgJEhcKD3Byb3ZpZGVyU2VydmljZRgkIAEoCRIVCg1wcm92aWRlclNrdUlkGCUgASgJEhcKD3B1YmxpY2F0aW9uRGF0ZRgmIAEoCRIOCgZyZWdpb24YJyABKAkSDwoHc2VydmljZRgoIAEoCRIPCgd0ZW5hbmN5GCkgASgJEhEKCXVzYWdlVHlwZRgqIAEoCRIPCgd2ZXJzaW9uGCsgASgJEhwKFHZwY05ldHdvcmtpbmdTdXBwb3J0GCwgASgIEhkKEW9uZGVtYW5kVXNhZ2VVbml0GC0gASgJIkMKFUxpc3RSZXNvdXJjZXNSZXNwb25zZRIqCglyZXNvdXJjZXMYASADKAsyFy5ibHVlYXBpLmdjLnYxLlJlc291cmNlIu8CChJSZXNvdXJjZURhaWx5VXNhZ2USDAoEZGF0ZRgBIAEoCRIWCg51c2FnZUFjY291bnRJZBgCIAEoCRIUCgxzdWJBY2NvdW50SWQYAyABKAkSDQoFdXNhZ2UYBCABKAESGAoQcmVzZXJ2YXRpb25Vc2FnZRgFIAEoARIVCg1mcmVlVGllclVzYWdlGAYgASgBEhQKDG9uZGVtYW5kQ29zdBgHIAEoARIUCgxyZXNlcnZlZENvc3QYCCABKAESGQoRaWZBbGxPbmRlbWFuZENvc3QYCSABKAESEAoIc3BvdENvc3QYCiABKAESFwoPZnJlZVRpZXJTYXZpbmdzGAsgASgBEhEKCXVzYWdlVHlwZRgMIAEoCRIXCg9jb21tb25Vc2FnZVR5cGUYDSABKAkSFAoMY292ZXJlZFVzYWdlGA4gASgBEg4KBnVwdGltZRgPIAEoARIZChFwcm92aWRlclVzYWdlVHlwZRgQIAEoCSJWCh1HZXRSZXNvdXJjZURhaWx5VXNhZ2VSZXNwb25zZRI1CgpkYWlseVVzYWdlGAEgAygLMiEuYmx1ZWFwaS5nYy52MS5SZXNvdXJjZURhaWx5VXNhZ2UigxAKElJlc2VydmFibGVSZXNvdXJjZRIKCgJpZBgBIAEoCRISCgpyZXNvdXJjZUlkGAIgASgJEhgKEGJpbGxpbmdBY2NvdW50SWQYAyABKAkSFAoMc3ViQWNjb3VudElkGAQgASgJEhAKCHByb3ZpZGVyGAUgASgJEhoKEnByb3ZpZGVyUmVzb3VyY2VJZBgGIAEoCRIXCg9wcm92aWRlclNlcnZpY2UYByABKAkSFQoNcHJvdmlkZXJTa3VJZBgIIAEoCRIOCgZpc1Nwb3QYCSABKAgSFAoMaXNSZXNlcnZhYmxlGAogASgIEiQKBG5hbWUYCyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLQoNcmVzb3VyY2VHcm91cBgMIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIQCgh1c2FnZUVuZBgNIAEoCRISCgp1c2FnZVN0YXJ0GA4gASgJEiUKBHRhZ3MYDyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KDHByb3ZpZGVyVGFncxgQIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIdXNlclRhZ3MYESABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhEKCWNyZWF0ZWRBdBgSIAEoCRIRCgl1cGRhdGVkQXQYEyABKAkSEgoKaW5zdGFuY2VJZBgUIAEoCRIwChBhdmFpbGFiaWxpdHlab25lGBUgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEisKC2NhY2hlRW5naW5lGBYgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhQKDGNhdGFsb2dTa3VJZBgXIAEoCRIXCg9jYXRhbG9nU2t1T3JnSWQYGCABKAkSIAoYY2xhc3NpY05ldHdvcmtpbmdTdXBwb3J0GBkgASgIEhIKCmNsb2NrU3BlZWQYGiABKAkSFwoPY29tbW9uVXNhZ2VUeXBlGBsgASgJEhQKDGNvdmVyZWRVc2FnZRgcIAEoARIuCg5kYXRhYmFzZUVuZ2luZRgdIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIeChZkZWRpY2F0ZWRFYnNUaHJvdWdocHV0GB4gASgJEisKC2Rlc2NyaXB0aW9uGB8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEgsKA2VjdRggIAEoCRIjChtlbmhhbmNlZE5ldHdvcmtpbmdTdXBwb3J0ZWQYISABKAgSDgoGZmFtaWx5GCIgASgJEhYKDmZ1bGxSZWdpb25OYW1lGCMgASgJEhgKEGhhc09uZGVtYW5kVGVybXMYJCABKAgSDwoHaWNvblVybBglIAEoCRIVCg1pbnRlZ3JhdGlvbklkGCYgASgJEhoKEmludGVsQXZ4MkF2YWlsYWJsZRgnIAEoCBIZChFpbnRlbEF2eEF2YWlsYWJsZRgoIAEoCBIbChNpbnRlbFR1cmJvQXZhaWxhYmxlGCkgASgIEiIKAmlvGCogASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhsKE2lzQ3VycmVudEdlbmVyYXRpb24YKyABKAgSKQoJaXNNdWx0aUF6GCwgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhQKDGxpY2Vuc2VNb2RlbBgtIAEoCRIUCgxsb2NhdGlvblR5cGUYLiABKAkSDgoGbWVtb3J5GC8gASgJEicKB3NrdU5hbWUYMCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEAoIc2t1VGl0bGUYMSABKAkSDwoHbmV0Q29zdBgyIAEoARISCgpuZXRTYXZpbmdzGDMgASgBEhoKEm5ldHdvcmtQZXJmb3JtYW5jZRg0IAEoCRIfChdub3JtYWxpemF0aW9uU2l6ZUZhY3Rvchg1IAEoCRIUCgxvbmRlbWFuZENvc3QYNiABKAESGQoRb25kZW1hbmRVc2FnZVVuaXQYNyABKAkSFwoPb3BlcmF0aW5nU3lzdGVtGDggASgJEhEKCW9wZXJhdGlvbhg5IAEoCRIZChFwaHlzaWNhbFByb2Nlc3Nvchg6IAEoCRIWCg5wcmVJbnN0YWxsZWRTdxg7IAEoCRIVCg1wcmljZUN1cnJlbmN5GDwgASgJEh0KFXByb2Nlc3NvckFyY2hpdGVjdHVyZRg9IAEoCRIZChFwcm9jZXNzb3JGZWF0dXJlcxg+IAEoCRIXCg9wdWJsaWNhdGlvbkRhdGUYPyABKAkSDgoGcmVnaW9uGEAgASgJEg8KB3NlcnZpY2UYQSABKAkSDgoGc291cmNlGEIgASgJEg8KB3N0b3JhZ2UYQyABKAkSJwoHdGF4VHlwZRhEIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIPCgd0ZW5hbmN5GEUgASgJEg4KBnVwdGltZRhGIAEoARIRCgl1c2FnZVR5cGUYRyABKAkSDAoEdmNwdRhIIAEoCRIPCgd2ZXJzaW9uGEkgASgJEhwKFHZwY05ldHdvcmtpbmdTdXBwb3J0GEogASgIEhQKDGluc3RhbmNlVHlwZRhLIAEoCRIaChJpbnN0YW5jZVR5cGVGYW1pbHkYTCABKAkSNgoLZGFpbHlVc2FnZXMYTSADKAsyIS5ibHVlYXBpLmdjLnYxLlJlc291cmNlRGFpbHlVc2FnZSJXCh9MaXN0UmVzZXJ2YWJsZVJlc291cmNlc1Jlc3BvbnNlEjQKCXJlc291cmNlcxgBIAMoCzIhLmJsdWVhcGkuZ2MudjEuUmVzZXJ2YWJsZVJlc291cmNlInQKB1NlZ21lbnQSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIpCghwcm92aWRlchgDIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXISEQoJaXNEZWZhdWx0GAQgASgIEhEKCWNyZWF0ZWRBdBgFIAEoCSJACg5TZWdtZW50Q3JlYXRvchIKCgJpZBgBIAEoCRIQCgh1c2VybmFtZRgCIAEoCRIQCghmdWxsTmFtZRgDIAEoCSJLCgxQdXJjaGFzZVBsYW4SCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEQoJaXNSZW5ld2FsGAQgASgIIqUFCg5TZWdtZW50RGV0YWlscxIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEikKCHByb3ZpZGVyGAQgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIWCg5jbG91ZFByb3ZpZGVycxgFIAMoCRIRCglpc0RlZmF1bHQYBiABKAgSEQoJY3JlYXRlZEF0GAcgASgJEjAKCWNyZWF0ZWRCeRgIIAEoCzIdLmJsdWVhcGkuZ2MudjEuU2VnbWVudENyZWF0b3ISEAoIcGFyZW50SWQYCSABKAkSDgoGc3RhdHVzGAogASgJEhQKDHNlZ21lbnRDbGFzcxgLIAEoCRInCgZwYXJhbXMYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhMKC21vbnRobHlDb3N0GA0gASgBEhYKDm1vbnRobHlOZXRDb3N0GA4gASgBEiAKGG1vbnRobHlJZkFsbE9uZGVtYW5kQ29zdBgPIAEoARIbChNtb250aGx5T25kZW1hbmRDb3N0GBAgASgBEhsKE21vbnRobHlSZXNlcnZlZENvc3QYESABKAESFwoPbW9udGhseVNwb3RDb3N0GBIgASgBEhYKDm1vbnRobHlTYXZpbmdzGBMgASgBEhUKDW1vbnRobHlCdWRnZXQYFCABKAESEAoIY292ZXJhZ2UYFSABKAESGwoTcmVjb21tZW5kZWRDb3ZlcmFnZRgWIAEoARIWCg50YXJnZXRDb3ZlcmFnZRgXIAEoARIcChRtb250aGx5UmVzb3VyY2VDb3VudBgYIAEoBRIyCg1wdXJjaGFzZVBsYW5zGBkgAygLMhsuYmx1ZWFwaS5nYy52MS5QdXJjaGFzZVBsYW4ieAoMQ29udHJhY3RTcGVjEhYKDmNvbW1pdG1lbnRUeXBlGAEgASgJEhUKDXBheW1lbnRPcHRpb24YAiABKAkSDAoEdGVybRgDIAEoCRIrCgpwcm9wZXJ0aWVzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLeAgoLUGxhblN1bW1hcnkSCwoDa2V5GAEgASgJEhAKCHByb3ZpZGVyGAIgASgJEhYKDm51bUNvbW1pdG1lbnRzGAMgASgFEhUKDW1pbkNvbW1pdG1lbnQYBCABKAESGQoRbW9udGhseUNvbW1pdG1lbnQYBSABKAESEwoLdXBmcm9udENvc3QYBiABKAESEgoKbWluU2F2aW5ncxgHIAEoARISCgptYXhTYXZpbmdzGAggASgBEhYKDm1vbnRobHlTYXZpbmdzGAkgASgBEhQKDG1pblRlcm1Ib3VycxgKIAEoBRIUCgxtYXhUZXJtSG91cnMYCyABKAUSEwoLZ3JpUHJlbWl1bXMYDCABKAESGgoSYmVmb3JlT25kZW1hbmRDb3N0GA0gASgBEhkKEWFmdGVyT25kZW1hbmRDb3N0GA4gASgBEhkKEWlmQWxsT25kZW1hbmRDb3N0GA8gASgBIuUCCg5TZXJ2aWNlU3VtbWFyeRILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRITCgtzZXJ2aWNlTmFtZRgDIAEoCRIQCghwcm92aWRlchgEIAEoCRIWCg5udW1Db21taXRtZW50cxgFIAEoBRIXCg9jdXJyZW50Q292ZXJhZ2UYBiABKAESGQoRcG90ZW50aWFsQ292ZXJhZ2UYByABKAESFQoNbWluQ29tbWl0bWVudBgIIAEoARIZChFtb250aGx5Q29tbWl0bWVudBgJIAEoARITCgt1cGZyb250Q29zdBgKIAEoARISCgptaW5TYXZpbmdzGAsgASgBEhIKCm1heFNhdmluZ3MYDCABKAESFgoObW9udGhseVNhdmluZ3MYDSABKAESFAoMbWluVGVybUhvdXJzGA4gASgFEhQKDG1heFRlcm1Ib3VycxgPIAEoBRISCgpncmlQcmVtaXVtGBAgASgBItoBChBBZ2dyZWdhdGVNZXRyaWNzEhcKD2N1cnJlbnRDb3ZlcmFnZRgBIAEoARIZChFwb3RlbnRpYWxDb3ZlcmFnZRgCIAEoARJBCglzdW1tYXJpZXMYAyADKAsyLi5ibHVlYXBpLmdjLnYxLkFnZ3JlZ2F0ZU1ldHJpY3MuU3VtbWFyaWVzRW50cnkaTwoOU3VtbWFyaWVzRW50cnkSCwoDa2V5GAEgASgJEiwKBXZhbHVlGAIgASgLMh0uYmx1ZWFwaS5nYy52MS5TZXJ2aWNlU3VtbWFyeToCOAEizgsKE0RlZmF1bHRQdXJjaGFzZVBsYW4SCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRINCgVvcmdJZBgEIAEoCRIRCglzZWdtZW50SWQYBSABKAkSJwoHc2VnbWVudBgGIAEoCzIWLmJsdWVhcGkuZ2MudjEuU2VnbWVudBIOCgZzdGF0dXMYByABKAkSEAoIcGxhblR5cGUYCCABKAkSEQoJY3JlYXRlZEF0GAkgASgJEhQKDGxhc3RNb2RpZmllZBgKIAEoCRIpCgljcmVhdGVkQnkYCyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLwoPZXhlY3V0aW9uUG9saWN5GAwgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCWlzRGVmYXVsdBgNIAEoCBIVCg1pc1JlY29tbWVuZGVkGA4gASgIEhEKCWlzUmVuZXdhbBgPIAEoCBIVCg1pc0NhbGN1bGF0aW5nGBAgASgIEhAKCGlzTG9ja2VkGBEgASgIEg8KB2lzU2F2ZWQYEiABKAgSOgoVaW5jbHVkZWRDb250cmFjdFNwZWNzGBMgAygLMhsuYmx1ZWFwaS5nYy52MS5Db250cmFjdFNwZWMSHQoVaW5jbHVkZWRDb250cmFjdFRlcm1zGBQgAygJEg8KB21heFRlcm0YFSABKAkSHgoWcHJlZmVycmVkUGF5bWVudE9wdGlvbhgWIAEoCRIWCg5tYXhVcGZyb250Q29zdBgXIAEoARIiChptaW5pbXVtVXBmcm9udEludGVyZXN0UmF0ZRgYIAEoARI+Ch5yZWNvbW1lbmRXaXRoaW5Db3ZlcmVkQWNjb3VudHMYGSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJc3RhcnREYXRlGBogASgJEg8KB2VuZERhdGUYGyABKAkSEgoKZGF0YVNvdXJjZRgcIAEoCRISCgpiZWZvcmVDb3N0GB0gASgBEhEKCWFmdGVyQ29zdBgeIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYHyABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GCAgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYISABKAESFQoNYW1vcnRpemVkQ29zdBgiIAEoARIVCg1yZWN1cnJpbmdDb3N0GCMgASgBEhMKC3VwZnJvbnRDb3N0GCQgASgBEhEKCXRvdGFsQ29zdBglIAEoARIeChZ0b3RhbE1vbnRobHlCZWZvcmVDb3N0GCYgASgBEg8KB3NhdmluZ3MYJyABKAESFgoObW9udGhseVNhdmluZ3MYKCABKAESFAoMdG90YWxTYXZpbmdzGCkgASgBEgsKA2ZlZRgqIAEoARIaChJjb21taXRtZW50Q292ZXJhZ2UYKyABKAESHQoVbWluaW11bUNvbW1pdG1lbnRDb3N0GCwgASgBEhYKDmJyZWFrZXZlbkhvdXJzGC0gASgBEjkKEGFnZ3JlZ2F0ZU1ldHJpY3MYLiABKAsyHy5ibHVlYXBpLmdjLnYxLkFnZ3JlZ2F0ZU1ldHJpY3MSLQoJc3VtbWFyaWVzGC8gAygLMhouYmx1ZWFwaS5nYy52MS5QbGFuU3VtbWFyeRIWCg5yZXNlcnZhdGlvbklkcxgwIAMoCRITCgtyZXNvdXJjZUlkcxgxIAMoCRIWCg5mbGFnZ2VkQWN0aW9ucxgyIAMoCRISCgptZXRhUGxhbklkGDMgASgJEhIKCmNvdmVyYWdlSWQYNCABKAkSGAoQbW9udGhseUFmdGVyQ29zdBg1IAEoARIcChRtb250aGx5QW1vcnRpemVkQ29zdBg2IAEoARIZChFtb250aGx5QmVmb3JlQ29zdBg3IAEoARISCgptb250aGx5RmVlGDggASgBEhAKCGFsbFRlcm1zGDkgAygJIlcKIkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVzcG9uc2USMQoFcGxhbnMYASADKAsyIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4iXQooR2V0VXBkYXRlZFB1cmNoYXNlUGxhbnNCeVNlZ21lbnRSZXNwb25zZRIxCgVwbGFucxgBIAMoCzIiLmJsdWVhcGkuZ2MudjEuRGVmYXVsdFB1cmNoYXNlUGxhbiJBCg9QbGFuSGlzdG9yeVVzZXISCgoCaWQYASABKAkSEAoIdXNlcm5hbWUYAiABKAkSEAoIZnVsbE5hbWUYAyABKAki9wEKEFBsYW5IaXN0b3J5RW50cnkSCgoCaWQYASABKAkSDwoHbWVzc2FnZRgCIAEoCRINCgVvcmdJZBgDIAEoCRIXCg9yZWxhdGVkT2JqZWN0SWQYBCABKAkSGQoRcmVsYXRlZE9iamVjdFR5cGUYBSABKAkSEQoJdGltZXN0YW1wGAYgASgJEgwKBHR5cGUYByABKAkSDgoGdXNlcklkGAggASgJEiQKBGRhdGEYCSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLAoEdXNlchgKIAEoCzIeLmJsdWVhcGkuZ2MudjEuUGxhbkhpc3RvcnlVc2VyIoQCChNSZWdpc3Rlck9yZ1Jlc3BvbnNlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSLgoLbWVtYmVyc2hpcHMYAyADKAsyGS5ibHVlYXBpLmdjLnYxLk1lbWJlcnNoaXASDgoGZG9tYWluGAQgASgJEi4KDnByaW1hcnlBZGRyZXNzGAUgASgLMhYuYmx1ZWFwaS5nYy52MS5BZGRyZXNzEh8KF2F3c01hcmtldHBsYWNlT2ZmZXJMaW5rGAYgASgJEiEKGWF6dXJlTWFya2V0cGxhY2VPZmZlckxpbmsYByABKAkSHwoXZ2NwTWFya2V0cGxhY2VPZmZlckxpbmsYCCABKAkiMgoaU3RhcnRBd3NPbmJvYXJkaW5nUmVzcG9uc2USFAoMb25ib2FyZGluZ0lkGAEgASgJIlEKJEdldEF3c0Nsb3VkRm9ybWF0aW9uVGVtcGxhdGVSZXNwb25zZRIpCgh0ZW1wbGF0ZRgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiKwocR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXNwb25zZRILCgN1cmwYASABKAkijwQKG1ZlcmlmeUF3c09uYm9hcmRpbmdSZXNwb25zZRJUCgZjaGVja3MYASADKAsyRC5ibHVlYXBpLmdjLnYxLlZlcmlmeUF3c09uYm9hcmRpbmdSZXNwb25zZS5Bd3NPbmJvYXJkaW5nRmVhdHVyZUNoZWNrGpkDChlBd3NPbmJvYXJkaW5nRmVhdHVyZUNoZWNrEg8KB2ZlYXR1cmUYASABKAkSbwoGc3RhdHVzGAIgASgOMl8uYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjay5Bd3NPbmJvYXJkaW5nRmVhdHVyZVN0YXR1cyL5AQoaQXdzT25ib2FyZGluZ0ZlYXR1cmVTdGF0dXMSLQopQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfVU5TUEVDSUZJRUQQABIrCidBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19BVkFJTEFCTEUQARIpCiVBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19XQVJOSU5HEAISKQolQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfTUlTU0lORxADEikKJUFXU19PTkJPQVJESU5HX0ZFQVRVUkVfU1RBVFVTX1VOS05PV04QBCLVBQobR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlEg0KBWZvdW5kGAEgASgIEg0KBWlzTXNwGAIgASgIEikKCHByb3ZpZGVyGAMgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIPCgdnY09yZ0lkGAQgASgJEhQKDG9uYm9hcmRpbmdJZBgFIAEoCRJVChBvbmJvYXJkaW5nU3RhdHVzGAYgASgOMjsuYmx1ZWFwaS5nYy52MS5HZXRPbmJvYXJkaW5nU3RhdHVzUmVzcG9uc2UuT25ib2FyZGluZ1N0YXR1cxIRCglhY2NvdW50SWQYByABKAkSFgoOYmlsbGluZ0dyb3VwSWQYCCABKAkSEQoJY29tcGFueUlkGAkgASgJEmAKEnZlcmlmaWNhdGlvbkNoZWNrcxgKIAMoCzJELmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2sSNwoPdGVybXNBY2NlcHRhbmNlGAsgASgLMh4uYmx1ZWFwaS5nYy52MS5UZXJtc0FjY2VwdGFuY2UilQIKEE9uYm9hcmRpbmdTdGF0dXMSIQodT05CT0FSRElOR19TVEFUVVNfVU5TUEVDSUZJRUQQABIkCiBPTkJPQVJESU5HX1NUQVRVU19OT1RfUkVHSVNURVJFRBABEiAKHE9OQk9BUkRJTkdfU1RBVFVTX1JFR0lTVEVSRUQQAhIoCiRPTkJPQVJESU5HX1NUQVRVU19PTkJPQVJESU5HX1NUQVJURUQQAxIeChpPTkJPQVJESU5HX1NUQVRVU19WRVJJRklFRBAEEicKI09OQk9BUkRJTkdfU1RBVFVTX1ZFUklGWV9JTkNPTVBMRVRFEAUSIwofT05CT0FSRElOR19TVEFUVVNfVkVSSUZZX0ZBSUxFRBAGIo4DChNQYXllckFjY291bnREZXRhaWxzEhEKCWFjY291bnRJZBgBIAEoCRITCgthY2NvdW50TmFtZRgCIAEoCRIgChhyaXBwbGVSZWdpc3RyYXRpb25TdGF0dXMYAyABKAkSUgoNZ2NTZXR1cFN0YXR1cxgEIAEoDjI7LmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlLk9uYm9hcmRpbmdTdGF0dXMSYAoSdmVyaWZpY2F0aW9uQ2hlY2tzGAUgAygLMkQuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjaxIlCh1tYXJrZXRwbGFjZVByaXZhdGVPZmZlclN0YXR1cxgGIAEoCRIhChltYXJrZXRwbGFjZVByaXZhdGVPZmZlcklkGAcgASgJEi0KJW1hcmtldHBsYWNlUHJpdmF0ZU9mZmVyRXhwaXJhdGlvbkRhdGUYCCABKAkiqAUKGUxpc3RQYXllckFjY291bnRzUmVzcG9uc2USTAoNcGF5ZXJBY2NvdW50cxgBIAMoCzI1LmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZS5QYXllckFjY291bnQSPwoTcGF5ZXJBY2NvdW50RGV0YWlscxgCIAMoCzIiLmJsdWVhcGkuZ2MudjEuUGF5ZXJBY2NvdW50RGV0YWlscxr6AgoMUGF5ZXJBY2NvdW50EhEKCWFjY291bnRJZBgBIAEoCRITCgthY2NvdW50TmFtZRgCIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgDIAEoCRIRCglzZWdtZW50SWQYBCABKAkSSwoGc3RhdHVzGAUgASgOMjsuYmx1ZWFwaS5nYy52MS5MaXN0UGF5ZXJBY2NvdW50c1Jlc3BvbnNlLlBheWVyQWNjb3VudFN0YXR1cxIRCgljb21wYW55SWQYBiABKAkSVQoQb25ib2FyZGluZ1N0YXR1cxgHIAEoDjI7LmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlLk9uYm9hcmRpbmdTdGF0dXMSYAoSdmVyaWZpY2F0aW9uQ2hlY2tzGAggAygLMkQuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjayJ/ChJQYXllckFjY291bnRTdGF0dXMSJAogUEFZRVJfQUNDT1VOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIgChxQQVlFUl9BQ0NPVU5UX1NUQVRVU19FTkFCTEVEEAESIQodUEFZRVJfQUNDT1VOVF9TVEFUVVNfRElTQUJMRUQQAiJtCh5TZXRQYXllckFjY291bnRFbmFibGVkUmVzcG9uc2USSwoMcGF5ZXJBY2NvdW50GAEgASgLMjUuYmx1ZWFwaS5nYy52MS5MaXN0UGF5ZXJBY2NvdW50c1Jlc3BvbnNlLlBheWVyQWNjb3VudCJsCh1HZXRQYXllckFjY291bnRTdGF0dXNSZXNwb25zZRJLCgxwYXllckFjY291bnQYASABKAsyNS5ibHVlYXBpLmdjLnYxLkxpc3RQYXllckFjY291bnRzUmVzcG9uc2UuUGF5ZXJBY2NvdW50IrYFChlMaXN0QmlsbGluZ0dyb3Vwc1Jlc3BvbnNlEkwKDWJpbGxpbmdHcm91cHMYASADKAsyNS5ibHVlYXBpLmdjLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVzcG9uc2UuQmlsbGluZ0dyb3VwGskDCgxCaWxsaW5nR3JvdXASEQoJY29tcGFueUlkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYBCABKAkSFgoOcGF5ZXJBY2NvdW50SWQYBSABKAkSGAoQcGF5ZXJBY2NvdW50TmFtZRgGIAEoCRIRCglzZWdtZW50SWQYByABKAkSFAoMcmVzb3VyY2VUeXBlGAggASgJEksKBnN0YXR1cxgJIAEoDjI7LmJsdWVhcGkuZ2MudjEuTGlzdEJpbGxpbmdHcm91cHNSZXNwb25zZS5CaWxsaW5nR3JvdXBTdGF0dXMSVQoQb25ib2FyZGluZ1N0YXR1cxgKIAEoDjI7LmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlLk9uYm9hcmRpbmdTdGF0dXMSYAoSdmVyaWZpY2F0aW9uQ2hlY2tzGAsgAygLMkQuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjayJ/ChJCaWxsaW5nR3JvdXBTdGF0dXMSJAogQklMTElOR19HUk9VUF9TVEFUVVNfVU5TUEVDSUZJRUQQABIgChxCSUxMSU5HX0dST1VQX1NUQVRVU19FTkFCTEVEEAESIQodQklMTElOR19HUk9VUF9TVEFUVVNfRElTQUJMRUQQAiJsCh1TZXRCaWxsaW5nR3JvdXBTdGF0dXNSZXNwb25zZRJLCgxiaWxsaW5nR3JvdXAYASABKAsyNS5ibHVlYXBpLmdjLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVzcG9uc2UuQmlsbGluZ0dyb3VwIqUBCh1HZXRCaWxsaW5nR3JvdXBTdGF0dXNSZXNwb25zZRJLCgxiaWxsaW5nR3JvdXAYASABKAsyNS5ibHVlYXBpLmdjLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVzcG9uc2UuQmlsbGluZ0dyb3VwEjcKD3Rlcm1zQWNjZXB0YW5jZRgCIAEoCzIeLmJsdWVhcGkuZ2MudjEuVGVybXNBY2NlcHRhbmNlIloKHFZhbGlkYXRlQmlsbGluZ0dyb3VwUmVzcG9uc2USCgoCb2sYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIMCgRjb2RlGAMgASgJEg8KB2RldGFpbHMYBCADKAkizgEKGkdldEF3c1ByaXZhdGVPZmZlclJlc3BvbnNlEhYKDnBheWVyQWNjb3VudElkGAEgASgJEg8KB29mZmVySWQYAiABKAkSEQoJb2ZmZXJOYW1lGAMgASgJEg4KBnN0YXR1cxgEIAEoCRIQCghvZmZlclVybBgFIAEoCRIRCglwcm9kdWN0SWQYBiABKAkSFAoMcHJpY2VQZXJVbml0GAcgASgBEhEKCWNyZWF0ZWRBdBgIIAEoCRIWCg5leHBpcmF0aW9uRGF0ZRgJIAEoCSJaCh9BY2NlcHRCaWxsaW5nR3JvdXBUZXJtc1Jlc3BvbnNlEjcKD3Rlcm1zQWNjZXB0YW5jZRgBIAEoCzIeLmJsdWVhcGkuZ2MudjEuVGVybXNBY2NlcHRhbmNlIlMKHkxpc3REcmFmdFB1cmNoYXNlUGxhbnNSZXNwb25zZRIxCgVwbGFucxgBIAMoCzIiLmJsdWVhcGkuZ2MudjEuRGVmYXVsdFB1cmNoYXNlUGxhbiJCCh9EZWxldGVEcmFmdFB1cmNoYXNlUGxhblJlc3BvbnNlEg4KBnBsYW5JZBgBIAEoCRIPCgdzdWNjZXNzGAIgASgIIjQKI0dldEF2YWlsYWJsZUNvbW1pdG1lbnRUeXBlc1Jlc3BvbnNlEg0KBXR5cGVzGAEgAygJIt0BCipHZXRHdWFyYW50ZWVkQ29tbWl0bWVudFRlbXBsYXRlVXJsUmVzcG9uc2USEQoJbGF1bmNoVXJsGAEgASgJEhMKC3RlbXBsYXRlVXJsGAIgASgJEhEKCXN0YWNrTmFtZRgDIAEoCRIRCglwcmluY2lwYWwYBCABKAkSEgoKZXh0ZXJuYWxJZBgFIAEoCRIlCh1ndWFyYW50ZWVkQ29tbWl0bWVudFByaW5jaXBhbBgGIAEoCRImCh5ndWFyYW50ZWVkQ29tbWl0bWVudEV4dGVybmFsSWQYByABKAkivgIKKENyZWF0ZUd1YXJhbnRlZWRDb21taXRtZW50QWNjZXNzUmVzcG9uc2USDgoGdGFyZ2V0GAEgASgJEhUKDXJpcHBsZVJvbGVBcm4YAiABKAkSGAoQcmlwcGxlRXh0ZXJuYWxJZBgDIAEoCRIjChtndWFyYW50ZWVkQ29tbWl0bWVudFJvbGVBcm4YBCABKAkSJgoeZ3VhcmFudGVlZENvbW1pdG1lbnRFeHRlcm5hbElkGAUgASgJEg8KB3N0YWNrSWQYBiABKAkSEwoLc3RhY2tSZWdpb24YByABKAkSEwoLdGVtcGxhdGVVcmwYCCABKAkSDgoGc3RhdHVzGAkgASgJEhMKC2xhc3RVcGRhdGVkGAogASgJEiQKHGd1YXJhbnRlZWRDb21taXRtZW50VmVyaWZpZWQYCyABKAgihAIKH0dldFB1cmNoYXNlUGxhbnNEZXRhaWxzUmVzcG9uc2USMAoEcGxhbhgBIAEoCzIiLmJsdWVhcGkuZ2MudjEuRGVmYXVsdFB1cmNoYXNlUGxhbhI4CglsaW5lSXRlbXMYAiADKAsyJS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuTGluZUl0ZW0SQwoPcmVzb3VyY2VNYXRjaGVzGAMgAygLMiouYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhblJlc291cmNlTWF0Y2gSMAoHaGlzdG9yeRgEIAMoCzIfLmJsdWVhcGkuZ2MudjEuUGxhbkhpc3RvcnlFbnRyeSJXCiJDcmVhdGVDdXN0b21Db21taXRtZW50UGxhblJlc3BvbnNlEjEKBXBsYW5zGAEgAygLMiIuYmx1ZWFwaS5nYy52MS5EZWZhdWx0UHVyY2hhc2VQbGFuInoKHEF6dXJlQXJjaGVyYU9yZ0ZlYXR1cmVTdGF0dXMSJgoGZGV0YWlsGAEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEg8KB2ZlYXR1cmUYAiABKAkSDgoGc3RhdHVzGAMgASgJEhEKCXVwZGF0ZWRBdBgEIAEoCSJWChpBenVyZUFyY2hlcmFPcmdMZWFzZUJ1ZGdldBIOCgZidWRnZXQYASABKAESEQoJY3JlYXRlZEF0GAIgASgJEhUKDW1pblRlcm1Nb250aHMYAyABKAUingsKD0F6dXJlQXJjaGVyYU9yZxIeChZhcHBseUJhbGFuY2VUb1ByZW1pdW1zGAEgASgIEhMKC2F1dGhTc29Pbmx5GAIgASgIEjcKF2F3c01hcmtldHBsYWNlT2ZmZXJMaW5rGAMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjkKGWF6dXJlTWFya2V0cGxhY2VPZmZlckxpbmsYBCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSDwoHYmFsYW5jZRgFIAEoARIVCg1iaWxsaW5nQWN0aXZlGAYgASgIEhoKEmNoYW5uZWxQYXJ0bmVyVHlwZRgHIAEoCRIyChJjaGFubmVsUGFydG5lcnNoaXAYCCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSKwoLY29udHJhY3RFbmQYCSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJY3JlYXRlZEF0GAogASgJEigKCGN1cnJlbmN5GAsgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhcKD2RlZmF1bHRVc2VyUm9sZRgMIAEoCRIsCgxkaXNjb3VudEluZm8YDSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSDgoGZG9tYWluGA4gASgJEi0KDWVmZmVjdGl2ZURhdGUYDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSRAoPZmVhdHVyZVN0YXR1c2VzGBAgAygLMisuYmx1ZWFwaS5nYy52MS5BenVyZUFyY2hlcmFPcmdGZWF0dXJlU3RhdHVzEhAKCGZlYXR1cmVzGBEgAygJEioKCmZydWdhbE1vZGUYEiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNwoXZ2NwTWFya2V0cGxhY2VPZmZlckxpbmsYEyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEwoLaGFzRGlzY291bnQYFCABKAgSDwoHaGFzR3JpcxgVIAEoCBIhChloYXNUZHNQYWNQcm94eUNyZWRlbnRpYWxzGBYgASgIEgoKAmlkGBcgASgJEh8KF2lzTGVhc2VCdXliYWNrQXV0b21hdGVkGBggASgIEhwKFGlzTGVhc2VTd2FwQXV0b21hdGVkGBkgASgIEhUKDWlzVGRzUGFjUHJveHkYGiABKAgSPgoLbGVhc2VCdWRnZXQYGyABKAsyKS5ibHVlYXBpLmdjLnYxLkF6dXJlQXJjaGVyYU9yZ0xlYXNlQnVkZ2V0EiAKGGxlYXNlQnV5YmFja0xvb2tiYWNrRGF5cxgcIAEoBRIdChVsZWFzZVN3YXBMb29rYmFja0RheXMYHSABKAUSDAoEbmFtZRgeIAEoCRIpCglwYXJ0bmVySWQYHyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJcGxhblRyaWFsGCAgASgIEhgKEHBsYW5UcmlhbEV4cGlyZXMYISABKAkSFgoOcGxhblR5cGVDaG9zZW4YIiABKAkSGQoRcGxhblR5cGVFZmZlY3RpdmUYIyABKAkSLgoOcHJpbWFyeUFkZHJlc3MYJCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLQoNcHJvbW90aW9uQ29kZRglIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRJaChZwcm92aWRlclJvb3RTZWdtZW50SWRzGCYgAygLMjouYmx1ZWFwaS5nYy52MS5BenVyZUFyY2hlcmFPcmcuUHJvdmlkZXJSb290U2VnbWVudElkc0VudHJ5Gj0KG1Byb3ZpZGVyUm9vdFNlZ21lbnRJZHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIlQKGEF6dXJlT25ib2FyZGluZ0NyZWF0ZWRCeRIUCgxvbmJvYXJkaW5nSWQYASABKAkSEAoIdXNlcm5hbWUYAiABKAkSEAoIZnVsbE5hbWUYAyABKAkisgcKFEF6dXJlT25ib2FyZGluZ1N0YXRlEhQKDG9uYm9hcmRpbmdJZBgBIAEoCRINCgVvcmdJZBgCIAEoCRIQCghwcm92aWRlchgDIAEoCRIRCgljb21wbGV0ZWQYBCABKAgSEQoJY3JlYXRlZEF0GAUgASgJEjoKCWNyZWF0ZWRCeRgGIAEoCzInLmJsdWVhcGkuZ2MudjEuQXp1cmVPbmJvYXJkaW5nQ3JlYXRlZEJ5EisKC2ludGVncmF0aW9uGAcgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhUKDWludGVncmF0aW9uSWQYCCABKAkSGgoSYXJjaGVyYU91dGJvdW5kSXBzGAkgAygJEhAKCHRlbmFudElkGAogASgJEhYKDnN1YnNjcmlwdGlvbklkGAsgASgJEhIKCmFjY291bnRJZHMYDCADKAkSEwoLYWNjb3VudEtpbmQYDSABKAkSMAoQYXBwQXV0aFZhbGlkYXRlZBgOIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRItCg1hcHBBdXRob3JpemVkGA8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhUKDWJsb2JDb250YWluZXIYECABKAkSFQoNcmVzb3VyY2VHcm91cBgRIAEoCRIWCg5zdG9yYWdlQWNjb3VudBgSIAEoCRIQCghyb2xlTmFtZRgTIAEoCRIvCg9jcmVhdGVSZXNvdXJjZXMYFCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNAoUbWFya2V0cGxhY2VDb21wbGV0ZWQYFSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLwoPcGVybWlzc2lvbkxldmVsGBYgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjMKE3Jlc291cmNlR3JvdXBSZWdpb24YFyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNAoUc3RvcmFnZUFjY291bnRSZWdpb24YGCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMQoRcmVzb3VyY2VHcm91cFRhZ3MYGSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMgoSc3RvcmFnZUFjY291bnRUYWdzGBogASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEisKA29yZxgbIAEoCzIeLmJsdWVhcGkuZ2MudjEuQXp1cmVBcmNoZXJhT3JnIpMBChxTdGFydEF6dXJlT25ib2FyZGluZ1Jlc3BvbnNlEhQKDG9uYm9hcmRpbmdJZBgBIAEoCRIyCgVzdGF0ZRgCIAEoCzIjLmJsdWVhcGkuZ2MudjEuQXp1cmVPbmJvYXJkaW5nU3RhdGUSFgoOYmlsbGluZ0dyb3VwSWQYAyABKAkSEQoJY29tcGFueUlkGAQgASgJIjAKIUdldEF6dXJlT25ib2FyZGluZ0F1dGhVcmxSZXNwb25zZRILCgN1cmwYASABKAkidgoMQXp1cmVBY2NvdW50EhEKCWFjY291bnRJZBgBIAEoCRITCgthY2NvdW50TmFtZRgCIAEoCRIVCg1hY2NvdW50U3RhdHVzGAMgASgJEhMKC2FjY291bnRUeXBlGAQgASgJEhIKCmlzRWxpZ2libGUYBSABKAgiVAojTGlzdEF6dXJlT25ib2FyZGluZ0FjY291bnRzUmVzcG9uc2USLQoIYWNjb3VudHMYASADKAsyGy5ibHVlYXBpLmdjLnYxLkF6dXJlQWNjb3VudCJQCh1BenVyZUludGVncmF0aW9uRmVhdHVyZVN0YXR1cxIPCgdmZWF0dXJlGAEgASgJEg4KBnN0YXR1cxgCIAEoCRIOCgZkZXRhaWwYAyADKAkiwgEKGkF6dXJlSW50ZWdyYXRpb25PbmJvYXJkaW5nEgoKAmlkGAEgASgJEg0KBW9yZ0lkGAIgASgJEhAKCHByb3ZpZGVyGAMgASgJEhUKDWludGVncmF0aW9uSWQYBCABKAkSEQoJY29tcGxldGVkGAUgASgIEhEKCWNyZWF0ZWRBdBgGIAEoCRI6CgljcmVhdGVkQnkYByABKAsyJy5ibHVlYXBpLmdjLnYxLkF6dXJlT25ib2FyZGluZ0NyZWF0ZWRCeSLuBAoQQXp1cmVJbnRlZ3JhdGlvbhIKCgJpZBgBIAEoCRIOCgZhY3RpdmUYAiABKAgSDAoEbmFtZRgDIAEoCRIQCghwcm92aWRlchgEIAEoCRIMCgR0eXBlGAUgASgJEg0KBW9yZ0lkGAYgASgJEg4KBnVzZXJJZBgHIAEoCRIRCgljcmVhdGVkQXQYCCABKAkSEQoJdXBkYXRlZEF0GAkgASgJEiAKGG1hbmFnZW1lbnRTdWJzY3JpcHRpb25JZBgKIAEoCRIeChZwcm92aWRlck9yZ2FuaXphdGlvbklkGAsgASgJEhUKDWJsb2JDb250YWluZXIYDCABKAkSFQoNcmVzb3VyY2VHcm91cBgNIAEoCRIWCg5zdG9yYWdlQWNjb3VudBgOIAEoCRIYChBjb3N0RXhwb3J0Rm9ybWF0GA8gASgJEhcKD2N1ckVhcmxpZXN0RGF0YRgQIAEoCRIVCg1jdXJSZXBvcnROYW1lGBEgASgJEhEKCWN1clVzYWJsZRgSIAEoCBIUCgxoYXNDdXJBY2Nlc3MYEyABKAgSIAoYaGFzRnVsbFJlc2VydmF0aW9uQWNjZXNzGBQgASgIEkUKD2ZlYXR1cmVTdGF0dXNlcxgVIAMoCzIsLmJsdWVhcGkuZ2MudjEuQXp1cmVJbnRlZ3JhdGlvbkZlYXR1cmVTdGF0dXMSPgoLb25ib2FyZGluZ3MYFiADKAsyKS5ibHVlYXBpLmdjLnYxLkF6dXJlSW50ZWdyYXRpb25PbmJvYXJkaW5nEicKBmNvbmZpZxgXIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QitAEKHkNyZWF0ZUF6dXJlSW50ZWdyYXRpb25SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEhEKCWVycm9yQ29kZRgCIAEoCRIUCgxlcnJvck1lc3NhZ2UYAyABKAkSFQoNaW50ZWdyYXRpb25JZBgEIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgFIAEoCRIRCgljb21wYW55SWQYBiABKAkSFgoOcGF5ZXJBY2NvdW50SWQYByABKAkiVgodTGlzdEF6dXJlSW50ZWdyYXRpb25zUmVzcG9uc2USNQoMaW50ZWdyYXRpb25zGAEgAygLMh8uYmx1ZWFwaS5nYy52MS5BenVyZUludGVncmF0aW9uKoICChFUZXJtc0NvbnNlbnRTdGF0ZRIjCh9URVJNU19DT05TRU5UX1NUQVRFX1VOU1BFQ0lGSUVEEAASJQohVEVSTVNfQ09OU0VOVF9TVEFURV9OT19BQ1RJVkVfVE9TEAESKAokVEVSTVNfQ09OU0VOVF9TVEFURV9DT05TRU5UX1JFUVVJUkVEEAISIQodVEVSTVNfQ09OU0VOVF9TVEFURV9DT05TRU5URUQQAxIoCiRURVJNU19DT05TRU5UX1NUQVRFX1VQREFURV9BVkFJTEFCTEUQBBIqCiZURVJNU19DT05TRU5UX1NUQVRFX1JFQ09OU0VOVF9SRVFVSVJFRBAFKl4KCFByb3ZpZGVyEhgKFFBST1ZJREVSX1VOU1BFQ0lGSUVEEAASBwoDQVdTEAESCQoFQVpVUkUQAhIHCgNHQ1AQAxIOCgpLVUJFUk5FVEVTEAQSCwoHVU5LTk9XThAFKpgBChBDb21taXRtZW50U3RhdHVzEiEKHUNPTU1JVE1FTlRfU1RBVFVTX1VOU1BFQ0lGSUVEEAASBwoDTkVXEAESDAoIUkVWSUVXRUQQAhINCglTQ0hFRFVMRUQQAxINCglDT01QTEVURUQQBBIJCgVEUkFGVBAFEhAKDE5FRURTX1JFVklFVxAGEg8KC0lOX1BST0dSRVNTEAcqigEKGUNvbW1pdG1lbnRJbnZlbnRvcnlTdGF0dXMSKwonQ09NTUlUTUVOVF9JTlZFTlRPUllfU1RBVFVTX1VOU1BFQ0lGSUVEEAASCgoGQUNUSVZFEAESCwoHUkVUSVJFRBACEhMKD1BBWU1FTlRfUEVORElORxADEhIKDlBBWU1FTlRfRkFJTEVEEAQqQwoFU2NvcGUSFQoRU0NPUEVfVU5TUEVDSUZJRUQQABIKCgZTSEFSRUQQARIMCghSRUdJT05BTBACEgkKBVpPTkFMEAMqQQoJVXNhZ2VUeXBlEhoKFlVTQUdFX1RZUEVfVU5TUEVDSUZJRUQQABILCgdSVU5OSU5HEAESCwoHU1RPUFBFRBACMoM7ChVHdWFyYW50ZWVkQ29tbWl0bWVudHMSYwoITGlzdE9yZ3MSHi5ibHVlYXBpLmdjLnYxLkxpc3RPcmdzUmVxdWVzdBoSLmJsdWVhcGkuZ2MudjEuT3JnIiGC0+STAhs6ASoiFi92MS9vcmdhbml6YXRpb25zOnJlYWQwARKXAQoUQ29tbWl0bWVudHNQbGFuQXBwbHkSKS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuQXBwbHlSZXF1ZXN0GiQuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhbkRldGFpbHMiLoLT5JMCKDoBKiIjL3YxL2NvbW1pdG1lbnRzL3BsYW4ve3BsYW5JZH0vYXBwbHkSeQoPTGlzdENvbW1pdG1lbnRzEiUuYmx1ZWFwaS5nYy52MS5MaXN0Q29tbWl0bWVudHNSZXF1ZXN0GiYuYmx1ZWFwaS5nYy52MS5MaXN0Q29tbWl0bWVudHNSZXNwb25zZSIXgtPkkwIREg8vdjEvY29tbWl0bWVudHMSlwEKE0dldENvbW1pdG1lbnRzQ2hhcnQSKS5ibHVlYXBpLmdjLnYxLkdldENvbW1pdG1lbnRzQ2hhcnRSZXF1ZXN0GicuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50c0NoYXJ0UmVzcG9uc2UiLILT5JMCJhIkL3YxL2NvbW1pdG1lbnRzL3tjb21taXRtZW50SWR9L2NoYXJ0Eq8BChlHZXRDb21taXRtZW50c1V0aWxpemF0aW9uEi8uYmx1ZWFwaS5nYy52MS5HZXRDb21taXRtZW50c1V0aWxpemF0aW9uUmVxdWVzdBotLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudHNVdGlsaXphdGlvblJlc3BvbnNlIjKC0+STAiwSKi92MS9jb21taXRtZW50cy97Y29tbWl0bWVudElkfS91dGlsaXphdGlvbhKMAQoVUmVhZENvbW1pdG1lbnRSZXBvcnRzEisuYmx1ZWFwaS5nYy52MS5SZWFkQ29tbWl0bWVudFJlcG9ydHNSZXF1ZXN0Gh8uYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UmVwb3J0IiOC0+STAh06ASoiGC92MS9yZXBvcnRzL2ludm9pY2U6cmVhZDABErIBChxSZWFkQ29tbWl0bWVudFJlcG9ydEFjY291bnRzEjIuYmx1ZWFwaS5nYy52MS5SZWFkQ29tbWl0bWVudFJlcG9ydEFjY291bnRzUmVxdWVzdBomLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudFJlcG9ydEFjY291bnQiNILT5JMCLjoBKiIpL3YxL3JlcG9ydHMvaW52b2ljZS97bW9udGh9L2FjY291bnRzOnJlYWQwARJjCgpHZXRNZXRyaWNzEiAuYmx1ZWFwaS5nYy52MS5HZXRNZXRyaWNzUmVxdWVzdBoeLmJsdWVhcGkuZ2MudjEuTWV0cmljc1Jlc3BvbnNlIhOC0+STAg0SCy92MS9tZXRyaWNzEnEKDUxpc3RSZXNvdXJjZXMSIy5ibHVlYXBpLmdjLnYxLkxpc3RSZXNvdXJjZXNSZXF1ZXN0GiQuYmx1ZWFwaS5nYy52MS5MaXN0UmVzb3VyY2VzUmVzcG9uc2UiFYLT5JMCDxINL3YxL3Jlc291cmNlcxKhAQoVR2V0UmVzb3VyY2VEYWlseVVzYWdlEisuYmx1ZWFwaS5nYy52MS5HZXRSZXNvdXJjZURhaWx5VXNhZ2VSZXF1ZXN0GiwuYmx1ZWFwaS5nYy52MS5HZXRSZXNvdXJjZURhaWx5VXNhZ2VSZXNwb25zZSItgtPkkwInEiUvdjEvcmVzb3VyY2VzL3tyZXNvdXJjZUlkfS9kYWlseXVzYWdlEpsBChdMaXN0UmVzZXJ2YWJsZVJlc291cmNlcxItLmJsdWVhcGkuZ2MudjEuTGlzdFJlc2VydmFibGVSZXNvdXJjZXNSZXF1ZXN0Gi4uYmx1ZWFwaS5nYy52MS5MaXN0UmVzZXJ2YWJsZVJlc291cmNlc1Jlc3BvbnNlIiGC0+STAhsSGS92MS9jb21taXRtZW50cy9yZXNvdXJjZXMSqAEKGkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50EjAuYmx1ZWFwaS5nYy52MS5MaXN0UHVyY2hhc2VQbGFuc0J5U2VnbWVudFJlcXVlc3QaMS5ibHVlYXBpLmdjLnYxLkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVzcG9uc2UiJYLT5JMCHxIdL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMSxAEKIEdldFVwZGF0ZWRQdXJjaGFzZVBsYW5zQnlTZWdtZW50EjYuYmx1ZWFwaS5nYy52MS5HZXRVcGRhdGVkUHVyY2hhc2VQbGFuc0J5U2VnbWVudFJlcXVlc3QaNy5ibHVlYXBpLmdjLnYxLkdldFVwZGF0ZWRQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnM6dXBkYXRlEqgBChdHZXRQdXJjaGFzZVBsYW5zRGV0YWlscxItLmJsdWVhcGkuZ2MudjEuR2V0UHVyY2hhc2VQbGFuc0RldGFpbHNSZXF1ZXN0Gi4uYmx1ZWFwaS5nYy52MS5HZXRQdXJjaGFzZVBsYW5zRGV0YWlsc1Jlc3BvbnNlIi6C0+STAigSJi92MS9jb21taXRtZW50cy9wdXJjaGFzZXBsYW5zL3twbGFuSWR9EqsBChpTYXZlQ29tbWl0bWVudHNQbGFuQXNEcmFmdBIwLmJsdWVhcGkuZ2MudjEuU2F2ZUNvbW1pdG1lbnRzUGxhbkFzRHJhZnRSZXF1ZXN0GiIuYmx1ZWFwaS5nYy52MS5EZWZhdWx0UHVyY2hhc2VQbGFuIjeC0+STAjE6ASoiLC92MS9jb21taXRtZW50cy9wdXJjaGFzZXBsYW5zL2RyYWZ0L3twbGFuSWR9EqIBChZMaXN0RHJhZnRQdXJjaGFzZVBsYW5zEiwuYmx1ZWFwaS5nYy52MS5MaXN0RHJhZnRQdXJjaGFzZVBsYW5zUmVxdWVzdBotLmJsdWVhcGkuZ2MudjEuTGlzdERyYWZ0UHVyY2hhc2VQbGFuc1Jlc3BvbnNlIiuC0+STAiUSIy92MS9jb21taXRtZW50cy9wdXJjaGFzZXBsYW5zL2RyYWZ0ErMBChdEZWxldGVEcmFmdFB1cmNoYXNlUGxhbhItLmJsdWVhcGkuZ2MudjEuRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW5SZXF1ZXN0Gi4uYmx1ZWFwaS5nYy52MS5EZWxldGVEcmFmdFB1cmNoYXNlUGxhblJlc3BvbnNlIjmC0+STAjMqMS92MS9jb21taXRtZW50cy9wdXJjaGFzZXBsYW5zL2RyYWZ0L3tkcmFmdFBsYW5JZH0SugEKG0dldEF2YWlsYWJsZUNvbW1pdG1lbnRUeXBlcxIxLmJsdWVhcGkuZ2MudjEuR2V0QXZhaWxhYmxlQ29tbWl0bWVudFR5cGVzUmVxdWVzdBoyLmJsdWVhcGkuZ2MudjEuR2V0QXZhaWxhYmxlQ29tbWl0bWVudFR5cGVzUmVzcG9uc2UiNILT5JMCLhIsL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMvYXZhaWxhYmxldHlwZXMSsgEKGkNyZWF0ZUN1c3RvbUNvbW1pdG1lbnRQbGFuEjAuYmx1ZWFwaS5nYy52MS5DcmVhdGVDdXN0b21Db21taXRtZW50UGxhblJlcXVlc3QaMS5ibHVlYXBpLmdjLnYxLkNyZWF0ZUN1c3RvbUNvbW1pdG1lbnRQbGFuUmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMvY3VzdG9tEm8KC1JlZ2lzdGVyT3JnEiEuYmx1ZWFwaS5nYy52MS5SZWdpc3Rlck9yZ1JlcXVlc3QaIi5ibHVlYXBpLmdjLnYxLlJlZ2lzdGVyT3JnUmVzcG9uc2UiGYLT5JMCEzoBKiIOL3YxL29uYm9hcmRpbmcSjgEKElN0YXJ0QXdzT25ib2FyZGluZxIoLmJsdWVhcGkuZ2MudjEuU3RhcnRBd3NPbmJvYXJkaW5nUmVxdWVzdBopLmJsdWVhcGkuZ2MudjEuU3RhcnRBd3NPbmJvYXJkaW5nUmVzcG9uc2UiI4LT5JMCHToBKiIYL3YxL29uYm9hcmRpbmcvYXdzL3N0YXJ0ErsBChxHZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlEjIuYmx1ZWFwaS5nYy52MS5HZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlUmVxdWVzdBozLmJsdWVhcGkuZ2MudjEuR2V0QXdzQ2xvdWRGb3JtYXRpb25UZW1wbGF0ZVJlc3BvbnNlIjKC0+STAiwSKi92MS9vbmJvYXJkaW5nL2F3cy9jbG91ZGZvcm1hdGlvbi90ZW1wbGF0ZRKpAQoUR2V0QXdzTGF1bmNoU3RhY2tVcmwSKi5ibHVlYXBpLmdjLnYxLkdldEF3c0xhdW5jaFN0YWNrVXJsUmVxdWVzdBorLmJsdWVhcGkuZ2MudjEuR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXNwb25zZSI4gtPkkwIyEjAvdjEvb25ib2FyZGluZy9hd3MvY2xvdWRmb3JtYXRpb24vbGF1bmNoc3RhY2t1cmwSkgEKE1ZlcmlmeUF3c09uYm9hcmRpbmcSKS5ibHVlYXBpLmdjLnYxLlZlcmlmeUF3c09uYm9hcmRpbmdSZXF1ZXN0GiouYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL29uYm9hcmRpbmcvYXdzL3ZlcmlmeRKTAQoTR2V0T25ib2FyZGluZ1N0YXR1cxIpLmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1JlcXVlc3QaKi5ibHVlYXBpLmdjLnYxLkdldE9uYm9hcmRpbmdTdGF0dXNSZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvb25ib2FyZGluZy9zdGF0dXM6cmVhZBKIAQoRTGlzdFBheWVyQWNjb3VudHMSJy5ibHVlYXBpLmdjLnYxLkxpc3RQYXllckFjY291bnRzUmVxdWVzdBooLmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZSIggtPkkwIaEhgvdjEvbWFuYWdlbWVudHMvYWNjb3VudHMSpgEKFlNldFBheWVyQWNjb3VudEVuYWJsZWQSLC5ibHVlYXBpLmdjLnYxLlNldFBheWVyQWNjb3VudEVuYWJsZWRSZXF1ZXN0Gi0uYmx1ZWFwaS5nYy52MS5TZXRQYXllckFjY291bnRFbmFibGVkUmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL21hbmFnZW1lbnRzL2FjY291bnRzL3tjb21wYW55SWR9EpsBChVHZXRQYXllckFjY291bnRTdGF0dXMSKy5ibHVlYXBpLmdjLnYxLkdldFBheWVyQWNjb3VudFN0YXR1c1JlcXVlc3QaLC5ibHVlYXBpLmdjLnYxLkdldFBheWVyQWNjb3VudFN0YXR1c1Jlc3BvbnNlIieC0+STAiESHy92MS9tYW5hZ2VtZW50cy9hY2NvdW50cy9zdGF0dXMSjQEKEUxpc3RCaWxsaW5nR3JvdXBzEicuYmx1ZWFwaS5nYy52MS5MaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QaKC5ibHVlYXBpLmdjLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVzcG9uc2UiJYLT5JMCHxIdL3YxL21hbmFnZW1lbnRzL2JpbGxpbmdncm91cHMSqAEKFVNldEJpbGxpbmdHcm91cFN0YXR1cxIrLmJsdWVhcGkuZ2MudjEuU2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVxdWVzdBosLmJsdWVhcGkuZ2MudjEuU2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVzcG9uc2UiNILT5JMCLjoBKiIpL3YxL21hbmFnZW1lbnRzL2JpbGxpbmdncm91cHMve2NvbXBhbnlJZH0SoAEKFUdldEJpbGxpbmdHcm91cFN0YXR1cxIrLmJsdWVhcGkuZ2MudjEuR2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVxdWVzdBosLmJsdWVhcGkuZ2MudjEuR2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVzcG9uc2UiLILT5JMCJhIkL3YxL21hbmFnZW1lbnRzL2JpbGxpbmdncm91cHMvc3RhdHVzEqABChRWYWxpZGF0ZUJpbGxpbmdHcm91cBIqLmJsdWVhcGkuZ2MudjEuVmFsaWRhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0GisuYmx1ZWFwaS5nYy52MS5WYWxpZGF0ZUJpbGxpbmdHcm91cFJlc3BvbnNlIi+C0+STAik6ASoiJC92MS9vbmJvYXJkaW5nL2JpbGxpbmdncm91cDp2YWxpZGF0ZRKjAQoSR2V0QXdzUHJpdmF0ZU9mZmVyEiguYmx1ZWFwaS5nYy52MS5HZXRBd3NQcml2YXRlT2ZmZXJSZXF1ZXN0GikuYmx1ZWFwaS5nYy52MS5HZXRBd3NQcml2YXRlT2ZmZXJSZXNwb25zZSI4gtPkkwIyEjAvdjEvb25ib2FyZGluZy9hd3MvcHJpdmF0ZW9mZmVyL3twYXllckFjY291bnRJZH0SrwEKF0FjY2VwdEJpbGxpbmdHcm91cFRlcm1zEi0uYmx1ZWFwaS5nYy52MS5BY2NlcHRCaWxsaW5nR3JvdXBUZXJtc1JlcXVlc3QaLi5ibHVlYXBpLmdjLnYxLkFjY2VwdEJpbGxpbmdHcm91cFRlcm1zUmVzcG9uc2UiNYLT5JMCLzoBKiIqL3YxL21hbmFnZW1lbnRzL2JpbGxpbmdncm91cHMvdGVybXM6YWNjZXB0Es8BCiJHZXRHdWFyYW50ZWVkQ29tbWl0bWVudFRlbXBsYXRlVXJsEjguYmx1ZWFwaS5nYy52MS5HZXRHdWFyYW50ZWVkQ29tbWl0bWVudFRlbXBsYXRlVXJsUmVxdWVzdBo5LmJsdWVhcGkuZ2MudjEuR2V0R3VhcmFudGVlZENvbW1pdG1lbnRUZW1wbGF0ZVVybFJlc3BvbnNlIjSC0+STAi4SLC92MS9vbmJvYXJkaW5nL2F3cy9jZnRlbXBsYXRlL2d1YXJhbnRlZWQ6dXJsEsgBCiBDcmVhdGVHdWFyYW50ZWVkQ29tbWl0bWVudEFjY2VzcxI2LmJsdWVhcGkuZ2MudjEuQ3JlYXRlR3VhcmFudGVlZENvbW1pdG1lbnRBY2Nlc3NSZXF1ZXN0GjcuYmx1ZWFwaS5nYy52MS5DcmVhdGVHdWFyYW50ZWVkQ29tbWl0bWVudEFjY2Vzc1Jlc3BvbnNlIjOC0+STAi06ASoiKC92MS9vbmJvYXJkaW5nL2F3cy9jZnRlbXBsYXRlL2d1YXJhbnRlZWQSlgEKFFN0YXJ0QXp1cmVPbmJvYXJkaW5nEiouYmx1ZWFwaS5nYy52MS5TdGFydEF6dXJlT25ib2FyZGluZ1JlcXVlc3QaKy5ibHVlYXBpLmdjLnYxLlN0YXJ0QXp1cmVPbmJvYXJkaW5nUmVzcG9uc2UiJYLT5JMCHzoBKiIaL3YxL29uYm9hcmRpbmcvYXp1cmUvc3RhcnQSoAEKFVVwZGF0ZUF6dXJlT25ib2FyZGluZxIrLmJsdWVhcGkuZ2MudjEuVXBkYXRlQXp1cmVPbmJvYXJkaW5nUmVxdWVzdBojLmJsdWVhcGkuZ2MudjEuQXp1cmVPbmJvYXJkaW5nU3RhdGUiNYLT5JMCLzoBKiIqL3YxL29uYm9hcmRpbmcvYXp1cmUve29uYm9hcmRpbmdJZH06dXBkYXRlErMBChlHZXRBenVyZU9uYm9hcmRpbmdBdXRoVXJsEi8uYmx1ZWFwaS5nYy52MS5HZXRBenVyZU9uYm9hcmRpbmdBdXRoVXJsUmVxdWVzdBowLmJsdWVhcGkuZ2MudjEuR2V0QXp1cmVPbmJvYXJkaW5nQXV0aFVybFJlc3BvbnNlIjOC0+STAi0SKy92MS9vbmJvYXJkaW5nL2F6dXJlL3tvbmJvYXJkaW5nSWR9L2F1dGh1cmwSpgEKF1ZhbGlkYXRlQXp1cmVBcHBJbnN0YWxsEi0uYmx1ZWFwaS5nYy52MS5WYWxpZGF0ZUF6dXJlQXBwSW5zdGFsbFJlcXVlc3QaIy5ibHVlYXBpLmdjLnYxLkF6dXJlT25ib2FyZGluZ1N0YXRlIjeC0+STAjE6ASoiLC92MS9vbmJvYXJkaW5nL2F6dXJlL3tvbmJvYXJkaW5nSWR9L3ZhbGlkYXRlEroBChtMaXN0QXp1cmVPbmJvYXJkaW5nQWNjb3VudHMSMS5ibHVlYXBpLmdjLnYxLkxpc3RBenVyZU9uYm9hcmRpbmdBY2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmdjLnYxLkxpc3RBenVyZU9uYm9hcmRpbmdBY2NvdW50c1Jlc3BvbnNlIjSC0+STAi4SLC92MS9vbmJvYXJkaW5nL2F6dXJlL3tvbmJvYXJkaW5nSWR9L2FjY291bnRzEqIBChZDcmVhdGVBenVyZUludGVncmF0aW9uEiwuYmx1ZWFwaS5nYy52MS5DcmVhdGVBenVyZUludGVncmF0aW9uUmVxdWVzdBotLmJsdWVhcGkuZ2MudjEuQ3JlYXRlQXp1cmVJbnRlZ3JhdGlvblJlc3BvbnNlIiuC0+STAiU6ASoiIC92MS9vbmJvYXJkaW5nL2F6dXJlL2ludGVncmF0aW9uEp0BChVMaXN0QXp1cmVJbnRlZ3JhdGlvbnMSKy5ibHVlYXBpLmdjLnYxLkxpc3RBenVyZUludGVncmF0aW9uc1JlcXVlc3QaLC5ibHVlYXBpLmdjLnYxLkxpc3RBenVyZUludGVncmF0aW9uc1Jlc3BvbnNlIimC0+STAiMSIS92MS9vbmJvYXJkaW5nL2F6dXJlL2ludGVncmF0aW9ucxKMAQoVR2V0VGVybXNDb25zZW50U3RhdHVzEisuYmx1ZWFwaS5nYy52MS5HZXRUZXJtc0NvbnNlbnRTdGF0dXNSZXF1ZXN0GiwuYmx1ZWFwaS5nYy52MS5HZXRUZXJtc0NvbnNlbnRTdGF0dXNSZXNwb25zZSIYgtPkkwISEhAvdjEvdGVybXMvc3RhdHVzEooBChBHZXRUZXJtc0RvY3VtZW50EiYuYmx1ZWFwaS5nYy52MS5HZXRUZXJtc0RvY3VtZW50UmVxdWVzdBonLmJsdWVhcGkuZ2MudjEuR2V0VGVybXNEb2N1bWVudFJlc3BvbnNlIiWC0+STAh8SHS92MS90ZXJtcy9kb2N1bWVudC97bGFuZ3VhZ2V9EnEKC0FjY2VwdFRlcm1zEiEuYmx1ZWFwaS5nYy52MS5BY2NlcHRUZXJtc1JlcXVlc3QaIi5ibHVlYXBpLmdjLnYxLkFjY2VwdFRlcm1zUmVzcG9uc2UiG4LT5JMCFToBKiIQL3YxL3Rlcm1zOmFjY2VwdBqiAZJBngESUChBbHBoYSkgR3VhcmFudGVlZENvbW1pdG1lbnRzIEFQSS4gQmFzZSBVUkw6IGh0dHBzOi8vYXBpLmFscGhhdXMuY2xvdWQvbS9ibHVlL2djGkoKElNlcnZpY2UgZGVmaW5pdGlvbhI0aHR0cHM6Ly9naXRodWIuY29tL2FscGhhdXNsYWJzL2JsdWVhcGkvdHJlZS9tYWluL2djL0JVChRjbG91ZC5hbHBoYXVzLmFwaS5nY0IaR3VhcmFudGVlZENvbW1pdG1lbnRzUHJvdG9aIWdpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS9nY2IGcHJvdG8z", [file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_struct, file_protoc_gen_openapiv2_options_annotations]);
18
+ fileDesc("Cg5nYy92MS9nYy5wcm90bxINYmx1ZWFwaS5nYy52MSIeChxHZXRUZXJtc0NvbnNlbnRTdGF0dXNSZXF1ZXN0IjEKF0dldFRlcm1zRG9jdW1lbnRSZXF1ZXN0EhYKCGxhbmd1YWdlGAEgASgJQgTiQQECIi0KEkFjY2VwdFRlcm1zUmVxdWVzdBIXCgl2ZXJzaW9uSWQYASABKAlCBOJBAQIiEQoPTGlzdE9yZ3NSZXF1ZXN0IiwKGkNvbW1pdG1lbnRQbGFuQXBwbHlSZXF1ZXN0Eg4KBnBsYW5JZBgBIAEoCSIYChZMaXN0Q29tbWl0bWVudHNSZXF1ZXN0ImcKGkdldENvbW1pdG1lbnRzQ2hhcnRSZXF1ZXN0EhQKDGNvbW1pdG1lbnRJZBgBIAEoCRIPCgdncm91cEJ5GAIgASgJEhEKCXN0YXJ0RGF0ZRgDIAEoCRIPCgdlbmREYXRlGAQgASgJIjgKIEdldENvbW1pdG1lbnRzVXRpbGl6YXRpb25SZXF1ZXN0EhQKDGNvbW1pdG1lbnRJZBgBIAEoCSIeChxSZWFkQ29tbWl0bWVudFJlcG9ydHNSZXF1ZXN0IjoKI1JlYWRDb21taXRtZW50UmVwb3J0QWNjb3VudHNSZXF1ZXN0EhMKBW1vbnRoGAEgASgJQgTiQQECIj4KEUdldE1ldHJpY3NSZXF1ZXN0EikKCHByb3ZpZGVyGAEgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlciKjAQoUTGlzdFJlc291cmNlc1JlcXVlc3QSKQoIcHJvdmlkZXIYASABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEhEKCXNlZ21lbnRJZBgCIAEoCRIOCgZzZWFyY2gYAyABKAkSDAoEZGVzYxgEIAEoCBIPCgdvcmRlckJ5GAUgASgJEgwKBHBhZ2UYBiABKAUSEAoIcGFnZVNpemUYByABKAUijAEKHEdldFJlc291cmNlRGFpbHlVc2FnZVJlcXVlc3QSEgoKcmVzb3VyY2VJZBgBIAEoCRIRCglzdGFydERhdGUYAiABKAkSDwoHZW5kRGF0ZRgDIAEoCRIUCgxjYXRhbG9nU2t1SWQYBCABKAkSDAoEcGFnZRgFIAEoBRIQCghwYWdlU2l6ZRgGIAEoBSIzCh5MaXN0UmVzZXJ2YWJsZVJlc291cmNlc1JlcXVlc3QSEQoJY29tcGFueUlkGAEgASgJIiMKIUxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdCIwCh5HZXRQdXJjaGFzZVBsYW5zRGV0YWlsc1JlcXVlc3QSDgoGcGxhbklkGAEgASgJIikKJ0dldFVwZGF0ZWRQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdCImCgdPcmdVc2VyEg0KBWVtYWlsGAEgASgJEgwKBHJvbGUYAiABKAkiLAoKTWVtYmVyc2hpcBIMCgRyb2xlGAEgASgJEhAKCHVzZXJuYW1lGAIgASgJImIKB0FkZHJlc3MSDQoFbGluZTEYASABKAkSDAoEY2l0eRgCIAEoCRINCgVzdGF0ZRgDIAEoCRILCgN6aXAYBCABKAkSDwoHY291bnRyeRgFIAEoCRINCgVsaW5lMhgGIAEoCSJUCg5Bd3NFeGlzdGluZ0N1chIOCgZyZWdpb24YASABKAkSDgoGYnVja2V0GAIgASgJEg4KBnByZWZpeBgDIAEoCRISCgpyZXBvcnROYW1lGAQgASgJIksKD1Rlcm1zQWNjZXB0YW5jZRIQCghhY2NlcHRlZBgBIAEoCBISCgphY2NlcHRlZEF0GAIgASgJEhIKCmFjY2VwdGVkQnkYAyABKAkiiwIKElJlZ2lzdGVyT3JnUmVxdWVzdBIMCgRuYW1lGAEgASgJEhsKE2xhYnJhU3Vic2NyaXB0aW9uSWQYAiABKAkSJQoFdXNlcnMYAyADKAsyFi5ibHVlYXBpLmdjLnYxLk9yZ1VzZXISDgoGZG9tYWluGAQgASgJEi4KDnByaW1hcnlBZGRyZXNzGAUgASgLMhYuYmx1ZWFwaS5nYy52MS5BZGRyZXNzEh8KF2F3c01hcmtldHBsYWNlT2ZmZXJMaW5rGAYgASgJEiEKGWF6dXJlTWFya2V0cGxhY2VPZmZlckxpbmsYByABKAkSHwoXZ2NwTWFya2V0cGxhY2VPZmZlckxpbmsYCCABKAkiiQEKGVN0YXJ0QXdzT25ib2FyZGluZ1JlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkSFgoOcGF5ZXJBY2NvdW50SWQYBCABKAkSGAoQcGF5ZXJBY2NvdW50TmFtZRgFIAEoCSKTAQojR2V0QXdzQ2xvdWRGb3JtYXRpb25UZW1wbGF0ZVJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkSFgoOcGF5ZXJBY2NvdW50SWQYBCABKAkSGAoQcGF5ZXJBY2NvdW50TmFtZRgFIAEoCSKLAQobR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIPCgdnY09yZ0lkGAMgASgJEhYKDnBheWVyQWNjb3VudElkGAQgASgJEhgKEHBheWVyQWNjb3VudE5hbWUYBSABKAkitQEKGlZlcmlmeUF3c09uYm9hcmRpbmdSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIPCgdnY09yZ0lkGAMgASgJEhQKDG9uYm9hcmRpbmdJZBgEIAEoCRIRCglhY2NvdW50SWQYBSABKAkSMgoLZXhpc3RpbmdDdXIYBiABKAsyHS5ibHVlYXBpLmdjLnYxLkF3c0V4aXN0aW5nQ3VyIl8KGkdldE9uYm9hcmRpbmdTdGF0dXNSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIWCg5wYXllckFjY291bnRJZBgDIAEoCSIaChhMaXN0UGF5ZXJBY2NvdW50c1JlcXVlc3QiQwodU2V0UGF5ZXJBY2NvdW50RW5hYmxlZFJlcXVlc3QSEQoJY29tcGFueUlkGAEgASgJEg8KB2VuYWJsZWQYAiABKAgiHgocR2V0UGF5ZXJBY2NvdW50U3RhdHVzUmVxdWVzdCIaChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QiVgocU2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVxdWVzdBIRCgljb21wYW55SWQYASABKAkSDwoHZW5hYmxlZBgCIAEoCBISCgpuZXdWZXJzaW9uGAMgASgIIh4KHEdldEJpbGxpbmdHcm91cFN0YXR1c1JlcXVlc3QiRAobVmFsaWRhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0EhEKCWNvbXBhbnlJZBgBIAEoCRISCgpuZXdWZXJzaW9uGAIgASgIIkUKGUdldEF3c1ByaXZhdGVPZmZlclJlcXVlc3QSFgoOcGF5ZXJBY2NvdW50SWQYASABKAkSEAoIcmVjcmVhdGUYAiABKAgiIAoeQWNjZXB0QmlsbGluZ0dyb3VwVGVybXNSZXF1ZXN0IsIHCiFTYXZlQ29tbWl0bWVudHNQbGFuQXNEcmFmdFJlcXVlc3QSDgoGcGxhbklkGAEgASgJEhYKDnJlc2VydmF0aW9uSWRzGAIgAygJEhMKC3Jlc291cmNlSWRzGAMgAygJEhYKDm1heFVwZnJvbnRDb3N0GAQgASgBEikKCHByb3ZpZGVyGAUgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIPCgdlbmREYXRlGAYgASgJEhEKCXN0YXJ0RGF0ZRgHIAEoCRIRCglzZWdtZW50SWQYCCABKAkSDgoGc3RhdHVzGAkgASgJEhMKC2Rlc2NyaXB0aW9uGAogASgJEgwKBG5hbWUYCyABKAkSHgoWcHJlZmVycmVkUGF5bWVudE9wdGlvbhgMIAEoCRIdChVpbmNsdWRlZENvbnRyYWN0VGVybXMYDSADKAkSOgoVaW5jbHVkZWRDb250cmFjdFNwZWNzGA4gAygLMhsuYmx1ZWFwaS5nYy52MS5Db250cmFjdFNwZWMSKgoKY292ZXJhZ2VJZBgPIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIRCgljcmVhdGVkQXQYECABKAkSKQoJY3JlYXRlZEJ5GBEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhIKCmRhdGFTb3VyY2UYEiABKAkSLwoPZXhlY3V0aW9uUG9saWN5GBMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhYKDmZsYWdnZWRBY3Rpb25zGBQgAygJEgoKAmlkGBUgASgJEhUKDWlzQ2FsY3VsYXRpbmcYFiABKAgSEQoJaXNEZWZhdWx0GBcgASgIEhAKCGlzTG9ja2VkGBggASgIEhUKDWlzUmVjb21tZW5kZWQYGSABKAgSEQoJaXNSZW5ld2FsGBogASgIEg8KB2lzU2F2ZWQYGyABKAgSFAoMbGFzdE1vZGlmaWVkGBwgASgJEhIKCm1ldGFQbGFuSWQYHSABKAkSOgoabWluaW11bVVwZnJvbnRJbnRlcmVzdFJhdGUYHiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSDQoFb3JnSWQYHyABKAkSEAoIcGxhblR5cGUYICABKAkSPgoecmVjb21tZW5kV2l0aGluQ292ZXJlZEFjY291bnRzGCEgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEicKB3NlZ21lbnQYIiABKAsyFi5ibHVlYXBpLmdjLnYxLlNlZ21lbnQiQwodTGlzdERyYWZ0UHVyY2hhc2VQbGFuc1JlcXVlc3QSDwoHaXNEcmFmdBgBIAEoCBIRCgljb21wYW55SWQYAiABKAkiSAoeRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW5SZXF1ZXN0EhMKC2RyYWZ0UGxhbklkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCSI2CiJHZXRBdmFpbGFibGVDb21taXRtZW50VHlwZXNSZXF1ZXN0EhAKCHByb3ZpZGVyGAEgASgJIqMCCiFDcmVhdGVDdXN0b21Db21taXRtZW50UGxhblJlcXVlc3QSEAoIcHJvdmlkZXIYASABKAkSEQoJc3RhcnREYXRlGAIgASgJEg8KB2VuZERhdGUYAyABKAkSEQoJY29tcGFueUlkGAQgASgJEg4KBnN0YXR1cxgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIMCgRuYW1lGAcgASgJEjoKFWluY2x1ZGVkQ29udHJhY3RTcGVjcxgIIAMoCzIbLmJsdWVhcGkuZ2MudjEuQ29udHJhY3RTcGVjEh0KFWluY2x1ZGVkQ29udHJhY3RUZXJtcxgJIAMoCRITCgtyZXNvdXJjZUlkcxgKIAMoCRISCgpjb21wYW55SWRzGAsgAygJIj8KKUdldEd1YXJhbnRlZWRDb21taXRtZW50VGVtcGxhdGVVcmxSZXF1ZXN0EhIKCmV4dGVybmFsSWQYASABKAkiTQonQ3JlYXRlR3VhcmFudGVlZENvbW1pdG1lbnRBY2Nlc3NSZXF1ZXN0Eg4KBnRhcmdldBgBIAEoCRISCgpleHRlcm5hbElkGAIgASgJIoMBChtTdGFydEF6dXJlT25ib2FyZGluZ1JlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkSEAoIdGVuYW50SWQYBCABKAkSFgoOc3Vic2NyaXB0aW9uSWQYBSABKAki0gUKHFVwZGF0ZUF6dXJlT25ib2FyZGluZ1JlcXVlc3QSFAoMb25ib2FyZGluZ0lkGAEgASgJEg8KB2djT3JnSWQYAiABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAyABKAkSEQoJY29tcGFueUlkGAQgASgJEhAKCHRlbmFudElkGAUgASgJEhYKDnN1YnNjcmlwdGlvbklkGAYgASgJEhMKC2FjY291bnRLaW5kGAcgASgJEhIKCmFjY291bnRJZHMYCCADKAkSFQoNYmxvYkNvbnRhaW5lchgJIAEoCRIVCg1yZXNvdXJjZUdyb3VwGAogASgJEhYKDnN0b3JhZ2VBY2NvdW50GAsgASgJEhAKCHJvbGVOYW1lGAwgASgJEjMKE3Jlc291cmNlR3JvdXBSZWdpb24YDSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNAoUc3RvcmFnZUFjY291bnRSZWdpb24YDiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMQoRcmVzb3VyY2VHcm91cFRhZ3MYDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMgoSc3RvcmFnZUFjY291bnRUYWdzGBAgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCWNvbXBsZXRlZBgRIAEoCBIRCgljcmVhdGVkQXQYEiABKAkSOgoJY3JlYXRlZEJ5GBMgASgLMicuYmx1ZWFwaS5nYy52MS5BenVyZU9uYm9hcmRpbmdDcmVhdGVkQnkSKwoLaW50ZWdyYXRpb24YFCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSFQoNaW50ZWdyYXRpb25JZBgVIAEoCRIQCghwcm92aWRlchgWIAEoCRIrCgNvcmcYFyABKAsyHi5ibHVlYXBpLmdjLnYxLkF6dXJlQXJjaGVyYU9yZyJzCiBHZXRBenVyZU9uYm9hcmRpbmdBdXRoVXJsUmVxdWVzdBIUCgxvbmJvYXJkaW5nSWQYASABKAkSDwoHZ2NPcmdJZBgCIAEoCRIQCgh0ZW5hbnRJZBgDIAEoCRIWCg5zdWJzY3JpcHRpb25JZBgEIAEoCSK3BQoeVmFsaWRhdGVBenVyZUFwcEluc3RhbGxSZXF1ZXN0EhQKDG9uYm9hcmRpbmdJZBgBIAEoCRIPCgdnY09yZ0lkGAIgASgJEgwKBHR5cGUYAyABKAkSEAoIdGVuYW50SWQYBCABKAkSFgoOc3Vic2NyaXB0aW9uSWQYBSABKAkSEwoLYWNjb3VudEtpbmQYBiABKAkSEgoKYWNjb3VudElkcxgHIAMoCRIVCg1ibG9iQ29udGFpbmVyGAggASgJEhUKDXJlc291cmNlR3JvdXAYCSABKAkSFgoOc3RvcmFnZUFjY291bnQYCiABKAkSEAoIcm9sZU5hbWUYCyABKAkSMwoTcmVzb3VyY2VHcm91cFJlZ2lvbhgMIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRI0ChRzdG9yYWdlQWNjb3VudFJlZ2lvbhgNIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIxChFyZXNvdXJjZUdyb3VwVGFncxgOIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIyChJzdG9yYWdlQWNjb3VudFRhZ3MYDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJY29tcGxldGVkGBAgASgIEhEKCWNyZWF0ZWRBdBgRIAEoCRI6CgljcmVhdGVkQnkYEiABKAsyJy5ibHVlYXBpLmdjLnYxLkF6dXJlT25ib2FyZGluZ0NyZWF0ZWRCeRIrCgtpbnRlZ3JhdGlvbhgTIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIVCg1pbnRlZ3JhdGlvbklkGBQgASgJEhAKCHByb3ZpZGVyGBUgASgJEisKA29yZxgWIAEoCzIeLmJsdWVhcGkuZ2MudjEuQXp1cmVBcmNoZXJhT3JnIksKIkxpc3RBenVyZU9uYm9hcmRpbmdBY2NvdW50c1JlcXVlc3QSFAoMb25ib2FyZGluZ0lkGAEgASgJEg8KB2djT3JnSWQYAiABKAkilAQKHUNyZWF0ZUF6dXJlSW50ZWdyYXRpb25SZXF1ZXN0Eg8KB2djT3JnSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSEQoJY29tcGFueUlkGAMgASgJEhYKDnBheWVyQWNjb3VudElkGAQgASgJEgwKBHR5cGUYBSABKAkSEAoIdGVuYW50SWQYBiABKAkSFgoOc3Vic2NyaXB0aW9uSWQYByABKAkSFAoMb25ib2FyZGluZ0lkGAggASgJEhMKC2FjY291bnRLaW5kGAkgASgJEhIKCmFjY291bnRJZHMYCiADKAkSFQoNYmxvYkNvbnRhaW5lchgLIAEoCRIVCg1yZXNvdXJjZUdyb3VwGAwgASgJEhYKDnN0b3JhZ2VBY2NvdW50GA0gASgJEhAKCHJvbGVOYW1lGA4gASgJEjMKE3Jlc291cmNlR3JvdXBSZWdpb24YDyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSNAoUc3RvcmFnZUFjY291bnRSZWdpb24YECABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMQoRcmVzb3VyY2VHcm91cFRhZ3MYESABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSMgoSc3RvcmFnZUFjY291bnRUYWdzGBIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlIi8KHExpc3RBenVyZUludGVncmF0aW9uc1JlcXVlc3QSDwoHZ2NPcmdJZBgBIAEoCSJGCh1EZWxldGVBenVyZUludGVncmF0aW9uUmVxdWVzdBIPCgdnY09yZ0lkGAEgASgJEhQKDG9uYm9hcmRpbmdJZBgCIAEoCSJ3ChVUZXJtc09mU2VydmljZVZlcnNpb24SCgoCaWQYASABKAkSDwoHcHJvZHVjdBgCIAEoCRIUCgx2ZXJzaW9uTGFiZWwYAyABKAkSFgoOY2xhc3NpZmljYXRpb24YBCABKAkSEwoLcHVibGlzaGVkQXQYBSABKAki6QEKHUdldFRlcm1zQ29uc2VudFN0YXR1c1Jlc3BvbnNlEi8KBXN0YXRlGAEgASgOMiAuYmx1ZWFwaS5nYy52MS5UZXJtc0NvbnNlbnRTdGF0ZRIVCg1hY2Nlc3NBbGxvd2VkGAIgASgIEhAKCGJsb2NraW5nGAMgASgIEhgKEHNob3dVcGRhdGVCYW5uZXIYBCABKAgSFwoPYmFubmVyRXhwaXJlc0F0GAUgASgJEjsKDWFjdGl2ZVZlcnNpb24YBiABKAsyJC5ibHVlYXBpLmdjLnYxLlRlcm1zT2ZTZXJ2aWNlVmVyc2lvbiKFAQoYR2V0VGVybXNEb2N1bWVudFJlc3BvbnNlEhEKCXZlcnNpb25JZBgBIAEoCRIPCgdwcm9kdWN0GAIgASgJEhAKCGxhbmd1YWdlGAMgASgJEhMKC2NvbnRlbnRUeXBlGAQgASgJEgsKA3VybBgFIAEoCRIRCglleHBpcmVzQXQYBiABKAkiaAoSVGVybXNDb25zZW50UmVjb3JkEg8KB3Byb2R1Y3QYASABKAkSGQoRYWNjZXB0ZWRWZXJzaW9uSWQYAiABKAkSEgoKYWNjZXB0ZWRCeRgDIAEoCRISCgphY2NlcHRlZEF0GAQgASgJIo4BChNBY2NlcHRUZXJtc1Jlc3BvbnNlEjIKB2NvbnNlbnQYASABKAsyIS5ibHVlYXBpLmdjLnYxLlRlcm1zQ29uc2VudFJlY29yZBJDCg1jb25zZW50U3RhdHVzGAIgASgLMiwuYmx1ZWFwaS5nYy52MS5HZXRUZXJtc0NvbnNlbnRTdGF0dXNSZXNwb25zZSIxCgNPcmcSDQoFb3JnSWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgVlbWFpbBgDIAEoCSLzBAoVQ29tbWl0bWVudFBsYW5EZXRhaWxzEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDQoFb3JnSWQYBCABKAkSEQoJY3JlYXRlZEF0GAUgASgJEhUKDWlzQ2FsY3VsYXRpbmcYBiABKAgSDgoGc3RhdHVzGAcgASgJEg8KB21heFRlcm0YCCABKAkSIQoZY292ZXJlZE9uZGVtYW5kQ29zdEhvdXJseRgJIAEoARIgChhiZWZvcmVPbmRlbWFuZENvc3RIb3VybHkYCiABKAESIAoYYmVmb3JlUmVzZXJ2ZWRDb3N0SG91cmx5GAsgASgBEhsKE2Ftb3J0aXplZENvc3RIb3VybHkYDCABKAESGwoTcmVjdXJyaW5nQ29zdEhvdXJseRgNIAEoARIZChF1cGZyb250Q29zdEhvdXJseRgOIAEoARIYChBiZWZvcmVDb3N0SG91cmx5GA8gASgBEhcKD2FmdGVyQ29zdEhvdXJseRgQIAEoARIXCg90b3RhbENvc3RIb3VybHkYESABKAESFQoNc2F2aW5nc0hvdXJseRgSIAEoARIRCglmZWVIb3VybHkYEyABKAESGgoSY29tbWl0bWVudENvdmVyYWdlGBQgASgBEh0KFW1pbmltdW1Db21taXRtZW50Q29zdBgVIAEoARIWCg5icmVha2V2ZW5Ib3VycxgWIAEoARIUCgx0b3RhbFNhdmluZ3MYFyABKAESFgoObW9udGhseVNhdmluZ3MYGCABKAESHgoWdG90YWxNb250aGx5QmVmb3JlQ29zdBgZIAEoASK0BgoWQ29tbWl0bWVudFBsYW5MaW5lSXRlbRIKCgJpZBgBIAEoCRIOCgZwbGFuSWQYAiABKAkSDwoHb2ZmZXJJZBgDIAEoCRIXCg9sZWFzZU1lbnVJdGVtSWQYBCABKAkSEQoJYWNjb3VudElkGAUgASgJEhsKE3JlY29tbWVuZGVkUXVhbnRpdHkYBiABKAESGAoQc2VsZWN0ZWRRdWFudGl0eRgHIAEoARIdChVyZWNvbW1lbmRlZENvbW1pdG1lbnQYCCABKAESGgoSc2VsZWN0ZWRDb21taXRtZW50GAkgASgBEhIKCmlzU2VsZWN0ZWQYCiABKAgSGgoSYWZ0ZXJBbW9ydGl6ZWRDb3N0GAsgASgBEhMKC3VwZnJvbnRDb3N0GAwgASgBEhUKDXJlY3VycmluZ0Nvc3QYDSABKAESEgoKYmVmb3JlQ29zdBgOIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYDyABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GBAgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYESABKAESGQoRYWZ0ZXJDb3ZlcmVkVW5pdHMYEiABKAESEQoJdG90YWxDb3N0GBMgASgBEhMKC21vbnRobHlDb3N0GBQgASgBEg8KB3NhdmluZ3MYFSABKAESFgoObW9udGhseVNhdmluZ3MYFiABKAESFAoMdG90YWxTYXZpbmdzGBcgASgBEgsKA2ZlZRgYIAEoARIUCgxkaXNjb3VudFJhdGUYGSABKAESFgoOYnJlYWtldmVuSG91cnMYGiABKAESFAoMY29udHJhY3RUZXJtGBsgASgJEhUKDXBheW1lbnRPcHRpb24YHCABKAkSLQoMY29udHJhY3RTcGVjGB0gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgVvZmZlchgeIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSHAoUcmVuZXdhbFJlc2VydmF0aW9uSWQYHyABKAkSFAoMY292ZXJlZFVuaXRzGCAgASgBEhUKDWFtb3J0aXplZENvc3QYISABKAEi1wUKG0NvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaBIKCgJpZBgBIAEoCRISCgp0b3RhbFVuaXRzGAIgASgBEhwKFGJlZm9yZVVuY292ZXJlZFVuaXRzGAMgASgBEhkKEWFmdGVyQ292ZXJlZFVuaXRzGAQgASgBEhsKE2FmdGVyVW5jb3ZlcmVkVW5pdHMYBSABKAESFQoNb25kZW1hbmRQcmljZRgGIAEoARIZChFpZkFsbE9uZGVtYW5kQ29zdBgHIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYCCABKAESGQoRYWZ0ZXJPbmRlbWFuZENvc3QYCSABKAESGwoTY292ZXJlZE9uZGVtYW5kQ29zdBgKIAEoARIaChJiZWZvcmVSZXNlcnZlZENvc3QYCyABKAESGQoRYWZ0ZXJSZXNlcnZlZENvc3QYDCABKAESEgoKYmVmb3JlQ29zdBgNIAEoARIRCglhZnRlckNvc3QYDiABKAESGQoRbW9udGhseUJlZm9yZUNvc3QYDyABKAESGAoQbW9udGhseUFmdGVyQ29zdBgQIAEoARIgChhtb250aGx5QWZ0ZXJSZXNlcnZlZENvc3QYESABKAESIAoYbW9udGhseUFmdGVyT25kZW1hbmRDb3N0GBIgASgBEhYKDmF2ZXJhZ2VTYXZpbmdzGBMgASgBEh0KFWF2ZXJhZ2VNb250aGx5U2F2aW5ncxgUIAEoARIRCgl1c2FnZVR5cGUYFSABKAkSEAoIY292ZXJhZ2UYFiABKAESKQoIcmVzb3VyY2UYFyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhQKDGNvdmVyZWRVbml0cxgYIAEoARIcChRleHBsYW5hdGlvblVubWF0Y2hlZBgZIAEoARIUCgxvbmRlbWFuZENvc3QYGiABKAESFAoMcmVzZXJ2ZWRDb3N0GBsgASgBIu4BCgVMZWFzZRIKCgJpZBgBIAEoCRINCgVvcmdJZBgCIAEoCRIdChVwcm92aWRlclJlc2VydmF0aW9uSWQYAyABKAkSEQoJYWNjb3VudElkGAQgASgJEg4KBnN0YXR1cxgFIAEoCRIRCglzdGFydERhdGUYBiABKAkSDwoHZW5kRGF0ZRgHIAEoCRISCgpsb2NraW5EYXRlGAggASgJEhMKC3VwZnJvbnRDb3N0GAkgASgBEhUKDXJlY3VycmluZ0Nvc3QYCiABKAESEQoJY3JlYXRlZEF0GAsgASgJEhEKCXVwZGF0ZWRBdBgMIAEoCSJJChBEYWlseVV0aWxpemF0aW9uEgwKBGRhdGUYASABKAkSEwoLdXRpbGl6YXRpb24YAiABKAESEgoKbmV0U2F2aW5ncxgDIAEoASLQBwoKQ29tbWl0bWVudBIKCgJpZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSFQoNYW1vcnRpemVkQ29zdBgDIAEoARIYChBiaWxsaW5nQWNjb3VudElkGAQgASgJEhEKCWNhblJlYmF0ZRgFIAEoCBIUCgxjb250cmFjdFRlcm0YBiABKAkSEwoLZGlzcGxheU5hbWUYByABKAkSFwoPZHVyYXRpb25TZWNvbmRzGAggASgBEh4KFmVmZmVjdGl2ZUluc3RhbmNlQ291bnQYCSABKAMSDwoHZW5kRGF0ZRgKIAEoCRIVCg1pbnN0YW5jZUNvdW50GAsgASgDEhYKDmluc3RhbmNlRmFtaWx5GAwgASgJEhQKDGluc3RhbmNlVHlwZRgNIAEoCRIQCghpc0FjdGl2ZRgOIAEoCBISCgppc0ZsZXhpYmxlGA8gASgIEhAKCGlzTGVhc2VkGBAgASgIEhEKCWlzTXVsdGlBehgRIAEoCBIXCg9sZWFzZUxvY2tpbkRhdGUYEiABKAkSEgoKbGVhc2VTdGFydBgTIAEoCRIZChFsZWFzZWREaXNwbGF5TmFtZRgUIAEoCRITCgttb250aGx5Q29zdBgVIAEoARIWCg5tb250aGx5U2F2aW5ncxgWIAEoARIMCgRuYW1lGBcgASgJEhIKCm5ldFNhdmluZ3MYGCABKAESEgoKb2ZmZXJpbmdJZBgZIAEoCRIVCg1wYXltZW50T3B0aW9uGBogASgJEhgKEHBvdGVudGlhbFNhdmluZ3MYGyABKAESGgoScHJvZHVjdERlc2NyaXB0aW9uGBwgASgJEhAKCHByb3ZpZGVyGB0gASgJEh4KFnByb3ZpZGVyUmVzZXJ2YXRpb25faWQYHiABKAkSFQoNcmVjdXJyaW5nQ29zdBgfIAEoARIOCgZyZWdpb24YICABKAkSEwoLcmVuZXdhbFBsYW4YISABKAkSFgoOcmVzZXJ2YXRpb25FbmQYIiABKAkSGAoQcmVzZXJ2YXRpb25TdGFydBgjIAEoCRIUCgxydW5uaW5nSG91cnMYJCABKAESDwoHc2F2aW5ncxglIAEoARIRCglzdGFydERhdGUYJiABKAkSDgoGc3RhdHVzGCcgASgJEh4KFnRyYW5zZmVyUmVzZXJ2YXRpb25FbmQYKCABKAkSIAoYdHJhbnNmZXJSZXNlcnZhdGlvblN0YXJ0GCkgASgJEgwKBHR5cGUYKiABKAkSEwoLdXBmcm9udENvc3QYKyABKAESEwoLdXRpbGl6YXRpb24YLCABKAEiSQoXTGlzdENvbW1pdG1lbnRzUmVzcG9uc2USLgoLY29tbWl0bWVudHMYASADKAsyGS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnQiSgoUQ29tbWl0bWVudHNDaGFydERhdGESDAoEZGF0ZRgBIAEoCRIQCghjaGFydEtleRgCIAEoCRISCgpjaGFydFZhbHVlGAMgASgBIk0KGENvbW1pdG1lbnRzQ2hhcnRSZXNwb25zZRIxCgRkYXRhGAEgAygLMiMuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50c0NoYXJ0RGF0YSL8AQoaQ29tbWl0bWVudHNVdGlsaXphdGlvbkRhdGESFwoPdXRpbGl6YXRpb25EYXRlGAEgASgJEgwKBGNvc3QYAiABKAESEwoLY292ZXJlZENvc3QYAyABKAESDwoHZ3JpRmVlcxgEIAEoARISCgpuZXRTYXZpbmdzGAUgASgBEhgKEHBvdGVudGlhbFNhdmluZ3MYBiABKAESHgoWcmVzZXJ2YXRpb25VdGlsaXphdGlvbhgHIAEoARIUCgxydW5uaW5nSG91cnMYCCABKAESDwoHc2F2aW5ncxgJIAEoARIcChR1bnV0aWxpemVkQ29tbWl0bWVudBgKIAEoASJZCh5Db21taXRtZW50c1V0aWxpemF0aW9uUmVzcG9uc2USNwoEZGF0YRgBIAMoCzIpLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudHNVdGlsaXphdGlvbkRhdGEi0AEKEENvbW1pdG1lbnRSZXBvcnQSDQoFbW9udGgYASABKAkSFgoOYmlsbFVuYWRqdXN0ZWQYAiABKAESFQoNYmlsbE9wdGltaXplZBgDIAEoARIUCgxncm9zc1NhdmluZ3MYBCABKAESEwoLcmlza1ByZW1pdW0YBSABKAESDwoHcmViYXRlcxgGIAEoARISCgpuZXRTYXZpbmdzGAcgASgBEhQKDHJldmVudWVTaGFyZRgIIAEoARIYChByZXZlbnVlU2hhcmVSYXRlGAkgASgBIugBChdDb21taXRtZW50UmVwb3J0QWNjb3VudBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhEKCWFjY291bnRJZBgDIAEoCRITCgthY2NvdW50TmFtZRgEIAEoCRINCgVjbG91ZBgFIAEoCRIUCgxncm9zc1NhdmluZ3MYBiABKAESEwoLcmlza1ByZW1pdW0YByABKAESDwoHcmViYXRlcxgIIAEoARISCgpuZXRTYXZpbmdzGAkgASgBEhQKDHJldmVudWVTaGFyZRgKIAEoASLNAwoPTWV0cmljc1Jlc3BvbnNlEhcKD2xpZmV0aW1lU2F2aW5ncxgBIAEoARISCgptdGRTYXZpbmdzGAIgASgBEiEKGXB1cmNoYXNlQXV0b21hdGlvbkVuYWJsZWQYAyABKAgSIAoYYnV5YmFja0F1dG9tYXRpb25FbmFibGVkGAQgASgIEhcKD2hhc0FjdGlvbmVkUGxhbhgFIAEoCBIZChFoYXNQZW5kaW5nQWN0aW9ucxgGIAEoCBIbChNsYXRlc3RFeGVjdXRpb25EYXRlGAcgASgJEh0KFXB1cmNoYXNlTWlzc2VkU2F2aW5ncxgIIAEoARIcChRidXliYWNrTWlzc2VkU2F2aW5ncxgJIAEoARIfChd0b3RhbERhaWx5TWlzc2VkU2F2aW5ncxgKIAEoARIbChNob3VybHlNaXNzZWRTYXZpbmdzGAsgASgBEh4KFm1pc3NlZFNhdmluZ3NTdGFydERhdGUYDCABKAkSHAoUbWlzc2VkU2F2aW5nc0VuZERhdGUYDSABKAkSFwoPZXhwaXJpbmdTYXZpbmdzGA4gASgBEhAKCGNvdmVyYWdlGA8gASgBEhMKC3V0aWxpemF0aW9uGBAgASgBIogICghSZXNvdXJjZRIKCgJpZBgBIAEoCRISCgpyZXNvdXJjZUlkGAIgASgJEikKCHByb3ZpZGVyGAMgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIaChJwcm92aWRlclJlc291cmNlSWQYBCABKAkSDgoGaXNTcG90GAUgASgIEgwKBG5hbWUYBiABKAkSFQoNcmVzb3VyY2VHcm91cBgHIAEoCRIQCgh1c2FnZUVuZBgIIAEoCRISCgp1c2FnZVN0YXJ0GAkgASgJEiUKBHRhZ3MYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhEKCWNyZWF0ZWRBdBgLIAEoCRIRCgl1cGRhdGVkQXQYDCABKAkSEgoKaW5zdGFuY2VJZBgNIAEoCRIYChBiaWxsaW5nQWNjb3VudElkGA4gASgJEhQKDHN1YkFjY291bnRJZBgPIAEoCRIbChNtYW5hZ2VtZW50QWNjb3VudElkGBAgASgJEhYKDm93bmVyQWNjb3VudElkGBEgASgJEhAKCHNrdVRpdGxlGBIgASgJEg8KB3NrdU5hbWUYEyABKAkSGAoQYXZhaWxhYmlsaXR5Wm9uZRgUIAEoCRITCgtjYWNoZUVuZ2luZRgVIAEoCRIWCg5kYXRhYmFzZUVuZ2luZRgWIAEoCRITCgtkZXNjcmlwdGlvbhgXIAEoCRIOCgZmYW1pbHkYGCABKAkSFgoOZnVsbFJlZ2lvbk5hbWUYGSABKAkSGAoQaGFzT25kZW1hbmRUZXJtcxgaIAEoCBIUCgxpbnN0YW5jZVR5cGUYGyABKAkSGgoSaW5zdGFuY2VUeXBlRmFtaWx5GBwgASgJEhQKDGlzUmVzZXJ2YWJsZRgdIAEoCBIUCgxsaWNlbnNlTW9kZWwYHiABKAkSFAoMbG9jYXRpb25UeXBlGB8gASgJEh8KF25vcm1hbGl6YXRpb25TaXplRmFjdG9yGCAgASgJEhcKD29wZXJhdGluZ1N5c3RlbRghIAEoCRIWCg5wcmVJbnN0YWxsZWRTdxgiIAEoCRIVCg1wcmljZUN1cnJlbmN5GCMgASgJEhcKD3Byb3ZpZGVyU2VydmljZRgkIAEoCRIVCg1wcm92aWRlclNrdUlkGCUgASgJEhcKD3B1YmxpY2F0aW9uRGF0ZRgmIAEoCRIOCgZyZWdpb24YJyABKAkSDwoHc2VydmljZRgoIAEoCRIPCgd0ZW5hbmN5GCkgASgJEhEKCXVzYWdlVHlwZRgqIAEoCRIPCgd2ZXJzaW9uGCsgASgJEhwKFHZwY05ldHdvcmtpbmdTdXBwb3J0GCwgASgIEhkKEW9uZGVtYW5kVXNhZ2VVbml0GC0gASgJIkMKFUxpc3RSZXNvdXJjZXNSZXNwb25zZRIqCglyZXNvdXJjZXMYASADKAsyFy5ibHVlYXBpLmdjLnYxLlJlc291cmNlIu8CChJSZXNvdXJjZURhaWx5VXNhZ2USDAoEZGF0ZRgBIAEoCRIWCg51c2FnZUFjY291bnRJZBgCIAEoCRIUCgxzdWJBY2NvdW50SWQYAyABKAkSDQoFdXNhZ2UYBCABKAESGAoQcmVzZXJ2YXRpb25Vc2FnZRgFIAEoARIVCg1mcmVlVGllclVzYWdlGAYgASgBEhQKDG9uZGVtYW5kQ29zdBgHIAEoARIUCgxyZXNlcnZlZENvc3QYCCABKAESGQoRaWZBbGxPbmRlbWFuZENvc3QYCSABKAESEAoIc3BvdENvc3QYCiABKAESFwoPZnJlZVRpZXJTYXZpbmdzGAsgASgBEhEKCXVzYWdlVHlwZRgMIAEoCRIXCg9jb21tb25Vc2FnZVR5cGUYDSABKAkSFAoMY292ZXJlZFVzYWdlGA4gASgBEg4KBnVwdGltZRgPIAEoARIZChFwcm92aWRlclVzYWdlVHlwZRgQIAEoCSJWCh1HZXRSZXNvdXJjZURhaWx5VXNhZ2VSZXNwb25zZRI1CgpkYWlseVVzYWdlGAEgAygLMiEuYmx1ZWFwaS5nYy52MS5SZXNvdXJjZURhaWx5VXNhZ2UigxAKElJlc2VydmFibGVSZXNvdXJjZRIKCgJpZBgBIAEoCRISCgpyZXNvdXJjZUlkGAIgASgJEhgKEGJpbGxpbmdBY2NvdW50SWQYAyABKAkSFAoMc3ViQWNjb3VudElkGAQgASgJEhAKCHByb3ZpZGVyGAUgASgJEhoKEnByb3ZpZGVyUmVzb3VyY2VJZBgGIAEoCRIXCg9wcm92aWRlclNlcnZpY2UYByABKAkSFQoNcHJvdmlkZXJTa3VJZBgIIAEoCRIOCgZpc1Nwb3QYCSABKAgSFAoMaXNSZXNlcnZhYmxlGAogASgIEiQKBG5hbWUYCyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLQoNcmVzb3VyY2VHcm91cBgMIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIQCgh1c2FnZUVuZBgNIAEoCRISCgp1c2FnZVN0YXJ0GA4gASgJEiUKBHRhZ3MYDyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ei0KDHByb3ZpZGVyVGFncxgQIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKQoIdXNlclRhZ3MYESABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhEKCWNyZWF0ZWRBdBgSIAEoCRIRCgl1cGRhdGVkQXQYEyABKAkSEgoKaW5zdGFuY2VJZBgUIAEoCRIwChBhdmFpbGFiaWxpdHlab25lGBUgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEisKC2NhY2hlRW5naW5lGBYgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhQKDGNhdGFsb2dTa3VJZBgXIAEoCRIXCg9jYXRhbG9nU2t1T3JnSWQYGCABKAkSIAoYY2xhc3NpY05ldHdvcmtpbmdTdXBwb3J0GBkgASgIEhIKCmNsb2NrU3BlZWQYGiABKAkSFwoPY29tbW9uVXNhZ2VUeXBlGBsgASgJEhQKDGNvdmVyZWRVc2FnZRgcIAEoARIuCg5kYXRhYmFzZUVuZ2luZRgdIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIeChZkZWRpY2F0ZWRFYnNUaHJvdWdocHV0GB4gASgJEisKC2Rlc2NyaXB0aW9uGB8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEgsKA2VjdRggIAEoCRIjChtlbmhhbmNlZE5ldHdvcmtpbmdTdXBwb3J0ZWQYISABKAgSDgoGZmFtaWx5GCIgASgJEhYKDmZ1bGxSZWdpb25OYW1lGCMgASgJEhgKEGhhc09uZGVtYW5kVGVybXMYJCABKAgSDwoHaWNvblVybBglIAEoCRIVCg1pbnRlZ3JhdGlvbklkGCYgASgJEhoKEmludGVsQXZ4MkF2YWlsYWJsZRgnIAEoCBIZChFpbnRlbEF2eEF2YWlsYWJsZRgoIAEoCBIbChNpbnRlbFR1cmJvQXZhaWxhYmxlGCkgASgIEiIKAmlvGCogASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhsKE2lzQ3VycmVudEdlbmVyYXRpb24YKyABKAgSKQoJaXNNdWx0aUF6GCwgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhQKDGxpY2Vuc2VNb2RlbBgtIAEoCRIUCgxsb2NhdGlvblR5cGUYLiABKAkSDgoGbWVtb3J5GC8gASgJEicKB3NrdU5hbWUYMCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEAoIc2t1VGl0bGUYMSABKAkSDwoHbmV0Q29zdBgyIAEoARISCgpuZXRTYXZpbmdzGDMgASgBEhoKEm5ldHdvcmtQZXJmb3JtYW5jZRg0IAEoCRIfChdub3JtYWxpemF0aW9uU2l6ZUZhY3Rvchg1IAEoCRIUCgxvbmRlbWFuZENvc3QYNiABKAESGQoRb25kZW1hbmRVc2FnZVVuaXQYNyABKAkSFwoPb3BlcmF0aW5nU3lzdGVtGDggASgJEhEKCW9wZXJhdGlvbhg5IAEoCRIZChFwaHlzaWNhbFByb2Nlc3Nvchg6IAEoCRIWCg5wcmVJbnN0YWxsZWRTdxg7IAEoCRIVCg1wcmljZUN1cnJlbmN5GDwgASgJEh0KFXByb2Nlc3NvckFyY2hpdGVjdHVyZRg9IAEoCRIZChFwcm9jZXNzb3JGZWF0dXJlcxg+IAEoCRIXCg9wdWJsaWNhdGlvbkRhdGUYPyABKAkSDgoGcmVnaW9uGEAgASgJEg8KB3NlcnZpY2UYQSABKAkSDgoGc291cmNlGEIgASgJEg8KB3N0b3JhZ2UYQyABKAkSJwoHdGF4VHlwZRhEIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIPCgd0ZW5hbmN5GEUgASgJEg4KBnVwdGltZRhGIAEoARIRCgl1c2FnZVR5cGUYRyABKAkSDAoEdmNwdRhIIAEoCRIPCgd2ZXJzaW9uGEkgASgJEhwKFHZwY05ldHdvcmtpbmdTdXBwb3J0GEogASgIEhQKDGluc3RhbmNlVHlwZRhLIAEoCRIaChJpbnN0YW5jZVR5cGVGYW1pbHkYTCABKAkSNgoLZGFpbHlVc2FnZXMYTSADKAsyIS5ibHVlYXBpLmdjLnYxLlJlc291cmNlRGFpbHlVc2FnZSJXCh9MaXN0UmVzZXJ2YWJsZVJlc291cmNlc1Jlc3BvbnNlEjQKCXJlc291cmNlcxgBIAMoCzIhLmJsdWVhcGkuZ2MudjEuUmVzZXJ2YWJsZVJlc291cmNlInQKB1NlZ21lbnQSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIpCghwcm92aWRlchgDIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXISEQoJaXNEZWZhdWx0GAQgASgIEhEKCWNyZWF0ZWRBdBgFIAEoCSJACg5TZWdtZW50Q3JlYXRvchIKCgJpZBgBIAEoCRIQCgh1c2VybmFtZRgCIAEoCRIQCghmdWxsTmFtZRgDIAEoCSJLCgxQdXJjaGFzZVBsYW4SCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEQoJaXNSZW5ld2FsGAQgASgIIqUFCg5TZWdtZW50RGV0YWlscxIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEikKCHByb3ZpZGVyGAQgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIWCg5jbG91ZFByb3ZpZGVycxgFIAMoCRIRCglpc0RlZmF1bHQYBiABKAgSEQoJY3JlYXRlZEF0GAcgASgJEjAKCWNyZWF0ZWRCeRgIIAEoCzIdLmJsdWVhcGkuZ2MudjEuU2VnbWVudENyZWF0b3ISEAoIcGFyZW50SWQYCSABKAkSDgoGc3RhdHVzGAogASgJEhQKDHNlZ21lbnRDbGFzcxgLIAEoCRInCgZwYXJhbXMYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhMKC21vbnRobHlDb3N0GA0gASgBEhYKDm1vbnRobHlOZXRDb3N0GA4gASgBEiAKGG1vbnRobHlJZkFsbE9uZGVtYW5kQ29zdBgPIAEoARIbChNtb250aGx5T25kZW1hbmRDb3N0GBAgASgBEhsKE21vbnRobHlSZXNlcnZlZENvc3QYESABKAESFwoPbW9udGhseVNwb3RDb3N0GBIgASgBEhYKDm1vbnRobHlTYXZpbmdzGBMgASgBEhUKDW1vbnRobHlCdWRnZXQYFCABKAESEAoIY292ZXJhZ2UYFSABKAESGwoTcmVjb21tZW5kZWRDb3ZlcmFnZRgWIAEoARIWCg50YXJnZXRDb3ZlcmFnZRgXIAEoARIcChRtb250aGx5UmVzb3VyY2VDb3VudBgYIAEoBRIyCg1wdXJjaGFzZVBsYW5zGBkgAygLMhsuYmx1ZWFwaS5nYy52MS5QdXJjaGFzZVBsYW4ieAoMQ29udHJhY3RTcGVjEhYKDmNvbW1pdG1lbnRUeXBlGAEgASgJEhUKDXBheW1lbnRPcHRpb24YAiABKAkSDAoEdGVybRgDIAEoCRIrCgpwcm9wZXJ0aWVzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCLeAgoLUGxhblN1bW1hcnkSCwoDa2V5GAEgASgJEhAKCHByb3ZpZGVyGAIgASgJEhYKDm51bUNvbW1pdG1lbnRzGAMgASgFEhUKDW1pbkNvbW1pdG1lbnQYBCABKAESGQoRbW9udGhseUNvbW1pdG1lbnQYBSABKAESEwoLdXBmcm9udENvc3QYBiABKAESEgoKbWluU2F2aW5ncxgHIAEoARISCgptYXhTYXZpbmdzGAggASgBEhYKDm1vbnRobHlTYXZpbmdzGAkgASgBEhQKDG1pblRlcm1Ib3VycxgKIAEoBRIUCgxtYXhUZXJtSG91cnMYCyABKAUSEwoLZ3JpUHJlbWl1bXMYDCABKAESGgoSYmVmb3JlT25kZW1hbmRDb3N0GA0gASgBEhkKEWFmdGVyT25kZW1hbmRDb3N0GA4gASgBEhkKEWlmQWxsT25kZW1hbmRDb3N0GA8gASgBIuUCCg5TZXJ2aWNlU3VtbWFyeRILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRITCgtzZXJ2aWNlTmFtZRgDIAEoCRIQCghwcm92aWRlchgEIAEoCRIWCg5udW1Db21taXRtZW50cxgFIAEoBRIXCg9jdXJyZW50Q292ZXJhZ2UYBiABKAESGQoRcG90ZW50aWFsQ292ZXJhZ2UYByABKAESFQoNbWluQ29tbWl0bWVudBgIIAEoARIZChFtb250aGx5Q29tbWl0bWVudBgJIAEoARITCgt1cGZyb250Q29zdBgKIAEoARISCgptaW5TYXZpbmdzGAsgASgBEhIKCm1heFNhdmluZ3MYDCABKAESFgoObW9udGhseVNhdmluZ3MYDSABKAESFAoMbWluVGVybUhvdXJzGA4gASgFEhQKDG1heFRlcm1Ib3VycxgPIAEoBRISCgpncmlQcmVtaXVtGBAgASgBItoBChBBZ2dyZWdhdGVNZXRyaWNzEhcKD2N1cnJlbnRDb3ZlcmFnZRgBIAEoARIZChFwb3RlbnRpYWxDb3ZlcmFnZRgCIAEoARJBCglzdW1tYXJpZXMYAyADKAsyLi5ibHVlYXBpLmdjLnYxLkFnZ3JlZ2F0ZU1ldHJpY3MuU3VtbWFyaWVzRW50cnkaTwoOU3VtbWFyaWVzRW50cnkSCwoDa2V5GAEgASgJEiwKBXZhbHVlGAIgASgLMh0uYmx1ZWFwaS5nYy52MS5TZXJ2aWNlU3VtbWFyeToCOAEizgsKE0RlZmF1bHRQdXJjaGFzZVBsYW4SCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRINCgVvcmdJZBgEIAEoCRIRCglzZWdtZW50SWQYBSABKAkSJwoHc2VnbWVudBgGIAEoCzIWLmJsdWVhcGkuZ2MudjEuU2VnbWVudBIOCgZzdGF0dXMYByABKAkSEAoIcGxhblR5cGUYCCABKAkSEQoJY3JlYXRlZEF0GAkgASgJEhQKDGxhc3RNb2RpZmllZBgKIAEoCRIpCgljcmVhdGVkQnkYCyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLwoPZXhlY3V0aW9uUG9saWN5GAwgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCWlzRGVmYXVsdBgNIAEoCBIVCg1pc1JlY29tbWVuZGVkGA4gASgIEhEKCWlzUmVuZXdhbBgPIAEoCBIVCg1pc0NhbGN1bGF0aW5nGBAgASgIEhAKCGlzTG9ja2VkGBEgASgIEg8KB2lzU2F2ZWQYEiABKAgSOgoVaW5jbHVkZWRDb250cmFjdFNwZWNzGBMgAygLMhsuYmx1ZWFwaS5nYy52MS5Db250cmFjdFNwZWMSHQoVaW5jbHVkZWRDb250cmFjdFRlcm1zGBQgAygJEg8KB21heFRlcm0YFSABKAkSHgoWcHJlZmVycmVkUGF5bWVudE9wdGlvbhgWIAEoCRIWCg5tYXhVcGZyb250Q29zdBgXIAEoARIiChptaW5pbXVtVXBmcm9udEludGVyZXN0UmF0ZRgYIAEoARI+Ch5yZWNvbW1lbmRXaXRoaW5Db3ZlcmVkQWNjb3VudHMYGSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJc3RhcnREYXRlGBogASgJEg8KB2VuZERhdGUYGyABKAkSEgoKZGF0YVNvdXJjZRgcIAEoCRISCgpiZWZvcmVDb3N0GB0gASgBEhEKCWFmdGVyQ29zdBgeIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYHyABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GCAgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYISABKAESFQoNYW1vcnRpemVkQ29zdBgiIAEoARIVCg1yZWN1cnJpbmdDb3N0GCMgASgBEhMKC3VwZnJvbnRDb3N0GCQgASgBEhEKCXRvdGFsQ29zdBglIAEoARIeChZ0b3RhbE1vbnRobHlCZWZvcmVDb3N0GCYgASgBEg8KB3NhdmluZ3MYJyABKAESFgoObW9udGhseVNhdmluZ3MYKCABKAESFAoMdG90YWxTYXZpbmdzGCkgASgBEgsKA2ZlZRgqIAEoARIaChJjb21taXRtZW50Q292ZXJhZ2UYKyABKAESHQoVbWluaW11bUNvbW1pdG1lbnRDb3N0GCwgASgBEhYKDmJyZWFrZXZlbkhvdXJzGC0gASgBEjkKEGFnZ3JlZ2F0ZU1ldHJpY3MYLiABKAsyHy5ibHVlYXBpLmdjLnYxLkFnZ3JlZ2F0ZU1ldHJpY3MSLQoJc3VtbWFyaWVzGC8gAygLMhouYmx1ZWFwaS5nYy52MS5QbGFuU3VtbWFyeRIWCg5yZXNlcnZhdGlvbklkcxgwIAMoCRITCgtyZXNvdXJjZUlkcxgxIAMoCRIWCg5mbGFnZ2VkQWN0aW9ucxgyIAMoCRISCgptZXRhUGxhbklkGDMgASgJEhIKCmNvdmVyYWdlSWQYNCABKAkSGAoQbW9udGhseUFmdGVyQ29zdBg1IAEoARIcChRtb250aGx5QW1vcnRpemVkQ29zdBg2IAEoARIZChFtb250aGx5QmVmb3JlQ29zdBg3IAEoARISCgptb250aGx5RmVlGDggASgBEhAKCGFsbFRlcm1zGDkgAygJIlcKIkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVzcG9uc2USMQoFcGxhbnMYASADKAsyIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4iXQooR2V0VXBkYXRlZFB1cmNoYXNlUGxhbnNCeVNlZ21lbnRSZXNwb25zZRIxCgVwbGFucxgBIAMoCzIiLmJsdWVhcGkuZ2MudjEuRGVmYXVsdFB1cmNoYXNlUGxhbiJBCg9QbGFuSGlzdG9yeVVzZXISCgoCaWQYASABKAkSEAoIdXNlcm5hbWUYAiABKAkSEAoIZnVsbE5hbWUYAyABKAki9wEKEFBsYW5IaXN0b3J5RW50cnkSCgoCaWQYASABKAkSDwoHbWVzc2FnZRgCIAEoCRINCgVvcmdJZBgDIAEoCRIXCg9yZWxhdGVkT2JqZWN0SWQYBCABKAkSGQoRcmVsYXRlZE9iamVjdFR5cGUYBSABKAkSEQoJdGltZXN0YW1wGAYgASgJEgwKBHR5cGUYByABKAkSDgoGdXNlcklkGAggASgJEiQKBGRhdGEYCSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLAoEdXNlchgKIAEoCzIeLmJsdWVhcGkuZ2MudjEuUGxhbkhpc3RvcnlVc2VyIoQCChNSZWdpc3Rlck9yZ1Jlc3BvbnNlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSLgoLbWVtYmVyc2hpcHMYAyADKAsyGS5ibHVlYXBpLmdjLnYxLk1lbWJlcnNoaXASDgoGZG9tYWluGAQgASgJEi4KDnByaW1hcnlBZGRyZXNzGAUgASgLMhYuYmx1ZWFwaS5nYy52MS5BZGRyZXNzEh8KF2F3c01hcmtldHBsYWNlT2ZmZXJMaW5rGAYgASgJEiEKGWF6dXJlTWFya2V0cGxhY2VPZmZlckxpbmsYByABKAkSHwoXZ2NwTWFya2V0cGxhY2VPZmZlckxpbmsYCCABKAkiMgoaU3RhcnRBd3NPbmJvYXJkaW5nUmVzcG9uc2USFAoMb25ib2FyZGluZ0lkGAEgASgJIlEKJEdldEF3c0Nsb3VkRm9ybWF0aW9uVGVtcGxhdGVSZXNwb25zZRIpCgh0ZW1wbGF0ZRgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiKwocR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXNwb25zZRILCgN1cmwYASABKAkijwQKG1ZlcmlmeUF3c09uYm9hcmRpbmdSZXNwb25zZRJUCgZjaGVja3MYASADKAsyRC5ibHVlYXBpLmdjLnYxLlZlcmlmeUF3c09uYm9hcmRpbmdSZXNwb25zZS5Bd3NPbmJvYXJkaW5nRmVhdHVyZUNoZWNrGpkDChlBd3NPbmJvYXJkaW5nRmVhdHVyZUNoZWNrEg8KB2ZlYXR1cmUYASABKAkSbwoGc3RhdHVzGAIgASgOMl8uYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjay5Bd3NPbmJvYXJkaW5nRmVhdHVyZVN0YXR1cyL5AQoaQXdzT25ib2FyZGluZ0ZlYXR1cmVTdGF0dXMSLQopQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfVU5TUEVDSUZJRUQQABIrCidBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19BVkFJTEFCTEUQARIpCiVBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19XQVJOSU5HEAISKQolQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfTUlTU0lORxADEikKJUFXU19PTkJPQVJESU5HX0ZFQVRVUkVfU1RBVFVTX1VOS05PV04QBCLVBQobR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlEg0KBWZvdW5kGAEgASgIEg0KBWlzTXNwGAIgASgIEikKCHByb3ZpZGVyGAMgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIPCgdnY09yZ0lkGAQgASgJEhQKDG9uYm9hcmRpbmdJZBgFIAEoCRJVChBvbmJvYXJkaW5nU3RhdHVzGAYgASgOMjsuYmx1ZWFwaS5nYy52MS5HZXRPbmJvYXJkaW5nU3RhdHVzUmVzcG9uc2UuT25ib2FyZGluZ1N0YXR1cxIRCglhY2NvdW50SWQYByABKAkSFgoOYmlsbGluZ0dyb3VwSWQYCCABKAkSEQoJY29tcGFueUlkGAkgASgJEmAKEnZlcmlmaWNhdGlvbkNoZWNrcxgKIAMoCzJELmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2sSNwoPdGVybXNBY2NlcHRhbmNlGAsgASgLMh4uYmx1ZWFwaS5nYy52MS5UZXJtc0FjY2VwdGFuY2UilQIKEE9uYm9hcmRpbmdTdGF0dXMSIQodT05CT0FSRElOR19TVEFUVVNfVU5TUEVDSUZJRUQQABIkCiBPTkJPQVJESU5HX1NUQVRVU19OT1RfUkVHSVNURVJFRBABEiAKHE9OQk9BUkRJTkdfU1RBVFVTX1JFR0lTVEVSRUQQAhIoCiRPTkJPQVJESU5HX1NUQVRVU19PTkJPQVJESU5HX1NUQVJURUQQAxIeChpPTkJPQVJESU5HX1NUQVRVU19WRVJJRklFRBAEEicKI09OQk9BUkRJTkdfU1RBVFVTX1ZFUklGWV9JTkNPTVBMRVRFEAUSIwofT05CT0FSRElOR19TVEFUVVNfVkVSSUZZX0ZBSUxFRBAGItoDChNQYXllckFjY291bnREZXRhaWxzEhEKCWFjY291bnRJZBgBIAEoCRITCgthY2NvdW50TmFtZRgCIAEoCRIgChhyaXBwbGVSZWdpc3RyYXRpb25TdGF0dXMYAyABKAkSUgoNZ2NTZXR1cFN0YXR1cxgEIAEoDjI7LmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlLk9uYm9hcmRpbmdTdGF0dXMSYAoSdmVyaWZpY2F0aW9uQ2hlY2tzGAUgAygLMkQuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjaxIlCh1tYXJrZXRwbGFjZVByaXZhdGVPZmZlclN0YXR1cxgGIAEoCRIhChltYXJrZXRwbGFjZVByaXZhdGVPZmZlcklkGAcgASgJEi0KJW1hcmtldHBsYWNlUHJpdmF0ZU9mZmVyRXhwaXJhdGlvbkRhdGUYCCABKAkSJQodbWFya2V0cGxhY2VTdWJzY3JpcHRpb25TdGF0dXMYCSABKAkSIwobbWFya2V0cGxhY2VBZ3JlZW1lbnRFbmREYXRlGAogASgJIqgFChlMaXN0UGF5ZXJBY2NvdW50c1Jlc3BvbnNlEkwKDXBheWVyQWNjb3VudHMYASADKAsyNS5ibHVlYXBpLmdjLnYxLkxpc3RQYXllckFjY291bnRzUmVzcG9uc2UuUGF5ZXJBY2NvdW50Ej8KE3BheWVyQWNjb3VudERldGFpbHMYAiADKAsyIi5ibHVlYXBpLmdjLnYxLlBheWVyQWNjb3VudERldGFpbHMa+gIKDFBheWVyQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAyABKAkSEQoJc2VnbWVudElkGAQgASgJEksKBnN0YXR1cxgFIAEoDjI7LmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZS5QYXllckFjY291bnRTdGF0dXMSEQoJY29tcGFueUlkGAYgASgJElUKEG9uYm9hcmRpbmdTdGF0dXMYByABKA4yOy5ibHVlYXBpLmdjLnYxLkdldE9uYm9hcmRpbmdTdGF0dXNSZXNwb25zZS5PbmJvYXJkaW5nU3RhdHVzEmAKEnZlcmlmaWNhdGlvbkNoZWNrcxgIIAMoCzJELmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2sifwoSUGF5ZXJBY2NvdW50U3RhdHVzEiQKIFBBWUVSX0FDQ09VTlRfU1RBVFVTX1VOU1BFQ0lGSUVEEAASIAocUEFZRVJfQUNDT1VOVF9TVEFUVVNfRU5BQkxFRBABEiEKHVBBWUVSX0FDQ09VTlRfU1RBVFVTX0RJU0FCTEVEEAIibQoeU2V0UGF5ZXJBY2NvdW50RW5hYmxlZFJlc3BvbnNlEksKDHBheWVyQWNjb3VudBgBIAEoCzI1LmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZS5QYXllckFjY291bnQibAodR2V0UGF5ZXJBY2NvdW50U3RhdHVzUmVzcG9uc2USSwoMcGF5ZXJBY2NvdW50GAEgASgLMjUuYmx1ZWFwaS5nYy52MS5MaXN0UGF5ZXJBY2NvdW50c1Jlc3BvbnNlLlBheWVyQWNjb3VudCLIBQoZTGlzdEJpbGxpbmdHcm91cHNSZXNwb25zZRJMCg1iaWxsaW5nR3JvdXBzGAEgAygLMjUuYmx1ZWFwaS5nYy52MS5MaXN0QmlsbGluZ0dyb3Vwc1Jlc3BvbnNlLkJpbGxpbmdHcm91cBrbAwoMQmlsbGluZ0dyb3VwEhEKCWNvbXBhbnlJZBgBIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgCIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAMgASgJEhMKC2NvbXBhbnlOYW1lGAQgASgJEhYKDnBheWVyQWNjb3VudElkGAUgASgJEhgKEHBheWVyQWNjb3VudE5hbWUYBiABKAkSEQoJc2VnbWVudElkGAcgASgJEhQKDHJlc291cmNlVHlwZRgIIAEoCRJLCgZzdGF0dXMYCSABKA4yOy5ibHVlYXBpLmdjLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVzcG9uc2UuQmlsbGluZ0dyb3VwU3RhdHVzElUKEG9uYm9hcmRpbmdTdGF0dXMYCiABKA4yOy5ibHVlYXBpLmdjLnYxLkdldE9uYm9hcmRpbmdTdGF0dXNSZXNwb25zZS5PbmJvYXJkaW5nU3RhdHVzEmAKEnZlcmlmaWNhdGlvbkNoZWNrcxgLIAMoCzJELmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2sSEAoIcHJvdmlkZXIYDCABKAkifwoSQmlsbGluZ0dyb3VwU3RhdHVzEiQKIEJJTExJTkdfR1JPVVBfU1RBVFVTX1VOU1BFQ0lGSUVEEAASIAocQklMTElOR19HUk9VUF9TVEFUVVNfRU5BQkxFRBABEiEKHUJJTExJTkdfR1JPVVBfU1RBVFVTX0RJU0FCTEVEEAIibAodU2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVzcG9uc2USSwoMYmlsbGluZ0dyb3VwGAEgASgLMjUuYmx1ZWFwaS5nYy52MS5MaXN0QmlsbGluZ0dyb3Vwc1Jlc3BvbnNlLkJpbGxpbmdHcm91cCKlAQodR2V0QmlsbGluZ0dyb3VwU3RhdHVzUmVzcG9uc2USSwoMYmlsbGluZ0dyb3VwGAEgASgLMjUuYmx1ZWFwaS5nYy52MS5MaXN0QmlsbGluZ0dyb3Vwc1Jlc3BvbnNlLkJpbGxpbmdHcm91cBI3Cg90ZXJtc0FjY2VwdGFuY2UYAiABKAsyHi5ibHVlYXBpLmdjLnYxLlRlcm1zQWNjZXB0YW5jZSJaChxWYWxpZGF0ZUJpbGxpbmdHcm91cFJlc3BvbnNlEgoKAm9rGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSDAoEY29kZRgDIAEoCRIPCgdkZXRhaWxzGAQgAygJIs4BChpHZXRBd3NQcml2YXRlT2ZmZXJSZXNwb25zZRIWCg5wYXllckFjY291bnRJZBgBIAEoCRIPCgdvZmZlcklkGAIgASgJEhEKCW9mZmVyTmFtZRgDIAEoCRIOCgZzdGF0dXMYBCABKAkSEAoIb2ZmZXJVcmwYBSABKAkSEQoJcHJvZHVjdElkGAYgASgJEhQKDHByaWNlUGVyVW5pdBgHIAEoARIRCgljcmVhdGVkQXQYCCABKAkSFgoOZXhwaXJhdGlvbkRhdGUYCSABKAkiWgofQWNjZXB0QmlsbGluZ0dyb3VwVGVybXNSZXNwb25zZRI3Cg90ZXJtc0FjY2VwdGFuY2UYASABKAsyHi5ibHVlYXBpLmdjLnYxLlRlcm1zQWNjZXB0YW5jZSJTCh5MaXN0RHJhZnRQdXJjaGFzZVBsYW5zUmVzcG9uc2USMQoFcGxhbnMYASADKAsyIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4iQgofRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW5SZXNwb25zZRIOCgZwbGFuSWQYASABKAkSDwoHc3VjY2VzcxgCIAEoCCI0CiNHZXRBdmFpbGFibGVDb21taXRtZW50VHlwZXNSZXNwb25zZRINCgV0eXBlcxgBIAMoCSLdAQoqR2V0R3VhcmFudGVlZENvbW1pdG1lbnRUZW1wbGF0ZVVybFJlc3BvbnNlEhEKCWxhdW5jaFVybBgBIAEoCRITCgt0ZW1wbGF0ZVVybBgCIAEoCRIRCglzdGFja05hbWUYAyABKAkSEQoJcHJpbmNpcGFsGAQgASgJEhIKCmV4dGVybmFsSWQYBSABKAkSJQodZ3VhcmFudGVlZENvbW1pdG1lbnRQcmluY2lwYWwYBiABKAkSJgoeZ3VhcmFudGVlZENvbW1pdG1lbnRFeHRlcm5hbElkGAcgASgJIr4CCihDcmVhdGVHdWFyYW50ZWVkQ29tbWl0bWVudEFjY2Vzc1Jlc3BvbnNlEg4KBnRhcmdldBgBIAEoCRIVCg1yaXBwbGVSb2xlQXJuGAIgASgJEhgKEHJpcHBsZUV4dGVybmFsSWQYAyABKAkSIwobZ3VhcmFudGVlZENvbW1pdG1lbnRSb2xlQXJuGAQgASgJEiYKHmd1YXJhbnRlZWRDb21taXRtZW50RXh0ZXJuYWxJZBgFIAEoCRIPCgdzdGFja0lkGAYgASgJEhMKC3N0YWNrUmVnaW9uGAcgASgJEhMKC3RlbXBsYXRlVXJsGAggASgJEg4KBnN0YXR1cxgJIAEoCRITCgtsYXN0VXBkYXRlZBgKIAEoCRIkChxndWFyYW50ZWVkQ29tbWl0bWVudFZlcmlmaWVkGAsgASgIIoQCCh9HZXRQdXJjaGFzZVBsYW5zRGV0YWlsc1Jlc3BvbnNlEjAKBHBsYW4YASABKAsyIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4SOAoJbGluZUl0ZW1zGAIgAygLMiUuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhbkxpbmVJdGVtEkMKD3Jlc291cmNlTWF0Y2hlcxgDIAMoCzIqLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudFBsYW5SZXNvdXJjZU1hdGNoEjAKB2hpc3RvcnkYBCADKAsyHy5ibHVlYXBpLmdjLnYxLlBsYW5IaXN0b3J5RW50cnkiVwoiQ3JlYXRlQ3VzdG9tQ29tbWl0bWVudFBsYW5SZXNwb25zZRIxCgVwbGFucxgBIAMoCzIiLmJsdWVhcGkuZ2MudjEuRGVmYXVsdFB1cmNoYXNlUGxhbiJ6ChxBenVyZUFyY2hlcmFPcmdGZWF0dXJlU3RhdHVzEiYKBmRldGFpbBgBIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIPCgdmZWF0dXJlGAIgASgJEg4KBnN0YXR1cxgDIAEoCRIRCgl1cGRhdGVkQXQYBCABKAkiVgoaQXp1cmVBcmNoZXJhT3JnTGVhc2VCdWRnZXQSDgoGYnVkZ2V0GAEgASgBEhEKCWNyZWF0ZWRBdBgCIAEoCRIVCg1taW5UZXJtTW9udGhzGAMgASgFIp4LCg9BenVyZUFyY2hlcmFPcmcSHgoWYXBwbHlCYWxhbmNlVG9QcmVtaXVtcxgBIAEoCBITCgthdXRoU3NvT25seRgCIAEoCBI3Chdhd3NNYXJrZXRwbGFjZU9mZmVyTGluaxgDIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRI5ChlhenVyZU1hcmtldHBsYWNlT2ZmZXJMaW5rGAQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEg8KB2JhbGFuY2UYBSABKAESFQoNYmlsbGluZ0FjdGl2ZRgGIAEoCBIaChJjaGFubmVsUGFydG5lclR5cGUYByABKAkSMgoSY2hhbm5lbFBhcnRuZXJzaGlwGAggASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEisKC2NvbnRyYWN0RW5kGAkgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCWNyZWF0ZWRBdBgKIAEoCRIoCghjdXJyZW5jeRgLIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIXCg9kZWZhdWx0VXNlclJvbGUYDCABKAkSLAoMZGlzY291bnRJbmZvGA0gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEg4KBmRvbWFpbhgOIAEoCRItCg1lZmZlY3RpdmVEYXRlGA8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEkQKD2ZlYXR1cmVTdGF0dXNlcxgQIAMoCzIrLmJsdWVhcGkuZ2MudjEuQXp1cmVBcmNoZXJhT3JnRmVhdHVyZVN0YXR1cxIQCghmZWF0dXJlcxgRIAMoCRIqCgpmcnVnYWxNb2RlGBIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjcKF2djcE1hcmtldHBsYWNlT2ZmZXJMaW5rGBMgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhMKC2hhc0Rpc2NvdW50GBQgASgIEg8KB2hhc0dyaXMYFSABKAgSIQoZaGFzVGRzUGFjUHJveHlDcmVkZW50aWFscxgWIAEoCBIKCgJpZBgXIAEoCRIfChdpc0xlYXNlQnV5YmFja0F1dG9tYXRlZBgYIAEoCBIcChRpc0xlYXNlU3dhcEF1dG9tYXRlZBgZIAEoCBIVCg1pc1Rkc1BhY1Byb3h5GBogASgIEj4KC2xlYXNlQnVkZ2V0GBsgASgLMikuYmx1ZWFwaS5nYy52MS5BenVyZUFyY2hlcmFPcmdMZWFzZUJ1ZGdldBIgChhsZWFzZUJ1eWJhY2tMb29rYmFja0RheXMYHCABKAUSHQoVbGVhc2VTd2FwTG9va2JhY2tEYXlzGB0gASgFEgwKBG5hbWUYHiABKAkSKQoJcGFydG5lcklkGB8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCXBsYW5UcmlhbBggIAEoCBIYChBwbGFuVHJpYWxFeHBpcmVzGCEgASgJEhYKDnBsYW5UeXBlQ2hvc2VuGCIgASgJEhkKEXBsYW5UeXBlRWZmZWN0aXZlGCMgASgJEi4KDnByaW1hcnlBZGRyZXNzGCQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEi0KDXByb21vdGlvbkNvZGUYJSABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSWgoWcHJvdmlkZXJSb290U2VnbWVudElkcxgmIAMoCzI6LmJsdWVhcGkuZ2MudjEuQXp1cmVBcmNoZXJhT3JnLlByb3ZpZGVyUm9vdFNlZ21lbnRJZHNFbnRyeRo9ChtQcm92aWRlclJvb3RTZWdtZW50SWRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJUChhBenVyZU9uYm9hcmRpbmdDcmVhdGVkQnkSFAoMb25ib2FyZGluZ0lkGAEgASgJEhAKCHVzZXJuYW1lGAIgASgJEhAKCGZ1bGxOYW1lGAMgASgJIrIHChRBenVyZU9uYm9hcmRpbmdTdGF0ZRIUCgxvbmJvYXJkaW5nSWQYASABKAkSDQoFb3JnSWQYAiABKAkSEAoIcHJvdmlkZXIYAyABKAkSEQoJY29tcGxldGVkGAQgASgIEhEKCWNyZWF0ZWRBdBgFIAEoCRI6CgljcmVhdGVkQnkYBiABKAsyJy5ibHVlYXBpLmdjLnYxLkF6dXJlT25ib2FyZGluZ0NyZWF0ZWRCeRIrCgtpbnRlZ3JhdGlvbhgHIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIVCg1pbnRlZ3JhdGlvbklkGAggASgJEhoKEmFyY2hlcmFPdXRib3VuZElwcxgJIAMoCRIQCgh0ZW5hbnRJZBgKIAEoCRIWCg5zdWJzY3JpcHRpb25JZBgLIAEoCRISCgphY2NvdW50SWRzGAwgAygJEhMKC2FjY291bnRLaW5kGA0gASgJEjAKEGFwcEF1dGhWYWxpZGF0ZWQYDiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSLQoNYXBwQXV0aG9yaXplZBgPIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIVCg1ibG9iQ29udGFpbmVyGBAgASgJEhUKDXJlc291cmNlR3JvdXAYESABKAkSFgoOc3RvcmFnZUFjY291bnQYEiABKAkSEAoIcm9sZU5hbWUYEyABKAkSLwoPY3JlYXRlUmVzb3VyY2VzGBQgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjQKFG1hcmtldHBsYWNlQ29tcGxldGVkGBUgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEi8KD3Blcm1pc3Npb25MZXZlbBgWIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIzChNyZXNvdXJjZUdyb3VwUmVnaW9uGBcgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjQKFHN0b3JhZ2VBY2NvdW50UmVnaW9uGBggASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjEKEXJlc291cmNlR3JvdXBUYWdzGBkgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjIKEnN0b3JhZ2VBY2NvdW50VGFncxgaIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIrCgNvcmcYGyABKAsyHi5ibHVlYXBpLmdjLnYxLkF6dXJlQXJjaGVyYU9yZyKTAQocU3RhcnRBenVyZU9uYm9hcmRpbmdSZXNwb25zZRIUCgxvbmJvYXJkaW5nSWQYASABKAkSMgoFc3RhdGUYAiABKAsyIy5ibHVlYXBpLmdjLnYxLkF6dXJlT25ib2FyZGluZ1N0YXRlEhYKDmJpbGxpbmdHcm91cElkGAMgASgJEhEKCWNvbXBhbnlJZBgEIAEoCSIwCiFHZXRBenVyZU9uYm9hcmRpbmdBdXRoVXJsUmVzcG9uc2USCwoDdXJsGAEgASgJInYKDEF6dXJlQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkSFQoNYWNjb3VudFN0YXR1cxgDIAEoCRITCgthY2NvdW50VHlwZRgEIAEoCRISCgppc0VsaWdpYmxlGAUgASgIIlQKI0xpc3RBenVyZU9uYm9hcmRpbmdBY2NvdW50c1Jlc3BvbnNlEi0KCGFjY291bnRzGAEgAygLMhsuYmx1ZWFwaS5nYy52MS5BenVyZUFjY291bnQiUAodQXp1cmVJbnRlZ3JhdGlvbkZlYXR1cmVTdGF0dXMSDwoHZmVhdHVyZRgBIAEoCRIOCgZzdGF0dXMYAiABKAkSDgoGZGV0YWlsGAMgAygJIsIBChpBenVyZUludGVncmF0aW9uT25ib2FyZGluZxIKCgJpZBgBIAEoCRINCgVvcmdJZBgCIAEoCRIQCghwcm92aWRlchgDIAEoCRIVCg1pbnRlZ3JhdGlvbklkGAQgASgJEhEKCWNvbXBsZXRlZBgFIAEoCBIRCgljcmVhdGVkQXQYBiABKAkSOgoJY3JlYXRlZEJ5GAcgASgLMicuYmx1ZWFwaS5nYy52MS5BenVyZU9uYm9hcmRpbmdDcmVhdGVkQnki7gQKEEF6dXJlSW50ZWdyYXRpb24SCgoCaWQYASABKAkSDgoGYWN0aXZlGAIgASgIEgwKBG5hbWUYAyABKAkSEAoIcHJvdmlkZXIYBCABKAkSDAoEdHlwZRgFIAEoCRINCgVvcmdJZBgGIAEoCRIOCgZ1c2VySWQYByABKAkSEQoJY3JlYXRlZEF0GAggASgJEhEKCXVwZGF0ZWRBdBgJIAEoCRIgChhtYW5hZ2VtZW50U3Vic2NyaXB0aW9uSWQYCiABKAkSHgoWcHJvdmlkZXJPcmdhbml6YXRpb25JZBgLIAEoCRIVCg1ibG9iQ29udGFpbmVyGAwgASgJEhUKDXJlc291cmNlR3JvdXAYDSABKAkSFgoOc3RvcmFnZUFjY291bnQYDiABKAkSGAoQY29zdEV4cG9ydEZvcm1hdBgPIAEoCRIXCg9jdXJFYXJsaWVzdERhdGEYECABKAkSFQoNY3VyUmVwb3J0TmFtZRgRIAEoCRIRCgljdXJVc2FibGUYEiABKAgSFAoMaGFzQ3VyQWNjZXNzGBMgASgIEiAKGGhhc0Z1bGxSZXNlcnZhdGlvbkFjY2VzcxgUIAEoCBJFCg9mZWF0dXJlU3RhdHVzZXMYFSADKAsyLC5ibHVlYXBpLmdjLnYxLkF6dXJlSW50ZWdyYXRpb25GZWF0dXJlU3RhdHVzEj4KC29uYm9hcmRpbmdzGBYgAygLMikuYmx1ZWFwaS5nYy52MS5BenVyZUludGVncmF0aW9uT25ib2FyZGluZxInCgZjb25maWcYFyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IrQBCh5DcmVhdGVBenVyZUludGVncmF0aW9uUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIRCgllcnJvckNvZGUYAiABKAkSFAoMZXJyb3JNZXNzYWdlGAMgASgJEhUKDWludGVncmF0aW9uSWQYBCABKAkSFgoOYmlsbGluZ0dyb3VwSWQYBSABKAkSEQoJY29tcGFueUlkGAYgASgJEhYKDnBheWVyQWNjb3VudElkGAcgASgJIlYKHUxpc3RBenVyZUludGVncmF0aW9uc1Jlc3BvbnNlEjUKDGludGVncmF0aW9ucxgBIAMoCzIfLmJsdWVhcGkuZ2MudjEuQXp1cmVJbnRlZ3JhdGlvbiJxCh5EZWxldGVBenVyZUludGVncmF0aW9uUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIRCgllcnJvckNvZGUYAiABKAkSFAoMZXJyb3JNZXNzYWdlGAMgASgJEhUKDWludGVncmF0aW9uSWQYBCABKAkqggIKEVRlcm1zQ29uc2VudFN0YXRlEiMKH1RFUk1TX0NPTlNFTlRfU1RBVEVfVU5TUEVDSUZJRUQQABIlCiFURVJNU19DT05TRU5UX1NUQVRFX05PX0FDVElWRV9UT1MQARIoCiRURVJNU19DT05TRU5UX1NUQVRFX0NPTlNFTlRfUkVRVUlSRUQQAhIhCh1URVJNU19DT05TRU5UX1NUQVRFX0NPTlNFTlRFRBADEigKJFRFUk1TX0NPTlNFTlRfU1RBVEVfVVBEQVRFX0FWQUlMQUJMRRAEEioKJlRFUk1TX0NPTlNFTlRfU1RBVEVfUkVDT05TRU5UX1JFUVVJUkVEEAUqXgoIUHJvdmlkZXISGAoUUFJPVklERVJfVU5TUEVDSUZJRUQQABIHCgNBV1MQARIJCgVBWlVSRRACEgcKA0dDUBADEg4KCktVQkVSTkVURVMQBBILCgdVTktOT1dOEAUqmAEKEENvbW1pdG1lbnRTdGF0dXMSIQodQ09NTUlUTUVOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIHCgNORVcQARIMCghSRVZJRVdFRBACEg0KCVNDSEVEVUxFRBADEg0KCUNPTVBMRVRFRBAEEgkKBURSQUZUEAUSEAoMTkVFRFNfUkVWSUVXEAYSDwoLSU5fUFJPR1JFU1MQByqKAQoZQ29tbWl0bWVudEludmVudG9yeVN0YXR1cxIrCidDT01NSVRNRU5UX0lOVkVOVE9SWV9TVEFUVVNfVU5TUEVDSUZJRUQQABIKCgZBQ1RJVkUQARILCgdSRVRJUkVEEAISEwoPUEFZTUVOVF9QRU5ESU5HEAMSEgoOUEFZTUVOVF9GQUlMRUQQBCpDCgVTY29wZRIVChFTQ09QRV9VTlNQRUNJRklFRBAAEgoKBlNIQVJFRBABEgwKCFJFR0lPTkFMEAISCQoFWk9OQUwQAypBCglVc2FnZVR5cGUSGgoWVVNBR0VfVFlQRV9VTlNQRUNJRklFRBAAEgsKB1JVTk5JTkcQARILCgdTVE9QUEVEEAIytDwKFUd1YXJhbnRlZWRDb21taXRtZW50cxJjCghMaXN0T3JncxIeLmJsdWVhcGkuZ2MudjEuTGlzdE9yZ3NSZXF1ZXN0GhIuYmx1ZWFwaS5nYy52MS5PcmciIYLT5JMCGzoBKiIWL3YxL29yZ2FuaXphdGlvbnM6cmVhZDABEpcBChRDb21taXRtZW50c1BsYW5BcHBseRIpLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudFBsYW5BcHBseVJlcXVlc3QaJC5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuRGV0YWlscyIugtPkkwIoOgEqIiMvdjEvY29tbWl0bWVudHMvcGxhbi97cGxhbklkfS9hcHBseRJ5Cg9MaXN0Q29tbWl0bWVudHMSJS5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50c1JlcXVlc3QaJi5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50c1Jlc3BvbnNlIheC0+STAhESDy92MS9jb21taXRtZW50cxKXAQoTR2V0Q29tbWl0bWVudHNDaGFydBIpLmJsdWVhcGkuZ2MudjEuR2V0Q29tbWl0bWVudHNDaGFydFJlcXVlc3QaJy5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRzQ2hhcnRSZXNwb25zZSIsgtPkkwImEiQvdjEvY29tbWl0bWVudHMve2NvbW1pdG1lbnRJZH0vY2hhcnQSrwEKGUdldENvbW1pdG1lbnRzVXRpbGl6YXRpb24SLy5ibHVlYXBpLmdjLnYxLkdldENvbW1pdG1lbnRzVXRpbGl6YXRpb25SZXF1ZXN0Gi0uYmx1ZWFwaS5nYy52MS5Db21taXRtZW50c1V0aWxpemF0aW9uUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2NvbW1pdG1lbnRzL3tjb21taXRtZW50SWR9L3V0aWxpemF0aW9uEowBChVSZWFkQ29tbWl0bWVudFJlcG9ydHMSKy5ibHVlYXBpLmdjLnYxLlJlYWRDb21taXRtZW50UmVwb3J0c1JlcXVlc3QaHy5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRSZXBvcnQiI4LT5JMCHToBKiIYL3YxL3JlcG9ydHMvaW52b2ljZTpyZWFkMAESsgEKHFJlYWRDb21taXRtZW50UmVwb3J0QWNjb3VudHMSMi5ibHVlYXBpLmdjLnYxLlJlYWRDb21taXRtZW50UmVwb3J0QWNjb3VudHNSZXF1ZXN0GiYuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UmVwb3J0QWNjb3VudCI0gtPkkwIuOgEqIikvdjEvcmVwb3J0cy9pbnZvaWNlL3ttb250aH0vYWNjb3VudHM6cmVhZDABEmMKCkdldE1ldHJpY3MSIC5ibHVlYXBpLmdjLnYxLkdldE1ldHJpY3NSZXF1ZXN0Gh4uYmx1ZWFwaS5nYy52MS5NZXRyaWNzUmVzcG9uc2UiE4LT5JMCDRILL3YxL21ldHJpY3MScQoNTGlzdFJlc291cmNlcxIjLmJsdWVhcGkuZ2MudjEuTGlzdFJlc291cmNlc1JlcXVlc3QaJC5ibHVlYXBpLmdjLnYxLkxpc3RSZXNvdXJjZXNSZXNwb25zZSIVgtPkkwIPEg0vdjEvcmVzb3VyY2VzEqEBChVHZXRSZXNvdXJjZURhaWx5VXNhZ2USKy5ibHVlYXBpLmdjLnYxLkdldFJlc291cmNlRGFpbHlVc2FnZVJlcXVlc3QaLC5ibHVlYXBpLmdjLnYxLkdldFJlc291cmNlRGFpbHlVc2FnZVJlc3BvbnNlIi2C0+STAicSJS92MS9yZXNvdXJjZXMve3Jlc291cmNlSWR9L2RhaWx5dXNhZ2USmwEKF0xpc3RSZXNlcnZhYmxlUmVzb3VyY2VzEi0uYmx1ZWFwaS5nYy52MS5MaXN0UmVzZXJ2YWJsZVJlc291cmNlc1JlcXVlc3QaLi5ibHVlYXBpLmdjLnYxLkxpc3RSZXNlcnZhYmxlUmVzb3VyY2VzUmVzcG9uc2UiIYLT5JMCGxIZL3YxL2NvbW1pdG1lbnRzL3Jlc291cmNlcxKoAQoaTGlzdFB1cmNoYXNlUGxhbnNCeVNlZ21lbnQSMC5ibHVlYXBpLmdjLnYxLkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdBoxLmJsdWVhcGkuZ2MudjEuTGlzdFB1cmNoYXNlUGxhbnNCeVNlZ21lbnRSZXNwb25zZSIlgtPkkwIfEh0vdjEvY29tbWl0bWVudHMvcHVyY2hhc2VwbGFucxLEAQogR2V0VXBkYXRlZFB1cmNoYXNlUGxhbnNCeVNlZ21lbnQSNi5ibHVlYXBpLmdjLnYxLkdldFVwZGF0ZWRQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdBo3LmJsdWVhcGkuZ2MudjEuR2V0VXBkYXRlZFB1cmNoYXNlUGxhbnNCeVNlZ21lbnRSZXNwb25zZSIvgtPkkwIpOgEqIiQvdjEvY29tbWl0bWVudHMvcHVyY2hhc2VwbGFuczp1cGRhdGUSqAEKF0dldFB1cmNoYXNlUGxhbnNEZXRhaWxzEi0uYmx1ZWFwaS5nYy52MS5HZXRQdXJjaGFzZVBsYW5zRGV0YWlsc1JlcXVlc3QaLi5ibHVlYXBpLmdjLnYxLkdldFB1cmNoYXNlUGxhbnNEZXRhaWxzUmVzcG9uc2UiLoLT5JMCKBImL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMve3BsYW5JZH0SqwEKGlNhdmVDb21taXRtZW50c1BsYW5Bc0RyYWZ0EjAuYmx1ZWFwaS5nYy52MS5TYXZlQ29tbWl0bWVudHNQbGFuQXNEcmFmdFJlcXVlc3QaIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4iN4LT5JMCMToBKiIsL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMvZHJhZnQve3BsYW5JZH0SogEKFkxpc3REcmFmdFB1cmNoYXNlUGxhbnMSLC5ibHVlYXBpLmdjLnYxLkxpc3REcmFmdFB1cmNoYXNlUGxhbnNSZXF1ZXN0Gi0uYmx1ZWFwaS5nYy52MS5MaXN0RHJhZnRQdXJjaGFzZVBsYW5zUmVzcG9uc2UiK4LT5JMCJRIjL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMvZHJhZnQSswEKF0RlbGV0ZURyYWZ0UHVyY2hhc2VQbGFuEi0uYmx1ZWFwaS5nYy52MS5EZWxldGVEcmFmdFB1cmNoYXNlUGxhblJlcXVlc3QaLi5ibHVlYXBpLmdjLnYxLkRlbGV0ZURyYWZ0UHVyY2hhc2VQbGFuUmVzcG9uc2UiOYLT5JMCMyoxL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbnMvZHJhZnQve2RyYWZ0UGxhbklkfRK6AQobR2V0QXZhaWxhYmxlQ29tbWl0bWVudFR5cGVzEjEuYmx1ZWFwaS5nYy52MS5HZXRBdmFpbGFibGVDb21taXRtZW50VHlwZXNSZXF1ZXN0GjIuYmx1ZWFwaS5nYy52MS5HZXRBdmFpbGFibGVDb21taXRtZW50VHlwZXNSZXNwb25zZSI0gtPkkwIuEiwvdjEvY29tbWl0bWVudHMvcHVyY2hhc2VwbGFucy9hdmFpbGFibGV0eXBlcxKyAQoaQ3JlYXRlQ3VzdG9tQ29tbWl0bWVudFBsYW4SMC5ibHVlYXBpLmdjLnYxLkNyZWF0ZUN1c3RvbUNvbW1pdG1lbnRQbGFuUmVxdWVzdBoxLmJsdWVhcGkuZ2MudjEuQ3JlYXRlQ3VzdG9tQ29tbWl0bWVudFBsYW5SZXNwb25zZSIvgtPkkwIpOgEqIiQvdjEvY29tbWl0bWVudHMvcHVyY2hhc2VwbGFucy9jdXN0b20SbwoLUmVnaXN0ZXJPcmcSIS5ibHVlYXBpLmdjLnYxLlJlZ2lzdGVyT3JnUmVxdWVzdBoiLmJsdWVhcGkuZ2MudjEuUmVnaXN0ZXJPcmdSZXNwb25zZSIZgtPkkwITOgEqIg4vdjEvb25ib2FyZGluZxKOAQoSU3RhcnRBd3NPbmJvYXJkaW5nEiguYmx1ZWFwaS5nYy52MS5TdGFydEF3c09uYm9hcmRpbmdSZXF1ZXN0GikuYmx1ZWFwaS5nYy52MS5TdGFydEF3c09uYm9hcmRpbmdSZXNwb25zZSIjgtPkkwIdOgEqIhgvdjEvb25ib2FyZGluZy9hd3Mvc3RhcnQSuwEKHEdldEF3c0Nsb3VkRm9ybWF0aW9uVGVtcGxhdGUSMi5ibHVlYXBpLmdjLnYxLkdldEF3c0Nsb3VkRm9ybWF0aW9uVGVtcGxhdGVSZXF1ZXN0GjMuYmx1ZWFwaS5nYy52MS5HZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlUmVzcG9uc2UiMoLT5JMCLBIqL3YxL29uYm9hcmRpbmcvYXdzL2Nsb3VkZm9ybWF0aW9uL3RlbXBsYXRlEqkBChRHZXRBd3NMYXVuY2hTdGFja1VybBIqLmJsdWVhcGkuZ2MudjEuR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXF1ZXN0GisuYmx1ZWFwaS5nYy52MS5HZXRBd3NMYXVuY2hTdGFja1VybFJlc3BvbnNlIjiC0+STAjISMC92MS9vbmJvYXJkaW5nL2F3cy9jbG91ZGZvcm1hdGlvbi9sYXVuY2hzdGFja3VybBKSAQoTVmVyaWZ5QXdzT25ib2FyZGluZxIpLmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1JlcXVlc3QaKi5ibHVlYXBpLmdjLnYxLlZlcmlmeUF3c09uYm9hcmRpbmdSZXNwb25zZSIkgtPkkwIeOgEqIhkvdjEvb25ib2FyZGluZy9hd3MvdmVyaWZ5EpMBChNHZXRPbmJvYXJkaW5nU3RhdHVzEikuYmx1ZWFwaS5nYy52MS5HZXRPbmJvYXJkaW5nU3RhdHVzUmVxdWVzdBoqLmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1Jlc3BvbnNlIiWC0+STAh86ASoiGi92MS9vbmJvYXJkaW5nL3N0YXR1czpyZWFkEogBChFMaXN0UGF5ZXJBY2NvdW50cxInLmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXF1ZXN0GiguYmx1ZWFwaS5nYy52MS5MaXN0UGF5ZXJBY2NvdW50c1Jlc3BvbnNlIiCC0+STAhoSGC92MS9tYW5hZ2VtZW50cy9hY2NvdW50cxKmAQoWU2V0UGF5ZXJBY2NvdW50RW5hYmxlZBIsLmJsdWVhcGkuZ2MudjEuU2V0UGF5ZXJBY2NvdW50RW5hYmxlZFJlcXVlc3QaLS5ibHVlYXBpLmdjLnYxLlNldFBheWVyQWNjb3VudEVuYWJsZWRSZXNwb25zZSIvgtPkkwIpOgEqIiQvdjEvbWFuYWdlbWVudHMvYWNjb3VudHMve2NvbXBhbnlJZH0SmwEKFUdldFBheWVyQWNjb3VudFN0YXR1cxIrLmJsdWVhcGkuZ2MudjEuR2V0UGF5ZXJBY2NvdW50U3RhdHVzUmVxdWVzdBosLmJsdWVhcGkuZ2MudjEuR2V0UGF5ZXJBY2NvdW50U3RhdHVzUmVzcG9uc2UiJ4LT5JMCIRIfL3YxL21hbmFnZW1lbnRzL2FjY291bnRzL3N0YXR1cxKNAQoRTGlzdEJpbGxpbmdHcm91cHMSJy5ibHVlYXBpLmdjLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVxdWVzdBooLmJsdWVhcGkuZ2MudjEuTGlzdEJpbGxpbmdHcm91cHNSZXNwb25zZSIlgtPkkwIfEh0vdjEvbWFuYWdlbWVudHMvYmlsbGluZ2dyb3VwcxKoAQoVU2V0QmlsbGluZ0dyb3VwU3RhdHVzEisuYmx1ZWFwaS5nYy52MS5TZXRCaWxsaW5nR3JvdXBTdGF0dXNSZXF1ZXN0GiwuYmx1ZWFwaS5nYy52MS5TZXRCaWxsaW5nR3JvdXBTdGF0dXNSZXNwb25zZSI0gtPkkwIuOgEqIikvdjEvbWFuYWdlbWVudHMvYmlsbGluZ2dyb3Vwcy97Y29tcGFueUlkfRKgAQoVR2V0QmlsbGluZ0dyb3VwU3RhdHVzEisuYmx1ZWFwaS5nYy52MS5HZXRCaWxsaW5nR3JvdXBTdGF0dXNSZXF1ZXN0GiwuYmx1ZWFwaS5nYy52MS5HZXRCaWxsaW5nR3JvdXBTdGF0dXNSZXNwb25zZSIsgtPkkwImEiQvdjEvbWFuYWdlbWVudHMvYmlsbGluZ2dyb3Vwcy9zdGF0dXMSoAEKFFZhbGlkYXRlQmlsbGluZ0dyb3VwEiouYmx1ZWFwaS5nYy52MS5WYWxpZGF0ZUJpbGxpbmdHcm91cFJlcXVlc3QaKy5ibHVlYXBpLmdjLnYxLlZhbGlkYXRlQmlsbGluZ0dyb3VwUmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL29uYm9hcmRpbmcvYmlsbGluZ2dyb3VwOnZhbGlkYXRlEqMBChJHZXRBd3NQcml2YXRlT2ZmZXISKC5ibHVlYXBpLmdjLnYxLkdldEF3c1ByaXZhdGVPZmZlclJlcXVlc3QaKS5ibHVlYXBpLmdjLnYxLkdldEF3c1ByaXZhdGVPZmZlclJlc3BvbnNlIjiC0+STAjISMC92MS9vbmJvYXJkaW5nL2F3cy9wcml2YXRlb2ZmZXIve3BheWVyQWNjb3VudElkfRKvAQoXQWNjZXB0QmlsbGluZ0dyb3VwVGVybXMSLS5ibHVlYXBpLmdjLnYxLkFjY2VwdEJpbGxpbmdHcm91cFRlcm1zUmVxdWVzdBouLmJsdWVhcGkuZ2MudjEuQWNjZXB0QmlsbGluZ0dyb3VwVGVybXNSZXNwb25zZSI1gtPkkwIvOgEqIiovdjEvbWFuYWdlbWVudHMvYmlsbGluZ2dyb3Vwcy90ZXJtczphY2NlcHQSzwEKIkdldEd1YXJhbnRlZWRDb21taXRtZW50VGVtcGxhdGVVcmwSOC5ibHVlYXBpLmdjLnYxLkdldEd1YXJhbnRlZWRDb21taXRtZW50VGVtcGxhdGVVcmxSZXF1ZXN0GjkuYmx1ZWFwaS5nYy52MS5HZXRHdWFyYW50ZWVkQ29tbWl0bWVudFRlbXBsYXRlVXJsUmVzcG9uc2UiNILT5JMCLhIsL3YxL29uYm9hcmRpbmcvYXdzL2NmdGVtcGxhdGUvZ3VhcmFudGVlZDp1cmwSyAEKIENyZWF0ZUd1YXJhbnRlZWRDb21taXRtZW50QWNjZXNzEjYuYmx1ZWFwaS5nYy52MS5DcmVhdGVHdWFyYW50ZWVkQ29tbWl0bWVudEFjY2Vzc1JlcXVlc3QaNy5ibHVlYXBpLmdjLnYxLkNyZWF0ZUd1YXJhbnRlZWRDb21taXRtZW50QWNjZXNzUmVzcG9uc2UiM4LT5JMCLToBKiIoL3YxL29uYm9hcmRpbmcvYXdzL2NmdGVtcGxhdGUvZ3VhcmFudGVlZBKWAQoUU3RhcnRBenVyZU9uYm9hcmRpbmcSKi5ibHVlYXBpLmdjLnYxLlN0YXJ0QXp1cmVPbmJvYXJkaW5nUmVxdWVzdBorLmJsdWVhcGkuZ2MudjEuU3RhcnRBenVyZU9uYm9hcmRpbmdSZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvb25ib2FyZGluZy9henVyZS9zdGFydBKgAQoVVXBkYXRlQXp1cmVPbmJvYXJkaW5nEisuYmx1ZWFwaS5nYy52MS5VcGRhdGVBenVyZU9uYm9hcmRpbmdSZXF1ZXN0GiMuYmx1ZWFwaS5nYy52MS5BenVyZU9uYm9hcmRpbmdTdGF0ZSI1gtPkkwIvOgEqIiovdjEvb25ib2FyZGluZy9henVyZS97b25ib2FyZGluZ0lkfTp1cGRhdGUSswEKGUdldEF6dXJlT25ib2FyZGluZ0F1dGhVcmwSLy5ibHVlYXBpLmdjLnYxLkdldEF6dXJlT25ib2FyZGluZ0F1dGhVcmxSZXF1ZXN0GjAuYmx1ZWFwaS5nYy52MS5HZXRBenVyZU9uYm9hcmRpbmdBdXRoVXJsUmVzcG9uc2UiM4LT5JMCLRIrL3YxL29uYm9hcmRpbmcvYXp1cmUve29uYm9hcmRpbmdJZH0vYXV0aHVybBKmAQoXVmFsaWRhdGVBenVyZUFwcEluc3RhbGwSLS5ibHVlYXBpLmdjLnYxLlZhbGlkYXRlQXp1cmVBcHBJbnN0YWxsUmVxdWVzdBojLmJsdWVhcGkuZ2MudjEuQXp1cmVPbmJvYXJkaW5nU3RhdGUiN4LT5JMCMToBKiIsL3YxL29uYm9hcmRpbmcvYXp1cmUve29uYm9hcmRpbmdJZH0vdmFsaWRhdGUSugEKG0xpc3RBenVyZU9uYm9hcmRpbmdBY2NvdW50cxIxLmJsdWVhcGkuZ2MudjEuTGlzdEF6dXJlT25ib2FyZGluZ0FjY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuZ2MudjEuTGlzdEF6dXJlT25ib2FyZGluZ0FjY291bnRzUmVzcG9uc2UiNILT5JMCLhIsL3YxL29uYm9hcmRpbmcvYXp1cmUve29uYm9hcmRpbmdJZH0vYWNjb3VudHMSogEKFkNyZWF0ZUF6dXJlSW50ZWdyYXRpb24SLC5ibHVlYXBpLmdjLnYxLkNyZWF0ZUF6dXJlSW50ZWdyYXRpb25SZXF1ZXN0Gi0uYmx1ZWFwaS5nYy52MS5DcmVhdGVBenVyZUludGVncmF0aW9uUmVzcG9uc2UiK4LT5JMCJToBKiIgL3YxL29uYm9hcmRpbmcvYXp1cmUvaW50ZWdyYXRpb24SnQEKFUxpc3RBenVyZUludGVncmF0aW9ucxIrLmJsdWVhcGkuZ2MudjEuTGlzdEF6dXJlSW50ZWdyYXRpb25zUmVxdWVzdBosLmJsdWVhcGkuZ2MudjEuTGlzdEF6dXJlSW50ZWdyYXRpb25zUmVzcG9uc2UiKYLT5JMCIxIhL3YxL29uYm9hcmRpbmcvYXp1cmUvaW50ZWdyYXRpb25zEq4BChZEZWxldGVBenVyZUludGVncmF0aW9uEiwuYmx1ZWFwaS5nYy52MS5EZWxldGVBenVyZUludGVncmF0aW9uUmVxdWVzdBotLmJsdWVhcGkuZ2MudjEuRGVsZXRlQXp1cmVJbnRlZ3JhdGlvblJlc3BvbnNlIjeC0+STAjEqLy92MS9vbmJvYXJkaW5nL2F6dXJlL2ludGVncmF0aW9uL3tvbmJvYXJkaW5nSWR9EowBChVHZXRUZXJtc0NvbnNlbnRTdGF0dXMSKy5ibHVlYXBpLmdjLnYxLkdldFRlcm1zQ29uc2VudFN0YXR1c1JlcXVlc3QaLC5ibHVlYXBpLmdjLnYxLkdldFRlcm1zQ29uc2VudFN0YXR1c1Jlc3BvbnNlIhiC0+STAhISEC92MS90ZXJtcy9zdGF0dXMSigEKEEdldFRlcm1zRG9jdW1lbnQSJi5ibHVlYXBpLmdjLnYxLkdldFRlcm1zRG9jdW1lbnRSZXF1ZXN0GicuYmx1ZWFwaS5nYy52MS5HZXRUZXJtc0RvY3VtZW50UmVzcG9uc2UiJYLT5JMCHxIdL3YxL3Rlcm1zL2RvY3VtZW50L3tsYW5ndWFnZX0ScQoLQWNjZXB0VGVybXMSIS5ibHVlYXBpLmdjLnYxLkFjY2VwdFRlcm1zUmVxdWVzdBoiLmJsdWVhcGkuZ2MudjEuQWNjZXB0VGVybXNSZXNwb25zZSIbgtPkkwIVOgEqIhAvdjEvdGVybXM6YWNjZXB0GqIBkkGeARJQKEFscGhhKSBHdWFyYW50ZWVkQ29tbWl0bWVudHMgQVBJLiBCYXNlIFVSTDogaHR0cHM6Ly9hcGkuYWxwaGF1cy5jbG91ZC9tL2JsdWUvZ2MaSgoSU2VydmljZSBkZWZpbml0aW9uEjRodHRwczovL2dpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS90cmVlL21haW4vZ2MvQlUKFGNsb3VkLmFscGhhdXMuYXBpLmdjQhpHdWFyYW50ZWVkQ29tbWl0bWVudHNQcm90b1ohZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL2djYgZwcm90bzM", [file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_struct, file_protoc_gen_openapiv2_options_annotations]);
19
19
 
20
20
  /**
21
21
  * Product and consent scope are derived from authenticated request context.
@@ -1308,7 +1308,9 @@ export type CreateCustomCommitmentPlanRequest = Message<"blueapi.gc.v1.CreateCus
1308
1308
  *
1309
1309
  * Acceptable commitment_type values:
1310
1310
  * "aws/AmazonEC2", "aws/AmazonRDS", "aws/AmazonElastiCache",
1311
- * "aws/savingsplan/Compute", "aws/savingsplan/EC2Instance", "aws/savingsplan/Database"
1311
+ * "aws/savingsplan/Compute", "aws/savingsplan/EC2Instance", "aws/savingsplan/Database",
1312
+ * "azure/savingsplan/Compute", "azure/savingsplan/Database",
1313
+ * "azure/Virtual Machines", "azure/SQL Database", "azure/Storage", "azure/Azure Monitor"
1312
1314
  *
1313
1315
  * Acceptable term values:
1314
1316
  * "thirty_day_gris" - 30-day Archera Insured (leased: true)
@@ -1953,6 +1955,36 @@ export type ListAzureIntegrationsRequest = Message<"blueapi.gc.v1.ListAzureInteg
1953
1955
  export const ListAzureIntegrationsRequestSchema: GenMessage<ListAzureIntegrationsRequest> = /*@__PURE__*/
1954
1956
  messageDesc(file_gc_v1_gc, 50);
1955
1957
 
1958
+ /**
1959
+ * DeleteAzureIntegrationRequest identifies which Azure integration to remove.
1960
+ * integrationId is intentionally not a request field — it is resolved
1961
+ * server-side from onboardingId.
1962
+ *
1963
+ * @generated from message blueapi.gc.v1.DeleteAzureIntegrationRequest
1964
+ */
1965
+ export type DeleteAzureIntegrationRequest = Message<"blueapi.gc.v1.DeleteAzureIntegrationRequest"> & {
1966
+ /**
1967
+ * Required. Archera org ID.
1968
+ *
1969
+ * @generated from field: string gcOrgId = 1;
1970
+ */
1971
+ gcOrgId: string;
1972
+
1973
+ /**
1974
+ * Required. Identifies which onboarding's integration to delete.
1975
+ *
1976
+ * @generated from field: string onboardingId = 2;
1977
+ */
1978
+ onboardingId: string;
1979
+ };
1980
+
1981
+ /**
1982
+ * Describes the message blueapi.gc.v1.DeleteAzureIntegrationRequest.
1983
+ * Use `create(DeleteAzureIntegrationRequestSchema)` to create a new message.
1984
+ */
1985
+ export const DeleteAzureIntegrationRequestSchema: GenMessage<DeleteAzureIntegrationRequest> = /*@__PURE__*/
1986
+ messageDesc(file_gc_v1_gc, 51);
1987
+
1956
1988
  /**
1957
1989
  * Active published Terms of Service version metadata.
1958
1990
  *
@@ -2000,7 +2032,7 @@ export type TermsOfServiceVersion = Message<"blueapi.gc.v1.TermsOfServiceVersion
2000
2032
  * Use `create(TermsOfServiceVersionSchema)` to create a new message.
2001
2033
  */
2002
2034
  export const TermsOfServiceVersionSchema: GenMessage<TermsOfServiceVersion> = /*@__PURE__*/
2003
- messageDesc(file_gc_v1_gc, 51);
2035
+ messageDesc(file_gc_v1_gc, 52);
2004
2036
 
2005
2037
  /**
2006
2038
  * Evaluated consent status used by the Ripple and WavePro frontends.
@@ -2054,7 +2086,7 @@ export type GetTermsConsentStatusResponse = Message<"blueapi.gc.v1.GetTermsConse
2054
2086
  * Use `create(GetTermsConsentStatusResponseSchema)` to create a new message.
2055
2087
  */
2056
2088
  export const GetTermsConsentStatusResponseSchema: GenMessage<GetTermsConsentStatusResponse> = /*@__PURE__*/
2057
- messageDesc(file_gc_v1_gc, 52);
2089
+ messageDesc(file_gc_v1_gc, 53);
2058
2090
 
2059
2091
  /**
2060
2092
  * Contains temporary read access to one language document of the current
@@ -2111,7 +2143,7 @@ export type GetTermsDocumentResponse = Message<"blueapi.gc.v1.GetTermsDocumentRe
2111
2143
  * Use `create(GetTermsDocumentResponseSchema)` to create a new message.
2112
2144
  */
2113
2145
  export const GetTermsDocumentResponseSchema: GenMessage<GetTermsDocumentResponse> = /*@__PURE__*/
2114
- messageDesc(file_gc_v1_gc, 53);
2146
+ messageDesc(file_gc_v1_gc, 54);
2115
2147
 
2116
2148
  /**
2117
2149
  * Recorded acceptance of one Terms of Service version.
@@ -2153,7 +2185,7 @@ export type TermsConsentRecord = Message<"blueapi.gc.v1.TermsConsentRecord"> & {
2153
2185
  * Use `create(TermsConsentRecordSchema)` to create a new message.
2154
2186
  */
2155
2187
  export const TermsConsentRecordSchema: GenMessage<TermsConsentRecord> = /*@__PURE__*/
2156
- messageDesc(file_gc_v1_gc, 54);
2188
+ messageDesc(file_gc_v1_gc, 55);
2157
2189
 
2158
2190
  /**
2159
2191
  * Contains the saved consent and updated consent state.
@@ -2179,7 +2211,7 @@ export type AcceptTermsResponse = Message<"blueapi.gc.v1.AcceptTermsResponse"> &
2179
2211
  * Use `create(AcceptTermsResponseSchema)` to create a new message.
2180
2212
  */
2181
2213
  export const AcceptTermsResponseSchema: GenMessage<AcceptTermsResponse> = /*@__PURE__*/
2182
- messageDesc(file_gc_v1_gc, 55);
2214
+ messageDesc(file_gc_v1_gc, 56);
2183
2215
 
2184
2216
  /**
2185
2217
  * @generated from message blueapi.gc.v1.Org
@@ -2206,7 +2238,7 @@ export type Org = Message<"blueapi.gc.v1.Org"> & {
2206
2238
  * Use `create(OrgSchema)` to create a new message.
2207
2239
  */
2208
2240
  export const OrgSchema: GenMessage<Org> = /*@__PURE__*/
2209
- messageDesc(file_gc_v1_gc, 56);
2241
+ messageDesc(file_gc_v1_gc, 57);
2210
2242
 
2211
2243
  /**
2212
2244
  * @generated from message blueapi.gc.v1.CommitmentPlanDetails
@@ -2343,7 +2375,7 @@ export type CommitmentPlanDetails = Message<"blueapi.gc.v1.CommitmentPlanDetails
2343
2375
  * Use `create(CommitmentPlanDetailsSchema)` to create a new message.
2344
2376
  */
2345
2377
  export const CommitmentPlanDetailsSchema: GenMessage<CommitmentPlanDetails> = /*@__PURE__*/
2346
- messageDesc(file_gc_v1_gc, 57);
2378
+ messageDesc(file_gc_v1_gc, 58);
2347
2379
 
2348
2380
  /**
2349
2381
  * @generated from message blueapi.gc.v1.CommitmentPlanLineItem
@@ -2520,7 +2552,7 @@ export type CommitmentPlanLineItem = Message<"blueapi.gc.v1.CommitmentPlanLineIt
2520
2552
  * Use `create(CommitmentPlanLineItemSchema)` to create a new message.
2521
2553
  */
2522
2554
  export const CommitmentPlanLineItemSchema: GenMessage<CommitmentPlanLineItem> = /*@__PURE__*/
2523
- messageDesc(file_gc_v1_gc, 58);
2555
+ messageDesc(file_gc_v1_gc, 59);
2524
2556
 
2525
2557
  /**
2526
2558
  * @generated from message blueapi.gc.v1.CommitmentPlanResourceMatch
@@ -2667,7 +2699,7 @@ export type CommitmentPlanResourceMatch = Message<"blueapi.gc.v1.CommitmentPlanR
2667
2699
  * Use `create(CommitmentPlanResourceMatchSchema)` to create a new message.
2668
2700
  */
2669
2701
  export const CommitmentPlanResourceMatchSchema: GenMessage<CommitmentPlanResourceMatch> = /*@__PURE__*/
2670
- messageDesc(file_gc_v1_gc, 59);
2702
+ messageDesc(file_gc_v1_gc, 60);
2671
2703
 
2672
2704
  /**
2673
2705
  * @generated from message blueapi.gc.v1.Lease
@@ -2739,7 +2771,7 @@ export type Lease = Message<"blueapi.gc.v1.Lease"> & {
2739
2771
  * Use `create(LeaseSchema)` to create a new message.
2740
2772
  */
2741
2773
  export const LeaseSchema: GenMessage<Lease> = /*@__PURE__*/
2742
- messageDesc(file_gc_v1_gc, 60);
2774
+ messageDesc(file_gc_v1_gc, 61);
2743
2775
 
2744
2776
  /**
2745
2777
  * @generated from message blueapi.gc.v1.DailyUtilization
@@ -2766,7 +2798,7 @@ export type DailyUtilization = Message<"blueapi.gc.v1.DailyUtilization"> & {
2766
2798
  * Use `create(DailyUtilizationSchema)` to create a new message.
2767
2799
  */
2768
2800
  export const DailyUtilizationSchema: GenMessage<DailyUtilization> = /*@__PURE__*/
2769
- messageDesc(file_gc_v1_gc, 61);
2801
+ messageDesc(file_gc_v1_gc, 62);
2770
2802
 
2771
2803
  /**
2772
2804
  * @generated from message blueapi.gc.v1.Commitment
@@ -2998,7 +3030,7 @@ export type Commitment = Message<"blueapi.gc.v1.Commitment"> & {
2998
3030
  * Use `create(CommitmentSchema)` to create a new message.
2999
3031
  */
3000
3032
  export const CommitmentSchema: GenMessage<Commitment> = /*@__PURE__*/
3001
- messageDesc(file_gc_v1_gc, 62);
3033
+ messageDesc(file_gc_v1_gc, 63);
3002
3034
 
3003
3035
  /**
3004
3036
  * @generated from message blueapi.gc.v1.ListCommitmentsResponse
@@ -3015,7 +3047,7 @@ export type ListCommitmentsResponse = Message<"blueapi.gc.v1.ListCommitmentsResp
3015
3047
  * Use `create(ListCommitmentsResponseSchema)` to create a new message.
3016
3048
  */
3017
3049
  export const ListCommitmentsResponseSchema: GenMessage<ListCommitmentsResponse> = /*@__PURE__*/
3018
- messageDesc(file_gc_v1_gc, 63);
3050
+ messageDesc(file_gc_v1_gc, 64);
3019
3051
 
3020
3052
  /**
3021
3053
  * @generated from message blueapi.gc.v1.CommitmentsChartData
@@ -3042,7 +3074,7 @@ export type CommitmentsChartData = Message<"blueapi.gc.v1.CommitmentsChartData">
3042
3074
  * Use `create(CommitmentsChartDataSchema)` to create a new message.
3043
3075
  */
3044
3076
  export const CommitmentsChartDataSchema: GenMessage<CommitmentsChartData> = /*@__PURE__*/
3045
- messageDesc(file_gc_v1_gc, 64);
3077
+ messageDesc(file_gc_v1_gc, 65);
3046
3078
 
3047
3079
  /**
3048
3080
  * @generated from message blueapi.gc.v1.CommitmentsChartResponse
@@ -3059,7 +3091,7 @@ export type CommitmentsChartResponse = Message<"blueapi.gc.v1.CommitmentsChartRe
3059
3091
  * Use `create(CommitmentsChartResponseSchema)` to create a new message.
3060
3092
  */
3061
3093
  export const CommitmentsChartResponseSchema: GenMessage<CommitmentsChartResponse> = /*@__PURE__*/
3062
- messageDesc(file_gc_v1_gc, 65);
3094
+ messageDesc(file_gc_v1_gc, 66);
3063
3095
 
3064
3096
  /**
3065
3097
  * @generated from message blueapi.gc.v1.CommitmentsUtilizationData
@@ -3121,7 +3153,7 @@ export type CommitmentsUtilizationData = Message<"blueapi.gc.v1.CommitmentsUtili
3121
3153
  * Use `create(CommitmentsUtilizationDataSchema)` to create a new message.
3122
3154
  */
3123
3155
  export const CommitmentsUtilizationDataSchema: GenMessage<CommitmentsUtilizationData> = /*@__PURE__*/
3124
- messageDesc(file_gc_v1_gc, 66);
3156
+ messageDesc(file_gc_v1_gc, 67);
3125
3157
 
3126
3158
  /**
3127
3159
  * @generated from message blueapi.gc.v1.CommitmentsUtilizationResponse
@@ -3138,7 +3170,7 @@ export type CommitmentsUtilizationResponse = Message<"blueapi.gc.v1.CommitmentsU
3138
3170
  * Use `create(CommitmentsUtilizationResponseSchema)` to create a new message.
3139
3171
  */
3140
3172
  export const CommitmentsUtilizationResponseSchema: GenMessage<CommitmentsUtilizationResponse> = /*@__PURE__*/
3141
- messageDesc(file_gc_v1_gc, 67);
3173
+ messageDesc(file_gc_v1_gc, 68);
3142
3174
 
3143
3175
  /**
3144
3176
  * @generated from message blueapi.gc.v1.CommitmentReport
@@ -3195,7 +3227,7 @@ export type CommitmentReport = Message<"blueapi.gc.v1.CommitmentReport"> & {
3195
3227
  * Use `create(CommitmentReportSchema)` to create a new message.
3196
3228
  */
3197
3229
  export const CommitmentReportSchema: GenMessage<CommitmentReport> = /*@__PURE__*/
3198
- messageDesc(file_gc_v1_gc, 68);
3230
+ messageDesc(file_gc_v1_gc, 69);
3199
3231
 
3200
3232
  /**
3201
3233
  * @generated from message blueapi.gc.v1.CommitmentReportAccount
@@ -3257,7 +3289,7 @@ export type CommitmentReportAccount = Message<"blueapi.gc.v1.CommitmentReportAcc
3257
3289
  * Use `create(CommitmentReportAccountSchema)` to create a new message.
3258
3290
  */
3259
3291
  export const CommitmentReportAccountSchema: GenMessage<CommitmentReportAccount> = /*@__PURE__*/
3260
- messageDesc(file_gc_v1_gc, 69);
3292
+ messageDesc(file_gc_v1_gc, 70);
3261
3293
 
3262
3294
  /**
3263
3295
  * @generated from message blueapi.gc.v1.MetricsResponse
@@ -3349,7 +3381,7 @@ export type MetricsResponse = Message<"blueapi.gc.v1.MetricsResponse"> & {
3349
3381
  * Use `create(MetricsResponseSchema)` to create a new message.
3350
3382
  */
3351
3383
  export const MetricsResponseSchema: GenMessage<MetricsResponse> = /*@__PURE__*/
3352
- messageDesc(file_gc_v1_gc, 70);
3384
+ messageDesc(file_gc_v1_gc, 71);
3353
3385
 
3354
3386
  /**
3355
3387
  * @generated from message blueapi.gc.v1.Resource
@@ -3586,7 +3618,7 @@ export type Resource = Message<"blueapi.gc.v1.Resource"> & {
3586
3618
  * Use `create(ResourceSchema)` to create a new message.
3587
3619
  */
3588
3620
  export const ResourceSchema: GenMessage<Resource> = /*@__PURE__*/
3589
- messageDesc(file_gc_v1_gc, 71);
3621
+ messageDesc(file_gc_v1_gc, 72);
3590
3622
 
3591
3623
  /**
3592
3624
  * @generated from message blueapi.gc.v1.ListResourcesResponse
@@ -3603,7 +3635,7 @@ export type ListResourcesResponse = Message<"blueapi.gc.v1.ListResourcesResponse
3603
3635
  * Use `create(ListResourcesResponseSchema)` to create a new message.
3604
3636
  */
3605
3637
  export const ListResourcesResponseSchema: GenMessage<ListResourcesResponse> = /*@__PURE__*/
3606
- messageDesc(file_gc_v1_gc, 72);
3638
+ messageDesc(file_gc_v1_gc, 73);
3607
3639
 
3608
3640
  /**
3609
3641
  * @generated from message blueapi.gc.v1.ResourceDailyUsage
@@ -3697,7 +3729,7 @@ export type ResourceDailyUsage = Message<"blueapi.gc.v1.ResourceDailyUsage"> & {
3697
3729
  * Use `create(ResourceDailyUsageSchema)` to create a new message.
3698
3730
  */
3699
3731
  export const ResourceDailyUsageSchema: GenMessage<ResourceDailyUsage> = /*@__PURE__*/
3700
- messageDesc(file_gc_v1_gc, 73);
3732
+ messageDesc(file_gc_v1_gc, 74);
3701
3733
 
3702
3734
  /**
3703
3735
  * @generated from message blueapi.gc.v1.GetResourceDailyUsageResponse
@@ -3714,7 +3746,7 @@ export type GetResourceDailyUsageResponse = Message<"blueapi.gc.v1.GetResourceDa
3714
3746
  * Use `create(GetResourceDailyUsageResponseSchema)` to create a new message.
3715
3747
  */
3716
3748
  export const GetResourceDailyUsageResponseSchema: GenMessage<GetResourceDailyUsageResponse> = /*@__PURE__*/
3717
- messageDesc(file_gc_v1_gc, 74);
3749
+ messageDesc(file_gc_v1_gc, 75);
3718
3750
 
3719
3751
  /**
3720
3752
  * ReservableResource is a fully-detailed infrastructure resource returned by ListReservableResources.
@@ -4150,7 +4182,7 @@ export type ReservableResource = Message<"blueapi.gc.v1.ReservableResource"> & {
4150
4182
  * Use `create(ReservableResourceSchema)` to create a new message.
4151
4183
  */
4152
4184
  export const ReservableResourceSchema: GenMessage<ReservableResource> = /*@__PURE__*/
4153
- messageDesc(file_gc_v1_gc, 75);
4185
+ messageDesc(file_gc_v1_gc, 76);
4154
4186
 
4155
4187
  /**
4156
4188
  * @generated from message blueapi.gc.v1.ListReservableResourcesResponse
@@ -4167,7 +4199,7 @@ export type ListReservableResourcesResponse = Message<"blueapi.gc.v1.ListReserva
4167
4199
  * Use `create(ListReservableResourcesResponseSchema)` to create a new message.
4168
4200
  */
4169
4201
  export const ListReservableResourcesResponseSchema: GenMessage<ListReservableResourcesResponse> = /*@__PURE__*/
4170
- messageDesc(file_gc_v1_gc, 76);
4202
+ messageDesc(file_gc_v1_gc, 77);
4171
4203
 
4172
4204
  /**
4173
4205
  * @generated from message blueapi.gc.v1.Segment
@@ -4204,7 +4236,7 @@ export type Segment = Message<"blueapi.gc.v1.Segment"> & {
4204
4236
  * Use `create(SegmentSchema)` to create a new message.
4205
4237
  */
4206
4238
  export const SegmentSchema: GenMessage<Segment> = /*@__PURE__*/
4207
- messageDesc(file_gc_v1_gc, 77);
4239
+ messageDesc(file_gc_v1_gc, 78);
4208
4240
 
4209
4241
  /**
4210
4242
  * @generated from message blueapi.gc.v1.SegmentCreator
@@ -4231,7 +4263,7 @@ export type SegmentCreator = Message<"blueapi.gc.v1.SegmentCreator"> & {
4231
4263
  * Use `create(SegmentCreatorSchema)` to create a new message.
4232
4264
  */
4233
4265
  export const SegmentCreatorSchema: GenMessage<SegmentCreator> = /*@__PURE__*/
4234
- messageDesc(file_gc_v1_gc, 78);
4266
+ messageDesc(file_gc_v1_gc, 79);
4235
4267
 
4236
4268
  /**
4237
4269
  * @generated from message blueapi.gc.v1.PurchasePlan
@@ -4263,7 +4295,7 @@ export type PurchasePlan = Message<"blueapi.gc.v1.PurchasePlan"> & {
4263
4295
  * Use `create(PurchasePlanSchema)` to create a new message.
4264
4296
  */
4265
4297
  export const PurchasePlanSchema: GenMessage<PurchasePlan> = /*@__PURE__*/
4266
- messageDesc(file_gc_v1_gc, 79);
4298
+ messageDesc(file_gc_v1_gc, 80);
4267
4299
 
4268
4300
  /**
4269
4301
  * @generated from message blueapi.gc.v1.SegmentDetails
@@ -4408,7 +4440,7 @@ export type SegmentDetails = Message<"blueapi.gc.v1.SegmentDetails"> & {
4408
4440
  * Use `create(SegmentDetailsSchema)` to create a new message.
4409
4441
  */
4410
4442
  export const SegmentDetailsSchema: GenMessage<SegmentDetails> = /*@__PURE__*/
4411
- messageDesc(file_gc_v1_gc, 80);
4443
+ messageDesc(file_gc_v1_gc, 81);
4412
4444
 
4413
4445
  /**
4414
4446
  * @generated from message blueapi.gc.v1.ContractSpec
@@ -4440,7 +4472,7 @@ export type ContractSpec = Message<"blueapi.gc.v1.ContractSpec"> & {
4440
4472
  * Use `create(ContractSpecSchema)` to create a new message.
4441
4473
  */
4442
4474
  export const ContractSpecSchema: GenMessage<ContractSpec> = /*@__PURE__*/
4443
- messageDesc(file_gc_v1_gc, 81);
4475
+ messageDesc(file_gc_v1_gc, 82);
4444
4476
 
4445
4477
  /**
4446
4478
  * @generated from message blueapi.gc.v1.PlanSummary
@@ -4527,7 +4559,7 @@ export type PlanSummary = Message<"blueapi.gc.v1.PlanSummary"> & {
4527
4559
  * Use `create(PlanSummarySchema)` to create a new message.
4528
4560
  */
4529
4561
  export const PlanSummarySchema: GenMessage<PlanSummary> = /*@__PURE__*/
4530
- messageDesc(file_gc_v1_gc, 82);
4562
+ messageDesc(file_gc_v1_gc, 83);
4531
4563
 
4532
4564
  /**
4533
4565
  * @generated from message blueapi.gc.v1.ServiceSummary
@@ -4619,7 +4651,7 @@ export type ServiceSummary = Message<"blueapi.gc.v1.ServiceSummary"> & {
4619
4651
  * Use `create(ServiceSummarySchema)` to create a new message.
4620
4652
  */
4621
4653
  export const ServiceSummarySchema: GenMessage<ServiceSummary> = /*@__PURE__*/
4622
- messageDesc(file_gc_v1_gc, 83);
4654
+ messageDesc(file_gc_v1_gc, 84);
4623
4655
 
4624
4656
  /**
4625
4657
  * @generated from message blueapi.gc.v1.AggregateMetrics
@@ -4646,7 +4678,7 @@ export type AggregateMetrics = Message<"blueapi.gc.v1.AggregateMetrics"> & {
4646
4678
  * Use `create(AggregateMetricsSchema)` to create a new message.
4647
4679
  */
4648
4680
  export const AggregateMetricsSchema: GenMessage<AggregateMetrics> = /*@__PURE__*/
4649
- messageDesc(file_gc_v1_gc, 84);
4681
+ messageDesc(file_gc_v1_gc, 85);
4650
4682
 
4651
4683
  /**
4652
4684
  * @generated from message blueapi.gc.v1.DefaultPurchasePlan
@@ -4963,7 +4995,7 @@ export type DefaultPurchasePlan = Message<"blueapi.gc.v1.DefaultPurchasePlan"> &
4963
4995
  * Use `create(DefaultPurchasePlanSchema)` to create a new message.
4964
4996
  */
4965
4997
  export const DefaultPurchasePlanSchema: GenMessage<DefaultPurchasePlan> = /*@__PURE__*/
4966
- messageDesc(file_gc_v1_gc, 85);
4998
+ messageDesc(file_gc_v1_gc, 86);
4967
4999
 
4968
5000
  /**
4969
5001
  * @generated from message blueapi.gc.v1.ListPurchasePlansBySegmentResponse
@@ -4980,7 +5012,7 @@ export type ListPurchasePlansBySegmentResponse = Message<"blueapi.gc.v1.ListPurc
4980
5012
  * Use `create(ListPurchasePlansBySegmentResponseSchema)` to create a new message.
4981
5013
  */
4982
5014
  export const ListPurchasePlansBySegmentResponseSchema: GenMessage<ListPurchasePlansBySegmentResponse> = /*@__PURE__*/
4983
- messageDesc(file_gc_v1_gc, 86);
5015
+ messageDesc(file_gc_v1_gc, 87);
4984
5016
 
4985
5017
  /**
4986
5018
  * @generated from message blueapi.gc.v1.GetUpdatedPurchasePlansBySegmentResponse
@@ -4997,7 +5029,7 @@ export type GetUpdatedPurchasePlansBySegmentResponse = Message<"blueapi.gc.v1.Ge
4997
5029
  * Use `create(GetUpdatedPurchasePlansBySegmentResponseSchema)` to create a new message.
4998
5030
  */
4999
5031
  export const GetUpdatedPurchasePlansBySegmentResponseSchema: GenMessage<GetUpdatedPurchasePlansBySegmentResponse> = /*@__PURE__*/
5000
- messageDesc(file_gc_v1_gc, 87);
5032
+ messageDesc(file_gc_v1_gc, 88);
5001
5033
 
5002
5034
  /**
5003
5035
  * @generated from message blueapi.gc.v1.PlanHistoryUser
@@ -5024,7 +5056,7 @@ export type PlanHistoryUser = Message<"blueapi.gc.v1.PlanHistoryUser"> & {
5024
5056
  * Use `create(PlanHistoryUserSchema)` to create a new message.
5025
5057
  */
5026
5058
  export const PlanHistoryUserSchema: GenMessage<PlanHistoryUser> = /*@__PURE__*/
5027
- messageDesc(file_gc_v1_gc, 88);
5059
+ messageDesc(file_gc_v1_gc, 89);
5028
5060
 
5029
5061
  /**
5030
5062
  * @generated from message blueapi.gc.v1.PlanHistoryEntry
@@ -5086,7 +5118,7 @@ export type PlanHistoryEntry = Message<"blueapi.gc.v1.PlanHistoryEntry"> & {
5086
5118
  * Use `create(PlanHistoryEntrySchema)` to create a new message.
5087
5119
  */
5088
5120
  export const PlanHistoryEntrySchema: GenMessage<PlanHistoryEntry> = /*@__PURE__*/
5089
- messageDesc(file_gc_v1_gc, 89);
5121
+ messageDesc(file_gc_v1_gc, 90);
5090
5122
 
5091
5123
  /**
5092
5124
  * @generated from message blueapi.gc.v1.RegisterOrgResponse
@@ -5140,7 +5172,7 @@ export type RegisterOrgResponse = Message<"blueapi.gc.v1.RegisterOrgResponse"> &
5140
5172
  * Use `create(RegisterOrgResponseSchema)` to create a new message.
5141
5173
  */
5142
5174
  export const RegisterOrgResponseSchema: GenMessage<RegisterOrgResponse> = /*@__PURE__*/
5143
- messageDesc(file_gc_v1_gc, 90);
5175
+ messageDesc(file_gc_v1_gc, 91);
5144
5176
 
5145
5177
  /**
5146
5178
  * @generated from message blueapi.gc.v1.StartAwsOnboardingResponse
@@ -5157,7 +5189,7 @@ export type StartAwsOnboardingResponse = Message<"blueapi.gc.v1.StartAwsOnboardi
5157
5189
  * Use `create(StartAwsOnboardingResponseSchema)` to create a new message.
5158
5190
  */
5159
5191
  export const StartAwsOnboardingResponseSchema: GenMessage<StartAwsOnboardingResponse> = /*@__PURE__*/
5160
- messageDesc(file_gc_v1_gc, 91);
5192
+ messageDesc(file_gc_v1_gc, 92);
5161
5193
 
5162
5194
  /**
5163
5195
  * @generated from message blueapi.gc.v1.GetAwsCloudFormationTemplateResponse
@@ -5176,7 +5208,7 @@ export type GetAwsCloudFormationTemplateResponse = Message<"blueapi.gc.v1.GetAws
5176
5208
  * Use `create(GetAwsCloudFormationTemplateResponseSchema)` to create a new message.
5177
5209
  */
5178
5210
  export const GetAwsCloudFormationTemplateResponseSchema: GenMessage<GetAwsCloudFormationTemplateResponse> = /*@__PURE__*/
5179
- messageDesc(file_gc_v1_gc, 92);
5211
+ messageDesc(file_gc_v1_gc, 93);
5180
5212
 
5181
5213
  /**
5182
5214
  * @generated from message blueapi.gc.v1.GetAwsLaunchStackUrlResponse
@@ -5193,7 +5225,7 @@ export type GetAwsLaunchStackUrlResponse = Message<"blueapi.gc.v1.GetAwsLaunchSt
5193
5225
  * Use `create(GetAwsLaunchStackUrlResponseSchema)` to create a new message.
5194
5226
  */
5195
5227
  export const GetAwsLaunchStackUrlResponseSchema: GenMessage<GetAwsLaunchStackUrlResponse> = /*@__PURE__*/
5196
- messageDesc(file_gc_v1_gc, 93);
5228
+ messageDesc(file_gc_v1_gc, 94);
5197
5229
 
5198
5230
  /**
5199
5231
  * @generated from message blueapi.gc.v1.VerifyAwsOnboardingResponse
@@ -5210,7 +5242,7 @@ export type VerifyAwsOnboardingResponse = Message<"blueapi.gc.v1.VerifyAwsOnboar
5210
5242
  * Use `create(VerifyAwsOnboardingResponseSchema)` to create a new message.
5211
5243
  */
5212
5244
  export const VerifyAwsOnboardingResponseSchema: GenMessage<VerifyAwsOnboardingResponse> = /*@__PURE__*/
5213
- messageDesc(file_gc_v1_gc, 94);
5245
+ messageDesc(file_gc_v1_gc, 95);
5214
5246
 
5215
5247
  /**
5216
5248
  * @generated from message blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck
@@ -5232,7 +5264,7 @@ export type VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck = Message<"blu
5232
5264
  * Use `create(VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheckSchema)` to create a new message.
5233
5265
  */
5234
5266
  export const VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheckSchema: GenMessage<VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck> = /*@__PURE__*/
5235
- messageDesc(file_gc_v1_gc, 94, 0);
5267
+ messageDesc(file_gc_v1_gc, 95, 0);
5236
5268
 
5237
5269
  /**
5238
5270
  * @generated from enum blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck.AwsOnboardingFeatureStatus
@@ -5268,7 +5300,7 @@ export enum VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck_AwsOnboardingF
5268
5300
  * Describes the enum blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck.AwsOnboardingFeatureStatus.
5269
5301
  */
5270
5302
  export const VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck_AwsOnboardingFeatureStatusSchema: GenEnum<VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck_AwsOnboardingFeatureStatus> = /*@__PURE__*/
5271
- enumDesc(file_gc_v1_gc, 94, 0, 0);
5303
+ enumDesc(file_gc_v1_gc, 95, 0, 0);
5272
5304
 
5273
5305
  /**
5274
5306
  * @generated from message blueapi.gc.v1.GetOnboardingStatusResponse
@@ -5356,7 +5388,7 @@ export type GetOnboardingStatusResponse = Message<"blueapi.gc.v1.GetOnboardingSt
5356
5388
  * Use `create(GetOnboardingStatusResponseSchema)` to create a new message.
5357
5389
  */
5358
5390
  export const GetOnboardingStatusResponseSchema: GenMessage<GetOnboardingStatusResponse> = /*@__PURE__*/
5359
- messageDesc(file_gc_v1_gc, 95);
5391
+ messageDesc(file_gc_v1_gc, 96);
5360
5392
 
5361
5393
  /**
5362
5394
  * @generated from enum blueapi.gc.v1.GetOnboardingStatusResponse.OnboardingStatus
@@ -5406,7 +5438,7 @@ export enum GetOnboardingStatusResponse_OnboardingStatus {
5406
5438
  * Describes the enum blueapi.gc.v1.GetOnboardingStatusResponse.OnboardingStatus.
5407
5439
  */
5408
5440
  export const GetOnboardingStatusResponse_OnboardingStatusSchema: GenEnum<GetOnboardingStatusResponse_OnboardingStatus> = /*@__PURE__*/
5409
- enumDesc(file_gc_v1_gc, 95, 0);
5441
+ enumDesc(file_gc_v1_gc, 96, 0);
5410
5442
 
5411
5443
  /**
5412
5444
  * @generated from message blueapi.gc.v1.PayerAccountDetails
@@ -5465,6 +5497,18 @@ export type PayerAccountDetails = Message<"blueapi.gc.v1.PayerAccountDetails"> &
5465
5497
  * @generated from field: string marketplacePrivateOfferExpirationDate = 8;
5466
5498
  */
5467
5499
  marketplacePrivateOfferExpirationDate: string;
5500
+
5501
+ /**
5502
+ * @generated from field: string marketplaceSubscriptionStatus = 9;
5503
+ */
5504
+ marketplaceSubscriptionStatus: string;
5505
+
5506
+ /**
5507
+ * Optional. Contracted end date of the current marketplace agreement, as reported by AWS.
5508
+ *
5509
+ * @generated from field: string marketplaceAgreementEndDate = 10;
5510
+ */
5511
+ marketplaceAgreementEndDate: string;
5468
5512
  };
5469
5513
 
5470
5514
  /**
@@ -5472,7 +5516,7 @@ export type PayerAccountDetails = Message<"blueapi.gc.v1.PayerAccountDetails"> &
5472
5516
  * Use `create(PayerAccountDetailsSchema)` to create a new message.
5473
5517
  */
5474
5518
  export const PayerAccountDetailsSchema: GenMessage<PayerAccountDetails> = /*@__PURE__*/
5475
- messageDesc(file_gc_v1_gc, 96);
5519
+ messageDesc(file_gc_v1_gc, 97);
5476
5520
 
5477
5521
  /**
5478
5522
  * @generated from message blueapi.gc.v1.ListPayerAccountsResponse
@@ -5494,7 +5538,7 @@ export type ListPayerAccountsResponse = Message<"blueapi.gc.v1.ListPayerAccounts
5494
5538
  * Use `create(ListPayerAccountsResponseSchema)` to create a new message.
5495
5539
  */
5496
5540
  export const ListPayerAccountsResponseSchema: GenMessage<ListPayerAccountsResponse> = /*@__PURE__*/
5497
- messageDesc(file_gc_v1_gc, 97);
5541
+ messageDesc(file_gc_v1_gc, 98);
5498
5542
 
5499
5543
  /**
5500
5544
  * @generated from message blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount
@@ -5553,7 +5597,7 @@ export type ListPayerAccountsResponse_PayerAccount = Message<"blueapi.gc.v1.List
5553
5597
  * Use `create(ListPayerAccountsResponse_PayerAccountSchema)` to create a new message.
5554
5598
  */
5555
5599
  export const ListPayerAccountsResponse_PayerAccountSchema: GenMessage<ListPayerAccountsResponse_PayerAccount> = /*@__PURE__*/
5556
- messageDesc(file_gc_v1_gc, 97, 0);
5600
+ messageDesc(file_gc_v1_gc, 98, 0);
5557
5601
 
5558
5602
  /**
5559
5603
  * @generated from enum blueapi.gc.v1.ListPayerAccountsResponse.PayerAccountStatus
@@ -5579,7 +5623,7 @@ export enum ListPayerAccountsResponse_PayerAccountStatus {
5579
5623
  * Describes the enum blueapi.gc.v1.ListPayerAccountsResponse.PayerAccountStatus.
5580
5624
  */
5581
5625
  export const ListPayerAccountsResponse_PayerAccountStatusSchema: GenEnum<ListPayerAccountsResponse_PayerAccountStatus> = /*@__PURE__*/
5582
- enumDesc(file_gc_v1_gc, 97, 0);
5626
+ enumDesc(file_gc_v1_gc, 98, 0);
5583
5627
 
5584
5628
  /**
5585
5629
  * @generated from message blueapi.gc.v1.SetPayerAccountEnabledResponse
@@ -5598,7 +5642,7 @@ export type SetPayerAccountEnabledResponse = Message<"blueapi.gc.v1.SetPayerAcco
5598
5642
  * Use `create(SetPayerAccountEnabledResponseSchema)` to create a new message.
5599
5643
  */
5600
5644
  export const SetPayerAccountEnabledResponseSchema: GenMessage<SetPayerAccountEnabledResponse> = /*@__PURE__*/
5601
- messageDesc(file_gc_v1_gc, 98);
5645
+ messageDesc(file_gc_v1_gc, 99);
5602
5646
 
5603
5647
  /**
5604
5648
  * @generated from message blueapi.gc.v1.GetPayerAccountStatusResponse
@@ -5615,7 +5659,7 @@ export type GetPayerAccountStatusResponse = Message<"blueapi.gc.v1.GetPayerAccou
5615
5659
  * Use `create(GetPayerAccountStatusResponseSchema)` to create a new message.
5616
5660
  */
5617
5661
  export const GetPayerAccountStatusResponseSchema: GenMessage<GetPayerAccountStatusResponse> = /*@__PURE__*/
5618
- messageDesc(file_gc_v1_gc, 99);
5662
+ messageDesc(file_gc_v1_gc, 100);
5619
5663
 
5620
5664
  /**
5621
5665
  * @generated from message blueapi.gc.v1.ListBillingGroupsResponse
@@ -5632,7 +5676,7 @@ export type ListBillingGroupsResponse = Message<"blueapi.gc.v1.ListBillingGroups
5632
5676
  * Use `create(ListBillingGroupsResponseSchema)` to create a new message.
5633
5677
  */
5634
5678
  export const ListBillingGroupsResponseSchema: GenMessage<ListBillingGroupsResponse> = /*@__PURE__*/
5635
- messageDesc(file_gc_v1_gc, 100);
5679
+ messageDesc(file_gc_v1_gc, 101);
5636
5680
 
5637
5681
  /**
5638
5682
  * @generated from message blueapi.gc.v1.ListBillingGroupsResponse.BillingGroup
@@ -5692,6 +5736,11 @@ export type ListBillingGroupsResponse_BillingGroup = Message<"blueapi.gc.v1.List
5692
5736
  * @generated from field: repeated blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck verificationChecks = 11;
5693
5737
  */
5694
5738
  verificationChecks: VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck[];
5739
+
5740
+ /**
5741
+ * @generated from field: string provider = 12;
5742
+ */
5743
+ provider: string;
5695
5744
  };
5696
5745
 
5697
5746
  /**
@@ -5699,7 +5748,7 @@ export type ListBillingGroupsResponse_BillingGroup = Message<"blueapi.gc.v1.List
5699
5748
  * Use `create(ListBillingGroupsResponse_BillingGroupSchema)` to create a new message.
5700
5749
  */
5701
5750
  export const ListBillingGroupsResponse_BillingGroupSchema: GenMessage<ListBillingGroupsResponse_BillingGroup> = /*@__PURE__*/
5702
- messageDesc(file_gc_v1_gc, 100, 0);
5751
+ messageDesc(file_gc_v1_gc, 101, 0);
5703
5752
 
5704
5753
  /**
5705
5754
  * @generated from enum blueapi.gc.v1.ListBillingGroupsResponse.BillingGroupStatus
@@ -5725,7 +5774,7 @@ export enum ListBillingGroupsResponse_BillingGroupStatus {
5725
5774
  * Describes the enum blueapi.gc.v1.ListBillingGroupsResponse.BillingGroupStatus.
5726
5775
  */
5727
5776
  export const ListBillingGroupsResponse_BillingGroupStatusSchema: GenEnum<ListBillingGroupsResponse_BillingGroupStatus> = /*@__PURE__*/
5728
- enumDesc(file_gc_v1_gc, 100, 0);
5777
+ enumDesc(file_gc_v1_gc, 101, 0);
5729
5778
 
5730
5779
  /**
5731
5780
  * @generated from message blueapi.gc.v1.SetBillingGroupStatusResponse
@@ -5742,7 +5791,7 @@ export type SetBillingGroupStatusResponse = Message<"blueapi.gc.v1.SetBillingGro
5742
5791
  * Use `create(SetBillingGroupStatusResponseSchema)` to create a new message.
5743
5792
  */
5744
5793
  export const SetBillingGroupStatusResponseSchema: GenMessage<SetBillingGroupStatusResponse> = /*@__PURE__*/
5745
- messageDesc(file_gc_v1_gc, 101);
5794
+ messageDesc(file_gc_v1_gc, 102);
5746
5795
 
5747
5796
  /**
5748
5797
  * @generated from message blueapi.gc.v1.GetBillingGroupStatusResponse
@@ -5764,7 +5813,7 @@ export type GetBillingGroupStatusResponse = Message<"blueapi.gc.v1.GetBillingGro
5764
5813
  * Use `create(GetBillingGroupStatusResponseSchema)` to create a new message.
5765
5814
  */
5766
5815
  export const GetBillingGroupStatusResponseSchema: GenMessage<GetBillingGroupStatusResponse> = /*@__PURE__*/
5767
- messageDesc(file_gc_v1_gc, 102);
5816
+ messageDesc(file_gc_v1_gc, 103);
5768
5817
 
5769
5818
  /**
5770
5819
  * @generated from message blueapi.gc.v1.ValidateBillingGroupResponse
@@ -5804,7 +5853,7 @@ export type ValidateBillingGroupResponse = Message<"blueapi.gc.v1.ValidateBillin
5804
5853
  * Use `create(ValidateBillingGroupResponseSchema)` to create a new message.
5805
5854
  */
5806
5855
  export const ValidateBillingGroupResponseSchema: GenMessage<ValidateBillingGroupResponse> = /*@__PURE__*/
5807
- messageDesc(file_gc_v1_gc, 103);
5856
+ messageDesc(file_gc_v1_gc, 104);
5808
5857
 
5809
5858
  /**
5810
5859
  * @generated from message blueapi.gc.v1.GetAwsPrivateOfferResponse
@@ -5867,7 +5916,7 @@ export type GetAwsPrivateOfferResponse = Message<"blueapi.gc.v1.GetAwsPrivateOff
5867
5916
  * Use `create(GetAwsPrivateOfferResponseSchema)` to create a new message.
5868
5917
  */
5869
5918
  export const GetAwsPrivateOfferResponseSchema: GenMessage<GetAwsPrivateOfferResponse> = /*@__PURE__*/
5870
- messageDesc(file_gc_v1_gc, 104);
5919
+ messageDesc(file_gc_v1_gc, 105);
5871
5920
 
5872
5921
  /**
5873
5922
  * @generated from message blueapi.gc.v1.AcceptBillingGroupTermsResponse
@@ -5884,7 +5933,7 @@ export type AcceptBillingGroupTermsResponse = Message<"blueapi.gc.v1.AcceptBilli
5884
5933
  * Use `create(AcceptBillingGroupTermsResponseSchema)` to create a new message.
5885
5934
  */
5886
5935
  export const AcceptBillingGroupTermsResponseSchema: GenMessage<AcceptBillingGroupTermsResponse> = /*@__PURE__*/
5887
- messageDesc(file_gc_v1_gc, 105);
5936
+ messageDesc(file_gc_v1_gc, 106);
5888
5937
 
5889
5938
  /**
5890
5939
  * @generated from message blueapi.gc.v1.ListDraftPurchasePlansResponse
@@ -5901,7 +5950,7 @@ export type ListDraftPurchasePlansResponse = Message<"blueapi.gc.v1.ListDraftPur
5901
5950
  * Use `create(ListDraftPurchasePlansResponseSchema)` to create a new message.
5902
5951
  */
5903
5952
  export const ListDraftPurchasePlansResponseSchema: GenMessage<ListDraftPurchasePlansResponse> = /*@__PURE__*/
5904
- messageDesc(file_gc_v1_gc, 106);
5953
+ messageDesc(file_gc_v1_gc, 107);
5905
5954
 
5906
5955
  /**
5907
5956
  * @generated from message blueapi.gc.v1.DeleteDraftPurchasePlanResponse
@@ -5927,7 +5976,7 @@ export type DeleteDraftPurchasePlanResponse = Message<"blueapi.gc.v1.DeleteDraft
5927
5976
  * Use `create(DeleteDraftPurchasePlanResponseSchema)` to create a new message.
5928
5977
  */
5929
5978
  export const DeleteDraftPurchasePlanResponseSchema: GenMessage<DeleteDraftPurchasePlanResponse> = /*@__PURE__*/
5930
- messageDesc(file_gc_v1_gc, 107);
5979
+ messageDesc(file_gc_v1_gc, 108);
5931
5980
 
5932
5981
  /**
5933
5982
  * @generated from message blueapi.gc.v1.GetAvailableCommitmentTypesResponse
@@ -5948,7 +5997,7 @@ export type GetAvailableCommitmentTypesResponse = Message<"blueapi.gc.v1.GetAvai
5948
5997
  * Use `create(GetAvailableCommitmentTypesResponseSchema)` to create a new message.
5949
5998
  */
5950
5999
  export const GetAvailableCommitmentTypesResponseSchema: GenMessage<GetAvailableCommitmentTypesResponse> = /*@__PURE__*/
5951
- messageDesc(file_gc_v1_gc, 108);
6000
+ messageDesc(file_gc_v1_gc, 109);
5952
6001
 
5953
6002
  /**
5954
6003
  * @generated from message blueapi.gc.v1.GetGuaranteedCommitmentTemplateUrlResponse
@@ -6009,7 +6058,7 @@ export type GetGuaranteedCommitmentTemplateUrlResponse = Message<"blueapi.gc.v1.
6009
6058
  * Use `create(GetGuaranteedCommitmentTemplateUrlResponseSchema)` to create a new message.
6010
6059
  */
6011
6060
  export const GetGuaranteedCommitmentTemplateUrlResponseSchema: GenMessage<GetGuaranteedCommitmentTemplateUrlResponse> = /*@__PURE__*/
6012
- messageDesc(file_gc_v1_gc, 109);
6061
+ messageDesc(file_gc_v1_gc, 110);
6013
6062
 
6014
6063
  /**
6015
6064
  * @generated from message blueapi.gc.v1.CreateGuaranteedCommitmentAccessResponse
@@ -6098,7 +6147,7 @@ export type CreateGuaranteedCommitmentAccessResponse = Message<"blueapi.gc.v1.Cr
6098
6147
  * Use `create(CreateGuaranteedCommitmentAccessResponseSchema)` to create a new message.
6099
6148
  */
6100
6149
  export const CreateGuaranteedCommitmentAccessResponseSchema: GenMessage<CreateGuaranteedCommitmentAccessResponse> = /*@__PURE__*/
6101
- messageDesc(file_gc_v1_gc, 110);
6150
+ messageDesc(file_gc_v1_gc, 111);
6102
6151
 
6103
6152
  /**
6104
6153
  * @generated from message blueapi.gc.v1.GetPurchasePlansDetailsResponse
@@ -6138,7 +6187,7 @@ export type GetPurchasePlansDetailsResponse = Message<"blueapi.gc.v1.GetPurchase
6138
6187
  * Use `create(GetPurchasePlansDetailsResponseSchema)` to create a new message.
6139
6188
  */
6140
6189
  export const GetPurchasePlansDetailsResponseSchema: GenMessage<GetPurchasePlansDetailsResponse> = /*@__PURE__*/
6141
- messageDesc(file_gc_v1_gc, 111);
6190
+ messageDesc(file_gc_v1_gc, 112);
6142
6191
 
6143
6192
  /**
6144
6193
  * @generated from message blueapi.gc.v1.CreateCustomCommitmentPlanResponse
@@ -6155,7 +6204,7 @@ export type CreateCustomCommitmentPlanResponse = Message<"blueapi.gc.v1.CreateCu
6155
6204
  * Use `create(CreateCustomCommitmentPlanResponseSchema)` to create a new message.
6156
6205
  */
6157
6206
  export const CreateCustomCommitmentPlanResponseSchema: GenMessage<CreateCustomCommitmentPlanResponse> = /*@__PURE__*/
6158
- messageDesc(file_gc_v1_gc, 112);
6207
+ messageDesc(file_gc_v1_gc, 113);
6159
6208
 
6160
6209
  /**
6161
6210
  * AzureArcheraOrgFeatureStatus is a single feature status entry within the Archera org object.
@@ -6189,7 +6238,7 @@ export type AzureArcheraOrgFeatureStatus = Message<"blueapi.gc.v1.AzureArcheraOr
6189
6238
  * Use `create(AzureArcheraOrgFeatureStatusSchema)` to create a new message.
6190
6239
  */
6191
6240
  export const AzureArcheraOrgFeatureStatusSchema: GenMessage<AzureArcheraOrgFeatureStatus> = /*@__PURE__*/
6192
- messageDesc(file_gc_v1_gc, 113);
6241
+ messageDesc(file_gc_v1_gc, 114);
6193
6242
 
6194
6243
  /**
6195
6244
  * AzureArcheraOrgLeaseBudget is the lease budget config within the Archera org object.
@@ -6218,7 +6267,7 @@ export type AzureArcheraOrgLeaseBudget = Message<"blueapi.gc.v1.AzureArcheraOrgL
6218
6267
  * Use `create(AzureArcheraOrgLeaseBudgetSchema)` to create a new message.
6219
6268
  */
6220
6269
  export const AzureArcheraOrgLeaseBudgetSchema: GenMessage<AzureArcheraOrgLeaseBudget> = /*@__PURE__*/
6221
- messageDesc(file_gc_v1_gc, 114);
6270
+ messageDesc(file_gc_v1_gc, 115);
6222
6271
 
6223
6272
  /**
6224
6273
  * AzureArcheraOrg is the full Archera org object.
@@ -6426,7 +6475,7 @@ export type AzureArcheraOrg = Message<"blueapi.gc.v1.AzureArcheraOrg"> & {
6426
6475
  * Use `create(AzureArcheraOrgSchema)` to create a new message.
6427
6476
  */
6428
6477
  export const AzureArcheraOrgSchema: GenMessage<AzureArcheraOrg> = /*@__PURE__*/
6429
- messageDesc(file_gc_v1_gc, 115);
6478
+ messageDesc(file_gc_v1_gc, 116);
6430
6479
 
6431
6480
  /**
6432
6481
  * AzureOnboardingCreatedBy identifies who triggered the onboarding.
@@ -6455,7 +6504,7 @@ export type AzureOnboardingCreatedBy = Message<"blueapi.gc.v1.AzureOnboardingCre
6455
6504
  * Use `create(AzureOnboardingCreatedBySchema)` to create a new message.
6456
6505
  */
6457
6506
  export const AzureOnboardingCreatedBySchema: GenMessage<AzureOnboardingCreatedBy> = /*@__PURE__*/
6458
- messageDesc(file_gc_v1_gc, 116);
6507
+ messageDesc(file_gc_v1_gc, 117);
6459
6508
 
6460
6509
  /**
6461
6510
  * AzureOnboardingState is the full Archera onboarding record state.
@@ -6624,7 +6673,7 @@ export type AzureOnboardingState = Message<"blueapi.gc.v1.AzureOnboardingState">
6624
6673
  * Use `create(AzureOnboardingStateSchema)` to create a new message.
6625
6674
  */
6626
6675
  export const AzureOnboardingStateSchema: GenMessage<AzureOnboardingState> = /*@__PURE__*/
6627
- messageDesc(file_gc_v1_gc, 117);
6676
+ messageDesc(file_gc_v1_gc, 118);
6628
6677
 
6629
6678
  /**
6630
6679
  * StartAzureOnboardingResponse is returned from StartAzureOnboarding.
@@ -6666,7 +6715,7 @@ export type StartAzureOnboardingResponse = Message<"blueapi.gc.v1.StartAzureOnbo
6666
6715
  * Use `create(StartAzureOnboardingResponseSchema)` to create a new message.
6667
6716
  */
6668
6717
  export const StartAzureOnboardingResponseSchema: GenMessage<StartAzureOnboardingResponse> = /*@__PURE__*/
6669
- messageDesc(file_gc_v1_gc, 118);
6718
+ messageDesc(file_gc_v1_gc, 119);
6670
6719
 
6671
6720
  /**
6672
6721
  * GetAzureOnboardingAuthUrlResponse contains the OAuth URL (Step 4).
@@ -6687,7 +6736,7 @@ export type GetAzureOnboardingAuthUrlResponse = Message<"blueapi.gc.v1.GetAzureO
6687
6736
  * Use `create(GetAzureOnboardingAuthUrlResponseSchema)` to create a new message.
6688
6737
  */
6689
6738
  export const GetAzureOnboardingAuthUrlResponseSchema: GenMessage<GetAzureOnboardingAuthUrlResponse> = /*@__PURE__*/
6690
- messageDesc(file_gc_v1_gc, 119);
6739
+ messageDesc(file_gc_v1_gc, 120);
6691
6740
 
6692
6741
  /**
6693
6742
  * AzureAccount is one available subscription or billing account (Step 6).
@@ -6730,7 +6779,7 @@ export type AzureAccount = Message<"blueapi.gc.v1.AzureAccount"> & {
6730
6779
  * Use `create(AzureAccountSchema)` to create a new message.
6731
6780
  */
6732
6781
  export const AzureAccountSchema: GenMessage<AzureAccount> = /*@__PURE__*/
6733
- messageDesc(file_gc_v1_gc, 120);
6782
+ messageDesc(file_gc_v1_gc, 121);
6734
6783
 
6735
6784
  /**
6736
6785
  * ListAzureOnboardingAccountsResponse returns accounts the user can select.
@@ -6749,7 +6798,7 @@ export type ListAzureOnboardingAccountsResponse = Message<"blueapi.gc.v1.ListAzu
6749
6798
  * Use `create(ListAzureOnboardingAccountsResponseSchema)` to create a new message.
6750
6799
  */
6751
6800
  export const ListAzureOnboardingAccountsResponseSchema: GenMessage<ListAzureOnboardingAccountsResponse> = /*@__PURE__*/
6752
- messageDesc(file_gc_v1_gc, 121);
6801
+ messageDesc(file_gc_v1_gc, 122);
6753
6802
 
6754
6803
  /**
6755
6804
  * AzureIntegrationFeatureStatus is a single feature check for an Azure integration (Step 9).
@@ -6782,7 +6831,7 @@ export type AzureIntegrationFeatureStatus = Message<"blueapi.gc.v1.AzureIntegrat
6782
6831
  * Use `create(AzureIntegrationFeatureStatusSchema)` to create a new message.
6783
6832
  */
6784
6833
  export const AzureIntegrationFeatureStatusSchema: GenMessage<AzureIntegrationFeatureStatus> = /*@__PURE__*/
6785
- messageDesc(file_gc_v1_gc, 122);
6834
+ messageDesc(file_gc_v1_gc, 123);
6786
6835
 
6787
6836
  /**
6788
6837
  * AzureIntegrationOnboarding is a summary of the onboarding linked to an integration.
@@ -6831,7 +6880,7 @@ export type AzureIntegrationOnboarding = Message<"blueapi.gc.v1.AzureIntegration
6831
6880
  * Use `create(AzureIntegrationOnboardingSchema)` to create a new message.
6832
6881
  */
6833
6882
  export const AzureIntegrationOnboardingSchema: GenMessage<AzureIntegrationOnboarding> = /*@__PURE__*/
6834
- messageDesc(file_gc_v1_gc, 123);
6883
+ messageDesc(file_gc_v1_gc, 124);
6835
6884
 
6836
6885
  /**
6837
6886
  * AzureIntegration is the full Azure cloud integration record from Archera.
@@ -6976,7 +7025,7 @@ export type AzureIntegration = Message<"blueapi.gc.v1.AzureIntegration"> & {
6976
7025
  * Use `create(AzureIntegrationSchema)` to create a new message.
6977
7026
  */
6978
7027
  export const AzureIntegrationSchema: GenMessage<AzureIntegration> = /*@__PURE__*/
6979
- messageDesc(file_gc_v1_gc, 124);
7028
+ messageDesc(file_gc_v1_gc, 125);
6980
7029
 
6981
7030
  /**
6982
7031
  * CreateAzureIntegrationResponse is returned after creating the Azure integration (Step 8).
@@ -7039,7 +7088,7 @@ export type CreateAzureIntegrationResponse = Message<"blueapi.gc.v1.CreateAzureI
7039
7088
  * Use `create(CreateAzureIntegrationResponseSchema)` to create a new message.
7040
7089
  */
7041
7090
  export const CreateAzureIntegrationResponseSchema: GenMessage<CreateAzureIntegrationResponse> = /*@__PURE__*/
7042
- messageDesc(file_gc_v1_gc, 125);
7091
+ messageDesc(file_gc_v1_gc, 126);
7043
7092
 
7044
7093
  /**
7045
7094
  * ListAzureIntegrationsResponse contains all Azure integrations for the org (Step 9).
@@ -7058,7 +7107,48 @@ export type ListAzureIntegrationsResponse = Message<"blueapi.gc.v1.ListAzureInte
7058
7107
  * Use `create(ListAzureIntegrationsResponseSchema)` to create a new message.
7059
7108
  */
7060
7109
  export const ListAzureIntegrationsResponseSchema: GenMessage<ListAzureIntegrationsResponse> = /*@__PURE__*/
7061
- messageDesc(file_gc_v1_gc, 126);
7110
+ messageDesc(file_gc_v1_gc, 127);
7111
+
7112
+ /**
7113
+ * DeleteAzureIntegrationResponse is returned after removing the Azure integration.
7114
+ * A "not_found" errorCode is treated as success
7115
+ *
7116
+ * @generated from message blueapi.gc.v1.DeleteAzureIntegrationResponse
7117
+ */
7118
+ export type DeleteAzureIntegrationResponse = Message<"blueapi.gc.v1.DeleteAzureIntegrationResponse"> & {
7119
+ /**
7120
+ * True only when the operation is fully complete: the integration was
7121
+ * removed from Archera AND
7122
+ * all local data for the given onboardingId was cleared.
7123
+ *
7124
+ * @generated from field: bool success = 1;
7125
+ */
7126
+ success: boolean;
7127
+
7128
+ /**
7129
+ * Set on failure, or on the "not_found"-as-success case
7130
+ *
7131
+ * @generated from field: string errorCode = 2;
7132
+ */
7133
+ errorCode: string;
7134
+
7135
+ /**
7136
+ * @generated from field: string errorMessage = 3;
7137
+ */
7138
+ errorMessage: string;
7139
+
7140
+ /**
7141
+ * @generated from field: string integrationId = 4;
7142
+ */
7143
+ integrationId: string;
7144
+ };
7145
+
7146
+ /**
7147
+ * Describes the message blueapi.gc.v1.DeleteAzureIntegrationResponse.
7148
+ * Use `create(DeleteAzureIntegrationResponseSchema)` to create a new message.
7149
+ */
7150
+ export const DeleteAzureIntegrationResponseSchema: GenMessage<DeleteAzureIntegrationResponse> = /*@__PURE__*/
7151
+ messageDesc(file_gc_v1_gc, 128);
7062
7152
 
7063
7153
  /**
7064
7154
  * TermsConsentState describes the evaluated user-facing consent state for the
@@ -7739,6 +7829,16 @@ export const GuaranteedCommitments: GenService<{
7739
7829
  input: typeof ListAzureIntegrationsRequestSchema;
7740
7830
  output: typeof ListAzureIntegrationsResponseSchema;
7741
7831
  },
7832
+ /**
7833
+ * WORK-IN-PROGRESS: Removes an Azure integration from Archera and clears the local record for the given onboardingId.
7834
+ *
7835
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.DeleteAzureIntegration
7836
+ */
7837
+ deleteAzureIntegration: {
7838
+ methodKind: "unary";
7839
+ input: typeof DeleteAzureIntegrationRequestSchema;
7840
+ output: typeof DeleteAzureIntegrationResponseSchema;
7841
+ },
7742
7842
  /**
7743
7843
  * Returns the evaluated Terms of Service consent status for the authenticated
7744
7844
  * Ripple MSP or WavePro root customer.