@kontur.candy/tools 2.210.1 → 2.212.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/distr/Common/AsyncUtils.js +1 -1
- package/distr/Common/AutoValidationUtils.js +1 -1
- package/distr/Common/CandyApiClient/CandyApiClient.js +1 -1
- package/distr/Common/CandyApiClient/CandyApiClientContext.js +1 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js +1 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js +1 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js +1 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js +1 -1
- package/distr/Common/CandyApiClient/FakeCandyApiClient.js +1 -1
- package/distr/Common/CandyApiClient/ICandyApiClient.js +1 -1
- package/distr/Common/CandyApiClient/IsBuffer.js +1 -1
- package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js +1 -1
- package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js +1 -1
- package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftFullId.js +1 -1
- package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js +1 -1
- package/distr/Common/CandyApiClient/Types/ErrorLog/ResolveInnerPathRequest.js +1 -1
- package/distr/Common/CandyApiClient/Types/ErrorLog/ResolvePathResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js +1 -1
- package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js +1 -1
- package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Guid.js +1 -1
- package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js +1 -1
- package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js +1 -1
- package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js +1 -1
- package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js +1 -1
- package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js +1 -1
- package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Print/PrintType.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js +1 -1
- package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js +1 -1
- package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js +1 -1
- package/distr/Common/CollectionUtils.js +1 -1
- package/distr/Common/CommonConstants/SectionNames.js +1 -1
- package/distr/Common/Comparers.js +1 -1
- package/distr/Common/EmotionStorybookWorkaroundViaAliases.js +1 -1
- package/distr/Common/EndPoints.js +1 -1
- package/distr/Common/Enums/ButtonSettingsTypeEnum.js +1 -1
- package/distr/Common/Errors.js +1 -1
- package/distr/Common/ExtractGFVPath/ExtractGFVPath.js +10 -1
- package/distr/Common/ExtractGFVPath/ExtractGFVPath.js.map +1 -1
- package/distr/Common/FSPrinterClient/FSPrinterClient.js +1 -1
- package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js +1 -1
- package/distr/Common/FSPrinterClient/IFSPrinterClient.js +1 -1
- package/distr/Common/FormActionHandlers/ContextualActionNames.js +1 -1
- package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js +1 -1
- package/distr/Common/FormPathUtils.js +1 -1
- package/distr/Common/Funcs.js +1 -1
- package/distr/Common/GFV.js +1 -1
- package/distr/Common/GetRngSchemaFileExtension.js +1 -1
- package/distr/Common/Hooks/UseLocalStorage.js +1 -1
- package/distr/Common/HttpClient/AuthenticationMode.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/Fetch.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js +1 -1
- package/distr/Common/HttpClient/HttpClient.js +1 -1
- package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js +1 -1
- package/distr/Common/HttpClient/IHttpClient.js +1 -1
- package/distr/Common/IndentString.js +1 -1
- package/distr/Common/IntRangeUtils.js +1 -1
- package/distr/Common/IterableUtils.js +1 -1
- package/distr/Common/KCLangRuntimeUtils.js +1 -1
- package/distr/Common/ModelPath/AbsoluteModelFieldPath.js +1 -1
- package/distr/Common/ModelPath/BuildIterationSequence.js +1 -1
- package/distr/Common/ModelPath/EachCurrentCollision.js +1 -1
- package/distr/Common/ModelPath/IEquatable.js +1 -1
- package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js +1 -1
- package/distr/Common/ModelPath/Map/Map2.js +1 -1
- package/distr/Common/ModelPath/Map/ModelPathMap.js +1 -1
- package/distr/Common/ModelPath/ModelPath.js +1 -1
- package/distr/Common/ModelPath/ModelPathBuilder.js +1 -1
- package/distr/Common/ModelPath/ModelPathHelper.js +1 -1
- package/distr/Common/ModelPath/PathMatcher.js +1 -1
- package/distr/Common/ModelPath/PathSplitHelper.js +1 -1
- package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js +1 -1
- package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js +1 -1
- package/distr/Common/ModelPath/Set/ModelPathSet.js +1 -1
- package/distr/Common/ModelPath/Set/Set2.js +1 -1
- package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js +1 -1
- package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js +1 -1
- package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js +1 -1
- package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +1 -1
- package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +1 -1
- package/distr/Common/NidusClient/INidusClient.js +1 -1
- package/distr/Common/NidusClient/NidusClientContext.js +1 -1
- package/distr/Common/NidusClient/NidusClientImpl.js +1 -1
- package/distr/Common/PathConstants.js +1 -1
- package/distr/Common/PicklistApiClient/IPicklistApiClient.js +1 -1
- package/distr/Common/PicklistApiClient/PicklistApiClient.js +1 -1
- package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js +1 -1
- package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js +1 -1
- package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js +1 -1
- package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js +1 -1
- package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js +1 -1
- package/distr/Common/RngSchemeTypes/types.js +1 -1
- package/distr/Common/StringArrayKey.js +1 -1
- package/distr/Common/TextExtractor/TextExtractorTypes.js +1 -1
- package/distr/Common/TypingUtils.js +1 -1
- package/distr/Common/UUID.js +1 -1
- package/distr/Common/UseAsyncEffect.js +1 -1
- package/distr/Common/UseShowOnce.js +1 -1
- package/distr/Common/UseTypedSelector.js +1 -1
- package/distr/Common/WellKnownDirectories.js +1 -1
- package/distr/Common/hashUtils.js +1 -1
- package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js +1 -1
- package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js +1 -1
- package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js +1 -1
- package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +1 -1
- package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js +1 -1
- package/distr/Tools/src/BuildTasks/Engine/EngineSource.js +1 -1
- package/distr/Tools/src/BuildTasks/EngineStructureUtils.js +1 -1
- package/distr/Tools/src/BuildTasks/EngineVersionUtils.js +1 -1
- package/distr/Tools/src/BuildTasks/FSTask.js +1 -1
- package/distr/Tools/src/BuildTasks/Form/CompileForm.js +1 -1
- package/distr/Tools/src/BuildTasks/Form/GenerateForm.js +1 -1
- package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +1 -1
- package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +1 -1
- package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js +1 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js +1 -1
- package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js +1 -1
- package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js +1 -1
- package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +1 -1
- package/distr/Tools/src/BuildTasks/ReadFormSource.js +1 -1
- package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +1 -1
- package/distr/Tools/src/BuildTasks/Version.js +1 -1
- package/distr/Tools/src/BuildTasks/WriteFormMeta.js +1 -1
- package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js +1 -1
- package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js +1 -1
- package/distr/Tools/src/CLICommands/BuildForms/ClearSourceMapForProduction.js +1 -1
- package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerCandyWidgetController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js +1 -1
- package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js +1 -1
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js +1 -1
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js +1 -1
- package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js +1 -1
- package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +1 -1
- package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js +1 -1
- package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +1 -1
- package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js +1 -1
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js +1 -2
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js +1 -1
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js +1 -1
- package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js +1 -1
- package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +1 -1
- package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js +1 -1
- package/distr/Tools/src/CLICommands/Localization/RunLocalization.js +1 -1
- package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js +1 -1
- package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js +1 -1
- package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js +1 -1
- package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js +1 -1
- package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +1 -1
- package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js +1 -1
- package/distr/Tools/src/CandyCLI.js +1 -1
- package/distr/Tools/src/CheckNodeJsVersion.js +1 -1
- package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js +1 -1
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js +1 -1
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js +1 -1
- package/distr/Tools/src/Commons/ErrorUntyped.js +1 -1
- package/distr/Tools/src/Commons/EventObject.js +1 -1
- package/distr/Tools/src/Commons/ExecUtils.js +1 -1
- package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js +1 -1
- package/distr/Tools/src/Commons/FormGlobsUtils.js +1 -1
- package/distr/Tools/src/Commons/FormLocationInfo.js +1 -1
- package/distr/Tools/src/Commons/FsUtils.js +1 -1
- package/distr/Tools/src/Commons/GetCpuLimits.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +1 -1
- package/distr/Tools/src/Commons/Locks/Lock.js +1 -1
- package/distr/Tools/src/Commons/Locks/LockHandle.js +1 -1
- package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js +1 -1
- package/distr/Tools/src/Commons/Logging/ELKLogger.js +1 -1
- package/distr/Tools/src/Commons/Logging/ILogger.js +1 -1
- package/distr/Tools/src/Commons/Logging/InMemoryLogger.js +1 -1
- package/distr/Tools/src/Commons/Logging/Logger.js +1 -1
- package/distr/Tools/src/Commons/Logging/StaticLogger.js +1 -1
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js +1 -2
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js +1 -1
- package/distr/Tools/src/Commons/PathPattern.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/AggregatedError.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/BuildTask.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/Observe.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js +1 -1
- package/distr/Tools/src/Commons/TimingUtils.js +1 -1
- package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +1 -1
- package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js +2 -2
- package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js.map +1 -1
- package/distr/Tools/src/GenerateReadMe.js +1 -1
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +1 -1
- package/distr/Tools/src/Options/CandyToolOptions.js +1 -1
- package/distr/Tools/src/ReadFarmConfig.js +1 -1
- package/distr/Tools/src/SelfUpdate.js +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +100 -96
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.map +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +23 -19
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.map +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js +1 -1
- package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js +1 -1
- package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js +1 -1
- package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js +1 -1
- package/package.json +3 -2
|
@@ -15,4 +15,4 @@ function nextTick() {
|
|
|
15
15
|
setTimeout(resolve, 0);
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=AsyncUtils.js.map
|
|
@@ -5,4 +5,4 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.AutoValidationMessage = void 0;
|
|
7
7
|
const AutoValidationMessage = exports.AutoValidationMessage = "Значение не равно вычисленному по формуле";
|
|
8
|
-
//# sourceMappingURL=
|
|
8
|
+
//# sourceMappingURL=AutoValidationUtils.js.map
|
|
@@ -575,4 +575,4 @@ class CandyApiDraftClient {
|
|
|
575
575
|
}
|
|
576
576
|
}
|
|
577
577
|
exports.CandyApiDraftClient = CandyApiDraftClient;
|
|
578
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfVHlwaW5nVXRpbHMiLCJyZXF1aXJlIiwiX0h0dHBDbGllbnQiLCJfQXV0aGVudGljYXRpb25Nb2RlIiwiX01vZGVsUGF0aCIsIl9Gb2N1c1R5cGVzIiwiX0RyYWZ0UHJlc2VudGF0aW9uVHlwZSIsIl9Jc0J1ZmZlciIsIl9GdWZTaXplVG9vTGFyZ2VFcnJvciIsInN0cmFuZ2VPcHRpb25zIiwic3JjIiwiZGF0YVZlcnNpb24iLCJDYW5keVJlc291cmNlWm9uZXMiLCJleHBvcnRzIiwiVGVzdEZvcm1zIiwiU2VydmVyRXJyb3JzIiwiY29udmVydFBhdGhMb2FkU3BlY2lmaWNhdGlvblRvU3RyaW5nIiwic3BlYyIsInNraXAiLCJwYXRoT3JQYXRoUHJlZml4IiwidG9MZWdhY3lQYXRoIiwiQ2FuZHlBcGlDbGllbnQiLCJjb25zdHJ1Y3RvciIsImZldGNoSW1wbCIsImJhc2VVcmwiLCJyZXNvdXJjZVpvbmUiLCJhdXRoZW50aWNhdGlvbiIsImV4Y2VwdGlvbkxvZ2dlciIsImh0dHBDbGllbnQiLCJIdHRwQ2xpZW50IiwiY3JlYXRlQXV0aGVudGljYXRpb25Qcm92aWRlciIsImZvckRyYWZ0IiwiZHJhZnRGdWxsSWQiLCJDYW5keUFwaURyYWZ0Q2xpZW50IiwiZ2V0SW5mb0J5SW5ucyIsImlubnMiLCJwYXRocyIsIm1hcCIsImlubiIsInJlc3BvbnNlIiwicG9zdCIsImdldERyYWZ0VXJsIiwid2l0aEpzb25Cb2R5IiwianNvbiIsInJlc3VsdCIsIl9yZXNwb25zZSIsImlublNlcnZlclZhbHVlIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJlcnJvciIsImVycm9yQ29kZSIsIkZvY3VzU2VydmVyRXJyb3JDb2RlIiwiTm9Jbm5FcnJvciIsIl9pbm5TZXJ2ZXJWYWx1ZSR2YWx1ZSIsIl9pbm5TZXJ2ZXJWYWx1ZSRlcnJvciIsIl9pbm5TZXJ2ZXJWYWx1ZSRlcnJvcjIiLCJnZXRBbGxHZnZzIiwiYWJvcnRTaWduYWwiLCJib2R5IiwiZ2V0IiwiY3JlYXRlRHJhZnRGcm9tRHJpdmUiLCJucyIsImZ1ZkRyaXZlVXJpIiwid2l0aFF1ZXJ5UGFyYW1zIiwid2l0aEFib3J0U2lnbmFsIiwiY3JlYXRlRW1wdHlEcmFmdCIsImdmdiIsImNyZWF0ZURyYWZ0IiwiZnVmQ29udGVudCIsIndpdGhDb250ZW50VHlwZSIsIndpdGhCb2R5RnJvbUJ1ZmZlciIsIkJ1ZmZlciIsImZyb20iLCJFcnJvciIsImNoZWNrQWxpdmUiLCJkcmFmdFJlbGF0ZWRVcmwiLCJkcmFmdElkIiwiZ2V0RmVhdHVyZUZsYWdzIiwiZ2V0SHJlZlRvSW5uZXJFZGl0b3IiLCJ1cmwiLCJnZXRIcmVmRG93bmxvYWRGdWYiLCJnZXRIcmVmVG9Db252ZXJ0YXRpb25Mb2ciLCJnZXRJbm5lckZ1ZiIsIkRyYWZ0UHJlc2VudGF0aW9uVHlwZSIsImlubmVyRnVmIiwidGV4dCIsImdldEhyZWZUb0Rvd25sb2FkSW5uZXJGdWYiLCJnZXRIcmVmRG93bmxvYWREcmFmdFByZXNlbnRhdGlvbiIsImdldEhyZWZUb0Rvd25sb2FkQ2xpZW50SW5mbyIsImNsaWVudEluZm8iLCJnZXRIcmVmVG9Eb3dubG9hZEZvcm1zQ2xpZW50SW5mbyIsImZvcm1zQ2xpZW50SW5mbyIsImdldEhyZWZEb3dubG9hZElubmVyIiwiaW5uZXIiLCJnZXRFcnJvckxvZyIsImdldERyYWZ0UHJlc2VudGF0aW9uVXJsIiwiZXJyb3JMb2ciLCJnZXRFcnJvckxvZ1dpdGhDaGVja1NjZW5hcmlvcyIsImNoZWNrU2NlbmFyaW9zIiwiZ2V0VGFza0J5SWQiLCJ0YXNrSWQiLCJfdGFza3MiLCJ0YXNrcyIsImdldEZ1ZldpdGhBdHRhY2htZW50cyIsImdldFBhcnRpYWxGdWYiLCJydWxlcyIsImdldEFsbFRhc2tzIiwiT2JqZWN0IiwidmFsdWVzIiwieCIsImVucXVldWVUYXNrIiwidGFza0luZm8iLCJhZGRlZCIsImNoYW5nZWQiLCJpZCIsInJlbW92ZWQiLCJjYW5jZWxUYXNrIiwiZ2V0RXhwZXJ0RXJyb3JMb2ciLCJlcnJvcmxvZ0V4cGVydCIsImdldEhyZWZUb0Vycm9yTG9nUGRmIiwiZXJyb3JMb2dOYW1lIiwicHJvcHNOYW1lIiwicHJvcHNEcml2ZU5hbWUiLCJjbGVhckRyYWZ0IiwiY29udmVydERyYWZ0RnJvbVByZXZHZnYiLCJwcmV2R2Z2RHJhZnRJZCIsInNlbmRDaGFuZ2VTZXQiLCJkYXRhIiwiY3VycmVudERhdGFWZXJzaW9uIiwiYWNjZXB0Q29kZSIsImdldFN1Y2Nlc3NSZXN1bHQiLCJfZGF0YVJlc3VsdCRkYXRhVmVyc2kiLCJkYXRhUmVzdWx0IiwicmVqZWN0Iiwic3RhdHVzIiwic2VuZENoYW5nZVdpdGhOb3JtYWxpemF0aW9uU2V0Iiwibm9ybWFsaXplcklkIiwic2VuZENoYW5nZVNldFN5bmMiLCJwb3N0U3luYyIsImdldFN1Y2Nlc3NSZXN1bHRTeW5jIiwiX2RhdGFSZXN1bHQkZGF0YVZlcnNpMiIsImdldFJlcXVpc2l0ZXMiLCJyZXF1aXNpdGVMaXN0IiwiZ2V0SW5uZXIiLCJnZXRQYXJ0aWFsSW5uZXIiLCJtYXhJbnN0YW5jZUNvdW50IiwiY29udmVydGVkUnVsZXMiLCJ0b1N0cmluZyIsImxlbmd0aCIsImdldFBhcnRpYWxJbm5lckFzSnNvblRyZWUiLCJmb3JtYXQiLCJnZXRSYXdQYXJ0aWFsSW5uZXJBc0pzb25UcmVlIiwiZ2V0RGF0YVZlcnNpb24iLCJnZXRFeHBsYW5hdG9yeU5vdGUiLCJleHBsYW5hdG9yeU5vdGUiLCJnZXRBdHRhY2htZW50QnlJZCIsImF0dGFjaG1lbnRJZCIsIl9yZXN1bHQkdmFsdWUiLCJfcmVzdWx0IiwiZ2V0QWxsQXR0YWNobWVudHMiLCJyZW1vdmVBdHRhY2htZW50cyIsImF0dGFjaG1lbnRJZHMiLCJjcmVhdGVPclVwZGF0ZUF0dGFjaG1lbnRzIiwiYXR0YWNobWVudHMiLCJhdHRhY2htZW50IiwiY29udGVudFVyaSIsIm1ldGEiLCJjcmVhdGVEcmFmdEF0dGFjaG1lbnQiLCJwYXRoIiwib3BlbkxvYWRlZEF0dGFjaG1lbnRBc0RyYWZ0IiwiZXJyb3JEYXRhIiwiRnVmU2l6ZVRvb0xhcmdlRXJyb3IiLCJtZXNzYWdlIiwiSHR0cEVycm9yIiwic2V0UHJlc2VudGF0aW9uIiwicHJlc2VudGF0aW9uVHlwZSIsImNvbnRlbnQiLCJyZXF1ZXN0IiwicHV0Iiwid2l0aFJhd0JvZHkiLCJpc0J1ZmZlciIsInBhdGNoUHJlc2VudGF0aW9uIiwicHJlc2VudGF0aW9uQ29udGVudCIsInBhdGNoIiwiZ2V0RmlsZVByb3BlcnRpZXMiLCJkcml2ZVVyaSIsImlnbm9yZVNpemVDaGVjayIsInByZXBhcmVBbmRHZXRGaWxlUHJvcGVydGllcyIsInVwbG9hZEFuZEdldEZpbGVQcm9wZXJ0aWVzIiwiZHJpdmVVcmlzIiwic2VydmVyRXJyb3IiLCJpbnZhbGlkU291cmNlRHJpdmVDb250ZW50TmFtZXMiLCJzb3VyY2VzVG90YWxDb3VudCIsImUiLCJVbmtub3duRXJyb3IiLCJhY2NlcHRUcmFuc2ZlclR5cGUiLCJ0cmFuc2ZlclR5cGUiLCJ0eXBlSWQiLCJhY2NlcHRNdWx0aXBsZVRyYW5zZmVyVHlwZSIsImZpbGVzIiwic2V0RnVmQnlEcml2ZVVyaSIsImNvbWJpbmVGdWZCeURyaXZlVXJpIiwiY29tYmluZU1ldGhvZCIsImV4Y2Vsc1RvUGFydGlhbEZ1ZnMiLCJwYXRoVG9UYWJsZSIsImltcG9ydEZyb21QYXJ0aWFsRnVmc0J5UGF0aCIsImNvbWJpbmF0b3JUeXBlIiwibXVsdGlwbGVDb21iaW5lRnVmQnlEcml2ZVVyaSIsImFyZ3MiLCJhcmd1bWVudHMiLCJpbXBvcnRYbWxzIiwiaXNJbXBvcnRCeUZ1ZiIsImltcG9ydEJ5RnVmIiwiRnVmRHJpdmVVcmlzIiwic2V0RHJhZnRTZXR0aW5ncyIsInNldHRpbmdzIiwiZ2V0RHJhZnRTZXR0aW5ncyIsIm5vcm1hbGl6ZUJ5UnVsZXMiLCJzZXRNdWx0aXBsZVdpdGhOb3JtYWxpemF0aW9uIiwidXJpIiwiZmluYWxSdWxlcyIsImNvbnZlcnRUb0xlZ2FjeVBhdGgiLCJub3JtYWxpemVEaXJ0eU1hc2tzIiwic2VhcmNoSW5zdGFuY2VzQnlUZXh0IiwicGF0aHNQcmVmaXgiLCJwYXRoc1RvU2VhcmNoIiwibWF4SW5zdGFuY2VDb3VudFBhcmFtcyIsInBhcmFtcyIsInNlYXJjaFN0cmluZyIsInF1ZXJ5Q29sbGVjdGlvbiIsInJlc29sdmVJbm5lclBhdGgiLCJjdXN0b21Ob3JtYWxpemUiLCJwYXRoUHJlZml4ZXMiLCJpbXBvcnRFbXBsb3llZXMiLCJkZWxldGVJbnN0YW5jZXMiLCJkZWxldGluZ1J1bGVzIiwicnVuTWFzc0FjdGlvbiIsImFjdGlvbklkIiwicGFyYW1ldGVycyIsInF1ZXJ5UGFyYW1zIiwicHJpbnQiLCJ0eXBlIiwicHJpbnRFeGNlbCIsInRhYmxlRXhjZWwiLCJjaGVja0J5UG9wZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL0NvbW1vbi9DYW5keUFwaUNsaWVudC9DYW5keUFwaUNsaWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWplY3QgfSBmcm9tIFwiLi4vVHlwaW5nVXRpbHNcIjtcbmltcG9ydCB7IEZldGNoIH0gZnJvbSBcIi4uL0h0dHBDbGllbnQvRmV0Y2hJbXBsZW1lbnRhdGlvbi9GZXRjaFwiO1xuaW1wb3J0IHsgRXhjZXB0aW9uTG9nZ2VyLCBIdHRwQ2xpZW50LCBIdHRwRXJyb3IgfSBmcm9tIFwiLi4vSHR0cENsaWVudC9IdHRwQ2xpZW50XCI7XG5pbXBvcnQgeyBJSHR0cENsaWVudCB9IGZyb20gXCIuLi9IdHRwQ2xpZW50L0lIdHRwQ2xpZW50XCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbk1vZGUsIGNyZWF0ZUF1dGhlbnRpY2F0aW9uUHJvdmlkZXIgfSBmcm9tIFwiLi4vSHR0cENsaWVudC9BdXRoZW50aWNhdGlvbk1vZGVcIjtcbmltcG9ydCB7IElDb21iaW5lQnlUcmFuc2ZlcnMgfSBmcm9tIFwiLi4vLi4vRW5naW5lL3NyYy9FbmdpbmUvQ29yZS9Nb2RhbE1hbmFnZXIvTW9kYWxzL1VwbG9hZFNlY3Rpb24vVHlwZXNcIjtcbmltcG9ydCB7IEFic29sdXRlTW9kZWxQYXRoLCBjb252ZXJ0VG9MZWdhY3lQYXRoIH0gZnJvbSBcIi4uL01vZGVsUGF0aC9Nb2RlbFBhdGhcIjtcblxuaW1wb3J0IHtcbiAgICBCYXNlR2V0RnVmUmVzcG9uc2UsXG4gICAgQ2hlY2tTY2VuYXJpb1R5cGUsXG4gICAgRHJhZnRTZXR0aW5ncyxcbiAgICBGdWZXaXRoQXR0YWNobWVudHNSZXNwb25zZSxcbiAgICBJQ2FuZHlBcGlDbGllbnQsXG4gICAgSUNhbmR5QXBpRHJhZnRDbGllbnQsXG4gICAgSUlubmVyQ2hhbmdlUmVzdWx0LFxuICAgIElJbm5lckNoYW5nZVN1Y2Nlc3NSZXN1bHQsXG4gICAgUGF0aExvYWRTcGVjaWZpY2F0aW9uLFxufSBmcm9tIFwiLi9JQ2FuZHlBcGlDbGllbnRcIjtcbmltcG9ydCB7IFNlcnZlckVycm9yTG9nIH0gZnJvbSBcIi4vVHlwZXMvRXJyb3JMb2cvU2VydmVyRXJyb3JMb2dcIjtcbmltcG9ydCB7IFNlcnZlcklubmVyUmVzcG9uc2UsIFNlcnZlckpzb25SZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0dldElubmVyL1NlcnZlcklubmVyUmVzcG9uc2VcIjtcbmltcG9ydCB7XG4gICAgRXhjZWxzVG9QYXJ0aWFsRnVmc1Jlc3BvbnNlLFxuICAgIEZpbGVQcm9wZXJ0aWVzLFxuICAgIEltcG9ydEZyb21QYXJ0aWFsRnVmc0J5UGF0aFJlc3BvbnNlLFxuICAgIFNlcnZlckVycm9yUmVzcG9uc2UsXG4gICAgVXBsb2FkRmlsZVByb3BlcnRpZXNSZXNwb25zZSxcbn0gZnJvbSBcIi4vVHlwZXMvRHJhZnRBY3Rpb25zL0ZpbGVQcm9wZXJ0aWVzXCI7XG5pbXBvcnQgeyBDcmVhdGVEcmFmdFJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvQ3JlYXRlRHJhZnQvQ3JlYXRlRHJhZnRSZXNwb25zZVwiO1xuaW1wb3J0IHsgQ3JlYXRlRXhwbGFuYXRvcnlOb3RlUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9FeHBsYW5hdG9yeU5vdGUvQ3JlYXRlRXhwbGFuYXRvcnlOb3RlUmVzcG9uc2VcIjtcbmltcG9ydCB7IERyYWZ0RnVsbElkIH0gZnJvbSBcIi4vVHlwZXMvRHJhZnRGdWxsSWRcIjtcbmltcG9ydCB7IFNlcnZlckNoYW5nZVNldCB9IGZyb20gXCIuL1R5cGVzL0NoYW5nZVNldC9TZXJ2ZXJDaGFuZ2VTZXRcIjtcbmltcG9ydCB7IFNlcnZlclRhc2ssIFZlcmlmeUFuZEZpeEZuc1JlcXVpcmVtZW50c1Rhc2tJbmZvIH0gZnJvbSBcIi4vVHlwZXMvVGFza3MvVGFza3NcIjtcbmltcG9ydCB7IEZvY3VzU2VydmVyRXJyb3JDb2RlLCBHZXRCeUlublJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvRm9jdXMvRm9jdXNUeXBlc1wiO1xuaW1wb3J0IHsgQXR0YWNoSW5mbyB9IGZyb20gXCIuL1R5cGVzL0F0dGFjaG1lbnRzL0F0dGFjbWVudHNcIjtcbmltcG9ydCB7IERyYWZ0UHJlc2VudGF0aW9uVHlwZSB9IGZyb20gXCIuL1R5cGVzL1ByZXNlbnRhdGlvbnMvRHJhZnRQcmVzZW50YXRpb25UeXBlXCI7XG5pbXBvcnQgeyBQcmVzZW50YXRpb25Db250ZW50IH0gZnJvbSBcIi4vVHlwZXMvUHJlc2VudGF0aW9ucy9QcmVzZW50YXRpb25Db250ZW50XCI7XG5pbXBvcnQgeyBDb252ZXJ0RHJhZnRSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvRHJhZnRBY3Rpb25zL0NvbnZlcnREcmFmdFJlcXVlc3RcIjtcbmltcG9ydCB7IEdldEF0dGFjaG1lbnRzUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9BdHRhY2htZW50cy9HZXRBdHRhY2htZW50c1Jlc3BvbnNlXCI7XG5pbXBvcnQgeyBGb2N1c1NlcnZlclJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvRm9jdXMvRm9jdXNTZXJ2ZXJSZXNwb25zZVwiO1xuaW1wb3J0IHsgR2V0VGFza3NTZXJ2ZXJSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL1Rhc2tzL0dldFRhc2tzU2VydmVyUmVzcG9uc2VcIjtcbmltcG9ydCB7IFNlcnZlclJlcXVpc2l0ZXNSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0dldElubmVyL1NlcnZlclJlcXVpc2l0ZXNSZXNwb25zZVwiO1xuaW1wb3J0IHsgaXNCdWZmZXIgfSBmcm9tIFwiLi9Jc0J1ZmZlclwiO1xuaW1wb3J0IHsgQ29tYmluYXRvclR5cGUsIENvbWJpbmVGdWZSZXN1bHQsIEZ1ZkNvbWJpbmVNZXRob2QgfSBmcm9tIFwiLi9UeXBlcy9EcmFmdEFjdGlvbnMvQ29tYmluZUZ1ZlJlc3VsdFwiO1xuaW1wb3J0IHsgRmVhdHVyZUZsYWdzUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9GZWF0dXJlRmxhZ3MvRmVhdHVyZUZsYWdzUmVzcG9uc2VcIjtcbmltcG9ydCB7IEZ1ZlNpemVUb29MYXJnZUVycm9yIH0gZnJvbSBcIi4vVHlwZXMvRHJhZnRBY3Rpb25zL0Z1ZlNpemVUb29MYXJnZUVycm9yXCI7XG5pbXBvcnQgeyBJbXBvcnRFbXBsb3llZXNSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvU3RhZmYvSW1wb3J0RW1wbG95ZWVzUmVxdWVzdFwiO1xuaW1wb3J0IHsgTWFzc0FjdGlvblBhcmFtZXRlcnMgfSBmcm9tIFwiLi9UeXBlcy9NYXNzQWN0aW9ucy9NYXNzQWN0aW9uUGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgUHJpbnRUeXBlIH0gZnJvbSBcIi4vVHlwZXMvUHJpbnQvUHJpbnRUeXBlXCI7XG5pbXBvcnQgeyBQcmludFJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvUHJpbnQvUHJpbnRSZXNwb25zZVwiO1xuaW1wb3J0IHsgU2VydmVyUmF3UmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9HZXRJbm5lci9TZXJ2ZXJSYXdSZXNwb25zZVwiO1xuaW1wb3J0IHsgQ2FuZHlQb3BkUHJvdG9jb2wgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9DYW5keVBvcGRQcm90b2NvbFwiO1xuaW1wb3J0IHsgSW5zdGFuY2VzRGVsZXRpbmdSdWxlIH0gZnJvbSBcIi4vVHlwZXMvSW5zdGFuY2VzRGVsZXRpbmcvSW5zdGFuY2VzRGVsZXRpbmdSdWxlXCI7XG5pbXBvcnQgeyBWYWx1ZUZvckluc3RhbmNlc1NldHRpbmdSdWxlIH0gZnJvbSBcIi4vVHlwZXMvTWFzc0FjdGlvbnMvVmFsdWVGb3JJbnN0YW5jZXNTZXR0aW5nUnVsZVwiO1xuaW1wb3J0IHsgSW5uZXJRdWVyeVJlcXVlc3QgfSBmcm9tIFwiLi9UeXBlcy9RdWVyeUNvbGxlY3Rvbi9Jbm5lclF1ZXJ5UmVxdWVzdFwiO1xuaW1wb3J0IHsgSW5uZXJRdWVyeVJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvUXVlcnlDb2xsZWN0b24vSW5uZXJRdWVyeVJlc3BvbnNlXCI7XG5pbXBvcnQgeyBSZXNvbHZlSW5uZXJQYXRoUmVxdWVzdCB9IGZyb20gXCIuL1R5cGVzL0Vycm9yTG9nL1Jlc29sdmVJbm5lclBhdGhSZXF1ZXN0XCI7XG5pbXBvcnQgeyBSZXNvbHZlUGF0aFJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvRXJyb3JMb2cvUmVzb2x2ZVBhdGhSZXNwb25zZVwiO1xuXG5jb25zdCBzdHJhbmdlT3B0aW9ucyA9IHsgc3JjOiBcImNoYW5nZVNldFwiLCBkYXRhVmVyc2lvbjogXCIwXCIgfTtcblxuZXhwb3J0IGNvbnN0IENhbmR5UmVzb3VyY2Vab25lcyA9IHtcbiAgICBUZXN0Rm9ybXM6IFwiY2FuZHkucmVzb3VyY2VzLnRlc3QtZm9ybXNcIixcbn07XG5cbmV4cG9ydCBlbnVtIFNlcnZlckVycm9ycyB7XG4gICAgRnVmU2l6ZVRvb0xhcmdlID0gXCJGdWZTaXplVG9vTGFyZ2VcIixcbiAgICBCYWRSZXF1ZXN0ID0gXCJCYWRSZXF1ZXN0XCIsXG4gICAgVW5rbm93bkVycm9yID0gXCJVbmtub3duRXJyb3JcIixcbn1cblxuZnVuY3Rpb24gY29udmVydFBhdGhMb2FkU3BlY2lmaWNhdGlvblRvU3RyaW5nKHNwZWM6IFBhdGhMb2FkU3BlY2lmaWNhdGlvbik6IHN0cmluZyB7XG4gICAgcmV0dXJuIChcbiAgICAgICAgKHNwZWMuc2tpcCA/IFwiLVwiIDogXCJcIikgK1xuICAgICAgICAoc3BlYy5wYXRoT3JQYXRoUHJlZml4ID09PSBcIipcIiA/IHNwZWMucGF0aE9yUGF0aFByZWZpeCA6IHNwZWMucGF0aE9yUGF0aFByZWZpeC50b0xlZ2FjeVBhdGgoKSlcbiAgICApO1xufVxuXG5leHBvcnQgY2xhc3MgQ2FuZHlBcGlDbGllbnQgaW1wbGVtZW50cyBJQ2FuZHlBcGlDbGllbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudDogSUh0dHBDbGllbnQ7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIGZldGNoSW1wbDogRmV0Y2gsXG4gICAgICAgIGJhc2VVcmw6IHN0cmluZyxcbiAgICAgICAgcmVzb3VyY2Vab25lOiB1bmRlZmluZWQgfCBzdHJpbmcsXG4gICAgICAgIGF1dGhlbnRpY2F0aW9uOiB1bmRlZmluZWQgfCBBdXRoZW50aWNhdGlvbk1vZGUsXG4gICAgICAgIGV4Y2VwdGlvbkxvZ2dlcj86IEV4Y2VwdGlvbkxvZ2dlclxuICAgICkge1xuICAgICAgICB0aGlzLmh0dHBDbGllbnQgPSBuZXcgSHR0cENsaWVudChcbiAgICAgICAgICAgIGZldGNoSW1wbCxcbiAgICAgICAgICAgIGJhc2VVcmwsXG4gICAgICAgICAgICBjcmVhdGVBdXRoZW50aWNhdGlvblByb3ZpZGVyKGF1dGhlbnRpY2F0aW9uKSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZVpvbmU6IHJlc291cmNlWm9uZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleGNlcHRpb25Mb2dnZXJcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZm9yRHJhZnQoZHJhZnRGdWxsSWQ6IERyYWZ0RnVsbElkKTogSUNhbmR5QXBpRHJhZnRDbGllbnQge1xuICAgICAgICByZXR1cm4gbmV3IENhbmR5QXBpRHJhZnRDbGllbnQodGhpcy5odHRwQ2xpZW50LCBkcmFmdEZ1bGxJZCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEluZm9CeUlubnMoZHJhZnRGdWxsSWQ6IERyYWZ0RnVsbElkLCBpbm5zOiByZWFkb25seSBzdHJpbmdbXSk6IFByb21pc2U8R2V0QnlJbm5SZXNwb25zZT4ge1xuICAgICAgICBjb25zdCBwYXRocyA9IGlubnMubWFwKGlubiA9PiBgQGZvY3VzLyR7aW5ufWApO1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChkcmFmdEZ1bGxJZCwgXCJnZXQtaW5uZXJcIikpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KHBhdGhzKVxuICAgICAgICAgICAgLmpzb248Rm9jdXNTZXJ2ZXJSZXNwb25zZT4oKTtcbiAgICAgICAgY29uc3QgcmVzdWx0OiBHZXRCeUlublJlc3BvbnNlID0ge307XG4gICAgICAgIGZvciAoY29uc3QgaW5uIG9mIGlubnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGlublNlcnZlclZhbHVlID0gcmVzcG9uc2VbYEBmb2N1cy8ke2lubn1gXT8udmFsdWU7XG4gICAgICAgICAgICBpZiAoaW5uU2VydmVyVmFsdWUgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2lubl0gPSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiBcIlNlcnZlciBkb2VzIG5vdCByZXR1cm4gaW5uIGluZm9cIixcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JDb2RlOiBGb2N1c1NlcnZlckVycm9yQ29kZS5Ob0lubkVycm9yLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtpbm5dID0ge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogaW5uU2VydmVyVmFsdWUudmFsdWUgPz8gdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICBlcnJvckNvZGU6IGlublNlcnZlclZhbHVlLmVycm9yQ29kZSA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiBpbm5TZXJ2ZXJWYWx1ZS5lcnJvciA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxHZnZzKGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnQuZ2V0KGBidWlsZC1zZXJ2ZXIvZ2Z2c2ApLmpzb248c3RyaW5nW10+KCk7XG4gICAgICAgIHJldHVybiBib2R5O1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjcmVhdGVEcmFmdEZyb21Ecml2ZShcbiAgICAgICAgbnM6IHN0cmluZyxcbiAgICAgICAgZnVmRHJpdmVVcmk6IHN0cmluZyxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8Q3JlYXRlRHJhZnRSZXNwb25zZT4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdChgdjEvbnMvJHtuc30vY3JlYXRlLWRyYWZ0LWZyb20tZHJpdmVgKVxuICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyh7XG4gICAgICAgICAgICAgICAgbnM6IG5zLFxuICAgICAgICAgICAgICAgIGZ1ZkRyaXZlVXJpOiBmdWZEcml2ZVVyaSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAud2l0aEFib3J0U2lnbmFsKGFib3J0U2lnbmFsKVxuICAgICAgICAgICAgLmpzb248Q3JlYXRlRHJhZnRSZXNwb25zZT4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgY3JlYXRlRW1wdHlEcmFmdChuczogc3RyaW5nLCBnZnY6IHN0cmluZywgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8Q3JlYXRlRHJhZnRSZXNwb25zZT4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdChgdjEvbnMvJHtuc30vY3JlYXRlLWRyYWZ0YClcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoeyBnZnY6IGdmdiB9KVxuICAgICAgICAgICAgLndpdGhBYm9ydFNpZ25hbChhYm9ydFNpZ25hbClcbiAgICAgICAgICAgIC5qc29uPENyZWF0ZURyYWZ0UmVzcG9uc2U+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogc3RyaW5nKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPjtcbiAgICBwdWJsaWMgY3JlYXRlRHJhZnQobnM6IHN0cmluZywgZ2Z2OiB1bmRlZmluZWQsIGZ1ZkNvbnRlbnQ6IEJ1ZmZlcik6IFByb21pc2U8Q3JlYXRlRHJhZnRSZXNwb25zZT47XG4gICAgcHVibGljIGFzeW5jIGNyZWF0ZURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogdW5kZWZpbmVkIHwgc3RyaW5nLCBmdWZDb250ZW50PzogQnVmZmVyKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPiB7XG4gICAgICAgIGlmIChnZnYgPT0gdW5kZWZpbmVkICYmIGZ1ZkNvbnRlbnQgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAgICAgLnBvc3QoYHYxL25zLyR7bnN9L2NyZWF0ZS1kcmFmdGApXG4gICAgICAgICAgICAgICAgLndpdGhDb250ZW50VHlwZShcImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbVwiKVxuICAgICAgICAgICAgICAgIC53aXRoQm9keUZyb21CdWZmZXIoZnVmQ29udGVudClcbiAgICAgICAgICAgICAgICAuanNvbjxDcmVhdGVEcmFmdFJlc3BvbnNlPigpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChnZnYgIT0gdW5kZWZpbmVkICYmIGZ1ZkNvbnRlbnQgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAgICAgLnBvc3QoYHYxL25zLyR7bnN9L2NyZWF0ZS1kcmFmdGApXG4gICAgICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyh7IGdmdjogZ2Z2IH0pXG4gICAgICAgICAgICAgICAgLndpdGhDb250ZW50VHlwZShcImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbVwiKVxuICAgICAgICAgICAgICAgIC53aXRoQm9keUZyb21CdWZmZXIoQnVmZmVyLmZyb20oW10pKVxuICAgICAgICAgICAgICAgIC5qc29uPENyZWF0ZURyYWZ0UmVzcG9uc2U+KCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGdmdiA9PSB1bmRlZmluZWQgJiYgZnVmQ29udGVudCA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBjcmVhdGUgZHJhZnQ6IG5vIGdmdiBhbmQgbm8gZnVmIHNwZWNpZmllZFwiKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdChgdjEvbnMvJHtuc30vY3JlYXRlLWRyYWZ0YClcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoeyBnZnY6IGdmdiB9KVxuICAgICAgICAgICAgLndpdGhDb250ZW50VHlwZShcImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbVwiKVxuICAgICAgICAgICAgLndpdGhCb2R5RnJvbUJ1ZmZlcihmdWZDb250ZW50KVxuICAgICAgICAgICAgLmpzb248Q3JlYXRlRHJhZnRSZXNwb25zZT4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgY2hlY2tBbGl2ZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5odHRwQ2xpZW50LmdldChgX3N0YXR1cy9waW5nYCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREcmFmdFVybChkcmFmdEZ1bGxJZDogRHJhZnRGdWxsSWQsIGRyYWZ0UmVsYXRlZFVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGB2MS9ucy8ke2RyYWZ0RnVsbElkLm5zfS9kcmFmdHMvJHtkcmFmdEZ1bGxJZC5kcmFmdElkfS8ke2RyYWZ0UmVsYXRlZFVybH1gO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRGZWF0dXJlRmxhZ3MoKTogUHJvbWlzZTxGZWF0dXJlRmxhZ3NSZXNwb25zZT4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50LmdldChcInYxL2ZlYXR1cmVzL2ZsYWdzXCIpLmpzb248RmVhdHVyZUZsYWdzUmVzcG9uc2U+KCk7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ2FuZHlBcGlEcmFmdENsaWVudCBpbXBsZW1lbnRzIElDYW5keUFwaURyYWZ0Q2xpZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQ6IElIdHRwQ2xpZW50O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJhZnRGdWxsSWQ6IERyYWZ0RnVsbElkO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGh0dHBDbGllbnQ6IElIdHRwQ2xpZW50LCBkcmFmdEZ1bGxJZDogRHJhZnRGdWxsSWQpIHtcbiAgICAgICAgdGhpcy5odHRwQ2xpZW50ID0gaHR0cENsaWVudDtcbiAgICAgICAgdGhpcy5kcmFmdEZ1bGxJZCA9IGRyYWZ0RnVsbElkO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRIcmVmVG9Jbm5lckVkaXRvcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnVybChgaW5uZXItZWRpdG9yL25zLyR7dGhpcy5kcmFmdEZ1bGxJZC5uc30vZHJhZnRzLyR7dGhpcy5kcmFmdEZ1bGxJZC5kcmFmdElkfWApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRIcmVmRG93bmxvYWRGdWYoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC51cmwodGhpcy5nZXREcmFmdFVybChcImdldC1mdWZcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRIcmVmVG9Db252ZXJ0YXRpb25Mb2coKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC51cmwodGhpcy5nZXREcmFmdFVybChcImNvbnZlcnNpb25cIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRJbm5lckZ1ZigpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5nZXREcmFmdFVybChEcmFmdFByZXNlbnRhdGlvblR5cGUuaW5uZXJGdWYpKSkudGV4dCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRIcmVmVG9Eb3dubG9hZElubmVyRnVmKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEhyZWZEb3dubG9hZERyYWZ0UHJlc2VudGF0aW9uKERyYWZ0UHJlc2VudGF0aW9uVHlwZS5pbm5lckZ1Zik7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEhyZWZUb0Rvd25sb2FkQ2xpZW50SW5mbygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRIcmVmRG93bmxvYWREcmFmdFByZXNlbnRhdGlvbihEcmFmdFByZXNlbnRhdGlvblR5cGUuY2xpZW50SW5mbyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEhyZWZUb0Rvd25sb2FkRm9ybXNDbGllbnRJbmZvKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEhyZWZEb3dubG9hZERyYWZ0UHJlc2VudGF0aW9uKERyYWZ0UHJlc2VudGF0aW9uVHlwZS5mb3Jtc0NsaWVudEluZm8pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRIcmVmRG93bmxvYWRJbm5lcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRIcmVmRG93bmxvYWREcmFmdFByZXNlbnRhdGlvbihEcmFmdFByZXNlbnRhdGlvblR5cGUuaW5uZXIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRFcnJvckxvZygpOiBQcm9taXNlPFNlcnZlckVycm9yTG9nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZ2V0RHJhZnRQcmVzZW50YXRpb25VcmwoRHJhZnRQcmVzZW50YXRpb25UeXBlLmVycm9yTG9nKSkuanNvbjxTZXJ2ZXJFcnJvckxvZz4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0RXJyb3JMb2dXaXRoQ2hlY2tTY2VuYXJpb3MoY2hlY2tTY2VuYXJpb3M6IENoZWNrU2NlbmFyaW9UeXBlW10pOiBQcm9taXNlPFNlcnZlckVycm9yTG9nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJlcnJvcmxvZ1wiKSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoeyBjaGVja1NjZW5hcmlvczogY2hlY2tTY2VuYXJpb3MgfSlcbiAgICAgICAgICAgIC5qc29uPFNlcnZlckVycm9yTG9nPigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRUYXNrQnlJZCh0YXNrSWQ6IHN0cmluZyk6IFByb21pc2U8U2VydmVyVGFzayB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBjb25zdCB0YXNrcyA9IGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcImdldC1pbm5lclwiKSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoW2BAdGFzay8qYF0pXG4gICAgICAgICAgICAuanNvbjxHZXRUYXNrc1NlcnZlclJlc3BvbnNlPigpO1xuICAgICAgICByZXR1cm4gdGFza3NbYEB0YXNrLyR7dGFza0lkfWBdPy52YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0RnVmV2l0aEF0dGFjaG1lbnRzKCk6IFByb21pc2U8RnVmV2l0aEF0dGFjaG1lbnRzUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5nZXQodGhpcy5nZXREcmFmdFVybChcImdldC1mdWYtd2l0aC1hdHRhY2htZW50c1wiKSlcbiAgICAgICAgICAgIC5qc29uPEZ1ZldpdGhBdHRhY2htZW50c1Jlc3BvbnNlPigpO1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldFBhcnRpYWxGdWYocnVsZXM6IHN0cmluZ1tdKTogUHJvbWlzZTxCYXNlR2V0RnVmUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJnZXQtcGFydGlhbC1mdWZcIikpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KHJ1bGVzKVxuICAgICAgICAgICAgLmpzb248QmFzZUdldEZ1ZlJlc3BvbnNlPigpO1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFRhc2tzKCk6IFByb21pc2U8U2VydmVyVGFza1tdPiB7XG4gICAgICAgIGNvbnN0IHRhc2tzID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZ2V0LWlubmVyXCIpKVxuICAgICAgICAgICAgLndpdGhKc29uQm9keShbYEB0YXNrLypgXSlcbiAgICAgICAgICAgIC5qc29uPEdldFRhc2tzU2VydmVyUmVzcG9uc2U+KCk7XG4gICAgICAgIHJldHVybiBPYmplY3QudmFsdWVzKHRhc2tzKS5tYXAoeCA9PiB4LnZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZW5xdWV1ZVRhc2sodGFza0lkOiBzdHJpbmcsIHRhc2tJbmZvOiBWZXJpZnlBbmRGaXhGbnNSZXF1aXJlbWVudHNUYXNrSW5mbyk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRQcmVzZW50YXRpb25VcmwoRHJhZnRQcmVzZW50YXRpb25UeXBlLmlubmVyKSlcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoc3RyYW5nZU9wdGlvbnMpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KHtcbiAgICAgICAgICAgICAgICBhZGRlZDogW10sXG4gICAgICAgICAgICAgICAgY2hhbmdlZDoge1xuICAgICAgICAgICAgICAgICAgICBbYEB0YXNrLyR7dGFza0lkfWBdOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi50YXNrSW5mbyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiB0YXNrSWQsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICByZW1vdmVkOiBbXSxcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjYW5jZWxUYXNrKHRhc2tJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFByZXNlbnRhdGlvblVybChEcmFmdFByZXNlbnRhdGlvblR5cGUuaW5uZXIpKVxuICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyhzdHJhbmdlT3B0aW9ucylcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoe1xuICAgICAgICAgICAgICAgIGFkZGVkOiBbXSxcbiAgICAgICAgICAgICAgICBjaGFuZ2VkOiB7fSxcbiAgICAgICAgICAgICAgICByZW1vdmVkOiBbYEB0YXNrLyR7dGFza0lkfWBdLFxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEV4cGVydEVycm9yTG9nKCk6IFByb21pc2U8U2VydmVyRXJyb3JMb2c+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLmdldCh0aGlzLmdldERyYWZ0UHJlc2VudGF0aW9uVXJsKERyYWZ0UHJlc2VudGF0aW9uVHlwZS5lcnJvcmxvZ0V4cGVydCkpXG4gICAgICAgICAgICAuanNvbjxTZXJ2ZXJFcnJvckxvZz4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SHJlZlRvRXJyb3JMb2dQZGYoZXJyb3JMb2dOYW1lOiBzdHJpbmcsIHByb3BzTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC51cmwodGhpcy5nZXREcmFmdFVybChcInByZXNlbnRhdGlvbnMvZXJyb3JMb2cvcHJpbnRcIiksIHtcbiAgICAgICAgICAgIGVycm9yTG9nTmFtZTogZXJyb3JMb2dOYW1lLFxuICAgICAgICAgICAgcHJvcHNEcml2ZU5hbWU6IHByb3BzTmFtZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGNsZWFyRHJhZnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJjbGVhclwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGNvbnZlcnREcmFmdEZyb21QcmV2R2Z2KHsgcHJldkdmdkRyYWZ0SWQsIGdmdiB9OiBDb252ZXJ0RHJhZnRSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJjb252ZXJ0XCIpKS53aXRoUXVlcnlQYXJhbXMoe1xuICAgICAgICAgICAgaWQ6IHByZXZHZnZEcmFmdElkLFxuICAgICAgICAgICAgZ2Z2OiBnZnYsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZW5kQ2hhbmdlU2V0KGRhdGE6IFNlcnZlckNoYW5nZVNldCwgY3VycmVudERhdGFWZXJzaW9uOiBudW1iZXIpOiBQcm9taXNlPElJbm5lckNoYW5nZVJlc3VsdD4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJpbm5lclwiKSlcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoeyBkYXRhVmVyc2lvbjogY3VycmVudERhdGFWZXJzaW9uIH0pXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KGRhdGEpXG4gICAgICAgICAgICAuYWNjZXB0Q29kZSg0MDkpO1xuXG4gICAgICAgIGNvbnN0IGdldFN1Y2Nlc3NSZXN1bHQgPSBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkYXRhUmVzdWx0ID0gYXdhaXQgcmVzdWx0Lmpzb248eyBkYXRhVmVyc2lvbj86IG51bWJlciB9PigpO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBkYXRhVmVyc2lvbjogZGF0YVJlc3VsdD8uZGF0YVZlcnNpb24gPz8gcmVqZWN0KFwiSW52YWxpZCBkYXRhVmVyc2lvbiBhZnRlciBhcHBseWluZyBjaGFuZ2Ugc2V0LlwiKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdC5zdGF0dXMgPT0gMjAwID8gYXdhaXQgZ2V0U3VjY2Vzc1Jlc3VsdCgpIDogcmVzdWx0LnN0YXR1cztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2VuZENoYW5nZVdpdGhOb3JtYWxpemF0aW9uU2V0KFxuICAgICAgICBkYXRhOiBTZXJ2ZXJDaGFuZ2VTZXQsXG4gICAgICAgIGN1cnJlbnREYXRhVmVyc2lvbjogbnVtYmVyLFxuICAgICAgICBub3JtYWxpemVySWQ/OiBzdHJpbmdcbiAgICApOiBQcm9taXNlPElJbm5lckNoYW5nZVJlc3VsdD4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJpbm5lci9wYXRjaC13aXRoLW5vcm1hbGl6YXRpb25cIikpXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHsgZGF0YVZlcnNpb246IGN1cnJlbnREYXRhVmVyc2lvbiwgbm9ybWFsaXplcklkOiBub3JtYWxpemVySWQgfSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoZGF0YSlcbiAgICAgICAgICAgIC5hY2NlcHRDb2RlKDQwOSk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdC5zdGF0dXMgPT0gMjAwID8gYXdhaXQgcmVzdWx0Lmpzb248SUlubmVyQ2hhbmdlU3VjY2Vzc1Jlc3VsdD4oKSA6IHJlc3VsdC5zdGF0dXM7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbmRDaGFuZ2VTZXRTeW5jKFxuICAgICAgICBkYXRhOiBTZXJ2ZXJDaGFuZ2VTZXQsXG4gICAgICAgIGN1cnJlbnREYXRhVmVyc2lvbjogbnVtYmVyLFxuICAgICAgICBub3JtYWxpemVySWQ/OiBzdHJpbmdcbiAgICApOiBJSW5uZXJDaGFuZ2VSZXN1bHQge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmh0dHBDbGllbnQucG9zdFN5bmModGhpcy5nZXREcmFmdFVybChcImlubmVyXCIpLCB7IGRhdGFWZXJzaW9uOiBjdXJyZW50RGF0YVZlcnNpb24gfSwgZGF0YSk7XG5cbiAgICAgICAgY29uc3QgZ2V0U3VjY2Vzc1Jlc3VsdFN5bmMgPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkYXRhUmVzdWx0ID0gcmVzdWx0Lmpzb248eyBkYXRhVmVyc2lvbj86IG51bWJlciB9PigpO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBkYXRhVmVyc2lvbjogZGF0YVJlc3VsdD8uZGF0YVZlcnNpb24gPz8gcmVqZWN0KFwiSW52YWxpZCBkYXRhVmVyc2lvbiBhZnRlciBhcHBseWluZyBjaGFuZ2Ugc2V0LlwiKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiByZXN1bHQuc3RhdHVzID09IDIwMCA/IGdldFN1Y2Nlc3NSZXN1bHRTeW5jKCkgOiByZXN1bHQuc3RhdHVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRSZXF1aXNpdGVzKHJlcXVpc2l0ZUxpc3Q6IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTxTZXJ2ZXJSZXF1aXNpdGVzUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcImdldC1pbm5lclwiKSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkocmVxdWlzaXRlTGlzdClcbiAgICAgICAgICAgIC5qc29uPFNlcnZlclJlcXVpc2l0ZXNSZXNwb25zZT4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0SW5uZXIocGF0aHM6IHVuZGVmaW5lZCB8IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTxTZXJ2ZXJJbm5lclJlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJnZXQtaW5uZXJcIikpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KHBhdGhzKVxuICAgICAgICAgICAgLmpzb248U2VydmVySW5uZXJSZXNwb25zZT4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UGFydGlhbElubmVyKHJ1bGVzOiBQYXRoTG9hZFNwZWNpZmljYXRpb25bXSwgbWF4SW5zdGFuY2VDb3VudD86IG51bWJlcik6IFByb21pc2U8U2VydmVySW5uZXJSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCBjb252ZXJ0ZWRSdWxlcyA9IHJ1bGVzLm1hcChjb252ZXJ0UGF0aExvYWRTcGVjaWZpY2F0aW9uVG9TdHJpbmcpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZ2V0LXBhcnRpYWwtaW5uZXJcIikpXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKG1heEluc3RhbmNlQ291bnQgIT0gdW5kZWZpbmVkICYmIHsgbWF4SW5zdGFuY2VDb3VudDogbWF4SW5zdGFuY2VDb3VudC50b1N0cmluZygpIH0pXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KGNvbnZlcnRlZFJ1bGVzLmxlbmd0aCA+IDAgPyBjb252ZXJ0ZWRSdWxlcyA6IFtcIipcIl0pXG4gICAgICAgICAgICAuanNvbjxTZXJ2ZXJJbm5lclJlc3BvbnNlPigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRQYXJ0aWFsSW5uZXJBc0pzb25UcmVlKFxuICAgICAgICBydWxlczogUGF0aExvYWRTcGVjaWZpY2F0aW9uW10sXG4gICAgICAgIG1heEluc3RhbmNlQ291bnQ/OiBudW1iZXJcbiAgICApOiBQcm9taXNlPFNlcnZlckpzb25SZXNwb25zZT4ge1xuICAgICAgICBjb25zdCBjb252ZXJ0ZWRSdWxlcyA9IHJ1bGVzLm1hcChjb252ZXJ0UGF0aExvYWRTcGVjaWZpY2F0aW9uVG9TdHJpbmcpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZ2V0LXBhcnRpYWwtaW5uZXJcIikpXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKG1heEluc3RhbmNlQ291bnQgIT0gdW5kZWZpbmVkICYmIHsgbWF4SW5zdGFuY2VDb3VudDogbWF4SW5zdGFuY2VDb3VudC50b1N0cmluZygpIH0pXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHsgZm9ybWF0OiBcIkpzb25UcmVlXCIgfSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoY29udmVydGVkUnVsZXMubGVuZ3RoID4gMCA/IGNvbnZlcnRlZFJ1bGVzIDogW1wiKlwiXSlcbiAgICAgICAgICAgIC5qc29uPFNlcnZlckpzb25SZXNwb25zZT4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UmF3UGFydGlhbElubmVyQXNKc29uVHJlZShcbiAgICAgICAgcnVsZXM6IHJlYWRvbmx5IFBhdGhMb2FkU3BlY2lmaWNhdGlvbltdLFxuICAgICAgICBtYXhJbnN0YW5jZUNvdW50PzogbnVtYmVyXG4gICAgKTogUHJvbWlzZTxTZXJ2ZXJSYXdSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCBjb252ZXJ0ZWRSdWxlcyA9IHJ1bGVzLm1hcChjb252ZXJ0UGF0aExvYWRTcGVjaWZpY2F0aW9uVG9TdHJpbmcpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZ2V0LXBhcnRpYWwtaW5uZXIyXCIpKVxuICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyhtYXhJbnN0YW5jZUNvdW50ICE9IHVuZGVmaW5lZCAmJiB7IG1heEluc3RhbmNlQ291bnQ6IG1heEluc3RhbmNlQ291bnQudG9TdHJpbmcoKSB9KVxuICAgICAgICAgICAgLndpdGhKc29uQm9keShjb252ZXJ0ZWRSdWxlcy5sZW5ndGggPiAwID8gY29udmVydGVkUnVsZXMgOiBbXCIqXCJdKVxuICAgICAgICAgICAgLmpzb248U2VydmVyUmF3UmVzcG9uc2U+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldERhdGFWZXJzaW9uKCk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZ2V0RHJhZnRVcmwoXCJpbm5lci9nZXQtZGF0YS12ZXJzaW9uXCIpKS5qc29uPG51bWJlcj4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0RXhwbGFuYXRvcnlOb3RlKCk6IFByb21pc2U8Q3JlYXRlRXhwbGFuYXRvcnlOb3RlUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLmdldCh0aGlzLmdldERyYWZ0UHJlc2VudGF0aW9uVXJsKERyYWZ0UHJlc2VudGF0aW9uVHlwZS5leHBsYW5hdG9yeU5vdGUpKVxuICAgICAgICAgICAgLmpzb248Q3JlYXRlRXhwbGFuYXRvcnlOb3RlUmVzcG9uc2U+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEF0dGFjaG1lbnRCeUlkKGF0dGFjaG1lbnRJZDogc3RyaW5nKTogUHJvbWlzZTxBdHRhY2hJbmZvPiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcImdldC1pbm5lclwiKSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoW2BAYXR0YWNobWVudC8ke2F0dGFjaG1lbnRJZH1gXSlcbiAgICAgICAgICAgIC5qc29uPEdldEF0dGFjaG1lbnRzUmVzcG9uc2U+KCk7XG4gICAgICAgIHJldHVybiByZXN1bHRbYEBhdHRhY2htZW50LyR7YXR0YWNobWVudElkfWBdPy52YWx1ZSA/PyByZWplY3QoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsQXR0YWNobWVudHMoKTogUHJvbWlzZTxBdHRhY2hJbmZvW10+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZ2V0LWlubmVyXCIpKVxuICAgICAgICAgICAgLndpdGhKc29uQm9keShbYEBhdHRhY2htZW50LypgXSlcbiAgICAgICAgICAgIC5qc29uPEdldEF0dGFjaG1lbnRzUmVzcG9uc2U+KCk7XG4gICAgICAgIHJldHVybiBPYmplY3QudmFsdWVzKHJlc3VsdCkubWFwKHggPT4geC52YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHJlbW92ZUF0dGFjaG1lbnRzKGF0dGFjaG1lbnRJZHM6IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFByZXNlbnRhdGlvblVybChEcmFmdFByZXNlbnRhdGlvblR5cGUuaW5uZXIpKVxuICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyhzdHJhbmdlT3B0aW9ucylcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoe1xuICAgICAgICAgICAgICAgIGFkZGVkOiBbXSxcbiAgICAgICAgICAgICAgICBjaGFuZ2VkOiB7fSxcbiAgICAgICAgICAgICAgICByZW1vdmVkOiBhdHRhY2htZW50SWRzLm1hcChpZCA9PiBgQGF0dGFjaG1lbnQvJHtpZH1gKSxcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjcmVhdGVPclVwZGF0ZUF0dGFjaG1lbnRzKGF0dGFjaG1lbnRzOiByZWFkb25seSBBdHRhY2hJbmZvW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgY2hhbmdlZCA9IHt9O1xuICAgICAgICBmb3IgKGNvbnN0IGF0dGFjaG1lbnQgb2YgYXR0YWNobWVudHMpIHtcbiAgICAgICAgICAgIGNoYW5nZWRbYEBhdHRhY2htZW50LyR7YXR0YWNobWVudC5pZH1gXSA9IHtcbiAgICAgICAgICAgICAgICBjb250ZW50VXJpOiBhdHRhY2htZW50LmNvbnRlbnRVcmksXG4gICAgICAgICAgICAgICAgaWQ6IGF0dGFjaG1lbnQuaWQsXG4gICAgICAgICAgICAgICAgbWV0YTogYXR0YWNobWVudC5tZXRhLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRQcmVzZW50YXRpb25VcmwoRHJhZnRQcmVzZW50YXRpb25UeXBlLmlubmVyKSlcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoc3RyYW5nZU9wdGlvbnMpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KHtcbiAgICAgICAgICAgICAgICBhZGRlZDogW10sXG4gICAgICAgICAgICAgICAgY2hhbmdlZDogY2hhbmdlZCxcbiAgICAgICAgICAgICAgICByZW1vdmVkOiBbXSxcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjcmVhdGVEcmFmdEF0dGFjaG1lbnQoZ2Z2OiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8QXR0YWNoSW5mbz4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZXh0ZXJuYWwvY3JlYXRlLWF0dGFjaG1lbnQtZHJhZnRcIikpXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHsgZ2Z2OiBnZnYsIHBhdGg6IHBhdGggfSlcbiAgICAgICAgICAgIC5qc29uPEF0dGFjaEluZm8+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIG9wZW5Mb2FkZWRBdHRhY2htZW50QXNEcmFmdChpZDogc3RyaW5nKTogUHJvbWlzZTxBdHRhY2hJbmZvPiB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiZXh0ZXJuYWwvb3Blbi1sb2FkZWQtYXR0YWNobWVudC1hcy1kcmFmdFwiKSlcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoeyBhdHRhY2htZW50SWQ6IGlkIH0pXG4gICAgICAgICAgICAuYWNjZXB0Q29kZSg0MTMpO1xuXG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDQxMykge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JEYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbjx7IGVycm9yQ29kZTogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmcgfT4oKTtcbiAgICAgICAgICAgIGlmIChlcnJvckRhdGEuZXJyb3JDb2RlID09PSBcIkZ1ZlNpemVUb29MYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEZ1ZlNpemVUb29MYXJnZUVycm9yKGVycm9yRGF0YS5tZXNzYWdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IG5ldyBIdHRwRXJyb3IoZXJyb3JEYXRhLm1lc3NhZ2UsIHJlc3BvbnNlLnN0YXR1cyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlLmpzb248QXR0YWNoSW5mbz4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2V0UHJlc2VudGF0aW9uKHByZXNlbnRhdGlvblR5cGU6IERyYWZ0UHJlc2VudGF0aW9uVHlwZSwgY29udGVudDogc3RyaW5nIHwgdW5rbm93bik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBsZXQgcmVxdWVzdCA9IHRoaXMuaHR0cENsaWVudC5wdXQodGhpcy5nZXREcmFmdFByZXNlbnRhdGlvblVybChwcmVzZW50YXRpb25UeXBlKSk7XG4gICAgICAgIGlmICh0eXBlb2YgY29udGVudCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgcmVxdWVzdCA9IHJlcXVlc3Qud2l0aFJhd0JvZHkoY29udGVudCk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNCdWZmZXIoY29udGVudCkpIHtcbiAgICAgICAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LndpdGhSYXdCb2R5KGNvbnRlbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVxdWVzdCA9IHJlcXVlc3Qud2l0aEpzb25Cb2R5KGNvbnRlbnQpO1xuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHJlcXVlc3Q7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHBhdGNoUHJlc2VudGF0aW9uKFxuICAgICAgICBwcmVzZW50YXRpb25UeXBlOiBEcmFmdFByZXNlbnRhdGlvblR5cGUsXG4gICAgICAgIHByZXNlbnRhdGlvbkNvbnRlbnQ6IFByZXNlbnRhdGlvbkNvbnRlbnRcbiAgICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5odHRwQ2xpZW50LnBhdGNoKHRoaXMuZ2V0RHJhZnRQcmVzZW50YXRpb25VcmwocHJlc2VudGF0aW9uVHlwZSkpLndpdGhKc29uQm9keShwcmVzZW50YXRpb25Db250ZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0RmlsZVByb3BlcnRpZXMoXG4gICAgICAgIGRyaXZlVXJpOiBzdHJpbmcsXG4gICAgICAgIGlnbm9yZVNpemVDaGVjaz86IGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICApOiBQcm9taXNlPEZpbGVQcm9wZXJ0aWVzIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAuZ2V0KGB2MS9maWxlcy9nZXQtcHJvcGVydGllc2ApXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHsgZHJpdmVVcmk6IGRyaXZlVXJpLCBpZ25vcmVTaXplQ2hlY2s6IGlnbm9yZVNpemVDaGVjayA/PyBmYWxzZSB9KVxuICAgICAgICAgICAgLmFjY2VwdENvZGUoNDAwKVxuICAgICAgICAgICAgLmFjY2VwdENvZGUoNDEzKTtcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAwIHx8IHJlc3BvbnNlLnN0YXR1cyA9PT0gNDEzIHx8IHJlc3BvbnNlLnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuanNvbjxGaWxlUHJvcGVydGllcz4oKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBwcmVwYXJlQW5kR2V0RmlsZVByb3BlcnRpZXMoZHJpdmVVcmk6IHN0cmluZywgZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPEZpbGVQcm9wZXJ0aWVzIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAuZ2V0KGB2MS9maWxlcy9wcmVwYXJlLWFuZC1nZXQtcHJvcGVydGllc2ApXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHsgZ2Z2OiBnZnYsIGRyaXZlVXJpOiBkcml2ZVVyaSB9KVxuICAgICAgICAgICAgLmFjY2VwdENvZGUoNDEzKTtcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDQxMykge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JEYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbjx7IGVycm9yQ29kZTogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmcgfT4oKTtcbiAgICAgICAgICAgIGlmIChlcnJvckRhdGEuZXJyb3JDb2RlID09PSBcIkZ1ZlNpemVUb29MYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEZ1ZlNpemVUb29MYXJnZUVycm9yKGVycm9yRGF0YS5tZXNzYWdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IG5ldyBIdHRwRXJyb3IoZXJyb3JEYXRhLm1lc3NhZ2UsIHJlc3BvbnNlLnN0YXR1cyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlLmpzb248RmlsZVByb3BlcnRpZXM+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHVwbG9hZEFuZEdldEZpbGVQcm9wZXJ0aWVzKFxuICAgICAgICBkcml2ZVVyaXM6IHN0cmluZ1tdLFxuICAgICAgICBnZnY6IHN0cmluZyxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8VXBsb2FkRmlsZVByb3BlcnRpZXNSZXNwb25zZT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgICAgICAucG9zdChgdjEvZmlsZXMvdXBsb2FkLWFuZC1nZXQtcHJvcGVydGllc2ApXG4gICAgICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyh7IGdmdjogZ2Z2IH0pXG4gICAgICAgICAgICAgICAgLndpdGhKc29uQm9keShkcml2ZVVyaXMpXG4gICAgICAgICAgICAgICAgLndpdGhBYm9ydFNpZ25hbChhYm9ydFNpZ25hbClcbiAgICAgICAgICAgICAgICAuYWNjZXB0Q29kZSg0MDApXG4gICAgICAgICAgICAgICAgLmFjY2VwdENvZGUoNDEzKTtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uPHsgZXJyb3JDb2RlOiBTZXJ2ZXJFcnJvcnM7IG1lc3NhZ2U6IHN0cmluZyB9PigpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHNlcnZlckVycm9yOiBkYXRhLmVycm9yQ29kZSwgaW52YWxpZFNvdXJjZURyaXZlQ29udGVudE5hbWVzOiBcIlwiLCBzb3VyY2VzVG90YWxDb3VudDogMCB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb248VXBsb2FkRmlsZVByb3BlcnRpZXNSZXNwb25zZT4oKTtcbiAgICAgICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHNlcnZlckVycm9yOiBTZXJ2ZXJFcnJvcnMuVW5rbm93bkVycm9yLFxuICAgICAgICAgICAgICAgIGludmFsaWRTb3VyY2VEcml2ZUNvbnRlbnROYW1lczogXCJcIixcbiAgICAgICAgICAgICAgICBzb3VyY2VzVG90YWxDb3VudDogMCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgYWNjZXB0VHJhbnNmZXJUeXBlKFxuICAgICAgICBmdWZEcml2ZVVyaTogc3RyaW5nLFxuICAgICAgICB0cmFuc2ZlclR5cGU6IHN0cmluZyxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8U2VydmVyRXJyb3JSZXNwb25zZSB8IHVuZGVmaW5lZD4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgICAgICAucG9zdChgdjEvbnMvJHt0aGlzLmRyYWZ0RnVsbElkLm5zfS9kcmFmdHMvJHt0aGlzLmRyYWZ0RnVsbElkLmRyYWZ0SWR9L3RyYW5zZmVyL2NvbWJpbmVgKVxuICAgICAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoeyBmdWZEcml2ZVVyaTogZnVmRHJpdmVVcmksIHR5cGVJZDogdHJhbnNmZXJUeXBlIH0pXG4gICAgICAgICAgICAgICAgLndpdGhBYm9ydFNpZ25hbChhYm9ydFNpZ25hbClcbiAgICAgICAgICAgICAgICAuYWNjZXB0Q29kZSg0MDApXG4gICAgICAgICAgICAgICAgLmFjY2VwdENvZGUoNDEzKTtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uPHsgZXJyb3JDb2RlOiBTZXJ2ZXJFcnJvcnM7IG1lc3NhZ2U6IHN0cmluZyB9PigpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHNlcnZlckVycm9yOiBkYXRhLmVycm9yQ29kZSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmV0dXJuIHsgc2VydmVyRXJyb3I6IFNlcnZlckVycm9ycy5Vbmtub3duRXJyb3IgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBhY2NlcHRNdWx0aXBsZVRyYW5zZmVyVHlwZShcbiAgICAgICAgZmlsZXM6IElDb21iaW5lQnlUcmFuc2ZlcnNbXSxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8U2VydmVyRXJyb3JSZXNwb25zZSB8IHVuZGVmaW5lZD4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgICAgICAucG9zdChgdjEvbnMvJHt0aGlzLmRyYWZ0RnVsbElkLm5zfS9kcmFmdHMvJHt0aGlzLmRyYWZ0RnVsbElkLmRyYWZ0SWR9L3RyYW5zZmVyL2NvbWJpbmUtbXVsdGlwbGVgKVxuICAgICAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoZmlsZXMpXG4gICAgICAgICAgICAgICAgLndpdGhBYm9ydFNpZ25hbChhYm9ydFNpZ25hbClcbiAgICAgICAgICAgICAgICAuYWNjZXB0Q29kZSg0MDApXG4gICAgICAgICAgICAgICAgLmFjY2VwdENvZGUoNDEzKTtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uPHsgZXJyb3JDb2RlOiBTZXJ2ZXJFcnJvcnM7IG1lc3NhZ2U6IHN0cmluZyB9PigpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHNlcnZlckVycm9yOiBkYXRhLmVycm9yQ29kZSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmV0dXJuIHsgc2VydmVyRXJyb3I6IFNlcnZlckVycm9ycy5Vbmtub3duRXJyb3IgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXRGdWZCeURyaXZlVXJpKGRyaXZlVXJpOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5odHRwQ2xpZW50LnB1dCh0aGlzLmdldERyYWZ0VXJsKFwic2V0LWZ1ZlwiKSkud2l0aFF1ZXJ5UGFyYW1zKHsgZHJpdmVVcmk6IGRyaXZlVXJpIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjb21iaW5lRnVmQnlEcml2ZVVyaShcbiAgICAgICAgZHJpdmVVcmk6IHN0cmluZyxcbiAgICAgICAgY29tYmluZU1ldGhvZDogRnVmQ29tYmluZU1ldGhvZCxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8Q29tYmluZUZ1ZlJlc3VsdCB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcInRyYW5zZmVyL2NvbWJpbmUtd2l0aC1mdWZcIikpXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHsgZnVmRHJpdmVVcmk6IGRyaXZlVXJpLCBjb21iaW5lTWV0aG9kOiBjb21iaW5lTWV0aG9kIH0pXG4gICAgICAgICAgICAud2l0aEFib3J0U2lnbmFsKGFib3J0U2lnbmFsKTtcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhd2FpdCByZXNwb25zZS5qc29uPENvbWJpbmVGdWZSZXN1bHQ+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGV4Y2Vsc1RvUGFydGlhbEZ1ZnMoXG4gICAgICAgIGdmdjogc3RyaW5nLFxuICAgICAgICBwYXRoVG9UYWJsZTogc3RyaW5nLFxuICAgICAgICBkcml2ZVVyaXM6IHN0cmluZ1tdXG4gICAgKTogUHJvbWlzZTxFeGNlbHNUb1BhcnRpYWxGdWZzUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAgICAgLnBvc3QoXCJ2MS9maWxlcy9leGNlbHMtdG8tcGFydGlhbC1mdWZzXCIpXG4gICAgICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyh7IGdmdjogZ2Z2LCBwYXRoVG9UYWJsZTogcGF0aFRvVGFibGUgfSlcbiAgICAgICAgICAgICAgICAud2l0aEpzb25Cb2R5KGRyaXZlVXJpcyk7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXdhaXQgcmVzcG9uc2UuanNvbjxFeGNlbHNUb1BhcnRpYWxGdWZzUmVzcG9uc2U+KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGltcG9ydEZyb21QYXJ0aWFsRnVmc0J5UGF0aChcbiAgICAgICAgcGF0aFRvVGFibGU6IHN0cmluZyxcbiAgICAgICAgZHJpdmVVcmk6IHN0cmluZ1tdLFxuICAgICAgICBjb21iaW5lTWV0aG9kOiBzdHJpbmcsXG4gICAgICAgIGNvbWJpbmF0b3JUeXBlOiBDb21iaW5hdG9yVHlwZVxuICAgICk6IFByb21pc2U8SW1wb3J0RnJvbVBhcnRpYWxGdWZzQnlQYXRoUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcInRyYW5zZmVyL2ltcG9ydC1mcm9tLXBhcnRpYWwtZnVmcy1ieS1wYXRoXCIpKVxuICAgICAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoe1xuICAgICAgICAgICAgICAgICAgICBwYXRoVG9UYWJsZTogcGF0aFRvVGFibGUsXG4gICAgICAgICAgICAgICAgICAgIGNvbWJpbmVNZXRob2Q6IGNvbWJpbmVNZXRob2QsXG4gICAgICAgICAgICAgICAgICAgIGNvbWJpbmF0b3JUeXBlOiBjb21iaW5hdG9yVHlwZSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoZHJpdmVVcmkpO1xuICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlLmpzb248SW1wb3J0RnJvbVBhcnRpYWxGdWZzQnlQYXRoUmVzcG9uc2U+KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIG11bHRpcGxlQ29tYmluZUZ1ZkJ5RHJpdmVVcmkoXG4gICAgICAgIGRyaXZlVXJpczogc3RyaW5nW10sXG4gICAgICAgIGNvbWJpbmVNZXRob2Q6IEZ1ZkNvbWJpbmVNZXRob2QsXG4gICAgICAgIGFyZ3M/OiBzdHJpbmdbXVxuICAgICk6IFByb21pc2U8Q29tYmluZUZ1ZlJlc3VsdCB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcInRyYW5zZmVyL2NvbWJpbmUtd2l0aC1mdWZzXCIpKVxuICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyh7IGNvbWJpbmVNZXRob2Q6IGNvbWJpbmVNZXRob2QgfSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoeyBkcml2ZVVyaXM6IGRyaXZlVXJpcywgYXJndW1lbnRzOiBhcmdzIH0pXG4gICAgICAgICAgICAuYWNjZXB0Q29kZSg0MDApXG4gICAgICAgICAgICAuYWNjZXB0Q29kZSg1MDApO1xuICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSA0MDAgfHwgcmVzcG9uc2Uuc3RhdHVzID09PSA1MDApIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlLmpzb248Q29tYmluZUZ1ZlJlc3VsdD4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgaW1wb3J0WG1scyhcbiAgICAgICAgZHJpdmVVcmlzOiBzdHJpbmdbXSxcbiAgICAgICAgY29tYmluZU1ldGhvZDogRnVmQ29tYmluZU1ldGhvZCxcbiAgICAgICAgY29tYmluYXRvclR5cGU6IENvbWJpbmF0b3JUeXBlLFxuICAgICAgICBpc0ltcG9ydEJ5RnVmOiBib29sZWFuLFxuICAgICAgICBhcmdzPzogc3RyaW5nW11cbiAgICApOiBQcm9taXNlPENvbWJpbmVGdWZSZXN1bHQgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJ0cmFuc2Zlci9pbXBvcnQteG1sc1wiKSlcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoe1xuICAgICAgICAgICAgICAgIGNvbWJpbmVNZXRob2Q6IGNvbWJpbmVNZXRob2QsXG4gICAgICAgICAgICAgICAgY29tYmluYXRvclR5cGU6IGNvbWJpbmF0b3JUeXBlLFxuICAgICAgICAgICAgICAgIGltcG9ydEJ5RnVmOiBpc0ltcG9ydEJ5RnVmLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkoeyBGdWZEcml2ZVVyaXM6IGRyaXZlVXJpcywgYXJndW1lbnRzOiBhcmdzIH0pO1xuICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSA0MDApIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlLmpzb248Q29tYmluZUZ1ZlJlc3VsdD4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2V0RHJhZnRTZXR0aW5ncyhzZXR0aW5nczogRHJhZnRTZXR0aW5ncyk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLmh0dHBDbGllbnQucGF0Y2godGhpcy5nZXREcmFmdFVybChcImV4dGVybmFsL3NldC1zZXR0aW5nc1wiKSkud2l0aEpzb25Cb2R5KHNldHRpbmdzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0RHJhZnRTZXR0aW5ncygpOiBQcm9taXNlPERyYWZ0U2V0dGluZ3M+IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZ2V0RHJhZnRVcmwoXCJleHRlcm5hbC9nZXQtc2V0dGluZ3NcIikpO1xuXG4gICAgICAgIHJldHVybiByZXNwb25zZS5qc29uPERyYWZ0U2V0dGluZ3M+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIG5vcm1hbGl6ZUJ5UnVsZXMocnVsZXM6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLmh0dHBDbGllbnQucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwidGVzdC1ub3JtYWxpemVcIikpLndpdGhKc29uQm9keShydWxlcyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRIcmVmRG93bmxvYWREcmFmdFByZXNlbnRhdGlvbihwcmVzZW50YXRpb25UeXBlOiBEcmFmdFByZXNlbnRhdGlvblR5cGUpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnVybCh0aGlzLmdldERyYWZ0UHJlc2VudGF0aW9uVXJsKHByZXNlbnRhdGlvblR5cGUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERyYWZ0VXJsKGRyYWZ0UmVsYXRlZFVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGB2MS9ucy8ke3RoaXMuZHJhZnRGdWxsSWQubnN9L2RyYWZ0cy8ke3RoaXMuZHJhZnRGdWxsSWQuZHJhZnRJZH0vJHtkcmFmdFJlbGF0ZWRVcmx9YDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERyYWZ0UHJlc2VudGF0aW9uVXJsKHByZXNlbnRhdGlvblR5cGU6IERyYWZ0UHJlc2VudGF0aW9uVHlwZSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldERyYWZ0VXJsKGBwcmVzZW50YXRpb25zLyR7cHJlc2VudGF0aW9uVHlwZS50b1N0cmluZygpfWApO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXRNdWx0aXBsZVdpdGhOb3JtYWxpemF0aW9uKHJ1bGVzOiBWYWx1ZUZvckluc3RhbmNlc1NldHRpbmdSdWxlW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgdXJpID0gdGhpcy5nZXREcmFmdFVybChcImlubmVyL3NldC1tdWx0aXBsZS13aXRoLW5vcm1hbGl6YXRpb25cIik7XG4gICAgICAgIGNvbnN0IGZpbmFsUnVsZXMgPSBydWxlcy5tYXAoeCA9PiAoeyAuLi54LCBwYXRoOiBjb252ZXJ0VG9MZWdhY3lQYXRoKHgucGF0aCkgfSkpO1xuICAgICAgICBhd2FpdCB0aGlzLmh0dHBDbGllbnQucGF0Y2godXJpKS53aXRoSnNvbkJvZHkoZmluYWxSdWxlcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIG5vcm1hbGl6ZURpcnR5TWFza3MoKTogUHJvbWlzZTxJSW5uZXJDaGFuZ2VSZXN1bHQ+IHtcbiAgICAgICAgY29uc3QgdXJpID0gdGhpcy5nZXREcmFmdFVybChcImlubmVyL25vcm1hbGl6ZS1kaXJ0eS1tYXNrc1wiKTtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50LnBvc3QodXJpKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5zdGF0dXMgPT0gMjAwID8gYXdhaXQgcmVzdWx0Lmpzb248SUlubmVyQ2hhbmdlU3VjY2Vzc1Jlc3VsdD4oKSA6IHJlc3VsdC5zdGF0dXM7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlYXJjaEluc3RhbmNlc0J5VGV4dChcbiAgICAgICAgdGV4dDogc3RyaW5nLFxuICAgICAgICBwYXRoc1ByZWZpeDogc3RyaW5nLFxuICAgICAgICBwYXRoc1RvU2VhcmNoOiBzdHJpbmdbXSxcbiAgICAgICAgbWF4SW5zdGFuY2VDb3VudD86IG51bWJlclxuICAgICk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgY29uc3QgbWF4SW5zdGFuY2VDb3VudFBhcmFtcyA9IG1heEluc3RhbmNlQ291bnQgIT0gdW5kZWZpbmVkID8geyBtYXhJbnN0YW5jZUNvdW50OiBtYXhJbnN0YW5jZUNvdW50IH0gOiB7fTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0geyBzZWFyY2hTdHJpbmc6IHRleHQsIHBhdGhzUHJlZml4OiBwYXRoc1ByZWZpeCwgLi4ubWF4SW5zdGFuY2VDb3VudFBhcmFtcyB9O1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiaW5uZXIvc2VhcmNoLWJ5LXN0cmluZ1wiKSlcbiAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMocGFyYW1zKVxuICAgICAgICAgICAgLndpdGhKc29uQm9keShwYXRoc1RvU2VhcmNoKVxuICAgICAgICAgICAgLmpzb248c3RyaW5nW10+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHF1ZXJ5Q29sbGVjdGlvbihyZXF1ZXN0OiBJbm5lclF1ZXJ5UmVxdWVzdCwgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8SW5uZXJRdWVyeVJlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJpbm5lci9xdWVyeS1jb2xsZWN0aW9uXCIpKVxuICAgICAgICAgICAgLndpdGhKc29uQm9keShyZXF1ZXN0KVxuICAgICAgICAgICAgLndpdGhBYm9ydFNpZ25hbChhYm9ydFNpZ25hbClcbiAgICAgICAgICAgIC5qc29uPElubmVyUXVlcnlSZXNwb25zZT4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcmVzb2x2ZUlubmVyUGF0aChcbiAgICAgICAgcmVxdWVzdDogUmVzb2x2ZUlubmVyUGF0aFJlcXVlc3QsXG4gICAgICAgIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWxcbiAgICApOiBQcm9taXNlPFJlc29sdmVQYXRoUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChcImlubmVyL3Jlc29sdmUtaW5uZXItcGF0aFwiKSlcbiAgICAgICAgICAgIC53aXRoSnNvbkJvZHkocmVxdWVzdClcbiAgICAgICAgICAgIC53aXRoQWJvcnRTaWduYWwoYWJvcnRTaWduYWwpXG4gICAgICAgICAgICAuanNvbjxSZXNvbHZlUGF0aFJlc3BvbnNlPigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjdXN0b21Ob3JtYWxpemUoXG4gICAgICAgIG5vcm1hbGl6ZXJJZDogc3RyaW5nIHwgbnVsbCxcbiAgICAgICAgcGF0aFByZWZpeGVzOiBBYnNvbHV0ZU1vZGVsUGF0aFtdLFxuICAgICAgICBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsXG4gICAgKTogUHJvbWlzZTxJSW5uZXJDaGFuZ2VSZXN1bHQ+IHtcbiAgICAgICAgY29uc3QgcGFyYW1zID0geyBub3JtYWxpemVySWQ6IG5vcm1hbGl6ZXJJZCB9O1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJpbm5lci9jdXN0b20tbm9ybWFsaXplXCIpKVxuICAgICAgICAgICAgLndpdGhRdWVyeVBhcmFtcyhwYXJhbXMpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KHBhdGhQcmVmaXhlcy5tYXAoeCA9PiB4LnRvU3RyaW5nKCkpKVxuICAgICAgICAgICAgLndpdGhBYm9ydFNpZ25hbChhYm9ydFNpZ25hbCk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdC5zdGF0dXMgPT0gMjAwID8gYXdhaXQgcmVzdWx0Lmpzb248SUlubmVyQ2hhbmdlU3VjY2Vzc1Jlc3VsdD4oKSA6IHJlc3VsdC5zdGF0dXM7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGltcG9ydEVtcGxveWVlcyhyZXF1ZXN0OiBJbXBvcnRFbXBsb3llZXNSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaHR0cENsaWVudC5wYXRjaCh0aGlzLmdldERyYWZ0VXJsKFwic3RhZmZcIikpLndpdGhKc29uQm9keShyZXF1ZXN0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZGVsZXRlSW5zdGFuY2VzKGRlbGV0aW5nUnVsZXM6IEluc3RhbmNlc0RlbGV0aW5nUnVsZVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMuZ2V0RHJhZnRVcmwoXCJpbm5lci9kZWxldGUtaW5zdGFuY2VzXCIpKS53aXRoSnNvbkJvZHkoZGVsZXRpbmdSdWxlcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHJ1bk1hc3NBY3Rpb24oYWN0aW9uSWQ6IHN0cmluZywgcGFyYW1ldGVycz86IE1hc3NBY3Rpb25QYXJhbWV0ZXJzKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0geyBhY3Rpb25JZDogYWN0aW9uSWQgfTtcbiAgICAgICAgYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldERyYWZ0VXJsKFwiaW5uZXIvbWFzcy1hY3Rpb25cIikpXG4gICAgICAgICAgICAud2l0aFF1ZXJ5UGFyYW1zKHF1ZXJ5UGFyYW1zKVxuICAgICAgICAgICAgLndpdGhKc29uQm9keShwYXJhbWV0ZXJzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHJpbnQodHlwZTogUHJpbnRUeXBlLCBib2R5Pzogc3RyaW5nW10pOiBQcm9taXNlPFByaW50UmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChgcHJlc2VudGF0aW9ucy9pbm5lci9wcmludC8ke3R5cGV9YCkpXG4gICAgICAgICAgICAud2l0aEpzb25Cb2R5KGJvZHkpXG4gICAgICAgICAgICAuanNvbjxQcmludFJlc3BvbnNlPigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBwcmludEV4Y2VsKHBhdGhUb1RhYmxlOiBzdHJpbmcpOiBQcm9taXNlPFByaW50UmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgICAgICAgICAgLnBvc3QodGhpcy5nZXREcmFmdFVybChgcHJlc2VudGF0aW9ucy90YWJsZS9wcmludGApKVxuICAgICAgICAgICAgICAgIC53aXRoUXVlcnlQYXJhbXMoeyBwYXRoVG9UYWJsZTogcGF0aFRvVGFibGUgfSk7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YWJsZUV4Y2VsID0gcmVzcG9uc2UuanNvbjxQcmludFJlc3BvbnNlPigpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0YWJsZUV4Y2VsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjaGVja0J5UG9wZCgpOiBQcm9taXNlPENhbmR5UG9wZFByb3RvY29sPiB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5odHRwQ2xpZW50LmdldChcbiAgICAgICAgICAgIGB2MS9ucy8ke3RoaXMuZHJhZnRGdWxsSWQubnN9L2RyYWZ0cy8ke3RoaXMuZHJhZnRGdWxsSWQuZHJhZnRJZH0vY2hlY2tCeVBvcGRgXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmpzb248Q2FuZHlQb3BkUHJvdG9jb2w+KCk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxZQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxtQkFBQSxHQUFBRixPQUFBO0FBRUEsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBMkJBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUVBLElBQUFLLHNCQUFBLEdBQUFMLE9BQUE7QUFPQSxJQUFBTSxTQUFBLEdBQUFOLE9BQUE7QUFHQSxJQUFBTyxxQkFBQSxHQUFBUCxPQUFBO0FBY0EsTUFBTVEsY0FBYyxHQUFHO0VBQUVDLEdBQUcsRUFBRSxXQUFXO0VBQUVDLFdBQVcsRUFBRTtBQUFJLENBQUM7QUFFdEQsTUFBTUMsa0JBQWtCLEdBQUFDLE9BQUEsQ0FBQUQsa0JBQUEsR0FBRztFQUM5QkUsU0FBUyxFQUFFO0FB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
|
|
578
|
+
//# sourceMappingURL=CandyApiClient.js.map
|
|
@@ -15,4 +15,4 @@ function useCandyApiClient() {
|
|
|
15
15
|
var _React$useContext;
|
|
16
16
|
return (_React$useContext = React.useContext(CandyApiClientContext)) !== null && _React$useContext !== void 0 ? _React$useContext : (0, _TypingUtils.reject)("ICandyApiClient must be provided with CandyApiClientProvider");
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=CandyApiClientContext.js.map
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=
|
|
6
|
+
//# sourceMappingURL=ClientDraftInfoResponse.js.map
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=
|
|
6
|
+
//# sourceMappingURL=FnsFormInfo.js.map
|
|
@@ -9,4 +9,4 @@ function getClientDraftInfoUrl(draftId) {
|
|
|
9
9
|
// не должно происходить утежеления client.js-а
|
|
10
10
|
return `v1/ns/${draftId.ns}/drafts/${draftId.draftId}/client-draft-info`;
|
|
11
11
|
}
|
|
12
|
-
//# sourceMappingURL=
|
|
12
|
+
//# sourceMappingURL=GetClientDraftInfoUrl.js.map
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=
|
|
6
|
+
//# sourceMappingURL=PrintInfo.js.map
|
|
@@ -30,4 +30,4 @@ class DigestApiClientWithCache {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
exports.DigestApiClientWithCache = DigestApiClientWithCache;
|
|
33
|
-
//# sourceMappingURL=
|
|
33
|
+
//# sourceMappingURL=DigestApiClientWithCache.js.map
|
|
@@ -32,4 +32,4 @@ class DigestApiClientWithDebouncedBatching {
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
exports.DigestApiClientWithDebouncedBatching = DigestApiClientWithDebouncedBatching;
|
|
35
|
-
//# sourceMappingURL=
|
|
35
|
+
//# sourceMappingURL=DigestApiClientWithDebouncedBatching.js.map
|
|
@@ -17,4 +17,4 @@ class DigestApiClient {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
exports.DigestApiClient = DigestApiClient;
|
|
20
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=DigestApiClient.js.map
|
|
@@ -86,4 +86,4 @@ const taxRebate1152026 = exports.taxRebate1152026 = [{
|
|
|
86
86
|
code: "2014000",
|
|
87
87
|
name: "налоговые льготы (освобождение от налогообложения) по налогу, предусмотренные международными договорами Российской Федерации"
|
|
88
88
|
}];
|
|
89
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ0YXhSZWJhdGUxMTUyMDI2IiwiZXhwb3J0cyIsImNvZGUiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQ29tbW9uL0NhbmR5QXBpQ2xpZW50L0RpZ2VzdEFwaUNsaWVudC9GYWtlcy9EYXRhL1RheFJlYmF0ZTExNTIwMjYudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlja2xpc3REYXRhSXRlbSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9FbmdpbmUvc3JjL0VuZ2luZS9Db3JlL1BpY2tsaXN0cy9QaWNrbGlzdFR5cGVzXCI7XG5cbmV4cG9ydCBjb25zdCB0YXhSZWJhdGUxMTUyMDI2OiBQaWNrbGlzdERhdGFJdGVtW10gPSBbXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAyMjFcIixcbiAgICAgICAgbmFtZTogXCLQvtGA0LPQsNC90LjQt9Cw0YbQuNC4INC4INGD0YfRgNC10LbQtNC10L3QuNGPINGD0LPQvtC70L7QstC90L4t0LjRgdC/0L7Qu9C90LjRgtC10LvRjNC90L7QuSDRgdC40YHRgtC10LzRiyAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINC40YHQv9C+0LvRjNC30YPQtdC80L7Qs9C+INC00LvRjyDQvtGB0YPRidC10YHRgtCy0LvQtdC90LjRjyDQstC+0LfQu9C+0LbQtdC90L3Ri9GFINC90LAg0L3QuNGFINGE0YPQvdC60YbQuNC5XCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMDIyMlwiLFxuICAgICAgICBuYW1lOiBcItGA0LXQu9C40LPQuNC+0LfQvdGL0LUg0L7RgNCz0LDQvdC40LfQsNGG0LjQuCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINC40YHQv9C+0LvRjNC30YPQtdC80L7Qs9C+INC40LzQuCDQtNC70Y8g0L7RgdGD0YnQtdGB0YLQstC70LXQvdC40Y8g0YDQtdC70LjQs9C40L7Qt9C90L7QuSDQtNC10Y/RgtC10LvRjNC90L7RgdGC0LhcIixcbiAgICB9LFxuICAgIHtcbiAgICAgICAgY29kZTogXCIyMDEwMjIzXCIsXG4gICAgICAgIG5hbWU6IFwi0L7QsdGJ0LXRgNC+0YHRgdC40LnRgdC60LjQtSDQvtCx0YnQtdGB0YLQstC10L3QvdGL0LUg0L7RgNCz0LDQvdC40LfQsNGG0LjQuCDQuNC90LLQsNC70LjQtNC+0LIgKNCyINGC0L7QvCDRh9C40YHQu9C1INGB0L7Qt9C00LDQvdC90YvQtSDQutCw0Log0YHQvtGO0LfRiyDQvtCx0YnQtdGB0YLQstC10L3QvdGL0YUg0L7RgNCz0LDQvdC40LfQsNGG0LjQuSDQuNC90LLQsNC70LjQtNC+0LIpLCDRgdGA0LXQtNC4INGH0LvQtdC90L7QsiDQutC+0YLQvtGA0YvRhSDQuNC90LLQsNC70LjQtNGLINC4INC40YUg0LfQsNC60L7QvdC90YvQtSDQv9GA0LXQtNGB0YLQsNCy0LjRgtC10LvQuCDRgdC+0YHRgtCw0LLQu9GP0Y7RgiDQvdC1INC80LXQvdC10LUgODAg0L/RgNC+0YbQtdC90YLQvtCyLCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINC40YHQv9C+0LvRjNC30YPQtdC80L7Qs9C+INC40LzQuCDQtNC70Y8g0L7RgdGD0YnQtdGB0YLQstC70LXQvdC40Y8g0LjRhSDRg9GB0YLQsNCy0L3QvtC5INC00LXRj9GC0LXQu9GM0L3QvtGB0YLQuFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAyMjRcIixcbiAgICAgICAgbmFtZTogXCLQvtGA0LPQsNC90LjQt9Cw0YbQuNC4LCDRg9GB0YLQsNCy0L3Ri9C5INC60LDQv9C40YLQsNC7INC60L7RgtC+0YDRi9GFINC/0L7Qu9C90L7RgdGC0YzRjiDRgdC+0YHRgtC+0LjRgiDQuNC3INCy0LrQu9Cw0LTQvtCyINGD0LrQsNC30LDQvdC90YvRhSDQvtCx0YnQtdGA0L7RgdGB0LjQudGB0LrQuNGFINC+0LHRidC10YHRgtCy0LXQvdC90YvRhSDQvtGA0LPQsNC90LjQt9Cw0YbQuNC5INC40L3QstCw0LvQuNC00L7Qsiwg0LXRgdC70Lgg0YHRgNC10LTQvdC10YHQv9C40YHQvtGH0L3QsNGPINGH0LjRgdC70LXQvdC90L7RgdGC0Ywg0LjQvdCy0LDQu9C40LTQvtCyINGB0YDQtdC00Lgg0LjRhSDRgNCw0LHQvtGC0L3QuNC60L7QsiDRgdC+0YHRgtCw0LLQu9GP0LXRgiDQvdC1INC80LXQvdC10LUgNTAg0L/RgNC+0YbQtdC90YLQvtCyLCDQsCDQuNGFINC00L7Qu9GPINCyINGE0L7QvdC00LUg0L7Qv9C70LDRgtGLINGC0YDRg9C00LAgLSDQvdC1INC80LXQvdC10LUgMjUg0L/RgNC+0YbQtdC90YLQvtCyLCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINC40YHQv9C+0LvRjNC30YPQtdC80L7Qs9C+INC40LzQuCDQtNC70Y8g0L/RgNC+0LjQt9Cy0L7QtNGB0YLQstCwINC4ICjQuNC70LgpINGA0LXQsNC70LjQt9Cw0YbQuNC4INGC0L7QstCw0YDQvtCyICjQt9CwINC40YHQutC70Y7Rh9C10L3QuNC10Lwg0L/QvtC00LDQutGG0LjQt9C90YvRhSDRgtC+0LLQsNGA0L7Qsiwg0LzQuNC90LXRgNCw0LvRjNC90L7Qs9C+INGB0YvRgNGM0Y8g0Lgg0LjQvdGL0YUg0L/QvtC70LXQt9C90YvRhSDQuNGB0LrQvtC/0LDQtdC80YvRhSwg0LAg0YLQsNC60LbQtSDQuNC90YvRhSDRgtC+0LLQsNGA0L7QsiDQv9C+INC/0LXRgNC10YfQvdGOLCDRg9GC0LLQtdGA0LbQtNCw0LXQvNC+0LzRgyDQn9GA0LDQstC40YLQtdC70YzRgdGC0LLQvtC8INCg0L7RgdGB0LjQudGB0LrQvtC5INCk0LXQtNC10YDQsNGG0LjQuCDQv9C+INGB0L7Qs9C70LDRgdC+0LLQsNC90LjRjiDRgSDQvtCx0YnQtdGA0L7RgdGB0LjQudGB0LrQuNC80Lgg0L7QsdGJ0LXRgdGC0LLQtdC90L3Ri9C80Lgg0L7RgNCz0LDQvdC40LfQsNGG0LjRj9C80Lgg0LjQvdCy0LDQu9C40LTQvtCyKSwg0YDQsNCx0L7RgiDQuCDRg9GB0LvRg9CzICjQt9CwINC40YHQutC70Y7Rh9C10L3QuNC10Lwg0LHRgNC+0LrQtdGA0YHQutC40YUg0Lgg0LjQvdGL0YUg0L/QvtGB0YDQtdC00L3QuNGH0LXRgdC60LjRhSDRg9GB0LvRg9CzKVwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAyMjVcIixcbiAgICAgICAgbmFtZTogXCLRg9GH0YDQtdC20LTQtdC90LjRjywg0LXQtNC40L3RgdGC0LLQtdC90L3Ri9C80Lgg0YHQvtCx0YHRgtCy0LXQvdC90LjQutCw0LzQuCDQuNC80YPRidC10YHRgtCy0LAg0LrQvtGC0L7RgNGL0YUg0Y/QstC70Y/RjtGC0YHRjyDQvtCx0YnQtdGA0L7RgdGB0LjQudGB0LrQuNC1INC+0LHRidC10YHRgtCy0LXQvdC90YvQtSDQvtGA0LPQsNC90LjQt9Cw0YbQuNC4INC40L3QstCw0LvQuNC00L7QsiAo0LIg0YLQvtC8INGH0LjRgdC70LUg0YHQvtC30LTQsNC90L3Ri9C1INC60LDQuiDRgdC+0Y7Qt9GLINC+0LHRidC10YHRgtCy0LXQvdC90YvRhSDQvtGA0LPQsNC90LjQt9Cw0YbQuNC5INC40L3QstCw0LvQuNC00L7QsikgKNGB0YDQtdC00Lgg0YfQu9C10L3QvtCyINC60L7RgtC+0YDRi9GFINC40L3QstCw0LvQuNC00Ysg0Lgg0LjRhSDQt9Cw0LrQvtC90L3Ri9C1INC/0YDQtdC00YHRgtCw0LLQuNGC0LXQu9C4INGB0L7RgdGC0LDQstC70Y/RjtGCINC90LUg0LzQtdC90LXQtSA4MCDQv9GA0L7RhtC10L3RgtC+0LIpLCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINC40YHQv9C+0LvRjNC30YPQtdC80L7Qs9C+INC40LzQuCDQtNC70Y8g0LTQvtGB0YLQuNC20LXQvdC40Y8g0L7QsdGA0LDQt9C+0LLQsNGC0LXQu9GM0L3Ri9GFLCDQutGD0LvRjNGC0YPRgNC90YvRhSwg0LvQtdGH0LXQsdC90L4t0L7Qt9C00L7RgNC+0LLQuNGC0LXQu9GM0L3Ri9GFLCDRhNC40LfQutGD0LvRjNGC0YPRgNC90L4t0YHQv9C+0YDRgtC40LLQvdGL0YUsINC90LDRg9GH0L3Ri9GFLCDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3Ri9GFINC4INC40L3Ri9GFINGG0LXQu9C10Lkg0YHQvtGG0LjQsNC70YzQvdC+0Lkg0LfQsNGJ0LjRgtGLINC4INGA0LXQsNCx0LjQu9C40YLQsNGG0LjQuCDQuNC90LLQsNC70LjQtNC+0LIsINCwINGC0LDQutC20LUg0LTQu9GPINC+0LrQsNC30LDQvdC40Y8g0L/RgNCw0LLQvtCy0L7QuSDQuCDQuNC90L7QuSDQv9C+0LzQvtGJ0Lgg0LjQvdCy0LDQu9C40LTQsNC8LCDQtNC10YLRj9C8LdC40L3QstCw0LvQuNC00LDQvCDQuCDQuNGFINGA0L7QtNC40YLQtdC70Y/QvFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAyMjZcIixcbiAgICAgICAgbmFtZTogXCLQvtGA0LPQsNC90LjQt9Cw0YbQuNC4LCDQvtGB0L3QvtCy0L3Ri9C8INCy0LjQtNC+0Lwg0LTQtdGP0YLQtdC70YzQvdC+0YHRgtC4INC60L7RgtC+0YDRi9GFINGP0LLQu9GP0LXRgtGB0Y8g0L/RgNC+0LjQt9Cy0L7QtNGB0YLQstC+INGE0LDRgNC80LDRhtC10LLRgtC40YfQtdGB0LrQvtC5INC/0YDQvtC00YPQutGG0LjQuCwgLSDQsiDQvtGC0L3QvtGI0LXQvdC40Lgg0LjQvNGD0YnQtdGB0YLQstCwLCDQuNGB0L/QvtC70YzQt9GD0LXQvNC+0LPQviDQuNC80Lgg0LTQu9GPINC/0YDQvtC40LfQstC+0LTRgdGC0LLQsCDQstC10YLQtdGA0LjQvdCw0YDQvdGL0YUg0LjQvNC80YPQvdC+0LHQuNC+0LvQvtCz0LjRh9C10YHQutC40YUg0L/RgNC10L/QsNGA0LDRgtC+0LIsINC/0YDQtdC00L3QsNC30L3QsNGH0LXQvdC90YvRhSDQtNC70Y8g0LHQvtGA0YzQsdGLINGBINGN0L/QuNC00LXQvNC40Y/QvNC4INC4INGN0L/QuNC30L7QvtGC0LjRj9C80LhcIixcbiAgICB9LFxuICAgIHtcbiAgICAgICAgY29kZTogXCIyMDEwMjM2XCIsXG4gICAgICAgIG5hbWU6IFwi0L7RgNCz0LDQvdC40LfQsNGG0LjQuCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDRhNC10LTQtdGA0LDQu9GM0L3Ri9GFINCw0LLRgtC+0LzQvtCx0LjQu9GM0L3Ri9GFINC00L7RgNC+0LMg0L7QsdGJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0Lgg0YHQvtC+0YDRg9C20LXQvdC40LksINGP0LLQu9GP0Y7RidC40YXRgdGPINC90LXQvtGC0YrQtdC80LvQtdC80L7QuSDRgtC10YXQvdC+0LvQvtCz0LjRh9C10YHQutC+0Lkg0YfQsNGB0YLRjNGOINGD0LrQsNC30LDQvdC90YvRhSDQvtCx0YrQtdC60YLQvtCyXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMDI1M1wiLFxuICAgICAgICBuYW1lOiBcItC+0YDQs9Cw0L3QuNC30LDRhtC40LgsINC30LAg0LjRgdC60LvRjtGH0LXQvdC40LXQvCDRgdGD0LTQvtGB0YLRgNC+0LjRgtC10LvRjNC90YvRhSDQvtGA0LPQsNC90LjQt9Cw0YbQuNC5LCDQuNC80LXRjtGJ0LjRhSDRgdGC0LDRgtGD0YEg0YDQtdC30LjQtNC10L3RgtCwINC/0YDQvtC80YvRiNC70LXQvdC90L4t0L/RgNC+0LjQt9Cy0L7QtNGB0YLQstC10L3QvdC+0Lkg0L7RgdC+0LHQvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLLCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINGD0YfQuNGC0YvQstCw0LXQvNC+0LPQviDQvdCwINCx0LDQu9Cw0L3RgdC1INC+0YDQs9Cw0L3QuNC30LDRhtC40LggLSDRgNC10LfQuNC00LXQvdGC0LAg0L7RgdC+0LHQvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLLCDRgdC+0LfQtNCw0L3QvdC+0LPQviDQuNC70Lgg0L/RgNC40L7QsdGA0LXRgtC10L3QvdC+0LPQviDQsiDRhtC10LvRj9GFINCy0LXQtNC10L3QuNGPINC00LXRj9GC0LXQu9GM0L3QvtGB0YLQuCDQvdCwINGC0LXRgNGA0LjRgtC+0YDQuNC4INC+0YHQvtCx0L7QuSDRjdC60L7QvdC+0LzQuNGH0LXRgdC60L7QuSDQt9C+0L3Riywg0LjRgdC/0L7Qu9GM0LfRg9C10LzQvtCz0L4g0L3QsCDRgtC10YDRgNC40YLQvtGA0LjQuCDQvtGB0L7QsdC+0Lkg0Y3QutC+0L3QvtC80LjRh9C10YHQutC+0Lkg0LfQvtC90Ysg0LIg0YDQsNC80LrQsNGFINGB0L7Qs9C70LDRiNC10L3QuNGPINC+INGB0L7Qt9C00LDQvdC40Lgg0L7RgdC+0LHQvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLINC4INGA0LDRgdC/0L7Qu9C+0LbQtdC90L3QvtCz0L4g0L3QsCDRgtC10YDRgNC40YLQvtGA0LjQuCDQtNCw0L3QvdC+0Lkg0L7RgdC+0LHQvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLLCDQsiDRgtC10YfQtdC90LjQtSDQtNC10YHRj9GC0Lgg0LvQtdGCINGBINC80LXRgdGP0YbQsCwg0YHQu9C10LTRg9GO0YnQtdCz0L4g0LfQsCDQvNC10YHRj9GG0LXQvCDQv9C+0YHRgtCw0L3QvtCy0LrQuCDQvdCwINGD0YfQtdGCINGD0LrQsNC30LDQvdC90L7Qs9C+INC40LzRg9GJ0LXRgdGC0LLQsFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAyNTVcIixcbiAgICAgICAgbmFtZTogXCLRgdGD0LTQvtGB0YLRgNC+0LjRgtC10LvRjNC90YvQtSDQvtGA0LPQsNC90LjQt9Cw0YbQuNC4LCDQuNC80LXRjtGJ0LjQtSDRgdGC0LDRgtGD0YEg0YDQtdC30LjQtNC10L3RgtCwINC/0YDQvtC80YvRiNC70LXQvdC90L4t0L/RgNC+0LjQt9Cy0L7QtNGB0YLQstC10L3QvdC+0Lkg0L7RgdC+0LHQvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLLCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINGD0YfQuNGC0YvQstCw0LXQvNC+0LPQviDQvdCwINC40YUg0LHQsNC70LDQvdGB0LUg0Lgg0LjRgdC/0L7Qu9GM0LfRg9C10LzQvtCz0L4g0LIg0YbQtdC70Y/RhSDRgdGC0YDQvtC40YLQtdC70YzRgdGC0LLQsCDQuCDRgNC10LzQvtC90YLQsCDRgdGD0LTQvtCyLCDQsiDRgtC10YfQtdC90LjQtSDQtNC10YHRj9GC0Lgg0LvQtdGCINGBINC00LDRgtGLINGA0LXQs9C40YHRgtGA0LDRhtC40Lgg0YLQsNC60LjRhSDQvtGA0LPQsNC90LjQt9Cw0YbQuNC5INCyINC60LDRh9C10YHRgtCy0LUg0YDQtdC30LjQtNC10L3RgtCwINC+0YHQvtCx0L7QuSDRjdC60L7QvdC+0LzQuNGH0LXRgdC60L7QuSDQt9C+0L3Riywg0LAg0YLQsNC60LbQtSDQsiDQvtGC0L3QvtGI0LXQvdC40Lgg0LjQvNGD0YnQtdGB0YLQstCwLCDRgdC+0LfQtNCw0L3QvdC+0LPQviDQuNC70Lgg0L/RgNC40L7QsdGA0LXRgtC10L3QvdC+0LPQviDQsiDRhtC10LvRj9GFINGB0YLRgNC+0LjRgtC10LvRjNGB0YLQstCwINC4INGA0LXQvNC+0L3RgtCwINGB0YPQtNC+0LIsINCyINGC0LXRh9C10L3QuNC1INC00LXRgdGP0YLQuCDQu9C10YIg0YEg0LTQsNGC0Ysg0L/QvtGB0YLQsNC90L7QstC60Lgg0L3QsCDRg9GH0LXRgiDRg9C60LDQt9Cw0L3QvdC+0LPQviDQuNC80YPRidC10YHRgtCy0LAsINC90L4g0L3QtSDQsdC+0LvQtdC1INGH0LXQvCDQsiDRgtC10YfQtdC90LjQtSDRgdGA0L7QutCwINGB0YPRidC10YHRgtCy0L7QstCw0L3QuNGPINC/0YDQvtC80YvRiNC70LXQvdC90L4t0L/RgNC+0LjQt9Cy0L7QtNGB0YLQstC10L3QvdC+0Lkg0L7RgdC+0LHQvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMDI1NlwiLFxuICAgICAgICBuYW1lOiBcItC+0YDQs9Cw0L3QuNC30LDRhtC40LgsINC/0YDQuNC30L3QsNCy0LDQtdC80YvQtSDRg9C/0YDQsNCy0LvRj9GO0YnQuNC80Lgg0LrQvtC80L/QsNC90LjRj9C80Lgg0L7RgdC+0LHRi9GFINGN0LrQvtC90L7QvNC40YfQtdGB0LrQuNGFINC30L7QvSDQuCDRg9GH0LjRgtGL0LLQsNGO0YnQuNC1INC90LAg0LHQsNC70LDQvdGB0LUg0LIg0LrQsNGH0LXRgdGC0LLQtSDQvtCx0YrQtdC60YLQvtCyINC+0YHQvdC+0LLQvdGL0YUg0YHRgNC10LTRgdGC0LIg0L3QtdC00LLQuNC20LjQvNC+0LUg0LjQvNGD0YnQtdGB0YLQstC+LCDRgdC+0LfQtNCw0L3QvdC+0LUg0LIg0YbQtdC70Y/RhSDRgNC10LDQu9C40LfQsNGG0LjQuCDRgdC+0LPQu9Cw0YjQtdC90LjQuSDQviDRgdC+0LfQtNCw0L3QuNC4INC+0YHQvtCx0YvRhSDRjdC60L7QvdC+0LzQuNGH0LXRgdC60LjRhSDQt9C+0L0sINCyINGC0LXRh9C10L3QuNC1INC00LXRgdGP0YLQuCDQu9C10YIg0YEg0LzQtdGB0Y/RhtCwLCDRgdC70LXQtNGD0Y7RidC10LPQviDQt9CwINC80LXRgdGP0YbQtdC8INC/0L7RgdGC0LDQvdC+0LLQutC4INC90LAg0YPRh9C10YIg0YPQutCw0LfQsNC90L3QvtCz0L4g0LjQvNGD0YnQtdGB0YLQstCwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMDI1N1wiLFxuICAgICAgICBuYW1lOiBcItC+0YDQs9Cw0L3QuNC30LDRhtC40Lgg0LIg0L7RgtC90L7RiNC10L3QuNC4INC00LLQuNC20LjQvNC+0LPQviDQuNC80YPRidC10YHRgtCy0LAsINC/0YDQuNC90Y/RgtC+0LPQviDRgSAxINGP0L3QstCw0YDRjyAyMDEzINCz0L7QtNCwINC90LAg0YPRh9C10YIg0LIg0LrQsNGH0LXRgdGC0LLQtSDQvtGB0L3QvtCy0L3Ri9GFINGB0YDQtdC00YHRgtCyLCDQt9CwINC40YHQutC70Y7Rh9C10L3QuNC10Lwg0YHQu9C10LTRg9GO0YnQuNGFINC+0LHRitC10LrRgtC+0LIg0LTQstC40LbQuNC80L7Qs9C+INC40LzRg9GJ0LXRgdGC0LLQsCwg0L/RgNC40L3Rj9GC0YvRhSDQvdCwINGD0YfQtdGCINCyINGA0LXQt9GD0LvRjNGC0LDRgtC1OiDQsCkg0YDQtdC+0YDQs9Cw0L3QuNC30LDRhtC40Lgg0LjQu9C4INC70LjQutCy0LjQtNCw0YbQuNC4INGO0YDQuNC00LjRh9C10YHQutC40YUg0LvQuNGGOyDQsSkg0L/QtdGA0LXQtNCw0YfQuCwg0LLQutC70Y7Rh9Cw0Y8g0L/RgNC40L7QsdGA0LXRgtC10L3QuNC1LCDQuNC80YPRidC10YHRgtCy0LAg0LzQtdC20LTRgyDQu9C40YbQsNC80LgsINC/0YDQuNC30L3QsNCy0LDQtdC80YvQvNC4INCyINGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuCDRgSDQv9C+0LvQvtC20LXQvdC40Y/QvNC4INC/0YPQvdC60YLQsCAyINGB0YLQsNGC0YzQuCAxMDUuMSDQmtC+0LTQtdC60YHQsCDQstC30LDQuNC80L7Qt9Cw0LLQuNGB0LjQvNGL0LzQuC4g0JjRgdC60LvRjtGH0LXQvdC40Y8sINGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C1INCw0LHQt9Cw0YbQsNC80Lgg0LLRgtC+0YDRi9C8INC4INGC0YDQtdGC0YzQuNC8INC90LDRgdGC0L7Rj9GJ0LXQuSDQvdCw0LvQvtCz0L7QstC+0Lkg0LvRjNCz0L7RgtGLLCDQvdC1INC/0YDQuNC80LXQvdGP0Y7RgtGB0Y8g0LIg0L7RgtC90L7RiNC10L3QuNC4INC20LXQu9C10LfQvdC+0LTQvtGA0L7QttC90L7Qs9C+INC/0L7QtNCy0LjQttC90L7Qs9C+INGB0L7RgdGC0LDQstCwLCDQv9GA0L7QuNC30LLQtdC00LXQvdC90L7Qs9C+INC90LDRh9C40L3QsNGPINGBIDEg0Y/QvdCy0LDRgNGPIDIwMTMg0LPQvtC00LBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgICAgY29kZTogXCIyMDEwMjU4XCIsXG4gICAgICAgIG5hbWU6IFwi0L7RgNCz0LDQvdC40LfQsNGG0LjQuCAtINCyINC+0YLQvdC+0YjQtdC90LjQuCDQuNC80YPRidC10YHRgtCy0LAsINGD0YfQuNGC0YvQstCw0LXQvNC+0LPQviDQvdCwINCx0LDQu9Cw0L3RgdC1INC+0YDQs9Cw0L3QuNC30LDRhtC40LggLSDRg9GH0LDRgdGC0L3QuNC60LAg0YHQstC+0LHQvtC00L3QvtC5INGN0LrQvtC90L7QvNC40YfQtdGB0LrQvtC5INC30L7QvdGLLCDRgdC+0LfQtNCw0L3QvdC+0LPQviDQuNC70Lgg0L/RgNC40L7QsdGA0LXRgtC10L3QvdC+0LPQviDQsiDRhtC10LvRj9GFINCy0LXQtNC10L3QuNGPINC00LXRj9GC0LXQu9GM0L3QvtGB0YLQuCDQvdCwINGC0LXRgNGA0LjRgtC+0YDQuNC4INGB0LLQvtCx0L7QtNC90L7QuSDRjdC60L7QvdC+0LzQuNGH0LXRgdC60L7QuSDQt9C+0L3RiyDQuCDRgNCw0YHQv9C+0LvQvtC20LXQvdC90L7Qs9C+INC90LAg0YLQtdGA0YDQuNGC0L7RgNC40Lgg0LTQsNC90L3QvtC5INGB0LLQvtCx0L7QtNC90L7QuSDRjdC60L7QvdC+0LzQuNGH0LXRgdC60L7QuSDQt9C+0L3Riywg0LIg0YLQtdGH0LXQvdC40LUg0LTQtdGB0Y/RgtC4INC70LXRgiDRgSDQvNC10YHRj9GG0LAsINGB0LvQtdC00YPRjtGJ0LXQs9C+INC30LAg0LzQtdGB0Y/RhtC10Lwg0L/RgNC40L3Rj9GC0LjRjyDQvdCwINGD0YfQtdGCINGD0LrQsNC30LDQvdC90L7Qs9C+INC40LzRg9GJ0LXRgdGC0LLQsFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAyOTFcIixcbiAgICAgICAgbmFtZTogXCLQuNC90LLQtdGB0YLQvtGA0Ysg0L/QviDRgdC+0LPQu9Cw0YjQtdC90LjRj9C8INC+INGA0LDQt9C00LXQu9C1INC/0YDQvtC00YPQutGG0LjQuCDQsiDQvtGC0L3QvtGI0LXQvdC40Lgg0LjQvNGD0YnQtdGB0YLQstCwLCDQuNGB0L/QvtC70YzQt9GD0LXQvNC+0LPQviDQuNGB0LrQu9GO0YfQuNGC0LXQu9GM0L3QviDQtNC70Y8g0L7RgdGD0YnQtdGB0YLQstC70LXQvdC40Y8g0LTQtdGP0YLQtdC70YzQvdC+0YHRgtC4LCDQv9GA0LXQtNGD0YHQvNC+0YLRgNC10L3QvdC+0Lkg0YHQvtCz0LvQsNGI0LXQvdC40Y/QvNC4INC+INGA0LDQt9C00LXQu9C1INC/0YDQvtC00YPQutGG0LjQuFwiLFxuICAgIH0sXG4gICAgeyBjb2RlOiBcIjIwMTAzMzFcIiwgbmFtZTogXCLQuNC80YPRidC10YHRgtCy0L4g0YHQv9C10YbQuNCw0LvQuNC30LjRgNC+0LLQsNC90L3Ri9GFINC/0YDQvtGC0LXQt9C90L4t0L7RgNGC0L7Qv9C10LTQuNGH0LXRgdC60LjRhSDQv9GA0LXQtNC/0YDQuNGP0YLQuNC5XCIgfSxcbiAgICB7IGNvZGU6IFwiMjAxMDMzMlwiLCBuYW1lOiBcItC40LzRg9GJ0LXRgdGC0LLQviDQutC+0LvQu9C10LPQuNC5INCw0LTQstC+0LrQsNGC0L7Qsiwg0LDQtNCy0L7QutCw0YLRgdC60LjRhSDQsdGO0YDQviDQuCDRjtGA0LjQtNC40YfQtdGB0LrQuNGFINC60L7QvdGB0YPQu9GM0YLQsNGG0LjQuVwiIH0sXG4gICAgeyBjb2RlOiBcIjIwMTAzMzNcIiwgbmFtZTogXCLQuNC80YPRidC10YHRgtCy0L4g0L7RgNCz0LDQvdC40LfQsNGG0LjQuSwg0LrQvtGC0L7RgNGL0Lwg0L/RgNC40YHQstC+0LXQvSDRgdGC0LDRgtGD0YEg0LPQvtGB0YPQtNCw0YDRgdGC0LLQtdC90L3Ri9GFINC90LDRg9GH0L3Ri9GFINGG0LXQvdGC0YDQvtCyXCIgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMDMzNVwiLFxuICAgICAgICBuYW1lOiAn0L7RgNCz0LDQvdC40LfQsNGG0LjQuCwg0L/RgNC40LfQvdCw0LLQsNC10LzRi9C1INGD0L/RgNCw0LLQu9GP0Y7RidC40LzQuCDQutC+0LzQv9Cw0L3QuNGP0LzQuCDQsiDRgdC+0L7RgtCy0LXRgtGB0YLQstC40Lgg0YEg0KTQtdC00LXRgNCw0LvRjNC90YvQvCDQt9Cw0LrQvtC90L7QvCDQvtGCIDI4LjA5LjIwMTAgTiAyNDQt0KTQlyBcItCe0LEg0LjQvdC90L7QstCw0YbQuNC+0L3QvdC+0Lwg0YbQtdC90YLRgNC1IFwi0KHQutC+0LvQutC+0LLQvlwiICjQodC+0LHRgNCw0L3QuNC1INC30LDQutC+0L3QvtC00LDRgtC10LvRjNGB0YLQstCwINCg0L7RgdGB0LjQudGB0LrQvtC5INCk0LXQtNC10YDQsNGG0LjQuCwgMjAxMCwg4oSWIDQwLCDRgdGCLiA0OTcwOyAyMDE3LCDihJYgMSwg0YHRgi4gOCknLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAzMzZcIixcbiAgICAgICAgbmFtZTogJ9C+0YDQs9Cw0L3QuNC30LDRhtC40LgsINC/0L7Qu9GD0YfQuNCy0YjQuNC1INGB0YLQsNGC0YPRgSDRg9GH0LDRgdGC0L3QuNC60L7QsiDQv9GA0L7QtdC60YLQsCDQv9C+INC+0YHRg9GJ0LXRgdGC0LLQu9C10L3QuNGOINC40YHRgdC70LXQtNC+0LLQsNC90LjQuSwg0YDQsNC30YDQsNCx0L7RgtC+0Log0Lgg0LrQvtC80LzQtdGA0YbQuNCw0LvQuNC30LDRhtC40Lgg0LjRhSDRgNC10LfRg9C70YzRgtCw0YLQvtCyINCyINGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuCDRgSDQpNC10LTQtdGA0LDQu9GM0L3Ri9C8INC30LDQutC+0L3QvtC8INC+0YIgMjguMDkuMjAxMCBOIDI0NC3QpNCXIFwi0J7QsSDQuNC90L3QvtCy0LDRhtC40L7QvdC90L7QvCDRhtC10L3RgtGA0LUgXCLQodC60L7Qu9C60L7QstC+XCInLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAzMzdcIixcbiAgICAgICAgbmFtZTogXCLQvtGA0LPQsNC90LjQt9Cw0YbQuNC4IC0g0LIg0L7RgtC90L7RiNC10L3QuNC4INCy0L3QvtCy0Ywg0LLQstC+0LTQuNC80YvRhSDQvtCx0YrQtdC60YLQvtCyLCDQuNC80LXRjtGJ0LjRhSDQstGL0YHQvtC60YPRjiDRjdC90LXRgNCz0LXRgtC40YfQtdGB0LrRg9GOINGN0YTRhNC10LrRgtC40LLQvdC+0YHRgtGMLCDQsiDRgdC+0L7RgtCy0LXRgtGB0YLQstC40Lgg0YEg0L/QtdGA0LXRh9C90LXQvCDRgtCw0LrQuNGFINC+0LHRitC10LrRgtC+0LIsINGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C8INCf0YDQsNCy0LjRgtC10LvRjNGB0YLQstC+0Lwg0KDQvtGB0YHQuNC50YHQutC+0Lkg0KTQtdC00LXRgNCw0YbQuNC4LCAtINCyINGC0LXRh9C10L3QuNC1INGC0YDQtdGFINC70LXRgiDRgdC+INC00L3RjyDQv9C+0YHRgtCw0L3QvtCy0LrQuCDQvdCwINGD0YfQtdGCINGD0LrQsNC30LDQvdC90L7Qs9C+INC40LzRg9GJ0LXRgdGC0LLQsFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAzMzhcIixcbiAgICAgICAgbmFtZTogXCLQvtGA0LPQsNC90LjQt9Cw0YbQuNC4IC0g0LIg0L7RgtC90L7RiNC10L3QuNC4INCy0L3QvtCy0Ywg0LLQstC+0LTQuNC80YvRhSDQvtCx0YrQtdC60YLQvtCyLCDQuNC80LXRjtGJ0LjRhSDQstGL0YHQvtC60LjQuSDQutC70LDRgdGBINGN0L3QtdGA0LPQtdGC0LjRh9C10YHQutC+0Lkg0Y3RhNGE0LXQutGC0LjQstC90L7RgdGC0LgsINC10YHQu9C4INCyINC+0YLQvdC+0YjQtdC90LjQuCDRgtCw0LrQuNGFINC+0LHRitC10LrRgtC+0LIg0LIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNC4INGBINC30LDQutC+0L3QvtC00LDRgtC10LvRjNGB0YLQstC+0Lwg0KDQvtGB0YHQuNC50YHQutC+0Lkg0KTQtdC00LXRgNCw0YbQuNC4INC/0YDQtdC00YPRgdC80L7RgtGA0LXQvdC+INC+0L/RgNC10LTQtdC70LXQvdC40LUg0LrQu9Cw0YHRgdC+0LIg0LjRhSDRjdC90LXRgNCz0LXRgtC40YfQtdGB0LrQvtC5INGN0YTRhNC10LrRgtC40LLQvdC+0YHRgtC4LCAtINCyINGC0LXRh9C10L3QuNC1INGC0YDQtdGFINC70LXRgiDRgdC+INC00L3RjyDQv9C+0YHRgtCw0L3QvtCy0LrQuCDQvdCwINGD0YfQtdGCINGD0LrQsNC30LDQvdC90L7Qs9C+INC40LzRg9GJ0LXRgdGC0LLQsFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgICBjb2RlOiBcIjIwMTAzNDBcIixcbiAgICAgICAgbmFtZTogXCLQvtGA0LPQsNC90LjQt9Cw0YbQuNC4IOKAkyDQsiDQvtGC0L3QvtGI0LXQvdC40Lgg0LjQvNGD0YnQtdGB0YLQstCwLCDRgNCw0YHQv9C+0LvQvtC20LXQvdC90L7Qs9C+INCy0L4g0LLQvdGD0YLRgNC10L3QvdC40YUg0LzQvtGA0YHQutC40YUg0LLQvtC00LDRhSDQoNC+0YHRgdC40LnRgdC60L7QuSDQpNC10LTQtdGA0LDRhtC40LgsINCyINGC0LXRgNGA0LjRgtC+0YDQuNCw0LvRjNC90L7QvCDQvNC+0YDQtSDQoNC+0YHRgdC40LnRgdC60L7QuSDQpNC10LTQtdGA0LDRhtC40LgsINC90LAg0LrQvtC90YLQuNC90LXQvdGC0LDQu9GM0L3QvtC8INGI0LXQu9GM0YTQtSDQoNC+0YHRgdC40LnRgdC60L7QuSDQpNC10LTQtdGA0LDRhtC40LgsINCyINC40YHQutC70Y7Rh9C40YLQtdC70YzQvdC+0Lkg0Y3QutC+0L3QvtC80LjRh9C10YHQutC+0Lkg0LfQvtC90LUg0KDQvtGB0YHQuNC50YHQutC+0Lkg0KTQtdC00LXRgNCw0YbQuNC4INC70LjQsdC+INCyINGA0L7RgdGB0LjQudGB0LrQvtC5INGH0LDRgdGC0LggKNGA0L7RgdGB0LjQudGB0LrQvtC8INGB0LXQutGC0L7RgNC1KSDQtNC90LAg0JrQsNGB0L/QuNC50YHQutC+0LPQviDQvNC+0YDRjywg0LjRgdC/0L7Qu9GM0LfRg9C10LzQvtCz0L4g0L/RgNC4INC+0YHRg9GJ0LXRgdGC0LLQu9C10L3QuNC4INC00LXRj9GC0LXQu9GM0L3QvtGB0YLQuCDQv9C+INGA0LDQt9GA0LDQsdC+0YLQutC1INC80L7RgNGB0LrQuNGFINC80LXRgdGC0L7RgNC+0LbQtNC10L3QuNC5INGD0LPQu9C10LLQvtC00L7RgNC+0LTQvdC+0LPQviDRgdGL0YDRjNGPLCDQstC60LvRjtGH0LDRjyDQs9C10L7Qu9C+0LPQuNGH0LXRgdC60L7QtSDQuNC30YPRh9C10L3QuNC1LCDRgNCw0LfQstC10LTQutGDLCDQv9GA0L7QstC10LTQtdC90LjQtSDQv9C+0LTQs9C+0YLQvtCy0LjRgtC10LvRjNC90YvRhSDRgNCw0LHQvtGCXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMDQwMVwiLFxuICAgICAgICBuYW1lOiBcItC90LDQu9C+0LPQvtCy0LDRjyDRgdGC0LDQstC60LAg0L/QviDQvdCw0LvQvtCz0YMg0LIg0YDQsNC30LzQtdGA0LUgMCDQv9GA0L7RhtC10L3RgtC+0LIg0LIg0YLQtdGH0LXQvdC40LUg0L/QtdGA0LLRi9GFINGI0LXRgdGC0Lgg0LrQsNC70LXQvdC00LDRgNC90YvRhSDQu9C10YIsINC90LDRh9C40L3QsNGPINGB0L4g0LTQvdGPINCy0LrQu9GO0YfQtdC90LjRjyDRjtGA0LjQtNC40YfQtdGB0LrQvtCz0L4g0LvQuNGG0LAg0LIg0LXQtNC40L3Ri9C5INGA0LXQtdGB0YLRgCDRgNC10LfQuNC00LXQvdGC0L7QsiDQntGB0L7QsdC+0Lkg0Y3QutC+0L3QvtC80LjRh9C10YHQutC+0Lkg0LfQvtC90Ysg0LIg0JrQsNC70LjQvdC40L3Qs9GA0LDQtNGB0LrQvtC5INC+0LHQu9Cw0YHRgtC4LCDQsiDQvtGC0L3QvtGI0LXQvdC40Lgg0LjQvNGD0YnQtdGB0YLQstCwLCDRgdC+0LfQtNCw0L3QvdC+0LPQviDQuNC70Lgg0L/RgNC40L7QsdGA0LXRgtC10L3QvdC+0LPQviDQv9GA0Lgg0YDQtdCw0LvQuNC30LDRhtC40Lgg0LjQvdCy0LXRgdGC0LjRhtC40L7QvdC90L7Qs9C+INC/0YDQvtC10LrRgtCwINCyINGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuCDRgSDQpNC10LTQtdGA0LDQu9GM0L3Ri9C8INC30LDQutC+0L3QvtC8INC+0YIgMTAuMDEuMjAwNiBOIDE2LdCk0JdcIixcbiAgICB9LFxuICAgIHtcbiAgICAgICAgY29kZTogXCIyMDEwNDAyXCIsXG4gICAgICAgIG5hbWU6IFwi0L3QsNC70L7Qs9C+0LLQsNGPINGB0YLQsNCy0LrQsCDQv9C+INC90LDQu9C+0LPRgyDQvdCwINC40LzRg9GJ0LXRgdGC0LLQviDQvtGA0LPQsNC90LjQt9Cw0YbQuNC5INCyINGA0LDQt9C80LXRgNC1INCy0LXQu9C40YfQuNC90YssINGD0YHRgtCw0L3QvtCy0LvQtdC90L3QvtC5INC30LDQutC+0L3QvtC8INCa0LDQu9C40L3QuNC90LPRgNCw0LTRgdC60L7QuSDQvtCx0LvQsNGB0YLQuCDQuCDRg9C80LXQvdGM0YjQtdC90L3QvtC5INC90LAg0L/Rj9GC0YzQtNC10YHRj9GCINC/0YDQvtGG0LXQvdGC0L7QsiDQsiDQv9C10YDQuNC+0LQg0YEg0YHQtdC00YzQvNC+0LPQviDQv9C+INC00LLQtdC90LDQtNGG0LDRgtGL0Lkg0LrQsNC70LXQvdC00LDRgNC90YvQuSDQs9C+0LQg0LLQutC70Y7Rh9C40YLQtdC70YzQvdC+INGB0L4g0LTQvdGPINCy0LrQu9GO0YfQtdC90LjRjyDRjtGA0LjQtNC40YfQtdGB0LrQvtCz0L4g0LvQuNGG0LAg0LIg0LXQtNC40L3Ri9C5INGA0LXQtdGB0YLRgCDRgNC10LfQuNC00LXQvdGC0L7QsiDQntGB0L7QsdC+0Lkg0Y3QutC+0L3QvtC80LjRh9C10YHQutC+0Lkg0LfQvtC90Ysg0LIg0JrQsNC70LjQvdC40L3Qs9GA0LDQtNGB0LrQvtC5INC+0LHQu9Cw0YHRgtC4LCDQsiDQvtGC0L3QvtGI0LXQvdC40Lgg0LjQvNGD0YnQtdGB0YLQstCwLCDRgdC+0LfQtNCw0L3QvdC+0LPQviDQuNC70Lgg0L/RgNC40L7QsdGA0LXRgtC10L3QvdC+0LPQviDQv9GA0Lgg0YDQtdCw0LvQuNC30LDRhtC40Lgg0LjQvdCy0LXRgdGC0LjRhtC40L7QvdC90L7Qs9C+INC/0YDQvtC10LrRgtCwINCyINGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuCDRgSDQpNC10LTQtdGA0LDQu9GM0L3Ri9C8INC30LDQutC+0L3QvtC8INC+0YIgMTAuMDEuMjAwNiBOIDE2LdCk0JdcIixcbiAgICB9LFxuICAgIHtcbiAgICAgICAgY29kZTogXCIyMDEyMDAwXCIsXG4gICAgICAgIG5hbWU6IFwi0L3QsNC70L7Qs9C+0LLRi9C1INC70YzQs9C+0YLRiyDQv9C+INC90LDQu9C+0LPRgywg0YPRgdGC0LDQvdCw0LLQu9C40LLQsNC10LzRi9C1INC30LDQutC+0L3QsNC80Lgg0YHRg9Cx0YrQtdC60YLQvtCyINCg0L7RgdGB0LjQudGB0LrQvtC5INCk0LXQtNC10YDQsNGG0LjQuCwg0LfQsCDQuNGB0LrQu9GO0YfQtdC90LjQtdC8INC90LDQu9C+0LPQvtCy0YvRhSDQu9GM0LPQvtGCINCyINCy0LjQtNC1INC/0L7QvdC40LbQtdC90LjRjyDRgdGC0LDQstC60Lgg0LTQu9GPINC+0YLQtNC10LvRjNC90L7QuSDQutCw0YLQtdCz0L7RgNC40Lgg0L3QsNC70L7Qs9C+0L/Qu9Cw0YLQtdC70YzRidC40LrQvtCyINC4INCyINCy0LjQtNC1INGD0LzQtdC90YzRiNC10L3QuNGPINGB0YPQvNC80Ysg0L3QsNC70L7Qs9CwLCDQv9C+0LTQu9C10LbQsNGJ0LXQuSDRg9C/0LvQsNGC0LUg0LIg0LHRjtC00LbQtdGCXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMjQwMFwiLFxuICAgICAgICBuYW1lOiBcItC90LDQu9C+0LPQvtCy0YvQtSDQu9GM0LPQvtGC0Ysg0L/QviDQvdCw0LvQvtCz0YMsINGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdC80YvQtSDQt9Cw0LrQvtC90LDQvNC4INGB0YPQsdGK0LXQutGC0L7QsiDQoNC+0YHRgdC40LnRgdC60L7QuSDQpNC10LTQtdGA0LDRhtC40Lgg0LIg0LLQuNC00LUg0L/QvtC90LjQttC10L3QuNGPINC90LDQu9C+0LPQvtCy0L7QuSDRgdGC0LDQstC60Lgg0LTQu9GPINC+0YLQtNC10LvRjNC90L7QuSDQutCw0YLQtdCz0L7RgNC40Lgg0L3QsNC70L7Qs9C+0L/Qu9Cw0YLQtdC70YzRidC40LrQvtCyXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNvZGU6IFwiMjAxMjUwMFwiLFxuICAgICAgICBuYW1lOiBcItC90LDQu9C+0LPQvtCy0YvQtSDQu9GM0LPQvtGC0Ysg0L/QviDQvdCw0LvQvtCz0YMsINGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdC80YvQtSDQt9Cw0LrQvtC90LDQvNC4INGB0YPQsdGK0LXQutGC0L7QsiDQoNC+0YHRgdC40LnRgdC60L7QuSDQpNC10LTQtdGA0LDRhtC40Lgg0LIg0LLQuNC00LUg0YPQvNC10L3RjNGI0LXQvdC40Y8g0YHRg9C80LzRiyDQvdCw0LvQvtCz0LAsINC/0L7QtNC70LXQttCw0YnQtdC5INGD0L/Qu9Cw0YLQtSDQsiDQsdGO0LTQttC10YJcIixcbiAgICB9LFxuICAgIHtcbiAgICAgICAgY29kZTogXCIyMDE0MDAwXCIsXG4gICAgICAgIG5hbWU6IFwi0L3QsNC70L7Qs9C+0LLRi9C1INC70YzQs9C+0YLRiyAo0L7RgdCy0L7QsdC+0LbQtNC10L3QuNC1INC+0YIg0L3QsNC70L7Qs9C+0L7QsdC70L7QttC10L3QuNGPKSDQv9C+INC90LDQu9C+0LPRgywg0L/RgNC10LTRg9GB0LzQvtGC0YDQtdC90L3Ri9C1INC80LXQttC00YPQvdCw0YDQvtC00L3Ri9C80Lgg0LTQvtCz0L7QstC+0YDQsNC80Lgg0KDQvtGB0YHQuNC50YHQutC+0Lkg0KTQtdC00LXRgNCw0YbQuNC4XCIsXG4gICAgfSxcbl07XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVPLE1BQU1BLGdCQUFvQyxHQUFBQyxPQUFBLENBQUFELGdCQUFBLEdBQUcsQ0FDaEQ7RUFDSUUsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQUVELElBQUksRUFBRSxTQUFTO0VBQUVDLElBQUksRUFBRTtBQUFtRSxDQUFDLEVBQzdGO0VBQUVELElBQUksRUFBRSxTQUFTO0VBQUVDLElBQUksRUFBRTtBQUE0RSxDQUFDLEVBQ3RHO0VBQUVELElBQUksRUFBRSxTQUFTO0VBQUVDLElBQUksRUFBRTtBQUFpRixDQUFDLEVBQzNHO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLEVBQ0Q7RUFDSUQsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFO0FBQ1YsQ0FBQyxFQUNEO0VBQ0lELElBQUksRUFBRSxTQUFTO0VBQ2ZDLElBQUksRUFBRTtBQUNWLENBQUMsRUFDRDtFQUNJRCxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUU7QUFDVixDQUFDLENBQ0oiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
89
|
+
//# sourceMappingURL=TaxRebate1152026.js.map
|
|
@@ -39,4 +39,4 @@ class FakeDigestApiClient {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
exports.FakeDigestApiClient = FakeDigestApiClient;
|
|
42
|
-
//# sourceMappingURL=
|
|
42
|
+
//# sourceMappingURL=FakeDigestApiClient.js.map
|
|
@@ -6,4 +6,4 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.allFakePicklists = void 0;
|
|
7
7
|
var _TaxRebate = require("./Data/TaxRebate1152026");
|
|
8
8
|
const allFakePicklists = exports.allFakePicklists = [["463", _TaxRebate.taxRebate1152026]];
|
|
9
|
-
//# sourceMappingURL=
|
|
9
|
+
//# sourceMappingURL=FakePicklists.js.map
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=
|
|
6
|
+
//# sourceMappingURL=IDigestApiClient.js.map
|
|
@@ -15,4 +15,4 @@ function useDigestApiClient() {
|
|
|
15
15
|
var _React$useContext;
|
|
16
16
|
return (_React$useContext = React.useContext(DigestApiClientContext)) !== null && _React$useContext !== void 0 ? _React$useContext : (0, _TypingUtils.reject)("IDigestApiClient must be provided with DigestApiClientProvider");
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=DigestApiClientContext.js.map
|
|
@@ -12,4 +12,4 @@ function createTestDigestApiClient() {
|
|
|
12
12
|
const picklistApiClient = new _PicklistApiClient.PicklistApiClient(_BrowserFetchWithPolyfill.browserFetchWithPolyfill, _EndPoints.testKonturApiPicklist, undefined, undefined);
|
|
13
13
|
return new _DigestApiClient.DigestApiClient(picklistApiClient);
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=TestDigestApiClient.js.map
|
|
@@ -16,4 +16,4 @@ let DigestLogicalOperator = exports.DigestLogicalOperator = /*#__PURE__*/functio
|
|
|
16
16
|
DigestLogicalOperator["Or"] = "or";
|
|
17
17
|
return DigestLogicalOperator;
|
|
18
18
|
}({});
|
|
19
|
-
//# sourceMappingURL=
|
|
19
|
+
//# sourceMappingURL=DigestQueryFilter.js.map
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=
|
|
6
|
+
//# sourceMappingURL=DigestRequest.js.map
|
|
@@ -245,4 +245,4 @@ class FakeCandyApiDraftClient {
|
|
|
245
245
|
}
|
|
246
246
|
}
|
|
247
247
|
exports.FakeCandyApiDraftClient = FakeCandyApiDraftClient;
|
|
248
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfRXJyb3JzIiwicmVxdWlyZSIsIl9DYW5keUFwaUNsaWVudCIsIkZha2VDYW5keUFwaUNsaWVudCIsImdldEFsbEdmdnMiLCJhYm9ydFNpZ25hbCIsIlByb21pc2UiLCJyZXNvbHZlIiwiY2hlY2tBbGl2ZSIsInVuZGVmaW5lZCIsImNyZWF0ZURyYWZ0IiwibnMiLCJnZnYiLCJib2R5IiwiTm90SW1wbGVtZW50ZWRFcnJvciIsImZvckRyYWZ0IiwiZHJhZnRGdWxsSWQiLCJGYWtlQ2FuZHlBcGlEcmFmdENsaWVudCIsImNyZWF0ZURyYWZ0RnJvbURyaXZlIiwiZnVmRHJpdmVVcmkiLCJjcmVhdGVFbXB0eURyYWZ0IiwiZ2V0SW5mb0J5SW5ucyIsImlubnMiLCJnZXRGZWF0dXJlRmxhZ3NXaXRob3V0UHJvbWlzZSIsImZlYXR1cmVGbGFncyIsImdldEZlYXR1cmVGbGFncyIsInJlc3BvbnNlIiwiY2FuZHlUZXN0RmVhdHVyZSIsImV4cG9ydHMiLCJkZWxldGVJbnN0YW5jZXMiLCJkZWxldGluZ1J1bGVzIiwiZ2V0SW5uZXJGdWYiLCJnZXRGdWZXaXRoQXR0YWNobWVudHMiLCJpbXBvcnRFbXBsb3llZXMiLCJyZXF1ZXN0IiwiZ2V0UGFydGlhbEZ1ZiIsInJ1bGVzIiwicnVuTWFzc0FjdGlvbiIsImFjdGlvbklkIiwicGFyYW1ldGVycyIsImFjY2VwdFRyYW5zZmVyVHlwZSIsInRyYW5zZmVyVHlwZSIsImFjY2VwdE11bHRpcGxlVHJhbnNmZXJUeXBlIiwiZmlsZXMiLCJjYW5jZWxUYXNrIiwidGFza0lkIiwiY2xlYXJEcmFmdCIsImNvbnZlcnREcmFmdEZyb21QcmV2R2Z2IiwiY3JlYXRlT3JVcGRhdGVBdHRhY2htZW50cyIsImF0dGFjaG1lbnRzIiwiZW5xdWV1ZVRhc2siLCJ0YXNrSW5mbyIsImdldEFsbEF0dGFjaG1lbnRzIiwiZ2V0QWxsVGFza3MiLCJnZXRBdHRhY2htZW50QnlJZCIsImF0dGFjaG1lbnRJZCIsImNyZWF0ZURyYWZ0QXR0YWNobWVudCIsInBhdGgiLCJvcGVuTG9hZGVkQXR0YWNobWVudEFzRHJhZnQiLCJpZCIsImdldEVycm9yTG9nIiwiZ2V0RXJyb3JMb2dXaXRoQ2hlY2tTY2VuYXJpb3MiLCJjaGVja1NjZW5hcmlvcyIsImdldEV4cGVydEVycm9yTG9nIiwiZ2V0RXhwbGFuYXRvcnlOb3RlIiwicHJpbnQiLCJ0eXBlIiwiZ2V0RmlsZVByb3BlcnRpZXMiLCJkcml2ZVVyaSIsImlnbm9yZVNpemVDaGVjayIsInByZXBhcmVBbmRHZXRGaWxlUHJvcGVydGllcyIsInVwbG9hZEFuZEdldEZpbGVQcm9wZXJ0aWVzIiwiZHJpdmVVcmlzIiwic2VydmVyRXJyb3IiLCJTZXJ2ZXJFcnJvcnMiLCJVbmtub3duRXJyb3IiLCJzb3VyY2VzVG90YWxDb3VudCIsImludmFsaWRTb3VyY2VEcml2ZUNvbnRlbnROYW1lcyIsImdldEhyZWZEb3dubG9hZEZ1ZiIsImdldEhyZWZEb3dubG9hZElubmVyIiwiZ2V0SHJlZlRvQ29udmVydGF0aW9uTG9nIiwiZ2V0SHJlZlRvRG93bmxvYWRDbGllbnRJbmZvIiwiZ2V0SHJlZlRvRG93bmxvYWRGb3Jtc0NsaWVudEluZm8iLCJnZXRIcmVmVG9Eb3dubG9hZElubmVyRnVmIiwiZ2V0SHJlZlRvRXJyb3JMb2dQZGYiLCJlcnJvckxvZ05hbWUiLCJwcm9wc05hbWUiLCJnZXRIcmVmVG9Jbm5lckVkaXRvciIsImdldFJlcXVpc2l0ZXMiLCJyZXF1aXNpdGVMaXN0IiwiZ2V0SW5uZXIiLCJwYXRocyIsImdldFBhcnRpYWxJbm5lciIsIm1heEluc3RhbmNlQ291bnQiLCJnZXRQYXJ0aWFsSW5uZXJBc0pzb25UcmVlIiwiZ2V0UmF3UGFydGlhbElubmVyQXNKc29uVHJlZSIsImdldFRhc2tCeUlkIiwibm9ybWFsaXplQnlSdWxlcyIsInBhdGNoUHJlc2VudGF0aW9uIiwiY29udGVudCIsInJlbW92ZUF0dGFjaG1lbnRzIiwiYXR0YWNobWVudElkcyIsInNlbmRDaGFuZ2VTZXQiLCJkYXRhIiwiY3VycmVudERhdGFWZXJzaW9uIiwiZGF0YVZlcnNpb24iLCJzZW5kQ2hhbmdlV2l0aE5vcm1hbGl6YXRpb25TZXQiLCJub3JtYWxpemVySWQiLCJzZW5kQ2hhbmdlU2V0U3luYyIsInNldEZ1ZkJ5RHJpdmVVcmkiLCJjb21iaW5lRnVmQnlEcml2ZVVyaSIsImNvbWJpbmVNZXRob2QiLCJtdWx0aXBsZUNvbWJpbmVGdWZCeURyaXZlVXJpIiwiaW1wb3J0WG1scyIsImNvbWJpbmF0b3JUeXBlIiwiaXNJbXBvcnRCeUZ1ZiIsInNldFByZXNlbnRhdGlvbiIsInNldE11bHRpcGxlV2l0aE5vcm1hbGl6YXRpb24iLCJub3JtYWxpemVEaXJ0eU1hc2tzIiwic2VhcmNoSW5zdGFuY2VzQnlUZXh0IiwidGV4dCIsInBhdGhQcmVmaXgiLCJwYXRoc1RvU2VhcmNoIiwiY3VzdG9tTm9ybWFsaXplIiwicGF0aFByZWZpeGVzIiwicXVlcnlDb2xsZWN0aW9uIiwiY29sdW1ucyIsImdldERhdGFWZXJzaW9uIiwicHJpbnRFeGNlbCIsInBhdGhUb1RhYmxlIiwicmVzb2x2ZUlubmVyUGF0aCIsImV4Y2Vsc1RvUGFydGlhbEZ1ZnMiLCJpbXBvcnRGcm9tUGFydGlhbEZ1ZnNCeVBhdGgiLCJjaGVja0J5UG9wZCIsImdldERyYWZ0U2V0dGluZ3MiLCJzZXREcmFmdFNldHRpbmdzIiwic2V0dGluZ3MiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9Db21tb24vQ2FuZHlBcGlDbGllbnQvRmFrZUNhbmR5QXBpQ2xpZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vdEltcGxlbWVudGVkRXJyb3IgfSBmcm9tIFwiLi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBJQ29tYmluZUJ5VHJhbnNmZXJzIH0gZnJvbSBcIi4uLy4uL0VuZ2luZS9zcmMvRW5naW5lL0NvcmUvTW9kYWxNYW5hZ2VyL01vZGFscy9VcGxvYWRTZWN0aW9uL1R5cGVzXCI7XG5pbXBvcnQgeyBBYnNvbHV0ZU1vZGVsUGF0aCB9IGZyb20gXCIuLi9Nb2RlbFBhdGgvTW9kZWxQYXRoXCI7XG5cbmltcG9ydCB0eXBlIHtcbiAgICBDaGVja1NjZW5hcmlvVHlwZSxcbiAgICBGdWZXaXRoQXR0YWNobWVudHNSZXNwb25zZSxcbiAgICBJQ2FuZHlBcGlDbGllbnQsXG4gICAgSUNhbmR5QXBpRHJhZnRDbGllbnQsXG4gICAgSUlubmVyQ2hhbmdlUmVzdWx0LFxuICAgIFBhdGhMb2FkU3BlY2lmaWNhdGlvbixcbiAgICBEcmFmdFNldHRpbmdzLFxufSBmcm9tIFwiLi9JQ2FuZHlBcGlDbGllbnRcIjtcbmltcG9ydCB0eXBlIHsgU2VydmVyRXJyb3JMb2cgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9TZXJ2ZXJFcnJvckxvZ1wiO1xuaW1wb3J0IHR5cGUgeyBTZXJ2ZXJJbm5lclJlc3BvbnNlLCBTZXJ2ZXJKc29uUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9HZXRJbm5lci9TZXJ2ZXJJbm5lclJlc3BvbnNlXCI7XG5pbXBvcnQge1xuICAgIEV4Y2Vsc1RvUGFydGlhbEZ1ZnNSZXNwb25zZSxcbiAgICBGaWxlUHJvcGVydGllcyxcbiAgICBJbXBvcnRGcm9tUGFydGlhbEZ1ZnNCeVBhdGhSZXNwb25zZSxcbiAgICBTZXJ2ZXJFcnJvclJlc3BvbnNlLFxuICAgIFVwbG9hZEZpbGVQcm9wZXJ0aWVzUmVzcG9uc2UsXG59IGZyb20gXCIuL1R5cGVzL0RyYWZ0QWN0aW9ucy9GaWxlUHJvcGVydGllc1wiO1xuaW1wb3J0IHsgQ3JlYXRlRHJhZnRSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0NyZWF0ZURyYWZ0L0NyZWF0ZURyYWZ0UmVzcG9uc2VcIjtcbmltcG9ydCB7IENyZWF0ZUV4cGxhbmF0b3J5Tm90ZVJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvRXhwbGFuYXRvcnlOb3RlL0NyZWF0ZUV4cGxhbmF0b3J5Tm90ZVJlc3BvbnNlXCI7XG5pbXBvcnQgeyBEcmFmdEZ1bGxJZCB9IGZyb20gXCIuL1R5cGVzL0RyYWZ0RnVsbElkXCI7XG5pbXBvcnQgeyBTZXJ2ZXJDaGFuZ2VTZXQgfSBmcm9tIFwiLi9UeXBlcy9DaGFuZ2VTZXQvU2VydmVyQ2hhbmdlU2V0XCI7XG5pbXBvcnQgeyBTZXJ2ZXJUYXNrLCBWZXJpZnlBbmRGaXhGbnNSZXF1aXJlbWVudHNUYXNrSW5mbyB9IGZyb20gXCIuL1R5cGVzL1Rhc2tzL1Rhc2tzXCI7XG5pbXBvcnQgeyBHZXRCeUlublJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvRm9jdXMvRm9jdXNUeXBlc1wiO1xuaW1wb3J0IHsgQXR0YWNoSW5mbyB9IGZyb20gXCIuL1R5cGVzL0F0dGFjaG1lbnRzL0F0dGFjbWVudHNcIjtcbmltcG9ydCB7IERyYWZ0UHJlc2VudGF0aW9uVHlwZSB9IGZyb20gXCIuL1R5cGVzL1ByZXNlbnRhdGlvbnMvRHJhZnRQcmVzZW50YXRpb25UeXBlXCI7XG5pbXBvcnQgeyBDb252ZXJ0RHJhZnRSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvRHJhZnRBY3Rpb25zL0NvbnZlcnREcmFmdFJlcXVlc3RcIjtcbmltcG9ydCB7IFByZXNlbnRhdGlvbkNvbnRlbnQgfSBmcm9tIFwiLi9UeXBlcy9QcmVzZW50YXRpb25zL1ByZXNlbnRhdGlvbkNvbnRlbnRcIjtcbmltcG9ydCB7IFNlcnZlclJlcXVpc2l0ZXNSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0dldElubmVyL1NlcnZlclJlcXVpc2l0ZXNSZXNwb25zZVwiO1xuaW1wb3J0IHsgQ29tYmluYXRvclR5cGUsIENvbWJpbmVGdWZSZXN1bHQsIEZ1ZkNvbWJpbmVNZXRob2QgfSBmcm9tIFwiLi9UeXBlcy9EcmFmdEFjdGlvbnMvQ29tYmluZUZ1ZlJlc3VsdFwiO1xuaW1wb3J0IHsgRmVhdHVyZUZsYWdzUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9GZWF0dXJlRmxhZ3MvRmVhdHVyZUZsYWdzUmVzcG9uc2VcIjtcbmltcG9ydCB7IFNlcnZlckVycm9ycyB9IGZyb20gXCIuL0NhbmR5QXBpQ2xpZW50XCI7XG5pbXBvcnQgeyBJbXBvcnRFbXBsb3llZXNSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvU3RhZmYvSW1wb3J0RW1wbG95ZWVzUmVxdWVzdFwiO1xuaW1wb3J0IHsgTWFzc0FjdGlvblBhcmFtZXRlcnMgfSBmcm9tIFwiLi9UeXBlcy9NYXNzQWN0aW9ucy9NYXNzQWN0aW9uUGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgUHJpbnRUeXBlIH0gZnJvbSBcIi4vVHlwZXMvUHJpbnQvUHJpbnRUeXBlXCI7XG5pbXBvcnQgeyBQcmludFJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvUHJpbnQvUHJpbnRSZXNwb25zZVwiO1xuaW1wb3J0IHsgU2VydmVyUmF3UmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9HZXRJbm5lci9TZXJ2ZXJSYXdSZXNwb25zZVwiO1xuaW1wb3J0IHsgQ2FuZHlQb3BkUHJvdG9jb2wgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9DYW5keVBvcGRQcm90b2NvbFwiO1xuaW1wb3J0IHsgSW5zdGFuY2VzRGVsZXRpbmdSdWxlIH0gZnJvbSBcIi4vVHlwZXMvSW5zdGFuY2VzRGVsZXRpbmcvSW5zdGFuY2VzRGVsZXRpbmdSdWxlXCI7XG5pbXBvcnQgeyBWYWx1ZUZvckluc3RhbmNlc1NldHRpbmdSdWxlIH0gZnJvbSBcIi4vVHlwZXMvTWFzc0FjdGlvbnMvVmFsdWVGb3JJbnN0YW5jZXNTZXR0aW5nUnVsZVwiO1xuaW1wb3J0IHsgQmFzZUdldEZ1ZlJlc3BvbnNlIH0gZnJvbSBcIi4vSUNhbmR5QXBpQ2xpZW50XCI7XG5pbXBvcnQgeyBJbm5lclF1ZXJ5UmVxdWVzdCB9IGZyb20gXCIuL1R5cGVzL1F1ZXJ5Q29sbGVjdG9uL0lubmVyUXVlcnlSZXF1ZXN0XCI7XG5pbXBvcnQgeyBJbm5lclF1ZXJ5UmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9RdWVyeUNvbGxlY3Rvbi9Jbm5lclF1ZXJ5UmVzcG9uc2VcIjtcbmltcG9ydCB7IFJlc29sdmVJbm5lclBhdGhSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvRXJyb3JMb2cvUmVzb2x2ZUlubmVyUGF0aFJlcXVlc3RcIjtcbmltcG9ydCB7IFJlc29sdmVQYXRoUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9SZXNvbHZlUGF0aFJlc3BvbnNlXCI7XG5cbmV4cG9ydCBjbGFzcyBGYWtlQ2FuZHlBcGlDbGllbnQgaW1wbGVtZW50cyBJQ2FuZHlBcGlDbGllbnQge1xuICAgIHB1YmxpYyBnZXRBbGxHZnZzKGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoW10pO1xuICAgIH1cblxuICAgIHB1YmxpYyBjaGVja0FsaXZlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogc3RyaW5nKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPjtcbiAgICBwdWJsaWMgY3JlYXRlRHJhZnQobnM6IHN0cmluZywgZ2Z2OiB1bmRlZmluZWQsIGJvZHk6IEJ1ZmZlcik6IFByb21pc2U8Q3JlYXRlRHJhZnRSZXNwb25zZT47XG4gICAgcHVibGljIGNyZWF0ZURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogc3RyaW5nIHwgdW5kZWZpbmVkLCBib2R5PzogQnVmZmVyKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPiB7XG4gICAgICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGZvckRyYWZ0KGRyYWZ0RnVsbElkOiBEcmFmdEZ1bGxJZCk6IElDYW5keUFwaURyYWZ0Q2xpZW50IHtcbiAgICAgICAgcmV0dXJuIG5ldyBGYWtlQ2FuZHlBcGlEcmFmdENsaWVudCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjcmVhdGVEcmFmdEZyb21Ecml2ZShcbiAgICAgICAgbnM6IHN0cmluZyxcbiAgICAgICAgZnVmRHJpdmVVcmk6IHN0cmluZyxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8Q3JlYXRlRHJhZnRSZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjcmVhdGVFbXB0eURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogc3RyaW5nLCBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPiB7XG4gICAgICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEluZm9CeUlubnMoZHJhZnRGdWxsSWQ6IERyYWZ0RnVsbElkLCBpbm5zOiByZWFkb25seSBzdHJpbmdbXSk6IFByb21pc2U8R2V0QnlJbm5SZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRGZWF0dXJlRmxhZ3NXaXRob3V0UHJvbWlzZShmZWF0dXJlRmxhZ3M6IEZlYXR1cmVGbGFnc1Jlc3BvbnNlKTogRmVhdHVyZUZsYWdzUmVzcG9uc2Uge1xuICAgICAgICByZXR1cm4gZmVhdHVyZUZsYWdzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRGZWF0dXJlRmxhZ3MoKTogUHJvbWlzZTxGZWF0dXJlRmxhZ3NSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXNwb25zZTogRmVhdHVyZUZsYWdzUmVzcG9uc2UgPSB7IGNhbmR5VGVzdEZlYXR1cmU6IFwidHJ1ZVwiIH07XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZha2VDYW5keUFwaURyYWZ0Q2xpZW50IGltcGxlbWVudHMgSUNhbmR5QXBpRHJhZnRDbGllbnQge1xuICAgIHB1YmxpYyBkZWxldGVJbnN0YW5jZXMoZGVsZXRpbmdSdWxlczogSW5zdGFuY2VzRGVsZXRpbmdSdWxlW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRJbm5lckZ1ZigpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZ1ZldpdGhBdHRhY2htZW50cygpOiBQcm9taXNlPEZ1ZldpdGhBdHRhY2htZW50c1Jlc3BvbnNlIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaW1wb3J0RW1wbG95ZWVzKHJlcXVlc3Q6IEltcG9ydEVtcGxveWVlc1JlcXVlc3QpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQYXJ0aWFsRnVmKHJ1bGVzOiBzdHJpbmdbXSk6IFByb21pc2U8QmFzZUdldEZ1ZlJlc3BvbnNlIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcnVuTWFzc0FjdGlvbihhY3Rpb25JZDogc3RyaW5nLCBwYXJhbWV0ZXJzPzogTWFzc0FjdGlvblBhcmFtZXRlcnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY2NlcHRUcmFuc2ZlclR5cGUoXG4gICAgICAgIGZ1ZkRyaXZlVXJpOiBzdHJpbmcsXG4gICAgICAgIHRyYW5zZmVyVHlwZTogc3RyaW5nLFxuICAgICAgICBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsXG4gICAgKTogUHJvbWlzZTxTZXJ2ZXJFcnJvclJlc3BvbnNlIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWNjZXB0TXVsdGlwbGVUcmFuc2ZlclR5cGUoXG4gICAgICAgIGZpbGVzOiBJQ29tYmluZUJ5VHJhbnNmZXJzW10sXG4gICAgICAgIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWxcbiAgICApOiBQcm9taXNlPFNlcnZlckVycm9yUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5jZWxUYXNrKHRhc2tJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXJEcmFmdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb252ZXJ0RHJhZnRGcm9tUHJldkdmdihyZXF1ZXN0OiBDb252ZXJ0RHJhZnRSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlT3JVcGRhdGVBdHRhY2htZW50cyhhdHRhY2htZW50czogcmVhZG9ubHkgQXR0YWNoSW5mb1tdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZW5xdWV1ZVRhc2sodGFza0lkOiBzdHJpbmcsIHRhc2tJbmZvOiBWZXJpZnlBbmRGaXhGbnNSZXF1aXJlbWVudHNUYXNrSW5mbyk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEFsbEF0dGFjaG1lbnRzKCk6IFByb21pc2U8QXR0YWNoSW5mb1tdPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoW10pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRBbGxUYXNrcygpOiBQcm9taXNlPFNlcnZlclRhc2tbXT4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QXR0YWNobWVudEJ5SWQoYXR0YWNobWVudElkOiBzdHJpbmcpOiBQcm9taXNlPEF0dGFjaEluZm8+IHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlRHJhZnRBdHRhY2htZW50KGdmdjogc3RyaW5nLCBwYXRoOiBzdHJpbmcpOiBQcm9taXNlPEF0dGFjaEluZm8+IHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlbkxvYWRlZEF0dGFjaG1lbnRBc0RyYWZ0KGlkOiBzdHJpbmcpOiBQcm9taXNlPEF0dGFjaEluZm8+IHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RXJyb3JMb2coKTogUHJvbWlzZTxTZXJ2ZXJFcnJvckxvZz4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRFcnJvckxvZ1dpdGhDaGVja1NjZW5hcmlvcyhjaGVja1NjZW5hcmlvczogQ2hlY2tTY2VuYXJpb1R5cGVbXSk6IFByb21pc2U8U2VydmVyRXJyb3JMb2c+IHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RXhwZXJ0RXJyb3JMb2coKTogUHJvbWlzZTxTZXJ2ZXJFcnJvckxvZz4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRFeHBsYW5hdG9yeU5vdGUoKTogUHJvbWlzZTxDcmVhdGVFeHBsYW5hdG9yeU5vdGVSZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwcmludCh0eXBlOiBQcmludFR5cGUsIGJvZHk/OiBzdHJpbmdbXSk6IFByb21pc2U8UHJpbnRSZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRGaWxlUHJvcGVydGllcyhcbiAgICAgICAgZHJpdmVVcmk6IHN0cmluZyxcbiAgICAgICAgaWdub3JlU2l6ZUNoZWNrPzogYm9vbGVhbiB8IHVuZGVmaW5lZFxuICAgICk6IFByb21pc2U8RmlsZVByb3BlcnRpZXMgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwcmVwYXJlQW5kR2V0RmlsZVByb3BlcnRpZXMoZHJpdmVVcmk6IHN0cmluZywgZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPEZpbGVQcm9wZXJ0aWVzIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBsb2FkQW5kR2V0RmlsZVByb3BlcnRpZXMoXG4gICAgICAgIGRyaXZlVXJpczogc3RyaW5nW10sXG4gICAgICAgIGdmdjogc3RyaW5nLFxuICAgICAgICBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsXG4gICAgKTogUHJvbWlzZTxVcGxvYWRGaWxlUHJvcGVydGllc1Jlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuICAgICAgICAgICAgc2VydmVyRXJyb3I6IFNlcnZlckVycm9ycy5Vbmtub3duRXJyb3IsXG4gICAgICAgICAgICBzb3VyY2VzVG90YWxDb3VudDogMCxcbiAgICAgICAgICAgIGludmFsaWRTb3VyY2VEcml2ZUNvbnRlbnROYW1lczogXCJcIixcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEhyZWZEb3dubG9hZEZ1ZigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SHJlZkRvd25sb2FkSW5uZXIoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEhyZWZUb0NvbnZlcnRhdGlvbkxvZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SHJlZlRvRG93bmxvYWRDbGllbnRJbmZvKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRIcmVmVG9Eb3dubG9hZEZvcm1zQ2xpZW50SW5mbygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SHJlZlRvRG93bmxvYWRJbm5lckZ1ZigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SHJlZlRvRXJyb3JMb2dQZGYoZXJyb3JMb2dOYW1lOiBzdHJpbmcsIHByb3BzTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEhyZWZUb0lubmVyRWRpdG9yKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRSZXF1aXNpdGVzKHJlcXVpc2l0ZUxpc3Q6IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTxTZXJ2ZXJSZXF1aXNpdGVzUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRJbm5lcihwYXRoczogcmVhZG9ubHkgc3RyaW5nW10gfCB1bmRlZmluZWQpOiBQcm9taXNlPFNlcnZlcklubmVyUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQYXJ0aWFsSW5uZXIoXG4gICAgICAgIHJ1bGVzOiByZWFkb25seSBQYXRoTG9hZFNwZWNpZmljYXRpb25bXSxcbiAgICAgICAgbWF4SW5zdGFuY2VDb3VudD86IG51bWJlclxuICAgICk6IFByb21pc2U8U2VydmVySW5uZXJSZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQYXJ0aWFsSW5uZXJBc0pzb25UcmVlKFxuICAgICAgICBydWxlczogcmVhZG9ubHkgUGF0aExvYWRTcGVjaWZpY2F0aW9uW10sXG4gICAgICAgIG1heEluc3RhbmNlQ291bnQ/OiBudW1iZXJcbiAgICApOiBQcm9taXNlPFNlcnZlckpzb25SZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRSYXdQYXJ0aWFsSW5uZXJBc0pzb25UcmVlKFxuICAgICAgICBydWxlczogcmVhZG9ubHkgUGF0aExvYWRTcGVjaWZpY2F0aW9uW10sXG4gICAgICAgIG1heEluc3RhbmNlQ291bnQ/OiBudW1iZXJcbiAgICApOiBQcm9taXNlPFNlcnZlclJhd1Jlc3BvbnNlPiB7XG4gICAgICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRhc2tCeUlkKHRhc2tJZDogc3RyaW5nKTogUHJvbWlzZTxTZXJ2ZXJUYXNrIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbm9ybWFsaXplQnlSdWxlcyhydWxlczogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcGF0Y2hQcmVzZW50YXRpb24odHlwZTogRHJhZnRQcmVzZW50YXRpb25UeXBlLCBjb250ZW50OiBQcmVzZW50YXRpb25Db250ZW50KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlQXR0YWNobWVudHMoYXR0YWNobWVudElkczogcmVhZG9ubHkgc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZW5kQ2hhbmdlU2V0KGRhdGE6IFNlcnZlckNoYW5nZVNldCwgY3VycmVudERhdGFWZXJzaW9uOiBudW1iZXIpOiBQcm9taXNlPElJbm5lckNoYW5nZVJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsgZGF0YVZlcnNpb246IDAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlbmRDaGFuZ2VXaXRoTm9ybWFsaXphdGlvblNldChcbiAgICAgICAgZGF0YTogU2VydmVyQ2hhbmdlU2V0LFxuICAgICAgICBjdXJyZW50RGF0YVZlcnNpb246IG51bWJlcixcbiAgICAgICAgbm9ybWFsaXplcklkPzogc3RyaW5nXG4gICAgKTogUHJvbWlzZTxJSW5uZXJDaGFuZ2VSZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7IGRhdGFWZXJzaW9uOiAwIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZW5kQ2hhbmdlU2V0U3luYyhkYXRhOiBTZXJ2ZXJDaGFuZ2VTZXQsIGN1cnJlbnREYXRhVmVyc2lvbjogbnVtYmVyKTogSUlubmVyQ2hhbmdlUmVzdWx0IHtcbiAgICAgICAgcmV0dXJuIDIwMDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0RnVmQnlEcml2ZVVyaShkcml2ZVVyaTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY29tYmluZUZ1ZkJ5RHJpdmVVcmkoXG4gICAgICAgIGRyaXZlVXJpOiBzdHJpbmcsXG4gICAgICAgIGNvbWJpbmVNZXRob2Q6IEZ1ZkNvbWJpbmVNZXRob2RcbiAgICApOiBQcm9taXNlPENvbWJpbmVGdWZSZXN1bHQgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBtdWx0aXBsZUNvbWJpbmVGdWZCeURyaXZlVXJpKFxuICAgICAgICBkcml2ZVVyaXM6IHN0cmluZ1tdLFxuICAgICAgICBjb21iaW5lTWV0aG9kOiBGdWZDb21iaW5lTWV0aG9kXG4gICAgKTogUHJvbWlzZTxDb21iaW5lRnVmUmVzdWx0IHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaW1wb3J0WG1scyhcbiAgICAgICAgZHJpdmVVcmlzOiBzdHJpbmdbXSxcbiAgICAgICAgY29tYmluZU1ldGhvZDogRnVmQ29tYmluZU1ldGhvZCxcbiAgICAgICAgY29tYmluYXRvclR5cGU6IENvbWJpbmF0b3JUeXBlLFxuICAgICAgICBpc0ltcG9ydEJ5RnVmOiBib29sZWFuXG4gICAgKTogUHJvbWlzZTxDb21iaW5lRnVmUmVzdWx0IHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UHJlc2VudGF0aW9uKHR5cGU6IERyYWZ0UHJlc2VudGF0aW9uVHlwZSwgY29udGVudDogc3RyaW5nIHwgdW5rbm93bik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldE11bHRpcGxlV2l0aE5vcm1hbGl6YXRpb24ocnVsZXM6IFZhbHVlRm9ySW5zdGFuY2VzU2V0dGluZ1J1bGVbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5vcm1hbGl6ZURpcnR5TWFza3MoKTogUHJvbWlzZTxJSW5uZXJDaGFuZ2VSZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgyMDApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hJbnN0YW5jZXNCeVRleHQoXG4gICAgICAgIHRleHQ6IHN0cmluZyxcbiAgICAgICAgcGF0aFByZWZpeDogc3RyaW5nLFxuICAgICAgICBwYXRoc1RvU2VhcmNoOiBzdHJpbmdbXSxcbiAgICAgICAgbWF4SW5zdGFuY2VDb3VudD86IG51bWJlclxuICAgICk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7XG4gICAgfVxuXG4gICAgcHVibGljIGN1c3RvbU5vcm1hbGl6ZShcbiAgICAgICAgbm9ybWFsaXplcklkOiBzdHJpbmcgfCBudWxsLFxuICAgICAgICBwYXRoUHJlZml4ZXM6IEFic29sdXRlTW9kZWxQYXRoW11cbiAgICApOiBQcm9taXNlPElJbm5lckNoYW5nZVJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKDIwMCk7XG4gICAgfVxuXG4gICAgcHVibGljIHF1ZXJ5Q29sbGVjdGlvbihyZXF1ZXN0OiBJbm5lclF1ZXJ5UmVxdWVzdCwgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8SW5uZXJRdWVyeVJlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoeyBkYXRhOiBbXSwgY29sdW1uczogW10gfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldERhdGFWZXJzaW9uKCk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoMCk7XG4gICAgfVxuXG4gICAgcHVibGljIHByaW50RXhjZWwocGF0aFRvVGFibGU6IHN0cmluZyk6IFByb21pc2U8UHJpbnRSZXNwb25zZT4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNvbHZlSW5uZXJQYXRoKHJlcXVlc3Q6IFJlc29sdmVJbm5lclBhdGhSZXF1ZXN0LCBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsKTogUHJvbWlzZTxSZXNvbHZlUGF0aFJlc3BvbnNlPiB7XG4gICAgICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGV4Y2Vsc1RvUGFydGlhbEZ1ZnMoXG4gICAgICAgIGdmdjogc3RyaW5nLFxuICAgICAgICBwYXRoVG9UYWJsZTogc3RyaW5nLFxuICAgICAgICBkcml2ZVVyaXM6IHN0cmluZ1tdXG4gICAgKTogUHJvbWlzZTxFeGNlbHNUb1BhcnRpYWxGdWZzUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaW1wb3J0RnJvbVBhcnRpYWxGdWZzQnlQYXRoKFxuICAgICAgICBwYXRoVG9UYWJsZTogc3RyaW5nLFxuICAgICAgICBkcml2ZVVyaTogc3RyaW5nW10sXG4gICAgICAgIGNvbWJpbmVNZXRob2Q6IHN0cmluZ1xuICAgICk6IFByb21pc2U8SW1wb3J0RnJvbVBhcnRpYWxGdWZzQnlQYXRoUmVzcG9uc2UgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2hlY2tCeVBvcGQoKTogUHJvbWlzZTxDYW5keVBvcGRQcm90b2NvbD4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXREcmFmdFNldHRpbmdzKCk6IFByb21pc2U8RHJhZnRTZXR0aW5ncz4ge1xuICAgICAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXREcmFmdFNldHRpbmdzKHNldHRpbmdzOiBEcmFmdFNldHRpbmdzKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsT0FBQTtBQW1DQSxJQUFBQyxlQUFBLEdBQUFELE9BQUE7QUFlTyxNQUFNRSxrQkFBa0IsQ0FBNEI7RUFDaERDLFVBQVVBLENBQUNDLFdBQXlCLEVBQXFCO0lBQzVELE9BQU9DLE9BQU8sQ0FBQ0MsT0FBTyxDQUFDLEVBQUUsQ0FBQztFQUM5QjtFQUVPQyxVQUFVQSxDQUFBLEVBQWtCO0lBQy9CLE9BQU9GLE9BQU8sQ0FBQ0MsT0FBTyxDQUFDRSxTQUFTLENBQUM7RUFDckM7RUFJT0MsV0FBV0EsQ0FBQ0MsRUFBVSxFQUFFQyxHQUF1QixFQUFFQyxJQUFhLEVBQWdDO0lBQ2pHLE1BQU0sSUFBSUMsMkJBQW1CLENBQUMsQ0FBQztFQUNuQztFQUVPQyxRQUFRQSxDQUFDQyxXQUF3QixFQUF3QjtJQUM1RCxPQUFPLElBQUlDLHVCQUF1QixDQUFDLENBQUM7RUFDeEM7RUFFT0Msb0JBQW9CQSxDQUN2QlAsRUFBVSxFQUNWUSxXQUFtQixF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
|
|
248
|
+
//# sourceMappingURL=FakeCandyApiClient.js.map
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vQ29tbW9uL0NhbmR5QXBpQ2xpZW50L0lDYW5keUFwaUNsaWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwU3RhdHVzQ29kZSB9IGZyb20gXCIuLi9IdHRwQ2xpZW50L0lIdHRwQ2xpZW50XCI7XG5pbXBvcnQgeyBJQ29tYmluZUJ5VHJhbnNmZXJzIH0gZnJvbSBcIi4uLy4uL0VuZ2luZS9zcmMvRW5naW5lL0NvcmUvTW9kYWxNYW5hZ2VyL01vZGFscy9VcGxvYWRTZWN0aW9uL1R5cGVzXCI7XG5pbXBvcnQgeyBBYnNvbHV0ZU1vZGVsUGF0aCB9IGZyb20gXCIuLi9Nb2RlbFBhdGgvTW9kZWxQYXRoXCI7XG5pbXBvcnQgeyBBYnNvbHV0ZU1vZGVsRmllbGRQYXRoIH0gZnJvbSBcIi4uL01vZGVsUGF0aC9BYnNvbHV0ZU1vZGVsRmllbGRQYXRoXCI7XG5pbXBvcnQgeyBGb3JtU2V0dGluZ3MgfSBmcm9tIFwiLi4vLi4vRW5naW5lL3NyYy9Gb3Jtcy9UeXBlcy9Gb3JtU2V0dGluZ3NcIjtcblxuaW1wb3J0IHsgU2VydmVyRXJyb3JMb2cgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9TZXJ2ZXJFcnJvckxvZ1wiO1xuaW1wb3J0IHsgU2VydmVySW5uZXJSZXNwb25zZSwgU2VydmVySnNvblJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvR2V0SW5uZXIvU2VydmVySW5uZXJSZXNwb25zZVwiO1xuaW1wb3J0IHtcbiAgICBFeGNlbHNUb1BhcnRpYWxGdWZzUmVzcG9uc2UsXG4gICAgRmlsZVByb3BlcnRpZXMsXG4gICAgSW1wb3J0RnJvbVBhcnRpYWxGdWZzQnlQYXRoUmVzcG9uc2UsXG4gICAgU2VydmVyRXJyb3JSZXNwb25zZSxcbiAgICBVcGxvYWRGaWxlUHJvcGVydGllc1Jlc3BvbnNlLFxufSBmcm9tIFwiLi9UeXBlcy9EcmFmdEFjdGlvbnMvRmlsZVByb3BlcnRpZXNcIjtcbmltcG9ydCB7IENyZWF0ZURyYWZ0UmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9DcmVhdGVEcmFmdC9DcmVhdGVEcmFmdFJlc3BvbnNlXCI7XG5pbXBvcnQgeyBDcmVhdGVFeHBsYW5hdG9yeU5vdGVSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0V4cGxhbmF0b3J5Tm90ZS9DcmVhdGVFeHBsYW5hdG9yeU5vdGVSZXNwb25zZVwiO1xuaW1wb3J0IHsgRHJhZnRGdWxsSWQgfSBmcm9tIFwiLi9UeXBlcy9EcmFmdEZ1bGxJZFwiO1xuaW1wb3J0IHsgU2VydmVyQ2hhbmdlU2V0IH0gZnJvbSBcIi4vVHlwZXMvQ2hhbmdlU2V0L1NlcnZlckNoYW5nZVNldFwiO1xuaW1wb3J0IHsgU2VydmVyVGFzaywgVmVyaWZ5QW5kRml4Rm5zUmVxdWlyZW1lbnRzVGFza0luZm8gfSBmcm9tIFwiLi9UeXBlcy9UYXNrcy9UYXNrc1wiO1xuaW1wb3J0IHsgR2V0QnlJbm5SZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0ZvY3VzL0ZvY3VzVHlwZXNcIjtcbmltcG9ydCB7IEF0dGFjaEluZm8gfSBmcm9tIFwiLi9UeXBlcy9BdHRhY2htZW50cy9BdHRhY21lbnRzXCI7XG5pbXBvcnQgeyBEcmFmdFByZXNlbnRhdGlvblR5cGUgfSBmcm9tIFwiLi9UeXBlcy9QcmVzZW50YXRpb25zL0RyYWZ0UHJlc2VudGF0aW9uVHlwZVwiO1xuaW1wb3J0IHsgUHJlc2VudGF0aW9uQ29udGVudCB9IGZyb20gXCIuL1R5cGVzL1ByZXNlbnRhdGlvbnMvUHJlc2VudGF0aW9uQ29udGVudFwiO1xuaW1wb3J0IHsgQ29udmVydERyYWZ0UmVxdWVzdCB9IGZyb20gXCIuL1R5cGVzL0RyYWZ0QWN0aW9ucy9Db252ZXJ0RHJhZnRSZXF1ZXN0XCI7XG5pbXBvcnQgeyBTZXJ2ZXJSZXF1aXNpdGVzUmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9HZXRJbm5lci9TZXJ2ZXJSZXF1aXNpdGVzUmVzcG9uc2VcIjtcbmltcG9ydCB7IENvbWJpbmF0b3JUeXBlLCBDb21iaW5lRnVmUmVzdWx0LCBGdWZDb21iaW5lTWV0aG9kIH0gZnJvbSBcIi4vVHlwZXMvRHJhZnRBY3Rpb25zL0NvbWJpbmVGdWZSZXN1bHRcIjtcbmltcG9ydCB7IEZlYXR1cmVGbGFnc1Jlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvRmVhdHVyZUZsYWdzL0ZlYXR1cmVGbGFnc1Jlc3BvbnNlXCI7XG5pbXBvcnQgeyBJbXBvcnRFbXBsb3llZXNSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvU3RhZmYvSW1wb3J0RW1wbG95ZWVzUmVxdWVzdFwiO1xuaW1wb3J0IHsgTWFzc0FjdGlvblBhcmFtZXRlcnMgfSBmcm9tIFwiLi9UeXBlcy9NYXNzQWN0aW9ucy9NYXNzQWN0aW9uUGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgUHJpbnRUeXBlIH0gZnJvbSBcIi4vVHlwZXMvUHJpbnQvUHJpbnRUeXBlXCI7XG5pbXBvcnQgeyBQcmludFJlc3BvbnNlIH0gZnJvbSBcIi4vVHlwZXMvUHJpbnQvUHJpbnRSZXNwb25zZVwiO1xuaW1wb3J0IHsgU2VydmVyUmF3UmVzcG9uc2UgfSBmcm9tIFwiLi9UeXBlcy9HZXRJbm5lci9TZXJ2ZXJSYXdSZXNwb25zZVwiO1xuaW1wb3J0IHsgQ2FuZHlQb3BkUHJvdG9jb2wgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9DYW5keVBvcGRQcm90b2NvbFwiO1xuaW1wb3J0IHsgSW5zdGFuY2VzRGVsZXRpbmdSdWxlIH0gZnJvbSBcIi4vVHlwZXMvSW5zdGFuY2VzRGVsZXRpbmcvSW5zdGFuY2VzRGVsZXRpbmdSdWxlXCI7XG5pbXBvcnQgeyBWYWx1ZUZvckluc3RhbmNlc1NldHRpbmdSdWxlIH0gZnJvbSBcIi4vVHlwZXMvTWFzc0FjdGlvbnMvVmFsdWVGb3JJbnN0YW5jZXNTZXR0aW5nUnVsZVwiO1xuaW1wb3J0IHsgR2V0QXR0YWNobWVudHNSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0F0dGFjaG1lbnRzL0dldEF0dGFjaG1lbnRzUmVzcG9uc2VcIjtcbmltcG9ydCB7IElubmVyUXVlcnlSZXF1ZXN0IH0gZnJvbSBcIi4vVHlwZXMvUXVlcnlDb2xsZWN0b24vSW5uZXJRdWVyeVJlcXVlc3RcIjtcbmltcG9ydCB7IElubmVyUXVlcnlSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL1F1ZXJ5Q29sbGVjdG9uL0lubmVyUXVlcnlSZXNwb25zZVwiO1xuaW1wb3J0IHsgUmVzb2x2ZUlubmVyUGF0aFJlcXVlc3QgfSBmcm9tIFwiLi9UeXBlcy9FcnJvckxvZy9SZXNvbHZlSW5uZXJQYXRoUmVxdWVzdFwiO1xuaW1wb3J0IHsgUmVzb2x2ZVBhdGhSZXNwb25zZSB9IGZyb20gXCIuL1R5cGVzL0Vycm9yTG9nL1Jlc29sdmVQYXRoUmVzcG9uc2VcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJQ2FuZHlBcGlDbGllbnQge1xuICAgIGZvckRyYWZ0KGRyYWZ0RnVsbElkOiBEcmFmdEZ1bGxJZCk6IElDYW5keUFwaURyYWZ0Q2xpZW50O1xuXG4gICAgLy8gcmVnaW9uIENyZWF0ZSBkcmFmdFxuICAgIGNyZWF0ZURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogc3RyaW5nKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPjtcbiAgICBjcmVhdGVEcmFmdChuczogc3RyaW5nLCBnZnY6IHVuZGVmaW5lZCwgYm9keTogQnVmZmVyKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPjtcbiAgICBjcmVhdGVEcmFmdEZyb21Ecml2ZShuczogc3RyaW5nLCBmdWZEcml2ZVVyaTogc3RyaW5nLCBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPjtcbiAgICBjcmVhdGVFbXB0eURyYWZ0KG5zOiBzdHJpbmcsIGdmdjogc3RyaW5nLCBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsKTogUHJvbWlzZTxDcmVhdGVEcmFmdFJlc3BvbnNlPjtcbiAgICAvLyBlbmRyZWdpb25cblxuICAgIC8vcmVnaW9uIEZvY3VzXG4gICAgZ2V0SW5mb0J5SW5ucyhkcmFmdEZ1bGxJZDogRHJhZnRGdWxsSWQsIGlubnM6IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTxHZXRCeUlublJlc3BvbnNlPjtcbiAgICAvL2VuZHJlZ2lvblxuXG4gICAgLy8gcmVnaW9uIERpYWdub3N0aWNzXG4gICAgZ2V0QWxsR2Z2cyhhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsKTogUHJvbWlzZTxzdHJpbmdbXT47XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICBjaGVja0FsaXZlKCk6IFByb21pc2U8dm9pZD47XG5cbiAgICBnZXRGZWF0dXJlRmxhZ3MoKTogUHJvbWlzZTxGZWF0dXJlRmxhZ3NSZXNwb25zZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNhbmR5QXBpRHJhZnRUYXNrc0NsaWVudCB7XG4gICAgZ2V0QWxsVGFza3MoKTogUHJvbWlzZTxTZXJ2ZXJUYXNrW10+O1xuICAgIGdldFRhc2tCeUlkKHRhc2tJZDogc3RyaW5nKTogUHJvbWlzZTxTZXJ2ZXJUYXNrIHwgdW5kZWZpbmVkPjtcbiAgICBlbnF1ZXVlVGFzayh0YXNrSWQ6IHN0cmluZywgdGFza0luZm86IFZlcmlmeUFuZEZpeEZuc1JlcXVpcmVtZW50c1Rhc2tJbmZvKTogUHJvbWlzZTx2b2lkPjtcbiAgICBjYW5jZWxUYXNrKHRhc2tJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2FuZHlBcGlEcmFmdEF0dGFjaG1lbnRzQ2xpZW50IHtcbiAgICBnZXRBdHRhY2htZW50QnlJZChhdHRhY2htZW50SWQ6IHN0cmluZyk6IFByb21pc2U8QXR0YWNoSW5mbz47XG4gICAgZ2V0QWxsQXR0YWNobWVudHMoKTogUHJvbWlzZTxBdHRhY2hJbmZvW10+O1xuICAgIGNyZWF0ZU9yVXBkYXRlQXR0YWNobWVudHMoYXR0YWNobWVudHM6IHJlYWRvbmx5IEF0dGFjaEluZm9bXSk6IFByb21pc2U8dm9pZD47XG4gICAgY3JlYXRlRHJhZnRBdHRhY2htZW50KGdmdjogc3RyaW5nLCBwYXRoOiBzdHJpbmcpOiBQcm9taXNlPEF0dGFjaEluZm8+O1xuICAgIG9wZW5Mb2FkZWRBdHRhY2htZW50QXNEcmFmdChpZDogc3RyaW5nKTogUHJvbWlzZTxBdHRhY2hJbmZvPjtcbiAgICByZW1vdmVBdHRhY2htZW50cyhhdHRhY2htZW50SWRzOiByZWFkb25seSBzdHJpbmdbXSk6IFByb21pc2U8dm9pZD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF0aExvYWRTcGVjaWZpY2F0aW9uIHtcbiAgICBwYXRoT3JQYXRoUHJlZml4OiBBYnNvbHV0ZU1vZGVsUGF0aCB8IEFic29sdXRlTW9kZWxGaWVsZFBhdGggfCBcIipcIjtcbiAgICBza2lwOiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBDaGVja1NjZW5hcmlvVHlwZSA9IFwicmVhZG9ubHlcIjtcbmV4cG9ydCBpbnRlcmZhY2UgSUlubmVyQ2hhbmdlU3VjY2Vzc1Jlc3VsdCB7XG4gICAgZGF0YVZlcnNpb246IG51bWJlcjtcbiAgICBjaGFuZ2VkUGF0aHM/OiBzdHJpbmdbXTtcbn1cbmV4cG9ydCB0eXBlIElJbm5lckNoYW5nZVJlc3VsdCA9IElJbm5lckNoYW5nZVN1Y2Nlc3NSZXN1bHQgfCBIdHRwU3RhdHVzQ29kZTtcblxuZXhwb3J0IGludGVyZmFjZSBEcmFmdFNldHRpbmdzIHtcbiAgICBpc1JlYWRPbmx5PzogRm9ybVNldHRpbmdzW1wiaXNSZWFkT25seVwiXTtcbiAgICBpc0luZGl2aWR1YWw/OiBGb3JtU2V0dGluZ3NbXCJpc0luZGl2aWR1YWxcIl07XG4gICAgaXNGb3JlaWduPzogRm9ybVNldHRpbmdzW1wiaXNGb3JlaWduXCJdO1xuICAgIGVtcGxveWVySWQ/OiBGb3JtU2V0dGluZ3NbXCJlbXBsb3llcklkXCJdO1xufVxuXG5leHBvcnQgdHlwZSBOb3JtYWxpemVyTmFtZXMgPSBcImZvcm11bGFzXCIgfCBcImZvcm11bGFzV2l0aEluaXRpYWxpemVyc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDYW5keUFwaURyYWZ0Q2xpZW50IGV4dGVuZHMgSUNhbmR5QXBpRHJhZnRUYXNrc0NsaWVudCwgSUNhbmR5QXBpRHJhZnRBdHRhY2htZW50c0NsaWVudCB7XG4gICAgLy8gcmVnaW9uIEV4cGxhbmF0b3J5IG5vdGVcbiAgICBnZXRFeHBsYW5hdG9yeU5vdGUoKTogUHJvbWlzZTxDcmVhdGVFeHBsYW5hdG9yeU5vdGVSZXNwb25zZT47XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICAvLyByZWdpb24gRXJyb3IgbG9nXG4gICAgZ2V0RXJyb3JMb2coKTogUHJvbWlzZTxTZXJ2ZXJFcnJvckxvZz47XG4gICAgY2hlY2tCeVBvcGQoKTogUHJvbWlzZTxDYW5keVBvcGRQcm90b2NvbD47XG4gICAgZ2V0RXJyb3JMb2dXaXRoQ2hlY2tTY2VuYXJpb3MoY2hlY2tTY2VuYXJpb3M6IENoZWNrU2NlbmFyaW9UeXBlW10pOiBQcm9taXNlPFNlcnZlckVycm9yTG9nPjtcbiAgICBnZXRFeHBlcnRFcnJvckxvZygpOiBQcm9taXNlPFNlcnZlckVycm9yTG9nPjtcbiAgICBnZXRIcmVmVG9FcnJvckxvZ1BkZihlcnJvckxvZ05hbWU6IHN0cmluZywgcHJvcHNOYW1lOiBzdHJpbmcpOiBzdHJpbmc7XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICAvLyByZWdpb24gR2V0IGRyYWZ0IHJlcXVpc2l0ZXNcbiAgICBnZXRSZXF1aXNpdGVzKHJlcXVpc2l0ZUxpc3Q6IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTxTZXJ2ZXJSZXF1aXNpdGVzUmVzcG9uc2U+O1xuICAgIC8vIGVuZHJlZ2lvblxuXG4gICAgLy9yZWdpb24gR2V0IGRyYWZ0IGlubmVyXG4gICAgZ2V0SW5uZXIocGF0aHM6IHVuZGVmaW5lZCB8IHJlYWRvbmx5IHN0cmluZ1tdKTogUHJvbWlzZTxTZXJ2ZXJJbm5lclJlc3BvbnNlPjtcbiAgICBnZXRQYXJ0aWFsSW5uZXIocnVsZXM6IHJlYWRvbmx5IFBhdGhMb2FkU3BlY2lmaWNhdGlvbltdLCBtYXhJbnN0YW5jZUNvdW50PzogbnVtYmVyKTogUHJvbWlzZTxTZXJ2ZXJJbm5lclJlc3BvbnNlPjtcbiAgICBnZXRQYXJ0aWFsSW5uZXJBc0pzb25UcmVlKFxuICAgICAgICBydWxlczogcmVhZG9ubHkgUGF0aExvYWRTcGVjaWZpY2F0aW9uW10sXG4gICAgICAgIG1heEluc3RhbmNlQ291bnQ/OiBudW1iZXJcbiAgICApOiBQcm9taXNlPFNlcnZlckpzb25SZXNwb25zZT47XG4gICAgZ2V0UmF3UGFydGlhbElubmVyQXNKc29uVHJlZShcbiAgICAgICAgcnVsZXM6IHJlYWRvbmx5IFBhdGhMb2FkU3BlY2lmaWNhdGlvbltdLFxuICAgICAgICBtYXhJbnN0YW5jZUNvdW50PzogbnVtYmVyXG4gICAgKTogUHJvbWlzZTxTZXJ2ZXJSYXdSZXNwb25zZT47XG4gICAgZ2V0RGF0YVZlcnNpb24oKTogUHJvbWlzZTxudW1iZXI+O1xuICAgIC8vZW5kcmVnaW9uXG5cbiAgICAvLyByZWdpb24gVXBkYXRlIGRyYWZ0IGlubmVyXG4gICAgc2VuZENoYW5nZVNldChkYXRhOiBTZXJ2ZXJDaGFuZ2VTZXQsIGN1cnJlbnREYXRhVmVyc2lvbjogbnVtYmVyKTogUHJvbWlzZTxJSW5uZXJDaGFuZ2VSZXN1bHQ+O1xuICAgIHNlbmRDaGFuZ2VTZXRTeW5jKGRhdGE6IFNlcnZlckNoYW5nZVNldCwgY3VycmVudERhdGFWZXJzaW9uOiBudW1iZXIpOiBJSW5uZXJDaGFuZ2VSZXN1bHQ7XG4gICAgc2VuZENoYW5nZVdpdGhOb3JtYWxpemF0aW9uU2V0KFxuICAgICAgICBkYXRhOiBTZXJ2ZXJDaGFuZ2VTZXQsXG4gICAgICAgIGN1cnJlbnREYXRhVmVyc2lvbjogbnVtYmVyLFxuICAgICAgICBub3JtYWxpemVySWQ/OiBOb3JtYWxpemVyTmFtZXNcbiAgICApOiBQcm9taXNlPElJbm5lckNoYW5nZVJlc3VsdD47XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICAvLyByZWdpb24gRHJhZnQgcHJlc2VudGF0aW9uc1xuICAgIHNldFByZXNlbnRhdGlvbih0eXBlOiBEcmFmdFByZXNlbnRhdGlvblR5cGUsIGNvbnRlbnQ6IHN0cmluZyB8IHVua25vd24pOiBQcm9taXNlPHZvaWQ+O1xuICAgIHBhdGNoUHJlc2VudGF0aW9uKHR5cGU6IERyYWZ0UHJlc2VudGF0aW9uVHlwZSwgY29udGVudDogUHJlc2VudGF0aW9uQ29udGVudCk6IFByb21pc2U8dm9pZD47XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICAvLyByZWdpb24gRHJhZnQgaW5uZXIgcHJpbnRcbiAgICBwcmludCh0eXBlOiBQcmludFR5cGUsIGJvZHk/OiBzdHJpbmdbXSk6IFByb21pc2U8UHJpbnRSZXNwb25zZT47XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICAvLyByZWdpb24gRHJhZnQgYWN0aW9uc1xuICAgIGNsZWFyRHJhZnQoKTogUHJvbWlzZTx2b2lkPjtcbiAgICBjb252ZXJ0RHJhZnRGcm9tUHJldkdmdihyZXF1ZXN0OiBDb252ZXJ0RHJhZnRSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPjtcbiAgICBnZXRGaWxlUHJvcGVydGllcyhkcml2ZVVyaTogc3RyaW5nLCBpZ25vcmVTaXplQ2hlY2s/OiBib29sZWFuIHwgdW5kZWZpbmVkKTogUHJvbWlzZTxGaWxlUHJvcGVydGllcyB8IHVuZGVmaW5lZD47XG4gICAgcHJlcGFyZUFuZEdldEZpbGVQcm9wZXJ0aWVzKGRyaXZlVXJpOiBzdHJpbmcsIGdmdjogc3RyaW5nKTogUHJvbWlzZTxGaWxlUHJvcGVydGllcyB8IHVuZGVmaW5lZD47XG4gICAgdXBsb2FkQW5kR2V0RmlsZVByb3BlcnRpZXMoXG4gICAgICAgIGRyaXZlVXJpOiBzdHJpbmdbXSxcbiAgICAgICAgZ2Z2OiBzdHJpbmcsXG4gICAgICAgIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWxcbiAgICApOiBQcm9taXNlPFVwbG9hZEZpbGVQcm9wZXJ0aWVzUmVzcG9uc2U+O1xuICAgIHNldEZ1ZkJ5RHJpdmVVcmkoZHJpdmVVcmk6IHN0cmluZyk6IFByb21pc2U8dm9pZD47XG4gICAgYWNjZXB0VHJhbnNmZXJUeXBlKFxuICAgICAgICBmdWZEcml2ZVVyaTogc3RyaW5nLFxuICAgICAgICB0cmFuc2ZlclR5cGU6IHN0cmluZyxcbiAgICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbFxuICAgICk6IFByb21pc2U8U2VydmVyRXJyb3JSZXNwb25zZSB8IHVuZGVmaW5lZD47XG4gICAgYWNjZXB0TXVsdGlwbGVUcmFuc2ZlclR5cGUoXG4gICAgICAgIGZpbGVzOiBJQ29tYmluZUJ5VHJhbnNmZXJzW10sXG4gICAgICAgIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWxcbiAgICApOiBQcm9taXNlPFNlcnZlckVycm9yUmVzcG9uc2UgfCB1bmRlZmluZWQ+O1xuICAgIGNvbWJpbmVGdWZCeURyaXZlVXJpKFxuICAgICAgICBkcml2ZVVyaTogc3RyaW5nLFxuICAgICAgICBjb21iaW5lTWV0aG9kOiBGdWZDb21iaW5lTWV0aG9kLFxuICAgICAgICBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsXG4gICAgKTogUHJvbWlzZTxDb21iaW5lRnVmUmVzdWx0IHwgdW5kZWZpbmVkPjtcbiAgICBleGNlbHNUb1BhcnRpYWxGdWZzKFxuICAgICAgICBnZnY6IHN0cmluZyxcbiAgICAgICAgcGF0aFRvVGFibGU6IHN0cmluZyxcbiAgICAgICAgZHJpdmVVcmlzOiBzdHJpbmdbXVxuICAgICk6IFByb21pc2U8RXhjZWxzVG9QYXJ0aWFsRnVmc1Jlc3BvbnNlIHwgdW5kZWZpbmVkPjtcbiAgICBpbXBvcnRGcm9tUGFydGlhbEZ1ZnNCeVBhdGgoXG4gICAgICAgIHBhdGhUb1RhYmxlOiBzdHJpbmcsXG4gICAgICAgIGRyaXZlVXJpOiBzdHJpbmdbXSxcbiAgICAgICAgY29tYmluZU1ldGhvZDogc3RyaW5nLFxuICAgICAgICBjb21iaW5hdG9yVHlwZTogQ29tYmluYXRvclR5cGVcbiAgICApOiBQcm9taXNlPEltcG9ydEZyb21QYXJ0aWFsRnVmc0J5UGF0aFJlc3BvbnNlIHwgdW5kZWZpbmVkPjtcbiAgICBtdWx0aXBsZUNvbWJpbmVGdWZCeURyaXZlVXJpKFxuICAgICAgICBkcml2ZVVyaXM6IHN0cmluZ1tdLFxuICAgICAgICBjb21iaW5lTWV0aG9kOiBGdWZDb21iaW5lTWV0aG9kLFxuICAgICAgICBhcmdzPzogc3RyaW5nW11cbiAgICApOiBQcm9taXNlPENvbWJpbmVGdWZSZXN1bHQgfCB1bmRlZmluZWQ+O1xuICAgIGltcG9ydFhtbHMoXG4gICAgICAgIGRyaXZlVXJpczogc3RyaW5nW10sXG4gICAgICAgIGNvbWJpbmVNZXRob2Q6IEZ1ZkNvbWJpbmVNZXRob2QsXG4gICAgICAgIGNvbWJpbmF0b3JUeXBlOiBDb21iaW5hdG9yVHlwZSxcbiAgICAgICAgaXNJbXBvcnRCeUZ1ZjogYm9vbGVhbixcbiAgICAgICAgYXJncz86IHN0cmluZ1tdXG4gICAgKTogUHJvbWlzZTxDb21iaW5lRnVmUmVzdWx0IHwgdW5kZWZpbmVkPjtcbiAgICBzZXREcmFmdFNldHRpbmdzKHNldHRpbmdzOiBEcmFmdFNldHRpbmdzKTogUHJvbWlzZTx2b2lkPjtcbiAgICBnZXREcmFmdFNldHRpbmdzKCk6IFByb21pc2U8RHJhZnRTZXR0aW5ncz47XG4gICAgLy8gZW5kcmVnaW9uXG5cbiAgICBub3JtYWxpemVCeVJ1bGVzKHJ1bGVzOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+O1xuXG4gICAgZ2V0SHJlZkRvd25sb2FkRnVmKCk6IHN0cmluZztcbiAgICBnZXRIcmVmRG93bmxvYWRJbm5lcigpOiBzdHJpbmc7XG4gICAgZ2V0SHJlZlRvQ29udmVydGF0aW9uTG9nKCk6IHN0cmluZztcbiAgICBnZXRIcmVmVG9Eb3dubG9hZElubmVyRnVmKCk6IHN0cmluZztcbiAgICBnZXRIcmVmVG9Eb3dubG9hZENsaWVudEluZm8oKTogc3RyaW5nO1xuICAgIGdldEhyZWZUb0Rvd25sb2FkRm9ybXNDbGllbnRJbmZvKCk6IHN0cmluZztcbiAgICBnZXRIcmVmVG9Jbm5lckVkaXRvcigpOiBzdHJpbmc7XG5cbiAgICBnZXRGdWZXaXRoQXR0YWNobWVudHMoKTogUHJvbWlzZTxGdWZXaXRoQXR0YWNobWVudHNSZXNwb25zZSB8IHVuZGVmaW5lZD47XG4gICAgZ2V0UGFydGlhbEZ1ZihydWxlczogc3RyaW5nW10pOiBQcm9taXNlPEJhc2VHZXRGdWZSZXNwb25zZSB8IHVuZGVmaW5lZD47XG4gICAgZ2V0SW5uZXJGdWYoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuXG4gICAgc2V0TXVsdGlwbGVXaXRoTm9ybWFsaXphdGlvbihydWxlczogVmFsdWVGb3JJbnN0YW5jZXNTZXR0aW5nUnVsZVtdKTogUHJvbWlzZTx2b2lkPjtcblxuICAgIG5vcm1hbGl6ZURpcnR5TWFza3MoKTogUHJvbWlzZTxJSW5uZXJDaGFuZ2VSZXN1bHQ+O1xuXG4gICAgc2VhcmNoSW5zdGFuY2VzQnlUZXh0KFxuICAgICAgICB0ZXh0OiBzdHJpbmcsXG4gICAgICAgIHBhdGhQcmVmaXg6IHN0cmluZyxcbiAgICAgICAgcGF0aHNUb1NlYXJjaDogc3RyaW5nW10sXG4gICAgICAgIG1heEluc3RhbmNlQ291bnQ/OiBudW1iZXJcbiAgICApOiBQcm9taXNlPHN0cmluZ1tdPjtcblxuICAgIHF1ZXJ5Q29sbGVjdGlvbihyZXF1ZXN0OiBJbm5lclF1ZXJ5UmVxdWVzdCwgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8SW5uZXJRdWVyeVJlc3BvbnNlPjtcblxuICAgIGN1c3RvbU5vcm1hbGl6ZShcbiAgICAgICAgbm9ybWFsaXplcklkOiBzdHJpbmcgfCBudWxsLFxuICAgICAgICBwYXRoUHJlZml4ZXM6IEFic29sdXRlTW9kZWxQYXRoW10sXG4gICAgICAgIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWxcbiAgICApOiBQcm9taXNlPElJbm5lckNoYW5nZVJlc3VsdD47XG4gICAgaW1wb3J0RW1wbG95ZWVzKHJlcXVlc3Q6IEltcG9ydEVtcGxveWVlc1JlcXVlc3QpOiBQcm9taXNlPHZvaWQ+O1xuICAgIHJ1bk1hc3NBY3Rpb24oYWN0aW9uSWQ6IHN0cmluZywgcGFyYW1ldGVycz86IE1hc3NBY3Rpb25QYXJhbWV0ZXJzKTogUHJvbWlzZTx2b2lkPjtcbiAgICBkZWxldGVJbnN0YW5jZXMoZGVsZXRpbmdSdWxlczogSW5zdGFuY2VzRGVsZXRpbmdSdWxlW10pOiBQcm9taXNlPHZvaWQ+O1xuICAgIHByaW50RXhjZWwocGF0aFRvVGFibGU6IHN0cmluZyk6IFByb21pc2U8UHJpbnRSZXNwb25zZSB8IHVuZGVmaW5lZD47XG5cbiAgICByZXNvbHZlSW5uZXJQYXRoKHJlcXVlc3Q6IFJlc29sdmVJbm5lclBhdGhSZXF1ZXN0LCBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsKTogUHJvbWlzZTxSZXNvbHZlUGF0aFJlc3BvbnNlPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlR2V0RnVmUmVzcG9uc2Uge1xuICAgIENvbnRlbnRVcmk6IHN0cmluZztcbiAgICBOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnVmV2l0aEF0dGFjaG1lbnRzUmVzcG9uc2Uge1xuICAgIEZ1ZjogQmFzZUdldEZ1ZlJlc3BvbnNlO1xuICAgIGF0dGFjaG1lbnRzOiBHZXRBdHRhY2htZW50c1Jlc3BvbnNlW107XG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
6
|
+
//# sourceMappingURL=ICandyApiClient.js.map
|
|
@@ -12,4 +12,4 @@ exports.isBuffer = isBuffer;
|
|
|
12
12
|
function isBuffer(obj) {
|
|
13
13
|
return typeof obj === "object" && obj != undefined && obj.constructor != undefined && typeof obj.constructor["isBuffer"] === "function" && Boolean(obj.constructor["isBuffer"](obj));
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=IsBuffer.js.map
|