@alphauspkgs/blue-sdk-ts 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -51,7 +51,7 @@ import type { Message } from "@bufbuild/protobuf";
51
51
  * Describes the file billing/v1/billing.proto.
52
52
  */
53
53
  export const file_billing_v1_billing: GenFile = /*@__PURE__*/
54
- fileDesc("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SEmJsdWVhcGkuYmlsbGluZy52MSKOBAoMQmlsbGluZ0dyb3VwEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYByABKAkSDAoEdHlwZRgMIAEoCRI+ChBiaWxsaW5nR3JvdXBJbmZvGAogASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8SOgoOYWNjb3VudE9wdGlvbnMYCCABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSJgoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50EiIKBHRhZ3MYBiADKAsyFC5ibHVlYXBpLmFwaS5Db3N0VGFnEkgKD2ludm9pY2VTZXR0aW5ncxgFIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSSAoPYWRkaXRpb25hbEl0ZW1zGAsgASgLMi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIyCgphd3NPcHRpb25zGAkgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMioAEKG0JpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIpCgNhd3MYASADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKwoFYXp1cmUYAiADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKQoDZ2NwGAMgAygLMhwuYmx1ZWFwaS5hcGkuQWRkaXRpb25hbEl0ZW1zIu4BChtCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQwoDYXdzGAEgASgLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cFZlbmRvcmVkSW52b2ljZVNldHRpbmcSRQoFYXp1cmUYAiABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxJDCgNnY3AYAyABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZyLTAwoiQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJIpIBChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAkilAQKGUNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIUCgxiaWxsaW5nVGl0bGUYBCABKAkSEwoLcGhvbmVOdW1iZXIYBSABKAkSEgoKcG9zdGFsQ29kZRgGIAEoCRIPCgdhZGRyZXNzGAcgASgJEhAKCHBlcnNvbmFsGAggASgJEg8KB3JlbWFya3MYCSABKAkSEQoJcHJvamVjdElkGAogASgJEhAKCGxhbmd1YWdlGAsgASgJEhMKC2Rpc3BsYXlDb3N0GAwgASgJEhgKEGV4Y2hhbmdlUmF0ZVR5cGUYDSABKAkSOgoOYWNjb3VudE9wdGlvbnMYDyABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSRgoIaW52b2ljZXMYDiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USMgoKYXdzT3B0aW9ucxgQIAEoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NPcHRpb25zEgwKBGNpdHkYESABKAkSEgoKcHJlZmVjdHVyZRgSIAEoCRIPCgdjb3VudHJ5GBMgASgJIjUKCkF3c09wdGlvbnMSFgoOdXNlUHJvRm9ybWFDdXIYASABKAgSDwoHcGF5ZXJJZBgCIAEoCSKrAQoOQWNjb3VudE9wdGlvbnMSMQoDYXdzGAEgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMQoDZ2NwGAIgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMSMwoFYXp1cmUYAyABKAsyJC5ibHVlYXBpLmJpbGxpbmcudjEuUmVnaXN0ZXJBY2NvdW50cyI2ChBSZWdpc3RlckFjY291bnRzEg8KB2VuYWJsZWQYASABKAgSEQoJYWNjb3VudElkGAIgASgJIlQKDlZlbmRvckFjY291bnRzEg4KBnZlbmRvchgBIAEoCRIyCghhY2NvdW50cxgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50VG9BZGQiYAoMQXp1cmVPcHRpb25zEhUKDXJlc291cmNlR3JvdXAYASABKAgSGwoTYXBwbHlQY0Vhcm5lZENyZWRpdBgCIAEoCBIcChRhcHBseUNhbXBhaWduUHJpY2luZxgDIAEoCCKqBwofQ3JlYXRlQmlsbGluZ0dyb3VwTWVyZ2VkUmVxdWVzdBIWCg5iaWxsaW5nR3JvdXBJZBgBIAEoCRIYChBiaWxsaW5nR3JvdXBOYW1lGAIgASgJEhMKC2NvbXBhbnlOYW1lGAMgASgJEhQKDGJpbGxpbmdUaXRsZRgEIAEoCRITCgtwaG9uZU51bWJlchgFIAEoCRISCgpwb3N0YWxDb2RlGAYgASgJEg8KB2FkZHJlc3MYByABKAkSEAoIcGVyc29uYWwYCCABKAkSDwoHcmVtYXJrcxgJIAEoCRIRCglwcm9qZWN0SWQYCiABKAkSEAoIbGFuZ3VhZ2UYCyABKAkSEwoLZGlzcGxheUNvc3QYDCABKAkSGAoQZXhjaGFuZ2VSYXRlVHlwZRgNIAEoCRI6Cg5hY2NvdW50T3B0aW9ucxgPIAEoCzIiLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50T3B0aW9ucxJGCghpbnZvaWNlcxgOIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRIyCgphd3NPcHRpb25zGBAgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMSDAoEY2l0eRgRIAEoCRISCgpwcmVmZWN0dXJlGBIgASgJEg8KB2NvdW50cnkYEyABKAkSGQoRaW52b2ljZVRlbXBsYXRlSWQYFCABKAkSMwoLdGFnU2V0dGluZ3MYFSADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGBYgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmcSOgoOdmVuZG9yQWNjb3VudHMYFyADKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuVmVuZG9yQWNjb3VudHMSWwoMY3VzdG9tRmllbGRzGBggAygLMkUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZFJlcXVlc3QuQ3VzdG9tRmllbGRzRW50cnkSNgoMYXp1cmVPcHRpb25zGBkgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkF6dXJlT3B0aW9ucxozChFDdXN0b21GaWVsZHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIv8BCiBDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZRJHCgNhd3MYASABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISSQoFYXp1cmUYAiABKAsyOi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISRwoDZ2NwGAMgASgLMjouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlVmVuZG9yItcDCiZDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZVZlbmRvchIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJImMKFkdldEJpbGxpbmdHcm91cFJlcXVlc3QSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUQoXR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2USNgoMYmlsbGluZ0dyb3VwGAEgASgLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCKWAQoLQWNjZXNzR3JvdXASFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIXCg9hY2Nlc3NHcm91cE5hbWUYAiABKAkSHgoWYWNjZXNzR3JvdXBEZXNjcmlwdGlvbhgDIAEoCRI3Cg1iaWxsaW5nR3JvdXBzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCJeChVHZXRBY2Nlc3NHcm91cFJlcXVlc3QSFQoNYWNjZXNzR3JvdXBJZBgBIAEoCRIuCgpmaWVsZF9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJOChZHZXRBY2Nlc3NHcm91cFJlc3BvbnNlEjQKC2FjY2Vzc0dyb3VwGAEgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY2Vzc0dyb3VwIq8CChJBd3NEYWlseVJ1bkhpc3RvcnkSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDQoFbW9udGgYAyABKAkSQAoIYWNjb3VudHMYBCADKAsyLi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQalAEKB0FjY291bnQSEQoJYWNjb3VudElkGAEgASgJEkcKB2hpc3RvcnkYAiADKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5LkFjY291bnQuSGlzdG9yeRotCgdIaXN0b3J5EhEKCXRpbWVzdGFtcBgBIAEoCRIPCgd0cmlnZ2VyGAIgASgJIj8KHUxpc3RBd3NEYWlseVJ1bkhpc3RvcnlSZXF1ZXN0Eg0KBW1vbnRoGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiVgoaTGlzdFVzYWdlQ29zdHNEcmlmdFJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhkKEWJpbGxpbmdJbnRlcm5hbElkGAIgASgJEg0KBW1vbnRoGAMgASgJIoYBCg9Vc2FnZUNvc3RzRHJpZnQSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSDwoHYWNjb3VudBgDIAEoCRIQCghzbmFwc2hvdBgEIAEoARIPCgdjdXJyZW50GAUgASgBEgwKBGRpZmYYBiABKAEiMgoRR2V0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIPCgdncm91cElkGAIgASgJIjkKGEV4cG9ydEludm9pY2VGaWxlUmVxdWVzdBIMCgRkYXRlGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiKAoZRXhwb3J0SW52b2ljZUZpbGVSZXNwb25zZRILCgN1cmwYASABKAkiNQojUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIiQKIkxpc3RJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QiXgohR2V0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJEi0KCWZpZWxkTWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siagoXSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdjcmVhdGVkGAQgASgJEg8KB3VwZGF0ZWQYBSABKAkiHAoaTGlzdEludm9pY2VUZW1wbGF0ZVJlcXVlc3QiXQooVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIfChFpbnZvaWNlVGVtcGxhdGVJZBgCIAEoCUIE4kEBAiKeAgobTGlzdEludm9pY2VUZW1wbGF0ZVJlc3BvbnNlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHY3JlYXRlZBgEIAEoCRIPCgd1cGRhdGVkGAUgASgJEhkKEW51bWJlck9mQ29ubmVjdGVkGAYgASgFElAKFWNvbm5lY3RlZEJpbGxpbmdHcm91cBgHIAMoCzIxLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlQ29ubmVjdGVkQmlsbGluZ0dyb3VwcxJBCghpbnZvaWNlcxgIIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiIgogR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QiSAohR2V0SW52b2ljZURpc3BsYXlTZXR0aW5nc1Jlc3BvbnNlEiMKG3Nob3dSSVNQVXBmcm9udFRpbWVJbnRlcnZhbBgBIAEoCCKsAQojVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QSVQoHc2V0dGluZxgBIAMoCzJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdC5TZXR0aW5nRW50cnkaLgoMU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEibAodSW52b2ljZUNvbm5lY3RlZEJpbGxpbmdHcm91cHMSGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCSI8CilMaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIocBCh5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSCgoCaWQYASABKAkSDwoHYWNjb3VudBgCIAEoCRJIChBzZXJ2aWNlRGlzY291bnRzGAMgASgLMi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIjgKF0FjY291bnRTZXJ2aWNlRGlzY291bnRzEgoKAmlkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCSJ9CitDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMibQosQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMifQorVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIm0KLFVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIj4KK0RlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSJ9CitSZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSPQoIYWNjb3VudHMYBCADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHMiTwowQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSCgoCaWQYAiABKAkiPwoxQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSJPCjBVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIKCgJpZBgCIAEoCSI/CjFVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEgoKAmlkGAEgASgJIkMKMERlbGV0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIlcKFENyZWF0ZUludm9pY2VSZXF1ZXN0EgwKBGRhdGUYBCABKAkSDgoGdmVuZG9yGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkiJQoXR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QSCgoCaWQYASABKAkiKAoYTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0EgwKBGRhdGUYASABKAkiYAocVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBIMCgRkYXRlGAEgASgJEhEKCWFsbEdyb3VwcxgCIAEoCBIOCgZncm91cHMYAyADKAkSDwoHZW5hYmxlZBgEIAEoCCLPAQoVQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDQoFZW1haWwYAiABKAkSEAoIcGFzc3dvcmQYAyABKAkSFAoMbm90aWZpY2F0aW9uGAQgASgIEjYKCndhdmVDb25maWcYBSADKAsyIi5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXJDb25maWcSNgoKYXF1YUNvbmZpZxgGIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZyJGChRMaXN0UmVzZWxsZXJzUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayJQChJHZXRSZXNlbGxlclJlcXVlc3QSCgoCaWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sipgIKFVVwZGF0ZVJlc2VsbGVyUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhITCgVlbWFpbBgCIAEoCUIE4kEBARIXCghwYXNzd29yZBgDIAEoCUIF4kECBAESPAoKd2F2ZUNvbmZpZxgEIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZ0IE4kEBARI8CgphcXVhQ29uZmlnGAUgAygLMiIuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyQ29uZmlnQgTiQQEBEhsKDG5vdGlmaWNhdGlvbhgGIAEoCEIF4kECBAESNAoKdXBkYXRlTWFzaxgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiIwoVRGVsZXRlUmVzZWxsZXJSZXF1ZXN0EgoKAmlkGAEgASgJIkoKGEdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBIuCgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFzayLHAgoZR2V0QmlsbGluZ1NldHRpbmdSZXNwb25zZRIwCgl5ZWFyTW9udGgYASADKAsyHS5ibHVlYXBpLmFwaS5yaXBwbGUuWWVhck1vbnRoEjQKDnJvdW5kaW5nTWV0aG9kGAIgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjoKFGV4cG9ydFJvdW5kaW5nTWV0aG9kGAMgASgLMhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJvdW5kaW5nEjgKDWludm9pY2VMYXlvdXQYBCABKAsyIS5ibHVlYXBpLmFwaS5yaXBwbGUuSW52b2ljZUxheW91dBIzCg5pbnZvaWNlRHVlRGF0ZRgFIAEoCzIbLmJsdWVhcGkuYXBpLnJpcHBsZS5EdWVEYXRlEhcKD3N1cHBvcnRDdXJyZW5jeRgGIAMoCSI5ChhMaXN0RXhjaGFuZ2VSYXRlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJImUKHFNldEdsb2JhbEV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASJ3ChtTZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIQCghjdXJyZW5jeRgEIAEoCRIUCgxleGNoYW5nZVJhdGUYBSABKAEibAoiU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg0KBW1vbnRoGAIgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgEIAEoASLiAQoZTGlzdEV4Y2hhbmdlUmF0ZXNSZXNwb25zZRINCgVtb250aBgBIAEoCRI2CgZjb21tb24YAiABKAsyJi5ibHVlYXBpLmFwaS5yaXBwbGUuQ29tbW9uRXhjaGFuZ2VSYXRlEkIKDGJpbGxpbmdHcm91cBgDIAMoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSOgoFcGF5ZXIYBCABKAsyKy5ibHVlYXBpLmFwaS5yaXBwbGUuVmVuZG9yUGF5ZXJFeGNoYW5nZVJhdGUiSQoXTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siVAoYQ3JlYXRlQWNjZXNzR3JvdXBSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSFQoNYmlsbGluZ0dyb3VwcxgDIAMoCSJgChhVcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAQgAygJIiYKGERlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCSIyChJMaXN0SW52b2ljZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAki8ggKE0xpc3RJbnZvaWNlUmVzcG9uc2USGQoRYmlsbGluZ0ludGVybmFsSWQYASABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIaChJmaW5hbGl6YXRpb25TdGF0dXMYBSABKAkSEQoJaXNDcmVhdGVkGAYgASgIEhkKEWlzU2V0dGluZ01vZGlmaWVkGAcgASgIEhMKC2NyZWF0ZWREYXRlGAggASgJEhMKC3VwZGF0ZWREYXRlGAkgASgJEhYKDmNyZWF0ZWRWZW5kb3JzGAogAygJEhMKC2lzUHVibGlzaGVkGAsgASgIEl0KE3ZlbmRvckJpbGxpbmdBbW91bnQYDCADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5WZW5kb3JCaWxsaW5nQW1vdW50RW50cnkSGgoSYmlsbGluZ0Ftb3VudFRvdGFsGA0gASgJEhAKCGN1cnJlbmN5GA4gASgJEg0KBXVybElkGA8gASgJEm0KG2NyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZxgQIAMoCzJILmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlc3BvbnNlLkNyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EmkKGXNhdmVkVmVuZG9ySW52b2ljZVNldHRpbmcYESADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5TYXZlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSbQobZGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nGBIgAygLMkguYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UuRGVmYXVsdFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkaOgoYVmVuZG9yQmlsbGluZ0Ftb3VudEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaZwogQ3JlYXRlZFZlbmRvckludm9pY2VTZXR0aW5nRW50cnkSCwoDa2V5GAEgASgJEjIKBXZhbHVlGAIgASgLMiMuYmx1ZWFwaS5iaWxsaW5nLnYxLkludm9pY2VTZXR0aW5nczoCOAEaZQoeU2F2ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBGmcKIERlZmF1bHRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBIikKG0xpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBIKCgJpZBgBIAEoCSJOCiJMaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Eg8KB3BheWVySWQYASABKAkSFwoPYmlsbGluZ0dyb3VwQXJuGAIgASgJIo8BCg9BYmNCaWxsaW5nR3JvdXASCwoDYXJuGAEgASgJEgwKBG5hbWUYAiABKAkSFAoMY3JlYXRpb25UaW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhgKEHByaW1hcnlBY2NvdW50SWQYBSABKAkSDAoEc2l6ZRgGIAEoCRIOCgZzdGF0dXMYByABKAkiNAoKQWJjQWNjb3VudBIRCglhY2NvdW50SWQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkiYgodUmVhZEludm9pY2VBZGp1c3RtZW50c1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRINCgVtb250aBgDIAEoCRIPCgdmZWVUeXBlGAQgASgJIpkBChxSZWFkQWRqdXN0bWVudEVudHJpZXNSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhITCgVtb250aBgCIAEoCUIE4kEBARpOCiJBZGp1c3RtZW50RW50cmllc1JlcXVlc3RBd3NPcHRpb25zEhMKC3NwcERpc2NvdW50GAEgASgIEhMKC2VkcERpc2NvdW50GAIgASgIIkMKGUdldEFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEhAKAmlkGAIgASgJQgTiQQECIp4DChtBcHBseUFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECElMKB3NldHRpbmcYAiABKAsyPC5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZ0IE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECGvwBCgxBcHBseVNldHRpbmcSEwoFbW9udGgYASABKAlCBOJBAQESFQoHdGF4RnJlZRgCIAEoCEIE4kEBARJqCgxleGNoYW5nZVJhdGUYAyADKAsyTi5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFwcGx5U2V0dGluZy5FeGNoYW5nZVJhdGVFbnRyeUIE4kEBARIfChFiaWxsaW5nSW50ZXJuYWxJZBgEIAEoCUIE4kEBARozChFFeGNoYW5nZVJhdGVFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBIkwKHVJlc3RvcmVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIVCgdlbnRyaWVzGAMgAygJQgTiQQECIl8KG1NwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQISGAoKc3RhcnRNb250aBgDIAEoCUIE4kEBAiL8AQoeQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAhJWCgZjb25maWcYAyADKAsyQC5ibHVlYXBpLmJpbGxpbmcudjEuQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0LkFjY291bnRDb25maWdCBOJBAQISIQoTYWNjb3VudEZvclJlbWFpbmluZxgEIAEoCUIE4kEBAho3Cg1BY2NvdW50Q29uZmlnEhAKAmlkGAEgASgJQgTiQQECEhQKBmFtb3VudBgCIAEoAUIE4kEBAiJMCiJSZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiJPCiVSZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiI8ChtMaXN0QWNjb3VudFJlc291cmNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJIkoKD1Jlc291cmNlQWNjb3VudBIPCgdwYXllcklkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSEgoKcmVnaXN0ZXJlZBgDIAEoCCIsChpHZXRBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkijQEKHUNyZWF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIqCgZjb25maWcYAiADKAsyGi5ibHVlYXBpLmFwaS5Db25maWdGaWx0ZXJzEjAKCGFjY291bnRzGAMgAygLMh4uYmx1ZWFwaS5hcGkuTWFuYWdlbWVudEFjY291bnQijQEKHVVwZGF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIqCgZjb25maWcYAiADKAsyGi5ibHVlYXBpLmFwaS5Db25maWdGaWx0ZXJzEjAKCGFjY291bnRzGAMgAygLMh4uYmx1ZWFwaS5hcGkuTWFuYWdlbWVudEFjY291bnQiLwodRGVsZXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJImcKGVJlYWRVbnRhZ2dlZEdyb3Vwc1JlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEjQKCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBIlwKJFJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzUmVxdWVzdBI0CgpmaWVsZF9tYXNrGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBASJmCiJHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EgoKAmlkGAEgASgJEjQKCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQEBInwKJUNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIwCgZjb25maWcYAyABKAsyIC5ibHVlYXBpLmFwaS5yaXBwbGUuTWV0aG9kQ29uZmlnIsUBCiVVcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECElQKGGN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRgCIAEoCzIsLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCBOJBAQISNAoKdXBkYXRlTWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMwolRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIKCgJpZBgBIAEoCSJdCi5HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIskBCi9HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXNwb25zZRIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAyABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISLAoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50QgTiQQEBIvcCCi5TZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEoABCgdzZXR0aW5nGAMgAygLMmkuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQIalAEKJkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nEhAKAmlkGAEgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAIgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEhYKCGFjY291bnRzGAMgAygJQgTiQQEBImAKMURlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QSFQoHZ3JvdXBJZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQIikQEKJENyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEkYKB3NldHRpbmcYAyABKAsyNS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHNTZXR0aW5nIsUBCiRVcGRhdGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISVQoXaW52b2ljZVNlcnZpY2VEaXNjb3VudHMYAiABKAsyLi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHNCBOJBAQISNAoKdXBkYXRlTWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMgokRGVsZXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EgoKAmlkGAEgASgJIm4KB1RhZ0RhdGESEgoKY3VzdG9tZXJJZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSFAoMY3VzdG9tZXJOYW1lGAMgASgJEiYKBHRhZ3MYBCADKAsyGC5ibHVlYXBpLmJpbGxpbmcudjEuVGFncyIjCgRUYWdzEgsKA2tleRgBIAEoCRIOCgZ2YWx1ZXMYAiADKAkiLgoOR2V0VGFnc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEgwKBHR5cGUYAiABKAkiOwoLQ3VzdG9tRmllbGQSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIl4KF0JpbGxpbmdHcm91cEN1c3RvbUZpZWxkEg0KBXZhbHVlGAEgASgJEjQKC2N1c3RvbUZpZWxkGAIgASgLMh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIjUKIkxpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSKFAQojTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVzcG9uc2USDwoHZ3JvdXBJZBgBIAEoCRJNChhiaWxsaW5nR3JvdXBDdXN0b21GaWVsZHMYAiADKAsyKy5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQiPAoYQ3JlYXRlQ3VzdG9tRmllbGRSZXF1ZXN0EgsKA2tleRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCSJIChhVcGRhdGVDdXN0b21GaWVsZFJlcXVlc3QSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJIiYKGERlbGV0ZUN1c3RvbUZpZWxkUmVxdWVzdBIKCgJpZBgBIAEoCSIYChZMaXN0Q3VzdG9tRmllbGRSZXF1ZXN0ImsKF0NyZWF0ZUZyZWVGb3JtYXRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDgoGdmVuZG9yGAIgASgJEi8KBWl0ZW1zGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSJhCgxGcmVlRm9ybUl0ZW0SDQoFbGFiZWwYASABKAkSEAoIdW5pdENvc3QYAiABKAMSDQoFdG90YWwYBSABKAMSEAoIcXVhbnRpdHkYAyABKA0SDwoHZW5hYmxlZBgEIAEoCCI6ChdEZWxldGVGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCSI9ChRHZXRGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEhQKDGlzQXNzb2NpYXRlZBgCIAEoCCJuChVHZXRGcmVlRm9ybWF0UmVzcG9uc2USDwoHZ3JvdXBJZBgDIAEoCRIOCgZ2ZW5kb3IYASABKAkSNAoKZnJlZUZvcm1hdBgCIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0idwoeVXBkYXRlVGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIPCgdncm91cElkGAIgASgJEjQKBWl0ZW1zGAMgAygLMiUuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3NBZGRpbmdTZXR0aW5nIj4KG0dldFRhZ3NBZGRpbmdTZXR0aW5nUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDwoHZ3JvdXBJZBgCIAEoCSJJChFUYWdzQWRkaW5nU2V0dGluZxIPCgdncm91cElkGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSDwoHdGFnS2V5cxgDIAMoCSJNCh1FeHBvcnRTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQEibworRXhwb3J0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIUCgZmb3JtYXQYASABKAlCBOJBAQISFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQESEgoKZGlyZWN0TGluaxgDIAEoCCJ0CjBFeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSFAoGZm9ybWF0GAEgASgJQgTiQQECEhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBEhIKCmRpcmVjdExpbmsYAyABKAgiNgocRXhwb3J0QmlsbGluZ0dyb3VwQ3N2UmVxdWVzdBIWCghsYW5ndWFnZRgCIAEoCUIE4kEBASI1Ch1FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXNwb25zZRIUCgxkb3dubG9hZExpbmsYASABKAkiXAoeRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXF1ZXN0EhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBEiIKFGluY2x1ZGVNaXNjZWxsYW5lb3VzGAMgASgIQgTiQQEBIjcKH0V4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVzcG9uc2USFAoMZG93bmxvYWRMaW5rGAEgASgJIkAKLUdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIjwKLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USCgoCaWQYASABKAkiuQEKIUFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBIPCgdncm91cElkGAEgASgJElMKB2lkVG9LZXkYAiADKAsyQi5ibHVlYXBpLmJpbGxpbmcudjEuQWRkQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0LklkVG9LZXlFbnRyeRouCgxJZFRvS2V5RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJOCiREZWxldGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIVCg1jdXN0b21GaWVsZElkGAIgASgJInYKH0FkZEFjY291bnRUb0JpbGxpbmdHcm91cFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSMgoIYWNjb3VudHMYAyADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFRvQWRkIlEKDEFjY291bnRUb0FkZBISCgpjdXN0b21lcklkGAEgASgJEhEKCWFjY291bnRJZBgCIAEoCRIMCgRuYW1lGAMgASgJEgwKBG5vdGUYBCABKAkiqwEKHEFkZFRhZ3NUb0JpbGxpbmdHcm91cFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSMAoIc2V0dGluZ3MYAyADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI4Cg1ub25UYWdTZXR0aW5nGAQgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmciRwoKVGFnU2V0dGluZxISCgpjdXN0b21lcklkGAEgASgJEiUKBHRhZ3MYAiADKAsyFy5ibHVlYXBpLmJpbGxpbmcudjEuVGFnIjEKA1RhZxILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkSDgoGYXNzaWduGAMgASgFIj4KDU5vblRhZ1NldHRpbmcSDwoHaW5jbHVkZRgBIAEoCBIMCgR0eXBlGAIgASgJEg4KBmFtb3VudBgDIAEoASI+Ch1TYXZlVGFnSW52b2ljZVNldHRpbmdSZXNwb25zZRIOCgZzdGF0dXMYASABKAkSDQoFZXJyb3IYAiABKAkifgomVXBkYXRlTm9uVGFnR3JvdXBUb0JpbGxpbmdHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEjgKCHNldHRpbmdzGAMgAygLMiYuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ0dyb3VwU2V0dGluZyI+ChJOb25UYWdHcm91cFNldHRpbmcSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRIOCgZhbW91bnQYAyABKAEimgEKGlNhdmVJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EgwKBGRhdGUYASABKAkSDgoGdmVuZG9yGAIgASgJEhEKCWFsbEdyb3VwcxgDIAEoCBIOCgZncm91cHMYBCADKAkSOwoOaW52b2ljZVNldHRpbmcYBSABKAsyIy5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZVNldHRpbmdzIpUECg9JbnZvaWNlU2V0dGluZ3MSEQoJaW52b2ljZU5vGAIgASgJEhQKDGRpc2NvdW50UmF0ZRgEIAEoARIbChNkaXNjb3VudFRhcmdldFVzYWdlGAUgASgJEhkKEWRpc2NvdW50Q2FsY0xvZ2ljGAYgASgJEg8KB3RheFJhdGUYByABKAESEgoKc3VwcG9ydEZlZRgIIAEoCRITCgtzdXBwb3J0UmF0ZRgJIAEoARIcChRzdXBwb3J0RmVlQ2FsY1RhcmdldBgKIAEoCRISCgpzdXBwb3J0Rml4GAsgASgBEhcKD3N1YnN0aXR1dGlvbkZlZRgMIAEoCRIYChBzdWJzdGl0dXRpb25SYXRlGA0gASgBEhcKD3N1YnN0aXR1dGlvbkZpeBgOIAEoARIhChlzdWJzdGl0dXRpb25GZWVDYWxjVGFyZ2V0GA8gASgJEiIKGnN1YnN0aXR1dGlvbkZlZVRhcmdldFVzYWdlGBAgASgJEh8KF3N1YnN0aXR1dGlvbkZlZUNhbGNUeXBlGBEgASgJEhAKCGN1cnJlbmN5GAMgASgJEhQKDGV4Y2hhbmdlUmF0ZRgSIAEoARIMCgRtZW1vGBMgASgJEhAKCGNhbGNUeXBlGBQgASgJEjkKD2FkZGl0aW9uYWxJdGVtcxgVIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0irQMKEEJhc2ljSW5mb3JtYXRpb24SGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCRIWCglhZGRyZXNzZWUYBSABKAlIAIgBARIUCgdjb3VudHJ5GAYgASgJSAGIAQESFwoKcG9zdGFsQ29kZRgHIAEoCUgCiAEBEhEKBGNpdHkYCCABKAlIA4gBARIYCgtwaG9uZU51bWJlchgJIAEoCUgEiAEBEhkKDGFkZHJlc3NMaW5lMRgKIAEoCUgFiAEBEhkKDGFkZHJlc3NMaW5lMhgLIAEoCUgGiAEBEhIKBXN0YXRlGAwgASgJSAeIAQESFwoKcHJlZmVjdHVyZRgNIAEoCUgIiAEBQgwKCl9hZGRyZXNzZWVCCgoIX2NvdW50cnlCDQoLX3Bvc3RhbENvZGVCBwoFX2NpdHlCDgoMX3Bob25lTnVtYmVyQg8KDV9hZGRyZXNzTGluZTFCDwoNX2FkZHJlc3NMaW5lMkIICgZfc3RhdGVCDQoLX3ByZWZlY3R1cmUidwopVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvblJlcXVlc3QSCgoCaWQYASABKAkSPgoQYmFzaWNJbmZvcm1hdGlvbhgCIAEoCzIkLmJsdWVhcGkuYmlsbGluZy52MS5CYXNpY0luZm9ybWF0aW9uIrwBCiVVcGRhdGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZHNSZXF1ZXN0EgoKAmlkGAEgASgJElcKB2lkVG9LZXkYAiADKAsyRi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzUmVxdWVzdC5JZFRvS2V5RW50cnkaLgoMSWRUb0tleUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEicgojVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdFJlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEi8KBWl0ZW1zGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkZyZWVGb3JtSXRlbSLqAgooVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzUmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSFwoPc2VsZWN0aW9uTWV0aG9kGAMgASgJEjIKCGFjY291bnRzGAQgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRUb0FkZBIwCghzZXR0aW5ncxgFIAMoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5UYWdTZXR0aW5nEj0KDW5vblRhZ1NldHRpbmcYBiABKAsyIS5ibHVlYXBpLmJpbGxpbmcudjEuTm9uVGFnU2V0dGluZ0gAiAEBEj8KDmFjY291bnRPcHRpb25zGAcgASgLMiIuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRPcHRpb25zSAGIAQFCEAoOX25vblRhZ1NldHRpbmdCEQoPX2FjY291bnRPcHRpb25zIrgBCihVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0EgoKAmlkGAEgASgJEhkKDGJpbGxpbmdUaXRsZRgCIAEoCUgAiAEBEhwKD2NhbGN1bGF0aW9uVHlwZRgDIAEoCUgBiAEBEhUKCGxhbmd1YWdlGAQgASgJSAKIAQFCDwoNX2JpbGxpbmdUaXRsZUISChBfY2FsY3VsYXRpb25UeXBlQgsKCV9sYW5ndWFnZSKvAQooVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9pbnZvaWNlVGVtcGxhdGUYAiABKAlIAIgBARJFCgdpbnZvaWNlGAMgASgLMjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlQhIKEF9pbnZvaWNlVGVtcGxhdGUivwQKKlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdBIKCgJpZBgBIAEoCRJ4CgNhd3MYAiADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECEnoKBWF6dXJlGAMgAygLMmUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhJ4CgNnY3AYBCADKAsyZS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECGpQBCiZDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZxIQCgJpZBgBIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgCIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIWCghhY2NvdW50cxgDIAMoCUIE4kEBASInChlEZWxldGVCaWxsaW5nR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJIlIKKEdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIqABCilHZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXNwb25zZRIKCgJpZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSDwoHZW5hYmxlZBgDIAEoCBJGCgdzZXR0aW5nGAQgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbiLwAQorVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISFQoHZW5hYmxlZBgDIAEoCEIE4kEBARJMCgdzZXR0aW5nGAQgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbkIE4kEBARI0Cgp1cGRhdGVNYXNrGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBAiIxChdHZXRBbm5vdW5jZW1lbnRzUmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCSKnAQoZQ3JlYXRlQW5ub3VuY2VtZW50UmVxdWVzdBINCgVsYWJlbBgBIAEoCRIMCgR0eXBlGAIgASgJEhAKCGNvbnRlbnRzGAMgASgJEhUKDWJpbGxpbmdHcm91cHMYBCADKAkSGAoQYWxsQmlsbGluZ0dyb3VwcxgFIAEoCBINCgVzdGFydBgGIAEoAxILCgNlbmQYByABKAMSDgoGc3RhdHVzGAggASgJIngKGVVwZGF0ZUFubm91bmNlbWVudFJlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASABKAkSQwoMYW5ub3VuY2VtZW50GAIgASgLMi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFubm91bmNlbWVudFJlcXVlc3QiSgogVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1c1JlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASADKAkSDgoGc3RhdHVzGAIgASgJIkUKHVVwZGF0ZUFubm91bmNlbWVudERhdGVSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgAygJEgwKBGRhdGUYAiABKAMiMwoZRGVsZXRlQW5ub3VuY2VtZW50UmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAEoCSLpAQoMQW5ub3VuY2VtZW50EgoKAmlkGAEgASgJEg0KBWxhYmVsGAIgASgJEgwKBHR5cGUYAyABKAkSDwoHbWVzc2FnZRgEIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAUgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYDSABKAgSDQoFc3RhcnQYBiABKAkSCwoDZW5kGAcgASgJEgwKBGRhdGUYCCABKAkSDgoGc3RhdHVzGAkgASgJEhIKCnVzZXJTdGF0dXMYCiABKAkSDwoHY3JlYXRlZBgLIAEoCRIPCgd1cGRhdGVkGAwgASgJIjYKI0dldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkilgEKJEdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHNSZXNwb25zZRIPCgdncm91cElkGAEgASgJEhEKCWdyb3VwTmFtZRgCIAEoCRIRCgljb21wYW55SWQYAyABKAkSNwoNYW5ub3VuY2VtZW50cxgEIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5Bbm5vdW5jZW1lbnQiEwoRR2V0Q3JlZGl0c1JlcXVlc3QixAEKBkNyZWRpdBIKCgJpZBgBIAEoCRISCgpjdXN0b21lcklkGAIgASgJEhQKDGN1c3RvbWVyTmFtZRgDIAEoCRIUCgxjcmVkaXRBbW91bnQYBCABKAESDAoEdGVybRgFIAEoCRITCgtkZXNjcmlwdGlvbhgGIAEoCRIPCgdjcmVhdGVkGAcgASgJEhIKCmluaXRpYWxGZWUYCCABKAESFQoNY3JlZGl0QmFsYW5jZRgJIAEoARIPCgdhcHBsaWVkGAogASgIIhcKFUdldENzdlNldHRpbmdzUmVxdWVzdCKkAQoKQ3N2U2V0dGluZxIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEjIKA2NvbBgDIAMoCzIlLmJsdWVhcGkuYmlsbGluZy52MS5Dc3ZTZXR0aW5nLkNvbHVtbhpICgZDb2x1bW4SDAoEbmFtZRgBIAEoCRIKCgJpZBgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdlbmFibGVkGAQgASgIIuYBCiBVcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdBINCgVtb250aBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSXAoMZXhjaGFuZ2VSYXRlGAMgAygLMkYuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VFeGNoYW5nZVJhdGVSZXF1ZXN0LkV4Y2hhbmdlUmF0ZUVudHJ5EhAKCGdyb3VwSWRzGAQgAygJGjMKEUV4Y2hhbmdlUmF0ZUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoAToCOAEiWwoaQ29udmVydEludm9pY2VUb1BkZlJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIVCg1iaWxsaW5nZ3JvdXBzGAIgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYAyABKAgiRAobQ29udmVydEludm9pY2VUb1BkZlJlc3BvbnNlEhAKCHByb2dyZXNzGAEgASgJEhMKC2Rvd25sb2FkVXJsGAIgASgJIogCCiFMaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZFJlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAkSEwoLY29tcGFueU5hbWUYBiABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgHIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgIIAEoCRIQCghwYWdlU2l6ZRgJIAEoBRISCgpwYWdlTnVtYmVyGAogASgFIpcCChRCaWxsaW5nR3JvdXBMaXN0SXRlbRIYChBiaWxsaW5nR3JvdXBOYW1lGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhMKC2NvbXBhbnlOYW1lGAMgASgJEhgKEGJpbGxpbmdHcm91cFR5cGUYBCABKAkSTAoHdmVuZG9ycxgFIAMoCzI7LmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBMaXN0SXRlbS5CaWxsaW5nR3JvdXBWZW5kb3ISGQoRYmlsbGluZ0ludGVybmFsSWQYBiABKAkaNQoSQmlsbGluZ0dyb3VwVmVuZG9yEg4KBnZlbmRvchgBIAEoCRIPCgdlbmFibGVkGAIgASgIIrQBCiJMaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZFJlc3BvbnNlEj8KDWJpbGxpbmdHcm91cHMYASADKAsyKC5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwTGlzdEl0ZW0SEgoKdG90YWxDb3VudBgCIAEoBRITCgtjdXJyZW50UGFnZRgDIAEoBRIQCghwYWdlU2l6ZRgEIAEoBRISCgp0b3RhbFBhZ2VzGAUgASgFIo4BCiFDaGlsZEJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SCgoCaWQYASABKAkSEgoKaW50ZXJuYWxJZBgGIAEoCRIQCghwYXJlbnRJZBgCIAEoCRIUCgxyb290UGFyZW50SWQYBSABKAkSDAoEbmFtZRgDIAEoCRITCgtjb21wYW55TmFtZRgEIAEoCSK+AQokQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEhAKAmlkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgDIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIsCghhY2NvdW50cxgEIAMoCzIULmJsdWVhcGkuYXBpLkFjY291bnRCBOJBAQEi7gEKEUNoaWxkQmlsbGluZ0dyb3VwEk8KEGJhc2ljSW5mb3JtYXRpb24YASABKAsyNS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEk0KD2ludm9pY2VTZXR0aW5ncxgCIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncxI5CgtiaWxsaW5nSW5mbxgDIAEoCzIkLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBJbmZvIuUBCiBDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncxJDCgNhd3MYASABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIhChlhY2NvdW50U3VwcG9ydFBsYW5FbmFibGVkGAIgASgIElkKGmFjY291bnRTdXBwb3J0UGxhblNldHRpbmdzGAMgAygLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbiLAAQoeQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0Ek8KEGJhc2ljSW5mb3JtYXRpb24YASABKAsyNS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEk0KD2ludm9pY2VTZXR0aW5ncxgCIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncyIhCh9DcmVhdGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIjEKG0dldENoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJIlYKHEdldENoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2USNgoHZGV0YWlscxgBIAEoCzIlLmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cCJBCh1MaXN0Q2hpbGRCaWxsaW5nR3JvdXBzUmVxdWVzdBIOCgZyb290SWQYASABKAkSEAoIcGFyZW50SWQYAiABKAkiwAEKHlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJEk8KEGJhc2ljSW5mb3JtYXRpb24YAiABKAsyNS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEjkKC2JpbGxpbmdJbmZvGAMgASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8iIQofVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSI0Ch5EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCSIhCh9EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIpIBCi1VcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCRJNCg9pbnZvaWNlU2V0dGluZ3MYAiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiMAouVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXNwb25zZSJfCh1CdWxrQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdBI+CgdyZXF1ZXN0GAEgAygLMi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QimgEKHkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXNwb25zZRI3Cg1iaWxsaW5nR3JvdXBzGAEgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cBI/CgZlcnJvcnMYAiADKAsyLy5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0NyZWF0ZUJpbGxpbmdHcm91cEVycm9yIlUKG0J1bGtDcmVhdGVCaWxsaW5nR3JvdXBFcnJvchINCgVpbmRleBgBIAEoBRIWCg5iaWxsaW5nR3JvdXBJZBgCIAEoCRIPCgdtZXNzYWdlGAMgASgJIrkBChNFeGNsdWRlU2VydmljZUVudHJ5Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEAoIcGF5ZXJfaWQYAyABKAkSDwoHc2VydmljZRgEIAEoCRIPCgdwcm9kdWN0GAUgASgJEhcKD2V4Y2VwdF9wYXllcl9pZBgGIAMoCRIOCgZhY3Rpb24YByABKAkSDgoGc3RhdHVzGAggASgJEhUKDWVycm9yX21lc3NhZ2UYCSABKAkijwEKIENyZWF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEAoIcGF5ZXJfaWQYAyABKAkSDwoHc2VydmljZRgEIAEoCRIPCgdwcm9kdWN0GAUgASgJEhcKD2V4Y2VwdF9wYXllcl9pZBgGIAMoCSJbCiFDcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVzcG9uc2USNgoFZW50cnkYASABKAsyJy5ibHVlYXBpLmJpbGxpbmcudjEuRXhjbHVkZVNlcnZpY2VFbnRyeSKPAQogVXBkYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkSFwoPZXhjZXB0X3BheWVyX2lkGAYgAygJIlsKIVVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZRI2CgVlbnRyeRgBIAEoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5InYKIERlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSEAoIcGF5ZXJfaWQYAyABKAkSDwoHc2VydmljZRgEIAEoCRIPCgdwcm9kdWN0GAUgASgJIlsKIURlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZRI2CgVlbnRyeRgBIAEoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5IjwKGkxpc3RFeGNsdWRlU2VydmljZXNSZXF1ZXN0Eg4KBm1zcF9pZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkiVwobTGlzdEV4Y2x1ZGVTZXJ2aWNlc1Jlc3BvbnNlEjgKB2VudHJpZXMYASADKAsyJy5ibHVlYXBpLmJpbGxpbmcudjEuRXhjbHVkZVNlcnZpY2VFbnRyeTLaowEKB0JpbGxpbmcSgAEKEUxpc3RCaWxsaW5nR3JvdXBzEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBzUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiGYLT5JMCExIRL3YxL2JpbGxpbmdncm91cHMwARKwAQoaTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWQSNS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWRSZXF1ZXN0GjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBzUGFnaW5hdGVkUmVzcG9uc2UiI4LT5JMCHRIbL3YxL2JpbGxpbmdncm91cHM6cGFnaW5hdGVkEoMBChJDcmVhdGVCaWxsaW5nR3JvdXASLS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiHILT5JMCFjoBKiIRL3YxL2JpbGxpbmdncm91cHMSlgEKGENyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZBIzLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBNZXJnZWRSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCIjgtPkkwIdOgEqIhgvdjEvYmlsbGluZ2dyb3Vwcy9tZXJnZWQSeQoRRGVsZXRlQmlsbGluR3JvdXASLS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIdgtPkkwIXKhUvdjEvYmlsbGluZ2dyb3VwL3tpZH0SjAEKGEFkZEFjY291bnRUb0JpbGxpbmdHcm91cBIzLmJsdWVhcGkuYmlsbGluZy52MS5BZGRBY2NvdW50VG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiOC0+STAh06ASoiGC92MS9iaWxsaW5nZ3JvdXAvYWNjb3VudBKZAQoPR2V0QmlsbGluZ0dyb3VwEiouYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cFJlcXVlc3QaKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwUmVzcG9uc2UiLYLT5JMCJxIlL3YxL2JpbGxpbmdncm91cHMve2JpbGxpbmdJbnRlcm5hbElkfRKRAQoOR2V0QWNjZXNzR3JvdXASKS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QWNjZXNzR3JvdXBSZXF1ZXN0GiouYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFjY2Vzc0dyb3VwUmVzcG9uc2UiKILT5JMCIhIgL3YxL2FjY2Vzc2dyb3Vwcy97YWNjZXNzR3JvdXBJZH0SngEKFkxpc3RBd3NEYWlseVJ1bkhpc3RvcnkSMS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEF3c0RhaWx5UnVuSGlzdG9yeVJlcXVlc3QaJi5ibHVlYXBpLmJpbGxpbmcudjEuQXdzRGFpbHlSdW5IaXN0b3J5IieC0+STAiE6ASoiHC92MS9hd3MvZGFpbHlydW5oaXN0b3J5OnJlYWQwARKaAQoTTGlzdFVzYWdlQ29zdHNEcmlmdBIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0VXNhZ2VDb3N0c0RyaWZ0UmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5Vc2FnZUNvc3RzRHJpZnQiLILT5JMCJjoBKiIhL3YxL3t2ZW5kb3J9L3VzYWdlY29zdHNkcmlmdDpyZWFkMAESfAoNQ3JlYXRlSW52b2ljZRIoLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVJbnZvaWNlUmVxdWVzdBobLmJsdWVhcGkuYXBpLkludm9pY2VNZXNzYWdlIiSC0+STAh46ASoiGS92MS9pbnZvaWNlL3tkYXRlfTpjcmVhdGUSmwEKGUNyZWF0ZUludm9pY2VXaXRoU2V0dGluZ3MSLi5ibHVlYXBpLmJpbGxpbmcudjEuU2F2ZUludm9pY2VTZXR0aW5nc1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIxgtPkkwIrOgEqIiYvdjEvaW52b2ljZS97ZGF0ZX06Y3JlYXRlJnNhdmVzZXR0aW5ncxKJAQoTU2F2ZUludm9pY2VTZXR0aW5ncxIuLmJsdWVhcGkuYmlsbGluZy52MS5TYXZlSW52b2ljZVNldHRpbmdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIqgtPkkwIkOgEqIh8vdjEvaW52b2ljZS97ZGF0ZX06c2F2ZXNldHRpbmdzEqIBChNDb252ZXJ0SW52b2ljZVRvUGRmEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkNvbnZlcnRJbnZvaWNlVG9QZGZSZXF1ZXN0Gi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkNvbnZlcnRJbnZvaWNlVG9QZGZSZXNwb25zZSIqgtPkkwIkOgEqIh8vdjEvaW52b2ljZS97ZGF0ZX06Y29udmVydHRvcGRmEn0KEEdldEludm9pY2VTdGF0dXMSKy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZVN0YXR1c1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIfgtPkkwIZEhcvdjEvaW52b2ljZS9zdGF0dXMve2lkfRKLAQoRTGlzdEludm9pY2VTdGF0dXMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VTdGF0dXNSZXF1ZXN0GhsuYmx1ZWFwaS5hcGkuSW52b2ljZU1lc3NhZ2UiKYLT5JMCIzoBKiIeL3YxL2ludm9pY2Uvc3RhdHVzL3tkYXRlfTpyZWFkMAESbQoKR2V0SW52b2ljZRIlLmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlUmVxdWVzdBoULmJsdWVhcGkuYXBpLkludm9pY2UiIoLT5JMCHDoBKiIXL3YxL2ludm9pY2Uve2RhdGV9OnJlYWQSfQoLTGlzdEludm9pY2USJi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXF1ZXN0GicuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UiG4LT5JMCFToBKiIQL3YxL2ludm9pY2U6cmVhZDABEogBChVVcGRhdGVJbnZvaWNlUHJldmlld3MSMC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZVByZXZpZXdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIlgtPkkwIfOgEqGhovdjEvaW52b2ljZS97ZGF0ZX06cHJldmlldxKWAQoRRXhwb3J0SW52b2ljZUZpbGUSLC5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZUZpbGVSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VGaWxlUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL2ludm9pY2Uve2RhdGV9OmV4cG9ydBKWAQoTTGlzdEludm9pY2VUZW1wbGF0ZRIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVRlbXBsYXRlUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVRlbXBsYXRlUmVzcG9uc2UiHILT5JMCFhIUL3YxL2ludm9pY2UvdGVtcGxhdGUwARKtAQoZR2V0SW52b2ljZURpc3BsYXlTZXR0aW5ncxI0LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzUmVzcG9uc2UiI4LT5JMCHRIbL3YxL2ludm9pY2UvZGlzcGxheXNldHRpbmdzEpcBChxVcGRhdGVJbnZvaWNlRGlzcGxheVNldHRpbmdzEjcuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiaC0+STAiA6ASoiGy92MS9pbnZvaWNlL2Rpc3BsYXlzZXR0aW5ncxKWAQoZVXBkYXRlSW52b2ljZUV4Y2hhbmdlUmF0ZRI0LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIrgtPkkwIlOgEqGiAvdjEvaW52b2ljZS9leGNoYW5nZXJhdGUve21vbnRofRKsAQohVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VUZW1wbGF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMYLT5JMCKzoBKiImL3YxL2JpbGxpbmdncm91cHMve2lkfS9pbnZvaWNldGVtcGxhdGUSsQEKHFJlYWRTZXJ2aWNlRGlzY291bnRzU2VydmljZXMSNy5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlc1JlcXVlc3QaHi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuU2VydmljZSI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97dmVuZG9yfS9zZXJ2aWNlczpyZWFkMAESqgEKHUNyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIfgtPkkwIZOgEqIhQvdjEvc2VydmljZWRpc2NvdW50cxKvAQodVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSOC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIiSC0+STAh46ASoaGS92MS9zZXJ2aWNlZGlzY291bnRzL3tpZH0SlAEKHURlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIhgtPkkwIbKhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EqoBChtMaXN0SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBorLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIkgtPkkwIeOgEqIhkvdjEvc2VydmljZWRpc2NvdW50czpyZWFkMAESpgEKGkdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBouLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyIhgtPkkwIbEhkvdjEvc2VydmljZWRpc2NvdW50cy97aWR9EqIBChZFeHBvcnRTZXJ2aWNlRGlzY291bnRzEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydFNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi0uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLlNlcnZpY2VEaXNjb3VudHNFeHBvcnQiJoLT5JMCIDoBKiIbL3YxL3NlcnZpY2VkaXNjb3VudHM6ZXhwb3J0EvABCilDcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEvABCilVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSI2gtPkkwIwOgEqGisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEr4BCilEZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiM4LT5JMCLSorL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2JpbGxpbmdncm91cBLRAQoiTGlzdEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI9LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMiNoLT5JMCMDoBKiIrL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQ6cmVhZDABEtwBCiRDcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpALmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSIxgtPkkwIrOgEqIiYvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudBLcAQokVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaQC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiMYLT5JMCKzoBKhomL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQSuQEKJFJlbW92ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5SZW1vdmVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjiC0+STAjI6ASoaLS92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50OnJlbW92ZRKvAQokRGVsZXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiLoLT5JMCKComL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQSzQEKJEV4cG9ydEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GjQuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzRXhwb3J0Ii6C0+STAig6ASoiIy92MS9zZXJ2aWNlZGlzY291bnRzL2FjY291bnQ6ZXhwb3J0EtoBCilFeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJELmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuR3JvdXBTZXJ2aWNlRGlzY291bnRzRXhwb3J0IjOC0+STAi06ASoiKC92MS9zZXJ2aWNlZGlzY291bnRzL2JpbGxpbmdncm91cDpleHBvcnQS5AEKJkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkEuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpCLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjOC0+STAi0SKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9iaWxsaW5nZ3JvdXAScwoOQ3JlYXRlUmVzZWxsZXISKS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlUmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhiC0+STAhI6ASoiDS92MS9yZXNlbGxlcnMScAoNTGlzdFJlc2VsbGVycxIoLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0UmVzZWxsZXJzUmVxdWVzdBocLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlciIVgtPkkwIPEg0vdjEvcmVzZWxsZXJzMAESbwoLR2V0UmVzZWxsZXISJi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0UmVzZWxsZXJSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhqC0+STAhQSEi92MS9yZXNlbGxlcnMve2lkfRJ4Cg5VcGRhdGVSZXNlbGxlchIpLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVSZXNlbGxlclJlcXVlc3QaHC5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXIiHYLT5JMCFzoBKhoSL3YxL3Jlc2VsbGVycy97aWR9Em8KDkRlbGV0ZVJlc2VsbGVyEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZVJlc2VsbGVyUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIagtPkkwIUKhIvdjEvcmVzZWxsZXJzL3tpZH0ShgEKEUdldEJpbGxpbmdTZXR0aW5nEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdTZXR0aW5nUmVxdWVzdBotLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nU2V0dGluZ1Jlc3BvbnNlIhSC0+STAg4SDC92MS9zZXR0aW5ncxKbAQoRTGlzdEV4Y2hhbmdlUmF0ZXMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEV4Y2hhbmdlUmF0ZXNSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RFeGNoYW5nZVJhdGVzUmVzcG9uc2UiKYLT5JMCIxIhL3YxL3t2ZW5kb3J9L2V4Y2hhbmdlcmF0ZS97bW9udGh9EpYBChVTZXRHbG9iYWxFeGNoYW5nZVJhdGUSMC5ibHVlYXBpLmJpbGxpbmcudjEuU2V0R2xvYmFsRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIzgtPkkwItOgEqIigvdjEvZXhjaGFuZ2VyYXRlL2dsb2JhbC97dmVuZG9yfS97bW9udGh9EooBChRTZXRQYXllckV4Y2hhbmdlUmF0ZRIvLmJsdWVhcGkuYmlsbGluZy52MS5TZXRQYXllckV4Y2hhbmdlUmF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKYLT5JMCIzoBKiIeL3YxL2V4Y2hhbmdlcmF0ZS9wYXllci97bW9udGh9Ep8BChtTZXRCaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGUSNi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0QmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIwgtPkkwIqOgEqIiUvdjEvZXhjaGFuZ2VyYXRlL2JpbGxpbmdncm91cC97bW9udGh9EnwKEExpc3RBY2Nlc3NHcm91cHMSKy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFjY2Vzc0dyb3Vwc1JlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiGILT5JMCEhIQL3YxL2FjY2Vzc2dyb3VwczABEn8KEUNyZWF0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFjY2Vzc0dyb3VwUmVxdWVzdBofLmJsdWVhcGkuYXBpLnJpcHBsZS5BY2Nlc3NHcm91cCIbgtPkkwIVOgEqIhAvdjEvYWNjZXNzZ3JvdXBzEoQBChFVcGRhdGVBY2Nlc3NHcm91cBIsLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBY2Nlc3NHcm91cFJlcXVlc3QaHy5ibHVlYXBpLmFwaS5yaXBwbGUuQWNjZXNzR3JvdXAiIILT5JMCGjoBKhoVL3YxL2FjY2Vzc2dyb3Vwcy97aWR9EngKEURlbGV0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFjY2Vzc0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIdgtPkkwIXKhUvdjEvYWNjZXNzZ3JvdXBzL3tpZH0SnwEKFExpc3RBYmNCaWxsaW5nR3JvdXBzEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBYmNCaWxsaW5nR3JvdXBzUmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5BYmNCaWxsaW5nR3JvdXAiL4LT5JMCKRInL3YxL2JpbGxpbmdncm91cHMvYmlsbGluZ2NvbmR1Y3Rvci97aWR9MAEStgEKG0xpc3RBYmNCaWxsaW5nR3JvdXBBY2NvdW50cxI2LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWJjQmlsbGluZ0dyb3VwQWNjb3VudHNSZXF1ZXN0Gh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkFiY0FjY291bnQiPYLT5JMCNxI1L3YxL2JpbGxpbmdncm91cHMvYmlsbGluZ2NvbmR1Y3Rvci97cGF5ZXJJZH0vYWNjb3VudHMwARKcAQoWUmVhZEludm9pY2VBZGp1c3RtZW50cxIxLmJsdWVhcGkuYmlsbGluZy52MS5SZWFkSW52b2ljZUFkanVzdG1lbnRzUmVxdWVzdBocLmJsdWVhcGkuYXBpLndhdmUuQWRqdXN0bWVudCIvgtPkkwIpOgEqIiQvdjEve3ZlbmRvcn0vaW52b2ljZWFkanVzdG1lbnRzOnJlYWQwARKjAQoVUmVhZEFkanVzdG1lbnRFbnRyaWVzEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRBZGp1c3RtZW50RW50cmllc1JlcXVlc3QaJi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQWRqdXN0bWVudEVudHJ5Ii6C0+STAig6ASoiIy92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczpyZWFkMAESmAEKEkdldEFkanVzdG1lbnRFbnRyeRItLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GiYuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkFkanVzdG1lbnRFbnRyeSIrgtPkkwIlEiMvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfRKQAQoUQXBwbHlBZGp1c3RtZW50RW50cnkSLy5ibHVlYXBpLmJpbGxpbmcudjEuQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii+C0+STAik6ASoiJC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczphcHBseRKWAQoWUmVzdG9yZUFkanVzdG1lbnRFbnRyeRIxLmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqIiYvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXM6cmVzdG9yZRKVAQoUU3BsaXRBZGp1c3RtZW50RW50cnkSLy5ibHVlYXBpLmJpbGxpbmcudjEuU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjSC0+STAi46ASoiKS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L3NwbGl0Ep4BChdBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeRIyLmJsdWVhcGkuYmlsbGluZy52MS5BbGxvY2F0ZUFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiN4LT5JMCMToBKiIsL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0vYWxsb2NhdGUSqwEKG1Jlc3RvcmVTcGxpdEFkanVzdG1lbnRFbnRyeRI2LmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlU3BsaXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjyC0+STAjY6ASoiMS92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L3NwbGl0OnJlc3RvcmUStAEKHlJlc3RvcmVBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeRI5LmJsdWVhcGkuYmlsbGluZy52MS5SZXN0b3JlQWxsb2NhdGVBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ij+C0+STAjk6ASoiNC92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9L2FsbG9jYXRlOnJlc3RvcmUSlwEKFExpc3RBY2NvdW50UmVzb3VyY2VzEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBY2NvdW50UmVzb3VyY2VzUmVxdWVzdBojLmJsdWVhcGkuYmlsbGluZy52MS5SZXNvdXJjZUFjY291bnQiJ4LT5JMCIRIfL3YxL3Jlc291cmNlcy9hY2NvdW50cy97dmVuZG9yfTABEosBChNHZXRBZGp1c3RtZW50Q29uZmlnEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFkanVzdG1lbnRDb25maWdSZXF1ZXN0Gh0uYmx1ZWFwaS5hcGkuQWRqdXN0bWVudENvbmZpZyIlgtPkkwIfEh0vdjEvYWRqdXN0bWVudGNvbmZpZy97dmVuZG9yfRKUAQoWQ3JlYXRlQWRqdXN0bWVudENvbmZpZxIxLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBodLmJsdWVhcGkuYXBpLkFkanVzdG1lbnRDb25maWciKILT5JMCIjoBKiIdL3YxL2FkanVzdG1lbnRjb25maWcve3ZlbmRvcn0SlAEKFlVwZGF0ZUFkanVzdG1lbnRDb25maWcSMS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QaHS5ibHVlYXBpLmFwaS5BZGp1c3RtZW50Q29uZmlnIiiC0+STAiI6ASoaHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EooBChZEZWxldGVBZGp1c3RtZW50Q29uZmlnEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiWC0+STAh8qHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EpUBChJSZWFkVW50YWdnZWRHcm91cHMSLS5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZFVudGFnZ2VkR3JvdXBzUmVxdWVzdBohLmJsdWVhcGkuYXBpLnJpcHBsZS5VbnRhZ2dlZEdyb3VwIiuC0+STAiU6ASoiIC92MS97dmVuZG9yfS91bnRhZ2dlZGdyb3VwczpyZWFkMAESuAEKHVJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzEjguYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VzUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiLYLT5JMCJzoBKiIiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXM6cmVhZDABEq8BChtHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USNi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiKoLT5JMCJBIiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRKzAQoeQ3JlYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlIiiC0+STAiI6ASoiHS92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzErgBCh5VcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USOS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiLYLT5JMCJzoBKhoiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRKfAQoeRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJCoiL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMve2lkfRL7AQonR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwEkIuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cFJlcXVlc3QaQy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVzcG9uc2UiRYLT5JMCPxI9L3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMvYmlsbGluZ2dyb3VwL3tncm91cElkfS97dmVuZG9yfTABEs8BCidTZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASQi5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJIgtPkkwJCOgEqIj0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9EtIBCipEZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASRS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJFgtPkkwI/Kj0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9El4KB0dldFRhZ3MSIi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0VGFnc1JlcXVlc3QaGy5ibHVlYXBpLmJpbGxpbmcudjEuVGFnRGF0YSIQgtPkkwIKEggvdjEvdGFnczABEn4KEUNyZWF0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUN1c3RvbUZpZWxkUmVxdWVzdBofLmJsdWVhcGkuYmlsbGluZy52MS5DdXN0b21GaWVsZCIagtPkkwIUOgEqIg8vdjEvY3VzdG9tZmllbGQSgQEKD0xpc3RDdXN0b21GaWVsZBIqLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0Q3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIh+C0+STAhk6ASoiFC92MS9jdXN0b21maWVsZDpyZWFkMAESlAEKGkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkEjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIngtPkkwIhOgEqIhwvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkEr4BChtMaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdBo3LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXNwb25zZSIsgtPkkwImOgEqIiEvdjEvYmlsbGluZ2dyb3VwL2N1c3RvbWZpZWxkOnJlYWQwARKDAQoVQWRkVGFnc1RvQmlsbGluZ0dyb3VwEjAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZFRhZ3NUb0JpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIILT5JMCGjoBKiIVL3YxL2JpbGxpbmdncm91cC90YWdzEq8BCh9VcGRhdGVOb25UYWdHcm91cFRvQmlsbGluZ0dyb3VwEjouYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZU5vblRhZ0dyb3VwVG9CaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjiC0+STAjI6ASoiLS92MS9iaWxsaW5nZ3JvdXAve2lkfS97dmVuZG9yfS91bnRhZ2dlZGdyb3VwcxKxAQodRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSOC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ij6C0+STAjgqNi92MS9iaWxsaW5nZ3JvdXAvY3VzdG9tZmllbGQve2dyb3VwSWR9L3tjdXN0b21GaWVsZElkfRKDAQoRVXBkYXRlQ3VzdG9tRmllbGQSLC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIh+C0+STAhk6ASoaFC92MS9jdXN0b21maWVsZC97aWR9EncKEURlbGV0ZUN1c3RvbUZpZWxkEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUN1c3RvbUZpZWxkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIcgtPkkwIWKhQvdjEvY3VzdG9tZmllbGQve2lkfRJyChBDcmVhdGVGcmVlRm9ybWF0EisuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUZyZWVGb3JtYXRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IhmC0+STAhM6ASoiDi92MS9mcmVlZm9ybWF0EnkKEERlbGV0ZUZyZWVGb3JtYXQSKy5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRnJlZUZvcm1hdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIILT5JMCGioYL3YxL2ZyZWVmb3JtYXQve2dyb3VwSWR9EogBCg1HZXRGcmVlRm9ybWF0EiguYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEZyZWVGb3JtYXRSZXF1ZXN0GikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEZyZWVGb3JtYXRSZXNwb25zZSIggtPkkwIaEhgvdjEvZnJlZWZvcm1hdC97Z3JvdXBJZH0wARKiAQoUR2V0VGFnc0FkZGluZ1NldHRpbmcSLy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0VGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0GiUuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3NBZGRpbmdTZXR0aW5nIjCC0+STAioSKC92MS97dmVuZG9yfS90YWdzYWRkaW5nc2V0dGluZy97Z3JvdXBJZH0wARKaAQoXVXBkYXRlVGFnc0FkZGluZ1NldHRpbmcSMi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlVGFnc0FkZGluZ1NldHRpbmdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjOC0+STAi06ASoaKC92MS97dmVuZG9yfS90YWdzYWRkaW5nc2V0dGluZy97Z3JvdXBJZH0SoQEKFUV4cG9ydEJpbGxpbmdHcm91cENzdhIwLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRCaWxsaW5nR3JvdXBDc3ZSZXF1ZXN0GjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEJpbGxpbmdHcm91cENzdlJlc3BvbnNlIiOC0+STAh0SGy92MS9leHBvcnRjc3YvYmlsbGluZy1ncm91cBKpAQoXRXhwb3J0SW52b2ljZVNldHRpbmdDc3YSMi5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVzcG9uc2UiJYLT5JMCHxIdL3YxL2V4cG9ydGNzdi9pbnZvaWNlLXNldHRpbmcSpwEKIlVwZGF0ZUJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb24SPS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKhofL3YxL2JpbGxpbmdncm91cC97aWR9OmJhc2ljSW5mbxKiAQoeVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzEjkuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiLYLT5JMCJzoBKhoiL3YxL2JpbGxpbmdncm91cC97aWR9OmN1c3RvbUZpZWxkcxKcAQocVXBkYXRlQmlsbGluZ0dyb3VwRnJlZUZvcm1hdBI3LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBGcmVlRm9ybWF0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIrgtPkkwIlOgEqGiAvdjEvYmlsbGluZ2dyb3VwL3tpZH06ZnJlZUZvcm1hdBKlAQohVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cExpbmtlZFJlc291cmNlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiKoLT5JMCJDoBKhofL3YxL2JpbGxpbmdncm91cC97aWR9OnJlc291cmNlcxKrAQohVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKholL3YxL2JpbGxpbmdncm91cC97aWR9Omludm9pY2VTZXR0aW5ncxKrAQohVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cFJlc2VsbGVyQ2hhcmdlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMCKjoBKholL3YxL2JpbGxpbmdncm91cC97aWR9OnJlc2VsbGVyQ2hhcmdlcxKxAQojVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXMSPi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWRkaXRpb25hbENoYXJnZXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjKC0+STAiw6ASoaJy92MS9iaWxsaW5nZ3JvdXAve2lkfTphZGRpdGlvbmFsQ2hhcmdlcxLUAQohR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuEjwuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QaPS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2JpbGxpbmdncm91cC97aWR9L3t2ZW5kb3J9L3N1cHBvcnRwbGFuErYBCiRVcGRhdGVCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW4SPy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI1gtPkkwIvOgEqGiovdjEvYmlsbGluZ2dyb3VwL3tpZH0ve3ZlbmRvcn0vc3VwcG9ydHBsYW4SgQEKEkNyZWF0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiSC0+STAh46ASoiGS92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQSkgEKElVwZGF0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjWC0+STAi86ASoaKi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQve2Fubm91bmNlbWVudElkfRKcAQoZVXBkYXRlQW5ub3VuY2VtZW50c1N0YXR1cxI0LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnRzU3RhdHVzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqMiYvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy9idWxrL3N0YXR1cxKgAQoWVXBkYXRlQW5ub3VuY2VtZW50RGF0ZRIxLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBbm5vdW5jZW1lbnREYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI7gtPkkwI1OgEqMjAvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97YW5ub3VuY2VtZW50SWR9L2RhdGUSjwEKEkRlbGV0ZUFubm91bmNlbWVudBItLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVBbm5vdW5jZW1lbnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjKC0+STAiwqKi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnQve2Fubm91bmNlbWVudElkfRKgAQoQR2V0QW5ub3VuY2VtZW50cxIrLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBbm5vdW5jZW1lbnRzUmVxdWVzdBogLmJsdWVhcGkuYmlsbGluZy52MS5Bbm5vdW5jZW1lbnQiO4LT5JMCNRIzL2JpbGxpbmcvdjEvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97YW5ub3VuY2VtZW50SWR9MAESzgEKHEdldEJpbGxpbmdHcm91cEFubm91bmNlbWVudHMSNy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1JlcXVlc3QaOC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50c1Jlc3BvbnNlIjmC0+STAjMSMS92MS9iaWxsaW5nZ3JvdXAvcmVzZWxsZXIvYW5ub3VuY2VtZW50cy97Z3JvdXBJZH0wARJmCgpHZXRDcmVkaXRzEiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENyZWRpdHNSZXF1ZXN0GhouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWRpdCITgtPkkwINEgsvdjEvY3JlZGl0czABEnYKDkdldENzdlNldHRpbmdzEikuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENzdlNldHRpbmdzUmVxdWVzdBoeLmJsdWVhcGkuYmlsbGluZy52MS5Dc3ZTZXR0aW5nIheC0+STAhESDy92MS9jc3ZzZXR0aW5nczABEqYBChdDcmVhdGVDaGlsZEJpbGxpbmdHcm91cBIyLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QaMy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIigtPkkwIcOgEqIhcvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZBKnAQoUR2V0Q2hpbGRCaWxsaW5nR3JvdXASLy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0GjAuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldENoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiLILT5JMCJhIkL3YxL2JpbGxpbmdncm91cHMvY2hpbGQve2ludGVybmFsSWR9Ep0BChZMaXN0Q2hpbGRCaWxsaW5nR3JvdXBzEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RDaGlsZEJpbGxpbmdHcm91cHNSZXF1ZXN0GiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwIieC0+STAiE6ASoiHC92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkOnJlYWQwARKzAQoXVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXASMi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXF1ZXN0GjMuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2UiL4LT5JMCKToBKhokL3YxL2JpbGxpbmdncm91cHMvY2hpbGQve2ludGVybmFsSWR9ErABChdEZWxldGVDaGlsZEJpbGxpbmdHcm91cBIyLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QaMy5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIsgtPkkwImKiQvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZC97aW50ZXJuYWxJZH0S8AEKJlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzEkEuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVxdWVzdBpCLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1Jlc3BvbnNlIj+C0+STAjk6ASoaNC92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkL3tpbnRlcm5hbElkfS9pbnZvaWNlU2V0dGluZ3MSqgEKFkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXASMS5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0NyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QaMi5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0NyZWF0ZUJpbGxpbmdHcm91cFJlc3BvbnNlIieC0+STAiE6ASoiHC92MS9iaWxsaW5nZ3JvdXBzOmJ1bGtDcmVhdGUwARK/AQoZQ3JlYXRlRXhjbHVkZVNlcnZpY2VFbnRyeRI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVzcG9uc2UiNYLT5JMCLzoBKiIqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzEr8BChlVcGRhdGVFeGNsdWRlU2VydmljZUVudHJ5EjQuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0GjUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZSI1gtPkkwIvOgEqGiovdjEvYmlsbGluZ2dyb3Vwcy9leGNsdWRlLXNlcnZpY2Utc2V0dGluZ3MSvAEKGURlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnkSNC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QaNS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlIjKC0+STAiwqKi92MS9iaWxsaW5nZ3JvdXBzL2V4Y2x1ZGUtc2VydmljZS1zZXR0aW5ncxKqAQoTTGlzdEV4Y2x1ZGVTZXJ2aWNlcxIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjbHVkZVNlcnZpY2VzUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjbHVkZVNlcnZpY2VzUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzGp0BkkGZARJGKEJFVEEpIEJpbGxpbmcgQVBJLiBCYXNlIFVSTDogaHR0cHM6Ly9hcGkuYWxwaGF1cy5jbG91ZC9tL2JsdWUvYmlsbGluZxpPChJTZXJ2aWNlIGRlZmluaXRpb24SOWh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9iaWxsaW5nL0JRChljbG91ZC5hbHBoYXVzLmFwaS5iaWxsaW5nQgxCaWxsaW5nUHJvdG9aJmdpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS9iaWxsaW5nYgZwcm90bzM", [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_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_empty, file_protoc_gen_openapiv2_options_annotations, file_google_protobuf_field_mask]);
54
+ fileDesc("ChhiaWxsaW5nL3YxL2JpbGxpbmcucHJvdG8SEmJsdWVhcGkuYmlsbGluZy52MSKOBAoMQmlsbGluZ0dyb3VwEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYByABKAkSDAoEdHlwZRgMIAEoCRI+ChBiaWxsaW5nR3JvdXBJbmZvGAogASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8SOgoOYWNjb3VudE9wdGlvbnMYCCABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSJgoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50EiIKBHRhZ3MYBiADKAsyFC5ibHVlYXBpLmFwaS5Db3N0VGFnEkgKD2ludm9pY2VTZXR0aW5ncxgFIAEoCzIvLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSSAoPYWRkaXRpb25hbEl0ZW1zGAsgASgLMi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIyCgphd3NPcHRpb25zGAkgASgLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c09wdGlvbnMioAEKG0JpbGxpbmdHcm91cEFkZGl0aW9uYWxJdGVtcxIpCgNhd3MYASADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKwoFYXp1cmUYAiADKAsyHC5ibHVlYXBpLmFwaS5BZGRpdGlvbmFsSXRlbXMSKQoDZ2NwGAMgAygLMhwuYmx1ZWFwaS5hcGkuQWRkaXRpb25hbEl0ZW1zIu4BChtCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQwoDYXdzGAEgASgLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cFZlbmRvcmVkSW52b2ljZVNldHRpbmcSRQoFYXp1cmUYAiABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxJDCgNnY3AYAyABKAsyNi5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZyLTAwoiQmlsbGluZ0dyb3VwVmVuZG9yZWRJbnZvaWNlU2V0dGluZxIQCghjYWxjVHlwZRgBIAEoCRIUCgxkaXNjb3VudFJhdGUYAiABKAESFwoPc3Vic3RpdHV0aW9uRmVlGAMgASgJEhcKD3N1YnN0aXR1dGlvbkZpeBgEIAEoARIYChBzdWJzdGl0dXRpb25SYXRlGAUgASgBEhIKCnN1cHBvcnRGZWUYBiABKAkSEwoLc3VwcG9ydFJhdGUYByABKAESEgoKc3VwcG9ydEZpeBgIIAEoARIPCgd0YXhSYXRlGAkgASgBEhAKCGN1cnJlbmN5GAogASgJEhsKE2Rpc2NvdW50VGFyZ2V0VXNhZ2UYCyABKAkSIgoac3Vic3RpdHV0aW9uRmVlVGFyZ2V0VXNhZ2UYDCABKAkSGQoRZGlzY291bnRDYWxjTG9naWMYDSABKAkSIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgOIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgPIAEoCRIbChNzdXBwb3J0QW1vdW50VGFyZ2V0GBAgASgJEhwKFHN1cHBvcnRGZWVDYWxjVGFyZ2V0GBEgASgJIpIBChhMaXN0QmlsbGluZ0dyb3Vwc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sSDwoHdmVuZG9ycxgCIAEoCRIQCghjYWxjVHlwZRgDIAEoCRITCgtkaXNwbGF5Q29zdBgEIAEoCRIOCgZiZ1R5cGUYBSABKAki1AQKGUNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIUCgxiaWxsaW5nVGl0bGUYBCABKAkSEwoLcGhvbmVOdW1iZXIYBSABKAkSEgoKcG9zdGFsQ29kZRgGIAEoCRIPCgdhZGRyZXNzGAcgASgJEhAKCHBlcnNvbmFsGAggASgJEg8KB3JlbWFya3MYCSABKAkSEQoJcHJvamVjdElkGAogASgJEhAKCGxhbmd1YWdlGAsgASgJEhMKC2Rpc3BsYXlDb3N0GAwgASgJEhgKEGV4Y2hhbmdlUmF0ZVR5cGUYDSABKAkSOgoOYWNjb3VudE9wdGlvbnMYDyABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSRgoIaW52b2ljZXMYDiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USMgoKYXdzT3B0aW9ucxgQIAEoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NPcHRpb25zEgwKBGNpdHkYESABKAkSEgoKcHJlZmVjdHVyZRgSIAEoCRIPCgdjb3VudHJ5GBMgASgJEj4KC2NoaWxkYmdpbmZvGBQgASgLMikuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwSW5mbyI1CgpBd3NPcHRpb25zEhYKDnVzZVByb0Zvcm1hQ3VyGAEgASgIEg8KB3BheWVySWQYAiABKAkiqwEKDkFjY291bnRPcHRpb25zEjEKA2F3cxgBIAEoCzIkLmJsdWVhcGkuYmlsbGluZy52MS5SZWdpc3RlckFjY291bnRzEjEKA2djcBgCIAEoCzIkLmJsdWVhcGkuYmlsbGluZy52MS5SZWdpc3RlckFjY291bnRzEjMKBWF6dXJlGAMgASgLMiQuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlZ2lzdGVyQWNjb3VudHMiNgoQUmVnaXN0ZXJBY2NvdW50cxIPCgdlbmFibGVkGAEgASgIEhEKCWFjY291bnRJZBgCIAEoCSJUCg5WZW5kb3JBY2NvdW50cxIOCgZ2ZW5kb3IYASABKAkSMgoIYWNjb3VudHMYAiADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudFRvQWRkImAKDEF6dXJlT3B0aW9ucxIVCg1yZXNvdXJjZUdyb3VwGAEgASgIEhsKE2FwcGx5UGNFYXJuZWRDcmVkaXQYAiABKAgSHAoUYXBwbHlDYW1wYWlnblByaWNpbmcYAyABKAgiqgcKH0NyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZFJlcXVlc3QSFgoOYmlsbGluZ0dyb3VwSWQYASABKAkSGAoQYmlsbGluZ0dyb3VwTmFtZRgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIUCgxiaWxsaW5nVGl0bGUYBCABKAkSEwoLcGhvbmVOdW1iZXIYBSABKAkSEgoKcG9zdGFsQ29kZRgGIAEoCRIPCgdhZGRyZXNzGAcgASgJEhAKCHBlcnNvbmFsGAggASgJEg8KB3JlbWFya3MYCSABKAkSEQoJcHJvamVjdElkGAogASgJEhAKCGxhbmd1YWdlGAsgASgJEhMKC2Rpc3BsYXlDb3N0GAwgASgJEhgKEGV4Y2hhbmdlUmF0ZVR5cGUYDSABKAkSOgoOYWNjb3VudE9wdGlvbnMYDyABKAsyIi5ibHVlYXBpLmJpbGxpbmcudjEuQWNjb3VudE9wdGlvbnMSRgoIaW52b2ljZXMYDiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USMgoKYXdzT3B0aW9ucxgQIAEoCzIeLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NPcHRpb25zEgwKBGNpdHkYESABKAkSEgoKcHJlZmVjdHVyZRgSIAEoCRIPCgdjb3VudHJ5GBMgASgJEhkKEWludm9pY2VUZW1wbGF0ZUlkGBQgASgJEjMKC3RhZ1NldHRpbmdzGBUgAygLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ1NldHRpbmcSOAoNbm9uVGFnU2V0dGluZxgWIAEoCzIhLmJsdWVhcGkuYmlsbGluZy52MS5Ob25UYWdTZXR0aW5nEjoKDnZlbmRvckFjY291bnRzGBcgAygLMiIuYmx1ZWFwaS5iaWxsaW5nLnYxLlZlbmRvckFjY291bnRzElsKDGN1c3RvbUZpZWxkcxgYIAMoCzJFLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBNZXJnZWRSZXF1ZXN0LkN1c3RvbUZpZWxkc0VudHJ5EjYKDGF6dXJlT3B0aW9ucxgZIAEoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BenVyZU9wdGlvbnMaMwoRQ3VzdG9tRmllbGRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASL/AQogQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2USRwoDYXdzGAEgASgLMjouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlVmVuZG9yEkkKBWF6dXJlGAIgASgLMjouYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cFJlcXVlc3RJbnZvaWNlVmVuZG9yEkcKA2djcBgDIAEoCzI6LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZVZlbmRvciLXAwomQ3JlYXRlQmlsbGluZ0dyb3VwUmVxdWVzdEludm9pY2VWZW5kb3ISEAoIY2FsY1R5cGUYASABKAkSFAoMZGlzY291bnRSYXRlGAIgASgBEhcKD3N1YnN0aXR1dGlvbkZlZRgDIAEoCRIXCg9zdWJzdGl0dXRpb25GaXgYBCABKAESGAoQc3Vic3RpdHV0aW9uUmF0ZRgFIAEoARISCgpzdXBwb3J0RmVlGAYgASgJEhMKC3N1cHBvcnRSYXRlGAcgASgBEhIKCnN1cHBvcnRGaXgYCCABKAESDwoHdGF4UmF0ZRgJIAEoARIQCghjdXJyZW5jeRgKIAEoCRIbChNkaXNjb3VudFRhcmdldFVzYWdlGAsgASgJEiIKGnN1YnN0aXR1dGlvbkZlZVRhcmdldFVzYWdlGAwgASgJEhkKEWRpc2NvdW50Q2FsY0xvZ2ljGA0gASgJEiEKGXN1YnN0aXR1dGlvbkZlZUNhbGNUYXJnZXQYDiABKAkSHwoXc3Vic3RpdHV0aW9uRmVlQ2FsY1R5cGUYDyABKAkSGwoTc3VwcG9ydEFtb3VudFRhcmdldBgQIAEoCRIcChRzdXBwb3J0RmVlQ2FsY1RhcmdldBgRIAEoCSJjChZHZXRCaWxsaW5nR3JvdXBSZXF1ZXN0EhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEi4KCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIlEKF0dldEJpbGxpbmdHcm91cFJlc3BvbnNlEjYKDGJpbGxpbmdHcm91cBgBIAEoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAilgEKC0FjY2Vzc0dyb3VwEhUKDWFjY2Vzc0dyb3VwSWQYASABKAkSFwoPYWNjZXNzR3JvdXBOYW1lGAIgASgJEh4KFmFjY2Vzc0dyb3VwRGVzY3JpcHRpb24YAyABKAkSNwoNYmlsbGluZ0dyb3VwcxgEIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5CaWxsaW5nR3JvdXAiXgoVR2V0QWNjZXNzR3JvdXBSZXF1ZXN0EhUKDWFjY2Vzc0dyb3VwSWQYASABKAkSLgoKZmllbGRfbWFzaxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siTgoWR2V0QWNjZXNzR3JvdXBSZXNwb25zZRI0CgthY2Nlc3NHcm91cBgBIAEoCzIfLmJsdWVhcGkuYmlsbGluZy52MS5BY2Nlc3NHcm91cCKvAgoSQXdzRGFpbHlSdW5IaXN0b3J5EhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEg0KBW1vbnRoGAMgASgJEkAKCGFjY291bnRzGAQgAygLMi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c0RhaWx5UnVuSGlzdG9yeS5BY2NvdW50GpQBCgdBY2NvdW50EhEKCWFjY291bnRJZBgBIAEoCRJHCgdoaXN0b3J5GAIgAygLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkF3c0RhaWx5UnVuSGlzdG9yeS5BY2NvdW50Lkhpc3RvcnkaLQoHSGlzdG9yeRIRCgl0aW1lc3RhbXAYASABKAkSDwoHdHJpZ2dlchgCIAEoCSI/Ch1MaXN0QXdzRGFpbHlSdW5IaXN0b3J5UmVxdWVzdBINCgVtb250aBgBIAEoCRIPCgdncm91cElkGAIgASgJIlYKGkxpc3RVc2FnZUNvc3RzRHJpZnRSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIZChFiaWxsaW5nSW50ZXJuYWxJZBgCIAEoCRINCgVtb250aBgDIAEoCSKGAQoPVXNhZ2VDb3N0c0RyaWZ0EhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEg8KB2FjY291bnQYAyABKAkSEAoIc25hcHNob3QYBCABKAESDwoHY3VycmVudBgFIAEoARIMCgRkaWZmGAYgASgBIjIKEUdldEludm9pY2VSZXF1ZXN0EgwKBGRhdGUYASABKAkSDwoHZ3JvdXBJZBgCIAEoCSI5ChhFeHBvcnRJbnZvaWNlRmlsZVJlcXVlc3QSDAoEZGF0ZRgBIAEoCRIPCgdncm91cElkGAIgASgJIigKGUV4cG9ydEludm9pY2VGaWxlUmVzcG9uc2USCwoDdXJsGAEgASgJIjUKI1JlYWRTZXJ2aWNlRGlzY291bnRzU2VydmljZXNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCSIkCiJMaXN0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Il4KIUdldEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIKCgJpZBgBIAEoCRItCglmaWVsZE1hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrImoKF0ludm9pY2VTZXJ2aWNlRGlzY291bnRzEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHY3JlYXRlZBgEIAEoCRIPCgd1cGRhdGVkGAUgASgJIhwKGkxpc3RJbnZvaWNlVGVtcGxhdGVSZXF1ZXN0Il0KKFVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VUZW1wbGF0ZVJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISHwoRaW52b2ljZVRlbXBsYXRlSWQYAiABKAlCBOJBAQIingIKG0xpc3RJbnZvaWNlVGVtcGxhdGVSZXNwb25zZRIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEg8KB2NyZWF0ZWQYBCABKAkSDwoHdXBkYXRlZBgFIAEoCRIZChFudW1iZXJPZkNvbm5lY3RlZBgGIAEoBRJQChVjb25uZWN0ZWRCaWxsaW5nR3JvdXAYByADKAsyMS5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZUNvbm5lY3RlZEJpbGxpbmdHcm91cHMSQQoIaW52b2ljZXMYCCABKAsyLy5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzIiIKIEdldEludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXF1ZXN0IkgKIUdldEludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXNwb25zZRIjChtzaG93UklTUFVwZnJvbnRUaW1lSW50ZXJ2YWwYASABKAgirAEKI1VwZGF0ZUludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXF1ZXN0ElUKB3NldHRpbmcYASADKAsyRC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QuU2V0dGluZ0VudHJ5Gi4KDFNldHRpbmdFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBImwKHUludm9pY2VDb25uZWN0ZWRCaWxsaW5nR3JvdXBzEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkiPAopTGlzdEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSKHAQoeQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEgoKAmlkGAEgASgJEg8KB2FjY291bnQYAiABKAkSSAoQc2VydmljZURpc2NvdW50cxgDIAEoCzIuLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5JbnZvaWNlU2VydmljZURpc2NvdW50cyI4ChdBY2NvdW50U2VydmljZURpc2NvdW50cxIKCgJpZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkifQorQ3JlYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIm0KLENyZWF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIn0KK1VwZGF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRI9CghhY2NvdW50cxgEIAMoCzIrLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50U2VydmljZURpc2NvdW50cyJtCixVcGRhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRI9CghhY2NvdW50cxgEIAMoCzIrLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50U2VydmljZURpc2NvdW50cyI+CitEZWxldGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkifQorUmVtb3ZlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEj0KCGFjY291bnRzGAQgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIk8KMENyZWF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJEgoKAmlkGAIgASgJIj8KMUNyZWF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2USCgoCaWQYASABKAkiTwowVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSCgoCaWQYAiABKAkiPwoxVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZRIKCgJpZBgBIAEoCSJDCjBEZWxldGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSJXChRDcmVhdGVJbnZvaWNlUmVxdWVzdBIMCgRkYXRlGAQgASgJEg4KBnZlbmRvchgBIAEoCRIRCglhbGxHcm91cHMYAiABKAgSDgoGZ3JvdXBzGAMgAygJIiUKF0dldEludm9pY2VTdGF0dXNSZXF1ZXN0EgoKAmlkGAEgASgJIigKGExpc3RJbnZvaWNlU3RhdHVzUmVxdWVzdBIMCgRkYXRlGAEgASgJImAKHFVwZGF0ZUludm9pY2VQcmV2aWV3c1JlcXVlc3QSDAoEZGF0ZRgBIAEoCRIRCglhbGxHcm91cHMYAiABKAgSDgoGZ3JvdXBzGAMgAygJEg8KB2VuYWJsZWQYBCABKAgizwEKFUNyZWF0ZVJlc2VsbGVyUmVxdWVzdBIPCgdncm91cElkGAEgASgJEg0KBWVtYWlsGAIgASgJEhAKCHBhc3N3b3JkGAMgASgJEhQKDG5vdGlmaWNhdGlvbhgEIAEoCBI2Cgp3YXZlQ29uZmlnGAUgAygLMiIuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyQ29uZmlnEjYKCmFxdWFDb25maWcYBiADKAsyIi5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXJDb25maWciRgoUTGlzdFJlc2VsbGVyc1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2siUAoSR2V0UmVzZWxsZXJSZXF1ZXN0EgoKAmlkGAEgASgJEi4KCmZpZWxkX21hc2sYAiABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIqYCChVVcGRhdGVSZXNlbGxlclJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISEwoFZW1haWwYAiABKAlCBOJBAQESFwoIcGFzc3dvcmQYAyABKAlCBeJBAgQBEjwKCndhdmVDb25maWcYBCADKAsyIi5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXJDb25maWdCBOJBAQESPAoKYXF1YUNvbmZpZxgFIAMoCzIiLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlckNvbmZpZ0IE4kEBARIbCgxub3RpZmljYXRpb24YBiABKAhCBeJBAgQBEjQKCnVwZGF0ZU1hc2sYByABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQECIiMKFURlbGV0ZVJlc2VsbGVyUmVxdWVzdBIKCgJpZBgBIAEoCSJKChhHZXRCaWxsaW5nU2V0dGluZ1JlcXVlc3QSLgoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2sixwIKGUdldEJpbGxpbmdTZXR0aW5nUmVzcG9uc2USMAoJeWVhck1vbnRoGAEgAygLMh0uYmx1ZWFwaS5hcGkucmlwcGxlLlllYXJNb250aBI0Cg5yb3VuZGluZ01ldGhvZBgCIAEoCzIcLmJsdWVhcGkuYXBpLnJpcHBsZS5Sb3VuZGluZxI6ChRleHBvcnRSb3VuZGluZ01ldGhvZBgDIAEoCzIcLmJsdWVhcGkuYXBpLnJpcHBsZS5Sb3VuZGluZxI4Cg1pbnZvaWNlTGF5b3V0GAQgASgLMiEuYmx1ZWFwaS5hcGkucmlwcGxlLkludm9pY2VMYXlvdXQSMwoOaW52b2ljZUR1ZURhdGUYBSABKAsyGy5ibHVlYXBpLmFwaS5yaXBwbGUuRHVlRGF0ZRIXCg9zdXBwb3J0Q3VycmVuY3kYBiADKAkiOQoYTGlzdEV4Y2hhbmdlUmF0ZXNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRINCgVtb250aBgCIAEoCSJlChxTZXRHbG9iYWxFeGNoYW5nZVJhdGVSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRINCgVtb250aBgCIAEoCRIQCghjdXJyZW5jeRgDIAEoCRIUCgxleGNoYW5nZVJhdGUYBCABKAEidwobU2V0UGF5ZXJFeGNoYW5nZVJhdGVSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSDQoFbW9udGgYAyABKAkSEAoIY3VycmVuY3kYBCABKAkSFAoMZXhjaGFuZ2VSYXRlGAUgASgBImwKIlNldEJpbGxpbmdHcm91cEV4Y2hhbmdlUmF0ZVJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRINCgVtb250aBgCIAEoCRIQCghjdXJyZW5jeRgDIAEoCRIUCgxleGNoYW5nZVJhdGUYBCABKAEi4gEKGUxpc3RFeGNoYW5nZVJhdGVzUmVzcG9uc2USDQoFbW9udGgYASABKAkSNgoGY29tbW9uGAIgASgLMiYuYmx1ZWFwaS5hcGkucmlwcGxlLkNvbW1vbkV4Y2hhbmdlUmF0ZRJCCgxiaWxsaW5nR3JvdXAYAyADKAsyLC5ibHVlYXBpLmFwaS5yaXBwbGUuQmlsbGluZ0dyb3VwRXhjaGFuZ2VSYXRlEjoKBXBheWVyGAQgASgLMisuYmx1ZWFwaS5hcGkucmlwcGxlLlZlbmRvclBheWVyRXhjaGFuZ2VSYXRlIkkKF0xpc3RBY2Nlc3NHcm91cHNSZXF1ZXN0Ei4KCmZpZWxkX21hc2sYASABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrIlQKGENyZWF0ZUFjY2Vzc0dyb3VwUmVxdWVzdBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhUKDWJpbGxpbmdHcm91cHMYAyADKAkiYAoYVXBkYXRlQWNjZXNzR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSFQoNYmlsbGluZ0dyb3VwcxgEIAMoCSImChhEZWxldGVBY2Nlc3NHcm91cFJlcXVlc3QSCgoCaWQYASABKAkiMgoSTGlzdEludm9pY2VSZXF1ZXN0EgwKBGRhdGUYASABKAkSDgoGdmVuZG9yGAIgASgJIvIIChNMaXN0SW52b2ljZVJlc3BvbnNlEhkKEWJpbGxpbmdJbnRlcm5hbElkGAEgASgJEhYKDmJpbGxpbmdHcm91cElkGAIgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYBCABKAkSGgoSZmluYWxpemF0aW9uU3RhdHVzGAUgASgJEhEKCWlzQ3JlYXRlZBgGIAEoCBIZChFpc1NldHRpbmdNb2RpZmllZBgHIAEoCBITCgtjcmVhdGVkRGF0ZRgIIAEoCRITCgt1cGRhdGVkRGF0ZRgJIAEoCRIWCg5jcmVhdGVkVmVuZG9ycxgKIAMoCRITCgtpc1B1Ymxpc2hlZBgLIAEoCBJdChN2ZW5kb3JCaWxsaW5nQW1vdW50GAwgAygLMkAuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UuVmVuZG9yQmlsbGluZ0Ftb3VudEVudHJ5EhoKEmJpbGxpbmdBbW91bnRUb3RhbBgNIAEoCRIQCghjdXJyZW5jeRgOIAEoCRINCgV1cmxJZBgPIAEoCRJtChtjcmVhdGVkVmVuZG9ySW52b2ljZVNldHRpbmcYECADKAsySC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZS5DcmVhdGVkVmVuZG9ySW52b2ljZVNldHRpbmdFbnRyeRJpChlzYXZlZFZlbmRvckludm9pY2VTZXR0aW5nGBEgAygLMkYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlUmVzcG9uc2UuU2F2ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5Em0KG2RlZmF1bHRWZW5kb3JJbnZvaWNlU2V0dGluZxgSIAMoCzJILmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlc3BvbnNlLkRlZmF1bHRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5GjoKGFZlbmRvckJpbGxpbmdBbW91bnRFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGmcKIENyZWF0ZWRWZW5kb3JJbnZvaWNlU2V0dGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLmJsdWVhcGkuYmlsbGluZy52MS5JbnZvaWNlU2V0dGluZ3M6AjgBGmUKHlNhdmVkVmVuZG9ySW52b2ljZVNldHRpbmdFbnRyeRILCgNrZXkYASABKAkSMgoFdmFsdWUYAiABKAsyIy5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZVNldHRpbmdzOgI4ARpnCiBEZWZhdWx0VmVuZG9ySW52b2ljZVNldHRpbmdFbnRyeRILCgNrZXkYASABKAkSMgoFdmFsdWUYAiABKAsyIy5ibHVlYXBpLmJpbGxpbmcudjEuSW52b2ljZVNldHRpbmdzOgI4ASIpChtMaXN0QWJjQmlsbGluZ0dyb3Vwc1JlcXVlc3QSCgoCaWQYASABKAkiTgoiTGlzdEFiY0JpbGxpbmdHcm91cEFjY291bnRzUmVxdWVzdBIPCgdwYXllcklkGAEgASgJEhcKD2JpbGxpbmdHcm91cEFybhgCIAEoCSKPAQoPQWJjQmlsbGluZ0dyb3VwEgsKA2FybhgBIAEoCRIMCgRuYW1lGAIgASgJEhQKDGNyZWF0aW9uVGltZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIYChBwcmltYXJ5QWNjb3VudElkGAUgASgJEgwKBHNpemUYBiABKAkSDgoGc3RhdHVzGAcgASgJIjQKCkFiY0FjY291bnQSEQoJYWNjb3VudElkGAEgASgJEhMKC2FjY291bnROYW1lGAIgASgJImIKHVJlYWRJbnZvaWNlQWRqdXN0bWVudHNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSDQoFbW9udGgYAyABKAkSDwoHZmVlVHlwZRgEIAEoCSKZAQocUmVhZEFkanVzdG1lbnRFbnRyaWVzUmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEwoFbW9udGgYAiABKAlCBOJBAQEaTgoiQWRqdXN0bWVudEVudHJpZXNSZXF1ZXN0QXdzT3B0aW9ucxITCgtzcHBEaXNjb3VudBgBIAEoCBITCgtlZHBEaXNjb3VudBgCIAEoCCJDChlHZXRBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhIQCgJpZBgCIAEoCUIE4kEBAiKeAwobQXBwbHlBZGp1c3RtZW50RW50cnlSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhJTCgdzZXR0aW5nGAIgASgLMjwuYmx1ZWFwaS5iaWxsaW5nLnYxLkFwcGx5QWRqdXN0bWVudEVudHJ5UmVxdWVzdC5BcHBseVNldHRpbmdCBOJBAQISFQoHZW50cmllcxgDIAMoCUIE4kEBAhr8AQoMQXBwbHlTZXR0aW5nEhMKBW1vbnRoGAEgASgJQgTiQQEBEhUKB3RheEZyZWUYAiABKAhCBOJBAQESagoMZXhjaGFuZ2VSYXRlGAMgAygLMk4uYmx1ZWFwaS5iaWxsaW5nLnYxLkFwcGx5QWRqdXN0bWVudEVudHJ5UmVxdWVzdC5BcHBseVNldHRpbmcuRXhjaGFuZ2VSYXRlRW50cnlCBOJBAQESHwoRYmlsbGluZ0ludGVybmFsSWQYBCABKAlCBOJBAQEaMwoRRXhjaGFuZ2VSYXRlRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgBOgI4ASJMCh1SZXN0b3JlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISFQoHZW50cmllcxgDIAMoCUIE4kEBAiJfChtTcGxpdEFkanVzdG1lbnRFbnRyeVJlcXVlc3QSFAoGdmVuZG9yGAEgASgJQgTiQQECEhAKAmlkGAIgASgJQgTiQQECEhgKCnN0YXJ0TW9udGgYAyABKAlCBOJBAQIi/AEKHkFsbG9jYXRlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQISVgoGY29uZmlnGAMgAygLMkAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFsbG9jYXRlQWRqdXN0bWVudEVudHJ5UmVxdWVzdC5BY2NvdW50Q29uZmlnQgTiQQECEiEKE2FjY291bnRGb3JSZW1haW5pbmcYBCABKAlCBOJBAQIaNwoNQWNjb3VudENvbmZpZxIQCgJpZBgBIAEoCUIE4kEBAhIUCgZhbW91bnQYAiABKAFCBOJBAQIiTAoiUmVzdG9yZVNwbGl0QWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQIiTwolUmVzdG9yZUFsbG9jYXRlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBIUCgZ2ZW5kb3IYASABKAlCBOJBAQISEAoCaWQYAiABKAlCBOJBAQIiPAobTGlzdEFjY291bnRSZXNvdXJjZXNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRINCgVtb250aBgCIAEoCSJKCg9SZXNvdXJjZUFjY291bnQSDwoHcGF5ZXJJZBgBIAEoCRISCgpjdXN0b21lcklkGAIgASgJEhIKCnJlZ2lzdGVyZWQYAyABKAgiLAoaR2V0QWRqdXN0bWVudENvbmZpZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIo0BCh1DcmVhdGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSKgoGY29uZmlnGAIgAygLMhouYmx1ZWFwaS5hcGkuQ29uZmlnRmlsdGVycxIwCghhY2NvdW50cxgDIAMoCzIeLmJsdWVhcGkuYXBpLk1hbmFnZW1lbnRBY2NvdW50Io0BCh1VcGRhdGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSKgoGY29uZmlnGAIgAygLMhouYmx1ZWFwaS5hcGkuQ29uZmlnRmlsdGVycxIwCghhY2NvdW50cxgDIAMoCzIeLmJsdWVhcGkuYXBpLk1hbmFnZW1lbnRBY2NvdW50Ii8KHURlbGV0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCSJnChlSZWFkVW50YWdnZWRHcm91cHNSZXF1ZXN0EhQKBnZlbmRvchgBIAEoCUIE4kEBAhI0CgpmaWVsZF9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBASJcCiRSZWFkQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlc1JlcXVlc3QSNAoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQEiZgoiR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIKCgJpZBgBIAEoCRI0CgpmaWVsZF9tYXNrGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkZpZWxkTWFza0IE4kEBASJ8CiVDcmVhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSMAoGY29uZmlnGAMgASgLMiAuYmx1ZWFwaS5hcGkucmlwcGxlLk1ldGhvZENvbmZpZyLFAQolVXBkYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBIQCgJpZBgBIAEoCUIE4kEBAhJUChhjdXN0b21pemVkQmlsbGluZ1NlcnZpY2UYAiABKAsyLC5ibHVlYXBpLmFwaS5yaXBwbGUuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQgTiQQECEjQKCnVwZGF0ZU1hc2sYAyABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQECIjMKJURlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QSCgoCaWQYASABKAkiXQouR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBIVCgdncm91cElkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAiLJAQovR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVzcG9uc2USEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAMgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEiwKCGFjY291bnRzGAQgAygLMhQuYmx1ZWFwaS5hcGkuQWNjb3VudEIE4kEBASL3AgouU2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBIVCgdncm91cElkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAhKAAQoHc2V0dGluZxgDIAMoCzJpLmJsdWVhcGkuYmlsbGluZy52MS5TZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0LkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nQgTiQQECGpQBCiZDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZxIQCgJpZBgBIAEoCUIE4kEBAhJACg5jaGFyZ2luZ1RhcmdldBgCIAEoDjIiLmJsdWVhcGkuYXBpLnJpcHBsZS5DaGFyZ2luZ1RhcmdldEIE4kEBAhIWCghhY2NvdW50cxgDIAMoCUIE4kEBASJgCjFEZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0EhUKB2dyb3VwSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECIpEBCiRDcmVhdGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRJGCgdzZXR0aW5nGAMgASgLMjUuYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzU2V0dGluZyLFAQokVXBkYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECElUKF2ludm9pY2VTZXJ2aWNlRGlzY291bnRzGAIgASgLMi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzQgTiQQECEjQKCnVwZGF0ZU1hc2sYAyABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQgTiQQECIjIKJERlbGV0ZUludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBIKCgJpZBgBIAEoCSJuCgdUYWdEYXRhEhIKCmN1c3RvbWVySWQYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhQKDGN1c3RvbWVyTmFtZRgDIAEoCRImCgR0YWdzGAQgAygLMhguYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ3MiIwoEVGFncxILCgNrZXkYASABKAkSDgoGdmFsdWVzGAIgAygJIi4KDkdldFRhZ3NSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIMCgR0eXBlGAIgASgJIjsKC0N1c3RvbUZpZWxkEgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCSJeChdCaWxsaW5nR3JvdXBDdXN0b21GaWVsZBINCgV2YWx1ZRgBIAEoCRI0CgtjdXN0b21GaWVsZBgCIAEoCzIfLmJsdWVhcGkuYmlsbGluZy52MS5DdXN0b21GaWVsZCI1CiJMaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkihQEKI0xpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlc3BvbnNlEg8KB2dyb3VwSWQYASABKAkSTQoYYmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzGAIgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cEN1c3RvbUZpZWxkIjwKGENyZWF0ZUN1c3RvbUZpZWxkUmVxdWVzdBILCgNrZXkYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkiSAoYVXBkYXRlQ3VzdG9tRmllbGRSZXF1ZXN0EgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCSImChhEZWxldGVDdXN0b21GaWVsZFJlcXVlc3QSCgoCaWQYASABKAkiGAoWTGlzdEN1c3RvbUZpZWxkUmVxdWVzdCJrChdDcmVhdGVGcmVlRm9ybWF0UmVxdWVzdBIPCgdncm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIvCgVpdGVtcxgDIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0iYQoMRnJlZUZvcm1JdGVtEg0KBWxhYmVsGAEgASgJEhAKCHVuaXRDb3N0GAIgASgDEg0KBXRvdGFsGAUgASgDEhAKCHF1YW50aXR5GAMgASgNEg8KB2VuYWJsZWQYBCABKAgiOgoXRGVsZXRlRnJlZUZvcm1hdFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkiPQoUR2V0RnJlZUZvcm1hdFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRIUCgxpc0Fzc29jaWF0ZWQYAiABKAgibgoVR2V0RnJlZUZvcm1hdFJlc3BvbnNlEg8KB2dyb3VwSWQYAyABKAkSDgoGdmVuZG9yGAEgASgJEjQKCmZyZWVGb3JtYXQYAiADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuRnJlZUZvcm1JdGVtIncKHlVwZGF0ZVRhZ3NBZGRpbmdTZXR0aW5nUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDwoHZ3JvdXBJZBgCIAEoCRI0CgVpdGVtcxgDIAMoCzIlLmJsdWVhcGkuYmlsbGluZy52MS5UYWdzQWRkaW5nU2V0dGluZyI+ChtHZXRUYWdzQWRkaW5nU2V0dGluZ1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg8KB2dyb3VwSWQYAiABKAkiSQoRVGFnc0FkZGluZ1NldHRpbmcSDwoHZ3JvdXBJZBgBIAEoCRISCgpjdXN0b21lcklkGAIgASgJEg8KB3RhZ0tleXMYAyADKAkiTQodRXhwb3J0U2VydmljZURpc2NvdW50c1JlcXVlc3QSFAoGZm9ybWF0GAEgASgJQgTiQQECEhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBIm8KK0V4cG9ydEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSFAoGZm9ybWF0GAEgASgJQgTiQQECEhYKCGxhbmd1YWdlGAIgASgJQgTiQQEBEhIKCmRpcmVjdExpbmsYAyABKAgidAowRXhwb3J0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhQKBmZvcm1hdBgBIAEoCUIE4kEBAhIWCghsYW5ndWFnZRgCIAEoCUIE4kEBARISCgpkaXJlY3RMaW5rGAMgASgIIjYKHEV4cG9ydEJpbGxpbmdHcm91cENzdlJlcXVlc3QSFgoIbGFuZ3VhZ2UYAiABKAlCBOJBAQEiNQodRXhwb3J0QmlsbGluZ0dyb3VwQ3N2UmVzcG9uc2USFAoMZG93bmxvYWRMaW5rGAEgASgJIlwKHkV4cG9ydEludm9pY2VTZXR0aW5nQ3N2UmVxdWVzdBIWCghsYW5ndWFnZRgCIAEoCUIE4kEBARIiChRpbmNsdWRlTWlzY2VsbGFuZW91cxgDIAEoCEIE4kEBASI3Ch9FeHBvcnRJbnZvaWNlU2V0dGluZ0NzdlJlc3BvbnNlEhQKDGRvd25sb2FkTGluaxgBIAEoCSJACi1HZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCSI8Ci5HZXRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEgoKAmlkGAEgASgJIrkBCiFBZGRCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QSDwoHZ3JvdXBJZBgBIAEoCRJTCgdpZFRvS2V5GAIgAygLMkIuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZEJpbGxpbmdHcm91cEN1c3RvbUZpZWxkUmVxdWVzdC5JZFRvS2V5RW50cnkaLgoMSWRUb0tleUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiTgokRGVsZXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSFQoNY3VzdG9tRmllbGRJZBgCIAEoCSJ2Ch9BZGRBY2NvdW50VG9CaWxsaW5nR3JvdXBSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDgoGdmVuZG9yGAIgASgJEjIKCGFjY291bnRzGAMgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRUb0FkZCJRCgxBY2NvdW50VG9BZGQSEgoKY3VzdG9tZXJJZBgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSDAoEbmFtZRgDIAEoCRIMCgRub3RlGAQgASgJIqsBChxBZGRUYWdzVG9CaWxsaW5nR3JvdXBSZXF1ZXN0Eg8KB2dyb3VwSWQYASABKAkSDgoGdmVuZG9yGAIgASgJEjAKCHNldHRpbmdzGAMgAygLMh4uYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZ1NldHRpbmcSOAoNbm9uVGFnU2V0dGluZxgEIAEoCzIhLmJsdWVhcGkuYmlsbGluZy52MS5Ob25UYWdTZXR0aW5nIkcKClRhZ1NldHRpbmcSEgoKY3VzdG9tZXJJZBgBIAEoCRIlCgR0YWdzGAIgAygLMhcuYmx1ZWFwaS5iaWxsaW5nLnYxLlRhZyIxCgNUYWcSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJEg4KBmFzc2lnbhgDIAEoBSI+Cg1Ob25UYWdTZXR0aW5nEg8KB2luY2x1ZGUYASABKAgSDAoEdHlwZRgCIAEoCRIOCgZhbW91bnQYAyABKAEiPgodU2F2ZVRhZ0ludm9pY2VTZXR0aW5nUmVzcG9uc2USDgoGc3RhdHVzGAEgASgJEg0KBWVycm9yGAIgASgJIn4KJlVwZGF0ZU5vblRhZ0dyb3VwVG9CaWxsaW5nR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJEg4KBnZlbmRvchgCIAEoCRI4CghzZXR0aW5ncxgDIAMoCzImLmJsdWVhcGkuYmlsbGluZy52MS5Ob25UYWdHcm91cFNldHRpbmciPgoSTm9uVGFnR3JvdXBTZXR0aW5nEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkSDgoGYW1vdW50GAMgASgBIpoBChpTYXZlSW52b2ljZVNldHRpbmdzUmVxdWVzdBIMCgRkYXRlGAEgASgJEg4KBnZlbmRvchgCIAEoCRIRCglhbGxHcm91cHMYAyABKAgSDgoGZ3JvdXBzGAQgAygJEjsKDmludm9pY2VTZXR0aW5nGAUgASgLMiMuYmx1ZWFwaS5iaWxsaW5nLnYxLkludm9pY2VTZXR0aW5ncyKVBAoPSW52b2ljZVNldHRpbmdzEhEKCWludm9pY2VObxgCIAEoCRIUCgxkaXNjb3VudFJhdGUYBCABKAESGwoTZGlzY291bnRUYXJnZXRVc2FnZRgFIAEoCRIZChFkaXNjb3VudENhbGNMb2dpYxgGIAEoCRIPCgd0YXhSYXRlGAcgASgBEhIKCnN1cHBvcnRGZWUYCCABKAkSEwoLc3VwcG9ydFJhdGUYCSABKAESHAoUc3VwcG9ydEZlZUNhbGNUYXJnZXQYCiABKAkSEgoKc3VwcG9ydEZpeBgLIAEoARIXCg9zdWJzdGl0dXRpb25GZWUYDCABKAkSGAoQc3Vic3RpdHV0aW9uUmF0ZRgNIAEoARIXCg9zdWJzdGl0dXRpb25GaXgYDiABKAESIQoZc3Vic3RpdHV0aW9uRmVlQ2FsY1RhcmdldBgPIAEoCRIiChpzdWJzdGl0dXRpb25GZWVUYXJnZXRVc2FnZRgQIAEoCRIfChdzdWJzdGl0dXRpb25GZWVDYWxjVHlwZRgRIAEoCRIQCghjdXJyZW5jeRgDIAEoCRIUCgxleGNoYW5nZVJhdGUYEiABKAESDAoEbWVtbxgTIAEoCRIQCghjYWxjVHlwZRgUIAEoCRI5Cg9hZGRpdGlvbmFsSXRlbXMYFSADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuRnJlZUZvcm1JdGVtIq0DChBCYXNpY0luZm9ybWF0aW9uEhgKEGJpbGxpbmdHcm91cE5hbWUYAiABKAkSFgoOYmlsbGluZ0dyb3VwSWQYAyABKAkSEwoLY29tcGFueU5hbWUYBCABKAkSFgoJYWRkcmVzc2VlGAUgASgJSACIAQESFAoHY291bnRyeRgGIAEoCUgBiAEBEhcKCnBvc3RhbENvZGUYByABKAlIAogBARIRCgRjaXR5GAggASgJSAOIAQESGAoLcGhvbmVOdW1iZXIYCSABKAlIBIgBARIZCgxhZGRyZXNzTGluZTEYCiABKAlIBYgBARIZCgxhZGRyZXNzTGluZTIYCyABKAlIBogBARISCgVzdGF0ZRgMIAEoCUgHiAEBEhcKCnByZWZlY3R1cmUYDSABKAlICIgBAUIMCgpfYWRkcmVzc2VlQgoKCF9jb3VudHJ5Qg0KC19wb3N0YWxDb2RlQgcKBV9jaXR5Qg4KDF9waG9uZU51bWJlckIPCg1fYWRkcmVzc0xpbmUxQg8KDV9hZGRyZXNzTGluZTJCCAoGX3N0YXRlQg0KC19wcmVmZWN0dXJlIncKKVVwZGF0ZUJpbGxpbmdHcm91cEJhc2ljSW5mb3JtYXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJEj4KEGJhc2ljSW5mb3JtYXRpb24YAiABKAsyJC5ibHVlYXBpLmJpbGxpbmcudjEuQmFzaWNJbmZvcm1hdGlvbiK8AQolVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzUmVxdWVzdBIKCgJpZBgBIAEoCRJXCgdpZFRvS2V5GAIgAygLMkYuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEN1c3RvbUZpZWxkc1JlcXVlc3QuSWRUb0tleUVudHJ5Gi4KDElkVG9LZXlFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBInIKI1VwZGF0ZUJpbGxpbmdHcm91cEZyZWVGb3JtYXRSZXF1ZXN0EgoKAmlkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIvCgVpdGVtcxgDIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5GcmVlRm9ybUl0ZW0i6gIKKFVwZGF0ZUJpbGxpbmdHcm91cExpbmtlZFJlc291cmNlc1JlcXVlc3QSCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEhcKD3NlbGVjdGlvbk1ldGhvZBgDIAEoCRIyCghhY2NvdW50cxgEIAMoCzIgLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50VG9BZGQSMAoIc2V0dGluZ3MYBSADKAsyHi5ibHVlYXBpLmJpbGxpbmcudjEuVGFnU2V0dGluZxI9Cg1ub25UYWdTZXR0aW5nGAYgASgLMiEuYmx1ZWFwaS5iaWxsaW5nLnYxLk5vblRhZ1NldHRpbmdIAIgBARI/Cg5hY2NvdW50T3B0aW9ucxgHIAEoCzIiLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50T3B0aW9uc0gBiAEBQhAKDl9ub25UYWdTZXR0aW5nQhEKD19hY2NvdW50T3B0aW9ucyK4AQooVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVxdWVzdBIKCgJpZBgBIAEoCRIZCgxiaWxsaW5nVGl0bGUYAiABKAlIAIgBARIcCg9jYWxjdWxhdGlvblR5cGUYAyABKAlIAYgBARIVCghsYW5ndWFnZRgEIAEoCUgCiAEBQg8KDV9iaWxsaW5nVGl0bGVCEgoQX2NhbGN1bGF0aW9uVHlwZUILCglfbGFuZ3VhZ2UirwEKKFVwZGF0ZUJpbGxpbmdHcm91cFJlc2VsbGVyQ2hhcmdlc1JlcXVlc3QSCgoCaWQYASABKAkSHAoPaW52b2ljZVRlbXBsYXRlGAIgASgJSACIAQESRQoHaW52b2ljZRgDIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0SW52b2ljZUISChBfaW52b2ljZVRlbXBsYXRlIr8ECipVcGRhdGVCaWxsaW5nR3JvdXBBZGRpdGlvbmFsQ2hhcmdlc1JlcXVlc3QSCgoCaWQYASABKAkSeAoDYXdzGAIgAygLMmUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhJ6CgVhenVyZRgDIAMoCzJlLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBBZGRpdGlvbmFsQ2hhcmdlc1JlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQISeAoDZ2NwGAQgAygLMmUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEFkZGl0aW9uYWxDaGFyZ2VzUmVxdWVzdC5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nU2V0dGluZ0IE4kEBAhqUAQomQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmcSEAoCaWQYASABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAiABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISFgoIYWNjb3VudHMYAyADKAlCBOJBAQEiJwoZRGVsZXRlQmlsbGluZ0dyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCSJSCihHZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECEhQKBnZlbmRvchgCIAEoCUIE4kEBAiKgAQopR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVzcG9uc2USCgoCaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEg8KB2VuYWJsZWQYAyABKAgSRgoHc2V0dGluZxgEIAMoCzI1LmJsdWVhcGkuYXBpLnJpcHBsZS52MS5CaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW4i8AEKK1VwZGF0ZUJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhblJlcXVlc3QSEAoCaWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEhUKB2VuYWJsZWQYAyABKAhCBOJBAQESTAoHc2V0dGluZxgEIAMoCzI1LmJsdWVhcGkuYXBpLnJpcHBsZS52MS5CaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5CBOJBAQESNAoKdXBkYXRlTWFzaxgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCBOJBAQIiMQoXR2V0QW5ub3VuY2VtZW50c1JlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASABKAkipwEKGUNyZWF0ZUFubm91bmNlbWVudFJlcXVlc3QSDQoFbGFiZWwYASABKAkSDAoEdHlwZRgCIAEoCRIQCghjb250ZW50cxgDIAEoCRIVCg1iaWxsaW5nR3JvdXBzGAQgAygJEhgKEGFsbEJpbGxpbmdHcm91cHMYBSABKAgSDQoFc3RhcnQYBiABKAMSCwoDZW5kGAcgASgDEg4KBnN0YXR1cxgIIAEoCSJ4ChlVcGRhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgASgJEkMKDGFubm91bmNlbWVudBgCIAEoCzItLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBbm5vdW5jZW1lbnRSZXF1ZXN0IkoKIFVwZGF0ZUFubm91bmNlbWVudHNTdGF0dXNSZXF1ZXN0EhYKDmFubm91bmNlbWVudElkGAEgAygJEg4KBnN0YXR1cxgCIAEoCSJFCh1VcGRhdGVBbm5vdW5jZW1lbnREYXRlUmVxdWVzdBIWCg5hbm5vdW5jZW1lbnRJZBgBIAMoCRIMCgRkYXRlGAIgASgDIjMKGURlbGV0ZUFubm91bmNlbWVudFJlcXVlc3QSFgoOYW5ub3VuY2VtZW50SWQYASABKAki6QEKDEFubm91bmNlbWVudBIKCgJpZBgBIAEoCRINCgVsYWJlbBgCIAEoCRIMCgR0eXBlGAMgASgJEg8KB21lc3NhZ2UYBCABKAkSFQoNYmlsbGluZ0dyb3VwcxgFIAMoCRIYChBhbGxCaWxsaW5nR3JvdXBzGA0gASgIEg0KBXN0YXJ0GAYgASgJEgsKA2VuZBgHIAEoCRIMCgRkYXRlGAggASgJEg4KBnN0YXR1cxgJIAEoCRISCgp1c2VyU3RhdHVzGAogASgJEg8KB2NyZWF0ZWQYCyABKAkSDwoHdXBkYXRlZBgMIAEoCSI2CiNHZXRCaWxsaW5nR3JvdXBBbm5vdW5jZW1lbnRzUmVxdWVzdBIPCgdncm91cElkGAEgASgJIpYBCiRHZXRCaWxsaW5nR3JvdXBBbm5vdW5jZW1lbnRzUmVzcG9uc2USDwoHZ3JvdXBJZBgBIAEoCRIRCglncm91cE5hbWUYAiABKAkSEQoJY29tcGFueUlkGAMgASgJEjcKDWFubm91bmNlbWVudHMYBCADKAsyIC5ibHVlYXBpLmJpbGxpbmcudjEuQW5ub3VuY2VtZW50IhMKEUdldENyZWRpdHNSZXF1ZXN0IsQBCgZDcmVkaXQSCgoCaWQYASABKAkSEgoKY3VzdG9tZXJJZBgCIAEoCRIUCgxjdXN0b21lck5hbWUYAyABKAkSFAoMY3JlZGl0QW1vdW50GAQgASgBEgwKBHRlcm0YBSABKAkSEwoLZGVzY3JpcHRpb24YBiABKAkSDwoHY3JlYXRlZBgHIAEoCRISCgppbml0aWFsRmVlGAggASgBEhUKDWNyZWRpdEJhbGFuY2UYCSABKAESDwoHYXBwbGllZBgKIAEoCCIXChVHZXRDc3ZTZXR0aW5nc1JlcXVlc3QipAEKCkNzdlNldHRpbmcSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIyCgNjb2wYAyADKAsyJS5ibHVlYXBpLmJpbGxpbmcudjEuQ3N2U2V0dGluZy5Db2x1bW4aSAoGQ29sdW1uEgwKBG5hbWUYASABKAkSCgoCaWQYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHZW5hYmxlZBgEIAEoCCLmAQogVXBkYXRlSW52b2ljZUV4Y2hhbmdlUmF0ZVJlcXVlc3QSDQoFbW9udGgYASABKAkSDgoGdmVuZG9yGAIgASgJElwKDGV4Y2hhbmdlUmF0ZRgDIAMoCzJGLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlUmVxdWVzdC5FeGNoYW5nZVJhdGVFbnRyeRIQCghncm91cElkcxgEIAMoCRozChFFeGNoYW5nZVJhdGVFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBIlsKGkNvbnZlcnRJbnZvaWNlVG9QZGZSZXF1ZXN0EgwKBGRhdGUYASABKAkSFQoNYmlsbGluZ2dyb3VwcxgCIAMoCRIYChBhbGxCaWxsaW5nR3JvdXBzGAMgASgIIkQKG0NvbnZlcnRJbnZvaWNlVG9QZGZSZXNwb25zZRIQCghwcm9ncmVzcxgBIAEoCRITCgtkb3dubG9hZFVybBgCIAEoCSKIAgohTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWRSZXF1ZXN0Ei4KCmZpZWxkX21hc2sYASABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrEg8KB3ZlbmRvcnMYAiABKAkSEAoIY2FsY1R5cGUYAyABKAkSEwoLZGlzcGxheUNvc3QYBCABKAkSDgoGYmdUeXBlGAUgASgJEhMKC2NvbXBhbnlOYW1lGAYgASgJEhgKEGJpbGxpbmdHcm91cE5hbWUYByABKAkSFgoOYmlsbGluZ0dyb3VwSWQYCCABKAkSEAoIcGFnZVNpemUYCSABKAUSEgoKcGFnZU51bWJlchgKIAEoBSKXAgoUQmlsbGluZ0dyb3VwTGlzdEl0ZW0SGAoQYmlsbGluZ0dyb3VwTmFtZRgBIAEoCRIWCg5iaWxsaW5nR3JvdXBJZBgCIAEoCRITCgtjb21wYW55TmFtZRgDIAEoCRIYChBiaWxsaW5nR3JvdXBUeXBlGAQgASgJEkwKB3ZlbmRvcnMYBSADKAsyOy5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwTGlzdEl0ZW0uQmlsbGluZ0dyb3VwVmVuZG9yEhkKEWJpbGxpbmdJbnRlcm5hbElkGAYgASgJGjUKEkJpbGxpbmdHcm91cFZlbmRvchIOCgZ2ZW5kb3IYASABKAkSDwoHZW5hYmxlZBgCIAEoCCK0AQoiTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWRSZXNwb25zZRI/Cg1iaWxsaW5nR3JvdXBzGAEgAygLMiguYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cExpc3RJdGVtEhIKCnRvdGFsQ291bnQYAiABKAUSEwoLY3VycmVudFBhZ2UYAyABKAUSEAoIcGFnZVNpemUYBCABKAUSEgoKdG90YWxQYWdlcxgFIAEoBSKOAQohQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEgoKAmlkGAEgASgJEhIKCmludGVybmFsSWQYBiABKAkSEAoIcGFyZW50SWQYAiABKAkSFAoMcm9vdFBhcmVudElkGAUgASgJEgwKBG5hbWUYAyABKAkSEwoLY29tcGFueU5hbWUYBCABKAkivgEKJEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cBIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAyABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISLAoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50QgTiQQEBIu4BChFDaGlsZEJpbGxpbmdHcm91cBJPChBiYXNpY0luZm9ybWF0aW9uGAEgASgLMjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvbhJNCg9pbnZvaWNlU2V0dGluZ3MYAiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSOQoLYmlsbGluZ0luZm8YAyABKAsyJC5ibHVlYXBpLmFwaS5yaXBwbGUuQmlsbGluZ0dyb3VwSW5mbyLlAQogQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQwoDYXdzGAEgASgLMjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cFZlbmRvcmVkSW52b2ljZVNldHRpbmcSIQoZYWNjb3VudFN1cHBvcnRQbGFuRW5hYmxlZBgCIAEoCBJZChphY2NvdW50U3VwcG9ydFBsYW5TZXR0aW5ncxgDIAMoCzI1LmJsdWVhcGkuYXBpLnJpcHBsZS52MS5CaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW4i+wEKHkNyZWF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBJPChBiYXNpY0luZm9ybWF0aW9uGAEgASgLMjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkNoaWxkQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvbhI5CgtiaWxsaW5nSW5mbxgDIAEoCzIkLmJsdWVhcGkuYXBpLnJpcHBsZS5CaWxsaW5nR3JvdXBJbmZvEk0KD2ludm9pY2VTZXR0aW5ncxgCIAEoCzI0LmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5ncyIhCh9DcmVhdGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIjEKG0dldENoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJIlYKHEdldENoaWxkQmlsbGluZ0dyb3VwUmVzcG9uc2USNgoHZGV0YWlscxgBIAEoCzIlLmJsdWVhcGkuYmlsbGluZy52MS5DaGlsZEJpbGxpbmdHcm91cCJBCh1MaXN0Q2hpbGRCaWxsaW5nR3JvdXBzUmVxdWVzdBIOCgZyb290SWQYASABKAkSEAoIcGFyZW50SWQYAiABKAkiwAEKHlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJEk8KEGJhc2ljSW5mb3JtYXRpb24YAiABKAsyNS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uEjkKC2JpbGxpbmdJbmZvGAMgASgLMiQuYmx1ZWFwaS5hcGkucmlwcGxlLkJpbGxpbmdHcm91cEluZm8iIQofVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSI0Ch5EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCSIhCh9EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIpIBCi1VcGRhdGVDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXR0aW5nc1JlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCRJNCg9pbnZvaWNlU2V0dGluZ3MYAiABKAsyNC5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MiMAouVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXNwb25zZSKaAwozU2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0EhgKCmludGVybmFsSWQYASABKAlCBOJBAQISFAoGdmVuZG9yGAIgASgJQgTiQQECEhQKBnJvb3RJZBgDIAEoCUIE4kEBAhKFAQoHc2V0dGluZxgEIAMoCzJuLmJsdWVhcGkuYmlsbGluZy52MS5TZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QuQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ1NldHRpbmdCBOJBAQIalAEKJkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdTZXR0aW5nEhAKAmlkGAEgASgJQgTiQQECEkAKDmNoYXJnaW5nVGFyZ2V0GAIgASgOMiIuYmx1ZWFwaS5hcGkucmlwcGxlLkNoYXJnaW5nVGFyZ2V0QgTiQQECEhYKCGFjY291bnRzGAMgAygJQgTiQQEBIlQKMlNldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkSCgoCaWQYAiABKAkijgEKOVNldENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJEj0KCGFjY291bnRzGAIgAygLMisuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRTZXJ2aWNlRGlzY291bnRzIlkKM0dldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBISCgppbnRlcm5hbElkGAEgASgJEg4KBnZlbmRvchgCIAEoCSLOAQo0R2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXNwb25zZRIQCgJpZBgBIAEoCUIE4kEBAhIUCgZ2ZW5kb3IYAiABKAlCBOJBAQISQAoOY2hhcmdpbmdUYXJnZXQYAyABKA4yIi5ibHVlYXBpLmFwaS5yaXBwbGUuQ2hhcmdpbmdUYXJnZXRCBOJBAQISLAoIYWNjb3VudHMYBCADKAsyFC5ibHVlYXBpLmFwaS5BY2NvdW50QgTiQQEBIkgKMkdldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0EhIKCmludGVybmFsSWQYASABKAkiQQozR2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlEgoKAmlkGAEgASgJIlAKOkxpc3RDaGlsZEJpbGxpbmdHcm91cEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QSEgoKaW50ZXJuYWxJZBgBIAEoCSI/ChVDaGlsZEJpbGxpbmdHcm91cEluZm8SEAoIcGFyZW50SWQYASABKAkSFAoMcm9vdFBhcmVudElkGAIgASgJImkKHUJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0EhIKCmNzdkNvbnRlbnQYASABKAwSEQoJZGVsaW1pdGVyGAIgASgJEhEKCWhhc0hlYWRlchgDIAEoCBIOCgZkcnlSdW4YBCABKAgiqQEKHkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXNwb25zZRI3Cg1iaWxsaW5nR3JvdXBzGAEgAygLMiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cBI/CgZlcnJvcnMYAiADKAsyLy5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0NyZWF0ZUJpbGxpbmdHcm91cEVycm9yEg0KBWpvYklkGAMgASgJIlUKG0J1bGtDcmVhdGVCaWxsaW5nR3JvdXBFcnJvchINCgVpbmRleBgBIAEoBRIWCg5iaWxsaW5nR3JvdXBJZBgCIAEoCRIPCgdtZXNzYWdlGAMgASgJIjQKI0dldEJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBKb2JSZXF1ZXN0Eg0KBWpvYklkGAEgASgJIpMCCiRHZXRCdWxrQ3JlYXRlQmlsbGluZ0dyb3VwSm9iUmVzcG9uc2USDQoFam9iSWQYASABKAkSDgoGc3RhdHVzGAIgASgJEhIKCnRvdGFsQ291bnQYAyABKAUSFgoOcHJvY2Vzc2VkQ291bnQYBCABKAUSFAoMc3VjY2Vzc0NvdW50GAUgASgFEhQKDGZhaWx1cmVDb3VudBgGIAEoBRI/CgZlcnJvcnMYByADKAsyLy5ibHVlYXBpLmJpbGxpbmcudjEuQnVsa0NyZWF0ZUJpbGxpbmdHcm91cEVycm9yEhEKCXN0YXJ0VGltZRgIIAEoCRIPCgdlbmRUaW1lGAkgASgJEg8KB21lc3NhZ2UYCiABKAkiuQEKE0V4Y2x1ZGVTZXJ2aWNlRW50cnkSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkSFwoPZXhjZXB0X3BheWVyX2lkGAYgAygJEg4KBmFjdGlvbhgHIAEoCRIOCgZzdGF0dXMYCCABKAkSFQoNZXJyb3JfbWVzc2FnZRgJIAEoCSKPAQogQ3JlYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkSFwoPZXhjZXB0X3BheWVyX2lkGAYgAygJIlsKIUNyZWF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZRI2CgVlbnRyeRgBIAEoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5Io8BCiBVcGRhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVxdWVzdBIOCgZtc3BfaWQYASABKAkSDgoGdmVuZG9yGAIgASgJEhAKCHBheWVyX2lkGAMgASgJEg8KB3NlcnZpY2UYBCABKAkSDwoHcHJvZHVjdBgFIAEoCRIXCg9leGNlcHRfcGF5ZXJfaWQYBiADKAkiWwohVXBkYXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlEjYKBWVudHJ5GAEgASgLMicuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4Y2x1ZGVTZXJ2aWNlRW50cnkidgogRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIQCghwYXllcl9pZBgDIAEoCRIPCgdzZXJ2aWNlGAQgASgJEg8KB3Byb2R1Y3QYBSABKAkiWwohRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlEjYKBWVudHJ5GAEgASgLMicuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4Y2x1ZGVTZXJ2aWNlRW50cnkiPAoaTGlzdEV4Y2x1ZGVTZXJ2aWNlc1JlcXVlc3QSDgoGbXNwX2lkGAEgASgJEg4KBnZlbmRvchgCIAEoCSJXChtMaXN0RXhjbHVkZVNlcnZpY2VzUmVzcG9uc2USOAoHZW50cmllcxgBIAMoCzInLmJsdWVhcGkuYmlsbGluZy52MS5FeGNsdWRlU2VydmljZUVudHJ5MtawAQoHQmlsbGluZxKAAQoRTGlzdEJpbGxpbmdHcm91cHMSLC5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cHNSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCIZgtPkkwITEhEvdjEvYmlsbGluZ2dyb3VwczABErABChpMaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZBI1LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3Vwc1BhZ2luYXRlZFJlcXVlc3QaNi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEJpbGxpbmdHcm91cHNQYWdpbmF0ZWRSZXNwb25zZSIjgtPkkwIdEhsvdjEvYmlsbGluZ2dyb3VwczpwYWdpbmF0ZWQSgwEKEkNyZWF0ZUJpbGxpbmdHcm91cBItLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkJpbGxpbmdHcm91cCIcgtPkkwIWOgEqIhEvdjEvYmlsbGluZ2dyb3VwcxKWAQoYQ3JlYXRlQmlsbGluZ0dyb3VwTWVyZ2VkEjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cE1lcmdlZFJlcXVlc3QaIC5ibHVlYXBpLmJpbGxpbmcudjEuQmlsbGluZ0dyb3VwIiOC0+STAh06ASoiGC92MS9iaWxsaW5nZ3JvdXBzL21lcmdlZBJ5ChFEZWxldGVCaWxsaW5Hcm91cBItLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVCaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih2C0+STAhcqFS92MS9iaWxsaW5nZ3JvdXAve2lkfRKMAQoYQWRkQWNjb3VudFRvQmlsbGluZ0dyb3VwEjMuYmx1ZWFwaS5iaWxsaW5nLnYxLkFkZEFjY291bnRUb0JpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiI4LT5JMCHToBKiIYL3YxL2JpbGxpbmdncm91cC9hY2NvdW50EpkBCg9HZXRCaWxsaW5nR3JvdXASKi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwUmVxdWVzdBorLmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBSZXNwb25zZSItgtPkkwInEiUvdjEvYmlsbGluZ2dyb3Vwcy97YmlsbGluZ0ludGVybmFsSWR9EpEBCg5HZXRBY2Nlc3NHcm91cBIpLmJsdWVhcGkuYmlsbGluZy52MS5HZXRBY2Nlc3NHcm91cFJlcXVlc3QaKi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QWNjZXNzR3JvdXBSZXNwb25zZSIogtPkkwIiEiAvdjEvYWNjZXNzZ3JvdXBzL3thY2Nlc3NHcm91cElkfRKeAQoWTGlzdEF3c0RhaWx5UnVuSGlzdG9yeRIxLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QXdzRGFpbHlSdW5IaXN0b3J5UmVxdWVzdBomLmJsdWVhcGkuYmlsbGluZy52MS5Bd3NEYWlseVJ1bkhpc3RvcnkiJ4LT5JMCIToBKiIcL3YxL2F3cy9kYWlseXJ1bmhpc3Rvcnk6cmVhZDABEpoBChNMaXN0VXNhZ2VDb3N0c0RyaWZ0Ei4uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RVc2FnZUNvc3RzRHJpZnRSZXF1ZXN0GiMuYmx1ZWFwaS5iaWxsaW5nLnYxLlVzYWdlQ29zdHNEcmlmdCIsgtPkkwImOgEqIiEvdjEve3ZlbmRvcn0vdXNhZ2Vjb3N0c2RyaWZ0OnJlYWQwARJ8Cg1DcmVhdGVJbnZvaWNlEiguYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUludm9pY2VSZXF1ZXN0GhsuYmx1ZWFwaS5hcGkuSW52b2ljZU1lc3NhZ2UiJILT5JMCHjoBKiIZL3YxL2ludm9pY2Uve2RhdGV9OmNyZWF0ZRKbAQoZQ3JlYXRlSW52b2ljZVdpdGhTZXR0aW5ncxIuLmJsdWVhcGkuYmlsbGluZy52MS5TYXZlSW52b2ljZVNldHRpbmdzUmVxdWVzdBobLmJsdWVhcGkuYXBpLkludm9pY2VNZXNzYWdlIjGC0+STAis6ASoiJi92MS9pbnZvaWNlL3tkYXRlfTpjcmVhdGUmc2F2ZXNldHRpbmdzEokBChNTYXZlSW52b2ljZVNldHRpbmdzEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLlNhdmVJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiqC0+STAiQ6ASoiHy92MS9pbnZvaWNlL3tkYXRlfTpzYXZlc2V0dGluZ3MSogEKE0NvbnZlcnRJbnZvaWNlVG9QZGYSLi5ibHVlYXBpLmJpbGxpbmcudjEuQ29udmVydEludm9pY2VUb1BkZlJlcXVlc3QaLy5ibHVlYXBpLmJpbGxpbmcudjEuQ29udmVydEludm9pY2VUb1BkZlJlc3BvbnNlIiqC0+STAiQ6ASoiHy92MS9pbnZvaWNlL3tkYXRlfTpjb252ZXJ0dG9wZGYSfQoQR2V0SW52b2ljZVN0YXR1cxIrLmJsdWVhcGkuYmlsbGluZy52MS5HZXRJbnZvaWNlU3RhdHVzUmVxdWVzdBobLmJsdWVhcGkuYXBpLkludm9pY2VNZXNzYWdlIh+C0+STAhkSFy92MS9pbnZvaWNlL3N0YXR1cy97aWR9EosBChFMaXN0SW52b2ljZVN0YXR1cxIsLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVN0YXR1c1JlcXVlc3QaGy5ibHVlYXBpLmFwaS5JbnZvaWNlTWVzc2FnZSIpgtPkkwIjOgEqIh4vdjEvaW52b2ljZS9zdGF0dXMve2RhdGV9OnJlYWQwARJtCgpHZXRJbnZvaWNlEiUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VSZXF1ZXN0GhQuYmx1ZWFwaS5hcGkuSW52b2ljZSIigtPkkwIcOgEqIhcvdjEvaW52b2ljZS97ZGF0ZX06cmVhZBJ9CgtMaXN0SW52b2ljZRImLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVJlcXVlc3QaJy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEludm9pY2VSZXNwb25zZSIbgtPkkwIVOgEqIhAvdjEvaW52b2ljZTpyZWFkMAESiAEKFVVwZGF0ZUludm9pY2VQcmV2aWV3cxIwLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlUHJldmlld3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiWC0+STAh86ASoaGi92MS9pbnZvaWNlL3tkYXRlfTpwcmV2aWV3EpYBChFFeHBvcnRJbnZvaWNlRmlsZRIsLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRJbnZvaWNlRmlsZVJlcXVlc3QaLS5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZUZpbGVSZXNwb25zZSIkgtPkkwIeOgEqIhkvdjEvaW52b2ljZS97ZGF0ZX06ZXhwb3J0EpYBChNMaXN0SW52b2ljZVRlbXBsYXRlEi4uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlVGVtcGxhdGVSZXF1ZXN0Gi8uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RJbnZvaWNlVGVtcGxhdGVSZXNwb25zZSIcgtPkkwIWEhQvdjEvaW52b2ljZS90ZW1wbGF0ZTABEq0BChlHZXRJbnZvaWNlRGlzcGxheVNldHRpbmdzEjQuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXF1ZXN0GjUuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEludm9pY2VEaXNwbGF5U2V0dGluZ3NSZXNwb25zZSIjgtPkkwIdEhsvdjEvaW52b2ljZS9kaXNwbGF5c2V0dGluZ3MSlwEKHFVwZGF0ZUludm9pY2VEaXNwbGF5U2V0dGluZ3MSNy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlSW52b2ljZURpc3BsYXlTZXR0aW5nc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiJoLT5JMCIDoBKiIbL3YxL2ludm9pY2UvZGlzcGxheXNldHRpbmdzEpYBChlVcGRhdGVJbnZvaWNlRXhjaGFuZ2VSYXRlEjQuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUludm9pY2VFeGNoYW5nZVJhdGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiuC0+STAiU6ASoaIC92MS9pbnZvaWNlL2V4Y2hhbmdlcmF0ZS97bW9udGh9EqwBCiFVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlVGVtcGxhdGUSPC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVRlbXBsYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIxgtPkkwIrOgEqIiYvdjEvYmlsbGluZ2dyb3Vwcy97aWR9L2ludm9pY2V0ZW1wbGF0ZRKxAQocUmVhZFNlcnZpY2VEaXNjb3VudHNTZXJ2aWNlcxI3LmJsdWVhcGkuYmlsbGluZy52MS5SZWFkU2VydmljZURpc2NvdW50c1NlcnZpY2VzUmVxdWVzdBoeLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5TZXJ2aWNlIjaC0+STAjA6ASoiKy92MS9zZXJ2aWNlZGlzY291bnRzL3t2ZW5kb3J9L3NlcnZpY2VzOnJlYWQwARKqAQodQ3JlYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSOC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIh+C0+STAhk6ASoiFC92MS9zZXJ2aWNlZGlzY291bnRzEq8BCh1VcGRhdGVJbnZvaWNlU2VydmljZURpc2NvdW50cxI4LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaLi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuSW52b2ljZVNlcnZpY2VEaXNjb3VudHMiJILT5JMCHjoBKhoZL3YxL3NlcnZpY2VkaXNjb3VudHMve2lkfRKUAQodRGVsZXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSOC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiGC0+STAhsqGS92MS9zZXJ2aWNlZGlzY291bnRzL3tpZH0SqgEKG0xpc3RJbnZvaWNlU2VydmljZURpc2NvdW50cxI2LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GisuYmx1ZWFwaS5iaWxsaW5nLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIiSC0+STAh46ASoiGS92MS9zZXJ2aWNlZGlzY291bnRzOnJlYWQwARKmAQoaR2V0SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSNS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0Gi4uYmx1ZWFwaS5hcGkucmlwcGxlLnYxLkludm9pY2VTZXJ2aWNlRGlzY291bnRzIiGC0+STAhsSGS92MS9zZXJ2aWNlZGlzY291bnRzL3tpZH0SogEKFkV4cG9ydFNlcnZpY2VEaXNjb3VudHMSMS5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0U2VydmljZURpc2NvdW50c1JlcXVlc3QaLS5ibHVlYXBpLmFwaS5yaXBwbGUudjEuU2VydmljZURpc2NvdW50c0V4cG9ydCImgtPkkwIgOgEqIhsvdjEvc2VydmljZWRpc2NvdW50czpleHBvcnQS8AEKKUNyZWF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkQuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpFLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjaC0+STAjA6ASoiKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9iaWxsaW5nZ3JvdXAS8AEKKVVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkQuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpFLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjaC0+STAjA6ASoaKy92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9iaWxsaW5nZ3JvdXASvgEKKURlbGV0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkQuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIzgtPkkwItKisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYmlsbGluZ2dyb3VwEtEBCiJMaXN0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj0uYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GjIuYmx1ZWFwaS5iaWxsaW5nLnYxLkFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cyI2gtPkkwIwOgEqIisvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudDpyZWFkMAES3AEKJENyZWF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50cxI/LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GkAuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIjGC0+STAis6ASoiJi92MS9zZXJ2aWNlZGlzY291bnRzL3tncm91cElkfS9hY2NvdW50EtwBCiRVcGRhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBpALmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXNwb25zZSIxgtPkkwIrOgEqGiYvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudBK5AQokUmVtb3ZlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLlJlbW92ZUFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiOILT5JMCMjoBKhotL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2FjY291bnQ6cmVtb3ZlEq8BCiREZWxldGVBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSPy5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIugtPkkwIoKiYvdjEvc2VydmljZWRpc2NvdW50cy97Z3JvdXBJZH0vYWNjb3VudBLNAQokRXhwb3J0QWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzEj8uYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEFjY291bnRJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaNC5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQWNjb3VudFNlcnZpY2VEaXNjb3VudHNFeHBvcnQiLoLT5JMCKDoBKiIjL3YxL3NlcnZpY2VkaXNjb3VudHMvYWNjb3VudDpleHBvcnQS2gEKKUV4cG9ydEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzEkQuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5Hcm91cFNlcnZpY2VEaXNjb3VudHNFeHBvcnQiM4LT5JMCLToBKiIoL3YxL3NlcnZpY2VkaXNjb3VudHMvYmlsbGluZ2dyb3VwOmV4cG9ydBLkAQomR2V0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSQS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GkIuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVzcG9uc2UiM4LT5JMCLRIrL3YxL3NlcnZpY2VkaXNjb3VudHMve2dyb3VwSWR9L2JpbGxpbmdncm91cBJzCg5DcmVhdGVSZXNlbGxlchIpLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVSZXNlbGxlclJlcXVlc3QaHC5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXIiGILT5JMCEjoBKiINL3YxL3Jlc2VsbGVycxJwCg1MaXN0UmVzZWxsZXJzEiguYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RSZXNlbGxlcnNSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkucmlwcGxlLlJlc2VsbGVyIhWC0+STAg8SDS92MS9yZXNlbGxlcnMwARJvCgtHZXRSZXNlbGxlchImLmJsdWVhcGkuYmlsbGluZy52MS5HZXRSZXNlbGxlclJlcXVlc3QaHC5ibHVlYXBpLmFwaS5yaXBwbGUuUmVzZWxsZXIiGoLT5JMCFBISL3YxL3Jlc2VsbGVycy97aWR9EngKDlVwZGF0ZVJlc2VsbGVyEikuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZVJlc2VsbGVyUmVxdWVzdBocLmJsdWVhcGkuYXBpLnJpcHBsZS5SZXNlbGxlciIdgtPkkwIXOgEqGhIvdjEvcmVzZWxsZXJzL3tpZH0SbwoORGVsZXRlUmVzZWxsZXISKS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlUmVzZWxsZXJSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IhqC0+STAhQqEi92MS9yZXNlbGxlcnMve2lkfRKGAQoRR2V0QmlsbGluZ1NldHRpbmcSLC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ1NldHRpbmdSZXF1ZXN0Gi0uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEJpbGxpbmdTZXR0aW5nUmVzcG9uc2UiFILT5JMCDhIML3YxL3NldHRpbmdzEpsBChFMaXN0RXhjaGFuZ2VSYXRlcxIsLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjaGFuZ2VSYXRlc1JlcXVlc3QaLS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEV4Y2hhbmdlUmF0ZXNSZXNwb25zZSIpgtPkkwIjEiEvdjEve3ZlbmRvcn0vZXhjaGFuZ2VyYXRlL3ttb250aH0SlgEKFVNldEdsb2JhbEV4Y2hhbmdlUmF0ZRIwLmJsdWVhcGkuYmlsbGluZy52MS5TZXRHbG9iYWxFeGNoYW5nZVJhdGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjOC0+STAi06ASoiKC92MS9leGNoYW5nZXJhdGUvZ2xvYmFsL3t2ZW5kb3J9L3ttb250aH0SigEKFFNldFBheWVyRXhjaGFuZ2VSYXRlEi8uYmx1ZWFwaS5iaWxsaW5nLnYxLlNldFBheWVyRXhjaGFuZ2VSYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIpgtPkkwIjOgEqIh4vdjEvZXhjaGFuZ2VyYXRlL3BheWVyL3ttb250aH0SnwEKG1NldEJpbGxpbmdHcm91cEV4Y2hhbmdlUmF0ZRI2LmJsdWVhcGkuYmlsbGluZy52MS5TZXRCaWxsaW5nR3JvdXBFeGNoYW5nZVJhdGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjCC0+STAio6ASoiJS92MS9leGNoYW5nZXJhdGUvYmlsbGluZ2dyb3VwL3ttb250aH0SfAoQTGlzdEFjY2Vzc0dyb3VwcxIrLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QWNjZXNzR3JvdXBzUmVxdWVzdBofLmJsdWVhcGkuYXBpLnJpcHBsZS5BY2Nlc3NHcm91cCIYgtPkkwISEhAvdjEvYWNjZXNzZ3JvdXBzMAESfwoRQ3JlYXRlQWNjZXNzR3JvdXASLC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQWNjZXNzR3JvdXBSZXF1ZXN0Gh8uYmx1ZWFwaS5hcGkucmlwcGxlLkFjY2Vzc0dyb3VwIhuC0+STAhU6ASoiEC92MS9hY2Nlc3Nncm91cHMShAEKEVVwZGF0ZUFjY2Vzc0dyb3VwEiwuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFjY2Vzc0dyb3VwUmVxdWVzdBofLmJsdWVhcGkuYXBpLnJpcHBsZS5BY2Nlc3NHcm91cCIggtPkkwIaOgEqGhUvdjEvYWNjZXNzZ3JvdXBzL3tpZH0SeAoRRGVsZXRlQWNjZXNzR3JvdXASLC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQWNjZXNzR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih2C0+STAhcqFS92MS9hY2Nlc3Nncm91cHMve2lkfRKfAQoUTGlzdEFiY0JpbGxpbmdHcm91cHMSLy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFiY0JpbGxpbmdHcm91cHNSZXF1ZXN0GiMuYmx1ZWFwaS5iaWxsaW5nLnYxLkFiY0JpbGxpbmdHcm91cCIvgtPkkwIpEicvdjEvYmlsbGluZ2dyb3Vwcy9iaWxsaW5nY29uZHVjdG9yL3tpZH0wARK2AQobTGlzdEFiY0JpbGxpbmdHcm91cEFjY291bnRzEjYuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RBYmNCaWxsaW5nR3JvdXBBY2NvdW50c1JlcXVlc3QaHi5ibHVlYXBpLmJpbGxpbmcudjEuQWJjQWNjb3VudCI9gtPkkwI3EjUvdjEvYmlsbGluZ2dyb3Vwcy9iaWxsaW5nY29uZHVjdG9yL3twYXllcklkfS9hY2NvdW50czABEpwBChZSZWFkSW52b2ljZUFkanVzdG1lbnRzEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlYWRJbnZvaWNlQWRqdXN0bWVudHNSZXF1ZXN0GhwuYmx1ZWFwaS5hcGkud2F2ZS5BZGp1c3RtZW50Ii+C0+STAik6ASoiJC92MS97dmVuZG9yfS9pbnZvaWNlYWRqdXN0bWVudHM6cmVhZDABEqMBChVSZWFkQWRqdXN0bWVudEVudHJpZXMSMC5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZEFkanVzdG1lbnRFbnRyaWVzUmVxdWVzdBomLmJsdWVhcGkuYXBpLnJpcHBsZS52MS5BZGp1c3RtZW50RW50cnkiLoLT5JMCKDoBKiIjL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzOnJlYWQwARKYAQoSR2V0QWRqdXN0bWVudEVudHJ5Ei0uYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFkanVzdG1lbnRFbnRyeVJlcXVlc3QaJi5ibHVlYXBpLmFwaS5yaXBwbGUudjEuQWRqdXN0bWVudEVudHJ5IiuC0+STAiUSIy92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllcy97aWR9EpABChRBcHBseUFkanVzdG1lbnRFbnRyeRIvLmJsdWVhcGkuYmlsbGluZy52MS5BcHBseUFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiL4LT5JMCKToBKiIkL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzOmFwcGx5EpYBChZSZXN0b3JlQWRqdXN0bWVudEVudHJ5EjEuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlc3RvcmVBZGp1c3RtZW50RW50cnlSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjGC0+STAis6ASoiJi92MS97dmVuZG9yfS9hZGp1c3RtZW50ZW50cmllczpyZXN0b3JlEpUBChRTcGxpdEFkanVzdG1lbnRFbnRyeRIvLmJsdWVhcGkuYmlsbGluZy52MS5TcGxpdEFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiNILT5JMCLjoBKiIpL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0vc3BsaXQSngEKF0FsbG9jYXRlQWRqdXN0bWVudEVudHJ5EjIuYmx1ZWFwaS5iaWxsaW5nLnYxLkFsbG9jYXRlQWRqdXN0bWVudEVudHJ5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSI3gtPkkwIxOgEqIiwvdjEve3ZlbmRvcn0vYWRqdXN0bWVudGVudHJpZXMve2lkfS9hbGxvY2F0ZRKrAQobUmVzdG9yZVNwbGl0QWRqdXN0bWVudEVudHJ5EjYuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlc3RvcmVTcGxpdEFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiPILT5JMCNjoBKiIxL3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0vc3BsaXQ6cmVzdG9yZRK0AQoeUmVzdG9yZUFsbG9jYXRlQWRqdXN0bWVudEVudHJ5EjkuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlc3RvcmVBbGxvY2F0ZUFkanVzdG1lbnRFbnRyeVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiP4LT5JMCOToBKiI0L3YxL3t2ZW5kb3J9L2FkanVzdG1lbnRlbnRyaWVzL3tpZH0vYWxsb2NhdGU6cmVzdG9yZRKXAQoUTGlzdEFjY291bnRSZXNvdXJjZXMSLy5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdEFjY291bnRSZXNvdXJjZXNSZXF1ZXN0GiMuYmx1ZWFwaS5iaWxsaW5nLnYxLlJlc291cmNlQWNjb3VudCIngtPkkwIhEh8vdjEvcmVzb3VyY2VzL2FjY291bnRzL3t2ZW5kb3J9MAESiwEKE0dldEFkanVzdG1lbnRDb25maWcSLi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QWRqdXN0bWVudENvbmZpZ1JlcXVlc3QaHS5ibHVlYXBpLmFwaS5BZGp1c3RtZW50Q29uZmlnIiWC0+STAh8SHS92MS9hZGp1c3RtZW50Y29uZmlnL3t2ZW5kb3J9EpQBChZDcmVhdGVBZGp1c3RtZW50Q29uZmlnEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFkanVzdG1lbnRDb25maWdSZXF1ZXN0Gh0uYmx1ZWFwaS5hcGkuQWRqdXN0bWVudENvbmZpZyIogtPkkwIiOgEqIh0vdjEvYWRqdXN0bWVudGNvbmZpZy97dmVuZG9yfRKUAQoWVXBkYXRlQWRqdXN0bWVudENvbmZpZxIxLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVBZGp1c3RtZW50Q29uZmlnUmVxdWVzdBodLmJsdWVhcGkuYXBpLkFkanVzdG1lbnRDb25maWciKILT5JMCIjoBKhodL3YxL2FkanVzdG1lbnRjb25maWcve3ZlbmRvcn0SigEKFkRlbGV0ZUFkanVzdG1lbnRDb25maWcSMS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQWRqdXN0bWVudENvbmZpZ1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiJYLT5JMCHyodL3YxL2FkanVzdG1lbnRjb25maWcve3ZlbmRvcn0SlQEKElJlYWRVbnRhZ2dlZEdyb3VwcxItLmJsdWVhcGkuYmlsbGluZy52MS5SZWFkVW50YWdnZWRHcm91cHNSZXF1ZXN0GiEuYmx1ZWFwaS5hcGkucmlwcGxlLlVudGFnZ2VkR3JvdXAiK4LT5JMCJToBKiIgL3YxL3t2ZW5kb3J9L3VudGFnZ2VkZ3JvdXBzOnJlYWQwARK4AQodUmVhZEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZXMSOC5ibHVlYXBpLmJpbGxpbmcudjEuUmVhZEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZXNSZXF1ZXN0GiwuYmx1ZWFwaS5hcGkucmlwcGxlLkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZSItgtPkkwInOgEqIiIvdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlczpyZWFkMAESrwEKG0dldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRI2LmJsdWVhcGkuYmlsbGluZy52MS5HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0GiwuYmx1ZWFwaS5hcGkucmlwcGxlLkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZSIqgtPkkwIkEiIvdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy97aWR9ErMBCh5DcmVhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USOS5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBosLmJsdWVhcGkuYXBpLnJpcHBsZS5DdXN0b21pemVkQmlsbGluZ1NlcnZpY2UiKILT5JMCIjoBKiIdL3YxL2N1c3RvbWl6ZWRiaWxsaW5nc2VydmljZXMSuAEKHlVwZGF0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRI5LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXF1ZXN0GiwuYmx1ZWFwaS5hcGkucmlwcGxlLkN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZSItgtPkkwInOgEqGiIvdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy97aWR9Ep8BCh5EZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2USOS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIqgtPkkwIkKiIvdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy97aWR9EvsBCidHZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXASQi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlQmlsbGluZ0dyb3VwUmVxdWVzdBpDLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXNwb25zZSJFgtPkkwI/Ej0vdjEvY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlcy9iaWxsaW5nZ3JvdXAve2dyb3VwSWR9L3t2ZW5kb3J9MAESzwEKJ1NldEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cBJCLmJsdWVhcGkuYmlsbGluZy52MS5TZXRDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IkiC0+STAkI6ASoiPS92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzL2JpbGxpbmdncm91cC97Z3JvdXBJZH0ve3ZlbmRvcn0S0gEKKkRlbGV0ZUN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZUJpbGxpbmdHcm91cBJFLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VCaWxsaW5nR3JvdXBSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IkWC0+STAj8qPS92MS9jdXN0b21pemVkYmlsbGluZ3NlcnZpY2VzL2JpbGxpbmdncm91cC97Z3JvdXBJZH0ve3ZlbmRvcn0SXgoHR2V0VGFncxIiLmJsdWVhcGkuYmlsbGluZy52MS5HZXRUYWdzUmVxdWVzdBobLmJsdWVhcGkuYmlsbGluZy52MS5UYWdEYXRhIhCC0+STAgoSCC92MS90YWdzMAESfgoRQ3JlYXRlQ3VzdG9tRmllbGQSLC5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlQ3VzdG9tRmllbGRSZXF1ZXN0Gh8uYmx1ZWFwaS5iaWxsaW5nLnYxLkN1c3RvbUZpZWxkIhqC0+STAhQ6ASoiDy92MS9jdXN0b21maWVsZBKBAQoPTGlzdEN1c3RvbUZpZWxkEiouYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RDdXN0b21GaWVsZFJlcXVlc3QaHy5ibHVlYXBpLmJpbGxpbmcudjEuQ3VzdG9tRmllbGQiH4LT5JMCGToBKiIUL3YxL2N1c3RvbWZpZWxkOnJlYWQwARKUAQoaQWRkQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGQSNS5ibHVlYXBpLmJpbGxpbmcudjEuQWRkQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IieC0+STAiE6ASoiHC92MS9iaWxsaW5nZ3JvdXAvY3VzdG9tZmllbGQSvgEKG0xpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZBI2LmJsdWVhcGkuYmlsbGluZy52MS5MaXN0QmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRSZXF1ZXN0GjcuYmx1ZWFwaS5iaWxsaW5nLnYxLkxpc3RCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlc3BvbnNlIiyC0+STAiY6ASoiIS92MS9iaWxsaW5nZ3JvdXAvY3VzdG9tZmllbGQ6cmVhZDABEoMBChVBZGRUYWdzVG9CaWxsaW5nR3JvdXASMC5ibHVlYXBpLmJpbGxpbmcudjEuQWRkVGFnc1RvQmlsbGluZ0dyb3VwUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIggtPkkwIaOgEqIhUvdjEvYmlsbGluZ2dyb3VwL3RhZ3MSrwEKH1VwZGF0ZU5vblRhZ0dyb3VwVG9CaWxsaW5nR3JvdXASOi5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlTm9uVGFnR3JvdXBUb0JpbGxpbmdHcm91cFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiOILT5JMCMjoBKiItL3YxL2JpbGxpbmdncm91cC97aWR9L3t2ZW5kb3J9L3VudGFnZ2VkZ3JvdXBzErEBCh1EZWxldGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZBI4LmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiPoLT5JMCOCo2L3YxL2JpbGxpbmdncm91cC9jdXN0b21maWVsZC97Z3JvdXBJZH0ve2N1c3RvbUZpZWxkSWR9EoMBChFVcGRhdGVDdXN0b21GaWVsZBIsLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDdXN0b21GaWVsZFJlcXVlc3QaHy5ibHVlYXBpLmJpbGxpbmcudjEuQ3VzdG9tRmllbGQiH4LT5JMCGToBKhoUL3YxL2N1c3RvbWZpZWxkL3tpZH0SdwoRRGVsZXRlQ3VzdG9tRmllbGQSLC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlQ3VzdG9tRmllbGRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IhyC0+STAhYqFC92MS9jdXN0b21maWVsZC97aWR9EnIKEENyZWF0ZUZyZWVGb3JtYXQSKy5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlYXRlRnJlZUZvcm1hdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiGYLT5JMCEzoBKiIOL3YxL2ZyZWVmb3JtYXQSeQoQRGVsZXRlRnJlZUZvcm1hdBIrLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVGcmVlRm9ybWF0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIggtPkkwIaKhgvdjEvZnJlZWZvcm1hdC97Z3JvdXBJZH0SiAEKDUdldEZyZWVGb3JtYXQSKC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0RnJlZUZvcm1hdFJlcXVlc3QaKS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0RnJlZUZvcm1hdFJlc3BvbnNlIiCC0+STAhoSGC92MS9mcmVlZm9ybWF0L3tncm91cElkfTABEqIBChRHZXRUYWdzQWRkaW5nU2V0dGluZxIvLmJsdWVhcGkuYmlsbGluZy52MS5HZXRUYWdzQWRkaW5nU2V0dGluZ1JlcXVlc3QaJS5ibHVlYXBpLmJpbGxpbmcudjEuVGFnc0FkZGluZ1NldHRpbmciMILT5JMCKhIoL3YxL3t2ZW5kb3J9L3RhZ3NhZGRpbmdzZXR0aW5nL3tncm91cElkfTABEpoBChdVcGRhdGVUYWdzQWRkaW5nU2V0dGluZxIyLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVUYWdzQWRkaW5nU2V0dGluZ1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiM4LT5JMCLToBKhooL3YxL3t2ZW5kb3J9L3RhZ3NhZGRpbmdzZXR0aW5nL3tncm91cElkfRKhAQoVRXhwb3J0QmlsbGluZ0dyb3VwQ3N2EjAuYmx1ZWFwaS5iaWxsaW5nLnYxLkV4cG9ydEJpbGxpbmdHcm91cENzdlJlcXVlc3QaMS5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0QmlsbGluZ0dyb3VwQ3N2UmVzcG9uc2UiI4LT5JMCHRIbL3YxL2V4cG9ydGNzdi9iaWxsaW5nLWdyb3VwEqkBChdFeHBvcnRJbnZvaWNlU2V0dGluZ0NzdhIyLmJsdWVhcGkuYmlsbGluZy52MS5FeHBvcnRJbnZvaWNlU2V0dGluZ0NzdlJlcXVlc3QaMy5ibHVlYXBpLmJpbGxpbmcudjEuRXhwb3J0SW52b2ljZVNldHRpbmdDc3ZSZXNwb25zZSIlgtPkkwIfEh0vdjEvZXhwb3J0Y3N2L2ludm9pY2Utc2V0dGluZxKnAQoiVXBkYXRlQmlsbGluZ0dyb3VwQmFzaWNJbmZvcm1hdGlvbhI9LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBCYXNpY0luZm9ybWF0aW9uUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIqgtPkkwIkOgEqGh8vdjEvYmlsbGluZ2dyb3VwL3tpZH06YmFzaWNJbmZvEqIBCh5VcGRhdGVCaWxsaW5nR3JvdXBDdXN0b21GaWVsZHMSOS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwQ3VzdG9tRmllbGRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSItgtPkkwInOgEqGiIvdjEvYmlsbGluZ2dyb3VwL3tpZH06Y3VzdG9tRmllbGRzEpwBChxVcGRhdGVCaWxsaW5nR3JvdXBGcmVlRm9ybWF0EjcuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUJpbGxpbmdHcm91cEZyZWVGb3JtYXRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiuC0+STAiU6ASoaIC92MS9iaWxsaW5nZ3JvdXAve2lkfTpmcmVlRm9ybWF0EqUBCiFVcGRhdGVCaWxsaW5nR3JvdXBMaW5rZWRSZXNvdXJjZXMSPC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwTGlua2VkUmVzb3VyY2VzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIqgtPkkwIkOgEqGh8vdjEvYmlsbGluZ2dyb3VwL3tpZH06cmVzb3VyY2VzEqsBCiFVcGRhdGVCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSPC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIwgtPkkwIqOgEqGiUvdjEvYmlsbGluZ2dyb3VwL3tpZH06aW52b2ljZVNldHRpbmdzEqsBCiFVcGRhdGVCaWxsaW5nR3JvdXBSZXNlbGxlckNoYXJnZXMSPC5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQmlsbGluZ0dyb3VwUmVzZWxsZXJDaGFyZ2VzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIwgtPkkwIqOgEqGiUvdjEvYmlsbGluZ2dyb3VwL3tpZH06cmVzZWxsZXJDaGFyZ2VzErEBCiNVcGRhdGVCaWxsaW5nR3JvdXBBZGRpdGlvbmFsQ2hhcmdlcxI+LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBBZGRpdGlvbmFsQ2hhcmdlc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMoLT5JMCLDoBKhonL3YxL2JpbGxpbmdncm91cC97aWR9OmFkZGl0aW9uYWxDaGFyZ2VzEtQBCiFHZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW4SPC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QmlsbGluZ0dyb3VwQWNjb3VudFN1cHBvcnRQbGFuUmVxdWVzdBo9LmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXNwb25zZSIygtPkkwIsEiovdjEvYmlsbGluZ2dyb3VwL3tpZH0ve3ZlbmRvcn0vc3VwcG9ydHBsYW4StgEKJFVwZGF0ZUJpbGxpbmdHcm91cEFjY291bnRTdXBwb3J0UGxhbhI/LmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVCaWxsaW5nR3JvdXBBY2NvdW50U3VwcG9ydFBsYW5SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjWC0+STAi86ASoaKi92MS9iaWxsaW5nZ3JvdXAve2lkfS97dmVuZG9yfS9zdXBwb3J0cGxhbhKBAQoSQ3JlYXRlQW5ub3VuY2VtZW50Ei0uYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUFubm91bmNlbWVudFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiJILT5JMCHjoBKiIZL3YxL3Jlc2VsbGVyL2Fubm91bmNlbWVudBKSAQoSVXBkYXRlQW5ub3VuY2VtZW50Ei0uYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFubm91bmNlbWVudFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiNYLT5JMCLzoBKhoqL3YxL3Jlc2VsbGVyL2Fubm91bmNlbWVudC97YW5ub3VuY2VtZW50SWR9EpwBChlVcGRhdGVBbm5vdW5jZW1lbnRzU3RhdHVzEjQuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFubm91bmNlbWVudHNTdGF0dXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjGC0+STAis6ASoyJi92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnRzL2J1bGsvc3RhdHVzEqABChZVcGRhdGVBbm5vdW5jZW1lbnREYXRlEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUFubm91bmNlbWVudERhdGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjuC0+STAjU6ASoyMC92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnRzL3thbm5vdW5jZW1lbnRJZH0vZGF0ZRKPAQoSRGVsZXRlQW5ub3VuY2VtZW50Ei0uYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUFubm91bmNlbWVudFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMoLT5JMCLCoqL3YxL3Jlc2VsbGVyL2Fubm91bmNlbWVudC97YW5ub3VuY2VtZW50SWR9EqABChBHZXRBbm5vdW5jZW1lbnRzEisuYmx1ZWFwaS5iaWxsaW5nLnYxLkdldEFubm91bmNlbWVudHNSZXF1ZXN0GiAuYmx1ZWFwaS5iaWxsaW5nLnYxLkFubm91bmNlbWVudCI7gtPkkwI1EjMvYmlsbGluZy92MS9yZXNlbGxlci9hbm5vdW5jZW1lbnRzL3thbm5vdW5jZW1lbnRJZH0wARLOAQocR2V0QmlsbGluZ0dyb3VwQW5ub3VuY2VtZW50cxI3LmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBBbm5vdW5jZW1lbnRzUmVxdWVzdBo4LmJsdWVhcGkuYmlsbGluZy52MS5HZXRCaWxsaW5nR3JvdXBBbm5vdW5jZW1lbnRzUmVzcG9uc2UiOYLT5JMCMxIxL3YxL2JpbGxpbmdncm91cC9yZXNlbGxlci9hbm5vdW5jZW1lbnRzL3tncm91cElkfTABEmYKCkdldENyZWRpdHMSJS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3JlZGl0c1JlcXVlc3QaGi5ibHVlYXBpLmJpbGxpbmcudjEuQ3JlZGl0IhOC0+STAg0SCy92MS9jcmVkaXRzMAESdgoOR2V0Q3N2U2V0dGluZ3MSKS5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q3N2U2V0dGluZ3NSZXF1ZXN0Gh4uYmx1ZWFwaS5iaWxsaW5nLnYxLkNzdlNldHRpbmciF4LT5JMCERIPL3YxL2NzdnNldHRpbmdzMAESpgEKF0NyZWF0ZUNoaWxkQmlsbGluZ0dyb3VwEjIuYmx1ZWFwaS5iaWxsaW5nLnYxLkNyZWF0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBozLmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIiKC0+STAhw6ASoiFy92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkEqcBChRHZXRDaGlsZEJpbGxpbmdHcm91cBIvLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QaMC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIsgtPkkwImEiQvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZC97aW50ZXJuYWxJZH0SnQEKFkxpc3RDaGlsZEJpbGxpbmdHcm91cHMSMS5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdENoaWxkQmlsbGluZ0dyb3Vwc1JlcXVlc3QaJS5ibHVlYXBpLmJpbGxpbmcudjEuQ2hpbGRCaWxsaW5nR3JvdXAiJ4LT5JMCIToBKiIcL3YxL2JpbGxpbmdncm91cHMvY2hpbGQ6cmVhZDABErMBChdVcGRhdGVDaGlsZEJpbGxpbmdHcm91cBIyLmJsdWVhcGkuYmlsbGluZy52MS5VcGRhdGVDaGlsZEJpbGxpbmdHcm91cFJlcXVlc3QaMy5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBSZXNwb25zZSIvgtPkkwIpOgEqGiQvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZC97aW50ZXJuYWxJZH0SsAEKF0RlbGV0ZUNoaWxkQmlsbGluZ0dyb3VwEjIuYmx1ZWFwaS5iaWxsaW5nLnYxLkRlbGV0ZUNoaWxkQmlsbGluZ0dyb3VwUmVxdWVzdBozLmJsdWVhcGkuYmlsbGluZy52MS5EZWxldGVDaGlsZEJpbGxpbmdHcm91cFJlc3BvbnNlIiyC0+STAiYqJC92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkL3tpbnRlcm5hbElkfRLwAQomVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3MSQS5ibHVlYXBpLmJpbGxpbmcudjEuVXBkYXRlQ2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2V0dGluZ3NSZXF1ZXN0GkIuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUNoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNldHRpbmdzUmVzcG9uc2UiP4LT5JMCOToBKho0L3YxL2JpbGxpbmdncm91cHMvY2hpbGQve2ludGVybmFsSWR9L2ludm9pY2VTZXR0aW5ncxLPAQorU2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50cxJGLmJsdWVhcGkuYmlsbGluZy52MS5TZXRDaGlsZEJpbGxpbmdHcm91cEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJAgtPkkwI6OgEqIjUvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZC97aW50ZXJuYWxJZH0vc2VydmljZWRpc2NvdW50cxLlAQoyU2V0Q2hpbGRCaWxsaW5nR3JvdXBBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSTS5ibHVlYXBpLmJpbGxpbmcudjEuU2V0Q2hpbGRCaWxsaW5nR3JvdXBBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IkiC0+STAkI6ASoiPS92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkL3tpbnRlcm5hbElkfS9zZXJ2aWNlZGlzY291bnRzOmFjY291bnQS4gEKLFNldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlEkcuYmx1ZWFwaS5iaWxsaW5nLnYxLlNldENoaWxkQmlsbGluZ0dyb3VwQ3VzdG9taXplZEJpbGxpbmdTZXJ2aWNlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJRgtPkkwJLOgEqIkYvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZC97aW50ZXJuYWxJZH0vY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlL3t2ZW5kb3J9EpMCCixHZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZRJHLmJsdWVhcGkuYmlsbGluZy52MS5HZXRDaGlsZEJpbGxpbmdHcm91cEN1c3RvbWl6ZWRCaWxsaW5nU2VydmljZVJlcXVlc3QaSC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBDdXN0b21pemVkQmlsbGluZ1NlcnZpY2VSZXNwb25zZSJOgtPkkwJIEkYvdjEvYmlsbGluZ2dyb3Vwcy9jaGlsZC97aW50ZXJuYWxJZH0vY3VzdG9taXplZGJpbGxpbmdzZXJ2aWNlL3t2ZW5kb3J9MAES/QEKK0dldENoaWxkQmlsbGluZ0dyb3VwSW52b2ljZVNlcnZpY2VEaXNjb3VudHMSRi5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1JlcXVlc3QaRy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0Q2hpbGRCaWxsaW5nR3JvdXBJbnZvaWNlU2VydmljZURpc2NvdW50c1Jlc3BvbnNlIj2C0+STAjcSNS92MS9iaWxsaW5nZ3JvdXBzL2NoaWxkL3tpbnRlcm5hbElkfS9zZXJ2aWNlZGlzY291bnRzEoICCjNMaXN0Q2hpbGRCaWxsaW5nR3JvdXBBY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMSTi5ibHVlYXBpLmJpbGxpbmcudjEuTGlzdENoaWxkQmlsbGluZ0dyb3VwQWNjb3VudEludm9pY2VTZXJ2aWNlRGlzY291bnRzUmVxdWVzdBoyLmJsdWVhcGkuYmlsbGluZy52MS5BY2NvdW50SW52b2ljZVNlcnZpY2VEaXNjb3VudHMiRYLT5JMCPxI9L3YxL2JpbGxpbmdncm91cHMvY2hpbGQve2ludGVybmFsSWR9L3NlcnZpY2VkaXNjb3VudHM6YWNjb3VudDABEqoBChZCdWxrQ3JlYXRlQmlsbGluZ0dyb3VwEjEuYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXF1ZXN0GjIuYmx1ZWFwaS5iaWxsaW5nLnYxLkJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBSZXNwb25zZSIngtPkkwIhOgEqIhwvdjEvYmlsbGluZ2dyb3VwczpidWxrQ3JlYXRlMAESvwEKHEdldEJ1bGtDcmVhdGVCaWxsaW5nR3JvdXBKb2ISNy5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QnVsa0NyZWF0ZUJpbGxpbmdHcm91cEpvYlJlcXVlc3QaOC5ibHVlYXBpLmJpbGxpbmcudjEuR2V0QnVsa0NyZWF0ZUJpbGxpbmdHcm91cEpvYlJlc3BvbnNlIiyC0+STAiYSJC92MS9iaWxsaW5nZ3JvdXBzOmJ1bGtDcmVhdGUve2pvYklkfRK/AQoZQ3JlYXRlRXhjbHVkZVNlcnZpY2VFbnRyeRI0LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVxdWVzdBo1LmJsdWVhcGkuYmlsbGluZy52MS5DcmVhdGVFeGNsdWRlU2VydmljZUVudHJ5UmVzcG9uc2UiNYLT5JMCLzoBKiIqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzEr8BChlVcGRhdGVFeGNsdWRlU2VydmljZUVudHJ5EjQuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXF1ZXN0GjUuYmx1ZWFwaS5iaWxsaW5nLnYxLlVwZGF0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnlSZXNwb25zZSI1gtPkkwIvOgEqGiovdjEvYmlsbGluZ2dyb3Vwcy9leGNsdWRlLXNlcnZpY2Utc2V0dGluZ3MSvAEKGURlbGV0ZUV4Y2x1ZGVTZXJ2aWNlRW50cnkSNC5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlcXVlc3QaNS5ibHVlYXBpLmJpbGxpbmcudjEuRGVsZXRlRXhjbHVkZVNlcnZpY2VFbnRyeVJlc3BvbnNlIjKC0+STAiwqKi92MS9iaWxsaW5nZ3JvdXBzL2V4Y2x1ZGUtc2VydmljZS1zZXR0aW5ncxKqAQoTTGlzdEV4Y2x1ZGVTZXJ2aWNlcxIuLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjbHVkZVNlcnZpY2VzUmVxdWVzdBovLmJsdWVhcGkuYmlsbGluZy52MS5MaXN0RXhjbHVkZVNlcnZpY2VzUmVzcG9uc2UiMoLT5JMCLBIqL3YxL2JpbGxpbmdncm91cHMvZXhjbHVkZS1zZXJ2aWNlLXNldHRpbmdzGp0BkkGZARJGKEJFVEEpIEJpbGxpbmcgQVBJLiBCYXNlIFVSTDogaHR0cHM6Ly9hcGkuYWxwaGF1cy5jbG91ZC9tL2JsdWUvYmlsbGluZxpPChJTZXJ2aWNlIGRlZmluaXRpb24SOWh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9iaWxsaW5nL0JRChljbG91ZC5hbHBoYXVzLmFwaS5iaWxsaW5nQgxCaWxsaW5nUHJvdG9aJmdpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS9iaWxsaW5nYgZwcm90bzM", [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_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_empty, file_protoc_gen_openapiv2_options_annotations, file_google_protobuf_field_mask]);
55
55
 
