// EXPORTS __webpack_require__.d(__webpack_exports__, { XJ: () => (/* reexport */ getUserAgentPlugin), er: () => (/* reexport */ resolveUserAgentConfig) }); // UNUSED EXPORTS: DEFAULT_UA_APP_ID, getUserAgentMiddlewareOptions, userAgentMiddleware // EXTERNAL MODULE: ./node_modules/@smithy/core/dist-es/index.js + 18 modules var dist_es = __webpack_require__(4761); ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js const DEFAULT_UA_APP_ID = undefined; function isValidUserAgentAppId(appId) { if (appId === undefined) { return true; } return typeof appId === "string" && appId.length <= 50; } function resolveUserAgentConfig(input) { const normalizedAppIdProvider = (0,dist_es/* normalizeProvider */.$E)(input.userAgentAppId ?? DEFAULT_UA_APP_ID); return { ...input, customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent, userAgentAppId: async () => { const appId = await normalizedAppIdProvider(); if (!isValidUserAgentAppId(appId)) { const logger = input.logger?.constructor?.name === "NoOpLogger" || !input.logger ? console : input.logger; if (typeof appId !== "string") { logger?.warn("userAgentAppId must be a string or undefined."); } else if (appId.length > 50) { logger?.warn("The provided userAgentAppId exceeds the maximum length of 50 characters."); } } return appId; }, }; } // EXTERNAL MODULE: ./node_modules/@aws-sdk/util-endpoints/dist-es/index.js + 9 modules var util_endpoints_dist_es = __webpack_require__(7714); // EXTERNAL MODULE: ./node_modules/@smithy/protocol-http/dist-es/index.js + 5 modules var protocol_http_dist_es = __webpack_require__(6580); ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js function setFeature(context, feature, value) { if (!context.__aws_sdk_context) { context.__aws_sdk_context = { features: {}, }; } else if (!context.__aws_sdk_context.features) { context.__aws_sdk_context.features = {}; } context.__aws_sdk_context.features[feature] = value; } ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/middleware-user-agent/dist-es/check-features.js const ACCOUNT_ID_ENDPOINT_REGEX = /\d{12}\.ddb/; async function checkFeatures(context, config, args) { const request = args.request; if (request?.headers?.["smithy-protocol"] === "rpc-v2-cbor") { setFeature(context, "PROTOCOL_RPC_V2_CBOR", "M"); } if (typeof config.retryStrategy === "function") { const retryStrategy = await config.retryStrategy(); if (typeof retryStrategy.acquireInitialRetryToken === "function") { if (retryStrategy.constructor?.name?.includes("Adaptive")) { setFeature(context, "RETRY_MODE_ADAPTIVE", "F"); } else { setFeature(context, "RETRY_MODE_STANDARD", "E"); } } else { setFeature(context, "RETRY_MODE_LEGACY", "D"); } } if (typeof config.accountIdEndpointMode === "function") { const endpointV2 = context.endpointV2; if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) { setFeature(context, "ACCOUNT_ID_ENDPOINT", "O"); } switch (await config.accountIdEndpointMode?.()) { case "disabled": setFeature(context, "ACCOUNT_ID_MODE_DISABLED", "Q"); break; case "preferred": setFeature(context, "ACCOUNT_ID_MODE_PREFERRED", "P"); break; case "required": setFeature(context, "ACCOUNT_ID_MODE_REQUIRED", "R"); break; } } const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity; if (identity?.$source) { const credentials = identity; if (credentials.accountId) { setFeature(context, "RESOLVED_ACCOUNT_ID", "T"); } for (const [key, value] of Object.entries(credentials.$source ?? {})) { setFeature(context, key, value); } } } ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js const USER_AGENT = "user-agent"; const X_AMZ_USER_AGENT = "x-amz-user-agent"; const SPACE = " "; const UA_NAME_SEPARATOR = "/"; const UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g; const UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g; const UA_ESCAPE_CHAR = "-"; ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/middleware-user-agent/dist-es/encode-features.js const BYTE_LIMIT = 1024; function encodeFeatures(features) { let buffer = ""; for (const key in features) { const val = features[key]; if (buffer.length + val.length + 1 <= BYTE_LIMIT) { if (buffer.length) { buffer += "," + val; } else { buffer += val; } continue; } break; } return buffer; } ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js const userAgentMiddleware = (options) => (next, context) => async (args) => { const { request } = args; if (!protocol_http_dist_es/* HttpRequest */.aW.isInstance(request)) { return next(args); } const { headers } = request; const userAgent = context?.userAgent?.map(escapeUserAgent) || []; const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent); await checkFeatures(context, options, args); const awsContext = context; defaultUserAgent.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`); const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || []; const appId = await options.userAgentAppId(); if (appId) { defaultUserAgent.push(escapeUserAgent([`app/${appId}`])); } const prefix = (0,util_endpoints_dist_es/* getUserAgentPrefix */.Qj)(); const sdkUserAgentValue = (prefix ? [prefix] : []) .concat([...defaultUserAgent, ...userAgent, ...customUserAgent]) .join(SPACE); const normalUAValue = [ ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")), ...customUserAgent, ].join(SPACE); if (options.runtime !== "browser") { if (normalUAValue) { headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue; } headers[USER_AGENT] = sdkUserAgentValue; } else { headers[X_AMZ_USER_AGENT] = sdkUserAgentValue; } return next({ ...args, request, }); }; const escapeUserAgent = (userAgentPair) => { const name = userAgentPair[0] .split(UA_NAME_SEPARATOR) .map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)) .join(UA_NAME_SEPARATOR); const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR); const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR); const prefix = name.substring(0, prefixSeparatorIndex); let uaName = name.substring(prefixSeparatorIndex + 1); if (prefix === "api") { uaName = uaName.toLowerCase(); } return [prefix, uaName, version] .filter((item) => item && item.length > 0) .reduce((acc, item, index) => { switch (index) { case 0: return item; case 1: return `${acc}/${item}`; default: return `${acc}#${item}`; } }, ""); }; const getUserAgentMiddlewareOptions = { name: "getUserAgentMiddleware", step: "build", priority: "low", tags: ["SET_USER_AGENT", "USER_AGENT"], override: true, }; const getUserAgentPlugin = (config) => ({ applyToStack: (clientStack) => { clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions); }, }); ;// CONCATENATED MODULE: ./node_modules/@aws-sdk/middleware-user-agent/dist-es/index.js //# sourceURL=[module] //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDM3OC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7OztBQzNCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUNWQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FDaERBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUNOQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQ2pCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FDakZBO0FBQ0EiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9tYXR0cnotY3gtbGlicmFyeS8uL25vZGVfbW9kdWxlcy9AYXdzLXNkay9taWRkbGV3YXJlLXVzZXItYWdlbnQvZGlzdC1lcy9jb25maWd1cmF0aW9ucy5qcz84MmFiIiwid2VicGFjazovL21hdHRyei1jeC1saWJyYXJ5Ly4vbm9kZV9tb2R1bGVzL0Bhd3Mtc2RrL2NvcmUvZGlzdC1lcy9zdWJtb2R1bGVzL2NsaWVudC9zZXRGZWF0dXJlLmpzP2UxYTgiLCJ3ZWJwYWNrOi8vbWF0dHJ6LWN4LWxpYnJhcnkvLi9ub2RlX21vZHVsZXMvQGF3cy1zZGsvbWlkZGxld2FyZS11c2VyLWFnZW50L2Rpc3QtZXMvY2hlY2stZmVhdHVyZXMuanM/MTY1MSIsIndlYnBhY2s6Ly9tYXR0cnotY3gtbGlicmFyeS8uL25vZGVfbW9kdWxlcy9AYXdzLXNkay9taWRkbGV3YXJlLXVzZXItYWdlbnQvZGlzdC1lcy9jb25zdGFudHMuanM/ZWY5MCIsIndlYnBhY2s6Ly9tYXR0cnotY3gtbGlicmFyeS8uL25vZGVfbW9kdWxlcy9AYXdzLXNkay9taWRkbGV3YXJlLXVzZXItYWdlbnQvZGlzdC1lcy9lbmNvZGUtZmVhdHVyZXMuanM/ZGEyMiIsIndlYnBhY2s6Ly9tYXR0cnotY3gtbGlicmFyeS8uL25vZGVfbW9kdWxlcy9AYXdzLXNkay9taWRkbGV3YXJlLXVzZXItYWdlbnQvZGlzdC1lcy91c2VyLWFnZW50LW1pZGRsZXdhcmUuanM/MjNmZiIsIndlYnBhY2s6Ly9tYXR0cnotY3gtbGlicmFyeS8uL25vZGVfbW9kdWxlcy9AYXdzLXNkay9taWRkbGV3YXJlLXVzZXItYWdlbnQvZGlzdC1lcy9pbmRleC5qcz9hYjFhIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vcm1hbGl6ZVByb3ZpZGVyIH0gZnJvbSBcIkBzbWl0aHkvY29yZVwiO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfVUFfQVBQX0lEID0gdW5kZWZpbmVkO1xuZnVuY3Rpb24gaXNWYWxpZFVzZXJBZ2VudEFwcElkKGFwcElkKSB7XG4gICAgaWYgKGFwcElkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiB0eXBlb2YgYXBwSWQgPT09IFwic3RyaW5nXCIgJiYgYXBwSWQubGVuZ3RoIDw9IDUwO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVVc2VyQWdlbnRDb25maWcoaW5wdXQpIHtcbiAgICBjb25zdCBub3JtYWxpemVkQXBwSWRQcm92aWRlciA9IG5vcm1hbGl6ZVByb3ZpZGVyKGlucHV0LnVzZXJBZ2VudEFwcElkID8/IERFRkFVTFRfVUFfQVBQX0lEKTtcbiAgICByZXR1cm4ge1xuICAgICAgICAuLi5pbnB1dCxcbiAgICAgICAgY3VzdG9tVXNlckFnZW50OiB0eXBlb2YgaW5wdXQuY3VzdG9tVXNlckFnZW50ID09PSBcInN0cmluZ1wiID8gW1tpbnB1dC5jdXN0b21Vc2VyQWdlbnRdXSA6IGlucHV0LmN1c3RvbVVzZXJBZ2VudCxcbiAgICAgICAgdXNlckFnZW50QXBwSWQ6IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFwcElkID0gYXdhaXQgbm9ybWFsaXplZEFwcElkUHJvdmlkZXIoKTtcbiAgICAgICAgICAgIGlmICghaXNWYWxpZFVzZXJBZ2VudEFwcElkKGFwcElkKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2dlciA9IGlucHV0LmxvZ2dlcj8uY29uc3RydWN0b3I/Lm5hbWUgPT09IFwiTm9PcExvZ2dlclwiIHx8ICFpbnB1dC5sb2dnZXIgPyBjb25zb2xlIDogaW5wdXQubG9nZ2VyO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgYXBwSWQgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgbG9nZ2VyPy53YXJuKFwidXNlckFnZW50QXBwSWQgbXVzdCBiZSBhIHN0cmluZyBvciB1bmRlZmluZWQuXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmIChhcHBJZC5sZW5ndGggPiA1MCkge1xuICAgICAgICAgICAgICAgICAgICBsb2dnZXI/Lndhcm4oXCJUaGUgcHJvdmlkZWQgdXNlckFnZW50QXBwSWQgZXhjZWVkcyB0aGUgbWF4aW11bSBsZW5ndGggb2YgNTAgY2hhcmFjdGVycy5cIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGFwcElkO1xuICAgICAgICB9LFxuICAgIH07XG59XG4iLCJleHBvcnQgZnVuY3Rpb24gc2V0RmVhdHVyZShjb250ZXh0LCBmZWF0dXJlLCB2YWx1ZSkge1xuICAgIGlmICghY29udGV4dC5fX2F3c19zZGtfY29udGV4dCkge1xuICAgICAgICBjb250ZXh0Ll9fYXdzX3Nka19jb250ZXh0ID0ge1xuICAgICAgICAgICAgZmVhdHVyZXM6IHt9LFxuICAgICAgICB9O1xuICAgIH1cbiAgICBlbHNlIGlmICghY29udGV4dC5fX2F3c19zZGtfY29udGV4dC5mZWF0dXJlcykge1xuICAgICAgICBjb250ZXh0Ll9fYXdzX3Nka19jb250ZXh0LmZlYXR1cmVzID0ge307XG4gICAgfVxuICAgIGNvbnRleHQuX19hd3Nfc2RrX2NvbnRleHQuZmVhdHVyZXNbZmVhdHVyZV0gPSB2YWx1ZTtcbn1cbiIsImltcG9ydCB7IHNldEZlYXR1cmUgfSBmcm9tIFwiQGF3cy1zZGsvY29yZVwiO1xuY29uc3QgQUNDT1VOVF9JRF9FTkRQT0lOVF9SRUdFWCA9IC9cXGR7MTJ9XFwuZGRiLztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0ZlYXR1cmVzKGNvbnRleHQsIGNvbmZpZywgYXJncykge1xuICAgIGNvbnN0IHJlcXVlc3QgPSBhcmdzLnJlcXVlc3Q7XG4gICAgaWYgKHJlcXVlc3Q/LmhlYWRlcnM/LltcInNtaXRoeS1wcm90b2NvbFwiXSA9PT0gXCJycGMtdjItY2JvclwiKSB7XG4gICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJQUk9UT0NPTF9SUENfVjJfQ0JPUlwiLCBcIk1cIik7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgY29uZmlnLnJldHJ5U3RyYXRlZ3kgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICBjb25zdCByZXRyeVN0cmF0ZWd5ID0gYXdhaXQgY29uZmlnLnJldHJ5U3RyYXRlZ3koKTtcbiAgICAgICAgaWYgKHR5cGVvZiByZXRyeVN0cmF0ZWd5LmFjcXVpcmVJbml0aWFsUmV0cnlUb2tlbiA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgICAgICBpZiAocmV0cnlTdHJhdGVneS5jb25zdHJ1Y3Rvcj8ubmFtZT8uaW5jbHVkZXMoXCJBZGFwdGl2ZVwiKSkge1xuICAgICAgICAgICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJSRVRSWV9NT0RFX0FEQVBUSVZFXCIsIFwiRlwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJSRVRSWV9NT0RFX1NUQU5EQVJEXCIsIFwiRVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJSRVRSWV9NT0RFX0xFR0FDWVwiLCBcIkRcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHR5cGVvZiBjb25maWcuYWNjb3VudElkRW5kcG9pbnRNb2RlID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgICAgY29uc3QgZW5kcG9pbnRWMiA9IGNvbnRleHQuZW5kcG9pbnRWMjtcbiAgICAgICAgaWYgKFN0cmluZyhlbmRwb2ludFYyPy51cmw/Lmhvc3RuYW1lKS5tYXRjaChBQ0NPVU5UX0lEX0VORFBPSU5UX1JFR0VYKSkge1xuICAgICAgICAgICAgc2V0RmVhdHVyZShjb250ZXh0LCBcIkFDQ09VTlRfSURfRU5EUE9JTlRcIiwgXCJPXCIpO1xuICAgICAgICB9XG4gICAgICAgIHN3aXRjaCAoYXdhaXQgY29uZmlnLmFjY291bnRJZEVuZHBvaW50TW9kZT8uKCkpIHtcbiAgICAgICAgICAgIGNhc2UgXCJkaXNhYmxlZFwiOlxuICAgICAgICAgICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJBQ0NPVU5UX0lEX01PREVfRElTQUJMRURcIiwgXCJRXCIpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcInByZWZlcnJlZFwiOlxuICAgICAgICAgICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJBQ0NPVU5UX0lEX01PREVfUFJFRkVSUkVEXCIsIFwiUFwiKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJyZXF1aXJlZFwiOlxuICAgICAgICAgICAgICAgIHNldEZlYXR1cmUoY29udGV4dCwgXCJBQ0NPVU5UX0lEX01PREVfUkVRVUlSRURcIiwgXCJSXCIpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGlkZW50aXR5ID0gY29udGV4dC5fX3NtaXRoeV9jb250ZXh0Py5zZWxlY3RlZEh0dHBBdXRoU2NoZW1lPy5pZGVudGl0eTtcbiAgICBpZiAoaWRlbnRpdHk/LiRzb3VyY2UpIHtcbiAgICAgICAgY29uc3QgY3JlZGVudGlhbHMgPSBpZGVudGl0eTtcbiAgICAgICAgaWYgKGNyZWRlbnRpYWxzLmFjY291bnRJZCkge1xuICAgICAgICAgICAgc2V0RmVhdHVyZShjb250ZXh0LCBcIlJFU09MVkVEX0FDQ09VTlRfSURcIiwgXCJUXCIpO1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGNyZWRlbnRpYWxzLiRzb3VyY2UgPz8ge30pKSB7XG4gICAgICAgICAgICBzZXRGZWF0dXJlKGNvbnRleHQsIGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiZXhwb3J0IGNvbnN0IFVTRVJfQUdFTlQgPSBcInVzZXItYWdlbnRcIjtcbmV4cG9ydCBjb25zdCBYX0FNWl9VU0VSX0FHRU5UID0gXCJ4LWFtei11c2VyLWFnZW50XCI7XG5leHBvcnQgY29uc3QgU1BBQ0UgPSBcIiBcIjtcbmV4cG9ydCBjb25zdCBVQV9OQU1FX1NFUEFSQVRPUiA9IFwiL1wiO1xuZXhwb3J0IGNvbnN0IFVBX05BTUVfRVNDQVBFX1JFR0VYID0gL1teXFwhXFwkXFwlXFwmXFwnXFwqXFwrXFwtXFwuXFxeXFxfXFxgXFx8XFx+XFxkXFx3XS9nO1xuZXhwb3J0IGNvbnN0IFVBX1ZBTFVFX0VTQ0FQRV9SRUdFWCA9IC9bXlxcIVxcJFxcJVxcJlxcJ1xcKlxcK1xcLVxcLlxcXlxcX1xcYFxcfFxcflxcZFxcd1xcI10vZztcbmV4cG9ydCBjb25zdCBVQV9FU0NBUEVfQ0hBUiA9IFwiLVwiO1xuIiwiY29uc3QgQllURV9MSU1JVCA9IDEwMjQ7XG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlRmVhdHVyZXMoZmVhdHVyZXMpIHtcbiAgICBsZXQgYnVmZmVyID0gXCJcIjtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBmZWF0dXJlcykge1xuICAgICAgICBjb25zdCB2YWwgPSBmZWF0dXJlc1trZXldO1xuICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCArIHZhbC5sZW5ndGggKyAxIDw9IEJZVEVfTElNSVQpIHtcbiAgICAgICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgYnVmZmVyICs9IFwiLFwiICsgdmFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgYnVmZmVyICs9IHZhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICByZXR1cm4gYnVmZmVyO1xufVxuIiwiaW1wb3J0IHsgZ2V0VXNlckFnZW50UHJlZml4IH0gZnJvbSBcIkBhd3Mtc2RrL3V0aWwtZW5kcG9pbnRzXCI7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdCB9IGZyb20gXCJAc21pdGh5L3Byb3RvY29sLWh0dHBcIjtcbmltcG9ydCB7IGNoZWNrRmVhdHVyZXMgfSBmcm9tIFwiLi9jaGVjay1mZWF0dXJlc1wiO1xuaW1wb3J0IHsgU1BBQ0UsIFVBX0VTQ0FQRV9DSEFSLCBVQV9OQU1FX0VTQ0FQRV9SRUdFWCwgVUFfTkFNRV9TRVBBUkFUT1IsIFVBX1ZBTFVFX0VTQ0FQRV9SRUdFWCwgVVNFUl9BR0VOVCwgWF9BTVpfVVNFUl9BR0VOVCwgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGVuY29kZUZlYXR1cmVzIH0gZnJvbSBcIi4vZW5jb2RlLWZlYXR1cmVzXCI7XG5leHBvcnQgY29uc3QgdXNlckFnZW50TWlkZGxld2FyZSA9IChvcHRpb25zKSA9PiAobmV4dCwgY29udGV4dCkgPT4gYXN5bmMgKGFyZ3MpID0+IHtcbiAgICBjb25zdCB7IHJlcXVlc3QgfSA9IGFyZ3M7XG4gICAgaWYgKCFIdHRwUmVxdWVzdC5pc0luc3RhbmNlKHJlcXVlc3QpKSB7XG4gICAgICAgIHJldHVybiBuZXh0KGFyZ3MpO1xuICAgIH1cbiAgICBjb25zdCB7IGhlYWRlcnMgfSA9IHJlcXVlc3Q7XG4gICAgY29uc3QgdXNlckFnZW50ID0gY29udGV4dD8udXNlckFnZW50Py5tYXAoZXNjYXBlVXNlckFnZW50KSB8fCBbXTtcbiAgICBjb25zdCBkZWZhdWx0VXNlckFnZW50ID0gKGF3YWl0IG9wdGlvbnMuZGVmYXVsdFVzZXJBZ2VudFByb3ZpZGVyKCkpLm1hcChlc2NhcGVVc2VyQWdlbnQpO1xuICAgIGF3YWl0IGNoZWNrRmVhdHVyZXMoY29udGV4dCwgb3B0aW9ucywgYXJncyk7XG4gICAgY29uc3QgYXdzQ29udGV4dCA9IGNvbnRleHQ7XG4gICAgZGVmYXVsdFVzZXJBZ2VudC5wdXNoKGBtLyR7ZW5jb2RlRmVhdHVyZXMoT2JqZWN0LmFzc2lnbih7fSwgY29udGV4dC5fX3NtaXRoeV9jb250ZXh0Py5mZWF0dXJlcywgYXdzQ29udGV4dC5fX2F3c19zZGtfY29udGV4dD8uZmVhdHVyZXMpKX1gKTtcbiAgICBjb25zdCBjdXN0b21Vc2VyQWdlbnQgPSBvcHRpb25zPy5jdXN0b21Vc2VyQWdlbnQ/Lm1hcChlc2NhcGVVc2VyQWdlbnQpIHx8IFtdO1xuICAgIGNvbnN0IGFwcElkID0gYXdhaXQgb3B0aW9ucy51c2VyQWdlbnRBcHBJZCgpO1xuICAgIGlmIChhcHBJZCkge1xuICAgICAgICBkZWZhdWx0VXNlckFnZW50LnB1c2goZXNjYXBlVXNlckFnZW50KFtgYXBwLyR7YXBwSWR9YF0pKTtcbiAgICB9XG4gICAgY29uc3QgcHJlZml4ID0gZ2V0VXNlckFnZW50UHJlZml4KCk7XG4gICAgY29uc3Qgc2RrVXNlckFnZW50VmFsdWUgPSAocHJlZml4ID8gW3ByZWZpeF0gOiBbXSlcbiAgICAgICAgLmNvbmNhdChbLi4uZGVmYXVsdFVzZXJBZ2VudCwgLi4udXNlckFnZW50LCAuLi5jdXN0b21Vc2VyQWdlbnRdKVxuICAgICAgICAuam9pbihTUEFDRSk7XG4gICAgY29uc3Qgbm9ybWFsVUFWYWx1ZSA9IFtcbiAgICAgICAgLi4uZGVmYXVsdFVzZXJBZ2VudC5maWx0ZXIoKHNlY3Rpb24pID0+IHNlY3Rpb24uc3RhcnRzV2l0aChcImF3cy1zZGstXCIpKSxcbiAgICAgICAgLi4uY3VzdG9tVXNlckFnZW50LFxuICAgIF0uam9pbihTUEFDRSk7XG4gICAgaWYgKG9wdGlvbnMucnVudGltZSAhPT0gXCJicm93c2VyXCIpIHtcbiAgICAgICAgaWYgKG5vcm1hbFVBVmFsdWUpIHtcbiAgICAgICAgICAgIGhlYWRlcnNbWF9BTVpfVVNFUl9BR0VOVF0gPSBoZWFkZXJzW1hfQU1aX1VTRVJfQUdFTlRdXG4gICAgICAgICAgICAgICAgPyBgJHtoZWFkZXJzW1VTRVJfQUdFTlRdfSAke25vcm1hbFVBVmFsdWV9YFxuICAgICAgICAgICAgICAgIDogbm9ybWFsVUFWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBoZWFkZXJzW1VTRVJfQUdFTlRdID0gc2RrVXNlckFnZW50VmFsdWU7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBoZWFkZXJzW1hfQU1aX1VTRVJfQUdFTlRdID0gc2RrVXNlckFnZW50VmFsdWU7XG4gICAgfVxuICAgIHJldHVybiBuZXh0KHtcbiAgICAgICAgLi4uYXJncyxcbiAgICAgICAgcmVxdWVzdCxcbiAgICB9KTtcbn07XG5jb25zdCBlc2NhcGVVc2VyQWdlbnQgPSAodXNlckFnZW50UGFpcikgPT4ge1xuICAgIGNvbnN0IG5hbWUgPSB1c2VyQWdlbnRQYWlyWzBdXG4gICAgICAgIC5zcGxpdChVQV9OQU1FX1NFUEFSQVRPUilcbiAgICAgICAgLm1hcCgocGFydCkgPT4gcGFydC5yZXBsYWNlKFVBX05BTUVfRVNDQVBFX1JFR0VYLCBVQV9FU0NBUEVfQ0hBUikpXG4gICAgICAgIC5qb2luKFVBX05BTUVfU0VQQVJBVE9SKTtcbiAgICBjb25zdCB2ZXJzaW9uID0gdXNlckFnZW50UGFpclsxXT8ucmVwbGFjZShVQV9WQUxVRV9FU0NBUEVfUkVHRVgsIFVBX0VTQ0FQRV9DSEFSKTtcbiAgICBjb25zdCBwcmVmaXhTZXBhcmF0b3JJbmRleCA9IG5hbWUuaW5kZXhPZihVQV9OQU1FX1NFUEFSQVRPUik7XG4gICAgY29uc3QgcHJlZml4ID0gbmFtZS5zdWJzdHJpbmcoMCwgcHJlZml4U2VwYXJhdG9ySW5kZXgpO1xuICAgIGxldCB1YU5hbWUgPSBuYW1lLnN1YnN0cmluZyhwcmVmaXhTZXBhcmF0b3JJbmRleCArIDEpO1xuICAgIGlmIChwcmVmaXggPT09IFwiYXBpXCIpIHtcbiAgICAgICAgdWFOYW1lID0gdWFOYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgfVxuICAgIHJldHVybiBbcHJlZml4LCB1YU5hbWUsIHZlcnNpb25dXG4gICAgICAgIC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0gJiYgaXRlbS5sZW5ndGggPiAwKVxuICAgICAgICAucmVkdWNlKChhY2MsIGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgIHN3aXRjaCAoaW5kZXgpIHtcbiAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7YWNjfS8ke2l0ZW19YDtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke2FjY30jJHtpdGVtfWA7XG4gICAgICAgIH1cbiAgICB9LCBcIlwiKTtcbn07XG5leHBvcnQgY29uc3QgZ2V0VXNlckFnZW50TWlkZGxld2FyZU9wdGlvbnMgPSB7XG4gICAgbmFtZTogXCJnZXRVc2VyQWdlbnRNaWRkbGV3YXJlXCIsXG4gICAgc3RlcDogXCJidWlsZFwiLFxuICAgIHByaW9yaXR5OiBcImxvd1wiLFxuICAgIHRhZ3M6IFtcIlNFVF9VU0VSX0FHRU5UXCIsIFwiVVNFUl9BR0VOVFwiXSxcbiAgICBvdmVycmlkZTogdHJ1ZSxcbn07XG5leHBvcnQgY29uc3QgZ2V0VXNlckFnZW50UGx1Z2luID0gKGNvbmZpZykgPT4gKHtcbiAgICBhcHBseVRvU3RhY2s6IChjbGllbnRTdGFjaykgPT4ge1xuICAgICAgICBjbGllbnRTdGFjay5hZGQodXNlckFnZW50TWlkZGxld2FyZShjb25maWcpLCBnZXRVc2VyQWdlbnRNaWRkbGV3YXJlT3B0aW9ucyk7XG4gICAgfSxcbn0pO1xuIiwiZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3VzZXItYWdlbnQtbWlkZGxld2FyZVwiO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9 //# sourceURL=webpack-internal:///4378