@alphauspkgs/blue-sdk-ts 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. package/README.md +32 -0
  2. package/admin/v1/admin_pb.js +239 -0
  3. package/admin/v1/admin_pb.ts +1604 -0
  4. package/admin/v1/client.js +9 -0
  5. package/admin/v1/client.ts +7 -0
  6. package/api/account_pb.js +22 -0
  7. package/api/account_pb.ts +132 -0
  8. package/api/accountgroup_pb.js +18 -0
  9. package/api/accountgroup_pb.ts +56 -0
  10. package/api/adjustment_pb.js +26 -0
  11. package/api/adjustment_pb.ts +102 -0
  12. package/api/apiclient_pb.js +16 -0
  13. package/api/apiclient_pb.ts +66 -0
  14. package/api/audit_pb.js +21 -0
  15. package/api/audit_pb.ts +70 -0
  16. package/api/aws/breakeven_pb.js +21 -0
  17. package/api/aws/breakeven_pb.ts +93 -0
  18. package/api/aws/calculator_pb.js +31 -0
  19. package/api/aws/calculator_pb.ts +138 -0
  20. package/api/aws/cost_pb.js +22 -0
  21. package/api/aws/cost_pb.ts +315 -0
  22. package/api/aws/recommendation_pb.js +36 -0
  23. package/api/aws/recommendation_pb.ts +338 -0
  24. package/api/aws/reduction_pb.js +31 -0
  25. package/api/aws/reduction_pb.ts +416 -0
  26. package/api/azure/cost_pb.js +21 -0
  27. package/api/azure/cost_pb.ts +268 -0
  28. package/api/azureea/cost_pb.js +16 -0
  29. package/api/azureea/cost_pb.ts +141 -0
  30. package/api/budget_pb.js +57 -0
  31. package/api/budget_pb.ts +293 -0
  32. package/api/costtag_pb.js +17 -0
  33. package/api/costtag_pb.ts +77 -0
  34. package/api/cover/accountaccess_pb.js +46 -0
  35. package/api/cover/accountaccess_pb.ts +334 -0
  36. package/api/cover/alert_pb.js +36 -0
  37. package/api/cover/alert_pb.ts +183 -0
  38. package/api/cover/applyrecommendation_pb.js +41 -0
  39. package/api/cover/applyrecommendation_pb.ts +133 -0
  40. package/api/cover/asset_pb.js +26 -0
  41. package/api/cover/asset_pb.ts +305 -0
  42. package/api/cover/attribute_pb.js +21 -0
  43. package/api/cover/attribute_pb.ts +58 -0
  44. package/api/cover/budget_pb.js +42 -0
  45. package/api/cover/budget_pb.ts +275 -0
  46. package/api/cover/costforecast_pb.js +16 -0
  47. package/api/cover/costforecast_pb.ts +81 -0
  48. package/api/cover/costgroup_pb.js +89 -0
  49. package/api/cover/costgroup_pb.ts +473 -0
  50. package/api/cover/discountplan_pb.js +31 -0
  51. package/api/cover/discountplan_pb.ts +461 -0
  52. package/api/cover/discountrecommendation_pb.js +96 -0
  53. package/api/cover/discountrecommendation_pb.ts +500 -0
  54. package/api/cover/insightreport_pb.js +26 -0
  55. package/api/cover/insightreport_pb.ts +167 -0
  56. package/api/cover/optimizationrecommendation_pb.js +262 -0
  57. package/api/cover/optimizationrecommendation_pb.ts +1964 -0
  58. package/api/cover/recommendation/aws_pb.js +407 -0
  59. package/api/cover/recommendation/aws_pb.ts +2418 -0
  60. package/api/cover/recommendation/azurecsp_pb.js +16 -0
  61. package/api/cover/recommendation/azurecsp_pb.ts +27 -0
  62. package/api/cover/recommendation/gcp_pb.js +27 -0
  63. package/api/cover/recommendation/gcp_pb.ts +91 -0
  64. package/api/cover/recommendation/octoaws_pb.js +22 -0
  65. package/api/cover/recommendation/octoaws_pb.ts +55 -0
  66. package/api/cover/recommendation/octoazurecsp_pb.js +16 -0
  67. package/api/cover/recommendation/octoazurecsp_pb.ts +27 -0
  68. package/api/cover/recommendation/octogcp_pb.js +16 -0
  69. package/api/cover/recommendation/octogcp_pb.ts +27 -0
  70. package/api/cover/recommendation/recommendation_pb.js +27 -0
  71. package/api/cover/recommendation/recommendation_pb.ts +190 -0
  72. package/api/cover/rightsizingrecommendation_pb.js +21 -0
  73. package/api/cover/rightsizingrecommendation_pb.ts +133 -0
  74. package/api/cover/unitcost_pb.js +82 -0
  75. package/api/cover/unitcost_pb.ts +576 -0
  76. package/api/cover/user_pb.js +26 -0
  77. package/api/cover/user_pb.ts +330 -0
  78. package/api/cover/view_pb.js +53 -0
  79. package/api/cover/view_pb.ts +393 -0
  80. package/api/coverage_pb.js +31 -0
  81. package/api/coverage_pb.ts +132 -0
  82. package/api/forecast_pb.js +61 -0
  83. package/api/forecast_pb.ts +346 -0
  84. package/api/gcp/cost_pb.js +16 -0
  85. package/api/gcp/cost_pb.ts +128 -0
  86. package/api/grouprootuser_pb.js +21 -0
  87. package/api/grouprootuser_pb.ts +390 -0
  88. package/api/invoice_pb.js +96 -0
  89. package/api/invoice_pb.ts +905 -0
  90. package/api/keyvalue_pb.js +21 -0
  91. package/api/keyvalue_pb.ts +72 -0
  92. package/api/notification_pb.js +46 -0
  93. package/api/notification_pb.ts +232 -0
  94. package/api/pricing/details_pb.js +17 -0
  95. package/api/pricing/details_pb.ts +172 -0
  96. package/api/rbac_pb.js +31 -0
  97. package/api/rbac_pb.ts +142 -0
  98. package/api/ripple/accessgroup_pb.js +16 -0
  99. package/api/ripple/accessgroup_pb.ts +48 -0
  100. package/api/ripple/billinggroup_pb.js +16 -0
  101. package/api/ripple/billinggroup_pb.ts +154 -0
  102. package/api/ripple/customfield_pb.js +16 -0
  103. package/api/ripple/customfield_pb.ts +49 -0
  104. package/api/ripple/customizedbillingservice_pb.js +175 -0
  105. package/api/ripple/customizedbillingservice_pb.ts +455 -0
  106. package/api/ripple/duedate_pb.js +16 -0
  107. package/api/ripple/duedate_pb.ts +58 -0
  108. package/api/ripple/exchangerate_pb.js +41 -0
  109. package/api/ripple/exchangerate_pb.ts +205 -0
  110. package/api/ripple/invoicelayout_pb.js +46 -0
  111. package/api/ripple/invoicelayout_pb.ts +547 -0
  112. package/api/ripple/org_pb.js +16 -0
  113. package/api/ripple/org_pb.ts +51 -0
  114. package/api/ripple/payer_pb.js +18 -0
  115. package/api/ripple/payer_pb.ts +60 -0
  116. package/api/ripple/reseller_pb.js +21 -0
  117. package/api/ripple/reseller_pb.ts +168 -0
  118. package/api/ripple/rounding_pb.js +46 -0
  119. package/api/ripple/rounding_pb.ts +69 -0
  120. package/api/ripple/untaggedgroup_pb.js +28 -0
  121. package/api/ripple/untaggedgroup_pb.ts +151 -0
  122. package/api/ripple/v1/accountsupportplan_pb.js +59 -0
  123. package/api/ripple/v1/accountsupportplan_pb.ts +98 -0
  124. package/api/ripple/v1/adjustmententry_pb.js +31 -0
  125. package/api/ripple/v1/adjustmententry_pb.ts +275 -0
  126. package/api/ripple/v1/dashboard_pb.js +61 -0
  127. package/api/ripple/v1/dashboard_pb.ts +661 -0
  128. package/api/ripple/v1/export_pb.js +16 -0
  129. package/api/ripple/v1/export_pb.ts +49 -0
  130. package/api/ripple/v1/invoiceservicediscounts_pb.js +48 -0
  131. package/api/ripple/v1/invoiceservicediscounts_pb.ts +298 -0
  132. package/api/ripple/yearmonth_pb.js +16 -0
  133. package/api/ripple/yearmonth_pb.ts +35 -0
  134. package/api/user_pb.js +26 -0
  135. package/api/user_pb.ts +124 -0
  136. package/api/utilization_pb.js +21 -0
  137. package/api/utilization_pb.ts +78 -0
  138. package/api/wave/adjustment_pb.js +16 -0
  139. package/api/wave/adjustment_pb.ts +105 -0
  140. package/api/wave/budget_pb.js +27 -0
  141. package/api/wave/budget_pb.ts +122 -0
  142. package/billing/v1/billing_pb.js +952 -0
  143. package/billing/v1/billing_pb.ts +7570 -0
  144. package/billing/v1/client.js +9 -0
  145. package/billing/v1/client.ts +7 -0
  146. package/conn/conn.js +38 -0
  147. package/conn/conn.ts +46 -0
  148. package/cost/v1/client.js +9 -0
  149. package/cost/v1/client.ts +7 -0
  150. package/cost/v1/cost_pb.js +721 -0
  151. package/cost/v1/cost_pb.ts +5845 -0
  152. package/cover/v1/client.js +9 -0
  153. package/cover/v1/client.ts +7 -0
  154. package/cover/v1/cover_pb.js +2085 -0
  155. package/cover/v1/cover_pb.ts +12883 -0
  156. package/flow/v1/client.js +9 -0
  157. package/flow/v1/client.ts +7 -0
  158. package/flow/v1/flow_pb.js +265 -0
  159. package/flow/v1/flow_pb.ts +2496 -0
  160. package/google/api/annotations_pb.js +29 -0
  161. package/google/api/annotations_pb.ts +39 -0
  162. package/google/api/auth_pb.js +47 -0
  163. package/google/api/auth_pb.ts +295 -0
  164. package/google/api/backend_pb.js +31 -0
  165. package/google/api/backend_pb.ts +97 -0
  166. package/google/api/billing_pb.js +32 -0
  167. package/google/api/billing_pb.ts +104 -0
  168. package/google/api/client_pb.js +101 -0
  169. package/google/api/client_pb.ts +114 -0
  170. package/google/api/config_change_pb.js +71 -0
  171. package/google/api/config_change_pb.ts +161 -0
  172. package/google/api/consumer_pb.js +73 -0
  173. package/google/api/consumer_pb.ts +156 -0
  174. package/google/api/context_pb.js +31 -0
  175. package/google/api/context_pb.ts +105 -0
  176. package/google/api/control_pb.js +26 -0
  177. package/google/api/control_pb.ts +52 -0
  178. package/google/api/distribution_pb.js +58 -0
  179. package/google/api/distribution_pb.ts +388 -0
  180. package/google/api/documentation_pb.js +36 -0
  181. package/google/api/documentation_pb.ts +238 -0
  182. package/google/api/endpoint_pb.js +27 -0
  183. package/google/api/endpoint_pb.ts +105 -0
  184. package/google/api/field_behavior_pb.js +103 -0
  185. package/google/api/field_behavior_pb.ts +119 -0
  186. package/google/api/http_pb.js +36 -0
  187. package/google/api/http_pb.ts +420 -0
  188. package/google/api/httpbody_pb.js +27 -0
  189. package/google/api/httpbody_pb.ts +103 -0
  190. package/google/api/label_pb.js +56 -0
  191. package/google/api/label_pb.ts +97 -0
  192. package/google/api/launch_stage_pb.js +92 -0
  193. package/google/api/launch_stage_pb.ts +105 -0
  194. package/google/api/log_pb.js +27 -0
  195. package/google/api/log_pb.ts +86 -0
  196. package/google/api/logging_pb.js +32 -0
  197. package/google/api/logging_pb.ts +124 -0
  198. package/google/api/metric_pb.js +128 -0
  199. package/google/api/metric_pb.ts +322 -0
  200. package/google/api/monitored_resource_pb.js +38 -0
  201. package/google/api/monitored_resource_pb.ts +188 -0
  202. package/google/api/monitoring_pb.js +32 -0
  203. package/google/api/monitoring_pb.ts +130 -0
  204. package/google/api/quota_pb.js +37 -0
  205. package/google/api/quota_pb.ts +351 -0
  206. package/google/api/resource_pb.js +118 -0
  207. package/google/api/resource_pb.ts +410 -0
  208. package/google/api/service_pb.js +45 -0
  209. package/google/api/service_pb.ts +302 -0
  210. package/google/api/source_info_pb.js +27 -0
  211. package/google/api/source_info_pb.ts +51 -0
  212. package/google/api/system_parameter_pb.js +36 -0
  213. package/google/api/system_parameter_pb.ts +157 -0
  214. package/google/api/usage_pb.js +32 -0
  215. package/google/api/usage_pb.ts +141 -0
  216. package/google/longrunning/operations_pb.js +90 -0
  217. package/google/longrunning/operations_pb.ts +434 -0
  218. package/google/rpc/code_pb.js +244 -0
  219. package/google/rpc/code_pb.ts +268 -0
  220. package/google/rpc/context/attribute_context_pb.js +57 -0
  221. package/google/rpc/context/attribute_context_pb.ts +532 -0
  222. package/google/rpc/error_details_pb.js +92 -0
  223. package/google/rpc/error_details_pb.ts +513 -0
  224. package/google/rpc/status_pb.js +27 -0
  225. package/google/rpc/status_pb.ts +74 -0
  226. package/iam/v1/client.js +9 -0
  227. package/iam/v1/client.ts +8 -0
  228. package/iam/v1/iam_pb.js +285 -0
  229. package/iam/v1/iam_pb.ts +1698 -0
  230. package/kvstore/v1/kvstore_pb.js +40 -0
  231. package/kvstore/v1/kvstore_pb.ts +155 -0
  232. package/operations/v1/operations_pb.js +52 -0
  233. package/operations/v1/operations_pb.ts +235 -0
  234. package/org/v1/client.js +9 -0
  235. package/org/v1/client.ts +7 -0
  236. package/org/v1/org_pb.js +61 -0
  237. package/org/v1/org_pb.ts +321 -0
  238. package/package.json +22 -0
  239. package/preferences/v1/client.js +9 -0
  240. package/preferences/v1/client.ts +8 -0
  241. package/preferences/v1/preferences_pb.js +29 -0
  242. package/preferences/v1/preferences_pb.ts +63 -0
  243. package/pricing/v1/client.js +9 -0
  244. package/pricing/v1/client.ts +7 -0
  245. package/pricing/v1/pricing_pb.js +60 -0
  246. package/pricing/v1/pricing_pb.ts +311 -0
  247. package/prism/v1/client.js +9 -0
  248. package/prism/v1/client.ts +7 -0
  249. package/prism/v1/prism_pb.js +250 -0
  250. package/prism/v1/prism_pb.ts +1396 -0
  251. package/protoc-gen-openapiv2/options/annotations_pb.js +58 -0
  252. package/protoc-gen-openapiv2/options/annotations_pb.ts +72 -0
  253. package/protoc-gen-openapiv2/options/openapiv2_pb.js +253 -0
  254. package/protoc-gen-openapiv2/options/openapiv2_pb.ts +1313 -0
  255. package/protos/entity_pb.js +17 -0
  256. package/protos/entity_pb.ts +49 -0
  257. package/protos/message_pb.js +16 -0
  258. package/protos/message_pb.ts +40 -0
  259. package/protos/operation_pb.js +33 -0
  260. package/protos/operation_pb.ts +198 -0
  261. package/tsconfig.json +12 -0
  262. package/vortex/v1/client.js +9 -0
  263. package/vortex/v1/client.ts +7 -0
  264. package/vortex/v1/vortex_pb.js +65 -0
  265. package/vortex/v1/vortex_pb.ts +280 -0
