@commercetools-frontend/application-shell 22.3.0 → 22.3.1

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.
Files changed (83) hide show
  1. package/dist/{application-entry-point-2333abb6.cjs.prod.js → application-entry-point-157014e2.cjs.prod.js} +1 -1
  2. package/dist/{application-entry-point-0c3254b0.cjs.dev.js → application-entry-point-d7bdf367.cjs.dev.js} +1 -1
  3. package/dist/{application-entry-point-a1dfe994.esm.js → application-entry-point-e65e8ca0.esm.js} +1 -1
  4. package/dist/commercetools-frontend-application-shell.cjs.dev.js +4 -4
  5. package/dist/commercetools-frontend-application-shell.cjs.prod.js +4 -4
  6. package/dist/commercetools-frontend-application-shell.esm.js +4 -4
  7. package/dist/{configure-apollo-de2b9aa2.cjs.dev.js → configure-apollo-5a4d9cd7.cjs.dev.js} +2 -2
  8. package/dist/{configure-apollo-89ea99bf.esm.js → configure-apollo-972ea75d.esm.js} +2 -2
  9. package/dist/{configure-apollo-70d83707.cjs.prod.js → configure-apollo-af4ea1c4.cjs.prod.js} +2 -2
  10. package/dist/{constants-b962b73e.esm.js → constants-16199962.esm.js} +1 -2
  11. package/dist/{constants-902cf3f3.cjs.prod.js → constants-539514a6.cjs.prod.js} +1 -2
  12. package/dist/{constants-e51cdcc0.cjs.dev.js → constants-e1225230.cjs.dev.js} +1 -2
  13. package/dist/declarations/src/constants.d.ts +0 -1
  14. package/dist/declarations/src/feature-toggles.d.ts +1 -4
  15. package/dist/{error-apologizer-a5c03978.cjs.dev.js → error-apologizer-b3872f4d.cjs.prod.js} +3 -3
  16. package/dist/{error-apologizer-24ad0b88.cjs.prod.js → error-apologizer-c3210e30.cjs.dev.js} +3 -3
  17. package/dist/{error-apologizer-55551c07.esm.js → error-apologizer-e5c28e4c.esm.js} +2 -2
  18. package/dist/{index-a03f4e81.cjs.prod.js → index-5e1db8be.cjs.prod.js} +22 -42
  19. package/dist/{index-667035b8.esm.js → index-5eea3772.esm.js} +38 -58
  20. package/dist/{index-02a17607.cjs.dev.js → index-857b1320.cjs.dev.js} +36 -56
  21. package/dist/{navbar-84dc97f9.esm.js → navbar-0ad08a56.esm.js} +5 -5
  22. package/dist/{navbar-1b61993a.cjs.dev.js → navbar-f7706903.cjs.dev.js} +5 -5
  23. package/dist/{navbar-00a55ccf.cjs.prod.js → navbar-ffea6503.cjs.prod.js} +5 -5
  24. package/dist/{oidc-da4ccc69.cjs.prod.js → oidc-73f8d7c7.cjs.prod.js} +1 -1
  25. package/dist/{oidc-4895bd80.cjs.dev.js → oidc-7b43f6c0.cjs.dev.js} +1 -1
  26. package/dist/{oidc-callback-121ef6c1.cjs.prod.js → oidc-callback-0e62e010.cjs.prod.js} +11 -8
  27. package/dist/{oidc-callback-cddf8bb4.esm.js → oidc-callback-796ee4fa.esm.js} +14 -11
  28. package/dist/{oidc-callback-e60075ab.cjs.dev.js → oidc-callback-b3343f35.cjs.dev.js} +12 -9
  29. package/dist/{oidc-d7f0409a.esm.js → oidc-cd2edc3c.esm.js} +1 -1
  30. package/dist/project-container-26b61532.esm.js +335 -0
  31. package/dist/{project-container-e7f950b0.cjs.prod.js → project-container-2ed314f8.cjs.prod.js} +11 -15
  32. package/dist/{project-container-51e70095.cjs.dev.js → project-container-881d8b44.cjs.dev.js} +13 -17
  33. package/dist/{project-expired-fd3efa19.cjs.dev.js → project-expired-24128077.cjs.dev.js} +5 -5
  34. package/dist/{project-expired-513a8320.esm.js → project-expired-6c22fecb.esm.js} +5 -5
  35. package/dist/{project-expired-1cd4843f.cjs.prod.js → project-expired-bab18d07.cjs.prod.js} +5 -5
  36. package/dist/{project-not-found-9f21b30c.cjs.prod.js → project-not-found-4f87bee6.cjs.prod.js} +8 -8
  37. package/dist/{project-not-found-8bab15e7.esm.js → project-not-found-ba59f27d.esm.js} +7 -7
  38. package/dist/{project-not-found-e5eb5b7e.cjs.dev.js → project-not-found-ccb94dd0.cjs.dev.js} +8 -8
  39. package/dist/{project-not-initialized-3cdb8692.cjs.dev.js → project-not-initialized-269d3e73.cjs.dev.js} +5 -5
  40. package/dist/{project-not-initialized-a1a8d9dc.cjs.prod.js → project-not-initialized-8be60e0d.cjs.prod.js} +5 -5
  41. package/dist/{project-not-initialized-a8562fd3.esm.js → project-not-initialized-b0767967.esm.js} +5 -5
  42. package/dist/{project-suspended-e0fb960a.esm.js → project-suspended-0d0a4ac6.esm.js} +6 -6
  43. package/dist/{project-suspended-8a558cb8.cjs.prod.js → project-suspended-66d01226.cjs.prod.js} +6 -6
  44. package/dist/{project-suspended-79c67f38.cjs.dev.js → project-suspended-facb24cd.cjs.dev.js} +6 -6
  45. package/dist/{quick-access-ff6fee75.cjs.prod.js → quick-access-2ed3fd12.cjs.prod.js} +4 -4
  46. package/dist/{quick-access-0fb30eee.cjs.dev.js → quick-access-62053676.cjs.dev.js} +4 -4
  47. package/dist/{quick-access-8c7919d2.esm.js → quick-access-891af546.esm.js} +4 -4
  48. package/dist/{redirect-to-login-3c2a1258.cjs.prod.js → redirect-to-login-b5d8de15.cjs.prod.js} +3 -3
  49. package/dist/{redirect-to-login-73396807.cjs.dev.js → redirect-to-login-e33aa893.cjs.dev.js} +3 -3
  50. package/dist/{redirect-to-login-02167259.esm.js → redirect-to-login-ff44dcb2.esm.js} +3 -3
  51. package/dist/{redirect-to-logout-b5c8fdbf.esm.js → redirect-to-logout-0f2161c2.esm.js} +4 -4
  52. package/dist/{redirect-to-logout-838758f3.cjs.prod.js → redirect-to-logout-81526f74.cjs.prod.js} +4 -4
  53. package/dist/{redirect-to-logout-be3e139d.cjs.dev.js → redirect-to-logout-fc0ae5de.cjs.dev.js} +4 -4
  54. package/dist/{requests-in-flight-loader-d7963726.cjs.prod.js → requests-in-flight-loader-13d9681f.cjs.prod.js} +4 -4
  55. package/dist/{requests-in-flight-loader-3a40411c.cjs.dev.js → requests-in-flight-loader-ac7b2a0f.cjs.dev.js} +4 -4
  56. package/dist/{requests-in-flight-loader-78bce8a5.esm.js → requests-in-flight-loader-f468445d.esm.js} +4 -4
  57. package/dist/{service-page-project-switcher-617a204e.cjs.prod.js → service-page-project-switcher-11aecc87.cjs.prod.js} +1 -1
  58. package/dist/{service-page-project-switcher-b99782a7.esm.js → service-page-project-switcher-13eb36e5.esm.js} +1 -1
  59. package/dist/{service-page-project-switcher-2a4bc3ee.cjs.dev.js → service-page-project-switcher-83de5bb7.cjs.dev.js} +1 -1
  60. package/dist/{use-applications-menu-daf4a744.esm.js → use-applications-menu-02a22697.esm.js} +1 -1
  61. package/dist/{use-applications-menu-2046cce4.cjs.dev.js → use-applications-menu-0910ece6.cjs.dev.js} +1 -1
  62. package/dist/{use-applications-menu-84a888d7.cjs.prod.js → use-applications-menu-8655a71c.cjs.prod.js} +1 -1
  63. package/dist/user-settings-menu-65b62e28.cjs.dev.js +430 -0
  64. package/dist/user-settings-menu-9c793af8.esm.js +404 -0
  65. package/dist/{user-settings-menu-c50b95e4.cjs.prod.js → user-settings-menu-ca99a56d.cjs.prod.js} +30 -78
  66. package/dist/{version-tracker-4ad14ed3.cjs.prod.js → version-tracker-9b501e9f.cjs.prod.js} +2 -2
  67. package/dist/{version-tracker-3b9eb5c6.cjs.dev.js → version-tracker-a0c89744.cjs.dev.js} +2 -2
  68. package/dist/{version-tracker-f2e3185f.esm.js → version-tracker-f32b1176.esm.js} +2 -2
  69. package/package.json +16 -16
  70. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +2 -2
  71. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +2 -2
  72. package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +2 -2
  73. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +3 -3
  74. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +3 -3
  75. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +3 -3
  76. package/dist/declarations/src/components/theme-switcher/messages.d.ts +0 -11
  77. package/dist/declarations/src/components/theme-switcher/new-design-release-info-dialog.d.ts +0 -5
  78. package/dist/new-design-release-info-dialog-57843832.cjs.dev.js +0 -69
  79. package/dist/new-design-release-info-dialog-730137e2.cjs.prod.js +0 -69
  80. package/dist/new-design-release-info-dialog-e2cd95fa.esm.js +0 -53
  81. package/dist/project-container-98c2a789.esm.js +0 -339
  82. package/dist/user-settings-menu-b8ecc868.esm.js +0 -454
  83. package/dist/user-settings-menu-fe393647.cjs.dev.js +0 -480