56
56
  /**
57
57
  * @generated from message blueapi.billing.v1.BillingGroup
@@ -512,6 +512,13 @@ export type CreateBillingGroupRequest = Message<"blueapi.billing.v1.CreateBillin
512
512
  * @generated from field: string country = 19;
513
513
  */
514
514
  country: string;
515
+
516
+ /**
517
+ * Optional. If set this means this is a child BG under the parent bg specified in this field.
518
+ *
519
+ * @generated from field: blueapi.billing.v1.ChildBillingGroupInfo childbginfo = 20;
520
+ */
521
+ childbginfo?: ChildBillingGroupInfo;
515
522
  };
516
523
 
517
524
  /**
@@ -6790,6 +6797,13 @@ export type CreateChildBillingGroupRequest = Message<"blueapi.billing.v1.CreateC
6790
6797
  */
6791
6798
  basicInformation?: ChildBillingGroupBasicInformation;
6792
6799
 
6800
+ /**
6801
+ * Optional. If fields are not set, will use values from root billing group.
6802
+ *
6803
+ * @generated from field: blueapi.api.ripple.BillingGroupInfo billingInfo = 3;
6804
+ */
6805
+ billingInfo?: BillingGroupInfo;
6806
+
6793
6807
  /**
6794
6808
  * Required. Invoice settings for the child billing group.
6795
6809
  *
@@ -6999,16 +7013,314 @@ export type UpdateChildBillingGroupInvoiceSettingsResponse = Message<"blueapi.bi
6999
7013
  export const UpdateChildBillingGroupInvoiceSettingsResponseSchema: GenMessage<UpdateChildBillingGroupInvoiceSettingsResponse> = /*@__PURE__*/