@@ -0,0 +1,952 @@
1
+ "use strict";
2
+ // @generated by protoc-gen-es v2.7.0 with parameter "target=ts"
3
+ // @generated from file billing/v1/billing.proto (package blueapi.billing.v1, syntax proto3)
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CreateBillingGroupInvoiceServiceDiscountsRequestSchema = exports.RemoveAccountInvoiceServiceDiscountsRequestSchema = exports.DeleteAccountInvoiceServiceDiscountsRequestSchema = exports.UpdateAccountInvoiceServiceDiscountsResponseSchema = exports.UpdateAccountInvoiceServiceDiscountsRequestSchema = exports.CreateAccountInvoiceServiceDiscountsResponseSchema = exports.CreateAccountInvoiceServiceDiscountsRequestSchema = exports.AccountServiceDiscountsSchema = exports.AccountInvoiceServiceDiscountsSchema = exports.ListAccountInvoiceServiceDiscountsRequestSchema = exports.InvoiceConnectedBillingGroupsSchema = exports.UpdateInvoiceDisplaySettingsRequestSchema = exports.GetInvoiceDisplaySettingsResponseSchema = exports.GetInvoiceDisplaySettingsRequestSchema = exports.ListInvoiceTemplateResponseSchema = exports.UpdateBillingGroupInvoiceTemplateRequestSchema = exports.ListInvoiceTemplateRequestSchema = exports.InvoiceServiceDiscountsSchema = exports.GetInvoiceServiceDiscountsRequestSchema = exports.ListInvoiceServiceDiscountsRequestSchema = exports.ReadServiceDiscountsServicesRequestSchema = exports.ExportInvoiceFileResponseSchema = exports.ExportInvoiceFileRequestSchema = exports.GetInvoiceRequestSchema = exports.UsageCostsDriftSchema = exports.ListUsageCostsDriftRequestSchema = exports.ListAwsDailyRunHistoryRequestSchema = exports.AwsDailyRunHistory_Account_HistorySchema = exports.AwsDailyRunHistory_AccountSchema = exports.AwsDailyRunHistorySchema = exports.GetAccessGroupResponseSchema = exports.GetAccessGroupRequestSchema = exports.AccessGroupSchema = exports.GetBillingGroupResponseSchema = exports.GetBillingGroupRequestSchema = exports.CreateBillingGroupRequestInvoiceVendorSchema = exports.CreateBillingGroupRequestInvoiceSchema = exports.CreateBillingGroupMergedRequestSchema = exports.AzureOptionsSchema = exports.VendorAccountsSchema = exports.RegisterAccountsSchema = exports.AccountOptionsSchema = exports.AwsOptionsSchema = exports.CreateBillingGroupRequestSchema = exports.ListBillingGroupsRequestSchema = exports.BillingGroupVendoredInvoiceSettingSchema = exports.BillingGroupInvoiceSettingsSchema = exports.BillingGroupAdditionalItemsSchema = exports.BillingGroupSchema = exports.file_billing_v1_billing = void 0;
7
+ exports.ReadCustomizedBillingServicesRequestSchema = exports.ReadUntaggedGroupsRequestSchema = exports.DeleteAdjustmentConfigRequestSchema = exports.UpdateAdjustmentConfigRequestSchema = exports.CreateAdjustmentConfigRequestSchema = exports.GetAdjustmentConfigRequestSchema = exports.ResourceAccountSchema = exports.ListAccountResourcesRequestSchema = exports.RestoreAllocateAdjustmentEntryRequestSchema = exports.RestoreSplitAdjustmentEntryRequestSchema = exports.AllocateAdjustmentEntryRequest_AccountConfigSchema = exports.AllocateAdjustmentEntryRequestSchema = exports.SplitAdjustmentEntryRequestSchema = exports.RestoreAdjustmentEntryRequestSchema = exports.ApplyAdjustmentEntryRequest_ApplySettingSchema = exports.ApplyAdjustmentEntryRequestSchema = exports.GetAdjustmentEntryRequestSchema = exports.ReadAdjustmentEntriesRequest_AdjustmentEntriesRequestAwsOptionsSchema = exports.ReadAdjustmentEntriesRequestSchema = exports.ReadInvoiceAdjustmentsRequestSchema = exports.AbcAccountSchema = exports.AbcBillingGroupSchema = exports.ListAbcBillingGroupAccountsRequestSchema = exports.ListAbcBillingGroupsRequestSchema = exports.ListInvoiceResponseSchema = exports.ListInvoiceRequestSchema = exports.DeleteAccessGroupRequestSchema = exports.UpdateAccessGroupRequestSchema = exports.CreateAccessGroupRequestSchema = exports.ListAccessGroupsRequestSchema = exports.ListExchangeRatesResponseSchema = exports.SetBillingGroupExchangeRateRequestSchema = exports.SetPayerExchangeRateRequestSchema = exports.SetGlobalExchangeRateRequestSchema = exports.ListExchangeRatesRequestSchema = exports.GetBillingSettingResponseSchema = exports.GetBillingSettingRequestSchema = exports.DeleteResellerRequestSchema = exports.UpdateResellerRequestSchema = exports.GetResellerRequestSchema = exports.ListResellersRequestSchema = exports.CreateResellerRequestSchema = exports.UpdateInvoicePreviewsRequestSchema = exports.ListInvoiceStatusRequestSchema = exports.GetInvoiceStatusRequestSchema = exports.CreateInvoiceRequestSchema = exports.DeleteBillingGroupInvoiceServiceDiscountsRequestSchema = exports.UpdateBillingGroupInvoiceServiceDiscountsResponseSchema = exports.UpdateBillingGroupInvoiceServiceDiscountsRequestSchema = exports.CreateBillingGroupInvoiceServiceDiscountsResponseSchema = void 0;
8
+ exports.UpdateNonTagGroupToBillingGroupRequestSchema = exports.SaveTagInvoiceSettingResponseSchema = exports.NonTagSettingSchema = exports.TagSchema = exports.TagSettingSchema = exports.AddTagsToBillingGroupRequestSchema = exports.AccountToAddSchema = exports.AddAccountToBillingGroupRequestSchema = exports.DeleteBillingGroupCustomFieldRequestSchema = exports.AddBillingGroupCustomFieldRequestSchema = exports.GetBillingGroupInvoiceServiceDiscountsResponseSchema = exports.GetBillingGroupInvoiceServiceDiscountsRequestSchema = exports.ExportInvoiceSettingCsvResponseSchema = exports.ExportInvoiceSettingCsvRequestSchema = exports.ExportBillingGroupCsvResponseSchema = exports.ExportBillingGroupCsvRequestSchema = exports.ExportBillingGroupInvoiceServiceDiscountsRequestSchema = exports.ExportAccountInvoiceServiceDiscountsRequestSchema = exports.ExportServiceDiscountsRequestSchema = exports.TagsAddingSettingSchema = exports.GetTagsAddingSettingRequestSchema = exports.UpdateTagsAddingSettingRequestSchema = exports.GetFreeFormatResponseSchema = exports.GetFreeFormatRequestSchema = exports.DeleteFreeFormatRequestSchema = exports.FreeFormItemSchema = exports.CreateFreeFormatRequestSchema = exports.ListCustomFieldRequestSchema = exports.DeleteCustomFieldRequestSchema = exports.UpdateCustomFieldRequestSchema = exports.CreateCustomFieldRequestSchema = exports.ListBillingGroupCustomFieldResponseSchema = exports.ListBillingGroupCustomFieldRequestSchema = exports.BillingGroupCustomFieldSchema = exports.CustomFieldSchema = exports.GetTagsRequestSchema = exports.TagsSchema = exports.TagDataSchema = exports.DeleteInvoiceServiceDiscountsRequestSchema = exports.UpdateInvoiceServiceDiscountsRequestSchema = exports.CreateInvoiceServiceDiscountsRequestSchema = exports.DeleteCustomizedBillingServiceBillingGroupRequestSchema = exports.SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServiceBillingSettingSchema = exports.SetCustomizedBillingServiceBillingGroupRequestSchema = exports.GetCustomizedBillingServiceBillingGroupResponseSchema = exports.GetCustomizedBillingServiceBillingGroupRequestSchema = exports.DeleteCustomizedBillingServiceRequestSchema = exports.UpdateCustomizedBillingServiceRequestSchema = exports.CreateCustomizedBillingServiceRequestSchema = exports.GetCustomizedBillingServiceRequestSchema = void 0;
9
+ exports.Billing = exports.ConvertInvoiceToPdfResponseSchema = exports.ConvertInvoiceToPdfRequestSchema = exports.UpdateInvoiceExchangeRateRequestSchema = exports.CsvSetting_ColumnSchema = exports.CsvSettingSchema = exports.GetCsvSettingsRequestSchema = exports.CreditSchema = exports.GetCreditsRequestSchema = exports.GetBillingGroupAnnouncementsResponseSchema = exports.GetBillingGroupAnnouncementsRequestSchema = exports.AnnouncementSchema = exports.DeleteAnnouncementRequestSchema = exports.UpdateAnnouncementDateRequestSchema = exports.UpdateAnnouncementsStatusRequestSchema = exports.UpdateAnnouncementRequestSchema = exports.CreateAnnouncementRequestSchema = exports.GetAnnouncementsRequestSchema = exports.UpdateBillingGroupAccountSupportPlanRequestSchema = exports.GetBillingGroupAccountSupportPlanResponseSchema = exports.GetBillingGroupAccountSupportPlanRequestSchema = exports.DeleteBillingGroupRequestSchema = exports.UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceBillingSettingSchema = exports.UpdateBillingGroupAdditionalChargesRequestSchema = exports.UpdateBillingGroupResellerChargesRequestSchema = exports.UpdateBillingGroupInvoiceSettingsRequestSchema = exports.UpdateBillingGroupLinkedResourcesRequestSchema = exports.UpdateBillingGroupFreeFormatRequestSchema = exports.UpdateBillingGroupCustomFieldsRequestSchema = exports.UpdateBillingGroupBasicInformationRequestSchema = exports.BasicInformationSchema = exports.InvoiceSettingsSchema = exports.SaveInvoiceSettingsRequestSchema = exports.NonTagGroupSettingSchema = void 0;
10
+ const codegenv2_1 = require("@bufbuild/protobuf/codegenv2");
11
+ const account_pb_1 = require("../../api/account_pb");
12
+ const invoice_pb_1 = require("../../api/invoice_pb");
13
+ const costtag_pb_1 = require("../../api/costtag_pb");
14
+ const accessgroup_pb_1 = require("../../api/ripple/accessgroup_pb");
15
+ const billinggroup_pb_1 = require("../../api/ripple/billinggroup_pb");
16
+ const reseller_pb_1 = require("../../api/ripple/reseller_pb");
17
+ const yearmonth_pb_1 = require("../../api/ripple/yearmonth_pb");
18
+ const rounding_pb_1 = require("../../api/ripple/rounding_pb");
19
+ const invoicelayout_pb_1 = require("../../api/ripple/invoicelayout_pb");
20
+ const duedate_pb_1 = require("../../api/ripple/duedate_pb");
21
+ const exchangerate_pb_1 = require("../../api/ripple/exchangerate_pb");
22
+ const untaggedgroup_pb_1 = require("../../api/ripple/untaggedgroup_pb");
23
+ const customizedbillingservice_pb_1 = require("../../api/ripple/customizedbillingservice_pb");
24
+ const invoiceservicediscounts_pb_1 = require("../../api/ripple/v1/invoiceservicediscounts_pb");
25
+ const accountsupportplan_pb_1 = require("../../api/ripple/v1/accountsupportplan_pb");
26
+ const adjustmententry_pb_1 = require("../../api/ripple/v1/adjustmententry_pb");
27
+ const adjustment_pb_1 = require("../../api/adjustment_pb");
28
+ const adjustment_pb_2 = require("../../api/wave/adjustment_pb");
29
+ const annotations_pb_1 = require("../../google/api/annotations_pb");
30
+ const field_behavior_pb_1 = require("../../google/api/field_behavior_pb");
31
+ const wkt_1 = require("@bufbuild/protobuf/wkt");
32
+ const annotations_pb_2 = require("../../protoc-gen-openapiv2/options/annotations_pb");
33
+ /**
34
+ * Describes the file billing/v1/billing.proto.
35
+ */
36
+ exports.file_billing_v1_billing = (0, codegenv2_1.fileDesc)("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SEmJsdWVhcGkuYmlsbGluZy52MSKOBAoMQmlsbGluZ0dyb3VwEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYByABKAkSDAoEdHlwZRgMIAEoCRI+ChBiaWxsaW5nR3JvdXBJbmZvGAogASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8SOgoOYWNjb3VudE9wdGlvbnMYCCABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSJgoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50EiIKBHRhZ3MYBiADKAsyFC5ibHVlYXBpLmFwaS5Db3N0VGFnEkgKD2ludm9pY2VTZXR0aW5ncxgFIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSSAoPYWRkaXRpb25hbEl0ZW1zGAsgASgLMi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIyCgphd3NPcHRpb25zGAkgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMioAEKG0JpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIpCgNhd3MYASADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKwoFYXp1cmUYAiADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKQoDZ2NwGAMgAygLMhwuYmx1ZWFwaS5hcGkuQWRkaXRpb25hbEl0ZW1zIu4BChtCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQwoDYXdzGAEgASgLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cFZlbmRvcmVkSW52b2ljZVNldHRpbmcSRQoFYXp1cmUYAiABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxJDCgNnY3AYAyABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZyLTAwoiQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJIpIBChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAkilAQKGUNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIUCgxiaWxsaW5nVGl0bGUYBCABKAkSEwoLcGhvbmVOdW1iZXIYBSABKAkSEgoKcG9zdGFsQ29kZRgGIAEoCRIPCgdhZGRyZXNzGAcgASgJEhAKCHBlcnNvbmFsGAggASgJEg8KB3JlbWFya3MYCSABKAkSEQoJcHJvamVjdElkGAogASgJEhAKCGxhbmd1YWdlGAsgASgJEhMKC2Rpc3BsYXlDb3N0GAwgASgJEhgKEGV4Y2hhbmdlUmF0ZVR5cGUYDSABKAkSOgoOYWNjb3VudE9wdGlvbnMYDyABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSRgoIaW52b2ljZXMYDiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USMgoKYXdzT3B0aW9ucxgQIAEoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NPcHRpb25zEgwKBGNpdHkYESABKAkSEgoKcHJlZmVjdHVyZRgSIAEoCRIPCgdjb3VudHJ5GBMgASgJIjUKCkF3c09wdGlvbnMSFgoOdXNlUHJvRm9ybWFDdXIYASABKAgSDwoHcGF5ZXJJZBgCIAEoCSKrAQoOQWNjb3VudE9wdGlvbnMSMQoDYXdzGAEgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMQoDZ2NwGAIgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMwoFYXp1cmUYAyABKAsyJC5ibHVlYXBpLmJpbGxpbmcudjEuUmVnaXN0ZXJBY2NvdW50cyI2ChBSZWdpc3RlckFjY291bnRzEg8KB2VuYWJsZWQYASABKAgSEQoJYWNjb3VudElkGAIgASgJIlQKDlZlbmRvckFjY291bnRzEg4KBnZlbmRvchgBIAEoCRIyCghhY2NvdW50cxgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50VG9BZGQiYAoMQXp1cmVPcHRpb25zEhUKDXJlc291cmNlR3JvdXAYASABKAgSGwoTYXBwbHlQY0Vhcm5lZENyZWRpdBgCIAEoCBIcChRhcHBseUNhbXBhaWduUHJpY2luZxgDIAEoCCKqBwofQ3JlYXRlQmlsbGluZ0dyb3VwTWVyZ2VkUmVxdWVzdBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhMKC2NvbXBhbnlOYW1lGAMgASgJEhQKDGJpbGxpbmdUaXRsZRgEIAEoCRITCgtwaG9uZU51bWJlchgFIAEoCRISCgpwb3N0YWxDb2RlGAYgASgJEg8KB2FkZHJlc3MYByABKAkSEAoIcGVyc29uYWwYCCABKAkSDwoHcmVtYXJrcxgJIAEoCRIRCglwcm9qZWN0SWQYCiABKAkSEAoIbGFuZ3VhZ2UYCyABKAkSEwoLZGlzcGxheUNvc3QYDCABKAkSGAoQZXhjaGFuZ2VSYXRlVHlwZRgNIAEoCRI6Cg5hY2NvdW50T3B0aW9ucxgPIAEoCzIiLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50T3B0aW9ucxJGCghpbnZvaWNlcxgOIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRIyCgphd3NPcHRpb25zGBAgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMSDAoEY2l0eRgRIAEoCRISCgpwcmVmZWN0dXJlGBIgASgJEg8KB2NvdW50cnkYEyABKAkSGQoRaW52b2ljZVRlbXBsYXRlSWQYFCABKAkSMwoLdGFnU2V0dGluZ3MYFSADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGBYgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmcSOgoOdmVuZG9yQWNjb3VudHMYFyADKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuVmVuZG9yQWNjb3VudHMSWwoMY3VzdG9tRmllbGRzGBggAygLMkUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZFJlcXVlc3QuQ3VzdG9tRmllbGRzRW50cnkSNgoMYXp1cmVPcHRpb25zGBkgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkF6dXJlT3B0aW9ucxozChFDdXN0b21GaWVsZHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIv8BCiBDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRJHCgNhd3MYASABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISSQoFYXp1cmUYAiABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISRwoDZ2NwGAMgASgLMjouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlVmVuZG9yItcDCiZDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZVZlbmRvchIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJImMKFkdldEJpbGxpbmdHcm91cFJlcXVlc3QSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUQoXR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2USNgoMYmlsbGluZ0dyb3VwGAEgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCKWAQoLQWNjZXNzR3JvdXASFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIXCg9hY2Nlc3NHcm91cE5hbWUYAiABKAkSHgoWYWNjZXNzR3JvdXBEZXNjcmlwdGlvbhgDIAEoCRI3Cg1iaWxsaW5nR3JvdXBzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCJeChVHZXRBY2Nlc3NHcm91cFJlcXVlc3QSFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIuCgpmaWVsZF9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJOChZHZXRBY2Nlc3NHcm91cFJlc3BvbnNlEjQKC2FjY2Vzc0dyb3VwGAEgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY2Vzc0dyb3VwIq8CChJBd3NEYWlseVJ1bkhpc3RvcnkSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDQoFbW9udGgYAyABKAkSQAoIYWNjb3VudHMYBCADKAsyLi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQalAEKB0FjY291bnQSEQoJYWNjb3VudElkGAEgASgJEkcKB2hpc3RvcnkYAiADKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQuSGlzdG9yeRotCgdIaXN0b3J5EhEKCXRpbWVzdGFtcBgBIAEoCRIPCgd0cmlnZ2VyGAIgASgJIj8KHUxpc3RBd3NEYWlseVJ1bkhpc3RvcnlSZXF1ZXN0Eg0KBW1vbnRoGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiVgoaTGlzdFVzYWdlQ29zdHNEcmlmdFJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhkKEWJpbGxpbmdJbnRlcm5hbElkGAIgASgJEg0KBW1vbnRoGAMgASgJIoYBCg9Vc2FnZUNvc3RzRHJpZnQSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDwoHYWNjb3VudBgDIAEoCRIQCghzbmFwc2hvdBgEIAEoARIPCgdjdXJyZW50GAUgASgBEgwKBGRpZmYYBiABKAEiMgoRR2V0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIPCgdncm91cElkGAIgASgJIjkKGEV4cG9ydEludm9pY2VGaWxlUmVxdWVzdBIMCgRkYXRlGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiKAoZRXhwb3J0SW52b2ljZUZpbGVSZXNwb25zZRILCgN1cmwYASABKAkiNQojUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIiQKIkxpc3RJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QiXgohR2V0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJEi0KCWZpZWxkTWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siagoXSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdjcmVhdGVkGAQgASgJEg8KB3VwZGF0ZWQYBSABKAkiHAoaTGlzdEludm9pY2VUZW1wbGF0ZVJlcXVlc3QiXQooVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIfChFpbnZvaWNlVGVtcGxhdGVJZBgCIAEoCUIE4kEBAiKeAgobTGlzdEludm9pY2VUZW1wbGF0ZVJlc3BvbnNlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHY3JlYXRlZBgEIAEoCRIPCgd1cGRhdGVkGAUgASgJEhkKEW51bWJlck9mQ29ubmVjdGVkGAYgASgFElAKFWNvbm5lY3RlZEJpbGxpbmdHcm91cBgHIAMoCzIxLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlQ29ubmVjdGVkQmlsbGluZ0dyb3VwcxJBCghpbnZvaWNlcxgIIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiIgogR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QiSAohR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1Jlc3BvbnNlEiMKG3Nob3dSSVNQVXBmcm9udFRpbWVJbnRlcnZhbBgBIAEoCCKsAQojVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QSVQoHc2V0dGluZxgBIAMoCzJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdC5TZXR0aW5nRW50cnkaLgoMU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEibAodSW52b2ljZUNvbm5lY3RlZEJpbGxpbmdHcm91cHMSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCSI8CilMaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIocBCh5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDwoHYWNjb3VudBgCIAEoCRJIChBzZXJ2aWNlRGlzY291bnRzGAMgASgLMi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIjgKF0FjY291bnRTZXJ2aWNlRGlzY291bnRzEgoKAmlkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCSJ9CitDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMibQosQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMifQorVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIm0KLFVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIj4KK0RlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSJ9CitSZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMiTwowQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSCgoCaWQYAiABKAkiPwoxQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSJPCjBVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIKCgJpZBgCIAEoCSI/CjFVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEgoKAmlkGAEgASgJIkMKMERlbGV0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIlcKFENyZWF0ZUludm9pY2VSZXF1ZXN0EgwKBGRhdGUYBCABKAkSDgoGdmVuZG9yGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkiJQoXR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QSCgoCaWQYASABKAkiKAoYTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0EgwKBGRhdGUYASABKAkiYAocVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBIMCgRkYXRlGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkSDwoHZW5hYmxlZBgEIAEoCCLPAQoVQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDQoFZW1haWwYAiABKAkSEAoIcGFzc3dvcmQYAyABKAkSFAoMbm90aWZpY2F0aW9uGAQgASgIEjYKCndhdmVDb25maWcYBSADKAsyIi5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXJDb25maWcSNgoKYXF1YUNvbmZpZxgGIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZyJGChRMaXN0UmVzZWxsZXJzUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJQChJHZXRSZXNlbGxlclJlcXVlc3QSCgoCaWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sipgIKFVVwZGF0ZVJlc2VsbGVyUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhITCgVlbWFpbBgCIAEoCUIE4kEBARIXCghwYXNzd29yZBgDIAEoCUIF4kECBAESPAoKd2F2ZUNvbmZpZxgEIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZ0IE4kEBARI8CgphcXVhQ29uZmlnGAUgAygLMiIuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyQ29uZmlnQgTiQQEBEhsKDG5vdGlmaWNhdGlvbhgGIAEoCEIF4kECBAESNAoKdXBkYXRlTWFzaxgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiIwoVRGVsZXRlUmVzZWxsZXJSZXF1ZXN0EgoKAmlkGAEgASgJIkoKGEdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayLHAgoZR2V0QmlsbGluZ1NldHRpbmdSZXNwb25zZRIwCgl5ZWFyTW9udGgYASADKAsyHS5ibHVlYXBpLmFwaS5yaXBwbGUuWWVhck1vbnRoEjQKDnJvdW5kaW5nTWV0aG9kGAIgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjoKFGV4cG9ydFJvdW5kaW5nTWV0aG9kGAMgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjgKDWludm9pY2VMYXlvdXQYBCABKAsyIS5ibHVlYXBpLmFwaS5yaXBwbGUuSW52b2ljZUxheW91dBIzCg5pbnZvaWNlRHVlRGF0ZRgFIAEoCzIbLmJsdWVhcGkuYXBpLnJpcHBsZS5EdWVEYXRlEhcKD3N1cHBvcnRDdXJyZW5jeRgGIAMoCSI5ChhMaXN0RXhjaGFuZ2VSYXRlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJImUKHFNldEdsb2JhbEV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASJ3ChtTZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIQCghjdXJyZW5jeRgEIAEoCRIUCgxleGNoYW5nZVJhdGUYBSABKAEibAoiU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASLiAQoZTGlzdEV4Y2hhbmdlUmF0ZXNSZXNwb25zZRINCgVtb250aBgBIAEoCRI2CgZjb21tb24YAiABKAsyJi5ibHVlYXBpLmFwaS5yaXBwbGUuQ29tbW9uRXhjaGFuZ2VSYXRlEkIKDGJpbGxpbmdHcm91cBgDIAMoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSOgoFcGF5ZXIYBCABKAsyKy5ibHVlYXBpLmFwaS5yaXBwbGUuVmVuZG9yUGF5ZXJFeGNoYW5nZVJhdGUiSQoXTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVAoYQ3JlYXRlQWNjZXNzR3JvdXBSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSFQoNYmlsbGluZ0dyb3VwcxgDIAMoCSJgChhVcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAQgAygJIiYKGERlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCSIyChJMaXN0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAki8ggKE0xpc3RJbnZvaWNlUmVzcG9uc2USGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIaChJmaW5hbGl6YXRpb25TdGF0dXMYBSABKAkSEQoJaXNDcmVhdGVkGAYgASgIEhkKEWlzU2V0dGluZ01vZGlmaWVkGAcgASgIEhMKC2NyZWF0ZWREYXRlGAggASgJEhMKC3VwZGF0ZWREYXRlGAkgASgJEhYKDmNyZWF0ZWRWZW5kb3JzGAogAygJEhMKC2lzUHVibGlzaGVkGAsgASgIEl0KE3ZlbmRvckJpbGxpbmdBbW91bnQYDCADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5WZW5kb3JCaWxsaW5nQW1vdW50RW50cnkSGgoSYmlsbGluZ0Ftb3VudFRvdGFsGA0gASgJEhAKCGN1cnJlbmN5GA4gASgJEg0KBXVybElkGA8gASgJEm0KG2NyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZxgQIAMoCzJILmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlc3BvbnNlLkNyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EmkKGXNhdmVkVmVuZG9ySW52b2ljZVNldHRpbmcYESADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5TYXZlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSbQobZGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nGBIgAygLMkguYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UuRGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkaOgoYVmVuZG9yQmlsbGluZ0Ftb3VudEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaZwogQ3JlYXRlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSCwoDa2V5GAEgASgJEjIKBXZhbHVlGAIgASgLMiMuYmx1ZWFwaS5iaWxsaW5nLnYxLkludm9pY2VTZXR0aW5nczoCOAEaZQoeU2F2ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBGmcKIERlZmF1bHRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBIikKG0xpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBIKCgJpZBgBIAEoCSJOCiJMaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Eg8KB3BheWVySWQYASABKAkSFwoPYmlsbGluZ0dyb3VwQXJuGAIgASgJIo8BCg9BYmNCaWxsaW5nR3JvdXASCwoDYXJuGAEgASgJEgwKBG5hbWUYAiABKAkSFAoMY3JlYXRpb25UaW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhgKEHByaW1hcnlBY2NvdW50SWQYBSABKAkSDAoEc2l6ZRgGIAEoCRIOCgZzdGF0dXMYByABKAkiNAoKQWJjQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkiYgodUmVhZEludm9pY2VBZGp1c3RtZW50c1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIPCgdmZWVUeXBlGAQgASgJIpkBChxSZWFkQWRqdXN0bWVudEVudHJpZXNSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhITCgVtb250aBgCIAEoCUIE4kEBARpOCiJBZGp1c3RtZW50RW50cmllc1JlcXVlc3RBd3NPcHRpb25zEhMKC3NwcERpc2NvdW50GAEgASgIEhMKC2VkcERpc2NvdW50GAIgASgIIkMKGUdldEFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEhAKAmlkGAIgASgJQgTiQQECIp4DChtBcHBseUFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECElMKB3NldHRpbmcYAiABKAsyPC5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZ0IE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECGvwBCgxBcHBseVNldHRpbmcSEwoFbW9udGgYASABKAlCBOJBAQESFQoHdGF4RnJlZRgCIAEoCEIE4kEBARJqCgxleGNoYW5nZVJhdGUYAyADKAsyTi5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZy5FeGNoYW5nZVJhdGVFbnRyeUIE4kEBARIfChFiaWxsaW5nSW50ZXJuYWxJZBgEIAEoCUIE4kEBARozChFFeGNoYW5nZVJhdGVFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBIkwKHVJlc3RvcmVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECIl8KG1NwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQISGAoKc3RhcnRNb250aBgDIAEoCUIE4kEBAiL8AQoeQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAhJWCgZjb25maWcYAyADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFjY291bnRDb25maWdCBOJBAQISIQoTYWNjb3VudEZvclJlbWFpbmluZxgEIAEoCUIE4kEBAho3Cg1BY2NvdW50Q29uZmlnEhAKAmlkGAEgASgJQgTiQQECEhQKBmFtb3VudBgCIAEoAUIE4kEBAiJMCiJSZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiJPCiVSZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiI8ChtMaXN0QWNjb3VudFJlc291cmNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJIkoKD1Jlc291cmNlQWNjb3VudBIPCgdwYXllcklkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSEgoKcmVnaXN0ZXJlZBgDIAEoCCIsChpHZXRBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkijQEKHUNyZWF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIqCgZjb25maWcYAiADKAsyGi5ibHVlYXBpLmFwaS5Db25maWdGaWx0ZXJzEjAKCGFjY291bnRzGAMgAygLMh4uYmx1ZWFwaS5hcGkuTWFuYWdlbWVudEFjY291bnQijQEKHVVwZGF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIqCgZjb25maWcYAiADKAsyGi5ibHVlYXBpLmFwaS5Db25maWdGaWx0ZXJzEjAKCGFjY291bnRzGAMgAygLMh4uYmx1ZWFwaS5hcGkuTWFuYWdlbWVudEFjY291bnQiLwodRGVsZXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJImcKGVJlYWRVbnRhZ2dlZEdyb3Vwc1JlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEjQKCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBIlwKJFJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzUmVxdWVzdBI0CgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBASJmCiJHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EgoKAmlkGAEgASgJEjQKCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBInwKJUNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIwCgZjb25maWcYAyABKAsyIC5ibHVlYXBpLmFwaS5yaXBwbGUuTWV0aG9kQ29uZmlnIsUBCiVVcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECElQKGGN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRgCIAEoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCBOJBAQISNAoKdXBkYXRlTWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMwolRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIKCgJpZBgBIAEoCSJdCi5HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIskBCi9HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXNwb25zZRIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAyABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISLAoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50QgTiQQEBIvcCCi5TZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEoABCgdzZXR0aW5nGAMgAygLMmkuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQIalAEKJkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nEhAKAmlkGAEgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAIgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEhYKCGFjY291bnRzGAMgAygJQgTiQQEBImAKMURlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QSFQoHZ3JvdXBJZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQIikQEKJENyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEkYKB3NldHRpbmcYAyABKAsyNS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHNTZXR0aW5nIsUBCiRVcGRhdGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISVQoXaW52b2ljZVNlcnZpY2VEaXNjb3VudHMYAiABKAsyLi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHNCBOJBAQISNAoKdXBkYXRlTWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMgokRGVsZXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJIm4KB1RhZ0RhdGESEgoKY3VzdG9tZXJJZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSFAoMY3VzdG9tZXJOYW1lGAMgASgJEiYKBHRhZ3MYBCADKAsyGC5ibHVlYXBpLmJpbGxpbmcudjEuVGFncyIjCgRUYWdzEgsKA2tleRgBIAEoCRIOCgZ2YWx1ZXMYAiADKAkiLgoOR2V0VGFnc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEgwKBHR5cGUYAiABKAkiOwoLQ3VzdG9tRmllbGQSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIl4KF0JpbGxpbmdHcm91cEN1c3RvbUZpZWxkEg0KBXZhbHVlGAEgASgJEjQKC2N1c3RvbUZpZWxkGAIgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIjUKIkxpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSKFAQojTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVzcG9uc2USDwoHZ3JvdXBJZBgBIAEoCRJNChhiaWxsaW5nR3JvdXBDdXN0b21GaWVsZHMYAiADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQiPAoYQ3JlYXRlQ3VzdG9tRmllbGRSZXF1ZXN0EgsKA2tleRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCSJIChhVcGRhdGVDdXN0b21GaWVsZFJlcXVlc3QSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIiYKGERlbGV0ZUN1c3RvbUZpZWxkUmVxdWVzdBIKCgJpZBgBIAEoCSIYChZMaXN0Q3VzdG9tRmllbGRSZXF1ZXN0ImsKF0NyZWF0ZUZyZWVGb3JtYXRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDgoGdmVuZG9yGAIgASgJEi8KBWl0ZW1zGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSJhCgxGcmVlRm9ybUl0ZW0SDQoFbGFiZWwYASABKAkSEAoIdW5pdENvc3QYAiABKAMSDQoFdG90YWwYBSABKAMSEAoIcXVhbnRpdHkYAyABKA0SDwoHZW5hYmxlZBgEIAEoCCI6ChdEZWxldGVGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCSI9ChRHZXRGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEhQKDGlzQXNzb2NpYXRlZBgCIAEoCCJuChVHZXRGcmVlRm9ybWF0UmVzcG9uc2USDwoHZ3JvdXBJZBgDIAEoCRIOCgZ2ZW5kb3IYASABKAkSNAoKZnJlZUZvcm1hdBgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0idwoeVXBkYXRlVGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIPCgdncm91cElkGAIgASgJEjQKBWl0ZW1zGAMgAygLMiUuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3NBZGRpbmdTZXR0aW5nIj4KG0dldFRhZ3NBZGRpbmdTZXR0aW5nUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDwoHZ3JvdXBJZBgCIAEoCSJJChFUYWdzQWRkaW5nU2V0dGluZxIPCgdncm91cElkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSDwoHdGFnS2V5cxgDIAMoCSJNCh1FeHBvcnRTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQEibworRXhwb3J0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQESEgoKZGlyZWN0TGluaxgDIAEoCCJ0CjBFeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSFAoGZm9ybWF0GAEgASgJQgTiQQECEhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBEhIKCmRpcmVjdExpbmsYAyABKAgiNgocRXhwb3J0QmlsbGluZ0dyb3VwQ3N2UmVxdWVzdBIWCghsYW5ndWFnZRgCIAEoCUIE4kEBASI1Ch1FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXNwb25zZRIUCgxkb3dubG9hZExpbmsYASABKAkiOAoeRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXF1ZXN0EhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBIjcKH0V4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVzcG9uc2USFAoMZG93bmxvYWRMaW5rGAEgASgJIkAKLUdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIjwKLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USCgoCaWQYASABKAkiuQEKIUFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBIPCgdncm91cElkGAEgASgJElMKB2lkVG9LZXkYAiADKAsyQi5ibHVlYXBpLmJpbGxpbmcudjEuQWRkQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0LklkVG9LZXlFbnRyeRouCgxJZFRvS2V5RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJOCiREZWxldGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIVCg1jdXN0b21GaWVsZElkGAIgASgJInYKH0FkZEFjY291bnRUb0JpbGxpbmdHcm91cFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSMgoIYWNjb3VudHMYAyADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFRvQWRkIlEKDEFjY291bnRUb0FkZBISCgpjdXN0b21lcklkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRIMCgRuYW1lGAMgASgJEgwKBG5vdGUYBCABKAkiqwEKHEFkZFRhZ3NUb0JpbGxpbmdHcm91cFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSMAoIc2V0dGluZ3MYAyADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGAQgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmciRwoKVGFnU2V0dGluZxISCgpjdXN0b21lcklkGAEgASgJEiUKBHRhZ3MYAiADKAsyFy5ibHVlYXBpLmJpbGxpbmcudjEuVGFnIjEKA1RhZxILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkSDgoGYXNzaWduGAMgASgFIj4KDU5vblRhZ1NldHRpbmcSDwoHaW5jbHVkZRgBIAEoCBIMCgR0eXBlGAIgASgJEg4KBmFtb3VudBgDIAEoASI+Ch1TYXZlVGFnSW52b2ljZVNldHRpbmdSZXNwb25zZRIOCgZzdGF0dXMYASABKAkSDQoFZXJyb3IYAiABKAkifgomVXBkYXRlTm9uVGFnR3JvdXBUb0JpbGxpbmdHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEjgKCHNldHRpbmdzGAMgAygLMiYuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ0dyb3VwU2V0dGluZyI+ChJOb25UYWdHcm91cFNldHRpbmcSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRIOCgZhbW91bnQYAyABKAEimgEKGlNhdmVJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EgwKBGRhdGUYASABKAkSDgoGdmVuZG9yGAIgASgJEhEKCWFsbEdyb3VwcxgDIAEoCBIOCgZncm91cHMYBCADKAkSOwoOaW52b2ljZVNldHRpbmcYBSABKAsyIy5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZVNldHRpbmdzIpUECg9JbnZvaWNlU2V0dGluZ3MSEQoJaW52b2ljZU5vGAIgASgJEhQKDGRpc2NvdW50UmF0ZRgEIAEoARIbChNkaXNjb3VudFRhcmdldFVzYWdlGAUgASgJEhkKEWRpc2NvdW50Q2FsY0xvZ2ljGAYgASgJEg8KB3RheFJhdGUYByABKAESEgoKc3VwcG9ydEZlZRgIIAEoCRITCgtzdXBwb3J0UmF0ZRgJIAEoARIcChRzdXBwb3J0RmVlQ2FsY1RhcmdldBgKIAEoCRISCgpzdXBwb3J0Rml4GAsgASgBEhcKD3N1YnN0aXR1dGlvbkZlZRgMIAEoCRIYChBzdWJzdGl0dXRpb25SYXRlGA0gASgBEhcKD3N1YnN0aXR1dGlvbkZpeBgOIAEoARIhChlzdWJzdGl0dXRpb25GZWVDYWxjVGFyZ2V0GA8gASgJEiIKGnN1YnN0aXR1dGlvbkZlZVRhcmdldFVzYWdlGBAgASgJEh8KF3N1YnN0aXR1dGlvbkZlZUNhbGNUeXBlGBEgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgSIAEoARIMCgRtZW1vGBMgASgJEhAKCGNhbGNUeXBlGBQgASgJEjkKD2FkZGl0aW9uYWxJdGVtcxgVIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0irQMKEEJhc2ljSW5mb3JtYXRpb24SGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIWCglhZGRyZXNzZWUYBSABKAlIAIgBARIUCgdjb3VudHJ5GAYgASgJSAGIAQESFwoKcG9zdGFsQ29kZRgHIAEoCUgCiAEBEhEKBGNpdHkYCCABKAlIA4gBARIYCgtwaG9uZU51bWJlchgJIAEoCUgEiAEBEhkKDGFkZHJlc3NMaW5lMRgKIAEoCUgFiAEBEhkKDGFkZHJlc3NMaW5lMhgLIAEoCUgGiAEBEhIKBXN0YXRlGAwgASgJSAeIAQESFwoKcHJlZmVjdHVyZRgNIAEoCUgIiAEBQgwKCl9hZGRyZXNzZWVCCgoIX2NvdW50cnlCDQoLX3Bvc3RhbENvZGVCBwoFX2NpdHlCDgoMX3Bob25lTnVtYmVyQg8KDV9hZGRyZXNzTGluZTFCDwoNX2FkZHJlc3NMaW5lMkIICgZfc3RhdGVCDQoLX3ByZWZlY3R1cmUidwopVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvblJlcXVlc3QSCgoCaWQYASABKAkSPgoQYmFzaWNJbmZvcm1hdGlvbhgCIAEoCzIkLmJsdWVhcGkuYmlsbGluZy52MS5CYXNpY0luZm9ybWF0aW9uIrwBCiVVcGRhdGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZHNSZXF1ZXN0EgoKAmlkGAEgASgJElcKB2lkVG9LZXkYAiADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzUmVxdWVzdC5JZFRvS2V5RW50cnkaLgoMSWRUb0tleUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEicgojVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdFJlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEi8KBWl0ZW1zGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSLqAgooVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzUmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSFwoPc2VsZWN0aW9uTWV0aG9kGAMgASgJEjIKCGFjY291bnRzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRUb0FkZBIwCghzZXR0aW5ncxgFIAMoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5UYWdTZXR0aW5nEj0KDW5vblRhZ1NldHRpbmcYBiABKAsyIS5ibHVlYXBpLmJpbGxpbmcudjEuTm9uVGFnU2V0dGluZ0gAiAEBEj8KDmFjY291bnRPcHRpb25zGAcgASgLMiIuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRPcHRpb25zSAGIAQFCEAoOX25vblRhZ1NldHRpbmdCEQoPX2FjY291bnRPcHRpb25zIrgBCihVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EgoKAmlkGAEgASgJEhkKDGJpbGxpbmdUaXRsZRgCIAEoCUgAiAEBEhwKD2NhbGN1bGF0aW9uVHlwZRgDIAEoCUgBiAEBEhUKCGxhbmd1YWdlGAQgASgJSAKIAQFCDwoNX2JpbGxpbmdUaXRsZUISChBfY2FsY3VsYXRpb25UeXBlQgsKCV9sYW5ndWFnZSKvAQooVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9pbnZvaWNlVGVtcGxhdGUYAiABKAlIAIgBARJFCgdpbnZvaWNlGAMgASgLMjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlQhIKEF9pbnZvaWNlVGVtcGxhdGUivwQKKlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdBIKCgJpZBgBIAEoCRJ4CgNhd3MYAiADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECEnoKBWF6dXJlGAMgAygLMmUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhJ4CgNnY3AYBCADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECGpQBCiZDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZxIQCgJpZBgBIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgCIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIWCghhY2NvdW50cxgDIAMoCUIE4kEBASInChlEZWxldGVCaWxsaW5nR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJIlIKKEdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIqABCilHZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXNwb25zZRIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSDwoHZW5hYmxlZBgDIAEoCBJGCgdzZXR0aW5nGAQgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbiLwAQorVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISFQoHZW5hYmxlZBgDIAEoCEIE4kEBARJMCgdzZXR0aW5nGAQgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbkIE4kEBARI0Cgp1cGRhdGVNYXNrGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBAiIxChdHZXRBbm5vdW5jZW1lbnRzUmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCSKnAQoZQ3JlYXRlQW5ub3VuY2VtZW50UmVxdWVzdBINCgVsYWJlbBgBIAEoCRIMCgR0eXBlGAIgASgJEhAKCGNvbnRlbnRzGAMgASgJEhUKDWJpbGxpbmdHcm91cHMYBCADKAkSGAoQYWxsQmlsbGluZ0dyb3VwcxgFIAEoCBINCgVzdGFydBgGIAEoAxILCgNlbmQYByABKAMSDgoGc3RhdHVzGAggASgJIngKGVVwZGF0ZUFubm91bmNlbWVudFJlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASABKAkSQwoMYW5ub3VuY2VtZW50GAIgASgLMi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFubm91bmNlbWVudFJlcXVlc3QiSgogVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1c1JlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASADKAkSDgoGc3RhdHVzGAIgASgJIkUKHVVwZGF0ZUFubm91bmNlbWVudERhdGVSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgAygJEgwKBGRhdGUYAiABKAMiMwoZRGVsZXRlQW5ub3VuY2VtZW50UmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCSLpAQoMQW5ub3VuY2VtZW50EgoKAmlkGAEgASgJEg0KBWxhYmVsGAIgASgJEgwKBHR5cGUYAyABKAkSDwoHbWVzc2FnZRgEIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAUgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYDSABKAgSDQoFc3RhcnQYBiABKAkSCwoDZW5kGAcgASgJEgwKBGRhdGUYCCABKAkSDgoGc3RhdHVzGAkgASgJEhIKCnVzZXJTdGF0dXMYCiABKAkSDwoHY3JlYXRlZBgLIAEoCRIPCgd1cGRhdGVkGAwgASgJIjYKI0dldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkilgEKJEdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXNwb25zZRIPCgdncm91cElkGAEgASgJEhEKCWdyb3VwTmFtZRgCIAEoCRIRCgljb21wYW55SWQYAyABKAkSNwoNYW5ub3VuY2VtZW50cxgEIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5Bbm5vdW5jZW1lbnQiEwoRR2V0Q3JlZGl0c1JlcXVlc3QixAEKBkNyZWRpdBIKCgJpZBgBIAEoCRISCgpjdXN0b21lcklkGAIgASgJEhQKDGN1c3RvbWVyTmFtZRgDIAEoCRIUCgxjcmVkaXRBbW91bnQYBCABKAESDAoEdGVybRgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIPCgdjcmVhdGVkGAcgASgJEhIKCmluaXRpYWxGZWUYCCABKAESFQoNY3JlZGl0QmFsYW5jZRgJIAEoARIPCgdhcHBsaWVkGAogASgIIhcKFUdldENzdlNldHRpbmdzUmVxdWVzdCKkAQoKQ3N2U2V0dGluZxIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEjIKA2NvbBgDIAMoCzIlLmJsdWVhcGkuYmlsbGluZy52MS5Dc3ZTZXR0aW5nLkNvbHVtbhpICgZDb2x1bW4SDAoEbmFtZRgBIAEoCRIKCgJpZBgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdlbmFibGVkGAQgASgIIuYBCiBVcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdBINCgVtb250aBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSXAoMZXhjaGFuZ2VSYXRlGAMgAygLMkYuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VFeGNoYW5nZVJhdGVSZXF1ZXN0LkV4Y2hhbmdlUmF0ZUVudHJ5EhAKCGdyb3VwSWRzGAQgAygJGjMKEUV4Y2hhbmdlUmF0ZUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoAToCOAEiWwoaQ29udmVydEludm9pY2VUb1BkZlJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIVCg1iaWxsaW5nZ3JvdXBzGAIgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYAyABKAgiRAobQ29udmVydEludm9pY2VUb1BkZlJlc3BvbnNlEhAKCHByb2dyZXNzGAEgASgJEhMKC2Rvd25sb2FkVXJsGAIgASgJMruSAQoHQmlsbGluZxKAAQoRTGlzdEJpbGxpbmdHcm91cHMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cHNSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCIZgtPkkwITEhEvdjEvYmlsbGluZ2dyb3VwczABEoMBChJDcmVhdGVCaWxsaW5nR3JvdXASLS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiHILT5JMCFjoBKiIRL3YxL2JpbGxpbmdncm91cHMSlgEKGENyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZBIzLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBNZXJnZWRSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCIjgtPkkwIdOgEqIhgvdjEvYmlsbGluZ2dyb3Vwcy9tZXJnZWQSeQoRRGVsZXRlQmlsbGluR3JvdXASLS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIdgtPkkwIXKhUvdjEvYmlsbGluZ2dyb3VwL3tpZH0SjAEKGEFkZEFjY291bnRUb0JpbGxpbmdHcm91cBIzLmJsdWVhcGkuYmlsbGluZy52MS5BZGRBY2NvdW50VG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiOC0+STAh06ASoiGC92MS9iaWxsaW5nZ3JvdXAvYWNjb3VudBKZAQoPR2V0QmlsbGluZ0dyb3VwEiouYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cFJlcXVlc3QaKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2UiLYLT5JMCJxIlL3YxL2JpbGxpbmdncm91cHMve2JpbGxpbmdJbnRlcm5hbElkfRKRAQoOR2V0QWNjZXNzR3JvdXASKS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QWNjZXNzR3JvdXBSZXF1ZXN0GiouYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFjY2Vzc0dyb3VwUmVzcG9uc2UiKILT5JMCIhIgL3YxL2FjY2Vzc2dyb3Vwcy97YWNjZXNzR3JvdXBJZH0SngEKFkxpc3RBd3NEYWlseVJ1bkhpc3RvcnkSMS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEF3c0RhaWx5UnVuSGlzdG9yeVJlcXVlc3QaJi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5IieC0+STAiE6ASoiHC92MS9hd3MvZGFpbHlydW5oaXN0b3J5OnJlYWQwARKaAQoTTGlzdFVzYWdlQ29zdHNEcmlmdBIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0VXNhZ2VDb3N0c0RyaWZ0UmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5Vc2FnZUNvc3RzRHJpZnQiLILT5JMCJjoBKiIhL3YxL3t2ZW5kb3J9L3VzYWdlY29zdHNkcmlmdDpyZWFkMAESfAoNQ3JlYXRlSW52b2ljZRIoLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVJbnZvaWNlUmVxdWVzdBobLmJsdWVhcGkuYXBpLkludm9pY2VNZXNzYWdlIiSC0+STAh46ASoiGS92MS9pbnZvaWNlL3tkYXRlfTpjcmVhdGUSmwEKGUNyZWF0ZUludm9pY2VXaXRoU2V0dGluZ3MSLi5ibHVlYXBpLmJpbGxpbmcudjEuU2F2ZUludm9pY2VTZXR0aW5nc1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIxgtPkkwIrOgEqIiYvdjEvaW52b2ljZS97ZGF0ZX06Y3JlYXRlJnNhdmVzZXR0aW5ncxKJAQoTU2F2ZUludm9pY2VTZXR0aW5ncxIuLmJsdWVhcGkuYmlsbGluZy52MS5TYXZlSW52b2ljZVNldHRpbmdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIqgtPkkwIkOgEqIh8vdjEvaW52b2ljZS97ZGF0ZX06c2F2ZXNldHRpbmdzEqIBChNDb252ZXJ0SW52b2ljZVRvUGRmEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkNvbnZlcnRJbnZvaWNlVG9QZGZSZXF1ZXN0Gi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkNvbnZlcnRJbnZvaWNlVG9QZGZSZXNwb25zZSIqgtPkkwIkOgEqIh8vdjEvaW52b2ljZS97ZGF0ZX06Y29udmVydHRvcGRmEn0KEEdldEludm9pY2VTdGF0dXMSKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIfgtPkkwIZEhcvdjEvaW52b2ljZS9zdGF0dXMve2lkfRKLAQoRTGlzdEludm9pY2VTdGF0dXMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0GhsuYmx1ZWFwaS5hcGkuSW52b2ljZU1lc3NhZ2UiKYLT5JMCIzoBKiIeL3YxL2ludm9pY2Uvc3RhdHVzL3tkYXRlfTpyZWFkMAESbQoKR2V0SW52b2ljZRIlLmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlUmVxdWVzdBoULmJsdWVhcGkuYXBpLkludm9pY2UiIoLT5JMCHDoBKiIXL3YxL2ludm9pY2Uve2RhdGV9OnJlYWQSfQoLTGlzdEludm9pY2USJi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXF1ZXN0GicuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UiG4LT5JMCFToBKiIQL3YxL2ludm9pY2U6cmVhZDABEogBChVVcGRhdGVJbnZvaWNlUHJldmlld3MSMC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIlgtPkkwIfOgEqGhovdjEvaW52b2ljZS97ZGF0ZX06cHJldmlldxKWAQoRRXhwb3J0SW52b2ljZUZpbGUSLC5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZUZpbGVSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VGaWxlUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL2ludm9pY2Uve2RhdGV9OmV4cG9ydBKWAQoTTGlzdEludm9pY2VUZW1wbGF0ZRIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVRlbXBsYXRlUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVRlbXBsYXRlUmVzcG9uc2UiHILT5JMCFhIUL3YxL2ludm9pY2UvdGVtcGxhdGUwARKtAQoZR2V0SW52b2ljZURpc3BsYXlTZXR0aW5ncxI0LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVzcG9uc2UiI4LT5JMCHRIbL3YxL2ludm9pY2UvZGlzcGxheXNldHRpbmdzEpcBChxVcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzEjcuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiaC0+STAiA6ASoiGy92MS9pbnZvaWNlL2Rpc3BsYXlzZXR0aW5ncxKWAQoZVXBkYXRlSW52b2ljZUV4Y2hhbmdlUmF0ZRI0LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIrgtPkkwIlOgEqGiAvdjEvaW52b2ljZS9leGNoYW5nZXJhdGUve21vbnRofRKsAQohVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VUZW1wbGF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMYLT5JMCKzoBKiImL3YxL2JpbGxpbmdncm91cHMve2lkfS9pbnZvaWNldGVtcGxhdGUSsQEKHFJlYWRTZXJ2aWNlRGlzY291bnRzU2VydmljZXMSNy5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QaHi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuU2VydmljZSI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97dmVuZG9yfS9zZXJ2aWNlczpyZWFkMAESqgEKHUNyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIfgtPkkwIZOgEqIhQvdjEvc2VydmljZWRpc2NvdW50cxKvAQodVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSOC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIiSC0+STAh46ASoaGS92MS9zZXJ2aWNlZGlzY291bnRzL3tpZH0SlAEKHURlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIhgtPkkwIbKhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EqoBChtMaXN0SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBorLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIkgtPkkwIeOgEqIhkvdjEvc2VydmljZWRpc2NvdW50czpyZWFkMAESpgEKGkdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIhgtPkkwIbEhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EqIBChZFeHBvcnRTZXJ2aWNlRGlzY291bnRzEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydFNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi0uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLlNlcnZpY2VEaXNjb3VudHNFeHBvcnQiJoLT5JMCIDoBKiIbL3YxL3NlcnZpY2VkaXNjb3VudHM6ZXhwb3J0EvABCilDcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEvABCilVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSI2gtPkkwIwOgEqGisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEr4BCilEZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiM4LT5JMCLSorL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2JpbGxpbmdncm91cBLRAQoiTGlzdEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI9LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMiNoLT5JMCMDoBKiIrL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQ6cmVhZDABEtwBCiRDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpALmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSIxgtPkkwIrOgEqIiYvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudBLcAQokVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaQC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiMYLT5JMCKzoBKhomL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQSuQEKJFJlbW92ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5SZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjiC0+STAjI6ASoaLS92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50OnJlbW92ZRKvAQokRGVsZXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiLoLT5JMCKComL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQSzQEKJEV4cG9ydEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GjQuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzRXhwb3J0Ii6C0+STAig6ASoiIy92MS9zZXJ2aWNlZGlzY291bnRzL2FjY291bnQ6ZXhwb3J0EtoBCilFeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuR3JvdXBTZXJ2aWNlRGlzY291bnRzRXhwb3J0IjOC0+STAi06ASoiKC92MS9zZXJ2aWNlZGlzY291bnRzL2JpbGxpbmdncm91cDpleHBvcnQS5AEKJkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkEuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpCLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjOC0+STAi0SKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9iaWxsaW5nZ3JvdXAScwoOQ3JlYXRlUmVzZWxsZXISKS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhiC0+STAhI6ASoiDS92MS9yZXNlbGxlcnMScAoNTGlzdFJlc2VsbGVycxIoLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0UmVzZWxsZXJzUmVxdWVzdBocLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlciIVgtPkkwIPEg0vdjEvcmVzZWxsZXJzMAESbwoLR2V0UmVzZWxsZXISJi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0UmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhqC0+STAhQSEi92MS9yZXNlbGxlcnMve2lkfRJ4Cg5VcGRhdGVSZXNlbGxlchIpLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVSZXNlbGxlclJlcXVlc3QaHC5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXIiHYLT5JMCFzoBKhoSL3YxL3Jlc2VsbGVycy97aWR9Em8KDkRlbGV0ZVJlc2VsbGVyEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZVJlc2VsbGVyUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIagtPkkwIUKhIvdjEvcmVzZWxsZXJzL3tpZH0ShgEKEUdldEJpbGxpbmdTZXR0aW5nEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBotLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nU2V0dGluZ1Jlc3BvbnNlIhSC0+STAg4SDC92MS9zZXR0aW5ncxKbAQoRTGlzdEV4Y2hhbmdlUmF0ZXMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEV4Y2hhbmdlUmF0ZXNSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RFeGNoYW5nZVJhdGVzUmVzcG9uc2UiKYLT5JMCIxIhL3YxL3t2ZW5kb3J9L2V4Y2hhbmdlcmF0ZS97bW9udGh9EpYBChVTZXRHbG9iYWxFeGNoYW5nZVJhdGUSMC5ibHVlYXBpLmJpbGxpbmcudjEuU2V0R2xvYmFsRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIzgtPkkwItOgEqIigvdjEvZXhjaGFuZ2VyYXRlL2dsb2JhbC97dmVuZG9yfS97bW9udGh9EooBChRTZXRQYXllckV4Y2hhbmdlUmF0ZRIvLmJsdWVhcGkuYmlsbGluZy52MS5TZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKYLT5JMCIzoBKiIeL3YxL2V4Y2hhbmdlcmF0ZS9wYXllci97bW9udGh9Ep8BChtTZXRCaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSNi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIwgtPkkwIqOgEqIiUvdjEvZXhjaGFuZ2VyYXRlL2JpbGxpbmdncm91cC97bW9udGh9EnwKEExpc3RBY2Nlc3NHcm91cHMSKy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiGILT5JMCEhIQL3YxL2FjY2Vzc2dyb3VwczABEn8KEUNyZWF0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFjY2Vzc0dyb3VwUmVxdWVzdBofLmJsdWVhcGkuYXBpLnJpcHBsZS5BY2Nlc3NHcm91cCIbgtPkkwIVOgEqIhAvdjEvYWNjZXNzZ3JvdXBzEoQBChFVcGRhdGVBY2Nlc3NHcm91cBIsLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiIILT5JMCGjoBKhoVL3YxL2FjY2Vzc2dyb3Vwcy97aWR9EngKEURlbGV0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIdgtPkkwIXKhUvdjEvYWNjZXNzZ3JvdXBzL3tpZH0SnwEKFExpc3RBYmNCaWxsaW5nR3JvdXBzEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5BYmNCaWxsaW5nR3JvdXAiL4LT5JMCKRInL3YxL2JpbGxpbmdncm91cHMvYmlsbGluZ2NvbmR1Y3Rvci97aWR9MAEStgEKG0xpc3RBYmNCaWxsaW5nR3JvdXBBY2NvdW50cxI2LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Gh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkFiY0FjY291bnQiPYLT5JMCNxI1L3YxL2JpbGxpbmdncm91cHMvYmlsbGluZ2NvbmR1Y3Rvci97cGF5ZXJJZH0vYWNjb3VudHMwARKcAQoWUmVhZEludm9pY2VBZGp1c3RtZW50cxIxLmJsdWVhcGkuYmlsbGluZy52MS5SZWFkSW52b2ljZUFkanVzdG1lbnRzUmVxdWVzdBocLmJsdWVhcGkuYXBpLndhdmUuQWRqdXN0bWVudCIvgtPkkwIpOgEqIiQvdjEve3ZlbmRvcn0vaW52b2ljZWFkanVzdG1lbnRzOnJlYWQwARKjAQoVUmVhZEFkanVzdG1lbnRFbnRyaWVzEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRBZGp1c3RtZW50RW50cmllc1JlcXVlc3QaJi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQWRqdXN0bWVudEVudHJ5Ii6C0+STAig6ASoiIy92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczpyZWFkMAESmAEKEkdldEFkanVzdG1lbnRFbnRyeRItLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GiYuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFkanVzdG1lbnRFbnRyeSIrgtPkkwIlEiMvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfRKQAQoUQXBwbHlBZGp1c3RtZW50RW50cnkSLy5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii+C0+STAik6ASoiJC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczphcHBseRKWAQoWUmVzdG9yZUFkanVzdG1lbnRFbnRyeRIxLmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqIiYvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXM6cmVzdG9yZRKVAQoUU3BsaXRBZGp1c3RtZW50RW50cnkSLy5ibHVlYXBpLmJpbGxpbmcudjEuU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjSC0+STAi46ASoiKS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L3NwbGl0Ep4BChdBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeRIyLmJsdWVhcGkuYmlsbGluZy52MS5BbGxvY2F0ZUFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiN4LT5JMCMToBKiIsL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0vYWxsb2NhdGUSqwEKG1Jlc3RvcmVTcGxpdEFkanVzdG1lbnRFbnRyeRI2LmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjyC0+STAjY6ASoiMS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L3NwbGl0OnJlc3RvcmUStAEKHlJlc3RvcmVBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeRI5LmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ij+C0+STAjk6ASoiNC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L2FsbG9jYXRlOnJlc3RvcmUSlwEKFExpc3RBY2NvdW50UmVzb3VyY2VzEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBY2NvdW50UmVzb3VyY2VzUmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5SZXNvdXJjZUFjY291bnQiJ4LT5JMCIRIfL3YxL3Jlc291cmNlcy9hY2NvdW50cy97dmVuZG9yfTABEosBChNHZXRBZGp1c3RtZW50Q29uZmlnEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFkanVzdG1lbnRDb25maWdSZXF1ZXN0Gh0uYmx1ZWFwaS5hcGkuQWRqdXN0bWVudENvbmZpZyIlgtPkkwIfEh0vdjEvYWRqdXN0bWVudGNvbmZpZy97dmVuZG9yfRKUAQoWQ3JlYXRlQWRqdXN0bWVudENvbmZpZxIxLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBodLmJsdWVhcGkuYXBpLkFkanVzdG1lbnRDb25maWciKILT5JMCIjoBKiIdL3YxL2FkanVzdG1lbnRjb25maWcve3ZlbmRvcn0SlAEKFlVwZGF0ZUFkanVzdG1lbnRDb25maWcSMS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QaHS5ibHVlYXBpLmFwaS5BZGp1c3RtZW50Q29uZmlnIiiC0+STAiI6ASoaHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EooBChZEZWxldGVBZGp1c3RtZW50Q29uZmlnEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiWC0+STAh8qHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EpUBChJSZWFkVW50YWdnZWRHcm91cHMSLS5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZFVudGFnZ2VkR3JvdXBzUmVxdWVzdBohLmJsdWVhcGkuYXBpLnJpcHBsZS5VbnRhZ2dlZEdyb3VwIiuC0+STAiU6ASoiIC92MS97dmVuZG9yfS91bnRhZ2dlZGdyb3VwczpyZWFkMAESuAEKHVJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiLYLT5JMCJzoBKiIiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXM6cmVhZDABEq8BChtHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USNi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiKoLT5JMCJBIiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRKzAQoeQ3JlYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlIiiC0+STAiI6ASoiHS92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzErgBCh5VcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USOS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiLYLT5JMCJzoBKhoiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRKfAQoeRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJCoiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRL7AQonR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEkIuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QaQy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVzcG9uc2UiRYLT5JMCPxI9L3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMvYmlsbGluZ2dyb3VwL3tncm91cElkfS97dmVuZG9yfTABEs8BCidTZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASQi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJIgtPkkwJCOgEqIj0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9EtIBCipEZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASRS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJFgtPkkwI/Kj0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9El4KB0dldFRhZ3MSIi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0VGFnc1JlcXVlc3QaGy5ibHVlYXBpLmJpbGxpbmcudjEuVGFnRGF0YSIQgtPkkwIKEggvdjEvdGFnczABEn4KEUNyZWF0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbUZpZWxkUmVxdWVzdBofLmJsdWVhcGkuYmlsbGluZy52MS5DdXN0b21GaWVsZCIagtPkkwIUOgEqIg8vdjEvY3VzdG9tZmllbGQSgQEKD0xpc3RDdXN0b21GaWVsZBIqLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0Q3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIh+C0+STAhk6ASoiFC92MS9jdXN0b21maWVsZDpyZWFkMAESlAEKGkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIngtPkkwIhOgEqIhwvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkEr4BChtMaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBo3LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXNwb25zZSIsgtPkkwImOgEqIiEvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkOnJlYWQwARKDAQoVQWRkVGFnc1RvQmlsbGluZ0dyb3VwEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZFRhZ3NUb0JpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIILT5JMCGjoBKiIVL3YxL2JpbGxpbmdncm91cC90YWdzEq8BCh9VcGRhdGVOb25UYWdHcm91cFRvQmlsbGluZ0dyb3VwEjouYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZU5vblRhZ0dyb3VwVG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjiC0+STAjI6ASoiLS92MS9iaWxsaW5nZ3JvdXAve2lkfS97dmVuZG9yfS91bnRhZ2dlZGdyb3VwcxKxAQodRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSOC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ij6C0+STAjgqNi92MS9iaWxsaW5nZ3JvdXAvY3VzdG9tZmllbGQve2dyb3VwSWR9L3tjdXN0b21GaWVsZElkfRKDAQoRVXBkYXRlQ3VzdG9tRmllbGQSLC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIh+C0+STAhk6ASoaFC92MS9jdXN0b21maWVsZC97aWR9EncKEURlbGV0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIcgtPkkwIWKhQvdjEvY3VzdG9tZmllbGQve2lkfRJyChBDcmVhdGVGcmVlRm9ybWF0EisuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUZyZWVGb3JtYXRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IhmC0+STAhM6ASoiDi92MS9mcmVlZm9ybWF0EnkKEERlbGV0ZUZyZWVGb3JtYXQSKy5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRnJlZUZvcm1hdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIILT5JMCGioYL3YxL2ZyZWVmb3JtYXQve2dyb3VwSWR9EogBCg1HZXRGcmVlRm9ybWF0EiguYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEZyZWVGb3JtYXRSZXF1ZXN0GikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEZyZWVGb3JtYXRSZXNwb25zZSIggtPkkwIaEhgvdjEvZnJlZWZvcm1hdC97Z3JvdXBJZH0wARKiAQoUR2V0VGFnc0FkZGluZ1NldHRpbmcSLy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0VGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0GiUuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3NBZGRpbmdTZXR0aW5nIjCC0+STAioSKC92MS97dmVuZG9yfS90YWdzYWRkaW5nc2V0dGluZy97Z3JvdXBJZH0wARKaAQoXVXBkYXRlVGFnc0FkZGluZ1NldHRpbmcSMi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlVGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjOC0+STAi06ASoaKC92MS97dmVuZG9yfS90YWdzYWRkaW5nc2V0dGluZy97Z3JvdXBJZH0SoQEKFUV4cG9ydEJpbGxpbmdHcm91cENzdhIwLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXF1ZXN0GjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEJpbGxpbmdHcm91cENzdlJlc3BvbnNlIiOC0+STAh0SGy92MS9leHBvcnRjc3YvYmlsbGluZy1ncm91cBKpAQoXRXhwb3J0SW52b2ljZVNldHRpbmdDc3YSMi5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVzcG9uc2UiJYLT5JMCHxIdL3YxL2V4cG9ydGNzdi9pbnZvaWNlLXNldHRpbmcSpwEKIlVwZGF0ZUJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SPS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKhofL3YxL2JpbGxpbmdncm91cC97aWR9OmJhc2ljSW5mbxKiAQoeVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiLYLT5JMCJzoBKhoiL3YxL2JpbGxpbmdncm91cC97aWR9OmN1c3RvbUZpZWxkcxKcAQocVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdBI3LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBGcmVlRm9ybWF0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIrgtPkkwIlOgEqGiAvdjEvYmlsbGluZ2dyb3VwL3tpZH06ZnJlZUZvcm1hdBKlAQohVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cExpbmtlZFJlc291cmNlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKhofL3YxL2JpbGxpbmdncm91cC97aWR9OnJlc291cmNlcxKrAQohVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKholL3YxL2JpbGxpbmdncm91cC97aWR9Omludm9pY2VTZXR0aW5ncxKrAQohVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cFJlc2VsbGVyQ2hhcmdlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKholL3YxL2JpbGxpbmdncm91cC97aWR9OnJlc2VsbGVyQ2hhcmdlcxKxAQojVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXMSPi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjKC0+STAiw6ASoaJy92MS9iaWxsaW5nZ3JvdXAve2lkfTphZGRpdGlvbmFsQ2hhcmdlcxLUAQohR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QaPS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2JpbGxpbmdncm91cC97aWR9L3t2ZW5kb3J9L3N1cHBvcnRwbGFuErYBCiRVcGRhdGVCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW4SPy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI1gtPkkwIvOgEqGiovdjEvYmlsbGluZ2dyb3VwL3tpZH0ve3ZlbmRvcn0vc3VwcG9ydHBsYW4SgQEKEkNyZWF0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiSC0+STAh46ASoiGS92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQSkgEKElVwZGF0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjWC0+STAi86ASoaKi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQve2Fubm91bmNlbWVudElkfRKcAQoZVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1cxI0LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnRzU3RhdHVzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqMiYvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy9idWxrL3N0YXR1cxKgAQoWVXBkYXRlQW5ub3VuY2VtZW50RGF0ZRIxLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnREYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI7gtPkkwI1OgEqMjAvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97YW5ub3VuY2VtZW50SWR9L2RhdGUSjwEKEkRlbGV0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjKC0+STAiwqKi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQve2Fubm91bmNlbWVudElkfRKgAQoQR2V0QW5ub3VuY2VtZW50cxIrLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBbm5vdW5jZW1lbnRzUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5Bbm5vdW5jZW1lbnQiO4LT5JMCNRIzL2JpbGxpbmcvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97YW5ub3VuY2VtZW50SWR9MAESzgEKHEdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHMSNy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1JlcXVlc3QaOC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1Jlc3BvbnNlIjmC0+STAjMSMS92MS9iaWxsaW5nZ3JvdXAvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97Z3JvdXBJZH0wARJmCgpHZXRDcmVkaXRzEiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENyZWRpdHNSZXF1ZXN0GhouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWRpdCITgtPkkwINEgsvdjEvY3JlZGl0czABEnYKDkdldENzdlNldHRpbmdzEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENzdlNldHRpbmdzUmVxdWVzdBoeLmJsdWVhcGkuYmlsbGluZy52MS5Dc3ZTZXR0aW5nIheC0+STAhESDy92MS9jc3ZzZXR0aW5nczABGp0BkkGZARJGKEJFVEEpIEJpbGxpbmcgQVBJLiBCYXNlIFVSTDogaHR0cHM6Ly9hcGkuYWxwaGF1cy5jbG91ZC9tL2JsdWUvYmlsbGluZxpPChJTZXJ2aWNlIGRlZmluaXRpb24SOWh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9iaWxsaW5nL0JRChljbG91ZC5hbHBoYXVzLmFwaS5iaWxsaW5nQgxCaWxsaW5nUHJvdG9aJmdpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS9iaWxsaW5nYgZwcm90bzM", [account_pb_1.file_api_account, invoice_pb_1.file_api_invoice, costtag_pb_1.file_api_costtag, accessgroup_pb_1.file_api_ripple_accessgroup, billinggroup_pb_1.file_api_ripple_billinggroup, reseller_pb_1.file_api_ripple_reseller, yearmonth_pb_1.file_api_ripple_yearmonth, rounding_pb_1.file_api_ripple_rounding, invoicelayout_pb_1.file_api_ripple_invoicelayout, duedate_pb_1.file_api_ripple_duedate, exchangerate_pb_1.file_api_ripple_exchangerate, untaggedgroup_pb_1.file_api_ripple_untaggedgroup, customizedbillingservice_pb_1.file_api_ripple_customizedbillingservice, invoiceservicediscounts_pb_1.file_api_ripple_v1_invoiceservicediscounts, accountsupportplan_pb_1.file_api_ripple_v1_accountsupportplan, adjustmententry_pb_1.file_api_ripple_v1_adjustmententry, adjustment_pb_1.file_api_adjustment, adjustment_pb_2.file_api_wave_adjustment, annotations_pb_1.file_google_api_annotations, field_behavior_pb_1.file_google_api_field_behavior, wkt_1.file_google_protobuf_empty, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations, wkt_1.file_google_protobuf_field_mask]);
37
+ /**
38
+ * Describes the message blueapi.billing.v1.BillingGroup.
39
+ * Use `create(BillingGroupSchema)` to create a new message.
40
+ */
41
+ exports.BillingGroupSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 0);
42
+ /**
43
+ * Describes the message blueapi.billing.v1.BillingGroupAdditionalItems.
44
+ * Use `create(BillingGroupAdditionalItemsSchema)` to create a new message.
45
+ */
46
+ exports.BillingGroupAdditionalItemsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 1);
47
+ /**
48
+ * Describes the message blueapi.billing.v1.BillingGroupInvoiceSettings.
49
+ * Use `create(BillingGroupInvoiceSettingsSchema)` to create a new message.
50
+ */
51
+ exports.BillingGroupInvoiceSettingsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 2);
52
+ /**
53
+ * Describes the message blueapi.billing.v1.BillingGroupVendoredInvoiceSetting.
54
+ * Use `create(BillingGroupVendoredInvoiceSettingSchema)` to create a new message.
55
+ */
56
+ exports.BillingGroupVendoredInvoiceSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 3);
57
+ /**
58
+ * Describes the message blueapi.billing.v1.ListBillingGroupsRequest.
59
+ * Use `create(ListBillingGroupsRequestSchema)` to create a new message.
60
+ */
61
+ exports.ListBillingGroupsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 4);
62
+ /**
63
+ * Describes the message blueapi.billing.v1.CreateBillingGroupRequest.
64
+ * Use `create(CreateBillingGroupRequestSchema)` to create a new message.
65
+ */
66
+ exports.CreateBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 5);
67
+ /**
68
+ * Describes the message blueapi.billing.v1.AwsOptions.
69
+ * Use `create(AwsOptionsSchema)` to create a new message.
70
+ */
71
+ exports.AwsOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 6);
72
+ /**
73
+ * Describes the message blueapi.billing.v1.AccountOptions.
74
+ * Use `create(AccountOptionsSchema)` to create a new message.
75
+ */
76
+ exports.AccountOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 7);
77
+ /**
78
+ * Describes the message blueapi.billing.v1.RegisterAccounts.
79
+ * Use `create(RegisterAccountsSchema)` to create a new message.
80
+ */
81
+ exports.RegisterAccountsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 8);
82
+ /**
83
+ * Describes the message blueapi.billing.v1.VendorAccounts.
84
+ * Use `create(VendorAccountsSchema)` to create a new message.
85
+ */
86
+ exports.VendorAccountsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 9);
87
+ /**
88
+ * Describes the message blueapi.billing.v1.AzureOptions.
89
+ * Use `create(AzureOptionsSchema)` to create a new message.
90
+ */
91
+ exports.AzureOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 10);
92
+ /**
93
+ * Describes the message blueapi.billing.v1.CreateBillingGroupMergedRequest.
94
+ * Use `create(CreateBillingGroupMergedRequestSchema)` to create a new message.
95
+ */
96
+ exports.CreateBillingGroupMergedRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 11);
97
+ /**
98
+ * Describes the message blueapi.billing.v1.CreateBillingGroupRequestInvoice.
99
+ * Use `create(CreateBillingGroupRequestInvoiceSchema)` to create a new message.
100
+ */
101
+ exports.CreateBillingGroupRequestInvoiceSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 12);
102
+ /**
103
+ * Describes the message blueapi.billing.v1.CreateBillingGroupRequestInvoiceVendor.
104
+ * Use `create(CreateBillingGroupRequestInvoiceVendorSchema)` to create a new message.
105
+ */
106
+ exports.CreateBillingGroupRequestInvoiceVendorSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 13);
107
+ /**
108
+ * Describes the message blueapi.billing.v1.GetBillingGroupRequest.
109
+ * Use `create(GetBillingGroupRequestSchema)` to create a new message.
110
+ */
111
+ exports.GetBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 14);
112
+ /**
113
+ * Describes the message blueapi.billing.v1.GetBillingGroupResponse.
114
+ * Use `create(GetBillingGroupResponseSchema)` to create a new message.
115
+ */
116
+ exports.GetBillingGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 15);
117
+ /**
118
+ * Describes the message blueapi.billing.v1.AccessGroup.
119
+ * Use `create(AccessGroupSchema)` to create a new message.
120
+ */
121
+ exports.AccessGroupSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 16);
122
+ /**
123
+ * Describes the message blueapi.billing.v1.GetAccessGroupRequest.
124
+ * Use `create(GetAccessGroupRequestSchema)` to create a new message.
125
+ */
126
+ exports.GetAccessGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 17);
127
+ /**
128
+ * Describes the message blueapi.billing.v1.GetAccessGroupResponse.
129
+ * Use `create(GetAccessGroupResponseSchema)` to create a new message.
130
+ */
131
+ exports.GetAccessGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 18);
132
+ /**
133
+ * Describes the message blueapi.billing.v1.AwsDailyRunHistory.
134
+ * Use `create(AwsDailyRunHistorySchema)` to create a new message.
135
+ */
136
+ exports.AwsDailyRunHistorySchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 19);
137
+ /**
138
+ * Describes the message blueapi.billing.v1.AwsDailyRunHistory.Account.
139
+ * Use `create(AwsDailyRunHistory_AccountSchema)` to create a new message.
140
+ */
141
+ exports.AwsDailyRunHistory_AccountSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 19, 0);
142
+ /**
143
+ * Describes the message blueapi.billing.v1.AwsDailyRunHistory.Account.History.
144
+ * Use `create(AwsDailyRunHistory_Account_HistorySchema)` to create a new message.
145
+ */
146
+ exports.AwsDailyRunHistory_Account_HistorySchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 19, 0, 0);
147
+ /**
148
+ * Describes the message blueapi.billing.v1.ListAwsDailyRunHistoryRequest.
149
+ * Use `create(ListAwsDailyRunHistoryRequestSchema)` to create a new message.
150
+ */
151
+ exports.ListAwsDailyRunHistoryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 20);
152
+ /**
153
+ * Describes the message blueapi.billing.v1.ListUsageCostsDriftRequest.
154
+ * Use `create(ListUsageCostsDriftRequestSchema)` to create a new message.
155
+ */
156
+ exports.ListUsageCostsDriftRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 21);
157
+ /**
158
+ * Describes the message blueapi.billing.v1.UsageCostsDrift.
159
+ * Use `create(UsageCostsDriftSchema)` to create a new message.
160
+ */
161
+ exports.UsageCostsDriftSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 22);
162
+ /**
163
+ * Describes the message blueapi.billing.v1.GetInvoiceRequest.
164
+ * Use `create(GetInvoiceRequestSchema)` to create a new message.
165
+ */
166
+ exports.GetInvoiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 23);
167
+ /**
168
+ * Describes the message blueapi.billing.v1.ExportInvoiceFileRequest.
169
+ * Use `create(ExportInvoiceFileRequestSchema)` to create a new message.
170
+ */
171
+ exports.ExportInvoiceFileRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 24);
172
+ /**
173
+ * Describes the message blueapi.billing.v1.ExportInvoiceFileResponse.
174
+ * Use `create(ExportInvoiceFileResponseSchema)` to create a new message.
175
+ */
176
+ exports.ExportInvoiceFileResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 25);
177
+ /**
178
+ * Describes the message blueapi.billing.v1.ReadServiceDiscountsServicesRequest.
179
+ * Use `create(ReadServiceDiscountsServicesRequestSchema)` to create a new message.
180
+ */
181
+ exports.ReadServiceDiscountsServicesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 26);
182
+ /**
183
+ * Describes the message blueapi.billing.v1.ListInvoiceServiceDiscountsRequest.
184
+ * Use `create(ListInvoiceServiceDiscountsRequestSchema)` to create a new message.
185
+ */
186
+ exports.ListInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 27);
187
+ /**
188
+ * Describes the message blueapi.billing.v1.GetInvoiceServiceDiscountsRequest.
189
+ * Use `create(GetInvoiceServiceDiscountsRequestSchema)` to create a new message.
190
+ */
191
+ exports.GetInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 28);
192
+ /**
193
+ * Describes the message blueapi.billing.v1.InvoiceServiceDiscounts.
194
+ * Use `create(InvoiceServiceDiscountsSchema)` to create a new message.
195
+ */
196
+ exports.InvoiceServiceDiscountsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 29);
197
+ /**
198
+ * Describes the message blueapi.billing.v1.ListInvoiceTemplateRequest.
199
+ * Use `create(ListInvoiceTemplateRequestSchema)` to create a new message.
200
+ */
201
+ exports.ListInvoiceTemplateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 30);
202
+ /**
203
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupInvoiceTemplateRequest.
204
+ * Use `create(UpdateBillingGroupInvoiceTemplateRequestSchema)` to create a new message.
205
+ */
206
+ exports.UpdateBillingGroupInvoiceTemplateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 31);
207
+ /**
208
+ * Describes the message blueapi.billing.v1.ListInvoiceTemplateResponse.
209
+ * Use `create(ListInvoiceTemplateResponseSchema)` to create a new message.
210
+ */
211
+ exports.ListInvoiceTemplateResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 32);
212
+ /**
213
+ * Describes the message blueapi.billing.v1.GetInvoiceDisplaySettingsRequest.
214
+ * Use `create(GetInvoiceDisplaySettingsRequestSchema)` to create a new message.
215
+ */
216
+ exports.GetInvoiceDisplaySettingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 33);
217
+ /**
218
+ * Describes the message blueapi.billing.v1.GetInvoiceDisplaySettingsResponse.
219
+ * Use `create(GetInvoiceDisplaySettingsResponseSchema)` to create a new message.
220
+ */
221
+ exports.GetInvoiceDisplaySettingsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 34);
222
+ /**
223
+ * Describes the message blueapi.billing.v1.UpdateInvoiceDisplaySettingsRequest.
224
+ * Use `create(UpdateInvoiceDisplaySettingsRequestSchema)` to create a new message.
225
+ */
226
+ exports.UpdateInvoiceDisplaySettingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 35);
227
+ /**
228
+ * Describes the message blueapi.billing.v1.InvoiceConnectedBillingGroups.
229
+ * Use `create(InvoiceConnectedBillingGroupsSchema)` to create a new message.
230
+ */
231
+ exports.InvoiceConnectedBillingGroupsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 36);
232
+ /**
233
+ * Describes the message blueapi.billing.v1.ListAccountInvoiceServiceDiscountsRequest.
234
+ * Use `create(ListAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
235
+ */
236
+ exports.ListAccountInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 37);
237
+ /**
238
+ * Describes the message blueapi.billing.v1.AccountInvoiceServiceDiscounts.
239
+ * Use `create(AccountInvoiceServiceDiscountsSchema)` to create a new message.
240
+ */
241
+ exports.AccountInvoiceServiceDiscountsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 38);
242
+ /**
243
+ * Describes the message blueapi.billing.v1.AccountServiceDiscounts.
244
+ * Use `create(AccountServiceDiscountsSchema)` to create a new message.
245
+ */
246
+ exports.AccountServiceDiscountsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 39);
247
+ /**
248
+ * Describes the message blueapi.billing.v1.CreateAccountInvoiceServiceDiscountsRequest.
249
+ * Use `create(CreateAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
250
+ */
251
+ exports.CreateAccountInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 40);
252
+ /**
253
+ * Describes the message blueapi.billing.v1.CreateAccountInvoiceServiceDiscountsResponse.
254
+ * Use `create(CreateAccountInvoiceServiceDiscountsResponseSchema)` to create a new message.
255
+ */
256
+ exports.CreateAccountInvoiceServiceDiscountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 41);
257
+ /**
258
+ * Describes the message blueapi.billing.v1.UpdateAccountInvoiceServiceDiscountsRequest.
259
+ * Use `create(UpdateAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
260
+ */
261
+ exports.UpdateAccountInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 42);
262
+ /**
263
+ * Describes the message blueapi.billing.v1.UpdateAccountInvoiceServiceDiscountsResponse.
264
+ * Use `create(UpdateAccountInvoiceServiceDiscountsResponseSchema)` to create a new message.
265
+ */
266
+ exports.UpdateAccountInvoiceServiceDiscountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 43);
267
+ /**
268
+ * Describes the message blueapi.billing.v1.DeleteAccountInvoiceServiceDiscountsRequest.
269
+ * Use `create(DeleteAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
270
+ */
271
+ exports.DeleteAccountInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 44);
272
+ /**
273
+ * Describes the message blueapi.billing.v1.RemoveAccountInvoiceServiceDiscountsRequest.
274
+ * Use `create(RemoveAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
275
+ */
276
+ exports.RemoveAccountInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 45);
277
+ /**
278
+ * Describes the message blueapi.billing.v1.CreateBillingGroupInvoiceServiceDiscountsRequest.
279
+ * Use `create(CreateBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
280
+ */
281
+ exports.CreateBillingGroupInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 46);
282
+ /**
283
+ * Describes the message blueapi.billing.v1.CreateBillingGroupInvoiceServiceDiscountsResponse.
284
+ * Use `create(CreateBillingGroupInvoiceServiceDiscountsResponseSchema)` to create a new message.
285
+ */
286
+ exports.CreateBillingGroupInvoiceServiceDiscountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 47);
287
+ /**
288
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupInvoiceServiceDiscountsRequest.
289
+ * Use `create(UpdateBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
290
+ */
291
+ exports.UpdateBillingGroupInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 48);
292
+ /**
293
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupInvoiceServiceDiscountsResponse.
294
+ * Use `create(UpdateBillingGroupInvoiceServiceDiscountsResponseSchema)` to create a new message.
295
+ */
296
+ exports.UpdateBillingGroupInvoiceServiceDiscountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 49);
297
+ /**
298
+ * Describes the message blueapi.billing.v1.DeleteBillingGroupInvoiceServiceDiscountsRequest.
299
+ * Use `create(DeleteBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
300
+ */
301
+ exports.DeleteBillingGroupInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 50);
302
+ /**
303
+ * Describes the message blueapi.billing.v1.CreateInvoiceRequest.
304
+ * Use `create(CreateInvoiceRequestSchema)` to create a new message.
305
+ */
306
+ exports.CreateInvoiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 51);
307
+ /**
308
+ * Describes the message blueapi.billing.v1.GetInvoiceStatusRequest.
309
+ * Use `create(GetInvoiceStatusRequestSchema)` to create a new message.
310
+ */
311
+ exports.GetInvoiceStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 52);
312
+ /**
313
+ * Describes the message blueapi.billing.v1.ListInvoiceStatusRequest.
314
+ * Use `create(ListInvoiceStatusRequestSchema)` to create a new message.
315
+ */
316
+ exports.ListInvoiceStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 53);
317
+ /**
318
+ * Describes the message blueapi.billing.v1.UpdateInvoicePreviewsRequest.
319
+ * Use `create(UpdateInvoicePreviewsRequestSchema)` to create a new message.
320
+ */
321
+ exports.UpdateInvoicePreviewsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 54);
322
+ /**
323
+ * Describes the message blueapi.billing.v1.CreateResellerRequest.
324
+ * Use `create(CreateResellerRequestSchema)` to create a new message.
325
+ */
326
+ exports.CreateResellerRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 55);
327
+ /**
328
+ * Describes the message blueapi.billing.v1.ListResellersRequest.
329
+ * Use `create(ListResellersRequestSchema)` to create a new message.
330
+ */
331
+ exports.ListResellersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 56);
332
+ /**
333
+ * Describes the message blueapi.billing.v1.GetResellerRequest.
334
+ * Use `create(GetResellerRequestSchema)` to create a new message.
335
+ */
336
+ exports.GetResellerRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 57);
337
+ /**
338
+ * Describes the message blueapi.billing.v1.UpdateResellerRequest.
339
+ * Use `create(UpdateResellerRequestSchema)` to create a new message.
340
+ */
341
+ exports.UpdateResellerRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 58);
342
+ /**
343
+ * Describes the message blueapi.billing.v1.DeleteResellerRequest.
344
+ * Use `create(DeleteResellerRequestSchema)` to create a new message.
345
+ */
346
+ exports.DeleteResellerRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 59);
347
+ /**
348
+ * Describes the message blueapi.billing.v1.GetBillingSettingRequest.
349
+ * Use `create(GetBillingSettingRequestSchema)` to create a new message.
350
+ */
351
+ exports.GetBillingSettingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 60);
352
+ /**
353
+ * Describes the message blueapi.billing.v1.GetBillingSettingResponse.
354
+ * Use `create(GetBillingSettingResponseSchema)` to create a new message.
355
+ */
356
+ exports.GetBillingSettingResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 61);
357
+ /**
358
+ * Describes the message blueapi.billing.v1.ListExchangeRatesRequest.
359
+ * Use `create(ListExchangeRatesRequestSchema)` to create a new message.
360
+ */
361
+ exports.ListExchangeRatesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 62);
362
+ /**
363
+ * Describes the message blueapi.billing.v1.SetGlobalExchangeRateRequest.
364
+ * Use `create(SetGlobalExchangeRateRequestSchema)` to create a new message.
365
+ */
366
+ exports.SetGlobalExchangeRateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 63);
367
+ /**
368
+ * Describes the message blueapi.billing.v1.SetPayerExchangeRateRequest.
369
+ * Use `create(SetPayerExchangeRateRequestSchema)` to create a new message.
370
+ */
371
+ exports.SetPayerExchangeRateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 64);
372
+ /**
373
+ * Describes the message blueapi.billing.v1.SetBillingGroupExchangeRateRequest.
374
+ * Use `create(SetBillingGroupExchangeRateRequestSchema)` to create a new message.
375
+ */
376
+ exports.SetBillingGroupExchangeRateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 65);
377
+ /**
378
+ * Describes the message blueapi.billing.v1.ListExchangeRatesResponse.
379
+ * Use `create(ListExchangeRatesResponseSchema)` to create a new message.
380
+ */
381
+ exports.ListExchangeRatesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 66);
382
+ /**
383
+ * Describes the message blueapi.billing.v1.ListAccessGroupsRequest.
384
+ * Use `create(ListAccessGroupsRequestSchema)` to create a new message.
385
+ */
386
+ exports.ListAccessGroupsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 67);
387
+ /**
388
+ * Describes the message blueapi.billing.v1.CreateAccessGroupRequest.
389
+ * Use `create(CreateAccessGroupRequestSchema)` to create a new message.
390
+ */
391
+ exports.CreateAccessGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 68);
392
+ /**
393
+ * Describes the message blueapi.billing.v1.UpdateAccessGroupRequest.
394
+ * Use `create(UpdateAccessGroupRequestSchema)` to create a new message.
395
+ */
396
+ exports.UpdateAccessGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 69);
397
+ /**
398
+ * Describes the message blueapi.billing.v1.DeleteAccessGroupRequest.
399
+ * Use `create(DeleteAccessGroupRequestSchema)` to create a new message.
400
+ */
401
+ exports.DeleteAccessGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 70);
402
+ /**
403
+ * Describes the message blueapi.billing.v1.ListInvoiceRequest.
404
+ * Use `create(ListInvoiceRequestSchema)` to create a new message.
405
+ */
406
+ exports.ListInvoiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 71);
407
+ /**
408
+ * Describes the message blueapi.billing.v1.ListInvoiceResponse.
409
+ * Use `create(ListInvoiceResponseSchema)` to create a new message.
410
+ */
411
+ exports.ListInvoiceResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 72);
412
+ /**
413
+ * Describes the message blueapi.billing.v1.ListAbcBillingGroupsRequest.
414
+ * Use `create(ListAbcBillingGroupsRequestSchema)` to create a new message.
415
+ */
416
+ exports.ListAbcBillingGroupsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 73);
417
+ /**
418
+ * Describes the message blueapi.billing.v1.ListAbcBillingGroupAccountsRequest.
419
+ * Use `create(ListAbcBillingGroupAccountsRequestSchema)` to create a new message.
420
+ */
421
+ exports.ListAbcBillingGroupAccountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 74);
422
+ /**
423
+ * Describes the message blueapi.billing.v1.AbcBillingGroup.
424
+ * Use `create(AbcBillingGroupSchema)` to create a new message.
425
+ */
426
+ exports.AbcBillingGroupSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 75);
427
+ /**
428
+ * Describes the message blueapi.billing.v1.AbcAccount.
429
+ * Use `create(AbcAccountSchema)` to create a new message.
430
+ */
431
+ exports.AbcAccountSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 76);
432
+ /**
433
+ * Describes the message blueapi.billing.v1.ReadInvoiceAdjustmentsRequest.
434
+ * Use `create(ReadInvoiceAdjustmentsRequestSchema)` to create a new message.
435
+ */
436
+ exports.ReadInvoiceAdjustmentsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 77);
437
+ /**
438
+ * Describes the message blueapi.billing.v1.ReadAdjustmentEntriesRequest.
439
+ * Use `create(ReadAdjustmentEntriesRequestSchema)` to create a new message.
440
+ */
441
+ exports.ReadAdjustmentEntriesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 78);
442
+ /**
443
+ * Describes the message blueapi.billing.v1.ReadAdjustmentEntriesRequest.AdjustmentEntriesRequestAwsOptions.
444
+ * Use `create(ReadAdjustmentEntriesRequest_AdjustmentEntriesRequestAwsOptionsSchema)` to create a new message.
445
+ */
446
+ exports.ReadAdjustmentEntriesRequest_AdjustmentEntriesRequestAwsOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 78, 0);
447
+ /**
448
+ * Describes the message blueapi.billing.v1.GetAdjustmentEntryRequest.
449
+ * Use `create(GetAdjustmentEntryRequestSchema)` to create a new message.
450
+ */
451
+ exports.GetAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 79);
452
+ /**
453
+ * Describes the message blueapi.billing.v1.ApplyAdjustmentEntryRequest.
454
+ * Use `create(ApplyAdjustmentEntryRequestSchema)` to create a new message.
455
+ */
456
+ exports.ApplyAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 80);
457
+ /**
458
+ * Describes the message blueapi.billing.v1.ApplyAdjustmentEntryRequest.ApplySetting.
459
+ * Use `create(ApplyAdjustmentEntryRequest_ApplySettingSchema)` to create a new message.
460
+ */
461
+ exports.ApplyAdjustmentEntryRequest_ApplySettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 80, 0);
462
+ /**
463
+ * Describes the message blueapi.billing.v1.RestoreAdjustmentEntryRequest.
464
+ * Use `create(RestoreAdjustmentEntryRequestSchema)` to create a new message.
465
+ */
466
+ exports.RestoreAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 81);
467
+ /**
468
+ * Describes the message blueapi.billing.v1.SplitAdjustmentEntryRequest.
469
+ * Use `create(SplitAdjustmentEntryRequestSchema)` to create a new message.
470
+ */
471
+ exports.SplitAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 82);
472
+ /**
473
+ * Describes the message blueapi.billing.v1.AllocateAdjustmentEntryRequest.
474
+ * Use `create(AllocateAdjustmentEntryRequestSchema)` to create a new message.
475
+ */
476
+ exports.AllocateAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 83);
477
+ /**
478
+ * Describes the message blueapi.billing.v1.AllocateAdjustmentEntryRequest.AccountConfig.
479
+ * Use `create(AllocateAdjustmentEntryRequest_AccountConfigSchema)` to create a new message.
480
+ */
481
+ exports.AllocateAdjustmentEntryRequest_AccountConfigSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 83, 0);
482
+ /**
483
+ * Describes the message blueapi.billing.v1.RestoreSplitAdjustmentEntryRequest.
484
+ * Use `create(RestoreSplitAdjustmentEntryRequestSchema)` to create a new message.
485
+ */
486
+ exports.RestoreSplitAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 84);
487
+ /**
488
+ * Describes the message blueapi.billing.v1.RestoreAllocateAdjustmentEntryRequest.
489
+ * Use `create(RestoreAllocateAdjustmentEntryRequestSchema)` to create a new message.
490
+ */
491
+ exports.RestoreAllocateAdjustmentEntryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 85);
492
+ /**
493
+ * Describes the message blueapi.billing.v1.ListAccountResourcesRequest.
494
+ * Use `create(ListAccountResourcesRequestSchema)` to create a new message.
495
+ */
496
+ exports.ListAccountResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 86);
497
+ /**
498
+ * Describes the message blueapi.billing.v1.ResourceAccount.
499
+ * Use `create(ResourceAccountSchema)` to create a new message.
500
+ */
501
+ exports.ResourceAccountSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 87);
502
+ /**
503
+ * Describes the message blueapi.billing.v1.GetAdjustmentConfigRequest.
504
+ * Use `create(GetAdjustmentConfigRequestSchema)` to create a new message.
505
+ */
506
+ exports.GetAdjustmentConfigRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 88);
507
+ /**
508
+ * Describes the message blueapi.billing.v1.CreateAdjustmentConfigRequest.
509
+ * Use `create(CreateAdjustmentConfigRequestSchema)` to create a new message.
510
+ */
511
+ exports.CreateAdjustmentConfigRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 89);
512
+ /**
513
+ * Describes the message blueapi.billing.v1.UpdateAdjustmentConfigRequest.
514
+ * Use `create(UpdateAdjustmentConfigRequestSchema)` to create a new message.
515
+ */
516
+ exports.UpdateAdjustmentConfigRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 90);
517
+ /**
518
+ * Describes the message blueapi.billing.v1.DeleteAdjustmentConfigRequest.
519
+ * Use `create(DeleteAdjustmentConfigRequestSchema)` to create a new message.
520
+ */
521
+ exports.DeleteAdjustmentConfigRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 91);
522
+ /**
523
+ * Describes the message blueapi.billing.v1.ReadUntaggedGroupsRequest.
524
+ * Use `create(ReadUntaggedGroupsRequestSchema)` to create a new message.
525
+ */
526
+ exports.ReadUntaggedGroupsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 92);
527
+ /**
528
+ * Describes the message blueapi.billing.v1.ReadCustomizedBillingServicesRequest.
529
+ * Use `create(ReadCustomizedBillingServicesRequestSchema)` to create a new message.
530
+ */
531
+ exports.ReadCustomizedBillingServicesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 93);
532
+ /**
533
+ * Describes the message blueapi.billing.v1.GetCustomizedBillingServiceRequest.
534
+ * Use `create(GetCustomizedBillingServiceRequestSchema)` to create a new message.
535
+ */
536
+ exports.GetCustomizedBillingServiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 94);
537
+ /**
538
+ * Describes the message blueapi.billing.v1.CreateCustomizedBillingServiceRequest.
539
+ * Use `create(CreateCustomizedBillingServiceRequestSchema)` to create a new message.
540
+ */
541
+ exports.CreateCustomizedBillingServiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 95);
542
+ /**
543
+ * Describes the message blueapi.billing.v1.UpdateCustomizedBillingServiceRequest.
544
+ * Use `create(UpdateCustomizedBillingServiceRequestSchema)` to create a new message.
545
+ */
546
+ exports.UpdateCustomizedBillingServiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 96);
547
+ /**
548
+ * Describes the message blueapi.billing.v1.DeleteCustomizedBillingServiceRequest.
549
+ * Use `create(DeleteCustomizedBillingServiceRequestSchema)` to create a new message.
550
+ */
551
+ exports.DeleteCustomizedBillingServiceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 97);
552
+ /**
553
+ * Describes the message blueapi.billing.v1.GetCustomizedBillingServiceBillingGroupRequest.
554
+ * Use `create(GetCustomizedBillingServiceBillingGroupRequestSchema)` to create a new message.
555
+ */
556
+ exports.GetCustomizedBillingServiceBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 98);
557
+ /**
558
+ * Describes the message blueapi.billing.v1.GetCustomizedBillingServiceBillingGroupResponse.
559
+ * Use `create(GetCustomizedBillingServiceBillingGroupResponseSchema)` to create a new message.
560
+ */
561
+ exports.GetCustomizedBillingServiceBillingGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 99);
562
+ /**
563
+ * Describes the message blueapi.billing.v1.SetCustomizedBillingServiceBillingGroupRequest.
564
+ * Use `create(SetCustomizedBillingServiceBillingGroupRequestSchema)` to create a new message.
565
+ */
566
+ exports.SetCustomizedBillingServiceBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 100);
567
+ /**
568
+ * Describes the message blueapi.billing.v1.SetCustomizedBillingServiceBillingGroupRequest.CustomizedBillingServiceBillingSetting.
569
+ * Use `create(SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServiceBillingSettingSchema)` to create a new message.
570
+ */
571
+ exports.SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServiceBillingSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 100, 0);
572
+ /**
573
+ * Describes the message blueapi.billing.v1.DeleteCustomizedBillingServiceBillingGroupRequest.
574
+ * Use `create(DeleteCustomizedBillingServiceBillingGroupRequestSchema)` to create a new message.
575
+ */
576
+ exports.DeleteCustomizedBillingServiceBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 101);
577
+ /**
578
+ * Describes the message blueapi.billing.v1.CreateInvoiceServiceDiscountsRequest.
579
+ * Use `create(CreateInvoiceServiceDiscountsRequestSchema)` to create a new message.
580
+ */
581
+ exports.CreateInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 102);
582
+ /**
583
+ * Describes the message blueapi.billing.v1.UpdateInvoiceServiceDiscountsRequest.
584
+ * Use `create(UpdateInvoiceServiceDiscountsRequestSchema)` to create a new message.
585
+ */
586
+ exports.UpdateInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 103);
587
+ /**
588
+ * Describes the message blueapi.billing.v1.DeleteInvoiceServiceDiscountsRequest.
589
+ * Use `create(DeleteInvoiceServiceDiscountsRequestSchema)` to create a new message.
590
+ */
591
+ exports.DeleteInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 104);
592
+ /**
593
+ * Describes the message blueapi.billing.v1.TagData.
594
+ * Use `create(TagDataSchema)` to create a new message.
595
+ */
596
+ exports.TagDataSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 105);
597
+ /**
598
+ * Describes the message blueapi.billing.v1.Tags.
599
+ * Use `create(TagsSchema)` to create a new message.
600
+ */
601
+ exports.TagsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 106);
602
+ /**
603
+ * Describes the message blueapi.billing.v1.GetTagsRequest.
604
+ * Use `create(GetTagsRequestSchema)` to create a new message.
605
+ */
606
+ exports.GetTagsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 107);
607
+ /**
608
+ * Describes the message blueapi.billing.v1.CustomField.
609
+ * Use `create(CustomFieldSchema)` to create a new message.
610
+ */
611
+ exports.CustomFieldSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 108);
612
+ /**
613
+ * Describes the message blueapi.billing.v1.BillingGroupCustomField.
614
+ * Use `create(BillingGroupCustomFieldSchema)` to create a new message.
615
+ */
616
+ exports.BillingGroupCustomFieldSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 109);
617
+ /**
618
+ * Describes the message blueapi.billing.v1.ListBillingGroupCustomFieldRequest.
619
+ * Use `create(ListBillingGroupCustomFieldRequestSchema)` to create a new message.
620
+ */
621
+ exports.ListBillingGroupCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 110);
622
+ /**
623
+ * Describes the message blueapi.billing.v1.ListBillingGroupCustomFieldResponse.
624
+ * Use `create(ListBillingGroupCustomFieldResponseSchema)` to create a new message.
625
+ */
626
+ exports.ListBillingGroupCustomFieldResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 111);
627
+ /**
628
+ * Describes the message blueapi.billing.v1.CreateCustomFieldRequest.
629
+ * Use `create(CreateCustomFieldRequestSchema)` to create a new message.
630
+ */
631
+ exports.CreateCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 112);
632
+ /**
633
+ * Describes the message blueapi.billing.v1.UpdateCustomFieldRequest.
634
+ * Use `create(UpdateCustomFieldRequestSchema)` to create a new message.
635
+ */
636
+ exports.UpdateCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 113);
637
+ /**
638
+ * Describes the message blueapi.billing.v1.DeleteCustomFieldRequest.
639
+ * Use `create(DeleteCustomFieldRequestSchema)` to create a new message.
640
+ */
641
+ exports.DeleteCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 114);
642
+ /**
643
+ * Describes the message blueapi.billing.v1.ListCustomFieldRequest.
644
+ * Use `create(ListCustomFieldRequestSchema)` to create a new message.
645
+ */
646
+ exports.ListCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 115);
647
+ /**
648
+ * Describes the message blueapi.billing.v1.CreateFreeFormatRequest.
649
+ * Use `create(CreateFreeFormatRequestSchema)` to create a new message.
650
+ */
651
+ exports.CreateFreeFormatRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 116);
652
+ /**
653
+ * Describes the message blueapi.billing.v1.FreeFormItem.
654
+ * Use `create(FreeFormItemSchema)` to create a new message.
655
+ */
656
+ exports.FreeFormItemSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 117);
657
+ /**
658
+ * Describes the message blueapi.billing.v1.DeleteFreeFormatRequest.
659
+ * Use `create(DeleteFreeFormatRequestSchema)` to create a new message.
660
+ */
661
+ exports.DeleteFreeFormatRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 118);
662
+ /**
663
+ * Describes the message blueapi.billing.v1.GetFreeFormatRequest.
664
+ * Use `create(GetFreeFormatRequestSchema)` to create a new message.
665
+ */
666
+ exports.GetFreeFormatRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 119);
667
+ /**
668
+ * Describes the message blueapi.billing.v1.GetFreeFormatResponse.
669
+ * Use `create(GetFreeFormatResponseSchema)` to create a new message.
670
+ */
671
+ exports.GetFreeFormatResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 120);
672
+ /**
673
+ * Describes the message blueapi.billing.v1.UpdateTagsAddingSettingRequest.
674
+ * Use `create(UpdateTagsAddingSettingRequestSchema)` to create a new message.
675
+ */
676
+ exports.UpdateTagsAddingSettingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 121);
677
+ /**
678
+ * Describes the message blueapi.billing.v1.GetTagsAddingSettingRequest.
679
+ * Use `create(GetTagsAddingSettingRequestSchema)` to create a new message.
680
+ */
681
+ exports.GetTagsAddingSettingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 122);
682
+ /**
683
+ * Describes the message blueapi.billing.v1.TagsAddingSetting.
684
+ * Use `create(TagsAddingSettingSchema)` to create a new message.
685
+ */
686
+ exports.TagsAddingSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 123);
687
+ /**
688
+ * Describes the message blueapi.billing.v1.ExportServiceDiscountsRequest.
689
+ * Use `create(ExportServiceDiscountsRequestSchema)` to create a new message.
690
+ */
691
+ exports.ExportServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 124);
692
+ /**
693
+ * Describes the message blueapi.billing.v1.ExportAccountInvoiceServiceDiscountsRequest.
694
+ * Use `create(ExportAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
695
+ */
696
+ exports.ExportAccountInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 125);
697
+ /**
698
+ * Describes the message blueapi.billing.v1.ExportBillingGroupInvoiceServiceDiscountsRequest.
699
+ * Use `create(ExportBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
700
+ */
701
+ exports.ExportBillingGroupInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 126);
702
+ /**
703
+ * Describes the message blueapi.billing.v1.ExportBillingGroupCsvRequest.
704
+ * Use `create(ExportBillingGroupCsvRequestSchema)` to create a new message.
705
+ */
706
+ exports.ExportBillingGroupCsvRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 127);
707
+ /**
708
+ * Describes the message blueapi.billing.v1.ExportBillingGroupCsvResponse.
709
+ * Use `create(ExportBillingGroupCsvResponseSchema)` to create a new message.
710
+ */
711
+ exports.ExportBillingGroupCsvResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 128);
712
+ /**
713
+ * Describes the message blueapi.billing.v1.ExportInvoiceSettingCsvRequest.
714
+ * Use `create(ExportInvoiceSettingCsvRequestSchema)` to create a new message.
715
+ */
716
+ exports.ExportInvoiceSettingCsvRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 129);
717
+ /**
718
+ * Describes the message blueapi.billing.v1.ExportInvoiceSettingCsvResponse.
719
+ * Use `create(ExportInvoiceSettingCsvResponseSchema)` to create a new message.
720
+ */
721
+ exports.ExportInvoiceSettingCsvResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 130);
722
+ /**
723
+ * Describes the message blueapi.billing.v1.GetBillingGroupInvoiceServiceDiscountsRequest.
724
+ * Use `create(GetBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
725
+ */
726
+ exports.GetBillingGroupInvoiceServiceDiscountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 131);
727
+ /**
728
+ * Describes the message blueapi.billing.v1.GetBillingGroupInvoiceServiceDiscountsResponse.
729
+ * Use `create(GetBillingGroupInvoiceServiceDiscountsResponseSchema)` to create a new message.
730
+ */
731
+ exports.GetBillingGroupInvoiceServiceDiscountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 132);
732
+ /**
733
+ * Describes the message blueapi.billing.v1.AddBillingGroupCustomFieldRequest.
734
+ * Use `create(AddBillingGroupCustomFieldRequestSchema)` to create a new message.
735
+ */
736
+ exports.AddBillingGroupCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 133);
737
+ /**
738
+ * Describes the message blueapi.billing.v1.DeleteBillingGroupCustomFieldRequest.
739
+ * Use `create(DeleteBillingGroupCustomFieldRequestSchema)` to create a new message.
740
+ */
741
+ exports.DeleteBillingGroupCustomFieldRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 134);
742
+ /**
743
+ * Describes the message blueapi.billing.v1.AddAccountToBillingGroupRequest.
744
+ * Use `create(AddAccountToBillingGroupRequestSchema)` to create a new message.
745
+ */
746
+ exports.AddAccountToBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 135);
747
+ /**
748
+ * Describes the message blueapi.billing.v1.AccountToAdd.
749
+ * Use `create(AccountToAddSchema)` to create a new message.
750
+ */
751
+ exports.AccountToAddSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 136);
752
+ /**
753
+ * Describes the message blueapi.billing.v1.AddTagsToBillingGroupRequest.
754
+ * Use `create(AddTagsToBillingGroupRequestSchema)` to create a new message.
755
+ */
756
+ exports.AddTagsToBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 137);
757
+ /**
758
+ * Describes the message blueapi.billing.v1.TagSetting.
759
+ * Use `create(TagSettingSchema)` to create a new message.
760
+ */
761
+ exports.TagSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 138);
762
+ /**
763
+ * Describes the message blueapi.billing.v1.Tag.
764
+ * Use `create(TagSchema)` to create a new message.
765
+ */
766
+ exports.TagSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 139);
767
+ /**
768
+ * Describes the message blueapi.billing.v1.NonTagSetting.
769
+ * Use `create(NonTagSettingSchema)` to create a new message.
770
+ */
771
+ exports.NonTagSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 140);
772
+ /**
773
+ * Describes the message blueapi.billing.v1.SaveTagInvoiceSettingResponse.
774
+ * Use `create(SaveTagInvoiceSettingResponseSchema)` to create a new message.
775
+ */
776
+ exports.SaveTagInvoiceSettingResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 141);
777
+ /**
778
+ * Describes the message blueapi.billing.v1.UpdateNonTagGroupToBillingGroupRequest.
779
+ * Use `create(UpdateNonTagGroupToBillingGroupRequestSchema)` to create a new message.
780
+ */
781
+ exports.UpdateNonTagGroupToBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 142);
782
+ /**
783
+ * Describes the message blueapi.billing.v1.NonTagGroupSetting.
784
+ * Use `create(NonTagGroupSettingSchema)` to create a new message.
785
+ */
786
+ exports.NonTagGroupSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 143);
787
+ /**
788
+ * Describes the message blueapi.billing.v1.SaveInvoiceSettingsRequest.
789
+ * Use `create(SaveInvoiceSettingsRequestSchema)` to create a new message.
790
+ */
791
+ exports.SaveInvoiceSettingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 144);
792
+ /**
793
+ * Describes the message blueapi.billing.v1.InvoiceSettings.
794
+ * Use `create(InvoiceSettingsSchema)` to create a new message.
795
+ */
796
+ exports.InvoiceSettingsSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 145);
797
+ /**
798
+ * Describes the message blueapi.billing.v1.BasicInformation.
799
+ * Use `create(BasicInformationSchema)` to create a new message.
800
+ */
801
+ exports.BasicInformationSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 146);
802
+ /**
803
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupBasicInformationRequest.
804
+ * Use `create(UpdateBillingGroupBasicInformationRequestSchema)` to create a new message.
805
+ */
806
+ exports.UpdateBillingGroupBasicInformationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 147);
807
+ /**
808
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupCustomFieldsRequest.
809
+ * Use `create(UpdateBillingGroupCustomFieldsRequestSchema)` to create a new message.
810
+ */
811
+ exports.UpdateBillingGroupCustomFieldsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 148);
812
+ /**
813
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupFreeFormatRequest.
814
+ * Use `create(UpdateBillingGroupFreeFormatRequestSchema)` to create a new message.
815
+ */
816
+ exports.UpdateBillingGroupFreeFormatRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 149);
817
+ /**
818
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupLinkedResourcesRequest.
819
+ * Use `create(UpdateBillingGroupLinkedResourcesRequestSchema)` to create a new message.
820
+ */
821
+ exports.UpdateBillingGroupLinkedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 150);
822
+ /**
823
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupInvoiceSettingsRequest.
824
+ * Use `create(UpdateBillingGroupInvoiceSettingsRequestSchema)` to create a new message.
825
+ */
826
+ exports.UpdateBillingGroupInvoiceSettingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 151);
827
+ /**
828
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupResellerChargesRequest.
829
+ * Use `create(UpdateBillingGroupResellerChargesRequestSchema)` to create a new message.
830
+ */
831
+ exports.UpdateBillingGroupResellerChargesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 152);
832
+ /**
833
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupAdditionalChargesRequest.
834
+ * Use `create(UpdateBillingGroupAdditionalChargesRequestSchema)` to create a new message.
835
+ */
836
+ exports.UpdateBillingGroupAdditionalChargesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 153);
837
+ /**
838
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupAdditionalChargesRequest.CustomizedBillingServiceBillingSetting.
839
+ * Use `create(UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceBillingSettingSchema)` to create a new message.
840
+ */
841
+ exports.UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceBillingSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 153, 0);
842
+ /**
843
+ * Describes the message blueapi.billing.v1.DeleteBillingGroupRequest.
844
+ * Use `create(DeleteBillingGroupRequestSchema)` to create a new message.
845
+ */
846
+ exports.DeleteBillingGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 154);
847
+ /**
848
+ * Describes the message blueapi.billing.v1.GetBillingGroupAccountSupportPlanRequest.
849
+ * Use `create(GetBillingGroupAccountSupportPlanRequestSchema)` to create a new message.
850
+ */
851
+ exports.GetBillingGroupAccountSupportPlanRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 155);
852
+ /**
853
+ * Describes the message blueapi.billing.v1.GetBillingGroupAccountSupportPlanResponse.
854
+ * Use `create(GetBillingGroupAccountSupportPlanResponseSchema)` to create a new message.
855
+ */
856
+ exports.GetBillingGroupAccountSupportPlanResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 156);
857
+ /**
858
+ * Describes the message blueapi.billing.v1.UpdateBillingGroupAccountSupportPlanRequest.
859
+ * Use `create(UpdateBillingGroupAccountSupportPlanRequestSchema)` to create a new message.
860
+ */
861
+ exports.UpdateBillingGroupAccountSupportPlanRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 157);
862
+ /**
863
+ * Describes the message blueapi.billing.v1.GetAnnouncementsRequest.
864
+ * Use `create(GetAnnouncementsRequestSchema)` to create a new message.
865
+ */
866
+ exports.GetAnnouncementsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 158);
867
+ /**
868
+ * Describes the message blueapi.billing.v1.CreateAnnouncementRequest.
869
+ * Use `create(CreateAnnouncementRequestSchema)` to create a new message.
870
+ */
871
+ exports.CreateAnnouncementRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 159);
872
+ /**
873
+ * Describes the message blueapi.billing.v1.UpdateAnnouncementRequest.
874
+ * Use `create(UpdateAnnouncementRequestSchema)` to create a new message.
875
+ */
876
+ exports.UpdateAnnouncementRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 160);
877
+ /**
878
+ * Describes the message blueapi.billing.v1.UpdateAnnouncementsStatusRequest.
879
+ * Use `create(UpdateAnnouncementsStatusRequestSchema)` to create a new message.
880
+ */
881
+ exports.UpdateAnnouncementsStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 161);
882
+ /**
883
+ * Describes the message blueapi.billing.v1.UpdateAnnouncementDateRequest.
884
+ * Use `create(UpdateAnnouncementDateRequestSchema)` to create a new message.
885
+ */
886
+ exports.UpdateAnnouncementDateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 162);
887
+ /**
888
+ * Describes the message blueapi.billing.v1.DeleteAnnouncementRequest.
889
+ * Use `create(DeleteAnnouncementRequestSchema)` to create a new message.
890
+ */
891
+ exports.DeleteAnnouncementRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 163);
892
+ /**
893
+ * Describes the message blueapi.billing.v1.Announcement.
894
+ * Use `create(AnnouncementSchema)` to create a new message.
895
+ */
896
+ exports.AnnouncementSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 164);
897
+ /**
898
+ * Describes the message blueapi.billing.v1.GetBillingGroupAnnouncementsRequest.
899
+ * Use `create(GetBillingGroupAnnouncementsRequestSchema)` to create a new message.
900
+ */
901
+ exports.GetBillingGroupAnnouncementsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 165);
902
+ /**
903
+ * Describes the message blueapi.billing.v1.GetBillingGroupAnnouncementsResponse.
904
+ * Use `create(GetBillingGroupAnnouncementsResponseSchema)` to create a new message.
905
+ */
906
+ exports.GetBillingGroupAnnouncementsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 166);
907
+ /**
908
+ * Describes the message blueapi.billing.v1.GetCreditsRequest.
909
+ * Use `create(GetCreditsRequestSchema)` to create a new message.
910
+ */
911
+ exports.GetCreditsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 167);
912
+ /**
913
+ * Describes the message blueapi.billing.v1.Credit.
914
+ * Use `create(CreditSchema)` to create a new message.
915
+ */
916
+ exports.CreditSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 168);
917
+ /**
918
+ * Describes the message blueapi.billing.v1.GetCsvSettingsRequest.
919
+ * Use `create(GetCsvSettingsRequestSchema)` to create a new message.
920
+ */
921
+ exports.GetCsvSettingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 169);
922
+ /**
923
+ * Describes the message blueapi.billing.v1.CsvSetting.
924
+ * Use `create(CsvSettingSchema)` to create a new message.
925
+ */
926
+ exports.CsvSettingSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 170);
927
+ /**
928
+ * Describes the message blueapi.billing.v1.CsvSetting.Column.
929
+ * Use `create(CsvSetting_ColumnSchema)` to create a new message.
930
+ */
931
+ exports.CsvSetting_ColumnSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 170, 0);
932
+ /**
933
+ * Describes the message blueapi.billing.v1.UpdateInvoiceExchangeRateRequest.
934
+ * Use `create(UpdateInvoiceExchangeRateRequestSchema)` to create a new message.
935
+ */
936
+ exports.UpdateInvoiceExchangeRateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 171);
937
+ /**
938
+ * Describes the message blueapi.billing.v1.ConvertInvoiceToPdfRequest.
939
+ * Use `create(ConvertInvoiceToPdfRequestSchema)` to create a new message.
940
+ */
941
+ exports.ConvertInvoiceToPdfRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 172);
942
+ /**
943
+ * Describes the message blueapi.billing.v1.ConvertInvoiceToPdfResponse.
944
+ * Use `create(ConvertInvoiceToPdfResponseSchema)` to create a new message.
945
+ */
946
+ exports.ConvertInvoiceToPdfResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_billing_v1_billing, 173);
947
+ /**
948
+ * Billing service definition.
949
+ *
950
+ * @generated from service blueapi.billing.v1.Billing
951
+ */
952
+ exports.Billing = (0, codegenv2_1.serviceDesc)(exports.file_billing_v1_billing, 0);