@alphauspkgs/blue-sdk-ts 1.0.14 → 1.0.16

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
@@ -14,7 +14,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
14
14
  * Describes the file gc/v1/gc.proto.
15
15
  */
16
16
  export const file_gc_v1_gc: GenFile = /*@__PURE__*/
17
- fileDesc("Cg5nYy92MS9nYy5wcm90bxINYmx1ZWFwaS5nYy52MSIRCg9MaXN0T3Jnc1JlcXVlc3QiQAofR2V0Q29tbWl0bWVudFBsYW5EZXRhaWxzUmVxdWVzdBINCgVvcmdJZBgBIAEoCRIOCgZwbGFuSWQYAiABKAkiOwoaQ29tbWl0bWVudFBsYW5BcHBseVJlcXVlc3QSDQoFb3JnSWQYASABKAkSDgoGcGxhbklkGAIgASgJIl0KIUxpc3REZWZhdWx0Q29tbWl0bWVudFBsYW5zUmVxdWVzdBINCgVvcmdJZBgBIAEoCRIpCghwcm92aWRlchgCIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXIiXwojR2V0UmVjb21tZW5kZWRDb21taXRtZW50UGxhblJlcXVlc3QSDQoFb3JnSWQYASABKAkSKQoIcHJvdmlkZXIYAiABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyIq8BCiJMaXN0Q29tbWl0bWVudFBsYW5MaW5lSXRlbXNSZXF1ZXN0Eg0KBW9yZ0lkGAEgASgJEg4KBnBsYW5JZBgCIAEoCRIPCgdvcmRlckJ5GAMgASgJEgwKBGRlc2MYBCABKAgSEQoJc2VnbWVudElkGAUgASgJEhgKEHJlc291cmNlTWF0Y2hJZHMYBiADKAkSDAoEcGFnZRgHIAEoBRIQCghwYWdlU2l6ZRgIIAEoBSLBAQooTGlzdENvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaGVzUmVxdWVzdBINCgVvcmdJZBgBIAEoCRIOCgZwbGFuSWQYAiABKAkSDwoHb3JkZXJCeRgDIAEoCRIMCgRkZXNjGAQgASgIEhEKCXN0YXJ0RGF0ZRgFIAEoCRIPCgdlbmREYXRlGAYgASgJEhMKC2xpbmVJdGVtSWRzGAcgAygJEgwKBHBhZ2UYCCABKAUSEAoIcGFnZVNpemUYCSABKAUiGAoWTGlzdENvbW1pdG1lbnRzUmVxdWVzdCKjAQoaR2V0Q29tbWl0bWVudHNDaGFydFJlcXVlc3QSDQoFb3JnSWQYASABKAkSJwoGZmlsdGVyGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIpCghwcm92aWRlchgDIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXISEQoJc3RhcnREYXRlGAQgASgJEg8KB2VuZERhdGUYBSABKAkiTQoRR2V0TWV0cmljc1JlcXVlc3QSDQoFb3JnSWQYASABKAkSKQoIcHJvdmlkZXIYAiABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyIrIBChRMaXN0UmVzb3VyY2VzUmVxdWVzdBINCgVvcmdJZBgBIAEoCRIpCghwcm92aWRlchgCIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXISEQoJc2VnbWVudElkGAMgASgJEg4KBnNlYXJjaBgEIAEoCRIMCgRkZXNjGAUgASgIEg8KB29yZGVyQnkYBiABKAkSDAoEcGFnZRgHIAEoBRIQCghwYWdlU2l6ZRgIIAEoBSKbAQocR2V0UmVzb3VyY2VEYWlseVVzYWdlUmVxdWVzdBINCgVvcmdJZBgBIAEoCRISCgpyZXNvdXJjZUlkGAIgASgJEhEKCXN0YXJ0RGF0ZRgDIAEoCRIPCgdlbmREYXRlGAQgASgJEhQKDGNhdGFsb2dTa3VJZBgFIAEoCRIMCgRwYWdlGAYgASgFEhAKCHBhZ2VTaXplGAcgASgFIk8KE0xpc3RTZWdtZW50c1JlcXVlc3QSDQoFb3JnSWQYASABKAkSKQoIcHJvdmlkZXIYAiABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyIjwKGEdldFNlZ21lbnREZXRhaWxzUmVxdWVzdBINCgVvcmdJZBgBIAEoCRIRCglzZWdtZW50SWQYAiABKAkiQwofTGlzdERlZmF1bHRQdXJjaGFzZVBsYW5zUmVxdWVzdBINCgVvcmdJZBgBIAEoCRIRCglzZWdtZW50SWQYAiABKAkiJgoHT3JnVXNlchINCgVlbWFpbBgBIAEoCRIMCgRyb2xlGAIgASgJIiwKCk1lbWJlcnNoaXASDAoEcm9sZRgBIAEoCRIQCgh1c2VybmFtZRgCIAEoCSJiCgdBZGRyZXNzEg0KBWxpbmUxGAEgASgJEgwKBGNpdHkYAiABKAkSDQoFc3RhdGUYAyABKAkSCwoDemlwGAQgASgJEg8KB2NvdW50cnkYBSABKAkSDQoFbGluZTIYBiABKAkiVAoOQXdzRXhpc3RpbmdDdXISDgoGcmVnaW9uGAEgASgJEg4KBmJ1Y2tldBgCIAEoCRIOCgZwcmVmaXgYAyABKAkSEgoKcmVwb3J0TmFtZRgEIAEoCSKtAgoSUmVnaXN0ZXJPcmdSZXF1ZXN0Eg0KBW1zcElkGAEgASgJEhEKCWJpbGxpbmdJZBgCIAEoCRIMCgRuYW1lGAMgASgJEhsKE2xhYnJhU3Vic2NyaXB0aW9uSWQYBCABKAkSJQoFdXNlcnMYBSADKAsyFi5ibHVlYXBpLmdjLnYxLk9yZ1VzZXISDgoGZG9tYWluGAYgASgJEi4KDnByaW1hcnlBZGRyZXNzGAcgASgLMhYuYmx1ZWFwaS5nYy52MS5BZGRyZXNzEh8KF2F3c01hcmtldHBsYWNlT2ZmZXJMaW5rGAggASgJEiEKGWF6dXJlTWFya2V0cGxhY2VPZmZlckxpbmsYCSABKAkSHwoXZ2NwTWFya2V0cGxhY2VPZmZlckxpbmsYCiABKAkiTgoZU3RhcnRBd3NPbmJvYXJkaW5nUmVxdWVzdBINCgVtc3BJZBgBIAEoCRIRCgliaWxsaW5nSWQYAiABKAkSDwoHZ2NPcmdJZBgDIAEoCSJYCiNHZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlUmVxdWVzdBINCgVtc3BJZBgBIAEoCRIRCgliaWxsaW5nSWQYAiABKAkSDwoHZ2NPcmdJZBgDIAEoCSJQChtHZXRBd3NMYXVuY2hTdGFja1VybFJlcXVlc3QSDQoFbXNwSWQYASABKAkSEQoJYmlsbGluZ0lkGAIgASgJEg8KB2djT3JnSWQYAyABKAkirAEKGlZlcmlmeUF3c09uYm9hcmRpbmdSZXF1ZXN0Eg0KBW1zcElkGAEgASgJEhEKCWJpbGxpbmdJZBgCIAEoCRIPCgdnY09yZ0lkGAMgASgJEhQKDG9uYm9hcmRpbmdJZBgEIAEoCRIRCglhY2NvdW50SWQYBSABKAkSMgoLZXhpc3RpbmdDdXIYBiABKAsyHS5ibHVlYXBpLmdjLnYxLkF3c0V4aXN0aW5nQ3VyIjEKA09yZxINCgVvcmdJZBgBIAEoCRIMCgRuYW1lGAIgASgJEg0KBWVtYWlsGAMgASgJIvMEChVDb21taXRtZW50UGxhbkRldGFpbHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRINCgVvcmdJZBgEIAEoCRIRCgljcmVhdGVkQXQYBSABKAkSFQoNaXNDYWxjdWxhdGluZxgGIAEoCBIOCgZzdGF0dXMYByABKAkSDwoHbWF4VGVybRgIIAEoCRIhChljb3ZlcmVkT25kZW1hbmRDb3N0SG91cmx5GAkgASgBEiAKGGJlZm9yZU9uZGVtYW5kQ29zdEhvdXJseRgKIAEoARIgChhiZWZvcmVSZXNlcnZlZENvc3RIb3VybHkYCyABKAESGwoTYW1vcnRpemVkQ29zdEhvdXJseRgMIAEoARIbChNyZWN1cnJpbmdDb3N0SG91cmx5GA0gASgBEhkKEXVwZnJvbnRDb3N0SG91cmx5GA4gASgBEhgKEGJlZm9yZUNvc3RIb3VybHkYDyABKAESFwoPYWZ0ZXJDb3N0SG91cmx5GBAgASgBEhcKD3RvdGFsQ29zdEhvdXJseRgRIAEoARIVCg1zYXZpbmdzSG91cmx5GBIgASgBEhEKCWZlZUhvdXJseRgTIAEoARIaChJjb21taXRtZW50Q292ZXJhZ2UYFCABKAESHQoVbWluaW11bUNvbW1pdG1lbnRDb3N0GBUgASgBEhYKDmJyZWFrZXZlbkhvdXJzGBYgASgBEhQKDHRvdGFsU2F2aW5ncxgXIAEoARIWCg5tb250aGx5U2F2aW5ncxgYIAEoARIeChZ0b3RhbE1vbnRobHlCZWZvcmVDb3N0GBkgASgBIlkKIkxpc3REZWZhdWx0Q29tbWl0bWVudFBsYW5zUmVzcG9uc2USMwoFcGxhbnMYASADKAsyJC5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuRGV0YWlscyLpBQoWQ29tbWl0bWVudFBsYW5MaW5lSXRlbRIKCgJpZBgBIAEoCRIOCgZwbGFuSWQYAiABKAkSDwoHb2ZmZXJJZBgDIAEoCRIXCg9sZWFzZU1lbnVJdGVtSWQYBCABKAkSEQoJYWNjb3VudElkGAUgASgJEhsKE3JlY29tbWVuZGVkUXVhbnRpdHkYBiABKAESGAoQc2VsZWN0ZWRRdWFudGl0eRgHIAEoARIdChVyZWNvbW1lbmRlZENvbW1pdG1lbnQYCCABKAESGgoSc2VsZWN0ZWRDb21taXRtZW50GAkgASgBEhIKCmlzU2VsZWN0ZWQYCiABKAgSGgoSYWZ0ZXJBbW9ydGl6ZWRDb3N0GAsgASgBEhMKC3VwZnJvbnRDb3N0GAwgASgBEhUKDXJlY3VycmluZ0Nvc3QYDSABKAESEgoKYmVmb3JlQ29zdBgOIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYDyABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GBAgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYESABKAESGQoRYWZ0ZXJDb3ZlcmVkVW5pdHMYEiABKAESEQoJdG90YWxDb3N0GBMgASgBEhMKC21vbnRobHlDb3N0GBQgASgBEg8KB3NhdmluZ3MYFSABKAESFgoObW9udGhseVNhdmluZ3MYFiABKAESFAoMdG90YWxTYXZpbmdzGBcgASgBEgsKA2ZlZRgYIAEoARIUCgxkaXNjb3VudFJhdGUYGSABKAESFgoOYnJlYWtldmVuSG91cnMYGiABKAESFAoMY29udHJhY3RUZXJtGBsgASgJEhUKDXBheW1lbnRPcHRpb24YHCABKAkSLQoMY29udHJhY3RTcGVjGB0gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgVvZmZlchgeIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiXwojTGlzdENvbW1pdG1lbnRQbGFuTGluZUl0ZW1zUmVzcG9uc2USOAoJbGluZUl0ZW1zGAEgAygLMiUuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhbkxpbmVJdGVtIvcEChtDb21taXRtZW50UGxhblJlc291cmNlTWF0Y2gSCgoCaWQYASABKAkSEgoKdG90YWxVbml0cxgCIAEoARIcChRiZWZvcmVVbmNvdmVyZWRVbml0cxgDIAEoARIZChFhZnRlckNvdmVyZWRVbml0cxgEIAEoARIbChNhZnRlclVuY292ZXJlZFVuaXRzGAUgASgBEhUKDW9uZGVtYW5kUHJpY2UYBiABKAESGQoRaWZBbGxPbmRlbWFuZENvc3QYByABKAESGgoSYmVmb3JlT25kZW1hbmRDb3N0GAggASgBEhkKEWFmdGVyT25kZW1hbmRDb3N0GAkgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYCiABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GAsgASgBEhkKEWFmdGVyUmVzZXJ2ZWRDb3N0GAwgASgBEhIKCmJlZm9yZUNvc3QYDSABKAESEQoJYWZ0ZXJDb3N0GA4gASgBEhkKEW1vbnRobHlCZWZvcmVDb3N0GA8gASgBEhgKEG1vbnRobHlBZnRlckNvc3QYECABKAESIAoYbW9udGhseUFmdGVyUmVzZXJ2ZWRDb3N0GBEgASgBEiAKGG1vbnRobHlBZnRlck9uZGVtYW5kQ29zdBgSIAEoARIWCg5hdmVyYWdlU2F2aW5ncxgTIAEoARIdChVhdmVyYWdlTW9udGhseVNhdmluZ3MYFCABKAESEQoJdXNhZ2VUeXBlGBUgASgJEhAKCGNvdmVyYWdlGBYgASgBEikKCHJlc291cmNlGBcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJwCilMaXN0Q29tbWl0bWVudFBsYW5SZXNvdXJjZU1hdGNoZXNSZXNwb25zZRJDCg9yZXNvdXJjZU1hdGNoZXMYASADKAsyKi5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaCLuAQoFTGVhc2USCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSHQoVcHJvdmlkZXJSZXNlcnZhdGlvbklkGAMgASgJEhEKCWFjY291bnRJZBgEIAEoCRIOCgZzdGF0dXMYBSABKAkSEQoJc3RhcnREYXRlGAYgASgJEg8KB2VuZERhdGUYByABKAkSEgoKbG9ja2luRGF0ZRgIIAEoCRITCgt1cGZyb250Q29zdBgJIAEoARIVCg1yZWN1cnJpbmdDb3N0GAogASgBEhEKCWNyZWF0ZWRBdBgLIAEoCRIRCgl1cGRhdGVkQXQYDCABKAkiSQoQRGFpbHlVdGlsaXphdGlvbhIMCgRkYXRlGAEgASgJEhMKC3V0aWxpemF0aW9uGAIgASgBEhIKCm5ldFNhdmluZ3MYAyABKAEi0AcKCkNvbW1pdG1lbnQSCgoCaWQYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhUKDWFtb3J0aXplZENvc3QYAyABKAESGAoQYmlsbGluZ0FjY291bnRJZBgEIAEoCRIRCgljYW5SZWJhdGUYBSABKAgSFAoMY29udHJhY3RUZXJtGAYgASgJEhMKC2Rpc3BsYXlOYW1lGAcgASgJEhcKD2R1cmF0aW9uU2Vjb25kcxgIIAEoARIeChZlZmZlY3RpdmVJbnN0YW5jZUNvdW50GAkgASgDEg8KB2VuZERhdGUYCiABKAkSFQoNaW5zdGFuY2VDb3VudBgLIAEoAxIWCg5pbnN0YW5jZUZhbWlseRgMIAEoCRIUCgxpbnN0YW5jZVR5cGUYDSABKAkSEAoIaXNBY3RpdmUYDiABKAgSEgoKaXNGbGV4aWJsZRgPIAEoCBIQCghpc0xlYXNlZBgQIAEoCBIRCglpc011bHRpQXoYESABKAgSFwoPbGVhc2VMb2NraW5EYXRlGBIgASgJEhIKCmxlYXNlU3RhcnQYEyABKAkSGQoRbGVhc2VkRGlzcGxheU5hbWUYFCABKAkSEwoLbW9udGhseUNvc3QYFSABKAESFgoObW9udGhseVNhdmluZ3MYFiABKAESDAoEbmFtZRgXIAEoCRISCgpuZXRTYXZpbmdzGBggASgBEhIKCm9mZmVyaW5nSWQYGSABKAkSFQoNcGF5bWVudE9wdGlvbhgaIAEoCRIYChBwb3RlbnRpYWxTYXZpbmdzGBsgASgBEhoKEnByb2R1Y3REZXNjcmlwdGlvbhgcIAEoCRIQCghwcm92aWRlchgdIAEoCRIeChZwcm92aWRlclJlc2VydmF0aW9uX2lkGB4gASgJEhUKDXJlY3VycmluZ0Nvc3QYHyABKAESDgoGcmVnaW9uGCAgASgJEhMKC3JlbmV3YWxQbGFuGCEgASgJEhYKDnJlc2VydmF0aW9uRW5kGCIgASgJEhgKEHJlc2VydmF0aW9uU3RhcnQYIyABKAkSFAoMcnVubmluZ0hvdXJzGCQgASgBEg8KB3NhdmluZ3MYJSABKAESEQoJc3RhcnREYXRlGCYgASgJEg4KBnN0YXR1cxgnIAEoCRIeChZ0cmFuc2ZlclJlc2VydmF0aW9uRW5kGCggASgJEiAKGHRyYW5zZmVyUmVzZXJ2YXRpb25TdGFydBgpIAEoCRIMCgR0eXBlGCogASgJEhMKC3VwZnJvbnRDb3N0GCsgASgBEhMKC3V0aWxpemF0aW9uGCwgASgBIkkKF0xpc3RDb21taXRtZW50c1Jlc3BvbnNlEi4KC2NvbW1pdG1lbnRzGAEgAygLMhkuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50Ir4BChlDb21taXRtZW50c0NoYXJ0RGF0YVBvaW50EgwKBGRhdGUYASABKAkSFwoPY29tbWl0bWVudFNwZW5kGAIgASgBEhMKC3V0aWxpemF0aW9uGAMgASgBEhkKEWxvY2tlZENvbW1pdG1lbnRzGAQgASgBEhsKE3VubG9ja2VkQ29tbWl0bWVudHMYBSABKAESFwoPcmVhbGl6ZWRTYXZpbmdzGAYgASgBEhQKDGlzUHJvamVjdGlvbhgHIAEoCCJSChhDb21taXRtZW50c0NoYXJ0UmVzcG9uc2USNgoEZGF0YRgBIAMoCzIoLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudHNDaGFydERhdGFQb2ludCLNAwoPTWV0cmljc1Jlc3BvbnNlEhcKD2xpZmV0aW1lU2F2aW5ncxgBIAEoARISCgptdGRTYXZpbmdzGAIgASgBEiEKGXB1cmNoYXNlQXV0b21hdGlvbkVuYWJsZWQYAyABKAgSIAoYYnV5YmFja0F1dG9tYXRpb25FbmFibGVkGAQgASgIEhcKD2hhc0FjdGlvbmVkUGxhbhgFIAEoCBIZChFoYXNQZW5kaW5nQWN0aW9ucxgGIAEoCBIbChNsYXRlc3RFeGVjdXRpb25EYXRlGAcgASgJEh0KFXB1cmNoYXNlTWlzc2VkU2F2aW5ncxgIIAEoARIcChRidXliYWNrTWlzc2VkU2F2aW5ncxgJIAEoARIfChd0b3RhbERhaWx5TWlzc2VkU2F2aW5ncxgKIAEoARIbChNob3VybHlNaXNzZWRTYXZpbmdzGAsgASgBEh4KFm1pc3NlZFNhdmluZ3NTdGFydERhdGUYDCABKAkSHAoUbWlzc2VkU2F2aW5nc0VuZERhdGUYDSABKAkSFwoPZXhwaXJpbmdTYXZpbmdzGA4gASgBEhAKCGNvdmVyYWdlGA8gASgBEhMKC3V0aWxpemF0aW9uGBAgASgBIogICghSZXNvdXJjZRIKCgJpZBgBIAEoCRISCgpyZXNvdXJjZUlkGAIgASgJEikKCHByb3ZpZGVyGAMgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIaChJwcm92aWRlclJlc291cmNlSWQYBCABKAkSDgoGaXNTcG90GAUgASgIEgwKBG5hbWUYBiABKAkSFQoNcmVzb3VyY2VHcm91cBgHIAEoCRIQCgh1c2FnZUVuZBgIIAEoCRISCgp1c2FnZVN0YXJ0GAkgASgJEiUKBHRhZ3MYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhEKCWNyZWF0ZWRBdBgLIAEoCRIRCgl1cGRhdGVkQXQYDCABKAkSEgoKaW5zdGFuY2VJZBgNIAEoCRIYChBiaWxsaW5nQWNjb3VudElkGA4gASgJEhQKDHN1YkFjY291bnRJZBgPIAEoCRIbChNtYW5hZ2VtZW50QWNjb3VudElkGBAgASgJEhYKDm93bmVyQWNjb3VudElkGBEgASgJEhAKCHNrdVRpdGxlGBIgASgJEg8KB3NrdU5hbWUYEyABKAkSGAoQYXZhaWxhYmlsaXR5Wm9uZRgUIAEoCRITCgtjYWNoZUVuZ2luZRgVIAEoCRIWCg5kYXRhYmFzZUVuZ2luZRgWIAEoCRITCgtkZXNjcmlwdGlvbhgXIAEoCRIOCgZmYW1pbHkYGCABKAkSFgoOZnVsbFJlZ2lvbk5hbWUYGSABKAkSGAoQaGFzT25kZW1hbmRUZXJtcxgaIAEoCBIUCgxpbnN0YW5jZVR5cGUYGyABKAkSGgoSaW5zdGFuY2VUeXBlRmFtaWx5GBwgASgJEhQKDGlzUmVzZXJ2YWJsZRgdIAEoCBIUCgxsaWNlbnNlTW9kZWwYHiABKAkSFAoMbG9jYXRpb25UeXBlGB8gASgJEh8KF25vcm1hbGl6YXRpb25TaXplRmFjdG9yGCAgASgJEhcKD29wZXJhdGluZ1N5c3RlbRghIAEoCRIWCg5wcmVJbnN0YWxsZWRTdxgiIAEoCRIVCg1wcmljZUN1cnJlbmN5GCMgASgJEhcKD3Byb3ZpZGVyU2VydmljZRgkIAEoCRIVCg1wcm92aWRlclNrdUlkGCUgASgJEhcKD3B1YmxpY2F0aW9uRGF0ZRgmIAEoCRIOCgZyZWdpb24YJyABKAkSDwoHc2VydmljZRgoIAEoCRIPCgd0ZW5hbmN5GCkgASgJEhEKCXVzYWdlVHlwZRgqIAEoCRIPCgd2ZXJzaW9uGCsgASgJEhwKFHZwY05ldHdvcmtpbmdTdXBwb3J0GCwgASgIEhkKEW9uZGVtYW5kVXNhZ2VVbml0GC0gASgJIkMKFUxpc3RSZXNvdXJjZXNSZXNwb25zZRIqCglyZXNvdXJjZXMYASADKAsyFy5ibHVlYXBpLmdjLnYxLlJlc291cmNlItQCChJSZXNvdXJjZURhaWx5VXNhZ2USDAoEZGF0ZRgBIAEoCRIWCg51c2FnZUFjY291bnRJZBgCIAEoCRIUCgxzdWJBY2NvdW50SWQYAyABKAkSDQoFdXNhZ2UYBCABKAESGAoQcmVzZXJ2YXRpb25Vc2FnZRgFIAEoARIVCg1mcmVlVGllclVzYWdlGAYgASgBEhQKDG9uZGVtYW5kQ29zdBgHIAEoARIUCgxyZXNlcnZlZENvc3QYCCABKAESGQoRaWZBbGxPbmRlbWFuZENvc3QYCSABKAESEAoIc3BvdENvc3QYCiABKAESFwoPZnJlZVRpZXJTYXZpbmdzGAsgASgBEhEKCXVzYWdlVHlwZRgMIAEoCRIXCg9jb21tb25Vc2FnZVR5cGUYDSABKAkSFAoMY292ZXJlZFVzYWdlGA4gASgBEg4KBnVwdGltZRgPIAEoASJWCh1HZXRSZXNvdXJjZURhaWx5VXNhZ2VSZXNwb25zZRI1CgpkYWlseVVzYWdlGAEgAygLMiEuYmx1ZWFwaS5nYy52MS5SZXNvdXJjZURhaWx5VXNhZ2UidAoHU2VnbWVudBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEikKCHByb3ZpZGVyGAMgASgOMhcuYmx1ZWFwaS5nYy52MS5Qcm92aWRlchIRCglpc0RlZmF1bHQYBCABKAgSEQoJY3JlYXRlZEF0GAUgASgJIkAKFExpc3RTZWdtZW50c1Jlc3BvbnNlEigKCHNlZ21lbnRzGAEgAygLMhYuYmx1ZWFwaS5nYy52MS5TZWdtZW50IkAKDlNlZ21lbnRDcmVhdG9yEgoKAmlkGAEgASgJEhAKCHVzZXJuYW1lGAIgASgJEhAKCGZ1bGxOYW1lGAMgASgJIksKDFB1cmNoYXNlUGxhbhIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEg4KBnN0YXR1cxgDIAEoCRIRCglpc1JlbmV3YWwYBCABKAgipQUKDlNlZ21lbnREZXRhaWxzEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSKQoIcHJvdmlkZXIYBCABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEhYKDmNsb3VkUHJvdmlkZXJzGAUgAygJEhEKCWlzRGVmYXVsdBgGIAEoCBIRCgljcmVhdGVkQXQYByABKAkSMAoJY3JlYXRlZEJ5GAggASgLMh0uYmx1ZWFwaS5nYy52MS5TZWdtZW50Q3JlYXRvchIQCghwYXJlbnRJZBgJIAEoCRIOCgZzdGF0dXMYCiABKAkSFAoMc2VnbWVudENsYXNzGAsgASgJEicKBnBhcmFtcxgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEwoLbW9udGhseUNvc3QYDSABKAESFgoObW9udGhseU5ldENvc3QYDiABKAESIAoYbW9udGhseUlmQWxsT25kZW1hbmRDb3N0GA8gASgBEhsKE21vbnRobHlPbmRlbWFuZENvc3QYECABKAESGwoTbW9udGhseVJlc2VydmVkQ29zdBgRIAEoARIXCg9tb250aGx5U3BvdENvc3QYEiABKAESFgoObW9udGhseVNhdmluZ3MYEyABKAESFQoNbW9udGhseUJ1ZGdldBgUIAEoARIQCghjb3ZlcmFnZRgVIAEoARIbChNyZWNvbW1lbmRlZENvdmVyYWdlGBYgASgBEhYKDnRhcmdldENvdmVyYWdlGBcgASgBEhwKFG1vbnRobHlSZXNvdXJjZUNvdW50GBggASgFEjIKDXB1cmNoYXNlUGxhbnMYGSADKAsyGy5ibHVlYXBpLmdjLnYxLlB1cmNoYXNlUGxhbiJ4CgxDb250cmFjdFNwZWMSFgoOY29tbWl0bWVudFR5cGUYASABKAkSFQoNcGF5bWVudE9wdGlvbhgCIAEoCRIMCgR0ZXJtGAMgASgJEisKCnByb3BlcnRpZXMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0It4CCgtQbGFuU3VtbWFyeRILCgNrZXkYASABKAkSEAoIcHJvdmlkZXIYAiABKAkSFgoObnVtQ29tbWl0bWVudHMYAyABKAUSFQoNbWluQ29tbWl0bWVudBgEIAEoARIZChFtb250aGx5Q29tbWl0bWVudBgFIAEoARITCgt1cGZyb250Q29zdBgGIAEoARISCgptaW5TYXZpbmdzGAcgASgBEhIKCm1heFNhdmluZ3MYCCABKAESFgoObW9udGhseVNhdmluZ3MYCSABKAESFAoMbWluVGVybUhvdXJzGAogASgFEhQKDG1heFRlcm1Ib3VycxgLIAEoBRITCgtncmlQcmVtaXVtcxgMIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYDSABKAESGQoRYWZ0ZXJPbmRlbWFuZENvc3QYDiABKAESGQoRaWZBbGxPbmRlbWFuZENvc3QYDyABKAEi5QIKDlNlcnZpY2VTdW1tYXJ5EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC3NlcnZpY2VOYW1lGAMgASgJEhAKCHByb3ZpZGVyGAQgASgJEhYKDm51bUNvbW1pdG1lbnRzGAUgASgFEhcKD2N1cnJlbnRDb3ZlcmFnZRgGIAEoARIZChFwb3RlbnRpYWxDb3ZlcmFnZRgHIAEoARIVCg1taW5Db21taXRtZW50GAggASgBEhkKEW1vbnRobHlDb21taXRtZW50GAkgASgBEhMKC3VwZnJvbnRDb3N0GAogASgBEhIKCm1pblNhdmluZ3MYCyABKAESEgoKbWF4U2F2aW5ncxgMIAEoARIWCg5tb250aGx5U2F2aW5ncxgNIAEoARIUCgxtaW5UZXJtSG91cnMYDiABKAUSFAoMbWF4VGVybUhvdXJzGA8gASgFEhIKCmdyaVByZW1pdW0YECABKAEi2gEKEEFnZ3JlZ2F0ZU1ldHJpY3MSFwoPY3VycmVudENvdmVyYWdlGAEgASgBEhkKEXBvdGVudGlhbENvdmVyYWdlGAIgASgBEkEKCXN1bW1hcmllcxgDIAMoCzIuLmJsdWVhcGkuZ2MudjEuQWdncmVnYXRlTWV0cmljcy5TdW1tYXJpZXNFbnRyeRpPCg5TdW1tYXJpZXNFbnRyeRILCgNrZXkYASABKAkSLAoFdmFsdWUYAiABKAsyHS5ibHVlYXBpLmdjLnYxLlNlcnZpY2VTdW1tYXJ5OgI4ASLVCgoTRGVmYXVsdFB1cmNoYXNlUGxhbhIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEg0KBW9yZ0lkGAQgASgJEhEKCXNlZ21lbnRJZBgFIAEoCRInCgdzZWdtZW50GAYgASgLMhYuYmx1ZWFwaS5nYy52MS5TZWdtZW50Eg4KBnN0YXR1cxgHIAEoCRIQCghwbGFuVHlwZRgIIAEoCRIRCgljcmVhdGVkQXQYCSABKAkSFAoMbGFzdE1vZGlmaWVkGAogASgJEikKCWNyZWF0ZWRCeRgLIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIvCg9leGVjdXRpb25Qb2xpY3kYDCABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEQoJaXNEZWZhdWx0GA0gASgIEhUKDWlzUmVjb21tZW5kZWQYDiABKAgSEQoJaXNSZW5ld2FsGA8gASgIEhUKDWlzQ2FsY3VsYXRpbmcYECABKAgSEAoIaXNMb2NrZWQYESABKAgSDwoHaXNTYXZlZBgSIAEoCBI6ChVpbmNsdWRlZENvbnRyYWN0U3BlY3MYEyADKAsyGy5ibHVlYXBpLmdjLnYxLkNvbnRyYWN0U3BlYxIdChVpbmNsdWRlZENvbnRyYWN0VGVybXMYFCADKAkSDwoHbWF4VGVybRgVIAEoCRIeChZwcmVmZXJyZWRQYXltZW50T3B0aW9uGBYgASgJEhYKDm1heFVwZnJvbnRDb3N0GBcgASgBEiIKGm1pbmltdW1VcGZyb250SW50ZXJlc3RSYXRlGBggASgBEj4KHnJlY29tbWVuZFdpdGhpbkNvdmVyZWRBY2NvdW50cxgZIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIRCglzdGFydERhdGUYGiABKAkSDwoHZW5kRGF0ZRgbIAEoCRISCgpkYXRhU291cmNlGBwgASgJEhIKCmJlZm9yZUNvc3QYHSABKAESEQoJYWZ0ZXJDb3N0GB4gASgBEhoKEmJlZm9yZU9uZGVtYW5kQ29zdBgfIAEoARIaChJiZWZvcmVSZXNlcnZlZENvc3QYICABKAESGwoTY292ZXJlZE9uZGVtYW5kQ29zdBghIAEoARIVCg1hbW9ydGl6ZWRDb3N0GCIgASgBEhUKDXJlY3VycmluZ0Nvc3QYIyABKAESEwoLdXBmcm9udENvc3QYJCABKAESEQoJdG90YWxDb3N0GCUgASgBEh4KFnRvdGFsTW9udGhseUJlZm9yZUNvc3QYJiABKAESDwoHc2F2aW5ncxgnIAEoARIWCg5tb250aGx5U2F2aW5ncxgoIAEoARIUCgx0b3RhbFNhdmluZ3MYKSABKAESCwoDZmVlGCogASgBEhoKEmNvbW1pdG1lbnRDb3ZlcmFnZRgrIAEoARIdChVtaW5pbXVtQ29tbWl0bWVudENvc3QYLCABKAESFgoOYnJlYWtldmVuSG91cnMYLSABKAESOQoQYWdncmVnYXRlTWV0cmljcxguIAEoCzIfLmJsdWVhcGkuZ2MudjEuQWdncmVnYXRlTWV0cmljcxItCglzdW1tYXJpZXMYLyADKAsyGi5ibHVlYXBpLmdjLnYxLlBsYW5TdW1tYXJ5EhYKDnJlc2VydmF0aW9uSWRzGDAgAygJEhMKC3Jlc291cmNlSWRzGDEgAygJEhYKDmZsYWdnZWRBY3Rpb25zGDIgAygJEhIKCm1ldGFQbGFuSWQYMyABKAkSEgoKY292ZXJhZ2VJZBg0IAEoCSJVCiBMaXN0RGVmYXVsdFB1cmNoYXNlUGxhbnNSZXNwb25zZRIxCgVwbGFucxgBIAMoCzIiLmJsdWVhcGkuZ2MudjEuRGVmYXVsdFB1cmNoYXNlUGxhbiKEAgoTUmVnaXN0ZXJPcmdSZXNwb25zZRIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEi4KC21lbWJlcnNoaXBzGAMgAygLMhkuYmx1ZWFwaS5nYy52MS5NZW1iZXJzaGlwEg4KBmRvbWFpbhgEIAEoCRIuCg5wcmltYXJ5QWRkcmVzcxgFIAEoCzIWLmJsdWVhcGkuZ2MudjEuQWRkcmVzcxIfChdhd3NNYXJrZXRwbGFjZU9mZmVyTGluaxgGIAEoCRIhChlhenVyZU1hcmtldHBsYWNlT2ZmZXJMaW5rGAcgASgJEh8KF2djcE1hcmtldHBsYWNlT2ZmZXJMaW5rGAggASgJIjIKGlN0YXJ0QXdzT25ib2FyZGluZ1Jlc3BvbnNlEhQKDG9uYm9hcmRpbmdJZBgBIAEoCSJRCiRHZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlUmVzcG9uc2USKQoIdGVtcGxhdGUYASABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IisKHEdldEF3c0xhdW5jaFN0YWNrVXJsUmVzcG9uc2USCwoDdXJsGAEgASgJIo8EChtWZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2USVAoGY2hlY2tzGAEgAygLMkQuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjaxqZAwoZQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjaxIPCgdmZWF0dXJlGAEgASgJEm8KBnN0YXR1cxgCIAEoDjJfLmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2suQXdzT25ib2FyZGluZ0ZlYXR1cmVTdGF0dXMi+QEKGkF3c09uYm9hcmRpbmdGZWF0dXJlU3RhdHVzEi0KKUFXU19PTkJPQVJESU5HX0ZFQVRVUkVfU1RBVFVTX1VOU1BFQ0lGSUVEEAASKwonQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfQVZBSUxBQkxFEAESKQolQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfV0FSTklORxACEikKJUFXU19PTkJPQVJESU5HX0ZFQVRVUkVfU1RBVFVTX01JU1NJTkcQAxIpCiVBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19VTktOT1dOEAQqXgoIUHJvdmlkZXISGAoUUFJPVklERVJfVU5TUEVDSUZJRUQQABIHCgNBV1MQARIJCgVBWlVSRRACEgcKA0dDUBADEg4KCktVQkVSTkVURVMQBBILCgdVTktOT1dOEAUqmAEKEENvbW1pdG1lbnRTdGF0dXMSIQodQ09NTUlUTUVOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIHCgNORVcQARIMCghSRVZJRVdFRBACEg0KCVNDSEVEVUxFRBADEg0KCUNPTVBMRVRFRBAEEgkKBURSQUZUEAUSEAoMTkVFRFNfUkVWSUVXEAYSDwoLSU5fUFJPR1JFU1MQByqKAQoZQ29tbWl0bWVudEludmVudG9yeVN0YXR1cxIrCidDT01NSVRNRU5UX0lOVkVOVE9SWV9TVEFUVVNfVU5TUEVDSUZJRUQQABIKCgZBQ1RJVkUQARILCgdSRVRJUkVEEAISEwoPUEFZTUVOVF9QRU5ESU5HEAMSEgoOUEFZTUVOVF9GQUlMRUQQBCpDCgVTY29wZRIVChFTQ09QRV9VTlNQRUNJRklFRBAAEgoKBlNIQVJFRBABEgwKCFJFR0lPTkFMEAISCQoFWk9OQUwQAypBCglVc2FnZVR5cGUSGgoWVVNBR0VfVFlQRV9VTlNQRUNJRklFRBAAEgsKB1JVTk5JTkcQARILCgdTVE9QUEVEEAIyvBgKFUd1YXJhbnRlZWRDb21taXRtZW50cxJjCghMaXN0T3JncxIeLmJsdWVhcGkuZ2MudjEuTGlzdE9yZ3NSZXF1ZXN0GhIuYmx1ZWFwaS5nYy52MS5PcmciIYLT5JMCGzoBKiIWL3YxL29yZ2FuaXphdGlvbnM6cmVhZDABEpcBChhHZXRDb21taXRtZW50UGxhbkRldGFpbHMSLi5ibHVlYXBpLmdjLnYxLkdldENvbW1pdG1lbnRQbGFuRGV0YWlsc1JlcXVlc3QaJC5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuRGV0YWlscyIlgtPkkwIfEh0vdjEvY29tbWl0bWVudC1wbGFucy97cGxhbklkfRKWAQoTQ29tbWl0bWVudFBsYW5BcHBseRIpLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudFBsYW5BcHBseVJlcXVlc3QaJC5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuRGV0YWlscyIugtPkkwIoOgEqIiMvdjEvY29tbWl0bWVudC1wbGFucy97cGxhbklkfS9hcHBseRKnAQoaTGlzdERlZmF1bHRDb21taXRtZW50UGxhbnMSMC5ibHVlYXBpLmdjLnYxLkxpc3REZWZhdWx0Q29tbWl0bWVudFBsYW5zUmVxdWVzdBoxLmJsdWVhcGkuZ2MudjEuTGlzdERlZmF1bHRDb21taXRtZW50UGxhbnNSZXNwb25zZSIkgtPkkwIeEhwvdjEvY29tbWl0bWVudC1wbGFucy9kZWZhdWx0EqIBChxHZXRSZWNvbW1lbmRlZENvbW1pdG1lbnRQbGFuEjIuYmx1ZWFwaS5nYy52MS5HZXRSZWNvbW1lbmRlZENvbW1pdG1lbnRQbGFuUmVxdWVzdBokLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudFBsYW5EZXRhaWxzIiiC0+STAiISIC92MS9jb21taXRtZW50LXBsYW5zL3JlY29tbWVuZGVkErYBChtMaXN0Q29tbWl0bWVudFBsYW5MaW5lSXRlbXMSMS5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50UGxhbkxpbmVJdGVtc1JlcXVlc3QaMi5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50UGxhbkxpbmVJdGVtc1Jlc3BvbnNlIjCC0+STAioSKC92MS9jb21taXRtZW50LXBsYW5zL3twbGFuSWR9L2xpbmUtaXRlbXMSzgEKIUxpc3RDb21taXRtZW50UGxhblJlc291cmNlTWF0Y2hlcxI3LmJsdWVhcGkuZ2MudjEuTGlzdENvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaGVzUmVxdWVzdBo4LmJsdWVhcGkuZ2MudjEuTGlzdENvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaGVzUmVzcG9uc2UiNoLT5JMCMBIuL3YxL2NvbW1pdG1lbnQtcGxhbnMve3BsYW5JZH0vcmVzb3VyY2UtbWF0Y2hlcxJ5Cg9MaXN0Q29tbWl0bWVudHMSJS5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50c1JlcXVlc3QaJi5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50c1Jlc3BvbnNlIheC0+STAhESDy92MS9jb21taXRtZW50cxKIAQoTR2V0Q29tbWl0bWVudHNDaGFydBIpLmJsdWVhcGkuZ2MudjEuR2V0Q29tbWl0bWVudHNDaGFydFJlcXVlc3QaJy5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRzQ2hhcnRSZXNwb25zZSIdgtPkkwIXEhUvdjEvY29tbWl0bWVudHMvY2hhcnQSYwoKR2V0TWV0cmljcxIgLmJsdWVhcGkuZ2MudjEuR2V0TWV0cmljc1JlcXVlc3QaHi5ibHVlYXBpLmdjLnYxLk1ldHJpY3NSZXNwb25zZSITgtPkkwINEgsvdjEvbWV0cmljcxJxCg1MaXN0UmVzb3VyY2VzEiMuYmx1ZWFwaS5nYy52MS5MaXN0UmVzb3VyY2VzUmVxdWVzdBokLmJsdWVhcGkuZ2MudjEuTGlzdFJlc291cmNlc1Jlc3BvbnNlIhWC0+STAg8SDS92MS9yZXNvdXJjZXMSogEKFUdldFJlc291cmNlRGFpbHlVc2FnZRIrLmJsdWVhcGkuZ2MudjEuR2V0UmVzb3VyY2VEYWlseVVzYWdlUmVxdWVzdBosLmJsdWVhcGkuZ2MudjEuR2V0UmVzb3VyY2VEYWlseVVzYWdlUmVzcG9uc2UiLoLT5JMCKBImL3YxL3Jlc291cmNlcy97cmVzb3VyY2VJZH0vZGFpbHktdXNhZ2UScgoMTGlzdFNlZ21lbnRzEiIuYmx1ZWFwaS5nYy52MS5MaXN0U2VnbWVudHNSZXF1ZXN0GiMuYmx1ZWFwaS5nYy52MS5MaXN0U2VnbWVudHNSZXNwb25zZSIZgtPkkwITEhEvdjEvc2VnbWVudHMvaW5mbxJ9ChFHZXRTZWdtZW50RGV0YWlscxInLmJsdWVhcGkuZ2MudjEuR2V0U2VnbWVudERldGFpbHNSZXF1ZXN0Gh0uYmx1ZWFwaS5nYy52MS5TZWdtZW50RGV0YWlscyIggtPkkwIaEhgvdjEvc2VnbWVudHMve3NlZ21lbnRJZH0SogEKGExpc3REZWZhdWx0UHVyY2hhc2VQbGFucxIuLmJsdWVhcGkuZ2MudjEuTGlzdERlZmF1bHRQdXJjaGFzZVBsYW5zUmVxdWVzdBovLmJsdWVhcGkuZ2MudjEuTGlzdERlZmF1bHRQdXJjaGFzZVBsYW5zUmVzcG9uc2UiJYLT5JMCHxIdL3YxL3B1cmNoYXNlLXBsYW5zLXYxL2RlZmF1bHQSbwoLUmVnaXN0ZXJPcmcSIS5ibHVlYXBpLmdjLnYxLlJlZ2lzdGVyT3JnUmVxdWVzdBoiLmJsdWVhcGkuZ2MudjEuUmVnaXN0ZXJPcmdSZXNwb25zZSIZgtPkkwITOgEqIg4vdjEvb25ib2FyZGluZxKOAQoSU3RhcnRBd3NPbmJvYXJkaW5nEiguYmx1ZWFwaS5nYy52MS5TdGFydEF3c09uYm9hcmRpbmdSZXF1ZXN0GikuYmx1ZWFwaS5nYy52MS5TdGFydEF3c09uYm9hcmRpbmdSZXNwb25zZSIjgtPkkwIdOgEqIhgvdjEvb25ib2FyZGluZy9hd3Mvc3RhcnQSuwEKHEdldEF3c0Nsb3VkRm9ybWF0aW9uVGVtcGxhdGUSMi5ibHVlYXBpLmdjLnYxLkdldEF3c0Nsb3VkRm9ybWF0aW9uVGVtcGxhdGVSZXF1ZXN0GjMuYmx1ZWFwaS5nYy52MS5HZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlUmVzcG9uc2UiMoLT5JMCLBIqL3YxL29uYm9hcmRpbmcvYXdzL2Nsb3VkZm9ybWF0aW9uLXRlbXBsYXRlEpwBChRHZXRBd3NMYXVuY2hTdGFja1VybBIqLmJsdWVhcGkuZ2MudjEuR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXF1ZXN0GisuYmx1ZWFwaS5nYy52MS5HZXRBd3NMYXVuY2hTdGFja1VybFJlc3BvbnNlIiuC0+STAiUSIy92MS9vbmJvYXJkaW5nL2F3cy9sYXVuY2gtc3RhY2stdXJsEpIBChNWZXJpZnlBd3NPbmJvYXJkaW5nEikuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVxdWVzdBoqLmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlIiSC0+STAh46ASoiGS92MS9vbmJvYXJkaW5nL2F3cy92ZXJpZnkaogGSQZ4BElAoQWxwaGEpIEd1YXJhbnRlZWRDb21taXRtZW50cyBBUEkuIEJhc2UgVVJMOiBodHRwczovL2FwaS5hbHBoYXVzLmNsb3VkL20vYmx1ZS9nYxpKChJTZXJ2aWNlIGRlZmluaXRpb24SNGh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9nYy9CVQoUY2xvdWQuYWxwaGF1cy5hcGkuZ2NCGkd1YXJhbnRlZWRDb21taXRtZW50c1Byb3RvWiFnaXRodWIuY29tL2FscGhhdXNsYWJzL2JsdWVhcGkvZ2NiBnByb3RvMw", [file_google_api_annotations, file_google_protobuf_struct, file_protoc_gen_openapiv2_options_annotations]);
17
+ fileDesc("Cg5nYy92MS9nYy5wcm90bxINYmx1ZWFwaS5nYy52MSIRCg9MaXN0T3Jnc1JlcXVlc3QiMQofR2V0Q29tbWl0bWVudFBsYW5EZXRhaWxzUmVxdWVzdBIOCgZwbGFuSWQYASABKAkiLAoaQ29tbWl0bWVudFBsYW5BcHBseVJlcXVlc3QSDgoGcGxhbklkGAEgASgJIk4KIUxpc3REZWZhdWx0Q29tbWl0bWVudFBsYW5zUmVxdWVzdBIpCghwcm92aWRlchgBIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXIiUAojR2V0UmVjb21tZW5kZWRDb21taXRtZW50UGxhblJlcXVlc3QSKQoIcHJvdmlkZXIYASABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyIqABCiJMaXN0Q29tbWl0bWVudFBsYW5MaW5lSXRlbXNSZXF1ZXN0Eg4KBnBsYW5JZBgBIAEoCRIPCgdvcmRlckJ5GAIgASgJEgwKBGRlc2MYAyABKAgSEQoJc2VnbWVudElkGAQgASgJEhgKEHJlc291cmNlTWF0Y2hJZHMYBSADKAkSDAoEcGFnZRgGIAEoBRIQCghwYWdlU2l6ZRgHIAEoBSKyAQooTGlzdENvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaGVzUmVxdWVzdBIOCgZwbGFuSWQYASABKAkSDwoHb3JkZXJCeRgCIAEoCRIMCgRkZXNjGAMgASgIEhEKCXN0YXJ0RGF0ZRgEIAEoCRIPCgdlbmREYXRlGAUgASgJEhMKC2xpbmVJdGVtSWRzGAYgAygJEgwKBHBhZ2UYByABKAUSEAoIcGFnZVNpemUYCCABKAUiGAoWTGlzdENvbW1pdG1lbnRzUmVxdWVzdCJnChpHZXRDb21taXRtZW50c0NoYXJ0UmVxdWVzdBIUCgxjb21taXRtZW50SWQYASABKAkSDwoHZ3JvdXBCeRgCIAEoCRIRCglzdGFydERhdGUYAyABKAkSDwoHZW5kRGF0ZRgEIAEoCSI4CiBHZXRDb21taXRtZW50c1V0aWxpemF0aW9uUmVxdWVzdBIUCgxjb21taXRtZW50SWQYASABKAkiPgoRR2V0TWV0cmljc1JlcXVlc3QSKQoIcHJvdmlkZXIYASABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyIqMBChRMaXN0UmVzb3VyY2VzUmVxdWVzdBIpCghwcm92aWRlchgBIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXISEQoJc2VnbWVudElkGAIgASgJEg4KBnNlYXJjaBgDIAEoCRIMCgRkZXNjGAQgASgIEg8KB29yZGVyQnkYBSABKAkSDAoEcGFnZRgGIAEoBRIQCghwYWdlU2l6ZRgHIAEoBSKMAQocR2V0UmVzb3VyY2VEYWlseVVzYWdlUmVxdWVzdBISCgpyZXNvdXJjZUlkGAEgASgJEhEKCXN0YXJ0RGF0ZRgCIAEoCRIPCgdlbmREYXRlGAMgASgJEhQKDGNhdGFsb2dTa3VJZBgEIAEoCRIMCgRwYWdlGAUgASgFEhAKCHBhZ2VTaXplGAYgASgFIkAKE0xpc3RTZWdtZW50c1JlcXVlc3QSKQoIcHJvdmlkZXIYASABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyIi0KGEdldFNlZ21lbnREZXRhaWxzUmVxdWVzdBIRCglzZWdtZW50SWQYASABKAkiIwohTGlzdFB1cmNoYXNlUGxhbnNCeVNlZ21lbnRSZXF1ZXN0IiYKB09yZ1VzZXISDQoFZW1haWwYASABKAkSDAoEcm9sZRgCIAEoCSIsCgpNZW1iZXJzaGlwEgwKBHJvbGUYASABKAkSEAoIdXNlcm5hbWUYAiABKAkiYgoHQWRkcmVzcxINCgVsaW5lMRgBIAEoCRIMCgRjaXR5GAIgASgJEg0KBXN0YXRlGAMgASgJEgsKA3ppcBgEIAEoCRIPCgdjb3VudHJ5GAUgASgJEg0KBWxpbmUyGAYgASgJIlQKDkF3c0V4aXN0aW5nQ3VyEg4KBnJlZ2lvbhgBIAEoCRIOCgZidWNrZXQYAiABKAkSDgoGcHJlZml4GAMgASgJEhIKCnJlcG9ydE5hbWUYBCABKAkirQIKElJlZ2lzdGVyT3JnUmVxdWVzdBINCgVtc3BJZBgBIAEoCRIRCgliaWxsaW5nSWQYAiABKAkSDAoEbmFtZRgDIAEoCRIbChNsYWJyYVN1YnNjcmlwdGlvbklkGAQgASgJEiUKBXVzZXJzGAUgAygLMhYuYmx1ZWFwaS5nYy52MS5PcmdVc2VyEg4KBmRvbWFpbhgGIAEoCRIuCg5wcmltYXJ5QWRkcmVzcxgHIAEoCzIWLmJsdWVhcGkuZ2MudjEuQWRkcmVzcxIfChdhd3NNYXJrZXRwbGFjZU9mZmVyTGluaxgIIAEoCRIhChlhenVyZU1hcmtldHBsYWNlT2ZmZXJMaW5rGAkgASgJEh8KF2djcE1hcmtldHBsYWNlT2ZmZXJMaW5rGAogASgJIlcKGVN0YXJ0QXdzT25ib2FyZGluZ1JlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkiYQojR2V0QXdzQ2xvdWRGb3JtYXRpb25UZW1wbGF0ZVJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSEQoJY29tcGFueUlkGAIgASgJEg8KB2djT3JnSWQYAyABKAkiWQobR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXF1ZXN0EhYKDmJpbGxpbmdHcm91cElkGAEgASgJEhEKCWNvbXBhbnlJZBgCIAEoCRIPCgdnY09yZ0lkGAMgASgJIrUBChpWZXJpZnlBd3NPbmJvYXJkaW5nUmVxdWVzdBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIRCgljb21wYW55SWQYAiABKAkSDwoHZ2NPcmdJZBgDIAEoCRIUCgxvbmJvYXJkaW5nSWQYBCABKAkSEQoJYWNjb3VudElkGAUgASgJEjIKC2V4aXN0aW5nQ3VyGAYgASgLMh0uYmx1ZWFwaS5nYy52MS5Bd3NFeGlzdGluZ0N1ciJHChpHZXRPbmJvYXJkaW5nU3RhdHVzUmVxdWVzdBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIRCgljb21wYW55SWQYAiABKAkiGgoYTGlzdFBheWVyQWNjb3VudHNSZXF1ZXN0IkMKHVNldFBheWVyQWNjb3VudEVuYWJsZWRSZXF1ZXN0EhEKCWNvbXBhbnlJZBgBIAEoCRIPCgdlbmFibGVkGAIgASgIIh4KHEdldFBheWVyQWNjb3VudFN0YXR1c1JlcXVlc3QiwgcKIVNhdmVDb21taXRtZW50c1BsYW5Bc0RyYWZ0UmVxdWVzdBIOCgZwbGFuSWQYASABKAkSFgoOcmVzZXJ2YXRpb25JZHMYAiADKAkSEwoLcmVzb3VyY2VJZHMYAyADKAkSFgoObWF4VXBmcm9udENvc3QYBCABKAESKQoIcHJvdmlkZXIYBSABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEg8KB2VuZERhdGUYBiABKAkSEQoJc3RhcnREYXRlGAcgASgJEhEKCXNlZ21lbnRJZBgIIAEoCRIOCgZzdGF0dXMYCSABKAkSEwoLZGVzY3JpcHRpb24YCiABKAkSDAoEbmFtZRgLIAEoCRIeChZwcmVmZXJyZWRQYXltZW50T3B0aW9uGAwgASgJEh0KFWluY2x1ZGVkQ29udHJhY3RUZXJtcxgNIAMoCRI6ChVpbmNsdWRlZENvbnRyYWN0U3BlY3MYDiADKAsyGy5ibHVlYXBpLmdjLnYxLkNvbnRyYWN0U3BlYxIqCgpjb3ZlcmFnZUlkGA8gASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCWNyZWF0ZWRBdBgQIAEoCRIpCgljcmVhdGVkQnkYESABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSEgoKZGF0YVNvdXJjZRgSIAEoCRIvCg9leGVjdXRpb25Qb2xpY3kYEyABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSFgoOZmxhZ2dlZEFjdGlvbnMYFCADKAkSCgoCaWQYFSABKAkSFQoNaXNDYWxjdWxhdGluZxgWIAEoCBIRCglpc0RlZmF1bHQYFyABKAgSEAoIaXNMb2NrZWQYGCABKAgSFQoNaXNSZWNvbW1lbmRlZBgZIAEoCBIRCglpc1JlbmV3YWwYGiABKAgSDwoHaXNTYXZlZBgbIAEoCBIUCgxsYXN0TW9kaWZpZWQYHCABKAkSEgoKbWV0YVBsYW5JZBgdIAEoCRI6ChptaW5pbXVtVXBmcm9udEludGVyZXN0UmF0ZRgeIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRINCgVvcmdJZBgfIAEoCRIQCghwbGFuVHlwZRggIAEoCRI+Ch5yZWNvbW1lbmRXaXRoaW5Db3ZlcmVkQWNjb3VudHMYISABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSJwoHc2VnbWVudBgiIAEoCzIWLmJsdWVhcGkuZ2MudjEuU2VnbWVudCIfCh1MaXN0RHJhZnRQdXJjaGFzZVBsYW5zUmVxdWVzdCIwCh5EZWxldGVEcmFmdFB1cmNoYXNlUGxhblJlcXVlc3QSDgoGcGxhbklkGAEgASgJIjEKA09yZxINCgVvcmdJZBgBIAEoCRIMCgRuYW1lGAIgASgJEg0KBWVtYWlsGAMgASgJIvMEChVDb21taXRtZW50UGxhbkRldGFpbHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRINCgVvcmdJZBgEIAEoCRIRCgljcmVhdGVkQXQYBSABKAkSFQoNaXNDYWxjdWxhdGluZxgGIAEoCBIOCgZzdGF0dXMYByABKAkSDwoHbWF4VGVybRgIIAEoCRIhChljb3ZlcmVkT25kZW1hbmRDb3N0SG91cmx5GAkgASgBEiAKGGJlZm9yZU9uZGVtYW5kQ29zdEhvdXJseRgKIAEoARIgChhiZWZvcmVSZXNlcnZlZENvc3RIb3VybHkYCyABKAESGwoTYW1vcnRpemVkQ29zdEhvdXJseRgMIAEoARIbChNyZWN1cnJpbmdDb3N0SG91cmx5GA0gASgBEhkKEXVwZnJvbnRDb3N0SG91cmx5GA4gASgBEhgKEGJlZm9yZUNvc3RIb3VybHkYDyABKAESFwoPYWZ0ZXJDb3N0SG91cmx5GBAgASgBEhcKD3RvdGFsQ29zdEhvdXJseRgRIAEoARIVCg1zYXZpbmdzSG91cmx5GBIgASgBEhEKCWZlZUhvdXJseRgTIAEoARIaChJjb21taXRtZW50Q292ZXJhZ2UYFCABKAESHQoVbWluaW11bUNvbW1pdG1lbnRDb3N0GBUgASgBEhYKDmJyZWFrZXZlbkhvdXJzGBYgASgBEhQKDHRvdGFsU2F2aW5ncxgXIAEoARIWCg5tb250aGx5U2F2aW5ncxgYIAEoARIeChZ0b3RhbE1vbnRobHlCZWZvcmVDb3N0GBkgASgBIlkKIkxpc3REZWZhdWx0Q29tbWl0bWVudFBsYW5zUmVzcG9uc2USMwoFcGxhbnMYASADKAsyJC5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuRGV0YWlscyLpBQoWQ29tbWl0bWVudFBsYW5MaW5lSXRlbRIKCgJpZBgBIAEoCRIOCgZwbGFuSWQYAiABKAkSDwoHb2ZmZXJJZBgDIAEoCRIXCg9sZWFzZU1lbnVJdGVtSWQYBCABKAkSEQoJYWNjb3VudElkGAUgASgJEhsKE3JlY29tbWVuZGVkUXVhbnRpdHkYBiABKAESGAoQc2VsZWN0ZWRRdWFudGl0eRgHIAEoARIdChVyZWNvbW1lbmRlZENvbW1pdG1lbnQYCCABKAESGgoSc2VsZWN0ZWRDb21taXRtZW50GAkgASgBEhIKCmlzU2VsZWN0ZWQYCiABKAgSGgoSYWZ0ZXJBbW9ydGl6ZWRDb3N0GAsgASgBEhMKC3VwZnJvbnRDb3N0GAwgASgBEhUKDXJlY3VycmluZ0Nvc3QYDSABKAESEgoKYmVmb3JlQ29zdBgOIAEoARIaChJiZWZvcmVPbmRlbWFuZENvc3QYDyABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GBAgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYESABKAESGQoRYWZ0ZXJDb3ZlcmVkVW5pdHMYEiABKAESEQoJdG90YWxDb3N0GBMgASgBEhMKC21vbnRobHlDb3N0GBQgASgBEg8KB3NhdmluZ3MYFSABKAESFgoObW9udGhseVNhdmluZ3MYFiABKAESFAoMdG90YWxTYXZpbmdzGBcgASgBEgsKA2ZlZRgYIAEoARIUCgxkaXNjb3VudFJhdGUYGSABKAESFgoOYnJlYWtldmVuSG91cnMYGiABKAESFAoMY29udHJhY3RUZXJtGBsgASgJEhUKDXBheW1lbnRPcHRpb24YHCABKAkSLQoMY29udHJhY3RTcGVjGB0gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBImCgVvZmZlchgeIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiXwojTGlzdENvbW1pdG1lbnRQbGFuTGluZUl0ZW1zUmVzcG9uc2USOAoJbGluZUl0ZW1zGAEgAygLMiUuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhbkxpbmVJdGVtIvcEChtDb21taXRtZW50UGxhblJlc291cmNlTWF0Y2gSCgoCaWQYASABKAkSEgoKdG90YWxVbml0cxgCIAEoARIcChRiZWZvcmVVbmNvdmVyZWRVbml0cxgDIAEoARIZChFhZnRlckNvdmVyZWRVbml0cxgEIAEoARIbChNhZnRlclVuY292ZXJlZFVuaXRzGAUgASgBEhUKDW9uZGVtYW5kUHJpY2UYBiABKAESGQoRaWZBbGxPbmRlbWFuZENvc3QYByABKAESGgoSYmVmb3JlT25kZW1hbmRDb3N0GAggASgBEhkKEWFmdGVyT25kZW1hbmRDb3N0GAkgASgBEhsKE2NvdmVyZWRPbmRlbWFuZENvc3QYCiABKAESGgoSYmVmb3JlUmVzZXJ2ZWRDb3N0GAsgASgBEhkKEWFmdGVyUmVzZXJ2ZWRDb3N0GAwgASgBEhIKCmJlZm9yZUNvc3QYDSABKAESEQoJYWZ0ZXJDb3N0GA4gASgBEhkKEW1vbnRobHlCZWZvcmVDb3N0GA8gASgBEhgKEG1vbnRobHlBZnRlckNvc3QYECABKAESIAoYbW9udGhseUFmdGVyUmVzZXJ2ZWRDb3N0GBEgASgBEiAKGG1vbnRobHlBZnRlck9uZGVtYW5kQ29zdBgSIAEoARIWCg5hdmVyYWdlU2F2aW5ncxgTIAEoARIdChVhdmVyYWdlTW9udGhseVNhdmluZ3MYFCABKAESEQoJdXNhZ2VUeXBlGBUgASgJEhAKCGNvdmVyYWdlGBYgASgBEikKCHJlc291cmNlGBcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJwCilMaXN0Q29tbWl0bWVudFBsYW5SZXNvdXJjZU1hdGNoZXNSZXNwb25zZRJDCg9yZXNvdXJjZU1hdGNoZXMYASADKAsyKi5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaCLuAQoFTGVhc2USCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSHQoVcHJvdmlkZXJSZXNlcnZhdGlvbklkGAMgASgJEhEKCWFjY291bnRJZBgEIAEoCRIOCgZzdGF0dXMYBSABKAkSEQoJc3RhcnREYXRlGAYgASgJEg8KB2VuZERhdGUYByABKAkSEgoKbG9ja2luRGF0ZRgIIAEoCRITCgt1cGZyb250Q29zdBgJIAEoARIVCg1yZWN1cnJpbmdDb3N0GAogASgBEhEKCWNyZWF0ZWRBdBgLIAEoCRIRCgl1cGRhdGVkQXQYDCABKAkiSQoQRGFpbHlVdGlsaXphdGlvbhIMCgRkYXRlGAEgASgJEhMKC3V0aWxpemF0aW9uGAIgASgBEhIKCm5ldFNhdmluZ3MYAyABKAEi0AcKCkNvbW1pdG1lbnQSCgoCaWQYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhUKDWFtb3J0aXplZENvc3QYAyABKAESGAoQYmlsbGluZ0FjY291bnRJZBgEIAEoCRIRCgljYW5SZWJhdGUYBSABKAgSFAoMY29udHJhY3RUZXJtGAYgASgJEhMKC2Rpc3BsYXlOYW1lGAcgASgJEhcKD2R1cmF0aW9uU2Vjb25kcxgIIAEoARIeChZlZmZlY3RpdmVJbnN0YW5jZUNvdW50GAkgASgDEg8KB2VuZERhdGUYCiABKAkSFQoNaW5zdGFuY2VDb3VudBgLIAEoAxIWCg5pbnN0YW5jZUZhbWlseRgMIAEoCRIUCgxpbnN0YW5jZVR5cGUYDSABKAkSEAoIaXNBY3RpdmUYDiABKAgSEgoKaXNGbGV4aWJsZRgPIAEoCBIQCghpc0xlYXNlZBgQIAEoCBIRCglpc011bHRpQXoYESABKAgSFwoPbGVhc2VMb2NraW5EYXRlGBIgASgJEhIKCmxlYXNlU3RhcnQYEyABKAkSGQoRbGVhc2VkRGlzcGxheU5hbWUYFCABKAkSEwoLbW9udGhseUNvc3QYFSABKAESFgoObW9udGhseVNhdmluZ3MYFiABKAESDAoEbmFtZRgXIAEoCRISCgpuZXRTYXZpbmdzGBggASgBEhIKCm9mZmVyaW5nSWQYGSABKAkSFQoNcGF5bWVudE9wdGlvbhgaIAEoCRIYChBwb3RlbnRpYWxTYXZpbmdzGBsgASgBEhoKEnByb2R1Y3REZXNjcmlwdGlvbhgcIAEoCRIQCghwcm92aWRlchgdIAEoCRIeChZwcm92aWRlclJlc2VydmF0aW9uX2lkGB4gASgJEhUKDXJlY3VycmluZ0Nvc3QYHyABKAESDgoGcmVnaW9uGCAgASgJEhMKC3JlbmV3YWxQbGFuGCEgASgJEhYKDnJlc2VydmF0aW9uRW5kGCIgASgJEhgKEHJlc2VydmF0aW9uU3RhcnQYIyABKAkSFAoMcnVubmluZ0hvdXJzGCQgASgBEg8KB3NhdmluZ3MYJSABKAESEQoJc3RhcnREYXRlGCYgASgJEg4KBnN0YXR1cxgnIAEoCRIeChZ0cmFuc2ZlclJlc2VydmF0aW9uRW5kGCggASgJEiAKGHRyYW5zZmVyUmVzZXJ2YXRpb25TdGFydBgpIAEoCRIMCgR0eXBlGCogASgJEhMKC3VwZnJvbnRDb3N0GCsgASgBEhMKC3V0aWxpemF0aW9uGCwgASgBIkkKF0xpc3RDb21taXRtZW50c1Jlc3BvbnNlEi4KC2NvbW1pdG1lbnRzGAEgAygLMhkuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50IkoKFENvbW1pdG1lbnRzQ2hhcnREYXRhEgwKBGRhdGUYASABKAkSEAoIY2hhcnRLZXkYAiABKAkSEgoKY2hhcnRWYWx1ZRgDIAEoASJNChhDb21taXRtZW50c0NoYXJ0UmVzcG9uc2USMQoEZGF0YRgBIAMoCzIjLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudHNDaGFydERhdGEi/AEKGkNvbW1pdG1lbnRzVXRpbGl6YXRpb25EYXRhEhcKD3V0aWxpemF0aW9uRGF0ZRgBIAEoCRIMCgRjb3N0GAIgASgBEhMKC2NvdmVyZWRDb3N0GAMgASgBEg8KB2dyaUZlZXMYBCABKAESEgoKbmV0U2F2aW5ncxgFIAEoARIYChBwb3RlbnRpYWxTYXZpbmdzGAYgASgBEh4KFnJlc2VydmF0aW9uVXRpbGl6YXRpb24YByABKAESFAoMcnVubmluZ0hvdXJzGAggASgBEg8KB3NhdmluZ3MYCSABKAESHAoUdW51dGlsaXplZENvbW1pdG1lbnQYCiABKAEiWQoeQ29tbWl0bWVudHNVdGlsaXphdGlvblJlc3BvbnNlEjcKBGRhdGEYASADKAsyKS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRzVXRpbGl6YXRpb25EYXRhIs0DCg9NZXRyaWNzUmVzcG9uc2USFwoPbGlmZXRpbWVTYXZpbmdzGAEgASgBEhIKCm10ZFNhdmluZ3MYAiABKAESIQoZcHVyY2hhc2VBdXRvbWF0aW9uRW5hYmxlZBgDIAEoCBIgChhidXliYWNrQXV0b21hdGlvbkVuYWJsZWQYBCABKAgSFwoPaGFzQWN0aW9uZWRQbGFuGAUgASgIEhkKEWhhc1BlbmRpbmdBY3Rpb25zGAYgASgIEhsKE2xhdGVzdEV4ZWN1dGlvbkRhdGUYByABKAkSHQoVcHVyY2hhc2VNaXNzZWRTYXZpbmdzGAggASgBEhwKFGJ1eWJhY2tNaXNzZWRTYXZpbmdzGAkgASgBEh8KF3RvdGFsRGFpbHlNaXNzZWRTYXZpbmdzGAogASgBEhsKE2hvdXJseU1pc3NlZFNhdmluZ3MYCyABKAESHgoWbWlzc2VkU2F2aW5nc1N0YXJ0RGF0ZRgMIAEoCRIcChRtaXNzZWRTYXZpbmdzRW5kRGF0ZRgNIAEoCRIXCg9leHBpcmluZ1NhdmluZ3MYDiABKAESEAoIY292ZXJhZ2UYDyABKAESEwoLdXRpbGl6YXRpb24YECABKAEiiAgKCFJlc291cmNlEgoKAmlkGAEgASgJEhIKCnJlc291cmNlSWQYAiABKAkSKQoIcHJvdmlkZXIYAyABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEhoKEnByb3ZpZGVyUmVzb3VyY2VJZBgEIAEoCRIOCgZpc1Nwb3QYBSABKAgSDAoEbmFtZRgGIAEoCRIVCg1yZXNvdXJjZUdyb3VwGAcgASgJEhAKCHVzYWdlRW5kGAggASgJEhIKCnVzYWdlU3RhcnQYCSABKAkSJQoEdGFncxgKIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSEQoJY3JlYXRlZEF0GAsgASgJEhEKCXVwZGF0ZWRBdBgMIAEoCRISCgppbnN0YW5jZUlkGA0gASgJEhgKEGJpbGxpbmdBY2NvdW50SWQYDiABKAkSFAoMc3ViQWNjb3VudElkGA8gASgJEhsKE21hbmFnZW1lbnRBY2NvdW50SWQYECABKAkSFgoOb3duZXJBY2NvdW50SWQYESABKAkSEAoIc2t1VGl0bGUYEiABKAkSDwoHc2t1TmFtZRgTIAEoCRIYChBhdmFpbGFiaWxpdHlab25lGBQgASgJEhMKC2NhY2hlRW5naW5lGBUgASgJEhYKDmRhdGFiYXNlRW5naW5lGBYgASgJEhMKC2Rlc2NyaXB0aW9uGBcgASgJEg4KBmZhbWlseRgYIAEoCRIWCg5mdWxsUmVnaW9uTmFtZRgZIAEoCRIYChBoYXNPbmRlbWFuZFRlcm1zGBogASgIEhQKDGluc3RhbmNlVHlwZRgbIAEoCRIaChJpbnN0YW5jZVR5cGVGYW1pbHkYHCABKAkSFAoMaXNSZXNlcnZhYmxlGB0gASgIEhQKDGxpY2Vuc2VNb2RlbBgeIAEoCRIUCgxsb2NhdGlvblR5cGUYHyABKAkSHwoXbm9ybWFsaXphdGlvblNpemVGYWN0b3IYICABKAkSFwoPb3BlcmF0aW5nU3lzdGVtGCEgASgJEhYKDnByZUluc3RhbGxlZFN3GCIgASgJEhUKDXByaWNlQ3VycmVuY3kYIyABKAkSFwoPcHJvdmlkZXJTZXJ2aWNlGCQgASgJEhUKDXByb3ZpZGVyU2t1SWQYJSABKAkSFwoPcHVibGljYXRpb25EYXRlGCYgASgJEg4KBnJlZ2lvbhgnIAEoCRIPCgdzZXJ2aWNlGCggASgJEg8KB3RlbmFuY3kYKSABKAkSEQoJdXNhZ2VUeXBlGCogASgJEg8KB3ZlcnNpb24YKyABKAkSHAoUdnBjTmV0d29ya2luZ1N1cHBvcnQYLCABKAgSGQoRb25kZW1hbmRVc2FnZVVuaXQYLSABKAkiQwoVTGlzdFJlc291cmNlc1Jlc3BvbnNlEioKCXJlc291cmNlcxgBIAMoCzIXLmJsdWVhcGkuZ2MudjEuUmVzb3VyY2Ui1AIKElJlc291cmNlRGFpbHlVc2FnZRIMCgRkYXRlGAEgASgJEhYKDnVzYWdlQWNjb3VudElkGAIgASgJEhQKDHN1YkFjY291bnRJZBgDIAEoCRINCgV1c2FnZRgEIAEoARIYChByZXNlcnZhdGlvblVzYWdlGAUgASgBEhUKDWZyZWVUaWVyVXNhZ2UYBiABKAESFAoMb25kZW1hbmRDb3N0GAcgASgBEhQKDHJlc2VydmVkQ29zdBgIIAEoARIZChFpZkFsbE9uZGVtYW5kQ29zdBgJIAEoARIQCghzcG90Q29zdBgKIAEoARIXCg9mcmVlVGllclNhdmluZ3MYCyABKAESEQoJdXNhZ2VUeXBlGAwgASgJEhcKD2NvbW1vblVzYWdlVHlwZRgNIAEoCRIUCgxjb3ZlcmVkVXNhZ2UYDiABKAESDgoGdXB0aW1lGA8gASgBIlYKHUdldFJlc291cmNlRGFpbHlVc2FnZVJlc3BvbnNlEjUKCmRhaWx5VXNhZ2UYASADKAsyIS5ibHVlYXBpLmdjLnYxLlJlc291cmNlRGFpbHlVc2FnZSJ0CgdTZWdtZW50EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSKQoIcHJvdmlkZXIYAyABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEhEKCWlzRGVmYXVsdBgEIAEoCBIRCgljcmVhdGVkQXQYBSABKAkiQAoUTGlzdFNlZ21lbnRzUmVzcG9uc2USKAoIc2VnbWVudHMYASADKAsyFi5ibHVlYXBpLmdjLnYxLlNlZ21lbnQiQAoOU2VnbWVudENyZWF0b3ISCgoCaWQYASABKAkSEAoIdXNlcm5hbWUYAiABKAkSEAoIZnVsbE5hbWUYAyABKAkiSwoMUHVyY2hhc2VQbGFuEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDgoGc3RhdHVzGAMgASgJEhEKCWlzUmVuZXdhbBgEIAEoCCKlBQoOU2VnbWVudERldGFpbHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIpCghwcm92aWRlchgEIAEoDjIXLmJsdWVhcGkuZ2MudjEuUHJvdmlkZXISFgoOY2xvdWRQcm92aWRlcnMYBSADKAkSEQoJaXNEZWZhdWx0GAYgASgIEhEKCWNyZWF0ZWRBdBgHIAEoCRIwCgljcmVhdGVkQnkYCCABKAsyHS5ibHVlYXBpLmdjLnYxLlNlZ21lbnRDcmVhdG9yEhAKCHBhcmVudElkGAkgASgJEg4KBnN0YXR1cxgKIAEoCRIUCgxzZWdtZW50Q2xhc3MYCyABKAkSJwoGcGFyYW1zGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBITCgttb250aGx5Q29zdBgNIAEoARIWCg5tb250aGx5TmV0Q29zdBgOIAEoARIgChhtb250aGx5SWZBbGxPbmRlbWFuZENvc3QYDyABKAESGwoTbW9udGhseU9uZGVtYW5kQ29zdBgQIAEoARIbChNtb250aGx5UmVzZXJ2ZWRDb3N0GBEgASgBEhcKD21vbnRobHlTcG90Q29zdBgSIAEoARIWCg5tb250aGx5U2F2aW5ncxgTIAEoARIVCg1tb250aGx5QnVkZ2V0GBQgASgBEhAKCGNvdmVyYWdlGBUgASgBEhsKE3JlY29tbWVuZGVkQ292ZXJhZ2UYFiABKAESFgoOdGFyZ2V0Q292ZXJhZ2UYFyABKAESHAoUbW9udGhseVJlc291cmNlQ291bnQYGCABKAUSMgoNcHVyY2hhc2VQbGFucxgZIAMoCzIbLmJsdWVhcGkuZ2MudjEuUHVyY2hhc2VQbGFuIngKDENvbnRyYWN0U3BlYxIWCg5jb21taXRtZW50VHlwZRgBIAEoCRIVCg1wYXltZW50T3B0aW9uGAIgASgJEgwKBHRlcm0YAyABKAkSKwoKcHJvcGVydGllcxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi3gIKC1BsYW5TdW1tYXJ5EgsKA2tleRgBIAEoCRIQCghwcm92aWRlchgCIAEoCRIWCg5udW1Db21taXRtZW50cxgDIAEoBRIVCg1taW5Db21taXRtZW50GAQgASgBEhkKEW1vbnRobHlDb21taXRtZW50GAUgASgBEhMKC3VwZnJvbnRDb3N0GAYgASgBEhIKCm1pblNhdmluZ3MYByABKAESEgoKbWF4U2F2aW5ncxgIIAEoARIWCg5tb250aGx5U2F2aW5ncxgJIAEoARIUCgxtaW5UZXJtSG91cnMYCiABKAUSFAoMbWF4VGVybUhvdXJzGAsgASgFEhMKC2dyaVByZW1pdW1zGAwgASgBEhoKEmJlZm9yZU9uZGVtYW5kQ29zdBgNIAEoARIZChFhZnRlck9uZGVtYW5kQ29zdBgOIAEoARIZChFpZkFsbE9uZGVtYW5kQ29zdBgPIAEoASLlAgoOU2VydmljZVN1bW1hcnkSCwoDa2V5GAEgASgJEgwKBG5hbWUYAiABKAkSEwoLc2VydmljZU5hbWUYAyABKAkSEAoIcHJvdmlkZXIYBCABKAkSFgoObnVtQ29tbWl0bWVudHMYBSABKAUSFwoPY3VycmVudENvdmVyYWdlGAYgASgBEhkKEXBvdGVudGlhbENvdmVyYWdlGAcgASgBEhUKDW1pbkNvbW1pdG1lbnQYCCABKAESGQoRbW9udGhseUNvbW1pdG1lbnQYCSABKAESEwoLdXBmcm9udENvc3QYCiABKAESEgoKbWluU2F2aW5ncxgLIAEoARISCgptYXhTYXZpbmdzGAwgASgBEhYKDm1vbnRobHlTYXZpbmdzGA0gASgBEhQKDG1pblRlcm1Ib3VycxgOIAEoBRIUCgxtYXhUZXJtSG91cnMYDyABKAUSEgoKZ3JpUHJlbWl1bRgQIAEoASLaAQoQQWdncmVnYXRlTWV0cmljcxIXCg9jdXJyZW50Q292ZXJhZ2UYASABKAESGQoRcG90ZW50aWFsQ292ZXJhZ2UYAiABKAESQQoJc3VtbWFyaWVzGAMgAygLMi4uYmx1ZWFwaS5nYy52MS5BZ2dyZWdhdGVNZXRyaWNzLlN1bW1hcmllc0VudHJ5Gk8KDlN1bW1hcmllc0VudHJ5EgsKA2tleRgBIAEoCRIsCgV2YWx1ZRgCIAEoCzIdLmJsdWVhcGkuZ2MudjEuU2VydmljZVN1bW1hcnk6AjgBItUKChNEZWZhdWx0UHVyY2hhc2VQbGFuEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDQoFb3JnSWQYBCABKAkSEQoJc2VnbWVudElkGAUgASgJEicKB3NlZ21lbnQYBiABKAsyFi5ibHVlYXBpLmdjLnYxLlNlZ21lbnQSDgoGc3RhdHVzGAcgASgJEhAKCHBsYW5UeXBlGAggASgJEhEKCWNyZWF0ZWRBdBgJIAEoCRIUCgxsYXN0TW9kaWZpZWQYCiABKAkSKQoJY3JlYXRlZEJ5GAsgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEi8KD2V4ZWN1dGlvblBvbGljeRgMIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZRIRCglpc0RlZmF1bHQYDSABKAgSFQoNaXNSZWNvbW1lbmRlZBgOIAEoCBIRCglpc1JlbmV3YWwYDyABKAgSFQoNaXNDYWxjdWxhdGluZxgQIAEoCBIQCghpc0xvY2tlZBgRIAEoCBIPCgdpc1NhdmVkGBIgASgIEjoKFWluY2x1ZGVkQ29udHJhY3RTcGVjcxgTIAMoCzIbLmJsdWVhcGkuZ2MudjEuQ29udHJhY3RTcGVjEh0KFWluY2x1ZGVkQ29udHJhY3RUZXJtcxgUIAMoCRIPCgdtYXhUZXJtGBUgASgJEh4KFnByZWZlcnJlZFBheW1lbnRPcHRpb24YFiABKAkSFgoObWF4VXBmcm9udENvc3QYFyABKAESIgoabWluaW11bVVwZnJvbnRJbnRlcmVzdFJhdGUYGCABKAESPgoecmVjb21tZW5kV2l0aGluQ292ZXJlZEFjY291bnRzGBkgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEhEKCXN0YXJ0RGF0ZRgaIAEoCRIPCgdlbmREYXRlGBsgASgJEhIKCmRhdGFTb3VyY2UYHCABKAkSEgoKYmVmb3JlQ29zdBgdIAEoARIRCglhZnRlckNvc3QYHiABKAESGgoSYmVmb3JlT25kZW1hbmRDb3N0GB8gASgBEhoKEmJlZm9yZVJlc2VydmVkQ29zdBggIAEoARIbChNjb3ZlcmVkT25kZW1hbmRDb3N0GCEgASgBEhUKDWFtb3J0aXplZENvc3QYIiABKAESFQoNcmVjdXJyaW5nQ29zdBgjIAEoARITCgt1cGZyb250Q29zdBgkIAEoARIRCgl0b3RhbENvc3QYJSABKAESHgoWdG90YWxNb250aGx5QmVmb3JlQ29zdBgmIAEoARIPCgdzYXZpbmdzGCcgASgBEhYKDm1vbnRobHlTYXZpbmdzGCggASgBEhQKDHRvdGFsU2F2aW5ncxgpIAEoARILCgNmZWUYKiABKAESGgoSY29tbWl0bWVudENvdmVyYWdlGCsgASgBEh0KFW1pbmltdW1Db21taXRtZW50Q29zdBgsIAEoARIWCg5icmVha2V2ZW5Ib3VycxgtIAEoARI5ChBhZ2dyZWdhdGVNZXRyaWNzGC4gASgLMh8uYmx1ZWFwaS5nYy52MS5BZ2dyZWdhdGVNZXRyaWNzEi0KCXN1bW1hcmllcxgvIAMoCzIaLmJsdWVhcGkuZ2MudjEuUGxhblN1bW1hcnkSFgoOcmVzZXJ2YXRpb25JZHMYMCADKAkSEwoLcmVzb3VyY2VJZHMYMSADKAkSFgoOZmxhZ2dlZEFjdGlvbnMYMiADKAkSEgoKbWV0YVBsYW5JZBgzIAEoCRISCgpjb3ZlcmFnZUlkGDQgASgJIlcKIkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVzcG9uc2USMQoFcGxhbnMYASADKAsyIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4ihAIKE1JlZ2lzdGVyT3JnUmVzcG9uc2USCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIuCgttZW1iZXJzaGlwcxgDIAMoCzIZLmJsdWVhcGkuZ2MudjEuTWVtYmVyc2hpcBIOCgZkb21haW4YBCABKAkSLgoOcHJpbWFyeUFkZHJlc3MYBSABKAsyFi5ibHVlYXBpLmdjLnYxLkFkZHJlc3MSHwoXYXdzTWFya2V0cGxhY2VPZmZlckxpbmsYBiABKAkSIQoZYXp1cmVNYXJrZXRwbGFjZU9mZmVyTGluaxgHIAEoCRIfChdnY3BNYXJrZXRwbGFjZU9mZmVyTGluaxgIIAEoCSIyChpTdGFydEF3c09uYm9hcmRpbmdSZXNwb25zZRIUCgxvbmJvYXJkaW5nSWQYASABKAkiUQokR2V0QXdzQ2xvdWRGb3JtYXRpb25UZW1wbGF0ZVJlc3BvbnNlEikKCHRlbXBsYXRlGAEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCIrChxHZXRBd3NMYXVuY2hTdGFja1VybFJlc3BvbnNlEgsKA3VybBgBIAEoCSKPBAobVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlElQKBmNoZWNrcxgBIAMoCzJELmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2samQMKGUF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2sSDwoHZmVhdHVyZRgBIAEoCRJvCgZzdGF0dXMYAiABKA4yXy5ibHVlYXBpLmdjLnYxLlZlcmlmeUF3c09uYm9hcmRpbmdSZXNwb25zZS5Bd3NPbmJvYXJkaW5nRmVhdHVyZUNoZWNrLkF3c09uYm9hcmRpbmdGZWF0dXJlU3RhdHVzIvkBChpBd3NPbmJvYXJkaW5nRmVhdHVyZVN0YXR1cxItCilBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19VTlNQRUNJRklFRBAAEisKJ0FXU19PTkJPQVJESU5HX0ZFQVRVUkVfU1RBVFVTX0FWQUlMQUJMRRABEikKJUFXU19PTkJPQVJESU5HX0ZFQVRVUkVfU1RBVFVTX1dBUk5JTkcQAhIpCiVBV1NfT05CT0FSRElOR19GRUFUVVJFX1NUQVRVU19NSVNTSU5HEAMSKQolQVdTX09OQk9BUkRJTkdfRkVBVFVSRV9TVEFUVVNfVU5LTk9XThAEIpwFChtHZXRPbmJvYXJkaW5nU3RhdHVzUmVzcG9uc2USDQoFZm91bmQYASABKAgSDQoFaXNNc3AYAiABKAgSKQoIcHJvdmlkZXIYAyABKA4yFy5ibHVlYXBpLmdjLnYxLlByb3ZpZGVyEg8KB2djT3JnSWQYBCABKAkSFAoMb25ib2FyZGluZ0lkGAUgASgJElUKEG9uYm9hcmRpbmdTdGF0dXMYBiABKA4yOy5ibHVlYXBpLmdjLnYxLkdldE9uYm9hcmRpbmdTdGF0dXNSZXNwb25zZS5PbmJvYXJkaW5nU3RhdHVzEhEKCWFjY291bnRJZBgHIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgIIAEoCRIRCgljb21wYW55SWQYCSABKAkSYAoSdmVyaWZpY2F0aW9uQ2hlY2tzGAogAygLMkQuYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UuQXdzT25ib2FyZGluZ0ZlYXR1cmVDaGVjayKVAgoQT25ib2FyZGluZ1N0YXR1cxIhCh1PTkJPQVJESU5HX1NUQVRVU19VTlNQRUNJRklFRBAAEiQKIE9OQk9BUkRJTkdfU1RBVFVTX05PVF9SRUdJU1RFUkVEEAESIAocT05CT0FSRElOR19TVEFUVVNfUkVHSVNURVJFRBACEigKJE9OQk9BUkRJTkdfU1RBVFVTX09OQk9BUkRJTkdfU1RBUlRFRBADEh4KGk9OQk9BUkRJTkdfU1RBVFVTX1ZFUklGSUVEEAQSJwojT05CT0FSRElOR19TVEFUVVNfVkVSSUZZX0lOQ09NUExFVEUQBRIjCh9PTkJPQVJESU5HX1NUQVRVU19WRVJJRllfRkFJTEVEEAYikAQKGUxpc3RQYXllckFjY291bnRzUmVzcG9uc2USTAoNcGF5ZXJBY2NvdW50cxgBIAMoCzI1LmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZS5QYXllckFjY291bnQaowIKDFBheWVyQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAyABKAkSEQoJc2VnbWVudElkGAQgASgJEksKBnN0YXR1cxgFIAEoDjI7LmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZS5QYXllckFjY291bnRTdGF0dXMSEQoJY29tcGFueUlkGAYgASgJEmAKEnZlcmlmaWNhdGlvbkNoZWNrcxgHIAMoCzJELmJsdWVhcGkuZ2MudjEuVmVyaWZ5QXdzT25ib2FyZGluZ1Jlc3BvbnNlLkF3c09uYm9hcmRpbmdGZWF0dXJlQ2hlY2sifwoSUGF5ZXJBY2NvdW50U3RhdHVzEiQKIFBBWUVSX0FDQ09VTlRfU1RBVFVTX1VOU1BFQ0lGSUVEEAASIAocUEFZRVJfQUNDT1VOVF9TVEFUVVNfRU5BQkxFRBABEiEKHVBBWUVSX0FDQ09VTlRfU1RBVFVTX0RJU0FCTEVEEAIibQoeU2V0UGF5ZXJBY2NvdW50RW5hYmxlZFJlc3BvbnNlEksKDHBheWVyQWNjb3VudBgBIAEoCzI1LmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZS5QYXllckFjY291bnQibAodR2V0UGF5ZXJBY2NvdW50U3RhdHVzUmVzcG9uc2USSwoMcGF5ZXJBY2NvdW50GAEgASgLMjUuYmx1ZWFwaS5nYy52MS5MaXN0UGF5ZXJBY2NvdW50c1Jlc3BvbnNlLlBheWVyQWNjb3VudCJTCh5MaXN0RHJhZnRQdXJjaGFzZVBsYW5zUmVzcG9uc2USMQoFcGxhbnMYASADKAsyIi5ibHVlYXBpLmdjLnYxLkRlZmF1bHRQdXJjaGFzZVBsYW4iQgofRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW5SZXNwb25zZRIOCgZwbGFuSWQYASABKAkSDwoHc3VjY2VzcxgCIAEoCCpeCghQcm92aWRlchIYChRQUk9WSURFUl9VTlNQRUNJRklFRBAAEgcKA0FXUxABEgkKBUFaVVJFEAISBwoDR0NQEAMSDgoKS1VCRVJORVRFUxAEEgsKB1VOS05PV04QBSqYAQoQQ29tbWl0bWVudFN0YXR1cxIhCh1DT01NSVRNRU5UX1NUQVRVU19VTlNQRUNJRklFRBAAEgcKA05FVxABEgwKCFJFVklFV0VEEAISDQoJU0NIRURVTEVEEAMSDQoJQ09NUExFVEVEEAQSCQoFRFJBRlQQBRIQCgxORUVEU19SRVZJRVcQBhIPCgtJTl9QUk9HUkVTUxAHKooBChlDb21taXRtZW50SW52ZW50b3J5U3RhdHVzEisKJ0NPTU1JVE1FTlRfSU5WRU5UT1JZX1NUQVRVU19VTlNQRUNJRklFRBAAEgoKBkFDVElWRRABEgsKB1JFVElSRUQQAhITCg9QQVlNRU5UX1BFTkRJTkcQAxISCg5QQVlNRU5UX0ZBSUxFRBAEKkMKBVNjb3BlEhUKEVNDT1BFX1VOU1BFQ0lGSUVEEAASCgoGU0hBUkVEEAESDAoIUkVHSU9OQUwQAhIJCgVaT05BTBADKkEKCVVzYWdlVHlwZRIaChZVU0FHRV9UWVBFX1VOU1BFQ0lGSUVEEAASCwoHUlVOTklORxABEgsKB1NUT1BQRUQQAjKHIQoVR3VhcmFudGVlZENvbW1pdG1lbnRzEmMKCExpc3RPcmdzEh4uYmx1ZWFwaS5nYy52MS5MaXN0T3Jnc1JlcXVlc3QaEi5ibHVlYXBpLmdjLnYxLk9yZyIhgtPkkwIbOgEqIhYvdjEvb3JnYW5pemF0aW9uczpyZWFkMAESmAEKGUdldENvbW1pdG1lbnRzUGxhbkRldGFpbHMSLi5ibHVlYXBpLmdjLnYxLkdldENvbW1pdG1lbnRQbGFuRGV0YWlsc1JlcXVlc3QaJC5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuRGV0YWlscyIlgtPkkwIfEh0vdjEvY29tbWl0bWVudHMvcGxhbi97cGxhbklkfRKXAQoUQ29tbWl0bWVudHNQbGFuQXBwbHkSKS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRQbGFuQXBwbHlSZXF1ZXN0GiQuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhbkRldGFpbHMiLoLT5JMCKDoBKiIjL3YxL2NvbW1pdG1lbnRzL3BsYW4ve3BsYW5JZH0vYXBwbHkSpwEKGkxpc3REZWZhdWx0Q29tbWl0bWVudHNQbGFuEjAuYmx1ZWFwaS5nYy52MS5MaXN0RGVmYXVsdENvbW1pdG1lbnRQbGFuc1JlcXVlc3QaMS5ibHVlYXBpLmdjLnYxLkxpc3REZWZhdWx0Q29tbWl0bWVudFBsYW5zUmVzcG9uc2UiJILT5JMCHhIcL3YxL2NvbW1pdG1lbnRzL3BsYW4vZGVmYXVsdBKjAQodR2V0UmVjb21tZW5kZWRDb21taXRtZW50c1BsYW4SMi5ibHVlYXBpLmdjLnYxLkdldFJlY29tbWVuZGVkQ29tbWl0bWVudFBsYW5SZXF1ZXN0GiQuYmx1ZWFwaS5nYy52MS5Db21taXRtZW50UGxhbkRldGFpbHMiKILT5JMCIhIgL3YxL2NvbW1pdG1lbnRzL3BsYW4vcmVjb21tZW5kZWQStgEKHExpc3RDb21taXRtZW50c1BsYW5MaW5lSXRlbXMSMS5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50UGxhbkxpbmVJdGVtc1JlcXVlc3QaMi5ibHVlYXBpLmdjLnYxLkxpc3RDb21taXRtZW50UGxhbkxpbmVJdGVtc1Jlc3BvbnNlIi+C0+STAikSJy92MS9jb21taXRtZW50cy9wbGFuL3twbGFuSWR9L2xpbmVpdGVtcxLOAQoiTGlzdENvbW1pdG1lbnRzUGxhblJlc291cmNlTWF0Y2hlcxI3LmJsdWVhcGkuZ2MudjEuTGlzdENvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaGVzUmVxdWVzdBo4LmJsdWVhcGkuZ2MudjEuTGlzdENvbW1pdG1lbnRQbGFuUmVzb3VyY2VNYXRjaGVzUmVzcG9uc2UiNYLT5JMCLxItL3YxL2NvbW1pdG1lbnRzL3BsYW4ve3BsYW5JZH0vcmVzb3VyY2VtYXRjaGVzEnkKD0xpc3RDb21taXRtZW50cxIlLmJsdWVhcGkuZ2MudjEuTGlzdENvbW1pdG1lbnRzUmVxdWVzdBomLmJsdWVhcGkuZ2MudjEuTGlzdENvbW1pdG1lbnRzUmVzcG9uc2UiF4LT5JMCERIPL3YxL2NvbW1pdG1lbnRzEpcBChNHZXRDb21taXRtZW50c0NoYXJ0EikuYmx1ZWFwaS5nYy52MS5HZXRDb21taXRtZW50c0NoYXJ0UmVxdWVzdBonLmJsdWVhcGkuZ2MudjEuQ29tbWl0bWVudHNDaGFydFJlc3BvbnNlIiyC0+STAiYSJC92MS9jb21taXRtZW50cy97Y29tbWl0bWVudElkfS9jaGFydBKvAQoZR2V0Q29tbWl0bWVudHNVdGlsaXphdGlvbhIvLmJsdWVhcGkuZ2MudjEuR2V0Q29tbWl0bWVudHNVdGlsaXphdGlvblJlcXVlc3QaLS5ibHVlYXBpLmdjLnYxLkNvbW1pdG1lbnRzVXRpbGl6YXRpb25SZXNwb25zZSIygtPkkwIsEiovdjEvY29tbWl0bWVudHMve2NvbW1pdG1lbnRJZH0vdXRpbGl6YXRpb24SYwoKR2V0TWV0cmljcxIgLmJsdWVhcGkuZ2MudjEuR2V0TWV0cmljc1JlcXVlc3QaHi5ibHVlYXBpLmdjLnYxLk1ldHJpY3NSZXNwb25zZSITgtPkkwINEgsvdjEvbWV0cmljcxJxCg1MaXN0UmVzb3VyY2VzEiMuYmx1ZWFwaS5nYy52MS5MaXN0UmVzb3VyY2VzUmVxdWVzdBokLmJsdWVhcGkuZ2MudjEuTGlzdFJlc291cmNlc1Jlc3BvbnNlIhWC0+STAg8SDS92MS9yZXNvdXJjZXMSoQEKFUdldFJlc291cmNlRGFpbHlVc2FnZRIrLmJsdWVhcGkuZ2MudjEuR2V0UmVzb3VyY2VEYWlseVVzYWdlUmVxdWVzdBosLmJsdWVhcGkuZ2MudjEuR2V0UmVzb3VyY2VEYWlseVVzYWdlUmVzcG9uc2UiLYLT5JMCJxIlL3YxL3Jlc291cmNlcy97cmVzb3VyY2VJZH0vZGFpbHl1c2FnZRKnAQoaTGlzdFB1cmNoYXNlUGxhbnNCeVNlZ21lbnQSMC5ibHVlYXBpLmdjLnYxLkxpc3RQdXJjaGFzZVBsYW5zQnlTZWdtZW50UmVxdWVzdBoxLmJsdWVhcGkuZ2MudjEuTGlzdFB1cmNoYXNlUGxhbnNCeVNlZ21lbnRSZXNwb25zZSIkgtPkkwIeEhwvdjEvY29tbWl0bWVudHMvcHVyY2hhc2VwbGFuEqoBChpTYXZlQ29tbWl0bWVudHNQbGFuQXNEcmFmdBIwLmJsdWVhcGkuZ2MudjEuU2F2ZUNvbW1pdG1lbnRzUGxhbkFzRHJhZnRSZXF1ZXN0GiIuYmx1ZWFwaS5nYy52MS5EZWZhdWx0UHVyY2hhc2VQbGFuIjaC0+STAjA6ASoiKy92MS9jb21taXRtZW50cy9wdXJjaGFzZXBsYW4ve3BsYW5JZH0vZHJhZnQSoQEKFkxpc3REcmFmdFB1cmNoYXNlUGxhbnMSLC5ibHVlYXBpLmdjLnYxLkxpc3REcmFmdFB1cmNoYXNlUGxhbnNSZXF1ZXN0Gi0uYmx1ZWFwaS5nYy52MS5MaXN0RHJhZnRQdXJjaGFzZVBsYW5zUmVzcG9uc2UiKoLT5JMCJBIiL3YxL2NvbW1pdG1lbnRzL3B1cmNoYXNlcGxhbi9kcmFmdBKtAQoXRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW4SLS5ibHVlYXBpLmdjLnYxLkRlbGV0ZURyYWZ0UHVyY2hhc2VQbGFuUmVxdWVzdBouLmJsdWVhcGkuZ2MudjEuRGVsZXRlRHJhZnRQdXJjaGFzZVBsYW5SZXNwb25zZSIzgtPkkwItKisvdjEvY29tbWl0bWVudHMvcHVyY2hhc2VwbGFuL3twbGFuSWR9L2RyYWZ0Em8KC1JlZ2lzdGVyT3JnEiEuYmx1ZWFwaS5nYy52MS5SZWdpc3Rlck9yZ1JlcXVlc3QaIi5ibHVlYXBpLmdjLnYxLlJlZ2lzdGVyT3JnUmVzcG9uc2UiGYLT5JMCEzoBKiIOL3YxL29uYm9hcmRpbmcSjgEKElN0YXJ0QXdzT25ib2FyZGluZxIoLmJsdWVhcGkuZ2MudjEuU3RhcnRBd3NPbmJvYXJkaW5nUmVxdWVzdBopLmJsdWVhcGkuZ2MudjEuU3RhcnRBd3NPbmJvYXJkaW5nUmVzcG9uc2UiI4LT5JMCHToBKiIYL3YxL29uYm9hcmRpbmcvYXdzL3N0YXJ0ErsBChxHZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlEjIuYmx1ZWFwaS5nYy52MS5HZXRBd3NDbG91ZEZvcm1hdGlvblRlbXBsYXRlUmVxdWVzdBozLmJsdWVhcGkuZ2MudjEuR2V0QXdzQ2xvdWRGb3JtYXRpb25UZW1wbGF0ZVJlc3BvbnNlIjKC0+STAiwSKi92MS9vbmJvYXJkaW5nL2F3cy9jbG91ZGZvcm1hdGlvbi90ZW1wbGF0ZRKpAQoUR2V0QXdzTGF1bmNoU3RhY2tVcmwSKi5ibHVlYXBpLmdjLnYxLkdldEF3c0xhdW5jaFN0YWNrVXJsUmVxdWVzdBorLmJsdWVhcGkuZ2MudjEuR2V0QXdzTGF1bmNoU3RhY2tVcmxSZXNwb25zZSI4gtPkkwIyEjAvdjEvb25ib2FyZGluZy9hd3MvY2xvdWRmb3JtYXRpb24vbGF1bmNoc3RhY2t1cmwSkgEKE1ZlcmlmeUF3c09uYm9hcmRpbmcSKS5ibHVlYXBpLmdjLnYxLlZlcmlmeUF3c09uYm9hcmRpbmdSZXF1ZXN0GiouYmx1ZWFwaS5nYy52MS5WZXJpZnlBd3NPbmJvYXJkaW5nUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL29uYm9hcmRpbmcvYXdzL3ZlcmlmeRKTAQoTR2V0T25ib2FyZGluZ1N0YXR1cxIpLmJsdWVhcGkuZ2MudjEuR2V0T25ib2FyZGluZ1N0YXR1c1JlcXVlc3QaKi5ibHVlYXBpLmdjLnYxLkdldE9uYm9hcmRpbmdTdGF0dXNSZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvb25ib2FyZGluZy9zdGF0dXM6cmVhZBKIAQoRTGlzdFBheWVyQWNjb3VudHMSJy5ibHVlYXBpLmdjLnYxLkxpc3RQYXllckFjY291bnRzUmVxdWVzdBooLmJsdWVhcGkuZ2MudjEuTGlzdFBheWVyQWNjb3VudHNSZXNwb25zZSIggtPkkwIaEhgvdjEvbWFuYWdlbWVudHMvYWNjb3VudHMSpgEKFlNldFBheWVyQWNjb3VudEVuYWJsZWQSLC5ibHVlYXBpLmdjLnYxLlNldFBheWVyQWNjb3VudEVuYWJsZWRSZXF1ZXN0Gi0uYmx1ZWFwaS5nYy52MS5TZXRQYXllckFjY291bnRFbmFibGVkUmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL21hbmFnZW1lbnRzL2FjY291bnRzL3tjb21wYW55SWR9EpsBChVHZXRQYXllckFjY291bnRTdGF0dXMSKy5ibHVlYXBpLmdjLnYxLkdldFBheWVyQWNjb3VudFN0YXR1c1JlcXVlc3QaLC5ibHVlYXBpLmdjLnYxLkdldFBheWVyQWNjb3VudFN0YXR1c1Jlc3BvbnNlIieC0+STAiESHy92MS9tYW5hZ2VtZW50cy9hY2NvdW50cy9zdGF0dXMaogGSQZ4BElAoQWxwaGEpIEd1YXJhbnRlZWRDb21taXRtZW50cyBBUEkuIEJhc2UgVVJMOiBodHRwczovL2FwaS5hbHBoYXVzLmNsb3VkL20vYmx1ZS9nYxpKChJTZXJ2aWNlIGRlZmluaXRpb24SNGh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9nYy9CVQoUY2xvdWQuYWxwaGF1cy5hcGkuZ2NCGkd1YXJhbnRlZWRDb21taXRtZW50c1Byb3RvWiFnaXRodWIuY29tL2FscGhhdXNsYWJzL2JsdWVhcGkvZ2NiBnByb3RvMw", [file_google_api_annotations, file_google_protobuf_struct, file_protoc_gen_openapiv2_options_annotations]);
18
18
 