7000
7014
  messageDesc(file_billing_v1_billing, 191);
7001
7015
 
7016
+ /**
7017
+ * @generated from message blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest
7018
+ */
7019
+ export type SetChildBillingGroupCustomizedBillingServiceRequest = Message<"blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest"> & {
7020
+ /**
7021
+ * Required. internal id of the child billing group.
7022
+ *
7023
+ * @generated from field: string internalId = 1;
7024
+ */
7025
+ internalId: string;
7026
+
7027
+ /**
7028
+ * Required. At the moment, `aws` is supported.
7029
+ *
7030
+ * @generated from field: string vendor = 2;
7031
+ */
7032
+ vendor: string;
7033
+
7034
+ /**
7035
+ * Required. Root parent Id.
7036
+ *
7037
+ * @generated from field: string rootId = 3;
7038
+ */
7039
+ rootId: string;
7040
+
7041
+ /**
7042
+ * Required. customized billing service setting.
7043
+ *
7044
+ * @generated from field: repeated blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest.CustomizedBillingServiceBillingSetting setting = 4;
7045
+ */
7046
+ setting: SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSetting[];
7047
+ };
7048
+
7049
+ /**
7050
+ * Describes the message blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest.
7051
+ * Use `create(SetChildBillingGroupCustomizedBillingServiceRequestSchema)` to create a new message.
7052
+ */
7053
+ export const SetChildBillingGroupCustomizedBillingServiceRequestSchema: GenMessage<SetChildBillingGroupCustomizedBillingServiceRequest> = /*@__PURE__*/
7054
+ messageDesc(file_billing_v1_billing, 192);
7055
+
7056
+ /**
7057
+ * CustomizedBillingServiceBillingSetting
7058
+ *
7059
+ * @generated from message blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest.CustomizedBillingServiceBillingSetting
7060
+ */
7061
+ export type SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSetting = Message<"blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest.CustomizedBillingServiceBillingSetting"> & {
7062
+ /**
7063
+ * Required. [blueapi.api.ripple.CustomizedBillingService.id]
7064
+ *
7065
+ * @generated from field: string id = 1;
7066
+ */
7067
+ id: string;
7068
+
7069
+ /**
7070
+ * Required. [blueapi.api.ripple.ChargingTarget]
7071
+ *
7072
+ * @generated from field: blueapi.api.ripple.ChargingTarget chargingTarget = 2;
7073
+ */
7074
+ chargingTarget: ChargingTarget;
7075
+
7076
+ /**
7077
+ * Optional. if chargingTarget is BILLINGGROUP, `accounts` is set emptty.
7078
+ *
7079
+ * Specify the accountIds. For example: [`accountId1`,`accountId2`,`accountId3`]
7080
+ *
7081
+ * @generated from field: repeated string accounts = 3;
7082
+ */
7083
+ accounts: string[];
7084
+ };
7085
+
7086
+ /**
7087
+ * Describes the message blueapi.billing.v1.SetChildBillingGroupCustomizedBillingServiceRequest.CustomizedBillingServiceBillingSetting.
7088
+ * Use `create(SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSettingSchema)` to create a new message.
7089
+ */
7090
+ export const SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSettingSchema: GenMessage<SetChildBillingGroupCustomizedBillingServiceRequest_CustomizedBillingServiceBillingSetting> = /*@__PURE__*/
7091
+ messageDesc(file_billing_v1_billing, 192, 0);
7092
+
7093
+ /**
7094
+ * @generated from message blueapi.billing.v1.SetChildBillingGroupInvoiceServiceDiscountsRequest
7095
+ */
7096
+ export type SetChildBillingGroupInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.SetChildBillingGroupInvoiceServiceDiscountsRequest"> & {
7097
+ /**
7098
+ * Required. Internal Id of the child billing group.
7099
+ *
7100
+ * @generated from field: string internalId = 1;
7101
+ */
7102
+ internalId: string;
7103
+
7104
+ /**
7105
+ * Required.
7106
+ *
7107
+ * Service discount id.
7108
+ *
7109
+ * @generated from field: string id = 2;
7110
+ */
7111
+ id: string;
7112
+ };
7113
+
7114
+ /**
7115
+ * Describes the message blueapi.billing.v1.SetChildBillingGroupInvoiceServiceDiscountsRequest.
7116
+ * Use `create(SetChildBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
7117
+ */
7118
+ export const SetChildBillingGroupInvoiceServiceDiscountsRequestSchema: GenMessage<SetChildBillingGroupInvoiceServiceDiscountsRequest> = /*@__PURE__*/
7119
+ messageDesc(file_billing_v1_billing, 193);
7120
+
7121
+ /**
7122
+ * @generated from message blueapi.billing.v1.SetChildBillingGroupAccountInvoiceServiceDiscountsRequest
7123
+ */
7124
+ export type SetChildBillingGroupAccountInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.SetChildBillingGroupAccountInvoiceServiceDiscountsRequest"> & {
7125
+ /**
7126
+ * Required. child billing group's internal Id.
7127
+ *
7128
+ * @generated from field: string internalId = 1;
7129
+ */
7130
+ internalId: string;
7131
+
7132
+ /**
7133
+ * Required.
7134
+ *
7135
+ * @generated from field: repeated blueapi.billing.v1.AccountServiceDiscounts accounts = 2;
7136
+ */
7137
+ accounts: AccountServiceDiscounts[];
7138
+ };
7139
+
7140
+ /**
7141
+ * Describes the message blueapi.billing.v1.SetChildBillingGroupAccountInvoiceServiceDiscountsRequest.
7142
+ * Use `create(SetChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
7143
+ */
7144
+ export const SetChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema: GenMessage<SetChildBillingGroupAccountInvoiceServiceDiscountsRequest> = /*@__PURE__*/
7145
+ messageDesc(file_billing_v1_billing, 194);
7146
+
7147
+ /**
7148
+ * @generated from message blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceRequest
7149
+ */
7150
+ export type GetChildBillingGroupCustomizedBillingServiceRequest = Message<"blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceRequest"> & {
7151
+ /**
7152
+ * Required. Internal Id
7153
+ *
7154
+ * @generated from field: string internalId = 1;
7155
+ */
7156
+ internalId: string;
7157
+
7158
+ /**
7159
+ * Required. At the moment, `aws` is supported.
7160
+ *
7161
+ * @generated from field: string vendor = 2;
7162
+ */
7163
+ vendor: string;
7164
+ };
7165
+
7166
+ /**
7167
+ * Describes the message blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceRequest.
7168
+ * Use `create(GetChildBillingGroupCustomizedBillingServiceRequestSchema)` to create a new message.
7169
+ */
7170
+ export const GetChildBillingGroupCustomizedBillingServiceRequestSchema: GenMessage<GetChildBillingGroupCustomizedBillingServiceRequest> = /*@__PURE__*/
7171
+ messageDesc(file_billing_v1_billing, 195);
7172
+
7173
+ /**
7174
+ * @generated from message blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceResponse
7175
+ */
7176
+ export type GetChildBillingGroupCustomizedBillingServiceResponse = Message<"blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceResponse"> & {
7177
+ /**
7178
+ * Required. [blueapi.api.ripple.CustomizedBillingService.id]
7179
+ *
7180
+ * @generated from field: string id = 1;
7181
+ */
7182
+ id: string;
7183
+
7184
+ /**
7185
+ * Required. vendor that applied to the CustomizedBillingService config.
7186
+ *
7187
+ * @generated from field: string vendor = 2;
7188
+ */
7189
+ vendor: string;
7190
+
7191
+ /**
7192
+ * Required. [blueapi.api.ripple.ChargingTarget]
7193
+ *
7194
+ * @generated from field: blueapi.api.ripple.ChargingTarget chargingTarget = 3;
7195
+ */
7196
+ chargingTarget: ChargingTarget;
7197
+
7198
+ /**
7199
+ * Optional. accounts that applied to the CustomizedBillingService config.
7200
+ *
7201
+ * @generated from field: repeated blueapi.api.Account accounts = 4;
7202
+ */
7203
+ accounts: Account[];
7204
+ };
7205
+
7206
+ /**
7207
+ * Describes the message blueapi.billing.v1.GetChildBillingGroupCustomizedBillingServiceResponse.
7208
+ * Use `create(GetChildBillingGroupCustomizedBillingServiceResponseSchema)` to create a new message.
7209
+ */
7210
+ export const GetChildBillingGroupCustomizedBillingServiceResponseSchema: GenMessage<GetChildBillingGroupCustomizedBillingServiceResponse> = /*@__PURE__*/
7211
+ messageDesc(file_billing_v1_billing, 196);
7212
+
7213
+ /**
7214
+ * @generated from message blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsRequest
7215
+ */
7216
+ export type GetChildBillingGroupInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsRequest"> & {
7217
+ /**
7218
+ * Required. Child Billing Group Internal Id
7219
+ *
7220
+ * @generated from field: string internalId = 1;
7221
+ */
7222
+ internalId: string;
7223
+ };
7224
+
7225
+ /**
7226
+ * Describes the message blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsRequest.
7227
+ * Use `create(GetChildBillingGroupInvoiceServiceDiscountsRequestSchema)` to create a new message.
7228
+ */
7229
+ export const GetChildBillingGroupInvoiceServiceDiscountsRequestSchema: GenMessage<GetChildBillingGroupInvoiceServiceDiscountsRequest> = /*@__PURE__*/
7230
+ messageDesc(file_billing_v1_billing, 197);
7231
+
7232
+ /**
7233
+ * @generated from message blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsResponse
7234
+ */
7235
+ export type GetChildBillingGroupInvoiceServiceDiscountsResponse = Message<"blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsResponse"> & {
7236
+ /**
7237
+ * Service discount id
7238
+ *
7239
+ * @generated from field: string id = 1;
7240
+ */
7241
+ id: string;
7242
+ };
7243
+
7244
+ /**
7245
+ * Describes the message blueapi.billing.v1.GetChildBillingGroupInvoiceServiceDiscountsResponse.
7246
+ * Use `create(GetChildBillingGroupInvoiceServiceDiscountsResponseSchema)` to create a new message.
7247
+ */
7248
+ export const GetChildBillingGroupInvoiceServiceDiscountsResponseSchema: GenMessage<GetChildBillingGroupInvoiceServiceDiscountsResponse> = /*@__PURE__*/
7249
+ messageDesc(file_billing_v1_billing, 198);
7250
+
7251
+ /**
7252
+ * @generated from message blueapi.billing.v1.ListChildBillingGroupAccountInvoiceServiceDiscountsRequest
7253
+ */
7254
+ export type ListChildBillingGroupAccountInvoiceServiceDiscountsRequest = Message<"blueapi.billing.v1.ListChildBillingGroupAccountInvoiceServiceDiscountsRequest"> & {
7255
+ /**
7256
+ * Required. Child Billing Group Internal Id
7257
+ *
7258
+ * @generated from field: string internalId = 1;
7259
+ */
7260
+ internalId: string;
7261
+ };
7262
+
7263
+ /**
7264
+ * Describes the message blueapi.billing.v1.ListChildBillingGroupAccountInvoiceServiceDiscountsRequest.
7265
+ * Use `create(ListChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema)` to create a new message.
7266
+ */
7267
+ export const ListChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema: GenMessage<ListChildBillingGroupAccountInvoiceServiceDiscountsRequest> = /*@__PURE__*/
7268
+ messageDesc(file_billing_v1_billing, 199);
7269
+
7270
+ /**
7271
+ * @generated from message blueapi.billing.v1.ChildBillingGroupInfo
7272
+ */
7273
+ export type ChildBillingGroupInfo = Message<"blueapi.billing.v1.ChildBillingGroupInfo"> & {
7274
+ /**
7275
+ * @generated from field: string parentId = 1;
7276
+ */
7277
+ parentId: string;
7278
+
7279
+ /**
7280
+ * @generated from field: string rootParentId = 2;
7281
+ */
7282
+ rootParentId: string;
7283
+ };
7284
+
7285
+ /**
7286
+ * Describes the message blueapi.billing.v1.ChildBillingGroupInfo.
7287
+ * Use `create(ChildBillingGroupInfoSchema)` to create a new message.
7288
+ */
7289
+ export const ChildBillingGroupInfoSchema: GenMessage<ChildBillingGroupInfo> = /*@__PURE__*/
7290
+ messageDesc(file_billing_v1_billing, 200);
7291
+
7002
7292
  /**
7003
7293
  * @generated from message blueapi.billing.v1.BulkCreateBillingGroupRequest
7004
7294
  */
