@alphauspkgs/blue-sdk-ts 1.0.15 → 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.
@@ -3,15 +3,15 @@
3
3
  // @generated from file cover/v1/cover.proto (package blueapi.cover.v1, syntax proto3)
4
4
  /* eslint-disable */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ContainerCostUsageResponse_ResourceHighlightsSchema = exports.ContainerCostUsageResponse_ResourceHighlightSchema = exports.ContainerCostUsageResponse_MetricDataPointSchema = exports.ContainerCostUsageResponse_UsageMetricSchema = exports.ContainerCostUsageResponse_CostMetricSchema = exports.ContainerCostUsageResponseSchema = exports.ContainerCostUsageRequest_ServiceTypeSchema = exports.ContainerCostUsageRequest_ServiceType = exports.ContainerCostUsageRequest_MetricTypeSchema = exports.ContainerCostUsageRequest_MetricType = exports.ContainerCostUsageRequest_TimeGranularitySchema = exports.ContainerCostUsageRequest_TimeGranularity = exports.ContainerCostUsageRequest_FilterCriteria_FilterOperatorSchema = exports.ContainerCostUsageRequest_FilterCriteria_FilterOperator = exports.ContainerCostUsageRequest_FilterCriteriaSchema = exports.ContainerCostUsageRequestSchema = exports.ResetDemoDataResponseSchema = exports.ResetDemoDataRequestSchema = exports.PopulateDemoDataResponseSchema = exports.PopulateDemoDataRequestSchema = exports.GetCostUsageV2Request_CategorySchema = exports.GetCostUsageV2Request_Category = exports.GetCostUsageV2Request_GranularitySchema = exports.GetCostUsageV2Request_Granularity = exports.GetCostUsageV2RequestSchema = exports.GetCostUsageV2ResponseSchema = exports.DeleteCostForecastResponseSchema = exports.DeleteCostForecastRequestSchema = exports.UpdateCostForecastResponseSchema = exports.UpdateCostForecastRequestSchema = exports.GetCostForecastResponseSchema = exports.GetCostForecastRequestSchema = exports.CreateCostForecastResponseSchema = exports.CreateCostForecastRequestSchema = exports.ListForecastsResponseSchema = exports.ListForecastsRequestSchema = exports.GetCostForecastsDataResponseSchema = exports.GetCostForecastsDataRequest_GranularitySchema = exports.GetCostForecastsDataRequest_Granularity = exports.GetCostForecastsDataRequestSchema = exports.GetRecommendationV3Response_RecommendationDetailSchema = exports.GetRecommendationV3ResponseSchema = exports.GetRecommendationV3RequestSchema = exports.RecommendationSummarySchema = exports.ListRecommendationsV3RequestSchema = exports.ExecuteRecommendationV3ResponseSchema = exports.ExecuteRecommendationV3Request_ExecuteTypeSchema = exports.ExecuteRecommendationV3Request_ExecuteType = exports.ExecuteRecommendationV3RequestSchema = exports.file_cover_v1_cover = void 0;
7
- exports.ResetUserPasswordResponseSchema = exports.ResetUserPasswordRequestSchema = exports.UpdateUserMainViewResponseSchema = exports.UpdateUserMainViewRequestSchema = exports.UpdateUserEmailResponseSchema = exports.UpdateUserEmailRequestSchema = exports.UpdateUserNameResponseSchema = exports.UpdateUserNameRequestSchema = exports.UpdateUserColorThemeResponseSchema = exports.UpdateUserColorThemeRequestSchema = exports.UpdateUserIconResponseSchema = exports.UpdateUserIconRequestSchema = exports.UpdateUserAvatarResponseSchema = exports.UpdateUserAvatarRequestSchema = exports.GetUserDetailsResponseSchema = exports.GetUserDetailsRequestSchema = exports.UpdateMemberPermissionResponseSchema = exports.UpdateMemberPermissionRequestSchema = exports.GetMemberCostGroupResponseSchema = exports.GetMemberCostGroupRequestSchema = exports.GetMemberDetailsResponseSchema = exports.GetMemberDetailsRequestSchema = exports.GetMembersResponseSchema = exports.GetMembersRequestSchema = exports.CreateMemberResponseSchema = exports.CreateMemberRequestSchema = exports.ActivateUserResponseSchema = exports.ActivateUserRequestSchema = exports.InviteMemberResponseSchema = exports.InviteMemberRequestSchema = exports.OnboardOrgResponseSchema = exports.OnboardOrgRequestSchema = exports.GetRecommendationV2ResponseSchema = exports.GetRecommendationV2RequestSchema = exports.VerifyAPIAccessResponseSchema = exports.VerifyAPIAccessRequestSchema = exports.GetExecutionStatusResponseSchema = exports.GetExecutionStatusRequestSchema = exports.GetAICostAndUsageResponse_ResultSchema = exports.GetAICostAndUsageResponse_MetricSchema = exports.GetAICostAndUsageResponse_UsageSchema = exports.GetAICostAndUsageResponse_CostSchema = exports.GetAICostAndUsageResponseSchema = exports.GetAICostAndUsageRequest_GranularitySchema = exports.GetAICostAndUsageRequest_Granularity = exports.GetAICostAndUsageRequest_Filter_OperatorSchema = exports.GetAICostAndUsageRequest_Filter_Operator = exports.GetAICostAndUsageRequest_FilterSchema = exports.GetAICostAndUsageRequestSchema = exports.ContainerCostUsageResponse_GroupedResultSchema = void 0;
8
- exports.RemoveSideMenuFavoriteRequestSchema = exports.AddSideMenuFavoriteResponseSchema = exports.AddSideMenuFavoriteRequestSchema = exports.UpdateSideMenuStateResponseSchema = exports.UpdateSideMenuStateRequestSchema = exports.DeleteViewResponseSchema = exports.DeleteViewRequestSchema = exports.ExchangeRatesSchema = exports.ListExchangeRatesResponseSchema = exports.ListExchangeRatesRequestSchema = exports.GetOrgUpdateCurrencyResponseSchema = exports.GetOrgUpdateCurrencyRequestSchema = exports.SetOrgUpdateCurrencyResponseSchema = exports.SetOrgUpdateCurrencyRequestSchema = exports.UpdateViewCurrencyResponseSchema = exports.UpdateViewCurrencyRequestSchema = exports.UpdateViewColorThemeResponseSchema = exports.UpdateViewColorThemeRequestSchema = exports.UpdateViewWidgetResponseSchema = exports.UpdateViewWidgetRequestSchema = exports.UpdateViewLayoutResponseSchema = exports.UpdateViewLayoutRequestSchema = exports.UpdateViewResponseSchema = exports.UpdateViewRequestSchema = exports.RemoveFavoriteResponseSchema = exports.RemoveFavoriteRequestSchema = exports.AddFavoriteResponseSchema = exports.AddFavoriteRequestSchema = exports.PublishViewResponseSchema = exports.PublishViewRequestSchema = exports.GetFavoriteViewsResponseSchema = exports.GetFavoriteViewsRequestSchema = exports.GetCurrentViewResponseSchema = exports.GetCurrentViewRequestSchema = exports.GetViewsResponseSchema = exports.GetViewsRequestSchema = exports.CreateViewResponseSchema = exports.CreateViewRequestSchema = exports.ResetPasswordResponseSchema = exports.ResetPasswordRequestSchema = exports.DeleteMemberResponseSchema = exports.DeleteMemberRequestSchema = exports.UpdateUserAttributesResponseSchema = exports.UpdateUserAttributesRequestSchema = exports.UpdateUserTimezoneResponseSchema = exports.UpdateUserTimezoneRequestSchema = exports.UpdateUserAppThemeResponseSchema = exports.UpdateUserAppThemeRequestSchema = exports.UpdateUserLocaleResponseSchema = exports.UpdateUserLocaleRequestSchema = void 0;
9
- exports.GetCostUsageRequestCustomOptionsSchema = exports.GetCostUsageRequestAzureCspOptionsSchema = exports.GetCostUsageRequestGcpOptionsSchema = exports.GetCostUsageRequestAzureOptionsSchema = exports.GetCostUsageRequestAwsOptionsSchema = exports.GetCostUsageRequestSchema = exports.ResolveCostGroupCombinationsResponseSchema = exports.ResolveCostGroupCombinationsRequestSchema = exports.AssetsSummarySchema = exports.GetAssetsSummaryResponseSchema = exports.GetAssetsSummaryRequestSchema = exports.ResourceSchema = exports.ListAssetsFiltersSchema = exports.ListAssetsRequestSchema = exports.RegisterAccountRequestSchema = exports.DeleteAccountAccessResponseSchema = exports.DeleteAccountAccessRequestSchema = exports.UpdateAccountAccessRequestSchema = exports.CreateAccountAccessStacksetRequestSchema = exports.CreateAccountAccessRequestSchema = exports.AccountAccessSchema = exports.GetAccountAccessRequestSchema = exports.ListAccountAccessRequestSchema = exports.GetAccountAccessTemplateUrlResponseSchema = exports.GetAccountAccessTemplateUrlRequestSchema = exports.DeleteCostGroupResponseSchema = exports.DeleteCostGroupRequestSchema = exports.RemoveCostGroupMemberResponseSchema = exports.RemoveCostGroupMemberRequestSchema = exports.AssignCostGroupMemberResponseSchema = exports.AssignCostGroupMemberRequestSchema = exports.UpdateCostGroupCombinationsResponseSchema = exports.UpdateCostGroupCombinationsRequestSchema = exports.UpdateCostGroupColorThemeResponseSchema = exports.UpdateCostGroupColorThemeRequestSchema = exports.UpdateCostGroupIconResponseSchema = exports.UpdateCostGroupIconRequestSchema = exports.UpdateCostGroupImageResponseSchema = exports.UpdateCostGroupImageRequestSchema = exports.UpdateCostGroupDescriptionResponseSchema = exports.UpdateCostGroupDescriptionRequestSchema = exports.UpdateCostGroupNameResponseSchema = exports.UpdateCostGroupNameRequestSchema = exports.GetCostGroupDetailsResponseSchema = exports.GetCostGroupDetailsRequestSchema = exports.GetCostGroupsResponseSchema = exports.GetCostGroupsRequestSchema = exports.CreateCostGroupResponseSchema = exports.CreateCostGroupRequestSchema = exports.RemoveSideMenuFavoriteResponseSchema = void 0;
10
- exports.ProcessAuth0UserRequestSchema = exports.AllocationItemSchema = exports.GetCostGroupAllocationRequestSchema = exports.SavingsDetailsSchema = exports.RestoreSavingsRequestSchema = exports.RestoreAccountUsageRequestSchema = exports.ListAccountUsageRequestSchema = exports.AccountUsageDetailsSchema = exports.ProxyCreateCompletionResponseSchema = exports.ProxyCreateCompletionRequestSchema = exports.DeleteAllocatorRequestSchema = exports.GetAllocationSourcesResponse_AllocationSourcesSchema = exports.GetAllocationSourcesResponseSchema = exports.GetAllocationSourcesRequestSchema = exports.GetAllocationAttributesResponse_AllocationAttributeSchema = exports.GetAllocationAttributesResponseSchema = exports.GetAllocationAttributesRequestSchema = exports.CreateAllocatorRequestSchema = exports.ListAllocatorsRequestSchema = exports.CostAllocatorRequestSchema = exports.CostAllocatorDetailsSchema = exports.CriteriaSchema = exports.AllocatorSchema = exports.FeeItemSchema = exports.GetCostGroupFeeRequestSchema = exports.RestoreFeeRequestSchema = exports.FeeDetailsSchema = exports.ListFeesRequestSchema = exports.GetTagsResponseSchema = exports.GetTagsRequestSchema = exports.GetRegionsResponseSchema = exports.GetRegionsRequestSchema = exports.GetServicesResponseSchema = exports.GetServicesRequestSchema = exports.GetAccountsResponseSchema = exports.GetAccountsRequestSchema = exports.GetPayersResponseSchema = exports.GetPayersRequestSchema = exports.AssignPayerResponseSchema = exports.AssignPayerRequestSchema = exports.UploadChargeCodeResponseSchema = exports.UploadChargeCodeRequestSchema = exports.TerminateResourceResponseSchema = exports.TerminateResourceRequestSchema = exports.ModifyResourceTypeResponseSchema = exports.ModifyResourceTypeRequestSchema = exports.GetRightSizingRecommendationResponseSchema = exports.GetRightSizingRecommendationRequestSchema = exports.CostItemSchema = exports.ReadCostsRequestOptionsFiltersSchema = void 0;
11
- exports.UpdateAnomalyAlertRequestSchema = exports.ListAnomalyAlertRequestSchema = exports.AnomalyAlertDataSchema = exports.ManipulateAnomalyAlertRequestSchema = exports.CreateAnomalyAlertRequestSchema = exports.ListDiscountExpirationAlertRequestSchema = exports.DiscountExpiryAlertDataSchema = exports.UpdateDiscountExpirationAlertRequestSchema = exports.ManipulateDiscountExpirationAlertRequestSchema = exports.CreateDiscountExpirationAlertRequestSchema = exports.AnomalyDataSchema = exports.GetAnomalyinCostGroupRequestSchema = exports.GetDiscountRecommendationsResponseSchema = exports.GetDiscountRecommendationsRequestSchema = exports.UpdateChannelDetailsResponseSchema = exports.UpdateChannelDetailsRequestSchema = exports.DeleteChannelResponseSchema = exports.DeleteChannelRequestSchema = exports.GetChannelDetailsResponseSchema = exports.GetChannelDetailsRequestSchema = exports.CreateChannelResponseSchema = exports.CreateChannelRequestSchema = exports.GetChannelsResponseSchema = exports.GetChannelsRequestSchema = exports.UpdateAlertDetailsResponseSchema = exports.UpdateAlertDetailsRequestSchema = exports.DeleteAlertResponseSchema = exports.DeleteAlertRequestSchema = exports.GetAlertDetailsResponseSchema = exports.GetAlertDetailsRequestSchema = exports.CreateAlertResponseSchema = exports.CreateAlertRequestSchema = exports.GetAlertsResponseSchema = exports.GetAlertsRequestSchema = exports.GetCategoriesResponseSchema = exports.GetCategoriesRequestSchema = exports.GetCostGroupAttributeResponseSchema = exports.GetCostGroupAttributeRequestSchema = exports.AddMpnSettingRequestSchema = exports.AddPartnerCenterCredentialsRequestSchema = exports.GetAndDeleteDataAccessRequestSchema = exports.BillingAccountRequestSchema = exports.UnregisteredAcctsSchema = exports.ListUnregisteredAccountsResponseSchema = exports.ListUnregisteredAccountsRequestSchema = exports.ListDataAccessRequestSchema = exports.UpdateDataAccessRequestSchema = exports.RegisterDataAccessRequestSchema = exports.DataAccessSchema = exports.ProcessAuth0UserResponseSchema = void 0;
12
- exports.SetOrgFiscalMonthResponseSchema = exports.SetOrgFiscalMonthRequestSchema = exports.SetCostGroupAnomalyOptionsResponseSchema = exports.SetCostGroupAnomalyOptionsRequestSchema = exports.SetCostGroupEventIndicatorResponseSchema = exports.SetCostGroupEventIndicatorRequestSchema = exports.OptimizationHistoryResponseSchema = exports.OptimizationHistoryRequestSchema = exports.UndoExecutedRecommendationResponseSchema = exports.UndoExecutedRecommendationRequestSchema = exports.MarkAsExecutedResponseSchema = exports.MarkAsExecutedRequestSchema = exports.ExecuteOptimizationResponse_AzureCSPOptionSchema = exports.ExecuteOptimizationResponse_GCPOptionSchema = exports.ExecuteOptimizationResponse_AWSOptionSchema = exports.ExecuteOptimizationResponseSchema = exports.ExecuteOptimizationRequestSchema = exports.GetRecommendationResponseSchema = exports.GetRecommendationRequestSchema = exports.ListRecommendationResponse_PurchaseOptionSchema = exports.ListRecommendationResponseSchema = exports.ListRecommendationV2Request_RateSettingsSchema = exports.ListRecommendationV2RequestSchema = exports.ListRecommendationRequestSchema = exports.GetReportSummaryResponseSchema = exports.GetReportSummaryRequestSchema = exports.AddInfotoMarketplaceResponseSchema = exports.AddInfotoMarketplaceRequestSchema = exports.CreateProfilingResponseSchema = exports.CreateProfilingRequestSchema = exports.GetCustomerSubscriptionStatusResponseSchema = exports.GetCustomerSubscriptionStatusRequestSchema = exports.ResolveAWSMarketplaceTokenForOnboardingResponseSchema = exports.ResolveAWSMarketplaceTokenForOnboardingRequestSchema = exports.UpdateBudgetResponseSchema = exports.UpdateBudgetRequestSchema = exports.DeleteBudgetResponseSchema = exports.DeleteBudgetRequestSchema = exports.CreateBudgetResponseSchema = exports.CreateBudgetRequestSchema = exports.GetBudgetResponseSchema = exports.GetBudgetRequestSchema = exports.ListBudgetsResponseSchema = exports.ListBudgetsRequestSchema = exports.UpdateUserProfileResponseSchema = exports.UpdateUserProfileRequestSchema = exports.GetUserProfileResponseSchema = exports.GetUserProfileRequestSchema = exports.RegisterNewUserResponseSchema = exports.RegisterNewUserRequestSchema = void 0;
13
- exports.GetCloudwatchMetadataResponseSchema = exports.GetCloudwatchMetadataRequestSchema = exports.ConfirmGoogleSheetAccessResponseSchema = exports.ConfirmGoogleSheetAccessRequestSchema = exports.PreviewGoogleSheetResponseSchema = exports.PreviewGoogleSheetRequestSchema = exports.DeleteUnitMetricResponseSchema = exports.DeleteUnitMetricRequestSchema = exports.UpdateUnitMetricResponseSchema = exports.UpdateUnitMetricRequestSchema = exports.GetUnitMetricResponseSchema = exports.GetUnitMetricRequestSchema = exports.CreateUnitMetricResponseSchema = exports.CreateUnitMetricRequestSchema = exports.ListUnitMetricsResponseSchema = exports.ListUnitMetricsRequestSchema = exports.DeleteSharedResourcesResponseSchema = exports.DeleteSharedResourcesRequestSchema = exports.UpdateSharedResourcesResponseSchema = exports.UpdateSharedResourcesRequestSchema = exports.GetSharedResourcesResponseSchema = exports.GetSharedResourcesRequestSchema = exports.CreateSharedResourcesResponseSchema = exports.CreateSharedResourcesRequestSchema = exports.ListSharedResourcesResponseSchema = exports.ListSharedResourcesRequestSchema = exports.CreateUnitFromSuggestedResponseSchema = exports.CreateUnitFromSuggestedRequestSchema = exports.MergeSuggestedUnitsResponseSchema = exports.MergeSuggestedUnitsRequestSchema = exports.ListSuggestedUnitsResponseSchema = exports.ListSuggestedUnitsRequestSchema = exports.MergeUnitsResponseSchema = exports.MergeUnitsRequestSchema = exports.DeleteUnitTypeResponseSchema = exports.DeleteUnitTypeRequestSchema = exports.UpdateUnitTypeResponseSchema = exports.UpdateUnitTypeRequestSchema = exports.GetUnitTypeResponseSchema = exports.GetUnitTypeRequestSchema = exports.CreateUnitTypeResponseSchema = exports.CreateUnitTypeRequestSchema = exports.ListUnitTypesResponseSchema = exports.ListUnitTypesRequestSchema = exports.UpdateCostGroupCreationUIResponseSchema = exports.UpdateCostGroupCreationUIRequestSchema = exports.TransferOrganizationResponseSchema = exports.TransferOrganizationRequestSchema = exports.GetOrgFiscalMonthResponseSchema = exports.GetOrgFiscalMonthRequestSchema = void 0;
14
- exports.Cover = exports.StatusSchema = exports.Status = exports.ListUntaggedResourcesResponse_UntaggedResourcesSchema = exports.ListUntaggedResourcesResponseSchema = exports.ListUntaggedResourcesRequestSchema = exports.ListNonperformingRateResponse_NonperformingSchema = exports.ListNonperformingRateResponseSchema = exports.ListNonperformingRateRequestSchema = exports.GetDiscountPlanResponseSchema = exports.GetDiscountPlanRequestSchema = exports.GetCloudwatchMetadataResponse_DimensionSchema = void 0;
6
+ exports.ContainerCostUsageRequest_TimeGranularity = exports.ContainerCostUsageRequest_FilterCriteria_FilterOperatorSchema = exports.ContainerCostUsageRequest_FilterCriteria_FilterOperator = exports.ContainerCostUsageRequest_FilterCriteriaSchema = exports.ContainerCostUsageRequestSchema = exports.ResetDemoDataResponseSchema = exports.ResetDemoDataRequestSchema = exports.PopulateDemoDataResponseSchema = exports.PopulateDemoDataRequestSchema = exports.GetCostUsageV2Request_CategorySchema = exports.GetCostUsageV2Request_Category = exports.GetCostUsageV2Request_GranularitySchema = exports.GetCostUsageV2Request_Granularity = exports.GetCostUsageV2RequestSchema = exports.GetCostUsageV2ResponseSchema = exports.DeleteCostForecastResponseSchema = exports.DeleteCostForecastRequestSchema = exports.UpdateCostForecastResponseSchema = exports.UpdateCostForecastRequestSchema = exports.GetCostForecastResponseSchema = exports.GetCostForecastRequestSchema = exports.CreateCostForecastResponseSchema = exports.CreateCostForecastRequestSchema = exports.ListForecastsResponseSchema = exports.ListForecastsRequestSchema = exports.GetCostForecastsDataResponseSchema = exports.GetCostForecastsDataRequest_GranularitySchema = exports.GetCostForecastsDataRequest_Granularity = exports.GetCostForecastsDataRequestSchema = exports.GetRecommendationV3Response_RecommendationDetailSchema = exports.GetRecommendationV3ResponseSchema = exports.GetRecommendationV3RequestSchema = exports.RecommendationSummarySchema = exports.ListRecommendationsV3RequestSchema = exports.ExecuteRecommendationV3ResponseSchema = exports.ExecuteRecommendationV3Request_ExecuteTypeSchema = exports.ExecuteRecommendationV3Request_ExecuteType = exports.ExecuteRecommendationV3RequestSchema = exports.InviteUsersResponseSchema = exports.InviteUsersRequestSchema = exports.DeleteUserResponseSchema = exports.DeleteUserRequestSchema = exports.UpdateUserRoleResponseSchema = exports.UpdateUserRoleRequestSchema = exports.ListUsersResponse_UserSummarySchema = exports.ListUsersResponseSchema = exports.ListUsersRequestSchema = exports.ReinviteUserResponseSchema = exports.ReinviteUserRequestSchema = exports.file_cover_v1_cover = void 0;
7
+ exports.UpdateUserIconRequestSchema = exports.UpdateUserAvatarResponseSchema = exports.UpdateUserAvatarRequestSchema = exports.GetUserDetailsResponseSchema = exports.GetUserDetailsRequestSchema = exports.UpdateMemberPermissionResponseSchema = exports.UpdateMemberPermissionRequestSchema = exports.GetMemberCostGroupResponseSchema = exports.GetMemberCostGroupRequestSchema = exports.GetMemberDetailsResponseSchema = exports.GetMemberDetailsRequestSchema = exports.GetMembersResponseSchema = exports.GetMembersRequestSchema = exports.CreateMemberResponseSchema = exports.CreateMemberRequestSchema = exports.ActivateUserResponseSchema = exports.ActivateUserRequestSchema = exports.InviteMemberResponseSchema = exports.InviteMemberRequestSchema = exports.OnboardOrgResponseSchema = exports.OnboardOrgRequestSchema = exports.GetRecommendationV2ResponseSchema = exports.GetRecommendationV2RequestSchema = exports.VerifyAPIAccessResponseSchema = exports.VerifyAPIAccessRequestSchema = exports.GetExecutionStatusResponseSchema = exports.GetExecutionStatusRequestSchema = exports.GetAICostAndUsageResponse_ResultSchema = exports.GetAICostAndUsageResponse_MetricSchema = exports.GetAICostAndUsageResponse_UsageSchema = exports.GetAICostAndUsageResponse_CostSchema = exports.GetAICostAndUsageResponseSchema = exports.GetAICostAndUsageRequest_GranularitySchema = exports.GetAICostAndUsageRequest_Granularity = exports.GetAICostAndUsageRequest_Filter_OperatorSchema = exports.GetAICostAndUsageRequest_Filter_Operator = exports.GetAICostAndUsageRequest_FilterSchema = exports.GetAICostAndUsageRequestSchema = exports.ContainerCostUsageResponse_GroupedResultSchema = exports.ContainerCostUsageResponse_ResourceHighlightsSchema = exports.ContainerCostUsageResponse_ResourceHighlightSchema = exports.ContainerCostUsageResponse_MetricDataPointSchema = exports.ContainerCostUsageResponse_UsageMetricSchema = exports.ContainerCostUsageResponse_CostMetricSchema = exports.ContainerCostUsageResponseSchema = exports.ContainerCostUsageRequest_ServiceTypeSchema = exports.ContainerCostUsageRequest_ServiceType = exports.ContainerCostUsageRequest_MetricTypeSchema = exports.ContainerCostUsageRequest_MetricType = exports.ContainerCostUsageRequest_TimeGranularitySchema = void 0;
8
+ exports.GetOrgUpdateCurrencyRequestSchema = exports.SetOrgUpdateCurrencyResponseSchema = exports.SetOrgUpdateCurrencyRequestSchema = exports.UpdateViewCurrencyResponseSchema = exports.UpdateViewCurrencyRequestSchema = exports.UpdateViewColorThemeResponseSchema = exports.UpdateViewColorThemeRequestSchema = exports.UpdateViewWidgetResponseSchema = exports.UpdateViewWidgetRequestSchema = exports.UpdateViewLayoutResponseSchema = exports.UpdateViewLayoutRequestSchema = exports.UpdateViewResponseSchema = exports.UpdateViewRequestSchema = exports.RemoveFavoriteResponseSchema = exports.RemoveFavoriteRequestSchema = exports.AddFavoriteResponseSchema = exports.AddFavoriteRequestSchema = exports.PublishViewResponseSchema = exports.PublishViewRequestSchema = exports.GetFavoriteViewsResponseSchema = exports.GetFavoriteViewsRequestSchema = exports.GetCurrentViewResponseSchema = exports.GetCurrentViewRequestSchema = exports.GetViewsResponseSchema = exports.GetViewsRequestSchema = exports.CreateViewResponseSchema = exports.CreateViewRequestSchema = exports.ResetPasswordResponseSchema = exports.ResetPasswordRequestSchema = exports.DeleteMemberResponseSchema = exports.DeleteMemberRequestSchema = exports.UpdateUserAttributesResponseSchema = exports.UpdateUserAttributesRequestSchema = exports.UpdateUserTimezoneResponseSchema = exports.UpdateUserTimezoneRequestSchema = exports.UpdateUserAppThemeResponseSchema = exports.UpdateUserAppThemeRequestSchema = exports.UpdateUserLocaleResponseSchema = exports.UpdateUserLocaleRequestSchema = exports.ResetUserPasswordResponseSchema = exports.ResetUserPasswordRequestSchema = exports.UpdateUserMainViewResponseSchema = exports.UpdateUserMainViewRequestSchema = exports.UpdateUserEmailResponseSchema = exports.UpdateUserEmailRequestSchema = exports.UpdateUserNameResponseSchema = exports.UpdateUserNameRequestSchema = exports.UpdateUserColorThemeResponseSchema = exports.UpdateUserColorThemeRequestSchema = exports.UpdateUserIconResponseSchema = void 0;
9
+ exports.ResourceSchema = exports.ListAssetsFiltersSchema = exports.ListAssetsRequestSchema = exports.RegisterAccountRequestSchema = exports.DeleteAccountAccessResponseSchema = exports.DeleteAccountAccessRequestSchema = exports.UpdateAccountAccessRequestSchema = exports.CreateAccountAccessStacksetRequestSchema = exports.CreateAccountAccessRequestSchema = exports.AccountAccessSchema = exports.GetAccountAccessRequestSchema = exports.ListAccountAccessRequestSchema = exports.GetAccountAccessTemplateUrlResponseSchema = exports.GetAccountAccessTemplateUrlRequestSchema = exports.DeleteCostGroupResponseSchema = exports.DeleteCostGroupRequestSchema = exports.RemoveCostGroupMemberResponseSchema = exports.RemoveCostGroupMemberRequestSchema = exports.AssignCostGroupMemberResponseSchema = exports.AssignCostGroupMemberRequestSchema = exports.UpdateCostGroupCombinationsResponseSchema = exports.UpdateCostGroupCombinationsRequestSchema = exports.UpdateCostGroupColorThemeResponseSchema = exports.UpdateCostGroupColorThemeRequestSchema = exports.UpdateCostGroupIconResponseSchema = exports.UpdateCostGroupIconRequestSchema = exports.UpdateCostGroupImageResponseSchema = exports.UpdateCostGroupImageRequestSchema = exports.UpdateCostGroupDescriptionResponseSchema = exports.UpdateCostGroupDescriptionRequestSchema = exports.UpdateCostGroupNameResponseSchema = exports.UpdateCostGroupNameRequestSchema = exports.GetCostGroupDetailsResponseSchema = exports.GetCostGroupDetailsRequestSchema = exports.GetCostGroupsResponseSchema = exports.GetCostGroupsRequestSchema = exports.CreateCostGroupResponseSchema = exports.CreateCostGroupRequestSchema = exports.RemoveSideMenuFavoriteResponseSchema = exports.RemoveSideMenuFavoriteRequestSchema = exports.AddSideMenuFavoriteResponseSchema = exports.AddSideMenuFavoriteRequestSchema = exports.UpdateSideMenuStateResponseSchema = exports.UpdateSideMenuStateRequestSchema = exports.DeleteViewResponseSchema = exports.DeleteViewRequestSchema = exports.ExchangeRatesSchema = exports.ListExchangeRatesResponseSchema = exports.ListExchangeRatesRequestSchema = exports.GetOrgUpdateCurrencyResponseSchema = void 0;
10
+ exports.GetAllocationSourcesResponse_AllocationSourcesSchema = exports.GetAllocationSourcesResponseSchema = exports.GetAllocationSourcesRequestSchema = exports.GetAllocationAttributesResponse_AllocationAttributeSchema = exports.GetAllocationAttributesResponseSchema = exports.GetAllocationAttributesRequestSchema = exports.CreateAllocatorRequestSchema = exports.ListAllocatorsRequestSchema = exports.CostAllocatorRequestSchema = exports.CostAllocatorDetailsSchema = exports.CriteriaSchema = exports.AllocatorSchema = exports.FeeItemSchema = exports.GetCostGroupFeeRequestSchema = exports.RestoreFeeRequestSchema = exports.FeeDetailsSchema = exports.ListFeesRequestSchema = exports.GetTagsResponseSchema = exports.GetTagsRequestSchema = exports.GetRegionsResponseSchema = exports.GetRegionsRequestSchema = exports.GetServicesResponseSchema = exports.GetServicesRequestSchema = exports.GetAccountsResponseSchema = exports.GetAccountsRequestSchema = exports.GetPayersResponseSchema = exports.GetPayersRequestSchema = exports.AssignPayerResponseSchema = exports.AssignPayerRequestSchema = exports.UploadChargeCodeResponseSchema = exports.UploadChargeCodeRequestSchema = exports.TerminateResourceResponseSchema = exports.TerminateResourceRequestSchema = exports.ModifyResourceTypeResponseSchema = exports.ModifyResourceTypeRequestSchema = exports.GetRightSizingRecommendationResponseSchema = exports.GetRightSizingRecommendationRequestSchema = exports.CostItemSchema = exports.ReadCostsRequestOptionsFiltersSchema = exports.GetCostUsageRequestCustomOptionsSchema = exports.GetCostUsageRequestAzureCspOptionsSchema = exports.GetCostUsageRequestGcpOptionsSchema = exports.GetCostUsageRequestAzureOptionsSchema = exports.GetCostUsageRequestAwsOptionsSchema = exports.GetCostUsageRequestSchema = exports.ResolveCostGroupCombinationsResponseSchema = exports.ResolveCostGroupCombinationsRequestSchema = exports.AssetsSummarySchema = exports.GetAssetsSummaryResponseSchema = exports.GetAssetsSummaryRequestSchema = void 0;
11
+ exports.GetAnomalyinCostGroupRequestSchema = exports.GetDiscountRecommendationsResponseSchema = exports.GetDiscountRecommendationsRequestSchema = exports.UpdateChannelDetailsResponseSchema = exports.UpdateChannelDetailsRequestSchema = exports.DeleteChannelResponseSchema = exports.DeleteChannelRequestSchema = exports.GetChannelDetailsResponseSchema = exports.GetChannelDetailsRequestSchema = exports.CreateChannelResponseSchema = exports.CreateChannelRequestSchema = exports.GetChannelsResponseSchema = exports.GetChannelsRequestSchema = exports.UpdateAlertDetailsResponseSchema = exports.UpdateAlertDetailsRequestSchema = exports.DeleteAlertResponseSchema = exports.DeleteAlertRequestSchema = exports.GetAlertDetailsResponseSchema = exports.GetAlertDetailsRequestSchema = exports.CreateAlertResponseSchema = exports.CreateAlertRequestSchema = exports.GetAlertsResponseSchema = exports.GetAlertsRequestSchema = exports.GetCategoriesResponseSchema = exports.GetCategoriesRequestSchema = exports.GetCostGroupAttributeResponseSchema = exports.GetCostGroupAttributeRequestSchema = exports.AddMpnSettingRequestSchema = exports.AddPartnerCenterCredentialsRequestSchema = exports.GetAndDeleteDataAccessRequestSchema = exports.BillingAccountRequestSchema = exports.UnregisteredAcctsSchema = exports.ListUnregisteredAccountsResponseSchema = exports.ListUnregisteredAccountsRequestSchema = exports.ListDataAccessRequestSchema = exports.UpdateDataAccessRequestSchema = exports.RegisterDataAccessRequestSchema = exports.DataAccessSchema = exports.ProcessAuth0UserResponseSchema = exports.ProcessAuth0UserRequestSchema = exports.AllocationItemSchema = exports.GetCostGroupAllocationRequestSchema = exports.SavingsDetailsSchema = exports.RestoreSavingsRequestSchema = exports.RestoreAccountUsageRequestSchema = exports.ListAccountUsageRequestSchema = exports.AccountUsageDetailsSchema = exports.ProxyCreateCompletionResponseSchema = exports.ProxyCreateCompletionRequestSchema = exports.DeleteAllocatorRequestSchema = void 0;
12
+ exports.MarkAsExecutedRequestSchema = exports.ExecuteOptimizationResponse_AzureCSPOptionSchema = exports.ExecuteOptimizationResponse_GCPOptionSchema = exports.ExecuteOptimizationResponse_AWSOptionSchema = exports.ExecuteOptimizationResponseSchema = exports.ExecuteOptimizationRequestSchema = exports.GetRecommendationResponseSchema = exports.GetRecommendationRequestSchema = exports.ListRecommendationResponse_PurchaseOptionSchema = exports.ListRecommendationResponseSchema = exports.ListRecommendationV2Request_RateSettingsSchema = exports.ListRecommendationV2RequestSchema = exports.ListRecommendationRequestSchema = exports.GetReportSummaryResponseSchema = exports.GetReportSummaryRequestSchema = exports.AddInfotoMarketplaceResponseSchema = exports.AddInfotoMarketplaceRequestSchema = exports.CreateProfilingResponseSchema = exports.CreateProfilingRequestSchema = exports.GetCustomerSubscriptionStatusResponseSchema = exports.GetCustomerSubscriptionStatusRequestSchema = exports.ResolveAWSMarketplaceTokenForOnboardingResponseSchema = exports.ResolveAWSMarketplaceTokenForOnboardingRequestSchema = exports.UpdateBudgetResponseSchema = exports.UpdateBudgetRequestSchema = exports.DeleteBudgetResponseSchema = exports.DeleteBudgetRequestSchema = exports.CreateBudgetResponseSchema = exports.CreateBudgetRequestSchema = exports.GetBudgetResponseSchema = exports.GetBudgetRequestSchema = exports.ListBudgetsResponseSchema = exports.ListBudgetsRequestSchema = exports.UpdateUserProfileResponseSchema = exports.UpdateUserProfileRequestSchema = exports.GetUserProfileResponseSchema = exports.GetUserProfileRequestSchema = exports.RegisterNewUserResponseSchema = exports.RegisterNewUserRequestSchema = exports.UpdateAnomalyAlertRequestSchema = exports.ListAnomalyAlertRequestSchema = exports.AnomalyAlertDataSchema = exports.ManipulateAnomalyAlertRequestSchema = exports.CreateAnomalyAlertRequestSchema = exports.ListDiscountExpirationAlertRequestSchema = exports.DiscountExpiryAlertDataSchema = exports.UpdateDiscountExpirationAlertRequestSchema = exports.ManipulateDiscountExpirationAlertRequestSchema = exports.CreateDiscountExpirationAlertRequestSchema = exports.AnomalyDataSchema = void 0;
13
+ exports.GetUnitMetricRequestSchema = exports.CreateUnitMetricResponseSchema = exports.CreateUnitMetricRequestSchema = exports.ListUnitMetricsResponseSchema = exports.ListUnitMetricsRequestSchema = exports.DeleteSharedResourcesResponseSchema = exports.DeleteSharedResourcesRequestSchema = exports.UpdateSharedResourcesResponseSchema = exports.UpdateSharedResourcesRequestSchema = exports.GetSharedResourcesResponseSchema = exports.GetSharedResourcesRequestSchema = exports.CreateSharedResourcesResponseSchema = exports.CreateSharedResourcesRequestSchema = exports.ListSharedResourcesResponseSchema = exports.ListSharedResourcesRequestSchema = exports.CreateUnitFromSuggestedResponseSchema = exports.CreateUnitFromSuggestedRequestSchema = exports.MergeSuggestedUnitsResponseSchema = exports.MergeSuggestedUnitsRequestSchema = exports.ListSuggestedUnitsResponseSchema = exports.ListSuggestedUnitsRequestSchema = exports.MergeUnitsResponseSchema = exports.MergeUnitsRequestSchema = exports.DeleteUnitTypeResponseSchema = exports.DeleteUnitTypeRequestSchema = exports.UpdateUnitTypeResponseSchema = exports.UpdateUnitTypeRequestSchema = exports.GetUnitTypeResponseSchema = exports.GetUnitTypeRequestSchema = exports.CreateUnitTypeResponseSchema = exports.CreateUnitTypeRequestSchema = exports.ListUnitTypesResponseSchema = exports.ListUnitTypesRequestSchema = exports.UpdateCostGroupCreationUIResponseSchema = exports.UpdateCostGroupCreationUIRequestSchema = exports.TransferOrganizationResponseSchema = exports.TransferOrganizationRequestSchema = exports.GetOrgFiscalMonthResponseSchema = exports.GetOrgFiscalMonthRequestSchema = exports.SetOrgFiscalMonthResponseSchema = exports.SetOrgFiscalMonthRequestSchema = exports.SetCostGroupAnomalyOptionsResponseSchema = exports.SetCostGroupAnomalyOptionsRequestSchema = exports.SetCostGroupEventIndicatorResponseSchema = exports.SetCostGroupEventIndicatorRequestSchema = exports.OptimizationHistoryResponseSchema = exports.OptimizationHistoryRequestSchema = exports.UndoExecutedRecommendationResponseSchema = exports.UndoExecutedRecommendationRequestSchema = exports.MarkAsExecutedResponseSchema = void 0;
14
+ exports.Cover = exports.StatusSchema = exports.Status = exports.ListUntaggedResourcesResponse_UntaggedResourcesSchema = exports.ListUntaggedResourcesResponseSchema = exports.ListUntaggedResourcesRequestSchema = exports.ListNonperformingRateResponse_NonperformingSchema = exports.ListNonperformingRateResponseSchema = exports.ListNonperformingRateRequestSchema = exports.GetDiscountPlanResponseSchema = exports.GetDiscountPlanRequestSchema = exports.GetCloudwatchMetadataResponse_DimensionSchema = exports.GetCloudwatchMetadataResponseSchema = exports.GetCloudwatchMetadataRequestSchema = exports.ConfirmGoogleSheetAccessResponseSchema = exports.ConfirmGoogleSheetAccessRequestSchema = exports.PreviewGoogleSheetResponseSchema = exports.PreviewGoogleSheetRequestSchema = exports.DeleteUnitMetricResponseSchema = exports.DeleteUnitMetricRequestSchema = exports.UpdateUnitMetricResponseSchema = exports.UpdateUnitMetricRequestSchema = exports.GetUnitMetricResponseSchema = void 0;
15
15
  const codegenv2_1 = require("@bufbuild/protobuf/codegenv2");
16
16
  const optimizationrecommendation_pb_1 = require("../../api/cover/optimizationrecommendation_pb");
17
17
  const recommendation_pb_1 = require("../../api/cover/recommendation/recommendation_pb");
@@ -35,12 +35,67 @@ const annotations_pb_2 = require("../../protoc-gen-openapiv2/options/annotations
35
35
  /**
36
36
  * Describes the file cover/v1/cover.proto.
37
37
  */
38
- exports.file_cover_v1_cover = (0, codegenv2_1.fileDesc)("ChRjb3Zlci92MS9jb3Zlci5wcm90bxIQYmx1ZWFwaS5jb3Zlci52MSLtAQoeRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjNSZXF1ZXN0EgsKA2lkcxgBIAMoCRJRCgtleGVjdXRlVHlwZRgCIAEoDjI8LmJsdWVhcGkuY292ZXIudjEuRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjNSZXF1ZXN0LkV4ZWN1dGVUeXBlImsKC0V4ZWN1dGVUeXBlEgsKB0RFRkFVTFQQABIUChBNQVJLX0FTX0VYRUNVVEVEEAESEQoNVU5ET19FWEVDVVRFRBACEhMKD1NVQk1JVF9URU1QTEFURRADEhEKDVJFVFJZX0VYRUNVVEUQBCJKCh9FeGVjdXRlUmVjb21tZW5kYXRpb25WM1Jlc3BvbnNlEicKBnJlc3VsdBgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiwwEKHExpc3RSZWNvbW1lbmRhdGlvbnNWM1JlcXVlc3QSEwoLY29zdGdyb3VwSWQYASABKAkSEAoIc3RhdHVzZXMYAiADKAkSTAoHZmlsdGVycxgDIAMoCzI7LmJsdWVhcGkuY292ZXIudjEuTGlzdFJlY29tbWVuZGF0aW9uc1YzUmVxdWVzdC5GaWx0ZXJzRW50cnkaLgoMRmlsdGVyc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi9QMKFVJlY29tbWVuZGF0aW9uU3VtbWFyeRIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEg4KBnRhcmdldBgDIAEoCRISCgp0YXJnZXROYW1lGBIgASgJEhAKCGNhdGVnb3J5GAQgASgJEgwKBHR5cGUYBSABKAkSDgoGdmVuZG9yGA0gASgJEg4KBnNvdXJjZRgTIAEoCRIMCgRjb2RlGA4gASgJEhQKB3NlcnZpY2UYDyABKAlIAIgBARITCgZyZWdpb24YECABKAlIAYgBARIXCgpyZXNvdXJjZUlkGBEgASgJSAKIAQESHwoXZXN0aW1hdGVkTW9udGhseVNhdmluZ3MYBiABKAESIgoaZXN0aW1hdGVkTW9udGhseUJlZm9yZUNvc3QYByABKAESIQoZZXN0aW1hdGVkTW9udGhseUFmdGVyQ29zdBgIIAEoARIRCgRyaXNrGAkgASgJSAOIAQESEwoGZWZmb3J0GAogASgJSASIAQESDgoGc3RhdHVzGAsgASgJEjIKEWFkZGl0aW9uYWxEZXRhaWxzGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIKCghfc2VydmljZUIJCgdfcmVnaW9uQg0KC19yZXNvdXJjZUlkQgcKBV9yaXNrQgkKB19lZmZvcnQiKQoaR2V0UmVjb21tZW5kYXRpb25WM1JlcXVlc3QSCwoDaWRzGAEgAygJIpIFChtHZXRSZWNvbW1lbmRhdGlvblYzUmVzcG9uc2USWwoPcmVjb21tZW5kYXRpb25zGAEgAygLMkIuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblYzUmVzcG9uc2UuUmVjb21tZW5kYXRpb25EZXRhaWwalQQKFFJlY29tbWVuZGF0aW9uRGV0YWlsEgoKAmlkGAEgASgJEgwKBG5hbWUYCSABKAkSDgoGdmVuZG9yGAIgASgJEg4KBnNvdXJjZRgDIAEoCRIMCgRjb2RlGAQgASgJEhQKB3NlcnZpY2UYBSABKAlIAIgBARIOCgZ0YXJnZXQYByABKAkSEgoKdGFyZ2V0TmFtZRgIIAEoCRIUCgxkYXRlRGV0ZWN0ZWQYBiABKAkSEwoGcmVnaW9uGAogASgJSAGIAQESIgoaZXN0aW1hdGVkTW9udGhseUJlZm9yZUNvc3QYCyABKAESIQoZZXN0aW1hdGVkTW9udGhseUFmdGVyQ29zdBgMIAEoARIfChdlc3RpbWF0ZWRNb250aGx5U2F2aW5ncxgNIAEoARIXCgpyZXNvdXJjZUlkGA4gASgJSAKIAQESEAoIY2F0ZWdvcnkYDyABKAkSDAoEdHlwZRgQIAEoCRITCgtsYXN0VXBkYXRlZBgRIAEoCRIOCgZzdGF0dXMYEiABKAkSEQoEcmlzaxgTIAEoCUgDiAEBEhMKBmVmZm9ydBgUIAEoCUgEiAEBEigKB2RldGFpbHMYFSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QgoKCF9zZXJ2aWNlQgkKB19yZWdpb25CDQoLX3Jlc291cmNlSWRCBwoFX3Jpc2tCCQoHX2VmZm9ydCLqAQobR2V0Q29zdEZvcmVjYXN0c0RhdGFSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0VGltZRgCIAEoCRIPCgdlbmRUaW1lGAMgASgJEk4KC2dyYW51bGFyaXR5GAQgASgOMjkuYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0Rm9yZWNhc3RzRGF0YVJlcXVlc3QuR3JhbnVsYXJpdHkiQgoLR3JhbnVsYXJpdHkSGwoXR1JBTlVMQVJJVFlfVU5TUEVDSUZJRUQQABIJCgVEQUlMWRABEgsKB01PTlRITFkQAiJqChxHZXRDb3N0Rm9yZWNhc3RzRGF0YVJlc3BvbnNlEgwKBGRhdGUYASABKAkSFAoMZm9yZWNhc3RDb3N0GAIgASgBEhIKCnVwcGVyQm91bmQYAyABKAESEgoKbG93ZXJCb3VuZBgEIAEoASIWChRMaXN0Rm9yZWNhc3RzUmVxdWVzdCJcChVMaXN0Rm9yZWNhc3RzUmVzcG9uc2USQwoTY29zdEZvcmVjYXN0RGV0YWlscxgBIAMoCzImLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RGb3JlY2FzdERldGFpbHMi8wEKGUNyZWF0ZUNvc3RGb3JlY2FzdFJlcXVlc3QSFAoMZm9yZWNhc3ROYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEi8KCWNvc3RHcm91cBgDIAEoCzIcLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RHcm91cBIbChNwYXN0QWN0dWFsQ29zdFJhbmdlGAQgASgDEhkKEWxvb2tGb3J3YXJkUGVyaW9kGAUgASgDEkIKE2V4dGVybmFsQWRqdXN0bWVudHMYBiADKAsyJS5ibHVlYXBpLmFwaS5jb3Zlci5FeHRlcm5hbEFkanVzdG1lbnQigAIKGkNyZWF0ZUNvc3RGb3JlY2FzdFJlc3BvbnNlEgoKAmlkGAEgASgJEhQKDGZvcmVjYXN0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIvCgljb3N0R3JvdXAYBCABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXASGwoTcGFzdEFjdHVhbENvc3RSYW5nZRgFIAEoAxIZChFsb29rRm9yd2FyZFBlcmlvZBgGIAEoAxJCChNleHRlcm5hbEFkanVzdG1lbnRzGAcgAygLMiUuYmx1ZWFwaS5hcGkuY292ZXIuRXh0ZXJuYWxBZGp1c3RtZW50IiQKFkdldENvc3RGb3JlY2FzdFJlcXVlc3QSCgoCaWQYASABKAkivwIKF0dldENvc3RGb3JlY2FzdFJlc3BvbnNlEgoKAmlkGAEgASgJEhQKDGZvcmVjYXN0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIvCgljb3N0R3JvdXAYBCABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXASGwoTcGFzdEFjdHVhbENvc3RSYW5nZRgFIAEoAxIZChFsb29rRm9yd2FyZFBlcmlvZBgGIAEoAxJCChNleHRlcm5hbEFkanVzdG1lbnRzGAcgAygLMiUuYmx1ZWFwaS5hcGkuY292ZXIuRXh0ZXJuYWxBZGp1c3RtZW50EhEKCWNyZWF0ZWRCeRgIIAEoCRIUCgxjcmVhdGlvbkRhdGUYCSABKAkSFwoPbGFzdFVwZGF0ZWREYXRlGAogASgJIv8BChlVcGRhdGVDb3N0Rm9yZWNhc3RSZXF1ZXN0EgoKAmlkGAEgASgJEhQKDGZvcmVjYXN0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIvCgljb3N0R3JvdXAYBCABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXASGwoTcGFzdEFjdHVhbENvc3RSYW5nZRgFIAEoAxIZChFsb29rRm9yd2FyZFBlcmlvZBgGIAEoAxJCChNleHRlcm5hbEFkanVzdG1lbnRzGAcgAygLMiUuYmx1ZWFwaS5hcGkuY292ZXIuRXh0ZXJuYWxBZGp1c3RtZW50IsICChpVcGRhdGVDb3N0Rm9yZWNhc3RSZXNwb25zZRIKCgJpZBgBIAEoCRIUCgxmb3JlY2FzdE5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSLwoJY29zdEdyb3VwGAQgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwEhsKE3Bhc3RBY3R1YWxDb3N0UmFuZ2UYBSABKAMSGQoRbG9va0ZvcndhcmRQZXJpb2QYBiABKAMSQgoTZXh0ZXJuYWxBZGp1c3RtZW50cxgHIAMoCzIlLmJsdWVhcGkuYXBpLmNvdmVyLkV4dGVybmFsQWRqdXN0bWVudBIRCgljcmVhdGVkQnkYCCABKAkSFAoMY3JlYXRpb25EYXRlGAkgASgJEhcKD2xhc3RVcGRhdGVkRGF0ZRgKIAEoCSInChlEZWxldGVDb3N0Rm9yZWNhc3RSZXF1ZXN0EgoKAmlkGAEgASgJIigKGkRlbGV0ZUNvc3RGb3JlY2FzdFJlc3BvbnNlEgoKAmlkGAEgASgJIm8KFkdldENvc3RVc2FnZVYyUmVzcG9uc2USDQoFdmFsdWUYASABKAESDAoEZGF0ZRgCIAEoCRIOCgZ2ZW5kb3IYAyABKAkSKAoHZGV0YWlscxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QivwQKFUdldENvc3RVc2FnZVYyUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRIRCglzdGFydFRpbWUYAiABKAkSDwoHZW5kVGltZRgDIAEoCRJICgtncmFudWxhcml0eRgEIAEoDjIzLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlVjJSZXF1ZXN0LkdyYW51bGFyaXR5EhAKCGdyb3VwQnlzGAUgAygJEkIKCGNhdGVnb3J5GAYgASgOMjAuYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0VXNhZ2VWMlJlcXVlc3QuQ2F0ZWdvcnkSEAoIY3VycmVuY3kYByABKAkSOgoKYXdzT3B0aW9ucxgIIAEoCzImLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RHcm91cEF3c09wdGlvbnMSRAoPYXp1cmVjc3BPcHRpb25zGAkgASgLMisuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwQXp1cmVDc3BPcHRpb25zEjoKCmdjcE9wdGlvbnMYCiABKAsyJi5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXBHY3BPcHRpb25zIkIKC0dyYW51bGFyaXR5EhsKF0dSQU5VTEFSSVRZX1VOU1BFQ0lGSUVEEAASCQoFREFJTFkQARILCgdNT05USExZEAIiOQoIQ2F0ZWdvcnkSGAoUQ2F0ZWdvcnlfVU5TUEVDSUZJRUQQABIICgRDT1NUEAESCQoFVVNBR0UQAiIZChdQb3B1bGF0ZURlbW9EYXRhUmVxdWVzdCIaChhQb3B1bGF0ZURlbW9EYXRhUmVzcG9uc2UiFgoUUmVzZXREZW1vRGF0YVJlcXVlc3QiFwoVUmVzZXREZW1vRGF0YVJlc3BvbnNlIt8GChlDb250YWluZXJDb3N0VXNhZ2VSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRJKCgptZXRyaWNUeXBlGAMgASgOMjYuYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXF1ZXN0Lk1ldHJpY1R5cGUSEQoJc3RhcnRUaW1lGAQgASgJEg8KB2VuZFRpbWUYBSABKAkSUAoLZ3JhbnVsYXJpdHkYBiABKA4yOy5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlcXVlc3QuVGltZUdyYW51bGFyaXR5EhAKCGdyb3VwQnlzGAcgAygJEksKB2ZpbHRlcnMYCCADKAsyOi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlcXVlc3QuRmlsdGVyQ3JpdGVyaWESTAoLc2VydmljZVR5cGUYCSABKA4yNy5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlcXVlc3QuU2VydmljZVR5cGUazwEKDkZpbHRlckNyaXRlcmlhEgsKA2tleRgBIAEoCRJbCghvcGVyYXRvchgCIAEoDjJJLmJsdWVhcGkuY292ZXIudjEuQ29udGFpbmVyQ29zdFVzYWdlUmVxdWVzdC5GaWx0ZXJDcml0ZXJpYS5GaWx0ZXJPcGVyYXRvchINCgV2YWx1ZRgDIAEoCSJECg5GaWx0ZXJPcGVyYXRvchIYChRPUEVSQVRPUl9VTlNQRUNJRklFRBAAEgkKBUVRVUFMEAESDQoJTk9UX0VRVUFMEAIiRgoPVGltZUdyYW51bGFyaXR5EhsKF0dSQU5VTEFSSVRZX1VOU1BFQ0lGSUVEEAASCQoFREFJTFkQARILCgdNT05USExZEAIiWgoKTWV0cmljVHlwZRIWChJNRVRSSUNfVU5TUEVDSUZJRUQQABIICgRDT1NUEAESCQoFVVNBR0UQAhIOCgpFRkZJQ0lFTkNZEAMSDwoLVU5VU0VEX0NPU1QQBCI4CgtTZXJ2aWNlVHlwZRIXChNTRVJWSUNFX1VOU1BFQ0lGSUVEEAASBwoDRUNTEAESBwoDRUtTEAIi1woKGkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlEksKB3Jlc3VsdHMYASADKAsyOi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLkdyb3VwZWRSZXN1bHQSUwoKaGlnaGxpZ2h0cxgCIAEoCzI/LmJsdWVhcGkuY292ZXIudjEuQ29udGFpbmVyQ29zdFVzYWdlUmVzcG9uc2UuUmVzb3VyY2VIaWdobGlnaHRzEhEKCXRvdGFsQ29zdBgDIAEoARIVCg1hdmdFZmZpY2llbmN5GAQgASgBGkQKCkNvc3RNZXRyaWMSDgoGYW1vdW50GAEgASgBEhAKCGN1cnJlbmN5GAIgASgJEhQKDHVudXNlZEFtb3VudBgDIAEoARqQAQoLVXNhZ2VNZXRyaWMSDAoEdW5pdBgBIAEoCRIWCg5yZXNlcnZlZEFtb3VudBgCIAEoARIUCgxhY3R1YWxBbW91bnQYAyABKAESEgoKZWZmaWNpZW5jeRgEIAEoARIWCg5jcHVVdGlsaXphdGlvbhgFIAEoARIZChFtZW1vcnlVdGlsaXphdGlvbhgGIAEoARrBAQoPTWV0cmljRGF0YVBvaW50EgwKBGRhdGUYASABKAkSRwoEY29zdBgCIAEoCzI3LmJsdWVhcGkuY292ZXIudjEuQ29udGFpbmVyQ29zdFVzYWdlUmVzcG9uc2UuQ29zdE1ldHJpY0gAEkkKBXVzYWdlGAMgASgLMjguYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZS5Vc2FnZU1ldHJpY0gAQgwKCm1ldHJpY0RhdGEaTAoRUmVzb3VyY2VIaWdobGlnaHQSEgoKcmVzb3VyY2VJZBgBIAEoCRIUCgxyZXNvdXJjZU5hbWUYAiABKAkSDQoFdmFsdWUYAyABKAEahAMKElJlc291cmNlSGlnaGxpZ2h0cxJaChJoaWdoZXN0Q2x1c3RlckNvc3QYASABKAsyPi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLlJlc291cmNlSGlnaGxpZ2h0ElkKEWhpZ2hlc3RVbnVzZWRDb3N0GAIgASgLMj4uYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZS5SZXNvdXJjZUhpZ2hsaWdodBJbChNoaWdoZXN0V29ya2xvYWRDb3N0GAMgASgLMj4uYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZS5SZXNvdXJjZUhpZ2hsaWdodBJaChJoaWdoZXN0Q29tcHV0ZUNvc3QYBCABKAsyPi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLlJlc291cmNlSGlnaGxpZ2h0GvoBCg1Hcm91cGVkUmVzdWx0El4KCmF0dHJpYnV0ZXMYASADKAsySi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLkdyb3VwZWRSZXN1bHQuQXR0cmlidXRlc0VudHJ5ElYKEG1ldHJpY0RhdGFQb2ludHMYAiADKAsyPC5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLk1ldHJpY0RhdGFQb2ludBoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKPBAoYR2V0QUlDb3N0QW5kVXNhZ2VSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIRCglzdGFydFRpbWUYAyABKAkSDwoHZW5kVGltZRgEIAEoCRJLCgtncmFudWxhcml0eRgFIAEoDjI2LmJsdWVhcGkuY292ZXIudjEuR2V0QUlDb3N0QW5kVXNhZ2VSZXF1ZXN0LkdyYW51bGFyaXR5EhAKCGdyb3VwQnlzGAYgAygJEkIKB2ZpbHRlcnMYByADKAsyMS5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVxdWVzdC5GaWx0ZXIawgEKBkZpbHRlchILCgNrZXkYASABKAkSTAoIb3BlcmF0b3IYAiABKA4yOi5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVxdWVzdC5GaWx0ZXIuT3BlcmF0b3ISDgoGdmFsdWVzGAMgAygJEg0KBXZhbHVlGAQgASgJIj4KCE9wZXJhdG9yEhgKFE9QRVJBVE9SX1VOU1BFQ0lGSUVEEAASCQoFRVFVQUwQARINCglOT1RfRVFVQUwQAiJCCgtHcmFudWxhcml0eRIbChdHUkFOVUxBUklUWV9VTlNQRUNJRklFRBAAEgkKBURBSUxZEAESCwoHTU9OVEhMWRACIqcEChlHZXRBSUNvc3RBbmRVc2FnZVJlc3BvbnNlEkMKB3Jlc3VsdHMYASADKAsyMi5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVzcG9uc2UuUmVzdWx0GigKBENvc3QSDgoGYW1vdW50GAEgASgBEhAKCGN1cnJlbmN5GAIgASgJGiUKBVVzYWdlEgwKBHVuaXQYASABKAkSDgoGYW1vdW50GAIgASgBGpgBCgZNZXRyaWMSDAoEZGF0ZRgBIAEoCRI+CgRjb3N0GAIgASgLMjAuYmx1ZWFwaS5jb3Zlci52MS5HZXRBSUNvc3RBbmRVc2FnZVJlc3BvbnNlLkNvc3QSQAoFdXNhZ2UYAyABKAsyMS5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVzcG9uc2UuVXNhZ2Ua2AEKBlJlc3VsdBJWCgphdHRyaWJ1dGVzGAEgAygLMkIuYmx1ZWFwaS5jb3Zlci52MS5HZXRBSUNvc3RBbmRVc2FnZVJlc3BvbnNlLlJlc3VsdC5BdHRyaWJ1dGVzRW50cnkSQwoHbWV0cmljcxgCIAMoCzIyLmJsdWVhcGkuY292ZXIudjEuR2V0QUlDb3N0QW5kVXNhZ2VSZXNwb25zZS5NZXRyaWMaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiGwoZR2V0RXhlY3V0aW9uU3RhdHVzUmVxdWVzdCJXChpHZXRFeGVjdXRpb25TdGF0dXNSZXNwb25zZRIYChByZWNvbW1lbmRhdGlvbklkGAEgASgJEg4KBnN0YXR1cxgCIAEoCRIPCgdtZXNzYWdlGAMgASgJIjgKFlZlcmlmeUFQSUFjY2Vzc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg4KBnRhcmdldBgCIAEoCSIpChdWZXJpZnlBUElBY2Nlc3NSZXNwb25zZRIOCgZyZXN1bHQYASABKAgiZQoaR2V0UmVjb21tZW5kYXRpb25WMlJlcXVlc3QSCgoCaWQYASABKAkSEwoLY29zdEdyb3VwSWQYAiABKAkSFAoMcGVyaW9kT3B0aW9uGAMgASgJEhAKCGN1cnJlbmN5GAQgASgJImEKG0dldFJlY29tbWVuZGF0aW9uVjJSZXNwb25zZRJCCgRkYXRhGAEgASgLMjQuYmx1ZWFwaS5hcGkuY292ZXIucmVjb21tZW5kYXRpb24uUmVjb21tZW5kYXRpb25EYXRhIlEKEU9uYm9hcmRPcmdSZXF1ZXN0Eg0KBWVtYWlsGAEgASgJEhAKCHBhc3N3b3JkGAIgASgJEgwKBG5hbWUYAyABKAkSDQoFb3JnSWQYBCABKAkiQwoST25ib2FyZE9yZ1Jlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiTQoTSW52aXRlTWVtYmVyUmVxdWVzdBINCgVlbWFpbBgBIAMoCRIQCghpc1Jlc2VuZBgCIAEoCBIVCg1pbnZpdGVBc0FkbWluGAMgASgIIiUKFEludml0ZU1lbWJlclJlc3BvbnNlEg0KBWVtYWlsGAEgAygJIqQBChNBY3RpdmF0ZVVzZXJSZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCRIYChBwcmV2aW91c1Bhc3N3b3JkGAIgASgJEhAKCHBhc3N3b3JkGAMgASgJEgwKBG5hbWUYBCABKAkSDgoGbG9jYWxlGAUgASgJEg0KBWVtYWlsGAYgASgJEg8KB2lzQXV0aDAYByABKAgSEwoLYXV0aDBVc2VySWQYCCABKAkiRQoUQWN0aXZhdGVVc2VyUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSJYChNDcmVhdGVNZW1iZXJSZXF1ZXN0Eg0KBWVtYWlsGAEgASgJEhAKCHBhc3N3b3JkGAIgASgJEgwKBG5hbWUYAyABKAkSEgoKY29zdGdyb3VwcxgEIAMoCSJFChRDcmVhdGVNZW1iZXJSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIhMKEUdldE1lbWJlcnNSZXF1ZXN0IkMKEkdldE1lbWJlcnNSZXNwb25zZRItCgh1c2VyRGF0YRgBIAMoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIikKF0dldE1lbWJlckRldGFpbHNSZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCSJJChhHZXRNZW1iZXJEZXRhaWxzUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIrChlHZXRNZW1iZXJDb3N0R3JvdXBSZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCSJUChpHZXRNZW1iZXJDb3N0R3JvdXBSZXNwb25zZRI2Cgpjb3N0R3JvdXBzGAEgAygLMiIuYmx1ZWFwaS5hcGkuY292ZXIuTWVtYmVyQ29zdEdyb3VwIkAKHVVwZGF0ZU1lbWJlclBlcm1pc3Npb25SZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCRIPCgdpc0FkbWluGAIgASgIIk8KHlVwZGF0ZU1lbWJlclBlcm1pc3Npb25SZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIhcKFUdldFVzZXJEZXRhaWxzUmVxdWVzdCJHChZHZXRVc2VyRGV0YWlsc1Jlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiKQoXVXBkYXRlVXNlckF2YXRhclJlcXVlc3QSDgoGYXZhdGFyGAEgASgJIkkKGFVwZGF0ZVVzZXJBdmF0YXJSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIiUKFVVwZGF0ZVVzZXJJY29uUmVxdWVzdBIMCgRpY29uGAEgASgJIkcKFlVwZGF0ZVVzZXJJY29uUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIxChtVcGRhdGVVc2VyQ29sb3JUaGVtZVJlcXVlc3QSEgoKY29sb3JUaGVtZRgBIAEoCSJNChxVcGRhdGVVc2VyQ29sb3JUaGVtZVJlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiJQoVVXBkYXRlVXNlck5hbWVSZXF1ZXN0EgwKBG5hbWUYASABKAkiRwoWVXBkYXRlVXNlck5hbWVSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIicKFlVwZGF0ZVVzZXJFbWFpbFJlcXVlc3QSDQoFZW1haWwYASABKAkiSAoXVXBkYXRlVXNlckVtYWlsUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIrChlVcGRhdGVVc2VyTWFpblZpZXdSZXF1ZXN0Eg4KBnZpZXdJZBgBIAEoCSJLChpVcGRhdGVVc2VyTWFpblZpZXdSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIkkKGFJlc2V0VXNlclBhc3N3b3JkUmVxdWVzdBIYChBwcmV2aW91c1Bhc3N3b3JkGAEgASgJEhMKC25ld1Bhc3N3b3JkGAIgASgJIkoKGVJlc2V0VXNlclBhc3N3b3JkUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIpChdVcGRhdGVVc2VyTG9jYWxlUmVxdWVzdBIOCgZsb2NhbGUYASABKAkiSQoYVXBkYXRlVXNlckxvY2FsZVJlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiLQoZVXBkYXRlVXNlckFwcFRoZW1lUmVxdWVzdBIQCghhcHBUaGVtZRgBIAEoCSJLChpVcGRhdGVVc2VyQXBwVGhlbWVSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIkMKGVVwZGF0ZVVzZXJUaW1lem9uZVJlcXVlc3QSEAoIdGltZVpvbmUYASABKAkSFAoMYXV0b1RpbWVab25lGAIgASgIIksKGlVwZGF0ZVVzZXJUaW1lem9uZVJlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiMQobVXBkYXRlVXNlckF0dHJpYnV0ZXNSZXF1ZXN0EhIKCmF0dHJpYnV0ZXMYASADKAkiTQocVXBkYXRlVXNlckF0dHJpYnV0ZXNSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIiUKE0RlbGV0ZU1lbWJlclJlcXVlc3QSDgoGdXNlcklkGAEgASgJIiYKFERlbGV0ZU1lbWJlclJlc3BvbnNlEg4KBnVzZXJJZBgBIAEoCSImChRSZXNldFBhc3N3b3JkUmVxdWVzdBIOCgZ1c2VySWQYASABKAkiJwoVUmVzZXRQYXNzd29yZFJlc3BvbnNlEg4KBnVzZXJJZBgBIAEoCSK7AQoRQ3JlYXRlVmlld1JlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIRCglpc1ByaXZhdGUYAyABKAgSEgoKaXNFZGl0YWJsZRgEIAEoCBIMCgRpY29uGAUgASgJEhIKCnJlcG9ydFR5cGUYBiABKAkSEgoKY29sb3JUaGVtZRgHIAEoCRIUCgxyZXBvcnRQZXJpb2QYCCABKAkSEAoIY3VycmVuY3kYCSABKAkiQwoSQ3JlYXRlVmlld1Jlc3BvbnNlEi0KCHZpZXdEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVmlld0RhdGEiEQoPR2V0Vmlld3NSZXF1ZXN0IkEKEEdldFZpZXdzUmVzcG9uc2USLQoIdmlld0xpc3QYASADKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5WaWV3TGlzdCInChVHZXRDdXJyZW50Vmlld1JlcXVlc3QSDgoGdmlld0lkGAEgASgJIkcKFkdldEN1cnJlbnRWaWV3UmVzcG9uc2USLQoIdmlld0RhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5WaWV3RGF0YSIZChdHZXRGYXZvcml0ZVZpZXdzUmVxdWVzdCJLChhHZXRGYXZvcml0ZVZpZXdzUmVzcG9uc2USLwoJZmF2b3JpdGVzGAEgAygLMhwuYmx1ZWFwaS5hcGkuY292ZXIuRmF2b3JpdGVzIiQKElB1Ymxpc2hWaWV3UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkiIgoTUHVibGlzaFZpZXdSZXNwb25zZRILCgN1cmwYASABKAkiJAoSQWRkRmF2b3JpdGVSZXF1ZXN0Eg4KBnZpZXdJZBgBIAEoCSIlChNBZGRGYXZvcml0ZVJlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSInChVSZW1vdmVGYXZvcml0ZVJlcXVlc3QSDgoGdmlld0lkGAEgASgJIigKFlJlbW92ZUZhdm9yaXRlUmVzcG9uc2USDgoGdmlld0lkGAEgASgJIo8BChFVcGRhdGVWaWV3UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIMCgRpY29uGAQgASgJEhEKCWlzUHJpdmF0ZRgFIAEoCBISCgppc0VkaXRhYmxlGAYgASgIEhIKCmNvbG9yVGhlbWUYByABKAkiJAoSVXBkYXRlVmlld1Jlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSJYChdVcGRhdGVWaWV3TGF5b3V0UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSLQoGbGF5b3V0GAIgAygLMh0uYmx1ZWFwaS5hcGkuY292ZXIuV2lkZ2V0RGF0YSJJChhVcGRhdGVWaWV3TGF5b3V0UmVzcG9uc2USLQoGbGF5b3V0GAEgAygLMh0uYmx1ZWFwaS5hcGkuY292ZXIuVmlld0xheW91dCKaAQoXVXBkYXRlVmlld1dpZGdldFJlcXVlc3QSDgoGdmlld0lkGAEgASgJEhAKCHdpZGdldElkGAIgASgJEigKB29wdGlvbnMYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjMKCHJlcXVlc3RzGAQgAygLMiEuYmx1ZWFwaS5hcGkuY292ZXIuTGF5b3V0UmVxdWVzdHMiXwoYVXBkYXRlVmlld1dpZGdldFJlc3BvbnNlEhAKCHdpZGdldElkGAEgASgJEjEKCndpZGdldERhdGEYAiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5XaWRnZXREYXRhIkEKG1VwZGF0ZVZpZXdDb2xvclRoZW1lUmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSEgoKY29sb3JUaGVtZRgCIAEoCSJNChxVcGRhdGVWaWV3Q29sb3JUaGVtZVJlc3BvbnNlEi0KCHZpZXdEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVmlld0RhdGEiPQoZVXBkYXRlVmlld0N1cnJlbmN5UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSEAoIY3VycmVuY3kYAiABKAkiSwoaVXBkYXRlVmlld0N1cnJlbmN5UmVzcG9uc2USLQoIdmlld0RhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5WaWV3RGF0YSI1ChtTZXRPcmdVcGRhdGVDdXJyZW5jeVJlcXVlc3QSFgoOdXBkYXRlQ3VycmVuY3kYASABKAMiNgocU2V0T3JnVXBkYXRlQ3VycmVuY3lSZXNwb25zZRIWCg51cGRhdGVDdXJyZW5jeRgBIAEoAyIdChtHZXRPcmdVcGRhdGVDdXJyZW5jeVJlcXVlc3QiWQocR2V0T3JnVXBkYXRlQ3VycmVuY3lSZXNwb25zZRINCgVvcmdJZBgBIAEoCRIWCg51cGRhdGVDdXJyZW5jeRgCIAEoAxISCgpsYXN0VXBkYXRlGAMgASgJIj4KGExpc3RFeGNoYW5nZVJhdGVzUmVxdWVzdBIRCglzdGFydERhdGUYASABKAkSDwoHZW5kRGF0ZRgCIAEoCSJiChlMaXN0RXhjaGFuZ2VSYXRlc1Jlc3BvbnNlEg0KBW9yZ0lkGAEgASgJEjYKDWV4Y2hhbmdlUmF0ZXMYAiADKAsyHy5ibHVlYXBpLmNvdmVyLnYxLkV4Y2hhbmdlUmF0ZXMiQgoNRXhjaGFuZ2VSYXRlcxINCgVtb250aBgBIAEoCRIUCgxleGNoYW5nZVJhdGUYAiABKAISDAoEZGF0ZRgDIAEoCSIjChFEZWxldGVWaWV3UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkiJAoSRGVsZXRlVmlld1Jlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSJlChpVcGRhdGVTaWRlTWVudVN0YXRlUmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSNwoNc2lkZW1lbnVzdGF0ZRgCIAMoCzIgLmJsdWVhcGkuYXBpLmNvdmVyLlNpZGVNZW51U3RhdGUiLQobVXBkYXRlU2lkZU1lbnVTdGF0ZVJlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSJAChpBZGRTaWRlTWVudUZhdm9yaXRlUmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSEgoKbWVudUl0ZW1JZBgCIAEoCSItChtBZGRTaWRlTWVudUZhdm9yaXRlUmVzcG9uc2USDgoGdmlld0lkGAEgASgJIkMKHVJlbW92ZVNpZGVNZW51RmF2b3JpdGVSZXF1ZXN0Eg4KBnZpZXdJZBgBIAEoCRISCgptZW51SXRlbUlkGAIgASgJIjAKHlJlbW92ZVNpZGVNZW51RmF2b3JpdGVSZXNwb25zZRIOCgZ2aWV3SWQYASABKAki0wEKFkNyZWF0ZUNvc3RHcm91cFJlcXVlc3QSDAoEbmFtZRgBIAEoCRIuCgR0eXBlGAcgASgOMiAuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwVHlwZRITCgtkZXNjcmlwdGlvbhgCIAEoCRINCgVpbWFnZRgDIAEoCRIMCgRpY29uGAQgASgJEhIKCmNvbG9yVGhlbWUYBSABKAkSNQoMY29tYmluYXRpb25zGAYgASgLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQ29tYmluYXRpb25zIlIKF0NyZWF0ZUNvc3RHcm91cFJlc3BvbnNlEjcKDWNvc3RHcm91cERhdGEYASABKAsyIC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXBEYXRhIhYKFEdldENvc3RHcm91cHNSZXF1ZXN0IlAKFUdldENvc3RHcm91cHNSZXNwb25zZRI3Cg1jb3N0R3JvdXBEYXRhGAEgAygLMiAuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwRGF0YSIxChpHZXRDb3N0R3JvdXBEZXRhaWxzUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCSJWChtHZXRDb3N0R3JvdXBEZXRhaWxzUmVzcG9uc2USNwoNY29zdEdyb3VwRGF0YRgBIAEoCzIgLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RHcm91cERhdGEiPwoaVXBkYXRlQ29zdEdyb3VwTmFtZVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDAoEbmFtZRgCIAEoCSIrChtVcGRhdGVDb3N0R3JvdXBOYW1lUmVzcG9uc2USDAoEbmFtZRgBIAEoCSJNCiFVcGRhdGVDb3N0R3JvdXBEZXNjcmlwdGlvblJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkiOQoiVXBkYXRlQ29zdEdyb3VwRGVzY3JpcHRpb25SZXNwb25zZRITCgtkZXNjcmlwdGlvbhgBIAEoCSJBChtVcGRhdGVDb3N0R3JvdXBJbWFnZVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDQoFaW1hZ2UYAiABKAkiLQocVXBkYXRlQ29zdEdyb3VwSW1hZ2VSZXNwb25zZRINCgVpbWFnZRgBIAEoCSI/ChpVcGRhdGVDb3N0R3JvdXBJY29uUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRIMCgRpY29uGAIgASgJIisKG1VwZGF0ZUNvc3RHcm91cEljb25SZXNwb25zZRIMCgRpY29uGAEgASgJIksKIFVwZGF0ZUNvc3RHcm91cENvbG9yVGhlbWVSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhIKCmNvbG9yVGhlbWUYAiABKAkiNwohVXBkYXRlQ29zdEdyb3VwQ29sb3JUaGVtZVJlc3BvbnNlEhIKCmNvbG9yVGhlbWUYASABKAkicAoiVXBkYXRlQ29zdEdyb3VwQ29tYmluYXRpb25zUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRI1Cgxjb21iaW5hdGlvbnMYAiABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Db21iaW5hdGlvbnMiXAojVXBkYXRlQ29zdEdyb3VwQ29tYmluYXRpb25zUmVzcG9uc2USNQoMY29tYmluYXRpb25zGAEgASgLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQ29tYmluYXRpb25zIkMKHEFzc2lnbkNvc3RHcm91cE1lbWJlclJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDgoGdXNlcklkGAIgASgJIkQKHUFzc2lnbkNvc3RHcm91cE1lbWJlclJlc3BvbnNlEhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnVzZXJJZBgCIAEoCSJDChxSZW1vdmVDb3N0R3JvdXBNZW1iZXJSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnVzZXJJZBgCIAEoCSJECh1SZW1vdmVDb3N0R3JvdXBNZW1iZXJSZXNwb25zZRITCgtjb3N0R3JvdXBJZBgBIAEoCRIOCgZ1c2VySWQYAiABKAkiLQoWRGVsZXRlQ29zdEdyb3VwUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCSIuChdEZWxldGVDb3N0R3JvdXBSZXNwb25zZRITCgtjb3N0R3JvdXBJZBgBIAEoCSIyCiJHZXRBY2NvdW50QWNjZXNzVGVtcGxhdGVVcmxSZXF1ZXN0EgwKBHR5cGUYASABKAkihwEKI0dldEFjY291bnRBY2Nlc3NUZW1wbGF0ZVVybFJlc3BvbnNlEhEKCWxhdW5jaFVybBgBIAEoCRITCgt0ZW1wbGF0ZVVybBgCIAEoCRIRCglzdGFja05hbWUYAyABKAkSEQoJcHJpbmNpcGFsGAQgASgJEhIKCmV4dGVybmFsSWQYBSABKAkiGgoYTGlzdEFjY291bnRBY2Nlc3NSZXF1ZXN0IikKF0dldEFjY291bnRBY2Nlc3NSZXF1ZXN0Eg4KBnRhcmdldBgBIAEoCSLaAgoNQWNjb3VudEFjY2VzcxIOCgZ0YXJnZXQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkSEwoLYWNjb3VudFR5cGUYAyABKAkSDwoHcGF5ZXJJZBgEIAEoCRIPCgdyb2xlQXJuGAUgASgJEhIKCmV4dGVybmFsSWQYBiABKAkSDwoHc3RhY2tJZBgHIAEoCRITCgtzdGFja1JlZ2lvbhgIIAEoCRITCgt0ZW1wbGF0ZVVybBgJIAEoCRISCgpidWNrZXROYW1lGAogASgJEg4KBnByZWZpeBgLIAEoCRISCgpyZXBvcnROYW1lGAwgASgJEkEKEnJlZ2lzdHJhdGlvblN0YXR1cxgNIAEoCzIlLmJsdWVhcGkuYXBpLmNvdmVyLlJlZ2lzdHJhdGlvblN0YXR1cxIOCgZzdGF0dXMYDiABKAkSEwoLbGFzdFVwZGF0ZWQYDyABKAkiQwoaQ3JlYXRlQWNjb3VudEFjY2Vzc1JlcXVlc3QSDgoGdGFyZ2V0GAEgASgJEhUKDWZyb21UZXJyYWZvcm0YAiABKAgiRAoiQ3JlYXRlQWNjb3VudEFjY2Vzc1N0YWNrc2V0UmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGcmVnaW9uGAIgASgJIiwKGlVwZGF0ZUFjY291bnRBY2Nlc3NSZXF1ZXN0Eg4KBnRhcmdldBgBIAEoCSI8ChpEZWxldGVBY2NvdW50QWNjZXNzUmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGdmVuZG9yGAIgASgJIi8KG0RlbGV0ZUFjY291bnRBY2Nlc3NSZXNwb25zZRIQCgh0YXJnZXRJZBgBIAEoCSJQChZSZWdpc3RlckFjY291bnRSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSEwoLYWNjb3VudE5hbWUYAyABKAki5gEKEUxpc3RBc3NldHNSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhIKCnN0YXJ0TW9udGgYAiABKAkSEAoIZW5kTW9udGgYAyABKAkSGgoSd2l0aFJlY29tbWVuZGF0aW9uGAQgASgIEjcKCmF3c09wdGlvbnMYBSADKAsyIy5ibHVlYXBpLmNvdmVyLnYxLkxpc3RBc3NldHNGaWx0ZXJzEkEKFGF3c1Byb3BlcnRpZXNPcHRpb25zGAYgAygLMiMuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QXNzZXRzRmlsdGVycyKPAQoRTGlzdEFzc2V0c0ZpbHRlcnMSRwoKYW5kRmlsdGVycxgBIAMoCzIzLmJsdWVhcGkuY292ZXIudjEuTGlzdEFzc2V0c0ZpbHRlcnMuQW5kRmlsdGVyc0VudHJ5GjEKD0FuZEZpbHRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIr0BCghSZXNvdXJjZRIMCgRkYXRlGAEgASgJEg0KBW9yZ0lkGAIgASgJEg4KBnZlbmRvchgDIAEoCRIPCgdhY2NvdW50GAQgASgJEg8KB3NlcnZpY2UYBSABKAkSEgoKcmVzb3VyY2VJZBgGIAEoCRIUCgxyZXNvdXJjZVR5cGUYByABKAkSDAoEY29zdBgIIAEoARISCgpwcm9wZXJ0aWVzGAkgASgJEhYKDnJlY29tbWVuZGF0aW9uGAogASgJIuYBChdHZXRBc3NldHNTdW1tYXJ5UmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRISCgpzdGFydE1vbnRoGAIgASgJEhAKCGVuZE1vbnRoGAMgASgJEhQKDGNvbWJpbmVEYXRlcxgEIAEoCBI3Cgphd3NPcHRpb25zGAUgAygLMiMuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QXNzZXRzRmlsdGVycxJBChRhd3NQcm9wZXJ0aWVzT3B0aW9ucxgGIAMoCzIjLmJsdWVhcGkuY292ZXIudjEuTGlzdEFzc2V0c0ZpbHRlcnMiawoYR2V0QXNzZXRzU3VtbWFyeVJlc3BvbnNlEjAKB3N1bW1hcnkYASADKAsyHy5ibHVlYXBpLmNvdmVyLnYxLkFzc2V0c1N1bW1hcnkSHQoVcmVjb21tZW5kYXRpb25TdW1tYXJ5GAIgASgJIlgKDUFzc2V0c1N1bW1hcnkSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSFgoOdG90YWxSZXNvdXJjZXMYAyABKAMSEQoJdG90YWxDb3N0GAQgASgBIjoKI1Jlc29sdmVDb3N0R3JvdXBDb21iaW5hdGlvbnNSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJImkKJFJlc29sdmVDb3N0R3JvdXBDb21iaW5hdGlvbnNSZXNwb25zZRITCgtjb3N0R3JvdXBJZBgBIAEoCRIsCghhY2NvdW50cxgCIAMoCzIaLmJsdWVhcGkuYXBpLmNvdmVyLkFjY291bnQixwQKE0dldENvc3RVc2FnZVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEQoJc3RhcnRUaW1lGAIgASgJEg8KB2VuZFRpbWUYAyABKAkSFAoMZ3JvdXBCeU1vbnRoGAQgASgIEg0KBWxpbWl0GAUgASgDEhAKCGNhdGVnb3J5GAYgASgJEg8KB2dyb3VwQnkYByABKAkSFwoPaW5jbHVkZVplcm9Db3N0GAggASgIEkMKCmF3c09wdGlvbnMYCSABKAsyLy5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RVc2FnZVJlcXVlc3RBd3NPcHRpb25zEkcKDGF6dXJlT3B0aW9ucxgKIAEoCzIxLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlUmVxdWVzdEF6dXJlT3B0aW9ucxJDCgpnY3BPcHRpb25zGAsgASgLMi8uYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0VXNhZ2VSZXF1ZXN0R2NwT3B0aW9ucxJNCg9henVyZWNzcE9wdGlvbnMYDCABKAsyNC5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RVc2FnZVJlcXVlc3RBenVyZUNzcE9wdGlvbnMSSQoNY3VzdG9tT3B0aW9ucxgNIAEoCzIyLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlUmVxdWVzdEN1c3RvbU9wdGlvbnMSFwoPaW5jbHVkZUZvcmVjYXN0GA4gASgIEhAKCGN1cnJlbmN5GA8gASgJIucBCh1HZXRDb3N0VXNhZ2VSZXF1ZXN0QXdzT3B0aW9ucxIWCg5ncm91cEJ5Q29sdW1ucxgBIAEoCRIVCg1ncm91cEFjY291bnRzGAIgASgIEkEKB2ZpbHRlcnMYAyADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxJECgp0YWdGaWx0ZXJzGAQgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSDgoGdGFnS2V5GAUgASgJItkBCh9HZXRDb3N0VXNhZ2VSZXF1ZXN0QXp1cmVPcHRpb25zEhYKDmdyb3VwQnlDb2x1bW5zGAEgASgJEhUKDWdyb3VwQWNjb3VudHMYAiABKAgSQQoHZmlsdGVycxgDIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEkQKCnRhZ0ZpbHRlcnMYBCADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycyL+AgodR2V0Q29zdFVzYWdlUmVxdWVzdEdjcE9wdGlvbnMSFgoOZ3JvdXBCeUNvbHVtbnMYASABKAkSFQoNZ3JvdXBBY2NvdW50cxgCIAEoCBJBCgdmaWx0ZXJzGAMgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSRAoKdGFnRmlsdGVycxgEIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEkYKDGxhYmVsRmlsdGVycxgFIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEk0KE3Byb2plY3RMYWJlbEZpbHRlcnMYBiADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxIOCgZ0YWdLZXkYByABKAki7AEKIkdldENvc3RVc2FnZVJlcXVlc3RBenVyZUNzcE9wdGlvbnMSFgoOZ3JvdXBCeUNvbHVtbnMYASABKAkSFQoNZ3JvdXBBY2NvdW50cxgCIAEoCBJBCgdmaWx0ZXJzGAMgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSRAoKdGFnRmlsdGVycxgEIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEg4KBnRhZ0tleRgFIAEoCSKBAwogR2V0Q29zdFVzYWdlUmVxdWVzdEN1c3RvbU9wdGlvbnMSFgoOZ3JvdXBCeUNvbHVtbnMYASABKAkSFQoNZ3JvdXBBY2NvdW50cxgCIAEoCBJBCgdmaWx0ZXJzGAMgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSRAoKdGFnRmlsdGVycxgEIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEkYKDGxhYmVsRmlsdGVycxgFIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEk0KE3Byb2plY3RMYWJlbEZpbHRlcnMYBiADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxIOCgZ0YWdLZXkYByABKAkiqQEKHlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxJUCgphbmRGaWx0ZXJzGAEgAygLMkAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMuQW5kRmlsdGVyc0VudHJ5GjEKD0FuZEZpbHRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIvYDCghDb3N0SXRlbRIOCgZ2ZW5kb3IYASABKAkSDAoEZGF0ZRgCIAEoCRIPCgdwcm9kdWN0GAMgASgJEg8KB2FjY291bnQYBCABKAkSEQoJdXNhZ2VUeXBlGBAgASgJEhIKCmNoYXJnZVR5cGUYESABKAkSDAoEY29zdBgFIAEoARIPCgdkZXRhaWxzGAYgASgJEjQKCGZvcmVjYXN0GAcgASgLMiIuYmx1ZWFwaS5hcGkuY292ZXIuQXdzQ29zdEZvcmVjYXN0Eg4KBnJlZ2lvbhgIIAEoCRIWCg5iaWxsaW5nQWNjb3VudBgJIAEoCRIQCgh0YWdWYWx1ZRgKIAEoCRISCgpsYXN0VXBkYXRlGAsgASgJEgwKBHVuaXQYDCABKAkSEAoIY2F0ZWdvcnkYDSABKAkSDgoGdGFnZ2VkGA4gASgIEhUKDW51bWJlck9mVW5pdHMYEiABKAESRgoOdW5pdGNvc3RtZXRyaWMYDyADKAsyLi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RJdGVtLlVuaXRjb3N0bWV0cmljRW50cnkSGgoSYWxsb2NhdGlvbkNhdGVnb3J5GBMgASgJGjUKE1VuaXRjb3N0bWV0cmljRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgBOgI4ASI6CiNHZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCSJZCiRHZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uUmVzcG9uc2USMQoIcmVzb3VyY2UYASADKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5SZXNvdXJjZURhdGEieAoZTW9kaWZ5UmVzb3VyY2VUeXBlUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhIKCnJlc291cmNlSWQYAyABKAkSFAoMcmVzb3VyY2VUeXBlGAQgASgJEg4KBnJlZ2lvbhgFIAEoCSJpChpNb2RpZnlSZXNvdXJjZVR5cGVSZXNwb25zZRIRCglhY2NvdW50SWQYASABKAkSEgoKcmVzb3VyY2VJZBgCIAEoCRIUCgxyZXNvdXJjZVR5cGUYAyABKAkSDgoGcmVnaW9uGAQgASgJImEKGFRlcm1pbmF0ZVJlc291cmNlUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhIKCnJlc291cmNlSWQYAyABKAkSDgoGcmVnaW9uGAQgASgJIlIKGVRlcm1pbmF0ZVJlc291cmNlUmVzcG9uc2USEQoJYWNjb3VudElkGAEgASgJEhIKCnJlc291cmNlSWQYAiABKAkSDgoGcmVnaW9uGAMgASgJIkMKF1VwbG9hZENoYXJnZUNvZGVSZXF1ZXN0EgwKBG5hbWUYASABKAkSDAoEdHlwZRgCIAEoCRIMCgRmaWxlGAMgASgMIlIKGFVwbG9hZENoYXJnZUNvZGVSZXNwb25zZRIMCgRuYW1lGAEgASgJEigKBnN0YXR1cxgCIAEoDjIYLmJsdWVhcGkuY292ZXIudjEuU3RhdHVzIkgKEkFzc2lnblBheWVyUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEQoJYWNjb3VudElkGAIgASgJEg8KB3BheWVySWQYAyABKAkiOQoTQXNzaWduUGF5ZXJSZXNwb25zZRIRCglhY2NvdW50SWQYASABKAkSDwoHcGF5ZXJJZBgCIAEoCSIiChBHZXRQYXllcnNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCSIjChFHZXRQYXllcnNSZXNwb25zZRIOCgZwYXllcnMYASADKAkiOQoSR2V0QWNjb3VudHNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRITCgtjb3N0R3JvdXBJZBgCIAEoCSInChNHZXRBY2NvdW50c1Jlc3BvbnNlEhAKCGFjY291bnRzGAEgAygJIjkKEkdldFNlcnZpY2VzUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEwoLY29zdEdyb3VwSWQYAiABKAkiJwoTR2V0U2VydmljZXNSZXNwb25zZRIQCghzZXJ2aWNlcxgBIAMoCSI4ChFHZXRSZWdpb25zUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEwoLY29zdEdyb3VwSWQYAiABKAkiJQoSR2V0UmVnaW9uc1Jlc3BvbnNlEg8KB3JlZ2lvbnMYASADKAkiNQoOR2V0VGFnc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJIj4KD0dldFRhZ3NSZXNwb25zZRIrCgd0YWdEYXRhGAEgAygLMhouYmx1ZWFwaS5hcGkuY292ZXIuVGFnRGF0YSIgCg9MaXN0RmVlc1JlcXVlc3QSDQoFbW9udGgYASABKAki7QIKCkZlZURldGFpbHMSCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSDgoGdmVuZG9yGAMgASgJEg8KB2FjY291bnQYBCABKAkSDQoFbW9udGgYBSABKAkSEAoIbGluZVR5cGUYBiABKAkSDwoHZmVlVHlwZRgHIAEoCRITCgtwcm9kdWN0Q29kZRgIIAEoCRITCgtkZXNjcmlwdGlvbhgJIAEoCRIPCgdzdGFydGVkGAogASgJEhQKDHRpbWVJbnRlcnZhbBgLIAEoCRITCgtwcm9kdWN0TmFtZRgMIAEoCRIQCghjdXJyZW5jeRgNIAEoCRITCgtzcGxpdFN0YXR1cxgOIAEoCRITCgtpc0FsbG9jYXRlZBgPIAEoCBIRCglpc0FwcGxpZWQYECABKAgSFQoNdW5ibGVuZGVkQ29zdBgRIAEoARIRCglzb3VyY2VGZWUYEiABKAkSEgoKbGFzdFVwZGF0ZRgTIAEoCSIiChFSZXN0b3JlRmVlUmVxdWVzdBINCgVmZWVJZBgBIAEoCSJRChZHZXRDb3N0R3JvdXBGZWVSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0VGltZRgCIAEoCRIPCgdlbmRUaW1lGAMgASgJImYKB0ZlZUl0ZW0SDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJEg8KB3Byb2R1Y3QYAyABKAkSDwoHYWNjb3VudBgEIAEoCRIMCgR0eXBlGAUgASgJEgwKBGNvc3QYBiABKAEiSQoJQWxsb2NhdG9yEgwKBHR5cGUYASABKAkSDQoFdmFsdWUYAiABKAkSDwoHZm9ybXVsYRgDIAEoCRIOCgZtb250aHMYBCABKAMiaAoIQ3JpdGVyaWESMAoDYW5kGAEgAygLMiMuYmx1ZWFwaS5jb3Zlci52MS5Dcml0ZXJpYS5BbmRFbnRyeRoqCghBbmRFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIqICChRDb3N0QWxsb2NhdG9yRGV0YWlscxIKCgJpZBgBIAEoCRIQCghjYXRlZ29yeRgCIAEoCRISCgpleHBpcmF0aW9uGAMgASgDEhIKCnN0YXJ0TW9udGgYBCABKAkSFgoOZGVmYXVsdEFjY291bnQYBSABKAkSMQoIY3JpdGVyaWEYBiABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Db21iaW5hdGlvbnMSLgoJYWxsb2NhdG9yGAcgAygLMhsuYmx1ZWFwaS5jb3Zlci52MS5BbGxvY2F0b3ISEgoKY3JlYXRlVGltZRgIIAEoCRISCgp1cGRhdGVUaW1lGAkgASgJEgwKBG5hbWUYCiABKAkSEwoLZGVzY3JpcHRpb24YCyABKAki+gEKFENvc3RBbGxvY2F0b3JSZXF1ZXN0EgoKAmlkGAEgASgJEhAKCGNhdGVnb3J5GAIgASgJEhIKCmV4cGlyYXRpb24YAyABKAMSEgoKc3RhcnRNb250aBgEIAEoCRIWCg5kZWZhdWx0QWNjb3VudBgFIAEoCRIxCghjcml0ZXJpYRgGIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkNvbWJpbmF0aW9ucxIuCglhbGxvY2F0b3IYByADKAsyGy5ibHVlYXBpLmNvdmVyLnYxLkFsbG9jYXRvchIMCgRuYW1lGAggASgJEhMKC2Rlc2NyaXB0aW9uGAkgASgJIhcKFUxpc3RBbGxvY2F0b3JzUmVxdWVzdCLwAQoWQ3JlYXRlQWxsb2NhdG9yUmVxdWVzdBIQCghjYXRlZ29yeRgBIAEoCRISCgpleHBpcmF0aW9uGAIgASgDEhIKCnN0YXJ0TW9udGgYAyABKAkSFgoOZGVmYXVsdEFjY291bnQYBCABKAkSMQoIY3JpdGVyaWEYBSABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Db21iaW5hdGlvbnMSLgoJYWxsb2NhdG9yGAYgAygLMhsuYmx1ZWFwaS5jb3Zlci52MS5BbGxvY2F0b3ISDAoEbmFtZRgHIAEoCRITCgtkZXNjcmlwdGlvbhgIIAEoCSIyCh5HZXRBbGxvY2F0aW9uQXR0cmlidXRlc1JlcXVlc3QSEAoIY2F0ZWdvcnkYASABKAkisQEKH0dldEFsbG9jYXRpb25BdHRyaWJ1dGVzUmVzcG9uc2USWAoJYXR0cmlidXRlGAEgAygLMkUuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGxvY2F0aW9uQXR0cmlidXRlc1Jlc3BvbnNlLkFsbG9jYXRpb25BdHRyaWJ1dGUaNAoTQWxsb2NhdGlvbkF0dHJpYnV0ZRIMCgR0eXBlGAEgASgJEg8KB3NlcnZpY2UYAiADKAkiPgobR2V0QWxsb2NhdGlvblNvdXJjZXNSZXF1ZXN0EgwKBHR5cGUYASABKAkSEQoJYWNjb3VudElkGAIgASgJIusBChxHZXRBbGxvY2F0aW9uU291cmNlc1Jlc3BvbnNlElAKBnNvdXJjZRgBIAMoCzJALmJsdWVhcGkuY292ZXIudjEuR2V0QWxsb2NhdGlvblNvdXJjZXNSZXNwb25zZS5BbGxvY2F0aW9uU291cmNlcxIrCgd0YWdEYXRhGAIgAygLMhouYmx1ZWFwaS5hcGkuY292ZXIuVGFnRGF0YRpMChFBbGxvY2F0aW9uU291cmNlcxITCgthY2NvdW50TmFtZRgBIAEoCRIPCgdzZXJ2aWNlGAIgASgJEhEKCWNvc3RHcm91cBgDIAEoCSIkChZEZWxldGVBbGxvY2F0b3JSZXF1ZXN0EgoKAmlkGAEgASgJIkcKHFByb3h5Q3JlYXRlQ29tcGxldGlvblJlcXVlc3QSJwoGcGFyYW1zGAEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCItCh1Qcm94eUNyZWF0ZUNvbXBsZXRpb25SZXNwb25zZRIMCgRsaW5lGAEgASgJItQEChNBY2NvdW50VXNhZ2VEZXRhaWxzEgoKAmlkGAEgASgJEg0KBW9yZ0lkGAIgASgJEg4KBnZlbmRvchgDIAEoCRIPCgdhY2NvdW50GAQgASgJEgwKBGRhdGUYBSABKAkSEwoLcHJvZHVjdENvZGUYBiABKAkSEwoLc2VydmljZUNvZGUYByABKAkSDgoGcmVnaW9uGAggASgJEgwKBHpvbmUYCSABKAkSEQoJdXNhZ2VUeXBlGAogASgJEhQKDGluc3RhbmNlVHlwZRgLIAEoCRIRCglvcGVyYXRpb24YDCABKAkSEQoJaW52b2ljZUlkGA0gASgJEhMKC2Rlc2NyaXB0aW9uGA4gASgJEhIKCnJlc291cmNlSWQYDyABKAkSDAoEdGFncxgQIAEoCRIWCg5jb3N0Q2F0ZWdvcmllcxgRIAEoCRITCgt1c2FnZUFtb3VudBgSIAEoARIZChF0cnVlVW5ibGVuZGVkQ29zdBgTIAEoARIVCg11bmJsZW5kZWRDb3N0GBQgASgBEhUKDWVmZmVjdGl2ZUNvc3QYFSABKAESFQoNYW1vcnRpemVkQ29zdBgWIAEoARIaChJwdWJsaWNPbkRlbWFuZENvc3QYFyABKAESGwoTdW51c2VkQW1vcnRpemVkQ29zdBgYIAEoARISCgpsYXN0VXBkYXRlGBkgASgJEhMKC3NwbGl0U3RhdHVzGBogASgJEhMKC2lzQWxsb2NhdGVkGBsgASgIEhEKCWlzQXBwbGllZBgcIAEoCBIOCgZzb3VyY2UYHSABKAkiPQoXTGlzdEFjY291bnRVc2FnZVJlcXVlc3QSEQoJc3RhcnREYXRlGAEgASgJEg8KB2VuZERhdGUYAiABKAkiMgoaUmVzdG9yZUFjY291bnRVc2FnZVJlcXVlc3QSFAoMYWxsb2NhdGlvbklkGAEgASgJIiMKFVJlc3RvcmVTYXZpbmdzUmVxdWVzdBIKCgJpZBgBIAEoCSK6AgoOU2F2aW5nc0RldGFpbHMSCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSDgoGdmVuZG9yGAMgASgJEg8KB2FjY291bnQYBCABKAkSDQoFbW9udGgYBSABKAkSDAoEdHlwZRgGIAEoCRILCgNhcm4YByABKAkSEwoLcHJvZHVjdENvZGUYCCABKAkSEgoKb2ZmZXJDbGFzcxgJIAEoCRIQCghvbmRlbWFuZBgKIAEoARIVCg1lZmZlY3RpdmVDb3N0GAsgASgBEg8KB3NhdmluZ3MYDCABKAESEwoLc3BsaXRTdGF0dXMYDSABKAkSEwoLaXNBbGxvY2F0ZWQYDiABKAgSEQoJaXNBcHBsaWVkGA8gASgIEg4KBnNvdXJjZRgQIAEoCRISCgpsYXN0VXBkYXRlGBEgASgJImoKHUdldENvc3RHcm91cEFsbG9jYXRpb25SZXF1ZXN0EhAKCGNhdGVnb3J5GAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEhEKCXN0YXJ0RGF0ZRgDIAEoCRIPCgdlbmREYXRlGAQgASgJIoABCg5BbGxvY2F0aW9uSXRlbRIOCgZ2ZW5kb3IYASABKAkSDQoFbW9udGgYAiABKAkSDwoHcHJvZHVjdBgDIAEoCRIPCgdhY2NvdW50GAQgASgJEgwKBHR5cGUYBSABKAkSDAoEY29zdBgGIAEoARIRCgljb3N0R3JvdXAYByABKAkiXwoXUHJvY2Vzc0F1dGgwVXNlclJlcXVlc3QSDgoGc291cmNlGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSDQoFZW1haWwYAyABKAkSEQoJc3VidXNlcklkGAQgASgJIjAKGFByb2Nlc3NBdXRoMFVzZXJSZXNwb25zZRIUCgxpc0F1dGhvcml6ZWQYASABKAgilQIKCkRhdGFBY2Nlc3MSDgoGdGFyZ2V0GAEgASgJEg0KBW9yZ0lkGAIgASgJEjEKCmdjcE9wdGlvbnMYAyABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5HY3BPcHRpb25zEjUKDGF6dXJlT3B0aW9ucxgEIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkF6dXJlT3B0aW9ucxIxCgphd3NPcHRpb25zGAUgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuQXdzT3B0aW9ucxITCgthY2NvdW50VHlwZRgGIAEoCRISCgpsYXN0VXBkYXRlGAcgASgJEhIKCmNyZWF0ZVRpbWUYCCABKAkSDgoGdmVuZG9yGAkgASgJIu0BChlSZWdpc3RlckRhdGFBY2Nlc3NSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIOCgZ0YXJnZXQYAiABKAkSEwoLYWNjb3VudFR5cGUYAyABKAkSMQoKZ2NwT3B0aW9ucxgEIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLkdjcE9wdGlvbnMSNQoMYXp1cmVPcHRpb25zGAUgASgLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQXp1cmVPcHRpb25zEjEKCmF3c09wdGlvbnMYBiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5Bd3NPcHRpb25zIusBChdVcGRhdGVEYXRhQWNjZXNzUmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGdmVuZG9yGAIgASgJEjEKCmdjcE9wdGlvbnMYAyABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5HY3BPcHRpb25zEjUKDGF6dXJlT3B0aW9ucxgEIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkF6dXJlT3B0aW9ucxIxCgphd3NPcHRpb25zGAUgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuQXdzT3B0aW9ucxITCgthY2NvdW50VHlwZRgGIAEoCSIXChVMaXN0RGF0YUFjY2Vzc1JlcXVlc3QiIQofTGlzdFVucmVnaXN0ZXJlZEFjY291bnRzUmVxdWVzdCJxCiBMaXN0VW5yZWdpc3RlcmVkQWNjb3VudHNSZXNwb25zZRINCgVvcmdJZBgBIAEoCRI+ChF1bnJlZ2lzdGVyZWRBY2N0cxgCIAMoCzIjLmJsdWVhcGkuY292ZXIudjEuVW5yZWdpc3RlcmVkQWNjdHMiVAoRVW5yZWdpc3RlcmVkQWNjdHMSCgoCaWQYASABKAkSDwoHcGF5ZXJJZBgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEgoKbGFzdFVwZGF0ZRgEIAEoCSJ8ChVCaWxsaW5nQWNjb3VudFJlcXVlc3QSEQoJYmlsbGluZ0lkGAEgASgJEhEKCWRhdGFzZXRJZBgCIAEoCRIVCg1kYXRhc2V0UmVnaW9uGAMgASgJEhEKCXByb2plY3RJZBgEIAEoCRITCgtiaWxsaW5nTmFtZRgFIAEoCSJUCh1HZXRBbmREZWxldGVEYXRhQWNjZXNzUmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGdmVuZG9yGAIgASgJEhMKC2FjY291bnRUeXBlGAMgASgJImEKIkFkZFBhcnRuZXJDZW50ZXJDcmVkZW50aWFsc1JlcXVlc3QSEQoJYWNjb3VudElkGAEgASgJEhUKDWFwcGxpY2F0aW9uSWQYAiABKAkSEQoJc2VjcmV0S2V5GAMgASgJIiUKFEFkZE1wblNldHRpbmdSZXF1ZXN0Eg0KBW1wbklkGAEgASgJItYBChxHZXRDb3N0R3JvdXBBdHRyaWJ1dGVSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIVCg1hdHRyaWJ1dGVUeXBlGAIgASgJEhMKC2Nvc3RHcm91cElkGAMgASgJEj0KFGV4aXN0aW5nQ29tYmluYXRpb25zGAQgAygLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQ29tYmluYXRpb25zEjsKEmN1cnJlbnRDb21iaW5hdGlvbhgFIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkNvbWJpbmF0aW9ucyJ3Ch1HZXRDb3N0R3JvdXBBdHRyaWJ1dGVSZXNwb25zZRIpCgZyZXN1bHQYASADKAsyGS5ibHVlYXBpLmFwaS5jb3Zlci5SZXN1bHQSKwoHdGFnRGF0YRgCIAMoCzIaLmJsdWVhcGkuYXBpLmNvdmVyLlRhZ0RhdGEiJgoUR2V0Q2F0ZWdvcmllc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIkYKFUdldENhdGVnb3JpZXNSZXNwb25zZRItCghjYXRlZ29yeRgBIAMoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLkNhdGVnb3J5IhIKEEdldEFsZXJ0c1JlcXVlc3QiRAoRR2V0QWxlcnRzUmVzcG9uc2USLwoJYWxlcnREYXRhGAEgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnREYXRhIoYBChJDcmVhdGVBbGVydFJlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtmaXhlZEFtb3VudBgCIAEoAhISCgpwZXJjZW50YWdlGAMgASgCEhMKC2dyYW51bGFyaXR5GAQgASgJEhIKCmNvc3RHcm91cHMYBSADKAkSEAoIY2hhbm5lbHMYBiADKAkiRgoTQ3JlYXRlQWxlcnRSZXNwb25zZRIvCglhbGVydERhdGEYASABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5BbGVydERhdGEiJAoWR2V0QWxlcnREZXRhaWxzUmVxdWVzdBIKCgJpZBgBIAEoCSJKChdHZXRBbGVydERldGFpbHNSZXNwb25zZRIvCglhbGVydERhdGEYASABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5BbGVydERhdGEiIAoSRGVsZXRlQWxlcnRSZXF1ZXN0EgoKAmlkGAEgASgJIiEKE0RlbGV0ZUFsZXJ0UmVzcG9uc2USCgoCaWQYASABKAkimQEKGVVwZGF0ZUFsZXJ0RGV0YWlsc1JlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtmaXhlZEFtb3VudBgDIAEoAhISCgpwZXJjZW50YWdlGAQgASgCEhMKC2dyYW51bGFyaXR5GAUgASgJEhIKCmNvc3RHcm91cHMYBiADKAkSEAoIY2hhbm5lbHMYByADKAkiTQoaVXBkYXRlQWxlcnREZXRhaWxzUmVzcG9uc2USLwoJYWxlcnREYXRhGAEgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnREYXRhIiIKEkdldENoYW5uZWxzUmVxdWVzdBIMCgR0eXBlGAEgASgJIkoKE0dldENoYW5uZWxzUmVzcG9uc2USMwoLY2hhbm5lbERhdGEYASABKAsyHi5ibHVlYXBpLmFwaS5jb3Zlci5DaGFubmVsRGF0YSJGChRDcmVhdGVDaGFubmVsUmVxdWVzdBIMCgRuYW1lGAEgASgJEgwKBHR5cGUYAiABKAkSEgoKd2ViaG9va1VybBgDIAEoCSJMChVDcmVhdGVDaGFubmVsUmVzcG9uc2USMwoLY2hhbm5lbERhdGEYASABKAsyHi5ibHVlYXBpLmFwaS5jb3Zlci5DaGFubmVsRGF0YSImChhHZXRDaGFubmVsRGV0YWlsc1JlcXVlc3QSCgoCaWQYASABKAkiUAoZR2V0Q2hhbm5lbERldGFpbHNSZXNwb25zZRIzCgtjaGFubmVsRGF0YRgBIAEoCzIeLmJsdWVhcGkuYXBpLmNvdmVyLkNoYW5uZWxEYXRhIiIKFERlbGV0ZUNoYW5uZWxSZXF1ZXN0EgoKAmlkGAEgASgJIiMKFURlbGV0ZUNoYW5uZWxSZXNwb25zZRIKCgJpZBgBIAEoCSJZChtVcGRhdGVDaGFubmVsRGV0YWlsc1JlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIMCgR0eXBlGAMgASgJEhIKCndlYmhvb2tVcmwYBCABKAkiUwocVXBkYXRlQ2hhbm5lbERldGFpbHNSZXNwb25zZRIzCgtjaGFubmVsRGF0YRgBIAEoCzIeLmJsdWVhcGkuYXBpLmNvdmVyLkNoYW5uZWxEYXRhIs8BCiFHZXREaXNjb3VudFJlY29tbWVuZGF0aW9uc1JlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSLwoJYXdzSW5wdXRzGAIgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQXdzSW5wdXRzEjMKC2F6dXJlSW5wdXRzGAMgASgLMh4uYmx1ZWFwaS5hcGkuY292ZXIuQXp1cmVJbnB1dHMSLwoJZ2NwSW5wdXRzGAQgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuR2NwSW5wdXRzIokCCiJHZXREaXNjb3VudFJlY29tbWVuZGF0aW9uc1Jlc3BvbnNlEkkKEmF3c1JlY29tbWVuZGF0aW9ucxgBIAEoCzItLmJsdWVhcGkuYXBpLmNvdmVyLkF3c0Rpc2NvdW50UmVjb21tZW5kYXRpb25zEk0KFGF6dXJlUmVjb21tZW5kYXRpb25zGAIgASgLMi8uYmx1ZWFwaS5hcGkuY292ZXIuQXp1cmVEaXNjb3VudFJlY29tbWVuZGF0aW9ucxJJChJnY3BSZWNvbW1lbmRhdGlvbnMYAyABKAsyLS5ibHVlYXBpLmFwaS5jb3Zlci5HY3BEaXNjb3VudFJlY29tbWVuZGF0aW9ucyJXChxHZXRBbm9tYWx5aW5Db3N0R3JvdXBSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0RGF0ZRgCIAEoCRIPCgdlbmREYXRlGAMgASgJIuEBCgtBbm9tYWx5RGF0YRIPCgdhY2NvdW50GAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEg4KBnZlbmRvchgDIAEoCRIPCgdwcm9kdWN0GAQgASgJEgwKBGRhdGUYBSABKAkSEQoJdG90YWxDb3N0GAYgASgCEhEKCWlzQW5vbWFseRgHIAEoCBISCgpsb3dlckxpbWl0GAggASgCEhIKCnVwcGVyTGltaXQYCSABKAISEwoLYW5vbWFseUNvc3QYCiABKAISGgoSYW5vbWFseVByb2JhYmlsaXR5GAsgASgCIoUBCiRDcmVhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QSEwoLZnJlcXVlbmNpZXMYASADKAMSEgoKY29zdEdyb3VwcxgCIAMoCRIUCgxhbGVydEVuYWJsZWQYAyABKAgSEAoIY2hhbm5lbHMYBCADKAkSDAoEbmFtZRgFIAEoCSI2CihNYW5pcHVsYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0EgoKAmlkGAEgASgJIpEBCiRVcGRhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QSCgoCaWQYASABKAkSFAoMYWxlcnRFbmFibGVkGAIgASgIEhAKCGNoYW5uZWxzGAMgAygJEhMKC2ZyZXF1ZW5jaWVzGAQgAygDEhIKCmNvc3RHcm91cHMYBSADKAkSDAoEbmFtZRgGIAEoCSLpAQoXRGlzY291bnRFeHBpcnlBbGVydERhdGESCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSFAoMYWxlcnRFbmFibGVkGAMgASgIEhMKC2ZyZXF1ZW5jaWVzGAQgAygDEjUKCmNvc3RHcm91cHMYBSADKAsyIS5ibHVlYXBpLmFwaS5jb3Zlci5BbGVydENvc3RHcm91cBIPCgdkZXRhaWxzGAYgASgJEjIKCGNoYW5uZWxzGAcgASgLMiAuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnRDaGFubmVscxIMCgRuYW1lGAggASgJIiQKIkxpc3REaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QihQEKGUNyZWF0ZUFub21hbHlBbGVydFJlcXVlc3QSDAoEbmFtZRgBIAEoCRIUCgxhbGVydEVuYWJsZWQYAiABKAgSEQoJZnJlcXVlbmN5GAMgASgJEhMKC2Nvc3RHcm91cElkGAQgASgJEhwKFG5vdGlmaWNhdGlvbkNoYW5uZWxzGAUgAygJIisKHU1hbmlwdWxhdGVBbm9tYWx5QWxlcnRSZXF1ZXN0EgoKAmlkGAEgASgJItABChBBbm9tYWx5QWxlcnREYXRhEgoKAmlkGAEgASgJEg0KBW9yZ0lkGAIgASgJEgwKBG5hbWUYAyABKAkSFAoMYWxlcnRFbmFibGVkGAQgASgIEhEKCWZyZXF1ZW5jeRgFIAEoCRI2Cgtjb3N0R3JvdXBJZBgGIAEoCzIhLmJsdWVhcGkuYXBpLmNvdmVyLkFsZXJ0Q29zdEdyb3VwEjIKCGNoYW5uZWxzGAcgASgLMiAuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnRDaGFubmVscyIZChdMaXN0QW5vbWFseUFsZXJ0UmVxdWVzdCKRAQoZVXBkYXRlQW5vbWFseUFsZXJ0UmVxdWVzdBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhQKDGFsZXJ0RW5hYmxlZBgDIAEoCBIcChRub3RpZmljYXRpb25DaGFubmVscxgEIAMoCRIRCglmcmVxdWVuY3kYBSABKAkSEwoLY29zdEdyb3VwSWQYBiABKAkiiQEKFlJlZ2lzdGVyTmV3VXNlclJlcXVlc3QSDQoFZW1haWwYASABKAkSEAoIcGFzc3dvcmQYAiABKAkSDAoEbmFtZRgDIAEoCRIPCgdjb21wYW55GAQgASgJEgwKBHJvbGUYBSABKAkSDgoGYW1vdW50GAYgASgJEhEKCWludGVudGlvbhgHIAEoCSIvChdSZWdpc3Rlck5ld1VzZXJSZXNwb25zZRIUCgxpc0F1dGhvcml6ZWQYASABKAgiJgoVR2V0VXNlclByb2ZpbGVSZXF1ZXN0Eg0KBWVtYWlsGAEgASgJIs4BChZHZXRVc2VyUHJvZmlsZVJlc3BvbnNlEhkKEWhhc0NyZWF0ZWRQcm9maWxlGAEgASgIEgwKBG5hbWUYAiABKAkSDAoEcm9sZRgDIAEoCRINCgV1c2FnZRgEIAEoCRIRCglpbnRlbnRpb24YBSABKAkSEwoLY29tcGFueU5hbWUYBiABKAkSFAoMZW1haWxBZGRyZXNzGAcgASgJEhIKCmxpbmtTb3VyY2UYCCABKAkSHAoUaGFzU3Vic2NyaWJlZFVwZGF0ZXMYCSABKAgirgEKGFVwZGF0ZVVzZXJQcm9maWxlUmVxdWVzdBINCgVlbWFpbBgBIAEoCRIMCgRuYW1lGAIgASgJEgwKBHJvbGUYAyABKAkSDQoFdXNhZ2UYBCABKAkSEQoJaW50ZW50aW9uGAUgASgJEhMKC2NvbXBhbnlOYW1lGAYgASgJEhIKCmxpbmtTb3VyY2UYByABKAkSHAoUaGFzU3Vic2NyaWJlZFVwZGF0ZXMYCCABKAgirwEKGVVwZGF0ZVVzZXJQcm9maWxlUmVzcG9uc2USDQoFZW1haWwYASABKAkSDAoEbmFtZRgCIAEoCRIMCgRyb2xlGAMgASgJEg0KBXVzYWdlGAQgASgJEhEKCWludGVudGlvbhgFIAEoCRITCgtjb21wYW55TmFtZRgGIAEoCRISCgpsaW5rU291cmNlGAcgASgJEhwKFGhhc1N1YnNjcmliZWRVcGRhdGVzGAggASgIIkgKEkxpc3RCdWRnZXRzUmVxdWVzdBIfChdpbmNsdWRlU3BlbmRBbmRGb3JlY2FzdBgBIAEoCBIRCgljb3N0R3JvdXAYAiABKAkiSAoTTGlzdEJ1ZGdldHNSZXNwb25zZRIxCgpidWRnZXREYXRhGAEgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuQnVkZ2V0RGF0YSIeChBHZXRCdWRnZXRSZXF1ZXN0EgoKAmlkGAEgASgJIkYKEUdldEJ1ZGdldFJlc3BvbnNlEjEKCmJ1ZGdldERhdGEYASABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5CdWRnZXREYXRhIkgKE0NyZWF0ZUJ1ZGdldFJlcXVlc3QSMQoKYnVkZ2V0RGF0YRgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLkJ1ZGdldERhdGEiSQoUQ3JlYXRlQnVkZ2V0UmVzcG9uc2USMQoKYnVkZ2V0RGF0YRgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLkJ1ZGdldERhdGEiIQoTRGVsZXRlQnVkZ2V0UmVxdWVzdBIKCgJpZBgBIAEoCSIiChREZWxldGVCdWRnZXRSZXNwb25zZRIKCgJpZBgBIAEoCSJUChNVcGRhdGVCdWRnZXRSZXF1ZXN0EgoKAmlkGAEgASgJEjEKCmJ1ZGdldERhdGEYAiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5CdWRnZXREYXRhIkkKFFVwZGF0ZUJ1ZGdldFJlc3BvbnNlEjEKCmJ1ZGdldERhdGEYASABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5CdWRnZXREYXRhIksKLlJlc29sdmVBV1NNYXJrZXRwbGFjZVRva2VuRm9yT25ib2FyZGluZ1JlcXVlc3QSGQoRcmVnaXN0cmF0aW9uVG9rZW4YASABKAkiYQovUmVzb2x2ZUFXU01hcmtldHBsYWNlVG9rZW5Gb3JPbmJvYXJkaW5nUmVzcG9uc2USGgoSaXNBbGxvd2VkVG9PbmJvYXJkGAEgASgIEhIKCmN1c3RvbWVySWQYAiABKAkiJgokR2V0Q3VzdG9tZXJTdWJzY3JpcHRpb25TdGF0dXNSZXF1ZXN0IvIBCiVHZXRDdXN0b21lclN1YnNjcmlwdGlvblN0YXR1c1Jlc3BvbnNlEhYKDmRhdGVSZWdpc3RlcmVkGAEgASgJEhoKEnN1YnNjcmlwdGlvbkV4cGlyeRgCIAEoCRIQCghkYXlzTGVmdBgDIAEoBRIUCgxpc1N1YnNjcmliZWQYBCABKAgSEQoJaXNFeHBpcmVkGAUgASgIEgwKBHBsYW4YBiABKAkSDgoGYW1vdW50GAcgASgJEhUKDXBheW1lbnRPcHRpb24YCCABKAkSFQoNcGF5bWVudE1ldGhvZBgJIAEoCRIOCgZjcmVkaXQYCiABKAEiswEKFkNyZWF0ZVByb2ZpbGluZ1JlcXVlc3QSDAoEbmFtZRgBIAEoCRIMCgRyb2xlGAIgASgJEg0KBXVzYWdlGAMgASgJEhEKCWludGVudGlvbhgEIAEoCRITCgtjb21wYW55TmFtZRgFIAEoCRIUCgxlbWFpbEFkZHJlc3MYBiABKAkSEgoKbGlua1NvdXJjZRgHIAEoCRIcChRoYXNTdWJzY3JpYmVkVXBkYXRlcxgIIAEoCCIZChdDcmVhdGVQcm9maWxpbmdSZXNwb25zZSI5ChtBZGRJbmZvdG9NYXJrZXRwbGFjZVJlcXVlc3QSGgoSY3VzdG9tZXJJZGVudGlmaWVyGAEgASgJIh4KHEFkZEluZm90b01hcmtldHBsYWNlUmVzcG9uc2UieAoXR2V0UmVwb3J0U3VtbWFyeVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEQoJc3RhcnREYXRlGAIgASgJEg8KB2VuZERhdGUYAyABKAkSEgoKcmVwb3J0VHlwZRgEIAEoCRIQCghjdXJyZW5jeRgFIAEoCSKuAgoYR2V0UmVwb3J0U3VtbWFyeVJlc3BvbnNlEhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0RGF0ZRgCIAEoCRIPCgdlbmREYXRlGAMgASgJEj0KEGV4ZWN1dGl2ZVN1bW1hcnkYBCABKAsyIy5ibHVlYXBpLmFwaS5jb3Zlci5FeGVjdXRpdmVTdW1tYXJ5El8KIW9wdGltaXphdGlvblJlY29tbWVuZGF0aW9uU3VtbWFyeRgFIAEoCzI0LmJsdWVhcGkuYXBpLmNvdmVyLk9wdGltaXphdGlvblJlY29tbWVuZGF0aW9uU3VtbWFyeRI5Cg5zYXZpbmdzU3VtbWFyeRgGIAEoCzIhLmJsdWVhcGkuYXBpLmNvdmVyLlNhdmluZ3NTdW1tYXJ5IqoCChlMaXN0UmVjb21tZW5kYXRpb25SZXF1ZXN0EhMKC2Nvc3Rncm91cElkGAEgASgJEhYKDmRhdGVSYW5nZVN0YXJ0GAIgASgJEhQKDGRhdGVSYW5nZUVuZBgDIAEoCRIOCgZ2ZW5kb3IYBCABKAkSDgoGc291cmNlGAUgASgJEhoKEm9wdGltaXphdGlvblN0YXR1cxgHIAEoCRIMCgR0eXBlGAggASgJEg4KBnNwVHlwZRgJIAEoCRIRCglyYXRlTW9kZWwYCiABKAkSFQoNcGF5bWVudE9wdGlvbhgLIAEoCRIMCgR0ZXJtGAwgASgJEg8KB3NlcnZpY2UYDSABKAkSFQoNb2ZmZXJpbmdDbGFzcxgOIAEoCRIQCghjdXJyZW5jeRgPIAEoCSLVAgobTGlzdFJlY29tbWVuZGF0aW9uVjJSZXF1ZXN0EhMKC2Nvc3Rncm91cElkGAEgASgJEhYKDmRhdGVSYW5nZVN0YXJ0GAIgASgJEhQKDGRhdGVSYW5nZUVuZBgDIAEoCRJQCgxyYXRlU2V0dGluZ3MYBCABKAsyOi5ibHVlYXBpLmNvdmVyLnYxLkxpc3RSZWNvbW1lbmRhdGlvblYyUmVxdWVzdC5SYXRlU2V0dGluZ3MSEAoIY3VycmVuY3kYBSABKAkajgEKDFJhdGVTZXR0aW5ncxIOCgZzcFR5cGUYASABKAkSEQoJcmF0ZU1vZGVsGAIgASgJEhUKDXBheW1lbnRPcHRpb24YAyABKAkSDAoEdGVybRgEIAEoCRIPCgdzZXJ2aWNlGAUgASgJEhUKDW9mZmVyaW5nQ2xhc3MYBiABKAkSDgoGdmVuZG9yGAcgASgJItoGChpMaXN0UmVjb21tZW5kYXRpb25SZXNwb25zZRIYChByZWNvbW1lbmRhdGlvbklkGAEgASgJEhYKDnJlY29tbWVuZGF0aW9uGAIgASgJEg8KB3NlcnZpY2UYAyABKAkSHgoWZXN0aW1hdGVkTW9udGhseVNhdmluZxgEIAEoARIcChRlc3RpbWF0ZWRNb250aGx5Q29zdBgFIAEoARIPCgdzY29yaW5nGAYgASgJEg4KBnZlbmRvchgHIAEoCRIQCghjYXRlZ29yeRgIIAEoCRIaChJvcHRpbWl6YXRpb25TdGF0dXMYCSABKAkSFAoMZXJyb3JNZXNzYWdlGAogASgJEhEKCWFjY291bnRJZBgLIAEoCRITCgthY2NvdW50TmFtZRgMIAEoCRIUCgxpbnN0YW5jZU5hbWUYDSABKAkSEgoKaW5zdGFuY2VJZBgOIAEoCRIUCgxpbnN0YW5jZVR5cGUYDyABKAkSDgoGcmVnaW9uGBAgASgJEhIKCmNvbW1pdG1lbnQYESABKAESDgoGc3BUeXBlGBIgASgJEhgKEG51bWJlclRvUHVyY2hhc2UYEyABKAMSDgoGcmlUeXBlGBQgASgJEgwKBHR5cGUYFSABKAkSDgoGc291cmNlGBYgASgJEhcKD2RhdGVSZWNvbW1lbmRlZBgXIAEoCRIbChNyZWNvbW1lbmRhdGlvbkdyb3VwGBggASgJEhUKDWxhc3RVcGRhdGVkQXQYGSABKAkSUwoOcHVyY2hhc2VPcHRpb24YGiABKAsyOy5ibHVlYXBpLmNvdmVyLnYxLkxpc3RSZWNvbW1lbmRhdGlvblJlc3BvbnNlLlB1cmNoYXNlT3B0aW9uGs8BCg5QdXJjaGFzZU9wdGlvbhIOCgZzcFR5cGUYASABKAkSFQoNb2ZmZXJpbmdDbGFzcxgCIAEoCRISCgpjb21taXRtZW50GAMgASgBEhgKEG51bWJlclRvUHVyY2hhc2UYBCABKAMSFQoNcGF5bWVudE9wdGlvbhgFIAEoCRIMCgR0ZXJtGAYgASgJEhkKEWN1cnJlbnRHZW5lcmF0aW9uGAcgASgIEhMKC3NlcnZpY2VUeXBlGAggASgJEhMKC3VwZnJvbnRDb3N0GAkgASgBIlEKGEdldFJlY29tbWVuZGF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRITCgtjb3N0R3JvdXBJZBgCIAEoCRIUCgxwZXJpb2RPcHRpb24YAyABKAkiXgoZR2V0UmVjb21tZW5kYXRpb25SZXNwb25zZRJBChJyZWNvbW1lbmRhdGlvbkRhdGEYASABKAsyJS5ibHVlYXBpLmFwaS5jb3Zlci5BV1NSZWNvbW1lbmRhdGlvbnMiRAoaRXhlY3V0ZU9wdGltaXphdGlvblJlcXVlc3QSGAoQcmVjb21tZW5kYXRpb25JZBgBIAEoCRIMCgR0eXBlGAIgASgJIpQDChtFeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2USTAoJYXdzT3B0aW9uGAEgASgLMjcuYmx1ZWFwaS5jb3Zlci52MS5FeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2UuQVdTT3B0aW9uSAASTAoJZ2NwT3B0aW9uGAIgASgLMjcuYmx1ZWFwaS5jb3Zlci52MS5FeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2UuR0NQT3B0aW9uSAASVgoOYXp1cmVDc3BPcHRpb24YAyABKAsyPC5ibHVlYXBpLmNvdmVyLnYxLkV4ZWN1dGVPcHRpbWl6YXRpb25SZXNwb25zZS5BenVyZUNTUE9wdGlvbkgAGlgKCUFXU09wdGlvbhIaChJhcHByb3ZlVGVtcGxhdGVVcmwYASABKAkSGAoQcmVjb21tZW5kYXRpb25JZBgCIAEoCRIVCg1jdXJyZW50U3RhdHVzGAMgASgJGgsKCUdDUE9wdGlvbhoQCg5BenVyZUNTUE9wdGlvbkIICgZWZW5kb3IiIwoVTWFya0FzRXhlY3V0ZWRSZXF1ZXN0EgoKAmlkGAEgAygJIhgKFk1hcmtBc0V4ZWN1dGVkUmVzcG9uc2UiLwohVW5kb0V4ZWN1dGVkUmVjb21tZW5kYXRpb25SZXF1ZXN0EgoKAmlkGAEgAygJIiQKIlVuZG9FeGVjdXRlZFJlY29tbWVuZGF0aW9uUmVzcG9uc2UipwEKGk9wdGltaXphdGlvbkhpc3RvcnlSZXF1ZXN0EhMKC2Nvc3Rncm91cElkGAEgASgJEhYKDmRhdGVSYW5nZVN0YXJ0GAIgASgJEhQKDGRhdGVSYW5nZUVuZBgDIAEoCRIOCgZ2ZW5kb3IYBCABKAkSDgoGc291cmNlGAUgASgJEhQKDHBlcmlvZE9wdGlvbhgGIAEoCRIQCghjdXJyZW5jeRgHIAEoCSJ2ChtPcHRpbWl6YXRpb25IaXN0b3J5UmVzcG9uc2USVwodZXhlY3V0ZWRSZWNvbW1lbmRhdGlvbkRldGFpbHMYAiADKAsyMC5ibHVlYXBpLmFwaS5jb3Zlci5FeGVjdXRlZFJlY29tbWVuZGF0aW9uRGV0YWlscyJgCiFTZXRDb3N0R3JvdXBFdmVudEluZGljYXRvclJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDwoHYW5vbWFseRgCIAEoCBIVCg12aXN1YWxCdWlsZGVyGAMgASgIInQKIlNldENvc3RHcm91cEV2ZW50SW5kaWNhdG9yUmVzcG9uc2USEwoLY29zdEdyb3VwSWQYASABKAkSOQoOZXZlbnRJbmRpY2F0b3IYAiABKAsyIS5ibHVlYXBpLmFwaS5jb3Zlci5FdmVudEluZGljYXRvciJ7CiFTZXRDb3N0R3JvdXBBbm9tYWx5T3B0aW9uc1JlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEQoJdGhyZXNob2xkGAIgASgCEhQKDGlzUGVyY2VudGFnZRgDIAEoCBIYChBwYXN0RGF0YUluTW9udGhzGAQgASgDInQKIlNldENvc3RHcm91cEFub21hbHlPcHRpb25zUmVzcG9uc2USEwoLY29zdEdyb3VwSWQYASABKAkSOQoOYW5vbWFseU9wdGlvbnMYAiABKAsyIS5ibHVlYXBpLmFwaS5jb3Zlci5Bbm9tYWx5T3B0aW9ucyIvChhTZXRPcmdGaXNjYWxNb250aFJlcXVlc3QSEwoLZmlzY2FsTW9udGgYASABKAkiMAoZU2V0T3JnRmlzY2FsTW9udGhSZXNwb25zZRITCgtmaXNjYWxNb250aBgBIAEoCSIaChhHZXRPcmdGaXNjYWxNb250aFJlcXVlc3QiSAoZR2V0T3JnRmlzY2FsTW9udGhSZXNwb25zZRITCgtmaXNjYWxNb250aBgBIAEoCRIWCg5kYXRlUmVnaXN0ZXJlZBgCIAEoCSJbChtUcmFuc2Zlck9yZ2FuaXphdGlvblJlcXVlc3QSDgoGdGFyZ2V0GAEgASgJEg4KBnJlZ2lvbhgCIAEoCRINCgVwYXllchgDIAEoCRINCgVvcmdJZBgEIAEoCSIuChxUcmFuc2Zlck9yZ2FuaXphdGlvblJlc3BvbnNlEg4KBnRhcmdldBgBIAEoCSJFCiBVcGRhdGVDb3N0R3JvdXBDcmVhdGlvblVJUmVxdWVzdBIhChl1c2VOZXdDb3N0R3JvdXBDcmVhdGlvblVJGAEgASgIIlIKIVVwZGF0ZUNvc3RHcm91cENyZWF0aW9uVUlSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIhYKFExpc3RVbml0VHlwZXNSZXF1ZXN0Ik4KFUxpc3RVbml0VHlwZXNSZXNwb25zZRI1Cgx1bml0Q29zdERhdGEYASADKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0Q29zdERhdGEitgEKFUNyZWF0ZVVuaXRUeXBlUmVxdWVzdBIQCgh1bml0TmFtZRgBIAEoCRIuCgl1bml0SXRlbXMYAiADKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0SXRlbRJGCg9zaGFyZWRSZXNvdXJjZXMYAyADKAsyLS5ibHVlYXBpLmFwaS5jb3Zlci5TaGFyZWRSZXNvdXJjZXNDb21iaW5hdGlvbhITCgtkZXNjcmlwdGlvbhgEIAEoCSJPChZDcmVhdGVVbml0VHlwZVJlc3BvbnNlEjUKDHVuaXRDb3N0RGF0YRgBIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRDb3N0RGF0YSIgChJHZXRVbml0VHlwZVJlcXVlc3QSCgoCaWQYASABKAkiTAoTR2V0VW5pdFR5cGVSZXNwb25zZRI1Cgx1bml0Q29zdERhdGEYASABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0Q29zdERhdGEiwgEKFVVwZGF0ZVVuaXRUeXBlUmVxdWVzdBIKCgJpZBgBIAEoCRIQCgh1bml0TmFtZRgCIAEoCRIuCgl1bml0SXRlbXMYAyADKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0SXRlbRJGCg9zaGFyZWRSZXNvdXJjZXMYBCADKAsyLS5ibHVlYXBpLmFwaS5jb3Zlci5TaGFyZWRSZXNvdXJjZXNDb21iaW5hdGlvbhITCgtkZXNjcmlwdGlvbhgFIAEoCSJPChZVcGRhdGVVbml0VHlwZVJlc3BvbnNlEjUKDHVuaXRDb3N0RGF0YRgBIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRDb3N0RGF0YSIjChVEZWxldGVVbml0VHlwZVJlcXVlc3QSCgoCaWQYASABKAkiJAoWRGVsZXRlVW5pdFR5cGVSZXNwb25zZRIKCgJpZBgBIAEoCSJPChFNZXJnZVVuaXRzUmVxdWVzdBITCgt1bml0Q29zdElkcxgBIAMoCRIQCgh1bml0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCSJNChJNZXJnZVVuaXRzUmVzcG9uc2USNwoObWVyZ2VkVW5pdENvc3QYASABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0Q29zdERhdGEiGwoZTGlzdFN1Z2dlc3RlZFVuaXRzUmVxdWVzdCJWChpMaXN0U3VnZ2VzdGVkVW5pdHNSZXNwb25zZRI4Cg5zdWdnZXN0ZWRVbml0cxgBIAMoCzIgLmJsdWVhcGkuYXBpLmNvdmVyLlN1Z2dlc3RlZFVuaXQicgoaTWVyZ2VTdWdnZXN0ZWRVbml0c1JlcXVlc3QSGAoQc3VnZ2VzdGVkVW5pdElkcxgBIAMoCRITCgt1bml0SXRlbUlkcxgCIAMoCRIQCgh1bml0TmFtZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCSJdChtNZXJnZVN1Z2dlc3RlZFVuaXRzUmVzcG9uc2USPgoUbWVyZ2VkU3VnZ2VzdGVkVW5pdHMYASABKAsyIC5ibHVlYXBpLmFwaS5jb3Zlci5TdWdnZXN0ZWRVbml0IjoKHkNyZWF0ZVVuaXRGcm9tU3VnZ2VzdGVkUmVxdWVzdBIYChBzdWdnZXN0ZWRVbml0SWRzGAEgAygJIjYKH0NyZWF0ZVVuaXRGcm9tU3VnZ2VzdGVkUmVzcG9uc2USEwoLdW5pdENvc3RJZHMYASADKAkiHAoaTGlzdFNoYXJlZFJlc291cmNlc1JlcXVlc3QiZQobTGlzdFNoYXJlZFJlc291cmNlc1Jlc3BvbnNlEkYKD3NoYXJlZFJlc291cmNlcxgBIAMoCzItLmJsdWVhcGkuYXBpLmNvdmVyLlNoYXJlZFJlc291cmNlc0NvbWJpbmF0aW9uItMCChxDcmVhdGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0EhoKEnNoYXJlZFJlc291cmNlTmFtZRgBIAEoCRJNChtzaGFyZWRSZXNvdXJjZXNDb21iaW5hdGlvbnMYAiABKAsyKC5ibHVlYXBpLmFwaS5jb3Zlci5SZXNvdXJjZXNDb21iaW5hdGlvbnMSVgoMZGlzdHJpYnV0aW9uGAMgAygLMkAuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0LkRpc3RyaWJ1dGlvbkVudHJ5EhEKCWFsbG9jYXRlZBgEIAEoARITCgt1bmFsbG9jYXRlZBgFIAEoARITCgtkZXNjcmlwdGlvbhgGIAEoCRozChFEaXN0cmlidXRpb25FbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBImcKHUNyZWF0ZVNoYXJlZFJlc291cmNlc1Jlc3BvbnNlEkYKD3NoYXJlZFJlc291cmNlcxgBIAEoCzItLmJsdWVhcGkuYXBpLmNvdmVyLlNoYXJlZFJlc291cmNlc0NvbWJpbmF0aW9uIicKGUdldFNoYXJlZFJlc291cmNlc1JlcXVlc3QSCgoCaWQYASABKAkiZAoaR2V0U2hhcmVkUmVzb3VyY2VzUmVzcG9uc2USRgoPc2hhcmVkUmVzb3VyY2VzGAEgASgLMi0uYmx1ZWFwaS5hcGkuY292ZXIuU2hhcmVkUmVzb3VyY2VzQ29tYmluYXRpb24i3wIKHFVwZGF0ZVNoYXJlZFJlc291cmNlc1JlcXVlc3QSCgoCaWQYASABKAkSGgoSc2hhcmVkUmVzb3VyY2VOYW1lGAIgASgJEk0KG3NoYXJlZFJlc291cmNlc0NvbWJpbmF0aW9ucxgDIAEoCzIoLmJsdWVhcGkuYXBpLmNvdmVyLlJlc291cmNlc0NvbWJpbmF0aW9ucxJWCgxkaXN0cmlidXRpb24YBCADKAsyQC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVNoYXJlZFJlc291cmNlc1JlcXVlc3QuRGlzdHJpYnV0aW9uRW50cnkSEQoJYWxsb2NhdGVkGAUgASgBEhMKC3VuYWxsb2NhdGVkGAYgASgBEhMKC2Rlc2NyaXB0aW9uGAcgASgJGjMKEURpc3RyaWJ1dGlvbkVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoAToCOAEiZwodVXBkYXRlU2hhcmVkUmVzb3VyY2VzUmVzcG9uc2USRgoPc2hhcmVkUmVzb3VyY2VzGAEgASgLMi0uYmx1ZWFwaS5hcGkuY292ZXIuU2hhcmVkUmVzb3VyY2VzQ29tYmluYXRpb24iKgocRGVsZXRlU2hhcmVkUmVzb3VyY2VzUmVxdWVzdBIKCgJpZBgBIAEoCSIrCh1EZWxldGVTaGFyZWRSZXNvdXJjZXNSZXNwb25zZRIKCgJpZBgBIAEoCSJXChZMaXN0VW5pdE1ldHJpY3NSZXF1ZXN0EhkKEWFnZ3JlZ2F0aW9uTWV0aG9kGAEgASgJEhIKCmRhdGFTb3VyY2UYAiABKAkSDgoGc3RhdHVzGAMgASgJIk0KF0xpc3RVbml0TWV0cmljc1Jlc3BvbnNlEjIKC3VuaXRNZXRyaWNzGAEgAygLMh0uYmx1ZWFwaS5hcGkuY292ZXIuVW5pdE1ldHJpYyK5AQoXQ3JlYXRlVW5pdE1ldHJpY1JlcXVlc3QSEgoKbWV0cmljTmFtZRgBIAEoCRIZChFhZ2dyZWdhdGlvbk1ldGhvZBgCIAEoCRISCgpkYXRhU291cmNlGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhMKC2Nvc3Rncm91cElkGAUgAygJEjEKCnNvdXJjZUluZm8YBiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5Tb3VyY2VJbmZvIk0KGENyZWF0ZVVuaXRNZXRyaWNSZXNwb25zZRIxCgp1bml0TWV0cmljGAEgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuVW5pdE1ldHJpYyIiChRHZXRVbml0TWV0cmljUmVxdWVzdBIKCgJpZBgBIAEoCSJKChVHZXRVbml0TWV0cmljUmVzcG9uc2USMQoKdW5pdE1ldHJpYxgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRNZXRyaWMixQEKF1VwZGF0ZVVuaXRNZXRyaWNSZXF1ZXN0EgoKAmlkGAEgASgJEhIKCm1ldHJpY05hbWUYAiABKAkSGQoRYWdncmVnYXRpb25NZXRob2QYAyABKAkSEgoKZGF0YVNvdXJjZRgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRITCgtjb3N0Z3JvdXBJZBgGIAMoCRIxCgpzb3VyY2VJbmZvGAcgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuU291cmNlSW5mbyJNChhVcGRhdGVVbml0TWV0cmljUmVzcG9uc2USMQoKdW5pdE1ldHJpYxgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRNZXRyaWMiJQoXRGVsZXRlVW5pdE1ldHJpY1JlcXVlc3QSCgoCaWQYASABKAkiJgoYRGVsZXRlVW5pdE1ldHJpY1Jlc3BvbnNlEgoKAmlkGAEgASgJImYKGVByZXZpZXdHb29nbGVTaGVldFJlcXVlc3QSFQoNZ29vZ2xlU2hlZXRJZBgBIAEoCRIQCghzaGVldFVybBgCIAEoCRIRCglzaGVldE5hbWUYAyABKAkSDQoFcmFuZ2UYBCABKAkiWQoaUHJldmlld0dvb2dsZVNoZWV0UmVzcG9uc2USDgoGaGVhZGVyGAEgAygJEisKB3Jvd0RhdGEYAiADKAsyGi5ibHVlYXBpLmFwaS5jb3Zlci5Sb3dEYXRhIjMKH0NvbmZpcm1Hb29nbGVTaGVldEFjY2Vzc1JlcXVlc3QSEAoIc2hlZXRVcmwYASABKAkiTQogQ29uZmlybUdvb2dsZVNoZWV0QWNjZXNzUmVzcG9uc2USFQoNZ29vZ2xlU2hlZXRJZBgBIAEoCRISCgpzaGVldE5hbWVzGAIgAygJInYKHEdldENsb3Vkd2F0Y2hNZXRhZGF0YVJlcXVlc3QSEQoJYWNjb3VudElkGAEgASgJEg4KBnJlZ2lvbhgCIAEoCRIMCgR0eXBlGAMgASgJEhEKCW5hbWVzcGFjZRgEIAEoCRISCgptZXRyaWNOYW1lGAUgASgJIr4BCh1HZXRDbG91ZHdhdGNoTWV0YWRhdGFSZXNwb25zZRISCgpuYW1lc3BhY2VzGAEgAygJEg8KB21ldHJpY3MYAiADKAkSTQoKZGltZW5zaW9ucxgDIAMoCzI5LmJsdWVhcGkuY292ZXIudjEuR2V0Q2xvdWR3YXRjaE1ldGFkYXRhUmVzcG9uc2UuRGltZW5zaW9uGikKCURpbWVuc2lvbhIMCgRuYW1lGAEgASgJEg4KBnZhbHVlcxgCIAMoCSKBAgoWR2V0RGlzY291bnRQbGFuUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDQoFb3JnSWQYAiABKAkSGAoQcmVkdWN0aW9uRGlzcGxheRgDIAEoCRIWCg5pbmNsdWRlRGV0YWlscxgEIAEoCBIQCghmcm9tRGF0ZRgFIAEoCRIOCgZ0b0RhdGUYBiABKAkSDwoHcGF5ZXJJZBgHIAEoCRIZChFiaWxsaW5nSW50ZXJuYWxJZBgIIAEoCRIPCgdncm91cElkGAkgASgJEhMKC2Nvc3RHcm91cElkGAogASgJEhAKCGFjY291bnRzGAsgAygJEhAKCHNlcnZpY2VzGAwgAygJImcKF0dldERpc2NvdW50UGxhblJlc3BvbnNlEg0KBW9yZ0lkGAEgASgJEj0KEGF3c0Rpc2NvdW50UGxhbnMYAiABKAsyIy5ibHVlYXBpLmFwaS5jb3Zlci5Bd3NEaXNjb3VudFBsYW5zInMKHExpc3ROb25wZXJmb3JtaW5nUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEhAKCGZyb21EYXRlGAMgASgJEg4KBnRvRGF0ZRgEIAEoCRIMCgR0eXBlGAUgASgJIskBCh1MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXNwb25zZRJUCg1ub25wZXJmb3JtaW5nGAEgAygLMj0uYmx1ZWFwaS5jb3Zlci52MS5MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXNwb25zZS5Ob25wZXJmb3JtaW5nGlIKDU5vbnBlcmZvcm1pbmcSDAoEdHlwZRgBIAEoCRIPCgdhY2NvdW50GAIgASgJEhMKC3V0aWxpemF0aW9uGAMgASgBEg0KBXdhc3RlGAQgASgBInQKHExpc3RVbnRhZ2dlZFJlc291cmNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEhAKCGZyb21EYXRlGAMgASgJEg4KBnRvRGF0ZRgEIAEoCRINCgVsaW1pdBgFIAEoAyL5AQodTGlzdFVudGFnZ2VkUmVzb3VyY2VzUmVzcG9uc2USXAoRdW50YWdnZWRSZXNvdXJjZXMYASADKAsyQS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbnRhZ2dlZFJlc291cmNlc1Jlc3BvbnNlLlVudGFnZ2VkUmVzb3VyY2VzGnoKEVVudGFnZ2VkUmVzb3VyY2VzEhAKCHJlc291cmNlGAEgASgJEg8KB3NlcnZpY2UYAiABKAkSEQoJYWNjb3VudElkGAMgASgJEhEKCWNvc3RHcm91cBgEIAEoCRIMCgRjb3N0GAUgASgBEg4KBnZlbmRvchgGIAEoCSo/CgZTdGF0dXMSCwoHUEVORElORxAAEg8KC0lOX1BST0dSRVNTEAESCwoHU1VDQ0VTUxACEgoKBkZBSUxFRBADMv7dAQoFQ292ZXISdwoKT25ib2FyZE9yZxIjLmJsdWVhcGkuY292ZXIudjEuT25ib2FyZE9yZ1JlcXVlc3QaJC5ibHVlYXBpLmNvdmVyLnYxLk9uYm9hcmRPcmdSZXNwb25zZSIegtPkkwIYOgEqIhMvdjEvbWVtYmVycy9vbmJvYXJkEnwKDEludml0ZU1lbWJlchIlLmJsdWVhcGkuY292ZXIudjEuSW52aXRlTWVtYmVyUmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuSW52aXRlTWVtYmVyUmVzcG9uc2UiHYLT5JMCFzoBKiISL3YxL21lbWJlcnMvaW52aXRlEn4KDEFjdGl2YXRlVXNlchIlLmJsdWVhcGkuY292ZXIudjEuQWN0aXZhdGVVc2VyUmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuQWN0aXZhdGVVc2VyUmVzcG9uc2UiH4LT5JMCGToBKiIUL3YxL21lbWJlcnMvYWN0aXZhdGUSdQoMQ3JlYXRlTWVtYmVyEiUuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVNZW1iZXJSZXF1ZXN0GiYuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVNZW1iZXJSZXNwb25zZSIWgtPkkwIQOgEqIgsvdjEvbWVtYmVycxJsCgpHZXRNZW1iZXJzEiMuYmx1ZWFwaS5jb3Zlci52MS5HZXRNZW1iZXJzUmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuR2V0TWVtYmVyc1Jlc3BvbnNlIhOC0+STAg0SCy92MS9tZW1iZXJzEocBChBHZXRNZW1iZXJEZXRhaWxzEikuYmx1ZWFwaS5jb3Zlci52MS5HZXRNZW1iZXJEZXRhaWxzUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuR2V0TWVtYmVyRGV0YWlsc1Jlc3BvbnNlIhyC0+STAhYSFC92MS9tZW1iZXJzL3t1c2VySWR9EpcBChJHZXRNZW1iZXJDb3N0R3JvdXASKy5ibHVlYXBpLmNvdmVyLnYxLkdldE1lbWJlckNvc3RHcm91cFJlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLkdldE1lbWJlckNvc3RHcm91cFJlc3BvbnNlIiaC0+STAiASHi92MS9tZW1iZXJzL3t1c2VySWR9L2Nvc3Rncm91cBKkAQoWVXBkYXRlTWVtYmVyUGVybWlzc2lvbhIvLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlTWVtYmVyUGVybWlzc2lvblJlcXVlc3QaMC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZU1lbWJlclBlcm1pc3Npb25SZXNwb25zZSIngtPkkwIhOgEqGhwvdjEvbWVtYmVycy97dXNlcklkfS9pc2FkbWluEnMKDkdldFVzZXJEZXRhaWxzEicuYmx1ZWFwaS5jb3Zlci52MS5HZXRVc2VyRGV0YWlsc1JlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLkdldFVzZXJEZXRhaWxzUmVzcG9uc2UiDoLT5JMCCBIGL3YxL21lEoMBChBVcGRhdGVVc2VyQXZhdGFyEikuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXZhdGFyUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckF2YXRhclJlc3BvbnNlIhiC0+STAhI6ASoaDS92MS9tZS9hdmF0YXISewoOVXBkYXRlVXNlckljb24SJy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJJY29uUmVxdWVzdBooLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckljb25SZXNwb25zZSIWgtPkkwIQOgEqGgsvdjEvbWUvaWNvbhKTAQoUVXBkYXRlVXNlckNvbG9yVGhlbWUSLS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJDb2xvclRoZW1lUmVxdWVzdBouLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckNvbG9yVGhlbWVSZXNwb25zZSIcgtPkkwIWOgEqGhEvdjEvbWUvY29sb3J0aGVtZRJ7Cg5VcGRhdGVVc2VyTmFtZRInLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlck5hbWVSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyTmFtZVJlc3BvbnNlIhaC0+STAhA6ASoaCy92MS9tZS9uYW1lEn8KD1VwZGF0ZVVzZXJFbWFpbBIoLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckVtYWlsUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckVtYWlsUmVzcG9uc2UiF4LT5JMCEToBKhoML3YxL21lL2VtYWlsEosBChJVcGRhdGVVc2VyTWFpblZpZXcSKy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJNYWluVmlld1JlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJNYWluVmlld1Jlc3BvbnNlIhqC0+STAhQ6ASoaDy92MS9tZS9tYWludmlldxKIAQoRUmVzZXRVc2VyUGFzc3dvcmQSKi5ibHVlYXBpLmNvdmVyLnYxLlJlc2V0VXNlclBhc3N3b3JkUmVxdWVzdBorLmJsdWVhcGkuY292ZXIudjEuUmVzZXRVc2VyUGFzc3dvcmRSZXNwb25zZSIagtPkkwIUOgEqIg8vdjEvbWUvcGFzc3dvcmQSgwEKEFVwZGF0ZVVzZXJMb2NhbGUSKS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJMb2NhbGVSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyTG9jYWxlUmVzcG9uc2UiGILT5JMCEjoBKhoNL3YxL21lL2xvY2FsZRKLAQoSVXBkYXRlVXNlckFwcFRoZW1lEisuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXBwVGhlbWVSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXBwVGhlbWVSZXNwb25zZSIagtPkkwIUOgEqGg8vdjEvbWUvYXBwdGhlbWUSiwEKElVwZGF0ZVVzZXJUaW1lem9uZRIrLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlclRpbWV6b25lUmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlclRpbWV6b25lUmVzcG9uc2UiGoLT5JMCFDoBKhoPL3YxL21lL3RpbWV6b25lEpMBChRVcGRhdGVVc2VyQXR0cmlidXRlcxItLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckF0dHJpYnV0ZXNSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXR0cmlidXRlc1Jlc3BvbnNlIhyC0+STAhY6ASoaES92MS9tZS9hdHRyaWJ1dGVzEnsKDERlbGV0ZU1lbWJlchIlLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlTWVtYmVyUmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlTWVtYmVyUmVzcG9uc2UiHILT5JMCFioUL3YxL21lbWJlcnMve3VzZXJJZH0ShgEKDVJlc2V0UGFzc3dvcmQSJi5ibHVlYXBpLmNvdmVyLnYxLlJlc2V0UGFzc3dvcmRSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5SZXNldFBhc3N3b3JkUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL21lbWJlcnMvcmVzZXRwYXNzd29yZBJtCgpDcmVhdGVWaWV3EiMuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVWaWV3UmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlVmlld1Jlc3BvbnNlIhSC0+STAg46ASoiCS92MS92aWV3cxJkCghHZXRWaWV3cxIhLmJsdWVhcGkuY292ZXIudjEuR2V0Vmlld3NSZXF1ZXN0GiIuYmx1ZWFwaS5jb3Zlci52MS5HZXRWaWV3c1Jlc3BvbnNlIhGC0+STAgsSCS92MS92aWV3cxJ/Cg5HZXRDdXJyZW50VmlldxInLmJsdWVhcGkuY292ZXIudjEuR2V0Q3VycmVudFZpZXdSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5HZXRDdXJyZW50Vmlld1Jlc3BvbnNlIhqC0+STAhQSEi92MS92aWV3cy97dmlld0lkfRKGAQoQR2V0RmF2b3JpdGVWaWV3cxIpLmJsdWVhcGkuY292ZXIudjEuR2V0RmF2b3JpdGVWaWV3c1JlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLkdldEZhdm9yaXRlVmlld3NSZXNwb25zZSIbgtPkkwIVEhMvdjEvdmlld3MvZmF2b3JpdGVzEngKC1B1Ymxpc2hWaWV3EiQuYmx1ZWFwaS5jb3Zlci52MS5QdWJsaXNoVmlld1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLlB1Ymxpc2hWaWV3UmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL3ZpZXdzL3B1Ymxpc2gSfQoLQWRkRmF2b3JpdGUSJC5ibHVlYXBpLmNvdmVyLnYxLkFkZEZhdm9yaXRlUmVxdWVzdBolLmJsdWVhcGkuY292ZXIudjEuQWRkRmF2b3JpdGVSZXNwb25zZSIhgtPkkwIbOgEqGhYvdjEvdmlld3MvZmF2b3JpdGUvYWRkEokBCg5SZW1vdmVGYXZvcml0ZRInLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlRmF2b3JpdGVSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5SZW1vdmVGYXZvcml0ZVJlc3BvbnNlIiSC0+STAh46ASoaGS92MS92aWV3cy9mYXZvcml0ZS9yZW1vdmUSdgoKVXBkYXRlVmlldxIjLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld1JlcXVlc3QaJC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdSZXNwb25zZSIdgtPkkwIXOgEqGhIvdjEvdmlld3Mve3ZpZXdJZH0SjwEKEFVwZGF0ZVZpZXdMYXlvdXQSKS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdMYXlvdXRSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVWaWV3TGF5b3V0UmVzcG9uc2UiJILT5JMCHjoBKhoZL3YxL3ZpZXdzL2xheW91dC97dmlld0lkfRKaAQoQVXBkYXRlVmlld1dpZGdldBIpLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld1dpZGdldFJlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdXaWRnZXRSZXNwb25zZSIvgtPkkwIpOgEqGiQvdjEvdmlld3MvbGF5b3V0L3t2aWV3SWR9L3t3aWRnZXRJZH0SnwEKFFVwZGF0ZVZpZXdDb2xvclRoZW1lEi0uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVWaWV3Q29sb3JUaGVtZVJlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdDb2xvclRoZW1lUmVzcG9uc2UiKILT5JMCIjoBKhodL3YxL3ZpZXdzL3t2aWV3SWR9L2NvbG9ydGhlbWUSlwEKElVwZGF0ZVZpZXdDdXJyZW5jeRIrLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld0N1cnJlbmN5UmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld0N1cnJlbmN5UmVzcG9uc2UiJoLT5JMCIDoBKhobL3YxL3ZpZXdzL3t2aWV3SWR9L2N1cnJlbmN5EpwBChRTZXRPcmdVcGRhdGVDdXJyZW5jeRItLmJsdWVhcGkuY292ZXIudjEuU2V0T3JnVXBkYXRlQ3VycmVuY3lSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5TZXRPcmdVcGRhdGVDdXJyZW5jeVJlc3BvbnNlIiWC0+STAh86ASoiGi92MS9vcmdhbml6YXRpb25zL2N1cnJlbmN5EpkBChRHZXRPcmdVcGRhdGVDdXJyZW5jeRItLmJsdWVhcGkuY292ZXIudjEuR2V0T3JnVXBkYXRlQ3VycmVuY3lSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5HZXRPcmdVcGRhdGVDdXJyZW5jeVJlc3BvbnNlIiKC0+STAhwSGi92MS9vcmdhbml6YXRpb25zL2N1cnJlbmN5Eo0BChFMaXN0RXhjaGFuZ2VSYXRlcxIqLmJsdWVhcGkuY292ZXIudjEuTGlzdEV4Y2hhbmdlUmF0ZXNSZXF1ZXN0GisuYmx1ZWFwaS5jb3Zlci52MS5MaXN0RXhjaGFuZ2VSYXRlc1Jlc3BvbnNlIh+C0+STAhkSFy92MS9vcmdhbml6YXRpb25zL3JhdGVzEnMKCkRlbGV0ZVZpZXcSIy5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZVZpZXdSZXF1ZXN0GiQuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVWaWV3UmVzcG9uc2UiGoLT5JMCFCoSL3YxL3ZpZXdzL3t2aWV3SWR9Ep8BChNVcGRhdGVTaWRlTWVudVN0YXRlEiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVTaWRlTWVudVN0YXRlUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlU2lkZU1lbnVTdGF0ZVJlc3BvbnNlIiuC0+STAiU6ASoaIC92MS92aWV3cy97dmlld0lkfS9zaWRlbWVudXN0YXRlEqIBChNBZGRTaWRlTWVudUZhdm9yaXRlEiwuYmx1ZWFwaS5jb3Zlci52MS5BZGRTaWRlTWVudUZhdm9yaXRlUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuQWRkU2lkZU1lbnVGYXZvcml0ZVJlc3BvbnNlIi6C0+STAig6ASoiIy92MS92aWV3cy97dmlld0lkfS9zaWRlbWVudWZhdm9yaXRlEq0BChZSZW1vdmVTaWRlTWVudUZhdm9yaXRlEi8uYmx1ZWFwaS5jb3Zlci52MS5SZW1vdmVTaWRlTWVudUZhdm9yaXRlUmVxdWVzdBowLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlU2lkZU1lbnVGYXZvcml0ZVJlc3BvbnNlIjCC0+STAio6ASoiJS92MS92aWV3cy97dmlld0lkfS9zaWRlbWVudXVuZmF2b3JpdGUSgQEKD0NyZWF0ZUNvc3RHcm91cBIoLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQ29zdEdyb3VwUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQ29zdEdyb3VwUmVzcG9uc2UiGYLT5JMCEzoBKiIOL3YxL2Nvc3Rncm91cHMSeAoNR2V0Q29zdEdyb3VwcxImLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3Vwc1JlcXVlc3QaJy5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RHcm91cHNSZXNwb25zZSIWgtPkkwIQEg4vdjEvY29zdGdyb3VwcxJ4Cg1HZXRDYXRlZ29yaWVzEiYuYmx1ZWFwaS5jb3Zlci52MS5HZXRDYXRlZ29yaWVzUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuR2V0Q2F0ZWdvcmllc1Jlc3BvbnNlIhaC0+STAhASDi92MS9jYXRlZ29yaWVzEpgBChNHZXRDb3N0R3JvdXBEZXRhaWxzEiwuYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0R3JvdXBEZXRhaWxzUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3VwRGV0YWlsc1Jlc3BvbnNlIiSC0+STAh4SHC92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0SoAEKE1VwZGF0ZUNvc3RHcm91cE5hbWUSLC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cE5hbWVSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBOYW1lUmVzcG9uc2UiLILT5JMCJjoBKhohL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9uYW1lErwBChpVcGRhdGVDb3N0R3JvdXBEZXNjcmlwdGlvbhIzLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlQ29zdEdyb3VwRGVzY3JpcHRpb25SZXF1ZXN0GjQuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBEZXNjcmlwdGlvblJlc3BvbnNlIjOC0+STAi06ASoaKC92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0vZGVzY3JpcHRpb24SpAEKFFVwZGF0ZUNvc3RHcm91cEltYWdlEi0uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBJbWFnZVJlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cEltYWdlUmVzcG9uc2UiLYLT5JMCJzoBKhoiL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9pbWFnZRKgAQoTVXBkYXRlQ29zdEdyb3VwSWNvbhIsLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlQ29zdEdyb3VwSWNvblJlcXVlc3QaLS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cEljb25SZXNwb25zZSIsgtPkkwImOgEqGiEvdjEvY29zdGdyb3Vwcy97Y29zdEdyb3VwSWR9L2ljb24SuAEKGVVwZGF0ZUNvc3RHcm91cENvbG9yVGhlbWUSMi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENvbG9yVGhlbWVSZXF1ZXN0GjMuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBDb2xvclRoZW1lUmVzcG9uc2UiMoLT5JMCLDoBKhonL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9jb2xvcnRoZW1lEsABChtVcGRhdGVDb3N0R3JvdXBDb21iaW5hdGlvbnMSNC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENvbWJpbmF0aW9uc1JlcXVlc3QaNS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENvbWJpbmF0aW9uc1Jlc3BvbnNlIjSC0+STAi46ASoaKS92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0vY29tYmluYXRpb25zErsBChxSZXNvbHZlQ29zdEdyb3VwQ29tYmluYXRpb25zEjUuYmx1ZWFwaS5jb3Zlci52MS5SZXNvbHZlQ29zdEdyb3VwQ29tYmluYXRpb25zUmVxdWVzdBo2LmJsdWVhcGkuY292ZXIudjEuUmVzb2x2ZUNvc3RHcm91cENvbWJpbmF0aW9uc1Jlc3BvbnNlIiyC0+STAiYSJC92MS9jb3N0Z3JvdXBzL3Jlc29sdmUve2Nvc3RHcm91cElkfRKsAQoVQXNzaWduQ29zdEdyb3VwTWVtYmVyEi4uYmx1ZWFwaS5jb3Zlci52MS5Bc3NpZ25Db3N0R3JvdXBNZW1iZXJSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5Bc3NpZ25Db3N0R3JvdXBNZW1iZXJSZXNwb25zZSIygtPkkwIsOgEqIicvdjEvY29zdGdyb3Vwcy97Y29zdEdyb3VwSWR9L21lbWJlci9hZGQSrwEKFVJlbW92ZUNvc3RHcm91cE1lbWJlchIuLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlQ29zdEdyb3VwTWVtYmVyUmVxdWVzdBovLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlQ29zdEdyb3VwTWVtYmVyUmVzcG9uc2UiNYLT5JMCLzoBKiIqL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9tZW1iZXIvcmVtb3ZlEowBCg9EZWxldGVDb3N0R3JvdXASKC5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUNvc3RHcm91cFJlcXVlc3QaKS5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUNvc3RHcm91cFJlc3BvbnNlIiSC0+STAh4qHC92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0SpgEKG0dldEFjY291bnRBY2Nlc3NUZW1wbGF0ZVVybBI0LmJsdWVhcGkuY292ZXIudjEuR2V0QWNjb3VudEFjY2Vzc1RlbXBsYXRlVXJsUmVxdWVzdBo1LmJsdWVhcGkuY292ZXIudjEuR2V0QWNjb3VudEFjY2Vzc1RlbXBsYXRlVXJsUmVzcG9uc2UiGoLT5JMCFBISL3YxL2F3cy9hY2N0YWNjZXNzEooBChFMaXN0QWNjb3VudEFjY2VzcxIqLmJsdWVhcGkuY292ZXIudjEuTGlzdEFjY291bnRBY2Nlc3NSZXF1ZXN0Gh8uYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50QWNjZXNzIiaC0+STAiA6ASoiGy92MS9hd3MvYWNjdGFjY2Vzcy9hbGw6cmVhZDABEoMBChBHZXRBY2NvdW50QWNjZXNzEikuYmx1ZWFwaS5jb3Zlci52MS5HZXRBY2NvdW50QWNjZXNzUmVxdWVzdBofLmJsdWVhcGkuY292ZXIudjEuQWNjb3VudEFjY2VzcyIjgtPkkwIdEhsvdjEvYXdzL2FjY3RhY2Nlc3Mve3RhcmdldH0SfAoNR2V0RGF0YUFjY2VzcxIvLmJsdWVhcGkuY292ZXIudjEuR2V0QW5kRGVsZXRlRGF0YUFjY2Vzc1JlcXVlc3QaHC5ibHVlYXBpLmNvdmVyLnYxLkRhdGFBY2Nlc3MiHILT5JMCFhIUL3YxL2FjY291bnQve3RhcmdldH0SeQoQRGVsZXRlRGF0YUFjY2VzcxIvLmJsdWVhcGkuY292ZXIudjEuR2V0QW5kRGVsZXRlRGF0YUFjY2Vzc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiHILT5JMCFioUL3YxL2FjY291bnQve3RhcmdldH0SgwEKE0NyZWF0ZUFjY291bnRBY2Nlc3MSLC5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZUFjY291bnRBY2Nlc3NSZXF1ZXN0Gh8uYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50QWNjZXNzIh2C0+STAhc6ASoiEi92MS9hd3MvYWNjdGFjY2VzcxKcAQobQ3JlYXRlQWNjb3VudEFjY2Vzc1N0YWNrc2V0EjQuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBY2NvdW50QWNjZXNzU3RhY2tzZXRSZXF1ZXN0Gh8uYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50QWNjZXNzIiaC0+STAiA6ASoiGy92MS9hd3MvYWNjdGFjY2Vzcy9zdGFja3NldBKKAQoWQ3JlYXRlQWNjb3VudEFjY2Vzc0N1chIsLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWNjb3VudEFjY2Vzc1JlcXVlc3QaHy5ibHVlYXBpLmNvdmVyLnYxLkFjY291bnRBY2Nlc3MiIYLT5JMCGzoBKiIWL3YxL2F3cy9hY2N0YWNjZXNzL2N1chJ7ChNVcGRhdGVBY2NvdW50QWNjZXNzEiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVBY2NvdW50QWNjZXNzUmVxdWVzdBoRLnByb3Rvcy5PcGVyYXRpb24iI4LT5JMCHRobL3YxL2F3cy9hY2N0YWNjZXNzL3t0YXJnZXR9EpMBChNEZWxldGVBY2NvdW50QWNjZXNzEiwuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVBY2NvdW50QWNjZXNzUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQWNjb3VudEFjY2Vzc1Jlc3BvbnNlIh+C0+STAhkqFy92MS9hY2N0YWNjZXNzL3t0YXJnZXR9EnQKD1JlZ2lzdGVyQWNjb3VudBIoLmJsdWVhcGkuY292ZXIudjEuUmVnaXN0ZXJBY2NvdW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIfgtPkkwIZOgEqIhQvdjEve3ZlbmRvcn0vYWNjb3VudBJxChJSZWdpc3RlckRhdGFBY2Nlc3MSKy5ibHVlYXBpLmNvdmVyLnYxLlJlZ2lzdGVyRGF0YUFjY2Vzc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiFoLT5JMCEDoBKiILL3YxL2FjY291bnQScAoRQWRkQmlsbGluZ0FjY291bnQSJy5ibHVlYXBpLmNvdmVyLnYxLkJpbGxpbmdBY2NvdW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIagtPkkwIUOgEqIg8vdjEvYmlsbGluZ2FjY3QSdwoOTGlzdERhdGFBY2Nlc3MSJy5ibHVlYXBpLmNvdmVyLnYxLkxpc3REYXRhQWNjZXNzUmVxdWVzdBocLmJsdWVhcGkuY292ZXIudjEuRGF0YUFjY2VzcyIcgtPkkwIWIhQvdjEvYWNjb3VudC9hbGw6cmVhZDABEqgBChhMaXN0VW5yZWdpc3RlcmVkQWNjb3VudHMSMS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbnJlZ2lzdGVyZWRBY2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbnJlZ2lzdGVyZWRBY2NvdW50c1Jlc3BvbnNlIiWC0+STAh8iHS92MS9hY2NvdW50L3VucmVnaXN0ZXJlZDpyZWFkEnYKEFVwZGF0ZURhdGFBY2Nlc3MSKS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZURhdGFBY2Nlc3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih+C0+STAhk6ASoaFC92MS9hY2NvdW50L3t0YXJnZXR9EmsKCkxpc3RBc3NldHMSIy5ibHVlYXBpLmNvdmVyLnYxLkxpc3RBc3NldHNSZXF1ZXN0GhouYmx1ZWFwaS5jb3Zlci52MS5SZXNvdXJjZSIagtPkkwIUOgEqIg8vdjEvYXNzZXRzOnJlYWQwARKTAQoQR2V0QXNzZXRzU3VtbWFyeRIpLmJsdWVhcGkuY292ZXIudjEuR2V0QXNzZXRzU3VtbWFyeVJlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLkdldEFzc2V0c1N1bW1hcnlSZXNwb25zZSIogtPkkwIiEiAvdjEvYXNzZXRzL3N1bW1hcnkve2Nvc3RHcm91cElkfRJyCgxHZXRDb3N0VXNhZ2USJS5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RVc2FnZVJlcXVlc3QaGi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RJdGVtIh2C0+STAhc6ASoiEi92MS9jb3N0dXNhZ2U6cmVhZDABEsIBChxHZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uEjUuYmx1ZWFwaS5jb3Zlci52MS5HZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uUmVxdWVzdBo2LmJsdWVhcGkuY292ZXIudjEuR2V0UmlnaHRTaXppbmdSZWNvbW1lbmRhdGlvblJlc3BvbnNlIjOC0+STAi0SKy92MS9yaWdodHNpemluZ3JlY29tbWVuZGF0aW9uL3tjb3N0R3JvdXBJZH0SmAEKEk1vZGlmeVJlc291cmNlVHlwZRIrLmJsdWVhcGkuY292ZXIudjEuTW9kaWZ5UmVzb3VyY2VUeXBlUmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuTW9kaWZ5UmVzb3VyY2VUeXBlUmVzcG9uc2UiJ4LT5JMCIToBKiIcL3YxL3t2ZW5kb3J9L3Jlc291cmNlL21vZGlmeRKYAQoRVGVybWluYXRlUmVzb3VyY2USKi5ibHVlYXBpLmNvdmVyLnYxLlRlcm1pbmF0ZVJlc291cmNlUmVxdWVzdBorLmJsdWVhcGkuY292ZXIudjEuVGVybWluYXRlUmVzb3VyY2VSZXNwb25zZSIqgtPkkwIkOgEqIh8vdjEve3ZlbmRvcn0vcmVzb3VyY2UvdGVybWluYXRlEo0BChBVcGxvYWRDaGFyZ2VDb2RlEikuYmx1ZWFwaS5jb3Zlci52MS5VcGxvYWRDaGFyZ2VDb2RlUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuVXBsb2FkQ2hhcmdlQ29kZVJlc3BvbnNlIiCC0+STAho6ASoiFS92MS9jaGFyZ2Vjb2RlL3VwbG9hZCgBEnoKC0Fzc2lnblBheWVyEiQuYmx1ZWFwaS5jb3Zlci52MS5Bc3NpZ25QYXllclJlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkFzc2lnblBheWVyUmVzcG9uc2UiHoLT5JMCGDoBKiITL3YxL3t2ZW5kb3J9L3BheWVycxJxCglHZXRQYXllcnMSIi5ibHVlYXBpLmNvdmVyLnYxLkdldFBheWVyc1JlcXVlc3QaIy5ibHVlYXBpLmNvdmVyLnYxLkdldFBheWVyc1Jlc3BvbnNlIhuC0+STAhUSEy92MS97dmVuZG9yfS9wYXllcnMShwEKC0dldEFjY291bnRzEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRBY2NvdW50c1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldEFjY291bnRzUmVzcG9uc2UiK4LT5JMCJRIjL3YxL3t2ZW5kb3J9L2FjY291bnRzL3tjb3N0R3JvdXBJZH0ShwEKC0dldFNlcnZpY2VzEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRTZXJ2aWNlc1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldFNlcnZpY2VzUmVzcG9uc2UiK4LT5JMCJRIjL3YxL3t2ZW5kb3J9L3NlcnZpY2VzL3tjb3N0R3JvdXBJZH0SgwEKCkdldFJlZ2lvbnMSIy5ibHVlYXBpLmNvdmVyLnYxLkdldFJlZ2lvbnNSZXF1ZXN0GiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWdpb25zUmVzcG9uc2UiKoLT5JMCJBIiL3YxL3t2ZW5kb3J9L3JlZ2lvbnMve2Nvc3RHcm91cElkfRJ3CgdHZXRUYWdzEiAuYmx1ZWFwaS5jb3Zlci52MS5HZXRUYWdzUmVxdWVzdBohLmJsdWVhcGkuY292ZXIudjEuR2V0VGFnc1Jlc3BvbnNlIieC0+STAiESHy92MS97dmVuZG9yfS90YWdzL3tjb3N0R3JvdXBJZH0SdwoITGlzdEZlZXMSIS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RGZWVzUmVxdWVzdBocLmJsdWVhcGkuY292ZXIudjEuRmVlRGV0YWlscyIogtPkkwIiOgEqIh0vdjEvYWxsb2NhdGlvbnMvZmVlcy9hbGw6cmVhZDABEnoKClJlc3RvcmVGZWUSIy5ibHVlYXBpLmNvdmVyLnYxLlJlc3RvcmVGZWVSZXF1ZXN0GhwuYmx1ZWFwaS5jb3Zlci52MS5GZWVEZXRhaWxzIieC0+STAiE6ASoiHC92MS9hbGxvY2F0aW9ucy9mZWVzL3Jlc3RvcmUwARJ+Cg9HZXRDb3N0R3JvdXBGZWUSKC5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RHcm91cEZlZVJlcXVlc3QaGS5ibHVlYXBpLmNvdmVyLnYxLkZlZUl0ZW0iJILT5JMCHjoBKiIZL3YxL2FsbG9jYXRpb25zL2ZlZXM6cmVhZDABEnsKDkxpc3RBbGxvY2F0b3JzEicuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QWxsb2NhdG9yc1JlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RBbGxvY2F0b3JEZXRhaWxzIhaC0+STAhASDi92MS9hbGxvY2F0b3JzMAESfgoPQ3JlYXRlQWxsb2NhdG9yEiguYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbGxvY2F0b3JSZXF1ZXN0GiYuYmx1ZWFwaS5jb3Zlci52MS5Db3N0QWxsb2NhdG9yRGV0YWlscyIZgtPkkwITOgEqIg4vdjEvYWxsb2NhdG9ycxKgAQoXR2V0QWxsb2NhdGlvbkF0dHJpYnV0ZXMSMC5ibHVlYXBpLmNvdmVyLnYxLkdldEFsbG9jYXRpb25BdHRyaWJ1dGVzUmVxdWVzdBoxLmJsdWVhcGkuY292ZXIudjEuR2V0QWxsb2NhdGlvbkF0dHJpYnV0ZXNSZXNwb25zZSIggtPkkwIaEhgvdjEvYWxsb2NhdG9ycy9hdHRyaWJ1dGUSlAEKFEdldEFsbG9jYXRpb25Tb3VyY2VzEi0uYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGxvY2F0aW9uU291cmNlc1JlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLkdldEFsbG9jYXRpb25Tb3VyY2VzUmVzcG9uc2UiHYLT5JMCFxIVL3YxL2FsbG9jYXRvcnMvc291cmNlEoEBCg9VcGRhdGVBbGxvY2F0b3ISJi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RBbGxvY2F0b3JSZXF1ZXN0GiYuYmx1ZWFwaS5jb3Zlci52MS5Db3N0QWxsb2NhdG9yRGV0YWlscyIegtPkkwIYOgEqGhMvdjEvYWxsb2NhdG9ycy97aWR9EnAKD0RlbGV0ZUFsbG9jYXRvchIoLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQWxsb2NhdG9yUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIbgtPkkwIVKhMvdjEvYWxsb2NhdG9ycy97aWR9EpABChVQcm94eUNyZWF0ZUNvbXBsZXRpb24SLi5ibHVlYXBpLmNvdmVyLnYxLlByb3h5Q3JlYXRlQ29tcGxldGlvblJlcXVlc3QaLy5ibHVlYXBpLmNvdmVyLnYxLlByb3h5Q3JlYXRlQ29tcGxldGlvblJlc3BvbnNlIhSC0+STAg46ASoiCS92MS94L3BjYzABEooBChRTaW11bGF0ZUZlZUFsbG9jYXRvchIoLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWxsb2NhdG9yUmVxdWVzdBocLmJsdWVhcGkuY292ZXIudjEuRmVlRGV0YWlscyIogtPkkwIiOgEqIh0vdjEvYWxsb2NhdGlvbnMvZmVlcy9zaW11bGF0ZTABEpgBChBMaXN0QWNjb3VudFVzYWdlEikuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QWNjb3VudFVzYWdlUmVxdWVzdBolLmJsdWVhcGkuY292ZXIudjEuQWNjb3VudFVzYWdlRGV0YWlscyIwgtPkkwIqOgEqIiUvdjEvYWxsb2NhdGlvbnMvYWNjb3VudHVzYWdlL2FsbDpyZWFkMAESnQEKE1Jlc3RvcmVBY2NvdW50VXNhZ2USLC5ibHVlYXBpLmNvdmVyLnYxLlJlc3RvcmVBY2NvdW50VXNhZ2VSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50VXNhZ2VEZXRhaWxzIi+C0+STAik6ASoiJC92MS9hbGxvY2F0aW9ucy9hY2NvdW50dXNhZ2UvcmVzdG9yZTABEpsBChRTaW11bGF0ZUFjY291bnRVc2FnZRIoLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWxsb2NhdG9yUmVxdWVzdBolLmJsdWVhcGkuY292ZXIudjEuQWNjb3VudFVzYWdlRGV0YWlscyIwgtPkkwIqOgEqIiUvdjEvYWxsb2NhdGlvbnMvYWNjb3VudHVzYWdlL3NpbXVsYXRlMAESgQEKC0xpc3RTYXZpbmdzEiEuYmx1ZWFwaS5jb3Zlci52MS5MaXN0RmVlc1JlcXVlc3QaIC5ibHVlYXBpLmNvdmVyLnYxLlNhdmluZ3NEZXRhaWxzIiuC0+STAiU6ASoiIC92MS9hbGxvY2F0aW9ucy9zYXZpbmdzL2FsbDpyZWFkMAESiQEKDlJlc3RvcmVTYXZpbmdzEicuYmx1ZWFwaS5jb3Zlci52MS5SZXN0b3JlU2F2aW5nc1JlcXVlc3QaIC5ibHVlYXBpLmNvdmVyLnYxLlNhdmluZ3NEZXRhaWxzIiqC0+STAiQ6ASoiHy92MS9hbGxvY2F0aW9ucy9zYXZpbmdzL3Jlc3RvcmUwARKMAQoPU2ltdWxhdGVTYXZpbmdzEiguYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbGxvY2F0b3JSZXF1ZXN0GiAuYmx1ZWFwaS5jb3Zlci52MS5TYXZpbmdzRGV0YWlscyIrgtPkkwIlOgEqIiAvdjEvYWxsb2NhdGlvbnMvc2F2aW5ncy9zaW11bGF0ZTABEo4BChZHZXRDb3N0R3JvdXBBbGxvY2F0aW9uEi8uYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0R3JvdXBBbGxvY2F0aW9uUmVxdWVzdBogLmJsdWVhcGkuY292ZXIudjEuQWxsb2NhdGlvbkl0ZW0iH4LT5JMCGToBKiIUL3YxL2FsbG9jYXRpb25zOnJlYWQwARKHAQoQUHJvY2Vzc0F1dGgwVXNlchIpLmJsdWVhcGkuY292ZXIudjEuUHJvY2Vzc0F1dGgwVXNlclJlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLlByb2Nlc3NBdXRoMFVzZXJSZXNwb25zZSIcgtPkkwIWOgEqIhEvdjEvbWVtYmVycy9hdXRoMBKbAQobQWRkUGFydG5lckNlbnRlckNyZWRlbnRpYWxzEjQuYmx1ZWFwaS5jb3Zlci52MS5BZGRQYXJ0bmVyQ2VudGVyQ3JlZGVudGlhbHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii6C0+STAig6ASoiIy92MS9henVyZS9jcmVkZW50aWFscy9wYXJ0bmVyY2VudGVyEnUKDUFkZE1wblNldHRpbmcSJi5ibHVlYXBpLmNvdmVyLnYxLkFkZE1wblNldHRpbmdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiSC0+STAh46ASoiGS92MS9henVyZS9jcmVkZW50aWFscy9tcG4SkwEKFUdldENvc3RHcm91cEF0dHJpYnV0ZRIuLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3VwQXR0cmlidXRlUmVxdWVzdBovLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3VwQXR0cmlidXRlUmVzcG9uc2UiGYLT5JMCEzoBKiIOL3YxL2F0dHJpYnV0ZXMSbwoJR2V0QWxlcnRzEiIuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydHNSZXF1ZXN0GiMuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydHNSZXNwb25zZSIXgtPkkwIREg8vdjEvYWxlcnRzL2Nvc3QwARJ2CgtDcmVhdGVBbGVydBIkLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWxlcnRSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbGVydFJlc3BvbnNlIhqC0+STAhQ6ASoiDy92MS9hbGVydHMvY29zdBKEAQoPR2V0QWxlcnREZXRhaWxzEiguYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydERldGFpbHNSZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydERldGFpbHNSZXNwb25zZSIcgtPkkwIWEhQvdjEvYWxlcnRzL2Nvc3Qve2lkfRJ4CgtEZWxldGVBbGVydBIkLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQWxlcnRSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVBbGVydFJlc3BvbnNlIhyC0+STAhYqFC92MS9hbGVydHMvY29zdC97aWR9EpABChJVcGRhdGVBbGVydERldGFpbHMSKy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUFsZXJ0RGV0YWlsc1JlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUFsZXJ0RGV0YWlsc1Jlc3BvbnNlIh+C0+STAhk6ASoaFC92MS9hbGVydHMvY29zdC97aWR9EnoKC0dldENoYW5uZWxzEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRDaGFubmVsc1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldENoYW5uZWxzUmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL2NoYW5uZWxzOnJlYWQwARJ5Cg1DcmVhdGVDaGFubmVsEiYuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVDaGFubmVsUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQ2hhbm5lbFJlc3BvbnNlIheC0+STAhE6ASoiDC92MS9jaGFubmVscxKHAQoRR2V0Q2hhbm5lbERldGFpbHMSKi5ibHVlYXBpLmNvdmVyLnYxLkdldENoYW5uZWxEZXRhaWxzUmVxdWVzdBorLmJsdWVhcGkuY292ZXIudjEuR2V0Q2hhbm5lbERldGFpbHNSZXNwb25zZSIZgtPkkwITEhEvdjEvY2hhbm5lbHMve2lkfRJ7Cg1EZWxldGVDaGFubmVsEiYuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVDaGFubmVsUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQ2hhbm5lbFJlc3BvbnNlIhmC0+STAhMqES92MS9jaGFubmVscy97aWR9EpMBChRVcGRhdGVDaGFubmVsRGV0YWlscxItLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlQ2hhbm5lbERldGFpbHNSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDaGFubmVsRGV0YWlsc1Jlc3BvbnNlIhyC0+STAhY6ASoaES92MS9jaGFubmVscy97aWR9EqABChpHZXREaXNjb3VudFJlY29tbWVuZGF0aW9ucxIzLmJsdWVhcGkuY292ZXIudjEuR2V0RGlzY291bnRSZWNvbW1lbmRhdGlvbnNSZXF1ZXN0GjQuYmx1ZWFwaS5jb3Zlci52MS5HZXREaXNjb3VudFJlY29tbWVuZGF0aW9uc1Jlc3BvbnNlIheC0+STAhE6ASoiDC92MS9kaXNjb3VudBKAAQoVR2V0QW5vbWFseWluQ29zdEdyb3VwEi4uYmx1ZWFwaS5jb3Zlci52MS5HZXRBbm9tYWx5aW5Db3N0R3JvdXBSZXF1ZXN0Gh0uYmx1ZWFwaS5jb3Zlci52MS5Bbm9tYWx5RGF0YSIWgtPkkwIQOgEqIgsvdjEvYW5vbWFseTABEpYBCh1DcmVhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydBI2LmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiWC0+STAh86ASoiGi92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50EpsBCh1VcGRhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydBI2LmJsdWVhcGkuY292ZXIudjEuVXBkYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiqC0+STAiQ6ASoaHy92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50L3tpZH0SrAEKGkdldERpc2NvdW50RXhwaXJhdGlvbkFsZXJ0EjouYmx1ZWFwaS5jb3Zlci52MS5NYW5pcHVsYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5EaXNjb3VudEV4cGlyeUFsZXJ0RGF0YSIngtPkkwIhEh8vdjEvYWxlcnRzL2V4cGlyZS9kaXNjb3VudC97aWR9Eq0BChtMaXN0RGlzY291bnRFeHBpcmF0aW9uQWxlcnQSNC5ibHVlYXBpLmNvdmVyLnYxLkxpc3REaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QaKS5ibHVlYXBpLmNvdmVyLnYxLkRpc2NvdW50RXhwaXJ5QWxlcnREYXRhIiuC0+STAiUiIy92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50L2FsbDpyZWFkMAESnAEKHURlbGV0ZURpc2NvdW50RXhwaXJhdGlvbkFsZXJ0EjouYmx1ZWFwaS5jb3Zlci52MS5NYW5pcHVsYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IieC0+STAiEqHy92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50L3tpZH0SeAoSQ3JlYXRlQW5vbWFseUFsZXJ0EisuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbm9tYWx5QWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih2C0+STAhc6ASoiEi92MS9hbGVydHMvYW5vbWFseRJ+ChJEZWxldGVBbm9tYWx5QWxlcnQSLy5ibHVlYXBpLmNvdmVyLnYxLk1hbmlwdWxhdGVBbm9tYWx5QWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih+C0+STAhkqFy92MS9hbGVydHMvYW5vbWFseS97aWR9EogBChBMaXN0QW5vbWFseUFsZXJ0EikuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QW5vbWFseUFsZXJ0UmVxdWVzdBoiLmJsdWVhcGkuY292ZXIudjEuQW5vbWFseUFsZXJ0RGF0YSIjgtPkkwIdIhsvdjEvYWxlcnRzL2Fub21hbHkvYWxsOnJlYWQwARKHAQoPR2V0QW5vbWFseUFsZXJ0Ei8uYmx1ZWFwaS5jb3Zlci52MS5NYW5pcHVsYXRlQW5vbWFseUFsZXJ0UmVxdWVzdBoiLmJsdWVhcGkuY292ZXIudjEuQW5vbWFseUFsZXJ0RGF0YSIfgtPkkwIZEhcvdjEvYWxlcnRzL2Fub21hbHkve2lkfRJ9ChJVcGRhdGVBbm9tYWx5QWxlcnQSKy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUFub21hbHlBbGVydFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIoLT5JMCHDoBKhoXL3YxL2FsZXJ0cy9hbm9tYWx5L3tpZH0ShwEKD1JlZ2lzdGVyTmV3VXNlchIoLmJsdWVhcGkuY292ZXIudjEuUmVnaXN0ZXJOZXdVc2VyUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuUmVnaXN0ZXJOZXdVc2VyUmVzcG9uc2UiH4LT5JMCGToBKiIUL3YxL21lbWJlcnMvcmVnaXN0ZXISiAEKDkdldFVzZXJQcm9maWxlEicuYmx1ZWFwaS5jb3Zlci52MS5HZXRVc2VyUHJvZmlsZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLkdldFVzZXJQcm9maWxlUmVzcG9uc2UiI4LT5JMCHRIbL3YxL21lbWJlcnMvcHJvZmlsZS97ZW1haWx9EpQBChFVcGRhdGVVc2VyUHJvZmlsZRIqLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlclByb2ZpbGVSZXF1ZXN0GisuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyUHJvZmlsZVJlc3BvbnNlIiaC0+STAiA6ASoaGy92MS9tZW1iZXJzL3Byb2ZpbGUve2VtYWlsfRJ4CgtMaXN0QnVkZ2V0cxIkLmJsdWVhcGkuY292ZXIudjEuTGlzdEJ1ZGdldHNSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QnVkZ2V0c1Jlc3BvbnNlIhqC0+STAhQ6ASoiDy92MS9idWRnZXQ6cmVhZDABEm0KCUdldEJ1ZGdldBIiLmJsdWVhcGkuY292ZXIudjEuR2V0QnVkZ2V0UmVxdWVzdBojLmJsdWVhcGkuY292ZXIudjEuR2V0QnVkZ2V0UmVzcG9uc2UiF4LT5JMCERIPL3YxL2J1ZGdldC97aWR9EnQKDENyZWF0ZUJ1ZGdldBIlLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQnVkZ2V0UmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQnVkZ2V0UmVzcG9uc2UiFYLT5JMCDzoBKiIKL3YxL2J1ZGdldBJ2CgxEZWxldGVCdWRnZXQSJS5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUJ1ZGdldFJlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUJ1ZGdldFJlc3BvbnNlIheC0+STAhEqDy92MS9idWRnZXQve2lkfRJ5CgxVcGRhdGVCdWRnZXQSJS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUJ1ZGdldFJlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUJ1ZGdldFJlc3BvbnNlIhqC0+STAhQ6ASoaDy92MS9idWRnZXQve2lkfRLXAQonUmVzb2x2ZUFXU01hcmtldHBsYWNlVG9rZW5Gb3JPbmJvYXJkaW5nEkAuYmx1ZWFwaS5jb3Zlci52MS5SZXNvbHZlQVdTTWFya2V0cGxhY2VUb2tlbkZvck9uYm9hcmRpbmdSZXF1ZXN0GkEuYmx1ZWFwaS5jb3Zlci52MS5SZXNvbHZlQVdTTWFya2V0cGxhY2VUb2tlbkZvck9uYm9hcmRpbmdSZXNwb25zZSIngtPkkwIhOgEqIhwvdjEvbWVtYmVycy9hd3Mvc3Vic2NyaXB0aW9uEqwBCh1HZXRDdXN0b21lclN1YnNjcmlwdGlvblN0YXR1cxI2LmJsdWVhcGkuY292ZXIudjEuR2V0Q3VzdG9tZXJTdWJzY3JpcHRpb25TdGF0dXNSZXF1ZXN0GjcuYmx1ZWFwaS5jb3Zlci52MS5HZXRDdXN0b21lclN1YnNjcmlwdGlvblN0YXR1c1Jlc3BvbnNlIhqC0+STAhQSEi92MS9iaWxsaW5nL3N0YXR1cxKGAQoPQ3JlYXRlUHJvZmlsaW5nEiguYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVQcm9maWxpbmdSZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVQcm9maWxpbmdSZXNwb25zZSIegtPkkwIYOgEqIhMvdjEvbWVtYmVycy9wcm9maWxlEpYBChRBZGRJbmZvdG9NYXJrZXRwbGFjZRItLmJsdWVhcGkuY292ZXIudjEuQWRkSW5mb3RvTWFya2V0cGxhY2VSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5BZGRJbmZvdG9NYXJrZXRwbGFjZVJlc3BvbnNlIh+C0+STAhk6ASoiFC92MS9tYXJrZXRwbGFjZS9pbmZvEpwBChBHZXRSZXBvcnRTdW1tYXJ5EikuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZXBvcnRTdW1tYXJ5UmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuR2V0UmVwb3J0U3VtbWFyeVJlc3BvbnNlIjGC0+STAisSKS92MS9yZXBvcnRzL2luc2lnaHQvc3VtbWFyeS97Y29zdEdyb3VwSWR9EpwBChNMaXN0UmVjb21tZW5kYXRpb25zEisuYmx1ZWFwaS5jb3Zlci52MS5MaXN0UmVjb21tZW5kYXRpb25SZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5MaXN0UmVjb21tZW5kYXRpb25SZXNwb25zZSIogtPkkwIiEiAvdjEvcmVjb21tZW5kYXRpb25zL29wdGltaXphdGlvbjABEp8BChVMaXN0UmVjb21tZW5kYXRpb25zVjISLS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RSZWNvbW1lbmRhdGlvblYyUmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuTGlzdFJlY29tbWVuZGF0aW9uUmVzcG9uc2UiJ4LT5JMCIToBKiIcL3YxL3JlY29tbWVuZGF0aW9ucy9hbGw6cmVhZDABEpsBChFHZXRSZWNvbW1lbmRhdGlvbhIqLmJsdWVhcGkuY292ZXIudjEuR2V0UmVjb21tZW5kYXRpb25SZXF1ZXN0GisuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblJlc3BvbnNlIi2C0+STAicSJS92MS9yZWNvbW1lbmRhdGlvbnMvb3B0aW1pemF0aW9uL3tpZH0SnAEKE0dldFJlY29tbWVuZGF0aW9uVjISLC5ibHVlYXBpLmNvdmVyLnYxLkdldFJlY29tbWVuZGF0aW9uVjJSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblYyUmVzcG9uc2UiKILT5JMCIhIgL3YxL3JlY29tbWVuZGF0aW9ucy9kZXRhaWxzL3tpZH0SmgEKE0V4ZWN1dGVPcHRpbWl6YXRpb24SLC5ibHVlYXBpLmNvdmVyLnYxLkV4ZWN1dGVPcHRpbWl6YXRpb25SZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5FeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2UiJoLT5JMCIDoBKiIbL3YxL3JlY29tbWVuZGF0aW9ucy9leGVjdXRlEp0BChJHZXRFeGVjdXRpb25TdGF0dXMSKy5ibHVlYXBpLmNvdmVyLnYxLkdldEV4ZWN1dGlvblN0YXR1c1JlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLkdldEV4ZWN1dGlvblN0YXR1c1Jlc3BvbnNlIiqC0+STAiQSIi92MS9yZWNvbW1lbmRhdGlvbnMvZXhlY3V0ZS9zdGF0dXMwARKZAQoOTWFya0FzRXhlY3V0ZWQSJy5ibHVlYXBpLmNvdmVyLnYxLk1hcmtBc0V4ZWN1dGVkUmVxdWVzdBooLmJsdWVhcGkuY292ZXIudjEuTWFya0FzRXhlY3V0ZWRSZXNwb25zZSI0gtPkkwIuOgEqIikvdjEvcmVjb21tZW5kYXRpb25zL29wdGltaXphdGlvbi9leGVjdXRlZBK5AQoaVW5kb0V4ZWN1dGVkUmVjb21tZW5kYXRpb24SMy5ibHVlYXBpLmNvdmVyLnYxLlVuZG9FeGVjdXRlZFJlY29tbWVuZGF0aW9uUmVxdWVzdBo0LmJsdWVhcGkuY292ZXIudjEuVW5kb0V4ZWN1dGVkUmVjb21tZW5kYXRpb25SZXNwb25zZSIwgtPkkwIqOgEqIiUvdjEvcmVjb21tZW5kYXRpb25zL29wdGltaXphdGlvbi91bmRvEqQBChNPcHRpbWl6YXRpb25IaXN0b3J5EiwuYmx1ZWFwaS5jb3Zlci52MS5PcHRpbWl6YXRpb25IaXN0b3J5UmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuT3B0aW1pemF0aW9uSGlzdG9yeVJlc3BvbnNlIjCC0+STAioSKC92MS9yZWNvbW1lbmRhdGlvbnMvb3B0aW1pemF0aW9uL2hpc3RvcnkSvwEKGlNldENvc3RHcm91cEV2ZW50SW5kaWNhdG9yEjMuYmx1ZWFwaS5jb3Zlci52MS5TZXRDb3N0R3JvdXBFdmVudEluZGljYXRvclJlcXVlc3QaNC5ibHVlYXBpLmNvdmVyLnYxLlNldENvc3RHcm91cEV2ZW50SW5kaWNhdG9yUmVzcG9uc2UiNoLT5JMCMDoBKiIrL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9ldmVudEluZGljYXRvchK4AQoaU2V0Q29zdEdyb3VwQW5vbWFseU9wdGlvbnMSMy5ibHVlYXBpLmNvdmVyLnYxLlNldENvc3RHcm91cEFub21hbHlPcHRpb25zUmVxdWVzdBo0LmJsdWVhcGkuY292ZXIudjEuU2V0Q29zdEdyb3VwQW5vbWFseU9wdGlvbnNSZXNwb25zZSIvgtPkkwIpOgEqIiQvdjEvY29zdGdyb3Vwcy97Y29zdEdyb3VwSWR9L2Fub21hbHkSkAEKEVNldE9yZ0Zpc2NhbE1vbnRoEiouYmx1ZWFwaS5jb3Zlci52MS5TZXRPcmdGaXNjYWxNb250aFJlcXVlc3QaKy5ibHVlYXBpLmNvdmVyLnYxLlNldE9yZ0Zpc2NhbE1vbnRoUmVzcG9uc2UiIoLT5JMCHDoBKiIXL3YxL3JlcG9ydHMvZmlzY2FsbW9udGgSjQEKEUdldE9yZ0Zpc2NhbE1vbnRoEiouYmx1ZWFwaS5jb3Zlci52MS5HZXRPcmdGaXNjYWxNb250aFJlcXVlc3QaKy5ibHVlYXBpLmNvdmVyLnYxLkdldE9yZ0Zpc2NhbE1vbnRoUmVzcG9uc2UiH4LT5JMCGRIXL3YxL3JlcG9ydHMvZmlzY2FsbW9udGgSogEKFFRyYW5zZmVyT3JnYW5pemF0aW9uEi0uYmx1ZWFwaS5jb3Zlci52MS5UcmFuc2Zlck9yZ2FuaXphdGlvblJlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLlRyYW5zZmVyT3JnYW5pemF0aW9uUmVzcG9uc2UiK4LT5JMCJRIjL3YxL29yZ2FuaXphdGlvbnMvdHJhbnNmZXIve3RhcmdldH0SqQEKGVVwZGF0ZUNvc3RHcm91cENyZWF0aW9uVUkSMi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENyZWF0aW9uVUlSZXF1ZXN0GjMuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBDcmVhdGlvblVJUmVzcG9uc2UiI4LT5JMCHToBKhoYL3YxL21lL2Nvc3Rncm91cGNyZWF0aW9uEnYKDUxpc3RVbml0VHlwZXMSJi5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbml0VHlwZXNSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5MaXN0VW5pdFR5cGVzUmVzcG9uc2UiFILT5JMCDhIML3YxL3VuaXRjb3N0EnwKDkNyZWF0ZVVuaXRUeXBlEicuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVVbml0VHlwZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVVuaXRUeXBlUmVzcG9uc2UiF4LT5JMCEToBKiIML3YxL3VuaXRjb3N0EnUKC0dldFVuaXRUeXBlEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRVbml0VHlwZVJlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldFVuaXRUeXBlUmVzcG9uc2UiGYLT5JMCExIRL3YxL3VuaXRjb3N0L3tpZH0SgQEKDlVwZGF0ZVVuaXRUeXBlEicuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVbml0VHlwZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVuaXRUeXBlUmVzcG9uc2UiHILT5JMCFjoBKhoRL3YxL3VuaXRjb3N0L3tpZH0SfgoORGVsZXRlVW5pdFR5cGUSJy5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZVVuaXRUeXBlUmVxdWVzdBooLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlVW5pdFR5cGVSZXNwb25zZSIZgtPkkwITKhEvdjEvdW5pdGNvc3Qve2lkfRJ2CgpNZXJnZVVuaXRzEiMuYmx1ZWFwaS5jb3Zlci52MS5NZXJnZVVuaXRzUmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuTWVyZ2VVbml0c1Jlc3BvbnNlIh2C0+STAhc6ASoiEi92MS91bml0Y29zdC9tZXJnZRKRAQoSTGlzdFN1Z2dlc3RlZFVuaXRzEisuYmx1ZWFwaS5jb3Zlci52MS5MaXN0U3VnZ2VzdGVkVW5pdHNSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5MaXN0U3VnZ2VzdGVkVW5pdHNSZXNwb25zZSIggtPkkwIaEhgvdjEvdW5pdGNvc3QvYXV0b3N1Z2dlc3QSnQEKE01lcmdlU3VnZ2VzdGVkVW5pdHMSLC5ibHVlYXBpLmNvdmVyLnYxLk1lcmdlU3VnZ2VzdGVkVW5pdHNSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5NZXJnZVN1Z2dlc3RlZFVuaXRzUmVzcG9uc2UiKYLT5JMCIzoBKiIeL3YxL3VuaXRjb3N0L2F1dG9zdWdnZXN0L21lcmdlEqoBChdDcmVhdGVVbml0RnJvbVN1Z2dlc3RlZBIwLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlVW5pdEZyb21TdWdnZXN0ZWRSZXF1ZXN0GjEuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVVbml0RnJvbVN1Z2dlc3RlZFJlc3BvbnNlIiqC0+STAiQ6ASoiHy92MS91bml0Y29zdC9hdXRvc3VnZ2VzdC9jcmVhdGUSmAEKE0xpc3RTaGFyZWRSZXNvdXJjZXMSLC5ibHVlYXBpLmNvdmVyLnYxLkxpc3RTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5MaXN0U2hhcmVkUmVzb3VyY2VzUmVzcG9uc2UiJILT5JMCHhIcL3YxL3VuaXRjb3N0L3NoYXJlZHJlc291cmNlcxKgAQoUQ3JlYXRlU2hhcmVkUmVzb3VyY2USLi5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVNoYXJlZFJlc291cmNlc1JlcXVlc3QaLy5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVNoYXJlZFJlc291cmNlc1Jlc3BvbnNlIieC0+STAiE6ASoiHC92MS91bml0Y29zdC9zaGFyZWRyZXNvdXJjZXMSmQEKEUdldFNoYXJlZFJlc291cmNlEisuYmx1ZWFwaS5jb3Zlci52MS5HZXRTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5HZXRTaGFyZWRSZXNvdXJjZXNSZXNwb25zZSIpgtPkkwIjEiEvdjEvdW5pdGNvc3Qvc2hhcmVkcmVzb3VyY2VzL3tpZH0SpQEKFFVwZGF0ZVNoYXJlZFJlc291cmNlEi4uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVTaGFyZWRSZXNvdXJjZXNSZXNwb25zZSIsgtPkkwImOgEqGiEvdjEvdW5pdGNvc3Qvc2hhcmVkcmVzb3VyY2VzL3tpZH0SogEKFERlbGV0ZVNoYXJlZFJlc291cmNlEi4uYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVTaGFyZWRSZXNvdXJjZXNSZXNwb25zZSIpgtPkkwIjKiEvdjEvdW5pdGNvc3Qvc2hhcmVkcmVzb3VyY2VzL3tpZH0ShAEKD0xpc3RVbml0TWV0cmljcxIoLmJsdWVhcGkuY292ZXIudjEuTGlzdFVuaXRNZXRyaWNzUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuTGlzdFVuaXRNZXRyaWNzUmVzcG9uc2UiHILT5JMCFhIUL3YxL3VuaXRjb3N0L21ldHJpY3MSigEKEENyZWF0ZVVuaXRNZXRyaWMSKS5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVVuaXRNZXRyaWNSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVVbml0TWV0cmljUmVzcG9uc2UiH4LT5JMCGToBKiIUL3YxL3VuaXRjb3N0L21ldHJpY3MSgwEKDUdldFVuaXRNZXRyaWMSJi5ibHVlYXBpLmNvdmVyLnYxLkdldFVuaXRNZXRyaWNSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5HZXRVbml0TWV0cmljUmVzcG9uc2UiIYLT5JMCGxIZL3YxL3VuaXRjb3N0L21ldHJpY3Mve2lkfRKPAQoQVXBkYXRlVW5pdE1ldHJpYxIpLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVW5pdE1ldHJpY1JlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVuaXRNZXRyaWNSZXNwb25zZSIkgtPkkwIeOgEqGhkvdjEvdW5pdGNvc3QvbWV0cmljcy97aWR9EowBChBEZWxldGVVbml0TWV0cmljEikuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVVbml0TWV0cmljUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlVW5pdE1ldHJpY1Jlc3BvbnNlIiGC0+STAhsqGS92MS91bml0Y29zdC9tZXRyaWNzL3tpZH0StgEKGENvbmZpcm1Hb29nbGVTaGVldEFjY2VzcxIxLmJsdWVhcGkuY292ZXIudjEuQ29uZmlybUdvb2dsZVNoZWV0QWNjZXNzUmVxdWVzdBoyLmJsdWVhcGkuY292ZXIudjEuQ29uZmlybUdvb2dsZVNoZWV0QWNjZXNzUmVzcG9uc2UiM4LT5JMCLToBKiIoL3YxL3VuaXRjb3N0L21ldHJpY3MvZ29vZ2xlc2hlZXQvY29uZmlybRKkAQoSUHJldmlld0dvb2dsZVNoZWV0EisuYmx1ZWFwaS5jb3Zlci52MS5QcmV2aWV3R29vZ2xlU2hlZXRSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5QcmV2aWV3R29vZ2xlU2hlZXRSZXNwb25zZSIzgtPkkwItOgEqIigvdjEvdW5pdGNvc3QvbWV0cmljcy9nb29nbGVzaGVldC9wcmV2aWV3EqoBChVHZXRDbG91ZHdhdGNoTWV0YWRhdGESLi5ibHVlYXBpLmNvdmVyLnYxLkdldENsb3Vkd2F0Y2hNZXRhZGF0YVJlcXVlc3QaLy5ibHVlYXBpLmNvdmVyLnYxLkdldENsb3Vkd2F0Y2hNZXRhZGF0YVJlc3BvbnNlIjCC0+STAioSKC92MS91bml0Y29zdC9tZXRyaWNzL2Nsb3Vkd2F0Y2gvbWV0YWRhdGEShAEKD1ZlcmlmeUFQSUFjY2VzcxIoLmJsdWVhcGkuY292ZXIudjEuVmVyaWZ5QVBJQWNjZXNzUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuVmVyaWZ5QVBJQWNjZXNzUmVzcG9uc2UiHILT5JMCFhIUL3YxL2FwaWFjY2Vzcy92ZXJpZnkSiQEKEUdldEFJQ29zdEFuZFVzYWdlEiouYmx1ZWFwaS5jb3Zlci52MS5HZXRBSUNvc3RBbmRVc2FnZVJlcXVlc3QaKy5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVzcG9uc2UiG4LT5JMCFToBKiIQL3YxL2FpL2Nvc3R1c2FnZRKXAQoVR2V0Q29udGFpbmVyQ29zdFVzYWdlEisuYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZSIjgtPkkwIdOgEqIhgvdjEvY29udGFpbmVycy9jb3N0dXNhZ2UShwEKEFBvcHVsYXRlRGVtb0RhdGESKS5ibHVlYXBpLmNvdmVyLnYxLlBvcHVsYXRlRGVtb0RhdGFSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5Qb3B1bGF0ZURlbW9EYXRhUmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL2RlbW8vcG9wdWxhdGUSewoNUmVzZXREZW1vRGF0YRImLmJsdWVhcGkuY292ZXIudjEuUmVzZXREZW1vRGF0YVJlcXVlc3QaJy5ibHVlYXBpLmNvdmVyLnYxLlJlc2V0RGVtb0RhdGFSZXNwb25zZSIZgtPkkwITOgEqIg4vdjEvZGVtby9yZXNldBKZAQoPR2V0RGlzY291bnRQbGFuEiguYmx1ZWFwaS5jb3Zlci52MS5HZXREaXNjb3VudFBsYW5SZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5HZXREaXNjb3VudFBsYW5SZXNwb25zZSIxgtPkkwIrOgEqIiYvdjEve3ZlbmRvcn0vZGlzY291bnRwbGFuL3tvcmdJZH06cmVhZBJ/Cg5HZXRDb3N0VXNhZ2VWMhInLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlVjJSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0VXNhZ2VWMlJlc3BvbnNlIhiC0+STAhI6ASoiDS92MS9jb3N0dXNhZ2UwARKoAQoVTGlzdE5vbnBlcmZvcm1pbmdSYXRlEi4uYmx1ZWFwaS5jb3Zlci52MS5MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXNwb25zZSIugtPkkwIoOgEqIiMvdjEvcmVwb3J0cy9yYXRlL25vbnBlcmZvcm1pbmc6cmVhZBKoAQoVTGlzdFVudGFnZ2VkUmVzb3VyY2VzEi4uYmx1ZWFwaS5jb3Zlci52MS5MaXN0VW50YWdnZWRSZXNvdXJjZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5MaXN0VW50YWdnZWRSZXNvdXJjZXNSZXNwb25zZSIugtPkkwIoOgEqIiMvdjEvcmVwb3J0cy9yZXNvdXJjZXMvdW50YWdnZWQ6cmVhZBJ/Cg1MaXN0Rm9yZWNhc3RzEiYuYmx1ZWFwaS5jb3Zlci52MS5MaXN0Rm9yZWNhc3RzUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuTGlzdEZvcmVjYXN0c1Jlc3BvbnNlIh2C0+STAhc6ASoiEi92MS9mb3JlY2FzdHM6cmVhZBKJAQoSQ3JlYXRlQ29zdEZvcmVjYXN0EisuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVDb3N0Rm9yZWNhc3RSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVDb3N0Rm9yZWNhc3RSZXNwb25zZSIYgtPkkwISOgEqIg0vdjEvZm9yZWNhc3RzEoIBCg9HZXRDb3N0Rm9yZWNhc3QSKC5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RGb3JlY2FzdFJlcXVlc3QaKS5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RGb3JlY2FzdFJlc3BvbnNlIhqC0+STAhQSEi92MS9mb3JlY2FzdHMve2lkfRKOAQoSVXBkYXRlQ29zdEZvcmVjYXN0EisuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0Rm9yZWNhc3RSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0Rm9yZWNhc3RSZXNwb25zZSIdgtPkkwIXOgEqGhIvdjEvZm9yZWNhc3RzL3tpZH0SiwEKEkRlbGV0ZUNvc3RGb3JlY2FzdBIrLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQ29zdEZvcmVjYXN0UmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQ29zdEZvcmVjYXN0UmVzcG9uc2UiGoLT5JMCFCoSL3YxL2ZvcmVjYXN0cy97aWR9EpsBChRHZXRDb3N0Rm9yZWNhc3RzRGF0YRItLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEZvcmVjYXN0c0RhdGFSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0Rm9yZWNhc3RzRGF0YVJlc3BvbnNlIiKC0+STAhw6ASoiFy92MS9mb3JlY2FzdHMvZGF0YTpyZWFkMAESjwEKE0dldFJlY29tbWVuZGF0aW9uVjMSLC5ibHVlYXBpLmNvdmVyLnYxLkdldFJlY29tbWVuZGF0aW9uVjNSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblYzUmVzcG9uc2UiG4LT5JMCFRITL3YxL3JlY29tbWVuZGF0aW9ucxKcAQoVTGlzdFJlY29tbWVuZGF0aW9uc1YzEi4uYmx1ZWFwaS5jb3Zlci52MS5MaXN0UmVjb21tZW5kYXRpb25zVjNSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5SZWNvbW1lbmRhdGlvblN1bW1hcnkiKILT5JMCIjoBKiIdL3YxL3JlY29tbWVuZGF0aW9ucy9zdW1tYXJpZXMwARKlAQoXRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjMSMC5ibHVlYXBpLmNvdmVyLnYxLkV4ZWN1dGVSZWNvbW1lbmRhdGlvblYzUmVxdWVzdBoxLmJsdWVhcGkuY292ZXIudjEuRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjNSZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvcmVjb21tZW5kYXRpb24vZXhlY3V0ZRqXAZJBkwESQihCRVRBKSBDb3ZlciBBUEkuIEJhc2UgVVJMOiBodHRwczovL2FwaS5hbHBoYXVzLmNsb3VkL20vYmx1ZS9jb3ZlchpNChJTZXJ2aWNlIGRlZmluaXRpb24SN2h0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXVzbGFicy9ibHVlYXBpL3RyZWUvbWFpbi9jb3Zlci9CSwoXY2xvdWQuYWxwaGF1cy5hcGkuY292ZXJCCkNvdmVyUHJvdG9aJGdpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS9jb3ZlcmIGcHJvdG8z", [optimizationrecommendation_pb_1.file_api_cover_optimizationrecommendation, recommendation_pb_1.file_api_cover_recommendation_recommendation, attribute_pb_1.file_api_cover_attribute, user_pb_1.file_api_cover_user, view_pb_1.file_api_cover_view, unitcost_pb_1.file_api_cover_unitcost, costgroup_pb_1.file_api_cover_costgroup, accountaccess_pb_1.file_api_cover_accountaccess, costforecast_pb_1.file_api_cover_costforecast, discountplan_pb_1.file_api_cover_discountplan, discountrecommendation_pb_1.file_api_cover_discountrecommendation, rightsizingrecommendation_pb_1.file_api_cover_rightsizingrecommendation, alert_pb_1.file_api_cover_alert, budget_pb_1.file_api_cover_budget, insightreport_pb_1.file_api_cover_insightreport, operation_pb_1.file_protos_operation, annotations_pb_1.file_google_api_annotations, wkt_1.file_google_protobuf_empty, wkt_1.file_google_protobuf_struct, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations]);
38
+ exports.file_cover_v1_cover = (0, codegenv2_1.fileDesc)("ChRjb3Zlci92MS9jb3Zlci5wcm90bxIQYmx1ZWFwaS5jb3Zlci52MSIhChNSZWludml0ZVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJIhYKFFJlaW52aXRlVXNlclJlc3BvbnNlIhIKEExpc3RVc2Vyc1JlcXVlc3QirQEKEUxpc3RVc2Vyc1Jlc3BvbnNlEj4KBXVzZXJzGAEgAygLMi8uYmx1ZWFwaS5jb3Zlci52MS5MaXN0VXNlcnNSZXNwb25zZS5Vc2VyU3VtbWFyeRpYCgtVc2VyU3VtbWFyeRIKCgJpZBgBIAEoCRINCgVlbWFpbBgCIAEoCRIMCgRuYW1lGAMgASgJEg0KBXJvbGVzGAQgAygJEhEKCWFjdGl2YXRlZBgFIAEoCCJSChVVcGRhdGVVc2VyUm9sZVJlcXVlc3QSDwoHdXNlcl9pZBgBIAEoCRIQCghyb2xlX2lkcxgCIAMoCRIWCg5jb3N0X2dyb3VwX2lkcxgDIAMoCSIYChZVcGRhdGVVc2VyUm9sZVJlc3BvbnNlIh8KEURlbGV0ZVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJIhQKEkRlbGV0ZVVzZXJSZXNwb25zZSJNChJJbnZpdGVVc2Vyc1JlcXVlc3QSDgoGZW1haWxzGAEgAygJEg8KB3JvbGVfaWQYAiABKAkSFgoOY29zdF9ncm91cF9pZHMYAyADKAkiFQoTSW52aXRlVXNlcnNSZXNwb25zZSLtAQoeRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjNSZXF1ZXN0EgsKA2lkcxgBIAMoCRJRCgtleGVjdXRlVHlwZRgCIAEoDjI8LmJsdWVhcGkuY292ZXIudjEuRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjNSZXF1ZXN0LkV4ZWN1dGVUeXBlImsKC0V4ZWN1dGVUeXBlEgsKB0RFRkFVTFQQABIUChBNQVJLX0FTX0VYRUNVVEVEEAESEQoNVU5ET19FWEVDVVRFRBACEhMKD1NVQk1JVF9URU1QTEFURRADEhEKDVJFVFJZX0VYRUNVVEUQBCJKCh9FeGVjdXRlUmVjb21tZW5kYXRpb25WM1Jlc3BvbnNlEicKBnJlc3VsdBgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiwwEKHExpc3RSZWNvbW1lbmRhdGlvbnNWM1JlcXVlc3QSEwoLY29zdGdyb3VwSWQYASABKAkSEAoIc3RhdHVzZXMYAiADKAkSTAoHZmlsdGVycxgDIAMoCzI7LmJsdWVhcGkuY292ZXIudjEuTGlzdFJlY29tbWVuZGF0aW9uc1YzUmVxdWVzdC5GaWx0ZXJzRW50cnkaLgoMRmlsdGVyc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi9QMKFVJlY29tbWVuZGF0aW9uU3VtbWFyeRIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEg4KBnRhcmdldBgDIAEoCRISCgp0YXJnZXROYW1lGBIgASgJEhAKCGNhdGVnb3J5GAQgASgJEgwKBHR5cGUYBSABKAkSDgoGdmVuZG9yGA0gASgJEg4KBnNvdXJjZRgTIAEoCRIMCgRjb2RlGA4gASgJEhQKB3NlcnZpY2UYDyABKAlIAIgBARITCgZyZWdpb24YECABKAlIAYgBARIXCgpyZXNvdXJjZUlkGBEgASgJSAKIAQESHwoXZXN0aW1hdGVkTW9udGhseVNhdmluZ3MYBiABKAESIgoaZXN0aW1hdGVkTW9udGhseUJlZm9yZUNvc3QYByABKAESIQoZZXN0aW1hdGVkTW9udGhseUFmdGVyQ29zdBgIIAEoARIRCgRyaXNrGAkgASgJSAOIAQESEwoGZWZmb3J0GAogASgJSASIAQESDgoGc3RhdHVzGAsgASgJEjIKEWFkZGl0aW9uYWxEZXRhaWxzGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEIKCghfc2VydmljZUIJCgdfcmVnaW9uQg0KC19yZXNvdXJjZUlkQgcKBV9yaXNrQgkKB19lZmZvcnQiKQoaR2V0UmVjb21tZW5kYXRpb25WM1JlcXVlc3QSCwoDaWRzGAEgAygJIpIFChtHZXRSZWNvbW1lbmRhdGlvblYzUmVzcG9uc2USWwoPcmVjb21tZW5kYXRpb25zGAEgAygLMkIuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblYzUmVzcG9uc2UuUmVjb21tZW5kYXRpb25EZXRhaWwalQQKFFJlY29tbWVuZGF0aW9uRGV0YWlsEgoKAmlkGAEgASgJEgwKBG5hbWUYCSABKAkSDgoGdmVuZG9yGAIgASgJEg4KBnNvdXJjZRgDIAEoCRIMCgRjb2RlGAQgASgJEhQKB3NlcnZpY2UYBSABKAlIAIgBARIOCgZ0YXJnZXQYByABKAkSEgoKdGFyZ2V0TmFtZRgIIAEoCRIUCgxkYXRlRGV0ZWN0ZWQYBiABKAkSEwoGcmVnaW9uGAogASgJSAGIAQESIgoaZXN0aW1hdGVkTW9udGhseUJlZm9yZUNvc3QYCyABKAESIQoZZXN0aW1hdGVkTW9udGhseUFmdGVyQ29zdBgMIAEoARIfChdlc3RpbWF0ZWRNb250aGx5U2F2aW5ncxgNIAEoARIXCgpyZXNvdXJjZUlkGA4gASgJSAKIAQESEAoIY2F0ZWdvcnkYDyABKAkSDAoEdHlwZRgQIAEoCRITCgtsYXN0VXBkYXRlZBgRIAEoCRIOCgZzdGF0dXMYEiABKAkSEQoEcmlzaxgTIAEoCUgDiAEBEhMKBmVmZm9ydBgUIAEoCUgEiAEBEigKB2RldGFpbHMYFSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QgoKCF9zZXJ2aWNlQgkKB19yZWdpb25CDQoLX3Jlc291cmNlSWRCBwoFX3Jpc2tCCQoHX2VmZm9ydCLqAQobR2V0Q29zdEZvcmVjYXN0c0RhdGFSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0VGltZRgCIAEoCRIPCgdlbmRUaW1lGAMgASgJEk4KC2dyYW51bGFyaXR5GAQgASgOMjkuYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0Rm9yZWNhc3RzRGF0YVJlcXVlc3QuR3JhbnVsYXJpdHkiQgoLR3JhbnVsYXJpdHkSGwoXR1JBTlVMQVJJVFlfVU5TUEVDSUZJRUQQABIJCgVEQUlMWRABEgsKB01PTlRITFkQAiJqChxHZXRDb3N0Rm9yZWNhc3RzRGF0YVJlc3BvbnNlEgwKBGRhdGUYASABKAkSFAoMZm9yZWNhc3RDb3N0GAIgASgBEhIKCnVwcGVyQm91bmQYAyABKAESEgoKbG93ZXJCb3VuZBgEIAEoASIWChRMaXN0Rm9yZWNhc3RzUmVxdWVzdCJcChVMaXN0Rm9yZWNhc3RzUmVzcG9uc2USQwoTY29zdEZvcmVjYXN0RGV0YWlscxgBIAMoCzImLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RGb3JlY2FzdERldGFpbHMi8wEKGUNyZWF0ZUNvc3RGb3JlY2FzdFJlcXVlc3QSFAoMZm9yZWNhc3ROYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEi8KCWNvc3RHcm91cBgDIAEoCzIcLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RHcm91cBIbChNwYXN0QWN0dWFsQ29zdFJhbmdlGAQgASgDEhkKEWxvb2tGb3J3YXJkUGVyaW9kGAUgASgDEkIKE2V4dGVybmFsQWRqdXN0bWVudHMYBiADKAsyJS5ibHVlYXBpLmFwaS5jb3Zlci5FeHRlcm5hbEFkanVzdG1lbnQigAIKGkNyZWF0ZUNvc3RGb3JlY2FzdFJlc3BvbnNlEgoKAmlkGAEgASgJEhQKDGZvcmVjYXN0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIvCgljb3N0R3JvdXAYBCABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXASGwoTcGFzdEFjdHVhbENvc3RSYW5nZRgFIAEoAxIZChFsb29rRm9yd2FyZFBlcmlvZBgGIAEoAxJCChNleHRlcm5hbEFkanVzdG1lbnRzGAcgAygLMiUuYmx1ZWFwaS5hcGkuY292ZXIuRXh0ZXJuYWxBZGp1c3RtZW50IiQKFkdldENvc3RGb3JlY2FzdFJlcXVlc3QSCgoCaWQYASABKAkivwIKF0dldENvc3RGb3JlY2FzdFJlc3BvbnNlEgoKAmlkGAEgASgJEhQKDGZvcmVjYXN0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIvCgljb3N0R3JvdXAYBCABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXASGwoTcGFzdEFjdHVhbENvc3RSYW5nZRgFIAEoAxIZChFsb29rRm9yd2FyZFBlcmlvZBgGIAEoAxJCChNleHRlcm5hbEFkanVzdG1lbnRzGAcgAygLMiUuYmx1ZWFwaS5hcGkuY292ZXIuRXh0ZXJuYWxBZGp1c3RtZW50EhEKCWNyZWF0ZWRCeRgIIAEoCRIUCgxjcmVhdGlvbkRhdGUYCSABKAkSFwoPbGFzdFVwZGF0ZWREYXRlGAogASgJIv8BChlVcGRhdGVDb3N0Rm9yZWNhc3RSZXF1ZXN0EgoKAmlkGAEgASgJEhQKDGZvcmVjYXN0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIvCgljb3N0R3JvdXAYBCABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXASGwoTcGFzdEFjdHVhbENvc3RSYW5nZRgFIAEoAxIZChFsb29rRm9yd2FyZFBlcmlvZBgGIAEoAxJCChNleHRlcm5hbEFkanVzdG1lbnRzGAcgAygLMiUuYmx1ZWFwaS5hcGkuY292ZXIuRXh0ZXJuYWxBZGp1c3RtZW50IsICChpVcGRhdGVDb3N0Rm9yZWNhc3RSZXNwb25zZRIKCgJpZBgBIAEoCRIUCgxmb3JlY2FzdE5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSLwoJY29zdEdyb3VwGAQgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwEhsKE3Bhc3RBY3R1YWxDb3N0UmFuZ2UYBSABKAMSGQoRbG9va0ZvcndhcmRQZXJpb2QYBiABKAMSQgoTZXh0ZXJuYWxBZGp1c3RtZW50cxgHIAMoCzIlLmJsdWVhcGkuYXBpLmNvdmVyLkV4dGVybmFsQWRqdXN0bWVudBIRCgljcmVhdGVkQnkYCCABKAkSFAoMY3JlYXRpb25EYXRlGAkgASgJEhcKD2xhc3RVcGRhdGVkRGF0ZRgKIAEoCSInChlEZWxldGVDb3N0Rm9yZWNhc3RSZXF1ZXN0EgoKAmlkGAEgASgJIigKGkRlbGV0ZUNvc3RGb3JlY2FzdFJlc3BvbnNlEgoKAmlkGAEgASgJIm8KFkdldENvc3RVc2FnZVYyUmVzcG9uc2USDQoFdmFsdWUYASABKAESDAoEZGF0ZRgCIAEoCRIOCgZ2ZW5kb3IYAyABKAkSKAoHZGV0YWlscxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QivwQKFUdldENvc3RVc2FnZVYyUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRIRCglzdGFydFRpbWUYAiABKAkSDwoHZW5kVGltZRgDIAEoCRJICgtncmFudWxhcml0eRgEIAEoDjIzLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlVjJSZXF1ZXN0LkdyYW51bGFyaXR5EhAKCGdyb3VwQnlzGAUgAygJEkIKCGNhdGVnb3J5GAYgASgOMjAuYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0VXNhZ2VWMlJlcXVlc3QuQ2F0ZWdvcnkSEAoIY3VycmVuY3kYByABKAkSOgoKYXdzT3B0aW9ucxgIIAEoCzImLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RHcm91cEF3c09wdGlvbnMSRAoPYXp1cmVjc3BPcHRpb25zGAkgASgLMisuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwQXp1cmVDc3BPcHRpb25zEjoKCmdjcE9wdGlvbnMYCiABKAsyJi5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXBHY3BPcHRpb25zIkIKC0dyYW51bGFyaXR5EhsKF0dSQU5VTEFSSVRZX1VOU1BFQ0lGSUVEEAASCQoFREFJTFkQARILCgdNT05USExZEAIiOQoIQ2F0ZWdvcnkSGAoUQ2F0ZWdvcnlfVU5TUEVDSUZJRUQQABIICgRDT1NUEAESCQoFVVNBR0UQAiIZChdQb3B1bGF0ZURlbW9EYXRhUmVxdWVzdCIaChhQb3B1bGF0ZURlbW9EYXRhUmVzcG9uc2UiFgoUUmVzZXREZW1vRGF0YVJlcXVlc3QiFwoVUmVzZXREZW1vRGF0YVJlc3BvbnNlIt8GChlDb250YWluZXJDb3N0VXNhZ2VSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRJKCgptZXRyaWNUeXBlGAMgASgOMjYuYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXF1ZXN0Lk1ldHJpY1R5cGUSEQoJc3RhcnRUaW1lGAQgASgJEg8KB2VuZFRpbWUYBSABKAkSUAoLZ3JhbnVsYXJpdHkYBiABKA4yOy5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlcXVlc3QuVGltZUdyYW51bGFyaXR5EhAKCGdyb3VwQnlzGAcgAygJEksKB2ZpbHRlcnMYCCADKAsyOi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlcXVlc3QuRmlsdGVyQ3JpdGVyaWESTAoLc2VydmljZVR5cGUYCSABKA4yNy5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlcXVlc3QuU2VydmljZVR5cGUazwEKDkZpbHRlckNyaXRlcmlhEgsKA2tleRgBIAEoCRJbCghvcGVyYXRvchgCIAEoDjJJLmJsdWVhcGkuY292ZXIudjEuQ29udGFpbmVyQ29zdFVzYWdlUmVxdWVzdC5GaWx0ZXJDcml0ZXJpYS5GaWx0ZXJPcGVyYXRvchINCgV2YWx1ZRgDIAEoCSJECg5GaWx0ZXJPcGVyYXRvchIYChRPUEVSQVRPUl9VTlNQRUNJRklFRBAAEgkKBUVRVUFMEAESDQoJTk9UX0VRVUFMEAIiRgoPVGltZUdyYW51bGFyaXR5EhsKF0dSQU5VTEFSSVRZX1VOU1BFQ0lGSUVEEAASCQoFREFJTFkQARILCgdNT05USExZEAIiWgoKTWV0cmljVHlwZRIWChJNRVRSSUNfVU5TUEVDSUZJRUQQABIICgRDT1NUEAESCQoFVVNBR0UQAhIOCgpFRkZJQ0lFTkNZEAMSDwoLVU5VU0VEX0NPU1QQBCI4CgtTZXJ2aWNlVHlwZRIXChNTRVJWSUNFX1VOU1BFQ0lGSUVEEAASBwoDRUNTEAESBwoDRUtTEAIi1woKGkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlEksKB3Jlc3VsdHMYASADKAsyOi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLkdyb3VwZWRSZXN1bHQSUwoKaGlnaGxpZ2h0cxgCIAEoCzI/LmJsdWVhcGkuY292ZXIudjEuQ29udGFpbmVyQ29zdFVzYWdlUmVzcG9uc2UuUmVzb3VyY2VIaWdobGlnaHRzEhEKCXRvdGFsQ29zdBgDIAEoARIVCg1hdmdFZmZpY2llbmN5GAQgASgBGkQKCkNvc3RNZXRyaWMSDgoGYW1vdW50GAEgASgBEhAKCGN1cnJlbmN5GAIgASgJEhQKDHVudXNlZEFtb3VudBgDIAEoARqQAQoLVXNhZ2VNZXRyaWMSDAoEdW5pdBgBIAEoCRIWCg5yZXNlcnZlZEFtb3VudBgCIAEoARIUCgxhY3R1YWxBbW91bnQYAyABKAESEgoKZWZmaWNpZW5jeRgEIAEoARIWCg5jcHVVdGlsaXphdGlvbhgFIAEoARIZChFtZW1vcnlVdGlsaXphdGlvbhgGIAEoARrBAQoPTWV0cmljRGF0YVBvaW50EgwKBGRhdGUYASABKAkSRwoEY29zdBgCIAEoCzI3LmJsdWVhcGkuY292ZXIudjEuQ29udGFpbmVyQ29zdFVzYWdlUmVzcG9uc2UuQ29zdE1ldHJpY0gAEkkKBXVzYWdlGAMgASgLMjguYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZS5Vc2FnZU1ldHJpY0gAQgwKCm1ldHJpY0RhdGEaTAoRUmVzb3VyY2VIaWdobGlnaHQSEgoKcmVzb3VyY2VJZBgBIAEoCRIUCgxyZXNvdXJjZU5hbWUYAiABKAkSDQoFdmFsdWUYAyABKAEahAMKElJlc291cmNlSGlnaGxpZ2h0cxJaChJoaWdoZXN0Q2x1c3RlckNvc3QYASABKAsyPi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLlJlc291cmNlSGlnaGxpZ2h0ElkKEWhpZ2hlc3RVbnVzZWRDb3N0GAIgASgLMj4uYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZS5SZXNvdXJjZUhpZ2hsaWdodBJbChNoaWdoZXN0V29ya2xvYWRDb3N0GAMgASgLMj4uYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZS5SZXNvdXJjZUhpZ2hsaWdodBJaChJoaWdoZXN0Q29tcHV0ZUNvc3QYBCABKAsyPi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLlJlc291cmNlSGlnaGxpZ2h0GvoBCg1Hcm91cGVkUmVzdWx0El4KCmF0dHJpYnV0ZXMYASADKAsySi5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLkdyb3VwZWRSZXN1bHQuQXR0cmlidXRlc0VudHJ5ElYKEG1ldHJpY0RhdGFQb2ludHMYAiADKAsyPC5ibHVlYXBpLmNvdmVyLnYxLkNvbnRhaW5lckNvc3RVc2FnZVJlc3BvbnNlLk1ldHJpY0RhdGFQb2ludBoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKPBAoYR2V0QUlDb3N0QW5kVXNhZ2VSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnZlbmRvchgCIAEoCRIRCglzdGFydFRpbWUYAyABKAkSDwoHZW5kVGltZRgEIAEoCRJLCgtncmFudWxhcml0eRgFIAEoDjI2LmJsdWVhcGkuY292ZXIudjEuR2V0QUlDb3N0QW5kVXNhZ2VSZXF1ZXN0LkdyYW51bGFyaXR5EhAKCGdyb3VwQnlzGAYgAygJEkIKB2ZpbHRlcnMYByADKAsyMS5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVxdWVzdC5GaWx0ZXIawgEKBkZpbHRlchILCgNrZXkYASABKAkSTAoIb3BlcmF0b3IYAiABKA4yOi5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVxdWVzdC5GaWx0ZXIuT3BlcmF0b3ISDgoGdmFsdWVzGAMgAygJEg0KBXZhbHVlGAQgASgJIj4KCE9wZXJhdG9yEhgKFE9QRVJBVE9SX1VOU1BFQ0lGSUVEEAASCQoFRVFVQUwQARINCglOT1RfRVFVQUwQAiJCCgtHcmFudWxhcml0eRIbChdHUkFOVUxBUklUWV9VTlNQRUNJRklFRBAAEgkKBURBSUxZEAESCwoHTU9OVEhMWRACIqcEChlHZXRBSUNvc3RBbmRVc2FnZVJlc3BvbnNlEkMKB3Jlc3VsdHMYASADKAsyMi5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVzcG9uc2UuUmVzdWx0GigKBENvc3QSDgoGYW1vdW50GAEgASgBEhAKCGN1cnJlbmN5GAIgASgJGiUKBVVzYWdlEgwKBHVuaXQYASABKAkSDgoGYW1vdW50GAIgASgBGpgBCgZNZXRyaWMSDAoEZGF0ZRgBIAEoCRI+CgRjb3N0GAIgASgLMjAuYmx1ZWFwaS5jb3Zlci52MS5HZXRBSUNvc3RBbmRVc2FnZVJlc3BvbnNlLkNvc3QSQAoFdXNhZ2UYAyABKAsyMS5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVzcG9uc2UuVXNhZ2Ua2AEKBlJlc3VsdBJWCgphdHRyaWJ1dGVzGAEgAygLMkIuYmx1ZWFwaS5jb3Zlci52MS5HZXRBSUNvc3RBbmRVc2FnZVJlc3BvbnNlLlJlc3VsdC5BdHRyaWJ1dGVzRW50cnkSQwoHbWV0cmljcxgCIAMoCzIyLmJsdWVhcGkuY292ZXIudjEuR2V0QUlDb3N0QW5kVXNhZ2VSZXNwb25zZS5NZXRyaWMaMQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiGwoZR2V0RXhlY3V0aW9uU3RhdHVzUmVxdWVzdCJXChpHZXRFeGVjdXRpb25TdGF0dXNSZXNwb25zZRIYChByZWNvbW1lbmRhdGlvbklkGAEgASgJEg4KBnN0YXR1cxgCIAEoCRIPCgdtZXNzYWdlGAMgASgJIjgKFlZlcmlmeUFQSUFjY2Vzc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEg4KBnRhcmdldBgCIAEoCSIpChdWZXJpZnlBUElBY2Nlc3NSZXNwb25zZRIOCgZyZXN1bHQYASABKAgiZQoaR2V0UmVjb21tZW5kYXRpb25WMlJlcXVlc3QSCgoCaWQYASABKAkSEwoLY29zdEdyb3VwSWQYAiABKAkSFAoMcGVyaW9kT3B0aW9uGAMgASgJEhAKCGN1cnJlbmN5GAQgASgJImEKG0dldFJlY29tbWVuZGF0aW9uVjJSZXNwb25zZRJCCgRkYXRhGAEgASgLMjQuYmx1ZWFwaS5hcGkuY292ZXIucmVjb21tZW5kYXRpb24uUmVjb21tZW5kYXRpb25EYXRhIlEKEU9uYm9hcmRPcmdSZXF1ZXN0Eg0KBWVtYWlsGAEgASgJEhAKCHBhc3N3b3JkGAIgASgJEgwKBG5hbWUYAyABKAkSDQoFb3JnSWQYBCABKAkiQwoST25ib2FyZE9yZ1Jlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiTQoTSW52aXRlTWVtYmVyUmVxdWVzdBINCgVlbWFpbBgBIAMoCRIQCghpc1Jlc2VuZBgCIAEoCBIVCg1pbnZpdGVBc0FkbWluGAMgASgIIiUKFEludml0ZU1lbWJlclJlc3BvbnNlEg0KBWVtYWlsGAEgAygJIqQBChNBY3RpdmF0ZVVzZXJSZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCRIYChBwcmV2aW91c1Bhc3N3b3JkGAIgASgJEhAKCHBhc3N3b3JkGAMgASgJEgwKBG5hbWUYBCABKAkSDgoGbG9jYWxlGAUgASgJEg0KBWVtYWlsGAYgASgJEg8KB2lzQXV0aDAYByABKAgSEwoLYXV0aDBVc2VySWQYCCABKAkiRQoUQWN0aXZhdGVVc2VyUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSJYChNDcmVhdGVNZW1iZXJSZXF1ZXN0Eg0KBWVtYWlsGAEgASgJEhAKCHBhc3N3b3JkGAIgASgJEgwKBG5hbWUYAyABKAkSEgoKY29zdGdyb3VwcxgEIAMoCSJFChRDcmVhdGVNZW1iZXJSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIhMKEUdldE1lbWJlcnNSZXF1ZXN0IkMKEkdldE1lbWJlcnNSZXNwb25zZRItCgh1c2VyRGF0YRgBIAMoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIikKF0dldE1lbWJlckRldGFpbHNSZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCSJJChhHZXRNZW1iZXJEZXRhaWxzUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIrChlHZXRNZW1iZXJDb3N0R3JvdXBSZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCSJUChpHZXRNZW1iZXJDb3N0R3JvdXBSZXNwb25zZRI2Cgpjb3N0R3JvdXBzGAEgAygLMiIuYmx1ZWFwaS5hcGkuY292ZXIuTWVtYmVyQ29zdEdyb3VwIkAKHVVwZGF0ZU1lbWJlclBlcm1pc3Npb25SZXF1ZXN0Eg4KBnVzZXJJZBgBIAEoCRIPCgdpc0FkbWluGAIgASgIIk8KHlVwZGF0ZU1lbWJlclBlcm1pc3Npb25SZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIhcKFUdldFVzZXJEZXRhaWxzUmVxdWVzdCJHChZHZXRVc2VyRGV0YWlsc1Jlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiKQoXVXBkYXRlVXNlckF2YXRhclJlcXVlc3QSDgoGYXZhdGFyGAEgASgJIkkKGFVwZGF0ZVVzZXJBdmF0YXJSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIiUKFVVwZGF0ZVVzZXJJY29uUmVxdWVzdBIMCgRpY29uGAEgASgJIkcKFlVwZGF0ZVVzZXJJY29uUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIxChtVcGRhdGVVc2VyQ29sb3JUaGVtZVJlcXVlc3QSEgoKY29sb3JUaGVtZRgBIAEoCSJNChxVcGRhdGVVc2VyQ29sb3JUaGVtZVJlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiJQoVVXBkYXRlVXNlck5hbWVSZXF1ZXN0EgwKBG5hbWUYASABKAkiRwoWVXBkYXRlVXNlck5hbWVSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIicKFlVwZGF0ZVVzZXJFbWFpbFJlcXVlc3QSDQoFZW1haWwYASABKAkiSAoXVXBkYXRlVXNlckVtYWlsUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIrChlVcGRhdGVVc2VyTWFpblZpZXdSZXF1ZXN0Eg4KBnZpZXdJZBgBIAEoCSJLChpVcGRhdGVVc2VyTWFpblZpZXdSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIkkKGFJlc2V0VXNlclBhc3N3b3JkUmVxdWVzdBIYChBwcmV2aW91c1Bhc3N3b3JkGAEgASgJEhMKC25ld1Bhc3N3b3JkGAIgASgJIkoKGVJlc2V0VXNlclBhc3N3b3JkUmVzcG9uc2USLQoIdXNlckRhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vc2VyRGF0YSIpChdVcGRhdGVVc2VyTG9jYWxlUmVxdWVzdBIOCgZsb2NhbGUYASABKAkiSQoYVXBkYXRlVXNlckxvY2FsZVJlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiLQoZVXBkYXRlVXNlckFwcFRoZW1lUmVxdWVzdBIQCghhcHBUaGVtZRgBIAEoCSJLChpVcGRhdGVVc2VyQXBwVGhlbWVSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIkMKGVVwZGF0ZVVzZXJUaW1lem9uZVJlcXVlc3QSEAoIdGltZVpvbmUYASABKAkSFAoMYXV0b1RpbWVab25lGAIgASgIIksKGlVwZGF0ZVVzZXJUaW1lem9uZVJlc3BvbnNlEi0KCHVzZXJEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVXNlckRhdGEiMQobVXBkYXRlVXNlckF0dHJpYnV0ZXNSZXF1ZXN0EhIKCmF0dHJpYnV0ZXMYASADKAkiTQocVXBkYXRlVXNlckF0dHJpYnV0ZXNSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIiUKE0RlbGV0ZU1lbWJlclJlcXVlc3QSDgoGdXNlcklkGAEgASgJIiYKFERlbGV0ZU1lbWJlclJlc3BvbnNlEg4KBnVzZXJJZBgBIAEoCSImChRSZXNldFBhc3N3b3JkUmVxdWVzdBIOCgZ1c2VySWQYASABKAkiJwoVUmVzZXRQYXNzd29yZFJlc3BvbnNlEg4KBnVzZXJJZBgBIAEoCSK7AQoRQ3JlYXRlVmlld1JlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIRCglpc1ByaXZhdGUYAyABKAgSEgoKaXNFZGl0YWJsZRgEIAEoCBIMCgRpY29uGAUgASgJEhIKCnJlcG9ydFR5cGUYBiABKAkSEgoKY29sb3JUaGVtZRgHIAEoCRIUCgxyZXBvcnRQZXJpb2QYCCABKAkSEAoIY3VycmVuY3kYCSABKAkiQwoSQ3JlYXRlVmlld1Jlc3BvbnNlEi0KCHZpZXdEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVmlld0RhdGEiEQoPR2V0Vmlld3NSZXF1ZXN0IkEKEEdldFZpZXdzUmVzcG9uc2USLQoIdmlld0xpc3QYASADKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5WaWV3TGlzdCInChVHZXRDdXJyZW50Vmlld1JlcXVlc3QSDgoGdmlld0lkGAEgASgJIkcKFkdldEN1cnJlbnRWaWV3UmVzcG9uc2USLQoIdmlld0RhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5WaWV3RGF0YSIZChdHZXRGYXZvcml0ZVZpZXdzUmVxdWVzdCJLChhHZXRGYXZvcml0ZVZpZXdzUmVzcG9uc2USLwoJZmF2b3JpdGVzGAEgAygLMhwuYmx1ZWFwaS5hcGkuY292ZXIuRmF2b3JpdGVzIiQKElB1Ymxpc2hWaWV3UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkiIgoTUHVibGlzaFZpZXdSZXNwb25zZRILCgN1cmwYASABKAkiJAoSQWRkRmF2b3JpdGVSZXF1ZXN0Eg4KBnZpZXdJZBgBIAEoCSIlChNBZGRGYXZvcml0ZVJlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSInChVSZW1vdmVGYXZvcml0ZVJlcXVlc3QSDgoGdmlld0lkGAEgASgJIigKFlJlbW92ZUZhdm9yaXRlUmVzcG9uc2USDgoGdmlld0lkGAEgASgJIo8BChFVcGRhdGVWaWV3UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIMCgRpY29uGAQgASgJEhEKCWlzUHJpdmF0ZRgFIAEoCBISCgppc0VkaXRhYmxlGAYgASgIEhIKCmNvbG9yVGhlbWUYByABKAkiJAoSVXBkYXRlVmlld1Jlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSJYChdVcGRhdGVWaWV3TGF5b3V0UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSLQoGbGF5b3V0GAIgAygLMh0uYmx1ZWFwaS5hcGkuY292ZXIuV2lkZ2V0RGF0YSJJChhVcGRhdGVWaWV3TGF5b3V0UmVzcG9uc2USLQoGbGF5b3V0GAEgAygLMh0uYmx1ZWFwaS5hcGkuY292ZXIuVmlld0xheW91dCKaAQoXVXBkYXRlVmlld1dpZGdldFJlcXVlc3QSDgoGdmlld0lkGAEgASgJEhAKCHdpZGdldElkGAIgASgJEigKB29wdGlvbnMYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EjMKCHJlcXVlc3RzGAQgAygLMiEuYmx1ZWFwaS5hcGkuY292ZXIuTGF5b3V0UmVxdWVzdHMiXwoYVXBkYXRlVmlld1dpZGdldFJlc3BvbnNlEhAKCHdpZGdldElkGAEgASgJEjEKCndpZGdldERhdGEYAiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5XaWRnZXREYXRhIkEKG1VwZGF0ZVZpZXdDb2xvclRoZW1lUmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSEgoKY29sb3JUaGVtZRgCIAEoCSJNChxVcGRhdGVWaWV3Q29sb3JUaGVtZVJlc3BvbnNlEi0KCHZpZXdEYXRhGAEgASgLMhsuYmx1ZWFwaS5hcGkuY292ZXIuVmlld0RhdGEiPQoZVXBkYXRlVmlld0N1cnJlbmN5UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSEAoIY3VycmVuY3kYAiABKAkiSwoaVXBkYXRlVmlld0N1cnJlbmN5UmVzcG9uc2USLQoIdmlld0RhdGEYASABKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5WaWV3RGF0YSI1ChtTZXRPcmdVcGRhdGVDdXJyZW5jeVJlcXVlc3QSFgoOdXBkYXRlQ3VycmVuY3kYASABKAMiNgocU2V0T3JnVXBkYXRlQ3VycmVuY3lSZXNwb25zZRIWCg51cGRhdGVDdXJyZW5jeRgBIAEoAyIdChtHZXRPcmdVcGRhdGVDdXJyZW5jeVJlcXVlc3QiWQocR2V0T3JnVXBkYXRlQ3VycmVuY3lSZXNwb25zZRINCgVvcmdJZBgBIAEoCRIWCg51cGRhdGVDdXJyZW5jeRgCIAEoAxISCgpsYXN0VXBkYXRlGAMgASgJIj4KGExpc3RFeGNoYW5nZVJhdGVzUmVxdWVzdBIRCglzdGFydERhdGUYASABKAkSDwoHZW5kRGF0ZRgCIAEoCSJiChlMaXN0RXhjaGFuZ2VSYXRlc1Jlc3BvbnNlEg0KBW9yZ0lkGAEgASgJEjYKDWV4Y2hhbmdlUmF0ZXMYAiADKAsyHy5ibHVlYXBpLmNvdmVyLnYxLkV4Y2hhbmdlUmF0ZXMiQgoNRXhjaGFuZ2VSYXRlcxINCgVtb250aBgBIAEoCRIUCgxleGNoYW5nZVJhdGUYAiABKAISDAoEZGF0ZRgDIAEoCSIjChFEZWxldGVWaWV3UmVxdWVzdBIOCgZ2aWV3SWQYASABKAkiJAoSRGVsZXRlVmlld1Jlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSJlChpVcGRhdGVTaWRlTWVudVN0YXRlUmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSNwoNc2lkZW1lbnVzdGF0ZRgCIAMoCzIgLmJsdWVhcGkuYXBpLmNvdmVyLlNpZGVNZW51U3RhdGUiLQobVXBkYXRlU2lkZU1lbnVTdGF0ZVJlc3BvbnNlEg4KBnZpZXdJZBgBIAEoCSJAChpBZGRTaWRlTWVudUZhdm9yaXRlUmVxdWVzdBIOCgZ2aWV3SWQYASABKAkSEgoKbWVudUl0ZW1JZBgCIAEoCSItChtBZGRTaWRlTWVudUZhdm9yaXRlUmVzcG9uc2USDgoGdmlld0lkGAEgASgJIkMKHVJlbW92ZVNpZGVNZW51RmF2b3JpdGVSZXF1ZXN0Eg4KBnZpZXdJZBgBIAEoCRISCgptZW51SXRlbUlkGAIgASgJIjAKHlJlbW92ZVNpZGVNZW51RmF2b3JpdGVSZXNwb25zZRIOCgZ2aWV3SWQYASABKAki0wEKFkNyZWF0ZUNvc3RHcm91cFJlcXVlc3QSDAoEbmFtZRgBIAEoCRIuCgR0eXBlGAcgASgOMiAuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwVHlwZRITCgtkZXNjcmlwdGlvbhgCIAEoCRINCgVpbWFnZRgDIAEoCRIMCgRpY29uGAQgASgJEhIKCmNvbG9yVGhlbWUYBSABKAkSNQoMY29tYmluYXRpb25zGAYgASgLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQ29tYmluYXRpb25zIlIKF0NyZWF0ZUNvc3RHcm91cFJlc3BvbnNlEjcKDWNvc3RHcm91cERhdGEYASABKAsyIC5ibHVlYXBpLmFwaS5jb3Zlci5Db3N0R3JvdXBEYXRhIhYKFEdldENvc3RHcm91cHNSZXF1ZXN0IlAKFUdldENvc3RHcm91cHNSZXNwb25zZRI3Cg1jb3N0R3JvdXBEYXRhGAEgAygLMiAuYmx1ZWFwaS5hcGkuY292ZXIuQ29zdEdyb3VwRGF0YSIxChpHZXRDb3N0R3JvdXBEZXRhaWxzUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCSJWChtHZXRDb3N0R3JvdXBEZXRhaWxzUmVzcG9uc2USNwoNY29zdEdyb3VwRGF0YRgBIAEoCzIgLmJsdWVhcGkuYXBpLmNvdmVyLkNvc3RHcm91cERhdGEiPwoaVXBkYXRlQ29zdEdyb3VwTmFtZVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDAoEbmFtZRgCIAEoCSIrChtVcGRhdGVDb3N0R3JvdXBOYW1lUmVzcG9uc2USDAoEbmFtZRgBIAEoCSJNCiFVcGRhdGVDb3N0R3JvdXBEZXNjcmlwdGlvblJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkiOQoiVXBkYXRlQ29zdEdyb3VwRGVzY3JpcHRpb25SZXNwb25zZRITCgtkZXNjcmlwdGlvbhgBIAEoCSJBChtVcGRhdGVDb3N0R3JvdXBJbWFnZVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDQoFaW1hZ2UYAiABKAkiLQocVXBkYXRlQ29zdEdyb3VwSW1hZ2VSZXNwb25zZRINCgVpbWFnZRgBIAEoCSI/ChpVcGRhdGVDb3N0R3JvdXBJY29uUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRIMCgRpY29uGAIgASgJIisKG1VwZGF0ZUNvc3RHcm91cEljb25SZXNwb25zZRIMCgRpY29uGAEgASgJIksKIFVwZGF0ZUNvc3RHcm91cENvbG9yVGhlbWVSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhIKCmNvbG9yVGhlbWUYAiABKAkiNwohVXBkYXRlQ29zdEdyb3VwQ29sb3JUaGVtZVJlc3BvbnNlEhIKCmNvbG9yVGhlbWUYASABKAkicAoiVXBkYXRlQ29zdEdyb3VwQ29tYmluYXRpb25zUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRI1Cgxjb21iaW5hdGlvbnMYAiABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Db21iaW5hdGlvbnMiXAojVXBkYXRlQ29zdEdyb3VwQ29tYmluYXRpb25zUmVzcG9uc2USNQoMY29tYmluYXRpb25zGAEgASgLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQ29tYmluYXRpb25zIkMKHEFzc2lnbkNvc3RHcm91cE1lbWJlclJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDgoGdXNlcklkGAIgASgJIkQKHUFzc2lnbkNvc3RHcm91cE1lbWJlclJlc3BvbnNlEhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnVzZXJJZBgCIAEoCSJDChxSZW1vdmVDb3N0R3JvdXBNZW1iZXJSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEg4KBnVzZXJJZBgCIAEoCSJECh1SZW1vdmVDb3N0R3JvdXBNZW1iZXJSZXNwb25zZRITCgtjb3N0R3JvdXBJZBgBIAEoCRIOCgZ1c2VySWQYAiABKAkiLQoWRGVsZXRlQ29zdEdyb3VwUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCSIuChdEZWxldGVDb3N0R3JvdXBSZXNwb25zZRITCgtjb3N0R3JvdXBJZBgBIAEoCSIyCiJHZXRBY2NvdW50QWNjZXNzVGVtcGxhdGVVcmxSZXF1ZXN0EgwKBHR5cGUYASABKAkihwEKI0dldEFjY291bnRBY2Nlc3NUZW1wbGF0ZVVybFJlc3BvbnNlEhEKCWxhdW5jaFVybBgBIAEoCRITCgt0ZW1wbGF0ZVVybBgCIAEoCRIRCglzdGFja05hbWUYAyABKAkSEQoJcHJpbmNpcGFsGAQgASgJEhIKCmV4dGVybmFsSWQYBSABKAkiGgoYTGlzdEFjY291bnRBY2Nlc3NSZXF1ZXN0IikKF0dldEFjY291bnRBY2Nlc3NSZXF1ZXN0Eg4KBnRhcmdldBgBIAEoCSLaAgoNQWNjb3VudEFjY2VzcxIOCgZ0YXJnZXQYASABKAkSEwoLYWNjb3VudE5hbWUYAiABKAkSEwoLYWNjb3VudFR5cGUYAyABKAkSDwoHcGF5ZXJJZBgEIAEoCRIPCgdyb2xlQXJuGAUgASgJEhIKCmV4dGVybmFsSWQYBiABKAkSDwoHc3RhY2tJZBgHIAEoCRITCgtzdGFja1JlZ2lvbhgIIAEoCRITCgt0ZW1wbGF0ZVVybBgJIAEoCRISCgpidWNrZXROYW1lGAogASgJEg4KBnByZWZpeBgLIAEoCRISCgpyZXBvcnROYW1lGAwgASgJEkEKEnJlZ2lzdHJhdGlvblN0YXR1cxgNIAEoCzIlLmJsdWVhcGkuYXBpLmNvdmVyLlJlZ2lzdHJhdGlvblN0YXR1cxIOCgZzdGF0dXMYDiABKAkSEwoLbGFzdFVwZGF0ZWQYDyABKAkiQwoaQ3JlYXRlQWNjb3VudEFjY2Vzc1JlcXVlc3QSDgoGdGFyZ2V0GAEgASgJEhUKDWZyb21UZXJyYWZvcm0YAiABKAgiRAoiQ3JlYXRlQWNjb3VudEFjY2Vzc1N0YWNrc2V0UmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGcmVnaW9uGAIgASgJIiwKGlVwZGF0ZUFjY291bnRBY2Nlc3NSZXF1ZXN0Eg4KBnRhcmdldBgBIAEoCSI8ChpEZWxldGVBY2NvdW50QWNjZXNzUmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGdmVuZG9yGAIgASgJIi8KG0RlbGV0ZUFjY291bnRBY2Nlc3NSZXNwb25zZRIQCgh0YXJnZXRJZBgBIAEoCSJQChZSZWdpc3RlckFjY291bnRSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIRCglhY2NvdW50SWQYAiABKAkSEwoLYWNjb3VudE5hbWUYAyABKAki5gEKEUxpc3RBc3NldHNSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhIKCnN0YXJ0TW9udGgYAiABKAkSEAoIZW5kTW9udGgYAyABKAkSGgoSd2l0aFJlY29tbWVuZGF0aW9uGAQgASgIEjcKCmF3c09wdGlvbnMYBSADKAsyIy5ibHVlYXBpLmNvdmVyLnYxLkxpc3RBc3NldHNGaWx0ZXJzEkEKFGF3c1Byb3BlcnRpZXNPcHRpb25zGAYgAygLMiMuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QXNzZXRzRmlsdGVycyKPAQoRTGlzdEFzc2V0c0ZpbHRlcnMSRwoKYW5kRmlsdGVycxgBIAMoCzIzLmJsdWVhcGkuY292ZXIudjEuTGlzdEFzc2V0c0ZpbHRlcnMuQW5kRmlsdGVyc0VudHJ5GjEKD0FuZEZpbHRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIr0BCghSZXNvdXJjZRIMCgRkYXRlGAEgASgJEg0KBW9yZ0lkGAIgASgJEg4KBnZlbmRvchgDIAEoCRIPCgdhY2NvdW50GAQgASgJEg8KB3NlcnZpY2UYBSABKAkSEgoKcmVzb3VyY2VJZBgGIAEoCRIUCgxyZXNvdXJjZVR5cGUYByABKAkSDAoEY29zdBgIIAEoARISCgpwcm9wZXJ0aWVzGAkgASgJEhYKDnJlY29tbWVuZGF0aW9uGAogASgJIuYBChdHZXRBc3NldHNTdW1tYXJ5UmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCRISCgpzdGFydE1vbnRoGAIgASgJEhAKCGVuZE1vbnRoGAMgASgJEhQKDGNvbWJpbmVEYXRlcxgEIAEoCBI3Cgphd3NPcHRpb25zGAUgAygLMiMuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QXNzZXRzRmlsdGVycxJBChRhd3NQcm9wZXJ0aWVzT3B0aW9ucxgGIAMoCzIjLmJsdWVhcGkuY292ZXIudjEuTGlzdEFzc2V0c0ZpbHRlcnMiawoYR2V0QXNzZXRzU3VtbWFyeVJlc3BvbnNlEjAKB3N1bW1hcnkYASADKAsyHy5ibHVlYXBpLmNvdmVyLnYxLkFzc2V0c1N1bW1hcnkSHQoVcmVjb21tZW5kYXRpb25TdW1tYXJ5GAIgASgJIlgKDUFzc2V0c1N1bW1hcnkSDAoEZGF0ZRgBIAEoCRIOCgZ2ZW5kb3IYAiABKAkSFgoOdG90YWxSZXNvdXJjZXMYAyABKAMSEQoJdG90YWxDb3N0GAQgASgBIjoKI1Jlc29sdmVDb3N0R3JvdXBDb21iaW5hdGlvbnNSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJImkKJFJlc29sdmVDb3N0R3JvdXBDb21iaW5hdGlvbnNSZXNwb25zZRITCgtjb3N0R3JvdXBJZBgBIAEoCRIsCghhY2NvdW50cxgCIAMoCzIaLmJsdWVhcGkuYXBpLmNvdmVyLkFjY291bnQixwQKE0dldENvc3RVc2FnZVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEQoJc3RhcnRUaW1lGAIgASgJEg8KB2VuZFRpbWUYAyABKAkSFAoMZ3JvdXBCeU1vbnRoGAQgASgIEg0KBWxpbWl0GAUgASgDEhAKCGNhdGVnb3J5GAYgASgJEg8KB2dyb3VwQnkYByABKAkSFwoPaW5jbHVkZVplcm9Db3N0GAggASgIEkMKCmF3c09wdGlvbnMYCSABKAsyLy5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RVc2FnZVJlcXVlc3RBd3NPcHRpb25zEkcKDGF6dXJlT3B0aW9ucxgKIAEoCzIxLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlUmVxdWVzdEF6dXJlT3B0aW9ucxJDCgpnY3BPcHRpb25zGAsgASgLMi8uYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0VXNhZ2VSZXF1ZXN0R2NwT3B0aW9ucxJNCg9henVyZWNzcE9wdGlvbnMYDCABKAsyNC5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RVc2FnZVJlcXVlc3RBenVyZUNzcE9wdGlvbnMSSQoNY3VzdG9tT3B0aW9ucxgNIAEoCzIyLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlUmVxdWVzdEN1c3RvbU9wdGlvbnMSFwoPaW5jbHVkZUZvcmVjYXN0GA4gASgIEhAKCGN1cnJlbmN5GA8gASgJIucBCh1HZXRDb3N0VXNhZ2VSZXF1ZXN0QXdzT3B0aW9ucxIWCg5ncm91cEJ5Q29sdW1ucxgBIAEoCRIVCg1ncm91cEFjY291bnRzGAIgASgIEkEKB2ZpbHRlcnMYAyADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxJECgp0YWdGaWx0ZXJzGAQgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSDgoGdGFnS2V5GAUgASgJItkBCh9HZXRDb3N0VXNhZ2VSZXF1ZXN0QXp1cmVPcHRpb25zEhYKDmdyb3VwQnlDb2x1bW5zGAEgASgJEhUKDWdyb3VwQWNjb3VudHMYAiABKAgSQQoHZmlsdGVycxgDIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEkQKCnRhZ0ZpbHRlcnMYBCADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycyL+AgodR2V0Q29zdFVzYWdlUmVxdWVzdEdjcE9wdGlvbnMSFgoOZ3JvdXBCeUNvbHVtbnMYASABKAkSFQoNZ3JvdXBBY2NvdW50cxgCIAEoCBJBCgdmaWx0ZXJzGAMgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSRAoKdGFnRmlsdGVycxgEIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEkYKDGxhYmVsRmlsdGVycxgFIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEk0KE3Byb2plY3RMYWJlbEZpbHRlcnMYBiADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxIOCgZ0YWdLZXkYByABKAki7AEKIkdldENvc3RVc2FnZVJlcXVlc3RBenVyZUNzcE9wdGlvbnMSFgoOZ3JvdXBCeUNvbHVtbnMYASABKAkSFQoNZ3JvdXBBY2NvdW50cxgCIAEoCBJBCgdmaWx0ZXJzGAMgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSRAoKdGFnRmlsdGVycxgEIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEg4KBnRhZ0tleRgFIAEoCSKBAwogR2V0Q29zdFVzYWdlUmVxdWVzdEN1c3RvbU9wdGlvbnMSFgoOZ3JvdXBCeUNvbHVtbnMYASABKAkSFQoNZ3JvdXBBY2NvdW50cxgCIAEoCBJBCgdmaWx0ZXJzGAMgAygLMjAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMSRAoKdGFnRmlsdGVycxgEIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEkYKDGxhYmVsRmlsdGVycxgFIAMoCzIwLmJsdWVhcGkuY292ZXIudjEuUmVhZENvc3RzUmVxdWVzdE9wdGlvbnNGaWx0ZXJzEk0KE3Byb2plY3RMYWJlbEZpbHRlcnMYBiADKAsyMC5ibHVlYXBpLmNvdmVyLnYxLlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxIOCgZ0YWdLZXkYByABKAkiqQEKHlJlYWRDb3N0c1JlcXVlc3RPcHRpb25zRmlsdGVycxJUCgphbmRGaWx0ZXJzGAEgAygLMkAuYmx1ZWFwaS5jb3Zlci52MS5SZWFkQ29zdHNSZXF1ZXN0T3B0aW9uc0ZpbHRlcnMuQW5kRmlsdGVyc0VudHJ5GjEKD0FuZEZpbHRlcnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIvYDCghDb3N0SXRlbRIOCgZ2ZW5kb3IYASABKAkSDAoEZGF0ZRgCIAEoCRIPCgdwcm9kdWN0GAMgASgJEg8KB2FjY291bnQYBCABKAkSEQoJdXNhZ2VUeXBlGBAgASgJEhIKCmNoYXJnZVR5cGUYESABKAkSDAoEY29zdBgFIAEoARIPCgdkZXRhaWxzGAYgASgJEjQKCGZvcmVjYXN0GAcgASgLMiIuYmx1ZWFwaS5hcGkuY292ZXIuQXdzQ29zdEZvcmVjYXN0Eg4KBnJlZ2lvbhgIIAEoCRIWCg5iaWxsaW5nQWNjb3VudBgJIAEoCRIQCgh0YWdWYWx1ZRgKIAEoCRISCgpsYXN0VXBkYXRlGAsgASgJEgwKBHVuaXQYDCABKAkSEAoIY2F0ZWdvcnkYDSABKAkSDgoGdGFnZ2VkGA4gASgIEhUKDW51bWJlck9mVW5pdHMYEiABKAESRgoOdW5pdGNvc3RtZXRyaWMYDyADKAsyLi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RJdGVtLlVuaXRjb3N0bWV0cmljRW50cnkSGgoSYWxsb2NhdGlvbkNhdGVnb3J5GBMgASgJGjUKE1VuaXRjb3N0bWV0cmljRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgBOgI4ASI6CiNHZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uUmVxdWVzdBITCgtjb3N0R3JvdXBJZBgBIAEoCSJZCiRHZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uUmVzcG9uc2USMQoIcmVzb3VyY2UYASADKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5SZXNvdXJjZURhdGEieAoZTW9kaWZ5UmVzb3VyY2VUeXBlUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhIKCnJlc291cmNlSWQYAyABKAkSFAoMcmVzb3VyY2VUeXBlGAQgASgJEg4KBnJlZ2lvbhgFIAEoCSJpChpNb2RpZnlSZXNvdXJjZVR5cGVSZXNwb25zZRIRCglhY2NvdW50SWQYASABKAkSEgoKcmVzb3VyY2VJZBgCIAEoCRIUCgxyZXNvdXJjZVR5cGUYAyABKAkSDgoGcmVnaW9uGAQgASgJImEKGFRlcm1pbmF0ZVJlc291cmNlUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEQoJYWNjb3VudElkGAIgASgJEhIKCnJlc291cmNlSWQYAyABKAkSDgoGcmVnaW9uGAQgASgJIlIKGVRlcm1pbmF0ZVJlc291cmNlUmVzcG9uc2USEQoJYWNjb3VudElkGAEgASgJEhIKCnJlc291cmNlSWQYAiABKAkSDgoGcmVnaW9uGAMgASgJIkMKF1VwbG9hZENoYXJnZUNvZGVSZXF1ZXN0EgwKBG5hbWUYASABKAkSDAoEdHlwZRgCIAEoCRIMCgRmaWxlGAMgASgMIlIKGFVwbG9hZENoYXJnZUNvZGVSZXNwb25zZRIMCgRuYW1lGAEgASgJEigKBnN0YXR1cxgCIAEoDjIYLmJsdWVhcGkuY292ZXIudjEuU3RhdHVzIkgKEkFzc2lnblBheWVyUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEQoJYWNjb3VudElkGAIgASgJEg8KB3BheWVySWQYAyABKAkiOQoTQXNzaWduUGF5ZXJSZXNwb25zZRIRCglhY2NvdW50SWQYASABKAkSDwoHcGF5ZXJJZBgCIAEoCSIiChBHZXRQYXllcnNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCSIjChFHZXRQYXllcnNSZXNwb25zZRIOCgZwYXllcnMYASADKAkiOQoSR2V0QWNjb3VudHNSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRITCgtjb3N0R3JvdXBJZBgCIAEoCSInChNHZXRBY2NvdW50c1Jlc3BvbnNlEhAKCGFjY291bnRzGAEgAygJIjkKEkdldFNlcnZpY2VzUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEwoLY29zdEdyb3VwSWQYAiABKAkiJwoTR2V0U2VydmljZXNSZXNwb25zZRIQCghzZXJ2aWNlcxgBIAMoCSI4ChFHZXRSZWdpb25zUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSEwoLY29zdEdyb3VwSWQYAiABKAkiJQoSR2V0UmVnaW9uc1Jlc3BvbnNlEg8KB3JlZ2lvbnMYASADKAkiNQoOR2V0VGFnc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJIj4KD0dldFRhZ3NSZXNwb25zZRIrCgd0YWdEYXRhGAEgAygLMhouYmx1ZWFwaS5hcGkuY292ZXIuVGFnRGF0YSIgCg9MaXN0RmVlc1JlcXVlc3QSDQoFbW9udGgYASABKAki7QIKCkZlZURldGFpbHMSCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSDgoGdmVuZG9yGAMgASgJEg8KB2FjY291bnQYBCABKAkSDQoFbW9udGgYBSABKAkSEAoIbGluZVR5cGUYBiABKAkSDwoHZmVlVHlwZRgHIAEoCRITCgtwcm9kdWN0Q29kZRgIIAEoCRITCgtkZXNjcmlwdGlvbhgJIAEoCRIPCgdzdGFydGVkGAogASgJEhQKDHRpbWVJbnRlcnZhbBgLIAEoCRITCgtwcm9kdWN0TmFtZRgMIAEoCRIQCghjdXJyZW5jeRgNIAEoCRITCgtzcGxpdFN0YXR1cxgOIAEoCRITCgtpc0FsbG9jYXRlZBgPIAEoCBIRCglpc0FwcGxpZWQYECABKAgSFQoNdW5ibGVuZGVkQ29zdBgRIAEoARIRCglzb3VyY2VGZWUYEiABKAkSEgoKbGFzdFVwZGF0ZRgTIAEoCSIiChFSZXN0b3JlRmVlUmVxdWVzdBINCgVmZWVJZBgBIAEoCSJRChZHZXRDb3N0R3JvdXBGZWVSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0VGltZRgCIAEoCRIPCgdlbmRUaW1lGAMgASgJImYKB0ZlZUl0ZW0SDgoGdmVuZG9yGAEgASgJEg0KBW1vbnRoGAIgASgJEg8KB3Byb2R1Y3QYAyABKAkSDwoHYWNjb3VudBgEIAEoCRIMCgR0eXBlGAUgASgJEgwKBGNvc3QYBiABKAEiSQoJQWxsb2NhdG9yEgwKBHR5cGUYASABKAkSDQoFdmFsdWUYAiABKAkSDwoHZm9ybXVsYRgDIAEoCRIOCgZtb250aHMYBCABKAMiaAoIQ3JpdGVyaWESMAoDYW5kGAEgAygLMiMuYmx1ZWFwaS5jb3Zlci52MS5Dcml0ZXJpYS5BbmRFbnRyeRoqCghBbmRFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIqICChRDb3N0QWxsb2NhdG9yRGV0YWlscxIKCgJpZBgBIAEoCRIQCghjYXRlZ29yeRgCIAEoCRISCgpleHBpcmF0aW9uGAMgASgDEhIKCnN0YXJ0TW9udGgYBCABKAkSFgoOZGVmYXVsdEFjY291bnQYBSABKAkSMQoIY3JpdGVyaWEYBiABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Db21iaW5hdGlvbnMSLgoJYWxsb2NhdG9yGAcgAygLMhsuYmx1ZWFwaS5jb3Zlci52MS5BbGxvY2F0b3ISEgoKY3JlYXRlVGltZRgIIAEoCRISCgp1cGRhdGVUaW1lGAkgASgJEgwKBG5hbWUYCiABKAkSEwoLZGVzY3JpcHRpb24YCyABKAki+gEKFENvc3RBbGxvY2F0b3JSZXF1ZXN0EgoKAmlkGAEgASgJEhAKCGNhdGVnb3J5GAIgASgJEhIKCmV4cGlyYXRpb24YAyABKAMSEgoKc3RhcnRNb250aBgEIAEoCRIWCg5kZWZhdWx0QWNjb3VudBgFIAEoCRIxCghjcml0ZXJpYRgGIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkNvbWJpbmF0aW9ucxIuCglhbGxvY2F0b3IYByADKAsyGy5ibHVlYXBpLmNvdmVyLnYxLkFsbG9jYXRvchIMCgRuYW1lGAggASgJEhMKC2Rlc2NyaXB0aW9uGAkgASgJIhcKFUxpc3RBbGxvY2F0b3JzUmVxdWVzdCLwAQoWQ3JlYXRlQWxsb2NhdG9yUmVxdWVzdBIQCghjYXRlZ29yeRgBIAEoCRISCgpleHBpcmF0aW9uGAIgASgDEhIKCnN0YXJ0TW9udGgYAyABKAkSFgoOZGVmYXVsdEFjY291bnQYBCABKAkSMQoIY3JpdGVyaWEYBSABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Db21iaW5hdGlvbnMSLgoJYWxsb2NhdG9yGAYgAygLMhsuYmx1ZWFwaS5jb3Zlci52MS5BbGxvY2F0b3ISDAoEbmFtZRgHIAEoCRITCgtkZXNjcmlwdGlvbhgIIAEoCSIyCh5HZXRBbGxvY2F0aW9uQXR0cmlidXRlc1JlcXVlc3QSEAoIY2F0ZWdvcnkYASABKAkisQEKH0dldEFsbG9jYXRpb25BdHRyaWJ1dGVzUmVzcG9uc2USWAoJYXR0cmlidXRlGAEgAygLMkUuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGxvY2F0aW9uQXR0cmlidXRlc1Jlc3BvbnNlLkFsbG9jYXRpb25BdHRyaWJ1dGUaNAoTQWxsb2NhdGlvbkF0dHJpYnV0ZRIMCgR0eXBlGAEgASgJEg8KB3NlcnZpY2UYAiADKAkiPgobR2V0QWxsb2NhdGlvblNvdXJjZXNSZXF1ZXN0EgwKBHR5cGUYASABKAkSEQoJYWNjb3VudElkGAIgASgJIusBChxHZXRBbGxvY2F0aW9uU291cmNlc1Jlc3BvbnNlElAKBnNvdXJjZRgBIAMoCzJALmJsdWVhcGkuY292ZXIudjEuR2V0QWxsb2NhdGlvblNvdXJjZXNSZXNwb25zZS5BbGxvY2F0aW9uU291cmNlcxIrCgd0YWdEYXRhGAIgAygLMhouYmx1ZWFwaS5hcGkuY292ZXIuVGFnRGF0YRpMChFBbGxvY2F0aW9uU291cmNlcxITCgthY2NvdW50TmFtZRgBIAEoCRIPCgdzZXJ2aWNlGAIgASgJEhEKCWNvc3RHcm91cBgDIAEoCSIkChZEZWxldGVBbGxvY2F0b3JSZXF1ZXN0EgoKAmlkGAEgASgJIkcKHFByb3h5Q3JlYXRlQ29tcGxldGlvblJlcXVlc3QSJwoGcGFyYW1zGAEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCItCh1Qcm94eUNyZWF0ZUNvbXBsZXRpb25SZXNwb25zZRIMCgRsaW5lGAEgASgJItQEChNBY2NvdW50VXNhZ2VEZXRhaWxzEgoKAmlkGAEgASgJEg0KBW9yZ0lkGAIgASgJEg4KBnZlbmRvchgDIAEoCRIPCgdhY2NvdW50GAQgASgJEgwKBGRhdGUYBSABKAkSEwoLcHJvZHVjdENvZGUYBiABKAkSEwoLc2VydmljZUNvZGUYByABKAkSDgoGcmVnaW9uGAggASgJEgwKBHpvbmUYCSABKAkSEQoJdXNhZ2VUeXBlGAogASgJEhQKDGluc3RhbmNlVHlwZRgLIAEoCRIRCglvcGVyYXRpb24YDCABKAkSEQoJaW52b2ljZUlkGA0gASgJEhMKC2Rlc2NyaXB0aW9uGA4gASgJEhIKCnJlc291cmNlSWQYDyABKAkSDAoEdGFncxgQIAEoCRIWCg5jb3N0Q2F0ZWdvcmllcxgRIAEoCRITCgt1c2FnZUFtb3VudBgSIAEoARIZChF0cnVlVW5ibGVuZGVkQ29zdBgTIAEoARIVCg11bmJsZW5kZWRDb3N0GBQgASgBEhUKDWVmZmVjdGl2ZUNvc3QYFSABKAESFQoNYW1vcnRpemVkQ29zdBgWIAEoARIaChJwdWJsaWNPbkRlbWFuZENvc3QYFyABKAESGwoTdW51c2VkQW1vcnRpemVkQ29zdBgYIAEoARISCgpsYXN0VXBkYXRlGBkgASgJEhMKC3NwbGl0U3RhdHVzGBogASgJEhMKC2lzQWxsb2NhdGVkGBsgASgIEhEKCWlzQXBwbGllZBgcIAEoCBIOCgZzb3VyY2UYHSABKAkiPQoXTGlzdEFjY291bnRVc2FnZVJlcXVlc3QSEQoJc3RhcnREYXRlGAEgASgJEg8KB2VuZERhdGUYAiABKAkiMgoaUmVzdG9yZUFjY291bnRVc2FnZVJlcXVlc3QSFAoMYWxsb2NhdGlvbklkGAEgASgJIiMKFVJlc3RvcmVTYXZpbmdzUmVxdWVzdBIKCgJpZBgBIAEoCSK6AgoOU2F2aW5nc0RldGFpbHMSCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSDgoGdmVuZG9yGAMgASgJEg8KB2FjY291bnQYBCABKAkSDQoFbW9udGgYBSABKAkSDAoEdHlwZRgGIAEoCRILCgNhcm4YByABKAkSEwoLcHJvZHVjdENvZGUYCCABKAkSEgoKb2ZmZXJDbGFzcxgJIAEoCRIQCghvbmRlbWFuZBgKIAEoARIVCg1lZmZlY3RpdmVDb3N0GAsgASgBEg8KB3NhdmluZ3MYDCABKAESEwoLc3BsaXRTdGF0dXMYDSABKAkSEwoLaXNBbGxvY2F0ZWQYDiABKAgSEQoJaXNBcHBsaWVkGA8gASgIEg4KBnNvdXJjZRgQIAEoCRISCgpsYXN0VXBkYXRlGBEgASgJImoKHUdldENvc3RHcm91cEFsbG9jYXRpb25SZXF1ZXN0EhAKCGNhdGVnb3J5GAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEhEKCXN0YXJ0RGF0ZRgDIAEoCRIPCgdlbmREYXRlGAQgASgJIoABCg5BbGxvY2F0aW9uSXRlbRIOCgZ2ZW5kb3IYASABKAkSDQoFbW9udGgYAiABKAkSDwoHcHJvZHVjdBgDIAEoCRIPCgdhY2NvdW50GAQgASgJEgwKBHR5cGUYBSABKAkSDAoEY29zdBgGIAEoARIRCgljb3N0R3JvdXAYByABKAkiXwoXUHJvY2Vzc0F1dGgwVXNlclJlcXVlc3QSDgoGc291cmNlGAEgASgJEhIKCmN1c3RvbWVySWQYAiABKAkSDQoFZW1haWwYAyABKAkSEQoJc3VidXNlcklkGAQgASgJIjAKGFByb2Nlc3NBdXRoMFVzZXJSZXNwb25zZRIUCgxpc0F1dGhvcml6ZWQYASABKAgilQIKCkRhdGFBY2Nlc3MSDgoGdGFyZ2V0GAEgASgJEg0KBW9yZ0lkGAIgASgJEjEKCmdjcE9wdGlvbnMYAyABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5HY3BPcHRpb25zEjUKDGF6dXJlT3B0aW9ucxgEIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkF6dXJlT3B0aW9ucxIxCgphd3NPcHRpb25zGAUgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuQXdzT3B0aW9ucxITCgthY2NvdW50VHlwZRgGIAEoCRISCgpsYXN0VXBkYXRlGAcgASgJEhIKCmNyZWF0ZVRpbWUYCCABKAkSDgoGdmVuZG9yGAkgASgJIu0BChlSZWdpc3RlckRhdGFBY2Nlc3NSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIOCgZ0YXJnZXQYAiABKAkSEwoLYWNjb3VudFR5cGUYAyABKAkSMQoKZ2NwT3B0aW9ucxgEIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLkdjcE9wdGlvbnMSNQoMYXp1cmVPcHRpb25zGAUgASgLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQXp1cmVPcHRpb25zEjEKCmF3c09wdGlvbnMYBiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5Bd3NPcHRpb25zIusBChdVcGRhdGVEYXRhQWNjZXNzUmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGdmVuZG9yGAIgASgJEjEKCmdjcE9wdGlvbnMYAyABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5HY3BPcHRpb25zEjUKDGF6dXJlT3B0aW9ucxgEIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkF6dXJlT3B0aW9ucxIxCgphd3NPcHRpb25zGAUgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuQXdzT3B0aW9ucxITCgthY2NvdW50VHlwZRgGIAEoCSIXChVMaXN0RGF0YUFjY2Vzc1JlcXVlc3QiIQofTGlzdFVucmVnaXN0ZXJlZEFjY291bnRzUmVxdWVzdCJxCiBMaXN0VW5yZWdpc3RlcmVkQWNjb3VudHNSZXNwb25zZRINCgVvcmdJZBgBIAEoCRI+ChF1bnJlZ2lzdGVyZWRBY2N0cxgCIAMoCzIjLmJsdWVhcGkuY292ZXIudjEuVW5yZWdpc3RlcmVkQWNjdHMiVAoRVW5yZWdpc3RlcmVkQWNjdHMSCgoCaWQYASABKAkSDwoHcGF5ZXJJZBgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEgoKbGFzdFVwZGF0ZRgEIAEoCSJ8ChVCaWxsaW5nQWNjb3VudFJlcXVlc3QSEQoJYmlsbGluZ0lkGAEgASgJEhEKCWRhdGFzZXRJZBgCIAEoCRIVCg1kYXRhc2V0UmVnaW9uGAMgASgJEhEKCXByb2plY3RJZBgEIAEoCRITCgtiaWxsaW5nTmFtZRgFIAEoCSJUCh1HZXRBbmREZWxldGVEYXRhQWNjZXNzUmVxdWVzdBIOCgZ0YXJnZXQYASABKAkSDgoGdmVuZG9yGAIgASgJEhMKC2FjY291bnRUeXBlGAMgASgJImEKIkFkZFBhcnRuZXJDZW50ZXJDcmVkZW50aWFsc1JlcXVlc3QSEQoJYWNjb3VudElkGAEgASgJEhUKDWFwcGxpY2F0aW9uSWQYAiABKAkSEQoJc2VjcmV0S2V5GAMgASgJIiUKFEFkZE1wblNldHRpbmdSZXF1ZXN0Eg0KBW1wbklkGAEgASgJItYBChxHZXRDb3N0R3JvdXBBdHRyaWJ1dGVSZXF1ZXN0Eg4KBnZlbmRvchgBIAEoCRIVCg1hdHRyaWJ1dGVUeXBlGAIgASgJEhMKC2Nvc3RHcm91cElkGAMgASgJEj0KFGV4aXN0aW5nQ29tYmluYXRpb25zGAQgAygLMh8uYmx1ZWFwaS5hcGkuY292ZXIuQ29tYmluYXRpb25zEjsKEmN1cnJlbnRDb21iaW5hdGlvbhgFIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLkNvbWJpbmF0aW9ucyJ3Ch1HZXRDb3N0R3JvdXBBdHRyaWJ1dGVSZXNwb25zZRIpCgZyZXN1bHQYASADKAsyGS5ibHVlYXBpLmFwaS5jb3Zlci5SZXN1bHQSKwoHdGFnRGF0YRgCIAMoCzIaLmJsdWVhcGkuYXBpLmNvdmVyLlRhZ0RhdGEiJgoUR2V0Q2F0ZWdvcmllc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJIkYKFUdldENhdGVnb3JpZXNSZXNwb25zZRItCghjYXRlZ29yeRgBIAMoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLkNhdGVnb3J5IhIKEEdldEFsZXJ0c1JlcXVlc3QiRAoRR2V0QWxlcnRzUmVzcG9uc2USLwoJYWxlcnREYXRhGAEgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnREYXRhIoYBChJDcmVhdGVBbGVydFJlcXVlc3QSDAoEbmFtZRgBIAEoCRITCgtmaXhlZEFtb3VudBgCIAEoAhISCgpwZXJjZW50YWdlGAMgASgCEhMKC2dyYW51bGFyaXR5GAQgASgJEhIKCmNvc3RHcm91cHMYBSADKAkSEAoIY2hhbm5lbHMYBiADKAkiRgoTQ3JlYXRlQWxlcnRSZXNwb25zZRIvCglhbGVydERhdGEYASABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5BbGVydERhdGEiJAoWR2V0QWxlcnREZXRhaWxzUmVxdWVzdBIKCgJpZBgBIAEoCSJKChdHZXRBbGVydERldGFpbHNSZXNwb25zZRIvCglhbGVydERhdGEYASABKAsyHC5ibHVlYXBpLmFwaS5jb3Zlci5BbGVydERhdGEiIAoSRGVsZXRlQWxlcnRSZXF1ZXN0EgoKAmlkGAEgASgJIiEKE0RlbGV0ZUFsZXJ0UmVzcG9uc2USCgoCaWQYASABKAkimQEKGVVwZGF0ZUFsZXJ0RGV0YWlsc1JlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtmaXhlZEFtb3VudBgDIAEoAhISCgpwZXJjZW50YWdlGAQgASgCEhMKC2dyYW51bGFyaXR5GAUgASgJEhIKCmNvc3RHcm91cHMYBiADKAkSEAoIY2hhbm5lbHMYByADKAkiTQoaVXBkYXRlQWxlcnREZXRhaWxzUmVzcG9uc2USLwoJYWxlcnREYXRhGAEgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnREYXRhIiIKEkdldENoYW5uZWxzUmVxdWVzdBIMCgR0eXBlGAEgASgJIkoKE0dldENoYW5uZWxzUmVzcG9uc2USMwoLY2hhbm5lbERhdGEYASABKAsyHi5ibHVlYXBpLmFwaS5jb3Zlci5DaGFubmVsRGF0YSJGChRDcmVhdGVDaGFubmVsUmVxdWVzdBIMCgRuYW1lGAEgASgJEgwKBHR5cGUYAiABKAkSEgoKd2ViaG9va1VybBgDIAEoCSJMChVDcmVhdGVDaGFubmVsUmVzcG9uc2USMwoLY2hhbm5lbERhdGEYASABKAsyHi5ibHVlYXBpLmFwaS5jb3Zlci5DaGFubmVsRGF0YSImChhHZXRDaGFubmVsRGV0YWlsc1JlcXVlc3QSCgoCaWQYASABKAkiUAoZR2V0Q2hhbm5lbERldGFpbHNSZXNwb25zZRIzCgtjaGFubmVsRGF0YRgBIAEoCzIeLmJsdWVhcGkuYXBpLmNvdmVyLkNoYW5uZWxEYXRhIiIKFERlbGV0ZUNoYW5uZWxSZXF1ZXN0EgoKAmlkGAEgASgJIiMKFURlbGV0ZUNoYW5uZWxSZXNwb25zZRIKCgJpZBgBIAEoCSJZChtVcGRhdGVDaGFubmVsRGV0YWlsc1JlcXVlc3QSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIMCgR0eXBlGAMgASgJEhIKCndlYmhvb2tVcmwYBCABKAkiUwocVXBkYXRlQ2hhbm5lbERldGFpbHNSZXNwb25zZRIzCgtjaGFubmVsRGF0YRgBIAEoCzIeLmJsdWVhcGkuYXBpLmNvdmVyLkNoYW5uZWxEYXRhIs8BCiFHZXREaXNjb3VudFJlY29tbWVuZGF0aW9uc1JlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSLwoJYXdzSW5wdXRzGAIgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuQXdzSW5wdXRzEjMKC2F6dXJlSW5wdXRzGAMgASgLMh4uYmx1ZWFwaS5hcGkuY292ZXIuQXp1cmVJbnB1dHMSLwoJZ2NwSW5wdXRzGAQgASgLMhwuYmx1ZWFwaS5hcGkuY292ZXIuR2NwSW5wdXRzIokCCiJHZXREaXNjb3VudFJlY29tbWVuZGF0aW9uc1Jlc3BvbnNlEkkKEmF3c1JlY29tbWVuZGF0aW9ucxgBIAEoCzItLmJsdWVhcGkuYXBpLmNvdmVyLkF3c0Rpc2NvdW50UmVjb21tZW5kYXRpb25zEk0KFGF6dXJlUmVjb21tZW5kYXRpb25zGAIgASgLMi8uYmx1ZWFwaS5hcGkuY292ZXIuQXp1cmVEaXNjb3VudFJlY29tbWVuZGF0aW9ucxJJChJnY3BSZWNvbW1lbmRhdGlvbnMYAyABKAsyLS5ibHVlYXBpLmFwaS5jb3Zlci5HY3BEaXNjb3VudFJlY29tbWVuZGF0aW9ucyJXChxHZXRBbm9tYWx5aW5Db3N0R3JvdXBSZXF1ZXN0EhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0RGF0ZRgCIAEoCRIPCgdlbmREYXRlGAMgASgJIuEBCgtBbm9tYWx5RGF0YRIPCgdhY2NvdW50GAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEg4KBnZlbmRvchgDIAEoCRIPCgdwcm9kdWN0GAQgASgJEgwKBGRhdGUYBSABKAkSEQoJdG90YWxDb3N0GAYgASgCEhEKCWlzQW5vbWFseRgHIAEoCBISCgpsb3dlckxpbWl0GAggASgCEhIKCnVwcGVyTGltaXQYCSABKAISEwoLYW5vbWFseUNvc3QYCiABKAISGgoSYW5vbWFseVByb2JhYmlsaXR5GAsgASgCIoUBCiRDcmVhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QSEwoLZnJlcXVlbmNpZXMYASADKAMSEgoKY29zdEdyb3VwcxgCIAMoCRIUCgxhbGVydEVuYWJsZWQYAyABKAgSEAoIY2hhbm5lbHMYBCADKAkSDAoEbmFtZRgFIAEoCSI2CihNYW5pcHVsYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0EgoKAmlkGAEgASgJIpEBCiRVcGRhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QSCgoCaWQYASABKAkSFAoMYWxlcnRFbmFibGVkGAIgASgIEhAKCGNoYW5uZWxzGAMgAygJEhMKC2ZyZXF1ZW5jaWVzGAQgAygDEhIKCmNvc3RHcm91cHMYBSADKAkSDAoEbmFtZRgGIAEoCSLpAQoXRGlzY291bnRFeHBpcnlBbGVydERhdGESCgoCaWQYASABKAkSDQoFb3JnSWQYAiABKAkSFAoMYWxlcnRFbmFibGVkGAMgASgIEhMKC2ZyZXF1ZW5jaWVzGAQgAygDEjUKCmNvc3RHcm91cHMYBSADKAsyIS5ibHVlYXBpLmFwaS5jb3Zlci5BbGVydENvc3RHcm91cBIPCgdkZXRhaWxzGAYgASgJEjIKCGNoYW5uZWxzGAcgASgLMiAuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnRDaGFubmVscxIMCgRuYW1lGAggASgJIiQKIkxpc3REaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QihQEKGUNyZWF0ZUFub21hbHlBbGVydFJlcXVlc3QSDAoEbmFtZRgBIAEoCRIUCgxhbGVydEVuYWJsZWQYAiABKAgSEQoJZnJlcXVlbmN5GAMgASgJEhMKC2Nvc3RHcm91cElkGAQgASgJEhwKFG5vdGlmaWNhdGlvbkNoYW5uZWxzGAUgAygJIisKHU1hbmlwdWxhdGVBbm9tYWx5QWxlcnRSZXF1ZXN0EgoKAmlkGAEgASgJItABChBBbm9tYWx5QWxlcnREYXRhEgoKAmlkGAEgASgJEg0KBW9yZ0lkGAIgASgJEgwKBG5hbWUYAyABKAkSFAoMYWxlcnRFbmFibGVkGAQgASgIEhEKCWZyZXF1ZW5jeRgFIAEoCRI2Cgtjb3N0R3JvdXBJZBgGIAEoCzIhLmJsdWVhcGkuYXBpLmNvdmVyLkFsZXJ0Q29zdEdyb3VwEjIKCGNoYW5uZWxzGAcgASgLMiAuYmx1ZWFwaS5hcGkuY292ZXIuQWxlcnRDaGFubmVscyIZChdMaXN0QW5vbWFseUFsZXJ0UmVxdWVzdCKRAQoZVXBkYXRlQW5vbWFseUFsZXJ0UmVxdWVzdBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhQKDGFsZXJ0RW5hYmxlZBgDIAEoCBIcChRub3RpZmljYXRpb25DaGFubmVscxgEIAMoCRIRCglmcmVxdWVuY3kYBSABKAkSEwoLY29zdEdyb3VwSWQYBiABKAkiiQEKFlJlZ2lzdGVyTmV3VXNlclJlcXVlc3QSDQoFZW1haWwYASABKAkSEAoIcGFzc3dvcmQYAiABKAkSDAoEbmFtZRgDIAEoCRIPCgdjb21wYW55GAQgASgJEgwKBHJvbGUYBSABKAkSDgoGYW1vdW50GAYgASgJEhEKCWludGVudGlvbhgHIAEoCSIvChdSZWdpc3Rlck5ld1VzZXJSZXNwb25zZRIUCgxpc0F1dGhvcml6ZWQYASABKAgiJgoVR2V0VXNlclByb2ZpbGVSZXF1ZXN0Eg0KBWVtYWlsGAEgASgJIs4BChZHZXRVc2VyUHJvZmlsZVJlc3BvbnNlEhkKEWhhc0NyZWF0ZWRQcm9maWxlGAEgASgIEgwKBG5hbWUYAiABKAkSDAoEcm9sZRgDIAEoCRINCgV1c2FnZRgEIAEoCRIRCglpbnRlbnRpb24YBSABKAkSEwoLY29tcGFueU5hbWUYBiABKAkSFAoMZW1haWxBZGRyZXNzGAcgASgJEhIKCmxpbmtTb3VyY2UYCCABKAkSHAoUaGFzU3Vic2NyaWJlZFVwZGF0ZXMYCSABKAgirgEKGFVwZGF0ZVVzZXJQcm9maWxlUmVxdWVzdBINCgVlbWFpbBgBIAEoCRIMCgRuYW1lGAIgASgJEgwKBHJvbGUYAyABKAkSDQoFdXNhZ2UYBCABKAkSEQoJaW50ZW50aW9uGAUgASgJEhMKC2NvbXBhbnlOYW1lGAYgASgJEhIKCmxpbmtTb3VyY2UYByABKAkSHAoUaGFzU3Vic2NyaWJlZFVwZGF0ZXMYCCABKAgirwEKGVVwZGF0ZVVzZXJQcm9maWxlUmVzcG9uc2USDQoFZW1haWwYASABKAkSDAoEbmFtZRgCIAEoCRIMCgRyb2xlGAMgASgJEg0KBXVzYWdlGAQgASgJEhEKCWludGVudGlvbhgFIAEoCRITCgtjb21wYW55TmFtZRgGIAEoCRISCgpsaW5rU291cmNlGAcgASgJEhwKFGhhc1N1YnNjcmliZWRVcGRhdGVzGAggASgIIkgKEkxpc3RCdWRnZXRzUmVxdWVzdBIfChdpbmNsdWRlU3BlbmRBbmRGb3JlY2FzdBgBIAEoCBIRCgljb3N0R3JvdXAYAiABKAkiSAoTTGlzdEJ1ZGdldHNSZXNwb25zZRIxCgpidWRnZXREYXRhGAEgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuQnVkZ2V0RGF0YSIeChBHZXRCdWRnZXRSZXF1ZXN0EgoKAmlkGAEgASgJIkYKEUdldEJ1ZGdldFJlc3BvbnNlEjEKCmJ1ZGdldERhdGEYASABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5CdWRnZXREYXRhIkgKE0NyZWF0ZUJ1ZGdldFJlcXVlc3QSMQoKYnVkZ2V0RGF0YRgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLkJ1ZGdldERhdGEiSQoUQ3JlYXRlQnVkZ2V0UmVzcG9uc2USMQoKYnVkZ2V0RGF0YRgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLkJ1ZGdldERhdGEiIQoTRGVsZXRlQnVkZ2V0UmVxdWVzdBIKCgJpZBgBIAEoCSIiChREZWxldGVCdWRnZXRSZXNwb25zZRIKCgJpZBgBIAEoCSJUChNVcGRhdGVCdWRnZXRSZXF1ZXN0EgoKAmlkGAEgASgJEjEKCmJ1ZGdldERhdGEYAiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5CdWRnZXREYXRhIkkKFFVwZGF0ZUJ1ZGdldFJlc3BvbnNlEjEKCmJ1ZGdldERhdGEYASABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5CdWRnZXREYXRhIksKLlJlc29sdmVBV1NNYXJrZXRwbGFjZVRva2VuRm9yT25ib2FyZGluZ1JlcXVlc3QSGQoRcmVnaXN0cmF0aW9uVG9rZW4YASABKAkiYQovUmVzb2x2ZUFXU01hcmtldHBsYWNlVG9rZW5Gb3JPbmJvYXJkaW5nUmVzcG9uc2USGgoSaXNBbGxvd2VkVG9PbmJvYXJkGAEgASgIEhIKCmN1c3RvbWVySWQYAiABKAkiJgokR2V0Q3VzdG9tZXJTdWJzY3JpcHRpb25TdGF0dXNSZXF1ZXN0IvIBCiVHZXRDdXN0b21lclN1YnNjcmlwdGlvblN0YXR1c1Jlc3BvbnNlEhYKDmRhdGVSZWdpc3RlcmVkGAEgASgJEhoKEnN1YnNjcmlwdGlvbkV4cGlyeRgCIAEoCRIQCghkYXlzTGVmdBgDIAEoBRIUCgxpc1N1YnNjcmliZWQYBCABKAgSEQoJaXNFeHBpcmVkGAUgASgIEgwKBHBsYW4YBiABKAkSDgoGYW1vdW50GAcgASgJEhUKDXBheW1lbnRPcHRpb24YCCABKAkSFQoNcGF5bWVudE1ldGhvZBgJIAEoCRIOCgZjcmVkaXQYCiABKAEiswEKFkNyZWF0ZVByb2ZpbGluZ1JlcXVlc3QSDAoEbmFtZRgBIAEoCRIMCgRyb2xlGAIgASgJEg0KBXVzYWdlGAMgASgJEhEKCWludGVudGlvbhgEIAEoCRITCgtjb21wYW55TmFtZRgFIAEoCRIUCgxlbWFpbEFkZHJlc3MYBiABKAkSEgoKbGlua1NvdXJjZRgHIAEoCRIcChRoYXNTdWJzY3JpYmVkVXBkYXRlcxgIIAEoCCIZChdDcmVhdGVQcm9maWxpbmdSZXNwb25zZSI5ChtBZGRJbmZvdG9NYXJrZXRwbGFjZVJlcXVlc3QSGgoSY3VzdG9tZXJJZGVudGlmaWVyGAEgASgJIh4KHEFkZEluZm90b01hcmtldHBsYWNlUmVzcG9uc2UieAoXR2V0UmVwb3J0U3VtbWFyeVJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEQoJc3RhcnREYXRlGAIgASgJEg8KB2VuZERhdGUYAyABKAkSEgoKcmVwb3J0VHlwZRgEIAEoCRIQCghjdXJyZW5jeRgFIAEoCSKuAgoYR2V0UmVwb3J0U3VtbWFyeVJlc3BvbnNlEhMKC2Nvc3RHcm91cElkGAEgASgJEhEKCXN0YXJ0RGF0ZRgCIAEoCRIPCgdlbmREYXRlGAMgASgJEj0KEGV4ZWN1dGl2ZVN1bW1hcnkYBCABKAsyIy5ibHVlYXBpLmFwaS5jb3Zlci5FeGVjdXRpdmVTdW1tYXJ5El8KIW9wdGltaXphdGlvblJlY29tbWVuZGF0aW9uU3VtbWFyeRgFIAEoCzI0LmJsdWVhcGkuYXBpLmNvdmVyLk9wdGltaXphdGlvblJlY29tbWVuZGF0aW9uU3VtbWFyeRI5Cg5zYXZpbmdzU3VtbWFyeRgGIAEoCzIhLmJsdWVhcGkuYXBpLmNvdmVyLlNhdmluZ3NTdW1tYXJ5IqoCChlMaXN0UmVjb21tZW5kYXRpb25SZXF1ZXN0EhMKC2Nvc3Rncm91cElkGAEgASgJEhYKDmRhdGVSYW5nZVN0YXJ0GAIgASgJEhQKDGRhdGVSYW5nZUVuZBgDIAEoCRIOCgZ2ZW5kb3IYBCABKAkSDgoGc291cmNlGAUgASgJEhoKEm9wdGltaXphdGlvblN0YXR1cxgHIAEoCRIMCgR0eXBlGAggASgJEg4KBnNwVHlwZRgJIAEoCRIRCglyYXRlTW9kZWwYCiABKAkSFQoNcGF5bWVudE9wdGlvbhgLIAEoCRIMCgR0ZXJtGAwgASgJEg8KB3NlcnZpY2UYDSABKAkSFQoNb2ZmZXJpbmdDbGFzcxgOIAEoCRIQCghjdXJyZW5jeRgPIAEoCSLVAgobTGlzdFJlY29tbWVuZGF0aW9uVjJSZXF1ZXN0EhMKC2Nvc3Rncm91cElkGAEgASgJEhYKDmRhdGVSYW5nZVN0YXJ0GAIgASgJEhQKDGRhdGVSYW5nZUVuZBgDIAEoCRJQCgxyYXRlU2V0dGluZ3MYBCABKAsyOi5ibHVlYXBpLmNvdmVyLnYxLkxpc3RSZWNvbW1lbmRhdGlvblYyUmVxdWVzdC5SYXRlU2V0dGluZ3MSEAoIY3VycmVuY3kYBSABKAkajgEKDFJhdGVTZXR0aW5ncxIOCgZzcFR5cGUYASABKAkSEQoJcmF0ZU1vZGVsGAIgASgJEhUKDXBheW1lbnRPcHRpb24YAyABKAkSDAoEdGVybRgEIAEoCRIPCgdzZXJ2aWNlGAUgASgJEhUKDW9mZmVyaW5nQ2xhc3MYBiABKAkSDgoGdmVuZG9yGAcgASgJItoGChpMaXN0UmVjb21tZW5kYXRpb25SZXNwb25zZRIYChByZWNvbW1lbmRhdGlvbklkGAEgASgJEhYKDnJlY29tbWVuZGF0aW9uGAIgASgJEg8KB3NlcnZpY2UYAyABKAkSHgoWZXN0aW1hdGVkTW9udGhseVNhdmluZxgEIAEoARIcChRlc3RpbWF0ZWRNb250aGx5Q29zdBgFIAEoARIPCgdzY29yaW5nGAYgASgJEg4KBnZlbmRvchgHIAEoCRIQCghjYXRlZ29yeRgIIAEoCRIaChJvcHRpbWl6YXRpb25TdGF0dXMYCSABKAkSFAoMZXJyb3JNZXNzYWdlGAogASgJEhEKCWFjY291bnRJZBgLIAEoCRITCgthY2NvdW50TmFtZRgMIAEoCRIUCgxpbnN0YW5jZU5hbWUYDSABKAkSEgoKaW5zdGFuY2VJZBgOIAEoCRIUCgxpbnN0YW5jZVR5cGUYDyABKAkSDgoGcmVnaW9uGBAgASgJEhIKCmNvbW1pdG1lbnQYESABKAESDgoGc3BUeXBlGBIgASgJEhgKEG51bWJlclRvUHVyY2hhc2UYEyABKAMSDgoGcmlUeXBlGBQgASgJEgwKBHR5cGUYFSABKAkSDgoGc291cmNlGBYgASgJEhcKD2RhdGVSZWNvbW1lbmRlZBgXIAEoCRIbChNyZWNvbW1lbmRhdGlvbkdyb3VwGBggASgJEhUKDWxhc3RVcGRhdGVkQXQYGSABKAkSUwoOcHVyY2hhc2VPcHRpb24YGiABKAsyOy5ibHVlYXBpLmNvdmVyLnYxLkxpc3RSZWNvbW1lbmRhdGlvblJlc3BvbnNlLlB1cmNoYXNlT3B0aW9uGs8BCg5QdXJjaGFzZU9wdGlvbhIOCgZzcFR5cGUYASABKAkSFQoNb2ZmZXJpbmdDbGFzcxgCIAEoCRISCgpjb21taXRtZW50GAMgASgBEhgKEG51bWJlclRvUHVyY2hhc2UYBCABKAMSFQoNcGF5bWVudE9wdGlvbhgFIAEoCRIMCgR0ZXJtGAYgASgJEhkKEWN1cnJlbnRHZW5lcmF0aW9uGAcgASgIEhMKC3NlcnZpY2VUeXBlGAggASgJEhMKC3VwZnJvbnRDb3N0GAkgASgBIlEKGEdldFJlY29tbWVuZGF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRITCgtjb3N0R3JvdXBJZBgCIAEoCRIUCgxwZXJpb2RPcHRpb24YAyABKAkiXgoZR2V0UmVjb21tZW5kYXRpb25SZXNwb25zZRJBChJyZWNvbW1lbmRhdGlvbkRhdGEYASABKAsyJS5ibHVlYXBpLmFwaS5jb3Zlci5BV1NSZWNvbW1lbmRhdGlvbnMiRAoaRXhlY3V0ZU9wdGltaXphdGlvblJlcXVlc3QSGAoQcmVjb21tZW5kYXRpb25JZBgBIAEoCRIMCgR0eXBlGAIgASgJIpQDChtFeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2USTAoJYXdzT3B0aW9uGAEgASgLMjcuYmx1ZWFwaS5jb3Zlci52MS5FeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2UuQVdTT3B0aW9uSAASTAoJZ2NwT3B0aW9uGAIgASgLMjcuYmx1ZWFwaS5jb3Zlci52MS5FeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2UuR0NQT3B0aW9uSAASVgoOYXp1cmVDc3BPcHRpb24YAyABKAsyPC5ibHVlYXBpLmNvdmVyLnYxLkV4ZWN1dGVPcHRpbWl6YXRpb25SZXNwb25zZS5BenVyZUNTUE9wdGlvbkgAGlgKCUFXU09wdGlvbhIaChJhcHByb3ZlVGVtcGxhdGVVcmwYASABKAkSGAoQcmVjb21tZW5kYXRpb25JZBgCIAEoCRIVCg1jdXJyZW50U3RhdHVzGAMgASgJGgsKCUdDUE9wdGlvbhoQCg5BenVyZUNTUE9wdGlvbkIICgZWZW5kb3IiIwoVTWFya0FzRXhlY3V0ZWRSZXF1ZXN0EgoKAmlkGAEgAygJIhgKFk1hcmtBc0V4ZWN1dGVkUmVzcG9uc2UiLwohVW5kb0V4ZWN1dGVkUmVjb21tZW5kYXRpb25SZXF1ZXN0EgoKAmlkGAEgAygJIiQKIlVuZG9FeGVjdXRlZFJlY29tbWVuZGF0aW9uUmVzcG9uc2UipwEKGk9wdGltaXphdGlvbkhpc3RvcnlSZXF1ZXN0EhMKC2Nvc3Rncm91cElkGAEgASgJEhYKDmRhdGVSYW5nZVN0YXJ0GAIgASgJEhQKDGRhdGVSYW5nZUVuZBgDIAEoCRIOCgZ2ZW5kb3IYBCABKAkSDgoGc291cmNlGAUgASgJEhQKDHBlcmlvZE9wdGlvbhgGIAEoCRIQCghjdXJyZW5jeRgHIAEoCSJ2ChtPcHRpbWl6YXRpb25IaXN0b3J5UmVzcG9uc2USVwodZXhlY3V0ZWRSZWNvbW1lbmRhdGlvbkRldGFpbHMYAiADKAsyMC5ibHVlYXBpLmFwaS5jb3Zlci5FeGVjdXRlZFJlY29tbWVuZGF0aW9uRGV0YWlscyJgCiFTZXRDb3N0R3JvdXBFdmVudEluZGljYXRvclJlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSDwoHYW5vbWFseRgCIAEoCBIVCg12aXN1YWxCdWlsZGVyGAMgASgIInQKIlNldENvc3RHcm91cEV2ZW50SW5kaWNhdG9yUmVzcG9uc2USEwoLY29zdEdyb3VwSWQYASABKAkSOQoOZXZlbnRJbmRpY2F0b3IYAiABKAsyIS5ibHVlYXBpLmFwaS5jb3Zlci5FdmVudEluZGljYXRvciJ7CiFTZXRDb3N0R3JvdXBBbm9tYWx5T3B0aW9uc1JlcXVlc3QSEwoLY29zdEdyb3VwSWQYASABKAkSEQoJdGhyZXNob2xkGAIgASgCEhQKDGlzUGVyY2VudGFnZRgDIAEoCBIYChBwYXN0RGF0YUluTW9udGhzGAQgASgDInQKIlNldENvc3RHcm91cEFub21hbHlPcHRpb25zUmVzcG9uc2USEwoLY29zdEdyb3VwSWQYASABKAkSOQoOYW5vbWFseU9wdGlvbnMYAiABKAsyIS5ibHVlYXBpLmFwaS5jb3Zlci5Bbm9tYWx5T3B0aW9ucyIvChhTZXRPcmdGaXNjYWxNb250aFJlcXVlc3QSEwoLZmlzY2FsTW9udGgYASABKAkiMAoZU2V0T3JnRmlzY2FsTW9udGhSZXNwb25zZRITCgtmaXNjYWxNb250aBgBIAEoCSIaChhHZXRPcmdGaXNjYWxNb250aFJlcXVlc3QiSAoZR2V0T3JnRmlzY2FsTW9udGhSZXNwb25zZRITCgtmaXNjYWxNb250aBgBIAEoCRIWCg5kYXRlUmVnaXN0ZXJlZBgCIAEoCSJbChtUcmFuc2Zlck9yZ2FuaXphdGlvblJlcXVlc3QSDgoGdGFyZ2V0GAEgASgJEg4KBnJlZ2lvbhgCIAEoCRINCgVwYXllchgDIAEoCRINCgVvcmdJZBgEIAEoCSIuChxUcmFuc2Zlck9yZ2FuaXphdGlvblJlc3BvbnNlEg4KBnRhcmdldBgBIAEoCSJFCiBVcGRhdGVDb3N0R3JvdXBDcmVhdGlvblVJUmVxdWVzdBIhChl1c2VOZXdDb3N0R3JvdXBDcmVhdGlvblVJGAEgASgIIlIKIVVwZGF0ZUNvc3RHcm91cENyZWF0aW9uVUlSZXNwb25zZRItCgh1c2VyRGF0YRgBIAEoCzIbLmJsdWVhcGkuYXBpLmNvdmVyLlVzZXJEYXRhIhYKFExpc3RVbml0VHlwZXNSZXF1ZXN0Ik4KFUxpc3RVbml0VHlwZXNSZXNwb25zZRI1Cgx1bml0Q29zdERhdGEYASADKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0Q29zdERhdGEitgEKFUNyZWF0ZVVuaXRUeXBlUmVxdWVzdBIQCgh1bml0TmFtZRgBIAEoCRIuCgl1bml0SXRlbXMYAiADKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0SXRlbRJGCg9zaGFyZWRSZXNvdXJjZXMYAyADKAsyLS5ibHVlYXBpLmFwaS5jb3Zlci5TaGFyZWRSZXNvdXJjZXNDb21iaW5hdGlvbhITCgtkZXNjcmlwdGlvbhgEIAEoCSJPChZDcmVhdGVVbml0VHlwZVJlc3BvbnNlEjUKDHVuaXRDb3N0RGF0YRgBIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRDb3N0RGF0YSIgChJHZXRVbml0VHlwZVJlcXVlc3QSCgoCaWQYASABKAkiTAoTR2V0VW5pdFR5cGVSZXNwb25zZRI1Cgx1bml0Q29zdERhdGEYASABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0Q29zdERhdGEiwgEKFVVwZGF0ZVVuaXRUeXBlUmVxdWVzdBIKCgJpZBgBIAEoCRIQCgh1bml0TmFtZRgCIAEoCRIuCgl1bml0SXRlbXMYAyADKAsyGy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0SXRlbRJGCg9zaGFyZWRSZXNvdXJjZXMYBCADKAsyLS5ibHVlYXBpLmFwaS5jb3Zlci5TaGFyZWRSZXNvdXJjZXNDb21iaW5hdGlvbhITCgtkZXNjcmlwdGlvbhgFIAEoCSJPChZVcGRhdGVVbml0VHlwZVJlc3BvbnNlEjUKDHVuaXRDb3N0RGF0YRgBIAEoCzIfLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRDb3N0RGF0YSIjChVEZWxldGVVbml0VHlwZVJlcXVlc3QSCgoCaWQYASABKAkiJAoWRGVsZXRlVW5pdFR5cGVSZXNwb25zZRIKCgJpZBgBIAEoCSJPChFNZXJnZVVuaXRzUmVxdWVzdBITCgt1bml0Q29zdElkcxgBIAMoCRIQCgh1bml0TmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCSJNChJNZXJnZVVuaXRzUmVzcG9uc2USNwoObWVyZ2VkVW5pdENvc3QYASABKAsyHy5ibHVlYXBpLmFwaS5jb3Zlci5Vbml0Q29zdERhdGEiGwoZTGlzdFN1Z2dlc3RlZFVuaXRzUmVxdWVzdCJWChpMaXN0U3VnZ2VzdGVkVW5pdHNSZXNwb25zZRI4Cg5zdWdnZXN0ZWRVbml0cxgBIAMoCzIgLmJsdWVhcGkuYXBpLmNvdmVyLlN1Z2dlc3RlZFVuaXQicgoaTWVyZ2VTdWdnZXN0ZWRVbml0c1JlcXVlc3QSGAoQc3VnZ2VzdGVkVW5pdElkcxgBIAMoCRITCgt1bml0SXRlbUlkcxgCIAMoCRIQCgh1bml0TmFtZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCSJdChtNZXJnZVN1Z2dlc3RlZFVuaXRzUmVzcG9uc2USPgoUbWVyZ2VkU3VnZ2VzdGVkVW5pdHMYASABKAsyIC5ibHVlYXBpLmFwaS5jb3Zlci5TdWdnZXN0ZWRVbml0IjoKHkNyZWF0ZVVuaXRGcm9tU3VnZ2VzdGVkUmVxdWVzdBIYChBzdWdnZXN0ZWRVbml0SWRzGAEgAygJIjYKH0NyZWF0ZVVuaXRGcm9tU3VnZ2VzdGVkUmVzcG9uc2USEwoLdW5pdENvc3RJZHMYASADKAkiHAoaTGlzdFNoYXJlZFJlc291cmNlc1JlcXVlc3QiZQobTGlzdFNoYXJlZFJlc291cmNlc1Jlc3BvbnNlEkYKD3NoYXJlZFJlc291cmNlcxgBIAMoCzItLmJsdWVhcGkuYXBpLmNvdmVyLlNoYXJlZFJlc291cmNlc0NvbWJpbmF0aW9uItMCChxDcmVhdGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0EhoKEnNoYXJlZFJlc291cmNlTmFtZRgBIAEoCRJNChtzaGFyZWRSZXNvdXJjZXNDb21iaW5hdGlvbnMYAiABKAsyKC5ibHVlYXBpLmFwaS5jb3Zlci5SZXNvdXJjZXNDb21iaW5hdGlvbnMSVgoMZGlzdHJpYnV0aW9uGAMgAygLMkAuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0LkRpc3RyaWJ1dGlvbkVudHJ5EhEKCWFsbG9jYXRlZBgEIAEoARITCgt1bmFsbG9jYXRlZBgFIAEoARITCgtkZXNjcmlwdGlvbhgGIAEoCRozChFEaXN0cmlidXRpb25FbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBImcKHUNyZWF0ZVNoYXJlZFJlc291cmNlc1Jlc3BvbnNlEkYKD3NoYXJlZFJlc291cmNlcxgBIAEoCzItLmJsdWVhcGkuYXBpLmNvdmVyLlNoYXJlZFJlc291cmNlc0NvbWJpbmF0aW9uIicKGUdldFNoYXJlZFJlc291cmNlc1JlcXVlc3QSCgoCaWQYASABKAkiZAoaR2V0U2hhcmVkUmVzb3VyY2VzUmVzcG9uc2USRgoPc2hhcmVkUmVzb3VyY2VzGAEgASgLMi0uYmx1ZWFwaS5hcGkuY292ZXIuU2hhcmVkUmVzb3VyY2VzQ29tYmluYXRpb24i3wIKHFVwZGF0ZVNoYXJlZFJlc291cmNlc1JlcXVlc3QSCgoCaWQYASABKAkSGgoSc2hhcmVkUmVzb3VyY2VOYW1lGAIgASgJEk0KG3NoYXJlZFJlc291cmNlc0NvbWJpbmF0aW9ucxgDIAEoCzIoLmJsdWVhcGkuYXBpLmNvdmVyLlJlc291cmNlc0NvbWJpbmF0aW9ucxJWCgxkaXN0cmlidXRpb24YBCADKAsyQC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVNoYXJlZFJlc291cmNlc1JlcXVlc3QuRGlzdHJpYnV0aW9uRW50cnkSEQoJYWxsb2NhdGVkGAUgASgBEhMKC3VuYWxsb2NhdGVkGAYgASgBEhMKC2Rlc2NyaXB0aW9uGAcgASgJGjMKEURpc3RyaWJ1dGlvbkVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoAToCOAEiZwodVXBkYXRlU2hhcmVkUmVzb3VyY2VzUmVzcG9uc2USRgoPc2hhcmVkUmVzb3VyY2VzGAEgASgLMi0uYmx1ZWFwaS5hcGkuY292ZXIuU2hhcmVkUmVzb3VyY2VzQ29tYmluYXRpb24iKgocRGVsZXRlU2hhcmVkUmVzb3VyY2VzUmVxdWVzdBIKCgJpZBgBIAEoCSIrCh1EZWxldGVTaGFyZWRSZXNvdXJjZXNSZXNwb25zZRIKCgJpZBgBIAEoCSJXChZMaXN0VW5pdE1ldHJpY3NSZXF1ZXN0EhkKEWFnZ3JlZ2F0aW9uTWV0aG9kGAEgASgJEhIKCmRhdGFTb3VyY2UYAiABKAkSDgoGc3RhdHVzGAMgASgJIk0KF0xpc3RVbml0TWV0cmljc1Jlc3BvbnNlEjIKC3VuaXRNZXRyaWNzGAEgAygLMh0uYmx1ZWFwaS5hcGkuY292ZXIuVW5pdE1ldHJpYyK5AQoXQ3JlYXRlVW5pdE1ldHJpY1JlcXVlc3QSEgoKbWV0cmljTmFtZRgBIAEoCRIZChFhZ2dyZWdhdGlvbk1ldGhvZBgCIAEoCRISCgpkYXRhU291cmNlGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhMKC2Nvc3Rncm91cElkGAUgAygJEjEKCnNvdXJjZUluZm8YBiABKAsyHS5ibHVlYXBpLmFwaS5jb3Zlci5Tb3VyY2VJbmZvIk0KGENyZWF0ZVVuaXRNZXRyaWNSZXNwb25zZRIxCgp1bml0TWV0cmljGAEgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuVW5pdE1ldHJpYyIiChRHZXRVbml0TWV0cmljUmVxdWVzdBIKCgJpZBgBIAEoCSJKChVHZXRVbml0TWV0cmljUmVzcG9uc2USMQoKdW5pdE1ldHJpYxgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRNZXRyaWMixQEKF1VwZGF0ZVVuaXRNZXRyaWNSZXF1ZXN0EgoKAmlkGAEgASgJEhIKCm1ldHJpY05hbWUYAiABKAkSGQoRYWdncmVnYXRpb25NZXRob2QYAyABKAkSEgoKZGF0YVNvdXJjZRgEIAEoCRITCgtkZXNjcmlwdGlvbhgFIAEoCRITCgtjb3N0Z3JvdXBJZBgGIAMoCRIxCgpzb3VyY2VJbmZvGAcgASgLMh0uYmx1ZWFwaS5hcGkuY292ZXIuU291cmNlSW5mbyJNChhVcGRhdGVVbml0TWV0cmljUmVzcG9uc2USMQoKdW5pdE1ldHJpYxgBIAEoCzIdLmJsdWVhcGkuYXBpLmNvdmVyLlVuaXRNZXRyaWMiJQoXRGVsZXRlVW5pdE1ldHJpY1JlcXVlc3QSCgoCaWQYASABKAkiJgoYRGVsZXRlVW5pdE1ldHJpY1Jlc3BvbnNlEgoKAmlkGAEgASgJImYKGVByZXZpZXdHb29nbGVTaGVldFJlcXVlc3QSFQoNZ29vZ2xlU2hlZXRJZBgBIAEoCRIQCghzaGVldFVybBgCIAEoCRIRCglzaGVldE5hbWUYAyABKAkSDQoFcmFuZ2UYBCABKAkiWQoaUHJldmlld0dvb2dsZVNoZWV0UmVzcG9uc2USDgoGaGVhZGVyGAEgAygJEisKB3Jvd0RhdGEYAiADKAsyGi5ibHVlYXBpLmFwaS5jb3Zlci5Sb3dEYXRhIjMKH0NvbmZpcm1Hb29nbGVTaGVldEFjY2Vzc1JlcXVlc3QSEAoIc2hlZXRVcmwYASABKAkiTQogQ29uZmlybUdvb2dsZVNoZWV0QWNjZXNzUmVzcG9uc2USFQoNZ29vZ2xlU2hlZXRJZBgBIAEoCRISCgpzaGVldE5hbWVzGAIgAygJInYKHEdldENsb3Vkd2F0Y2hNZXRhZGF0YVJlcXVlc3QSEQoJYWNjb3VudElkGAEgASgJEg4KBnJlZ2lvbhgCIAEoCRIMCgR0eXBlGAMgASgJEhEKCW5hbWVzcGFjZRgEIAEoCRISCgptZXRyaWNOYW1lGAUgASgJIr4BCh1HZXRDbG91ZHdhdGNoTWV0YWRhdGFSZXNwb25zZRISCgpuYW1lc3BhY2VzGAEgAygJEg8KB21ldHJpY3MYAiADKAkSTQoKZGltZW5zaW9ucxgDIAMoCzI5LmJsdWVhcGkuY292ZXIudjEuR2V0Q2xvdWR3YXRjaE1ldGFkYXRhUmVzcG9uc2UuRGltZW5zaW9uGikKCURpbWVuc2lvbhIMCgRuYW1lGAEgASgJEg4KBnZhbHVlcxgCIAMoCSKBAgoWR2V0RGlzY291bnRQbGFuUmVxdWVzdBIOCgZ2ZW5kb3IYASABKAkSDQoFb3JnSWQYAiABKAkSGAoQcmVkdWN0aW9uRGlzcGxheRgDIAEoCRIWCg5pbmNsdWRlRGV0YWlscxgEIAEoCBIQCghmcm9tRGF0ZRgFIAEoCRIOCgZ0b0RhdGUYBiABKAkSDwoHcGF5ZXJJZBgHIAEoCRIZChFiaWxsaW5nSW50ZXJuYWxJZBgIIAEoCRIPCgdncm91cElkGAkgASgJEhMKC2Nvc3RHcm91cElkGAogASgJEhAKCGFjY291bnRzGAsgAygJEhAKCHNlcnZpY2VzGAwgAygJImcKF0dldERpc2NvdW50UGxhblJlc3BvbnNlEg0KBW9yZ0lkGAEgASgJEj0KEGF3c0Rpc2NvdW50UGxhbnMYAiABKAsyIy5ibHVlYXBpLmFwaS5jb3Zlci5Bd3NEaXNjb3VudFBsYW5zInMKHExpc3ROb25wZXJmb3JtaW5nUmF0ZVJlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEhAKCGZyb21EYXRlGAMgASgJEg4KBnRvRGF0ZRgEIAEoCRIMCgR0eXBlGAUgASgJIskBCh1MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXNwb25zZRJUCg1ub25wZXJmb3JtaW5nGAEgAygLMj0uYmx1ZWFwaS5jb3Zlci52MS5MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXNwb25zZS5Ob25wZXJmb3JtaW5nGlIKDU5vbnBlcmZvcm1pbmcSDAoEdHlwZRgBIAEoCRIPCgdhY2NvdW50GAIgASgJEhMKC3V0aWxpemF0aW9uGAMgASgBEg0KBXdhc3RlGAQgASgBInQKHExpc3RVbnRhZ2dlZFJlc291cmNlc1JlcXVlc3QSDgoGdmVuZG9yGAEgASgJEhMKC2Nvc3RHcm91cElkGAIgASgJEhAKCGZyb21EYXRlGAMgASgJEg4KBnRvRGF0ZRgEIAEoCRINCgVsaW1pdBgFIAEoAyL5AQodTGlzdFVudGFnZ2VkUmVzb3VyY2VzUmVzcG9uc2USXAoRdW50YWdnZWRSZXNvdXJjZXMYASADKAsyQS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbnRhZ2dlZFJlc291cmNlc1Jlc3BvbnNlLlVudGFnZ2VkUmVzb3VyY2VzGnoKEVVudGFnZ2VkUmVzb3VyY2VzEhAKCHJlc291cmNlGAEgASgJEg8KB3NlcnZpY2UYAiABKAkSEQoJYWNjb3VudElkGAMgASgJEhEKCWNvc3RHcm91cBgEIAEoCRIMCgRjb3N0GAUgASgBEg4KBnZlbmRvchgGIAEoCSo/CgZTdGF0dXMSCwoHUEVORElORxAAEg8KC0lOX1BST0dSRVNTEAESCwoHU1VDQ0VTUxACEgoKBkZBSUxFRBADMubiAQoFQ292ZXISdwoKT25ib2FyZE9yZxIjLmJsdWVhcGkuY292ZXIudjEuT25ib2FyZE9yZ1JlcXVlc3QaJC5ibHVlYXBpLmNvdmVyLnYxLk9uYm9hcmRPcmdSZXNwb25zZSIegtPkkwIYOgEqIhMvdjEvbWVtYmVycy9vbmJvYXJkEn8KDEludml0ZU1lbWJlchIlLmJsdWVhcGkuY292ZXIudjEuSW52aXRlTWVtYmVyUmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuSW52aXRlTWVtYmVyUmVzcG9uc2UiIIgCAYLT5JMCFzoBKiISL3YxL21lbWJlcnMvaW52aXRlEn4KDEFjdGl2YXRlVXNlchIlLmJsdWVhcGkuY292ZXIudjEuQWN0aXZhdGVVc2VyUmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuQWN0aXZhdGVVc2VyUmVzcG9uc2UiH4LT5JMCGToBKiIUL3YxL21lbWJlcnMvYWN0aXZhdGUSdQoMQ3JlYXRlTWVtYmVyEiUuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVNZW1iZXJSZXF1ZXN0GiYuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVNZW1iZXJSZXNwb25zZSIWgtPkkwIQOgEqIgsvdjEvbWVtYmVycxJvCgpHZXRNZW1iZXJzEiMuYmx1ZWFwaS5jb3Zlci52MS5HZXRNZW1iZXJzUmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuR2V0TWVtYmVyc1Jlc3BvbnNlIhaIAgGC0+STAg0SCy92MS9tZW1iZXJzEooBChBHZXRNZW1iZXJEZXRhaWxzEikuYmx1ZWFwaS5jb3Zlci52MS5HZXRNZW1iZXJEZXRhaWxzUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuR2V0TWVtYmVyRGV0YWlsc1Jlc3BvbnNlIh+IAgGC0+STAhYSFC92MS9tZW1iZXJzL3t1c2VySWR9EpoBChJHZXRNZW1iZXJDb3N0R3JvdXASKy5ibHVlYXBpLmNvdmVyLnYxLkdldE1lbWJlckNvc3RHcm91cFJlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLkdldE1lbWJlckNvc3RHcm91cFJlc3BvbnNlIimIAgGC0+STAiASHi92MS9tZW1iZXJzL3t1c2VySWR9L2Nvc3Rncm91cBKnAQoWVXBkYXRlTWVtYmVyUGVybWlzc2lvbhIvLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlTWVtYmVyUGVybWlzc2lvblJlcXVlc3QaMC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZU1lbWJlclBlcm1pc3Npb25SZXNwb25zZSIqiAIBgtPkkwIhOgEqGhwvdjEvbWVtYmVycy97dXNlcklkfS9pc2FkbWluEnMKDkdldFVzZXJEZXRhaWxzEicuYmx1ZWFwaS5jb3Zlci52MS5HZXRVc2VyRGV0YWlsc1JlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLkdldFVzZXJEZXRhaWxzUmVzcG9uc2UiDoLT5JMCCBIGL3YxL21lEoMBChBVcGRhdGVVc2VyQXZhdGFyEikuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXZhdGFyUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckF2YXRhclJlc3BvbnNlIhiC0+STAhI6ASoaDS92MS9tZS9hdmF0YXISewoOVXBkYXRlVXNlckljb24SJy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJJY29uUmVxdWVzdBooLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckljb25SZXNwb25zZSIWgtPkkwIQOgEqGgsvdjEvbWUvaWNvbhKTAQoUVXBkYXRlVXNlckNvbG9yVGhlbWUSLS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJDb2xvclRoZW1lUmVxdWVzdBouLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckNvbG9yVGhlbWVSZXNwb25zZSIcgtPkkwIWOgEqGhEvdjEvbWUvY29sb3J0aGVtZRJ7Cg5VcGRhdGVVc2VyTmFtZRInLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlck5hbWVSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyTmFtZVJlc3BvbnNlIhaC0+STAhA6ASoaCy92MS9tZS9uYW1lEn8KD1VwZGF0ZVVzZXJFbWFpbBIoLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckVtYWlsUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckVtYWlsUmVzcG9uc2UiF4LT5JMCEToBKhoML3YxL21lL2VtYWlsEosBChJVcGRhdGVVc2VyTWFpblZpZXcSKy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJNYWluVmlld1JlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJNYWluVmlld1Jlc3BvbnNlIhqC0+STAhQ6ASoaDy92MS9tZS9tYWludmlldxKIAQoRUmVzZXRVc2VyUGFzc3dvcmQSKi5ibHVlYXBpLmNvdmVyLnYxLlJlc2V0VXNlclBhc3N3b3JkUmVxdWVzdBorLmJsdWVhcGkuY292ZXIudjEuUmVzZXRVc2VyUGFzc3dvcmRSZXNwb25zZSIagtPkkwIUOgEqIg8vdjEvbWUvcGFzc3dvcmQSgwEKEFVwZGF0ZVVzZXJMb2NhbGUSKS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJMb2NhbGVSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyTG9jYWxlUmVzcG9uc2UiGILT5JMCEjoBKhoNL3YxL21lL2xvY2FsZRKLAQoSVXBkYXRlVXNlckFwcFRoZW1lEisuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXBwVGhlbWVSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXBwVGhlbWVSZXNwb25zZSIagtPkkwIUOgEqGg8vdjEvbWUvYXBwdGhlbWUSiwEKElVwZGF0ZVVzZXJUaW1lem9uZRIrLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlclRpbWV6b25lUmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlclRpbWV6b25lUmVzcG9uc2UiGoLT5JMCFDoBKhoPL3YxL21lL3RpbWV6b25lEpMBChRVcGRhdGVVc2VyQXR0cmlidXRlcxItLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlckF0dHJpYnV0ZXNSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyQXR0cmlidXRlc1Jlc3BvbnNlIhyC0+STAhY6ASoaES92MS9tZS9hdHRyaWJ1dGVzEnsKDERlbGV0ZU1lbWJlchIlLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlTWVtYmVyUmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlTWVtYmVyUmVzcG9uc2UiHILT5JMCFioUL3YxL21lbWJlcnMve3VzZXJJZH0ShgEKDVJlc2V0UGFzc3dvcmQSJi5ibHVlYXBpLmNvdmVyLnYxLlJlc2V0UGFzc3dvcmRSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5SZXNldFBhc3N3b3JkUmVzcG9uc2UiJILT5JMCHjoBKiIZL3YxL21lbWJlcnMvcmVzZXRwYXNzd29yZBJtCgpDcmVhdGVWaWV3EiMuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVWaWV3UmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlVmlld1Jlc3BvbnNlIhSC0+STAg46ASoiCS92MS92aWV3cxJkCghHZXRWaWV3cxIhLmJsdWVhcGkuY292ZXIudjEuR2V0Vmlld3NSZXF1ZXN0GiIuYmx1ZWFwaS5jb3Zlci52MS5HZXRWaWV3c1Jlc3BvbnNlIhGC0+STAgsSCS92MS92aWV3cxJ/Cg5HZXRDdXJyZW50VmlldxInLmJsdWVhcGkuY292ZXIudjEuR2V0Q3VycmVudFZpZXdSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5HZXRDdXJyZW50Vmlld1Jlc3BvbnNlIhqC0+STAhQSEi92MS92aWV3cy97dmlld0lkfRKGAQoQR2V0RmF2b3JpdGVWaWV3cxIpLmJsdWVhcGkuY292ZXIudjEuR2V0RmF2b3JpdGVWaWV3c1JlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLkdldEZhdm9yaXRlVmlld3NSZXNwb25zZSIbgtPkkwIVEhMvdjEvdmlld3MvZmF2b3JpdGVzEngKC1B1Ymxpc2hWaWV3EiQuYmx1ZWFwaS5jb3Zlci52MS5QdWJsaXNoVmlld1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLlB1Ymxpc2hWaWV3UmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL3ZpZXdzL3B1Ymxpc2gSfQoLQWRkRmF2b3JpdGUSJC5ibHVlYXBpLmNvdmVyLnYxLkFkZEZhdm9yaXRlUmVxdWVzdBolLmJsdWVhcGkuY292ZXIudjEuQWRkRmF2b3JpdGVSZXNwb25zZSIhgtPkkwIbOgEqGhYvdjEvdmlld3MvZmF2b3JpdGUvYWRkEokBCg5SZW1vdmVGYXZvcml0ZRInLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlRmF2b3JpdGVSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5SZW1vdmVGYXZvcml0ZVJlc3BvbnNlIiSC0+STAh46ASoaGS92MS92aWV3cy9mYXZvcml0ZS9yZW1vdmUSdgoKVXBkYXRlVmlldxIjLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld1JlcXVlc3QaJC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdSZXNwb25zZSIdgtPkkwIXOgEqGhIvdjEvdmlld3Mve3ZpZXdJZH0SjwEKEFVwZGF0ZVZpZXdMYXlvdXQSKS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdMYXlvdXRSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVWaWV3TGF5b3V0UmVzcG9uc2UiJILT5JMCHjoBKhoZL3YxL3ZpZXdzL2xheW91dC97dmlld0lkfRKaAQoQVXBkYXRlVmlld1dpZGdldBIpLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld1dpZGdldFJlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdXaWRnZXRSZXNwb25zZSIvgtPkkwIpOgEqGiQvdjEvdmlld3MvbGF5b3V0L3t2aWV3SWR9L3t3aWRnZXRJZH0SnwEKFFVwZGF0ZVZpZXdDb2xvclRoZW1lEi0uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVWaWV3Q29sb3JUaGVtZVJlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVZpZXdDb2xvclRoZW1lUmVzcG9uc2UiKILT5JMCIjoBKhodL3YxL3ZpZXdzL3t2aWV3SWR9L2NvbG9ydGhlbWUSlwEKElVwZGF0ZVZpZXdDdXJyZW5jeRIrLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld0N1cnJlbmN5UmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVmlld0N1cnJlbmN5UmVzcG9uc2UiJoLT5JMCIDoBKhobL3YxL3ZpZXdzL3t2aWV3SWR9L2N1cnJlbmN5EpwBChRTZXRPcmdVcGRhdGVDdXJyZW5jeRItLmJsdWVhcGkuY292ZXIudjEuU2V0T3JnVXBkYXRlQ3VycmVuY3lSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5TZXRPcmdVcGRhdGVDdXJyZW5jeVJlc3BvbnNlIiWC0+STAh86ASoiGi92MS9vcmdhbml6YXRpb25zL2N1cnJlbmN5EpkBChRHZXRPcmdVcGRhdGVDdXJyZW5jeRItLmJsdWVhcGkuY292ZXIudjEuR2V0T3JnVXBkYXRlQ3VycmVuY3lSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5HZXRPcmdVcGRhdGVDdXJyZW5jeVJlc3BvbnNlIiKC0+STAhwSGi92MS9vcmdhbml6YXRpb25zL2N1cnJlbmN5Eo0BChFMaXN0RXhjaGFuZ2VSYXRlcxIqLmJsdWVhcGkuY292ZXIudjEuTGlzdEV4Y2hhbmdlUmF0ZXNSZXF1ZXN0GisuYmx1ZWFwaS5jb3Zlci52MS5MaXN0RXhjaGFuZ2VSYXRlc1Jlc3BvbnNlIh+C0+STAhkSFy92MS9vcmdhbml6YXRpb25zL3JhdGVzEnMKCkRlbGV0ZVZpZXcSIy5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZVZpZXdSZXF1ZXN0GiQuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVWaWV3UmVzcG9uc2UiGoLT5JMCFCoSL3YxL3ZpZXdzL3t2aWV3SWR9Ep8BChNVcGRhdGVTaWRlTWVudVN0YXRlEiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVTaWRlTWVudVN0YXRlUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlU2lkZU1lbnVTdGF0ZVJlc3BvbnNlIiuC0+STAiU6ASoaIC92MS92aWV3cy97dmlld0lkfS9zaWRlbWVudXN0YXRlEqIBChNBZGRTaWRlTWVudUZhdm9yaXRlEiwuYmx1ZWFwaS5jb3Zlci52MS5BZGRTaWRlTWVudUZhdm9yaXRlUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuQWRkU2lkZU1lbnVGYXZvcml0ZVJlc3BvbnNlIi6C0+STAig6ASoiIy92MS92aWV3cy97dmlld0lkfS9zaWRlbWVudWZhdm9yaXRlEq0BChZSZW1vdmVTaWRlTWVudUZhdm9yaXRlEi8uYmx1ZWFwaS5jb3Zlci52MS5SZW1vdmVTaWRlTWVudUZhdm9yaXRlUmVxdWVzdBowLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlU2lkZU1lbnVGYXZvcml0ZVJlc3BvbnNlIjCC0+STAio6ASoiJS92MS92aWV3cy97dmlld0lkfS9zaWRlbWVudXVuZmF2b3JpdGUSgQEKD0NyZWF0ZUNvc3RHcm91cBIoLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQ29zdEdyb3VwUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQ29zdEdyb3VwUmVzcG9uc2UiGYLT5JMCEzoBKiIOL3YxL2Nvc3Rncm91cHMSeAoNR2V0Q29zdEdyb3VwcxImLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3Vwc1JlcXVlc3QaJy5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RHcm91cHNSZXNwb25zZSIWgtPkkwIQEg4vdjEvY29zdGdyb3VwcxJ4Cg1HZXRDYXRlZ29yaWVzEiYuYmx1ZWFwaS5jb3Zlci52MS5HZXRDYXRlZ29yaWVzUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuR2V0Q2F0ZWdvcmllc1Jlc3BvbnNlIhaC0+STAhASDi92MS9jYXRlZ29yaWVzEpgBChNHZXRDb3N0R3JvdXBEZXRhaWxzEiwuYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0R3JvdXBEZXRhaWxzUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3VwRGV0YWlsc1Jlc3BvbnNlIiSC0+STAh4SHC92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0SoAEKE1VwZGF0ZUNvc3RHcm91cE5hbWUSLC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cE5hbWVSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBOYW1lUmVzcG9uc2UiLILT5JMCJjoBKhohL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9uYW1lErwBChpVcGRhdGVDb3N0R3JvdXBEZXNjcmlwdGlvbhIzLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlQ29zdEdyb3VwRGVzY3JpcHRpb25SZXF1ZXN0GjQuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBEZXNjcmlwdGlvblJlc3BvbnNlIjOC0+STAi06ASoaKC92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0vZGVzY3JpcHRpb24SpAEKFFVwZGF0ZUNvc3RHcm91cEltYWdlEi0uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBJbWFnZVJlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cEltYWdlUmVzcG9uc2UiLYLT5JMCJzoBKhoiL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9pbWFnZRKgAQoTVXBkYXRlQ29zdEdyb3VwSWNvbhIsLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlQ29zdEdyb3VwSWNvblJlcXVlc3QaLS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cEljb25SZXNwb25zZSIsgtPkkwImOgEqGiEvdjEvY29zdGdyb3Vwcy97Y29zdEdyb3VwSWR9L2ljb24SuAEKGVVwZGF0ZUNvc3RHcm91cENvbG9yVGhlbWUSMi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENvbG9yVGhlbWVSZXF1ZXN0GjMuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBDb2xvclRoZW1lUmVzcG9uc2UiMoLT5JMCLDoBKhonL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9jb2xvcnRoZW1lEsABChtVcGRhdGVDb3N0R3JvdXBDb21iaW5hdGlvbnMSNC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENvbWJpbmF0aW9uc1JlcXVlc3QaNS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENvbWJpbmF0aW9uc1Jlc3BvbnNlIjSC0+STAi46ASoaKS92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0vY29tYmluYXRpb25zErsBChxSZXNvbHZlQ29zdEdyb3VwQ29tYmluYXRpb25zEjUuYmx1ZWFwaS5jb3Zlci52MS5SZXNvbHZlQ29zdEdyb3VwQ29tYmluYXRpb25zUmVxdWVzdBo2LmJsdWVhcGkuY292ZXIudjEuUmVzb2x2ZUNvc3RHcm91cENvbWJpbmF0aW9uc1Jlc3BvbnNlIiyC0+STAiYSJC92MS9jb3N0Z3JvdXBzL3Jlc29sdmUve2Nvc3RHcm91cElkfRKsAQoVQXNzaWduQ29zdEdyb3VwTWVtYmVyEi4uYmx1ZWFwaS5jb3Zlci52MS5Bc3NpZ25Db3N0R3JvdXBNZW1iZXJSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5Bc3NpZ25Db3N0R3JvdXBNZW1iZXJSZXNwb25zZSIygtPkkwIsOgEqIicvdjEvY29zdGdyb3Vwcy97Y29zdEdyb3VwSWR9L21lbWJlci9hZGQSrwEKFVJlbW92ZUNvc3RHcm91cE1lbWJlchIuLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlQ29zdEdyb3VwTWVtYmVyUmVxdWVzdBovLmJsdWVhcGkuY292ZXIudjEuUmVtb3ZlQ29zdEdyb3VwTWVtYmVyUmVzcG9uc2UiNYLT5JMCLzoBKiIqL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9tZW1iZXIvcmVtb3ZlEowBCg9EZWxldGVDb3N0R3JvdXASKC5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUNvc3RHcm91cFJlcXVlc3QaKS5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUNvc3RHcm91cFJlc3BvbnNlIiSC0+STAh4qHC92MS9jb3N0Z3JvdXBzL3tjb3N0R3JvdXBJZH0SpgEKG0dldEFjY291bnRBY2Nlc3NUZW1wbGF0ZVVybBI0LmJsdWVhcGkuY292ZXIudjEuR2V0QWNjb3VudEFjY2Vzc1RlbXBsYXRlVXJsUmVxdWVzdBo1LmJsdWVhcGkuY292ZXIudjEuR2V0QWNjb3VudEFjY2Vzc1RlbXBsYXRlVXJsUmVzcG9uc2UiGoLT5JMCFBISL3YxL2F3cy9hY2N0YWNjZXNzEooBChFMaXN0QWNjb3VudEFjY2VzcxIqLmJsdWVhcGkuY292ZXIudjEuTGlzdEFjY291bnRBY2Nlc3NSZXF1ZXN0Gh8uYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50QWNjZXNzIiaC0+STAiA6ASoiGy92MS9hd3MvYWNjdGFjY2Vzcy9hbGw6cmVhZDABEoMBChBHZXRBY2NvdW50QWNjZXNzEikuYmx1ZWFwaS5jb3Zlci52MS5HZXRBY2NvdW50QWNjZXNzUmVxdWVzdBofLmJsdWVhcGkuY292ZXIudjEuQWNjb3VudEFjY2VzcyIjgtPkkwIdEhsvdjEvYXdzL2FjY3RhY2Nlc3Mve3RhcmdldH0SfAoNR2V0RGF0YUFjY2VzcxIvLmJsdWVhcGkuY292ZXIudjEuR2V0QW5kRGVsZXRlRGF0YUFjY2Vzc1JlcXVlc3QaHC5ibHVlYXBpLmNvdmVyLnYxLkRhdGFBY2Nlc3MiHILT5JMCFhIUL3YxL2FjY291bnQve3RhcmdldH0SeQoQRGVsZXRlRGF0YUFjY2VzcxIvLmJsdWVhcGkuY292ZXIudjEuR2V0QW5kRGVsZXRlRGF0YUFjY2Vzc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiHILT5JMCFioUL3YxL2FjY291bnQve3RhcmdldH0SgwEKE0NyZWF0ZUFjY291bnRBY2Nlc3MSLC5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZUFjY291bnRBY2Nlc3NSZXF1ZXN0Gh8uYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50QWNjZXNzIh2C0+STAhc6ASoiEi92MS9hd3MvYWNjdGFjY2VzcxKcAQobQ3JlYXRlQWNjb3VudEFjY2Vzc1N0YWNrc2V0EjQuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBY2NvdW50QWNjZXNzU3RhY2tzZXRSZXF1ZXN0Gh8uYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50QWNjZXNzIiaC0+STAiA6ASoiGy92MS9hd3MvYWNjdGFjY2Vzcy9zdGFja3NldBKKAQoWQ3JlYXRlQWNjb3VudEFjY2Vzc0N1chIsLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWNjb3VudEFjY2Vzc1JlcXVlc3QaHy5ibHVlYXBpLmNvdmVyLnYxLkFjY291bnRBY2Nlc3MiIYLT5JMCGzoBKiIWL3YxL2F3cy9hY2N0YWNjZXNzL2N1chJ7ChNVcGRhdGVBY2NvdW50QWNjZXNzEiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVBY2NvdW50QWNjZXNzUmVxdWVzdBoRLnByb3Rvcy5PcGVyYXRpb24iI4LT5JMCHRobL3YxL2F3cy9hY2N0YWNjZXNzL3t0YXJnZXR9EpMBChNEZWxldGVBY2NvdW50QWNjZXNzEiwuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVBY2NvdW50QWNjZXNzUmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQWNjb3VudEFjY2Vzc1Jlc3BvbnNlIh+C0+STAhkqFy92MS9hY2N0YWNjZXNzL3t0YXJnZXR9EnQKD1JlZ2lzdGVyQWNjb3VudBIoLmJsdWVhcGkuY292ZXIudjEuUmVnaXN0ZXJBY2NvdW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIfgtPkkwIZOgEqIhQvdjEve3ZlbmRvcn0vYWNjb3VudBJxChJSZWdpc3RlckRhdGFBY2Nlc3MSKy5ibHVlYXBpLmNvdmVyLnYxLlJlZ2lzdGVyRGF0YUFjY2Vzc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiFoLT5JMCEDoBKiILL3YxL2FjY291bnQScAoRQWRkQmlsbGluZ0FjY291bnQSJy5ibHVlYXBpLmNvdmVyLnYxLkJpbGxpbmdBY2NvdW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIagtPkkwIUOgEqIg8vdjEvYmlsbGluZ2FjY3QSdwoOTGlzdERhdGFBY2Nlc3MSJy5ibHVlYXBpLmNvdmVyLnYxLkxpc3REYXRhQWNjZXNzUmVxdWVzdBocLmJsdWVhcGkuY292ZXIudjEuRGF0YUFjY2VzcyIcgtPkkwIWIhQvdjEvYWNjb3VudC9hbGw6cmVhZDABEqgBChhMaXN0VW5yZWdpc3RlcmVkQWNjb3VudHMSMS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbnJlZ2lzdGVyZWRBY2NvdW50c1JlcXVlc3QaMi5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbnJlZ2lzdGVyZWRBY2NvdW50c1Jlc3BvbnNlIiWC0+STAh8iHS92MS9hY2NvdW50L3VucmVnaXN0ZXJlZDpyZWFkEnYKEFVwZGF0ZURhdGFBY2Nlc3MSKS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZURhdGFBY2Nlc3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih+C0+STAhk6ASoaFC92MS9hY2NvdW50L3t0YXJnZXR9EmsKCkxpc3RBc3NldHMSIy5ibHVlYXBpLmNvdmVyLnYxLkxpc3RBc3NldHNSZXF1ZXN0GhouYmx1ZWFwaS5jb3Zlci52MS5SZXNvdXJjZSIagtPkkwIUOgEqIg8vdjEvYXNzZXRzOnJlYWQwARKTAQoQR2V0QXNzZXRzU3VtbWFyeRIpLmJsdWVhcGkuY292ZXIudjEuR2V0QXNzZXRzU3VtbWFyeVJlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLkdldEFzc2V0c1N1bW1hcnlSZXNwb25zZSIogtPkkwIiEiAvdjEvYXNzZXRzL3N1bW1hcnkve2Nvc3RHcm91cElkfRJyCgxHZXRDb3N0VXNhZ2USJS5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RVc2FnZVJlcXVlc3QaGi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RJdGVtIh2C0+STAhc6ASoiEi92MS9jb3N0dXNhZ2U6cmVhZDABEsIBChxHZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uEjUuYmx1ZWFwaS5jb3Zlci52MS5HZXRSaWdodFNpemluZ1JlY29tbWVuZGF0aW9uUmVxdWVzdBo2LmJsdWVhcGkuY292ZXIudjEuR2V0UmlnaHRTaXppbmdSZWNvbW1lbmRhdGlvblJlc3BvbnNlIjOC0+STAi0SKy92MS9yaWdodHNpemluZ3JlY29tbWVuZGF0aW9uL3tjb3N0R3JvdXBJZH0SmAEKEk1vZGlmeVJlc291cmNlVHlwZRIrLmJsdWVhcGkuY292ZXIudjEuTW9kaWZ5UmVzb3VyY2VUeXBlUmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuTW9kaWZ5UmVzb3VyY2VUeXBlUmVzcG9uc2UiJ4LT5JMCIToBKiIcL3YxL3t2ZW5kb3J9L3Jlc291cmNlL21vZGlmeRKYAQoRVGVybWluYXRlUmVzb3VyY2USKi5ibHVlYXBpLmNvdmVyLnYxLlRlcm1pbmF0ZVJlc291cmNlUmVxdWVzdBorLmJsdWVhcGkuY292ZXIudjEuVGVybWluYXRlUmVzb3VyY2VSZXNwb25zZSIqgtPkkwIkOgEqIh8vdjEve3ZlbmRvcn0vcmVzb3VyY2UvdGVybWluYXRlEo0BChBVcGxvYWRDaGFyZ2VDb2RlEikuYmx1ZWFwaS5jb3Zlci52MS5VcGxvYWRDaGFyZ2VDb2RlUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuVXBsb2FkQ2hhcmdlQ29kZVJlc3BvbnNlIiCC0+STAho6ASoiFS92MS9jaGFyZ2Vjb2RlL3VwbG9hZCgBEnoKC0Fzc2lnblBheWVyEiQuYmx1ZWFwaS5jb3Zlci52MS5Bc3NpZ25QYXllclJlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkFzc2lnblBheWVyUmVzcG9uc2UiHoLT5JMCGDoBKiITL3YxL3t2ZW5kb3J9L3BheWVycxJxCglHZXRQYXllcnMSIi5ibHVlYXBpLmNvdmVyLnYxLkdldFBheWVyc1JlcXVlc3QaIy5ibHVlYXBpLmNvdmVyLnYxLkdldFBheWVyc1Jlc3BvbnNlIhuC0+STAhUSEy92MS97dmVuZG9yfS9wYXllcnMShwEKC0dldEFjY291bnRzEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRBY2NvdW50c1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldEFjY291bnRzUmVzcG9uc2UiK4LT5JMCJRIjL3YxL3t2ZW5kb3J9L2FjY291bnRzL3tjb3N0R3JvdXBJZH0ShwEKC0dldFNlcnZpY2VzEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRTZXJ2aWNlc1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldFNlcnZpY2VzUmVzcG9uc2UiK4LT5JMCJRIjL3YxL3t2ZW5kb3J9L3NlcnZpY2VzL3tjb3N0R3JvdXBJZH0SgwEKCkdldFJlZ2lvbnMSIy5ibHVlYXBpLmNvdmVyLnYxLkdldFJlZ2lvbnNSZXF1ZXN0GiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWdpb25zUmVzcG9uc2UiKoLT5JMCJBIiL3YxL3t2ZW5kb3J9L3JlZ2lvbnMve2Nvc3RHcm91cElkfRJ3CgdHZXRUYWdzEiAuYmx1ZWFwaS5jb3Zlci52MS5HZXRUYWdzUmVxdWVzdBohLmJsdWVhcGkuY292ZXIudjEuR2V0VGFnc1Jlc3BvbnNlIieC0+STAiESHy92MS97dmVuZG9yfS90YWdzL3tjb3N0R3JvdXBJZH0SdwoITGlzdEZlZXMSIS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RGZWVzUmVxdWVzdBocLmJsdWVhcGkuY292ZXIudjEuRmVlRGV0YWlscyIogtPkkwIiOgEqIh0vdjEvYWxsb2NhdGlvbnMvZmVlcy9hbGw6cmVhZDABEnoKClJlc3RvcmVGZWUSIy5ibHVlYXBpLmNvdmVyLnYxLlJlc3RvcmVGZWVSZXF1ZXN0GhwuYmx1ZWFwaS5jb3Zlci52MS5GZWVEZXRhaWxzIieC0+STAiE6ASoiHC92MS9hbGxvY2F0aW9ucy9mZWVzL3Jlc3RvcmUwARJ+Cg9HZXRDb3N0R3JvdXBGZWUSKC5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RHcm91cEZlZVJlcXVlc3QaGS5ibHVlYXBpLmNvdmVyLnYxLkZlZUl0ZW0iJILT5JMCHjoBKiIZL3YxL2FsbG9jYXRpb25zL2ZlZXM6cmVhZDABEnsKDkxpc3RBbGxvY2F0b3JzEicuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QWxsb2NhdG9yc1JlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RBbGxvY2F0b3JEZXRhaWxzIhaC0+STAhASDi92MS9hbGxvY2F0b3JzMAESfgoPQ3JlYXRlQWxsb2NhdG9yEiguYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbGxvY2F0b3JSZXF1ZXN0GiYuYmx1ZWFwaS5jb3Zlci52MS5Db3N0QWxsb2NhdG9yRGV0YWlscyIZgtPkkwITOgEqIg4vdjEvYWxsb2NhdG9ycxKgAQoXR2V0QWxsb2NhdGlvbkF0dHJpYnV0ZXMSMC5ibHVlYXBpLmNvdmVyLnYxLkdldEFsbG9jYXRpb25BdHRyaWJ1dGVzUmVxdWVzdBoxLmJsdWVhcGkuY292ZXIudjEuR2V0QWxsb2NhdGlvbkF0dHJpYnV0ZXNSZXNwb25zZSIggtPkkwIaEhgvdjEvYWxsb2NhdG9ycy9hdHRyaWJ1dGUSlAEKFEdldEFsbG9jYXRpb25Tb3VyY2VzEi0uYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGxvY2F0aW9uU291cmNlc1JlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLkdldEFsbG9jYXRpb25Tb3VyY2VzUmVzcG9uc2UiHYLT5JMCFxIVL3YxL2FsbG9jYXRvcnMvc291cmNlEoEBCg9VcGRhdGVBbGxvY2F0b3ISJi5ibHVlYXBpLmNvdmVyLnYxLkNvc3RBbGxvY2F0b3JSZXF1ZXN0GiYuYmx1ZWFwaS5jb3Zlci52MS5Db3N0QWxsb2NhdG9yRGV0YWlscyIegtPkkwIYOgEqGhMvdjEvYWxsb2NhdG9ycy97aWR9EnAKD0RlbGV0ZUFsbG9jYXRvchIoLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQWxsb2NhdG9yUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSIbgtPkkwIVKhMvdjEvYWxsb2NhdG9ycy97aWR9EpABChVQcm94eUNyZWF0ZUNvbXBsZXRpb24SLi5ibHVlYXBpLmNvdmVyLnYxLlByb3h5Q3JlYXRlQ29tcGxldGlvblJlcXVlc3QaLy5ibHVlYXBpLmNvdmVyLnYxLlByb3h5Q3JlYXRlQ29tcGxldGlvblJlc3BvbnNlIhSC0+STAg46ASoiCS92MS94L3BjYzABEooBChRTaW11bGF0ZUZlZUFsbG9jYXRvchIoLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWxsb2NhdG9yUmVxdWVzdBocLmJsdWVhcGkuY292ZXIudjEuRmVlRGV0YWlscyIogtPkkwIiOgEqIh0vdjEvYWxsb2NhdGlvbnMvZmVlcy9zaW11bGF0ZTABEpgBChBMaXN0QWNjb3VudFVzYWdlEikuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QWNjb3VudFVzYWdlUmVxdWVzdBolLmJsdWVhcGkuY292ZXIudjEuQWNjb3VudFVzYWdlRGV0YWlscyIwgtPkkwIqOgEqIiUvdjEvYWxsb2NhdGlvbnMvYWNjb3VudHVzYWdlL2FsbDpyZWFkMAESnQEKE1Jlc3RvcmVBY2NvdW50VXNhZ2USLC5ibHVlYXBpLmNvdmVyLnYxLlJlc3RvcmVBY2NvdW50VXNhZ2VSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5BY2NvdW50VXNhZ2VEZXRhaWxzIi+C0+STAik6ASoiJC92MS9hbGxvY2F0aW9ucy9hY2NvdW50dXNhZ2UvcmVzdG9yZTABEpsBChRTaW11bGF0ZUFjY291bnRVc2FnZRIoLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWxsb2NhdG9yUmVxdWVzdBolLmJsdWVhcGkuY292ZXIudjEuQWNjb3VudFVzYWdlRGV0YWlscyIwgtPkkwIqOgEqIiUvdjEvYWxsb2NhdGlvbnMvYWNjb3VudHVzYWdlL3NpbXVsYXRlMAESgQEKC0xpc3RTYXZpbmdzEiEuYmx1ZWFwaS5jb3Zlci52MS5MaXN0RmVlc1JlcXVlc3QaIC5ibHVlYXBpLmNvdmVyLnYxLlNhdmluZ3NEZXRhaWxzIiuC0+STAiU6ASoiIC92MS9hbGxvY2F0aW9ucy9zYXZpbmdzL2FsbDpyZWFkMAESiQEKDlJlc3RvcmVTYXZpbmdzEicuYmx1ZWFwaS5jb3Zlci52MS5SZXN0b3JlU2F2aW5nc1JlcXVlc3QaIC5ibHVlYXBpLmNvdmVyLnYxLlNhdmluZ3NEZXRhaWxzIiqC0+STAiQ6ASoiHy92MS9hbGxvY2F0aW9ucy9zYXZpbmdzL3Jlc3RvcmUwARKMAQoPU2ltdWxhdGVTYXZpbmdzEiguYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbGxvY2F0b3JSZXF1ZXN0GiAuYmx1ZWFwaS5jb3Zlci52MS5TYXZpbmdzRGV0YWlscyIrgtPkkwIlOgEqIiAvdjEvYWxsb2NhdGlvbnMvc2F2aW5ncy9zaW11bGF0ZTABEo4BChZHZXRDb3N0R3JvdXBBbGxvY2F0aW9uEi8uYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0R3JvdXBBbGxvY2F0aW9uUmVxdWVzdBogLmJsdWVhcGkuY292ZXIudjEuQWxsb2NhdGlvbkl0ZW0iH4LT5JMCGToBKiIUL3YxL2FsbG9jYXRpb25zOnJlYWQwARKHAQoQUHJvY2Vzc0F1dGgwVXNlchIpLmJsdWVhcGkuY292ZXIudjEuUHJvY2Vzc0F1dGgwVXNlclJlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLlByb2Nlc3NBdXRoMFVzZXJSZXNwb25zZSIcgtPkkwIWOgEqIhEvdjEvbWVtYmVycy9hdXRoMBKbAQobQWRkUGFydG5lckNlbnRlckNyZWRlbnRpYWxzEjQuYmx1ZWFwaS5jb3Zlci52MS5BZGRQYXJ0bmVyQ2VudGVyQ3JlZGVudGlhbHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ii6C0+STAig6ASoiIy92MS9henVyZS9jcmVkZW50aWFscy9wYXJ0bmVyY2VudGVyEnUKDUFkZE1wblNldHRpbmcSJi5ibHVlYXBpLmNvdmVyLnYxLkFkZE1wblNldHRpbmdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiSC0+STAh46ASoiGS92MS9henVyZS9jcmVkZW50aWFscy9tcG4SkwEKFUdldENvc3RHcm91cEF0dHJpYnV0ZRIuLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3VwQXR0cmlidXRlUmVxdWVzdBovLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEdyb3VwQXR0cmlidXRlUmVzcG9uc2UiGYLT5JMCEzoBKiIOL3YxL2F0dHJpYnV0ZXMSbwoJR2V0QWxlcnRzEiIuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydHNSZXF1ZXN0GiMuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydHNSZXNwb25zZSIXgtPkkwIREg8vdjEvYWxlcnRzL2Nvc3QwARJ2CgtDcmVhdGVBbGVydBIkLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQWxlcnRSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbGVydFJlc3BvbnNlIhqC0+STAhQ6ASoiDy92MS9hbGVydHMvY29zdBKEAQoPR2V0QWxlcnREZXRhaWxzEiguYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydERldGFpbHNSZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5HZXRBbGVydERldGFpbHNSZXNwb25zZSIcgtPkkwIWEhQvdjEvYWxlcnRzL2Nvc3Qve2lkfRJ4CgtEZWxldGVBbGVydBIkLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQWxlcnRSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVBbGVydFJlc3BvbnNlIhyC0+STAhYqFC92MS9hbGVydHMvY29zdC97aWR9EpABChJVcGRhdGVBbGVydERldGFpbHMSKy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUFsZXJ0RGV0YWlsc1JlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUFsZXJ0RGV0YWlsc1Jlc3BvbnNlIh+C0+STAhk6ASoaFC92MS9hbGVydHMvY29zdC97aWR9EnoKC0dldENoYW5uZWxzEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRDaGFubmVsc1JlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldENoYW5uZWxzUmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL2NoYW5uZWxzOnJlYWQwARJ5Cg1DcmVhdGVDaGFubmVsEiYuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVDaGFubmVsUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQ2hhbm5lbFJlc3BvbnNlIheC0+STAhE6ASoiDC92MS9jaGFubmVscxKHAQoRR2V0Q2hhbm5lbERldGFpbHMSKi5ibHVlYXBpLmNvdmVyLnYxLkdldENoYW5uZWxEZXRhaWxzUmVxdWVzdBorLmJsdWVhcGkuY292ZXIudjEuR2V0Q2hhbm5lbERldGFpbHNSZXNwb25zZSIZgtPkkwITEhEvdjEvY2hhbm5lbHMve2lkfRJ7Cg1EZWxldGVDaGFubmVsEiYuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVDaGFubmVsUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQ2hhbm5lbFJlc3BvbnNlIhmC0+STAhMqES92MS9jaGFubmVscy97aWR9EpMBChRVcGRhdGVDaGFubmVsRGV0YWlscxItLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlQ2hhbm5lbERldGFpbHNSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDaGFubmVsRGV0YWlsc1Jlc3BvbnNlIhyC0+STAhY6ASoaES92MS9jaGFubmVscy97aWR9EqABChpHZXREaXNjb3VudFJlY29tbWVuZGF0aW9ucxIzLmJsdWVhcGkuY292ZXIudjEuR2V0RGlzY291bnRSZWNvbW1lbmRhdGlvbnNSZXF1ZXN0GjQuYmx1ZWFwaS5jb3Zlci52MS5HZXREaXNjb3VudFJlY29tbWVuZGF0aW9uc1Jlc3BvbnNlIheC0+STAhE6ASoiDC92MS9kaXNjb3VudBKAAQoVR2V0QW5vbWFseWluQ29zdEdyb3VwEi4uYmx1ZWFwaS5jb3Zlci52MS5HZXRBbm9tYWx5aW5Db3N0R3JvdXBSZXF1ZXN0Gh0uYmx1ZWFwaS5jb3Zlci52MS5Bbm9tYWx5RGF0YSIWgtPkkwIQOgEqIgsvdjEvYW5vbWFseTABEpYBCh1DcmVhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydBI2LmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiWC0+STAh86ASoiGi92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50EpsBCh1VcGRhdGVEaXNjb3VudEV4cGlyYXRpb25BbGVydBI2LmJsdWVhcGkuY292ZXIudjEuVXBkYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IiqC0+STAiQ6ASoaHy92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50L3tpZH0SrAEKGkdldERpc2NvdW50RXhwaXJhdGlvbkFsZXJ0EjouYmx1ZWFwaS5jb3Zlci52MS5NYW5pcHVsYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5EaXNjb3VudEV4cGlyeUFsZXJ0RGF0YSIngtPkkwIhEh8vdjEvYWxlcnRzL2V4cGlyZS9kaXNjb3VudC97aWR9Eq0BChtMaXN0RGlzY291bnRFeHBpcmF0aW9uQWxlcnQSNC5ibHVlYXBpLmNvdmVyLnYxLkxpc3REaXNjb3VudEV4cGlyYXRpb25BbGVydFJlcXVlc3QaKS5ibHVlYXBpLmNvdmVyLnYxLkRpc2NvdW50RXhwaXJ5QWxlcnREYXRhIiuC0+STAiUiIy92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50L2FsbDpyZWFkMAESnAEKHURlbGV0ZURpc2NvdW50RXhwaXJhdGlvbkFsZXJ0EjouYmx1ZWFwaS5jb3Zlci52MS5NYW5pcHVsYXRlRGlzY291bnRFeHBpcmF0aW9uQWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IieC0+STAiEqHy92MS9hbGVydHMvZXhwaXJlL2Rpc2NvdW50L3tpZH0SeAoSQ3JlYXRlQW5vbWFseUFsZXJ0EisuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVBbm9tYWx5QWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih2C0+STAhc6ASoiEi92MS9hbGVydHMvYW5vbWFseRJ+ChJEZWxldGVBbm9tYWx5QWxlcnQSLy5ibHVlYXBpLmNvdmVyLnYxLk1hbmlwdWxhdGVBbm9tYWx5QWxlcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ih+C0+STAhkqFy92MS9hbGVydHMvYW5vbWFseS97aWR9EogBChBMaXN0QW5vbWFseUFsZXJ0EikuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QW5vbWFseUFsZXJ0UmVxdWVzdBoiLmJsdWVhcGkuY292ZXIudjEuQW5vbWFseUFsZXJ0RGF0YSIjgtPkkwIdIhsvdjEvYWxlcnRzL2Fub21hbHkvYWxsOnJlYWQwARKHAQoPR2V0QW5vbWFseUFsZXJ0Ei8uYmx1ZWFwaS5jb3Zlci52MS5NYW5pcHVsYXRlQW5vbWFseUFsZXJ0UmVxdWVzdBoiLmJsdWVhcGkuY292ZXIudjEuQW5vbWFseUFsZXJ0RGF0YSIfgtPkkwIZEhcvdjEvYWxlcnRzL2Fub21hbHkve2lkfRJ9ChJVcGRhdGVBbm9tYWx5QWxlcnQSKy5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUFub21hbHlBbGVydFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiIoLT5JMCHDoBKhoXL3YxL2FsZXJ0cy9hbm9tYWx5L3tpZH0ShwEKD1JlZ2lzdGVyTmV3VXNlchIoLmJsdWVhcGkuY292ZXIudjEuUmVnaXN0ZXJOZXdVc2VyUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuUmVnaXN0ZXJOZXdVc2VyUmVzcG9uc2UiH4LT5JMCGToBKiIUL3YxL21lbWJlcnMvcmVnaXN0ZXISiAEKDkdldFVzZXJQcm9maWxlEicuYmx1ZWFwaS5jb3Zlci52MS5HZXRVc2VyUHJvZmlsZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLkdldFVzZXJQcm9maWxlUmVzcG9uc2UiI4LT5JMCHRIbL3YxL21lbWJlcnMvcHJvZmlsZS97ZW1haWx9EpQBChFVcGRhdGVVc2VyUHJvZmlsZRIqLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVXNlclByb2ZpbGVSZXF1ZXN0GisuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyUHJvZmlsZVJlc3BvbnNlIiaC0+STAiA6ASoaGy92MS9tZW1iZXJzL3Byb2ZpbGUve2VtYWlsfRJ4CgtMaXN0QnVkZ2V0cxIkLmJsdWVhcGkuY292ZXIudjEuTGlzdEJ1ZGdldHNSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5MaXN0QnVkZ2V0c1Jlc3BvbnNlIhqC0+STAhQ6ASoiDy92MS9idWRnZXQ6cmVhZDABEm0KCUdldEJ1ZGdldBIiLmJsdWVhcGkuY292ZXIudjEuR2V0QnVkZ2V0UmVxdWVzdBojLmJsdWVhcGkuY292ZXIudjEuR2V0QnVkZ2V0UmVzcG9uc2UiF4LT5JMCERIPL3YxL2J1ZGdldC97aWR9EnQKDENyZWF0ZUJ1ZGdldBIlLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQnVkZ2V0UmVxdWVzdBomLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlQnVkZ2V0UmVzcG9uc2UiFYLT5JMCDzoBKiIKL3YxL2J1ZGdldBJ2CgxEZWxldGVCdWRnZXQSJS5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUJ1ZGdldFJlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZUJ1ZGdldFJlc3BvbnNlIheC0+STAhEqDy92MS9idWRnZXQve2lkfRJ5CgxVcGRhdGVCdWRnZXQSJS5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUJ1ZGdldFJlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUJ1ZGdldFJlc3BvbnNlIhqC0+STAhQ6ASoaDy92MS9idWRnZXQve2lkfRLXAQonUmVzb2x2ZUFXU01hcmtldHBsYWNlVG9rZW5Gb3JPbmJvYXJkaW5nEkAuYmx1ZWFwaS5jb3Zlci52MS5SZXNvbHZlQVdTTWFya2V0cGxhY2VUb2tlbkZvck9uYm9hcmRpbmdSZXF1ZXN0GkEuYmx1ZWFwaS5jb3Zlci52MS5SZXNvbHZlQVdTTWFya2V0cGxhY2VUb2tlbkZvck9uYm9hcmRpbmdSZXNwb25zZSIngtPkkwIhOgEqIhwvdjEvbWVtYmVycy9hd3Mvc3Vic2NyaXB0aW9uEqwBCh1HZXRDdXN0b21lclN1YnNjcmlwdGlvblN0YXR1cxI2LmJsdWVhcGkuY292ZXIudjEuR2V0Q3VzdG9tZXJTdWJzY3JpcHRpb25TdGF0dXNSZXF1ZXN0GjcuYmx1ZWFwaS5jb3Zlci52MS5HZXRDdXN0b21lclN1YnNjcmlwdGlvblN0YXR1c1Jlc3BvbnNlIhqC0+STAhQSEi92MS9iaWxsaW5nL3N0YXR1cxKGAQoPQ3JlYXRlUHJvZmlsaW5nEiguYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVQcm9maWxpbmdSZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVQcm9maWxpbmdSZXNwb25zZSIegtPkkwIYOgEqIhMvdjEvbWVtYmVycy9wcm9maWxlEpYBChRBZGRJbmZvdG9NYXJrZXRwbGFjZRItLmJsdWVhcGkuY292ZXIudjEuQWRkSW5mb3RvTWFya2V0cGxhY2VSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5BZGRJbmZvdG9NYXJrZXRwbGFjZVJlc3BvbnNlIh+C0+STAhk6ASoiFC92MS9tYXJrZXRwbGFjZS9pbmZvEpwBChBHZXRSZXBvcnRTdW1tYXJ5EikuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZXBvcnRTdW1tYXJ5UmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuR2V0UmVwb3J0U3VtbWFyeVJlc3BvbnNlIjGC0+STAisSKS92MS9yZXBvcnRzL2luc2lnaHQvc3VtbWFyeS97Y29zdEdyb3VwSWR9EpwBChNMaXN0UmVjb21tZW5kYXRpb25zEisuYmx1ZWFwaS5jb3Zlci52MS5MaXN0UmVjb21tZW5kYXRpb25SZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5MaXN0UmVjb21tZW5kYXRpb25SZXNwb25zZSIogtPkkwIiEiAvdjEvcmVjb21tZW5kYXRpb25zL29wdGltaXphdGlvbjABEp8BChVMaXN0UmVjb21tZW5kYXRpb25zVjISLS5ibHVlYXBpLmNvdmVyLnYxLkxpc3RSZWNvbW1lbmRhdGlvblYyUmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuTGlzdFJlY29tbWVuZGF0aW9uUmVzcG9uc2UiJ4LT5JMCIToBKiIcL3YxL3JlY29tbWVuZGF0aW9ucy9hbGw6cmVhZDABEpsBChFHZXRSZWNvbW1lbmRhdGlvbhIqLmJsdWVhcGkuY292ZXIudjEuR2V0UmVjb21tZW5kYXRpb25SZXF1ZXN0GisuYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblJlc3BvbnNlIi2C0+STAicSJS92MS9yZWNvbW1lbmRhdGlvbnMvb3B0aW1pemF0aW9uL3tpZH0SnAEKE0dldFJlY29tbWVuZGF0aW9uVjISLC5ibHVlYXBpLmNvdmVyLnYxLkdldFJlY29tbWVuZGF0aW9uVjJSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblYyUmVzcG9uc2UiKILT5JMCIhIgL3YxL3JlY29tbWVuZGF0aW9ucy9kZXRhaWxzL3tpZH0SmgEKE0V4ZWN1dGVPcHRpbWl6YXRpb24SLC5ibHVlYXBpLmNvdmVyLnYxLkV4ZWN1dGVPcHRpbWl6YXRpb25SZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5FeGVjdXRlT3B0aW1pemF0aW9uUmVzcG9uc2UiJoLT5JMCIDoBKiIbL3YxL3JlY29tbWVuZGF0aW9ucy9leGVjdXRlEp0BChJHZXRFeGVjdXRpb25TdGF0dXMSKy5ibHVlYXBpLmNvdmVyLnYxLkdldEV4ZWN1dGlvblN0YXR1c1JlcXVlc3QaLC5ibHVlYXBpLmNvdmVyLnYxLkdldEV4ZWN1dGlvblN0YXR1c1Jlc3BvbnNlIiqC0+STAiQSIi92MS9yZWNvbW1lbmRhdGlvbnMvZXhlY3V0ZS9zdGF0dXMwARKZAQoOTWFya0FzRXhlY3V0ZWQSJy5ibHVlYXBpLmNvdmVyLnYxLk1hcmtBc0V4ZWN1dGVkUmVxdWVzdBooLmJsdWVhcGkuY292ZXIudjEuTWFya0FzRXhlY3V0ZWRSZXNwb25zZSI0gtPkkwIuOgEqIikvdjEvcmVjb21tZW5kYXRpb25zL29wdGltaXphdGlvbi9leGVjdXRlZBK5AQoaVW5kb0V4ZWN1dGVkUmVjb21tZW5kYXRpb24SMy5ibHVlYXBpLmNvdmVyLnYxLlVuZG9FeGVjdXRlZFJlY29tbWVuZGF0aW9uUmVxdWVzdBo0LmJsdWVhcGkuY292ZXIudjEuVW5kb0V4ZWN1dGVkUmVjb21tZW5kYXRpb25SZXNwb25zZSIwgtPkkwIqOgEqIiUvdjEvcmVjb21tZW5kYXRpb25zL29wdGltaXphdGlvbi91bmRvEqQBChNPcHRpbWl6YXRpb25IaXN0b3J5EiwuYmx1ZWFwaS5jb3Zlci52MS5PcHRpbWl6YXRpb25IaXN0b3J5UmVxdWVzdBotLmJsdWVhcGkuY292ZXIudjEuT3B0aW1pemF0aW9uSGlzdG9yeVJlc3BvbnNlIjCC0+STAioSKC92MS9yZWNvbW1lbmRhdGlvbnMvb3B0aW1pemF0aW9uL2hpc3RvcnkSvwEKGlNldENvc3RHcm91cEV2ZW50SW5kaWNhdG9yEjMuYmx1ZWFwaS5jb3Zlci52MS5TZXRDb3N0R3JvdXBFdmVudEluZGljYXRvclJlcXVlc3QaNC5ibHVlYXBpLmNvdmVyLnYxLlNldENvc3RHcm91cEV2ZW50SW5kaWNhdG9yUmVzcG9uc2UiNoLT5JMCMDoBKiIrL3YxL2Nvc3Rncm91cHMve2Nvc3RHcm91cElkfS9ldmVudEluZGljYXRvchK4AQoaU2V0Q29zdEdyb3VwQW5vbWFseU9wdGlvbnMSMy5ibHVlYXBpLmNvdmVyLnYxLlNldENvc3RHcm91cEFub21hbHlPcHRpb25zUmVxdWVzdBo0LmJsdWVhcGkuY292ZXIudjEuU2V0Q29zdEdyb3VwQW5vbWFseU9wdGlvbnNSZXNwb25zZSIvgtPkkwIpOgEqIiQvdjEvY29zdGdyb3Vwcy97Y29zdEdyb3VwSWR9L2Fub21hbHkSkAEKEVNldE9yZ0Zpc2NhbE1vbnRoEiouYmx1ZWFwaS5jb3Zlci52MS5TZXRPcmdGaXNjYWxNb250aFJlcXVlc3QaKy5ibHVlYXBpLmNvdmVyLnYxLlNldE9yZ0Zpc2NhbE1vbnRoUmVzcG9uc2UiIoLT5JMCHDoBKiIXL3YxL3JlcG9ydHMvZmlzY2FsbW9udGgSjQEKEUdldE9yZ0Zpc2NhbE1vbnRoEiouYmx1ZWFwaS5jb3Zlci52MS5HZXRPcmdGaXNjYWxNb250aFJlcXVlc3QaKy5ibHVlYXBpLmNvdmVyLnYxLkdldE9yZ0Zpc2NhbE1vbnRoUmVzcG9uc2UiH4LT5JMCGRIXL3YxL3JlcG9ydHMvZmlzY2FsbW9udGgSogEKFFRyYW5zZmVyT3JnYW5pemF0aW9uEi0uYmx1ZWFwaS5jb3Zlci52MS5UcmFuc2Zlck9yZ2FuaXphdGlvblJlcXVlc3QaLi5ibHVlYXBpLmNvdmVyLnYxLlRyYW5zZmVyT3JnYW5pemF0aW9uUmVzcG9uc2UiK4LT5JMCJRIjL3YxL29yZ2FuaXphdGlvbnMvdHJhbnNmZXIve3RhcmdldH0SqQEKGVVwZGF0ZUNvc3RHcm91cENyZWF0aW9uVUkSMi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZUNvc3RHcm91cENyZWF0aW9uVUlSZXF1ZXN0GjMuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0R3JvdXBDcmVhdGlvblVJUmVzcG9uc2UiI4LT5JMCHToBKhoYL3YxL21lL2Nvc3Rncm91cGNyZWF0aW9uEnYKDUxpc3RVbml0VHlwZXMSJi5ibHVlYXBpLmNvdmVyLnYxLkxpc3RVbml0VHlwZXNSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5MaXN0VW5pdFR5cGVzUmVzcG9uc2UiFILT5JMCDhIML3YxL3VuaXRjb3N0EnwKDkNyZWF0ZVVuaXRUeXBlEicuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVVbml0VHlwZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVVuaXRUeXBlUmVzcG9uc2UiF4LT5JMCEToBKiIML3YxL3VuaXRjb3N0EnUKC0dldFVuaXRUeXBlEiQuYmx1ZWFwaS5jb3Zlci52MS5HZXRVbml0VHlwZVJlcXVlc3QaJS5ibHVlYXBpLmNvdmVyLnYxLkdldFVuaXRUeXBlUmVzcG9uc2UiGYLT5JMCExIRL3YxL3VuaXRjb3N0L3tpZH0SgQEKDlVwZGF0ZVVuaXRUeXBlEicuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVbml0VHlwZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVuaXRUeXBlUmVzcG9uc2UiHILT5JMCFjoBKhoRL3YxL3VuaXRjb3N0L3tpZH0SfgoORGVsZXRlVW5pdFR5cGUSJy5ibHVlYXBpLmNvdmVyLnYxLkRlbGV0ZVVuaXRUeXBlUmVxdWVzdBooLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlVW5pdFR5cGVSZXNwb25zZSIZgtPkkwITKhEvdjEvdW5pdGNvc3Qve2lkfRJ2CgpNZXJnZVVuaXRzEiMuYmx1ZWFwaS5jb3Zlci52MS5NZXJnZVVuaXRzUmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuTWVyZ2VVbml0c1Jlc3BvbnNlIh2C0+STAhc6ASoiEi92MS91bml0Y29zdC9tZXJnZRKRAQoSTGlzdFN1Z2dlc3RlZFVuaXRzEisuYmx1ZWFwaS5jb3Zlci52MS5MaXN0U3VnZ2VzdGVkVW5pdHNSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5MaXN0U3VnZ2VzdGVkVW5pdHNSZXNwb25zZSIggtPkkwIaEhgvdjEvdW5pdGNvc3QvYXV0b3N1Z2dlc3QSnQEKE01lcmdlU3VnZ2VzdGVkVW5pdHMSLC5ibHVlYXBpLmNvdmVyLnYxLk1lcmdlU3VnZ2VzdGVkVW5pdHNSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5NZXJnZVN1Z2dlc3RlZFVuaXRzUmVzcG9uc2UiKYLT5JMCIzoBKiIeL3YxL3VuaXRjb3N0L2F1dG9zdWdnZXN0L21lcmdlEqoBChdDcmVhdGVVbml0RnJvbVN1Z2dlc3RlZBIwLmJsdWVhcGkuY292ZXIudjEuQ3JlYXRlVW5pdEZyb21TdWdnZXN0ZWRSZXF1ZXN0GjEuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVVbml0RnJvbVN1Z2dlc3RlZFJlc3BvbnNlIiqC0+STAiQ6ASoiHy92MS91bml0Y29zdC9hdXRvc3VnZ2VzdC9jcmVhdGUSmAEKE0xpc3RTaGFyZWRSZXNvdXJjZXMSLC5ibHVlYXBpLmNvdmVyLnYxLkxpc3RTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5MaXN0U2hhcmVkUmVzb3VyY2VzUmVzcG9uc2UiJILT5JMCHhIcL3YxL3VuaXRjb3N0L3NoYXJlZHJlc291cmNlcxKgAQoUQ3JlYXRlU2hhcmVkUmVzb3VyY2USLi5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVNoYXJlZFJlc291cmNlc1JlcXVlc3QaLy5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVNoYXJlZFJlc291cmNlc1Jlc3BvbnNlIieC0+STAiE6ASoiHC92MS91bml0Y29zdC9zaGFyZWRyZXNvdXJjZXMSmQEKEUdldFNoYXJlZFJlc291cmNlEisuYmx1ZWFwaS5jb3Zlci52MS5HZXRTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5HZXRTaGFyZWRSZXNvdXJjZXNSZXNwb25zZSIpgtPkkwIjEiEvdjEvdW5pdGNvc3Qvc2hhcmVkcmVzb3VyY2VzL3tpZH0SpQEKFFVwZGF0ZVNoYXJlZFJlc291cmNlEi4uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVTaGFyZWRSZXNvdXJjZXNSZXNwb25zZSIsgtPkkwImOgEqGiEvdjEvdW5pdGNvc3Qvc2hhcmVkcmVzb3VyY2VzL3tpZH0SogEKFERlbGV0ZVNoYXJlZFJlc291cmNlEi4uYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVTaGFyZWRSZXNvdXJjZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVTaGFyZWRSZXNvdXJjZXNSZXNwb25zZSIpgtPkkwIjKiEvdjEvdW5pdGNvc3Qvc2hhcmVkcmVzb3VyY2VzL3tpZH0ShAEKD0xpc3RVbml0TWV0cmljcxIoLmJsdWVhcGkuY292ZXIudjEuTGlzdFVuaXRNZXRyaWNzUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuTGlzdFVuaXRNZXRyaWNzUmVzcG9uc2UiHILT5JMCFhIUL3YxL3VuaXRjb3N0L21ldHJpY3MSigEKEENyZWF0ZVVuaXRNZXRyaWMSKS5ibHVlYXBpLmNvdmVyLnYxLkNyZWF0ZVVuaXRNZXRyaWNSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVVbml0TWV0cmljUmVzcG9uc2UiH4LT5JMCGToBKiIUL3YxL3VuaXRjb3N0L21ldHJpY3MSgwEKDUdldFVuaXRNZXRyaWMSJi5ibHVlYXBpLmNvdmVyLnYxLkdldFVuaXRNZXRyaWNSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5HZXRVbml0TWV0cmljUmVzcG9uc2UiIYLT5JMCGxIZL3YxL3VuaXRjb3N0L21ldHJpY3Mve2lkfRKPAQoQVXBkYXRlVW5pdE1ldHJpYxIpLmJsdWVhcGkuY292ZXIudjEuVXBkYXRlVW5pdE1ldHJpY1JlcXVlc3QaKi5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVuaXRNZXRyaWNSZXNwb25zZSIkgtPkkwIeOgEqGhkvdjEvdW5pdGNvc3QvbWV0cmljcy97aWR9EowBChBEZWxldGVVbml0TWV0cmljEikuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVVbml0TWV0cmljUmVxdWVzdBoqLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlVW5pdE1ldHJpY1Jlc3BvbnNlIiGC0+STAhsqGS92MS91bml0Y29zdC9tZXRyaWNzL3tpZH0StgEKGENvbmZpcm1Hb29nbGVTaGVldEFjY2VzcxIxLmJsdWVhcGkuY292ZXIudjEuQ29uZmlybUdvb2dsZVNoZWV0QWNjZXNzUmVxdWVzdBoyLmJsdWVhcGkuY292ZXIudjEuQ29uZmlybUdvb2dsZVNoZWV0QWNjZXNzUmVzcG9uc2UiM4LT5JMCLToBKiIoL3YxL3VuaXRjb3N0L21ldHJpY3MvZ29vZ2xlc2hlZXQvY29uZmlybRKkAQoSUHJldmlld0dvb2dsZVNoZWV0EisuYmx1ZWFwaS5jb3Zlci52MS5QcmV2aWV3R29vZ2xlU2hlZXRSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5QcmV2aWV3R29vZ2xlU2hlZXRSZXNwb25zZSIzgtPkkwItOgEqIigvdjEvdW5pdGNvc3QvbWV0cmljcy9nb29nbGVzaGVldC9wcmV2aWV3EqoBChVHZXRDbG91ZHdhdGNoTWV0YWRhdGESLi5ibHVlYXBpLmNvdmVyLnYxLkdldENsb3Vkd2F0Y2hNZXRhZGF0YVJlcXVlc3QaLy5ibHVlYXBpLmNvdmVyLnYxLkdldENsb3Vkd2F0Y2hNZXRhZGF0YVJlc3BvbnNlIjCC0+STAioSKC92MS91bml0Y29zdC9tZXRyaWNzL2Nsb3Vkd2F0Y2gvbWV0YWRhdGEShAEKD1ZlcmlmeUFQSUFjY2VzcxIoLmJsdWVhcGkuY292ZXIudjEuVmVyaWZ5QVBJQWNjZXNzUmVxdWVzdBopLmJsdWVhcGkuY292ZXIudjEuVmVyaWZ5QVBJQWNjZXNzUmVzcG9uc2UiHILT5JMCFhIUL3YxL2FwaWFjY2Vzcy92ZXJpZnkSiQEKEUdldEFJQ29zdEFuZFVzYWdlEiouYmx1ZWFwaS5jb3Zlci52MS5HZXRBSUNvc3RBbmRVc2FnZVJlcXVlc3QaKy5ibHVlYXBpLmNvdmVyLnYxLkdldEFJQ29zdEFuZFVzYWdlUmVzcG9uc2UiG4LT5JMCFToBKiIQL3YxL2FpL2Nvc3R1c2FnZRKXAQoVR2V0Q29udGFpbmVyQ29zdFVzYWdlEisuYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5Db250YWluZXJDb3N0VXNhZ2VSZXNwb25zZSIjgtPkkwIdOgEqIhgvdjEvY29udGFpbmVycy9jb3N0dXNhZ2UShwEKEFBvcHVsYXRlRGVtb0RhdGESKS5ibHVlYXBpLmNvdmVyLnYxLlBvcHVsYXRlRGVtb0RhdGFSZXF1ZXN0GiouYmx1ZWFwaS5jb3Zlci52MS5Qb3B1bGF0ZURlbW9EYXRhUmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL2RlbW8vcG9wdWxhdGUSewoNUmVzZXREZW1vRGF0YRImLmJsdWVhcGkuY292ZXIudjEuUmVzZXREZW1vRGF0YVJlcXVlc3QaJy5ibHVlYXBpLmNvdmVyLnYxLlJlc2V0RGVtb0RhdGFSZXNwb25zZSIZgtPkkwITOgEqIg4vdjEvZGVtby9yZXNldBKZAQoPR2V0RGlzY291bnRQbGFuEiguYmx1ZWFwaS5jb3Zlci52MS5HZXREaXNjb3VudFBsYW5SZXF1ZXN0GikuYmx1ZWFwaS5jb3Zlci52MS5HZXREaXNjb3VudFBsYW5SZXNwb25zZSIxgtPkkwIrOgEqIiYvdjEve3ZlbmRvcn0vZGlzY291bnRwbGFuL3tvcmdJZH06cmVhZBJ/Cg5HZXRDb3N0VXNhZ2VWMhInLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdFVzYWdlVjJSZXF1ZXN0GiguYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0VXNhZ2VWMlJlc3BvbnNlIhiC0+STAhI6ASoiDS92MS9jb3N0dXNhZ2UwARKoAQoVTGlzdE5vbnBlcmZvcm1pbmdSYXRlEi4uYmx1ZWFwaS5jb3Zlci52MS5MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5MaXN0Tm9ucGVyZm9ybWluZ1JhdGVSZXNwb25zZSIugtPkkwIoOgEqIiMvdjEvcmVwb3J0cy9yYXRlL25vbnBlcmZvcm1pbmc6cmVhZBKoAQoVTGlzdFVudGFnZ2VkUmVzb3VyY2VzEi4uYmx1ZWFwaS5jb3Zlci52MS5MaXN0VW50YWdnZWRSZXNvdXJjZXNSZXF1ZXN0Gi8uYmx1ZWFwaS5jb3Zlci52MS5MaXN0VW50YWdnZWRSZXNvdXJjZXNSZXNwb25zZSIugtPkkwIoOgEqIiMvdjEvcmVwb3J0cy9yZXNvdXJjZXMvdW50YWdnZWQ6cmVhZBJ/Cg1MaXN0Rm9yZWNhc3RzEiYuYmx1ZWFwaS5jb3Zlci52MS5MaXN0Rm9yZWNhc3RzUmVxdWVzdBonLmJsdWVhcGkuY292ZXIudjEuTGlzdEZvcmVjYXN0c1Jlc3BvbnNlIh2C0+STAhc6ASoiEi92MS9mb3JlY2FzdHM6cmVhZBKJAQoSQ3JlYXRlQ29zdEZvcmVjYXN0EisuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVDb3N0Rm9yZWNhc3RSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5DcmVhdGVDb3N0Rm9yZWNhc3RSZXNwb25zZSIYgtPkkwISOgEqIg0vdjEvZm9yZWNhc3RzEoIBCg9HZXRDb3N0Rm9yZWNhc3QSKC5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RGb3JlY2FzdFJlcXVlc3QaKS5ibHVlYXBpLmNvdmVyLnYxLkdldENvc3RGb3JlY2FzdFJlc3BvbnNlIhqC0+STAhQSEi92MS9mb3JlY2FzdHMve2lkfRKOAQoSVXBkYXRlQ29zdEZvcmVjYXN0EisuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0Rm9yZWNhc3RSZXF1ZXN0GiwuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVDb3N0Rm9yZWNhc3RSZXNwb25zZSIdgtPkkwIXOgEqGhIvdjEvZm9yZWNhc3RzL3tpZH0SiwEKEkRlbGV0ZUNvc3RGb3JlY2FzdBIrLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQ29zdEZvcmVjYXN0UmVxdWVzdBosLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlQ29zdEZvcmVjYXN0UmVzcG9uc2UiGoLT5JMCFCoSL3YxL2ZvcmVjYXN0cy97aWR9EpsBChRHZXRDb3N0Rm9yZWNhc3RzRGF0YRItLmJsdWVhcGkuY292ZXIudjEuR2V0Q29zdEZvcmVjYXN0c0RhdGFSZXF1ZXN0Gi4uYmx1ZWFwaS5jb3Zlci52MS5HZXRDb3N0Rm9yZWNhc3RzRGF0YVJlc3BvbnNlIiKC0+STAhw6ASoiFy92MS9mb3JlY2FzdHMvZGF0YTpyZWFkMAESjwEKE0dldFJlY29tbWVuZGF0aW9uVjMSLC5ibHVlYXBpLmNvdmVyLnYxLkdldFJlY29tbWVuZGF0aW9uVjNSZXF1ZXN0Gi0uYmx1ZWFwaS5jb3Zlci52MS5HZXRSZWNvbW1lbmRhdGlvblYzUmVzcG9uc2UiG4LT5JMCFRITL3YxL3JlY29tbWVuZGF0aW9ucxKcAQoVTGlzdFJlY29tbWVuZGF0aW9uc1YzEi4uYmx1ZWFwaS5jb3Zlci52MS5MaXN0UmVjb21tZW5kYXRpb25zVjNSZXF1ZXN0GicuYmx1ZWFwaS5jb3Zlci52MS5SZWNvbW1lbmRhdGlvblN1bW1hcnkiKILT5JMCIjoBKiIdL3YxL3JlY29tbWVuZGF0aW9ucy9zdW1tYXJpZXMwARKlAQoXRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjMSMC5ibHVlYXBpLmNvdmVyLnYxLkV4ZWN1dGVSZWNvbW1lbmRhdGlvblYzUmVxdWVzdBoxLmJsdWVhcGkuY292ZXIudjEuRXhlY3V0ZVJlY29tbWVuZGF0aW9uVjNSZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvcmVjb21tZW5kYXRpb24vZXhlY3V0ZRJ2CgtJbnZpdGVVc2VycxIkLmJsdWVhcGkuY292ZXIudjEuSW52aXRlVXNlcnNSZXF1ZXN0GiUuYmx1ZWFwaS5jb3Zlci52MS5JbnZpdGVVc2Vyc1Jlc3BvbnNlIhqC0+STAhQ6ASoiDy92MS91c2VyL2ludml0ZRJuCgpEZWxldGVVc2VyEiMuYmx1ZWFwaS5jb3Zlci52MS5EZWxldGVVc2VyUmVxdWVzdBokLmJsdWVhcGkuY292ZXIudjEuRGVsZXRlVXNlclJlc3BvbnNlIhWC0+STAg8qDS92MS91c2VyL3tpZH0SggEKDlVwZGF0ZVVzZXJSb2xlEicuYmx1ZWFwaS5jb3Zlci52MS5VcGRhdGVVc2VyUm9sZVJlcXVlc3QaKC5ibHVlYXBpLmNvdmVyLnYxLlVwZGF0ZVVzZXJSb2xlUmVzcG9uc2UiHYLT5JMCFzoBKhoSL3YxL3VzZXIve3VzZXJfaWR9EmcKCUxpc3RVc2VycxIiLmJsdWVhcGkuY292ZXIudjEuTGlzdFVzZXJzUmVxdWVzdBojLmJsdWVhcGkuY292ZXIudjEuTGlzdFVzZXJzUmVzcG9uc2UiEYLT5JMCCxIJL3YxL3VzZXJzEoABCgxSZWludml0ZVVzZXISJS5ibHVlYXBpLmNvdmVyLnYxLlJlaW52aXRlVXNlclJlcXVlc3QaJi5ibHVlYXBpLmNvdmVyLnYxLlJlaW52aXRlVXNlclJlc3BvbnNlIiGC0+STAhs6ASoiFi92MS91c2VyL3tpZH0vcmVpbnZpdGUalwGSQZMBEkIoQkVUQSkgQ292ZXIgQVBJLiBCYXNlIFVSTDogaHR0cHM6Ly9hcGkuYWxwaGF1cy5jbG91ZC9tL2JsdWUvY292ZXIaTQoSU2VydmljZSBkZWZpbml0aW9uEjdodHRwczovL2dpdGh1Yi5jb20vYWxwaGF1c2xhYnMvYmx1ZWFwaS90cmVlL21haW4vY292ZXIvQksKF2Nsb3VkLmFscGhhdXMuYXBpLmNvdmVyQgpDb3ZlclByb3RvWiRnaXRodWIuY29tL2FscGhhdXNsYWJzL2JsdWVhcGkvY292ZXJiBnByb3RvMw", [optimizationrecommendation_pb_1.file_api_cover_optimizationrecommendation, recommendation_pb_1.file_api_cover_recommendation_recommendation, attribute_pb_1.file_api_cover_attribute, user_pb_1.file_api_cover_user, view_pb_1.file_api_cover_view, unitcost_pb_1.file_api_cover_unitcost, costgroup_pb_1.file_api_cover_costgroup, accountaccess_pb_1.file_api_cover_accountaccess, costforecast_pb_1.file_api_cover_costforecast, discountplan_pb_1.file_api_cover_discountplan, discountrecommendation_pb_1.file_api_cover_discountrecommendation, rightsizingrecommendation_pb_1.file_api_cover_rightsizingrecommendation, alert_pb_1.file_api_cover_alert, budget_pb_1.file_api_cover_budget, insightreport_pb_1.file_api_cover_insightreport, operation_pb_1.file_protos_operation, annotations_pb_1.file_google_api_annotations, wkt_1.file_google_protobuf_empty, wkt_1.file_google_protobuf_struct, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations]);
39
+ /**
40
+ * Describes the message blueapi.cover.v1.ReinviteUserRequest.
41
+ * Use `create(ReinviteUserRequestSchema)` to create a new message.
42
+ */
43
+ exports.ReinviteUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 0);
44
+ /**
45
+ * Describes the message blueapi.cover.v1.ReinviteUserResponse.
46
+ * Use `create(ReinviteUserResponseSchema)` to create a new message.
47
+ */
48
+ exports.ReinviteUserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 1);
49
+ /**
50
+ * Describes the message blueapi.cover.v1.ListUsersRequest.
51
+ * Use `create(ListUsersRequestSchema)` to create a new message.
52
+ */
53
+ exports.ListUsersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 2);
54
+ /**
55
+ * Describes the message blueapi.cover.v1.ListUsersResponse.
56
+ * Use `create(ListUsersResponseSchema)` to create a new message.
57
+ */
58
+ exports.ListUsersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 3);
59
+ /**
60
+ * Describes the message blueapi.cover.v1.ListUsersResponse.UserSummary.
61
+ * Use `create(ListUsersResponse_UserSummarySchema)` to create a new message.
62
+ */
63
+ exports.ListUsersResponse_UserSummarySchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 3, 0);
64
+ /**
65
+ * Describes the message blueapi.cover.v1.UpdateUserRoleRequest.
66
+ * Use `create(UpdateUserRoleRequestSchema)` to create a new message.
67
+ */
68
+ exports.UpdateUserRoleRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 4);
69
+ /**
70
+ * Describes the message blueapi.cover.v1.UpdateUserRoleResponse.
71
+ * Use `create(UpdateUserRoleResponseSchema)` to create a new message.
72
+ */
73
+ exports.UpdateUserRoleResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 5);
74
+ /**
75
+ * Describes the message blueapi.cover.v1.DeleteUserRequest.
76
+ * Use `create(DeleteUserRequestSchema)` to create a new message.
77
+ */
78
+ exports.DeleteUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 6);
79
+ /**
80
+ * Describes the message blueapi.cover.v1.DeleteUserResponse.
81
+ * Use `create(DeleteUserResponseSchema)` to create a new message.
82
+ */
83
+ exports.DeleteUserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 7);
84
+ /**
85
+ * Describes the message blueapi.cover.v1.InviteUsersRequest.
86
+ * Use `create(InviteUsersRequestSchema)` to create a new message.
87
+ */
88
+ exports.InviteUsersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 8);
89
+ /**
90
+ * Describes the message blueapi.cover.v1.InviteUsersResponse.
91
+ * Use `create(InviteUsersResponseSchema)` to create a new message.
92
+ */
93
+ exports.InviteUsersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 9);
39
94
  /**
40
95
  * Describes the message blueapi.cover.v1.ExecuteRecommendationV3Request.
41
96
  * Use `create(ExecuteRecommendationV3RequestSchema)` to create a new message.
42
97
  */
43
- exports.ExecuteRecommendationV3RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 0);
98
+ exports.ExecuteRecommendationV3RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 10);
44
99
  /**
45
100
  * @generated from enum blueapi.cover.v1.ExecuteRecommendationV3Request.ExecuteType
46
101
  */
@@ -70,42 +125,42 @@ var ExecuteRecommendationV3Request_ExecuteType;
70
125
  /**
71
126
  * Describes the enum blueapi.cover.v1.ExecuteRecommendationV3Request.ExecuteType.
72
127
  */
73
- exports.ExecuteRecommendationV3Request_ExecuteTypeSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 0, 0);
128
+ exports.ExecuteRecommendationV3Request_ExecuteTypeSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 10, 0);
74
129
  /**
75
130
  * Describes the message blueapi.cover.v1.ExecuteRecommendationV3Response.
76
131
  * Use `create(ExecuteRecommendationV3ResponseSchema)` to create a new message.
77
132
  */
78
- exports.ExecuteRecommendationV3ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 1);
133
+ exports.ExecuteRecommendationV3ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 11);
79
134
  /**
80
135
  * Describes the message blueapi.cover.v1.ListRecommendationsV3Request.
81
136
  * Use `create(ListRecommendationsV3RequestSchema)` to create a new message.
82
137
  */
83
- exports.ListRecommendationsV3RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 2);
138
+ exports.ListRecommendationsV3RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 12);
84
139
  /**
85
140
  * Describes the message blueapi.cover.v1.RecommendationSummary.
86
141
  * Use `create(RecommendationSummarySchema)` to create a new message.
87
142
  */
88
- exports.RecommendationSummarySchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 3);
143
+ exports.RecommendationSummarySchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 13);
89
144
  /**
90
145
  * Describes the message blueapi.cover.v1.GetRecommendationV3Request.
91
146
  * Use `create(GetRecommendationV3RequestSchema)` to create a new message.
92
147
  */
93
- exports.GetRecommendationV3RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 4);
148
+ exports.GetRecommendationV3RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 14);
94
149
  /**
95
150
  * Describes the message blueapi.cover.v1.GetRecommendationV3Response.
96
151
  * Use `create(GetRecommendationV3ResponseSchema)` to create a new message.
97
152
  */
98
- exports.GetRecommendationV3ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 5);
153
+ exports.GetRecommendationV3ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 15);
99
154
  /**
100
155
  * Describes the message blueapi.cover.v1.GetRecommendationV3Response.RecommendationDetail.
101
156
  * Use `create(GetRecommendationV3Response_RecommendationDetailSchema)` to create a new message.
102
157
  */
103
- exports.GetRecommendationV3Response_RecommendationDetailSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 5, 0);
158
+ exports.GetRecommendationV3Response_RecommendationDetailSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 15, 0);
104
159
  /**
105
160
  * Describes the message blueapi.cover.v1.GetCostForecastsDataRequest.
106
161
  * Use `create(GetCostForecastsDataRequestSchema)` to create a new message.
107
162
  */
108
- exports.GetCostForecastsDataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 6);
163
+ exports.GetCostForecastsDataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 16);
109
164
  /**
110
165
  * @generated from enum blueapi.cover.v1.GetCostForecastsDataRequest.Granularity
111
166
  */
@@ -127,72 +182,72 @@ var GetCostForecastsDataRequest_Granularity;
127
182
  /**
128
183
  * Describes the enum blueapi.cover.v1.GetCostForecastsDataRequest.Granularity.
129
184
  */
130
- exports.GetCostForecastsDataRequest_GranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 6, 0);
185
+ exports.GetCostForecastsDataRequest_GranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 16, 0);
131
186
  /**
132
187
  * Describes the message blueapi.cover.v1.GetCostForecastsDataResponse.
133
188
  * Use `create(GetCostForecastsDataResponseSchema)` to create a new message.
134
189
  */
135
- exports.GetCostForecastsDataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 7);
190
+ exports.GetCostForecastsDataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 17);
136
191
  /**
137
192
  * Describes the message blueapi.cover.v1.ListForecastsRequest.
138
193
  * Use `create(ListForecastsRequestSchema)` to create a new message.
139
194
  */
140
- exports.ListForecastsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 8);
195
+ exports.ListForecastsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 18);
141
196
  /**
142
197
  * Describes the message blueapi.cover.v1.ListForecastsResponse.
143
198
  * Use `create(ListForecastsResponseSchema)` to create a new message.
144
199
  */
145
- exports.ListForecastsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 9);
200
+ exports.ListForecastsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 19);
146
201
  /**
147
202
  * Describes the message blueapi.cover.v1.CreateCostForecastRequest.
148
203
  * Use `create(CreateCostForecastRequestSchema)` to create a new message.
149
204
  */
150
- exports.CreateCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 10);
205
+ exports.CreateCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 20);
151
206
  /**
152
207
  * Describes the message blueapi.cover.v1.CreateCostForecastResponse.
153
208
  * Use `create(CreateCostForecastResponseSchema)` to create a new message.
154
209
  */
155
- exports.CreateCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 11);
210
+ exports.CreateCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 21);
156
211
  /**
157
212
  * Describes the message blueapi.cover.v1.GetCostForecastRequest.
158
213
  * Use `create(GetCostForecastRequestSchema)` to create a new message.
159
214
  */
160
- exports.GetCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 12);
215
+ exports.GetCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 22);
161
216
  /**
162
217
  * Describes the message blueapi.cover.v1.GetCostForecastResponse.
163
218
  * Use `create(GetCostForecastResponseSchema)` to create a new message.
164
219
  */
165
- exports.GetCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 13);
220
+ exports.GetCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 23);
166
221
  /**
167
222
  * Describes the message blueapi.cover.v1.UpdateCostForecastRequest.
168
223
  * Use `create(UpdateCostForecastRequestSchema)` to create a new message.
169
224
  */
170
- exports.UpdateCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 14);
225
+ exports.UpdateCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 24);
171
226
  /**
172
227
  * Describes the message blueapi.cover.v1.UpdateCostForecastResponse.
173
228
  * Use `create(UpdateCostForecastResponseSchema)` to create a new message.
174
229
  */
175
- exports.UpdateCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 15);
230
+ exports.UpdateCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25);
176
231
  /**
177
232
  * Describes the message blueapi.cover.v1.DeleteCostForecastRequest.
178
233
  * Use `create(DeleteCostForecastRequestSchema)` to create a new message.
179
234
  */
180
- exports.DeleteCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 16);
235
+ exports.DeleteCostForecastRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 26);
181
236
  /**
182
237
  * Describes the message blueapi.cover.v1.DeleteCostForecastResponse.
183
238
  * Use `create(DeleteCostForecastResponseSchema)` to create a new message.
184
239
  */
185
- exports.DeleteCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 17);
240
+ exports.DeleteCostForecastResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 27);
186
241
  /**
187
242
  * Describes the message blueapi.cover.v1.GetCostUsageV2Response.
188
243
  * Use `create(GetCostUsageV2ResponseSchema)` to create a new message.
189
244
  */
190
- exports.GetCostUsageV2ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 18);
245
+ exports.GetCostUsageV2ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 28);
191
246
  /**
192
247
  * Describes the message blueapi.cover.v1.GetCostUsageV2Request.
193
248
  * Use `create(GetCostUsageV2RequestSchema)` to create a new message.
194
249
  */
195
- exports.GetCostUsageV2RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 19);
250
+ exports.GetCostUsageV2RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 29);
196
251
  /**
197
252
  * @generated from enum blueapi.cover.v1.GetCostUsageV2Request.Granularity
198
253
  */
@@ -214,7 +269,7 @@ var GetCostUsageV2Request_Granularity;
214
269
  /**
215
270
  * Describes the enum blueapi.cover.v1.GetCostUsageV2Request.Granularity.
216
271
  */
217
- exports.GetCostUsageV2Request_GranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 19, 0);
272
+ exports.GetCostUsageV2Request_GranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 29, 0);
218
273
  /**
219
274
  * @generated from enum blueapi.cover.v1.GetCostUsageV2Request.Category
220
275
  */
@@ -236,37 +291,37 @@ var GetCostUsageV2Request_Category;
236
291
  /**
237
292
  * Describes the enum blueapi.cover.v1.GetCostUsageV2Request.Category.
238
293
  */
239
- exports.GetCostUsageV2Request_CategorySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 19, 1);
294
+ exports.GetCostUsageV2Request_CategorySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 29, 1);
240
295
  /**
241
296
  * Describes the message blueapi.cover.v1.PopulateDemoDataRequest.
242
297
  * Use `create(PopulateDemoDataRequestSchema)` to create a new message.
243
298
  */
244
- exports.PopulateDemoDataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 20);
299
+ exports.PopulateDemoDataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 30);
245
300
  /**
246
301
  * Describes the message blueapi.cover.v1.PopulateDemoDataResponse.
247
302
  * Use `create(PopulateDemoDataResponseSchema)` to create a new message.
248
303
  */
249
- exports.PopulateDemoDataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 21);
304
+ exports.PopulateDemoDataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 31);
250
305
  /**
251
306
  * Describes the message blueapi.cover.v1.ResetDemoDataRequest.
252
307
  * Use `create(ResetDemoDataRequestSchema)` to create a new message.
253
308
  */
254
- exports.ResetDemoDataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 22);
309
+ exports.ResetDemoDataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 32);
255
310
  /**
256
311
  * Describes the message blueapi.cover.v1.ResetDemoDataResponse.
257
312
  * Use `create(ResetDemoDataResponseSchema)` to create a new message.
258
313
  */
259
- exports.ResetDemoDataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 23);
314
+ exports.ResetDemoDataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 33);
260
315
  /**
261
316
  * Describes the message blueapi.cover.v1.ContainerCostUsageRequest.
262
317
  * Use `create(ContainerCostUsageRequestSchema)` to create a new message.
263
318
  */
264
- exports.ContainerCostUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 24);
319
+ exports.ContainerCostUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 34);
265
320
  /**
266
321
  * Describes the message blueapi.cover.v1.ContainerCostUsageRequest.FilterCriteria.
267
322
  * Use `create(ContainerCostUsageRequest_FilterCriteriaSchema)` to create a new message.
268
323
  */
269
- exports.ContainerCostUsageRequest_FilterCriteriaSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 24, 0);
324
+ exports.ContainerCostUsageRequest_FilterCriteriaSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 34, 0);
270
325
  /**
271
326
  * @generated from enum blueapi.cover.v1.ContainerCostUsageRequest.FilterCriteria.FilterOperator
272
327
  */
@@ -288,7 +343,7 @@ var ContainerCostUsageRequest_FilterCriteria_FilterOperator;
288
343
  /**
289
344
  * Describes the enum blueapi.cover.v1.ContainerCostUsageRequest.FilterCriteria.FilterOperator.
290
345
  */
291
- exports.ContainerCostUsageRequest_FilterCriteria_FilterOperatorSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 24, 0, 0);
346
+ exports.ContainerCostUsageRequest_FilterCriteria_FilterOperatorSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 34, 0, 0);
292
347
  /**
293
348
  * @generated from enum blueapi.cover.v1.ContainerCostUsageRequest.TimeGranularity
294
349
  */
@@ -310,7 +365,7 @@ var ContainerCostUsageRequest_TimeGranularity;
310
365
  /**
311
366
  * Describes the enum blueapi.cover.v1.ContainerCostUsageRequest.TimeGranularity.
312
367
  */
313
- exports.ContainerCostUsageRequest_TimeGranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 24, 0);
368
+ exports.ContainerCostUsageRequest_TimeGranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 34, 0);
314
369
  /**
315
370
  * @generated from enum blueapi.cover.v1.ContainerCostUsageRequest.MetricType
316
371
  */
@@ -340,7 +395,7 @@ var ContainerCostUsageRequest_MetricType;
340
395
  /**
341
396
  * Describes the enum blueapi.cover.v1.ContainerCostUsageRequest.MetricType.
342
397
  */
343
- exports.ContainerCostUsageRequest_MetricTypeSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 24, 1);
398
+ exports.ContainerCostUsageRequest_MetricTypeSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 34, 1);
344
399
  /**
345
400
  * @generated from enum blueapi.cover.v1.ContainerCostUsageRequest.ServiceType
346
401
  */
@@ -362,52 +417,52 @@ var ContainerCostUsageRequest_ServiceType;
362
417
  /**
363
418
  * Describes the enum blueapi.cover.v1.ContainerCostUsageRequest.ServiceType.
364
419
  */
365
- exports.ContainerCostUsageRequest_ServiceTypeSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 24, 2);
420
+ exports.ContainerCostUsageRequest_ServiceTypeSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 34, 2);
366
421
  /**
367
422
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.
368
423
  * Use `create(ContainerCostUsageResponseSchema)` to create a new message.
369
424
  */
370
- exports.ContainerCostUsageResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25);
425
+ exports.ContainerCostUsageResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35);
371
426
  /**
372
427
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.CostMetric.
373
428
  * Use `create(ContainerCostUsageResponse_CostMetricSchema)` to create a new message.
374
429
  */
375
- exports.ContainerCostUsageResponse_CostMetricSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25, 0);
430
+ exports.ContainerCostUsageResponse_CostMetricSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35, 0);
376
431
  /**
377
432
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.UsageMetric.
378
433
  * Use `create(ContainerCostUsageResponse_UsageMetricSchema)` to create a new message.
379
434
  */
380
- exports.ContainerCostUsageResponse_UsageMetricSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25, 1);
435
+ exports.ContainerCostUsageResponse_UsageMetricSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35, 1);
381
436
  /**
382
437
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.MetricDataPoint.
383
438
  * Use `create(ContainerCostUsageResponse_MetricDataPointSchema)` to create a new message.
384
439
  */
385
- exports.ContainerCostUsageResponse_MetricDataPointSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25, 2);
440
+ exports.ContainerCostUsageResponse_MetricDataPointSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35, 2);
386
441
  /**
387
442
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.ResourceHighlight.
388
443
  * Use `create(ContainerCostUsageResponse_ResourceHighlightSchema)` to create a new message.
389
444
  */
390
- exports.ContainerCostUsageResponse_ResourceHighlightSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25, 3);
445
+ exports.ContainerCostUsageResponse_ResourceHighlightSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35, 3);
391
446
  /**
392
447
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.ResourceHighlights.
393
448
  * Use `create(ContainerCostUsageResponse_ResourceHighlightsSchema)` to create a new message.
394
449
  */
395
- exports.ContainerCostUsageResponse_ResourceHighlightsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25, 4);
450
+ exports.ContainerCostUsageResponse_ResourceHighlightsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35, 4);
396
451
  /**
397
452
  * Describes the message blueapi.cover.v1.ContainerCostUsageResponse.GroupedResult.
398
453
  * Use `create(ContainerCostUsageResponse_GroupedResultSchema)` to create a new message.
399
454
  */
400
- exports.ContainerCostUsageResponse_GroupedResultSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 25, 5);
455
+ exports.ContainerCostUsageResponse_GroupedResultSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35, 5);
401
456
  /**
402
457
  * Describes the message blueapi.cover.v1.GetAICostAndUsageRequest.
403
458
  * Use `create(GetAICostAndUsageRequestSchema)` to create a new message.
404
459
  */
405
- exports.GetAICostAndUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 26);
460
+ exports.GetAICostAndUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 36);
406
461
  /**
407
462
  * Describes the message blueapi.cover.v1.GetAICostAndUsageRequest.Filter.
408
463
  * Use `create(GetAICostAndUsageRequest_FilterSchema)` to create a new message.
409
464
  */
410
- exports.GetAICostAndUsageRequest_FilterSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 26, 0);
465
+ exports.GetAICostAndUsageRequest_FilterSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 36, 0);
411
466
  /**
412
467
  * @generated from enum blueapi.cover.v1.GetAICostAndUsageRequest.Filter.Operator
413
468
  */
@@ -429,7 +484,7 @@ var GetAICostAndUsageRequest_Filter_Operator;
429
484
  /**
430
485
  * Describes the enum blueapi.cover.v1.GetAICostAndUsageRequest.Filter.Operator.
431
486
  */
432
- exports.GetAICostAndUsageRequest_Filter_OperatorSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 26, 0, 0);
487
+ exports.GetAICostAndUsageRequest_Filter_OperatorSchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 36, 0, 0);
433
488
  /**
434
489
  * @generated from enum blueapi.cover.v1.GetAICostAndUsageRequest.Granularity
435
490
  */
@@ -451,1767 +506,1767 @@ var GetAICostAndUsageRequest_Granularity;
451
506
  /**
452
507
  * Describes the enum blueapi.cover.v1.GetAICostAndUsageRequest.Granularity.
453
508
  */
454
- exports.GetAICostAndUsageRequest_GranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 26, 0);
509
+ exports.GetAICostAndUsageRequest_GranularitySchema = (0, codegenv2_1.enumDesc)(exports.file_cover_v1_cover, 36, 0);
455
510
  /**
456
511
  * Describes the message blueapi.cover.v1.GetAICostAndUsageResponse.
457
512
  * Use `create(GetAICostAndUsageResponseSchema)` to create a new message.
458
513
  */
459
- exports.GetAICostAndUsageResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 27);
514
+ exports.GetAICostAndUsageResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 37);
460
515
  /**
461
516
  * Describes the message blueapi.cover.v1.GetAICostAndUsageResponse.Cost.
462
517
  * Use `create(GetAICostAndUsageResponse_CostSchema)` to create a new message.
463
518
  */
464
- exports.GetAICostAndUsageResponse_CostSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 27, 0);
519
+ exports.GetAICostAndUsageResponse_CostSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 37, 0);
465
520
  /**
466
521
  * Describes the message blueapi.cover.v1.GetAICostAndUsageResponse.Usage.
467
522
  * Use `create(GetAICostAndUsageResponse_UsageSchema)` to create a new message.
468
523
  */
469
- exports.GetAICostAndUsageResponse_UsageSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 27, 1);
524
+ exports.GetAICostAndUsageResponse_UsageSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 37, 1);
470
525
  /**
471
526
  * Describes the message blueapi.cover.v1.GetAICostAndUsageResponse.Metric.
472
527
  * Use `create(GetAICostAndUsageResponse_MetricSchema)` to create a new message.
473
528
  */
474
- exports.GetAICostAndUsageResponse_MetricSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 27, 2);
529
+ exports.GetAICostAndUsageResponse_MetricSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 37, 2);
475
530
  /**
476
531
  * Describes the message blueapi.cover.v1.GetAICostAndUsageResponse.Result.
477
532
  * Use `create(GetAICostAndUsageResponse_ResultSchema)` to create a new message.
478
533
  */
479
- exports.GetAICostAndUsageResponse_ResultSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 27, 3);
534
+ exports.GetAICostAndUsageResponse_ResultSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 37, 3);
480
535
  /**
481
536
  * Describes the message blueapi.cover.v1.GetExecutionStatusRequest.
482
537
  * Use `create(GetExecutionStatusRequestSchema)` to create a new message.
483
538
  */
484
- exports.GetExecutionStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 28);
539
+ exports.GetExecutionStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 38);
485
540
  /**
486
541
  * Describes the message blueapi.cover.v1.GetExecutionStatusResponse.
487
542
  * Use `create(GetExecutionStatusResponseSchema)` to create a new message.
488
543
  */
489
- exports.GetExecutionStatusResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 29);
544
+ exports.GetExecutionStatusResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 39);
490
545
  /**
491
546
  * Describes the message blueapi.cover.v1.VerifyAPIAccessRequest.
492
547
  * Use `create(VerifyAPIAccessRequestSchema)` to create a new message.
493
548
  */
494
- exports.VerifyAPIAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 30);
549
+ exports.VerifyAPIAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 40);
495
550
  /**
496
551
  * Describes the message blueapi.cover.v1.VerifyAPIAccessResponse.
497
552
  * Use `create(VerifyAPIAccessResponseSchema)` to create a new message.
498
553
  */
499
- exports.VerifyAPIAccessResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 31);
554
+ exports.VerifyAPIAccessResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 41);
500
555
  /**
501
556
  * Describes the message blueapi.cover.v1.GetRecommendationV2Request.
502
557
  * Use `create(GetRecommendationV2RequestSchema)` to create a new message.
503
558
  */
504
- exports.GetRecommendationV2RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 32);
559
+ exports.GetRecommendationV2RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 42);
505
560
  /**
506
561
  * Describes the message blueapi.cover.v1.GetRecommendationV2Response.
507
562
  * Use `create(GetRecommendationV2ResponseSchema)` to create a new message.
508
563
  */
509
- exports.GetRecommendationV2ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 33);
564
+ exports.GetRecommendationV2ResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 43);
510
565
  /**
511
566
  * Describes the message blueapi.cover.v1.OnboardOrgRequest.
512
567
  * Use `create(OnboardOrgRequestSchema)` to create a new message.
513
568
  */
514
- exports.OnboardOrgRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 34);
569
+ exports.OnboardOrgRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 44);
515
570
  /**
516
571
  * Describes the message blueapi.cover.v1.OnboardOrgResponse.
517
572
  * Use `create(OnboardOrgResponseSchema)` to create a new message.
518
573
  */
519
- exports.OnboardOrgResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 35);
574
+ exports.OnboardOrgResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 45);
520
575
  /**
521
576
  * Describes the message blueapi.cover.v1.InviteMemberRequest.
522
577
  * Use `create(InviteMemberRequestSchema)` to create a new message.
523
578
  */
524
- exports.InviteMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 36);
579
+ exports.InviteMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 46);
525
580
  /**
526
581
  * Describes the message blueapi.cover.v1.InviteMemberResponse.
527
582
  * Use `create(InviteMemberResponseSchema)` to create a new message.
528
583
  */
529
- exports.InviteMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 37);
584
+ exports.InviteMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 47);
530
585
  /**
531
586
  * Describes the message blueapi.cover.v1.ActivateUserRequest.
532
587
  * Use `create(ActivateUserRequestSchema)` to create a new message.
533
588
  */
534
- exports.ActivateUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 38);
589
+ exports.ActivateUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 48);
535
590
  /**
536
591
  * Describes the message blueapi.cover.v1.ActivateUserResponse.
537
592
  * Use `create(ActivateUserResponseSchema)` to create a new message.
538
593
  */
539
- exports.ActivateUserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 39);
594
+ exports.ActivateUserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 49);
540
595
  /**
541
596
  * Describes the message blueapi.cover.v1.CreateMemberRequest.
542
597
  * Use `create(CreateMemberRequestSchema)` to create a new message.
543
598
  */
544
- exports.CreateMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 40);
599
+ exports.CreateMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 50);
545
600
  /**
546
601
  * Describes the message blueapi.cover.v1.CreateMemberResponse.
547
602
  * Use `create(CreateMemberResponseSchema)` to create a new message.
548
603
  */
549
- exports.CreateMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 41);
604
+ exports.CreateMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 51);
550
605
  /**
551
606
  * Describes the message blueapi.cover.v1.GetMembersRequest.
552
607
  * Use `create(GetMembersRequestSchema)` to create a new message.
553
608
  */
554
- exports.GetMembersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 42);
609
+ exports.GetMembersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 52);
555
610
  /**
556
611
  * Describes the message blueapi.cover.v1.GetMembersResponse.
557
612
  * Use `create(GetMembersResponseSchema)` to create a new message.
558
613
  */
559
- exports.GetMembersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 43);
614
+ exports.GetMembersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 53);
560
615
  /**
561
616
  * Describes the message blueapi.cover.v1.GetMemberDetailsRequest.
562
617
  * Use `create(GetMemberDetailsRequestSchema)` to create a new message.
563
618
  */
564
- exports.GetMemberDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 44);
619
+ exports.GetMemberDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 54);
565
620
  /**
566
621
  * Describes the message blueapi.cover.v1.GetMemberDetailsResponse.
567
622
  * Use `create(GetMemberDetailsResponseSchema)` to create a new message.
568
623
  */
569
- exports.GetMemberDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 45);
624
+ exports.GetMemberDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 55);
570
625
  /**
571
626
  * Describes the message blueapi.cover.v1.GetMemberCostGroupRequest.
572
627
  * Use `create(GetMemberCostGroupRequestSchema)` to create a new message.
573
628
  */
574
- exports.GetMemberCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 46);
629
+ exports.GetMemberCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 56);
575
630
  /**
576
631
  * Describes the message blueapi.cover.v1.GetMemberCostGroupResponse.
577
632
  * Use `create(GetMemberCostGroupResponseSchema)` to create a new message.
578
633
  */
579
- exports.GetMemberCostGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 47);
634
+ exports.GetMemberCostGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 57);
580
635
  /**
581
636
  * Describes the message blueapi.cover.v1.UpdateMemberPermissionRequest.
582
637
  * Use `create(UpdateMemberPermissionRequestSchema)` to create a new message.
583
638
  */
584
- exports.UpdateMemberPermissionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 48);
639
+ exports.UpdateMemberPermissionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 58);
585
640
  /**
586
641
  * Describes the message blueapi.cover.v1.UpdateMemberPermissionResponse.
587
642
  * Use `create(UpdateMemberPermissionResponseSchema)` to create a new message.
588
643
  */
589
- exports.UpdateMemberPermissionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 49);
644
+ exports.UpdateMemberPermissionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 59);
590
645
  /**
591
646
  * Describes the message blueapi.cover.v1.GetUserDetailsRequest.
592
647
  * Use `create(GetUserDetailsRequestSchema)` to create a new message.
593
648
  */
594
- exports.GetUserDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 50);
649
+ exports.GetUserDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 60);
595
650
  /**
596
651
  * Describes the message blueapi.cover.v1.GetUserDetailsResponse.
597
652
  * Use `create(GetUserDetailsResponseSchema)` to create a new message.
598
653
  */
599
- exports.GetUserDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 51);
654
+ exports.GetUserDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 61);
600
655
  /**
601
656
  * Describes the message blueapi.cover.v1.UpdateUserAvatarRequest.
602
657
  * Use `create(UpdateUserAvatarRequestSchema)` to create a new message.
603
658
  */
604
- exports.UpdateUserAvatarRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 52);
659
+ exports.UpdateUserAvatarRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 62);
605
660
  /**
606
661
  * Describes the message blueapi.cover.v1.UpdateUserAvatarResponse.
607
662
  * Use `create(UpdateUserAvatarResponseSchema)` to create a new message.
608
663
  */
609
- exports.UpdateUserAvatarResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 53);
664
+ exports.UpdateUserAvatarResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 63);
610
665
  /**
611
666
  * Describes the message blueapi.cover.v1.UpdateUserIconRequest.
612
667
  * Use `create(UpdateUserIconRequestSchema)` to create a new message.
613
668
  */
614
- exports.UpdateUserIconRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 54);
669
+ exports.UpdateUserIconRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 64);
615
670
  /**
616
671
  * Describes the message blueapi.cover.v1.UpdateUserIconResponse.
617
672
  * Use `create(UpdateUserIconResponseSchema)` to create a new message.
618
673
  */
619
- exports.UpdateUserIconResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 55);
674
+ exports.UpdateUserIconResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 65);
620
675
  /**
621
676
  * Describes the message blueapi.cover.v1.UpdateUserColorThemeRequest.
622
677
  * Use `create(UpdateUserColorThemeRequestSchema)` to create a new message.
623
678
  */
624
- exports.UpdateUserColorThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 56);
679
+ exports.UpdateUserColorThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 66);
625
680
  /**
626
681
  * Describes the message blueapi.cover.v1.UpdateUserColorThemeResponse.
627
682
  * Use `create(UpdateUserColorThemeResponseSchema)` to create a new message.
628
683
  */
629
- exports.UpdateUserColorThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 57);
684
+ exports.UpdateUserColorThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 67);
630
685
  /**
631
686
  * Describes the message blueapi.cover.v1.UpdateUserNameRequest.
632
687
  * Use `create(UpdateUserNameRequestSchema)` to create a new message.
633
688
  */
634
- exports.UpdateUserNameRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 58);
689
+ exports.UpdateUserNameRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 68);
635
690
  /**
636
691
  * Describes the message blueapi.cover.v1.UpdateUserNameResponse.
637
692
  * Use `create(UpdateUserNameResponseSchema)` to create a new message.
638
693
  */
639
- exports.UpdateUserNameResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 59);
694
+ exports.UpdateUserNameResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 69);
640
695
  /**
641
696
  * Describes the message blueapi.cover.v1.UpdateUserEmailRequest.
642
697
  * Use `create(UpdateUserEmailRequestSchema)` to create a new message.
643
698
  */
644
- exports.UpdateUserEmailRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 60);
699
+ exports.UpdateUserEmailRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 70);
645
700
  /**
646
701
  * Describes the message blueapi.cover.v1.UpdateUserEmailResponse.
647
702
  * Use `create(UpdateUserEmailResponseSchema)` to create a new message.
648
703
  */
649
- exports.UpdateUserEmailResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 61);
704
+ exports.UpdateUserEmailResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 71);
650
705
  /**
651
706
  * Describes the message blueapi.cover.v1.UpdateUserMainViewRequest.
652
707
  * Use `create(UpdateUserMainViewRequestSchema)` to create a new message.
653
708
  */
654
- exports.UpdateUserMainViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 62);
709
+ exports.UpdateUserMainViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 72);
655
710
  /**
656
711
  * Describes the message blueapi.cover.v1.UpdateUserMainViewResponse.
657
712
  * Use `create(UpdateUserMainViewResponseSchema)` to create a new message.
658
713
  */
659
- exports.UpdateUserMainViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 63);
714
+ exports.UpdateUserMainViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 73);
660
715
  /**
661
716
  * Describes the message blueapi.cover.v1.ResetUserPasswordRequest.
662
717
  * Use `create(ResetUserPasswordRequestSchema)` to create a new message.
663
718
  */
664
- exports.ResetUserPasswordRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 64);
719
+ exports.ResetUserPasswordRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 74);
665
720
  /**
666
721
  * Describes the message blueapi.cover.v1.ResetUserPasswordResponse.
667
722
  * Use `create(ResetUserPasswordResponseSchema)` to create a new message.
668
723
  */
669
- exports.ResetUserPasswordResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 65);
724
+ exports.ResetUserPasswordResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 75);
670
725
  /**
671
726
  * Describes the message blueapi.cover.v1.UpdateUserLocaleRequest.
672
727
  * Use `create(UpdateUserLocaleRequestSchema)` to create a new message.
673
728
  */
674
- exports.UpdateUserLocaleRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 66);
729
+ exports.UpdateUserLocaleRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 76);
675
730
  /**
676
731
  * Describes the message blueapi.cover.v1.UpdateUserLocaleResponse.
677
732
  * Use `create(UpdateUserLocaleResponseSchema)` to create a new message.
678
733
  */
679
- exports.UpdateUserLocaleResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 67);
734
+ exports.UpdateUserLocaleResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 77);
680
735
  /**
681
736
  * Describes the message blueapi.cover.v1.UpdateUserAppThemeRequest.
682
737
  * Use `create(UpdateUserAppThemeRequestSchema)` to create a new message.
683
738
  */
684
- exports.UpdateUserAppThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 68);
739
+ exports.UpdateUserAppThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 78);
685
740
  /**
686
741
  * Describes the message blueapi.cover.v1.UpdateUserAppThemeResponse.
687
742
  * Use `create(UpdateUserAppThemeResponseSchema)` to create a new message.
688
743
  */
689
- exports.UpdateUserAppThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 69);
744
+ exports.UpdateUserAppThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 79);
690
745
  /**
691
746
  * Describes the message blueapi.cover.v1.UpdateUserTimezoneRequest.
692
747
  * Use `create(UpdateUserTimezoneRequestSchema)` to create a new message.
693
748
  */
694
- exports.UpdateUserTimezoneRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 70);
749
+ exports.UpdateUserTimezoneRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 80);
695
750
  /**
696
751
  * Describes the message blueapi.cover.v1.UpdateUserTimezoneResponse.
697
752
  * Use `create(UpdateUserTimezoneResponseSchema)` to create a new message.
698
753
  */
699
- exports.UpdateUserTimezoneResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 71);
754
+ exports.UpdateUserTimezoneResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 81);
700
755
  /**
701
756
  * Describes the message blueapi.cover.v1.UpdateUserAttributesRequest.
702
757
  * Use `create(UpdateUserAttributesRequestSchema)` to create a new message.
703
758
  */
704
- exports.UpdateUserAttributesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 72);
759
+ exports.UpdateUserAttributesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 82);
705
760
  /**
706
761
  * Describes the message blueapi.cover.v1.UpdateUserAttributesResponse.
707
762
  * Use `create(UpdateUserAttributesResponseSchema)` to create a new message.
708
763
  */
709
- exports.UpdateUserAttributesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 73);
764
+ exports.UpdateUserAttributesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 83);
710
765
  /**
711
766
  * Describes the message blueapi.cover.v1.DeleteMemberRequest.
712
767
  * Use `create(DeleteMemberRequestSchema)` to create a new message.
713
768
  */
714
- exports.DeleteMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 74);
769
+ exports.DeleteMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 84);
715
770
  /**
716
771
  * Describes the message blueapi.cover.v1.DeleteMemberResponse.
717
772
  * Use `create(DeleteMemberResponseSchema)` to create a new message.
718
773
  */
719
- exports.DeleteMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 75);
774
+ exports.DeleteMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 85);
720
775
  /**
721
776
  * Describes the message blueapi.cover.v1.ResetPasswordRequest.
722
777
  * Use `create(ResetPasswordRequestSchema)` to create a new message.
723
778
  */
724
- exports.ResetPasswordRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 76);
779
+ exports.ResetPasswordRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 86);
725
780
  /**
726
781
  * Describes the message blueapi.cover.v1.ResetPasswordResponse.
727
782
  * Use `create(ResetPasswordResponseSchema)` to create a new message.
728
783
  */
729
- exports.ResetPasswordResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 77);
784
+ exports.ResetPasswordResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 87);
730
785
  /**
731
786
  * Describes the message blueapi.cover.v1.CreateViewRequest.
732
787
  * Use `create(CreateViewRequestSchema)` to create a new message.
733
788
  */
734
- exports.CreateViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 78);
789
+ exports.CreateViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 88);
735
790
  /**
736
791
  * Describes the message blueapi.cover.v1.CreateViewResponse.
737
792
  * Use `create(CreateViewResponseSchema)` to create a new message.
738
793
  */
739
- exports.CreateViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 79);
794
+ exports.CreateViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 89);
740
795
  /**
741
796
  * Describes the message blueapi.cover.v1.GetViewsRequest.
742
797
  * Use `create(GetViewsRequestSchema)` to create a new message.
743
798
  */
744
- exports.GetViewsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 80);
799
+ exports.GetViewsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 90);
745
800
  /**
746
801
  * Describes the message blueapi.cover.v1.GetViewsResponse.
747
802
  * Use `create(GetViewsResponseSchema)` to create a new message.
748
803
  */
749
- exports.GetViewsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 81);
804
+ exports.GetViewsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 91);
750
805
  /**
751
806
  * Describes the message blueapi.cover.v1.GetCurrentViewRequest.
752
807
  * Use `create(GetCurrentViewRequestSchema)` to create a new message.
753
808
  */
754
- exports.GetCurrentViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 82);
809
+ exports.GetCurrentViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 92);
755
810
  /**
756
811
  * Describes the message blueapi.cover.v1.GetCurrentViewResponse.
757
812
  * Use `create(GetCurrentViewResponseSchema)` to create a new message.
758
813
  */
759
- exports.GetCurrentViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 83);
814
+ exports.GetCurrentViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 93);
760
815
  /**
761
816
  * Describes the message blueapi.cover.v1.GetFavoriteViewsRequest.
762
817
  * Use `create(GetFavoriteViewsRequestSchema)` to create a new message.
763
818
  */
764
- exports.GetFavoriteViewsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 84);
819
+ exports.GetFavoriteViewsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 94);
765
820
  /**
766
821
  * Describes the message blueapi.cover.v1.GetFavoriteViewsResponse.
767
822
  * Use `create(GetFavoriteViewsResponseSchema)` to create a new message.
768
823
  */
769
- exports.GetFavoriteViewsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 85);
824
+ exports.GetFavoriteViewsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 95);
770
825
  /**
771
826
  * Describes the message blueapi.cover.v1.PublishViewRequest.
772
827
  * Use `create(PublishViewRequestSchema)` to create a new message.
773
828
  */
774
- exports.PublishViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 86);
829
+ exports.PublishViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 96);
775
830
  /**
776
831
  * Describes the message blueapi.cover.v1.PublishViewResponse.
777
832
  * Use `create(PublishViewResponseSchema)` to create a new message.
778
833
  */
779
- exports.PublishViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 87);
834
+ exports.PublishViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 97);
780
835
  /**
781
836
  * Describes the message blueapi.cover.v1.AddFavoriteRequest.
782
837
  * Use `create(AddFavoriteRequestSchema)` to create a new message.
783
838
  */
784
- exports.AddFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 88);
839
+ exports.AddFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 98);
785
840
  /**
786
841
  * Describes the message blueapi.cover.v1.AddFavoriteResponse.
787
842
  * Use `create(AddFavoriteResponseSchema)` to create a new message.
788
843
  */
789
- exports.AddFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 89);
844
+ exports.AddFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 99);
790
845
  /**
791
846
  * Describes the message blueapi.cover.v1.RemoveFavoriteRequest.
792
847
  * Use `create(RemoveFavoriteRequestSchema)` to create a new message.
793
848
  */
794
- exports.RemoveFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 90);
849
+ exports.RemoveFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 100);
795
850
  /**
796
851
  * Describes the message blueapi.cover.v1.RemoveFavoriteResponse.
797
852
  * Use `create(RemoveFavoriteResponseSchema)` to create a new message.
798
853
  */
799
- exports.RemoveFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 91);
854
+ exports.RemoveFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 101);
800
855
  /**
801
856
  * Describes the message blueapi.cover.v1.UpdateViewRequest.
802
857
  * Use `create(UpdateViewRequestSchema)` to create a new message.
803
858
  */
804
- exports.UpdateViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 92);
859
+ exports.UpdateViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 102);
805
860
  /**
806
861
  * Describes the message blueapi.cover.v1.UpdateViewResponse.
807
862
  * Use `create(UpdateViewResponseSchema)` to create a new message.
808
863
  */
809
- exports.UpdateViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 93);
864
+ exports.UpdateViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 103);
810
865
  /**
811
866
  * Describes the message blueapi.cover.v1.UpdateViewLayoutRequest.
812
867
  * Use `create(UpdateViewLayoutRequestSchema)` to create a new message.
813
868
  */
814
- exports.UpdateViewLayoutRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 94);
869
+ exports.UpdateViewLayoutRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 104);
815
870
  /**
816
871
  * Describes the message blueapi.cover.v1.UpdateViewLayoutResponse.
817
872
  * Use `create(UpdateViewLayoutResponseSchema)` to create a new message.
818
873
  */
819
- exports.UpdateViewLayoutResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 95);
874
+ exports.UpdateViewLayoutResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 105);
820
875
  /**
821
876
  * Describes the message blueapi.cover.v1.UpdateViewWidgetRequest.
822
877
  * Use `create(UpdateViewWidgetRequestSchema)` to create a new message.
823
878
  */
824
- exports.UpdateViewWidgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 96);
879
+ exports.UpdateViewWidgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 106);
825
880
  /**
826
881
  * Describes the message blueapi.cover.v1.UpdateViewWidgetResponse.
827
882
  * Use `create(UpdateViewWidgetResponseSchema)` to create a new message.
828
883
  */
829
- exports.UpdateViewWidgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 97);
884
+ exports.UpdateViewWidgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 107);
830
885
  /**
831
886
  * Describes the message blueapi.cover.v1.UpdateViewColorThemeRequest.
832
887
  * Use `create(UpdateViewColorThemeRequestSchema)` to create a new message.
833
888
  */
834
- exports.UpdateViewColorThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 98);
889
+ exports.UpdateViewColorThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 108);
835
890
  /**
836
891
  * Describes the message blueapi.cover.v1.UpdateViewColorThemeResponse.
837
892
  * Use `create(UpdateViewColorThemeResponseSchema)` to create a new message.
838
893
  */
839
- exports.UpdateViewColorThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 99);
894
+ exports.UpdateViewColorThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 109);
840
895
  /**
841
896
  * Describes the message blueapi.cover.v1.UpdateViewCurrencyRequest.
842
897
  * Use `create(UpdateViewCurrencyRequestSchema)` to create a new message.
843
898
  */
844
- exports.UpdateViewCurrencyRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 100);
899
+ exports.UpdateViewCurrencyRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 110);
845
900
  /**
846
901
  * Describes the message blueapi.cover.v1.UpdateViewCurrencyResponse.
847
902
  * Use `create(UpdateViewCurrencyResponseSchema)` to create a new message.
848
903
  */
849
- exports.UpdateViewCurrencyResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 101);
904
+ exports.UpdateViewCurrencyResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 111);
850
905
  /**
851
906
  * Describes the message blueapi.cover.v1.SetOrgUpdateCurrencyRequest.
852
907
  * Use `create(SetOrgUpdateCurrencyRequestSchema)` to create a new message.
853
908
  */
854
- exports.SetOrgUpdateCurrencyRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 102);
909
+ exports.SetOrgUpdateCurrencyRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 112);
855
910
  /**
856
911
  * Describes the message blueapi.cover.v1.SetOrgUpdateCurrencyResponse.
857
912
  * Use `create(SetOrgUpdateCurrencyResponseSchema)` to create a new message.
858
913
  */
859
- exports.SetOrgUpdateCurrencyResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 103);
914
+ exports.SetOrgUpdateCurrencyResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 113);
860
915
  /**
861
916
  * Describes the message blueapi.cover.v1.GetOrgUpdateCurrencyRequest.
862
917
  * Use `create(GetOrgUpdateCurrencyRequestSchema)` to create a new message.
863
918
  */
864
- exports.GetOrgUpdateCurrencyRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 104);
919
+ exports.GetOrgUpdateCurrencyRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 114);
865
920
  /**
866
921
  * Describes the message blueapi.cover.v1.GetOrgUpdateCurrencyResponse.
867
922
  * Use `create(GetOrgUpdateCurrencyResponseSchema)` to create a new message.
868
923
  */
869
- exports.GetOrgUpdateCurrencyResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 105);
924
+ exports.GetOrgUpdateCurrencyResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 115);
870
925
  /**
871
926
  * Describes the message blueapi.cover.v1.ListExchangeRatesRequest.
872
927
  * Use `create(ListExchangeRatesRequestSchema)` to create a new message.
873
928
  */
874
- exports.ListExchangeRatesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 106);
929
+ exports.ListExchangeRatesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 116);
875
930
  /**
876
931
  * Describes the message blueapi.cover.v1.ListExchangeRatesResponse.
877
932
  * Use `create(ListExchangeRatesResponseSchema)` to create a new message.
878
933
  */
879
- exports.ListExchangeRatesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 107);
934
+ exports.ListExchangeRatesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 117);
880
935
  /**
881
936
  * Describes the message blueapi.cover.v1.ExchangeRates.
882
937
  * Use `create(ExchangeRatesSchema)` to create a new message.
883
938
  */
884
- exports.ExchangeRatesSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 108);
939
+ exports.ExchangeRatesSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 118);
885
940
  /**
886
941
  * Describes the message blueapi.cover.v1.DeleteViewRequest.
887
942
  * Use `create(DeleteViewRequestSchema)` to create a new message.
888
943
  */
889
- exports.DeleteViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 109);
944
+ exports.DeleteViewRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 119);
890
945
  /**
891
946
  * Describes the message blueapi.cover.v1.DeleteViewResponse.
892
947
  * Use `create(DeleteViewResponseSchema)` to create a new message.
893
948
  */
894
- exports.DeleteViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 110);
949
+ exports.DeleteViewResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 120);
895
950
  /**
896
951
  * Describes the message blueapi.cover.v1.UpdateSideMenuStateRequest.
897
952
  * Use `create(UpdateSideMenuStateRequestSchema)` to create a new message.
898
953
  */
899
- exports.UpdateSideMenuStateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 111);
954
+ exports.UpdateSideMenuStateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 121);
900
955
  /**
901
956
  * Describes the message blueapi.cover.v1.UpdateSideMenuStateResponse.
902
957
  * Use `create(UpdateSideMenuStateResponseSchema)` to create a new message.
903
958
  */
904
- exports.UpdateSideMenuStateResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 112);
959
+ exports.UpdateSideMenuStateResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 122);
905
960
  /**
906
961
  * Describes the message blueapi.cover.v1.AddSideMenuFavoriteRequest.
907
962
  * Use `create(AddSideMenuFavoriteRequestSchema)` to create a new message.
908
963
  */
909
- exports.AddSideMenuFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 113);
964
+ exports.AddSideMenuFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 123);
910
965
  /**
911
966
  * Describes the message blueapi.cover.v1.AddSideMenuFavoriteResponse.
912
967
  * Use `create(AddSideMenuFavoriteResponseSchema)` to create a new message.
913
968
  */
914
- exports.AddSideMenuFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 114);
969
+ exports.AddSideMenuFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 124);
915
970
  /**
916
971
  * Describes the message blueapi.cover.v1.RemoveSideMenuFavoriteRequest.
917
972
  * Use `create(RemoveSideMenuFavoriteRequestSchema)` to create a new message.
918
973
  */
919
- exports.RemoveSideMenuFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 115);
974
+ exports.RemoveSideMenuFavoriteRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 125);
920
975
  /**
921
976
  * Describes the message blueapi.cover.v1.RemoveSideMenuFavoriteResponse.
922
977
  * Use `create(RemoveSideMenuFavoriteResponseSchema)` to create a new message.
923
978
  */
924
- exports.RemoveSideMenuFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 116);
979
+ exports.RemoveSideMenuFavoriteResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 126);
925
980
  /**
926
981
  * Describes the message blueapi.cover.v1.CreateCostGroupRequest.
927
982
  * Use `create(CreateCostGroupRequestSchema)` to create a new message.
928
983
  */
929
- exports.CreateCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 117);
984
+ exports.CreateCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 127);
930
985
  /**
931
986
  * Describes the message blueapi.cover.v1.CreateCostGroupResponse.
932
987
  * Use `create(CreateCostGroupResponseSchema)` to create a new message.
933
988
  */
934
- exports.CreateCostGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 118);
989
+ exports.CreateCostGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 128);
935
990
  /**
936
991
  * Describes the message blueapi.cover.v1.GetCostGroupsRequest.
937
992
  * Use `create(GetCostGroupsRequestSchema)` to create a new message.
938
993
  */
939
- exports.GetCostGroupsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 119);
994
+ exports.GetCostGroupsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 129);
940
995
  /**
941
996
  * Describes the message blueapi.cover.v1.GetCostGroupsResponse.
942
997
  * Use `create(GetCostGroupsResponseSchema)` to create a new message.
943
998
  */
944
- exports.GetCostGroupsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 120);
999
+ exports.GetCostGroupsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 130);
945
1000
  /**
946
1001
  * Describes the message blueapi.cover.v1.GetCostGroupDetailsRequest.
947
1002
  * Use `create(GetCostGroupDetailsRequestSchema)` to create a new message.
948
1003
  */
949
- exports.GetCostGroupDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 121);
1004
+ exports.GetCostGroupDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 131);
950
1005
  /**
951
1006
  * Describes the message blueapi.cover.v1.GetCostGroupDetailsResponse.
952
1007
  * Use `create(GetCostGroupDetailsResponseSchema)` to create a new message.
953
1008
  */
954
- exports.GetCostGroupDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 122);
1009
+ exports.GetCostGroupDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 132);
955
1010
  /**
956
1011
  * Describes the message blueapi.cover.v1.UpdateCostGroupNameRequest.
957
1012
  * Use `create(UpdateCostGroupNameRequestSchema)` to create a new message.
958
1013
  */
959
- exports.UpdateCostGroupNameRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 123);
1014
+ exports.UpdateCostGroupNameRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 133);
960
1015
  /**
961
1016
  * Describes the message blueapi.cover.v1.UpdateCostGroupNameResponse.
962
1017
  * Use `create(UpdateCostGroupNameResponseSchema)` to create a new message.
963
1018
  */
964
- exports.UpdateCostGroupNameResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 124);
1019
+ exports.UpdateCostGroupNameResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 134);
965
1020
  /**
966
1021
  * Describes the message blueapi.cover.v1.UpdateCostGroupDescriptionRequest.
967
1022
  * Use `create(UpdateCostGroupDescriptionRequestSchema)` to create a new message.
968
1023
  */
969
- exports.UpdateCostGroupDescriptionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 125);
1024
+ exports.UpdateCostGroupDescriptionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 135);
970
1025
  /**
971
1026
  * Describes the message blueapi.cover.v1.UpdateCostGroupDescriptionResponse.
972
1027
  * Use `create(UpdateCostGroupDescriptionResponseSchema)` to create a new message.
973
1028
  */
974
- exports.UpdateCostGroupDescriptionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 126);
1029
+ exports.UpdateCostGroupDescriptionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 136);
975
1030
  /**
976
1031
  * Describes the message blueapi.cover.v1.UpdateCostGroupImageRequest.
977
1032
  * Use `create(UpdateCostGroupImageRequestSchema)` to create a new message.
978
1033
  */
979
- exports.UpdateCostGroupImageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 127);
1034
+ exports.UpdateCostGroupImageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 137);
980
1035
  /**
981
1036
  * Describes the message blueapi.cover.v1.UpdateCostGroupImageResponse.
982
1037
  * Use `create(UpdateCostGroupImageResponseSchema)` to create a new message.
983
1038
  */
984
- exports.UpdateCostGroupImageResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 128);
1039
+ exports.UpdateCostGroupImageResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 138);
985
1040
  /**
986
1041
  * Describes the message blueapi.cover.v1.UpdateCostGroupIconRequest.
987
1042
  * Use `create(UpdateCostGroupIconRequestSchema)` to create a new message.
988
1043
  */
989
- exports.UpdateCostGroupIconRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 129);
1044
+ exports.UpdateCostGroupIconRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 139);
990
1045
  /**
991
1046
  * Describes the message blueapi.cover.v1.UpdateCostGroupIconResponse.
992
1047
  * Use `create(UpdateCostGroupIconResponseSchema)` to create a new message.
993
1048
  */
994
- exports.UpdateCostGroupIconResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 130);
1049
+ exports.UpdateCostGroupIconResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 140);
995
1050
  /**
996
1051
  * Describes the message blueapi.cover.v1.UpdateCostGroupColorThemeRequest.
997
1052
  * Use `create(UpdateCostGroupColorThemeRequestSchema)` to create a new message.
998
1053
  */
999
- exports.UpdateCostGroupColorThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 131);
1054
+ exports.UpdateCostGroupColorThemeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 141);
1000
1055
  /**
1001
1056
  * Describes the message blueapi.cover.v1.UpdateCostGroupColorThemeResponse.
1002
1057
  * Use `create(UpdateCostGroupColorThemeResponseSchema)` to create a new message.
1003
1058
  */
1004
- exports.UpdateCostGroupColorThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 132);
1059
+ exports.UpdateCostGroupColorThemeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 142);
1005
1060
  /**
1006
1061
  * Describes the message blueapi.cover.v1.UpdateCostGroupCombinationsRequest.
1007
1062
  * Use `create(UpdateCostGroupCombinationsRequestSchema)` to create a new message.
1008
1063
  */
1009
- exports.UpdateCostGroupCombinationsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 133);
1064
+ exports.UpdateCostGroupCombinationsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 143);
1010
1065
  /**
1011
1066
  * Describes the message blueapi.cover.v1.UpdateCostGroupCombinationsResponse.
1012
1067
  * Use `create(UpdateCostGroupCombinationsResponseSchema)` to create a new message.
1013
1068
  */
1014
- exports.UpdateCostGroupCombinationsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 134);
1069
+ exports.UpdateCostGroupCombinationsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 144);
1015
1070
  /**
1016
1071
  * Describes the message blueapi.cover.v1.AssignCostGroupMemberRequest.
1017
1072
  * Use `create(AssignCostGroupMemberRequestSchema)` to create a new message.
1018
1073
  */
1019
- exports.AssignCostGroupMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 135);
1074
+ exports.AssignCostGroupMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 145);
1020
1075
  /**
1021
1076
  * Describes the message blueapi.cover.v1.AssignCostGroupMemberResponse.
1022
1077
  * Use `create(AssignCostGroupMemberResponseSchema)` to create a new message.
1023
1078
  */
1024
- exports.AssignCostGroupMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 136);
1079
+ exports.AssignCostGroupMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 146);
1025
1080
  /**
1026
1081
  * Describes the message blueapi.cover.v1.RemoveCostGroupMemberRequest.
1027
1082
  * Use `create(RemoveCostGroupMemberRequestSchema)` to create a new message.
1028
1083
  */
1029
- exports.RemoveCostGroupMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 137);
1084
+ exports.RemoveCostGroupMemberRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 147);
1030
1085
  /**
1031
1086
  * Describes the message blueapi.cover.v1.RemoveCostGroupMemberResponse.
1032
1087
  * Use `create(RemoveCostGroupMemberResponseSchema)` to create a new message.
1033
1088
  */
1034
- exports.RemoveCostGroupMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 138);
1089
+ exports.RemoveCostGroupMemberResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 148);
1035
1090
  /**
1036
1091
  * Describes the message blueapi.cover.v1.DeleteCostGroupRequest.
1037
1092
  * Use `create(DeleteCostGroupRequestSchema)` to create a new message.
1038
1093
  */
1039
- exports.DeleteCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 139);
1094
+ exports.DeleteCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 149);
1040
1095
  /**
1041
1096
  * Describes the message blueapi.cover.v1.DeleteCostGroupResponse.
1042
1097
  * Use `create(DeleteCostGroupResponseSchema)` to create a new message.
1043
1098
  */
1044
- exports.DeleteCostGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 140);
1099
+ exports.DeleteCostGroupResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 150);
1045
1100
  /**
1046
1101
  * Describes the message blueapi.cover.v1.GetAccountAccessTemplateUrlRequest.
1047
1102
  * Use `create(GetAccountAccessTemplateUrlRequestSchema)` to create a new message.
1048
1103
  */
1049
- exports.GetAccountAccessTemplateUrlRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 141);
1104
+ exports.GetAccountAccessTemplateUrlRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 151);
1050
1105
  /**
1051
1106
  * Describes the message blueapi.cover.v1.GetAccountAccessTemplateUrlResponse.
1052
1107
  * Use `create(GetAccountAccessTemplateUrlResponseSchema)` to create a new message.
1053
1108
  */
1054
- exports.GetAccountAccessTemplateUrlResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 142);
1109
+ exports.GetAccountAccessTemplateUrlResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 152);
1055
1110
  /**
1056
1111
  * Describes the message blueapi.cover.v1.ListAccountAccessRequest.
1057
1112
  * Use `create(ListAccountAccessRequestSchema)` to create a new message.
1058
1113
  */
1059
- exports.ListAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 143);
1114
+ exports.ListAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 153);
1060
1115
  /**
1061
1116
  * Describes the message blueapi.cover.v1.GetAccountAccessRequest.
1062
1117
  * Use `create(GetAccountAccessRequestSchema)` to create a new message.
1063
1118
  */
1064
- exports.GetAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 144);
1119
+ exports.GetAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 154);
1065
1120
  /**
1066
1121
  * Describes the message blueapi.cover.v1.AccountAccess.
1067
1122
  * Use `create(AccountAccessSchema)` to create a new message.
1068
1123
  */
1069
- exports.AccountAccessSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 145);
1124
+ exports.AccountAccessSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 155);
1070
1125
  /**
1071
1126
  * Describes the message blueapi.cover.v1.CreateAccountAccessRequest.
1072
1127
  * Use `create(CreateAccountAccessRequestSchema)` to create a new message.
1073
1128
  */
1074
- exports.CreateAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 146);
1129
+ exports.CreateAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 156);
1075
1130
  /**
1076
1131
  * Describes the message blueapi.cover.v1.CreateAccountAccessStacksetRequest.
1077
1132
  * Use `create(CreateAccountAccessStacksetRequestSchema)` to create a new message.
1078
1133
  */
1079
- exports.CreateAccountAccessStacksetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 147);
1134
+ exports.CreateAccountAccessStacksetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 157);
1080
1135
  /**
1081
1136
  * Describes the message blueapi.cover.v1.UpdateAccountAccessRequest.
1082
1137
  * Use `create(UpdateAccountAccessRequestSchema)` to create a new message.
1083
1138
  */
1084
- exports.UpdateAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 148);
1139
+ exports.UpdateAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 158);
1085
1140
  /**
1086
1141
  * Describes the message blueapi.cover.v1.DeleteAccountAccessRequest.
1087
1142
  * Use `create(DeleteAccountAccessRequestSchema)` to create a new message.
1088
1143
  */
1089
- exports.DeleteAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 149);
1144
+ exports.DeleteAccountAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 159);
1090
1145
  /**
1091
1146
  * Describes the message blueapi.cover.v1.DeleteAccountAccessResponse.
1092
1147
  * Use `create(DeleteAccountAccessResponseSchema)` to create a new message.
1093
1148
  */
1094
- exports.DeleteAccountAccessResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 150);
1149
+ exports.DeleteAccountAccessResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 160);
1095
1150
  /**
1096
1151
  * Describes the message blueapi.cover.v1.RegisterAccountRequest.
1097
1152
  * Use `create(RegisterAccountRequestSchema)` to create a new message.
1098
1153
  */
1099
- exports.RegisterAccountRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 151);
1154
+ exports.RegisterAccountRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 161);
1100
1155
  /**
1101
1156
  * Describes the message blueapi.cover.v1.ListAssetsRequest.
1102
1157
  * Use `create(ListAssetsRequestSchema)` to create a new message.
1103
1158
  */
1104
- exports.ListAssetsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 152);
1159
+ exports.ListAssetsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 162);
1105
1160
  /**
1106
1161
  * Describes the message blueapi.cover.v1.ListAssetsFilters.
1107
1162
  * Use `create(ListAssetsFiltersSchema)` to create a new message.
1108
1163
  */
1109
- exports.ListAssetsFiltersSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 153);
1164
+ exports.ListAssetsFiltersSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 163);
1110
1165
  /**
1111
1166
  * Describes the message blueapi.cover.v1.Resource.
1112
1167
  * Use `create(ResourceSchema)` to create a new message.
1113
1168
  */
1114
- exports.ResourceSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 154);
1169
+ exports.ResourceSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 164);
1115
1170
  /**
1116
1171
  * Describes the message blueapi.cover.v1.GetAssetsSummaryRequest.
1117
1172
  * Use `create(GetAssetsSummaryRequestSchema)` to create a new message.
1118
1173
  */
1119
- exports.GetAssetsSummaryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 155);
1174
+ exports.GetAssetsSummaryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 165);
1120
1175
  /**
1121
1176
  * Describes the message blueapi.cover.v1.GetAssetsSummaryResponse.
1122
1177
  * Use `create(GetAssetsSummaryResponseSchema)` to create a new message.
1123
1178
  */
1124
- exports.GetAssetsSummaryResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 156);
1179
+ exports.GetAssetsSummaryResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 166);
1125
1180
  /**
1126
1181
  * Describes the message blueapi.cover.v1.AssetsSummary.
1127
1182
  * Use `create(AssetsSummarySchema)` to create a new message.
1128
1183
  */
1129
- exports.AssetsSummarySchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 157);
1184
+ exports.AssetsSummarySchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 167);
1130
1185
  /**
1131
1186
  * Describes the message blueapi.cover.v1.ResolveCostGroupCombinationsRequest.
1132
1187
  * Use `create(ResolveCostGroupCombinationsRequestSchema)` to create a new message.
1133
1188
  */
1134
- exports.ResolveCostGroupCombinationsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 158);
1189
+ exports.ResolveCostGroupCombinationsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 168);
1135
1190
  /**
1136
1191
  * Describes the message blueapi.cover.v1.ResolveCostGroupCombinationsResponse.
1137
1192
  * Use `create(ResolveCostGroupCombinationsResponseSchema)` to create a new message.
1138
1193
  */
1139
- exports.ResolveCostGroupCombinationsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 159);
1194
+ exports.ResolveCostGroupCombinationsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 169);
1140
1195
  /**
1141
1196
  * Describes the message blueapi.cover.v1.GetCostUsageRequest.
1142
1197
  * Use `create(GetCostUsageRequestSchema)` to create a new message.
1143
1198
  */
1144
- exports.GetCostUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 160);
1199
+ exports.GetCostUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 170);
1145
1200
  /**
1146
1201
  * Describes the message blueapi.cover.v1.GetCostUsageRequestAwsOptions.
1147
1202
  * Use `create(GetCostUsageRequestAwsOptionsSchema)` to create a new message.
1148
1203
  */
1149
- exports.GetCostUsageRequestAwsOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 161);
1204
+ exports.GetCostUsageRequestAwsOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 171);
1150
1205
  /**
1151
1206
  * Describes the message blueapi.cover.v1.GetCostUsageRequestAzureOptions.
1152
1207
  * Use `create(GetCostUsageRequestAzureOptionsSchema)` to create a new message.
1153
1208
  */
1154
- exports.GetCostUsageRequestAzureOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 162);
1209
+ exports.GetCostUsageRequestAzureOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 172);
1155
1210
  /**
1156
1211
  * Describes the message blueapi.cover.v1.GetCostUsageRequestGcpOptions.
1157
1212
  * Use `create(GetCostUsageRequestGcpOptionsSchema)` to create a new message.
1158
1213
  */
1159
- exports.GetCostUsageRequestGcpOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 163);
1214
+ exports.GetCostUsageRequestGcpOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 173);
1160
1215
  /**
1161
1216
  * Describes the message blueapi.cover.v1.GetCostUsageRequestAzureCspOptions.
1162
1217
  * Use `create(GetCostUsageRequestAzureCspOptionsSchema)` to create a new message.
1163
1218
  */
1164
- exports.GetCostUsageRequestAzureCspOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 164);
1219
+ exports.GetCostUsageRequestAzureCspOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 174);
1165
1220
  /**
1166
1221
  * Describes the message blueapi.cover.v1.GetCostUsageRequestCustomOptions.
1167
1222
  * Use `create(GetCostUsageRequestCustomOptionsSchema)` to create a new message.
1168
1223
  */
1169
- exports.GetCostUsageRequestCustomOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 165);
1224
+ exports.GetCostUsageRequestCustomOptionsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 175);
1170
1225
  /**
1171
1226
  * Describes the message blueapi.cover.v1.ReadCostsRequestOptionsFilters.
1172
1227
  * Use `create(ReadCostsRequestOptionsFiltersSchema)` to create a new message.
1173
1228
  */
1174
- exports.ReadCostsRequestOptionsFiltersSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 166);
1229
+ exports.ReadCostsRequestOptionsFiltersSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 176);
1175
1230
  /**
1176
1231
  * Describes the message blueapi.cover.v1.CostItem.
1177
1232
  * Use `create(CostItemSchema)` to create a new message.
1178
1233
  */
1179
- exports.CostItemSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 167);
1234
+ exports.CostItemSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 177);
1180
1235
  /**
1181
1236
  * Describes the message blueapi.cover.v1.GetRightSizingRecommendationRequest.
1182
1237
  * Use `create(GetRightSizingRecommendationRequestSchema)` to create a new message.
1183
1238
  */
1184
- exports.GetRightSizingRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 168);
1239
+ exports.GetRightSizingRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 178);
1185
1240
  /**
1186
1241
  * Describes the message blueapi.cover.v1.GetRightSizingRecommendationResponse.
1187
1242
  * Use `create(GetRightSizingRecommendationResponseSchema)` to create a new message.
1188
1243
  */
1189
- exports.GetRightSizingRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 169);
1244
+ exports.GetRightSizingRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 179);
1190
1245
  /**
1191
1246
  * Describes the message blueapi.cover.v1.ModifyResourceTypeRequest.
1192
1247
  * Use `create(ModifyResourceTypeRequestSchema)` to create a new message.
1193
1248
  */
1194
- exports.ModifyResourceTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 170);
1249
+ exports.ModifyResourceTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 180);
1195
1250
  /**
1196
1251
  * Describes the message blueapi.cover.v1.ModifyResourceTypeResponse.
1197
1252
  * Use `create(ModifyResourceTypeResponseSchema)` to create a new message.
1198
1253
  */
1199
- exports.ModifyResourceTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 171);
1254
+ exports.ModifyResourceTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 181);
1200
1255
  /**
1201
1256
  * Describes the message blueapi.cover.v1.TerminateResourceRequest.
1202
1257
  * Use `create(TerminateResourceRequestSchema)` to create a new message.
1203
1258
  */
1204
- exports.TerminateResourceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 172);
1259
+ exports.TerminateResourceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 182);
1205
1260
  /**
1206
1261
  * Describes the message blueapi.cover.v1.TerminateResourceResponse.
1207
1262
  * Use `create(TerminateResourceResponseSchema)` to create a new message.
1208
1263
  */
1209
- exports.TerminateResourceResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 173);
1264
+ exports.TerminateResourceResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 183);
1210
1265
  /**
1211
1266
  * Describes the message blueapi.cover.v1.UploadChargeCodeRequest.
1212
1267
  * Use `create(UploadChargeCodeRequestSchema)` to create a new message.
1213
1268
  */
1214
- exports.UploadChargeCodeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 174);
1269
+ exports.UploadChargeCodeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 184);
1215
1270
  /**
1216
1271
  * Describes the message blueapi.cover.v1.UploadChargeCodeResponse.
1217
1272
  * Use `create(UploadChargeCodeResponseSchema)` to create a new message.
1218
1273
  */
1219
- exports.UploadChargeCodeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 175);
1274
+ exports.UploadChargeCodeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 185);
1220
1275
  /**
1221
1276
  * Describes the message blueapi.cover.v1.AssignPayerRequest.
1222
1277
  * Use `create(AssignPayerRequestSchema)` to create a new message.
1223
1278
  */
1224
- exports.AssignPayerRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 176);
1279
+ exports.AssignPayerRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 186);
1225
1280
  /**
1226
1281
  * Describes the message blueapi.cover.v1.AssignPayerResponse.
1227
1282
  * Use `create(AssignPayerResponseSchema)` to create a new message.
1228
1283
  */
1229
- exports.AssignPayerResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 177);
1284
+ exports.AssignPayerResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 187);
1230
1285
  /**
1231
1286
  * Describes the message blueapi.cover.v1.GetPayersRequest.
1232
1287
  * Use `create(GetPayersRequestSchema)` to create a new message.
1233
1288
  */
1234
- exports.GetPayersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 178);
1289
+ exports.GetPayersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 188);
1235
1290
  /**
1236
1291
  * Describes the message blueapi.cover.v1.GetPayersResponse.
1237
1292
  * Use `create(GetPayersResponseSchema)` to create a new message.
1238
1293
  */
1239
- exports.GetPayersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 179);
1294
+ exports.GetPayersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 189);
1240
1295
  /**
1241
1296
  * Describes the message blueapi.cover.v1.GetAccountsRequest.
1242
1297
  * Use `create(GetAccountsRequestSchema)` to create a new message.
1243
1298
  */
1244
- exports.GetAccountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 180);
1299
+ exports.GetAccountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 190);
1245
1300
  /**
1246
1301
  * Describes the message blueapi.cover.v1.GetAccountsResponse.
1247
1302
  * Use `create(GetAccountsResponseSchema)` to create a new message.
1248
1303
  */
1249
- exports.GetAccountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 181);
1304
+ exports.GetAccountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 191);
1250
1305
  /**
1251
1306
  * Describes the message blueapi.cover.v1.GetServicesRequest.
1252
1307
  * Use `create(GetServicesRequestSchema)` to create a new message.
1253
1308
  */
1254
- exports.GetServicesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 182);
1309
+ exports.GetServicesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 192);
1255
1310
  /**
1256
1311
  * Describes the message blueapi.cover.v1.GetServicesResponse.
1257
1312
  * Use `create(GetServicesResponseSchema)` to create a new message.
1258
1313
  */
1259
- exports.GetServicesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 183);
1314
+ exports.GetServicesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 193);
1260
1315
  /**
1261
1316
  * Describes the message blueapi.cover.v1.GetRegionsRequest.
1262
1317
  * Use `create(GetRegionsRequestSchema)` to create a new message.
1263
1318
  */
1264
- exports.GetRegionsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 184);
1319
+ exports.GetRegionsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 194);
1265
1320
  /**
1266
1321
  * Describes the message blueapi.cover.v1.GetRegionsResponse.
1267
1322
  * Use `create(GetRegionsResponseSchema)` to create a new message.
1268
1323
  */
1269
- exports.GetRegionsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 185);
1324
+ exports.GetRegionsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 195);
1270
1325
  /**
1271
1326
  * Describes the message blueapi.cover.v1.GetTagsRequest.
1272
1327
  * Use `create(GetTagsRequestSchema)` to create a new message.
1273
1328
  */
1274
- exports.GetTagsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 186);
1329
+ exports.GetTagsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 196);
1275
1330
  /**
1276
1331
  * Describes the message blueapi.cover.v1.GetTagsResponse.
1277
1332
  * Use `create(GetTagsResponseSchema)` to create a new message.
1278
1333
  */
1279
- exports.GetTagsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 187);
1334
+ exports.GetTagsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 197);
1280
1335
  /**
1281
1336
  * Describes the message blueapi.cover.v1.ListFeesRequest.
1282
1337
  * Use `create(ListFeesRequestSchema)` to create a new message.
1283
1338
  */
1284
- exports.ListFeesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 188);
1339
+ exports.ListFeesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 198);
1285
1340
  /**
1286
1341
  * Describes the message blueapi.cover.v1.FeeDetails.
1287
1342
  * Use `create(FeeDetailsSchema)` to create a new message.
1288
1343
  */
1289
- exports.FeeDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 189);
1344
+ exports.FeeDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 199);
1290
1345
  /**
1291
1346
  * Describes the message blueapi.cover.v1.RestoreFeeRequest.
1292
1347
  * Use `create(RestoreFeeRequestSchema)` to create a new message.
1293
1348
  */
1294
- exports.RestoreFeeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 190);
1349
+ exports.RestoreFeeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 200);
1295
1350
  /**
1296
1351
  * Describes the message blueapi.cover.v1.GetCostGroupFeeRequest.
1297
1352
  * Use `create(GetCostGroupFeeRequestSchema)` to create a new message.
1298
1353
  */
1299
- exports.GetCostGroupFeeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 191);
1354
+ exports.GetCostGroupFeeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 201);
1300
1355
  /**
1301
1356
  * Describes the message blueapi.cover.v1.FeeItem.
1302
1357
  * Use `create(FeeItemSchema)` to create a new message.
1303
1358
  */
1304
- exports.FeeItemSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 192);
1359
+ exports.FeeItemSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 202);
1305
1360
  /**
1306
1361
  * Describes the message blueapi.cover.v1.Allocator.
1307
1362
  * Use `create(AllocatorSchema)` to create a new message.
1308
1363
  */
1309
- exports.AllocatorSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 193);
1364
+ exports.AllocatorSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 203);
1310
1365
  /**
1311
1366
  * Describes the message blueapi.cover.v1.Criteria.
1312
1367
  * Use `create(CriteriaSchema)` to create a new message.
1313
1368
  */
1314
- exports.CriteriaSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 194);
1369
+ exports.CriteriaSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 204);
1315
1370
  /**
1316
1371
  * Describes the message blueapi.cover.v1.CostAllocatorDetails.
1317
1372
  * Use `create(CostAllocatorDetailsSchema)` to create a new message.
1318
1373
  */
1319
- exports.CostAllocatorDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 195);
1374
+ exports.CostAllocatorDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 205);
1320
1375
  /**
1321
1376
  * Describes the message blueapi.cover.v1.CostAllocatorRequest.
1322
1377
  * Use `create(CostAllocatorRequestSchema)` to create a new message.
1323
1378
  */
1324
- exports.CostAllocatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 196);
1379
+ exports.CostAllocatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 206);
1325
1380
  /**
1326
1381
  * Describes the message blueapi.cover.v1.ListAllocatorsRequest.
1327
1382
  * Use `create(ListAllocatorsRequestSchema)` to create a new message.
1328
1383
  */
1329
- exports.ListAllocatorsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 197);
1384
+ exports.ListAllocatorsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 207);
1330
1385
  /**
1331
1386
  * Describes the message blueapi.cover.v1.CreateAllocatorRequest.
1332
1387
  * Use `create(CreateAllocatorRequestSchema)` to create a new message.
1333
1388
  */
1334
- exports.CreateAllocatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 198);
1389
+ exports.CreateAllocatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 208);
1335
1390
  /**
1336
1391
  * Describes the message blueapi.cover.v1.GetAllocationAttributesRequest.
1337
1392
  * Use `create(GetAllocationAttributesRequestSchema)` to create a new message.
1338
1393
  */
1339
- exports.GetAllocationAttributesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 199);
1394
+ exports.GetAllocationAttributesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 209);
1340
1395
  /**
1341
1396
  * Describes the message blueapi.cover.v1.GetAllocationAttributesResponse.
1342
1397
  * Use `create(GetAllocationAttributesResponseSchema)` to create a new message.
1343
1398
  */
1344
- exports.GetAllocationAttributesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 200);
1399
+ exports.GetAllocationAttributesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 210);
1345
1400
  /**
1346
1401
  * Describes the message blueapi.cover.v1.GetAllocationAttributesResponse.AllocationAttribute.
1347
1402
  * Use `create(GetAllocationAttributesResponse_AllocationAttributeSchema)` to create a new message.
1348
1403
  */
1349
- exports.GetAllocationAttributesResponse_AllocationAttributeSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 200, 0);
1404
+ exports.GetAllocationAttributesResponse_AllocationAttributeSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 210, 0);
1350
1405
  /**
1351
1406
  * Describes the message blueapi.cover.v1.GetAllocationSourcesRequest.
1352
1407
  * Use `create(GetAllocationSourcesRequestSchema)` to create a new message.
1353
1408
  */
1354
- exports.GetAllocationSourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 201);
1409
+ exports.GetAllocationSourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 211);
1355
1410
  /**
1356
1411
  * Describes the message blueapi.cover.v1.GetAllocationSourcesResponse.
1357
1412
  * Use `create(GetAllocationSourcesResponseSchema)` to create a new message.
1358
1413
  */
1359
- exports.GetAllocationSourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 202);
1414
+ exports.GetAllocationSourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 212);
1360
1415
  /**
1361
1416
  * Describes the message blueapi.cover.v1.GetAllocationSourcesResponse.AllocationSources.
1362
1417
  * Use `create(GetAllocationSourcesResponse_AllocationSourcesSchema)` to create a new message.
1363
1418
  */
1364
- exports.GetAllocationSourcesResponse_AllocationSourcesSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 202, 0);
1419
+ exports.GetAllocationSourcesResponse_AllocationSourcesSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 212, 0);
1365
1420
  /**
1366
1421
  * Describes the message blueapi.cover.v1.DeleteAllocatorRequest.
1367
1422
  * Use `create(DeleteAllocatorRequestSchema)` to create a new message.
1368
1423
  */
1369
- exports.DeleteAllocatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 203);
1424
+ exports.DeleteAllocatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 213);
1370
1425
  /**
1371
1426
  * Describes the message blueapi.cover.v1.ProxyCreateCompletionRequest.
1372
1427
  * Use `create(ProxyCreateCompletionRequestSchema)` to create a new message.
1373
1428
  */
1374
- exports.ProxyCreateCompletionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 204);
1429
+ exports.ProxyCreateCompletionRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 214);
1375
1430
  /**
1376
1431
  * Describes the message blueapi.cover.v1.ProxyCreateCompletionResponse.
1377
1432
  * Use `create(ProxyCreateCompletionResponseSchema)` to create a new message.
1378
1433
  */
1379
- exports.ProxyCreateCompletionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 205);
1434
+ exports.ProxyCreateCompletionResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 215);
1380
1435
  /**
1381
1436
  * Describes the message blueapi.cover.v1.AccountUsageDetails.
1382
1437
  * Use `create(AccountUsageDetailsSchema)` to create a new message.
1383
1438
  */
1384
- exports.AccountUsageDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 206);
1439
+ exports.AccountUsageDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 216);
1385
1440
  /**
1386
1441
  * Describes the message blueapi.cover.v1.ListAccountUsageRequest.
1387
1442
  * Use `create(ListAccountUsageRequestSchema)` to create a new message.
1388
1443
  */
1389
- exports.ListAccountUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 207);
1444
+ exports.ListAccountUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 217);
1390
1445
  /**
1391
1446
  * Describes the message blueapi.cover.v1.RestoreAccountUsageRequest.
1392
1447
  * Use `create(RestoreAccountUsageRequestSchema)` to create a new message.
1393
1448
  */
1394
- exports.RestoreAccountUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 208);
1449
+ exports.RestoreAccountUsageRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 218);
1395
1450
  /**
1396
1451
  * Describes the message blueapi.cover.v1.RestoreSavingsRequest.
1397
1452
  * Use `create(RestoreSavingsRequestSchema)` to create a new message.
1398
1453
  */
1399
- exports.RestoreSavingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 209);
1454
+ exports.RestoreSavingsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 219);
1400
1455
  /**
1401
1456
  * Describes the message blueapi.cover.v1.SavingsDetails.
1402
1457
  * Use `create(SavingsDetailsSchema)` to create a new message.
1403
1458
  */
1404
- exports.SavingsDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 210);
1459
+ exports.SavingsDetailsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 220);
1405
1460
  /**
1406
1461
  * Describes the message blueapi.cover.v1.GetCostGroupAllocationRequest.
1407
1462
  * Use `create(GetCostGroupAllocationRequestSchema)` to create a new message.
1408
1463
  */
1409
- exports.GetCostGroupAllocationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 211);
1464
+ exports.GetCostGroupAllocationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 221);
1410
1465
  /**
1411
1466
  * Describes the message blueapi.cover.v1.AllocationItem.
1412
1467
  * Use `create(AllocationItemSchema)` to create a new message.
1413
1468
  */
1414
- exports.AllocationItemSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 212);
1469
+ exports.AllocationItemSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 222);
1415
1470
  /**
1416
1471
  * Describes the message blueapi.cover.v1.ProcessAuth0UserRequest.
1417
1472
  * Use `create(ProcessAuth0UserRequestSchema)` to create a new message.
1418
1473
  */
1419
- exports.ProcessAuth0UserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 213);
1474
+ exports.ProcessAuth0UserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 223);
1420
1475
  /**
1421
1476
  * Describes the message blueapi.cover.v1.ProcessAuth0UserResponse.
1422
1477
  * Use `create(ProcessAuth0UserResponseSchema)` to create a new message.
1423
1478
  */
1424
- exports.ProcessAuth0UserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 214);
1479
+ exports.ProcessAuth0UserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 224);
1425
1480
  /**
1426
1481
  * Describes the message blueapi.cover.v1.DataAccess.
1427
1482
  * Use `create(DataAccessSchema)` to create a new message.
1428
1483
  */
1429
- exports.DataAccessSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 215);
1484
+ exports.DataAccessSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 225);
1430
1485
  /**
1431
1486
  * Describes the message blueapi.cover.v1.RegisterDataAccessRequest.
1432
1487
  * Use `create(RegisterDataAccessRequestSchema)` to create a new message.
1433
1488
  */
1434
- exports.RegisterDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 216);
1489
+ exports.RegisterDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 226);
1435
1490
  /**
1436
1491
  * Describes the message blueapi.cover.v1.UpdateDataAccessRequest.
1437
1492
  * Use `create(UpdateDataAccessRequestSchema)` to create a new message.
1438
1493
  */
1439
- exports.UpdateDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 217);
1494
+ exports.UpdateDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 227);
1440
1495
  /**
1441
1496
  * Describes the message blueapi.cover.v1.ListDataAccessRequest.
1442
1497
  * Use `create(ListDataAccessRequestSchema)` to create a new message.
1443
1498
  */
1444
- exports.ListDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 218);
1499
+ exports.ListDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 228);
1445
1500
  /**
1446
1501
  * Describes the message blueapi.cover.v1.ListUnregisteredAccountsRequest.
1447
1502
  * Use `create(ListUnregisteredAccountsRequestSchema)` to create a new message.
1448
1503
  */
1449
- exports.ListUnregisteredAccountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 219);
1504
+ exports.ListUnregisteredAccountsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 229);
1450
1505
  /**
1451
1506
  * Describes the message blueapi.cover.v1.ListUnregisteredAccountsResponse.
1452
1507
  * Use `create(ListUnregisteredAccountsResponseSchema)` to create a new message.
1453
1508
  */
1454
- exports.ListUnregisteredAccountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 220);
1509
+ exports.ListUnregisteredAccountsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 230);
1455
1510
  /**
1456
1511
  * Describes the message blueapi.cover.v1.UnregisteredAccts.
1457
1512
  * Use `create(UnregisteredAcctsSchema)` to create a new message.
1458
1513
  */
1459
- exports.UnregisteredAcctsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 221);
1514
+ exports.UnregisteredAcctsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 231);
1460
1515
  /**
1461
1516
  * Describes the message blueapi.cover.v1.BillingAccountRequest.
1462
1517
  * Use `create(BillingAccountRequestSchema)` to create a new message.
1463
1518
  */
1464
- exports.BillingAccountRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 222);
1519
+ exports.BillingAccountRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 232);
1465
1520
  /**
1466
1521
  * Describes the message blueapi.cover.v1.GetAndDeleteDataAccessRequest.
1467
1522
  * Use `create(GetAndDeleteDataAccessRequestSchema)` to create a new message.
1468
1523
  */
1469
- exports.GetAndDeleteDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 223);
1524
+ exports.GetAndDeleteDataAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 233);
1470
1525
  /**
1471
1526
  * Describes the message blueapi.cover.v1.AddPartnerCenterCredentialsRequest.
1472
1527
  * Use `create(AddPartnerCenterCredentialsRequestSchema)` to create a new message.
1473
1528
  */
1474
- exports.AddPartnerCenterCredentialsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 224);
1529
+ exports.AddPartnerCenterCredentialsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 234);
1475
1530
  /**
1476
1531
  * Describes the message blueapi.cover.v1.AddMpnSettingRequest.
1477
1532
  * Use `create(AddMpnSettingRequestSchema)` to create a new message.
1478
1533
  */
1479
- exports.AddMpnSettingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 225);
1534
+ exports.AddMpnSettingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 235);
1480
1535
  /**
1481
1536
  * Describes the message blueapi.cover.v1.GetCostGroupAttributeRequest.
1482
1537
  * Use `create(GetCostGroupAttributeRequestSchema)` to create a new message.
1483
1538
  */
1484
- exports.GetCostGroupAttributeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 226);
1539
+ exports.GetCostGroupAttributeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 236);
1485
1540
  /**
1486
1541
  * Describes the message blueapi.cover.v1.GetCostGroupAttributeResponse.
1487
1542
  * Use `create(GetCostGroupAttributeResponseSchema)` to create a new message.
1488
1543
  */
1489
- exports.GetCostGroupAttributeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 227);
1544
+ exports.GetCostGroupAttributeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 237);
1490
1545
  /**
1491
1546
  * Describes the message blueapi.cover.v1.GetCategoriesRequest.
1492
1547
  * Use `create(GetCategoriesRequestSchema)` to create a new message.
1493
1548
  */
1494
- exports.GetCategoriesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 228);
1549
+ exports.GetCategoriesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 238);
1495
1550
  /**
1496
1551
  * Describes the message blueapi.cover.v1.GetCategoriesResponse.
1497
1552
  * Use `create(GetCategoriesResponseSchema)` to create a new message.
1498
1553
  */
1499
- exports.GetCategoriesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 229);
1554
+ exports.GetCategoriesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 239);
1500
1555
  /**
1501
1556
  * Describes the message blueapi.cover.v1.GetAlertsRequest.
1502
1557
  * Use `create(GetAlertsRequestSchema)` to create a new message.
1503
1558
  */
1504
- exports.GetAlertsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 230);
1559
+ exports.GetAlertsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 240);
1505
1560
  /**
1506
1561
  * Describes the message blueapi.cover.v1.GetAlertsResponse.
1507
1562
  * Use `create(GetAlertsResponseSchema)` to create a new message.
1508
1563
  */
1509
- exports.GetAlertsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 231);
1564
+ exports.GetAlertsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 241);
1510
1565
  /**
1511
1566
  * Describes the message blueapi.cover.v1.CreateAlertRequest.
1512
1567
  * Use `create(CreateAlertRequestSchema)` to create a new message.
1513
1568
  */
1514
- exports.CreateAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 232);
1569
+ exports.CreateAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 242);
1515
1570
  /**
1516
1571
  * Describes the message blueapi.cover.v1.CreateAlertResponse.
1517
1572
  * Use `create(CreateAlertResponseSchema)` to create a new message.
1518
1573
  */
1519
- exports.CreateAlertResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 233);
1574
+ exports.CreateAlertResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 243);
1520
1575
  /**
1521
1576
  * Describes the message blueapi.cover.v1.GetAlertDetailsRequest.
1522
1577
  * Use `create(GetAlertDetailsRequestSchema)` to create a new message.
1523
1578
  */
1524
- exports.GetAlertDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 234);
1579
+ exports.GetAlertDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 244);
1525
1580
  /**
1526
1581
  * Describes the message blueapi.cover.v1.GetAlertDetailsResponse.
1527
1582
  * Use `create(GetAlertDetailsResponseSchema)` to create a new message.
1528
1583
  */
1529
- exports.GetAlertDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 235);
1584
+ exports.GetAlertDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 245);
1530
1585
  /**
1531
1586
  * Describes the message blueapi.cover.v1.DeleteAlertRequest.
1532
1587
  * Use `create(DeleteAlertRequestSchema)` to create a new message.
1533
1588
  */
1534
- exports.DeleteAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 236);
1589
+ exports.DeleteAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 246);
1535
1590
  /**
1536
1591
  * Describes the message blueapi.cover.v1.DeleteAlertResponse.
1537
1592
  * Use `create(DeleteAlertResponseSchema)` to create a new message.
1538
1593
  */
1539
- exports.DeleteAlertResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 237);
1594
+ exports.DeleteAlertResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 247);
1540
1595
  /**
1541
1596
  * Describes the message blueapi.cover.v1.UpdateAlertDetailsRequest.
1542
1597
  * Use `create(UpdateAlertDetailsRequestSchema)` to create a new message.
1543
1598
  */
1544
- exports.UpdateAlertDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 238);
1599
+ exports.UpdateAlertDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 248);
1545
1600
  /**
1546
1601
  * Describes the message blueapi.cover.v1.UpdateAlertDetailsResponse.
1547
1602
  * Use `create(UpdateAlertDetailsResponseSchema)` to create a new message.
1548
1603
  */
1549
- exports.UpdateAlertDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 239);
1604
+ exports.UpdateAlertDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 249);
1550
1605
  /**
1551
1606
  * Describes the message blueapi.cover.v1.GetChannelsRequest.
1552
1607
  * Use `create(GetChannelsRequestSchema)` to create a new message.
1553
1608
  */
1554
- exports.GetChannelsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 240);
1609
+ exports.GetChannelsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 250);
1555
1610
  /**
1556
1611
  * Describes the message blueapi.cover.v1.GetChannelsResponse.
1557
1612
  * Use `create(GetChannelsResponseSchema)` to create a new message.
1558
1613
  */
1559
- exports.GetChannelsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 241);
1614
+ exports.GetChannelsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 251);
1560
1615
  /**
1561
1616
  * Describes the message blueapi.cover.v1.CreateChannelRequest.
1562
1617
  * Use `create(CreateChannelRequestSchema)` to create a new message.
1563
1618
  */
1564
- exports.CreateChannelRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 242);
1619
+ exports.CreateChannelRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 252);
1565
1620
  /**
1566
1621
  * Describes the message blueapi.cover.v1.CreateChannelResponse.
1567
1622
  * Use `create(CreateChannelResponseSchema)` to create a new message.
1568
1623
  */
1569
- exports.CreateChannelResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 243);
1624
+ exports.CreateChannelResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 253);
1570
1625
  /**
1571
1626
  * Describes the message blueapi.cover.v1.GetChannelDetailsRequest.
1572
1627
  * Use `create(GetChannelDetailsRequestSchema)` to create a new message.
1573
1628
  */
1574
- exports.GetChannelDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 244);
1629
+ exports.GetChannelDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 254);
1575
1630
  /**
1576
1631
  * Describes the message blueapi.cover.v1.GetChannelDetailsResponse.
1577
1632
  * Use `create(GetChannelDetailsResponseSchema)` to create a new message.
1578
1633
  */
1579
- exports.GetChannelDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 245);
1634
+ exports.GetChannelDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 255);
1580
1635
  /**
1581
1636
  * Describes the message blueapi.cover.v1.DeleteChannelRequest.
1582
1637
  * Use `create(DeleteChannelRequestSchema)` to create a new message.
1583
1638
  */
1584
- exports.DeleteChannelRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 246);
1639
+ exports.DeleteChannelRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 256);
1585
1640
  /**
1586
1641
  * Describes the message blueapi.cover.v1.DeleteChannelResponse.
1587
1642
  * Use `create(DeleteChannelResponseSchema)` to create a new message.
1588
1643
  */
1589
- exports.DeleteChannelResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 247);
1644
+ exports.DeleteChannelResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 257);
1590
1645
  /**
1591
1646
  * Describes the message blueapi.cover.v1.UpdateChannelDetailsRequest.
1592
1647
  * Use `create(UpdateChannelDetailsRequestSchema)` to create a new message.
1593
1648
  */
1594
- exports.UpdateChannelDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 248);
1649
+ exports.UpdateChannelDetailsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 258);
1595
1650
  /**
1596
1651
  * Describes the message blueapi.cover.v1.UpdateChannelDetailsResponse.
1597
1652
  * Use `create(UpdateChannelDetailsResponseSchema)` to create a new message.
1598
1653
  */
1599
- exports.UpdateChannelDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 249);
1654
+ exports.UpdateChannelDetailsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 259);
1600
1655
  /**
1601
1656
  * Describes the message blueapi.cover.v1.GetDiscountRecommendationsRequest.
1602
1657
  * Use `create(GetDiscountRecommendationsRequestSchema)` to create a new message.
1603
1658
  */
1604
- exports.GetDiscountRecommendationsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 250);
1659
+ exports.GetDiscountRecommendationsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 260);
1605
1660
  /**
1606
1661
  * Describes the message blueapi.cover.v1.GetDiscountRecommendationsResponse.
1607
1662
  * Use `create(GetDiscountRecommendationsResponseSchema)` to create a new message.
1608
1663
  */
1609
- exports.GetDiscountRecommendationsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 251);
1664
+ exports.GetDiscountRecommendationsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 261);
1610
1665
  /**
1611
1666
  * Describes the message blueapi.cover.v1.GetAnomalyinCostGroupRequest.
1612
1667
  * Use `create(GetAnomalyinCostGroupRequestSchema)` to create a new message.
1613
1668
  */
1614
- exports.GetAnomalyinCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 252);
1669
+ exports.GetAnomalyinCostGroupRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 262);
1615
1670
  /**
1616
1671
  * Describes the message blueapi.cover.v1.AnomalyData.
1617
1672
  * Use `create(AnomalyDataSchema)` to create a new message.
1618
1673
  */
1619
- exports.AnomalyDataSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 253);
1674
+ exports.AnomalyDataSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 263);
1620
1675
  /**
1621
1676
  * Describes the message blueapi.cover.v1.CreateDiscountExpirationAlertRequest.
1622
1677
  * Use `create(CreateDiscountExpirationAlertRequestSchema)` to create a new message.
1623
1678
  */
1624
- exports.CreateDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 254);
1679
+ exports.CreateDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 264);
1625
1680
  /**
1626
1681
  * Describes the message blueapi.cover.v1.ManipulateDiscountExpirationAlertRequest.
1627
1682
  * Use `create(ManipulateDiscountExpirationAlertRequestSchema)` to create a new message.
1628
1683
  */
1629
- exports.ManipulateDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 255);
1684
+ exports.ManipulateDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 265);
1630
1685
  /**
1631
1686
  * Describes the message blueapi.cover.v1.UpdateDiscountExpirationAlertRequest.
1632
1687
  * Use `create(UpdateDiscountExpirationAlertRequestSchema)` to create a new message.
1633
1688
  */
1634
- exports.UpdateDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 256);
1689
+ exports.UpdateDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 266);
1635
1690
  /**
1636
1691
  * Describes the message blueapi.cover.v1.DiscountExpiryAlertData.
1637
1692
  * Use `create(DiscountExpiryAlertDataSchema)` to create a new message.
1638
1693
  */
1639
- exports.DiscountExpiryAlertDataSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 257);
1694
+ exports.DiscountExpiryAlertDataSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 267);
1640
1695
  /**
1641
1696
  * Describes the message blueapi.cover.v1.ListDiscountExpirationAlertRequest.
1642
1697
  * Use `create(ListDiscountExpirationAlertRequestSchema)` to create a new message.
1643
1698
  */
1644
- exports.ListDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 258);
1699
+ exports.ListDiscountExpirationAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 268);
1645
1700
  /**
1646
1701
  * Describes the message blueapi.cover.v1.CreateAnomalyAlertRequest.
1647
1702
  * Use `create(CreateAnomalyAlertRequestSchema)` to create a new message.
1648
1703
  */
1649
- exports.CreateAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 259);
1704
+ exports.CreateAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 269);
1650
1705
  /**
1651
1706
  * Describes the message blueapi.cover.v1.ManipulateAnomalyAlertRequest.
1652
1707
  * Use `create(ManipulateAnomalyAlertRequestSchema)` to create a new message.
1653
1708
  */
1654
- exports.ManipulateAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 260);
1709
+ exports.ManipulateAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 270);
1655
1710
  /**
1656
1711
  * Describes the message blueapi.cover.v1.AnomalyAlertData.
1657
1712
  * Use `create(AnomalyAlertDataSchema)` to create a new message.
1658
1713
  */
1659
- exports.AnomalyAlertDataSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 261);
1714
+ exports.AnomalyAlertDataSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 271);
1660
1715
  /**
1661
1716
  * Describes the message blueapi.cover.v1.ListAnomalyAlertRequest.
1662
1717
  * Use `create(ListAnomalyAlertRequestSchema)` to create a new message.
1663
1718
  */
1664
- exports.ListAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 262);
1719
+ exports.ListAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 272);
1665
1720
  /**
1666
1721
  * Describes the message blueapi.cover.v1.UpdateAnomalyAlertRequest.
1667
1722
  * Use `create(UpdateAnomalyAlertRequestSchema)` to create a new message.
1668
1723
  */
1669
- exports.UpdateAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 263);
1724
+ exports.UpdateAnomalyAlertRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 273);
1670
1725
  /**
1671
1726
  * Describes the message blueapi.cover.v1.RegisterNewUserRequest.
1672
1727
  * Use `create(RegisterNewUserRequestSchema)` to create a new message.
1673
1728
  */
1674
- exports.RegisterNewUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 264);
1729
+ exports.RegisterNewUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 274);
1675
1730
  /**
1676
1731
  * Describes the message blueapi.cover.v1.RegisterNewUserResponse.
1677
1732
  * Use `create(RegisterNewUserResponseSchema)` to create a new message.
1678
1733
  */
1679
- exports.RegisterNewUserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 265);
1734
+ exports.RegisterNewUserResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 275);
1680
1735
  /**
1681
1736
  * Describes the message blueapi.cover.v1.GetUserProfileRequest.
1682
1737
  * Use `create(GetUserProfileRequestSchema)` to create a new message.
1683
1738
  */
1684
- exports.GetUserProfileRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 266);
1739
+ exports.GetUserProfileRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 276);
1685
1740
  /**
1686
1741
  * Describes the message blueapi.cover.v1.GetUserProfileResponse.
1687
1742
  * Use `create(GetUserProfileResponseSchema)` to create a new message.
1688
1743
  */
1689
- exports.GetUserProfileResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 267);
1744
+ exports.GetUserProfileResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 277);
1690
1745
  /**
1691
1746
  * Describes the message blueapi.cover.v1.UpdateUserProfileRequest.
1692
1747
  * Use `create(UpdateUserProfileRequestSchema)` to create a new message.
1693
1748
  */
1694
- exports.UpdateUserProfileRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 268);
1749
+ exports.UpdateUserProfileRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 278);
1695
1750
  /**
1696
1751
  * Describes the message blueapi.cover.v1.UpdateUserProfileResponse.
1697
1752
  * Use `create(UpdateUserProfileResponseSchema)` to create a new message.
1698
1753
  */
1699
- exports.UpdateUserProfileResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 269);
1754
+ exports.UpdateUserProfileResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 279);
1700
1755
  /**
1701
1756
  * Describes the message blueapi.cover.v1.ListBudgetsRequest.
1702
1757
  * Use `create(ListBudgetsRequestSchema)` to create a new message.
1703
1758
  */
1704
- exports.ListBudgetsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 270);
1759
+ exports.ListBudgetsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 280);
1705
1760
  /**
1706
1761
  * Describes the message blueapi.cover.v1.ListBudgetsResponse.
1707
1762
  * Use `create(ListBudgetsResponseSchema)` to create a new message.
1708
1763
  */
1709
- exports.ListBudgetsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 271);
1764
+ exports.ListBudgetsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 281);
1710
1765
  /**
1711
1766
  * Describes the message blueapi.cover.v1.GetBudgetRequest.
1712
1767
  * Use `create(GetBudgetRequestSchema)` to create a new message.
1713
1768
  */
1714
- exports.GetBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 272);
1769
+ exports.GetBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 282);
1715
1770
  /**
1716
1771
  * Describes the message blueapi.cover.v1.GetBudgetResponse.
1717
1772
  * Use `create(GetBudgetResponseSchema)` to create a new message.
1718
1773
  */
1719
- exports.GetBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 273);
1774
+ exports.GetBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 283);
1720
1775
  /**
1721
1776
  * Describes the message blueapi.cover.v1.CreateBudgetRequest.
1722
1777
  * Use `create(CreateBudgetRequestSchema)` to create a new message.
1723
1778
  */
1724
- exports.CreateBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 274);
1779
+ exports.CreateBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 284);
1725
1780
  /**
1726
1781
  * Describes the message blueapi.cover.v1.CreateBudgetResponse.
1727
1782
  * Use `create(CreateBudgetResponseSchema)` to create a new message.
1728
1783
  */
1729
- exports.CreateBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 275);
1784
+ exports.CreateBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 285);
1730
1785
  /**
1731
1786
  * Describes the message blueapi.cover.v1.DeleteBudgetRequest.
1732
1787
  * Use `create(DeleteBudgetRequestSchema)` to create a new message.
1733
1788
  */
1734
- exports.DeleteBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 276);
1789
+ exports.DeleteBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 286);
1735
1790
  /**
1736
1791
  * Describes the message blueapi.cover.v1.DeleteBudgetResponse.
1737
1792
  * Use `create(DeleteBudgetResponseSchema)` to create a new message.
1738
1793
  */
1739
- exports.DeleteBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 277);
1794
+ exports.DeleteBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 287);
1740
1795
  /**
1741
1796
  * Describes the message blueapi.cover.v1.UpdateBudgetRequest.
1742
1797
  * Use `create(UpdateBudgetRequestSchema)` to create a new message.
1743
1798
  */
1744
- exports.UpdateBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 278);
1799
+ exports.UpdateBudgetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 288);
1745
1800
  /**
1746
1801
  * Describes the message blueapi.cover.v1.UpdateBudgetResponse.
1747
1802
  * Use `create(UpdateBudgetResponseSchema)` to create a new message.
1748
1803
  */
1749
- exports.UpdateBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 279);
1804
+ exports.UpdateBudgetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 289);
1750
1805
  /**
1751
1806
  * Describes the message blueapi.cover.v1.ResolveAWSMarketplaceTokenForOnboardingRequest.
1752
1807
  * Use `create(ResolveAWSMarketplaceTokenForOnboardingRequestSchema)` to create a new message.
1753
1808
  */
1754
- exports.ResolveAWSMarketplaceTokenForOnboardingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 280);
1809
+ exports.ResolveAWSMarketplaceTokenForOnboardingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 290);
1755
1810
  /**
1756
1811
  * Describes the message blueapi.cover.v1.ResolveAWSMarketplaceTokenForOnboardingResponse.
1757
1812
  * Use `create(ResolveAWSMarketplaceTokenForOnboardingResponseSchema)` to create a new message.
1758
1813
  */
1759
- exports.ResolveAWSMarketplaceTokenForOnboardingResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 281);
1814
+ exports.ResolveAWSMarketplaceTokenForOnboardingResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 291);
1760
1815
  /**
1761
1816
  * Describes the message blueapi.cover.v1.GetCustomerSubscriptionStatusRequest.
1762
1817
  * Use `create(GetCustomerSubscriptionStatusRequestSchema)` to create a new message.
1763
1818
  */
1764
- exports.GetCustomerSubscriptionStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 282);
1819
+ exports.GetCustomerSubscriptionStatusRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 292);
1765
1820
  /**
1766
1821
  * Describes the message blueapi.cover.v1.GetCustomerSubscriptionStatusResponse.
1767
1822
  * Use `create(GetCustomerSubscriptionStatusResponseSchema)` to create a new message.
1768
1823
  */
1769
- exports.GetCustomerSubscriptionStatusResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 283);
1824
+ exports.GetCustomerSubscriptionStatusResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 293);
1770
1825
  /**
1771
1826
  * Describes the message blueapi.cover.v1.CreateProfilingRequest.
1772
1827
  * Use `create(CreateProfilingRequestSchema)` to create a new message.
1773
1828
  */
1774
- exports.CreateProfilingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 284);
1829
+ exports.CreateProfilingRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 294);
1775
1830
  /**
1776
1831
  * Describes the message blueapi.cover.v1.CreateProfilingResponse.
1777
1832
  * Use `create(CreateProfilingResponseSchema)` to create a new message.
1778
1833
  */
1779
- exports.CreateProfilingResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 285);
1834
+ exports.CreateProfilingResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 295);
1780
1835
  /**
1781
1836
  * Describes the message blueapi.cover.v1.AddInfotoMarketplaceRequest.
1782
1837
  * Use `create(AddInfotoMarketplaceRequestSchema)` to create a new message.
1783
1838
  */
1784
- exports.AddInfotoMarketplaceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 286);
1839
+ exports.AddInfotoMarketplaceRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 296);
1785
1840
  /**
1786
1841
  * Describes the message blueapi.cover.v1.AddInfotoMarketplaceResponse.
1787
1842
  * Use `create(AddInfotoMarketplaceResponseSchema)` to create a new message.
1788
1843
  */
1789
- exports.AddInfotoMarketplaceResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 287);
1844
+ exports.AddInfotoMarketplaceResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 297);
1790
1845
  /**
1791
1846
  * Describes the message blueapi.cover.v1.GetReportSummaryRequest.
1792
1847
  * Use `create(GetReportSummaryRequestSchema)` to create a new message.
1793
1848
  */
1794
- exports.GetReportSummaryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 288);
1849
+ exports.GetReportSummaryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 298);
1795
1850
  /**
1796
1851
  * Describes the message blueapi.cover.v1.GetReportSummaryResponse.
1797
1852
  * Use `create(GetReportSummaryResponseSchema)` to create a new message.
1798
1853
  */
1799
- exports.GetReportSummaryResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 289);
1854
+ exports.GetReportSummaryResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 299);
1800
1855
  /**
1801
1856
  * Describes the message blueapi.cover.v1.ListRecommendationRequest.
1802
1857
  * Use `create(ListRecommendationRequestSchema)` to create a new message.
1803
1858
  */
1804
- exports.ListRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 290);
1859
+ exports.ListRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 300);
1805
1860
  /**
1806
1861
  * Describes the message blueapi.cover.v1.ListRecommendationV2Request.
1807
1862
  * Use `create(ListRecommendationV2RequestSchema)` to create a new message.
1808
1863
  */
1809
- exports.ListRecommendationV2RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 291);
1864
+ exports.ListRecommendationV2RequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 301);
1810
1865
  /**
1811
1866
  * Describes the message blueapi.cover.v1.ListRecommendationV2Request.RateSettings.
1812
1867
  * Use `create(ListRecommendationV2Request_RateSettingsSchema)` to create a new message.
1813
1868
  */
1814
- exports.ListRecommendationV2Request_RateSettingsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 291, 0);
1869
+ exports.ListRecommendationV2Request_RateSettingsSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 301, 0);
1815
1870
  /**
1816
1871
  * Describes the message blueapi.cover.v1.ListRecommendationResponse.
1817
1872
  * Use `create(ListRecommendationResponseSchema)` to create a new message.
1818
1873
  */
1819
- exports.ListRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 292);
1874
+ exports.ListRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 302);
1820
1875
  /**
1821
1876
  * Describes the message blueapi.cover.v1.ListRecommendationResponse.PurchaseOption.
1822
1877
  * Use `create(ListRecommendationResponse_PurchaseOptionSchema)` to create a new message.
1823
1878
  */
1824
- exports.ListRecommendationResponse_PurchaseOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 292, 0);
1879
+ exports.ListRecommendationResponse_PurchaseOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 302, 0);
1825
1880
  /**
1826
1881
  * Describes the message blueapi.cover.v1.GetRecommendationRequest.
1827
1882
  * Use `create(GetRecommendationRequestSchema)` to create a new message.
1828
1883
  */
1829
- exports.GetRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 293);
1884
+ exports.GetRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 303);
1830
1885
  /**
1831
1886
  * Describes the message blueapi.cover.v1.GetRecommendationResponse.
1832
1887
  * Use `create(GetRecommendationResponseSchema)` to create a new message.
1833
1888
  */
1834
- exports.GetRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 294);
1889
+ exports.GetRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 304);
1835
1890
  /**
1836
1891
  * Describes the message blueapi.cover.v1.ExecuteOptimizationRequest.
1837
1892
  * Use `create(ExecuteOptimizationRequestSchema)` to create a new message.
1838
1893
  */
1839
- exports.ExecuteOptimizationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 295);
1894
+ exports.ExecuteOptimizationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 305);
1840
1895
  /**
1841
1896
  * Describes the message blueapi.cover.v1.ExecuteOptimizationResponse.
1842
1897
  * Use `create(ExecuteOptimizationResponseSchema)` to create a new message.
1843
1898
  */
1844
- exports.ExecuteOptimizationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 296);
1899
+ exports.ExecuteOptimizationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 306);
1845
1900
  /**
1846
1901
  * Describes the message blueapi.cover.v1.ExecuteOptimizationResponse.AWSOption.
1847
1902
  * Use `create(ExecuteOptimizationResponse_AWSOptionSchema)` to create a new message.
1848
1903
  */
1849
- exports.ExecuteOptimizationResponse_AWSOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 296, 0);
1904
+ exports.ExecuteOptimizationResponse_AWSOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 306, 0);
1850
1905
  /**
1851
1906
  * Describes the message blueapi.cover.v1.ExecuteOptimizationResponse.GCPOption.
1852
1907
  * Use `create(ExecuteOptimizationResponse_GCPOptionSchema)` to create a new message.
1853
1908
  */
1854
- exports.ExecuteOptimizationResponse_GCPOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 296, 1);
1909
+ exports.ExecuteOptimizationResponse_GCPOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 306, 1);
1855
1910
  /**
1856
1911
  * Describes the message blueapi.cover.v1.ExecuteOptimizationResponse.AzureCSPOption.
1857
1912
  * Use `create(ExecuteOptimizationResponse_AzureCSPOptionSchema)` to create a new message.
1858
1913
  */
1859
- exports.ExecuteOptimizationResponse_AzureCSPOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 296, 2);
1914
+ exports.ExecuteOptimizationResponse_AzureCSPOptionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 306, 2);
1860
1915
  /**
1861
1916
  * Describes the message blueapi.cover.v1.MarkAsExecutedRequest.
1862
1917
  * Use `create(MarkAsExecutedRequestSchema)` to create a new message.
1863
1918
  */
1864
- exports.MarkAsExecutedRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 297);
1919
+ exports.MarkAsExecutedRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 307);
1865
1920
  /**
1866
1921
  * Describes the message blueapi.cover.v1.MarkAsExecutedResponse.
1867
1922
  * Use `create(MarkAsExecutedResponseSchema)` to create a new message.
1868
1923
  */
1869
- exports.MarkAsExecutedResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 298);
1924
+ exports.MarkAsExecutedResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 308);
1870
1925
  /**
1871
1926
  * Describes the message blueapi.cover.v1.UndoExecutedRecommendationRequest.
1872
1927
  * Use `create(UndoExecutedRecommendationRequestSchema)` to create a new message.
1873
1928
  */
1874
- exports.UndoExecutedRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 299);
1929
+ exports.UndoExecutedRecommendationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 309);
1875
1930
  /**
1876
1931
  * Describes the message blueapi.cover.v1.UndoExecutedRecommendationResponse.
1877
1932
  * Use `create(UndoExecutedRecommendationResponseSchema)` to create a new message.
1878
1933
  */
1879
- exports.UndoExecutedRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 300);
1934
+ exports.UndoExecutedRecommendationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 310);
1880
1935
  /**
1881
1936
  * Describes the message blueapi.cover.v1.OptimizationHistoryRequest.
1882
1937
  * Use `create(OptimizationHistoryRequestSchema)` to create a new message.
1883
1938
  */
1884
- exports.OptimizationHistoryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 301);
1939
+ exports.OptimizationHistoryRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 311);
1885
1940
  /**
1886
1941
  * Describes the message blueapi.cover.v1.OptimizationHistoryResponse.
1887
1942
  * Use `create(OptimizationHistoryResponseSchema)` to create a new message.
1888
1943
  */
1889
- exports.OptimizationHistoryResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 302);
1944
+ exports.OptimizationHistoryResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 312);
1890
1945
  /**
1891
1946
  * Describes the message blueapi.cover.v1.SetCostGroupEventIndicatorRequest.
1892
1947
  * Use `create(SetCostGroupEventIndicatorRequestSchema)` to create a new message.
1893
1948
  */
1894
- exports.SetCostGroupEventIndicatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 303);
1949
+ exports.SetCostGroupEventIndicatorRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 313);
1895
1950
  /**
1896
1951
  * Describes the message blueapi.cover.v1.SetCostGroupEventIndicatorResponse.
1897
1952
  * Use `create(SetCostGroupEventIndicatorResponseSchema)` to create a new message.
1898
1953
  */
1899
- exports.SetCostGroupEventIndicatorResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 304);
1954
+ exports.SetCostGroupEventIndicatorResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 314);
1900
1955
  /**
1901
1956
  * Describes the message blueapi.cover.v1.SetCostGroupAnomalyOptionsRequest.
1902
1957
  * Use `create(SetCostGroupAnomalyOptionsRequestSchema)` to create a new message.
1903
1958
  */
1904
- exports.SetCostGroupAnomalyOptionsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 305);
1959
+ exports.SetCostGroupAnomalyOptionsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 315);
1905
1960
  /**
1906
1961
  * Describes the message blueapi.cover.v1.SetCostGroupAnomalyOptionsResponse.
1907
1962
  * Use `create(SetCostGroupAnomalyOptionsResponseSchema)` to create a new message.
1908
1963
  */
1909
- exports.SetCostGroupAnomalyOptionsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 306);
1964
+ exports.SetCostGroupAnomalyOptionsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 316);
1910
1965
  /**
1911
1966
  * Describes the message blueapi.cover.v1.SetOrgFiscalMonthRequest.
1912
1967
  * Use `create(SetOrgFiscalMonthRequestSchema)` to create a new message.
1913
1968
  */
1914
- exports.SetOrgFiscalMonthRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 307);
1969
+ exports.SetOrgFiscalMonthRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 317);
1915
1970
  /**
1916
1971
  * Describes the message blueapi.cover.v1.SetOrgFiscalMonthResponse.
1917
1972
  * Use `create(SetOrgFiscalMonthResponseSchema)` to create a new message.
1918
1973
  */
1919
- exports.SetOrgFiscalMonthResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 308);
1974
+ exports.SetOrgFiscalMonthResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 318);
1920
1975
  /**
1921
1976
  * Describes the message blueapi.cover.v1.GetOrgFiscalMonthRequest.
1922
1977
  * Use `create(GetOrgFiscalMonthRequestSchema)` to create a new message.
1923
1978
  */
1924
- exports.GetOrgFiscalMonthRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 309);
1979
+ exports.GetOrgFiscalMonthRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 319);
1925
1980
  /**
1926
1981
  * Describes the message blueapi.cover.v1.GetOrgFiscalMonthResponse.
1927
1982
  * Use `create(GetOrgFiscalMonthResponseSchema)` to create a new message.
1928
1983
  */
1929
- exports.GetOrgFiscalMonthResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 310);
1984
+ exports.GetOrgFiscalMonthResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 320);
1930
1985
  /**
1931
1986
  * Describes the message blueapi.cover.v1.TransferOrganizationRequest.
1932
1987
  * Use `create(TransferOrganizationRequestSchema)` to create a new message.
1933
1988
  */
1934
- exports.TransferOrganizationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 311);
1989
+ exports.TransferOrganizationRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 321);
1935
1990
  /**
1936
1991
  * Describes the message blueapi.cover.v1.TransferOrganizationResponse.
1937
1992
  * Use `create(TransferOrganizationResponseSchema)` to create a new message.
1938
1993
  */
1939
- exports.TransferOrganizationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 312);
1994
+ exports.TransferOrganizationResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 322);
1940
1995
  /**
1941
1996
  * Describes the message blueapi.cover.v1.UpdateCostGroupCreationUIRequest.
1942
1997
  * Use `create(UpdateCostGroupCreationUIRequestSchema)` to create a new message.
1943
1998
  */
1944
- exports.UpdateCostGroupCreationUIRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 313);
1999
+ exports.UpdateCostGroupCreationUIRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 323);
1945
2000
  /**
1946
2001
  * Describes the message blueapi.cover.v1.UpdateCostGroupCreationUIResponse.
1947
2002
  * Use `create(UpdateCostGroupCreationUIResponseSchema)` to create a new message.
1948
2003
  */
1949
- exports.UpdateCostGroupCreationUIResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 314);
2004
+ exports.UpdateCostGroupCreationUIResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 324);
1950
2005
  /**
1951
2006
  * Describes the message blueapi.cover.v1.ListUnitTypesRequest.
1952
2007
  * Use `create(ListUnitTypesRequestSchema)` to create a new message.
1953
2008
  */
1954
- exports.ListUnitTypesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 315);
2009
+ exports.ListUnitTypesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 325);
1955
2010
  /**
1956
2011
  * Describes the message blueapi.cover.v1.ListUnitTypesResponse.
1957
2012
  * Use `create(ListUnitTypesResponseSchema)` to create a new message.
1958
2013
  */
1959
- exports.ListUnitTypesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 316);
2014
+ exports.ListUnitTypesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 326);
1960
2015
  /**
1961
2016
  * Describes the message blueapi.cover.v1.CreateUnitTypeRequest.
1962
2017
  * Use `create(CreateUnitTypeRequestSchema)` to create a new message.
1963
2018
  */
1964
- exports.CreateUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 317);
2019
+ exports.CreateUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 327);
1965
2020
  /**
1966
2021
  * Describes the message blueapi.cover.v1.CreateUnitTypeResponse.
1967
2022
  * Use `create(CreateUnitTypeResponseSchema)` to create a new message.
1968
2023
  */
1969
- exports.CreateUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 318);
2024
+ exports.CreateUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 328);
1970
2025
  /**
1971
2026
  * Describes the message blueapi.cover.v1.GetUnitTypeRequest.
1972
2027
  * Use `create(GetUnitTypeRequestSchema)` to create a new message.
1973
2028
  */
1974
- exports.GetUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 319);
2029
+ exports.GetUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 329);
1975
2030
  /**
1976
2031
  * Describes the message blueapi.cover.v1.GetUnitTypeResponse.
1977
2032
  * Use `create(GetUnitTypeResponseSchema)` to create a new message.
1978
2033
  */
1979
- exports.GetUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 320);
2034
+ exports.GetUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 330);
1980
2035
  /**
1981
2036
  * Describes the message blueapi.cover.v1.UpdateUnitTypeRequest.
1982
2037
  * Use `create(UpdateUnitTypeRequestSchema)` to create a new message.
1983
2038
  */
1984
- exports.UpdateUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 321);
2039
+ exports.UpdateUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 331);
1985
2040
  /**
1986
2041
  * Describes the message blueapi.cover.v1.UpdateUnitTypeResponse.
1987
2042
  * Use `create(UpdateUnitTypeResponseSchema)` to create a new message.
1988
2043
  */
1989
- exports.UpdateUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 322);
2044
+ exports.UpdateUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 332);
1990
2045
  /**
1991
2046
  * Describes the message blueapi.cover.v1.DeleteUnitTypeRequest.
1992
2047
  * Use `create(DeleteUnitTypeRequestSchema)` to create a new message.
1993
2048
  */
1994
- exports.DeleteUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 323);
2049
+ exports.DeleteUnitTypeRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 333);
1995
2050
  /**
1996
2051
  * Describes the message blueapi.cover.v1.DeleteUnitTypeResponse.
1997
2052
  * Use `create(DeleteUnitTypeResponseSchema)` to create a new message.
1998
2053
  */
1999
- exports.DeleteUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 324);
2054
+ exports.DeleteUnitTypeResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 334);
2000
2055
  /**
2001
2056
  * Describes the message blueapi.cover.v1.MergeUnitsRequest.
2002
2057
  * Use `create(MergeUnitsRequestSchema)` to create a new message.
2003
2058
  */
2004
- exports.MergeUnitsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 325);
2059
+ exports.MergeUnitsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 335);
2005
2060
  /**
2006
2061
  * Describes the message blueapi.cover.v1.MergeUnitsResponse.
2007
2062
  * Use `create(MergeUnitsResponseSchema)` to create a new message.
2008
2063
  */
2009
- exports.MergeUnitsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 326);
2064
+ exports.MergeUnitsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 336);
2010
2065
  /**
2011
2066
  * Describes the message blueapi.cover.v1.ListSuggestedUnitsRequest.
2012
2067
  * Use `create(ListSuggestedUnitsRequestSchema)` to create a new message.
2013
2068
  */
2014
- exports.ListSuggestedUnitsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 327);
2069
+ exports.ListSuggestedUnitsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 337);
2015
2070
  /**
2016
2071
  * Describes the message blueapi.cover.v1.ListSuggestedUnitsResponse.
2017
2072
  * Use `create(ListSuggestedUnitsResponseSchema)` to create a new message.
2018
2073
  */
2019
- exports.ListSuggestedUnitsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 328);
2074
+ exports.ListSuggestedUnitsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 338);
2020
2075
  /**
2021
2076
  * Describes the message blueapi.cover.v1.MergeSuggestedUnitsRequest.
2022
2077
  * Use `create(MergeSuggestedUnitsRequestSchema)` to create a new message.
2023
2078
  */
2024
- exports.MergeSuggestedUnitsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 329);
2079
+ exports.MergeSuggestedUnitsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 339);
2025
2080
  /**
2026
2081
  * Describes the message blueapi.cover.v1.MergeSuggestedUnitsResponse.
2027
2082
  * Use `create(MergeSuggestedUnitsResponseSchema)` to create a new message.
2028
2083
  */
2029
- exports.MergeSuggestedUnitsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 330);
2084
+ exports.MergeSuggestedUnitsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 340);
2030
2085
  /**
2031
2086
  * Describes the message blueapi.cover.v1.CreateUnitFromSuggestedRequest.
2032
2087
  * Use `create(CreateUnitFromSuggestedRequestSchema)` to create a new message.
2033
2088
  */
2034
- exports.CreateUnitFromSuggestedRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 331);
2089
+ exports.CreateUnitFromSuggestedRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 341);
2035
2090
  /**
2036
2091
  * Describes the message blueapi.cover.v1.CreateUnitFromSuggestedResponse.
2037
2092
  * Use `create(CreateUnitFromSuggestedResponseSchema)` to create a new message.
2038
2093
  */
2039
- exports.CreateUnitFromSuggestedResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 332);
2094
+ exports.CreateUnitFromSuggestedResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 342);
2040
2095
  /**
2041
2096
  * Describes the message blueapi.cover.v1.ListSharedResourcesRequest.
2042
2097
  * Use `create(ListSharedResourcesRequestSchema)` to create a new message.
2043
2098
  */
2044
- exports.ListSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 333);
2099
+ exports.ListSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 343);
2045
2100
  /**
2046
2101
  * Describes the message blueapi.cover.v1.ListSharedResourcesResponse.
2047
2102
  * Use `create(ListSharedResourcesResponseSchema)` to create a new message.
2048
2103
  */
2049
- exports.ListSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 334);
2104
+ exports.ListSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 344);
2050
2105
  /**
2051
2106
  * Describes the message blueapi.cover.v1.CreateSharedResourcesRequest.
2052
2107
  * Use `create(CreateSharedResourcesRequestSchema)` to create a new message.
2053
2108
  */
2054
- exports.CreateSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 335);
2109
+ exports.CreateSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 345);
2055
2110
  /**
2056
2111
  * Describes the message blueapi.cover.v1.CreateSharedResourcesResponse.
2057
2112
  * Use `create(CreateSharedResourcesResponseSchema)` to create a new message.
2058
2113
  */
2059
- exports.CreateSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 336);
2114
+ exports.CreateSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 346);
2060
2115
  /**
2061
2116
  * Describes the message blueapi.cover.v1.GetSharedResourcesRequest.
2062
2117
  * Use `create(GetSharedResourcesRequestSchema)` to create a new message.
2063
2118
  */
2064
- exports.GetSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 337);
2119
+ exports.GetSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 347);
2065
2120
  /**
2066
2121
  * Describes the message blueapi.cover.v1.GetSharedResourcesResponse.
2067
2122
  * Use `create(GetSharedResourcesResponseSchema)` to create a new message.
2068
2123
  */
2069
- exports.GetSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 338);
2124
+ exports.GetSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 348);
2070
2125
  /**
2071
2126
  * Describes the message blueapi.cover.v1.UpdateSharedResourcesRequest.
2072
2127
  * Use `create(UpdateSharedResourcesRequestSchema)` to create a new message.
2073
2128
  */
2074
- exports.UpdateSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 339);
2129
+ exports.UpdateSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 349);
2075
2130
  /**
2076
2131
  * Describes the message blueapi.cover.v1.UpdateSharedResourcesResponse.
2077
2132
  * Use `create(UpdateSharedResourcesResponseSchema)` to create a new message.
2078
2133
  */
2079
- exports.UpdateSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 340);
2134
+ exports.UpdateSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 350);
2080
2135
  /**
2081
2136
  * Describes the message blueapi.cover.v1.DeleteSharedResourcesRequest.
2082
2137
  * Use `create(DeleteSharedResourcesRequestSchema)` to create a new message.
2083
2138
  */
2084
- exports.DeleteSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 341);
2139
+ exports.DeleteSharedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 351);
2085
2140
  /**
2086
2141
  * Describes the message blueapi.cover.v1.DeleteSharedResourcesResponse.
2087
2142
  * Use `create(DeleteSharedResourcesResponseSchema)` to create a new message.
2088
2143
  */
2089
- exports.DeleteSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 342);
2144
+ exports.DeleteSharedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 352);
2090
2145
  /**
2091
2146
  * Describes the message blueapi.cover.v1.ListUnitMetricsRequest.
2092
2147
  * Use `create(ListUnitMetricsRequestSchema)` to create a new message.
2093
2148
  */
2094
- exports.ListUnitMetricsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 343);
2149
+ exports.ListUnitMetricsRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 353);
2095
2150
  /**
2096
2151
  * Describes the message blueapi.cover.v1.ListUnitMetricsResponse.
2097
2152
  * Use `create(ListUnitMetricsResponseSchema)` to create a new message.
2098
2153
  */
2099
- exports.ListUnitMetricsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 344);
2154
+ exports.ListUnitMetricsResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 354);
2100
2155
  /**
2101
2156
  * Describes the message blueapi.cover.v1.CreateUnitMetricRequest.
2102
2157
  * Use `create(CreateUnitMetricRequestSchema)` to create a new message.
2103
2158
  */
2104
- exports.CreateUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 345);
2159
+ exports.CreateUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 355);
2105
2160
  /**
2106
2161
  * Describes the message blueapi.cover.v1.CreateUnitMetricResponse.
2107
2162
  * Use `create(CreateUnitMetricResponseSchema)` to create a new message.
2108
2163
  */
2109
- exports.CreateUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 346);
2164
+ exports.CreateUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 356);
2110
2165
  /**
2111
2166
  * Describes the message blueapi.cover.v1.GetUnitMetricRequest.
2112
2167
  * Use `create(GetUnitMetricRequestSchema)` to create a new message.
2113
2168
  */
2114
- exports.GetUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 347);
2169
+ exports.GetUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 357);
2115
2170
  /**
2116
2171
  * Describes the message blueapi.cover.v1.GetUnitMetricResponse.
2117
2172
  * Use `create(GetUnitMetricResponseSchema)` to create a new message.
2118
2173
  */
2119
- exports.GetUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 348);
2174
+ exports.GetUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 358);
2120
2175
  /**
2121
2176
  * Describes the message blueapi.cover.v1.UpdateUnitMetricRequest.
2122
2177
  * Use `create(UpdateUnitMetricRequestSchema)` to create a new message.
2123
2178
  */
2124
- exports.UpdateUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 349);
2179
+ exports.UpdateUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 359);
2125
2180
  /**
2126
2181
  * Describes the message blueapi.cover.v1.UpdateUnitMetricResponse.
2127
2182
  * Use `create(UpdateUnitMetricResponseSchema)` to create a new message.
2128
2183
  */
2129
- exports.UpdateUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 350);
2184
+ exports.UpdateUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 360);
2130
2185
  /**
2131
2186
  * Describes the message blueapi.cover.v1.DeleteUnitMetricRequest.
2132
2187
  * Use `create(DeleteUnitMetricRequestSchema)` to create a new message.
2133
2188
  */
2134
- exports.DeleteUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 351);
2189
+ exports.DeleteUnitMetricRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 361);
2135
2190
  /**
2136
2191
  * Describes the message blueapi.cover.v1.DeleteUnitMetricResponse.
2137
2192
  * Use `create(DeleteUnitMetricResponseSchema)` to create a new message.
2138
2193
  */
2139
- exports.DeleteUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 352);
2194
+ exports.DeleteUnitMetricResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 362);
2140
2195
  /**
2141
2196
  * Describes the message blueapi.cover.v1.PreviewGoogleSheetRequest.
2142
2197
  * Use `create(PreviewGoogleSheetRequestSchema)` to create a new message.
2143
2198
  */
2144
- exports.PreviewGoogleSheetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 353);
2199
+ exports.PreviewGoogleSheetRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 363);
2145
2200
  /**
2146
2201
  * Describes the message blueapi.cover.v1.PreviewGoogleSheetResponse.
2147
2202
  * Use `create(PreviewGoogleSheetResponseSchema)` to create a new message.
2148
2203
  */
2149
- exports.PreviewGoogleSheetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 354);
2204
+ exports.PreviewGoogleSheetResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 364);
2150
2205
  /**
2151
2206
  * Describes the message blueapi.cover.v1.ConfirmGoogleSheetAccessRequest.
2152
2207
  * Use `create(ConfirmGoogleSheetAccessRequestSchema)` to create a new message.
2153
2208
  */
2154
- exports.ConfirmGoogleSheetAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 355);
2209
+ exports.ConfirmGoogleSheetAccessRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 365);
2155
2210
  /**
2156
2211
  * Describes the message blueapi.cover.v1.ConfirmGoogleSheetAccessResponse.
2157
2212
  * Use `create(ConfirmGoogleSheetAccessResponseSchema)` to create a new message.
2158
2213
  */
2159
- exports.ConfirmGoogleSheetAccessResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 356);
2214
+ exports.ConfirmGoogleSheetAccessResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 366);
2160
2215
  /**
2161
2216
  * Describes the message blueapi.cover.v1.GetCloudwatchMetadataRequest.
2162
2217
  * Use `create(GetCloudwatchMetadataRequestSchema)` to create a new message.
2163
2218
  */
2164
- exports.GetCloudwatchMetadataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 357);
2219
+ exports.GetCloudwatchMetadataRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 367);
2165
2220
  /**
2166
2221
  * Describes the message blueapi.cover.v1.GetCloudwatchMetadataResponse.
2167
2222
  * Use `create(GetCloudwatchMetadataResponseSchema)` to create a new message.
2168
2223
  */
2169
- exports.GetCloudwatchMetadataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 358);
2224
+ exports.GetCloudwatchMetadataResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 368);
2170
2225
  /**
2171
2226
  * Describes the message blueapi.cover.v1.GetCloudwatchMetadataResponse.Dimension.
2172
2227
  * Use `create(GetCloudwatchMetadataResponse_DimensionSchema)` to create a new message.
2173
2228
  */
2174
- exports.GetCloudwatchMetadataResponse_DimensionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 358, 0);
2229
+ exports.GetCloudwatchMetadataResponse_DimensionSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 368, 0);
2175
2230
  /**
2176
2231
  * Describes the message blueapi.cover.v1.GetDiscountPlanRequest.
2177
2232
  * Use `create(GetDiscountPlanRequestSchema)` to create a new message.
2178
2233
  */
2179
- exports.GetDiscountPlanRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 359);
2234
+ exports.GetDiscountPlanRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 369);
2180
2235
  /**
2181
2236
  * Describes the message blueapi.cover.v1.GetDiscountPlanResponse.
2182
2237
  * Use `create(GetDiscountPlanResponseSchema)` to create a new message.
2183
2238
  */
2184
- exports.GetDiscountPlanResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 360);
2239
+ exports.GetDiscountPlanResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 370);
2185
2240
  /**
2186
2241
  * Describes the message blueapi.cover.v1.ListNonperformingRateRequest.
2187
2242
  * Use `create(ListNonperformingRateRequestSchema)` to create a new message.
2188
2243
  */
2189
- exports.ListNonperformingRateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 361);
2244
+ exports.ListNonperformingRateRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 371);
2190
2245
  /**
2191
2246
  * Describes the message blueapi.cover.v1.ListNonperformingRateResponse.
2192
2247
  * Use `create(ListNonperformingRateResponseSchema)` to create a new message.
2193
2248
  */
2194
- exports.ListNonperformingRateResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 362);
2249
+ exports.ListNonperformingRateResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 372);
2195
2250
  /**
2196
2251
  * Describes the message blueapi.cover.v1.ListNonperformingRateResponse.Nonperforming.
2197
2252
  * Use `create(ListNonperformingRateResponse_NonperformingSchema)` to create a new message.
2198
2253
  */
2199
- exports.ListNonperformingRateResponse_NonperformingSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 362, 0);
2254
+ exports.ListNonperformingRateResponse_NonperformingSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 372, 0);
2200
2255
  /**
2201
2256
  * Describes the message blueapi.cover.v1.ListUntaggedResourcesRequest.
2202
2257
  * Use `create(ListUntaggedResourcesRequestSchema)` to create a new message.
2203
2258
  */
2204
- exports.ListUntaggedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 363);
2259
+ exports.ListUntaggedResourcesRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 373);
2205
2260
  /**
2206
2261
  * Describes the message blueapi.cover.v1.ListUntaggedResourcesResponse.
2207
2262
  * Use `create(ListUntaggedResourcesResponseSchema)` to create a new message.
2208
2263
  */
2209
- exports.ListUntaggedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 364);
2264
+ exports.ListUntaggedResourcesResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 374);
2210
2265
  /**
2211
2266
  * Describes the message blueapi.cover.v1.ListUntaggedResourcesResponse.UntaggedResources.
2212
2267
  * Use `create(ListUntaggedResourcesResponse_UntaggedResourcesSchema)` to create a new message.
2213
2268
  */
2214
- exports.ListUntaggedResourcesResponse_UntaggedResourcesSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 364, 0);
2269
+ exports.ListUntaggedResourcesResponse_UntaggedResourcesSchema = (0, codegenv2_1.messageDesc)(exports.file_cover_v1_cover, 374, 0);
2215
2270
  /**
2216
2271
  * Status of upload file
2217
2272
  *