19
19
  /**
20
20
  * @generated from message blueapi.gc.v1.ListOrgsRequest
@@ -34,12 +34,7 @@ export const ListOrgsRequestSchema: GenMessage<ListOrgsRequest> = /*@__PURE__*/
34
34
  */
35
35
  export type GetCommitmentPlanDetailsRequest = Message<"blueapi.gc.v1.GetCommitmentPlanDetailsRequest"> & {
36
36
  /**
37
- * @generated from field: string orgId = 1;
38
- */
39
- orgId: string;
40
-
41
- /**
42
- * @generated from field: string planId = 2;
37
+ * @generated from field: string planId = 1;
43
38
  */
44
39
  planId: string;
45
40
  };
@@ -56,12 +51,7 @@ export const GetCommitmentPlanDetailsRequestSchema: GenMessage<GetCommitmentPlan
56
51
  */
57
52
  export type CommitmentPlanApplyRequest = Message<"blueapi.gc.v1.CommitmentPlanApplyRequest"> & {
58
53
  /**
59
- * @generated from field: string orgId = 1;
60
- */
61
- orgId: string;
62
-
63
- /**
64
- * @generated from field: string planId = 2;
54
+ * @generated from field: string planId = 1;
65
55
  */
66
56
  planId: string;
67
57
  };