7005
7295
  export type BulkCreateBillingGroupRequest = Message<"blueapi.billing.v1.BulkCreateBillingGroupRequest"> & {
7006
7296
  /**
7007
- * Required. The list of billing group to create.
7297
+ * Required. The CSV file content as bytes.
7008
7298
  *
7009
- * @generated from field: repeated blueapi.billing.v1.CreateBillingGroupRequest request = 1;
7299
+ * @generated from field: bytes csvContent = 1;
7010
7300
  */
7011
- request: CreateBillingGroupRequest[];
7301
+ csvContent: Uint8Array;
7302
+
7303
+ /**
7304
+ * Optional. The delimiter used in the CSV file. Defaults to comma (,).
7305
+ *
7306
+ * @generated from field: string delimiter = 2;
7307
+ */
7308
+ delimiter: string;
7309
+
7310
+ /**
7311
+ * Optional. Whether the CSV file has a header row. Defaults to true.
7312
+ *
7313
+ * @generated from field: bool hasHeader = 3;
7314
+ */
7315
+ hasHeader: boolean;
7316
+
7317
+ /**
7318
+ * Optional. If true, validate the CSV and check for errors without actually creating billing groups.
7319
+ * Useful for validating CSV format and data before performing the actual bulk creation.
7320
+ *
7321
+ * @generated from field: bool dryRun = 4;
7322
+ */
7323
+ dryRun: boolean;
7012
7324
  };
