@alphauspkgs/blue-sdk-ts 1.0.42 → 1.0.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/v1/admin_pb.js +1 -1
- package/admin/v1/admin_pb.ts +15 -1
- package/billing/v1/billing_pb.js +170 -145
- package/billing/v1/billing_pb.ts +400 -142
- package/cost/v1/cost_pb.js +54 -54
- package/cost/v1/cost_pb.ts +135 -68
- package/cover/v1/cover_pb.js +18 -13
- package/cover/v1/cover_pb.ts +26 -9
- package/gc/v1/gc_pb.js +146 -106
- package/gc/v1/gc_pb.ts +966 -159
- package/iam/v1/iam_pb.js +28 -3
- package/iam/v1/iam_pb.ts +159 -4
- package/package.json +1 -1
- package/prism/v1/client.js +2 -2
- package/vortex/v1/client.js +2 -2
package/billing/v1/billing_pb.ts
CHANGED
|
@@ -34,7 +34,7 @@ import type { AccountServiceDiscountsExportSchema, GroupServiceDiscountsExportSc
|
|
|
34
34
|
import { file_api_ripple_v1_invoiceservicediscounts } from "../../api/ripple/v1/invoiceservicediscounts_pb";
|
|
35
35
|
import type { BillingGroupAccountSupportPlan } from "../../api/ripple/v1/accountsupportplan_pb";
|
|
36
36
|
import { file_api_ripple_v1_accountsupportplan } from "../../api/ripple/v1/accountsupportplan_pb";
|
|
37
|
-
import type { AdjustmentEntrySchema } from "../../api/ripple/v1/adjustmententry_pb";
|
|
37
|
+
import type { AdjustmentEntry, AdjustmentEntrySchema } from "../../api/ripple/v1/adjustmententry_pb";
|
|
38
38
|
import { file_api_ripple_v1_adjustmententry } from "../../api/ripple/v1/adjustmententry_pb";
|
|
39
39
|
import type { AdjustmentConfigSchema, ConfigFilters, ManagementAccount } from "../../api/adjustment_pb";
|
|
40
40
|
import { file_api_adjustment } from "../../api/adjustment_pb";
|
|
@@ -53,7 +53,7 @@ import type { Message } from "@bufbuild/protobuf";
|
|
|
53
53
|
* Describes the file billing/v1/billing.proto.
|
|
54
54
|
*/
|
|
55
55
|
export const file_billing_v1_billing: GenFile = /*@__PURE__*/
|
|
56
|
-
fileDesc("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SEmJsdWVhcGkuYmlsbGluZy52MSKgBAoMQmlsbGluZ0dyb3VwEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYByABKAkSDAoEdHlwZRgMIAEoCRIQCghoYXNDaGlsZBgNIAEoCBI+ChBiaWxsaW5nR3JvdXBJbmZvGAogASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8SOgoOYWNjb3VudE9wdGlvbnMYCCABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSJgoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50EiIKBHRhZ3MYBiADKAsyFC5ibHVlYXBpLmFwaS5Db3N0VGFnEkgKD2ludm9pY2VTZXR0aW5ncxgFIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSSAoPYWRkaXRpb25hbEl0ZW1zGAsgASgLMi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIyCgphd3NPcHRpb25zGAkgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMioAEKG0JpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIpCgNhd3MYASADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKwoFYXp1cmUYAiADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKQoDZ2NwGAMgAygLMhwuYmx1ZWFwaS5hcGkuQWRkaXRpb25hbEl0ZW1zIu4BChtCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQwoDYXdzGAEgASgLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cFZlbmRvcmVkSW52b2ljZVNldHRpbmcSRQoFYXp1cmUYAiABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxJDCgNnY3AYAyABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZyLTAwoiQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJIpIBChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAkilAQKGUNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIUCgxiaWxsaW5nVGl0bGUYBCABKAkSEwoLcGhvbmVOdW1iZXIYBSABKAkSEgoKcG9zdGFsQ29kZRgGIAEoCRIPCgdhZGRyZXNzGAcgASgJEhAKCHBlcnNvbmFsGAggASgJEg8KB3JlbWFya3MYCSABKAkSEQoJcHJvamVjdElkGAogASgJEhAKCGxhbmd1YWdlGAsgASgJEhMKC2Rpc3BsYXlDb3N0GAwgASgJEhgKEGV4Y2hhbmdlUmF0ZVR5cGUYDSABKAkSOgoOYWNjb3VudE9wdGlvbnMYDyABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSRgoIaW52b2ljZXMYDiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USMgoKYXdzT3B0aW9ucxgQIAEoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NPcHRpb25zEgwKBGNpdHkYESABKAkSEgoKcHJlZmVjdHVyZRgSIAEoCRIPCgdjb3VudHJ5GBMgASgJIjUKCkF3c09wdGlvbnMSFgoOdXNlUHJvRm9ybWFDdXIYASABKAgSDwoHcGF5ZXJJZBgCIAEoCSKrAQoOQWNjb3VudE9wdGlvbnMSMQoDYXdzGAEgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMQoDZ2NwGAIgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMwoFYXp1cmUYAyABKAsyJC5ibHVlYXBpLmJpbGxpbmcudjEuUmVnaXN0ZXJBY2NvdW50cyI2ChBSZWdpc3RlckFjY291bnRzEg8KB2VuYWJsZWQYASABKAgSEQoJYWNjb3VudElkGAIgASgJIlQKDlZlbmRvckFjY291bnRzEg4KBnZlbmRvchgBIAEoCRIyCghhY2NvdW50cxgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50VG9BZGQiYAoMQXp1cmVPcHRpb25zEhUKDXJlc291cmNlR3JvdXAYASABKAgSGwoTYXBwbHlQY0Vhcm5lZENyZWRpdBgCIAEoCBIcChRhcHBseUNhbXBhaWduUHJpY2luZxgDIAEoCCKqBwofQ3JlYXRlQmlsbGluZ0dyb3VwTWVyZ2VkUmVxdWVzdBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhMKC2NvbXBhbnlOYW1lGAMgASgJEhQKDGJpbGxpbmdUaXRsZRgEIAEoCRITCgtwaG9uZU51bWJlchgFIAEoCRISCgpwb3N0YWxDb2RlGAYgASgJEg8KB2FkZHJlc3MYByABKAkSEAoIcGVyc29uYWwYCCABKAkSDwoHcmVtYXJrcxgJIAEoCRIRCglwcm9qZWN0SWQYCiABKAkSEAoIbGFuZ3VhZ2UYCyABKAkSEwoLZGlzcGxheUNvc3QYDCABKAkSGAoQZXhjaGFuZ2VSYXRlVHlwZRgNIAEoCRI6Cg5hY2NvdW50T3B0aW9ucxgPIAEoCzIiLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50T3B0aW9ucxJGCghpbnZvaWNlcxgOIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRIyCgphd3NPcHRpb25zGBAgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMSDAoEY2l0eRgRIAEoCRISCgpwcmVmZWN0dXJlGBIgASgJEg8KB2NvdW50cnkYEyABKAkSGQoRaW52b2ljZVRlbXBsYXRlSWQYFCABKAkSMwoLdGFnU2V0dGluZ3MYFSADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGBYgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmcSOgoOdmVuZG9yQWNjb3VudHMYFyADKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuVmVuZG9yQWNjb3VudHMSWwoMY3VzdG9tRmllbGRzGBggAygLMkUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZFJlcXVlc3QuQ3VzdG9tRmllbGRzRW50cnkSNgoMYXp1cmVPcHRpb25zGBkgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkF6dXJlT3B0aW9ucxozChFDdXN0b21GaWVsZHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIv8BCiBDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRJHCgNhd3MYASABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISSQoFYXp1cmUYAiABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISRwoDZ2NwGAMgASgLMjouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlVmVuZG9yItcDCiZDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZVZlbmRvchIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJImMKFkdldEJpbGxpbmdHcm91cFJlcXVlc3QSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUQoXR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2USNgoMYmlsbGluZ0dyb3VwGAEgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCKWAQoLQWNjZXNzR3JvdXASFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIXCg9hY2Nlc3NHcm91cE5hbWUYAiABKAkSHgoWYWNjZXNzR3JvdXBEZXNjcmlwdGlvbhgDIAEoCRI3Cg1iaWxsaW5nR3JvdXBzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCJeChVHZXRBY2Nlc3NHcm91cFJlcXVlc3QSFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIuCgpmaWVsZF9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJOChZHZXRBY2Nlc3NHcm91cFJlc3BvbnNlEjQKC2FjY2Vzc0dyb3VwGAEgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY2Vzc0dyb3VwIq8CChJBd3NEYWlseVJ1bkhpc3RvcnkSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDQoFbW9udGgYAyABKAkSQAoIYWNjb3VudHMYBCADKAsyLi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQalAEKB0FjY291bnQSEQoJYWNjb3VudElkGAEgASgJEkcKB2hpc3RvcnkYAiADKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQuSGlzdG9yeRotCgdIaXN0b3J5EhEKCXRpbWVzdGFtcBgBIAEoCRIPCgd0cmlnZ2VyGAIgASgJIj8KHUxpc3RBd3NEYWlseVJ1bkhpc3RvcnlSZXF1ZXN0Eg0KBW1vbnRoGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiVgoaTGlzdFVzYWdlQ29zdHNEcmlmdFJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhkKEWJpbGxpbmdJbnRlcm5hbElkGAIgASgJEg0KBW1vbnRoGAMgASgJIoYBCg9Vc2FnZUNvc3RzRHJpZnQSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDwoHYWNjb3VudBgDIAEoCRIQCghzbmFwc2hvdBgEIAEoARIPCgdjdXJyZW50GAUgASgBEgwKBGRpZmYYBiABKAEiMgoRR2V0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIPCgdncm91cElkGAIgASgJIjkKGEV4cG9ydEludm9pY2VGaWxlUmVxdWVzdBIMCgRkYXRlGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiKAoZRXhwb3J0SW52b2ljZUZpbGVSZXNwb25zZRILCgN1cmwYASABKAkiNQojUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIiQKIkxpc3RJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QiXgohR2V0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJEi0KCWZpZWxkTWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siagoXSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdjcmVhdGVkGAQgASgJEg8KB3VwZGF0ZWQYBSABKAkiHAoaTGlzdEludm9pY2VUZW1wbGF0ZVJlcXVlc3QiXQooVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIfChFpbnZvaWNlVGVtcGxhdGVJZBgCIAEoCUIE4kEBAiKeAgobTGlzdEludm9pY2VUZW1wbGF0ZVJlc3BvbnNlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHY3JlYXRlZBgEIAEoCRIPCgd1cGRhdGVkGAUgASgJEhkKEW51bWJlck9mQ29ubmVjdGVkGAYgASgFElAKFWNvbm5lY3RlZEJpbGxpbmdHcm91cBgHIAMoCzIxLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlQ29ubmVjdGVkQmlsbGluZ0dyb3VwcxJBCghpbnZvaWNlcxgIIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiIgogR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QiSAohR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1Jlc3BvbnNlEiMKG3Nob3dSSVNQVXBmcm9udFRpbWVJbnRlcnZhbBgBIAEoCCKsAQojVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QSVQoHc2V0dGluZxgBIAMoCzJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdC5TZXR0aW5nRW50cnkaLgoMU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEibAodSW52b2ljZUNvbm5lY3RlZEJpbGxpbmdHcm91cHMSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCSI8CilMaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIocBCh5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDwoHYWNjb3VudBgCIAEoCRJIChBzZXJ2aWNlRGlzY291bnRzGAMgASgLMi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIjgKF0FjY291bnRTZXJ2aWNlRGlzY291bnRzEgoKAmlkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCSJ9CitDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMibQosQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMifQorVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIm0KLFVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIj4KK0RlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSJ9CitSZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMiTwowQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSCgoCaWQYAiABKAkiPwoxQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSJPCjBVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIKCgJpZBgCIAEoCSI/CjFVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEgoKAmlkGAEgASgJIkMKMERlbGV0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIlcKFENyZWF0ZUludm9pY2VSZXF1ZXN0EgwKBGRhdGUYBCABKAkSDgoGdmVuZG9yGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkiJQoXR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QSCgoCaWQYASABKAkiKAoYTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0EgwKBGRhdGUYASABKAkiYAocVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBIMCgRkYXRlGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkSDwoHZW5hYmxlZBgEIAEoCCLPAQoVQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDQoFZW1haWwYAiABKAkSEAoIcGFzc3dvcmQYAyABKAkSFAoMbm90aWZpY2F0aW9uGAQgASgIEjYKCndhdmVDb25maWcYBSADKAsyIi5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXJDb25maWcSNgoKYXF1YUNvbmZpZxgGIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZyJGChRMaXN0UmVzZWxsZXJzUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJQChJHZXRSZXNlbGxlclJlcXVlc3QSCgoCaWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sipgIKFVVwZGF0ZVJlc2VsbGVyUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhITCgVlbWFpbBgCIAEoCUIE4kEBARIXCghwYXNzd29yZBgDIAEoCUIF4kECBAESPAoKd2F2ZUNvbmZpZxgEIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZ0IE4kEBARI8CgphcXVhQ29uZmlnGAUgAygLMiIuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyQ29uZmlnQgTiQQEBEhsKDG5vdGlmaWNhdGlvbhgGIAEoCEIF4kECBAESNAoKdXBkYXRlTWFzaxgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiIwoVRGVsZXRlUmVzZWxsZXJSZXF1ZXN0EgoKAmlkGAEgASgJIkoKGEdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayLHAgoZR2V0QmlsbGluZ1NldHRpbmdSZXNwb25zZRIwCgl5ZWFyTW9udGgYASADKAsyHS5ibHVlYXBpLmFwaS5yaXBwbGUuWWVhck1vbnRoEjQKDnJvdW5kaW5nTWV0aG9kGAIgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjoKFGV4cG9ydFJvdW5kaW5nTWV0aG9kGAMgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjgKDWludm9pY2VMYXlvdXQYBCABKAsyIS5ibHVlYXBpLmFwaS5yaXBwbGUuSW52b2ljZUxheW91dBIzCg5pbnZvaWNlRHVlRGF0ZRgFIAEoCzIbLmJsdWVhcGkuYXBpLnJpcHBsZS5EdWVEYXRlEhcKD3N1cHBvcnRDdXJyZW5jeRgGIAMoCSI5ChhMaXN0RXhjaGFuZ2VSYXRlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJImUKHFNldEdsb2JhbEV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASJ3ChtTZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIQCghjdXJyZW5jeRgEIAEoCRIUCgxleGNoYW5nZVJhdGUYBSABKAEibAoiU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASLiAQoZTGlzdEV4Y2hhbmdlUmF0ZXNSZXNwb25zZRINCgVtb250aBgBIAEoCRI2CgZjb21tb24YAiABKAsyJi5ibHVlYXBpLmFwaS5yaXBwbGUuQ29tbW9uRXhjaGFuZ2VSYXRlEkIKDGJpbGxpbmdHcm91cBgDIAMoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSOgoFcGF5ZXIYBCABKAsyKy5ibHVlYXBpLmFwaS5yaXBwbGUuVmVuZG9yUGF5ZXJFeGNoYW5nZVJhdGUiSQoXTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVAoYQ3JlYXRlQWNjZXNzR3JvdXBSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSFQoNYmlsbGluZ0dyb3VwcxgDIAMoCSJgChhVcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAQgAygJIiYKGERlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCSJ9ChJMaXN0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSGQoRYmlsbGluZ0ludGVybmFsSWQYAyABKAkSLgoKZmllbGRfbWFzaxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sihAkKE0xpc3RJbnZvaWNlUmVzcG9uc2USGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIaChJmaW5hbGl6YXRpb25TdGF0dXMYBSABKAkSEQoJaXNDcmVhdGVkGAYgASgIEhkKEWlzU2V0dGluZ01vZGlmaWVkGAcgASgIEhMKC2NyZWF0ZWREYXRlGAggASgJEhMKC3VwZGF0ZWREYXRlGAkgASgJEhYKDmNyZWF0ZWRWZW5kb3JzGAogAygJEhMKC2lzUHVibGlzaGVkGAsgASgIEl0KE3ZlbmRvckJpbGxpbmdBbW91bnQYDCADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5WZW5kb3JCaWxsaW5nQW1vdW50RW50cnkSGgoSYmlsbGluZ0Ftb3VudFRvdGFsGA0gASgJEhAKCGN1cnJlbmN5GA4gASgJEg0KBXVybElkGA8gASgJEm0KG2NyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZxgQIAMoCzJILmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlc3BvbnNlLkNyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EmkKGXNhdmVkVmVuZG9ySW52b2ljZVNldHRpbmcYESADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5TYXZlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSbQobZGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nGBIgAygLMkguYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UuRGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSEAoIaGFzQ2hpbGQYEyABKAgaOgoYVmVuZG9yQmlsbGluZ0Ftb3VudEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaZwogQ3JlYXRlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSCwoDa2V5GAEgASgJEjIKBXZhbHVlGAIgASgLMiMuYmx1ZWFwaS5iaWxsaW5nLnYxLkludm9pY2VTZXR0aW5nczoCOAEaZQoeU2F2ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBGmcKIERlZmF1bHRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBIikKG0xpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBIKCgJpZBgBIAEoCSJOCiJMaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Eg8KB3BheWVySWQYASABKAkSFwoPYmlsbGluZ0dyb3VwQXJuGAIgASgJIo8BCg9BYmNCaWxsaW5nR3JvdXASCwoDYXJuGAEgASgJEgwKBG5hbWUYAiABKAkSFAoMY3JlYXRpb25UaW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhgKEHByaW1hcnlBY2NvdW50SWQYBSABKAkSDAoEc2l6ZRgGIAEoCRIOCgZzdGF0dXMYByABKAkiNAoKQWJjQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkiYgodUmVhZEludm9pY2VBZGp1c3RtZW50c1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIPCgdmZWVUeXBlGAQgASgJIpkBChxSZWFkQWRqdXN0bWVudEVudHJpZXNSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhITCgVtb250aBgCIAEoCUIE4kEBARpOCiJBZGp1c3RtZW50RW50cmllc1JlcXVlc3RBd3NPcHRpb25zEhMKC3NwcERpc2NvdW50GAEgASgIEhMKC2VkcERpc2NvdW50GAIgASgIIkMKGUdldEFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEhAKAmlkGAIgASgJQgTiQQECIp4DChtBcHBseUFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECElMKB3NldHRpbmcYAiABKAsyPC5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZ0IE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECGvwBCgxBcHBseVNldHRpbmcSEwoFbW9udGgYASABKAlCBOJBAQESFQoHdGF4RnJlZRgCIAEoCEIE4kEBARJqCgxleGNoYW5nZVJhdGUYAyADKAsyTi5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZy5FeGNoYW5nZVJhdGVFbnRyeUIE4kEBARIfChFiaWxsaW5nSW50ZXJuYWxJZBgEIAEoCUIE4kEBARozChFFeGNoYW5nZVJhdGVFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBIkwKHVJlc3RvcmVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECIl8KG1NwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQISGAoKc3RhcnRNb250aBgDIAEoCUIE4kEBAiL8AQoeQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAhJWCgZjb25maWcYAyADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFjY291bnRDb25maWdCBOJBAQISIQoTYWNjb3VudEZvclJlbWFpbmluZxgEIAEoCUIE4kEBAho3Cg1BY2NvdW50Q29uZmlnEhAKAmlkGAEgASgJQgTiQQECEhQKBmFtb3VudBgCIAEoAUIE4kEBAiJMCiJSZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiJPCiVSZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiI8ChtMaXN0QWNjb3VudFJlc291cmNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJIkoKD1Jlc291cmNlQWNjb3VudBIPCgdwYXllcklkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSEgoKcmVnaXN0ZXJlZBgDIAEoCCIsChpHZXRBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkijQEKHUNyZWF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIqCgZjb25maWcYAiADKAsyGi5ibHVlYXBpLmFwaS5Db25maWdGaWx0ZXJzEjAKCGFjY291bnRzGAMgAygLMh4uYmx1ZWFwaS5hcGkuTWFuYWdlbWVudEFjY291bnQijQEKHVVwZGF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIqCgZjb25maWcYAiADKAsyGi5ibHVlYXBpLmFwaS5Db25maWdGaWx0ZXJzEjAKCGFjY291bnRzGAMgAygLMh4uYmx1ZWFwaS5hcGkuTWFuYWdlbWVudEFjY291bnQiLwodRGVsZXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJImcKGVJlYWRVbnRhZ2dlZEdyb3Vwc1JlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEjQKCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBIlwKJFJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzUmVxdWVzdBI0CgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBASJmCiJHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EgoKAmlkGAEgASgJEjQKCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBInwKJUNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIwCgZjb25maWcYAyABKAsyIC5ibHVlYXBpLmFwaS5yaXBwbGUuTWV0aG9kQ29uZmlnIsUBCiVVcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECElQKGGN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRgCIAEoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCBOJBAQISNAoKdXBkYXRlTWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMwolRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIKCgJpZBgBIAEoCSJdCi5HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIskBCi9HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXNwb25zZRIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAyABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISLAoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50QgTiQQEBIvcCCi5TZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEoABCgdzZXR0aW5nGAMgAygLMmkuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQIalAEKJkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nEhAKAmlkGAEgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAIgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEhYKCGFjY291bnRzGAMgAygJQgTiQQEBImAKMURlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QSFQoHZ3JvdXBJZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQIikQEKJENyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEkYKB3NldHRpbmcYAyABKAsyNS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHNTZXR0aW5nIsUBCiRVcGRhdGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISVQoXaW52b2ljZVNlcnZpY2VEaXNjb3VudHMYAiABKAsyLi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHNCBOJBAQISNAoKdXBkYXRlTWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMgokRGVsZXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJIm4KB1RhZ0RhdGESEgoKY3VzdG9tZXJJZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSFAoMY3VzdG9tZXJOYW1lGAMgASgJEiYKBHRhZ3MYBCADKAsyGC5ibHVlYXBpLmJpbGxpbmcudjEuVGFncyIjCgRUYWdzEgsKA2tleRgBIAEoCRIOCgZ2YWx1ZXMYAiADKAkiLgoOR2V0VGFnc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEgwKBHR5cGUYAiABKAkiOwoLQ3VzdG9tRmllbGQSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIl4KF0JpbGxpbmdHcm91cEN1c3RvbUZpZWxkEg0KBXZhbHVlGAEgASgJEjQKC2N1c3RvbUZpZWxkGAIgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIjUKIkxpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSKFAQojTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVzcG9uc2USDwoHZ3JvdXBJZBgBIAEoCRJNChhiaWxsaW5nR3JvdXBDdXN0b21GaWVsZHMYAiADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQiPAoYQ3JlYXRlQ3VzdG9tRmllbGRSZXF1ZXN0EgsKA2tleRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCSJIChhVcGRhdGVDdXN0b21GaWVsZFJlcXVlc3QSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIiYKGERlbGV0ZUN1c3RvbUZpZWxkUmVxdWVzdBIKCgJpZBgBIAEoCSIYChZMaXN0Q3VzdG9tRmllbGRSZXF1ZXN0ImsKF0NyZWF0ZUZyZWVGb3JtYXRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDgoGdmVuZG9yGAIgASgJEi8KBWl0ZW1zGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSJhCgxGcmVlRm9ybUl0ZW0SDQoFbGFiZWwYASABKAkSEAoIdW5pdENvc3QYAiABKAMSDQoFdG90YWwYBSABKAMSEAoIcXVhbnRpdHkYAyABKA0SDwoHZW5hYmxlZBgEIAEoCCI6ChdEZWxldGVGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCSI9ChRHZXRGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEhQKDGlzQXNzb2NpYXRlZBgCIAEoCCJuChVHZXRGcmVlRm9ybWF0UmVzcG9uc2USDwoHZ3JvdXBJZBgDIAEoCRIOCgZ2ZW5kb3IYASABKAkSNAoKZnJlZUZvcm1hdBgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0idwoeVXBkYXRlVGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIPCgdncm91cElkGAIgASgJEjQKBWl0ZW1zGAMgAygLMiUuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3NBZGRpbmdTZXR0aW5nIj4KG0dldFRhZ3NBZGRpbmdTZXR0aW5nUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDwoHZ3JvdXBJZBgCIAEoCSJJChFUYWdzQWRkaW5nU2V0dGluZxIPCgdncm91cElkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSDwoHdGFnS2V5cxgDIAMoCSJNCh1FeHBvcnRTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQEibworRXhwb3J0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQESEgoKZGlyZWN0TGluaxgDIAEoCCJ0CjBFeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSFAoGZm9ybWF0GAEgASgJQgTiQQECEhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBEhIKCmRpcmVjdExpbmsYAyABKAgiNgocRXhwb3J0QmlsbGluZ0dyb3VwQ3N2UmVxdWVzdBIWCghsYW5ndWFnZRgCIAEoCUIE4kEBASI1Ch1FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXNwb25zZRIUCgxkb3dubG9hZExpbmsYASABKAkiXAoeRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXF1ZXN0EhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBEiIKFGluY2x1ZGVNaXNjZWxsYW5lb3VzGAMgASgIQgTiQQEBIjcKH0V4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVzcG9uc2USFAoMZG93bmxvYWRMaW5rGAEgASgJIkAKLUdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIjwKLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USCgoCaWQYASABKAkiuQEKIUFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBIPCgdncm91cElkGAEgASgJElMKB2lkVG9LZXkYAiADKAsyQi5ibHVlYXBpLmJpbGxpbmcudjEuQWRkQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0LklkVG9LZXlFbnRyeRouCgxJZFRvS2V5RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJOCiREZWxldGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIVCg1jdXN0b21GaWVsZElkGAIgASgJInYKH0FkZEFjY291bnRUb0JpbGxpbmdHcm91cFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSMgoIYWNjb3VudHMYAyADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFRvQWRkIlEKDEFjY291bnRUb0FkZBISCgpjdXN0b21lcklkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRIMCgRuYW1lGAMgASgJEgwKBG5vdGUYBCABKAkiqwEKHEFkZFRhZ3NUb0JpbGxpbmdHcm91cFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSMAoIc2V0dGluZ3MYAyADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGAQgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmciRwoKVGFnU2V0dGluZxISCgpjdXN0b21lcklkGAEgASgJEiUKBHRhZ3MYAiADKAsyFy5ibHVlYXBpLmJpbGxpbmcudjEuVGFnIjEKA1RhZxILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkSDgoGYXNzaWduGAMgASgFIj4KDU5vblRhZ1NldHRpbmcSDwoHaW5jbHVkZRgBIAEoCBIMCgR0eXBlGAIgASgJEg4KBmFtb3VudBgDIAEoASI+Ch1TYXZlVGFnSW52b2ljZVNldHRpbmdSZXNwb25zZRIOCgZzdGF0dXMYASABKAkSDQoFZXJyb3IYAiABKAkifgomVXBkYXRlTm9uVGFnR3JvdXBUb0JpbGxpbmdHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEjgKCHNldHRpbmdzGAMgAygLMiYuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ0dyb3VwU2V0dGluZyI+ChJOb25UYWdHcm91cFNldHRpbmcSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRIOCgZhbW91bnQYAyABKAEimgEKGlNhdmVJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EgwKBGRhdGUYASABKAkSDgoGdmVuZG9yGAIgASgJEhEKCWFsbEdyb3VwcxgDIAEoCBIOCgZncm91cHMYBCADKAkSOwoOaW52b2ljZVNldHRpbmcYBSABKAsyIy5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZVNldHRpbmdzIpUECg9JbnZvaWNlU2V0dGluZ3MSEQoJaW52b2ljZU5vGAIgASgJEhQKDGRpc2NvdW50UmF0ZRgEIAEoARIbChNkaXNjb3VudFRhcmdldFVzYWdlGAUgASgJEhkKEWRpc2NvdW50Q2FsY0xvZ2ljGAYgASgJEg8KB3RheFJhdGUYByABKAESEgoKc3VwcG9ydEZlZRgIIAEoCRITCgtzdXBwb3J0UmF0ZRgJIAEoARIcChRzdXBwb3J0RmVlQ2FsY1RhcmdldBgKIAEoCRISCgpzdXBwb3J0Rml4GAsgASgBEhcKD3N1YnN0aXR1dGlvbkZlZRgMIAEoCRIYChBzdWJzdGl0dXRpb25SYXRlGA0gASgBEhcKD3N1YnN0aXR1dGlvbkZpeBgOIAEoARIhChlzdWJzdGl0dXRpb25GZWVDYWxjVGFyZ2V0GA8gASgJEiIKGnN1YnN0aXR1dGlvbkZlZVRhcmdldFVzYWdlGBAgASgJEh8KF3N1YnN0aXR1dGlvbkZlZUNhbGNUeXBlGBEgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgSIAEoARIMCgRtZW1vGBMgASgJEhAKCGNhbGNUeXBlGBQgASgJEjkKD2FkZGl0aW9uYWxJdGVtcxgVIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0irQMKEEJhc2ljSW5mb3JtYXRpb24SGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIWCglhZGRyZXNzZWUYBSABKAlIAIgBARIUCgdjb3VudHJ5GAYgASgJSAGIAQESFwoKcG9zdGFsQ29kZRgHIAEoCUgCiAEBEhEKBGNpdHkYCCABKAlIA4gBARIYCgtwaG9uZU51bWJlchgJIAEoCUgEiAEBEhkKDGFkZHJlc3NMaW5lMRgKIAEoCUgFiAEBEhkKDGFkZHJlc3NMaW5lMhgLIAEoCUgGiAEBEhIKBXN0YXRlGAwgASgJSAeIAQESFwoKcHJlZmVjdHVyZRgNIAEoCUgIiAEBQgwKCl9hZGRyZXNzZWVCCgoIX2NvdW50cnlCDQoLX3Bvc3RhbENvZGVCBwoFX2NpdHlCDgoMX3Bob25lTnVtYmVyQg8KDV9hZGRyZXNzTGluZTFCDwoNX2FkZHJlc3NMaW5lMkIICgZfc3RhdGVCDQoLX3ByZWZlY3R1cmUidwopVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvblJlcXVlc3QSCgoCaWQYASABKAkSPgoQYmFzaWNJbmZvcm1hdGlvbhgCIAEoCzIkLmJsdWVhcGkuYmlsbGluZy52MS5CYXNpY0luZm9ybWF0aW9uIrwBCiVVcGRhdGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZHNSZXF1ZXN0EgoKAmlkGAEgASgJElcKB2lkVG9LZXkYAiADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzUmVxdWVzdC5JZFRvS2V5RW50cnkaLgoMSWRUb0tleUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEicgojVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdFJlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEi8KBWl0ZW1zGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSLqAgooVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzUmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSFwoPc2VsZWN0aW9uTWV0aG9kGAMgASgJEjIKCGFjY291bnRzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRUb0FkZBIwCghzZXR0aW5ncxgFIAMoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5UYWdTZXR0aW5nEj0KDW5vblRhZ1NldHRpbmcYBiABKAsyIS5ibHVlYXBpLmJpbGxpbmcudjEuTm9uVGFnU2V0dGluZ0gAiAEBEj8KDmFjY291bnRPcHRpb25zGAcgASgLMiIuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRPcHRpb25zSAGIAQFCEAoOX25vblRhZ1NldHRpbmdCEQoPX2FjY291bnRPcHRpb25zIrgBCihVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EgoKAmlkGAEgASgJEhkKDGJpbGxpbmdUaXRsZRgCIAEoCUgAiAEBEhwKD2NhbGN1bGF0aW9uVHlwZRgDIAEoCUgBiAEBEhUKCGxhbmd1YWdlGAQgASgJSAKIAQFCDwoNX2JpbGxpbmdUaXRsZUISChBfY2FsY3VsYXRpb25UeXBlQgsKCV9sYW5ndWFnZSKvAQooVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9pbnZvaWNlVGVtcGxhdGUYAiABKAlIAIgBARJFCgdpbnZvaWNlGAMgASgLMjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlQhIKEF9pbnZvaWNlVGVtcGxhdGUivwQKKlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdBIKCgJpZBgBIAEoCRJ4CgNhd3MYAiADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECEnoKBWF6dXJlGAMgAygLMmUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhJ4CgNnY3AYBCADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECGpQBCiZDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZxIQCgJpZBgBIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgCIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIWCghhY2NvdW50cxgDIAMoCUIE4kEBASInChlEZWxldGVCaWxsaW5nR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJIlIKKEdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIqABCilHZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXNwb25zZRIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSDwoHZW5hYmxlZBgDIAEoCBJGCgdzZXR0aW5nGAQgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbiLwAQorVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISFQoHZW5hYmxlZBgDIAEoCEIE4kEBARJMCgdzZXR0aW5nGAQgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbkIE4kEBARI0Cgp1cGRhdGVNYXNrGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBAiIxChdHZXRBbm5vdW5jZW1lbnRzUmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCSKnAQoZQ3JlYXRlQW5ub3VuY2VtZW50UmVxdWVzdBINCgVsYWJlbBgBIAEoCRIMCgR0eXBlGAIgASgJEhAKCGNvbnRlbnRzGAMgASgJEhUKDWJpbGxpbmdHcm91cHMYBCADKAkSGAoQYWxsQmlsbGluZ0dyb3VwcxgFIAEoCBINCgVzdGFydBgGIAEoAxILCgNlbmQYByABKAMSDgoGc3RhdHVzGAggASgJIngKGVVwZGF0ZUFubm91bmNlbWVudFJlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASABKAkSQwoMYW5ub3VuY2VtZW50GAIgASgLMi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFubm91bmNlbWVudFJlcXVlc3QiSgogVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1c1JlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASADKAkSDgoGc3RhdHVzGAIgASgJIkUKHVVwZGF0ZUFubm91bmNlbWVudERhdGVSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgAygJEgwKBGRhdGUYAiABKAMiMwoZRGVsZXRlQW5ub3VuY2VtZW50UmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCSLpAQoMQW5ub3VuY2VtZW50EgoKAmlkGAEgASgJEg0KBWxhYmVsGAIgASgJEgwKBHR5cGUYAyABKAkSDwoHbWVzc2FnZRgEIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAUgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYDSABKAgSDQoFc3RhcnQYBiABKAkSCwoDZW5kGAcgASgJEgwKBGRhdGUYCCABKAkSDgoGc3RhdHVzGAkgASgJEhIKCnVzZXJTdGF0dXMYCiABKAkSDwoHY3JlYXRlZBgLIAEoCRIPCgd1cGRhdGVkGAwgASgJIjYKI0dldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkilgEKJEdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXNwb25zZRIPCgdncm91cElkGAEgASgJEhEKCWdyb3VwTmFtZRgCIAEoCRIRCgljb21wYW55SWQYAyABKAkSNwoNYW5ub3VuY2VtZW50cxgEIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5Bbm5vdW5jZW1lbnQiEwoRR2V0Q3JlZGl0c1JlcXVlc3QixAEKBkNyZWRpdBIKCgJpZBgBIAEoCRISCgpjdXN0b21lcklkGAIgASgJEhQKDGN1c3RvbWVyTmFtZRgDIAEoCRIUCgxjcmVkaXRBbW91bnQYBCABKAESDAoEdGVybRgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIPCgdjcmVhdGVkGAcgASgJEhIKCmluaXRpYWxGZWUYCCABKAESFQoNY3JlZGl0QmFsYW5jZRgJIAEoARIPCgdhcHBsaWVkGAogASgIIhcKFUdldENzdlNldHRpbmdzUmVxdWVzdCKkAQoKQ3N2U2V0dGluZxIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEjIKA2NvbBgDIAMoCzIlLmJsdWVhcGkuYmlsbGluZy52MS5Dc3ZTZXR0aW5nLkNvbHVtbhpICgZDb2x1bW4SDAoEbmFtZRgBIAEoCRIKCgJpZBgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdlbmFibGVkGAQgASgIIuYBCiBVcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdBINCgVtb250aBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSXAoMZXhjaGFuZ2VSYXRlGAMgAygLMkYuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VFeGNoYW5nZVJhdGVSZXF1ZXN0LkV4Y2hhbmdlUmF0ZUVudHJ5EhAKCGdyb3VwSWRzGAQgAygJGjMKEUV4Y2hhbmdlUmF0ZUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoAToCOAEiWwoaQ29udmVydEludm9pY2VUb1BkZlJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIVCg1iaWxsaW5nZ3JvdXBzGAIgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYAyABKAgiRAobQ29udmVydEludm9pY2VUb1BkZlJlc3BvbnNlEhAKCHByb2dyZXNzGAEgASgJEhMKC2Rvd25sb2FkVXJsGAIgASgJIogCCiFMaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZFJlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAkSEwoLY29tcGFueU5hbWUYBiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgHIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgIIAEoCRIQCghwYWdlU2l6ZRgJIAEoBRISCgpwYWdlTnVtYmVyGAogASgFIpcCChRCaWxsaW5nR3JvdXBMaXN0SXRlbRIYChBiaWxsaW5nR3JvdXBOYW1lGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhMKC2NvbXBhbnlOYW1lGAMgASgJEhgKEGJpbGxpbmdHcm91cFR5cGUYBCABKAkSTAoHdmVuZG9ycxgFIAMoCzI7LmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBMaXN0SXRlbS5CaWxsaW5nR3JvdXBWZW5kb3ISGQoRYmlsbGluZ0ludGVybmFsSWQYBiABKAkaNQoSQmlsbGluZ0dyb3VwVmVuZG9yEg4KBnZlbmRvchgBIAEoCRIPCgdlbmFibGVkGAIgASgIIrQBCiJMaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZFJlc3BvbnNlEj8KDWJpbGxpbmdHcm91cHMYASADKAsyKC5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwTGlzdEl0ZW0SEgoKdG90YWxDb3VudBgCIAEoBRITCgtjdXJyZW50UGFnZRgDIAEoBRIQCghwYWdlU2l6ZRgEIAEoBRISCgp0b3RhbFBhZ2VzGAUgASgFIo4BCiFDaGlsZEJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SCgoCaWQYASABKAkSEgoKaW50ZXJuYWxJZBgGIAEoCRIQCghwYXJlbnRJZBgCIAEoCRIUCgxyb290UGFyZW50SWQYBSABKAkSDAoEbmFtZRgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCSK+AQokQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEhAKAmlkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgDIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIsCghhY2NvdW50cxgEIAMoCzIULmJsdWVhcGkuYXBpLkFjY291bnRCBOJBAQEigAIKEUNoaWxkQmlsbGluZ0dyb3VwEk8KEGJhc2ljSW5mb3JtYXRpb24YASABKAsyNS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEk0KD2ludm9pY2VTZXR0aW5ncxgCIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncxI5CgtiaWxsaW5nSW5mbxgDIAEoCzIkLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBJbmZvEhAKCGhhc0NoaWxkGAQgASgIIuUBCiBDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncxJDCgNhd3MYASABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIhChlhY2NvdW50U3VwcG9ydFBsYW5FbmFibGVkGAIgASgIElkKGmFjY291bnRTdXBwb3J0UGxhblNldHRpbmdzGAMgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbiL7AQoeQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0Ek8KEGJhc2ljSW5mb3JtYXRpb24YASABKAsyNS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEjkKC2JpbGxpbmdJbmZvGAMgASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8STQoPaW52b2ljZVNldHRpbmdzGAIgASgLMjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzIiEKH0NyZWF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiMQobR2V0Q2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkiVgocR2V0Q2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZRI2CgdkZXRhaWxzGAEgASgLMiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwIkEKHVJlYWRDaGlsZEJpbGxpbmdHcm91cHNSZXF1ZXN0Eg4KBnJvb3RJZBgBIAEoCRIQCghwYXJlbnRJZBgCIAEoCSLAAQoeVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkSTwoQYmFzaWNJbmZvcm1hdGlvbhgCIAEoCzI1LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SOQoLYmlsbGluZ0luZm8YAyABKAsyJC5ibHVlYXBpLmFwaS5yaXBwbGUuQmlsbGluZ0dyb3VwSW5mbyIhCh9VcGRhdGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIjQKHkRlbGV0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJIiEKH0RlbGV0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UikgEKLVVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJEk0KD2ludm9pY2VTZXR0aW5ncxgCIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncyIwCi5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1Jlc3BvbnNlIpoDCjNTZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSGAoKaW50ZXJuYWxJZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISFAoGcm9vdElkGAMgASgJQgTiQQECEoUBCgdzZXR0aW5nGAQgAygLMm4uYmx1ZWFwaS5iaWxsaW5nLnYxLlNldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhqUAQomQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmcSEAoCaWQYASABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAiABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISFgoIYWNjb3VudHMYAyADKAlCBOJBAQEiVAoyU2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCRIKCgJpZBgCIAEoCSKOAQo5U2V0Q2hpbGRCaWxsaW5nR3JvdXBBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkSPQoIYWNjb3VudHMYAiADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMiWQozR2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkSDgoGdmVuZG9yGAIgASgJIs4BCjRHZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlc3BvbnNlEhAKAmlkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgDIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIsCghhY2NvdW50cxgEIAMoCzIULmJsdWVhcGkuYXBpLkFjY291bnRCBOJBAQEiSAoyR2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCSJBCjNHZXRDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USCgoCaWQYASABKAkiUAo6UmVhZENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJInkKHUJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0Eg4KBnZlbmRvchgFIAEoCRISCgpjc3ZDb250ZW50GAEgASgMEhEKCWRlbGltaXRlchgCIAEoCRIRCgloYXNIZWFkZXIYAyABKAgSDgoGZHJ5UnVuGAQgASgIIlUKG0J1bGtDcmVhdGVCaWxsaW5nR3JvdXBFcnJvchINCgVpbmRleBgBIAEoBRIWCg5iaWxsaW5nR3JvdXBJZBgCIAEoCRIPCgdtZXNzYWdlGAMgASgJIu0BCh5CdWxrQ3JlYXRlQmlsbGluZ0dyb3VwTWV0YWRhdGESDgoGc3RhdHVzGAEgASgJEhIKCnRvdGFsQ291bnQYAiABKAUSFgoOcHJvY2Vzc2VkQ291bnQYAyABKAUSFAoMc3VjY2Vzc0NvdW50GAQgASgFEhQKDGZhaWx1cmVDb3VudBgFIAEoBRI/CgZlcnJvcnMYBiADKAsyLy5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0NyZWF0ZUJpbGxpbmdHcm91cEVycm9yEhEKCXN0YXJ0VGltZRgHIAEoCRIPCgdlbmRUaW1lGAggASgJIrkBChNFeGNsdWRlU2VydmljZUVudHJ5Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEAoIcGF5ZXJfaWQYAyABKAkSDwoHc2VydmljZRgEIAEoCRIPCgdwcm9kdWN0GAUgASgJEhcKD2V4Y2VwdF9wYXllcl9pZBgGIAMoCRIOCgZhY3Rpb24YByABKAkSDgoGc3RhdHVzGAggASgJEhUKDWVycm9yX21lc3NhZ2UYCSABKAkijwEKIENyZWF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEAoIcGF5ZXJfaWQYAyABKAkSDwoHc2VydmljZRgEIAEoCRIPCgdwcm9kdWN0GAUgASgJEhcKD2V4Y2VwdF9wYXllcl9pZBgGIAMoCSJbCiFDcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVzcG9uc2USNgoFZW50cnkYASABKAsyJy5ibHVlYXBpLmJpbGxpbmcudjEuRXhjbHVkZVNlcnZpY2VFbnRyeSKPAQogVXBkYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkSFwoPZXhjZXB0X3BheWVyX2lkGAYgAygJIlsKIVVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZRI2CgVlbnRyeRgBIAEoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5InYKIERlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEAoIcGF5ZXJfaWQYAyABKAkSDwoHc2VydmljZRgEIAEoCRIPCgdwcm9kdWN0GAUgASgJIlsKIURlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZRI2CgVlbnRyeRgBIAEoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5IjwKGkxpc3RFeGNsdWRlU2VydmljZXNSZXF1ZXN0Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkiVwobTGlzdEV4Y2x1ZGVTZXJ2aWNlc1Jlc3BvbnNlEjgKB2VudHJpZXMYASADKAsyJy5ibHVlYXBpLmJpbGxpbmcudjEuRXhjbHVkZVNlcnZpY2VFbnRyeSJECgtTZXJ2aWNlSXRlbRIKCgJpZBgBIAEoCRIMCgRjb2RlGAIgASgJEg0KBW5hbWVzGAMgAygJEgwKBHNrdXMYBCADKAkiMwoTTGlzdFNlcnZpY2VzUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDAoEY29kZRgCIAEoCSJFChRMaXN0U2VydmljZXNSZXNwb25zZRItCgRkYXRhGAEgAygLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLlNlcnZpY2VJdGVtInIKFkJ1bGtMaW5rQWNjb3VudFJlcXVlc3QSDgoGdmVuZG9yGAUgASgJEhIKCmNzdkNvbnRlbnQYASABKAwSEQoJZGVsaW1pdGVyGAIgASgJEhEKCWhhc0hlYWRlchgDIAEoCBIOCgZkcnlSdW4YBCABKAgiYQoUQnVsa0xpbmtBY2NvdW50RXJyb3ISDQoFaW5kZXgYASABKAUSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSEQoJYWNjb3VudElkGAMgASgJEg8KB21lc3NhZ2UYBCABKAki3wEKF0J1bGtMaW5rQWNjb3VudE1ldGFkYXRhEg4KBnN0YXR1cxgBIAEoCRISCgp0b3RhbENvdW50GAIgASgFEhYKDnByb2Nlc3NlZENvdW50GAMgASgFEhQKDHN1Y2Nlc3NDb3VudBgEIAEoBRIUCgxmYWlsdXJlQ291bnQYBSABKAUSOAoGZXJyb3JzGAYgAygLMiguYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtMaW5rQWNjb3VudEVycm9yEhEKCXN0YXJ0VGltZRgHIAEoCRIPCgdlbmRUaW1lGAggASgJIj4KGkJ1bGtUYWdCaWxsaW5nR3JvdXBSZXF1ZXN0EhIKCmNzdkNvbnRlbnQYASABKAwSDAoEbW9kZRgCIAEoCSKCAQoYQnVsa1RhZ0JpbGxpbmdHcm91cEVycm9yEg0KBWluZGV4GAEgASgFEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhIKCmN1c3RvbWVySWQYAyABKAkSCwoDa2V5GAQgASgJEg0KBXZhbHVlGAUgASgJEg8KB21lc3NhZ2UYBiABKAki5wEKG0J1bGtUYWdCaWxsaW5nR3JvdXBNZXRhZGF0YRIOCgZzdGF0dXMYASABKAkSEgoKdG90YWxDb3VudBgCIAEoBRIWCg5wcm9jZXNzZWRDb3VudBgDIAEoBRIUCgxzdWNjZXNzQ291bnQYBCABKAUSFAoMZmFpbHVyZUNvdW50GAUgASgFEjwKBmVycm9ycxgGIAMoCzIsLmJsdWVhcGkuYmlsbGluZy52MS5CdWxrVGFnQmlsbGluZ0dyb3VwRXJyb3ISEQoJc3RhcnRUaW1lGAcgASgJEg8KB2VuZFRpbWUYCCABKAkyo7IBCgdCaWxsaW5nEoABChFMaXN0QmlsbGluZ0dyb3VwcxIsLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QaIC5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwIhmC0+STAhMSES92MS9iaWxsaW5nZ3JvdXBzMAESsAEKGkxpc3RCaWxsaW5nR3JvdXBzUGFnaW5hdGVkEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBzUGFnaW5hdGVkUmVxdWVzdBo2LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZFJlc3BvbnNlIiOC0+STAh0SGy92MS9iaWxsaW5nZ3JvdXBzOnBhZ2luYXRlZBKDAQoSQ3JlYXRlQmlsbGluZ0dyb3VwEi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QaIC5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwIhyC0+STAhY6ASoiES92MS9iaWxsaW5nZ3JvdXBzEpYBChhDcmVhdGVCaWxsaW5nR3JvdXBNZXJnZWQSMy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwTWVyZ2VkUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiI4LT5JMCHToBKiIYL3YxL2JpbGxpbmdncm91cHMvbWVyZ2VkEnkKEURlbGV0ZUJpbGxpbkdyb3VwEi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUJpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiHYLT5JMCFyoVL3YxL2JpbGxpbmdncm91cC97aWR9EowBChhBZGRBY2NvdW50VG9CaWxsaW5nR3JvdXASMy5ibHVlYXBpLmJpbGxpbmcudjEuQWRkQWNjb3VudFRvQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIjgtPkkwIdOgEqIhgvdjEvYmlsbGluZ2dyb3VwL2FjY291bnQSmQEKD0dldEJpbGxpbmdHcm91cBIqLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBSZXF1ZXN0GisuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cFJlc3BvbnNlIi2C0+STAicSJS92MS9iaWxsaW5nZ3JvdXBzL3tiaWxsaW5nSW50ZXJuYWxJZH0SkQEKDkdldEFjY2Vzc0dyb3VwEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFjY2Vzc0dyb3VwUmVxdWVzdBoqLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBY2Nlc3NHcm91cFJlc3BvbnNlIiiC0+STAiISIC92MS9hY2Nlc3Nncm91cHMve2FjY2Vzc0dyb3VwSWR9Ep4BChZMaXN0QXdzRGFpbHlSdW5IaXN0b3J5EjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBd3NEYWlseVJ1bkhpc3RvcnlSZXF1ZXN0GiYuYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c0RhaWx5UnVuSGlzdG9yeSIngtPkkwIhOgEqIhwvdjEvYXdzL2RhaWx5cnVuaGlzdG9yeTpyZWFkMAESmgEKE0xpc3RVc2FnZUNvc3RzRHJpZnQSLi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdFVzYWdlQ29zdHNEcmlmdFJlcXVlc3QaIy5ibHVlYXBpLmJpbGxpbmcudjEuVXNhZ2VDb3N0c0RyaWZ0IiyC0+STAiY6ASoiIS92MS97dmVuZG9yfS91c2FnZWNvc3RzZHJpZnQ6cmVhZDABEnwKDUNyZWF0ZUludm9pY2USKC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlSW52b2ljZVJlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIkgtPkkwIeOgEqIhkvdjEvaW52b2ljZS97ZGF0ZX06Y3JlYXRlEpsBChlDcmVhdGVJbnZvaWNlV2l0aFNldHRpbmdzEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLlNhdmVJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0GhsuYmx1ZWFwaS5hcGkuSW52b2ljZU1lc3NhZ2UiMYLT5JMCKzoBKiImL3YxL2ludm9pY2Uve2RhdGV9OmNyZWF0ZSZzYXZlc2V0dGluZ3MSiQEKE1NhdmVJbnZvaWNlU2V0dGluZ3MSLi5ibHVlYXBpLmJpbGxpbmcudjEuU2F2ZUludm9pY2VTZXR0aW5nc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKiIfL3YxL2ludm9pY2Uve2RhdGV9OnNhdmVzZXR0aW5ncxKiAQoTQ29udmVydEludm9pY2VUb1BkZhIuLmJsdWVhcGkuYmlsbGluZy52MS5Db252ZXJ0SW52b2ljZVRvUGRmUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5Db252ZXJ0SW52b2ljZVRvUGRmUmVzcG9uc2UiKoLT5JMCJDoBKiIfL3YxL2ludm9pY2Uve2RhdGV9OmNvbnZlcnR0b3BkZhJ9ChBHZXRJbnZvaWNlU3RhdHVzEisuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VTdGF0dXNSZXF1ZXN0GhsuYmx1ZWFwaS5hcGkuSW52b2ljZU1lc3NhZ2UiH4LT5JMCGRIXL3YxL2ludm9pY2Uvc3RhdHVzL3tpZH0SiwEKEUxpc3RJbnZvaWNlU3RhdHVzEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlU3RhdHVzUmVxdWVzdBobLmJsdWVhcGkuYXBpLkludm9pY2VNZXNzYWdlIimC0+STAiM6ASoiHi92MS9pbnZvaWNlL3N0YXR1cy97ZGF0ZX06cmVhZDABEm0KCkdldEludm9pY2USJS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZVJlcXVlc3QaFC5ibHVlYXBpLmFwaS5JbnZvaWNlIiKC0+STAhw6ASoiFy92MS9pbnZvaWNlL3tkYXRlfTpyZWFkEn0KC0xpc3RJbnZvaWNlEiYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVxdWVzdBonLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlc3BvbnNlIhuC0+STAhU6ASoiEC92MS9pbnZvaWNlOnJlYWQwARKIAQoVVXBkYXRlSW52b2ljZVByZXZpZXdzEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VQcmV2aWV3c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiJYLT5JMCHzoBKhoaL3YxL2ludm9pY2Uve2RhdGV9OnByZXZpZXcSlgEKEUV4cG9ydEludm9pY2VGaWxlEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VGaWxlUmVxdWVzdBotLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRJbnZvaWNlRmlsZVJlc3BvbnNlIiSC0+STAh46ASoiGS92MS9pbnZvaWNlL3tkYXRlfTpleHBvcnQSlgEKE0xpc3RJbnZvaWNlVGVtcGxhdGUSLi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VUZW1wbGF0ZVJlcXVlc3QaLy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VUZW1wbGF0ZVJlc3BvbnNlIhyC0+STAhYSFC92MS9pbnZvaWNlL3RlbXBsYXRlMAESrQEKGUdldEludm9pY2VEaXNwbGF5U2V0dGluZ3MSNC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QaNS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1Jlc3BvbnNlIiOC0+STAh0SGy92MS9pbnZvaWNlL2Rpc3BsYXlzZXR0aW5ncxKXAQocVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5ncxI3LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSImgtPkkwIgOgEqIhsvdjEvaW52b2ljZS9kaXNwbGF5c2V0dGluZ3MSlgEKGVVwZGF0ZUludm9pY2VFeGNoYW5nZVJhdGUSNC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZUV4Y2hhbmdlUmF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiK4LT5JMCJToBKhogL3YxL2ludm9pY2UvZXhjaGFuZ2VyYXRlL3ttb250aH0SrAEKIVVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VUZW1wbGF0ZRI8LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlVGVtcGxhdGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjGC0+STAis6ASoiJi92MS9iaWxsaW5nZ3JvdXBzL3tpZH0vaW52b2ljZXRlbXBsYXRlErEBChxSZWFkU2VydmljZURpc2NvdW50c1NlcnZpY2VzEjcuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRTZXJ2aWNlRGlzY291bnRzU2VydmljZXNSZXF1ZXN0Gh4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLlNlcnZpY2UiNoLT5JMCMDoBKiIrL3YxL3NlcnZpY2VkaXNjb3VudHMve3ZlbmRvcn0vc2VydmljZXM6cmVhZDABEqoBCh1DcmVhdGVJbnZvaWNlU2VydmljZURpc2NvdW50cxI4LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaLi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHMiH4LT5JMCGToBKiIUL3YxL3NlcnZpY2VkaXNjb3VudHMSrwEKHVVwZGF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIkgtPkkwIeOgEqGhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EpQBCh1EZWxldGVJbnZvaWNlU2VydmljZURpc2NvdW50cxI4LmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIYLT5JMCGyoZL3YxL3NlcnZpY2VkaXNjb3VudHMve2lkfRKqAQobTGlzdEludm9pY2VTZXJ2aWNlRGlzY291bnRzEjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaKy5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHMiJILT5JMCHjoBKiIZL3YxL3NlcnZpY2VkaXNjb3VudHM6cmVhZDABEqYBChpHZXRJbnZvaWNlU2VydmljZURpc2NvdW50cxI1LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaLi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHMiIYLT5JMCGxIZL3YxL3NlcnZpY2VkaXNjb3VudHMve2lkfRKiAQoWRXhwb3J0U2VydmljZURpc2NvdW50cxIxLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBotLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5TZXJ2aWNlRGlzY291bnRzRXhwb3J0IiaC0+STAiA6ASoiGy92MS9zZXJ2aWNlZGlzY291bnRzOmV4cG9ydBLwAQopQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GkUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiNoLT5JMCMDoBKiIrL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2JpbGxpbmdncm91cBLwAQopVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GkUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiNoLT5JMCMDoBKhorL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2JpbGxpbmdncm91cBK+AQopRGVsZXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjOC0+STAi0qKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9iaWxsaW5nZ3JvdXAS0QEKIkxpc3RBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzIjaC0+STAjA6ASoiKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50OnJlYWQwARLcAQokQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaQC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiMYLT5JMCKzoBKiImL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQS3AEKJFVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GkAuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjGC0+STAis6ASoaJi92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50ErkBCiRSZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuUmVtb3ZlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI4gtPkkwIyOgEqGi0vdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudDpyZW1vdmUSrwEKJERlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii6C0+STAigqJi92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50Es0BCiRFeHBvcnRBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBo0LmJsdWVhcGkuYXBpLnJpcHBsZS52MS5BY2NvdW50U2VydmljZURpc2NvdW50c0V4cG9ydCIugtPkkwIoOgEqIiMvdjEvc2VydmljZWRpc2NvdW50cy9hY2NvdW50OmV4cG9ydBLaAQopRXhwb3J0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRC5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GjIuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkdyb3VwU2VydmljZURpc2NvdW50c0V4cG9ydCIzgtPkkwItOgEqIigvdjEvc2VydmljZWRpc2NvdW50cy9iaWxsaW5nZ3JvdXA6ZXhwb3J0EuQBCiZHZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJBLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaQi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSIzgtPkkwItEisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEnMKDkNyZWF0ZVJlc2VsbGVyEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZVJlc2VsbGVyUmVxdWVzdBocLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlciIYgtPkkwISOgEqIg0vdjEvcmVzZWxsZXJzEnAKDUxpc3RSZXNlbGxlcnMSKC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdFJlc2VsbGVyc1JlcXVlc3QaHC5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXIiFYLT5JMCDxINL3YxL3Jlc2VsbGVyczABEm8KC0dldFJlc2VsbGVyEiYuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldFJlc2VsbGVyUmVxdWVzdBocLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlciIagtPkkwIUEhIvdjEvcmVzZWxsZXJzL3tpZH0SeAoOVXBkYXRlUmVzZWxsZXISKS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlUmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIh2C0+STAhc6ASoaEi92MS9yZXNlbGxlcnMve2lkfRJvCg5EZWxldGVSZXNlbGxlchIpLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVSZXNlbGxlclJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiGoLT5JMCFCoSL3YxL3Jlc2VsbGVycy97aWR9EoYBChFHZXRCaWxsaW5nU2V0dGluZxIsLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nU2V0dGluZ1JlcXVlc3QaLS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ1NldHRpbmdSZXNwb25zZSIUgtPkkwIOEgwvdjEvc2V0dGluZ3MSmwEKEUxpc3RFeGNoYW5nZVJhdGVzEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RFeGNoYW5nZVJhdGVzUmVxdWVzdBotLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjaGFuZ2VSYXRlc1Jlc3BvbnNlIimC0+STAiMSIS92MS97dmVuZG9yfS9leGNoYW5nZXJhdGUve21vbnRofRKWAQoVU2V0R2xvYmFsRXhjaGFuZ2VSYXRlEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldEdsb2JhbEV4Y2hhbmdlUmF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiM4LT5JMCLToBKiIoL3YxL2V4Y2hhbmdlcmF0ZS9nbG9iYWwve3ZlbmRvcn0ve21vbnRofRKKAQoUU2V0UGF5ZXJFeGNoYW5nZVJhdGUSLy5ibHVlYXBpLmJpbGxpbmcudjEuU2V0UGF5ZXJFeGNoYW5nZVJhdGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IimC0+STAiM6ASoiHi92MS9leGNoYW5nZXJhdGUvcGF5ZXIve21vbnRofRKfAQobU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlEjYuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldEJpbGxpbmdHcm91cEV4Y2hhbmdlUmF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKiIlL3YxL2V4Y2hhbmdlcmF0ZS9iaWxsaW5nZ3JvdXAve21vbnRofRJ8ChBMaXN0QWNjZXNzR3JvdXBzEisuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBY2Nlc3NHcm91cHNSZXF1ZXN0Gh8uYmx1ZWFwaS5hcGkucmlwcGxlLkFjY2Vzc0dyb3VwIhiC0+STAhISEC92MS9hY2Nlc3Nncm91cHMwARJ/ChFDcmVhdGVBY2Nlc3NHcm91cBIsLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBY2Nlc3NHcm91cFJlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiG4LT5JMCFToBKiIQL3YxL2FjY2Vzc2dyb3VwcxKEAQoRVXBkYXRlQWNjZXNzR3JvdXASLC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWNjZXNzR3JvdXBSZXF1ZXN0Gh8uYmx1ZWFwaS5hcGkucmlwcGxlLkFjY2Vzc0dyb3VwIiCC0+STAho6ASoaFS92MS9hY2Nlc3Nncm91cHMve2lkfRJ4ChFEZWxldGVBY2Nlc3NHcm91cBIsLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVBY2Nlc3NHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiHYLT5JMCFyoVL3YxL2FjY2Vzc2dyb3Vwcy97aWR9Ep8BChRMaXN0QWJjQmlsbGluZ0dyb3VwcxIvLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWJjQmlsbGluZ0dyb3Vwc1JlcXVlc3QaIy5ibHVlYXBpLmJpbGxpbmcudjEuQWJjQmlsbGluZ0dyb3VwIi+C0+STAikSJy92MS9iaWxsaW5nZ3JvdXBzL2JpbGxpbmdjb25kdWN0b3Ive2lkfTABErYBChtMaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHMSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFiY0JpbGxpbmdHcm91cEFjY291bnRzUmVxdWVzdBoeLmJsdWVhcGkuYmlsbGluZy52MS5BYmNBY2NvdW50Ij2C0+STAjcSNS92MS9iaWxsaW5nZ3JvdXBzL2JpbGxpbmdjb25kdWN0b3Ive3BheWVySWR9L2FjY291bnRzMAESnAEKFlJlYWRJbnZvaWNlQWRqdXN0bWVudHMSMS5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZEludm9pY2VBZGp1c3RtZW50c1JlcXVlc3QaHC5ibHVlYXBpLmFwaS53YXZlLkFkanVzdG1lbnQiL4LT5JMCKToBKiIkL3YxL3t2ZW5kb3J9L2ludm9pY2VhZGp1c3RtZW50czpyZWFkMAESowEKFVJlYWRBZGp1c3RtZW50RW50cmllcxIwLmJsdWVhcGkuYmlsbGluZy52MS5SZWFkQWRqdXN0bWVudEVudHJpZXNSZXF1ZXN0GiYuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFkanVzdG1lbnRFbnRyeSIugtPkkwIoOgEqIiMvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXM6cmVhZDABEpgBChJHZXRBZGp1c3RtZW50RW50cnkSLS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBomLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5BZGp1c3RtZW50RW50cnkiK4LT5JMCJRIjL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0SkAEKFEFwcGx5QWRqdXN0bWVudEVudHJ5Ei8uYmx1ZWFwaS5iaWxsaW5nLnYxLkFwcGx5QWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIvgtPkkwIpOgEqIiQvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXM6YXBwbHkSlgEKFlJlc3RvcmVBZGp1c3RtZW50RW50cnkSMS5ibHVlYXBpLmJpbGxpbmcudjEuUmVzdG9yZUFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMYLT5JMCKzoBKiImL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzOnJlc3RvcmUSlQEKFFNwbGl0QWRqdXN0bWVudEVudHJ5Ei8uYmx1ZWFwaS5iaWxsaW5nLnYxLlNwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI0gtPkkwIuOgEqIikvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfS9zcGxpdBKeAQoXQWxsb2NhdGVBZGp1c3RtZW50RW50cnkSMi5ibHVlYXBpLmJpbGxpbmcudjEuQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjeC0+STAjE6ASoiLC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L2FsbG9jYXRlEqsBChtSZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnkSNi5ibHVlYXBpLmJpbGxpbmcudjEuUmVzdG9yZVNwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI8gtPkkwI2OgEqIjEvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfS9zcGxpdDpyZXN0b3JlErQBCh5SZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnkSOS5ibHVlYXBpLmJpbGxpbmcudjEuUmVzdG9yZUFsbG9jYXRlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI/gtPkkwI5OgEqIjQvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfS9hbGxvY2F0ZTpyZXN0b3JlEpcBChRMaXN0QWNjb3VudFJlc291cmNlcxIvLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWNjb3VudFJlc291cmNlc1JlcXVlc3QaIy5ibHVlYXBpLmJpbGxpbmcudjEuUmVzb3VyY2VBY2NvdW50IieC0+STAiESHy92MS9yZXNvdXJjZXMvYWNjb3VudHMve3ZlbmRvcn0wARKLAQoTR2V0QWRqdXN0bWVudENvbmZpZxIuLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBodLmJsdWVhcGkuYXBpLkFkanVzdG1lbnRDb25maWciJYLT5JMCHxIdL3YxL2FkanVzdG1lbnRjb25maWcve3ZlbmRvcn0SlAEKFkNyZWF0ZUFkanVzdG1lbnRDb25maWcSMS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QaHS5ibHVlYXBpLmFwaS5BZGp1c3RtZW50Q29uZmlnIiiC0+STAiI6ASoiHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EpQBChZVcGRhdGVBZGp1c3RtZW50Q29uZmlnEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Gh0uYmx1ZWFwaS5hcGkuQWRqdXN0bWVudENvbmZpZyIogtPkkwIiOgEqGh0vdjEvYWRqdXN0bWVudGNvbmZpZy97dmVuZG9yfRKKAQoWRGVsZXRlQWRqdXN0bWVudENvbmZpZxIxLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIlgtPkkwIfKh0vdjEvYWRqdXN0bWVudGNvbmZpZy97dmVuZG9yfRKVAQoSUmVhZFVudGFnZ2VkR3JvdXBzEi0uYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRVbnRhZ2dlZEdyb3Vwc1JlcXVlc3QaIS5ibHVlYXBpLmFwaS5yaXBwbGUuVW50YWdnZWRHcm91cCIrgtPkkwIlOgEqIiAvdjEve3ZlbmRvcn0vdW50YWdnZWRncm91cHM6cmVhZDABErgBCh1SZWFkQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlcxI4LmJsdWVhcGkuYmlsbGluZy52MS5SZWFkQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlc1JlcXVlc3QaLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlIi2C0+STAic6ASoiIi92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzOnJlYWQwARKvAQobR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlIiqC0+STAiQSIi92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzL3tpZH0SswEKHkNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRI5LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0GiwuYmx1ZWFwaS5hcGkucmlwcGxlLkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZSIogtPkkwIiOgEqIh0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcxK4AQoeVXBkYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlIi2C0+STAic6ASoaIi92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzL3tpZH0SnwEKHkRlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRI5LmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiqC0+STAiQqIi92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzL3tpZH0S+wEKJ0dldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cBJCLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0GkMuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlc3BvbnNlIkWC0+STAj8SPS92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzL2JpbGxpbmdncm91cC97Z3JvdXBJZH0ve3ZlbmRvcn0wARLPAQonU2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEkIuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiSILT5JMCQjoBKiI9L3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMvYmlsbGluZ2dyb3VwL3tncm91cElkfS97dmVuZG9yfRLSAQoqRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEkUuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiRYLT5JMCPyo9L3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMvYmlsbGluZ2dyb3VwL3tncm91cElkfS97dmVuZG9yfRJeCgdHZXRUYWdzEiIuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldFRhZ3NSZXF1ZXN0GhsuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ0RhdGEiEILT5JMCChIIL3YxL3RhZ3MwARJ+ChFDcmVhdGVDdXN0b21GaWVsZBIsLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVDdXN0b21GaWVsZFJlcXVlc3QaHy5ibHVlYXBpLmJpbGxpbmcudjEuQ3VzdG9tRmllbGQiGoLT5JMCFDoBKiIPL3YxL2N1c3RvbWZpZWxkEoEBCg9MaXN0Q3VzdG9tRmllbGQSKi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEN1c3RvbUZpZWxkUmVxdWVzdBofLmJsdWVhcGkuYmlsbGluZy52MS5DdXN0b21GaWVsZCIfgtPkkwIZOgEqIhQvdjEvY3VzdG9tZmllbGQ6cmVhZDABEpQBChpBZGRCaWxsaW5nR3JvdXBDdXN0b21GaWVsZBI1LmJsdWVhcGkuYmlsbGluZy52MS5BZGRCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiJ4LT5JMCIToBKiIcL3YxL2JpbGxpbmdncm91cC9jdXN0b21maWVsZBK+AQobTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkEjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QaNy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVzcG9uc2UiLILT5JMCJjoBKiIhL3YxL2JpbGxpbmdncm91cC9jdXN0b21maWVsZDpyZWFkMAESgwEKFUFkZFRhZ3NUb0JpbGxpbmdHcm91cBIwLmJsdWVhcGkuYmlsbGluZy52MS5BZGRUYWdzVG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiCC0+STAho6ASoiFS92MS9iaWxsaW5nZ3JvdXAvdGFncxKvAQofVXBkYXRlTm9uVGFnR3JvdXBUb0JpbGxpbmdHcm91cBI6LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVOb25UYWdHcm91cFRvQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI4gtPkkwIyOgEqIi0vdjEvYmlsbGluZ2dyb3VwL3tpZH0ve3ZlbmRvcn0vdW50YWdnZWRncm91cHMSsQEKHURlbGV0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI+gtPkkwI4KjYvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkL3tncm91cElkfS97Y3VzdG9tRmllbGRJZH0SgwEKEVVwZGF0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUN1c3RvbUZpZWxkUmVxdWVzdBofLmJsdWVhcGkuYmlsbGluZy52MS5DdXN0b21GaWVsZCIfgtPkkwIZOgEqGhQvdjEvY3VzdG9tZmllbGQve2lkfRJ3ChFEZWxldGVDdXN0b21GaWVsZBIsLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVDdXN0b21GaWVsZFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiHILT5JMCFioUL3YxL2N1c3RvbWZpZWxkL3tpZH0ScgoQQ3JlYXRlRnJlZUZvcm1hdBIrLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVGcmVlRm9ybWF0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIZgtPkkwITOgEqIg4vdjEvZnJlZWZvcm1hdBJ5ChBEZWxldGVGcmVlRm9ybWF0EisuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUZyZWVGb3JtYXRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiCC0+STAhoqGC92MS9mcmVlZm9ybWF0L3tncm91cElkfRKIAQoNR2V0RnJlZUZvcm1hdBIoLmJsdWVhcGkuYmlsbGluZy52MS5HZXRGcmVlRm9ybWF0UmVxdWVzdBopLmJsdWVhcGkuYmlsbGluZy52MS5HZXRGcmVlRm9ybWF0UmVzcG9uc2UiIILT5JMCGhIYL3YxL2ZyZWVmb3JtYXQve2dyb3VwSWR9MAESogEKFEdldFRhZ3NBZGRpbmdTZXR0aW5nEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldFRhZ3NBZGRpbmdTZXR0aW5nUmVxdWVzdBolLmJsdWVhcGkuYmlsbGluZy52MS5UYWdzQWRkaW5nU2V0dGluZyIwgtPkkwIqEigvdjEve3ZlbmRvcn0vdGFnc2FkZGluZ3NldHRpbmcve2dyb3VwSWR9MAESmgEKF1VwZGF0ZVRhZ3NBZGRpbmdTZXR0aW5nEjIuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZVRhZ3NBZGRpbmdTZXR0aW5nUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIzgtPkkwItOgEqGigvdjEve3ZlbmRvcn0vdGFnc2FkZGluZ3NldHRpbmcve2dyb3VwSWR9EqEBChVFeHBvcnRCaWxsaW5nR3JvdXBDc3YSMC5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0QmlsbGluZ0dyb3VwQ3N2UmVxdWVzdBoxLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXNwb25zZSIjgtPkkwIdEhsvdjEvZXhwb3J0Y3N2L2JpbGxpbmctZ3JvdXASqQEKF0V4cG9ydEludm9pY2VTZXR0aW5nQ3N2EjIuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVxdWVzdBozLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRJbnZvaWNlU2V0dGluZ0NzdlJlc3BvbnNlIiWC0+STAh8SHS92MS9leHBvcnRjc3YvaW52b2ljZS1zZXR0aW5nEqcBCiJVcGRhdGVCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEj0uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb25SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiqC0+STAiQ6ASoaHy92MS9iaWxsaW5nZ3JvdXAve2lkfTpiYXNpY0luZm8SogEKHlVwZGF0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkcxI5LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii2C0+STAic6ASoaIi92MS9iaWxsaW5nZ3JvdXAve2lkfTpjdXN0b21GaWVsZHMSnAEKHFVwZGF0ZUJpbGxpbmdHcm91cEZyZWVGb3JtYXQSNy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiK4LT5JMCJToBKhogL3YxL2JpbGxpbmdncm91cC97aWR9OmZyZWVGb3JtYXQSpQEKIVVwZGF0ZUJpbGxpbmdHcm91cExpbmtlZFJlc291cmNlcxI8LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBMaW5rZWRSZXNvdXJjZXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiqC0+STAiQ6ASoaHy92MS9iaWxsaW5nZ3JvdXAve2lkfTpyZXNvdXJjZXMSqwEKIVVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncxI8LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjCC0+STAio6ASoaJS92MS9iaWxsaW5nZ3JvdXAve2lkfTppbnZvaWNlU2V0dGluZ3MSqwEKIVVwZGF0ZUJpbGxpbmdHcm91cFJlc2VsbGVyQ2hhcmdlcxI8LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBSZXNlbGxlckNoYXJnZXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjCC0+STAio6ASoaJS92MS9iaWxsaW5nZ3JvdXAve2lkfTpyZXNlbGxlckNoYXJnZXMSsQEKI1VwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzEj4uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIygtPkkwIsOgEqGicvdjEvYmlsbGluZ2dyb3VwL3tpZH06YWRkaXRpb25hbENoYXJnZXMS1AEKIUdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbhI8LmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXF1ZXN0Gj0uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlc3BvbnNlIjKC0+STAiwSKi92MS9iaWxsaW5nZ3JvdXAve2lkfS97dmVuZG9yfS9zdXBwb3J0cGxhbhK2AQokVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiNYLT5JMCLzoBKhoqL3YxL2JpbGxpbmdncm91cC97aWR9L3t2ZW5kb3J9L3N1cHBvcnRwbGFuEoEBChJDcmVhdGVBbm5vdW5jZW1lbnQSLS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQW5ub3VuY2VtZW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIkgtPkkwIeOgEqIhkvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50EpIBChJVcGRhdGVBbm5vdW5jZW1lbnQSLS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQW5ub3VuY2VtZW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI1gtPkkwIvOgEqGiovdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50L3thbm5vdW5jZW1lbnRJZH0SnAEKGVVwZGF0ZUFubm91bmNlbWVudHNTdGF0dXMSNC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMYLT5JMCKzoBKjImL3YxL3Jlc2VsbGVyL2Fubm91bmNlbWVudHMvYnVsay9zdGF0dXMSoAEKFlVwZGF0ZUFubm91bmNlbWVudERhdGUSMS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQW5ub3VuY2VtZW50RGF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiO4LT5JMCNToBKjIwL3YxL3Jlc2VsbGVyL2Fubm91bmNlbWVudHMve2Fubm91bmNlbWVudElkfS9kYXRlEo8BChJEZWxldGVBbm5vdW5jZW1lbnQSLS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQW5ub3VuY2VtZW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIygtPkkwIsKiovdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50L3thbm5vdW5jZW1lbnRJZH0SoAEKEEdldEFubm91bmNlbWVudHMSKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QW5ub3VuY2VtZW50c1JlcXVlc3QaIC5ibHVlYXBpLmJpbGxpbmcudjEuQW5ub3VuY2VtZW50IjuC0+STAjUSMy9iaWxsaW5nL3YxL3Jlc2VsbGVyL2Fubm91bmNlbWVudHMve2Fubm91bmNlbWVudElkfTABEs4BChxHZXRCaWxsaW5nR3JvdXBBbm5vdW5jZW1lbnRzEjcuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXF1ZXN0GjguYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXNwb25zZSI5gtPkkwIzEjEvdjEvYmlsbGluZ2dyb3VwL3Jlc2VsbGVyL2Fubm91bmNlbWVudHMve2dyb3VwSWR9MAESZgoKR2V0Q3JlZGl0cxIlLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDcmVkaXRzUmVxdWVzdBoaLmJsdWVhcGkuYmlsbGluZy52MS5DcmVkaXQiE4LT5JMCDRILL3YxL2NyZWRpdHMwARJ2Cg5HZXRDc3ZTZXR0aW5ncxIpLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDc3ZTZXR0aW5nc1JlcXVlc3QaHi5ibHVlYXBpLmJpbGxpbmcudjEuQ3N2U2V0dGluZyIXgtPkkwIREg8vdjEvY3N2c2V0dGluZ3MwARKpAQoXQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXASMi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiJYLT5JMCHzoBKiIaL3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4SqgEKFEdldENoaWxkQmlsbGluZ0dyb3VwEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBowLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIi+C0+STAikSJy92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuL3tpbnRlcm5hbElkfRKgAQoWUmVhZENoaWxkQmlsbGluZ0dyb3VwcxIxLmJsdWVhcGkuYmlsbGluZy52MS5SZWFkQ2hpbGRCaWxsaW5nR3JvdXBzUmVxdWVzdBolLmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cCIqgtPkkwIkOgEqIh8vdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbjpyZWFkMAEStgEKF1VwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwEjIuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBozLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIjKC0+STAiw6ASoaJy92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuL3tpbnRlcm5hbElkfRKzAQoXRGVsZXRlQ2hpbGRCaWxsaW5nR3JvdXASMi5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiL4LT5JMCKSonL3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9EvMBCiZVcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncxJBLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QaQi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXNwb25zZSJCgtPkkwI8OgEqGjcvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbi97aW50ZXJuYWxJZH0vaW52b2ljZVNldHRpbmdzEtIBCitTZXRDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkYuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IkOC0+STAj06ASoiOC92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuL3tpbnRlcm5hbElkfS9zZXJ2aWNlRGlzY291bnRzEu0BCjJTZXRDaGlsZEJpbGxpbmdHcm91cEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxJNLmJsdWVhcGkuYmlsbGluZy52MS5TZXRDaGlsZEJpbGxpbmdHcm91cEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiUILT5JMCSjoBKiJFL3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9L3NlcnZpY2VEaXNjb3VudHMvYWNjb3VudHM6c2V0EuUBCixTZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRJHLmJsdWVhcGkuYmlsbGluZy52MS5TZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiVILT5JMCTjoBKiJJL3YxL3t2ZW5kb3J9L2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9L2N1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRKWAgosR2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USRy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0GkguYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVzcG9uc2UiUYLT5JMCSxJJL3YxL3t2ZW5kb3J9L2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9L2N1c3RvbWl6ZWRCaWxsaW5nU2VydmljZTABEoACCitHZXRDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkYuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GkcuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSJAgtPkkwI6EjgvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbi97aW50ZXJuYWxJZH0vc2VydmljZURpc2NvdW50cxKLAgozUmVhZENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEk4uYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRDaGlsZEJpbGxpbmdHcm91cEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzIk6C0+STAkgSRi92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuL3tpbnRlcm5hbElkfS9zZXJ2aWNlRGlzY291bnRzL2FjY291bnRzOnJlYWQwARKHAQoWQnVsa0NyZWF0ZUJpbGxpbmdHcm91cBIxLmJsdWVhcGkuYmlsbGluZy52MS5CdWxrQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdBoRLnByb3Rvcy5PcGVyYXRpb24iJ4LT5JMCIToBKiIcL3YxL2JpbGxpbmdncm91cHM6YnVsa0NyZWF0ZRK/AQoZQ3JlYXRlRXhjbHVkZVNlcnZpY2VFbnRyeRI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVzcG9uc2UiNYLT5JMCLzoBKiIqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzEr8BChlVcGRhdGVFeGNsdWRlU2VydmljZUVudHJ5EjQuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0GjUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZSI1gtPkkwIvOgEqGiovdjEvYmlsbGluZ2dyb3Vwcy9leGNsdWRlLXNlcnZpY2Utc2V0dGluZ3MSvAEKGURlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnkSNC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QaNS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlIjKC0+STAiwqKi92MS9iaWxsaW5nZ3JvdXBzL2V4Y2x1ZGUtc2VydmljZS1zZXR0aW5ncxKqAQoTTGlzdEV4Y2x1ZGVTZXJ2aWNlcxIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjbHVkZVNlcnZpY2VzUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjbHVkZVNlcnZpY2VzUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzEoABCgxMaXN0U2VydmljZXMSJy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdFNlcnZpY2VzUmVxdWVzdBooLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0U2VydmljZXNSZXNwb25zZSIdgtPkkwIXEhUvdjEve3ZlbmRvcn0vc2VydmljZXMSfgoPQnVsa0xpbmtBY2NvdW50EiouYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtMaW5rQWNjb3VudFJlcXVlc3QaES5wcm90b3MuT3BlcmF0aW9uIiyC0+STAiY6ASoiIS92MS9iaWxsaW5nZ3JvdXBzOmJ1bGtMaW5rQWNjb3VudBJ+ChNCdWxrVGFnQmlsbGluZ0dyb3VwEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtUYWdCaWxsaW5nR3JvdXBSZXF1ZXN0GhEucHJvdG9zLk9wZXJhdGlvbiIkgtPkkwIeOgEqIhkvdjEvYmlsbGluZ2dyb3VwczpidWxrVGFnGp0BkkGZARJGKEJFVEEpIEJpbGxpbmcgQVBJLiBCYXNlIFVSTDogaHR0cHM6Ly9hcGkuYWxwaGF1cy5jbG91ZC9tL2JsdWUvYmlsbGluZxpPChJTZXJ2aWNlIGRlZmluaXRpb24SOWh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9iaWxsaW5nL0JRChljbG91ZC5hbHBoYXVzLmFwaS5iaWxsaW5nQgxCaWxsaW5nUHJvdG9aJmdpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS9iaWxsaW5nYgZwcm90bzM", [file_api_account, file_api_invoice, file_api_costtag, file_api_ripple_accessgroup, file_api_ripple_billinggroup, file_api_ripple_reseller, file_api_ripple_yearmonth, file_api_ripple_rounding, file_api_ripple_invoicelayout, file_api_ripple_duedate, file_api_ripple_exchangerate, file_api_ripple_untaggedgroup, file_api_ripple_customizedbillingservice, file_api_ripple_v1_invoiceservicediscounts, file_api_ripple_v1_accountsupportplan, file_api_ripple_v1_adjustmententry, file_api_adjustment, file_api_wave_adjustment, file_protos_operation, file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_empty, file_protoc_gen_openapiv2_options_annotations, file_google_protobuf_field_mask]);
|
|
56
|
+
fileDesc("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SEmJsdWVhcGkuYmlsbGluZy52MSKgBAoMQmlsbGluZ0dyb3VwEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYByABKAkSDAoEdHlwZRgMIAEoCRIQCghoYXNDaGlsZBgNIAEoCBI+ChBiaWxsaW5nR3JvdXBJbmZvGAogASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8SOgoOYWNjb3VudE9wdGlvbnMYCCABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSJgoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50EiIKBHRhZ3MYBiADKAsyFC5ibHVlYXBpLmFwaS5Db3N0VGFnEkgKD2ludm9pY2VTZXR0aW5ncxgFIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSSAoPYWRkaXRpb25hbEl0ZW1zGAsgASgLMi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIyCgphd3NPcHRpb25zGAkgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMioAEKG0JpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIpCgNhd3MYASADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKwoFYXp1cmUYAiADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKQoDZ2NwGAMgAygLMhwuYmx1ZWFwaS5hcGkuQWRkaXRpb25hbEl0ZW1zIu4BChtCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQwoDYXdzGAEgASgLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cFZlbmRvcmVkSW52b2ljZVNldHRpbmcSRQoFYXp1cmUYAiABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxJDCgNnY3AYAyABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZyLTAwoiQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJIpIBChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAkilAQKGUNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIUCgxiaWxsaW5nVGl0bGUYBCABKAkSEwoLcGhvbmVOdW1iZXIYBSABKAkSEgoKcG9zdGFsQ29kZRgGIAEoCRIPCgdhZGRyZXNzGAcgASgJEhAKCHBlcnNvbmFsGAggASgJEg8KB3JlbWFya3MYCSABKAkSEQoJcHJvamVjdElkGAogASgJEhAKCGxhbmd1YWdlGAsgASgJEhMKC2Rpc3BsYXlDb3N0GAwgASgJEhgKEGV4Y2hhbmdlUmF0ZVR5cGUYDSABKAkSOgoOYWNjb3VudE9wdGlvbnMYDyABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSRgoIaW52b2ljZXMYDiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USMgoKYXdzT3B0aW9ucxgQIAEoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NPcHRpb25zEgwKBGNpdHkYESABKAkSEgoKcHJlZmVjdHVyZRgSIAEoCRIPCgdjb3VudHJ5GBMgASgJIjUKCkF3c09wdGlvbnMSFgoOdXNlUHJvRm9ybWFDdXIYASABKAgSDwoHcGF5ZXJJZBgCIAEoCSKrAQoOQWNjb3VudE9wdGlvbnMSMQoDYXdzGAEgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMQoDZ2NwGAIgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMwoFYXp1cmUYAyABKAsyJC5ibHVlYXBpLmJpbGxpbmcudjEuUmVnaXN0ZXJBY2NvdW50cyI2ChBSZWdpc3RlckFjY291bnRzEg8KB2VuYWJsZWQYASABKAgSEQoJYWNjb3VudElkGAIgASgJIlQKDlZlbmRvckFjY291bnRzEg4KBnZlbmRvchgBIAEoCRIyCghhY2NvdW50cxgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50VG9BZGQiYAoMQXp1cmVPcHRpb25zEhUKDXJlc291cmNlR3JvdXAYASABKAgSGwoTYXBwbHlQY0Vhcm5lZENyZWRpdBgCIAEoCBIcChRhcHBseUNhbXBhaWduUHJpY2luZxgDIAEoCCKqBwofQ3JlYXRlQmlsbGluZ0dyb3VwTWVyZ2VkUmVxdWVzdBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhMKC2NvbXBhbnlOYW1lGAMgASgJEhQKDGJpbGxpbmdUaXRsZRgEIAEoCRITCgtwaG9uZU51bWJlchgFIAEoCRISCgpwb3N0YWxDb2RlGAYgASgJEg8KB2FkZHJlc3MYByABKAkSEAoIcGVyc29uYWwYCCABKAkSDwoHcmVtYXJrcxgJIAEoCRIRCglwcm9qZWN0SWQYCiABKAkSEAoIbGFuZ3VhZ2UYCyABKAkSEwoLZGlzcGxheUNvc3QYDCABKAkSGAoQZXhjaGFuZ2VSYXRlVHlwZRgNIAEoCRI6Cg5hY2NvdW50T3B0aW9ucxgPIAEoCzIiLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50T3B0aW9ucxJGCghpbnZvaWNlcxgOIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRIyCgphd3NPcHRpb25zGBAgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMSDAoEY2l0eRgRIAEoCRISCgpwcmVmZWN0dXJlGBIgASgJEg8KB2NvdW50cnkYEyABKAkSGQoRaW52b2ljZVRlbXBsYXRlSWQYFCABKAkSMwoLdGFnU2V0dGluZ3MYFSADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGBYgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmcSOgoOdmVuZG9yQWNjb3VudHMYFyADKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuVmVuZG9yQWNjb3VudHMSWwoMY3VzdG9tRmllbGRzGBggAygLMkUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZFJlcXVlc3QuQ3VzdG9tRmllbGRzRW50cnkSNgoMYXp1cmVPcHRpb25zGBkgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkF6dXJlT3B0aW9ucxozChFDdXN0b21GaWVsZHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIv8BCiBDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRJHCgNhd3MYASABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISSQoFYXp1cmUYAiABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISRwoDZ2NwGAMgASgLMjouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlVmVuZG9yItcDCiZDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZVZlbmRvchIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJImMKFkdldEJpbGxpbmdHcm91cFJlcXVlc3QSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUQoXR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2USNgoMYmlsbGluZ0dyb3VwGAEgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCKWAQoLQWNjZXNzR3JvdXASFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIXCg9hY2Nlc3NHcm91cE5hbWUYAiABKAkSHgoWYWNjZXNzR3JvdXBEZXNjcmlwdGlvbhgDIAEoCRI3Cg1iaWxsaW5nR3JvdXBzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCJeChVHZXRBY2Nlc3NHcm91cFJlcXVlc3QSFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIuCgpmaWVsZF9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJOChZHZXRBY2Nlc3NHcm91cFJlc3BvbnNlEjQKC2FjY2Vzc0dyb3VwGAEgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY2Vzc0dyb3VwIq8CChJBd3NEYWlseVJ1bkhpc3RvcnkSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDQoFbW9udGgYAyABKAkSQAoIYWNjb3VudHMYBCADKAsyLi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQalAEKB0FjY291bnQSEQoJYWNjb3VudElkGAEgASgJEkcKB2hpc3RvcnkYAiADKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQuSGlzdG9yeRotCgdIaXN0b3J5EhEKCXRpbWVzdGFtcBgBIAEoCRIPCgd0cmlnZ2VyGAIgASgJIj8KHUxpc3RBd3NEYWlseVJ1bkhpc3RvcnlSZXF1ZXN0Eg0KBW1vbnRoGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiVgoaTGlzdFVzYWdlQ29zdHNEcmlmdFJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhkKEWJpbGxpbmdJbnRlcm5hbElkGAIgASgJEg0KBW1vbnRoGAMgASgJIoYBCg9Vc2FnZUNvc3RzRHJpZnQSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDwoHYWNjb3VudBgDIAEoCRIQCghzbmFwc2hvdBgEIAEoARIPCgdjdXJyZW50GAUgASgBEgwKBGRpZmYYBiABKAEiMgoRR2V0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIPCgdncm91cElkGAIgASgJIjkKGEV4cG9ydEludm9pY2VGaWxlUmVxdWVzdBIMCgRkYXRlGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiKAoZRXhwb3J0SW52b2ljZUZpbGVSZXNwb25zZRILCgN1cmwYASABKAkiNQojUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIiQKIkxpc3RJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QiXgohR2V0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJEi0KCWZpZWxkTWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siagoXSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdjcmVhdGVkGAQgASgJEg8KB3VwZGF0ZWQYBSABKAkiHAoaTGlzdEludm9pY2VUZW1wbGF0ZVJlcXVlc3QiXQooVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIfChFpbnZvaWNlVGVtcGxhdGVJZBgCIAEoCUIE4kEBAiKeAgobTGlzdEludm9pY2VUZW1wbGF0ZVJlc3BvbnNlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHY3JlYXRlZBgEIAEoCRIPCgd1cGRhdGVkGAUgASgJEhkKEW51bWJlck9mQ29ubmVjdGVkGAYgASgFElAKFWNvbm5lY3RlZEJpbGxpbmdHcm91cBgHIAMoCzIxLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlQ29ubmVjdGVkQmlsbGluZ0dyb3VwcxJBCghpbnZvaWNlcxgIIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiIgogR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QiSAohR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1Jlc3BvbnNlEiMKG3Nob3dSSVNQVXBmcm9udFRpbWVJbnRlcnZhbBgBIAEoCCKsAQojVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QSVQoHc2V0dGluZxgBIAMoCzJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdC5TZXR0aW5nRW50cnkaLgoMU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEibAodSW52b2ljZUNvbm5lY3RlZEJpbGxpbmdHcm91cHMSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCSI8CilMaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIocBCh5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDwoHYWNjb3VudBgCIAEoCRJIChBzZXJ2aWNlRGlzY291bnRzGAMgASgLMi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIjgKF0FjY291bnRTZXJ2aWNlRGlzY291bnRzEgoKAmlkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCSJ9CitDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMibQosQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMifQorVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIm0KLFVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIj4KK0RlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSJ9CitSZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMiTwowQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSCgoCaWQYAiABKAkiPwoxQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSJPCjBVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIKCgJpZBgCIAEoCSI/CjFVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEgoKAmlkGAEgASgJIkMKMERlbGV0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIlcKFENyZWF0ZUludm9pY2VSZXF1ZXN0EgwKBGRhdGUYBCABKAkSDgoGdmVuZG9yGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkiJQoXR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QSCgoCaWQYASABKAkiKAoYTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0EgwKBGRhdGUYASABKAkiYAocVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBIMCgRkYXRlGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkSDwoHZW5hYmxlZBgEIAEoCCLPAQoVQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDQoFZW1haWwYAiABKAkSEAoIcGFzc3dvcmQYAyABKAkSFAoMbm90aWZpY2F0aW9uGAQgASgIEjYKCndhdmVDb25maWcYBSADKAsyIi5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXJDb25maWcSNgoKYXF1YUNvbmZpZxgGIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZyJGChRMaXN0UmVzZWxsZXJzUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJQChJHZXRSZXNlbGxlclJlcXVlc3QSCgoCaWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sipgIKFVVwZGF0ZVJlc2VsbGVyUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhITCgVlbWFpbBgCIAEoCUIE4kEBARIXCghwYXNzd29yZBgDIAEoCUIF4kECBAESPAoKd2F2ZUNvbmZpZxgEIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZ0IE4kEBARI8CgphcXVhQ29uZmlnGAUgAygLMiIuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyQ29uZmlnQgTiQQEBEhsKDG5vdGlmaWNhdGlvbhgGIAEoCEIF4kECBAESNAoKdXBkYXRlTWFzaxgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiIwoVRGVsZXRlUmVzZWxsZXJSZXF1ZXN0EgoKAmlkGAEgASgJIkoKGEdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayLHAgoZR2V0QmlsbGluZ1NldHRpbmdSZXNwb25zZRIwCgl5ZWFyTW9udGgYASADKAsyHS5ibHVlYXBpLmFwaS5yaXBwbGUuWWVhck1vbnRoEjQKDnJvdW5kaW5nTWV0aG9kGAIgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjoKFGV4cG9ydFJvdW5kaW5nTWV0aG9kGAMgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjgKDWludm9pY2VMYXlvdXQYBCABKAsyIS5ibHVlYXBpLmFwaS5yaXBwbGUuSW52b2ljZUxheW91dBIzCg5pbnZvaWNlRHVlRGF0ZRgFIAEoCzIbLmJsdWVhcGkuYXBpLnJpcHBsZS5EdWVEYXRlEhcKD3N1cHBvcnRDdXJyZW5jeRgGIAMoCSI5ChhMaXN0RXhjaGFuZ2VSYXRlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJImUKHFNldEdsb2JhbEV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASJ3ChtTZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIQCghjdXJyZW5jeRgEIAEoCRIUCgxleGNoYW5nZVJhdGUYBSABKAEibAoiU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASLiAQoZTGlzdEV4Y2hhbmdlUmF0ZXNSZXNwb25zZRINCgVtb250aBgBIAEoCRI2CgZjb21tb24YAiABKAsyJi5ibHVlYXBpLmFwaS5yaXBwbGUuQ29tbW9uRXhjaGFuZ2VSYXRlEkIKDGJpbGxpbmdHcm91cBgDIAMoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSOgoFcGF5ZXIYBCABKAsyKy5ibHVlYXBpLmFwaS5yaXBwbGUuVmVuZG9yUGF5ZXJFeGNoYW5nZVJhdGUiSQoXTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVAoYQ3JlYXRlQWNjZXNzR3JvdXBSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSFQoNYmlsbGluZ0dyb3VwcxgDIAMoCSJgChhVcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAQgAygJIiYKGERlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCSJ9ChJMaXN0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSGQoRYmlsbGluZ0ludGVybmFsSWQYAyABKAkSLgoKZmllbGRfbWFzaxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sihAkKE0xpc3RJbnZvaWNlUmVzcG9uc2USGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIaChJmaW5hbGl6YXRpb25TdGF0dXMYBSABKAkSEQoJaXNDcmVhdGVkGAYgASgIEhkKEWlzU2V0dGluZ01vZGlmaWVkGAcgASgIEhMKC2NyZWF0ZWREYXRlGAggASgJEhMKC3VwZGF0ZWREYXRlGAkgASgJEhYKDmNyZWF0ZWRWZW5kb3JzGAogAygJEhMKC2lzUHVibGlzaGVkGAsgASgIEl0KE3ZlbmRvckJpbGxpbmdBbW91bnQYDCADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5WZW5kb3JCaWxsaW5nQW1vdW50RW50cnkSGgoSYmlsbGluZ0Ftb3VudFRvdGFsGA0gASgJEhAKCGN1cnJlbmN5GA4gASgJEg0KBXVybElkGA8gASgJEm0KG2NyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZxgQIAMoCzJILmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlc3BvbnNlLkNyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EmkKGXNhdmVkVmVuZG9ySW52b2ljZVNldHRpbmcYESADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5TYXZlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSbQobZGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nGBIgAygLMkguYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UuRGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSEAoIaGFzQ2hpbGQYEyABKAgaOgoYVmVuZG9yQmlsbGluZ0Ftb3VudEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaZwogQ3JlYXRlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSCwoDa2V5GAEgASgJEjIKBXZhbHVlGAIgASgLMiMuYmx1ZWFwaS5iaWxsaW5nLnYxLkludm9pY2VTZXR0aW5nczoCOAEaZQoeU2F2ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBGmcKIERlZmF1bHRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBIikKG0xpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBIKCgJpZBgBIAEoCSJOCiJMaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Eg8KB3BheWVySWQYASABKAkSFwoPYmlsbGluZ0dyb3VwQXJuGAIgASgJIo8BCg9BYmNCaWxsaW5nR3JvdXASCwoDYXJuGAEgASgJEgwKBG5hbWUYAiABKAkSFAoMY3JlYXRpb25UaW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhgKEHByaW1hcnlBY2NvdW50SWQYBSABKAkSDAoEc2l6ZRgGIAEoCRIOCgZzdGF0dXMYByABKAkiNAoKQWJjQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkiYgodUmVhZEludm9pY2VBZGp1c3RtZW50c1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIPCgdmZWVUeXBlGAQgASgJIpkBChxSZWFkQWRqdXN0bWVudEVudHJpZXNSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhITCgVtb250aBgCIAEoCUIE4kEBARpOCiJBZGp1c3RtZW50RW50cmllc1JlcXVlc3RBd3NPcHRpb25zEhMKC3NwcERpc2NvdW50GAEgASgIEhMKC2VkcERpc2NvdW50GAIgASgIIkMKGUdldEFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEhAKAmlkGAIgASgJQgTiQQECIp4DChtBcHBseUFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECElMKB3NldHRpbmcYAiABKAsyPC5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZ0IE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECGvwBCgxBcHBseVNldHRpbmcSEwoFbW9udGgYASABKAlCBOJBAQESFQoHdGF4RnJlZRgCIAEoCEIE4kEBARJqCgxleGNoYW5nZVJhdGUYAyADKAsyTi5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZy5FeGNoYW5nZVJhdGVFbnRyeUIE4kEBARIfChFiaWxsaW5nSW50ZXJuYWxJZBgEIAEoCUIE4kEBARozChFFeGNoYW5nZVJhdGVFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBIkwKHVJlc3RvcmVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECIl8KG1NwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQISGAoKc3RhcnRNb250aBgDIAEoCUIE4kEBAiL8AQoeQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAhJWCgZjb25maWcYAyADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFjY291bnRDb25maWdCBOJBAQISIQoTYWNjb3VudEZvclJlbWFpbmluZxgEIAEoCUIE4kEBAho3Cg1BY2NvdW50Q29uZmlnEhAKAmlkGAEgASgJQgTiQQECEhQKBmFtb3VudBgCIAEoAUIE4kEBAiJMCiJSZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiJPCiVSZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiJ+ChZDcmVhdGVDdXN0b21GZWVSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhITCgVtb250aBgCIAEoCUIE4kEBAhI5CgdlbnRyaWVzGAMgAygLMiIuYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZlZUVudHJ5QgTiQQECIqEDCg5DdXN0b21GZWVFbnRyeRIXCglhY2NvdW50SWQYASABKAlCBOJBAQISHAoOcGF5ZXJBY2NvdW50SWQYAiABKAlCBOJBAQISFQoHZmVlVHlwZRgDIAEoCUIE4kEBAhIZCgttb2JpbmdpVHlwZRgEIAEoCUIE4kEBAhIUCgZhbW91bnQYBSABKAFCBOJBAQISGgoMY3VycmVuY3lDb2RlGAYgASgJQgTiQQECEhkKC2Rlc2NyaXB0aW9uGAcgASgJQgTiQQECEhkKC3Byb2R1Y3RDb2RlGAggASgJQgTiQQEBEhkKC3Byb2R1Y3ROYW1lGAkgASgJQgTiQQEBEhgKCnVzYWdlU3RhcnQYCiABKAlCBOJBAQESGgoMdGltZUludGVydmFsGAsgASgJQgTiQQEBEkAKBG1ldGEYDCADKAsyLC5ibHVlYXBpLmJpbGxpbmcudjEuQ3VzdG9tRmVlRW50cnkuTWV0YUVudHJ5QgTiQQEBGisKCU1ldGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIioKF0NyZWF0ZUN1c3RvbUZlZVJlc3BvbnNlEg8KB2NyZWF0ZWQYASABKAUifQofTGlzdEFkanVzdG1lbnRFbnRyeUl0ZW1zUmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEwoFbW9udGgYAiABKAlCBOJBAQISGQoLbW9iaW5naVR5cGUYAyABKAlCBOJBAQESFAoGc3RhdHVzGAQgASgJQgTiQQEBIroBChNBZGp1c3RtZW50RW50cnlJdGVtEjUKBWVudHJ5GAEgASgLMiYuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFkanVzdG1lbnRFbnRyeRI/CgRtZXRhGAIgAygLMjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkanVzdG1lbnRFbnRyeUl0ZW0uTWV0YUVudHJ5GisKCU1ldGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIjwKG0xpc3RBY2NvdW50UmVzb3VyY2VzUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDQoFbW9udGgYAiABKAkiSgoPUmVzb3VyY2VBY2NvdW50Eg8KB3BheWVySWQYASABKAkSEgoKY3VzdG9tZXJJZBgCIAEoCRISCgpyZWdpc3RlcmVkGAMgASgIIiwKGkdldEFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCSKNAQodQ3JlYXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEioKBmNvbmZpZxgCIAMoCzIaLmJsdWVhcGkuYXBpLkNvbmZpZ0ZpbHRlcnMSMAoIYWNjb3VudHMYAyADKAsyHi5ibHVlYXBpLmFwaS5NYW5hZ2VtZW50QWNjb3VudCKNAQodVXBkYXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEioKBmNvbmZpZxgCIAMoCzIaLmJsdWVhcGkuYXBpLkNvbmZpZ0ZpbHRlcnMSMAoIYWNjb3VudHMYAyADKAsyHi5ibHVlYXBpLmFwaS5NYW5hZ2VtZW50QWNjb3VudCIvCh1EZWxldGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkiZwoZUmVhZFVudGFnZ2VkR3JvdXBzUmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISNAoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQEiXAokUmVhZEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZXNSZXF1ZXN0EjQKCmZpZWxkX21hc2sYASABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBImYKIkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSCgoCaWQYASABKAkSNAoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQEifAolQ3JlYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEjAKBmNvbmZpZxgDIAEoCzIgLmJsdWVhcGkuYXBpLnJpcHBsZS5NZXRob2RDb25maWcixQEKJVVwZGF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISVAoYY3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlGAIgASgLMiwuYmx1ZWFwaS5hcGkucmlwcGxlLkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUIE4kEBAhI0Cgp1cGRhdGVNYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBAiIzCiVEZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EgoKAmlkGAEgASgJIl0KLkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QSFQoHZ3JvdXBJZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQIiyQEKL0dldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlc3BvbnNlEhAKAmlkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgDIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIsCghhY2NvdW50cxgEIAMoCzIULmJsdWVhcGkuYXBpLkFjY291bnRCBOJBAQEi9wIKLlNldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QSFQoHZ3JvdXBJZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISgAEKB3NldHRpbmcYAyADKAsyaS5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhqUAQomQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmcSEAoCaWQYASABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAiABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISFgoIYWNjb3VudHMYAyADKAlCBOJBAQEiYAoxRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBIVCgdncm91cElkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAiKRAQokQ3JlYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSRgoHc2V0dGluZxgDIAEoCzI1LmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50c1NldHRpbmcixQEKJFVwZGF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhJVChdpbnZvaWNlU2VydmljZURpc2NvdW50cxgCIAEoCzIuLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50c0IE4kEBAhI0Cgp1cGRhdGVNYXNrGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBAiIyCiREZWxldGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSCgoCaWQYASABKAkibgoHVGFnRGF0YRISCgpjdXN0b21lcklkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRIUCgxjdXN0b21lck5hbWUYAyABKAkSJgoEdGFncxgEIAMoCzIYLmJsdWVhcGkuYmlsbGluZy52MS5UYWdzIiMKBFRhZ3MSCwoDa2V5GAEgASgJEg4KBnZhbHVlcxgCIAMoCSIuCg5HZXRUYWdzUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDAoEdHlwZRgCIAEoCSI7CgtDdXN0b21GaWVsZBIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkiXgoXQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSDQoFdmFsdWUYASABKAkSNAoLY3VzdG9tRmllbGQYAiABKAsyHy5ibHVlYXBpLmJpbGxpbmcudjEuQ3VzdG9tRmllbGQiNQoiTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBIPCgdncm91cElkGAEgASgJIoUBCiNMaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXNwb25zZRIPCgdncm91cElkGAEgASgJEk0KGGJpbGxpbmdHcm91cEN1c3RvbUZpZWxkcxgCIAMoCzIrLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBDdXN0b21GaWVsZCI8ChhDcmVhdGVDdXN0b21GaWVsZFJlcXVlc3QSCwoDa2V5GAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJIkgKGFVwZGF0ZUN1c3RvbUZpZWxkUmVxdWVzdBIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkiJgoYRGVsZXRlQ3VzdG9tRmllbGRSZXF1ZXN0EgoKAmlkGAEgASgJIhgKFkxpc3RDdXN0b21GaWVsZFJlcXVlc3QiawoXQ3JlYXRlRnJlZUZvcm1hdFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSLwoFaXRlbXMYAyADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuRnJlZUZvcm1JdGVtImEKDEZyZWVGb3JtSXRlbRINCgVsYWJlbBgBIAEoCRIQCgh1bml0Q29zdBgCIAEoAxINCgV0b3RhbBgFIAEoAxIQCghxdWFudGl0eRgDIAEoDRIPCgdlbmFibGVkGAQgASgIIjoKF0RlbGV0ZUZyZWVGb3JtYXRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDgoGdmVuZG9yGAIgASgJIj0KFEdldEZyZWVGb3JtYXRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSFAoMaXNBc3NvY2lhdGVkGAIgASgIIm4KFUdldEZyZWVGb3JtYXRSZXNwb25zZRIPCgdncm91cElkGAMgASgJEg4KBnZlbmRvchgBIAEoCRI0CgpmcmVlRm9ybWF0GAIgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSJ3Ch5VcGRhdGVUYWdzQWRkaW5nU2V0dGluZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg8KB2dyb3VwSWQYAiABKAkSNAoFaXRlbXMYAyADKAsyJS5ibHVlYXBpLmJpbGxpbmcudjEuVGFnc0FkZGluZ1NldHRpbmciPgobR2V0VGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIPCgdncm91cElkGAIgASgJIkkKEVRhZ3NBZGRpbmdTZXR0aW5nEg8KB2dyb3VwSWQYASABKAkSEgoKY3VzdG9tZXJJZBgCIAEoCRIPCgd0YWdLZXlzGAMgAygJIk0KHUV4cG9ydFNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhQKBmZvcm1hdBgBIAEoCUIE4kEBAhIWCghsYW5ndWFnZRgCIAEoCUIE4kEBASJvCitFeHBvcnRBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhQKBmZvcm1hdBgBIAEoCUIE4kEBAhIWCghsYW5ndWFnZRgCIAEoCUIE4kEBARISCgpkaXJlY3RMaW5rGAMgASgIInQKMEV4cG9ydEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQESEgoKZGlyZWN0TGluaxgDIAEoCCI2ChxFeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXF1ZXN0EhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBIjUKHUV4cG9ydEJpbGxpbmdHcm91cENzdlJlc3BvbnNlEhQKDGRvd25sb2FkTGluaxgBIAEoCSJcCh5FeHBvcnRJbnZvaWNlU2V0dGluZ0NzdlJlcXVlc3QSFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQESIgoUaW5jbHVkZU1pc2NlbGxhbmVvdXMYAyABKAhCBOJBAQEiNwofRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXNwb25zZRIUCgxkb3dubG9hZExpbmsYASABKAkiQAotR2V0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkiPAouR2V0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSK5AQohQWRkQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSUwoHaWRUb0tleRgCIAMoCzJCLmJsdWVhcGkuYmlsbGluZy52MS5BZGRCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QuSWRUb0tleUVudHJ5Gi4KDElkVG9LZXlFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIk4KJERlbGV0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBIPCgdncm91cElkGAEgASgJEhUKDWN1c3RvbUZpZWxkSWQYAiABKAkidgofQWRkQWNjb3VudFRvQmlsbGluZ0dyb3VwUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIyCghhY2NvdW50cxgDIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50VG9BZGQiUQoMQWNjb3VudFRvQWRkEhIKCmN1c3RvbWVySWQYASABKAkSEQoJYWNjb3VudElkGAIgASgJEgwKBG5hbWUYAyABKAkSDAoEbm90ZRgEIAEoCSKrAQocQWRkVGFnc1RvQmlsbGluZ0dyb3VwUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIwCghzZXR0aW5ncxgDIAMoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5UYWdTZXR0aW5nEjgKDW5vblRhZ1NldHRpbmcYBCABKAsyIS5ibHVlYXBpLmJpbGxpbmcudjEuTm9uVGFnU2V0dGluZyJHCgpUYWdTZXR0aW5nEhIKCmN1c3RvbWVySWQYASABKAkSJQoEdGFncxgCIAMoCzIXLmJsdWVhcGkuYmlsbGluZy52MS5UYWciMQoDVGFnEgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCRIOCgZhc3NpZ24YAyABKAUiPgoNTm9uVGFnU2V0dGluZxIPCgdpbmNsdWRlGAEgASgIEgwKBHR5cGUYAiABKAkSDgoGYW1vdW50GAMgASgBIj4KHVNhdmVUYWdJbnZvaWNlU2V0dGluZ1Jlc3BvbnNlEg4KBnN0YXR1cxgBIAEoCRINCgVlcnJvchgCIAEoCSJ+CiZVcGRhdGVOb25UYWdHcm91cFRvQmlsbGluZ0dyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSOAoIc2V0dGluZ3MYAyADKAsyJi5ibHVlYXBpLmJpbGxpbmcudjEuTm9uVGFnR3JvdXBTZXR0aW5nIj4KEk5vblRhZ0dyb3VwU2V0dGluZxIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJEg4KBmFtb3VudBgDIAEoASKaAQoaU2F2ZUludm9pY2VTZXR0aW5nc1JlcXVlc3QSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEQoJYWxsR3JvdXBzGAMgASgIEg4KBmdyb3VwcxgEIAMoCRI7Cg5pbnZvaWNlU2V0dGluZxgFIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3MilQQKD0ludm9pY2VTZXR0aW5ncxIRCglpbnZvaWNlTm8YAiABKAkSFAoMZGlzY291bnRSYXRlGAQgASgBEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYBSABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYBiABKAkSDwoHdGF4UmF0ZRgHIAEoARISCgpzdXBwb3J0RmVlGAggASgJEhMKC3N1cHBvcnRSYXRlGAkgASgBEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GAogASgJEhIKCnN1cHBvcnRGaXgYCyABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAwgASgJEhgKEHN1YnN0aXR1dGlvblJhdGUYDSABKAESFwoPc3Vic3RpdHV0aW9uRml4GA4gASgBEiEKGXN1YnN0aXR1dGlvbkZlZUNhbGNUYXJnZXQYDyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYECABKAkSHwoXc3Vic3RpdHV0aW9uRmVlQ2FsY1R5cGUYESABKAkSEAoIY3VycmVuY3kYAyABKAkSFAoMZXhjaGFuZ2VSYXRlGBIgASgBEgwKBG1lbW8YEyABKAkSEAoIY2FsY1R5cGUYFCABKAkSOQoPYWRkaXRpb25hbEl0ZW1zGBUgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSKtAwoQQmFzaWNJbmZvcm1hdGlvbhIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhYKDmJpbGxpbmdHcm91cElkGAMgASgJEhMKC2NvbXBhbnlOYW1lGAQgASgJEhYKCWFkZHJlc3NlZRgFIAEoCUgAiAEBEhQKB2NvdW50cnkYBiABKAlIAYgBARIXCgpwb3N0YWxDb2RlGAcgASgJSAKIAQESEQoEY2l0eRgIIAEoCUgDiAEBEhgKC3Bob25lTnVtYmVyGAkgASgJSASIAQESGQoMYWRkcmVzc0xpbmUxGAogASgJSAWIAQESGQoMYWRkcmVzc0xpbmUyGAsgASgJSAaIAQESEgoFc3RhdGUYDCABKAlIB4gBARIXCgpwcmVmZWN0dXJlGA0gASgJSAiIAQFCDAoKX2FkZHJlc3NlZUIKCghfY291bnRyeUINCgtfcG9zdGFsQ29kZUIHCgVfY2l0eUIOCgxfcGhvbmVOdW1iZXJCDwoNX2FkZHJlc3NMaW5lMUIPCg1fYWRkcmVzc0xpbmUyQggKBl9zdGF0ZUINCgtfcHJlZmVjdHVyZSJ3CilVcGRhdGVCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRI+ChBiYXNpY0luZm9ybWF0aW9uGAIgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLkJhc2ljSW5mb3JtYXRpb24ivAEKJVVwZGF0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkc1JlcXVlc3QSCgoCaWQYASABKAkSVwoHaWRUb0tleRgCIAMoCzJGLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZHNSZXF1ZXN0LklkVG9LZXlFbnRyeRouCgxJZFRvS2V5RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJyCiNVcGRhdGVCaWxsaW5nR3JvdXBGcmVlRm9ybWF0UmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSLwoFaXRlbXMYAyADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuRnJlZUZvcm1JdGVtIuoCCihVcGRhdGVCaWxsaW5nR3JvdXBMaW5rZWRSZXNvdXJjZXNSZXF1ZXN0EgoKAmlkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIXCg9zZWxlY3Rpb25NZXRob2QYAyABKAkSMgoIYWNjb3VudHMYBCADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFRvQWRkEjAKCHNldHRpbmdzGAUgAygLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ1NldHRpbmcSPQoNbm9uVGFnU2V0dGluZxgGIAEoCzIhLmJsdWVhcGkuYmlsbGluZy52MS5Ob25UYWdTZXR0aW5nSACIAQESPwoOYWNjb3VudE9wdGlvbnMYByABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnNIAYgBAUIQCg5fbm9uVGFnU2V0dGluZ0IRCg9fYWNjb3VudE9wdGlvbnMiuAEKKFVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QSCgoCaWQYASABKAkSGQoMYmlsbGluZ1RpdGxlGAIgASgJSACIAQESHAoPY2FsY3VsYXRpb25UeXBlGAMgASgJSAGIAQESFQoIbGFuZ3VhZ2UYBCABKAlIAogBAUIPCg1fYmlsbGluZ1RpdGxlQhIKEF9jYWxjdWxhdGlvblR5cGVCCwoJX2xhbmd1YWdlIq8BCihVcGRhdGVCaWxsaW5nR3JvdXBSZXNlbGxlckNoYXJnZXNSZXF1ZXN0EgoKAmlkGAEgASgJEhwKD2ludm9pY2VUZW1wbGF0ZRgCIAEoCUgAiAEBEkUKB2ludm9pY2UYAyABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VCEgoQX2ludm9pY2VUZW1wbGF0ZSK/BAoqVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0EgoKAmlkGAEgASgJEngKA2F3cxgCIAMoCzJlLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBBZGRpdGlvbmFsQ2hhcmdlc1JlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQISegoFYXp1cmUYAyADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECEngKA2djcBgEIAMoCzJlLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBBZGRpdGlvbmFsQ2hhcmdlc1JlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQIalAEKJkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nEhAKAmlkGAEgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAIgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEhYKCGFjY291bnRzGAMgAygJQgTiQQEBIicKGURlbGV0ZUJpbGxpbmdHcm91cFJlcXVlc3QSCgoCaWQYASABKAkiUgooR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQIioAEKKUdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlc3BvbnNlEgoKAmlkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIPCgdlbmFibGVkGAMgASgIEkYKB3NldHRpbmcYBCADKAsyNS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuIvABCitVcGRhdGVCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhIVCgdlbmFibGVkGAMgASgIQgTiQQEBEkwKB3NldHRpbmcYBCADKAsyNS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuQgTiQQEBEjQKCnVwZGF0ZU1hc2sYBSABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQECIjEKF0dldEFubm91bmNlbWVudHNSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgASgJIqcBChlDcmVhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0Eg0KBWxhYmVsGAEgASgJEgwKBHR5cGUYAiABKAkSEAoIY29udGVudHMYAyABKAkSFQoNYmlsbGluZ0dyb3VwcxgEIAMoCRIYChBhbGxCaWxsaW5nR3JvdXBzGAUgASgIEg0KBXN0YXJ0GAYgASgDEgsKA2VuZBgHIAEoAxIOCgZzdGF0dXMYCCABKAkieAoZVXBkYXRlQW5ub3VuY2VtZW50UmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCRJDCgxhbm5vdW5jZW1lbnQYAiABKAsyLS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQW5ub3VuY2VtZW50UmVxdWVzdCJKCiBVcGRhdGVBbm5vdW5jZW1lbnRzU3RhdHVzUmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAMoCRIOCgZzdGF0dXMYAiABKAkiRQodVXBkYXRlQW5ub3VuY2VtZW50RGF0ZVJlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASADKAkSDAoEZGF0ZRgCIAEoAyIzChlEZWxldGVBbm5vdW5jZW1lbnRSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgASgJIukBCgxBbm5vdW5jZW1lbnQSCgoCaWQYASABKAkSDQoFbGFiZWwYAiABKAkSDAoEdHlwZRgDIAEoCRIPCgdtZXNzYWdlGAQgASgJEhUKDWJpbGxpbmdHcm91cHMYBSADKAkSGAoQYWxsQmlsbGluZ0dyb3VwcxgNIAEoCBINCgVzdGFydBgGIAEoCRILCgNlbmQYByABKAkSDAoEZGF0ZRgIIAEoCRIOCgZzdGF0dXMYCSABKAkSEgoKdXNlclN0YXR1cxgKIAEoCRIPCgdjcmVhdGVkGAsgASgJEg8KB3VwZGF0ZWQYDCABKAkiNgojR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSKWAQokR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1Jlc3BvbnNlEg8KB2dyb3VwSWQYASABKAkSEQoJZ3JvdXBOYW1lGAIgASgJEhEKCWNvbXBhbnlJZBgDIAEoCRI3Cg1hbm5vdW5jZW1lbnRzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFubm91bmNlbWVudCITChFHZXRDcmVkaXRzUmVxdWVzdCLEAQoGQ3JlZGl0EgoKAmlkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSFAoMY3VzdG9tZXJOYW1lGAMgASgJEhQKDGNyZWRpdEFtb3VudBgEIAEoARIMCgR0ZXJtGAUgASgJEhMKC2Rlc2NyaXB0aW9uGAYgASgJEg8KB2NyZWF0ZWQYByABKAkSEgoKaW5pdGlhbEZlZRgIIAEoARIVCg1jcmVkaXRCYWxhbmNlGAkgASgBEg8KB2FwcGxpZWQYCiABKAgiFwoVR2V0Q3N2U2V0dGluZ3NSZXF1ZXN0IqQBCgpDc3ZTZXR0aW5nEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSMgoDY29sGAMgAygLMiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNzdlNldHRpbmcuQ29sdW1uGkgKBkNvbHVtbhIMCgRuYW1lGAEgASgJEgoKAmlkGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEg8KB2VuYWJsZWQYBCABKAgi5gEKIFVwZGF0ZUludm9pY2VFeGNoYW5nZVJhdGVSZXF1ZXN0Eg0KBW1vbnRoGAEgASgJEg4KBnZlbmRvchgCIAEoCRJcCgxleGNoYW5nZVJhdGUYAyADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZUV4Y2hhbmdlUmF0ZVJlcXVlc3QuRXhjaGFuZ2VSYXRlRW50cnkSEAoIZ3JvdXBJZHMYBCADKAkaMwoRRXhjaGFuZ2VSYXRlRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgBOgI4ASJbChpDb252ZXJ0SW52b2ljZVRvUGRmUmVxdWVzdBIMCgRkYXRlGAEgASgJEhUKDWJpbGxpbmdncm91cHMYAiADKAkSGAoQYWxsQmlsbGluZ0dyb3VwcxgDIAEoCCJEChtDb252ZXJ0SW52b2ljZVRvUGRmUmVzcG9uc2USEAoIcHJvZ3Jlc3MYASABKAkSEwoLZG93bmxvYWRVcmwYAiABKAkiiAIKIUxpc3RCaWxsaW5nR3JvdXBzUGFnaW5hdGVkUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzaxIPCgd2ZW5kb3JzGAIgASgJEhAKCGNhbGNUeXBlGAMgASgJEhMKC2Rpc3BsYXlDb3N0GAQgASgJEg4KBmJnVHlwZRgFIAEoCRITCgtjb21wYW55TmFtZRgGIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAcgASgJEhYKDmJpbGxpbmdHcm91cElkGAggASgJEhAKCHBhZ2VTaXplGAkgASgFEhIKCnBhZ2VOdW1iZXIYCiABKAUilwIKFEJpbGxpbmdHcm91cExpc3RJdGVtEhgKEGJpbGxpbmdHcm91cE5hbWUYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSEwoLY29tcGFueU5hbWUYAyABKAkSGAoQYmlsbGluZ0dyb3VwVHlwZRgEIAEoCRJMCgd2ZW5kb3JzGAUgAygLMjsuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cExpc3RJdGVtLkJpbGxpbmdHcm91cFZlbmRvchIZChFiaWxsaW5nSW50ZXJuYWxJZBgGIAEoCRo1ChJCaWxsaW5nR3JvdXBWZW5kb3ISDgoGdmVuZG9yGAEgASgJEg8KB2VuYWJsZWQYAiABKAgitAEKIkxpc3RCaWxsaW5nR3JvdXBzUGFnaW5hdGVkUmVzcG9uc2USPwoNYmlsbGluZ0dyb3VwcxgBIAMoCzIoLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBMaXN0SXRlbRISCgp0b3RhbENvdW50GAIgASgFEhMKC2N1cnJlbnRQYWdlGAMgASgFEhAKCHBhZ2VTaXplGAQgASgFEhIKCnRvdGFsUGFnZXMYBSABKAUijgEKIUNoaWxkQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvbhIKCgJpZBgBIAEoCRISCgppbnRlcm5hbElkGAYgASgJEhAKCHBhcmVudElkGAIgASgJEhQKDHJvb3RQYXJlbnRJZBgFIAEoCRIMCgRuYW1lGAMgASgJEhMKC2NvbXBhbnlOYW1lGAQgASgJIr4BCiRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAMgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEiwKCGFjY291bnRzGAQgAygLMhQuYmx1ZWFwaS5hcGkuQWNjb3VudEIE4kEBASKAAgoRQ2hpbGRCaWxsaW5nR3JvdXASTwoQYmFzaWNJbmZvcm1hdGlvbhgBIAEoCzI1LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24STQoPaW52b2ljZVNldHRpbmdzGAIgASgLMjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEjkKC2JpbGxpbmdJbmZvGAMgASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8SEAoIaGFzQ2hpbGQYBCABKAgi5QEKIENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEkMKA2F3cxgBIAEoCzI2LmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBWZW5kb3JlZEludm9pY2VTZXR0aW5nEiEKGWFjY291bnRTdXBwb3J0UGxhbkVuYWJsZWQYAiABKAgSWQoaYWNjb3VudFN1cHBvcnRQbGFuU2V0dGluZ3MYAyADKAsyNS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuIvsBCh5DcmVhdGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QSTwoQYmFzaWNJbmZvcm1hdGlvbhgBIAEoCzI1LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SOQoLYmlsbGluZ0luZm8YAyABKAsyJC5ibHVlYXBpLmFwaS5yaXBwbGUuQmlsbGluZ0dyb3VwSW5mbxJNCg9pbnZvaWNlU2V0dGluZ3MYAiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiIQofQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIxChtHZXRDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCSJWChxHZXRDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlEjYKB2RldGFpbHMYASABKAsyJS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXAiQQodUmVhZENoaWxkQmlsbGluZ0dyb3Vwc1JlcXVlc3QSDgoGcm9vdElkGAEgASgJEhAKCHBhcmVudElkGAIgASgJIsABCh5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCRJPChBiYXNpY0luZm9ybWF0aW9uGAIgASgLMjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvbhI5CgtiaWxsaW5nSW5mbxgDIAEoCzIkLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBJbmZvIiEKH1VwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiNAoeRGVsZXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkiIQofRGVsZXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSKSAQotVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkSTQoPaW52b2ljZVNldHRpbmdzGAIgASgLMjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzIjAKLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVzcG9uc2UimgMKM1NldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIYCgppbnRlcm5hbElkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhIUCgZyb290SWQYAyABKAlCBOJBAQIShQEKB3NldHRpbmcYBCADKAsybi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECGpQBCiZDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZxIQCgJpZBgBIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgCIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIWCghhY2NvdW50cxgDIAMoCUIE4kEBASJUCjJTZXRDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJEgoKAmlkGAIgASgJIo4BCjlTZXRDaGlsZEJpbGxpbmdHcm91cEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCRI9CghhY2NvdW50cxgCIAMoCzIrLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50U2VydmljZURpc2NvdW50cyJZCjNHZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkizgEKNEdldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVzcG9uc2USEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAMgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEiwKCGFjY291bnRzGAQgAygLMhQuYmx1ZWFwaS5hcGkuQWNjb3VudEIE4kEBASJICjJHZXRDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJIkEKM0dldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSJQCjpSZWFkQ2hpbGRCaWxsaW5nR3JvdXBBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkieQodQnVsa0NyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QSDgoGdmVuZG9yGAUgASgJEhIKCmNzdkNvbnRlbnQYASABKAwSEQoJZGVsaW1pdGVyGAIgASgJEhEKCWhhc0hlYWRlchgDIAEoCBIOCgZkcnlSdW4YBCABKAgiVQobQnVsa0NyZWF0ZUJpbGxpbmdHcm91cEVycm9yEg0KBWluZGV4GAEgASgFEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEg8KB21lc3NhZ2UYAyABKAki7QEKHkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBNZXRhZGF0YRIOCgZzdGF0dXMYASABKAkSEgoKdG90YWxDb3VudBgCIAEoBRIWCg5wcm9jZXNzZWRDb3VudBgDIAEoBRIUCgxzdWNjZXNzQ291bnQYBCABKAUSFAoMZmFpbHVyZUNvdW50GAUgASgFEj8KBmVycm9ycxgGIAMoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CdWxrQ3JlYXRlQmlsbGluZ0dyb3VwRXJyb3ISEQoJc3RhcnRUaW1lGAcgASgJEg8KB2VuZFRpbWUYCCABKAkiuQEKE0V4Y2x1ZGVTZXJ2aWNlRW50cnkSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkSFwoPZXhjZXB0X3BheWVyX2lkGAYgAygJEg4KBmFjdGlvbhgHIAEoCRIOCgZzdGF0dXMYCCABKAkSFQoNZXJyb3JfbWVzc2FnZRgJIAEoCSKPAQogQ3JlYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkSFwoPZXhjZXB0X3BheWVyX2lkGAYgAygJIlsKIUNyZWF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZRI2CgVlbnRyeRgBIAEoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5Io8BCiBVcGRhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVxdWVzdBIOCgZtc3BfaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEhAKCHBheWVyX2lkGAMgASgJEg8KB3NlcnZpY2UYBCABKAkSDwoHcHJvZHVjdBgFIAEoCRIXCg9leGNlcHRfcGF5ZXJfaWQYBiADKAkiWwohVXBkYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlEjYKBWVudHJ5GAEgASgLMicuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4Y2x1ZGVTZXJ2aWNlRW50cnkidgogRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkiWwohRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlEjYKBWVudHJ5GAEgASgLMicuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4Y2x1ZGVTZXJ2aWNlRW50cnkiPAoaTGlzdEV4Y2x1ZGVTZXJ2aWNlc1JlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCSJXChtMaXN0RXhjbHVkZVNlcnZpY2VzUmVzcG9uc2USOAoHZW50cmllcxgBIAMoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5IkQKC1NlcnZpY2VJdGVtEgoKAmlkGAEgASgJEgwKBGNvZGUYAiABKAkSDQoFbmFtZXMYAyADKAkSDAoEc2t1cxgEIAMoCSIzChNMaXN0U2VydmljZXNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIMCgRjb2RlGAIgASgJIkUKFExpc3RTZXJ2aWNlc1Jlc3BvbnNlEi0KBGRhdGEYASADKAsyHy5ibHVlYXBpLmJpbGxpbmcudjEuU2VydmljZUl0ZW0icgoWQnVsa0xpbmtBY2NvdW50UmVxdWVzdBIOCgZ2ZW5kb3IYBSABKAkSEgoKY3N2Q29udGVudBgBIAEoDBIRCglkZWxpbWl0ZXIYAiABKAkSEQoJaGFzSGVhZGVyGAMgASgIEg4KBmRyeVJ1bhgEIAEoCCJhChRCdWxrTGlua0FjY291bnRFcnJvchINCgVpbmRleBgBIAEoBRIWCg5iaWxsaW5nR3JvdXBJZBgCIAEoCRIRCglhY2NvdW50SWQYAyABKAkSDwoHbWVzc2FnZRgEIAEoCSLfAQoXQnVsa0xpbmtBY2NvdW50TWV0YWRhdGESDgoGc3RhdHVzGAEgASgJEhIKCnRvdGFsQ291bnQYAiABKAUSFgoOcHJvY2Vzc2VkQ291bnQYAyABKAUSFAoMc3VjY2Vzc0NvdW50GAQgASgFEhQKDGZhaWx1cmVDb3VudBgFIAEoBRI4CgZlcnJvcnMYBiADKAsyKC5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0xpbmtBY2NvdW50RXJyb3ISEQoJc3RhcnRUaW1lGAcgASgJEg8KB2VuZFRpbWUYCCABKAkiPgoaQnVsa1RhZ0JpbGxpbmdHcm91cFJlcXVlc3QSEgoKY3N2Q29udGVudBgBIAEoDBIMCgRtb2RlGAIgASgJIoIBChhCdWxrVGFnQmlsbGluZ0dyb3VwRXJyb3ISDQoFaW5kZXgYASABKAUSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSEgoKY3VzdG9tZXJJZBgDIAEoCRILCgNrZXkYBCABKAkSDQoFdmFsdWUYBSABKAkSDwoHbWVzc2FnZRgGIAEoCSLnAQobQnVsa1RhZ0JpbGxpbmdHcm91cE1ldGFkYXRhEg4KBnN0YXR1cxgBIAEoCRISCgp0b3RhbENvdW50GAIgASgFEhYKDnByb2Nlc3NlZENvdW50GAMgASgFEhQKDHN1Y2Nlc3NDb3VudBgEIAEoBRIUCgxmYWlsdXJlQ291bnQYBSABKAUSPAoGZXJyb3JzGAYgAygLMiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtUYWdCaWxsaW5nR3JvdXBFcnJvchIRCglzdGFydFRpbWUYByABKAkSDwoHZW5kVGltZRgIIAEoCTL2tAEKB0JpbGxpbmcSgAEKEUxpc3RCaWxsaW5nR3JvdXBzEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiGYLT5JMCExIRL3YxL2JpbGxpbmdncm91cHMwARKwAQoaTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWQSNS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWRSZXF1ZXN0GjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBzUGFnaW5hdGVkUmVzcG9uc2UiI4LT5JMCHRIbL3YxL2JpbGxpbmdncm91cHM6cGFnaW5hdGVkEoMBChJDcmVhdGVCaWxsaW5nR3JvdXASLS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiHILT5JMCFjoBKiIRL3YxL2JpbGxpbmdncm91cHMSlgEKGENyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZBIzLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBNZXJnZWRSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCIjgtPkkwIdOgEqIhgvdjEvYmlsbGluZ2dyb3Vwcy9tZXJnZWQSeQoRRGVsZXRlQmlsbGluR3JvdXASLS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIdgtPkkwIXKhUvdjEvYmlsbGluZ2dyb3VwL3tpZH0SjAEKGEFkZEFjY291bnRUb0JpbGxpbmdHcm91cBIzLmJsdWVhcGkuYmlsbGluZy52MS5BZGRBY2NvdW50VG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiOC0+STAh06ASoiGC92MS9iaWxsaW5nZ3JvdXAvYWNjb3VudBKZAQoPR2V0QmlsbGluZ0dyb3VwEiouYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cFJlcXVlc3QaKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2UiLYLT5JMCJxIlL3YxL2JpbGxpbmdncm91cHMve2JpbGxpbmdJbnRlcm5hbElkfRKRAQoOR2V0QWNjZXNzR3JvdXASKS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QWNjZXNzR3JvdXBSZXF1ZXN0GiouYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFjY2Vzc0dyb3VwUmVzcG9uc2UiKILT5JMCIhIgL3YxL2FjY2Vzc2dyb3Vwcy97YWNjZXNzR3JvdXBJZH0SngEKFkxpc3RBd3NEYWlseVJ1bkhpc3RvcnkSMS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEF3c0RhaWx5UnVuSGlzdG9yeVJlcXVlc3QaJi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5IieC0+STAiE6ASoiHC92MS9hd3MvZGFpbHlydW5oaXN0b3J5OnJlYWQwARKaAQoTTGlzdFVzYWdlQ29zdHNEcmlmdBIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0VXNhZ2VDb3N0c0RyaWZ0UmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5Vc2FnZUNvc3RzRHJpZnQiLILT5JMCJjoBKiIhL3YxL3t2ZW5kb3J9L3VzYWdlY29zdHNkcmlmdDpyZWFkMAESfAoNQ3JlYXRlSW52b2ljZRIoLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVJbnZvaWNlUmVxdWVzdBobLmJsdWVhcGkuYXBpLkludm9pY2VNZXNzYWdlIiSC0+STAh46ASoiGS92MS9pbnZvaWNlL3tkYXRlfTpjcmVhdGUSmwEKGUNyZWF0ZUludm9pY2VXaXRoU2V0dGluZ3MSLi5ibHVlYXBpLmJpbGxpbmcudjEuU2F2ZUludm9pY2VTZXR0aW5nc1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIxgtPkkwIrOgEqIiYvdjEvaW52b2ljZS97ZGF0ZX06Y3JlYXRlJnNhdmVzZXR0aW5ncxKJAQoTU2F2ZUludm9pY2VTZXR0aW5ncxIuLmJsdWVhcGkuYmlsbGluZy52MS5TYXZlSW52b2ljZVNldHRpbmdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIqgtPkkwIkOgEqIh8vdjEvaW52b2ljZS97ZGF0ZX06c2F2ZXNldHRpbmdzEqIBChNDb252ZXJ0SW52b2ljZVRvUGRmEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkNvbnZlcnRJbnZvaWNlVG9QZGZSZXF1ZXN0Gi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkNvbnZlcnRJbnZvaWNlVG9QZGZSZXNwb25zZSIqgtPkkwIkOgEqIh8vdjEvaW52b2ljZS97ZGF0ZX06Y29udmVydHRvcGRmEn0KEEdldEludm9pY2VTdGF0dXMSKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIfgtPkkwIZEhcvdjEvaW52b2ljZS9zdGF0dXMve2lkfRKLAQoRTGlzdEludm9pY2VTdGF0dXMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0GhsuYmx1ZWFwaS5hcGkuSW52b2ljZU1lc3NhZ2UiKYLT5JMCIzoBKiIeL3YxL2ludm9pY2Uvc3RhdHVzL3tkYXRlfTpyZWFkMAESbQoKR2V0SW52b2ljZRIlLmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlUmVxdWVzdBoULmJsdWVhcGkuYXBpLkludm9pY2UiIoLT5JMCHDoBKiIXL3YxL2ludm9pY2Uve2RhdGV9OnJlYWQSfQoLTGlzdEludm9pY2USJi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXF1ZXN0GicuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UiG4LT5JMCFToBKiIQL3YxL2ludm9pY2U6cmVhZDABEogBChVVcGRhdGVJbnZvaWNlUHJldmlld3MSMC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIlgtPkkwIfOgEqGhovdjEvaW52b2ljZS97ZGF0ZX06cHJldmlldxKWAQoRRXhwb3J0SW52b2ljZUZpbGUSLC5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZUZpbGVSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VGaWxlUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL2ludm9pY2Uve2RhdGV9OmV4cG9ydBKWAQoTTGlzdEludm9pY2VUZW1wbGF0ZRIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVRlbXBsYXRlUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVRlbXBsYXRlUmVzcG9uc2UiHILT5JMCFhIUL3YxL2ludm9pY2UvdGVtcGxhdGUwARKtAQoZR2V0SW52b2ljZURpc3BsYXlTZXR0aW5ncxI0LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVzcG9uc2UiI4LT5JMCHRIbL3YxL2ludm9pY2UvZGlzcGxheXNldHRpbmdzEpcBChxVcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzEjcuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiaC0+STAiA6ASoiGy92MS9pbnZvaWNlL2Rpc3BsYXlzZXR0aW5ncxKWAQoZVXBkYXRlSW52b2ljZUV4Y2hhbmdlUmF0ZRI0LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIrgtPkkwIlOgEqGiAvdjEvaW52b2ljZS9leGNoYW5nZXJhdGUve21vbnRofRKsAQohVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VUZW1wbGF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMYLT5JMCKzoBKiImL3YxL2JpbGxpbmdncm91cHMve2lkfS9pbnZvaWNldGVtcGxhdGUSsQEKHFJlYWRTZXJ2aWNlRGlzY291bnRzU2VydmljZXMSNy5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QaHi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuU2VydmljZSI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97dmVuZG9yfS9zZXJ2aWNlczpyZWFkMAESqgEKHUNyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIfgtPkkwIZOgEqIhQvdjEvc2VydmljZWRpc2NvdW50cxKvAQodVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSOC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIiSC0+STAh46ASoaGS92MS9zZXJ2aWNlZGlzY291bnRzL3tpZH0SlAEKHURlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIhgtPkkwIbKhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EqoBChtMaXN0SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBorLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIkgtPkkwIeOgEqIhkvdjEvc2VydmljZWRpc2NvdW50czpyZWFkMAESpgEKGkdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIhgtPkkwIbEhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EqIBChZFeHBvcnRTZXJ2aWNlRGlzY291bnRzEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydFNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi0uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLlNlcnZpY2VEaXNjb3VudHNFeHBvcnQiJoLT5JMCIDoBKiIbL3YxL3NlcnZpY2VkaXNjb3VudHM6ZXhwb3J0EvABCilDcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEvABCilVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSI2gtPkkwIwOgEqGisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEr4BCilEZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiM4LT5JMCLSorL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2JpbGxpbmdncm91cBLRAQoiTGlzdEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI9LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMiNoLT5JMCMDoBKiIrL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQ6cmVhZDABEtwBCiRDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpALmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSIxgtPkkwIrOgEqIiYvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudBLcAQokVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaQC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiMYLT5JMCKzoBKhomL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQSuQEKJFJlbW92ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5SZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjiC0+STAjI6ASoaLS92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50OnJlbW92ZRKvAQokRGVsZXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiLoLT5JMCKComL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQSzQEKJEV4cG9ydEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GjQuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzRXhwb3J0Ii6C0+STAig6ASoiIy92MS9zZXJ2aWNlZGlzY291bnRzL2FjY291bnQ6ZXhwb3J0EtoBCilFeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuR3JvdXBTZXJ2aWNlRGlzY291bnRzRXhwb3J0IjOC0+STAi06ASoiKC92MS9zZXJ2aWNlZGlzY291bnRzL2JpbGxpbmdncm91cDpleHBvcnQS5AEKJkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkEuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpCLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjOC0+STAi0SKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9iaWxsaW5nZ3JvdXAScwoOQ3JlYXRlUmVzZWxsZXISKS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhiC0+STAhI6ASoiDS92MS9yZXNlbGxlcnMScAoNTGlzdFJlc2VsbGVycxIoLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0UmVzZWxsZXJzUmVxdWVzdBocLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlciIVgtPkkwIPEg0vdjEvcmVzZWxsZXJzMAESbwoLR2V0UmVzZWxsZXISJi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0UmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhqC0+STAhQSEi92MS9yZXNlbGxlcnMve2lkfRJ4Cg5VcGRhdGVSZXNlbGxlchIpLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVSZXNlbGxlclJlcXVlc3QaHC5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXIiHYLT5JMCFzoBKhoSL3YxL3Jlc2VsbGVycy97aWR9Em8KDkRlbGV0ZVJlc2VsbGVyEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZVJlc2VsbGVyUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIagtPkkwIUKhIvdjEvcmVzZWxsZXJzL3tpZH0ShgEKEUdldEJpbGxpbmdTZXR0aW5nEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBotLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nU2V0dGluZ1Jlc3BvbnNlIhSC0+STAg4SDC92MS9zZXR0aW5ncxKbAQoRTGlzdEV4Y2hhbmdlUmF0ZXMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEV4Y2hhbmdlUmF0ZXNSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RFeGNoYW5nZVJhdGVzUmVzcG9uc2UiKYLT5JMCIxIhL3YxL3t2ZW5kb3J9L2V4Y2hhbmdlcmF0ZS97bW9udGh9EpYBChVTZXRHbG9iYWxFeGNoYW5nZVJhdGUSMC5ibHVlYXBpLmJpbGxpbmcudjEuU2V0R2xvYmFsRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIzgtPkkwItOgEqIigvdjEvZXhjaGFuZ2VyYXRlL2dsb2JhbC97dmVuZG9yfS97bW9udGh9EooBChRTZXRQYXllckV4Y2hhbmdlUmF0ZRIvLmJsdWVhcGkuYmlsbGluZy52MS5TZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKYLT5JMCIzoBKiIeL3YxL2V4Y2hhbmdlcmF0ZS9wYXllci97bW9udGh9Ep8BChtTZXRCaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSNi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIwgtPkkwIqOgEqIiUvdjEvZXhjaGFuZ2VyYXRlL2JpbGxpbmdncm91cC97bW9udGh9EnwKEExpc3RBY2Nlc3NHcm91cHMSKy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiGILT5JMCEhIQL3YxL2FjY2Vzc2dyb3VwczABEn8KEUNyZWF0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFjY2Vzc0dyb3VwUmVxdWVzdBofLmJsdWVhcGkuYXBpLnJpcHBsZS5BY2Nlc3NHcm91cCIbgtPkkwIVOgEqIhAvdjEvYWNjZXNzZ3JvdXBzEoQBChFVcGRhdGVBY2Nlc3NHcm91cBIsLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiIILT5JMCGjoBKhoVL3YxL2FjY2Vzc2dyb3Vwcy97aWR9EngKEURlbGV0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIdgtPkkwIXKhUvdjEvYWNjZXNzZ3JvdXBzL3tpZH0SnwEKFExpc3RBYmNCaWxsaW5nR3JvdXBzEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5BYmNCaWxsaW5nR3JvdXAiL4LT5JMCKRInL3YxL2JpbGxpbmdncm91cHMvYmlsbGluZ2NvbmR1Y3Rvci97aWR9MAEStgEKG0xpc3RBYmNCaWxsaW5nR3JvdXBBY2NvdW50cxI2LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Gh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkFiY0FjY291bnQiPYLT5JMCNxI1L3YxL2JpbGxpbmdncm91cHMvYmlsbGluZ2NvbmR1Y3Rvci97cGF5ZXJJZH0vYWNjb3VudHMwARKcAQoWUmVhZEludm9pY2VBZGp1c3RtZW50cxIxLmJsdWVhcGkuYmlsbGluZy52MS5SZWFkSW52b2ljZUFkanVzdG1lbnRzUmVxdWVzdBocLmJsdWVhcGkuYXBpLndhdmUuQWRqdXN0bWVudCIvgtPkkwIpOgEqIiQvdjEve3ZlbmRvcn0vaW52b2ljZWFkanVzdG1lbnRzOnJlYWQwARKjAQoVUmVhZEFkanVzdG1lbnRFbnRyaWVzEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRBZGp1c3RtZW50RW50cmllc1JlcXVlc3QaJi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQWRqdXN0bWVudEVudHJ5Ii6C0+STAig6ASoiIy92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczpyZWFkMAESmAEKEkdldEFkanVzdG1lbnRFbnRyeRItLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GiYuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFkanVzdG1lbnRFbnRyeSIrgtPkkwIlEiMvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfRKQAQoUQXBwbHlBZGp1c3RtZW50RW50cnkSLy5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii+C0+STAik6ASoiJC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczphcHBseRKWAQoWUmVzdG9yZUFkanVzdG1lbnRFbnRyeRIxLmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqIiYvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXM6cmVzdG9yZRKVAQoUU3BsaXRBZGp1c3RtZW50RW50cnkSLy5ibHVlYXBpLmJpbGxpbmcudjEuU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjSC0+STAi46ASoiKS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L3NwbGl0Ep4BChdBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeRIyLmJsdWVhcGkuYmlsbGluZy52MS5BbGxvY2F0ZUFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiN4LT5JMCMToBKiIsL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0vYWxsb2NhdGUSqwEKG1Jlc3RvcmVTcGxpdEFkanVzdG1lbnRFbnRyeRI2LmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjyC0+STAjY6ASoiMS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L3NwbGl0OnJlc3RvcmUStAEKHlJlc3RvcmVBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeRI5LmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ij+C0+STAjk6ASoiNC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L2FsbG9jYXRlOnJlc3RvcmUSoAEKD0NyZWF0ZUN1c3RvbUZlZRIqLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVDdXN0b21GZWVSZXF1ZXN0GisuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbUZlZVJlc3BvbnNlIjSC0+STAi46ASoiKS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy9jdXN0b21mZWVzEq0BChhMaXN0QWRqdXN0bWVudEVudHJ5SXRlbXMSMy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFkanVzdG1lbnRFbnRyeUl0ZW1zUmVxdWVzdBonLmJsdWVhcGkuYmlsbGluZy52MS5BZGp1c3RtZW50RW50cnlJdGVtIjGC0+STAis6ASoiJi92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cnlpdGVtczpyZWFkMAESlwEKFExpc3RBY2NvdW50UmVzb3VyY2VzEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBY2NvdW50UmVzb3VyY2VzUmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5SZXNvdXJjZUFjY291bnQiJ4LT5JMCIRIfL3YxL3Jlc291cmNlcy9hY2NvdW50cy97dmVuZG9yfTABEosBChNHZXRBZGp1c3RtZW50Q29uZmlnEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFkanVzdG1lbnRDb25maWdSZXF1ZXN0Gh0uYmx1ZWFwaS5hcGkuQWRqdXN0bWVudENvbmZpZyIlgtPkkwIfEh0vdjEvYWRqdXN0bWVudGNvbmZpZy97dmVuZG9yfRKUAQoWQ3JlYXRlQWRqdXN0bWVudENvbmZpZxIxLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBodLmJsdWVhcGkuYXBpLkFkanVzdG1lbnRDb25maWciKILT5JMCIjoBKiIdL3YxL2FkanVzdG1lbnRjb25maWcve3ZlbmRvcn0SlAEKFlVwZGF0ZUFkanVzdG1lbnRDb25maWcSMS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QaHS5ibHVlYXBpLmFwaS5BZGp1c3RtZW50Q29uZmlnIiiC0+STAiI6ASoaHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EooBChZEZWxldGVBZGp1c3RtZW50Q29uZmlnEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiWC0+STAh8qHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EpUBChJSZWFkVW50YWdnZWRHcm91cHMSLS5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZFVudGFnZ2VkR3JvdXBzUmVxdWVzdBohLmJsdWVhcGkuYXBpLnJpcHBsZS5VbnRhZ2dlZEdyb3VwIiuC0+STAiU6ASoiIC92MS97dmVuZG9yfS91bnRhZ2dlZGdyb3VwczpyZWFkMAESuAEKHVJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiLYLT5JMCJzoBKiIiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXM6cmVhZDABEq8BChtHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USNi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiKoLT5JMCJBIiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRKzAQoeQ3JlYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlIiiC0+STAiI6ASoiHS92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzErgBCh5VcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USOS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiLYLT5JMCJzoBKhoiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRKfAQoeRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJCoiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRL7AQonR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEkIuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QaQy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVzcG9uc2UiRYLT5JMCPxI9L3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMvYmlsbGluZ2dyb3VwL3tncm91cElkfS97dmVuZG9yfTABEs8BCidTZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASQi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJIgtPkkwJCOgEqIj0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9EtIBCipEZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASRS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJFgtPkkwI/Kj0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9El4KB0dldFRhZ3MSIi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0VGFnc1JlcXVlc3QaGy5ibHVlYXBpLmJpbGxpbmcudjEuVGFnRGF0YSIQgtPkkwIKEggvdjEvdGFnczABEn4KEUNyZWF0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbUZpZWxkUmVxdWVzdBofLmJsdWVhcGkuYmlsbGluZy52MS5DdXN0b21GaWVsZCIagtPkkwIUOgEqIg8vdjEvY3VzdG9tZmllbGQSgQEKD0xpc3RDdXN0b21GaWVsZBIqLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0Q3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIh+C0+STAhk6ASoiFC92MS9jdXN0b21maWVsZDpyZWFkMAESlAEKGkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIngtPkkwIhOgEqIhwvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkEr4BChtMaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBo3LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXNwb25zZSIsgtPkkwImOgEqIiEvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkOnJlYWQwARKDAQoVQWRkVGFnc1RvQmlsbGluZ0dyb3VwEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZFRhZ3NUb0JpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIILT5JMCGjoBKiIVL3YxL2JpbGxpbmdncm91cC90YWdzEq8BCh9VcGRhdGVOb25UYWdHcm91cFRvQmlsbGluZ0dyb3VwEjouYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZU5vblRhZ0dyb3VwVG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjiC0+STAjI6ASoiLS92MS9iaWxsaW5nZ3JvdXAve2lkfS97dmVuZG9yfS91bnRhZ2dlZGdyb3VwcxKxAQodRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSOC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ij6C0+STAjgqNi92MS9iaWxsaW5nZ3JvdXAvY3VzdG9tZmllbGQve2dyb3VwSWR9L3tjdXN0b21GaWVsZElkfRKDAQoRVXBkYXRlQ3VzdG9tRmllbGQSLC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIh+C0+STAhk6ASoaFC92MS9jdXN0b21maWVsZC97aWR9EncKEURlbGV0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIcgtPkkwIWKhQvdjEvY3VzdG9tZmllbGQve2lkfRJyChBDcmVhdGVGcmVlRm9ybWF0EisuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUZyZWVGb3JtYXRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IhmC0+STAhM6ASoiDi92MS9mcmVlZm9ybWF0EnkKEERlbGV0ZUZyZWVGb3JtYXQSKy5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRnJlZUZvcm1hdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIILT5JMCGioYL3YxL2ZyZWVmb3JtYXQve2dyb3VwSWR9EogBCg1HZXRGcmVlRm9ybWF0EiguYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEZyZWVGb3JtYXRSZXF1ZXN0GikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEZyZWVGb3JtYXRSZXNwb25zZSIggtPkkwIaEhgvdjEvZnJlZWZvcm1hdC97Z3JvdXBJZH0wARKiAQoUR2V0VGFnc0FkZGluZ1NldHRpbmcSLy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0VGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0GiUuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3NBZGRpbmdTZXR0aW5nIjCC0+STAioSKC92MS97dmVuZG9yfS90YWdzYWRkaW5nc2V0dGluZy97Z3JvdXBJZH0wARKaAQoXVXBkYXRlVGFnc0FkZGluZ1NldHRpbmcSMi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlVGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjOC0+STAi06ASoaKC92MS97dmVuZG9yfS90YWdzYWRkaW5nc2V0dGluZy97Z3JvdXBJZH0SoQEKFUV4cG9ydEJpbGxpbmdHcm91cENzdhIwLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXF1ZXN0GjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEJpbGxpbmdHcm91cENzdlJlc3BvbnNlIiOC0+STAh0SGy92MS9leHBvcnRjc3YvYmlsbGluZy1ncm91cBKpAQoXRXhwb3J0SW52b2ljZVNldHRpbmdDc3YSMi5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVzcG9uc2UiJYLT5JMCHxIdL3YxL2V4cG9ydGNzdi9pbnZvaWNlLXNldHRpbmcSpwEKIlVwZGF0ZUJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SPS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKhofL3YxL2JpbGxpbmdncm91cC97aWR9OmJhc2ljSW5mbxKiAQoeVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiLYLT5JMCJzoBKhoiL3YxL2JpbGxpbmdncm91cC97aWR9OmN1c3RvbUZpZWxkcxKcAQocVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdBI3LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBGcmVlRm9ybWF0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIrgtPkkwIlOgEqGiAvdjEvYmlsbGluZ2dyb3VwL3tpZH06ZnJlZUZvcm1hdBKlAQohVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cExpbmtlZFJlc291cmNlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKhofL3YxL2JpbGxpbmdncm91cC97aWR9OnJlc291cmNlcxKrAQohVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKholL3YxL2JpbGxpbmdncm91cC97aWR9Omludm9pY2VTZXR0aW5ncxKrAQohVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cFJlc2VsbGVyQ2hhcmdlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKholL3YxL2JpbGxpbmdncm91cC97aWR9OnJlc2VsbGVyQ2hhcmdlcxKxAQojVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXMSPi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjKC0+STAiw6ASoaJy92MS9iaWxsaW5nZ3JvdXAve2lkfTphZGRpdGlvbmFsQ2hhcmdlcxLUAQohR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QaPS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2JpbGxpbmdncm91cC97aWR9L3t2ZW5kb3J9L3N1cHBvcnRwbGFuErYBCiRVcGRhdGVCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW4SPy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI1gtPkkwIvOgEqGiovdjEvYmlsbGluZ2dyb3VwL3tpZH0ve3ZlbmRvcn0vc3VwcG9ydHBsYW4SgQEKEkNyZWF0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiSC0+STAh46ASoiGS92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQSkgEKElVwZGF0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjWC0+STAi86ASoaKi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQve2Fubm91bmNlbWVudElkfRKcAQoZVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1cxI0LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnRzU3RhdHVzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqMiYvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy9idWxrL3N0YXR1cxKgAQoWVXBkYXRlQW5ub3VuY2VtZW50RGF0ZRIxLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnREYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI7gtPkkwI1OgEqMjAvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97YW5ub3VuY2VtZW50SWR9L2RhdGUSjwEKEkRlbGV0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjKC0+STAiwqKi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQve2Fubm91bmNlbWVudElkfRKgAQoQR2V0QW5ub3VuY2VtZW50cxIrLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBbm5vdW5jZW1lbnRzUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5Bbm5vdW5jZW1lbnQiO4LT5JMCNRIzL2JpbGxpbmcvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97YW5ub3VuY2VtZW50SWR9MAESzgEKHEdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHMSNy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1JlcXVlc3QaOC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1Jlc3BvbnNlIjmC0+STAjMSMS92MS9iaWxsaW5nZ3JvdXAvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97Z3JvdXBJZH0wARJmCgpHZXRDcmVkaXRzEiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENyZWRpdHNSZXF1ZXN0GhouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWRpdCITgtPkkwINEgsvdjEvY3JlZGl0czABEnYKDkdldENzdlNldHRpbmdzEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENzdlNldHRpbmdzUmVxdWVzdBoeLmJsdWVhcGkuYmlsbGluZy52MS5Dc3ZTZXR0aW5nIheC0+STAhESDy92MS9jc3ZzZXR0aW5nczABEqkBChdDcmVhdGVDaGlsZEJpbGxpbmdHcm91cBIyLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QaMy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbhKqAQoUR2V0Q2hpbGRCaWxsaW5nR3JvdXASLy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0GjAuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiL4LT5JMCKRInL3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9EqABChZSZWFkQ2hpbGRCaWxsaW5nR3JvdXBzEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRDaGlsZEJpbGxpbmdHcm91cHNSZXF1ZXN0GiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwIiqC0+STAiQ6ASoiHy92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuOnJlYWQwARK2AQoXVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXASMi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiMoLT5JMCLDoBKhonL3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9ErMBChdEZWxldGVDaGlsZEJpbGxpbmdHcm91cBIyLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QaMy5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIvgtPkkwIpKicvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbi97aW50ZXJuYWxJZH0S8wEKJlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEkEuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVxdWVzdBpCLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1Jlc3BvbnNlIkKC0+STAjw6ASoaNy92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuL3tpbnRlcm5hbElkfS9pbnZvaWNlU2V0dGluZ3MS0gEKK1NldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiQ4LT5JMCPToBKiI4L3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9L3NlcnZpY2VEaXNjb3VudHMS7QEKMlNldENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEk0uYmx1ZWFwaS5iaWxsaW5nLnYxLlNldENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJQgtPkkwJKOgEqIkUvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbi97aW50ZXJuYWxJZH0vc2VydmljZURpc2NvdW50cy9hY2NvdW50czpzZXQS5QEKLFNldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEkcuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJUgtPkkwJOOgEqIkkvdjEve3ZlbmRvcn0vYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbi97aW50ZXJuYWxJZH0vY3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEpYCCixHZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRJHLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaSC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXNwb25zZSJRgtPkkwJLEkkvdjEve3ZlbmRvcn0vYmlsbGluZ2dyb3Vwcy9jaGlsZHJlbi97aW50ZXJuYWxJZH0vY3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlMAESgAIKK0dldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIkCC0+STAjoSOC92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkcmVuL3tpbnRlcm5hbElkfS9zZXJ2aWNlRGlzY291bnRzEosCCjNSZWFkQ2hpbGRCaWxsaW5nR3JvdXBBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSTi5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMiToLT5JMCSBJGL3YxL2JpbGxpbmdncm91cHMvY2hpbGRyZW4ve2ludGVybmFsSWR9L3NlcnZpY2VEaXNjb3VudHMvYWNjb3VudHM6cmVhZDABEocBChZCdWxrQ3JlYXRlQmlsbGluZ0dyb3VwEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0GhEucHJvdG9zLk9wZXJhdGlvbiIngtPkkwIhOgEqIhwvdjEvYmlsbGluZ2dyb3VwczpidWxrQ3JlYXRlEr8BChlDcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5EjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0GjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZSI1gtPkkwIvOgEqIiovdjEvYmlsbGluZ2dyb3Vwcy9leGNsdWRlLXNlcnZpY2Utc2V0dGluZ3MSvwEKGVVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnkSNC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QaNS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlIjWC0+STAi86ASoaKi92MS9iaWxsaW5nZ3JvdXBzL2V4Y2x1ZGUtc2VydmljZS1zZXR0aW5ncxK8AQoZRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeRI0LmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVFeGNsdWRlU2VydmljZUVudHJ5UmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVFeGNsdWRlU2VydmljZUVudHJ5UmVzcG9uc2UiMoLT5JMCLCoqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzEqoBChNMaXN0RXhjbHVkZVNlcnZpY2VzEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RFeGNsdWRlU2VydmljZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RFeGNsdWRlU2VydmljZXNSZXNwb25zZSIygtPkkwIsEiovdjEvYmlsbGluZ2dyb3Vwcy9leGNsdWRlLXNlcnZpY2Utc2V0dGluZ3MSgAEKDExpc3RTZXJ2aWNlcxInLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0U2VydmljZXNSZXF1ZXN0GiguYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RTZXJ2aWNlc1Jlc3BvbnNlIh2C0+STAhcSFS92MS97dmVuZG9yfS9zZXJ2aWNlcxJ+Cg9CdWxrTGlua0FjY291bnQSKi5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0xpbmtBY2NvdW50UmVxdWVzdBoRLnByb3Rvcy5PcGVyYXRpb24iLILT5JMCJjoBKiIhL3YxL2JpbGxpbmdncm91cHM6YnVsa0xpbmtBY2NvdW50En4KE0J1bGtUYWdCaWxsaW5nR3JvdXASLi5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa1RhZ0JpbGxpbmdHcm91cFJlcXVlc3QaES5wcm90b3MuT3BlcmF0aW9uIiSC0+STAh46ASoiGS92MS9iaWxsaW5nZ3JvdXBzOmJ1bGtUYWcanQGSQZkBEkYoQkVUQSkgQmlsbGluZyBBUEkuIEJhc2UgVVJMOiBodHRwczovL2FwaS5hbHBoYXVzLmNsb3VkL20vYmx1ZS9iaWxsaW5nGk8KElNlcnZpY2UgZGVmaW5pdGlvbhI5aHR0cHM6Ly9naXRodWIuY29tL2FscGhhdXNsYWJzL2JsdWVhcGkvdHJlZS9tYWluL2JpbGxpbmcvQlEKGWNsb3VkLmFscGhhdXMuYXBpLmJpbGxpbmdCDEJpbGxpbmdQcm90b1omZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL2JpbGxpbmdiBnByb3RvMw", [file_api_account, file_api_invoice, file_api_costtag, file_api_ripple_accessgroup, file_api_ripple_billinggroup, file_api_ripple_reseller, file_api_ripple_yearmonth, file_api_ripple_rounding, file_api_ripple_invoicelayout, file_api_ripple_duedate, file_api_ripple_exchangerate, file_api_ripple_untaggedgroup, file_api_ripple_customizedbillingservice, file_api_ripple_v1_invoiceservicediscounts, file_api_ripple_v1_accountsupportplan, file_api_ripple_v1_adjustmententry, file_api_adjustment, file_api_wave_adjustment, file_protos_operation, file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_empty, file_protoc_gen_openapiv2_options_annotations, file_google_protobuf_field_mask]);
|
|
57
57
|
|
|
58
58
|
/**
|
|
59
59
|
* @generated from message blueapi.billing.v1.BillingGroup
|
|
@@ -3544,6 +3544,241 @@ export type RestoreAllocateAdjustmentEntryRequest = Message<"blueapi.billing.v1.
|
|
|
3544
3544
|
export const RestoreAllocateAdjustmentEntryRequestSchema: GenMessage<RestoreAllocateAdjustmentEntryRequest> = /*@__PURE__*/
|
|
3545
3545
|
messageDesc(file_billing_v1_billing, 85);
|
|
3546
3546
|
|
|
3547
|
+
/**
|
|
3548
|
+
* Request message for the Billing.CreateCustomFee rpc.
|
|
3549
|
+
*
|
|
3550
|
+
* @generated from message blueapi.billing.v1.CreateCustomFeeRequest
|
|
3551
|
+
*/
|
|
3552
|
+
export type CreateCustomFeeRequest = Message<"blueapi.billing.v1.CreateCustomFeeRequest"> & {
|
|
3553
|
+
/**
|
|
3554
|
+
* Required. At the moment, only `aws` is supported.
|
|
3555
|
+
*
|
|
3556
|
+
* @generated from field: string vendor = 1;
|
|
3557
|
+
*/
|
|
3558
|
+
vendor: string;
|
|
3559
|
+
|
|
3560
|
+
/**
|
|
3561
|
+
* Required. The billing month. Format is `yyyymm`.
|
|
3562
|
+
*
|
|
3563
|
+
* @generated from field: string month = 2;
|
|
3564
|
+
*/
|
|
3565
|
+
month: string;
|
|
3566
|
+
|
|
3567
|
+
/**
|
|
3568
|
+
* Required. The fee entries to create.
|
|
3569
|
+
*
|
|
3570
|
+
* @generated from field: repeated blueapi.billing.v1.CustomFeeEntry entries = 3;
|
|
3571
|
+
*/
|
|
3572
|
+
entries: CustomFeeEntry[];
|
|
3573
|
+
};
|
|
3574
|
+
|
|
3575
|
+
/**
|
|
3576
|
+
* Describes the message blueapi.billing.v1.CreateCustomFeeRequest.
|
|
3577
|
+
* Use `create(CreateCustomFeeRequestSchema)` to create a new message.
|
|
3578
|
+
*/
|
|
3579
|
+
export const CreateCustomFeeRequestSchema: GenMessage<CreateCustomFeeRequest> = /*@__PURE__*/
|
|
3580
|
+
messageDesc(file_billing_v1_billing, 86);
|
|
3581
|
+
|
|
3582
|
+
/**
|
|
3583
|
+
* A single custom fee entry to write to the adjustments table.
|
|
3584
|
+
*
|
|
3585
|
+
* @generated from message blueapi.billing.v1.CustomFeeEntry
|
|
3586
|
+
*/
|
|
3587
|
+
export type CustomFeeEntry = Message<"blueapi.billing.v1.CustomFeeEntry"> & {
|
|
3588
|
+
/**
|
|
3589
|
+
* Required. The linked account ID (customer_id in the fee table sort key).
|
|
3590
|
+
*
|
|
3591
|
+
* @generated from field: string accountId = 1;
|
|
3592
|
+
*/
|
|
3593
|
+
accountId: string;
|
|
3594
|
+
|
|
3595
|
+
/**
|
|
3596
|
+
* Required. The payer account ID (account_id in the fee table sort key).
|
|
3597
|
+
*
|
|
3598
|
+
* @generated from field: string payerAccountId = 2;
|
|
3599
|
+
*/
|
|
3600
|
+
payerAccountId: string;
|
|
3601
|
+
|
|
3602
|
+
/**
|
|
3603
|
+
* Required. The fee type for the sort key type segment.
|
|
3604
|
+
* Determines the main Type column value in Adjusting Entries (e.g., "Fee").
|
|
3605
|
+
*
|
|
3606
|
+
* @generated from field: string feeType = 3;
|
|
3607
|
+
*/
|
|
3608
|
+
feeType: string;
|
|
3609
|
+
|
|
3610
|
+
/**
|
|
3611
|
+
* Required. The entry type stored in the mobingi_type column.
|
|
3612
|
+
* Used for filtering and categorization (e.g., "COMMITMENT" for Guaranteed Commitments, "CUSTOM" for Custom Fees).
|
|
3613
|
+
* Accepted values: UPFRONT, SUPPORT, REGISTRAR, OTHERS, CREDIT, REFUND, COMMITMENT, CUSTOM.
|
|
3614
|
+
*
|
|
3615
|
+
* @generated from field: string mobingiType = 4;
|
|
3616
|
+
*/
|
|
3617
|
+
mobingiType: string;
|
|
3618
|
+
|
|
3619
|
+
/**
|
|
3620
|
+
* Required. The fee amount (cost). Positive for charges, negative for rebates.
|
|
3621
|
+
*
|
|
3622
|
+
* @generated from field: double amount = 5;
|
|
3623
|
+
*/
|
|
3624
|
+
amount: number;
|
|
3625
|
+
|
|
3626
|
+
/**
|
|
3627
|
+
* Required. The currency code (e.g., "USD").
|
|
3628
|
+
*
|
|
3629
|
+
* @generated from field: string currencyCode = 6;
|
|
3630
|
+
*/
|
|
3631
|
+
currencyCode: string;
|
|
3632
|
+
|
|
3633
|
+
/**
|
|
3634
|
+
* Required. Human-readable description of the fee.
|
|
3635
|
+
* For commitment entries: e.g., "Guaranteed Compute Savings Plan - Premium".
|
|
3636
|
+
*
|
|
3637
|
+
* @generated from field: string description = 7;
|
|
3638
|
+
*/
|
|
3639
|
+
description: string;
|
|
3640
|
+
|
|
3641
|
+
/**
|
|
3642
|
+
* Optional. The product/service code (e.g., "aws/savingsplan").
|
|
3643
|
+
*
|
|
3644
|
+
* @generated from field: string productCode = 8;
|
|
3645
|
+
*/
|
|
3646
|
+
productCode: string;
|
|
3647
|
+
|
|
3648
|
+
/**
|
|
3649
|
+
* Optional. The product/service display name (e.g., "Compute Savings Plan").
|
|
3650
|
+
*
|
|
3651
|
+
* @generated from field: string productName = 9;
|
|
3652
|
+
*/
|
|
3653
|
+
productName: string;
|
|
3654
|
+
|
|
3655
|
+
/**
|
|
3656
|
+
* Optional. The usage start time in RFC 3339 format.
|
|
3657
|
+
*
|
|
3658
|
+
* @generated from field: string usageStart = 10;
|
|
3659
|
+
*/
|
|
3660
|
+
usageStart: string;
|
|
3661
|
+
|
|
3662
|
+
/**
|
|
3663
|
+
* Optional. The time interval in ISO 8601 interval format.
|
|
3664
|
+
*
|
|
3665
|
+
* @generated from field: string timeInterval = 11;
|
|
3666
|
+
*/
|
|
3667
|
+
timeInterval: string;
|
|
3668
|
+
|
|
3669
|
+
/**
|
|
3670
|
+
* Optional. Additional metadata as key-value pairs.
|
|
3671
|
+
* For Guaranteed Commitment entries, may contain: commitment_id, invoice_id,
|
|
3672
|
+
* contract_term, fee_rate, monthly_commitment, monthly_savings, net_savings,
|
|
3673
|
+
* utilization, billing_account_id, commitment_display_name,
|
|
3674
|
+
* commitment_leased_name, provider, commitment_type.
|
|
3675
|
+
*
|
|
3676
|
+
* @generated from field: map<string, string> meta = 12;
|
|
3677
|
+
*/
|
|
3678
|
+
meta: { [key: string]: string };
|
|
3679
|
+
};
|
|
3680
|
+
|
|
3681
|
+
/**
|
|
3682
|
+
* Describes the message blueapi.billing.v1.CustomFeeEntry.
|
|
3683
|
+
* Use `create(CustomFeeEntrySchema)` to create a new message.
|
|
3684
|
+
*/
|
|
3685
|
+
export const CustomFeeEntrySchema: GenMessage<CustomFeeEntry> = /*@__PURE__*/
|
|
3686
|
+
messageDesc(file_billing_v1_billing, 87);
|
|
3687
|
+
|
|
3688
|
+
/**
|
|
3689
|
+
* Response message for the Billing.CreateCustomFee rpc.
|
|
3690
|
+
*
|
|
3691
|
+
* @generated from message blueapi.billing.v1.CreateCustomFeeResponse
|
|
3692
|
+
*/
|
|
3693
|
+
export type CreateCustomFeeResponse = Message<"blueapi.billing.v1.CreateCustomFeeResponse"> & {
|
|
3694
|
+
/**
|
|
3695
|
+
* The number of entries successfully created.
|
|
3696
|
+
*
|
|
3697
|
+
* @generated from field: int32 created = 1;
|
|
3698
|
+
*/
|
|
3699
|
+
created: number;
|
|
3700
|
+
};
|
|
3701
|
+
|
|
3702
|
+
/**
|
|
3703
|
+
* Describes the message blueapi.billing.v1.CreateCustomFeeResponse.
|
|
3704
|
+
* Use `create(CreateCustomFeeResponseSchema)` to create a new message.
|
|
3705
|
+
*/
|
|
3706
|
+
export const CreateCustomFeeResponseSchema: GenMessage<CreateCustomFeeResponse> = /*@__PURE__*/
|
|
3707
|
+
messageDesc(file_billing_v1_billing, 88);
|
|
3708
|
+
|
|
3709
|
+
/**
|
|
3710
|
+
* Request message for the Billing.ListAdjustmentEntryItems rpc.
|
|
3711
|
+
*
|
|
3712
|
+
* @generated from message blueapi.billing.v1.ListAdjustmentEntryItemsRequest
|
|
3713
|
+
*/
|
|
3714
|
+
export type ListAdjustmentEntryItemsRequest = Message<"blueapi.billing.v1.ListAdjustmentEntryItemsRequest"> & {
|
|
3715
|
+
/**
|
|
3716
|
+
* Required. At the moment, only `aws` is supported.
|
|
3717
|
+
*
|
|
3718
|
+
* @generated from field: string vendor = 1;
|
|
3719
|
+
*/
|
|
3720
|
+
vendor: string;
|
|
3721
|
+
|
|
3722
|
+
/**
|
|
3723
|
+
* Required. The billing month. Format is `yyyymm`.
|
|
3724
|
+
*
|
|
3725
|
+
* @generated from field: string month = 2;
|
|
3726
|
+
*/
|
|
3727
|
+
month: string;
|
|
3728
|
+
|
|
3729
|
+
/**
|
|
3730
|
+
* Optional. Filter by entry type (mobingi_type column).
|
|
3731
|
+
* If not specified, returns all adjustment entry items.
|
|
3732
|
+
*
|
|
3733
|
+
* @generated from field: string mobingiType = 3;
|
|
3734
|
+
*/
|
|
3735
|
+
mobingiType: string;
|
|
3736
|
+
|
|
3737
|
+
/**
|
|
3738
|
+
* Optional. Filter by apply status.
|
|
3739
|
+
* "applied" returns entries where apply=true, "pending" returns entries where apply=false.
|
|
3740
|
+
* If empty, returns all entries regardless of status.
|
|
3741
|
+
*
|
|
3742
|
+
* @generated from field: string status = 4;
|
|
3743
|
+
*/
|
|
3744
|
+
status: string;
|
|
3745
|
+
};
|
|
3746
|
+
|
|
3747
|
+
/**
|
|
3748
|
+
* Describes the message blueapi.billing.v1.ListAdjustmentEntryItemsRequest.
|
|
3749
|
+
* Use `create(ListAdjustmentEntryItemsRequestSchema)` to create a new message.
|
|
3750
|
+
*/
|
|
3751
|
+
export const ListAdjustmentEntryItemsRequestSchema: GenMessage<ListAdjustmentEntryItemsRequest> = /*@__PURE__*/
|
|
3752
|
+
messageDesc(file_billing_v1_billing, 89);
|
|
3753
|
+
|
|
3754
|
+
/**
|
|
3755
|
+
* An adjustment entry item with additional metadata for the Guaranteed Commitment Entries UI.
|
|
3756
|
+
*
|
|
3757
|
+
* @generated from message blueapi.billing.v1.AdjustmentEntryItem
|
|
3758
|
+
*/
|
|
3759
|
+
export type AdjustmentEntryItem = Message<"blueapi.billing.v1.AdjustmentEntryItem"> & {
|
|
3760
|
+
/**
|
|
3761
|
+
* The standard adjustment entry fields (id, account info, entry info, settings).
|
|
3762
|
+
*
|
|
3763
|
+
* @generated from field: blueapi.api.ripple.v1.AdjustmentEntry entry = 1;
|
|
3764
|
+
*/
|
|
3765
|
+
entry?: AdjustmentEntry;
|
|
3766
|
+
|
|
3767
|
+
/**
|
|
3768
|
+
* Additional metadata as key-value pairs.
|
|
3769
|
+
*
|
|
3770
|
+
* @generated from field: map<string, string> meta = 2;
|
|
3771
|
+
*/
|
|
3772
|
+
meta: { [key: string]: string };
|
|
3773
|
+
};
|
|
3774
|
+
|
|
3775
|
+
/**
|
|
3776
|
+
* Describes the message blueapi.billing.v1.AdjustmentEntryItem.
|
|
3777
|
+
* Use `create(AdjustmentEntryItemSchema)` to create a new message.
|
|
3778
|
+
*/
|
|
3779
|
+
export const AdjustmentEntryItemSchema: GenMessage<AdjustmentEntryItem> = /*@__PURE__*/
|
|
3780
|
+
messageDesc(file_billing_v1_billing, 90);
|
|
3781
|
+
|
|
3547
3782
|
/**
|
|
3548
3783
|
* Request message for the Billing.ListAccountResources rpc.
|
|
3549
3784
|
*
|
|
@@ -3570,7 +3805,7 @@ export type ListAccountResourcesRequest = Message<"blueapi.billing.v1.ListAccoun
|
|
|
3570
3805
|
* Use `create(ListAccountResourcesRequestSchema)` to create a new message.
|
|
3571
3806
|
*/
|
|
3572
3807
|
export const ListAccountResourcesRequestSchema: GenMessage<ListAccountResourcesRequest> = /*@__PURE__*/
|
|
3573
|
-
messageDesc(file_billing_v1_billing,
|
|
3808
|
+
messageDesc(file_billing_v1_billing, 91);
|
|
3574
3809
|
|
|
3575
3810
|
/**
|
|
3576
3811
|
* @generated from message blueapi.billing.v1.ResourceAccount
|
|
@@ -3597,7 +3832,7 @@ export type ResourceAccount = Message<"blueapi.billing.v1.ResourceAccount"> & {
|
|
|
3597
3832
|
* Use `create(ResourceAccountSchema)` to create a new message.
|
|
3598
3833
|
*/
|
|
3599
3834
|
export const ResourceAccountSchema: GenMessage<ResourceAccount> = /*@__PURE__*/
|
|
3600
|
-
messageDesc(file_billing_v1_billing,
|
|
3835
|
+
messageDesc(file_billing_v1_billing, 92);
|
|
3601
3836
|
|
|
3602
3837
|
/**
|
|
3603
3838
|
* Request message for the Billing.GetAdjustmentConfig rpc.
|
|
@@ -3618,7 +3853,7 @@ export type GetAdjustmentConfigRequest = Message<"blueapi.billing.v1.GetAdjustme
|
|
|
3618
3853
|
* Use `create(GetAdjustmentConfigRequestSchema)` to create a new message.
|
|
3619
3854
|
*/
|
|
3620
3855
|
export const GetAdjustmentConfigRequestSchema: GenMessage<GetAdjustmentConfigRequest> = /*@__PURE__*/
|
|
3621
|
-
messageDesc(file_billing_v1_billing,
|
|
3856
|
+
messageDesc(file_billing_v1_billing, 93);
|
|
3622
3857
|
|
|
3623
3858
|
/**
|
|
3624
3859
|
* Request message for the Billing.CreateAdjustmentConfig rpc.
|
|
@@ -3654,7 +3889,7 @@ export type CreateAdjustmentConfigRequest = Message<"blueapi.billing.v1.CreateAd
|
|
|
3654
3889
|
* Use `create(CreateAdjustmentConfigRequestSchema)` to create a new message.
|
|
3655
3890
|
*/
|
|
3656
3891
|
export const CreateAdjustmentConfigRequestSchema: GenMessage<CreateAdjustmentConfigRequest> = /*@__PURE__*/
|
|
3657
|
-
messageDesc(file_billing_v1_billing,
|
|
3892
|
+
messageDesc(file_billing_v1_billing, 94);
|
|
3658
3893
|
|
|
3659
3894
|
/**
|
|
3660
3895
|
* Request message for the Billing.UpdateAdjustmentConfig rpc.
|
|
@@ -3689,7 +3924,7 @@ export type UpdateAdjustmentConfigRequest = Message<"blueapi.billing.v1.UpdateAd
|
|
|
3689
3924
|
* Use `create(UpdateAdjustmentConfigRequestSchema)` to create a new message.
|
|
3690
3925
|
*/
|
|
3691
3926
|
export const UpdateAdjustmentConfigRequestSchema: GenMessage<UpdateAdjustmentConfigRequest> = /*@__PURE__*/
|
|
3692
|
-
messageDesc(file_billing_v1_billing,
|
|
3927
|
+
messageDesc(file_billing_v1_billing, 95);
|
|
3693
3928
|
|
|
3694
3929
|
/**
|
|
3695
3930
|
* Request message for the Billing.DeleteAdjustmentConfig rpc.
|
|
@@ -3710,7 +3945,7 @@ export type DeleteAdjustmentConfigRequest = Message<"blueapi.billing.v1.DeleteAd
|
|
|
3710
3945
|
* Use `create(DeleteAdjustmentConfigRequestSchema)` to create a new message.
|
|
3711
3946
|
*/
|
|
3712
3947
|
export const DeleteAdjustmentConfigRequestSchema: GenMessage<DeleteAdjustmentConfigRequest> = /*@__PURE__*/
|
|
3713
|
-
messageDesc(file_billing_v1_billing,
|
|
3948
|
+
messageDesc(file_billing_v1_billing, 96);
|
|
3714
3949
|
|
|
3715
3950
|
/**
|
|
3716
3951
|
* Request message for the Billing.ReadUntaggedGroups rpc.
|
|
@@ -3740,7 +3975,7 @@ export type ReadUntaggedGroupsRequest = Message<"blueapi.billing.v1.ReadUntagged
|
|
|
3740
3975
|
* Use `create(ReadUntaggedGroupsRequestSchema)` to create a new message.
|
|
3741
3976
|
*/
|
|
3742
3977
|
export const ReadUntaggedGroupsRequestSchema: GenMessage<ReadUntaggedGroupsRequest> = /*@__PURE__*/
|
|
3743
|
-
messageDesc(file_billing_v1_billing,
|
|
3978
|
+
messageDesc(file_billing_v1_billing, 97);
|
|
3744
3979
|
|
|
3745
3980
|
/**
|
|
3746
3981
|
* Request message for the Billing.ReadCustomizedBillingServices rpc.
|
|
@@ -3763,7 +3998,7 @@ export type ReadCustomizedBillingServicesRequest = Message<"blueapi.billing.v1.R
|
|
|
3763
3998
|
* Use `create(ReadCustomizedBillingServicesRequestSchema)` to create a new message.
|
|
3764
3999
|
*/
|
|
3765
4000
|
export const ReadCustomizedBillingServicesRequestSchema: GenMessage<ReadCustomizedBillingServicesRequest> = /*@__PURE__*/
|
|
3766
|
-
messageDesc(file_billing_v1_billing,
|
|
4001
|
+
messageDesc(file_billing_v1_billing, 98);
|
|
3767
4002
|
|
|
3768
4003
|
/**
|
|
3769
4004
|
* Request message for the Billing.GetCustomizedBillingService rpc.
|
|
@@ -3793,7 +4028,7 @@ export type GetCustomizedBillingServiceRequest = Message<"blueapi.billing.v1.Get
|
|
|
3793
4028
|
* Use `create(GetCustomizedBillingServiceRequestSchema)` to create a new message.
|
|
3794
4029
|
*/
|
|
3795
4030
|
export const GetCustomizedBillingServiceRequestSchema: GenMessage<GetCustomizedBillingServiceRequest> = /*@__PURE__*/
|
|
3796
|
-
messageDesc(file_billing_v1_billing,
|
|
4031
|
+
messageDesc(file_billing_v1_billing, 99);
|
|
3797
4032
|
|
|
3798
4033
|
/**
|
|
3799
4034
|
* Request message for the Billing.CreateCustomizedBillingService rpc.
|
|
@@ -3828,7 +4063,7 @@ export type CreateCustomizedBillingServiceRequest = Message<"blueapi.billing.v1.
|
|
|
3828
4063
|
* Use `create(CreateCustomizedBillingServiceRequestSchema)` to create a new message.
|
|
3829
4064
|
*/
|
|
3830
4065
|
export const CreateCustomizedBillingServiceRequestSchema: GenMessage<CreateCustomizedBillingServiceRequest> = /*@__PURE__*/
|
|
3831
|
-
messageDesc(file_billing_v1_billing,
|
|
4066
|
+
messageDesc(file_billing_v1_billing, 100);
|
|
3832
4067
|
|
|
3833
4068
|
/**
|
|
3834
4069
|
* Request message for the Billing.UpdateCustomizedBillingService rpc.
|
|
@@ -3864,7 +4099,7 @@ export type UpdateCustomizedBillingServiceRequest = Message<"blueapi.billing.v1.
|
|
|
3864
4099
|
* Use `create(UpdateCustomizedBillingServiceRequestSchema)` to create a new message.
|
|
3865
4100
|
*/
|
|
3866
4101
|
export const UpdateCustomizedBillingServiceRequestSchema: GenMessage<UpdateCustomizedBillingServiceRequest> = /*@__PURE__*/
|
|
3867
|
-
messageDesc(file_billing_v1_billing,
|
|
4102
|
+
messageDesc(file_billing_v1_billing, 101);
|
|
3868
4103
|
|
|
3869
4104
|
/**
|
|
3870
4105
|
* Request message for the Billing.DeleteCustomizedBillingService rpc.
|
|
@@ -3885,7 +4120,7 @@ export type DeleteCustomizedBillingServiceRequest = Message<"blueapi.billing.v1.
|
|
|
3885
4120
|
* Use `create(DeleteCustomizedBillingServiceRequestSchema)` to create a new message.
|
|
3886
4121
|
*/
|
|
3887
4122
|
export const DeleteCustomizedBillingServiceRequestSchema: GenMessage<DeleteCustomizedBillingServiceRequest> = /*@__PURE__*/
|
|
3888
|
-
messageDesc(file_billing_v1_billing,
|
|
4123
|
+
messageDesc(file_billing_v1_billing, 102);
|
|
3889
4124
|
|
|
3890
4125
|
/**
|
|
3891
4126
|
* Request message for the Billing.GetCustomizedBillingServiceBillingGroup rpc.
|
|
@@ -3913,7 +4148,7 @@ export type GetCustomizedBillingServiceBillingGroupRequest = Message<"blueapi.bi
|
|
|
3913
4148
|
* Use `create(GetCustomizedBillingServiceBillingGroupRequestSchema)` to create a new message.
|
|
3914
4149
|
*/
|
|
3915
4150
|
export const GetCustomizedBillingServiceBillingGroupRequestSchema: GenMessage<GetCustomizedBillingServiceBillingGroupRequest> = /*@__PURE__*/
|
|
3916
|
-
messageDesc(file_billing_v1_billing,
|
|
4151
|
+
messageDesc(file_billing_v1_billing, 103);
|
|
3917
4152
|
|
|
3918
4153
|
/**
|
|
3919
4154
|
* Response message for the Billing.GetCustomizedBillingServiceBillingGroup rpc.
|
|
@@ -3957,7 +4192,7 @@ export type GetCustomizedBillingServiceBillingGroupResponse = Message<"blueapi.b
|
|
|
3957
4192
|
* Use `create(GetCustomizedBillingServiceBillingGroupResponseSchema)` to create a new message.
|
|
3958
4193
|
*/
|
|
3959
4194
|
export const GetCustomizedBillingServiceBillingGroupResponseSchema: GenMessage<GetCustomizedBillingServiceBillingGroupResponse> = /*@__PURE__*/
|
|
3960
|
-
messageDesc(file_billing_v1_billing,
|
|
4195
|
+
messageDesc(file_billing_v1_billing, 104);
|
|
3961
4196
|
|
|
3962
4197
|
/**
|
|
3963
4198
|
* Request message for the Billing.SetCustomizedBillingServiceBillingGroup rpc.
|
|
@@ -3992,7 +4227,7 @@ export type SetCustomizedBillingServiceBillingGroupRequest = Message<"blueapi.bi
|
|
|
3992
4227
|
* Use `create(SetCustomizedBillingServiceBillingGroupRequestSchema)` to create a new message.
|
|
3993
4228
|
*/
|
|
3994
4229
|
export const SetCustomizedBillingServiceBillingGroupRequestSchema: GenMessage<SetCustomizedBillingServiceBillingGroupRequest> = /*@__PURE__*/
|
|
3995
|
-
messageDesc(file_billing_v1_billing,
|
|
4230
|
+
messageDesc(file_billing_v1_billing, 105);
|
|
3996
4231
|
|
|
3997
4232
|
/**
|
|
3998
4233
|
* CustomizedBillingServiceBillingSetting
|
|
@@ -4029,7 +4264,7 @@ export type SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServ
|
|
|
4029
4264
|
* Use `create(SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServiceBillingSettingSchema)` to create a new message.
|
|
4030
4265
|
*/
|
|
4031
4266
|
export const SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServiceBillingSettingSchema: GenMessage<SetCustomizedBillingServiceBillingGroupRequest_CustomizedBillingServiceBillingSetting> = /*@__PURE__*/
|
|
4032
|
-
messageDesc(file_billing_v1_billing,
|
|
4267
|
+
messageDesc(file_billing_v1_billing, 105, 0);
|
|
4033
4268
|
|
|
4034
4269
|
/**
|
|
4035
4270
|
* Request message for the Billing.DeleteCustomizedBillingServiceBillingGroup rpc.
|
|
@@ -4057,7 +4292,7 @@ export type DeleteCustomizedBillingServiceBillingGroupRequest = Message<"blueapi
|
|
|
4057
4292
|
* Use `create(DeleteCustomizedBillingServiceBillingGroupRequestSchema)` to create a new message.
|
|
4058
4293
|
*/
|
|
4059
4294
|
export const DeleteCustomizedBillingServiceBillingGroupRequestSchema: GenMessage<DeleteCustomizedBillingServiceBillingGroupRequest> = /*@__PURE__*/
|
|
4060
|
-
messageDesc(file_billing_v1_billing,
|
|
4295
|
+
messageDesc(file_billing_v1_billing, 106);
|
|
4061
4296
|
|
|
4062
4297
|
/**
|
|
4063
4298
|
* Request message for the Billing.CreateInvoiceServiceDiscounts rpc.
|
|
@@ -4092,7 +4327,7 @@ export type CreateInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.C
|
|
|
4092
4327
|
* Use `create(CreateInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
4093
4328
|
*/
|
|
4094
4329
|
export const CreateInvoiceServiceDiscountsRequestSchema: GenMessage<CreateInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
4095
|
-
messageDesc(file_billing_v1_billing,
|
|
4330
|
+
messageDesc(file_billing_v1_billing, 107);
|
|
4096
4331
|
|
|
4097
4332
|
/**
|
|
4098
4333
|
* Request message for the Billing.UpdateInvoiceServiceDiscounts rpc.
|
|
@@ -4128,7 +4363,7 @@ export type UpdateInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.U
|
|
|
4128
4363
|
* Use `create(UpdateInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
4129
4364
|
*/
|
|
4130
4365
|
export const UpdateInvoiceServiceDiscountsRequestSchema: GenMessage<UpdateInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
4131
|
-
messageDesc(file_billing_v1_billing,
|
|
4366
|
+
messageDesc(file_billing_v1_billing, 108);
|
|
4132
4367
|
|
|
4133
4368
|
/**
|
|
4134
4369
|
* Request message for the Billing.DeleteInvoiceServiceDiscounts rpc.
|
|
@@ -4149,7 +4384,7 @@ export type DeleteInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.D
|
|
|
4149
4384
|
* Use `create(DeleteInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
4150
4385
|
*/
|
|
4151
4386
|
export const DeleteInvoiceServiceDiscountsRequestSchema: GenMessage<DeleteInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
4152
|
-
messageDesc(file_billing_v1_billing,
|
|
4387
|
+
messageDesc(file_billing_v1_billing, 109);
|
|
4153
4388
|
|
|
4154
4389
|
/**
|
|
4155
4390
|
* Response for tag request
|
|
@@ -4183,7 +4418,7 @@ export type TagData = Message<"blueapi.billing.v1.TagData"> & {
|
|
|
4183
4418
|
* Use `create(TagDataSchema)` to create a new message.
|
|
4184
4419
|
*/
|
|
4185
4420
|
export const TagDataSchema: GenMessage<TagData> = /*@__PURE__*/
|
|
4186
|
-
messageDesc(file_billing_v1_billing,
|
|
4421
|
+
messageDesc(file_billing_v1_billing, 110);
|
|
4187
4422
|
|
|
4188
4423
|
/**
|
|
4189
4424
|
* @generated from message blueapi.billing.v1.Tags
|
|
@@ -4205,7 +4440,7 @@ export type Tags = Message<"blueapi.billing.v1.Tags"> & {
|
|
|
4205
4440
|
* Use `create(TagsSchema)` to create a new message.
|
|
4206
4441
|
*/
|
|
4207
4442
|
export const TagsSchema: GenMessage<Tags> = /*@__PURE__*/
|
|
4208
|
-
messageDesc(file_billing_v1_billing,
|
|
4443
|
+
messageDesc(file_billing_v1_billing, 111);
|
|
4209
4444
|
|
|
4210
4445
|
/**
|
|
4211
4446
|
* @generated from message blueapi.billing.v1.GetTagsRequest
|
|
@@ -4227,7 +4462,7 @@ export type GetTagsRequest = Message<"blueapi.billing.v1.GetTagsRequest"> & {
|
|
|
4227
4462
|
* Use `create(GetTagsRequestSchema)` to create a new message.
|
|
4228
4463
|
*/
|
|
4229
4464
|
export const GetTagsRequestSchema: GenMessage<GetTagsRequest> = /*@__PURE__*/
|
|
4230
|
-
messageDesc(file_billing_v1_billing,
|
|
4465
|
+
messageDesc(file_billing_v1_billing, 112);
|
|
4231
4466
|
|
|
4232
4467
|
/**
|
|
4233
4468
|
* @generated from message blueapi.billing.v1.CustomField
|
|
@@ -4260,7 +4495,7 @@ export type CustomField = Message<"blueapi.billing.v1.CustomField"> & {
|
|
|
4260
4495
|
* Use `create(CustomFieldSchema)` to create a new message.
|
|
4261
4496
|
*/
|
|
4262
4497
|
export const CustomFieldSchema: GenMessage<CustomField> = /*@__PURE__*/
|
|
4263
|
-
messageDesc(file_billing_v1_billing,
|
|
4498
|
+
messageDesc(file_billing_v1_billing, 113);
|
|
4264
4499
|
|
|
4265
4500
|
/**
|
|
4266
4501
|
* @generated from message blueapi.billing.v1.BillingGroupCustomField
|
|
@@ -4282,7 +4517,7 @@ export type BillingGroupCustomField = Message<"blueapi.billing.v1.BillingGroupCu
|
|
|
4282
4517
|
* Use `create(BillingGroupCustomFieldSchema)` to create a new message.
|
|
4283
4518
|
*/
|
|
4284
4519
|
export const BillingGroupCustomFieldSchema: GenMessage<BillingGroupCustomField> = /*@__PURE__*/
|
|
4285
|
-
messageDesc(file_billing_v1_billing,
|
|
4520
|
+
messageDesc(file_billing_v1_billing, 114);
|
|
4286
4521
|
|
|
4287
4522
|
/**
|
|
4288
4523
|
* @generated from message blueapi.billing.v1.ListBillingGroupCustomFieldRequest
|
|
@@ -4302,7 +4537,7 @@ export type ListBillingGroupCustomFieldRequest = Message<"blueapi.billing.v1.Lis
|
|
|
4302
4537
|
* Use `create(ListBillingGroupCustomFieldRequestSchema)` to create a new message.
|
|
4303
4538
|
*/
|
|
4304
4539
|
export const ListBillingGroupCustomFieldRequestSchema: GenMessage<ListBillingGroupCustomFieldRequest> = /*@__PURE__*/
|
|
4305
|
-
messageDesc(file_billing_v1_billing,
|
|
4540
|
+
messageDesc(file_billing_v1_billing, 115);
|
|
4306
4541
|
|
|
4307
4542
|
/**
|
|
4308
4543
|
* @generated from message blueapi.billing.v1.ListBillingGroupCustomFieldResponse
|
|
@@ -4324,7 +4559,7 @@ export type ListBillingGroupCustomFieldResponse = Message<"blueapi.billing.v1.Li
|
|
|
4324
4559
|
* Use `create(ListBillingGroupCustomFieldResponseSchema)` to create a new message.
|
|
4325
4560
|
*/
|
|
4326
4561
|
export const ListBillingGroupCustomFieldResponseSchema: GenMessage<ListBillingGroupCustomFieldResponse> = /*@__PURE__*/
|
|
4327
|
-
messageDesc(file_billing_v1_billing,
|
|
4562
|
+
messageDesc(file_billing_v1_billing, 116);
|
|
4328
4563
|
|
|
4329
4564
|
/**
|
|
4330
4565
|
* @generated from message blueapi.billing.v1.CreateCustomFieldRequest
|
|
@@ -4346,7 +4581,7 @@ export type CreateCustomFieldRequest = Message<"blueapi.billing.v1.CreateCustomF
|
|
|
4346
4581
|
* Use `create(CreateCustomFieldRequestSchema)` to create a new message.
|
|
4347
4582
|
*/
|
|
4348
4583
|
export const CreateCustomFieldRequestSchema: GenMessage<CreateCustomFieldRequest> = /*@__PURE__*/
|
|
4349
|
-
messageDesc(file_billing_v1_billing,
|
|
4584
|
+
messageDesc(file_billing_v1_billing, 117);
|
|
4350
4585
|
|
|
4351
4586
|
/**
|
|
4352
4587
|
* @generated from message blueapi.billing.v1.UpdateCustomFieldRequest
|
|
@@ -4373,7 +4608,7 @@ export type UpdateCustomFieldRequest = Message<"blueapi.billing.v1.UpdateCustomF
|
|
|
4373
4608
|
* Use `create(UpdateCustomFieldRequestSchema)` to create a new message.
|
|
4374
4609
|
*/
|
|
4375
4610
|
export const UpdateCustomFieldRequestSchema: GenMessage<UpdateCustomFieldRequest> = /*@__PURE__*/
|
|
4376
|
-
messageDesc(file_billing_v1_billing,
|
|
4611
|
+
messageDesc(file_billing_v1_billing, 118);
|
|
4377
4612
|
|
|
4378
4613
|
/**
|
|
4379
4614
|
* @generated from message blueapi.billing.v1.DeleteCustomFieldRequest
|
|
@@ -4390,7 +4625,7 @@ export type DeleteCustomFieldRequest = Message<"blueapi.billing.v1.DeleteCustomF
|
|
|
4390
4625
|
* Use `create(DeleteCustomFieldRequestSchema)` to create a new message.
|
|
4391
4626
|
*/
|
|
4392
4627
|
export const DeleteCustomFieldRequestSchema: GenMessage<DeleteCustomFieldRequest> = /*@__PURE__*/
|
|
4393
|
-
messageDesc(file_billing_v1_billing,
|
|
4628
|
+
messageDesc(file_billing_v1_billing, 119);
|
|
4394
4629
|
|
|
4395
4630
|
/**
|
|
4396
4631
|
* @generated from message blueapi.billing.v1.ListCustomFieldRequest
|
|
@@ -4403,7 +4638,7 @@ export type ListCustomFieldRequest = Message<"blueapi.billing.v1.ListCustomField
|
|
|
4403
4638
|
* Use `create(ListCustomFieldRequestSchema)` to create a new message.
|
|
4404
4639
|
*/
|
|
4405
4640
|
export const ListCustomFieldRequestSchema: GenMessage<ListCustomFieldRequest> = /*@__PURE__*/
|
|
4406
|
-
messageDesc(file_billing_v1_billing,
|
|
4641
|
+
messageDesc(file_billing_v1_billing, 120);
|
|
4407
4642
|
|
|
4408
4643
|
/**
|
|
4409
4644
|
* BillingGroup FreeFormat: Also known as miscellaneous
|
|
@@ -4432,7 +4667,7 @@ export type CreateFreeFormatRequest = Message<"blueapi.billing.v1.CreateFreeForm
|
|
|
4432
4667
|
* Use `create(CreateFreeFormatRequestSchema)` to create a new message.
|
|
4433
4668
|
*/
|
|
4434
4669
|
export const CreateFreeFormatRequestSchema: GenMessage<CreateFreeFormatRequest> = /*@__PURE__*/
|
|
4435
|
-
messageDesc(file_billing_v1_billing,
|
|
4670
|
+
messageDesc(file_billing_v1_billing, 121);
|
|
4436
4671
|
|
|
4437
4672
|
/**
|
|
4438
4673
|
* @generated from message blueapi.billing.v1.FreeFormItem
|
|
@@ -4469,7 +4704,7 @@ export type FreeFormItem = Message<"blueapi.billing.v1.FreeFormItem"> & {
|
|
|
4469
4704
|
* Use `create(FreeFormItemSchema)` to create a new message.
|
|
4470
4705
|
*/
|
|
4471
4706
|
export const FreeFormItemSchema: GenMessage<FreeFormItem> = /*@__PURE__*/
|
|
4472
|
-
messageDesc(file_billing_v1_billing,
|
|
4707
|
+
messageDesc(file_billing_v1_billing, 122);
|
|
4473
4708
|
|
|
4474
4709
|
/**
|
|
4475
4710
|
* @generated from message blueapi.billing.v1.DeleteFreeFormatRequest
|
|
@@ -4491,7 +4726,7 @@ export type DeleteFreeFormatRequest = Message<"blueapi.billing.v1.DeleteFreeForm
|
|
|
4491
4726
|
* Use `create(DeleteFreeFormatRequestSchema)` to create a new message.
|
|
4492
4727
|
*/
|
|
4493
4728
|
export const DeleteFreeFormatRequestSchema: GenMessage<DeleteFreeFormatRequest> = /*@__PURE__*/
|
|
4494
|
-
messageDesc(file_billing_v1_billing,
|
|
4729
|
+
messageDesc(file_billing_v1_billing, 123);
|
|
4495
4730
|
|
|
4496
4731
|
/**
|
|
4497
4732
|
* @generated from message blueapi.billing.v1.GetFreeFormatRequest
|
|
@@ -4518,7 +4753,7 @@ export type GetFreeFormatRequest = Message<"blueapi.billing.v1.GetFreeFormatRequ
|
|
|
4518
4753
|
* Use `create(GetFreeFormatRequestSchema)` to create a new message.
|
|
4519
4754
|
*/
|
|
4520
4755
|
export const GetFreeFormatRequestSchema: GenMessage<GetFreeFormatRequest> = /*@__PURE__*/
|
|
4521
|
-
messageDesc(file_billing_v1_billing,
|
|
4756
|
+
messageDesc(file_billing_v1_billing, 124);
|
|
4522
4757
|
|
|
4523
4758
|
/**
|
|
4524
4759
|
* @generated from message blueapi.billing.v1.GetFreeFormatResponse
|
|
@@ -4545,7 +4780,7 @@ export type GetFreeFormatResponse = Message<"blueapi.billing.v1.GetFreeFormatRes
|
|
|
4545
4780
|
* Use `create(GetFreeFormatResponseSchema)` to create a new message.
|
|
4546
4781
|
*/
|
|
4547
4782
|
export const GetFreeFormatResponseSchema: GenMessage<GetFreeFormatResponse> = /*@__PURE__*/
|
|
4548
|
-
messageDesc(file_billing_v1_billing,
|
|
4783
|
+
messageDesc(file_billing_v1_billing, 125);
|
|
4549
4784
|
|
|
4550
4785
|
/**
|
|
4551
4786
|
* BillingGroup tags adding setting
|
|
@@ -4574,7 +4809,7 @@ export type UpdateTagsAddingSettingRequest = Message<"blueapi.billing.v1.UpdateT
|
|
|
4574
4809
|
* Use `create(UpdateTagsAddingSettingRequestSchema)` to create a new message.
|
|
4575
4810
|
*/
|
|
4576
4811
|
export const UpdateTagsAddingSettingRequestSchema: GenMessage<UpdateTagsAddingSettingRequest> = /*@__PURE__*/
|
|
4577
|
-
messageDesc(file_billing_v1_billing,
|
|
4812
|
+
messageDesc(file_billing_v1_billing, 126);
|
|
4578
4813
|
|
|
4579
4814
|
/**
|
|
4580
4815
|
* @generated from message blueapi.billing.v1.GetTagsAddingSettingRequest
|
|
@@ -4596,7 +4831,7 @@ export type GetTagsAddingSettingRequest = Message<"blueapi.billing.v1.GetTagsAdd
|
|
|
4596
4831
|
* Use `create(GetTagsAddingSettingRequestSchema)` to create a new message.
|
|
4597
4832
|
*/
|
|
4598
4833
|
export const GetTagsAddingSettingRequestSchema: GenMessage<GetTagsAddingSettingRequest> = /*@__PURE__*/
|
|
4599
|
-
messageDesc(file_billing_v1_billing,
|
|
4834
|
+
messageDesc(file_billing_v1_billing, 127);
|
|
4600
4835
|
|
|
4601
4836
|
/**
|
|
4602
4837
|
* @generated from message blueapi.billing.v1.TagsAddingSetting
|
|
@@ -4623,7 +4858,7 @@ export type TagsAddingSetting = Message<"blueapi.billing.v1.TagsAddingSetting">
|
|
|
4623
4858
|
* Use `create(TagsAddingSettingSchema)` to create a new message.
|
|
4624
4859
|
*/
|
|
4625
4860
|
export const TagsAddingSettingSchema: GenMessage<TagsAddingSetting> = /*@__PURE__*/
|
|
4626
|
-
messageDesc(file_billing_v1_billing,
|
|
4861
|
+
messageDesc(file_billing_v1_billing, 128);
|
|
4627
4862
|
|
|
4628
4863
|
/**
|
|
4629
4864
|
* Request message for the ExportServiceDiscounts rpc.
|
|
@@ -4655,7 +4890,7 @@ export type ExportServiceDiscountsRequest = Message<"blueapi.billing.v1.ExportSe
|
|
|
4655
4890
|
* Use `create(ExportServiceDiscountsRequestSchema)` to create a new message.
|
|
4656
4891
|
*/
|
|
4657
4892
|
export const ExportServiceDiscountsRequestSchema: GenMessage<ExportServiceDiscountsRequest> = /*@__PURE__*/
|
|
4658
|
-
messageDesc(file_billing_v1_billing,
|
|
4893
|
+
messageDesc(file_billing_v1_billing, 129);
|
|
4659
4894
|
|
|
4660
4895
|
/**
|
|
4661
4896
|
* Request message for the ExportAccountInvoiceServiceDiscounts rpc.
|
|
@@ -4694,7 +4929,7 @@ export type ExportAccountInvoiceServiceDiscountsRequest = Message<"blueapi.billi
|
|
|
4694
4929
|
* Use `create(ExportAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
4695
4930
|
*/
|
|
4696
4931
|
export const ExportAccountInvoiceServiceDiscountsRequestSchema: GenMessage<ExportAccountInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
4697
|
-
messageDesc(file_billing_v1_billing,
|
|
4932
|
+
messageDesc(file_billing_v1_billing, 130);
|
|
4698
4933
|
|
|
4699
4934
|
/**
|
|
4700
4935
|
* Request message for the ExportBillingGroupInvoiceServiceDiscounts rpc.
|
|
@@ -4733,7 +4968,7 @@ export type ExportBillingGroupInvoiceServiceDiscountsRequest = Message<"blueapi.
|
|
|
4733
4968
|
* Use `create(ExportBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
4734
4969
|
*/
|
|
4735
4970
|
export const ExportBillingGroupInvoiceServiceDiscountsRequestSchema: GenMessage<ExportBillingGroupInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
4736
|
-
messageDesc(file_billing_v1_billing,
|
|
4971
|
+
messageDesc(file_billing_v1_billing, 131);
|
|
4737
4972
|
|
|
4738
4973
|
/**
|
|
4739
4974
|
* Request message for the ExportBillingGroupCsv rpc.
|
|
@@ -4757,7 +4992,7 @@ export type ExportBillingGroupCsvRequest = Message<"blueapi.billing.v1.ExportBil
|
|
|
4757
4992
|
* Use `create(ExportBillingGroupCsvRequestSchema)` to create a new message.
|
|
4758
4993
|
*/
|
|
4759
4994
|
export const ExportBillingGroupCsvRequestSchema: GenMessage<ExportBillingGroupCsvRequest> = /*@__PURE__*/
|
|
4760
|
-
messageDesc(file_billing_v1_billing,
|
|
4995
|
+
messageDesc(file_billing_v1_billing, 132);
|
|
4761
4996
|
|
|
4762
4997
|
/**
|
|
4763
4998
|
* Response message for the ExportBillingGroupCsv rpc.
|
|
@@ -4779,7 +5014,7 @@ export type ExportBillingGroupCsvResponse = Message<"blueapi.billing.v1.ExportBi
|
|
|
4779
5014
|
* Use `create(ExportBillingGroupCsvResponseSchema)` to create a new message.
|
|
4780
5015
|
*/
|
|
4781
5016
|
export const ExportBillingGroupCsvResponseSchema: GenMessage<ExportBillingGroupCsvResponse> = /*@__PURE__*/
|
|
4782
|
-
messageDesc(file_billing_v1_billing,
|
|
5017
|
+
messageDesc(file_billing_v1_billing, 133);
|
|
4783
5018
|
|
|
4784
5019
|
/**
|
|
4785
5020
|
* port from m/ripple/exportcsv/billing-group-setting
|
|
@@ -4809,7 +5044,7 @@ export type ExportInvoiceSettingCsvRequest = Message<"blueapi.billing.v1.ExportI
|
|
|
4809
5044
|
* Use `create(ExportInvoiceSettingCsvRequestSchema)` to create a new message.
|
|
4810
5045
|
*/
|
|
4811
5046
|
export const ExportInvoiceSettingCsvRequestSchema: GenMessage<ExportInvoiceSettingCsvRequest> = /*@__PURE__*/
|
|
4812
|
-
messageDesc(file_billing_v1_billing,
|
|
5047
|
+
messageDesc(file_billing_v1_billing, 134);
|
|
4813
5048
|
|
|
4814
5049
|
/**
|
|
4815
5050
|
* Response message for the ExportBillingGroupCsv rpc.
|
|
@@ -4831,7 +5066,7 @@ export type ExportInvoiceSettingCsvResponse = Message<"blueapi.billing.v1.Export
|
|
|
4831
5066
|
* Use `create(ExportInvoiceSettingCsvResponseSchema)` to create a new message.
|
|
4832
5067
|
*/
|
|
4833
5068
|
export const ExportInvoiceSettingCsvResponseSchema: GenMessage<ExportInvoiceSettingCsvResponse> = /*@__PURE__*/
|
|
4834
|
-
messageDesc(file_billing_v1_billing,
|
|
5069
|
+
messageDesc(file_billing_v1_billing, 135);
|
|
4835
5070
|
|
|
4836
5071
|
/**
|
|
4837
5072
|
* @generated from message blueapi.billing.v1.GetBillingGroupInvoiceServiceDiscountsRequest
|
|
@@ -4848,7 +5083,7 @@ export type GetBillingGroupInvoiceServiceDiscountsRequest = Message<"blueapi.bil
|
|
|
4848
5083
|
* Use `create(GetBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
4849
5084
|
*/
|
|
4850
5085
|
export const GetBillingGroupInvoiceServiceDiscountsRequestSchema: GenMessage<GetBillingGroupInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
4851
|
-
messageDesc(file_billing_v1_billing,
|
|
5086
|
+
messageDesc(file_billing_v1_billing, 136);
|
|
4852
5087
|
|
|
4853
5088
|
/**
|
|
4854
5089
|
* @generated from message blueapi.billing.v1.GetBillingGroupInvoiceServiceDiscountsResponse
|
|
@@ -4867,7 +5102,7 @@ export type GetBillingGroupInvoiceServiceDiscountsResponse = Message<"blueapi.bi
|
|
|
4867
5102
|
* Use `create(GetBillingGroupInvoiceServiceDiscountsResponseSchema)` to create a new message.
|
|
4868
5103
|
*/
|
|
4869
5104
|
export const GetBillingGroupInvoiceServiceDiscountsResponseSchema: GenMessage<GetBillingGroupInvoiceServiceDiscountsResponse> = /*@__PURE__*/
|
|
4870
|
-
messageDesc(file_billing_v1_billing,
|
|
5105
|
+
messageDesc(file_billing_v1_billing, 137);
|
|
4871
5106
|
|
|
4872
5107
|
/**
|
|
4873
5108
|
* @generated from message blueapi.billing.v1.AddBillingGroupCustomFieldRequest
|
|
@@ -4893,7 +5128,7 @@ export type AddBillingGroupCustomFieldRequest = Message<"blueapi.billing.v1.AddB
|
|
|
4893
5128
|
* Use `create(AddBillingGroupCustomFieldRequestSchema)` to create a new message.
|
|
4894
5129
|
*/
|
|
4895
5130
|
export const AddBillingGroupCustomFieldRequestSchema: GenMessage<AddBillingGroupCustomFieldRequest> = /*@__PURE__*/
|
|
4896
|
-
messageDesc(file_billing_v1_billing,
|
|
5131
|
+
messageDesc(file_billing_v1_billing, 138);
|
|
4897
5132
|
|
|
4898
5133
|
/**
|
|
4899
5134
|
* @generated from message blueapi.billing.v1.DeleteBillingGroupCustomFieldRequest
|
|
@@ -4919,7 +5154,7 @@ export type DeleteBillingGroupCustomFieldRequest = Message<"blueapi.billing.v1.D
|
|
|
4919
5154
|
* Use `create(DeleteBillingGroupCustomFieldRequestSchema)` to create a new message.
|
|
4920
5155
|
*/
|
|
4921
5156
|
export const DeleteBillingGroupCustomFieldRequestSchema: GenMessage<DeleteBillingGroupCustomFieldRequest> = /*@__PURE__*/
|
|
4922
|
-
messageDesc(file_billing_v1_billing,
|
|
5157
|
+
messageDesc(file_billing_v1_billing, 139);
|
|
4923
5158
|
|
|
4924
5159
|
/**
|
|
4925
5160
|
* @generated from message blueapi.billing.v1.AddAccountToBillingGroupRequest
|
|
@@ -4952,7 +5187,7 @@ export type AddAccountToBillingGroupRequest = Message<"blueapi.billing.v1.AddAcc
|
|
|
4952
5187
|
* Use `create(AddAccountToBillingGroupRequestSchema)` to create a new message.
|
|
4953
5188
|
*/
|
|
4954
5189
|
export const AddAccountToBillingGroupRequestSchema: GenMessage<AddAccountToBillingGroupRequest> = /*@__PURE__*/
|
|
4955
|
-
messageDesc(file_billing_v1_billing,
|
|
5190
|
+
messageDesc(file_billing_v1_billing, 140);
|
|
4956
5191
|
|
|
4957
5192
|
/**
|
|
4958
5193
|
* New message for account details
|
|
@@ -4994,7 +5229,7 @@ export type AccountToAdd = Message<"blueapi.billing.v1.AccountToAdd"> & {
|
|
|
4994
5229
|
* Use `create(AccountToAddSchema)` to create a new message.
|
|
4995
5230
|
*/
|
|
4996
5231
|
export const AccountToAddSchema: GenMessage<AccountToAdd> = /*@__PURE__*/
|
|
4997
|
-
messageDesc(file_billing_v1_billing,
|
|
5232
|
+
messageDesc(file_billing_v1_billing, 141);
|
|
4998
5233
|
|
|
4999
5234
|
/**
|
|
5000
5235
|
* @generated from message blueapi.billing.v1.AddTagsToBillingGroupRequest
|
|
@@ -5034,7 +5269,7 @@ export type AddTagsToBillingGroupRequest = Message<"blueapi.billing.v1.AddTagsTo
|
|
|
5034
5269
|
* Use `create(AddTagsToBillingGroupRequestSchema)` to create a new message.
|
|
5035
5270
|
*/
|
|
5036
5271
|
export const AddTagsToBillingGroupRequestSchema: GenMessage<AddTagsToBillingGroupRequest> = /*@__PURE__*/
|
|
5037
|
-
messageDesc(file_billing_v1_billing,
|
|
5272
|
+
messageDesc(file_billing_v1_billing, 142);
|
|
5038
5273
|
|
|
5039
5274
|
/**
|
|
5040
5275
|
* Settings for a specific customer account for AddTagsToBillingGroup
|
|
@@ -5062,7 +5297,7 @@ export type TagSetting = Message<"blueapi.billing.v1.TagSetting"> & {
|
|
|
5062
5297
|
* Use `create(TagSettingSchema)` to create a new message.
|
|
5063
5298
|
*/
|
|
5064
5299
|
export const TagSettingSchema: GenMessage<TagSetting> = /*@__PURE__*/
|
|
5065
|
-
messageDesc(file_billing_v1_billing,
|
|
5300
|
+
messageDesc(file_billing_v1_billing, 143);
|
|
5066
5301
|
|
|
5067
5302
|
/**
|
|
5068
5303
|
* Individual tag definition for AddTagsToBillingGroup
|
|
@@ -5097,7 +5332,7 @@ export type Tag = Message<"blueapi.billing.v1.Tag"> & {
|
|
|
5097
5332
|
* Use `create(TagSchema)` to create a new message.
|
|
5098
5333
|
*/
|
|
5099
5334
|
export const TagSchema: GenMessage<Tag> = /*@__PURE__*/
|
|
5100
|
-
messageDesc(file_billing_v1_billing,
|
|
5335
|
+
messageDesc(file_billing_v1_billing, 144);
|
|
5101
5336
|
|
|
5102
5337
|
/**
|
|
5103
5338
|
* Non-tag settings for a billing group for AddTagsToBillingGroup
|
|
@@ -5132,7 +5367,7 @@ export type NonTagSetting = Message<"blueapi.billing.v1.NonTagSetting"> & {
|
|
|
5132
5367
|
* Use `create(NonTagSettingSchema)` to create a new message.
|
|
5133
5368
|
*/
|
|
5134
5369
|
export const NonTagSettingSchema: GenMessage<NonTagSetting> = /*@__PURE__*/
|
|
5135
|
-
messageDesc(file_billing_v1_billing,
|
|
5370
|
+
messageDesc(file_billing_v1_billing, 145);
|
|
5136
5371
|
|
|
5137
5372
|
/**
|
|
5138
5373
|
* Response message for tag invoice setting operation for AddTagsToBillingGroup
|
|
@@ -5160,7 +5395,7 @@ export type SaveTagInvoiceSettingResponse = Message<"blueapi.billing.v1.SaveTagI
|
|
|
5160
5395
|
* Use `create(SaveTagInvoiceSettingResponseSchema)` to create a new message.
|
|
5161
5396
|
*/
|
|
5162
5397
|
export const SaveTagInvoiceSettingResponseSchema: GenMessage<SaveTagInvoiceSettingResponse> = /*@__PURE__*/
|
|
5163
|
-
messageDesc(file_billing_v1_billing,
|
|
5398
|
+
messageDesc(file_billing_v1_billing, 146);
|
|
5164
5399
|
|
|
5165
5400
|
/**
|
|
5166
5401
|
* Request message for updating non-tag group settings for a billing group for UpdateNonTagGroupToBillingGroup
|
|
@@ -5195,7 +5430,7 @@ export type UpdateNonTagGroupToBillingGroupRequest = Message<"blueapi.billing.v1
|
|
|
5195
5430
|
* Use `create(UpdateNonTagGroupToBillingGroupRequestSchema)` to create a new message.
|
|
5196
5431
|
*/
|
|
5197
5432
|
export const UpdateNonTagGroupToBillingGroupRequestSchema: GenMessage<UpdateNonTagGroupToBillingGroupRequest> = /*@__PURE__*/
|
|
5198
|
-
messageDesc(file_billing_v1_billing,
|
|
5433
|
+
messageDesc(file_billing_v1_billing, 147);
|
|
5199
5434
|
|
|
5200
5435
|
/**
|
|
5201
5436
|
* Individual non-tag group setting for UpdateNonTagGroupToBillingGroup
|
|
@@ -5230,7 +5465,7 @@ export type NonTagGroupSetting = Message<"blueapi.billing.v1.NonTagGroupSetting"
|
|
|
5230
5465
|
* Use `create(NonTagGroupSettingSchema)` to create a new message.
|
|
5231
5466
|
*/
|
|
5232
5467
|
export const NonTagGroupSettingSchema: GenMessage<NonTagGroupSetting> = /*@__PURE__*/
|
|
5233
|
-
messageDesc(file_billing_v1_billing,
|
|
5468
|
+
messageDesc(file_billing_v1_billing, 148);
|
|
5234
5469
|
|
|
5235
5470
|
/**
|
|
5236
5471
|
* @generated from message blueapi.billing.v1.SaveInvoiceSettingsRequest
|
|
@@ -5280,7 +5515,7 @@ export type SaveInvoiceSettingsRequest = Message<"blueapi.billing.v1.SaveInvoice
|
|
|
5280
5515
|
* Use `create(SaveInvoiceSettingsRequestSchema)` to create a new message.
|
|
5281
5516
|
*/
|
|
5282
5517
|
export const SaveInvoiceSettingsRequestSchema: GenMessage<SaveInvoiceSettingsRequest> = /*@__PURE__*/
|
|
5283
|
-
messageDesc(file_billing_v1_billing,
|
|
5518
|
+
messageDesc(file_billing_v1_billing, 149);
|
|
5284
5519
|
|
|
5285
5520
|
/**
|
|
5286
5521
|
* @generated from message blueapi.billing.v1.InvoiceSettings
|
|
@@ -5415,7 +5650,7 @@ export type InvoiceSettings = Message<"blueapi.billing.v1.InvoiceSettings"> & {
|
|
|
5415
5650
|
* Use `create(InvoiceSettingsSchema)` to create a new message.
|
|
5416
5651
|
*/
|
|
5417
5652
|
export const InvoiceSettingsSchema: GenMessage<InvoiceSettings> = /*@__PURE__*/
|
|
5418
|
-
messageDesc(file_billing_v1_billing,
|
|
5653
|
+
messageDesc(file_billing_v1_billing, 150);
|
|
5419
5654
|
|
|
5420
5655
|
/**
|
|
5421
5656
|
* @generated from message blueapi.billing.v1.BasicInformation
|
|
@@ -5487,7 +5722,7 @@ export type BasicInformation = Message<"blueapi.billing.v1.BasicInformation"> &
|
|
|
5487
5722
|
* Use `create(BasicInformationSchema)` to create a new message.
|
|
5488
5723
|
*/
|
|
5489
5724
|
export const BasicInformationSchema: GenMessage<BasicInformation> = /*@__PURE__*/
|
|
5490
|
-
messageDesc(file_billing_v1_billing,
|
|
5725
|
+
messageDesc(file_billing_v1_billing, 151);
|
|
5491
5726
|
|
|
5492
5727
|
/**
|
|
5493
5728
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupBasicInformationRequest
|
|
@@ -5509,7 +5744,7 @@ export type UpdateBillingGroupBasicInformationRequest = Message<"blueapi.billing
|
|
|
5509
5744
|
* Use `create(UpdateBillingGroupBasicInformationRequestSchema)` to create a new message.
|
|
5510
5745
|
*/
|
|
5511
5746
|
export const UpdateBillingGroupBasicInformationRequestSchema: GenMessage<UpdateBillingGroupBasicInformationRequest> = /*@__PURE__*/
|
|
5512
|
-
messageDesc(file_billing_v1_billing,
|
|
5747
|
+
messageDesc(file_billing_v1_billing, 152);
|
|
5513
5748
|
|
|
5514
5749
|
/**
|
|
5515
5750
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupCustomFieldsRequest
|
|
@@ -5531,7 +5766,7 @@ export type UpdateBillingGroupCustomFieldsRequest = Message<"blueapi.billing.v1.
|
|
|
5531
5766
|
* Use `create(UpdateBillingGroupCustomFieldsRequestSchema)` to create a new message.
|
|
5532
5767
|
*/
|
|
5533
5768
|
export const UpdateBillingGroupCustomFieldsRequestSchema: GenMessage<UpdateBillingGroupCustomFieldsRequest> = /*@__PURE__*/
|
|
5534
|
-
messageDesc(file_billing_v1_billing,
|
|
5769
|
+
messageDesc(file_billing_v1_billing, 153);
|
|
5535
5770
|
|
|
5536
5771
|
/**
|
|
5537
5772
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupFreeFormatRequest
|
|
@@ -5558,7 +5793,7 @@ export type UpdateBillingGroupFreeFormatRequest = Message<"blueapi.billing.v1.Up
|
|
|
5558
5793
|
* Use `create(UpdateBillingGroupFreeFormatRequestSchema)` to create a new message.
|
|
5559
5794
|
*/
|
|
5560
5795
|
export const UpdateBillingGroupFreeFormatRequestSchema: GenMessage<UpdateBillingGroupFreeFormatRequest> = /*@__PURE__*/
|
|
5561
|
-
messageDesc(file_billing_v1_billing,
|
|
5796
|
+
messageDesc(file_billing_v1_billing, 154);
|
|
5562
5797
|
|
|
5563
5798
|
/**
|
|
5564
5799
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupLinkedResourcesRequest
|
|
@@ -5611,7 +5846,7 @@ export type UpdateBillingGroupLinkedResourcesRequest = Message<"blueapi.billing.
|
|
|
5611
5846
|
* Use `create(UpdateBillingGroupLinkedResourcesRequestSchema)` to create a new message.
|
|
5612
5847
|
*/
|
|
5613
5848
|
export const UpdateBillingGroupLinkedResourcesRequestSchema: GenMessage<UpdateBillingGroupLinkedResourcesRequest> = /*@__PURE__*/
|
|
5614
|
-
messageDesc(file_billing_v1_billing,
|
|
5849
|
+
messageDesc(file_billing_v1_billing, 155);
|
|
5615
5850
|
|
|
5616
5851
|
/**
|
|
5617
5852
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupInvoiceSettingsRequest
|
|
@@ -5643,7 +5878,7 @@ export type UpdateBillingGroupInvoiceSettingsRequest = Message<"blueapi.billing.
|
|
|
5643
5878
|
* Use `create(UpdateBillingGroupInvoiceSettingsRequestSchema)` to create a new message.
|
|
5644
5879
|
*/
|
|
5645
5880
|
export const UpdateBillingGroupInvoiceSettingsRequestSchema: GenMessage<UpdateBillingGroupInvoiceSettingsRequest> = /*@__PURE__*/
|
|
5646
|
-
messageDesc(file_billing_v1_billing,
|
|
5881
|
+
messageDesc(file_billing_v1_billing, 156);
|
|
5647
5882
|
|
|
5648
5883
|
/**
|
|
5649
5884
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupResellerChargesRequest
|
|
@@ -5670,7 +5905,7 @@ export type UpdateBillingGroupResellerChargesRequest = Message<"blueapi.billing.
|
|
|
5670
5905
|
* Use `create(UpdateBillingGroupResellerChargesRequestSchema)` to create a new message.
|
|
5671
5906
|
*/
|
|
5672
5907
|
export const UpdateBillingGroupResellerChargesRequestSchema: GenMessage<UpdateBillingGroupResellerChargesRequest> = /*@__PURE__*/
|
|
5673
|
-
messageDesc(file_billing_v1_billing,
|
|
5908
|
+
messageDesc(file_billing_v1_billing, 157);
|
|
5674
5909
|
|
|
5675
5910
|
/**
|
|
5676
5911
|
* @generated from message blueapi.billing.v1.UpdateBillingGroupAdditionalChargesRequest
|
|
@@ -5704,7 +5939,7 @@ export type UpdateBillingGroupAdditionalChargesRequest = Message<"blueapi.billin
|
|
|
5704
5939
|
* Use `create(UpdateBillingGroupAdditionalChargesRequestSchema)` to create a new message.
|
|
5705
5940
|
*/
|
|
5706
5941
|
export const UpdateBillingGroupAdditionalChargesRequestSchema: GenMessage<UpdateBillingGroupAdditionalChargesRequest> = /*@__PURE__*/
|
|
5707
|
-
messageDesc(file_billing_v1_billing,
|
|
5942
|
+
messageDesc(file_billing_v1_billing, 158);
|
|
5708
5943
|
|
|
5709
5944
|
/**
|
|
5710
5945
|
* CustomizedBillingServiceBillingSetting
|
|
@@ -5741,7 +5976,7 @@ export type UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceB
|
|
|
5741
5976
|
* Use `create(UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceBillingSettingSchema)` to create a new message.
|
|
5742
5977
|
*/
|
|
5743
5978
|
export const UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceBillingSettingSchema: GenMessage<UpdateBillingGroupAdditionalChargesRequest_CustomizedBillingServiceBillingSetting> = /*@__PURE__*/
|
|
5744
|
-
messageDesc(file_billing_v1_billing,
|
|
5979
|
+
messageDesc(file_billing_v1_billing, 158, 0);
|
|
5745
5980
|
|
|
5746
5981
|
/**
|
|
5747
5982
|
* @generated from message blueapi.billing.v1.DeleteBillingGroupRequest
|
|
@@ -5758,7 +5993,7 @@ export type DeleteBillingGroupRequest = Message<"blueapi.billing.v1.DeleteBillin
|
|
|
5758
5993
|
* Use `create(DeleteBillingGroupRequestSchema)` to create a new message.
|
|
5759
5994
|
*/
|
|
5760
5995
|
export const DeleteBillingGroupRequestSchema: GenMessage<DeleteBillingGroupRequest> = /*@__PURE__*/
|
|
5761
|
-
messageDesc(file_billing_v1_billing,
|
|
5996
|
+
messageDesc(file_billing_v1_billing, 159);
|
|
5762
5997
|
|
|
5763
5998
|
/**
|
|
5764
5999
|
* Request message for the GetBillingGroupAccountSupportPlan rpc.
|
|
@@ -5786,7 +6021,7 @@ export type GetBillingGroupAccountSupportPlanRequest = Message<"blueapi.billing.
|
|
|
5786
6021
|
* Use `create(GetBillingGroupAccountSupportPlanRequestSchema)` to create a new message.
|
|
5787
6022
|
*/
|
|
5788
6023
|
export const GetBillingGroupAccountSupportPlanRequestSchema: GenMessage<GetBillingGroupAccountSupportPlanRequest> = /*@__PURE__*/
|
|
5789
|
-
messageDesc(file_billing_v1_billing,
|
|
6024
|
+
messageDesc(file_billing_v1_billing, 160);
|
|
5790
6025
|
|
|
5791
6026
|
/**
|
|
5792
6027
|
* Response message for the GetBillingGroupAccountSupportPlan rpc.
|
|
@@ -5828,7 +6063,7 @@ export type GetBillingGroupAccountSupportPlanResponse = Message<"blueapi.billing
|
|
|
5828
6063
|
* Use `create(GetBillingGroupAccountSupportPlanResponseSchema)` to create a new message.
|
|
5829
6064
|
*/
|
|
5830
6065
|
export const GetBillingGroupAccountSupportPlanResponseSchema: GenMessage<GetBillingGroupAccountSupportPlanResponse> = /*@__PURE__*/
|
|
5831
|
-
messageDesc(file_billing_v1_billing,
|
|
6066
|
+
messageDesc(file_billing_v1_billing, 161);
|
|
5832
6067
|
|
|
5833
6068
|
/**
|
|
5834
6069
|
* Request message for the UpdateBillingGroupAccountSupportPlan rpc.
|
|
@@ -5878,7 +6113,7 @@ export type UpdateBillingGroupAccountSupportPlanRequest = Message<"blueapi.billi
|
|
|
5878
6113
|
* Use `create(UpdateBillingGroupAccountSupportPlanRequestSchema)` to create a new message.
|
|
5879
6114
|
*/
|
|
5880
6115
|
export const UpdateBillingGroupAccountSupportPlanRequestSchema: GenMessage<UpdateBillingGroupAccountSupportPlanRequest> = /*@__PURE__*/
|
|
5881
|
-
messageDesc(file_billing_v1_billing,
|
|
6116
|
+
messageDesc(file_billing_v1_billing, 162);
|
|
5882
6117
|
|
|
5883
6118
|
/**
|
|
5884
6119
|
* @generated from message blueapi.billing.v1.GetAnnouncementsRequest
|
|
@@ -5897,7 +6132,7 @@ export type GetAnnouncementsRequest = Message<"blueapi.billing.v1.GetAnnouncemen
|
|
|
5897
6132
|
* Use `create(GetAnnouncementsRequestSchema)` to create a new message.
|
|
5898
6133
|
*/
|
|
5899
6134
|
export const GetAnnouncementsRequestSchema: GenMessage<GetAnnouncementsRequest> = /*@__PURE__*/
|
|
5900
|
-
messageDesc(file_billing_v1_billing,
|
|
6135
|
+
messageDesc(file_billing_v1_billing, 163);
|
|
5901
6136
|
|
|
5902
6137
|
/**
|
|
5903
6138
|
* @generated from message blueapi.billing.v1.CreateAnnouncementRequest
|
|
@@ -5965,7 +6200,7 @@ export type CreateAnnouncementRequest = Message<"blueapi.billing.v1.CreateAnnoun
|
|
|
5965
6200
|
* Use `create(CreateAnnouncementRequestSchema)` to create a new message.
|
|
5966
6201
|
*/
|
|
5967
6202
|
export const CreateAnnouncementRequestSchema: GenMessage<CreateAnnouncementRequest> = /*@__PURE__*/
|
|
5968
|
-
messageDesc(file_billing_v1_billing,
|
|
6203
|
+
messageDesc(file_billing_v1_billing, 164);
|
|
5969
6204
|
|
|
5970
6205
|
/**
|
|
5971
6206
|
* @generated from message blueapi.billing.v1.UpdateAnnouncementRequest
|
|
@@ -5989,7 +6224,7 @@ export type UpdateAnnouncementRequest = Message<"blueapi.billing.v1.UpdateAnnoun
|
|
|
5989
6224
|
* Use `create(UpdateAnnouncementRequestSchema)` to create a new message.
|
|
5990
6225
|
*/
|
|
5991
6226
|
export const UpdateAnnouncementRequestSchema: GenMessage<UpdateAnnouncementRequest> = /*@__PURE__*/
|
|
5992
|
-
messageDesc(file_billing_v1_billing,
|
|
6227
|
+
messageDesc(file_billing_v1_billing, 165);
|
|
5993
6228
|
|
|
5994
6229
|
/**
|
|
5995
6230
|
* @generated from message blueapi.billing.v1.UpdateAnnouncementsStatusRequest
|
|
@@ -6011,7 +6246,7 @@ export type UpdateAnnouncementsStatusRequest = Message<"blueapi.billing.v1.Updat
|
|
|
6011
6246
|
* Use `create(UpdateAnnouncementsStatusRequestSchema)` to create a new message.
|
|
6012
6247
|
*/
|
|
6013
6248
|
export const UpdateAnnouncementsStatusRequestSchema: GenMessage<UpdateAnnouncementsStatusRequest> = /*@__PURE__*/
|
|
6014
|
-
messageDesc(file_billing_v1_billing,
|
|
6249
|
+
messageDesc(file_billing_v1_billing, 166);
|
|
6015
6250
|
|
|
6016
6251
|
/**
|
|
6017
6252
|
* @generated from message blueapi.billing.v1.UpdateAnnouncementDateRequest
|
|
@@ -6035,7 +6270,7 @@ export type UpdateAnnouncementDateRequest = Message<"blueapi.billing.v1.UpdateAn
|
|
|
6035
6270
|
* Use `create(UpdateAnnouncementDateRequestSchema)` to create a new message.
|
|
6036
6271
|
*/
|
|
6037
6272
|
export const UpdateAnnouncementDateRequestSchema: GenMessage<UpdateAnnouncementDateRequest> = /*@__PURE__*/
|
|
6038
|
-
messageDesc(file_billing_v1_billing,
|
|
6273
|
+
messageDesc(file_billing_v1_billing, 167);
|
|
6039
6274
|
|
|
6040
6275
|
/**
|
|
6041
6276
|
* @generated from message blueapi.billing.v1.DeleteAnnouncementRequest
|
|
@@ -6054,7 +6289,7 @@ export type DeleteAnnouncementRequest = Message<"blueapi.billing.v1.DeleteAnnoun
|
|
|
6054
6289
|
* Use `create(DeleteAnnouncementRequestSchema)` to create a new message.
|
|
6055
6290
|
*/
|
|
6056
6291
|
export const DeleteAnnouncementRequestSchema: GenMessage<DeleteAnnouncementRequest> = /*@__PURE__*/
|
|
6057
|
-
messageDesc(file_billing_v1_billing,
|
|
6292
|
+
messageDesc(file_billing_v1_billing, 168);
|
|
6058
6293
|
|
|
6059
6294
|
/**
|
|
6060
6295
|
* @generated from message blueapi.billing.v1.Announcement
|
|
@@ -6131,7 +6366,7 @@ export type Announcement = Message<"blueapi.billing.v1.Announcement"> & {
|
|
|
6131
6366
|
* Use `create(AnnouncementSchema)` to create a new message.
|
|
6132
6367
|
*/
|
|
6133
6368
|
export const AnnouncementSchema: GenMessage<Announcement> = /*@__PURE__*/
|
|
6134
|
-
messageDesc(file_billing_v1_billing,
|
|
6369
|
+
messageDesc(file_billing_v1_billing, 169);
|
|
6135
6370
|
|
|
6136
6371
|
/**
|
|
6137
6372
|
* @generated from message blueapi.billing.v1.GetBillingGroupAnnouncementsRequest
|
|
@@ -6150,7 +6385,7 @@ export type GetBillingGroupAnnouncementsRequest = Message<"blueapi.billing.v1.Ge
|
|
|
6150
6385
|
* Use `create(GetBillingGroupAnnouncementsRequestSchema)` to create a new message.
|
|
6151
6386
|
*/
|
|
6152
6387
|
export const GetBillingGroupAnnouncementsRequestSchema: GenMessage<GetBillingGroupAnnouncementsRequest> = /*@__PURE__*/
|
|
6153
|
-
messageDesc(file_billing_v1_billing,
|
|
6388
|
+
messageDesc(file_billing_v1_billing, 170);
|
|
6154
6389
|
|
|
6155
6390
|
/**
|
|
6156
6391
|
* @generated from message blueapi.billing.v1.GetBillingGroupAnnouncementsResponse
|
|
@@ -6182,7 +6417,7 @@ export type GetBillingGroupAnnouncementsResponse = Message<"blueapi.billing.v1.G
|
|
|
6182
6417
|
* Use `create(GetBillingGroupAnnouncementsResponseSchema)` to create a new message.
|
|
6183
6418
|
*/
|
|
6184
6419
|
export const GetBillingGroupAnnouncementsResponseSchema: GenMessage<GetBillingGroupAnnouncementsResponse> = /*@__PURE__*/
|
|
6185
|
-
messageDesc(file_billing_v1_billing,
|
|
6420
|
+
messageDesc(file_billing_v1_billing, 171);
|
|
6186
6421
|
|
|
6187
6422
|
/**
|
|
6188
6423
|
* @generated from message blueapi.billing.v1.GetCreditsRequest
|
|
@@ -6195,7 +6430,7 @@ export type GetCreditsRequest = Message<"blueapi.billing.v1.GetCreditsRequest">
|
|
|
6195
6430
|
* Use `create(GetCreditsRequestSchema)` to create a new message.
|
|
6196
6431
|
*/
|
|
6197
6432
|
export const GetCreditsRequestSchema: GenMessage<GetCreditsRequest> = /*@__PURE__*/
|
|
6198
|
-
messageDesc(file_billing_v1_billing,
|
|
6433
|
+
messageDesc(file_billing_v1_billing, 172);
|
|
6199
6434
|
|
|
6200
6435
|
/**
|
|
6201
6436
|
* @generated from message blueapi.billing.v1.Credit
|
|
@@ -6257,7 +6492,7 @@ export type Credit = Message<"blueapi.billing.v1.Credit"> & {
|
|
|
6257
6492
|
* Use `create(CreditSchema)` to create a new message.
|
|
6258
6493
|
*/
|
|
6259
6494
|
export const CreditSchema: GenMessage<Credit> = /*@__PURE__*/
|
|
6260
|
-
messageDesc(file_billing_v1_billing,
|
|
6495
|
+
messageDesc(file_billing_v1_billing, 173);
|
|
6261
6496
|
|
|
6262
6497
|
/**
|
|
6263
6498
|
* @generated from message blueapi.billing.v1.GetCsvSettingsRequest
|
|
@@ -6270,7 +6505,7 @@ export type GetCsvSettingsRequest = Message<"blueapi.billing.v1.GetCsvSettingsRe
|
|
|
6270
6505
|
* Use `create(GetCsvSettingsRequestSchema)` to create a new message.
|
|
6271
6506
|
*/
|
|
6272
6507
|
export const GetCsvSettingsRequestSchema: GenMessage<GetCsvSettingsRequest> = /*@__PURE__*/
|
|
6273
|
-
messageDesc(file_billing_v1_billing,
|
|
6508
|
+
messageDesc(file_billing_v1_billing, 174);
|
|
6274
6509
|
|
|
6275
6510
|
/**
|
|
6276
6511
|
* @generated from message blueapi.billing.v1.CsvSetting
|
|
@@ -6297,7 +6532,7 @@ export type CsvSetting = Message<"blueapi.billing.v1.CsvSetting"> & {
|
|
|
6297
6532
|
* Use `create(CsvSettingSchema)` to create a new message.
|
|
6298
6533
|
*/
|
|
6299
6534
|
export const CsvSettingSchema: GenMessage<CsvSetting> = /*@__PURE__*/
|
|
6300
|
-
messageDesc(file_billing_v1_billing,
|
|
6535
|
+
messageDesc(file_billing_v1_billing, 175);
|
|
6301
6536
|
|
|
6302
6537
|
/**
|
|
6303
6538
|
* @generated from message blueapi.billing.v1.CsvSetting.Column
|
|
@@ -6329,7 +6564,7 @@ export type CsvSetting_Column = Message<"blueapi.billing.v1.CsvSetting.Column">
|
|
|
6329
6564
|
* Use `create(CsvSetting_ColumnSchema)` to create a new message.
|
|
6330
6565
|
*/
|
|
6331
6566
|
export const CsvSetting_ColumnSchema: GenMessage<CsvSetting_Column> = /*@__PURE__*/
|
|
6332
|
-
messageDesc(file_billing_v1_billing,
|
|
6567
|
+
messageDesc(file_billing_v1_billing, 175, 0);
|
|
6333
6568
|
|
|
6334
6569
|
/**
|
|
6335
6570
|
* @generated from message blueapi.billing.v1.UpdateInvoiceExchangeRateRequest
|
|
@@ -6370,7 +6605,7 @@ export type UpdateInvoiceExchangeRateRequest = Message<"blueapi.billing.v1.Updat
|
|
|
6370
6605
|
* Use `create(UpdateInvoiceExchangeRateRequestSchema)` to create a new message.
|
|
6371
6606
|
*/
|
|
6372
6607
|
export const UpdateInvoiceExchangeRateRequestSchema: GenMessage<UpdateInvoiceExchangeRateRequest> = /*@__PURE__*/
|
|
6373
|
-
messageDesc(file_billing_v1_billing,
|
|
6608
|
+
messageDesc(file_billing_v1_billing, 176);
|
|
6374
6609
|
|
|
6375
6610
|
/**
|
|
6376
6611
|
* @generated from message blueapi.billing.v1.ConvertInvoiceToPdfRequest
|
|
@@ -6404,7 +6639,7 @@ export type ConvertInvoiceToPdfRequest = Message<"blueapi.billing.v1.ConvertInvo
|
|
|
6404
6639
|
* Use `create(ConvertInvoiceToPdfRequestSchema)` to create a new message.
|
|
6405
6640
|
*/
|
|
6406
6641
|
export const ConvertInvoiceToPdfRequestSchema: GenMessage<ConvertInvoiceToPdfRequest> = /*@__PURE__*/
|
|
6407
|
-
messageDesc(file_billing_v1_billing,
|
|
6642
|
+
messageDesc(file_billing_v1_billing, 177);
|
|
6408
6643
|
|
|
6409
6644
|
/**
|
|
6410
6645
|
* @generated from message blueapi.billing.v1.ConvertInvoiceToPdfResponse
|
|
@@ -6429,7 +6664,7 @@ export type ConvertInvoiceToPdfResponse = Message<"blueapi.billing.v1.ConvertInv
|
|
|
6429
6664
|
* Use `create(ConvertInvoiceToPdfResponseSchema)` to create a new message.
|
|
6430
6665
|
*/
|
|
6431
6666
|
export const ConvertInvoiceToPdfResponseSchema: GenMessage<ConvertInvoiceToPdfResponse> = /*@__PURE__*/
|
|
6432
|
-
messageDesc(file_billing_v1_billing,
|
|
6667
|
+
messageDesc(file_billing_v1_billing, 178);
|
|
6433
6668
|
|
|
6434
6669
|
/**
|
|
6435
6670
|
* Request message for the Billing.ListBillingGroupsPaginated rpc.
|
|
@@ -6520,7 +6755,7 @@ export type ListBillingGroupsPaginatedRequest = Message<"blueapi.billing.v1.List
|
|
|
6520
6755
|
* Use `create(ListBillingGroupsPaginatedRequestSchema)` to create a new message.
|
|
6521
6756
|
*/
|
|
6522
6757
|
export const ListBillingGroupsPaginatedRequestSchema: GenMessage<ListBillingGroupsPaginatedRequest> = /*@__PURE__*/
|
|
6523
|
-
messageDesc(file_billing_v1_billing,
|
|
6758
|
+
messageDesc(file_billing_v1_billing, 179);
|
|
6524
6759
|
|
|
6525
6760
|
/**
|
|
6526
6761
|
* Response row for paginated billing groups table.
|
|
@@ -6576,7 +6811,7 @@ export type BillingGroupListItem = Message<"blueapi.billing.v1.BillingGroupListI
|
|
|
6576
6811
|
* Use `create(BillingGroupListItemSchema)` to create a new message.
|
|
6577
6812
|
*/
|
|
6578
6813
|
export const BillingGroupListItemSchema: GenMessage<BillingGroupListItem> = /*@__PURE__*/
|
|
6579
|
-
messageDesc(file_billing_v1_billing,
|
|
6814
|
+
messageDesc(file_billing_v1_billing, 180);
|
|
6580
6815
|
|
|
6581
6816
|
/**
|
|
6582
6817
|
* Vendor availability entries.
|
|
@@ -6604,7 +6839,7 @@ export type BillingGroupListItem_BillingGroupVendor = Message<"blueapi.billing.v
|
|
|
6604
6839
|
* Use `create(BillingGroupListItem_BillingGroupVendorSchema)` to create a new message.
|
|
6605
6840
|
*/
|
|
6606
6841
|
export const BillingGroupListItem_BillingGroupVendorSchema: GenMessage<BillingGroupListItem_BillingGroupVendor> = /*@__PURE__*/
|
|
6607
|
-
messageDesc(file_billing_v1_billing,
|
|
6842
|
+
messageDesc(file_billing_v1_billing, 180, 0);
|
|
6608
6843
|
|
|
6609
6844
|
/**
|
|
6610
6845
|
* Response message for the Billing.ListBillingGroupsPaginated rpc.
|
|
@@ -6653,7 +6888,7 @@ export type ListBillingGroupsPaginatedResponse = Message<"blueapi.billing.v1.Lis
|
|
|
6653
6888
|
* Use `create(ListBillingGroupsPaginatedResponseSchema)` to create a new message.
|
|
6654
6889
|
*/
|
|
6655
6890
|
export const ListBillingGroupsPaginatedResponseSchema: GenMessage<ListBillingGroupsPaginatedResponse> = /*@__PURE__*/
|
|
6656
|
-
messageDesc(file_billing_v1_billing,
|
|
6891
|
+
messageDesc(file_billing_v1_billing, 181);
|
|
6657
6892
|
|
|
6658
6893
|
/**
|
|
6659
6894
|
* @generated from message blueapi.billing.v1.ChildBillingGroupBasicInformation
|
|
@@ -6707,7 +6942,7 @@ export type ChildBillingGroupBasicInformation = Message<"blueapi.billing.v1.Chil
|
|
|
6707
6942
|
* Use `create(ChildBillingGroupBasicInformationSchema)` to create a new message.
|
|
6708
6943
|
*/
|
|
6709
6944
|
export const ChildBillingGroupBasicInformationSchema: GenMessage<ChildBillingGroupBasicInformation> = /*@__PURE__*/
|
|
6710
|
-
messageDesc(file_billing_v1_billing,
|
|
6945
|
+
messageDesc(file_billing_v1_billing, 182);
|
|
6711
6946
|
|
|
6712
6947
|
/**
|
|
6713
6948
|
* @generated from message blueapi.billing.v1.CustomizedBillingServiceBillingGroup
|
|
@@ -6747,7 +6982,7 @@ export type CustomizedBillingServiceBillingGroup = Message<"blueapi.billing.v1.C
|
|
|
6747
6982
|
* Use `create(CustomizedBillingServiceBillingGroupSchema)` to create a new message.
|
|
6748
6983
|
*/
|
|
6749
6984
|
export const CustomizedBillingServiceBillingGroupSchema: GenMessage<CustomizedBillingServiceBillingGroup> = /*@__PURE__*/
|
|
6750
|
-
messageDesc(file_billing_v1_billing,
|
|
6985
|
+
messageDesc(file_billing_v1_billing, 183);
|
|
6751
6986
|
|
|
6752
6987
|
/**
|
|
6753
6988
|
* Contains basic information and invoice settings related data.
|
|
@@ -6791,7 +7026,7 @@ export type ChildBillingGroup = Message<"blueapi.billing.v1.ChildBillingGroup">
|
|
|
6791
7026
|
* Use `create(ChildBillingGroupSchema)` to create a new message.
|
|
6792
7027
|
*/
|
|
6793
7028
|
export const ChildBillingGroupSchema: GenMessage<ChildBillingGroup> = /*@__PURE__*/
|
|
6794
|
-
messageDesc(file_billing_v1_billing,
|
|
7029
|
+
messageDesc(file_billing_v1_billing, 184);
|
|
6795
7030
|
|
|
6796
7031
|
/**
|
|
6797
7032
|
* @generated from message blueapi.billing.v1.ChildBillingGroupInvoiceSettings
|
|
@@ -6822,7 +7057,7 @@ export type ChildBillingGroupInvoiceSettings = Message<"blueapi.billing.v1.Child
|
|
|
6822
7057
|
* Use `create(ChildBillingGroupInvoiceSettingsSchema)` to create a new message.
|
|
6823
7058
|
*/
|
|
6824
7059
|
export const ChildBillingGroupInvoiceSettingsSchema: GenMessage<ChildBillingGroupInvoiceSettings> = /*@__PURE__*/
|
|
6825
|
-
messageDesc(file_billing_v1_billing,
|
|
7060
|
+
messageDesc(file_billing_v1_billing, 185);
|
|
6826
7061
|
|
|
6827
7062
|
/**
|
|
6828
7063
|
* @generated from message blueapi.billing.v1.CreateChildBillingGroupRequest
|
|
@@ -6855,7 +7090,7 @@ export type CreateChildBillingGroupRequest = Message<"blueapi.billing.v1.CreateC
|
|
|
6855
7090
|
* Use `create(CreateChildBillingGroupRequestSchema)` to create a new message.
|
|
6856
7091
|
*/
|
|
6857
7092
|
export const CreateChildBillingGroupRequestSchema: GenMessage<CreateChildBillingGroupRequest> = /*@__PURE__*/
|
|
6858
|
-
messageDesc(file_billing_v1_billing,
|
|
7093
|
+
messageDesc(file_billing_v1_billing, 186);
|
|
6859
7094
|
|
|
6860
7095
|
/**
|
|
6861
7096
|
* @generated from message blueapi.billing.v1.CreateChildBillingGroupResponse
|
|
@@ -6868,7 +7103,7 @@ export type CreateChildBillingGroupResponse = Message<"blueapi.billing.v1.Create
|
|
|
6868
7103
|
* Use `create(CreateChildBillingGroupResponseSchema)` to create a new message.
|
|
6869
7104
|
*/
|
|
6870
7105
|
export const CreateChildBillingGroupResponseSchema: GenMessage<CreateChildBillingGroupResponse> = /*@__PURE__*/
|
|
6871
|
-
messageDesc(file_billing_v1_billing,
|
|
7106
|
+
messageDesc(file_billing_v1_billing, 187);
|
|
6872
7107
|
|
|
6873
7108
|
/**
|
|
6874
7109
|
* @generated from message blueapi.billing.v1.GetChildBillingGroupRequest
|
|
@@ -6887,7 +7122,7 @@ export type GetChildBillingGroupRequest = Message<"blueapi.billing.v1.GetChildBi
|
|
|
6887
7122
|
* Use `create(GetChildBillingGroupRequestSchema)` to create a new message.
|
|
6888
7123
|
*/
|
|
6889
7124
|
export const GetChildBillingGroupRequestSchema: GenMessage<GetChildBillingGroupRequest> = /*@__PURE__*/
|
|
6890
|
-
messageDesc(file_billing_v1_billing,
|
|
7125
|
+
messageDesc(file_billing_v1_billing, 188);
|
|
6891
7126
|
|
|
6892
7127
|
/**
|
|
6893
7128
|
* @generated from message blueapi.billing.v1.GetChildBillingGroupResponse
|
|
@@ -6904,7 +7139,7 @@ export type GetChildBillingGroupResponse = Message<"blueapi.billing.v1.GetChildB
|
|
|
6904
7139
|
* Use `create(GetChildBillingGroupResponseSchema)` to create a new message.
|
|
6905
7140
|
*/
|
|
6906
7141
|
export const GetChildBillingGroupResponseSchema: GenMessage<GetChildBillingGroupResponse> = /*@__PURE__*/
|
|
6907
|
-
messageDesc(file_billing_v1_billing,
|
|
7142
|
+
messageDesc(file_billing_v1_billing, 189);
|
|
6908
7143
|
|
|
6909
7144
|
/**
|
|
6910
7145
|
* @generated from message blueapi.billing.v1.ReadChildBillingGroupsRequest
|
|
@@ -6932,7 +7167,7 @@ export type ReadChildBillingGroupsRequest = Message<"blueapi.billing.v1.ReadChil
|
|
|
6932
7167
|
* Use `create(ReadChildBillingGroupsRequestSchema)` to create a new message.
|
|
6933
7168
|
*/
|
|
6934
7169
|
export const ReadChildBillingGroupsRequestSchema: GenMessage<ReadChildBillingGroupsRequest> = /*@__PURE__*/
|
|
6935
|
-
messageDesc(file_billing_v1_billing,
|
|
7170
|
+
messageDesc(file_billing_v1_billing, 190);
|
|
6936
7171
|
|
|
6937
7172
|
/**
|
|
6938
7173
|
* @generated from message blueapi.billing.v1.UpdateChildBillingGroupRequest
|
|
@@ -6965,7 +7200,7 @@ export type UpdateChildBillingGroupRequest = Message<"blueapi.billing.v1.UpdateC
|
|
|
6965
7200
|
* Use `create(UpdateChildBillingGroupRequestSchema)` to create a new message.
|
|
6966
7201
|
*/
|
|
6967
7202
|
export const UpdateChildBillingGroupRequestSchema: GenMessage<UpdateChildBillingGroupRequest> = /*@__PURE__*/
|
|
6968
|
-
messageDesc(file_billing_v1_billing,
|
|
7203
|
+
messageDesc(file_billing_v1_billing, 191);
|
|
6969
7204
|
|
|
6970
7205
|
/**
|
|
6971
7206
|
* @generated from message blueapi.billing.v1.UpdateChildBillingGroupResponse
|
|
@@ -6978,7 +7213,7 @@ export type UpdateChildBillingGroupResponse = Message<"blueapi.billing.v1.Update
|
|
|
6978
7213
|
* Use `create(UpdateChildBillingGroupResponseSchema)` to create a new message.
|
|
6979
7214
|
*/
|
|
6980
7215
|
export const UpdateChildBillingGroupResponseSchema: GenMessage<UpdateChildBillingGroupResponse> = /*@__PURE__*/
|
|
6981
|
-
messageDesc(file_billing_v1_billing,
|
|
7216
|
+
messageDesc(file_billing_v1_billing, 192);
|
|
6982
7217
|
|
|
6983
7218
|
/**
|
|
6984
7219
|
* @generated from message blueapi.billing.v1.DeleteChildBillingGroupRequest
|
|
@@ -6997,7 +7232,7 @@ export type DeleteChildBillingGroupRequest = Message<"blueapi.billing.v1.DeleteC
|
|
|
6997
7232
|
* Use `create(DeleteChildBillingGroupRequestSchema)` to create a new message.
|
|
6998
7233
|
*/
|
|
6999
7234
|
export const DeleteChildBillingGroupRequestSchema: GenMessage<DeleteChildBillingGroupRequest> = /*@__PURE__*/
|
|
7000
|
-
messageDesc(file_billing_v1_billing,
|
|
7235
|
+
messageDesc(file_billing_v1_billing, 193);
|
|
7001
7236
|
|
|
7002
7237
|
/**
|
|
7003
7238
|
* @generated from message blueapi.billing.v1.DeleteChildBillingGroupResponse
|
|
@@ -7010,7 +7245,7 @@ export type DeleteChildBillingGroupResponse = Message<"blueapi.billing.v1.Delete
|
|
|
7010
7245
|
* Use `create(DeleteChildBillingGroupResponseSchema)` to create a new message.
|
|
7011
7246
|
*/
|
|
7012
7247
|
export const DeleteChildBillingGroupResponseSchema: GenMessage<DeleteChildBillingGroupResponse> = /*@__PURE__*/
|
|
7013
|
-
messageDesc(file_billing_v1_billing,
|
|
7248
|
+
messageDesc(file_billing_v1_billing, 194);
|
|
7014
7249
|
|
|
7015
7250
|
/**
|
|
7016
7251
|
* @generated from message blueapi.billing.v1.UpdateChildBillingGroupInvoiceSettingsRequest
|
|
@@ -7036,7 +7271,7 @@ export type UpdateChildBillingGroupInvoiceSettingsRequest = Message<"blueapi.bil
|
|
|
7036
7271
|
* Use `create(UpdateChildBillingGroupInvoiceSettingsRequestSchema)` to create a new message.
|
|
7037
7272
|
*/
|
|
7038
7273
|
export const UpdateChildBillingGroupInvoiceSettingsRequestSchema: GenMessage<UpdateChildBillingGroupInvoiceSettingsRequest> = /*@__PURE__*/
|
|
7039
|
-
messageDesc(file_billing_v1_billing,
|
|
7274
|
+
messageDesc(file_billing_v1_billing, 195);
|
|
7040
7275
|
|
|
7041
7276
|
/**
|
|
7042
7277
|
* @generated from message blueapi.billing.v1.UpdateChildBillingGroupInvoiceSettingsResponse
|
|
@@ -7049,7 +7284,7 @@ export type UpdateChildBillingGroupInvoiceSettingsResponse = Message<"blueapi.bi
|
|
|
7049
7284
|
* Use `create(UpdateChildBillingGroupInvoiceSettingsResponseSchema)` to create a new message.
|
|
7050
7285
|
*/
|
|
7051
7286
|
export const UpdateChildBillingGroupInvoiceSettingsResponseSchema: GenMessage<UpdateChildBillingGroupInvoiceSettingsResponse> = /*@__PURE__*/
|
|
7052
|
-
messageDesc(file_billing_v1_billing,
|
|
7287
|
+
messageDesc(file_billing_v1_billing, 196);
|
|
7053
7288
|
|
|
7054
7289
|
/**
|
|
7055
7290
|
* @generated from message blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest
|
|
@@ -7089,7 +7324,7 @@ export type SetChildBillingGroupCustomizedBillingServiceRequest = Message<"bluea
|
|
|
7089
7324
|
* Use `create(SetChildBillingGroupCustomizedBillingServiceRequestSchema)` to create a new message.
|
|
7090
7325
|
*/
|
|
7091
7326
|
export const SetChildBillingGroupCustomizedBillingServiceRequestSchema: GenMessage<SetChildBillingGroupCustomizedBillingServiceRequest> = /*@__PURE__*/
|
|
7092
|
-
messageDesc(file_billing_v1_billing,
|
|
7327
|
+
messageDesc(file_billing_v1_billing, 197);
|
|
7093
7328
|
|
|
7094
7329
|
/**
|
|
7095
7330
|
* CustomizedBillingServiceBillingSetting
|
|
@@ -7126,7 +7361,7 @@ export type SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillin
|
|
|
7126
7361
|
* Use `create(SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSettingSchema)` to create a new message.
|
|
7127
7362
|
*/
|
|
7128
7363
|
export const SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSettingSchema: GenMessage<SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSetting> = /*@__PURE__*/
|
|
7129
|
-
messageDesc(file_billing_v1_billing,
|
|
7364
|
+
messageDesc(file_billing_v1_billing, 197, 0);
|
|
7130
7365
|
|
|
7131
7366
|
/**
|
|
7132
7367
|
* @generated from message blueapi.billing.v1.SetChildBillingGroupInvoiceServiceDiscountsRequest
|
|
@@ -7154,7 +7389,7 @@ export type SetChildBillingGroupInvoiceServiceDiscountsRequest = Message<"blueap
|
|
|
7154
7389
|
* Use `create(SetChildBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
7155
7390
|
*/
|
|
7156
7391
|
export const SetChildBillingGroupInvoiceServiceDiscountsRequestSchema: GenMessage<SetChildBillingGroupInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
7157
|
-
messageDesc(file_billing_v1_billing,
|
|
7392
|
+
messageDesc(file_billing_v1_billing, 198);
|
|
7158
7393
|
|
|
7159
7394
|
/**
|
|
7160
7395
|
* @generated from message blueapi.billing.v1.SetChildBillingGroupAccountInvoiceServiceDiscountsRequest
|
|
@@ -7180,7 +7415,7 @@ export type SetChildBillingGroupAccountInvoiceServiceDiscountsRequest = Message<
|
|
|
7180
7415
|
* Use `create(SetChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
7181
7416
|
*/
|
|
7182
7417
|
export const SetChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema: GenMessage<SetChildBillingGroupAccountInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
7183
|
-
messageDesc(file_billing_v1_billing,
|
|
7418
|
+
messageDesc(file_billing_v1_billing, 199);
|
|
7184
7419
|
|
|
7185
7420
|
/**
|
|
7186
7421
|
* @generated from message blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceRequest
|
|
@@ -7206,7 +7441,7 @@ export type GetChildBillingGroupCustomizedBillingServiceRequest = Message<"bluea
|
|
|
7206
7441
|
* Use `create(GetChildBillingGroupCustomizedBillingServiceRequestSchema)` to create a new message.
|
|
7207
7442
|
*/
|
|
7208
7443
|
export const GetChildBillingGroupCustomizedBillingServiceRequestSchema: GenMessage<GetChildBillingGroupCustomizedBillingServiceRequest> = /*@__PURE__*/
|
|
7209
|
-
messageDesc(file_billing_v1_billing,
|
|
7444
|
+
messageDesc(file_billing_v1_billing, 200);
|
|
7210
7445
|
|
|
7211
7446
|
/**
|
|
7212
7447
|
* @generated from message blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceResponse
|
|
@@ -7246,7 +7481,7 @@ export type GetChildBillingGroupCustomizedBillingServiceResponse = Message<"blue
|
|
|
7246
7481
|
* Use `create(GetChildBillingGroupCustomizedBillingServiceResponseSchema)` to create a new message.
|
|
7247
7482
|
*/
|
|
7248
7483
|
export const GetChildBillingGroupCustomizedBillingServiceResponseSchema: GenMessage<GetChildBillingGroupCustomizedBillingServiceResponse> = /*@__PURE__*/
|
|
7249
|
-
messageDesc(file_billing_v1_billing,
|
|
7484
|
+
messageDesc(file_billing_v1_billing, 201);
|
|
7250
7485
|
|
|
7251
7486
|
/**
|
|
7252
7487
|
* @generated from message blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsRequest
|
|
@@ -7265,7 +7500,7 @@ export type GetChildBillingGroupInvoiceServiceDiscountsRequest = Message<"blueap
|
|
|
7265
7500
|
* Use `create(GetChildBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
7266
7501
|
*/
|
|
7267
7502
|
export const GetChildBillingGroupInvoiceServiceDiscountsRequestSchema: GenMessage<GetChildBillingGroupInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
7268
|
-
messageDesc(file_billing_v1_billing,
|
|
7503
|
+
messageDesc(file_billing_v1_billing, 202);
|
|
7269
7504
|
|
|
7270
7505
|
/**
|
|
7271
7506
|
* @generated from message blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsResponse
|
|
@@ -7284,7 +7519,7 @@ export type GetChildBillingGroupInvoiceServiceDiscountsResponse = Message<"bluea
|
|
|
7284
7519
|
* Use `create(GetChildBillingGroupInvoiceServiceDiscountsResponseSchema)` to create a new message.
|
|
7285
7520
|
*/
|
|
7286
7521
|
export const GetChildBillingGroupInvoiceServiceDiscountsResponseSchema: GenMessage<GetChildBillingGroupInvoiceServiceDiscountsResponse> = /*@__PURE__*/
|
|
7287
|
-
messageDesc(file_billing_v1_billing,
|
|
7522
|
+
messageDesc(file_billing_v1_billing, 203);
|
|
7288
7523
|
|
|
7289
7524
|
/**
|
|
7290
7525
|
* @generated from message blueapi.billing.v1.ReadChildBillingGroupAccountInvoiceServiceDiscountsRequest
|
|
@@ -7303,7 +7538,7 @@ export type ReadChildBillingGroupAccountInvoiceServiceDiscountsRequest = Message
|
|
|
7303
7538
|
* Use `create(ReadChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
|
|
7304
7539
|
*/
|
|
7305
7540
|
export const ReadChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema: GenMessage<ReadChildBillingGroupAccountInvoiceServiceDiscountsRequest> = /*@__PURE__*/
|
|
7306
|
-
messageDesc(file_billing_v1_billing,
|
|
7541
|
+
messageDesc(file_billing_v1_billing, 204);
|
|
7307
7542
|
|
|
7308
7543
|
/**
|
|
7309
7544
|
* @generated from message blueapi.billing.v1.BulkCreateBillingGroupRequest
|
|
@@ -7352,7 +7587,7 @@ export type BulkCreateBillingGroupRequest = Message<"blueapi.billing.v1.BulkCrea
|
|
|
7352
7587
|
* Use `create(BulkCreateBillingGroupRequestSchema)` to create a new message.
|
|
7353
7588
|
*/
|
|
7354
7589
|
export const BulkCreateBillingGroupRequestSchema: GenMessage<BulkCreateBillingGroupRequest> = /*@__PURE__*/
|
|
7355
|
-
messageDesc(file_billing_v1_billing,
|
|
7590
|
+
messageDesc(file_billing_v1_billing, 205);
|
|
7356
7591
|
|
|
7357
7592
|
/**
|
|
7358
7593
|
* @generated from message blueapi.billing.v1.BulkCreateBillingGroupError
|
|
@@ -7385,7 +7620,7 @@ export type BulkCreateBillingGroupError = Message<"blueapi.billing.v1.BulkCreate
|
|
|
7385
7620
|
* Use `create(BulkCreateBillingGroupErrorSchema)` to create a new message.
|
|
7386
7621
|
*/
|
|
7387
7622
|
export const BulkCreateBillingGroupErrorSchema: GenMessage<BulkCreateBillingGroupError> = /*@__PURE__*/
|
|
7388
|
-
messageDesc(file_billing_v1_billing,
|
|
7623
|
+
messageDesc(file_billing_v1_billing, 206);
|
|
7389
7624
|
|
|
7390
7625
|
/**
|
|
7391
7626
|
* Metadata for the BulkCreateBillingGroup long-running operation.
|
|
@@ -7456,7 +7691,7 @@ export type BulkCreateBillingGroupMetadata = Message<"blueapi.billing.v1.BulkCre
|
|
|
7456
7691
|
* Use `create(BulkCreateBillingGroupMetadataSchema)` to create a new message.
|
|
7457
7692
|
*/
|
|
7458
7693
|
export const BulkCreateBillingGroupMetadataSchema: GenMessage<BulkCreateBillingGroupMetadata> = /*@__PURE__*/
|
|
7459
|
-
messageDesc(file_billing_v1_billing,
|
|
7694
|
+
messageDesc(file_billing_v1_billing, 207);
|
|
7460
7695
|
|
|
7461
7696
|
/**
|
|
7462
7697
|
* @generated from message blueapi.billing.v1.ExcludeServiceEntry
|
|
@@ -7531,7 +7766,7 @@ export type ExcludeServiceEntry = Message<"blueapi.billing.v1.ExcludeServiceEntr
|
|
|
7531
7766
|
* Use `create(ExcludeServiceEntrySchema)` to create a new message.
|
|
7532
7767
|
*/
|
|
7533
7768
|
export const ExcludeServiceEntrySchema: GenMessage<ExcludeServiceEntry> = /*@__PURE__*/
|
|
7534
|
-
messageDesc(file_billing_v1_billing,
|
|
7769
|
+
messageDesc(file_billing_v1_billing, 208);
|
|
7535
7770
|
|
|
7536
7771
|
/**
|
|
7537
7772
|
* @generated from message blueapi.billing.v1.CreateExcludeServiceEntryRequest
|
|
@@ -7585,7 +7820,7 @@ export type CreateExcludeServiceEntryRequest = Message<"blueapi.billing.v1.Creat
|
|
|
7585
7820
|
* Use `create(CreateExcludeServiceEntryRequestSchema)` to create a new message.
|
|
7586
7821
|
*/
|
|
7587
7822
|
export const CreateExcludeServiceEntryRequestSchema: GenMessage<CreateExcludeServiceEntryRequest> = /*@__PURE__*/
|
|
7588
|
-
messageDesc(file_billing_v1_billing,
|
|
7823
|
+
messageDesc(file_billing_v1_billing, 209);
|
|
7589
7824
|
|
|
7590
7825
|
/**
|
|
7591
7826
|
* @generated from message blueapi.billing.v1.CreateExcludeServiceEntryResponse
|
|
@@ -7604,7 +7839,7 @@ export type CreateExcludeServiceEntryResponse = Message<"blueapi.billing.v1.Crea
|
|
|
7604
7839
|
* Use `create(CreateExcludeServiceEntryResponseSchema)` to create a new message.
|
|
7605
7840
|
*/
|
|
7606
7841
|
export const CreateExcludeServiceEntryResponseSchema: GenMessage<CreateExcludeServiceEntryResponse> = /*@__PURE__*/
|
|
7607
|
-
messageDesc(file_billing_v1_billing,
|
|
7842
|
+
messageDesc(file_billing_v1_billing, 210);
|
|
7608
7843
|
|
|
7609
7844
|
/**
|
|
7610
7845
|
* @generated from message blueapi.billing.v1.UpdateExcludeServiceEntryRequest
|
|
@@ -7658,7 +7893,7 @@ export type UpdateExcludeServiceEntryRequest = Message<"blueapi.billing.v1.Updat
|
|
|
7658
7893
|
* Use `create(UpdateExcludeServiceEntryRequestSchema)` to create a new message.
|
|
7659
7894
|
*/
|
|
7660
7895
|
export const UpdateExcludeServiceEntryRequestSchema: GenMessage<UpdateExcludeServiceEntryRequest> = /*@__PURE__*/
|
|
7661
|
-
messageDesc(file_billing_v1_billing,
|
|
7896
|
+
messageDesc(file_billing_v1_billing, 211);
|
|
7662
7897
|
|
|
7663
7898
|
/**
|
|
7664
7899
|
* @generated from message blueapi.billing.v1.UpdateExcludeServiceEntryResponse
|
|
@@ -7677,7 +7912,7 @@ export type UpdateExcludeServiceEntryResponse = Message<"blueapi.billing.v1.Upda
|
|
|
7677
7912
|
* Use `create(UpdateExcludeServiceEntryResponseSchema)` to create a new message.
|
|
7678
7913
|
*/
|
|
7679
7914
|
export const UpdateExcludeServiceEntryResponseSchema: GenMessage<UpdateExcludeServiceEntryResponse> = /*@__PURE__*/
|
|
7680
|
-
messageDesc(file_billing_v1_billing,
|
|
7915
|
+
messageDesc(file_billing_v1_billing, 212);
|
|
7681
7916
|
|
|
7682
7917
|
/**
|
|
7683
7918
|
* @generated from message blueapi.billing.v1.DeleteExcludeServiceEntryRequest
|
|
@@ -7724,7 +7959,7 @@ export type DeleteExcludeServiceEntryRequest = Message<"blueapi.billing.v1.Delet
|
|
|
7724
7959
|
* Use `create(DeleteExcludeServiceEntryRequestSchema)` to create a new message.
|
|
7725
7960
|
*/
|
|
7726
7961
|
export const DeleteExcludeServiceEntryRequestSchema: GenMessage<DeleteExcludeServiceEntryRequest> = /*@__PURE__*/
|
|
7727
|
-
messageDesc(file_billing_v1_billing,
|
|
7962
|
+
messageDesc(file_billing_v1_billing, 213);
|
|
7728
7963
|
|
|
7729
7964
|
/**
|
|
7730
7965
|
* @generated from message blueapi.billing.v1.DeleteExcludeServiceEntryResponse
|
|
@@ -7743,7 +7978,7 @@ export type DeleteExcludeServiceEntryResponse = Message<"blueapi.billing.v1.Dele
|
|
|
7743
7978
|
* Use `create(DeleteExcludeServiceEntryResponseSchema)` to create a new message.
|
|
7744
7979
|
*/
|
|
7745
7980
|
export const DeleteExcludeServiceEntryResponseSchema: GenMessage<DeleteExcludeServiceEntryResponse> = /*@__PURE__*/
|
|
7746
|
-
messageDesc(file_billing_v1_billing,
|
|
7981
|
+
messageDesc(file_billing_v1_billing, 214);
|
|
7747
7982
|
|
|
7748
7983
|
/**
|
|
7749
7984
|
* @generated from message blueapi.billing.v1.ListExcludeServicesRequest
|
|
@@ -7769,7 +8004,7 @@ export type ListExcludeServicesRequest = Message<"blueapi.billing.v1.ListExclude
|
|
|
7769
8004
|
* Use `create(ListExcludeServicesRequestSchema)` to create a new message.
|
|
7770
8005
|
*/
|
|
7771
8006
|
export const ListExcludeServicesRequestSchema: GenMessage<ListExcludeServicesRequest> = /*@__PURE__*/
|
|
7772
|
-
messageDesc(file_billing_v1_billing,
|
|
8007
|
+
messageDesc(file_billing_v1_billing, 215);
|
|
7773
8008
|
|
|
7774
8009
|
/**
|
|
7775
8010
|
* @generated from message blueapi.billing.v1.ListExcludeServicesResponse
|
|
@@ -7788,7 +8023,7 @@ export type ListExcludeServicesResponse = Message<"blueapi.billing.v1.ListExclud
|
|
|
7788
8023
|
* Use `create(ListExcludeServicesResponseSchema)` to create a new message.
|
|
7789
8024
|
*/
|
|
7790
8025
|
export const ListExcludeServicesResponseSchema: GenMessage<ListExcludeServicesResponse> = /*@__PURE__*/
|
|
7791
|
-
messageDesc(file_billing_v1_billing,
|
|
8026
|
+
messageDesc(file_billing_v1_billing, 216);
|
|
7792
8027
|
|
|
7793
8028
|
/**
|
|
7794
8029
|
* Represents a single service with its associated names and SKUs.
|
|
@@ -7830,7 +8065,7 @@ export type ServiceItem = Message<"blueapi.billing.v1.ServiceItem"> & {
|
|
|
7830
8065
|
* Use `create(ServiceItemSchema)` to create a new message.
|
|
7831
8066
|
*/
|
|
7832
8067
|
export const ServiceItemSchema: GenMessage<ServiceItem> = /*@__PURE__*/
|
|
7833
|
-
messageDesc(file_billing_v1_billing,
|
|
8068
|
+
messageDesc(file_billing_v1_billing, 217);
|
|
7834
8069
|
|
|
7835
8070
|
/**
|
|
7836
8071
|
* @generated from message blueapi.billing.v1.ListServicesRequest
|
|
@@ -7859,7 +8094,7 @@ export type ListServicesRequest = Message<"blueapi.billing.v1.ListServicesReques
|
|
|
7859
8094
|
* Use `create(ListServicesRequestSchema)` to create a new message.
|
|
7860
8095
|
*/
|
|
7861
8096
|
export const ListServicesRequestSchema: GenMessage<ListServicesRequest> = /*@__PURE__*/
|
|
7862
|
-
messageDesc(file_billing_v1_billing,
|
|
8097
|
+
messageDesc(file_billing_v1_billing, 218);
|
|
7863
8098
|
|
|
7864
8099
|
/**
|
|
7865
8100
|
* @generated from message blueapi.billing.v1.ListServicesResponse
|
|
@@ -7878,7 +8113,7 @@ export type ListServicesResponse = Message<"blueapi.billing.v1.ListServicesRespo
|
|
|
7878
8113
|
* Use `create(ListServicesResponseSchema)` to create a new message.
|
|
7879
8114
|
*/
|
|
7880
8115
|
export const ListServicesResponseSchema: GenMessage<ListServicesResponse> = /*@__PURE__*/
|
|
7881
|
-
messageDesc(file_billing_v1_billing,
|
|
8116
|
+
messageDesc(file_billing_v1_billing, 219);
|
|
7882
8117
|
|
|
7883
8118
|
/**
|
|
7884
8119
|
* @generated from message blueapi.billing.v1.BulkLinkAccountRequest
|
|
@@ -7927,7 +8162,7 @@ export type BulkLinkAccountRequest = Message<"blueapi.billing.v1.BulkLinkAccount
|
|
|
7927
8162
|
* Use `create(BulkLinkAccountRequestSchema)` to create a new message.
|
|
7928
8163
|
*/
|
|
7929
8164
|
export const BulkLinkAccountRequestSchema: GenMessage<BulkLinkAccountRequest> = /*@__PURE__*/
|
|
7930
|
-
messageDesc(file_billing_v1_billing,
|
|
8165
|
+
messageDesc(file_billing_v1_billing, 220);
|
|
7931
8166
|
|
|
7932
8167
|
/**
|
|
7933
8168
|
* @generated from message blueapi.billing.v1.BulkLinkAccountError
|
|
@@ -7967,7 +8202,7 @@ export type BulkLinkAccountError = Message<"blueapi.billing.v1.BulkLinkAccountEr
|
|
|
7967
8202
|
* Use `create(BulkLinkAccountErrorSchema)` to create a new message.
|
|
7968
8203
|
*/
|
|
7969
8204
|
export const BulkLinkAccountErrorSchema: GenMessage<BulkLinkAccountError> = /*@__PURE__*/
|
|
7970
|
-
messageDesc(file_billing_v1_billing,
|
|
8205
|
+
messageDesc(file_billing_v1_billing, 221);
|
|
7971
8206
|
|
|
7972
8207
|
/**
|
|
7973
8208
|
* Metadata for the BulkLinkAccount long-running operation.
|
|
@@ -8038,7 +8273,7 @@ export type BulkLinkAccountMetadata = Message<"blueapi.billing.v1.BulkLinkAccoun
|
|
|
8038
8273
|
* Use `create(BulkLinkAccountMetadataSchema)` to create a new message.
|
|
8039
8274
|
*/
|
|
8040
8275
|
export const BulkLinkAccountMetadataSchema: GenMessage<BulkLinkAccountMetadata> = /*@__PURE__*/
|
|
8041
|
-
messageDesc(file_billing_v1_billing,
|
|
8276
|
+
messageDesc(file_billing_v1_billing, 222);
|
|
8042
8277
|
|
|
8043
8278
|
/**
|
|
8044
8279
|
* Request for BulkTagBillingGroup.
|
|
@@ -8068,7 +8303,7 @@ export type BulkTagBillingGroupRequest = Message<"blueapi.billing.v1.BulkTagBill
|
|
|
8068
8303
|
* Use `create(BulkTagBillingGroupRequestSchema)` to create a new message.
|
|
8069
8304
|
*/
|
|
8070
8305
|
export const BulkTagBillingGroupRequestSchema: GenMessage<BulkTagBillingGroupRequest> = /*@__PURE__*/
|
|
8071
|
-
messageDesc(file_billing_v1_billing,
|
|
8306
|
+
messageDesc(file_billing_v1_billing, 223);
|
|
8072
8307
|
|
|
8073
8308
|
/**
|
|
8074
8309
|
* Describes a single failed row in a BulkTagBillingGroup operation.
|
|
@@ -8124,7 +8359,7 @@ export type BulkTagBillingGroupError = Message<"blueapi.billing.v1.BulkTagBillin
|
|
|
8124
8359
|
* Use `create(BulkTagBillingGroupErrorSchema)` to create a new message.
|
|
8125
8360
|
*/
|
|
8126
8361
|
export const BulkTagBillingGroupErrorSchema: GenMessage<BulkTagBillingGroupError> = /*@__PURE__*/
|
|
8127
|
-
messageDesc(file_billing_v1_billing,
|
|
8362
|
+
messageDesc(file_billing_v1_billing, 224);
|
|
8128
8363
|
|
|
8129
8364
|
/**
|
|
8130
8365
|
* Metadata for the BulkTagBillingGroup long-running operation.
|
|
@@ -8195,7 +8430,7 @@ export type BulkTagBillingGroupMetadata = Message<"blueapi.billing.v1.BulkTagBil
|
|
|
8195
8430
|
* Use `create(BulkTagBillingGroupMetadataSchema)` to create a new message.
|
|
8196
8431
|
*/
|
|
8197
8432
|
export const BulkTagBillingGroupMetadataSchema: GenMessage<BulkTagBillingGroupMetadata> = /*@__PURE__*/
|
|
8198
|
-
messageDesc(file_billing_v1_billing,
|
|
8433
|
+
messageDesc(file_billing_v1_billing, 225);
|
|
8199
8434
|
|
|
8200
8435
|
/**
|
|
8201
8436
|
* Billing service definition.
|
|
@@ -8889,6 +9124,29 @@ export const Billing: GenService<{
|
|
|
8889
9124
|
input: typeof RestoreAllocateAdjustmentEntryRequestSchema;
|
|
8890
9125
|
output: typeof EmptySchema;
|
|
8891
9126
|
},
|
|
9127
|
+
/**
|
|
9128
|
+
* Creates custom fee entries in the RIPPLE_FEES table.
|
|
9129
|
+
* Used to write Guaranteed Commitment entries and Custom Fee entries directly to the fee table. Only available in Ripple.
|
|
9130
|
+
*
|
|
9131
|
+
* @generated from rpc blueapi.billing.v1.Billing.CreateCustomFee
|
|
9132
|
+
*/
|
|
9133
|
+
createCustomFee: {
|
|
9134
|
+
methodKind: "unary";
|
|
9135
|
+
input: typeof CreateCustomFeeRequestSchema;
|
|
9136
|
+
output: typeof CreateCustomFeeResponseSchema;
|
|
9137
|
+
},
|
|
9138
|
+
/**
|
|
9139
|
+
* Lists adjustment entry items from the fee table.
|
|
9140
|
+
* Reads fee entries from the RIPPLE_FEES table, optionally filtered by mobingi_type.
|
|
9141
|
+
* Note: Commitment entries (mobingi_type="COMMITMENT") are excluded from ReadAdjustmentEntries to avoid duplication with the Adjusting Entries UI. Only available in Ripple.
|
|
9142
|
+
*
|
|
9143
|
+
* @generated from rpc blueapi.billing.v1.Billing.ListAdjustmentEntryItems
|
|
9144
|
+
*/
|
|
9145
|
+
listAdjustmentEntryItems: {
|
|
9146
|
+
methodKind: "server_streaming";
|
|
9147
|
+
input: typeof ListAdjustmentEntryItemsRequestSchema;
|
|
9148
|
+
output: typeof AdjustmentEntryItemSchema;
|
|
9149
|
+
},
|
|
8892
9150
|
/**
|
|
8893
9151
|
* WORK-IN-PROGRESS: Returns all registered accounts that are not associated to any billing groups and accounts found in CUR for the specified month. For Ripple only
|
|
8894
9152
|
*
|