@@ -1,454 +0,0 @@
1
- import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
2
- import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
3
- import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
4
- import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
5
- import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/for-each';
6
- import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
7
- import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
8
- import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
9
- import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
10
- import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
11
- import _styled from '@emotion/styled/base';
12
- import _pt from 'prop-types';
13
- import _findInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/find';
14
- import _startsWithInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/starts-with';
15
- import _trimInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/trim';
16
- import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map';
17
- import { useState, useCallback, useRef, useEffect } from 'react';
18
- import { css } from '@emotion/react';
19
- import { ToggleFeature } from '@flopflip/react-broadcast';
20
- import Downshift from 'downshift';
21
- import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
22
- import { Link } from 'react-router-dom';
23
- import { designTokens as designTokens$1 } from '@commercetools-frontend/application-components';
24
- import { useApplicationContext } from '@commercetools-frontend/application-shell-connectors';
25
- import { SUPPORT_PORTAL_URL, LOGOUT_REASONS, NO_VALUE_FALLBACK } from '@commercetools-frontend/constants';
26
- import { reportErrorToSentry } from '@commercetools-frontend/sentry';
27
- import AccessibleHidden from '@commercetools-uikit/accessible-hidden';
28
- import Avatar from '@commercetools-uikit/avatar';
29
- import { useTheme, designTokens } from '@commercetools-uikit/design-system';
30
- import { CaretDownIcon } from '@commercetools-uikit/icons';
31
- import Spacings from '@commercetools-uikit/spacings';
32
- import Text from '@commercetools-uikit/text';
33
- import { D as DIMENSIONS } from './constants-b962b73e.esm.js';
34
- import { u as useApplicationsMenu } from './use-applications-menu-daf4a744.esm.js';
35
- import { jsx, jsxs, Fragment } from '@emotion/react/jsx-runtime';
36
- import '@babel/runtime-corejs3/core-js-stable/instance/concat';
37
- import '@apollo/client';
38
- import './index-667035b8.esm.js';
39
- import './configure-apollo-89ea99bf.esm.js';
40
- import '@babel/runtime-corejs3/core-js-stable/instance/reduce';
41
- import '@babel/runtime-corejs3/core-js-stable/object/entries';
42
- import '@babel/runtime-corejs3/core-js-stable/reflect/has';
43
- import '@reduxjs/toolkit';
44
- import 'lodash/mapValues';
45
- import 'omit-empty-es';
46
- import 'redux-thunk';
47
- import '@commercetools-frontend/notifications';
48
- import '@commercetools-frontend/sdk';
49
- import '@babel/runtime-corejs3/core-js-stable/instance/index-of';
50
- import '@babel/runtime-corejs3/core-js-stable/instance/slice';
51
- import '@babel/runtime-corejs3/core-js-stable/instance/includes';
52
- import '@commercetools-frontend/react-notifications';
53
- import 'redux-logger';
54
- import '@babel/runtime-corejs3/core-js-stable/url';
55
- import 'apollo-link-logger';
56
- import '@apollo/client/link/error';
57
- import '@commercetools-frontend/browser-history';
58
- import '@babel/runtime-corejs3/core-js-stable/array/is-array';
59
- import '@babel/runtime-corejs3/core-js-stable/instance/some';
60
- import '@babel/runtime-corejs3/core-js-stable/object/values';
61
- import '@commercetools/http-user-agent';
62
- import 'uuid';
63
- import '@babel/runtime-corejs3/core-js-stable/reflect/construct';
64
- import '@babel/runtime-corejs3/helpers/createClass';
65
- import '@babel/runtime-corejs3/helpers/classCallCheck';
66
- import '@babel/runtime-corejs3/helpers/assertThisInitialized';
67
- import '@babel/runtime-corejs3/helpers/inherits';
68
- import '@babel/runtime-corejs3/helpers/possibleConstructorReturn';
69
- import '@babel/runtime-corejs3/helpers/getPrototypeOf';
70
- import '@babel/runtime-corejs3/helpers/wrapNativeSuper';
71
- import '@babel/runtime-corejs3/core-js-stable/json/stringify';
72
- import '@apollo/client/link/retry';
73
- import '@commercetools-frontend/i18n';
74
- import '@commercetools-frontend/assets/images/logo.svg';
75
- import '@commercetools-uikit/flat-button';
76
- import './use-is-served-by-proxy-77984220.esm.js';
77
- import '@babel/runtime-corejs3/helpers/taggedTemplateLiteral';
78
- import '@babel/runtime-corejs3/helpers/objectWithoutProperties';
79
- import 'memoize-one';
80
- import '@commercetools-uikit/select-input';
81
- import '@apollo/client/react';
82
- import '@commercetools-frontend/assets/images/ct-logo.svg';
83
- import '@commercetools-uikit/loading-spinner';
84
- import '@commercetools-frontend/l10n';
85
- import '@babel/runtime-corejs3/core-js-stable/array/from';
86
- import '@babel/runtime-corejs3/core-js-stable/instance/every';
87
- import 'classnames';
88
- import '@commercetools-frontend/assets/images/diagonal-line.svg';
89
- import '@commercetools-frontend/permissions';
90
- import '@commercetools-uikit/icons/inline-svg';
91
- import 'lodash/isNil';
92
- import '@babel/runtime-corejs3/core-js-stable/object/from-entries';
93
- import '@babel/runtime-corejs3/core-js-stable/instance/flags';
94
- import '@flopflip/combine-adapters';
95
- import '@flopflip/http-adapter';
96
- import '@flopflip/launchdarkly-adapter';
97
- import 'react-redux';
98
- import 'lodash/upperFirst';
99
- import './oidc-d7f0409a.esm.js';
100
- import '@commercetools-uikit/design-system/materials/resets.css';
101
- import '@commercetools-frontend/actions-global';
102
- import '@commercetools-frontend/application-config/ssr';
103
-
104
- var messages = defineMessages({
105
- support: {
106
- id: 'UserSettingsMenu.support',
107
- description: 'The label for Support',
108
- defaultMessage: 'Support'
109
- },
110
- logout: {
111
- id: 'UserSettingsMenu.logout',
112
- description: 'The label for logout option',
113
- defaultMessage: 'Logout'
114
- },
115
- privacyPolicy: {
116
- id: 'UserSettingsMenu.privacyPolicy',
117
- description: 'The label for privacy policy option',
118
- defaultMessage: 'Privacy Policy'
119
- },
120
- menuLabel: {
121
- id: 'UserSettingsMenu.menuLabel',
122
- description: 'The label describing the menu',
123
- defaultMessage: 'User settings menu'
124
- },
125
- openMenuLabel: {
126
- id: 'UserSettingsMenu.openMenuLabel',
127
- description: 'The label when menu is closed and would be opened by a click',
128
- defaultMessage: 'Open user settings menu'
129
- },
130
- closeMenuLabel: {
131
- id: 'UserSettingsMenu.closeMenuLabel',
132
- description: 'The label when menu is open and would be closed by a click',
133
- defaultMessage: 'Close user settings menu'
134
- }
135
- });
136
-
137
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
138
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context4, _context5; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context4 = ownKeys(Object(source), !0)).call(_context4, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context5 = ownKeys(Object(source))).call(_context5, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
139
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
140
- const MENU_LABEL_ID = 'user-menu-setting-menu-label';
141
- const UserAvatar = props => {
142
- const _useState = useState(false),
143
- _useState2 = _slicedToArray(_useState, 2),
144
- isMouseOver = _useState2[0],
145
- setIsMouseOver = _useState2[1];
146
- const handleMouseOver = useCallback(() => {
147
- setIsMouseOver(true);
148
- }, []);
149
- const handleMouseOut = useCallback(() => {
150
- setIsMouseOver(false);
151
- }, []);
152
- const _useTheme = useTheme(),
153
- isNewTheme = _useTheme.isNewTheme,
154
- themedValue = _useTheme.themedValue;
155
- return jsx("div", {
156
- onMouseOver: handleMouseOver,
157
- onMouseOut: handleMouseOut,
158
- children: jsxs(Spacings.Inline, {
159
- alignItems: "center",
160
- children: [jsx(Avatar, {
161
- size: themedValue('s', 'm'),
162
- gravatarHash: props.gravatarHash,
163
- firstName: props.firstName,
164
- lastName: props.lastName,
165
- isHighlighted: isMouseOver
166
- }), isNewTheme ? null : jsx(CaretDownIcon, {
167
- size: "small",
168
- color: isMouseOver ? 'neutral60' : 'solid'
169
- })]
170
- })
171
- });
172
- };
173
- UserAvatar.displayName = 'UserAvatar';
174
- function getIsFocusedElementInMenu() {
175
- var _document$activeEleme;
176
- return Boolean((_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.getAttribute('data-user-settings-menu'));
177
- }
178
- const stateReducer = (state, changes) => {
179
- var _ref3;
180
- switch (changes.type) {
181
- // So in case the user wants to navigate with the tab button
182
- // we need to make sure that the menu does not close
183
- case Downshift.stateChangeTypes.blurButton:
184
- return _objectSpread(_objectSpread({}, changes), {}, {
185
- isOpen: (_ref3 = state.isOpen && getIsFocusedElementInMenu()) !== null && _ref3 !== void 0 ? _ref3 : false
186
- });
187
- default:
188
- return changes;
189
- }
190
- };
191
- const OptionalFeatureToggle = props => {
192
- if (props.featureToggle) {
193
- return jsx(ToggleFeature, {
194
- flag: props.featureToggle,
195
- children: props.children
196
- });
197
- }
198
- return jsx(Fragment, {
199
- children: props.children
200
- });
201
- };
202
- OptionalFeatureToggle.propTypes = process.env.NODE_ENV !== "production" ? {
203
- featureToggle: _pt.string,
204
- children: _pt.node.isRequired
205
- } : {};
206
- const renderLabel = (menu, applicationLanguage) => {
207
- var _context;
208
- const localizedLabel = _findInstanceProperty(_context = menu.labelAllLocales).call(_context, loc => _startsWithInstanceProperty(applicationLanguage).call(applicationLanguage, loc.locale));
209
- if (localizedLabel) return localizedLabel.value;
210
- return NO_VALUE_FALLBACK;
211
- };
212
- const MenuItem = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
213
- target: "e1al5ftg0"
214
- } : {
215
- target: "e1al5ftg0",
216
- label: "MenuItem"
217
- })("width:100%;cursor:pointer;color:", designTokens.colorSolid, ";:hover{background-color:", designTokens$1.backgroundColorForUserMenuItemWhenHovered, ";}", props => props.hasDivider === true ? /*#__PURE__*/css("border-bottom:1px solid ", designTokens.colorNeutral, ";margin:", designTokens$1.marginForUserMenuItem, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:MenuItem;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUpXIiwiZmlsZSI6InVzZXItc2V0dGluZ3MtbWVudS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUT0RPOiBAcmVkZXNpZ24gY2xlYW51cFxuaW1wb3J0IHsgUmVhY3ROb2RlLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgVG9nZ2xlRmVhdHVyZSB9IGZyb20gJ0BmbG9wZmxpcC9yZWFjdC1icm9hZGNhc3QnO1xuaW1wb3J0IERvd25zaGlmdCwge1xuICB0eXBlIENvbnRyb2xsZXJTdGF0ZUFuZEhlbHBlcnMsXG4gIHR5cGUgRG93bnNoaWZ0UHJvcHMsXG59IGZyb20gJ2Rvd25zaGlmdCc7XG5pbXBvcnQgeyB1c2VJbnRsLCBGb3JtYXR0ZWRNZXNzYWdlIH0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgYXMgYXBwa2l0RGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cyc7XG5pbXBvcnQgeyB1c2VBcHBsaWNhdGlvbkNvbnRleHQgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9hcHBsaWNhdGlvbi1zaGVsbC1jb25uZWN0b3JzJztcbmltcG9ydCB7XG4gIExPR09VVF9SRUFTT05TLFxuICBOT19WQUxVRV9GQUxMQkFDSyxcbiAgU1VQUE9SVF9QT1JUQUxfVVJMLFxufSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9jb25zdGFudHMnO1xuaW1wb3J0IHsgcmVwb3J0RXJyb3JUb1NlbnRyeSB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3NlbnRyeSc7XG5pbXBvcnQgQWNjZXNzaWJsZUhpZGRlbiBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hY2Nlc3NpYmxlLWhpZGRlbic7XG5pbXBvcnQgQXZhdGFyIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2F2YXRhcic7XG5pbXBvcnQge1xuICBkZXNpZ25Ub2tlbnMgYXMgdWlraXREZXNpZ25Ub2tlbnMsXG4gIHVzZVRoZW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IENhcmV0RG93bkljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQgU3BhY2luZ3MgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3MnO1xuaW1wb3J0IFRleHQgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdGV4dCc7XG5pbXBvcnQgeyBESU1FTlNJT05TIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB1c2VBcHBsaWNhdGlvbnNNZW51IGZyb20gJy4uLy4uL2hvb2tzL3VzZS1hcHBsaWNhdGlvbnMtbWVudSc7XG5pbXBvcnQgdHlwZSB7IFRVc2VyIH0gZnJvbSAnLi4vLi4vdHlwZXMvZ2VuZXJhdGVkL21jJztcbmltcG9ydCB0eXBlIHsgVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5IH0gZnJvbSAnLi4vLi4vdHlwZXMvZ2VuZXJhdGVkL3Byb3h5JztcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJztcblxudHlwZSBQcm9wcyA9IFBpY2s8XG4gIFRVc2VyLFxuICAnbGFuZ3VhZ2UnIHwgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2VtYWlsJyB8ICdncmF2YXRhckhhc2gnXG4+O1xudHlwZSBNZW51Qm9keVByb3BzID0gUHJvcHMgJiB7XG4gIGRvd25zaGlmdFByb3BzOiBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzPHt9Pjtcbn07XG50eXBlIE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVByb3BzID0ge1xuICBmZWF0dXJlVG9nZ2xlPzogc3RyaW5nO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgTWVudUl0ZW1Qcm9wcyA9IHtcbiAgaGFzRGl2aWRlcj86IGJvb2xlYW47XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG59O1xudHlwZSBNZW51SXRlbUxhYmVsUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXJQcm9wcyA9IHtcbiAgaXNOZXdUaGVtZTogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVDb25maWcgPSBURmV0Y2hBcHBsaWNhdGlvbnNNZW51UXVlcnlbJ2FwcGxpY2F0aW9uc01lbnUnXVsnYXBwQmFyJ11bMF07XG5cbmNvbnN0IE1FTlVfTEFCRUxfSUQgPSAndXNlci1tZW51LXNldHRpbmctbWVudS1sYWJlbCc7XG5cbmNvbnN0IFVzZXJBdmF0YXIgPSAoXG4gIHByb3BzOiBQaWNrPFByb3BzLCAnZmlyc3ROYW1lJyB8ICdsYXN0TmFtZScgfCAnZ3JhdmF0YXJIYXNoJz5cbikgPT4ge1xuICBjb25zdCBbaXNNb3VzZU92ZXIsIHNldElzTW91c2VPdmVyXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgaGFuZGxlTW91c2VPdmVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzTW91c2VPdmVyKHRydWUpO1xuICB9LCBbXSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3V0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzTW91c2VPdmVyKGZhbHNlKTtcbiAgfSwgW10pO1xuICBjb25zdCB7IGlzTmV3VGhlbWUsIHRoZW1lZFZhbHVlIH0gPSB1c2VUaGVtZSgpO1xuICByZXR1cm4gKFxuICAgIDxkaXYgb25Nb3VzZU92ZXI9e2hhbmRsZU1vdXNlT3Zlcn0gb25Nb3VzZU91dD17aGFuZGxlTW91c2VPdXR9PlxuICAgICAgPFNwYWNpbmdzLklubGluZSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgIDxBdmF0YXJcbiAgICAgICAgICBzaXplPXt0aGVtZWRWYWx1ZSgncycsICdtJyl9XG4gICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgIGlzSGlnaGxpZ2h0ZWQ9e2lzTW91c2VPdmVyfVxuICAgICAgICAvPlxuICAgICAgICB7aXNOZXdUaGVtZSA/IG51bGwgOiAoXG4gICAgICAgICAgPENhcmV0RG93bkljb25cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICBjb2xvcj17aXNNb3VzZU92ZXIgPyAnbmV1dHJhbDYwJyA6ICdzb2xpZCd9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJBdmF0YXIuZGlzcGxheU5hbWUgPSAnVXNlckF2YXRhcic7XG5cbmZ1bmN0aW9uIGdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSB7XG4gIHJldHVybiBCb29sZWFuKFxuICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ/LmdldEF0dHJpYnV0ZSgnZGF0YS11c2VyLXNldHRpbmdzLW1lbnUnKVxuICApO1xufVxuXG5jb25zdCBzdGF0ZVJlZHVjZXI6IERvd25zaGlmdFByb3BzPHt9Plsnc3RhdGVSZWR1Y2VyJ10gPSAoc3RhdGUsIGNoYW5nZXMpID0+IHtcbiAgc3dpdGNoIChjaGFuZ2VzLnR5cGUpIHtcbiAgICAvLyBTbyBpbiBjYXNlIHRoZSB1c2VyIHdhbnRzIHRvIG5hdmlnYXRlIHdpdGggdGhlIHRhYiBidXR0b25cbiAgICAvLyB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBtZW51IGRvZXMgbm90IGNsb3NlXG4gICAgY2FzZSBEb3duc2hpZnQuc3RhdGVDaGFuZ2VUeXBlcy5ibHVyQnV0dG9uOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uY2hhbmdlcyxcbiAgICAgICAgaXNPcGVuOiAoc3RhdGUuaXNPcGVuICYmIGdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSkgPz8gZmFsc2UsXG4gICAgICB9O1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gY2hhbmdlcztcbiAgfVxufTtcblxuY29uc3QgT3B0aW9uYWxGZWF0dXJlVG9nZ2xlID0gKHByb3BzOiBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuZmVhdHVyZVRvZ2dsZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8VG9nZ2xlRmVhdHVyZSBmbGFnPXtwcm9wcy5mZWF0dXJlVG9nZ2xlfT57cHJvcHMuY2hpbGRyZW59PC9Ub2dnbGVGZWF0dXJlPlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDw+e3Byb3BzLmNoaWxkcmVufTwvPjtcbn07XG5cbmNvbnN0IHJlbmRlckxhYmVsID0gKFxuICBtZW51OiBNZW51Q29uZmlnLFxuICBhcHBsaWNhdGlvbkxhbmd1YWdlOiBQcm9wc1snbGFuZ3VhZ2UnXVxuKSA9PiB7XG4gIGNvbnN0IGxvY2FsaXplZExhYmVsID0gbWVudS5sYWJlbEFsbExvY2FsZXMuZmluZCgobG9jKSA9PlxuICAgIGFwcGxpY2F0aW9uTGFuZ3VhZ2Uuc3RhcnRzV2l0aChsb2MubG9jYWxlKVxuICApO1xuICBpZiAobG9jYWxpemVkTGFiZWwpIHJldHVybiBsb2NhbGl6ZWRMYWJlbC52YWx1ZTtcbiAgcmV0dXJuIE5PX1ZBTFVFX0ZBTExCQUNLO1xufTtcblxuY29uc3QgTWVudUl0ZW0gPSBzdHlsZWQuZGl2PE1lbnVJdGVtUHJvcHM+YFxuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclNvbGlkfTtcblxuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7YXBwa2l0RGVzaWduVG9rZW5zLmJhY2tncm91bmRDb2xvckZvclVzZXJNZW51SXRlbVdoZW5Ib3ZlcmVkfTtcbiAgfVxuXG4gICR7KHByb3BzKSA9PlxuICAgIHByb3BzLmhhc0RpdmlkZXIgPT09IHRydWVcbiAgICAgID8gY3NzYFxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yTmV1dHJhbH07XG4gICAgICAgICAgbWFyZ2luOiAke2FwcGtpdERlc2lnblRva2Vucy5tYXJnaW5Gb3JVc2VyTWVudUl0ZW19O1xuICAgICAgICBgXG4gICAgICA6ICcnfTtcbmA7XG5cbmNvbnN0IE1lbnVJdGVtTGFiZWwgPSAocHJvcHM6IE1lbnVJdGVtTGFiZWxQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInNcIj57cHJvcHMuY2hpbGRyZW59PC9TcGFjaW5ncy5JbnNldD47XG59O1xuXG5jb25zdCBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXIgPSAoXG4gIHByb3BzOiBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXJQcm9wc1xuKSA9PiB7XG4gIGlmIChwcm9wcy5pc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMzB9ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzUwfTtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge3Byb3BzLmNoaWxkcmVufVxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxuICByZXR1cm4gPFNwYWNpbmdzLkluc2V0IHNjYWxlPVwieHNcIj57cHJvcHMuY2hpbGRyZW59PC9TcGFjaW5ncy5JbnNldD47XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzID0gKGlzTmV3VGhlbWU6IGJvb2xlYW4pID0+IHtcbiAgaWYgKGlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gY3NzYFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICAgICAgYm9yZGVyLXJhZGl1czogJHt1aWtpdERlc2lnblRva2Vucy5ib3JkZXJSYWRpdXMyfTtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDl9O1xuICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICB0b3A6IGNhbGMoJHtESU1FTlNJT05TLmhlYWRlcn0gKyAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0pO1xuICAgICAgcGFkZGluZzogMCAwICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzEwfSAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBgO1xuICB9XG5cbiAgcmV0dXJuIGNzc2BcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICAgIGJvcmRlcjogMXB4ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JQcmltYXJ5NDB9IHNvbGlkO1xuICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzNn07XG4gICAgYm94LXNoYWRvdzogJHt1aWtpdERlc2lnblRva2Vucy5zaGFkb3c3fTtcbiAgICB3aWR0aDogJHt1aWtpdERlc2lnblRva2Vucy5jb25zdHJhaW50N307XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmdYc307XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYDtcbn07XG5cbmNvbnN0IGdldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcyA9ICgpID0+IGNzc2BcbiAgZGlzcGxheTogYmxvY2s7XG5gO1xuXG5jb25zdCBVc2VyU2V0dGluZ3NNZW51Qm9keSA9IChwcm9wczogTWVudUJvZHlQcm9wcykgPT4ge1xuICBjb25zdCB7IGlzTmV3VGhlbWUsIHRoZW1lZFZhbHVlIH0gPSB1c2VUaGVtZSgpO1xuICAvLyBGb2N1cyBvbiBhIG1lbnUgaXRlbSB3aGVuIGl0J3Mgb3BlbmVkIHRocm91Z2gga2V5Ym9hcmRcbiAgY29uc3QgbWVudUVsZW1lbnRSZWYgPSB1c2VSZWY8SFRNTEFuY2hvckVsZW1lbnQ+KG51bGwpO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIG1lbnVFbGVtZW50UmVmLmN1cnJlbnQ/LmZvY3VzKCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCBlbnZpcm9ubWVudCA9IHVzZUFwcGxpY2F0aW9uQ29udGV4dCgoY29udGV4dCkgPT4gY29udGV4dC5lbnZpcm9ubWVudCk7XG5cbiAgY29uc3QgYXBwbGljYXRpb25zQXBwQmFyTWVudSA9IHVzZUFwcGxpY2F0aW9uc01lbnU8J2FwcEJhcic+KCdhcHBCYXInLCB7XG4gICAgcXVlcnlPcHRpb25zOiB7XG4gICAgICBvbkVycm9yOiByZXBvcnRFcnJvclRvU2VudHJ5LFxuICAgIH0sXG4gICAgZW52aXJvbm1lbnQsXG4gIH0pO1xuICBjb25zdCBhY2NvdW50TWVudUl0ZW1zID0gYXBwbGljYXRpb25zQXBwQmFyTWVudSA/PyBbXTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBldmVudC5rZXkgPT09ICdFc2MnIHx8XG4gICAgICAgICAgKGV2ZW50LmtleSA9PT0gJ1RhYicgJiYgIWdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgcHJvcHMuZG93bnNoaWZ0UHJvcHMuY2xvc2VNZW51KCk7XG4gICAgICAgIH1cbiAgICAgIH19XG4gICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVTdHlsZXMoaXNOZXdUaGVtZSl9XG4gICAgPlxuICAgICAgPGRpdiB7Li4ucHJvcHMuZG93bnNoaWZ0UHJvcHMuZ2V0TWVudVByb3BzKCl9PlxuICAgICAgICA8VXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgIDxTcGFjaW5ncy5JbmxpbmUgc2NhbGU9e3RoZW1lZFZhbHVlKCd4cycsICdtJyl9IGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgIDxBdmF0YXJcbiAgICAgICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgICAgICBmaXJzdE5hbWU9e3Byb3BzLmZpcnN0TmFtZX1cbiAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICBncmF2YXRhckhhc2g9e3Byb3BzLmdyYXZhdGFySGFzaH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB7aXNOZXdUaGVtZSA/IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5TdWJoZWFkbGluZSBhcz1cImg0XCI+XG4gICAgICAgICAgICAgICAgICB7W3Byb3BzLmZpcnN0TmFtZSwgcHJvcHMubGFzdE5hbWVdLmpvaW4oJyAnKS50cmltKCl9XG4gICAgICAgICAgICAgICAgPC9UZXh0LlN1YmhlYWRsaW5lPlxuICAgICAgICAgICAgICAgIDxUZXh0LkRldGFpbCB0cnVuY2F0ZSB0b25lPVwic2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICAgICAgICB7cHJvcHMuZW1haWx9XG4gICAgICAgICAgICAgICAgPC9UZXh0LkRldGFpbD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxUZXh0LkJvZHkgaXNCb2xkPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICAgIDxUZXh0LkJvZHkgdHJ1bmNhdGU+e3Byb3BzLmVtYWlsfTwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICAgICAgIDwvVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyPlxuICAgICAgICB7aXNOZXdUaGVtZSAmJiBhY2NvdW50TWVudUl0ZW1zLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgPE1lbnVJdGVtIGhhc0RpdmlkZXI9e3RydWV9IGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9IC8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICB7YWNjb3VudE1lbnVJdGVtcy5tYXAoKG1lbnUpID0+IChcbiAgICAgICAgICA8T3B0aW9uYWxGZWF0dXJlVG9nZ2xlXG4gICAgICAgICAgICBrZXk9e21lbnUua2V5fVxuICAgICAgICAgICAgZmVhdHVyZVRvZ2dsZT17bWVudS5mZWF0dXJlVG9nZ2xlID8/IHVuZGVmaW5lZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgICAgICB0bz17YC9hY2NvdW50LyR7bWVudS51cmlQYXRofWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICAgICAgZGF0YS11c2VyLXNldHRpbmdzLW1lbnVcbiAgICAgICAgICAgICAgcmVmPXttZW51RWxlbWVudFJlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICAgICAgPFRleHQuQm9keT57cmVuZGVyTGFiZWwobWVudSwgcHJvcHMubGFuZ3VhZ2UpfTwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICA8L09wdGlvbmFsRmVhdHVyZVRvZ2dsZT5cbiAgICAgICAgKSl9XG4gICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgaHJlZj17YGh0dHBzOi8vY29tbWVyY2V0b29scy5jb20vcHJpdmFjeSNzdXBwbGllcnNgfVxuICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMudG9nZ2xlTWVudSgpfVxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgcmVmPXshYXBwbGljYXRpb25zQXBwQmFyTWVudSA/IG1lbnVFbGVtZW50UmVmIDogdW5kZWZpbmVkfVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnByaXZhY3lQb2xpY3l9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgaHJlZj17U1VQUE9SVF9QT1JUQUxfVVJMfVxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMudG9nZ2xlTWVudSgpfVxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgID5cbiAgICAgICAgICA8TWVudUl0ZW0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgPFRleHQuQm9keSBpbnRsTWVzc2FnZT17bWVzc2FnZXMuc3VwcG9ydH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICA8L2E+XG4gICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgLy8gTk9URTogd2Ugd2FudCB0byByZWRpcmVjdCB0byBhIG5ldyBwYWdlIHNvIHRoYXQgdGhlXG4gICAgICAgICAgLy8gc2VydmVyIGNhbiByZW1vdmUgdGhpbmdzIGxpa2UgY29va2llIGZvciBhY2Nlc3MgdG9rZW4uXG4gICAgICAgICAgaHJlZj17YC9sb2dvdXQ/cmVhc29uPSR7TE9HT1VUX1JFQVNPTlMuVVNFUn1gfVxuICAgICAgICAgIGRhdGEtdGVzdD1cImxvZ291dC1idXR0b25cIlxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgID5cbiAgICAgICAgICA8TWVudUl0ZW0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgPFRleHQuQm9keSBpbnRsTWVzc2FnZT17bWVzc2FnZXMubG9nb3V0fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgPGRpdiB0YWJJbmRleD17MH0gb25Gb2N1cz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMuY2xvc2VNZW51KCl9IC8+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJTZXR0aW5nc01lbnVCb2R5LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnVCb2R5JztcblxuY29uc3QgVXNlclNldHRpbmdzTWVudSA9IChwcm9wczogUHJvcHMpID0+IHtcbiAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgZGF0YS10ZXN0PVwidXNlci1zZXR0aW5ncy1tZW51XCI+XG4gICAgICA8QWNjZXNzaWJsZUhpZGRlbj5cbiAgICAgICAgPHNwYW4gaWQ9e01FTlVfTEFCRUxfSUR9PlxuICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5tZW51TGFiZWx9IC8+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvQWNjZXNzaWJsZUhpZGRlbj5cbiAgICAgIDxEb3duc2hpZnQgc3RhdGVSZWR1Y2VyPXtzdGF0ZVJlZHVjZXJ9IGxhYmVsSWQ9e01FTlVfTEFCRUxfSUR9PlxuICAgICAgICB7KGRvd25zaGlmdFByb3BzKSA9PiAoXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGB9XG4gICAgICAgICAgICAgIHsuLi5kb3duc2hpZnRQcm9wcy5nZXRUb2dnbGVCdXR0b25Qcm9wcyh7XG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWwnOiBpbnRsLmZvcm1hdE1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICBkb3duc2hpZnRQcm9wcy5pc09wZW5cbiAgICAgICAgICAgICAgICAgICAgPyBtZXNzYWdlcy5jbG9zZU1lbnVMYWJlbFxuICAgICAgICAgICAgICAgICAgICA6IG1lc3NhZ2VzLm9wZW5NZW51TGFiZWxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFVzZXJBdmF0YXJcbiAgICAgICAgICAgICAgICBmaXJzdE5hbWU9e3Byb3BzLmZpcnN0TmFtZX1cbiAgICAgICAgICAgICAgICBsYXN0TmFtZT17cHJvcHMubGFzdE5hbWV9XG4gICAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIHtkb3duc2hpZnRQcm9wcy5pc09wZW4gJiYgKFxuICAgICAgICAgICAgICA8VXNlclNldHRpbmdzTWVudUJvZHlcbiAgICAgICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHM9e2Rvd25zaGlmdFByb3BzfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvRG93bnNoaWZ0PlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJTZXR0aW5nc01lbnUuZGlzcGxheU5hbWUgPSAnVXNlclNldHRpbmdzTWVudSc7XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJTZXR0aW5nc01lbnU7XG5cbi8vIEZvciB0ZXN0aW5nXG5leHBvcnQgeyBVc2VyQXZhdGFyLCBVc2VyU2V0dGluZ3NNZW51Qm9keSB9O1xuIl19 */") : '', ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0kwQyIsImZpbGUiOiJ1c2VyLXNldHRpbmdzLW1lbnUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7IFJlYWN0Tm9kZSwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IFRvZ2dsZUZlYXR1cmUgfSBmcm9tICdAZmxvcGZsaXAvcmVhY3QtYnJvYWRjYXN0JztcbmltcG9ydCBEb3duc2hpZnQsIHtcbiAgdHlwZSBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzLFxuICB0eXBlIERvd25zaGlmdFByb3BzLFxufSBmcm9tICdkb3duc2hpZnQnO1xuaW1wb3J0IHsgdXNlSW50bCwgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIGFzIGFwcGtpdERlc2lnblRva2VucyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgdXNlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tc2hlbGwtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBMT0dPVVRfUkVBU09OUyxcbiAgTk9fVkFMVUVfRkFMTEJBQ0ssXG4gIFNVUFBPUlRfUE9SVEFMX1VSTCxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJztcbmltcG9ydCB7IHJlcG9ydEVycm9yVG9TZW50cnkgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9zZW50cnknO1xuaW1wb3J0IEFjY2Vzc2libGVIaWRkZW4gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvYWNjZXNzaWJsZS1oaWRkZW4nO1xuaW1wb3J0IEF2YXRhciBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hdmF0YXInO1xuaW1wb3J0IHtcbiAgZGVzaWduVG9rZW5zIGFzIHVpa2l0RGVzaWduVG9rZW5zLFxuICB1c2VUaGVtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBDYXJldERvd25JY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IFNwYWNpbmdzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzJztcbmltcG9ydCBUZXh0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQnO1xuaW1wb3J0IHsgRElNRU5TSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgdXNlQXBwbGljYXRpb25zTWVudSBmcm9tICcuLi8uLi9ob29rcy91c2UtYXBwbGljYXRpb25zLW1lbnUnO1xuaW1wb3J0IHR5cGUgeyBUVXNlciB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9tYyc7XG5pbXBvcnQgdHlwZSB7IFRGZXRjaEFwcGxpY2F0aW9uc01lbnVRdWVyeSB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9wcm94eSc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgUHJvcHMgPSBQaWNrPFxuICBUVXNlcixcbiAgJ2xhbmd1YWdlJyB8ICdmaXJzdE5hbWUnIHwgJ2xhc3ROYW1lJyB8ICdlbWFpbCcgfCAnZ3JhdmF0YXJIYXNoJ1xuPjtcbnR5cGUgTWVudUJvZHlQcm9wcyA9IFByb3BzICYge1xuICBkb3duc2hpZnRQcm9wczogQ29udHJvbGxlclN0YXRlQW5kSGVscGVyczx7fT47XG59O1xudHlwZSBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcyA9IHtcbiAgZmVhdHVyZVRvZ2dsZT86IHN0cmluZztcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVJdGVtUHJvcHMgPSB7XG4gIGhhc0RpdmlkZXI/OiBib29sZWFuO1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xufTtcbnR5cGUgTWVudUl0ZW1MYWJlbFByb3BzID0ge1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBNZW51Q29uZmlnID0gVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5WydhcHBsaWNhdGlvbnNNZW51J11bJ2FwcEJhciddWzBdO1xuXG5jb25zdCBNRU5VX0xBQkVMX0lEID0gJ3VzZXItbWVudS1zZXR0aW5nLW1lbnUtbGFiZWwnO1xuXG5jb25zdCBVc2VyQXZhdGFyID0gKFxuICBwcm9wczogUGljazxQcm9wcywgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2dyYXZhdGFySGFzaCc+XG4pID0+IHtcbiAgY29uc3QgW2lzTW91c2VPdmVyLCBzZXRJc01vdXNlT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3ZlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3Zlcih0cnVlKTtcbiAgfSwgW10pO1xuICBjb25zdCBoYW5kbGVNb3VzZU91dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3ZlcihmYWxzZSk7XG4gIH0sIFtdKTtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IG9uTW91c2VPdmVyPXtoYW5kbGVNb3VzZU92ZXJ9IG9uTW91c2VPdXQ9e2hhbmRsZU1vdXNlT3V0fT5cbiAgICAgIDxTcGFjaW5ncy5JbmxpbmUgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgIGZpcnN0TmFtZT17cHJvcHMuZmlyc3ROYW1lfVxuICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICBpc0hpZ2hsaWdodGVkPXtpc01vdXNlT3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICAge2lzTmV3VGhlbWUgPyBudWxsIDogKFxuICAgICAgICAgIDxDYXJldERvd25JY29uXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgY29sb3I9e2lzTW91c2VPdmVyID8gJ25ldXRyYWw2MCcgOiAnc29saWQnfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyQXZhdGFyLmRpc3BsYXlOYW1lID0gJ1VzZXJBdmF0YXInO1xuXG5mdW5jdGlvbiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkge1xuICByZXR1cm4gQm9vbGVhbihcbiAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5nZXRBdHRyaWJ1dGUoJ2RhdGEtdXNlci1zZXR0aW5ncy1tZW51JylcbiAgKTtcbn1cblxuY29uc3Qgc3RhdGVSZWR1Y2VyOiBEb3duc2hpZnRQcm9wczx7fT5bJ3N0YXRlUmVkdWNlciddID0gKHN0YXRlLCBjaGFuZ2VzKSA9PiB7XG4gIHN3aXRjaCAoY2hhbmdlcy50eXBlKSB7XG4gICAgLy8gU28gaW4gY2FzZSB0aGUgdXNlciB3YW50cyB0byBuYXZpZ2F0ZSB3aXRoIHRoZSB0YWIgYnV0dG9uXG4gICAgLy8gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgbWVudSBkb2VzIG5vdCBjbG9zZVxuICAgIGNhc2UgRG93bnNoaWZ0LnN0YXRlQ2hhbmdlVHlwZXMuYmx1ckJ1dHRvbjpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNoYW5nZXMsXG4gICAgICAgIGlzT3BlbjogKHN0YXRlLmlzT3BlbiAmJiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpID8/IGZhbHNlLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cbn07XG5cbmNvbnN0IE9wdGlvbmFsRmVhdHVyZVRvZ2dsZSA9IChwcm9wczogT3B0aW9uYWxGZWF0dXJlVG9nZ2xlUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmZlYXR1cmVUb2dnbGUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvZ2dsZUZlYXR1cmUgZmxhZz17cHJvcHMuZmVhdHVyZVRvZ2dsZX0+e3Byb3BzLmNoaWxkcmVufTwvVG9nZ2xlRmVhdHVyZT5cbiAgICApO1xuICB9XG4gIHJldHVybiA8Pntwcm9wcy5jaGlsZHJlbn08Lz47XG59O1xuXG5jb25zdCByZW5kZXJMYWJlbCA9IChcbiAgbWVudTogTWVudUNvbmZpZyxcbiAgYXBwbGljYXRpb25MYW5ndWFnZTogUHJvcHNbJ2xhbmd1YWdlJ11cbikgPT4ge1xuICBjb25zdCBsb2NhbGl6ZWRMYWJlbCA9IG1lbnUubGFiZWxBbGxMb2NhbGVzLmZpbmQoKGxvYykgPT5cbiAgICBhcHBsaWNhdGlvbkxhbmd1YWdlLnN0YXJ0c1dpdGgobG9jLmxvY2FsZSlcbiAgKTtcbiAgaWYgKGxvY2FsaXplZExhYmVsKSByZXR1cm4gbG9jYWxpemVkTGFiZWwudmFsdWU7XG4gIHJldHVybiBOT19WQUxVRV9GQUxMQkFDSztcbn07XG5cbmNvbnN0IE1lbnVJdGVtID0gc3R5bGVkLmRpdjxNZW51SXRlbVByb3BzPmBcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTb2xpZH07XG5cbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke2FwcGtpdERlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JVc2VyTWVudUl0ZW1XaGVuSG92ZXJlZH07XG4gIH1cblxuICAkeyhwcm9wcykgPT5cbiAgICBwcm9wcy5oYXNEaXZpZGVyID09PSB0cnVlXG4gICAgICA/IGNzc2BcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHt1aWtpdERlc2lnblRva2Vucy5jb2xvck5ldXRyYWx9O1xuICAgICAgICAgIG1hcmdpbjogJHthcHBraXREZXNpZ25Ub2tlbnMubWFyZ2luRm9yVXNlck1lbnVJdGVtfTtcbiAgICAgICAgYFxuICAgICAgOiAnJ307XG5gO1xuXG5jb25zdCBNZW51SXRlbUxhYmVsID0gKHByb3BzOiBNZW51SXRlbUxhYmVsUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0gJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nNTB9O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG4gIHJldHVybiA8U3BhY2luZ3MuSW5zZXQgc2NhbGU9XCJzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyID0gKFxuICBwcm9wczogVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHNcbikgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzMwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInhzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgZ2V0VXNlclNldHRpbmdzTWVudVN0eWxlcyA9IChpc05ld1RoZW1lOiBib29sZWFuKSA9PiB7XG4gIGlmIChpc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIGNzc2BcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzMn07XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIHdpZHRoOiAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbnN0cmFpbnQ5fTtcbiAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICAgIHBhZGRpbmc6IDAgMCAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcxMH0gMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYDtcbiAgfVxuXG4gIHJldHVybiBjc3NgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICBib3JkZXI6IDFweCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yUHJpbWFyeTQwfSBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Vpa2l0RGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICAgIGJveC1zaGFkb3c6ICR7dWlraXREZXNpZ25Ub2tlbnMuc2hhZG93N307XG4gICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDd9O1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIHRvcDogY2FsYygke0RJTUVOU0lPTlMuaGVhZGVyfSArICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSk7XG4gICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nWHN9O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIGA7XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMgPSAoKSA9PiBjc3NgXG4gIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgVXNlclNldHRpbmdzTWVudUJvZHkgPSAocHJvcHM6IE1lbnVCb2R5UHJvcHMpID0+IHtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgLy8gRm9jdXMgb24gYSBtZW51IGl0ZW0gd2hlbiBpdCdzIG9wZW5lZCB0aHJvdWdoIGtleWJvYXJkXG4gIGNvbnN0IG1lbnVFbGVtZW50UmVmID0gdXNlUmVmPEhUTUxBbmNob3JFbGVtZW50PihudWxsKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBtZW51RWxlbWVudFJlZi5jdXJyZW50Py5mb2N1cygpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgZW52aXJvbm1lbnQgPSB1c2VBcHBsaWNhdGlvbkNvbnRleHQoKGNvbnRleHQpID0+IGNvbnRleHQuZW52aXJvbm1lbnQpO1xuXG4gIGNvbnN0IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPSB1c2VBcHBsaWNhdGlvbnNNZW51PCdhcHBCYXInPignYXBwQmFyJywge1xuICAgIHF1ZXJ5T3B0aW9uczoge1xuICAgICAgb25FcnJvcjogcmVwb3J0RXJyb3JUb1NlbnRyeSxcbiAgICB9LFxuICAgIGVudmlyb25tZW50LFxuICB9KTtcbiAgY29uc3QgYWNjb3VudE1lbnVJdGVtcyA9IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPz8gW107XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSAnRXNjJyB8fFxuICAgICAgICAgIChldmVudC5rZXkgPT09ICdUYWInICYmICFnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG4gICAgICB9fVxuICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzKGlzTmV3VGhlbWUpfVxuICAgID5cbiAgICAgIDxkaXYgey4uLnByb3BzLmRvd25zaGlmdFByb3BzLmdldE1lbnVQcm9wcygpfT5cbiAgICAgICAgPFVzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lciBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPXt0aGVtZWRWYWx1ZSgneHMnLCAnbScpfSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgICAgIHNpemU9e3RoZW1lZFZhbHVlKCdzJywgJ20nKX1cbiAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge2lzTmV3VGhlbWUgPyAoXG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPFRleHQuU3ViaGVhZGxpbmUgYXM9XCJoNFwiPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5TdWJoZWFkbGluZT5cbiAgICAgICAgICAgICAgICA8VGV4dC5EZXRhaWwgdHJ1bmNhdGUgdG9uZT1cInNlY29uZGFyeVwiPlxuICAgICAgICAgICAgICAgICAge3Byb3BzLmVtYWlsfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5EZXRhaWw+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGlzQm9sZD5cbiAgICAgICAgICAgICAgICAgIHtbcHJvcHMuZmlyc3ROYW1lLCBwcm9wcy5sYXN0TmFtZV0uam9pbignICcpLnRyaW0oKX1cbiAgICAgICAgICAgICAgICA8L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IHRydW5jYXRlPntwcm9wcy5lbWFpbH08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1VzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lcj5cbiAgICAgICAge2lzTmV3VGhlbWUgJiYgYWNjb3VudE1lbnVJdGVtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAge2FjY291bnRNZW51SXRlbXMubWFwKChtZW51KSA9PiAoXG4gICAgICAgICAgPE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVxuICAgICAgICAgICAga2V5PXttZW51LmtleX1cbiAgICAgICAgICAgIGZlYXR1cmVUb2dnbGU9e21lbnUuZmVhdHVyZVRvZ2dsZSA/PyB1bmRlZmluZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMoKX1cbiAgICAgICAgICAgICAgdG89e2AvYWNjb3VudC8ke21lbnUudXJpUGF0aH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBwcm9wcy5kb3duc2hpZnRQcm9wcy50b2dnbGVNZW51KCl9XG4gICAgICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgICAgIHJlZj17bWVudUVsZW1lbnRSZWZ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICAgIDxUZXh0LkJvZHk+e3JlbmRlckxhYmVsKG1lbnUsIHByb3BzLmxhbmd1YWdlKX08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgPC9PcHRpb25hbEZlYXR1cmVUb2dnbGU+XG4gICAgICAgICkpfVxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e2BodHRwczovL2NvbW1lcmNldG9vbHMuY29tL3ByaXZhY3kjc3VwcGxpZXJzYH1cbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICAgIHJlZj17IWFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPyBtZW51RWxlbWVudFJlZiA6IHVuZGVmaW5lZH1cbiAgICAgICAgPlxuICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5wcml2YWN5UG9saWN5fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e1NVUFBPUlRfUE9SVEFMX1VSTH1cbiAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnN1cHBvcnR9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIC8vIE5PVEU6IHdlIHdhbnQgdG8gcmVkaXJlY3QgdG8gYSBuZXcgcGFnZSBzbyB0aGF0IHRoZVxuICAgICAgICAgIC8vIHNlcnZlciBjYW4gcmVtb3ZlIHRoaW5ncyBsaWtlIGNvb2tpZSBmb3IgYWNjZXNzIHRva2VuLlxuICAgICAgICAgIGhyZWY9e2AvbG9nb3V0P3JlYXNvbj0ke0xPR09VVF9SRUFTT05TLlVTRVJ9YH1cbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsb2dvdXQtYnV0dG9uXCJcbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmxvZ291dH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgIDxkaXYgdGFiSW5kZXg9ezB9IG9uRm9jdXM9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpfSAvPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51Qm9keS5kaXNwbGF5TmFtZSA9ICdVc2VyU2V0dGluZ3NNZW51Qm9keSc7XG5cbmNvbnN0IFVzZXJTZXR0aW5nc01lbnUgPSAocHJvcHM6IFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGRhdGEtdGVzdD1cInVzZXItc2V0dGluZ3MtbWVudVwiPlxuICAgICAgPEFjY2Vzc2libGVIaWRkZW4+XG4gICAgICAgIDxzcGFuIGlkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMubWVudUxhYmVsfSAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L0FjY2Vzc2libGVIaWRkZW4+XG4gICAgICA8RG93bnNoaWZ0IHN0YXRlUmVkdWNlcj17c3RhdGVSZWR1Y2VyfSBsYWJlbElkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgeyhkb3duc2hpZnRQcm9wcykgPT4gKFxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBgfVxuICAgICAgICAgICAgICB7Li4uZG93bnNoaWZ0UHJvcHMuZ2V0VG9nZ2xlQnV0dG9uUHJvcHMoe1xuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHMuaXNPcGVuXG4gICAgICAgICAgICAgICAgICAgID8gbWVzc2FnZXMuY2xvc2VNZW51TGFiZWxcbiAgICAgICAgICAgICAgICAgICAgOiBtZXNzYWdlcy5vcGVuTWVudUxhYmVsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxVc2VyQXZhdGFyXG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB7ZG93bnNoaWZ0UHJvcHMuaXNPcGVuICYmIChcbiAgICAgICAgICAgICAgPFVzZXJTZXR0aW5nc01lbnVCb2R5XG4gICAgICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgICAgIGRvd25zaGlmdFByb3BzPXtkb3duc2hpZnRQcm9wc31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0Rvd25zaGlmdD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnUnO1xuXG5leHBvcnQgZGVmYXVsdCBVc2VyU2V0dGluZ3NNZW51O1xuXG4vLyBGb3IgdGVzdGluZ1xuZXhwb3J0IHsgVXNlckF2YXRhciwgVXNlclNldHRpbmdzTWVudUJvZHkgfTtcbiJdfQ== */"));
218
- const MenuItemLabel = props => {
219
- if (props.isNewTheme) {
220
- return jsx("div", {
221
- css: /*#__PURE__*/css("padding:", designTokens.spacing20, " ", designTokens.spacing50, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:MenuItemLabel;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEpnQiIsImZpbGUiOiJ1c2VyLXNldHRpbmdzLW1lbnUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7IFJlYWN0Tm9kZSwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IFRvZ2dsZUZlYXR1cmUgfSBmcm9tICdAZmxvcGZsaXAvcmVhY3QtYnJvYWRjYXN0JztcbmltcG9ydCBEb3duc2hpZnQsIHtcbiAgdHlwZSBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzLFxuICB0eXBlIERvd25zaGlmdFByb3BzLFxufSBmcm9tICdkb3duc2hpZnQnO1xuaW1wb3J0IHsgdXNlSW50bCwgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIGFzIGFwcGtpdERlc2lnblRva2VucyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgdXNlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tc2hlbGwtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBMT0dPVVRfUkVBU09OUyxcbiAgTk9fVkFMVUVfRkFMTEJBQ0ssXG4gIFNVUFBPUlRfUE9SVEFMX1VSTCxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJztcbmltcG9ydCB7IHJlcG9ydEVycm9yVG9TZW50cnkgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9zZW50cnknO1xuaW1wb3J0IEFjY2Vzc2libGVIaWRkZW4gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvYWNjZXNzaWJsZS1oaWRkZW4nO1xuaW1wb3J0IEF2YXRhciBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hdmF0YXInO1xuaW1wb3J0IHtcbiAgZGVzaWduVG9rZW5zIGFzIHVpa2l0RGVzaWduVG9rZW5zLFxuICB1c2VUaGVtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBDYXJldERvd25JY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IFNwYWNpbmdzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzJztcbmltcG9ydCBUZXh0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQnO1xuaW1wb3J0IHsgRElNRU5TSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgdXNlQXBwbGljYXRpb25zTWVudSBmcm9tICcuLi8uLi9ob29rcy91c2UtYXBwbGljYXRpb25zLW1lbnUnO1xuaW1wb3J0IHR5cGUgeyBUVXNlciB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9tYyc7XG5pbXBvcnQgdHlwZSB7IFRGZXRjaEFwcGxpY2F0aW9uc01lbnVRdWVyeSB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9wcm94eSc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgUHJvcHMgPSBQaWNrPFxuICBUVXNlcixcbiAgJ2xhbmd1YWdlJyB8ICdmaXJzdE5hbWUnIHwgJ2xhc3ROYW1lJyB8ICdlbWFpbCcgfCAnZ3JhdmF0YXJIYXNoJ1xuPjtcbnR5cGUgTWVudUJvZHlQcm9wcyA9IFByb3BzICYge1xuICBkb3duc2hpZnRQcm9wczogQ29udHJvbGxlclN0YXRlQW5kSGVscGVyczx7fT47XG59O1xudHlwZSBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcyA9IHtcbiAgZmVhdHVyZVRvZ2dsZT86IHN0cmluZztcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVJdGVtUHJvcHMgPSB7XG4gIGhhc0RpdmlkZXI/OiBib29sZWFuO1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xufTtcbnR5cGUgTWVudUl0ZW1MYWJlbFByb3BzID0ge1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBNZW51Q29uZmlnID0gVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5WydhcHBsaWNhdGlvbnNNZW51J11bJ2FwcEJhciddWzBdO1xuXG5jb25zdCBNRU5VX0xBQkVMX0lEID0gJ3VzZXItbWVudS1zZXR0aW5nLW1lbnUtbGFiZWwnO1xuXG5jb25zdCBVc2VyQXZhdGFyID0gKFxuICBwcm9wczogUGljazxQcm9wcywgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2dyYXZhdGFySGFzaCc+XG4pID0+IHtcbiAgY29uc3QgW2lzTW91c2VPdmVyLCBzZXRJc01vdXNlT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3ZlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3Zlcih0cnVlKTtcbiAgfSwgW10pO1xuICBjb25zdCBoYW5kbGVNb3VzZU91dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3ZlcihmYWxzZSk7XG4gIH0sIFtdKTtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IG9uTW91c2VPdmVyPXtoYW5kbGVNb3VzZU92ZXJ9IG9uTW91c2VPdXQ9e2hhbmRsZU1vdXNlT3V0fT5cbiAgICAgIDxTcGFjaW5ncy5JbmxpbmUgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgIGZpcnN0TmFtZT17cHJvcHMuZmlyc3ROYW1lfVxuICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICBpc0hpZ2hsaWdodGVkPXtpc01vdXNlT3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICAge2lzTmV3VGhlbWUgPyBudWxsIDogKFxuICAgICAgICAgIDxDYXJldERvd25JY29uXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgY29sb3I9e2lzTW91c2VPdmVyID8gJ25ldXRyYWw2MCcgOiAnc29saWQnfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyQXZhdGFyLmRpc3BsYXlOYW1lID0gJ1VzZXJBdmF0YXInO1xuXG5mdW5jdGlvbiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkge1xuICByZXR1cm4gQm9vbGVhbihcbiAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5nZXRBdHRyaWJ1dGUoJ2RhdGEtdXNlci1zZXR0aW5ncy1tZW51JylcbiAgKTtcbn1cblxuY29uc3Qgc3RhdGVSZWR1Y2VyOiBEb3duc2hpZnRQcm9wczx7fT5bJ3N0YXRlUmVkdWNlciddID0gKHN0YXRlLCBjaGFuZ2VzKSA9PiB7XG4gIHN3aXRjaCAoY2hhbmdlcy50eXBlKSB7XG4gICAgLy8gU28gaW4gY2FzZSB0aGUgdXNlciB3YW50cyB0byBuYXZpZ2F0ZSB3aXRoIHRoZSB0YWIgYnV0dG9uXG4gICAgLy8gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgbWVudSBkb2VzIG5vdCBjbG9zZVxuICAgIGNhc2UgRG93bnNoaWZ0LnN0YXRlQ2hhbmdlVHlwZXMuYmx1ckJ1dHRvbjpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNoYW5nZXMsXG4gICAgICAgIGlzT3BlbjogKHN0YXRlLmlzT3BlbiAmJiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpID8/IGZhbHNlLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cbn07XG5cbmNvbnN0IE9wdGlvbmFsRmVhdHVyZVRvZ2dsZSA9IChwcm9wczogT3B0aW9uYWxGZWF0dXJlVG9nZ2xlUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmZlYXR1cmVUb2dnbGUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvZ2dsZUZlYXR1cmUgZmxhZz17cHJvcHMuZmVhdHVyZVRvZ2dsZX0+e3Byb3BzLmNoaWxkcmVufTwvVG9nZ2xlRmVhdHVyZT5cbiAgICApO1xuICB9XG4gIHJldHVybiA8Pntwcm9wcy5jaGlsZHJlbn08Lz47XG59O1xuXG5jb25zdCByZW5kZXJMYWJlbCA9IChcbiAgbWVudTogTWVudUNvbmZpZyxcbiAgYXBwbGljYXRpb25MYW5ndWFnZTogUHJvcHNbJ2xhbmd1YWdlJ11cbikgPT4ge1xuICBjb25zdCBsb2NhbGl6ZWRMYWJlbCA9IG1lbnUubGFiZWxBbGxMb2NhbGVzLmZpbmQoKGxvYykgPT5cbiAgICBhcHBsaWNhdGlvbkxhbmd1YWdlLnN0YXJ0c1dpdGgobG9jLmxvY2FsZSlcbiAgKTtcbiAgaWYgKGxvY2FsaXplZExhYmVsKSByZXR1cm4gbG9jYWxpemVkTGFiZWwudmFsdWU7XG4gIHJldHVybiBOT19WQUxVRV9GQUxMQkFDSztcbn07XG5cbmNvbnN0IE1lbnVJdGVtID0gc3R5bGVkLmRpdjxNZW51SXRlbVByb3BzPmBcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTb2xpZH07XG5cbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke2FwcGtpdERlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JVc2VyTWVudUl0ZW1XaGVuSG92ZXJlZH07XG4gIH1cblxuICAkeyhwcm9wcykgPT5cbiAgICBwcm9wcy5oYXNEaXZpZGVyID09PSB0cnVlXG4gICAgICA/IGNzc2BcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHt1aWtpdERlc2lnblRva2Vucy5jb2xvck5ldXRyYWx9O1xuICAgICAgICAgIG1hcmdpbjogJHthcHBraXREZXNpZ25Ub2tlbnMubWFyZ2luRm9yVXNlck1lbnVJdGVtfTtcbiAgICAgICAgYFxuICAgICAgOiAnJ307XG5gO1xuXG5jb25zdCBNZW51SXRlbUxhYmVsID0gKHByb3BzOiBNZW51SXRlbUxhYmVsUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0gJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nNTB9O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG4gIHJldHVybiA8U3BhY2luZ3MuSW5zZXQgc2NhbGU9XCJzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyID0gKFxuICBwcm9wczogVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHNcbikgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzMwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInhzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgZ2V0VXNlclNldHRpbmdzTWVudVN0eWxlcyA9IChpc05ld1RoZW1lOiBib29sZWFuKSA9PiB7XG4gIGlmIChpc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIGNzc2BcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzMn07XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIHdpZHRoOiAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbnN0cmFpbnQ5fTtcbiAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICAgIHBhZGRpbmc6IDAgMCAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcxMH0gMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYDtcbiAgfVxuXG4gIHJldHVybiBjc3NgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICBib3JkZXI6IDFweCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yUHJpbWFyeTQwfSBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Vpa2l0RGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICAgIGJveC1zaGFkb3c6ICR7dWlraXREZXNpZ25Ub2tlbnMuc2hhZG93N307XG4gICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDd9O1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIHRvcDogY2FsYygke0RJTUVOU0lPTlMuaGVhZGVyfSArICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSk7XG4gICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nWHN9O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIGA7XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMgPSAoKSA9PiBjc3NgXG4gIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgVXNlclNldHRpbmdzTWVudUJvZHkgPSAocHJvcHM6IE1lbnVCb2R5UHJvcHMpID0+IHtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgLy8gRm9jdXMgb24gYSBtZW51IGl0ZW0gd2hlbiBpdCdzIG9wZW5lZCB0aHJvdWdoIGtleWJvYXJkXG4gIGNvbnN0IG1lbnVFbGVtZW50UmVmID0gdXNlUmVmPEhUTUxBbmNob3JFbGVtZW50PihudWxsKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBtZW51RWxlbWVudFJlZi5jdXJyZW50Py5mb2N1cygpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgZW52aXJvbm1lbnQgPSB1c2VBcHBsaWNhdGlvbkNvbnRleHQoKGNvbnRleHQpID0+IGNvbnRleHQuZW52aXJvbm1lbnQpO1xuXG4gIGNvbnN0IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPSB1c2VBcHBsaWNhdGlvbnNNZW51PCdhcHBCYXInPignYXBwQmFyJywge1xuICAgIHF1ZXJ5T3B0aW9uczoge1xuICAgICAgb25FcnJvcjogcmVwb3J0RXJyb3JUb1NlbnRyeSxcbiAgICB9LFxuICAgIGVudmlyb25tZW50LFxuICB9KTtcbiAgY29uc3QgYWNjb3VudE1lbnVJdGVtcyA9IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPz8gW107XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSAnRXNjJyB8fFxuICAgICAgICAgIChldmVudC5rZXkgPT09ICdUYWInICYmICFnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG4gICAgICB9fVxuICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzKGlzTmV3VGhlbWUpfVxuICAgID5cbiAgICAgIDxkaXYgey4uLnByb3BzLmRvd25zaGlmdFByb3BzLmdldE1lbnVQcm9wcygpfT5cbiAgICAgICAgPFVzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lciBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPXt0aGVtZWRWYWx1ZSgneHMnLCAnbScpfSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgICAgIHNpemU9e3RoZW1lZFZhbHVlKCdzJywgJ20nKX1cbiAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge2lzTmV3VGhlbWUgPyAoXG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPFRleHQuU3ViaGVhZGxpbmUgYXM9XCJoNFwiPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5TdWJoZWFkbGluZT5cbiAgICAgICAgICAgICAgICA8VGV4dC5EZXRhaWwgdHJ1bmNhdGUgdG9uZT1cInNlY29uZGFyeVwiPlxuICAgICAgICAgICAgICAgICAge3Byb3BzLmVtYWlsfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5EZXRhaWw+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGlzQm9sZD5cbiAgICAgICAgICAgICAgICAgIHtbcHJvcHMuZmlyc3ROYW1lLCBwcm9wcy5sYXN0TmFtZV0uam9pbignICcpLnRyaW0oKX1cbiAgICAgICAgICAgICAgICA8L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IHRydW5jYXRlPntwcm9wcy5lbWFpbH08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1VzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lcj5cbiAgICAgICAge2lzTmV3VGhlbWUgJiYgYWNjb3VudE1lbnVJdGVtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAge2FjY291bnRNZW51SXRlbXMubWFwKChtZW51KSA9PiAoXG4gICAgICAgICAgPE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVxuICAgICAgICAgICAga2V5PXttZW51LmtleX1cbiAgICAgICAgICAgIGZlYXR1cmVUb2dnbGU9e21lbnUuZmVhdHVyZVRvZ2dsZSA/PyB1bmRlZmluZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMoKX1cbiAgICAgICAgICAgICAgdG89e2AvYWNjb3VudC8ke21lbnUudXJpUGF0aH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBwcm9wcy5kb3duc2hpZnRQcm9wcy50b2dnbGVNZW51KCl9XG4gICAgICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgICAgIHJlZj17bWVudUVsZW1lbnRSZWZ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICAgIDxUZXh0LkJvZHk+e3JlbmRlckxhYmVsKG1lbnUsIHByb3BzLmxhbmd1YWdlKX08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgPC9PcHRpb25hbEZlYXR1cmVUb2dnbGU+XG4gICAgICAgICkpfVxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e2BodHRwczovL2NvbW1lcmNldG9vbHMuY29tL3ByaXZhY3kjc3VwcGxpZXJzYH1cbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICAgIHJlZj17IWFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPyBtZW51RWxlbWVudFJlZiA6IHVuZGVmaW5lZH1cbiAgICAgICAgPlxuICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5wcml2YWN5UG9saWN5fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e1NVUFBPUlRfUE9SVEFMX1VSTH1cbiAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnN1cHBvcnR9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIC8vIE5PVEU6IHdlIHdhbnQgdG8gcmVkaXJlY3QgdG8gYSBuZXcgcGFnZSBzbyB0aGF0IHRoZVxuICAgICAgICAgIC8vIHNlcnZlciBjYW4gcmVtb3ZlIHRoaW5ncyBsaWtlIGNvb2tpZSBmb3IgYWNjZXNzIHRva2VuLlxuICAgICAgICAgIGhyZWY9e2AvbG9nb3V0P3JlYXNvbj0ke0xPR09VVF9SRUFTT05TLlVTRVJ9YH1cbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsb2dvdXQtYnV0dG9uXCJcbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmxvZ291dH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgIDxkaXYgdGFiSW5kZXg9ezB9IG9uRm9jdXM9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpfSAvPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51Qm9keS5kaXNwbGF5TmFtZSA9ICdVc2VyU2V0dGluZ3NNZW51Qm9keSc7XG5cbmNvbnN0IFVzZXJTZXR0aW5nc01lbnUgPSAocHJvcHM6IFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGRhdGEtdGVzdD1cInVzZXItc2V0dGluZ3MtbWVudVwiPlxuICAgICAgPEFjY2Vzc2libGVIaWRkZW4+XG4gICAgICAgIDxzcGFuIGlkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMubWVudUxhYmVsfSAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L0FjY2Vzc2libGVIaWRkZW4+XG4gICAgICA8RG93bnNoaWZ0IHN0YXRlUmVkdWNlcj17c3RhdGVSZWR1Y2VyfSBsYWJlbElkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgeyhkb3duc2hpZnRQcm9wcykgPT4gKFxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBgfVxuICAgICAgICAgICAgICB7Li4uZG93bnNoaWZ0UHJvcHMuZ2V0VG9nZ2xlQnV0dG9uUHJvcHMoe1xuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHMuaXNPcGVuXG4gICAgICAgICAgICAgICAgICAgID8gbWVzc2FnZXMuY2xvc2VNZW51TGFiZWxcbiAgICAgICAgICAgICAgICAgICAgOiBtZXNzYWdlcy5vcGVuTWVudUxhYmVsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxVc2VyQXZhdGFyXG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB7ZG93bnNoaWZ0UHJvcHMuaXNPcGVuICYmIChcbiAgICAgICAgICAgICAgPFVzZXJTZXR0aW5nc01lbnVCb2R5XG4gICAgICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgICAgIGRvd25zaGlmdFByb3BzPXtkb3duc2hpZnRQcm9wc31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0Rvd25zaGlmdD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnUnO1xuXG5leHBvcnQgZGVmYXVsdCBVc2VyU2V0dGluZ3NNZW51O1xuXG4vLyBGb3IgdGVzdGluZ1xuZXhwb3J0IHsgVXNlckF2YXRhciwgVXNlclNldHRpbmdzTWVudUJvZHkgfTtcbiJdfQ== */"),
222
- children: props.children
223
- });
224
- }
225
- return jsx(Spacings.Inset, {
226
- scale: "s",
227
- children: props.children
228
- });
229
- };
230
- MenuItemLabel.propTypes = process.env.NODE_ENV !== "production" ? {
231
- isNewTheme: _pt.bool.isRequired,
232
- children: _pt.node.isRequired
233
- } : {};
234
- const UserSettingsAvatarContainer = props => {
235
- if (props.isNewTheme) {
236
- return jsx("div", {
237
- css: /*#__PURE__*/css("padding:", designTokens.spacing30, " ", designTokens.spacing50, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:UserSettingsAvatarContainer;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNktnQiIsImZpbGUiOiJ1c2VyLXNldHRpbmdzLW1lbnUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7IFJlYWN0Tm9kZSwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IFRvZ2dsZUZlYXR1cmUgfSBmcm9tICdAZmxvcGZsaXAvcmVhY3QtYnJvYWRjYXN0JztcbmltcG9ydCBEb3duc2hpZnQsIHtcbiAgdHlwZSBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzLFxuICB0eXBlIERvd25zaGlmdFByb3BzLFxufSBmcm9tICdkb3duc2hpZnQnO1xuaW1wb3J0IHsgdXNlSW50bCwgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIGFzIGFwcGtpdERlc2lnblRva2VucyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgdXNlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tc2hlbGwtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBMT0dPVVRfUkVBU09OUyxcbiAgTk9fVkFMVUVfRkFMTEJBQ0ssXG4gIFNVUFBPUlRfUE9SVEFMX1VSTCxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJztcbmltcG9ydCB7IHJlcG9ydEVycm9yVG9TZW50cnkgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9zZW50cnknO1xuaW1wb3J0IEFjY2Vzc2libGVIaWRkZW4gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvYWNjZXNzaWJsZS1oaWRkZW4nO1xuaW1wb3J0IEF2YXRhciBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hdmF0YXInO1xuaW1wb3J0IHtcbiAgZGVzaWduVG9rZW5zIGFzIHVpa2l0RGVzaWduVG9rZW5zLFxuICB1c2VUaGVtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBDYXJldERvd25JY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IFNwYWNpbmdzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzJztcbmltcG9ydCBUZXh0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQnO1xuaW1wb3J0IHsgRElNRU5TSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgdXNlQXBwbGljYXRpb25zTWVudSBmcm9tICcuLi8uLi9ob29rcy91c2UtYXBwbGljYXRpb25zLW1lbnUnO1xuaW1wb3J0IHR5cGUgeyBUVXNlciB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9tYyc7XG5pbXBvcnQgdHlwZSB7IFRGZXRjaEFwcGxpY2F0aW9uc01lbnVRdWVyeSB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9wcm94eSc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgUHJvcHMgPSBQaWNrPFxuICBUVXNlcixcbiAgJ2xhbmd1YWdlJyB8ICdmaXJzdE5hbWUnIHwgJ2xhc3ROYW1lJyB8ICdlbWFpbCcgfCAnZ3JhdmF0YXJIYXNoJ1xuPjtcbnR5cGUgTWVudUJvZHlQcm9wcyA9IFByb3BzICYge1xuICBkb3duc2hpZnRQcm9wczogQ29udHJvbGxlclN0YXRlQW5kSGVscGVyczx7fT47XG59O1xudHlwZSBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcyA9IHtcbiAgZmVhdHVyZVRvZ2dsZT86IHN0cmluZztcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVJdGVtUHJvcHMgPSB7XG4gIGhhc0RpdmlkZXI/OiBib29sZWFuO1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xufTtcbnR5cGUgTWVudUl0ZW1MYWJlbFByb3BzID0ge1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBNZW51Q29uZmlnID0gVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5WydhcHBsaWNhdGlvbnNNZW51J11bJ2FwcEJhciddWzBdO1xuXG5jb25zdCBNRU5VX0xBQkVMX0lEID0gJ3VzZXItbWVudS1zZXR0aW5nLW1lbnUtbGFiZWwnO1xuXG5jb25zdCBVc2VyQXZhdGFyID0gKFxuICBwcm9wczogUGljazxQcm9wcywgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2dyYXZhdGFySGFzaCc+XG4pID0+IHtcbiAgY29uc3QgW2lzTW91c2VPdmVyLCBzZXRJc01vdXNlT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3ZlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3Zlcih0cnVlKTtcbiAgfSwgW10pO1xuICBjb25zdCBoYW5kbGVNb3VzZU91dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3ZlcihmYWxzZSk7XG4gIH0sIFtdKTtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IG9uTW91c2VPdmVyPXtoYW5kbGVNb3VzZU92ZXJ9IG9uTW91c2VPdXQ9e2hhbmRsZU1vdXNlT3V0fT5cbiAgICAgIDxTcGFjaW5ncy5JbmxpbmUgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgIGZpcnN0TmFtZT17cHJvcHMuZmlyc3ROYW1lfVxuICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICBpc0hpZ2hsaWdodGVkPXtpc01vdXNlT3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICAge2lzTmV3VGhlbWUgPyBudWxsIDogKFxuICAgICAgICAgIDxDYXJldERvd25JY29uXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgY29sb3I9e2lzTW91c2VPdmVyID8gJ25ldXRyYWw2MCcgOiAnc29saWQnfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyQXZhdGFyLmRpc3BsYXlOYW1lID0gJ1VzZXJBdmF0YXInO1xuXG5mdW5jdGlvbiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkge1xuICByZXR1cm4gQm9vbGVhbihcbiAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5nZXRBdHRyaWJ1dGUoJ2RhdGEtdXNlci1zZXR0aW5ncy1tZW51JylcbiAgKTtcbn1cblxuY29uc3Qgc3RhdGVSZWR1Y2VyOiBEb3duc2hpZnRQcm9wczx7fT5bJ3N0YXRlUmVkdWNlciddID0gKHN0YXRlLCBjaGFuZ2VzKSA9PiB7XG4gIHN3aXRjaCAoY2hhbmdlcy50eXBlKSB7XG4gICAgLy8gU28gaW4gY2FzZSB0aGUgdXNlciB3YW50cyB0byBuYXZpZ2F0ZSB3aXRoIHRoZSB0YWIgYnV0dG9uXG4gICAgLy8gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgbWVudSBkb2VzIG5vdCBjbG9zZVxuICAgIGNhc2UgRG93bnNoaWZ0LnN0YXRlQ2hhbmdlVHlwZXMuYmx1ckJ1dHRvbjpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNoYW5nZXMsXG4gICAgICAgIGlzT3BlbjogKHN0YXRlLmlzT3BlbiAmJiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpID8/IGZhbHNlLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cbn07XG5cbmNvbnN0IE9wdGlvbmFsRmVhdHVyZVRvZ2dsZSA9IChwcm9wczogT3B0aW9uYWxGZWF0dXJlVG9nZ2xlUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmZlYXR1cmVUb2dnbGUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvZ2dsZUZlYXR1cmUgZmxhZz17cHJvcHMuZmVhdHVyZVRvZ2dsZX0+e3Byb3BzLmNoaWxkcmVufTwvVG9nZ2xlRmVhdHVyZT5cbiAgICApO1xuICB9XG4gIHJldHVybiA8Pntwcm9wcy5jaGlsZHJlbn08Lz47XG59O1xuXG5jb25zdCByZW5kZXJMYWJlbCA9IChcbiAgbWVudTogTWVudUNvbmZpZyxcbiAgYXBwbGljYXRpb25MYW5ndWFnZTogUHJvcHNbJ2xhbmd1YWdlJ11cbikgPT4ge1xuICBjb25zdCBsb2NhbGl6ZWRMYWJlbCA9IG1lbnUubGFiZWxBbGxMb2NhbGVzLmZpbmQoKGxvYykgPT5cbiAgICBhcHBsaWNhdGlvbkxhbmd1YWdlLnN0YXJ0c1dpdGgobG9jLmxvY2FsZSlcbiAgKTtcbiAgaWYgKGxvY2FsaXplZExhYmVsKSByZXR1cm4gbG9jYWxpemVkTGFiZWwudmFsdWU7XG4gIHJldHVybiBOT19WQUxVRV9GQUxMQkFDSztcbn07XG5cbmNvbnN0IE1lbnVJdGVtID0gc3R5bGVkLmRpdjxNZW51SXRlbVByb3BzPmBcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTb2xpZH07XG5cbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke2FwcGtpdERlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JVc2VyTWVudUl0ZW1XaGVuSG92ZXJlZH07XG4gIH1cblxuICAkeyhwcm9wcykgPT5cbiAgICBwcm9wcy5oYXNEaXZpZGVyID09PSB0cnVlXG4gICAgICA/IGNzc2BcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHt1aWtpdERlc2lnblRva2Vucy5jb2xvck5ldXRyYWx9O1xuICAgICAgICAgIG1hcmdpbjogJHthcHBraXREZXNpZ25Ub2tlbnMubWFyZ2luRm9yVXNlck1lbnVJdGVtfTtcbiAgICAgICAgYFxuICAgICAgOiAnJ307XG5gO1xuXG5jb25zdCBNZW51SXRlbUxhYmVsID0gKHByb3BzOiBNZW51SXRlbUxhYmVsUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0gJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nNTB9O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG4gIHJldHVybiA8U3BhY2luZ3MuSW5zZXQgc2NhbGU9XCJzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyID0gKFxuICBwcm9wczogVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHNcbikgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzMwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInhzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgZ2V0VXNlclNldHRpbmdzTWVudVN0eWxlcyA9IChpc05ld1RoZW1lOiBib29sZWFuKSA9PiB7XG4gIGlmIChpc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIGNzc2BcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzMn07XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIHdpZHRoOiAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbnN0cmFpbnQ5fTtcbiAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICAgIHBhZGRpbmc6IDAgMCAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcxMH0gMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYDtcbiAgfVxuXG4gIHJldHVybiBjc3NgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICBib3JkZXI6IDFweCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yUHJpbWFyeTQwfSBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Vpa2l0RGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICAgIGJveC1zaGFkb3c6ICR7dWlraXREZXNpZ25Ub2tlbnMuc2hhZG93N307XG4gICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDd9O1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIHRvcDogY2FsYygke0RJTUVOU0lPTlMuaGVhZGVyfSArICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSk7XG4gICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nWHN9O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIGA7XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMgPSAoKSA9PiBjc3NgXG4gIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgVXNlclNldHRpbmdzTWVudUJvZHkgPSAocHJvcHM6IE1lbnVCb2R5UHJvcHMpID0+IHtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgLy8gRm9jdXMgb24gYSBtZW51IGl0ZW0gd2hlbiBpdCdzIG9wZW5lZCB0aHJvdWdoIGtleWJvYXJkXG4gIGNvbnN0IG1lbnVFbGVtZW50UmVmID0gdXNlUmVmPEhUTUxBbmNob3JFbGVtZW50PihudWxsKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBtZW51RWxlbWVudFJlZi5jdXJyZW50Py5mb2N1cygpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgZW52aXJvbm1lbnQgPSB1c2VBcHBsaWNhdGlvbkNvbnRleHQoKGNvbnRleHQpID0+IGNvbnRleHQuZW52aXJvbm1lbnQpO1xuXG4gIGNvbnN0IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPSB1c2VBcHBsaWNhdGlvbnNNZW51PCdhcHBCYXInPignYXBwQmFyJywge1xuICAgIHF1ZXJ5T3B0aW9uczoge1xuICAgICAgb25FcnJvcjogcmVwb3J0RXJyb3JUb1NlbnRyeSxcbiAgICB9LFxuICAgIGVudmlyb25tZW50LFxuICB9KTtcbiAgY29uc3QgYWNjb3VudE1lbnVJdGVtcyA9IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPz8gW107XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSAnRXNjJyB8fFxuICAgICAgICAgIChldmVudC5rZXkgPT09ICdUYWInICYmICFnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG4gICAgICB9fVxuICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzKGlzTmV3VGhlbWUpfVxuICAgID5cbiAgICAgIDxkaXYgey4uLnByb3BzLmRvd25zaGlmdFByb3BzLmdldE1lbnVQcm9wcygpfT5cbiAgICAgICAgPFVzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lciBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPXt0aGVtZWRWYWx1ZSgneHMnLCAnbScpfSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgICAgIHNpemU9e3RoZW1lZFZhbHVlKCdzJywgJ20nKX1cbiAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge2lzTmV3VGhlbWUgPyAoXG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPFRleHQuU3ViaGVhZGxpbmUgYXM9XCJoNFwiPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5TdWJoZWFkbGluZT5cbiAgICAgICAgICAgICAgICA8VGV4dC5EZXRhaWwgdHJ1bmNhdGUgdG9uZT1cInNlY29uZGFyeVwiPlxuICAgICAgICAgICAgICAgICAge3Byb3BzLmVtYWlsfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5EZXRhaWw+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGlzQm9sZD5cbiAgICAgICAgICAgICAgICAgIHtbcHJvcHMuZmlyc3ROYW1lLCBwcm9wcy5sYXN0TmFtZV0uam9pbignICcpLnRyaW0oKX1cbiAgICAgICAgICAgICAgICA8L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IHRydW5jYXRlPntwcm9wcy5lbWFpbH08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1VzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lcj5cbiAgICAgICAge2lzTmV3VGhlbWUgJiYgYWNjb3VudE1lbnVJdGVtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAge2FjY291bnRNZW51SXRlbXMubWFwKChtZW51KSA9PiAoXG4gICAgICAgICAgPE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVxuICAgICAgICAgICAga2V5PXttZW51LmtleX1cbiAgICAgICAgICAgIGZlYXR1cmVUb2dnbGU9e21lbnUuZmVhdHVyZVRvZ2dsZSA/PyB1bmRlZmluZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMoKX1cbiAgICAgICAgICAgICAgdG89e2AvYWNjb3VudC8ke21lbnUudXJpUGF0aH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBwcm9wcy5kb3duc2hpZnRQcm9wcy50b2dnbGVNZW51KCl9XG4gICAgICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgICAgIHJlZj17bWVudUVsZW1lbnRSZWZ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICAgIDxUZXh0LkJvZHk+e3JlbmRlckxhYmVsKG1lbnUsIHByb3BzLmxhbmd1YWdlKX08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgPC9PcHRpb25hbEZlYXR1cmVUb2dnbGU+XG4gICAgICAgICkpfVxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e2BodHRwczovL2NvbW1lcmNldG9vbHMuY29tL3ByaXZhY3kjc3VwcGxpZXJzYH1cbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICAgIHJlZj17IWFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPyBtZW51RWxlbWVudFJlZiA6IHVuZGVmaW5lZH1cbiAgICAgICAgPlxuICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5wcml2YWN5UG9saWN5fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e1NVUFBPUlRfUE9SVEFMX1VSTH1cbiAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnN1cHBvcnR9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIC8vIE5PVEU6IHdlIHdhbnQgdG8gcmVkaXJlY3QgdG8gYSBuZXcgcGFnZSBzbyB0aGF0IHRoZVxuICAgICAgICAgIC8vIHNlcnZlciBjYW4gcmVtb3ZlIHRoaW5ncyBsaWtlIGNvb2tpZSBmb3IgYWNjZXNzIHRva2VuLlxuICAgICAgICAgIGhyZWY9e2AvbG9nb3V0P3JlYXNvbj0ke0xPR09VVF9SRUFTT05TLlVTRVJ9YH1cbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsb2dvdXQtYnV0dG9uXCJcbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmxvZ291dH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgIDxkaXYgdGFiSW5kZXg9ezB9IG9uRm9jdXM9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpfSAvPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51Qm9keS5kaXNwbGF5TmFtZSA9ICdVc2VyU2V0dGluZ3NNZW51Qm9keSc7XG5cbmNvbnN0IFVzZXJTZXR0aW5nc01lbnUgPSAocHJvcHM6IFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGRhdGEtdGVzdD1cInVzZXItc2V0dGluZ3MtbWVudVwiPlxuICAgICAgPEFjY2Vzc2libGVIaWRkZW4+XG4gICAgICAgIDxzcGFuIGlkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMubWVudUxhYmVsfSAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L0FjY2Vzc2libGVIaWRkZW4+XG4gICAgICA8RG93bnNoaWZ0IHN0YXRlUmVkdWNlcj17c3RhdGVSZWR1Y2VyfSBsYWJlbElkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgeyhkb3duc2hpZnRQcm9wcykgPT4gKFxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBgfVxuICAgICAgICAgICAgICB7Li4uZG93bnNoaWZ0UHJvcHMuZ2V0VG9nZ2xlQnV0dG9uUHJvcHMoe1xuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHMuaXNPcGVuXG4gICAgICAgICAgICAgICAgICAgID8gbWVzc2FnZXMuY2xvc2VNZW51TGFiZWxcbiAgICAgICAgICAgICAgICAgICAgOiBtZXNzYWdlcy5vcGVuTWVudUxhYmVsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxVc2VyQXZhdGFyXG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB7ZG93bnNoaWZ0UHJvcHMuaXNPcGVuICYmIChcbiAgICAgICAgICAgICAgPFVzZXJTZXR0aW5nc01lbnVCb2R5XG4gICAgICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgICAgIGRvd25zaGlmdFByb3BzPXtkb3duc2hpZnRQcm9wc31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0Rvd25zaGlmdD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnUnO1xuXG5leHBvcnQgZGVmYXVsdCBVc2VyU2V0dGluZ3NNZW51O1xuXG4vLyBGb3IgdGVzdGluZ1xuZXhwb3J0IHsgVXNlckF2YXRhciwgVXNlclNldHRpbmdzTWVudUJvZHkgfTtcbiJdfQ== */"),
238
- children: props.children
239
- });
240
- }
241
- return jsx(Spacings.Inset, {
242
- scale: "xs",
243
- children: props.children
244
- });
245
- };
246
- UserSettingsAvatarContainer.propTypes = process.env.NODE_ENV !== "production" ? {
247
- isNewTheme: _pt.bool.isRequired,
248
- children: _pt.node.isRequired
249
- } : {};
250
- const getUserSettingsMenuStyles = isNewTheme => {
251
- if (isNewTheme) {
252
- return /*#__PURE__*/css("position:absolute;background:", designTokens.colorSurface, ";border-radius:", designTokens.borderRadius2, ";box-shadow:0px 2px 5px 0px rgba(0, 0, 0, 0.15);width:", designTokens.constraint9, ";right:40px;top:calc(", DIMENSIONS.header, " + ", designTokens.spacing20, ");padding:0 0 ", designTokens.spacing10, " 0;overflow:hidden;" + (process.env.NODE_ENV === "production" ? "" : ";label:getUserSettingsMenuStyles;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMExjIiwiZmlsZSI6InVzZXItc2V0dGluZ3MtbWVudS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUT0RPOiBAcmVkZXNpZ24gY2xlYW51cFxuaW1wb3J0IHsgUmVhY3ROb2RlLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgVG9nZ2xlRmVhdHVyZSB9IGZyb20gJ0BmbG9wZmxpcC9yZWFjdC1icm9hZGNhc3QnO1xuaW1wb3J0IERvd25zaGlmdCwge1xuICB0eXBlIENvbnRyb2xsZXJTdGF0ZUFuZEhlbHBlcnMsXG4gIHR5cGUgRG93bnNoaWZ0UHJvcHMsXG59IGZyb20gJ2Rvd25zaGlmdCc7XG5pbXBvcnQgeyB1c2VJbnRsLCBGb3JtYXR0ZWRNZXNzYWdlIH0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgYXMgYXBwa2l0RGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cyc7XG5pbXBvcnQgeyB1c2VBcHBsaWNhdGlvbkNvbnRleHQgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9hcHBsaWNhdGlvbi1zaGVsbC1jb25uZWN0b3JzJztcbmltcG9ydCB7XG4gIExPR09VVF9SRUFTT05TLFxuICBOT19WQUxVRV9GQUxMQkFDSyxcbiAgU1VQUE9SVF9QT1JUQUxfVVJMLFxufSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9jb25zdGFudHMnO1xuaW1wb3J0IHsgcmVwb3J0RXJyb3JUb1NlbnRyeSB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3NlbnRyeSc7XG5pbXBvcnQgQWNjZXNzaWJsZUhpZGRlbiBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hY2Nlc3NpYmxlLWhpZGRlbic7XG5pbXBvcnQgQXZhdGFyIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2F2YXRhcic7XG5pbXBvcnQge1xuICBkZXNpZ25Ub2tlbnMgYXMgdWlraXREZXNpZ25Ub2tlbnMsXG4gIHVzZVRoZW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IENhcmV0RG93bkljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQgU3BhY2luZ3MgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3MnO1xuaW1wb3J0IFRleHQgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdGV4dCc7XG5pbXBvcnQgeyBESU1FTlNJT05TIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB1c2VBcHBsaWNhdGlvbnNNZW51IGZyb20gJy4uLy4uL2hvb2tzL3VzZS1hcHBsaWNhdGlvbnMtbWVudSc7XG5pbXBvcnQgdHlwZSB7IFRVc2VyIH0gZnJvbSAnLi4vLi4vdHlwZXMvZ2VuZXJhdGVkL21jJztcbmltcG9ydCB0eXBlIHsgVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5IH0gZnJvbSAnLi4vLi4vdHlwZXMvZ2VuZXJhdGVkL3Byb3h5JztcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJztcblxudHlwZSBQcm9wcyA9IFBpY2s8XG4gIFRVc2VyLFxuICAnbGFuZ3VhZ2UnIHwgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2VtYWlsJyB8ICdncmF2YXRhckhhc2gnXG4+O1xudHlwZSBNZW51Qm9keVByb3BzID0gUHJvcHMgJiB7XG4gIGRvd25zaGlmdFByb3BzOiBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzPHt9Pjtcbn07XG50eXBlIE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVByb3BzID0ge1xuICBmZWF0dXJlVG9nZ2xlPzogc3RyaW5nO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgTWVudUl0ZW1Qcm9wcyA9IHtcbiAgaGFzRGl2aWRlcj86IGJvb2xlYW47XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG59O1xudHlwZSBNZW51SXRlbUxhYmVsUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXJQcm9wcyA9IHtcbiAgaXNOZXdUaGVtZTogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVDb25maWcgPSBURmV0Y2hBcHBsaWNhdGlvbnNNZW51UXVlcnlbJ2FwcGxpY2F0aW9uc01lbnUnXVsnYXBwQmFyJ11bMF07XG5cbmNvbnN0IE1FTlVfTEFCRUxfSUQgPSAndXNlci1tZW51LXNldHRpbmctbWVudS1sYWJlbCc7XG5cbmNvbnN0IFVzZXJBdmF0YXIgPSAoXG4gIHByb3BzOiBQaWNrPFByb3BzLCAnZmlyc3ROYW1lJyB8ICdsYXN0TmFtZScgfCAnZ3JhdmF0YXJIYXNoJz5cbikgPT4ge1xuICBjb25zdCBbaXNNb3VzZU92ZXIsIHNldElzTW91c2VPdmVyXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgaGFuZGxlTW91c2VPdmVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzTW91c2VPdmVyKHRydWUpO1xuICB9LCBbXSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3V0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzTW91c2VPdmVyKGZhbHNlKTtcbiAgfSwgW10pO1xuICBjb25zdCB7IGlzTmV3VGhlbWUsIHRoZW1lZFZhbHVlIH0gPSB1c2VUaGVtZSgpO1xuICByZXR1cm4gKFxuICAgIDxkaXYgb25Nb3VzZU92ZXI9e2hhbmRsZU1vdXNlT3Zlcn0gb25Nb3VzZU91dD17aGFuZGxlTW91c2VPdXR9PlxuICAgICAgPFNwYWNpbmdzLklubGluZSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgIDxBdmF0YXJcbiAgICAgICAgICBzaXplPXt0aGVtZWRWYWx1ZSgncycsICdtJyl9XG4gICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgIGlzSGlnaGxpZ2h0ZWQ9e2lzTW91c2VPdmVyfVxuICAgICAgICAvPlxuICAgICAgICB7aXNOZXdUaGVtZSA/IG51bGwgOiAoXG4gICAgICAgICAgPENhcmV0RG93bkljb25cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICBjb2xvcj17aXNNb3VzZU92ZXIgPyAnbmV1dHJhbDYwJyA6ICdzb2xpZCd9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJBdmF0YXIuZGlzcGxheU5hbWUgPSAnVXNlckF2YXRhcic7XG5cbmZ1bmN0aW9uIGdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSB7XG4gIHJldHVybiBCb29sZWFuKFxuICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ/LmdldEF0dHJpYnV0ZSgnZGF0YS11c2VyLXNldHRpbmdzLW1lbnUnKVxuICApO1xufVxuXG5jb25zdCBzdGF0ZVJlZHVjZXI6IERvd25zaGlmdFByb3BzPHt9Plsnc3RhdGVSZWR1Y2VyJ10gPSAoc3RhdGUsIGNoYW5nZXMpID0+IHtcbiAgc3dpdGNoIChjaGFuZ2VzLnR5cGUpIHtcbiAgICAvLyBTbyBpbiBjYXNlIHRoZSB1c2VyIHdhbnRzIHRvIG5hdmlnYXRlIHdpdGggdGhlIHRhYiBidXR0b25cbiAgICAvLyB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBtZW51IGRvZXMgbm90IGNsb3NlXG4gICAgY2FzZSBEb3duc2hpZnQuc3RhdGVDaGFuZ2VUeXBlcy5ibHVyQnV0dG9uOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uY2hhbmdlcyxcbiAgICAgICAgaXNPcGVuOiAoc3RhdGUuaXNPcGVuICYmIGdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSkgPz8gZmFsc2UsXG4gICAgICB9O1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gY2hhbmdlcztcbiAgfVxufTtcblxuY29uc3QgT3B0aW9uYWxGZWF0dXJlVG9nZ2xlID0gKHByb3BzOiBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuZmVhdHVyZVRvZ2dsZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8VG9nZ2xlRmVhdHVyZSBmbGFnPXtwcm9wcy5mZWF0dXJlVG9nZ2xlfT57cHJvcHMuY2hpbGRyZW59PC9Ub2dnbGVGZWF0dXJlPlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDw+e3Byb3BzLmNoaWxkcmVufTwvPjtcbn07XG5cbmNvbnN0IHJlbmRlckxhYmVsID0gKFxuICBtZW51OiBNZW51Q29uZmlnLFxuICBhcHBsaWNhdGlvbkxhbmd1YWdlOiBQcm9wc1snbGFuZ3VhZ2UnXVxuKSA9PiB7XG4gIGNvbnN0IGxvY2FsaXplZExhYmVsID0gbWVudS5sYWJlbEFsbExvY2FsZXMuZmluZCgobG9jKSA9PlxuICAgIGFwcGxpY2F0aW9uTGFuZ3VhZ2Uuc3RhcnRzV2l0aChsb2MubG9jYWxlKVxuICApO1xuICBpZiAobG9jYWxpemVkTGFiZWwpIHJldHVybiBsb2NhbGl6ZWRMYWJlbC52YWx1ZTtcbiAgcmV0dXJuIE5PX1ZBTFVFX0ZBTExCQUNLO1xufTtcblxuY29uc3QgTWVudUl0ZW0gPSBzdHlsZWQuZGl2PE1lbnVJdGVtUHJvcHM+YFxuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclNvbGlkfTtcblxuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7YXBwa2l0RGVzaWduVG9rZW5zLmJhY2tncm91bmRDb2xvckZvclVzZXJNZW51SXRlbVdoZW5Ib3ZlcmVkfTtcbiAgfVxuXG4gICR7KHByb3BzKSA9PlxuICAgIHByb3BzLmhhc0RpdmlkZXIgPT09IHRydWVcbiAgICAgID8gY3NzYFxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yTmV1dHJhbH07XG4gICAgICAgICAgbWFyZ2luOiAke2FwcGtpdERlc2lnblRva2Vucy5tYXJnaW5Gb3JVc2VyTWVudUl0ZW19O1xuICAgICAgICBgXG4gICAgICA6ICcnfTtcbmA7XG5cbmNvbnN0IE1lbnVJdGVtTGFiZWwgPSAocHJvcHM6IE1lbnVJdGVtTGFiZWxQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInNcIj57cHJvcHMuY2hpbGRyZW59PC9TcGFjaW5ncy5JbnNldD47XG59O1xuXG5jb25zdCBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXIgPSAoXG4gIHByb3BzOiBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXJQcm9wc1xuKSA9PiB7XG4gIGlmIChwcm9wcy5pc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMzB9ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzUwfTtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge3Byb3BzLmNoaWxkcmVufVxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxuICByZXR1cm4gPFNwYWNpbmdzLkluc2V0IHNjYWxlPVwieHNcIj57cHJvcHMuY2hpbGRyZW59PC9TcGFjaW5ncy5JbnNldD47XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzID0gKGlzTmV3VGhlbWU6IGJvb2xlYW4pID0+IHtcbiAgaWYgKGlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gY3NzYFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICAgICAgYm9yZGVyLXJhZGl1czogJHt1aWtpdERlc2lnblRva2Vucy5ib3JkZXJSYWRpdXMyfTtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDl9O1xuICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICB0b3A6IGNhbGMoJHtESU1FTlNJT05TLmhlYWRlcn0gKyAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0pO1xuICAgICAgcGFkZGluZzogMCAwICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzEwfSAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBgO1xuICB9XG5cbiAgcmV0dXJuIGNzc2BcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICAgIGJvcmRlcjogMXB4ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JQcmltYXJ5NDB9IHNvbGlkO1xuICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzNn07XG4gICAgYm94LXNoYWRvdzogJHt1aWtpdERlc2lnblRva2Vucy5zaGFkb3c3fTtcbiAgICB3aWR0aDogJHt1aWtpdERlc2lnblRva2Vucy5jb25zdHJhaW50N307XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmdYc307XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYDtcbn07XG5cbmNvbnN0IGdldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcyA9ICgpID0+IGNzc2BcbiAgZGlzcGxheTogYmxvY2s7XG5gO1xuXG5jb25zdCBVc2VyU2V0dGluZ3NNZW51Qm9keSA9IChwcm9wczogTWVudUJvZHlQcm9wcykgPT4ge1xuICBjb25zdCB7IGlzTmV3VGhlbWUsIHRoZW1lZFZhbHVlIH0gPSB1c2VUaGVtZSgpO1xuICAvLyBGb2N1cyBvbiBhIG1lbnUgaXRlbSB3aGVuIGl0J3Mgb3BlbmVkIHRocm91Z2gga2V5Ym9hcmRcbiAgY29uc3QgbWVudUVsZW1lbnRSZWYgPSB1c2VSZWY8SFRNTEFuY2hvckVsZW1lbnQ+KG51bGwpO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIG1lbnVFbGVtZW50UmVmLmN1cnJlbnQ/LmZvY3VzKCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCBlbnZpcm9ubWVudCA9IHVzZUFwcGxpY2F0aW9uQ29udGV4dCgoY29udGV4dCkgPT4gY29udGV4dC5lbnZpcm9ubWVudCk7XG5cbiAgY29uc3QgYXBwbGljYXRpb25zQXBwQmFyTWVudSA9IHVzZUFwcGxpY2F0aW9uc01lbnU8J2FwcEJhcic+KCdhcHBCYXInLCB7XG4gICAgcXVlcnlPcHRpb25zOiB7XG4gICAgICBvbkVycm9yOiByZXBvcnRFcnJvclRvU2VudHJ5LFxuICAgIH0sXG4gICAgZW52aXJvbm1lbnQsXG4gIH0pO1xuICBjb25zdCBhY2NvdW50TWVudUl0ZW1zID0gYXBwbGljYXRpb25zQXBwQmFyTWVudSA/PyBbXTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBldmVudC5rZXkgPT09ICdFc2MnIHx8XG4gICAgICAgICAgKGV2ZW50LmtleSA9PT0gJ1RhYicgJiYgIWdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgcHJvcHMuZG93bnNoaWZ0UHJvcHMuY2xvc2VNZW51KCk7XG4gICAgICAgIH1cbiAgICAgIH19XG4gICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVTdHlsZXMoaXNOZXdUaGVtZSl9XG4gICAgPlxuICAgICAgPGRpdiB7Li4ucHJvcHMuZG93bnNoaWZ0UHJvcHMuZ2V0TWVudVByb3BzKCl9PlxuICAgICAgICA8VXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgIDxTcGFjaW5ncy5JbmxpbmUgc2NhbGU9e3RoZW1lZFZhbHVlKCd4cycsICdtJyl9IGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgIDxBdmF0YXJcbiAgICAgICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgICAgICBmaXJzdE5hbWU9e3Byb3BzLmZpcnN0TmFtZX1cbiAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICBncmF2YXRhckhhc2g9e3Byb3BzLmdyYXZhdGFySGFzaH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB7aXNOZXdUaGVtZSA/IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5TdWJoZWFkbGluZSBhcz1cImg0XCI+XG4gICAgICAgICAgICAgICAgICB7W3Byb3BzLmZpcnN0TmFtZSwgcHJvcHMubGFzdE5hbWVdLmpvaW4oJyAnKS50cmltKCl9XG4gICAgICAgICAgICAgICAgPC9UZXh0LlN1YmhlYWRsaW5lPlxuICAgICAgICAgICAgICAgIDxUZXh0LkRldGFpbCB0cnVuY2F0ZSB0b25lPVwic2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICAgICAgICB7cHJvcHMuZW1haWx9XG4gICAgICAgICAgICAgICAgPC9UZXh0LkRldGFpbD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxUZXh0LkJvZHkgaXNCb2xkPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICAgIDxUZXh0LkJvZHkgdHJ1bmNhdGU+e3Byb3BzLmVtYWlsfTwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICAgICAgIDwvVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyPlxuICAgICAgICB7aXNOZXdUaGVtZSAmJiBhY2NvdW50TWVudUl0ZW1zLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgPE1lbnVJdGVtIGhhc0RpdmlkZXI9e3RydWV9IGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9IC8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICB7YWNjb3VudE1lbnVJdGVtcy5tYXAoKG1lbnUpID0+IChcbiAgICAgICAgICA8T3B0aW9uYWxGZWF0dXJlVG9nZ2xlXG4gICAgICAgICAgICBrZXk9e21lbnUua2V5fVxuICAgICAgICAgICAgZmVhdHVyZVRvZ2dsZT17bWVudS5mZWF0dXJlVG9nZ2xlID8/IHVuZGVmaW5lZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgICAgICB0bz17YC9hY2NvdW50LyR7bWVudS51cmlQYXRofWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICAgICAgZGF0YS11c2VyLXNldHRpbmdzLW1lbnVcbiAgICAgICAgICAgICAgcmVmPXttZW51RWxlbWVudFJlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICAgICAgPFRleHQuQm9keT57cmVuZGVyTGFiZWwobWVudSwgcHJvcHMubGFuZ3VhZ2UpfTwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICA8L09wdGlvbmFsRmVhdHVyZVRvZ2dsZT5cbiAgICAgICAgKSl9XG4gICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgaHJlZj17YGh0dHBzOi8vY29tbWVyY2V0b29scy5jb20vcHJpdmFjeSNzdXBwbGllcnNgfVxuICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMudG9nZ2xlTWVudSgpfVxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgcmVmPXshYXBwbGljYXRpb25zQXBwQmFyTWVudSA/IG1lbnVFbGVtZW50UmVmIDogdW5kZWZpbmVkfVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnByaXZhY3lQb2xpY3l9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgaHJlZj17U1VQUE9SVF9QT1JUQUxfVVJMfVxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMudG9nZ2xlTWVudSgpfVxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgID5cbiAgICAgICAgICA8TWVudUl0ZW0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgPFRleHQuQm9keSBpbnRsTWVzc2FnZT17bWVzc2FnZXMuc3VwcG9ydH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICA8L2E+XG4gICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgLy8gTk9URTogd2Ugd2FudCB0byByZWRpcmVjdCB0byBhIG5ldyBwYWdlIHNvIHRoYXQgdGhlXG4gICAgICAgICAgLy8gc2VydmVyIGNhbiByZW1vdmUgdGhpbmdzIGxpa2UgY29va2llIGZvciBhY2Nlc3MgdG9rZW4uXG4gICAgICAgICAgaHJlZj17YC9sb2dvdXQ/cmVhc29uPSR7TE9HT1VUX1JFQVNPTlMuVVNFUn1gfVxuICAgICAgICAgIGRhdGEtdGVzdD1cImxvZ291dC1idXR0b25cIlxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgID5cbiAgICAgICAgICA8TWVudUl0ZW0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgPFRleHQuQm9keSBpbnRsTWVzc2FnZT17bWVzc2FnZXMubG9nb3V0fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgPGRpdiB0YWJJbmRleD17MH0gb25Gb2N1cz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMuY2xvc2VNZW51KCl9IC8+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJTZXR0aW5nc01lbnVCb2R5LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnVCb2R5JztcblxuY29uc3QgVXNlclNldHRpbmdzTWVudSA9IChwcm9wczogUHJvcHMpID0+IHtcbiAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgZGF0YS10ZXN0PVwidXNlci1zZXR0aW5ncy1tZW51XCI+XG4gICAgICA8QWNjZXNzaWJsZUhpZGRlbj5cbiAgICAgICAgPHNwYW4gaWQ9e01FTlVfTEFCRUxfSUR9PlxuICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5tZW51TGFiZWx9IC8+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvQWNjZXNzaWJsZUhpZGRlbj5cbiAgICAgIDxEb3duc2hpZnQgc3RhdGVSZWR1Y2VyPXtzdGF0ZVJlZHVjZXJ9IGxhYmVsSWQ9e01FTlVfTEFCRUxfSUR9PlxuICAgICAgICB7KGRvd25zaGlmdFByb3BzKSA9PiAoXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGB9XG4gICAgICAgICAgICAgIHsuLi5kb3duc2hpZnRQcm9wcy5nZXRUb2dnbGVCdXR0b25Qcm9wcyh7XG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWwnOiBpbnRsLmZvcm1hdE1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICBkb3duc2hpZnRQcm9wcy5pc09wZW5cbiAgICAgICAgICAgICAgICAgICAgPyBtZXNzYWdlcy5jbG9zZU1lbnVMYWJlbFxuICAgICAgICAgICAgICAgICAgICA6IG1lc3NhZ2VzLm9wZW5NZW51TGFiZWxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFVzZXJBdmF0YXJcbiAgICAgICAgICAgICAgICBmaXJzdE5hbWU9e3Byb3BzLmZpcnN0TmFtZX1cbiAgICAgICAgICAgICAgICBsYXN0TmFtZT17cHJvcHMubGFzdE5hbWV9XG4gICAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIHtkb3duc2hpZnRQcm9wcy5pc09wZW4gJiYgKFxuICAgICAgICAgICAgICA8VXNlclNldHRpbmdzTWVudUJvZHlcbiAgICAgICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHM9e2Rvd25zaGlmdFByb3BzfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvRG93bnNoaWZ0PlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJTZXR0aW5nc01lbnUuZGlzcGxheU5hbWUgPSAnVXNlclNldHRpbmdzTWVudSc7XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJTZXR0aW5nc01lbnU7XG5cbi8vIEZvciB0ZXN0aW5nXG5leHBvcnQgeyBVc2VyQXZhdGFyLCBVc2VyU2V0dGluZ3NNZW51Qm9keSB9O1xuIl19 */");
253
- }
254
- return /*#__PURE__*/css("position:absolute;background:", designTokens.colorSurface, ";border:1px ", designTokens.colorPrimary40, " solid;border-radius:", designTokens.borderRadius6, ";box-shadow:", designTokens.shadow7, ";width:", designTokens.constraint7, ";right:14px;top:calc(", DIMENSIONS.header, " + ", designTokens.spacing20, ");padding:", designTokens.spacingXs, ";overflow:hidden;" + (process.env.NODE_ENV === "production" ? "" : ";label:getUserSettingsMenuStyles;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdU1ZIiwiZmlsZSI6InVzZXItc2V0dGluZ3MtbWVudS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUT0RPOiBAcmVkZXNpZ24gY2xlYW51cFxuaW1wb3J0IHsgUmVhY3ROb2RlLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgVG9nZ2xlRmVhdHVyZSB9IGZyb20gJ0BmbG9wZmxpcC9yZWFjdC1icm9hZGNhc3QnO1xuaW1wb3J0IERvd25zaGlmdCwge1xuICB0eXBlIENvbnRyb2xsZXJTdGF0ZUFuZEhlbHBlcnMsXG4gIHR5cGUgRG93bnNoaWZ0UHJvcHMsXG59IGZyb20gJ2Rvd25zaGlmdCc7XG5pbXBvcnQgeyB1c2VJbnRsLCBGb3JtYXR0ZWRNZXNzYWdlIH0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgYXMgYXBwa2l0RGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cyc7XG5pbXBvcnQgeyB1c2VBcHBsaWNhdGlvbkNvbnRleHQgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9hcHBsaWNhdGlvbi1zaGVsbC1jb25uZWN0b3JzJztcbmltcG9ydCB7XG4gIExPR09VVF9SRUFTT05TLFxuICBOT19WQUxVRV9GQUxMQkFDSyxcbiAgU1VQUE9SVF9QT1JUQUxfVVJMLFxufSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9jb25zdGFudHMnO1xuaW1wb3J0IHsgcmVwb3J0RXJyb3JUb1NlbnRyeSB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3NlbnRyeSc7XG5pbXBvcnQgQWNjZXNzaWJsZUhpZGRlbiBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hY2Nlc3NpYmxlLWhpZGRlbic7XG5pbXBvcnQgQXZhdGFyIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2F2YXRhcic7XG5pbXBvcnQge1xuICBkZXNpZ25Ub2tlbnMgYXMgdWlraXREZXNpZ25Ub2tlbnMsXG4gIHVzZVRoZW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IENhcmV0RG93bkljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQgU3BhY2luZ3MgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3MnO1xuaW1wb3J0IFRleHQgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdGV4dCc7XG5pbXBvcnQgeyBESU1FTlNJT05TIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB1c2VBcHBsaWNhdGlvbnNNZW51IGZyb20gJy4uLy4uL2hvb2tzL3VzZS1hcHBsaWNhdGlvbnMtbWVudSc7XG5pbXBvcnQgdHlwZSB7IFRVc2VyIH0gZnJvbSAnLi4vLi4vdHlwZXMvZ2VuZXJhdGVkL21jJztcbmltcG9ydCB0eXBlIHsgVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5IH0gZnJvbSAnLi4vLi4vdHlwZXMvZ2VuZXJhdGVkL3Byb3h5JztcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJztcblxudHlwZSBQcm9wcyA9IFBpY2s8XG4gIFRVc2VyLFxuICAnbGFuZ3VhZ2UnIHwgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2VtYWlsJyB8ICdncmF2YXRhckhhc2gnXG4+O1xudHlwZSBNZW51Qm9keVByb3BzID0gUHJvcHMgJiB7XG4gIGRvd25zaGlmdFByb3BzOiBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzPHt9Pjtcbn07XG50eXBlIE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVByb3BzID0ge1xuICBmZWF0dXJlVG9nZ2xlPzogc3RyaW5nO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgTWVudUl0ZW1Qcm9wcyA9IHtcbiAgaGFzRGl2aWRlcj86IGJvb2xlYW47XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG59O1xudHlwZSBNZW51SXRlbUxhYmVsUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXJQcm9wcyA9IHtcbiAgaXNOZXdUaGVtZTogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVDb25maWcgPSBURmV0Y2hBcHBsaWNhdGlvbnNNZW51UXVlcnlbJ2FwcGxpY2F0aW9uc01lbnUnXVsnYXBwQmFyJ11bMF07XG5cbmNvbnN0IE1FTlVfTEFCRUxfSUQgPSAndXNlci1tZW51LXNldHRpbmctbWVudS1sYWJlbCc7XG5cbmNvbnN0IFVzZXJBdmF0YXIgPSAoXG4gIHByb3BzOiBQaWNrPFByb3BzLCAnZmlyc3ROYW1lJyB8ICdsYXN0TmFtZScgfCAnZ3JhdmF0YXJIYXNoJz5cbikgPT4ge1xuICBjb25zdCBbaXNNb3VzZU92ZXIsIHNldElzTW91c2VPdmVyXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgaGFuZGxlTW91c2VPdmVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzTW91c2VPdmVyKHRydWUpO1xuICB9LCBbXSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3V0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzTW91c2VPdmVyKGZhbHNlKTtcbiAgfSwgW10pO1xuICBjb25zdCB7IGlzTmV3VGhlbWUsIHRoZW1lZFZhbHVlIH0gPSB1c2VUaGVtZSgpO1xuICByZXR1cm4gKFxuICAgIDxkaXYgb25Nb3VzZU92ZXI9e2hhbmRsZU1vdXNlT3Zlcn0gb25Nb3VzZU91dD17aGFuZGxlTW91c2VPdXR9PlxuICAgICAgPFNwYWNpbmdzLklubGluZSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgIDxBdmF0YXJcbiAgICAgICAgICBzaXplPXt0aGVtZWRWYWx1ZSgncycsICdtJyl9XG4gICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgIGlzSGlnaGxpZ2h0ZWQ9e2lzTW91c2VPdmVyfVxuICAgICAgICAvPlxuICAgICAgICB7aXNOZXdUaGVtZSA/IG51bGwgOiAoXG4gICAgICAgICAgPENhcmV0RG93bkljb25cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICBjb2xvcj17aXNNb3VzZU92ZXIgPyAnbmV1dHJhbDYwJyA6ICdzb2xpZCd9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJBdmF0YXIuZGlzcGxheU5hbWUgPSAnVXNlckF2YXRhcic7XG5cbmZ1bmN0aW9uIGdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSB7XG4gIHJldHVybiBCb29sZWFuKFxuICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ/LmdldEF0dHJpYnV0ZSgnZGF0YS11c2VyLXNldHRpbmdzLW1lbnUnKVxuICApO1xufVxuXG5jb25zdCBzdGF0ZVJlZHVjZXI6IERvd25zaGlmdFByb3BzPHt9Plsnc3RhdGVSZWR1Y2VyJ10gPSAoc3RhdGUsIGNoYW5nZXMpID0+IHtcbiAgc3dpdGNoIChjaGFuZ2VzLnR5cGUpIHtcbiAgICAvLyBTbyBpbiBjYXNlIHRoZSB1c2VyIHdhbnRzIHRvIG5hdmlnYXRlIHdpdGggdGhlIHRhYiBidXR0b25cbiAgICAvLyB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBtZW51IGRvZXMgbm90IGNsb3NlXG4gICAgY2FzZSBEb3duc2hpZnQuc3RhdGVDaGFuZ2VUeXBlcy5ibHVyQnV0dG9uOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uY2hhbmdlcyxcbiAgICAgICAgaXNPcGVuOiAoc3RhdGUuaXNPcGVuICYmIGdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSkgPz8gZmFsc2UsXG4gICAgICB9O1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gY2hhbmdlcztcbiAgfVxufTtcblxuY29uc3QgT3B0aW9uYWxGZWF0dXJlVG9nZ2xlID0gKHByb3BzOiBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuZmVhdHVyZVRvZ2dsZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8VG9nZ2xlRmVhdHVyZSBmbGFnPXtwcm9wcy5mZWF0dXJlVG9nZ2xlfT57cHJvcHMuY2hpbGRyZW59PC9Ub2dnbGVGZWF0dXJlPlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDw+e3Byb3BzLmNoaWxkcmVufTwvPjtcbn07XG5cbmNvbnN0IHJlbmRlckxhYmVsID0gKFxuICBtZW51OiBNZW51Q29uZmlnLFxuICBhcHBsaWNhdGlvbkxhbmd1YWdlOiBQcm9wc1snbGFuZ3VhZ2UnXVxuKSA9PiB7XG4gIGNvbnN0IGxvY2FsaXplZExhYmVsID0gbWVudS5sYWJlbEFsbExvY2FsZXMuZmluZCgobG9jKSA9PlxuICAgIGFwcGxpY2F0aW9uTGFuZ3VhZ2Uuc3RhcnRzV2l0aChsb2MubG9jYWxlKVxuICApO1xuICBpZiAobG9jYWxpemVkTGFiZWwpIHJldHVybiBsb2NhbGl6ZWRMYWJlbC52YWx1ZTtcbiAgcmV0dXJuIE5PX1ZBTFVFX0ZBTExCQUNLO1xufTtcblxuY29uc3QgTWVudUl0ZW0gPSBzdHlsZWQuZGl2PE1lbnVJdGVtUHJvcHM+YFxuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclNvbGlkfTtcblxuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7YXBwa2l0RGVzaWduVG9rZW5zLmJhY2tncm91bmRDb2xvckZvclVzZXJNZW51SXRlbVdoZW5Ib3ZlcmVkfTtcbiAgfVxuXG4gICR7KHByb3BzKSA9PlxuICAgIHByb3BzLmhhc0RpdmlkZXIgPT09IHRydWVcbiAgICAgID8gY3NzYFxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yTmV1dHJhbH07XG4gICAgICAgICAgbWFyZ2luOiAke2FwcGtpdERlc2lnblRva2Vucy5tYXJnaW5Gb3JVc2VyTWVudUl0ZW19O1xuICAgICAgICBgXG4gICAgICA6ICcnfTtcbmA7XG5cbmNvbnN0IE1lbnVJdGVtTGFiZWwgPSAocHJvcHM6IE1lbnVJdGVtTGFiZWxQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInNcIj57cHJvcHMuY2hpbGRyZW59PC9TcGFjaW5ncy5JbnNldD47XG59O1xuXG5jb25zdCBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXIgPSAoXG4gIHByb3BzOiBVc2VyU2V0dGluZ3NBdmF0YXJDb250YWluZXJQcm9wc1xuKSA9PiB7XG4gIGlmIChwcm9wcy5pc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMzB9ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzUwfTtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge3Byb3BzLmNoaWxkcmVufVxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxuICByZXR1cm4gPFNwYWNpbmdzLkluc2V0IHNjYWxlPVwieHNcIj57cHJvcHMuY2hpbGRyZW59PC9TcGFjaW5ncy5JbnNldD47XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzID0gKGlzTmV3VGhlbWU6IGJvb2xlYW4pID0+IHtcbiAgaWYgKGlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gY3NzYFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICAgICAgYm9yZGVyLXJhZGl1czogJHt1aWtpdERlc2lnblRva2Vucy5ib3JkZXJSYWRpdXMyfTtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDl9O1xuICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICB0b3A6IGNhbGMoJHtESU1FTlNJT05TLmhlYWRlcn0gKyAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0pO1xuICAgICAgcGFkZGluZzogMCAwICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzEwfSAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBgO1xuICB9XG5cbiAgcmV0dXJuIGNzc2BcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogJHt1aWtpdERlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICAgIGJvcmRlcjogMXB4ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JQcmltYXJ5NDB9IHNvbGlkO1xuICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzNn07XG4gICAgYm94LXNoYWRvdzogJHt1aWtpdERlc2lnblRva2Vucy5zaGFkb3c3fTtcbiAgICB3aWR0aDogJHt1aWtpdERlc2lnblRva2Vucy5jb25zdHJhaW50N307XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmdYc307XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYDtcbn07XG5cbmNvbnN0IGdldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcyA9ICgpID0+IGNzc2BcbiAgZGlzcGxheTogYmxvY2s7XG5gO1xuXG5jb25zdCBVc2VyU2V0dGluZ3NNZW51Qm9keSA9IChwcm9wczogTWVudUJvZHlQcm9wcykgPT4ge1xuICBjb25zdCB7IGlzTmV3VGhlbWUsIHRoZW1lZFZhbHVlIH0gPSB1c2VUaGVtZSgpO1xuICAvLyBGb2N1cyBvbiBhIG1lbnUgaXRlbSB3aGVuIGl0J3Mgb3BlbmVkIHRocm91Z2gga2V5Ym9hcmRcbiAgY29uc3QgbWVudUVsZW1lbnRSZWYgPSB1c2VSZWY8SFRNTEFuY2hvckVsZW1lbnQ+KG51bGwpO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIG1lbnVFbGVtZW50UmVmLmN1cnJlbnQ/LmZvY3VzKCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCBlbnZpcm9ubWVudCA9IHVzZUFwcGxpY2F0aW9uQ29udGV4dCgoY29udGV4dCkgPT4gY29udGV4dC5lbnZpcm9ubWVudCk7XG5cbiAgY29uc3QgYXBwbGljYXRpb25zQXBwQmFyTWVudSA9IHVzZUFwcGxpY2F0aW9uc01lbnU8J2FwcEJhcic+KCdhcHBCYXInLCB7XG4gICAgcXVlcnlPcHRpb25zOiB7XG4gICAgICBvbkVycm9yOiByZXBvcnRFcnJvclRvU2VudHJ5LFxuICAgIH0sXG4gICAgZW52aXJvbm1lbnQsXG4gIH0pO1xuICBjb25zdCBhY2NvdW50TWVudUl0ZW1zID0gYXBwbGljYXRpb25zQXBwQmFyTWVudSA/PyBbXTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBldmVudC5rZXkgPT09ICdFc2MnIHx8XG4gICAgICAgICAgKGV2ZW50LmtleSA9PT0gJ1RhYicgJiYgIWdldElzRm9jdXNlZEVsZW1lbnRJbk1lbnUoKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgcHJvcHMuZG93bnNoaWZ0UHJvcHMuY2xvc2VNZW51KCk7XG4gICAgICAgIH1cbiAgICAgIH19XG4gICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVTdHlsZXMoaXNOZXdUaGVtZSl9XG4gICAgPlxuICAgICAgPGRpdiB7Li4ucHJvcHMuZG93bnNoaWZ0UHJvcHMuZ2V0TWVudVByb3BzKCl9PlxuICAgICAgICA8VXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgIDxTcGFjaW5ncy5JbmxpbmUgc2NhbGU9e3RoZW1lZFZhbHVlKCd4cycsICdtJyl9IGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgIDxBdmF0YXJcbiAgICAgICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgICAgICBmaXJzdE5hbWU9e3Byb3BzLmZpcnN0TmFtZX1cbiAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICBncmF2YXRhckhhc2g9e3Byb3BzLmdyYXZhdGFySGFzaH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB7aXNOZXdUaGVtZSA/IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5TdWJoZWFkbGluZSBhcz1cImg0XCI+XG4gICAgICAgICAgICAgICAgICB7W3Byb3BzLmZpcnN0TmFtZSwgcHJvcHMubGFzdE5hbWVdLmpvaW4oJyAnKS50cmltKCl9XG4gICAgICAgICAgICAgICAgPC9UZXh0LlN1YmhlYWRsaW5lPlxuICAgICAgICAgICAgICAgIDxUZXh0LkRldGFpbCB0cnVuY2F0ZSB0b25lPVwic2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICAgICAgICB7cHJvcHMuZW1haWx9XG4gICAgICAgICAgICAgICAgPC9UZXh0LkRldGFpbD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxUZXh0LkJvZHkgaXNCb2xkPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICAgIDxUZXh0LkJvZHkgdHJ1bmNhdGU+e3Byb3BzLmVtYWlsfTwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICAgICAgIDwvVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyPlxuICAgICAgICB7aXNOZXdUaGVtZSAmJiBhY2NvdW50TWVudUl0ZW1zLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgPE1lbnVJdGVtIGhhc0RpdmlkZXI9e3RydWV9IGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9IC8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICB7YWNjb3VudE1lbnVJdGVtcy5tYXAoKG1lbnUpID0+IChcbiAgICAgICAgICA8T3B0aW9uYWxGZWF0dXJlVG9nZ2xlXG4gICAgICAgICAgICBrZXk9e21lbnUua2V5fVxuICAgICAgICAgICAgZmVhdHVyZVRvZ2dsZT17bWVudS5mZWF0dXJlVG9nZ2xlID8/IHVuZGVmaW5lZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgICAgICB0bz17YC9hY2NvdW50LyR7bWVudS51cmlQYXRofWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICAgICAgZGF0YS11c2VyLXNldHRpbmdzLW1lbnVcbiAgICAgICAgICAgICAgcmVmPXttZW51RWxlbWVudFJlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICAgICAgPFRleHQuQm9keT57cmVuZGVyTGFiZWwobWVudSwgcHJvcHMubGFuZ3VhZ2UpfTwvVGV4dC5Cb2R5PlxuICAgICAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICA8L09wdGlvbmFsRmVhdHVyZVRvZ2dsZT5cbiAgICAgICAgKSl9XG4gICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgaHJlZj17YGh0dHBzOi8vY29tbWVyY2V0b29scy5jb20vcHJpdmFjeSNzdXBwbGllcnNgfVxuICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMudG9nZ2xlTWVudSgpfVxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgcmVmPXshYXBwbGljYXRpb25zQXBwQmFyTWVudSA/IG1lbnVFbGVtZW50UmVmIDogdW5kZWZpbmVkfVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnByaXZhY3lQb2xpY3l9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgaHJlZj17U1VQUE9SVF9QT1JUQUxfVVJMfVxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMudG9nZ2xlTWVudSgpfVxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgID5cbiAgICAgICAgICA8TWVudUl0ZW0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgPFRleHQuQm9keSBpbnRsTWVzc2FnZT17bWVzc2FnZXMuc3VwcG9ydH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICA8L2E+XG4gICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICA8YVxuICAgICAgICAgIGNzcz17Z2V0VXNlclNldHRpbmdzTWVudUl0ZW1MaW5rU3R5bGVzKCl9XG4gICAgICAgICAgLy8gTk9URTogd2Ugd2FudCB0byByZWRpcmVjdCB0byBhIG5ldyBwYWdlIHNvIHRoYXQgdGhlXG4gICAgICAgICAgLy8gc2VydmVyIGNhbiByZW1vdmUgdGhpbmdzIGxpa2UgY29va2llIGZvciBhY2Nlc3MgdG9rZW4uXG4gICAgICAgICAgaHJlZj17YC9sb2dvdXQ/cmVhc29uPSR7TE9HT1VUX1JFQVNPTlMuVVNFUn1gfVxuICAgICAgICAgIGRhdGEtdGVzdD1cImxvZ291dC1idXR0b25cIlxuICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgID5cbiAgICAgICAgICA8TWVudUl0ZW0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgPFRleHQuQm9keSBpbnRsTWVzc2FnZT17bWVzc2FnZXMubG9nb3V0fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgPGRpdiB0YWJJbmRleD17MH0gb25Gb2N1cz17KCkgPT4gcHJvcHMuZG93bnNoaWZ0UHJvcHMuY2xvc2VNZW51KCl9IC8+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJTZXR0aW5nc01lbnVCb2R5LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnVCb2R5JztcblxuY29uc3QgVXNlclNldHRpbmdzTWVudSA9IChwcm9wczogUHJvcHMpID0+IHtcbiAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgZGF0YS10ZXN0PVwidXNlci1zZXR0aW5ncy1tZW51XCI+XG4gICAgICA8QWNjZXNzaWJsZUhpZGRlbj5cbiAgICAgICAgPHNwYW4gaWQ9e01FTlVfTEFCRUxfSUR9PlxuICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5tZW51TGFiZWx9IC8+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvQWNjZXNzaWJsZUhpZGRlbj5cbiAgICAgIDxEb3duc2hpZnQgc3RhdGVSZWR1Y2VyPXtzdGF0ZVJlZHVjZXJ9IGxhYmVsSWQ9e01FTlVfTEFCRUxfSUR9PlxuICAgICAgICB7KGRvd25zaGlmdFByb3BzKSA9PiAoXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGB9XG4gICAgICAgICAgICAgIHsuLi5kb3duc2hpZnRQcm9wcy5nZXRUb2dnbGVCdXR0b25Qcm9wcyh7XG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWwnOiBpbnRsLmZvcm1hdE1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICBkb3duc2hpZnRQcm9wcy5pc09wZW5cbiAgICAgICAgICAgICAgICAgICAgPyBtZXNzYWdlcy5jbG9zZU1lbnVMYWJlbFxuICAgICAgICAgICAgICAgICAgICA6IG1lc3NhZ2VzLm9wZW5NZW51TGFiZWxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFVzZXJBdmF0YXJcbiAgICAgICAgICAgICAgICBmaXJzdE5hbWU9e3Byb3BzLmZpcnN0TmFtZX1cbiAgICAgICAgICAgICAgICBsYXN0TmFtZT17cHJvcHMubGFzdE5hbWV9XG4gICAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIHtkb3duc2hpZnRQcm9wcy5pc09wZW4gJiYgKFxuICAgICAgICAgICAgICA8VXNlclNldHRpbmdzTWVudUJvZHlcbiAgICAgICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHM9e2Rvd25zaGlmdFByb3BzfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvRG93bnNoaWZ0PlxuICAgIDwvZGl2PlxuICApO1xufTtcblVzZXJTZXR0aW5nc01lbnUuZGlzcGxheU5hbWUgPSAnVXNlclNldHRpbmdzTWVudSc7XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJTZXR0aW5nc01lbnU7XG5cbi8vIEZvciB0ZXN0aW5nXG5leHBvcnQgeyBVc2VyQXZhdGFyLCBVc2VyU2V0dGluZ3NNZW51Qm9keSB9O1xuIl19 */");
255
- };
256
- var _ref2 = process.env.NODE_ENV === "production" ? {
257
- name: "4zleql",
258
- styles: "display:block"
259
- } : {
260
- name: "1h437nn-getUserSettingsMenuItemLinkStyles",
261
- styles: "display:block;label:getUserSettingsMenuItemLinkStyles;",
262
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcU5tRCIsImZpbGUiOiJ1c2VyLXNldHRpbmdzLW1lbnUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7IFJlYWN0Tm9kZSwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IFRvZ2dsZUZlYXR1cmUgfSBmcm9tICdAZmxvcGZsaXAvcmVhY3QtYnJvYWRjYXN0JztcbmltcG9ydCBEb3duc2hpZnQsIHtcbiAgdHlwZSBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzLFxuICB0eXBlIERvd25zaGlmdFByb3BzLFxufSBmcm9tICdkb3duc2hpZnQnO1xuaW1wb3J0IHsgdXNlSW50bCwgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIGFzIGFwcGtpdERlc2lnblRva2VucyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgdXNlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tc2hlbGwtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBMT0dPVVRfUkVBU09OUyxcbiAgTk9fVkFMVUVfRkFMTEJBQ0ssXG4gIFNVUFBPUlRfUE9SVEFMX1VSTCxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJztcbmltcG9ydCB7IHJlcG9ydEVycm9yVG9TZW50cnkgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9zZW50cnknO1xuaW1wb3J0IEFjY2Vzc2libGVIaWRkZW4gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvYWNjZXNzaWJsZS1oaWRkZW4nO1xuaW1wb3J0IEF2YXRhciBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hdmF0YXInO1xuaW1wb3J0IHtcbiAgZGVzaWduVG9rZW5zIGFzIHVpa2l0RGVzaWduVG9rZW5zLFxuICB1c2VUaGVtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBDYXJldERvd25JY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IFNwYWNpbmdzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzJztcbmltcG9ydCBUZXh0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQnO1xuaW1wb3J0IHsgRElNRU5TSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgdXNlQXBwbGljYXRpb25zTWVudSBmcm9tICcuLi8uLi9ob29rcy91c2UtYXBwbGljYXRpb25zLW1lbnUnO1xuaW1wb3J0IHR5cGUgeyBUVXNlciB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9tYyc7XG5pbXBvcnQgdHlwZSB7IFRGZXRjaEFwcGxpY2F0aW9uc01lbnVRdWVyeSB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9wcm94eSc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgUHJvcHMgPSBQaWNrPFxuICBUVXNlcixcbiAgJ2xhbmd1YWdlJyB8ICdmaXJzdE5hbWUnIHwgJ2xhc3ROYW1lJyB8ICdlbWFpbCcgfCAnZ3JhdmF0YXJIYXNoJ1xuPjtcbnR5cGUgTWVudUJvZHlQcm9wcyA9IFByb3BzICYge1xuICBkb3duc2hpZnRQcm9wczogQ29udHJvbGxlclN0YXRlQW5kSGVscGVyczx7fT47XG59O1xudHlwZSBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcyA9IHtcbiAgZmVhdHVyZVRvZ2dsZT86IHN0cmluZztcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVJdGVtUHJvcHMgPSB7XG4gIGhhc0RpdmlkZXI/OiBib29sZWFuO1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xufTtcbnR5cGUgTWVudUl0ZW1MYWJlbFByb3BzID0ge1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBNZW51Q29uZmlnID0gVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5WydhcHBsaWNhdGlvbnNNZW51J11bJ2FwcEJhciddWzBdO1xuXG5jb25zdCBNRU5VX0xBQkVMX0lEID0gJ3VzZXItbWVudS1zZXR0aW5nLW1lbnUtbGFiZWwnO1xuXG5jb25zdCBVc2VyQXZhdGFyID0gKFxuICBwcm9wczogUGljazxQcm9wcywgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2dyYXZhdGFySGFzaCc+XG4pID0+IHtcbiAgY29uc3QgW2lzTW91c2VPdmVyLCBzZXRJc01vdXNlT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3ZlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3Zlcih0cnVlKTtcbiAgfSwgW10pO1xuICBjb25zdCBoYW5kbGVNb3VzZU91dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3ZlcihmYWxzZSk7XG4gIH0sIFtdKTtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IG9uTW91c2VPdmVyPXtoYW5kbGVNb3VzZU92ZXJ9IG9uTW91c2VPdXQ9e2hhbmRsZU1vdXNlT3V0fT5cbiAgICAgIDxTcGFjaW5ncy5JbmxpbmUgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgIGZpcnN0TmFtZT17cHJvcHMuZmlyc3ROYW1lfVxuICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICBpc0hpZ2hsaWdodGVkPXtpc01vdXNlT3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICAge2lzTmV3VGhlbWUgPyBudWxsIDogKFxuICAgICAgICAgIDxDYXJldERvd25JY29uXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgY29sb3I9e2lzTW91c2VPdmVyID8gJ25ldXRyYWw2MCcgOiAnc29saWQnfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyQXZhdGFyLmRpc3BsYXlOYW1lID0gJ1VzZXJBdmF0YXInO1xuXG5mdW5jdGlvbiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkge1xuICByZXR1cm4gQm9vbGVhbihcbiAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5nZXRBdHRyaWJ1dGUoJ2RhdGEtdXNlci1zZXR0aW5ncy1tZW51JylcbiAgKTtcbn1cblxuY29uc3Qgc3RhdGVSZWR1Y2VyOiBEb3duc2hpZnRQcm9wczx7fT5bJ3N0YXRlUmVkdWNlciddID0gKHN0YXRlLCBjaGFuZ2VzKSA9PiB7XG4gIHN3aXRjaCAoY2hhbmdlcy50eXBlKSB7XG4gICAgLy8gU28gaW4gY2FzZSB0aGUgdXNlciB3YW50cyB0byBuYXZpZ2F0ZSB3aXRoIHRoZSB0YWIgYnV0dG9uXG4gICAgLy8gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgbWVudSBkb2VzIG5vdCBjbG9zZVxuICAgIGNhc2UgRG93bnNoaWZ0LnN0YXRlQ2hhbmdlVHlwZXMuYmx1ckJ1dHRvbjpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNoYW5nZXMsXG4gICAgICAgIGlzT3BlbjogKHN0YXRlLmlzT3BlbiAmJiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpID8/IGZhbHNlLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cbn07XG5cbmNvbnN0IE9wdGlvbmFsRmVhdHVyZVRvZ2dsZSA9IChwcm9wczogT3B0aW9uYWxGZWF0dXJlVG9nZ2xlUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmZlYXR1cmVUb2dnbGUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvZ2dsZUZlYXR1cmUgZmxhZz17cHJvcHMuZmVhdHVyZVRvZ2dsZX0+e3Byb3BzLmNoaWxkcmVufTwvVG9nZ2xlRmVhdHVyZT5cbiAgICApO1xuICB9XG4gIHJldHVybiA8Pntwcm9wcy5jaGlsZHJlbn08Lz47XG59O1xuXG5jb25zdCByZW5kZXJMYWJlbCA9IChcbiAgbWVudTogTWVudUNvbmZpZyxcbiAgYXBwbGljYXRpb25MYW5ndWFnZTogUHJvcHNbJ2xhbmd1YWdlJ11cbikgPT4ge1xuICBjb25zdCBsb2NhbGl6ZWRMYWJlbCA9IG1lbnUubGFiZWxBbGxMb2NhbGVzLmZpbmQoKGxvYykgPT5cbiAgICBhcHBsaWNhdGlvbkxhbmd1YWdlLnN0YXJ0c1dpdGgobG9jLmxvY2FsZSlcbiAgKTtcbiAgaWYgKGxvY2FsaXplZExhYmVsKSByZXR1cm4gbG9jYWxpemVkTGFiZWwudmFsdWU7XG4gIHJldHVybiBOT19WQUxVRV9GQUxMQkFDSztcbn07XG5cbmNvbnN0IE1lbnVJdGVtID0gc3R5bGVkLmRpdjxNZW51SXRlbVByb3BzPmBcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTb2xpZH07XG5cbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke2FwcGtpdERlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JVc2VyTWVudUl0ZW1XaGVuSG92ZXJlZH07XG4gIH1cblxuICAkeyhwcm9wcykgPT5cbiAgICBwcm9wcy5oYXNEaXZpZGVyID09PSB0cnVlXG4gICAgICA/IGNzc2BcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHt1aWtpdERlc2lnblRva2Vucy5jb2xvck5ldXRyYWx9O1xuICAgICAgICAgIG1hcmdpbjogJHthcHBraXREZXNpZ25Ub2tlbnMubWFyZ2luRm9yVXNlck1lbnVJdGVtfTtcbiAgICAgICAgYFxuICAgICAgOiAnJ307XG5gO1xuXG5jb25zdCBNZW51SXRlbUxhYmVsID0gKHByb3BzOiBNZW51SXRlbUxhYmVsUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0gJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nNTB9O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG4gIHJldHVybiA8U3BhY2luZ3MuSW5zZXQgc2NhbGU9XCJzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyID0gKFxuICBwcm9wczogVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHNcbikgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzMwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInhzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgZ2V0VXNlclNldHRpbmdzTWVudVN0eWxlcyA9IChpc05ld1RoZW1lOiBib29sZWFuKSA9PiB7XG4gIGlmIChpc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIGNzc2BcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzMn07XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIHdpZHRoOiAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbnN0cmFpbnQ5fTtcbiAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICAgIHBhZGRpbmc6IDAgMCAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcxMH0gMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYDtcbiAgfVxuXG4gIHJldHVybiBjc3NgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICBib3JkZXI6IDFweCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yUHJpbWFyeTQwfSBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Vpa2l0RGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICAgIGJveC1zaGFkb3c6ICR7dWlraXREZXNpZ25Ub2tlbnMuc2hhZG93N307XG4gICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDd9O1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIHRvcDogY2FsYygke0RJTUVOU0lPTlMuaGVhZGVyfSArICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSk7XG4gICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nWHN9O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIGA7XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMgPSAoKSA9PiBjc3NgXG4gIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgVXNlclNldHRpbmdzTWVudUJvZHkgPSAocHJvcHM6IE1lbnVCb2R5UHJvcHMpID0+IHtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgLy8gRm9jdXMgb24gYSBtZW51IGl0ZW0gd2hlbiBpdCdzIG9wZW5lZCB0aHJvdWdoIGtleWJvYXJkXG4gIGNvbnN0IG1lbnVFbGVtZW50UmVmID0gdXNlUmVmPEhUTUxBbmNob3JFbGVtZW50PihudWxsKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBtZW51RWxlbWVudFJlZi5jdXJyZW50Py5mb2N1cygpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgZW52aXJvbm1lbnQgPSB1c2VBcHBsaWNhdGlvbkNvbnRleHQoKGNvbnRleHQpID0+IGNvbnRleHQuZW52aXJvbm1lbnQpO1xuXG4gIGNvbnN0IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPSB1c2VBcHBsaWNhdGlvbnNNZW51PCdhcHBCYXInPignYXBwQmFyJywge1xuICAgIHF1ZXJ5T3B0aW9uczoge1xuICAgICAgb25FcnJvcjogcmVwb3J0RXJyb3JUb1NlbnRyeSxcbiAgICB9LFxuICAgIGVudmlyb25tZW50LFxuICB9KTtcbiAgY29uc3QgYWNjb3VudE1lbnVJdGVtcyA9IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPz8gW107XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSAnRXNjJyB8fFxuICAgICAgICAgIChldmVudC5rZXkgPT09ICdUYWInICYmICFnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG4gICAgICB9fVxuICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzKGlzTmV3VGhlbWUpfVxuICAgID5cbiAgICAgIDxkaXYgey4uLnByb3BzLmRvd25zaGlmdFByb3BzLmdldE1lbnVQcm9wcygpfT5cbiAgICAgICAgPFVzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lciBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPXt0aGVtZWRWYWx1ZSgneHMnLCAnbScpfSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgICAgIHNpemU9e3RoZW1lZFZhbHVlKCdzJywgJ20nKX1cbiAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge2lzTmV3VGhlbWUgPyAoXG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPFRleHQuU3ViaGVhZGxpbmUgYXM9XCJoNFwiPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5TdWJoZWFkbGluZT5cbiAgICAgICAgICAgICAgICA8VGV4dC5EZXRhaWwgdHJ1bmNhdGUgdG9uZT1cInNlY29uZGFyeVwiPlxuICAgICAgICAgICAgICAgICAge3Byb3BzLmVtYWlsfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5EZXRhaWw+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGlzQm9sZD5cbiAgICAgICAgICAgICAgICAgIHtbcHJvcHMuZmlyc3ROYW1lLCBwcm9wcy5sYXN0TmFtZV0uam9pbignICcpLnRyaW0oKX1cbiAgICAgICAgICAgICAgICA8L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IHRydW5jYXRlPntwcm9wcy5lbWFpbH08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1VzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lcj5cbiAgICAgICAge2lzTmV3VGhlbWUgJiYgYWNjb3VudE1lbnVJdGVtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAge2FjY291bnRNZW51SXRlbXMubWFwKChtZW51KSA9PiAoXG4gICAgICAgICAgPE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVxuICAgICAgICAgICAga2V5PXttZW51LmtleX1cbiAgICAgICAgICAgIGZlYXR1cmVUb2dnbGU9e21lbnUuZmVhdHVyZVRvZ2dsZSA/PyB1bmRlZmluZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMoKX1cbiAgICAgICAgICAgICAgdG89e2AvYWNjb3VudC8ke21lbnUudXJpUGF0aH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBwcm9wcy5kb3duc2hpZnRQcm9wcy50b2dnbGVNZW51KCl9XG4gICAgICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgICAgIHJlZj17bWVudUVsZW1lbnRSZWZ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICAgIDxUZXh0LkJvZHk+e3JlbmRlckxhYmVsKG1lbnUsIHByb3BzLmxhbmd1YWdlKX08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgPC9PcHRpb25hbEZlYXR1cmVUb2dnbGU+XG4gICAgICAgICkpfVxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e2BodHRwczovL2NvbW1lcmNldG9vbHMuY29tL3ByaXZhY3kjc3VwcGxpZXJzYH1cbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICAgIHJlZj17IWFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPyBtZW51RWxlbWVudFJlZiA6IHVuZGVmaW5lZH1cbiAgICAgICAgPlxuICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5wcml2YWN5UG9saWN5fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e1NVUFBPUlRfUE9SVEFMX1VSTH1cbiAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnN1cHBvcnR9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIC8vIE5PVEU6IHdlIHdhbnQgdG8gcmVkaXJlY3QgdG8gYSBuZXcgcGFnZSBzbyB0aGF0IHRoZVxuICAgICAgICAgIC8vIHNlcnZlciBjYW4gcmVtb3ZlIHRoaW5ncyBsaWtlIGNvb2tpZSBmb3IgYWNjZXNzIHRva2VuLlxuICAgICAgICAgIGhyZWY9e2AvbG9nb3V0P3JlYXNvbj0ke0xPR09VVF9SRUFTT05TLlVTRVJ9YH1cbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsb2dvdXQtYnV0dG9uXCJcbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmxvZ291dH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgIDxkaXYgdGFiSW5kZXg9ezB9IG9uRm9jdXM9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpfSAvPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51Qm9keS5kaXNwbGF5TmFtZSA9ICdVc2VyU2V0dGluZ3NNZW51Qm9keSc7XG5cbmNvbnN0IFVzZXJTZXR0aW5nc01lbnUgPSAocHJvcHM6IFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGRhdGEtdGVzdD1cInVzZXItc2V0dGluZ3MtbWVudVwiPlxuICAgICAgPEFjY2Vzc2libGVIaWRkZW4+XG4gICAgICAgIDxzcGFuIGlkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMubWVudUxhYmVsfSAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L0FjY2Vzc2libGVIaWRkZW4+XG4gICAgICA8RG93bnNoaWZ0IHN0YXRlUmVkdWNlcj17c3RhdGVSZWR1Y2VyfSBsYWJlbElkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgeyhkb3duc2hpZnRQcm9wcykgPT4gKFxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBgfVxuICAgICAgICAgICAgICB7Li4uZG93bnNoaWZ0UHJvcHMuZ2V0VG9nZ2xlQnV0dG9uUHJvcHMoe1xuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHMuaXNPcGVuXG4gICAgICAgICAgICAgICAgICAgID8gbWVzc2FnZXMuY2xvc2VNZW51TGFiZWxcbiAgICAgICAgICAgICAgICAgICAgOiBtZXNzYWdlcy5vcGVuTWVudUxhYmVsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxVc2VyQXZhdGFyXG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB7ZG93bnNoaWZ0UHJvcHMuaXNPcGVuICYmIChcbiAgICAgICAgICAgICAgPFVzZXJTZXR0aW5nc01lbnVCb2R5XG4gICAgICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgICAgIGRvd25zaGlmdFByb3BzPXtkb3duc2hpZnRQcm9wc31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0Rvd25zaGlmdD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnUnO1xuXG5leHBvcnQgZGVmYXVsdCBVc2VyU2V0dGluZ3NNZW51O1xuXG4vLyBGb3IgdGVzdGluZ1xuZXhwb3J0IHsgVXNlckF2YXRhciwgVXNlclNldHRpbmdzTWVudUJvZHkgfTtcbiJdfQ== */",
263
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
264
- };
265
- const getUserSettingsMenuItemLinkStyles = () => _ref2;
266
- const UserSettingsMenuBody = props => {
267
- var _context2, _context3;
268
- const _useTheme2 = useTheme(),
269
- isNewTheme = _useTheme2.isNewTheme,
270
- themedValue = _useTheme2.themedValue;
271
- // Focus on a menu item when it's opened through keyboard
272
- const menuElementRef = useRef(null);
273
- useEffect(() => {
274
- var _menuElementRef$curre;
275
- (_menuElementRef$curre = menuElementRef.current) === null || _menuElementRef$curre === void 0 ? void 0 : _menuElementRef$curre.focus();
276
- }, []);
277
- const environment = useApplicationContext(context => context.environment);
278
- const applicationsAppBarMenu = useApplicationsMenu('appBar', {
279
- queryOptions: {
280
- onError: reportErrorToSentry
281
- },
282
- environment
283
- });
284
- const accountMenuItems = applicationsAppBarMenu !== null && applicationsAppBarMenu !== void 0 ? applicationsAppBarMenu : [];
285
- return jsx("div", {
286
- onKeyDown: event => {
287
- if (event.key === 'Esc' || event.key === 'Tab' && !getIsFocusedElementInMenu()) {
288
- props.downshiftProps.closeMenu();
289
- }
290
- },
291
- css: getUserSettingsMenuStyles(isNewTheme),
292
- children: jsxs("div", _objectSpread(_objectSpread({}, props.downshiftProps.getMenuProps()), {}, {
293
- children: [jsx(UserSettingsAvatarContainer, {
294
- isNewTheme: isNewTheme,
295
- children: jsxs(Spacings.Inline, {
296
- scale: themedValue('xs', 'm'),
297
- alignItems: "center",
298
- children: [jsx(Avatar, {
299
- size: themedValue('s', 'm'),
300
- firstName: props.firstName,
301
- lastName: props.lastName,
302
- gravatarHash: props.gravatarHash
303
- }), isNewTheme ? jsxs("div", {
304
- children: [jsx(Text.Subheadline, {
305
- as: "h4",
306
- children: _trimInstanceProperty(_context2 = [props.firstName, props.lastName].join(' ')).call(_context2)
307
- }), jsx(Text.Detail, {
308
- truncate: true,
309
- tone: "secondary",
310
- children: props.email
311
- })]
312
- }) : jsxs("div", {
313
- children: [jsx(Text.Body, {
314
- isBold: true,
315
- children: _trimInstanceProperty(_context3 = [props.firstName, props.lastName].join(' ')).call(_context3)
316
- }), jsx(Text.Body, {
317
- truncate: true,
318
- children: props.email
319
- })]
320
- })]
321
- })
322
- }), isNewTheme && accountMenuItems.length > 0 ? jsx(MenuItem, {
323
- hasDivider: true,
324
- isNewTheme: isNewTheme
325
- }) : null, _mapInstanceProperty(accountMenuItems).call(accountMenuItems, menu => {
326
- var _menu$featureToggle;
327
- return jsx(OptionalFeatureToggle, {
328
- featureToggle: (_menu$featureToggle = menu.featureToggle) !== null && _menu$featureToggle !== void 0 ? _menu$featureToggle : undefined,
329
- children: jsx(Link, {
330
- css: getUserSettingsMenuItemLinkStyles(),
331
- to: "/account/".concat(menu.uriPath),
332
- onClick: () => props.downshiftProps.toggleMenu(),
333
- "data-user-settings-menu": true,
334
- ref: menuElementRef,
335
- children: jsx(MenuItem, {
336
- isNewTheme: isNewTheme,
337
- children: jsx(MenuItemLabel, {
338
- isNewTheme: isNewTheme,
339
- children: jsx(Text.Body, {
340
- children: renderLabel(menu, props.language)
341
- })
342
- })
343
- })
344
- })
345
- }, menu.key);
346
- }), jsx(MenuItem, {
347
- hasDivider: true,
348
- isNewTheme: isNewTheme
349
- }), jsx("a", {
350
- css: getUserSettingsMenuItemLinkStyles(),
351
- href: "https://commercetools.com/privacy#suppliers",
352
- target: "_blank",
353
- rel: "noopener noreferrer",
354
- onClick: () => props.downshiftProps.toggleMenu(),
355
- "data-user-settings-menu": true,
356
- ref: !applicationsAppBarMenu ? menuElementRef : undefined,
357
- children: jsx(MenuItem, {
358
- isNewTheme: isNewTheme,
359
- children: jsx(MenuItemLabel, {
360
- isNewTheme: isNewTheme,
361
- children: jsx(Text.Body, {
362
- intlMessage: messages.privacyPolicy
363
- })
364
- })
365
- })
366
- }), jsx("a", {
367
- css: getUserSettingsMenuItemLinkStyles(),
368
- href: SUPPORT_PORTAL_URL,
369
- rel: "noopener noreferrer",
370
- target: "_blank",
371
- onClick: () => props.downshiftProps.toggleMenu(),
372
- "data-user-settings-menu": true,
373
- children: jsx(MenuItem, {
374
- isNewTheme: isNewTheme,
375
- children: jsx(MenuItemLabel, {
376
- isNewTheme: isNewTheme,
377
- children: jsx(Text.Body, {
378
- intlMessage: messages.support
379
- })
380
- })
381
- })
382
- }), jsx(MenuItem, {
383
- hasDivider: true,
384
- isNewTheme: isNewTheme
385
- }), jsxs("a", {
386
- css: getUserSettingsMenuItemLinkStyles()
387
- // NOTE: we want to redirect to a new page so that the
388
- // server can remove things like cookie for access token.
389
- ,
390
- href: "/logout?reason=".concat(LOGOUT_REASONS.USER),
391
- "data-test": "logout-button",
392
- "data-user-settings-menu": true,
393
- children: [jsx(MenuItem, {
394
- isNewTheme: isNewTheme,
395
- children: jsx(MenuItemLabel, {
396
- isNewTheme: isNewTheme,
397
- children: jsx(Text.Body, {
398
- intlMessage: messages.logout
399
- })
400
- })
401
- }), jsx("div", {
402
- tabIndex: 0,
403
- onFocus: () => props.downshiftProps.closeMenu()
404
- })]
405
- })]
406
- }))
407
- });
408
- };
409
- UserSettingsMenuBody.propTypes = process.env.NODE_ENV !== "production" ? {
410
- downshiftProps: _pt.any.isRequired
411
- } : {};
412
- UserSettingsMenuBody.displayName = 'UserSettingsMenuBody';
413
- var _ref = process.env.NODE_ENV === "production" ? {
414
- name: "18rc9yp",
415
- styles: "cursor:pointer;border:none;padding:0;display:flex;background:transparent"
416
- } : {
417
- name: "pod1xb-UserSettingsMenu",
418
- styles: "cursor:pointer;border:none;padding:0;display:flex;background:transparent;label:UserSettingsMenu;",
419
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItc2V0dGluZ3MtbWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNFdzQiIsImZpbGUiOiJ1c2VyLXNldHRpbmdzLW1lbnUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7IFJlYWN0Tm9kZSwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IFRvZ2dsZUZlYXR1cmUgfSBmcm9tICdAZmxvcGZsaXAvcmVhY3QtYnJvYWRjYXN0JztcbmltcG9ydCBEb3duc2hpZnQsIHtcbiAgdHlwZSBDb250cm9sbGVyU3RhdGVBbmRIZWxwZXJzLFxuICB0eXBlIERvd25zaGlmdFByb3BzLFxufSBmcm9tICdkb3duc2hpZnQnO1xuaW1wb3J0IHsgdXNlSW50bCwgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIGFzIGFwcGtpdERlc2lnblRva2VucyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgdXNlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tc2hlbGwtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBMT0dPVVRfUkVBU09OUyxcbiAgTk9fVkFMVUVfRkFMTEJBQ0ssXG4gIFNVUFBPUlRfUE9SVEFMX1VSTCxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJztcbmltcG9ydCB7IHJlcG9ydEVycm9yVG9TZW50cnkgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC9zZW50cnknO1xuaW1wb3J0IEFjY2Vzc2libGVIaWRkZW4gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvYWNjZXNzaWJsZS1oaWRkZW4nO1xuaW1wb3J0IEF2YXRhciBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9hdmF0YXInO1xuaW1wb3J0IHtcbiAgZGVzaWduVG9rZW5zIGFzIHVpa2l0RGVzaWduVG9rZW5zLFxuICB1c2VUaGVtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBDYXJldERvd25JY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IFNwYWNpbmdzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzJztcbmltcG9ydCBUZXh0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQnO1xuaW1wb3J0IHsgRElNRU5TSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgdXNlQXBwbGljYXRpb25zTWVudSBmcm9tICcuLi8uLi9ob29rcy91c2UtYXBwbGljYXRpb25zLW1lbnUnO1xuaW1wb3J0IHR5cGUgeyBUVXNlciB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9tYyc7XG5pbXBvcnQgdHlwZSB7IFRGZXRjaEFwcGxpY2F0aW9uc01lbnVRdWVyeSB9IGZyb20gJy4uLy4uL3R5cGVzL2dlbmVyYXRlZC9wcm94eSc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgUHJvcHMgPSBQaWNrPFxuICBUVXNlcixcbiAgJ2xhbmd1YWdlJyB8ICdmaXJzdE5hbWUnIHwgJ2xhc3ROYW1lJyB8ICdlbWFpbCcgfCAnZ3JhdmF0YXJIYXNoJ1xuPjtcbnR5cGUgTWVudUJvZHlQcm9wcyA9IFByb3BzICYge1xuICBkb3duc2hpZnRQcm9wczogQ29udHJvbGxlclN0YXRlQW5kSGVscGVyczx7fT47XG59O1xudHlwZSBPcHRpb25hbEZlYXR1cmVUb2dnbGVQcm9wcyA9IHtcbiAgZmVhdHVyZVRvZ2dsZT86IHN0cmluZztcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn07XG50eXBlIE1lbnVJdGVtUHJvcHMgPSB7XG4gIGhhc0RpdmlkZXI/OiBib29sZWFuO1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xufTtcbnR5cGUgTWVudUl0ZW1MYWJlbFByb3BzID0ge1xuICBpc05ld1RoZW1lOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xufTtcbnR5cGUgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzTmV3VGhlbWU6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59O1xudHlwZSBNZW51Q29uZmlnID0gVEZldGNoQXBwbGljYXRpb25zTWVudVF1ZXJ5WydhcHBsaWNhdGlvbnNNZW51J11bJ2FwcEJhciddWzBdO1xuXG5jb25zdCBNRU5VX0xBQkVMX0lEID0gJ3VzZXItbWVudS1zZXR0aW5nLW1lbnUtbGFiZWwnO1xuXG5jb25zdCBVc2VyQXZhdGFyID0gKFxuICBwcm9wczogUGljazxQcm9wcywgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnIHwgJ2dyYXZhdGFySGFzaCc+XG4pID0+IHtcbiAgY29uc3QgW2lzTW91c2VPdmVyLCBzZXRJc01vdXNlT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGhhbmRsZU1vdXNlT3ZlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3Zlcih0cnVlKTtcbiAgfSwgW10pO1xuICBjb25zdCBoYW5kbGVNb3VzZU91dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc01vdXNlT3ZlcihmYWxzZSk7XG4gIH0sIFtdKTtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IG9uTW91c2VPdmVyPXtoYW5kbGVNb3VzZU92ZXJ9IG9uTW91c2VPdXQ9e2hhbmRsZU1vdXNlT3V0fT5cbiAgICAgIDxTcGFjaW5ncy5JbmxpbmUgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgc2l6ZT17dGhlbWVkVmFsdWUoJ3MnLCAnbScpfVxuICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgIGZpcnN0TmFtZT17cHJvcHMuZmlyc3ROYW1lfVxuICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICBpc0hpZ2hsaWdodGVkPXtpc01vdXNlT3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICAge2lzTmV3VGhlbWUgPyBudWxsIDogKFxuICAgICAgICAgIDxDYXJldERvd25JY29uXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgY29sb3I9e2lzTW91c2VPdmVyID8gJ25ldXRyYWw2MCcgOiAnc29saWQnfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyQXZhdGFyLmRpc3BsYXlOYW1lID0gJ1VzZXJBdmF0YXInO1xuXG5mdW5jdGlvbiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkge1xuICByZXR1cm4gQm9vbGVhbihcbiAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5nZXRBdHRyaWJ1dGUoJ2RhdGEtdXNlci1zZXR0aW5ncy1tZW51JylcbiAgKTtcbn1cblxuY29uc3Qgc3RhdGVSZWR1Y2VyOiBEb3duc2hpZnRQcm9wczx7fT5bJ3N0YXRlUmVkdWNlciddID0gKHN0YXRlLCBjaGFuZ2VzKSA9PiB7XG4gIHN3aXRjaCAoY2hhbmdlcy50eXBlKSB7XG4gICAgLy8gU28gaW4gY2FzZSB0aGUgdXNlciB3YW50cyB0byBuYXZpZ2F0ZSB3aXRoIHRoZSB0YWIgYnV0dG9uXG4gICAgLy8gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgbWVudSBkb2VzIG5vdCBjbG9zZVxuICAgIGNhc2UgRG93bnNoaWZ0LnN0YXRlQ2hhbmdlVHlwZXMuYmx1ckJ1dHRvbjpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNoYW5nZXMsXG4gICAgICAgIGlzT3BlbjogKHN0YXRlLmlzT3BlbiAmJiBnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpID8/IGZhbHNlLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cbn07XG5cbmNvbnN0IE9wdGlvbmFsRmVhdHVyZVRvZ2dsZSA9IChwcm9wczogT3B0aW9uYWxGZWF0dXJlVG9nZ2xlUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmZlYXR1cmVUb2dnbGUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvZ2dsZUZlYXR1cmUgZmxhZz17cHJvcHMuZmVhdHVyZVRvZ2dsZX0+e3Byb3BzLmNoaWxkcmVufTwvVG9nZ2xlRmVhdHVyZT5cbiAgICApO1xuICB9XG4gIHJldHVybiA8Pntwcm9wcy5jaGlsZHJlbn08Lz47XG59O1xuXG5jb25zdCByZW5kZXJMYWJlbCA9IChcbiAgbWVudTogTWVudUNvbmZpZyxcbiAgYXBwbGljYXRpb25MYW5ndWFnZTogUHJvcHNbJ2xhbmd1YWdlJ11cbikgPT4ge1xuICBjb25zdCBsb2NhbGl6ZWRMYWJlbCA9IG1lbnUubGFiZWxBbGxMb2NhbGVzLmZpbmQoKGxvYykgPT5cbiAgICBhcHBsaWNhdGlvbkxhbmd1YWdlLnN0YXJ0c1dpdGgobG9jLmxvY2FsZSlcbiAgKTtcbiAgaWYgKGxvY2FsaXplZExhYmVsKSByZXR1cm4gbG9jYWxpemVkTGFiZWwudmFsdWU7XG4gIHJldHVybiBOT19WQUxVRV9GQUxMQkFDSztcbn07XG5cbmNvbnN0IE1lbnVJdGVtID0gc3R5bGVkLmRpdjxNZW51SXRlbVByb3BzPmBcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTb2xpZH07XG5cbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke2FwcGtpdERlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JVc2VyTWVudUl0ZW1XaGVuSG92ZXJlZH07XG4gIH1cblxuICAkeyhwcm9wcykgPT5cbiAgICBwcm9wcy5oYXNEaXZpZGVyID09PSB0cnVlXG4gICAgICA/IGNzc2BcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHt1aWtpdERlc2lnblRva2Vucy5jb2xvck5ldXRyYWx9O1xuICAgICAgICAgIG1hcmdpbjogJHthcHBraXREZXNpZ25Ub2tlbnMubWFyZ2luRm9yVXNlck1lbnVJdGVtfTtcbiAgICAgICAgYFxuICAgICAgOiAnJ307XG5gO1xuXG5jb25zdCBNZW51SXRlbUxhYmVsID0gKHByb3BzOiBNZW51SXRlbUxhYmVsUHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzTmV3VGhlbWUpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBwYWRkaW5nOiAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcyMH0gJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nNTB9O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG4gIHJldHVybiA8U3BhY2luZ3MuSW5zZXQgc2NhbGU9XCJzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyID0gKFxuICBwcm9wczogVXNlclNldHRpbmdzQXZhdGFyQ29udGFpbmVyUHJvcHNcbikgPT4ge1xuICBpZiAocHJvcHMuaXNOZXdUaGVtZSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBhZGRpbmc6ICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzMwfSAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmc1MH07XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIDxTcGFjaW5ncy5JbnNldCBzY2FsZT1cInhzXCI+e3Byb3BzLmNoaWxkcmVufTwvU3BhY2luZ3MuSW5zZXQ+O1xufTtcblxuY29uc3QgZ2V0VXNlclNldHRpbmdzTWVudVN0eWxlcyA9IChpc05ld1RoZW1lOiBib29sZWFuKSA9PiB7XG4gIGlmIChpc05ld1RoZW1lKSB7XG4gICAgcmV0dXJuIGNzc2BcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICR7dWlraXREZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzMn07XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIHdpZHRoOiAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbnN0cmFpbnQ5fTtcbiAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgdG9wOiBjYWxjKCR7RElNRU5TSU9OUy5oZWFkZXJ9ICsgJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nMjB9KTtcbiAgICAgIHBhZGRpbmc6IDAgMCAke3Vpa2l0RGVzaWduVG9rZW5zLnNwYWNpbmcxMH0gMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYDtcbiAgfVxuXG4gIHJldHVybiBjc3NgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29sb3JTdXJmYWNlfTtcbiAgICBib3JkZXI6IDFweCAke3Vpa2l0RGVzaWduVG9rZW5zLmNvbG9yUHJpbWFyeTQwfSBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Vpa2l0RGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICAgIGJveC1zaGFkb3c6ICR7dWlraXREZXNpZ25Ub2tlbnMuc2hhZG93N307XG4gICAgd2lkdGg6ICR7dWlraXREZXNpZ25Ub2tlbnMuY29uc3RyYWludDd9O1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIHRvcDogY2FsYygke0RJTUVOU0lPTlMuaGVhZGVyfSArICR7dWlraXREZXNpZ25Ub2tlbnMuc3BhY2luZzIwfSk7XG4gICAgcGFkZGluZzogJHt1aWtpdERlc2lnblRva2Vucy5zcGFjaW5nWHN9O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIGA7XG59O1xuXG5jb25zdCBnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMgPSAoKSA9PiBjc3NgXG4gIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgVXNlclNldHRpbmdzTWVudUJvZHkgPSAocHJvcHM6IE1lbnVCb2R5UHJvcHMpID0+IHtcbiAgY29uc3QgeyBpc05ld1RoZW1lLCB0aGVtZWRWYWx1ZSB9ID0gdXNlVGhlbWUoKTtcbiAgLy8gRm9jdXMgb24gYSBtZW51IGl0ZW0gd2hlbiBpdCdzIG9wZW5lZCB0aHJvdWdoIGtleWJvYXJkXG4gIGNvbnN0IG1lbnVFbGVtZW50UmVmID0gdXNlUmVmPEhUTUxBbmNob3JFbGVtZW50PihudWxsKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBtZW51RWxlbWVudFJlZi5jdXJyZW50Py5mb2N1cygpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgZW52aXJvbm1lbnQgPSB1c2VBcHBsaWNhdGlvbkNvbnRleHQoKGNvbnRleHQpID0+IGNvbnRleHQuZW52aXJvbm1lbnQpO1xuXG4gIGNvbnN0IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPSB1c2VBcHBsaWNhdGlvbnNNZW51PCdhcHBCYXInPignYXBwQmFyJywge1xuICAgIHF1ZXJ5T3B0aW9uczoge1xuICAgICAgb25FcnJvcjogcmVwb3J0RXJyb3JUb1NlbnRyeSxcbiAgICB9LFxuICAgIGVudmlyb25tZW50LFxuICB9KTtcbiAgY29uc3QgYWNjb3VudE1lbnVJdGVtcyA9IGFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPz8gW107XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSAnRXNjJyB8fFxuICAgICAgICAgIChldmVudC5rZXkgPT09ICdUYWInICYmICFnZXRJc0ZvY3VzZWRFbGVtZW50SW5NZW51KCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG4gICAgICB9fVxuICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51U3R5bGVzKGlzTmV3VGhlbWUpfVxuICAgID5cbiAgICAgIDxkaXYgey4uLnByb3BzLmRvd25zaGlmdFByb3BzLmdldE1lbnVQcm9wcygpfT5cbiAgICAgICAgPFVzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lciBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPXt0aGVtZWRWYWx1ZSgneHMnLCAnbScpfSBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICA8QXZhdGFyXG4gICAgICAgICAgICAgIHNpemU9e3RoZW1lZFZhbHVlKCdzJywgJ20nKX1cbiAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgIGxhc3ROYW1lPXtwcm9wcy5sYXN0TmFtZX1cbiAgICAgICAgICAgICAgZ3JhdmF0YXJIYXNoPXtwcm9wcy5ncmF2YXRhckhhc2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge2lzTmV3VGhlbWUgPyAoXG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPFRleHQuU3ViaGVhZGxpbmUgYXM9XCJoNFwiPlxuICAgICAgICAgICAgICAgICAge1twcm9wcy5maXJzdE5hbWUsIHByb3BzLmxhc3ROYW1lXS5qb2luKCcgJykudHJpbSgpfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5TdWJoZWFkbGluZT5cbiAgICAgICAgICAgICAgICA8VGV4dC5EZXRhaWwgdHJ1bmNhdGUgdG9uZT1cInNlY29uZGFyeVwiPlxuICAgICAgICAgICAgICAgICAge3Byb3BzLmVtYWlsfVxuICAgICAgICAgICAgICAgIDwvVGV4dC5EZXRhaWw+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGlzQm9sZD5cbiAgICAgICAgICAgICAgICAgIHtbcHJvcHMuZmlyc3ROYW1lLCBwcm9wcy5sYXN0TmFtZV0uam9pbignICcpLnRyaW0oKX1cbiAgICAgICAgICAgICAgICA8L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8VGV4dC5Cb2R5IHRydW5jYXRlPntwcm9wcy5lbWFpbH08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1VzZXJTZXR0aW5nc0F2YXRhckNvbnRhaW5lcj5cbiAgICAgICAge2lzTmV3VGhlbWUgJiYgYWNjb3VudE1lbnVJdGVtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgIDxNZW51SXRlbSBoYXNEaXZpZGVyPXt0cnVlfSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfSAvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAge2FjY291bnRNZW51SXRlbXMubWFwKChtZW51KSA9PiAoXG4gICAgICAgICAgPE9wdGlvbmFsRmVhdHVyZVRvZ2dsZVxuICAgICAgICAgICAga2V5PXttZW51LmtleX1cbiAgICAgICAgICAgIGZlYXR1cmVUb2dnbGU9e21lbnUuZmVhdHVyZVRvZ2dsZSA/PyB1bmRlZmluZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgY3NzPXtnZXRVc2VyU2V0dGluZ3NNZW51SXRlbUxpbmtTdHlsZXMoKX1cbiAgICAgICAgICAgICAgdG89e2AvYWNjb3VudC8ke21lbnUudXJpUGF0aH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBwcm9wcy5kb3duc2hpZnRQcm9wcy50b2dnbGVNZW51KCl9XG4gICAgICAgICAgICAgIGRhdGEtdXNlci1zZXR0aW5ncy1tZW51XG4gICAgICAgICAgICAgIHJlZj17bWVudUVsZW1lbnRSZWZ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICA8TWVudUl0ZW1MYWJlbCBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgICAgICAgIDxUZXh0LkJvZHk+e3JlbmRlckxhYmVsKG1lbnUsIHByb3BzLmxhbmd1YWdlKX08L1RleHQuQm9keT5cbiAgICAgICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgPC9PcHRpb25hbEZlYXR1cmVUb2dnbGU+XG4gICAgICAgICkpfVxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e2BodHRwczovL2NvbW1lcmNldG9vbHMuY29tL3ByaXZhY3kjc3VwcGxpZXJzYH1cbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICAgIHJlZj17IWFwcGxpY2F0aW9uc0FwcEJhck1lbnUgPyBtZW51RWxlbWVudFJlZiA6IHVuZGVmaW5lZH1cbiAgICAgICAgPlxuICAgICAgICAgIDxNZW51SXRlbSBpc05ld1RoZW1lPXtpc05ld1RoZW1lfT5cbiAgICAgICAgICAgIDxNZW51SXRlbUxhYmVsIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5wcml2YWN5UG9saWN5fSAvPlxuICAgICAgICAgICAgPC9NZW51SXRlbUxhYmVsPlxuICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIGhyZWY9e1NVUFBPUlRfUE9SVEFMX1VSTH1cbiAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLnRvZ2dsZU1lbnUoKX1cbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLnN1cHBvcnR9IC8+XG4gICAgICAgICAgICA8L01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgPC9hPlxuICAgICAgICA8TWVudUl0ZW0gaGFzRGl2aWRlcj17dHJ1ZX0gaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0gLz5cbiAgICAgICAgPGFcbiAgICAgICAgICBjc3M9e2dldFVzZXJTZXR0aW5nc01lbnVJdGVtTGlua1N0eWxlcygpfVxuICAgICAgICAgIC8vIE5PVEU6IHdlIHdhbnQgdG8gcmVkaXJlY3QgdG8gYSBuZXcgcGFnZSBzbyB0aGF0IHRoZVxuICAgICAgICAgIC8vIHNlcnZlciBjYW4gcmVtb3ZlIHRoaW5ncyBsaWtlIGNvb2tpZSBmb3IgYWNjZXNzIHRva2VuLlxuICAgICAgICAgIGhyZWY9e2AvbG9nb3V0P3JlYXNvbj0ke0xPR09VVF9SRUFTT05TLlVTRVJ9YH1cbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsb2dvdXQtYnV0dG9uXCJcbiAgICAgICAgICBkYXRhLXVzZXItc2V0dGluZ3MtbWVudVxuICAgICAgICA+XG4gICAgICAgICAgPE1lbnVJdGVtIGlzTmV3VGhlbWU9e2lzTmV3VGhlbWV9PlxuICAgICAgICAgICAgPE1lbnVJdGVtTGFiZWwgaXNOZXdUaGVtZT17aXNOZXdUaGVtZX0+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmxvZ291dH0gLz5cbiAgICAgICAgICAgIDwvTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgIDxkaXYgdGFiSW5kZXg9ezB9IG9uRm9jdXM9eygpID0+IHByb3BzLmRvd25zaGlmdFByb3BzLmNsb3NlTWVudSgpfSAvPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51Qm9keS5kaXNwbGF5TmFtZSA9ICdVc2VyU2V0dGluZ3NNZW51Qm9keSc7XG5cbmNvbnN0IFVzZXJTZXR0aW5nc01lbnUgPSAocHJvcHM6IFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGRhdGEtdGVzdD1cInVzZXItc2V0dGluZ3MtbWVudVwiPlxuICAgICAgPEFjY2Vzc2libGVIaWRkZW4+XG4gICAgICAgIDxzcGFuIGlkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMubWVudUxhYmVsfSAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L0FjY2Vzc2libGVIaWRkZW4+XG4gICAgICA8RG93bnNoaWZ0IHN0YXRlUmVkdWNlcj17c3RhdGVSZWR1Y2VyfSBsYWJlbElkPXtNRU5VX0xBQkVMX0lEfT5cbiAgICAgICAgeyhkb3duc2hpZnRQcm9wcykgPT4gKFxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBgfVxuICAgICAgICAgICAgICB7Li4uZG93bnNoaWZ0UHJvcHMuZ2V0VG9nZ2xlQnV0dG9uUHJvcHMoe1xuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgZG93bnNoaWZ0UHJvcHMuaXNPcGVuXG4gICAgICAgICAgICAgICAgICAgID8gbWVzc2FnZXMuY2xvc2VNZW51TGFiZWxcbiAgICAgICAgICAgICAgICAgICAgOiBtZXNzYWdlcy5vcGVuTWVudUxhYmVsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxVc2VyQXZhdGFyXG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lPXtwcm9wcy5maXJzdE5hbWV9XG4gICAgICAgICAgICAgICAgbGFzdE5hbWU9e3Byb3BzLmxhc3ROYW1lfVxuICAgICAgICAgICAgICAgIGdyYXZhdGFySGFzaD17cHJvcHMuZ3JhdmF0YXJIYXNofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB7ZG93bnNoaWZ0UHJvcHMuaXNPcGVuICYmIChcbiAgICAgICAgICAgICAgPFVzZXJTZXR0aW5nc01lbnVCb2R5XG4gICAgICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgICAgIGRvd25zaGlmdFByb3BzPXtkb3duc2hpZnRQcm9wc31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0Rvd25zaGlmdD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5Vc2VyU2V0dGluZ3NNZW51LmRpc3BsYXlOYW1lID0gJ1VzZXJTZXR0aW5nc01lbnUnO1xuXG5leHBvcnQgZGVmYXVsdCBVc2VyU2V0dGluZ3NNZW51O1xuXG4vLyBGb3IgdGVzdGluZ1xuZXhwb3J0IHsgVXNlckF2YXRhciwgVXNlclNldHRpbmdzTWVudUJvZHkgfTtcbiJdfQ== */",
420
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
421
- };
422
- const UserSettingsMenu = props => {
423
- const intl = useIntl();
424
- return jsxs("div", {
425
- "data-test": "user-settings-menu",
426
- children: [jsx(AccessibleHidden, {
427
- children: jsx("span", {
428
- id: MENU_LABEL_ID,
429
- children: jsx(FormattedMessage, _objectSpread({}, messages.menuLabel))
430
- })
431
- }), jsx(Downshift, {
432
- stateReducer: stateReducer,
433
- labelId: MENU_LABEL_ID,
434
- children: downshiftProps => jsxs("div", {
435
- children: [jsx("button", _objectSpread(_objectSpread({
436
- css: _ref
437
- }, downshiftProps.getToggleButtonProps({
438
- 'aria-label': intl.formatMessage(downshiftProps.isOpen ? messages.closeMenuLabel : messages.openMenuLabel)
439
- })), {}, {
440
- children: jsx(UserAvatar, {
441
- firstName: props.firstName,
442
- lastName: props.lastName,
443
- gravatarHash: props.gravatarHash
444
- })
445
- })), downshiftProps.isOpen && jsx(UserSettingsMenuBody, _objectSpread(_objectSpread({}, props), {}, {
446
- downshiftProps: downshiftProps
447
- }))]
448
- })
449
- })]
450
- });
451
- };
452
- UserSettingsMenu.displayName = 'UserSettingsMenu';
453
-
454
- export { UserAvatar, UserSettingsMenuBody, UserSettingsMenu as default };