7013
7325
 
7014
7326
  /**
@@ -7016,7 +7328,7 @@ export type BulkCreateBillingGroupRequest = Message<"blueapi.billing.v1.BulkCrea
7016
7328
  * Use `create(BulkCreateBillingGroupRequestSchema)` to create a new message.
7017
7329
  */
7018
7330
  export const BulkCreateBillingGroupRequestSchema: GenMessage<BulkCreateBillingGroupRequest> = /*@__PURE__*/
7019
- messageDesc(file_billing_v1_billing, 192);
7331
+ messageDesc(file_billing_v1_billing, 201);
7020
7332
 
7021
7333
  /**
7022
7334
  * @generated from message blueapi.billing.v1.BulkCreateBillingGroupResponse
@@ -7035,6 +7347,13 @@ export type BulkCreateBillingGroupResponse = Message<"blueapi.billing.v1.BulkCre
7035
7347
  * @generated from field: repeated blueapi.billing.v1.BulkCreateBillingGroupError errors = 2;
7036
7348
  */
7037
7349
  errors: BulkCreateBillingGroupError[];
7350
+
7351
+ /**
7352
+ * The job ID for polling status via GetBulkCreateBillingGroupJob.
7353
+ *
7354
+ * @generated from field: string jobId = 3;
7355
+ */
7356
+ jobId: string;
7038
7357
  };