@@ -78,12 +68,7 @@ export const CommitmentPlanApplyRequestSchema: GenMessage<CommitmentPlanApplyReq
78
68
  */
79
69
  export type ListDefaultCommitmentPlansRequest = Message<"blueapi.gc.v1.ListDefaultCommitmentPlansRequest"> & {
80
70
  /**
81
- * @generated from field: string orgId = 1;
82
- */
83
- orgId: string;
84
-
85
- /**
86
- * @generated from field: blueapi.gc.v1.Provider provider = 2;
71
+ * @generated from field: blueapi.gc.v1.Provider provider = 1;
87
72
  */
88
73
  provider: Provider;
89
74
  };
@@ -100,12 +85,7 @@ export const ListDefaultCommitmentPlansRequestSchema: GenMessage<ListDefaultComm
100
85
  */
101
86
  export type GetRecommendedCommitmentPlanRequest = Message<"blueapi.gc.v1.GetRecommendedCommitmentPlanRequest"> & {
102
87
  /**
103
- * @generated from field: string orgId = 1;
104
- */
105
- orgId: string;
106
-
107
- /**
108
- * @generated from field: blueapi.gc.v1.Provider provider = 2;
88
+ * @generated from field: blueapi.gc.v1.Provider provider = 1;
109
89
  */
110
90
  provider: Provider;
111
91
  };