7039
7358
 
7040
7359
  /**
@@ -7042,7 +7361,7 @@ export type BulkCreateBillingGroupResponse = Message<"blueapi.billing.v1.BulkCre
7042
7361
  * Use `create(BulkCreateBillingGroupResponseSchema)` to create a new message.
7043
7362
  */
7044
7363
  export const BulkCreateBillingGroupResponseSchema: GenMessage<BulkCreateBillingGroupResponse> = /*@__PURE__*/
7045
- messageDesc(file_billing_v1_billing, 193);
7364
+ messageDesc(file_billing_v1_billing, 202);
7046
7365
 
7047
7366
  /**
7048
7367
  * @generated from message blueapi.billing.v1.BulkCreateBillingGroupError
@@ -7075,7 +7394,112 @@ export type BulkCreateBillingGroupError = Message<"blueapi.billing.v1.BulkCreate
7075
7394
  * Use `create(BulkCreateBillingGroupErrorSchema)` to create a new message.
7076
7395
  */
7077
7396
  export const BulkCreateBillingGroupErrorSchema: GenMessage<BulkCreateBillingGroupError> = /*@__PURE__*/
7078
- messageDesc(file_billing_v1_billing, 194);
7397
+ messageDesc(file_billing_v1_billing, 203);
7398
+
7399
+ /**
7400
+ * Request message for the GetBulkCreateBillingGroupJob rpc.
7401
+ *
7402
+ * @generated from message blueapi.billing.v1.GetBulkCreateBillingGroupJobRequest
7403
+ */
7404
+ export type GetBulkCreateBillingGroupJobRequest = Message<"blueapi.billing.v1.GetBulkCreateBillingGroupJobRequest"> & {
7405
+ /**
7406
+ * Required. The job ID returned by BulkCreateBillingGroup.
7407
+ *
7408
+ * @generated from field: string jobId = 1;
7409
+ */
7410
+ jobId: string;
7411
+ };
7412
+
7413
+ /**
7414
+ * Describes the message blueapi.billing.v1.GetBulkCreateBillingGroupJobRequest.
7415
+ * Use `create(GetBulkCreateBillingGroupJobRequestSchema)` to create a new message.
7416
+ */
7417
+ export const GetBulkCreateBillingGroupJobRequestSchema: GenMessage<GetBulkCreateBillingGroupJobRequest> = /*@__PURE__*/
7418
+ messageDesc(file_billing_v1_billing, 204);
7419
+
7420
+ /**
7421
+ * Response message for the GetBulkCreateBillingGroupJob rpc.
7422
+ *
7423
+ * @generated from message blueapi.billing.v1.GetBulkCreateBillingGroupJobResponse
7424
+ */
7425
+ export type GetBulkCreateBillingGroupJobResponse = Message<"blueapi.billing.v1.GetBulkCreateBillingGroupJobResponse"> & {
7426
+ /**
7427
+ * The job ID.
7428
+ *
7429
+ * @generated from field: string jobId = 1;
7430
+ */
7431
+ jobId: string;
7432
+
7433
+ /**
7434
+ * The current status: "pending", "processing", "completed", "partial_failed", "failed".
7435
+ *
7436
+ * @generated from field: string status = 2;
7437
+ */
7438
+ status: string;
7439
+
7440
+ /**
7441
+ * Total number of billing groups to create.
7442
+ *
7443
+ * @generated from field: int32 totalCount = 3;
7444
+ */
7445
+ totalCount: number;
7446
+
7447
+ /**
7448
+ * Number of billing groups processed so far.
7449
+ *
7450
+ * @generated from field: int32 processedCount = 4;
7451
+ */
7452
+ processedCount: number;
7453
+
7454
+ /**
7455
+ * Number of billing groups successfully created.
7456
+ *
7457
+ * @generated from field: int32 successCount = 5;
7458
+ */
7459
+ successCount: number;
7460
+
7461
+ /**
7462
+ * Number of billing groups that failed.
7463
+ *
7464
+ * @generated from field: int32 failureCount = 6;
7465
+ */
7466
+ failureCount: number;
7467
+
7468
+ /**
7469
+ * Details of failed billing groups (reuses existing BulkCreateBillingGroupError).
7470
+ *
7471
+ * @generated from field: repeated blueapi.billing.v1.BulkCreateBillingGroupError errors = 7;
7472
+ */
7473
+ errors: BulkCreateBillingGroupError[];
7474
+
7475
+ /**
7476
+ * Job start timestamp.
7477
+ *
7478
+ * @generated from field: string startTime = 8;
7479
+ */
7480
+ startTime: string;
7481
+
7482
+ /**
7483
+ * Job end timestamp. Empty if still running.
7484
+ *
7485
+ * @generated from field: string endTime = 9;
7486
+ */
7487
+ endTime: string;
7488
+
7489
+ /**
7490
+ * Optional status message.
7491
+ *
7492
+ * @generated from field: string message = 10;
7493
+ */
7494
+ message: string;
7495
+ };
7496
+
7497
+ /**
7498
+ * Describes the message blueapi.billing.v1.GetBulkCreateBillingGroupJobResponse.
7499
+ * Use `create(GetBulkCreateBillingGroupJobResponseSchema)` to create a new message.
7500
+ */
7501
+ export const GetBulkCreateBillingGroupJobResponseSchema: GenMessage<GetBulkCreateBillingGroupJobResponse> = /*@__PURE__*/
7502
+ messageDesc(file_billing_v1_billing, 205);
7079
7503
 
7080
7504
  /**
7081
7505
  * @generated from message blueapi.billing.v1.ExcludeServiceEntry
@@ -7150,7 +7574,7 @@ export type ExcludeServiceEntry = Message<"blueapi.billing.v1.ExcludeServiceEntr
7150
7574
  * Use `create(ExcludeServiceEntrySchema)` to create a new message.
7151
7575
  */
7152
7576
  export const ExcludeServiceEntrySchema: GenMessage<ExcludeServiceEntry> = /*@__PURE__*/
7153
- messageDesc(file_billing_v1_billing, 195);
7577
+ messageDesc(file_billing_v1_billing, 206);
7154
7578
 
7155
7579
  /**
7156
7580
  * @generated from message blueapi.billing.v1.CreateExcludeServiceEntryRequest
@@ -7204,7 +7628,7 @@ export type CreateExcludeServiceEntryRequest = Message<"blueapi.billing.v1.Creat
7204
7628
  * Use `create(CreateExcludeServiceEntryRequestSchema)` to create a new message.
7205
7629
  */
7206
7630
  export const CreateExcludeServiceEntryRequestSchema: GenMessage<CreateExcludeServiceEntryRequest> = /*@__PURE__*/
7207
- messageDesc(file_billing_v1_billing, 196);
7631
+ messageDesc(file_billing_v1_billing, 207);
7208
7632
 