@@ -122,42 +102,37 @@ export const GetRecommendedCommitmentPlanRequestSchema: GenMessage<GetRecommende
122
102
  */
123
103
  export type ListCommitmentPlanLineItemsRequest = Message<"blueapi.gc.v1.ListCommitmentPlanLineItemsRequest"> & {
124
104
  /**
125
- * @generated from field: string orgId = 1;
126
- */
127
- orgId: string;
128
-
129
- /**
130
- * @generated from field: string planId = 2;
105
+ * @generated from field: string planId = 1;
131
106
  */
132
107
  planId: string;
133
108
 
134
109
  /**
135
- * @generated from field: string orderBy = 3;
110
+ * @generated from field: string orderBy = 2;
136
111
  */
137
112
  orderBy: string;
138
113
 
139
114
  /**
140
- * @generated from field: bool desc = 4;
115
+ * @generated from field: bool desc = 3;
141
116
  */
142
117
  desc: boolean;
143
118
 
144
119
  /**
145
- * @generated from field: string segmentId = 5;
120
+ * @generated from field: string segmentId = 4;
146
121
  */
147
122
  segmentId: string;
148
123
 
149
124
  /**
150
- * @generated from field: repeated string resourceMatchIds = 6;
125
+ * @generated from field: repeated string resourceMatchIds = 5;
151
126
  */
152
127
  resourceMatchIds: string[];
153
128
 
154
129
  /**
155
- * @generated from field: int32 page = 7;
130
+ * @generated from field: int32 page = 6;
156
131
  */
157
132
  page: number;
158
133
 
159
134
  /**
160
- * @generated from field: int32 pageSize = 8;
135
+ * @generated from field: int32 pageSize = 7;
161
136
  */
162
137
  pageSize: number;
163
138
  };