7209
7633
  /**
7210
7634
  * @generated from message blueapi.billing.v1.CreateExcludeServiceEntryResponse
@@ -7223,7 +7647,7 @@ export type CreateExcludeServiceEntryResponse = Message<"blueapi.billing.v1.Crea
7223
7647
  * Use `create(CreateExcludeServiceEntryResponseSchema)` to create a new message.
7224
7648
  */
7225
7649
  export const CreateExcludeServiceEntryResponseSchema: GenMessage<CreateExcludeServiceEntryResponse> = /*@__PURE__*/
7226
- messageDesc(file_billing_v1_billing, 197);
7650
+ messageDesc(file_billing_v1_billing, 208);
7227
7651
 
7228
7652
  /**
7229
7653
  * @generated from message blueapi.billing.v1.UpdateExcludeServiceEntryRequest
@@ -7277,7 +7701,7 @@ export type UpdateExcludeServiceEntryRequest = Message<"blueapi.billing.v1.Updat
7277
7701
  * Use `create(UpdateExcludeServiceEntryRequestSchema)` to create a new message.
7278
7702
  */
7279
7703
  export const UpdateExcludeServiceEntryRequestSchema: GenMessage<UpdateExcludeServiceEntryRequest> = /*@__PURE__*/
7280
- messageDesc(file_billing_v1_billing, 198);
7704
+ messageDesc(file_billing_v1_billing, 209);
7281
7705
 
7282
7706
  /**
7283
7707
  * @generated from message blueapi.billing.v1.UpdateExcludeServiceEntryResponse
@@ -7296,7 +7720,7 @@ export type UpdateExcludeServiceEntryResponse = Message<"blueapi.billing.v1.Upda
7296
7720
  * Use `create(UpdateExcludeServiceEntryResponseSchema)` to create a new message.
7297
7721
  */
7298
7722
  export const UpdateExcludeServiceEntryResponseSchema: GenMessage<UpdateExcludeServiceEntryResponse> = /*@__PURE__*/
7299
- messageDesc(file_billing_v1_billing, 199);
7723
+ messageDesc(file_billing_v1_billing, 210);
7300
7724
 
7301
7725
  /**
7302
7726
  * @generated from message blueapi.billing.v1.DeleteExcludeServiceEntryRequest
@@ -7343,7 +7767,7 @@ export type DeleteExcludeServiceEntryRequest = Message<"blueapi.billing.v1.Delet
7343
7767
  * Use `create(DeleteExcludeServiceEntryRequestSchema)` to create a new message.
7344
7768
  */
7345
7769
  export const DeleteExcludeServiceEntryRequestSchema: GenMessage<DeleteExcludeServiceEntryRequest> = /*@__PURE__*/
7346
- messageDesc(file_billing_v1_billing, 200);
7770
+ messageDesc(file_billing_v1_billing, 211);
7347
7771
 
7348
7772
  /**
7349
7773
  * @generated from message blueapi.billing.v1.DeleteExcludeServiceEntryResponse
@@ -7362,7 +7786,7 @@ export type DeleteExcludeServiceEntryResponse = Message<"blueapi.billing.v1.Dele
7362
7786
  * Use `create(DeleteExcludeServiceEntryResponseSchema)` to create a new message.
7363
7787
  */
7364
7788
  export const DeleteExcludeServiceEntryResponseSchema: GenMessage<DeleteExcludeServiceEntryResponse> = /*@__PURE__*/
7365
- messageDesc(file_billing_v1_billing, 201);
7789
+ messageDesc(file_billing_v1_billing, 212);
7366
7790
 
7367
7791
  /**
7368
7792
  * @generated from message blueapi.billing.v1.ListExcludeServicesRequest
@@ -7388,7 +7812,7 @@ export type ListExcludeServicesRequest = Message<"blueapi.billing.v1.ListExclude
7388
7812
  * Use `create(ListExcludeServicesRequestSchema)` to create a new message.
7389
7813
  */
7390
7814
  export const ListExcludeServicesRequestSchema: GenMessage<ListExcludeServicesRequest> = /*@__PURE__*/
7391
- messageDesc(file_billing_v1_billing, 202);
7815
+ messageDesc(file_billing_v1_billing, 213);
7392
7816
 
7393
7817
  /**
7394
7818
  * @generated from message blueapi.billing.v1.ListExcludeServicesResponse
@@ -7407,7 +7831,7 @@ export type ListExcludeServicesResponse = Message<"blueapi.billing.v1.ListExclud
7407
7831
  * Use `create(ListExcludeServicesResponseSchema)` to create a new message.
7408
7832
  */
7409
7833
  export const ListExcludeServicesResponseSchema: GenMessage<ListExcludeServicesResponse> = /*@__PURE__*/
7410
- messageDesc(file_billing_v1_billing, 203);
7834
+ messageDesc(file_billing_v1_billing, 214);
7411
7835
 
7412
7836
  /**
7413
7837
  * Billing service definition.
@@ -8653,7 +9077,67 @@ export const Billing: GenService<{
8653
9077
  output: typeof UpdateChildBillingGroupInvoiceSettingsResponseSchema;
8654
9078
  },
8655
9079
  /**
8656
- * Create billing group in bulk
9080
+ * Sets the child billing group invoice service discounts. Only available in Ripple.
9081
+ *
9082
+ * @generated from rpc blueapi.billing.v1.Billing.SetChildBillingGroupInvoiceServiceDiscounts
9083
+ */
9084
+ setChildBillingGroupInvoiceServiceDiscounts: {
9085
+ methodKind: "unary";
9086
+ input: typeof SetChildBillingGroupInvoiceServiceDiscountsRequestSchema;
9087
+ output: typeof EmptySchema;
9088
+ },
9089
+ /**
9090
+ * Sets the child billing group's account invoice service discounts. Only available in Ripple.
9091
+ *
9092
+ * @generated from rpc blueapi.billing.v1.Billing.SetChildBillingGroupAccountInvoiceServiceDiscounts
9093
+ */
9094
+ setChildBillingGroupAccountInvoiceServiceDiscounts: {
9095
+ methodKind: "unary";
9096
+ input: typeof SetChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema;
9097
+ output: typeof EmptySchema;
9098
+ },
9099
+ /**
9100
+ * Sets the customized billing service in child billing group. Only available in Ripple.
9101
+ *
9102
+ * @generated from rpc blueapi.billing.v1.Billing.SetChildBillingGroupCustomizedBillingService
9103
+ */
9104
+ setChildBillingGroupCustomizedBillingService: {
9105
+ methodKind: "unary";
9106
+ input: typeof SetChildBillingGroupCustomizedBillingServiceRequestSchema;
9107
+ output: typeof EmptySchema;
9108
+ },
9109
+ /**
9110
+ * Gets the customized billing service in child billing group. Only available in Ripple.
9111
+ *
9112
+ * @generated from rpc blueapi.billing.v1.Billing.GetChildBillingGroupCustomizedBillingService
9113
+ */
9114
+ getChildBillingGroupCustomizedBillingService: {
9115
+ methodKind: "server_streaming";
9116
+ input: typeof GetChildBillingGroupCustomizedBillingServiceRequestSchema;
9117
+ output: typeof GetChildBillingGroupCustomizedBillingServiceResponseSchema;
9118
+ },
9119
+ /**
9120
+ * Returns the service discount associated with the billing group id
9121
+ *
9122
+ * @generated from rpc blueapi.billing.v1.Billing.GetChildBillingGroupInvoiceServiceDiscounts
9123
+ */
9124
+ getChildBillingGroupInvoiceServiceDiscounts: {
9125
+ methodKind: "unary";
9126
+ input: typeof GetChildBillingGroupInvoiceServiceDiscountsRequestSchema;
9127
+ output: typeof GetChildBillingGroupInvoiceServiceDiscountsResponseSchema;
9128
+ },
9129
+ /**
9130
+ * Returns the account's service discounts associated with the child billing group id
9131
+ *
9132
+ * @generated from rpc blueapi.billing.v1.Billing.ListChildBillingGroupAccountInvoiceServiceDiscounts
9133
+ */
9134
+ listChildBillingGroupAccountInvoiceServiceDiscounts: {
9135
+ methodKind: "server_streaming";
9136
+ input: typeof ListChildBillingGroupAccountInvoiceServiceDiscountsRequestSchema;
9137
+ output: typeof AccountInvoiceServiceDiscountsSchema;
9138
+ },
9139
+ /**
9140
+ * Create billing group in bulk from CSV file
8657
9141
  *
8658
9142
  * @generated from rpc blueapi.billing.v1.Billing.BulkCreateBillingGroup
8659
9143
  */
@@ -8662,6 +9146,16 @@ export const Billing: GenService<{
8662
9146
  input: typeof BulkCreateBillingGroupRequestSchema;
8663
9147
  output: typeof BulkCreateBillingGroupResponseSchema;
8664
9148
  },
9149
+ /**
9150
+ * Gets the status of a bulk create billing group job.
9151
+ *
9152
+ * @generated from rpc blueapi.billing.v1.Billing.GetBulkCreateBillingGroupJob
9153
+ */
9154
+ getBulkCreateBillingGroupJob: {
9155
+ methodKind: "unary";
9156
+ input: typeof GetBulkCreateBillingGroupJobRequestSchema;
9157
+ output: typeof GetBulkCreateBillingGroupJobResponseSchema;
9158
+ },
8665
9159
  /**
8666
9160
  * Create Exclude Service Entry
8667
9161
  *