@@ -174,47 +149,42 @@ export const ListCommitmentPlanLineItemsRequestSchema: GenMessage<ListCommitment
174
149
  */
175
150
  export type ListCommitmentPlanResourceMatchesRequest = Message<"blueapi.gc.v1.ListCommitmentPlanResourceMatchesRequest"> & {
176
151
  /**
177
- * @generated from field: string orgId = 1;
178
- */
179
- orgId: string;
180
-
181
- /**
182
- * @generated from field: string planId = 2;
152
+ * @generated from field: string planId = 1;
183
153
  */
184
154
  planId: string;
185
155
 
186
156
  /**
187
- * @generated from field: string orderBy = 3;
157
+ * @generated from field: string orderBy = 2;
188
158
  */
189
159
  orderBy: string;
190
160
 
191
161
  /**
192
- * @generated from field: bool desc = 4;
162
+ * @generated from field: bool desc = 3;
193
163
  */
194
164
  desc: boolean;
195
165
 
196
166
  /**
197
- * @generated from field: string startDate = 5;
167
+ * @generated from field: string startDate = 4;
198
168
  */
199
169
  startDate: string;
200
170
 
201
171
  /**
202
- * @generated from field: string endDate = 6;
172
+ * @generated from field: string endDate = 5;
203
173
  */
204
174
  endDate: string;
205
175
 
206
176
  /**
207
- * @generated from field: repeated string lineItemIds = 7;
177
+ * @generated from field: repeated string lineItemIds = 6;
208
178
  */
209
179
  lineItemIds: string[];
210
180
 
211
181
  /**
212
- * @generated from field: int32 page = 8;
182
+ * @generated from field: int32 page = 7;
213
183
  */
214
184
  page: number;
215
185
 
216
186
  /**
217
- * @generated from field: int32 pageSize = 9;
187
+ * @generated from field: int32 pageSize = 8;
218
188
  */
219
189
  pageSize: number;
220
190
  };
@@ -244,27 +214,26 @@ export const ListCommitmentsRequestSchema: GenMessage<ListCommitmentsRequest> =
244
214
  */
245
215
  export type GetCommitmentsChartRequest = Message<"blueapi.gc.v1.GetCommitmentsChartRequest"> & {
246
216
  /**
247
- * @generated from field: string orgId = 1;
248
- */
249
- orgId: string;
250
-
251
- /**
252
- * @generated from field: google.protobuf.Struct filter = 2;
217
+ * Required. The commitment id.
218
+ *
219
+ * @generated from field: string commitmentId = 1;
253
220
  */
254
- filter?: JsonObject;
221
+ commitmentId: string;
255
222
 
256
223
  /**
257
- * @generated from field: blueapi.gc.v1.Provider provider = 3;
224
+ * Required. The group filter. Available filters include `region`, `service`, `instanceType`, `instanceTypeFamily`, `usageType` and `operation`.
225
+ *
226
+ * @generated from field: string groupBy = 2;
258
227
  */
259
- provider: Provider;
228
+ groupBy: string;
260
229
 
261
230
  /**
262
- * @generated from field: string startDate = 4;
231
+ * @generated from field: string startDate = 3;
263
232
  */
264
233
  startDate: string;
265
234
 
266
235
  /**
267
- * @generated from field: string endDate = 5;
236
+ * @generated from field: string endDate = 4;
268
237
  */
269
238
  endDate: string;
270
239
  };
@@ -277,16 +246,30 @@ export const GetCommitmentsChartRequestSchema: GenMessage<GetCommitmentsChartReq
277
246
  messageDesc(file_gc_v1_gc, 8);
278
247
 
279
248
  /**
280
- * @generated from message blueapi.gc.v1.GetMetricsRequest
249
+ * @generated from message blueapi.gc.v1.GetCommitmentsUtilizationRequest
281
250
  */
282
- export type GetMetricsRequest = Message<"blueapi.gc.v1.GetMetricsRequest"> & {
251
+ export type GetCommitmentsUtilizationRequest = Message<"blueapi.gc.v1.GetCommitmentsUtilizationRequest"> & {
283
252
  /**
284
- * @generated from field: string orgId = 1;
253
+ * Required. The commitment id.
254
+ *
255
+ * @generated from field: string commitmentId = 1;
285
256
  */
286
- orgId: string;
257
+ commitmentId: string;
258
+ };
259
+
260
+ /**
261
+ * Describes the message blueapi.gc.v1.GetCommitmentsUtilizationRequest.
262
+ * Use `create(GetCommitmentsUtilizationRequestSchema)` to create a new message.
263
+ */
264
+ export const GetCommitmentsUtilizationRequestSchema: GenMessage<GetCommitmentsUtilizationRequest> = /*@__PURE__*/
265
+ messageDesc(file_gc_v1_gc, 9);
287
266
 
267
+ /**
268
+ * @generated from message blueapi.gc.v1.GetMetricsRequest
269
+ */
270
+ export type GetMetricsRequest = Message<"blueapi.gc.v1.GetMetricsRequest"> & {
288
271
  /**
289
- * @generated from field: blueapi.gc.v1.Provider provider = 2;
272
+ * @generated from field: blueapi.gc.v1.Provider provider = 1;
290
273
  */
291
274
  provider: Provider;
292
275
  };
@@ -296,49 +279,44 @@ export type GetMetricsRequest = Message<"blueapi.gc.v1.GetMetricsRequest"> & {
296
279
  * Use `create(GetMetricsRequestSchema)` to create a new message.
297
280
  */
298
281
  export const GetMetricsRequestSchema: GenMessage<GetMetricsRequest> = /*@__PURE__*/
299
- messageDesc(file_gc_v1_gc, 9);
282
+ messageDesc(file_gc_v1_gc, 10);
300
283
 
301
284
  /**
302
285
  * @generated from message blueapi.gc.v1.ListResourcesRequest
303
286
  */
304
287
  export type ListResourcesRequest = Message<"blueapi.gc.v1.ListResourcesRequest"> & {
305
288
  /**
306
- * @generated from field: string orgId = 1;
307
- */
308
- orgId: string;
309
-
310
- /**
311
- * @generated from field: blueapi.gc.v1.Provider provider = 2;
289
+ * @generated from field: blueapi.gc.v1.Provider provider = 1;
312
290
  */
313
291
  provider: Provider;
314
292
 
315
293
  /**
316
- * @generated from field: string segmentId = 3;
294
+ * @generated from field: string segmentId = 2;
317
295
  */
318
296
  segmentId: string;
319
297
 
320
298
  /**
321
- * @generated from field: string search = 4;
299
+ * @generated from field: string search = 3;
322
300
  */
323
301
  search: string;
324
302
 
325
303
  /**
326
- * @generated from field: bool desc = 5;
304
+ * @generated from field: bool desc = 4;
327
305
  */
328
306
  desc: boolean;
329
307
 
330
308
  /**
331
- * @generated from field: string orderBy = 6;
309
+ * @generated from field: string orderBy = 5;
332
310
  */
333
311
  orderBy: string;
334
312
 
335
313
  /**
336
- * @generated from field: int32 page = 7;
314
+ * @generated from field: int32 page = 6;
337
315
  */
338
316
  page: number;
339
317
 
340
318
  /**
341
- * @generated from field: int32 pageSize = 8;
319
+ * @generated from field: int32 pageSize = 7;
342
320
  */
343
321
  pageSize: number;
344
322
  };
@@ -348,44 +326,39 @@ export type ListResourcesRequest = Message<"blueapi.gc.v1.ListResourcesRequest">
348
326
  * Use `create(ListResourcesRequestSchema)` to create a new message.
349
327
  */
350
328
  export const ListResourcesRequestSchema: GenMessage<ListResourcesRequest> = /*@__PURE__*/
351
- messageDesc(file_gc_v1_gc, 10);
329
+ messageDesc(file_gc_v1_gc, 11);
352
330
 
353
331
  /**
354
332
  * @generated from message blueapi.gc.v1.GetResourceDailyUsageRequest
355
333
  */
356
334
  export type GetResourceDailyUsageRequest = Message<"blueapi.gc.v1.GetResourceDailyUsageRequest"> & {
357
335
  /**
358
- * @generated from field: string orgId = 1;
359
- */
360
- orgId: string;
361
-
362
- /**
363
- * @generated from field: string resourceId = 2;
336
+ * @generated from field: string resourceId = 1;
364
337
  */
365
338
  resourceId: string;
366
339
 
367
340
  /**
368
- * @generated from field: string startDate = 3;
341
+ * @generated from field: string startDate = 2;
369
342
  */
370
343
  startDate: string;
371
344
 
372
345
  /**
373
- * @generated from field: string endDate = 4;
346
+ * @generated from field: string endDate = 3;
374
347
  */
375
348
  endDate: string;
376
349
 
377
350
  /**
378
- * @generated from field: string catalogSkuId = 5;
351
+ * @generated from field: string catalogSkuId = 4;
379
352
  */
380
353
  catalogSkuId: string;
381
354
 
382
355
  /**
383
- * @generated from field: int32 page = 6;
356
+ * @generated from field: int32 page = 5;
384
357
  */
385
358
  page: number;
386
359
 
387
360
  /**
388
- * @generated from field: int32 pageSize = 7;
361
+ * @generated from field: int32 pageSize = 6;
389
362
  */
390
363
  pageSize: number;
391
364
  };
@@ -395,19 +368,14 @@ export type GetResourceDailyUsageRequest = Message<"blueapi.gc.v1.GetResourceDai
395
368
  * Use `create(GetResourceDailyUsageRequestSchema)` to create a new message.
396
369
  */
397
370
  export const GetResourceDailyUsageRequestSchema: GenMessage<GetResourceDailyUsageRequest> = /*@__PURE__*/
398
- messageDesc(file_gc_v1_gc, 11);
371
+ messageDesc(file_gc_v1_gc, 12);
399
372
 
400
373
  /**
401
374
  * @generated from message blueapi.gc.v1.ListSegmentsRequest
402
375
  */
403
376
  export type ListSegmentsRequest = Message<"blueapi.gc.v1.ListSegmentsRequest"> & {
404
377
  /**
405
- * @generated from field: string orgId = 1;
406
- */
407
- orgId: string;
408
-
409
- /**
410
- * @generated from field: blueapi.gc.v1.Provider provider = 2;
378
+ * @generated from field: blueapi.gc.v1.Provider provider = 1;
411
379
  */
412
380
  provider: Provider;
413
381
  };
@@ -417,19 +385,14 @@ export type ListSegmentsRequest = Message<"blueapi.gc.v1.ListSegmentsRequest"> &
417
385
  * Use `create(ListSegmentsRequestSchema)` to create a new message.
418
386
  */
419
387
  export const ListSegmentsRequestSchema: GenMessage<ListSegmentsRequest> = /*@__PURE__*/
420
- messageDesc(file_gc_v1_gc, 12);
388
+ messageDesc(file_gc_v1_gc, 13);
421
389
 
422
390
  /**
423
391
  * @generated from message blueapi.gc.v1.GetSegmentDetailsRequest
424
392
  */
425
393
  export type GetSegmentDetailsRequest = Message<"blueapi.gc.v1.GetSegmentDetailsRequest"> & {
426
394
  /**
427
- * @generated from field: string orgId = 1;
428
- */
429
- orgId: string;
430
-
431
- /**
432
- * @generated from field: string segmentId = 2;
395
+ * @generated from field: string segmentId = 1;
433
396
  */
434
397
  segmentId: string;
435
398
  };
@@ -439,29 +402,20 @@ export type GetSegmentDetailsRequest = Message<"blueapi.gc.v1.GetSegmentDetailsR
439
402
  * Use `create(GetSegmentDetailsRequestSchema)` to create a new message.
440
403
  */
441
404
  export const GetSegmentDetailsRequestSchema: GenMessage<GetSegmentDetailsRequest> = /*@__PURE__*/
442
- messageDesc(file_gc_v1_gc, 13);
405
+ messageDesc(file_gc_v1_gc, 14);
443
406
 
444
407
  /**
445
- * @generated from message blueapi.gc.v1.ListDefaultPurchasePlansRequest
408
+ * @generated from message blueapi.gc.v1.ListPurchasePlansBySegmentRequest
446
409
  */
447
- export type ListDefaultPurchasePlansRequest = Message<"blueapi.gc.v1.ListDefaultPurchasePlansRequest"> & {
448
- /**
449
- * @generated from field: string orgId = 1;
450
- */
451
- orgId: string;
452
-
453
- /**
454
- * @generated from field: string segmentId = 2;
455
- */
456
- segmentId: string;
410
+ export type ListPurchasePlansBySegmentRequest = Message<"blueapi.gc.v1.ListPurchasePlansBySegmentRequest"> & {
457
411
  };
458
412
 
459
413
  /**
460
- * Describes the message blueapi.gc.v1.ListDefaultPurchasePlansRequest.
461
- * Use `create(ListDefaultPurchasePlansRequestSchema)` to create a new message.
414
+ * Describes the message blueapi.gc.v1.ListPurchasePlansBySegmentRequest.
415
+ * Use `create(ListPurchasePlansBySegmentRequestSchema)` to create a new message.
462
416
  */
463
- export const ListDefaultPurchasePlansRequestSchema: GenMessage<ListDefaultPurchasePlansRequest> = /*@__PURE__*/
464
- messageDesc(file_gc_v1_gc, 14);
417
+ export const ListPurchasePlansBySegmentRequestSchema: GenMessage<ListPurchasePlansBySegmentRequest> = /*@__PURE__*/
418
+ messageDesc(file_gc_v1_gc, 15);
465
419
 
466
420
  /**
467
421
  * @generated from message blueapi.gc.v1.OrgUser
@@ -483,7 +437,7 @@ export type OrgUser = Message<"blueapi.gc.v1.OrgUser"> & {
483
437
  * Use `create(OrgUserSchema)` to create a new message.
484
438
  */
485
439
  export const OrgUserSchema: GenMessage<OrgUser> = /*@__PURE__*/
486
- messageDesc(file_gc_v1_gc, 15);
440
+ messageDesc(file_gc_v1_gc, 16);
487
441
 
488
442
  /**
489
443
  * @generated from message blueapi.gc.v1.Membership
@@ -505,7 +459,7 @@ export type Membership = Message<"blueapi.gc.v1.Membership"> & {
505
459
  * Use `create(MembershipSchema)` to create a new message.
506
460
  */
507
461
  export const MembershipSchema: GenMessage<Membership> = /*@__PURE__*/
508
- messageDesc(file_gc_v1_gc, 16);
462
+ messageDesc(file_gc_v1_gc, 17);
509
463
 
510
464
  /**
511
465
  * @generated from message blueapi.gc.v1.Address
@@ -559,7 +513,7 @@ export type Address = Message<"blueapi.gc.v1.Address"> & {
559
513
  * Use `create(AddressSchema)` to create a new message.
560
514
  */
561
515
  export const AddressSchema: GenMessage<Address> = /*@__PURE__*/
562
- messageDesc(file_gc_v1_gc, 17);
516
+ messageDesc(file_gc_v1_gc, 18);
563
517
 
564
518
  /**
565
519
  * @generated from message blueapi.gc.v1.AwsExistingCur
@@ -601,7 +555,7 @@ export type AwsExistingCur = Message<"blueapi.gc.v1.AwsExistingCur"> & {
601
555
  * Use `create(AwsExistingCurSchema)` to create a new message.
602
556
  */
603
557
  export const AwsExistingCurSchema: GenMessage<AwsExistingCur> = /*@__PURE__*/
604
- messageDesc(file_gc_v1_gc, 18);
558
+ messageDesc(file_gc_v1_gc, 19);
605
559
 
606
560
  /**
607
561
  * @generated from message blueapi.gc.v1.RegisterOrgRequest
@@ -674,25 +628,23 @@ export type RegisterOrgRequest = Message<"blueapi.gc.v1.RegisterOrgRequest"> & {
674
628
  * Use `create(RegisterOrgRequestSchema)` to create a new message.
675
629
  */
676
630
  export const RegisterOrgRequestSchema: GenMessage<RegisterOrgRequest> = /*@__PURE__*/
677
- messageDesc(file_gc_v1_gc, 19);
631
+ messageDesc(file_gc_v1_gc, 20);
678
632
 
679
633
  /**
680
634
  * @generated from message blueapi.gc.v1.StartAwsOnboardingRequest
681
635
  */
682
636
  export type StartAwsOnboardingRequest = Message<"blueapi.gc.v1.StartAwsOnboardingRequest"> & {
683
637
  /**
684
- * Ripple context (used for lookup/mapping; not sent to GuaranteedCommitments)
638
+ * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
685
639
  *
686
- * @generated from field: string mspId = 1;
640
+ * @generated from field: string billingGroupId = 1;
687
641
  */
688
- mspId: string;
642
+ billingGroupId: string;
689
643
 
690
644
  /**
691
- * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
692
- *
693
- * @generated from field: string billingId = 2;
645
+ * @generated from field: string companyId = 2;
694
646
  */
695
- billingId: string;
647
+ companyId: string;
696
648
 
697
649
  /**
698
650
  * @generated from field: string gcOrgId = 3;
@@ -705,25 +657,23 @@ export type StartAwsOnboardingRequest = Message<"blueapi.gc.v1.StartAwsOnboardin
705
657
  * Use `create(StartAwsOnboardingRequestSchema)` to create a new message.
706
658
  */
707
659
  export const StartAwsOnboardingRequestSchema: GenMessage<StartAwsOnboardingRequest> = /*@__PURE__*/
708
- messageDesc(file_gc_v1_gc, 20);
660
+ messageDesc(file_gc_v1_gc, 21);
709
661
 
710
662
  /**
711
663
  * @generated from message blueapi.gc.v1.GetAwsCloudFormationTemplateRequest
712
664
  */
713
665
  export type GetAwsCloudFormationTemplateRequest = Message<"blueapi.gc.v1.GetAwsCloudFormationTemplateRequest"> & {
714
666
  /**
715
- * Ripple context (used for lookup/mapping; not sent to GuaranteedCommitments)
667
+ * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
716
668
  *
717
- * @generated from field: string mspId = 1;
669
+ * @generated from field: string billingGroupId = 1;
718
670
  */
719
- mspId: string;
671
+ billingGroupId: string;
720
672
 
721
673
  /**
722
- * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
723
- *
724
- * @generated from field: string billingId = 2;
674
+ * @generated from field: string companyId = 2;
725
675
  */
726
- billingId: string;
676
+ companyId: string;
727
677
 
728
678
  /**
729
679
  * @generated from field: string gcOrgId = 3;
@@ -736,25 +686,23 @@ export type GetAwsCloudFormationTemplateRequest = Message<"blueapi.gc.v1.GetAwsC
736
686
  * Use `create(GetAwsCloudFormationTemplateRequestSchema)` to create a new message.
737
687
  */
738
688
  export const GetAwsCloudFormationTemplateRequestSchema: GenMessage<GetAwsCloudFormationTemplateRequest> = /*@__PURE__*/
739
- messageDesc(file_gc_v1_gc, 21);
689
+ messageDesc(file_gc_v1_gc, 22);
740
690
 
741
691
  /**
742
692
  * @generated from message blueapi.gc.v1.GetAwsLaunchStackUrlRequest
743
693
  */
744
694
  export type GetAwsLaunchStackUrlRequest = Message<"blueapi.gc.v1.GetAwsLaunchStackUrlRequest"> & {
745
695
  /**
746
- * Ripple context (used for lookup/mapping; not sent to GuaranteedCommitments)
696
+ * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
747
697
  *
748
- * @generated from field: string mspId = 1;
698
+ * @generated from field: string billingGroupId = 1;
749
699
  */
750
- mspId: string;
700
+ billingGroupId: string;
751
701
 
752
702
  /**
753
- * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
754
- *
755
- * @generated from field: string billingId = 2;
703
+ * @generated from field: string companyId = 2;
756
704
  */
757
- billingId: string;
705
+ companyId: string;
758
706
 
759
707
  /**
760
708
  * @generated from field: string gcOrgId = 3;
@@ -767,25 +715,23 @@ export type GetAwsLaunchStackUrlRequest = Message<"blueapi.gc.v1.GetAwsLaunchSta
767
715
  * Use `create(GetAwsLaunchStackUrlRequestSchema)` to create a new message.
768
716
  */
769
717
  export const GetAwsLaunchStackUrlRequestSchema: GenMessage<GetAwsLaunchStackUrlRequest> = /*@__PURE__*/
770
- messageDesc(file_gc_v1_gc, 22);
718
+ messageDesc(file_gc_v1_gc, 23);
771
719
 
772
720
  /**
773
721
  * @generated from message blueapi.gc.v1.VerifyAwsOnboardingRequest
774
722
  */
775
723
  export type VerifyAwsOnboardingRequest = Message<"blueapi.gc.v1.VerifyAwsOnboardingRequest"> & {
776
724
  /**
777
- * Ripple context (used for lookup/mapping; not sent to GuaranteedCommitments)
725
+ * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
778
726
  *
779
- * @generated from field: string mspId = 1;
727
+ * @generated from field: string billingGroupId = 1;
780
728
  */
781
- mspId: string;
729
+ billingGroupId: string;
782
730
 
783
731
  /**
784
- * Optional: if present => MSP customer (3rd layer), else MSP-level org (2nd layer)
785
- *
786
- * @generated from field: string billingId = 2;
732
+ * @generated from field: string companyId = 2;
787
733
  */
788
- billingId: string;
734
+ companyId: string;
789
735
 
790
736
  /**
791
737
  * @generated from field: string gcOrgId = 3;
@@ -819,7 +765,295 @@ export type VerifyAwsOnboardingRequest = Message<"blueapi.gc.v1.VerifyAwsOnboard
819
765
  * Use `create(VerifyAwsOnboardingRequestSchema)` to create a new message.
820
766
  */
821
767
  export const VerifyAwsOnboardingRequestSchema: GenMessage<VerifyAwsOnboardingRequest> = /*@__PURE__*/
822
- messageDesc(file_gc_v1_gc, 23);
768
+ messageDesc(file_gc_v1_gc, 24);
769
+
770
+ /**
771
+ * @generated from message blueapi.gc.v1.GetOnboardingStatusRequest
772
+ */
773
+ export type GetOnboardingStatusRequest = Message<"blueapi.gc.v1.GetOnboardingStatusRequest"> & {
774
+ /**
775
+ * Optional:
776
+ * - empty => MSP-level onboarding row (isMsp = true)
777
+ * - non-empty => company under MSP (isMsp = false)
778
+ *
779
+ * @generated from field: string billingGroupId = 1;
780
+ */
781
+ billingGroupId: string;
782
+
783
+ /**
784
+ * @generated from field: string companyId = 2;
785
+ */
786
+ companyId: string;
787
+ };
788
+
789
+ /**
790
+ * Describes the message blueapi.gc.v1.GetOnboardingStatusRequest.
791
+ * Use `create(GetOnboardingStatusRequestSchema)` to create a new message.
792
+ */
793
+ export const GetOnboardingStatusRequestSchema: GenMessage<GetOnboardingStatusRequest> = /*@__PURE__*/
794
+ messageDesc(file_gc_v1_gc, 25);
795
+
796
+ /**
797
+ * @generated from message blueapi.gc.v1.ListPayerAccountsRequest
798
+ */
799
+ export type ListPayerAccountsRequest = Message<"blueapi.gc.v1.ListPayerAccountsRequest"> & {
800
+ };
801
+
802
+ /**
803
+ * Describes the message blueapi.gc.v1.ListPayerAccountsRequest.
804
+ * Use `create(ListPayerAccountsRequestSchema)` to create a new message.
805
+ */
806
+ export const ListPayerAccountsRequestSchema: GenMessage<ListPayerAccountsRequest> = /*@__PURE__*/
807
+ messageDesc(file_gc_v1_gc, 26);
808
+
809
+ /**
810
+ * @generated from message blueapi.gc.v1.SetPayerAccountEnabledRequest
811
+ */
812
+ export type SetPayerAccountEnabledRequest = Message<"blueapi.gc.v1.SetPayerAccountEnabledRequest"> & {
813
+ /**
814
+ * @generated from field: string companyId = 1;
815
+ */
816
+ companyId: string;
817
+
818
+ /**
819
+ * @generated from field: bool enabled = 2;
820
+ */
821
+ enabled: boolean;
822
+ };
823
+
824
+ /**
825
+ * Describes the message blueapi.gc.v1.SetPayerAccountEnabledRequest.
826
+ * Use `create(SetPayerAccountEnabledRequestSchema)` to create a new message.
827
+ */
828
+ export const SetPayerAccountEnabledRequestSchema: GenMessage<SetPayerAccountEnabledRequest> = /*@__PURE__*/
829
+ messageDesc(file_gc_v1_gc, 27);
830
+
831
+ /**
832
+ * @generated from message blueapi.gc.v1.GetPayerAccountStatusRequest
833
+ */
834
+ export type GetPayerAccountStatusRequest = Message<"blueapi.gc.v1.GetPayerAccountStatusRequest"> & {
835
+ };
836
+
837
+ /**
838
+ * Describes the message blueapi.gc.v1.GetPayerAccountStatusRequest.
839
+ * Use `create(GetPayerAccountStatusRequestSchema)` to create a new message.
840
+ */
841
+ export const GetPayerAccountStatusRequestSchema: GenMessage<GetPayerAccountStatusRequest> = /*@__PURE__*/
842
+ messageDesc(file_gc_v1_gc, 28);
843
+
844
+ /**
845
+ * @generated from message blueapi.gc.v1.SaveCommitmentsPlanAsDraftRequest
846
+ */
847
+ export type SaveCommitmentsPlanAsDraftRequest = Message<"blueapi.gc.v1.SaveCommitmentsPlanAsDraftRequest"> & {
848
+ /**
849
+ * @generated from field: string planId = 1;
850
+ */
851
+ planId: string;
852
+
853
+ /**
854
+ * @generated from field: repeated string reservationIds = 2;
855
+ */
856
+ reservationIds: string[];
857
+
858
+ /**
859
+ * @generated from field: repeated string resourceIds = 3;
860
+ */
861
+ resourceIds: string[];
862
+
863
+ /**
864
+ * @generated from field: double maxUpfrontCost = 4;
865
+ */
866
+ maxUpfrontCost: number;
867
+
868
+ /**
869
+ * @generated from field: blueapi.gc.v1.Provider provider = 5;
870
+ */
871
+ provider: Provider;
872
+
873
+ /**
874
+ * @generated from field: string endDate = 6;
875
+ */
876
+ endDate: string;
877
+
878
+ /**
879
+ * @generated from field: string startDate = 7;
880
+ */
881
+ startDate: string;
882
+
883
+ /**
884
+ * @generated from field: string segmentId = 8;
885
+ */
886
+ segmentId: string;
887
+
888
+ /**
889
+ * @generated from field: string status = 9;
890
+ */
891
+ status: string;
892
+
893
+ /**
894
+ * @generated from field: string description = 10;
895
+ */
896
+ description: string;
897
+
898
+ /**
899
+ * @generated from field: string name = 11;
900
+ */
901
+ name: string;
902
+
903
+ /**
904
+ * @generated from field: string preferredPaymentOption = 12;
905
+ */
906
+ preferredPaymentOption: string;
907
+
908
+ /**
909
+ * @generated from field: repeated string includedContractTerms = 13;
910
+ */
911
+ includedContractTerms: string[];
912
+
913
+ /**
914
+ * @generated from field: repeated blueapi.gc.v1.ContractSpec includedContractSpecs = 14;
915
+ */
916
+ includedContractSpecs: ContractSpec[];
917
+
918
+ /**
919
+ * @generated from field: google.protobuf.Value coverageId = 15;
920
+ */
921
+ coverageId?: Value;
922
+
923
+ /**
924
+ * @generated from field: string createdAt = 16;
925
+ */
926
+ createdAt: string;
927
+
928
+ /**
929
+ * @generated from field: google.protobuf.Value createdBy = 17;
930
+ */
931
+ createdBy?: Value;
932
+
933
+ /**
934
+ * @generated from field: string dataSource = 18;
935
+ */
936
+ dataSource: string;
937
+
938
+ /**
939
+ * @generated from field: google.protobuf.Value executionPolicy = 19;
940
+ */
941
+ executionPolicy?: Value;
942
+
943
+ /**
944
+ * @generated from field: repeated string flaggedActions = 20;
945
+ */
946
+ flaggedActions: string[];
947
+
948
+ /**
949
+ * @generated from field: string id = 21;
950
+ */
951
+ id: string;
952
+
953
+ /**
954
+ * @generated from field: bool isCalculating = 22;
955
+ */
956
+ isCalculating: boolean;
957
+
958
+ /**
959
+ * @generated from field: bool isDefault = 23;
960
+ */
961
+ isDefault: boolean;
962
+
963
+ /**
964
+ * @generated from field: bool isLocked = 24;
965
+ */
966
+ isLocked: boolean;
967
+
968
+ /**
969
+ * @generated from field: bool isRecommended = 25;
970
+ */
971
+ isRecommended: boolean;
972
+
973
+ /**
974
+ * @generated from field: bool isRenewal = 26;
975
+ */
976
+ isRenewal: boolean;
977
+
978
+ /**
979
+ * @generated from field: bool isSaved = 27;
980
+ */
981
+ isSaved: boolean;
982
+
983
+ /**
984
+ * @generated from field: string lastModified = 28;
985
+ */
986
+ lastModified: string;
987
+
988
+ /**
989
+ * @generated from field: string metaPlanId = 29;
990
+ */
991
+ metaPlanId: string;
992
+
993
+ /**
994
+ * @generated from field: google.protobuf.Value minimumUpfrontInterestRate = 30;
995
+ */
996
+ minimumUpfrontInterestRate?: Value;
997
+
998
+ /**
999
+ * @generated from field: string orgId = 31;
1000
+ */
1001
+ orgId: string;
1002
+
1003
+ /**
1004
+ * @generated from field: string planType = 32;
1005
+ */
1006
+ planType: string;
1007
+
1008
+ /**
1009
+ * @generated from field: google.protobuf.Value recommendWithinCoveredAccounts = 33;
1010
+ */
1011
+ recommendWithinCoveredAccounts?: Value;
1012
+
1013
+ /**
1014
+ * @generated from field: blueapi.gc.v1.Segment segment = 34;
1015
+ */
1016
+ segment?: Segment;
1017
+ };
1018
+
1019
+ /**
1020
+ * Describes the message blueapi.gc.v1.SaveCommitmentsPlanAsDraftRequest.
1021
+ * Use `create(SaveCommitmentsPlanAsDraftRequestSchema)` to create a new message.
1022
+ */
1023
+ export const SaveCommitmentsPlanAsDraftRequestSchema: GenMessage<SaveCommitmentsPlanAsDraftRequest> = /*@__PURE__*/
1024
+ messageDesc(file_gc_v1_gc, 29);
1025
+
1026
+ /**
1027
+ * @generated from message blueapi.gc.v1.ListDraftPurchasePlansRequest
1028
+ */
1029
+ export type ListDraftPurchasePlansRequest = Message<"blueapi.gc.v1.ListDraftPurchasePlansRequest"> & {
1030
+ };
1031
+
1032
+ /**
1033
+ * Describes the message blueapi.gc.v1.ListDraftPurchasePlansRequest.
1034
+ * Use `create(ListDraftPurchasePlansRequestSchema)` to create a new message.
1035
+ */
1036
+ export const ListDraftPurchasePlansRequestSchema: GenMessage<ListDraftPurchasePlansRequest> = /*@__PURE__*/
1037
+ messageDesc(file_gc_v1_gc, 30);
1038
+
1039
+ /**
1040
+ * @generated from message blueapi.gc.v1.DeleteDraftPurchasePlanRequest
1041
+ */
1042
+ export type DeleteDraftPurchasePlanRequest = Message<"blueapi.gc.v1.DeleteDraftPurchasePlanRequest"> & {
1043
+ /**
1044
+ * Required. The plan ID to delete.
1045
+ *
1046
+ * @generated from field: string planId = 1;
1047
+ */
1048
+ planId: string;
1049
+ };
1050
+
1051
+ /**
1052
+ * Describes the message blueapi.gc.v1.DeleteDraftPurchasePlanRequest.
1053
+ * Use `create(DeleteDraftPurchasePlanRequestSchema)` to create a new message.
1054
+ */
1055
+ export const DeleteDraftPurchasePlanRequestSchema: GenMessage<DeleteDraftPurchasePlanRequest> = /*@__PURE__*/
1056
+ messageDesc(file_gc_v1_gc, 31);
823
1057
 
824
1058
  /**
825
1059
  * @generated from message blueapi.gc.v1.Org
@@ -846,7 +1080,7 @@ export type Org = Message<"blueapi.gc.v1.Org"> & {
846
1080
  * Use `create(OrgSchema)` to create a new message.
847
1081
  */
848
1082
  export const OrgSchema: GenMessage<Org> = /*@__PURE__*/
849
- messageDesc(file_gc_v1_gc, 24);
1083
+ messageDesc(file_gc_v1_gc, 32);
850
1084
 
851
1085
  /**
852
1086
  * @generated from message blueapi.gc.v1.CommitmentPlanDetails
@@ -983,7 +1217,7 @@ export type CommitmentPlanDetails = Message<"blueapi.gc.v1.CommitmentPlanDetails
983
1217
  * Use `create(CommitmentPlanDetailsSchema)` to create a new message.
984
1218
  */
985
1219
  export const CommitmentPlanDetailsSchema: GenMessage<CommitmentPlanDetails> = /*@__PURE__*/
986
- messageDesc(file_gc_v1_gc, 25);
1220
+ messageDesc(file_gc_v1_gc, 33);
987
1221
 
988
1222
  /**
989
1223
  * @generated from message blueapi.gc.v1.ListDefaultCommitmentPlansResponse
@@ -1000,7 +1234,7 @@ export type ListDefaultCommitmentPlansResponse = Message<"blueapi.gc.v1.ListDefa
1000
1234
  * Use `create(ListDefaultCommitmentPlansResponseSchema)` to create a new message.
1001
1235
  */
1002
1236
  export const ListDefaultCommitmentPlansResponseSchema: GenMessage<ListDefaultCommitmentPlansResponse> = /*@__PURE__*/
1003
- messageDesc(file_gc_v1_gc, 26);
1237
+ messageDesc(file_gc_v1_gc, 34);
1004
1238
 
1005
1239
  /**
1006
1240
  * @generated from message blueapi.gc.v1.CommitmentPlanLineItem
@@ -1162,7 +1396,7 @@ export type CommitmentPlanLineItem = Message<"blueapi.gc.v1.CommitmentPlanLineIt
1162
1396
  * Use `create(CommitmentPlanLineItemSchema)` to create a new message.
1163
1397
  */
1164
1398
  export const CommitmentPlanLineItemSchema: GenMessage<CommitmentPlanLineItem> = /*@__PURE__*/
1165
- messageDesc(file_gc_v1_gc, 27);
1399
+ messageDesc(file_gc_v1_gc, 35);
1166
1400
 
1167
1401
  /**
1168
1402
  * @generated from message blueapi.gc.v1.ListCommitmentPlanLineItemsResponse
@@ -1179,7 +1413,7 @@ export type ListCommitmentPlanLineItemsResponse = Message<"blueapi.gc.v1.ListCom
1179
1413
  * Use `create(ListCommitmentPlanLineItemsResponseSchema)` to create a new message.
1180
1414
  */
1181
1415
  export const ListCommitmentPlanLineItemsResponseSchema: GenMessage<ListCommitmentPlanLineItemsResponse> = /*@__PURE__*/
1182
- messageDesc(file_gc_v1_gc, 28);
1416
+ messageDesc(file_gc_v1_gc, 36);
1183
1417
 
1184
1418
  /**
1185
1419
  * @generated from message blueapi.gc.v1.CommitmentPlanResourceMatch
@@ -1306,7 +1540,7 @@ export type CommitmentPlanResourceMatch = Message<"blueapi.gc.v1.CommitmentPlanR
1306
1540
  * Use `create(CommitmentPlanResourceMatchSchema)` to create a new message.
1307
1541
  */
1308
1542
  export const CommitmentPlanResourceMatchSchema: GenMessage<CommitmentPlanResourceMatch> = /*@__PURE__*/
1309
- messageDesc(file_gc_v1_gc, 29);
1543
+ messageDesc(file_gc_v1_gc, 37);
1310
1544
 
1311
1545
  /**
1312
1546
  * @generated from message blueapi.gc.v1.ListCommitmentPlanResourceMatchesResponse
@@ -1323,7 +1557,7 @@ export type ListCommitmentPlanResourceMatchesResponse = Message<"blueapi.gc.v1.L
1323
1557
  * Use `create(ListCommitmentPlanResourceMatchesResponseSchema)` to create a new message.
1324
1558
  */
1325
1559
  export const ListCommitmentPlanResourceMatchesResponseSchema: GenMessage<ListCommitmentPlanResourceMatchesResponse> = /*@__PURE__*/
1326
- messageDesc(file_gc_v1_gc, 30);
1560
+ messageDesc(file_gc_v1_gc, 38);
1327
1561
 
1328
1562
  /**
1329
1563
  * @generated from message blueapi.gc.v1.Lease
@@ -1395,7 +1629,7 @@ export type Lease = Message<"blueapi.gc.v1.Lease"> & {
1395
1629
  * Use `create(LeaseSchema)` to create a new message.
1396
1630
  */
1397
1631
  export const LeaseSchema: GenMessage<Lease> = /*@__PURE__*/
1398
- messageDesc(file_gc_v1_gc, 31);
1632
+ messageDesc(file_gc_v1_gc, 39);
1399
1633
 
1400
1634
  /**
1401
1635
  * @generated from message blueapi.gc.v1.DailyUtilization
@@ -1422,7 +1656,7 @@ export type DailyUtilization = Message<"blueapi.gc.v1.DailyUtilization"> & {
1422
1656
  * Use `create(DailyUtilizationSchema)` to create a new message.
1423
1657
  */
1424
1658
  export const DailyUtilizationSchema: GenMessage<DailyUtilization> = /*@__PURE__*/
1425
- messageDesc(file_gc_v1_gc, 32);
1659
+ messageDesc(file_gc_v1_gc, 40);
1426
1660
 
1427
1661
  /**
1428
1662
  * @generated from message blueapi.gc.v1.Commitment
@@ -1654,7 +1888,7 @@ export type Commitment = Message<"blueapi.gc.v1.Commitment"> & {
1654
1888
  * Use `create(CommitmentSchema)` to create a new message.
1655
1889
  */
1656
1890
  export const CommitmentSchema: GenMessage<Commitment> = /*@__PURE__*/
1657
- messageDesc(file_gc_v1_gc, 33);
1891
+ messageDesc(file_gc_v1_gc, 41);
1658
1892
 
1659
1893
  /**
1660
1894
  * @generated from message blueapi.gc.v1.ListCommitmentsResponse
@@ -1671,71 +1905,130 @@ export type ListCommitmentsResponse = Message<"blueapi.gc.v1.ListCommitmentsResp
1671
1905
  * Use `create(ListCommitmentsResponseSchema)` to create a new message.
1672
1906
  */
1673
1907
  export const ListCommitmentsResponseSchema: GenMessage<ListCommitmentsResponse> = /*@__PURE__*/
1674
- messageDesc(file_gc_v1_gc, 34);
1908
+ messageDesc(file_gc_v1_gc, 42);
1909
+
1910
+ /**
1911
+ * @generated from message blueapi.gc.v1.CommitmentsChartData
1912
+ */
1913
+ export type CommitmentsChartData = Message<"blueapi.gc.v1.CommitmentsChartData"> & {
1914
+ /**
1915
+ * @generated from field: string date = 1;
1916
+ */
1917
+ date: string;
1918
+
1919
+ /**
1920
+ * @generated from field: string chartKey = 2;
1921
+ */
1922
+ chartKey: string;
1923
+
1924
+ /**
1925
+ * @generated from field: double chartValue = 3;
1926
+ */
1927
+ chartValue: number;
1928
+ };
1675
1929
 
1676
1930
  /**
1677
- * @generated from message blueapi.gc.v1.CommitmentsChartDataPoint
1931
+ * Describes the message blueapi.gc.v1.CommitmentsChartData.
1932
+ * Use `create(CommitmentsChartDataSchema)` to create a new message.
1678
1933
  */
1679
- export type CommitmentsChartDataPoint = Message<"blueapi.gc.v1.CommitmentsChartDataPoint"> & {
1934
+ export const CommitmentsChartDataSchema: GenMessage<CommitmentsChartData> = /*@__PURE__*/
1935
+ messageDesc(file_gc_v1_gc, 43);
1936
+
1937
+ /**
1938
+ * @generated from message blueapi.gc.v1.CommitmentsChartResponse
1939
+ */
1940
+ export type CommitmentsChartResponse = Message<"blueapi.gc.v1.CommitmentsChartResponse"> & {
1941
+ /**
1942
+ * @generated from field: repeated blueapi.gc.v1.CommitmentsChartData data = 1;
1943
+ */
1944
+ data: CommitmentsChartData[];
1945
+ };
1946
+
1947
+ /**
1948
+ * Describes the message blueapi.gc.v1.CommitmentsChartResponse.
1949
+ * Use `create(CommitmentsChartResponseSchema)` to create a new message.
1950
+ */
1951
+ export const CommitmentsChartResponseSchema: GenMessage<CommitmentsChartResponse> = /*@__PURE__*/
1952
+ messageDesc(file_gc_v1_gc, 44);
1953
+
1954
+ /**
1955
+ * @generated from message blueapi.gc.v1.CommitmentsUtilizationData
1956
+ */
1957
+ export type CommitmentsUtilizationData = Message<"blueapi.gc.v1.CommitmentsUtilizationData"> & {
1958
+ /**
1959
+ * @generated from field: string utilizationDate = 1;
1960
+ */
1961
+ utilizationDate: string;
1962
+
1963
+ /**
1964
+ * @generated from field: double cost = 2;
1965
+ */
1966
+ cost: number;
1967
+
1968
+ /**
1969
+ * @generated from field: double coveredCost = 3;
1970
+ */
1971
+ coveredCost: number;
1972
+
1680
1973
  /**
1681
- * @generated from field: string date = 1;
1974
+ * @generated from field: double griFees = 4;
1682
1975
  */
1683
- date: string;
1976
+ griFees: number;
1684
1977
 
1685
1978
  /**
1686
- * @generated from field: double commitmentSpend = 2;
1979
+ * @generated from field: double netSavings = 5;
1687
1980
  */
1688
- commitmentSpend: number;
1981
+ netSavings: number;
1689
1982
 
1690
1983
  /**
1691
- * @generated from field: double utilization = 3;
1984
+ * @generated from field: double potentialSavings = 6;
1692
1985
  */
1693
- utilization: number;
1986
+ potentialSavings: number;
1694
1987
 
1695
1988
  /**
1696
- * @generated from field: double lockedCommitments = 4;
1989
+ * @generated from field: double reservationUtilization = 7;
1697
1990
  */
1698
- lockedCommitments: number;
1991
+ reservationUtilization: number;
1699
1992
 
1700
1993
  /**
1701
- * @generated from field: double unlockedCommitments = 5;
1994
+ * @generated from field: double runningHours = 8;
1702
1995
  */
1703
- unlockedCommitments: number;
1996
+ runningHours: number;
1704
1997
 
1705
1998
  /**
1706
- * @generated from field: double realizedSavings = 6;
1999
+ * @generated from field: double savings = 9;
1707
2000
  */
1708
- realizedSavings: number;
2001
+ savings: number;
1709
2002
 
1710
2003
  /**
1711
- * @generated from field: bool isProjection = 7;
2004
+ * @generated from field: double unutilizedCommitment = 10;
1712
2005
  */
1713
- isProjection: boolean;
2006
+ unutilizedCommitment: number;
1714
2007
  };
1715
2008
 
1716
2009
  /**
1717
- * Describes the message blueapi.gc.v1.CommitmentsChartDataPoint.
1718
- * Use `create(CommitmentsChartDataPointSchema)` to create a new message.
2010
+ * Describes the message blueapi.gc.v1.CommitmentsUtilizationData.
2011
+ * Use `create(CommitmentsUtilizationDataSchema)` to create a new message.
1719
2012
  */
1720
- export const CommitmentsChartDataPointSchema: GenMessage<CommitmentsChartDataPoint> = /*@__PURE__*/
1721
- messageDesc(file_gc_v1_gc, 35);
2013
+ export const CommitmentsUtilizationDataSchema: GenMessage<CommitmentsUtilizationData> = /*@__PURE__*/
2014
+ messageDesc(file_gc_v1_gc, 45);
1722
2015
 
1723
2016
  /**
1724
- * @generated from message blueapi.gc.v1.CommitmentsChartResponse
2017
+ * @generated from message blueapi.gc.v1.CommitmentsUtilizationResponse
1725
2018
  */
1726
- export type CommitmentsChartResponse = Message<"blueapi.gc.v1.CommitmentsChartResponse"> & {
2019
+ export type CommitmentsUtilizationResponse = Message<"blueapi.gc.v1.CommitmentsUtilizationResponse"> & {
1727
2020
  /**
1728
- * @generated from field: repeated blueapi.gc.v1.CommitmentsChartDataPoint data = 1;
2021
+ * @generated from field: repeated blueapi.gc.v1.CommitmentsUtilizationData data = 1;
1729
2022
  */
1730
- data: CommitmentsChartDataPoint[];
2023
+ data: CommitmentsUtilizationData[];
1731
2024
  };
1732
2025
 
1733
2026
  /**
1734
- * Describes the message blueapi.gc.v1.CommitmentsChartResponse.
1735
- * Use `create(CommitmentsChartResponseSchema)` to create a new message.
2027
+ * Describes the message blueapi.gc.v1.CommitmentsUtilizationResponse.
2028
+ * Use `create(CommitmentsUtilizationResponseSchema)` to create a new message.
1736
2029
  */
1737
- export const CommitmentsChartResponseSchema: GenMessage<CommitmentsChartResponse> = /*@__PURE__*/
1738
- messageDesc(file_gc_v1_gc, 36);
2030
+ export const CommitmentsUtilizationResponseSchema: GenMessage<CommitmentsUtilizationResponse> = /*@__PURE__*/
2031
+ messageDesc(file_gc_v1_gc, 46);
1739
2032
 
1740
2033
  /**
1741
2034
  * @generated from message blueapi.gc.v1.MetricsResponse
@@ -1827,7 +2120,7 @@ export type MetricsResponse = Message<"blueapi.gc.v1.MetricsResponse"> & {
1827
2120
  * Use `create(MetricsResponseSchema)` to create a new message.
1828
2121
  */
1829
2122
  export const MetricsResponseSchema: GenMessage<MetricsResponse> = /*@__PURE__*/
1830
- messageDesc(file_gc_v1_gc, 37);
2123
+ messageDesc(file_gc_v1_gc, 47);
1831
2124
 
1832
2125
  /**
1833
2126
  * @generated from message blueapi.gc.v1.Resource
@@ -2064,7 +2357,7 @@ export type Resource = Message<"blueapi.gc.v1.Resource"> & {
2064
2357
  * Use `create(ResourceSchema)` to create a new message.
2065
2358
  */
2066
2359
  export const ResourceSchema: GenMessage<Resource> = /*@__PURE__*/
2067
- messageDesc(file_gc_v1_gc, 38);
2360
+ messageDesc(file_gc_v1_gc, 48);
2068
2361
 
2069
2362
  /**
2070
2363
  * @generated from message blueapi.gc.v1.ListResourcesResponse
@@ -2081,7 +2374,7 @@ export type ListResourcesResponse = Message<"blueapi.gc.v1.ListResourcesResponse
2081
2374
  * Use `create(ListResourcesResponseSchema)` to create a new message.
2082
2375
  */
2083
2376
  export const ListResourcesResponseSchema: GenMessage<ListResourcesResponse> = /*@__PURE__*/
2084
- messageDesc(file_gc_v1_gc, 39);
2377
+ messageDesc(file_gc_v1_gc, 49);
2085
2378
 
2086
2379
  /**
2087
2380
  * @generated from message blueapi.gc.v1.ResourceDailyUsage
@@ -2168,7 +2461,7 @@ export type ResourceDailyUsage = Message<"blueapi.gc.v1.ResourceDailyUsage"> & {
2168
2461
  * Use `create(ResourceDailyUsageSchema)` to create a new message.
2169
2462
  */
2170
2463
  export const ResourceDailyUsageSchema: GenMessage<ResourceDailyUsage> = /*@__PURE__*/
2171
- messageDesc(file_gc_v1_gc, 40);
2464
+ messageDesc(file_gc_v1_gc, 50);
2172
2465
 
2173
2466
  /**
2174
2467
  * @generated from message blueapi.gc.v1.GetResourceDailyUsageResponse
@@ -2185,7 +2478,7 @@ export type GetResourceDailyUsageResponse = Message<"blueapi.gc.v1.GetResourceDa
2185
2478
  * Use `create(GetResourceDailyUsageResponseSchema)` to create a new message.
2186
2479
  */
2187
2480
  export const GetResourceDailyUsageResponseSchema: GenMessage<GetResourceDailyUsageResponse> = /*@__PURE__*/
2188
- messageDesc(file_gc_v1_gc, 41);
2481
+ messageDesc(file_gc_v1_gc, 51);
2189
2482
 
2190
2483
  /**
2191
2484
  * @generated from message blueapi.gc.v1.Segment
@@ -2222,7 +2515,7 @@ export type Segment = Message<"blueapi.gc.v1.Segment"> & {
2222
2515
  * Use `create(SegmentSchema)` to create a new message.
2223
2516
  */
2224
2517
  export const SegmentSchema: GenMessage<Segment> = /*@__PURE__*/
2225
- messageDesc(file_gc_v1_gc, 42);
2518
+ messageDesc(file_gc_v1_gc, 52);
2226
2519
 
2227
2520
  /**
2228
2521
  * @generated from message blueapi.gc.v1.ListSegmentsResponse
@@ -2239,7 +2532,7 @@ export type ListSegmentsResponse = Message<"blueapi.gc.v1.ListSegmentsResponse">
2239
2532
  * Use `create(ListSegmentsResponseSchema)` to create a new message.
2240
2533
  */
2241
2534
  export const ListSegmentsResponseSchema: GenMessage<ListSegmentsResponse> = /*@__PURE__*/
2242
- messageDesc(file_gc_v1_gc, 43);
2535
+ messageDesc(file_gc_v1_gc, 53);
2243
2536
 
2244
2537
  /**
2245
2538
  * @generated from message blueapi.gc.v1.SegmentCreator
@@ -2266,7 +2559,7 @@ export type SegmentCreator = Message<"blueapi.gc.v1.SegmentCreator"> & {
2266
2559
  * Use `create(SegmentCreatorSchema)` to create a new message.
2267
2560
  */
2268
2561
  export const SegmentCreatorSchema: GenMessage<SegmentCreator> = /*@__PURE__*/
2269
- messageDesc(file_gc_v1_gc, 44);
2562
+ messageDesc(file_gc_v1_gc, 54);
2270
2563
 
2271
2564
  /**
2272
2565
  * @generated from message blueapi.gc.v1.PurchasePlan
@@ -2298,7 +2591,7 @@ export type PurchasePlan = Message<"blueapi.gc.v1.PurchasePlan"> & {
2298
2591
  * Use `create(PurchasePlanSchema)` to create a new message.
2299
2592
  */
2300
2593
  export const PurchasePlanSchema: GenMessage<PurchasePlan> = /*@__PURE__*/
2301
- messageDesc(file_gc_v1_gc, 45);
2594
+ messageDesc(file_gc_v1_gc, 55);
2302
2595
 
2303
2596
  /**
2304
2597
  * @generated from message blueapi.gc.v1.SegmentDetails
@@ -2443,7 +2736,7 @@ export type SegmentDetails = Message<"blueapi.gc.v1.SegmentDetails"> & {
2443
2736
  * Use `create(SegmentDetailsSchema)` to create a new message.
2444
2737
  */
2445
2738
  export const SegmentDetailsSchema: GenMessage<SegmentDetails> = /*@__PURE__*/
2446
- messageDesc(file_gc_v1_gc, 46);
2739
+ messageDesc(file_gc_v1_gc, 56);
2447
2740
 
2448
2741
  /**
2449
2742
  * @generated from message blueapi.gc.v1.ContractSpec
@@ -2475,7 +2768,7 @@ export type ContractSpec = Message<"blueapi.gc.v1.ContractSpec"> & {
2475
2768
  * Use `create(ContractSpecSchema)` to create a new message.
2476
2769
  */
2477
2770
  export const ContractSpecSchema: GenMessage<ContractSpec> = /*@__PURE__*/
2478
- messageDesc(file_gc_v1_gc, 47);
2771
+ messageDesc(file_gc_v1_gc, 57);
2479
2772
 
2480
2773
  /**
2481
2774
  * @generated from message blueapi.gc.v1.PlanSummary
@@ -2562,7 +2855,7 @@ export type PlanSummary = Message<"blueapi.gc.v1.PlanSummary"> & {
2562
2855
  * Use `create(PlanSummarySchema)` to create a new message.
2563
2856
  */
2564
2857
  export const PlanSummarySchema: GenMessage<PlanSummary> = /*@__PURE__*/
2565
- messageDesc(file_gc_v1_gc, 48);
2858
+ messageDesc(file_gc_v1_gc, 58);
2566
2859
 
2567
2860
  /**
2568
2861
  * @generated from message blueapi.gc.v1.ServiceSummary
@@ -2654,7 +2947,7 @@ export type ServiceSummary = Message<"blueapi.gc.v1.ServiceSummary"> & {
2654
2947
  * Use `create(ServiceSummarySchema)` to create a new message.
2655
2948
  */
2656
2949
  export const ServiceSummarySchema: GenMessage<ServiceSummary> = /*@__PURE__*/
2657
- messageDesc(file_gc_v1_gc, 49);
2950
+ messageDesc(file_gc_v1_gc, 59);
2658
2951
 
2659
2952
  /**
2660
2953
  * @generated from message blueapi.gc.v1.AggregateMetrics
@@ -2681,7 +2974,7 @@ export type AggregateMetrics = Message<"blueapi.gc.v1.AggregateMetrics"> & {
2681
2974
  * Use `create(AggregateMetricsSchema)` to create a new message.
2682
2975
  */
2683
2976
  export const AggregateMetricsSchema: GenMessage<AggregateMetrics> = /*@__PURE__*/
2684
- messageDesc(file_gc_v1_gc, 50);
2977
+ messageDesc(file_gc_v1_gc, 60);
2685
2978
 
2686
2979
  /**
2687
2980
  * @generated from message blueapi.gc.v1.DefaultPurchasePlan
@@ -2969,12 +3262,12 @@ export type DefaultPurchasePlan = Message<"blueapi.gc.v1.DefaultPurchasePlan"> &
2969
3262
  * Use `create(DefaultPurchasePlanSchema)` to create a new message.
2970
3263
  */
2971
3264
  export const DefaultPurchasePlanSchema: GenMessage<DefaultPurchasePlan> = /*@__PURE__*/
2972
- messageDesc(file_gc_v1_gc, 51);
3265
+ messageDesc(file_gc_v1_gc, 61);
2973
3266
 
2974
3267
  /**
2975
- * @generated from message blueapi.gc.v1.ListDefaultPurchasePlansResponse
3268
+ * @generated from message blueapi.gc.v1.ListPurchasePlansBySegmentResponse
2976
3269
  */
2977
- export type ListDefaultPurchasePlansResponse = Message<"blueapi.gc.v1.ListDefaultPurchasePlansResponse"> & {
3270
+ export type ListPurchasePlansBySegmentResponse = Message<"blueapi.gc.v1.ListPurchasePlansBySegmentResponse"> & {
2978
3271
  /**
2979
3272
  * @generated from field: repeated blueapi.gc.v1.DefaultPurchasePlan plans = 1;
2980
3273
  */
@@ -2982,11 +3275,11 @@ export type ListDefaultPurchasePlansResponse = Message<"blueapi.gc.v1.ListDefaul
2982
3275
  };
2983
3276
 
2984
3277
  /**
2985
- * Describes the message blueapi.gc.v1.ListDefaultPurchasePlansResponse.
2986
- * Use `create(ListDefaultPurchasePlansResponseSchema)` to create a new message.
3278
+ * Describes the message blueapi.gc.v1.ListPurchasePlansBySegmentResponse.
3279
+ * Use `create(ListPurchasePlansBySegmentResponseSchema)` to create a new message.
2987
3280
  */
2988
- export const ListDefaultPurchasePlansResponseSchema: GenMessage<ListDefaultPurchasePlansResponse> = /*@__PURE__*/
2989
- messageDesc(file_gc_v1_gc, 52);
3281
+ export const ListPurchasePlansBySegmentResponseSchema: GenMessage<ListPurchasePlansBySegmentResponse> = /*@__PURE__*/
3282
+ messageDesc(file_gc_v1_gc, 62);
2990
3283
 
2991
3284
  /**
2992
3285
  * @generated from message blueapi.gc.v1.RegisterOrgResponse
@@ -3040,7 +3333,7 @@ export type RegisterOrgResponse = Message<"blueapi.gc.v1.RegisterOrgResponse"> &
3040
3333
  * Use `create(RegisterOrgResponseSchema)` to create a new message.
3041
3334
  */
3042
3335
  export const RegisterOrgResponseSchema: GenMessage<RegisterOrgResponse> = /*@__PURE__*/
3043
- messageDesc(file_gc_v1_gc, 53);
3336
+ messageDesc(file_gc_v1_gc, 63);
3044
3337
 
3045
3338
  /**
3046
3339
  * @generated from message blueapi.gc.v1.StartAwsOnboardingResponse
@@ -3057,7 +3350,7 @@ export type StartAwsOnboardingResponse = Message<"blueapi.gc.v1.StartAwsOnboardi
3057
3350
  * Use `create(StartAwsOnboardingResponseSchema)` to create a new message.
3058
3351
  */
3059
3352
  export const StartAwsOnboardingResponseSchema: GenMessage<StartAwsOnboardingResponse> = /*@__PURE__*/
3060
- messageDesc(file_gc_v1_gc, 54);
3353
+ messageDesc(file_gc_v1_gc, 64);
3061
3354
 
3062
3355
  /**
3063
3356
  * @generated from message blueapi.gc.v1.GetAwsCloudFormationTemplateResponse
@@ -3076,7 +3369,7 @@ export type GetAwsCloudFormationTemplateResponse = Message<"blueapi.gc.v1.GetAws
3076
3369
  * Use `create(GetAwsCloudFormationTemplateResponseSchema)` to create a new message.
3077
3370
  */
3078
3371
  export const GetAwsCloudFormationTemplateResponseSchema: GenMessage<GetAwsCloudFormationTemplateResponse> = /*@__PURE__*/
3079
- messageDesc(file_gc_v1_gc, 55);
3372
+ messageDesc(file_gc_v1_gc, 65);
3080
3373
 
3081
3374
  /**
3082
3375
  * @generated from message blueapi.gc.v1.GetAwsLaunchStackUrlResponse
@@ -3093,7 +3386,7 @@ export type GetAwsLaunchStackUrlResponse = Message<"blueapi.gc.v1.GetAwsLaunchSt
3093
3386
  * Use `create(GetAwsLaunchStackUrlResponseSchema)` to create a new message.
3094
3387
  */
3095
3388
  export const GetAwsLaunchStackUrlResponseSchema: GenMessage<GetAwsLaunchStackUrlResponse> = /*@__PURE__*/
3096
- messageDesc(file_gc_v1_gc, 56);
3389
+ messageDesc(file_gc_v1_gc, 66);
3097
3390
 
3098
3391
  /**
3099
3392
  * @generated from message blueapi.gc.v1.VerifyAwsOnboardingResponse
@@ -3110,7 +3403,7 @@ export type VerifyAwsOnboardingResponse = Message<"blueapi.gc.v1.VerifyAwsOnboar
3110
3403
  * Use `create(VerifyAwsOnboardingResponseSchema)` to create a new message.
3111
3404
  */
3112
3405
  export const VerifyAwsOnboardingResponseSchema: GenMessage<VerifyAwsOnboardingResponse> = /*@__PURE__*/
3113
- messageDesc(file_gc_v1_gc, 57);
3406
+ messageDesc(file_gc_v1_gc, 67);
3114
3407
 
3115
3408
  /**
3116
3409
  * @generated from message blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck
@@ -3132,7 +3425,7 @@ export type VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck = Message<"blu
3132
3425
  * Use `create(VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheckSchema)` to create a new message.
3133
3426
  */
3134
3427
  export const VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheckSchema: GenMessage<VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck> = /*@__PURE__*/
3135
- messageDesc(file_gc_v1_gc, 57, 0);
3428
+ messageDesc(file_gc_v1_gc, 67, 0);
3136
3429
 
3137
3430
  /**
3138
3431
  * @generated from enum blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck.AwsOnboardingFeatureStatus
@@ -3168,7 +3461,314 @@ export enum VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck_AwsOnboardingF
3168
3461
  * Describes the enum blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck.AwsOnboardingFeatureStatus.
3169
3462
  */
3170
3463
  export const VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck_AwsOnboardingFeatureStatusSchema: GenEnum<VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck_AwsOnboardingFeatureStatus> = /*@__PURE__*/
3171
- enumDesc(file_gc_v1_gc, 57, 0, 0);
3464
+ enumDesc(file_gc_v1_gc, 67, 0, 0);
3465
+
3466
+ /**
3467
+ * @generated from message blueapi.gc.v1.GetOnboardingStatusResponse
3468
+ */
3469
+ export type GetOnboardingStatusResponse = Message<"blueapi.gc.v1.GetOnboardingStatusResponse"> & {
3470
+ /**
3471
+ * Whether we found a corresponding row
3472
+ *
3473
+ * @generated from field: bool found = 1;
3474
+ */
3475
+ found: boolean;
3476
+
3477
+ /**
3478
+ * Convenience: derived from whether billingId is empty
3479
+ *
3480
+ * @generated from field: bool isMsp = 2;
3481
+ */
3482
+ isMsp: boolean;
3483
+
3484
+ /**
3485
+ * Vendor saved at registration (aws/azure/gcp). Optional.
3486
+ *
3487
+ * @generated from field: blueapi.gc.v1.Provider provider = 3;
3488
+ */
3489
+ provider: Provider;
3490
+
3491
+ /**
3492
+ * The org id to use for Archera upstream calls:
3493
+ * - MSP: mspArcheraOrgId
3494
+ * - company: archeraOrgId
3495
+ *
3496
+ * @generated from field: string gcOrgId = 4;
3497
+ */
3498
+ gcOrgId: string;
3499
+
3500
+ /**
3501
+ * Latest persisted onboarding ID (if any)
3502
+ *
3503
+ * @generated from field: string onboardingId = 5;
3504
+ */
3505
+ onboardingId: string;
3506
+
3507
+ /**
3508
+ * Latest persisted onboarding status
3509
+ *
3510
+ * @generated from field: blueapi.gc.v1.GetOnboardingStatusResponse.OnboardingStatus onboardingStatus = 6;
3511
+ */
3512
+ onboardingStatus: GetOnboardingStatusResponse_OnboardingStatus;
3513
+
3514
+ /**
3515
+ * Latest persisted AWS account id (if any)
3516
+ *
3517
+ * @generated from field: string accountId = 7;
3518
+ */
3519
+ accountId: string;
3520
+
3521
+ /**
3522
+ * @generated from field: string billingGroupId = 8;
3523
+ */
3524
+ billingGroupId: string;
3525
+
3526
+ /**
3527
+ * @generated from field: string companyId = 9;
3528
+ */
3529
+ companyId: string;
3530
+
3531
+ /**
3532
+ * Detailed AWS verification results (best-effort) returned from the last VerifyAwsOnboarding call.
3533
+ * This is used by the UI to "resume" the onboarding flow and show which verification checks
3534
+ * passed/failed when a user comes back later (e.g., after stopping at verification).
3535
+ * Empty when verification hasn't been attempted yet or when no checks were persisted.
3536
+ *
3537
+ * @generated from field: repeated blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck verificationChecks = 10;
3538
+ */
3539
+ verificationChecks: VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck[];
3540
+ };
3541
+
3542
+ /**
3543
+ * Describes the message blueapi.gc.v1.GetOnboardingStatusResponse.
3544
+ * Use `create(GetOnboardingStatusResponseSchema)` to create a new message.
3545
+ */
3546
+ export const GetOnboardingStatusResponseSchema: GenMessage<GetOnboardingStatusResponse> = /*@__PURE__*/
3547
+ messageDesc(file_gc_v1_gc, 68);
3548
+
3549
+ /**
3550
+ * @generated from enum blueapi.gc.v1.GetOnboardingStatusResponse.OnboardingStatus
3551
+ */
3552
+ export enum GetOnboardingStatusResponse_OnboardingStatus {
3553
+ /**
3554
+ * @generated from enum value: ONBOARDING_STATUS_UNSPECIFIED = 0;
3555
+ */
3556
+ UNSPECIFIED = 0,
3557
+
3558
+ /**
3559
+ * No row found in archera_users (org not registered yet)
3560
+ *
3561
+ * @generated from enum value: ONBOARDING_STATUS_NOT_REGISTERED = 1;
3562
+ */
3563
+ NOT_REGISTERED = 1,
3564
+
3565
+ /**
3566
+ * Existing statuses you already persist
3567
+ *
3568
+ * @generated from enum value: ONBOARDING_STATUS_REGISTERED = 2;
3569
+ */
3570
+ REGISTERED = 2,
3571
+
3572
+ /**
3573
+ * @generated from enum value: ONBOARDING_STATUS_ONBOARDING_STARTED = 3;
3574
+ */
3575
+ ONBOARDING_STARTED = 3,
3576
+
3577
+ /**
3578
+ * @generated from enum value: ONBOARDING_STATUS_VERIFIED = 4;
3579
+ */
3580
+ VERIFIED = 4,
3581
+
3582
+ /**
3583
+ * @generated from enum value: ONBOARDING_STATUS_VERIFY_INCOMPLETE = 5;
3584
+ */
3585
+ VERIFY_INCOMPLETE = 5,
3586
+
3587
+ /**
3588
+ * @generated from enum value: ONBOARDING_STATUS_VERIFY_FAILED = 6;
3589
+ */
3590
+ VERIFY_FAILED = 6,
3591
+ }
3592
+
3593
+ /**
3594
+ * Describes the enum blueapi.gc.v1.GetOnboardingStatusResponse.OnboardingStatus.
3595
+ */
3596
+ export const GetOnboardingStatusResponse_OnboardingStatusSchema: GenEnum<GetOnboardingStatusResponse_OnboardingStatus> = /*@__PURE__*/
3597
+ enumDesc(file_gc_v1_gc, 68, 0);
3598
+
3599
+ /**
3600
+ * @generated from message blueapi.gc.v1.ListPayerAccountsResponse
3601
+ */
3602
+ export type ListPayerAccountsResponse = Message<"blueapi.gc.v1.ListPayerAccountsResponse"> & {
3603
+ /**
3604
+ * @generated from field: repeated blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount payerAccounts = 1;
3605
+ */
3606
+ payerAccounts: ListPayerAccountsResponse_PayerAccount[];
3607
+ };
3608
+
3609
+ /**
3610
+ * Describes the message blueapi.gc.v1.ListPayerAccountsResponse.
3611
+ * Use `create(ListPayerAccountsResponseSchema)` to create a new message.
3612
+ */
3613
+ export const ListPayerAccountsResponseSchema: GenMessage<ListPayerAccountsResponse> = /*@__PURE__*/
3614
+ messageDesc(file_gc_v1_gc, 69);
3615
+
3616
+ /**
3617
+ * @generated from message blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount
3618
+ */
3619
+ export type ListPayerAccountsResponse_PayerAccount = Message<"blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount"> & {
3620
+ /**
3621
+ * @generated from field: string accountId = 1;
3622
+ */
3623
+ accountId: string;
3624
+
3625
+ /**
3626
+ * @generated from field: string accountName = 2;
3627
+ */
3628
+ accountName: string;
3629
+
3630
+ /**
3631
+ * @generated from field: string billingGroupId = 3;
3632
+ */
3633
+ billingGroupId: string;
3634
+
3635
+ /**
3636
+ * @generated from field: string segmentId = 4;
3637
+ */
3638
+ segmentId: string;
3639
+
3640
+ /**
3641
+ * @generated from field: blueapi.gc.v1.ListPayerAccountsResponse.PayerAccountStatus status = 5;
3642
+ */
3643
+ status: ListPayerAccountsResponse_PayerAccountStatus;
3644
+
3645
+ /**
3646
+ * @generated from field: string companyId = 6;
3647
+ */
3648
+ companyId: string;
3649
+
3650
+ /**
3651
+ * Detailed AWS verification results (best-effort) returned from the last VerifyAwsOnboarding call.
3652
+ * This is used by the UI to "resume" the onboarding flow and show which verification checks
3653
+ * passed/failed when a user comes back later (e.g., after stopping at verification).
3654
+ * Empty when verification hasn't been attempted yet or when no checks were persisted.
3655
+ *
3656
+ * @generated from field: repeated blueapi.gc.v1.VerifyAwsOnboardingResponse.AwsOnboardingFeatureCheck verificationChecks = 7;
3657
+ */
3658
+ verificationChecks: VerifyAwsOnboardingResponse_AwsOnboardingFeatureCheck[];
3659
+ };
3660
+
3661
+ /**
3662
+ * Describes the message blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount.
3663
+ * Use `create(ListPayerAccountsResponse_PayerAccountSchema)` to create a new message.
3664
+ */
3665
+ export const ListPayerAccountsResponse_PayerAccountSchema: GenMessage<ListPayerAccountsResponse_PayerAccount> = /*@__PURE__*/
3666
+ messageDesc(file_gc_v1_gc, 69, 0);
3667
+
3668
+ /**
3669
+ * @generated from enum blueapi.gc.v1.ListPayerAccountsResponse.PayerAccountStatus
3670
+ */
3671
+ export enum ListPayerAccountsResponse_PayerAccountStatus {
3672
+ /**
3673
+ * @generated from enum value: PAYER_ACCOUNT_STATUS_UNSPECIFIED = 0;
3674
+ */
3675
+ UNSPECIFIED = 0,
3676
+
3677
+ /**
3678
+ * @generated from enum value: PAYER_ACCOUNT_STATUS_ENABLED = 1;
3679
+ */
3680
+ ENABLED = 1,
3681
+
3682
+ /**
3683
+ * @generated from enum value: PAYER_ACCOUNT_STATUS_DISABLED = 2;
3684
+ */
3685
+ DISABLED = 2,
3686
+ }
3687
+
3688
+ /**
3689
+ * Describes the enum blueapi.gc.v1.ListPayerAccountsResponse.PayerAccountStatus.
3690
+ */
3691
+ export const ListPayerAccountsResponse_PayerAccountStatusSchema: GenEnum<ListPayerAccountsResponse_PayerAccountStatus> = /*@__PURE__*/
3692
+ enumDesc(file_gc_v1_gc, 69, 0);
3693
+
3694
+ /**
3695
+ * @generated from message blueapi.gc.v1.SetPayerAccountEnabledResponse
3696
+ */
3697
+ export type SetPayerAccountEnabledResponse = Message<"blueapi.gc.v1.SetPayerAccountEnabledResponse"> & {
3698
+ /**
3699
+ * Updated payer account row (same shape as list)
3700
+ *
3701
+ * @generated from field: blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount payerAccount = 1;
3702
+ */
3703
+ payerAccount?: ListPayerAccountsResponse_PayerAccount;
3704
+ };
3705
+
3706
+ /**
3707
+ * Describes the message blueapi.gc.v1.SetPayerAccountEnabledResponse.
3708
+ * Use `create(SetPayerAccountEnabledResponseSchema)` to create a new message.
3709
+ */
3710
+ export const SetPayerAccountEnabledResponseSchema: GenMessage<SetPayerAccountEnabledResponse> = /*@__PURE__*/
3711
+ messageDesc(file_gc_v1_gc, 70);
3712
+
3713
+ /**
3714
+ * @generated from message blueapi.gc.v1.GetPayerAccountStatusResponse
3715
+ */
3716
+ export type GetPayerAccountStatusResponse = Message<"blueapi.gc.v1.GetPayerAccountStatusResponse"> & {
3717
+ /**
3718
+ * @generated from field: blueapi.gc.v1.ListPayerAccountsResponse.PayerAccount payerAccount = 1;
3719
+ */
3720
+ payerAccount?: ListPayerAccountsResponse_PayerAccount;
3721
+ };
3722
+
3723
+ /**
3724
+ * Describes the message blueapi.gc.v1.GetPayerAccountStatusResponse.
3725
+ * Use `create(GetPayerAccountStatusResponseSchema)` to create a new message.
3726
+ */
3727
+ export const GetPayerAccountStatusResponseSchema: GenMessage<GetPayerAccountStatusResponse> = /*@__PURE__*/
3728
+ messageDesc(file_gc_v1_gc, 71);
3729
+
3730
+ /**
3731
+ * @generated from message blueapi.gc.v1.ListDraftPurchasePlansResponse
3732
+ */
3733
+ export type ListDraftPurchasePlansResponse = Message<"blueapi.gc.v1.ListDraftPurchasePlansResponse"> & {
3734
+ /**
3735
+ * @generated from field: repeated blueapi.gc.v1.DefaultPurchasePlan plans = 1;
3736
+ */
3737
+ plans: DefaultPurchasePlan[];
3738
+ };
3739
+
3740
+ /**
3741
+ * Describes the message blueapi.gc.v1.ListDraftPurchasePlansResponse.
3742
+ * Use `create(ListDraftPurchasePlansResponseSchema)` to create a new message.
3743
+ */
3744
+ export const ListDraftPurchasePlansResponseSchema: GenMessage<ListDraftPurchasePlansResponse> = /*@__PURE__*/
3745
+ messageDesc(file_gc_v1_gc, 72);
3746
+
3747
+ /**
3748
+ * @generated from message blueapi.gc.v1.DeleteDraftPurchasePlanResponse
3749
+ */
3750
+ export type DeleteDraftPurchasePlanResponse = Message<"blueapi.gc.v1.DeleteDraftPurchasePlanResponse"> & {
3751
+ /**
3752
+ * The ID of the deleted plan
3753
+ *
3754
+ * @generated from field: string planId = 1;
3755
+ */
3756
+ planId: string;
3757
+
3758
+ /**
3759
+ * Indicates if the plan was successfully deleted
3760
+ *
3761
+ * @generated from field: bool success = 2;
3762
+ */
3763
+ success: boolean;
3764
+ };
3765
+
3766
+ /**
3767
+ * Describes the message blueapi.gc.v1.DeleteDraftPurchasePlanResponse.
3768
+ * Use `create(DeleteDraftPurchasePlanResponseSchema)` to create a new message.
3769
+ */
3770
+ export const DeleteDraftPurchasePlanResponseSchema: GenMessage<DeleteDraftPurchasePlanResponse> = /*@__PURE__*/
3771
+ messageDesc(file_gc_v1_gc, 73);
3172
3772
 
3173
3773
  /**
3174
3774
  * @generated from enum blueapi.gc.v1.Provider
@@ -3374,19 +3974,19 @@ export const GuaranteedCommitments: GenService<{
3374
3974
  /**
3375
3975
  * WORK-IN-PROGRESS: Do not use. Retrieves detailed information about a specific commitment plan, including costs, savings projections, and commitment coverage.
3376
3976
  *
3377
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetCommitmentPlanDetails
3977
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetCommitmentsPlanDetails
3378
3978
  */
3379
- getCommitmentPlanDetails: {
3979
+ getCommitmentsPlanDetails: {
3380
3980
  methodKind: "unary";
3381
3981
  input: typeof GetCommitmentPlanDetailsRequestSchema;
3382
3982
  output: typeof CommitmentPlanDetailsSchema;
3383
3983
  },
3384
3984
  /**
3385
- * WORK-IN-PROGRESS: Do not use. Executes a commitment purchase plan, initiating the commitment purchase process.
3985
+ * WORK-IN-PROGRESS: Executes a commitment purchase plan, initiating the commitment purchase process.
3386
3986
  *
3387
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.CommitmentPlanApply
3987
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.CommitmentsPlanApply
3388
3988
  */
3389
- commitmentPlanApply: {
3989
+ commitmentsPlanApply: {
3390
3990
  methodKind: "unary";
3391
3991
  input: typeof CommitmentPlanApplyRequestSchema;
3392
3992
  output: typeof CommitmentPlanDetailsSchema;
@@ -3394,9 +3994,9 @@ export const GuaranteedCommitments: GenService<{
3394
3994
  /**
3395
3995
  * WORK-IN-PROGRESS: Do not use. Retrieves the three default GuaranteedCommitments commitment plans (High Savings, Balanced, Recommended) for the specified cloud provider.
3396
3996
  *
3397
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListDefaultCommitmentPlans
3997
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListDefaultCommitmentsPlan
3398
3998
  */
3399
- listDefaultCommitmentPlans: {
3999
+ listDefaultCommitmentsPlan: {
3400
4000
  methodKind: "unary";
3401
4001
  input: typeof ListDefaultCommitmentPlansRequestSchema;
3402
4002
  output: typeof ListDefaultCommitmentPlansResponseSchema;
@@ -3404,9 +4004,9 @@ export const GuaranteedCommitments: GenService<{
3404
4004
  /**
3405
4005
  * WORK-IN-PROGRESS: Do not use. Retrieves only the recommended GuaranteedCommitments commitment plan for the specified cloud provider.
3406
4006
  *
3407
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetRecommendedCommitmentPlan
4007
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetRecommendedCommitmentsPlan
3408
4008
  */
3409
- getRecommendedCommitmentPlan: {
4009
+ getRecommendedCommitmentsPlan: {
3410
4010
  methodKind: "unary";
3411
4011
  input: typeof GetRecommendedCommitmentPlanRequestSchema;
3412
4012
  output: typeof CommitmentPlanDetailsSchema;
@@ -3414,9 +4014,9 @@ export const GuaranteedCommitments: GenService<{
3414
4014
  /**
3415
4015
  * WORK-IN-PROGRESS: Do not use. Retrieves line items for a specific commitment plan.
3416
4016
  *
3417
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListCommitmentPlanLineItems
4017
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListCommitmentsPlanLineItems
3418
4018
  */
3419
- listCommitmentPlanLineItems: {
4019
+ listCommitmentsPlanLineItems: {
3420
4020
  methodKind: "unary";
3421
4021
  input: typeof ListCommitmentPlanLineItemsRequestSchema;
3422
4022
  output: typeof ListCommitmentPlanLineItemsResponseSchema;
@@ -3424,9 +4024,9 @@ export const GuaranteedCommitments: GenService<{
3424
4024
  /**
3425
4025
  * WORK-IN-PROGRESS: Do not use. Retrieves resource matches for a specific commitment plan.
3426
4026
  *
3427
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListCommitmentPlanResourceMatches
4027
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListCommitmentsPlanResourceMatches
3428
4028
  */
3429
- listCommitmentPlanResourceMatches: {
4029
+ listCommitmentsPlanResourceMatches: {
3430
4030
  methodKind: "unary";
3431
4031
  input: typeof ListCommitmentPlanResourceMatchesRequestSchema;
3432
4032
  output: typeof ListCommitmentPlanResourceMatchesResponseSchema;
@@ -3442,7 +4042,7 @@ export const GuaranteedCommitments: GenService<{
3442
4042
  output: typeof ListCommitmentsResponseSchema;
3443
4043
  },
3444
4044
  /**
3445
- * WORK-IN-PROGRESS: Do not use. Generates time-series chart data for commitment metrics over the specified time period.
4045
+ * WORK-IN-PROGRESS: Generates time-series chart data for commitment metrics over the specified time period.
3446
4046
  *
3447
4047
  * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetCommitmentsChart
3448
4048
  */
@@ -3451,6 +4051,16 @@ export const GuaranteedCommitments: GenService<{
3451
4051
  input: typeof GetCommitmentsChartRequestSchema;
3452
4052
  output: typeof CommitmentsChartResponseSchema;
3453
4053
  },
4054
+ /**
4055
+ * WORK-IN-PROGRESS: Generates utilization data for commitment over the active period.
4056
+ *
4057
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetCommitmentsUtilization
4058
+ */
4059
+ getCommitmentsUtilization: {
4060
+ methodKind: "unary";
4061
+ input: typeof GetCommitmentsUtilizationRequestSchema;
4062
+ output: typeof CommitmentsUtilizationResponseSchema;
4063
+ },
3454
4064
  /**
3455
4065
  * WORK-IN-PROGRESS: Do not use. Retrieves key performance metrics for cloud commitments.
3456
4066
  *
@@ -3482,34 +4092,44 @@ export const GuaranteedCommitments: GenService<{
3482
4092
  output: typeof GetResourceDailyUsageResponseSchema;
3483
4093
  },
3484
4094
  /**
3485
- * WORK-IN-PROGRESS: Do not use. Retrieves all segments for the specified organization and provider.
4095
+ * WORK-IN-PROGRESS: Retrieves purchase plan of a company.
4096
+ *
4097
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListPurchasePlansBySegment
4098
+ */
4099
+ listPurchasePlansBySegment: {
4100
+ methodKind: "unary";
4101
+ input: typeof ListPurchasePlansBySegmentRequestSchema;
4102
+ output: typeof ListPurchasePlansBySegmentResponseSchema;
4103
+ },
4104
+ /**
4105
+ * WORK-IN-PROGRESS: Saves a commitment purchase plan as draft.
3486
4106
  *
3487
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListSegments
4107
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.SaveCommitmentsPlanAsDraft
3488
4108
  */
3489
- listSegments: {
4109
+ saveCommitmentsPlanAsDraft: {
3490
4110
  methodKind: "unary";
3491
- input: typeof ListSegmentsRequestSchema;
3492
- output: typeof ListSegmentsResponseSchema;
4111
+ input: typeof SaveCommitmentsPlanAsDraftRequestSchema;
4112
+ output: typeof DefaultPurchasePlanSchema;
3493
4113
  },
3494
4114
  /**
3495
- * WORK-IN-PROGRESS: Retrieves detailed information about a specific segment.
4115
+ * WORK-IN-PROGRESS: Retrieves the drafted purchase plans
3496
4116
  *
3497
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetSegmentDetails
4117
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListDraftPurchasePlans
3498
4118
  */
3499
- getSegmentDetails: {
4119
+ listDraftPurchasePlans: {
3500
4120
  methodKind: "unary";
3501
- input: typeof GetSegmentDetailsRequestSchema;
3502
- output: typeof SegmentDetailsSchema;
4121
+ input: typeof ListDraftPurchasePlansRequestSchema;
4122
+ output: typeof ListDraftPurchasePlansResponseSchema;
3503
4123
  },
3504
4124
  /**
3505
- * WORK-IN-PROGRESS: Do not use. Retrieves default purchase plans for a specific segment.
4125
+ * WORK-IN-PROGRESS: Deletes a draft purchase plan.
3506
4126
  *
3507
- * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListDefaultPurchasePlans
4127
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.DeleteDraftPurchasePlan
3508
4128
  */
3509
- listDefaultPurchasePlans: {
4129
+ deleteDraftPurchasePlan: {
3510
4130
  methodKind: "unary";
3511
- input: typeof ListDefaultPurchasePlansRequestSchema;
3512
- output: typeof ListDefaultPurchasePlansResponseSchema;
4131
+ input: typeof DeleteDraftPurchasePlanRequestSchema;
4132
+ output: typeof DeleteDraftPurchasePlanResponseSchema;
3513
4133
  },
3514
4134
  /**
3515
4135
  * WORK-IN-PROGRESS: Registers a new child organization under the channel partner.
@@ -3567,6 +4187,44 @@ export const GuaranteedCommitments: GenService<{
3567
4187
  input: typeof VerifyAwsOnboardingRequestSchema;
3568
4188
  output: typeof VerifyAwsOnboardingResponseSchema;
3569
4189
  },
4190
+ /**
4191
+ * WORK-IN-PROGRESS: Retrieves the latest onboarding status for an MSP or a company under an MSP.
4192
+ * Retrieves the latest onboarding status for an MSP or a company under an MSP.
4193
+ *
4194
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetOnboardingStatus
4195
+ */
4196
+ getOnboardingStatus: {
4197
+ methodKind: "unary";
4198
+ input: typeof GetOnboardingStatusRequestSchema;
4199
+ output: typeof GetOnboardingStatusResponseSchema;
4200
+ },
4201
+ /**
4202
+ * WORK-IN-PROGRESS: Lists payer accounts associated with the organization.
4203
+ * Retrieves all payer accounts linked to the organization, including their status and associated segments.
4204
+ *
4205
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.ListPayerAccounts
4206
+ */
4207
+ listPayerAccounts: {
4208
+ methodKind: "unary";
4209
+ input: typeof ListPayerAccountsRequestSchema;
4210
+ output: typeof ListPayerAccountsResponseSchema;
4211
+ },
4212
+ /**
4213
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.SetPayerAccountEnabled
4214
+ */
4215
+ setPayerAccountEnabled: {
4216
+ methodKind: "unary";
4217
+ input: typeof SetPayerAccountEnabledRequestSchema;
4218
+ output: typeof SetPayerAccountEnabledResponseSchema;
4219
+ },
4220
+ /**
4221
+ * @generated from rpc blueapi.gc.v1.GuaranteedCommitments.GetPayerAccountStatus
4222
+ */
4223
+ getPayerAccountStatus: {
4224
+ methodKind: "unary";
4225
+ input: typeof GetPayerAccountStatusRequestSchema;
4226
+ output: typeof GetPayerAccountStatusResponseSchema;
4227
+ },
3570
4228
  }> = /*@__PURE__*/
3571
4229
  serviceDesc(file_gc_v1_gc, 0);
3572
4230